[2026-06-12 00:00:02,313.313 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 00:00:02,318.318 INFO    ] Waiting 0.23 seconds before fallback handling...
[2026-06-12 00:00:03,258.258 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 00:00:03,261.261 INFO    ] Checking for system updates...
[2026-06-12 00:00:03,320.320 INFO    ] 200
[2026-06-12 00:00:03,322.322 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:00:03,483.483 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 00:00:03,486.486 INFO    ] No update needed
[2026-06-12 00:00:03,489.489 INFO    ] Checking for camera pi updates...
[2026-06-12 00:00:03,574.574 INFO    ] 200
[2026-06-12 00:00:03,576.576 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:00:03,654.654 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 00:00:03,832.832 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 00:00:03,834.834 INFO    ] No camera update needed
[2026-06-12 00:00:03,836.836 INFO    ] Script finished. Safe exiting...
[2026-06-12 00:00:03,839.839 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 00:00:03,846.846 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 00:00:03,852.852 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 00:00:05,892.892 INFO    ] ================================================
[2026-06-12 00:00:05,909.909 INFO    ] Launching Daemon at Fri Jun 12 00:00:05 IST 2026
[2026-06-12 00:00:05,924.924 INFO    ] ================================================
[2026-06-12 00:00:06,253.253 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 00:00:06
[2026-06-12 00:00:06,566.566 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 00:00:06,709.709 INFO    ] Initializing speech engine...
[2026-06-12 00:00:06,714.714 INFO    ] 2026-06-12 00:00:06
[2026-06-12 00:00:06,918.918 INFO    ] 2026-06-12 00:00:06
[2026-06-12 00:00:06,947.947 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 00:00:07,084.084 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 00:00:07,142.142 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 00:00:07,284.284 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 00:00:07,355.355 INFO    ] time= 12/06/2026 00:00:07
[2026-06-12 00:00:07,379.379 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 00:00:07,385.385 INFO    ] Checking for existing commands in stream...
[2026-06-12 00:00:07,452.452 INFO    ] No existing commands found in stream
[2026-06-12 00:00:12,462.462 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 00:00:12,465.465 INFO    ] Waiting 1.83 seconds before fallback handling...
[2026-06-12 00:00:14,659.659 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 00:00:14,661.661 INFO    ] Checking for system updates...
[2026-06-12 00:00:14,682.682 INFO    ] 200
[2026-06-12 00:00:14,683.683 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:00:14,713.713 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 00:00:14,714.714 INFO    ] No update needed
[2026-06-12 00:00:14,716.716 INFO    ] Checking for camera pi updates...
[2026-06-12 00:00:14,735.735 INFO    ] 200
[2026-06-12 00:00:14,737.737 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:00:14,762.762 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 00:00:14,813.813 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 00:00:14,815.815 INFO    ] No camera update needed
[2026-06-12 00:00:14,816.816 INFO    ] Script finished. Safe exiting...
[2026-06-12 00:00:14,817.817 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 00:00:14,820.820 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 00:00:14,823.823 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 00:00:16,847.847 INFO    ] ================================================
[2026-06-12 00:00:16,855.855 INFO    ] Launching Daemon at Fri Jun 12 00:00:16 IST 2026
[2026-06-12 00:00:16,861.861 INFO    ] ================================================
[2026-06-12 00:00:17,165.165 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 00:00:17
[2026-06-12 00:00:17,478.478 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 00:00:17,616.616 INFO    ] Initializing speech engine...
[2026-06-12 00:00:17,625.625 INFO    ] 2026-06-12 00:00:17
[2026-06-12 00:00:17,831.831 INFO    ] 2026-06-12 00:00:17
[2026-06-12 00:00:17,860.860 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 00:00:18,004.004 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 00:00:18,047.047 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 00:00:18,203.203 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 00:00:18,256.256 INFO    ] time= 12/06/2026 00:00:18
[2026-06-12 00:00:18,279.279 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 00:00:18,285.285 INFO    ] Checking for existing commands in stream...
[2026-06-12 00:00:18,351.351 INFO    ] No existing commands found in stream
[2026-06-12 00:00:23,362.362 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 00:00:23,365.365 INFO    ] Waiting 0.63 seconds before fallback handling...
[2026-06-12 00:00:24,319.319 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 00:00:24,320.320 INFO    ] Checking for system updates...
[2026-06-12 00:00:24,341.341 INFO    ] 200
[2026-06-12 00:00:24,342.342 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:00:24,375.375 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 00:00:24,376.376 INFO    ] No update needed
[2026-06-12 00:00:24,377.377 INFO    ] Checking for camera pi updates...
[2026-06-12 00:00:24,397.397 INFO    ] 200
[2026-06-12 00:00:24,398.398 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:00:24,422.422 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 00:00:24,467.467 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 00:00:24,468.468 INFO    ] No camera update needed
[2026-06-12 00:00:24,469.469 INFO    ] Script finished. Safe exiting...
[2026-06-12 00:00:24,471.471 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 00:00:24,473.473 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 00:00:24,476.476 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 00:00:26,517.517 INFO    ] ================================================
[2026-06-12 00:00:26,533.533 INFO    ] Launching Daemon at Fri Jun 12 00:00:26 IST 2026
[2026-06-12 00:00:26,544.544 INFO    ] ================================================
[2026-06-12 00:00:26,885.885 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 00:00:26
[2026-06-12 00:00:27,206.206 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 00:00:27,341.341 INFO    ] Initializing speech engine...
[2026-06-12 00:00:27,344.344 INFO    ] 2026-06-12 00:00:27
[2026-06-12 00:00:27,575.575 INFO    ] 2026-06-12 00:00:27
[2026-06-12 00:00:27,606.606 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 00:00:27,737.737 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 00:00:27,766.766 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 00:00:27,947.947 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 00:00:27,975.975 INFO    ] time= 12/06/2026 00:00:27
[2026-06-12 00:00:28,031.031 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 00:00:28,052.052 INFO    ] Checking for existing commands in stream...
[2026-06-12 00:00:28,134.134 INFO    ] No existing commands found in stream
[2026-06-12 00:00:33,143.143 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 00:00:33,146.146 INFO    ] Waiting 1.54 seconds before fallback handling...
[2026-06-12 00:00:35,015.015 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 00:00:35,016.016 INFO    ] Checking for system updates...
[2026-06-12 00:00:35,038.038 INFO    ] 200
[2026-06-12 00:00:35,040.040 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:00:35,073.073 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 00:00:35,074.074 INFO    ] No update needed
[2026-06-12 00:00:35,075.075 INFO    ] Checking for camera pi updates...
[2026-06-12 00:00:35,094.094 INFO    ] 200
[2026-06-12 00:00:35,096.096 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:00:35,119.119 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 00:00:35,173.173 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 00:00:35,175.175 INFO    ] No camera update needed
[2026-06-12 00:00:35,176.176 INFO    ] Script finished. Safe exiting...
[2026-06-12 00:00:35,177.177 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 00:00:35,180.180 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 00:00:35,183.183 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 00:00:37,226.226 INFO    ] ================================================
[2026-06-12 00:00:37,241.241 INFO    ] Launching Daemon at Fri Jun 12 00:00:37 IST 2026
[2026-06-12 00:00:37,252.252 INFO    ] ================================================
[2026-06-12 00:00:37,643.643 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 00:00:37
[2026-06-12 00:00:37,981.981 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 00:00:38,134.134 INFO    ] Initializing speech engine...
[2026-06-12 00:00:38,139.139 INFO    ] 2026-06-12 00:00:38
[2026-06-12 00:00:38,345.345 INFO    ] 2026-06-12 00:00:38
[2026-06-12 00:00:38,374.374 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 00:00:38,557.557 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 00:00:38,567.567 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 00:00:38,698.698 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 00:00:38,787.787 INFO    ] time= 12/06/2026 00:00:38
[2026-06-12 00:00:38,794.794 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 00:00:38,796.796 INFO    ] Checking for existing commands in stream...
[2026-06-12 00:00:38,862.862 INFO    ] No existing commands found in stream
[2026-06-12 00:00:43,877.877 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 00:00:43,880.880 INFO    ] Waiting 2.47 seconds before fallback handling...
[2026-06-12 00:00:46,677.677 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 00:00:46,679.679 INFO    ] Checking for system updates...
[2026-06-12 00:00:46,700.700 INFO    ] 200
[2026-06-12 00:00:46,701.701 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:00:46,732.732 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 00:00:46,733.733 INFO    ] No update needed
[2026-06-12 00:00:46,735.735 INFO    ] Checking for camera pi updates...
[2026-06-12 00:00:46,756.756 INFO    ] 200
[2026-06-12 00:00:46,757.757 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:00:46,781.781 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 00:00:46,927.927 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 00:00:46,928.928 INFO    ] No camera update needed
[2026-06-12 00:00:46,930.930 INFO    ] Script finished. Safe exiting...
[2026-06-12 00:00:46,931.931 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 00:00:46,935.935 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 00:00:46,938.938 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 00:00:48,976.976 INFO    ] ================================================
[2026-06-12 00:00:48,992.992 INFO    ] Launching Daemon at Fri Jun 12 00:00:48 IST 2026
[2026-06-12 00:00:49,003.003 INFO    ] ================================================
[2026-06-12 00:00:49,377.377 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 00:00:49
[2026-06-12 00:00:49,697.697 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 00:00:49,842.842 INFO    ] Initializing speech engine...
[2026-06-12 00:00:49,847.847 INFO    ] 2026-06-12 00:00:49
[2026-06-12 00:00:50,052.052 INFO    ] 2026-06-12 00:00:50
[2026-06-12 00:00:50,080.080 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 00:00:50,213.213 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 00:00:50,266.266 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 00:00:50,460.460 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 00:00:50,493.493 INFO    ] time= 12/06/2026 00:00:50
[2026-06-12 00:00:50,499.499 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 00:00:50,501.501 INFO    ] Checking for existing commands in stream...
[2026-06-12 00:00:50,568.568 INFO    ] No existing commands found in stream
[2026-06-12 00:00:55,577.577 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 00:00:55,580.580 INFO    ] Waiting 3.15 seconds before fallback handling...
[2026-06-12 00:00:59,105.105 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 00:00:59,106.106 INFO    ] Checking for system updates...
[2026-06-12 00:00:59,127.127 INFO    ] 200
[2026-06-12 00:00:59,128.128 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:00:59,161.161 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 00:00:59,162.162 INFO    ] No update needed
[2026-06-12 00:00:59,164.164 INFO    ] Checking for camera pi updates...
[2026-06-12 00:00:59,185.185 INFO    ] 200
[2026-06-12 00:00:59,186.186 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:00:59,210.210 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 00:00:59,246.246 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 00:00:59,247.247 INFO    ] No camera update needed
[2026-06-12 00:00:59,248.248 INFO    ] Script finished. Safe exiting...
[2026-06-12 00:00:59,250.250 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 00:00:59,253.253 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 00:00:59,255.255 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 00:01:01,291.291 INFO    ] ================================================
[2026-06-12 00:01:01,313.313 INFO    ] Launching Daemon at Fri Jun 12 00:01:01 IST 2026
[2026-06-12 00:01:01,323.323 INFO    ] ================================================
[2026-06-12 00:01:01,729.729 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 00:01:01
[2026-06-12 00:01:02,139.139 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 00:01:02,289.289 INFO    ] Initializing speech engine...
[2026-06-12 00:01:02,304.304 INFO    ] 2026-06-12 00:01:02
[2026-06-12 00:01:02,516.516 INFO    ] 2026-06-12 00:01:02
[2026-06-12 00:01:02,544.544 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 00:01:02,708.708 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 00:01:02,739.739 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 00:01:02,884.884 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 00:01:02,946.946 INFO    ] time= 12/06/2026 00:01:02
[2026-06-12 00:01:02,970.970 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 00:01:02,977.977 INFO    ] Checking for existing commands in stream...
[2026-06-12 00:01:03,043.043 INFO    ] No existing commands found in stream
[2026-06-12 00:01:08,053.053 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 00:01:08,056.056 INFO    ] Waiting 2.15 seconds before fallback handling...
[2026-06-12 00:01:10,572.572 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 00:01:10,573.573 INFO    ] Checking for system updates...
[2026-06-12 00:01:10,600.600 INFO    ] 200
[2026-06-12 00:01:10,601.601 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:01:10,632.632 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 00:01:10,633.633 INFO    ] No update needed
[2026-06-12 00:01:10,634.634 INFO    ] Checking for camera pi updates...
[2026-06-12 00:01:10,653.653 INFO    ] 200
[2026-06-12 00:01:10,655.655 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:01:10,678.678 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 00:01:10,751.751 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 00:01:10,753.753 INFO    ] No camera update needed
[2026-06-12 00:01:10,754.754 INFO    ] Script finished. Safe exiting...
[2026-06-12 00:01:10,755.755 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 00:01:10,758.758 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 00:01:10,761.761 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 00:01:12,801.801 INFO    ] ================================================
[2026-06-12 00:01:12,816.816 INFO    ] Launching Daemon at Fri Jun 12 00:01:12 IST 2026
[2026-06-12 00:01:12,828.828 INFO    ] ================================================
[2026-06-12 00:01:13,178.178 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 00:01:13
[2026-06-12 00:01:13,493.493 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 00:01:13,627.627 INFO    ] Initializing speech engine...
[2026-06-12 00:01:13,639.639 INFO    ] 2026-06-12 00:01:13
[2026-06-12 00:01:13,847.847 INFO    ] 2026-06-12 00:01:13
[2026-06-12 00:01:13,878.878 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 00:01:14,064.064 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 00:01:14,067.067 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 00:01:14,270.270 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 00:01:14,295.295 INFO    ] time= 12/06/2026 00:01:14
[2026-06-12 00:01:14,297.297 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 00:01:14,303.303 INFO    ] Checking for existing commands in stream...
[2026-06-12 00:01:14,369.369 INFO    ] No existing commands found in stream
[2026-06-12 00:01:19,380.380 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 00:01:19,383.383 INFO    ] Waiting 0.54 seconds before fallback handling...
[2026-06-12 00:01:20,330.330 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 00:01:20,331.331 INFO    ] Checking for system updates...
[2026-06-12 00:01:20,352.352 INFO    ] 200
[2026-06-12 00:01:20,353.353 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:01:20,383.383 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 00:01:20,384.384 INFO    ] No update needed
[2026-06-12 00:01:20,386.386 INFO    ] Checking for camera pi updates...
[2026-06-12 00:01:20,405.405 INFO    ] 200
[2026-06-12 00:01:20,407.407 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:01:20,430.430 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 00:01:20,469.469 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 00:01:20,470.470 INFO    ] No camera update needed
[2026-06-12 00:01:20,472.472 INFO    ] Script finished. Safe exiting...
[2026-06-12 00:01:20,473.473 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 00:01:20,476.476 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 00:01:20,478.478 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 00:01:22,517.517 INFO    ] ================================================
[2026-06-12 00:01:22,534.534 INFO    ] Launching Daemon at Fri Jun 12 00:01:22 IST 2026
[2026-06-12 00:01:22,545.545 INFO    ] ================================================
[2026-06-12 00:01:22,912.912 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 00:01:22
[2026-06-12 00:01:23,253.253 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 00:01:23,406.406 INFO    ] Initializing speech engine...
[2026-06-12 00:01:23,412.412 INFO    ] 2026-06-12 00:01:23
[2026-06-12 00:01:23,624.624 INFO    ] 2026-06-12 00:01:23
[2026-06-12 00:01:23,653.653 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 00:01:23,841.841 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 00:01:23,850.850 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 00:01:23,983.983 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 00:01:24,052.052 INFO    ] time= 12/06/2026 00:01:23
[2026-06-12 00:01:24,077.077 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 00:01:24,084.084 INFO    ] Checking for existing commands in stream...
[2026-06-12 00:01:24,152.152 INFO    ] No existing commands found in stream
[2026-06-12 00:01:29,167.167 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 00:01:29,170.170 INFO    ] Waiting 1.18 seconds before fallback handling...
[2026-06-12 00:01:30,761.761 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 00:01:30,763.763 INFO    ] Checking for system updates...
[2026-06-12 00:01:30,785.785 INFO    ] 200
[2026-06-12 00:01:30,787.787 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:01:30,820.820 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 00:01:30,822.822 INFO    ] No update needed
[2026-06-12 00:01:30,823.823 INFO    ] Checking for camera pi updates...
[2026-06-12 00:01:30,845.845 INFO    ] 200
[2026-06-12 00:01:30,847.847 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:01:30,870.870 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 00:01:30,913.913 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 00:01:30,915.915 INFO    ] No camera update needed
[2026-06-12 00:01:30,916.916 INFO    ] Script finished. Safe exiting...
[2026-06-12 00:01:30,918.918 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 00:01:30,921.921 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 00:01:30,924.924 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 00:01:32,956.956 INFO    ] ================================================
[2026-06-12 00:01:32,973.973 INFO    ] Launching Daemon at Fri Jun 12 00:01:32 IST 2026
[2026-06-12 00:01:32,984.984 INFO    ] ================================================
[2026-06-12 00:01:33,358.358 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 00:01:33
[2026-06-12 00:01:33,671.671 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 00:01:33,808.808 INFO    ] Initializing speech engine...
[2026-06-12 00:01:33,816.816 INFO    ] 2026-06-12 00:01:33
[2026-06-12 00:01:34,027.027 INFO    ] 2026-06-12 00:01:34
[2026-06-12 00:01:34,057.057 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 00:01:34,182.182 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 00:01:34,224.224 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 00:01:34,428.428 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 00:01:34,475.475 INFO    ] time= 12/06/2026 00:01:34
[2026-06-12 00:01:34,480.480 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 00:01:34,486.486 INFO    ] Checking for existing commands in stream...
[2026-06-12 00:01:34,553.553 INFO    ] No existing commands found in stream
[2026-06-12 00:01:39,563.563 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 00:01:39,566.566 INFO    ] Waiting 1.27 seconds before fallback handling...
[2026-06-12 00:01:41,235.235 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 00:01:41,237.237 INFO    ] Checking for system updates...
[2026-06-12 00:01:41,259.259 INFO    ] 200
[2026-06-12 00:01:41,261.261 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:01:41,296.296 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 00:01:41,297.297 INFO    ] No update needed
[2026-06-12 00:01:41,299.299 INFO    ] Checking for camera pi updates...
[2026-06-12 00:01:41,319.319 INFO    ] 200
[2026-06-12 00:01:41,320.320 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:01:41,348.348 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 00:01:41,392.392 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 00:01:41,394.394 INFO    ] No camera update needed
[2026-06-12 00:01:41,395.395 INFO    ] Script finished. Safe exiting...
[2026-06-12 00:01:41,397.397 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 00:01:41,400.400 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 00:01:41,403.403 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 00:01:43,444.444 INFO    ] ================================================
[2026-06-12 00:01:43,459.459 INFO    ] Launching Daemon at Fri Jun 12 00:01:43 IST 2026
[2026-06-12 00:01:43,471.471 INFO    ] ================================================
[2026-06-12 00:01:43,807.807 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 00:01:43
[2026-06-12 00:01:44,124.124 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 00:01:44,258.258 INFO    ] Initializing speech engine...
[2026-06-12 00:01:44,262.262 INFO    ] 2026-06-12 00:01:44
[2026-06-12 00:01:44,493.493 INFO    ] 2026-06-12 00:01:44
[2026-06-12 00:01:44,525.525 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 00:01:44,656.656 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 00:01:44,700.700 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 00:01:44,832.832 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 00:01:44,872.872 INFO    ] time= 12/06/2026 00:01:44
[2026-06-12 00:01:44,929.929 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 00:01:44,974.974 INFO    ] Checking for existing commands in stream...
[2026-06-12 00:01:45,056.056 INFO    ] No existing commands found in stream
[2026-06-12 00:01:50,065.065 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 00:01:50,068.068 INFO    ] Waiting 3.85 seconds before fallback handling...
[2026-06-12 00:01:54,346.346 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 00:01:54,347.347 INFO    ] Checking for system updates...
[2026-06-12 00:01:54,371.371 INFO    ] 200
[2026-06-12 00:01:54,373.373 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:01:54,406.406 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 00:01:54,407.407 INFO    ] No update needed
[2026-06-12 00:01:54,408.408 INFO    ] Checking for camera pi updates...
[2026-06-12 00:01:54,429.429 INFO    ] 200
[2026-06-12 00:01:54,430.430 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:01:54,455.455 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 00:01:54,494.494 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 00:01:54,495.495 INFO    ] No camera update needed
[2026-06-12 00:01:54,496.496 INFO    ] Script finished. Safe exiting...
[2026-06-12 00:01:54,498.498 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 00:01:54,501.501 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 00:01:54,503.503 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 00:01:56,543.543 INFO    ] ================================================
[2026-06-12 00:01:56,558.558 INFO    ] Launching Daemon at Fri Jun 12 00:01:56 IST 2026
[2026-06-12 00:01:56,569.569 INFO    ] ================================================
[2026-06-12 00:01:56,895.895 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 00:01:56
[2026-06-12 00:01:57,212.212 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 00:01:57,343.343 INFO    ] Initializing speech engine...
[2026-06-12 00:01:57,351.351 INFO    ] 2026-06-12 00:01:57
[2026-06-12 00:01:57,563.563 INFO    ] 2026-06-12 00:01:57
[2026-06-12 00:01:57,592.592 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 00:01:57,713.713 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 00:01:57,775.775 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 00:01:57,912.912 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 00:01:57,975.975 INFO    ] time= 12/06/2026 00:01:57
[2026-06-12 00:01:58,004.004 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 00:01:58,010.010 INFO    ] Checking for existing commands in stream...
[2026-06-12 00:01:58,077.077 INFO    ] No existing commands found in stream
[2026-06-12 00:02:03,086.086 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 00:02:03,088.088 INFO    ] Waiting 3.14 seconds before fallback handling...
[2026-06-12 00:02:06,596.596 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 00:02:06,597.597 INFO    ] Checking for system updates...
[2026-06-12 00:02:06,622.622 INFO    ] 200
[2026-06-12 00:02:06,623.623 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:02:06,654.654 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 00:02:06,655.655 INFO    ] No update needed
[2026-06-12 00:02:06,656.656 INFO    ] Checking for camera pi updates...
[2026-06-12 00:02:06,678.678 INFO    ] 200
[2026-06-12 00:02:06,680.680 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:02:06,703.703 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 00:02:06,744.744 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 00:02:06,745.745 INFO    ] No camera update needed
[2026-06-12 00:02:06,747.747 INFO    ] Script finished. Safe exiting...
[2026-06-12 00:02:06,748.748 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 00:02:06,751.751 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 00:02:06,754.754 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 00:02:08,793.793 INFO    ] ================================================
[2026-06-12 00:02:08,814.814 INFO    ] Launching Daemon at Fri Jun 12 00:02:08 IST 2026
[2026-06-12 00:02:08,824.824 INFO    ] ================================================
[2026-06-12 00:02:09,173.173 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 00:02:09
[2026-06-12 00:02:09,507.507 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 00:02:09,660.660 INFO    ] Initializing speech engine...
[2026-06-12 00:02:09,664.664 INFO    ] 2026-06-12 00:02:09
[2026-06-12 00:02:09,873.873 INFO    ] 2026-06-12 00:02:09
[2026-06-12 00:02:09,903.903 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 00:02:10,043.043 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 00:02:10,092.092 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 00:02:10,296.296 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 00:02:10,322.322 INFO    ] time= 12/06/2026 00:02:10
[2026-06-12 00:02:10,328.328 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 00:02:10,329.329 INFO    ] Checking for existing commands in stream...
[2026-06-12 00:02:10,421.421 INFO    ] No existing commands found in stream
[2026-06-12 00:02:15,446.446 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 00:02:15,449.449 INFO    ] Waiting 1.35 seconds before fallback handling...
[2026-06-12 00:02:17,190.190 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 00:02:17,191.191 INFO    ] Checking for system updates...
[2026-06-12 00:02:17,216.216 INFO    ] 200
[2026-06-12 00:02:17,217.217 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:02:17,247.247 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 00:02:17,249.249 INFO    ] No update needed
[2026-06-12 00:02:17,250.250 INFO    ] Checking for camera pi updates...
[2026-06-12 00:02:17,271.271 INFO    ] 200
[2026-06-12 00:02:17,273.273 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:02:17,296.296 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 00:02:17,349.349 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 00:02:17,351.351 INFO    ] No camera update needed
[2026-06-12 00:02:17,352.352 INFO    ] Script finished. Safe exiting...
[2026-06-12 00:02:17,354.354 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 00:02:17,357.357 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 00:02:17,360.360 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 00:02:19,398.398 INFO    ] ================================================
[2026-06-12 00:02:19,413.413 INFO    ] Launching Daemon at Fri Jun 12 00:02:19 IST 2026
[2026-06-12 00:02:19,424.424 INFO    ] ================================================
[2026-06-12 00:02:19,787.787 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 00:02:19
[2026-06-12 00:02:20,103.103 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 00:02:20,235.235 INFO    ] Initializing speech engine...
[2026-06-12 00:02:20,240.240 INFO    ] 2026-06-12 00:02:20
[2026-06-12 00:02:20,467.467 INFO    ] 2026-06-12 00:02:20
[2026-06-12 00:02:20,497.497 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 00:02:20,627.627 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 00:02:20,672.672 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 00:02:20,830.830 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 00:02:20,840.840 INFO    ] time= 12/06/2026 00:02:20
[2026-06-12 00:02:20,891.891 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 00:02:20,924.924 INFO    ] Checking for existing commands in stream...
[2026-06-12 00:02:21,047.047 INFO    ] No existing commands found in stream
[2026-06-12 00:02:26,056.056 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 00:02:26,059.059 INFO    ] Waiting 1.07 seconds before fallback handling...
[2026-06-12 00:02:27,485.485 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 00:02:27,486.486 INFO    ] Checking for system updates...
[2026-06-12 00:02:27,507.507 INFO    ] 200
[2026-06-12 00:02:27,509.509 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:02:27,541.541 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 00:02:27,542.542 INFO    ] No update needed
[2026-06-12 00:02:27,544.544 INFO    ] Checking for camera pi updates...
[2026-06-12 00:02:27,564.564 INFO    ] 200
[2026-06-12 00:02:27,565.565 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:02:27,589.589 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 00:02:27,626.626 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 00:02:27,628.628 INFO    ] No camera update needed
[2026-06-12 00:02:27,629.629 INFO    ] Script finished. Safe exiting...
[2026-06-12 00:02:27,631.631 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 00:02:27,634.634 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 00:02:27,636.636 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 00:02:29,676.676 INFO    ] ================================================
[2026-06-12 00:02:29,691.691 INFO    ] Launching Daemon at Fri Jun 12 00:02:29 IST 2026
[2026-06-12 00:02:29,702.702 INFO    ] ================================================
[2026-06-12 00:02:30,048.048 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 00:02:30
[2026-06-12 00:02:30,360.360 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 00:02:30,490.490 INFO    ] Initializing speech engine...
[2026-06-12 00:02:30,495.495 INFO    ] 2026-06-12 00:02:30
[2026-06-12 00:02:30,712.712 INFO    ] 2026-06-12 00:02:30
[2026-06-12 00:02:30,742.742 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 00:02:30,927.927 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 00:02:30,931.931 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 00:02:31,079.079 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 00:02:31,138.138 INFO    ] time= 12/06/2026 00:02:31
[2026-06-12 00:02:31,161.161 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 00:02:31,167.167 INFO    ] Checking for existing commands in stream...
[2026-06-12 00:02:31,233.233 INFO    ] No existing commands found in stream
[2026-06-12 00:02:36,243.243 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 00:02:36,246.246 INFO    ] Waiting 1.79 seconds before fallback handling...
[2026-06-12 00:02:38,414.414 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 00:02:38,415.415 INFO    ] Checking for system updates...
[2026-06-12 00:02:38,436.436 INFO    ] 200
[2026-06-12 00:02:38,437.437 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:02:38,467.467 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 00:02:38,468.468 INFO    ] No update needed
[2026-06-12 00:02:38,469.469 INFO    ] Checking for camera pi updates...
[2026-06-12 00:02:38,489.489 INFO    ] 200
[2026-06-12 00:02:38,491.491 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:02:38,514.514 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 00:02:38,580.580 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 00:02:38,581.581 INFO    ] No camera update needed
[2026-06-12 00:02:38,583.583 INFO    ] Script finished. Safe exiting...
[2026-06-12 00:02:38,584.584 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 00:02:38,587.587 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 00:02:38,589.589 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 00:02:40,629.629 INFO    ] ================================================
[2026-06-12 00:02:40,644.644 INFO    ] Launching Daemon at Fri Jun 12 00:02:40 IST 2026
[2026-06-12 00:02:40,655.655 INFO    ] ================================================
[2026-06-12 00:02:41,000.000 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 00:02:40
[2026-06-12 00:02:41,314.314 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 00:02:41,445.445 INFO    ] Initializing speech engine...
[2026-06-12 00:02:41,453.453 INFO    ] 2026-06-12 00:02:41
[2026-06-12 00:02:41,667.667 INFO    ] 2026-06-12 00:02:41
[2026-06-12 00:02:41,696.696 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 00:02:41,821.821 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 00:02:41,884.884 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 00:02:42,021.021 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 00:02:42,083.083 INFO    ] time= 12/06/2026 00:02:42
[2026-06-12 00:02:42,117.117 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 00:02:42,119.119 INFO    ] Checking for existing commands in stream...
[2026-06-12 00:02:42,190.190 INFO    ] No existing commands found in stream
[2026-06-12 00:02:47,200.200 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 00:02:47,203.203 INFO    ] Waiting 0.25 seconds before fallback handling...
[2026-06-12 00:02:47,826.826 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 00:02:47,827.827 INFO    ] Checking for system updates...
[2026-06-12 00:02:47,848.848 INFO    ] 200
[2026-06-12 00:02:47,850.850 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:02:47,880.880 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 00:02:47,882.882 INFO    ] No update needed
[2026-06-12 00:02:47,883.883 INFO    ] Checking for camera pi updates...
[2026-06-12 00:02:47,903.903 INFO    ] 200
[2026-06-12 00:02:47,904.904 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:02:47,928.928 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 00:02:47,969.969 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 00:02:47,970.970 INFO    ] No camera update needed
[2026-06-12 00:02:47,972.972 INFO    ] Script finished. Safe exiting...
[2026-06-12 00:02:47,973.973 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 00:02:47,976.976 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 00:02:47,979.979 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 00:02:50,020.020 INFO    ] ================================================
[2026-06-12 00:02:50,036.036 INFO    ] Launching Daemon at Fri Jun 12 00:02:50 IST 2026
[2026-06-12 00:02:50,048.048 INFO    ] ================================================
[2026-06-12 00:02:50,406.406 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 00:02:50
[2026-06-12 00:02:50,722.722 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 00:02:50,865.865 INFO    ] Initializing speech engine...
[2026-06-12 00:02:50,871.871 INFO    ] 2026-06-12 00:02:50
[2026-06-12 00:02:51,075.075 INFO    ] 2026-06-12 00:02:51
[2026-06-12 00:02:51,104.104 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 00:02:51,226.226 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 00:02:51,289.289 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 00:02:51,500.500 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 00:02:51,517.517 INFO    ] time= 12/06/2026 00:02:51
[2026-06-12 00:02:51,522.522 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 00:02:51,524.524 INFO    ] Checking for existing commands in stream...
[2026-06-12 00:02:51,591.591 INFO    ] No existing commands found in stream
[2026-06-12 00:02:56,600.600 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 00:02:56,603.603 INFO    ] Waiting 0.61 seconds before fallback handling...
[2026-06-12 00:03:02,559.559 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 00:03:02,561.561 INFO    ] Checking for system updates...
[2026-06-12 00:03:02,583.583 INFO    ] 200
[2026-06-12 00:03:02,584.584 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:03:02,623.623 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 00:03:02,624.624 INFO    ] No update needed
[2026-06-12 00:03:02,626.626 INFO    ] Checking for camera pi updates...
[2026-06-12 00:03:02,646.646 INFO    ] 200
[2026-06-12 00:03:02,647.647 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:03:02,670.670 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 00:03:02,701.701 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 00:03:02,702.702 INFO    ] No camera update needed
[2026-06-12 00:03:02,703.703 INFO    ] Script finished. Safe exiting...
[2026-06-12 00:03:02,704.704 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 00:03:02,707.707 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 00:03:02,712.712 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 00:03:04,753.753 INFO    ] ================================================
[2026-06-12 00:03:04,769.769 INFO    ] Launching Daemon at Fri Jun 12 00:03:04 IST 2026
[2026-06-12 00:03:04,780.780 INFO    ] ================================================
[2026-06-12 00:03:05,118.118 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 00:03:05
[2026-06-12 00:03:05,435.435 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 00:03:05,572.572 INFO    ] Initializing speech engine...
[2026-06-12 00:03:05,585.585 INFO    ] 2026-06-12 00:03:05
[2026-06-12 00:03:05,791.791 INFO    ] 2026-06-12 00:03:05
[2026-06-12 00:03:05,828.828 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 00:03:05,986.986 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 00:03:06,044.044 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 00:03:06,274.274 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 00:03:06,301.301 INFO    ] time= 12/06/2026 00:03:06
[2026-06-12 00:03:06,306.306 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 00:03:06,308.308 INFO    ] Checking for existing commands in stream...
[2026-06-12 00:03:06,380.380 INFO    ] No existing commands found in stream
[2026-06-12 00:03:11,389.389 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 00:03:11,392.392 INFO    ] Waiting 1.90 seconds before fallback handling...
[2026-06-12 00:03:13,617.617 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 00:03:13,619.619 INFO    ] Checking for system updates...
[2026-06-12 00:03:13,640.640 INFO    ] 200
[2026-06-12 00:03:13,641.641 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:03:13,673.673 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 00:03:13,675.675 INFO    ] No update needed
[2026-06-12 00:03:13,676.676 INFO    ] Checking for camera pi updates...
[2026-06-12 00:03:13,695.695 INFO    ] 200
[2026-06-12 00:03:13,696.696 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:03:13,720.720 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 00:03:13,765.765 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 00:03:13,767.767 INFO    ] No camera update needed
[2026-06-12 00:03:13,768.768 INFO    ] Script finished. Safe exiting...
[2026-06-12 00:03:13,769.769 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 00:03:13,772.772 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 00:03:13,775.775 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 00:03:15,815.815 INFO    ] ================================================
[2026-06-12 00:03:15,830.830 INFO    ] Launching Daemon at Fri Jun 12 00:03:15 IST 2026
[2026-06-12 00:03:15,841.841 INFO    ] ================================================
[2026-06-12 00:03:16,225.225 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 00:03:16
[2026-06-12 00:03:16,565.565 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 00:03:16,717.717 INFO    ] Initializing speech engine...
[2026-06-12 00:03:16,722.722 INFO    ] 2026-06-12 00:03:16
[2026-06-12 00:03:16,930.930 INFO    ] 2026-06-12 00:03:16
[2026-06-12 00:03:16,960.960 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 00:03:17,144.144 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 00:03:17,148.148 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 00:03:17,351.351 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 00:03:17,375.375 INFO    ] time= 12/06/2026 00:03:17
[2026-06-12 00:03:17,380.380 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 00:03:17,382.382 INFO    ] Checking for existing commands in stream...
[2026-06-12 00:03:17,447.447 INFO    ] No existing commands found in stream
[2026-06-12 00:03:22,458.458 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 00:03:22,462.462 INFO    ] Waiting 0.40 seconds before fallback handling...
[2026-06-12 00:03:23,229.229 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 00:03:23,230.230 INFO    ] Checking for system updates...
[2026-06-12 00:03:23,252.252 INFO    ] 200
[2026-06-12 00:03:23,254.254 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:03:23,284.284 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 00:03:23,286.286 INFO    ] No update needed
[2026-06-12 00:03:23,287.287 INFO    ] Checking for camera pi updates...
[2026-06-12 00:03:23,308.308 INFO    ] 200
[2026-06-12 00:03:23,310.310 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:03:23,333.333 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 00:03:23,377.377 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 00:03:23,378.378 INFO    ] No camera update needed
[2026-06-12 00:03:23,379.379 INFO    ] Script finished. Safe exiting...
[2026-06-12 00:03:23,381.381 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 00:03:23,384.384 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 00:03:23,386.386 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 00:03:25,425.425 INFO    ] ================================================
[2026-06-12 00:03:25,440.440 INFO    ] Launching Daemon at Fri Jun 12 00:03:25 IST 2026
[2026-06-12 00:03:25,451.451 INFO    ] ================================================
[2026-06-12 00:03:25,801.801 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 00:03:25
[2026-06-12 00:03:26,120.120 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 00:03:26,256.256 INFO    ] Initializing speech engine...
[2026-06-12 00:03:26,262.262 INFO    ] 2026-06-12 00:03:26
[2026-06-12 00:03:26,494.494 INFO    ] 2026-06-12 00:03:26
[2026-06-12 00:03:26,525.525 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 00:03:26,699.699 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 00:03:26,728.728 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 00:03:26,869.869 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 00:03:26,926.926 INFO    ] time= 12/06/2026 00:03:26
[2026-06-12 00:03:26,967.967 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 00:03:26,979.979 INFO    ] Checking for existing commands in stream...
[2026-06-12 00:03:27,055.055 INFO    ] No existing commands found in stream
[2026-06-12 00:03:32,061.061 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 00:03:32,063.063 INFO    ] Waiting 1.68 seconds before fallback handling...
[2026-06-12 00:03:34,098.098 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 00:03:34,099.099 INFO    ] Checking for system updates...
[2026-06-12 00:03:34,122.122 INFO    ] 200
[2026-06-12 00:03:34,123.123 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:03:34,154.154 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 00:03:34,155.155 INFO    ] No update needed
[2026-06-12 00:03:34,157.157 INFO    ] Checking for camera pi updates...
[2026-06-12 00:03:34,178.178 INFO    ] 200
[2026-06-12 00:03:34,180.180 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:03:34,206.206 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 00:03:34,252.252 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 00:03:34,254.254 INFO    ] No camera update needed
[2026-06-12 00:03:34,255.255 INFO    ] Script finished. Safe exiting...
[2026-06-12 00:03:34,256.256 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 00:03:34,259.259 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 00:03:34,262.262 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 00:03:36,301.301 INFO    ] ================================================
[2026-06-12 00:03:36,316.316 INFO    ] Launching Daemon at Fri Jun 12 00:03:36 IST 2026
[2026-06-12 00:03:36,327.327 INFO    ] ================================================
[2026-06-12 00:03:36,708.708 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 00:03:36
[2026-06-12 00:03:37,051.051 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 00:03:37,191.191 INFO    ] Initializing speech engine...
[2026-06-12 00:03:37,200.200 INFO    ] 2026-06-12 00:03:37
[2026-06-12 00:03:37,420.420 INFO    ] 2026-06-12 00:03:37
[2026-06-12 00:03:37,449.449 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 00:03:37,636.636 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 00:03:37,646.646 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 00:03:37,778.778 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 00:03:37,847.847 INFO    ] time= 12/06/2026 00:03:37
[2026-06-12 00:03:37,871.871 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 00:03:37,878.878 INFO    ] Checking for existing commands in stream...
[2026-06-12 00:03:37,969.969 INFO    ] No existing commands found in stream
[2026-06-12 00:03:42,994.994 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 00:03:42,997.997 INFO    ] Waiting 3.39 seconds before fallback handling...
[2026-06-12 00:03:46,726.726 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 00:03:46,727.727 INFO    ] Checking for system updates...
[2026-06-12 00:03:46,748.748 INFO    ] 200
[2026-06-12 00:03:46,750.750 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:03:46,781.781 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 00:03:46,782.782 INFO    ] No update needed
[2026-06-12 00:03:46,783.783 INFO    ] Checking for camera pi updates...
[2026-06-12 00:03:46,803.803 INFO    ] 200
[2026-06-12 00:03:46,805.805 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:03:46,828.828 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 00:03:46,877.877 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 00:03:46,878.878 INFO    ] No camera update needed
[2026-06-12 00:03:46,880.880 INFO    ] Script finished. Safe exiting...
[2026-06-12 00:03:46,881.881 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 00:03:46,885.885 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 00:03:46,888.888 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 00:03:48,926.926 INFO    ] ================================================
[2026-06-12 00:03:48,941.941 INFO    ] Launching Daemon at Fri Jun 12 00:03:48 IST 2026
[2026-06-12 00:03:48,952.952 INFO    ] ================================================
[2026-06-12 00:03:49,340.340 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 00:03:49
[2026-06-12 00:03:49,683.683 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 00:03:49,835.835 INFO    ] Initializing speech engine...
[2026-06-12 00:03:49,842.842 INFO    ] 2026-06-12 00:03:49
[2026-06-12 00:03:50,051.051 INFO    ] 2026-06-12 00:03:50
[2026-06-12 00:03:50,081.081 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 00:03:50,266.266 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 00:03:50,277.277 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 00:03:50,404.404 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 00:03:50,469.469 INFO    ] time= 12/06/2026 00:03:50
[2026-06-12 00:03:50,498.498 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 00:03:50,504.504 INFO    ] Checking for existing commands in stream...
[2026-06-12 00:03:50,571.571 INFO    ] No existing commands found in stream
[2026-06-12 00:03:55,581.581 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 00:03:55,585.585 INFO    ] Waiting 1.41 seconds before fallback handling...
[2026-06-12 00:03:57,387.387 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 00:03:57,389.389 INFO    ] Checking for system updates...
[2026-06-12 00:03:57,410.410 INFO    ] 200
[2026-06-12 00:03:57,412.412 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:03:57,446.446 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 00:03:57,447.447 INFO    ] No update needed
[2026-06-12 00:03:57,448.448 INFO    ] Checking for camera pi updates...
[2026-06-12 00:03:57,468.468 INFO    ] 200
[2026-06-12 00:03:57,469.469 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:03:57,494.494 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 00:03:57,544.544 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 00:03:57,545.545 INFO    ] No camera update needed
[2026-06-12 00:03:57,546.546 INFO    ] Script finished. Safe exiting...
[2026-06-12 00:03:57,548.548 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 00:03:57,551.551 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 00:03:57,553.553 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 00:03:59,592.592 INFO    ] ================================================
[2026-06-12 00:03:59,607.607 INFO    ] Launching Daemon at Fri Jun 12 00:03:59 IST 2026
[2026-06-12 00:03:59,618.618 INFO    ] ================================================
[2026-06-12 00:03:59,993.993 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 00:03:59
[2026-06-12 00:04:00,333.333 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 00:04:00,472.472 INFO    ] Initializing speech engine...
[2026-06-12 00:04:00,481.481 INFO    ] 2026-06-12 00:04:00
[2026-06-12 00:04:00,701.701 INFO    ] 2026-06-12 00:04:00
[2026-06-12 00:04:00,731.731 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 00:04:00,856.856 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 00:04:00,920.920 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 00:04:01,125.125 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 00:04:01,151.151 INFO    ] time= 12/06/2026 00:04:01
[2026-06-12 00:04:01,157.157 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 00:04:01,158.158 INFO    ] Checking for existing commands in stream...
[2026-06-12 00:04:01,227.227 INFO    ] No existing commands found in stream
[2026-06-12 00:04:06,241.241 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 00:04:06,245.245 INFO    ] Waiting 2.83 seconds before fallback handling...
[2026-06-12 00:04:09,472.472 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 00:04:09,474.474 INFO    ] Checking for system updates...
[2026-06-12 00:04:09,494.494 INFO    ] 200
[2026-06-12 00:04:09,496.496 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:04:09,527.527 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 00:04:09,528.528 INFO    ] No update needed
[2026-06-12 00:04:09,530.530 INFO    ] Checking for camera pi updates...
[2026-06-12 00:04:09,550.550 INFO    ] 200
[2026-06-12 00:04:09,551.551 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:04:09,580.580 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 00:04:09,622.622 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 00:04:09,623.623 INFO    ] No camera update needed
[2026-06-12 00:04:09,624.624 INFO    ] Script finished. Safe exiting...
[2026-06-12 00:04:09,625.625 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 00:04:09,628.628 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 00:04:09,631.631 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 00:04:11,669.669 INFO    ] ================================================
[2026-06-12 00:04:11,686.686 INFO    ] Launching Daemon at Fri Jun 12 00:04:11 IST 2026
[2026-06-12 00:04:11,697.697 INFO    ] ================================================
[2026-06-12 00:04:12,021.021 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 00:04:12
[2026-06-12 00:04:12,332.332 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 00:04:12,468.468 INFO    ] Initializing speech engine...
[2026-06-12 00:04:12,478.478 INFO    ] 2026-06-12 00:04:12
[2026-06-12 00:04:12,682.682 INFO    ] 2026-06-12 00:04:12
[2026-06-12 00:04:12,710.710 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 00:04:12,892.892 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 00:04:12,903.903 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 00:04:13,026.026 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 00:04:13,088.088 INFO    ] time= 12/06/2026 00:04:13
[2026-06-12 00:04:13,120.120 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 00:04:13,127.127 INFO    ] Checking for existing commands in stream...
[2026-06-12 00:04:13,241.241 INFO    ] No existing commands found in stream
[2026-06-12 00:04:18,250.250 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 00:04:18,253.253 INFO    ] Waiting 1.15 seconds before fallback handling...
[2026-06-12 00:04:19,797.797 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 00:04:19,799.799 INFO    ] Checking for system updates...
[2026-06-12 00:04:19,821.821 INFO    ] 200
[2026-06-12 00:04:19,822.822 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:04:19,855.855 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 00:04:19,856.856 INFO    ] No update needed
[2026-06-12 00:04:19,857.857 INFO    ] Checking for camera pi updates...
[2026-06-12 00:04:19,877.877 INFO    ] 200
[2026-06-12 00:04:19,878.878 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:04:19,904.904 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 00:04:19,953.953 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 00:04:19,954.954 INFO    ] No camera update needed
[2026-06-12 00:04:19,955.955 INFO    ] Script finished. Safe exiting...
[2026-06-12 00:04:19,956.956 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 00:04:19,959.959 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 00:04:19,962.962 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 00:04:22,000.000 INFO    ] ================================================
[2026-06-12 00:04:22,016.016 INFO    ] Launching Daemon at Fri Jun 12 00:04:22 IST 2026
[2026-06-12 00:04:22,027.027 INFO    ] ================================================
[2026-06-12 00:04:22,375.375 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 00:04:22
[2026-06-12 00:04:22,691.691 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 00:04:22,837.837 INFO    ] Initializing speech engine...
[2026-06-12 00:04:22,843.843 INFO    ] 2026-06-12 00:04:22
[2026-06-12 00:04:23,045.045 INFO    ] 2026-06-12 00:04:23
[2026-06-12 00:04:23,074.074 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 00:04:23,206.206 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 00:04:23,258.258 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 00:04:23,459.459 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 00:04:23,484.484 INFO    ] time= 12/06/2026 00:04:23
[2026-06-12 00:04:23,489.489 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 00:04:23,491.491 INFO    ] Checking for existing commands in stream...
[2026-06-12 00:04:23,561.561 INFO    ] No existing commands found in stream
[2026-06-12 00:04:28,572.572 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 00:04:28,575.575 INFO    ] Waiting 0.15 seconds before fallback handling...
[2026-06-12 00:04:29,130.130 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 00:04:29,132.132 INFO    ] Checking for system updates...
[2026-06-12 00:04:29,153.153 INFO    ] 200
[2026-06-12 00:04:29,154.154 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:04:29,187.187 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 00:04:29,188.188 INFO    ] No update needed
[2026-06-12 00:04:29,189.189 INFO    ] Checking for camera pi updates...
[2026-06-12 00:04:29,209.209 INFO    ] 200
[2026-06-12 00:04:29,211.211 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:04:29,234.234 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 00:04:29,279.279 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 00:04:29,280.280 INFO    ] No camera update needed
[2026-06-12 00:04:29,281.281 INFO    ] Script finished. Safe exiting...
[2026-06-12 00:04:29,283.283 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 00:04:29,286.286 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 00:04:29,288.288 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 00:04:31,327.327 INFO    ] ================================================
[2026-06-12 00:04:31,342.342 INFO    ] Launching Daemon at Fri Jun 12 00:04:31 IST 2026
[2026-06-12 00:04:31,353.353 INFO    ] ================================================
[2026-06-12 00:04:31,721.721 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 00:04:31
[2026-06-12 00:04:32,058.058 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 00:04:32,220.220 INFO    ] Initializing speech engine...
[2026-06-12 00:04:32,225.225 INFO    ] 2026-06-12 00:04:32
[2026-06-12 00:04:32,451.451 INFO    ] 2026-06-12 00:04:32
[2026-06-12 00:04:32,482.482 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 00:04:32,653.653 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 00:04:32,689.689 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 00:04:32,829.829 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 00:04:32,883.883 INFO    ] time= 12/06/2026 00:04:32
[2026-06-12 00:04:32,919.919 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 00:04:32,925.925 INFO    ] Checking for existing commands in stream...
[2026-06-12 00:04:33,021.021 INFO    ] No existing commands found in stream
[2026-06-12 00:04:38,035.035 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 00:04:38,037.037 INFO    ] Waiting 0.65 seconds before fallback handling...
[2026-06-12 00:04:39,050.050 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 00:04:39,052.052 INFO    ] Checking for system updates...
[2026-06-12 00:04:39,072.072 INFO    ] 200
[2026-06-12 00:04:39,073.073 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:04:39,106.106 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 00:04:39,107.107 INFO    ] No update needed
[2026-06-12 00:04:39,108.108 INFO    ] Checking for camera pi updates...
[2026-06-12 00:04:39,129.129 INFO    ] 200
[2026-06-12 00:04:39,131.131 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:04:39,155.155 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 00:04:39,199.199 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 00:04:39,200.200 INFO    ] No camera update needed
[2026-06-12 00:04:39,201.201 INFO    ] Script finished. Safe exiting...
[2026-06-12 00:04:39,203.203 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 00:04:39,205.205 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 00:04:39,208.208 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 00:04:41,238.238 INFO    ] ================================================
[2026-06-12 00:04:41,247.247 INFO    ] Launching Daemon at Fri Jun 12 00:04:41 IST 2026
[2026-06-12 00:04:41,253.253 INFO    ] ================================================
[2026-06-12 00:04:41,624.624 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 00:04:41
[2026-06-12 00:04:41,936.936 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 00:04:42,070.070 INFO    ] Initializing speech engine...
[2026-06-12 00:04:42,082.082 INFO    ] 2026-06-12 00:04:42
[2026-06-12 00:04:42,291.291 INFO    ] 2026-06-12 00:04:42
[2026-06-12 00:04:42,321.321 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 00:04:42,505.505 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 00:04:42,509.509 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 00:04:42,646.646 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 00:04:42,705.705 INFO    ] time= 12/06/2026 00:04:42
[2026-06-12 00:04:42,738.738 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 00:04:42,745.745 INFO    ] Checking for existing commands in stream...
[2026-06-12 00:04:42,837.837 INFO    ] No existing commands found in stream
[2026-06-12 00:04:47,861.861 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 00:04:47,864.864 INFO    ] Waiting 2.23 seconds before fallback handling...
[2026-06-12 00:04:50,439.439 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 00:04:50,441.441 INFO    ] Checking for system updates...
[2026-06-12 00:04:50,463.463 INFO    ] 200
[2026-06-12 00:04:50,464.464 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:04:50,494.494 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 00:04:50,496.496 INFO    ] No update needed
[2026-06-12 00:04:50,497.497 INFO    ] Checking for camera pi updates...
[2026-06-12 00:04:50,516.516 INFO    ] 200
[2026-06-12 00:04:50,518.518 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:04:50,543.543 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 00:04:50,589.589 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 00:04:50,591.591 INFO    ] No camera update needed
[2026-06-12 00:04:50,592.592 INFO    ] Script finished. Safe exiting...
[2026-06-12 00:04:50,593.593 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 00:04:50,596.596 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 00:04:50,599.599 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 00:04:52,637.637 INFO    ] ================================================
[2026-06-12 00:04:52,653.653 INFO    ] Launching Daemon at Fri Jun 12 00:04:52 IST 2026
[2026-06-12 00:04:52,664.664 INFO    ] ================================================
[2026-06-12 00:04:53,017.017 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 00:04:53
[2026-06-12 00:04:53,334.334 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 00:04:53,464.464 INFO    ] Initializing speech engine...
[2026-06-12 00:04:53,473.473 INFO    ] 2026-06-12 00:04:53
[2026-06-12 00:04:53,685.685 INFO    ] 2026-06-12 00:04:53
[2026-06-12 00:04:53,714.714 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 00:04:53,836.836 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 00:04:53,899.899 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 00:04:54,102.102 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 00:04:54,126.126 INFO    ] time= 12/06/2026 00:04:54
[2026-06-12 00:04:54,132.132 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 00:04:54,134.134 INFO    ] Checking for existing commands in stream...
[2026-06-12 00:04:54,199.199 INFO    ] No existing commands found in stream
[2026-06-12 00:04:59,210.210 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 00:04:59,213.213 INFO    ] Waiting 0.69 seconds before fallback handling...
[2026-06-12 00:05:00,275.275 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 00:05:00,277.277 INFO    ] Checking for system updates...
[2026-06-12 00:05:00,298.298 INFO    ] 200
[2026-06-12 00:05:00,299.299 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:05:00,329.329 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 00:05:00,331.331 INFO    ] No update needed
[2026-06-12 00:05:00,332.332 INFO    ] Checking for camera pi updates...
[2026-06-12 00:05:00,352.352 INFO    ] 200
[2026-06-12 00:05:00,353.353 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:05:00,377.377 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 00:05:00,410.410 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 00:05:00,411.411 INFO    ] No camera update needed
[2026-06-12 00:05:00,413.413 INFO    ] Script finished. Safe exiting...
[2026-06-12 00:05:00,414.414 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 00:05:00,417.417 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 00:05:00,420.420 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 00:05:02,452.452 INFO    ] ================================================
[2026-06-12 00:05:02,461.461 INFO    ] Launching Daemon at Fri Jun 12 00:05:02 IST 2026
[2026-06-12 00:05:02,468.468 INFO    ] ================================================
[2026-06-12 00:05:02,802.802 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 00:05:02
[2026-06-12 00:05:03,140.140 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 00:05:03,284.284 INFO    ] Initializing speech engine...
[2026-06-12 00:05:03,289.289 INFO    ] 2026-06-12 00:05:03
[2026-06-12 00:05:03,512.512 INFO    ] 2026-06-12 00:05:03
[2026-06-12 00:05:03,544.544 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 00:05:03,678.678 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 00:05:03,716.716 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 00:05:03,886.886 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 00:05:03,943.943 INFO    ] time= 12/06/2026 00:05:03
[2026-06-12 00:05:03,992.992 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 00:05:03,994.994 INFO    ] Checking for existing commands in stream...
[2026-06-12 00:05:04,069.069 INFO    ] No existing commands found in stream
[2026-06-12 00:05:09,080.080 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 00:05:09,083.083 INFO    ] Waiting 1.94 seconds before fallback handling...
[2026-06-12 00:05:11,302.302 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 00:05:11,304.304 INFO    ] Checking for system updates...
[2026-06-12 00:05:11,329.329 INFO    ] 200
[2026-06-12 00:05:11,331.331 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:05:11,366.366 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 00:05:11,367.367 INFO    ] No update needed
[2026-06-12 00:05:11,369.369 INFO    ] Checking for camera pi updates...
[2026-06-12 00:05:11,392.392 INFO    ] 200
[2026-06-12 00:05:11,393.393 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:05:11,422.422 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 00:05:11,546.546 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 00:05:11,547.547 INFO    ] No camera update needed
[2026-06-12 00:05:11,549.549 INFO    ] Script finished. Safe exiting...
[2026-06-12 00:05:11,551.551 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 00:05:11,554.554 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 00:05:11,558.558 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 00:05:13,583.583 INFO    ] ================================================
[2026-06-12 00:05:13,592.592 INFO    ] Launching Daemon at Fri Jun 12 00:05:13 IST 2026
[2026-06-12 00:05:13,599.599 INFO    ] ================================================
[2026-06-12 00:05:13,911.911 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 00:05:13
[2026-06-12 00:05:14,230.230 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 00:05:14,361.361 INFO    ] Initializing speech engine...
[2026-06-12 00:05:14,364.364 INFO    ] 2026-06-12 00:05:14
[2026-06-12 00:05:14,580.580 INFO    ] 2026-06-12 00:05:14
[2026-06-12 00:05:14,609.609 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 00:05:14,792.792 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 00:05:14,796.796 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 00:05:14,987.987 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 00:05:15,019.019 INFO    ] time= 12/06/2026 00:05:14
[2026-06-12 00:05:15,025.025 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 00:05:15,027.027 INFO    ] Checking for existing commands in stream...
[2026-06-12 00:05:15,142.142 INFO    ] No existing commands found in stream
[2026-06-12 00:05:20,150.150 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 00:05:20,152.152 INFO    ] Waiting 3.89 seconds before fallback handling...
[2026-06-12 00:05:24,668.668 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 00:05:24,670.670 INFO    ] Checking for system updates...
[2026-06-12 00:05:24,691.691 INFO    ] 200
[2026-06-12 00:05:24,693.693 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:05:24,723.723 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 00:05:24,725.725 INFO    ] No update needed
[2026-06-12 00:05:24,726.726 INFO    ] Checking for camera pi updates...
[2026-06-12 00:05:24,746.746 INFO    ] 200
[2026-06-12 00:05:24,747.747 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:05:24,770.770 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 00:05:24,826.826 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 00:05:24,827.827 INFO    ] No camera update needed
[2026-06-12 00:05:24,829.829 INFO    ] Script finished. Safe exiting...
[2026-06-12 00:05:24,830.830 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 00:05:24,833.833 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 00:05:24,836.836 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 00:05:26,875.875 INFO    ] ================================================
[2026-06-12 00:05:26,891.891 INFO    ] Launching Daemon at Fri Jun 12 00:05:26 IST 2026
[2026-06-12 00:05:26,901.901 INFO    ] ================================================
[2026-06-12 00:05:27,266.266 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 00:05:27
[2026-06-12 00:05:27,606.606 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 00:05:27,748.748 INFO    ] Initializing speech engine...
[2026-06-12 00:05:27,762.762 INFO    ] 2026-06-12 00:05:27
[2026-06-12 00:05:27,973.973 INFO    ] 2026-06-12 00:05:27
[2026-06-12 00:05:28,002.002 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 00:05:28,125.125 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 00:05:28,188.188 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 00:05:28,326.326 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 00:05:28,391.391 INFO    ] time= 12/06/2026 00:05:28
[2026-06-12 00:05:28,419.419 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 00:05:28,425.425 INFO    ] Checking for existing commands in stream...
[2026-06-12 00:05:28,495.495 INFO    ] No existing commands found in stream
[2026-06-12 00:05:33,506.506 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 00:05:33,509.509 INFO    ] Waiting 3.44 seconds before fallback handling...
[2026-06-12 00:05:37,349.349 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 00:05:37,351.351 INFO    ] Checking for system updates...
[2026-06-12 00:05:37,372.372 INFO    ] 200
[2026-06-12 00:05:37,374.374 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:05:37,404.404 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 00:05:37,405.405 INFO    ] No update needed
[2026-06-12 00:05:37,407.407 INFO    ] Checking for camera pi updates...
[2026-06-12 00:05:37,427.427 INFO    ] 200
[2026-06-12 00:05:37,429.429 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:05:37,454.454 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 00:05:37,503.503 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 00:05:37,505.505 INFO    ] No camera update needed
[2026-06-12 00:05:37,506.506 INFO    ] Script finished. Safe exiting...
[2026-06-12 00:05:37,507.507 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 00:05:37,510.510 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 00:05:37,513.513 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 00:05:39,552.552 INFO    ] ================================================
[2026-06-12 00:05:39,567.567 INFO    ] Launching Daemon at Fri Jun 12 00:05:39 IST 2026
[2026-06-12 00:05:39,578.578 INFO    ] ================================================
[2026-06-12 00:05:39,919.919 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 00:05:39
[2026-06-12 00:05:40,237.237 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 00:05:40,374.374 INFO    ] Initializing speech engine...
[2026-06-12 00:05:40,382.382 INFO    ] 2026-06-12 00:05:40
[2026-06-12 00:05:40,606.606 INFO    ] 2026-06-12 00:05:40
[2026-06-12 00:05:40,637.637 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 00:05:40,769.769 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 00:05:40,807.807 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 00:05:40,980.980 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 00:05:41,028.028 INFO    ] time= 12/06/2026 00:05:40
[2026-06-12 00:05:41,066.066 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 00:05:41,089.089 INFO    ] Checking for existing commands in stream...
[2026-06-12 00:05:41,166.166 INFO    ] No existing commands found in stream
[2026-06-12 00:05:46,180.180 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 00:05:46,183.183 INFO    ] Waiting 2.58 seconds before fallback handling...
[2026-06-12 00:05:49,184.184 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 00:05:49,185.185 INFO    ] Checking for system updates...
[2026-06-12 00:05:49,206.206 INFO    ] 200
[2026-06-12 00:05:49,207.207 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:05:49,240.240 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 00:05:49,242.242 INFO    ] No update needed
[2026-06-12 00:05:49,243.243 INFO    ] Checking for camera pi updates...
[2026-06-12 00:05:49,264.264 INFO    ] 200
[2026-06-12 00:05:49,265.265 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:05:49,288.288 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 00:05:49,331.331 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 00:05:49,333.333 INFO    ] No camera update needed
[2026-06-12 00:05:49,334.334 INFO    ] Script finished. Safe exiting...
[2026-06-12 00:05:49,335.335 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 00:05:49,338.338 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 00:05:49,341.341 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 00:05:51,379.379 INFO    ] ================================================
[2026-06-12 00:05:51,395.395 INFO    ] Launching Daemon at Fri Jun 12 00:05:51 IST 2026
[2026-06-12 00:05:51,405.405 INFO    ] ================================================
[2026-06-12 00:05:51,754.754 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 00:05:51
[2026-06-12 00:05:52,091.091 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 00:05:52,233.233 INFO    ] Initializing speech engine...
[2026-06-12 00:05:52,245.245 INFO    ] 2026-06-12 00:05:52
[2026-06-12 00:05:52,458.458 INFO    ] 2026-06-12 00:05:52
[2026-06-12 00:05:52,487.487 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 00:05:52,652.652 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 00:05:52,677.677 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 00:05:52,815.815 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 00:05:52,879.879 INFO    ] time= 12/06/2026 00:05:52
[2026-06-12 00:05:52,908.908 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 00:05:52,914.914 INFO    ] Checking for existing commands in stream...
[2026-06-12 00:05:53,006.006 INFO    ] No existing commands found in stream
[2026-06-12 00:05:58,021.021 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 00:05:58,024.024 INFO    ] Waiting 3.61 seconds before fallback handling...
[2026-06-12 00:06:01,939.939 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 00:06:01,942.942 INFO    ] Checking for system updates...
[2026-06-12 00:06:01,966.966 INFO    ] 200
[2026-06-12 00:06:01,968.968 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:06:02,007.007 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 00:06:02,009.009 INFO    ] No update needed
[2026-06-12 00:06:02,011.011 INFO    ] Checking for camera pi updates...
[2026-06-12 00:06:02,034.034 INFO    ] 200
[2026-06-12 00:06:02,035.035 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:06:02,069.069 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 00:06:02,101.101 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 00:06:02,103.103 INFO    ] No camera update needed
[2026-06-12 00:06:02,105.105 INFO    ] Script finished. Safe exiting...
[2026-06-12 00:06:02,106.106 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 00:06:02,111.111 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 00:06:02,115.115 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 00:06:04,154.154 INFO    ] ================================================
[2026-06-12 00:06:04,169.169 INFO    ] Launching Daemon at Fri Jun 12 00:06:04 IST 2026
[2026-06-12 00:06:04,179.179 INFO    ] ================================================
[2026-06-12 00:06:04,562.562 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 00:06:04
[2026-06-12 00:06:04,904.904 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 00:06:05,056.056 INFO    ] Initializing speech engine...
[2026-06-12 00:06:05,061.061 INFO    ] 2026-06-12 00:06:05
[2026-06-12 00:06:05,262.262 INFO    ] 2026-06-12 00:06:05
[2026-06-12 00:06:05,293.293 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 00:06:05,479.479 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 00:06:05,488.488 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 00:06:05,695.695 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 00:06:05,718.718 INFO    ] time= 12/06/2026 00:06:05
[2026-06-12 00:06:05,724.724 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 00:06:05,725.725 INFO    ] Checking for existing commands in stream...
[2026-06-12 00:06:05,794.794 INFO    ] No existing commands found in stream
[2026-06-12 00:06:10,804.804 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 00:06:10,807.807 INFO    ] Waiting 3.24 seconds before fallback handling...
[2026-06-12 00:06:14,420.420 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 00:06:14,422.422 INFO    ] Checking for system updates...
[2026-06-12 00:06:14,444.444 INFO    ] 200
[2026-06-12 00:06:14,446.446 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:06:14,476.476 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 00:06:14,478.478 INFO    ] No update needed
[2026-06-12 00:06:14,479.479 INFO    ] Checking for camera pi updates...
[2026-06-12 00:06:14,500.500 INFO    ] 200
[2026-06-12 00:06:14,502.502 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:06:14,525.525 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 00:06:14,576.576 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 00:06:14,578.578 INFO    ] No camera update needed
[2026-06-12 00:06:14,579.579 INFO    ] Script finished. Safe exiting...
[2026-06-12 00:06:14,580.580 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 00:06:14,583.583 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 00:06:14,586.586 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 00:06:16,628.628 INFO    ] ================================================
[2026-06-12 00:06:16,644.644 INFO    ] Launching Daemon at Fri Jun 12 00:06:16 IST 2026
[2026-06-12 00:06:16,655.655 INFO    ] ================================================
[2026-06-12 00:06:17,030.030 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 00:06:17
[2026-06-12 00:06:17,347.347 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 00:06:17,481.481 INFO    ] Initializing speech engine...
[2026-06-12 00:06:17,493.493 INFO    ] 2026-06-12 00:06:17
[2026-06-12 00:06:17,699.699 INFO    ] 2026-06-12 00:06:17
[2026-06-12 00:06:17,728.728 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 00:06:17,854.854 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 00:06:17,912.912 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 00:06:18,054.054 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 00:06:18,117.117 INFO    ] time= 12/06/2026 00:06:18
[2026-06-12 00:06:18,145.145 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 00:06:18,146.146 INFO    ] Checking for existing commands in stream...
[2026-06-12 00:06:18,208.208 INFO    ] No existing commands found in stream
[2026-06-12 00:06:23,217.217 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 00:06:23,220.220 INFO    ] Waiting 3.23 seconds before fallback handling...
[2026-06-12 00:06:26,808.808 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 00:06:26,810.810 INFO    ] Checking for system updates...
[2026-06-12 00:06:26,831.831 INFO    ] 200
[2026-06-12 00:06:26,832.832 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:06:26,863.863 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 00:06:26,864.864 INFO    ] No update needed
[2026-06-12 00:06:26,866.866 INFO    ] Checking for camera pi updates...
[2026-06-12 00:06:26,887.887 INFO    ] 200
[2026-06-12 00:06:26,889.889 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:06:26,914.914 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 00:06:26,961.961 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 00:06:26,963.963 INFO    ] No camera update needed
[2026-06-12 00:06:26,964.964 INFO    ] Script finished. Safe exiting...
[2026-06-12 00:06:26,965.965 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 00:06:26,968.968 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 00:06:26,971.971 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 00:06:29,009.009 INFO    ] ================================================
[2026-06-12 00:06:29,027.027 INFO    ] Launching Daemon at Fri Jun 12 00:06:29 IST 2026
[2026-06-12 00:06:29,038.038 INFO    ] ================================================
[2026-06-12 00:06:29,397.397 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 00:06:29
[2026-06-12 00:06:29,739.739 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 00:06:29,893.893 INFO    ] Initializing speech engine...
[2026-06-12 00:06:29,898.898 INFO    ] 2026-06-12 00:06:29
[2026-06-12 00:06:30,111.111 INFO    ] 2026-06-12 00:06:30
[2026-06-12 00:06:30,141.141 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 00:06:30,268.268 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 00:06:30,332.332 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 00:06:30,472.472 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 00:06:30,539.539 INFO    ] time= 12/06/2026 00:06:30
[2026-06-12 00:06:30,564.564 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 00:06:30,571.571 INFO    ] Checking for existing commands in stream...
[2026-06-12 00:06:30,639.639 INFO    ] No existing commands found in stream
[2026-06-12 00:06:35,653.653 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 00:06:35,656.656 INFO    ] Waiting 2.54 seconds before fallback handling...
[2026-06-12 00:06:38,541.541 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 00:06:38,542.542 INFO    ] Checking for system updates...
[2026-06-12 00:06:38,564.564 INFO    ] 200
[2026-06-12 00:06:38,565.565 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:06:38,596.596 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 00:06:38,597.597 INFO    ] No update needed
[2026-06-12 00:06:38,599.599 INFO    ] Checking for camera pi updates...
[2026-06-12 00:06:38,619.619 INFO    ] 200
[2026-06-12 00:06:38,621.621 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:06:38,646.646 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 00:06:38,689.689 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 00:06:38,691.691 INFO    ] No camera update needed
[2026-06-12 00:06:38,692.692 INFO    ] Script finished. Safe exiting...
[2026-06-12 00:06:38,693.693 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 00:06:38,696.696 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 00:06:38,699.699 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 00:06:40,738.738 INFO    ] ================================================
[2026-06-12 00:06:40,753.753 INFO    ] Launching Daemon at Fri Jun 12 00:06:40 IST 2026
[2026-06-12 00:06:40,765.765 INFO    ] ================================================
[2026-06-12 00:06:41,128.128 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 00:06:41
[2026-06-12 00:06:41,446.446 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 00:06:41,590.590 INFO    ] Initializing speech engine...
[2026-06-12 00:06:41,595.595 INFO    ] 2026-06-12 00:06:41
[2026-06-12 00:06:41,797.797 INFO    ] 2026-06-12 00:06:41
[2026-06-12 00:06:41,827.827 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 00:06:42,010.010 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 00:06:42,013.013 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 00:06:42,142.142 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 00:06:42,198.198 INFO    ] time= 12/06/2026 00:06:42
[2026-06-12 00:06:42,238.238 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 00:06:42,247.247 INFO    ] Checking for existing commands in stream...
[2026-06-12 00:06:42,313.313 INFO    ] No existing commands found in stream
[2026-06-12 00:06:47,322.322 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 00:06:47,325.325 INFO    ] Waiting 1.51 seconds before fallback handling...
[2026-06-12 00:06:49,198.198 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 00:06:49,200.200 INFO    ] Checking for system updates...
[2026-06-12 00:06:49,223.223 INFO    ] 200
[2026-06-12 00:06:49,225.225 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:06:49,261.261 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 00:06:49,262.262 INFO    ] No update needed
[2026-06-12 00:06:49,264.264 INFO    ] Checking for camera pi updates...
[2026-06-12 00:06:49,287.287 INFO    ] 200
[2026-06-12 00:06:49,289.289 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:06:49,315.315 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 00:06:49,366.366 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 00:06:49,368.368 INFO    ] No camera update needed
[2026-06-12 00:06:49,369.369 INFO    ] Script finished. Safe exiting...
[2026-06-12 00:06:49,371.371 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 00:06:49,374.374 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 00:06:49,377.377 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 00:06:51,420.420 INFO    ] ================================================
[2026-06-12 00:06:51,435.435 INFO    ] Launching Daemon at Fri Jun 12 00:06:51 IST 2026
[2026-06-12 00:06:51,447.447 INFO    ] ================================================
[2026-06-12 00:06:51,787.787 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 00:06:51
[2026-06-12 00:06:52,098.098 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 00:06:52,240.240 INFO    ] Initializing speech engine...
[2026-06-12 00:06:52,244.244 INFO    ] 2026-06-12 00:06:52
[2026-06-12 00:06:52,446.446 INFO    ] 2026-06-12 00:06:52
[2026-06-12 00:06:52,475.475 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 00:06:52,658.658 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 00:06:52,662.662 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 00:06:52,813.813 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 00:06:52,866.866 INFO    ] time= 12/06/2026 00:06:52
[2026-06-12 00:06:52,888.888 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 00:06:52,894.894 INFO    ] Checking for existing commands in stream...
[2026-06-12 00:06:52,985.985 INFO    ] No existing commands found in stream
[2026-06-12 00:06:57,993.993 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 00:06:57,996.996 INFO    ] Waiting 1.60 seconds before fallback handling...
[2026-06-12 00:06:59,939.939 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 00:06:59,941.941 INFO    ] Checking for system updates...
[2026-06-12 00:06:59,963.963 INFO    ] 200
[2026-06-12 00:06:59,964.964 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:06:59,997.997 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 00:06:59,998.998 INFO    ] No update needed
[2026-06-12 00:07:00,000.000 INFO    ] Checking for camera pi updates...
[2026-06-12 00:07:00,020.020 INFO    ] 200
[2026-06-12 00:07:00,022.022 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:07:00,047.047 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 00:07:00,098.098 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 00:07:00,100.100 INFO    ] No camera update needed
[2026-06-12 00:07:00,101.101 INFO    ] Script finished. Safe exiting...
[2026-06-12 00:07:00,102.102 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 00:07:00,105.105 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 00:07:00,108.108 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 00:07:02,145.145 INFO    ] ================================================
[2026-06-12 00:07:02,155.155 INFO    ] Launching Daemon at Fri Jun 12 00:07:02 IST 2026
[2026-06-12 00:07:02,165.165 INFO    ] ================================================
[2026-06-12 00:07:02,515.515 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 00:07:02
[2026-06-12 00:07:02,857.857 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 00:07:02,992.992 INFO    ] Initializing speech engine...
[2026-06-12 00:07:02,996.996 INFO    ] 2026-06-12 00:07:02
[2026-06-12 00:07:03,215.215 INFO    ] 2026-06-12 00:07:03
[2026-06-12 00:07:03,244.244 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 00:07:03,376.376 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 00:07:03,430.430 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 00:07:03,566.566 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 00:07:03,624.624 INFO    ] time= 12/06/2026 00:07:03
[2026-06-12 00:07:03,659.659 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 00:07:03,664.664 INFO    ] Checking for existing commands in stream...
[2026-06-12 00:07:03,734.734 INFO    ] No existing commands found in stream
[2026-06-12 00:07:08,744.744 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 00:07:08,747.747 INFO    ] Waiting 1.06 seconds before fallback handling...
[2026-06-12 00:07:10,183.183 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 00:07:10,185.185 INFO    ] Checking for system updates...
[2026-06-12 00:07:10,205.205 INFO    ] 200
[2026-06-12 00:07:10,206.206 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:07:10,241.241 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 00:07:10,243.243 INFO    ] No update needed
[2026-06-12 00:07:10,244.244 INFO    ] Checking for camera pi updates...
[2026-06-12 00:07:10,272.272 INFO    ] 200
[2026-06-12 00:07:10,274.274 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:07:10,297.297 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 00:07:10,340.340 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 00:07:10,341.341 INFO    ] No camera update needed
[2026-06-12 00:07:10,342.342 INFO    ] Script finished. Safe exiting...
[2026-06-12 00:07:10,344.344 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 00:07:10,346.346 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 00:07:10,349.349 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 00:07:12,387.387 INFO    ] ================================================
[2026-06-12 00:07:12,402.402 INFO    ] Launching Daemon at Fri Jun 12 00:07:12 IST 2026
[2026-06-12 00:07:12,413.413 INFO    ] ================================================
[2026-06-12 00:07:12,744.744 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 00:07:12
[2026-06-12 00:07:13,055.055 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 00:07:13,185.185 INFO    ] Initializing speech engine...
[2026-06-12 00:07:13,190.190 INFO    ] 2026-06-12 00:07:13
[2026-06-12 00:07:13,409.409 INFO    ] 2026-06-12 00:07:13
[2026-06-12 00:07:13,437.437 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 00:07:13,623.623 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 00:07:13,626.626 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 00:07:13,779.779 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 00:07:13,833.833 INFO    ] time= 12/06/2026 00:07:13
[2026-06-12 00:07:13,855.855 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 00:07:13,861.861 INFO    ] Checking for existing commands in stream...
[2026-06-12 00:07:13,952.952 INFO    ] No existing commands found in stream
[2026-06-12 00:07:18,966.966 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 00:07:18,969.969 INFO    ] Waiting 2.83 seconds before fallback handling...
[2026-06-12 00:07:22,148.148 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 00:07:22,150.150 INFO    ] Checking for system updates...
[2026-06-12 00:07:22,171.171 INFO    ] 200
[2026-06-12 00:07:22,173.173 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:07:22,206.206 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 00:07:22,207.207 INFO    ] No update needed
[2026-06-12 00:07:22,208.208 INFO    ] Checking for camera pi updates...
[2026-06-12 00:07:22,228.228 INFO    ] 200
[2026-06-12 00:07:22,229.229 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:07:22,254.254 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 00:07:22,404.404 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 00:07:22,405.405 INFO    ] No camera update needed
[2026-06-12 00:07:22,406.406 INFO    ] Script finished. Safe exiting...
[2026-06-12 00:07:22,408.408 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 00:07:22,411.411 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 00:07:22,413.413 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 00:07:24,452.452 INFO    ] ================================================
[2026-06-12 00:07:24,467.467 INFO    ] Launching Daemon at Fri Jun 12 00:07:24 IST 2026
[2026-06-12 00:07:24,477.477 INFO    ] ================================================
[2026-06-12 00:07:24,812.812 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 00:07:24
[2026-06-12 00:07:25,122.122 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 00:07:25,253.253 INFO    ] Initializing speech engine...
[2026-06-12 00:07:25,257.257 INFO    ] 2026-06-12 00:07:25
[2026-06-12 00:07:25,476.476 INFO    ] 2026-06-12 00:07:25
[2026-06-12 00:07:25,503.503 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 00:07:25,626.626 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 00:07:25,688.688 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 00:07:25,818.818 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 00:07:25,869.869 INFO    ] time= 12/06/2026 00:07:25
[2026-06-12 00:07:25,913.913 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 00:07:25,918.918 INFO    ] Checking for existing commands in stream...
[2026-06-12 00:07:25,988.988 INFO    ] No existing commands found in stream
[2026-06-12 00:07:30,998.998 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 00:07:31,001.001 INFO    ] Waiting 3.48 seconds before fallback handling...
[2026-06-12 00:07:34,810.810 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 00:07:34,812.812 INFO    ] Checking for system updates...
[2026-06-12 00:07:34,833.833 INFO    ] 200
[2026-06-12 00:07:34,835.835 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:07:34,868.868 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 00:07:34,869.869 INFO    ] No update needed
[2026-06-12 00:07:34,870.870 INFO    ] Checking for camera pi updates...
[2026-06-12 00:07:34,890.890 INFO    ] 200
[2026-06-12 00:07:34,891.891 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:07:34,916.916 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 00:07:34,956.956 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 00:07:34,958.958 INFO    ] No camera update needed
[2026-06-12 00:07:34,959.959 INFO    ] Script finished. Safe exiting...
[2026-06-12 00:07:34,960.960 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 00:07:34,963.963 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 00:07:34,966.966 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 00:07:37,004.004 INFO    ] ================================================
[2026-06-12 00:07:37,020.020 INFO    ] Launching Daemon at Fri Jun 12 00:07:37 IST 2026
[2026-06-12 00:07:37,030.030 INFO    ] ================================================
[2026-06-12 00:07:37,386.386 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 00:07:37
[2026-06-12 00:07:37,731.731 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 00:07:37,882.882 INFO    ] Initializing speech engine...
[2026-06-12 00:07:37,887.887 INFO    ] 2026-06-12 00:07:37
[2026-06-12 00:07:38,095.095 INFO    ] 2026-06-12 00:07:38
[2026-06-12 00:07:38,124.124 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 00:07:38,307.307 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 00:07:38,317.317 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 00:07:38,468.468 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 00:07:38,516.516 INFO    ] time= 12/06/2026 00:07:38
[2026-06-12 00:07:38,539.539 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 00:07:38,545.545 INFO    ] Checking for existing commands in stream...
[2026-06-12 00:07:38,612.612 INFO    ] No existing commands found in stream
[2026-06-12 00:07:43,637.637 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 00:07:43,640.640 INFO    ] Waiting 0.65 seconds before fallback handling...
[2026-06-12 00:07:44,672.672 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 00:07:44,673.673 INFO    ] Checking for system updates...
[2026-06-12 00:07:44,696.696 INFO    ] 200
[2026-06-12 00:07:44,697.697 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:07:44,730.730 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 00:07:44,731.731 INFO    ] No update needed
[2026-06-12 00:07:44,733.733 INFO    ] Checking for camera pi updates...
[2026-06-12 00:07:44,752.752 INFO    ] 200
[2026-06-12 00:07:44,753.753 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:07:44,781.781 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 00:07:44,824.824 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 00:07:44,825.825 INFO    ] No camera update needed
[2026-06-12 00:07:44,826.826 INFO    ] Script finished. Safe exiting...
[2026-06-12 00:07:44,828.828 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 00:07:44,831.831 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 00:07:44,834.834 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 00:07:46,872.872 INFO    ] ================================================
[2026-06-12 00:07:46,887.887 INFO    ] Launching Daemon at Fri Jun 12 00:07:46 IST 2026
[2026-06-12 00:07:46,898.898 INFO    ] ================================================
[2026-06-12 00:07:47,252.252 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 00:07:47
[2026-06-12 00:07:47,564.564 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 00:07:47,706.706 INFO    ] Initializing speech engine...
[2026-06-12 00:07:47,711.711 INFO    ] 2026-06-12 00:07:47
[2026-06-12 00:07:47,913.913 INFO    ] 2026-06-12 00:07:47
[2026-06-12 00:07:47,942.942 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 00:07:48,062.062 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 00:07:48,100.100 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 00:07:48,261.261 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 00:07:48,328.328 INFO    ] time= 12/06/2026 00:07:48
[2026-06-12 00:07:48,352.352 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 00:07:48,358.358 INFO    ] Checking for existing commands in stream...
[2026-06-12 00:07:48,425.425 INFO    ] No existing commands found in stream
[2026-06-12 00:07:53,438.438 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 00:07:53,442.442 INFO    ] Waiting 3.54 seconds before fallback handling...
[2026-06-12 00:07:57,388.388 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 00:07:57,390.390 INFO    ] Checking for system updates...
[2026-06-12 00:07:57,413.413 INFO    ] 200
[2026-06-12 00:07:57,415.415 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:07:57,448.448 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 00:07:57,449.449 INFO    ] No update needed
[2026-06-12 00:07:57,451.451 INFO    ] Checking for camera pi updates...
[2026-06-12 00:07:57,472.472 INFO    ] 200
[2026-06-12 00:07:57,473.473 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:07:57,499.499 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 00:07:57,548.548 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 00:07:57,550.550 INFO    ] No camera update needed
[2026-06-12 00:07:57,551.551 INFO    ] Script finished. Safe exiting...
[2026-06-12 00:07:57,552.552 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 00:07:57,555.555 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 00:07:57,558.558 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 00:07:59,596.596 INFO    ] ================================================
[2026-06-12 00:07:59,611.611 INFO    ] Launching Daemon at Fri Jun 12 00:07:59 IST 2026
[2026-06-12 00:07:59,622.622 INFO    ] ================================================
[2026-06-12 00:07:59,969.969 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 00:07:59
[2026-06-12 00:08:00,311.311 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 00:08:00,464.464 INFO    ] Initializing speech engine...
[2026-06-12 00:08:00,470.470 INFO    ] 2026-06-12 00:08:00
[2026-06-12 00:08:00,677.677 INFO    ] 2026-06-12 00:08:00
[2026-06-12 00:08:00,705.705 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 00:08:00,891.891 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 00:08:00,901.901 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 00:08:01,065.065 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 00:08:01,074.074 INFO    ] time= 12/06/2026 00:08:01
[2026-06-12 00:08:01,076.076 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 00:08:01,079.079 INFO    ] Checking for existing commands in stream...
[2026-06-12 00:08:01,128.128 INFO    ] No existing commands found in stream
[2026-06-12 00:08:06,137.137 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 00:08:06,140.140 INFO    ] Waiting 2.76 seconds before fallback handling...
[2026-06-12 00:08:09,230.230 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 00:08:09,232.232 INFO    ] Checking for system updates...
[2026-06-12 00:08:09,257.257 INFO    ] 200
[2026-06-12 00:08:09,258.258 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:08:09,290.290 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 00:08:09,291.291 INFO    ] No update needed
[2026-06-12 00:08:09,293.293 INFO    ] Checking for camera pi updates...
[2026-06-12 00:08:09,313.313 INFO    ] 200
[2026-06-12 00:08:09,314.314 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:08:09,338.338 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 00:08:09,366.366 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 00:08:09,368.368 INFO    ] No camera update needed
[2026-06-12 00:08:09,369.369 INFO    ] Script finished. Safe exiting...
[2026-06-12 00:08:09,370.370 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 00:08:09,373.373 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 00:08:09,376.376 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 00:08:11,414.414 INFO    ] ================================================
[2026-06-12 00:08:11,429.429 INFO    ] Launching Daemon at Fri Jun 12 00:08:11 IST 2026
[2026-06-12 00:08:11,439.439 INFO    ] ================================================
[2026-06-12 00:08:11,797.797 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 00:08:11
[2026-06-12 00:08:12,134.134 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 00:08:12,273.273 INFO    ] Initializing speech engine...
[2026-06-12 00:08:12,286.286 INFO    ] 2026-06-12 00:08:12
[2026-06-12 00:08:12,499.499 INFO    ] 2026-06-12 00:08:12
[2026-06-12 00:08:12,528.528 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 00:08:12,683.683 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 00:08:12,717.717 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 00:08:12,849.849 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 00:08:12,905.905 INFO    ] time= 12/06/2026 00:08:12
[2026-06-12 00:08:12,949.949 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 00:08:12,956.956 INFO    ] Checking for existing commands in stream...
[2026-06-12 00:08:13,023.023 INFO    ] No existing commands found in stream
[2026-06-12 00:08:18,033.033 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 00:08:18,037.037 INFO    ] Waiting 2.56 seconds before fallback handling...
[2026-06-12 00:08:20,942.942 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 00:08:20,943.943 INFO    ] Checking for system updates...
[2026-06-12 00:08:20,966.966 INFO    ] 200
[2026-06-12 00:08:20,967.967 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:08:21,001.001 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 00:08:21,002.002 INFO    ] No update needed
[2026-06-12 00:08:21,003.003 INFO    ] Checking for camera pi updates...
[2026-06-12 00:08:21,025.025 INFO    ] 200
[2026-06-12 00:08:21,026.026 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:08:21,053.053 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 00:08:21,098.098 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 00:08:21,099.099 INFO    ] No camera update needed
[2026-06-12 00:08:21,101.101 INFO    ] Script finished. Safe exiting...
[2026-06-12 00:08:21,102.102 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 00:08:21,105.105 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 00:08:21,108.108 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 00:08:23,146.146 INFO    ] ================================================
[2026-06-12 00:08:23,162.162 INFO    ] Launching Daemon at Fri Jun 12 00:08:23 IST 2026
[2026-06-12 00:08:23,173.173 INFO    ] ================================================
[2026-06-12 00:08:23,492.492 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 00:08:23
[2026-06-12 00:08:23,805.805 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 00:08:23,943.943 INFO    ] Initializing speech engine...
[2026-06-12 00:08:23,953.953 INFO    ] 2026-06-12 00:08:23
[2026-06-12 00:08:24,159.159 INFO    ] 2026-06-12 00:08:24
[2026-06-12 00:08:24,187.187 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 00:08:24,311.311 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 00:08:24,349.349 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 00:08:24,508.508 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 00:08:24,574.574 INFO    ] time= 12/06/2026 00:08:24
[2026-06-12 00:08:24,608.608 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 00:08:24,614.614 INFO    ] Checking for existing commands in stream...
[2026-06-12 00:08:24,682.682 INFO    ] No existing commands found in stream
[2026-06-12 00:08:29,691.691 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 00:08:29,694.694 INFO    ] Waiting 1.06 seconds before fallback handling...
[2026-06-12 00:08:31,121.121 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 00:08:31,122.122 INFO    ] Checking for system updates...
[2026-06-12 00:08:31,148.148 INFO    ] 200
[2026-06-12 00:08:31,150.150 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:08:31,187.187 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 00:08:31,189.189 INFO    ] No update needed
[2026-06-12 00:08:31,191.191 INFO    ] Checking for camera pi updates...
[2026-06-12 00:08:31,214.214 INFO    ] 200
[2026-06-12 00:08:31,215.215 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:08:31,242.242 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 00:08:31,278.278 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 00:08:31,280.280 INFO    ] No camera update needed
[2026-06-12 00:08:31,282.282 INFO    ] Script finished. Safe exiting...
[2026-06-12 00:08:31,283.283 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 00:08:31,287.287 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 00:08:31,291.291 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 00:08:33,324.324 INFO    ] ================================================
[2026-06-12 00:08:33,339.339 INFO    ] Launching Daemon at Fri Jun 12 00:08:33 IST 2026
[2026-06-12 00:08:33,350.350 INFO    ] ================================================
[2026-06-12 00:08:33,697.697 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 00:08:33
[2026-06-12 00:08:34,009.009 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 00:08:34,146.146 INFO    ] Initializing speech engine...
[2026-06-12 00:08:34,156.156 INFO    ] 2026-06-12 00:08:34
[2026-06-12 00:08:34,359.359 INFO    ] 2026-06-12 00:08:34
[2026-06-12 00:08:34,387.387 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 00:08:34,509.509 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 00:08:34,557.557 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 00:08:34,702.702 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 00:08:34,764.764 INFO    ] time= 12/06/2026 00:08:34
[2026-06-12 00:08:34,801.801 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 00:08:34,807.807 INFO    ] Checking for existing commands in stream...
[2026-06-12 00:08:34,872.872 INFO    ] No existing commands found in stream
[2026-06-12 00:08:39,883.883 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 00:08:39,885.885 INFO    ] Waiting 2.54 seconds before fallback handling...
[2026-06-12 00:08:42,777.777 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 00:08:42,779.779 INFO    ] Checking for system updates...
[2026-06-12 00:08:42,803.803 INFO    ] 200
[2026-06-12 00:08:42,805.805 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:08:42,838.838 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 00:08:42,839.839 INFO    ] No update needed
[2026-06-12 00:08:42,841.841 INFO    ] Checking for camera pi updates...
[2026-06-12 00:08:42,863.863 INFO    ] 200
[2026-06-12 00:08:42,865.865 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:08:42,890.890 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 00:08:42,935.935 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 00:08:42,936.936 INFO    ] No camera update needed
[2026-06-12 00:08:42,938.938 INFO    ] Script finished. Safe exiting...
[2026-06-12 00:08:42,939.939 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 00:08:42,942.942 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 00:08:42,945.945 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 00:08:44,985.985 INFO    ] ================================================
[2026-06-12 00:08:45,000.000 INFO    ] Launching Daemon at Fri Jun 12 00:08:44 IST 2026
[2026-06-12 00:08:45,011.011 INFO    ] ================================================
[2026-06-12 00:08:45,365.365 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 00:08:45
[2026-06-12 00:08:45,686.686 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 00:08:45,833.833 INFO    ] Initializing speech engine...
[2026-06-12 00:08:45,838.838 INFO    ] 2026-06-12 00:08:45
[2026-06-12 00:08:46,040.040 INFO    ] 2026-06-12 00:08:46
[2026-06-12 00:08:46,068.068 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 00:08:46,253.253 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 00:08:46,257.257 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 00:08:46,393.393 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 00:08:46,460.460 INFO    ] time= 12/06/2026 00:08:46
[2026-06-12 00:08:46,483.483 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 00:08:46,490.490 INFO    ] Checking for existing commands in stream...
[2026-06-12 00:08:46,556.556 INFO    ] No existing commands found in stream
[2026-06-12 00:08:51,571.571 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 00:08:51,573.573 INFO    ] Waiting 3.41 seconds before fallback handling...
[2026-06-12 00:08:55,337.337 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 00:08:55,338.338 INFO    ] Checking for system updates...
[2026-06-12 00:08:55,359.359 INFO    ] 200
[2026-06-12 00:08:55,360.360 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:08:55,397.397 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 00:08:55,398.398 INFO    ] No update needed
[2026-06-12 00:08:55,400.400 INFO    ] Checking for camera pi updates...
[2026-06-12 00:08:55,420.420 INFO    ] 200
[2026-06-12 00:08:55,422.422 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:08:55,446.446 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 00:08:55,474.474 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 00:08:55,475.475 INFO    ] No camera update needed
[2026-06-12 00:08:55,477.477 INFO    ] Script finished. Safe exiting...
[2026-06-12 00:08:55,478.478 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 00:08:55,481.481 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 00:08:55,484.484 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 00:08:57,523.523 INFO    ] ================================================
[2026-06-12 00:08:57,539.539 INFO    ] Launching Daemon at Fri Jun 12 00:08:57 IST 2026
[2026-06-12 00:08:57,549.549 INFO    ] ================================================
[2026-06-12 00:08:57,909.909 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 00:08:57
[2026-06-12 00:08:58,245.245 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 00:08:58,395.395 INFO    ] Initializing speech engine...
[2026-06-12 00:08:58,401.401 INFO    ] 2026-06-12 00:08:58
[2026-06-12 00:08:58,607.607 INFO    ] 2026-06-12 00:08:58
[2026-06-12 00:08:58,636.636 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 00:08:58,819.819 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 00:08:58,823.823 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 00:08:58,952.952 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 00:08:59,018.018 INFO    ] time= 12/06/2026 00:08:58
[2026-06-12 00:08:59,050.050 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 00:08:59,057.057 INFO    ] Checking for existing commands in stream...
[2026-06-12 00:08:59,123.123 INFO    ] No existing commands found in stream
[2026-06-12 00:09:04,148.148 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 00:09:04,152.152 INFO    ] Waiting 1.26 seconds before fallback handling...
[2026-06-12 00:09:05,782.782 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 00:09:05,783.783 INFO    ] Checking for system updates...
[2026-06-12 00:09:05,803.803 INFO    ] 200
[2026-06-12 00:09:05,805.805 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:09:05,837.837 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 00:09:05,839.839 INFO    ] No update needed
[2026-06-12 00:09:05,840.840 INFO    ] Checking for camera pi updates...
[2026-06-12 00:09:05,861.861 INFO    ] 200
[2026-06-12 00:09:05,862.862 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:09:05,887.887 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 00:09:05,939.939 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 00:09:05,941.941 INFO    ] No camera update needed
[2026-06-12 00:09:05,942.942 INFO    ] Script finished. Safe exiting...
[2026-06-12 00:09:05,943.943 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 00:09:05,946.946 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 00:09:05,949.949 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 00:09:07,988.988 INFO    ] ================================================
[2026-06-12 00:09:08,004.004 INFO    ] Launching Daemon at Fri Jun 12 00:09:07 IST 2026
[2026-06-12 00:09:08,015.015 INFO    ] ================================================
[2026-06-12 00:09:08,407.407 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 00:09:08
[2026-06-12 00:09:08,735.735 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 00:09:08,867.867 INFO    ] Initializing speech engine...
[2026-06-12 00:09:08,879.879 INFO    ] 2026-06-12 00:09:08
[2026-06-12 00:09:09,085.085 INFO    ] 2026-06-12 00:09:09
[2026-06-12 00:09:09,114.114 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 00:09:09,260.260 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 00:09:09,297.297 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 00:09:09,434.434 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 00:09:09,488.488 INFO    ] time= 12/06/2026 00:09:09
[2026-06-12 00:09:09,521.521 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 00:09:09,525.525 INFO    ] Checking for existing commands in stream...
[2026-06-12 00:09:09,596.596 INFO    ] No existing commands found in stream
[2026-06-12 00:09:14,615.615 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 00:09:14,618.618 INFO    ] Waiting 0.37 seconds before fallback handling...
[2026-06-12 00:09:15,371.371 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 00:09:15,372.372 INFO    ] Checking for system updates...
[2026-06-12 00:09:15,394.394 INFO    ] 200
[2026-06-12 00:09:15,395.395 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:09:15,425.425 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 00:09:15,427.427 INFO    ] No update needed
[2026-06-12 00:09:15,428.428 INFO    ] Checking for camera pi updates...
[2026-06-12 00:09:15,448.448 INFO    ] 200
[2026-06-12 00:09:15,449.449 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:09:15,474.474 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 00:09:15,516.516 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 00:09:15,518.518 INFO    ] No camera update needed
[2026-06-12 00:09:15,519.519 INFO    ] Script finished. Safe exiting...
[2026-06-12 00:09:15,520.520 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 00:09:15,523.523 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 00:09:15,526.526 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 00:09:17,565.565 INFO    ] ================================================
[2026-06-12 00:09:17,580.580 INFO    ] Launching Daemon at Fri Jun 12 00:09:17 IST 2026
[2026-06-12 00:09:17,591.591 INFO    ] ================================================
[2026-06-12 00:09:17,945.945 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 00:09:17
[2026-06-12 00:09:18,284.284 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 00:09:18,436.436 INFO    ] Initializing speech engine...
[2026-06-12 00:09:18,442.442 INFO    ] 2026-06-12 00:09:18
[2026-06-12 00:09:18,652.652 INFO    ] 2026-06-12 00:09:18
[2026-06-12 00:09:18,681.681 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 00:09:18,845.845 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 00:09:18,869.869 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 00:09:19,007.007 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 00:09:19,072.072 INFO    ] time= 12/06/2026 00:09:19
[2026-06-12 00:09:19,100.100 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 00:09:19,106.106 INFO    ] Checking for existing commands in stream...
[2026-06-12 00:09:19,174.174 INFO    ] No existing commands found in stream
[2026-06-12 00:09:24,188.188 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 00:09:24,192.192 INFO    ] Waiting 0.38 seconds before fallback handling...
[2026-06-12 00:09:24,986.986 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 00:09:24,988.988 INFO    ] Checking for system updates...
[2026-06-12 00:09:25,011.011 INFO    ] 200
[2026-06-12 00:09:25,012.012 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:09:25,047.047 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 00:09:25,049.049 INFO    ] No update needed
[2026-06-12 00:09:25,051.051 INFO    ] Checking for camera pi updates...
[2026-06-12 00:09:25,074.074 INFO    ] 200
[2026-06-12 00:09:25,076.076 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:09:25,102.102 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 00:09:25,240.240 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 00:09:25,242.242 INFO    ] No camera update needed
[2026-06-12 00:09:25,243.243 INFO    ] Script finished. Safe exiting...
[2026-06-12 00:09:25,245.245 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 00:09:25,248.248 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 00:09:25,251.251 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 00:09:27,289.289 INFO    ] ================================================
[2026-06-12 00:09:27,305.305 INFO    ] Launching Daemon at Fri Jun 12 00:09:27 IST 2026
[2026-06-12 00:09:27,316.316 INFO    ] ================================================
[2026-06-12 00:09:27,685.685 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 00:09:27
[2026-06-12 00:09:28,002.002 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 00:09:28,134.134 INFO    ] Initializing speech engine...
[2026-06-12 00:09:28,137.137 INFO    ] 2026-06-12 00:09:28
[2026-06-12 00:09:28,355.355 INFO    ] 2026-06-12 00:09:28
[2026-06-12 00:09:28,383.383 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 00:09:28,566.566 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 00:09:28,576.576 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 00:09:28,732.732 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 00:09:28,775.775 INFO    ] time= 12/06/2026 00:09:28
[2026-06-12 00:09:28,797.797 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 00:09:28,803.803 INFO    ] Checking for existing commands in stream...
[2026-06-12 00:09:28,868.868 INFO    ] No existing commands found in stream
[2026-06-12 00:09:33,879.879 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 00:09:33,883.883 INFO    ] Waiting 1.75 seconds before fallback handling...
[2026-06-12 00:09:36,001.001 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 00:09:36,003.003 INFO    ] Checking for system updates...
[2026-06-12 00:09:36,025.025 INFO    ] 200
[2026-06-12 00:09:36,026.026 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:09:36,056.056 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 00:09:36,057.057 INFO    ] No update needed
[2026-06-12 00:09:36,059.059 INFO    ] Checking for camera pi updates...
[2026-06-12 00:09:36,079.079 INFO    ] 200
[2026-06-12 00:09:36,081.081 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:09:36,106.106 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 00:09:36,149.149 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 00:09:36,150.150 INFO    ] No camera update needed
[2026-06-12 00:09:36,152.152 INFO    ] Script finished. Safe exiting...
[2026-06-12 00:09:36,153.153 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 00:09:36,156.156 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 00:09:36,159.159 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 00:09:38,197.197 INFO    ] ================================================
[2026-06-12 00:09:38,212.212 INFO    ] Launching Daemon at Fri Jun 12 00:09:38 IST 2026
[2026-06-12 00:09:38,223.223 INFO    ] ================================================
[2026-06-12 00:09:38,565.565 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 00:09:38
[2026-06-12 00:09:38,882.882 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 00:09:39,020.020 INFO    ] Initializing speech engine...
[2026-06-12 00:09:39,030.030 INFO    ] 2026-06-12 00:09:39
[2026-06-12 00:09:39,235.235 INFO    ] 2026-06-12 00:09:39
[2026-06-12 00:09:39,264.264 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 00:09:39,390.390 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 00:09:39,449.449 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 00:09:39,651.651 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 00:09:39,675.675 INFO    ] time= 12/06/2026 00:09:39
[2026-06-12 00:09:39,681.681 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 00:09:39,683.683 INFO    ] Checking for existing commands in stream...
[2026-06-12 00:09:39,750.750 INFO    ] No existing commands found in stream
[2026-06-12 00:09:44,758.758 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 00:09:44,760.760 INFO    ] Waiting 1.84 seconds before fallback handling...
[2026-06-12 00:09:46,921.921 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 00:09:46,923.923 INFO    ] Checking for system updates...
[2026-06-12 00:09:46,944.944 INFO    ] 200
[2026-06-12 00:09:46,945.945 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:09:46,976.976 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 00:09:46,977.977 INFO    ] No update needed
[2026-06-12 00:09:46,979.979 INFO    ] Checking for camera pi updates...
[2026-06-12 00:09:46,999.999 INFO    ] 200
[2026-06-12 00:09:47,001.001 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:09:47,024.024 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 00:09:47,065.065 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 00:09:47,066.066 INFO    ] No camera update needed
[2026-06-12 00:09:47,068.068 INFO    ] Script finished. Safe exiting...
[2026-06-12 00:09:47,069.069 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 00:09:47,072.072 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 00:09:47,075.075 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 00:09:49,113.113 INFO    ] ================================================
[2026-06-12 00:09:49,129.129 INFO    ] Launching Daemon at Fri Jun 12 00:09:49 IST 2026
[2026-06-12 00:09:49,139.139 INFO    ] ================================================
[2026-06-12 00:09:49,475.475 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 00:09:49
[2026-06-12 00:09:49,791.791 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 00:09:49,928.928 INFO    ] Initializing speech engine...
[2026-06-12 00:09:49,933.933 INFO    ] 2026-06-12 00:09:49
[2026-06-12 00:09:50,147.147 INFO    ] 2026-06-12 00:09:50
[2026-06-12 00:09:50,175.175 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 00:09:50,325.325 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 00:09:50,333.333 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 00:09:50,481.481 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 00:09:50,532.532 INFO    ] time= 12/06/2026 00:09:50
[2026-06-12 00:09:50,540.540 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 00:09:50,586.586 INFO    ] Checking for existing commands in stream...
[2026-06-12 00:09:50,722.722 INFO    ] No existing commands found in stream
[2026-06-12 00:09:55,736.736 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 00:09:55,739.739 INFO    ] Waiting 0.27 seconds before fallback handling...
[2026-06-12 00:09:56,351.351 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 00:09:56,352.352 INFO    ] Checking for system updates...
[2026-06-12 00:09:56,372.372 INFO    ] 200
[2026-06-12 00:09:56,374.374 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:09:56,406.406 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 00:09:56,407.407 INFO    ] No update needed
[2026-06-12 00:09:56,408.408 INFO    ] Checking for camera pi updates...
[2026-06-12 00:09:56,427.427 INFO    ] 200
[2026-06-12 00:09:56,429.429 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:09:56,454.454 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 00:09:56,500.500 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 00:09:56,502.502 INFO    ] No camera update needed
[2026-06-12 00:09:56,503.503 INFO    ] Script finished. Safe exiting...
[2026-06-12 00:09:56,504.504 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 00:09:56,507.507 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 00:09:56,510.510 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 00:09:58,548.548 INFO    ] ================================================
[2026-06-12 00:09:58,564.564 INFO    ] Launching Daemon at Fri Jun 12 00:09:58 IST 2026
[2026-06-12 00:09:58,576.576 INFO    ] ================================================
[2026-06-12 00:09:58,940.940 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 00:09:58
[2026-06-12 00:09:59,272.272 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 00:09:59,445.445 INFO    ] Initializing speech engine...
[2026-06-12 00:09:59,450.450 INFO    ] 2026-06-12 00:09:59
[2026-06-12 00:09:59,685.685 INFO    ] 2026-06-12 00:09:59
[2026-06-12 00:09:59,716.716 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 00:09:59,847.847 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 00:09:59,911.911 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 00:10:00,059.059 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 00:10:00,102.102 INFO    ] time= 12/06/2026 00:10:00
[2026-06-12 00:10:00,144.144 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 00:10:00,166.166 INFO    ] Checking for existing commands in stream...
[2026-06-12 00:10:00,239.239 INFO    ] No existing commands found in stream
[2026-06-12 00:10:05,250.250 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 00:10:05,253.253 INFO    ] Waiting 2.78 seconds before fallback handling...
[2026-06-12 00:10:08,470.470 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 00:10:08,472.472 INFO    ] Checking for system updates...
[2026-06-12 00:10:08,493.493 INFO    ] 200
[2026-06-12 00:10:08,494.494 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:10:08,526.526 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 00:10:08,528.528 INFO    ] No update needed
[2026-06-12 00:10:08,529.529 INFO    ] Checking for camera pi updates...
[2026-06-12 00:10:08,552.552 INFO    ] 200
[2026-06-12 00:10:08,554.554 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:10:08,581.581 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 00:10:08,627.627 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 00:10:08,628.628 INFO    ] No camera update needed
[2026-06-12 00:10:08,630.630 INFO    ] Script finished. Safe exiting...
[2026-06-12 00:10:08,631.631 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 00:10:08,634.634 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 00:10:08,637.637 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 00:10:10,677.677 INFO    ] ================================================
[2026-06-12 00:10:10,693.693 INFO    ] Launching Daemon at Fri Jun 12 00:10:10 IST 2026
[2026-06-12 00:10:10,704.704 INFO    ] ================================================
[2026-06-12 00:10:11,046.046 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 00:10:11
[2026-06-12 00:10:11,385.385 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 00:10:11,536.536 INFO    ] Initializing speech engine...
[2026-06-12 00:10:11,540.540 INFO    ] 2026-06-12 00:10:11
[2026-06-12 00:10:11,751.751 INFO    ] 2026-06-12 00:10:11
[2026-06-12 00:10:11,781.781 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 00:10:11,967.967 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 00:10:11,977.977 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 00:10:12,108.108 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 00:10:12,176.176 INFO    ] time= 12/06/2026 00:10:12
[2026-06-12 00:10:12,200.200 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 00:10:12,207.207 INFO    ] Checking for existing commands in stream...
[2026-06-12 00:10:12,297.297 INFO    ] No existing commands found in stream
[2026-06-12 00:10:17,316.316 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 00:10:17,320.320 INFO    ] Waiting 0.92 seconds before fallback handling...
[2026-06-12 00:10:18,639.639 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 00:10:18,640.640 INFO    ] Checking for system updates...
[2026-06-12 00:10:18,662.662 INFO    ] 200
[2026-06-12 00:10:18,663.663 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:10:18,693.693 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 00:10:18,695.695 INFO    ] No update needed
[2026-06-12 00:10:18,696.696 INFO    ] Checking for camera pi updates...
[2026-06-12 00:10:18,715.715 INFO    ] 200
[2026-06-12 00:10:18,717.717 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:10:18,741.741 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 00:10:18,799.799 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 00:10:18,801.801 INFO    ] No camera update needed
[2026-06-12 00:10:18,802.802 INFO    ] Script finished. Safe exiting...
[2026-06-12 00:10:18,803.803 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 00:10:18,807.807 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 00:10:18,810.810 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 00:10:20,850.850 INFO    ] ================================================
[2026-06-12 00:10:20,866.866 INFO    ] Launching Daemon at Fri Jun 12 00:10:20 IST 2026
[2026-06-12 00:10:20,878.878 INFO    ] ================================================
[2026-06-12 00:10:21,246.246 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 00:10:21
[2026-06-12 00:10:21,580.580 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 00:10:21,725.725 INFO    ] Initializing speech engine...
[2026-06-12 00:10:21,734.734 INFO    ] 2026-06-12 00:10:21
[2026-06-12 00:10:21,945.945 INFO    ] 2026-06-12 00:10:21
[2026-06-12 00:10:21,974.974 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 00:10:22,098.098 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 00:10:22,142.142 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 00:10:22,304.304 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 00:10:22,372.372 INFO    ] time= 12/06/2026 00:10:22
[2026-06-12 00:10:22,397.397 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 00:10:22,403.403 INFO    ] Checking for existing commands in stream...
[2026-06-12 00:10:22,471.471 INFO    ] No existing commands found in stream
[2026-06-12 00:10:27,481.481 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 00:10:27,484.484 INFO    ] Waiting 3.39 seconds before fallback handling...
[2026-06-12 00:10:31,237.237 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 00:10:31,239.239 INFO    ] Checking for system updates...
[2026-06-12 00:10:31,259.259 INFO    ] 200
[2026-06-12 00:10:31,261.261 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:10:31,293.293 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 00:10:31,294.294 INFO    ] No update needed
[2026-06-12 00:10:31,295.295 INFO    ] Checking for camera pi updates...
[2026-06-12 00:10:31,315.315 INFO    ] 200
[2026-06-12 00:10:31,316.316 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:10:31,339.339 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 00:10:31,376.376 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 00:10:31,378.378 INFO    ] No camera update needed
[2026-06-12 00:10:31,379.379 INFO    ] Script finished. Safe exiting...
[2026-06-12 00:10:31,380.380 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 00:10:31,383.383 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 00:10:31,386.386 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 00:10:33,418.418 INFO    ] ================================================
[2026-06-12 00:10:33,433.433 INFO    ] Launching Daemon at Fri Jun 12 00:10:33 IST 2026
[2026-06-12 00:10:33,445.445 INFO    ] ================================================
[2026-06-12 00:10:33,800.800 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 00:10:33
[2026-06-12 00:10:34,116.116 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 00:10:34,254.254 INFO    ] Initializing speech engine...
[2026-06-12 00:10:34,263.263 INFO    ] 2026-06-12 00:10:34
[2026-06-12 00:10:34,468.468 INFO    ] 2026-06-12 00:10:34
[2026-06-12 00:10:34,498.498 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 00:10:34,680.680 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 00:10:34,684.684 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 00:10:34,819.819 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 00:10:34,885.885 INFO    ] time= 12/06/2026 00:10:34
[2026-06-12 00:10:34,909.909 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 00:10:34,916.916 INFO    ] Checking for existing commands in stream...
[2026-06-12 00:10:35,006.006 INFO    ] No existing commands found in stream
[2026-06-12 00:10:40,015.015 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 00:10:40,018.018 INFO    ] Waiting 0.92 seconds before fallback handling...
[2026-06-12 00:10:41,303.303 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 00:10:41,305.305 INFO    ] Checking for system updates...
[2026-06-12 00:10:41,326.326 INFO    ] 200
[2026-06-12 00:10:41,328.328 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:10:41,358.358 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 00:10:41,359.359 INFO    ] No update needed
[2026-06-12 00:10:41,361.361 INFO    ] Checking for camera pi updates...
[2026-06-12 00:10:41,382.382 INFO    ] 200
[2026-06-12 00:10:41,383.383 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:10:41,411.411 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 00:10:41,453.453 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 00:10:41,455.455 INFO    ] No camera update needed
[2026-06-12 00:10:41,456.456 INFO    ] Script finished. Safe exiting...
[2026-06-12 00:10:41,458.458 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 00:10:41,461.461 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 00:10:41,464.464 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 00:10:43,505.505 INFO    ] ================================================
[2026-06-12 00:10:43,520.520 INFO    ] Launching Daemon at Fri Jun 12 00:10:43 IST 2026
[2026-06-12 00:10:43,531.531 INFO    ] ================================================
[2026-06-12 00:10:43,907.907 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 00:10:43
[2026-06-12 00:10:44,222.222 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 00:10:44,354.354 INFO    ] Initializing speech engine...
[2026-06-12 00:10:44,362.362 INFO    ] 2026-06-12 00:10:44
[2026-06-12 00:10:44,573.573 INFO    ] 2026-06-12 00:10:44
[2026-06-12 00:10:44,602.602 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 00:10:44,784.784 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 00:10:44,794.794 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 00:10:44,923.923 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 00:10:44,990.990 INFO    ] time= 12/06/2026 00:10:44
[2026-06-12 00:10:45,014.014 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 00:10:45,020.020 INFO    ] Checking for existing commands in stream...
[2026-06-12 00:10:45,087.087 INFO    ] No existing commands found in stream
[2026-06-12 00:10:50,101.101 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 00:10:50,104.104 INFO    ] Waiting 1.78 seconds before fallback handling...
[2026-06-12 00:10:52,239.239 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 00:10:52,241.241 INFO    ] Checking for system updates...
[2026-06-12 00:10:52,263.263 INFO    ] 200
[2026-06-12 00:10:52,264.264 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:10:52,295.295 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 00:10:52,296.296 INFO    ] No update needed
[2026-06-12 00:10:52,298.298 INFO    ] Checking for camera pi updates...
[2026-06-12 00:10:52,317.317 INFO    ] 200
[2026-06-12 00:10:52,318.318 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:10:52,341.341 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 00:10:52,381.381 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 00:10:52,383.383 INFO    ] No camera update needed
[2026-06-12 00:10:52,384.384 INFO    ] Script finished. Safe exiting...
[2026-06-12 00:10:52,385.385 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 00:10:52,388.388 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 00:10:52,391.391 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 00:10:54,430.430 INFO    ] ================================================
[2026-06-12 00:10:54,446.446 INFO    ] Launching Daemon at Fri Jun 12 00:10:54 IST 2026
[2026-06-12 00:10:54,458.458 INFO    ] ================================================
[2026-06-12 00:10:54,812.812 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 00:10:54
[2026-06-12 00:10:55,123.123 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 00:10:55,265.265 INFO    ] Initializing speech engine...
[2026-06-12 00:10:55,270.270 INFO    ] 2026-06-12 00:10:55
[2026-06-12 00:10:55,473.473 INFO    ] 2026-06-12 00:10:55
[2026-06-12 00:10:55,503.503 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 00:10:55,687.687 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 00:10:55,690.690 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 00:10:55,819.819 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 00:10:55,874.874 INFO    ] time= 12/06/2026 00:10:55
[2026-06-12 00:10:55,903.903 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 00:10:55,919.919 INFO    ] Checking for existing commands in stream...
[2026-06-12 00:10:56,040.040 INFO    ] No existing commands found in stream
[2026-06-12 00:11:01,063.063 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 00:11:01,067.067 INFO    ] Waiting 2.75 seconds before fallback handling...
[2026-06-12 00:11:04,684.684 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 00:11:04,686.686 INFO    ] Checking for system updates...
[2026-06-12 00:11:04,709.709 INFO    ] 200
[2026-06-12 00:11:04,711.711 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:11:04,750.750 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 00:11:04,753.753 INFO    ] No update needed
[2026-06-12 00:11:04,756.756 INFO    ] Checking for camera pi updates...
[2026-06-12 00:11:04,792.792 INFO    ] 200
[2026-06-12 00:11:04,794.794 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:11:04,836.836 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 00:11:04,896.896 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 00:11:04,898.898 INFO    ] No camera update needed
[2026-06-12 00:11:04,901.901 INFO    ] Script finished. Safe exiting...
[2026-06-12 00:11:04,904.904 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 00:11:04,911.911 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 00:11:04,916.916 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 00:11:06,959.959 INFO    ] ================================================
[2026-06-12 00:11:06,976.976 INFO    ] Launching Daemon at Fri Jun 12 00:11:06 IST 2026
[2026-06-12 00:11:06,988.988 INFO    ] ================================================
[2026-06-12 00:11:07,340.340 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 00:11:07
[2026-06-12 00:11:07,651.651 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 00:11:07,792.792 INFO    ] Initializing speech engine...
[2026-06-12 00:11:07,802.802 INFO    ] 2026-06-12 00:11:07
[2026-06-12 00:11:08,006.006 INFO    ] 2026-06-12 00:11:07
[2026-06-12 00:11:08,034.034 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 00:11:08,156.156 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 00:11:08,218.218 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 00:11:08,355.355 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 00:11:08,421.421 INFO    ] time= 12/06/2026 00:11:08
[2026-06-12 00:11:08,445.445 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 00:11:08,451.451 INFO    ] Checking for existing commands in stream...
[2026-06-12 00:11:08,517.517 INFO    ] No existing commands found in stream
[2026-06-12 00:11:13,531.531 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 00:11:13,534.534 INFO    ] Waiting 0.75 seconds before fallback handling...
[2026-06-12 00:11:14,643.643 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 00:11:14,645.645 INFO    ] Checking for system updates...
[2026-06-12 00:11:14,665.665 INFO    ] 200
[2026-06-12 00:11:14,667.667 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:11:14,701.701 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 00:11:14,702.702 INFO    ] No update needed
[2026-06-12 00:11:14,704.704 INFO    ] Checking for camera pi updates...
[2026-06-12 00:11:14,724.724 INFO    ] 200
[2026-06-12 00:11:14,725.725 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:11:14,750.750 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 00:11:14,795.795 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 00:11:14,796.796 INFO    ] No camera update needed
[2026-06-12 00:11:14,797.797 INFO    ] Script finished. Safe exiting...
[2026-06-12 00:11:14,799.799 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 00:11:14,802.802 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 00:11:14,804.804 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 00:11:16,843.843 INFO    ] ================================================
[2026-06-12 00:11:16,859.859 INFO    ] Launching Daemon at Fri Jun 12 00:11:16 IST 2026
[2026-06-12 00:11:16,871.871 INFO    ] ================================================
[2026-06-12 00:11:17,220.220 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 00:11:17
[2026-06-12 00:11:17,538.538 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 00:11:17,677.677 INFO    ] Initializing speech engine...
[2026-06-12 00:11:17,686.686 INFO    ] 2026-06-12 00:11:17
[2026-06-12 00:11:17,892.892 INFO    ] 2026-06-12 00:11:17
[2026-06-12 00:11:17,922.922 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 00:11:18,104.104 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 00:11:18,114.114 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 00:11:18,244.244 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 00:11:18,310.310 INFO    ] time= 12/06/2026 00:11:18
[2026-06-12 00:11:18,334.334 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 00:11:18,341.341 INFO    ] Checking for existing commands in stream...
[2026-06-12 00:11:18,408.408 INFO    ] No existing commands found in stream
[2026-06-12 00:11:23,417.417 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 00:11:23,420.420 INFO    ] Waiting 1.89 seconds before fallback handling...
[2026-06-12 00:11:25,661.661 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 00:11:25,662.662 INFO    ] Checking for system updates...
[2026-06-12 00:11:25,683.683 INFO    ] 200
[2026-06-12 00:11:25,685.685 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:11:25,715.715 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 00:11:25,716.716 INFO    ] No update needed
[2026-06-12 00:11:25,718.718 INFO    ] Checking for camera pi updates...
[2026-06-12 00:11:25,737.737 INFO    ] 200
[2026-06-12 00:11:25,739.739 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:11:25,765.765 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 00:11:25,813.813 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 00:11:25,815.815 INFO    ] No camera update needed
[2026-06-12 00:11:25,816.816 INFO    ] Script finished. Safe exiting...
[2026-06-12 00:11:25,818.818 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 00:11:25,821.821 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 00:11:25,824.824 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 00:11:27,864.864 INFO    ] ================================================
[2026-06-12 00:11:27,880.880 INFO    ] Launching Daemon at Fri Jun 12 00:11:27 IST 2026
[2026-06-12 00:11:27,892.892 INFO    ] ================================================
[2026-06-12 00:11:28,225.225 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 00:11:28
[2026-06-12 00:11:28,538.538 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 00:11:28,671.671 INFO    ] Initializing speech engine...
[2026-06-12 00:11:28,675.675 INFO    ] 2026-06-12 00:11:28
[2026-06-12 00:11:28,902.902 INFO    ] 2026-06-12 00:11:28
[2026-06-12 00:11:28,933.933 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 00:11:29,065.065 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 00:11:29,107.107 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 00:11:29,272.272 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 00:11:29,330.330 INFO    ] time= 12/06/2026 00:11:29
[2026-06-12 00:11:29,359.359 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 00:11:29,381.381 INFO    ] Checking for existing commands in stream...
[2026-06-12 00:11:29,456.456 INFO    ] No existing commands found in stream
[2026-06-12 00:11:34,467.467 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 00:11:34,470.470 INFO    ] Waiting 2.44 seconds before fallback handling...
[2026-06-12 00:11:37,232.232 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 00:11:37,233.233 INFO    ] Checking for system updates...
[2026-06-12 00:11:37,254.254 INFO    ] 200
[2026-06-12 00:11:37,255.255 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:11:37,285.285 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 00:11:37,287.287 INFO    ] No update needed
[2026-06-12 00:11:37,288.288 INFO    ] Checking for camera pi updates...
[2026-06-12 00:11:37,307.307 INFO    ] 200
[2026-06-12 00:11:37,308.308 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:11:37,332.332 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 00:11:37,378.378 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 00:11:37,380.380 INFO    ] No camera update needed
[2026-06-12 00:11:37,381.381 INFO    ] Script finished. Safe exiting...
[2026-06-12 00:11:37,382.382 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 00:11:37,385.385 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 00:11:37,388.388 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 00:11:39,426.426 INFO    ] ================================================
[2026-06-12 00:11:39,442.442 INFO    ] Launching Daemon at Fri Jun 12 00:11:39 IST 2026
[2026-06-12 00:11:39,453.453 INFO    ] ================================================
[2026-06-12 00:11:39,790.790 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 00:11:39
[2026-06-12 00:11:40,107.107 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 00:11:40,241.241 INFO    ] Initializing speech engine...
[2026-06-12 00:11:40,254.254 INFO    ] 2026-06-12 00:11:40
[2026-06-12 00:11:40,460.460 INFO    ] 2026-06-12 00:11:40
[2026-06-12 00:11:40,489.489 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 00:11:40,675.675 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 00:11:40,679.679 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 00:11:40,810.810 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 00:11:40,867.867 INFO    ] time= 12/06/2026 00:11:40
[2026-06-12 00:11:40,896.896 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 00:11:40,907.907 INFO    ] Checking for existing commands in stream...
[2026-06-12 00:11:40,978.978 INFO    ] No existing commands found in stream
[2026-06-12 00:11:45,992.992 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 00:11:45,995.995 INFO    ] Waiting 2.18 seconds before fallback handling...
[2026-06-12 00:11:48,539.539 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 00:11:48,540.540 INFO    ] Checking for system updates...
[2026-06-12 00:11:48,561.561 INFO    ] 200
[2026-06-12 00:11:48,563.563 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:11:48,596.596 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 00:11:48,597.597 INFO    ] No update needed
[2026-06-12 00:11:48,598.598 INFO    ] Checking for camera pi updates...
[2026-06-12 00:11:48,620.620 INFO    ] 200
[2026-06-12 00:11:48,621.621 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:11:48,646.646 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 00:11:48,687.687 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 00:11:48,688.688 INFO    ] No camera update needed
[2026-06-12 00:11:48,689.689 INFO    ] Script finished. Safe exiting...
[2026-06-12 00:11:48,691.691 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 00:11:48,694.694 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 00:11:48,696.696 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 00:11:50,735.735 INFO    ] ================================================
[2026-06-12 00:11:50,751.751 INFO    ] Launching Daemon at Fri Jun 12 00:11:50 IST 2026
[2026-06-12 00:11:50,763.763 INFO    ] ================================================
[2026-06-12 00:11:51,139.139 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 00:11:51
[2026-06-12 00:11:51,457.457 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 00:11:51,592.592 INFO    ] Initializing speech engine...
[2026-06-12 00:11:51,596.596 INFO    ] 2026-06-12 00:11:51
[2026-06-12 00:11:51,813.813 INFO    ] 2026-06-12 00:11:51
[2026-06-12 00:11:51,841.841 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 00:11:51,992.992 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 00:11:52,032.032 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 00:11:52,179.179 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 00:11:52,210.210 INFO    ] time= 12/06/2026 00:11:52
[2026-06-12 00:11:52,261.261 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 00:11:52,296.296 INFO    ] Checking for existing commands in stream...
[2026-06-12 00:11:52,394.394 INFO    ] No existing commands found in stream
[2026-06-12 00:11:57,404.404 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 00:11:57,407.407 INFO    ] Waiting 1.19 seconds before fallback handling...
[2026-06-12 00:11:58,967.967 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 00:11:58,969.969 INFO    ] Checking for system updates...
[2026-06-12 00:11:58,989.989 INFO    ] 200
[2026-06-12 00:11:58,991.991 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:11:59,021.021 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 00:11:59,023.023 INFO    ] No update needed
[2026-06-12 00:11:59,024.024 INFO    ] Checking for camera pi updates...
[2026-06-12 00:11:59,043.043 INFO    ] 200
[2026-06-12 00:11:59,044.044 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:11:59,067.067 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 00:11:59,110.110 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 00:11:59,111.111 INFO    ] No camera update needed
[2026-06-12 00:11:59,112.112 INFO    ] Script finished. Safe exiting...
[2026-06-12 00:11:59,114.114 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 00:11:59,117.117 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 00:11:59,119.119 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 00:12:01,158.158 INFO    ] ================================================
[2026-06-12 00:12:01,174.174 INFO    ] Launching Daemon at Fri Jun 12 00:12:01 IST 2026
[2026-06-12 00:12:01,186.186 INFO    ] ================================================
[2026-06-12 00:12:01,646.646 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 00:12:01
[2026-06-12 00:12:02,011.011 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 00:12:02,180.180 INFO    ] Initializing speech engine...
[2026-06-12 00:12:02,188.188 INFO    ] 2026-06-12 00:12:02
[2026-06-12 00:12:02,400.400 INFO    ] 2026-06-12 00:12:02
[2026-06-12 00:12:02,443.443 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 00:12:02,597.597 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 00:12:02,656.656 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 00:12:02,795.795 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 00:12:02,863.863 INFO    ] time= 12/06/2026 00:12:02
[2026-06-12 00:12:02,890.890 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 00:12:02,897.897 INFO    ] Checking for existing commands in stream...
[2026-06-12 00:12:02,987.987 INFO    ] No existing commands found in stream
[2026-06-12 00:12:08,007.007 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 00:12:08,010.010 INFO    ] Waiting 2.33 seconds before fallback handling...
[2026-06-12 00:12:10,730.730 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 00:12:10,731.731 INFO    ] Checking for system updates...
[2026-06-12 00:12:10,753.753 INFO    ] 200
[2026-06-12 00:12:10,754.754 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:12:10,784.784 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 00:12:10,786.786 INFO    ] No update needed
[2026-06-12 00:12:10,787.787 INFO    ] Checking for camera pi updates...
[2026-06-12 00:12:10,807.807 INFO    ] 200
[2026-06-12 00:12:10,809.809 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:12:10,832.832 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 00:12:10,900.900 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 00:12:10,902.902 INFO    ] No camera update needed
[2026-06-12 00:12:10,903.903 INFO    ] Script finished. Safe exiting...
[2026-06-12 00:12:10,904.904 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 00:12:10,908.908 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 00:12:10,911.911 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 00:12:12,950.950 INFO    ] ================================================
[2026-06-12 00:12:12,966.966 INFO    ] Launching Daemon at Fri Jun 12 00:12:12 IST 2026
[2026-06-12 00:12:12,978.978 INFO    ] ================================================
[2026-06-12 00:12:13,334.334 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 00:12:13
[2026-06-12 00:12:13,684.684 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 00:12:13,843.843 INFO    ] Initializing speech engine...
[2026-06-12 00:12:13,849.849 INFO    ] 2026-06-12 00:12:13
[2026-06-12 00:12:14,059.059 INFO    ] 2026-06-12 00:12:14
[2026-06-12 00:12:14,087.087 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 00:12:14,207.207 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 00:12:14,246.246 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 00:12:14,486.486 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 00:12:14,497.497 INFO    ] time= 12/06/2026 00:12:14
[2026-06-12 00:12:14,502.502 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 00:12:14,504.504 INFO    ] Checking for existing commands in stream...
[2026-06-12 00:12:14,570.570 INFO    ] No existing commands found in stream
[2026-06-12 00:12:19,579.579 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 00:12:19,582.582 INFO    ] Waiting 1.69 seconds before fallback handling...
[2026-06-12 00:12:21,605.605 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 00:12:21,606.606 INFO    ] Checking for system updates...
[2026-06-12 00:12:21,638.638 INFO    ] 200
[2026-06-12 00:12:21,640.640 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:12:21,673.673 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 00:12:21,674.674 INFO    ] No update needed
[2026-06-12 00:12:21,675.675 INFO    ] Checking for camera pi updates...
[2026-06-12 00:12:21,695.695 INFO    ] 200
[2026-06-12 00:12:21,696.696 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:12:21,723.723 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 00:12:21,777.777 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 00:12:21,778.778 INFO    ] No camera update needed
[2026-06-12 00:12:21,780.780 INFO    ] Script finished. Safe exiting...
[2026-06-12 00:12:21,781.781 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 00:12:21,784.784 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 00:12:21,787.787 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 00:12:23,827.827 INFO    ] ================================================
[2026-06-12 00:12:23,843.843 INFO    ] Launching Daemon at Fri Jun 12 00:12:23 IST 2026
[2026-06-12 00:12:23,854.854 INFO    ] ================================================
[2026-06-12 00:12:24,188.188 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 00:12:24
[2026-06-12 00:12:24,499.499 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 00:12:24,632.632 INFO    ] Initializing speech engine...
[2026-06-12 00:12:24,636.636 INFO    ] 2026-06-12 00:12:24
[2026-06-12 00:12:24,866.866 INFO    ] 2026-06-12 00:12:24
[2026-06-12 00:12:24,896.896 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 00:12:25,030.030 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 00:12:25,078.078 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 00:12:25,228.228 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 00:12:25,285.285 INFO    ] time= 12/06/2026 00:12:25
[2026-06-12 00:12:25,312.312 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 00:12:25,328.328 INFO    ] Checking for existing commands in stream...
[2026-06-12 00:12:25,399.399 INFO    ] No existing commands found in stream
[2026-06-12 00:12:30,408.408 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 00:12:30,411.411 INFO    ] Waiting 0.79 seconds before fallback handling...
[2026-06-12 00:12:31,581.581 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 00:12:31,583.583 INFO    ] Checking for system updates...
[2026-06-12 00:12:31,608.608 INFO    ] 200
[2026-06-12 00:12:31,609.609 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:12:31,644.644 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 00:12:31,645.645 INFO    ] No update needed
[2026-06-12 00:12:31,647.647 INFO    ] Checking for camera pi updates...
[2026-06-12 00:12:31,669.669 INFO    ] 200
[2026-06-12 00:12:31,671.671 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:12:31,702.702 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 00:12:31,747.747 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 00:12:31,748.748 INFO    ] No camera update needed
[2026-06-12 00:12:31,750.750 INFO    ] Script finished. Safe exiting...
[2026-06-12 00:12:31,752.752 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 00:12:31,755.755 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 00:12:31,758.758 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 00:12:33,805.805 INFO    ] ================================================
[2026-06-12 00:12:33,822.822 INFO    ] Launching Daemon at Fri Jun 12 00:12:33 IST 2026
[2026-06-12 00:12:33,834.834 INFO    ] ================================================
[2026-06-12 00:12:34,208.208 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 00:12:34
[2026-06-12 00:12:34,550.550 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 00:12:34,694.694 INFO    ] Initializing speech engine...
[2026-06-12 00:12:34,702.702 INFO    ] 2026-06-12 00:12:34
[2026-06-12 00:12:34,910.910 INFO    ] 2026-06-12 00:12:34
[2026-06-12 00:12:34,939.939 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 00:12:35,061.061 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 00:12:35,124.124 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 00:12:35,262.262 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 00:12:35,326.326 INFO    ] time= 12/06/2026 00:12:35
[2026-06-12 00:12:35,352.352 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 00:12:35,359.359 INFO    ] Checking for existing commands in stream...
[2026-06-12 00:12:35,424.424 INFO    ] No existing commands found in stream
[2026-06-12 00:12:40,434.434 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 00:12:40,437.437 INFO    ] Waiting 0.12 seconds before fallback handling...
[2026-06-12 00:12:40,922.922 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 00:12:40,923.923 INFO    ] Checking for system updates...
[2026-06-12 00:12:40,944.944 INFO    ] 200
[2026-06-12 00:12:40,945.945 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:12:40,978.978 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 00:12:40,980.980 INFO    ] No update needed
[2026-06-12 00:12:40,981.981 INFO    ] Checking for camera pi updates...
[2026-06-12 00:12:41,000.000 INFO    ] 200
[2026-06-12 00:12:41,002.002 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:12:41,027.027 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 00:12:41,079.079 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 00:12:41,081.081 INFO    ] No camera update needed
[2026-06-12 00:12:41,082.082 INFO    ] Script finished. Safe exiting...
[2026-06-12 00:12:41,083.083 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 00:12:41,086.086 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 00:12:41,089.089 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 00:12:43,127.127 INFO    ] ================================================
[2026-06-12 00:12:43,147.147 INFO    ] Launching Daemon at Fri Jun 12 00:12:43 IST 2026
[2026-06-12 00:12:43,159.159 INFO    ] ================================================
[2026-06-12 00:12:43,491.491 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 00:12:43
[2026-06-12 00:12:43,804.804 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 00:12:43,940.940 INFO    ] Initializing speech engine...
[2026-06-12 00:12:43,944.944 INFO    ] 2026-06-12 00:12:43
[2026-06-12 00:12:44,145.145 INFO    ] 2026-06-12 00:12:44
[2026-06-12 00:12:44,178.178 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 00:12:44,301.301 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 00:12:44,304.304 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 00:12:44,415.415 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 00:12:44,426.426 INFO    ] time= 12/06/2026 00:12:44
[2026-06-12 00:12:44,440.440 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 00:12:44,446.446 INFO    ] Checking for existing commands in stream...
[2026-06-12 00:12:44,523.523 INFO    ] No existing commands found in stream
[2026-06-12 00:12:49,557.557 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 00:12:49,560.560 INFO    ] Waiting 2.48 seconds before fallback handling...
[2026-06-12 00:12:52,413.413 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 00:12:52,414.414 INFO    ] Checking for system updates...
[2026-06-12 00:12:52,437.437 INFO    ] 200
[2026-06-12 00:12:52,438.438 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:12:52,471.471 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 00:12:52,472.472 INFO    ] No update needed
[2026-06-12 00:12:52,473.473 INFO    ] Checking for camera pi updates...
[2026-06-12 00:12:52,494.494 INFO    ] 200
[2026-06-12 00:12:52,495.495 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:12:52,518.518 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 00:12:52,562.562 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 00:12:52,563.563 INFO    ] No camera update needed
[2026-06-12 00:12:52,564.564 INFO    ] Script finished. Safe exiting...
[2026-06-12 00:12:52,566.566 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 00:12:52,569.569 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 00:12:52,571.571 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 00:12:54,610.610 INFO    ] ================================================
[2026-06-12 00:12:54,626.626 INFO    ] Launching Daemon at Fri Jun 12 00:12:54 IST 2026
[2026-06-12 00:12:54,637.637 INFO    ] ================================================
[2026-06-12 00:12:54,971.971 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 00:12:54
[2026-06-12 00:12:55,284.284 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 00:12:55,427.427 INFO    ] Initializing speech engine...
[2026-06-12 00:12:55,432.432 INFO    ] 2026-06-12 00:12:55
[2026-06-12 00:12:55,635.635 INFO    ] 2026-06-12 00:12:55
[2026-06-12 00:12:55,664.664 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 00:12:55,785.785 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 00:12:55,847.847 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 00:12:55,982.982 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 00:12:56,044.044 INFO    ] time= 12/06/2026 00:12:55
[2026-06-12 00:12:56,076.076 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 00:12:56,082.082 INFO    ] Checking for existing commands in stream...
[2026-06-12 00:12:56,172.172 INFO    ] No existing commands found in stream
[2026-06-12 00:13:01,186.186 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 00:13:01,189.189 INFO    ] Waiting 3.62 seconds before fallback handling...
[2026-06-12 00:13:05,150.150 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 00:13:05,151.151 INFO    ] Checking for system updates...
[2026-06-12 00:13:05,172.172 INFO    ] 200
[2026-06-12 00:13:05,173.173 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:13:05,203.203 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 00:13:05,205.205 INFO    ] No update needed
[2026-06-12 00:13:05,206.206 INFO    ] Checking for camera pi updates...
[2026-06-12 00:13:05,225.225 INFO    ] 200
[2026-06-12 00:13:05,226.226 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:13:05,252.252 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 00:13:05,297.297 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 00:13:05,298.298 INFO    ] No camera update needed
[2026-06-12 00:13:05,299.299 INFO    ] Script finished. Safe exiting...
[2026-06-12 00:13:05,301.301 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 00:13:05,303.303 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 00:13:05,306.306 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 00:13:07,346.346 INFO    ] ================================================
[2026-06-12 00:13:07,362.362 INFO    ] Launching Daemon at Fri Jun 12 00:13:07 IST 2026
[2026-06-12 00:13:07,373.373 INFO    ] ================================================
[2026-06-12 00:13:07,729.729 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 00:13:07
[2026-06-12 00:13:08,043.043 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 00:13:08,177.177 INFO    ] Initializing speech engine...
[2026-06-12 00:13:08,182.182 INFO    ] 2026-06-12 00:13:08
[2026-06-12 00:13:08,385.385 INFO    ] 2026-06-12 00:13:08
[2026-06-12 00:13:08,420.420 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 00:13:08,578.578 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 00:13:08,617.617 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 00:13:08,781.781 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 00:13:08,804.804 INFO    ] time= 12/06/2026 00:13:08
[2026-06-12 00:13:08,877.877 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 00:13:08,904.904 INFO    ] Checking for existing commands in stream...
[2026-06-12 00:13:09,009.009 INFO    ] No existing commands found in stream
[2026-06-12 00:13:14,018.018 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 00:13:14,021.021 INFO    ] Waiting 1.04 seconds before fallback handling...
[2026-06-12 00:13:16,451.451 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 00:13:16,452.452 INFO    ] Checking for system updates...
[2026-06-12 00:13:16,473.473 INFO    ] 200
[2026-06-12 00:13:16,475.475 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:13:16,506.506 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 00:13:16,507.507 INFO    ] No update needed
[2026-06-12 00:13:16,508.508 INFO    ] Checking for camera pi updates...
[2026-06-12 00:13:16,528.528 INFO    ] 200
[2026-06-12 00:13:16,529.529 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:13:16,553.553 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 00:13:16,602.602 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 00:13:16,603.603 INFO    ] No camera update needed
[2026-06-12 00:13:16,604.604 INFO    ] Script finished. Safe exiting...
[2026-06-12 00:13:16,606.606 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 00:13:16,608.608 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 00:13:16,611.611 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 00:13:18,651.651 INFO    ] ================================================
[2026-06-12 00:13:18,667.667 INFO    ] Launching Daemon at Fri Jun 12 00:13:18 IST 2026
[2026-06-12 00:13:18,677.677 INFO    ] ================================================
[2026-06-12 00:13:19,021.021 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 00:13:19
[2026-06-12 00:13:19,341.341 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 00:13:19,486.486 INFO    ] Initializing speech engine...
[2026-06-12 00:13:19,492.492 INFO    ] 2026-06-12 00:13:19
[2026-06-12 00:13:19,696.696 INFO    ] 2026-06-12 00:13:19
[2026-06-12 00:13:19,724.724 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 00:13:19,848.848 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 00:13:19,910.910 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 00:13:20,042.042 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 00:13:20,098.098 INFO    ] time= 12/06/2026 00:13:20
[2026-06-12 00:13:20,141.141 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 00:13:20,143.143 INFO    ] Checking for existing commands in stream...
[2026-06-12 00:13:20,215.215 INFO    ] No existing commands found in stream
[2026-06-12 00:13:25,224.224 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 00:13:25,227.227 INFO    ] Waiting 1.13 seconds before fallback handling...
[2026-06-12 00:13:26,743.743 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 00:13:26,745.745 INFO    ] Checking for system updates...
[2026-06-12 00:13:26,767.767 INFO    ] 200
[2026-06-12 00:13:26,768.768 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:13:26,803.803 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 00:13:26,804.804 INFO    ] No update needed
[2026-06-12 00:13:26,806.806 INFO    ] Checking for camera pi updates...
[2026-06-12 00:13:26,826.826 INFO    ] 200
[2026-06-12 00:13:26,827.827 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:13:26,851.851 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 00:13:26,898.898 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 00:13:26,900.900 INFO    ] No camera update needed
[2026-06-12 00:13:26,901.901 INFO    ] Script finished. Safe exiting...
[2026-06-12 00:13:26,903.903 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 00:13:26,906.906 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 00:13:26,909.909 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 00:13:28,947.947 INFO    ] ================================================
[2026-06-12 00:13:28,963.963 INFO    ] Launching Daemon at Fri Jun 12 00:13:28 IST 2026
[2026-06-12 00:13:28,974.974 INFO    ] ================================================
[2026-06-12 00:13:29,364.364 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 00:13:29
[2026-06-12 00:13:29,702.702 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 00:13:29,843.843 INFO    ] Initializing speech engine...
[2026-06-12 00:13:29,849.849 INFO    ] 2026-06-12 00:13:29
[2026-06-12 00:13:30,053.053 INFO    ] 2026-06-12 00:13:30
[2026-06-12 00:13:30,080.080 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 00:13:30,202.202 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 00:13:30,264.264 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 00:13:30,397.397 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 00:13:30,450.450 INFO    ] time= 12/06/2026 00:13:30
[2026-06-12 00:13:30,491.491 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 00:13:30,493.493 INFO    ] Checking for existing commands in stream...
[2026-06-12 00:13:30,587.587 INFO    ] No existing commands found in stream
[2026-06-12 00:13:35,602.602 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 00:13:35,604.604 INFO    ] Waiting 0.88 seconds before fallback handling...
[2026-06-12 00:13:36,812.812 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 00:13:36,813.813 INFO    ] Checking for system updates...
[2026-06-12 00:13:36,834.834 INFO    ] 200
[2026-06-12 00:13:36,835.835 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:13:36,866.866 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 00:13:36,867.867 INFO    ] No update needed
[2026-06-12 00:13:36,869.869 INFO    ] Checking for camera pi updates...
[2026-06-12 00:13:36,889.889 INFO    ] 200
[2026-06-12 00:13:36,890.890 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:13:36,913.913 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 00:13:37,061.061 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 00:13:37,062.062 INFO    ] No camera update needed
[2026-06-12 00:13:37,063.063 INFO    ] Script finished. Safe exiting...
[2026-06-12 00:13:37,065.065 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 00:13:37,067.067 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 00:13:37,070.070 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 00:13:39,109.109 INFO    ] ================================================
[2026-06-12 00:13:39,124.124 INFO    ] Launching Daemon at Fri Jun 12 00:13:39 IST 2026
[2026-06-12 00:13:39,135.135 INFO    ] ================================================
[2026-06-12 00:13:39,469.469 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 00:13:39
[2026-06-12 00:13:39,785.785 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 00:13:39,928.928 INFO    ] Initializing speech engine...
[2026-06-12 00:13:39,933.933 INFO    ] 2026-06-12 00:13:39
[2026-06-12 00:13:40,135.135 INFO    ] 2026-06-12 00:13:40
[2026-06-12 00:13:40,165.165 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 00:13:40,346.346 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 00:13:40,349.349 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 00:13:40,500.500 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 00:13:40,552.552 INFO    ] time= 12/06/2026 00:13:40
[2026-06-12 00:13:40,575.575 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 00:13:40,581.581 INFO    ] Checking for existing commands in stream...
[2026-06-12 00:13:40,648.648 INFO    ] No existing commands found in stream
[2026-06-12 00:13:45,662.662 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 00:13:45,665.665 INFO    ] Waiting 3.74 seconds before fallback handling...
[2026-06-12 00:13:49,771.771 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 00:13:49,772.772 INFO    ] Checking for system updates...
[2026-06-12 00:13:49,793.793 INFO    ] 200
[2026-06-12 00:13:49,794.794 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:13:49,825.825 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 00:13:49,826.826 INFO    ] No update needed
[2026-06-12 00:13:49,827.827 INFO    ] Checking for camera pi updates...
[2026-06-12 00:13:49,847.847 INFO    ] 200
[2026-06-12 00:13:49,848.848 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:13:49,873.873 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 00:13:49,898.898 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 00:13:49,899.899 INFO    ] No camera update needed
[2026-06-12 00:13:49,901.901 INFO    ] Script finished. Safe exiting...
[2026-06-12 00:13:49,902.902 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 00:13:49,905.905 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 00:13:49,908.908 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 00:13:51,947.947 INFO    ] ================================================
[2026-06-12 00:13:51,962.962 INFO    ] Launching Daemon at Fri Jun 12 00:13:51 IST 2026
[2026-06-12 00:13:51,973.973 INFO    ] ================================================
[2026-06-12 00:13:52,305.305 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 00:13:52
[2026-06-12 00:13:52,616.616 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 00:13:52,747.747 INFO    ] Initializing speech engine...
[2026-06-12 00:13:52,755.755 INFO    ] 2026-06-12 00:13:52
[2026-06-12 00:13:52,970.970 INFO    ] 2026-06-12 00:13:52
[2026-06-12 00:13:52,998.998 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 00:13:53,184.184 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 00:13:53,188.188 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 00:13:53,322.322 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 00:13:53,384.384 INFO    ] time= 12/06/2026 00:13:53
[2026-06-12 00:13:53,418.418 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 00:13:53,420.420 INFO    ] Checking for existing commands in stream...
[2026-06-12 00:13:53,492.492 INFO    ] No existing commands found in stream
[2026-06-12 00:13:58,501.501 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 00:13:58,504.504 INFO    ] Waiting 1.83 seconds before fallback handling...
[2026-06-12 00:14:00,672.672 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 00:14:00,674.674 INFO    ] Checking for system updates...
[2026-06-12 00:14:00,695.695 INFO    ] 200
[2026-06-12 00:14:00,696.696 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:14:00,727.727 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 00:14:00,729.729 INFO    ] No update needed
[2026-06-12 00:14:00,730.730 INFO    ] Checking for camera pi updates...
[2026-06-12 00:14:00,750.750 INFO    ] 200
[2026-06-12 00:14:00,751.751 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:14:00,775.775 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 00:14:00,806.806 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 00:14:00,808.808 INFO    ] No camera update needed
[2026-06-12 00:14:00,809.809 INFO    ] Script finished. Safe exiting...
[2026-06-12 00:14:00,811.811 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 00:14:00,814.814 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 00:14:00,817.817 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 00:14:02,862.862 INFO    ] ================================================
[2026-06-12 00:14:02,871.871 INFO    ] Launching Daemon at Fri Jun 12 00:14:02 IST 2026
[2026-06-12 00:14:02,876.876 INFO    ] ================================================
[2026-06-12 00:14:03,208.208 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 00:14:03
[2026-06-12 00:14:03,548.548 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 00:14:03,698.698 INFO    ] Initializing speech engine...
[2026-06-12 00:14:03,704.704 INFO    ] 2026-06-12 00:14:03
[2026-06-12 00:14:03,908.908 INFO    ] 2026-06-12 00:14:03
[2026-06-12 00:14:03,936.936 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 00:14:04,118.118 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 00:14:04,128.128 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 00:14:04,314.314 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 00:14:04,345.345 INFO    ] time= 12/06/2026 00:14:04
[2026-06-12 00:14:04,347.347 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 00:14:04,353.353 INFO    ] Checking for existing commands in stream...
[2026-06-12 00:14:04,420.420 INFO    ] No existing commands found in stream
[2026-06-12 00:14:09,429.429 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 00:14:09,432.432 INFO    ] Waiting 0.90 seconds before fallback handling...
[2026-06-12 00:14:10,662.662 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 00:14:10,663.663 INFO    ] Checking for system updates...
[2026-06-12 00:14:10,684.684 INFO    ] 200
[2026-06-12 00:14:10,685.685 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:14:10,718.718 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 00:14:10,719.719 INFO    ] No update needed
[2026-06-12 00:14:10,721.721 INFO    ] Checking for camera pi updates...
[2026-06-12 00:14:10,740.740 INFO    ] 200
[2026-06-12 00:14:10,741.741 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:14:10,766.766 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 00:14:10,803.803 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 00:14:10,804.804 INFO    ] No camera update needed
[2026-06-12 00:14:10,805.805 INFO    ] Script finished. Safe exiting...
[2026-06-12 00:14:10,806.806 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 00:14:10,809.809 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 00:14:10,812.812 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 00:14:12,850.850 INFO    ] ================================================
[2026-06-12 00:14:12,865.865 INFO    ] Launching Daemon at Fri Jun 12 00:14:12 IST 2026
[2026-06-12 00:14:12,875.875 INFO    ] ================================================
[2026-06-12 00:14:13,218.218 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 00:14:13
[2026-06-12 00:14:13,534.534 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 00:14:13,665.665 INFO    ] Initializing speech engine...
[2026-06-12 00:14:13,668.668 INFO    ] 2026-06-12 00:14:13
[2026-06-12 00:14:13,884.884 INFO    ] 2026-06-12 00:14:13
[2026-06-12 00:14:13,913.913 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 00:14:14,096.096 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 00:14:14,099.099 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 00:14:14,255.255 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 00:14:14,304.304 INFO    ] time= 12/06/2026 00:14:14
[2026-06-12 00:14:14,325.325 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 00:14:14,331.331 INFO    ] Checking for existing commands in stream...
[2026-06-12 00:14:14,398.398 INFO    ] No existing commands found in stream
[2026-06-12 00:14:19,407.407 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 00:14:19,410.410 INFO    ] Waiting 3.21 seconds before fallback handling...
[2026-06-12 00:14:22,974.974 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 00:14:22,975.975 INFO    ] Checking for system updates...
[2026-06-12 00:14:22,997.997 INFO    ] 200
[2026-06-12 00:14:22,998.998 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:14:23,029.029 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 00:14:23,031.031 INFO    ] No update needed
[2026-06-12 00:14:23,032.032 INFO    ] Checking for camera pi updates...
[2026-06-12 00:14:23,053.053 INFO    ] 200
[2026-06-12 00:14:23,054.054 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:14:23,077.077 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 00:14:23,121.121 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 00:14:23,122.122 INFO    ] No camera update needed
[2026-06-12 00:14:23,123.123 INFO    ] Script finished. Safe exiting...
[2026-06-12 00:14:23,124.124 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 00:14:23,127.127 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 00:14:23,130.130 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 00:14:25,168.168 INFO    ] ================================================
[2026-06-12 00:14:25,184.184 INFO    ] Launching Daemon at Fri Jun 12 00:14:25 IST 2026
[2026-06-12 00:14:25,195.195 INFO    ] ================================================
[2026-06-12 00:14:25,525.525 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 00:14:25
[2026-06-12 00:14:25,841.841 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 00:14:25,984.984 INFO    ] Initializing speech engine...
[2026-06-12 00:14:25,988.988 INFO    ] 2026-06-12 00:14:25
[2026-06-12 00:14:26,193.193 INFO    ] 2026-06-12 00:14:26
[2026-06-12 00:14:26,222.222 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 00:14:26,364.364 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 00:14:26,407.407 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 00:14:26,537.537 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 00:14:26,597.597 INFO    ] time= 12/06/2026 00:14:26
[2026-06-12 00:14:26,632.632 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 00:14:26,637.637 INFO    ] Checking for existing commands in stream...
[2026-06-12 00:14:26,708.708 INFO    ] No existing commands found in stream
[2026-06-12 00:14:31,717.717 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 00:14:31,720.720 INFO    ] Waiting 1.38 seconds before fallback handling...
[2026-06-12 00:14:33,379.379 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 00:14:33,381.381 INFO    ] Checking for system updates...
[2026-06-12 00:14:33,401.401 INFO    ] 200
[2026-06-12 00:14:33,403.403 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:14:33,434.434 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 00:14:33,435.435 INFO    ] No update needed
[2026-06-12 00:14:33,436.436 INFO    ] Checking for camera pi updates...
[2026-06-12 00:14:33,456.456 INFO    ] 200
[2026-06-12 00:14:33,457.457 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:14:33,480.480 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 00:14:33,526.526 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 00:14:33,529.529 INFO    ] No camera update needed
[2026-06-12 00:14:33,531.531 INFO    ] Script finished. Safe exiting...
[2026-06-12 00:14:33,533.533 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 00:14:33,539.539 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 00:14:33,544.544 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 00:14:35,584.584 INFO    ] ================================================
[2026-06-12 00:14:35,599.599 INFO    ] Launching Daemon at Fri Jun 12 00:14:35 IST 2026
[2026-06-12 00:14:35,610.610 INFO    ] ================================================
[2026-06-12 00:14:35,963.963 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 00:14:35
[2026-06-12 00:14:36,301.301 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 00:14:36,454.454 INFO    ] Initializing speech engine...
[2026-06-12 00:14:36,459.459 INFO    ] 2026-06-12 00:14:36
[2026-06-12 00:14:36,670.670 INFO    ] 2026-06-12 00:14:36
[2026-06-12 00:14:36,700.700 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 00:14:36,886.886 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 00:14:36,896.896 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 00:14:37,030.030 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 00:14:37,097.097 INFO    ] time= 12/06/2026 00:14:37
[2026-06-12 00:14:37,122.122 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 00:14:37,129.129 INFO    ] Checking for existing commands in stream...
[2026-06-12 00:14:37,221.221 INFO    ] No existing commands found in stream
[2026-06-12 00:14:42,245.245 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 00:14:42,248.248 INFO    ] Waiting 3.01 seconds before fallback handling...
[2026-06-12 00:14:45,638.638 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 00:14:45,640.640 INFO    ] Checking for system updates...
[2026-06-12 00:14:45,661.661 INFO    ] 200
[2026-06-12 00:14:45,662.662 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:14:45,694.694 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 00:14:45,695.695 INFO    ] No update needed
[2026-06-12 00:14:45,696.696 INFO    ] Checking for camera pi updates...
[2026-06-12 00:14:45,716.716 INFO    ] 200
[2026-06-12 00:14:45,717.717 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:14:45,740.740 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 00:14:45,765.765 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 00:14:45,766.766 INFO    ] No camera update needed
[2026-06-12 00:14:45,767.767 INFO    ] Script finished. Safe exiting...
[2026-06-12 00:14:45,769.769 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 00:14:45,772.772 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 00:14:45,775.775 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 00:14:47,812.812 INFO    ] ================================================
[2026-06-12 00:14:47,827.827 INFO    ] Launching Daemon at Fri Jun 12 00:14:47 IST 2026
[2026-06-12 00:14:47,839.839 INFO    ] ================================================
[2026-06-12 00:14:48,178.178 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 00:14:48
[2026-06-12 00:14:48,490.490 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 00:14:48,633.633 INFO    ] Initializing speech engine...
[2026-06-12 00:14:48,638.638 INFO    ] 2026-06-12 00:14:48
[2026-06-12 00:14:48,842.842 INFO    ] 2026-06-12 00:14:48
[2026-06-12 00:14:48,871.871 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 00:14:48,995.995 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 00:14:49,058.058 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 00:14:49,198.198 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 00:14:49,265.265 INFO    ] time= 12/06/2026 00:14:49
[2026-06-12 00:14:49,290.290 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 00:14:49,296.296 INFO    ] Checking for existing commands in stream...
[2026-06-12 00:14:49,363.363 INFO    ] No existing commands found in stream
[2026-06-12 00:14:54,372.372 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 00:14:54,375.375 INFO    ] Waiting 0.65 seconds before fallback handling...
[2026-06-12 00:14:55,357.357 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 00:14:55,359.359 INFO    ] Checking for system updates...
[2026-06-12 00:14:55,379.379 INFO    ] 200
[2026-06-12 00:14:55,381.381 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:14:55,414.414 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 00:14:55,415.415 INFO    ] No update needed
[2026-06-12 00:14:55,416.416 INFO    ] Checking for camera pi updates...
[2026-06-12 00:14:55,437.437 INFO    ] 200
[2026-06-12 00:14:55,438.438 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:14:55,463.463 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 00:14:55,514.514 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 00:14:55,515.515 INFO    ] No camera update needed
[2026-06-12 00:14:55,516.516 INFO    ] Script finished. Safe exiting...
[2026-06-12 00:14:55,517.517 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 00:14:55,520.520 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 00:14:55,523.523 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 00:14:57,562.562 INFO    ] ================================================
[2026-06-12 00:14:57,578.578 INFO    ] Launching Daemon at Fri Jun 12 00:14:57 IST 2026
[2026-06-12 00:14:57,589.589 INFO    ] ================================================
[2026-06-12 00:14:57,932.932 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 00:14:57
[2026-06-12 00:14:58,271.271 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 00:14:58,422.422 INFO    ] Initializing speech engine...
[2026-06-12 00:14:58,428.428 INFO    ] 2026-06-12 00:14:58
[2026-06-12 00:14:58,637.637 INFO    ] 2026-06-12 00:14:58
[2026-06-12 00:14:58,665.665 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 00:14:58,849.849 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 00:14:58,859.859 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 00:14:59,052.052 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 00:14:59,077.077 INFO    ] time= 12/06/2026 00:14:59
[2026-06-12 00:14:59,083.083 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 00:14:59,085.085 INFO    ] Checking for existing commands in stream...
[2026-06-12 00:14:59,152.152 INFO    ] No existing commands found in stream
[2026-06-12 00:15:04,165.165 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 00:15:04,167.167 INFO    ] Waiting 2.06 seconds before fallback handling...
[2026-06-12 00:15:06,578.578 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 00:15:06,580.580 INFO    ] Checking for system updates...
[2026-06-12 00:15:06,601.601 INFO    ] 200
[2026-06-12 00:15:06,603.603 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:15:06,636.636 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 00:15:06,637.637 INFO    ] No update needed
[2026-06-12 00:15:06,639.639 INFO    ] Checking for camera pi updates...
[2026-06-12 00:15:06,663.663 INFO    ] 200
[2026-06-12 00:15:06,665.665 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:15:06,691.691 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 00:15:06,738.738 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 00:15:06,739.739 INFO    ] No camera update needed
[2026-06-12 00:15:06,741.741 INFO    ] Script finished. Safe exiting...
[2026-06-12 00:15:06,742.742 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 00:15:06,746.746 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 00:15:06,749.749 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 00:15:08,792.792 INFO    ] ================================================
[2026-06-12 00:15:08,808.808 INFO    ] Launching Daemon at Fri Jun 12 00:15:08 IST 2026
[2026-06-12 00:15:08,819.819 INFO    ] ================================================
[2026-06-12 00:15:09,187.187 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 00:15:09
[2026-06-12 00:15:09,526.526 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 00:15:09,679.679 INFO    ] Initializing speech engine...
[2026-06-12 00:15:09,684.684 INFO    ] 2026-06-12 00:15:09
[2026-06-12 00:15:09,891.891 INFO    ] 2026-06-12 00:15:09
[2026-06-12 00:15:09,920.920 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 00:15:10,057.057 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 00:15:10,105.105 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 00:15:10,248.248 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 00:15:10,307.307 INFO    ] time= 12/06/2026 00:15:10
[2026-06-12 00:15:10,334.334 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 00:15:10,336.336 INFO    ] Checking for existing commands in stream...
[2026-06-12 00:15:10,407.407 INFO    ] No existing commands found in stream
[2026-06-12 00:15:15,412.412 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 00:15:15,415.415 INFO    ] Waiting 0.92 seconds before fallback handling...
[2026-06-12 00:15:16,719.719 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 00:15:16,721.721 INFO    ] Checking for system updates...
[2026-06-12 00:15:16,742.742 INFO    ] 200
[2026-06-12 00:15:16,744.744 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:15:16,777.777 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 00:15:16,778.778 INFO    ] No update needed
[2026-06-12 00:15:16,780.780 INFO    ] Checking for camera pi updates...
[2026-06-12 00:15:16,800.800 INFO    ] 200
[2026-06-12 00:15:16,802.802 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:15:16,827.827 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 00:15:16,877.877 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 00:15:16,878.878 INFO    ] No camera update needed
[2026-06-12 00:15:16,880.880 INFO    ] Script finished. Safe exiting...
[2026-06-12 00:15:16,881.881 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 00:15:16,884.884 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 00:15:16,887.887 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 00:15:18,927.927 INFO    ] ================================================
[2026-06-12 00:15:18,943.943 INFO    ] Launching Daemon at Fri Jun 12 00:15:18 IST 2026
[2026-06-12 00:15:18,954.954 INFO    ] ================================================
[2026-06-12 00:15:19,283.283 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 00:15:19
[2026-06-12 00:15:19,594.594 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 00:15:19,729.729 INFO    ] Initializing speech engine...
[2026-06-12 00:15:19,744.744 INFO    ] 2026-06-12 00:15:19
[2026-06-12 00:15:19,962.962 INFO    ] 2026-06-12 00:15:19
[2026-06-12 00:15:19,993.993 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 00:15:20,126.126 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 00:15:20,189.189 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 00:15:20,335.335 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 00:15:20,383.383 INFO    ] time= 12/06/2026 00:15:20
[2026-06-12 00:15:20,442.442 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 00:15:20,444.444 INFO    ] Checking for existing commands in stream...
[2026-06-12 00:15:20,520.520 INFO    ] No existing commands found in stream
[2026-06-12 00:15:25,530.530 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 00:15:25,533.533 INFO    ] Waiting 0.64 seconds before fallback handling...
[2026-06-12 00:15:26,528.528 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 00:15:26,529.529 INFO    ] Checking for system updates...
[2026-06-12 00:15:26,551.551 INFO    ] 200
[2026-06-12 00:15:26,553.553 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:15:26,583.583 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 00:15:26,584.584 INFO    ] No update needed
[2026-06-12 00:15:26,586.586 INFO    ] Checking for camera pi updates...
[2026-06-12 00:15:26,605.605 INFO    ] 200
[2026-06-12 00:15:26,606.606 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:15:26,630.630 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 00:15:26,671.671 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 00:15:26,672.672 INFO    ] No camera update needed
[2026-06-12 00:15:26,674.674 INFO    ] Script finished. Safe exiting...
[2026-06-12 00:15:26,675.675 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 00:15:26,678.678 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 00:15:26,680.680 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 00:15:28,719.719 INFO    ] ================================================
[2026-06-12 00:15:28,734.734 INFO    ] Launching Daemon at Fri Jun 12 00:15:28 IST 2026
[2026-06-12 00:15:28,746.746 INFO    ] ================================================
[2026-06-12 00:15:29,107.107 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 00:15:29
[2026-06-12 00:15:29,421.421 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 00:15:29,552.552 INFO    ] Initializing speech engine...
[2026-06-12 00:15:29,555.555 INFO    ] 2026-06-12 00:15:29
[2026-06-12 00:15:29,748.748 INFO    ] 2026-06-12 00:15:29
[2026-06-12 00:15:29,794.794 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 00:15:29,954.954 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 00:15:29,993.993 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 00:15:30,130.130 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 00:15:30,170.170 INFO    ] time= 12/06/2026 00:15:30
[2026-06-12 00:15:30,211.211 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 00:15:30,256.256 INFO    ] Checking for existing commands in stream...
[2026-06-12 00:15:30,408.408 INFO    ] No existing commands found in stream
[2026-06-12 00:15:35,418.418 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 00:15:35,421.421 INFO    ] Waiting 3.09 seconds before fallback handling...
[2026-06-12 00:15:38,858.858 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 00:15:38,859.859 INFO    ] Checking for system updates...
[2026-06-12 00:15:38,880.880 INFO    ] 200
[2026-06-12 00:15:38,881.881 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:15:38,912.912 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 00:15:38,913.913 INFO    ] No update needed
[2026-06-12 00:15:38,914.914 INFO    ] Checking for camera pi updates...
[2026-06-12 00:15:38,935.935 INFO    ] 200
[2026-06-12 00:15:38,937.937 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:15:38,962.962 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 00:15:39,115.115 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 00:15:39,116.116 INFO    ] No camera update needed
[2026-06-12 00:15:39,117.117 INFO    ] Script finished. Safe exiting...
[2026-06-12 00:15:39,118.118 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 00:15:39,122.122 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 00:15:39,124.124 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 00:15:41,165.165 INFO    ] ================================================
[2026-06-12 00:15:41,181.181 INFO    ] Launching Daemon at Fri Jun 12 00:15:41 IST 2026
[2026-06-12 00:15:41,192.192 INFO    ] ================================================
[2026-06-12 00:15:41,547.547 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 00:15:41
[2026-06-12 00:15:41,862.862 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 00:15:41,994.994 INFO    ] Initializing speech engine...
[2026-06-12 00:15:42,003.003 INFO    ] 2026-06-12 00:15:41
[2026-06-12 00:15:42,216.216 INFO    ] 2026-06-12 00:15:42
[2026-06-12 00:15:42,243.243 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 00:15:42,375.375 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 00:15:42,429.429 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 00:15:42,562.562 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 00:15:42,624.624 INFO    ] time= 12/06/2026 00:15:42
[2026-06-12 00:15:42,657.657 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 00:15:42,659.659 INFO    ] Checking for existing commands in stream...
[2026-06-12 00:15:42,731.731 INFO    ] No existing commands found in stream
[2026-06-12 00:15:47,740.740 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 00:15:47,743.743 INFO    ] Waiting 0.14 seconds before fallback handling...
[2026-06-12 00:15:48,284.284 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 00:15:48,286.286 INFO    ] Checking for system updates...
[2026-06-12 00:15:48,307.307 INFO    ] 200
[2026-06-12 00:15:48,309.309 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:15:48,339.339 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 00:15:48,341.341 INFO    ] No update needed
[2026-06-12 00:15:48,343.343 INFO    ] Checking for camera pi updates...
[2026-06-12 00:15:48,363.363 INFO    ] 200
[2026-06-12 00:15:48,364.364 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:15:48,389.389 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 00:15:48,430.430 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 00:15:48,431.431 INFO    ] No camera update needed
[2026-06-12 00:15:48,433.433 INFO    ] Script finished. Safe exiting...
[2026-06-12 00:15:48,434.434 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 00:15:48,437.437 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 00:15:48,441.441 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 00:15:50,484.484 INFO    ] ================================================
[2026-06-12 00:15:50,499.499 INFO    ] Launching Daemon at Fri Jun 12 00:15:50 IST 2026
[2026-06-12 00:15:50,510.510 INFO    ] ================================================
[2026-06-12 00:15:50,861.861 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 00:15:50
[2026-06-12 00:15:51,180.180 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 00:15:51,315.315 INFO    ] Initializing speech engine...
[2026-06-12 00:15:51,318.318 INFO    ] 2026-06-12 00:15:51
[2026-06-12 00:15:51,513.513 INFO    ] 2026-06-12 00:15:51
[2026-06-12 00:15:51,558.558 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 00:15:51,786.786 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 00:15:51,790.790 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 00:15:51,932.932 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 00:15:51,984.984 INFO    ] time= 12/06/2026 00:15:51
[2026-06-12 00:15:52,039.039 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 00:15:52,041.041 INFO    ] Checking for existing commands in stream...
[2026-06-12 00:15:52,118.118 INFO    ] No existing commands found in stream
[2026-06-12 00:15:57,129.129 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 00:15:57,132.132 INFO    ] Waiting 3.80 seconds before fallback handling...
[2026-06-12 00:16:01,298.298 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 00:16:01,299.299 INFO    ] Checking for system updates...
[2026-06-12 00:16:01,322.322 INFO    ] 200
[2026-06-12 00:16:01,323.323 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:16:01,356.356 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 00:16:01,358.358 INFO    ] No update needed
[2026-06-12 00:16:01,359.359 INFO    ] Checking for camera pi updates...
[2026-06-12 00:16:01,379.379 INFO    ] 200
[2026-06-12 00:16:01,381.381 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:16:01,404.404 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 00:16:01,450.450 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 00:16:01,452.452 INFO    ] No camera update needed
[2026-06-12 00:16:01,453.453 INFO    ] Script finished. Safe exiting...
[2026-06-12 00:16:01,454.454 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 00:16:01,458.458 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 00:16:01,461.461 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 00:16:03,495.495 INFO    ] ================================================
[2026-06-12 00:16:03,512.512 INFO    ] Launching Daemon at Fri Jun 12 00:16:03 IST 2026
[2026-06-12 00:16:03,523.523 INFO    ] ================================================
[2026-06-12 00:16:03,871.871 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 00:16:03
[2026-06-12 00:16:04,215.215 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 00:16:04,369.369 INFO    ] Initializing speech engine...
[2026-06-12 00:16:04,375.375 INFO    ] 2026-06-12 00:16:04
[2026-06-12 00:16:04,586.586 INFO    ] 2026-06-12 00:16:04
[2026-06-12 00:16:04,617.617 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 00:16:04,803.803 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 00:16:04,807.807 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 00:16:04,946.946 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 00:16:05,015.015 INFO    ] time= 12/06/2026 00:16:04
[2026-06-12 00:16:05,039.039 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 00:16:05,046.046 INFO    ] Checking for existing commands in stream...
[2026-06-12 00:16:05,113.113 INFO    ] No existing commands found in stream
[2026-06-12 00:16:10,138.138 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 00:16:10,141.141 INFO    ] Waiting 2.08 seconds before fallback handling...
[2026-06-12 00:16:12,557.557 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 00:16:12,558.558 INFO    ] Checking for system updates...
[2026-06-12 00:16:12,582.582 INFO    ] 200
[2026-06-12 00:16:12,583.583 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:16:12,616.616 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 00:16:12,618.618 INFO    ] No update needed
[2026-06-12 00:16:12,619.619 INFO    ] Checking for camera pi updates...
[2026-06-12 00:16:12,639.639 INFO    ] 200
[2026-06-12 00:16:12,641.641 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:16:12,665.665 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 00:16:12,705.705 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 00:16:12,707.707 INFO    ] No camera update needed
[2026-06-12 00:16:12,708.708 INFO    ] Script finished. Safe exiting...
[2026-06-12 00:16:12,710.710 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 00:16:12,713.713 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 00:16:12,716.716 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 00:16:14,757.757 INFO    ] ================================================
[2026-06-12 00:16:14,773.773 INFO    ] Launching Daemon at Fri Jun 12 00:16:14 IST 2026
[2026-06-12 00:16:14,783.783 INFO    ] ================================================
[2026-06-12 00:16:15,130.130 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 00:16:15
[2026-06-12 00:16:15,442.442 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 00:16:15,573.573 INFO    ] Initializing speech engine...
[2026-06-12 00:16:15,576.576 INFO    ] 2026-06-12 00:16:15
[2026-06-12 00:16:15,794.794 INFO    ] 2026-06-12 00:16:15
[2026-06-12 00:16:15,823.823 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 00:16:15,947.947 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 00:16:15,990.990 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 00:16:16,142.142 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 00:16:16,204.204 INFO    ] time= 12/06/2026 00:16:16
[2026-06-12 00:16:16,242.242 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 00:16:16,244.244 INFO    ] Checking for existing commands in stream...
[2026-06-12 00:16:16,316.316 INFO    ] No existing commands found in stream
[2026-06-12 00:16:21,325.325 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 00:16:21,328.328 INFO    ] Waiting 1.99 seconds before fallback handling...
[2026-06-12 00:16:23,645.645 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 00:16:23,647.647 INFO    ] Checking for system updates...
[2026-06-12 00:16:23,668.668 INFO    ] 200
[2026-06-12 00:16:23,669.669 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:16:23,702.702 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 00:16:23,703.703 INFO    ] No update needed
[2026-06-12 00:16:23,705.705 INFO    ] Checking for camera pi updates...
[2026-06-12 00:16:23,726.726 INFO    ] 200
[2026-06-12 00:16:23,727.727 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:16:23,752.752 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 00:16:23,793.793 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 00:16:23,794.794 INFO    ] No camera update needed
[2026-06-12 00:16:23,796.796 INFO    ] Script finished. Safe exiting...
[2026-06-12 00:16:23,797.797 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 00:16:23,800.800 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 00:16:23,803.803 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 00:16:25,843.843 INFO    ] ================================================
[2026-06-12 00:16:25,858.858 INFO    ] Launching Daemon at Fri Jun 12 00:16:25 IST 2026
[2026-06-12 00:16:25,869.869 INFO    ] ================================================
[2026-06-12 00:16:26,231.231 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 00:16:26
[2026-06-12 00:16:26,543.543 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 00:16:26,674.674 INFO    ] Initializing speech engine...
[2026-06-12 00:16:26,683.683 INFO    ] 2026-06-12 00:16:26
[2026-06-12 00:16:26,896.896 INFO    ] 2026-06-12 00:16:26
[2026-06-12 00:16:26,926.926 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 00:16:27,050.050 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 00:16:27,098.098 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 00:16:27,246.246 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 00:16:27,302.302 INFO    ] time= 12/06/2026 00:16:27
[2026-06-12 00:16:27,337.337 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 00:16:27,348.348 INFO    ] Checking for existing commands in stream...
[2026-06-12 00:16:27,420.420 INFO    ] No existing commands found in stream
[2026-06-12 00:16:32,429.429 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 00:16:32,432.432 INFO    ] Waiting 1.07 seconds before fallback handling...
[2026-06-12 00:16:33,891.891 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 00:16:33,892.892 INFO    ] Checking for system updates...
[2026-06-12 00:16:33,913.913 INFO    ] 200
[2026-06-12 00:16:33,914.914 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:16:33,947.947 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 00:16:33,948.948 INFO    ] No update needed
[2026-06-12 00:16:33,949.949 INFO    ] Checking for camera pi updates...
[2026-06-12 00:16:33,969.969 INFO    ] 200
[2026-06-12 00:16:33,971.971 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:16:33,994.994 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 00:16:34,023.023 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 00:16:34,024.024 INFO    ] No camera update needed
[2026-06-12 00:16:34,025.025 INFO    ] Script finished. Safe exiting...
[2026-06-12 00:16:34,026.026 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 00:16:34,029.029 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 00:16:34,032.032 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 00:16:36,071.071 INFO    ] ================================================
[2026-06-12 00:16:36,086.086 INFO    ] Launching Daemon at Fri Jun 12 00:16:36 IST 2026
[2026-06-12 00:16:36,097.097 INFO    ] ================================================
[2026-06-12 00:16:36,447.447 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 00:16:36
[2026-06-12 00:16:36,758.758 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 00:16:36,895.895 INFO    ] Initializing speech engine...
[2026-06-12 00:16:36,906.906 INFO    ] 2026-06-12 00:16:36
[2026-06-12 00:16:37,109.109 INFO    ] 2026-06-12 00:16:37
[2026-06-12 00:16:37,137.137 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 00:16:37,320.320 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 00:16:37,323.323 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 00:16:37,452.452 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 00:16:37,517.517 INFO    ] time= 12/06/2026 00:16:37
[2026-06-12 00:16:37,549.549 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 00:16:37,555.555 INFO    ] Checking for existing commands in stream...
[2026-06-12 00:16:37,621.621 INFO    ] No existing commands found in stream
[2026-06-12 00:16:42,632.632 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 00:16:42,634.634 INFO    ] Waiting 2.28 seconds before fallback handling...
[2026-06-12 00:16:45,283.283 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 00:16:45,284.284 INFO    ] Checking for system updates...
[2026-06-12 00:16:45,306.306 INFO    ] 200
[2026-06-12 00:16:45,307.307 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:16:45,340.340 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 00:16:45,342.342 INFO    ] No update needed
[2026-06-12 00:16:45,343.343 INFO    ] Checking for camera pi updates...
[2026-06-12 00:16:45,362.362 INFO    ] 200
[2026-06-12 00:16:45,364.364 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:16:45,387.387 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 00:16:45,433.433 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 00:16:45,434.434 INFO    ] No camera update needed
[2026-06-12 00:16:45,436.436 INFO    ] Script finished. Safe exiting...
[2026-06-12 00:16:45,437.437 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 00:16:45,440.440 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 00:16:45,443.443 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 00:16:47,481.481 INFO    ] ================================================
[2026-06-12 00:16:47,497.497 INFO    ] Launching Daemon at Fri Jun 12 00:16:47 IST 2026
[2026-06-12 00:16:47,508.508 INFO    ] ================================================
[2026-06-12 00:16:47,901.901 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 00:16:47
[2026-06-12 00:16:48,221.221 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 00:16:48,352.352 INFO    ] Initializing speech engine...
[2026-06-12 00:16:48,360.360 INFO    ] 2026-06-12 00:16:48
[2026-06-12 00:16:48,575.575 INFO    ] 2026-06-12 00:16:48
[2026-06-12 00:16:48,604.604 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 00:16:48,728.728 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 00:16:48,791.791 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 00:16:48,924.924 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 00:16:48,980.980 INFO    ] time= 12/06/2026 00:16:48
[2026-06-12 00:16:49,021.021 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 00:16:49,026.026 INFO    ] Checking for existing commands in stream...
[2026-06-12 00:16:49,099.099 INFO    ] No existing commands found in stream
[2026-06-12 00:16:54,108.108 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 00:16:54,111.111 INFO    ] Waiting 1.26 seconds before fallback handling...
[2026-06-12 00:16:55,708.708 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 00:16:55,709.709 INFO    ] Checking for system updates...
[2026-06-12 00:16:55,731.731 INFO    ] 200
[2026-06-12 00:16:55,732.732 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:16:55,764.764 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 00:16:55,765.765 INFO    ] No update needed
[2026-06-12 00:16:55,767.767 INFO    ] Checking for camera pi updates...
[2026-06-12 00:16:55,788.788 INFO    ] 200
[2026-06-12 00:16:55,789.789 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:16:55,814.814 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 00:16:55,865.865 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 00:16:55,866.866 INFO    ] No camera update needed
[2026-06-12 00:16:55,868.868 INFO    ] Script finished. Safe exiting...
[2026-06-12 00:16:55,869.869 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 00:16:55,872.872 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 00:16:55,875.875 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 00:16:57,917.917 INFO    ] ================================================
[2026-06-12 00:16:57,935.935 INFO    ] Launching Daemon at Fri Jun 12 00:16:57 IST 2026
[2026-06-12 00:16:57,946.946 INFO    ] ================================================
[2026-06-12 00:16:58,286.286 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 00:16:58
[2026-06-12 00:16:58,624.624 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 00:16:58,768.768 INFO    ] Initializing speech engine...
[2026-06-12 00:16:58,782.782 INFO    ] 2026-06-12 00:16:58
[2026-06-12 00:16:58,972.972 INFO    ] 2026-06-12 00:16:58
[2026-06-12 00:16:59,017.017 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 00:16:59,166.166 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 00:16:59,224.224 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 00:16:59,347.347 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 00:16:59,349.349 INFO    ] time= 12/06/2026 00:16:59
[2026-06-12 00:16:59,375.375 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 00:16:59,386.386 INFO    ] Checking for existing commands in stream...
[2026-06-12 00:16:59,429.429 INFO    ] No existing commands found in stream
[2026-06-12 00:17:04,453.453 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 00:17:04,456.456 INFO    ] Waiting 2.98 seconds before fallback handling...
[2026-06-12 00:17:07,799.799 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 00:17:07,800.800 INFO    ] Checking for system updates...
[2026-06-12 00:17:07,822.822 INFO    ] 200
[2026-06-12 00:17:07,824.824 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:17:07,857.857 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 00:17:07,858.858 INFO    ] No update needed
[2026-06-12 00:17:07,859.859 INFO    ] Checking for camera pi updates...
[2026-06-12 00:17:07,880.880 INFO    ] 200
[2026-06-12 00:17:07,882.882 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:17:07,905.905 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 00:17:07,961.961 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 00:17:07,969.969 INFO    ] No camera update needed
[2026-06-12 00:17:07,970.970 INFO    ] Script finished. Safe exiting...
[2026-06-12 00:17:07,971.971 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 00:17:07,974.974 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 00:17:07,977.977 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 00:17:10,016.016 INFO    ] ================================================
[2026-06-12 00:17:10,032.032 INFO    ] Launching Daemon at Fri Jun 12 00:17:10 IST 2026
[2026-06-12 00:17:10,042.042 INFO    ] ================================================
[2026-06-12 00:17:10,408.408 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 00:17:10
[2026-06-12 00:17:10,748.748 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 00:17:10,902.902 INFO    ] Initializing speech engine...
[2026-06-12 00:17:10,907.907 INFO    ] 2026-06-12 00:17:10
[2026-06-12 00:17:11,122.122 INFO    ] 2026-06-12 00:17:11
[2026-06-12 00:17:11,152.152 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 00:17:11,276.276 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 00:17:11,339.339 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 00:17:11,478.478 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 00:17:11,530.530 INFO    ] time= 12/06/2026 00:17:11
[2026-06-12 00:17:11,570.570 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 00:17:11,575.575 INFO    ] Checking for existing commands in stream...
[2026-06-12 00:17:11,647.647 INFO    ] No existing commands found in stream
[2026-06-12 00:17:16,656.656 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 00:17:16,660.660 INFO    ] Waiting 3.47 seconds before fallback handling...
[2026-06-12 00:17:20,453.453 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 00:17:20,454.454 INFO    ] Checking for system updates...
[2026-06-12 00:17:20,475.475 INFO    ] 200
[2026-06-12 00:17:20,477.477 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:17:20,510.510 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 00:17:20,511.511 INFO    ] No update needed
[2026-06-12 00:17:20,513.513 INFO    ] Checking for camera pi updates...
[2026-06-12 00:17:20,537.537 INFO    ] 200
[2026-06-12 00:17:20,538.538 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:17:20,566.566 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 00:17:20,608.608 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 00:17:20,610.610 INFO    ] No camera update needed
[2026-06-12 00:17:20,611.611 INFO    ] Script finished. Safe exiting...
[2026-06-12 00:17:20,613.613 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 00:17:20,616.616 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 00:17:20,619.619 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 00:17:22,658.658 INFO    ] ================================================
[2026-06-12 00:17:22,675.675 INFO    ] Launching Daemon at Fri Jun 12 00:17:22 IST 2026
[2026-06-12 00:17:22,686.686 INFO    ] ================================================
[2026-06-12 00:17:23,045.045 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 00:17:23
[2026-06-12 00:17:23,363.363 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 00:17:23,493.493 INFO    ] Initializing speech engine...
[2026-06-12 00:17:23,497.497 INFO    ] 2026-06-12 00:17:23
[2026-06-12 00:17:23,713.713 INFO    ] 2026-06-12 00:17:23
[2026-06-12 00:17:23,742.742 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 00:17:23,864.864 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 00:17:23,927.927 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 00:17:24,128.128 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 00:17:24,153.153 INFO    ] time= 12/06/2026 00:17:24
[2026-06-12 00:17:24,159.159 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 00:17:24,161.161 INFO    ] Checking for existing commands in stream...
[2026-06-12 00:17:24,227.227 INFO    ] No existing commands found in stream
[2026-06-12 00:17:29,237.237 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 00:17:29,240.240 INFO    ] Waiting 2.42 seconds before fallback handling...
[2026-06-12 00:17:31,997.997 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 00:17:31,999.999 INFO    ] Checking for system updates...
[2026-06-12 00:17:32,023.023 INFO    ] 200
[2026-06-12 00:17:32,025.025 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:17:32,060.060 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 00:17:32,062.062 INFO    ] No update needed
[2026-06-12 00:17:32,063.063 INFO    ] Checking for camera pi updates...
[2026-06-12 00:17:32,091.091 INFO    ] 200
[2026-06-12 00:17:32,092.092 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:17:32,124.124 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 00:17:32,159.159 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 00:17:32,161.161 INFO    ] No camera update needed
[2026-06-12 00:17:32,163.163 INFO    ] Script finished. Safe exiting...
[2026-06-12 00:17:32,164.164 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 00:17:32,168.168 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 00:17:32,172.172 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 00:17:34,211.211 INFO    ] ================================================
[2026-06-12 00:17:34,226.226 INFO    ] Launching Daemon at Fri Jun 12 00:17:34 IST 2026
[2026-06-12 00:17:34,237.237 INFO    ] ================================================
[2026-06-12 00:17:34,589.589 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 00:17:34
[2026-06-12 00:17:34,906.906 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 00:17:35,044.044 INFO    ] Initializing speech engine...
[2026-06-12 00:17:35,052.052 INFO    ] 2026-06-12 00:17:35
[2026-06-12 00:17:35,260.260 INFO    ] 2026-06-12 00:17:35
[2026-06-12 00:17:35,287.287 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 00:17:35,415.415 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 00:17:35,474.474 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 00:17:35,617.617 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 00:17:35,678.678 INFO    ] time= 12/06/2026 00:17:35
[2026-06-12 00:17:35,702.702 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 00:17:35,709.709 INFO    ] Checking for existing commands in stream...
[2026-06-12 00:17:35,774.774 INFO    ] No existing commands found in stream
[2026-06-12 00:17:40,785.785 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 00:17:40,788.788 INFO    ] Waiting 1.89 seconds before fallback handling...
[2026-06-12 00:17:43,008.008 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 00:17:43,010.010 INFO    ] Checking for system updates...
[2026-06-12 00:17:43,032.032 INFO    ] 200
[2026-06-12 00:17:43,033.033 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:17:43,066.066 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 00:17:43,068.068 INFO    ] No update needed
[2026-06-12 00:17:43,069.069 INFO    ] Checking for camera pi updates...
[2026-06-12 00:17:43,090.090 INFO    ] 200
[2026-06-12 00:17:43,091.091 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:17:43,117.117 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 00:17:43,255.255 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 00:17:43,257.257 INFO    ] No camera update needed
[2026-06-12 00:17:43,258.258 INFO    ] Script finished. Safe exiting...
[2026-06-12 00:17:43,259.259 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 00:17:43,262.262 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 00:17:43,265.265 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 00:17:45,305.305 INFO    ] ================================================
[2026-06-12 00:17:45,321.321 INFO    ] Launching Daemon at Fri Jun 12 00:17:45 IST 2026
[2026-06-12 00:17:45,332.332 INFO    ] ================================================
[2026-06-12 00:17:45,723.723 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 00:17:45
[2026-06-12 00:17:46,069.069 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 00:17:46,221.221 INFO    ] Initializing speech engine...
[2026-06-12 00:17:46,225.225 INFO    ] 2026-06-12 00:17:46
[2026-06-12 00:17:46,435.435 INFO    ] 2026-06-12 00:17:46
[2026-06-12 00:17:46,463.463 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 00:17:46,605.605 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 00:17:46,647.647 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 00:17:46,777.777 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 00:17:46,832.832 INFO    ] time= 12/06/2026 00:17:46
[2026-06-12 00:17:46,861.861 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 00:17:46,876.876 INFO    ] Checking for existing commands in stream...
[2026-06-12 00:17:46,946.946 INFO    ] No existing commands found in stream
[2026-06-12 00:17:51,957.957 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 00:17:51,960.960 INFO    ] Waiting 2.80 seconds before fallback handling...
[2026-06-12 00:17:55,133.133 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 00:17:55,134.134 INFO    ] Checking for system updates...
[2026-06-12 00:17:55,155.155 INFO    ] 200
[2026-06-12 00:17:55,157.157 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:17:55,187.187 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 00:17:55,189.189 INFO    ] No update needed
[2026-06-12 00:17:55,191.191 INFO    ] Checking for camera pi updates...
[2026-06-12 00:17:55,212.212 INFO    ] 200
[2026-06-12 00:17:55,214.214 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:17:55,242.242 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 00:17:55,296.296 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 00:17:55,298.298 INFO    ] No camera update needed
[2026-06-12 00:17:55,299.299 INFO    ] Script finished. Safe exiting...
[2026-06-12 00:17:55,301.301 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 00:17:55,304.304 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 00:17:55,307.307 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 00:17:57,350.350 INFO    ] ================================================
[2026-06-12 00:17:57,365.365 INFO    ] Launching Daemon at Fri Jun 12 00:17:57 IST 2026
[2026-06-12 00:17:57,376.376 INFO    ] ================================================
[2026-06-12 00:17:57,737.737 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 00:17:57
[2026-06-12 00:17:58,049.049 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 00:17:58,192.192 INFO    ] Initializing speech engine...
[2026-06-12 00:17:58,241.241 INFO    ] 2026-06-12 00:17:58
[2026-06-12 00:17:58,469.469 INFO    ] 2026-06-12 00:17:58
[2026-06-12 00:17:58,486.486 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 00:17:58,621.621 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 00:17:58,638.638 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 00:17:58,756.756 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 00:17:58,818.818 INFO    ] time= 12/06/2026 00:17:58
[2026-06-12 00:17:58,842.842 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 00:17:58,848.848 INFO    ] Checking for existing commands in stream...
[2026-06-12 00:17:58,915.915 INFO    ] No existing commands found in stream
[2026-06-12 00:18:03,924.924 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 00:18:03,927.927 INFO    ] Waiting 2.51 seconds before fallback handling...
[2026-06-12 00:18:06,751.751 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 00:18:06,752.752 INFO    ] Checking for system updates...
[2026-06-12 00:18:06,773.773 INFO    ] 200
[2026-06-12 00:18:06,775.775 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:18:06,807.807 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 00:18:06,809.809 INFO    ] No update needed
[2026-06-12 00:18:06,810.810 INFO    ] Checking for camera pi updates...
[2026-06-12 00:18:06,831.831 INFO    ] 200
[2026-06-12 00:18:06,833.833 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:18:06,856.856 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 00:18:06,901.901 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 00:18:06,903.903 INFO    ] No camera update needed
[2026-06-12 00:18:06,904.904 INFO    ] Script finished. Safe exiting...
[2026-06-12 00:18:06,905.905 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 00:18:06,908.908 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 00:18:06,911.911 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 00:18:08,950.950 INFO    ] ================================================
[2026-06-12 00:18:08,966.966 INFO    ] Launching Daemon at Fri Jun 12 00:18:08 IST 2026
[2026-06-12 00:18:08,977.977 INFO    ] ================================================
[2026-06-12 00:18:09,322.322 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 00:18:09
[2026-06-12 00:18:09,635.635 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 00:18:09,765.765 INFO    ] Initializing speech engine...
[2026-06-12 00:18:09,770.770 INFO    ] 2026-06-12 00:18:09
[2026-06-12 00:18:09,990.990 INFO    ] 2026-06-12 00:18:09
[2026-06-12 00:18:10,019.019 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 00:18:10,143.143 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 00:18:10,206.206 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 00:18:10,363.363 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 00:18:10,417.417 INFO    ] time= 12/06/2026 00:18:10
[2026-06-12 00:18:10,439.439 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 00:18:10,446.446 INFO    ] Checking for existing commands in stream...
[2026-06-12 00:18:10,513.513 INFO    ] No existing commands found in stream
[2026-06-12 00:18:15,537.537 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 00:18:15,540.540 INFO    ] Waiting 0.10 seconds before fallback handling...
[2026-06-12 00:18:15,991.991 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 00:18:15,993.993 INFO    ] Checking for system updates...
[2026-06-12 00:18:16,013.013 INFO    ] 200
[2026-06-12 00:18:16,015.015 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:18:16,047.047 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 00:18:16,048.048 INFO    ] No update needed
[2026-06-12 00:18:16,050.050 INFO    ] Checking for camera pi updates...
[2026-06-12 00:18:16,071.071 INFO    ] 200
[2026-06-12 00:18:16,072.072 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:18:16,097.097 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 00:18:16,146.146 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 00:18:16,147.147 INFO    ] No camera update needed
[2026-06-12 00:18:16,148.148 INFO    ] Script finished. Safe exiting...
[2026-06-12 00:18:16,150.150 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 00:18:16,153.153 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 00:18:16,155.155 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 00:18:18,194.194 INFO    ] ================================================
[2026-06-12 00:18:18,209.209 INFO    ] Launching Daemon at Fri Jun 12 00:18:18 IST 2026
[2026-06-12 00:18:18,219.219 INFO    ] ================================================
[2026-06-12 00:18:18,579.579 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 00:18:18
[2026-06-12 00:18:18,897.897 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 00:18:19,041.041 INFO    ] Initializing speech engine...
[2026-06-12 00:18:19,046.046 INFO    ] 2026-06-12 00:18:19
[2026-06-12 00:18:19,251.251 INFO    ] 2026-06-12 00:18:19
[2026-06-12 00:18:19,279.279 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 00:18:19,463.463 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 00:18:19,466.466 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 00:18:19,603.603 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 00:18:19,662.662 INFO    ] time= 12/06/2026 00:18:19
[2026-06-12 00:18:19,694.694 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 00:18:19,700.700 INFO    ] Checking for existing commands in stream...
[2026-06-12 00:18:19,767.767 INFO    ] No existing commands found in stream
[2026-06-12 00:18:24,781.781 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 00:18:24,784.784 INFO    ] Waiting 0.61 seconds before fallback handling...
[2026-06-12 00:18:25,771.771 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 00:18:25,772.772 INFO    ] Checking for system updates...
[2026-06-12 00:18:25,794.794 INFO    ] 200
[2026-06-12 00:18:25,795.795 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:18:25,828.828 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 00:18:25,829.829 INFO    ] No update needed
[2026-06-12 00:18:25,831.831 INFO    ] Checking for camera pi updates...
[2026-06-12 00:18:25,850.850 INFO    ] 200
[2026-06-12 00:18:25,852.852 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:18:25,876.876 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 00:18:25,920.920 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 00:18:25,922.922 INFO    ] No camera update needed
[2026-06-12 00:18:25,923.923 INFO    ] Script finished. Safe exiting...
[2026-06-12 00:18:25,924.924 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 00:18:25,927.927 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 00:18:25,930.930 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 00:18:27,970.970 INFO    ] ================================================
[2026-06-12 00:18:27,992.992 INFO    ] Launching Daemon at Fri Jun 12 00:18:27 IST 2026
[2026-06-12 00:18:28,004.004 INFO    ] ================================================
[2026-06-12 00:18:28,365.365 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 00:18:28
[2026-06-12 00:18:28,678.678 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 00:18:28,819.819 INFO    ] Initializing speech engine...
[2026-06-12 00:18:28,824.824 INFO    ] 2026-06-12 00:18:28
[2026-06-12 00:18:29,027.027 INFO    ] 2026-06-12 00:18:29
[2026-06-12 00:18:29,055.055 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 00:18:29,238.238 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 00:18:29,241.241 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 00:18:29,378.378 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 00:18:29,444.444 INFO    ] time= 12/06/2026 00:18:29
[2026-06-12 00:18:29,468.468 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 00:18:29,475.475 INFO    ] Checking for existing commands in stream...
[2026-06-12 00:18:29,564.564 INFO    ] No existing commands found in stream
[2026-06-12 00:18:34,578.578 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 00:18:34,581.581 INFO    ] Waiting 3.98 seconds before fallback handling...
[2026-06-12 00:18:38,895.895 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 00:18:38,896.896 INFO    ] Checking for system updates...
[2026-06-12 00:18:38,917.917 INFO    ] 200
[2026-06-12 00:18:38,918.918 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:18:38,950.950 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 00:18:38,951.951 INFO    ] No update needed
[2026-06-12 00:18:38,953.953 INFO    ] Checking for camera pi updates...
[2026-06-12 00:18:38,976.976 INFO    ] 200
[2026-06-12 00:18:38,977.977 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:18:39,002.002 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 00:18:39,031.031 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 00:18:39,032.032 INFO    ] No camera update needed
[2026-06-12 00:18:39,033.033 INFO    ] Script finished. Safe exiting...
[2026-06-12 00:18:39,034.034 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 00:18:39,037.037 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 00:18:39,040.040 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 00:18:41,081.081 INFO    ] ================================================
[2026-06-12 00:18:41,097.097 INFO    ] Launching Daemon at Fri Jun 12 00:18:41 IST 2026
[2026-06-12 00:18:41,108.108 INFO    ] ================================================
[2026-06-12 00:18:41,476.476 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 00:18:41
[2026-06-12 00:18:41,789.789 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 00:18:41,934.934 INFO    ] Initializing speech engine...
[2026-06-12 00:18:41,938.938 INFO    ] 2026-06-12 00:18:41
[2026-06-12 00:18:42,140.140 INFO    ] 2026-06-12 00:18:42
[2026-06-12 00:18:42,168.168 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 00:18:42,352.352 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 00:18:42,361.361 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 00:18:42,492.492 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 00:18:42,556.556 INFO    ] time= 12/06/2026 00:18:42
[2026-06-12 00:18:42,583.583 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 00:18:42,590.590 INFO    ] Checking for existing commands in stream...
[2026-06-12 00:18:42,656.656 INFO    ] No existing commands found in stream
[2026-06-12 00:18:47,665.665 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 00:18:47,668.668 INFO    ] Waiting 3.50 seconds before fallback handling...
[2026-06-12 00:18:51,481.481 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 00:18:51,483.483 INFO    ] Checking for system updates...
[2026-06-12 00:18:51,507.507 INFO    ] 200
[2026-06-12 00:18:51,508.508 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:18:51,541.541 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 00:18:51,542.542 INFO    ] No update needed
[2026-06-12 00:18:51,544.544 INFO    ] Checking for camera pi updates...
[2026-06-12 00:18:51,565.565 INFO    ] 200
[2026-06-12 00:18:51,567.567 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:18:51,592.592 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 00:18:51,618.618 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 00:18:51,620.620 INFO    ] No camera update needed
[2026-06-12 00:18:51,621.621 INFO    ] Script finished. Safe exiting...
[2026-06-12 00:18:51,623.623 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 00:18:51,626.626 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 00:18:51,629.629 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 00:18:53,672.672 INFO    ] ================================================
[2026-06-12 00:18:53,686.686 INFO    ] Launching Daemon at Fri Jun 12 00:18:53 IST 2026
[2026-06-12 00:18:53,697.697 INFO    ] ================================================
[2026-06-12 00:18:54,042.042 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 00:18:54
[2026-06-12 00:18:54,353.353 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 00:18:54,483.483 INFO    ] Initializing speech engine...
[2026-06-12 00:18:54,488.488 INFO    ] 2026-06-12 00:18:54
[2026-06-12 00:18:54,703.703 INFO    ] 2026-06-12 00:18:54
[2026-06-12 00:18:54,733.733 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 00:18:54,914.914 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 00:18:54,918.918 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 00:18:55,050.050 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 00:18:55,112.112 INFO    ] time= 12/06/2026 00:18:55
[2026-06-12 00:18:55,144.144 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 00:18:55,150.150 INFO    ] Checking for existing commands in stream...
[2026-06-12 00:18:55,241.241 INFO    ] No existing commands found in stream
[2026-06-12 00:19:00,250.250 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 00:19:00,253.253 INFO    ] Waiting 2.37 seconds before fallback handling...
[2026-06-12 00:19:02,950.950 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 00:19:02,953.953 INFO    ] Checking for system updates...
[2026-06-12 00:19:02,989.989 INFO    ] 200
[2026-06-12 00:19:02,992.992 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:19:03,054.054 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 00:19:03,057.057 INFO    ] No update needed
[2026-06-12 00:19:03,060.060 INFO    ] Checking for camera pi updates...
[2026-06-12 00:19:03,095.095 INFO    ] 200
[2026-06-12 00:19:03,098.098 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:19:03,127.127 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 00:19:03,156.156 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 00:19:03,157.157 INFO    ] No camera update needed
[2026-06-12 00:19:03,159.159 INFO    ] Script finished. Safe exiting...
[2026-06-12 00:19:03,160.160 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 00:19:03,164.164 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 00:19:03,167.167 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 00:19:05,206.206 INFO    ] ================================================
[2026-06-12 00:19:05,221.221 INFO    ] Launching Daemon at Fri Jun 12 00:19:05 IST 2026
[2026-06-12 00:19:05,232.232 INFO    ] ================================================
[2026-06-12 00:19:05,595.595 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 00:19:05
[2026-06-12 00:19:05,912.912 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 00:19:06,081.081 INFO    ] Initializing speech engine...
[2026-06-12 00:19:06,096.096 INFO    ] 2026-06-12 00:19:06
[2026-06-12 00:19:06,307.307 INFO    ] 2026-06-12 00:19:06
[2026-06-12 00:19:06,336.336 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 00:19:06,518.518 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 00:19:06,522.522 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 00:19:06,657.657 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 00:19:06,721.721 INFO    ] time= 12/06/2026 00:19:06
[2026-06-12 00:19:06,747.747 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 00:19:06,754.754 INFO    ] Checking for existing commands in stream...
[2026-06-12 00:19:06,820.820 INFO    ] No existing commands found in stream
[2026-06-12 00:19:11,828.828 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 00:19:11,829.829 INFO    ] Waiting 1.67 seconds before fallback handling...
[2026-06-12 00:19:13,863.863 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 00:19:13,864.864 INFO    ] Checking for system updates...
[2026-06-12 00:19:13,886.886 INFO    ] 200
[2026-06-12 00:19:13,887.887 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:19:13,919.919 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 00:19:13,921.921 INFO    ] No update needed
[2026-06-12 00:19:13,922.922 INFO    ] Checking for camera pi updates...
[2026-06-12 00:19:13,941.941 INFO    ] 200
[2026-06-12 00:19:13,943.943 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:19:13,966.966 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 00:19:14,006.006 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 00:19:14,007.007 INFO    ] No camera update needed
[2026-06-12 00:19:14,008.008 INFO    ] Script finished. Safe exiting...
[2026-06-12 00:19:14,010.010 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 00:19:14,013.013 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 00:19:14,015.015 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 00:19:16,056.056 INFO    ] ================================================
[2026-06-12 00:19:16,072.072 INFO    ] Launching Daemon at Fri Jun 12 00:19:16 IST 2026
[2026-06-12 00:19:16,083.083 INFO    ] ================================================
[2026-06-12 00:19:16,419.419 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 00:19:16
[2026-06-12 00:19:16,736.736 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 00:19:16,874.874 INFO    ] Initializing speech engine...
[2026-06-12 00:19:16,885.885 INFO    ] 2026-06-12 00:19:16
[2026-06-12 00:19:17,090.090 INFO    ] 2026-06-12 00:19:17
[2026-06-12 00:19:17,118.118 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 00:19:17,301.301 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 00:19:17,305.305 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 00:19:17,441.441 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 00:19:17,508.508 INFO    ] time= 12/06/2026 00:19:17
[2026-06-12 00:19:17,532.532 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 00:19:17,539.539 INFO    ] Checking for existing commands in stream...
[2026-06-12 00:19:17,606.606 INFO    ] No existing commands found in stream
[2026-06-12 00:19:22,620.620 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 00:19:22,623.623 INFO    ] Waiting 1.87 seconds before fallback handling...
[2026-06-12 00:19:24,852.852 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 00:19:24,853.853 INFO    ] Checking for system updates...
[2026-06-12 00:19:24,874.874 INFO    ] 200
[2026-06-12 00:19:24,875.875 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:19:24,905.905 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 00:19:24,907.907 INFO    ] No update needed
[2026-06-12 00:19:24,908.908 INFO    ] Checking for camera pi updates...
[2026-06-12 00:19:24,928.928 INFO    ] 200
[2026-06-12 00:19:24,930.930 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:19:24,955.955 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 00:19:24,995.995 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 00:19:24,997.997 INFO    ] No camera update needed
[2026-06-12 00:19:24,998.998 INFO    ] Script finished. Safe exiting...
[2026-06-12 00:19:24,999.999 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 00:19:25,002.002 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 00:19:25,005.005 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 00:19:27,045.045 INFO    ] ================================================
[2026-06-12 00:19:27,061.061 INFO    ] Launching Daemon at Fri Jun 12 00:19:27 IST 2026
[2026-06-12 00:19:27,073.073 INFO    ] ================================================
[2026-06-12 00:19:27,428.428 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 00:19:27
[2026-06-12 00:19:27,763.763 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 00:19:27,901.901 INFO    ] Initializing speech engine...
[2026-06-12 00:19:27,915.915 INFO    ] 2026-06-12 00:19:27
[2026-06-12 00:19:28,133.133 INFO    ] 2026-06-12 00:19:28
[2026-06-12 00:19:28,156.156 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 00:19:28,278.278 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 00:19:28,341.341 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 00:19:28,479.479 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 00:19:28,547.547 INFO    ] time= 12/06/2026 00:19:28
[2026-06-12 00:19:28,571.571 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 00:19:28,577.577 INFO    ] Checking for existing commands in stream...
[2026-06-12 00:19:28,644.644 INFO    ] No existing commands found in stream
[2026-06-12 00:19:33,658.658 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 00:19:33,662.662 INFO    ] Waiting 1.53 seconds before fallback handling...
[2026-06-12 00:19:35,575.575 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 00:19:35,577.577 INFO    ] Checking for system updates...
[2026-06-12 00:19:35,598.598 INFO    ] 200
[2026-06-12 00:19:35,599.599 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:19:35,629.629 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 00:19:35,630.630 INFO    ] No update needed
[2026-06-12 00:19:35,632.632 INFO    ] Checking for camera pi updates...
[2026-06-12 00:19:35,651.651 INFO    ] 200
[2026-06-12 00:19:35,652.652 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:19:35,675.675 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 00:19:35,719.719 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 00:19:35,721.721 INFO    ] No camera update needed
[2026-06-12 00:19:35,722.722 INFO    ] Script finished. Safe exiting...
[2026-06-12 00:19:35,723.723 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 00:19:35,726.726 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 00:19:35,729.729 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 00:19:37,767.767 INFO    ] ================================================
[2026-06-12 00:19:37,783.783 INFO    ] Launching Daemon at Fri Jun 12 00:19:37 IST 2026
[2026-06-12 00:19:37,794.794 INFO    ] ================================================
[2026-06-12 00:19:38,134.134 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 00:19:38
[2026-06-12 00:19:38,446.446 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 00:19:38,588.588 INFO    ] Initializing speech engine...
[2026-06-12 00:19:38,593.593 INFO    ] 2026-06-12 00:19:38
[2026-06-12 00:19:38,794.794 INFO    ] 2026-06-12 00:19:38
[2026-06-12 00:19:38,823.823 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 00:19:38,945.945 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 00:19:39,003.003 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 00:19:39,143.143 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 00:19:39,199.199 INFO    ] time= 12/06/2026 00:19:39
[2026-06-12 00:19:39,234.234 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 00:19:39,239.239 INFO    ] Checking for existing commands in stream...
[2026-06-12 00:19:39,333.333 INFO    ] No existing commands found in stream
[2026-06-12 00:19:44,342.342 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 00:19:44,345.345 INFO    ] Waiting 0.55 seconds before fallback handling...
[2026-06-12 00:19:45,252.252 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 00:19:45,254.254 INFO    ] Checking for system updates...
[2026-06-12 00:19:45,276.276 INFO    ] 200
[2026-06-12 00:19:45,278.278 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:19:45,310.310 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 00:19:45,312.312 INFO    ] No update needed
[2026-06-12 00:19:45,313.313 INFO    ] Checking for camera pi updates...
[2026-06-12 00:19:45,333.333 INFO    ] 200
[2026-06-12 00:19:45,335.335 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:19:45,358.358 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 00:19:45,402.402 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 00:19:45,404.404 INFO    ] No camera update needed
[2026-06-12 00:19:45,405.405 INFO    ] Script finished. Safe exiting...
[2026-06-12 00:19:45,406.406 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 00:19:45,409.409 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 00:19:45,412.412 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 00:19:47,451.451 INFO    ] ================================================
[2026-06-12 00:19:47,467.467 INFO    ] Launching Daemon at Fri Jun 12 00:19:47 IST 2026
[2026-06-12 00:19:47,477.477 INFO    ] ================================================
[2026-06-12 00:19:47,841.841 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 00:19:47
[2026-06-12 00:19:48,152.152 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 00:19:48,295.295 INFO    ] Initializing speech engine...
[2026-06-12 00:19:48,300.300 INFO    ] 2026-06-12 00:19:48
[2026-06-12 00:19:48,502.502 INFO    ] 2026-06-12 00:19:48
[2026-06-12 00:19:48,531.531 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 00:19:48,653.653 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 00:19:48,716.716 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 00:19:48,847.847 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 00:19:48,902.902 INFO    ] time= 12/06/2026 00:19:48
[2026-06-12 00:19:48,936.936 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 00:19:48,946.946 INFO    ] Checking for existing commands in stream...
[2026-06-12 00:19:49,016.016 INFO    ] No existing commands found in stream
[2026-06-12 00:19:54,027.027 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 00:19:54,030.030 INFO    ] Waiting 2.19 seconds before fallback handling...
[2026-06-12 00:19:56,606.606 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 00:19:56,608.608 INFO    ] Checking for system updates...
[2026-06-12 00:19:56,628.628 INFO    ] 200
[2026-06-12 00:19:56,630.630 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:19:56,661.661 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 00:19:56,662.662 INFO    ] No update needed
[2026-06-12 00:19:56,663.663 INFO    ] Checking for camera pi updates...
[2026-06-12 00:19:56,685.685 INFO    ] 200
[2026-06-12 00:19:56,686.686 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:19:56,711.711 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 00:19:56,860.860 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 00:19:56,862.862 INFO    ] No camera update needed
[2026-06-12 00:19:56,863.863 INFO    ] Script finished. Safe exiting...
[2026-06-12 00:19:56,864.864 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 00:19:56,867.867 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 00:19:56,870.870 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 00:19:58,907.907 INFO    ] ================================================
[2026-06-12 00:19:58,923.923 INFO    ] Launching Daemon at Fri Jun 12 00:19:58 IST 2026
[2026-06-12 00:19:58,933.933 INFO    ] ================================================
[2026-06-12 00:19:59,274.274 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 00:19:59
[2026-06-12 00:19:59,586.586 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 00:19:59,728.728 INFO    ] Initializing speech engine...
[2026-06-12 00:19:59,733.733 INFO    ] 2026-06-12 00:19:59
[2026-06-12 00:19:59,939.939 INFO    ] 2026-06-12 00:19:59
[2026-06-12 00:19:59,968.968 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 00:20:00,093.093 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 00:20:00,130.130 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 00:20:00,296.296 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 00:20:00,350.350 INFO    ] time= 12/06/2026 00:20:00
[2026-06-12 00:20:00,385.385 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 00:20:00,391.391 INFO    ] Checking for existing commands in stream...
[2026-06-12 00:20:00,463.463 INFO    ] No existing commands found in stream
[2026-06-12 00:20:05,487.487 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 00:20:05,490.490 INFO    ] Waiting 0.03 seconds before fallback handling...
[2026-06-12 00:20:08,106.106 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 00:20:08,109.109 INFO    ] Checking for system updates...
[2026-06-12 00:20:08,150.150 INFO    ] 200
[2026-06-12 00:20:08,152.152 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:20:08,213.213 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 00:20:08,215.215 INFO    ] No update needed
[2026-06-12 00:20:08,218.218 INFO    ] Checking for camera pi updates...
[2026-06-12 00:20:08,262.262 INFO    ] 200
[2026-06-12 00:20:08,263.263 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:20:08,289.289 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 00:20:08,321.321 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 00:20:08,323.323 INFO    ] No camera update needed
[2026-06-12 00:20:08,324.324 INFO    ] Script finished. Safe exiting...
[2026-06-12 00:20:08,326.326 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 00:20:08,329.329 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 00:20:08,332.332 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 00:20:10,373.373 INFO    ] ================================================
[2026-06-12 00:20:10,388.388 INFO    ] Launching Daemon at Fri Jun 12 00:20:10 IST 2026
[2026-06-12 00:20:10,400.400 INFO    ] ================================================
[2026-06-12 00:20:10,776.776 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 00:20:10
[2026-06-12 00:20:11,094.094 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 00:20:11,225.225 INFO    ] Initializing speech engine...
[2026-06-12 00:20:11,229.229 INFO    ] 2026-06-12 00:20:11
[2026-06-12 00:20:11,448.448 INFO    ] 2026-06-12 00:20:11
[2026-06-12 00:20:11,476.476 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 00:20:11,609.609 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 00:20:11,662.662 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 00:20:11,797.797 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 00:20:11,863.863 INFO    ] time= 12/06/2026 00:20:11
[2026-06-12 00:20:11,891.891 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 00:20:11,897.897 INFO    ] Checking for existing commands in stream...
[2026-06-12 00:20:11,965.965 INFO    ] No existing commands found in stream
[2026-06-12 00:20:16,979.979 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 00:20:16,982.982 INFO    ] Waiting 0.09 seconds before fallback handling...
[2026-06-12 00:20:17,421.421 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 00:20:17,423.423 INFO    ] Checking for system updates...
[2026-06-12 00:20:17,444.444 INFO    ] 200
[2026-06-12 00:20:17,445.445 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:20:17,477.477 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 00:20:17,478.478 INFO    ] No update needed
[2026-06-12 00:20:17,480.480 INFO    ] Checking for camera pi updates...
[2026-06-12 00:20:17,499.499 INFO    ] 200
[2026-06-12 00:20:17,501.501 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:20:17,525.525 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 00:20:17,576.576 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 00:20:17,578.578 INFO    ] No camera update needed
[2026-06-12 00:20:17,579.579 INFO    ] Script finished. Safe exiting...
[2026-06-12 00:20:17,581.581 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 00:20:17,584.584 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 00:20:17,587.587 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 00:20:19,628.628 INFO    ] ================================================
[2026-06-12 00:20:19,644.644 INFO    ] Launching Daemon at Fri Jun 12 00:20:19 IST 2026
[2026-06-12 00:20:19,656.656 INFO    ] ================================================
[2026-06-12 00:20:20,004.004 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 00:20:20
[2026-06-12 00:20:20,344.344 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 00:20:20,498.498 INFO    ] Initializing speech engine...
[2026-06-12 00:20:20,506.506 INFO    ] 2026-06-12 00:20:20
[2026-06-12 00:20:20,708.708 INFO    ] 2026-06-12 00:20:20
[2026-06-12 00:20:20,737.737 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 00:20:20,920.920 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 00:20:20,930.930 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 00:20:21,057.057 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 00:20:21,119.119 INFO    ] time= 12/06/2026 00:20:21
[2026-06-12 00:20:21,152.152 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 00:20:21,158.158 INFO    ] Checking for existing commands in stream...
[2026-06-12 00:20:21,249.249 INFO    ] No existing commands found in stream
[2026-06-12 00:20:26,263.263 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 00:20:26,266.266 INFO    ] Waiting 2.75 seconds before fallback handling...
[2026-06-12 00:20:29,384.384 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 00:20:29,386.386 INFO    ] Checking for system updates...
[2026-06-12 00:20:29,407.407 INFO    ] 200
[2026-06-12 00:20:29,408.408 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:20:29,441.441 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 00:20:29,442.442 INFO    ] No update needed
[2026-06-12 00:20:29,443.443 INFO    ] Checking for camera pi updates...
[2026-06-12 00:20:29,463.463 INFO    ] 200
[2026-06-12 00:20:29,464.464 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:20:29,488.488 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 00:20:29,533.533 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 00:20:29,534.534 INFO    ] No camera update needed
[2026-06-12 00:20:29,536.536 INFO    ] Script finished. Safe exiting...
[2026-06-12 00:20:29,537.537 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 00:20:29,540.540 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 00:20:29,543.543 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 00:20:31,583.583 INFO    ] ================================================
[2026-06-12 00:20:31,601.601 INFO    ] Launching Daemon at Fri Jun 12 00:20:31 IST 2026
[2026-06-12 00:20:31,612.612 INFO    ] ================================================
[2026-06-12 00:20:31,975.975 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 00:20:31
[2026-06-12 00:20:32,317.317 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 00:20:32,468.468 INFO    ] Initializing speech engine...
[2026-06-12 00:20:32,479.479 INFO    ] 2026-06-12 00:20:32
[2026-06-12 00:20:32,693.693 INFO    ] 2026-06-12 00:20:32
[2026-06-12 00:20:32,724.724 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 00:20:32,855.855 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 00:20:32,895.895 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 00:20:33,064.064 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 00:20:33,085.085 INFO    ] time= 12/06/2026 00:20:33
[2026-06-12 00:20:33,147.147 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 00:20:33,172.172 INFO    ] Checking for existing commands in stream...
[2026-06-12 00:20:33,247.247 INFO    ] No existing commands found in stream
[2026-06-12 00:20:38,258.258 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 00:20:38,260.260 INFO    ] Waiting 1.74 seconds before fallback handling...
[2026-06-12 00:20:40,304.304 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 00:20:40,306.306 INFO    ] Checking for system updates...
[2026-06-12 00:20:40,328.328 INFO    ] 200
[2026-06-12 00:20:40,329.329 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:20:40,360.360 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 00:20:40,361.361 INFO    ] No update needed
[2026-06-12 00:20:40,362.362 INFO    ] Checking for camera pi updates...
[2026-06-12 00:20:40,383.383 INFO    ] 200
[2026-06-12 00:20:40,384.384 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:20:40,407.407 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 00:20:40,447.447 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 00:20:40,448.448 INFO    ] No camera update needed
[2026-06-12 00:20:40,450.450 INFO    ] Script finished. Safe exiting...
[2026-06-12 00:20:40,451.451 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 00:20:40,454.454 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 00:20:40,457.457 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 00:20:42,496.496 INFO    ] ================================================
[2026-06-12 00:20:42,513.513 INFO    ] Launching Daemon at Fri Jun 12 00:20:42 IST 2026
[2026-06-12 00:20:42,525.525 INFO    ] ================================================
[2026-06-12 00:20:42,897.897 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 00:20:42
[2026-06-12 00:20:43,234.234 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 00:20:43,384.384 INFO    ] Initializing speech engine...
[2026-06-12 00:20:43,390.390 INFO    ] 2026-06-12 00:20:43
[2026-06-12 00:20:43,598.598 INFO    ] 2026-06-12 00:20:43
[2026-06-12 00:20:43,627.627 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 00:20:43,765.765 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 00:20:43,813.813 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 00:20:43,945.945 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 00:20:44,016.016 INFO    ] time= 12/06/2026 00:20:43
[2026-06-12 00:20:44,043.043 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 00:20:44,051.051 INFO    ] Checking for existing commands in stream...
[2026-06-12 00:20:44,117.117 INFO    ] No existing commands found in stream
[2026-06-12 00:20:49,128.128 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 00:20:49,132.132 INFO    ] Waiting 2.05 seconds before fallback handling...
[2026-06-12 00:20:51,583.583 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 00:20:51,584.584 INFO    ] Checking for system updates...
[2026-06-12 00:20:51,605.605 INFO    ] 200
[2026-06-12 00:20:51,607.607 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:20:51,637.637 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 00:20:51,638.638 INFO    ] No update needed
[2026-06-12 00:20:51,640.640 INFO    ] Checking for camera pi updates...
[2026-06-12 00:20:51,660.660 INFO    ] 200
[2026-06-12 00:20:51,661.661 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:20:51,686.686 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 00:20:51,733.733 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 00:20:51,734.734 INFO    ] No camera update needed
[2026-06-12 00:20:51,736.736 INFO    ] Script finished. Safe exiting...
[2026-06-12 00:20:51,737.737 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 00:20:51,740.740 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 00:20:51,743.743 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 00:20:53,783.783 INFO    ] ================================================
[2026-06-12 00:20:53,799.799 INFO    ] Launching Daemon at Fri Jun 12 00:20:53 IST 2026
[2026-06-12 00:20:53,810.810 INFO    ] ================================================
[2026-06-12 00:20:54,164.164 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 00:20:54
[2026-06-12 00:20:54,479.479 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 00:20:54,617.617 INFO    ] Initializing speech engine...
[2026-06-12 00:20:54,627.627 INFO    ] 2026-06-12 00:20:54
[2026-06-12 00:20:54,832.832 INFO    ] 2026-06-12 00:20:54
[2026-06-12 00:20:54,860.860 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 00:20:54,997.997 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 00:20:55,045.045 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 00:20:55,181.181 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 00:20:55,245.245 INFO    ] time= 12/06/2026 00:20:55
[2026-06-12 00:20:55,273.273 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 00:20:55,279.279 INFO    ] Checking for existing commands in stream...
[2026-06-12 00:20:55,346.346 INFO    ] No existing commands found in stream
[2026-06-12 00:21:00,352.352 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 00:21:00,356.356 INFO    ] Waiting 0.84 seconds before fallback handling...
[2026-06-12 00:21:01,536.536 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 00:21:01,537.537 INFO    ] Checking for system updates...
[2026-06-12 00:21:01,558.558 INFO    ] 200
[2026-06-12 00:21:01,560.560 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:21:01,592.592 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 00:21:01,593.593 INFO    ] No update needed
[2026-06-12 00:21:01,594.594 INFO    ] Checking for camera pi updates...
[2026-06-12 00:21:01,614.614 INFO    ] 200
[2026-06-12 00:21:01,615.615 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:21:01,638.638 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 00:21:01,685.685 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 00:21:01,687.687 INFO    ] No camera update needed
[2026-06-12 00:21:01,688.688 INFO    ] Script finished. Safe exiting...
[2026-06-12 00:21:01,689.689 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 00:21:01,692.692 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 00:21:01,695.695 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 00:21:03,727.727 INFO    ] ================================================
[2026-06-12 00:21:03,743.743 INFO    ] Launching Daemon at Fri Jun 12 00:21:03 IST 2026
[2026-06-12 00:21:03,754.754 INFO    ] ================================================
[2026-06-12 00:21:04,100.100 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 00:21:04
[2026-06-12 00:21:04,436.436 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 00:21:04,588.588 INFO    ] Initializing speech engine...
[2026-06-12 00:21:04,592.592 INFO    ] 2026-06-12 00:21:04
[2026-06-12 00:21:04,799.799 INFO    ] 2026-06-12 00:21:04
[2026-06-12 00:21:04,828.828 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 00:21:04,952.952 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 00:21:05,010.010 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 00:21:05,155.155 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 00:21:05,224.224 INFO    ] time= 12/06/2026 00:21:05
[2026-06-12 00:21:05,248.248 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 00:21:05,255.255 INFO    ] Checking for existing commands in stream...
[2026-06-12 00:21:05,321.321 INFO    ] No existing commands found in stream
[2026-06-12 00:21:10,332.332 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 00:21:10,335.335 INFO    ] Waiting 2.56 seconds before fallback handling...
[2026-06-12 00:21:13,216.216 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 00:21:13,218.218 INFO    ] Checking for system updates...
[2026-06-12 00:21:13,239.239 INFO    ] 200
[2026-06-12 00:21:13,240.240 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:21:13,272.272 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 00:21:13,274.274 INFO    ] No update needed
[2026-06-12 00:21:13,275.275 INFO    ] Checking for camera pi updates...
[2026-06-12 00:21:13,294.294 INFO    ] 200
[2026-06-12 00:21:13,296.296 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:21:13,319.319 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 00:21:13,372.372 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 00:21:13,374.374 INFO    ] No camera update needed
[2026-06-12 00:21:13,375.375 INFO    ] Script finished. Safe exiting...
[2026-06-12 00:21:13,376.376 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 00:21:13,379.379 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 00:21:13,382.382 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 00:21:15,426.426 INFO    ] ================================================
[2026-06-12 00:21:15,442.442 INFO    ] Launching Daemon at Fri Jun 12 00:21:15 IST 2026
[2026-06-12 00:21:15,454.454 INFO    ] ================================================
[2026-06-12 00:21:15,787.787 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 00:21:15
[2026-06-12 00:21:16,096.096 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 00:21:16,228.228 INFO    ] Initializing speech engine...
[2026-06-12 00:21:16,233.233 INFO    ] 2026-06-12 00:21:16
[2026-06-12 00:21:16,459.459 INFO    ] 2026-06-12 00:21:16
[2026-06-12 00:21:16,490.490 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 00:21:16,684.684 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 00:21:16,688.688 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 00:21:16,830.830 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 00:21:16,888.888 INFO    ] time= 12/06/2026 00:21:16
[2026-06-12 00:21:16,926.926 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 00:21:16,932.932 INFO    ] Checking for existing commands in stream...
[2026-06-12 00:21:17,032.032 INFO    ] No existing commands found in stream
[2026-06-12 00:21:22,041.041 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 00:21:22,044.044 INFO    ] Waiting 0.48 seconds before fallback handling...
[2026-06-12 00:21:22,864.864 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 00:21:22,865.865 INFO    ] Checking for system updates...
[2026-06-12 00:21:22,886.886 INFO    ] 200
[2026-06-12 00:21:22,887.887 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:21:22,917.917 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 00:21:22,918.918 INFO    ] No update needed
[2026-06-12 00:21:22,919.919 INFO    ] Checking for camera pi updates...
[2026-06-12 00:21:22,940.940 INFO    ] 200
[2026-06-12 00:21:22,941.941 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:21:22,964.964 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 00:21:23,009.009 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 00:21:23,010.010 INFO    ] No camera update needed
[2026-06-12 00:21:23,012.012 INFO    ] Script finished. Safe exiting...
[2026-06-12 00:21:23,013.013 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 00:21:23,016.016 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 00:21:23,018.018 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 00:21:25,058.058 INFO    ] ================================================
[2026-06-12 00:21:25,074.074 INFO    ] Launching Daemon at Fri Jun 12 00:21:25 IST 2026
[2026-06-12 00:21:25,085.085 INFO    ] ================================================
[2026-06-12 00:21:25,429.429 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 00:21:25
[2026-06-12 00:21:25,739.739 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 00:21:25,882.882 INFO    ] Initializing speech engine...
[2026-06-12 00:21:25,888.888 INFO    ] 2026-06-12 00:21:25
[2026-06-12 00:21:26,092.092 INFO    ] 2026-06-12 00:21:26
[2026-06-12 00:21:26,121.121 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 00:21:26,302.302 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 00:21:26,306.306 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 00:21:26,457.457 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 00:21:26,510.510 INFO    ] time= 12/06/2026 00:21:26
[2026-06-12 00:21:26,532.532 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 00:21:26,538.538 INFO    ] Checking for existing commands in stream...
[2026-06-12 00:21:26,604.604 INFO    ] No existing commands found in stream
[2026-06-12 00:21:31,618.618 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 00:21:31,621.621 INFO    ] Waiting 1.68 seconds before fallback handling...
[2026-06-12 00:21:33,644.644 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 00:21:33,646.646 INFO    ] Checking for system updates...
[2026-06-12 00:21:33,666.666 INFO    ] 200
[2026-06-12 00:21:33,667.667 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:21:33,700.700 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 00:21:33,701.701 INFO    ] No update needed
[2026-06-12 00:21:33,702.702 INFO    ] Checking for camera pi updates...
[2026-06-12 00:21:33,724.724 INFO    ] 200
[2026-06-12 00:21:33,725.725 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:21:33,750.750 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 00:21:33,793.793 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 00:21:33,795.795 INFO    ] No camera update needed
[2026-06-12 00:21:33,796.796 INFO    ] Script finished. Safe exiting...
[2026-06-12 00:21:33,797.797 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 00:21:33,800.800 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 00:21:33,803.803 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 00:21:35,842.842 INFO    ] ================================================
[2026-06-12 00:21:35,858.858 INFO    ] Launching Daemon at Fri Jun 12 00:21:35 IST 2026
[2026-06-12 00:21:35,870.870 INFO    ] ================================================
[2026-06-12 00:21:36,231.231 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 00:21:36
[2026-06-12 00:21:36,549.549 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 00:21:36,694.694 INFO    ] Initializing speech engine...
[2026-06-12 00:21:36,700.700 INFO    ] 2026-06-12 00:21:36
[2026-06-12 00:21:36,904.904 INFO    ] 2026-06-12 00:21:36
[2026-06-12 00:21:36,932.932 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 00:21:37,055.055 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 00:21:37,117.117 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 00:21:37,270.270 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 00:21:37,322.322 INFO    ] time= 12/06/2026 00:21:37
[2026-06-12 00:21:37,345.345 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 00:21:37,352.352 INFO    ] Checking for existing commands in stream...
[2026-06-12 00:21:37,419.419 INFO    ] No existing commands found in stream
[2026-06-12 00:21:42,428.428 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 00:21:42,431.431 INFO    ] Waiting 2.00 seconds before fallback handling...
[2026-06-12 00:21:45,097.097 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 00:21:45,099.099 INFO    ] Checking for system updates...
[2026-06-12 00:21:45,120.120 INFO    ] 200
[2026-06-12 00:21:45,122.122 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:21:45,154.154 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 00:21:45,155.155 INFO    ] No update needed
[2026-06-12 00:21:45,157.157 INFO    ] Checking for camera pi updates...
[2026-06-12 00:21:45,180.180 INFO    ] 200
[2026-06-12 00:21:45,181.181 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:21:45,207.207 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 00:21:45,253.253 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 00:21:45,257.257 INFO    ] No camera update needed
[2026-06-12 00:21:45,259.259 INFO    ] Script finished. Safe exiting...
[2026-06-12 00:21:45,261.261 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 00:21:45,264.264 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 00:21:45,267.267 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 00:21:47,306.306 INFO    ] ================================================
[2026-06-12 00:21:47,322.322 INFO    ] Launching Daemon at Fri Jun 12 00:21:47 IST 2026
[2026-06-12 00:21:47,333.333 INFO    ] ================================================
[2026-06-12 00:21:47,683.683 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 00:21:47
[2026-06-12 00:21:47,993.993 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 00:21:48,124.124 INFO    ] Initializing speech engine...
[2026-06-12 00:21:48,132.132 INFO    ] 2026-06-12 00:21:48
[2026-06-12 00:21:48,341.341 INFO    ] 2026-06-12 00:21:48
[2026-06-12 00:21:48,370.370 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 00:21:48,492.492 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 00:21:48,555.555 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 00:21:48,689.689 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 00:21:48,747.747 INFO    ] time= 12/06/2026 00:21:48
[2026-06-12 00:21:48,784.784 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 00:21:48,786.786 INFO    ] Checking for existing commands in stream...
[2026-06-12 00:21:48,857.857 INFO    ] No existing commands found in stream
[2026-06-12 00:21:53,871.871 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 00:21:53,874.874 INFO    ] Waiting 3.83 seconds before fallback handling...
[2026-06-12 00:21:58,052.052 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 00:21:58,054.054 INFO    ] Checking for system updates...
[2026-06-12 00:21:58,074.074 INFO    ] 200
[2026-06-12 00:21:58,076.076 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:21:58,106.106 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 00:21:58,108.108 INFO    ] No update needed
[2026-06-12 00:21:58,109.109 INFO    ] Checking for camera pi updates...
[2026-06-12 00:21:58,128.128 INFO    ] 200
[2026-06-12 00:21:58,130.130 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:21:58,155.155 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 00:21:58,296.296 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 00:21:58,297.297 INFO    ] No camera update needed
[2026-06-12 00:21:58,298.298 INFO    ] Script finished. Safe exiting...
[2026-06-12 00:21:58,300.300 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 00:21:58,303.303 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 00:21:58,306.306 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 00:22:00,346.346 INFO    ] ================================================
[2026-06-12 00:22:00,362.362 INFO    ] Launching Daemon at Fri Jun 12 00:22:00 IST 2026
[2026-06-12 00:22:00,373.373 INFO    ] ================================================
[2026-06-12 00:22:00,722.722 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 00:22:00
[2026-06-12 00:22:01,033.033 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 00:22:01,165.165 INFO    ] Initializing speech engine...
[2026-06-12 00:22:01,170.170 INFO    ] 2026-06-12 00:22:01
[2026-06-12 00:22:01,396.396 INFO    ] 2026-06-12 00:22:01
[2026-06-12 00:22:01,427.427 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 00:22:01,623.623 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 00:22:01,627.627 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 00:22:01,771.771 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 00:22:01,836.836 INFO    ] time= 12/06/2026 00:22:01
[2026-06-12 00:22:01,869.869 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 00:22:01,875.875 INFO    ] Checking for existing commands in stream...
[2026-06-12 00:22:02,016.016 INFO    ] No existing commands found in stream
[2026-06-12 00:22:07,031.031 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 00:22:07,034.034 INFO    ] Waiting 2.52 seconds before fallback handling...
[2026-06-12 00:22:09,916.916 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 00:22:09,917.917 INFO    ] Checking for system updates...
[2026-06-12 00:22:09,938.938 INFO    ] 200
[2026-06-12 00:22:09,939.939 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:22:09,970.970 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 00:22:09,971.971 INFO    ] No update needed
[2026-06-12 00:22:09,973.973 INFO    ] Checking for camera pi updates...
[2026-06-12 00:22:09,993.993 INFO    ] 200
[2026-06-12 00:22:09,994.994 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:22:10,017.017 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 00:22:10,063.063 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 00:22:10,064.064 INFO    ] No camera update needed
[2026-06-12 00:22:10,065.065 INFO    ] Script finished. Safe exiting...
[2026-06-12 00:22:10,066.066 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 00:22:10,069.069 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 00:22:10,072.072 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 00:22:12,112.112 INFO    ] ================================================
[2026-06-12 00:22:12,128.128 INFO    ] Launching Daemon at Fri Jun 12 00:22:12 IST 2026
[2026-06-12 00:22:12,139.139 INFO    ] ================================================
[2026-06-12 00:22:12,476.476 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 00:22:12
[2026-06-12 00:22:12,790.790 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 00:22:12,922.922 INFO    ] Initializing speech engine...
[2026-06-12 00:22:12,935.935 INFO    ] 2026-06-12 00:22:12
[2026-06-12 00:22:13,142.142 INFO    ] 2026-06-12 00:22:13
[2026-06-12 00:22:13,171.171 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 00:22:13,447.447 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 00:22:13,482.482 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 00:22:13,649.649 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 00:22:13,653.653 INFO    ] time= 12/06/2026 00:22:13
[2026-06-12 00:22:13,665.665 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 00:22:13,681.681 INFO    ] Checking for existing commands in stream...
[2026-06-12 00:22:13,777.777 INFO    ] No existing commands found in stream
[2026-06-12 00:22:18,786.786 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 00:22:18,789.789 INFO    ] Waiting 2.52 seconds before fallback handling...
[2026-06-12 00:22:21,655.655 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 00:22:21,657.657 INFO    ] Checking for system updates...
[2026-06-12 00:22:21,679.679 INFO    ] 200
[2026-06-12 00:22:21,680.680 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:22:21,713.713 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 00:22:21,715.715 INFO    ] No update needed
[2026-06-12 00:22:21,716.716 INFO    ] Checking for camera pi updates...
[2026-06-12 00:22:21,735.735 INFO    ] 200
[2026-06-12 00:22:21,737.737 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:22:21,761.761 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 00:22:21,793.793 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 00:22:21,795.795 INFO    ] No camera update needed
[2026-06-12 00:22:21,796.796 INFO    ] Script finished. Safe exiting...
[2026-06-12 00:22:21,797.797 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 00:22:21,800.800 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 00:22:21,803.803 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 00:22:23,846.846 INFO    ] ================================================
[2026-06-12 00:22:23,861.861 INFO    ] Launching Daemon at Fri Jun 12 00:22:23 IST 2026
[2026-06-12 00:22:23,872.872 INFO    ] ================================================
[2026-06-12 00:22:24,217.217 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 00:22:24
[2026-06-12 00:22:24,534.534 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 00:22:24,666.666 INFO    ] Initializing speech engine...
[2026-06-12 00:22:24,669.669 INFO    ] 2026-06-12 00:22:24
[2026-06-12 00:22:24,889.889 INFO    ] 2026-06-12 00:22:24
[2026-06-12 00:22:24,918.918 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 00:22:25,201.201 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 00:22:25,236.236 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 00:22:25,408.408 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 00:22:25,412.412 INFO    ] time= 12/06/2026 00:22:25
[2026-06-12 00:22:25,414.414 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 00:22:25,439.439 INFO    ] Checking for existing commands in stream...
[2026-06-12 00:22:25,536.536 INFO    ] No existing commands found in stream
[2026-06-12 00:22:30,545.545 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 00:22:30,548.548 INFO    ] Waiting 1.35 seconds before fallback handling...
[2026-06-12 00:22:32,253.253 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 00:22:32,255.255 INFO    ] Checking for system updates...
[2026-06-12 00:22:32,280.280 INFO    ] 200
[2026-06-12 00:22:32,281.281 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:22:32,316.316 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 00:22:32,317.317 INFO    ] No update needed
[2026-06-12 00:22:32,319.319 INFO    ] Checking for camera pi updates...
[2026-06-12 00:22:32,342.342 INFO    ] 200
[2026-06-12 00:22:32,344.344 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:22:32,375.375 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 00:22:32,411.411 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 00:22:32,413.413 INFO    ] No camera update needed
[2026-06-12 00:22:32,415.415 INFO    ] Script finished. Safe exiting...
[2026-06-12 00:22:32,417.417 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 00:22:32,420.420 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 00:22:32,424.424 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 00:22:34,458.458 INFO    ] ================================================
[2026-06-12 00:22:34,475.475 INFO    ] Launching Daemon at Fri Jun 12 00:22:34 IST 2026
[2026-06-12 00:22:34,486.486 INFO    ] ================================================
[2026-06-12 00:22:34,831.831 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 00:22:34
[2026-06-12 00:22:35,145.145 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 00:22:35,277.277 INFO    ] Initializing speech engine...
[2026-06-12 00:22:35,282.282 INFO    ] 2026-06-12 00:22:35
[2026-06-12 00:22:35,476.476 INFO    ] 2026-06-12 00:22:35
[2026-06-12 00:22:35,522.522 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 00:22:35,698.698 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 00:22:35,751.751 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 00:22:35,904.904 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 00:22:35,968.968 INFO    ] time= 12/06/2026 00:22:35
[2026-06-12 00:22:36,003.003 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 00:22:36,005.005 INFO    ] Checking for existing commands in stream...
[2026-06-12 00:22:36,083.083 INFO    ] No existing commands found in stream
[2026-06-12 00:22:41,092.092 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 00:22:41,095.095 INFO    ] Waiting 2.29 seconds before fallback handling...
[2026-06-12 00:22:43,764.764 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 00:22:43,765.765 INFO    ] Checking for system updates...
[2026-06-12 00:22:43,786.786 INFO    ] 200
[2026-06-12 00:22:43,787.787 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:22:43,818.818 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 00:22:43,819.819 INFO    ] No update needed
[2026-06-12 00:22:43,821.821 INFO    ] Checking for camera pi updates...
[2026-06-12 00:22:43,840.840 INFO    ] 200
[2026-06-12 00:22:43,842.842 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:22:43,865.865 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 00:22:43,892.892 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 00:22:43,893.893 INFO    ] No camera update needed
[2026-06-12 00:22:43,894.894 INFO    ] Script finished. Safe exiting...
[2026-06-12 00:22:43,896.896 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 00:22:43,898.898 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 00:22:43,901.901 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 00:22:45,939.939 INFO    ] ================================================
[2026-06-12 00:22:45,955.955 INFO    ] Launching Daemon at Fri Jun 12 00:22:45 IST 2026
[2026-06-12 00:22:45,966.966 INFO    ] ================================================
[2026-06-12 00:22:46,339.339 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 00:22:46
[2026-06-12 00:22:46,657.657 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 00:22:46,788.788 INFO    ] Initializing speech engine...
[2026-06-12 00:22:46,797.797 INFO    ] 2026-06-12 00:22:46
[2026-06-12 00:22:47,012.012 INFO    ] 2026-06-12 00:22:46
[2026-06-12 00:22:47,041.041 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 00:22:47,198.198 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 00:22:47,227.227 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 00:22:47,361.361 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 00:22:47,427.427 INFO    ] time= 12/06/2026 00:22:47
[2026-06-12 00:22:47,453.453 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 00:22:47,460.460 INFO    ] Checking for existing commands in stream...
[2026-06-12 00:22:47,527.527 INFO    ] No existing commands found in stream
[2026-06-12 00:22:52,536.536 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 00:22:52,539.539 INFO    ] Waiting 2.19 seconds before fallback handling...
[2026-06-12 00:22:55,113.113 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 00:22:55,115.115 INFO    ] Checking for system updates...
[2026-06-12 00:22:55,136.136 INFO    ] 200
[2026-06-12 00:22:55,137.137 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:22:55,173.173 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 00:22:55,174.174 INFO    ] No update needed
[2026-06-12 00:22:55,176.176 INFO    ] Checking for camera pi updates...
[2026-06-12 00:22:55,196.196 INFO    ] 200
[2026-06-12 00:22:55,198.198 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:22:55,221.221 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 00:22:55,270.270 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 00:22:55,271.271 INFO    ] No camera update needed
[2026-06-12 00:22:55,273.273 INFO    ] Script finished. Safe exiting...
[2026-06-12 00:22:55,274.274 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 00:22:55,277.277 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 00:22:55,280.280 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 00:22:57,317.317 INFO    ] ================================================
[2026-06-12 00:22:57,332.332 INFO    ] Launching Daemon at Fri Jun 12 00:22:57 IST 2026
[2026-06-12 00:22:57,343.343 INFO    ] ================================================
[2026-06-12 00:22:57,708.708 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 00:22:57
[2026-06-12 00:22:58,019.019 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 00:22:58,148.148 INFO    ] Initializing speech engine...
[2026-06-12 00:22:58,157.157 INFO    ] 2026-06-12 00:22:58
[2026-06-12 00:22:58,370.370 INFO    ] 2026-06-12 00:22:58
[2026-06-12 00:22:58,398.398 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 00:22:58,583.583 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 00:22:58,587.587 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 00:22:58,755.755 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 00:22:58,794.794 INFO    ] time= 12/06/2026 00:22:58
[2026-06-12 00:22:58,815.815 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 00:22:58,822.822 INFO    ] Checking for existing commands in stream...
[2026-06-12 00:22:58,887.887 INFO    ] No existing commands found in stream
[2026-06-12 00:23:03,898.898 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 00:23:03,901.901 INFO    ] Waiting 0.07 seconds before fallback handling...
[2026-06-12 00:23:04,348.348 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 00:23:04,349.349 INFO    ] Checking for system updates...
[2026-06-12 00:23:04,370.370 INFO    ] 200
[2026-06-12 00:23:04,371.371 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:23:04,402.402 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 00:23:04,403.403 INFO    ] No update needed
[2026-06-12 00:23:04,404.404 INFO    ] Checking for camera pi updates...
[2026-06-12 00:23:04,424.424 INFO    ] 200
[2026-06-12 00:23:04,425.425 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:23:04,451.451 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 00:23:04,506.506 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 00:23:04,508.508 INFO    ] No camera update needed
[2026-06-12 00:23:04,509.509 INFO    ] Script finished. Safe exiting...
[2026-06-12 00:23:04,511.511 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 00:23:04,513.513 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 00:23:04,516.516 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 00:23:06,556.556 INFO    ] ================================================
[2026-06-12 00:23:06,571.571 INFO    ] Launching Daemon at Fri Jun 12 00:23:06 IST 2026
[2026-06-12 00:23:06,582.582 INFO    ] ================================================
[2026-06-12 00:23:06,938.938 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 00:23:06
[2026-06-12 00:23:07,251.251 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 00:23:07,381.381 INFO    ] Initializing speech engine...
[2026-06-12 00:23:07,385.385 INFO    ] 2026-06-12 00:23:07
[2026-06-12 00:23:07,604.604 INFO    ] 2026-06-12 00:23:07
[2026-06-12 00:23:07,633.633 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 00:23:07,820.820 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 00:23:07,828.828 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 00:23:07,957.957 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 00:23:08,014.014 INFO    ] time= 12/06/2026 00:23:07
[2026-06-12 00:23:08,053.053 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 00:23:08,055.055 INFO    ] Checking for existing commands in stream...
[2026-06-12 00:23:08,151.151 INFO    ] No existing commands found in stream
[2026-06-12 00:23:13,160.160 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 00:23:13,163.163 INFO    ] Waiting 3.43 seconds before fallback handling...
[2026-06-12 00:23:16,968.968 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 00:23:16,969.969 INFO    ] Checking for system updates...
[2026-06-12 00:23:16,991.991 INFO    ] 200
[2026-06-12 00:23:16,992.992 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:23:17,022.022 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 00:23:17,024.024 INFO    ] No update needed
[2026-06-12 00:23:17,025.025 INFO    ] Checking for camera pi updates...
[2026-06-12 00:23:17,044.044 INFO    ] 200
[2026-06-12 00:23:17,046.046 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:23:17,073.073 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 00:23:17,127.127 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 00:23:17,129.129 INFO    ] No camera update needed
[2026-06-12 00:23:17,130.130 INFO    ] Script finished. Safe exiting...
[2026-06-12 00:23:17,131.131 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 00:23:17,134.134 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 00:23:17,137.137 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 00:23:19,177.177 INFO    ] ================================================
[2026-06-12 00:23:19,192.192 INFO    ] Launching Daemon at Fri Jun 12 00:23:19 IST 2026
[2026-06-12 00:23:19,204.204 INFO    ] ================================================
[2026-06-12 00:23:19,567.567 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 00:23:19
[2026-06-12 00:23:19,910.910 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 00:23:20,060.060 INFO    ] Initializing speech engine...
[2026-06-12 00:23:20,066.066 INFO    ] 2026-06-12 00:23:20
[2026-06-12 00:23:20,273.273 INFO    ] 2026-06-12 00:23:20
[2026-06-12 00:23:20,305.305 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 00:23:20,427.427 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 00:23:20,490.490 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 00:23:20,621.621 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 00:23:20,678.678 INFO    ] time= 12/06/2026 00:23:20
[2026-06-12 00:23:20,680.680 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 00:23:20,681.681 INFO    ] Checking for existing commands in stream...
[2026-06-12 00:23:20,792.792 INFO    ] No existing commands found in stream
[2026-06-12 00:23:25,803.803 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 00:23:25,806.806 INFO    ] Waiting 3.36 seconds before fallback handling...
[2026-06-12 00:23:29,516.516 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 00:23:29,518.518 INFO    ] Checking for system updates...
[2026-06-12 00:23:29,539.539 INFO    ] 200
[2026-06-12 00:23:29,541.541 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:23:29,572.572 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 00:23:29,574.574 INFO    ] No update needed
[2026-06-12 00:23:29,575.575 INFO    ] Checking for camera pi updates...
[2026-06-12 00:23:29,595.595 INFO    ] 200
[2026-06-12 00:23:29,596.596 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:23:29,620.620 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 00:23:29,649.649 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 00:23:29,650.650 INFO    ] No camera update needed
[2026-06-12 00:23:29,652.652 INFO    ] Script finished. Safe exiting...
[2026-06-12 00:23:29,653.653 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 00:23:29,656.656 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 00:23:29,659.659 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 00:23:31,692.692 INFO    ] ================================================
[2026-06-12 00:23:31,702.702 INFO    ] Launching Daemon at Fri Jun 12 00:23:31 IST 2026
[2026-06-12 00:23:31,709.709 INFO    ] ================================================
[2026-06-12 00:23:32,074.074 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 00:23:32
[2026-06-12 00:23:32,419.419 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 00:23:32,574.574 INFO    ] Initializing speech engine...
[2026-06-12 00:23:32,578.578 INFO    ] 2026-06-12 00:23:32
[2026-06-12 00:23:32,789.789 INFO    ] 2026-06-12 00:23:32
[2026-06-12 00:23:32,819.819 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 00:23:33,006.006 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 00:23:33,016.016 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 00:23:33,154.154 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 00:23:33,218.218 INFO    ] time= 12/06/2026 00:23:33
[2026-06-12 00:23:33,242.242 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 00:23:33,249.249 INFO    ] Checking for existing commands in stream...
[2026-06-12 00:23:33,317.317 INFO    ] No existing commands found in stream
[2026-06-12 00:23:38,331.331 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 00:23:38,335.335 INFO    ] Waiting 3.32 seconds before fallback handling...
[2026-06-12 00:23:42,017.017 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 00:23:42,019.019 INFO    ] Checking for system updates...
[2026-06-12 00:23:42,042.042 INFO    ] 200
[2026-06-12 00:23:42,043.043 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:23:42,076.076 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 00:23:42,077.077 INFO    ] No update needed
[2026-06-12 00:23:42,079.079 INFO    ] Checking for camera pi updates...
[2026-06-12 00:23:42,099.099 INFO    ] 200
[2026-06-12 00:23:42,102.102 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:23:42,132.132 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 00:23:42,201.201 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 00:23:42,202.202 INFO    ] No camera update needed
[2026-06-12 00:23:42,204.204 INFO    ] Script finished. Safe exiting...
[2026-06-12 00:23:42,205.205 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 00:23:42,208.208 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 00:23:42,211.211 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 00:23:44,250.250 INFO    ] ================================================
[2026-06-12 00:23:44,266.266 INFO    ] Launching Daemon at Fri Jun 12 00:23:44 IST 2026
[2026-06-12 00:23:44,358.358 INFO    ] ================================================
[2026-06-12 00:23:44,715.715 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 00:23:44
[2026-06-12 00:23:45,034.034 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 00:23:45,177.177 INFO    ] Initializing speech engine...
[2026-06-12 00:23:45,182.182 INFO    ] 2026-06-12 00:23:45
[2026-06-12 00:23:45,386.386 INFO    ] 2026-06-12 00:23:45
[2026-06-12 00:23:45,414.414 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 00:23:45,596.596 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 00:23:45,606.606 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 00:23:45,732.732 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 00:23:45,793.793 INFO    ] time= 12/06/2026 00:23:45
[2026-06-12 00:23:45,825.825 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 00:23:45,831.831 INFO    ] Checking for existing commands in stream...
[2026-06-12 00:23:45,896.896 INFO    ] No existing commands found in stream
[2026-06-12 00:23:50,906.906 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 00:23:50,909.909 INFO    ] Waiting 2.23 seconds before fallback handling...
[2026-06-12 00:23:53,517.517 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 00:23:53,518.518 INFO    ] Checking for system updates...
[2026-06-12 00:23:53,540.540 INFO    ] 200
[2026-06-12 00:23:53,542.542 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:23:53,572.572 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 00:23:53,573.573 INFO    ] No update needed
[2026-06-12 00:23:53,575.575 INFO    ] Checking for camera pi updates...
[2026-06-12 00:23:53,594.594 INFO    ] 200
[2026-06-12 00:23:53,595.595 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:23:53,621.621 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 00:23:53,663.663 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 00:23:53,664.664 INFO    ] No camera update needed
[2026-06-12 00:23:53,665.665 INFO    ] Script finished. Safe exiting...
[2026-06-12 00:23:53,667.667 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 00:23:53,670.670 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 00:23:53,672.672 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 00:23:55,712.712 INFO    ] ================================================
[2026-06-12 00:23:55,728.728 INFO    ] Launching Daemon at Fri Jun 12 00:23:55 IST 2026
[2026-06-12 00:23:55,738.738 INFO    ] ================================================
[2026-06-12 00:23:56,110.110 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 00:23:56
[2026-06-12 00:23:56,449.449 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 00:23:56,601.601 INFO    ] Initializing speech engine...
[2026-06-12 00:23:56,605.605 INFO    ] 2026-06-12 00:23:56
[2026-06-12 00:23:56,817.817 INFO    ] 2026-06-12 00:23:56
[2026-06-12 00:23:56,846.846 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 00:23:57,036.036 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 00:23:57,045.045 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 00:23:57,203.203 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 00:23:57,248.248 INFO    ] time= 12/06/2026 00:23:57
[2026-06-12 00:23:57,270.270 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 00:23:57,277.277 INFO    ] Checking for existing commands in stream...
[2026-06-12 00:23:57,344.344 INFO    ] No existing commands found in stream
[2026-06-12 00:24:02,362.362 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 00:24:02,364.364 INFO    ] Waiting 0.45 seconds before fallback handling...
[2026-06-12 00:24:03,133.133 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 00:24:03,136.136 INFO    ] Checking for system updates...
[2026-06-12 00:24:03,172.172 INFO    ] 200
[2026-06-12 00:24:03,175.175 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:24:03,227.227 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 00:24:03,229.229 INFO    ] No update needed
[2026-06-12 00:24:03,232.232 INFO    ] Checking for camera pi updates...
[2026-06-12 00:24:03,270.270 INFO    ] 200
[2026-06-12 00:24:03,272.272 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:24:03,298.298 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 00:24:03,345.345 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 00:24:03,346.346 INFO    ] No camera update needed
[2026-06-12 00:24:03,348.348 INFO    ] Script finished. Safe exiting...
[2026-06-12 00:24:03,349.349 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 00:24:03,352.352 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 00:24:03,354.354 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 00:24:05,394.394 INFO    ] ================================================
[2026-06-12 00:24:05,409.409 INFO    ] Launching Daemon at Fri Jun 12 00:24:05 IST 2026
[2026-06-12 00:24:05,420.420 INFO    ] ================================================
[2026-06-12 00:24:05,800.800 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 00:24:05
[2026-06-12 00:24:06,116.116 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 00:24:06,260.260 INFO    ] Initializing speech engine...
[2026-06-12 00:24:06,276.276 INFO    ] 2026-06-12 00:24:06
[2026-06-12 00:24:06,537.537 INFO    ] 2026-06-12 00:24:06
[2026-06-12 00:24:06,568.568 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 00:24:06,766.766 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 00:24:06,777.777 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 00:24:06,911.911 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 00:24:06,972.972 INFO    ] time= 12/06/2026 00:24:06
[2026-06-12 00:24:07,002.002 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 00:24:07,019.019 INFO    ] Checking for existing commands in stream...
[2026-06-12 00:24:07,094.094 INFO    ] No existing commands found in stream
[2026-06-12 00:24:12,102.102 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 00:24:12,105.105 INFO    ] Waiting 1.38 seconds before fallback handling...
[2026-06-12 00:24:13,879.879 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 00:24:13,880.880 INFO    ] Checking for system updates...
[2026-06-12 00:24:13,901.901 INFO    ] 200
[2026-06-12 00:24:13,902.902 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:24:13,933.933 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 00:24:13,934.934 INFO    ] No update needed
[2026-06-12 00:24:13,936.936 INFO    ] Checking for camera pi updates...
[2026-06-12 00:24:13,958.958 INFO    ] 200
[2026-06-12 00:24:13,960.960 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:24:13,985.985 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 00:24:14,026.026 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 00:24:14,028.028 INFO    ] No camera update needed
[2026-06-12 00:24:14,029.029 INFO    ] Script finished. Safe exiting...
[2026-06-12 00:24:14,031.031 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 00:24:14,034.034 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 00:24:14,036.036 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 00:24:16,075.075 INFO    ] ================================================
[2026-06-12 00:24:16,090.090 INFO    ] Launching Daemon at Fri Jun 12 00:24:16 IST 2026
[2026-06-12 00:24:16,100.100 INFO    ] ================================================
[2026-06-12 00:24:16,439.439 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 00:24:16
[2026-06-12 00:24:16,758.758 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 00:24:16,898.898 INFO    ] Initializing speech engine...
[2026-06-12 00:24:16,905.905 INFO    ] 2026-06-12 00:24:16
[2026-06-12 00:24:17,132.132 INFO    ] 2026-06-12 00:24:17
[2026-06-12 00:24:17,163.163 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 00:24:17,297.297 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 00:24:17,365.365 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 00:24:17,508.508 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 00:24:17,565.565 INFO    ] time= 12/06/2026 00:24:17
[2026-06-12 00:24:17,606.606 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 00:24:17,617.617 INFO    ] Checking for existing commands in stream...
[2026-06-12 00:24:17,694.694 INFO    ] No existing commands found in stream
[2026-06-12 00:24:22,705.705 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 00:24:22,707.707 INFO    ] Waiting 1.38 seconds before fallback handling...
[2026-06-12 00:24:24,450.450 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 00:24:24,452.452 INFO    ] Checking for system updates...
[2026-06-12 00:24:24,472.472 INFO    ] 200
[2026-06-12 00:24:24,474.474 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:24:24,504.504 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 00:24:24,505.505 INFO    ] No update needed
[2026-06-12 00:24:24,507.507 INFO    ] Checking for camera pi updates...
[2026-06-12 00:24:24,528.528 INFO    ] 200
[2026-06-12 00:24:24,530.530 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:24:24,553.553 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 00:24:24,605.605 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 00:24:24,607.607 INFO    ] No camera update needed
[2026-06-12 00:24:24,608.608 INFO    ] Script finished. Safe exiting...
[2026-06-12 00:24:24,609.609 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 00:24:24,613.613 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 00:24:24,615.615 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 00:24:26,655.655 INFO    ] ================================================
[2026-06-12 00:24:26,671.671 INFO    ] Launching Daemon at Fri Jun 12 00:24:26 IST 2026
[2026-06-12 00:24:26,682.682 INFO    ] ================================================
[2026-06-12 00:24:27,027.027 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 00:24:27
[2026-06-12 00:24:27,338.338 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 00:24:27,470.470 INFO    ] Initializing speech engine...
[2026-06-12 00:24:27,482.482 INFO    ] 2026-06-12 00:24:27
[2026-06-12 00:24:27,691.691 INFO    ] 2026-06-12 00:24:27
[2026-06-12 00:24:27,719.719 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 00:24:27,901.901 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 00:24:27,905.905 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 00:24:28,043.043 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 00:24:28,107.107 INFO    ] time= 12/06/2026 00:24:28
[2026-06-12 00:24:28,135.135 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 00:24:28,141.141 INFO    ] Checking for existing commands in stream...
[2026-06-12 00:24:28,208.208 INFO    ] No existing commands found in stream
[2026-06-12 00:24:33,221.221 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 00:24:33,223.223 INFO    ] Waiting 3.12 seconds before fallback handling...
[2026-06-12 00:24:36,717.717 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 00:24:36,719.719 INFO    ] Checking for system updates...
[2026-06-12 00:24:36,739.739 INFO    ] 200
[2026-06-12 00:24:36,741.741 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:24:36,773.773 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 00:24:36,774.774 INFO    ] No update needed
[2026-06-12 00:24:36,776.776 INFO    ] Checking for camera pi updates...
[2026-06-12 00:24:36,795.795 INFO    ] 200
[2026-06-12 00:24:36,796.796 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:24:36,821.821 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 00:24:36,867.867 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 00:24:36,868.868 INFO    ] No camera update needed
[2026-06-12 00:24:36,869.869 INFO    ] Script finished. Safe exiting...
[2026-06-12 00:24:36,871.871 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 00:24:36,874.874 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 00:24:36,876.876 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 00:24:38,915.915 INFO    ] ================================================
[2026-06-12 00:24:38,930.930 INFO    ] Launching Daemon at Fri Jun 12 00:24:38 IST 2026
[2026-06-12 00:24:38,941.941 INFO    ] ================================================
[2026-06-12 00:24:39,290.290 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 00:24:39
[2026-06-12 00:24:39,604.604 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 00:24:39,751.751 INFO    ] Initializing speech engine...
[2026-06-12 00:24:39,758.758 INFO    ] 2026-06-12 00:24:39
[2026-06-12 00:24:39,981.981 INFO    ] 2026-06-12 00:24:39
[2026-06-12 00:24:40,012.012 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 00:24:40,151.151 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 00:24:40,215.215 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 00:24:40,359.359 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 00:24:40,410.410 INFO    ] time= 12/06/2026 00:24:40
[2026-06-12 00:24:40,445.445 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 00:24:40,468.468 INFO    ] Checking for existing commands in stream...
[2026-06-12 00:24:40,545.545 INFO    ] No existing commands found in stream
[2026-06-12 00:24:45,554.554 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 00:24:45,556.556 INFO    ] Waiting 3.55 seconds before fallback handling...
[2026-06-12 00:24:49,510.510 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 00:24:49,512.512 INFO    ] Checking for system updates...
[2026-06-12 00:24:49,537.537 INFO    ] 200
[2026-06-12 00:24:49,538.538 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:24:49,571.571 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 00:24:49,573.573 INFO    ] No update needed
[2026-06-12 00:24:49,575.575 INFO    ] Checking for camera pi updates...
[2026-06-12 00:24:49,596.596 INFO    ] 200
[2026-06-12 00:24:49,597.597 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:24:49,625.625 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 00:24:49,673.673 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 00:24:49,675.675 INFO    ] No camera update needed
[2026-06-12 00:24:49,677.677 INFO    ] Script finished. Safe exiting...
[2026-06-12 00:24:49,678.678 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 00:24:49,682.682 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 00:24:49,685.685 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 00:24:51,725.725 INFO    ] ================================================
[2026-06-12 00:24:51,741.741 INFO    ] Launching Daemon at Fri Jun 12 00:24:51 IST 2026
[2026-06-12 00:24:51,752.752 INFO    ] ================================================
[2026-06-12 00:24:52,121.121 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 00:24:52
[2026-06-12 00:24:52,463.463 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 00:24:52,610.610 INFO    ] Initializing speech engine...
[2026-06-12 00:24:52,620.620 INFO    ] 2026-06-12 00:24:52
[2026-06-12 00:24:52,829.829 INFO    ] 2026-06-12 00:24:52
[2026-06-12 00:24:52,859.859 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 00:24:53,043.043 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 00:24:53,053.053 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 00:24:53,180.180 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 00:24:53,242.242 INFO    ] time= 12/06/2026 00:24:53
[2026-06-12 00:24:53,275.275 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 00:24:53,277.277 INFO    ] Checking for existing commands in stream...
[2026-06-12 00:24:53,349.349 INFO    ] No existing commands found in stream
[2026-06-12 00:24:58,364.364 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 00:24:58,367.367 INFO    ] Waiting 3.31 seconds before fallback handling...
[2026-06-12 00:25:02,079.079 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 00:25:02,084.084 INFO    ] Checking for system updates...
[2026-06-12 00:25:02,134.134 INFO    ] 200
[2026-06-12 00:25:02,137.137 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:25:02,214.214 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 00:25:02,216.216 INFO    ] No update needed
[2026-06-12 00:25:02,219.219 INFO    ] Checking for camera pi updates...
[2026-06-12 00:25:02,253.253 INFO    ] 200
[2026-06-12 00:25:02,255.255 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:25:02,289.289 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 00:25:02,343.343 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 00:25:02,346.346 INFO    ] No camera update needed
[2026-06-12 00:25:02,349.349 INFO    ] Script finished. Safe exiting...
[2026-06-12 00:25:02,352.352 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 00:25:02,358.358 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 00:25:02,363.363 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 00:25:04,404.404 INFO    ] ================================================
[2026-06-12 00:25:04,419.419 INFO    ] Launching Daemon at Fri Jun 12 00:25:04 IST 2026
[2026-06-12 00:25:04,429.429 INFO    ] ================================================
[2026-06-12 00:25:04,817.817 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 00:25:04
[2026-06-12 00:25:05,157.157 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 00:25:05,306.306 INFO    ] Initializing speech engine...
[2026-06-12 00:25:05,319.319 INFO    ] 2026-06-12 00:25:05
[2026-06-12 00:25:05,531.531 INFO    ] 2026-06-12 00:25:05
[2026-06-12 00:25:05,560.560 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 00:25:05,748.748 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 00:25:05,758.758 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 00:25:05,903.903 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 00:25:05,962.962 INFO    ] time= 12/06/2026 00:25:05
[2026-06-12 00:25:05,985.985 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 00:25:05,992.992 INFO    ] Checking for existing commands in stream...
[2026-06-12 00:25:06,068.068 INFO    ] No existing commands found in stream
[2026-06-12 00:25:11,077.077 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 00:25:11,081.081 INFO    ] Waiting 3.28 seconds before fallback handling...
[2026-06-12 00:25:14,758.758 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 00:25:14,760.760 INFO    ] Checking for system updates...
[2026-06-12 00:25:14,781.781 INFO    ] 200
[2026-06-12 00:25:14,783.783 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:25:14,813.813 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 00:25:14,814.814 INFO    ] No update needed
[2026-06-12 00:25:14,816.816 INFO    ] Checking for camera pi updates...
[2026-06-12 00:25:14,837.837 INFO    ] 200
[2026-06-12 00:25:14,838.838 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:25:14,861.861 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 00:25:14,915.915 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 00:25:14,916.916 INFO    ] No camera update needed
[2026-06-12 00:25:14,917.917 INFO    ] Script finished. Safe exiting...
[2026-06-12 00:25:14,918.918 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 00:25:14,922.922 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 00:25:14,924.924 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 00:25:16,964.964 INFO    ] ================================================
[2026-06-12 00:25:16,979.979 INFO    ] Launching Daemon at Fri Jun 12 00:25:16 IST 2026
[2026-06-12 00:25:16,990.990 INFO    ] ================================================
[2026-06-12 00:25:17,364.364 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 00:25:17
[2026-06-12 00:25:17,703.703 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 00:25:17,855.855 INFO    ] Initializing speech engine...
[2026-06-12 00:25:17,861.861 INFO    ] 2026-06-12 00:25:17
[2026-06-12 00:25:18,072.072 INFO    ] 2026-06-12 00:25:18
[2026-06-12 00:25:18,101.101 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 00:25:18,289.289 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 00:25:18,298.298 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 00:25:18,436.436 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 00:25:18,502.502 INFO    ] time= 12/06/2026 00:25:18
[2026-06-12 00:25:18,528.528 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 00:25:18,530.530 INFO    ] Checking for existing commands in stream...
[2026-06-12 00:25:18,598.598 INFO    ] No existing commands found in stream
[2026-06-12 00:25:23,623.623 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 00:25:23,626.626 INFO    ] Waiting 1.97 seconds before fallback handling...
[2026-06-12 00:25:25,959.959 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 00:25:25,961.961 INFO    ] Checking for system updates...
[2026-06-12 00:25:25,981.981 INFO    ] 200
[2026-06-12 00:25:25,983.983 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:25:26,013.013 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 00:25:26,015.015 INFO    ] No update needed
[2026-06-12 00:25:26,016.016 INFO    ] Checking for camera pi updates...
[2026-06-12 00:25:26,036.036 INFO    ] 200
[2026-06-12 00:25:26,037.037 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:25:26,064.064 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 00:25:26,105.105 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 00:25:26,107.107 INFO    ] No camera update needed
[2026-06-12 00:25:26,108.108 INFO    ] Script finished. Safe exiting...
[2026-06-12 00:25:26,109.109 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 00:25:26,113.113 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 00:25:26,115.115 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 00:25:28,155.155 INFO    ] ================================================
[2026-06-12 00:25:28,172.172 INFO    ] Launching Daemon at Fri Jun 12 00:25:28 IST 2026
[2026-06-12 00:25:28,182.182 INFO    ] ================================================
[2026-06-12 00:25:28,504.504 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 00:25:28
[2026-06-12 00:25:28,815.815 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 00:25:28,952.952 INFO    ] Initializing speech engine...
[2026-06-12 00:25:28,964.964 INFO    ] 2026-06-12 00:25:28
[2026-06-12 00:25:29,173.173 INFO    ] 2026-06-12 00:25:29
[2026-06-12 00:25:29,202.202 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 00:25:29,386.386 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 00:25:29,395.395 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 00:25:29,535.535 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 00:25:29,593.593 INFO    ] time= 12/06/2026 00:25:29
[2026-06-12 00:25:29,615.615 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 00:25:29,622.622 INFO    ] Checking for existing commands in stream...
[2026-06-12 00:25:29,689.689 INFO    ] No existing commands found in stream
[2026-06-12 00:25:34,704.704 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 00:25:34,707.707 INFO    ] Waiting 0.40 seconds before fallback handling...
[2026-06-12 00:25:35,514.514 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 00:25:35,516.516 INFO    ] Checking for system updates...
[2026-06-12 00:25:35,538.538 INFO    ] 200
[2026-06-12 00:25:35,540.540 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:25:35,573.573 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 00:25:35,574.574 INFO    ] No update needed
[2026-06-12 00:25:35,575.575 INFO    ] Checking for camera pi updates...
[2026-06-12 00:25:35,596.596 INFO    ] 200
[2026-06-12 00:25:35,598.598 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:25:35,624.624 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 00:25:35,667.667 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 00:25:35,669.669 INFO    ] No camera update needed
[2026-06-12 00:25:35,670.670 INFO    ] Script finished. Safe exiting...
[2026-06-12 00:25:35,672.672 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 00:25:35,675.675 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 00:25:35,678.678 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 00:25:37,717.717 INFO    ] ================================================
[2026-06-12 00:25:37,733.733 INFO    ] Launching Daemon at Fri Jun 12 00:25:37 IST 2026
[2026-06-12 00:25:37,744.744 INFO    ] ================================================
[2026-06-12 00:25:38,085.085 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 00:25:38
[2026-06-12 00:25:38,400.400 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 00:25:38,532.532 INFO    ] Initializing speech engine...
[2026-06-12 00:25:38,535.535 INFO    ] 2026-06-12 00:25:38
[2026-06-12 00:25:38,751.751 INFO    ] 2026-06-12 00:25:38
[2026-06-12 00:25:38,782.782 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 00:25:38,965.965 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 00:25:38,974.974 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 00:25:39,103.103 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 00:25:39,171.171 INFO    ] time= 12/06/2026 00:25:39
[2026-06-12 00:25:39,195.195 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 00:25:39,201.201 INFO    ] Checking for existing commands in stream...
[2026-06-12 00:25:39,268.268 INFO    ] No existing commands found in stream
[2026-06-12 00:25:44,272.272 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 00:25:44,275.275 INFO    ] Waiting 0.43 seconds before fallback handling...
[2026-06-12 00:25:45,084.084 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 00:25:45,086.086 INFO    ] Checking for system updates...
[2026-06-12 00:25:45,107.107 INFO    ] 200
[2026-06-12 00:25:45,108.108 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:25:45,141.141 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 00:25:45,143.143 INFO    ] No update needed
[2026-06-12 00:25:45,144.144 INFO    ] Checking for camera pi updates...
[2026-06-12 00:25:45,164.164 INFO    ] 200
[2026-06-12 00:25:45,165.165 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:25:45,188.188 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 00:25:45,237.237 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 00:25:45,238.238 INFO    ] No camera update needed
[2026-06-12 00:25:45,240.240 INFO    ] Script finished. Safe exiting...
[2026-06-12 00:25:45,241.241 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 00:25:45,245.245 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 00:25:45,248.248 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 00:25:47,289.289 INFO    ] ================================================
[2026-06-12 00:25:47,305.305 INFO    ] Launching Daemon at Fri Jun 12 00:25:47 IST 2026
[2026-06-12 00:25:47,316.316 INFO    ] ================================================
[2026-06-12 00:25:47,665.665 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 00:25:47
[2026-06-12 00:25:47,982.982 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 00:25:48,126.126 INFO    ] Initializing speech engine...
[2026-06-12 00:25:48,131.131 INFO    ] 2026-06-12 00:25:48
[2026-06-12 00:25:48,336.336 INFO    ] 2026-06-12 00:25:48
[2026-06-12 00:25:48,365.365 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 00:25:48,549.549 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 00:25:48,557.557 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 00:25:48,704.704 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 00:25:48,757.757 INFO    ] time= 12/06/2026 00:25:48
[2026-06-12 00:25:48,779.779 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 00:25:48,785.785 INFO    ] Checking for existing commands in stream...
[2026-06-12 00:25:48,853.853 INFO    ] No existing commands found in stream
[2026-06-12 00:25:53,862.862 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 00:25:53,864.864 INFO    ] Waiting 3.13 seconds before fallback handling...
[2026-06-12 00:25:57,389.389 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 00:25:57,390.390 INFO    ] Checking for system updates...
[2026-06-12 00:25:57,411.411 INFO    ] 200
[2026-06-12 00:25:57,412.412 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:25:57,442.442 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 00:25:57,444.444 INFO    ] No update needed
[2026-06-12 00:25:57,445.445 INFO    ] Checking for camera pi updates...
[2026-06-12 00:25:57,466.466 INFO    ] 200
[2026-06-12 00:25:57,467.467 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:25:57,490.490 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 00:25:57,533.533 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 00:25:57,534.534 INFO    ] No camera update needed
[2026-06-12 00:25:57,536.536 INFO    ] Script finished. Safe exiting...
[2026-06-12 00:25:57,537.537 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 00:25:57,540.540 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 00:25:57,543.543 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 00:25:59,582.582 INFO    ] ================================================
[2026-06-12 00:25:59,597.597 INFO    ] Launching Daemon at Fri Jun 12 00:25:59 IST 2026
[2026-06-12 00:25:59,608.608 INFO    ] ================================================
[2026-06-12 00:25:59,939.939 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 00:25:59
[2026-06-12 00:26:00,256.256 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 00:26:00,393.393 INFO    ] Initializing speech engine...
[2026-06-12 00:26:00,407.407 INFO    ] 2026-06-12 00:26:00
[2026-06-12 00:26:00,631.631 INFO    ] 2026-06-12 00:26:00
[2026-06-12 00:26:00,662.662 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 00:26:00,861.861 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 00:26:00,865.865 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 00:26:01,011.011 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 00:26:01,065.065 INFO    ] time= 12/06/2026 00:26:01
[2026-06-12 00:26:01,073.073 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 00:26:01,093.093 INFO    ] Checking for existing commands in stream...
[2026-06-12 00:26:01,172.172 INFO    ] No existing commands found in stream
[2026-06-12 00:26:06,181.181 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 00:26:06,190.190 INFO    ] Waiting 2.18 seconds before fallback handling...
[2026-06-12 00:26:08,720.720 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 00:26:08,722.722 INFO    ] Checking for system updates...
[2026-06-12 00:26:08,742.742 INFO    ] 200
[2026-06-12 00:26:08,743.743 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:26:08,773.773 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 00:26:08,775.775 INFO    ] No update needed
[2026-06-12 00:26:08,776.776 INFO    ] Checking for camera pi updates...
[2026-06-12 00:26:08,795.795 INFO    ] 200
[2026-06-12 00:26:08,796.796 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:26:08,821.821 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 00:26:08,960.960 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 00:26:08,961.961 INFO    ] No camera update needed
[2026-06-12 00:26:08,963.963 INFO    ] Script finished. Safe exiting...
[2026-06-12 00:26:08,964.964 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 00:26:08,967.967 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 00:26:08,969.969 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 00:26:11,009.009 INFO    ] ================================================
[2026-06-12 00:26:11,024.024 INFO    ] Launching Daemon at Fri Jun 12 00:26:11 IST 2026
[2026-06-12 00:26:11,035.035 INFO    ] ================================================
[2026-06-12 00:26:11,383.383 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 00:26:11
[2026-06-12 00:26:11,701.701 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 00:26:11,835.835 INFO    ] Initializing speech engine...
[2026-06-12 00:26:11,845.845 INFO    ] 2026-06-12 00:26:11
[2026-06-12 00:26:12,070.070 INFO    ] 2026-06-12 00:26:12
[2026-06-12 00:26:12,101.101 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 00:26:12,299.299 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 00:26:12,303.303 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 00:26:12,447.447 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 00:26:12,499.499 INFO    ] time= 12/06/2026 00:26:12
[2026-06-12 00:26:12,544.544 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 00:26:12,551.551 INFO    ] Checking for existing commands in stream...
[2026-06-12 00:26:12,628.628 INFO    ] No existing commands found in stream
[2026-06-12 00:26:17,632.632 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 00:26:17,635.635 INFO    ] Waiting 2.52 seconds before fallback handling...
[2026-06-12 00:26:20,519.519 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 00:26:20,520.520 INFO    ] Checking for system updates...
[2026-06-12 00:26:20,541.541 INFO    ] 200
[2026-06-12 00:26:20,543.543 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:26:20,575.575 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 00:26:20,576.576 INFO    ] No update needed
[2026-06-12 00:26:20,577.577 INFO    ] Checking for camera pi updates...
[2026-06-12 00:26:20,596.596 INFO    ] 200
[2026-06-12 00:26:20,597.597 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:26:20,621.621 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 00:26:20,666.666 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 00:26:20,668.668 INFO    ] No camera update needed
[2026-06-12 00:26:20,669.669 INFO    ] Script finished. Safe exiting...
[2026-06-12 00:26:20,670.670 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 00:26:20,673.673 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 00:26:20,679.679 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 00:26:22,719.719 INFO    ] ================================================
[2026-06-12 00:26:22,735.735 INFO    ] Launching Daemon at Fri Jun 12 00:26:22 IST 2026
[2026-06-12 00:26:22,745.745 INFO    ] ================================================
[2026-06-12 00:26:23,120.120 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 00:26:23
[2026-06-12 00:26:23,435.435 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 00:26:23,568.568 INFO    ] Initializing speech engine...
[2026-06-12 00:26:23,576.576 INFO    ] 2026-06-12 00:26:23
[2026-06-12 00:26:23,788.788 INFO    ] 2026-06-12 00:26:23
[2026-06-12 00:26:23,817.817 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 00:26:24,003.003 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 00:26:24,013.013 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 00:26:24,152.152 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 00:26:24,209.209 INFO    ] time= 12/06/2026 00:26:24
[2026-06-12 00:26:24,233.233 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 00:26:24,239.239 INFO    ] Checking for existing commands in stream...
[2026-06-12 00:26:24,310.310 INFO    ] No existing commands found in stream
[2026-06-12 00:26:29,324.324 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 00:26:29,327.327 INFO    ] Waiting 1.78 seconds before fallback handling...
[2026-06-12 00:26:31,503.503 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 00:26:31,505.505 INFO    ] Checking for system updates...
[2026-06-12 00:26:31,530.530 INFO    ] 200
[2026-06-12 00:26:31,532.532 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:26:31,575.575 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 00:26:31,577.577 INFO    ] No update needed
[2026-06-12 00:26:31,578.578 INFO    ] Checking for camera pi updates...
[2026-06-12 00:26:31,600.600 INFO    ] 200
[2026-06-12 00:26:31,602.602 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:26:31,630.630 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 00:26:31,669.669 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 00:26:31,671.671 INFO    ] No camera update needed
[2026-06-12 00:26:31,672.672 INFO    ] Script finished. Safe exiting...
[2026-06-12 00:26:31,674.674 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 00:26:31,677.677 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 00:26:31,681.681 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 00:26:33,712.712 INFO    ] ================================================
[2026-06-12 00:26:33,728.728 INFO    ] Launching Daemon at Fri Jun 12 00:26:33 IST 2026
[2026-06-12 00:26:33,738.738 INFO    ] ================================================
[2026-06-12 00:26:34,102.102 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 00:26:34
[2026-06-12 00:26:34,416.416 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 00:26:34,548.548 INFO    ] Initializing speech engine...
[2026-06-12 00:26:34,553.553 INFO    ] 2026-06-12 00:26:34
[2026-06-12 00:26:34,780.780 INFO    ] 2026-06-12 00:26:34
[2026-06-12 00:26:34,810.810 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 00:26:34,940.940 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 00:26:34,979.979 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 00:26:35,150.150 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 00:26:35,212.212 INFO    ] time= 12/06/2026 00:26:35
[2026-06-12 00:26:35,246.246 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 00:26:35,258.258 INFO    ] Checking for existing commands in stream...
[2026-06-12 00:26:35,335.335 INFO    ] No existing commands found in stream
[2026-06-12 00:26:40,346.346 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 00:26:40,349.349 INFO    ] Waiting 0.84 seconds before fallback handling...
[2026-06-12 00:26:41,560.560 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 00:26:41,561.561 INFO    ] Checking for system updates...
[2026-06-12 00:26:41,582.582 INFO    ] 200
[2026-06-12 00:26:41,584.584 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:26:41,614.614 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 00:26:41,616.616 INFO    ] No update needed
[2026-06-12 00:26:41,617.617 INFO    ] Checking for camera pi updates...
[2026-06-12 00:26:41,637.637 INFO    ] 200
[2026-06-12 00:26:41,638.638 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:26:41,662.662 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 00:26:41,716.716 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 00:26:41,718.718 INFO    ] No camera update needed
[2026-06-12 00:26:41,719.719 INFO    ] Script finished. Safe exiting...
[2026-06-12 00:26:41,721.721 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 00:26:41,724.724 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 00:26:41,727.727 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 00:26:43,767.767 INFO    ] ================================================
[2026-06-12 00:26:43,783.783 INFO    ] Launching Daemon at Fri Jun 12 00:26:43 IST 2026
[2026-06-12 00:26:43,794.794 INFO    ] ================================================
[2026-06-12 00:26:44,148.148 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 00:26:44
[2026-06-12 00:26:44,463.463 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 00:26:44,601.601 INFO    ] Initializing speech engine...
[2026-06-12 00:26:44,608.608 INFO    ] 2026-06-12 00:26:44
[2026-06-12 00:26:44,815.815 INFO    ] 2026-06-12 00:26:44
[2026-06-12 00:26:44,845.845 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 00:26:45,027.027 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 00:26:45,036.036 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 00:26:45,180.180 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 00:26:45,238.238 INFO    ] time= 12/06/2026 00:26:45
[2026-06-12 00:26:45,258.258 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 00:26:45,260.260 INFO    ] Checking for existing commands in stream...
[2026-06-12 00:26:45,327.327 INFO    ] No existing commands found in stream
[2026-06-12 00:26:50,336.336 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 00:26:50,339.339 INFO    ] Waiting 1.58 seconds before fallback handling...
[2026-06-12 00:26:52,299.299 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 00:26:52,301.301 INFO    ] Checking for system updates...
[2026-06-12 00:26:52,322.322 INFO    ] 200
[2026-06-12 00:26:52,323.323 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:26:52,354.354 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 00:26:52,355.355 INFO    ] No update needed
[2026-06-12 00:26:52,356.356 INFO    ] Checking for camera pi updates...
[2026-06-12 00:26:52,376.376 INFO    ] 200
[2026-06-12 00:26:52,377.377 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:26:52,400.400 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 00:26:52,447.447 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 00:26:52,449.449 INFO    ] No camera update needed
[2026-06-12 00:26:52,450.450 INFO    ] Script finished. Safe exiting...
[2026-06-12 00:26:52,451.451 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 00:26:52,454.454 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 00:26:52,457.457 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 00:26:54,496.496 INFO    ] ================================================
[2026-06-12 00:26:54,512.512 INFO    ] Launching Daemon at Fri Jun 12 00:26:54 IST 2026
[2026-06-12 00:26:54,523.523 INFO    ] ================================================
[2026-06-12 00:26:54,908.908 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 00:26:54
[2026-06-12 00:26:55,240.240 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 00:26:55,390.390 INFO    ] Initializing speech engine...
[2026-06-12 00:26:55,396.396 INFO    ] 2026-06-12 00:26:55
[2026-06-12 00:26:55,606.606 INFO    ] 2026-06-12 00:26:55
[2026-06-12 00:26:55,636.636 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 00:26:55,821.821 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 00:26:55,831.831 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 00:26:55,962.962 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 00:26:56,030.030 INFO    ] time= 12/06/2026 00:26:55
[2026-06-12 00:26:56,055.055 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 00:26:56,061.061 INFO    ] Checking for existing commands in stream...
[2026-06-12 00:26:56,152.152 INFO    ] No existing commands found in stream
[2026-06-12 00:27:01,162.162 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 00:27:01,165.165 INFO    ] Waiting 3.77 seconds before fallback handling...
[2026-06-12 00:27:06,921.921 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 00:27:06,924.924 INFO    ] Checking for system updates...
[2026-06-12 00:27:06,965.965 INFO    ] 200
[2026-06-12 00:27:06,968.968 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:27:07,018.018 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 00:27:07,020.020 INFO    ] No update needed
[2026-06-12 00:27:07,021.021 INFO    ] Checking for camera pi updates...
[2026-06-12 00:27:07,043.043 INFO    ] 200
[2026-06-12 00:27:07,044.044 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:27:07,069.069 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 00:27:07,112.112 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 00:27:07,113.113 INFO    ] No camera update needed
[2026-06-12 00:27:07,115.115 INFO    ] Script finished. Safe exiting...
[2026-06-12 00:27:07,116.116 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 00:27:07,119.119 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 00:27:07,122.122 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 00:27:09,162.162 INFO    ] ================================================
[2026-06-12 00:27:09,178.178 INFO    ] Launching Daemon at Fri Jun 12 00:27:09 IST 2026
[2026-06-12 00:27:09,190.190 INFO    ] ================================================
[2026-06-12 00:27:09,571.571 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 00:27:09
[2026-06-12 00:27:09,908.908 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 00:27:10,060.060 INFO    ] Initializing speech engine...
[2026-06-12 00:27:10,066.066 INFO    ] 2026-06-12 00:27:10
[2026-06-12 00:27:10,276.276 INFO    ] 2026-06-12 00:27:10
[2026-06-12 00:27:10,305.305 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 00:27:10,446.446 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 00:27:10,495.495 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 00:27:10,642.642 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 00:27:10,705.705 INFO    ] time= 12/06/2026 00:27:10
[2026-06-12 00:27:10,729.729 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 00:27:10,735.735 INFO    ] Checking for existing commands in stream...
[2026-06-12 00:27:10,803.803 INFO    ] No existing commands found in stream
[2026-06-12 00:27:15,833.833 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 00:27:15,836.836 INFO    ] Waiting 3.04 seconds before fallback handling...
[2026-06-12 00:27:19,268.268 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 00:27:19,270.270 INFO    ] Checking for system updates...
[2026-06-12 00:27:19,291.291 INFO    ] 200
[2026-06-12 00:27:19,292.292 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:27:19,325.325 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 00:27:19,326.326 INFO    ] No update needed
[2026-06-12 00:27:19,328.328 INFO    ] Checking for camera pi updates...
[2026-06-12 00:27:19,347.347 INFO    ] 200
[2026-06-12 00:27:19,348.348 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:27:19,373.373 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 00:27:19,421.421 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 00:27:19,422.422 INFO    ] No camera update needed
[2026-06-12 00:27:19,423.423 INFO    ] Script finished. Safe exiting...
[2026-06-12 00:27:19,425.425 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 00:27:19,427.427 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 00:27:19,430.430 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 00:27:21,470.470 INFO    ] ================================================
[2026-06-12 00:27:21,486.486 INFO    ] Launching Daemon at Fri Jun 12 00:27:21 IST 2026
[2026-06-12 00:27:21,497.497 INFO    ] ================================================
[2026-06-12 00:27:21,860.860 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 00:27:21
[2026-06-12 00:27:22,177.177 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 00:27:22,310.310 INFO    ] Initializing speech engine...
[2026-06-12 00:27:22,314.314 INFO    ] 2026-06-12 00:27:22
[2026-06-12 00:27:22,506.506 INFO    ] 2026-06-12 00:27:22
[2026-06-12 00:27:22,551.551 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 00:27:22,710.710 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 00:27:22,748.748 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 00:27:22,920.920 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 00:27:22,957.957 INFO    ] time= 12/06/2026 00:27:22
[2026-06-12 00:27:23,004.004 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 00:27:23,028.028 INFO    ] Checking for existing commands in stream...
[2026-06-12 00:27:23,105.105 INFO    ] No existing commands found in stream
[2026-06-12 00:27:28,115.115 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 00:27:28,118.118 INFO    ] Waiting 3.77 seconds before fallback handling...
[2026-06-12 00:27:32,233.233 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 00:27:32,236.236 INFO    ] Checking for system updates...
[2026-06-12 00:27:32,271.271 INFO    ] 200
[2026-06-12 00:27:32,274.274 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:27:32,326.326 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 00:27:32,328.328 INFO    ] No update needed
[2026-06-12 00:27:32,331.331 INFO    ] Checking for camera pi updates...
[2026-06-12 00:27:32,365.365 INFO    ] 200
[2026-06-12 00:27:32,367.367 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:27:32,409.409 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 00:27:32,440.440 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 00:27:32,441.441 INFO    ] No camera update needed
[2026-06-12 00:27:32,442.442 INFO    ] Script finished. Safe exiting...
[2026-06-12 00:27:32,444.444 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 00:27:32,447.447 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 00:27:32,449.449 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 00:27:34,488.488 INFO    ] ================================================
[2026-06-12 00:27:34,503.503 INFO    ] Launching Daemon at Fri Jun 12 00:27:34 IST 2026
[2026-06-12 00:27:34,514.514 INFO    ] ================================================
[2026-06-12 00:27:34,856.856 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 00:27:34
[2026-06-12 00:27:35,168.168 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 00:27:35,311.311 INFO    ] Initializing speech engine...
[2026-06-12 00:27:35,316.316 INFO    ] 2026-06-12 00:27:35
[2026-06-12 00:27:35,522.522 INFO    ] 2026-06-12 00:27:35
[2026-06-12 00:27:35,552.552 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 00:27:35,738.738 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 00:27:35,741.741 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 00:27:35,872.872 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 00:27:35,923.923 INFO    ] time= 12/06/2026 00:27:35
[2026-06-12 00:27:35,969.969 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 00:27:35,974.974 INFO    ] Checking for existing commands in stream...
[2026-06-12 00:27:36,044.044 INFO    ] No existing commands found in stream
[2026-06-12 00:27:41,055.055 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 00:27:41,057.057 INFO    ] Waiting 3.29 seconds before fallback handling...
[2026-06-12 00:27:44,730.730 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 00:27:44,731.731 INFO    ] Checking for system updates...
[2026-06-12 00:27:44,752.752 INFO    ] 200
[2026-06-12 00:27:44,753.753 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:27:44,783.783 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 00:27:44,785.785 INFO    ] No update needed
[2026-06-12 00:27:44,786.786 INFO    ] Checking for camera pi updates...
[2026-06-12 00:27:44,805.805 INFO    ] 200
[2026-06-12 00:27:44,807.807 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:27:44,830.830 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 00:27:44,876.876 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 00:27:44,877.877 INFO    ] No camera update needed
[2026-06-12 00:27:44,878.878 INFO    ] Script finished. Safe exiting...
[2026-06-12 00:27:44,880.880 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 00:27:44,883.883 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 00:27:44,885.885 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 00:27:46,926.926 INFO    ] ================================================
[2026-06-12 00:27:46,941.941 INFO    ] Launching Daemon at Fri Jun 12 00:27:46 IST 2026
[2026-06-12 00:27:46,953.953 INFO    ] ================================================
[2026-06-12 00:27:47,307.307 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 00:27:47
[2026-06-12 00:27:47,624.624 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 00:27:47,763.763 INFO    ] Initializing speech engine...
[2026-06-12 00:27:47,773.773 INFO    ] 2026-06-12 00:27:47
[2026-06-12 00:27:47,979.979 INFO    ] 2026-06-12 00:27:47
[2026-06-12 00:27:48,007.007 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 00:27:48,189.189 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 00:27:48,193.193 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 00:27:48,328.328 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 00:27:48,392.392 INFO    ] time= 12/06/2026 00:27:48
[2026-06-12 00:27:48,418.418 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 00:27:48,425.425 INFO    ] Checking for existing commands in stream...
[2026-06-12 00:27:48,492.492 INFO    ] No existing commands found in stream
[2026-06-12 00:27:53,501.501 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 00:27:53,504.504 INFO    ] Waiting 3.02 seconds before fallback handling...
[2026-06-12 00:27:56,931.931 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 00:27:56,932.932 INFO    ] Checking for system updates...
[2026-06-12 00:27:56,953.953 INFO    ] 200
[2026-06-12 00:27:56,955.955 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:27:56,985.985 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 00:27:56,986.986 INFO    ] No update needed
[2026-06-12 00:27:56,988.988 INFO    ] Checking for camera pi updates...
[2026-06-12 00:27:57,007.007 INFO    ] 200
[2026-06-12 00:27:57,008.008 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:27:57,033.033 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 00:27:57,082.082 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 00:27:57,084.084 INFO    ] No camera update needed
[2026-06-12 00:27:57,085.085 INFO    ] Script finished. Safe exiting...
[2026-06-12 00:27:57,086.086 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 00:27:57,089.089 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 00:27:57,092.092 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 00:27:59,134.134 INFO    ] ================================================
[2026-06-12 00:27:59,149.149 INFO    ] Launching Daemon at Fri Jun 12 00:27:59 IST 2026
[2026-06-12 00:27:59,161.161 INFO    ] ================================================
[2026-06-12 00:27:59,499.499 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 00:27:59
[2026-06-12 00:27:59,815.815 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 00:27:59,957.957 INFO    ] Initializing speech engine...
[2026-06-12 00:27:59,962.962 INFO    ] 2026-06-12 00:27:59
[2026-06-12 00:28:00,165.165 INFO    ] 2026-06-12 00:28:00
[2026-06-12 00:28:00,193.193 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 00:28:00,378.378 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 00:28:00,387.387 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 00:28:00,516.516 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 00:28:00,580.580 INFO    ] time= 12/06/2026 00:28:00
[2026-06-12 00:28:00,608.608 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 00:28:00,614.614 INFO    ] Checking for existing commands in stream...
[2026-06-12 00:28:00,704.704 INFO    ] No existing commands found in stream
[2026-06-12 00:28:05,718.718 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 00:28:05,722.722 INFO    ] Waiting 2.58 seconds before fallback handling...
[2026-06-12 00:28:08,698.698 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 00:28:08,700.700 INFO    ] Checking for system updates...
[2026-06-12 00:28:08,722.722 INFO    ] 200
[2026-06-12 00:28:08,723.723 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:28:08,754.754 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 00:28:08,755.755 INFO    ] No update needed
[2026-06-12 00:28:08,757.757 INFO    ] Checking for camera pi updates...
[2026-06-12 00:28:08,776.776 INFO    ] 200
[2026-06-12 00:28:08,777.777 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:28:08,801.801 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 00:28:08,843.843 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 00:28:08,844.844 INFO    ] No camera update needed
[2026-06-12 00:28:08,846.846 INFO    ] Script finished. Safe exiting...
[2026-06-12 00:28:08,847.847 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 00:28:08,850.850 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 00:28:08,853.853 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 00:28:10,893.893 INFO    ] ================================================
[2026-06-12 00:28:10,909.909 INFO    ] Launching Daemon at Fri Jun 12 00:28:10 IST 2026
[2026-06-12 00:28:10,920.920 INFO    ] ================================================
[2026-06-12 00:28:11,262.262 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 00:28:11
[2026-06-12 00:28:11,575.575 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 00:28:11,712.712 INFO    ] Initializing speech engine...
[2026-06-12 00:28:11,722.722 INFO    ] 2026-06-12 00:28:11
[2026-06-12 00:28:11,926.926 INFO    ] 2026-06-12 00:28:11
[2026-06-12 00:28:11,955.955 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 00:28:12,092.092 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 00:28:12,139.139 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 00:28:12,275.275 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 00:28:12,341.341 INFO    ] time= 12/06/2026 00:28:12
[2026-06-12 00:28:12,365.365 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 00:28:12,371.371 INFO    ] Checking for existing commands in stream...
[2026-06-12 00:28:12,437.437 INFO    ] No existing commands found in stream
[2026-06-12 00:28:17,461.461 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 00:28:17,464.464 INFO    ] Waiting 3.38 seconds before fallback handling...
[2026-06-12 00:28:21,169.169 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 00:28:21,171.171 INFO    ] Checking for system updates...
[2026-06-12 00:28:21,191.191 INFO    ] 200
[2026-06-12 00:28:21,193.193 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:28:21,223.223 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 00:28:21,224.224 INFO    ] No update needed
[2026-06-12 00:28:21,226.226 INFO    ] Checking for camera pi updates...
[2026-06-12 00:28:21,245.245 INFO    ] 200
[2026-06-12 00:28:21,246.246 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:28:21,269.269 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 00:28:21,408.408 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 00:28:21,409.409 INFO    ] No camera update needed
[2026-06-12 00:28:21,410.410 INFO    ] Script finished. Safe exiting...
[2026-06-12 00:28:21,412.412 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 00:28:21,414.414 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 00:28:21,417.417 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 00:28:23,460.460 INFO    ] ================================================
[2026-06-12 00:28:23,476.476 INFO    ] Launching Daemon at Fri Jun 12 00:28:23 IST 2026
[2026-06-12 00:28:23,488.488 INFO    ] ================================================
[2026-06-12 00:28:23,815.815 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 00:28:23
[2026-06-12 00:28:24,126.126 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 00:28:24,269.269 INFO    ] Initializing speech engine...
[2026-06-12 00:28:24,275.275 INFO    ] 2026-06-12 00:28:24
[2026-06-12 00:28:24,480.480 INFO    ] 2026-06-12 00:28:24
[2026-06-12 00:28:24,509.509 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 00:28:24,695.695 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 00:28:24,704.704 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 00:28:24,833.833 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 00:28:24,899.899 INFO    ] time= 12/06/2026 00:28:24
[2026-06-12 00:28:24,922.922 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 00:28:24,929.929 INFO    ] Checking for existing commands in stream...
[2026-06-12 00:28:24,994.994 INFO    ] No existing commands found in stream
[2026-06-12 00:28:30,005.005 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 00:28:30,008.008 INFO    ] Waiting 0.73 seconds before fallback handling...
[2026-06-12 00:28:31,110.110 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 00:28:31,112.112 INFO    ] Checking for system updates...
[2026-06-12 00:28:31,133.133 INFO    ] 200
[2026-06-12 00:28:31,135.135 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:28:31,166.166 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 00:28:31,167.167 INFO    ] No update needed
[2026-06-12 00:28:31,169.169 INFO    ] Checking for camera pi updates...
[2026-06-12 00:28:31,189.189 INFO    ] 200
[2026-06-12 00:28:31,190.190 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:28:31,216.216 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 00:28:31,260.260 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 00:28:31,262.262 INFO    ] No camera update needed
[2026-06-12 00:28:31,263.263 INFO    ] Script finished. Safe exiting...
[2026-06-12 00:28:31,264.264 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 00:28:31,268.268 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 00:28:31,271.271 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 00:28:33,308.308 INFO    ] ================================================
[2026-06-12 00:28:33,325.325 INFO    ] Launching Daemon at Fri Jun 12 00:28:33 IST 2026
[2026-06-12 00:28:33,336.336 INFO    ] ================================================
[2026-06-12 00:28:33,704.704 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 00:28:33
[2026-06-12 00:28:34,043.043 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 00:28:34,195.195 INFO    ] Initializing speech engine...
[2026-06-12 00:28:34,201.201 INFO    ] 2026-06-12 00:28:34
[2026-06-12 00:28:34,412.412 INFO    ] 2026-06-12 00:28:34
[2026-06-12 00:28:34,442.442 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 00:28:34,718.718 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 00:28:34,760.760 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 00:28:34,929.929 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 00:28:34,933.933 INFO    ] time= 12/06/2026 00:28:34
[2026-06-12 00:28:34,959.959 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 00:28:34,981.981 INFO    ] Checking for existing commands in stream...
[2026-06-12 00:28:35,061.061 INFO    ] No existing commands found in stream
[2026-06-12 00:28:40,070.070 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 00:28:40,072.072 INFO    ] Waiting 3.36 seconds before fallback handling...
[2026-06-12 00:28:43,821.821 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 00:28:43,823.823 INFO    ] Checking for system updates...
[2026-06-12 00:28:43,843.843 INFO    ] 200
[2026-06-12 00:28:43,845.845 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:28:43,875.875 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 00:28:43,877.877 INFO    ] No update needed
[2026-06-12 00:28:43,878.878 INFO    ] Checking for camera pi updates...
[2026-06-12 00:28:43,898.898 INFO    ] 200
[2026-06-12 00:28:43,900.900 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:28:43,924.924 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 00:28:43,967.967 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 00:28:43,968.968 INFO    ] No camera update needed
[2026-06-12 00:28:43,970.970 INFO    ] Script finished. Safe exiting...
[2026-06-12 00:28:43,971.971 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 00:28:43,974.974 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 00:28:43,977.977 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 00:28:46,016.016 INFO    ] ================================================
[2026-06-12 00:28:46,031.031 INFO    ] Launching Daemon at Fri Jun 12 00:28:46 IST 2026
[2026-06-12 00:28:46,044.044 INFO    ] ================================================
[2026-06-12 00:28:46,394.394 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 00:28:46
[2026-06-12 00:28:46,715.715 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 00:28:46,868.868 INFO    ] Initializing speech engine...
[2026-06-12 00:28:46,873.873 INFO    ] 2026-06-12 00:28:46
[2026-06-12 00:28:47,080.080 INFO    ] 2026-06-12 00:28:47
[2026-06-12 00:28:47,109.109 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 00:28:47,292.292 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 00:28:47,302.302 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 00:28:47,443.443 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 00:28:47,499.499 INFO    ] time= 12/06/2026 00:28:47
[2026-06-12 00:28:47,523.523 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 00:28:47,529.529 INFO    ] Checking for existing commands in stream...
[2026-06-12 00:28:47,596.596 INFO    ] No existing commands found in stream
[2026-06-12 00:28:52,611.611 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 00:28:52,614.614 INFO    ] Waiting 2.50 seconds before fallback handling...
[2026-06-12 00:28:55,520.520 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 00:28:55,521.521 INFO    ] Checking for system updates...
[2026-06-12 00:28:55,542.542 INFO    ] 200
[2026-06-12 00:28:55,544.544 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:28:55,577.577 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 00:28:55,578.578 INFO    ] No update needed
[2026-06-12 00:28:55,579.579 INFO    ] Checking for camera pi updates...
[2026-06-12 00:28:55,599.599 INFO    ] 200
[2026-06-12 00:28:55,600.600 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:28:55,624.624 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 00:28:55,664.664 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 00:28:55,666.666 INFO    ] No camera update needed
[2026-06-12 00:28:55,667.667 INFO    ] Script finished. Safe exiting...
[2026-06-12 00:28:55,668.668 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 00:28:55,671.671 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 00:28:55,674.674 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 00:28:57,713.713 INFO    ] ================================================
[2026-06-12 00:28:57,730.730 INFO    ] Launching Daemon at Fri Jun 12 00:28:57 IST 2026
[2026-06-12 00:28:57,741.741 INFO    ] ================================================
[2026-06-12 00:28:58,097.097 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 00:28:58
[2026-06-12 00:28:58,414.414 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 00:28:58,562.562 INFO    ] Initializing speech engine...
[2026-06-12 00:28:58,567.567 INFO    ] 2026-06-12 00:28:58
[2026-06-12 00:28:58,785.785 INFO    ] 2026-06-12 00:28:58
[2026-06-12 00:28:58,816.816 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 00:28:59,016.016 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 00:28:59,025.025 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 00:28:59,167.167 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 00:28:59,220.220 INFO    ] time= 12/06/2026 00:28:59
[2026-06-12 00:28:59,265.265 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 00:28:59,272.272 INFO    ] Checking for existing commands in stream...
[2026-06-12 00:28:59,344.344 INFO    ] No existing commands found in stream
[2026-06-12 00:29:04,352.352 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 00:29:04,355.355 INFO    ] Waiting 3.60 seconds before fallback handling...
[2026-06-12 00:29:11,671.671 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 00:29:11,674.674 INFO    ] Checking for system updates...
[2026-06-12 00:29:11,714.714 INFO    ] 200
[2026-06-12 00:29:11,716.716 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:29:11,769.769 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 00:29:11,771.771 INFO    ] No update needed
[2026-06-12 00:29:11,774.774 INFO    ] Checking for camera pi updates...
[2026-06-12 00:29:11,808.808 INFO    ] 200
[2026-06-12 00:29:11,811.811 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:29:11,852.852 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 00:29:11,888.888 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 00:29:11,891.891 INFO    ] No camera update needed
[2026-06-12 00:29:11,893.893 INFO    ] Script finished. Safe exiting...
[2026-06-12 00:29:11,895.895 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 00:29:11,901.901 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 00:29:11,904.904 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 00:29:13,942.942 INFO    ] ================================================
[2026-06-12 00:29:13,959.959 INFO    ] Launching Daemon at Fri Jun 12 00:29:13 IST 2026
[2026-06-12 00:29:13,969.969 INFO    ] ================================================
[2026-06-12 00:29:14,307.307 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 00:29:14
[2026-06-12 00:29:14,617.617 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 00:29:14,754.754 INFO    ] Initializing speech engine...
[2026-06-12 00:29:14,763.763 INFO    ] 2026-06-12 00:29:14
[2026-06-12 00:29:14,968.968 INFO    ] 2026-06-12 00:29:14
[2026-06-12 00:29:14,997.997 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 00:29:15,182.182 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 00:29:15,186.186 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 00:29:15,315.315 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 00:29:15,381.381 INFO    ] time= 12/06/2026 00:29:15
[2026-06-12 00:29:15,413.413 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 00:29:15,420.420 INFO    ] Checking for existing commands in stream...
[2026-06-12 00:29:15,487.487 INFO    ] No existing commands found in stream
[2026-06-12 00:29:20,496.496 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 00:29:20,499.499 INFO    ] Waiting 3.80 seconds before fallback handling...
[2026-06-12 00:29:24,629.629 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 00:29:24,631.631 INFO    ] Checking for system updates...
[2026-06-12 00:29:24,651.651 INFO    ] 200
[2026-06-12 00:29:24,653.653 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:29:24,683.683 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 00:29:24,684.684 INFO    ] No update needed
[2026-06-12 00:29:24,686.686 INFO    ] Checking for camera pi updates...
[2026-06-12 00:29:24,705.705 INFO    ] 200
[2026-06-12 00:29:24,706.706 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:29:24,732.732 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 00:29:24,785.785 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 00:29:24,786.786 INFO    ] No camera update needed
[2026-06-12 00:29:24,788.788 INFO    ] Script finished. Safe exiting...
[2026-06-12 00:29:24,789.789 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 00:29:24,792.792 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 00:29:24,794.794 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 00:29:26,833.833 INFO    ] ================================================
[2026-06-12 00:29:26,847.847 INFO    ] Launching Daemon at Fri Jun 12 00:29:26 IST 2026
[2026-06-12 00:29:26,858.858 INFO    ] ================================================
[2026-06-12 00:29:27,213.213 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 00:29:27
[2026-06-12 00:29:27,528.528 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 00:29:27,666.666 INFO    ] Initializing speech engine...
[2026-06-12 00:29:27,676.676 INFO    ] 2026-06-12 00:29:27
[2026-06-12 00:29:27,878.878 INFO    ] 2026-06-12 00:29:27
[2026-06-12 00:29:27,908.908 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 00:29:28,090.090 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 00:29:28,093.093 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 00:29:28,221.221 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 00:29:28,281.281 INFO    ] time= 12/06/2026 00:29:28
[2026-06-12 00:29:28,315.315 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 00:29:28,320.320 INFO    ] Checking for existing commands in stream...
[2026-06-12 00:29:28,415.415 INFO    ] No existing commands found in stream
[2026-06-12 00:29:33,429.429 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 00:29:33,432.432 INFO    ] Waiting 2.75 seconds before fallback handling...
[2026-06-12 00:29:36,550.550 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 00:29:36,551.551 INFO    ] Checking for system updates...
[2026-06-12 00:29:36,573.573 INFO    ] 200
[2026-06-12 00:29:36,575.575 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:29:36,605.605 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 00:29:36,606.606 INFO    ] No update needed
[2026-06-12 00:29:36,607.607 INFO    ] Checking for camera pi updates...
[2026-06-12 00:29:36,626.626 INFO    ] 200
[2026-06-12 00:29:36,628.628 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:29:36,651.651 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 00:29:36,696.696 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 00:29:36,697.697 INFO    ] No camera update needed
[2026-06-12 00:29:36,698.698 INFO    ] Script finished. Safe exiting...
[2026-06-12 00:29:36,700.700 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 00:29:36,703.703 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 00:29:36,705.705 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 00:29:38,748.748 INFO    ] ================================================
[2026-06-12 00:29:38,763.763 INFO    ] Launching Daemon at Fri Jun 12 00:29:38 IST 2026
[2026-06-12 00:29:38,774.774 INFO    ] ================================================
[2026-06-12 00:29:39,140.140 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 00:29:39
[2026-06-12 00:29:39,451.451 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 00:29:39,581.581 INFO    ] Initializing speech engine...
[2026-06-12 00:29:39,590.590 INFO    ] 2026-06-12 00:29:39
[2026-06-12 00:29:39,803.803 INFO    ] 2026-06-12 00:29:39
[2026-06-12 00:29:39,832.832 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 00:29:40,018.018 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 00:29:40,027.027 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 00:29:40,159.159 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 00:29:40,218.218 INFO    ] time= 12/06/2026 00:29:40
[2026-06-12 00:29:40,252.252 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 00:29:40,254.254 INFO    ] Checking for existing commands in stream...
[2026-06-12 00:29:40,326.326 INFO    ] No existing commands found in stream
[2026-06-12 00:29:45,335.335 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 00:29:45,337.337 INFO    ] Waiting 0.45 seconds before fallback handling...
[2026-06-12 00:29:46,200.200 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 00:29:46,202.202 INFO    ] Checking for system updates...
[2026-06-12 00:29:46,222.222 INFO    ] 200
[2026-06-12 00:29:46,223.223 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:29:46,256.256 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 00:29:46,257.257 INFO    ] No update needed
[2026-06-12 00:29:46,258.258 INFO    ] Checking for camera pi updates...
[2026-06-12 00:29:46,278.278 INFO    ] 200
[2026-06-12 00:29:46,279.279 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:29:46,302.302 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 00:29:46,343.343 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 00:29:46,345.345 INFO    ] No camera update needed
[2026-06-12 00:29:46,346.346 INFO    ] Script finished. Safe exiting...
[2026-06-12 00:29:46,347.347 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 00:29:46,350.350 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 00:29:46,353.353 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 00:29:48,391.391 INFO    ] ================================================
[2026-06-12 00:29:48,406.406 INFO    ] Launching Daemon at Fri Jun 12 00:29:48 IST 2026
[2026-06-12 00:29:48,417.417 INFO    ] ================================================
[2026-06-12 00:29:48,772.772 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 00:29:48
[2026-06-12 00:29:49,085.085 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 00:29:49,228.228 INFO    ] Initializing speech engine...
[2026-06-12 00:29:49,233.233 INFO    ] 2026-06-12 00:29:49
[2026-06-12 00:29:49,435.435 INFO    ] 2026-06-12 00:29:49
[2026-06-12 00:29:49,465.465 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 00:29:49,650.650 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 00:29:49,659.659 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 00:29:49,804.804 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 00:29:49,859.859 INFO    ] time= 12/06/2026 00:29:49
[2026-06-12 00:29:49,881.881 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 00:29:49,887.887 INFO    ] Checking for existing commands in stream...
[2026-06-12 00:29:49,954.954 INFO    ] No existing commands found in stream
[2026-06-12 00:29:54,968.968 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 00:29:54,972.972 INFO    ] Waiting 0.42 seconds before fallback handling...
[2026-06-12 00:29:55,802.802 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 00:29:55,804.804 INFO    ] Checking for system updates...
[2026-06-12 00:29:55,825.825 INFO    ] 200
[2026-06-12 00:29:55,826.826 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:29:55,859.859 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 00:29:55,860.860 INFO    ] No update needed
[2026-06-12 00:29:55,861.861 INFO    ] Checking for camera pi updates...
[2026-06-12 00:29:55,881.881 INFO    ] 200
[2026-06-12 00:29:55,883.883 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:29:55,906.906 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 00:29:55,956.956 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 00:29:55,957.957 INFO    ] No camera update needed
[2026-06-12 00:29:55,959.959 INFO    ] Script finished. Safe exiting...
[2026-06-12 00:29:55,960.960 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 00:29:55,963.963 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 00:29:55,966.966 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 00:29:58,004.004 INFO    ] ================================================
[2026-06-12 00:29:58,019.019 INFO    ] Launching Daemon at Fri Jun 12 00:29:58 IST 2026
[2026-06-12 00:29:58,030.030 INFO    ] ================================================
[2026-06-12 00:29:58,395.395 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 00:29:58
[2026-06-12 00:29:58,707.707 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 00:29:58,839.839 INFO    ] Initializing speech engine...
[2026-06-12 00:29:58,843.843 INFO    ] 2026-06-12 00:29:58
[2026-06-12 00:29:59,047.047 INFO    ] 2026-06-12 00:29:59
[2026-06-12 00:29:59,079.079 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 00:29:59,236.236 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 00:29:59,270.270 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 00:29:59,447.447 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 00:29:59,458.458 INFO    ] time= 12/06/2026 00:29:59
[2026-06-12 00:29:59,522.522 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 00:29:59,555.555 INFO    ] Checking for existing commands in stream...
[2026-06-12 00:29:59,633.633 INFO    ] No existing commands found in stream
[2026-06-12 00:30:04,644.644 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 00:30:04,646.646 INFO    ] Waiting 2.97 seconds before fallback handling...
[2026-06-12 00:30:09,579.579 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 00:30:09,581.581 INFO    ] Checking for system updates...
[2026-06-12 00:30:09,617.617 INFO    ] 200
[2026-06-12 00:30:09,620.620 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:30:09,666.666 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 00:30:09,667.667 INFO    ] No update needed
[2026-06-12 00:30:09,668.668 INFO    ] Checking for camera pi updates...
[2026-06-12 00:30:09,687.687 INFO    ] 200
[2026-06-12 00:30:09,689.689 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:30:09,715.715 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 00:30:09,759.759 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 00:30:09,760.760 INFO    ] No camera update needed
[2026-06-12 00:30:09,762.762 INFO    ] Script finished. Safe exiting...
[2026-06-12 00:30:09,763.763 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 00:30:09,766.766 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 00:30:09,768.768 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 00:30:11,807.807 INFO    ] ================================================
[2026-06-12 00:30:11,823.823 INFO    ] Launching Daemon at Fri Jun 12 00:30:11 IST 2026
[2026-06-12 00:30:11,834.834 INFO    ] ================================================
[2026-06-12 00:30:12,177.177 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 00:30:12
[2026-06-12 00:30:12,494.494 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 00:30:12,626.626 INFO    ] Initializing speech engine...
[2026-06-12 00:30:12,634.634 INFO    ] 2026-06-12 00:30:12
[2026-06-12 00:30:12,848.848 INFO    ] 2026-06-12 00:30:12
[2026-06-12 00:30:12,876.876 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 00:30:13,061.061 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 00:30:13,064.064 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 00:30:13,201.201 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 00:30:13,268.268 INFO    ] time= 12/06/2026 00:30:13
[2026-06-12 00:30:13,292.292 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 00:30:13,294.294 INFO    ] Checking for existing commands in stream...
[2026-06-12 00:30:13,366.366 INFO    ] No existing commands found in stream
[2026-06-12 00:30:18,375.375 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 00:30:18,378.378 INFO    ] Waiting 2.27 seconds before fallback handling...
[2026-06-12 00:30:21,041.041 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 00:30:21,043.043 INFO    ] Checking for system updates...
[2026-06-12 00:30:21,063.063 INFO    ] 200
[2026-06-12 00:30:21,065.065 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:30:21,095.095 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 00:30:21,096.096 INFO    ] No update needed
[2026-06-12 00:30:21,098.098 INFO    ] Checking for camera pi updates...
[2026-06-12 00:30:21,117.117 INFO    ] 200
[2026-06-12 00:30:21,119.119 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:30:21,142.142 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 00:30:21,184.184 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 00:30:21,186.186 INFO    ] No camera update needed
[2026-06-12 00:30:21,187.187 INFO    ] Script finished. Safe exiting...
[2026-06-12 00:30:21,188.188 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 00:30:21,191.191 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 00:30:21,194.194 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 00:30:23,233.233 INFO    ] ================================================
[2026-06-12 00:30:23,249.249 INFO    ] Launching Daemon at Fri Jun 12 00:30:23 IST 2026
[2026-06-12 00:30:23,261.261 INFO    ] ================================================
[2026-06-12 00:30:23,623.623 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 00:30:23
[2026-06-12 00:30:23,940.940 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 00:30:24,084.084 INFO    ] Initializing speech engine...
[2026-06-12 00:30:24,090.090 INFO    ] 2026-06-12 00:30:24
[2026-06-12 00:30:24,294.294 INFO    ] 2026-06-12 00:30:24
[2026-06-12 00:30:24,322.322 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 00:30:24,506.506 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 00:30:24,516.516 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 00:30:24,642.642 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 00:30:24,705.705 INFO    ] time= 12/06/2026 00:30:24
[2026-06-12 00:30:24,737.737 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 00:30:24,744.744 INFO    ] Checking for existing commands in stream...
[2026-06-12 00:30:24,834.834 INFO    ] No existing commands found in stream
[2026-06-12 00:30:29,843.843 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 00:30:29,846.846 INFO    ] Waiting 2.38 seconds before fallback handling...
[2026-06-12 00:30:32,611.611 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 00:30:32,612.612 INFO    ] Checking for system updates...
[2026-06-12 00:30:32,638.638 INFO    ] 200
[2026-06-12 00:30:32,640.640 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:30:32,678.678 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 00:30:32,680.680 INFO    ] No update needed
[2026-06-12 00:30:32,682.682 INFO    ] Checking for camera pi updates...
[2026-06-12 00:30:32,706.706 INFO    ] 200
[2026-06-12 00:30:32,708.708 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:30:32,737.737 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 00:30:32,864.864 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 00:30:32,865.865 INFO    ] No camera update needed
[2026-06-12 00:30:32,867.867 INFO    ] Script finished. Safe exiting...
[2026-06-12 00:30:32,868.868 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 00:30:32,872.872 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 00:30:32,876.876 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 00:30:34,918.918 INFO    ] ================================================
[2026-06-12 00:30:34,933.933 INFO    ] Launching Daemon at Fri Jun 12 00:30:34 IST 2026
[2026-06-12 00:30:34,945.945 INFO    ] ================================================
[2026-06-12 00:30:35,313.313 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 00:30:35
[2026-06-12 00:30:35,631.631 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 00:30:35,766.766 INFO    ] Initializing speech engine...
[2026-06-12 00:30:35,778.778 INFO    ] 2026-06-12 00:30:35
[2026-06-12 00:30:35,984.984 INFO    ] 2026-06-12 00:30:35
[2026-06-12 00:30:36,014.014 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 00:30:36,157.157 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 00:30:36,221.221 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 00:30:36,384.384 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 00:30:36,438.438 INFO    ] time= 12/06/2026 00:30:36
[2026-06-12 00:30:36,502.502 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 00:30:36,504.504 INFO    ] Checking for existing commands in stream...
[2026-06-12 00:30:36,584.584 INFO    ] No existing commands found in stream
[2026-06-12 00:30:41,595.595 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 00:30:41,598.598 INFO    ] Waiting 2.53 seconds before fallback handling...
[2026-06-12 00:30:45,081.081 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 00:30:45,084.084 INFO    ] Checking for system updates...
[2026-06-12 00:30:45,122.122 INFO    ] 200
[2026-06-12 00:30:45,124.124 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:30:45,186.186 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 00:30:45,188.188 INFO    ] No update needed
[2026-06-12 00:30:45,191.191 INFO    ] Checking for camera pi updates...
[2026-06-12 00:30:45,222.222 INFO    ] 200
[2026-06-12 00:30:45,223.223 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:30:45,247.247 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 00:30:45,297.297 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 00:30:45,299.299 INFO    ] No camera update needed
[2026-06-12 00:30:45,301.301 INFO    ] Script finished. Safe exiting...
[2026-06-12 00:30:45,302.302 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 00:30:45,305.305 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 00:30:45,308.308 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 00:30:47,349.349 INFO    ] ================================================
[2026-06-12 00:30:47,365.365 INFO    ] Launching Daemon at Fri Jun 12 00:30:47 IST 2026
[2026-06-12 00:30:47,376.376 INFO    ] ================================================
[2026-06-12 00:30:47,741.741 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 00:30:47
[2026-06-12 00:30:48,051.051 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 00:30:48,184.184 INFO    ] Initializing speech engine...
[2026-06-12 00:30:48,196.196 INFO    ] 2026-06-12 00:30:48
[2026-06-12 00:30:48,405.405 INFO    ] 2026-06-12 00:30:48
[2026-06-12 00:30:48,435.435 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 00:30:48,620.620 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 00:30:48,624.624 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 00:30:48,762.762 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 00:30:48,829.829 INFO    ] time= 12/06/2026 00:30:48
[2026-06-12 00:30:48,853.853 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 00:30:48,860.860 INFO    ] Checking for existing commands in stream...
[2026-06-12 00:30:48,927.927 INFO    ] No existing commands found in stream
[2026-06-12 00:30:53,936.936 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 00:30:53,939.939 INFO    ] Waiting 0.58 seconds before fallback handling...
[2026-06-12 00:30:54,936.936 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 00:30:54,939.939 INFO    ] Checking for system updates...
[2026-06-12 00:30:54,980.980 INFO    ] 200
[2026-06-12 00:30:54,983.983 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:30:55,043.043 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 00:30:55,046.046 INFO    ] No update needed
[2026-06-12 00:30:55,048.048 INFO    ] Checking for camera pi updates...
[2026-06-12 00:30:55,069.069 INFO    ] 200
[2026-06-12 00:30:55,070.070 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:30:55,098.098 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 00:30:55,143.143 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 00:30:55,145.145 INFO    ] No camera update needed
[2026-06-12 00:30:55,146.146 INFO    ] Script finished. Safe exiting...
[2026-06-12 00:30:55,147.147 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 00:30:55,150.150 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 00:30:55,153.153 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 00:30:57,192.192 INFO    ] ================================================
[2026-06-12 00:30:57,208.208 INFO    ] Launching Daemon at Fri Jun 12 00:30:57 IST 2026
[2026-06-12 00:30:57,219.219 INFO    ] ================================================
[2026-06-12 00:30:57,564.564 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 00:30:57
[2026-06-12 00:30:57,881.881 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 00:30:58,012.012 INFO    ] Initializing speech engine...
[2026-06-12 00:30:58,021.021 INFO    ] 2026-06-12 00:30:58
[2026-06-12 00:30:58,234.234 INFO    ] 2026-06-12 00:30:58
[2026-06-12 00:30:58,263.263 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 00:30:58,447.447 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 00:30:58,457.457 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 00:30:58,585.585 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 00:30:58,649.649 INFO    ] time= 12/06/2026 00:30:58
[2026-06-12 00:30:58,676.676 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 00:30:58,683.683 INFO    ] Checking for existing commands in stream...
[2026-06-12 00:30:58,750.750 INFO    ] No existing commands found in stream
[2026-06-12 00:31:03,764.764 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 00:31:03,767.767 INFO    ] Waiting 3.02 seconds before fallback handling...
[2026-06-12 00:31:07,127.127 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 00:31:07,129.129 INFO    ] Checking for system updates...
[2026-06-12 00:31:07,151.151 INFO    ] 200
[2026-06-12 00:31:07,153.153 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:31:07,183.183 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 00:31:07,184.184 INFO    ] No update needed
[2026-06-12 00:31:07,185.185 INFO    ] Checking for camera pi updates...
[2026-06-12 00:31:07,205.205 INFO    ] 200
[2026-06-12 00:31:07,206.206 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:31:07,231.231 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 00:31:07,278.278 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 00:31:07,280.280 INFO    ] No camera update needed
[2026-06-12 00:31:07,281.281 INFO    ] Script finished. Safe exiting...
[2026-06-12 00:31:07,282.282 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 00:31:07,285.285 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 00:31:07,288.288 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 00:31:09,327.327 INFO    ] ================================================
[2026-06-12 00:31:09,343.343 INFO    ] Launching Daemon at Fri Jun 12 00:31:09 IST 2026
[2026-06-12 00:31:09,355.355 INFO    ] ================================================
[2026-06-12 00:31:09,700.700 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 00:31:09
[2026-06-12 00:31:10,014.014 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 00:31:10,143.143 INFO    ] Initializing speech engine...
[2026-06-12 00:31:10,148.148 INFO    ] 2026-06-12 00:31:10
[2026-06-12 00:31:10,364.364 INFO    ] 2026-06-12 00:31:10
[2026-06-12 00:31:10,393.393 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 00:31:10,576.576 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 00:31:10,580.580 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 00:31:10,715.715 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 00:31:10,782.782 INFO    ] time= 12/06/2026 00:31:10
[2026-06-12 00:31:10,805.805 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 00:31:10,812.812 INFO    ] Checking for existing commands in stream...
[2026-06-12 00:31:10,877.877 INFO    ] No existing commands found in stream
[2026-06-12 00:31:15,887.887 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 00:31:15,890.890 INFO    ] Waiting 2.18 seconds before fallback handling...
[2026-06-12 00:31:18,445.445 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 00:31:18,446.446 INFO    ] Checking for system updates...
[2026-06-12 00:31:18,466.466 INFO    ] 200
[2026-06-12 00:31:18,468.468 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:31:18,498.498 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 00:31:18,499.499 INFO    ] No update needed
[2026-06-12 00:31:18,501.501 INFO    ] Checking for camera pi updates...
[2026-06-12 00:31:18,520.520 INFO    ] 200
[2026-06-12 00:31:18,521.521 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:31:18,545.545 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 00:31:18,591.591 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 00:31:18,593.593 INFO    ] No camera update needed
[2026-06-12 00:31:18,594.594 INFO    ] Script finished. Safe exiting...
[2026-06-12 00:31:18,595.595 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 00:31:18,598.598 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 00:31:18,601.601 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 00:31:20,639.639 INFO    ] ================================================
[2026-06-12 00:31:20,656.656 INFO    ] Launching Daemon at Fri Jun 12 00:31:20 IST 2026
[2026-06-12 00:31:20,667.667 INFO    ] ================================================
[2026-06-12 00:31:21,003.003 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 00:31:21
[2026-06-12 00:31:21,322.322 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 00:31:21,455.455 INFO    ] Initializing speech engine...
[2026-06-12 00:31:21,468.468 INFO    ] 2026-06-12 00:31:21
[2026-06-12 00:31:21,676.676 INFO    ] 2026-06-12 00:31:21
[2026-06-12 00:31:21,706.706 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 00:31:21,891.891 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 00:31:21,894.894 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 00:31:22,042.042 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 00:31:22,100.100 INFO    ] time= 12/06/2026 00:31:22
[2026-06-12 00:31:22,123.123 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 00:31:22,130.130 INFO    ] Checking for existing commands in stream...
[2026-06-12 00:31:22,195.195 INFO    ] No existing commands found in stream
[2026-06-12 00:31:27,206.206 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 00:31:27,208.208 INFO    ] Waiting 2.04 seconds before fallback handling...
[2026-06-12 00:31:29,631.631 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 00:31:29,633.633 INFO    ] Checking for system updates...
[2026-06-12 00:31:29,655.655 INFO    ] 200
[2026-06-12 00:31:29,657.657 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:31:29,687.687 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 00:31:29,688.688 INFO    ] No update needed
[2026-06-12 00:31:29,689.689 INFO    ] Checking for camera pi updates...
[2026-06-12 00:31:29,711.711 INFO    ] 200
[2026-06-12 00:31:29,712.712 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:31:29,737.737 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 00:31:29,779.779 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 00:31:29,780.780 INFO    ] No camera update needed
[2026-06-12 00:31:29,782.782 INFO    ] Script finished. Safe exiting...
[2026-06-12 00:31:29,783.783 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 00:31:29,786.786 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 00:31:29,788.788 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 00:31:31,831.831 INFO    ] ================================================
[2026-06-12 00:31:31,841.841 INFO    ] Launching Daemon at Fri Jun 12 00:31:31 IST 2026
[2026-06-12 00:31:31,848.848 INFO    ] ================================================
[2026-06-12 00:31:32,177.177 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 00:31:32
[2026-06-12 00:31:32,513.513 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 00:31:32,668.668 INFO    ] Initializing speech engine...
[2026-06-12 00:31:32,673.673 INFO    ] 2026-06-12 00:31:32
[2026-06-12 00:31:32,879.879 INFO    ] 2026-06-12 00:31:32
[2026-06-12 00:31:32,909.909 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 00:31:33,094.094 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 00:31:33,098.098 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 00:31:33,234.234 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 00:31:33,298.298 INFO    ] time= 12/06/2026 00:31:33
[2026-06-12 00:31:33,327.327 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 00:31:33,333.333 INFO    ] Checking for existing commands in stream...
[2026-06-12 00:31:33,400.400 INFO    ] No existing commands found in stream
[2026-06-12 00:31:38,424.424 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 00:31:38,427.427 INFO    ] Waiting 2.14 seconds before fallback handling...
[2026-06-12 00:31:40,951.951 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 00:31:40,953.953 INFO    ] Checking for system updates...
[2026-06-12 00:31:40,974.974 INFO    ] 200
[2026-06-12 00:31:40,975.975 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:31:41,008.008 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 00:31:41,009.009 INFO    ] No update needed
[2026-06-12 00:31:41,011.011 INFO    ] Checking for camera pi updates...
[2026-06-12 00:31:41,033.033 INFO    ] 200
[2026-06-12 00:31:41,034.034 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:31:41,061.061 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 00:31:41,113.113 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 00:31:41,114.114 INFO    ] No camera update needed
[2026-06-12 00:31:41,116.116 INFO    ] Script finished. Safe exiting...
[2026-06-12 00:31:41,117.117 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 00:31:41,120.120 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 00:31:41,123.123 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 00:31:43,162.162 INFO    ] ================================================
[2026-06-12 00:31:43,177.177 INFO    ] Launching Daemon at Fri Jun 12 00:31:43 IST 2026
[2026-06-12 00:31:43,188.188 INFO    ] ================================================
[2026-06-12 00:31:43,551.551 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 00:31:43
[2026-06-12 00:31:43,862.862 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 00:31:43,999.999 INFO    ] Initializing speech engine...
[2026-06-12 00:31:44,008.008 INFO    ] 2026-06-12 00:31:43
[2026-06-12 00:31:44,211.211 INFO    ] 2026-06-12 00:31:44
[2026-06-12 00:31:44,241.241 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 00:31:44,424.424 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 00:31:44,433.433 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 00:31:44,557.557 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 00:31:44,620.620 INFO    ] time= 12/06/2026 00:31:44
[2026-06-12 00:31:44,651.651 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 00:31:44,658.658 INFO    ] Checking for existing commands in stream...
[2026-06-12 00:31:44,748.748 INFO    ] No existing commands found in stream
[2026-06-12 00:31:49,757.757 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 00:31:49,759.759 INFO    ] Waiting 3.09 seconds before fallback handling...
[2026-06-12 00:31:53,251.251 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 00:31:53,252.252 INFO    ] Checking for system updates...
[2026-06-12 00:31:53,274.274 INFO    ] 200
[2026-06-12 00:31:53,276.276 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:31:53,308.308 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 00:31:53,310.310 INFO    ] No update needed
[2026-06-12 00:31:53,311.311 INFO    ] Checking for camera pi updates...
[2026-06-12 00:31:53,331.331 INFO    ] 200
[2026-06-12 00:31:53,332.332 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:31:53,356.356 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 00:31:53,406.406 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 00:31:53,407.407 INFO    ] No camera update needed
[2026-06-12 00:31:53,408.408 INFO    ] Script finished. Safe exiting...
[2026-06-12 00:31:53,410.410 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 00:31:53,413.413 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 00:31:53,416.416 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 00:31:55,455.455 INFO    ] ================================================
[2026-06-12 00:31:55,471.471 INFO    ] Launching Daemon at Fri Jun 12 00:31:55 IST 2026
[2026-06-12 00:31:55,482.482 INFO    ] ================================================
[2026-06-12 00:31:55,827.827 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 00:31:55
[2026-06-12 00:31:56,162.162 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 00:31:56,315.315 INFO    ] Initializing speech engine...
[2026-06-12 00:31:56,319.319 INFO    ] 2026-06-12 00:31:56
[2026-06-12 00:31:56,521.521 INFO    ] 2026-06-12 00:31:56
[2026-06-12 00:31:56,551.551 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 00:31:56,734.734 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 00:31:56,744.744 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 00:31:56,883.883 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 00:31:56,941.941 INFO    ] time= 12/06/2026 00:31:56
[2026-06-12 00:31:56,963.963 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 00:31:56,970.970 INFO    ] Checking for existing commands in stream...
[2026-06-12 00:31:57,061.061 INFO    ] No existing commands found in stream
[2026-06-12 00:32:02,072.072 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 00:32:02,075.075 INFO    ] Waiting 1.85 seconds before fallback handling...
[2026-06-12 00:32:04,282.282 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 00:32:04,284.284 INFO    ] Checking for system updates...
[2026-06-12 00:32:04,304.304 INFO    ] 200
[2026-06-12 00:32:04,306.306 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:32:04,340.340 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 00:32:04,342.342 INFO    ] No update needed
[2026-06-12 00:32:04,343.343 INFO    ] Checking for camera pi updates...
[2026-06-12 00:32:04,363.363 INFO    ] 200
[2026-06-12 00:32:04,365.365 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:32:04,388.388 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 00:32:04,428.428 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 00:32:04,430.430 INFO    ] No camera update needed
[2026-06-12 00:32:04,431.431 INFO    ] Script finished. Safe exiting...
[2026-06-12 00:32:04,432.432 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 00:32:04,435.435 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 00:32:04,438.438 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 00:32:06,476.476 INFO    ] ================================================
[2026-06-12 00:32:06,492.492 INFO    ] Launching Daemon at Fri Jun 12 00:32:06 IST 2026
[2026-06-12 00:32:06,503.503 INFO    ] ================================================
[2026-06-12 00:32:06,845.845 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 00:32:06
[2026-06-12 00:32:07,184.184 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 00:32:07,333.333 INFO    ] Initializing speech engine...
[2026-06-12 00:32:07,339.339 INFO    ] 2026-06-12 00:32:07
[2026-06-12 00:32:07,547.547 INFO    ] 2026-06-12 00:32:07
[2026-06-12 00:32:07,576.576 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 00:32:07,760.760 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 00:32:07,770.770 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 00:32:07,925.925 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 00:32:07,974.974 INFO    ] time= 12/06/2026 00:32:07
[2026-06-12 00:32:07,990.990 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 00:32:07,997.997 INFO    ] Checking for existing commands in stream...
[2026-06-12 00:32:08,063.063 INFO    ] No existing commands found in stream
[2026-06-12 00:32:13,073.073 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 00:32:13,076.076 INFO    ] Waiting 3.74 seconds before fallback handling...
[2026-06-12 00:32:17,183.183 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 00:32:17,185.185 INFO    ] Checking for system updates...
[2026-06-12 00:32:17,207.207 INFO    ] 200
[2026-06-12 00:32:17,208.208 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:32:17,242.242 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 00:32:17,243.243 INFO    ] No update needed
[2026-06-12 00:32:17,244.244 INFO    ] Checking for camera pi updates...
[2026-06-12 00:32:17,264.264 INFO    ] 200
[2026-06-12 00:32:17,266.266 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:32:17,291.291 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 00:32:17,332.332 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 00:32:17,334.334 INFO    ] No camera update needed
[2026-06-12 00:32:17,335.335 INFO    ] Script finished. Safe exiting...
[2026-06-12 00:32:17,336.336 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 00:32:17,339.339 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 00:32:17,342.342 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 00:32:19,380.380 INFO    ] ================================================
[2026-06-12 00:32:19,396.396 INFO    ] Launching Daemon at Fri Jun 12 00:32:19 IST 2026
[2026-06-12 00:32:19,407.407 INFO    ] ================================================
[2026-06-12 00:32:19,741.741 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 00:32:19
[2026-06-12 00:32:20,053.053 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 00:32:20,185.185 INFO    ] Initializing speech engine...
[2026-06-12 00:32:20,190.190 INFO    ] 2026-06-12 00:32:20
[2026-06-12 00:32:20,419.419 INFO    ] 2026-06-12 00:32:20
[2026-06-12 00:32:20,449.449 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 00:32:20,645.645 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 00:32:20,649.649 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 00:32:20,793.793 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 00:32:20,854.854 INFO    ] time= 12/06/2026 00:32:20
[2026-06-12 00:32:20,882.882 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 00:32:20,894.894 INFO    ] Checking for existing commands in stream...
[2026-06-12 00:32:20,970.970 INFO    ] No existing commands found in stream
[2026-06-12 00:32:25,979.979 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 00:32:25,982.982 INFO    ] Waiting 0.12 seconds before fallback handling...
[2026-06-12 00:32:26,460.460 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 00:32:26,462.462 INFO    ] Checking for system updates...
[2026-06-12 00:32:26,482.482 INFO    ] 200
[2026-06-12 00:32:26,483.483 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:32:26,515.515 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 00:32:26,516.516 INFO    ] No update needed
[2026-06-12 00:32:26,518.518 INFO    ] Checking for camera pi updates...
[2026-06-12 00:32:26,537.537 INFO    ] 200
[2026-06-12 00:32:26,538.538 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:32:26,563.563 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 00:32:26,609.609 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 00:32:26,610.610 INFO    ] No camera update needed
[2026-06-12 00:32:26,611.611 INFO    ] Script finished. Safe exiting...
[2026-06-12 00:32:26,613.613 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 00:32:26,615.615 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 00:32:26,618.618 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 00:32:28,658.658 INFO    ] ================================================
[2026-06-12 00:32:28,673.673 INFO    ] Launching Daemon at Fri Jun 12 00:32:28 IST 2026
[2026-06-12 00:32:28,684.684 INFO    ] ================================================
[2026-06-12 00:32:29,041.041 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 00:32:29
[2026-06-12 00:32:29,371.371 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 00:32:29,516.516 INFO    ] Initializing speech engine...
[2026-06-12 00:32:29,522.522 INFO    ] 2026-06-12 00:32:29
[2026-06-12 00:32:29,726.726 INFO    ] 2026-06-12 00:32:29
[2026-06-12 00:32:29,755.755 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 00:32:29,944.944 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 00:32:29,953.953 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 00:32:30,080.080 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 00:32:30,143.143 INFO    ] time= 12/06/2026 00:32:30
[2026-06-12 00:32:30,175.175 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 00:32:30,181.181 INFO    ] Checking for existing commands in stream...
[2026-06-12 00:32:30,248.248 INFO    ] No existing commands found in stream
[2026-06-12 00:32:35,263.263 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 00:32:35,265.265 INFO    ] Waiting 2.72 seconds before fallback handling...
[2026-06-12 00:32:38,344.344 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 00:32:38,345.345 INFO    ] Checking for system updates...
[2026-06-12 00:32:38,366.366 INFO    ] 200
[2026-06-12 00:32:38,368.368 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:32:38,401.401 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 00:32:38,402.402 INFO    ] No update needed
[2026-06-12 00:32:38,403.403 INFO    ] Checking for camera pi updates...
[2026-06-12 00:32:38,423.423 INFO    ] 200
[2026-06-12 00:32:38,424.424 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:32:38,448.448 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 00:32:38,588.588 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 00:32:38,589.589 INFO    ] No camera update needed
[2026-06-12 00:32:38,590.590 INFO    ] Script finished. Safe exiting...
[2026-06-12 00:32:38,592.592 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 00:32:38,595.595 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 00:32:38,597.597 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 00:32:40,638.638 INFO    ] ================================================
[2026-06-12 00:32:40,653.653 INFO    ] Launching Daemon at Fri Jun 12 00:32:40 IST 2026
[2026-06-12 00:32:40,664.664 INFO    ] ================================================
[2026-06-12 00:32:41,016.016 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 00:32:41
[2026-06-12 00:32:41,333.333 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 00:32:41,471.471 INFO    ] Initializing speech engine...
[2026-06-12 00:32:41,481.481 INFO    ] 2026-06-12 00:32:41
[2026-06-12 00:32:41,687.687 INFO    ] 2026-06-12 00:32:41
[2026-06-12 00:32:41,715.715 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 00:32:41,900.900 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 00:32:41,910.910 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 00:32:42,049.049 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 00:32:42,108.108 INFO    ] time= 12/06/2026 00:32:42
[2026-06-12 00:32:42,129.129 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 00:32:42,136.136 INFO    ] Checking for existing commands in stream...
[2026-06-12 00:32:42,227.227 INFO    ] No existing commands found in stream
[2026-06-12 00:32:47,241.241 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 00:32:47,244.244 INFO    ] Waiting 0.22 seconds before fallback handling...
[2026-06-12 00:32:47,835.835 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 00:32:47,836.836 INFO    ] Checking for system updates...
[2026-06-12 00:32:47,857.857 INFO    ] 200
[2026-06-12 00:32:47,858.858 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:32:47,888.888 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 00:32:47,890.890 INFO    ] No update needed
[2026-06-12 00:32:47,891.891 INFO    ] Checking for camera pi updates...
[2026-06-12 00:32:47,912.912 INFO    ] 200
[2026-06-12 00:32:47,913.913 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:32:47,937.937 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 00:32:47,984.984 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 00:32:47,985.985 INFO    ] No camera update needed
[2026-06-12 00:32:47,986.986 INFO    ] Script finished. Safe exiting...
[2026-06-12 00:32:47,987.987 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 00:32:47,991.991 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 00:32:47,993.993 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 00:32:50,024.024 INFO    ] ================================================
[2026-06-12 00:32:50,032.032 INFO    ] Launching Daemon at Fri Jun 12 00:32:50 IST 2026
[2026-06-12 00:32:50,043.043 INFO    ] ================================================
[2026-06-12 00:32:50,405.405 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 00:32:50
[2026-06-12 00:32:50,757.757 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 00:32:50,908.908 INFO    ] Initializing speech engine...
[2026-06-12 00:32:50,913.913 INFO    ] 2026-06-12 00:32:50
[2026-06-12 00:32:51,153.153 INFO    ] 2026-06-12 00:32:51
[2026-06-12 00:32:51,183.183 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 00:32:51,322.322 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 00:32:51,372.372 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 00:32:51,502.502 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 00:32:51,558.558 INFO    ] time= 12/06/2026 00:32:51
[2026-06-12 00:32:51,593.593 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 00:32:51,604.604 INFO    ] Checking for existing commands in stream...
[2026-06-12 00:32:51,676.676 INFO    ] No existing commands found in stream
[2026-06-12 00:32:56,700.700 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 00:32:56,703.703 INFO    ] Waiting 1.77 seconds before fallback handling...
[2026-06-12 00:32:58,853.853 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 00:32:58,855.855 INFO    ] Checking for system updates...
[2026-06-12 00:32:58,876.876 INFO    ] 200
[2026-06-12 00:32:58,878.878 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:32:58,908.908 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 00:32:58,910.910 INFO    ] No update needed
[2026-06-12 00:32:58,911.911 INFO    ] Checking for camera pi updates...
[2026-06-12 00:32:58,932.932 INFO    ] 200
[2026-06-12 00:32:58,934.934 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:32:58,961.961 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 00:32:59,009.009 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 00:32:59,011.011 INFO    ] No camera update needed
[2026-06-12 00:32:59,012.012 INFO    ] Script finished. Safe exiting...
[2026-06-12 00:32:59,014.014 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 00:32:59,017.017 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 00:32:59,020.020 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 00:33:01,058.058 INFO    ] ================================================
[2026-06-12 00:33:01,074.074 INFO    ] Launching Daemon at Fri Jun 12 00:33:01 IST 2026
[2026-06-12 00:33:01,084.084 INFO    ] ================================================
[2026-06-12 00:33:01,517.517 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 00:33:01
[2026-06-12 00:33:01,890.890 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 00:33:02,071.071 INFO    ] Initializing speech engine...
[2026-06-12 00:33:02,076.076 INFO    ] 2026-06-12 00:33:02
[2026-06-12 00:33:02,295.295 INFO    ] 2026-06-12 00:33:02
[2026-06-12 00:33:02,341.341 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 00:33:02,473.473 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 00:33:02,477.477 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 00:33:02,603.603 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 00:33:02,608.608 INFO    ] time= 12/06/2026 00:33:02
[2026-06-12 00:33:02,641.641 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 00:33:02,678.678 INFO    ] Checking for existing commands in stream...
[2026-06-12 00:33:02,798.798 INFO    ] No existing commands found in stream
[2026-06-12 00:33:07,817.817 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 00:33:07,827.827 INFO    ] Waiting 2.51 seconds before fallback handling...
[2026-06-12 00:33:10,748.748 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 00:33:10,750.750 INFO    ] Checking for system updates...
[2026-06-12 00:33:10,771.771 INFO    ] 200
[2026-06-12 00:33:10,773.773 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:33:10,804.804 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 00:33:10,805.805 INFO    ] No update needed
[2026-06-12 00:33:10,806.806 INFO    ] Checking for camera pi updates...
[2026-06-12 00:33:10,827.827 INFO    ] 200
[2026-06-12 00:33:10,829.829 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:33:10,857.857 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 00:33:10,932.932 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 00:33:10,933.933 INFO    ] No camera update needed
[2026-06-12 00:33:10,935.935 INFO    ] Script finished. Safe exiting...
[2026-06-12 00:33:10,936.936 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 00:33:10,939.939 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 00:33:10,942.942 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 00:33:12,982.982 INFO    ] ================================================
[2026-06-12 00:33:13,997.997 INFO    ] Launching Daemon at Fri Jun 12 00:33:12 IST 2026
[2026-06-12 00:33:13,009.009 INFO    ] ================================================
[2026-06-12 00:33:13,394.394 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 00:33:13
[2026-06-12 00:33:13,736.736 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 00:33:13,886.886 INFO    ] Initializing speech engine...
[2026-06-12 00:33:13,892.892 INFO    ] 2026-06-12 00:33:13
[2026-06-12 00:33:14,100.100 INFO    ] 2026-06-12 00:33:14
[2026-06-12 00:33:14,129.129 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 00:33:14,317.317 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 00:33:14,328.328 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 00:33:14,467.467 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 00:33:14,524.524 INFO    ] time= 12/06/2026 00:33:14
[2026-06-12 00:33:14,550.550 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 00:33:14,557.557 INFO    ] Checking for existing commands in stream...
[2026-06-12 00:33:14,622.622 INFO    ] No existing commands found in stream
[2026-06-12 00:33:19,633.633 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 00:33:19,637.637 INFO    ] Waiting 1.35 seconds before fallback handling...
[2026-06-12 00:33:21,412.412 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 00:33:21,414.414 INFO    ] Checking for system updates...
[2026-06-12 00:33:21,435.435 INFO    ] 200
[2026-06-12 00:33:21,436.436 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:33:21,467.467 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 00:33:21,469.469 INFO    ] No update needed
[2026-06-12 00:33:21,470.470 INFO    ] Checking for camera pi updates...
[2026-06-12 00:33:21,491.491 INFO    ] 200
[2026-06-12 00:33:21,492.492 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:33:21,516.516 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 00:33:21,557.557 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 00:33:21,559.559 INFO    ] No camera update needed
[2026-06-12 00:33:21,560.560 INFO    ] Script finished. Safe exiting...
[2026-06-12 00:33:21,562.562 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 00:33:21,565.565 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 00:33:21,568.568 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 00:33:23,609.609 INFO    ] ================================================
[2026-06-12 00:33:23,624.624 INFO    ] Launching Daemon at Fri Jun 12 00:33:23 IST 2026
[2026-06-12 00:33:23,635.635 INFO    ] ================================================
[2026-06-12 00:33:23,999.999 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 00:33:23
[2026-06-12 00:33:24,315.315 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 00:33:24,460.460 INFO    ] Initializing speech engine...
[2026-06-12 00:33:24,464.464 INFO    ] 2026-06-12 00:33:24
[2026-06-12 00:33:24,669.669 INFO    ] 2026-06-12 00:33:24
[2026-06-12 00:33:24,697.697 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 00:33:24,882.882 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 00:33:24,885.885 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 00:33:25,037.037 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 00:33:25,089.089 INFO    ] time= 12/06/2026 00:33:25
[2026-06-12 00:33:25,112.112 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 00:33:25,118.118 INFO    ] Checking for existing commands in stream...
[2026-06-12 00:33:25,185.185 INFO    ] No existing commands found in stream
[2026-06-12 00:33:30,217.217 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 00:33:30,220.220 INFO    ] Waiting 0.94 seconds before fallback handling...
[2026-06-12 00:33:31,541.541 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 00:33:31,543.543 INFO    ] Checking for system updates...
[2026-06-12 00:33:31,568.568 INFO    ] 200
[2026-06-12 00:33:31,570.570 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:33:31,608.608 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 00:33:31,610.610 INFO    ] No update needed
[2026-06-12 00:33:31,612.612 INFO    ] Checking for camera pi updates...
[2026-06-12 00:33:31,637.637 INFO    ] 200
[2026-06-12 00:33:31,638.638 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:33:31,667.667 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 00:33:31,712.712 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 00:33:31,714.714 INFO    ] No camera update needed
[2026-06-12 00:33:31,715.715 INFO    ] Script finished. Safe exiting...
[2026-06-12 00:33:31,717.717 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 00:33:31,721.721 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 00:33:31,725.725 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 00:33:33,764.764 INFO    ] ================================================
[2026-06-12 00:33:33,779.779 INFO    ] Launching Daemon at Fri Jun 12 00:33:33 IST 2026
[2026-06-12 00:33:33,790.790 INFO    ] ================================================
[2026-06-12 00:33:34,131.131 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 00:33:34
[2026-06-12 00:33:34,445.445 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 00:33:34,588.588 INFO    ] Initializing speech engine...
[2026-06-12 00:33:34,593.593 INFO    ] 2026-06-12 00:33:34
[2026-06-12 00:33:34,799.799 INFO    ] 2026-06-12 00:33:34
[2026-06-12 00:33:34,827.827 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 00:33:35,013.013 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 00:33:35,016.016 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 00:33:35,153.153 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 00:33:35,217.217 INFO    ] time= 12/06/2026 00:33:35
[2026-06-12 00:33:35,245.245 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 00:33:35,247.247 INFO    ] Checking for existing commands in stream...
[2026-06-12 00:33:35,318.318 INFO    ] No existing commands found in stream
[2026-06-12 00:33:40,328.328 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 00:33:40,331.331 INFO    ] Waiting 3.66 seconds before fallback handling...
[2026-06-12 00:33:44,352.352 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 00:33:44,354.354 INFO    ] Checking for system updates...
[2026-06-12 00:33:44,374.374 INFO    ] 200
[2026-06-12 00:33:44,376.376 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:33:44,406.406 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 00:33:44,407.407 INFO    ] No update needed
[2026-06-12 00:33:44,408.408 INFO    ] Checking for camera pi updates...
[2026-06-12 00:33:44,429.429 INFO    ] 200
[2026-06-12 00:33:44,430.430 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:33:44,454.454 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 00:33:44,503.503 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 00:33:44,504.504 INFO    ] No camera update needed
[2026-06-12 00:33:44,506.506 INFO    ] Script finished. Safe exiting...
[2026-06-12 00:33:44,507.507 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 00:33:44,510.510 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 00:33:44,513.513 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 00:33:46,553.553 INFO    ] ================================================
[2026-06-12 00:33:46,568.568 INFO    ] Launching Daemon at Fri Jun 12 00:33:46 IST 2026
[2026-06-12 00:33:46,579.579 INFO    ] ================================================
[2026-06-12 00:33:46,947.947 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 00:33:46
[2026-06-12 00:33:47,262.262 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 00:33:47,399.399 INFO    ] Initializing speech engine...
[2026-06-12 00:33:47,402.402 INFO    ] 2026-06-12 00:33:47
[2026-06-12 00:33:47,599.599 INFO    ] 2026-06-12 00:33:47
[2026-06-12 00:33:47,638.638 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 00:33:47,798.798 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 00:33:47,841.841 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 00:33:48,010.010 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 00:33:48,032.032 INFO    ] time= 12/06/2026 00:33:48
[2026-06-12 00:33:48,090.090 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 00:33:48,120.120 INFO    ] Checking for existing commands in stream...
[2026-06-12 00:33:48,198.198 INFO    ] No existing commands found in stream
[2026-06-12 00:33:53,209.209 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 00:33:53,212.212 INFO    ] Waiting 3.44 seconds before fallback handling...
[2026-06-12 00:33:57,024.024 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 00:33:57,025.025 INFO    ] Checking for system updates...
[2026-06-12 00:33:57,046.046 INFO    ] 200
[2026-06-12 00:33:57,047.047 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:33:57,077.077 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 00:33:57,079.079 INFO    ] No update needed
[2026-06-12 00:33:57,080.080 INFO    ] Checking for camera pi updates...
[2026-06-12 00:33:57,100.100 INFO    ] 200
[2026-06-12 00:33:57,101.101 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:33:57,124.124 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 00:33:57,169.169 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 00:33:57,170.170 INFO    ] No camera update needed
[2026-06-12 00:33:57,171.171 INFO    ] Script finished. Safe exiting...
[2026-06-12 00:33:57,173.173 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 00:33:57,176.176 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 00:33:57,178.178 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 00:33:59,217.217 INFO    ] ================================================
[2026-06-12 00:33:59,233.233 INFO    ] Launching Daemon at Fri Jun 12 00:33:59 IST 2026
[2026-06-12 00:33:59,244.244 INFO    ] ================================================
[2026-06-12 00:33:59,596.596 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 00:33:59
[2026-06-12 00:33:59,908.908 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 00:34:00,049.049 INFO    ] Initializing speech engine...
[2026-06-12 00:34:00,054.054 INFO    ] 2026-06-12 00:34:00
[2026-06-12 00:34:00,257.257 INFO    ] 2026-06-12 00:34:00
[2026-06-12 00:34:00,286.286 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 00:34:00,472.472 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 00:34:00,482.482 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 00:34:00,643.643 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 00:34:00,683.683 INFO    ] time= 12/06/2026 00:34:00
[2026-06-12 00:34:00,704.704 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 00:34:00,710.710 INFO    ] Checking for existing commands in stream...
[2026-06-12 00:34:00,775.775 INFO    ] No existing commands found in stream
[2026-06-12 00:34:05,782.782 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 00:34:05,785.785 INFO    ] Waiting 1.34 seconds before fallback handling...
[2026-06-12 00:34:07,502.502 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 00:34:07,503.503 INFO    ] Checking for system updates...
[2026-06-12 00:34:07,524.524 INFO    ] 200
[2026-06-12 00:34:07,525.525 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:34:07,556.556 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 00:34:07,557.557 INFO    ] No update needed
[2026-06-12 00:34:07,558.558 INFO    ] Checking for camera pi updates...
[2026-06-12 00:34:07,579.579 INFO    ] 200
[2026-06-12 00:34:07,580.580 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:34:07,604.604 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 00:34:07,634.634 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 00:34:07,636.636 INFO    ] No camera update needed
[2026-06-12 00:34:07,637.637 INFO    ] Script finished. Safe exiting...
[2026-06-12 00:34:07,638.638 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 00:34:07,641.641 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 00:34:07,644.644 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 00:34:09,683.683 INFO    ] ================================================
[2026-06-12 00:34:09,699.699 INFO    ] Launching Daemon at Fri Jun 12 00:34:09 IST 2026
[2026-06-12 00:34:09,710.710 INFO    ] ================================================
[2026-06-12 00:34:10,046.046 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 00:34:10
[2026-06-12 00:34:10,358.358 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 00:34:10,501.501 INFO    ] Initializing speech engine...
[2026-06-12 00:34:10,507.507 INFO    ] 2026-06-12 00:34:10
[2026-06-12 00:34:10,713.713 INFO    ] 2026-06-12 00:34:10
[2026-06-12 00:34:10,742.742 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 00:34:10,929.929 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 00:34:10,938.938 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 00:34:11,070.070 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 00:34:11,129.129 INFO    ] time= 12/06/2026 00:34:11
[2026-06-12 00:34:11,163.163 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 00:34:11,170.170 INFO    ] Checking for existing commands in stream...
[2026-06-12 00:34:11,238.238 INFO    ] No existing commands found in stream
[2026-06-12 00:34:16,252.252 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 00:34:16,255.255 INFO    ] Waiting 1.08 seconds before fallback handling...
[2026-06-12 00:34:17,618.618 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 00:34:17,619.619 INFO    ] Checking for system updates...
[2026-06-12 00:34:17,641.641 INFO    ] 200
[2026-06-12 00:34:17,642.642 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:34:17,676.676 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 00:34:17,677.677 INFO    ] No update needed
[2026-06-12 00:34:17,679.679 INFO    ] Checking for camera pi updates...
[2026-06-12 00:34:17,698.698 INFO    ] 200
[2026-06-12 00:34:17,699.699 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:34:17,723.723 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 00:34:17,781.781 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 00:34:17,782.782 INFO    ] No camera update needed
[2026-06-12 00:34:17,784.784 INFO    ] Script finished. Safe exiting...
[2026-06-12 00:34:17,786.786 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 00:34:17,790.790 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 00:34:17,794.794 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 00:34:19,836.836 INFO    ] ================================================
[2026-06-12 00:34:19,852.852 INFO    ] Launching Daemon at Fri Jun 12 00:34:19 IST 2026
[2026-06-12 00:34:19,865.865 INFO    ] ================================================
[2026-06-12 00:34:20,225.225 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 00:34:20
[2026-06-12 00:34:20,569.569 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 00:34:20,742.742 INFO    ] Initializing speech engine...
[2026-06-12 00:34:20,751.751 INFO    ] 2026-06-12 00:34:20
[2026-06-12 00:34:20,962.962 INFO    ] 2026-06-12 00:34:20
[2026-06-12 00:34:20,990.990 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 00:34:21,179.179 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 00:34:21,183.183 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 00:34:21,327.327 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 00:34:21,391.391 INFO    ] time= 12/06/2026 00:34:21
[2026-06-12 00:34:21,416.416 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 00:34:21,422.422 INFO    ] Checking for existing commands in stream...
[2026-06-12 00:34:21,491.491 INFO    ] No existing commands found in stream
[2026-06-12 00:34:26,505.505 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 00:34:26,508.508 INFO    ] Waiting 3.80 seconds before fallback handling...
[2026-06-12 00:34:30,675.675 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 00:34:30,677.677 INFO    ] Checking for system updates...
[2026-06-12 00:34:30,698.698 INFO    ] 200
[2026-06-12 00:34:30,700.700 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:34:30,731.731 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 00:34:30,732.732 INFO    ] No update needed
[2026-06-12 00:34:30,734.734 INFO    ] Checking for camera pi updates...
[2026-06-12 00:34:30,754.754 INFO    ] 200
[2026-06-12 00:34:30,755.755 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:34:30,779.779 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 00:34:30,824.824 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 00:34:30,825.825 INFO    ] No camera update needed
[2026-06-12 00:34:30,827.827 INFO    ] Script finished. Safe exiting...
[2026-06-12 00:34:30,828.828 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 00:34:30,832.832 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 00:34:30,835.835 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 00:34:32,860.860 INFO    ] ================================================
[2026-06-12 00:34:32,869.869 INFO    ] Launching Daemon at Fri Jun 12 00:34:32 IST 2026
[2026-06-12 00:34:32,875.875 INFO    ] ================================================
[2026-06-12 00:34:33,210.210 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 00:34:33
[2026-06-12 00:34:33,534.534 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 00:34:33,668.668 INFO    ] Initializing speech engine...
[2026-06-12 00:34:33,672.672 INFO    ] 2026-06-12 00:34:33
[2026-06-12 00:34:33,901.901 INFO    ] 2026-06-12 00:34:33
[2026-06-12 00:34:33,932.932 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 00:34:34,128.128 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 00:34:34,135.135 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 00:34:34,275.275 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 00:34:34,338.338 INFO    ] time= 12/06/2026 00:34:34
[2026-06-12 00:34:34,378.378 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 00:34:34,384.384 INFO    ] Checking for existing commands in stream...
[2026-06-12 00:34:34,461.461 INFO    ] No existing commands found in stream
[2026-06-12 00:34:39,470.470 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 00:34:39,473.473 INFO    ] Waiting 3.57 seconds before fallback handling...
[2026-06-12 00:34:43,412.412 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 00:34:43,413.413 INFO    ] Checking for system updates...
[2026-06-12 00:34:43,433.433 INFO    ] 200
[2026-06-12 00:34:43,435.435 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:34:43,464.464 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 00:34:43,466.466 INFO    ] No update needed
[2026-06-12 00:34:43,467.467 INFO    ] Checking for camera pi updates...
[2026-06-12 00:34:43,488.488 INFO    ] 200
[2026-06-12 00:34:43,490.490 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:34:43,517.517 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 00:34:43,660.660 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 00:34:43,662.662 INFO    ] No camera update needed
[2026-06-12 00:34:43,663.663 INFO    ] Script finished. Safe exiting...
[2026-06-12 00:34:43,664.664 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 00:34:43,667.667 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 00:34:43,670.670 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 00:34:45,708.708 INFO    ] ================================================
[2026-06-12 00:34:45,724.724 INFO    ] Launching Daemon at Fri Jun 12 00:34:45 IST 2026
[2026-06-12 00:34:45,735.735 INFO    ] ================================================
[2026-06-12 00:34:46,084.084 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 00:34:46
[2026-06-12 00:34:46,401.401 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 00:34:46,533.533 INFO    ] Initializing speech engine...
[2026-06-12 00:34:46,546.546 INFO    ] 2026-06-12 00:34:46
[2026-06-12 00:34:46,753.753 INFO    ] 2026-06-12 00:34:46
[2026-06-12 00:34:46,782.782 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 00:34:46,966.966 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 00:34:46,976.976 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 00:34:47,104.104 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 00:34:47,163.163 INFO    ] time= 12/06/2026 00:34:47
[2026-06-12 00:34:47,195.195 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 00:34:47,201.201 INFO    ] Checking for existing commands in stream...
[2026-06-12 00:34:47,274.274 INFO    ] No existing commands found in stream
[2026-06-12 00:34:52,301.301 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 00:34:52,304.304 INFO    ] Waiting 3.02 seconds before fallback handling...
[2026-06-12 00:34:55,703.703 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 00:34:55,705.705 INFO    ] Checking for system updates...
[2026-06-12 00:34:55,726.726 INFO    ] 200
[2026-06-12 00:34:55,728.728 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:34:55,763.763 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 00:34:55,765.765 INFO    ] No update needed
[2026-06-12 00:34:55,766.766 INFO    ] Checking for camera pi updates...
[2026-06-12 00:34:55,787.787 INFO    ] 200
[2026-06-12 00:34:55,788.788 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:34:55,811.811 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 00:34:55,856.856 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 00:34:55,857.857 INFO    ] No camera update needed
[2026-06-12 00:34:55,859.859 INFO    ] Script finished. Safe exiting...
[2026-06-12 00:34:55,860.860 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 00:34:55,863.863 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 00:34:55,866.866 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 00:34:57,904.904 INFO    ] ================================================
[2026-06-12 00:34:57,920.920 INFO    ] Launching Daemon at Fri Jun 12 00:34:57 IST 2026
[2026-06-12 00:34:57,931.931 INFO    ] ================================================
[2026-06-12 00:34:58,292.292 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 00:34:58
[2026-06-12 00:34:58,634.634 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 00:34:58,786.786 INFO    ] Initializing speech engine...
[2026-06-12 00:34:58,792.792 INFO    ] 2026-06-12 00:34:58
[2026-06-12 00:34:59,001.001 INFO    ] 2026-06-12 00:34:58
[2026-06-12 00:34:59,031.031 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 00:34:59,217.217 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 00:34:59,221.221 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 00:34:59,370.370 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 00:34:59,429.429 INFO    ] time= 12/06/2026 00:34:59
[2026-06-12 00:34:59,452.452 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 00:34:59,459.459 INFO    ] Checking for existing commands in stream...
[2026-06-12 00:34:59,526.526 INFO    ] No existing commands found in stream
[2026-06-12 00:35:04,535.535 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 00:35:04,539.539 INFO    ] Waiting 2.51 seconds before fallback handling...
[2026-06-12 00:35:07,432.432 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 00:35:07,434.434 INFO    ] Checking for system updates...
[2026-06-12 00:35:07,454.454 INFO    ] 200
[2026-06-12 00:35:07,456.456 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:35:07,490.490 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 00:35:07,491.491 INFO    ] No update needed
[2026-06-12 00:35:07,492.492 INFO    ] Checking for camera pi updates...
[2026-06-12 00:35:07,512.512 INFO    ] 200
[2026-06-12 00:35:07,513.513 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:35:07,536.536 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 00:35:07,561.561 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 00:35:07,563.563 INFO    ] No camera update needed
[2026-06-12 00:35:07,564.564 INFO    ] Script finished. Safe exiting...
[2026-06-12 00:35:07,565.565 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 00:35:07,569.569 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 00:35:07,572.572 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 00:35:09,610.610 INFO    ] ================================================
[2026-06-12 00:35:09,625.625 INFO    ] Launching Daemon at Fri Jun 12 00:35:09 IST 2026
[2026-06-12 00:35:09,636.636 INFO    ] ================================================
[2026-06-12 00:35:10,024.024 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 00:35:10
[2026-06-12 00:35:10,357.357 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 00:35:10,510.510 INFO    ] Initializing speech engine...
[2026-06-12 00:35:10,516.516 INFO    ] 2026-06-12 00:35:10
[2026-06-12 00:35:10,722.722 INFO    ] 2026-06-12 00:35:10
[2026-06-12 00:35:10,750.750 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 00:35:10,932.932 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 00:35:10,943.943 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 00:35:11,082.082 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 00:35:11,140.140 INFO    ] time= 12/06/2026 00:35:11
[2026-06-12 00:35:11,162.162 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 00:35:11,169.169 INFO    ] Checking for existing commands in stream...
[2026-06-12 00:35:11,235.235 INFO    ] No existing commands found in stream
[2026-06-12 00:35:16,245.245 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 00:35:16,248.248 INFO    ] Waiting 2.04 seconds before fallback handling...
[2026-06-12 00:35:18,676.676 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 00:35:18,678.678 INFO    ] Checking for system updates...
[2026-06-12 00:35:18,700.700 INFO    ] 200
[2026-06-12 00:35:18,701.701 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:35:18,734.734 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 00:35:18,735.735 INFO    ] No update needed
[2026-06-12 00:35:18,737.737 INFO    ] Checking for camera pi updates...
[2026-06-12 00:35:18,756.756 INFO    ] 200
[2026-06-12 00:35:18,757.757 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:35:18,784.784 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 00:35:18,825.825 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 00:35:18,826.826 INFO    ] No camera update needed
[2026-06-12 00:35:18,827.827 INFO    ] Script finished. Safe exiting...
[2026-06-12 00:35:18,829.829 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 00:35:18,832.832 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 00:35:18,835.835 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 00:35:20,872.872 INFO    ] ================================================
[2026-06-12 00:35:20,889.889 INFO    ] Launching Daemon at Fri Jun 12 00:35:20 IST 2026
[2026-06-12 00:35:20,900.900 INFO    ] ================================================
[2026-06-12 00:35:21,290.290 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 00:35:21
[2026-06-12 00:35:21,624.624 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 00:35:21,775.775 INFO    ] Initializing speech engine...
[2026-06-12 00:35:21,779.779 INFO    ] 2026-06-12 00:35:21
[2026-06-12 00:35:21,987.987 INFO    ] 2026-06-12 00:35:21
[2026-06-12 00:35:22,019.019 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 00:35:22,203.203 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 00:35:22,214.214 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 00:35:22,344.344 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 00:35:22,412.412 INFO    ] time= 12/06/2026 00:35:22
[2026-06-12 00:35:22,436.436 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 00:35:22,442.442 INFO    ] Checking for existing commands in stream...
[2026-06-12 00:35:22,509.509 INFO    ] No existing commands found in stream
[2026-06-12 00:35:27,534.534 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 00:35:27,537.537 INFO    ] Waiting 3.98 seconds before fallback handling...
[2026-06-12 00:35:31,860.860 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 00:35:31,862.862 INFO    ] Checking for system updates...
[2026-06-12 00:35:31,886.886 INFO    ] 200
[2026-06-12 00:35:31,888.888 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:35:31,924.924 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 00:35:31,927.927 INFO    ] No update needed
[2026-06-12 00:35:31,929.929 INFO    ] Checking for camera pi updates...
[2026-06-12 00:35:31,956.956 INFO    ] 200
[2026-06-12 00:35:31,958.958 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:35:31,990.990 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 00:35:32,027.027 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 00:35:32,029.029 INFO    ] No camera update needed
[2026-06-12 00:35:32,032.032 INFO    ] Script finished. Safe exiting...
[2026-06-12 00:35:32,035.035 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 00:35:32,039.039 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 00:35:32,043.043 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 00:35:34,084.084 INFO    ] ================================================
[2026-06-12 00:35:34,101.101 INFO    ] Launching Daemon at Fri Jun 12 00:35:34 IST 2026
[2026-06-12 00:35:34,112.112 INFO    ] ================================================
[2026-06-12 00:35:34,499.499 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 00:35:34
[2026-06-12 00:35:34,835.835 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 00:35:34,985.985 INFO    ] Initializing speech engine...
[2026-06-12 00:35:34,990.990 INFO    ] 2026-06-12 00:35:34
[2026-06-12 00:35:35,198.198 INFO    ] 2026-06-12 00:35:35
[2026-06-12 00:35:35,227.227 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 00:35:35,414.414 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 00:35:35,423.423 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 00:35:35,550.550 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 00:35:35,607.607 INFO    ] time= 12/06/2026 00:35:35
[2026-06-12 00:35:35,646.646 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 00:35:35,648.648 INFO    ] Checking for existing commands in stream...
[2026-06-12 00:35:35,743.743 INFO    ] No existing commands found in stream
[2026-06-12 00:35:40,757.757 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 00:35:40,760.760 INFO    ] Waiting 2.36 seconds before fallback handling...
[2026-06-12 00:35:43,475.475 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 00:35:43,477.477 INFO    ] Checking for system updates...
[2026-06-12 00:35:43,502.502 INFO    ] 200
[2026-06-12 00:35:43,503.503 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:35:43,537.537 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 00:35:43,538.538 INFO    ] No update needed
[2026-06-12 00:35:43,539.539 INFO    ] Checking for camera pi updates...
[2026-06-12 00:35:43,559.559 INFO    ] 200
[2026-06-12 00:35:43,560.560 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:35:43,587.587 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 00:35:43,628.628 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 00:35:43,629.629 INFO    ] No camera update needed
[2026-06-12 00:35:43,631.631 INFO    ] Script finished. Safe exiting...
[2026-06-12 00:35:43,632.632 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 00:35:43,635.635 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 00:35:43,638.638 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 00:35:45,676.676 INFO    ] ================================================
[2026-06-12 00:35:45,692.692 INFO    ] Launching Daemon at Fri Jun 12 00:35:45 IST 2026
[2026-06-12 00:35:45,703.703 INFO    ] ================================================
[2026-06-12 00:35:46,059.059 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 00:35:46
[2026-06-12 00:35:46,370.370 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 00:35:46,501.501 INFO    ] Initializing speech engine...
[2026-06-12 00:35:46,509.509 INFO    ] 2026-06-12 00:35:46
[2026-06-12 00:35:46,723.723 INFO    ] 2026-06-12 00:35:46
[2026-06-12 00:35:46,752.752 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 00:35:46,937.937 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 00:35:46,947.947 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 00:35:47,078.078 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 00:35:47,142.142 INFO    ] time= 12/06/2026 00:35:47
[2026-06-12 00:35:47,171.171 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 00:35:47,177.177 INFO    ] Checking for existing commands in stream...
[2026-06-12 00:35:47,244.244 INFO    ] No existing commands found in stream
[2026-06-12 00:35:52,264.264 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 00:35:52,266.266 INFO    ] Waiting 1.18 seconds before fallback handling...
[2026-06-12 00:35:53,823.823 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 00:35:53,825.825 INFO    ] Checking for system updates...
[2026-06-12 00:35:53,845.845 INFO    ] 200
[2026-06-12 00:35:53,847.847 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:35:53,876.876 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 00:35:53,878.878 INFO    ] No update needed
[2026-06-12 00:35:53,879.879 INFO    ] Checking for camera pi updates...
[2026-06-12 00:35:53,901.901 INFO    ] 200
[2026-06-12 00:35:53,902.902 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:35:53,925.925 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 00:35:53,968.968 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 00:35:53,969.969 INFO    ] No camera update needed
[2026-06-12 00:35:53,971.971 INFO    ] Script finished. Safe exiting...
[2026-06-12 00:35:53,972.972 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 00:35:53,975.975 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 00:35:53,977.977 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 00:35:56,016.016 INFO    ] ================================================
[2026-06-12 00:35:56,033.033 INFO    ] Launching Daemon at Fri Jun 12 00:35:56 IST 2026
[2026-06-12 00:35:56,043.043 INFO    ] ================================================
[2026-06-12 00:35:56,403.403 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 00:35:56
[2026-06-12 00:35:56,720.720 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 00:35:56,852.852 INFO    ] Initializing speech engine...
[2026-06-12 00:35:56,860.860 INFO    ] 2026-06-12 00:35:56
[2026-06-12 00:35:57,073.073 INFO    ] 2026-06-12 00:35:57
[2026-06-12 00:35:57,102.102 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 00:35:57,285.285 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 00:35:57,288.288 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 00:35:57,446.446 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 00:35:57,495.495 INFO    ] time= 12/06/2026 00:35:57
[2026-06-12 00:35:57,516.516 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 00:35:57,523.523 INFO    ] Checking for existing commands in stream...
[2026-06-12 00:35:57,589.589 INFO    ] No existing commands found in stream
[2026-06-12 00:36:02,602.602 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 00:36:02,605.605 INFO    ] Waiting 1.89 seconds before fallback handling...
[2026-06-12 00:36:04,885.885 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 00:36:04,887.887 INFO    ] Checking for system updates...
[2026-06-12 00:36:04,907.907 INFO    ] 200
[2026-06-12 00:36:04,909.909 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:36:04,943.943 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 00:36:04,944.944 INFO    ] No update needed
[2026-06-12 00:36:04,945.945 INFO    ] Checking for camera pi updates...
[2026-06-12 00:36:04,965.965 INFO    ] 200
[2026-06-12 00:36:04,966.966 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:36:04,991.991 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 00:36:05,034.034 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 00:36:05,036.036 INFO    ] No camera update needed
[2026-06-12 00:36:05,037.037 INFO    ] Script finished. Safe exiting...
[2026-06-12 00:36:05,038.038 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 00:36:05,041.041 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 00:36:05,044.044 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 00:36:07,083.083 INFO    ] ================================================
[2026-06-12 00:36:07,098.098 INFO    ] Launching Daemon at Fri Jun 12 00:36:07 IST 2026
[2026-06-12 00:36:07,109.109 INFO    ] ================================================
[2026-06-12 00:36:07,462.462 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 00:36:07
[2026-06-12 00:36:07,797.797 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 00:36:07,942.942 INFO    ] Initializing speech engine...
[2026-06-12 00:36:07,953.953 INFO    ] 2026-06-12 00:36:07
[2026-06-12 00:36:08,160.160 INFO    ] 2026-06-12 00:36:08
[2026-06-12 00:36:08,189.189 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 00:36:08,317.317 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 00:36:08,375.375 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 00:36:08,514.514 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 00:36:08,581.581 INFO    ] time= 12/06/2026 00:36:08
[2026-06-12 00:36:08,606.606 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 00:36:08,612.612 INFO    ] Checking for existing commands in stream...
[2026-06-12 00:36:08,704.704 INFO    ] No existing commands found in stream
[2026-06-12 00:36:13,718.718 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 00:36:13,721.721 INFO    ] Waiting 2.37 seconds before fallback handling...
[2026-06-12 00:36:16,489.489 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 00:36:16,491.491 INFO    ] Checking for system updates...
[2026-06-12 00:36:16,513.513 INFO    ] 200
[2026-06-12 00:36:16,514.514 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:36:16,547.547 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 00:36:16,549.549 INFO    ] No update needed
[2026-06-12 00:36:16,550.550 INFO    ] Checking for camera pi updates...
[2026-06-12 00:36:16,571.571 INFO    ] 200
[2026-06-12 00:36:16,573.573 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:36:16,600.600 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 00:36:16,643.643 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 00:36:16,644.644 INFO    ] No camera update needed
[2026-06-12 00:36:16,645.645 INFO    ] Script finished. Safe exiting...
[2026-06-12 00:36:16,647.647 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 00:36:16,650.650 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 00:36:16,653.653 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 00:36:18,691.691 INFO    ] ================================================
[2026-06-12 00:36:18,707.707 INFO    ] Launching Daemon at Fri Jun 12 00:36:18 IST 2026
[2026-06-12 00:36:18,719.719 INFO    ] ================================================
[2026-06-12 00:36:19,091.091 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 00:36:19
[2026-06-12 00:36:19,408.408 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 00:36:19,552.552 INFO    ] Initializing speech engine...
[2026-06-12 00:36:19,557.557 INFO    ] 2026-06-12 00:36:19
[2026-06-12 00:36:19,762.762 INFO    ] 2026-06-12 00:36:19
[2026-06-12 00:36:19,789.789 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 00:36:19,972.972 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 00:36:19,976.976 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 00:36:20,121.121 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 00:36:20,178.178 INFO    ] time= 12/06/2026 00:36:20
[2026-06-12 00:36:20,201.201 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 00:36:20,208.208 INFO    ] Checking for existing commands in stream...
[2026-06-12 00:36:20,274.274 INFO    ] No existing commands found in stream
[2026-06-12 00:36:25,288.288 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 00:36:25,291.291 INFO    ] Waiting 1.88 seconds before fallback handling...
[2026-06-12 00:36:27,555.555 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 00:36:27,556.556 INFO    ] Checking for system updates...
[2026-06-12 00:36:27,577.577 INFO    ] 200
[2026-06-12 00:36:27,578.578 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:36:27,609.609 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 00:36:27,611.611 INFO    ] No update needed
[2026-06-12 00:36:27,612.612 INFO    ] Checking for camera pi updates...
[2026-06-12 00:36:27,632.632 INFO    ] 200
[2026-06-12 00:36:27,633.633 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:36:27,659.659 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 00:36:27,701.701 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 00:36:27,702.702 INFO    ] No camera update needed
[2026-06-12 00:36:27,703.703 INFO    ] Script finished. Safe exiting...
[2026-06-12 00:36:27,705.705 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 00:36:27,708.708 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 00:36:27,711.711 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 00:36:29,753.753 INFO    ] ================================================
[2026-06-12 00:36:29,769.769 INFO    ] Launching Daemon at Fri Jun 12 00:36:29 IST 2026
[2026-06-12 00:36:29,781.781 INFO    ] ================================================
[2026-06-12 00:36:30,128.128 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 00:36:30
[2026-06-12 00:36:30,464.464 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 00:36:30,615.615 INFO    ] Initializing speech engine...
[2026-06-12 00:36:30,619.619 INFO    ] 2026-06-12 00:36:30
[2026-06-12 00:36:30,826.826 INFO    ] 2026-06-12 00:36:30
[2026-06-12 00:36:30,854.854 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 00:36:31,039.039 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 00:36:31,049.049 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 00:36:31,194.194 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 00:36:31,265.265 INFO    ] time= 12/06/2026 00:36:31
[2026-06-12 00:36:31,287.287 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 00:36:31,310.310 INFO    ] Checking for existing commands in stream...
[2026-06-12 00:36:31,418.418 INFO    ] No existing commands found in stream
[2026-06-12 00:36:36,428.428 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 00:36:36,431.431 INFO    ] Waiting 2.17 seconds before fallback handling...
[2026-06-12 00:36:38,944.944 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 00:36:38,945.945 INFO    ] Checking for system updates...
[2026-06-12 00:36:38,966.966 INFO    ] 200
[2026-06-12 00:36:38,967.967 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:36:39,002.002 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 00:36:39,003.003 INFO    ] No update needed
[2026-06-12 00:36:39,004.004 INFO    ] Checking for camera pi updates...
[2026-06-12 00:36:39,025.025 INFO    ] 200
[2026-06-12 00:36:39,026.026 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:36:39,049.049 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 00:36:39,094.094 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 00:36:39,095.095 INFO    ] No camera update needed
[2026-06-12 00:36:39,096.096 INFO    ] Script finished. Safe exiting...
[2026-06-12 00:36:39,097.097 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 00:36:39,100.100 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 00:36:39,103.103 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 00:36:41,141.141 INFO    ] ================================================
[2026-06-12 00:36:41,157.157 INFO    ] Launching Daemon at Fri Jun 12 00:36:41 IST 2026
[2026-06-12 00:36:41,168.168 INFO    ] ================================================
[2026-06-12 00:36:41,548.548 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 00:36:41
[2026-06-12 00:36:41,861.861 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 00:36:41,991.991 INFO    ] Initializing speech engine...
[2026-06-12 00:36:41,999.999 INFO    ] 2026-06-12 00:36:41
[2026-06-12 00:36:42,211.211 INFO    ] 2026-06-12 00:36:42
[2026-06-12 00:36:42,238.238 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 00:36:42,422.422 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 00:36:42,425.425 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 00:36:42,577.577 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 00:36:42,629.629 INFO    ] time= 12/06/2026 00:36:42
[2026-06-12 00:36:42,652.652 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 00:36:42,658.658 INFO    ] Checking for existing commands in stream...
[2026-06-12 00:36:42,725.725 INFO    ] No existing commands found in stream
[2026-06-12 00:36:47,734.734 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 00:36:47,736.736 INFO    ] Waiting 1.97 seconds before fallback handling...
[2026-06-12 00:36:50,035.035 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 00:36:50,036.036 INFO    ] Checking for system updates...
[2026-06-12 00:36:50,057.057 INFO    ] 200
[2026-06-12 00:36:50,059.059 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:36:50,091.091 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 00:36:50,093.093 INFO    ] No update needed
[2026-06-12 00:36:50,094.094 INFO    ] Checking for camera pi updates...
[2026-06-12 00:36:50,117.117 INFO    ] 200
[2026-06-12 00:36:50,119.119 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:36:50,145.145 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 00:36:50,296.296 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 00:36:50,298.298 INFO    ] No camera update needed
[2026-06-12 00:36:50,299.299 INFO    ] Script finished. Safe exiting...
[2026-06-12 00:36:50,301.301 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 00:36:50,304.304 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 00:36:50,307.307 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 00:36:52,349.349 INFO    ] ================================================
[2026-06-12 00:36:52,365.365 INFO    ] Launching Daemon at Fri Jun 12 00:36:52 IST 2026
[2026-06-12 00:36:52,376.376 INFO    ] ================================================
[2026-06-12 00:36:52,737.737 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 00:36:52
[2026-06-12 00:36:53,053.053 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 00:36:53,189.189 INFO    ] Initializing speech engine...
[2026-06-12 00:36:53,202.202 INFO    ] 2026-06-12 00:36:53
[2026-06-12 00:36:53,420.420 INFO    ] 2026-06-12 00:36:53
[2026-06-12 00:36:53,452.452 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 00:36:53,645.645 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 00:36:53,649.649 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 00:36:53,791.791 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 00:36:53,855.855 INFO    ] time= 12/06/2026 00:36:53
[2026-06-12 00:36:53,886.886 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 00:36:53,892.892 INFO    ] Checking for existing commands in stream...
[2026-06-12 00:36:53,959.959 INFO    ] No existing commands found in stream
[2026-06-12 00:36:58,968.968 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 00:36:58,971.971 INFO    ] Waiting 3.76 seconds before fallback handling...
[2026-06-12 00:37:03,077.077 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 00:37:03,078.078 INFO    ] Checking for system updates...
[2026-06-12 00:37:03,100.100 INFO    ] 200
[2026-06-12 00:37:03,101.101 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:37:03,133.133 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 00:37:03,135.135 INFO    ] No update needed
[2026-06-12 00:37:03,136.136 INFO    ] Checking for camera pi updates...
[2026-06-12 00:37:03,156.156 INFO    ] 200
[2026-06-12 00:37:03,158.158 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:37:03,181.181 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 00:37:03,225.225 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 00:37:03,226.226 INFO    ] No camera update needed
[2026-06-12 00:37:03,228.228 INFO    ] Script finished. Safe exiting...
[2026-06-12 00:37:03,229.229 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 00:37:03,232.232 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 00:37:03,235.235 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 00:37:05,274.274 INFO    ] ================================================
[2026-06-12 00:37:05,290.290 INFO    ] Launching Daemon at Fri Jun 12 00:37:05 IST 2026
[2026-06-12 00:37:05,301.301 INFO    ] ================================================
[2026-06-12 00:37:05,661.661 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 00:37:05
[2026-06-12 00:37:05,973.973 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 00:37:06,103.103 INFO    ] Initializing speech engine...
[2026-06-12 00:37:06,116.116 INFO    ] 2026-06-12 00:37:06
[2026-06-12 00:37:06,324.324 INFO    ] 2026-06-12 00:37:06
[2026-06-12 00:37:06,352.352 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 00:37:06,474.474 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 00:37:06,537.537 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 00:37:06,686.686 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 00:37:06,743.743 INFO    ] time= 12/06/2026 00:37:06
[2026-06-12 00:37:06,766.766 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 00:37:06,772.772 INFO    ] Checking for existing commands in stream...
[2026-06-12 00:37:06,839.839 INFO    ] No existing commands found in stream
[2026-06-12 00:37:11,848.848 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 00:37:11,851.851 INFO    ] Waiting 3.37 seconds before fallback handling...
[2026-06-12 00:37:15,584.584 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 00:37:15,586.586 INFO    ] Checking for system updates...
[2026-06-12 00:37:15,606.606 INFO    ] 200
[2026-06-12 00:37:15,607.607 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:37:15,639.639 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 00:37:15,641.641 INFO    ] No update needed
[2026-06-12 00:37:15,642.642 INFO    ] Checking for camera pi updates...
[2026-06-12 00:37:15,661.661 INFO    ] 200
[2026-06-12 00:37:15,663.663 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:37:15,686.686 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 00:37:15,740.740 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 00:37:15,742.742 INFO    ] No camera update needed
[2026-06-12 00:37:15,743.743 INFO    ] Script finished. Safe exiting...
[2026-06-12 00:37:15,744.744 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 00:37:15,747.747 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 00:37:15,750.750 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 00:37:17,788.788 INFO    ] ================================================
[2026-06-12 00:37:17,805.805 INFO    ] Launching Daemon at Fri Jun 12 00:37:17 IST 2026
[2026-06-12 00:37:17,816.816 INFO    ] ================================================
[2026-06-12 00:37:18,157.157 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 00:37:18
[2026-06-12 00:37:18,468.468 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 00:37:18,601.601 INFO    ] Initializing speech engine...
[2026-06-12 00:37:18,604.604 INFO    ] 2026-06-12 00:37:18
[2026-06-12 00:37:18,832.832 INFO    ] 2026-06-12 00:37:18
[2026-06-12 00:37:18,862.862 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 00:37:19,058.058 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 00:37:19,061.061 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 00:37:19,206.206 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 00:37:19,265.265 INFO    ] time= 12/06/2026 00:37:19
[2026-06-12 00:37:19,298.298 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 00:37:19,304.304 INFO    ] Checking for existing commands in stream...
[2026-06-12 00:37:19,381.381 INFO    ] No existing commands found in stream
[2026-06-12 00:37:24,390.390 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 00:37:24,393.393 INFO    ] Waiting 0.36 seconds before fallback handling...
[2026-06-12 00:37:25,146.146 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 00:37:25,147.147 INFO    ] Checking for system updates...
[2026-06-12 00:37:25,169.169 INFO    ] 200
[2026-06-12 00:37:25,171.171 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:37:25,204.204 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 00:37:25,205.205 INFO    ] No update needed
[2026-06-12 00:37:25,206.206 INFO    ] Checking for camera pi updates...
[2026-06-12 00:37:25,227.227 INFO    ] 200
[2026-06-12 00:37:25,228.228 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:37:25,254.254 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 00:37:25,306.306 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 00:37:25,307.307 INFO    ] No camera update needed
[2026-06-12 00:37:25,309.309 INFO    ] Script finished. Safe exiting...
[2026-06-12 00:37:25,310.310 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 00:37:25,313.313 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 00:37:25,316.316 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 00:37:27,355.355 INFO    ] ================================================
[2026-06-12 00:37:27,371.371 INFO    ] Launching Daemon at Fri Jun 12 00:37:27 IST 2026
[2026-06-12 00:37:27,382.382 INFO    ] ================================================
[2026-06-12 00:37:27,745.745 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 00:37:27
[2026-06-12 00:37:28,056.056 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 00:37:28,199.199 INFO    ] Initializing speech engine...
[2026-06-12 00:37:28,204.204 INFO    ] 2026-06-12 00:37:28
[2026-06-12 00:37:28,421.421 INFO    ] 2026-06-12 00:37:28
[2026-06-12 00:37:28,450.450 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 00:37:28,645.645 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 00:37:28,649.649 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 00:37:28,791.791 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 00:37:28,849.849 INFO    ] time= 12/06/2026 00:37:28
[2026-06-12 00:37:28,892.892 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 00:37:28,899.899 INFO    ] Checking for existing commands in stream...
[2026-06-12 00:37:28,971.971 INFO    ] No existing commands found in stream
[2026-06-12 00:37:33,980.980 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 00:37:33,983.983 INFO    ] Waiting 1.34 seconds before fallback handling...
[2026-06-12 00:37:35,692.692 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 00:37:35,694.694 INFO    ] Checking for system updates...
[2026-06-12 00:37:35,714.714 INFO    ] 200
[2026-06-12 00:37:35,715.715 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:37:35,748.748 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 00:37:35,749.749 INFO    ] No update needed
[2026-06-12 00:37:35,750.750 INFO    ] Checking for camera pi updates...
[2026-06-12 00:37:35,771.771 INFO    ] 200
[2026-06-12 00:37:35,772.772 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:37:35,797.797 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 00:37:35,838.838 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 00:37:35,840.840 INFO    ] No camera update needed
[2026-06-12 00:37:35,841.841 INFO    ] Script finished. Safe exiting...
[2026-06-12 00:37:35,842.842 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 00:37:35,845.845 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 00:37:35,848.848 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 00:37:37,887.887 INFO    ] ================================================
[2026-06-12 00:37:37,904.904 INFO    ] Launching Daemon at Fri Jun 12 00:37:37 IST 2026
[2026-06-12 00:37:37,915.915 INFO    ] ================================================
[2026-06-12 00:37:38,285.285 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 00:37:38
[2026-06-12 00:37:38,603.603 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 00:37:38,735.735 INFO    ] Initializing speech engine...
[2026-06-12 00:37:38,742.742 INFO    ] 2026-06-12 00:37:38
[2026-06-12 00:37:38,956.956 INFO    ] 2026-06-12 00:37:38
[2026-06-12 00:37:38,983.983 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 00:37:39,120.120 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 00:37:39,141.141 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 00:37:39,249.249 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 00:37:39,282.282 INFO    ] time= 12/06/2026 00:37:39
[2026-06-12 00:37:39,313.313 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 00:37:39,380.380 INFO    ] Checking for existing commands in stream...
[2026-06-12 00:37:39,475.475 INFO    ] No existing commands found in stream
[2026-06-12 00:37:44,489.489 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 00:37:44,492.492 INFO    ] Waiting 1.66 seconds before fallback handling...
[2026-06-12 00:37:46,558.558 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 00:37:46,561.561 INFO    ] Checking for system updates...
[2026-06-12 00:37:46,597.597 INFO    ] 200
[2026-06-12 00:37:46,599.599 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:37:46,654.654 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 00:37:46,657.657 INFO    ] No update needed
[2026-06-12 00:37:46,659.659 INFO    ] Checking for camera pi updates...
[2026-06-12 00:37:46,695.695 INFO    ] 200
[2026-06-12 00:37:46,696.696 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:37:46,720.720 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 00:37:46,774.774 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 00:37:46,776.776 INFO    ] No camera update needed
[2026-06-12 00:37:46,777.777 INFO    ] Script finished. Safe exiting...
[2026-06-12 00:37:46,778.778 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 00:37:46,781.781 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 00:37:46,784.784 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 00:37:48,823.823 INFO    ] ================================================
[2026-06-12 00:37:48,839.839 INFO    ] Launching Daemon at Fri Jun 12 00:37:48 IST 2026
[2026-06-12 00:37:48,852.852 INFO    ] ================================================
[2026-06-12 00:37:49,207.207 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 00:37:49
[2026-06-12 00:37:49,541.541 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 00:37:49,695.695 INFO    ] Initializing speech engine...
[2026-06-12 00:37:49,702.702 INFO    ] 2026-06-12 00:37:49
[2026-06-12 00:37:49,901.901 INFO    ] 2026-06-12 00:37:49
[2026-06-12 00:37:49,931.931 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 00:37:50,073.073 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 00:37:50,116.116 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 00:37:50,264.264 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 00:37:50,323.323 INFO    ] time= 12/06/2026 00:37:50
[2026-06-12 00:37:50,345.345 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 00:37:50,351.351 INFO    ] Checking for existing commands in stream...
[2026-06-12 00:37:50,416.416 INFO    ] No existing commands found in stream
[2026-06-12 00:37:55,427.427 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 00:37:55,430.430 INFO    ] Waiting 2.03 seconds before fallback handling...
[2026-06-12 00:37:59,199.199 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 00:37:59,203.203 INFO    ] Checking for system updates...
[2026-06-12 00:37:59,240.240 INFO    ] 200
[2026-06-12 00:37:59,243.243 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:37:59,288.288 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 00:37:59,290.290 INFO    ] No update needed
[2026-06-12 00:37:59,291.291 INFO    ] Checking for camera pi updates...
[2026-06-12 00:37:59,313.313 INFO    ] 200
[2026-06-12 00:37:59,314.314 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:37:59,340.340 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 00:37:59,382.382 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 00:37:59,383.383 INFO    ] No camera update needed
[2026-06-12 00:37:59,384.384 INFO    ] Script finished. Safe exiting...
[2026-06-12 00:37:59,386.386 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 00:37:59,389.389 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 00:37:59,392.392 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 00:38:01,430.430 INFO    ] ================================================
[2026-06-12 00:38:01,454.454 INFO    ] Launching Daemon at Fri Jun 12 00:38:01 IST 2026
[2026-06-12 00:38:01,471.471 INFO    ] ================================================
[2026-06-12 00:38:01,882.882 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 00:38:01
[2026-06-12 00:38:02,247.247 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 00:38:02,417.417 INFO    ] Initializing speech engine...
[2026-06-12 00:38:02,423.423 INFO    ] 2026-06-12 00:38:02
[2026-06-12 00:38:02,637.637 INFO    ] 2026-06-12 00:38:02
[2026-06-12 00:38:02,685.685 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 00:38:02,845.845 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 00:38:02,898.898 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 00:38:03,054.054 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 00:38:03,111.111 INFO    ] time= 12/06/2026 00:38:03
[2026-06-12 00:38:03,145.145 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 00:38:03,162.162 INFO    ] Checking for existing commands in stream...
[2026-06-12 00:38:03,232.232 INFO    ] No existing commands found in stream
[2026-06-12 00:38:08,241.241 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 00:38:08,244.244 INFO    ] Waiting 2.35 seconds before fallback handling...
[2026-06-12 00:38:11,002.002 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 00:38:11,003.003 INFO    ] Checking for system updates...
[2026-06-12 00:38:11,024.024 INFO    ] 200
[2026-06-12 00:38:11,026.026 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:38:11,058.058 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 00:38:11,060.060 INFO    ] No update needed
[2026-06-12 00:38:11,062.062 INFO    ] Checking for camera pi updates...
[2026-06-12 00:38:11,083.083 INFO    ] 200
[2026-06-12 00:38:11,084.084 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:38:11,108.108 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 00:38:11,208.208 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 00:38:11,210.210 INFO    ] No camera update needed
[2026-06-12 00:38:11,212.212 INFO    ] Script finished. Safe exiting...
[2026-06-12 00:38:11,213.213 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 00:38:11,216.216 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 00:38:11,219.219 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 00:38:13,257.257 INFO    ] ================================================
[2026-06-12 00:38:13,273.273 INFO    ] Launching Daemon at Fri Jun 12 00:38:13 IST 2026
[2026-06-12 00:38:13,284.284 INFO    ] ================================================
[2026-06-12 00:38:13,628.628 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 00:38:13
[2026-06-12 00:38:13,939.939 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 00:38:14,070.070 INFO    ] Initializing speech engine...
[2026-06-12 00:38:14,075.075 INFO    ] 2026-06-12 00:38:14
[2026-06-12 00:38:14,294.294 INFO    ] 2026-06-12 00:38:14
[2026-06-12 00:38:14,323.323 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 00:38:14,510.510 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 00:38:14,513.513 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 00:38:14,651.651 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 00:38:14,705.705 INFO    ] time= 12/06/2026 00:38:14
[2026-06-12 00:38:14,741.741 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 00:38:14,746.746 INFO    ] Checking for existing commands in stream...
[2026-06-12 00:38:14,818.818 INFO    ] No existing commands found in stream
[2026-06-12 00:38:19,827.827 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 00:38:19,830.830 INFO    ] Waiting 0.44 seconds before fallback handling...
[2026-06-12 00:38:20,600.600 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 00:38:20,602.602 INFO    ] Checking for system updates...
[2026-06-12 00:38:20,622.622 INFO    ] 200
[2026-06-12 00:38:20,623.623 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:38:20,656.656 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 00:38:20,657.657 INFO    ] No update needed
[2026-06-12 00:38:20,658.658 INFO    ] Checking for camera pi updates...
[2026-06-12 00:38:20,679.679 INFO    ] 200
[2026-06-12 00:38:20,680.680 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:38:20,704.704 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 00:38:20,749.749 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 00:38:20,751.751 INFO    ] No camera update needed
[2026-06-12 00:38:20,752.752 INFO    ] Script finished. Safe exiting...
[2026-06-12 00:38:20,753.753 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 00:38:20,756.756 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 00:38:20,759.759 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 00:38:22,791.791 INFO    ] ================================================
[2026-06-12 00:38:22,805.805 INFO    ] Launching Daemon at Fri Jun 12 00:38:22 IST 2026
[2026-06-12 00:38:22,816.816 INFO    ] ================================================
[2026-06-12 00:38:23,201.201 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 00:38:23
[2026-06-12 00:38:23,537.537 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 00:38:23,689.689 INFO    ] Initializing speech engine...
[2026-06-12 00:38:23,693.693 INFO    ] 2026-06-12 00:38:23
[2026-06-12 00:38:23,896.896 INFO    ] 2026-06-12 00:38:23
[2026-06-12 00:38:23,924.924 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 00:38:24,109.109 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 00:38:24,117.117 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 00:38:24,267.267 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 00:38:24,315.315 INFO    ] time= 12/06/2026 00:38:24
[2026-06-12 00:38:24,337.337 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 00:38:24,343.343 INFO    ] Checking for existing commands in stream...
[2026-06-12 00:38:24,410.410 INFO    ] No existing commands found in stream
[2026-06-12 00:38:29,419.419 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 00:38:29,422.422 INFO    ] Waiting 0.17 seconds before fallback handling...
[2026-06-12 00:38:29,944.944 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 00:38:29,945.945 INFO    ] Checking for system updates...
[2026-06-12 00:38:29,967.967 INFO    ] 200
[2026-06-12 00:38:29,968.968 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:38:29,999.999 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 00:38:30,000.000 INFO    ] No update needed
[2026-06-12 00:38:30,002.002 INFO    ] Checking for camera pi updates...
[2026-06-12 00:38:30,024.024 INFO    ] 200
[2026-06-12 00:38:30,025.025 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:38:30,048.048 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 00:38:30,098.098 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 00:38:30,099.099 INFO    ] No camera update needed
[2026-06-12 00:38:30,100.100 INFO    ] Script finished. Safe exiting...
[2026-06-12 00:38:30,102.102 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 00:38:30,105.105 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 00:38:30,107.107 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 00:38:32,138.138 INFO    ] ================================================
[2026-06-12 00:38:32,148.148 INFO    ] Launching Daemon at Fri Jun 12 00:38:32 IST 2026
[2026-06-12 00:38:32,154.154 INFO    ] ================================================
[2026-06-12 00:38:32,520.520 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 00:38:32
[2026-06-12 00:38:32,832.832 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 00:38:32,961.961 INFO    ] Initializing speech engine...
[2026-06-12 00:38:32,965.965 INFO    ] 2026-06-12 00:38:32
[2026-06-12 00:38:33,185.185 INFO    ] 2026-06-12 00:38:33
[2026-06-12 00:38:33,213.213 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 00:38:33,400.400 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 00:38:33,410.410 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 00:38:33,542.542 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 00:38:33,601.601 INFO    ] time= 12/06/2026 00:38:33
[2026-06-12 00:38:33,631.631 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 00:38:33,636.636 INFO    ] Checking for existing commands in stream...
[2026-06-12 00:38:33,709.709 INFO    ] No existing commands found in stream
[2026-06-12 00:38:38,718.718 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 00:38:38,721.721 INFO    ] Waiting 2.37 seconds before fallback handling...
[2026-06-12 00:38:41,478.478 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 00:38:41,479.479 INFO    ] Checking for system updates...
[2026-06-12 00:38:41,501.501 INFO    ] 200
[2026-06-12 00:38:41,502.502 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:38:41,533.533 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 00:38:41,534.534 INFO    ] No update needed
[2026-06-12 00:38:41,536.536 INFO    ] Checking for camera pi updates...
[2026-06-12 00:38:41,555.555 INFO    ] 200
[2026-06-12 00:38:41,557.557 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:38:41,581.581 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 00:38:41,625.625 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 00:38:41,627.627 INFO    ] No camera update needed
[2026-06-12 00:38:41,628.628 INFO    ] Script finished. Safe exiting...
[2026-06-12 00:38:41,629.629 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 00:38:41,633.633 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 00:38:41,636.636 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 00:38:43,674.674 INFO    ] ================================================
[2026-06-12 00:38:43,690.690 INFO    ] Launching Daemon at Fri Jun 12 00:38:43 IST 2026
[2026-06-12 00:38:43,701.701 INFO    ] ================================================
[2026-06-12 00:38:44,083.083 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 00:38:44
[2026-06-12 00:38:44,413.413 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 00:38:44,545.545 INFO    ] Initializing speech engine...
[2026-06-12 00:38:44,559.559 INFO    ] 2026-06-12 00:38:44
[2026-06-12 00:38:44,763.763 INFO    ] 2026-06-12 00:38:44
[2026-06-12 00:38:44,793.793 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 00:38:44,929.929 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 00:38:44,982.982 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 00:38:45,119.119 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 00:38:45,178.178 INFO    ] time= 12/06/2026 00:38:45
[2026-06-12 00:38:45,210.210 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 00:38:45,216.216 INFO    ] Checking for existing commands in stream...
[2026-06-12 00:38:45,283.283 INFO    ] No existing commands found in stream
[2026-06-12 00:38:50,292.292 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 00:38:50,294.294 INFO    ] Waiting 0.66 seconds before fallback handling...
[2026-06-12 00:38:51,344.344 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 00:38:51,346.346 INFO    ] Checking for system updates...
[2026-06-12 00:38:51,367.367 INFO    ] 200
[2026-06-12 00:38:51,369.369 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:38:51,399.399 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 00:38:51,400.400 INFO    ] No update needed
[2026-06-12 00:38:51,402.402 INFO    ] Checking for camera pi updates...
[2026-06-12 00:38:51,422.422 INFO    ] 200
[2026-06-12 00:38:51,424.424 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:38:51,448.448 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 00:38:51,586.586 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 00:38:51,587.587 INFO    ] No camera update needed
[2026-06-12 00:38:51,589.589 INFO    ] Script finished. Safe exiting...
[2026-06-12 00:38:51,590.590 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 00:38:51,593.593 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 00:38:51,596.596 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 00:38:53,638.638 INFO    ] ================================================
[2026-06-12 00:38:53,653.653 INFO    ] Launching Daemon at Fri Jun 12 00:38:53 IST 2026
[2026-06-12 00:38:53,664.664 INFO    ] ================================================
[2026-06-12 00:38:54,016.016 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 00:38:54
[2026-06-12 00:38:54,345.345 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 00:38:54,488.488 INFO    ] Initializing speech engine...
[2026-06-12 00:38:54,492.492 INFO    ] 2026-06-12 00:38:54
[2026-06-12 00:38:54,698.698 INFO    ] 2026-06-12 00:38:54
[2026-06-12 00:38:54,727.727 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 00:38:54,913.913 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 00:38:54,921.921 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 00:38:55,052.052 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 00:38:55,119.119 INFO    ] time= 12/06/2026 00:38:55
[2026-06-12 00:38:55,143.143 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 00:38:55,150.150 INFO    ] Checking for existing commands in stream...
[2026-06-12 00:38:55,218.218 INFO    ] No existing commands found in stream
[2026-06-12 00:39:00,242.242 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 00:39:00,245.245 INFO    ] Waiting 3.18 seconds before fallback handling...
[2026-06-12 00:39:03,789.789 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 00:39:03,790.790 INFO    ] Checking for system updates...
[2026-06-12 00:39:03,812.812 INFO    ] 200
[2026-06-12 00:39:03,813.813 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:39:03,843.843 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 00:39:03,844.844 INFO    ] No update needed
[2026-06-12 00:39:03,846.846 INFO    ] Checking for camera pi updates...
[2026-06-12 00:39:03,865.865 INFO    ] 200
[2026-06-12 00:39:03,866.866 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:39:03,892.892 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 00:39:03,942.942 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 00:39:03,943.943 INFO    ] No camera update needed
[2026-06-12 00:39:03,944.944 INFO    ] Script finished. Safe exiting...
[2026-06-12 00:39:03,945.945 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 00:39:03,948.948 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 00:39:03,951.951 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 00:39:05,991.991 INFO    ] ================================================
[2026-06-12 00:39:06,007.007 INFO    ] Launching Daemon at Fri Jun 12 00:39:06 IST 2026
[2026-06-12 00:39:06,017.017 INFO    ] ================================================
[2026-06-12 00:39:06,389.389 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 00:39:06
[2026-06-12 00:39:06,705.705 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 00:39:06,843.843 INFO    ] Initializing speech engine...
[2026-06-12 00:39:06,853.853 INFO    ] 2026-06-12 00:39:06
[2026-06-12 00:39:07,058.058 INFO    ] 2026-06-12 00:39:07
[2026-06-12 00:39:07,087.087 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 00:39:07,269.269 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 00:39:07,277.277 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 00:39:07,406.406 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 00:39:07,470.470 INFO    ] time= 12/06/2026 00:39:07
[2026-06-12 00:39:07,497.497 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 00:39:07,503.503 INFO    ] Checking for existing commands in stream...
[2026-06-12 00:39:07,569.569 INFO    ] No existing commands found in stream
[2026-06-12 00:39:12,578.578 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 00:39:12,581.581 INFO    ] Waiting 2.06 seconds before fallback handling...
[2026-06-12 00:39:15,014.014 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 00:39:15,015.015 INFO    ] Checking for system updates...
[2026-06-12 00:39:15,037.037 INFO    ] 200
[2026-06-12 00:39:15,039.039 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:39:15,071.071 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 00:39:15,072.072 INFO    ] No update needed
[2026-06-12 00:39:15,073.073 INFO    ] Checking for camera pi updates...
[2026-06-12 00:39:15,093.093 INFO    ] 200
[2026-06-12 00:39:15,094.094 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:39:15,121.121 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 00:39:15,168.168 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 00:39:15,169.169 INFO    ] No camera update needed
[2026-06-12 00:39:15,171.171 INFO    ] Script finished. Safe exiting...
[2026-06-12 00:39:15,172.172 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 00:39:15,175.175 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 00:39:15,177.177 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 00:39:17,220.220 INFO    ] ================================================
[2026-06-12 00:39:17,235.235 INFO    ] Launching Daemon at Fri Jun 12 00:39:17 IST 2026
[2026-06-12 00:39:17,246.246 INFO    ] ================================================
[2026-06-12 00:39:17,615.615 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 00:39:17
[2026-06-12 00:39:17,931.931 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 00:39:18,064.064 INFO    ] Initializing speech engine...
[2026-06-12 00:39:18,069.069 INFO    ] 2026-06-12 00:39:18
[2026-06-12 00:39:18,301.301 INFO    ] 2026-06-12 00:39:18
[2026-06-12 00:39:18,332.332 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 00:39:18,528.528 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 00:39:18,532.532 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 00:39:18,671.671 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 00:39:18,717.717 INFO    ] time= 12/06/2026 00:39:18
[2026-06-12 00:39:18,755.755 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 00:39:18,778.778 INFO    ] Checking for existing commands in stream...
[2026-06-12 00:39:18,853.853 INFO    ] No existing commands found in stream
[2026-06-12 00:39:23,864.864 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 00:39:23,867.867 INFO    ] Waiting 2.94 seconds before fallback handling...
[2026-06-12 00:39:27,272.272 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 00:39:27,274.274 INFO    ] Checking for system updates...
[2026-06-12 00:39:27,296.296 INFO    ] 200
[2026-06-12 00:39:27,297.297 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:39:27,332.332 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 00:39:27,334.334 INFO    ] No update needed
[2026-06-12 00:39:27,335.335 INFO    ] Checking for camera pi updates...
[2026-06-12 00:39:27,356.356 INFO    ] 200
[2026-06-12 00:39:27,357.357 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:39:27,384.384 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 00:39:27,428.428 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 00:39:27,430.430 INFO    ] No camera update needed
[2026-06-12 00:39:27,431.431 INFO    ] Script finished. Safe exiting...
[2026-06-12 00:39:27,433.433 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 00:39:27,436.436 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 00:39:27,439.439 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 00:39:29,478.478 INFO    ] ================================================
[2026-06-12 00:39:29,493.493 INFO    ] Launching Daemon at Fri Jun 12 00:39:29 IST 2026
[2026-06-12 00:39:29,504.504 INFO    ] ================================================
[2026-06-12 00:39:29,870.870 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 00:39:29
[2026-06-12 00:39:30,180.180 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 00:39:30,318.318 INFO    ] Initializing speech engine...
[2026-06-12 00:39:30,328.328 INFO    ] 2026-06-12 00:39:30
[2026-06-12 00:39:30,534.534 INFO    ] 2026-06-12 00:39:30
[2026-06-12 00:39:30,563.563 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 00:39:30,748.748 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 00:39:30,758.758 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 00:39:30,905.905 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 00:39:30,959.959 INFO    ] time= 12/06/2026 00:39:30
[2026-06-12 00:39:30,982.982 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 00:39:30,988.988 INFO    ] Checking for existing commands in stream...
[2026-06-12 00:39:31,056.056 INFO    ] No existing commands found in stream
[2026-06-12 00:39:36,065.065 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 00:39:36,067.067 INFO    ] Waiting 2.99 seconds before fallback handling...
[2026-06-12 00:39:39,427.427 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 00:39:39,429.429 INFO    ] Checking for system updates...
[2026-06-12 00:39:39,450.450 INFO    ] 200
[2026-06-12 00:39:39,452.452 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:39:39,482.482 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 00:39:39,483.483 INFO    ] No update needed
[2026-06-12 00:39:39,485.485 INFO    ] Checking for camera pi updates...
[2026-06-12 00:39:39,504.504 INFO    ] 200
[2026-06-12 00:39:39,505.505 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:39:39,528.528 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 00:39:39,573.573 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 00:39:39,574.574 INFO    ] No camera update needed
[2026-06-12 00:39:39,575.575 INFO    ] Script finished. Safe exiting...
[2026-06-12 00:39:39,577.577 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 00:39:39,579.579 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 00:39:39,582.582 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 00:39:41,622.622 INFO    ] ================================================
[2026-06-12 00:39:41,638.638 INFO    ] Launching Daemon at Fri Jun 12 00:39:41 IST 2026
[2026-06-12 00:39:41,649.649 INFO    ] ================================================
[2026-06-12 00:39:42,025.025 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 00:39:42
[2026-06-12 00:39:42,364.364 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 00:39:42,515.515 INFO    ] Initializing speech engine...
[2026-06-12 00:39:42,520.520 INFO    ] 2026-06-12 00:39:42
[2026-06-12 00:39:42,727.727 INFO    ] 2026-06-12 00:39:42
[2026-06-12 00:39:42,758.758 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 00:39:42,940.940 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 00:39:42,950.950 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 00:39:43,078.078 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 00:39:43,139.139 INFO    ] time= 12/06/2026 00:39:43
[2026-06-12 00:39:43,171.171 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 00:39:43,178.178 INFO    ] Checking for existing commands in stream...
[2026-06-12 00:39:43,269.269 INFO    ] No existing commands found in stream
[2026-06-12 00:39:48,283.283 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 00:39:48,286.286 INFO    ] Waiting 3.77 seconds before fallback handling...
[2026-06-12 00:39:52,464.464 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 00:39:52,465.465 INFO    ] Checking for system updates...
[2026-06-12 00:39:52,486.486 INFO    ] 200
[2026-06-12 00:39:52,488.488 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:39:52,521.521 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 00:39:52,522.522 INFO    ] No update needed
[2026-06-12 00:39:52,524.524 INFO    ] Checking for camera pi updates...
[2026-06-12 00:39:52,545.545 INFO    ] 200
[2026-06-12 00:39:52,546.546 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:39:52,573.573 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 00:39:52,626.626 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 00:39:52,627.627 INFO    ] No camera update needed
[2026-06-12 00:39:52,629.629 INFO    ] Script finished. Safe exiting...
[2026-06-12 00:39:52,630.630 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 00:39:52,633.633 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 00:39:52,636.636 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 00:39:54,676.676 INFO    ] ================================================
[2026-06-12 00:39:54,692.692 INFO    ] Launching Daemon at Fri Jun 12 00:39:54 IST 2026
[2026-06-12 00:39:54,703.703 INFO    ] ================================================
[2026-06-12 00:39:55,057.057 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 00:39:55
[2026-06-12 00:39:55,396.396 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 00:39:55,552.552 INFO    ] Initializing speech engine...
[2026-06-12 00:39:55,556.556 INFO    ] 2026-06-12 00:39:55
[2026-06-12 00:39:55,766.766 INFO    ] 2026-06-12 00:39:55
[2026-06-12 00:39:55,794.794 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 00:39:55,920.920 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 00:39:55,957.957 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 00:39:56,124.124 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 00:39:56,192.192 INFO    ] time= 12/06/2026 00:39:56
[2026-06-12 00:39:56,217.217 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 00:39:56,223.223 INFO    ] Checking for existing commands in stream...
[2026-06-12 00:39:56,292.292 INFO    ] No existing commands found in stream
[2026-06-12 00:40:01,306.306 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 00:40:01,309.309 INFO    ] Waiting 1.35 seconds before fallback handling...
[2026-06-12 00:40:03,654.654 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 00:40:03,657.657 INFO    ] Checking for system updates...
[2026-06-12 00:40:03,694.694 INFO    ] 200
[2026-06-12 00:40:03,696.696 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:40:03,754.754 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 00:40:03,756.756 INFO    ] No update needed
[2026-06-12 00:40:03,759.759 INFO    ] Checking for camera pi updates...
[2026-06-12 00:40:03,788.788 INFO    ] 200
[2026-06-12 00:40:03,790.790 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:40:03,813.813 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 00:40:03,841.841 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 00:40:03,843.843 INFO    ] No camera update needed
[2026-06-12 00:40:03,844.844 INFO    ] Script finished. Safe exiting...
[2026-06-12 00:40:03,845.845 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 00:40:03,848.848 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 00:40:03,851.851 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 00:40:05,891.891 INFO    ] ================================================
[2026-06-12 00:40:05,908.908 INFO    ] Launching Daemon at Fri Jun 12 00:40:05 IST 2026
[2026-06-12 00:40:05,919.919 INFO    ] ================================================
[2026-06-12 00:40:06,305.305 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 00:40:06
[2026-06-12 00:40:06,658.658 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 00:40:06,811.811 INFO    ] Initializing speech engine...
[2026-06-12 00:40:06,816.816 INFO    ] 2026-06-12 00:40:06
[2026-06-12 00:40:07,020.020 INFO    ] 2026-06-12 00:40:07
[2026-06-12 00:40:07,049.049 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 00:40:07,235.235 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 00:40:07,245.245 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 00:40:07,375.375 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 00:40:07,444.444 INFO    ] time= 12/06/2026 00:40:07
[2026-06-12 00:40:07,467.467 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 00:40:07,474.474 INFO    ] Checking for existing commands in stream...
[2026-06-12 00:40:07,541.541 INFO    ] No existing commands found in stream
[2026-06-12 00:40:12,548.548 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 00:40:12,552.552 INFO    ] Waiting 2.65 seconds before fallback handling...
[2026-06-12 00:40:15,597.597 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 00:40:15,599.599 INFO    ] Checking for system updates...
[2026-06-12 00:40:15,620.620 INFO    ] 200
[2026-06-12 00:40:15,621.621 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:40:15,651.651 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 00:40:15,653.653 INFO    ] No update needed
[2026-06-12 00:40:15,654.654 INFO    ] Checking for camera pi updates...
[2026-06-12 00:40:15,673.673 INFO    ] 200
[2026-06-12 00:40:15,674.674 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:40:15,697.697 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 00:40:15,742.742 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 00:40:15,743.743 INFO    ] No camera update needed
[2026-06-12 00:40:15,744.744 INFO    ] Script finished. Safe exiting...
[2026-06-12 00:40:15,746.746 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 00:40:15,748.748 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 00:40:15,751.751 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 00:40:17,790.790 INFO    ] ================================================
[2026-06-12 00:40:17,805.805 INFO    ] Launching Daemon at Fri Jun 12 00:40:17 IST 2026
[2026-06-12 00:40:17,817.817 INFO    ] ================================================
[2026-06-12 00:40:18,181.181 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 00:40:18
[2026-06-12 00:40:18,495.495 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 00:40:18,638.638 INFO    ] Initializing speech engine...
[2026-06-12 00:40:18,642.642 INFO    ] 2026-06-12 00:40:18
[2026-06-12 00:40:18,846.846 INFO    ] 2026-06-12 00:40:18
[2026-06-12 00:40:18,875.875 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 00:40:19,060.060 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 00:40:19,064.064 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 00:40:19,228.228 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 00:40:19,272.272 INFO    ] time= 12/06/2026 00:40:19
[2026-06-12 00:40:19,294.294 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 00:40:19,300.300 INFO    ] Checking for existing commands in stream...
[2026-06-12 00:40:19,367.367 INFO    ] No existing commands found in stream
[2026-06-12 00:40:24,376.376 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 00:40:24,378.378 INFO    ] Waiting 3.81 seconds before fallback handling...
[2026-06-12 00:40:28,602.602 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 00:40:28,604.604 INFO    ] Checking for system updates...
[2026-06-12 00:40:28,641.641 INFO    ] 200
[2026-06-12 00:40:28,644.644 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:40:28,703.703 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 00:40:28,705.705 INFO    ] No update needed
[2026-06-12 00:40:28,708.708 INFO    ] Checking for camera pi updates...
[2026-06-12 00:40:28,739.739 INFO    ] 200
[2026-06-12 00:40:28,741.741 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:40:28,766.766 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 00:40:28,816.816 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 00:40:28,817.817 INFO    ] No camera update needed
[2026-06-12 00:40:28,818.818 INFO    ] Script finished. Safe exiting...
[2026-06-12 00:40:28,820.820 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 00:40:28,823.823 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 00:40:28,826.826 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 00:40:30,866.866 INFO    ] ================================================
[2026-06-12 00:40:30,882.882 INFO    ] Launching Daemon at Fri Jun 12 00:40:30 IST 2026
[2026-06-12 00:40:30,893.893 INFO    ] ================================================
[2026-06-12 00:40:31,262.262 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 00:40:31
[2026-06-12 00:40:31,598.598 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 00:40:31,742.742 INFO    ] Initializing speech engine...
[2026-06-12 00:40:31,752.752 INFO    ] 2026-06-12 00:40:31
[2026-06-12 00:40:31,959.959 INFO    ] 2026-06-12 00:40:31
[2026-06-12 00:40:31,988.988 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 00:40:32,177.177 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 00:40:32,189.189 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 00:40:32,355.355 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 00:40:32,401.401 INFO    ] time= 12/06/2026 00:40:32
[2026-06-12 00:40:32,424.424 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 00:40:32,431.431 INFO    ] Checking for existing commands in stream...
[2026-06-12 00:40:32,502.502 INFO    ] No existing commands found in stream
[2026-06-12 00:40:37,512.512 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 00:40:37,515.515 INFO    ] Waiting 1.19 seconds before fallback handling...
[2026-06-12 00:40:39,076.076 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 00:40:39,078.078 INFO    ] Checking for system updates...
[2026-06-12 00:40:39,098.098 INFO    ] 200
[2026-06-12 00:40:39,100.100 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:40:39,130.130 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 00:40:39,132.132 INFO    ] No update needed
[2026-06-12 00:40:39,133.133 INFO    ] Checking for camera pi updates...
[2026-06-12 00:40:39,153.153 INFO    ] 200
[2026-06-12 00:40:39,154.154 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:40:39,177.177 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 00:40:39,222.222 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 00:40:39,224.224 INFO    ] No camera update needed
[2026-06-12 00:40:39,225.225 INFO    ] Script finished. Safe exiting...
[2026-06-12 00:40:39,226.226 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 00:40:39,229.229 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 00:40:39,232.232 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 00:40:41,271.271 INFO    ] ================================================
[2026-06-12 00:40:41,287.287 INFO    ] Launching Daemon at Fri Jun 12 00:40:41 IST 2026
[2026-06-12 00:40:41,299.299 INFO    ] ================================================
[2026-06-12 00:40:41,659.659 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 00:40:41
[2026-06-12 00:40:41,977.977 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 00:40:42,125.125 INFO    ] Initializing speech engine...
[2026-06-12 00:40:42,130.130 INFO    ] 2026-06-12 00:40:42
[2026-06-12 00:40:42,346.346 INFO    ] 2026-06-12 00:40:42
[2026-06-12 00:40:42,378.378 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 00:40:42,511.511 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 00:40:42,574.574 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 00:40:42,717.717 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 00:40:42,770.770 INFO    ] time= 12/06/2026 00:40:42
[2026-06-12 00:40:42,808.808 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 00:40:42,825.825 INFO    ] Checking for existing commands in stream...
[2026-06-12 00:40:42,902.902 INFO    ] No existing commands found in stream
[2026-06-12 00:40:47,916.916 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 00:40:47,919.919 INFO    ] Waiting 1.77 seconds before fallback handling...
[2026-06-12 00:40:50,076.076 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 00:40:50,077.077 INFO    ] Checking for system updates...
[2026-06-12 00:40:50,098.098 INFO    ] 200
[2026-06-12 00:40:50,099.099 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:40:50,132.132 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 00:40:50,134.134 INFO    ] No update needed
[2026-06-12 00:40:50,135.135 INFO    ] Checking for camera pi updates...
[2026-06-12 00:40:50,154.154 INFO    ] 200
[2026-06-12 00:40:50,156.156 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:40:50,179.179 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 00:40:50,239.239 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 00:40:50,241.241 INFO    ] No camera update needed
[2026-06-12 00:40:50,242.242 INFO    ] Script finished. Safe exiting...
[2026-06-12 00:40:50,243.243 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 00:40:50,246.246 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 00:40:50,249.249 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 00:40:52,287.287 INFO    ] ================================================
[2026-06-12 00:40:52,304.304 INFO    ] Launching Daemon at Fri Jun 12 00:40:52 IST 2026
[2026-06-12 00:40:52,315.315 INFO    ] ================================================
[2026-06-12 00:40:52,643.643 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 00:40:52
[2026-06-12 00:40:52,956.956 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 00:40:53,087.087 INFO    ] Initializing speech engine...
[2026-06-12 00:40:53,090.090 INFO    ] 2026-06-12 00:40:53
[2026-06-12 00:40:53,309.309 INFO    ] 2026-06-12 00:40:53
[2026-06-12 00:40:53,337.337 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 00:40:53,522.522 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 00:40:53,525.525 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 00:40:53,655.655 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 00:40:53,716.716 INFO    ] time= 12/06/2026 00:40:53
[2026-06-12 00:40:53,753.753 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 00:40:53,755.755 INFO    ] Checking for existing commands in stream...
[2026-06-12 00:40:53,825.825 INFO    ] No existing commands found in stream
[2026-06-12 00:40:58,836.836 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 00:40:58,839.839 INFO    ] Waiting 3.49 seconds before fallback handling...
[2026-06-12 00:41:02,637.637 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 00:41:02,638.638 INFO    ] Checking for system updates...
[2026-06-12 00:41:02,660.660 INFO    ] 200
[2026-06-12 00:41:02,662.662 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:41:02,693.693 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 00:41:02,694.694 INFO    ] No update needed
[2026-06-12 00:41:02,695.695 INFO    ] Checking for camera pi updates...
[2026-06-12 00:41:02,716.716 INFO    ] 200
[2026-06-12 00:41:02,717.717 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:41:02,742.742 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 00:41:02,792.792 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 00:41:02,793.793 INFO    ] No camera update needed
[2026-06-12 00:41:02,795.795 INFO    ] Script finished. Safe exiting...
[2026-06-12 00:41:02,796.796 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 00:41:02,799.799 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 00:41:02,801.801 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 00:41:04,842.842 INFO    ] ================================================
[2026-06-12 00:41:04,858.858 INFO    ] Launching Daemon at Fri Jun 12 00:41:04 IST 2026
[2026-06-12 00:41:04,869.869 INFO    ] ================================================
[2026-06-12 00:41:05,219.219 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 00:41:05
[2026-06-12 00:41:05,534.534 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 00:41:05,679.679 INFO    ] Initializing speech engine...
[2026-06-12 00:41:05,684.684 INFO    ] 2026-06-12 00:41:05
[2026-06-12 00:41:05,913.913 INFO    ] 2026-06-12 00:41:05
[2026-06-12 00:41:05,943.943 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 00:41:06,141.141 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 00:41:06,145.145 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 00:41:06,292.292 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 00:41:06,364.364 INFO    ] time= 12/06/2026 00:41:06
[2026-06-12 00:41:06,389.389 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 00:41:06,396.396 INFO    ] Checking for existing commands in stream...
[2026-06-12 00:41:06,467.467 INFO    ] No existing commands found in stream
[2026-06-12 00:41:11,477.477 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 00:41:11,480.480 INFO    ] Waiting 2.49 seconds before fallback handling...
[2026-06-12 00:41:14,345.345 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 00:41:14,346.346 INFO    ] Checking for system updates...
[2026-06-12 00:41:14,367.367 INFO    ] 200
[2026-06-12 00:41:14,368.368 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:41:14,399.399 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 00:41:14,400.400 INFO    ] No update needed
[2026-06-12 00:41:14,401.401 INFO    ] Checking for camera pi updates...
[2026-06-12 00:41:14,421.421 INFO    ] 200
[2026-06-12 00:41:14,422.422 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:41:14,448.448 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 00:41:14,491.491 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 00:41:14,492.492 INFO    ] No camera update needed
[2026-06-12 00:41:14,493.493 INFO    ] Script finished. Safe exiting...
[2026-06-12 00:41:14,495.495 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 00:41:14,498.498 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 00:41:14,500.500 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 00:41:16,539.539 INFO    ] ================================================
[2026-06-12 00:41:16,554.554 INFO    ] Launching Daemon at Fri Jun 12 00:41:16 IST 2026
[2026-06-12 00:41:16,564.564 INFO    ] ================================================
[2026-06-12 00:41:16,936.936 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 00:41:16
[2026-06-12 00:41:17,272.272 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 00:41:17,411.411 INFO    ] Initializing speech engine...
[2026-06-12 00:41:17,424.424 INFO    ] 2026-06-12 00:41:17
[2026-06-12 00:41:17,636.636 INFO    ] 2026-06-12 00:41:17
[2026-06-12 00:41:17,666.666 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 00:41:17,851.851 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 00:41:17,860.860 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 00:41:17,996.996 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 00:41:18,060.060 INFO    ] time= 12/06/2026 00:41:18
[2026-06-12 00:41:18,083.083 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 00:41:18,089.089 INFO    ] Checking for existing commands in stream...
[2026-06-12 00:41:18,181.181 INFO    ] No existing commands found in stream
[2026-06-12 00:41:23,190.190 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 00:41:23,193.193 INFO    ] Waiting 0.77 seconds before fallback handling...
[2026-06-12 00:41:24,333.333 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 00:41:24,335.335 INFO    ] Checking for system updates...
[2026-06-12 00:41:24,356.356 INFO    ] 200
[2026-06-12 00:41:24,357.357 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:41:24,388.388 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 00:41:24,390.390 INFO    ] No update needed
[2026-06-12 00:41:24,391.391 INFO    ] Checking for camera pi updates...
[2026-06-12 00:41:24,413.413 INFO    ] 200
[2026-06-12 00:41:24,414.414 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:41:24,439.439 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 00:41:24,483.483 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 00:41:24,484.484 INFO    ] No camera update needed
[2026-06-12 00:41:24,485.485 INFO    ] Script finished. Safe exiting...
[2026-06-12 00:41:24,486.486 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 00:41:24,489.489 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 00:41:24,492.492 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 00:41:26,530.530 INFO    ] ================================================
[2026-06-12 00:41:26,546.546 INFO    ] Launching Daemon at Fri Jun 12 00:41:26 IST 2026
[2026-06-12 00:41:26,557.557 INFO    ] ================================================
[2026-06-12 00:41:26,926.926 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 00:41:26
[2026-06-12 00:41:27,241.241 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 00:41:27,373.373 INFO    ] Initializing speech engine...
[2026-06-12 00:41:27,386.386 INFO    ] 2026-06-12 00:41:27
[2026-06-12 00:41:27,592.592 INFO    ] 2026-06-12 00:41:27
[2026-06-12 00:41:27,621.621 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 00:41:27,803.803 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 00:41:27,807.807 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 00:41:27,963.963 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 00:41:28,011.011 INFO    ] time= 12/06/2026 00:41:27
[2026-06-12 00:41:28,032.032 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 00:41:28,038.038 INFO    ] Checking for existing commands in stream...
[2026-06-12 00:41:28,105.105 INFO    ] No existing commands found in stream
[2026-06-12 00:41:33,111.111 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 00:41:33,114.114 INFO    ] Waiting 2.72 seconds before fallback handling...
[2026-06-12 00:41:36,163.163 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 00:41:36,164.164 INFO    ] Checking for system updates...
[2026-06-12 00:41:36,186.186 INFO    ] 200
[2026-06-12 00:41:36,188.188 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:41:36,220.220 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 00:41:36,222.222 INFO    ] No update needed
[2026-06-12 00:41:36,223.223 INFO    ] Checking for camera pi updates...
[2026-06-12 00:41:36,243.243 INFO    ] 200
[2026-06-12 00:41:36,244.244 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:41:36,269.269 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 00:41:36,315.315 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 00:41:36,316.316 INFO    ] No camera update needed
[2026-06-12 00:41:36,318.318 INFO    ] Script finished. Safe exiting...
[2026-06-12 00:41:36,319.319 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 00:41:36,323.323 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 00:41:36,326.326 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 00:41:38,365.365 INFO    ] ================================================
[2026-06-12 00:41:38,381.381 INFO    ] Launching Daemon at Fri Jun 12 00:41:38 IST 2026
[2026-06-12 00:41:38,392.392 INFO    ] ================================================
[2026-06-12 00:41:38,770.770 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 00:41:38
[2026-06-12 00:41:39,107.107 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 00:41:39,246.246 INFO    ] Initializing speech engine...
[2026-06-12 00:41:39,254.254 INFO    ] 2026-06-12 00:41:39
[2026-06-12 00:41:39,472.472 INFO    ] 2026-06-12 00:41:39
[2026-06-12 00:41:39,501.501 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 00:41:39,685.685 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 00:41:39,694.694 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 00:41:39,846.846 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 00:41:39,894.894 INFO    ] time= 12/06/2026 00:41:39
[2026-06-12 00:41:39,916.916 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 00:41:39,923.923 INFO    ] Checking for existing commands in stream...
[2026-06-12 00:41:39,988.988 INFO    ] No existing commands found in stream
[2026-06-12 00:41:44,999.999 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 00:41:45,003.003 INFO    ] Waiting 0.14 seconds before fallback handling...
[2026-06-12 00:41:45,514.514 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 00:41:45,516.516 INFO    ] Checking for system updates...
[2026-06-12 00:41:45,537.537 INFO    ] 200
[2026-06-12 00:41:45,538.538 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:41:45,569.569 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 00:41:45,571.571 INFO    ] No update needed
[2026-06-12 00:41:45,572.572 INFO    ] Checking for camera pi updates...
[2026-06-12 00:41:45,592.592 INFO    ] 200
[2026-06-12 00:41:45,594.594 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:41:45,617.617 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 00:41:45,655.655 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 00:41:45,657.657 INFO    ] No camera update needed
[2026-06-12 00:41:45,658.658 INFO    ] Script finished. Safe exiting...
[2026-06-12 00:41:45,660.660 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 00:41:45,663.663 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 00:41:45,666.666 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 00:41:47,705.705 INFO    ] ================================================
[2026-06-12 00:41:47,722.722 INFO    ] Launching Daemon at Fri Jun 12 00:41:47 IST 2026
[2026-06-12 00:41:47,733.733 INFO    ] ================================================
[2026-06-12 00:41:48,098.098 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 00:41:48
[2026-06-12 00:41:48,416.416 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 00:41:48,561.561 INFO    ] Initializing speech engine...
[2026-06-12 00:41:48,565.565 INFO    ] 2026-06-12 00:41:48
[2026-06-12 00:41:48,769.769 INFO    ] 2026-06-12 00:41:48
[2026-06-12 00:41:48,799.799 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 00:41:48,983.983 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 00:41:48,991.991 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 00:41:49,117.117 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 00:41:49,180.180 INFO    ] time= 12/06/2026 00:41:49
[2026-06-12 00:41:49,213.213 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 00:41:49,218.218 INFO    ] Checking for existing commands in stream...
[2026-06-12 00:41:49,286.286 INFO    ] No existing commands found in stream
[2026-06-12 00:41:54,294.294 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 00:41:54,297.297 INFO    ] Waiting 3.33 seconds before fallback handling...
[2026-06-12 00:41:57,984.984 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 00:41:57,985.985 INFO    ] Checking for system updates...
[2026-06-12 00:41:58,006.006 INFO    ] 200
[2026-06-12 00:41:58,007.007 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:41:58,042.042 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 00:41:58,043.043 INFO    ] No update needed
[2026-06-12 00:41:58,045.045 INFO    ] Checking for camera pi updates...
[2026-06-12 00:41:58,065.065 INFO    ] 200
[2026-06-12 00:41:58,066.066 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:41:58,091.091 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 00:41:58,137.137 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 00:41:58,139.139 INFO    ] No camera update needed
[2026-06-12 00:41:58,140.140 INFO    ] Script finished. Safe exiting...
[2026-06-12 00:41:58,141.141 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 00:41:58,144.144 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 00:41:58,151.151 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 00:42:00,192.192 INFO    ] ================================================
[2026-06-12 00:42:00,207.207 INFO    ] Launching Daemon at Fri Jun 12 00:42:00 IST 2026
[2026-06-12 00:42:00,219.219 INFO    ] ================================================
[2026-06-12 00:42:00,589.589 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 00:42:00
[2026-06-12 00:42:00,905.905 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 00:42:01,049.049 INFO    ] Initializing speech engine...
[2026-06-12 00:42:01,054.054 INFO    ] 2026-06-12 00:42:01
[2026-06-12 00:42:01,257.257 INFO    ] 2026-06-12 00:42:01
[2026-06-12 00:42:01,285.285 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 00:42:01,408.408 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 00:42:01,471.471 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 00:42:01,613.613 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 00:42:01,677.677 INFO    ] time= 12/06/2026 00:42:01
[2026-06-12 00:42:01,703.703 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 00:42:01,706.706 INFO    ] Checking for existing commands in stream...
[2026-06-12 00:42:01,769.769 INFO    ] No existing commands found in stream
[2026-06-12 00:42:06,779.779 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 00:42:06,782.782 INFO    ] Waiting 3.55 seconds before fallback handling...
[2026-06-12 00:42:10,673.673 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 00:42:10,675.675 INFO    ] Checking for system updates...
[2026-06-12 00:42:10,695.695 INFO    ] 200
[2026-06-12 00:42:10,697.697 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:42:10,727.727 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 00:42:10,728.728 INFO    ] No update needed
[2026-06-12 00:42:10,729.729 INFO    ] Checking for camera pi updates...
[2026-06-12 00:42:10,750.750 INFO    ] 200
[2026-06-12 00:42:10,751.751 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:42:10,787.787 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 00:42:10,833.833 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 00:42:10,835.835 INFO    ] No camera update needed
[2026-06-12 00:42:10,836.836 INFO    ] Script finished. Safe exiting...
[2026-06-12 00:42:10,837.837 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 00:42:10,840.840 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 00:42:10,843.843 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 00:42:12,884.884 INFO    ] ================================================
[2026-06-12 00:42:12,899.899 INFO    ] Launching Daemon at Fri Jun 12 00:42:12 IST 2026
[2026-06-12 00:42:12,911.911 INFO    ] ================================================
[2026-06-12 00:42:13,315.315 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 00:42:13
[2026-06-12 00:42:13,658.658 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 00:42:13,811.811 INFO    ] Initializing speech engine...
[2026-06-12 00:42:13,817.817 INFO    ] 2026-06-12 00:42:13
[2026-06-12 00:42:14,025.025 INFO    ] 2026-06-12 00:42:14
[2026-06-12 00:42:14,053.053 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 00:42:14,240.240 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 00:42:14,250.250 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 00:42:14,383.383 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 00:42:14,445.445 INFO    ] time= 12/06/2026 00:42:14
[2026-06-12 00:42:14,469.469 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 00:42:14,475.475 INFO    ] Checking for existing commands in stream...
[2026-06-12 00:42:14,542.542 INFO    ] No existing commands found in stream
[2026-06-12 00:42:19,552.552 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 00:42:19,555.555 INFO    ] Waiting 2.36 seconds before fallback handling...
[2026-06-12 00:42:22,315.315 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 00:42:22,316.316 INFO    ] Checking for system updates...
[2026-06-12 00:42:22,337.337 INFO    ] 200
[2026-06-12 00:42:22,339.339 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:42:22,369.369 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 00:42:22,370.370 INFO    ] No update needed
[2026-06-12 00:42:22,372.372 INFO    ] Checking for camera pi updates...
[2026-06-12 00:42:22,395.395 INFO    ] 200
[2026-06-12 00:42:22,397.397 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:42:22,428.428 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 00:42:22,468.468 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 00:42:22,470.470 INFO    ] No camera update needed
[2026-06-12 00:42:22,471.471 INFO    ] Script finished. Safe exiting...
[2026-06-12 00:42:22,473.473 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 00:42:22,475.475 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 00:42:22,478.478 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 00:42:24,509.509 INFO    ] ================================================
[2026-06-12 00:42:24,525.525 INFO    ] Launching Daemon at Fri Jun 12 00:42:24 IST 2026
[2026-06-12 00:42:24,536.536 INFO    ] ================================================
[2026-06-12 00:42:24,862.862 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 00:42:24
[2026-06-12 00:42:25,173.173 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 00:42:25,304.304 INFO    ] Initializing speech engine...
[2026-06-12 00:42:25,308.308 INFO    ] 2026-06-12 00:42:25
[2026-06-12 00:42:25,525.525 INFO    ] 2026-06-12 00:42:25
[2026-06-12 00:42:25,552.552 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 00:42:25,735.735 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 00:42:25,738.738 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 00:42:25,875.875 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 00:42:25,942.942 INFO    ] time= 12/06/2026 00:42:25
[2026-06-12 00:42:25,965.965 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 00:42:25,972.972 INFO    ] Checking for existing commands in stream...
[2026-06-12 00:42:26,038.038 INFO    ] No existing commands found in stream
[2026-06-12 00:42:31,047.047 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 00:42:31,050.050 INFO    ] Waiting 3.91 seconds before fallback handling...
[2026-06-12 00:42:35,355.355 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 00:42:35,356.356 INFO    ] Checking for system updates...
[2026-06-12 00:42:35,378.378 INFO    ] 200
[2026-06-12 00:42:35,380.380 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:42:35,412.412 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 00:42:35,414.414 INFO    ] No update needed
[2026-06-12 00:42:35,415.415 INFO    ] Checking for camera pi updates...
[2026-06-12 00:42:35,436.436 INFO    ] 200
[2026-06-12 00:42:35,438.438 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:42:35,461.461 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 00:42:35,506.506 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 00:42:35,507.507 INFO    ] No camera update needed
[2026-06-12 00:42:35,509.509 INFO    ] Script finished. Safe exiting...
[2026-06-12 00:42:35,510.510 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 00:42:35,513.513 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 00:42:35,516.516 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 00:42:37,556.556 INFO    ] ================================================
[2026-06-12 00:42:37,572.572 INFO    ] Launching Daemon at Fri Jun 12 00:42:37 IST 2026
[2026-06-12 00:42:37,583.583 INFO    ] ================================================
[2026-06-12 00:42:37,944.944 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 00:42:37
[2026-06-12 00:42:38,255.255 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 00:42:38,397.397 INFO    ] Initializing speech engine...
[2026-06-12 00:42:38,402.402 INFO    ] 2026-06-12 00:42:38
[2026-06-12 00:42:38,605.605 INFO    ] 2026-06-12 00:42:38
[2026-06-12 00:42:38,633.633 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 00:42:38,817.817 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 00:42:38,826.826 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 00:42:38,948.948 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 00:42:39,009.009 INFO    ] time= 12/06/2026 00:42:38
[2026-06-12 00:42:39,042.042 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 00:42:39,048.048 INFO    ] Checking for existing commands in stream...
[2026-06-12 00:42:39,119.119 INFO    ] No existing commands found in stream
[2026-06-12 00:42:44,148.148 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 00:42:44,151.151 INFO    ] Waiting 0.99 seconds before fallback handling...
[2026-06-12 00:42:45,485.485 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 00:42:45,486.486 INFO    ] Checking for system updates...
[2026-06-12 00:42:45,507.507 INFO    ] 200
[2026-06-12 00:42:45,508.508 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:42:45,543.543 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 00:42:45,544.544 INFO    ] No update needed
[2026-06-12 00:42:45,546.546 INFO    ] Checking for camera pi updates...
[2026-06-12 00:42:45,566.566 INFO    ] 200
[2026-06-12 00:42:45,567.567 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:42:45,590.590 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 00:42:45,632.632 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 00:42:45,633.633 INFO    ] No camera update needed
[2026-06-12 00:42:45,634.634 INFO    ] Script finished. Safe exiting...
[2026-06-12 00:42:45,636.636 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 00:42:45,638.638 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 00:42:45,641.641 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 00:42:47,681.681 INFO    ] ================================================
[2026-06-12 00:42:47,697.697 INFO    ] Launching Daemon at Fri Jun 12 00:42:47 IST 2026
[2026-06-12 00:42:47,708.708 INFO    ] ================================================
[2026-06-12 00:42:48,038.038 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 00:42:48
[2026-06-12 00:42:48,365.365 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 00:42:48,517.517 INFO    ] Initializing speech engine...
[2026-06-12 00:42:48,523.523 INFO    ] 2026-06-12 00:42:48
[2026-06-12 00:42:48,732.732 INFO    ] 2026-06-12 00:42:48
[2026-06-12 00:42:48,761.761 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 00:42:48,945.945 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 00:42:48,954.954 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 00:42:49,096.096 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 00:42:49,152.152 INFO    ] time= 12/06/2026 00:42:49
[2026-06-12 00:42:49,176.176 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 00:42:49,183.183 INFO    ] Checking for existing commands in stream...
[2026-06-12 00:42:49,249.249 INFO    ] No existing commands found in stream
[2026-06-12 00:42:54,264.264 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 00:42:54,272.272 INFO    ] Waiting 0.68 seconds before fallback handling...
[2026-06-12 00:42:55,315.315 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 00:42:55,316.316 INFO    ] Checking for system updates...
[2026-06-12 00:42:55,339.339 INFO    ] 200
[2026-06-12 00:42:55,340.340 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:42:55,379.379 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 00:42:55,380.380 INFO    ] No update needed
[2026-06-12 00:42:55,382.382 INFO    ] Checking for camera pi updates...
[2026-06-12 00:42:55,403.403 INFO    ] 200
[2026-06-12 00:42:55,404.404 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:42:55,431.431 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 00:42:55,469.469 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 00:42:55,470.470 INFO    ] No camera update needed
[2026-06-12 00:42:55,472.472 INFO    ] Script finished. Safe exiting...
[2026-06-12 00:42:55,473.473 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 00:42:55,477.477 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 00:42:55,481.481 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 00:42:57,520.520 INFO    ] ================================================
[2026-06-12 00:42:57,536.536 INFO    ] Launching Daemon at Fri Jun 12 00:42:57 IST 2026
[2026-06-12 00:42:57,548.548 INFO    ] ================================================
[2026-06-12 00:42:57,919.919 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 00:42:57
[2026-06-12 00:42:58,261.261 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 00:42:58,400.400 INFO    ] Initializing speech engine...
[2026-06-12 00:42:58,408.408 INFO    ] 2026-06-12 00:42:58
[2026-06-12 00:42:58,625.625 INFO    ] 2026-06-12 00:42:58
[2026-06-12 00:42:58,653.653 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 00:42:58,786.786 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 00:42:58,839.839 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 00:42:58,973.973 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 00:42:59,036.036 INFO    ] time= 12/06/2026 00:42:58
[2026-06-12 00:42:59,068.068 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 00:42:59,075.075 INFO    ] Checking for existing commands in stream...
[2026-06-12 00:42:59,142.142 INFO    ] No existing commands found in stream
[2026-06-12 00:43:04,156.156 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 00:43:04,160.160 INFO    ] Waiting 2.90 seconds before fallback handling...
[2026-06-12 00:43:07,465.465 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 00:43:07,467.467 INFO    ] Checking for system updates...
[2026-06-12 00:43:07,491.491 INFO    ] 200
[2026-06-12 00:43:07,493.493 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:43:07,527.527 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 00:43:07,528.528 INFO    ] No update needed
[2026-06-12 00:43:07,530.530 INFO    ] Checking for camera pi updates...
[2026-06-12 00:43:07,553.553 INFO    ] 200
[2026-06-12 00:43:07,554.554 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:43:07,578.578 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 00:43:07,624.624 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 00:43:07,625.625 INFO    ] No camera update needed
[2026-06-12 00:43:07,627.627 INFO    ] Script finished. Safe exiting...
[2026-06-12 00:43:07,628.628 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 00:43:07,632.632 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 00:43:07,635.635 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 00:43:09,676.676 INFO    ] ================================================
[2026-06-12 00:43:09,692.692 INFO    ] Launching Daemon at Fri Jun 12 00:43:09 IST 2026
[2026-06-12 00:43:09,703.703 INFO    ] ================================================
[2026-06-12 00:43:10,027.027 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 00:43:10
[2026-06-12 00:43:10,340.340 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 00:43:10,473.473 INFO    ] Initializing speech engine...
[2026-06-12 00:43:10,485.485 INFO    ] 2026-06-12 00:43:10
[2026-06-12 00:43:10,692.692 INFO    ] 2026-06-12 00:43:10
[2026-06-12 00:43:10,722.722 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 00:43:10,906.906 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 00:43:10,915.915 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 00:43:11,045.045 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 00:43:11,104.104 INFO    ] time= 12/06/2026 00:43:11
[2026-06-12 00:43:11,137.137 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 00:43:11,139.139 INFO    ] Checking for existing commands in stream...
[2026-06-12 00:43:11,211.211 INFO    ] No existing commands found in stream
[2026-06-12 00:43:16,220.220 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 00:43:16,223.223 INFO    ] Waiting 0.75 seconds before fallback handling...
[2026-06-12 00:43:17,370.370 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 00:43:17,373.373 INFO    ] Checking for system updates...
[2026-06-12 00:43:17,409.409 INFO    ] 200
[2026-06-12 00:43:17,412.412 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:43:17,474.474 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 00:43:17,477.477 INFO    ] No update needed
[2026-06-12 00:43:17,480.480 INFO    ] Checking for camera pi updates...
[2026-06-12 00:43:17,512.512 INFO    ] 200
[2026-06-12 00:43:17,513.513 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:43:17,539.539 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 00:43:17,581.581 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 00:43:17,582.582 INFO    ] No camera update needed
[2026-06-12 00:43:17,584.584 INFO    ] Script finished. Safe exiting...
[2026-06-12 00:43:17,585.585 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 00:43:17,588.588 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 00:43:17,591.591 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 00:43:19,632.632 INFO    ] ================================================
[2026-06-12 00:43:19,648.648 INFO    ] Launching Daemon at Fri Jun 12 00:43:19 IST 2026
[2026-06-12 00:43:19,660.660 INFO    ] ================================================
[2026-06-12 00:43:20,020.020 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 00:43:20
[2026-06-12 00:43:20,331.331 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 00:43:20,474.474 INFO    ] Initializing speech engine...
[2026-06-12 00:43:20,479.479 INFO    ] 2026-06-12 00:43:20
[2026-06-12 00:43:20,682.682 INFO    ] 2026-06-12 00:43:20
[2026-06-12 00:43:20,711.711 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 00:43:20,894.894 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 00:43:20,897.897 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 00:43:21,028.028 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 00:43:21,085.085 INFO    ] time= 12/06/2026 00:43:21
[2026-06-12 00:43:21,114.114 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 00:43:21,124.124 INFO    ] Checking for existing commands in stream...
[2026-06-12 00:43:21,195.195 INFO    ] No existing commands found in stream
[2026-06-12 00:43:26,209.209 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 00:43:26,212.212 INFO    ] Waiting 0.58 seconds before fallback handling...
[2026-06-12 00:43:27,201.201 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 00:43:27,202.202 INFO    ] Checking for system updates...
[2026-06-12 00:43:27,223.223 INFO    ] 200
[2026-06-12 00:43:27,224.224 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:43:27,257.257 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 00:43:27,259.259 INFO    ] No update needed
[2026-06-12 00:43:27,260.260 INFO    ] Checking for camera pi updates...
[2026-06-12 00:43:27,282.282 INFO    ] 200
[2026-06-12 00:43:27,284.284 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:43:27,310.310 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 00:43:27,361.361 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 00:43:27,363.363 INFO    ] No camera update needed
[2026-06-12 00:43:27,364.364 INFO    ] Script finished. Safe exiting...
[2026-06-12 00:43:27,366.366 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 00:43:27,369.369 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 00:43:27,372.372 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 00:43:29,413.413 INFO    ] ================================================
[2026-06-12 00:43:29,428.428 INFO    ] Launching Daemon at Fri Jun 12 00:43:29 IST 2026
[2026-06-12 00:43:29,439.439 INFO    ] ================================================
[2026-06-12 00:43:29,786.786 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 00:43:29
[2026-06-12 00:43:30,097.097 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 00:43:30,227.227 INFO    ] Initializing speech engine...
[2026-06-12 00:43:30,231.231 INFO    ] 2026-06-12 00:43:30
[2026-06-12 00:43:30,451.451 INFO    ] 2026-06-12 00:43:30
[2026-06-12 00:43:30,479.479 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 00:43:30,664.664 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 00:43:30,672.672 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 00:43:30,806.806 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 00:43:30,870.870 INFO    ] time= 12/06/2026 00:43:30
[2026-06-12 00:43:30,897.897 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 00:43:30,903.903 INFO    ] Checking for existing commands in stream...
[2026-06-12 00:43:30,970.970 INFO    ] No existing commands found in stream
[2026-06-12 00:43:35,979.979 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 00:43:35,982.982 INFO    ] Waiting 3.65 seconds before fallback handling...
[2026-06-12 00:43:39,996.996 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 00:43:39,998.998 INFO    ] Checking for system updates...
[2026-06-12 00:43:40,019.019 INFO    ] 200
[2026-06-12 00:43:40,021.021 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:43:40,053.053 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 00:43:40,054.054 INFO    ] No update needed
[2026-06-12 00:43:40,056.056 INFO    ] Checking for camera pi updates...
[2026-06-12 00:43:40,076.076 INFO    ] 200
[2026-06-12 00:43:40,078.078 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:43:40,101.101 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 00:43:40,154.154 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 00:43:40,155.155 INFO    ] No camera update needed
[2026-06-12 00:43:40,156.156 INFO    ] Script finished. Safe exiting...
[2026-06-12 00:43:40,158.158 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 00:43:40,161.161 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 00:43:40,163.163 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 00:43:42,204.204 INFO    ] ================================================
[2026-06-12 00:43:42,220.220 INFO    ] Launching Daemon at Fri Jun 12 00:43:42 IST 2026
[2026-06-12 00:43:42,231.231 INFO    ] ================================================
[2026-06-12 00:43:42,589.589 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 00:43:42
[2026-06-12 00:43:42,929.929 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 00:43:43,081.081 INFO    ] Initializing speech engine...
[2026-06-12 00:43:43,086.086 INFO    ] 2026-06-12 00:43:43
[2026-06-12 00:43:43,299.299 INFO    ] 2026-06-12 00:43:43
[2026-06-12 00:43:43,328.328 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 00:43:43,514.514 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 00:43:43,518.518 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 00:43:43,650.650 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 00:43:43,711.711 INFO    ] time= 12/06/2026 00:43:43
[2026-06-12 00:43:43,749.749 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 00:43:43,751.751 INFO    ] Checking for existing commands in stream...
[2026-06-12 00:43:43,824.824 INFO    ] No existing commands found in stream
[2026-06-12 00:43:48,838.838 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 00:43:48,842.842 INFO    ] Waiting 2.09 seconds before fallback handling...
[2026-06-12 00:43:51,313.313 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 00:43:51,315.315 INFO    ] Checking for system updates...
[2026-06-12 00:43:51,335.335 INFO    ] 200
[2026-06-12 00:43:51,337.337 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:43:51,367.367 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 00:43:51,368.368 INFO    ] No update needed
[2026-06-12 00:43:51,370.370 INFO    ] Checking for camera pi updates...
[2026-06-12 00:43:51,391.391 INFO    ] 200
[2026-06-12 00:43:51,393.393 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:43:51,416.416 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 00:43:51,459.459 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 00:43:51,460.460 INFO    ] No camera update needed
[2026-06-12 00:43:51,461.461 INFO    ] Script finished. Safe exiting...
[2026-06-12 00:43:51,463.463 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 00:43:51,466.466 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 00:43:51,468.468 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 00:43:53,508.508 INFO    ] ================================================
[2026-06-12 00:43:53,523.523 INFO    ] Launching Daemon at Fri Jun 12 00:43:53 IST 2026
[2026-06-12 00:43:53,534.534 INFO    ] ================================================
[2026-06-12 00:43:53,866.866 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 00:43:53
[2026-06-12 00:43:54,177.177 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 00:43:54,308.308 INFO    ] Initializing speech engine...
[2026-06-12 00:43:54,311.311 INFO    ] 2026-06-12 00:43:54
[2026-06-12 00:43:54,530.530 INFO    ] 2026-06-12 00:43:54
[2026-06-12 00:43:54,559.559 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 00:43:54,683.683 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 00:43:54,746.746 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 00:43:54,887.887 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 00:43:54,946.946 INFO    ] time= 12/06/2026 00:43:54
[2026-06-12 00:43:54,979.979 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 00:43:54,986.986 INFO    ] Checking for existing commands in stream...
[2026-06-12 00:43:55,054.054 INFO    ] No existing commands found in stream
[2026-06-12 00:44:00,063.063 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 00:44:00,065.065 INFO    ] Waiting 0.06 seconds before fallback handling...
[2026-06-12 00:44:00,476.476 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 00:44:00,477.477 INFO    ] Checking for system updates...
[2026-06-12 00:44:00,498.498 INFO    ] 200
[2026-06-12 00:44:00,500.500 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:44:00,530.530 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 00:44:00,532.532 INFO    ] No update needed
[2026-06-12 00:44:00,533.533 INFO    ] Checking for camera pi updates...
[2026-06-12 00:44:00,554.554 INFO    ] 200
[2026-06-12 00:44:00,556.556 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:44:00,582.582 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 00:44:00,630.630 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 00:44:00,632.632 INFO    ] No camera update needed
[2026-06-12 00:44:00,633.633 INFO    ] Script finished. Safe exiting...
[2026-06-12 00:44:00,634.634 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 00:44:00,638.638 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 00:44:00,641.641 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 00:44:02,675.675 INFO    ] ================================================
[2026-06-12 00:44:02,690.690 INFO    ] Launching Daemon at Fri Jun 12 00:44:02 IST 2026
[2026-06-12 00:44:02,701.701 INFO    ] ================================================
[2026-06-12 00:44:03,047.047 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 00:44:03
[2026-06-12 00:44:03,357.357 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 00:44:03,487.487 INFO    ] Initializing speech engine...
[2026-06-12 00:44:03,491.491 INFO    ] 2026-06-12 00:44:03
[2026-06-12 00:44:03,708.708 INFO    ] 2026-06-12 00:44:03
[2026-06-12 00:44:03,737.737 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 00:44:03,871.871 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 00:44:03,925.925 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 00:44:04,067.067 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 00:44:04,136.136 INFO    ] time= 12/06/2026 00:44:04
[2026-06-12 00:44:04,165.165 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 00:44:04,167.167 INFO    ] Checking for existing commands in stream...
[2026-06-12 00:44:04,242.242 INFO    ] No existing commands found in stream
[2026-06-12 00:44:09,253.253 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 00:44:09,255.255 INFO    ] Waiting 3.11 seconds before fallback handling...
[2026-06-12 00:44:12,759.759 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 00:44:12,762.762 INFO    ] Checking for system updates...
[2026-06-12 00:44:12,798.798 INFO    ] 200
[2026-06-12 00:44:12,801.801 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:44:12,870.870 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 00:44:12,873.873 INFO    ] No update needed
[2026-06-12 00:44:12,876.876 INFO    ] Checking for camera pi updates...
[2026-06-12 00:44:12,903.903 INFO    ] 200
[2026-06-12 00:44:12,904.904 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:44:12,927.927 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 00:44:12,975.975 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 00:44:12,976.976 INFO    ] No camera update needed
[2026-06-12 00:44:12,978.978 INFO    ] Script finished. Safe exiting...
[2026-06-12 00:44:12,979.979 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 00:44:12,983.983 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 00:44:12,986.986 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 00:44:15,025.025 INFO    ] ================================================
[2026-06-12 00:44:15,040.040 INFO    ] Launching Daemon at Fri Jun 12 00:44:15 IST 2026
[2026-06-12 00:44:15,051.051 INFO    ] ================================================
[2026-06-12 00:44:15,412.412 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 00:44:15
[2026-06-12 00:44:15,724.724 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 00:44:15,853.853 INFO    ] Initializing speech engine...
[2026-06-12 00:44:15,861.861 INFO    ] 2026-06-12 00:44:15
[2026-06-12 00:44:16,073.073 INFO    ] 2026-06-12 00:44:16
[2026-06-12 00:44:16,102.102 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 00:44:16,284.284 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 00:44:16,287.287 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 00:44:16,418.418 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 00:44:16,486.486 INFO    ] time= 12/06/2026 00:44:16
[2026-06-12 00:44:16,513.513 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 00:44:16,519.519 INFO    ] Checking for existing commands in stream...
[2026-06-12 00:44:16,586.586 INFO    ] No existing commands found in stream
[2026-06-12 00:44:21,595.595 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 00:44:21,597.597 INFO    ] Waiting 0.52 seconds before fallback handling...
[2026-06-12 00:44:22,465.465 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 00:44:22,466.466 INFO    ] Checking for system updates...
[2026-06-12 00:44:22,488.488 INFO    ] 200
[2026-06-12 00:44:22,489.489 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:44:22,522.522 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 00:44:22,523.523 INFO    ] No update needed
[2026-06-12 00:44:22,524.524 INFO    ] Checking for camera pi updates...
[2026-06-12 00:44:22,544.544 INFO    ] 200
[2026-06-12 00:44:22,545.545 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:44:22,568.568 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 00:44:22,610.610 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 00:44:22,611.611 INFO    ] No camera update needed
[2026-06-12 00:44:22,613.613 INFO    ] Script finished. Safe exiting...
[2026-06-12 00:44:22,614.614 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 00:44:22,617.617 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 00:44:22,620.620 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 00:44:24,658.658 INFO    ] ================================================
[2026-06-12 00:44:24,673.673 INFO    ] Launching Daemon at Fri Jun 12 00:44:24 IST 2026
[2026-06-12 00:44:24,684.684 INFO    ] ================================================
[2026-06-12 00:44:25,014.014 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 00:44:25
[2026-06-12 00:44:25,324.324 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 00:44:25,454.454 INFO    ] Initializing speech engine...
[2026-06-12 00:44:25,457.457 INFO    ] 2026-06-12 00:44:25
[2026-06-12 00:44:25,672.672 INFO    ] 2026-06-12 00:44:25
[2026-06-12 00:44:25,701.701 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 00:44:25,885.885 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 00:44:25,894.894 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 00:44:26,023.023 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 00:44:26,089.089 INFO    ] time= 12/06/2026 00:44:26
[2026-06-12 00:44:26,114.114 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 00:44:26,120.120 INFO    ] Checking for existing commands in stream...
[2026-06-12 00:44:26,187.187 INFO    ] No existing commands found in stream
[2026-06-12 00:44:31,192.192 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 00:44:31,196.196 INFO    ] Waiting 1.44 seconds before fallback handling...
[2026-06-12 00:44:32,949.949 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 00:44:32,951.951 INFO    ] Checking for system updates...
[2026-06-12 00:44:32,988.988 INFO    ] 200
[2026-06-12 00:44:32,990.990 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:44:33,031.031 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 00:44:33,032.032 INFO    ] No update needed
[2026-06-12 00:44:33,033.033 INFO    ] Checking for camera pi updates...
[2026-06-12 00:44:33,052.052 INFO    ] 200
[2026-06-12 00:44:33,054.054 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:44:33,078.078 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 00:44:33,123.123 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 00:44:33,125.125 INFO    ] No camera update needed
[2026-06-12 00:44:33,126.126 INFO    ] Script finished. Safe exiting...
[2026-06-12 00:44:33,127.127 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 00:44:33,130.130 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 00:44:33,133.133 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 00:44:35,173.173 INFO    ] ================================================
[2026-06-12 00:44:35,188.188 INFO    ] Launching Daemon at Fri Jun 12 00:44:35 IST 2026
[2026-06-12 00:44:35,198.198 INFO    ] ================================================
[2026-06-12 00:44:35,548.548 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 00:44:35
[2026-06-12 00:44:35,863.863 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 00:44:35,995.995 INFO    ] Initializing speech engine...
[2026-06-12 00:44:36,003.003 INFO    ] 2026-06-12 00:44:35
[2026-06-12 00:44:36,218.218 INFO    ] 2026-06-12 00:44:36
[2026-06-12 00:44:36,247.247 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 00:44:36,372.372 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 00:44:36,435.435 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 00:44:36,576.576 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 00:44:36,640.640 INFO    ] time= 12/06/2026 00:44:36
[2026-06-12 00:44:36,669.669 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 00:44:36,675.675 INFO    ] Checking for existing commands in stream...
[2026-06-12 00:44:36,766.766 INFO    ] No existing commands found in stream
[2026-06-12 00:44:41,775.775 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 00:44:41,778.778 INFO    ] Waiting 3.75 seconds before fallback handling...
[2026-06-12 00:44:45,885.885 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 00:44:45,886.886 INFO    ] Checking for system updates...
[2026-06-12 00:44:45,908.908 INFO    ] 200
[2026-06-12 00:44:45,909.909 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:44:45,939.939 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 00:44:45,940.940 INFO    ] No update needed
[2026-06-12 00:44:45,941.941 INFO    ] Checking for camera pi updates...
[2026-06-12 00:44:45,961.961 INFO    ] 200
[2026-06-12 00:44:45,962.962 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:44:45,985.985 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 00:44:46,032.032 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 00:44:46,033.033 INFO    ] No camera update needed
[2026-06-12 00:44:46,035.035 INFO    ] Script finished. Safe exiting...
[2026-06-12 00:44:46,036.036 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 00:44:46,039.039 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 00:44:46,042.042 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 00:44:48,080.080 INFO    ] ================================================
[2026-06-12 00:44:48,095.095 INFO    ] Launching Daemon at Fri Jun 12 00:44:48 IST 2026
[2026-06-12 00:44:48,106.106 INFO    ] ================================================
[2026-06-12 00:44:48,488.488 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 00:44:48
[2026-06-12 00:44:48,826.826 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 00:44:48,980.980 INFO    ] Initializing speech engine...
[2026-06-12 00:44:48,984.984 INFO    ] 2026-06-12 00:44:48
[2026-06-12 00:44:49,193.193 INFO    ] 2026-06-12 00:44:49
[2026-06-12 00:44:49,221.221 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 00:44:49,407.407 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 00:44:49,416.416 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 00:44:49,572.572 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 00:44:49,616.616 INFO    ] time= 12/06/2026 00:44:49
[2026-06-12 00:44:49,638.638 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 00:44:49,644.644 INFO    ] Checking for existing commands in stream...
[2026-06-12 00:44:49,711.711 INFO    ] No existing commands found in stream
[2026-06-12 00:44:54,726.726 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 00:44:54,729.729 INFO    ] Waiting 3.10 seconds before fallback handling...
[2026-06-12 00:44:58,236.236 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 00:44:58,238.238 INFO    ] Checking for system updates...
[2026-06-12 00:44:58,260.260 INFO    ] 200
[2026-06-12 00:44:58,261.261 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:44:58,292.292 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 00:44:58,293.293 INFO    ] No update needed
[2026-06-12 00:44:58,295.295 INFO    ] Checking for camera pi updates...
[2026-06-12 00:44:58,315.315 INFO    ] 200
[2026-06-12 00:44:58,317.317 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:44:58,340.340 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 00:44:58,390.390 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 00:44:58,392.392 INFO    ] No camera update needed
[2026-06-12 00:44:58,393.393 INFO    ] Script finished. Safe exiting...
[2026-06-12 00:44:58,394.394 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 00:44:58,397.397 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 00:44:58,400.400 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 00:45:00,438.438 INFO    ] ================================================
[2026-06-12 00:45:00,460.460 INFO    ] Launching Daemon at Fri Jun 12 00:45:00 IST 2026
[2026-06-12 00:45:00,471.471 INFO    ] ================================================
[2026-06-12 00:45:00,803.803 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 00:45:00
[2026-06-12 00:45:01,116.116 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 00:45:01,246.246 INFO    ] Initializing speech engine...
[2026-06-12 00:45:01,250.250 INFO    ] 2026-06-12 00:45:01
[2026-06-12 00:45:01,794.794 INFO    ] 2026-06-12 00:45:01
[2026-06-12 00:45:01,807.807 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 00:45:01,994.994 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 00:45:01,997.997 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 00:45:02,107.107 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 00:45:02,110.110 INFO    ] time= 12/06/2026 00:45:02
[2026-06-12 00:45:02,149.149 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 00:45:02,170.170 INFO    ] Checking for existing commands in stream...
[2026-06-12 00:45:02,292.292 INFO    ] No existing commands found in stream
[2026-06-12 00:45:07,312.312 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 00:45:07,315.315 INFO    ] Waiting 1.12 seconds before fallback handling...
[2026-06-12 00:45:08,777.777 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 00:45:08,779.779 INFO    ] Checking for system updates...
[2026-06-12 00:45:08,801.801 INFO    ] 200
[2026-06-12 00:45:08,803.803 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:45:08,833.833 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 00:45:08,835.835 INFO    ] No update needed
[2026-06-12 00:45:08,836.836 INFO    ] Checking for camera pi updates...
[2026-06-12 00:45:08,856.856 INFO    ] 200
[2026-06-12 00:45:08,857.857 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:45:08,881.881 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 00:45:09,031.031 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 00:45:09,033.033 INFO    ] No camera update needed
[2026-06-12 00:45:09,034.034 INFO    ] Script finished. Safe exiting...
[2026-06-12 00:45:09,035.035 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 00:45:09,039.039 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 00:45:09,042.042 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 00:45:11,081.081 INFO    ] ================================================
[2026-06-12 00:45:11,097.097 INFO    ] Launching Daemon at Fri Jun 12 00:45:11 IST 2026
[2026-06-12 00:45:11,108.108 INFO    ] ================================================
[2026-06-12 00:45:11,471.471 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 00:45:11
[2026-06-12 00:45:11,786.786 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 00:45:11,919.919 INFO    ] Initializing speech engine...
[2026-06-12 00:45:11,923.923 INFO    ] 2026-06-12 00:45:11
[2026-06-12 00:45:12,146.146 INFO    ] 2026-06-12 00:45:12
[2026-06-12 00:45:12,165.165 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 00:45:12,386.386 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 00:45:12,390.390 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 00:45:12,534.534 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 00:45:12,597.597 INFO    ] time= 12/06/2026 00:45:12
[2026-06-12 00:45:12,633.633 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 00:45:12,639.639 INFO    ] Checking for existing commands in stream...
[2026-06-12 00:45:12,715.715 INFO    ] No existing commands found in stream
[2026-06-12 00:45:17,725.725 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 00:45:17,728.728 INFO    ] Waiting 0.72 seconds before fallback handling...
[2026-06-12 00:45:18,832.832 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 00:45:18,834.834 INFO    ] Checking for system updates...
[2026-06-12 00:45:18,854.854 INFO    ] 200
[2026-06-12 00:45:18,855.855 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:45:18,885.885 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 00:45:18,887.887 INFO    ] No update needed
[2026-06-12 00:45:18,888.888 INFO    ] Checking for camera pi updates...
[2026-06-12 00:45:18,909.909 INFO    ] 200
[2026-06-12 00:45:18,910.910 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:45:18,934.934 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 00:45:18,981.981 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 00:45:18,982.982 INFO    ] No camera update needed
[2026-06-12 00:45:18,984.984 INFO    ] Script finished. Safe exiting...
[2026-06-12 00:45:18,985.985 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 00:45:18,988.988 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 00:45:18,991.991 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 00:45:21,029.029 INFO    ] ================================================
[2026-06-12 00:45:21,045.045 INFO    ] Launching Daemon at Fri Jun 12 00:45:21 IST 2026
[2026-06-12 00:45:21,055.055 INFO    ] ================================================
[2026-06-12 00:45:21,402.402 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 00:45:21
[2026-06-12 00:45:21,720.720 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 00:45:21,852.852 INFO    ] Initializing speech engine...
[2026-06-12 00:45:21,860.860 INFO    ] 2026-06-12 00:45:21
[2026-06-12 00:45:22,072.072 INFO    ] 2026-06-12 00:45:22
[2026-06-12 00:45:22,101.101 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 00:45:22,224.224 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 00:45:22,287.287 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 00:45:22,422.422 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 00:45:22,483.483 INFO    ] time= 12/06/2026 00:45:22
[2026-06-12 00:45:22,515.515 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 00:45:22,522.522 INFO    ] Checking for existing commands in stream...
[2026-06-12 00:45:22,587.587 INFO    ] No existing commands found in stream
[2026-06-12 00:45:27,598.598 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 00:45:27,601.601 INFO    ] Waiting 1.05 seconds before fallback handling...
[2026-06-12 00:45:29,025.025 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 00:45:29,027.027 INFO    ] Checking for system updates...
[2026-06-12 00:45:29,049.049 INFO    ] 200
[2026-06-12 00:45:29,050.050 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:45:29,080.080 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 00:45:29,082.082 INFO    ] No update needed
[2026-06-12 00:45:29,083.083 INFO    ] Checking for camera pi updates...
[2026-06-12 00:45:29,104.104 INFO    ] 200
[2026-06-12 00:45:29,105.105 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:45:29,128.128 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 00:45:29,170.170 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 00:45:29,172.172 INFO    ] No camera update needed
[2026-06-12 00:45:29,173.173 INFO    ] Script finished. Safe exiting...
[2026-06-12 00:45:29,174.174 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 00:45:29,177.177 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 00:45:29,180.180 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 00:45:31,220.220 INFO    ] ================================================
[2026-06-12 00:45:31,236.236 INFO    ] Launching Daemon at Fri Jun 12 00:45:31 IST 2026
[2026-06-12 00:45:31,247.247 INFO    ] ================================================
[2026-06-12 00:45:31,611.611 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 00:45:31
[2026-06-12 00:45:31,957.957 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 00:45:32,102.102 INFO    ] Initializing speech engine...
[2026-06-12 00:45:32,114.114 INFO    ] 2026-06-12 00:45:32
[2026-06-12 00:45:32,342.342 INFO    ] 2026-06-12 00:45:32
[2026-06-12 00:45:32,369.369 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 00:45:32,553.553 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 00:45:32,556.556 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 00:45:32,692.692 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 00:45:32,760.760 INFO    ] time= 12/06/2026 00:45:32
[2026-06-12 00:45:32,784.784 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 00:45:32,790.790 INFO    ] Checking for existing commands in stream...
[2026-06-12 00:45:32,856.856 INFO    ] No existing commands found in stream
[2026-06-12 00:45:37,865.865 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 00:45:37,868.868 INFO    ] Waiting 1.41 seconds before fallback handling...
[2026-06-12 00:45:39,635.635 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 00:45:39,637.637 INFO    ] Checking for system updates...
[2026-06-12 00:45:39,657.657 INFO    ] 200
[2026-06-12 00:45:39,659.659 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:45:39,688.688 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 00:45:39,690.690 INFO    ] No update needed
[2026-06-12 00:45:39,691.691 INFO    ] Checking for camera pi updates...
[2026-06-12 00:45:39,711.711 INFO    ] 200
[2026-06-12 00:45:39,712.712 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:45:39,735.735 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 00:45:39,773.773 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 00:45:39,775.775 INFO    ] No camera update needed
[2026-06-12 00:45:39,776.776 INFO    ] Script finished. Safe exiting...
[2026-06-12 00:45:39,777.777 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 00:45:39,780.780 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 00:45:39,783.783 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 00:45:41,821.821 INFO    ] ================================================
[2026-06-12 00:45:41,836.836 INFO    ] Launching Daemon at Fri Jun 12 00:45:41 IST 2026
[2026-06-12 00:45:41,848.848 INFO    ] ================================================
[2026-06-12 00:45:42,172.172 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 00:45:42
[2026-06-12 00:45:42,488.488 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 00:45:42,626.626 INFO    ] Initializing speech engine...
[2026-06-12 00:45:42,637.637 INFO    ] 2026-06-12 00:45:42
[2026-06-12 00:45:42,842.842 INFO    ] 2026-06-12 00:45:42
[2026-06-12 00:45:42,870.870 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 00:45:43,053.053 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 00:45:43,063.063 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 00:45:43,208.208 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 00:45:43,260.260 INFO    ] time= 12/06/2026 00:45:43
[2026-06-12 00:45:43,284.284 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 00:45:43,290.290 INFO    ] Checking for existing commands in stream...
[2026-06-12 00:45:43,356.356 INFO    ] No existing commands found in stream
[2026-06-12 00:45:48,365.365 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 00:45:48,368.368 INFO    ] Waiting 0.98 seconds before fallback handling...
[2026-06-12 00:45:49,736.736 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 00:45:49,738.738 INFO    ] Checking for system updates...
[2026-06-12 00:45:49,758.758 INFO    ] 200
[2026-06-12 00:45:49,759.759 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:45:49,792.792 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 00:45:49,794.794 INFO    ] No update needed
[2026-06-12 00:45:49,795.795 INFO    ] Checking for camera pi updates...
[2026-06-12 00:45:49,814.814 INFO    ] 200
[2026-06-12 00:45:49,815.815 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:45:49,838.838 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 00:45:49,881.881 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 00:45:49,883.883 INFO    ] No camera update needed
[2026-06-12 00:45:49,884.884 INFO    ] Script finished. Safe exiting...
[2026-06-12 00:45:49,885.885 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 00:45:49,888.888 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 00:45:49,892.892 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 00:45:51,932.932 INFO    ] ================================================
[2026-06-12 00:45:51,947.947 INFO    ] Launching Daemon at Fri Jun 12 00:45:51 IST 2026
[2026-06-12 00:45:51,958.958 INFO    ] ================================================
[2026-06-12 00:45:52,330.330 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 00:45:52
[2026-06-12 00:45:52,668.668 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 00:45:52,822.822 INFO    ] Initializing speech engine...
[2026-06-12 00:45:52,827.827 INFO    ] 2026-06-12 00:45:52
[2026-06-12 00:45:53,038.038 INFO    ] 2026-06-12 00:45:53
[2026-06-12 00:45:53,067.067 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 00:45:53,254.254 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 00:45:53,265.265 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 00:45:53,416.416 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 00:45:53,465.465 INFO    ] time= 12/06/2026 00:45:53
[2026-06-12 00:45:53,487.487 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 00:45:53,494.494 INFO    ] Checking for existing commands in stream...
[2026-06-12 00:45:53,561.561 INFO    ] No existing commands found in stream
[2026-06-12 00:45:58,571.571 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 00:45:58,574.574 INFO    ] Waiting 0.91 seconds before fallback handling...
[2026-06-12 00:45:59,915.915 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 00:45:59,921.921 INFO    ] Checking for system updates...
[2026-06-12 00:45:59,942.942 INFO    ] 200
[2026-06-12 00:45:59,944.944 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:45:59,976.976 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 00:45:59,978.978 INFO    ] No update needed
[2026-06-12 00:45:59,979.979 INFO    ] Checking for camera pi updates...
[2026-06-12 00:45:59,998.998 INFO    ] 200
[2026-06-12 00:46:00,000.000 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:46:00,025.025 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 00:46:00,078.078 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 00:46:00,080.080 INFO    ] No camera update needed
[2026-06-12 00:46:00,081.081 INFO    ] Script finished. Safe exiting...
[2026-06-12 00:46:00,083.083 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 00:46:00,086.086 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 00:46:00,088.088 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 00:46:02,120.120 INFO    ] ================================================
[2026-06-12 00:46:02,133.133 INFO    ] Launching Daemon at Fri Jun 12 00:46:02 IST 2026
[2026-06-12 00:46:02,142.142 INFO    ] ================================================
[2026-06-12 00:46:02,502.502 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 00:46:02
[2026-06-12 00:46:02,872.872 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 00:46:03,012.012 INFO    ] Initializing speech engine...
[2026-06-12 00:46:03,020.020 INFO    ] 2026-06-12 00:46:03
[2026-06-12 00:46:03,233.233 INFO    ] 2026-06-12 00:46:03
[2026-06-12 00:46:03,262.262 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 00:46:03,446.446 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 00:46:03,449.449 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 00:46:03,611.611 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 00:46:03,660.660 INFO    ] time= 12/06/2026 00:46:03
[2026-06-12 00:46:03,675.675 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 00:46:03,682.682 INFO    ] Checking for existing commands in stream...
[2026-06-12 00:46:03,749.749 INFO    ] No existing commands found in stream
[2026-06-12 00:46:08,758.758 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 00:46:08,761.761 INFO    ] Waiting 3.80 seconds before fallback handling...
[2026-06-12 00:46:12,934.934 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 00:46:12,936.936 INFO    ] Checking for system updates...
[2026-06-12 00:46:12,956.956 INFO    ] 200
[2026-06-12 00:46:12,958.958 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:46:12,990.990 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 00:46:12,991.991 INFO    ] No update needed
[2026-06-12 00:46:12,992.992 INFO    ] Checking for camera pi updates...
[2026-06-12 00:46:13,012.012 INFO    ] 200
[2026-06-12 00:46:13,013.013 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:46:13,040.040 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 00:46:13,085.085 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 00:46:13,086.086 INFO    ] No camera update needed
[2026-06-12 00:46:13,088.088 INFO    ] Script finished. Safe exiting...
[2026-06-12 00:46:13,089.089 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 00:46:13,092.092 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 00:46:13,095.095 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 00:46:15,133.133 INFO    ] ================================================
[2026-06-12 00:46:15,148.148 INFO    ] Launching Daemon at Fri Jun 12 00:46:15 IST 2026
[2026-06-12 00:46:15,165.165 INFO    ] ================================================
[2026-06-12 00:46:15,523.523 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 00:46:15
[2026-06-12 00:46:15,835.835 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 00:46:15,964.964 INFO    ] Initializing speech engine...
[2026-06-12 00:46:15,969.969 INFO    ] 2026-06-12 00:46:15
[2026-06-12 00:46:16,186.186 INFO    ] 2026-06-12 00:46:16
[2026-06-12 00:46:16,218.218 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 00:46:16,346.346 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 00:46:16,404.404 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 00:46:16,545.545 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 00:46:16,612.612 INFO    ] time= 12/06/2026 00:46:16
[2026-06-12 00:46:16,636.636 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 00:46:16,643.643 INFO    ] Checking for existing commands in stream...
[2026-06-12 00:46:16,711.711 INFO    ] No existing commands found in stream
[2026-06-12 00:46:21,720.720 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 00:46:21,723.723 INFO    ] Waiting 2.92 seconds before fallback handling...
[2026-06-12 00:46:25,024.024 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 00:46:25,026.026 INFO    ] Checking for system updates...
[2026-06-12 00:46:25,047.047 INFO    ] 200
[2026-06-12 00:46:25,048.048 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:46:25,078.078 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 00:46:25,079.079 INFO    ] No update needed
[2026-06-12 00:46:25,081.081 INFO    ] Checking for camera pi updates...
[2026-06-12 00:46:25,100.100 INFO    ] 200
[2026-06-12 00:46:25,102.102 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:46:25,125.125 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 00:46:25,168.168 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 00:46:25,169.169 INFO    ] No camera update needed
[2026-06-12 00:46:25,171.171 INFO    ] Script finished. Safe exiting...
[2026-06-12 00:46:25,172.172 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 00:46:25,175.175 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 00:46:25,178.178 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 00:46:27,215.215 INFO    ] ================================================
[2026-06-12 00:46:27,230.230 INFO    ] Launching Daemon at Fri Jun 12 00:46:27 IST 2026
[2026-06-12 00:46:27,241.241 INFO    ] ================================================
[2026-06-12 00:46:27,627.627 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 00:46:27
[2026-06-12 00:46:27,938.938 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 00:46:28,070.070 INFO    ] Initializing speech engine...
[2026-06-12 00:46:28,074.074 INFO    ] 2026-06-12 00:46:28
[2026-06-12 00:46:28,303.303 INFO    ] 2026-06-12 00:46:28
[2026-06-12 00:46:28,333.333 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 00:46:28,454.454 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 00:46:28,455.455 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 00:46:28,615.615 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 00:46:28,668.668 INFO    ] time= 12/06/2026 00:46:28
[2026-06-12 00:46:28,699.699 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 00:46:28,754.754 INFO    ] Checking for existing commands in stream...
[2026-06-12 00:46:28,857.857 INFO    ] No existing commands found in stream
[2026-06-12 00:46:33,867.867 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 00:46:33,870.870 INFO    ] Waiting 1.61 seconds before fallback handling...
[2026-06-12 00:46:35,935.935 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 00:46:35,936.936 INFO    ] Checking for system updates...
[2026-06-12 00:46:35,958.958 INFO    ] 200
[2026-06-12 00:46:35,960.960 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:46:35,990.990 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 00:46:35,991.991 INFO    ] No update needed
[2026-06-12 00:46:35,993.993 INFO    ] Checking for camera pi updates...
[2026-06-12 00:46:36,012.012 INFO    ] 200
[2026-06-12 00:46:36,014.014 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:46:36,039.039 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 00:46:36,080.080 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 00:46:36,082.082 INFO    ] No camera update needed
[2026-06-12 00:46:36,083.083 INFO    ] Script finished. Safe exiting...
[2026-06-12 00:46:36,084.084 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 00:46:36,087.087 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 00:46:36,090.090 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 00:46:38,129.129 INFO    ] ================================================
[2026-06-12 00:46:38,145.145 INFO    ] Launching Daemon at Fri Jun 12 00:46:38 IST 2026
[2026-06-12 00:46:38,155.155 INFO    ] ================================================
[2026-06-12 00:46:38,536.536 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 00:46:38
[2026-06-12 00:46:38,875.875 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 00:46:39,027.027 INFO    ] Initializing speech engine...
[2026-06-12 00:46:39,033.033 INFO    ] 2026-06-12 00:46:39
[2026-06-12 00:46:39,244.244 INFO    ] 2026-06-12 00:46:39
[2026-06-12 00:46:39,273.273 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 00:46:39,459.459 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 00:46:39,469.469 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 00:46:39,606.606 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 00:46:39,669.669 INFO    ] time= 12/06/2026 00:46:39
[2026-06-12 00:46:39,694.694 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 00:46:39,700.700 INFO    ] Checking for existing commands in stream...
[2026-06-12 00:46:39,768.768 INFO    ] No existing commands found in stream
[2026-06-12 00:46:44,777.777 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 00:46:44,781.781 INFO    ] Waiting 3.52 seconds before fallback handling...
[2026-06-12 00:46:48,684.684 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 00:46:48,685.685 INFO    ] Checking for system updates...
[2026-06-12 00:46:48,707.707 INFO    ] 200
[2026-06-12 00:46:48,709.709 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:46:48,741.741 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 00:46:48,742.742 INFO    ] No update needed
[2026-06-12 00:46:48,744.744 INFO    ] Checking for camera pi updates...
[2026-06-12 00:46:48,765.765 INFO    ] 200
[2026-06-12 00:46:48,766.766 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:46:48,792.792 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 00:46:48,836.836 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 00:46:48,838.838 INFO    ] No camera update needed
[2026-06-12 00:46:48,839.839 INFO    ] Script finished. Safe exiting...
[2026-06-12 00:46:48,841.841 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 00:46:48,846.846 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 00:46:48,849.849 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 00:46:50,888.888 INFO    ] ================================================
[2026-06-12 00:46:50,903.903 INFO    ] Launching Daemon at Fri Jun 12 00:46:50 IST 2026
[2026-06-12 00:46:50,914.914 INFO    ] ================================================
[2026-06-12 00:46:51,308.308 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 00:46:51
[2026-06-12 00:46:51,653.653 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 00:46:51,782.782 INFO    ] Initializing speech engine...
[2026-06-12 00:46:51,787.787 INFO    ] 2026-06-12 00:46:51
[2026-06-12 00:46:52,002.002 INFO    ] 2026-06-12 00:46:51
[2026-06-12 00:46:52,032.032 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 00:46:52,214.214 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 00:46:52,224.224 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 00:46:52,353.353 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 00:46:52,421.421 INFO    ] time= 12/06/2026 00:46:52
[2026-06-12 00:46:52,444.444 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 00:46:52,450.450 INFO    ] Checking for existing commands in stream...
[2026-06-12 00:46:52,517.517 INFO    ] No existing commands found in stream
[2026-06-12 00:46:57,526.526 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 00:46:57,529.529 INFO    ] Waiting 3.87 seconds before fallback handling...
[2026-06-12 00:47:01,732.732 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 00:47:01,734.734 INFO    ] Checking for system updates...
[2026-06-12 00:47:01,760.760 INFO    ] 200
[2026-06-12 00:47:01,762.762 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:47:01,805.805 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 00:47:01,807.807 INFO    ] No update needed
[2026-06-12 00:47:01,809.809 INFO    ] Checking for camera pi updates...
[2026-06-12 00:47:01,841.841 INFO    ] 200
[2026-06-12 00:47:01,844.844 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:47:01,887.887 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 00:47:01,920.920 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 00:47:01,922.922 INFO    ] No camera update needed
[2026-06-12 00:47:01,924.924 INFO    ] Script finished. Safe exiting...
[2026-06-12 00:47:01,926.926 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 00:47:01,930.930 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 00:47:01,934.934 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 00:47:03,974.974 INFO    ] ================================================
[2026-06-12 00:47:03,989.989 INFO    ] Launching Daemon at Fri Jun 12 00:47:03 IST 2026
[2026-06-12 00:47:04,999.999 INFO    ] ================================================
[2026-06-12 00:47:04,369.369 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 00:47:04
[2026-06-12 00:47:04,684.684 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 00:47:04,821.821 INFO    ] Initializing speech engine...
[2026-06-12 00:47:04,832.832 INFO    ] 2026-06-12 00:47:04
[2026-06-12 00:47:05,036.036 INFO    ] 2026-06-12 00:47:05
[2026-06-12 00:47:05,064.064 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 00:47:05,227.227 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 00:47:05,261.261 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 00:47:05,390.390 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 00:47:05,461.461 INFO    ] time= 12/06/2026 00:47:05
[2026-06-12 00:47:05,488.488 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 00:47:05,490.490 INFO    ] Checking for existing commands in stream...
[2026-06-12 00:47:05,560.560 INFO    ] No existing commands found in stream
[2026-06-12 00:47:10,570.570 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 00:47:10,573.573 INFO    ] Waiting 2.30 seconds before fallback handling...
[2026-06-12 00:47:13,235.235 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 00:47:13,237.237 INFO    ] Checking for system updates...
[2026-06-12 00:47:13,258.258 INFO    ] 200
[2026-06-12 00:47:13,259.259 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:47:13,289.289 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 00:47:13,291.291 INFO    ] No update needed
[2026-06-12 00:47:13,292.292 INFO    ] Checking for camera pi updates...
[2026-06-12 00:47:13,313.313 INFO    ] 200
[2026-06-12 00:47:13,314.314 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:47:13,338.338 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 00:47:13,485.485 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 00:47:13,486.486 INFO    ] No camera update needed
[2026-06-12 00:47:13,488.488 INFO    ] Script finished. Safe exiting...
[2026-06-12 00:47:13,489.489 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 00:47:13,492.492 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 00:47:13,496.496 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 00:47:15,536.536 INFO    ] ================================================
[2026-06-12 00:47:15,551.551 INFO    ] Launching Daemon at Fri Jun 12 00:47:15 IST 2026
[2026-06-12 00:47:15,562.562 INFO    ] ================================================
[2026-06-12 00:47:15,887.887 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 00:47:15
[2026-06-12 00:47:16,201.201 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 00:47:16,331.331 INFO    ] Initializing speech engine...
[2026-06-12 00:47:16,334.334 INFO    ] 2026-06-12 00:47:16
[2026-06-12 00:47:16,555.555 INFO    ] 2026-06-12 00:47:16
[2026-06-12 00:47:16,583.583 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 00:47:16,770.770 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 00:47:16,774.774 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 00:47:16,904.904 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 00:47:16,950.950 INFO    ] time= 12/06/2026 00:47:16
[2026-06-12 00:47:16,996.996 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 00:47:17,006.006 INFO    ] Checking for existing commands in stream...
[2026-06-12 00:47:17,077.077 INFO    ] No existing commands found in stream
[2026-06-12 00:47:22,088.088 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 00:47:22,091.091 INFO    ] Waiting 2.68 seconds before fallback handling...
[2026-06-12 00:47:25,174.174 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 00:47:25,175.175 INFO    ] Checking for system updates...
[2026-06-12 00:47:25,196.196 INFO    ] 200
[2026-06-12 00:47:25,197.197 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:47:25,232.232 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 00:47:25,234.234 INFO    ] No update needed
[2026-06-12 00:47:25,235.235 INFO    ] Checking for camera pi updates...
[2026-06-12 00:47:25,256.256 INFO    ] 200
[2026-06-12 00:47:25,257.257 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:47:25,283.283 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 00:47:25,328.328 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 00:47:25,330.330 INFO    ] No camera update needed
[2026-06-12 00:47:25,331.331 INFO    ] Script finished. Safe exiting...
[2026-06-12 00:47:25,333.333 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 00:47:25,336.336 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 00:47:25,343.343 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 00:47:27,383.383 INFO    ] ================================================
[2026-06-12 00:47:27,398.398 INFO    ] Launching Daemon at Fri Jun 12 00:47:27 IST 2026
[2026-06-12 00:47:27,409.409 INFO    ] ================================================
[2026-06-12 00:47:27,764.764 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 00:47:27
[2026-06-12 00:47:28,102.102 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 00:47:28,255.255 INFO    ] Initializing speech engine...
[2026-06-12 00:47:28,260.260 INFO    ] 2026-06-12 00:47:28
[2026-06-12 00:47:28,466.466 INFO    ] 2026-06-12 00:47:28
[2026-06-12 00:47:28,495.495 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 00:47:28,679.679 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 00:47:28,689.689 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 00:47:28,833.833 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 00:47:28,886.886 INFO    ] time= 12/06/2026 00:47:28
[2026-06-12 00:47:28,909.909 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 00:47:28,915.915 INFO    ] Checking for existing commands in stream...
[2026-06-12 00:47:28,982.982 INFO    ] No existing commands found in stream
[2026-06-12 00:47:33,997.997 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 00:47:34,000.000 INFO    ] Waiting 0.08 seconds before fallback handling...
[2026-06-12 00:47:34,424.424 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 00:47:34,425.425 INFO    ] Checking for system updates...
[2026-06-12 00:47:34,448.448 INFO    ] 200
[2026-06-12 00:47:34,450.450 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:47:34,481.481 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 00:47:34,483.483 INFO    ] No update needed
[2026-06-12 00:47:34,484.484 INFO    ] Checking for camera pi updates...
[2026-06-12 00:47:34,504.504 INFO    ] 200
[2026-06-12 00:47:34,505.505 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:47:34,531.531 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 00:47:34,569.569 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 00:47:34,571.571 INFO    ] No camera update needed
[2026-06-12 00:47:34,572.572 INFO    ] Script finished. Safe exiting...
[2026-06-12 00:47:34,573.573 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 00:47:34,577.577 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 00:47:34,580.580 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 00:47:36,620.620 INFO    ] ================================================
[2026-06-12 00:47:36,636.636 INFO    ] Launching Daemon at Fri Jun 12 00:47:36 IST 2026
[2026-06-12 00:47:36,647.647 INFO    ] ================================================
[2026-06-12 00:47:36,971.971 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 00:47:36
[2026-06-12 00:47:37,282.282 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 00:47:37,421.421 INFO    ] Initializing speech engine...
[2026-06-12 00:47:37,432.432 INFO    ] 2026-06-12 00:47:37
[2026-06-12 00:47:37,635.635 INFO    ] 2026-06-12 00:47:37
[2026-06-12 00:47:37,665.665 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 00:47:37,851.851 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 00:47:37,861.861 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 00:47:37,989.989 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 00:47:38,046.046 INFO    ] time= 12/06/2026 00:47:37
[2026-06-12 00:47:38,085.085 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 00:47:38,087.087 INFO    ] Checking for existing commands in stream...
[2026-06-12 00:47:38,159.159 INFO    ] No existing commands found in stream
[2026-06-12 00:47:43,168.168 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 00:47:43,171.171 INFO    ] Waiting 2.46 seconds before fallback handling...
[2026-06-12 00:47:46,018.018 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 00:47:46,019.019 INFO    ] Checking for system updates...
[2026-06-12 00:47:46,042.042 INFO    ] 200
[2026-06-12 00:47:46,043.043 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:47:46,074.074 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 00:47:46,075.075 INFO    ] No update needed
[2026-06-12 00:47:46,077.077 INFO    ] Checking for camera pi updates...
[2026-06-12 00:47:46,096.096 INFO    ] 200
[2026-06-12 00:47:46,098.098 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:47:46,121.121 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 00:47:46,162.162 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 00:47:46,164.164 INFO    ] No camera update needed
[2026-06-12 00:47:46,165.165 INFO    ] Script finished. Safe exiting...
[2026-06-12 00:47:46,166.166 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 00:47:46,169.169 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 00:47:46,173.173 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 00:47:48,211.211 INFO    ] ================================================
[2026-06-12 00:47:48,227.227 INFO    ] Launching Daemon at Fri Jun 12 00:47:48 IST 2026
[2026-06-12 00:47:48,237.237 INFO    ] ================================================
[2026-06-12 00:47:48,563.563 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 00:47:48
[2026-06-12 00:47:48,886.886 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 00:47:49,017.017 INFO    ] Initializing speech engine...
[2026-06-12 00:47:49,025.025 INFO    ] 2026-06-12 00:47:49
[2026-06-12 00:47:49,238.238 INFO    ] 2026-06-12 00:47:49
[2026-06-12 00:47:49,267.267 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 00:47:49,452.452 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 00:47:49,461.461 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 00:47:49,591.591 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 00:47:49,650.650 INFO    ] time= 12/06/2026 00:47:49
[2026-06-12 00:47:49,683.683 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 00:47:49,689.689 INFO    ] Checking for existing commands in stream...
[2026-06-12 00:47:49,780.780 INFO    ] No existing commands found in stream
[2026-06-12 00:47:54,789.789 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 00:47:54,792.792 INFO    ] Waiting 3.99 seconds before fallback handling...
[2026-06-12 00:47:59,177.177 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 00:47:59,179.179 INFO    ] Checking for system updates...
[2026-06-12 00:47:59,201.201 INFO    ] 200
[2026-06-12 00:47:59,202.202 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:47:59,234.234 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 00:47:59,236.236 INFO    ] No update needed
[2026-06-12 00:47:59,237.237 INFO    ] Checking for camera pi updates...
[2026-06-12 00:47:59,256.256 INFO    ] 200
[2026-06-12 00:47:59,257.257 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:47:59,283.283 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 00:47:59,324.324 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 00:47:59,326.326 INFO    ] No camera update needed
[2026-06-12 00:47:59,327.327 INFO    ] Script finished. Safe exiting...
[2026-06-12 00:47:59,328.328 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 00:47:59,331.331 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 00:47:59,334.334 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 00:48:01,376.376 INFO    ] ================================================
[2026-06-12 00:48:01,391.391 INFO    ] Launching Daemon at Fri Jun 12 00:48:01 IST 2026
[2026-06-12 00:48:01,422.422 INFO    ] ================================================
[2026-06-12 00:48:01,841.841 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 00:48:01
[2026-06-12 00:48:02,252.252 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 00:48:02,410.410 INFO    ] Initializing speech engine...
[2026-06-12 00:48:02,427.427 INFO    ] 2026-06-12 00:48:02
[2026-06-12 00:48:02,671.671 INFO    ] 2026-06-12 00:48:02
[2026-06-12 00:48:02,704.704 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 00:48:02,842.842 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 00:48:02,885.885 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 00:48:03,027.027 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 00:48:03,064.064 INFO    ] time= 12/06/2026 00:48:03
[2026-06-12 00:48:03,115.115 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 00:48:03,148.148 INFO    ] Checking for existing commands in stream...
[2026-06-12 00:48:03,248.248 INFO    ] No existing commands found in stream
[2026-06-12 00:48:08,259.259 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 00:48:08,262.262 INFO    ] Waiting 0.26 seconds before fallback handling...
[2026-06-12 00:48:08,886.886 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 00:48:08,887.887 INFO    ] Checking for system updates...
[2026-06-12 00:48:08,908.908 INFO    ] 200
[2026-06-12 00:48:08,910.910 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:48:08,941.941 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 00:48:08,942.942 INFO    ] No update needed
[2026-06-12 00:48:08,944.944 INFO    ] Checking for camera pi updates...
[2026-06-12 00:48:08,963.963 INFO    ] 200
[2026-06-12 00:48:08,964.964 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:48:08,987.987 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 00:48:09,033.033 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 00:48:09,034.034 INFO    ] No camera update needed
[2026-06-12 00:48:09,035.035 INFO    ] Script finished. Safe exiting...
[2026-06-12 00:48:09,036.036 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 00:48:09,039.039 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 00:48:09,042.042 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 00:48:11,083.083 INFO    ] ================================================
[2026-06-12 00:48:11,099.099 INFO    ] Launching Daemon at Fri Jun 12 00:48:11 IST 2026
[2026-06-12 00:48:11,110.110 INFO    ] ================================================
[2026-06-12 00:48:11,458.458 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 00:48:11
[2026-06-12 00:48:11,771.771 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 00:48:11,902.902 INFO    ] Initializing speech engine...
[2026-06-12 00:48:11,906.906 INFO    ] 2026-06-12 00:48:11
[2026-06-12 00:48:12,122.122 INFO    ] 2026-06-12 00:48:12
[2026-06-12 00:48:12,149.149 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 00:48:12,305.305 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 00:48:12,307.307 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 00:48:12,413.413 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 00:48:12,415.415 INFO    ] time= 12/06/2026 00:48:12
[2026-06-12 00:48:12,416.416 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 00:48:12,417.417 INFO    ] Checking for existing commands in stream...
[2026-06-12 00:48:12,546.546 INFO    ] No existing commands found in stream
[2026-06-12 00:48:17,563.563 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 00:48:17,571.571 INFO    ] Waiting 1.49 seconds before fallback handling...
[2026-06-12 00:48:19,425.425 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 00:48:19,426.426 INFO    ] Checking for system updates...
[2026-06-12 00:48:19,448.448 INFO    ] 200
[2026-06-12 00:48:19,449.449 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:48:19,483.483 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 00:48:19,484.484 INFO    ] No update needed
[2026-06-12 00:48:19,485.485 INFO    ] Checking for camera pi updates...
[2026-06-12 00:48:19,506.506 INFO    ] 200
[2026-06-12 00:48:19,507.507 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:48:19,532.532 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 00:48:19,575.575 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 00:48:19,577.577 INFO    ] No camera update needed
[2026-06-12 00:48:19,578.578 INFO    ] Script finished. Safe exiting...
[2026-06-12 00:48:19,579.579 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 00:48:19,582.582 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 00:48:19,585.585 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 00:48:21,625.625 INFO    ] ================================================
[2026-06-12 00:48:21,640.640 INFO    ] Launching Daemon at Fri Jun 12 00:48:21 IST 2026
[2026-06-12 00:48:21,652.652 INFO    ] ================================================
[2026-06-12 00:48:22,006.006 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 00:48:22
[2026-06-12 00:48:22,320.320 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 00:48:22,450.450 INFO    ] Initializing speech engine...
[2026-06-12 00:48:22,454.454 INFO    ] 2026-06-12 00:48:22
[2026-06-12 00:48:22,670.670 INFO    ] 2026-06-12 00:48:22
[2026-06-12 00:48:22,704.704 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 00:48:22,902.902 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 00:48:22,906.906 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 00:48:23,046.046 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 00:48:23,092.092 INFO    ] time= 12/06/2026 00:48:23
[2026-06-12 00:48:23,130.130 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 00:48:23,154.154 INFO    ] Checking for existing commands in stream...
[2026-06-12 00:48:23,232.232 INFO    ] No existing commands found in stream
[2026-06-12 00:48:28,241.241 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 00:48:28,244.244 INFO    ] Waiting 1.27 seconds before fallback handling...
[2026-06-12 00:48:29,906.906 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 00:48:29,908.908 INFO    ] Checking for system updates...
[2026-06-12 00:48:29,929.929 INFO    ] 200
[2026-06-12 00:48:29,931.931 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:48:29,961.961 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 00:48:29,963.963 INFO    ] No update needed
[2026-06-12 00:48:29,964.964 INFO    ] Checking for camera pi updates...
[2026-06-12 00:48:29,984.984 INFO    ] 200
[2026-06-12 00:48:29,985.985 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:48:30,011.011 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 00:48:30,057.057 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 00:48:30,059.059 INFO    ] No camera update needed
[2026-06-12 00:48:30,060.060 INFO    ] Script finished. Safe exiting...
[2026-06-12 00:48:30,061.061 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 00:48:30,065.065 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 00:48:30,068.068 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 00:48:32,100.100 INFO    ] ================================================
[2026-06-12 00:48:32,108.108 INFO    ] Launching Daemon at Fri Jun 12 00:48:32 IST 2026
[2026-06-12 00:48:32,114.114 INFO    ] ================================================
[2026-06-12 00:48:32,493.493 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 00:48:32
[2026-06-12 00:48:32,830.830 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 00:48:32,981.981 INFO    ] Initializing speech engine...
[2026-06-12 00:48:32,987.987 INFO    ] 2026-06-12 00:48:32
[2026-06-12 00:48:33,195.195 INFO    ] 2026-06-12 00:48:33
[2026-06-12 00:48:33,225.225 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 00:48:33,411.411 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 00:48:33,424.424 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 00:48:33,563.563 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 00:48:33,621.621 INFO    ] time= 12/06/2026 00:48:33
[2026-06-12 00:48:33,646.646 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 00:48:33,652.652 INFO    ] Checking for existing commands in stream...
[2026-06-12 00:48:33,721.721 INFO    ] No existing commands found in stream
[2026-06-12 00:48:38,729.729 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 00:48:38,731.731 INFO    ] Waiting 1.55 seconds before fallback handling...
[2026-06-12 00:48:40,673.673 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 00:48:40,674.674 INFO    ] Checking for system updates...
[2026-06-12 00:48:40,695.695 INFO    ] 200
[2026-06-12 00:48:40,697.697 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:48:40,730.730 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 00:48:40,732.732 INFO    ] No update needed
[2026-06-12 00:48:40,734.734 INFO    ] Checking for camera pi updates...
[2026-06-12 00:48:40,755.755 INFO    ] 200
[2026-06-12 00:48:40,756.756 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:48:40,782.782 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 00:48:40,830.830 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 00:48:40,832.832 INFO    ] No camera update needed
[2026-06-12 00:48:40,833.833 INFO    ] Script finished. Safe exiting...
[2026-06-12 00:48:40,835.835 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 00:48:40,838.838 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 00:48:40,841.841 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 00:48:42,882.882 INFO    ] ================================================
[2026-06-12 00:48:42,897.897 INFO    ] Launching Daemon at Fri Jun 12 00:48:42 IST 2026
[2026-06-12 00:48:42,908.908 INFO    ] ================================================
[2026-06-12 00:48:43,238.238 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 00:48:43
[2026-06-12 00:48:43,556.556 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 00:48:43,698.698 INFO    ] Initializing speech engine...
[2026-06-12 00:48:43,710.710 INFO    ] 2026-06-12 00:48:43
[2026-06-12 00:48:43,927.927 INFO    ] 2026-06-12 00:48:43
[2026-06-12 00:48:43,957.957 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 00:48:44,095.095 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 00:48:44,158.158 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 00:48:44,300.300 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 00:48:44,346.346 INFO    ] time= 12/06/2026 00:48:44
[2026-06-12 00:48:44,385.385 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 00:48:44,408.408 INFO    ] Checking for existing commands in stream...
[2026-06-12 00:48:44,484.484 INFO    ] No existing commands found in stream
[2026-06-12 00:48:49,495.495 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 00:48:49,503.503 INFO    ] Waiting 3.00 seconds before fallback handling...
[2026-06-12 00:48:52,912.912 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 00:48:52,914.914 INFO    ] Checking for system updates...
[2026-06-12 00:48:52,936.936 INFO    ] 200
[2026-06-12 00:48:52,938.938 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:48:52,968.968 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 00:48:52,970.970 INFO    ] No update needed
[2026-06-12 00:48:52,971.971 INFO    ] Checking for camera pi updates...
[2026-06-12 00:48:52,991.991 INFO    ] 200
[2026-06-12 00:48:52,993.993 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:48:53,016.016 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 00:48:53,064.064 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 00:48:53,066.066 INFO    ] No camera update needed
[2026-06-12 00:48:53,067.067 INFO    ] Script finished. Safe exiting...
[2026-06-12 00:48:53,068.068 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 00:48:53,072.072 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 00:48:53,075.075 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 00:48:55,113.113 INFO    ] ================================================
[2026-06-12 00:48:55,130.130 INFO    ] Launching Daemon at Fri Jun 12 00:48:55 IST 2026
[2026-06-12 00:48:55,141.141 INFO    ] ================================================
[2026-06-12 00:48:55,471.471 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 00:48:55
[2026-06-12 00:48:55,787.787 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 00:48:55,930.930 INFO    ] Initializing speech engine...
[2026-06-12 00:48:55,934.934 INFO    ] 2026-06-12 00:48:55
[2026-06-12 00:48:56,137.137 INFO    ] 2026-06-12 00:48:56
[2026-06-12 00:48:56,165.165 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 00:48:56,350.350 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 00:48:56,359.359 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 00:48:56,487.487 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 00:48:56,551.551 INFO    ] time= 12/06/2026 00:48:56
[2026-06-12 00:48:56,578.578 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 00:48:56,580.580 INFO    ] Checking for existing commands in stream...
[2026-06-12 00:48:56,651.651 INFO    ] No existing commands found in stream
[2026-06-12 00:49:01,673.673 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 00:49:01,677.677 INFO    ] Waiting 2.53 seconds before fallback handling...
[2026-06-12 00:49:04,559.559 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 00:49:04,560.560 INFO    ] Checking for system updates...
[2026-06-12 00:49:04,581.581 INFO    ] 200
[2026-06-12 00:49:04,583.583 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:49:04,613.613 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 00:49:04,614.614 INFO    ] No update needed
[2026-06-12 00:49:04,616.616 INFO    ] Checking for camera pi updates...
[2026-06-12 00:49:04,635.635 INFO    ] 200
[2026-06-12 00:49:04,636.636 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:49:04,660.660 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 00:49:04,703.703 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 00:49:04,704.704 INFO    ] No camera update needed
[2026-06-12 00:49:04,706.706 INFO    ] Script finished. Safe exiting...
[2026-06-12 00:49:04,707.707 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 00:49:04,710.710 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 00:49:04,713.713 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 00:49:06,752.752 INFO    ] ================================================
[2026-06-12 00:49:06,768.768 INFO    ] Launching Daemon at Fri Jun 12 00:49:06 IST 2026
[2026-06-12 00:49:06,780.780 INFO    ] ================================================
[2026-06-12 00:49:07,138.138 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 00:49:07
[2026-06-12 00:49:07,477.477 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 00:49:07,619.619 INFO    ] Initializing speech engine...
[2026-06-12 00:49:07,631.631 INFO    ] 2026-06-12 00:49:07
[2026-06-12 00:49:07,844.844 INFO    ] 2026-06-12 00:49:07
[2026-06-12 00:49:07,874.874 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 00:49:08,058.058 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 00:49:08,067.067 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 00:49:08,204.204 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 00:49:08,266.266 INFO    ] time= 12/06/2026 00:49:08
[2026-06-12 00:49:08,290.290 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 00:49:08,296.296 INFO    ] Checking for existing commands in stream...
[2026-06-12 00:49:08,363.363 INFO    ] No existing commands found in stream
[2026-06-12 00:49:13,388.388 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 00:49:13,391.391 INFO    ] Waiting 1.23 seconds before fallback handling...
[2026-06-12 00:49:15,006.006 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 00:49:15,007.007 INFO    ] Checking for system updates...
[2026-06-12 00:49:15,028.028 INFO    ] 200
[2026-06-12 00:49:15,030.030 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:49:15,063.063 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 00:49:15,065.065 INFO    ] No update needed
[2026-06-12 00:49:15,066.066 INFO    ] Checking for camera pi updates...
[2026-06-12 00:49:15,088.088 INFO    ] 200
[2026-06-12 00:49:15,090.090 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:49:15,115.115 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 00:49:15,253.253 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 00:49:15,255.255 INFO    ] No camera update needed
[2026-06-12 00:49:15,256.256 INFO    ] Script finished. Safe exiting...
[2026-06-12 00:49:15,257.257 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 00:49:15,261.261 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 00:49:15,264.264 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 00:49:17,302.302 INFO    ] ================================================
[2026-06-12 00:49:17,317.317 INFO    ] Launching Daemon at Fri Jun 12 00:49:17 IST 2026
[2026-06-12 00:49:17,328.328 INFO    ] ================================================
[2026-06-12 00:49:17,701.701 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 00:49:17
[2026-06-12 00:49:18,018.018 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 00:49:18,162.162 INFO    ] Initializing speech engine...
[2026-06-12 00:49:18,166.166 INFO    ] 2026-06-12 00:49:18
[2026-06-12 00:49:18,371.371 INFO    ] 2026-06-12 00:49:18
[2026-06-12 00:49:18,399.399 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 00:49:18,583.583 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 00:49:18,586.586 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 00:49:18,722.722 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 00:49:18,786.786 INFO    ] time= 12/06/2026 00:49:18
[2026-06-12 00:49:18,813.813 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 00:49:18,819.819 INFO    ] Checking for existing commands in stream...
[2026-06-12 00:49:18,886.886 INFO    ] No existing commands found in stream
[2026-06-12 00:49:23,901.901 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 00:49:23,903.903 INFO    ] Waiting 3.14 seconds before fallback handling...
[2026-06-12 00:49:27,425.425 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 00:49:27,426.426 INFO    ] Checking for system updates...
[2026-06-12 00:49:27,447.447 INFO    ] 200
[2026-06-12 00:49:27,448.448 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:49:27,478.478 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 00:49:27,480.480 INFO    ] No update needed
[2026-06-12 00:49:27,481.481 INFO    ] Checking for camera pi updates...
[2026-06-12 00:49:27,503.503 INFO    ] 200
[2026-06-12 00:49:27,504.504 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:49:27,530.530 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 00:49:27,573.573 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 00:49:27,575.575 INFO    ] No camera update needed
[2026-06-12 00:49:27,576.576 INFO    ] Script finished. Safe exiting...
[2026-06-12 00:49:27,577.577 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 00:49:27,580.580 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 00:49:27,583.583 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 00:49:29,623.623 INFO    ] ================================================
[2026-06-12 00:49:29,639.639 INFO    ] Launching Daemon at Fri Jun 12 00:49:29 IST 2026
[2026-06-12 00:49:29,650.650 INFO    ] ================================================
[2026-06-12 00:49:30,035.035 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 00:49:30
[2026-06-12 00:49:30,373.373 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 00:49:30,525.525 INFO    ] Initializing speech engine...
[2026-06-12 00:49:30,531.531 INFO    ] 2026-06-12 00:49:30
[2026-06-12 00:49:30,740.740 INFO    ] 2026-06-12 00:49:30
[2026-06-12 00:49:30,769.769 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 00:49:30,956.956 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 00:49:30,966.966 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 00:49:31,098.098 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 00:49:31,166.166 INFO    ] time= 12/06/2026 00:49:31
[2026-06-12 00:49:31,191.191 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 00:49:31,197.197 INFO    ] Checking for existing commands in stream...
[2026-06-12 00:49:31,265.265 INFO    ] No existing commands found in stream
[2026-06-12 00:49:36,275.275 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 00:49:36,278.278 INFO    ] Waiting 0.51 seconds before fallback handling...
[2026-06-12 00:49:37,176.176 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 00:49:37,178.178 INFO    ] Checking for system updates...
[2026-06-12 00:49:37,198.198 INFO    ] 200
[2026-06-12 00:49:37,200.200 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:49:37,231.231 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 00:49:37,232.232 INFO    ] No update needed
[2026-06-12 00:49:37,233.233 INFO    ] Checking for camera pi updates...
[2026-06-12 00:49:37,253.253 INFO    ] 200
[2026-06-12 00:49:37,254.254 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:49:37,280.280 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 00:49:37,327.327 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 00:49:37,328.328 INFO    ] No camera update needed
[2026-06-12 00:49:37,330.330 INFO    ] Script finished. Safe exiting...
[2026-06-12 00:49:37,331.331 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 00:49:37,334.334 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 00:49:37,337.337 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 00:49:39,375.375 INFO    ] ================================================
[2026-06-12 00:49:39,391.391 INFO    ] Launching Daemon at Fri Jun 12 00:49:39 IST 2026
[2026-06-12 00:49:39,402.402 INFO    ] ================================================
[2026-06-12 00:49:39,758.758 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 00:49:39
[2026-06-12 00:49:40,098.098 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 00:49:40,248.248 INFO    ] Initializing speech engine...
[2026-06-12 00:49:40,254.254 INFO    ] 2026-06-12 00:49:40
[2026-06-12 00:49:40,461.461 INFO    ] 2026-06-12 00:49:40
[2026-06-12 00:49:40,489.489 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 00:49:40,675.675 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 00:49:40,684.684 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 00:49:40,829.829 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 00:49:40,883.883 INFO    ] time= 12/06/2026 00:49:40
[2026-06-12 00:49:40,906.906 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 00:49:40,912.912 INFO    ] Checking for existing commands in stream...
[2026-06-12 00:49:40,979.979 INFO    ] No existing commands found in stream
[2026-06-12 00:49:45,999.999 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 00:49:46,003.003 INFO    ] Waiting 2.24 seconds before fallback handling...
[2026-06-12 00:49:48,646.646 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 00:49:48,648.648 INFO    ] Checking for system updates...
[2026-06-12 00:49:48,668.668 INFO    ] 200
[2026-06-12 00:49:48,670.670 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:49:48,700.700 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 00:49:48,702.702 INFO    ] No update needed
[2026-06-12 00:49:48,703.703 INFO    ] Checking for camera pi updates...
[2026-06-12 00:49:48,724.724 INFO    ] 200
[2026-06-12 00:49:48,725.725 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:49:48,748.748 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 00:49:48,799.799 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 00:49:48,800.800 INFO    ] No camera update needed
[2026-06-12 00:49:48,802.802 INFO    ] Script finished. Safe exiting...
[2026-06-12 00:49:48,803.803 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 00:49:48,806.806 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 00:49:48,808.808 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 00:49:50,847.847 INFO    ] ================================================
[2026-06-12 00:49:50,863.863 INFO    ] Launching Daemon at Fri Jun 12 00:49:50 IST 2026
[2026-06-12 00:49:50,874.874 INFO    ] ================================================
[2026-06-12 00:49:51,202.202 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 00:49:51
[2026-06-12 00:49:51,543.543 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 00:49:51,685.685 INFO    ] Initializing speech engine...
[2026-06-12 00:49:51,693.693 INFO    ] 2026-06-12 00:49:51
[2026-06-12 00:49:51,912.912 INFO    ] 2026-06-12 00:49:51
[2026-06-12 00:49:51,940.940 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 00:49:52,128.128 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 00:49:52,138.138 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 00:49:52,244.244 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 00:49:52,246.246 INFO    ] time= 12/06/2026 00:49:52
[2026-06-12 00:49:52,247.247 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 00:49:52,249.249 INFO    ] Checking for existing commands in stream...
[2026-06-12 00:49:52,351.351 INFO    ] No existing commands found in stream
[2026-06-12 00:49:57,380.380 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 00:49:57,383.383 INFO    ] Waiting 2.41 seconds before fallback handling...
[2026-06-12 00:50:00,137.137 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 00:50:00,139.139 INFO    ] Checking for system updates...
[2026-06-12 00:50:00,162.162 INFO    ] 200
[2026-06-12 00:50:00,164.164 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:50:00,197.197 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 00:50:00,198.198 INFO    ] No update needed
[2026-06-12 00:50:00,200.200 INFO    ] Checking for camera pi updates...
[2026-06-12 00:50:00,220.220 INFO    ] 200
[2026-06-12 00:50:00,222.222 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:50:00,246.246 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 00:50:00,290.290 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 00:50:00,292.292 INFO    ] No camera update needed
[2026-06-12 00:50:00,293.293 INFO    ] Script finished. Safe exiting...
[2026-06-12 00:50:00,294.294 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 00:50:00,298.298 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 00:50:00,301.301 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 00:50:02,374.374 INFO    ] ================================================
[2026-06-12 00:50:02,407.407 INFO    ] Launching Daemon at Fri Jun 12 00:50:02 IST 2026
[2026-06-12 00:50:02,425.425 INFO    ] ================================================
[2026-06-12 00:50:02,839.839 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 00:50:02
[2026-06-12 00:50:03,260.260 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 00:50:03,406.406 INFO    ] Initializing speech engine...
[2026-06-12 00:50:03,419.419 INFO    ] 2026-06-12 00:50:03
[2026-06-12 00:50:03,629.629 INFO    ] 2026-06-12 00:50:03
[2026-06-12 00:50:03,658.658 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 00:50:03,781.781 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 00:50:03,845.845 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 00:50:04,039.039 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 00:50:04,072.072 INFO    ] time= 12/06/2026 00:50:04
[2026-06-12 00:50:04,078.078 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 00:50:04,080.080 INFO    ] Checking for existing commands in stream...
[2026-06-12 00:50:04,148.148 INFO    ] No existing commands found in stream
[2026-06-12 00:50:09,177.177 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 00:50:09,181.181 INFO    ] Waiting 3.80 seconds before fallback handling...
[2026-06-12 00:50:13,343.343 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 00:50:13,345.345 INFO    ] Checking for system updates...
[2026-06-12 00:50:13,366.366 INFO    ] 200
[2026-06-12 00:50:13,367.367 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:50:13,399.399 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 00:50:13,401.401 INFO    ] No update needed
[2026-06-12 00:50:13,402.402 INFO    ] Checking for camera pi updates...
[2026-06-12 00:50:13,423.423 INFO    ] 200
[2026-06-12 00:50:13,424.424 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:50:13,449.449 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 00:50:13,489.489 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 00:50:13,491.491 INFO    ] No camera update needed
[2026-06-12 00:50:13,492.492 INFO    ] Script finished. Safe exiting...
[2026-06-12 00:50:13,493.493 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 00:50:13,496.496 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 00:50:13,499.499 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 00:50:15,538.538 INFO    ] ================================================
[2026-06-12 00:50:15,555.555 INFO    ] Launching Daemon at Fri Jun 12 00:50:15 IST 2026
[2026-06-12 00:50:15,565.565 INFO    ] ================================================
[2026-06-12 00:50:15,912.912 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 00:50:15
[2026-06-12 00:50:16,228.228 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 00:50:16,372.372 INFO    ] Initializing speech engine...
[2026-06-12 00:50:16,377.377 INFO    ] 2026-06-12 00:50:16
[2026-06-12 00:50:16,580.580 INFO    ] 2026-06-12 00:50:16
[2026-06-12 00:50:16,609.609 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 00:50:16,793.793 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 00:50:16,802.802 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 00:50:16,928.928 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 00:50:16,980.980 INFO    ] time= 12/06/2026 00:50:16
[2026-06-12 00:50:17,023.023 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 00:50:17,030.030 INFO    ] Checking for existing commands in stream...
[2026-06-12 00:50:17,121.121 INFO    ] No existing commands found in stream
[2026-06-12 00:50:22,130.130 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 00:50:22,133.133 INFO    ] Waiting 0.58 seconds before fallback handling...
[2026-06-12 00:50:23,096.096 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 00:50:23,097.097 INFO    ] Checking for system updates...
[2026-06-12 00:50:23,118.118 INFO    ] 200
[2026-06-12 00:50:23,119.119 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:50:23,152.152 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 00:50:23,153.153 INFO    ] No update needed
[2026-06-12 00:50:23,155.155 INFO    ] Checking for camera pi updates...
[2026-06-12 00:50:23,178.178 INFO    ] 200
[2026-06-12 00:50:23,179.179 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:50:23,204.204 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 00:50:23,246.246 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 00:50:23,248.248 INFO    ] No camera update needed
[2026-06-12 00:50:23,249.249 INFO    ] Script finished. Safe exiting...
[2026-06-12 00:50:23,251.251 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 00:50:23,254.254 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 00:50:23,257.257 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 00:50:25,296.296 INFO    ] ================================================
[2026-06-12 00:50:25,312.312 INFO    ] Launching Daemon at Fri Jun 12 00:50:25 IST 2026
[2026-06-12 00:50:25,323.323 INFO    ] ================================================
[2026-06-12 00:50:25,656.656 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 00:50:25
[2026-06-12 00:50:25,968.968 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 00:50:26,106.106 INFO    ] Initializing speech engine...
[2026-06-12 00:50:26,116.116 INFO    ] 2026-06-12 00:50:26
[2026-06-12 00:50:26,320.320 INFO    ] 2026-06-12 00:50:26
[2026-06-12 00:50:26,350.350 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 00:50:26,539.539 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 00:50:26,549.549 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 00:50:26,694.694 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 00:50:26,750.750 INFO    ] time= 12/06/2026 00:50:26
[2026-06-12 00:50:26,795.795 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 00:50:26,801.801 INFO    ] Checking for existing commands in stream...
[2026-06-12 00:50:26,902.902 INFO    ] No existing commands found in stream
[2026-06-12 00:50:31,912.912 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 00:50:31,914.914 INFO    ] Waiting 1.39 seconds before fallback handling...
[2026-06-12 00:50:33,639.639 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 00:50:33,641.641 INFO    ] Checking for system updates...
[2026-06-12 00:50:33,662.662 INFO    ] 200
[2026-06-12 00:50:33,664.664 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:50:33,694.694 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 00:50:33,695.695 INFO    ] No update needed
[2026-06-12 00:50:33,697.697 INFO    ] Checking for camera pi updates...
[2026-06-12 00:50:33,718.718 INFO    ] 200
[2026-06-12 00:50:33,720.720 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:50:33,743.743 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 00:50:33,784.784 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 00:50:33,786.786 INFO    ] No camera update needed
[2026-06-12 00:50:33,788.788 INFO    ] Script finished. Safe exiting...
[2026-06-12 00:50:33,789.789 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 00:50:33,792.792 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 00:50:33,795.795 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 00:50:35,835.835 INFO    ] ================================================
[2026-06-12 00:50:35,850.850 INFO    ] Launching Daemon at Fri Jun 12 00:50:35 IST 2026
[2026-06-12 00:50:35,861.861 INFO    ] ================================================
[2026-06-12 00:50:36,228.228 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 00:50:36
[2026-06-12 00:50:36,562.562 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 00:50:36,713.713 INFO    ] Initializing speech engine...
[2026-06-12 00:50:36,718.718 INFO    ] 2026-06-12 00:50:36
[2026-06-12 00:50:36,926.926 INFO    ] 2026-06-12 00:50:36
[2026-06-12 00:50:36,955.955 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 00:50:37,140.140 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 00:50:37,149.149 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 00:50:37,272.272 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 00:50:37,339.339 INFO    ] time= 12/06/2026 00:50:37
[2026-06-12 00:50:37,370.370 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 00:50:37,377.377 INFO    ] Checking for existing commands in stream...
[2026-06-12 00:50:37,444.444 INFO    ] No existing commands found in stream
[2026-06-12 00:50:42,458.458 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 00:50:42,461.461 INFO    ] Waiting 1.37 seconds before fallback handling...
[2026-06-12 00:50:44,243.243 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 00:50:44,245.245 INFO    ] Checking for system updates...
[2026-06-12 00:50:44,266.266 INFO    ] 200
[2026-06-12 00:50:44,267.267 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:50:44,299.299 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 00:50:44,301.301 INFO    ] No update needed
[2026-06-12 00:50:44,302.302 INFO    ] Checking for camera pi updates...
[2026-06-12 00:50:44,325.325 INFO    ] 200
[2026-06-12 00:50:44,327.327 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:50:44,354.354 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 00:50:44,403.403 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 00:50:44,404.404 INFO    ] No camera update needed
[2026-06-12 00:50:44,406.406 INFO    ] Script finished. Safe exiting...
[2026-06-12 00:50:44,407.407 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 00:50:44,410.410 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 00:50:44,413.413 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 00:50:46,451.451 INFO    ] ================================================
[2026-06-12 00:50:46,467.467 INFO    ] Launching Daemon at Fri Jun 12 00:50:46 IST 2026
[2026-06-12 00:50:46,478.478 INFO    ] ================================================
[2026-06-12 00:50:46,819.819 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 00:50:46
[2026-06-12 00:50:47,138.138 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 00:50:47,282.282 INFO    ] Initializing speech engine...
[2026-06-12 00:50:47,286.286 INFO    ] 2026-06-12 00:50:47
[2026-06-12 00:50:47,493.493 INFO    ] 2026-06-12 00:50:47
[2026-06-12 00:50:47,522.522 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 00:50:47,705.705 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 00:50:47,708.708 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 00:50:47,840.840 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 00:50:47,898.898 INFO    ] time= 12/06/2026 00:50:47
[2026-06-12 00:50:47,932.932 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 00:50:47,937.937 INFO    ] Checking for existing commands in stream...
[2026-06-12 00:50:48,009.009 INFO    ] No existing commands found in stream
[2026-06-12 00:50:53,018.018 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 00:50:53,021.021 INFO    ] Waiting 3.97 seconds before fallback handling...
[2026-06-12 00:50:57,373.373 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 00:50:57,375.375 INFO    ] Checking for system updates...
[2026-06-12 00:50:57,404.404 INFO    ] 200
[2026-06-12 00:50:57,405.405 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:50:57,442.442 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 00:50:57,443.443 INFO    ] No update needed
[2026-06-12 00:50:57,444.444 INFO    ] Checking for camera pi updates...
[2026-06-12 00:50:57,466.466 INFO    ] 200
[2026-06-12 00:50:57,467.467 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:50:57,491.491 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 00:50:57,532.532 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 00:50:57,533.533 INFO    ] No camera update needed
[2026-06-12 00:50:57,534.534 INFO    ] Script finished. Safe exiting...
[2026-06-12 00:50:57,536.536 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 00:50:57,538.538 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 00:50:57,541.541 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 00:50:59,581.581 INFO    ] ================================================
[2026-06-12 00:50:59,596.596 INFO    ] Launching Daemon at Fri Jun 12 00:50:59 IST 2026
[2026-06-12 00:50:59,607.607 INFO    ] ================================================
[2026-06-12 00:50:59,970.970 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 00:50:59
[2026-06-12 00:51:00,282.282 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 00:51:00,419.419 INFO    ] Initializing speech engine...
[2026-06-12 00:51:00,430.430 INFO    ] 2026-06-12 00:51:00
[2026-06-12 00:51:00,634.634 INFO    ] 2026-06-12 00:51:00
[2026-06-12 00:51:00,663.663 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 00:51:00,847.847 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 00:51:00,857.857 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 00:51:00,993.993 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 00:51:01,055.055 INFO    ] time= 12/06/2026 00:51:01
[2026-06-12 00:51:01,079.079 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 00:51:01,085.085 INFO    ] Checking for existing commands in stream...
[2026-06-12 00:51:01,152.152 INFO    ] No existing commands found in stream
[2026-06-12 00:51:06,167.167 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 00:51:06,170.170 INFO    ] Waiting 2.05 seconds before fallback handling...
[2026-06-12 00:51:08,622.622 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 00:51:08,624.624 INFO    ] Checking for system updates...
[2026-06-12 00:51:08,645.645 INFO    ] 200
[2026-06-12 00:51:08,646.646 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:51:08,678.678 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 00:51:08,679.679 INFO    ] No update needed
[2026-06-12 00:51:08,681.681 INFO    ] Checking for camera pi updates...
[2026-06-12 00:51:08,700.700 INFO    ] 200
[2026-06-12 00:51:08,702.702 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:51:08,725.725 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 00:51:08,766.766 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 00:51:08,767.767 INFO    ] No camera update needed
[2026-06-12 00:51:08,769.769 INFO    ] Script finished. Safe exiting...
[2026-06-12 00:51:08,770.770 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 00:51:08,773.773 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 00:51:08,776.776 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 00:51:10,816.816 INFO    ] ================================================
[2026-06-12 00:51:10,831.831 INFO    ] Launching Daemon at Fri Jun 12 00:51:10 IST 2026
[2026-06-12 00:51:10,842.842 INFO    ] ================================================
[2026-06-12 00:51:11,213.213 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 00:51:11
[2026-06-12 00:51:11,544.544 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 00:51:11,694.694 INFO    ] Initializing speech engine...
[2026-06-12 00:51:11,700.700 INFO    ] 2026-06-12 00:51:11
[2026-06-12 00:51:11,907.907 INFO    ] 2026-06-12 00:51:11
[2026-06-12 00:51:11,936.936 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 00:51:12,070.070 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 00:51:12,123.123 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 00:51:12,262.262 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 00:51:12,316.316 INFO    ] time= 12/06/2026 00:51:12
[2026-06-12 00:51:12,354.354 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 00:51:12,360.360 INFO    ] Checking for existing commands in stream...
[2026-06-12 00:51:12,427.427 INFO    ] No existing commands found in stream
[2026-06-12 00:51:17,436.436 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 00:51:17,440.440 INFO    ] Waiting 0.64 seconds before fallback handling...
[2026-06-12 00:51:18,412.412 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 00:51:18,414.414 INFO    ] Checking for system updates...
[2026-06-12 00:51:18,436.436 INFO    ] 200
[2026-06-12 00:51:18,437.437 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:51:18,472.472 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 00:51:18,474.474 INFO    ] No update needed
[2026-06-12 00:51:18,475.475 INFO    ] Checking for camera pi updates...
[2026-06-12 00:51:18,496.496 INFO    ] 200
[2026-06-12 00:51:18,497.497 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:51:18,523.523 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 00:51:18,658.658 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 00:51:18,660.660 INFO    ] No camera update needed
[2026-06-12 00:51:18,661.661 INFO    ] Script finished. Safe exiting...
[2026-06-12 00:51:18,663.663 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 00:51:18,666.666 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 00:51:18,669.669 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 00:51:20,709.709 INFO    ] ================================================
[2026-06-12 00:51:20,725.725 INFO    ] Launching Daemon at Fri Jun 12 00:51:20 IST 2026
[2026-06-12 00:51:20,736.736 INFO    ] ================================================
[2026-06-12 00:51:21,075.075 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 00:51:21
[2026-06-12 00:51:21,387.387 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 00:51:21,519.519 INFO    ] Initializing speech engine...
[2026-06-12 00:51:21,524.524 INFO    ] 2026-06-12 00:51:21
[2026-06-12 00:51:21,749.749 INFO    ] 2026-06-12 00:51:21
[2026-06-12 00:51:21,779.779 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 00:51:21,975.975 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 00:51:21,978.978 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 00:51:22,124.124 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 00:51:22,192.192 INFO    ] time= 12/06/2026 00:51:22
[2026-06-12 00:51:22,220.220 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 00:51:22,226.226 INFO    ] Checking for existing commands in stream...
[2026-06-12 00:51:22,298.298 INFO    ] No existing commands found in stream
[2026-06-12 00:51:27,307.307 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 00:51:27,310.310 INFO    ] Waiting 3.10 seconds before fallback handling...
[2026-06-12 00:51:30,810.810 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 00:51:30,812.812 INFO    ] Checking for system updates...
[2026-06-12 00:51:30,832.832 INFO    ] 200
[2026-06-12 00:51:30,834.834 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:51:30,864.864 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 00:51:30,865.865 INFO    ] No update needed
[2026-06-12 00:51:30,866.866 INFO    ] Checking for camera pi updates...
[2026-06-12 00:51:30,886.886 INFO    ] 200
[2026-06-12 00:51:30,887.887 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:51:30,910.910 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 00:51:30,951.951 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 00:51:30,952.952 INFO    ] No camera update needed
[2026-06-12 00:51:30,953.953 INFO    ] Script finished. Safe exiting...
[2026-06-12 00:51:30,955.955 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 00:51:30,957.957 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 00:51:30,960.960 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 00:51:32,992.992 INFO    ] ================================================
[2026-06-12 00:51:33,008.008 INFO    ] Launching Daemon at Fri Jun 12 00:51:33 IST 2026
[2026-06-12 00:51:33,018.018 INFO    ] ================================================
[2026-06-12 00:51:33,344.344 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 00:51:33
[2026-06-12 00:51:33,655.655 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 00:51:33,787.787 INFO    ] Initializing speech engine...
[2026-06-12 00:51:33,792.792 INFO    ] 2026-06-12 00:51:33
[2026-06-12 00:51:34,019.019 INFO    ] 2026-06-12 00:51:33
[2026-06-12 00:51:34,050.050 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 00:51:34,246.246 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 00:51:34,256.256 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 00:51:34,389.389 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 00:51:34,445.445 INFO    ] time= 12/06/2026 00:51:34
[2026-06-12 00:51:34,473.473 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 00:51:34,496.496 INFO    ] Checking for existing commands in stream...
[2026-06-12 00:51:34,572.572 INFO    ] No existing commands found in stream
[2026-06-12 00:51:39,580.580 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 00:51:39,582.582 INFO    ] Waiting 3.54 seconds before fallback handling...
[2026-06-12 00:51:43,513.513 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 00:51:43,515.515 INFO    ] Checking for system updates...
[2026-06-12 00:51:43,537.537 INFO    ] 200
[2026-06-12 00:51:43,538.538 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:51:43,570.570 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 00:51:43,571.571 INFO    ] No update needed
[2026-06-12 00:51:43,573.573 INFO    ] Checking for camera pi updates...
[2026-06-12 00:51:43,593.593 INFO    ] 200
[2026-06-12 00:51:43,594.594 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:51:43,618.618 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 00:51:43,659.659 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 00:51:43,661.661 INFO    ] No camera update needed
[2026-06-12 00:51:43,662.662 INFO    ] Script finished. Safe exiting...
[2026-06-12 00:51:43,663.663 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 00:51:43,667.667 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 00:51:43,670.670 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 00:51:45,709.709 INFO    ] ================================================
[2026-06-12 00:51:45,725.725 INFO    ] Launching Daemon at Fri Jun 12 00:51:45 IST 2026
[2026-06-12 00:51:45,735.735 INFO    ] ================================================
[2026-06-12 00:51:46,086.086 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 00:51:46
[2026-06-12 00:51:46,402.402 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 00:51:46,541.541 INFO    ] Initializing speech engine...
[2026-06-12 00:51:46,551.551 INFO    ] 2026-06-12 00:51:46
[2026-06-12 00:51:46,754.754 INFO    ] 2026-06-12 00:51:46
[2026-06-12 00:51:46,783.783 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 00:51:46,967.967 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 00:51:46,975.975 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 00:51:47,097.097 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 00:51:47,147.147 INFO    ] time= 12/06/2026 00:51:47
[2026-06-12 00:51:47,195.195 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 00:51:47,197.197 INFO    ] Checking for existing commands in stream...
[2026-06-12 00:51:47,291.291 INFO    ] No existing commands found in stream
[2026-06-12 00:51:52,300.300 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 00:51:52,303.303 INFO    ] Waiting 0.23 seconds before fallback handling...
[2026-06-12 00:51:52,908.908 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 00:51:52,910.910 INFO    ] Checking for system updates...
[2026-06-12 00:51:52,931.931 INFO    ] 200
[2026-06-12 00:51:52,932.932 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:51:52,967.967 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 00:51:52,969.969 INFO    ] No update needed
[2026-06-12 00:51:52,970.970 INFO    ] Checking for camera pi updates...
[2026-06-12 00:51:52,989.989 INFO    ] 200
[2026-06-12 00:51:52,990.990 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:51:53,018.018 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 00:51:53,070.070 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 00:51:53,071.071 INFO    ] No camera update needed
[2026-06-12 00:51:53,073.073 INFO    ] Script finished. Safe exiting...
[2026-06-12 00:51:53,074.074 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 00:51:53,077.077 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 00:51:53,079.079 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 00:51:55,120.120 INFO    ] ================================================
[2026-06-12 00:51:55,136.136 INFO    ] Launching Daemon at Fri Jun 12 00:51:55 IST 2026
[2026-06-12 00:51:55,147.147 INFO    ] ================================================
[2026-06-12 00:51:55,473.473 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 00:51:55
[2026-06-12 00:51:55,784.784 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 00:51:55,921.921 INFO    ] Initializing speech engine...
[2026-06-12 00:51:55,930.930 INFO    ] 2026-06-12 00:51:55
[2026-06-12 00:51:56,134.134 INFO    ] 2026-06-12 00:51:56
[2026-06-12 00:51:56,163.163 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 00:51:56,347.347 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 00:51:56,355.355 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 00:51:56,484.484 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 00:51:56,551.551 INFO    ] time= 12/06/2026 00:51:56
[2026-06-12 00:51:56,575.575 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 00:51:56,581.581 INFO    ] Checking for existing commands in stream...
[2026-06-12 00:51:56,646.646 INFO    ] No existing commands found in stream
[2026-06-12 00:52:01,652.652 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 00:52:01,655.655 INFO    ] Waiting 1.57 seconds before fallback handling...
[2026-06-12 00:52:03,592.592 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 00:52:03,593.593 INFO    ] Checking for system updates...
[2026-06-12 00:52:03,614.614 INFO    ] 200
[2026-06-12 00:52:03,615.615 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:52:03,648.648 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 00:52:03,649.649 INFO    ] No update needed
[2026-06-12 00:52:03,650.650 INFO    ] Checking for camera pi updates...
[2026-06-12 00:52:03,670.670 INFO    ] 200
[2026-06-12 00:52:03,671.671 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:52:03,695.695 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 00:52:03,744.744 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 00:52:03,745.745 INFO    ] No camera update needed
[2026-06-12 00:52:03,747.747 INFO    ] Script finished. Safe exiting...
[2026-06-12 00:52:03,748.748 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 00:52:03,751.751 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 00:52:03,754.754 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 00:52:05,793.793 INFO    ] ================================================
[2026-06-12 00:52:05,808.808 INFO    ] Launching Daemon at Fri Jun 12 00:52:05 IST 2026
[2026-06-12 00:52:05,819.819 INFO    ] ================================================
[2026-06-12 00:52:06,193.193 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 00:52:06
[2026-06-12 00:52:06,508.508 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 00:52:06,651.651 INFO    ] Initializing speech engine...
[2026-06-12 00:52:06,656.656 INFO    ] 2026-06-12 00:52:06
[2026-06-12 00:52:06,862.862 INFO    ] 2026-06-12 00:52:06
[2026-06-12 00:52:06,890.890 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 00:52:07,074.074 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 00:52:07,085.085 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 00:52:07,215.215 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 00:52:07,277.277 INFO    ] time= 12/06/2026 00:52:07
[2026-06-12 00:52:07,301.301 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 00:52:07,306.306 INFO    ] Checking for existing commands in stream...
[2026-06-12 00:52:07,373.373 INFO    ] No existing commands found in stream
[2026-06-12 00:52:12,382.382 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 00:52:12,385.385 INFO    ] Waiting 1.92 seconds before fallback handling...
[2026-06-12 00:52:14,668.668 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 00:52:14,670.670 INFO    ] Checking for system updates...
[2026-06-12 00:52:14,691.691 INFO    ] 200
[2026-06-12 00:52:14,692.692 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:52:14,725.725 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 00:52:14,726.726 INFO    ] No update needed
[2026-06-12 00:52:14,727.727 INFO    ] Checking for camera pi updates...
[2026-06-12 00:52:14,748.748 INFO    ] 200
[2026-06-12 00:52:14,749.749 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:52:14,773.773 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 00:52:14,817.817 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 00:52:14,819.819 INFO    ] No camera update needed
[2026-06-12 00:52:14,820.820 INFO    ] Script finished. Safe exiting...
[2026-06-12 00:52:14,822.822 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 00:52:14,825.825 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 00:52:14,828.828 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 00:52:16,867.867 INFO    ] ================================================
[2026-06-12 00:52:16,883.883 INFO    ] Launching Daemon at Fri Jun 12 00:52:16 IST 2026
[2026-06-12 00:52:16,893.893 INFO    ] ================================================
[2026-06-12 00:52:17,260.260 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 00:52:17
[2026-06-12 00:52:17,570.570 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 00:52:17,702.702 INFO    ] Initializing speech engine...
[2026-06-12 00:52:17,710.710 INFO    ] 2026-06-12 00:52:17
[2026-06-12 00:52:17,922.922 INFO    ] 2026-06-12 00:52:17
[2026-06-12 00:52:17,951.951 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 00:52:18,133.133 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 00:52:18,143.143 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 00:52:18,273.273 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 00:52:18,339.339 INFO    ] time= 12/06/2026 00:52:18
[2026-06-12 00:52:18,363.363 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 00:52:18,369.369 INFO    ] Checking for existing commands in stream...
[2026-06-12 00:52:18,460.460 INFO    ] No existing commands found in stream
[2026-06-12 00:52:23,474.474 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 00:52:23,477.477 INFO    ] Waiting 1.14 seconds before fallback handling...
[2026-06-12 00:52:25,022.022 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 00:52:25,024.024 INFO    ] Checking for system updates...
[2026-06-12 00:52:25,046.046 INFO    ] 200
[2026-06-12 00:52:25,047.047 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:52:25,081.081 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 00:52:25,082.082 INFO    ] No update needed
[2026-06-12 00:52:25,083.083 INFO    ] Checking for camera pi updates...
[2026-06-12 00:52:25,105.105 INFO    ] 200
[2026-06-12 00:52:25,106.106 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:52:25,133.133 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 00:52:25,182.182 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 00:52:25,183.183 INFO    ] No camera update needed
[2026-06-12 00:52:25,185.185 INFO    ] Script finished. Safe exiting...
[2026-06-12 00:52:25,186.186 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 00:52:25,189.189 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 00:52:25,192.192 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 00:52:27,233.233 INFO    ] ================================================
[2026-06-12 00:52:27,249.249 INFO    ] Launching Daemon at Fri Jun 12 00:52:27 IST 2026
[2026-06-12 00:52:27,261.261 INFO    ] ================================================
[2026-06-12 00:52:27,579.579 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 00:52:27
[2026-06-12 00:52:27,892.892 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 00:52:28,035.035 INFO    ] Initializing speech engine...
[2026-06-12 00:52:28,040.040 INFO    ] 2026-06-12 00:52:28
[2026-06-12 00:52:28,245.245 INFO    ] 2026-06-12 00:52:28
[2026-06-12 00:52:28,274.274 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 00:52:28,454.454 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 00:52:28,456.456 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 00:52:28,604.604 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 00:52:28,666.666 INFO    ] time= 12/06/2026 00:52:28
[2026-06-12 00:52:28,689.689 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 00:52:28,713.713 INFO    ] Checking for existing commands in stream...
[2026-06-12 00:52:28,815.815 INFO    ] No existing commands found in stream
[2026-06-12 00:52:33,824.824 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 00:52:33,827.827 INFO    ] Waiting 2.94 seconds before fallback handling...
[2026-06-12 00:52:37,141.141 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 00:52:37,142.142 INFO    ] Checking for system updates...
[2026-06-12 00:52:37,163.163 INFO    ] 200
[2026-06-12 00:52:37,164.164 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:52:37,195.195 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 00:52:37,196.196 INFO    ] No update needed
[2026-06-12 00:52:37,197.197 INFO    ] Checking for camera pi updates...
[2026-06-12 00:52:37,218.218 INFO    ] 200
[2026-06-12 00:52:37,219.219 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:52:37,244.244 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 00:52:37,293.293 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 00:52:37,295.295 INFO    ] No camera update needed
[2026-06-12 00:52:37,296.296 INFO    ] Script finished. Safe exiting...
[2026-06-12 00:52:37,297.297 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 00:52:37,300.300 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 00:52:37,303.303 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 00:52:39,333.333 INFO    ] ================================================
[2026-06-12 00:52:39,342.342 INFO    ] Launching Daemon at Fri Jun 12 00:52:39 IST 2026
[2026-06-12 00:52:39,348.348 INFO    ] ================================================
[2026-06-12 00:52:39,683.683 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 00:52:39
[2026-06-12 00:52:40,023.023 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 00:52:40,181.181 INFO    ] Initializing speech engine...
[2026-06-12 00:52:40,186.186 INFO    ] 2026-06-12 00:52:40
[2026-06-12 00:52:40,394.394 INFO    ] 2026-06-12 00:52:40
[2026-06-12 00:52:40,423.423 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 00:52:40,556.556 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 00:52:40,609.609 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 00:52:40,757.757 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 00:52:40,815.815 INFO    ] time= 12/06/2026 00:52:40
[2026-06-12 00:52:40,837.837 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 00:52:40,844.844 INFO    ] Checking for existing commands in stream...
[2026-06-12 00:52:40,909.909 INFO    ] No existing commands found in stream
[2026-06-12 00:52:45,919.919 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 00:52:45,920.920 INFO    ] Waiting 1.53 seconds before fallback handling...
[2026-06-12 00:52:47,799.799 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 00:52:47,801.801 INFO    ] Checking for system updates...
[2026-06-12 00:52:47,833.833 INFO    ] 200
[2026-06-12 00:52:47,834.834 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:52:47,876.876 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 00:52:47,878.878 INFO    ] No update needed
[2026-06-12 00:52:47,880.880 INFO    ] Checking for camera pi updates...
[2026-06-12 00:52:47,907.907 INFO    ] 200
[2026-06-12 00:52:47,909.909 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:52:47,941.941 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 00:52:47,980.980 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 00:52:47,982.982 INFO    ] No camera update needed
[2026-06-12 00:52:47,983.983 INFO    ] Script finished. Safe exiting...
[2026-06-12 00:52:47,984.984 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 00:52:47,987.987 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 00:52:47,990.990 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 00:52:50,021.021 INFO    ] ================================================
[2026-06-12 00:52:50,038.038 INFO    ] Launching Daemon at Fri Jun 12 00:52:50 IST 2026
[2026-06-12 00:52:50,049.049 INFO    ] ================================================
[2026-06-12 00:52:50,429.429 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 00:52:50
[2026-06-12 00:52:50,768.768 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 00:52:50,921.921 INFO    ] Initializing speech engine...
[2026-06-12 00:52:50,927.927 INFO    ] 2026-06-12 00:52:50
[2026-06-12 00:52:51,137.137 INFO    ] 2026-06-12 00:52:51
[2026-06-12 00:52:51,166.166 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 00:52:51,345.345 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 00:52:51,346.346 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 00:52:51,490.490 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 00:52:51,547.547 INFO    ] time= 12/06/2026 00:52:51
[2026-06-12 00:52:51,593.593 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 00:52:51,617.617 INFO    ] Checking for existing commands in stream...
[2026-06-12 00:52:51,712.712 INFO    ] No existing commands found in stream
[2026-06-12 00:52:56,723.723 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 00:52:56,726.726 INFO    ] Waiting 3.46 seconds before fallback handling...
[2026-06-12 00:53:00,558.558 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 00:53:00,560.560 INFO    ] Checking for system updates...
[2026-06-12 00:53:00,581.581 INFO    ] 200
[2026-06-12 00:53:00,583.583 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:53:00,615.615 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 00:53:00,616.616 INFO    ] No update needed
[2026-06-12 00:53:00,618.618 INFO    ] Checking for camera pi updates...
[2026-06-12 00:53:00,637.637 INFO    ] 200
[2026-06-12 00:53:00,638.638 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:53:00,662.662 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 00:53:00,704.704 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 00:53:00,705.705 INFO    ] No camera update needed
[2026-06-12 00:53:00,707.707 INFO    ] Script finished. Safe exiting...
[2026-06-12 00:53:00,708.708 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 00:53:00,711.711 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 00:53:00,714.714 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 00:53:02,747.747 INFO    ] ================================================
[2026-06-12 00:53:02,760.760 INFO    ] Launching Daemon at Fri Jun 12 00:53:02 IST 2026
[2026-06-12 00:53:02,767.767 INFO    ] ================================================
[2026-06-12 00:53:03,118.118 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 00:53:03
[2026-06-12 00:53:03,430.430 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 00:53:03,560.560 INFO    ] Initializing speech engine...
[2026-06-12 00:53:03,568.568 INFO    ] 2026-06-12 00:53:03
[2026-06-12 00:53:03,780.780 INFO    ] 2026-06-12 00:53:03
[2026-06-12 00:53:03,808.808 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 00:53:03,961.961 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 00:53:03,993.993 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 00:53:04,127.127 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 00:53:04,190.190 INFO    ] time= 12/06/2026 00:53:04
[2026-06-12 00:53:04,222.222 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 00:53:04,228.228 INFO    ] Checking for existing commands in stream...
[2026-06-12 00:53:04,296.296 INFO    ] No existing commands found in stream
[2026-06-12 00:53:09,304.304 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 00:53:09,307.307 INFO    ] Waiting 3.53 seconds before fallback handling...
[2026-06-12 00:53:13,246.246 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 00:53:13,247.247 INFO    ] Checking for system updates...
[2026-06-12 00:53:13,271.271 INFO    ] 200
[2026-06-12 00:53:13,272.272 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:53:13,306.306 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 00:53:13,307.307 INFO    ] No update needed
[2026-06-12 00:53:13,309.309 INFO    ] Checking for camera pi updates...
[2026-06-12 00:53:13,330.330 INFO    ] 200
[2026-06-12 00:53:13,332.332 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:53:13,356.356 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 00:53:13,399.399 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 00:53:13,400.400 INFO    ] No camera update needed
[2026-06-12 00:53:13,402.402 INFO    ] Script finished. Safe exiting...
[2026-06-12 00:53:13,403.403 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 00:53:13,406.406 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 00:53:13,409.409 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 00:53:15,451.451 INFO    ] ================================================
[2026-06-12 00:53:15,466.466 INFO    ] Launching Daemon at Fri Jun 12 00:53:15 IST 2026
[2026-06-12 00:53:15,478.478 INFO    ] ================================================
[2026-06-12 00:53:15,812.812 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 00:53:15
[2026-06-12 00:53:16,141.141 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 00:53:16,286.286 INFO    ] Initializing speech engine...
[2026-06-12 00:53:16,290.290 INFO    ] 2026-06-12 00:53:16
[2026-06-12 00:53:16,492.492 INFO    ] 2026-06-12 00:53:16
[2026-06-12 00:53:16,537.537 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 00:53:16,694.694 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 00:53:16,727.727 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 00:53:16,887.887 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 00:53:16,931.931 INFO    ] time= 12/06/2026 00:53:16
[2026-06-12 00:53:16,996.996 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 00:53:17,029.029 INFO    ] Checking for existing commands in stream...
[2026-06-12 00:53:17,123.123 INFO    ] No existing commands found in stream
[2026-06-12 00:53:22,147.147 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 00:53:22,150.150 INFO    ] Waiting 0.65 seconds before fallback handling...
[2026-06-12 00:53:23,145.145 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 00:53:23,146.146 INFO    ] Checking for system updates...
[2026-06-12 00:53:23,167.167 INFO    ] 200
[2026-06-12 00:53:23,168.168 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:53:23,199.199 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 00:53:23,200.200 INFO    ] No update needed
[2026-06-12 00:53:23,202.202 INFO    ] Checking for camera pi updates...
[2026-06-12 00:53:23,221.221 INFO    ] 200
[2026-06-12 00:53:23,222.222 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:53:23,246.246 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 00:53:23,388.388 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 00:53:23,389.389 INFO    ] No camera update needed
[2026-06-12 00:53:23,391.391 INFO    ] Script finished. Safe exiting...
[2026-06-12 00:53:23,392.392 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 00:53:23,395.395 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 00:53:23,398.398 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 00:53:25,436.436 INFO    ] ================================================
[2026-06-12 00:53:25,451.451 INFO    ] Launching Daemon at Fri Jun 12 00:53:25 IST 2026
[2026-06-12 00:53:25,463.463 INFO    ] ================================================
[2026-06-12 00:53:25,823.823 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 00:53:25
[2026-06-12 00:53:26,134.134 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 00:53:26,268.268 INFO    ] Initializing speech engine...
[2026-06-12 00:53:26,276.276 INFO    ] 2026-06-12 00:53:26
[2026-06-12 00:53:26,489.489 INFO    ] 2026-06-12 00:53:26
[2026-06-12 00:53:26,517.517 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 00:53:26,702.702 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 00:53:26,706.706 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 00:53:26,839.839 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 00:53:26,902.902 INFO    ] time= 12/06/2026 00:53:26
[2026-06-12 00:53:26,935.935 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 00:53:26,941.941 INFO    ] Checking for existing commands in stream...
[2026-06-12 00:53:27,011.011 INFO    ] No existing commands found in stream
[2026-06-12 00:53:32,021.021 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 00:53:32,024.024 INFO    ] Waiting 1.36 seconds before fallback handling...
[2026-06-12 00:53:33,750.750 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 00:53:33,751.751 INFO    ] Checking for system updates...
[2026-06-12 00:53:33,772.772 INFO    ] 200
[2026-06-12 00:53:33,773.773 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:53:33,804.804 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 00:53:33,805.805 INFO    ] No update needed
[2026-06-12 00:53:33,806.806 INFO    ] Checking for camera pi updates...
[2026-06-12 00:53:33,825.825 INFO    ] 200
[2026-06-12 00:53:33,827.827 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:53:33,850.850 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 00:53:33,898.898 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 00:53:33,899.899 INFO    ] No camera update needed
[2026-06-12 00:53:33,901.901 INFO    ] Script finished. Safe exiting...
[2026-06-12 00:53:33,902.902 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 00:53:33,905.905 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 00:53:33,908.908 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 00:53:35,948.948 INFO    ] ================================================
[2026-06-12 00:53:35,964.964 INFO    ] Launching Daemon at Fri Jun 12 00:53:35 IST 2026
[2026-06-12 00:53:35,976.976 INFO    ] ================================================
[2026-06-12 00:53:36,323.323 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 00:53:36
[2026-06-12 00:53:36,639.639 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 00:53:36,781.781 INFO    ] Initializing speech engine...
[2026-06-12 00:53:36,786.786 INFO    ] 2026-06-12 00:53:36
[2026-06-12 00:53:36,989.989 INFO    ] 2026-06-12 00:53:36
[2026-06-12 00:53:37,018.018 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 00:53:37,155.155 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 00:53:37,203.203 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 00:53:37,346.346 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 00:53:37,408.408 INFO    ] time= 12/06/2026 00:53:37
[2026-06-12 00:53:37,431.431 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 00:53:37,438.438 INFO    ] Checking for existing commands in stream...
[2026-06-12 00:53:37,504.504 INFO    ] No existing commands found in stream
[2026-06-12 00:53:42,513.513 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 00:53:42,516.516 INFO    ] Waiting 3.68 seconds before fallback handling...
[2026-06-12 00:53:46,572.572 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 00:53:46,574.574 INFO    ] Checking for system updates...
[2026-06-12 00:53:46,595.595 INFO    ] 200
[2026-06-12 00:53:46,596.596 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:53:46,630.630 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 00:53:46,631.631 INFO    ] No update needed
[2026-06-12 00:53:46,633.633 INFO    ] Checking for camera pi updates...
[2026-06-12 00:53:46,654.654 INFO    ] 200
[2026-06-12 00:53:46,655.655 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:53:46,683.683 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 00:53:46,737.737 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 00:53:46,739.739 INFO    ] No camera update needed
[2026-06-12 00:53:46,740.740 INFO    ] Script finished. Safe exiting...
[2026-06-12 00:53:46,742.742 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 00:53:46,745.745 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 00:53:46,748.748 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 00:53:48,787.787 INFO    ] ================================================
[2026-06-12 00:53:48,803.803 INFO    ] Launching Daemon at Fri Jun 12 00:53:48 IST 2026
[2026-06-12 00:53:48,814.814 INFO    ] ================================================
[2026-06-12 00:53:49,169.169 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 00:53:49
[2026-06-12 00:53:49,507.507 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 00:53:49,659.659 INFO    ] Initializing speech engine...
[2026-06-12 00:53:49,664.664 INFO    ] 2026-06-12 00:53:49
[2026-06-12 00:53:49,874.874 INFO    ] 2026-06-12 00:53:49
[2026-06-12 00:53:49,904.904 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 00:53:50,089.089 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 00:53:50,093.093 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 00:53:50,247.247 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 00:53:50,302.302 INFO    ] time= 12/06/2026 00:53:50
[2026-06-12 00:53:50,324.324 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 00:53:50,331.331 INFO    ] Checking for existing commands in stream...
[2026-06-12 00:53:50,399.399 INFO    ] No existing commands found in stream
[2026-06-12 00:53:55,433.433 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 00:53:55,436.436 INFO    ] Waiting 2.52 seconds before fallback handling...
[2026-06-12 00:53:58,349.349 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 00:53:58,351.351 INFO    ] Checking for system updates...
[2026-06-12 00:53:58,373.373 INFO    ] 200
[2026-06-12 00:53:58,375.375 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:53:58,408.408 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 00:53:58,410.410 INFO    ] No update needed
[2026-06-12 00:53:58,411.411 INFO    ] Checking for camera pi updates...
[2026-06-12 00:53:58,432.432 INFO    ] 200
[2026-06-12 00:53:58,433.433 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:53:58,457.457 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 00:53:58,509.509 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 00:53:58,510.510 INFO    ] No camera update needed
[2026-06-12 00:53:58,512.512 INFO    ] Script finished. Safe exiting...
[2026-06-12 00:53:58,513.513 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 00:53:58,516.516 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 00:53:58,519.519 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 00:54:00,550.550 INFO    ] ================================================
[2026-06-12 00:54:00,559.559 INFO    ] Launching Daemon at Fri Jun 12 00:54:00 IST 2026
[2026-06-12 00:54:00,565.565 INFO    ] ================================================
[2026-06-12 00:54:00,866.866 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 00:54:00
[2026-06-12 00:54:01,183.183 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 00:54:01,506.506 INFO    ] Initializing speech engine...
[2026-06-12 00:54:01,512.512 INFO    ] 2026-06-12 00:54:01
[2026-06-12 00:54:01,777.777 INFO    ] 2026-06-12 00:54:01
[2026-06-12 00:54:01,822.822 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 00:54:02,009.009 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 00:54:02,034.034 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 00:54:02,180.180 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 00:54:02,253.253 INFO    ] time= 12/06/2026 00:54:02
[2026-06-12 00:54:02,285.285 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 00:54:02,292.292 INFO    ] Checking for existing commands in stream...
[2026-06-12 00:54:02,361.361 INFO    ] No existing commands found in stream
[2026-06-12 00:54:07,371.371 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 00:54:07,374.374 INFO    ] Waiting 3.83 seconds before fallback handling...
[2026-06-12 00:54:11,610.610 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 00:54:11,612.612 INFO    ] Checking for system updates...
[2026-06-12 00:54:11,633.633 INFO    ] 200
[2026-06-12 00:54:11,634.634 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:54:11,664.664 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 00:54:11,666.666 INFO    ] No update needed
[2026-06-12 00:54:11,667.667 INFO    ] Checking for camera pi updates...
[2026-06-12 00:54:11,687.687 INFO    ] 200
[2026-06-12 00:54:11,688.688 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:54:11,714.714 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 00:54:11,742.742 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 00:54:11,744.744 INFO    ] No camera update needed
[2026-06-12 00:54:11,745.745 INFO    ] Script finished. Safe exiting...
[2026-06-12 00:54:11,746.746 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 00:54:11,750.750 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 00:54:11,753.753 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 00:54:13,792.792 INFO    ] ================================================
[2026-06-12 00:54:13,808.808 INFO    ] Launching Daemon at Fri Jun 12 00:54:13 IST 2026
[2026-06-12 00:54:13,819.819 INFO    ] ================================================
[2026-06-12 00:54:14,175.175 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 00:54:14
[2026-06-12 00:54:14,489.489 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 00:54:14,622.622 INFO    ] Initializing speech engine...
[2026-06-12 00:54:14,627.627 INFO    ] 2026-06-12 00:54:14
[2026-06-12 00:54:14,853.853 INFO    ] 2026-06-12 00:54:14
[2026-06-12 00:54:14,884.884 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 00:54:15,080.080 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 00:54:15,084.084 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 00:54:15,222.222 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 00:54:15,273.273 INFO    ] time= 12/06/2026 00:54:15
[2026-06-12 00:54:15,306.306 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 00:54:15,329.329 INFO    ] Checking for existing commands in stream...
[2026-06-12 00:54:15,403.403 INFO    ] No existing commands found in stream
[2026-06-12 00:54:20,414.414 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 00:54:20,416.416 INFO    ] Waiting 2.32 seconds before fallback handling...
[2026-06-12 00:54:23,122.122 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 00:54:23,124.124 INFO    ] Checking for system updates...
[2026-06-12 00:54:23,145.145 INFO    ] 200
[2026-06-12 00:54:23,147.147 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:54:23,189.189 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 00:54:23,190.190 INFO    ] No update needed
[2026-06-12 00:54:23,192.192 INFO    ] Checking for camera pi updates...
[2026-06-12 00:54:23,212.212 INFO    ] 200
[2026-06-12 00:54:23,213.213 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:54:23,236.236 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 00:54:23,278.278 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 00:54:23,279.279 INFO    ] No camera update needed
[2026-06-12 00:54:23,281.281 INFO    ] Script finished. Safe exiting...
[2026-06-12 00:54:23,282.282 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 00:54:23,285.285 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 00:54:23,288.288 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 00:54:25,326.326 INFO    ] ================================================
[2026-06-12 00:54:25,342.342 INFO    ] Launching Daemon at Fri Jun 12 00:54:25 IST 2026
[2026-06-12 00:54:25,353.353 INFO    ] ================================================
[2026-06-12 00:54:25,684.684 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 00:54:25
[2026-06-12 00:54:26,000.000 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 00:54:26,131.131 INFO    ] Initializing speech engine...
[2026-06-12 00:54:26,135.135 INFO    ] 2026-06-12 00:54:26
[2026-06-12 00:54:26,351.351 INFO    ] 2026-06-12 00:54:26
[2026-06-12 00:54:26,380.380 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 00:54:26,564.564 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 00:54:26,574.574 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 00:54:26,701.701 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 00:54:26,757.757 INFO    ] time= 12/06/2026 00:54:26
[2026-06-12 00:54:26,786.786 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 00:54:26,796.796 INFO    ] Checking for existing commands in stream...
[2026-06-12 00:54:26,868.868 INFO    ] No existing commands found in stream
[2026-06-12 00:54:31,881.881 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 00:54:31,882.882 INFO    ] Waiting 3.42 seconds before fallback handling...
[2026-06-12 00:54:35,674.674 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 00:54:35,675.675 INFO    ] Checking for system updates...
[2026-06-12 00:54:35,696.696 INFO    ] 200
[2026-06-12 00:54:35,697.697 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:54:35,727.727 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 00:54:35,729.729 INFO    ] No update needed
[2026-06-12 00:54:35,730.730 INFO    ] Checking for camera pi updates...
[2026-06-12 00:54:35,751.751 INFO    ] 200
[2026-06-12 00:54:35,752.752 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:54:35,775.775 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 00:54:35,815.815 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 00:54:35,817.817 INFO    ] No camera update needed
[2026-06-12 00:54:35,818.818 INFO    ] Script finished. Safe exiting...
[2026-06-12 00:54:35,819.819 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 00:54:35,822.822 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 00:54:35,825.825 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 00:54:37,865.865 INFO    ] ================================================
[2026-06-12 00:54:37,881.881 INFO    ] Launching Daemon at Fri Jun 12 00:54:37 IST 2026
[2026-06-12 00:54:37,892.892 INFO    ] ================================================
[2026-06-12 00:54:38,263.263 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 00:54:38
[2026-06-12 00:54:38,598.598 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 00:54:38,749.749 INFO    ] Initializing speech engine...
[2026-06-12 00:54:38,755.755 INFO    ] 2026-06-12 00:54:38
[2026-06-12 00:54:38,962.962 INFO    ] 2026-06-12 00:54:38
[2026-06-12 00:54:38,991.991 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 00:54:39,179.179 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 00:54:39,189.189 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 00:54:39,317.317 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 00:54:39,380.380 INFO    ] time= 12/06/2026 00:54:39
[2026-06-12 00:54:39,411.411 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 00:54:39,416.416 INFO    ] Checking for existing commands in stream...
[2026-06-12 00:54:39,490.490 INFO    ] No existing commands found in stream
[2026-06-12 00:54:44,514.514 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 00:54:44,517.517 INFO    ] Waiting 1.08 seconds before fallback handling...
[2026-06-12 00:54:45,960.960 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 00:54:45,962.962 INFO    ] Checking for system updates...
[2026-06-12 00:54:45,982.982 INFO    ] 200
[2026-06-12 00:54:45,984.984 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:54:46,014.014 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 00:54:46,015.015 INFO    ] No update needed
[2026-06-12 00:54:46,016.016 INFO    ] Checking for camera pi updates...
[2026-06-12 00:54:46,037.037 INFO    ] 200
[2026-06-12 00:54:46,039.039 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:54:46,062.062 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 00:54:46,105.105 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 00:54:46,106.106 INFO    ] No camera update needed
[2026-06-12 00:54:46,107.107 INFO    ] Script finished. Safe exiting...
[2026-06-12 00:54:46,109.109 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 00:54:46,112.112 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 00:54:46,114.114 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 00:54:48,152.152 INFO    ] ================================================
[2026-06-12 00:54:48,168.168 INFO    ] Launching Daemon at Fri Jun 12 00:54:48 IST 2026
[2026-06-12 00:54:48,179.179 INFO    ] ================================================
[2026-06-12 00:54:48,536.536 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 00:54:48
[2026-06-12 00:54:48,847.847 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 00:54:48,984.984 INFO    ] Initializing speech engine...
[2026-06-12 00:54:48,992.992 INFO    ] 2026-06-12 00:54:48
[2026-06-12 00:54:49,199.199 INFO    ] 2026-06-12 00:54:49
[2026-06-12 00:54:49,228.228 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 00:54:49,414.414 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 00:54:49,423.423 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 00:54:49,555.555 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 00:54:49,623.623 INFO    ] time= 12/06/2026 00:54:49
[2026-06-12 00:54:49,647.647 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 00:54:49,653.653 INFO    ] Checking for existing commands in stream...
[2026-06-12 00:54:49,721.721 INFO    ] No existing commands found in stream
[2026-06-12 00:54:54,735.735 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 00:54:54,737.737 INFO    ] Waiting 1.07 seconds before fallback handling...
[2026-06-12 00:54:56,142.142 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 00:54:56,144.144 INFO    ] Checking for system updates...
[2026-06-12 00:54:56,165.165 INFO    ] 200
[2026-06-12 00:54:56,166.166 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:54:56,198.198 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 00:54:56,200.200 INFO    ] No update needed
[2026-06-12 00:54:56,201.201 INFO    ] Checking for camera pi updates...
[2026-06-12 00:54:56,220.220 INFO    ] 200
[2026-06-12 00:54:56,222.222 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:54:56,246.246 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 00:54:56,291.291 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 00:54:56,292.292 INFO    ] No camera update needed
[2026-06-12 00:54:56,293.293 INFO    ] Script finished. Safe exiting...
[2026-06-12 00:54:56,294.294 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 00:54:56,297.297 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 00:54:56,300.300 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 00:54:58,340.340 INFO    ] ================================================
[2026-06-12 00:54:58,356.356 INFO    ] Launching Daemon at Fri Jun 12 00:54:58 IST 2026
[2026-06-12 00:54:58,367.367 INFO    ] ================================================
[2026-06-12 00:54:58,706.706 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 00:54:58
[2026-06-12 00:54:59,016.016 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 00:54:59,144.144 INFO    ] Initializing speech engine...
[2026-06-12 00:54:59,149.149 INFO    ] 2026-06-12 00:54:59
[2026-06-12 00:54:59,366.366 INFO    ] 2026-06-12 00:54:59
[2026-06-12 00:54:59,396.396 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 00:54:59,579.579 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 00:54:59,583.583 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 00:54:59,721.721 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 00:54:59,785.785 INFO    ] time= 12/06/2026 00:54:59
[2026-06-12 00:54:59,812.812 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 00:54:59,819.819 INFO    ] Checking for existing commands in stream...
[2026-06-12 00:54:59,886.886 INFO    ] No existing commands found in stream
[2026-06-12 00:55:04,895.895 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 00:55:04,898.898 INFO    ] Waiting 4.00 seconds before fallback handling...
[2026-06-12 00:55:09,251.251 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 00:55:09,252.252 INFO    ] Checking for system updates...
[2026-06-12 00:55:09,273.273 INFO    ] 200
[2026-06-12 00:55:09,274.274 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:55:09,304.304 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 00:55:09,305.305 INFO    ] No update needed
[2026-06-12 00:55:09,306.306 INFO    ] Checking for camera pi updates...
[2026-06-12 00:55:09,328.328 INFO    ] 200
[2026-06-12 00:55:09,329.329 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:55:09,352.352 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 00:55:09,395.395 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 00:55:09,396.396 INFO    ] No camera update needed
[2026-06-12 00:55:09,397.397 INFO    ] Script finished. Safe exiting...
[2026-06-12 00:55:09,398.398 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 00:55:09,401.401 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 00:55:09,404.404 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 00:55:11,444.444 INFO    ] ================================================
[2026-06-12 00:55:11,459.459 INFO    ] Launching Daemon at Fri Jun 12 00:55:11 IST 2026
[2026-06-12 00:55:11,470.470 INFO    ] ================================================
[2026-06-12 00:55:11,837.837 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 00:55:11
[2026-06-12 00:55:12,151.151 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 00:55:12,285.285 INFO    ] Initializing speech engine...
[2026-06-12 00:55:12,289.289 INFO    ] 2026-06-12 00:55:12
[2026-06-12 00:55:12,515.515 INFO    ] 2026-06-12 00:55:12
[2026-06-12 00:55:12,543.543 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 00:55:12,737.737 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 00:55:12,741.741 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 00:55:12,891.891 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 00:55:12,950.950 INFO    ] time= 12/06/2026 00:55:12
[2026-06-12 00:55:12,971.971 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 00:55:12,982.982 INFO    ] Checking for existing commands in stream...
[2026-06-12 00:55:13,058.058 INFO    ] No existing commands found in stream
[2026-06-12 00:55:18,067.067 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 00:55:18,070.070 INFO    ] Waiting 2.43 seconds before fallback handling...
[2026-06-12 00:55:20,838.838 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 00:55:20,839.839 INFO    ] Checking for system updates...
[2026-06-12 00:55:20,860.860 INFO    ] 200
[2026-06-12 00:55:20,862.862 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:55:20,894.894 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 00:55:20,895.895 INFO    ] No update needed
[2026-06-12 00:55:20,897.897 INFO    ] Checking for camera pi updates...
[2026-06-12 00:55:20,917.917 INFO    ] 200
[2026-06-12 00:55:20,918.918 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:55:20,942.942 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 00:55:20,987.987 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 00:55:20,988.988 INFO    ] No camera update needed
[2026-06-12 00:55:20,990.990 INFO    ] Script finished. Safe exiting...
[2026-06-12 00:55:20,991.991 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 00:55:20,994.994 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 00:55:20,997.997 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 00:55:23,038.038 INFO    ] ================================================
[2026-06-12 00:55:23,054.054 INFO    ] Launching Daemon at Fri Jun 12 00:55:23 IST 2026
[2026-06-12 00:55:23,065.065 INFO    ] ================================================
[2026-06-12 00:55:23,390.390 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 00:55:23
[2026-06-12 00:55:23,718.718 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 00:55:23,910.910 INFO    ] Initializing speech engine...
[2026-06-12 00:55:23,918.918 INFO    ] 2026-06-12 00:55:23
[2026-06-12 00:55:24,129.129 INFO    ] 2026-06-12 00:55:24
[2026-06-12 00:55:24,158.158 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 00:55:24,344.344 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 00:55:24,347.347 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 00:55:24,484.484 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 00:55:24,548.548 INFO    ] time= 12/06/2026 00:55:24
[2026-06-12 00:55:24,576.576 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 00:55:24,583.583 INFO    ] Checking for existing commands in stream...
[2026-06-12 00:55:24,650.650 INFO    ] No existing commands found in stream
[2026-06-12 00:55:29,664.664 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 00:55:29,668.668 INFO    ] Waiting 3.59 seconds before fallback handling...
[2026-06-12 00:55:33,640.640 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 00:55:33,642.642 INFO    ] Checking for system updates...
[2026-06-12 00:55:33,663.663 INFO    ] 200
[2026-06-12 00:55:33,665.665 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:55:33,700.700 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 00:55:33,701.701 INFO    ] No update needed
[2026-06-12 00:55:33,703.703 INFO    ] Checking for camera pi updates...
[2026-06-12 00:55:33,725.725 INFO    ] 200
[2026-06-12 00:55:33,727.727 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:55:33,753.753 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 00:55:33,795.795 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 00:55:33,796.796 INFO    ] No camera update needed
[2026-06-12 00:55:33,798.798 INFO    ] Script finished. Safe exiting...
[2026-06-12 00:55:33,799.799 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 00:55:33,802.802 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 00:55:33,805.805 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 00:55:35,843.843 INFO    ] ================================================
[2026-06-12 00:55:35,859.859 INFO    ] Launching Daemon at Fri Jun 12 00:55:35 IST 2026
[2026-06-12 00:55:35,869.869 INFO    ] ================================================
[2026-06-12 00:55:36,200.200 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 00:55:36
[2026-06-12 00:55:36,512.512 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 00:55:36,644.644 INFO    ] Initializing speech engine...
[2026-06-12 00:55:36,657.657 INFO    ] 2026-06-12 00:55:36
[2026-06-12 00:55:36,864.864 INFO    ] 2026-06-12 00:55:36
[2026-06-12 00:55:36,894.894 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 00:55:37,080.080 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 00:55:37,089.089 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 00:55:37,216.216 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 00:55:37,273.273 INFO    ] time= 12/06/2026 00:55:37
[2026-06-12 00:55:37,308.308 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 00:55:37,314.314 INFO    ] Checking for existing commands in stream...
[2026-06-12 00:55:37,409.409 INFO    ] No existing commands found in stream
[2026-06-12 00:55:42,418.418 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 00:55:42,421.421 INFO    ] Waiting 0.24 seconds before fallback handling...
[2026-06-12 00:55:43,008.008 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 00:55:43,010.010 INFO    ] Checking for system updates...
[2026-06-12 00:55:43,031.031 INFO    ] 200
[2026-06-12 00:55:43,033.033 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:55:43,063.063 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 00:55:43,065.065 INFO    ] No update needed
[2026-06-12 00:55:43,066.066 INFO    ] Checking for camera pi updates...
[2026-06-12 00:55:43,085.085 INFO    ] 200
[2026-06-12 00:55:43,087.087 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:55:43,113.113 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 00:55:43,152.152 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 00:55:43,153.153 INFO    ] No camera update needed
[2026-06-12 00:55:43,154.154 INFO    ] Script finished. Safe exiting...
[2026-06-12 00:55:43,156.156 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 00:55:43,159.159 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 00:55:43,161.161 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 00:55:45,201.201 INFO    ] ================================================
[2026-06-12 00:55:45,217.217 INFO    ] Launching Daemon at Fri Jun 12 00:55:45 IST 2026
[2026-06-12 00:55:45,228.228 INFO    ] ================================================
[2026-06-12 00:55:45,577.577 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 00:55:45
[2026-06-12 00:55:45,893.893 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 00:55:46,027.027 INFO    ] Initializing speech engine...
[2026-06-12 00:55:46,036.036 INFO    ] 2026-06-12 00:55:46
[2026-06-12 00:55:46,256.256 INFO    ] 2026-06-12 00:55:46
[2026-06-12 00:55:46,287.287 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 00:55:46,481.481 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 00:55:46,484.484 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 00:55:46,628.628 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 00:55:46,697.697 INFO    ] time= 12/06/2026 00:55:46
[2026-06-12 00:55:46,724.724 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 00:55:46,726.726 INFO    ] Checking for existing commands in stream...
[2026-06-12 00:55:46,801.801 INFO    ] No existing commands found in stream
[2026-06-12 00:55:51,820.820 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 00:55:51,823.823 INFO    ] Waiting 2.89 seconds before fallback handling...
[2026-06-12 00:55:55,081.081 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 00:55:55,082.082 INFO    ] Checking for system updates...
[2026-06-12 00:55:55,103.103 INFO    ] 200
[2026-06-12 00:55:55,104.104 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:55:55,134.134 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 00:55:55,135.135 INFO    ] No update needed
[2026-06-12 00:55:55,136.136 INFO    ] Checking for camera pi updates...
[2026-06-12 00:55:55,156.156 INFO    ] 200
[2026-06-12 00:55:55,158.158 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:55:55,182.182 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 00:55:55,227.227 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 00:55:55,228.228 INFO    ] No camera update needed
[2026-06-12 00:55:55,229.229 INFO    ] Script finished. Safe exiting...
[2026-06-12 00:55:55,231.231 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 00:55:55,234.234 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 00:55:55,236.236 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 00:55:57,275.275 INFO    ] ================================================
[2026-06-12 00:55:57,291.291 INFO    ] Launching Daemon at Fri Jun 12 00:55:57 IST 2026
[2026-06-12 00:55:57,302.302 INFO    ] ================================================
[2026-06-12 00:55:57,668.668 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 00:55:57
[2026-06-12 00:55:57,996.996 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 00:55:58,147.147 INFO    ] Initializing speech engine...
[2026-06-12 00:55:58,152.152 INFO    ] 2026-06-12 00:55:58
[2026-06-12 00:55:58,355.355 INFO    ] 2026-06-12 00:55:58
[2026-06-12 00:55:58,384.384 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 00:55:58,566.566 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 00:55:58,576.576 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 00:55:58,706.706 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 00:55:58,765.765 INFO    ] time= 12/06/2026 00:55:58
[2026-06-12 00:55:58,797.797 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 00:55:58,803.803 INFO    ] Checking for existing commands in stream...
[2026-06-12 00:55:58,870.870 INFO    ] No existing commands found in stream
[2026-06-12 00:56:03,879.879 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 00:56:03,882.882 INFO    ] Waiting 0.36 seconds before fallback handling...
[2026-06-12 00:56:04,612.612 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 00:56:04,613.613 INFO    ] Checking for system updates...
[2026-06-12 00:56:04,635.635 INFO    ] 200
[2026-06-12 00:56:04,637.637 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:56:04,669.669 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 00:56:04,671.671 INFO    ] No update needed
[2026-06-12 00:56:04,672.672 INFO    ] Checking for camera pi updates...
[2026-06-12 00:56:04,692.692 INFO    ] 200
[2026-06-12 00:56:04,693.693 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:56:04,717.717 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 00:56:04,760.760 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 00:56:04,761.761 INFO    ] No camera update needed
[2026-06-12 00:56:04,763.763 INFO    ] Script finished. Safe exiting...
[2026-06-12 00:56:04,764.764 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 00:56:04,767.767 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 00:56:04,770.770 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 00:56:06,809.809 INFO    ] ================================================
[2026-06-12 00:56:06,825.825 INFO    ] Launching Daemon at Fri Jun 12 00:56:06 IST 2026
[2026-06-12 00:56:06,836.836 INFO    ] ================================================
[2026-06-12 00:56:07,183.183 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 00:56:07
[2026-06-12 00:56:07,515.515 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 00:56:07,663.663 INFO    ] Initializing speech engine...
[2026-06-12 00:56:07,669.669 INFO    ] 2026-06-12 00:56:07
[2026-06-12 00:56:07,875.875 INFO    ] 2026-06-12 00:56:07
[2026-06-12 00:56:07,903.903 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 00:56:08,088.088 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 00:56:08,097.097 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 00:56:08,225.225 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 00:56:08,286.286 INFO    ] time= 12/06/2026 00:56:08
[2026-06-12 00:56:08,319.319 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 00:56:08,326.326 INFO    ] Checking for existing commands in stream...
[2026-06-12 00:56:08,393.393 INFO    ] No existing commands found in stream
[2026-06-12 00:56:13,412.412 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 00:56:13,415.415 INFO    ] Waiting 3.14 seconds before fallback handling...
[2026-06-12 00:56:16,918.918 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 00:56:16,919.919 INFO    ] Checking for system updates...
[2026-06-12 00:56:16,940.940 INFO    ] 200
[2026-06-12 00:56:16,942.942 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:56:16,975.975 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 00:56:16,976.976 INFO    ] No update needed
[2026-06-12 00:56:16,977.977 INFO    ] Checking for camera pi updates...
[2026-06-12 00:56:17,001.001 INFO    ] 200
[2026-06-12 00:56:17,002.002 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:56:17,028.028 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 00:56:17,076.076 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 00:56:17,078.078 INFO    ] No camera update needed
[2026-06-12 00:56:17,079.079 INFO    ] Script finished. Safe exiting...
[2026-06-12 00:56:17,081.081 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 00:56:17,084.084 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 00:56:17,087.087 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 00:56:19,126.126 INFO    ] ================================================
[2026-06-12 00:56:19,142.142 INFO    ] Launching Daemon at Fri Jun 12 00:56:19 IST 2026
[2026-06-12 00:56:19,152.152 INFO    ] ================================================
[2026-06-12 00:56:19,508.508 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 00:56:19
[2026-06-12 00:56:19,840.840 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 00:56:19,983.983 INFO    ] Initializing speech engine...
[2026-06-12 00:56:19,994.994 INFO    ] 2026-06-12 00:56:19
[2026-06-12 00:56:20,203.203 INFO    ] 2026-06-12 00:56:20
[2026-06-12 00:56:20,232.232 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 00:56:20,354.354 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 00:56:20,417.417 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 00:56:20,571.571 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 00:56:20,625.625 INFO    ] time= 12/06/2026 00:56:20
[2026-06-12 00:56:20,647.647 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 00:56:20,653.653 INFO    ] Checking for existing commands in stream...
[2026-06-12 00:56:20,720.720 INFO    ] No existing commands found in stream
[2026-06-12 00:56:25,734.734 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 00:56:25,738.738 INFO    ] Waiting 3.10 seconds before fallback handling...
[2026-06-12 00:56:29,219.219 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 00:56:29,221.221 INFO    ] Checking for system updates...
[2026-06-12 00:56:29,241.241 INFO    ] 200
[2026-06-12 00:56:29,242.242 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:56:29,276.276 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 00:56:29,278.278 INFO    ] No update needed
[2026-06-12 00:56:29,279.279 INFO    ] Checking for camera pi updates...
[2026-06-12 00:56:29,299.299 INFO    ] 200
[2026-06-12 00:56:29,301.301 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:56:29,325.325 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 00:56:29,367.367 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 00:56:29,368.368 INFO    ] No camera update needed
[2026-06-12 00:56:29,369.369 INFO    ] Script finished. Safe exiting...
[2026-06-12 00:56:29,371.371 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 00:56:29,374.374 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 00:56:29,376.376 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 00:56:31,416.416 INFO    ] ================================================
[2026-06-12 00:56:31,432.432 INFO    ] Launching Daemon at Fri Jun 12 00:56:31 IST 2026
[2026-06-12 00:56:31,443.443 INFO    ] ================================================
[2026-06-12 00:56:31,792.792 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 00:56:31
[2026-06-12 00:56:32,130.130 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 00:56:32,281.281 INFO    ] Initializing speech engine...
[2026-06-12 00:56:32,294.294 INFO    ] 2026-06-12 00:56:32
[2026-06-12 00:56:32,521.521 INFO    ] 2026-06-12 00:56:32
[2026-06-12 00:56:32,554.554 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 00:56:32,684.684 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 00:56:32,747.747 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 00:56:32,888.888 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 00:56:32,955.955 INFO    ] time= 12/06/2026 00:56:32
[2026-06-12 00:56:32,980.980 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 00:56:32,986.986 INFO    ] Checking for existing commands in stream...
[2026-06-12 00:56:33,053.053 INFO    ] No existing commands found in stream
[2026-06-12 00:56:38,062.062 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 00:56:38,065.065 INFO    ] Waiting 2.40 seconds before fallback handling...
[2026-06-12 00:56:40,827.827 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 00:56:40,829.829 INFO    ] Checking for system updates...
[2026-06-12 00:56:40,851.851 INFO    ] 200
[2026-06-12 00:56:40,852.852 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:56:40,885.885 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 00:56:40,887.887 INFO    ] No update needed
[2026-06-12 00:56:40,888.888 INFO    ] Checking for camera pi updates...
[2026-06-12 00:56:40,907.907 INFO    ] 200
[2026-06-12 00:56:40,909.909 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:56:40,934.934 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 00:56:40,974.974 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 00:56:40,975.975 INFO    ] No camera update needed
[2026-06-12 00:56:40,977.977 INFO    ] Script finished. Safe exiting...
[2026-06-12 00:56:40,978.978 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 00:56:40,981.981 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 00:56:40,984.984 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 00:56:43,022.022 INFO    ] ================================================
[2026-06-12 00:56:43,038.038 INFO    ] Launching Daemon at Fri Jun 12 00:56:43 IST 2026
[2026-06-12 00:56:43,049.049 INFO    ] ================================================
[2026-06-12 00:56:43,399.399 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 00:56:43
[2026-06-12 00:56:43,731.731 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 00:56:43,889.889 INFO    ] Initializing speech engine...
[2026-06-12 00:56:43,894.894 INFO    ] 2026-06-12 00:56:43
[2026-06-12 00:56:44,093.093 INFO    ] 2026-06-12 00:56:44
[2026-06-12 00:56:44,122.122 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 00:56:44,249.249 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 00:56:44,306.306 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 00:56:44,444.444 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 00:56:44,510.510 INFO    ] time= 12/06/2026 00:56:44
[2026-06-12 00:56:44,534.534 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 00:56:44,541.541 INFO    ] Checking for existing commands in stream...
[2026-06-12 00:56:44,607.607 INFO    ] No existing commands found in stream
[2026-06-12 00:56:49,622.622 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 00:56:49,625.625 INFO    ] Waiting 3.99 seconds before fallback handling...
[2026-06-12 00:56:54,004.004 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 00:56:54,006.006 INFO    ] Checking for system updates...
[2026-06-12 00:56:54,028.028 INFO    ] 200
[2026-06-12 00:56:54,030.030 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:56:54,061.061 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 00:56:54,062.062 INFO    ] No update needed
[2026-06-12 00:56:54,064.064 INFO    ] Checking for camera pi updates...
[2026-06-12 00:56:54,084.084 INFO    ] 200
[2026-06-12 00:56:54,086.086 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:56:54,113.113 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 00:56:54,157.157 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 00:56:54,158.158 INFO    ] No camera update needed
[2026-06-12 00:56:54,160.160 INFO    ] Script finished. Safe exiting...
[2026-06-12 00:56:54,161.161 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 00:56:54,164.164 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 00:56:54,167.167 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 00:56:56,206.206 INFO    ] ================================================
[2026-06-12 00:56:56,221.221 INFO    ] Launching Daemon at Fri Jun 12 00:56:56 IST 2026
[2026-06-12 00:56:56,232.232 INFO    ] ================================================
[2026-06-12 00:56:56,585.585 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 00:56:56
[2026-06-12 00:56:56,918.918 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 00:56:57,068.068 INFO    ] Initializing speech engine...
[2026-06-12 00:56:57,074.074 INFO    ] 2026-06-12 00:56:57
[2026-06-12 00:56:57,282.282 INFO    ] 2026-06-12 00:56:57
[2026-06-12 00:56:57,310.310 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 00:56:57,497.497 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 00:56:57,507.507 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 00:56:57,635.635 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 00:56:57,697.697 INFO    ] time= 12/06/2026 00:56:57
[2026-06-12 00:56:57,730.730 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 00:56:57,736.736 INFO    ] Checking for existing commands in stream...
[2026-06-12 00:56:57,827.827 INFO    ] No existing commands found in stream
[2026-06-12 00:57:02,831.831 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 00:57:02,833.833 INFO    ] Waiting 1.89 seconds before fallback handling...
[2026-06-12 00:57:05,065.065 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 00:57:05,066.066 INFO    ] Checking for system updates...
[2026-06-12 00:57:05,089.089 INFO    ] 200
[2026-06-12 00:57:05,091.091 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:57:05,123.123 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 00:57:05,125.125 INFO    ] No update needed
[2026-06-12 00:57:05,126.126 INFO    ] Checking for camera pi updates...
[2026-06-12 00:57:05,147.147 INFO    ] 200
[2026-06-12 00:57:05,148.148 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:57:05,171.171 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 00:57:05,217.217 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 00:57:05,218.218 INFO    ] No camera update needed
[2026-06-12 00:57:05,219.219 INFO    ] Script finished. Safe exiting...
[2026-06-12 00:57:05,221.221 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 00:57:05,224.224 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 00:57:05,227.227 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 00:57:07,265.265 INFO    ] ================================================
[2026-06-12 00:57:07,280.280 INFO    ] Launching Daemon at Fri Jun 12 00:57:07 IST 2026
[2026-06-12 00:57:07,291.291 INFO    ] ================================================
[2026-06-12 00:57:07,648.648 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 00:57:07
[2026-06-12 00:57:07,986.986 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 00:57:08,142.142 INFO    ] Initializing speech engine...
[2026-06-12 00:57:08,146.146 INFO    ] 2026-06-12 00:57:08
[2026-06-12 00:57:08,357.357 INFO    ] 2026-06-12 00:57:08
[2026-06-12 00:57:08,386.386 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 00:57:08,574.574 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 00:57:08,584.584 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 00:57:08,735.735 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 00:57:08,786.786 INFO    ] time= 12/06/2026 00:57:08
[2026-06-12 00:57:08,807.807 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 00:57:08,814.814 INFO    ] Checking for existing commands in stream...
[2026-06-12 00:57:08,875.875 INFO    ] No existing commands found in stream
[2026-06-12 00:57:13,893.893 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 00:57:13,896.896 INFO    ] Waiting 0.42 seconds before fallback handling...
[2026-06-12 00:57:14,684.684 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 00:57:14,686.686 INFO    ] Checking for system updates...
[2026-06-12 00:57:14,710.710 INFO    ] 200
[2026-06-12 00:57:14,712.712 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:57:14,745.745 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 00:57:14,746.746 INFO    ] No update needed
[2026-06-12 00:57:14,747.747 INFO    ] Checking for camera pi updates...
[2026-06-12 00:57:14,767.767 INFO    ] 200
[2026-06-12 00:57:14,768.768 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:57:14,791.791 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 00:57:14,834.834 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 00:57:14,835.835 INFO    ] No camera update needed
[2026-06-12 00:57:14,836.836 INFO    ] Script finished. Safe exiting...
[2026-06-12 00:57:14,837.837 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 00:57:14,840.840 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 00:57:14,843.843 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 00:57:16,882.882 INFO    ] ================================================
[2026-06-12 00:57:16,897.897 INFO    ] Launching Daemon at Fri Jun 12 00:57:16 IST 2026
[2026-06-12 00:57:16,908.908 INFO    ] ================================================
[2026-06-12 00:57:17,246.246 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 00:57:17
[2026-06-12 00:57:17,562.562 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 00:57:17,695.695 INFO    ] Initializing speech engine...
[2026-06-12 00:57:17,698.698 INFO    ] 2026-06-12 00:57:17
[2026-06-12 00:57:17,931.931 INFO    ] 2026-06-12 00:57:17
[2026-06-12 00:57:17,962.962 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 00:57:18,160.160 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 00:57:18,164.164 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 00:57:18,313.313 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 00:57:18,382.382 INFO    ] time= 12/06/2026 00:57:18
[2026-06-12 00:57:18,410.410 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 00:57:18,412.412 INFO    ] Checking for existing commands in stream...
[2026-06-12 00:57:18,490.490 INFO    ] No existing commands found in stream
[2026-06-12 00:57:23,499.499 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 00:57:23,502.502 INFO    ] Waiting 0.76 seconds before fallback handling...
[2026-06-12 00:57:24,615.615 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 00:57:24,617.617 INFO    ] Checking for system updates...
[2026-06-12 00:57:24,637.637 INFO    ] 200
[2026-06-12 00:57:24,639.639 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:57:24,672.672 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 00:57:24,673.673 INFO    ] No update needed
[2026-06-12 00:57:24,674.674 INFO    ] Checking for camera pi updates...
[2026-06-12 00:57:24,695.695 INFO    ] 200
[2026-06-12 00:57:24,696.696 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:57:24,719.719 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 00:57:24,763.763 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 00:57:24,765.765 INFO    ] No camera update needed
[2026-06-12 00:57:24,766.766 INFO    ] Script finished. Safe exiting...
[2026-06-12 00:57:24,767.767 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 00:57:24,770.770 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 00:57:24,773.773 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 00:57:26,811.811 INFO    ] ================================================
[2026-06-12 00:57:26,826.826 INFO    ] Launching Daemon at Fri Jun 12 00:57:26 IST 2026
[2026-06-12 00:57:26,837.837 INFO    ] ================================================
[2026-06-12 00:57:27,189.189 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 00:57:27
[2026-06-12 00:57:27,506.506 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 00:57:27,654.654 INFO    ] Initializing speech engine...
[2026-06-12 00:57:27,659.659 INFO    ] 2026-06-12 00:57:27
[2026-06-12 00:57:27,865.865 INFO    ] 2026-06-12 00:57:27
[2026-06-12 00:57:27,892.892 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 00:57:28,081.081 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 00:57:28,091.091 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 00:57:28,214.214 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 00:57:28,265.265 INFO    ] time= 12/06/2026 00:57:28
[2026-06-12 00:57:28,310.310 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 00:57:28,320.320 INFO    ] Checking for existing commands in stream...
[2026-06-12 00:57:28,385.385 INFO    ] No existing commands found in stream
[2026-06-12 00:57:33,394.394 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 00:57:33,396.396 INFO    ] Waiting 1.51 seconds before fallback handling...
[2026-06-12 00:57:35,263.263 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 00:57:35,265.265 INFO    ] Checking for system updates...
[2026-06-12 00:57:35,286.286 INFO    ] 200
[2026-06-12 00:57:35,287.287 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:57:35,320.320 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 00:57:35,321.321 INFO    ] No update needed
[2026-06-12 00:57:35,322.322 INFO    ] Checking for camera pi updates...
[2026-06-12 00:57:35,343.343 INFO    ] 200
[2026-06-12 00:57:35,344.344 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:57:35,369.369 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 00:57:35,513.513 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 00:57:35,514.514 INFO    ] No camera update needed
[2026-06-12 00:57:35,516.516 INFO    ] Script finished. Safe exiting...
[2026-06-12 00:57:35,517.517 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 00:57:35,520.520 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 00:57:35,523.523 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 00:57:37,562.562 INFO    ] ================================================
[2026-06-12 00:57:37,577.577 INFO    ] Launching Daemon at Fri Jun 12 00:57:37 IST 2026
[2026-06-12 00:57:37,588.588 INFO    ] ================================================
[2026-06-12 00:57:37,946.946 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 00:57:37
[2026-06-12 00:57:38,290.290 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 00:57:38,430.430 INFO    ] Initializing speech engine...
[2026-06-12 00:57:38,438.438 INFO    ] 2026-06-12 00:57:38
[2026-06-12 00:57:38,657.657 INFO    ] 2026-06-12 00:57:38
[2026-06-12 00:57:38,686.686 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 00:57:38,874.874 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 00:57:38,884.884 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 00:57:39,010.010 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 00:57:39,066.066 INFO    ] time= 12/06/2026 00:57:39
[2026-06-12 00:57:39,110.110 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 00:57:39,112.112 INFO    ] Checking for existing commands in stream...
[2026-06-12 00:57:39,208.208 INFO    ] No existing commands found in stream
[2026-06-12 00:57:44,222.222 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 00:57:44,225.225 INFO    ] Waiting 1.78 seconds before fallback handling...
[2026-06-12 00:57:46,385.385 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 00:57:46,387.387 INFO    ] Checking for system updates...
[2026-06-12 00:57:46,409.409 INFO    ] 200
[2026-06-12 00:57:46,411.411 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:57:46,443.443 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 00:57:46,445.445 INFO    ] No update needed
[2026-06-12 00:57:46,446.446 INFO    ] Checking for camera pi updates...
[2026-06-12 00:57:46,470.470 INFO    ] 200
[2026-06-12 00:57:46,471.471 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:57:46,495.495 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 00:57:46,542.542 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 00:57:46,544.544 INFO    ] No camera update needed
[2026-06-12 00:57:46,545.545 INFO    ] Script finished. Safe exiting...
[2026-06-12 00:57:46,547.547 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 00:57:46,550.550 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 00:57:46,553.553 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 00:57:48,593.593 INFO    ] ================================================
[2026-06-12 00:57:48,608.608 INFO    ] Launching Daemon at Fri Jun 12 00:57:48 IST 2026
[2026-06-12 00:57:48,619.619 INFO    ] ================================================
[2026-06-12 00:57:48,962.962 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 00:57:48
[2026-06-12 00:57:49,282.282 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 00:57:49,413.413 INFO    ] Initializing speech engine...
[2026-06-12 00:57:49,427.427 INFO    ] 2026-06-12 00:57:49
[2026-06-12 00:57:49,634.634 INFO    ] 2026-06-12 00:57:49
[2026-06-12 00:57:49,664.664 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 00:57:49,847.847 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 00:57:49,850.850 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 00:57:49,986.986 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 00:57:50,050.050 INFO    ] time= 12/06/2026 00:57:49
[2026-06-12 00:57:50,077.077 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 00:57:50,084.084 INFO    ] Checking for existing commands in stream...
[2026-06-12 00:57:50,150.150 INFO    ] No existing commands found in stream
[2026-06-12 00:57:55,159.159 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 00:57:55,162.162 INFO    ] Waiting 1.75 seconds before fallback handling...
[2026-06-12 00:57:57,303.303 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 00:57:57,305.305 INFO    ] Checking for system updates...
[2026-06-12 00:57:57,326.326 INFO    ] 200
[2026-06-12 00:57:57,327.327 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:57:57,358.358 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 00:57:57,360.360 INFO    ] No update needed
[2026-06-12 00:57:57,361.361 INFO    ] Checking for camera pi updates...
[2026-06-12 00:57:57,382.382 INFO    ] 200
[2026-06-12 00:57:57,384.384 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:57:57,409.409 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 00:57:57,451.451 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 00:57:57,452.452 INFO    ] No camera update needed
[2026-06-12 00:57:57,454.454 INFO    ] Script finished. Safe exiting...
[2026-06-12 00:57:57,455.455 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 00:57:57,458.458 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 00:57:57,461.461 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 00:57:59,501.501 INFO    ] ================================================
[2026-06-12 00:57:59,517.517 INFO    ] Launching Daemon at Fri Jun 12 00:57:59 IST 2026
[2026-06-12 00:57:59,528.528 INFO    ] ================================================
[2026-06-12 00:57:59,870.870 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 00:57:59
[2026-06-12 00:58:00,187.187 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 00:58:00,330.330 INFO    ] Initializing speech engine...
[2026-06-12 00:58:00,335.335 INFO    ] 2026-06-12 00:58:00
[2026-06-12 00:58:00,538.538 INFO    ] 2026-06-12 00:58:00
[2026-06-12 00:58:00,566.566 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 00:58:00,750.750 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 00:58:00,758.758 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 00:58:00,881.881 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 00:58:00,941.941 INFO    ] time= 12/06/2026 00:58:00
[2026-06-12 00:58:00,978.978 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 00:58:00,985.985 INFO    ] Checking for existing commands in stream...
[2026-06-12 00:58:01,052.052 INFO    ] No existing commands found in stream
[2026-06-12 00:58:06,066.066 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 00:58:06,069.069 INFO    ] Waiting 3.44 seconds before fallback handling...
[2026-06-12 00:58:09,882.882 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 00:58:09,884.884 INFO    ] Checking for system updates...
[2026-06-12 00:58:09,905.905 INFO    ] 200
[2026-06-12 00:58:09,907.907 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:58:09,939.939 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 00:58:09,940.940 INFO    ] No update needed
[2026-06-12 00:58:09,941.941 INFO    ] Checking for camera pi updates...
[2026-06-12 00:58:09,962.962 INFO    ] 200
[2026-06-12 00:58:09,963.963 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:58:09,986.986 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 00:58:10,025.025 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 00:58:10,027.027 INFO    ] No camera update needed
[2026-06-12 00:58:10,028.028 INFO    ] Script finished. Safe exiting...
[2026-06-12 00:58:10,029.029 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 00:58:10,032.032 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 00:58:10,035.035 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 00:58:12,075.075 INFO    ] ================================================
[2026-06-12 00:58:12,091.091 INFO    ] Launching Daemon at Fri Jun 12 00:58:12 IST 2026
[2026-06-12 00:58:12,103.103 INFO    ] ================================================
[2026-06-12 00:58:12,455.455 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 00:58:12
[2026-06-12 00:58:12,770.770 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 00:58:12,914.914 INFO    ] Initializing speech engine...
[2026-06-12 00:58:12,919.919 INFO    ] 2026-06-12 00:58:12
[2026-06-12 00:58:13,122.122 INFO    ] 2026-06-12 00:58:13
[2026-06-12 00:58:13,150.150 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 00:58:13,335.335 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 00:58:13,344.344 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 00:58:13,472.472 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 00:58:13,539.539 INFO    ] time= 12/06/2026 00:58:13
[2026-06-12 00:58:13,563.563 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 00:58:13,569.569 INFO    ] Checking for existing commands in stream...
[2026-06-12 00:58:13,636.636 INFO    ] No existing commands found in stream
[2026-06-12 00:58:18,645.645 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 00:58:18,648.648 INFO    ] Waiting 1.92 seconds before fallback handling...
[2026-06-12 00:58:20,933.933 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 00:58:20,934.934 INFO    ] Checking for system updates...
[2026-06-12 00:58:20,956.956 INFO    ] 200
[2026-06-12 00:58:20,957.957 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:58:20,988.988 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 00:58:20,989.989 INFO    ] No update needed
[2026-06-12 00:58:20,990.990 INFO    ] Checking for camera pi updates...
[2026-06-12 00:58:21,010.010 INFO    ] 200
[2026-06-12 00:58:21,011.011 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:58:21,035.035 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 00:58:21,076.076 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 00:58:21,077.077 INFO    ] No camera update needed
[2026-06-12 00:58:21,079.079 INFO    ] Script finished. Safe exiting...
[2026-06-12 00:58:21,080.080 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 00:58:21,083.083 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 00:58:21,086.086 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 00:58:23,124.124 INFO    ] ================================================
[2026-06-12 00:58:23,139.139 INFO    ] Launching Daemon at Fri Jun 12 00:58:23 IST 2026
[2026-06-12 00:58:23,151.151 INFO    ] ================================================
[2026-06-12 00:58:23,526.526 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 00:58:23
[2026-06-12 00:58:23,858.858 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 00:58:24,002.002 INFO    ] Initializing speech engine...
[2026-06-12 00:58:24,012.012 INFO    ] 2026-06-12 00:58:24
[2026-06-12 00:58:24,221.221 INFO    ] 2026-06-12 00:58:24
[2026-06-12 00:58:24,249.249 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 00:58:24,432.432 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 00:58:24,436.436 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 00:58:24,592.592 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 00:58:24,641.641 INFO    ] time= 12/06/2026 00:58:24
[2026-06-12 00:58:24,662.662 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 00:58:24,668.668 INFO    ] Checking for existing commands in stream...
[2026-06-12 00:58:24,735.735 INFO    ] No existing commands found in stream
[2026-06-12 00:58:29,744.744 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 00:58:29,746.746 INFO    ] Waiting 1.98 seconds before fallback handling...
[2026-06-12 00:58:32,054.054 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 00:58:32,056.056 INFO    ] Checking for system updates...
[2026-06-12 00:58:32,077.077 INFO    ] 200
[2026-06-12 00:58:32,078.078 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:58:32,119.119 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 00:58:32,121.121 INFO    ] No update needed
[2026-06-12 00:58:32,122.122 INFO    ] Checking for camera pi updates...
[2026-06-12 00:58:32,147.147 INFO    ] 200
[2026-06-12 00:58:32,150.150 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:58:32,192.192 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 00:58:32,235.235 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 00:58:32,237.237 INFO    ] No camera update needed
[2026-06-12 00:58:32,239.239 INFO    ] Script finished. Safe exiting...
[2026-06-12 00:58:32,242.242 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 00:58:32,247.247 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 00:58:32,253.253 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 00:58:34,293.293 INFO    ] ================================================
[2026-06-12 00:58:34,309.309 INFO    ] Launching Daemon at Fri Jun 12 00:58:34 IST 2026
[2026-06-12 00:58:34,320.320 INFO    ] ================================================
[2026-06-12 00:58:34,649.649 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 00:58:34
[2026-06-12 00:58:34,959.959 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 00:58:35,090.090 INFO    ] Initializing speech engine...
[2026-06-12 00:58:35,103.103 INFO    ] 2026-06-12 00:58:35
[2026-06-12 00:58:35,313.313 INFO    ] 2026-06-12 00:58:35
[2026-06-12 00:58:35,342.342 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 00:58:35,528.528 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 00:58:35,532.532 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 00:58:35,663.663 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 00:58:35,719.719 INFO    ] time= 12/06/2026 00:58:35
[2026-06-12 00:58:35,754.754 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 00:58:35,765.765 INFO    ] Checking for existing commands in stream...
[2026-06-12 00:58:35,836.836 INFO    ] No existing commands found in stream
[2026-06-12 00:58:40,847.847 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 00:58:40,849.849 INFO    ] Waiting 0.25 seconds before fallback handling...
[2026-06-12 00:58:41,473.473 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 00:58:41,475.475 INFO    ] Checking for system updates...
[2026-06-12 00:58:41,496.496 INFO    ] 200
[2026-06-12 00:58:41,498.498 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:58:41,527.527 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 00:58:41,529.529 INFO    ] No update needed
[2026-06-12 00:58:41,530.530 INFO    ] Checking for camera pi updates...
[2026-06-12 00:58:41,551.551 INFO    ] 200
[2026-06-12 00:58:41,553.553 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:58:41,576.576 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 00:58:41,618.618 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 00:58:41,619.619 INFO    ] No camera update needed
[2026-06-12 00:58:41,620.620 INFO    ] Script finished. Safe exiting...
[2026-06-12 00:58:41,622.622 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 00:58:41,624.624 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 00:58:41,627.627 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 00:58:43,669.669 INFO    ] ================================================
[2026-06-12 00:58:43,684.684 INFO    ] Launching Daemon at Fri Jun 12 00:58:43 IST 2026
[2026-06-12 00:58:43,696.696 INFO    ] ================================================
[2026-06-12 00:58:44,038.038 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 00:58:44
[2026-06-12 00:58:44,357.357 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 00:58:44,501.501 INFO    ] Initializing speech engine...
[2026-06-12 00:58:44,505.505 INFO    ] 2026-06-12 00:58:44
[2026-06-12 00:58:44,712.712 INFO    ] 2026-06-12 00:58:44
[2026-06-12 00:58:44,740.740 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 00:58:44,925.925 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 00:58:44,928.928 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 00:58:45,075.075 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 00:58:45,134.134 INFO    ] time= 12/06/2026 00:58:45
[2026-06-12 00:58:45,157.157 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 00:58:45,163.163 INFO    ] Checking for existing commands in stream...
[2026-06-12 00:58:45,231.231 INFO    ] No existing commands found in stream
[2026-06-12 00:58:50,240.240 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 00:58:50,243.243 INFO    ] Waiting 3.71 seconds before fallback handling...
[2026-06-12 00:58:54,363.363 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 00:58:54,365.365 INFO    ] Checking for system updates...
[2026-06-12 00:58:54,386.386 INFO    ] 200
[2026-06-12 00:58:54,387.387 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:58:54,422.422 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 00:58:54,423.423 INFO    ] No update needed
[2026-06-12 00:58:54,424.424 INFO    ] Checking for camera pi updates...
[2026-06-12 00:58:54,444.444 INFO    ] 200
[2026-06-12 00:58:54,445.445 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:58:54,468.468 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 00:58:54,510.510 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 00:58:54,511.511 INFO    ] No camera update needed
[2026-06-12 00:58:54,512.512 INFO    ] Script finished. Safe exiting...
[2026-06-12 00:58:54,514.514 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 00:58:54,516.516 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 00:58:54,519.519 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 00:58:56,557.557 INFO    ] ================================================
[2026-06-12 00:58:56,573.573 INFO    ] Launching Daemon at Fri Jun 12 00:58:56 IST 2026
[2026-06-12 00:58:56,584.584 INFO    ] ================================================
[2026-06-12 00:58:56,924.924 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 00:58:56
[2026-06-12 00:58:57,234.234 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 00:58:57,366.366 INFO    ] Initializing speech engine...
[2026-06-12 00:58:57,371.371 INFO    ] 2026-06-12 00:58:57
[2026-06-12 00:58:57,597.597 INFO    ] 2026-06-12 00:58:57
[2026-06-12 00:58:57,627.627 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 00:58:57,757.757 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 00:58:57,819.819 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 00:58:57,956.956 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 00:58:58,020.020 INFO    ] time= 12/06/2026 00:58:57
[2026-06-12 00:58:58,046.046 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 00:58:58,052.052 INFO    ] Checking for existing commands in stream...
[2026-06-12 00:58:58,144.144 INFO    ] No existing commands found in stream
[2026-06-12 00:59:03,157.157 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 00:59:03,160.160 INFO    ] Waiting 0.66 seconds before fallback handling...
[2026-06-12 00:59:04,174.174 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 00:59:04,175.175 INFO    ] Checking for system updates...
[2026-06-12 00:59:04,196.196 INFO    ] 200
[2026-06-12 00:59:04,197.197 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:59:04,227.227 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 00:59:04,228.228 INFO    ] No update needed
[2026-06-12 00:59:04,230.230 INFO    ] Checking for camera pi updates...
[2026-06-12 00:59:04,250.250 INFO    ] 200
[2026-06-12 00:59:04,251.251 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:59:04,285.285 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 00:59:04,330.330 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 00:59:04,331.331 INFO    ] No camera update needed
[2026-06-12 00:59:04,332.332 INFO    ] Script finished. Safe exiting...
[2026-06-12 00:59:04,334.334 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 00:59:04,337.337 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 00:59:04,339.339 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 00:59:06,378.378 INFO    ] ================================================
[2026-06-12 00:59:06,394.394 INFO    ] Launching Daemon at Fri Jun 12 00:59:06 IST 2026
[2026-06-12 00:59:06,405.405 INFO    ] ================================================
[2026-06-12 00:59:06,780.780 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 00:59:06
[2026-06-12 00:59:07,098.098 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 00:59:07,243.243 INFO    ] Initializing speech engine...
[2026-06-12 00:59:07,249.249 INFO    ] 2026-06-12 00:59:07
[2026-06-12 00:59:07,451.451 INFO    ] 2026-06-12 00:59:07
[2026-06-12 00:59:07,481.481 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 00:59:07,664.664 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 00:59:07,674.674 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 00:59:07,801.801 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 00:59:07,858.858 INFO    ] time= 12/06/2026 00:59:07
[2026-06-12 00:59:07,893.893 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 00:59:07,898.898 INFO    ] Checking for existing commands in stream...
[2026-06-12 00:59:07,970.970 INFO    ] No existing commands found in stream
[2026-06-12 00:59:12,984.984 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 00:59:12,987.987 INFO    ] Waiting 0.78 seconds before fallback handling...
[2026-06-12 00:59:14,112.112 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 00:59:14,114.114 INFO    ] Checking for system updates...
[2026-06-12 00:59:14,134.134 INFO    ] 200
[2026-06-12 00:59:14,135.135 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:59:14,168.168 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 00:59:14,169.169 INFO    ] No update needed
[2026-06-12 00:59:14,171.171 INFO    ] Checking for camera pi updates...
[2026-06-12 00:59:14,190.190 INFO    ] 200
[2026-06-12 00:59:14,192.192 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:59:14,216.216 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 00:59:14,259.259 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 00:59:14,261.261 INFO    ] No camera update needed
[2026-06-12 00:59:14,262.262 INFO    ] Script finished. Safe exiting...
[2026-06-12 00:59:14,264.264 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 00:59:14,267.267 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 00:59:14,269.269 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 00:59:16,309.309 INFO    ] ================================================
[2026-06-12 00:59:16,325.325 INFO    ] Launching Daemon at Fri Jun 12 00:59:16 IST 2026
[2026-06-12 00:59:16,336.336 INFO    ] ================================================
[2026-06-12 00:59:16,657.657 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 00:59:16
[2026-06-12 00:59:16,968.968 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 00:59:17,101.101 INFO    ] Initializing speech engine...
[2026-06-12 00:59:17,105.105 INFO    ] 2026-06-12 00:59:17
[2026-06-12 00:59:17,332.332 INFO    ] 2026-06-12 00:59:17
[2026-06-12 00:59:17,363.363 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 00:59:17,559.559 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 00:59:17,563.563 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 00:59:17,706.706 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 00:59:17,763.763 INFO    ] time= 12/06/2026 00:59:17
[2026-06-12 00:59:17,803.803 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 00:59:17,809.809 INFO    ] Checking for existing commands in stream...
[2026-06-12 00:59:17,886.886 INFO    ] No existing commands found in stream
[2026-06-12 00:59:22,899.899 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 00:59:22,902.902 INFO    ] Waiting 3.27 seconds before fallback handling...
[2026-06-12 00:59:26,531.531 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 00:59:26,533.533 INFO    ] Checking for system updates...
[2026-06-12 00:59:26,555.555 INFO    ] 200
[2026-06-12 00:59:26,556.556 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:59:26,589.589 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 00:59:26,590.590 INFO    ] No update needed
[2026-06-12 00:59:26,592.592 INFO    ] Checking for camera pi updates...
[2026-06-12 00:59:26,612.612 INFO    ] 200
[2026-06-12 00:59:26,614.614 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:59:26,637.637 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 00:59:26,690.690 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 00:59:26,691.691 INFO    ] No camera update needed
[2026-06-12 00:59:26,693.693 INFO    ] Script finished. Safe exiting...
[2026-06-12 00:59:26,694.694 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 00:59:26,697.697 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 00:59:26,700.700 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 00:59:28,740.740 INFO    ] ================================================
[2026-06-12 00:59:28,756.756 INFO    ] Launching Daemon at Fri Jun 12 00:59:28 IST 2026
[2026-06-12 00:59:28,768.768 INFO    ] ================================================
[2026-06-12 00:59:29,131.131 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 00:59:29
[2026-06-12 00:59:29,449.449 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 00:59:29,592.592 INFO    ] Initializing speech engine...
[2026-06-12 00:59:29,597.597 INFO    ] 2026-06-12 00:59:29
[2026-06-12 00:59:29,801.801 INFO    ] 2026-06-12 00:59:29
[2026-06-12 00:59:29,830.830 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 00:59:29,967.967 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 00:59:30,014.014 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 00:59:30,150.150 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 00:59:30,209.209 INFO    ] time= 12/06/2026 00:59:30
[2026-06-12 00:59:30,241.241 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 00:59:30,243.243 INFO    ] Checking for existing commands in stream...
[2026-06-12 00:59:30,314.314 INFO    ] No existing commands found in stream
[2026-06-12 00:59:35,328.328 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 00:59:35,331.331 INFO    ] Waiting 0.20 seconds before fallback handling...
[2026-06-12 00:59:36,242.242 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 00:59:36,243.243 INFO    ] Checking for system updates...
[2026-06-12 00:59:36,264.264 INFO    ] 200
[2026-06-12 00:59:36,265.265 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:59:36,295.295 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 00:59:36,296.296 INFO    ] No update needed
[2026-06-12 00:59:36,298.298 INFO    ] Checking for camera pi updates...
[2026-06-12 00:59:36,317.317 INFO    ] 200
[2026-06-12 00:59:36,318.318 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:59:36,341.341 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 00:59:36,483.483 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 00:59:36,485.485 INFO    ] No camera update needed
[2026-06-12 00:59:36,488.488 INFO    ] Script finished. Safe exiting...
[2026-06-12 00:59:36,490.490 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 00:59:36,495.495 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 00:59:36,501.501 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 00:59:38,542.542 INFO    ] ================================================
[2026-06-12 00:59:38,557.557 INFO    ] Launching Daemon at Fri Jun 12 00:59:38 IST 2026
[2026-06-12 00:59:38,568.568 INFO    ] ================================================
[2026-06-12 00:59:38,951.951 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 00:59:38
[2026-06-12 00:59:39,287.287 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 00:59:39,438.438 INFO    ] Initializing speech engine...
[2026-06-12 00:59:39,444.444 INFO    ] 2026-06-12 00:59:39
[2026-06-12 00:59:39,649.649 INFO    ] 2026-06-12 00:59:39
[2026-06-12 00:59:39,680.680 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 00:59:39,864.864 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 00:59:39,874.874 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 00:59:40,027.027 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 00:59:40,089.089 INFO    ] time= 12/06/2026 00:59:40
[2026-06-12 00:59:40,096.096 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 00:59:40,098.098 INFO    ] Checking for existing commands in stream...
[2026-06-12 00:59:40,164.164 INFO    ] No existing commands found in stream
[2026-06-12 00:59:45,173.173 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 00:59:45,176.176 INFO    ] Waiting 0.96 seconds before fallback handling...
[2026-06-12 00:59:46,513.513 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 00:59:46,515.515 INFO    ] Checking for system updates...
[2026-06-12 00:59:46,536.536 INFO    ] 200
[2026-06-12 00:59:46,537.537 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:59:46,567.567 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 00:59:46,569.569 INFO    ] No update needed
[2026-06-12 00:59:46,570.570 INFO    ] Checking for camera pi updates...
[2026-06-12 00:59:46,592.592 INFO    ] 200
[2026-06-12 00:59:46,593.593 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:59:46,619.619 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 00:59:46,669.669 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 00:59:46,671.671 INFO    ] No camera update needed
[2026-06-12 00:59:46,672.672 INFO    ] Script finished. Safe exiting...
[2026-06-12 00:59:46,673.673 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 00:59:46,676.676 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 00:59:46,679.679 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 00:59:48,717.717 INFO    ] ================================================
[2026-06-12 00:59:48,733.733 INFO    ] Launching Daemon at Fri Jun 12 00:59:48 IST 2026
[2026-06-12 00:59:48,743.743 INFO    ] ================================================
[2026-06-12 00:59:49,085.085 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 00:59:49
[2026-06-12 00:59:49,396.396 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 00:59:49,523.523 INFO    ] Initializing speech engine...
[2026-06-12 00:59:49,527.527 INFO    ] 2026-06-12 00:59:49
[2026-06-12 00:59:49,744.744 INFO    ] 2026-06-12 00:59:49
[2026-06-12 00:59:49,773.773 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 00:59:49,957.957 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 00:59:49,967.967 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 00:59:50,091.091 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 00:59:50,148.148 INFO    ] time= 12/06/2026 00:59:50
[2026-06-12 00:59:50,182.182 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 00:59:50,187.187 INFO    ] Checking for existing commands in stream...
[2026-06-12 00:59:50,282.282 INFO    ] No existing commands found in stream
[2026-06-12 00:59:55,291.291 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 00:59:55,294.294 INFO    ] Waiting 2.36 seconds before fallback handling...
[2026-06-12 00:59:58,050.050 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 00:59:58,051.051 INFO    ] Checking for system updates...
[2026-06-12 00:59:58,072.072 INFO    ] 200
[2026-06-12 00:59:58,074.074 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:59:58,106.106 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 00:59:58,107.107 INFO    ] No update needed
[2026-06-12 00:59:58,108.108 INFO    ] Checking for camera pi updates...
[2026-06-12 00:59:58,128.128 INFO    ] 200
[2026-06-12 00:59:58,129.129 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 00:59:58,152.152 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 00:59:58,353.353 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 00:59:58,355.355 INFO    ] No camera update needed
[2026-06-12 00:59:58,356.356 INFO    ] Script finished. Safe exiting...
[2026-06-12 00:59:58,357.357 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 00:59:58,360.360 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 00:59:58,363.363 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 01:00:00,401.401 INFO    ] ================================================
[2026-06-12 01:00:00,416.416 INFO    ] Launching Daemon at Fri Jun 12 01:00:00 IST 2026
[2026-06-12 01:00:00,427.427 INFO    ] ================================================
[2026-06-12 01:00:00,769.769 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 01:00:00
[2026-06-12 01:00:01,080.080 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 01:00:01,210.210 INFO    ] Initializing speech engine...
[2026-06-12 01:00:01,213.213 INFO    ] 2026-06-12 01:00:01
[2026-06-12 01:00:01,432.432 INFO    ] 2026-06-12 01:00:01
[2026-06-12 01:00:01,461.461 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 01:00:01,646.646 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 01:00:01,650.650 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 01:00:01,784.784 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 01:00:01,787.787 INFO    ] time= 12/06/2026 01:00:01
[2026-06-12 01:00:01,789.789 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 01:00:01,825.825 INFO    ] Checking for existing commands in stream...
[2026-06-12 01:00:01,894.894 INFO    ] No existing commands found in stream
[2026-06-12 01:00:06,903.903 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 01:00:06,906.906 INFO    ] Waiting 0.03 seconds before fallback handling...
[2026-06-12 01:00:09,839.839 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 01:00:09,842.842 INFO    ] Checking for system updates...
[2026-06-12 01:00:09,878.878 INFO    ] 200
[2026-06-12 01:00:09,881.881 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:00:09,940.940 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 01:00:09,941.941 INFO    ] No update needed
[2026-06-12 01:00:09,943.943 INFO    ] Checking for camera pi updates...
[2026-06-12 01:00:09,962.962 INFO    ] 200
[2026-06-12 01:00:09,963.963 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:00:09,986.986 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 01:00:10,033.033 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 01:00:10,034.034 INFO    ] No camera update needed
[2026-06-12 01:00:10,035.035 INFO    ] Script finished. Safe exiting...
[2026-06-12 01:00:10,036.036 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 01:00:10,039.039 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 01:00:10,042.042 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 01:00:12,084.084 INFO    ] ================================================
[2026-06-12 01:00:12,099.099 INFO    ] Launching Daemon at Fri Jun 12 01:00:12 IST 2026
[2026-06-12 01:00:12,110.110 INFO    ] ================================================
[2026-06-12 01:00:12,473.473 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 01:00:12
[2026-06-12 01:00:12,790.790 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 01:00:12,933.933 INFO    ] Initializing speech engine...
[2026-06-12 01:00:12,939.939 INFO    ] 2026-06-12 01:00:12
[2026-06-12 01:00:13,142.142 INFO    ] 2026-06-12 01:00:13
[2026-06-12 01:00:13,170.170 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 01:00:13,354.354 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 01:00:13,364.364 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 01:00:13,486.486 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 01:00:13,552.552 INFO    ] time= 12/06/2026 01:00:13
[2026-06-12 01:00:13,584.584 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 01:00:13,591.591 INFO    ] Checking for existing commands in stream...
[2026-06-12 01:00:13,657.657 INFO    ] No existing commands found in stream
[2026-06-12 01:00:18,666.666 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 01:00:18,669.669 INFO    ] Waiting 2.18 seconds before fallback handling...
[2026-06-12 01:00:21,255.255 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 01:00:21,256.256 INFO    ] Checking for system updates...
[2026-06-12 01:00:21,277.277 INFO    ] 200
[2026-06-12 01:00:21,278.278 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:00:21,308.308 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 01:00:21,309.309 INFO    ] No update needed
[2026-06-12 01:00:21,311.311 INFO    ] Checking for camera pi updates...
[2026-06-12 01:00:21,330.330 INFO    ] 200
[2026-06-12 01:00:21,332.332 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:00:21,358.358 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 01:00:21,394.394 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 01:00:21,396.396 INFO    ] No camera update needed
[2026-06-12 01:00:21,397.397 INFO    ] Script finished. Safe exiting...
[2026-06-12 01:00:21,398.398 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 01:00:21,402.402 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 01:00:21,404.404 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 01:00:23,442.442 INFO    ] ================================================
[2026-06-12 01:00:23,458.458 INFO    ] Launching Daemon at Fri Jun 12 01:00:23 IST 2026
[2026-06-12 01:00:23,468.468 INFO    ] ================================================
[2026-06-12 01:00:23,817.817 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 01:00:23
[2026-06-12 01:00:24,136.136 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 01:00:24,275.275 INFO    ] Initializing speech engine...
[2026-06-12 01:00:24,285.285 INFO    ] 2026-06-12 01:00:24
[2026-06-12 01:00:24,490.490 INFO    ] 2026-06-12 01:00:24
[2026-06-12 01:00:24,518.518 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 01:00:24,704.704 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 01:00:24,713.713 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 01:00:24,870.870 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 01:00:24,914.914 INFO    ] time= 12/06/2026 01:00:24
[2026-06-12 01:00:24,937.937 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 01:00:24,944.944 INFO    ] Checking for existing commands in stream...
[2026-06-12 01:00:25,016.016 INFO    ] No existing commands found in stream
[2026-06-12 01:00:30,031.031 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 01:00:30,034.034 INFO    ] Waiting 3.74 seconds before fallback handling...
[2026-06-12 01:00:34,154.154 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 01:00:34,156.156 INFO    ] Checking for system updates...
[2026-06-12 01:00:34,176.176 INFO    ] 200
[2026-06-12 01:00:34,178.178 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:00:34,210.210 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 01:00:34,211.211 INFO    ] No update needed
[2026-06-12 01:00:34,212.212 INFO    ] Checking for camera pi updates...
[2026-06-12 01:00:34,233.233 INFO    ] 200
[2026-06-12 01:00:34,234.234 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:00:34,259.259 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 01:00:34,299.299 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 01:00:34,300.300 INFO    ] No camera update needed
[2026-06-12 01:00:34,301.301 INFO    ] Script finished. Safe exiting...
[2026-06-12 01:00:34,303.303 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 01:00:34,305.305 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 01:00:34,308.308 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 01:00:36,346.346 INFO    ] ================================================
[2026-06-12 01:00:36,361.361 INFO    ] Launching Daemon at Fri Jun 12 01:00:36 IST 2026
[2026-06-12 01:00:36,372.372 INFO    ] ================================================
[2026-06-12 01:00:36,741.741 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 01:00:36
[2026-06-12 01:00:37,053.053 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 01:00:37,193.193 INFO    ] Initializing speech engine...
[2026-06-12 01:00:37,202.202 INFO    ] 2026-06-12 01:00:37
[2026-06-12 01:00:37,416.416 INFO    ] 2026-06-12 01:00:37
[2026-06-12 01:00:37,447.447 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 01:00:37,644.644 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 01:00:37,653.653 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 01:00:37,792.792 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 01:00:37,857.857 INFO    ] time= 12/06/2026 01:00:37
[2026-06-12 01:00:37,889.889 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 01:00:37,896.896 INFO    ] Checking for existing commands in stream...
[2026-06-12 01:00:37,993.993 INFO    ] No existing commands found in stream
[2026-06-12 01:00:43,002.002 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 01:00:43,005.005 INFO    ] Waiting 0.32 seconds before fallback handling...
[2026-06-12 01:00:43,705.705 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 01:00:43,706.706 INFO    ] Checking for system updates...
[2026-06-12 01:00:43,726.726 INFO    ] 200
[2026-06-12 01:00:43,728.728 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:00:43,762.762 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 01:00:43,764.764 INFO    ] No update needed
[2026-06-12 01:00:43,765.765 INFO    ] Checking for camera pi updates...
[2026-06-12 01:00:43,784.784 INFO    ] 200
[2026-06-12 01:00:43,786.786 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:00:43,810.810 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 01:00:43,858.858 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 01:00:43,860.860 INFO    ] No camera update needed
[2026-06-12 01:00:43,861.861 INFO    ] Script finished. Safe exiting...
[2026-06-12 01:00:43,862.862 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 01:00:43,865.865 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 01:00:43,868.868 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 01:00:45,907.907 INFO    ] ================================================
[2026-06-12 01:00:45,924.924 INFO    ] Launching Daemon at Fri Jun 12 01:00:45 IST 2026
[2026-06-12 01:00:45,935.935 INFO    ] ================================================
[2026-06-12 01:00:46,284.284 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 01:00:46
[2026-06-12 01:00:46,595.595 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 01:00:46,727.727 INFO    ] Initializing speech engine...
[2026-06-12 01:00:46,731.731 INFO    ] 2026-06-12 01:00:46
[2026-06-12 01:00:46,961.961 INFO    ] 2026-06-12 01:00:46
[2026-06-12 01:00:46,991.991 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 01:00:47,186.186 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 01:00:47,190.190 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 01:00:47,329.329 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 01:00:47,380.380 INFO    ] time= 12/06/2026 01:00:47
[2026-06-12 01:00:47,413.413 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 01:00:47,436.436 INFO    ] Checking for existing commands in stream...
[2026-06-12 01:00:47,513.513 INFO    ] No existing commands found in stream
[2026-06-12 01:00:52,522.522 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 01:00:52,525.525 INFO    ] Waiting 0.64 seconds before fallback handling...
[2026-06-12 01:00:53,573.573 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 01:00:53,575.575 INFO    ] Checking for system updates...
[2026-06-12 01:00:53,597.597 INFO    ] 200
[2026-06-12 01:00:53,598.598 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:00:53,632.632 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 01:00:53,634.634 INFO    ] No update needed
[2026-06-12 01:00:53,635.635 INFO    ] Checking for camera pi updates...
[2026-06-12 01:00:53,655.655 INFO    ] 200
[2026-06-12 01:00:53,656.656 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:00:53,681.681 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 01:00:53,718.718 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 01:00:53,719.719 INFO    ] No camera update needed
[2026-06-12 01:00:53,721.721 INFO    ] Script finished. Safe exiting...
[2026-06-12 01:00:53,722.722 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 01:00:53,726.726 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 01:00:53,728.728 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 01:00:55,767.767 INFO    ] ================================================
[2026-06-12 01:00:55,783.783 INFO    ] Launching Daemon at Fri Jun 12 01:00:55 IST 2026
[2026-06-12 01:00:55,795.795 INFO    ] ================================================
[2026-06-12 01:00:56,127.127 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 01:00:56
[2026-06-12 01:00:56,438.438 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 01:00:56,580.580 INFO    ] Initializing speech engine...
[2026-06-12 01:00:56,585.585 INFO    ] 2026-06-12 01:00:56
[2026-06-12 01:00:56,787.787 INFO    ] 2026-06-12 01:00:56
[2026-06-12 01:00:56,816.816 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 01:00:57,001.001 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 01:00:57,004.004 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 01:00:57,139.139 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 01:00:57,206.206 INFO    ] time= 12/06/2026 01:00:57
[2026-06-12 01:00:57,238.238 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 01:00:57,239.239 INFO    ] Checking for existing commands in stream...
[2026-06-12 01:00:57,330.330 INFO    ] No existing commands found in stream
[2026-06-12 01:01:02,341.341 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 01:01:02,343.343 INFO    ] Waiting 3.07 seconds before fallback handling...
[2026-06-12 01:01:05,780.780 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 01:01:05,782.782 INFO    ] Checking for system updates...
[2026-06-12 01:01:05,807.807 INFO    ] 200
[2026-06-12 01:01:05,809.809 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:01:05,840.840 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 01:01:05,841.841 INFO    ] No update needed
[2026-06-12 01:01:05,843.843 INFO    ] Checking for camera pi updates...
[2026-06-12 01:01:05,863.863 INFO    ] 200
[2026-06-12 01:01:05,864.864 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:01:05,888.888 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 01:01:05,938.938 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 01:01:05,940.940 INFO    ] No camera update needed
[2026-06-12 01:01:05,941.941 INFO    ] Script finished. Safe exiting...
[2026-06-12 01:01:05,942.942 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 01:01:05,946.946 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 01:01:05,948.948 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 01:01:07,989.989 INFO    ] ================================================
[2026-06-12 01:01:08,005.005 INFO    ] Launching Daemon at Fri Jun 12 01:01:07 IST 2026
[2026-06-12 01:01:08,016.016 INFO    ] ================================================
[2026-06-12 01:01:08,367.367 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 01:01:08
[2026-06-12 01:01:08,678.678 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 01:01:08,813.813 INFO    ] Initializing speech engine...
[2026-06-12 01:01:08,826.826 INFO    ] 2026-06-12 01:01:08
[2026-06-12 01:01:09,046.046 INFO    ] 2026-06-12 01:01:09
[2026-06-12 01:01:09,077.077 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 01:01:09,267.267 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 01:01:09,277.277 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 01:01:09,420.420 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 01:01:09,483.483 INFO    ] time= 12/06/2026 01:01:09
[2026-06-12 01:01:09,512.512 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 01:01:09,524.524 INFO    ] Checking for existing commands in stream...
[2026-06-12 01:01:09,598.598 INFO    ] No existing commands found in stream
[2026-06-12 01:01:14,609.609 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 01:01:14,612.612 INFO    ] Waiting 2.77 seconds before fallback handling...
[2026-06-12 01:01:17,757.757 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 01:01:17,759.759 INFO    ] Checking for system updates...
[2026-06-12 01:01:17,781.781 INFO    ] 200
[2026-06-12 01:01:17,782.782 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:01:17,812.812 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 01:01:17,813.813 INFO    ] No update needed
[2026-06-12 01:01:17,815.815 INFO    ] Checking for camera pi updates...
[2026-06-12 01:01:17,835.835 INFO    ] 200
[2026-06-12 01:01:17,836.836 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:01:17,861.861 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 01:01:17,905.905 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 01:01:17,906.906 INFO    ] No camera update needed
[2026-06-12 01:01:17,907.907 INFO    ] Script finished. Safe exiting...
[2026-06-12 01:01:17,908.908 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 01:01:17,912.912 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 01:01:17,914.914 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 01:01:19,953.953 INFO    ] ================================================
[2026-06-12 01:01:19,968.968 INFO    ] Launching Daemon at Fri Jun 12 01:01:19 IST 2026
[2026-06-12 01:01:19,979.979 INFO    ] ================================================
[2026-06-12 01:01:20,355.355 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 01:01:20
[2026-06-12 01:01:20,692.692 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 01:01:20,833.833 INFO    ] Initializing speech engine...
[2026-06-12 01:01:20,846.846 INFO    ] 2026-06-12 01:01:20
[2026-06-12 01:01:21,060.060 INFO    ] 2026-06-12 01:01:21
[2026-06-12 01:01:21,090.090 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 01:01:21,278.278 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 01:01:21,288.288 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 01:01:21,419.419 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 01:01:21,487.487 INFO    ] time= 12/06/2026 01:01:21
[2026-06-12 01:01:21,512.512 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 01:01:21,519.519 INFO    ] Checking for existing commands in stream...
[2026-06-12 01:01:21,586.586 INFO    ] No existing commands found in stream
[2026-06-12 01:01:26,595.595 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 01:01:26,599.599 INFO    ] Waiting 3.05 seconds before fallback handling...
[2026-06-12 01:01:30,053.053 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 01:01:30,054.054 INFO    ] Checking for system updates...
[2026-06-12 01:01:30,075.075 INFO    ] 200
[2026-06-12 01:01:30,077.077 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:01:30,107.107 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 01:01:30,108.108 INFO    ] No update needed
[2026-06-12 01:01:30,110.110 INFO    ] Checking for camera pi updates...
[2026-06-12 01:01:30,130.130 INFO    ] 200
[2026-06-12 01:01:30,132.132 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:01:30,155.155 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 01:01:30,210.210 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 01:01:30,212.212 INFO    ] No camera update needed
[2026-06-12 01:01:30,213.213 INFO    ] Script finished. Safe exiting...
[2026-06-12 01:01:30,215.215 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 01:01:30,218.218 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 01:01:30,221.221 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 01:01:32,253.253 INFO    ] ================================================
[2026-06-12 01:01:32,262.262 INFO    ] Launching Daemon at Fri Jun 12 01:01:32 IST 2026
[2026-06-12 01:01:32,269.269 INFO    ] ================================================
[2026-06-12 01:01:32,641.641 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 01:01:32
[2026-06-12 01:01:32,958.958 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 01:01:33,102.102 INFO    ] Initializing speech engine...
[2026-06-12 01:01:33,107.107 INFO    ] 2026-06-12 01:01:33
[2026-06-12 01:01:33,312.312 INFO    ] 2026-06-12 01:01:33
[2026-06-12 01:01:33,341.341 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 01:01:33,525.525 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 01:01:33,534.534 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 01:01:33,660.660 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 01:01:33,721.721 INFO    ] time= 12/06/2026 01:01:33
[2026-06-12 01:01:33,753.753 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 01:01:33,755.755 INFO    ] Checking for existing commands in stream...
[2026-06-12 01:01:33,826.826 INFO    ] No existing commands found in stream
[2026-06-12 01:01:38,835.835 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 01:01:38,838.838 INFO    ] Waiting 0.82 seconds before fallback handling...
[2026-06-12 01:01:40,036.036 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 01:01:40,038.038 INFO    ] Checking for system updates...
[2026-06-12 01:01:40,059.059 INFO    ] 200
[2026-06-12 01:01:40,060.060 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:01:40,091.091 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 01:01:40,093.093 INFO    ] No update needed
[2026-06-12 01:01:40,094.094 INFO    ] Checking for camera pi updates...
[2026-06-12 01:01:40,114.114 INFO    ] 200
[2026-06-12 01:01:40,115.115 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:01:40,141.141 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 01:01:40,282.282 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 01:01:40,284.284 INFO    ] No camera update needed
[2026-06-12 01:01:40,285.285 INFO    ] Script finished. Safe exiting...
[2026-06-12 01:01:40,286.286 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 01:01:40,289.289 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 01:01:40,292.292 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 01:01:42,332.332 INFO    ] ================================================
[2026-06-12 01:01:42,347.347 INFO    ] Launching Daemon at Fri Jun 12 01:01:42 IST 2026
[2026-06-12 01:01:42,359.359 INFO    ] ================================================
[2026-06-12 01:01:42,718.718 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 01:01:42
[2026-06-12 01:01:43,035.035 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 01:01:43,180.180 INFO    ] Initializing speech engine...
[2026-06-12 01:01:43,185.185 INFO    ] 2026-06-12 01:01:43
[2026-06-12 01:01:43,390.390 INFO    ] 2026-06-12 01:01:43
[2026-06-12 01:01:43,418.418 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 01:01:43,601.601 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 01:01:43,605.605 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 01:01:43,741.741 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 01:01:43,808.808 INFO    ] time= 12/06/2026 01:01:43
[2026-06-12 01:01:43,832.832 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 01:01:43,838.838 INFO    ] Checking for existing commands in stream...
[2026-06-12 01:01:44,043.043 INFO    ] No existing commands found in stream
[2026-06-12 01:01:49,055.055 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 01:01:49,069.069 INFO    ] Waiting 3.05 seconds before fallback handling...
[2026-06-12 01:01:52,461.461 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 01:01:52,462.462 INFO    ] Checking for system updates...
[2026-06-12 01:01:52,483.483 INFO    ] 200
[2026-06-12 01:01:52,484.484 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:01:52,517.517 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 01:01:52,518.518 INFO    ] No update needed
[2026-06-12 01:01:52,519.519 INFO    ] Checking for camera pi updates...
[2026-06-12 01:01:52,540.540 INFO    ] 200
[2026-06-12 01:01:52,542.542 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:01:52,568.568 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 01:01:52,607.607 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 01:01:52,608.608 INFO    ] No camera update needed
[2026-06-12 01:01:52,610.610 INFO    ] Script finished. Safe exiting...
[2026-06-12 01:01:52,611.611 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 01:01:52,614.614 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 01:01:52,617.617 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 01:01:54,657.657 INFO    ] ================================================
[2026-06-12 01:01:54,673.673 INFO    ] Launching Daemon at Fri Jun 12 01:01:54 IST 2026
[2026-06-12 01:01:54,684.684 INFO    ] ================================================
[2026-06-12 01:01:55,035.035 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 01:01:55
[2026-06-12 01:01:55,353.353 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 01:01:55,487.487 INFO    ] Initializing speech engine...
[2026-06-12 01:01:55,499.499 INFO    ] 2026-06-12 01:01:55
[2026-06-12 01:01:55,706.706 INFO    ] 2026-06-12 01:01:55
[2026-06-12 01:01:55,734.734 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 01:01:55,876.876 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 01:01:55,877.877 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 01:01:56,041.041 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 01:01:56,063.063 INFO    ] time= 12/06/2026 01:01:56
[2026-06-12 01:01:56,129.129 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 01:01:56,153.153 INFO    ] Checking for existing commands in stream...
[2026-06-12 01:01:56,234.234 INFO    ] No existing commands found in stream
[2026-06-12 01:02:01,243.243 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 01:02:01,246.246 INFO    ] Waiting 0.35 seconds before fallback handling...
[2026-06-12 01:02:02,002.002 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 01:02:02,003.003 INFO    ] Checking for system updates...
[2026-06-12 01:02:02,060.060 INFO    ] 200
[2026-06-12 01:02:02,062.062 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:02:02,114.114 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 01:02:02,116.116 INFO    ] No update needed
[2026-06-12 01:02:02,121.121 INFO    ] Checking for camera pi updates...
[2026-06-12 01:02:02,148.148 INFO    ] 200
[2026-06-12 01:02:02,150.150 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:02:02,178.178 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 01:02:02,214.214 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 01:02:02,216.216 INFO    ] No camera update needed
[2026-06-12 01:02:02,218.218 INFO    ] Script finished. Safe exiting...
[2026-06-12 01:02:02,219.219 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 01:02:02,224.224 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 01:02:02,228.228 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 01:02:04,269.269 INFO    ] ================================================
[2026-06-12 01:02:04,284.284 INFO    ] Launching Daemon at Fri Jun 12 01:02:04 IST 2026
[2026-06-12 01:02:04,295.295 INFO    ] ================================================
[2026-06-12 01:02:04,682.682 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 01:02:04
[2026-06-12 01:02:05,017.017 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 01:02:05,170.170 INFO    ] Initializing speech engine...
[2026-06-12 01:02:05,175.175 INFO    ] 2026-06-12 01:02:05
[2026-06-12 01:02:05,385.385 INFO    ] 2026-06-12 01:02:05
[2026-06-12 01:02:05,415.415 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 01:02:05,602.602 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 01:02:05,606.606 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 01:02:05,743.743 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 01:02:05,801.801 INFO    ] time= 12/06/2026 01:02:05
[2026-06-12 01:02:05,838.838 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 01:02:05,844.844 INFO    ] Checking for existing commands in stream...
[2026-06-12 01:02:05,916.916 INFO    ] No existing commands found in stream
[2026-06-12 01:02:10,931.931 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 01:02:10,934.934 INFO    ] Waiting 1.61 seconds before fallback handling...
[2026-06-12 01:02:12,928.928 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 01:02:12,930.930 INFO    ] Checking for system updates...
[2026-06-12 01:02:12,952.952 INFO    ] 200
[2026-06-12 01:02:12,953.953 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:02:12,984.984 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 01:02:12,985.985 INFO    ] No update needed
[2026-06-12 01:02:12,987.987 INFO    ] Checking for camera pi updates...
[2026-06-12 01:02:13,009.009 INFO    ] 200
[2026-06-12 01:02:13,010.010 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:02:13,038.038 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 01:02:13,081.081 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 01:02:13,083.083 INFO    ] No camera update needed
[2026-06-12 01:02:13,084.084 INFO    ] Script finished. Safe exiting...
[2026-06-12 01:02:13,085.085 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 01:02:13,088.088 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 01:02:13,092.092 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 01:02:15,132.132 INFO    ] ================================================
[2026-06-12 01:02:15,147.147 INFO    ] Launching Daemon at Fri Jun 12 01:02:15 IST 2026
[2026-06-12 01:02:15,157.157 INFO    ] ================================================
[2026-06-12 01:02:15,515.515 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 01:02:15
[2026-06-12 01:02:15,831.831 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 01:02:15,963.963 INFO    ] Initializing speech engine...
[2026-06-12 01:02:15,970.970 INFO    ] 2026-06-12 01:02:15
[2026-06-12 01:02:16,182.182 INFO    ] 2026-06-12 01:02:16
[2026-06-12 01:02:16,213.213 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 01:02:16,395.395 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 01:02:16,404.404 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 01:02:16,530.530 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 01:02:16,587.587 INFO    ] time= 12/06/2026 01:02:16
[2026-06-12 01:02:16,622.622 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 01:02:16,627.627 INFO    ] Checking for existing commands in stream...
[2026-06-12 01:02:16,699.699 INFO    ] No existing commands found in stream
[2026-06-12 01:02:21,708.708 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 01:02:21,711.711 INFO    ] Waiting 1.87 seconds before fallback handling...
[2026-06-12 01:02:23,958.958 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 01:02:23,960.960 INFO    ] Checking for system updates...
[2026-06-12 01:02:23,981.981 INFO    ] 200
[2026-06-12 01:02:23,982.982 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:02:24,015.015 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 01:02:24,016.016 INFO    ] No update needed
[2026-06-12 01:02:24,018.018 INFO    ] Checking for camera pi updates...
[2026-06-12 01:02:24,041.041 INFO    ] 200
[2026-06-12 01:02:24,042.042 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:02:24,068.068 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 01:02:24,110.110 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 01:02:24,112.112 INFO    ] No camera update needed
[2026-06-12 01:02:24,113.113 INFO    ] Script finished. Safe exiting...
[2026-06-12 01:02:24,114.114 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 01:02:24,117.117 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 01:02:24,120.120 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 01:02:26,161.161 INFO    ] ================================================
[2026-06-12 01:02:26,177.177 INFO    ] Launching Daemon at Fri Jun 12 01:02:26 IST 2026
[2026-06-12 01:02:26,188.188 INFO    ] ================================================
[2026-06-12 01:02:26,544.544 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 01:02:26
[2026-06-12 01:02:26,861.861 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 01:02:26,995.995 INFO    ] Initializing speech engine...
[2026-06-12 01:02:27,009.009 INFO    ] 2026-06-12 01:02:27
[2026-06-12 01:02:27,215.215 INFO    ] 2026-06-12 01:02:27
[2026-06-12 01:02:27,244.244 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 01:02:27,426.426 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 01:02:27,437.437 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 01:02:27,582.582 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 01:02:27,635.635 INFO    ] time= 12/06/2026 01:02:27
[2026-06-12 01:02:27,658.658 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 01:02:27,664.664 INFO    ] Checking for existing commands in stream...
[2026-06-12 01:02:27,731.731 INFO    ] No existing commands found in stream
[2026-06-12 01:02:32,739.739 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 01:02:32,740.740 INFO    ] Waiting 2.44 seconds before fallback handling...
[2026-06-12 01:02:35,569.569 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 01:02:35,570.570 INFO    ] Checking for system updates...
[2026-06-12 01:02:35,591.591 INFO    ] 200
[2026-06-12 01:02:35,593.593 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:02:35,623.623 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 01:02:35,624.624 INFO    ] No update needed
[2026-06-12 01:02:35,626.626 INFO    ] Checking for camera pi updates...
[2026-06-12 01:02:35,645.645 INFO    ] 200
[2026-06-12 01:02:35,646.646 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:02:35,669.669 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 01:02:35,715.715 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 01:02:35,716.716 INFO    ] No camera update needed
[2026-06-12 01:02:35,717.717 INFO    ] Script finished. Safe exiting...
[2026-06-12 01:02:35,719.719 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 01:02:35,722.722 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 01:02:35,724.724 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 01:02:37,764.764 INFO    ] ================================================
[2026-06-12 01:02:37,780.780 INFO    ] Launching Daemon at Fri Jun 12 01:02:37 IST 2026
[2026-06-12 01:02:37,847.847 INFO    ] ================================================
[2026-06-12 01:02:38,233.233 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 01:02:38
[2026-06-12 01:02:38,551.551 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 01:02:38,689.689 INFO    ] Initializing speech engine...
[2026-06-12 01:02:38,699.699 INFO    ] 2026-06-12 01:02:38
[2026-06-12 01:02:38,903.903 INFO    ] 2026-06-12 01:02:38
[2026-06-12 01:02:38,930.930 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 01:02:39,115.115 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 01:02:39,123.123 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 01:02:39,263.263 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 01:02:39,321.321 INFO    ] time= 12/06/2026 01:02:39
[2026-06-12 01:02:39,344.344 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 01:02:39,349.349 INFO    ] Checking for existing commands in stream...
[2026-06-12 01:02:39,441.441 INFO    ] No existing commands found in stream
[2026-06-12 01:02:44,450.450 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 01:02:44,453.453 INFO    ] Waiting 0.97 seconds before fallback handling...
[2026-06-12 01:02:45,812.812 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 01:02:45,813.813 INFO    ] Checking for system updates...
[2026-06-12 01:02:45,834.834 INFO    ] 200
[2026-06-12 01:02:45,835.835 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:02:45,866.866 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 01:02:45,867.867 INFO    ] No update needed
[2026-06-12 01:02:45,868.868 INFO    ] Checking for camera pi updates...
[2026-06-12 01:02:45,889.889 INFO    ] 200
[2026-06-12 01:02:45,890.890 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:02:45,915.915 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 01:02:45,963.963 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 01:02:45,965.965 INFO    ] No camera update needed
[2026-06-12 01:02:45,966.966 INFO    ] Script finished. Safe exiting...
[2026-06-12 01:02:45,967.967 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 01:02:45,970.970 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 01:02:45,973.973 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 01:02:48,011.011 INFO    ] ================================================
[2026-06-12 01:02:48,026.026 INFO    ] Launching Daemon at Fri Jun 12 01:02:48 IST 2026
[2026-06-12 01:02:48,038.038 INFO    ] ================================================
[2026-06-12 01:02:48,390.390 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 01:02:48
[2026-06-12 01:02:48,701.701 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 01:02:48,831.831 INFO    ] Initializing speech engine...
[2026-06-12 01:02:48,839.839 INFO    ] 2026-06-12 01:02:48
[2026-06-12 01:02:49,049.049 INFO    ] 2026-06-12 01:02:49
[2026-06-12 01:02:49,077.077 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 01:02:49,262.262 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 01:02:49,271.271 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 01:02:49,401.401 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 01:02:49,467.467 INFO    ] time= 12/06/2026 01:02:49
[2026-06-12 01:02:49,491.491 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 01:02:49,497.497 INFO    ] Checking for existing commands in stream...
[2026-06-12 01:02:49,588.588 INFO    ] No existing commands found in stream
[2026-06-12 01:02:54,597.597 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 01:02:54,600.600 INFO    ] Waiting 0.47 seconds before fallback handling...
[2026-06-12 01:02:55,516.516 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 01:02:55,518.518 INFO    ] Checking for system updates...
[2026-06-12 01:02:55,538.538 INFO    ] 200
[2026-06-12 01:02:55,540.540 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:02:55,570.570 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 01:02:55,572.572 INFO    ] No update needed
[2026-06-12 01:02:55,573.573 INFO    ] Checking for camera pi updates...
[2026-06-12 01:02:55,593.593 INFO    ] 200
[2026-06-12 01:02:55,595.595 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:02:55,618.618 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 01:02:55,663.663 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 01:02:55,665.665 INFO    ] No camera update needed
[2026-06-12 01:02:55,666.666 INFO    ] Script finished. Safe exiting...
[2026-06-12 01:02:55,667.667 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 01:02:55,670.670 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 01:02:55,673.673 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 01:02:57,712.712 INFO    ] ================================================
[2026-06-12 01:02:57,728.728 INFO    ] Launching Daemon at Fri Jun 12 01:02:57 IST 2026
[2026-06-12 01:02:57,739.739 INFO    ] ================================================
[2026-06-12 01:02:58,105.105 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 01:02:58
[2026-06-12 01:02:58,422.422 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 01:02:58,554.554 INFO    ] Initializing speech engine...
[2026-06-12 01:02:58,557.557 INFO    ] 2026-06-12 01:02:58
[2026-06-12 01:02:58,775.775 INFO    ] 2026-06-12 01:02:58
[2026-06-12 01:02:58,804.804 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 01:02:58,988.988 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 01:02:58,991.991 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 01:02:59,143.143 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 01:02:59,196.196 INFO    ] time= 12/06/2026 01:02:59
[2026-06-12 01:02:59,219.219 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 01:02:59,225.225 INFO    ] Checking for existing commands in stream...
[2026-06-12 01:02:59,292.292 INFO    ] No existing commands found in stream
[2026-06-12 01:03:04,301.301 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 01:03:04,304.304 INFO    ] Waiting 0.93 seconds before fallback handling...
[2026-06-12 01:03:05,621.621 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 01:03:05,623.623 INFO    ] Checking for system updates...
[2026-06-12 01:03:05,643.643 INFO    ] 200
[2026-06-12 01:03:05,645.645 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:03:05,677.677 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 01:03:05,679.679 INFO    ] No update needed
[2026-06-12 01:03:05,680.680 INFO    ] Checking for camera pi updates...
[2026-06-12 01:03:05,699.699 INFO    ] 200
[2026-06-12 01:03:05,701.701 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:03:05,727.727 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 01:03:05,768.768 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 01:03:05,770.770 INFO    ] No camera update needed
[2026-06-12 01:03:05,771.771 INFO    ] Script finished. Safe exiting...
[2026-06-12 01:03:05,772.772 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 01:03:05,775.775 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 01:03:05,778.778 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 01:03:07,817.817 INFO    ] ================================================
[2026-06-12 01:03:07,833.833 INFO    ] Launching Daemon at Fri Jun 12 01:03:07 IST 2026
[2026-06-12 01:03:07,844.844 INFO    ] ================================================
[2026-06-12 01:03:08,203.203 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 01:03:08
[2026-06-12 01:03:08,519.519 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 01:03:08,661.661 INFO    ] Initializing speech engine...
[2026-06-12 01:03:08,667.667 INFO    ] 2026-06-12 01:03:08
[2026-06-12 01:03:08,869.869 INFO    ] 2026-06-12 01:03:08
[2026-06-12 01:03:08,896.896 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 01:03:09,080.080 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 01:03:09,091.091 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 01:03:09,238.238 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 01:03:09,286.286 INFO    ] time= 12/06/2026 01:03:09
[2026-06-12 01:03:09,308.308 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 01:03:09,314.314 INFO    ] Checking for existing commands in stream...
[2026-06-12 01:03:09,380.380 INFO    ] No existing commands found in stream
[2026-06-12 01:03:14,395.395 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 01:03:14,397.397 INFO    ] Waiting 2.83 seconds before fallback handling...
[2026-06-12 01:03:17,631.631 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 01:03:17,632.632 INFO    ] Checking for system updates...
[2026-06-12 01:03:17,654.654 INFO    ] 200
[2026-06-12 01:03:17,655.655 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:03:17,686.686 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 01:03:17,687.687 INFO    ] No update needed
[2026-06-12 01:03:17,689.689 INFO    ] Checking for camera pi updates...
[2026-06-12 01:03:17,708.708 INFO    ] 200
[2026-06-12 01:03:17,709.709 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:03:17,733.733 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 01:03:17,778.778 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 01:03:17,779.779 INFO    ] No camera update needed
[2026-06-12 01:03:17,781.781 INFO    ] Script finished. Safe exiting...
[2026-06-12 01:03:17,782.782 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 01:03:17,785.785 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 01:03:17,788.788 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 01:03:19,830.830 INFO    ] ================================================
[2026-06-12 01:03:19,845.845 INFO    ] Launching Daemon at Fri Jun 12 01:03:19 IST 2026
[2026-06-12 01:03:19,857.857 INFO    ] ================================================
[2026-06-12 01:03:20,215.215 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 01:03:20
[2026-06-12 01:03:20,527.527 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 01:03:20,662.662 INFO    ] Initializing speech engine...
[2026-06-12 01:03:20,674.674 INFO    ] 2026-06-12 01:03:20
[2026-06-12 01:03:20,881.881 INFO    ] 2026-06-12 01:03:20
[2026-06-12 01:03:20,912.912 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 01:03:21,097.097 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 01:03:21,107.107 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 01:03:21,239.239 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 01:03:21,303.303 INFO    ] time= 12/06/2026 01:03:21
[2026-06-12 01:03:21,331.331 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 01:03:21,333.333 INFO    ] Checking for existing commands in stream...
[2026-06-12 01:03:21,406.406 INFO    ] No existing commands found in stream
[2026-06-12 01:03:26,420.420 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 01:03:26,423.423 INFO    ] Waiting 1.54 seconds before fallback handling...
[2026-06-12 01:03:28,355.355 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 01:03:28,358.358 INFO    ] Checking for system updates...
[2026-06-12 01:03:28,395.395 INFO    ] 200
[2026-06-12 01:03:28,398.398 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:03:28,452.452 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 01:03:28,454.454 INFO    ] No update needed
[2026-06-12 01:03:28,456.456 INFO    ] Checking for camera pi updates...
[2026-06-12 01:03:28,486.486 INFO    ] 200
[2026-06-12 01:03:28,488.488 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:03:28,511.511 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 01:03:28,553.553 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 01:03:28,554.554 INFO    ] No camera update needed
[2026-06-12 01:03:28,555.555 INFO    ] Script finished. Safe exiting...
[2026-06-12 01:03:28,556.556 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 01:03:28,559.559 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 01:03:28,562.562 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 01:03:30,600.600 INFO    ] ================================================
[2026-06-12 01:03:30,616.616 INFO    ] Launching Daemon at Fri Jun 12 01:03:30 IST 2026
[2026-06-12 01:03:30,632.632 INFO    ] ================================================
[2026-06-12 01:03:30,990.990 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 01:03:30
[2026-06-12 01:03:31,306.306 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 01:03:31,448.448 INFO    ] Initializing speech engine...
[2026-06-12 01:03:31,454.454 INFO    ] 2026-06-12 01:03:31
[2026-06-12 01:03:31,657.657 INFO    ] 2026-06-12 01:03:31
[2026-06-12 01:03:31,686.686 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 01:03:31,870.870 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 01:03:31,879.879 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 01:03:32,005.005 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 01:03:32,056.056 INFO    ] time= 12/06/2026 01:03:32
[2026-06-12 01:03:32,109.109 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 01:03:32,116.116 INFO    ] Checking for existing commands in stream...
[2026-06-12 01:03:32,209.209 INFO    ] No existing commands found in stream
[2026-06-12 01:03:37,223.223 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 01:03:37,226.226 INFO    ] Waiting 0.35 seconds before fallback handling...
[2026-06-12 01:03:37,950.950 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 01:03:37,951.951 INFO    ] Checking for system updates...
[2026-06-12 01:03:37,972.972 INFO    ] 200
[2026-06-12 01:03:37,973.973 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:03:38,004.004 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 01:03:38,005.005 INFO    ] No update needed
[2026-06-12 01:03:38,006.006 INFO    ] Checking for camera pi updates...
[2026-06-12 01:03:38,029.029 INFO    ] 200
[2026-06-12 01:03:38,031.031 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:03:38,058.058 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 01:03:38,110.110 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 01:03:38,112.112 INFO    ] No camera update needed
[2026-06-12 01:03:38,113.113 INFO    ] Script finished. Safe exiting...
[2026-06-12 01:03:38,114.114 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 01:03:38,117.117 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 01:03:38,120.120 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 01:03:40,162.162 INFO    ] ================================================
[2026-06-12 01:03:40,178.178 INFO    ] Launching Daemon at Fri Jun 12 01:03:40 IST 2026
[2026-06-12 01:03:40,188.188 INFO    ] ================================================
[2026-06-12 01:03:40,531.531 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 01:03:40
[2026-06-12 01:03:40,849.849 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 01:03:40,987.987 INFO    ] Initializing speech engine...
[2026-06-12 01:03:40,998.998 INFO    ] 2026-06-12 01:03:40
[2026-06-12 01:03:41,203.203 INFO    ] 2026-06-12 01:03:41
[2026-06-12 01:03:41,231.231 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 01:03:41,413.413 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 01:03:41,417.417 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 01:03:41,550.550 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 01:03:41,616.616 INFO    ] time= 12/06/2026 01:03:41
[2026-06-12 01:03:41,644.644 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 01:03:41,650.650 INFO    ] Checking for existing commands in stream...
[2026-06-12 01:03:41,740.740 INFO    ] No existing commands found in stream
[2026-06-12 01:03:46,749.749 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 01:03:46,752.752 INFO    ] Waiting 1.00 seconds before fallback handling...
[2026-06-12 01:03:48,147.147 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 01:03:48,148.148 INFO    ] Checking for system updates...
[2026-06-12 01:03:48,169.169 INFO    ] 200
[2026-06-12 01:03:48,171.171 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:03:48,203.203 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 01:03:48,204.204 INFO    ] No update needed
[2026-06-12 01:03:48,206.206 INFO    ] Checking for camera pi updates...
[2026-06-12 01:03:48,226.226 INFO    ] 200
[2026-06-12 01:03:48,228.228 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:03:48,251.251 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 01:03:48,398.398 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 01:03:48,399.399 INFO    ] No camera update needed
[2026-06-12 01:03:48,401.401 INFO    ] Script finished. Safe exiting...
[2026-06-12 01:03:48,402.402 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 01:03:48,405.405 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 01:03:48,408.408 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 01:03:50,455.455 INFO    ] ================================================
[2026-06-12 01:03:50,470.470 INFO    ] Launching Daemon at Fri Jun 12 01:03:50 IST 2026
[2026-06-12 01:03:50,481.481 INFO    ] ================================================
[2026-06-12 01:03:50,840.840 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 01:03:50
[2026-06-12 01:03:51,154.154 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 01:03:51,284.284 INFO    ] Initializing speech engine...
[2026-06-12 01:03:51,293.293 INFO    ] 2026-06-12 01:03:51
[2026-06-12 01:03:51,505.505 INFO    ] 2026-06-12 01:03:51
[2026-06-12 01:03:51,533.533 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 01:03:51,717.717 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 01:03:51,721.721 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 01:03:51,855.855 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 01:03:51,914.914 INFO    ] time= 12/06/2026 01:03:51
[2026-06-12 01:03:51,946.946 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 01:03:51,953.953 INFO    ] Checking for existing commands in stream...
[2026-06-12 01:03:52,044.044 INFO    ] No existing commands found in stream
[2026-06-12 01:03:57,057.057 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 01:03:57,060.060 INFO    ] Waiting 3.91 seconds before fallback handling...
[2026-06-12 01:04:01,358.358 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 01:04:01,361.361 INFO    ] Checking for system updates...
[2026-06-12 01:04:01,397.397 INFO    ] 200
[2026-06-12 01:04:01,399.399 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:04:01,440.440 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 01:04:01,442.442 INFO    ] No update needed
[2026-06-12 01:04:01,444.444 INFO    ] Checking for camera pi updates...
[2026-06-12 01:04:01,470.470 INFO    ] 200
[2026-06-12 01:04:01,472.472 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:04:01,499.499 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 01:04:01,533.533 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 01:04:01,535.535 INFO    ] No camera update needed
[2026-06-12 01:04:01,537.537 INFO    ] Script finished. Safe exiting...
[2026-06-12 01:04:01,539.539 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 01:04:01,543.543 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 01:04:01,547.547 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 01:04:03,579.579 INFO    ] ================================================
[2026-06-12 01:04:03,594.594 INFO    ] Launching Daemon at Fri Jun 12 01:04:03 IST 2026
[2026-06-12 01:04:03,605.605 INFO    ] ================================================
[2026-06-12 01:04:03,950.950 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 01:04:03
[2026-06-12 01:04:04,261.261 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 01:04:04,392.392 INFO    ] Initializing speech engine...
[2026-06-12 01:04:04,400.400 INFO    ] 2026-06-12 01:04:04
[2026-06-12 01:04:04,614.614 INFO    ] 2026-06-12 01:04:04
[2026-06-12 01:04:04,643.643 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 01:04:04,829.829 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 01:04:04,837.837 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 01:04:04,970.970 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 01:04:05,038.038 INFO    ] time= 12/06/2026 01:04:04
[2026-06-12 01:04:05,062.062 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 01:04:05,069.069 INFO    ] Checking for existing commands in stream...
[2026-06-12 01:04:05,160.160 INFO    ] No existing commands found in stream
[2026-06-12 01:04:10,168.168 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 01:04:10,170.170 INFO    ] Waiting 0.43 seconds before fallback handling...
[2026-06-12 01:04:10,958.958 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 01:04:10,960.960 INFO    ] Checking for system updates...
[2026-06-12 01:04:11,062.062 INFO    ] 200
[2026-06-12 01:04:11,063.063 INFO    ] {"msg": "Status of machine", "state": "STATE_HEALTH_CHECK", "status": true}
[2026-06-12 01:04:11,065.065 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping update check
[2026-06-12 01:04:11,067.067 INFO    ] Checking for camera pi updates...
[2026-06-12 01:04:11,096.096 INFO    ] 200
[2026-06-12 01:04:11,098.098 INFO    ] {"msg": "Status of machine", "state": "STATE_HEALTH_CHECK", "status": true}
[2026-06-12 01:04:11,099.099 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping camera update check
[2026-06-12 01:04:11,101.101 INFO    ] Script finished. Safe exiting...
[2026-06-12 01:04:11,103.103 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 01:04:11,106.106 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 01:04:11,109.109 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 01:04:13,142.142 INFO    ] ================================================
[2026-06-12 01:04:13,157.157 INFO    ] Launching Daemon at Fri Jun 12 01:04:13 IST 2026
[2026-06-12 01:04:13,168.168 INFO    ] ================================================
[2026-06-12 01:04:13,511.511 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 01:04:13
[2026-06-12 01:04:13,827.827 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 01:04:13,966.966 INFO    ] Initializing speech engine...
[2026-06-12 01:04:13,976.976 INFO    ] 2026-06-12 01:04:13
[2026-06-12 01:04:14,181.181 INFO    ] 2026-06-12 01:04:14
[2026-06-12 01:04:14,209.209 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 01:04:14,393.393 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 01:04:14,402.402 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 01:04:14,529.529 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 01:04:14,585.585 INFO    ] time= 12/06/2026 01:04:14
[2026-06-12 01:04:14,619.619 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 01:04:14,625.625 INFO    ] Checking for existing commands in stream...
[2026-06-12 01:04:14,697.697 INFO    ] No existing commands found in stream
[2026-06-12 01:04:19,711.711 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 01:04:19,714.714 INFO    ] Waiting 1.90 seconds before fallback handling...
[2026-06-12 01:04:21,996.996 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 01:04:21,998.998 INFO    ] Checking for system updates...
[2026-06-12 01:04:22,020.020 INFO    ] 200
[2026-06-12 01:04:22,022.022 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:04:22,052.052 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 01:04:22,054.054 INFO    ] No update needed
[2026-06-12 01:04:22,055.055 INFO    ] Checking for camera pi updates...
[2026-06-12 01:04:22,074.074 INFO    ] 200
[2026-06-12 01:04:22,076.076 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:04:22,099.099 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 01:04:22,143.143 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 01:04:22,144.144 INFO    ] No camera update needed
[2026-06-12 01:04:22,146.146 INFO    ] Script finished. Safe exiting...
[2026-06-12 01:04:22,147.147 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 01:04:22,150.150 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 01:04:22,153.153 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 01:04:24,192.192 INFO    ] ================================================
[2026-06-12 01:04:24,207.207 INFO    ] Launching Daemon at Fri Jun 12 01:04:24 IST 2026
[2026-06-12 01:04:24,218.218 INFO    ] ================================================
[2026-06-12 01:04:24,612.612 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 01:04:24
[2026-06-12 01:04:24,955.955 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 01:04:25,099.099 INFO    ] Initializing speech engine...
[2026-06-12 01:04:25,105.105 INFO    ] 2026-06-12 01:04:25
[2026-06-12 01:04:25,309.309 INFO    ] 2026-06-12 01:04:25
[2026-06-12 01:04:25,337.337 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 01:04:25,520.520 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 01:04:25,523.523 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 01:04:25,675.675 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 01:04:25,729.729 INFO    ] time= 12/06/2026 01:04:25
[2026-06-12 01:04:25,755.755 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 01:04:25,757.757 INFO    ] Checking for existing commands in stream...
[2026-06-12 01:04:25,823.823 INFO    ] No existing commands found in stream
[2026-06-12 01:04:30,832.832 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 01:04:30,835.835 INFO    ] Waiting 0.65 seconds before fallback handling...
[2026-06-12 01:04:31,816.816 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 01:04:31,817.817 INFO    ] Checking for system updates...
[2026-06-12 01:04:31,840.840 INFO    ] 200
[2026-06-12 01:04:31,841.841 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:04:31,874.874 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 01:04:31,876.876 INFO    ] No update needed
[2026-06-12 01:04:31,878.878 INFO    ] Checking for camera pi updates...
[2026-06-12 01:04:31,900.900 INFO    ] 200
[2026-06-12 01:04:31,901.901 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:04:31,929.929 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 01:04:31,965.965 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 01:04:31,967.967 INFO    ] No camera update needed
[2026-06-12 01:04:31,969.969 INFO    ] Script finished. Safe exiting...
[2026-06-12 01:04:31,971.971 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 01:04:31,975.975 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 01:04:31,978.978 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 01:04:34,018.018 INFO    ] ================================================
[2026-06-12 01:04:34,033.033 INFO    ] Launching Daemon at Fri Jun 12 01:04:34 IST 2026
[2026-06-12 01:04:34,044.044 INFO    ] ================================================
[2026-06-12 01:04:34,400.400 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 01:04:34
[2026-06-12 01:04:34,712.712 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 01:04:34,843.843 INFO    ] Initializing speech engine...
[2026-06-12 01:04:34,851.851 INFO    ] 2026-06-12 01:04:34
[2026-06-12 01:04:35,064.064 INFO    ] 2026-06-12 01:04:35
[2026-06-12 01:04:35,093.093 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 01:04:35,279.279 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 01:04:35,282.282 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 01:04:35,419.419 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 01:04:35,478.478 INFO    ] time= 12/06/2026 01:04:35
[2026-06-12 01:04:35,511.511 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 01:04:35,517.517 INFO    ] Checking for existing commands in stream...
[2026-06-12 01:04:35,584.584 INFO    ] No existing commands found in stream
[2026-06-12 01:04:40,593.593 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 01:04:40,596.596 INFO    ] Waiting 0.78 seconds before fallback handling...
[2026-06-12 01:04:41,745.745 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 01:04:41,746.746 INFO    ] Checking for system updates...
[2026-06-12 01:04:41,767.767 INFO    ] 200
[2026-06-12 01:04:41,768.768 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:04:41,799.799 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 01:04:41,800.800 INFO    ] No update needed
[2026-06-12 01:04:41,802.802 INFO    ] Checking for camera pi updates...
[2026-06-12 01:04:41,822.822 INFO    ] 200
[2026-06-12 01:04:41,824.824 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:04:41,847.847 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 01:04:41,899.899 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 01:04:41,901.901 INFO    ] No camera update needed
[2026-06-12 01:04:41,902.902 INFO    ] Script finished. Safe exiting...
[2026-06-12 01:04:41,903.903 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 01:04:41,906.906 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 01:04:41,909.909 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 01:04:43,948.948 INFO    ] ================================================
[2026-06-12 01:04:43,963.963 INFO    ] Launching Daemon at Fri Jun 12 01:04:43 IST 2026
[2026-06-12 01:04:43,974.974 INFO    ] ================================================
[2026-06-12 01:04:44,356.356 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 01:04:44
[2026-06-12 01:04:44,697.697 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 01:04:44,852.852 INFO    ] Initializing speech engine...
[2026-06-12 01:04:44,855.855 INFO    ] 2026-06-12 01:04:44
[2026-06-12 01:04:45,066.066 INFO    ] 2026-06-12 01:04:45
[2026-06-12 01:04:45,096.096 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 01:04:45,282.282 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 01:04:45,286.286 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 01:04:45,431.431 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 01:04:45,496.496 INFO    ] time= 12/06/2026 01:04:45
[2026-06-12 01:04:45,518.518 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 01:04:45,525.525 INFO    ] Checking for existing commands in stream...
[2026-06-12 01:04:45,592.592 INFO    ] No existing commands found in stream
[2026-06-12 01:04:50,626.626 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 01:04:50,636.636 INFO    ] Waiting 1.46 seconds before fallback handling...
[2026-06-12 01:04:52,464.464 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 01:04:52,466.466 INFO    ] Checking for system updates...
[2026-06-12 01:04:52,488.488 INFO    ] 200
[2026-06-12 01:04:52,489.489 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:04:52,520.520 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 01:04:52,521.521 INFO    ] No update needed
[2026-06-12 01:04:52,523.523 INFO    ] Checking for camera pi updates...
[2026-06-12 01:04:52,542.542 INFO    ] 200
[2026-06-12 01:04:52,543.543 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:04:52,566.566 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 01:04:52,609.609 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 01:04:52,611.611 INFO    ] No camera update needed
[2026-06-12 01:04:52,612.612 INFO    ] Script finished. Safe exiting...
[2026-06-12 01:04:52,613.613 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 01:04:52,616.616 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 01:04:52,619.619 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 01:04:54,659.659 INFO    ] ================================================
[2026-06-12 01:04:54,675.675 INFO    ] Launching Daemon at Fri Jun 12 01:04:54 IST 2026
[2026-06-12 01:04:54,686.686 INFO    ] ================================================
[2026-06-12 01:04:55,053.053 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 01:04:55
[2026-06-12 01:04:55,366.366 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 01:04:55,498.498 INFO    ] Initializing speech engine...
[2026-06-12 01:04:55,512.512 INFO    ] 2026-06-12 01:04:55
[2026-06-12 01:04:55,722.722 INFO    ] 2026-06-12 01:04:55
[2026-06-12 01:04:55,752.752 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 01:04:55,876.876 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 01:04:55,940.940 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 01:04:56,164.164 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 01:04:56,170.170 INFO    ] time= 12/06/2026 01:04:56
[2026-06-12 01:04:56,176.176 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 01:04:56,177.177 INFO    ] Checking for existing commands in stream...
[2026-06-12 01:04:56,247.247 INFO    ] No existing commands found in stream
[2026-06-12 01:05:01,257.257 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 01:05:01,260.260 INFO    ] Waiting 2.42 seconds before fallback handling...
[2026-06-12 01:05:04,996.996 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 01:05:04,998.998 INFO    ] Checking for system updates...
[2026-06-12 01:05:05,036.036 INFO    ] 200
[2026-06-12 01:05:05,038.038 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:05:05,091.091 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 01:05:05,094.094 INFO    ] No update needed
[2026-06-12 01:05:05,096.096 INFO    ] Checking for camera pi updates...
[2026-06-12 01:05:05,130.130 INFO    ] 200
[2026-06-12 01:05:05,132.132 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:05:05,157.157 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 01:05:05,209.209 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 01:05:05,211.211 INFO    ] No camera update needed
[2026-06-12 01:05:05,213.213 INFO    ] Script finished. Safe exiting...
[2026-06-12 01:05:05,214.214 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 01:05:05,218.218 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 01:05:05,221.221 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 01:05:07,264.264 INFO    ] ================================================
[2026-06-12 01:05:07,279.279 INFO    ] Launching Daemon at Fri Jun 12 01:05:07 IST 2026
[2026-06-12 01:05:07,289.289 INFO    ] ================================================
[2026-06-12 01:05:07,658.658 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 01:05:07
[2026-06-12 01:05:08,001.001 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 01:05:08,148.148 INFO    ] Initializing speech engine...
[2026-06-12 01:05:08,156.156 INFO    ] 2026-06-12 01:05:08
[2026-06-12 01:05:08,369.369 INFO    ] 2026-06-12 01:05:08
[2026-06-12 01:05:08,398.398 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 01:05:08,583.583 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 01:05:08,595.595 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 01:05:08,725.725 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 01:05:08,793.793 INFO    ] time= 12/06/2026 01:05:08
[2026-06-12 01:05:08,817.817 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 01:05:08,824.824 INFO    ] Checking for existing commands in stream...
[2026-06-12 01:05:08,915.915 INFO    ] No existing commands found in stream
[2026-06-12 01:05:13,940.940 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 01:05:13,943.943 INFO    ] Waiting 0.03 seconds before fallback handling...
[2026-06-12 01:05:14,389.389 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 01:05:14,391.391 INFO    ] Checking for system updates...
[2026-06-12 01:05:14,412.412 INFO    ] 200
[2026-06-12 01:05:14,414.414 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:05:14,444.444 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 01:05:14,445.445 INFO    ] No update needed
[2026-06-12 01:05:14,446.446 INFO    ] Checking for camera pi updates...
[2026-06-12 01:05:14,467.467 INFO    ] 200
[2026-06-12 01:05:14,469.469 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:05:14,492.492 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 01:05:14,532.532 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 01:05:14,534.534 INFO    ] No camera update needed
[2026-06-12 01:05:14,535.535 INFO    ] Script finished. Safe exiting...
[2026-06-12 01:05:14,536.536 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 01:05:14,539.539 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 01:05:14,542.542 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 01:05:16,582.582 INFO    ] ================================================
[2026-06-12 01:05:16,597.597 INFO    ] Launching Daemon at Fri Jun 12 01:05:16 IST 2026
[2026-06-12 01:05:16,608.608 INFO    ] ================================================
[2026-06-12 01:05:17,018.018 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 01:05:17
[2026-06-12 01:05:17,361.361 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 01:05:17,509.509 INFO    ] Initializing speech engine...
[2026-06-12 01:05:17,520.520 INFO    ] 2026-06-12 01:05:17
[2026-06-12 01:05:17,731.731 INFO    ] 2026-06-12 01:05:17
[2026-06-12 01:05:17,761.761 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 01:05:17,947.947 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 01:05:17,957.957 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 01:05:18,090.090 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 01:05:18,158.158 INFO    ] time= 12/06/2026 01:05:18
[2026-06-12 01:05:18,183.183 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 01:05:18,190.190 INFO    ] Checking for existing commands in stream...
[2026-06-12 01:05:18,258.258 INFO    ] No existing commands found in stream
[2026-06-12 01:05:23,272.272 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 01:05:23,276.276 INFO    ] Waiting 0.43 seconds before fallback handling...
[2026-06-12 01:05:24,088.088 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 01:05:24,089.089 INFO    ] Checking for system updates...
[2026-06-12 01:05:24,111.111 INFO    ] 200
[2026-06-12 01:05:24,112.112 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:05:24,143.143 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 01:05:24,144.144 INFO    ] No update needed
[2026-06-12 01:05:24,146.146 INFO    ] Checking for camera pi updates...
[2026-06-12 01:05:24,166.166 INFO    ] 200
[2026-06-12 01:05:24,167.167 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:05:24,191.191 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 01:05:24,227.227 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 01:05:24,228.228 INFO    ] No camera update needed
[2026-06-12 01:05:24,230.230 INFO    ] Script finished. Safe exiting...
[2026-06-12 01:05:24,231.231 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 01:05:24,234.234 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 01:05:24,238.238 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 01:05:26,277.277 INFO    ] ================================================
[2026-06-12 01:05:26,292.292 INFO    ] Launching Daemon at Fri Jun 12 01:05:26 IST 2026
[2026-06-12 01:05:26,303.303 INFO    ] ================================================
[2026-06-12 01:05:26,672.672 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 01:05:26
[2026-06-12 01:05:27,017.017 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 01:05:27,172.172 INFO    ] Initializing speech engine...
[2026-06-12 01:05:27,178.178 INFO    ] 2026-06-12 01:05:27
[2026-06-12 01:05:27,389.389 INFO    ] 2026-06-12 01:05:27
[2026-06-12 01:05:27,418.418 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 01:05:27,548.548 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 01:05:27,607.607 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 01:05:27,747.747 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 01:05:27,817.817 INFO    ] time= 12/06/2026 01:05:27
[2026-06-12 01:05:27,840.840 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 01:05:27,847.847 INFO    ] Checking for existing commands in stream...
[2026-06-12 01:05:27,915.915 INFO    ] No existing commands found in stream
[2026-06-12 01:05:32,947.947 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 01:05:32,949.949 INFO    ] Waiting 3.42 seconds before fallback handling...
[2026-06-12 01:05:36,690.690 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 01:05:36,691.691 INFO    ] Checking for system updates...
[2026-06-12 01:05:36,712.712 INFO    ] 200
[2026-06-12 01:05:36,714.714 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:05:36,744.744 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 01:05:36,745.745 INFO    ] No update needed
[2026-06-12 01:05:36,746.746 INFO    ] Checking for camera pi updates...
[2026-06-12 01:05:36,766.766 INFO    ] 200
[2026-06-12 01:05:36,767.767 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:05:36,792.792 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 01:05:36,839.839 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 01:05:36,841.841 INFO    ] No camera update needed
[2026-06-12 01:05:36,842.842 INFO    ] Script finished. Safe exiting...
[2026-06-12 01:05:36,843.843 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 01:05:36,846.846 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 01:05:36,849.849 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 01:05:38,888.888 INFO    ] ================================================
[2026-06-12 01:05:38,904.904 INFO    ] Launching Daemon at Fri Jun 12 01:05:38 IST 2026
[2026-06-12 01:05:38,915.915 INFO    ] ================================================
[2026-06-12 01:05:39,271.271 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 01:05:39
[2026-06-12 01:05:39,588.588 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 01:05:39,723.723 INFO    ] Initializing speech engine...
[2026-06-12 01:05:39,727.727 INFO    ] 2026-06-12 01:05:39
[2026-06-12 01:05:39,926.926 INFO    ] 2026-06-12 01:05:39
[2026-06-12 01:05:39,967.967 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 01:05:40,126.126 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 01:05:40,164.164 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 01:05:40,312.312 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 01:05:40,349.349 INFO    ] time= 12/06/2026 01:05:40
[2026-06-12 01:05:40,403.403 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 01:05:40,445.445 INFO    ] Checking for existing commands in stream...
[2026-06-12 01:05:40,533.533 INFO    ] No existing commands found in stream
[2026-06-12 01:05:45,562.562 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 01:05:45,565.565 INFO    ] Waiting 2.74 seconds before fallback handling...
[2026-06-12 01:05:48,633.633 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 01:05:48,634.634 INFO    ] Checking for system updates...
[2026-06-12 01:05:48,655.655 INFO    ] 200
[2026-06-12 01:05:48,656.656 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:05:48,686.686 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 01:05:48,687.687 INFO    ] No update needed
[2026-06-12 01:05:48,689.689 INFO    ] Checking for camera pi updates...
[2026-06-12 01:05:48,708.708 INFO    ] 200
[2026-06-12 01:05:48,710.710 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:05:48,735.735 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 01:05:48,784.784 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 01:05:48,785.785 INFO    ] No camera update needed
[2026-06-12 01:05:48,787.787 INFO    ] Script finished. Safe exiting...
[2026-06-12 01:05:48,788.788 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 01:05:48,791.791 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 01:05:48,794.794 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 01:05:50,833.833 INFO    ] ================================================
[2026-06-12 01:05:50,850.850 INFO    ] Launching Daemon at Fri Jun 12 01:05:50 IST 2026
[2026-06-12 01:05:50,862.862 INFO    ] ================================================
[2026-06-12 01:05:51,208.208 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 01:05:51
[2026-06-12 01:05:51,523.523 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 01:05:51,660.660 INFO    ] Initializing speech engine...
[2026-06-12 01:05:51,674.674 INFO    ] 2026-06-12 01:05:51
[2026-06-12 01:05:51,895.895 INFO    ] 2026-06-12 01:05:51
[2026-06-12 01:05:51,926.926 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 01:05:52,061.061 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 01:05:52,129.129 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 01:05:52,273.273 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 01:05:52,314.314 INFO    ] time= 12/06/2026 01:05:52
[2026-06-12 01:05:52,358.358 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 01:05:52,383.383 INFO    ] Checking for existing commands in stream...
[2026-06-12 01:05:52,460.460 INFO    ] No existing commands found in stream
[2026-06-12 01:05:57,469.469 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 01:05:57,472.472 INFO    ] Waiting 1.35 seconds before fallback handling...
[2026-06-12 01:05:59,188.188 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 01:05:59,190.190 INFO    ] Checking for system updates...
[2026-06-12 01:05:59,211.211 INFO    ] 200
[2026-06-12 01:05:59,213.213 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:05:59,243.243 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 01:05:59,245.245 INFO    ] No update needed
[2026-06-12 01:05:59,246.246 INFO    ] Checking for camera pi updates...
[2026-06-12 01:05:59,266.266 INFO    ] 200
[2026-06-12 01:05:59,267.267 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:05:59,291.291 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 01:05:59,432.432 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 01:05:59,434.434 INFO    ] No camera update needed
[2026-06-12 01:05:59,435.435 INFO    ] Script finished. Safe exiting...
[2026-06-12 01:05:59,436.436 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 01:05:59,440.440 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 01:05:59,443.443 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 01:06:01,481.481 INFO    ] ================================================
[2026-06-12 01:06:01,497.497 INFO    ] Launching Daemon at Fri Jun 12 01:06:01 IST 2026
[2026-06-12 01:06:01,509.509 INFO    ] ================================================
[2026-06-12 01:06:01,942.942 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 01:06:01
[2026-06-12 01:06:02,324.324 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 01:06:02,497.497 INFO    ] Initializing speech engine...
[2026-06-12 01:06:02,503.503 INFO    ] 2026-06-12 01:06:02
[2026-06-12 01:06:02,758.758 INFO    ] 2026-06-12 01:06:02
[2026-06-12 01:06:02,798.798 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 01:06:02,948.948 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 01:06:02,993.993 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 01:06:03,140.140 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 01:06:03,199.199 INFO    ] time= 12/06/2026 01:06:03
[2026-06-12 01:06:03,221.221 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 01:06:03,227.227 INFO    ] Checking for existing commands in stream...
[2026-06-12 01:06:03,294.294 INFO    ] No existing commands found in stream
[2026-06-12 01:06:08,308.308 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 01:06:08,312.312 INFO    ] Waiting 0.76 seconds before fallback handling...
[2026-06-12 01:06:09,466.466 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 01:06:09,467.467 INFO    ] Checking for system updates...
[2026-06-12 01:06:09,489.489 INFO    ] 200
[2026-06-12 01:06:09,491.491 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:06:09,521.521 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 01:06:09,523.523 INFO    ] No update needed
[2026-06-12 01:06:09,524.524 INFO    ] Checking for camera pi updates...
[2026-06-12 01:06:09,546.546 INFO    ] 200
[2026-06-12 01:06:09,547.547 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:06:09,574.574 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 01:06:09,623.623 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 01:06:09,624.624 INFO    ] No camera update needed
[2026-06-12 01:06:09,626.626 INFO    ] Script finished. Safe exiting...
[2026-06-12 01:06:09,627.627 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 01:06:09,631.631 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 01:06:09,634.634 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 01:06:11,672.672 INFO    ] ================================================
[2026-06-12 01:06:11,688.688 INFO    ] Launching Daemon at Fri Jun 12 01:06:11 IST 2026
[2026-06-12 01:06:11,701.701 INFO    ] ================================================
[2026-06-12 01:06:12,048.048 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 01:06:12
[2026-06-12 01:06:12,367.367 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 01:06:12,502.502 INFO    ] Initializing speech engine...
[2026-06-12 01:06:12,506.506 INFO    ] 2026-06-12 01:06:12
[2026-06-12 01:06:12,722.722 INFO    ] 2026-06-12 01:06:12
[2026-06-12 01:06:12,753.753 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 01:06:12,937.937 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 01:06:12,946.946 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 01:06:13,085.085 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 01:06:13,143.143 INFO    ] time= 12/06/2026 01:06:13
[2026-06-12 01:06:13,166.166 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 01:06:13,171.171 INFO    ] Checking for existing commands in stream...
[2026-06-12 01:06:13,241.241 INFO    ] No existing commands found in stream
[2026-06-12 01:06:18,250.250 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 01:06:18,253.253 INFO    ] Waiting 1.20 seconds before fallback handling...
[2026-06-12 01:06:19,823.823 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 01:06:19,824.824 INFO    ] Checking for system updates...
[2026-06-12 01:06:19,845.845 INFO    ] 200
[2026-06-12 01:06:19,846.846 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:06:19,876.876 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 01:06:19,878.878 INFO    ] No update needed
[2026-06-12 01:06:19,879.879 INFO    ] Checking for camera pi updates...
[2026-06-12 01:06:19,900.900 INFO    ] 200
[2026-06-12 01:06:19,901.901 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:06:19,925.925 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 01:06:19,986.986 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 01:06:19,987.987 INFO    ] No camera update needed
[2026-06-12 01:06:19,988.988 INFO    ] Script finished. Safe exiting...
[2026-06-12 01:06:19,990.990 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 01:06:19,993.993 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 01:06:19,995.995 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 01:06:22,037.037 INFO    ] ================================================
[2026-06-12 01:06:22,053.053 INFO    ] Launching Daemon at Fri Jun 12 01:06:22 IST 2026
[2026-06-12 01:06:22,065.065 INFO    ] ================================================
[2026-06-12 01:06:22,432.432 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 01:06:22
[2026-06-12 01:06:22,744.744 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 01:06:22,878.878 INFO    ] Initializing speech engine...
[2026-06-12 01:06:22,886.886 INFO    ] 2026-06-12 01:06:22
[2026-06-12 01:06:23,098.098 INFO    ] 2026-06-12 01:06:23
[2026-06-12 01:06:23,127.127 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 01:06:23,312.312 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 01:06:23,321.321 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 01:06:23,465.465 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 01:06:23,519.519 INFO    ] time= 12/06/2026 01:06:23
[2026-06-12 01:06:23,541.541 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 01:06:23,547.547 INFO    ] Checking for existing commands in stream...
[2026-06-12 01:06:23,614.614 INFO    ] No existing commands found in stream
[2026-06-12 01:06:28,627.627 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 01:06:28,630.630 INFO    ] Waiting 3.40 seconds before fallback handling...
[2026-06-12 01:06:32,363.363 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 01:06:32,364.364 INFO    ] Checking for system updates...
[2026-06-12 01:06:32,389.389 INFO    ] 200
[2026-06-12 01:06:32,391.391 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:06:32,425.425 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 01:06:32,427.427 INFO    ] No update needed
[2026-06-12 01:06:32,428.428 INFO    ] Checking for camera pi updates...
[2026-06-12 01:06:32,450.450 INFO    ] 200
[2026-06-12 01:06:32,451.451 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:06:32,480.480 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 01:06:32,508.508 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 01:06:32,510.510 INFO    ] No camera update needed
[2026-06-12 01:06:32,512.512 INFO    ] Script finished. Safe exiting...
[2026-06-12 01:06:32,513.513 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 01:06:32,518.518 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 01:06:32,522.522 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 01:06:34,563.563 INFO    ] ================================================
[2026-06-12 01:06:34,578.578 INFO    ] Launching Daemon at Fri Jun 12 01:06:34 IST 2026
[2026-06-12 01:06:34,590.590 INFO    ] ================================================
[2026-06-12 01:06:34,942.942 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 01:06:34
[2026-06-12 01:06:35,254.254 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 01:06:35,382.382 INFO    ] Initializing speech engine...
[2026-06-12 01:06:35,385.385 INFO    ] 2026-06-12 01:06:35
[2026-06-12 01:06:35,602.602 INFO    ] 2026-06-12 01:06:35
[2026-06-12 01:06:35,630.630 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 01:06:35,814.814 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 01:06:35,822.822 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 01:06:35,948.948 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 01:06:36,014.014 INFO    ] time= 12/06/2026 01:06:35
[2026-06-12 01:06:36,042.042 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 01:06:36,048.048 INFO    ] Checking for existing commands in stream...
[2026-06-12 01:06:36,138.138 INFO    ] No existing commands found in stream
[2026-06-12 01:06:41,147.147 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 01:06:41,149.149 INFO    ] Waiting 1.41 seconds before fallback handling...
[2026-06-12 01:06:42,920.920 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 01:06:42,921.921 INFO    ] Checking for system updates...
[2026-06-12 01:06:42,943.943 INFO    ] 200
[2026-06-12 01:06:42,944.944 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:06:42,974.974 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 01:06:42,976.976 INFO    ] No update needed
[2026-06-12 01:06:42,977.977 INFO    ] Checking for camera pi updates...
[2026-06-12 01:06:42,996.996 INFO    ] 200
[2026-06-12 01:06:42,998.998 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:06:43,023.023 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 01:06:43,071.071 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 01:06:43,072.072 INFO    ] No camera update needed
[2026-06-12 01:06:43,073.073 INFO    ] Script finished. Safe exiting...
[2026-06-12 01:06:43,074.074 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 01:06:43,077.077 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 01:06:43,080.080 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 01:06:45,120.120 INFO    ] ================================================
[2026-06-12 01:06:45,137.137 INFO    ] Launching Daemon at Fri Jun 12 01:06:45 IST 2026
[2026-06-12 01:06:45,149.149 INFO    ] ================================================
[2026-06-12 01:06:45,546.546 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 01:06:45
[2026-06-12 01:06:45,872.872 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 01:06:46,002.002 INFO    ] Initializing speech engine...
[2026-06-12 01:06:46,010.010 INFO    ] 2026-06-12 01:06:46
[2026-06-12 01:06:46,224.224 INFO    ] 2026-06-12 01:06:46
[2026-06-12 01:06:46,253.253 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 01:06:46,440.440 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 01:06:46,450.450 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 01:06:46,597.597 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 01:06:46,650.650 INFO    ] time= 12/06/2026 01:06:46
[2026-06-12 01:06:46,673.673 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 01:06:46,679.679 INFO    ] Checking for existing commands in stream...
[2026-06-12 01:06:46,747.747 INFO    ] No existing commands found in stream
[2026-06-12 01:06:51,761.761 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 01:06:51,764.764 INFO    ] Waiting 1.89 seconds before fallback handling...
[2026-06-12 01:06:54,183.183 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 01:06:54,185.185 INFO    ] Checking for system updates...
[2026-06-12 01:06:54,207.207 INFO    ] 200
[2026-06-12 01:06:54,209.209 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:06:54,239.239 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 01:06:54,241.241 INFO    ] No update needed
[2026-06-12 01:06:54,242.242 INFO    ] Checking for camera pi updates...
[2026-06-12 01:06:54,262.262 INFO    ] 200
[2026-06-12 01:06:54,264.264 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:06:54,289.289 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 01:06:54,342.342 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 01:06:54,343.343 INFO    ] No camera update needed
[2026-06-12 01:06:54,345.345 INFO    ] Script finished. Safe exiting...
[2026-06-12 01:06:54,346.346 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 01:06:54,349.349 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 01:06:54,352.352 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 01:06:56,393.393 INFO    ] ================================================
[2026-06-12 01:06:56,410.410 INFO    ] Launching Daemon at Fri Jun 12 01:06:56 IST 2026
[2026-06-12 01:06:56,421.421 INFO    ] ================================================
[2026-06-12 01:06:56,774.774 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 01:06:56
[2026-06-12 01:06:57,090.090 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 01:06:57,222.222 INFO    ] Initializing speech engine...
[2026-06-12 01:06:57,225.225 INFO    ] 2026-06-12 01:06:57
[2026-06-12 01:06:57,441.441 INFO    ] 2026-06-12 01:06:57
[2026-06-12 01:06:57,470.470 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 01:06:57,653.653 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 01:06:57,656.656 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 01:06:57,793.793 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 01:06:57,860.860 INFO    ] time= 12/06/2026 01:06:57
[2026-06-12 01:06:57,884.884 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 01:06:57,890.890 INFO    ] Checking for existing commands in stream...
[2026-06-12 01:06:57,957.957 INFO    ] No existing commands found in stream
[2026-06-12 01:07:02,961.961 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 01:07:02,963.963 INFO    ] Waiting 2.07 seconds before fallback handling...
[2026-06-12 01:07:05,392.392 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 01:07:05,394.394 INFO    ] Checking for system updates...
[2026-06-12 01:07:05,415.415 INFO    ] 200
[2026-06-12 01:07:05,416.416 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:07:05,447.447 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 01:07:05,448.448 INFO    ] No update needed
[2026-06-12 01:07:05,449.449 INFO    ] Checking for camera pi updates...
[2026-06-12 01:07:05,470.470 INFO    ] 200
[2026-06-12 01:07:05,471.471 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:07:05,496.496 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 01:07:05,542.542 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 01:07:05,543.543 INFO    ] No camera update needed
[2026-06-12 01:07:05,544.544 INFO    ] Script finished. Safe exiting...
[2026-06-12 01:07:05,546.546 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 01:07:05,549.549 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 01:07:05,552.552 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 01:07:07,590.590 INFO    ] ================================================
[2026-06-12 01:07:07,612.612 INFO    ] Launching Daemon at Fri Jun 12 01:07:07 IST 2026
[2026-06-12 01:07:07,623.623 INFO    ] ================================================
[2026-06-12 01:07:07,974.974 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 01:07:07
[2026-06-12 01:07:08,290.290 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 01:07:08,422.422 INFO    ] Initializing speech engine...
[2026-06-12 01:07:08,429.429 INFO    ] 2026-06-12 01:07:08
[2026-06-12 01:07:08,645.645 INFO    ] 2026-06-12 01:07:08
[2026-06-12 01:07:08,677.677 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 01:07:08,875.875 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 01:07:08,878.878 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 01:07:08,989.989 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 01:07:09,025.025 INFO    ] time= 12/06/2026 01:07:09
[2026-06-12 01:07:09,093.093 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 01:07:09,115.115 INFO    ] Checking for existing commands in stream...
[2026-06-12 01:07:09,229.229 INFO    ] No existing commands found in stream
[2026-06-12 01:07:14,239.239 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 01:07:14,242.242 INFO    ] Waiting 2.66 seconds before fallback handling...
[2026-06-12 01:07:17,263.263 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 01:07:17,264.264 INFO    ] Checking for system updates...
[2026-06-12 01:07:17,285.285 INFO    ] 200
[2026-06-12 01:07:17,287.287 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:07:17,319.319 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 01:07:17,321.321 INFO    ] No update needed
[2026-06-12 01:07:17,322.322 INFO    ] Checking for camera pi updates...
[2026-06-12 01:07:17,344.344 INFO    ] 200
[2026-06-12 01:07:17,346.346 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:07:17,368.368 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 01:07:17,420.420 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 01:07:17,421.421 INFO    ] No camera update needed
[2026-06-12 01:07:17,423.423 INFO    ] Script finished. Safe exiting...
[2026-06-12 01:07:17,424.424 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 01:07:17,427.427 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 01:07:17,429.429 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 01:07:19,469.469 INFO    ] ================================================
[2026-06-12 01:07:19,484.484 INFO    ] Launching Daemon at Fri Jun 12 01:07:19 IST 2026
[2026-06-12 01:07:19,495.495 INFO    ] ================================================
[2026-06-12 01:07:19,845.845 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 01:07:19
[2026-06-12 01:07:20,182.182 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 01:07:20,334.334 INFO    ] Initializing speech engine...
[2026-06-12 01:07:20,340.340 INFO    ] 2026-06-12 01:07:20
[2026-06-12 01:07:20,551.551 INFO    ] 2026-06-12 01:07:20
[2026-06-12 01:07:20,579.579 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 01:07:20,765.765 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 01:07:20,775.775 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 01:07:20,907.907 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 01:07:20,972.972 INFO    ] time= 12/06/2026 01:07:20
[2026-06-12 01:07:21,001.001 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 01:07:21,008.008 INFO    ] Checking for existing commands in stream...
[2026-06-12 01:07:21,075.075 INFO    ] No existing commands found in stream
[2026-06-12 01:07:26,090.090 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 01:07:26,093.093 INFO    ] Waiting 1.41 seconds before fallback handling...
[2026-06-12 01:07:27,891.891 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 01:07:27,892.892 INFO    ] Checking for system updates...
[2026-06-12 01:07:27,913.913 INFO    ] 200
[2026-06-12 01:07:27,914.914 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:07:27,945.945 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 01:07:27,946.946 INFO    ] No update needed
[2026-06-12 01:07:27,948.948 INFO    ] Checking for camera pi updates...
[2026-06-12 01:07:27,967.967 INFO    ] 200
[2026-06-12 01:07:27,969.969 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:07:27,992.992 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 01:07:28,034.034 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 01:07:28,035.035 INFO    ] No camera update needed
[2026-06-12 01:07:28,036.036 INFO    ] Script finished. Safe exiting...
[2026-06-12 01:07:28,038.038 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 01:07:28,041.041 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 01:07:28,044.044 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 01:07:30,084.084 INFO    ] ================================================
[2026-06-12 01:07:30,099.099 INFO    ] Launching Daemon at Fri Jun 12 01:07:30 IST 2026
[2026-06-12 01:07:30,111.111 INFO    ] ================================================
[2026-06-12 01:07:30,444.444 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 01:07:30
[2026-06-12 01:07:30,759.759 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 01:07:30,889.889 INFO    ] Initializing speech engine...
[2026-06-12 01:07:30,894.894 INFO    ] 2026-06-12 01:07:30
[2026-06-12 01:07:31,112.112 INFO    ] 2026-06-12 01:07:31
[2026-06-12 01:07:31,142.142 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 01:07:31,328.328 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 01:07:31,338.338 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 01:07:31,449.449 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 01:07:31,476.476 INFO    ] time= 12/06/2026 01:07:31
[2026-06-12 01:07:31,538.538 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 01:07:31,563.563 INFO    ] Checking for existing commands in stream...
[2026-06-12 01:07:31,636.636 INFO    ] No existing commands found in stream
[2026-06-12 01:07:36,642.642 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 01:07:36,645.645 INFO    ] Waiting 3.43 seconds before fallback handling...
[2026-06-12 01:07:40,463.463 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 01:07:40,465.465 INFO    ] Checking for system updates...
[2026-06-12 01:07:40,486.486 INFO    ] 200
[2026-06-12 01:07:40,488.488 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:07:40,518.518 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 01:07:40,519.519 INFO    ] No update needed
[2026-06-12 01:07:40,521.521 INFO    ] Checking for camera pi updates...
[2026-06-12 01:07:40,540.540 INFO    ] 200
[2026-06-12 01:07:40,541.541 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:07:40,565.565 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 01:07:40,607.607 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 01:07:40,608.608 INFO    ] No camera update needed
[2026-06-12 01:07:40,609.609 INFO    ] Script finished. Safe exiting...
[2026-06-12 01:07:40,611.611 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 01:07:40,614.614 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 01:07:40,616.616 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 01:07:42,658.658 INFO    ] ================================================
[2026-06-12 01:07:42,673.673 INFO    ] Launching Daemon at Fri Jun 12 01:07:42 IST 2026
[2026-06-12 01:07:42,684.684 INFO    ] ================================================
[2026-06-12 01:07:43,043.043 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 01:07:43
[2026-06-12 01:07:43,378.378 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 01:07:43,523.523 INFO    ] Initializing speech engine...
[2026-06-12 01:07:43,534.534 INFO    ] 2026-06-12 01:07:43
[2026-06-12 01:07:43,743.743 INFO    ] 2026-06-12 01:07:43
[2026-06-12 01:07:43,772.772 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 01:07:43,959.959 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 01:07:43,969.969 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 01:07:44,116.116 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 01:07:44,171.171 INFO    ] time= 12/06/2026 01:07:44
[2026-06-12 01:07:44,193.193 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 01:07:44,199.199 INFO    ] Checking for existing commands in stream...
[2026-06-12 01:07:44,267.267 INFO    ] No existing commands found in stream
[2026-06-12 01:07:49,282.282 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 01:07:49,285.285 INFO    ] Waiting 1.31 seconds before fallback handling...
[2026-06-12 01:07:50,952.952 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 01:07:50,953.953 INFO    ] Checking for system updates...
[2026-06-12 01:07:50,975.975 INFO    ] 200
[2026-06-12 01:07:50,977.977 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:07:51,009.009 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 01:07:51,011.011 INFO    ] No update needed
[2026-06-12 01:07:51,012.012 INFO    ] Checking for camera pi updates...
[2026-06-12 01:07:51,036.036 INFO    ] 200
[2026-06-12 01:07:51,037.037 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:07:51,061.061 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 01:07:51,106.106 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 01:07:51,108.108 INFO    ] No camera update needed
[2026-06-12 01:07:51,109.109 INFO    ] Script finished. Safe exiting...
[2026-06-12 01:07:51,111.111 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 01:07:51,114.114 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 01:07:51,117.117 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 01:07:53,156.156 INFO    ] ================================================
[2026-06-12 01:07:53,172.172 INFO    ] Launching Daemon at Fri Jun 12 01:07:53 IST 2026
[2026-06-12 01:07:53,182.182 INFO    ] ================================================
[2026-06-12 01:07:53,535.535 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 01:07:53
[2026-06-12 01:07:53,845.845 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 01:07:53,987.987 INFO    ] Initializing speech engine...
[2026-06-12 01:07:53,992.992 INFO    ] 2026-06-12 01:07:53
[2026-06-12 01:07:54,196.196 INFO    ] 2026-06-12 01:07:54
[2026-06-12 01:07:54,224.224 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 01:07:54,409.409 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 01:07:54,418.418 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 01:07:54,548.548 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 01:07:54,615.615 INFO    ] time= 12/06/2026 01:07:54
[2026-06-12 01:07:54,639.639 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 01:07:54,645.645 INFO    ] Checking for existing commands in stream...
[2026-06-12 01:07:54,735.735 INFO    ] No existing commands found in stream
[2026-06-12 01:07:59,749.749 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 01:07:59,752.752 INFO    ] Waiting 3.86 seconds before fallback handling...
[2026-06-12 01:08:03,981.981 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 01:08:03,982.982 INFO    ] Checking for system updates...
[2026-06-12 01:08:04,002.002 INFO    ] 200
[2026-06-12 01:08:04,004.004 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:08:04,034.034 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 01:08:04,035.035 INFO    ] No update needed
[2026-06-12 01:08:04,037.037 INFO    ] Checking for camera pi updates...
[2026-06-12 01:08:04,057.057 INFO    ] 200
[2026-06-12 01:08:04,058.058 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:08:04,081.081 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 01:08:04,142.142 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 01:08:04,144.144 INFO    ] No camera update needed
[2026-06-12 01:08:04,145.145 INFO    ] Script finished. Safe exiting...
[2026-06-12 01:08:04,146.146 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 01:08:04,149.149 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 01:08:04,152.152 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 01:08:06,191.191 INFO    ] ================================================
[2026-06-12 01:08:06,206.206 INFO    ] Launching Daemon at Fri Jun 12 01:08:06 IST 2026
[2026-06-12 01:08:06,217.217 INFO    ] ================================================
[2026-06-12 01:08:06,547.547 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 01:08:06
[2026-06-12 01:08:06,871.871 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 01:08:07,021.021 INFO    ] Initializing speech engine...
[2026-06-12 01:08:07,027.027 INFO    ] 2026-06-12 01:08:07
[2026-06-12 01:08:07,234.234 INFO    ] 2026-06-12 01:08:07
[2026-06-12 01:08:07,264.264 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 01:08:07,449.449 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 01:08:07,461.461 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 01:08:07,606.606 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 01:08:07,660.660 INFO    ] time= 12/06/2026 01:08:07
[2026-06-12 01:08:07,682.682 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 01:08:07,688.688 INFO    ] Checking for existing commands in stream...
[2026-06-12 01:08:07,755.755 INFO    ] No existing commands found in stream
[2026-06-12 01:08:12,770.770 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 01:08:12,773.773 INFO    ] Waiting 3.87 seconds before fallback handling...
[2026-06-12 01:08:17,042.042 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 01:08:17,043.043 INFO    ] Checking for system updates...
[2026-06-12 01:08:17,064.064 INFO    ] 200
[2026-06-12 01:08:17,066.066 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:08:17,097.097 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 01:08:17,099.099 INFO    ] No update needed
[2026-06-12 01:08:17,100.100 INFO    ] Checking for camera pi updates...
[2026-06-12 01:08:17,121.121 INFO    ] 200
[2026-06-12 01:08:17,122.122 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:08:17,148.148 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 01:08:17,192.192 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 01:08:17,194.194 INFO    ] No camera update needed
[2026-06-12 01:08:17,195.195 INFO    ] Script finished. Safe exiting...
[2026-06-12 01:08:17,196.196 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 01:08:17,200.200 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 01:08:17,203.203 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 01:08:19,242.242 INFO    ] ================================================
[2026-06-12 01:08:19,257.257 INFO    ] Launching Daemon at Fri Jun 12 01:08:19 IST 2026
[2026-06-12 01:08:19,267.267 INFO    ] ================================================
[2026-06-12 01:08:19,615.615 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 01:08:19
[2026-06-12 01:08:19,948.948 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 01:08:20,097.097 INFO    ] Initializing speech engine...
[2026-06-12 01:08:20,102.102 INFO    ] 2026-06-12 01:08:20
[2026-06-12 01:08:20,308.308 INFO    ] 2026-06-12 01:08:20
[2026-06-12 01:08:20,337.337 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 01:08:20,518.518 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 01:08:20,528.528 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 01:08:20,677.677 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 01:08:20,725.725 INFO    ] time= 12/06/2026 01:08:20
[2026-06-12 01:08:20,748.748 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 01:08:20,754.754 INFO    ] Checking for existing commands in stream...
[2026-06-12 01:08:20,820.820 INFO    ] No existing commands found in stream
[2026-06-12 01:08:25,835.835 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 01:08:25,838.838 INFO    ] Waiting 1.53 seconds before fallback handling...
[2026-06-12 01:08:27,742.742 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 01:08:27,743.743 INFO    ] Checking for system updates...
[2026-06-12 01:08:27,764.764 INFO    ] 200
[2026-06-12 01:08:27,766.766 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:08:27,796.796 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 01:08:27,797.797 INFO    ] No update needed
[2026-06-12 01:08:27,799.799 INFO    ] Checking for camera pi updates...
[2026-06-12 01:08:27,818.818 INFO    ] 200
[2026-06-12 01:08:27,820.820 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:08:27,843.843 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 01:08:27,886.886 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 01:08:27,887.887 INFO    ] No camera update needed
[2026-06-12 01:08:27,889.889 INFO    ] Script finished. Safe exiting...
[2026-06-12 01:08:27,890.890 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 01:08:27,893.893 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 01:08:27,896.896 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 01:08:29,936.936 INFO    ] ================================================
[2026-06-12 01:08:29,957.957 INFO    ] Launching Daemon at Fri Jun 12 01:08:29 IST 2026
[2026-06-12 01:08:29,967.967 INFO    ] ================================================
[2026-06-12 01:08:30,320.320 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 01:08:30
[2026-06-12 01:08:30,631.631 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 01:08:30,762.762 INFO    ] Initializing speech engine...
[2026-06-12 01:08:30,767.767 INFO    ] 2026-06-12 01:08:30
[2026-06-12 01:08:30,994.994 INFO    ] 2026-06-12 01:08:30
[2026-06-12 01:08:31,025.025 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 01:08:31,220.220 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 01:08:31,224.224 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 01:08:31,377.377 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 01:08:31,447.447 INFO    ] time= 12/06/2026 01:08:31
[2026-06-12 01:08:31,483.483 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 01:08:31,490.490 INFO    ] Checking for existing commands in stream...
[2026-06-12 01:08:31,592.592 INFO    ] No existing commands found in stream
[2026-06-12 01:08:36,618.618 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 01:08:36,621.621 INFO    ] Waiting 1.74 seconds before fallback handling...
[2026-06-12 01:08:38,734.734 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 01:08:38,736.736 INFO    ] Checking for system updates...
[2026-06-12 01:08:38,756.756 INFO    ] 200
[2026-06-12 01:08:38,757.757 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:08:38,787.787 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 01:08:38,789.789 INFO    ] No update needed
[2026-06-12 01:08:38,790.790 INFO    ] Checking for camera pi updates...
[2026-06-12 01:08:38,810.810 INFO    ] 200
[2026-06-12 01:08:38,811.811 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:08:38,836.836 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 01:08:38,890.890 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 01:08:38,891.891 INFO    ] No camera update needed
[2026-06-12 01:08:38,892.892 INFO    ] Script finished. Safe exiting...
[2026-06-12 01:08:38,894.894 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 01:08:38,896.896 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 01:08:38,899.899 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 01:08:40,938.938 INFO    ] ================================================
[2026-06-12 01:08:40,953.953 INFO    ] Launching Daemon at Fri Jun 12 01:08:40 IST 2026
[2026-06-12 01:08:40,963.963 INFO    ] ================================================
[2026-06-12 01:08:41,306.306 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 01:08:41
[2026-06-12 01:08:41,623.623 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 01:08:41,756.756 INFO    ] Initializing speech engine...
[2026-06-12 01:08:41,759.759 INFO    ] 2026-06-12 01:08:41
[2026-06-12 01:08:41,977.977 INFO    ] 2026-06-12 01:08:41
[2026-06-12 01:08:42,006.006 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 01:08:42,190.190 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 01:08:42,200.200 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 01:08:42,336.336 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 01:08:42,399.399 INFO    ] time= 12/06/2026 01:08:42
[2026-06-12 01:08:42,422.422 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 01:08:42,428.428 INFO    ] Checking for existing commands in stream...
[2026-06-12 01:08:42,496.496 INFO    ] No existing commands found in stream
[2026-06-12 01:08:47,505.505 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 01:08:47,508.508 INFO    ] Waiting 0.71 seconds before fallback handling...
[2026-06-12 01:08:48,622.622 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 01:08:48,623.623 INFO    ] Checking for system updates...
[2026-06-12 01:08:48,644.644 INFO    ] 200
[2026-06-12 01:08:48,646.646 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:08:48,677.677 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 01:08:48,678.678 INFO    ] No update needed
[2026-06-12 01:08:48,680.680 INFO    ] Checking for camera pi updates...
[2026-06-12 01:08:48,699.699 INFO    ] 200
[2026-06-12 01:08:48,701.701 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:08:48,726.726 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 01:08:48,766.766 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 01:08:48,767.767 INFO    ] No camera update needed
[2026-06-12 01:08:48,769.769 INFO    ] Script finished. Safe exiting...
[2026-06-12 01:08:48,770.770 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 01:08:48,773.773 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 01:08:48,776.776 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 01:08:50,816.816 INFO    ] ================================================
[2026-06-12 01:08:50,832.832 INFO    ] Launching Daemon at Fri Jun 12 01:08:50 IST 2026
[2026-06-12 01:08:50,843.843 INFO    ] ================================================
[2026-06-12 01:08:51,235.235 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 01:08:51
[2026-06-12 01:08:51,572.572 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 01:08:51,723.723 INFO    ] Initializing speech engine...
[2026-06-12 01:08:51,728.728 INFO    ] 2026-06-12 01:08:51
[2026-06-12 01:08:51,938.938 INFO    ] 2026-06-12 01:08:51
[2026-06-12 01:08:51,968.968 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 01:08:52,153.153 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 01:08:52,162.162 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 01:08:52,288.288 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 01:08:52,350.350 INFO    ] time= 12/06/2026 01:08:52
[2026-06-12 01:08:52,383.383 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 01:08:52,390.390 INFO    ] Checking for existing commands in stream...
[2026-06-12 01:08:52,456.456 INFO    ] No existing commands found in stream
[2026-06-12 01:08:57,466.466 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 01:08:57,469.469 INFO    ] Waiting 0.64 seconds before fallback handling...
[2026-06-12 01:08:58,483.483 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 01:08:58,484.484 INFO    ] Checking for system updates...
[2026-06-12 01:08:58,507.507 INFO    ] 200
[2026-06-12 01:08:58,509.509 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:08:58,542.542 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 01:08:58,544.544 INFO    ] No update needed
[2026-06-12 01:08:58,546.546 INFO    ] Checking for camera pi updates...
[2026-06-12 01:08:58,567.567 INFO    ] 200
[2026-06-12 01:08:58,569.569 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:08:58,596.596 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 01:08:58,637.637 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 01:08:58,639.639 INFO    ] No camera update needed
[2026-06-12 01:08:58,641.641 INFO    ] Script finished. Safe exiting...
[2026-06-12 01:08:58,643.643 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 01:08:58,647.647 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 01:08:58,651.651 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 01:09:00,683.683 INFO    ] ================================================
[2026-06-12 01:09:00,698.698 INFO    ] Launching Daemon at Fri Jun 12 01:09:00 IST 2026
[2026-06-12 01:09:00,709.709 INFO    ] ================================================
[2026-06-12 01:09:01,068.068 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 01:09:01
[2026-06-12 01:09:01,403.403 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 01:09:01,607.607 INFO    ] Initializing speech engine...
[2026-06-12 01:09:01,609.609 INFO    ] 2026-06-12 01:09:01
[2026-06-12 01:09:01,844.844 INFO    ] 2026-06-12 01:09:01
[2026-06-12 01:09:01,855.855 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 01:09:01,999.999 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 01:09:02,019.019 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 01:09:02,173.173 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 01:09:02,187.187 INFO    ] time= 12/06/2026 01:09:02
[2026-06-12 01:09:02,205.205 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 01:09:02,210.210 INFO    ] Checking for existing commands in stream...
[2026-06-12 01:09:02,332.332 INFO    ] No existing commands found in stream
[2026-06-12 01:09:07,351.351 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 01:09:07,360.360 INFO    ] Waiting 0.87 seconds before fallback handling...
[2026-06-12 01:09:08,580.580 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 01:09:08,582.582 INFO    ] Checking for system updates...
[2026-06-12 01:09:08,602.602 INFO    ] 200
[2026-06-12 01:09:08,604.604 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:09:08,638.638 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 01:09:08,639.639 INFO    ] No update needed
[2026-06-12 01:09:08,640.640 INFO    ] Checking for camera pi updates...
[2026-06-12 01:09:08,660.660 INFO    ] 200
[2026-06-12 01:09:08,661.661 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:09:08,685.685 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 01:09:08,729.729 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 01:09:08,730.730 INFO    ] No camera update needed
[2026-06-12 01:09:08,731.731 INFO    ] Script finished. Safe exiting...
[2026-06-12 01:09:08,733.733 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 01:09:08,735.735 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 01:09:08,738.738 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 01:09:10,777.777 INFO    ] ================================================
[2026-06-12 01:09:10,793.793 INFO    ] Launching Daemon at Fri Jun 12 01:09:10 IST 2026
[2026-06-12 01:09:10,803.803 INFO    ] ================================================
[2026-06-12 01:09:11,125.125 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 01:09:11
[2026-06-12 01:09:11,441.441 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 01:09:11,609.609 INFO    ] Initializing speech engine...
[2026-06-12 01:09:11,619.619 INFO    ] 2026-06-12 01:09:11
[2026-06-12 01:09:11,838.838 INFO    ] 2026-06-12 01:09:11
[2026-06-12 01:09:11,868.868 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 01:09:12,052.052 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 01:09:12,061.061 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 01:09:12,209.209 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 01:09:12,257.257 INFO    ] time= 12/06/2026 01:09:12
[2026-06-12 01:09:12,279.279 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 01:09:12,285.285 INFO    ] Checking for existing commands in stream...
[2026-06-12 01:09:12,351.351 INFO    ] No existing commands found in stream
[2026-06-12 01:09:17,384.384 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 01:09:17,388.388 INFO    ] Waiting 0.94 seconds before fallback handling...
[2026-06-12 01:09:18,712.712 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 01:09:18,713.713 INFO    ] Checking for system updates...
[2026-06-12 01:09:18,734.734 INFO    ] 200
[2026-06-12 01:09:18,735.735 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:09:18,765.765 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 01:09:18,766.766 INFO    ] No update needed
[2026-06-12 01:09:18,768.768 INFO    ] Checking for camera pi updates...
[2026-06-12 01:09:18,787.787 INFO    ] 200
[2026-06-12 01:09:18,788.788 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:09:18,811.811 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 01:09:18,854.854 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 01:09:18,856.856 INFO    ] No camera update needed
[2026-06-12 01:09:18,857.857 INFO    ] Script finished. Safe exiting...
[2026-06-12 01:09:18,858.858 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 01:09:18,861.861 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 01:09:18,864.864 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 01:09:20,904.904 INFO    ] ================================================
[2026-06-12 01:09:20,919.919 INFO    ] Launching Daemon at Fri Jun 12 01:09:20 IST 2026
[2026-06-12 01:09:20,929.929 INFO    ] ================================================
[2026-06-12 01:09:21,296.296 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 01:09:21
[2026-06-12 01:09:21,607.607 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 01:09:21,750.750 INFO    ] Initializing speech engine...
[2026-06-12 01:09:21,754.754 INFO    ] 2026-06-12 01:09:21
[2026-06-12 01:09:21,957.957 INFO    ] 2026-06-12 01:09:21
[2026-06-12 01:09:21,986.986 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 01:09:22,172.172 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 01:09:22,180.180 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 01:09:22,309.309 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 01:09:22,363.363 INFO    ] time= 12/06/2026 01:09:22
[2026-06-12 01:09:22,397.397 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 01:09:22,402.402 INFO    ] Checking for existing commands in stream...
[2026-06-12 01:09:22,473.473 INFO    ] No existing commands found in stream
[2026-06-12 01:09:27,482.482 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 01:09:27,485.485 INFO    ] Waiting 2.72 seconds before fallback handling...
[2026-06-12 01:09:30,602.602 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 01:09:30,604.604 INFO    ] Checking for system updates...
[2026-06-12 01:09:30,625.625 INFO    ] 200
[2026-06-12 01:09:30,626.626 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:09:30,658.658 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 01:09:30,659.659 INFO    ] No update needed
[2026-06-12 01:09:30,661.661 INFO    ] Checking for camera pi updates...
[2026-06-12 01:09:30,683.683 INFO    ] 200
[2026-06-12 01:09:30,685.685 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:09:30,708.708 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 01:09:30,745.745 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 01:09:30,747.747 INFO    ] No camera update needed
[2026-06-12 01:09:30,748.748 INFO    ] Script finished. Safe exiting...
[2026-06-12 01:09:30,749.749 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 01:09:30,752.752 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 01:09:30,755.755 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 01:09:32,788.788 INFO    ] ================================================
[2026-06-12 01:09:32,803.803 INFO    ] Launching Daemon at Fri Jun 12 01:09:32 IST 2026
[2026-06-12 01:09:32,814.814 INFO    ] ================================================
[2026-06-12 01:09:33,156.156 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 01:09:33
[2026-06-12 01:09:33,467.467 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 01:09:33,609.609 INFO    ] Initializing speech engine...
[2026-06-12 01:09:33,614.614 INFO    ] 2026-06-12 01:09:33
[2026-06-12 01:09:33,819.819 INFO    ] 2026-06-12 01:09:33
[2026-06-12 01:09:33,848.848 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 01:09:34,033.033 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 01:09:34,037.037 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 01:09:34,173.173 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 01:09:34,230.230 INFO    ] time= 12/06/2026 01:09:34
[2026-06-12 01:09:34,265.265 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 01:09:34,270.270 INFO    ] Checking for existing commands in stream...
[2026-06-12 01:09:34,342.342 INFO    ] No existing commands found in stream
[2026-06-12 01:09:39,351.351 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 01:09:39,354.354 INFO    ] Waiting 0.61 seconds before fallback handling...
[2026-06-12 01:09:40,348.348 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 01:09:40,349.349 INFO    ] Checking for system updates...
[2026-06-12 01:09:40,371.371 INFO    ] 200
[2026-06-12 01:09:40,372.372 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:09:40,405.405 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 01:09:40,407.407 INFO    ] No update needed
[2026-06-12 01:09:40,408.408 INFO    ] Checking for camera pi updates...
[2026-06-12 01:09:40,427.427 INFO    ] 200
[2026-06-12 01:09:40,429.429 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:09:40,452.452 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 01:09:40,504.504 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 01:09:40,505.505 INFO    ] No camera update needed
[2026-06-12 01:09:40,506.506 INFO    ] Script finished. Safe exiting...
[2026-06-12 01:09:40,508.508 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 01:09:40,511.511 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 01:09:40,514.514 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 01:09:42,552.552 INFO    ] ================================================
[2026-06-12 01:09:42,567.567 INFO    ] Launching Daemon at Fri Jun 12 01:09:42 IST 2026
[2026-06-12 01:09:42,578.578 INFO    ] ================================================
[2026-06-12 01:09:42,919.919 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 01:09:42
[2026-06-12 01:09:43,231.231 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 01:09:43,363.363 INFO    ] Initializing speech engine...
[2026-06-12 01:09:43,367.367 INFO    ] 2026-06-12 01:09:43
[2026-06-12 01:09:43,591.591 INFO    ] 2026-06-12 01:09:43
[2026-06-12 01:09:43,621.621 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 01:09:43,816.816 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 01:09:43,819.819 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 01:09:43,963.963 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 01:09:44,032.032 INFO    ] time= 12/06/2026 01:09:43
[2026-06-12 01:09:44,058.058 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 01:09:44,059.059 INFO    ] Checking for existing commands in stream...
[2026-06-12 01:09:44,134.134 INFO    ] No existing commands found in stream
[2026-06-12 01:09:49,143.143 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 01:09:49,146.146 INFO    ] Waiting 2.65 seconds before fallback handling...
[2026-06-12 01:09:52,205.205 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 01:09:52,207.207 INFO    ] Checking for system updates...
[2026-06-12 01:09:52,244.244 INFO    ] 200
[2026-06-12 01:09:52,247.247 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:09:52,304.304 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 01:09:52,307.307 INFO    ] No update needed
[2026-06-12 01:09:52,309.309 INFO    ] Checking for camera pi updates...
[2026-06-12 01:09:52,339.339 INFO    ] 200
[2026-06-12 01:09:52,341.341 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:09:52,364.364 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 01:09:52,417.417 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 01:09:52,419.419 INFO    ] No camera update needed
[2026-06-12 01:09:52,420.420 INFO    ] Script finished. Safe exiting...
[2026-06-12 01:09:52,422.422 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 01:09:52,425.425 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 01:09:52,428.428 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 01:09:54,466.466 INFO    ] ================================================
[2026-06-12 01:09:54,481.481 INFO    ] Launching Daemon at Fri Jun 12 01:09:54 IST 2026
[2026-06-12 01:09:54,492.492 INFO    ] ================================================
[2026-06-12 01:09:54,825.825 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 01:09:54
[2026-06-12 01:09:55,140.140 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 01:09:55,270.270 INFO    ] Initializing speech engine...
[2026-06-12 01:09:55,275.275 INFO    ] 2026-06-12 01:09:55
[2026-06-12 01:09:55,491.491 INFO    ] 2026-06-12 01:09:55
[2026-06-12 01:09:55,519.519 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 01:09:55,703.703 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 01:09:55,713.713 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 01:09:55,839.839 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 01:09:55,896.896 INFO    ] time= 12/06/2026 01:09:55
[2026-06-12 01:09:55,924.924 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 01:09:55,934.934 INFO    ] Checking for existing commands in stream...
[2026-06-12 01:09:56,029.029 INFO    ] No existing commands found in stream
[2026-06-12 01:10:01,043.043 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 01:10:01,046.046 INFO    ] Waiting 0.06 seconds before fallback handling...
[2026-06-12 01:10:01,468.468 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 01:10:01,469.469 INFO    ] Checking for system updates...
[2026-06-12 01:10:01,490.490 INFO    ] 200
[2026-06-12 01:10:01,492.492 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:10:01,523.523 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 01:10:01,525.525 INFO    ] No update needed
[2026-06-12 01:10:01,526.526 INFO    ] Checking for camera pi updates...
[2026-06-12 01:10:01,545.545 INFO    ] 200
[2026-06-12 01:10:01,547.547 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:10:01,570.570 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 01:10:01,656.656 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 01:10:01,658.658 INFO    ] No camera update needed
[2026-06-12 01:10:01,659.659 INFO    ] Script finished. Safe exiting...
[2026-06-12 01:10:01,660.660 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 01:10:01,663.663 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 01:10:01,666.666 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 01:10:03,699.699 INFO    ] ================================================
[2026-06-12 01:10:03,714.714 INFO    ] Launching Daemon at Fri Jun 12 01:10:03 IST 2026
[2026-06-12 01:10:03,725.725 INFO    ] ================================================
[2026-06-12 01:10:04,082.082 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 01:10:04
[2026-06-12 01:10:04,410.410 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 01:10:04,564.564 INFO    ] Initializing speech engine...
[2026-06-12 01:10:04,568.568 INFO    ] 2026-06-12 01:10:04
[2026-06-12 01:10:04,772.772 INFO    ] 2026-06-12 01:10:04
[2026-06-12 01:10:04,800.800 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 01:10:04,983.983 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 01:10:04,986.986 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 01:10:05,127.127 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 01:10:05,190.190 INFO    ] time= 12/06/2026 01:10:05
[2026-06-12 01:10:05,213.213 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 01:10:05,219.219 INFO    ] Checking for existing commands in stream...
[2026-06-12 01:10:05,286.286 INFO    ] No existing commands found in stream
[2026-06-12 01:10:10,295.295 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 01:10:10,298.298 INFO    ] Waiting 2.86 seconds before fallback handling...
[2026-06-12 01:10:13,565.565 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 01:10:13,567.567 INFO    ] Checking for system updates...
[2026-06-12 01:10:13,587.587 INFO    ] 200
[2026-06-12 01:10:13,589.589 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:10:13,619.619 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 01:10:13,620.620 INFO    ] No update needed
[2026-06-12 01:10:13,622.622 INFO    ] Checking for camera pi updates...
[2026-06-12 01:10:13,642.642 INFO    ] 200
[2026-06-12 01:10:13,643.643 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:10:13,666.666 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 01:10:13,805.805 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 01:10:13,807.807 INFO    ] No camera update needed
[2026-06-12 01:10:13,808.808 INFO    ] Script finished. Safe exiting...
[2026-06-12 01:10:13,810.810 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 01:10:13,813.813 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 01:10:13,816.816 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 01:10:15,855.855 INFO    ] ================================================
[2026-06-12 01:10:15,870.870 INFO    ] Launching Daemon at Fri Jun 12 01:10:15 IST 2026
[2026-06-12 01:10:15,882.882 INFO    ] ================================================
[2026-06-12 01:10:16,229.229 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 01:10:16
[2026-06-12 01:10:16,542.542 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 01:10:16,678.678 INFO    ] Initializing speech engine...
[2026-06-12 01:10:16,683.683 INFO    ] 2026-06-12 01:10:16
[2026-06-12 01:10:16,909.909 INFO    ] 2026-06-12 01:10:16
[2026-06-12 01:10:16,939.939 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 01:10:17,133.133 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 01:10:17,137.137 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 01:10:17,282.282 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 01:10:17,355.355 INFO    ] time= 12/06/2026 01:10:17
[2026-06-12 01:10:17,380.380 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 01:10:17,381.381 INFO    ] Checking for existing commands in stream...
[2026-06-12 01:10:17,453.453 INFO    ] No existing commands found in stream
[2026-06-12 01:10:22,485.485 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 01:10:22,493.493 INFO    ] Waiting 2.86 seconds before fallback handling...
[2026-06-12 01:10:25,725.725 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 01:10:25,726.726 INFO    ] Checking for system updates...
[2026-06-12 01:10:25,746.746 INFO    ] 200
[2026-06-12 01:10:25,748.748 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:10:25,778.778 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 01:10:25,780.780 INFO    ] No update needed
[2026-06-12 01:10:25,781.781 INFO    ] Checking for camera pi updates...
[2026-06-12 01:10:25,800.800 INFO    ] 200
[2026-06-12 01:10:25,802.802 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:10:25,826.826 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 01:10:25,868.868 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 01:10:25,869.869 INFO    ] No camera update needed
[2026-06-12 01:10:25,871.871 INFO    ] Script finished. Safe exiting...
[2026-06-12 01:10:25,872.872 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 01:10:25,875.875 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 01:10:25,877.877 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 01:10:27,916.916 INFO    ] ================================================
[2026-06-12 01:10:27,931.931 INFO    ] Launching Daemon at Fri Jun 12 01:10:27 IST 2026
[2026-06-12 01:10:27,942.942 INFO    ] ================================================
[2026-06-12 01:10:28,295.295 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 01:10:28
[2026-06-12 01:10:28,611.611 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 01:10:28,741.741 INFO    ] Initializing speech engine...
[2026-06-12 01:10:28,744.744 INFO    ] 2026-06-12 01:10:28
[2026-06-12 01:10:28,960.960 INFO    ] 2026-06-12 01:10:28
[2026-06-12 01:10:28,988.988 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 01:10:29,171.171 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 01:10:29,175.175 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 01:10:29,310.310 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 01:10:29,374.374 INFO    ] time= 12/06/2026 01:10:29
[2026-06-12 01:10:29,402.402 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 01:10:29,408.408 INFO    ] Checking for existing commands in stream...
[2026-06-12 01:10:29,499.499 INFO    ] No existing commands found in stream
[2026-06-12 01:10:34,508.508 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 01:10:34,511.511 INFO    ] Waiting 2.86 seconds before fallback handling...
[2026-06-12 01:10:37,765.765 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 01:10:37,766.766 INFO    ] Checking for system updates...
[2026-06-12 01:10:37,787.787 INFO    ] 200
[2026-06-12 01:10:37,788.788 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:10:37,825.825 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 01:10:37,826.826 INFO    ] No update needed
[2026-06-12 01:10:37,827.827 INFO    ] Checking for camera pi updates...
[2026-06-12 01:10:37,846.846 INFO    ] 200
[2026-06-12 01:10:37,847.847 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:10:37,873.873 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 01:10:37,915.915 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 01:10:37,917.917 INFO    ] No camera update needed
[2026-06-12 01:10:37,918.918 INFO    ] Script finished. Safe exiting...
[2026-06-12 01:10:37,919.919 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 01:10:37,922.922 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 01:10:37,925.925 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 01:10:39,965.965 INFO    ] ================================================
[2026-06-12 01:10:40,998.998 INFO    ] Launching Daemon at Fri Jun 12 01:10:39 IST 2026
[2026-06-12 01:10:40,008.008 INFO    ] ================================================
[2026-06-12 01:10:40,350.350 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 01:10:40
[2026-06-12 01:10:40,665.665 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 01:10:40,808.808 INFO    ] Initializing speech engine...
[2026-06-12 01:10:40,814.814 INFO    ] 2026-06-12 01:10:40
[2026-06-12 01:10:41,016.016 INFO    ] 2026-06-12 01:10:40
[2026-06-12 01:10:41,044.044 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 01:10:41,226.226 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 01:10:41,235.235 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 01:10:41,364.364 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 01:10:41,430.430 INFO    ] time= 12/06/2026 01:10:41
[2026-06-12 01:10:41,454.454 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 01:10:41,460.460 INFO    ] Checking for existing commands in stream...
[2026-06-12 01:10:41,550.550 INFO    ] No existing commands found in stream
[2026-06-12 01:10:46,564.564 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 01:10:46,567.567 INFO    ] Waiting 2.58 seconds before fallback handling...
[2026-06-12 01:10:49,560.560 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 01:10:49,562.562 INFO    ] Checking for system updates...
[2026-06-12 01:10:49,582.582 INFO    ] 200
[2026-06-12 01:10:49,584.584 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:10:49,614.614 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 01:10:49,615.615 INFO    ] No update needed
[2026-06-12 01:10:49,617.617 INFO    ] Checking for camera pi updates...
[2026-06-12 01:10:49,636.636 INFO    ] 200
[2026-06-12 01:10:49,637.637 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:10:49,661.661 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 01:10:49,704.704 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 01:10:49,706.706 INFO    ] No camera update needed
[2026-06-12 01:10:49,707.707 INFO    ] Script finished. Safe exiting...
[2026-06-12 01:10:49,709.709 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 01:10:49,712.712 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 01:10:49,715.715 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 01:10:51,754.754 INFO    ] ================================================
[2026-06-12 01:10:51,775.775 INFO    ] Launching Daemon at Fri Jun 12 01:10:51 IST 2026
[2026-06-12 01:10:51,786.786 INFO    ] ================================================
[2026-06-12 01:10:52,131.131 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 01:10:52
[2026-06-12 01:10:52,447.447 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 01:10:52,585.585 INFO    ] Initializing speech engine...
[2026-06-12 01:10:52,595.595 INFO    ] 2026-06-12 01:10:52
[2026-06-12 01:10:52,797.797 INFO    ] 2026-06-12 01:10:52
[2026-06-12 01:10:52,826.826 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 01:10:53,009.009 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 01:10:53,018.018 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 01:10:53,167.167 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 01:10:53,221.221 INFO    ] time= 12/06/2026 01:10:53
[2026-06-12 01:10:53,236.236 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 01:10:53,243.243 INFO    ] Checking for existing commands in stream...
[2026-06-12 01:10:53,309.309 INFO    ] No existing commands found in stream
[2026-06-12 01:10:58,318.318 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 01:10:58,321.321 INFO    ] Waiting 2.75 seconds before fallback handling...
[2026-06-12 01:11:01,491.491 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 01:11:01,493.493 INFO    ] Checking for system updates...
[2026-06-12 01:11:01,519.519 INFO    ] 200
[2026-06-12 01:11:01,521.521 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:11:01,557.557 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 01:11:01,559.559 INFO    ] No update needed
[2026-06-12 01:11:01,561.561 INFO    ] Checking for camera pi updates...
[2026-06-12 01:11:01,586.586 INFO    ] 200
[2026-06-12 01:11:01,588.588 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:11:01,621.621 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 01:11:01,668.668 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 01:11:01,670.670 INFO    ] No camera update needed
[2026-06-12 01:11:01,672.672 INFO    ] Script finished. Safe exiting...
[2026-06-12 01:11:01,674.674 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 01:11:01,678.678 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 01:11:01,682.682 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 01:11:03,722.722 INFO    ] ================================================
[2026-06-12 01:11:03,737.737 INFO    ] Launching Daemon at Fri Jun 12 01:11:03 IST 2026
[2026-06-12 01:11:03,748.748 INFO    ] ================================================
[2026-06-12 01:11:04,096.096 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 01:11:04
[2026-06-12 01:11:04,409.409 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 01:11:04,538.538 INFO    ] Initializing speech engine...
[2026-06-12 01:11:04,543.543 INFO    ] 2026-06-12 01:11:04
[2026-06-12 01:11:04,760.760 INFO    ] 2026-06-12 01:11:04
[2026-06-12 01:11:04,789.789 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 01:11:04,912.912 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 01:11:04,975.975 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 01:11:05,114.114 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 01:11:05,181.181 INFO    ] time= 12/06/2026 01:11:05
[2026-06-12 01:11:05,205.205 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 01:11:05,212.212 INFO    ] Checking for existing commands in stream...
[2026-06-12 01:11:05,303.303 INFO    ] No existing commands found in stream
[2026-06-12 01:11:10,312.312 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 01:11:10,315.315 INFO    ] Waiting 0.98 seconds before fallback handling...
[2026-06-12 01:11:11,689.689 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 01:11:11,691.691 INFO    ] Checking for system updates...
[2026-06-12 01:11:11,713.713 INFO    ] 200
[2026-06-12 01:11:11,714.714 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:11:11,746.746 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 01:11:11,748.748 INFO    ] No update needed
[2026-06-12 01:11:11,749.749 INFO    ] Checking for camera pi updates...
[2026-06-12 01:11:11,770.770 INFO    ] 200
[2026-06-12 01:11:11,771.771 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:11:11,797.797 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 01:11:11,830.830 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 01:11:11,831.831 INFO    ] No camera update needed
[2026-06-12 01:11:11,833.833 INFO    ] Script finished. Safe exiting...
[2026-06-12 01:11:11,834.834 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 01:11:11,837.837 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 01:11:11,840.840 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 01:11:13,878.878 INFO    ] ================================================
[2026-06-12 01:11:13,894.894 INFO    ] Launching Daemon at Fri Jun 12 01:11:13 IST 2026
[2026-06-12 01:11:13,907.907 INFO    ] ================================================
[2026-06-12 01:11:14,244.244 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 01:11:14
[2026-06-12 01:11:14,560.560 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 01:11:14,691.691 INFO    ] Initializing speech engine...
[2026-06-12 01:11:14,695.695 INFO    ] 2026-06-12 01:11:14
[2026-06-12 01:11:14,911.911 INFO    ] 2026-06-12 01:11:14
[2026-06-12 01:11:14,939.939 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 01:11:15,124.124 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 01:11:15,127.127 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 01:11:15,264.264 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 01:11:15,328.328 INFO    ] time= 12/06/2026 01:11:15
[2026-06-12 01:11:15,355.355 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 01:11:15,362.362 INFO    ] Checking for existing commands in stream...
[2026-06-12 01:11:15,429.429 INFO    ] No existing commands found in stream
[2026-06-12 01:11:20,443.443 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 01:11:20,446.446 INFO    ] Waiting 0.38 seconds before fallback handling...
[2026-06-12 01:11:21,236.236 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 01:11:21,238.238 INFO    ] Checking for system updates...
[2026-06-12 01:11:21,258.258 INFO    ] 200
[2026-06-12 01:11:21,260.260 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:11:21,290.290 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 01:11:21,291.291 INFO    ] No update needed
[2026-06-12 01:11:21,293.293 INFO    ] Checking for camera pi updates...
[2026-06-12 01:11:21,312.312 INFO    ] 200
[2026-06-12 01:11:21,313.313 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:11:21,337.337 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 01:11:21,380.380 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 01:11:21,381.381 INFO    ] No camera update needed
[2026-06-12 01:11:21,383.383 INFO    ] Script finished. Safe exiting...
[2026-06-12 01:11:21,384.384 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 01:11:21,387.387 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 01:11:21,390.390 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 01:11:23,430.430 INFO    ] ================================================
[2026-06-12 01:11:23,446.446 INFO    ] Launching Daemon at Fri Jun 12 01:11:23 IST 2026
[2026-06-12 01:11:23,458.458 INFO    ] ================================================
[2026-06-12 01:11:23,808.808 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 01:11:23
[2026-06-12 01:11:24,137.137 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 01:11:24,286.286 INFO    ] Initializing speech engine...
[2026-06-12 01:11:24,292.292 INFO    ] 2026-06-12 01:11:24
[2026-06-12 01:11:24,499.499 INFO    ] 2026-06-12 01:11:24
[2026-06-12 01:11:24,528.528 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 01:11:24,714.714 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 01:11:24,724.724 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 01:11:24,849.849 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 01:11:24,910.910 INFO    ] time= 12/06/2026 01:11:24
[2026-06-12 01:11:24,948.948 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 01:11:24,955.955 INFO    ] Checking for existing commands in stream...
[2026-06-12 01:11:25,023.023 INFO    ] No existing commands found in stream
[2026-06-12 01:11:30,032.032 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 01:11:30,035.035 INFO    ] Waiting 0.16 seconds before fallback handling...
[2026-06-12 01:11:30,555.555 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 01:11:30,557.557 INFO    ] Checking for system updates...
[2026-06-12 01:11:30,577.577 INFO    ] 200
[2026-06-12 01:11:30,579.579 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:11:30,609.609 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 01:11:30,610.610 INFO    ] No update needed
[2026-06-12 01:11:30,611.611 INFO    ] Checking for camera pi updates...
[2026-06-12 01:11:30,633.633 INFO    ] 200
[2026-06-12 01:11:30,634.634 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:11:30,658.658 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 01:11:30,705.705 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 01:11:30,707.707 INFO    ] No camera update needed
[2026-06-12 01:11:30,708.708 INFO    ] Script finished. Safe exiting...
[2026-06-12 01:11:30,709.709 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 01:11:30,712.712 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 01:11:30,715.715 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 01:11:32,746.746 INFO    ] ================================================
[2026-06-12 01:11:32,762.762 INFO    ] Launching Daemon at Fri Jun 12 01:11:32 IST 2026
[2026-06-12 01:11:32,773.773 INFO    ] ================================================
[2026-06-12 01:11:33,128.128 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 01:11:33
[2026-06-12 01:11:33,443.443 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 01:11:33,584.584 INFO    ] Initializing speech engine...
[2026-06-12 01:11:33,594.594 INFO    ] 2026-06-12 01:11:33
[2026-06-12 01:11:33,799.799 INFO    ] 2026-06-12 01:11:33
[2026-06-12 01:11:33,829.829 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 01:11:34,014.014 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 01:11:34,017.017 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 01:11:34,151.151 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 01:11:34,208.208 INFO    ] time= 12/06/2026 01:11:34
[2026-06-12 01:11:34,238.238 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 01:11:34,249.249 INFO    ] Checking for existing commands in stream...
[2026-06-12 01:11:34,321.321 INFO    ] No existing commands found in stream
[2026-06-12 01:11:39,330.330 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 01:11:39,333.333 INFO    ] Waiting 2.65 seconds before fallback handling...
[2026-06-12 01:11:42,369.369 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 01:11:42,371.371 INFO    ] Checking for system updates...
[2026-06-12 01:11:42,391.391 INFO    ] 200
[2026-06-12 01:11:42,393.393 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:11:42,425.425 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 01:11:42,426.426 INFO    ] No update needed
[2026-06-12 01:11:42,428.428 INFO    ] Checking for camera pi updates...
[2026-06-12 01:11:42,450.450 INFO    ] 200
[2026-06-12 01:11:42,451.451 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:11:42,476.476 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 01:11:42,521.521 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 01:11:42,523.523 INFO    ] No camera update needed
[2026-06-12 01:11:42,524.524 INFO    ] Script finished. Safe exiting...
[2026-06-12 01:11:42,525.525 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 01:11:42,528.528 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 01:11:42,532.532 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 01:11:44,570.570 INFO    ] ================================================
[2026-06-12 01:11:44,586.586 INFO    ] Launching Daemon at Fri Jun 12 01:11:44 IST 2026
[2026-06-12 01:11:44,597.597 INFO    ] ================================================
[2026-06-12 01:11:44,927.927 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 01:11:44
[2026-06-12 01:11:45,239.239 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 01:11:45,381.381 INFO    ] Initializing speech engine...
[2026-06-12 01:11:45,387.387 INFO    ] 2026-06-12 01:11:45
[2026-06-12 01:11:45,590.590 INFO    ] 2026-06-12 01:11:45
[2026-06-12 01:11:45,619.619 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 01:11:45,802.802 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 01:11:45,811.811 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 01:11:45,956.956 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 01:11:46,009.009 INFO    ] time= 12/06/2026 01:11:45
[2026-06-12 01:11:46,031.031 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 01:11:46,037.037 INFO    ] Checking for existing commands in stream...
[2026-06-12 01:11:46,128.128 INFO    ] No existing commands found in stream
[2026-06-12 01:11:51,137.137 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 01:11:51,140.140 INFO    ] Waiting 0.77 seconds before fallback handling...
[2026-06-12 01:11:52,267.267 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 01:11:52,268.268 INFO    ] Checking for system updates...
[2026-06-12 01:11:52,289.289 INFO    ] 200
[2026-06-12 01:11:52,291.291 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:11:52,321.321 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 01:11:52,322.322 INFO    ] No update needed
[2026-06-12 01:11:52,323.323 INFO    ] Checking for camera pi updates...
[2026-06-12 01:11:52,343.343 INFO    ] 200
[2026-06-12 01:11:52,344.344 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:11:52,369.369 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 01:11:52,401.401 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 01:11:52,402.402 INFO    ] No camera update needed
[2026-06-12 01:11:52,404.404 INFO    ] Script finished. Safe exiting...
[2026-06-12 01:11:52,405.405 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 01:11:52,408.408 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 01:11:52,410.410 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 01:11:54,449.449 INFO    ] ================================================
[2026-06-12 01:11:54,464.464 INFO    ] Launching Daemon at Fri Jun 12 01:11:54 IST 2026
[2026-06-12 01:11:54,476.476 INFO    ] ================================================
[2026-06-12 01:11:54,818.818 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 01:11:54
[2026-06-12 01:11:55,133.133 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 01:11:55,273.273 INFO    ] Initializing speech engine...
[2026-06-12 01:11:55,283.283 INFO    ] 2026-06-12 01:11:55
[2026-06-12 01:11:55,487.487 INFO    ] 2026-06-12 01:11:55
[2026-06-12 01:11:55,515.515 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 01:11:55,700.700 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 01:11:55,709.709 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 01:11:55,837.837 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 01:11:55,883.883 INFO    ] time= 12/06/2026 01:11:55
[2026-06-12 01:11:55,922.922 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 01:11:55,932.932 INFO    ] Checking for existing commands in stream...
[2026-06-12 01:11:56,004.004 INFO    ] No existing commands found in stream
[2026-06-12 01:12:01,013.013 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 01:12:01,016.016 INFO    ] Waiting 0.94 seconds before fallback handling...
[2026-06-12 01:12:02,308.308 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 01:12:02,309.309 INFO    ] Checking for system updates...
[2026-06-12 01:12:02,340.340 INFO    ] 200
[2026-06-12 01:12:02,341.341 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:12:02,372.372 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 01:12:02,374.374 INFO    ] No update needed
[2026-06-12 01:12:02,377.377 INFO    ] Checking for camera pi updates...
[2026-06-12 01:12:02,401.401 INFO    ] 200
[2026-06-12 01:12:02,402.402 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:12:02,427.427 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 01:12:02,456.456 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 01:12:02,457.457 INFO    ] No camera update needed
[2026-06-12 01:12:02,459.459 INFO    ] Script finished. Safe exiting...
[2026-06-12 01:12:02,460.460 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 01:12:02,463.463 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 01:12:02,466.466 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 01:12:04,505.505 INFO    ] ================================================
[2026-06-12 01:12:04,521.521 INFO    ] Launching Daemon at Fri Jun 12 01:12:04 IST 2026
[2026-06-12 01:12:04,532.532 INFO    ] ================================================
[2026-06-12 01:12:04,862.862 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 01:12:04
[2026-06-12 01:12:05,174.174 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 01:12:05,304.304 INFO    ] Initializing speech engine...
[2026-06-12 01:12:05,308.308 INFO    ] 2026-06-12 01:12:05
[2026-06-12 01:12:05,534.534 INFO    ] 2026-06-12 01:12:05
[2026-06-12 01:12:05,569.569 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 01:12:05,759.759 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 01:12:05,769.769 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 01:12:05,914.914 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 01:12:05,967.967 INFO    ] time= 12/06/2026 01:12:05
[2026-06-12 01:12:05,990.990 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 01:12:05,996.996 INFO    ] Checking for existing commands in stream...
[2026-06-12 01:12:06,068.068 INFO    ] No existing commands found in stream
[2026-06-12 01:12:11,076.076 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 01:12:11,079.079 INFO    ] Waiting 3.65 seconds before fallback handling...
[2026-06-12 01:12:15,088.088 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 01:12:15,090.090 INFO    ] Checking for system updates...
[2026-06-12 01:12:15,111.111 INFO    ] 200
[2026-06-12 01:12:15,113.113 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:12:15,143.143 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 01:12:15,144.144 INFO    ] No update needed
[2026-06-12 01:12:15,146.146 INFO    ] Checking for camera pi updates...
[2026-06-12 01:12:15,165.165 INFO    ] 200
[2026-06-12 01:12:15,167.167 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:12:15,189.189 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 01:12:15,239.239 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 01:12:15,240.240 INFO    ] No camera update needed
[2026-06-12 01:12:15,242.242 INFO    ] Script finished. Safe exiting...
[2026-06-12 01:12:15,243.243 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 01:12:15,246.246 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 01:12:15,248.248 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 01:12:17,287.287 INFO    ] ================================================
[2026-06-12 01:12:17,302.302 INFO    ] Launching Daemon at Fri Jun 12 01:12:17 IST 2026
[2026-06-12 01:12:17,313.313 INFO    ] ================================================
[2026-06-12 01:12:17,678.678 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 01:12:17
[2026-06-12 01:12:18,016.016 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 01:12:18,153.153 INFO    ] Initializing speech engine...
[2026-06-12 01:12:18,158.158 INFO    ] 2026-06-12 01:12:18
[2026-06-12 01:12:18,387.387 INFO    ] 2026-06-12 01:12:18
[2026-06-12 01:12:18,417.417 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 01:12:18,615.615 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 01:12:18,619.619 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 01:12:18,759.759 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 01:12:18,815.815 INFO    ] time= 12/06/2026 01:12:18
[2026-06-12 01:12:18,863.863 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 01:12:18,870.870 INFO    ] Checking for existing commands in stream...
[2026-06-12 01:12:18,945.945 INFO    ] No existing commands found in stream
[2026-06-12 01:12:23,955.955 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 01:12:23,956.956 INFO    ] Waiting 0.48 seconds before fallback handling...
[2026-06-12 01:12:24,806.806 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 01:12:24,808.808 INFO    ] Checking for system updates...
[2026-06-12 01:12:24,828.828 INFO    ] 200
[2026-06-12 01:12:24,830.830 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:12:24,863.863 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 01:12:24,864.864 INFO    ] No update needed
[2026-06-12 01:12:24,866.866 INFO    ] Checking for camera pi updates...
[2026-06-12 01:12:24,885.885 INFO    ] 200
[2026-06-12 01:12:24,886.886 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:12:24,909.909 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 01:12:25,035.035 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 01:12:25,037.037 INFO    ] No camera update needed
[2026-06-12 01:12:25,038.038 INFO    ] Script finished. Safe exiting...
[2026-06-12 01:12:25,039.039 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 01:12:25,042.042 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 01:12:25,045.045 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 01:12:27,084.084 INFO    ] ================================================
[2026-06-12 01:12:27,100.100 INFO    ] Launching Daemon at Fri Jun 12 01:12:27 IST 2026
[2026-06-12 01:12:27,111.111 INFO    ] ================================================
[2026-06-12 01:12:27,467.467 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 01:12:27
[2026-06-12 01:12:27,785.785 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 01:12:27,924.924 INFO    ] Initializing speech engine...
[2026-06-12 01:12:27,934.934 INFO    ] 2026-06-12 01:12:27
[2026-06-12 01:12:28,138.138 INFO    ] 2026-06-12 01:12:28
[2026-06-12 01:12:28,166.166 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 01:12:28,348.348 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 01:12:28,358.358 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 01:12:28,497.497 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 01:12:28,553.553 INFO    ] time= 12/06/2026 01:12:28
[2026-06-12 01:12:28,576.576 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 01:12:28,583.583 INFO    ] Checking for existing commands in stream...
[2026-06-12 01:12:28,672.672 INFO    ] No existing commands found in stream
[2026-06-12 01:12:33,677.677 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 01:12:33,686.686 INFO    ] Waiting 2.27 seconds before fallback handling...
[2026-06-12 01:12:36,302.302 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 01:12:36,304.304 INFO    ] Checking for system updates...
[2026-06-12 01:12:36,325.325 INFO    ] 200
[2026-06-12 01:12:36,326.326 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:12:36,359.359 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 01:12:36,360.360 INFO    ] No update needed
[2026-06-12 01:12:36,362.362 INFO    ] Checking for camera pi updates...
[2026-06-12 01:12:36,381.381 INFO    ] 200
[2026-06-12 01:12:36,382.382 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:12:36,405.405 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 01:12:36,465.465 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 01:12:36,466.466 INFO    ] No camera update needed
[2026-06-12 01:12:36,468.468 INFO    ] Script finished. Safe exiting...
[2026-06-12 01:12:36,469.469 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 01:12:36,472.472 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 01:12:36,475.475 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 01:12:38,517.517 INFO    ] ================================================
[2026-06-12 01:12:38,532.532 INFO    ] Launching Daemon at Fri Jun 12 01:12:38 IST 2026
[2026-06-12 01:12:38,543.543 INFO    ] ================================================
[2026-06-12 01:12:38,870.870 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 01:12:38
[2026-06-12 01:12:39,180.180 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 01:12:39,312.312 INFO    ] Initializing speech engine...
[2026-06-12 01:12:39,320.320 INFO    ] 2026-06-12 01:12:39
[2026-06-12 01:12:39,534.534 INFO    ] 2026-06-12 01:12:39
[2026-06-12 01:12:39,563.563 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 01:12:39,752.752 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 01:12:39,761.761 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 01:12:39,894.894 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 01:12:39,958.958 INFO    ] time= 12/06/2026 01:12:39
[2026-06-12 01:12:39,986.986 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 01:12:39,992.992 INFO    ] Checking for existing commands in stream...
[2026-06-12 01:12:40,060.060 INFO    ] No existing commands found in stream
[2026-06-12 01:12:45,069.069 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 01:12:45,072.072 INFO    ] Waiting 3.90 seconds before fallback handling...
[2026-06-12 01:12:49,349.349 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 01:12:49,351.351 INFO    ] Checking for system updates...
[2026-06-12 01:12:49,372.372 INFO    ] 200
[2026-06-12 01:12:49,374.374 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:12:49,406.406 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 01:12:49,408.408 INFO    ] No update needed
[2026-06-12 01:12:49,409.409 INFO    ] Checking for camera pi updates...
[2026-06-12 01:12:49,428.428 INFO    ] 200
[2026-06-12 01:12:49,429.429 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:12:49,452.452 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 01:12:49,501.501 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 01:12:49,502.502 INFO    ] No camera update needed
[2026-06-12 01:12:49,503.503 INFO    ] Script finished. Safe exiting...
[2026-06-12 01:12:49,505.505 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 01:12:49,507.507 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 01:12:49,510.510 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 01:12:51,548.548 INFO    ] ================================================
[2026-06-12 01:12:51,563.563 INFO    ] Launching Daemon at Fri Jun 12 01:12:51 IST 2026
[2026-06-12 01:12:51,574.574 INFO    ] ================================================
[2026-06-12 01:12:51,942.942 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 01:12:51
[2026-06-12 01:12:52,280.280 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 01:12:52,419.419 INFO    ] Initializing speech engine...
[2026-06-12 01:12:52,427.427 INFO    ] 2026-06-12 01:12:52
[2026-06-12 01:12:52,650.650 INFO    ] 2026-06-12 01:12:52
[2026-06-12 01:12:52,678.678 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 01:12:52,867.867 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 01:12:52,871.871 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 01:12:53,013.013 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 01:12:53,081.081 INFO    ] time= 12/06/2026 01:12:53
[2026-06-12 01:12:53,105.105 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 01:12:53,107.107 INFO    ] Checking for existing commands in stream...
[2026-06-12 01:12:53,179.179 INFO    ] No existing commands found in stream
[2026-06-12 01:12:58,189.189 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 01:12:58,192.192 INFO    ] Waiting 3.13 seconds before fallback handling...
[2026-06-12 01:13:01,736.736 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 01:13:01,738.738 INFO    ] Checking for system updates...
[2026-06-12 01:13:01,797.797 INFO    ] 200
[2026-06-12 01:13:01,800.800 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:13:01,850.850 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 01:13:01,852.852 INFO    ] No update needed
[2026-06-12 01:13:01,854.854 INFO    ] Checking for camera pi updates...
[2026-06-12 01:13:01,878.878 INFO    ] 200
[2026-06-12 01:13:01,879.879 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:13:01,910.910 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 01:13:01,944.944 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 01:13:01,946.946 INFO    ] No camera update needed
[2026-06-12 01:13:01,947.947 INFO    ] Script finished. Safe exiting...
[2026-06-12 01:13:01,949.949 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 01:13:01,953.953 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 01:13:01,957.957 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 01:13:04,997.997 INFO    ] ================================================
[2026-06-12 01:13:04,013.013 INFO    ] Launching Daemon at Fri Jun 12 01:13:04 IST 2026
[2026-06-12 01:13:04,024.024 INFO    ] ================================================
[2026-06-12 01:13:04,376.376 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 01:13:04
[2026-06-12 01:13:04,713.713 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 01:13:04,865.865 INFO    ] Initializing speech engine...
[2026-06-12 01:13:04,869.869 INFO    ] 2026-06-12 01:13:04
[2026-06-12 01:13:05,077.077 INFO    ] 2026-06-12 01:13:05
[2026-06-12 01:13:05,105.105 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 01:13:05,289.289 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 01:13:05,299.299 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 01:13:05,444.444 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 01:13:05,498.498 INFO    ] time= 12/06/2026 01:13:05
[2026-06-12 01:13:05,520.520 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 01:13:05,526.526 INFO    ] Checking for existing commands in stream...
[2026-06-12 01:13:05,593.593 INFO    ] No existing commands found in stream
[2026-06-12 01:13:10,607.607 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 01:13:10,610.610 INFO    ] Waiting 2.63 seconds before fallback handling...
[2026-06-12 01:13:13,640.640 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 01:13:13,642.642 INFO    ] Checking for system updates...
[2026-06-12 01:13:13,664.664 INFO    ] 200
[2026-06-12 01:13:13,666.666 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:13:13,696.696 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 01:13:13,697.697 INFO    ] No update needed
[2026-06-12 01:13:13,699.699 INFO    ] Checking for camera pi updates...
[2026-06-12 01:13:13,718.718 INFO    ] 200
[2026-06-12 01:13:13,720.720 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:13:13,745.745 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 01:13:13,789.789 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 01:13:13,790.790 INFO    ] No camera update needed
[2026-06-12 01:13:13,792.792 INFO    ] Script finished. Safe exiting...
[2026-06-12 01:13:13,793.793 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 01:13:13,796.796 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 01:13:13,799.799 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 01:13:15,840.840 INFO    ] ================================================
[2026-06-12 01:13:15,856.856 INFO    ] Launching Daemon at Fri Jun 12 01:13:15 IST 2026
[2026-06-12 01:13:15,867.867 INFO    ] ================================================
[2026-06-12 01:13:16,207.207 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 01:13:16
[2026-06-12 01:13:16,519.519 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 01:13:16,661.661 INFO    ] Initializing speech engine...
[2026-06-12 01:13:16,666.666 INFO    ] 2026-06-12 01:13:16
[2026-06-12 01:13:16,868.868 INFO    ] 2026-06-12 01:13:16
[2026-06-12 01:13:16,896.896 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 01:13:17,019.019 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 01:13:17,081.081 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 01:13:17,218.218 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 01:13:17,272.272 INFO    ] time= 12/06/2026 01:13:17
[2026-06-12 01:13:17,308.308 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 01:13:17,310.310 INFO    ] Checking for existing commands in stream...
[2026-06-12 01:13:17,382.382 INFO    ] No existing commands found in stream
[2026-06-12 01:13:22,391.391 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 01:13:22,394.394 INFO    ] Waiting 0.59 seconds before fallback handling...
[2026-06-12 01:13:24,408.408 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 01:13:24,409.409 INFO    ] Checking for system updates...
[2026-06-12 01:13:24,431.431 INFO    ] 200
[2026-06-12 01:13:24,433.433 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:13:24,462.462 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 01:13:24,464.464 INFO    ] No update needed
[2026-06-12 01:13:24,465.465 INFO    ] Checking for camera pi updates...
[2026-06-12 01:13:24,485.485 INFO    ] 200
[2026-06-12 01:13:24,487.487 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:13:24,510.510 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 01:13:24,556.556 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 01:13:24,558.558 INFO    ] No camera update needed
[2026-06-12 01:13:24,559.559 INFO    ] Script finished. Safe exiting...
[2026-06-12 01:13:24,560.560 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 01:13:24,563.563 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 01:13:24,566.566 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 01:13:26,606.606 INFO    ] ================================================
[2026-06-12 01:13:26,622.622 INFO    ] Launching Daemon at Fri Jun 12 01:13:26 IST 2026
[2026-06-12 01:13:26,634.634 INFO    ] ================================================
[2026-06-12 01:13:26,979.979 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 01:13:26
[2026-06-12 01:13:27,290.290 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 01:13:27,421.421 INFO    ] Initializing speech engine...
[2026-06-12 01:13:27,429.429 INFO    ] 2026-06-12 01:13:27
[2026-06-12 01:13:27,640.640 INFO    ] 2026-06-12 01:13:27
[2026-06-12 01:13:27,669.669 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 01:13:27,801.801 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 01:13:27,854.854 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 01:13:27,991.991 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 01:13:28,058.058 INFO    ] time= 12/06/2026 01:13:27
[2026-06-12 01:13:28,082.082 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 01:13:28,088.088 INFO    ] Checking for existing commands in stream...
[2026-06-12 01:13:28,178.178 INFO    ] No existing commands found in stream
[2026-06-12 01:13:33,187.187 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 01:13:33,190.190 INFO    ] Waiting 2.41 seconds before fallback handling...
[2026-06-12 01:13:35,981.981 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 01:13:35,982.982 INFO    ] Checking for system updates...
[2026-06-12 01:13:36,004.004 INFO    ] 200
[2026-06-12 01:13:36,006.006 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:13:36,039.039 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 01:13:36,040.040 INFO    ] No update needed
[2026-06-12 01:13:36,042.042 INFO    ] Checking for camera pi updates...
[2026-06-12 01:13:36,062.062 INFO    ] 200
[2026-06-12 01:13:36,063.063 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:13:36,087.087 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 01:13:36,140.140 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 01:13:36,142.142 INFO    ] No camera update needed
[2026-06-12 01:13:36,143.143 INFO    ] Script finished. Safe exiting...
[2026-06-12 01:13:36,144.144 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 01:13:36,148.148 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 01:13:36,151.151 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 01:13:38,192.192 INFO    ] ================================================
[2026-06-12 01:13:38,208.208 INFO    ] Launching Daemon at Fri Jun 12 01:13:38 IST 2026
[2026-06-12 01:13:38,219.219 INFO    ] ================================================
[2026-06-12 01:13:38,551.551 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 01:13:38
[2026-06-12 01:13:38,864.864 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 01:13:39,007.007 INFO    ] Initializing speech engine...
[2026-06-12 01:13:39,012.012 INFO    ] 2026-06-12 01:13:39
[2026-06-12 01:13:39,215.215 INFO    ] 2026-06-12 01:13:39
[2026-06-12 01:13:39,242.242 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 01:13:39,425.425 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 01:13:39,428.428 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 01:13:39,563.563 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 01:13:39,627.627 INFO    ] time= 12/06/2026 01:13:39
[2026-06-12 01:13:39,654.654 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 01:13:39,660.660 INFO    ] Checking for existing commands in stream...
[2026-06-12 01:13:39,727.727 INFO    ] No existing commands found in stream
[2026-06-12 01:13:44,741.741 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 01:13:44,744.744 INFO    ] Waiting 3.33 seconds before fallback handling...
[2026-06-12 01:13:48,449.449 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 01:13:48,450.450 INFO    ] Checking for system updates...
[2026-06-12 01:13:48,471.471 INFO    ] 200
[2026-06-12 01:13:48,472.472 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:13:48,502.502 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 01:13:48,504.504 INFO    ] No update needed
[2026-06-12 01:13:48,505.505 INFO    ] Checking for camera pi updates...
[2026-06-12 01:13:48,524.524 INFO    ] 200
[2026-06-12 01:13:48,525.525 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:13:48,551.551 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 01:13:48,593.593 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 01:13:48,595.595 INFO    ] No camera update needed
[2026-06-12 01:13:48,596.596 INFO    ] Script finished. Safe exiting...
[2026-06-12 01:13:48,597.597 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 01:13:48,600.600 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 01:13:48,603.603 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 01:13:50,646.646 INFO    ] ================================================
[2026-06-12 01:13:50,662.662 INFO    ] Launching Daemon at Fri Jun 12 01:13:50 IST 2026
[2026-06-12 01:13:50,673.673 INFO    ] ================================================
[2026-06-12 01:13:51,029.029 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 01:13:51
[2026-06-12 01:13:51,340.340 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 01:13:51,483.483 INFO    ] Initializing speech engine...
[2026-06-12 01:13:51,489.489 INFO    ] 2026-06-12 01:13:51
[2026-06-12 01:13:51,691.691 INFO    ] 2026-06-12 01:13:51
[2026-06-12 01:13:51,719.719 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 01:13:51,861.861 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 01:13:51,863.863 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 01:13:52,023.023 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 01:13:52,046.046 INFO    ] time= 12/06/2026 01:13:52
[2026-06-12 01:13:52,113.113 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 01:13:52,137.137 INFO    ] Checking for existing commands in stream...
[2026-06-12 01:13:52,231.231 INFO    ] No existing commands found in stream
[2026-06-12 01:13:57,240.240 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 01:13:57,243.243 INFO    ] Waiting 0.10 seconds before fallback handling...
[2026-06-12 01:13:57,698.698 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 01:13:57,700.700 INFO    ] Checking for system updates...
[2026-06-12 01:13:57,722.722 INFO    ] 200
[2026-06-12 01:13:57,724.724 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:13:57,756.756 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 01:13:57,758.758 INFO    ] No update needed
[2026-06-12 01:13:57,759.759 INFO    ] Checking for camera pi updates...
[2026-06-12 01:13:57,780.780 INFO    ] 200
[2026-06-12 01:13:57,781.781 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:13:57,806.806 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 01:13:57,851.851 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 01:13:57,852.852 INFO    ] No camera update needed
[2026-06-12 01:13:57,854.854 INFO    ] Script finished. Safe exiting...
[2026-06-12 01:13:57,855.855 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 01:13:57,858.858 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 01:13:57,861.861 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 01:13:59,899.899 INFO    ] ================================================
[2026-06-12 01:13:59,916.916 INFO    ] Launching Daemon at Fri Jun 12 01:13:59 IST 2026
[2026-06-12 01:13:59,927.927 INFO    ] ================================================
[2026-06-12 01:14:00,256.256 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 01:14:00
[2026-06-12 01:14:00,572.572 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 01:14:00,717.717 INFO    ] Initializing speech engine...
[2026-06-12 01:14:00,722.722 INFO    ] 2026-06-12 01:14:00
[2026-06-12 01:14:00,927.927 INFO    ] 2026-06-12 01:14:00
[2026-06-12 01:14:00,955.955 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 01:14:01,104.104 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 01:14:01,106.106 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 01:14:01,223.223 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 01:14:01,225.225 INFO    ] time= 12/06/2026 01:14:01
[2026-06-12 01:14:01,226.226 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 01:14:01,227.227 INFO    ] Checking for existing commands in stream...
[2026-06-12 01:14:01,360.360 INFO    ] No existing commands found in stream
[2026-06-12 01:14:06,372.372 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 01:14:06,375.375 INFO    ] Waiting 1.53 seconds before fallback handling...
[2026-06-12 01:14:08,256.256 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 01:14:08,258.258 INFO    ] Checking for system updates...
[2026-06-12 01:14:08,279.279 INFO    ] 200
[2026-06-12 01:14:08,280.280 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:14:08,312.312 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 01:14:08,313.313 INFO    ] No update needed
[2026-06-12 01:14:08,314.314 INFO    ] Checking for camera pi updates...
[2026-06-12 01:14:08,334.334 INFO    ] 200
[2026-06-12 01:14:08,335.335 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:14:08,360.360 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 01:14:08,405.405 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 01:14:08,406.406 INFO    ] No camera update needed
[2026-06-12 01:14:08,408.408 INFO    ] Script finished. Safe exiting...
[2026-06-12 01:14:08,409.409 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 01:14:08,412.412 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 01:14:08,415.415 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 01:14:10,453.453 INFO    ] ================================================
[2026-06-12 01:14:10,469.469 INFO    ] Launching Daemon at Fri Jun 12 01:14:10 IST 2026
[2026-06-12 01:14:10,479.479 INFO    ] ================================================
[2026-06-12 01:14:10,839.839 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 01:14:10
[2026-06-12 01:14:11,153.153 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 01:14:11,286.286 INFO    ] Initializing speech engine...
[2026-06-12 01:14:11,298.298 INFO    ] 2026-06-12 01:14:11
[2026-06-12 01:14:11,507.507 INFO    ] 2026-06-12 01:14:11
[2026-06-12 01:14:11,536.536 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 01:14:11,721.721 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 01:14:11,731.731 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 01:14:11,878.878 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 01:14:11,932.932 INFO    ] time= 12/06/2026 01:14:11
[2026-06-12 01:14:11,954.954 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 01:14:11,960.960 INFO    ] Checking for existing commands in stream...
[2026-06-12 01:14:12,052.052 INFO    ] No existing commands found in stream
[2026-06-12 01:14:17,061.061 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 01:14:17,063.063 INFO    ] Waiting 3.92 seconds before fallback handling...
[2026-06-12 01:14:21,367.367 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 01:14:21,369.369 INFO    ] Checking for system updates...
[2026-06-12 01:14:21,389.389 INFO    ] 200
[2026-06-12 01:14:21,391.391 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:14:21,421.421 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 01:14:21,423.423 INFO    ] No update needed
[2026-06-12 01:14:21,424.424 INFO    ] Checking for camera pi updates...
[2026-06-12 01:14:21,444.444 INFO    ] 200
[2026-06-12 01:14:21,445.445 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:14:21,470.470 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 01:14:21,514.514 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 01:14:21,516.516 INFO    ] No camera update needed
[2026-06-12 01:14:21,517.517 INFO    ] Script finished. Safe exiting...
[2026-06-12 01:14:21,518.518 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 01:14:21,521.521 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 01:14:21,524.524 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 01:14:23,566.566 INFO    ] ================================================
[2026-06-12 01:14:23,582.582 INFO    ] Launching Daemon at Fri Jun 12 01:14:23 IST 2026
[2026-06-12 01:14:23,593.593 INFO    ] ================================================
[2026-06-12 01:14:23,980.980 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 01:14:23
[2026-06-12 01:14:24,318.318 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 01:14:24,465.465 INFO    ] Initializing speech engine...
[2026-06-12 01:14:24,476.476 INFO    ] 2026-06-12 01:14:24
[2026-06-12 01:14:24,685.685 INFO    ] 2026-06-12 01:14:24
[2026-06-12 01:14:24,714.714 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 01:14:24,896.896 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 01:14:24,900.900 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 01:14:25,036.036 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 01:14:25,103.103 INFO    ] time= 12/06/2026 01:14:25
[2026-06-12 01:14:25,127.127 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 01:14:25,134.134 INFO    ] Checking for existing commands in stream...
[2026-06-12 01:14:25,201.201 INFO    ] No existing commands found in stream
[2026-06-12 01:14:30,210.210 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 01:14:30,214.214 INFO    ] Waiting 0.06 seconds before fallback handling...
[2026-06-12 01:14:30,630.630 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 01:14:30,631.631 INFO    ] Checking for system updates...
[2026-06-12 01:14:30,654.654 INFO    ] 200
[2026-06-12 01:14:30,655.655 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:14:30,691.691 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 01:14:30,692.692 INFO    ] No update needed
[2026-06-12 01:14:30,694.694 INFO    ] Checking for camera pi updates...
[2026-06-12 01:14:30,717.717 INFO    ] 200
[2026-06-12 01:14:30,719.719 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:14:30,745.745 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 01:14:30,881.881 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 01:14:30,883.883 INFO    ] No camera update needed
[2026-06-12 01:14:30,884.884 INFO    ] Script finished. Safe exiting...
[2026-06-12 01:14:30,886.886 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 01:14:30,889.889 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 01:14:30,892.892 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 01:14:32,932.932 INFO    ] ================================================
[2026-06-12 01:14:32,948.948 INFO    ] Launching Daemon at Fri Jun 12 01:14:32 IST 2026
[2026-06-12 01:14:32,959.959 INFO    ] ================================================
[2026-06-12 01:14:33,337.337 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 01:14:33
[2026-06-12 01:14:33,658.658 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 01:14:33,788.788 INFO    ] Initializing speech engine...
[2026-06-12 01:14:33,793.793 INFO    ] 2026-06-12 01:14:33
[2026-06-12 01:14:34,012.012 INFO    ] 2026-06-12 01:14:33
[2026-06-12 01:14:34,042.042 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 01:14:34,227.227 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 01:14:34,231.231 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 01:14:34,361.361 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 01:14:34,417.417 INFO    ] time= 12/06/2026 01:14:34
[2026-06-12 01:14:34,460.460 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 01:14:34,462.462 INFO    ] Checking for existing commands in stream...
[2026-06-12 01:14:34,534.534 INFO    ] No existing commands found in stream
[2026-06-12 01:14:39,543.543 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 01:14:39,546.546 INFO    ] Waiting 2.62 seconds before fallback handling...
[2026-06-12 01:14:42,568.568 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 01:14:42,569.569 INFO    ] Checking for system updates...
[2026-06-12 01:14:42,592.592 INFO    ] 200
[2026-06-12 01:14:42,594.594 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:14:42,627.627 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 01:14:42,628.628 INFO    ] No update needed
[2026-06-12 01:14:42,630.630 INFO    ] Checking for camera pi updates...
[2026-06-12 01:14:42,649.649 INFO    ] 200
[2026-06-12 01:14:42,651.651 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:14:42,676.676 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 01:14:42,732.732 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 01:14:42,734.734 INFO    ] No camera update needed
[2026-06-12 01:14:42,735.735 INFO    ] Script finished. Safe exiting...
[2026-06-12 01:14:42,736.736 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 01:14:42,739.739 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 01:14:42,742.742 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 01:14:44,786.786 INFO    ] ================================================
[2026-06-12 01:14:44,802.802 INFO    ] Launching Daemon at Fri Jun 12 01:14:44 IST 2026
[2026-06-12 01:14:44,813.813 INFO    ] ================================================
[2026-06-12 01:14:45,154.154 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 01:14:45
[2026-06-12 01:14:45,465.465 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 01:14:45,594.594 INFO    ] Initializing speech engine...
[2026-06-12 01:14:45,598.598 INFO    ] 2026-06-12 01:14:45
[2026-06-12 01:14:45,813.813 INFO    ] 2026-06-12 01:14:45
[2026-06-12 01:14:45,842.842 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 01:14:46,029.029 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 01:14:46,033.033 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 01:14:46,181.181 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 01:14:46,240.240 INFO    ] time= 12/06/2026 01:14:46
[2026-06-12 01:14:46,275.275 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 01:14:46,281.281 INFO    ] Checking for existing commands in stream...
[2026-06-12 01:14:46,409.409 INFO    ] No existing commands found in stream
[2026-06-12 01:14:51,419.419 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 01:14:51,422.422 INFO    ] Waiting 2.56 seconds before fallback handling...
[2026-06-12 01:14:54,378.378 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 01:14:54,379.379 INFO    ] Checking for system updates...
[2026-06-12 01:14:54,400.400 INFO    ] 200
[2026-06-12 01:14:54,402.402 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:14:54,433.433 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 01:14:54,434.434 INFO    ] No update needed
[2026-06-12 01:14:54,435.435 INFO    ] Checking for camera pi updates...
[2026-06-12 01:14:54,455.455 INFO    ] 200
[2026-06-12 01:14:54,456.456 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:14:54,479.479 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 01:14:54,522.522 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 01:14:54,524.524 INFO    ] No camera update needed
[2026-06-12 01:14:54,525.525 INFO    ] Script finished. Safe exiting...
[2026-06-12 01:14:54,526.526 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 01:14:54,529.529 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 01:14:54,532.532 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 01:14:56,571.571 INFO    ] ================================================
[2026-06-12 01:14:56,587.587 INFO    ] Launching Daemon at Fri Jun 12 01:14:56 IST 2026
[2026-06-12 01:14:56,599.599 INFO    ] ================================================
[2026-06-12 01:14:56,966.966 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 01:14:56
[2026-06-12 01:14:57,279.279 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 01:14:57,422.422 INFO    ] Initializing speech engine...
[2026-06-12 01:14:57,427.427 INFO    ] 2026-06-12 01:14:57
[2026-06-12 01:14:57,634.634 INFO    ] 2026-06-12 01:14:57
[2026-06-12 01:14:57,663.663 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 01:14:57,786.786 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 01:14:57,849.849 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 01:14:57,989.989 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 01:14:58,056.056 INFO    ] time= 12/06/2026 01:14:58
[2026-06-12 01:14:58,080.080 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 01:14:58,087.087 INFO    ] Checking for existing commands in stream...
[2026-06-12 01:14:58,154.154 INFO    ] No existing commands found in stream
[2026-06-12 01:15:03,162.162 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 01:15:03,164.164 INFO    ] Waiting 2.65 seconds before fallback handling...
[2026-06-12 01:15:06,186.186 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 01:15:06,187.187 INFO    ] Checking for system updates...
[2026-06-12 01:15:06,210.210 INFO    ] 200
[2026-06-12 01:15:06,211.211 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:15:06,241.241 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 01:15:06,243.243 INFO    ] No update needed
[2026-06-12 01:15:06,244.244 INFO    ] Checking for camera pi updates...
[2026-06-12 01:15:06,265.265 INFO    ] 200
[2026-06-12 01:15:06,266.266 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:15:06,291.291 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 01:15:06,332.332 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 01:15:06,334.334 INFO    ] No camera update needed
[2026-06-12 01:15:06,335.335 INFO    ] Script finished. Safe exiting...
[2026-06-12 01:15:06,336.336 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 01:15:06,339.339 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 01:15:06,342.342 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 01:15:08,382.382 INFO    ] ================================================
[2026-06-12 01:15:08,397.397 INFO    ] Launching Daemon at Fri Jun 12 01:15:08 IST 2026
[2026-06-12 01:15:08,409.409 INFO    ] ================================================
[2026-06-12 01:15:08,763.763 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 01:15:08
[2026-06-12 01:15:09,083.083 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 01:15:09,214.214 INFO    ] Initializing speech engine...
[2026-06-12 01:15:09,219.219 INFO    ] 2026-06-12 01:15:09
[2026-06-12 01:15:09,438.438 INFO    ] 2026-06-12 01:15:09
[2026-06-12 01:15:09,468.468 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 01:15:09,655.655 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 01:15:09,664.664 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 01:15:09,811.811 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 01:15:09,866.866 INFO    ] time= 12/06/2026 01:15:09
[2026-06-12 01:15:09,888.888 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 01:15:09,895.895 INFO    ] Checking for existing commands in stream...
[2026-06-12 01:15:09,962.962 INFO    ] No existing commands found in stream
[2026-06-12 01:15:14,976.976 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 01:15:14,979.979 INFO    ] Waiting 0.91 seconds before fallback handling...
[2026-06-12 01:15:16,256.256 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 01:15:16,257.257 INFO    ] Checking for system updates...
[2026-06-12 01:15:16,280.280 INFO    ] 200
[2026-06-12 01:15:16,281.281 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:15:16,311.311 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 01:15:16,313.313 INFO    ] No update needed
[2026-06-12 01:15:16,314.314 INFO    ] Checking for camera pi updates...
[2026-06-12 01:15:16,335.335 INFO    ] 200
[2026-06-12 01:15:16,336.336 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:15:16,360.360 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 01:15:16,404.404 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 01:15:16,406.406 INFO    ] No camera update needed
[2026-06-12 01:15:16,407.407 INFO    ] Script finished. Safe exiting...
[2026-06-12 01:15:16,408.408 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 01:15:16,411.411 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 01:15:16,414.414 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 01:15:18,453.453 INFO    ] ================================================
[2026-06-12 01:15:18,469.469 INFO    ] Launching Daemon at Fri Jun 12 01:15:18 IST 2026
[2026-06-12 01:15:18,481.481 INFO    ] ================================================
[2026-06-12 01:15:18,816.816 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 01:15:18
[2026-06-12 01:15:19,135.135 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 01:15:19,275.275 INFO    ] Initializing speech engine...
[2026-06-12 01:15:19,285.285 INFO    ] 2026-06-12 01:15:19
[2026-06-12 01:15:19,491.491 INFO    ] 2026-06-12 01:15:19
[2026-06-12 01:15:19,520.520 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 01:15:19,702.702 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 01:15:19,711.711 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 01:15:19,856.856 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 01:15:19,922.922 INFO    ] time= 12/06/2026 01:15:19
[2026-06-12 01:15:19,951.951 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 01:15:19,958.958 INFO    ] Checking for existing commands in stream...
[2026-06-12 01:15:20,034.034 INFO    ] No existing commands found in stream
[2026-06-12 01:15:25,070.070 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 01:15:25,073.073 INFO    ] Waiting 1.70 seconds before fallback handling...
[2026-06-12 01:15:27,136.136 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 01:15:27,138.138 INFO    ] Checking for system updates...
[2026-06-12 01:15:27,159.159 INFO    ] 200
[2026-06-12 01:15:27,161.161 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:15:27,190.190 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 01:15:27,192.192 INFO    ] No update needed
[2026-06-12 01:15:27,193.193 INFO    ] Checking for camera pi updates...
[2026-06-12 01:15:27,213.213 INFO    ] 200
[2026-06-12 01:15:27,215.215 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:15:27,238.238 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 01:15:27,278.278 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 01:15:27,279.279 INFO    ] No camera update needed
[2026-06-12 01:15:27,281.281 INFO    ] Script finished. Safe exiting...
[2026-06-12 01:15:27,282.282 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 01:15:27,285.285 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 01:15:27,288.288 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 01:15:29,327.327 INFO    ] ================================================
[2026-06-12 01:15:29,343.343 INFO    ] Launching Daemon at Fri Jun 12 01:15:29 IST 2026
[2026-06-12 01:15:29,354.354 INFO    ] ================================================
[2026-06-12 01:15:29,700.700 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 01:15:29
[2026-06-12 01:15:30,016.016 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 01:15:30,154.154 INFO    ] Initializing speech engine...
[2026-06-12 01:15:30,169.169 INFO    ] 2026-06-12 01:15:30
[2026-06-12 01:15:30,374.374 INFO    ] 2026-06-12 01:15:30
[2026-06-12 01:15:30,403.403 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 01:15:30,590.590 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 01:15:30,594.594 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 01:15:30,723.723 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 01:15:30,779.779 INFO    ] time= 12/06/2026 01:15:30
[2026-06-12 01:15:30,813.813 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 01:15:30,823.823 INFO    ] Checking for existing commands in stream...
[2026-06-12 01:15:30,895.895 INFO    ] No existing commands found in stream
[2026-06-12 01:15:35,904.904 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 01:15:35,907.907 INFO    ] Waiting 0.34 seconds before fallback handling...
[2026-06-12 01:15:36,606.606 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 01:15:36,608.608 INFO    ] Checking for system updates...
[2026-06-12 01:15:36,630.630 INFO    ] 200
[2026-06-12 01:15:36,632.632 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:15:36,662.662 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 01:15:36,664.664 INFO    ] No update needed
[2026-06-12 01:15:36,665.665 INFO    ] Checking for camera pi updates...
[2026-06-12 01:15:36,686.686 INFO    ] 200
[2026-06-12 01:15:36,687.687 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:15:36,713.713 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 01:15:36,761.761 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 01:15:36,762.762 INFO    ] No camera update needed
[2026-06-12 01:15:36,764.764 INFO    ] Script finished. Safe exiting...
[2026-06-12 01:15:36,765.765 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 01:15:36,768.768 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 01:15:36,771.771 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 01:15:38,811.811 INFO    ] ================================================
[2026-06-12 01:15:38,826.826 INFO    ] Launching Daemon at Fri Jun 12 01:15:38 IST 2026
[2026-06-12 01:15:38,837.837 INFO    ] ================================================
[2026-06-12 01:15:39,181.181 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 01:15:39
[2026-06-12 01:15:39,496.496 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 01:15:39,628.628 INFO    ] Initializing speech engine...
[2026-06-12 01:15:39,633.633 INFO    ] 2026-06-12 01:15:39
[2026-06-12 01:15:39,859.859 INFO    ] 2026-06-12 01:15:39
[2026-06-12 01:15:39,889.889 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 01:15:40,028.028 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 01:15:40,084.084 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 01:15:40,226.226 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 01:15:40,287.287 INFO    ] time= 12/06/2026 01:15:40
[2026-06-12 01:15:40,315.315 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 01:15:40,326.326 INFO    ] Checking for existing commands in stream...
[2026-06-12 01:15:40,399.399 INFO    ] No existing commands found in stream
[2026-06-12 01:15:45,410.410 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 01:15:45,413.413 INFO    ] Waiting 2.80 seconds before fallback handling...
[2026-06-12 01:15:51,317.317 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 01:15:51,320.320 INFO    ] Checking for system updates...
[2026-06-12 01:15:51,356.356 INFO    ] 200
[2026-06-12 01:15:51,358.358 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:15:51,419.419 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 01:15:51,421.421 INFO    ] No update needed
[2026-06-12 01:15:51,424.424 INFO    ] Checking for camera pi updates...
[2026-06-12 01:15:51,456.456 INFO    ] 200
[2026-06-12 01:15:51,457.457 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:15:51,482.482 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 01:15:51,530.530 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 01:15:51,532.532 INFO    ] No camera update needed
[2026-06-12 01:15:51,533.533 INFO    ] Script finished. Safe exiting...
[2026-06-12 01:15:51,534.534 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 01:15:51,537.537 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 01:15:51,540.540 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 01:15:53,578.578 INFO    ] ================================================
[2026-06-12 01:15:53,593.593 INFO    ] Launching Daemon at Fri Jun 12 01:15:53 IST 2026
[2026-06-12 01:15:53,604.604 INFO    ] ================================================
[2026-06-12 01:15:53,967.967 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 01:15:53
[2026-06-12 01:15:54,279.279 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 01:15:54,422.422 INFO    ] Initializing speech engine...
[2026-06-12 01:15:54,426.426 INFO    ] 2026-06-12 01:15:54
[2026-06-12 01:15:54,632.632 INFO    ] 2026-06-12 01:15:54
[2026-06-12 01:15:54,661.661 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 01:15:54,848.848 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 01:15:54,856.856 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 01:15:55,002.002 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 01:15:55,056.056 INFO    ] time= 12/06/2026 01:15:55
[2026-06-12 01:15:55,079.079 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 01:15:55,085.085 INFO    ] Checking for existing commands in stream...
[2026-06-12 01:15:55,151.151 INFO    ] No existing commands found in stream
[2026-06-12 01:16:00,162.162 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 01:16:00,164.164 INFO    ] Waiting 0.94 seconds before fallback handling...
[2026-06-12 01:16:01,497.497 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 01:16:01,498.498 INFO    ] Checking for system updates...
[2026-06-12 01:16:01,518.518 INFO    ] 200
[2026-06-12 01:16:01,520.520 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:16:01,555.555 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 01:16:01,558.558 INFO    ] No update needed
[2026-06-12 01:16:01,564.564 INFO    ] Checking for camera pi updates...
[2026-06-12 01:16:01,605.605 INFO    ] 200
[2026-06-12 01:16:01,608.608 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:16:01,680.680 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 01:16:01,714.714 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 01:16:01,717.717 INFO    ] No camera update needed
[2026-06-12 01:16:01,719.719 INFO    ] Script finished. Safe exiting...
[2026-06-12 01:16:01,721.721 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 01:16:01,726.726 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 01:16:01,731.731 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 01:16:03,766.766 INFO    ] ================================================
[2026-06-12 01:16:03,782.782 INFO    ] Launching Daemon at Fri Jun 12 01:16:03 IST 2026
[2026-06-12 01:16:03,793.793 INFO    ] ================================================
[2026-06-12 01:16:04,140.140 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 01:16:04
[2026-06-12 01:16:04,473.473 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 01:16:04,610.610 INFO    ] Initializing speech engine...
[2026-06-12 01:16:04,618.618 INFO    ] 2026-06-12 01:16:04
[2026-06-12 01:16:04,833.833 INFO    ] 2026-06-12 01:16:04
[2026-06-12 01:16:04,862.862 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 01:16:05,049.049 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 01:16:05,059.059 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 01:16:05,186.186 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 01:16:05,252.252 INFO    ] time= 12/06/2026 01:16:05
[2026-06-12 01:16:05,279.279 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 01:16:05,281.281 INFO    ] Checking for existing commands in stream...
[2026-06-12 01:16:05,352.352 INFO    ] No existing commands found in stream
[2026-06-12 01:16:10,369.369 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 01:16:10,378.378 INFO    ] Waiting 3.37 seconds before fallback handling...
[2026-06-12 01:16:14,126.126 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 01:16:14,128.128 INFO    ] Checking for system updates...
[2026-06-12 01:16:14,148.148 INFO    ] 200
[2026-06-12 01:16:14,150.150 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:16:14,184.184 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 01:16:14,185.185 INFO    ] No update needed
[2026-06-12 01:16:14,187.187 INFO    ] Checking for camera pi updates...
[2026-06-12 01:16:14,208.208 INFO    ] 200
[2026-06-12 01:16:14,209.209 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:16:14,233.233 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 01:16:14,273.273 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 01:16:14,275.275 INFO    ] No camera update needed
[2026-06-12 01:16:14,276.276 INFO    ] Script finished. Safe exiting...
[2026-06-12 01:16:14,278.278 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 01:16:14,281.281 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 01:16:14,284.284 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 01:16:16,323.323 INFO    ] ================================================
[2026-06-12 01:16:16,338.338 INFO    ] Launching Daemon at Fri Jun 12 01:16:16 IST 2026
[2026-06-12 01:16:16,350.350 INFO    ] ================================================
[2026-06-12 01:16:16,729.729 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 01:16:16
[2026-06-12 01:16:17,066.066 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 01:16:17,210.210 INFO    ] Initializing speech engine...
[2026-06-12 01:16:17,221.221 INFO    ] 2026-06-12 01:16:17
[2026-06-12 01:16:17,429.429 INFO    ] 2026-06-12 01:16:17
[2026-06-12 01:16:17,457.457 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 01:16:17,641.641 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 01:16:17,651.651 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 01:16:17,780.780 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 01:16:17,845.845 INFO    ] time= 12/06/2026 01:16:17
[2026-06-12 01:16:17,872.872 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 01:16:17,874.874 INFO    ] Checking for existing commands in stream...
[2026-06-12 01:16:17,946.946 INFO    ] No existing commands found in stream
[2026-06-12 01:16:22,960.960 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 01:16:22,964.964 INFO    ] Waiting 2.13 seconds before fallback handling...
[2026-06-12 01:16:25,498.498 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 01:16:25,500.500 INFO    ] Checking for system updates...
[2026-06-12 01:16:25,522.522 INFO    ] 200
[2026-06-12 01:16:25,524.524 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:16:25,556.556 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 01:16:25,557.557 INFO    ] No update needed
[2026-06-12 01:16:25,559.559 INFO    ] Checking for camera pi updates...
[2026-06-12 01:16:25,581.581 INFO    ] 200
[2026-06-12 01:16:25,582.582 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:16:25,609.609 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 01:16:25,652.652 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 01:16:25,653.653 INFO    ] No camera update needed
[2026-06-12 01:16:25,655.655 INFO    ] Script finished. Safe exiting...
[2026-06-12 01:16:25,656.656 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 01:16:25,659.659 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 01:16:25,662.662 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 01:16:27,702.702 INFO    ] ================================================
[2026-06-12 01:16:27,717.717 INFO    ] Launching Daemon at Fri Jun 12 01:16:27 IST 2026
[2026-06-12 01:16:27,728.728 INFO    ] ================================================
[2026-06-12 01:16:28,064.064 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 01:16:28
[2026-06-12 01:16:28,377.377 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 01:16:28,513.513 INFO    ] Initializing speech engine...
[2026-06-12 01:16:28,523.523 INFO    ] 2026-06-12 01:16:28
[2026-06-12 01:16:28,726.726 INFO    ] 2026-06-12 01:16:28
[2026-06-12 01:16:28,754.754 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 01:16:28,937.937 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 01:16:28,940.940 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 01:16:29,076.076 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 01:16:29,135.135 INFO    ] time= 12/06/2026 01:16:29
[2026-06-12 01:16:29,166.166 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 01:16:29,173.173 INFO    ] Checking for existing commands in stream...
[2026-06-12 01:16:29,237.237 INFO    ] No existing commands found in stream
[2026-06-12 01:16:34,248.248 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 01:16:34,251.251 INFO    ] Waiting 1.84 seconds before fallback handling...
[2026-06-12 01:16:36,467.467 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 01:16:36,468.468 INFO    ] Checking for system updates...
[2026-06-12 01:16:36,489.489 INFO    ] 200
[2026-06-12 01:16:36,491.491 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:16:36,521.521 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 01:16:36,522.522 INFO    ] No update needed
[2026-06-12 01:16:36,523.523 INFO    ] Checking for camera pi updates...
[2026-06-12 01:16:36,542.542 INFO    ] 200
[2026-06-12 01:16:36,544.544 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:16:36,568.568 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 01:16:36,714.714 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 01:16:36,715.715 INFO    ] No camera update needed
[2026-06-12 01:16:36,717.717 INFO    ] Script finished. Safe exiting...
[2026-06-12 01:16:36,718.718 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 01:16:36,721.721 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 01:16:36,724.724 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 01:16:38,763.763 INFO    ] ================================================
[2026-06-12 01:16:38,778.778 INFO    ] Launching Daemon at Fri Jun 12 01:16:38 IST 2026
[2026-06-12 01:16:38,788.788 INFO    ] ================================================
[2026-06-12 01:16:39,155.155 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 01:16:39
[2026-06-12 01:16:39,472.472 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 01:16:39,619.619 INFO    ] Initializing speech engine...
[2026-06-12 01:16:39,625.625 INFO    ] 2026-06-12 01:16:39
[2026-06-12 01:16:39,839.839 INFO    ] 2026-06-12 01:16:39
[2026-06-12 01:16:39,869.869 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 01:16:39,999.999 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 01:16:40,065.065 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 01:16:40,213.213 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 01:16:40,272.272 INFO    ] time= 12/06/2026 01:16:40
[2026-06-12 01:16:40,309.309 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 01:16:40,316.316 INFO    ] Checking for existing commands in stream...
[2026-06-12 01:16:40,387.387 INFO    ] No existing commands found in stream
[2026-06-12 01:16:45,396.396 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 01:16:45,399.399 INFO    ] Waiting 3.81 seconds before fallback handling...
[2026-06-12 01:16:49,578.578 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 01:16:49,579.579 INFO    ] Checking for system updates...
[2026-06-12 01:16:49,601.601 INFO    ] 200
[2026-06-12 01:16:49,603.603 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:16:49,635.635 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 01:16:49,636.636 INFO    ] No update needed
[2026-06-12 01:16:49,638.638 INFO    ] Checking for camera pi updates...
[2026-06-12 01:16:49,657.657 INFO    ] 200
[2026-06-12 01:16:49,658.658 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:16:49,684.684 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 01:16:49,729.729 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 01:16:49,730.730 INFO    ] No camera update needed
[2026-06-12 01:16:49,732.732 INFO    ] Script finished. Safe exiting...
[2026-06-12 01:16:49,733.733 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 01:16:49,736.736 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 01:16:49,738.738 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 01:16:51,777.777 INFO    ] ================================================
[2026-06-12 01:16:51,792.792 INFO    ] Launching Daemon at Fri Jun 12 01:16:51 IST 2026
[2026-06-12 01:16:51,803.803 INFO    ] ================================================
[2026-06-12 01:16:52,138.138 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 01:16:52
[2026-06-12 01:16:52,452.452 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 01:16:52,582.582 INFO    ] Initializing speech engine...
[2026-06-12 01:16:52,586.586 INFO    ] 2026-06-12 01:16:52
[2026-06-12 01:16:52,802.802 INFO    ] 2026-06-12 01:16:52
[2026-06-12 01:16:52,830.830 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 01:16:53,014.014 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 01:16:53,024.024 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 01:16:53,154.154 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 01:16:53,218.218 INFO    ] time= 12/06/2026 01:16:53
[2026-06-12 01:16:53,246.246 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 01:16:53,248.248 INFO    ] Checking for existing commands in stream...
[2026-06-12 01:16:53,319.319 INFO    ] No existing commands found in stream
[2026-06-12 01:16:58,328.328 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 01:16:58,331.331 INFO    ] Waiting 2.73 seconds before fallback handling...
[2026-06-12 01:17:01,447.447 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 01:17:01,449.449 INFO    ] Checking for system updates...
[2026-06-12 01:17:01,470.470 INFO    ] 200
[2026-06-12 01:17:01,472.472 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:17:01,503.503 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 01:17:01,505.505 INFO    ] No update needed
[2026-06-12 01:17:01,506.506 INFO    ] Checking for camera pi updates...
[2026-06-12 01:17:01,526.526 INFO    ] 200
[2026-06-12 01:17:01,527.527 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:17:01,552.552 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 01:17:01,584.584 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 01:17:01,585.585 INFO    ] No camera update needed
[2026-06-12 01:17:01,587.587 INFO    ] Script finished. Safe exiting...
[2026-06-12 01:17:01,588.588 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 01:17:01,591.591 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 01:17:01,594.594 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 01:17:03,627.627 INFO    ] ================================================
[2026-06-12 01:17:03,648.648 INFO    ] Launching Daemon at Fri Jun 12 01:17:03 IST 2026
[2026-06-12 01:17:03,659.659 INFO    ] ================================================
[2026-06-12 01:17:04,028.028 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 01:17:04
[2026-06-12 01:17:04,349.349 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 01:17:04,488.488 INFO    ] Initializing speech engine...
[2026-06-12 01:17:04,498.498 INFO    ] 2026-06-12 01:17:04
[2026-06-12 01:17:04,703.703 INFO    ] 2026-06-12 01:17:04
[2026-06-12 01:17:04,733.733 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 01:17:04,854.854 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 01:17:04,917.917 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 01:17:05,054.054 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 01:17:05,113.113 INFO    ] time= 12/06/2026 01:17:05
[2026-06-12 01:17:05,146.146 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 01:17:05,152.152 INFO    ] Checking for existing commands in stream...
[2026-06-12 01:17:05,218.218 INFO    ] No existing commands found in stream
[2026-06-12 01:17:10,228.228 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 01:17:10,232.232 INFO    ] Waiting 1.46 seconds before fallback handling...
[2026-06-12 01:17:12,121.121 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 01:17:12,124.124 INFO    ] Checking for system updates...
[2026-06-12 01:17:12,161.161 INFO    ] 200
[2026-06-12 01:17:12,163.163 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:17:12,216.216 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 01:17:12,218.218 INFO    ] No update needed
[2026-06-12 01:17:12,221.221 INFO    ] Checking for camera pi updates...
[2026-06-12 01:17:12,246.246 INFO    ] 200
[2026-06-12 01:17:12,247.247 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:17:12,271.271 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 01:17:12,318.318 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 01:17:12,319.319 INFO    ] No camera update needed
[2026-06-12 01:17:12,320.320 INFO    ] Script finished. Safe exiting...
[2026-06-12 01:17:12,322.322 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 01:17:12,325.325 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 01:17:12,327.327 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 01:17:14,368.368 INFO    ] ================================================
[2026-06-12 01:17:14,385.385 INFO    ] Launching Daemon at Fri Jun 12 01:17:14 IST 2026
[2026-06-12 01:17:14,396.396 INFO    ] ================================================
[2026-06-12 01:17:14,760.760 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 01:17:14
[2026-06-12 01:17:15,071.071 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 01:17:15,204.204 INFO    ] Initializing speech engine...
[2026-06-12 01:17:15,212.212 INFO    ] 2026-06-12 01:17:15
[2026-06-12 01:17:15,426.426 INFO    ] 2026-06-12 01:17:15
[2026-06-12 01:17:15,455.455 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 01:17:15,641.641 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 01:17:15,650.650 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 01:17:15,781.781 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 01:17:15,840.840 INFO    ] time= 12/06/2026 01:17:15
[2026-06-12 01:17:15,873.873 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 01:17:15,879.879 INFO    ] Checking for existing commands in stream...
[2026-06-12 01:17:15,972.972 INFO    ] No existing commands found in stream
[2026-06-12 01:17:20,986.986 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 01:17:20,988.988 INFO    ] Waiting 3.04 seconds before fallback handling...
[2026-06-12 01:17:24,429.429 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 01:17:24,431.431 INFO    ] Checking for system updates...
[2026-06-12 01:17:24,452.452 INFO    ] 200
[2026-06-12 01:17:24,453.453 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:17:24,484.484 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 01:17:24,486.486 INFO    ] No update needed
[2026-06-12 01:17:24,487.487 INFO    ] Checking for camera pi updates...
[2026-06-12 01:17:24,507.507 INFO    ] 200
[2026-06-12 01:17:24,508.508 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:17:24,532.532 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 01:17:24,579.579 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 01:17:24,581.581 INFO    ] No camera update needed
[2026-06-12 01:17:24,582.582 INFO    ] Script finished. Safe exiting...
[2026-06-12 01:17:24,584.584 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 01:17:24,587.587 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 01:17:24,590.590 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 01:17:26,628.628 INFO    ] ================================================
[2026-06-12 01:17:26,643.643 INFO    ] Launching Daemon at Fri Jun 12 01:17:26 IST 2026
[2026-06-12 01:17:26,655.655 INFO    ] ================================================
[2026-06-12 01:17:27,034.034 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 01:17:27
[2026-06-12 01:17:27,376.376 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 01:17:27,527.527 INFO    ] Initializing speech engine...
[2026-06-12 01:17:27,534.534 INFO    ] 2026-06-12 01:17:27
[2026-06-12 01:17:27,742.742 INFO    ] 2026-06-12 01:17:27
[2026-06-12 01:17:27,771.771 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 01:17:27,958.958 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 01:17:27,968.968 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 01:17:28,100.100 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 01:17:28,168.168 INFO    ] time= 12/06/2026 01:17:28
[2026-06-12 01:17:28,192.192 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 01:17:28,199.199 INFO    ] Checking for existing commands in stream...
[2026-06-12 01:17:28,267.267 INFO    ] No existing commands found in stream
[2026-06-12 01:17:33,279.279 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 01:17:33,281.281 INFO    ] Waiting 0.97 seconds before fallback handling...
[2026-06-12 01:17:34,575.575 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 01:17:34,577.577 INFO    ] Checking for system updates...
[2026-06-12 01:17:34,603.603 INFO    ] 200
[2026-06-12 01:17:34,605.605 INFO    ] {"msg": "Status of machine", "state": "STATE_HEALTH_CHECK", "status": true}
[2026-06-12 01:17:34,606.606 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping update check
[2026-06-12 01:17:34,607.607 INFO    ] Checking for camera pi updates...
[2026-06-12 01:17:34,633.633 INFO    ] 200
[2026-06-12 01:17:34,634.634 INFO    ] {"msg": "Status of machine", "state": "STATE_HEALTH_CHECK", "status": true}
[2026-06-12 01:17:34,636.636 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping camera update check
[2026-06-12 01:17:34,637.637 INFO    ] Script finished. Safe exiting...
[2026-06-12 01:17:34,639.639 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 01:17:34,642.642 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 01:17:34,645.645 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 01:17:36,671.671 INFO    ] ================================================
[2026-06-12 01:17:36,687.687 INFO    ] Launching Daemon at Fri Jun 12 01:17:36 IST 2026
[2026-06-12 01:17:36,698.698 INFO    ] ================================================
[2026-06-12 01:17:37,043.043 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 01:17:37
[2026-06-12 01:17:37,358.358 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 01:17:37,497.497 INFO    ] Initializing speech engine...
[2026-06-12 01:17:37,507.507 INFO    ] 2026-06-12 01:17:37
[2026-06-12 01:17:37,712.712 INFO    ] 2026-06-12 01:17:37
[2026-06-12 01:17:37,739.739 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 01:17:37,923.923 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 01:17:37,932.932 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 01:17:38,055.055 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 01:17:38,090.090 INFO    ] time= 12/06/2026 01:17:38
[2026-06-12 01:17:38,134.134 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 01:17:38,155.155 INFO    ] Checking for existing commands in stream...
[2026-06-12 01:17:38,227.227 INFO    ] No existing commands found in stream
[2026-06-12 01:17:43,232.232 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 01:17:43,235.235 INFO    ] Waiting 3.42 seconds before fallback handling...
[2026-06-12 01:17:47,016.016 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 01:17:47,017.017 INFO    ] Checking for system updates...
[2026-06-12 01:17:47,038.038 INFO    ] 200
[2026-06-12 01:17:47,040.040 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:17:47,073.073 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 01:17:47,075.075 INFO    ] No update needed
[2026-06-12 01:17:47,076.076 INFO    ] Checking for camera pi updates...
[2026-06-12 01:17:47,099.099 INFO    ] 200
[2026-06-12 01:17:47,100.100 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:17:47,126.126 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 01:17:47,178.178 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 01:17:47,180.180 INFO    ] No camera update needed
[2026-06-12 01:17:47,182.182 INFO    ] Script finished. Safe exiting...
[2026-06-12 01:17:47,183.183 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 01:17:47,186.186 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 01:17:47,189.189 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 01:17:49,229.229 INFO    ] ================================================
[2026-06-12 01:17:49,245.245 INFO    ] Launching Daemon at Fri Jun 12 01:17:49 IST 2026
[2026-06-12 01:17:49,256.256 INFO    ] ================================================
[2026-06-12 01:17:49,601.601 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 01:17:49
[2026-06-12 01:17:49,918.918 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 01:17:50,063.063 INFO    ] Initializing speech engine...
[2026-06-12 01:17:50,068.068 INFO    ] 2026-06-12 01:17:50
[2026-06-12 01:17:50,273.273 INFO    ] 2026-06-12 01:17:50
[2026-06-12 01:17:50,301.301 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 01:17:50,484.484 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 01:17:50,493.493 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 01:17:50,643.643 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 01:17:50,691.691 INFO    ] time= 12/06/2026 01:17:50
[2026-06-12 01:17:50,714.714 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 01:17:50,719.719 INFO    ] Checking for existing commands in stream...
[2026-06-12 01:17:50,787.787 INFO    ] No existing commands found in stream
[2026-06-12 01:17:55,792.792 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 01:17:55,797.797 INFO    ] Waiting 3.33 seconds before fallback handling...
[2026-06-12 01:17:59,549.549 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 01:17:59,551.551 INFO    ] Checking for system updates...
[2026-06-12 01:17:59,588.588 INFO    ] 200
[2026-06-12 01:17:59,591.591 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:17:59,646.646 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 01:17:59,648.648 INFO    ] No update needed
[2026-06-12 01:17:59,651.651 INFO    ] Checking for camera pi updates...
[2026-06-12 01:17:59,679.679 INFO    ] 200
[2026-06-12 01:17:59,681.681 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:17:59,707.707 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 01:17:59,749.749 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 01:17:59,750.750 INFO    ] No camera update needed
[2026-06-12 01:17:59,752.752 INFO    ] Script finished. Safe exiting...
[2026-06-12 01:17:59,753.753 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 01:17:59,756.756 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 01:17:59,759.759 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 01:18:01,797.797 INFO    ] ================================================
[2026-06-12 01:18:01,812.812 INFO    ] Launching Daemon at Fri Jun 12 01:18:01 IST 2026
[2026-06-12 01:18:01,823.823 INFO    ] ================================================
[2026-06-12 01:18:02,278.278 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 01:18:02
[2026-06-12 01:18:02,654.654 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 01:18:02,815.815 INFO    ] Initializing speech engine...
[2026-06-12 01:18:02,821.821 INFO    ] 2026-06-12 01:18:02
[2026-06-12 01:18:03,082.082 INFO    ] 2026-06-12 01:18:03
[2026-06-12 01:18:03,124.124 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 01:18:03,308.308 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 01:18:03,312.312 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 01:18:03,459.459 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 01:18:03,518.518 INFO    ] time= 12/06/2026 01:18:03
[2026-06-12 01:18:03,540.540 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 01:18:03,547.547 INFO    ] Checking for existing commands in stream...
[2026-06-12 01:18:03,637.637 INFO    ] No existing commands found in stream
[2026-06-12 01:18:08,652.652 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 01:18:08,655.655 INFO    ] Waiting 1.56 seconds before fallback handling...
[2026-06-12 01:18:10,595.595 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 01:18:10,597.597 INFO    ] Checking for system updates...
[2026-06-12 01:18:10,618.618 INFO    ] 200
[2026-06-12 01:18:10,619.619 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:18:10,650.650 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 01:18:10,652.652 INFO    ] No update needed
[2026-06-12 01:18:10,653.653 INFO    ] Checking for camera pi updates...
[2026-06-12 01:18:10,673.673 INFO    ] 200
[2026-06-12 01:18:10,675.675 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:18:10,701.701 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 01:18:10,815.815 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 01:18:10,816.816 INFO    ] No camera update needed
[2026-06-12 01:18:10,818.818 INFO    ] Script finished. Safe exiting...
[2026-06-12 01:18:10,819.819 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 01:18:10,823.823 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 01:18:10,826.826 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 01:18:12,873.873 INFO    ] ================================================
[2026-06-12 01:18:12,890.890 INFO    ] Launching Daemon at Fri Jun 12 01:18:12 IST 2026
[2026-06-12 01:18:12,902.902 INFO    ] ================================================
[2026-06-12 01:18:13,288.288 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 01:18:13
[2026-06-12 01:18:13,628.628 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 01:18:13,775.775 INFO    ] Initializing speech engine...
[2026-06-12 01:18:13,786.786 INFO    ] 2026-06-12 01:18:13
[2026-06-12 01:18:13,994.994 INFO    ] 2026-06-12 01:18:13
[2026-06-12 01:18:14,023.023 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 01:18:14,208.208 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 01:18:14,217.217 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 01:18:14,341.341 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 01:18:14,402.402 INFO    ] time= 12/06/2026 01:18:14
[2026-06-12 01:18:14,440.440 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 01:18:14,446.446 INFO    ] Checking for existing commands in stream...
[2026-06-12 01:18:14,513.513 INFO    ] No existing commands found in stream
[2026-06-12 01:18:19,533.533 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 01:18:19,536.536 INFO    ] Waiting 3.71 seconds before fallback handling...
[2026-06-12 01:18:23,636.636 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 01:18:23,638.638 INFO    ] Checking for system updates...
[2026-06-12 01:18:23,661.661 INFO    ] 200
[2026-06-12 01:18:23,663.663 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:18:23,698.698 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 01:18:23,700.700 INFO    ] No update needed
[2026-06-12 01:18:23,701.701 INFO    ] Checking for camera pi updates...
[2026-06-12 01:18:23,722.722 INFO    ] 200
[2026-06-12 01:18:23,723.723 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:18:23,746.746 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 01:18:23,786.786 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 01:18:23,787.787 INFO    ] No camera update needed
[2026-06-12 01:18:23,789.789 INFO    ] Script finished. Safe exiting...
[2026-06-12 01:18:23,790.790 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 01:18:23,793.793 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 01:18:23,796.796 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 01:18:25,834.834 INFO    ] ================================================
[2026-06-12 01:18:25,849.849 INFO    ] Launching Daemon at Fri Jun 12 01:18:25 IST 2026
[2026-06-12 01:18:25,860.860 INFO    ] ================================================
[2026-06-12 01:18:26,219.219 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 01:18:26
[2026-06-12 01:18:26,532.532 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 01:18:26,663.663 INFO    ] Initializing speech engine...
[2026-06-12 01:18:26,667.667 INFO    ] 2026-06-12 01:18:26
[2026-06-12 01:18:26,886.886 INFO    ] 2026-06-12 01:18:26
[2026-06-12 01:18:26,916.916 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 01:18:27,103.103 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 01:18:27,106.106 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 01:18:27,245.245 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 01:18:27,313.313 INFO    ] time= 12/06/2026 01:18:27
[2026-06-12 01:18:27,337.337 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 01:18:27,339.339 INFO    ] Checking for existing commands in stream...
[2026-06-12 01:18:27,412.412 INFO    ] No existing commands found in stream
[2026-06-12 01:18:32,420.420 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 01:18:32,422.422 INFO    ] Waiting 1.20 seconds before fallback handling...
[2026-06-12 01:18:33,974.974 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 01:18:33,976.976 INFO    ] Checking for system updates...
[2026-06-12 01:18:33,996.996 INFO    ] 200
[2026-06-12 01:18:33,998.998 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:18:34,028.028 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 01:18:34,029.029 INFO    ] No update needed
[2026-06-12 01:18:34,030.030 INFO    ] Checking for camera pi updates...
[2026-06-12 01:18:34,052.052 INFO    ] 200
[2026-06-12 01:18:34,053.053 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:18:34,078.078 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 01:18:34,122.122 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 01:18:34,124.124 INFO    ] No camera update needed
[2026-06-12 01:18:34,125.125 INFO    ] Script finished. Safe exiting...
[2026-06-12 01:18:34,126.126 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 01:18:34,129.129 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 01:18:34,132.132 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 01:18:36,171.171 INFO    ] ================================================
[2026-06-12 01:18:36,186.186 INFO    ] Launching Daemon at Fri Jun 12 01:18:36 IST 2026
[2026-06-12 01:18:36,197.197 INFO    ] ================================================
[2026-06-12 01:18:36,556.556 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 01:18:36
[2026-06-12 01:18:36,872.872 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 01:18:37,016.016 INFO    ] Initializing speech engine...
[2026-06-12 01:18:37,022.022 INFO    ] 2026-06-12 01:18:37
[2026-06-12 01:18:37,226.226 INFO    ] 2026-06-12 01:18:37
[2026-06-12 01:18:37,254.254 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 01:18:37,438.438 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 01:18:37,447.447 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 01:18:37,576.576 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 01:18:37,630.630 INFO    ] time= 12/06/2026 01:18:37
[2026-06-12 01:18:37,668.668 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 01:18:37,669.669 INFO    ] Checking for existing commands in stream...
[2026-06-12 01:18:37,741.741 INFO    ] No existing commands found in stream
[2026-06-12 01:18:42,751.751 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 01:18:42,753.753 INFO    ] Waiting 3.74 seconds before fallback handling...
[2026-06-12 01:18:46,874.874 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 01:18:46,875.875 INFO    ] Checking for system updates...
[2026-06-12 01:18:46,896.896 INFO    ] 200
[2026-06-12 01:18:46,897.897 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:18:46,930.930 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 01:18:46,931.931 INFO    ] No update needed
[2026-06-12 01:18:46,932.932 INFO    ] Checking for camera pi updates...
[2026-06-12 01:18:46,952.952 INFO    ] 200
[2026-06-12 01:18:46,953.953 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:18:46,976.976 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 01:18:47,114.114 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 01:18:47,116.116 INFO    ] No camera update needed
[2026-06-12 01:18:47,117.117 INFO    ] Script finished. Safe exiting...
[2026-06-12 01:18:47,118.118 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 01:18:47,122.122 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 01:18:47,124.124 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 01:18:49,163.163 INFO    ] ================================================
[2026-06-12 01:18:49,179.179 INFO    ] Launching Daemon at Fri Jun 12 01:18:49 IST 2026
[2026-06-12 01:18:49,189.189 INFO    ] ================================================
[2026-06-12 01:18:49,561.561 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 01:18:49
[2026-06-12 01:18:49,905.905 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 01:18:50,054.054 INFO    ] Initializing speech engine...
[2026-06-12 01:18:50,060.060 INFO    ] 2026-06-12 01:18:50
[2026-06-12 01:18:50,269.269 INFO    ] 2026-06-12 01:18:50
[2026-06-12 01:18:50,297.297 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 01:18:50,466.466 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 01:18:50,485.485 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 01:18:50,622.622 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 01:18:50,689.689 INFO    ] time= 12/06/2026 01:18:50
[2026-06-12 01:18:50,713.713 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 01:18:50,720.720 INFO    ] Checking for existing commands in stream...
[2026-06-12 01:18:50,787.787 INFO    ] No existing commands found in stream
[2026-06-12 01:18:55,797.797 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 01:18:55,806.806 INFO    ] Waiting 3.21 seconds before fallback handling...
[2026-06-12 01:18:59,407.407 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 01:18:59,409.409 INFO    ] Checking for system updates...
[2026-06-12 01:18:59,430.430 INFO    ] 200
[2026-06-12 01:18:59,431.431 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:18:59,464.464 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 01:18:59,465.465 INFO    ] No update needed
[2026-06-12 01:18:59,467.467 INFO    ] Checking for camera pi updates...
[2026-06-12 01:18:59,489.489 INFO    ] 200
[2026-06-12 01:18:59,490.490 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:18:59,514.514 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 01:18:59,561.561 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 01:18:59,563.563 INFO    ] No camera update needed
[2026-06-12 01:18:59,564.564 INFO    ] Script finished. Safe exiting...
[2026-06-12 01:18:59,566.566 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 01:18:59,569.569 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 01:18:59,572.572 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 01:19:01,609.609 INFO    ] ================================================
[2026-06-12 01:19:01,625.625 INFO    ] Launching Daemon at Fri Jun 12 01:19:01 IST 2026
[2026-06-12 01:19:01,642.642 INFO    ] ================================================
[2026-06-12 01:19:02,002.002 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 01:19:02
[2026-06-12 01:19:02,368.368 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 01:19:02,508.508 INFO    ] Initializing speech engine...
[2026-06-12 01:19:02,514.514 INFO    ] 2026-06-12 01:19:02
[2026-06-12 01:19:02,741.741 INFO    ] 2026-06-12 01:19:02
[2026-06-12 01:19:02,770.770 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 01:19:02,892.892 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 01:19:02,956.956 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 01:19:03,103.103 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 01:19:03,166.166 INFO    ] time= 12/06/2026 01:19:03
[2026-06-12 01:19:03,189.189 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 01:19:03,196.196 INFO    ] Checking for existing commands in stream...
[2026-06-12 01:19:03,263.263 INFO    ] No existing commands found in stream
[2026-06-12 01:19:08,272.272 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 01:19:08,275.275 INFO    ] Waiting 2.48 seconds before fallback handling...
[2026-06-12 01:19:11,116.116 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 01:19:11,117.117 INFO    ] Checking for system updates...
[2026-06-12 01:19:11,139.139 INFO    ] 200
[2026-06-12 01:19:11,141.141 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:19:11,173.173 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 01:19:11,174.174 INFO    ] No update needed
[2026-06-12 01:19:11,175.175 INFO    ] Checking for camera pi updates...
[2026-06-12 01:19:11,195.195 INFO    ] 200
[2026-06-12 01:19:11,196.196 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:19:11,221.221 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 01:19:11,272.272 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 01:19:11,273.273 INFO    ] No camera update needed
[2026-06-12 01:19:11,274.274 INFO    ] Script finished. Safe exiting...
[2026-06-12 01:19:11,275.275 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 01:19:11,278.278 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 01:19:11,281.281 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 01:19:13,320.320 INFO    ] ================================================
[2026-06-12 01:19:13,336.336 INFO    ] Launching Daemon at Fri Jun 12 01:19:13 IST 2026
[2026-06-12 01:19:13,347.347 INFO    ] ================================================
[2026-06-12 01:19:13,695.695 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 01:19:13
[2026-06-12 01:19:14,009.009 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 01:19:14,142.142 INFO    ] Initializing speech engine...
[2026-06-12 01:19:14,147.147 INFO    ] 2026-06-12 01:19:14
[2026-06-12 01:19:14,377.377 INFO    ] 2026-06-12 01:19:14
[2026-06-12 01:19:14,408.408 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 01:19:14,604.604 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 01:19:14,608.608 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 01:19:14,746.746 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 01:19:14,797.797 INFO    ] time= 12/06/2026 01:19:14
[2026-06-12 01:19:14,820.820 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 01:19:14,844.844 INFO    ] Checking for existing commands in stream...
[2026-06-12 01:19:14,924.924 INFO    ] No existing commands found in stream
[2026-06-12 01:19:19,934.934 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 01:19:19,937.937 INFO    ] Waiting 4.00 seconds before fallback handling...
[2026-06-12 01:19:24,284.284 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 01:19:24,286.286 INFO    ] Checking for system updates...
[2026-06-12 01:19:24,306.306 INFO    ] 200
[2026-06-12 01:19:24,308.308 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:19:24,340.340 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 01:19:24,341.341 INFO    ] No update needed
[2026-06-12 01:19:24,342.342 INFO    ] Checking for camera pi updates...
[2026-06-12 01:19:24,362.362 INFO    ] 200
[2026-06-12 01:19:24,363.363 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:19:24,389.389 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 01:19:24,439.439 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 01:19:24,440.440 INFO    ] No camera update needed
[2026-06-12 01:19:24,442.442 INFO    ] Script finished. Safe exiting...
[2026-06-12 01:19:24,443.443 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 01:19:24,446.446 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 01:19:24,449.449 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 01:19:26,487.487 INFO    ] ================================================
[2026-06-12 01:19:26,503.503 INFO    ] Launching Daemon at Fri Jun 12 01:19:26 IST 2026
[2026-06-12 01:19:26,514.514 INFO    ] ================================================
[2026-06-12 01:19:26,851.851 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 01:19:26
[2026-06-12 01:19:27,167.167 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 01:19:27,310.310 INFO    ] Initializing speech engine...
[2026-06-12 01:19:27,318.318 INFO    ] 2026-06-12 01:19:27
[2026-06-12 01:19:27,536.536 INFO    ] 2026-06-12 01:19:27
[2026-06-12 01:19:27,568.568 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 01:19:27,765.765 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 01:19:27,775.775 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 01:19:27,911.911 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 01:19:27,979.979 INFO    ] time= 12/06/2026 01:19:27
[2026-06-12 01:19:28,013.013 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 01:19:28,019.019 INFO    ] Checking for existing commands in stream...
[2026-06-12 01:19:28,091.091 INFO    ] No existing commands found in stream
[2026-06-12 01:19:33,101.101 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 01:19:33,103.103 INFO    ] Waiting 2.40 seconds before fallback handling...
[2026-06-12 01:19:35,885.885 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 01:19:35,886.886 INFO    ] Checking for system updates...
[2026-06-12 01:19:35,908.908 INFO    ] 200
[2026-06-12 01:19:35,909.909 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:19:35,939.939 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 01:19:35,941.941 INFO    ] No update needed
[2026-06-12 01:19:35,942.942 INFO    ] Checking for camera pi updates...
[2026-06-12 01:19:35,962.962 INFO    ] 200
[2026-06-12 01:19:35,963.963 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:19:35,989.989 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 01:19:36,037.037 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 01:19:36,038.038 INFO    ] No camera update needed
[2026-06-12 01:19:36,039.039 INFO    ] Script finished. Safe exiting...
[2026-06-12 01:19:36,041.041 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 01:19:36,044.044 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 01:19:36,047.047 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 01:19:38,085.085 INFO    ] ================================================
[2026-06-12 01:19:38,101.101 INFO    ] Launching Daemon at Fri Jun 12 01:19:38 IST 2026
[2026-06-12 01:19:38,111.111 INFO    ] ================================================
[2026-06-12 01:19:38,493.493 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 01:19:38
[2026-06-12 01:19:38,827.827 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 01:19:38,979.979 INFO    ] Initializing speech engine...
[2026-06-12 01:19:38,983.983 INFO    ] 2026-06-12 01:19:38
[2026-06-12 01:19:39,195.195 INFO    ] 2026-06-12 01:19:39
[2026-06-12 01:19:39,224.224 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 01:19:39,413.413 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 01:19:39,422.422 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 01:19:39,574.574 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 01:19:39,624.624 INFO    ] time= 12/06/2026 01:19:39
[2026-06-12 01:19:39,646.646 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 01:19:39,653.653 INFO    ] Checking for existing commands in stream...
[2026-06-12 01:19:39,721.721 INFO    ] No existing commands found in stream
[2026-06-12 01:19:44,730.730 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 01:19:44,733.733 INFO    ] Waiting 2.17 seconds before fallback handling...
[2026-06-12 01:19:47,254.254 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 01:19:47,256.256 INFO    ] Checking for system updates...
[2026-06-12 01:19:47,277.277 INFO    ] 200
[2026-06-12 01:19:47,278.278 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:19:47,311.311 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 01:19:47,312.312 INFO    ] No update needed
[2026-06-12 01:19:47,313.313 INFO    ] Checking for camera pi updates...
[2026-06-12 01:19:47,334.334 INFO    ] 200
[2026-06-12 01:19:47,335.335 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:19:47,361.361 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 01:19:47,402.402 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 01:19:47,403.403 INFO    ] No camera update needed
[2026-06-12 01:19:47,405.405 INFO    ] Script finished. Safe exiting...
[2026-06-12 01:19:47,406.406 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 01:19:47,409.409 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 01:19:47,412.412 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 01:19:49,454.454 INFO    ] ================================================
[2026-06-12 01:19:49,469.469 INFO    ] Launching Daemon at Fri Jun 12 01:19:49 IST 2026
[2026-06-12 01:19:49,479.479 INFO    ] ================================================
[2026-06-12 01:19:49,861.861 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 01:19:49
[2026-06-12 01:19:50,190.190 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 01:19:50,323.323 INFO    ] Initializing speech engine...
[2026-06-12 01:19:50,330.330 INFO    ] 2026-06-12 01:19:50
[2026-06-12 01:19:50,544.544 INFO    ] 2026-06-12 01:19:50
[2026-06-12 01:19:50,573.573 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 01:19:50,760.760 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 01:19:50,769.769 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 01:19:50,894.894 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 01:19:50,955.955 INFO    ] time= 12/06/2026 01:19:50
[2026-06-12 01:19:50,990.990 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 01:19:50,995.995 INFO    ] Checking for existing commands in stream...
[2026-06-12 01:19:51,069.069 INFO    ] No existing commands found in stream
[2026-06-12 01:19:56,102.102 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 01:19:56,104.104 INFO    ] Waiting 2.58 seconds before fallback handling...
[2026-06-12 01:19:59,056.056 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 01:19:59,058.058 INFO    ] Checking for system updates...
[2026-06-12 01:19:59,079.079 INFO    ] 200
[2026-06-12 01:19:59,080.080 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:19:59,111.111 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 01:19:59,113.113 INFO    ] No update needed
[2026-06-12 01:19:59,114.114 INFO    ] Checking for camera pi updates...
[2026-06-12 01:19:59,135.135 INFO    ] 200
[2026-06-12 01:19:59,136.136 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:19:59,159.159 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 01:19:59,208.208 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 01:19:59,210.210 INFO    ] No camera update needed
[2026-06-12 01:19:59,212.212 INFO    ] Script finished. Safe exiting...
[2026-06-12 01:19:59,213.213 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 01:19:59,216.216 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 01:19:59,219.219 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 01:20:01,260.260 INFO    ] ================================================
[2026-06-12 01:20:01,276.276 INFO    ] Launching Daemon at Fri Jun 12 01:20:01 IST 2026
[2026-06-12 01:20:01,287.287 INFO    ] ================================================
[2026-06-12 01:20:01,641.641 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 01:20:01
[2026-06-12 01:20:02,260.260 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 01:20:02,493.493 INFO    ] Initializing speech engine...
[2026-06-12 01:20:02,505.505 INFO    ] 2026-06-12 01:20:02
[2026-06-12 01:20:02,764.764 INFO    ] 2026-06-12 01:20:02
[2026-06-12 01:20:02,777.777 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 01:20:03,007.007 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 01:20:03,016.016 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 01:20:03,156.156 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 01:20:03,220.220 INFO    ] time= 12/06/2026 01:20:03
[2026-06-12 01:20:03,256.256 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 01:20:03,258.258 INFO    ] Checking for existing commands in stream...
[2026-06-12 01:20:03,329.329 INFO    ] No existing commands found in stream
[2026-06-12 01:20:08,338.338 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 01:20:08,341.341 INFO    ] Waiting 2.02 seconds before fallback handling...
[2026-06-12 01:20:10,741.741 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 01:20:10,742.742 INFO    ] Checking for system updates...
[2026-06-12 01:20:10,763.763 INFO    ] 200
[2026-06-12 01:20:10,764.764 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:20:10,795.795 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 01:20:10,796.796 INFO    ] No update needed
[2026-06-12 01:20:10,797.797 INFO    ] Checking for camera pi updates...
[2026-06-12 01:20:10,819.819 INFO    ] 200
[2026-06-12 01:20:10,820.820 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:20:10,845.845 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 01:20:10,945.945 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 01:20:10,947.947 INFO    ] No camera update needed
[2026-06-12 01:20:10,948.948 INFO    ] Script finished. Safe exiting...
[2026-06-12 01:20:10,949.949 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 01:20:10,952.952 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 01:20:10,955.955 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 01:20:13,995.995 INFO    ] ================================================
[2026-06-12 01:20:13,011.011 INFO    ] Launching Daemon at Fri Jun 12 01:20:13 IST 2026
[2026-06-12 01:20:13,022.022 INFO    ] ================================================
[2026-06-12 01:20:13,413.413 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 01:20:13
[2026-06-12 01:20:13,752.752 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 01:20:13,903.903 INFO    ] Initializing speech engine...
[2026-06-12 01:20:13,907.907 INFO    ] 2026-06-12 01:20:13
[2026-06-12 01:20:14,116.116 INFO    ] 2026-06-12 01:20:14
[2026-06-12 01:20:14,145.145 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 01:20:14,329.329 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 01:20:14,339.339 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 01:20:14,468.468 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 01:20:14,533.533 INFO    ] time= 12/06/2026 01:20:14
[2026-06-12 01:20:14,560.560 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 01:20:14,562.562 INFO    ] Checking for existing commands in stream...
[2026-06-12 01:20:14,633.633 INFO    ] No existing commands found in stream
[2026-06-12 01:20:19,648.648 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 01:20:19,651.651 INFO    ] Waiting 0.69 seconds before fallback handling...
[2026-06-12 01:20:20,698.698 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 01:20:20,699.699 INFO    ] Checking for system updates...
[2026-06-12 01:20:20,720.720 INFO    ] 200
[2026-06-12 01:20:20,722.722 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:20:20,752.752 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 01:20:20,754.754 INFO    ] No update needed
[2026-06-12 01:20:20,755.755 INFO    ] Checking for camera pi updates...
[2026-06-12 01:20:20,775.775 INFO    ] 200
[2026-06-12 01:20:20,776.776 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:20:20,801.801 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 01:20:20,853.853 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 01:20:20,855.855 INFO    ] No camera update needed
[2026-06-12 01:20:20,856.856 INFO    ] Script finished. Safe exiting...
[2026-06-12 01:20:20,858.858 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 01:20:20,861.861 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 01:20:20,864.864 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 01:20:22,907.907 INFO    ] ================================================
[2026-06-12 01:20:22,923.923 INFO    ] Launching Daemon at Fri Jun 12 01:20:22 IST 2026
[2026-06-12 01:20:22,935.935 INFO    ] ================================================
[2026-06-12 01:20:23,275.275 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 01:20:23
[2026-06-12 01:20:23,595.595 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 01:20:23,733.733 INFO    ] Initializing speech engine...
[2026-06-12 01:20:23,744.744 INFO    ] 2026-06-12 01:20:23
[2026-06-12 01:20:23,948.948 INFO    ] 2026-06-12 01:20:23
[2026-06-12 01:20:23,976.976 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 01:20:24,160.160 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 01:20:24,169.169 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 01:20:24,336.336 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 01:20:24,386.386 INFO    ] time= 12/06/2026 01:20:24
[2026-06-12 01:20:24,391.391 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 01:20:24,398.398 INFO    ] Checking for existing commands in stream...
[2026-06-12 01:20:24,466.466 INFO    ] No existing commands found in stream
[2026-06-12 01:20:29,480.480 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 01:20:29,484.484 INFO    ] Waiting 0.70 seconds before fallback handling...
[2026-06-12 01:20:30,554.554 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 01:20:30,555.555 INFO    ] Checking for system updates...
[2026-06-12 01:20:30,576.576 INFO    ] 200
[2026-06-12 01:20:30,578.578 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:20:30,611.611 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 01:20:30,613.613 INFO    ] No update needed
[2026-06-12 01:20:30,614.614 INFO    ] Checking for camera pi updates...
[2026-06-12 01:20:30,637.637 INFO    ] 200
[2026-06-12 01:20:30,638.638 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:20:30,663.663 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 01:20:30,708.708 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 01:20:30,710.710 INFO    ] No camera update needed
[2026-06-12 01:20:30,711.711 INFO    ] Script finished. Safe exiting...
[2026-06-12 01:20:30,712.712 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 01:20:30,716.716 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 01:20:30,719.719 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 01:20:32,749.749 INFO    ] ================================================
[2026-06-12 01:20:32,757.757 INFO    ] Launching Daemon at Fri Jun 12 01:20:32 IST 2026
[2026-06-12 01:20:32,763.763 INFO    ] ================================================
[2026-06-12 01:20:33,062.062 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 01:20:33
[2026-06-12 01:20:33,377.377 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 01:20:33,515.515 INFO    ] Initializing speech engine...
[2026-06-12 01:20:33,523.523 INFO    ] 2026-06-12 01:20:33
[2026-06-12 01:20:33,728.728 INFO    ] 2026-06-12 01:20:33
[2026-06-12 01:20:33,756.756 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 01:20:33,940.940 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 01:20:33,948.948 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 01:20:34,077.077 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 01:20:34,143.143 INFO    ] time= 12/06/2026 01:20:34
[2026-06-12 01:20:34,167.167 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 01:20:34,173.173 INFO    ] Checking for existing commands in stream...
[2026-06-12 01:20:34,263.263 INFO    ] No existing commands found in stream
[2026-06-12 01:20:39,272.272 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 01:20:39,275.275 INFO    ] Waiting 3.31 seconds before fallback handling...
[2026-06-12 01:20:42,986.986 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 01:20:42,988.988 INFO    ] Checking for system updates...
[2026-06-12 01:20:43,009.009 INFO    ] 200
[2026-06-12 01:20:43,010.010 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:20:43,041.041 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 01:20:43,042.042 INFO    ] No update needed
[2026-06-12 01:20:43,044.044 INFO    ] Checking for camera pi updates...
[2026-06-12 01:20:43,063.063 INFO    ] 200
[2026-06-12 01:20:43,065.065 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:20:43,088.088 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 01:20:43,130.130 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 01:20:43,132.132 INFO    ] No camera update needed
[2026-06-12 01:20:43,133.133 INFO    ] Script finished. Safe exiting...
[2026-06-12 01:20:43,134.134 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 01:20:43,137.137 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 01:20:43,140.140 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 01:20:45,182.182 INFO    ] ================================================
[2026-06-12 01:20:45,198.198 INFO    ] Launching Daemon at Fri Jun 12 01:20:45 IST 2026
[2026-06-12 01:20:45,210.210 INFO    ] ================================================
[2026-06-12 01:20:45,547.547 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 01:20:45
[2026-06-12 01:20:45,864.864 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 01:20:45,997.997 INFO    ] Initializing speech engine...
[2026-06-12 01:20:46,003.003 INFO    ] 2026-06-12 01:20:45
[2026-06-12 01:20:46,262.262 INFO    ] 2026-06-12 01:20:46
[2026-06-12 01:20:46,291.291 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 01:20:46,475.475 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 01:20:46,485.485 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 01:20:46,614.614 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 01:20:46,678.678 INFO    ] time= 12/06/2026 01:20:46
[2026-06-12 01:20:46,705.705 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 01:20:46,712.712 INFO    ] Checking for existing commands in stream...
[2026-06-12 01:20:46,777.777 INFO    ] No existing commands found in stream
[2026-06-12 01:20:51,788.788 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 01:20:51,791.791 INFO    ] Waiting 2.31 seconds before fallback handling...
[2026-06-12 01:20:54,483.483 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 01:20:54,485.485 INFO    ] Checking for system updates...
[2026-06-12 01:20:54,505.505 INFO    ] 200
[2026-06-12 01:20:54,507.507 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:20:54,537.537 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 01:20:54,538.538 INFO    ] No update needed
[2026-06-12 01:20:54,540.540 INFO    ] Checking for camera pi updates...
[2026-06-12 01:20:54,559.559 INFO    ] 200
[2026-06-12 01:20:54,561.561 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:20:54,586.586 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 01:20:54,729.729 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 01:20:54,731.731 INFO    ] No camera update needed
[2026-06-12 01:20:54,732.732 INFO    ] Script finished. Safe exiting...
[2026-06-12 01:20:54,733.733 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 01:20:54,736.736 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 01:20:54,739.739 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 01:20:56,780.780 INFO    ] ================================================
[2026-06-12 01:20:56,796.796 INFO    ] Launching Daemon at Fri Jun 12 01:20:56 IST 2026
[2026-06-12 01:20:56,807.807 INFO    ] ================================================
[2026-06-12 01:20:57,138.138 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 01:20:57
[2026-06-12 01:20:57,449.449 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 01:20:57,580.580 INFO    ] Initializing speech engine...
[2026-06-12 01:20:57,583.583 INFO    ] 2026-06-12 01:20:57
[2026-06-12 01:20:57,802.802 INFO    ] 2026-06-12 01:20:57
[2026-06-12 01:20:57,831.831 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 01:20:58,016.016 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 01:20:58,026.026 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 01:20:58,158.158 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 01:20:58,226.226 INFO    ] time= 12/06/2026 01:20:58
[2026-06-12 01:20:58,250.250 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 01:20:58,252.252 INFO    ] Checking for existing commands in stream...
[2026-06-12 01:20:58,348.348 INFO    ] No existing commands found in stream
[2026-06-12 01:21:03,357.357 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 01:21:03,360.360 INFO    ] Waiting 3.19 seconds before fallback handling...
[2026-06-12 01:21:06,904.904 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 01:21:06,906.906 INFO    ] Checking for system updates...
[2026-06-12 01:21:06,927.927 INFO    ] 200
[2026-06-12 01:21:06,928.928 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:21:06,958.958 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 01:21:06,960.960 INFO    ] No update needed
[2026-06-12 01:21:06,961.961 INFO    ] Checking for camera pi updates...
[2026-06-12 01:21:06,982.982 INFO    ] 200
[2026-06-12 01:21:06,983.983 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:21:07,006.006 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 01:21:07,046.046 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 01:21:07,047.047 INFO    ] No camera update needed
[2026-06-12 01:21:07,048.048 INFO    ] Script finished. Safe exiting...
[2026-06-12 01:21:07,049.049 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 01:21:07,053.053 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 01:21:07,055.055 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 01:21:09,095.095 INFO    ] ================================================
[2026-06-12 01:21:09,112.112 INFO    ] Launching Daemon at Fri Jun 12 01:21:09 IST 2026
[2026-06-12 01:21:09,123.123 INFO    ] ================================================
[2026-06-12 01:21:09,470.470 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 01:21:09
[2026-06-12 01:21:09,782.782 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 01:21:09,912.912 INFO    ] Initializing speech engine...
[2026-06-12 01:21:09,916.916 INFO    ] 2026-06-12 01:21:09
[2026-06-12 01:21:10,134.134 INFO    ] 2026-06-12 01:21:10
[2026-06-12 01:21:10,163.163 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 01:21:10,350.350 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 01:21:10,359.359 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 01:21:10,487.487 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 01:21:10,559.559 INFO    ] time= 12/06/2026 01:21:10
[2026-06-12 01:21:10,583.583 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 01:21:10,590.590 INFO    ] Checking for existing commands in stream...
[2026-06-12 01:21:10,707.707 INFO    ] No existing commands found in stream
[2026-06-12 01:21:15,716.716 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 01:21:15,719.719 INFO    ] Waiting 1.93 seconds before fallback handling...
[2026-06-12 01:21:18,043.043 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 01:21:18,044.044 INFO    ] Checking for system updates...
[2026-06-12 01:21:18,065.065 INFO    ] 200
[2026-06-12 01:21:18,066.066 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:21:18,097.097 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 01:21:18,099.099 INFO    ] No update needed
[2026-06-12 01:21:18,100.100 INFO    ] Checking for camera pi updates...
[2026-06-12 01:21:18,121.121 INFO    ] 200
[2026-06-12 01:21:18,122.122 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:21:18,145.145 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 01:21:18,192.192 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 01:21:18,193.193 INFO    ] No camera update needed
[2026-06-12 01:21:18,194.194 INFO    ] Script finished. Safe exiting...
[2026-06-12 01:21:18,196.196 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 01:21:18,198.198 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 01:21:18,201.201 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 01:21:20,240.240 INFO    ] ================================================
[2026-06-12 01:21:20,256.256 INFO    ] Launching Daemon at Fri Jun 12 01:21:20 IST 2026
[2026-06-12 01:21:20,268.268 INFO    ] ================================================
[2026-06-12 01:21:20,649.649 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 01:21:20
[2026-06-12 01:21:20,985.985 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 01:21:21,135.135 INFO    ] Initializing speech engine...
[2026-06-12 01:21:21,141.141 INFO    ] 2026-06-12 01:21:21
[2026-06-12 01:21:21,352.352 INFO    ] 2026-06-12 01:21:21
[2026-06-12 01:21:21,382.382 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 01:21:21,521.521 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 01:21:21,571.571 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 01:21:21,704.704 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 01:21:21,766.766 INFO    ] time= 12/06/2026 01:21:21
[2026-06-12 01:21:21,805.805 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 01:21:21,811.811 INFO    ] Checking for existing commands in stream...
[2026-06-12 01:21:21,880.880 INFO    ] No existing commands found in stream
[2026-06-12 01:21:26,894.894 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 01:21:26,897.897 INFO    ] Waiting 3.42 seconds before fallback handling...
[2026-06-12 01:21:30,661.661 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 01:21:30,663.663 INFO    ] Checking for system updates...
[2026-06-12 01:21:30,683.683 INFO    ] 200
[2026-06-12 01:21:30,685.685 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:21:30,717.717 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 01:21:30,718.718 INFO    ] No update needed
[2026-06-12 01:21:30,720.720 INFO    ] Checking for camera pi updates...
[2026-06-12 01:21:30,743.743 INFO    ] 200
[2026-06-12 01:21:30,744.744 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:21:30,767.767 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 01:21:30,813.813 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 01:21:30,815.815 INFO    ] No camera update needed
[2026-06-12 01:21:30,816.816 INFO    ] Script finished. Safe exiting...
[2026-06-12 01:21:30,817.817 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 01:21:30,820.820 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 01:21:30,823.823 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 01:21:32,855.855 INFO    ] ================================================
[2026-06-12 01:21:32,871.871 INFO    ] Launching Daemon at Fri Jun 12 01:21:32 IST 2026
[2026-06-12 01:21:32,883.883 INFO    ] ================================================
[2026-06-12 01:21:33,253.253 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 01:21:33
[2026-06-12 01:21:33,573.573 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 01:21:33,703.703 INFO    ] Initializing speech engine...
[2026-06-12 01:21:33,712.712 INFO    ] 2026-06-12 01:21:33
[2026-06-12 01:21:33,924.924 INFO    ] 2026-06-12 01:21:33
[2026-06-12 01:21:33,952.952 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 01:21:34,136.136 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 01:21:34,146.146 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 01:21:34,285.285 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 01:21:34,343.343 INFO    ] time= 12/06/2026 01:21:34
[2026-06-12 01:21:34,366.366 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 01:21:34,372.372 INFO    ] Checking for existing commands in stream...
[2026-06-12 01:21:34,437.437 INFO    ] No existing commands found in stream
[2026-06-12 01:21:39,447.447 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 01:21:39,449.449 INFO    ] Waiting 0.80 seconds before fallback handling...
[2026-06-12 01:21:40,623.623 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 01:21:40,624.624 INFO    ] Checking for system updates...
[2026-06-12 01:21:40,646.646 INFO    ] 200
[2026-06-12 01:21:40,647.647 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:21:40,679.679 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 01:21:40,681.681 INFO    ] No update needed
[2026-06-12 01:21:40,682.682 INFO    ] Checking for camera pi updates...
[2026-06-12 01:21:40,702.702 INFO    ] 200
[2026-06-12 01:21:40,703.703 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:21:40,726.726 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 01:21:40,769.769 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 01:21:40,771.771 INFO    ] No camera update needed
[2026-06-12 01:21:40,772.772 INFO    ] Script finished. Safe exiting...
[2026-06-12 01:21:40,774.774 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 01:21:40,776.776 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 01:21:40,779.779 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 01:21:42,820.820 INFO    ] ================================================
[2026-06-12 01:21:42,836.836 INFO    ] Launching Daemon at Fri Jun 12 01:21:42 IST 2026
[2026-06-12 01:21:42,848.848 INFO    ] ================================================
[2026-06-12 01:21:43,212.212 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 01:21:43
[2026-06-12 01:21:43,522.522 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 01:21:43,657.657 INFO    ] Initializing speech engine...
[2026-06-12 01:21:43,665.665 INFO    ] 2026-06-12 01:21:43
[2026-06-12 01:21:43,869.869 INFO    ] 2026-06-12 01:21:43
[2026-06-12 01:21:43,897.897 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 01:21:44,080.080 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 01:21:44,089.089 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 01:21:44,218.218 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 01:21:44,282.282 INFO    ] time= 12/06/2026 01:21:44
[2026-06-12 01:21:44,308.308 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 01:21:44,315.315 INFO    ] Checking for existing commands in stream...
[2026-06-12 01:21:44,405.405 INFO    ] No existing commands found in stream
[2026-06-12 01:21:49,414.414 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 01:21:49,416.416 INFO    ] Waiting 1.08 seconds before fallback handling...
[2026-06-12 01:21:50,853.853 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 01:21:50,854.854 INFO    ] Checking for system updates...
[2026-06-12 01:21:50,875.875 INFO    ] 200
[2026-06-12 01:21:50,876.876 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:21:50,909.909 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 01:21:50,911.911 INFO    ] No update needed
[2026-06-12 01:21:50,912.912 INFO    ] Checking for camera pi updates...
[2026-06-12 01:21:50,931.931 INFO    ] 200
[2026-06-12 01:21:50,933.933 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:21:50,955.955 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 01:21:50,998.998 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 01:21:51,000.000 INFO    ] No camera update needed
[2026-06-12 01:21:51,001.001 INFO    ] Script finished. Safe exiting...
[2026-06-12 01:21:51,002.002 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 01:21:51,005.005 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 01:21:51,008.008 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 01:21:53,046.046 INFO    ] ================================================
[2026-06-12 01:21:53,062.062 INFO    ] Launching Daemon at Fri Jun 12 01:21:53 IST 2026
[2026-06-12 01:21:53,073.073 INFO    ] ================================================
[2026-06-12 01:21:53,403.403 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 01:21:53
[2026-06-12 01:21:53,718.718 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 01:21:53,853.853 INFO    ] Initializing speech engine...
[2026-06-12 01:21:53,858.858 INFO    ] 2026-06-12 01:21:53
[2026-06-12 01:21:54,086.086 INFO    ] 2026-06-12 01:21:54
[2026-06-12 01:21:54,116.116 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 01:21:54,254.254 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 01:21:54,316.316 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 01:21:54,457.457 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 01:21:54,513.513 INFO    ] time= 12/06/2026 01:21:54
[2026-06-12 01:21:54,558.558 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 01:21:54,564.564 INFO    ] Checking for existing commands in stream...
[2026-06-12 01:21:54,638.638 INFO    ] No existing commands found in stream
[2026-06-12 01:21:59,649.649 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 01:21:59,652.652 INFO    ] Waiting 3.12 seconds before fallback handling...
[2026-06-12 01:22:03,088.088 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 01:22:03,091.091 INFO    ] Checking for system updates...
[2026-06-12 01:22:03,131.131 INFO    ] 200
[2026-06-12 01:22:03,134.134 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:22:03,194.194 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 01:22:03,196.196 INFO    ] No update needed
[2026-06-12 01:22:03,198.198 INFO    ] Checking for camera pi updates...
[2026-06-12 01:22:03,232.232 INFO    ] 200
[2026-06-12 01:22:03,235.235 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:22:03,261.261 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 01:22:03,305.305 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 01:22:03,306.306 INFO    ] No camera update needed
[2026-06-12 01:22:03,307.307 INFO    ] Script finished. Safe exiting...
[2026-06-12 01:22:03,309.309 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 01:22:03,312.312 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 01:22:03,314.314 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 01:22:05,354.354 INFO    ] ================================================
[2026-06-12 01:22:05,371.371 INFO    ] Launching Daemon at Fri Jun 12 01:22:05 IST 2026
[2026-06-12 01:22:05,381.381 INFO    ] ================================================
[2026-06-12 01:22:05,747.747 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 01:22:05
[2026-06-12 01:22:06,085.085 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 01:22:06,237.237 INFO    ] Initializing speech engine...
[2026-06-12 01:22:06,243.243 INFO    ] 2026-06-12 01:22:06
[2026-06-12 01:22:06,453.453 INFO    ] 2026-06-12 01:22:06
[2026-06-12 01:22:06,483.483 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 01:22:06,669.669 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 01:22:06,680.680 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 01:22:06,830.830 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 01:22:06,891.891 INFO    ] time= 12/06/2026 01:22:06
[2026-06-12 01:22:06,902.902 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 01:22:06,908.908 INFO    ] Checking for existing commands in stream...
[2026-06-12 01:22:06,973.973 INFO    ] No existing commands found in stream
[2026-06-12 01:22:11,984.984 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 01:22:11,988.988 INFO    ] Waiting 1.79 seconds before fallback handling...
[2026-06-12 01:22:14,133.133 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 01:22:14,135.135 INFO    ] Checking for system updates...
[2026-06-12 01:22:14,156.156 INFO    ] 200
[2026-06-12 01:22:14,158.158 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:22:14,191.191 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 01:22:14,192.192 INFO    ] No update needed
[2026-06-12 01:22:14,193.193 INFO    ] Checking for camera pi updates...
[2026-06-12 01:22:14,216.216 INFO    ] 200
[2026-06-12 01:22:14,218.218 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:22:14,244.244 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 01:22:14,301.301 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 01:22:14,302.302 INFO    ] No camera update needed
[2026-06-12 01:22:14,304.304 INFO    ] Script finished. Safe exiting...
[2026-06-12 01:22:14,305.305 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 01:22:14,308.308 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 01:22:14,311.311 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 01:22:16,350.350 INFO    ] ================================================
[2026-06-12 01:22:16,365.365 INFO    ] Launching Daemon at Fri Jun 12 01:22:16 IST 2026
[2026-06-12 01:22:16,376.376 INFO    ] ================================================
[2026-06-12 01:22:16,744.744 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 01:22:16
[2026-06-12 01:22:17,056.056 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 01:22:17,187.187 INFO    ] Initializing speech engine...
[2026-06-12 01:22:17,191.191 INFO    ] 2026-06-12 01:22:17
[2026-06-12 01:22:17,410.410 INFO    ] 2026-06-12 01:22:17
[2026-06-12 01:22:17,439.439 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 01:22:17,760.760 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 01:22:17,828.828 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 01:22:17,949.949 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 01:22:17,971.971 INFO    ] time= 12/06/2026 01:22:17
[2026-06-12 01:22:17,978.978 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 01:22:17,980.980 INFO    ] Checking for existing commands in stream...
[2026-06-12 01:22:18,052.052 INFO    ] No existing commands found in stream
[2026-06-12 01:22:23,061.061 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 01:22:23,062.062 INFO    ] Waiting 2.97 seconds before fallback handling...
[2026-06-12 01:22:26,405.405 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 01:22:26,407.407 INFO    ] Checking for system updates...
[2026-06-12 01:22:26,428.428 INFO    ] 200
[2026-06-12 01:22:26,430.430 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:22:26,463.463 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 01:22:26,464.464 INFO    ] No update needed
[2026-06-12 01:22:26,465.465 INFO    ] Checking for camera pi updates...
[2026-06-12 01:22:26,486.486 INFO    ] 200
[2026-06-12 01:22:26,487.487 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:22:26,512.512 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 01:22:26,564.564 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 01:22:26,565.565 INFO    ] No camera update needed
[2026-06-12 01:22:26,566.566 INFO    ] Script finished. Safe exiting...
[2026-06-12 01:22:26,567.567 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 01:22:26,570.570 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 01:22:26,573.573 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 01:22:28,611.611 INFO    ] ================================================
[2026-06-12 01:22:28,626.626 INFO    ] Launching Daemon at Fri Jun 12 01:22:28 IST 2026
[2026-06-12 01:22:28,637.637 INFO    ] ================================================
[2026-06-12 01:22:28,977.977 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 01:22:28
[2026-06-12 01:22:29,294.294 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 01:22:29,424.424 INFO    ] Initializing speech engine...
[2026-06-12 01:22:29,433.433 INFO    ] 2026-06-12 01:22:29
[2026-06-12 01:22:29,646.646 INFO    ] 2026-06-12 01:22:29
[2026-06-12 01:22:29,675.675 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 01:22:29,983.983 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 01:22:30,044.044 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 01:22:30,176.176 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 01:22:30,178.178 INFO    ] time= 12/06/2026 01:22:30
[2026-06-12 01:22:30,204.204 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 01:22:30,207.207 INFO    ] Checking for existing commands in stream...
[2026-06-12 01:22:30,279.279 INFO    ] No existing commands found in stream
[2026-06-12 01:22:35,289.289 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 01:22:35,292.292 INFO    ] Waiting 1.08 seconds before fallback handling...
[2026-06-12 01:22:36,757.757 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 01:22:36,759.759 INFO    ] Checking for system updates...
[2026-06-12 01:22:36,782.782 INFO    ] 200
[2026-06-12 01:22:36,784.784 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:22:36,817.817 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 01:22:36,818.818 INFO    ] No update needed
[2026-06-12 01:22:36,819.819 INFO    ] Checking for camera pi updates...
[2026-06-12 01:22:36,840.840 INFO    ] 200
[2026-06-12 01:22:36,842.842 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:22:36,867.867 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 01:22:36,906.906 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 01:22:36,907.907 INFO    ] No camera update needed
[2026-06-12 01:22:36,909.909 INFO    ] Script finished. Safe exiting...
[2026-06-12 01:22:36,910.910 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 01:22:36,913.913 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 01:22:36,916.916 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 01:22:38,947.947 INFO    ] ================================================
[2026-06-12 01:22:38,963.963 INFO    ] Launching Daemon at Fri Jun 12 01:22:38 IST 2026
[2026-06-12 01:22:38,974.974 INFO    ] ================================================
[2026-06-12 01:22:39,343.343 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 01:22:39
[2026-06-12 01:22:39,661.661 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 01:22:39,794.794 INFO    ] Initializing speech engine...
[2026-06-12 01:22:39,806.806 INFO    ] 2026-06-12 01:22:39
[2026-06-12 01:22:40,013.013 INFO    ] 2026-06-12 01:22:39
[2026-06-12 01:22:40,041.041 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 01:22:40,225.225 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 01:22:40,239.239 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 01:22:40,385.385 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 01:22:40,440.440 INFO    ] time= 12/06/2026 01:22:40
[2026-06-12 01:22:40,455.455 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 01:22:40,462.462 INFO    ] Checking for existing commands in stream...
[2026-06-12 01:22:40,527.527 INFO    ] No existing commands found in stream
[2026-06-12 01:22:45,538.538 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 01:22:45,541.541 INFO    ] Waiting 3.14 seconds before fallback handling...
[2026-06-12 01:22:49,072.072 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 01:22:49,074.074 INFO    ] Checking for system updates...
[2026-06-12 01:22:49,096.096 INFO    ] 200
[2026-06-12 01:22:49,098.098 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:22:49,128.128 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 01:22:49,129.129 INFO    ] No update needed
[2026-06-12 01:22:49,131.131 INFO    ] Checking for camera pi updates...
[2026-06-12 01:22:49,151.151 INFO    ] 200
[2026-06-12 01:22:49,153.153 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:22:49,177.177 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 01:22:49,235.235 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 01:22:49,236.236 INFO    ] No camera update needed
[2026-06-12 01:22:49,237.237 INFO    ] Script finished. Safe exiting...
[2026-06-12 01:22:49,239.239 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 01:22:49,242.242 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 01:22:49,245.245 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 01:22:51,284.284 INFO    ] ================================================
[2026-06-12 01:22:51,300.300 INFO    ] Launching Daemon at Fri Jun 12 01:22:51 IST 2026
[2026-06-12 01:22:51,312.312 INFO    ] ================================================
[2026-06-12 01:22:51,670.670 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 01:22:51
[2026-06-12 01:22:51,982.982 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 01:22:52,113.113 INFO    ] Initializing speech engine...
[2026-06-12 01:22:52,116.116 INFO    ] 2026-06-12 01:22:52
[2026-06-12 01:22:52,335.335 INFO    ] 2026-06-12 01:22:52
[2026-06-12 01:22:52,364.364 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 01:22:52,550.550 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 01:22:52,559.559 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 01:22:52,683.683 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 01:22:52,739.739 INFO    ] time= 12/06/2026 01:22:52
[2026-06-12 01:22:52,775.775 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 01:22:52,785.785 INFO    ] Checking for existing commands in stream...
[2026-06-12 01:22:52,856.856 INFO    ] No existing commands found in stream
[2026-06-12 01:22:57,866.866 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 01:22:57,869.869 INFO    ] Waiting 1.51 seconds before fallback handling...
[2026-06-12 01:22:59,729.729 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 01:22:59,730.730 INFO    ] Checking for system updates...
[2026-06-12 01:22:59,753.753 INFO    ] 200
[2026-06-12 01:22:59,754.754 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:22:59,787.787 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 01:22:59,788.788 INFO    ] No update needed
[2026-06-12 01:22:59,790.790 INFO    ] Checking for camera pi updates...
[2026-06-12 01:22:59,811.811 INFO    ] 200
[2026-06-12 01:22:59,813.813 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:22:59,839.839 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 01:22:59,979.979 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 01:22:59,980.980 INFO    ] No camera update needed
[2026-06-12 01:22:59,982.982 INFO    ] Script finished. Safe exiting...
[2026-06-12 01:22:59,983.983 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 01:22:59,986.986 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 01:22:59,989.989 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 01:23:02,027.027 INFO    ] ================================================
[2026-06-12 01:23:02,040.040 INFO    ] Launching Daemon at Fri Jun 12 01:23:02 IST 2026
[2026-06-12 01:23:02,049.049 INFO    ] ================================================
[2026-06-12 01:23:02,408.408 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 01:23:02
[2026-06-12 01:23:02,787.787 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 01:23:02,929.929 INFO    ] Initializing speech engine...
[2026-06-12 01:23:02,937.937 INFO    ] 2026-06-12 01:23:02
[2026-06-12 01:23:03,151.151 INFO    ] 2026-06-12 01:23:03
[2026-06-12 01:23:03,180.180 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 01:23:03,303.303 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 01:23:03,365.365 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 01:23:03,503.503 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 01:23:03,568.568 INFO    ] time= 12/06/2026 01:23:03
[2026-06-12 01:23:03,595.595 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 01:23:03,602.602 INFO    ] Checking for existing commands in stream...
[2026-06-12 01:23:03,668.668 INFO    ] No existing commands found in stream
[2026-06-12 01:23:08,678.678 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 01:23:08,681.681 INFO    ] Waiting 2.32 seconds before fallback handling...
[2026-06-12 01:23:11,383.383 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 01:23:11,385.385 INFO    ] Checking for system updates...
[2026-06-12 01:23:11,407.407 INFO    ] 200
[2026-06-12 01:23:11,408.408 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:23:11,439.439 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 01:23:11,440.440 INFO    ] No update needed
[2026-06-12 01:23:11,442.442 INFO    ] Checking for camera pi updates...
[2026-06-12 01:23:11,462.462 INFO    ] 200
[2026-06-12 01:23:11,463.463 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:23:11,488.488 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 01:23:11,516.516 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 01:23:11,518.518 INFO    ] No camera update needed
[2026-06-12 01:23:11,519.519 INFO    ] Script finished. Safe exiting...
[2026-06-12 01:23:11,520.520 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 01:23:11,523.523 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 01:23:11,526.526 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 01:23:13,558.558 INFO    ] ================================================
[2026-06-12 01:23:13,574.574 INFO    ] Launching Daemon at Fri Jun 12 01:23:13 IST 2026
[2026-06-12 01:23:13,586.586 INFO    ] ================================================
[2026-06-12 01:23:13,949.949 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 01:23:13
[2026-06-12 01:23:14,260.260 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 01:23:14,390.390 INFO    ] Initializing speech engine...
[2026-06-12 01:23:14,393.393 INFO    ] 2026-06-12 01:23:14
[2026-06-12 01:23:14,613.613 INFO    ] 2026-06-12 01:23:14
[2026-06-12 01:23:14,642.642 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 01:23:14,829.829 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 01:23:14,837.837 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 01:23:14,966.966 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 01:23:15,032.032 INFO    ] time= 12/06/2026 01:23:14
[2026-06-12 01:23:15,060.060 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 01:23:15,066.066 INFO    ] Checking for existing commands in stream...
[2026-06-12 01:23:15,158.158 INFO    ] No existing commands found in stream
[2026-06-12 01:23:20,167.167 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 01:23:20,169.169 INFO    ] Waiting 1.00 seconds before fallback handling...
[2026-06-12 01:23:21,542.542 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 01:23:21,544.544 INFO    ] Checking for system updates...
[2026-06-12 01:23:21,565.565 INFO    ] 200
[2026-06-12 01:23:21,567.567 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:23:21,603.603 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 01:23:21,604.604 INFO    ] No update needed
[2026-06-12 01:23:21,606.606 INFO    ] Checking for camera pi updates...
[2026-06-12 01:23:21,625.625 INFO    ] 200
[2026-06-12 01:23:21,626.626 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:23:21,651.651 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 01:23:21,698.698 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 01:23:21,699.699 INFO    ] No camera update needed
[2026-06-12 01:23:21,701.701 INFO    ] Script finished. Safe exiting...
[2026-06-12 01:23:21,702.702 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 01:23:21,705.705 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 01:23:21,707.707 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 01:23:23,746.746 INFO    ] ================================================
[2026-06-12 01:23:23,762.762 INFO    ] Launching Daemon at Fri Jun 12 01:23:23 IST 2026
[2026-06-12 01:23:23,772.772 INFO    ] ================================================
[2026-06-12 01:23:24,114.114 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 01:23:24
[2026-06-12 01:23:24,424.424 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 01:23:24,557.557 INFO    ] Initializing speech engine...
[2026-06-12 01:23:24,569.569 INFO    ] 2026-06-12 01:23:24
[2026-06-12 01:23:24,776.776 INFO    ] 2026-06-12 01:23:24
[2026-06-12 01:23:24,805.805 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 01:23:24,991.991 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 01:23:24,999.999 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 01:23:25,129.129 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 01:23:25,188.188 INFO    ] time= 12/06/2026 01:23:25
[2026-06-12 01:23:25,222.222 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 01:23:25,228.228 INFO    ] Checking for existing commands in stream...
[2026-06-12 01:23:25,296.296 INFO    ] No existing commands found in stream
[2026-06-12 01:23:30,305.305 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 01:23:30,307.307 INFO    ] Waiting 1.56 seconds before fallback handling...
[2026-06-12 01:23:32,211.211 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 01:23:32,213.213 INFO    ] Checking for system updates...
[2026-06-12 01:23:32,240.240 INFO    ] 200
[2026-06-12 01:23:32,242.242 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:23:32,282.282 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 01:23:32,283.283 INFO    ] No update needed
[2026-06-12 01:23:32,285.285 INFO    ] Checking for camera pi updates...
[2026-06-12 01:23:32,308.308 INFO    ] 200
[2026-06-12 01:23:32,310.310 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:23:32,338.338 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 01:23:32,364.364 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 01:23:32,366.366 INFO    ] No camera update needed
[2026-06-12 01:23:32,367.367 INFO    ] Script finished. Safe exiting...
[2026-06-12 01:23:32,369.369 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 01:23:32,372.372 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 01:23:32,376.376 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 01:23:34,407.407 INFO    ] ================================================
[2026-06-12 01:23:34,422.422 INFO    ] Launching Daemon at Fri Jun 12 01:23:34 IST 2026
[2026-06-12 01:23:34,433.433 INFO    ] ================================================
[2026-06-12 01:23:34,800.800 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 01:23:34
[2026-06-12 01:23:35,119.119 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 01:23:35,263.263 INFO    ] Initializing speech engine...
[2026-06-12 01:23:35,268.268 INFO    ] 2026-06-12 01:23:35
[2026-06-12 01:23:35,473.473 INFO    ] 2026-06-12 01:23:35
[2026-06-12 01:23:35,501.501 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 01:23:35,685.685 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 01:23:35,695.695 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 01:23:35,821.821 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 01:23:35,863.863 INFO    ] time= 12/06/2026 01:23:35
[2026-06-12 01:23:35,908.908 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 01:23:35,918.918 INFO    ] Checking for existing commands in stream...
[2026-06-12 01:23:35,989.989 INFO    ] No existing commands found in stream
[2026-06-12 01:23:40,998.998 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 01:23:41,001.001 INFO    ] Waiting 2.52 seconds before fallback handling...
[2026-06-12 01:23:43,872.872 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 01:23:43,874.874 INFO    ] Checking for system updates...
[2026-06-12 01:23:43,896.896 INFO    ] 200
[2026-06-12 01:23:43,897.897 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:23:43,929.929 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 01:23:43,931.931 INFO    ] No update needed
[2026-06-12 01:23:43,932.932 INFO    ] Checking for camera pi updates...
[2026-06-12 01:23:43,953.953 INFO    ] 200
[2026-06-12 01:23:43,954.954 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:23:43,977.977 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 01:23:44,022.022 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 01:23:44,023.023 INFO    ] No camera update needed
[2026-06-12 01:23:44,025.025 INFO    ] Script finished. Safe exiting...
[2026-06-12 01:23:44,026.026 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 01:23:44,029.029 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 01:23:44,032.032 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 01:23:46,070.070 INFO    ] ================================================
[2026-06-12 01:23:46,085.085 INFO    ] Launching Daemon at Fri Jun 12 01:23:46 IST 2026
[2026-06-12 01:23:46,096.096 INFO    ] ================================================
[2026-06-12 01:23:46,422.422 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 01:23:46
[2026-06-12 01:23:46,734.734 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 01:23:46,864.864 INFO    ] Initializing speech engine...
[2026-06-12 01:23:46,867.867 INFO    ] 2026-06-12 01:23:46
[2026-06-12 01:23:47,082.082 INFO    ] 2026-06-12 01:23:47
[2026-06-12 01:23:47,112.112 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 01:23:47,296.296 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 01:23:47,299.299 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 01:23:47,435.435 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 01:23:47,499.499 INFO    ] time= 12/06/2026 01:23:47
[2026-06-12 01:23:47,526.526 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 01:23:47,532.532 INFO    ] Checking for existing commands in stream...
[2026-06-12 01:23:47,597.597 INFO    ] No existing commands found in stream
[2026-06-12 01:23:52,608.608 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 01:23:52,611.611 INFO    ] Waiting 1.83 seconds before fallback handling...
[2026-06-12 01:23:54,817.817 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 01:23:54,819.819 INFO    ] Checking for system updates...
[2026-06-12 01:23:54,841.841 INFO    ] 200
[2026-06-12 01:23:54,842.842 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:23:54,873.873 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 01:23:54,874.874 INFO    ] No update needed
[2026-06-12 01:23:54,876.876 INFO    ] Checking for camera pi updates...
[2026-06-12 01:23:54,895.895 INFO    ] 200
[2026-06-12 01:23:54,897.897 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:23:54,921.921 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 01:23:54,962.962 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 01:23:54,964.964 INFO    ] No camera update needed
[2026-06-12 01:23:54,965.965 INFO    ] Script finished. Safe exiting...
[2026-06-12 01:23:54,967.967 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 01:23:54,970.970 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 01:23:54,973.973 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 01:23:57,012.012 INFO    ] ================================================
[2026-06-12 01:23:57,027.027 INFO    ] Launching Daemon at Fri Jun 12 01:23:57 IST 2026
[2026-06-12 01:23:57,038.038 INFO    ] ================================================
[2026-06-12 01:23:57,405.405 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 01:23:57
[2026-06-12 01:23:57,722.722 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 01:23:57,854.854 INFO    ] Initializing speech engine...
[2026-06-12 01:23:57,859.859 INFO    ] 2026-06-12 01:23:57
[2026-06-12 01:23:58,088.088 INFO    ] 2026-06-12 01:23:58
[2026-06-12 01:23:58,119.119 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 01:23:58,316.316 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 01:23:58,320.320 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 01:23:58,458.458 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 01:23:58,510.510 INFO    ] time= 12/06/2026 01:23:58
[2026-06-12 01:23:58,543.543 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 01:23:58,566.566 INFO    ] Checking for existing commands in stream...
[2026-06-12 01:23:58,669.669 INFO    ] No existing commands found in stream
[2026-06-12 01:24:03,678.678 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 01:24:03,681.681 INFO    ] Waiting 0.50 seconds before fallback handling...
[2026-06-12 01:24:04,543.543 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 01:24:04,545.545 INFO    ] Checking for system updates...
[2026-06-12 01:24:04,566.566 INFO    ] 200
[2026-06-12 01:24:04,568.568 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:24:04,600.600 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 01:24:04,602.602 INFO    ] No update needed
[2026-06-12 01:24:04,603.603 INFO    ] Checking for camera pi updates...
[2026-06-12 01:24:04,624.624 INFO    ] 200
[2026-06-12 01:24:04,625.625 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:24:04,650.650 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 01:24:04,700.700 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 01:24:04,702.702 INFO    ] No camera update needed
[2026-06-12 01:24:04,703.703 INFO    ] Script finished. Safe exiting...
[2026-06-12 01:24:04,704.704 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 01:24:04,707.707 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 01:24:04,710.710 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 01:24:06,748.748 INFO    ] ================================================
[2026-06-12 01:24:06,764.764 INFO    ] Launching Daemon at Fri Jun 12 01:24:06 IST 2026
[2026-06-12 01:24:06,775.775 INFO    ] ================================================
[2026-06-12 01:24:07,138.138 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 01:24:07
[2026-06-12 01:24:07,449.449 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 01:24:07,591.591 INFO    ] Initializing speech engine...
[2026-06-12 01:24:07,597.597 INFO    ] 2026-06-12 01:24:07
[2026-06-12 01:24:07,801.801 INFO    ] 2026-06-12 01:24:07
[2026-06-12 01:24:07,831.831 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 01:24:08,016.016 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 01:24:08,026.026 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 01:24:08,153.153 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 01:24:08,205.205 INFO    ] time= 12/06/2026 01:24:08
[2026-06-12 01:24:08,234.234 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 01:24:08,250.250 INFO    ] Checking for existing commands in stream...
[2026-06-12 01:24:08,321.321 INFO    ] No existing commands found in stream
[2026-06-12 01:24:13,331.331 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 01:24:13,334.334 INFO    ] Waiting 3.65 seconds before fallback handling...
[2026-06-12 01:24:17,373.373 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 01:24:17,374.374 INFO    ] Checking for system updates...
[2026-06-12 01:24:17,395.395 INFO    ] 200
[2026-06-12 01:24:17,396.396 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:24:17,426.426 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 01:24:17,427.427 INFO    ] No update needed
[2026-06-12 01:24:17,428.428 INFO    ] Checking for camera pi updates...
[2026-06-12 01:24:17,451.451 INFO    ] 200
[2026-06-12 01:24:17,453.453 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:24:17,477.477 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 01:24:17,518.518 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 01:24:17,519.519 INFO    ] No camera update needed
[2026-06-12 01:24:17,521.521 INFO    ] Script finished. Safe exiting...
[2026-06-12 01:24:17,522.522 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 01:24:17,525.525 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 01:24:17,528.528 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 01:24:19,567.567 INFO    ] ================================================
[2026-06-12 01:24:19,582.582 INFO    ] Launching Daemon at Fri Jun 12 01:24:19 IST 2026
[2026-06-12 01:24:19,593.593 INFO    ] ================================================
[2026-06-12 01:24:19,962.962 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 01:24:19
[2026-06-12 01:24:20,272.272 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 01:24:20,405.405 INFO    ] Initializing speech engine...
[2026-06-12 01:24:20,417.417 INFO    ] 2026-06-12 01:24:20
[2026-06-12 01:24:20,625.625 INFO    ] 2026-06-12 01:24:20
[2026-06-12 01:24:20,654.654 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 01:24:20,840.840 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 01:24:20,850.850 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 01:24:20,997.997 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 01:24:21,052.052 INFO    ] time= 12/06/2026 01:24:21
[2026-06-12 01:24:21,075.075 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 01:24:21,081.081 INFO    ] Checking for existing commands in stream...
[2026-06-12 01:24:21,148.148 INFO    ] No existing commands found in stream
[2026-06-12 01:24:26,157.157 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 01:24:26,160.160 INFO    ] Waiting 3.98 seconds before fallback handling...
[2026-06-12 01:24:35,555.555 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 01:24:35,556.556 INFO    ] Checking for system updates...
[2026-06-12 01:24:35,578.578 INFO    ] 200
[2026-06-12 01:24:35,579.579 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:24:35,609.609 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 01:24:35,610.610 INFO    ] No update needed
[2026-06-12 01:24:35,612.612 INFO    ] Checking for camera pi updates...
[2026-06-12 01:24:35,631.631 INFO    ] 200
[2026-06-12 01:24:35,632.632 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:24:35,657.657 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 01:24:35,703.703 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 01:24:35,704.704 INFO    ] No camera update needed
[2026-06-12 01:24:35,706.706 INFO    ] Script finished. Safe exiting...
[2026-06-12 01:24:35,707.707 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 01:24:35,710.710 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 01:24:35,713.713 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 01:24:37,751.751 INFO    ] ================================================
[2026-06-12 01:24:37,766.766 INFO    ] Launching Daemon at Fri Jun 12 01:24:37 IST 2026
[2026-06-12 01:24:37,777.777 INFO    ] ================================================
[2026-06-12 01:24:38,130.130 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 01:24:38
[2026-06-12 01:24:38,446.446 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 01:24:38,589.589 INFO    ] Initializing speech engine...
[2026-06-12 01:24:38,595.595 INFO    ] 2026-06-12 01:24:38
[2026-06-12 01:24:38,798.798 INFO    ] 2026-06-12 01:24:38
[2026-06-12 01:24:38,826.826 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 01:24:39,009.009 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 01:24:39,018.018 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 01:24:39,153.153 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 01:24:39,215.215 INFO    ] time= 12/06/2026 01:24:39
[2026-06-12 01:24:39,239.239 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 01:24:39,245.245 INFO    ] Checking for existing commands in stream...
[2026-06-12 01:24:39,335.335 INFO    ] No existing commands found in stream
[2026-06-12 01:24:44,344.344 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 01:24:44,346.346 INFO    ] Waiting 1.74 seconds before fallback handling...
[2026-06-12 01:24:46,475.475 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 01:24:46,477.477 INFO    ] Checking for system updates...
[2026-06-12 01:24:46,499.499 INFO    ] 200
[2026-06-12 01:24:46,500.500 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:24:46,535.535 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 01:24:46,537.537 INFO    ] No update needed
[2026-06-12 01:24:46,538.538 INFO    ] Checking for camera pi updates...
[2026-06-12 01:24:46,561.561 INFO    ] 200
[2026-06-12 01:24:46,563.563 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:24:46,588.588 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 01:24:46,643.643 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 01:24:46,644.644 INFO    ] No camera update needed
[2026-06-12 01:24:46,645.645 INFO    ] Script finished. Safe exiting...
[2026-06-12 01:24:46,647.647 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 01:24:46,650.650 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 01:24:46,653.653 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 01:24:48,692.692 INFO    ] ================================================
[2026-06-12 01:24:48,707.707 INFO    ] Launching Daemon at Fri Jun 12 01:24:48 IST 2026
[2026-06-12 01:24:48,718.718 INFO    ] ================================================
[2026-06-12 01:24:49,080.080 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 01:24:49
[2026-06-12 01:24:49,392.392 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 01:24:49,523.523 INFO    ] Initializing speech engine...
[2026-06-12 01:24:49,531.531 INFO    ] 2026-06-12 01:24:49
[2026-06-12 01:24:49,743.743 INFO    ] 2026-06-12 01:24:49
[2026-06-12 01:24:49,771.771 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 01:24:49,956.956 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 01:24:49,964.964 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 01:24:50,104.104 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 01:24:50,161.161 INFO    ] time= 12/06/2026 01:24:50
[2026-06-12 01:24:50,185.185 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 01:24:50,191.191 INFO    ] Checking for existing commands in stream...
[2026-06-12 01:24:50,258.258 INFO    ] No existing commands found in stream
[2026-06-12 01:24:55,267.267 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 01:24:55,270.270 INFO    ] Waiting 0.37 seconds before fallback handling...
[2026-06-12 01:24:56,029.029 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 01:24:56,030.030 INFO    ] Checking for system updates...
[2026-06-12 01:24:56,051.051 INFO    ] 200
[2026-06-12 01:24:56,052.052 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:24:56,083.083 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 01:24:56,084.084 INFO    ] No update needed
[2026-06-12 01:24:56,086.086 INFO    ] Checking for camera pi updates...
[2026-06-12 01:24:56,107.107 INFO    ] 200
[2026-06-12 01:24:56,108.108 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:24:56,135.135 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 01:24:56,178.178 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 01:24:56,180.180 INFO    ] No camera update needed
[2026-06-12 01:24:56,186.186 INFO    ] Script finished. Safe exiting...
[2026-06-12 01:24:56,187.187 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 01:24:56,191.191 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 01:24:56,194.194 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 01:24:58,233.233 INFO    ] ================================================
[2026-06-12 01:24:58,248.248 INFO    ] Launching Daemon at Fri Jun 12 01:24:58 IST 2026
[2026-06-12 01:24:58,259.259 INFO    ] ================================================
[2026-06-12 01:24:58,640.640 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 01:24:58
[2026-06-12 01:24:58,975.975 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 01:24:59,127.127 INFO    ] Initializing speech engine...
[2026-06-12 01:24:59,134.134 INFO    ] 2026-06-12 01:24:59
[2026-06-12 01:24:59,342.342 INFO    ] 2026-06-12 01:24:59
[2026-06-12 01:24:59,371.371 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 01:24:59,555.555 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 01:24:59,567.567 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 01:24:59,703.703 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 01:24:59,766.766 INFO    ] time= 12/06/2026 01:24:59
[2026-06-12 01:24:59,790.790 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 01:24:59,797.797 INFO    ] Checking for existing commands in stream...
[2026-06-12 01:24:59,864.864 INFO    ] No existing commands found in stream
[2026-06-12 01:25:04,873.873 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 01:25:04,876.876 INFO    ] Waiting 1.58 seconds before fallback handling...
[2026-06-12 01:25:06,847.847 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 01:25:06,849.849 INFO    ] Checking for system updates...
[2026-06-12 01:25:06,871.871 INFO    ] 200
[2026-06-12 01:25:06,872.872 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:25:06,906.906 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 01:25:06,907.907 INFO    ] No update needed
[2026-06-12 01:25:06,908.908 INFO    ] Checking for camera pi updates...
[2026-06-12 01:25:06,930.930 INFO    ] 200
[2026-06-12 01:25:06,931.931 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:25:06,958.958 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 01:25:07,003.003 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 01:25:07,005.005 INFO    ] No camera update needed
[2026-06-12 01:25:07,006.006 INFO    ] Script finished. Safe exiting...
[2026-06-12 01:25:07,008.008 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 01:25:07,011.011 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 01:25:07,014.014 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 01:25:09,052.052 INFO    ] ================================================
[2026-06-12 01:25:09,067.067 INFO    ] Launching Daemon at Fri Jun 12 01:25:09 IST 2026
[2026-06-12 01:25:09,078.078 INFO    ] ================================================
[2026-06-12 01:25:09,444.444 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 01:25:09
[2026-06-12 01:25:09,756.756 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 01:25:09,899.899 INFO    ] Initializing speech engine...
[2026-06-12 01:25:09,904.904 INFO    ] 2026-06-12 01:25:09
[2026-06-12 01:25:10,109.109 INFO    ] 2026-06-12 01:25:10
[2026-06-12 01:25:10,137.137 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 01:25:10,262.262 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 01:25:10,325.325 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 01:25:10,458.458 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 01:25:10,513.513 INFO    ] time= 12/06/2026 01:25:10
[2026-06-12 01:25:10,557.557 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 01:25:10,563.563 INFO    ] Checking for existing commands in stream...
[2026-06-12 01:25:10,656.656 INFO    ] No existing commands found in stream
[2026-06-12 01:25:15,675.675 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 01:25:15,677.677 INFO    ] Waiting 2.56 seconds before fallback handling...
[2026-06-12 01:25:18,618.618 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 01:25:18,620.620 INFO    ] Checking for system updates...
[2026-06-12 01:25:18,641.641 INFO    ] 200
[2026-06-12 01:25:18,642.642 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:25:18,675.675 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 01:25:18,676.676 INFO    ] No update needed
[2026-06-12 01:25:18,677.677 INFO    ] Checking for camera pi updates...
[2026-06-12 01:25:18,697.697 INFO    ] 200
[2026-06-12 01:25:18,698.698 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:25:18,724.724 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 01:25:18,764.764 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 01:25:18,766.766 INFO    ] No camera update needed
[2026-06-12 01:25:18,767.767 INFO    ] Script finished. Safe exiting...
[2026-06-12 01:25:18,768.768 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 01:25:18,771.771 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 01:25:18,774.774 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 01:25:20,812.812 INFO    ] ================================================
[2026-06-12 01:25:20,833.833 INFO    ] Launching Daemon at Fri Jun 12 01:25:20 IST 2026
[2026-06-12 01:25:20,844.844 INFO    ] ================================================
[2026-06-12 01:25:21,206.206 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 01:25:21
[2026-06-12 01:25:21,540.540 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 01:25:21,686.686 INFO    ] Initializing speech engine...
[2026-06-12 01:25:21,697.697 INFO    ] 2026-06-12 01:25:21
[2026-06-12 01:25:21,907.907 INFO    ] 2026-06-12 01:25:21
[2026-06-12 01:25:21,936.936 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 01:25:22,124.124 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 01:25:22,134.134 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 01:25:22,265.265 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 01:25:22,334.334 INFO    ] time= 12/06/2026 01:25:22
[2026-06-12 01:25:22,359.359 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 01:25:22,365.365 INFO    ] Checking for existing commands in stream...
[2026-06-12 01:25:22,433.433 INFO    ] No existing commands found in stream
[2026-06-12 01:25:27,442.442 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 01:25:27,446.446 INFO    ] Waiting 2.06 seconds before fallback handling...
[2026-06-12 01:25:29,914.914 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 01:25:29,916.916 INFO    ] Checking for system updates...
[2026-06-12 01:25:29,938.938 INFO    ] 200
[2026-06-12 01:25:29,939.939 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:25:29,971.971 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 01:25:29,973.973 INFO    ] No update needed
[2026-06-12 01:25:29,974.974 INFO    ] Checking for camera pi updates...
[2026-06-12 01:25:29,993.993 INFO    ] 200
[2026-06-12 01:25:29,994.994 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:25:30,017.017 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 01:25:30,059.059 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 01:25:30,060.060 INFO    ] No camera update needed
[2026-06-12 01:25:30,062.062 INFO    ] Script finished. Safe exiting...
[2026-06-12 01:25:30,063.063 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 01:25:30,066.066 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 01:25:30,068.068 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 01:25:32,100.100 INFO    ] ================================================
[2026-06-12 01:25:32,108.108 INFO    ] Launching Daemon at Fri Jun 12 01:25:32 IST 2026
[2026-06-12 01:25:32,114.114 INFO    ] ================================================
[2026-06-12 01:25:32,414.414 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 01:25:32
[2026-06-12 01:25:32,726.726 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 01:25:32,869.869 INFO    ] Initializing speech engine...
[2026-06-12 01:25:32,874.874 INFO    ] 2026-06-12 01:25:32
[2026-06-12 01:25:33,077.077 INFO    ] 2026-06-12 01:25:33
[2026-06-12 01:25:33,105.105 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 01:25:33,290.290 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 01:25:33,298.298 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 01:25:33,427.427 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 01:25:33,491.491 INFO    ] time= 12/06/2026 01:25:33
[2026-06-12 01:25:33,518.518 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 01:25:33,525.525 INFO    ] Checking for existing commands in stream...
[2026-06-12 01:25:33,592.592 INFO    ] No existing commands found in stream
[2026-06-12 01:25:38,606.606 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 01:25:38,609.609 INFO    ] Waiting 3.68 seconds before fallback handling...
[2026-06-12 01:25:42,653.653 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 01:25:42,655.655 INFO    ] Checking for system updates...
[2026-06-12 01:25:42,676.676 INFO    ] 200
[2026-06-12 01:25:42,678.678 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:25:42,710.710 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 01:25:42,711.711 INFO    ] No update needed
[2026-06-12 01:25:42,713.713 INFO    ] Checking for camera pi updates...
[2026-06-12 01:25:42,732.732 INFO    ] 200
[2026-06-12 01:25:42,733.733 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:25:42,762.762 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 01:25:42,801.801 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 01:25:42,803.803 INFO    ] No camera update needed
[2026-06-12 01:25:42,804.804 INFO    ] Script finished. Safe exiting...
[2026-06-12 01:25:42,805.805 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 01:25:42,808.808 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 01:25:42,811.811 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 01:25:44,850.850 INFO    ] ================================================
[2026-06-12 01:25:44,866.866 INFO    ] Launching Daemon at Fri Jun 12 01:25:44 IST 2026
[2026-06-12 01:25:44,876.876 INFO    ] ================================================
[2026-06-12 01:25:45,240.240 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 01:25:45
[2026-06-12 01:25:45,557.557 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 01:25:45,702.702 INFO    ] Initializing speech engine...
[2026-06-12 01:25:45,707.707 INFO    ] 2026-06-12 01:25:45
[2026-06-12 01:25:45,910.910 INFO    ] 2026-06-12 01:25:45
[2026-06-12 01:25:45,939.939 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 01:25:46,124.124 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 01:25:46,133.133 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 01:25:46,283.283 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 01:25:46,331.331 INFO    ] time= 12/06/2026 01:25:46
[2026-06-12 01:25:46,354.354 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 01:25:46,361.361 INFO    ] Checking for existing commands in stream...
[2026-06-12 01:25:46,452.452 INFO    ] No existing commands found in stream
[2026-06-12 01:25:51,461.461 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 01:25:51,464.464 INFO    ] Waiting 3.81 seconds before fallback handling...
[2026-06-12 01:25:55,646.646 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 01:25:55,648.648 INFO    ] Checking for system updates...
[2026-06-12 01:25:55,669.669 INFO    ] 200
[2026-06-12 01:25:55,670.670 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:25:55,703.703 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 01:25:55,705.705 INFO    ] No update needed
[2026-06-12 01:25:55,706.706 INFO    ] Checking for camera pi updates...
[2026-06-12 01:25:55,729.729 INFO    ] 200
[2026-06-12 01:25:55,731.731 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:25:55,756.756 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 01:25:55,797.797 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 01:25:55,798.798 INFO    ] No camera update needed
[2026-06-12 01:25:55,800.800 INFO    ] Script finished. Safe exiting...
[2026-06-12 01:25:55,801.801 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 01:25:55,805.805 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 01:25:55,808.808 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 01:25:57,847.847 INFO    ] ================================================
[2026-06-12 01:25:57,862.862 INFO    ] Launching Daemon at Fri Jun 12 01:25:57 IST 2026
[2026-06-12 01:25:57,873.873 INFO    ] ================================================
[2026-06-12 01:25:58,204.204 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 01:25:58
[2026-06-12 01:25:58,516.516 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 01:25:58,646.646 INFO    ] Initializing speech engine...
[2026-06-12 01:25:58,659.659 INFO    ] 2026-06-12 01:25:58
[2026-06-12 01:25:58,865.865 INFO    ] 2026-06-12 01:25:58
[2026-06-12 01:25:58,893.893 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 01:25:59,075.075 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 01:25:59,079.079 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 01:25:59,207.207 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 01:25:59,263.263 INFO    ] time= 12/06/2026 01:25:59
[2026-06-12 01:25:59,304.304 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 01:25:59,311.311 INFO    ] Checking for existing commands in stream...
[2026-06-12 01:25:59,377.377 INFO    ] No existing commands found in stream
[2026-06-12 01:26:04,386.386 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 01:26:04,389.389 INFO    ] Waiting 1.77 seconds before fallback handling...
[2026-06-12 01:26:06,506.506 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 01:26:06,508.508 INFO    ] Checking for system updates...
[2026-06-12 01:26:06,530.530 INFO    ] 200
[2026-06-12 01:26:06,532.532 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:26:06,564.564 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 01:26:06,566.566 INFO    ] No update needed
[2026-06-12 01:26:06,567.567 INFO    ] Checking for camera pi updates...
[2026-06-12 01:26:06,586.586 INFO    ] 200
[2026-06-12 01:26:06,588.588 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:26:06,613.613 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 01:26:06,663.663 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 01:26:06,665.665 INFO    ] No camera update needed
[2026-06-12 01:26:06,666.666 INFO    ] Script finished. Safe exiting...
[2026-06-12 01:26:06,668.668 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 01:26:06,671.671 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 01:26:06,674.674 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 01:26:08,716.716 INFO    ] ================================================
[2026-06-12 01:26:08,732.732 INFO    ] Launching Daemon at Fri Jun 12 01:26:08 IST 2026
[2026-06-12 01:26:08,743.743 INFO    ] ================================================
[2026-06-12 01:26:09,106.106 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 01:26:09
[2026-06-12 01:26:09,417.417 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 01:26:09,560.560 INFO    ] Initializing speech engine...
[2026-06-12 01:26:09,565.565 INFO    ] 2026-06-12 01:26:09
[2026-06-12 01:26:09,767.767 INFO    ] 2026-06-12 01:26:09
[2026-06-12 01:26:09,797.797 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 01:26:09,979.979 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 01:26:09,988.988 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 01:26:10,114.114 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 01:26:10,171.171 INFO    ] time= 12/06/2026 01:26:10
[2026-06-12 01:26:10,189.189 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 01:26:10,210.210 INFO    ] Checking for existing commands in stream...
[2026-06-12 01:26:10,281.281 INFO    ] No existing commands found in stream
[2026-06-12 01:26:15,310.310 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 01:26:15,313.313 INFO    ] Waiting 1.19 seconds before fallback handling...
[2026-06-12 01:26:16,867.867 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 01:26:16,868.868 INFO    ] Checking for system updates...
[2026-06-12 01:26:16,890.890 INFO    ] 200
[2026-06-12 01:26:16,892.892 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:26:16,922.922 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 01:26:16,923.923 INFO    ] No update needed
[2026-06-12 01:26:16,924.924 INFO    ] Checking for camera pi updates...
[2026-06-12 01:26:16,945.945 INFO    ] 200
[2026-06-12 01:26:16,946.946 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:26:16,970.970 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 01:26:17,010.010 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 01:26:17,012.012 INFO    ] No camera update needed
[2026-06-12 01:26:17,013.013 INFO    ] Script finished. Safe exiting...
[2026-06-12 01:26:17,014.014 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 01:26:17,017.017 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 01:26:17,020.020 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 01:26:19,060.060 INFO    ] ================================================
[2026-06-12 01:26:19,076.076 INFO    ] Launching Daemon at Fri Jun 12 01:26:19 IST 2026
[2026-06-12 01:26:19,087.087 INFO    ] ================================================
[2026-06-12 01:26:19,441.441 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 01:26:19
[2026-06-12 01:26:19,761.761 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 01:26:19,895.895 INFO    ] Initializing speech engine...
[2026-06-12 01:26:19,900.900 INFO    ] 2026-06-12 01:26:19
[2026-06-12 01:26:20,131.131 INFO    ] 2026-06-12 01:26:20
[2026-06-12 01:26:20,162.162 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 01:26:20,294.294 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 01:26:20,357.357 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 01:26:20,501.501 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 01:26:20,543.543 INFO    ] time= 12/06/2026 01:26:20
[2026-06-12 01:26:20,592.592 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 01:26:20,609.609 INFO    ] Checking for existing commands in stream...
[2026-06-12 01:26:20,711.711 INFO    ] No existing commands found in stream
[2026-06-12 01:26:25,720.720 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 01:26:25,723.723 INFO    ] Waiting 2.76 seconds before fallback handling...
[2026-06-12 01:26:28,859.859 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 01:26:28,861.861 INFO    ] Checking for system updates...
[2026-06-12 01:26:28,883.883 INFO    ] 200
[2026-06-12 01:26:28,885.885 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:26:28,920.920 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 01:26:28,922.922 INFO    ] No update needed
[2026-06-12 01:26:28,924.924 INFO    ] Checking for camera pi updates...
[2026-06-12 01:26:28,944.944 INFO    ] 200
[2026-06-12 01:26:28,945.945 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:26:28,969.969 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 01:26:29,016.016 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 01:26:29,018.018 INFO    ] No camera update needed
[2026-06-12 01:26:29,019.019 INFO    ] Script finished. Safe exiting...
[2026-06-12 01:26:29,021.021 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 01:26:29,024.024 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 01:26:29,027.027 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 01:26:31,065.065 INFO    ] ================================================
[2026-06-12 01:26:31,086.086 INFO    ] Launching Daemon at Fri Jun 12 01:26:31 IST 2026
[2026-06-12 01:26:31,097.097 INFO    ] ================================================
[2026-06-12 01:26:31,431.431 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 01:26:31
[2026-06-12 01:26:31,761.761 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 01:26:31,918.918 INFO    ] Initializing speech engine...
[2026-06-12 01:26:31,924.924 INFO    ] 2026-06-12 01:26:31
[2026-06-12 01:26:32,149.149 INFO    ] 2026-06-12 01:26:32
[2026-06-12 01:26:32,180.180 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 01:26:32,337.337 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 01:26:32,385.385 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 01:26:32,525.525 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 01:26:32,587.587 INFO    ] time= 12/06/2026 01:26:32
[2026-06-12 01:26:32,620.620 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 01:26:32,627.627 INFO    ] Checking for existing commands in stream...
[2026-06-12 01:26:32,695.695 INFO    ] No existing commands found in stream
[2026-06-12 01:26:37,701.701 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 01:26:37,703.703 INFO    ] Waiting 3.59 seconds before fallback handling...
[2026-06-12 01:26:41,660.660 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 01:26:41,662.662 INFO    ] Checking for system updates...
[2026-06-12 01:26:41,682.682 INFO    ] 200
[2026-06-12 01:26:41,684.684 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:26:41,718.718 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 01:26:41,720.720 INFO    ] No update needed
[2026-06-12 01:26:41,721.721 INFO    ] Checking for camera pi updates...
[2026-06-12 01:26:41,742.742 INFO    ] 200
[2026-06-12 01:26:41,743.743 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:26:41,766.766 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 01:26:41,805.805 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 01:26:41,807.807 INFO    ] No camera update needed
[2026-06-12 01:26:41,808.808 INFO    ] Script finished. Safe exiting...
[2026-06-12 01:26:41,809.809 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 01:26:41,812.812 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 01:26:41,815.815 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 01:26:43,858.858 INFO    ] ================================================
[2026-06-12 01:26:43,875.875 INFO    ] Launching Daemon at Fri Jun 12 01:26:43 IST 2026
[2026-06-12 01:26:43,892.892 INFO    ] ================================================
[2026-06-12 01:26:44,257.257 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 01:26:44
[2026-06-12 01:26:44,590.590 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 01:26:44,730.730 INFO    ] Initializing speech engine...
[2026-06-12 01:26:44,742.742 INFO    ] 2026-06-12 01:26:44
[2026-06-12 01:26:44,953.953 INFO    ] 2026-06-12 01:26:44
[2026-06-12 01:26:44,983.983 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 01:26:45,171.171 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 01:26:45,175.175 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 01:26:45,311.311 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 01:26:45,378.378 INFO    ] time= 12/06/2026 01:26:45
[2026-06-12 01:26:45,406.406 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 01:26:45,413.413 INFO    ] Checking for existing commands in stream...
[2026-06-12 01:26:45,480.480 INFO    ] No existing commands found in stream
[2026-06-12 01:26:50,494.494 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 01:26:50,497.497 INFO    ] Waiting 2.06 seconds before fallback handling...
[2026-06-12 01:26:52,968.968 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 01:26:52,970.970 INFO    ] Checking for system updates...
[2026-06-12 01:26:52,991.991 INFO    ] 200
[2026-06-12 01:26:52,993.993 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:26:53,023.023 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 01:26:53,024.024 INFO    ] No update needed
[2026-06-12 01:26:53,026.026 INFO    ] Checking for camera pi updates...
[2026-06-12 01:26:53,047.047 INFO    ] 200
[2026-06-12 01:26:53,049.049 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:26:53,072.072 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 01:26:53,113.113 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 01:26:53,115.115 INFO    ] No camera update needed
[2026-06-12 01:26:53,116.116 INFO    ] Script finished. Safe exiting...
[2026-06-12 01:26:53,117.117 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 01:26:53,120.120 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 01:26:53,123.123 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 01:26:55,161.161 INFO    ] ================================================
[2026-06-12 01:26:55,176.176 INFO    ] Launching Daemon at Fri Jun 12 01:26:55 IST 2026
[2026-06-12 01:26:55,187.187 INFO    ] ================================================
[2026-06-12 01:26:55,564.564 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 01:26:55
[2026-06-12 01:26:55,902.902 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 01:26:56,051.051 INFO    ] Initializing speech engine...
[2026-06-12 01:26:56,057.057 INFO    ] 2026-06-12 01:26:56
[2026-06-12 01:26:56,265.265 INFO    ] 2026-06-12 01:26:56
[2026-06-12 01:26:56,292.292 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 01:26:56,476.476 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 01:26:56,479.479 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 01:26:56,613.613 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 01:26:56,894.894 INFO    ] time= 12/06/2026 01:26:56
[2026-06-12 01:26:56,897.897 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 01:26:56,902.902 INFO    ] Checking for existing commands in stream...
[2026-06-12 01:26:56,990.990 INFO    ] No existing commands found in stream
[2026-06-12 01:27:01,999.999 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 01:27:02,001.001 INFO    ] Waiting 1.55 seconds before fallback handling...
[2026-06-12 01:27:03,918.918 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 01:27:03,920.920 INFO    ] Checking for system updates...
[2026-06-12 01:27:03,940.940 INFO    ] 200
[2026-06-12 01:27:03,942.942 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:27:03,972.972 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 01:27:03,973.973 INFO    ] No update needed
[2026-06-12 01:27:03,974.974 INFO    ] Checking for camera pi updates...
[2026-06-12 01:27:03,994.994 INFO    ] 200
[2026-06-12 01:27:03,995.995 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:27:04,019.019 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 01:27:04,156.156 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 01:27:04,157.157 INFO    ] No camera update needed
[2026-06-12 01:27:04,159.159 INFO    ] Script finished. Safe exiting...
[2026-06-12 01:27:04,160.160 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 01:27:04,163.163 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 01:27:04,165.165 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 01:27:06,205.205 INFO    ] ================================================
[2026-06-12 01:27:06,220.220 INFO    ] Launching Daemon at Fri Jun 12 01:27:06 IST 2026
[2026-06-12 01:27:06,231.231 INFO    ] ================================================
[2026-06-12 01:27:06,604.604 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 01:27:06
[2026-06-12 01:27:06,935.935 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 01:27:07,077.077 INFO    ] Initializing speech engine...
[2026-06-12 01:27:07,083.083 INFO    ] 2026-06-12 01:27:07
[2026-06-12 01:27:07,285.285 INFO    ] 2026-06-12 01:27:07
[2026-06-12 01:27:07,313.313 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 01:27:07,496.496 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 01:27:07,500.500 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 01:27:07,650.650 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 01:27:07,703.703 INFO    ] time= 12/06/2026 01:27:07
[2026-06-12 01:27:07,725.725 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 01:27:07,731.731 INFO    ] Checking for existing commands in stream...
[2026-06-12 01:27:07,798.798 INFO    ] No existing commands found in stream
[2026-06-12 01:27:12,822.822 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 01:27:12,825.825 INFO    ] Waiting 3.80 seconds before fallback handling...
[2026-06-12 01:27:17,004.004 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 01:27:17,006.006 INFO    ] Checking for system updates...
[2026-06-12 01:27:17,026.026 INFO    ] 200
[2026-06-12 01:27:17,028.028 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:27:17,059.059 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 01:27:17,061.061 INFO    ] No update needed
[2026-06-12 01:27:17,062.062 INFO    ] Checking for camera pi updates...
[2026-06-12 01:27:17,081.081 INFO    ] 200
[2026-06-12 01:27:17,083.083 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:27:17,106.106 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 01:27:17,155.155 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 01:27:17,156.156 INFO    ] No camera update needed
[2026-06-12 01:27:17,157.157 INFO    ] Script finished. Safe exiting...
[2026-06-12 01:27:17,159.159 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 01:27:17,162.162 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 01:27:17,164.164 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 01:27:19,202.202 INFO    ] ================================================
[2026-06-12 01:27:19,217.217 INFO    ] Launching Daemon at Fri Jun 12 01:27:19 IST 2026
[2026-06-12 01:27:19,228.228 INFO    ] ================================================
[2026-06-12 01:27:19,561.561 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 01:27:19
[2026-06-12 01:27:19,874.874 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 01:27:20,003.003 INFO    ] Initializing speech engine...
[2026-06-12 01:27:20,007.007 INFO    ] 2026-06-12 01:27:20
[2026-06-12 01:27:20,224.224 INFO    ] 2026-06-12 01:27:20
[2026-06-12 01:27:20,253.253 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 01:27:20,435.435 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 01:27:20,438.438 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 01:27:20,570.570 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 01:27:20,632.632 INFO    ] time= 12/06/2026 01:27:20
[2026-06-12 01:27:20,665.665 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 01:27:20,667.667 INFO    ] Checking for existing commands in stream...
[2026-06-12 01:27:20,738.738 INFO    ] No existing commands found in stream
[2026-06-12 01:27:25,752.752 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 01:27:25,755.755 INFO    ] Waiting 1.36 seconds before fallback handling...
[2026-06-12 01:27:27,496.496 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 01:27:27,498.498 INFO    ] Checking for system updates...
[2026-06-12 01:27:27,519.519 INFO    ] 200
[2026-06-12 01:27:27,520.520 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:27:27,550.550 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 01:27:27,552.552 INFO    ] No update needed
[2026-06-12 01:27:27,553.553 INFO    ] Checking for camera pi updates...
[2026-06-12 01:27:27,572.572 INFO    ] 200
[2026-06-12 01:27:27,574.574 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:27:27,598.598 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 01:27:27,647.647 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 01:27:27,648.648 INFO    ] No camera update needed
[2026-06-12 01:27:27,650.650 INFO    ] Script finished. Safe exiting...
[2026-06-12 01:27:27,651.651 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 01:27:27,654.654 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 01:27:27,657.657 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 01:27:29,695.695 INFO    ] ================================================
[2026-06-12 01:27:29,710.710 INFO    ] Launching Daemon at Fri Jun 12 01:27:29 IST 2026
[2026-06-12 01:27:29,720.720 INFO    ] ================================================
[2026-06-12 01:27:30,046.046 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 01:27:30
[2026-06-12 01:27:30,357.357 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 01:27:30,486.486 INFO    ] Initializing speech engine...
[2026-06-12 01:27:30,495.495 INFO    ] 2026-06-12 01:27:30
[2026-06-12 01:27:30,709.709 INFO    ] 2026-06-12 01:27:30
[2026-06-12 01:27:30,738.738 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 01:27:30,925.925 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 01:27:30,934.934 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 01:27:31,063.063 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 01:27:31,131.131 INFO    ] time= 12/06/2026 01:27:31
[2026-06-12 01:27:31,155.155 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 01:27:31,162.162 INFO    ] Checking for existing commands in stream...
[2026-06-12 01:27:31,229.229 INFO    ] No existing commands found in stream
[2026-06-12 01:27:36,238.238 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 01:27:36,246.246 INFO    ] Waiting 0.83 seconds before fallback handling...
[2026-06-12 01:27:37,455.455 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 01:27:37,456.456 INFO    ] Checking for system updates...
[2026-06-12 01:27:37,477.477 INFO    ] 200
[2026-06-12 01:27:37,478.478 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:27:37,508.508 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 01:27:37,509.509 INFO    ] No update needed
[2026-06-12 01:27:37,511.511 INFO    ] Checking for camera pi updates...
[2026-06-12 01:27:37,530.530 INFO    ] 200
[2026-06-12 01:27:37,531.531 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:27:37,557.557 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 01:27:37,598.598 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 01:27:37,599.599 INFO    ] No camera update needed
[2026-06-12 01:27:37,601.601 INFO    ] Script finished. Safe exiting...
[2026-06-12 01:27:37,602.602 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 01:27:37,605.605 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 01:27:37,607.607 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 01:27:39,645.645 INFO    ] ================================================
[2026-06-12 01:27:39,661.661 INFO    ] Launching Daemon at Fri Jun 12 01:27:39 IST 2026
[2026-06-12 01:27:39,671.671 INFO    ] ================================================
[2026-06-12 01:27:40,025.025 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 01:27:40
[2026-06-12 01:27:40,359.359 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 01:27:40,499.499 INFO    ] Initializing speech engine...
[2026-06-12 01:27:40,511.511 INFO    ] 2026-06-12 01:27:40
[2026-06-12 01:27:40,724.724 INFO    ] 2026-06-12 01:27:40
[2026-06-12 01:27:40,753.753 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 01:27:40,938.938 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 01:27:40,947.947 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 01:27:41,100.100 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 01:27:41,150.150 INFO    ] time= 12/06/2026 01:27:41
[2026-06-12 01:27:41,171.171 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 01:27:41,177.177 INFO    ] Checking for existing commands in stream...
[2026-06-12 01:27:41,245.245 INFO    ] No existing commands found in stream
[2026-06-12 01:27:46,250.250 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 01:27:46,254.254 INFO    ] Waiting 1.97 seconds before fallback handling...
[2026-06-12 01:27:48,619.619 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 01:27:48,621.621 INFO    ] Checking for system updates...
[2026-06-12 01:27:48,643.643 INFO    ] 200
[2026-06-12 01:27:48,644.644 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:27:48,679.679 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 01:27:48,681.681 INFO    ] No update needed
[2026-06-12 01:27:48,682.682 INFO    ] Checking for camera pi updates...
[2026-06-12 01:27:48,703.703 INFO    ] 200
[2026-06-12 01:27:48,704.704 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:27:48,731.731 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 01:27:48,770.770 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 01:27:48,771.771 INFO    ] No camera update needed
[2026-06-12 01:27:48,773.773 INFO    ] Script finished. Safe exiting...
[2026-06-12 01:27:48,774.774 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 01:27:48,777.777 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 01:27:48,780.780 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 01:27:50,819.819 INFO    ] ================================================
[2026-06-12 01:27:50,835.835 INFO    ] Launching Daemon at Fri Jun 12 01:27:50 IST 2026
[2026-06-12 01:27:50,845.845 INFO    ] ================================================
[2026-06-12 01:27:51,200.200 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 01:27:51
[2026-06-12 01:27:51,516.516 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 01:27:51,650.650 INFO    ] Initializing speech engine...
[2026-06-12 01:27:51,653.653 INFO    ] 2026-06-12 01:27:51
[2026-06-12 01:27:51,881.881 INFO    ] 2026-06-12 01:27:51
[2026-06-12 01:27:51,911.911 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 01:27:52,108.108 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 01:27:52,112.112 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 01:27:52,256.256 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 01:27:52,325.325 INFO    ] time= 12/06/2026 01:27:52
[2026-06-12 01:27:52,353.353 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 01:27:52,360.360 INFO    ] Checking for existing commands in stream...
[2026-06-12 01:27:52,457.457 INFO    ] No existing commands found in stream
[2026-06-12 01:27:57,466.466 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 01:27:57,469.469 INFO    ] Waiting 2.20 seconds before fallback handling...
[2026-06-12 01:28:00,062.062 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 01:28:00,064.064 INFO    ] Checking for system updates...
[2026-06-12 01:28:00,085.085 INFO    ] 200
[2026-06-12 01:28:00,086.086 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:28:00,121.121 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 01:28:00,122.122 INFO    ] No update needed
[2026-06-12 01:28:00,123.123 INFO    ] Checking for camera pi updates...
[2026-06-12 01:28:00,142.142 INFO    ] 200
[2026-06-12 01:28:00,144.144 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:28:00,167.167 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 01:28:00,212.212 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 01:28:00,214.214 INFO    ] No camera update needed
[2026-06-12 01:28:00,215.215 INFO    ] Script finished. Safe exiting...
[2026-06-12 01:28:00,216.216 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 01:28:00,219.219 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 01:28:00,222.222 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 01:28:02,247.247 INFO    ] ================================================
[2026-06-12 01:28:02,255.255 INFO    ] Launching Daemon at Fri Jun 12 01:28:02 IST 2026
[2026-06-12 01:28:02,261.261 INFO    ] ================================================
[2026-06-12 01:28:02,591.591 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 01:28:02
[2026-06-12 01:28:02,925.925 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 01:28:03,056.056 INFO    ] Initializing speech engine...
[2026-06-12 01:28:03,060.060 INFO    ] 2026-06-12 01:28:03
[2026-06-12 01:28:03,278.278 INFO    ] 2026-06-12 01:28:03
[2026-06-12 01:28:03,308.308 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 01:28:03,448.448 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 01:28:03,499.499 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 01:28:03,632.632 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 01:28:03,693.693 INFO    ] time= 12/06/2026 01:28:03
[2026-06-12 01:28:03,731.731 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 01:28:03,736.736 INFO    ] Checking for existing commands in stream...
[2026-06-12 01:28:03,809.809 INFO    ] No existing commands found in stream
[2026-06-12 01:28:08,818.818 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 01:28:08,827.827 INFO    ] Waiting 3.83 seconds before fallback handling...
[2026-06-12 01:28:12,991.991 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 01:28:12,993.993 INFO    ] Checking for system updates...
[2026-06-12 01:28:13,014.014 INFO    ] 200
[2026-06-12 01:28:13,016.016 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:28:13,046.046 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 01:28:13,047.047 INFO    ] No update needed
[2026-06-12 01:28:13,048.048 INFO    ] Checking for camera pi updates...
[2026-06-12 01:28:13,067.067 INFO    ] 200
[2026-06-12 01:28:13,069.069 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:28:13,093.093 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 01:28:13,131.131 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 01:28:13,133.133 INFO    ] No camera update needed
[2026-06-12 01:28:13,134.134 INFO    ] Script finished. Safe exiting...
[2026-06-12 01:28:13,135.135 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 01:28:13,138.138 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 01:28:13,141.141 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 01:28:15,183.183 INFO    ] ================================================
[2026-06-12 01:28:15,198.198 INFO    ] Launching Daemon at Fri Jun 12 01:28:15 IST 2026
[2026-06-12 01:28:15,209.209 INFO    ] ================================================
[2026-06-12 01:28:15,557.557 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 01:28:15
[2026-06-12 01:28:15,868.868 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 01:28:16,006.006 INFO    ] Initializing speech engine...
[2026-06-12 01:28:16,016.016 INFO    ] 2026-06-12 01:28:16
[2026-06-12 01:28:16,222.222 INFO    ] 2026-06-12 01:28:16
[2026-06-12 01:28:16,250.250 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 01:28:16,436.436 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 01:28:16,445.445 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 01:28:16,570.570 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 01:28:16,631.631 INFO    ] time= 12/06/2026 01:28:16
[2026-06-12 01:28:16,667.667 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 01:28:16,672.672 INFO    ] Checking for existing commands in stream...
[2026-06-12 01:28:16,744.744 INFO    ] No existing commands found in stream
[2026-06-12 01:28:21,753.753 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 01:28:21,756.756 INFO    ] Waiting 2.57 seconds before fallback handling...
[2026-06-12 01:28:24,693.693 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 01:28:24,699.699 INFO    ] Checking for system updates...
[2026-06-12 01:28:24,720.720 INFO    ] 200
[2026-06-12 01:28:24,722.722 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:28:24,755.755 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 01:28:24,756.756 INFO    ] No update needed
[2026-06-12 01:28:24,758.758 INFO    ] Checking for camera pi updates...
[2026-06-12 01:28:24,777.777 INFO    ] 200
[2026-06-12 01:28:24,779.779 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:28:24,804.804 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 01:28:24,842.842 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 01:28:24,843.843 INFO    ] No camera update needed
[2026-06-12 01:28:24,845.845 INFO    ] Script finished. Safe exiting...
[2026-06-12 01:28:24,846.846 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 01:28:24,849.849 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 01:28:24,852.852 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 01:28:26,891.891 INFO    ] ================================================
[2026-06-12 01:28:26,906.906 INFO    ] Launching Daemon at Fri Jun 12 01:28:26 IST 2026
[2026-06-12 01:28:26,917.917 INFO    ] ================================================
[2026-06-12 01:28:27,262.262 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 01:28:27
[2026-06-12 01:28:27,578.578 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 01:28:27,729.729 INFO    ] Initializing speech engine...
[2026-06-12 01:28:27,735.735 INFO    ] 2026-06-12 01:28:27
[2026-06-12 01:28:27,944.944 INFO    ] 2026-06-12 01:28:27
[2026-06-12 01:28:27,973.973 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 01:28:28,161.161 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 01:28:28,170.170 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 01:28:28,323.323 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 01:28:28,374.374 INFO    ] time= 12/06/2026 01:28:28
[2026-06-12 01:28:28,395.395 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 01:28:28,402.402 INFO    ] Checking for existing commands in stream...
[2026-06-12 01:28:28,468.468 INFO    ] No existing commands found in stream
[2026-06-12 01:28:33,478.478 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 01:28:33,482.482 INFO    ] Waiting 3.42 seconds before fallback handling...
[2026-06-12 01:28:37,270.270 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 01:28:37,271.271 INFO    ] Checking for system updates...
[2026-06-12 01:28:37,294.294 INFO    ] 200
[2026-06-12 01:28:37,295.295 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:28:37,328.328 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 01:28:37,330.330 INFO    ] No update needed
[2026-06-12 01:28:37,331.331 INFO    ] Checking for camera pi updates...
[2026-06-12 01:28:37,351.351 INFO    ] 200
[2026-06-12 01:28:37,353.353 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:28:37,378.378 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 01:28:37,404.404 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 01:28:37,405.405 INFO    ] No camera update needed
[2026-06-12 01:28:37,407.407 INFO    ] Script finished. Safe exiting...
[2026-06-12 01:28:37,408.408 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 01:28:37,411.411 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 01:28:37,414.414 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 01:28:39,452.452 INFO    ] ================================================
[2026-06-12 01:28:39,467.467 INFO    ] Launching Daemon at Fri Jun 12 01:28:39 IST 2026
[2026-06-12 01:28:39,478.478 INFO    ] ================================================
[2026-06-12 01:28:39,833.833 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 01:28:39
[2026-06-12 01:28:40,145.145 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 01:28:40,288.288 INFO    ] Initializing speech engine...
[2026-06-12 01:28:40,294.294 INFO    ] 2026-06-12 01:28:40
[2026-06-12 01:28:40,499.499 INFO    ] 2026-06-12 01:28:40
[2026-06-12 01:28:40,527.527 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 01:28:40,715.715 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 01:28:40,725.725 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 01:28:40,856.856 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 01:28:40,920.920 INFO    ] time= 12/06/2026 01:28:40
[2026-06-12 01:28:40,947.947 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 01:28:40,954.954 INFO    ] Checking for existing commands in stream...
[2026-06-12 01:28:41,021.021 INFO    ] No existing commands found in stream
[2026-06-12 01:28:46,031.031 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 01:28:46,034.034 INFO    ] Waiting 3.20 seconds before fallback handling...
[2026-06-12 01:28:49,608.608 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 01:28:49,610.610 INFO    ] Checking for system updates...
[2026-06-12 01:28:49,631.631 INFO    ] 200
[2026-06-12 01:28:49,632.632 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:28:49,666.666 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 01:28:49,668.668 INFO    ] No update needed
[2026-06-12 01:28:49,669.669 INFO    ] Checking for camera pi updates...
[2026-06-12 01:28:49,688.688 INFO    ] 200
[2026-06-12 01:28:49,690.690 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:28:49,713.713 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 01:28:49,763.763 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 01:28:49,765.765 INFO    ] No camera update needed
[2026-06-12 01:28:49,766.766 INFO    ] Script finished. Safe exiting...
[2026-06-12 01:28:49,767.767 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 01:28:49,770.770 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 01:28:49,773.773 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 01:28:51,815.815 INFO    ] ================================================
[2026-06-12 01:28:51,831.831 INFO    ] Launching Daemon at Fri Jun 12 01:28:51 IST 2026
[2026-06-12 01:28:51,841.841 INFO    ] ================================================
[2026-06-12 01:28:52,178.178 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 01:28:52
[2026-06-12 01:28:52,512.512 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 01:28:52,662.662 INFO    ] Initializing speech engine...
[2026-06-12 01:28:52,667.667 INFO    ] 2026-06-12 01:28:52
[2026-06-12 01:28:52,876.876 INFO    ] 2026-06-12 01:28:52
[2026-06-12 01:28:52,907.907 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 01:28:53,094.094 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 01:28:53,104.104 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 01:28:53,249.249 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 01:28:53,302.302 INFO    ] time= 12/06/2026 01:28:53
[2026-06-12 01:28:53,327.327 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 01:28:53,332.332 INFO    ] Checking for existing commands in stream...
[2026-06-12 01:28:53,401.401 INFO    ] No existing commands found in stream
[2026-06-12 01:28:58,415.415 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 01:28:58,418.418 INFO    ] Waiting 2.59 seconds before fallback handling...
[2026-06-12 01:29:01,412.412 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 01:29:01,415.415 INFO    ] Checking for system updates...
[2026-06-12 01:29:01,457.457 INFO    ] 200
[2026-06-12 01:29:01,459.459 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:29:01,501.501 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 01:29:01,503.503 INFO    ] No update needed
[2026-06-12 01:29:01,505.505 INFO    ] Checking for camera pi updates...
[2026-06-12 01:29:01,528.528 INFO    ] 200
[2026-06-12 01:29:01,530.530 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:29:01,557.557 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 01:29:01,601.601 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 01:29:01,603.603 INFO    ] No camera update needed
[2026-06-12 01:29:01,605.605 INFO    ] Script finished. Safe exiting...
[2026-06-12 01:29:01,607.607 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 01:29:01,611.611 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 01:29:01,615.615 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 01:29:03,654.654 INFO    ] ================================================
[2026-06-12 01:29:03,669.669 INFO    ] Launching Daemon at Fri Jun 12 01:29:03 IST 2026
[2026-06-12 01:29:03,680.680 INFO    ] ================================================
[2026-06-12 01:29:04,031.031 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 01:29:04
[2026-06-12 01:29:04,341.341 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 01:29:04,474.474 INFO    ] Initializing speech engine...
[2026-06-12 01:29:04,482.482 INFO    ] 2026-06-12 01:29:04
[2026-06-12 01:29:04,704.704 INFO    ] 2026-06-12 01:29:04
[2026-06-12 01:29:04,734.734 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 01:29:04,865.865 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 01:29:04,929.929 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 01:29:05,072.072 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 01:29:05,139.139 INFO    ] time= 12/06/2026 01:29:05
[2026-06-12 01:29:05,176.176 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 01:29:05,178.178 INFO    ] Checking for existing commands in stream...
[2026-06-12 01:29:05,254.254 INFO    ] No existing commands found in stream
[2026-06-12 01:29:10,288.288 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 01:29:10,291.291 INFO    ] Waiting 2.18 seconds before fallback handling...
[2026-06-12 01:29:12,808.808 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 01:29:12,809.809 INFO    ] Checking for system updates...
[2026-06-12 01:29:12,830.830 INFO    ] 200
[2026-06-12 01:29:12,831.831 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:29:12,862.862 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 01:29:12,864.864 INFO    ] No update needed
[2026-06-12 01:29:12,865.865 INFO    ] Checking for camera pi updates...
[2026-06-12 01:29:12,887.887 INFO    ] 200
[2026-06-12 01:29:12,889.889 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:29:12,913.913 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 01:29:13,055.055 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 01:29:13,056.056 INFO    ] No camera update needed
[2026-06-12 01:29:13,058.058 INFO    ] Script finished. Safe exiting...
[2026-06-12 01:29:13,059.059 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 01:29:13,062.062 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 01:29:13,065.065 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 01:29:15,104.104 INFO    ] ================================================
[2026-06-12 01:29:15,119.119 INFO    ] Launching Daemon at Fri Jun 12 01:29:15 IST 2026
[2026-06-12 01:29:15,129.129 INFO    ] ================================================
[2026-06-12 01:29:15,459.459 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 01:29:15
[2026-06-12 01:29:15,774.774 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 01:29:15,918.918 INFO    ] Initializing speech engine...
[2026-06-12 01:29:15,923.923 INFO    ] 2026-06-12 01:29:15
[2026-06-12 01:29:16,126.126 INFO    ] 2026-06-12 01:29:16
[2026-06-12 01:29:16,156.156 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 01:29:16,338.338 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 01:29:16,348.348 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 01:29:16,498.498 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 01:29:16,546.546 INFO    ] time= 12/06/2026 01:29:16
[2026-06-12 01:29:16,568.568 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 01:29:16,575.575 INFO    ] Checking for existing commands in stream...
[2026-06-12 01:29:16,641.641 INFO    ] No existing commands found in stream
[2026-06-12 01:29:21,650.650 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 01:29:21,653.653 INFO    ] Waiting 2.41 seconds before fallback handling...
[2026-06-12 01:29:24,469.469 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 01:29:24,471.471 INFO    ] Checking for system updates...
[2026-06-12 01:29:24,493.493 INFO    ] 200
[2026-06-12 01:29:24,494.494 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:29:24,525.525 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 01:29:24,527.527 INFO    ] No update needed
[2026-06-12 01:29:24,529.529 INFO    ] Checking for camera pi updates...
[2026-06-12 01:29:24,549.549 INFO    ] 200
[2026-06-12 01:29:24,550.550 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:29:24,576.576 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 01:29:24,622.622 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 01:29:24,623.623 INFO    ] No camera update needed
[2026-06-12 01:29:24,625.625 INFO    ] Script finished. Safe exiting...
[2026-06-12 01:29:24,626.626 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 01:29:24,629.629 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 01:29:24,632.632 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 01:29:26,674.674 INFO    ] ================================================
[2026-06-12 01:29:26,690.690 INFO    ] Launching Daemon at Fri Jun 12 01:29:26 IST 2026
[2026-06-12 01:29:26,701.701 INFO    ] ================================================
[2026-06-12 01:29:27,070.070 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 01:29:27
[2026-06-12 01:29:27,409.409 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 01:29:27,540.540 INFO    ] Initializing speech engine...
[2026-06-12 01:29:27,543.543 INFO    ] 2026-06-12 01:29:27
[2026-06-12 01:29:27,762.762 INFO    ] 2026-06-12 01:29:27
[2026-06-12 01:29:27,791.791 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 01:29:27,979.979 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 01:29:27,989.989 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 01:29:28,135.135 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 01:29:28,189.189 INFO    ] time= 12/06/2026 01:29:28
[2026-06-12 01:29:28,212.212 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 01:29:28,218.218 INFO    ] Checking for existing commands in stream...
[2026-06-12 01:29:28,284.284 INFO    ] No existing commands found in stream
[2026-06-12 01:29:33,295.295 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 01:29:33,297.297 INFO    ] Waiting 0.52 seconds before fallback handling...
[2026-06-12 01:29:34,188.188 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 01:29:34,190.190 INFO    ] Checking for system updates...
[2026-06-12 01:29:34,212.212 INFO    ] 200
[2026-06-12 01:29:34,213.213 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:29:34,245.245 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 01:29:34,247.247 INFO    ] No update needed
[2026-06-12 01:29:34,248.248 INFO    ] Checking for camera pi updates...
[2026-06-12 01:29:34,268.268 INFO    ] 200
[2026-06-12 01:29:34,270.270 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:29:34,293.293 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 01:29:34,337.337 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 01:29:34,339.339 INFO    ] No camera update needed
[2026-06-12 01:29:34,340.340 INFO    ] Script finished. Safe exiting...
[2026-06-12 01:29:34,341.341 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 01:29:34,344.344 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 01:29:34,347.347 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 01:29:36,385.385 INFO    ] ================================================
[2026-06-12 01:29:36,400.400 INFO    ] Launching Daemon at Fri Jun 12 01:29:36 IST 2026
[2026-06-12 01:29:36,411.411 INFO    ] ================================================
[2026-06-12 01:29:36,758.758 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 01:29:36
[2026-06-12 01:29:37,075.075 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 01:29:37,212.212 INFO    ] Initializing speech engine...
[2026-06-12 01:29:37,225.225 INFO    ] 2026-06-12 01:29:37
[2026-06-12 01:29:37,445.445 INFO    ] 2026-06-12 01:29:37
[2026-06-12 01:29:37,474.474 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 01:29:37,657.657 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 01:29:37,666.666 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 01:29:37,792.792 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 01:29:37,859.859 INFO    ] time= 12/06/2026 01:29:37
[2026-06-12 01:29:37,885.885 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 01:29:37,891.891 INFO    ] Checking for existing commands in stream...
[2026-06-12 01:29:37,981.981 INFO    ] No existing commands found in stream
[2026-06-12 01:29:42,990.990 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 01:29:42,993.993 INFO    ] Waiting 2.01 seconds before fallback handling...
[2026-06-12 01:29:45,394.394 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 01:29:45,396.396 INFO    ] Checking for system updates...
[2026-06-12 01:29:45,417.417 INFO    ] 200
[2026-06-12 01:29:45,418.418 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:29:45,450.450 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 01:29:45,451.451 INFO    ] No update needed
[2026-06-12 01:29:45,453.453 INFO    ] Checking for camera pi updates...
[2026-06-12 01:29:45,472.472 INFO    ] 200
[2026-06-12 01:29:45,473.473 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:29:45,498.498 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 01:29:45,542.542 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 01:29:45,543.543 INFO    ] No camera update needed
[2026-06-12 01:29:45,545.545 INFO    ] Script finished. Safe exiting...
[2026-06-12 01:29:45,546.546 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 01:29:45,549.549 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 01:29:45,552.552 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 01:29:47,589.589 INFO    ] ================================================
[2026-06-12 01:29:47,604.604 INFO    ] Launching Daemon at Fri Jun 12 01:29:47 IST 2026
[2026-06-12 01:29:47,615.615 INFO    ] ================================================
[2026-06-12 01:29:47,941.941 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 01:29:47
[2026-06-12 01:29:48,253.253 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 01:29:48,384.384 INFO    ] Initializing speech engine...
[2026-06-12 01:29:48,387.387 INFO    ] 2026-06-12 01:29:48
[2026-06-12 01:29:48,613.613 INFO    ] 2026-06-12 01:29:48
[2026-06-12 01:29:48,649.649 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 01:29:48,781.781 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 01:29:48,844.844 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 01:29:48,988.988 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 01:29:49,039.039 INFO    ] time= 12/06/2026 01:29:48
[2026-06-12 01:29:49,083.083 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 01:29:49,094.094 INFO    ] Checking for existing commands in stream...
[2026-06-12 01:29:49,197.197 INFO    ] No existing commands found in stream
[2026-06-12 01:29:54,206.206 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 01:29:54,208.208 INFO    ] Waiting 2.57 seconds before fallback handling...
[2026-06-12 01:29:57,194.194 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 01:29:57,196.196 INFO    ] Checking for system updates...
[2026-06-12 01:29:57,216.216 INFO    ] 200
[2026-06-12 01:29:57,217.217 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:29:57,248.248 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 01:29:57,249.249 INFO    ] No update needed
[2026-06-12 01:29:57,250.250 INFO    ] Checking for camera pi updates...
[2026-06-12 01:29:57,270.270 INFO    ] 200
[2026-06-12 01:29:57,271.271 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:29:57,294.294 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 01:29:57,347.347 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 01:29:57,349.349 INFO    ] No camera update needed
[2026-06-12 01:29:57,350.350 INFO    ] Script finished. Safe exiting...
[2026-06-12 01:29:57,351.351 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 01:29:57,355.355 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 01:29:57,358.358 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 01:29:59,396.396 INFO    ] ================================================
[2026-06-12 01:29:59,412.412 INFO    ] Launching Daemon at Fri Jun 12 01:29:59 IST 2026
[2026-06-12 01:29:59,422.422 INFO    ] ================================================
[2026-06-12 01:29:59,752.752 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 01:29:59
[2026-06-12 01:30:00,069.069 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 01:30:00,208.208 INFO    ] Initializing speech engine...
[2026-06-12 01:30:00,218.218 INFO    ] 2026-06-12 01:30:00
[2026-06-12 01:30:00,423.423 INFO    ] 2026-06-12 01:30:00
[2026-06-12 01:30:00,452.452 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 01:30:00,634.634 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 01:30:00,638.638 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 01:30:00,800.800 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 01:30:00,849.849 INFO    ] time= 12/06/2026 01:30:00
[2026-06-12 01:30:00,864.864 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 01:30:00,871.871 INFO    ] Checking for existing commands in stream...
[2026-06-12 01:30:00,961.961 INFO    ] No existing commands found in stream
[2026-06-12 01:30:05,970.970 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 01:30:05,973.973 INFO    ] Waiting 0.84 seconds before fallback handling...
[2026-06-12 01:30:09,020.020 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 01:30:09,023.023 INFO    ] Checking for system updates...
[2026-06-12 01:30:09,059.059 INFO    ] 200
[2026-06-12 01:30:09,062.062 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:30:09,094.094 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 01:30:09,095.095 INFO    ] No update needed
[2026-06-12 01:30:09,096.096 INFO    ] Checking for camera pi updates...
[2026-06-12 01:30:09,116.116 INFO    ] 200
[2026-06-12 01:30:09,117.117 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:30:09,142.142 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 01:30:09,190.190 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 01:30:09,191.191 INFO    ] No camera update needed
[2026-06-12 01:30:09,192.192 INFO    ] Script finished. Safe exiting...
[2026-06-12 01:30:09,194.194 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 01:30:09,197.197 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 01:30:09,199.199 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 01:30:11,240.240 INFO    ] ================================================
[2026-06-12 01:30:11,256.256 INFO    ] Launching Daemon at Fri Jun 12 01:30:11 IST 2026
[2026-06-12 01:30:11,266.266 INFO    ] ================================================
[2026-06-12 01:30:11,592.592 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 01:30:11
[2026-06-12 01:30:11,903.903 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 01:30:12,035.035 INFO    ] Initializing speech engine...
[2026-06-12 01:30:12,038.038 INFO    ] 2026-06-12 01:30:12
[2026-06-12 01:30:12,256.256 INFO    ] 2026-06-12 01:30:12
[2026-06-12 01:30:12,285.285 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 01:30:12,472.472 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 01:30:12,476.476 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 01:30:12,616.616 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 01:30:12,685.685 INFO    ] time= 12/06/2026 01:30:12
[2026-06-12 01:30:12,709.709 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 01:30:12,716.716 INFO    ] Checking for existing commands in stream...
[2026-06-12 01:30:12,783.783 INFO    ] No existing commands found in stream
[2026-06-12 01:30:17,792.792 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 01:30:17,795.795 INFO    ] Waiting 3.51 seconds before fallback handling...
[2026-06-12 01:30:21,682.682 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 01:30:21,683.683 INFO    ] Checking for system updates...
[2026-06-12 01:30:21,704.704 INFO    ] 200
[2026-06-12 01:30:21,705.705 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:30:21,738.738 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 01:30:21,739.739 INFO    ] No update needed
[2026-06-12 01:30:21,741.741 INFO    ] Checking for camera pi updates...
[2026-06-12 01:30:21,763.763 INFO    ] 200
[2026-06-12 01:30:21,765.765 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:30:21,789.789 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 01:30:21,838.838 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 01:30:21,839.839 INFO    ] No camera update needed
[2026-06-12 01:30:21,841.841 INFO    ] Script finished. Safe exiting...
[2026-06-12 01:30:21,842.842 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 01:30:21,845.845 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 01:30:21,848.848 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 01:30:23,888.888 INFO    ] ================================================
[2026-06-12 01:30:23,903.903 INFO    ] Launching Daemon at Fri Jun 12 01:30:23 IST 2026
[2026-06-12 01:30:23,914.914 INFO    ] ================================================
[2026-06-12 01:30:24,248.248 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 01:30:24
[2026-06-12 01:30:24,558.558 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 01:30:24,702.702 INFO    ] Initializing speech engine...
[2026-06-12 01:30:24,708.708 INFO    ] 2026-06-12 01:30:24
[2026-06-12 01:30:24,912.912 INFO    ] 2026-06-12 01:30:24
[2026-06-12 01:30:24,940.940 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 01:30:25,125.125 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 01:30:25,129.129 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 01:30:25,264.264 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 01:30:25,330.330 INFO    ] time= 12/06/2026 01:30:25
[2026-06-12 01:30:25,359.359 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 01:30:25,365.365 INFO    ] Checking for existing commands in stream...
[2026-06-12 01:30:25,433.433 INFO    ] No existing commands found in stream
[2026-06-12 01:30:30,447.447 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 01:30:30,449.449 INFO    ] Waiting 2.58 seconds before fallback handling...
[2026-06-12 01:30:33,363.363 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 01:30:33,365.365 INFO    ] Checking for system updates...
[2026-06-12 01:30:33,387.387 INFO    ] 200
[2026-06-12 01:30:33,389.389 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:30:33,425.425 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 01:30:33,427.427 INFO    ] No update needed
[2026-06-12 01:30:33,428.428 INFO    ] Checking for camera pi updates...
[2026-06-12 01:30:33,451.451 INFO    ] 200
[2026-06-12 01:30:33,452.452 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:30:33,481.481 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 01:30:33,532.532 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 01:30:33,534.534 INFO    ] No camera update needed
[2026-06-12 01:30:33,535.535 INFO    ] Script finished. Safe exiting...
[2026-06-12 01:30:33,537.537 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 01:30:33,541.541 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 01:30:33,545.545 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 01:30:35,586.586 INFO    ] ================================================
[2026-06-12 01:30:35,602.602 INFO    ] Launching Daemon at Fri Jun 12 01:30:35 IST 2026
[2026-06-12 01:30:35,613.613 INFO    ] ================================================
[2026-06-12 01:30:35,948.948 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 01:30:35
[2026-06-12 01:30:36,263.263 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 01:30:36,393.393 INFO    ] Initializing speech engine...
[2026-06-12 01:30:36,397.397 INFO    ] 2026-06-12 01:30:36
[2026-06-12 01:30:36,615.615 INFO    ] 2026-06-12 01:30:36
[2026-06-12 01:30:36,643.643 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 01:30:36,829.829 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 01:30:36,838.838 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 01:30:36,962.962 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 01:30:37,023.023 INFO    ] time= 12/06/2026 01:30:36
[2026-06-12 01:30:37,054.054 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 01:30:37,064.064 INFO    ] Checking for existing commands in stream...
[2026-06-12 01:30:37,135.135 INFO    ] No existing commands found in stream
[2026-06-12 01:30:42,145.145 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 01:30:42,148.148 INFO    ] Waiting 0.34 seconds before fallback handling...
[2026-06-12 01:30:42,864.864 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 01:30:42,865.865 INFO    ] Checking for system updates...
[2026-06-12 01:30:42,886.886 INFO    ] 200
[2026-06-12 01:30:42,887.887 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:30:42,917.917 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 01:30:42,919.919 INFO    ] No update needed
[2026-06-12 01:30:42,920.920 INFO    ] Checking for camera pi updates...
[2026-06-12 01:30:42,941.941 INFO    ] 200
[2026-06-12 01:30:42,942.942 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:30:42,967.967 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 01:30:43,008.008 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 01:30:43,010.010 INFO    ] No camera update needed
[2026-06-12 01:30:43,011.011 INFO    ] Script finished. Safe exiting...
[2026-06-12 01:30:43,013.013 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 01:30:43,016.016 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 01:30:43,018.018 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 01:30:45,060.060 INFO    ] ================================================
[2026-06-12 01:30:45,076.076 INFO    ] Launching Daemon at Fri Jun 12 01:30:45 IST 2026
[2026-06-12 01:30:45,087.087 INFO    ] ================================================
[2026-06-12 01:30:45,437.437 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 01:30:45
[2026-06-12 01:30:45,750.750 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 01:30:45,880.880 INFO    ] Initializing speech engine...
[2026-06-12 01:30:45,884.884 INFO    ] 2026-06-12 01:30:45
[2026-06-12 01:30:46,102.102 INFO    ] 2026-06-12 01:30:46
[2026-06-12 01:30:46,132.132 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 01:30:46,317.317 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 01:30:46,320.320 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 01:30:46,464.464 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 01:30:46,527.527 INFO    ] time= 12/06/2026 01:30:46
[2026-06-12 01:30:46,551.551 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 01:30:46,557.557 INFO    ] Checking for existing commands in stream...
[2026-06-12 01:30:46,625.625 INFO    ] No existing commands found in stream
[2026-06-12 01:30:51,634.634 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 01:30:51,636.636 INFO    ] Waiting 0.84 seconds before fallback handling...
[2026-06-12 01:30:52,835.835 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 01:30:52,837.837 INFO    ] Checking for system updates...
[2026-06-12 01:30:52,859.859 INFO    ] 200
[2026-06-12 01:30:52,860.860 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:30:52,890.890 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 01:30:52,892.892 INFO    ] No update needed
[2026-06-12 01:30:52,893.893 INFO    ] Checking for camera pi updates...
[2026-06-12 01:30:52,912.912 INFO    ] 200
[2026-06-12 01:30:52,914.914 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:30:52,937.937 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 01:30:52,981.981 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 01:30:52,982.982 INFO    ] No camera update needed
[2026-06-12 01:30:52,983.983 INFO    ] Script finished. Safe exiting...
[2026-06-12 01:30:52,985.985 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 01:30:52,987.987 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 01:30:52,990.990 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 01:30:55,030.030 INFO    ] ================================================
[2026-06-12 01:30:55,046.046 INFO    ] Launching Daemon at Fri Jun 12 01:30:55 IST 2026
[2026-06-12 01:30:55,057.057 INFO    ] ================================================
[2026-06-12 01:30:55,391.391 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 01:30:55
[2026-06-12 01:30:55,702.702 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 01:30:55,834.834 INFO    ] Initializing speech engine...
[2026-06-12 01:30:55,846.846 INFO    ] 2026-06-12 01:30:55
[2026-06-12 01:30:56,054.054 INFO    ] 2026-06-12 01:30:56
[2026-06-12 01:30:56,084.084 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 01:30:56,269.269 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 01:30:56,272.272 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 01:30:56,416.416 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 01:30:56,474.474 INFO    ] time= 12/06/2026 01:30:56
[2026-06-12 01:30:56,502.502 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 01:30:56,509.509 INFO    ] Checking for existing commands in stream...
[2026-06-12 01:30:56,576.576 INFO    ] No existing commands found in stream
[2026-06-12 01:31:01,581.581 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 01:31:01,583.583 INFO    ] Waiting 0.75 seconds before fallback handling...
[2026-06-12 01:31:02,656.656 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 01:31:02,657.657 INFO    ] Checking for system updates...
[2026-06-12 01:31:02,683.683 INFO    ] 200
[2026-06-12 01:31:02,685.685 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:31:02,757.757 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 01:31:02,759.759 INFO    ] No update needed
[2026-06-12 01:31:02,762.762 INFO    ] Checking for camera pi updates...
[2026-06-12 01:31:02,789.789 INFO    ] 200
[2026-06-12 01:31:02,791.791 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:31:02,815.815 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 01:31:02,843.843 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 01:31:02,844.844 INFO    ] No camera update needed
[2026-06-12 01:31:02,846.846 INFO    ] Script finished. Safe exiting...
[2026-06-12 01:31:02,847.847 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 01:31:02,850.850 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 01:31:02,853.853 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 01:31:04,892.892 INFO    ] ================================================
[2026-06-12 01:31:04,907.907 INFO    ] Launching Daemon at Fri Jun 12 01:31:04 IST 2026
[2026-06-12 01:31:04,917.917 INFO    ] ================================================
[2026-06-12 01:31:05,270.270 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 01:31:05
[2026-06-12 01:31:05,600.600 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 01:31:05,744.744 INFO    ] Initializing speech engine...
[2026-06-12 01:31:05,749.749 INFO    ] 2026-06-12 01:31:05
[2026-06-12 01:31:05,953.953 INFO    ] 2026-06-12 01:31:05
[2026-06-12 01:31:05,981.981 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 01:31:06,118.118 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 01:31:06,166.166 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 01:31:06,305.305 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 01:31:06,369.369 INFO    ] time= 12/06/2026 01:31:06
[2026-06-12 01:31:06,395.395 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 01:31:06,402.402 INFO    ] Checking for existing commands in stream...
[2026-06-12 01:31:06,469.469 INFO    ] No existing commands found in stream
[2026-06-12 01:31:11,483.483 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 01:31:11,486.486 INFO    ] Waiting 1.77 seconds before fallback handling...
[2026-06-12 01:31:13,637.637 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 01:31:13,638.638 INFO    ] Checking for system updates...
[2026-06-12 01:31:13,659.659 INFO    ] 200
[2026-06-12 01:31:13,661.661 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:31:13,693.693 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 01:31:13,695.695 INFO    ] No update needed
[2026-06-12 01:31:13,696.696 INFO    ] Checking for camera pi updates...
[2026-06-12 01:31:13,716.716 INFO    ] 200
[2026-06-12 01:31:13,718.718 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:31:13,743.743 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 01:31:13,789.789 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 01:31:13,791.791 INFO    ] No camera update needed
[2026-06-12 01:31:13,792.792 INFO    ] Script finished. Safe exiting...
[2026-06-12 01:31:13,793.793 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 01:31:13,796.796 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 01:31:13,799.799 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 01:31:15,841.841 INFO    ] ================================================
[2026-06-12 01:31:15,856.856 INFO    ] Launching Daemon at Fri Jun 12 01:31:15 IST 2026
[2026-06-12 01:31:15,867.867 INFO    ] ================================================
[2026-06-12 01:31:16,231.231 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 01:31:16
[2026-06-12 01:31:16,542.542 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 01:31:16,683.683 INFO    ] Initializing speech engine...
[2026-06-12 01:31:16,688.688 INFO    ] 2026-06-12 01:31:16
[2026-06-12 01:31:16,891.891 INFO    ] 2026-06-12 01:31:16
[2026-06-12 01:31:16,920.920 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 01:31:17,104.104 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 01:31:17,112.112 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 01:31:17,236.236 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 01:31:17,297.297 INFO    ] time= 12/06/2026 01:31:17
[2026-06-12 01:31:17,334.334 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 01:31:17,335.335 INFO    ] Checking for existing commands in stream...
[2026-06-12 01:31:17,406.406 INFO    ] No existing commands found in stream
[2026-06-12 01:31:22,420.420 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 01:31:22,423.423 INFO    ] Waiting 3.41 seconds before fallback handling...
[2026-06-12 01:31:26,160.160 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 01:31:26,162.162 INFO    ] Checking for system updates...
[2026-06-12 01:31:26,187.187 INFO    ] 200
[2026-06-12 01:31:26,188.188 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:31:26,223.223 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 01:31:26,224.224 INFO    ] No update needed
[2026-06-12 01:31:26,226.226 INFO    ] Checking for camera pi updates...
[2026-06-12 01:31:26,249.249 INFO    ] 200
[2026-06-12 01:31:26,251.251 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:31:26,278.278 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 01:31:26,416.416 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 01:31:26,418.418 INFO    ] No camera update needed
[2026-06-12 01:31:26,419.419 INFO    ] Script finished. Safe exiting...
[2026-06-12 01:31:26,421.421 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 01:31:26,425.425 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 01:31:26,428.428 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 01:31:28,453.453 INFO    ] ================================================
[2026-06-12 01:31:28,462.462 INFO    ] Launching Daemon at Fri Jun 12 01:31:28 IST 2026
[2026-06-12 01:31:28,469.469 INFO    ] ================================================
[2026-06-12 01:31:28,814.814 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 01:31:28
[2026-06-12 01:31:29,178.178 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 01:31:29,337.337 INFO    ] Initializing speech engine...
[2026-06-12 01:31:29,344.344 INFO    ] 2026-06-12 01:31:29
[2026-06-12 01:31:29,561.561 INFO    ] 2026-06-12 01:31:29
[2026-06-12 01:31:29,591.591 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 01:31:29,758.758 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 01:31:29,776.776 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 01:31:29,905.905 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 01:31:29,956.956 INFO    ] time= 12/06/2026 01:31:29
[2026-06-12 01:31:29,996.996 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 01:31:30,006.006 INFO    ] Checking for existing commands in stream...
[2026-06-12 01:31:30,076.076 INFO    ] No existing commands found in stream
[2026-06-12 01:31:35,086.086 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 01:31:35,089.089 INFO    ] Waiting 1.65 seconds before fallback handling...
[2026-06-12 01:31:37,120.120 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 01:31:37,122.122 INFO    ] Checking for system updates...
[2026-06-12 01:31:37,142.142 INFO    ] 200
[2026-06-12 01:31:37,144.144 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:31:37,176.176 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 01:31:37,180.180 INFO    ] No update needed
[2026-06-12 01:31:37,182.182 INFO    ] Checking for camera pi updates...
[2026-06-12 01:31:37,203.203 INFO    ] 200
[2026-06-12 01:31:37,205.205 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:31:37,228.228 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 01:31:37,279.279 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 01:31:37,281.281 INFO    ] No camera update needed
[2026-06-12 01:31:37,282.282 INFO    ] Script finished. Safe exiting...
[2026-06-12 01:31:37,284.284 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 01:31:37,287.287 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 01:31:37,290.290 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 01:31:39,330.330 INFO    ] ================================================
[2026-06-12 01:31:39,346.346 INFO    ] Launching Daemon at Fri Jun 12 01:31:39 IST 2026
[2026-06-12 01:31:39,357.357 INFO    ] ================================================
[2026-06-12 01:31:39,719.719 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 01:31:39
[2026-06-12 01:31:40,033.033 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 01:31:40,165.165 INFO    ] Initializing speech engine...
[2026-06-12 01:31:40,178.178 INFO    ] 2026-06-12 01:31:40
[2026-06-12 01:31:40,384.384 INFO    ] 2026-06-12 01:31:40
[2026-06-12 01:31:40,413.413 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 01:31:40,596.596 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 01:31:40,605.605 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 01:31:40,726.726 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 01:31:40,787.787 INFO    ] time= 12/06/2026 01:31:40
[2026-06-12 01:31:40,808.808 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 01:31:40,830.830 INFO    ] Checking for existing commands in stream...
[2026-06-12 01:31:40,906.906 INFO    ] No existing commands found in stream
[2026-06-12 01:31:45,916.916 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 01:31:45,919.919 INFO    ] Waiting 3.43 seconds before fallback handling...
[2026-06-12 01:31:49,752.752 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 01:31:49,754.754 INFO    ] Checking for system updates...
[2026-06-12 01:31:49,776.776 INFO    ] 200
[2026-06-12 01:31:49,777.777 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:31:49,814.814 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 01:31:49,815.815 INFO    ] No update needed
[2026-06-12 01:31:49,816.816 INFO    ] Checking for camera pi updates...
[2026-06-12 01:31:49,840.840 INFO    ] 200
[2026-06-12 01:31:49,842.842 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:31:49,867.867 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 01:31:49,908.908 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 01:31:49,909.909 INFO    ] No camera update needed
[2026-06-12 01:31:49,911.911 INFO    ] Script finished. Safe exiting...
[2026-06-12 01:31:49,912.912 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 01:31:49,916.916 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 01:31:49,919.919 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 01:31:51,959.959 INFO    ] ================================================
[2026-06-12 01:31:51,975.975 INFO    ] Launching Daemon at Fri Jun 12 01:31:51 IST 2026
[2026-06-12 01:31:51,986.986 INFO    ] ================================================
[2026-06-12 01:31:52,347.347 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 01:31:52
[2026-06-12 01:31:52,658.658 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 01:31:52,801.801 INFO    ] Initializing speech engine...
[2026-06-12 01:31:52,806.806 INFO    ] 2026-06-12 01:31:52
[2026-06-12 01:31:53,012.012 INFO    ] 2026-06-12 01:31:52
[2026-06-12 01:31:53,041.041 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 01:31:53,226.226 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 01:31:53,230.230 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 01:31:53,367.367 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 01:31:53,426.426 INFO    ] time= 12/06/2026 01:31:53
[2026-06-12 01:31:53,458.458 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 01:31:53,465.465 INFO    ] Checking for existing commands in stream...
[2026-06-12 01:31:53,531.531 INFO    ] No existing commands found in stream
[2026-06-12 01:31:58,541.541 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 01:31:58,544.544 INFO    ] Waiting 0.51 seconds before fallback handling...
[2026-06-12 01:31:59,455.455 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 01:31:59,456.456 INFO    ] Checking for system updates...
[2026-06-12 01:31:59,477.477 INFO    ] 200
[2026-06-12 01:31:59,478.478 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:31:59,508.508 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 01:31:59,509.509 INFO    ] No update needed
[2026-06-12 01:31:59,511.511 INFO    ] Checking for camera pi updates...
[2026-06-12 01:31:59,530.530 INFO    ] 200
[2026-06-12 01:31:59,532.532 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:31:59,557.557 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 01:31:59,598.598 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 01:31:59,599.599 INFO    ] No camera update needed
[2026-06-12 01:31:59,600.600 INFO    ] Script finished. Safe exiting...
[2026-06-12 01:31:59,602.602 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 01:31:59,604.604 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 01:31:59,607.607 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 01:32:01,645.645 INFO    ] ================================================
[2026-06-12 01:32:01,660.660 INFO    ] Launching Daemon at Fri Jun 12 01:32:01 IST 2026
[2026-06-12 01:32:01,667.667 INFO    ] ================================================
[2026-06-12 01:32:02,033.033 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 01:32:02
[2026-06-12 01:32:02,428.428 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 01:32:02,580.580 INFO    ] Initializing speech engine...
[2026-06-12 01:32:02,588.588 INFO    ] 2026-06-12 01:32:02
[2026-06-12 01:32:02,812.812 INFO    ] 2026-06-12 01:32:02
[2026-06-12 01:32:02,843.843 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 01:32:03,036.036 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 01:32:03,044.044 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 01:32:03,181.181 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 01:32:03,229.229 INFO    ] time= 12/06/2026 01:32:03
[2026-06-12 01:32:03,267.267 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 01:32:03,290.290 INFO    ] Checking for existing commands in stream...
[2026-06-12 01:32:03,366.366 INFO    ] No existing commands found in stream
[2026-06-12 01:32:08,375.375 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 01:32:08,378.378 INFO    ] Waiting 2.18 seconds before fallback handling...
[2026-06-12 01:32:10,967.967 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 01:32:10,969.969 INFO    ] Checking for system updates...
[2026-06-12 01:32:10,989.989 INFO    ] 200
[2026-06-12 01:32:10,991.991 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:32:11,021.021 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 01:32:11,022.022 INFO    ] No update needed
[2026-06-12 01:32:11,023.023 INFO    ] Checking for camera pi updates...
[2026-06-12 01:32:11,043.043 INFO    ] 200
[2026-06-12 01:32:11,045.045 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:32:11,070.070 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 01:32:11,125.125 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 01:32:11,126.126 INFO    ] No camera update needed
[2026-06-12 01:32:11,128.128 INFO    ] Script finished. Safe exiting...
[2026-06-12 01:32:11,129.129 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 01:32:11,132.132 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 01:32:11,134.134 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 01:32:13,173.173 INFO    ] ================================================
[2026-06-12 01:32:13,190.190 INFO    ] Launching Daemon at Fri Jun 12 01:32:13 IST 2026
[2026-06-12 01:32:13,201.201 INFO    ] ================================================
[2026-06-12 01:32:13,536.536 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 01:32:13
[2026-06-12 01:32:13,855.855 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 01:32:13,989.989 INFO    ] Initializing speech engine...
[2026-06-12 01:32:13,994.994 INFO    ] 2026-06-12 01:32:13
[2026-06-12 01:32:14,222.222 INFO    ] 2026-06-12 01:32:14
[2026-06-12 01:32:14,253.253 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 01:32:14,384.384 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 01:32:14,447.447 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 01:32:14,592.592 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 01:32:14,649.649 INFO    ] time= 12/06/2026 01:32:14
[2026-06-12 01:32:14,689.689 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 01:32:14,705.705 INFO    ] Checking for existing commands in stream...
[2026-06-12 01:32:14,775.775 INFO    ] No existing commands found in stream
[2026-06-12 01:32:19,786.786 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 01:32:19,789.789 INFO    ] Waiting 1.01 seconds before fallback handling...
[2026-06-12 01:32:21,164.164 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 01:32:21,166.166 INFO    ] Checking for system updates...
[2026-06-12 01:32:21,187.187 INFO    ] 200
[2026-06-12 01:32:21,189.189 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:32:21,221.221 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 01:32:21,223.223 INFO    ] No update needed
[2026-06-12 01:32:21,224.224 INFO    ] Checking for camera pi updates...
[2026-06-12 01:32:21,246.246 INFO    ] 200
[2026-06-12 01:32:21,248.248 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:32:21,273.273 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 01:32:21,301.301 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 01:32:21,302.302 INFO    ] No camera update needed
[2026-06-12 01:32:21,304.304 INFO    ] Script finished. Safe exiting...
[2026-06-12 01:32:21,305.305 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 01:32:21,308.308 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 01:32:21,311.311 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 01:32:23,351.351 INFO    ] ================================================
[2026-06-12 01:32:23,368.368 INFO    ] Launching Daemon at Fri Jun 12 01:32:23 IST 2026
[2026-06-12 01:32:23,379.379 INFO    ] ================================================
[2026-06-12 01:32:23,742.742 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 01:32:23
[2026-06-12 01:32:24,058.058 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 01:32:24,202.202 INFO    ] Initializing speech engine...
[2026-06-12 01:32:24,208.208 INFO    ] 2026-06-12 01:32:24
[2026-06-12 01:32:24,410.410 INFO    ] 2026-06-12 01:32:24
[2026-06-12 01:32:24,439.439 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 01:32:24,623.623 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 01:32:24,631.631 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 01:32:24,777.777 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 01:32:24,830.830 INFO    ] time= 12/06/2026 01:32:24
[2026-06-12 01:32:24,851.851 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 01:32:24,858.858 INFO    ] Checking for existing commands in stream...
[2026-06-12 01:32:24,925.925 INFO    ] No existing commands found in stream
[2026-06-12 01:32:29,939.939 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 01:32:29,942.942 INFO    ] Waiting 1.70 seconds before fallback handling...
[2026-06-12 01:32:31,927.927 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 01:32:31,929.929 INFO    ] Checking for system updates...
[2026-06-12 01:32:31,953.953 INFO    ] 200
[2026-06-12 01:32:31,955.955 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:32:31,988.988 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 01:32:31,990.990 INFO    ] No update needed
[2026-06-12 01:32:31,991.991 INFO    ] Checking for camera pi updates...
[2026-06-12 01:32:32,013.013 INFO    ] 200
[2026-06-12 01:32:32,014.014 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:32:32,043.043 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 01:32:32,074.074 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 01:32:32,076.076 INFO    ] No camera update needed
[2026-06-12 01:32:32,078.078 INFO    ] Script finished. Safe exiting...
[2026-06-12 01:32:32,079.079 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 01:32:32,084.084 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 01:32:32,087.087 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 01:32:34,128.128 INFO    ] ================================================
[2026-06-12 01:32:34,144.144 INFO    ] Launching Daemon at Fri Jun 12 01:32:34 IST 2026
[2026-06-12 01:32:34,155.155 INFO    ] ================================================
[2026-06-12 01:32:34,508.508 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 01:32:34
[2026-06-12 01:32:34,825.825 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 01:32:34,964.964 INFO    ] Initializing speech engine...
[2026-06-12 01:32:34,974.974 INFO    ] 2026-06-12 01:32:34
[2026-06-12 01:32:35,180.180 INFO    ] 2026-06-12 01:32:35
[2026-06-12 01:32:35,208.208 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 01:32:35,398.398 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 01:32:35,403.403 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 01:32:35,543.543 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 01:32:35,604.604 INFO    ] time= 12/06/2026 01:32:35
[2026-06-12 01:32:35,638.638 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 01:32:35,649.649 INFO    ] Checking for existing commands in stream...
[2026-06-12 01:32:35,725.725 INFO    ] No existing commands found in stream
[2026-06-12 01:32:40,749.749 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 01:32:40,752.752 INFO    ] Waiting 2.03 seconds before fallback handling...
[2026-06-12 01:32:43,166.166 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 01:32:43,167.167 INFO    ] Checking for system updates...
[2026-06-12 01:32:43,188.188 INFO    ] 200
[2026-06-12 01:32:43,190.190 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:32:43,221.221 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 01:32:43,222.222 INFO    ] No update needed
[2026-06-12 01:32:43,224.224 INFO    ] Checking for camera pi updates...
[2026-06-12 01:32:43,243.243 INFO    ] 200
[2026-06-12 01:32:43,245.245 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:32:43,270.270 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 01:32:43,326.326 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 01:32:43,327.327 INFO    ] No camera update needed
[2026-06-12 01:32:43,330.330 INFO    ] Script finished. Safe exiting...
[2026-06-12 01:32:43,332.332 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 01:32:43,335.335 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 01:32:43,338.338 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 01:32:45,378.378 INFO    ] ================================================
[2026-06-12 01:32:45,393.393 INFO    ] Launching Daemon at Fri Jun 12 01:32:45 IST 2026
[2026-06-12 01:32:45,404.404 INFO    ] ================================================
[2026-06-12 01:32:45,756.756 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 01:32:45
[2026-06-12 01:32:46,072.072 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 01:32:46,203.203 INFO    ] Initializing speech engine...
[2026-06-12 01:32:46,208.208 INFO    ] 2026-06-12 01:32:46
[2026-06-12 01:32:46,426.426 INFO    ] 2026-06-12 01:32:46
[2026-06-12 01:32:46,454.454 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 01:32:46,638.638 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 01:32:46,646.646 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 01:32:46,781.781 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 01:32:46,842.842 INFO    ] time= 12/06/2026 01:32:46
[2026-06-12 01:32:46,867.867 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 01:32:46,873.873 INFO    ] Checking for existing commands in stream...
[2026-06-12 01:32:46,943.943 INFO    ] No existing commands found in stream
[2026-06-12 01:32:51,952.952 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 01:32:51,955.955 INFO    ] Waiting 0.91 seconds before fallback handling...
[2026-06-12 01:32:53,245.245 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 01:32:53,247.247 INFO    ] Checking for system updates...
[2026-06-12 01:32:53,268.268 INFO    ] 200
[2026-06-12 01:32:53,270.270 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:32:53,301.301 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 01:32:53,302.302 INFO    ] No update needed
[2026-06-12 01:32:53,303.303 INFO    ] Checking for camera pi updates...
[2026-06-12 01:32:53,324.324 INFO    ] 200
[2026-06-12 01:32:53,326.326 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:32:53,353.353 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 01:32:53,397.397 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 01:32:53,398.398 INFO    ] No camera update needed
[2026-06-12 01:32:53,399.399 INFO    ] Script finished. Safe exiting...
[2026-06-12 01:32:53,401.401 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 01:32:53,404.404 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 01:32:53,407.407 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 01:32:55,445.445 INFO    ] ================================================
[2026-06-12 01:32:55,460.460 INFO    ] Launching Daemon at Fri Jun 12 01:32:55 IST 2026
[2026-06-12 01:32:55,471.471 INFO    ] ================================================
[2026-06-12 01:32:55,832.832 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 01:32:55
[2026-06-12 01:32:56,165.165 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 01:32:56,315.315 INFO    ] Initializing speech engine...
[2026-06-12 01:32:56,321.321 INFO    ] 2026-06-12 01:32:56
[2026-06-12 01:32:56,529.529 INFO    ] 2026-06-12 01:32:56
[2026-06-12 01:32:56,558.558 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 01:32:56,744.744 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 01:32:56,747.747 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 01:32:56,877.877 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 01:32:56,933.933 INFO    ] time= 12/06/2026 01:32:56
[2026-06-12 01:32:56,969.969 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 01:32:56,979.979 INFO    ] Checking for existing commands in stream...
[2026-06-12 01:32:57,052.052 INFO    ] No existing commands found in stream
[2026-06-12 01:33:02,060.060 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 01:33:02,063.063 INFO    ] Waiting 0.50 seconds before fallback handling...
[2026-06-12 01:33:02,888.888 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 01:33:02,890.890 INFO    ] Checking for system updates...
[2026-06-12 01:33:02,911.911 INFO    ] 200
[2026-06-12 01:33:02,912.912 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:33:02,942.942 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 01:33:02,944.944 INFO    ] No update needed
[2026-06-12 01:33:02,945.945 INFO    ] Checking for camera pi updates...
[2026-06-12 01:33:02,964.964 INFO    ] 200
[2026-06-12 01:33:02,966.966 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:33:02,992.992 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 01:33:03,017.017 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 01:33:03,018.018 INFO    ] No camera update needed
[2026-06-12 01:33:03,019.019 INFO    ] Script finished. Safe exiting...
[2026-06-12 01:33:03,021.021 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 01:33:03,024.024 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 01:33:03,026.026 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 01:33:05,064.064 INFO    ] ================================================
[2026-06-12 01:33:05,080.080 INFO    ] Launching Daemon at Fri Jun 12 01:33:05 IST 2026
[2026-06-12 01:33:05,091.091 INFO    ] ================================================
[2026-06-12 01:33:05,431.431 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 01:33:05
[2026-06-12 01:33:05,764.764 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 01:33:05,929.929 INFO    ] Initializing speech engine...
[2026-06-12 01:33:05,934.934 INFO    ] 2026-06-12 01:33:05
[2026-06-12 01:33:06,139.139 INFO    ] 2026-06-12 01:33:06
[2026-06-12 01:33:06,167.167 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 01:33:06,352.352 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 01:33:06,362.362 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 01:33:06,489.489 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 01:33:06,553.553 INFO    ] time= 12/06/2026 01:33:06
[2026-06-12 01:33:06,580.580 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 01:33:06,587.587 INFO    ] Checking for existing commands in stream...
[2026-06-12 01:33:06,652.652 INFO    ] No existing commands found in stream
[2026-06-12 01:33:11,663.663 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 01:33:11,666.666 INFO    ] Waiting 2.13 seconds before fallback handling...
[2026-06-12 01:33:14,174.174 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 01:33:14,175.175 INFO    ] Checking for system updates...
[2026-06-12 01:33:14,196.196 INFO    ] 200
[2026-06-12 01:33:14,198.198 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:33:14,230.230 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 01:33:14,232.232 INFO    ] No update needed
[2026-06-12 01:33:14,233.233 INFO    ] Checking for camera pi updates...
[2026-06-12 01:33:14,253.253 INFO    ] 200
[2026-06-12 01:33:14,255.255 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:33:14,279.279 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 01:33:14,333.333 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 01:33:14,334.334 INFO    ] No camera update needed
[2026-06-12 01:33:14,336.336 INFO    ] Script finished. Safe exiting...
[2026-06-12 01:33:14,337.337 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 01:33:14,340.340 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 01:33:14,343.343 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 01:33:16,383.383 INFO    ] ================================================
[2026-06-12 01:33:16,398.398 INFO    ] Launching Daemon at Fri Jun 12 01:33:16 IST 2026
[2026-06-12 01:33:16,409.409 INFO    ] ================================================
[2026-06-12 01:33:16,767.767 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 01:33:16
[2026-06-12 01:33:17,083.083 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 01:33:17,216.216 INFO    ] Initializing speech engine...
[2026-06-12 01:33:17,220.220 INFO    ] 2026-06-12 01:33:17
[2026-06-12 01:33:17,447.447 INFO    ] 2026-06-12 01:33:17
[2026-06-12 01:33:17,478.478 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 01:33:17,672.672 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 01:33:17,676.676 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 01:33:17,827.827 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 01:33:17,894.894 INFO    ] time= 12/06/2026 01:33:17
[2026-06-12 01:33:17,918.918 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 01:33:17,924.924 INFO    ] Checking for existing commands in stream...
[2026-06-12 01:33:17,995.995 INFO    ] No existing commands found in stream
[2026-06-12 01:33:23,003.003 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 01:33:23,005.005 INFO    ] Waiting 3.54 seconds before fallback handling...
[2026-06-12 01:33:26,907.907 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 01:33:26,908.908 INFO    ] Checking for system updates...
[2026-06-12 01:33:26,930.930 INFO    ] 200
[2026-06-12 01:33:26,931.931 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:33:26,964.964 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 01:33:26,965.965 INFO    ] No update needed
[2026-06-12 01:33:26,966.966 INFO    ] Checking for camera pi updates...
[2026-06-12 01:33:26,987.987 INFO    ] 200
[2026-06-12 01:33:26,988.988 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:33:27,013.013 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 01:33:27,153.153 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 01:33:27,154.154 INFO    ] No camera update needed
[2026-06-12 01:33:27,155.155 INFO    ] Script finished. Safe exiting...
[2026-06-12 01:33:27,156.156 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 01:33:27,159.159 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 01:33:27,162.162 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 01:33:29,202.202 INFO    ] ================================================
[2026-06-12 01:33:29,217.217 INFO    ] Launching Daemon at Fri Jun 12 01:33:29 IST 2026
[2026-06-12 01:33:29,228.228 INFO    ] ================================================
[2026-06-12 01:33:29,589.589 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 01:33:29
[2026-06-12 01:33:29,905.905 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 01:33:30,042.042 INFO    ] Initializing speech engine...
[2026-06-12 01:33:30,055.055 INFO    ] 2026-06-12 01:33:30
[2026-06-12 01:33:30,271.271 INFO    ] 2026-06-12 01:33:30
[2026-06-12 01:33:30,302.302 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 01:33:30,498.498 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 01:33:30,502.502 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 01:33:30,640.640 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 01:33:30,702.702 INFO    ] time= 12/06/2026 01:33:30
[2026-06-12 01:33:30,741.741 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 01:33:30,747.747 INFO    ] Checking for existing commands in stream...
[2026-06-12 01:33:30,822.822 INFO    ] No existing commands found in stream
[2026-06-12 01:33:35,832.832 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 01:33:35,835.835 INFO    ] Waiting 0.09 seconds before fallback handling...
[2026-06-12 01:33:36,282.282 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 01:33:36,284.284 INFO    ] Checking for system updates...
[2026-06-12 01:33:36,304.304 INFO    ] 200
[2026-06-12 01:33:36,306.306 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:33:36,338.338 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 01:33:36,339.339 INFO    ] No update needed
[2026-06-12 01:33:36,341.341 INFO    ] Checking for camera pi updates...
[2026-06-12 01:33:36,361.361 INFO    ] 200
[2026-06-12 01:33:36,363.363 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:33:36,386.386 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 01:33:36,430.430 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 01:33:36,431.431 INFO    ] No camera update needed
[2026-06-12 01:33:36,433.433 INFO    ] Script finished. Safe exiting...
[2026-06-12 01:33:36,434.434 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 01:33:36,437.437 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 01:33:36,440.440 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 01:33:38,479.479 INFO    ] ================================================
[2026-06-12 01:33:38,494.494 INFO    ] Launching Daemon at Fri Jun 12 01:33:38 IST 2026
[2026-06-12 01:33:38,505.505 INFO    ] ================================================
[2026-06-12 01:33:38,834.834 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 01:33:38
[2026-06-12 01:33:39,151.151 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 01:33:39,286.286 INFO    ] Initializing speech engine...
[2026-06-12 01:33:39,294.294 INFO    ] 2026-06-12 01:33:39
[2026-06-12 01:33:39,517.517 INFO    ] 2026-06-12 01:33:39
[2026-06-12 01:33:39,548.548 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 01:33:39,744.744 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 01:33:39,748.748 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 01:33:39,887.887 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 01:33:39,953.953 INFO    ] time= 12/06/2026 01:33:39
[2026-06-12 01:33:39,991.991 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 01:33:39,994.994 INFO    ] Checking for existing commands in stream...
[2026-06-12 01:33:40,075.075 INFO    ] No existing commands found in stream
[2026-06-12 01:33:45,102.102 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 01:33:45,105.105 INFO    ] Waiting 0.68 seconds before fallback handling...
[2026-06-12 01:33:46,138.138 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 01:33:46,140.140 INFO    ] Checking for system updates...
[2026-06-12 01:33:46,161.161 INFO    ] 200
[2026-06-12 01:33:46,163.163 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:33:46,195.195 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 01:33:46,196.196 INFO    ] No update needed
[2026-06-12 01:33:46,198.198 INFO    ] Checking for camera pi updates...
[2026-06-12 01:33:46,221.221 INFO    ] 200
[2026-06-12 01:33:46,222.222 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:33:46,249.249 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 01:33:46,301.301 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 01:33:46,302.302 INFO    ] No camera update needed
[2026-06-12 01:33:46,304.304 INFO    ] Script finished. Safe exiting...
[2026-06-12 01:33:46,305.305 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 01:33:46,308.308 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 01:33:46,311.311 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 01:33:48,351.351 INFO    ] ================================================
[2026-06-12 01:33:48,367.367 INFO    ] Launching Daemon at Fri Jun 12 01:33:48 IST 2026
[2026-06-12 01:33:48,377.377 INFO    ] ================================================
[2026-06-12 01:33:48,744.744 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 01:33:48
[2026-06-12 01:33:49,065.065 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 01:33:49,207.207 INFO    ] Initializing speech engine...
[2026-06-12 01:33:49,216.216 INFO    ] 2026-06-12 01:33:49
[2026-06-12 01:33:49,433.433 INFO    ] 2026-06-12 01:33:49
[2026-06-12 01:33:49,462.462 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 01:33:49,600.600 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 01:33:49,647.647 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 01:33:49,784.784 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 01:33:49,853.853 INFO    ] time= 12/06/2026 01:33:49
[2026-06-12 01:33:49,876.876 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 01:33:49,882.882 INFO    ] Checking for existing commands in stream...
[2026-06-12 01:33:49,949.949 INFO    ] No existing commands found in stream
[2026-06-12 01:33:54,958.958 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 01:33:54,962.962 INFO    ] Waiting 3.67 seconds before fallback handling...
[2026-06-12 01:33:59,008.008 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 01:33:59,010.010 INFO    ] Checking for system updates...
[2026-06-12 01:33:59,032.032 INFO    ] 200
[2026-06-12 01:33:59,034.034 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:33:59,069.069 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 01:33:59,071.071 INFO    ] No update needed
[2026-06-12 01:33:59,072.072 INFO    ] Checking for camera pi updates...
[2026-06-12 01:33:59,092.092 INFO    ] 200
[2026-06-12 01:33:59,094.094 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:33:59,120.120 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 01:33:59,174.174 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 01:33:59,175.175 INFO    ] No camera update needed
[2026-06-12 01:33:59,177.177 INFO    ] Script finished. Safe exiting...
[2026-06-12 01:33:59,178.178 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 01:33:59,181.181 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 01:33:59,184.184 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 01:34:01,224.224 INFO    ] ================================================
[2026-06-12 01:34:01,240.240 INFO    ] Launching Daemon at Fri Jun 12 01:34:01 IST 2026
[2026-06-12 01:34:01,250.250 INFO    ] ================================================
[2026-06-12 01:34:01,630.630 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 01:34:01
[2026-06-12 01:34:02,038.038 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 01:34:02,279.279 INFO    ] Initializing speech engine...
[2026-06-12 01:34:02,286.286 INFO    ] 2026-06-12 01:34:02
[2026-06-12 01:34:02,513.513 INFO    ] 2026-06-12 01:34:02
[2026-06-12 01:34:02,557.557 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 01:34:02,712.712 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 01:34:02,715.715 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 01:34:02,854.854 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 01:34:02,859.859 INFO    ] time= 12/06/2026 01:34:02
[2026-06-12 01:34:02,910.910 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 01:34:02,949.949 INFO    ] Checking for existing commands in stream...
[2026-06-12 01:34:03,065.065 INFO    ] No existing commands found in stream
[2026-06-12 01:34:08,094.094 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 01:34:08,095.095 INFO    ] Waiting 2.97 seconds before fallback handling...
[2026-06-12 01:34:11,431.431 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 01:34:11,433.433 INFO    ] Checking for system updates...
[2026-06-12 01:34:11,453.453 INFO    ] 200
[2026-06-12 01:34:11,455.455 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:34:11,490.490 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 01:34:11,492.492 INFO    ] No update needed
[2026-06-12 01:34:11,493.493 INFO    ] Checking for camera pi updates...
[2026-06-12 01:34:11,513.513 INFO    ] 200
[2026-06-12 01:34:11,514.514 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:34:11,537.537 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 01:34:11,566.566 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 01:34:11,567.567 INFO    ] No camera update needed
[2026-06-12 01:34:11,568.568 INFO    ] Script finished. Safe exiting...
[2026-06-12 01:34:11,569.569 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 01:34:11,572.572 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 01:34:11,575.575 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 01:34:13,616.616 INFO    ] ================================================
[2026-06-12 01:34:13,631.631 INFO    ] Launching Daemon at Fri Jun 12 01:34:13 IST 2026
[2026-06-12 01:34:13,642.642 INFO    ] ================================================
[2026-06-12 01:34:13,991.991 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 01:34:13
[2026-06-12 01:34:14,304.304 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 01:34:14,435.435 INFO    ] Initializing speech engine...
[2026-06-12 01:34:14,439.439 INFO    ] 2026-06-12 01:34:14
[2026-06-12 01:34:14,666.666 INFO    ] 2026-06-12 01:34:14
[2026-06-12 01:34:14,697.697 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 01:34:14,888.888 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 01:34:14,897.897 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 01:34:15,043.043 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 01:34:15,106.106 INFO    ] time= 12/06/2026 01:34:15
[2026-06-12 01:34:15,140.140 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 01:34:15,142.142 INFO    ] Checking for existing commands in stream...
[2026-06-12 01:34:15,217.217 INFO    ] No existing commands found in stream
[2026-06-12 01:34:20,228.228 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 01:34:20,231.231 INFO    ] Waiting 0.17 seconds before fallback handling...
[2026-06-12 01:34:20,746.746 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 01:34:20,748.748 INFO    ] Checking for system updates...
[2026-06-12 01:34:20,770.770 INFO    ] 200
[2026-06-12 01:34:20,771.771 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:34:20,801.801 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 01:34:20,803.803 INFO    ] No update needed
[2026-06-12 01:34:20,804.804 INFO    ] Checking for camera pi updates...
[2026-06-12 01:34:20,826.826 INFO    ] 200
[2026-06-12 01:34:20,827.827 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:34:20,853.853 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 01:34:20,906.906 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 01:34:20,907.907 INFO    ] No camera update needed
[2026-06-12 01:34:20,909.909 INFO    ] Script finished. Safe exiting...
[2026-06-12 01:34:20,910.910 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 01:34:20,913.913 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 01:34:20,916.916 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 01:34:22,954.954 INFO    ] ================================================
[2026-06-12 01:34:22,969.969 INFO    ] Launching Daemon at Fri Jun 12 01:34:22 IST 2026
[2026-06-12 01:34:22,979.979 INFO    ] ================================================
[2026-06-12 01:34:23,343.343 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 01:34:23
[2026-06-12 01:34:23,658.658 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 01:34:23,799.799 INFO    ] Initializing speech engine...
[2026-06-12 01:34:23,809.809 INFO    ] 2026-06-12 01:34:23
[2026-06-12 01:34:24,024.024 INFO    ] 2026-06-12 01:34:23
[2026-06-12 01:34:24,055.055 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 01:34:24,249.249 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 01:34:24,252.252 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 01:34:24,394.394 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 01:34:24,456.456 INFO    ] time= 12/06/2026 01:34:24
[2026-06-12 01:34:24,489.489 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 01:34:24,491.491 INFO    ] Checking for existing commands in stream...
[2026-06-12 01:34:24,561.561 INFO    ] No existing commands found in stream
[2026-06-12 01:34:29,572.572 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 01:34:29,575.575 INFO    ] Waiting 1.32 seconds before fallback handling...
[2026-06-12 01:34:31,256.256 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 01:34:31,258.258 INFO    ] Checking for system updates...
[2026-06-12 01:34:31,278.278 INFO    ] 200
[2026-06-12 01:34:31,279.279 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:34:31,310.310 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 01:34:31,312.312 INFO    ] No update needed
[2026-06-12 01:34:31,313.313 INFO    ] Checking for camera pi updates...
[2026-06-12 01:34:31,332.332 INFO    ] 200
[2026-06-12 01:34:31,334.334 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:34:31,358.358 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 01:34:31,401.401 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 01:34:31,402.402 INFO    ] No camera update needed
[2026-06-12 01:34:31,404.404 INFO    ] Script finished. Safe exiting...
[2026-06-12 01:34:31,405.405 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 01:34:31,408.408 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 01:34:31,410.410 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 01:34:33,442.442 INFO    ] ================================================
[2026-06-12 01:34:33,457.457 INFO    ] Launching Daemon at Fri Jun 12 01:34:33 IST 2026
[2026-06-12 01:34:33,468.468 INFO    ] ================================================
[2026-06-12 01:34:33,826.826 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 01:34:33
[2026-06-12 01:34:34,140.140 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 01:34:34,270.270 INFO    ] Initializing speech engine...
[2026-06-12 01:34:34,278.278 INFO    ] 2026-06-12 01:34:34
[2026-06-12 01:34:34,489.489 INFO    ] 2026-06-12 01:34:34
[2026-06-12 01:34:34,518.518 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 01:34:34,701.701 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 01:34:34,704.704 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 01:34:34,839.839 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 01:34:34,906.906 INFO    ] time= 12/06/2026 01:34:34
[2026-06-12 01:34:34,930.930 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 01:34:34,937.937 INFO    ] Checking for existing commands in stream...
[2026-06-12 01:34:35,004.004 INFO    ] No existing commands found in stream
[2026-06-12 01:34:40,018.018 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 01:34:40,021.021 INFO    ] Waiting 1.03 seconds before fallback handling...
[2026-06-12 01:34:41,442.442 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 01:34:41,444.444 INFO    ] Checking for system updates...
[2026-06-12 01:34:41,465.465 INFO    ] 200
[2026-06-12 01:34:41,466.466 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:34:41,496.496 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 01:34:41,497.497 INFO    ] No update needed
[2026-06-12 01:34:41,499.499 INFO    ] Checking for camera pi updates...
[2026-06-12 01:34:41,519.519 INFO    ] 200
[2026-06-12 01:34:41,521.521 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:34:41,547.547 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 01:34:41,589.589 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 01:34:41,591.591 INFO    ] No camera update needed
[2026-06-12 01:34:41,592.592 INFO    ] Script finished. Safe exiting...
[2026-06-12 01:34:41,593.593 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 01:34:41,596.596 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 01:34:41,600.600 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 01:34:43,641.641 INFO    ] ================================================
[2026-06-12 01:34:43,656.656 INFO    ] Launching Daemon at Fri Jun 12 01:34:43 IST 2026
[2026-06-12 01:34:43,667.667 INFO    ] ================================================
[2026-06-12 01:34:44,027.027 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 01:34:44
[2026-06-12 01:34:44,356.356 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 01:34:44,506.506 INFO    ] Initializing speech engine...
[2026-06-12 01:34:44,512.512 INFO    ] 2026-06-12 01:34:44
[2026-06-12 01:34:44,720.720 INFO    ] 2026-06-12 01:34:44
[2026-06-12 01:34:44,748.748 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 01:34:44,935.935 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 01:34:44,939.939 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 01:34:45,076.076 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 01:34:45,135.135 INFO    ] time= 12/06/2026 01:34:45
[2026-06-12 01:34:45,169.169 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 01:34:45,175.175 INFO    ] Checking for existing commands in stream...
[2026-06-12 01:34:45,242.242 INFO    ] No existing commands found in stream
[2026-06-12 01:34:50,252.252 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 01:34:50,255.255 INFO    ] Waiting 3.08 seconds before fallback handling...
[2026-06-12 01:34:53,706.706 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 01:34:53,708.708 INFO    ] Checking for system updates...
[2026-06-12 01:34:53,734.734 INFO    ] 200
[2026-06-12 01:34:53,735.735 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:34:53,772.772 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 01:34:53,773.773 INFO    ] No update needed
[2026-06-12 01:34:53,775.775 INFO    ] Checking for camera pi updates...
[2026-06-12 01:34:53,798.798 INFO    ] 200
[2026-06-12 01:34:53,799.799 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:34:53,822.822 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 01:34:53,863.863 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 01:34:53,864.864 INFO    ] No camera update needed
[2026-06-12 01:34:53,865.865 INFO    ] Script finished. Safe exiting...
[2026-06-12 01:34:53,867.867 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 01:34:53,870.870 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 01:34:53,873.873 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 01:34:55,910.910 INFO    ] ================================================
[2026-06-12 01:34:55,925.925 INFO    ] Launching Daemon at Fri Jun 12 01:34:55 IST 2026
[2026-06-12 01:34:55,936.936 INFO    ] ================================================
[2026-06-12 01:34:56,272.272 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 01:34:56
[2026-06-12 01:34:56,600.600 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 01:34:56,737.737 INFO    ] Initializing speech engine...
[2026-06-12 01:34:56,750.750 INFO    ] 2026-06-12 01:34:56
[2026-06-12 01:34:56,965.965 INFO    ] 2026-06-12 01:34:56
[2026-06-12 01:34:56,993.993 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 01:34:57,114.114 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 01:34:57,176.176 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 01:34:57,312.312 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 01:34:57,357.357 INFO    ] time= 12/06/2026 01:34:57
[2026-06-12 01:34:57,406.406 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 01:34:57,411.411 INFO    ] Checking for existing commands in stream...
[2026-06-12 01:34:57,482.482 INFO    ] No existing commands found in stream
[2026-06-12 01:35:02,491.491 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 01:35:02,493.493 INFO    ] Waiting 2.78 seconds before fallback handling...
[2026-06-12 01:35:05,673.673 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 01:35:05,675.675 INFO    ] Checking for system updates...
[2026-06-12 01:35:05,695.695 INFO    ] 200
[2026-06-12 01:35:05,697.697 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:35:05,727.727 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 01:35:05,728.728 INFO    ] No update needed
[2026-06-12 01:35:05,729.729 INFO    ] Checking for camera pi updates...
[2026-06-12 01:35:05,750.750 INFO    ] 200
[2026-06-12 01:35:05,752.752 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:35:05,776.776 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 01:35:05,821.821 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 01:35:05,823.823 INFO    ] No camera update needed
[2026-06-12 01:35:05,824.824 INFO    ] Script finished. Safe exiting...
[2026-06-12 01:35:05,825.825 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 01:35:05,828.828 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 01:35:05,832.832 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 01:35:07,870.870 INFO    ] ================================================
[2026-06-12 01:35:07,885.885 INFO    ] Launching Daemon at Fri Jun 12 01:35:07 IST 2026
[2026-06-12 01:35:07,896.896 INFO    ] ================================================
[2026-06-12 01:35:08,242.242 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 01:35:08
[2026-06-12 01:35:08,557.557 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 01:35:08,701.701 INFO    ] Initializing speech engine...
[2026-06-12 01:35:08,707.707 INFO    ] 2026-06-12 01:35:08
[2026-06-12 01:35:08,914.914 INFO    ] 2026-06-12 01:35:08
[2026-06-12 01:35:08,943.943 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 01:35:09,126.126 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 01:35:09,135.135 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 01:35:09,263.263 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 01:35:09,265.265 INFO    ] time= 12/06/2026 01:35:09
[2026-06-12 01:35:09,266.266 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 01:35:09,267.267 INFO    ] Checking for existing commands in stream...
[2026-06-12 01:35:09,331.331 INFO    ] No existing commands found in stream
[2026-06-12 01:35:14,340.340 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 01:35:14,343.343 INFO    ] Waiting 1.16 seconds before fallback handling...
[2026-06-12 01:35:15,884.884 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 01:35:15,885.885 INFO    ] Checking for system updates...
[2026-06-12 01:35:15,907.907 INFO    ] 200
[2026-06-12 01:35:15,908.908 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:35:15,940.940 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 01:35:15,941.941 INFO    ] No update needed
[2026-06-12 01:35:15,943.943 INFO    ] Checking for camera pi updates...
[2026-06-12 01:35:15,962.962 INFO    ] 200
[2026-06-12 01:35:15,963.963 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:35:15,986.986 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 01:35:16,026.026 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 01:35:16,027.027 INFO    ] No camera update needed
[2026-06-12 01:35:16,028.028 INFO    ] Script finished. Safe exiting...
[2026-06-12 01:35:16,030.030 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 01:35:16,033.033 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 01:35:16,035.035 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 01:35:18,077.077 INFO    ] ================================================
[2026-06-12 01:35:18,093.093 INFO    ] Launching Daemon at Fri Jun 12 01:35:18 IST 2026
[2026-06-12 01:35:18,104.104 INFO    ] ================================================
[2026-06-12 01:35:18,436.436 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 01:35:18
[2026-06-12 01:35:18,752.752 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 01:35:18,888.888 INFO    ] Initializing speech engine...
[2026-06-12 01:35:18,892.892 INFO    ] 2026-06-12 01:35:18
[2026-06-12 01:35:19,119.119 INFO    ] 2026-06-12 01:35:19
[2026-06-12 01:35:19,150.150 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 01:35:19,344.344 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 01:35:19,347.347 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 01:35:19,491.491 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 01:35:19,556.556 INFO    ] time= 12/06/2026 01:35:19
[2026-06-12 01:35:19,587.587 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 01:35:19,594.594 INFO    ] Checking for existing commands in stream...
[2026-06-12 01:35:19,665.665 INFO    ] No existing commands found in stream
[2026-06-12 01:35:24,679.679 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 01:35:24,682.682 INFO    ] Waiting 0.14 seconds before fallback handling...
[2026-06-12 01:35:25,179.179 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 01:35:25,181.181 INFO    ] Checking for system updates...
[2026-06-12 01:35:25,203.203 INFO    ] 200
[2026-06-12 01:35:25,205.205 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:35:25,238.238 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 01:35:25,239.239 INFO    ] No update needed
[2026-06-12 01:35:25,241.241 INFO    ] Checking for camera pi updates...
[2026-06-12 01:35:25,261.261 INFO    ] 200
[2026-06-12 01:35:25,263.263 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:35:25,285.285 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 01:35:25,328.328 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 01:35:25,329.329 INFO    ] No camera update needed
[2026-06-12 01:35:25,330.330 INFO    ] Script finished. Safe exiting...
[2026-06-12 01:35:25,332.332 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 01:35:25,334.334 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 01:35:25,337.337 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 01:35:27,375.375 INFO    ] ================================================
[2026-06-12 01:35:27,391.391 INFO    ] Launching Daemon at Fri Jun 12 01:35:27 IST 2026
[2026-06-12 01:35:27,402.402 INFO    ] ================================================
[2026-06-12 01:35:27,767.767 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 01:35:27
[2026-06-12 01:35:28,077.077 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 01:35:28,215.215 INFO    ] Initializing speech engine...
[2026-06-12 01:35:28,225.225 INFO    ] 2026-06-12 01:35:28
[2026-06-12 01:35:28,428.428 INFO    ] 2026-06-12 01:35:28
[2026-06-12 01:35:28,455.455 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 01:35:28,642.642 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 01:35:28,652.652 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 01:35:28,795.795 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 01:35:28,847.847 INFO    ] time= 12/06/2026 01:35:28
[2026-06-12 01:35:28,869.869 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 01:35:28,876.876 INFO    ] Checking for existing commands in stream...
[2026-06-12 01:35:28,943.943 INFO    ] No existing commands found in stream
[2026-06-12 01:35:33,951.951 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 01:35:33,954.954 INFO    ] Waiting 3.99 seconds before fallback handling...
[2026-06-12 01:35:38,313.313 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 01:35:38,314.314 INFO    ] Checking for system updates...
[2026-06-12 01:35:38,335.335 INFO    ] 200
[2026-06-12 01:35:38,336.336 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:35:38,366.366 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 01:35:38,367.367 INFO    ] No update needed
[2026-06-12 01:35:38,368.368 INFO    ] Checking for camera pi updates...
[2026-06-12 01:35:38,390.390 INFO    ] 200
[2026-06-12 01:35:38,391.391 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:35:38,414.414 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 01:35:38,459.459 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 01:35:38,461.461 INFO    ] No camera update needed
[2026-06-12 01:35:38,462.462 INFO    ] Script finished. Safe exiting...
[2026-06-12 01:35:38,463.463 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 01:35:38,466.466 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 01:35:38,469.469 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 01:35:40,509.509 INFO    ] ================================================
[2026-06-12 01:35:40,525.525 INFO    ] Launching Daemon at Fri Jun 12 01:35:40 IST 2026
[2026-06-12 01:35:40,538.538 INFO    ] ================================================
[2026-06-12 01:35:40,876.876 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 01:35:40
[2026-06-12 01:35:41,211.211 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 01:35:41,356.356 INFO    ] Initializing speech engine...
[2026-06-12 01:35:41,366.366 INFO    ] 2026-06-12 01:35:41
[2026-06-12 01:35:41,574.574 INFO    ] 2026-06-12 01:35:41
[2026-06-12 01:35:41,603.603 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 01:35:41,786.786 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 01:35:41,790.790 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 01:35:41,937.937 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 01:35:41,995.995 INFO    ] time= 12/06/2026 01:35:41
[2026-06-12 01:35:42,017.017 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 01:35:42,024.024 INFO    ] Checking for existing commands in stream...
[2026-06-12 01:35:42,092.092 INFO    ] No existing commands found in stream
[2026-06-12 01:35:47,117.117 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 01:35:47,120.120 INFO    ] Waiting 2.09 seconds before fallback handling...
[2026-06-12 01:35:49,595.595 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 01:35:49,596.596 INFO    ] Checking for system updates...
[2026-06-12 01:35:49,617.617 INFO    ] 200
[2026-06-12 01:35:49,618.618 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:35:49,653.653 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 01:35:49,654.654 INFO    ] No update needed
[2026-06-12 01:35:49,655.655 INFO    ] Checking for camera pi updates...
[2026-06-12 01:35:49,676.676 INFO    ] 200
[2026-06-12 01:35:49,677.677 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:35:49,700.700 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 01:35:49,743.743 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 01:35:49,744.744 INFO    ] No camera update needed
[2026-06-12 01:35:49,745.745 INFO    ] Script finished. Safe exiting...
[2026-06-12 01:35:49,746.746 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 01:35:49,749.749 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 01:35:49,753.753 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 01:35:51,792.792 INFO    ] ================================================
[2026-06-12 01:35:51,809.809 INFO    ] Launching Daemon at Fri Jun 12 01:35:51 IST 2026
[2026-06-12 01:35:51,820.820 INFO    ] ================================================
[2026-06-12 01:35:52,201.201 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 01:35:52
[2026-06-12 01:35:52,534.534 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 01:35:52,685.685 INFO    ] Initializing speech engine...
[2026-06-12 01:35:52,691.691 INFO    ] 2026-06-12 01:35:52
[2026-06-12 01:35:52,901.901 INFO    ] 2026-06-12 01:35:52
[2026-06-12 01:35:52,930.930 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 01:35:53,115.115 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 01:35:53,119.119 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 01:35:53,252.252 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 01:35:53,320.320 INFO    ] time= 12/06/2026 01:35:53
[2026-06-12 01:35:53,348.348 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 01:35:53,355.355 INFO    ] Checking for existing commands in stream...
[2026-06-12 01:35:53,423.423 INFO    ] No existing commands found in stream
[2026-06-12 01:35:58,433.433 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 01:35:58,436.436 INFO    ] Waiting 3.89 seconds before fallback handling...
[2026-06-12 01:36:02,638.638 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 01:36:02,640.640 INFO    ] Checking for system updates...
[2026-06-12 01:36:02,661.661 INFO    ] 200
[2026-06-12 01:36:02,662.662 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:36:02,695.695 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 01:36:02,696.696 INFO    ] No update needed
[2026-06-12 01:36:02,698.698 INFO    ] Checking for camera pi updates...
[2026-06-12 01:36:02,718.718 INFO    ] 200
[2026-06-12 01:36:02,720.720 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:36:02,743.743 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 01:36:02,783.783 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 01:36:02,784.784 INFO    ] No camera update needed
[2026-06-12 01:36:02,786.786 INFO    ] Script finished. Safe exiting...
[2026-06-12 01:36:02,787.787 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 01:36:02,790.790 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 01:36:02,793.793 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 01:36:04,833.833 INFO    ] ================================================
[2026-06-12 01:36:04,849.849 INFO    ] Launching Daemon at Fri Jun 12 01:36:04 IST 2026
[2026-06-12 01:36:04,861.861 INFO    ] ================================================
[2026-06-12 01:36:05,232.232 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 01:36:05
[2026-06-12 01:36:05,567.567 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 01:36:05,721.721 INFO    ] Initializing speech engine...
[2026-06-12 01:36:05,729.729 INFO    ] 2026-06-12 01:36:05
[2026-06-12 01:36:05,948.948 INFO    ] 2026-06-12 01:36:05
[2026-06-12 01:36:05,977.977 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 01:36:06,165.165 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 01:36:06,174.174 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 01:36:06,322.322 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 01:36:06,376.376 INFO    ] time= 12/06/2026 01:36:06
[2026-06-12 01:36:06,399.399 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 01:36:06,405.405 INFO    ] Checking for existing commands in stream...
[2026-06-12 01:36:06,473.473 INFO    ] No existing commands found in stream
[2026-06-12 01:36:11,487.487 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 01:36:11,491.491 INFO    ] Waiting 3.03 seconds before fallback handling...
[2026-06-12 01:36:14,909.909 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 01:36:14,911.911 INFO    ] Checking for system updates...
[2026-06-12 01:36:14,932.932 INFO    ] 200
[2026-06-12 01:36:14,934.934 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:36:14,966.966 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 01:36:14,968.968 INFO    ] No update needed
[2026-06-12 01:36:14,970.970 INFO    ] Checking for camera pi updates...
[2026-06-12 01:36:14,991.991 INFO    ] 200
[2026-06-12 01:36:14,992.992 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:36:15,018.018 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 01:36:15,062.062 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 01:36:15,064.064 INFO    ] No camera update needed
[2026-06-12 01:36:15,065.065 INFO    ] Script finished. Safe exiting...
[2026-06-12 01:36:15,066.066 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 01:36:15,070.070 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 01:36:15,073.073 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 01:36:17,112.112 INFO    ] ================================================
[2026-06-12 01:36:17,128.128 INFO    ] Launching Daemon at Fri Jun 12 01:36:17 IST 2026
[2026-06-12 01:36:17,139.139 INFO    ] ================================================
[2026-06-12 01:36:17,505.505 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 01:36:17
[2026-06-12 01:36:17,818.818 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 01:36:17,969.969 INFO    ] Initializing speech engine...
[2026-06-12 01:36:17,974.974 INFO    ] 2026-06-12 01:36:17
[2026-06-12 01:36:18,184.184 INFO    ] 2026-06-12 01:36:18
[2026-06-12 01:36:18,214.214 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 01:36:18,401.401 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 01:36:18,410.410 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 01:36:18,542.542 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 01:36:18,606.606 INFO    ] time= 12/06/2026 01:36:18
[2026-06-12 01:36:18,636.636 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 01:36:18,643.643 INFO    ] Checking for existing commands in stream...
[2026-06-12 01:36:18,710.710 INFO    ] No existing commands found in stream
[2026-06-12 01:36:23,725.725 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 01:36:23,728.728 INFO    ] Waiting 3.60 seconds before fallback handling...
[2026-06-12 01:36:27,719.719 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 01:36:27,721.721 INFO    ] Checking for system updates...
[2026-06-12 01:36:27,742.742 INFO    ] 200
[2026-06-12 01:36:27,744.744 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:36:27,777.777 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 01:36:27,778.778 INFO    ] No update needed
[2026-06-12 01:36:27,780.780 INFO    ] Checking for camera pi updates...
[2026-06-12 01:36:27,802.802 INFO    ] 200
[2026-06-12 01:36:27,803.803 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:36:27,827.827 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 01:36:27,872.872 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 01:36:27,873.873 INFO    ] No camera update needed
[2026-06-12 01:36:27,875.875 INFO    ] Script finished. Safe exiting...
[2026-06-12 01:36:27,876.876 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 01:36:27,879.879 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 01:36:27,882.882 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 01:36:29,923.923 INFO    ] ================================================
[2026-06-12 01:36:29,938.938 INFO    ] Launching Daemon at Fri Jun 12 01:36:29 IST 2026
[2026-06-12 01:36:29,948.948 INFO    ] ================================================
[2026-06-12 01:36:30,266.266 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 01:36:30
[2026-06-12 01:36:30,578.578 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 01:36:30,722.722 INFO    ] Initializing speech engine...
[2026-06-12 01:36:30,727.727 INFO    ] 2026-06-12 01:36:30
[2026-06-12 01:36:30,932.932 INFO    ] 2026-06-12 01:36:30
[2026-06-12 01:36:30,962.962 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 01:36:31,147.147 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 01:36:31,157.157 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 01:36:31,288.288 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 01:36:31,352.352 INFO    ] time= 12/06/2026 01:36:31
[2026-06-12 01:36:31,380.380 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 01:36:31,386.386 INFO    ] Checking for existing commands in stream...
[2026-06-12 01:36:31,454.454 INFO    ] No existing commands found in stream
[2026-06-12 01:36:36,463.463 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 01:36:36,466.466 INFO    ] Waiting 2.70 seconds before fallback handling...
[2026-06-12 01:36:39,516.516 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 01:36:39,518.518 INFO    ] Checking for system updates...
[2026-06-12 01:36:39,538.538 INFO    ] 200
[2026-06-12 01:36:39,540.540 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:36:39,570.570 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 01:36:39,572.572 INFO    ] No update needed
[2026-06-12 01:36:39,573.573 INFO    ] Checking for camera pi updates...
[2026-06-12 01:36:39,592.592 INFO    ] 200
[2026-06-12 01:36:39,594.594 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:36:39,618.618 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 01:36:39,660.660 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 01:36:39,661.661 INFO    ] No camera update needed
[2026-06-12 01:36:39,663.663 INFO    ] Script finished. Safe exiting...
[2026-06-12 01:36:39,664.664 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 01:36:39,667.667 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 01:36:39,669.669 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 01:36:41,711.711 INFO    ] ================================================
[2026-06-12 01:36:41,727.727 INFO    ] Launching Daemon at Fri Jun 12 01:36:41 IST 2026
[2026-06-12 01:36:41,737.737 INFO    ] ================================================
[2026-06-12 01:36:42,082.082 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 01:36:42
[2026-06-12 01:36:42,416.416 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 01:36:42,560.560 INFO    ] Initializing speech engine...
[2026-06-12 01:36:42,565.565 INFO    ] 2026-06-12 01:36:42
[2026-06-12 01:36:42,770.770 INFO    ] 2026-06-12 01:36:42
[2026-06-12 01:36:42,800.800 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 01:36:42,986.986 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 01:36:42,995.995 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 01:36:43,148.148 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 01:36:43,198.198 INFO    ] time= 12/06/2026 01:36:43
[2026-06-12 01:36:43,219.219 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 01:36:43,226.226 INFO    ] Checking for existing commands in stream...
[2026-06-12 01:36:43,291.291 INFO    ] No existing commands found in stream
[2026-06-12 01:36:48,302.302 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 01:36:48,305.305 INFO    ] Waiting 0.23 seconds before fallback handling...
[2026-06-12 01:36:48,858.858 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 01:36:48,860.860 INFO    ] Checking for system updates...
[2026-06-12 01:36:48,881.881 INFO    ] 200
[2026-06-12 01:36:48,882.882 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:36:48,912.912 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 01:36:48,913.913 INFO    ] No update needed
[2026-06-12 01:36:48,915.915 INFO    ] Checking for camera pi updates...
[2026-06-12 01:36:48,934.934 INFO    ] 200
[2026-06-12 01:36:48,935.935 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:36:48,958.958 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 01:36:48,998.998 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 01:36:48,999.999 INFO    ] No camera update needed
[2026-06-12 01:36:49,001.001 INFO    ] Script finished. Safe exiting...
[2026-06-12 01:36:49,002.002 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 01:36:49,005.005 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 01:36:49,008.008 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 01:36:51,046.046 INFO    ] ================================================
[2026-06-12 01:36:51,061.061 INFO    ] Launching Daemon at Fri Jun 12 01:36:51 IST 2026
[2026-06-12 01:36:51,072.072 INFO    ] ================================================
[2026-06-12 01:36:51,414.414 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 01:36:51
[2026-06-12 01:36:51,727.727 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 01:36:51,870.870 INFO    ] Initializing speech engine...
[2026-06-12 01:36:51,875.875 INFO    ] 2026-06-12 01:36:51
[2026-06-12 01:36:52,081.081 INFO    ] 2026-06-12 01:36:52
[2026-06-12 01:36:52,109.109 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 01:36:52,296.296 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 01:36:52,300.300 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 01:36:52,438.438 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 01:36:52,492.492 INFO    ] time= 12/06/2026 01:36:52
[2026-06-12 01:36:52,531.531 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 01:36:52,533.533 INFO    ] Checking for existing commands in stream...
[2026-06-12 01:36:52,605.605 INFO    ] No existing commands found in stream
[2026-06-12 01:36:57,614.614 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 01:36:57,617.617 INFO    ] Waiting 3.48 seconds before fallback handling...
[2026-06-12 01:37:01,472.472 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 01:37:01,473.473 INFO    ] Checking for system updates...
[2026-06-12 01:37:01,494.494 INFO    ] 200
[2026-06-12 01:37:01,495.495 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:37:01,528.528 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 01:37:01,529.529 INFO    ] No update needed
[2026-06-12 01:37:01,530.530 INFO    ] Checking for camera pi updates...
[2026-06-12 01:37:01,551.551 INFO    ] 200
[2026-06-12 01:37:01,553.553 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:37:01,576.576 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 01:37:01,604.604 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 01:37:01,605.605 INFO    ] No camera update needed
[2026-06-12 01:37:01,607.607 INFO    ] Script finished. Safe exiting...
[2026-06-12 01:37:01,608.608 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 01:37:01,611.611 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 01:37:01,614.614 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 01:37:03,647.647 INFO    ] ================================================
[2026-06-12 01:37:03,662.662 INFO    ] Launching Daemon at Fri Jun 12 01:37:03 IST 2026
[2026-06-12 01:37:03,673.673 INFO    ] ================================================
[2026-06-12 01:37:04,030.030 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 01:37:04
[2026-06-12 01:37:04,350.350 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 01:37:04,485.485 INFO    ] Initializing speech engine...
[2026-06-12 01:37:04,490.490 INFO    ] 2026-06-12 01:37:04
[2026-06-12 01:37:04,723.723 INFO    ] 2026-06-12 01:37:04
[2026-06-12 01:37:04,753.753 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 01:37:04,955.955 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 01:37:04,964.964 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 01:37:05,099.099 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 01:37:05,150.150 INFO    ] time= 12/06/2026 01:37:05
[2026-06-12 01:37:05,190.190 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 01:37:05,208.208 INFO    ] Checking for existing commands in stream...
[2026-06-12 01:37:05,284.284 INFO    ] No existing commands found in stream
[2026-06-12 01:37:10,295.295 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 01:37:10,298.298 INFO    ] Waiting 3.36 seconds before fallback handling...
[2026-06-12 01:37:14,030.030 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 01:37:14,032.032 INFO    ] Checking for system updates...
[2026-06-12 01:37:14,053.053 INFO    ] 200
[2026-06-12 01:37:14,054.054 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:37:14,087.087 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 01:37:14,088.088 INFO    ] No update needed
[2026-06-12 01:37:14,090.090 INFO    ] Checking for camera pi updates...
[2026-06-12 01:37:14,110.110 INFO    ] 200
[2026-06-12 01:37:14,112.112 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:37:14,137.137 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 01:37:14,177.177 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 01:37:14,178.178 INFO    ] No camera update needed
[2026-06-12 01:37:14,179.179 INFO    ] Script finished. Safe exiting...
[2026-06-12 01:37:14,181.181 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 01:37:14,184.184 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 01:37:14,186.186 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 01:37:16,226.226 INFO    ] ================================================
[2026-06-12 01:37:16,241.241 INFO    ] Launching Daemon at Fri Jun 12 01:37:16 IST 2026
[2026-06-12 01:37:16,252.252 INFO    ] ================================================
[2026-06-12 01:37:16,624.624 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 01:37:16
[2026-06-12 01:37:16,964.964 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 01:37:17,118.118 INFO    ] Initializing speech engine...
[2026-06-12 01:37:17,123.123 INFO    ] 2026-06-12 01:37:17
[2026-06-12 01:37:17,330.330 INFO    ] 2026-06-12 01:37:17
[2026-06-12 01:37:17,359.359 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 01:37:17,542.542 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 01:37:17,551.551 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 01:37:17,680.680 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 01:37:17,747.747 INFO    ] time= 12/06/2026 01:37:17
[2026-06-12 01:37:17,771.771 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 01:37:17,777.777 INFO    ] Checking for existing commands in stream...
[2026-06-12 01:37:17,844.844 INFO    ] No existing commands found in stream
[2026-06-12 01:37:22,858.858 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 01:37:22,862.862 INFO    ] Waiting 0.58 seconds before fallback handling...
[2026-06-12 01:37:23,840.840 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 01:37:23,842.842 INFO    ] Checking for system updates...
[2026-06-12 01:37:23,863.863 INFO    ] 200
[2026-06-12 01:37:23,864.864 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:37:23,895.895 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 01:37:23,896.896 INFO    ] No update needed
[2026-06-12 01:37:23,898.898 INFO    ] Checking for camera pi updates...
[2026-06-12 01:37:23,917.917 INFO    ] 200
[2026-06-12 01:37:23,919.919 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:37:23,942.942 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 01:37:23,994.994 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 01:37:23,996.996 INFO    ] No camera update needed
[2026-06-12 01:37:23,997.997 INFO    ] Script finished. Safe exiting...
[2026-06-12 01:37:23,998.998 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 01:37:24,002.002 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 01:37:24,005.005 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 01:37:26,043.043 INFO    ] ================================================
[2026-06-12 01:37:26,058.058 INFO    ] Launching Daemon at Fri Jun 12 01:37:26 IST 2026
[2026-06-12 01:37:26,069.069 INFO    ] ================================================
[2026-06-12 01:37:26,442.442 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 01:37:26
[2026-06-12 01:37:26,780.780 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 01:37:26,931.931 INFO    ] Initializing speech engine...
[2026-06-12 01:37:26,937.937 INFO    ] 2026-06-12 01:37:26
[2026-06-12 01:37:27,144.144 INFO    ] 2026-06-12 01:37:27
[2026-06-12 01:37:27,174.174 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 01:37:27,357.357 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 01:37:27,367.367 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 01:37:27,506.506 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 01:37:27,563.563 INFO    ] time= 12/06/2026 01:37:27
[2026-06-12 01:37:27,588.588 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 01:37:27,593.593 INFO    ] Checking for existing commands in stream...
[2026-06-12 01:37:27,661.661 INFO    ] No existing commands found in stream
[2026-06-12 01:37:32,675.675 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 01:37:32,679.679 INFO    ] Waiting 0.16 seconds before fallback handling...
[2026-06-12 01:37:33,802.802 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 01:37:33,805.805 INFO    ] Checking for system updates...
[2026-06-12 01:37:33,842.842 INFO    ] 200
[2026-06-12 01:37:33,845.845 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:37:33,906.906 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 01:37:33,908.908 INFO    ] No update needed
[2026-06-12 01:37:33,911.911 INFO    ] Checking for camera pi updates...
[2026-06-12 01:37:33,931.931 INFO    ] 200
[2026-06-12 01:37:33,933.933 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:37:33,956.956 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 01:37:34,001.001 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 01:37:34,002.002 INFO    ] No camera update needed
[2026-06-12 01:37:34,004.004 INFO    ] Script finished. Safe exiting...
[2026-06-12 01:37:34,005.005 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 01:37:34,009.009 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 01:37:34,012.012 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 01:37:36,051.051 INFO    ] ================================================
[2026-06-12 01:37:36,066.066 INFO    ] Launching Daemon at Fri Jun 12 01:37:36 IST 2026
[2026-06-12 01:37:36,078.078 INFO    ] ================================================
[2026-06-12 01:37:36,458.458 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 01:37:36
[2026-06-12 01:37:36,796.796 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 01:37:36,946.946 INFO    ] Initializing speech engine...
[2026-06-12 01:37:36,952.952 INFO    ] 2026-06-12 01:37:36
[2026-06-12 01:37:37,160.160 INFO    ] 2026-06-12 01:37:37
[2026-06-12 01:37:37,188.188 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 01:37:37,382.382 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 01:37:37,398.398 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 01:37:37,528.528 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 01:37:37,582.582 INFO    ] time= 12/06/2026 01:37:37
[2026-06-12 01:37:37,604.604 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 01:37:37,610.610 INFO    ] Checking for existing commands in stream...
[2026-06-12 01:37:37,678.678 INFO    ] No existing commands found in stream
[2026-06-12 01:37:42,683.683 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 01:37:42,687.687 INFO    ] Waiting 1.11 seconds before fallback handling...
[2026-06-12 01:37:44,197.197 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 01:37:44,200.200 INFO    ] Checking for system updates...
[2026-06-12 01:37:44,242.242 INFO    ] 200
[2026-06-12 01:37:44,245.245 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:37:44,287.287 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 01:37:44,289.289 INFO    ] No update needed
[2026-06-12 01:37:44,290.290 INFO    ] Checking for camera pi updates...
[2026-06-12 01:37:44,310.310 INFO    ] 200
[2026-06-12 01:37:44,311.311 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:37:44,335.335 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 01:37:44,474.474 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 01:37:44,476.476 INFO    ] No camera update needed
[2026-06-12 01:37:44,477.477 INFO    ] Script finished. Safe exiting...
[2026-06-12 01:37:44,479.479 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 01:37:44,482.482 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 01:37:44,485.485 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 01:37:46,524.524 INFO    ] ================================================
[2026-06-12 01:37:46,540.540 INFO    ] Launching Daemon at Fri Jun 12 01:37:46 IST 2026
[2026-06-12 01:37:46,551.551 INFO    ] ================================================
[2026-06-12 01:37:46,908.908 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 01:37:46
[2026-06-12 01:37:47,224.224 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 01:37:47,359.359 INFO    ] Initializing speech engine...
[2026-06-12 01:37:47,364.364 INFO    ] 2026-06-12 01:37:47
[2026-06-12 01:37:47,584.584 INFO    ] 2026-06-12 01:37:47
[2026-06-12 01:37:47,606.606 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 01:37:47,765.765 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 01:37:47,827.827 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 01:37:47,970.970 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 01:37:48,016.016 INFO    ] time= 12/06/2026 01:37:47
[2026-06-12 01:37:48,056.056 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 01:37:48,078.078 INFO    ] Checking for existing commands in stream...
[2026-06-12 01:37:48,156.156 INFO    ] No existing commands found in stream
[2026-06-12 01:37:53,175.175 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 01:37:53,178.178 INFO    ] Waiting 1.09 seconds before fallback handling...
[2026-06-12 01:37:54,617.617 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 01:37:54,618.618 INFO    ] Checking for system updates...
[2026-06-12 01:37:54,639.639 INFO    ] 200
[2026-06-12 01:37:54,640.640 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:37:54,670.670 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 01:37:54,672.672 INFO    ] No update needed
[2026-06-12 01:37:54,673.673 INFO    ] Checking for camera pi updates...
[2026-06-12 01:37:54,692.692 INFO    ] 200
[2026-06-12 01:37:54,694.694 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:37:54,717.717 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 01:37:54,755.755 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 01:37:54,757.757 INFO    ] No camera update needed
[2026-06-12 01:37:54,758.758 INFO    ] Script finished. Safe exiting...
[2026-06-12 01:37:54,759.759 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 01:37:54,762.762 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 01:37:54,765.765 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 01:37:56,803.803 INFO    ] ================================================
[2026-06-12 01:37:56,818.818 INFO    ] Launching Daemon at Fri Jun 12 01:37:56 IST 2026
[2026-06-12 01:37:56,829.829 INFO    ] ================================================
[2026-06-12 01:37:57,185.185 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 01:37:57
[2026-06-12 01:37:57,523.523 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 01:37:57,663.663 INFO    ] Initializing speech engine...
[2026-06-12 01:37:57,667.667 INFO    ] 2026-06-12 01:37:57
[2026-06-12 01:37:57,890.890 INFO    ] 2026-06-12 01:37:57
[2026-06-12 01:37:57,920.920 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 01:37:58,106.106 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 01:37:58,110.110 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 01:37:58,247.247 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 01:37:58,316.316 INFO    ] time= 12/06/2026 01:37:58
[2026-06-12 01:37:58,340.340 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 01:37:58,346.346 INFO    ] Checking for existing commands in stream...
[2026-06-12 01:37:58,414.414 INFO    ] No existing commands found in stream
[2026-06-12 01:38:03,423.423 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 01:38:03,426.426 INFO    ] Waiting 0.33 seconds before fallback handling...
[2026-06-12 01:38:04,138.138 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 01:38:04,139.139 INFO    ] Checking for system updates...
[2026-06-12 01:38:04,160.160 INFO    ] 200
[2026-06-12 01:38:04,162.162 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:38:04,195.195 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 01:38:04,197.197 INFO    ] No update needed
[2026-06-12 01:38:04,198.198 INFO    ] Checking for camera pi updates...
[2026-06-12 01:38:04,222.222 INFO    ] 200
[2026-06-12 01:38:04,223.223 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:38:04,251.251 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 01:38:04,298.298 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 01:38:04,299.299 INFO    ] No camera update needed
[2026-06-12 01:38:04,301.301 INFO    ] Script finished. Safe exiting...
[2026-06-12 01:38:04,302.302 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 01:38:04,305.305 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 01:38:04,308.308 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 01:38:06,349.349 INFO    ] ================================================
[2026-06-12 01:38:06,365.365 INFO    ] Launching Daemon at Fri Jun 12 01:38:06 IST 2026
[2026-06-12 01:38:06,375.375 INFO    ] ================================================
[2026-06-12 01:38:06,702.702 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 01:38:06
[2026-06-12 01:38:07,031.031 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 01:38:07,184.184 INFO    ] Initializing speech engine...
[2026-06-12 01:38:07,191.191 INFO    ] 2026-06-12 01:38:07
[2026-06-12 01:38:07,400.400 INFO    ] 2026-06-12 01:38:07
[2026-06-12 01:38:07,430.430 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 01:38:07,622.622 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 01:38:07,632.632 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 01:38:07,748.748 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 01:38:07,749.749 INFO    ] time= 12/06/2026 01:38:07
[2026-06-12 01:38:07,785.785 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 01:38:07,837.837 INFO    ] Checking for existing commands in stream...
[2026-06-12 01:38:07,973.973 INFO    ] No existing commands found in stream
[2026-06-12 01:38:12,990.990 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 01:38:12,994.994 INFO    ] Waiting 0.43 seconds before fallback handling...
[2026-06-12 01:38:13,813.813 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 01:38:13,815.815 INFO    ] Checking for system updates...
[2026-06-12 01:38:13,836.836 INFO    ] 200
[2026-06-12 01:38:13,837.837 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:38:13,868.868 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 01:38:13,869.869 INFO    ] No update needed
[2026-06-12 01:38:13,871.871 INFO    ] Checking for camera pi updates...
[2026-06-12 01:38:13,890.890 INFO    ] 200
[2026-06-12 01:38:13,892.892 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:38:13,915.915 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 01:38:13,960.960 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 01:38:13,962.962 INFO    ] No camera update needed
[2026-06-12 01:38:13,963.963 INFO    ] Script finished. Safe exiting...
[2026-06-12 01:38:13,965.965 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 01:38:13,968.968 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 01:38:13,971.971 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 01:38:16,009.009 INFO    ] ================================================
[2026-06-12 01:38:16,025.025 INFO    ] Launching Daemon at Fri Jun 12 01:38:16 IST 2026
[2026-06-12 01:38:16,036.036 INFO    ] ================================================
[2026-06-12 01:38:16,390.390 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 01:38:16
[2026-06-12 01:38:16,707.707 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 01:38:16,852.852 INFO    ] Initializing speech engine...
[2026-06-12 01:38:16,857.857 INFO    ] 2026-06-12 01:38:16
[2026-06-12 01:38:17,060.060 INFO    ] 2026-06-12 01:38:17
[2026-06-12 01:38:17,088.088 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 01:38:17,273.273 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 01:38:17,282.282 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 01:38:17,426.426 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 01:38:17,478.478 INFO    ] time= 12/06/2026 01:38:17
[2026-06-12 01:38:17,500.500 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 01:38:17,507.507 INFO    ] Checking for existing commands in stream...
[2026-06-12 01:38:17,573.573 INFO    ] No existing commands found in stream
[2026-06-12 01:38:22,587.587 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 01:38:22,590.590 INFO    ] Waiting 3.76 seconds before fallback handling...
[2026-06-12 01:38:26,732.732 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 01:38:26,734.734 INFO    ] Checking for system updates...
[2026-06-12 01:38:26,754.754 INFO    ] 200
[2026-06-12 01:38:26,756.756 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:38:26,786.786 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 01:38:26,788.788 INFO    ] No update needed
[2026-06-12 01:38:26,789.789 INFO    ] Checking for camera pi updates...
[2026-06-12 01:38:26,812.812 INFO    ] 200
[2026-06-12 01:38:26,813.813 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:38:26,837.837 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 01:38:26,877.877 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 01:38:26,879.879 INFO    ] No camera update needed
[2026-06-12 01:38:26,880.880 INFO    ] Script finished. Safe exiting...
[2026-06-12 01:38:26,881.881 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 01:38:26,884.884 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 01:38:26,887.887 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 01:38:28,925.925 INFO    ] ================================================
[2026-06-12 01:38:28,941.941 INFO    ] Launching Daemon at Fri Jun 12 01:38:28 IST 2026
[2026-06-12 01:38:28,952.952 INFO    ] ================================================
[2026-06-12 01:38:29,309.309 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 01:38:29
[2026-06-12 01:38:29,627.627 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 01:38:29,761.761 INFO    ] Initializing speech engine...
[2026-06-12 01:38:29,766.766 INFO    ] 2026-06-12 01:38:29
[2026-06-12 01:38:29,982.982 INFO    ] 2026-06-12 01:38:29
[2026-06-12 01:38:30,012.012 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 01:38:30,146.146 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 01:38:30,199.199 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 01:38:30,342.342 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 01:38:30,404.404 INFO    ] time= 12/06/2026 01:38:30
[2026-06-12 01:38:30,428.428 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 01:38:30,434.434 INFO    ] Checking for existing commands in stream...
[2026-06-12 01:38:30,502.502 INFO    ] No existing commands found in stream
[2026-06-12 01:38:35,516.516 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 01:38:35,519.519 INFO    ] Waiting 2.89 seconds before fallback handling...
[2026-06-12 01:38:38,771.771 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 01:38:38,773.773 INFO    ] Checking for system updates...
[2026-06-12 01:38:38,795.795 INFO    ] 200
[2026-06-12 01:38:38,796.796 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:38:38,829.829 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 01:38:38,830.830 INFO    ] No update needed
[2026-06-12 01:38:38,832.832 INFO    ] Checking for camera pi updates...
[2026-06-12 01:38:38,851.851 INFO    ] 200
[2026-06-12 01:38:38,853.853 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:38:38,875.875 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 01:38:38,926.926 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 01:38:38,928.928 INFO    ] No camera update needed
[2026-06-12 01:38:38,929.929 INFO    ] Script finished. Safe exiting...
[2026-06-12 01:38:38,930.930 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 01:38:38,933.933 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 01:38:38,936.936 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 01:38:40,976.976 INFO    ] ================================================
[2026-06-12 01:38:40,991.991 INFO    ] Launching Daemon at Fri Jun 12 01:38:40 IST 2026
[2026-06-12 01:38:41,002.002 INFO    ] ================================================
[2026-06-12 01:38:41,360.360 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 01:38:41
[2026-06-12 01:38:41,702.702 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 01:38:41,849.849 INFO    ] Initializing speech engine...
[2026-06-12 01:38:41,860.860 INFO    ] 2026-06-12 01:38:41
[2026-06-12 01:38:42,070.070 INFO    ] 2026-06-12 01:38:42
[2026-06-12 01:38:42,100.100 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 01:38:42,225.225 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 01:38:42,289.289 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 01:38:42,429.429 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 01:38:42,497.497 INFO    ] time= 12/06/2026 01:38:42
[2026-06-12 01:38:42,522.522 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 01:38:42,528.528 INFO    ] Checking for existing commands in stream...
[2026-06-12 01:38:42,595.595 INFO    ] No existing commands found in stream
[2026-06-12 01:38:47,605.605 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 01:38:47,608.608 INFO    ] Waiting 0.39 seconds before fallback handling...
[2026-06-12 01:38:48,392.392 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 01:38:48,394.394 INFO    ] Checking for system updates...
[2026-06-12 01:38:48,415.415 INFO    ] 200
[2026-06-12 01:38:48,416.416 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:38:48,447.447 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 01:38:48,448.448 INFO    ] No update needed
[2026-06-12 01:38:48,450.450 INFO    ] Checking for camera pi updates...
[2026-06-12 01:38:48,470.470 INFO    ] 200
[2026-06-12 01:38:48,471.471 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:38:48,495.495 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 01:38:48,540.540 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 01:38:48,542.542 INFO    ] No camera update needed
[2026-06-12 01:38:48,543.543 INFO    ] Script finished. Safe exiting...
[2026-06-12 01:38:48,544.544 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 01:38:48,548.548 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 01:38:48,551.551 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 01:38:50,591.591 INFO    ] ================================================
[2026-06-12 01:38:50,606.606 INFO    ] Launching Daemon at Fri Jun 12 01:38:50 IST 2026
[2026-06-12 01:38:50,617.617 INFO    ] ================================================
[2026-06-12 01:38:50,944.944 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 01:38:50
[2026-06-12 01:38:51,255.255 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 01:38:51,393.393 INFO    ] Initializing speech engine...
[2026-06-12 01:38:51,405.405 INFO    ] 2026-06-12 01:38:51
[2026-06-12 01:38:51,610.610 INFO    ] 2026-06-12 01:38:51
[2026-06-12 01:38:51,638.638 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 01:38:51,825.825 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 01:38:51,828.828 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 01:38:51,964.964 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 01:38:52,028.028 INFO    ] time= 12/06/2026 01:38:51
[2026-06-12 01:38:52,055.055 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 01:38:52,061.061 INFO    ] Checking for existing commands in stream...
[2026-06-12 01:38:52,128.128 INFO    ] No existing commands found in stream
[2026-06-12 01:38:57,137.137 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 01:38:57,140.140 INFO    ] Waiting 0.37 seconds before fallback handling...
[2026-06-12 01:38:57,895.895 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 01:38:57,896.896 INFO    ] Checking for system updates...
[2026-06-12 01:38:57,919.919 INFO    ] 200
[2026-06-12 01:38:57,920.920 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:38:57,954.954 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 01:38:57,955.955 INFO    ] No update needed
[2026-06-12 01:38:57,956.956 INFO    ] Checking for camera pi updates...
[2026-06-12 01:38:57,979.979 INFO    ] 200
[2026-06-12 01:38:57,980.980 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:38:58,005.005 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 01:38:58,050.050 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 01:38:58,051.051 INFO    ] No camera update needed
[2026-06-12 01:38:58,053.053 INFO    ] Script finished. Safe exiting...
[2026-06-12 01:38:58,054.054 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 01:38:58,057.057 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 01:38:58,060.060 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 01:39:00,101.101 INFO    ] ================================================
[2026-06-12 01:39:00,117.117 INFO    ] Launching Daemon at Fri Jun 12 01:39:00 IST 2026
[2026-06-12 01:39:00,128.128 INFO    ] ================================================
[2026-06-12 01:39:00,457.457 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 01:39:00
[2026-06-12 01:39:00,768.768 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 01:39:00,909.909 INFO    ] Initializing speech engine...
[2026-06-12 01:39:00,917.917 INFO    ] 2026-06-12 01:39:00
[2026-06-12 01:39:01,158.158 INFO    ] 2026-06-12 01:39:01
[2026-06-12 01:39:01,195.195 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 01:39:01,348.348 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 01:39:01,351.351 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 01:39:01,453.453 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 01:39:01,455.455 INFO    ] time= 12/06/2026 01:39:01
[2026-06-12 01:39:01,457.457 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 01:39:01,458.458 INFO    ] Checking for existing commands in stream...
[2026-06-12 01:39:01,523.523 INFO    ] No existing commands found in stream
[2026-06-12 01:39:06,535.535 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 01:39:06,536.536 INFO    ] Waiting 1.64 seconds before fallback handling...
[2026-06-12 01:39:08,571.571 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 01:39:08,572.572 INFO    ] Checking for system updates...
[2026-06-12 01:39:08,593.593 INFO    ] 200
[2026-06-12 01:39:08,594.594 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:39:08,627.627 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 01:39:08,628.628 INFO    ] No update needed
[2026-06-12 01:39:08,630.630 INFO    ] Checking for camera pi updates...
[2026-06-12 01:39:08,649.649 INFO    ] 200
[2026-06-12 01:39:08,651.651 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:39:08,674.674 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 01:39:08,719.719 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 01:39:08,721.721 INFO    ] No camera update needed
[2026-06-12 01:39:08,722.722 INFO    ] Script finished. Safe exiting...
[2026-06-12 01:39:08,723.723 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 01:39:08,726.726 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 01:39:08,729.729 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 01:39:10,768.768 INFO    ] ================================================
[2026-06-12 01:39:10,785.785 INFO    ] Launching Daemon at Fri Jun 12 01:39:10 IST 2026
[2026-06-12 01:39:10,796.796 INFO    ] ================================================
[2026-06-12 01:39:11,154.154 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 01:39:11
[2026-06-12 01:39:11,465.465 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 01:39:11,602.602 INFO    ] Initializing speech engine...
[2026-06-12 01:39:11,611.611 INFO    ] 2026-06-12 01:39:11
[2026-06-12 01:39:11,814.814 INFO    ] 2026-06-12 01:39:11
[2026-06-12 01:39:11,843.843 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 01:39:12,025.025 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 01:39:12,029.029 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 01:39:12,179.179 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 01:39:12,232.232 INFO    ] time= 12/06/2026 01:39:12
[2026-06-12 01:39:12,254.254 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 01:39:12,261.261 INFO    ] Checking for existing commands in stream...
[2026-06-12 01:39:12,327.327 INFO    ] No existing commands found in stream
[2026-06-12 01:39:17,341.341 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 01:39:17,344.344 INFO    ] Waiting 3.86 seconds before fallback handling...
[2026-06-12 01:39:21,565.565 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 01:39:21,566.566 INFO    ] Checking for system updates...
[2026-06-12 01:39:21,587.587 INFO    ] 200
[2026-06-12 01:39:21,588.588 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:39:21,620.620 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 01:39:21,621.621 INFO    ] No update needed
[2026-06-12 01:39:21,623.623 INFO    ] Checking for camera pi updates...
[2026-06-12 01:39:21,645.645 INFO    ] 200
[2026-06-12 01:39:21,646.646 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:39:21,671.671 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 01:39:21,712.712 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 01:39:21,714.714 INFO    ] No camera update needed
[2026-06-12 01:39:21,715.715 INFO    ] Script finished. Safe exiting...
[2026-06-12 01:39:21,716.716 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 01:39:21,719.719 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 01:39:21,722.722 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 01:39:23,763.763 INFO    ] ================================================
[2026-06-12 01:39:23,779.779 INFO    ] Launching Daemon at Fri Jun 12 01:39:23 IST 2026
[2026-06-12 01:39:23,790.790 INFO    ] ================================================
[2026-06-12 01:39:24,115.115 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 01:39:24
[2026-06-12 01:39:24,427.427 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 01:39:24,564.564 INFO    ] Initializing speech engine...
[2026-06-12 01:39:24,574.574 INFO    ] 2026-06-12 01:39:24
[2026-06-12 01:39:24,777.777 INFO    ] 2026-06-12 01:39:24
[2026-06-12 01:39:24,805.805 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 01:39:24,989.989 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 01:39:24,999.999 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 01:39:25,128.128 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 01:39:25,187.187 INFO    ] time= 12/06/2026 01:39:25
[2026-06-12 01:39:25,219.219 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 01:39:25,225.225 INFO    ] Checking for existing commands in stream...
[2026-06-12 01:39:25,291.291 INFO    ] No existing commands found in stream
[2026-06-12 01:39:30,301.301 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 01:39:30,303.303 INFO    ] Waiting 3.36 seconds before fallback handling...
[2026-06-12 01:39:34,067.067 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 01:39:34,069.069 INFO    ] Checking for system updates...
[2026-06-12 01:39:34,091.091 INFO    ] 200
[2026-06-12 01:39:34,093.093 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:39:34,131.131 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 01:39:34,133.133 INFO    ] No update needed
[2026-06-12 01:39:34,135.135 INFO    ] Checking for camera pi updates...
[2026-06-12 01:39:34,159.159 INFO    ] 200
[2026-06-12 01:39:34,160.160 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:39:34,185.185 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 01:39:34,232.232 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 01:39:34,233.233 INFO    ] No camera update needed
[2026-06-12 01:39:34,234.234 INFO    ] Script finished. Safe exiting...
[2026-06-12 01:39:34,236.236 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 01:39:34,239.239 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 01:39:34,242.242 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 01:39:36,281.281 INFO    ] ================================================
[2026-06-12 01:39:36,296.296 INFO    ] Launching Daemon at Fri Jun 12 01:39:36 IST 2026
[2026-06-12 01:39:36,308.308 INFO    ] ================================================
[2026-06-12 01:39:36,644.644 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 01:39:36
[2026-06-12 01:39:36,961.961 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 01:39:37,106.106 INFO    ] Initializing speech engine...
[2026-06-12 01:39:37,111.111 INFO    ] 2026-06-12 01:39:37
[2026-06-12 01:39:37,314.314 INFO    ] 2026-06-12 01:39:37
[2026-06-12 01:39:37,342.342 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 01:39:37,526.526 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 01:39:37,535.535 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 01:39:37,665.665 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 01:39:37,732.732 INFO    ] time= 12/06/2026 01:39:37
[2026-06-12 01:39:37,756.756 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 01:39:37,762.762 INFO    ] Checking for existing commands in stream...
[2026-06-12 01:39:37,829.829 INFO    ] No existing commands found in stream
[2026-06-12 01:39:42,838.838 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 01:39:42,841.841 INFO    ] Waiting 0.66 seconds before fallback handling...
[2026-06-12 01:39:43,865.865 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 01:39:43,866.866 INFO    ] Checking for system updates...
[2026-06-12 01:39:43,887.887 INFO    ] 200
[2026-06-12 01:39:43,889.889 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:39:43,919.919 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 01:39:43,920.920 INFO    ] No update needed
[2026-06-12 01:39:43,922.922 INFO    ] Checking for camera pi updates...
[2026-06-12 01:39:43,942.942 INFO    ] 200
[2026-06-12 01:39:43,943.943 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:39:43,967.967 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 01:39:44,006.006 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 01:39:44,007.007 INFO    ] No camera update needed
[2026-06-12 01:39:44,009.009 INFO    ] Script finished. Safe exiting...
[2026-06-12 01:39:44,010.010 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 01:39:44,013.013 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 01:39:44,017.017 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 01:39:46,056.056 INFO    ] ================================================
[2026-06-12 01:39:46,072.072 INFO    ] Launching Daemon at Fri Jun 12 01:39:46 IST 2026
[2026-06-12 01:39:46,083.083 INFO    ] ================================================
[2026-06-12 01:39:46,443.443 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 01:39:46
[2026-06-12 01:39:46,762.762 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 01:39:46,905.905 INFO    ] Initializing speech engine...
[2026-06-12 01:39:46,911.911 INFO    ] 2026-06-12 01:39:46
[2026-06-12 01:39:47,116.116 INFO    ] 2026-06-12 01:39:47
[2026-06-12 01:39:47,144.144 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 01:39:47,326.326 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 01:39:47,330.330 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 01:39:47,471.471 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 01:39:47,529.529 INFO    ] time= 12/06/2026 01:39:47
[2026-06-12 01:39:47,556.556 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 01:39:47,558.558 INFO    ] Checking for existing commands in stream...
[2026-06-12 01:39:47,629.629 INFO    ] No existing commands found in stream
[2026-06-12 01:39:52,638.638 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 01:39:52,641.641 INFO    ] Waiting 1.88 seconds before fallback handling...
[2026-06-12 01:39:54,905.905 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 01:39:54,906.906 INFO    ] Checking for system updates...
[2026-06-12 01:39:54,926.926 INFO    ] 200
[2026-06-12 01:39:54,928.928 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:39:54,960.960 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 01:39:54,961.961 INFO    ] No update needed
[2026-06-12 01:39:54,962.962 INFO    ] Checking for camera pi updates...
[2026-06-12 01:39:54,985.985 INFO    ] 200
[2026-06-12 01:39:54,986.986 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:39:55,016.016 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 01:39:55,155.155 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 01:39:55,156.156 INFO    ] No camera update needed
[2026-06-12 01:39:55,157.157 INFO    ] Script finished. Safe exiting...
[2026-06-12 01:39:55,159.159 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 01:39:55,162.162 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 01:39:55,164.164 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 01:39:57,204.204 INFO    ] ================================================
[2026-06-12 01:39:57,221.221 INFO    ] Launching Daemon at Fri Jun 12 01:39:57 IST 2026
[2026-06-12 01:39:57,231.231 INFO    ] ================================================
[2026-06-12 01:39:57,598.598 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 01:39:57
[2026-06-12 01:39:57,911.911 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 01:39:58,041.041 INFO    ] Initializing speech engine...
[2026-06-12 01:39:58,044.044 INFO    ] 2026-06-12 01:39:58
[2026-06-12 01:39:58,260.260 INFO    ] 2026-06-12 01:39:58
[2026-06-12 01:39:58,288.288 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 01:39:58,411.411 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 01:39:58,475.475 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 01:39:58,606.606 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 01:39:58,661.661 INFO    ] time= 12/06/2026 01:39:58
[2026-06-12 01:39:58,701.701 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 01:39:58,706.706 INFO    ] Checking for existing commands in stream...
[2026-06-12 01:39:58,778.778 INFO    ] No existing commands found in stream
[2026-06-12 01:40:03,787.787 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 01:40:03,789.789 INFO    ] Waiting 0.21 seconds before fallback handling...
[2026-06-12 01:40:08,059.059 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 01:40:08,061.061 INFO    ] Checking for system updates...
[2026-06-12 01:40:08,101.101 INFO    ] 200
[2026-06-12 01:40:08,104.104 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:40:08,163.163 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 01:40:08,166.166 INFO    ] No update needed
[2026-06-12 01:40:08,169.169 INFO    ] Checking for camera pi updates...
[2026-06-12 01:40:08,205.205 INFO    ] 200
[2026-06-12 01:40:08,209.209 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:40:08,234.234 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 01:40:08,285.285 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 01:40:08,287.287 INFO    ] No camera update needed
[2026-06-12 01:40:08,288.288 INFO    ] Script finished. Safe exiting...
[2026-06-12 01:40:08,289.289 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 01:40:08,293.293 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 01:40:08,296.296 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 01:40:10,335.335 INFO    ] ================================================
[2026-06-12 01:40:10,351.351 INFO    ] Launching Daemon at Fri Jun 12 01:40:10 IST 2026
[2026-06-12 01:40:10,362.362 INFO    ] ================================================
[2026-06-12 01:40:10,691.691 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 01:40:10
[2026-06-12 01:40:11,002.002 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 01:40:11,137.137 INFO    ] Initializing speech engine...
[2026-06-12 01:40:11,140.140 INFO    ] 2026-06-12 01:40:11
[2026-06-12 01:40:11,367.367 INFO    ] 2026-06-12 01:40:11
[2026-06-12 01:40:11,398.398 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 01:40:11,593.593 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 01:40:11,596.596 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 01:40:11,741.741 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 01:40:11,805.805 INFO    ] time= 12/06/2026 01:40:11
[2026-06-12 01:40:11,838.838 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 01:40:11,844.844 INFO    ] Checking for existing commands in stream...
[2026-06-12 01:40:11,915.915 INFO    ] No existing commands found in stream
[2026-06-12 01:40:16,924.924 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 01:40:16,927.927 INFO    ] Waiting 0.92 seconds before fallback handling...
[2026-06-12 01:40:18,198.198 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 01:40:18,200.200 INFO    ] Checking for system updates...
[2026-06-12 01:40:18,221.221 INFO    ] 200
[2026-06-12 01:40:18,222.222 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:40:18,252.252 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 01:40:18,254.254 INFO    ] No update needed
[2026-06-12 01:40:18,255.255 INFO    ] Checking for camera pi updates...
[2026-06-12 01:40:18,274.274 INFO    ] 200
[2026-06-12 01:40:18,276.276 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:40:18,300.300 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 01:40:18,346.346 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 01:40:18,347.347 INFO    ] No camera update needed
[2026-06-12 01:40:18,349.349 INFO    ] Script finished. Safe exiting...
[2026-06-12 01:40:18,350.350 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 01:40:18,353.353 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 01:40:18,356.356 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 01:40:20,394.394 INFO    ] ================================================
[2026-06-12 01:40:20,409.409 INFO    ] Launching Daemon at Fri Jun 12 01:40:20 IST 2026
[2026-06-12 01:40:20,421.421 INFO    ] ================================================
[2026-06-12 01:40:20,779.779 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 01:40:20
[2026-06-12 01:40:21,110.110 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 01:40:21,250.250 INFO    ] Initializing speech engine...
[2026-06-12 01:40:21,262.262 INFO    ] 2026-06-12 01:40:21
[2026-06-12 01:40:21,475.475 INFO    ] 2026-06-12 01:40:21
[2026-06-12 01:40:21,504.504 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 01:40:21,694.694 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 01:40:21,705.705 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 01:40:21,842.842 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 01:40:21,905.905 INFO    ] time= 12/06/2026 01:40:21
[2026-06-12 01:40:21,929.929 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 01:40:21,936.936 INFO    ] Checking for existing commands in stream...
[2026-06-12 01:40:22,008.008 INFO    ] No existing commands found in stream
[2026-06-12 01:40:27,017.017 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 01:40:27,020.020 INFO    ] Waiting 1.90 seconds before fallback handling...
[2026-06-12 01:40:29,308.308 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 01:40:29,309.309 INFO    ] Checking for system updates...
[2026-06-12 01:40:29,331.331 INFO    ] 200
[2026-06-12 01:40:29,333.333 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:40:29,367.367 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 01:40:29,369.369 INFO    ] No update needed
[2026-06-12 01:40:29,370.370 INFO    ] Checking for camera pi updates...
[2026-06-12 01:40:29,393.393 INFO    ] 200
[2026-06-12 01:40:29,394.394 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:40:29,417.417 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 01:40:29,472.472 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 01:40:29,474.474 INFO    ] No camera update needed
[2026-06-12 01:40:29,475.475 INFO    ] Script finished. Safe exiting...
[2026-06-12 01:40:29,476.476 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 01:40:29,479.479 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 01:40:29,483.483 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 01:40:31,522.522 INFO    ] ================================================
[2026-06-12 01:40:31,538.538 INFO    ] Launching Daemon at Fri Jun 12 01:40:31 IST 2026
[2026-06-12 01:40:31,549.549 INFO    ] ================================================
[2026-06-12 01:40:31,944.944 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 01:40:31
[2026-06-12 01:40:32,313.313 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 01:40:32,465.465 INFO    ] Initializing speech engine...
[2026-06-12 01:40:32,474.474 INFO    ] 2026-06-12 01:40:32
[2026-06-12 01:40:32,686.686 INFO    ] 2026-06-12 01:40:32
[2026-06-12 01:40:32,716.716 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 01:40:32,906.906 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 01:40:32,910.910 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 01:40:33,054.054 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 01:40:33,119.119 INFO    ] time= 12/06/2026 01:40:33
[2026-06-12 01:40:33,142.142 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 01:40:33,149.149 INFO    ] Checking for existing commands in stream...
[2026-06-12 01:40:33,217.217 INFO    ] No existing commands found in stream
[2026-06-12 01:40:38,226.226 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 01:40:38,229.229 INFO    ] Waiting 3.96 seconds before fallback handling...
[2026-06-12 01:40:42,567.567 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 01:40:42,569.569 INFO    ] Checking for system updates...
[2026-06-12 01:40:42,590.590 INFO    ] 200
[2026-06-12 01:40:42,591.591 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:40:42,622.622 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 01:40:42,623.623 INFO    ] No update needed
[2026-06-12 01:40:42,625.625 INFO    ] Checking for camera pi updates...
[2026-06-12 01:40:42,644.644 INFO    ] 200
[2026-06-12 01:40:42,646.646 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:40:42,669.669 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 01:40:42,715.715 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 01:40:42,717.717 INFO    ] No camera update needed
[2026-06-12 01:40:42,718.718 INFO    ] Script finished. Safe exiting...
[2026-06-12 01:40:42,720.720 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 01:40:42,723.723 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 01:40:42,726.726 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 01:40:44,765.765 INFO    ] ================================================
[2026-06-12 01:40:44,780.780 INFO    ] Launching Daemon at Fri Jun 12 01:40:44 IST 2026
[2026-06-12 01:40:44,792.792 INFO    ] ================================================
[2026-06-12 01:40:45,164.164 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 01:40:45
[2026-06-12 01:40:45,477.477 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 01:40:45,619.619 INFO    ] Initializing speech engine...
[2026-06-12 01:40:45,625.625 INFO    ] 2026-06-12 01:40:45
[2026-06-12 01:40:45,828.828 INFO    ] 2026-06-12 01:40:45
[2026-06-12 01:40:45,857.857 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 01:40:46,040.040 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 01:40:46,044.044 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 01:40:46,190.190 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 01:40:46,247.247 INFO    ] time= 12/06/2026 01:40:46
[2026-06-12 01:40:46,270.270 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 01:40:46,277.277 INFO    ] Checking for existing commands in stream...
[2026-06-12 01:40:46,343.343 INFO    ] No existing commands found in stream
[2026-06-12 01:40:51,352.352 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 01:40:51,355.355 INFO    ] Waiting 2.21 seconds before fallback handling...
[2026-06-12 01:40:53,960.960 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 01:40:53,961.961 INFO    ] Checking for system updates...
[2026-06-12 01:40:53,982.982 INFO    ] 200
[2026-06-12 01:40:53,984.984 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:40:54,015.015 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 01:40:54,016.016 INFO    ] No update needed
[2026-06-12 01:40:54,018.018 INFO    ] Checking for camera pi updates...
[2026-06-12 01:40:54,037.037 INFO    ] 200
[2026-06-12 01:40:54,039.039 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:40:54,065.065 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 01:40:54,110.110 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 01:40:54,111.111 INFO    ] No camera update needed
[2026-06-12 01:40:54,113.113 INFO    ] Script finished. Safe exiting...
[2026-06-12 01:40:54,114.114 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 01:40:54,117.117 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 01:40:54,119.119 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 01:40:56,159.159 INFO    ] ================================================
[2026-06-12 01:40:56,175.175 INFO    ] Launching Daemon at Fri Jun 12 01:40:56 IST 2026
[2026-06-12 01:40:56,186.186 INFO    ] ================================================
[2026-06-12 01:40:56,550.550 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 01:40:56
[2026-06-12 01:40:56,866.866 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 01:40:57,004.004 INFO    ] Initializing speech engine...
[2026-06-12 01:40:57,014.014 INFO    ] 2026-06-12 01:40:57
[2026-06-12 01:40:57,218.218 INFO    ] 2026-06-12 01:40:57
[2026-06-12 01:40:57,246.246 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 01:40:57,430.430 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 01:40:57,434.434 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 01:40:57,566.566 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 01:40:57,629.629 INFO    ] time= 12/06/2026 01:40:57
[2026-06-12 01:40:57,661.661 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 01:40:57,668.668 INFO    ] Checking for existing commands in stream...
[2026-06-12 01:40:57,735.735 INFO    ] No existing commands found in stream
[2026-06-12 01:41:02,741.741 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 01:41:02,744.744 INFO    ] Waiting 0.82 seconds before fallback handling...
[2026-06-12 01:41:03,934.934 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 01:41:03,937.937 INFO    ] Checking for system updates...
[2026-06-12 01:41:03,976.976 INFO    ] 200
[2026-06-12 01:41:03,978.978 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:41:04,031.031 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 01:41:04,033.033 INFO    ] No update needed
[2026-06-12 01:41:04,036.036 INFO    ] Checking for camera pi updates...
[2026-06-12 01:41:04,073.073 INFO    ] 200
[2026-06-12 01:41:04,075.075 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:41:04,098.098 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 01:41:04,138.138 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 01:41:04,139.139 INFO    ] No camera update needed
[2026-06-12 01:41:04,141.141 INFO    ] Script finished. Safe exiting...
[2026-06-12 01:41:04,142.142 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 01:41:04,145.145 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 01:41:04,147.147 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 01:41:06,187.187 INFO    ] ================================================
[2026-06-12 01:41:06,203.203 INFO    ] Launching Daemon at Fri Jun 12 01:41:06 IST 2026
[2026-06-12 01:41:06,214.214 INFO    ] ================================================
[2026-06-12 01:41:06,566.566 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 01:41:06
[2026-06-12 01:41:06,899.899 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 01:41:07,038.038 INFO    ] Initializing speech engine...
[2026-06-12 01:41:07,050.050 INFO    ] 2026-06-12 01:41:07
[2026-06-12 01:41:07,265.265 INFO    ] 2026-06-12 01:41:07
[2026-06-12 01:41:07,294.294 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 01:41:07,480.480 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 01:41:07,483.483 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 01:41:07,627.627 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 01:41:07,689.689 INFO    ] time= 12/06/2026 01:41:07
[2026-06-12 01:41:07,714.714 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 01:41:07,721.721 INFO    ] Checking for existing commands in stream...
[2026-06-12 01:41:07,788.788 INFO    ] No existing commands found in stream
[2026-06-12 01:41:12,813.813 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 01:41:12,816.816 INFO    ] Waiting 4.00 seconds before fallback handling...
[2026-06-12 01:41:17,225.225 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 01:41:17,228.228 INFO    ] Checking for system updates...
[2026-06-12 01:41:17,264.264 INFO    ] 200
[2026-06-12 01:41:17,266.266 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:41:17,319.319 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 01:41:17,322.322 INFO    ] No update needed
[2026-06-12 01:41:17,324.324 INFO    ] Checking for camera pi updates...
[2026-06-12 01:41:17,358.358 INFO    ] 200
[2026-06-12 01:41:17,360.360 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:41:17,383.383 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 01:41:17,428.428 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 01:41:17,429.429 INFO    ] No camera update needed
[2026-06-12 01:41:17,431.431 INFO    ] Script finished. Safe exiting...
[2026-06-12 01:41:17,432.432 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 01:41:17,435.435 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 01:41:17,438.438 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 01:41:19,476.476 INFO    ] ================================================
[2026-06-12 01:41:19,491.491 INFO    ] Launching Daemon at Fri Jun 12 01:41:19 IST 2026
[2026-06-12 01:41:19,503.503 INFO    ] ================================================
[2026-06-12 01:41:19,856.856 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 01:41:19
[2026-06-12 01:41:20,189.189 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 01:41:20,339.339 INFO    ] Initializing speech engine...
[2026-06-12 01:41:20,351.351 INFO    ] 2026-06-12 01:41:20
[2026-06-12 01:41:20,559.559 INFO    ] 2026-06-12 01:41:20
[2026-06-12 01:41:20,588.588 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 01:41:20,773.773 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 01:41:20,777.777 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 01:41:20,910.910 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 01:41:20,973.973 INFO    ] time= 12/06/2026 01:41:20
[2026-06-12 01:41:21,006.006 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 01:41:21,008.008 INFO    ] Checking for existing commands in stream...
[2026-06-12 01:41:21,080.080 INFO    ] No existing commands found in stream
[2026-06-12 01:41:26,089.089 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 01:41:26,092.092 INFO    ] Waiting 2.57 seconds before fallback handling...
[2026-06-12 01:41:29,033.033 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 01:41:29,035.035 INFO    ] Checking for system updates...
[2026-06-12 01:41:29,056.056 INFO    ] 200
[2026-06-12 01:41:29,057.057 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:41:29,089.089 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 01:41:29,091.091 INFO    ] No update needed
[2026-06-12 01:41:29,092.092 INFO    ] Checking for camera pi updates...
[2026-06-12 01:41:29,112.112 INFO    ] 200
[2026-06-12 01:41:29,113.113 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:41:29,138.138 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 01:41:29,181.181 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 01:41:29,183.183 INFO    ] No camera update needed
[2026-06-12 01:41:29,184.184 INFO    ] Script finished. Safe exiting...
[2026-06-12 01:41:29,185.185 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 01:41:29,188.188 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 01:41:29,191.191 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 01:41:31,229.229 INFO    ] ================================================
[2026-06-12 01:41:31,245.245 INFO    ] Launching Daemon at Fri Jun 12 01:41:31 IST 2026
[2026-06-12 01:41:31,257.257 INFO    ] ================================================
[2026-06-12 01:41:31,600.600 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 01:41:31
[2026-06-12 01:41:31,926.926 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 01:41:32,084.084 INFO    ] Initializing speech engine...
[2026-06-12 01:41:32,089.089 INFO    ] 2026-06-12 01:41:32
[2026-06-12 01:41:32,315.315 INFO    ] 2026-06-12 01:41:32
[2026-06-12 01:41:32,347.347 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 01:41:32,477.477 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 01:41:32,532.532 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 01:41:32,688.688 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 01:41:32,760.760 INFO    ] time= 12/06/2026 01:41:32
[2026-06-12 01:41:32,787.787 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 01:41:32,794.794 INFO    ] Checking for existing commands in stream...
[2026-06-12 01:41:32,861.861 INFO    ] No existing commands found in stream
[2026-06-12 01:41:37,870.870 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 01:41:37,873.873 INFO    ] Waiting 2.59 seconds before fallback handling...
[2026-06-12 01:41:40,840.840 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 01:41:40,842.842 INFO    ] Checking for system updates...
[2026-06-12 01:41:40,863.863 INFO    ] 200
[2026-06-12 01:41:40,865.865 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:41:40,899.899 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 01:41:40,901.901 INFO    ] No update needed
[2026-06-12 01:41:40,902.902 INFO    ] Checking for camera pi updates...
[2026-06-12 01:41:40,924.924 INFO    ] 200
[2026-06-12 01:41:40,925.925 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:41:40,949.949 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 01:41:40,994.994 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 01:41:40,996.996 INFO    ] No camera update needed
[2026-06-12 01:41:40,997.997 INFO    ] Script finished. Safe exiting...
[2026-06-12 01:41:40,998.998 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 01:41:41,002.002 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 01:41:41,005.005 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 01:41:43,044.044 INFO    ] ================================================
[2026-06-12 01:41:43,060.060 INFO    ] Launching Daemon at Fri Jun 12 01:41:43 IST 2026
[2026-06-12 01:41:43,072.072 INFO    ] ================================================
[2026-06-12 01:41:43,425.425 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 01:41:43
[2026-06-12 01:41:43,755.755 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 01:41:43,905.905 INFO    ] Initializing speech engine...
[2026-06-12 01:41:43,910.910 INFO    ] 2026-06-12 01:41:43
[2026-06-12 01:41:44,118.118 INFO    ] 2026-06-12 01:41:44
[2026-06-12 01:41:44,148.148 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 01:41:44,336.336 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 01:41:44,345.345 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 01:41:44,472.472 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 01:41:44,535.535 INFO    ] time= 12/06/2026 01:41:44
[2026-06-12 01:41:44,569.569 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 01:41:44,575.575 INFO    ] Checking for existing commands in stream...
[2026-06-12 01:41:44,668.668 INFO    ] No existing commands found in stream
[2026-06-12 01:41:49,682.682 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 01:41:49,685.685 INFO    ] Waiting 2.62 seconds before fallback handling...
[2026-06-12 01:41:52,689.689 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 01:41:52,690.690 INFO    ] Checking for system updates...
[2026-06-12 01:41:52,711.711 INFO    ] 200
[2026-06-12 01:41:52,713.713 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:41:52,743.743 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 01:41:52,744.744 INFO    ] No update needed
[2026-06-12 01:41:52,746.746 INFO    ] Checking for camera pi updates...
[2026-06-12 01:41:52,765.765 INFO    ] 200
[2026-06-12 01:41:52,767.767 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:41:52,790.790 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 01:41:52,843.843 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 01:41:52,844.844 INFO    ] No camera update needed
[2026-06-12 01:41:52,845.845 INFO    ] Script finished. Safe exiting...
[2026-06-12 01:41:52,847.847 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 01:41:52,850.850 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 01:41:52,853.853 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 01:41:54,878.878 INFO    ] ================================================
[2026-06-12 01:41:54,887.887 INFO    ] Launching Daemon at Fri Jun 12 01:41:54 IST 2026
[2026-06-12 01:41:54,893.893 INFO    ] ================================================
[2026-06-12 01:41:55,244.244 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 01:41:55
[2026-06-12 01:41:55,601.601 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 01:41:55,744.744 INFO    ] Initializing speech engine...
[2026-06-12 01:41:55,754.754 INFO    ] 2026-06-12 01:41:55
[2026-06-12 01:41:55,962.962 INFO    ] 2026-06-12 01:41:55
[2026-06-12 01:41:55,991.991 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 01:41:56,176.176 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 01:41:56,187.187 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 01:41:56,336.336 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 01:41:56,384.384 INFO    ] time= 12/06/2026 01:41:56
[2026-06-12 01:41:56,406.406 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 01:41:56,413.413 INFO    ] Checking for existing commands in stream...
[2026-06-12 01:41:56,480.480 INFO    ] No existing commands found in stream
[2026-06-12 01:42:01,491.491 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 01:42:01,494.494 INFO    ] Waiting 3.19 seconds before fallback handling...
[2026-06-12 01:42:05,062.062 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 01:42:05,064.064 INFO    ] Checking for system updates...
[2026-06-12 01:42:05,085.085 INFO    ] 200
[2026-06-12 01:42:05,087.087 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:42:05,119.119 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 01:42:05,120.120 INFO    ] No update needed
[2026-06-12 01:42:05,122.122 INFO    ] Checking for camera pi updates...
[2026-06-12 01:42:05,154.154 INFO    ] 200
[2026-06-12 01:42:05,156.156 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:42:05,190.190 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 01:42:05,235.235 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 01:42:05,236.236 INFO    ] No camera update needed
[2026-06-12 01:42:05,237.237 INFO    ] Script finished. Safe exiting...
[2026-06-12 01:42:05,239.239 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 01:42:05,242.242 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 01:42:05,245.245 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 01:42:07,286.286 INFO    ] ================================================
[2026-06-12 01:42:07,302.302 INFO    ] Launching Daemon at Fri Jun 12 01:42:07 IST 2026
[2026-06-12 01:42:07,314.314 INFO    ] ================================================
[2026-06-12 01:42:07,682.682 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 01:42:07
[2026-06-12 01:42:07,993.993 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 01:42:08,124.124 INFO    ] Initializing speech engine...
[2026-06-12 01:42:08,131.131 INFO    ] 2026-06-12 01:42:08
[2026-06-12 01:42:08,345.345 INFO    ] 2026-06-12 01:42:08
[2026-06-12 01:42:08,374.374 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 01:42:08,558.558 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 01:42:08,568.568 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 01:42:08,699.699 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 01:42:08,758.758 INFO    ] time= 12/06/2026 01:42:08
[2026-06-12 01:42:08,791.791 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 01:42:08,797.797 INFO    ] Checking for existing commands in stream...
[2026-06-12 01:42:08,864.864 INFO    ] No existing commands found in stream
[2026-06-12 01:42:13,873.873 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 01:42:13,876.876 INFO    ] Waiting 2.48 seconds before fallback handling...
[2026-06-12 01:42:16,711.711 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 01:42:16,713.713 INFO    ] Checking for system updates...
[2026-06-12 01:42:16,733.733 INFO    ] 200
[2026-06-12 01:42:16,735.735 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:42:16,765.765 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 01:42:16,766.766 INFO    ] No update needed
[2026-06-12 01:42:16,768.768 INFO    ] Checking for camera pi updates...
[2026-06-12 01:42:16,787.787 INFO    ] 200
[2026-06-12 01:42:16,788.788 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:42:16,812.812 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 01:42:16,857.857 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 01:42:16,858.858 INFO    ] No camera update needed
[2026-06-12 01:42:16,859.859 INFO    ] Script finished. Safe exiting...
[2026-06-12 01:42:16,861.861 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 01:42:16,864.864 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 01:42:16,867.867 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 01:42:18,905.905 INFO    ] ================================================
[2026-06-12 01:42:18,921.921 INFO    ] Launching Daemon at Fri Jun 12 01:42:18 IST 2026
[2026-06-12 01:42:18,933.933 INFO    ] ================================================
[2026-06-12 01:42:19,260.260 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 01:42:19
[2026-06-12 01:42:19,575.575 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 01:42:19,707.707 INFO    ] Initializing speech engine...
[2026-06-12 01:42:19,712.712 INFO    ] 2026-06-12 01:42:19
[2026-06-12 01:42:19,937.937 INFO    ] 2026-06-12 01:42:19
[2026-06-12 01:42:19,967.967 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 01:42:20,155.155 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 01:42:20,165.165 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 01:42:20,305.305 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 01:42:20,372.372 INFO    ] time= 12/06/2026 01:42:20
[2026-06-12 01:42:20,400.400 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 01:42:20,406.406 INFO    ] Checking for existing commands in stream...
[2026-06-12 01:42:20,481.481 INFO    ] No existing commands found in stream
[2026-06-12 01:42:25,490.490 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 01:42:25,493.493 INFO    ] Waiting 1.43 seconds before fallback handling...
[2026-06-12 01:42:27,258.258 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 01:42:27,259.259 INFO    ] Checking for system updates...
[2026-06-12 01:42:27,280.280 INFO    ] 200
[2026-06-12 01:42:27,282.282 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:42:27,313.313 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 01:42:27,314.314 INFO    ] No update needed
[2026-06-12 01:42:27,315.315 INFO    ] Checking for camera pi updates...
[2026-06-12 01:42:27,336.336 INFO    ] 200
[2026-06-12 01:42:27,338.338 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:42:27,364.364 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 01:42:27,404.404 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 01:42:27,406.406 INFO    ] No camera update needed
[2026-06-12 01:42:27,407.407 INFO    ] Script finished. Safe exiting...
[2026-06-12 01:42:27,409.409 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 01:42:27,412.412 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 01:42:27,415.415 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 01:42:29,445.445 INFO    ] ================================================
[2026-06-12 01:42:29,453.453 INFO    ] Launching Daemon at Fri Jun 12 01:42:29 IST 2026
[2026-06-12 01:42:29,460.460 INFO    ] ================================================
[2026-06-12 01:42:29,814.814 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 01:42:29
[2026-06-12 01:42:30,124.124 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 01:42:30,253.253 INFO    ] Initializing speech engine...
[2026-06-12 01:42:30,262.262 INFO    ] 2026-06-12 01:42:30
[2026-06-12 01:42:30,476.476 INFO    ] 2026-06-12 01:42:30
[2026-06-12 01:42:30,505.505 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 01:42:30,689.689 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 01:42:30,699.699 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 01:42:30,835.835 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 01:42:30,898.898 INFO    ] time= 12/06/2026 01:42:30
[2026-06-12 01:42:30,921.921 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 01:42:30,927.927 INFO    ] Checking for existing commands in stream...
[2026-06-12 01:42:30,994.994 INFO    ] No existing commands found in stream
[2026-06-12 01:42:36,018.018 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 01:42:36,021.021 INFO    ] Waiting 1.47 seconds before fallback handling...
[2026-06-12 01:42:37,866.866 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 01:42:37,868.868 INFO    ] Checking for system updates...
[2026-06-12 01:42:37,889.889 INFO    ] 200
[2026-06-12 01:42:37,891.891 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:42:37,923.923 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 01:42:37,924.924 INFO    ] No update needed
[2026-06-12 01:42:37,925.925 INFO    ] Checking for camera pi updates...
[2026-06-12 01:42:37,948.948 INFO    ] 200
[2026-06-12 01:42:37,950.950 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:42:37,973.973 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 01:42:38,015.015 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 01:42:38,017.017 INFO    ] No camera update needed
[2026-06-12 01:42:38,018.018 INFO    ] Script finished. Safe exiting...
[2026-06-12 01:42:38,020.020 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 01:42:38,023.023 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 01:42:38,026.026 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 01:42:40,065.065 INFO    ] ================================================
[2026-06-12 01:42:40,081.081 INFO    ] Launching Daemon at Fri Jun 12 01:42:40 IST 2026
[2026-06-12 01:42:40,092.092 INFO    ] ================================================
[2026-06-12 01:42:40,476.476 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 01:42:40
[2026-06-12 01:42:40,812.812 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 01:42:40,960.960 INFO    ] Initializing speech engine...
[2026-06-12 01:42:40,964.964 INFO    ] 2026-06-12 01:42:40
[2026-06-12 01:42:41,171.171 INFO    ] 2026-06-12 01:42:41
[2026-06-12 01:42:41,200.200 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 01:42:41,382.382 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 01:42:41,392.392 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 01:42:41,519.519 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 01:42:41,575.575 INFO    ] time= 12/06/2026 01:42:41
[2026-06-12 01:42:41,604.604 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 01:42:41,614.614 INFO    ] Checking for existing commands in stream...
[2026-06-12 01:42:41,686.686 INFO    ] No existing commands found in stream
[2026-06-12 01:42:46,700.700 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 01:42:46,708.708 INFO    ] Waiting 1.39 seconds before fallback handling...
[2026-06-12 01:42:48,484.484 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 01:42:48,485.485 INFO    ] Checking for system updates...
[2026-06-12 01:42:48,506.506 INFO    ] 200
[2026-06-12 01:42:48,508.508 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:42:48,538.538 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 01:42:48,539.539 INFO    ] No update needed
[2026-06-12 01:42:48,541.541 INFO    ] Checking for camera pi updates...
[2026-06-12 01:42:48,560.560 INFO    ] 200
[2026-06-12 01:42:48,562.562 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:42:48,585.585 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 01:42:48,630.630 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 01:42:48,631.631 INFO    ] No camera update needed
[2026-06-12 01:42:48,632.632 INFO    ] Script finished. Safe exiting...
[2026-06-12 01:42:48,634.634 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 01:42:48,637.637 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 01:42:48,640.640 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 01:42:50,678.678 INFO    ] ================================================
[2026-06-12 01:42:50,694.694 INFO    ] Launching Daemon at Fri Jun 12 01:42:50 IST 2026
[2026-06-12 01:42:50,721.721 INFO    ] ================================================
[2026-06-12 01:42:51,082.082 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 01:42:51
[2026-06-12 01:42:51,393.393 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 01:42:51,522.522 INFO    ] Initializing speech engine...
[2026-06-12 01:42:51,527.527 INFO    ] 2026-06-12 01:42:51
[2026-06-12 01:42:51,743.743 INFO    ] 2026-06-12 01:42:51
[2026-06-12 01:42:51,772.772 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 01:42:51,959.959 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 01:42:51,968.968 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 01:42:52,109.109 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 01:42:52,168.168 INFO    ] time= 12/06/2026 01:42:52
[2026-06-12 01:42:52,190.190 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 01:42:52,197.197 INFO    ] Checking for existing commands in stream...
[2026-06-12 01:42:52,264.264 INFO    ] No existing commands found in stream
[2026-06-12 01:42:57,278.278 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 01:42:57,281.281 INFO    ] Waiting 3.07 seconds before fallback handling...
[2026-06-12 01:43:00,738.738 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 01:43:00,740.740 INFO    ] Checking for system updates...
[2026-06-12 01:43:00,762.762 INFO    ] 200
[2026-06-12 01:43:00,764.764 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:43:00,794.794 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 01:43:00,795.795 INFO    ] No update needed
[2026-06-12 01:43:00,796.796 INFO    ] Checking for camera pi updates...
[2026-06-12 01:43:00,818.818 INFO    ] 200
[2026-06-12 01:43:00,819.819 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:43:00,844.844 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 01:43:00,884.884 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 01:43:00,885.885 INFO    ] No camera update needed
[2026-06-12 01:43:00,887.887 INFO    ] Script finished. Safe exiting...
[2026-06-12 01:43:00,888.888 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 01:43:00,891.891 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 01:43:00,894.894 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 01:43:02,928.928 INFO    ] ================================================
[2026-06-12 01:43:02,944.944 INFO    ] Launching Daemon at Fri Jun 12 01:43:02 IST 2026
[2026-06-12 01:43:02,955.955 INFO    ] ================================================
[2026-06-12 01:43:03,322.322 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 01:43:03
[2026-06-12 01:43:03,655.655 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 01:43:03,805.805 INFO    ] Initializing speech engine...
[2026-06-12 01:43:03,810.810 INFO    ] 2026-06-12 01:43:03
[2026-06-12 01:43:04,020.020 INFO    ] 2026-06-12 01:43:04
[2026-06-12 01:43:04,049.049 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 01:43:04,235.235 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 01:43:04,246.246 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 01:43:04,375.375 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 01:43:04,439.439 INFO    ] time= 12/06/2026 01:43:04
[2026-06-12 01:43:04,467.467 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 01:43:04,474.474 INFO    ] Checking for existing commands in stream...
[2026-06-12 01:43:04,565.565 INFO    ] No existing commands found in stream
[2026-06-12 01:43:09,579.579 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 01:43:09,583.583 INFO    ] Waiting 2.60 seconds before fallback handling...
[2026-06-12 01:43:12,563.563 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 01:43:12,565.565 INFO    ] Checking for system updates...
[2026-06-12 01:43:12,587.587 INFO    ] 200
[2026-06-12 01:43:12,589.589 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:43:12,619.619 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 01:43:12,621.621 INFO    ] No update needed
[2026-06-12 01:43:12,622.622 INFO    ] Checking for camera pi updates...
[2026-06-12 01:43:12,642.642 INFO    ] 200
[2026-06-12 01:43:12,643.643 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:43:12,666.666 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 01:43:12,708.708 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 01:43:12,709.709 INFO    ] No camera update needed
[2026-06-12 01:43:12,711.711 INFO    ] Script finished. Safe exiting...
[2026-06-12 01:43:12,712.712 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 01:43:12,715.715 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 01:43:12,718.718 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 01:43:14,757.757 INFO    ] ================================================
[2026-06-12 01:43:14,773.773 INFO    ] Launching Daemon at Fri Jun 12 01:43:14 IST 2026
[2026-06-12 01:43:14,784.784 INFO    ] ================================================
[2026-06-12 01:43:15,149.149 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 01:43:15
[2026-06-12 01:43:15,481.481 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 01:43:15,629.629 INFO    ] Initializing speech engine...
[2026-06-12 01:43:15,634.634 INFO    ] 2026-06-12 01:43:15
[2026-06-12 01:43:15,842.842 INFO    ] 2026-06-12 01:43:15
[2026-06-12 01:43:15,871.871 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 01:43:16,057.057 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 01:43:16,066.066 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 01:43:16,193.193 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 01:43:16,264.264 INFO    ] time= 12/06/2026 01:43:16
[2026-06-12 01:43:16,288.288 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 01:43:16,295.295 INFO    ] Checking for existing commands in stream...
[2026-06-12 01:43:16,362.362 INFO    ] No existing commands found in stream
[2026-06-12 01:43:21,376.376 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 01:43:21,379.379 INFO    ] Waiting 1.15 seconds before fallback handling...
[2026-06-12 01:43:22,901.901 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 01:43:22,903.903 INFO    ] Checking for system updates...
[2026-06-12 01:43:22,923.923 INFO    ] 200
[2026-06-12 01:43:22,924.924 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:43:22,954.954 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 01:43:22,956.956 INFO    ] No update needed
[2026-06-12 01:43:22,957.957 INFO    ] Checking for camera pi updates...
[2026-06-12 01:43:22,978.978 INFO    ] 200
[2026-06-12 01:43:22,980.980 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:43:23,003.003 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 01:43:23,043.043 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 01:43:23,044.044 INFO    ] No camera update needed
[2026-06-12 01:43:23,046.046 INFO    ] Script finished. Safe exiting...
[2026-06-12 01:43:23,047.047 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 01:43:23,050.050 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 01:43:23,053.053 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 01:43:25,092.092 INFO    ] ================================================
[2026-06-12 01:43:25,108.108 INFO    ] Launching Daemon at Fri Jun 12 01:43:25 IST 2026
[2026-06-12 01:43:25,119.119 INFO    ] ================================================
[2026-06-12 01:43:25,466.466 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 01:43:25
[2026-06-12 01:43:25,816.816 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 01:43:25,978.978 INFO    ] Initializing speech engine...
[2026-06-12 01:43:25,983.983 INFO    ] 2026-06-12 01:43:25
[2026-06-12 01:43:26,179.179 INFO    ] 2026-06-12 01:43:26
[2026-06-12 01:43:26,207.207 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 01:43:26,390.390 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 01:43:26,394.394 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 01:43:26,527.527 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 01:43:26,588.588 INFO    ] time= 12/06/2026 01:43:26
[2026-06-12 01:43:26,620.620 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 01:43:26,626.626 INFO    ] Checking for existing commands in stream...
[2026-06-12 01:43:26,694.694 INFO    ] No existing commands found in stream
[2026-06-12 01:43:31,707.707 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 01:43:31,708.708 INFO    ] Waiting 3.81 seconds before fallback handling...
[2026-06-12 01:43:35,886.886 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 01:43:35,888.888 INFO    ] Checking for system updates...
[2026-06-12 01:43:35,911.911 INFO    ] 200
[2026-06-12 01:43:35,913.913 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:43:35,945.945 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 01:43:35,947.947 INFO    ] No update needed
[2026-06-12 01:43:35,948.948 INFO    ] Checking for camera pi updates...
[2026-06-12 01:43:35,969.969 INFO    ] 200
[2026-06-12 01:43:35,971.971 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:43:35,994.994 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 01:43:36,037.037 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 01:43:36,038.038 INFO    ] No camera update needed
[2026-06-12 01:43:36,040.040 INFO    ] Script finished. Safe exiting...
[2026-06-12 01:43:36,041.041 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 01:43:36,044.044 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 01:43:36,047.047 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 01:43:38,087.087 INFO    ] ================================================
[2026-06-12 01:43:38,102.102 INFO    ] Launching Daemon at Fri Jun 12 01:43:38 IST 2026
[2026-06-12 01:43:38,114.114 INFO    ] ================================================
[2026-06-12 01:43:38,454.454 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 01:43:38
[2026-06-12 01:43:38,768.768 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 01:43:38,902.902 INFO    ] Initializing speech engine...
[2026-06-12 01:43:38,916.916 INFO    ] 2026-06-12 01:43:38
[2026-06-12 01:43:39,120.120 INFO    ] 2026-06-12 01:43:39
[2026-06-12 01:43:39,148.148 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 01:43:39,331.331 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 01:43:39,334.334 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 01:43:39,462.462 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 01:43:39,518.518 INFO    ] time= 12/06/2026 01:43:39
[2026-06-12 01:43:39,557.557 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 01:43:39,562.562 INFO    ] Checking for existing commands in stream...
[2026-06-12 01:43:39,634.634 INFO    ] No existing commands found in stream
[2026-06-12 01:43:44,658.658 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 01:43:44,661.661 INFO    ] Waiting 2.96 seconds before fallback handling...
[2026-06-12 01:43:47,986.986 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 01:43:47,987.987 INFO    ] Checking for system updates...
[2026-06-12 01:43:48,008.008 INFO    ] 200
[2026-06-12 01:43:48,010.010 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:43:48,040.040 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 01:43:48,042.042 INFO    ] No update needed
[2026-06-12 01:43:48,043.043 INFO    ] Checking for camera pi updates...
[2026-06-12 01:43:48,063.063 INFO    ] 200
[2026-06-12 01:43:48,064.064 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:43:48,089.089 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 01:43:48,136.136 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 01:43:48,138.138 INFO    ] No camera update needed
[2026-06-12 01:43:48,139.139 INFO    ] Script finished. Safe exiting...
[2026-06-12 01:43:48,141.141 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 01:43:48,144.144 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 01:43:48,147.147 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 01:43:50,187.187 INFO    ] ================================================
[2026-06-12 01:43:50,203.203 INFO    ] Launching Daemon at Fri Jun 12 01:43:50 IST 2026
[2026-06-12 01:43:50,214.214 INFO    ] ================================================
[2026-06-12 01:43:50,556.556 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 01:43:50
[2026-06-12 01:43:50,872.872 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 01:43:51,003.003 INFO    ] Initializing speech engine...
[2026-06-12 01:43:51,008.008 INFO    ] 2026-06-12 01:43:51
[2026-06-12 01:43:51,234.234 INFO    ] 2026-06-12 01:43:51
[2026-06-12 01:43:51,268.268 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 01:43:51,464.464 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 01:43:51,467.467 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 01:43:51,629.629 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 01:43:51,685.685 INFO    ] time= 12/06/2026 01:43:51
[2026-06-12 01:43:51,709.709 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 01:43:51,715.715 INFO    ] Checking for existing commands in stream...
[2026-06-12 01:43:51,784.784 INFO    ] No existing commands found in stream
[2026-06-12 01:43:56,795.795 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 01:43:56,798.798 INFO    ] Waiting 2.67 seconds before fallback handling...
[2026-06-12 01:43:59,845.845 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 01:43:59,846.846 INFO    ] Checking for system updates...
[2026-06-12 01:43:59,866.866 INFO    ] 200
[2026-06-12 01:43:59,868.868 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:43:59,900.900 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 01:43:59,901.901 INFO    ] No update needed
[2026-06-12 01:43:59,903.903 INFO    ] Checking for camera pi updates...
[2026-06-12 01:43:59,922.922 INFO    ] 200
[2026-06-12 01:43:59,923.923 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:43:59,947.947 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 01:43:59,984.984 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 01:43:59,986.986 INFO    ] No camera update needed
[2026-06-12 01:43:59,987.987 INFO    ] Script finished. Safe exiting...
[2026-06-12 01:43:59,988.988 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 01:43:59,991.991 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 01:43:59,994.994 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 01:44:02,028.028 INFO    ] ================================================
[2026-06-12 01:44:02,040.040 INFO    ] Launching Daemon at Fri Jun 12 01:44:02 IST 2026
[2026-06-12 01:44:02,048.048 INFO    ] ================================================
[2026-06-12 01:44:02,398.398 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 01:44:02
[2026-06-12 01:44:02,731.731 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 01:44:02,868.868 INFO    ] Initializing speech engine...
[2026-06-12 01:44:02,879.879 INFO    ] 2026-06-12 01:44:02
[2026-06-12 01:44:03,083.083 INFO    ] 2026-06-12 01:44:03
[2026-06-12 01:44:03,110.110 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 01:44:03,237.237 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 01:44:03,296.296 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 01:44:03,428.428 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 01:44:03,491.491 INFO    ] time= 12/06/2026 01:44:03
[2026-06-12 01:44:03,523.523 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 01:44:03,529.529 INFO    ] Checking for existing commands in stream...
[2026-06-12 01:44:03,619.619 INFO    ] No existing commands found in stream
[2026-06-12 01:44:08,628.628 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 01:44:08,631.631 INFO    ] Waiting 0.01 seconds before fallback handling...
[2026-06-12 01:44:08,994.994 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 01:44:08,995.995 INFO    ] Checking for system updates...
[2026-06-12 01:44:09,016.016 INFO    ] 200
[2026-06-12 01:44:09,017.017 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:44:09,047.047 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 01:44:09,048.048 INFO    ] No update needed
[2026-06-12 01:44:09,049.049 INFO    ] Checking for camera pi updates...
[2026-06-12 01:44:09,069.069 INFO    ] 200
[2026-06-12 01:44:09,070.070 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:44:09,093.093 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 01:44:09,231.231 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 01:44:09,232.232 INFO    ] No camera update needed
[2026-06-12 01:44:09,233.233 INFO    ] Script finished. Safe exiting...
[2026-06-12 01:44:09,234.234 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 01:44:09,237.237 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 01:44:09,240.240 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 01:44:11,280.280 INFO    ] ================================================
[2026-06-12 01:44:11,296.296 INFO    ] Launching Daemon at Fri Jun 12 01:44:11 IST 2026
[2026-06-12 01:44:11,310.310 INFO    ] ================================================
[2026-06-12 01:44:11,652.652 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 01:44:11
[2026-06-12 01:44:11,965.965 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 01:44:12,107.107 INFO    ] Initializing speech engine...
[2026-06-12 01:44:12,113.113 INFO    ] 2026-06-12 01:44:12
[2026-06-12 01:44:12,314.314 INFO    ] 2026-06-12 01:44:12
[2026-06-12 01:44:12,342.342 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 01:44:12,463.463 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 01:44:12,526.526 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 01:44:12,663.663 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 01:44:12,722.722 INFO    ] time= 12/06/2026 01:44:12
[2026-06-12 01:44:12,755.755 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 01:44:12,761.761 INFO    ] Checking for existing commands in stream...
[2026-06-12 01:44:12,828.828 INFO    ] No existing commands found in stream
[2026-06-12 01:44:17,837.837 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 01:44:17,840.840 INFO    ] Waiting 2.17 seconds before fallback handling...
[2026-06-12 01:44:20,375.375 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 01:44:20,376.376 INFO    ] Checking for system updates...
[2026-06-12 01:44:20,397.397 INFO    ] 200
[2026-06-12 01:44:20,398.398 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:44:20,430.430 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 01:44:20,432.432 INFO    ] No update needed
[2026-06-12 01:44:20,433.433 INFO    ] Checking for camera pi updates...
[2026-06-12 01:44:20,453.453 INFO    ] 200
[2026-06-12 01:44:20,454.454 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:44:20,477.477 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 01:44:20,519.519 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 01:44:20,521.521 INFO    ] No camera update needed
[2026-06-12 01:44:20,522.522 INFO    ] Script finished. Safe exiting...
[2026-06-12 01:44:20,523.523 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 01:44:20,526.526 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 01:44:20,529.529 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 01:44:22,568.568 INFO    ] ================================================
[2026-06-12 01:44:22,583.583 INFO    ] Launching Daemon at Fri Jun 12 01:44:22 IST 2026
[2026-06-12 01:44:22,594.594 INFO    ] ================================================
[2026-06-12 01:44:22,942.942 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 01:44:22
[2026-06-12 01:44:23,275.275 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 01:44:23,425.425 INFO    ] Initializing speech engine...
[2026-06-12 01:44:23,432.432 INFO    ] 2026-06-12 01:44:23
[2026-06-12 01:44:23,641.641 INFO    ] 2026-06-12 01:44:23
[2026-06-12 01:44:23,671.671 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 01:44:23,858.858 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 01:44:23,868.868 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 01:44:24,006.006 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 01:44:24,069.069 INFO    ] time= 12/06/2026 01:44:24
[2026-06-12 01:44:24,093.093 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 01:44:24,100.100 INFO    ] Checking for existing commands in stream...
[2026-06-12 01:44:24,168.168 INFO    ] No existing commands found in stream
[2026-06-12 01:44:29,182.182 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 01:44:29,185.185 INFO    ] Waiting 0.87 seconds before fallback handling...
[2026-06-12 01:44:30,407.407 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 01:44:30,408.408 INFO    ] Checking for system updates...
[2026-06-12 01:44:30,433.433 INFO    ] 200
[2026-06-12 01:44:30,434.434 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:44:30,465.465 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 01:44:30,466.466 INFO    ] No update needed
[2026-06-12 01:44:30,467.467 INFO    ] Checking for camera pi updates...
[2026-06-12 01:44:30,489.489 INFO    ] 200
[2026-06-12 01:44:30,490.490 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:44:30,517.517 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 01:44:30,561.561 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 01:44:30,562.562 INFO    ] No camera update needed
[2026-06-12 01:44:30,564.564 INFO    ] Script finished. Safe exiting...
[2026-06-12 01:44:30,565.565 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 01:44:30,568.568 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 01:44:30,571.571 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 01:44:32,617.617 INFO    ] ================================================
[2026-06-12 01:44:32,632.632 INFO    ] Launching Daemon at Fri Jun 12 01:44:32 IST 2026
[2026-06-12 01:44:32,642.642 INFO    ] ================================================
[2026-06-12 01:44:33,027.027 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 01:44:33
[2026-06-12 01:44:33,362.362 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 01:44:33,514.514 INFO    ] Initializing speech engine...
[2026-06-12 01:44:33,521.521 INFO    ] 2026-06-12 01:44:33
[2026-06-12 01:44:33,729.729 INFO    ] 2026-06-12 01:44:33
[2026-06-12 01:44:33,758.758 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 01:44:33,946.946 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 01:44:33,955.955 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 01:44:34,102.102 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 01:44:34,158.158 INFO    ] time= 12/06/2026 01:44:34
[2026-06-12 01:44:34,180.180 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 01:44:34,187.187 INFO    ] Checking for existing commands in stream...
[2026-06-12 01:44:34,255.255 INFO    ] No existing commands found in stream
[2026-06-12 01:44:39,264.264 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 01:44:39,267.267 INFO    ] Waiting 2.64 seconds before fallback handling...
[2026-06-12 01:44:42,275.275 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 01:44:42,276.276 INFO    ] Checking for system updates...
[2026-06-12 01:44:42,298.298 INFO    ] 200
[2026-06-12 01:44:42,299.299 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:44:42,329.329 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 01:44:42,330.330 INFO    ] No update needed
[2026-06-12 01:44:42,332.332 INFO    ] Checking for camera pi updates...
[2026-06-12 01:44:42,353.353 INFO    ] 200
[2026-06-12 01:44:42,354.354 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:44:42,379.379 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 01:44:42,417.417 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 01:44:42,419.419 INFO    ] No camera update needed
[2026-06-12 01:44:42,420.420 INFO    ] Script finished. Safe exiting...
[2026-06-12 01:44:42,421.421 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 01:44:42,424.424 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 01:44:42,427.427 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 01:44:44,465.465 INFO    ] ================================================
[2026-06-12 01:44:44,480.480 INFO    ] Launching Daemon at Fri Jun 12 01:44:44 IST 2026
[2026-06-12 01:44:44,490.490 INFO    ] ================================================
[2026-06-12 01:44:44,809.809 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 01:44:44
[2026-06-12 01:44:45,123.123 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 01:44:45,253.253 INFO    ] Initializing speech engine...
[2026-06-12 01:44:45,266.266 INFO    ] 2026-06-12 01:44:45
[2026-06-12 01:44:45,472.472 INFO    ] 2026-06-12 01:44:45
[2026-06-12 01:44:45,501.501 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 01:44:45,683.683 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 01:44:45,692.692 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 01:44:45,820.820 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 01:44:45,884.884 INFO    ] time= 12/06/2026 01:44:45
[2026-06-12 01:44:45,910.910 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 01:44:45,916.916 INFO    ] Checking for existing commands in stream...
[2026-06-12 01:44:45,983.983 INFO    ] No existing commands found in stream
[2026-06-12 01:44:50,997.997 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 01:44:50,999.999 INFO    ] Waiting 3.39 seconds before fallback handling...
[2026-06-12 01:44:54,740.740 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 01:44:54,741.741 INFO    ] Checking for system updates...
[2026-06-12 01:44:54,762.762 INFO    ] 200
[2026-06-12 01:44:54,763.763 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:44:54,794.794 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 01:44:54,795.795 INFO    ] No update needed
[2026-06-12 01:44:54,796.796 INFO    ] Checking for camera pi updates...
[2026-06-12 01:44:54,816.816 INFO    ] 200
[2026-06-12 01:44:54,817.817 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:44:54,841.841 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 01:44:54,881.881 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 01:44:54,882.882 INFO    ] No camera update needed
[2026-06-12 01:44:54,883.883 INFO    ] Script finished. Safe exiting...
[2026-06-12 01:44:54,885.885 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 01:44:54,888.888 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 01:44:54,890.890 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 01:44:56,928.928 INFO    ] ================================================
[2026-06-12 01:44:56,943.943 INFO    ] Launching Daemon at Fri Jun 12 01:44:56 IST 2026
[2026-06-12 01:44:56,954.954 INFO    ] ================================================
[2026-06-12 01:44:57,290.290 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 01:44:57
[2026-06-12 01:44:57,602.602 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 01:44:57,734.734 INFO    ] Initializing speech engine...
[2026-06-12 01:44:57,739.739 INFO    ] 2026-06-12 01:44:57
[2026-06-12 01:44:57,966.966 INFO    ] 2026-06-12 01:44:57
[2026-06-12 01:44:57,996.996 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 01:44:58,192.192 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 01:44:58,196.196 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 01:44:58,339.339 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 01:44:58,402.402 INFO    ] time= 12/06/2026 01:44:58
[2026-06-12 01:44:58,436.436 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 01:44:58,442.442 INFO    ] Checking for existing commands in stream...
[2026-06-12 01:44:58,517.517 INFO    ] No existing commands found in stream
[2026-06-12 01:45:03,527.527 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 01:45:03,530.530 INFO    ] Waiting 3.56 seconds before fallback handling...
[2026-06-12 01:45:07,447.447 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 01:45:07,449.449 INFO    ] Checking for system updates...
[2026-06-12 01:45:07,470.470 INFO    ] 200
[2026-06-12 01:45:07,472.472 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:45:07,502.502 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 01:45:07,503.503 INFO    ] No update needed
[2026-06-12 01:45:07,505.505 INFO    ] Checking for camera pi updates...
[2026-06-12 01:45:07,525.525 INFO    ] 200
[2026-06-12 01:45:07,526.526 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:45:07,550.550 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 01:45:07,596.596 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 01:45:07,597.597 INFO    ] No camera update needed
[2026-06-12 01:45:07,599.599 INFO    ] Script finished. Safe exiting...
[2026-06-12 01:45:07,600.600 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 01:45:07,603.603 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 01:45:07,606.606 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 01:45:09,645.645 INFO    ] ================================================
[2026-06-12 01:45:09,661.661 INFO    ] Launching Daemon at Fri Jun 12 01:45:09 IST 2026
[2026-06-12 01:45:09,673.673 INFO    ] ================================================
[2026-06-12 01:45:10,050.050 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 01:45:10
[2026-06-12 01:45:10,386.386 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 01:45:10,539.539 INFO    ] Initializing speech engine...
[2026-06-12 01:45:10,543.543 INFO    ] 2026-06-12 01:45:10
[2026-06-12 01:45:10,752.752 INFO    ] 2026-06-12 01:45:10
[2026-06-12 01:45:10,782.782 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 01:45:10,968.968 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 01:45:10,978.978 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 01:45:11,102.102 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 01:45:11,163.163 INFO    ] time= 12/06/2026 01:45:11
[2026-06-12 01:45:11,202.202 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 01:45:11,209.209 INFO    ] Checking for existing commands in stream...
[2026-06-12 01:45:11,277.277 INFO    ] No existing commands found in stream
[2026-06-12 01:45:16,311.311 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 01:45:16,314.314 INFO    ] Waiting 2.25 seconds before fallback handling...
[2026-06-12 01:45:18,957.957 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 01:45:18,959.959 INFO    ] Checking for system updates...
[2026-06-12 01:45:18,980.980 INFO    ] 200
[2026-06-12 01:45:18,981.981 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:45:19,012.012 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 01:45:19,014.014 INFO    ] No update needed
[2026-06-12 01:45:19,015.015 INFO    ] Checking for camera pi updates...
[2026-06-12 01:45:19,035.035 INFO    ] 200
[2026-06-12 01:45:19,037.037 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:45:19,062.062 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 01:45:19,103.103 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 01:45:19,104.104 INFO    ] No camera update needed
[2026-06-12 01:45:19,106.106 INFO    ] Script finished. Safe exiting...
[2026-06-12 01:45:19,107.107 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 01:45:19,111.111 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 01:45:19,114.114 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 01:45:21,154.154 INFO    ] ================================================
[2026-06-12 01:45:21,170.170 INFO    ] Launching Daemon at Fri Jun 12 01:45:21 IST 2026
[2026-06-12 01:45:21,181.181 INFO    ] ================================================
[2026-06-12 01:45:21,541.541 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 01:45:21
[2026-06-12 01:45:21,853.853 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 01:45:21,985.985 INFO    ] Initializing speech engine...
[2026-06-12 01:45:21,993.993 INFO    ] 2026-06-12 01:45:21
[2026-06-12 01:45:22,207.207 INFO    ] 2026-06-12 01:45:22
[2026-06-12 01:45:22,235.235 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 01:45:22,423.423 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 01:45:22,432.432 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 01:45:22,557.557 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 01:45:22,613.613 INFO    ] time= 12/06/2026 01:45:22
[2026-06-12 01:45:22,654.654 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 01:45:22,660.660 INFO    ] Checking for existing commands in stream...
[2026-06-12 01:45:22,756.756 INFO    ] No existing commands found in stream
[2026-06-12 01:45:27,765.765 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 01:45:27,768.768 INFO    ] Waiting 3.48 seconds before fallback handling...
[2026-06-12 01:45:31,617.617 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 01:45:31,618.618 INFO    ] Checking for system updates...
[2026-06-12 01:45:31,639.639 INFO    ] 200
[2026-06-12 01:45:31,641.641 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:45:31,671.671 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 01:45:31,672.672 INFO    ] No update needed
[2026-06-12 01:45:31,673.673 INFO    ] Checking for camera pi updates...
[2026-06-12 01:45:31,694.694 INFO    ] 200
[2026-06-12 01:45:31,695.695 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:45:31,720.720 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 01:45:31,750.750 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 01:45:31,751.751 INFO    ] No camera update needed
[2026-06-12 01:45:31,752.752 INFO    ] Script finished. Safe exiting...
[2026-06-12 01:45:31,754.754 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 01:45:31,757.757 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 01:45:31,759.759 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 01:45:33,792.792 INFO    ] ================================================
[2026-06-12 01:45:33,807.807 INFO    ] Launching Daemon at Fri Jun 12 01:45:33 IST 2026
[2026-06-12 01:45:33,818.818 INFO    ] ================================================
[2026-06-12 01:45:34,176.176 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 01:45:34
[2026-06-12 01:45:34,518.518 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 01:45:34,661.661 INFO    ] Initializing speech engine...
[2026-06-12 01:45:34,673.673 INFO    ] 2026-06-12 01:45:34
[2026-06-12 01:45:34,892.892 INFO    ] 2026-06-12 01:45:34
[2026-06-12 01:45:34,922.922 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 01:45:35,108.108 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 01:45:35,118.118 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 01:45:35,248.248 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 01:45:35,319.319 INFO    ] time= 12/06/2026 01:45:35
[2026-06-12 01:45:35,344.344 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 01:45:35,350.350 INFO    ] Checking for existing commands in stream...
[2026-06-12 01:45:35,419.419 INFO    ] No existing commands found in stream
[2026-06-12 01:45:40,433.433 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 01:45:40,436.436 INFO    ] Waiting 1.05 seconds before fallback handling...
[2026-06-12 01:45:41,835.835 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 01:45:41,836.836 INFO    ] Checking for system updates...
[2026-06-12 01:45:41,858.858 INFO    ] 200
[2026-06-12 01:45:41,859.859 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:45:41,892.892 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 01:45:41,893.893 INFO    ] No update needed
[2026-06-12 01:45:41,894.894 INFO    ] Checking for camera pi updates...
[2026-06-12 01:45:41,915.915 INFO    ] 200
[2026-06-12 01:45:41,916.916 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:45:41,941.941 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 01:45:41,980.980 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 01:45:41,982.982 INFO    ] No camera update needed
[2026-06-12 01:45:41,983.983 INFO    ] Script finished. Safe exiting...
[2026-06-12 01:45:41,984.984 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 01:45:41,987.987 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 01:45:41,990.990 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 01:45:44,028.028 INFO    ] ================================================
[2026-06-12 01:45:44,043.043 INFO    ] Launching Daemon at Fri Jun 12 01:45:44 IST 2026
[2026-06-12 01:45:44,055.055 INFO    ] ================================================
[2026-06-12 01:45:44,389.389 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 01:45:44
[2026-06-12 01:45:44,707.707 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 01:45:44,846.846 INFO    ] Initializing speech engine...
[2026-06-12 01:45:44,859.859 INFO    ] 2026-06-12 01:45:44
[2026-06-12 01:45:45,079.079 INFO    ] 2026-06-12 01:45:45
[2026-06-12 01:45:45,110.110 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 01:45:45,300.300 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 01:45:45,308.308 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 01:45:45,434.434 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 01:45:45,495.495 INFO    ] time= 12/06/2026 01:45:45
[2026-06-12 01:45:45,531.531 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 01:45:45,536.536 INFO    ] Checking for existing commands in stream...
[2026-06-12 01:45:45,633.633 INFO    ] No existing commands found in stream
[2026-06-12 01:45:50,647.647 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 01:45:50,650.650 INFO    ] Waiting 1.53 seconds before fallback handling...
[2026-06-12 01:45:52,558.558 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 01:45:52,559.559 INFO    ] Checking for system updates...
[2026-06-12 01:45:52,580.580 INFO    ] 200
[2026-06-12 01:45:52,581.581 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:45:52,612.612 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 01:45:52,613.613 INFO    ] No update needed
[2026-06-12 01:45:52,614.614 INFO    ] Checking for camera pi updates...
[2026-06-12 01:45:52,634.634 INFO    ] 200
[2026-06-12 01:45:52,635.635 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:45:52,658.658 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 01:45:52,700.700 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 01:45:52,702.702 INFO    ] No camera update needed
[2026-06-12 01:45:52,703.703 INFO    ] Script finished. Safe exiting...
[2026-06-12 01:45:52,704.704 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 01:45:52,707.707 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 01:45:52,710.710 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 01:45:54,741.741 INFO    ] ================================================
[2026-06-12 01:45:54,750.750 INFO    ] Launching Daemon at Fri Jun 12 01:45:54 IST 2026
[2026-06-12 01:45:54,756.756 INFO    ] ================================================
[2026-06-12 01:45:55,107.107 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 01:45:55
[2026-06-12 01:45:55,420.420 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 01:45:55,555.555 INFO    ] Initializing speech engine...
[2026-06-12 01:45:55,559.559 INFO    ] 2026-06-12 01:45:55
[2026-06-12 01:45:55,790.790 INFO    ] 2026-06-12 01:45:55
[2026-06-12 01:45:55,821.821 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 01:45:56,021.021 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 01:45:56,025.025 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 01:45:56,170.170 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 01:45:56,222.222 INFO    ] time= 12/06/2026 01:45:56
[2026-06-12 01:45:56,252.252 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 01:45:56,274.274 INFO    ] Checking for existing commands in stream...
[2026-06-12 01:45:56,351.351 INFO    ] No existing commands found in stream
[2026-06-12 01:46:01,362.362 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 01:46:01,364.364 INFO    ] Waiting 2.79 seconds before fallback handling...
[2026-06-12 01:46:04,513.513 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 01:46:04,515.515 INFO    ] Checking for system updates...
[2026-06-12 01:46:04,536.536 INFO    ] 200
[2026-06-12 01:46:04,538.538 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:46:04,570.570 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 01:46:04,571.571 INFO    ] No update needed
[2026-06-12 01:46:04,573.573 INFO    ] Checking for camera pi updates...
[2026-06-12 01:46:04,592.592 INFO    ] 200
[2026-06-12 01:46:04,593.593 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:46:04,618.618 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 01:46:04,662.662 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 01:46:04,663.663 INFO    ] No camera update needed
[2026-06-12 01:46:04,665.665 INFO    ] Script finished. Safe exiting...
[2026-06-12 01:46:04,666.666 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 01:46:04,669.669 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 01:46:04,672.672 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 01:46:06,710.710 INFO    ] ================================================
[2026-06-12 01:46:06,726.726 INFO    ] Launching Daemon at Fri Jun 12 01:46:06 IST 2026
[2026-06-12 01:46:06,737.737 INFO    ] ================================================
[2026-06-12 01:46:07,066.066 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 01:46:07
[2026-06-12 01:46:07,384.384 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 01:46:07,517.517 INFO    ] Initializing speech engine...
[2026-06-12 01:46:07,522.522 INFO    ] 2026-06-12 01:46:07
[2026-06-12 01:46:07,750.750 INFO    ] 2026-06-12 01:46:07
[2026-06-12 01:46:07,781.781 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 01:46:07,977.977 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 01:46:07,981.981 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 01:46:08,120.120 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 01:46:08,181.181 INFO    ] time= 12/06/2026 01:46:08
[2026-06-12 01:46:08,221.221 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 01:46:08,227.227 INFO    ] Checking for existing commands in stream...
[2026-06-12 01:46:08,301.301 INFO    ] No existing commands found in stream
[2026-06-12 01:46:13,312.312 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 01:46:13,315.315 INFO    ] Waiting 2.97 seconds before fallback handling...
[2026-06-12 01:46:16,627.627 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 01:46:16,628.628 INFO    ] Checking for system updates...
[2026-06-12 01:46:16,649.649 INFO    ] 200
[2026-06-12 01:46:16,651.651 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:46:16,681.681 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 01:46:16,682.682 INFO    ] No update needed
[2026-06-12 01:46:16,684.684 INFO    ] Checking for camera pi updates...
[2026-06-12 01:46:16,706.706 INFO    ] 200
[2026-06-12 01:46:16,707.707 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:46:16,731.731 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 01:46:16,868.868 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 01:46:16,869.869 INFO    ] No camera update needed
[2026-06-12 01:46:16,870.870 INFO    ] Script finished. Safe exiting...
[2026-06-12 01:46:16,872.872 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 01:46:16,875.875 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 01:46:16,878.878 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 01:46:18,917.917 INFO    ] ================================================
[2026-06-12 01:46:18,932.932 INFO    ] Launching Daemon at Fri Jun 12 01:46:18 IST 2026
[2026-06-12 01:46:18,943.943 INFO    ] ================================================
[2026-06-12 01:46:19,271.271 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 01:46:19
[2026-06-12 01:46:19,582.582 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 01:46:19,713.713 INFO    ] Initializing speech engine...
[2026-06-12 01:46:19,716.716 INFO    ] 2026-06-12 01:46:19
[2026-06-12 01:46:19,934.934 INFO    ] 2026-06-12 01:46:19
[2026-06-12 01:46:19,962.962 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 01:46:20,148.148 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 01:46:20,158.158 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 01:46:20,289.289 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 01:46:20,353.353 INFO    ] time= 12/06/2026 01:46:20
[2026-06-12 01:46:20,381.381 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 01:46:20,383.383 INFO    ] Checking for existing commands in stream...
[2026-06-12 01:46:20,455.455 INFO    ] No existing commands found in stream
[2026-06-12 01:46:25,464.464 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 01:46:25,467.467 INFO    ] Waiting 3.99 seconds before fallback handling...
[2026-06-12 01:46:29,829.829 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 01:46:29,830.830 INFO    ] Checking for system updates...
[2026-06-12 01:46:29,851.851 INFO    ] 200
[2026-06-12 01:46:29,852.852 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:46:29,884.884 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 01:46:29,886.886 INFO    ] No update needed
[2026-06-12 01:46:29,887.887 INFO    ] Checking for camera pi updates...
[2026-06-12 01:46:29,906.906 INFO    ] 200
[2026-06-12 01:46:29,907.907 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:46:29,931.931 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 01:46:29,974.974 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 01:46:29,975.975 INFO    ] No camera update needed
[2026-06-12 01:46:29,976.976 INFO    ] Script finished. Safe exiting...
[2026-06-12 01:46:29,978.978 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 01:46:29,981.981 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 01:46:29,983.983 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 01:46:32,018.018 INFO    ] ================================================
[2026-06-12 01:46:32,027.027 INFO    ] Launching Daemon at Fri Jun 12 01:46:32 IST 2026
[2026-06-12 01:46:32,033.033 INFO    ] ================================================
[2026-06-12 01:46:32,422.422 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 01:46:32
[2026-06-12 01:46:32,761.761 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 01:46:32,916.916 INFO    ] Initializing speech engine...
[2026-06-12 01:46:32,921.921 INFO    ] 2026-06-12 01:46:32
[2026-06-12 01:46:33,129.129 INFO    ] 2026-06-12 01:46:33
[2026-06-12 01:46:33,159.159 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 01:46:33,284.284 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 01:46:33,342.342 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 01:46:33,488.488 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 01:46:33,556.556 INFO    ] time= 12/06/2026 01:46:33
[2026-06-12 01:46:33,581.581 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 01:46:33,588.588 INFO    ] Checking for existing commands in stream...
[2026-06-12 01:46:33,655.655 INFO    ] No existing commands found in stream
[2026-06-12 01:46:38,666.666 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 01:46:38,669.669 INFO    ] Waiting 1.79 seconds before fallback handling...
[2026-06-12 01:46:40,816.816 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 01:46:40,818.818 INFO    ] Checking for system updates...
[2026-06-12 01:46:40,859.859 INFO    ] 200
[2026-06-12 01:46:40,862.862 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:46:40,915.915 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 01:46:40,917.917 INFO    ] No update needed
[2026-06-12 01:46:40,920.920 INFO    ] Checking for camera pi updates...
[2026-06-12 01:46:40,940.940 INFO    ] 200
[2026-06-12 01:46:40,942.942 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:46:40,965.965 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 01:46:41,007.007 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 01:46:41,008.008 INFO    ] No camera update needed
[2026-06-12 01:46:41,009.009 INFO    ] Script finished. Safe exiting...
[2026-06-12 01:46:41,011.011 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 01:46:41,014.014 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 01:46:41,016.016 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 01:46:43,054.054 INFO    ] ================================================
[2026-06-12 01:46:43,070.070 INFO    ] Launching Daemon at Fri Jun 12 01:46:43 IST 2026
[2026-06-12 01:46:43,080.080 INFO    ] ================================================
[2026-06-12 01:46:43,467.467 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 01:46:43
[2026-06-12 01:46:43,805.805 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 01:46:43,955.955 INFO    ] Initializing speech engine...
[2026-06-12 01:46:43,960.960 INFO    ] 2026-06-12 01:46:43
[2026-06-12 01:46:44,169.169 INFO    ] 2026-06-12 01:46:44
[2026-06-12 01:46:44,198.198 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 01:46:44,383.383 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 01:46:44,393.393 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 01:46:44,519.519 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 01:46:44,585.585 INFO    ] time= 12/06/2026 01:46:44
[2026-06-12 01:46:44,612.612 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 01:46:44,619.619 INFO    ] Checking for existing commands in stream...
[2026-06-12 01:46:44,686.686 INFO    ] No existing commands found in stream
[2026-06-12 01:46:49,700.700 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 01:46:49,703.703 INFO    ] Waiting 3.77 seconds before fallback handling...
[2026-06-12 01:46:53,891.891 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 01:46:53,893.893 INFO    ] Checking for system updates...
[2026-06-12 01:46:53,914.914 INFO    ] 200
[2026-06-12 01:46:53,915.915 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:46:53,950.950 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 01:46:53,952.952 INFO    ] No update needed
[2026-06-12 01:46:53,953.953 INFO    ] Checking for camera pi updates...
[2026-06-12 01:46:53,972.972 INFO    ] 200
[2026-06-12 01:46:53,974.974 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:46:53,997.997 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 01:46:54,037.037 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 01:46:54,038.038 INFO    ] No camera update needed
[2026-06-12 01:46:54,039.039 INFO    ] Script finished. Safe exiting...
[2026-06-12 01:46:54,041.041 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 01:46:54,044.044 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 01:46:54,047.047 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 01:46:56,086.086 INFO    ] ================================================
[2026-06-12 01:46:56,101.101 INFO    ] Launching Daemon at Fri Jun 12 01:46:56 IST 2026
[2026-06-12 01:46:56,112.112 INFO    ] ================================================
[2026-06-12 01:46:56,453.453 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 01:46:56
[2026-06-12 01:46:56,767.767 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 01:46:56,904.904 INFO    ] Initializing speech engine...
[2026-06-12 01:46:56,914.914 INFO    ] 2026-06-12 01:46:56
[2026-06-12 01:46:57,119.119 INFO    ] 2026-06-12 01:46:57
[2026-06-12 01:46:57,146.146 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 01:46:57,269.269 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 01:46:57,291.291 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 01:46:57,457.457 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 01:46:57,495.495 INFO    ] time= 12/06/2026 01:46:57
[2026-06-12 01:46:57,544.544 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 01:46:57,566.566 INFO    ] Checking for existing commands in stream...
[2026-06-12 01:46:57,638.638 INFO    ] No existing commands found in stream
[2026-06-12 01:47:02,645.645 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 01:47:02,646.646 INFO    ] Waiting 3.70 seconds before fallback handling...
[2026-06-12 01:47:06,730.730 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 01:47:06,731.731 INFO    ] Checking for system updates...
[2026-06-12 01:47:06,759.759 INFO    ] 200
[2026-06-12 01:47:06,761.761 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:47:06,793.793 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 01:47:06,794.794 INFO    ] No update needed
[2026-06-12 01:47:06,795.795 INFO    ] Checking for camera pi updates...
[2026-06-12 01:47:06,815.815 INFO    ] 200
[2026-06-12 01:47:06,817.817 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:47:06,840.840 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 01:47:06,885.885 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 01:47:06,887.887 INFO    ] No camera update needed
[2026-06-12 01:47:06,888.888 INFO    ] Script finished. Safe exiting...
[2026-06-12 01:47:06,889.889 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 01:47:06,892.892 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 01:47:06,895.895 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 01:47:08,933.933 INFO    ] ================================================
[2026-06-12 01:47:08,948.948 INFO    ] Launching Daemon at Fri Jun 12 01:47:08 IST 2026
[2026-06-12 01:47:08,959.959 INFO    ] ================================================
[2026-06-12 01:47:09,321.321 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 01:47:09
[2026-06-12 01:47:09,631.631 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 01:47:09,762.762 INFO    ] Initializing speech engine...
[2026-06-12 01:47:09,770.770 INFO    ] 2026-06-12 01:47:09
[2026-06-12 01:47:09,980.980 INFO    ] 2026-06-12 01:47:09
[2026-06-12 01:47:10,009.009 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 01:47:10,193.193 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 01:47:10,201.201 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 01:47:10,335.335 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 01:47:10,396.396 INFO    ] time= 12/06/2026 01:47:10
[2026-06-12 01:47:10,420.420 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 01:47:10,426.426 INFO    ] Checking for existing commands in stream...
[2026-06-12 01:47:10,493.493 INFO    ] No existing commands found in stream
[2026-06-12 01:47:15,507.507 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 01:47:15,510.510 INFO    ] Waiting 0.61 seconds before fallback handling...
[2026-06-12 01:47:16,497.497 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 01:47:16,499.499 INFO    ] Checking for system updates...
[2026-06-12 01:47:16,521.521 INFO    ] 200
[2026-06-12 01:47:16,522.522 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:47:16,553.553 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 01:47:16,554.554 INFO    ] No update needed
[2026-06-12 01:47:16,555.555 INFO    ] Checking for camera pi updates...
[2026-06-12 01:47:16,574.574 INFO    ] 200
[2026-06-12 01:47:16,575.575 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:47:16,598.598 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 01:47:16,644.644 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 01:47:16,645.645 INFO    ] No camera update needed
[2026-06-12 01:47:16,646.646 INFO    ] Script finished. Safe exiting...
[2026-06-12 01:47:16,647.647 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 01:47:16,651.651 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 01:47:16,653.653 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 01:47:18,694.694 INFO    ] ================================================
[2026-06-12 01:47:18,709.709 INFO    ] Launching Daemon at Fri Jun 12 01:47:18 IST 2026
[2026-06-12 01:47:18,720.720 INFO    ] ================================================
[2026-06-12 01:47:19,071.071 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 01:47:19
[2026-06-12 01:47:19,383.383 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 01:47:19,524.524 INFO    ] Initializing speech engine...
[2026-06-12 01:47:19,529.529 INFO    ] 2026-06-12 01:47:19
[2026-06-12 01:47:19,733.733 INFO    ] 2026-06-12 01:47:19
[2026-06-12 01:47:19,761.761 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 01:47:19,942.942 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 01:47:19,946.946 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 01:47:20,081.081 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 01:47:20,145.145 INFO    ] time= 12/06/2026 01:47:20
[2026-06-12 01:47:20,172.172 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 01:47:20,178.178 INFO    ] Checking for existing commands in stream...
[2026-06-12 01:47:20,245.245 INFO    ] No existing commands found in stream
[2026-06-12 01:47:25,253.253 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 01:47:25,256.256 INFO    ] Waiting 0.30 seconds before fallback handling...
[2026-06-12 01:47:25,951.951 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 01:47:25,953.953 INFO    ] Checking for system updates...
[2026-06-12 01:47:25,978.978 INFO    ] 200
[2026-06-12 01:47:25,979.979 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:47:26,010.010 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 01:47:26,012.012 INFO    ] No update needed
[2026-06-12 01:47:26,013.013 INFO    ] Checking for camera pi updates...
[2026-06-12 01:47:26,033.033 INFO    ] 200
[2026-06-12 01:47:26,034.034 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:47:26,059.059 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 01:47:26,104.104 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 01:47:26,106.106 INFO    ] No camera update needed
[2026-06-12 01:47:26,108.108 INFO    ] Script finished. Safe exiting...
[2026-06-12 01:47:26,109.109 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 01:47:26,112.112 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 01:47:26,115.115 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 01:47:28,155.155 INFO    ] ================================================
[2026-06-12 01:47:28,170.170 INFO    ] Launching Daemon at Fri Jun 12 01:47:28 IST 2026
[2026-06-12 01:47:28,181.181 INFO    ] ================================================
[2026-06-12 01:47:28,549.549 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 01:47:28
[2026-06-12 01:47:28,883.883 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 01:47:29,025.025 INFO    ] Initializing speech engine...
[2026-06-12 01:47:29,033.033 INFO    ] 2026-06-12 01:47:29
[2026-06-12 01:47:29,252.252 INFO    ] 2026-06-12 01:47:29
[2026-06-12 01:47:29,281.281 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 01:47:29,466.466 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 01:47:29,476.476 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 01:47:29,629.629 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 01:47:29,678.678 INFO    ] time= 12/06/2026 01:47:29
[2026-06-12 01:47:29,700.700 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 01:47:29,707.707 INFO    ] Checking for existing commands in stream...
[2026-06-12 01:47:29,778.778 INFO    ] No existing commands found in stream
[2026-06-12 01:47:34,792.792 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 01:47:34,796.796 INFO    ] Waiting 3.91 seconds before fallback handling...
[2026-06-12 01:47:39,088.088 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 01:47:39,089.089 INFO    ] Checking for system updates...
[2026-06-12 01:47:39,111.111 INFO    ] 200
[2026-06-12 01:47:39,112.112 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:47:39,143.143 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 01:47:39,144.144 INFO    ] No update needed
[2026-06-12 01:47:39,146.146 INFO    ] Checking for camera pi updates...
[2026-06-12 01:47:39,166.166 INFO    ] 200
[2026-06-12 01:47:39,168.168 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:47:39,195.195 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 01:47:39,239.239 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 01:47:39,241.241 INFO    ] No camera update needed
[2026-06-12 01:47:39,242.242 INFO    ] Script finished. Safe exiting...
[2026-06-12 01:47:39,243.243 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 01:47:39,246.246 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 01:47:39,250.250 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 01:47:41,288.288 INFO    ] ================================================
[2026-06-12 01:47:41,304.304 INFO    ] Launching Daemon at Fri Jun 12 01:47:41 IST 2026
[2026-06-12 01:47:41,315.315 INFO    ] ================================================
[2026-06-12 01:47:41,683.683 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 01:47:41
[2026-06-12 01:47:42,023.023 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 01:47:42,171.171 INFO    ] Initializing speech engine...
[2026-06-12 01:47:42,177.177 INFO    ] 2026-06-12 01:47:42
[2026-06-12 01:47:42,382.382 INFO    ] 2026-06-12 01:47:42
[2026-06-12 01:47:42,411.411 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 01:47:42,580.580 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 01:47:42,598.598 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 01:47:42,733.733 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 01:47:42,797.797 INFO    ] time= 12/06/2026 01:47:42
[2026-06-12 01:47:42,824.824 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 01:47:42,830.830 INFO    ] Checking for existing commands in stream...
[2026-06-12 01:47:42,897.897 INFO    ] No existing commands found in stream
[2026-06-12 01:47:47,911.911 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 01:47:47,915.915 INFO    ] Waiting 3.49 seconds before fallback handling...
[2026-06-12 01:47:51,805.805 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 01:47:51,807.807 INFO    ] Checking for system updates...
[2026-06-12 01:47:51,829.829 INFO    ] 200
[2026-06-12 01:47:51,830.830 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:47:51,861.861 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 01:47:51,862.862 INFO    ] No update needed
[2026-06-12 01:47:51,863.863 INFO    ] Checking for camera pi updates...
[2026-06-12 01:47:51,884.884 INFO    ] 200
[2026-06-12 01:47:51,885.885 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:47:51,913.913 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 01:47:51,956.956 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 01:47:51,957.957 INFO    ] No camera update needed
[2026-06-12 01:47:51,959.959 INFO    ] Script finished. Safe exiting...
[2026-06-12 01:47:51,960.960 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 01:47:51,963.963 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 01:47:51,966.966 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 01:47:54,003.003 INFO    ] ================================================
[2026-06-12 01:47:54,013.013 INFO    ] Launching Daemon at Fri Jun 12 01:47:54 IST 2026
[2026-06-12 01:47:54,020.020 INFO    ] ================================================
[2026-06-12 01:47:54,358.358 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 01:47:54
[2026-06-12 01:47:54,670.670 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 01:47:54,804.804 INFO    ] Initializing speech engine...
[2026-06-12 01:47:54,807.807 INFO    ] 2026-06-12 01:47:54
[2026-06-12 01:47:55,037.037 INFO    ] 2026-06-12 01:47:55
[2026-06-12 01:47:55,067.067 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 01:47:55,207.207 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 01:47:55,247.247 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 01:47:55,409.409 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 01:47:55,481.481 INFO    ] time= 12/06/2026 01:47:55
[2026-06-12 01:47:55,503.503 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 01:47:55,519.519 INFO    ] Checking for existing commands in stream...
[2026-06-12 01:47:55,618.618 INFO    ] No existing commands found in stream
[2026-06-12 01:48:00,632.632 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 01:48:00,634.634 INFO    ] Waiting 3.26 seconds before fallback handling...
[2026-06-12 01:48:04,262.262 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 01:48:04,263.263 INFO    ] Checking for system updates...
[2026-06-12 01:48:04,285.285 INFO    ] 200
[2026-06-12 01:48:04,287.287 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:48:04,317.317 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 01:48:04,318.318 INFO    ] No update needed
[2026-06-12 01:48:04,319.319 INFO    ] Checking for camera pi updates...
[2026-06-12 01:48:04,339.339 INFO    ] 200
[2026-06-12 01:48:04,340.340 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:48:04,363.363 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 01:48:04,412.412 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 01:48:04,413.413 INFO    ] No camera update needed
[2026-06-12 01:48:04,414.414 INFO    ] Script finished. Safe exiting...
[2026-06-12 01:48:04,416.416 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 01:48:04,418.418 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 01:48:04,421.421 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 01:48:06,445.445 INFO    ] ================================================
[2026-06-12 01:48:06,454.454 INFO    ] Launching Daemon at Fri Jun 12 01:48:06 IST 2026
[2026-06-12 01:48:06,460.460 INFO    ] ================================================
[2026-06-12 01:48:06,809.809 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 01:48:06
[2026-06-12 01:48:07,124.124 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 01:48:07,255.255 INFO    ] Initializing speech engine...
[2026-06-12 01:48:07,260.260 INFO    ] 2026-06-12 01:48:07
[2026-06-12 01:48:07,478.478 INFO    ] 2026-06-12 01:48:07
[2026-06-12 01:48:07,540.540 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 01:48:07,697.697 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 01:48:07,735.735 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 01:48:07,903.903 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 01:48:07,966.966 INFO    ] time= 12/06/2026 01:48:07
[2026-06-12 01:48:08,005.005 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 01:48:08,011.011 INFO    ] Checking for existing commands in stream...
[2026-06-12 01:48:08,112.112 INFO    ] No existing commands found in stream
[2026-06-12 01:48:13,121.121 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 01:48:13,124.124 INFO    ] Waiting 3.94 seconds before fallback handling...
[2026-06-12 01:48:19,284.284 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 01:48:19,286.286 INFO    ] Checking for system updates...
[2026-06-12 01:48:19,322.322 INFO    ] 200
[2026-06-12 01:48:19,324.324 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:48:19,377.377 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 01:48:19,380.380 INFO    ] No update needed
[2026-06-12 01:48:19,382.382 INFO    ] Checking for camera pi updates...
[2026-06-12 01:48:19,419.419 INFO    ] 200
[2026-06-12 01:48:19,422.422 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:48:19,473.473 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 01:48:19,620.620 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 01:48:19,623.623 INFO    ] No camera update needed
[2026-06-12 01:48:19,625.625 INFO    ] Script finished. Safe exiting...
[2026-06-12 01:48:19,627.627 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 01:48:19,633.633 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 01:48:19,638.638 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 01:48:21,678.678 INFO    ] ================================================
[2026-06-12 01:48:21,694.694 INFO    ] Launching Daemon at Fri Jun 12 01:48:21 IST 2026
[2026-06-12 01:48:21,704.704 INFO    ] ================================================
[2026-06-12 01:48:22,072.072 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 01:48:22
[2026-06-12 01:48:22,405.405 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 01:48:22,554.554 INFO    ] Initializing speech engine...
[2026-06-12 01:48:22,560.560 INFO    ] 2026-06-12 01:48:22
[2026-06-12 01:48:22,772.772 INFO    ] 2026-06-12 01:48:22
[2026-06-12 01:48:22,801.801 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 01:48:22,985.985 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 01:48:22,994.994 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 01:48:23,125.125 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 01:48:23,177.177 INFO    ] time= 12/06/2026 01:48:23
[2026-06-12 01:48:23,219.219 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 01:48:23,226.226 INFO    ] Checking for existing commands in stream...
[2026-06-12 01:48:23,316.316 INFO    ] No existing commands found in stream
[2026-06-12 01:48:28,331.331 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 01:48:28,334.334 INFO    ] Waiting 2.56 seconds before fallback handling...
[2026-06-12 01:48:31,317.317 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 01:48:31,319.319 INFO    ] Checking for system updates...
[2026-06-12 01:48:31,340.340 INFO    ] 200
[2026-06-12 01:48:31,341.341 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:48:31,374.374 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 01:48:31,375.375 INFO    ] No update needed
[2026-06-12 01:48:31,377.377 INFO    ] Checking for camera pi updates...
[2026-06-12 01:48:31,399.399 INFO    ] 200
[2026-06-12 01:48:31,400.400 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:48:31,425.425 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 01:48:31,460.460 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 01:48:31,461.461 INFO    ] No camera update needed
[2026-06-12 01:48:31,463.463 INFO    ] Script finished. Safe exiting...
[2026-06-12 01:48:31,464.464 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 01:48:31,467.467 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 01:48:31,470.470 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 01:48:33,504.504 INFO    ] ================================================
[2026-06-12 01:48:33,522.522 INFO    ] Launching Daemon at Fri Jun 12 01:48:33 IST 2026
[2026-06-12 01:48:33,533.533 INFO    ] ================================================
[2026-06-12 01:48:33,849.849 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 01:48:33
[2026-06-12 01:48:34,160.160 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 01:48:34,292.292 INFO    ] Initializing speech engine...
[2026-06-12 01:48:34,300.300 INFO    ] 2026-06-12 01:48:34
[2026-06-12 01:48:34,513.513 INFO    ] 2026-06-12 01:48:34
[2026-06-12 01:48:34,542.542 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 01:48:34,728.728 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 01:48:34,737.737 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 01:48:34,860.860 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 01:48:34,916.916 INFO    ] time= 12/06/2026 01:48:34
[2026-06-12 01:48:34,956.956 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 01:48:34,961.961 INFO    ] Checking for existing commands in stream...
[2026-06-12 01:48:35,083.083 INFO    ] No existing commands found in stream
[2026-06-12 01:48:40,088.088 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 01:48:40,092.092 INFO    ] Waiting 0.51 seconds before fallback handling...
[2026-06-12 01:48:40,962.962 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 01:48:40,964.964 INFO    ] Checking for system updates...
[2026-06-12 01:48:40,984.984 INFO    ] 200
[2026-06-12 01:48:40,986.986 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:48:41,018.018 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 01:48:41,020.020 INFO    ] No update needed
[2026-06-12 01:48:41,021.021 INFO    ] Checking for camera pi updates...
[2026-06-12 01:48:41,043.043 INFO    ] 200
[2026-06-12 01:48:41,045.045 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:48:41,068.068 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 01:48:41,098.098 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 01:48:41,100.100 INFO    ] No camera update needed
[2026-06-12 01:48:41,102.102 INFO    ] Script finished. Safe exiting...
[2026-06-12 01:48:41,103.103 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 01:48:41,106.106 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 01:48:41,109.109 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 01:48:43,148.148 INFO    ] ================================================
[2026-06-12 01:48:43,164.164 INFO    ] Launching Daemon at Fri Jun 12 01:48:43 IST 2026
[2026-06-12 01:48:43,176.176 INFO    ] ================================================
[2026-06-12 01:48:43,514.514 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 01:48:43
[2026-06-12 01:48:43,860.860 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 01:48:43,992.992 INFO    ] Initializing speech engine...
[2026-06-12 01:48:44,000.000 INFO    ] 2026-06-12 01:48:43
[2026-06-12 01:48:44,234.234 INFO    ] 2026-06-12 01:48:44
[2026-06-12 01:48:44,262.262 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 01:48:44,421.421 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 01:48:44,449.449 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 01:48:44,583.583 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 01:48:44,649.649 INFO    ] time= 12/06/2026 01:48:44
[2026-06-12 01:48:44,676.676 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 01:48:44,677.677 INFO    ] Checking for existing commands in stream...
[2026-06-12 01:48:44,749.749 INFO    ] No existing commands found in stream
[2026-06-12 01:48:49,758.758 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 01:48:49,761.761 INFO    ] Waiting 1.62 seconds before fallback handling...
[2026-06-12 01:48:51,762.762 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 01:48:51,763.763 INFO    ] Checking for system updates...
[2026-06-12 01:48:51,784.784 INFO    ] 200
[2026-06-12 01:48:51,785.785 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:48:51,817.817 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 01:48:51,819.819 INFO    ] No update needed
[2026-06-12 01:48:51,820.820 INFO    ] Checking for camera pi updates...
[2026-06-12 01:48:51,841.841 INFO    ] 200
[2026-06-12 01:48:51,842.842 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:48:51,865.865 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 01:48:51,909.909 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 01:48:51,911.911 INFO    ] No camera update needed
[2026-06-12 01:48:51,912.912 INFO    ] Script finished. Safe exiting...
[2026-06-12 01:48:51,913.913 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 01:48:51,916.916 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 01:48:51,919.919 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 01:48:53,961.961 INFO    ] ================================================
[2026-06-12 01:48:53,976.976 INFO    ] Launching Daemon at Fri Jun 12 01:48:53 IST 2026
[2026-06-12 01:48:53,987.987 INFO    ] ================================================
[2026-06-12 01:48:54,339.339 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 01:48:54
[2026-06-12 01:48:54,673.673 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 01:48:54,824.824 INFO    ] Initializing speech engine...
[2026-06-12 01:48:54,830.830 INFO    ] 2026-06-12 01:48:54
[2026-06-12 01:48:55,038.038 INFO    ] 2026-06-12 01:48:55
[2026-06-12 01:48:55,067.067 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 01:48:55,259.259 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 01:48:55,263.263 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 01:48:55,400.400 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 01:48:55,462.462 INFO    ] time= 12/06/2026 01:48:55
[2026-06-12 01:48:55,504.504 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 01:48:55,506.506 INFO    ] Checking for existing commands in stream...
[2026-06-12 01:48:55,582.582 INFO    ] No existing commands found in stream
[2026-06-12 01:49:00,591.591 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 01:49:00,594.594 INFO    ] Waiting 1.82 seconds before fallback handling...
[2026-06-12 01:49:02,746.746 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 01:49:02,748.748 INFO    ] Checking for system updates...
[2026-06-12 01:49:02,773.773 INFO    ] 200
[2026-06-12 01:49:02,774.774 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:49:02,806.806 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 01:49:02,808.808 INFO    ] No update needed
[2026-06-12 01:49:02,809.809 INFO    ] Checking for camera pi updates...
[2026-06-12 01:49:02,829.829 INFO    ] 200
[2026-06-12 01:49:02,831.831 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:49:02,865.865 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 01:49:02,916.916 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 01:49:02,917.917 INFO    ] No camera update needed
[2026-06-12 01:49:02,919.919 INFO    ] Script finished. Safe exiting...
[2026-06-12 01:49:02,921.921 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 01:49:02,924.924 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 01:49:02,926.926 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 01:49:04,966.966 INFO    ] ================================================
[2026-06-12 01:49:04,981.981 INFO    ] Launching Daemon at Fri Jun 12 01:49:04 IST 2026
[2026-06-12 01:49:04,992.992 INFO    ] ================================================
[2026-06-12 01:49:05,316.316 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 01:49:05
[2026-06-12 01:49:05,628.628 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 01:49:05,772.772 INFO    ] Initializing speech engine...
[2026-06-12 01:49:05,777.777 INFO    ] 2026-06-12 01:49:05
[2026-06-12 01:49:05,984.984 INFO    ] 2026-06-12 01:49:05
[2026-06-12 01:49:06,013.013 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 01:49:06,211.211 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 01:49:06,215.215 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 01:49:06,354.354 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 01:49:06,423.423 INFO    ] time= 12/06/2026 01:49:06
[2026-06-12 01:49:06,447.447 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 01:49:06,454.454 INFO    ] Checking for existing commands in stream...
[2026-06-12 01:49:06,522.522 INFO    ] No existing commands found in stream
[2026-06-12 01:49:11,531.531 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 01:49:11,534.534 INFO    ] Waiting 3.59 seconds before fallback handling...
[2026-06-12 01:49:15,511.511 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 01:49:15,512.512 INFO    ] Checking for system updates...
[2026-06-12 01:49:15,533.533 INFO    ] 200
[2026-06-12 01:49:15,534.534 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:49:15,564.564 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 01:49:15,565.565 INFO    ] No update needed
[2026-06-12 01:49:15,567.567 INFO    ] Checking for camera pi updates...
[2026-06-12 01:49:15,590.590 INFO    ] 200
[2026-06-12 01:49:15,591.591 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:49:15,618.618 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 01:49:15,665.665 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 01:49:15,666.666 INFO    ] No camera update needed
[2026-06-12 01:49:15,668.668 INFO    ] Script finished. Safe exiting...
[2026-06-12 01:49:15,669.669 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 01:49:15,672.672 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 01:49:15,675.675 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 01:49:17,715.715 INFO    ] ================================================
[2026-06-12 01:49:17,731.731 INFO    ] Launching Daemon at Fri Jun 12 01:49:17 IST 2026
[2026-06-12 01:49:17,741.741 INFO    ] ================================================
[2026-06-12 01:49:18,113.113 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 01:49:18
[2026-06-12 01:49:18,452.452 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 01:49:18,592.592 INFO    ] Initializing speech engine...
[2026-06-12 01:49:18,600.600 INFO    ] 2026-06-12 01:49:18
[2026-06-12 01:49:18,821.821 INFO    ] 2026-06-12 01:49:18
[2026-06-12 01:49:18,851.851 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 01:49:19,037.037 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 01:49:19,041.041 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 01:49:19,179.179 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 01:49:19,244.244 INFO    ] time= 12/06/2026 01:49:19
[2026-06-12 01:49:19,273.273 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 01:49:19,279.279 INFO    ] Checking for existing commands in stream...
[2026-06-12 01:49:19,347.347 INFO    ] No existing commands found in stream
[2026-06-12 01:49:24,357.357 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 01:49:24,360.360 INFO    ] Waiting 2.22 seconds before fallback handling...
[2026-06-12 01:49:26,953.953 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 01:49:26,954.954 INFO    ] Checking for system updates...
[2026-06-12 01:49:26,976.976 INFO    ] 200
[2026-06-12 01:49:26,977.977 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:49:27,010.010 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 01:49:27,011.011 INFO    ] No update needed
[2026-06-12 01:49:27,012.012 INFO    ] Checking for camera pi updates...
[2026-06-12 01:49:27,031.031 INFO    ] 200
[2026-06-12 01:49:27,033.033 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:49:27,056.056 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 01:49:27,099.099 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 01:49:27,100.100 INFO    ] No camera update needed
[2026-06-12 01:49:27,101.101 INFO    ] Script finished. Safe exiting...
[2026-06-12 01:49:27,103.103 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 01:49:27,106.106 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 01:49:27,108.108 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 01:49:29,146.146 INFO    ] ================================================
[2026-06-12 01:49:29,162.162 INFO    ] Launching Daemon at Fri Jun 12 01:49:29 IST 2026
[2026-06-12 01:49:29,173.173 INFO    ] ================================================
[2026-06-12 01:49:29,533.533 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 01:49:29
[2026-06-12 01:49:29,872.872 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 01:49:30,024.024 INFO    ] Initializing speech engine...
[2026-06-12 01:49:30,030.030 INFO    ] 2026-06-12 01:49:30
[2026-06-12 01:49:30,241.241 INFO    ] 2026-06-12 01:49:30
[2026-06-12 01:49:30,270.270 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 01:49:30,457.457 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 01:49:30,467.467 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 01:49:30,598.598 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 01:49:30,663.663 INFO    ] time= 12/06/2026 01:49:30
[2026-06-12 01:49:30,692.692 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 01:49:30,699.699 INFO    ] Checking for existing commands in stream...
[2026-06-12 01:49:30,767.767 INFO    ] No existing commands found in stream
[2026-06-12 01:49:35,782.782 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 01:49:35,785.785 INFO    ] Waiting 3.22 seconds before fallback handling...
[2026-06-12 01:49:39,383.383 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 01:49:39,384.384 INFO    ] Checking for system updates...
[2026-06-12 01:49:39,405.405 INFO    ] 200
[2026-06-12 01:49:39,407.407 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:49:39,437.437 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 01:49:39,439.439 INFO    ] No update needed
[2026-06-12 01:49:39,440.440 INFO    ] Checking for camera pi updates...
[2026-06-12 01:49:39,460.460 INFO    ] 200
[2026-06-12 01:49:39,461.461 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:49:39,484.484 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 01:49:39,536.536 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 01:49:39,538.538 INFO    ] No camera update needed
[2026-06-12 01:49:39,539.539 INFO    ] Script finished. Safe exiting...
[2026-06-12 01:49:39,540.540 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 01:49:39,543.543 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 01:49:39,546.546 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 01:49:41,584.584 INFO    ] ================================================
[2026-06-12 01:49:41,599.599 INFO    ] Launching Daemon at Fri Jun 12 01:49:41 IST 2026
[2026-06-12 01:49:41,610.610 INFO    ] ================================================
[2026-06-12 01:49:41,967.967 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 01:49:41
[2026-06-12 01:49:42,306.306 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 01:49:42,456.456 INFO    ] Initializing speech engine...
[2026-06-12 01:49:42,467.467 INFO    ] 2026-06-12 01:49:42
[2026-06-12 01:49:42,677.677 INFO    ] 2026-06-12 01:49:42
[2026-06-12 01:49:42,706.706 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 01:49:42,892.892 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 01:49:42,902.902 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 01:49:43,032.032 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 01:49:43,103.103 INFO    ] time= 12/06/2026 01:49:43
[2026-06-12 01:49:43,127.127 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 01:49:43,134.134 INFO    ] Checking for existing commands in stream...
[2026-06-12 01:49:43,202.202 INFO    ] No existing commands found in stream
[2026-06-12 01:49:48,222.222 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 01:49:48,225.225 INFO    ] Waiting 1.52 seconds before fallback handling...
[2026-06-12 01:49:50,134.134 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 01:49:50,135.135 INFO    ] Checking for system updates...
[2026-06-12 01:49:50,156.156 INFO    ] 200
[2026-06-12 01:49:50,158.158 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:49:50,189.189 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 01:49:50,190.190 INFO    ] No update needed
[2026-06-12 01:49:50,191.191 INFO    ] Checking for camera pi updates...
[2026-06-12 01:49:50,213.213 INFO    ] 200
[2026-06-12 01:49:50,215.215 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:49:50,240.240 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 01:49:50,290.290 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 01:49:50,291.291 INFO    ] No camera update needed
[2026-06-12 01:49:50,292.292 INFO    ] Script finished. Safe exiting...
[2026-06-12 01:49:50,294.294 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 01:49:50,297.297 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 01:49:50,299.299 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 01:49:52,338.338 INFO    ] ================================================
[2026-06-12 01:49:52,356.356 INFO    ] Launching Daemon at Fri Jun 12 01:49:52 IST 2026
[2026-06-12 01:49:52,367.367 INFO    ] ================================================
[2026-06-12 01:49:52,696.696 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 01:49:52
[2026-06-12 01:49:53,006.006 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 01:49:53,143.143 INFO    ] Initializing speech engine...
[2026-06-12 01:49:53,151.151 INFO    ] 2026-06-12 01:49:53
[2026-06-12 01:49:53,358.358 INFO    ] 2026-06-12 01:49:53
[2026-06-12 01:49:53,387.387 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 01:49:53,512.512 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 01:49:53,575.575 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 01:49:53,714.714 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 01:49:53,778.778 INFO    ] time= 12/06/2026 01:49:53
[2026-06-12 01:49:53,807.807 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 01:49:53,813.813 INFO    ] Checking for existing commands in stream...
[2026-06-12 01:49:53,881.881 INFO    ] No existing commands found in stream
[2026-06-12 01:49:58,890.890 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 01:49:58,893.893 INFO    ] Waiting 0.85 seconds before fallback handling...
[2026-06-12 01:50:00,133.133 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 01:50:00,134.134 INFO    ] Checking for system updates...
[2026-06-12 01:50:00,155.155 INFO    ] 200
[2026-06-12 01:50:00,156.156 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:50:00,192.192 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 01:50:00,193.193 INFO    ] No update needed
[2026-06-12 01:50:00,194.194 INFO    ] Checking for camera pi updates...
[2026-06-12 01:50:00,215.215 INFO    ] 200
[2026-06-12 01:50:00,216.216 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:50:00,240.240 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 01:50:00,289.289 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 01:50:00,291.291 INFO    ] No camera update needed
[2026-06-12 01:50:00,292.292 INFO    ] Script finished. Safe exiting...
[2026-06-12 01:50:00,293.293 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 01:50:00,296.296 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 01:50:00,299.299 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 01:50:02,329.329 INFO    ] ================================================
[2026-06-12 01:50:02,337.337 INFO    ] Launching Daemon at Fri Jun 12 01:50:02 IST 2026
[2026-06-12 01:50:02,344.344 INFO    ] ================================================
[2026-06-12 01:50:02,666.666 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 01:50:02
[2026-06-12 01:50:02,993.993 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 01:50:03,126.126 INFO    ] Initializing speech engine...
[2026-06-12 01:50:03,130.130 INFO    ] 2026-06-12 01:50:03
[2026-06-12 01:50:03,347.347 INFO    ] 2026-06-12 01:50:03
[2026-06-12 01:50:03,376.376 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 01:50:03,504.504 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 01:50:03,562.562 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 01:50:03,698.698 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 01:50:03,755.755 INFO    ] time= 12/06/2026 01:50:03
[2026-06-12 01:50:03,789.789 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 01:50:03,794.794 INFO    ] Checking for existing commands in stream...
[2026-06-12 01:50:03,865.865 INFO    ] No existing commands found in stream
[2026-06-12 01:50:08,876.876 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 01:50:08,879.879 INFO    ] Waiting 0.88 seconds before fallback handling...
[2026-06-12 01:50:10,138.138 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 01:50:10,140.140 INFO    ] Checking for system updates...
[2026-06-12 01:50:10,162.162 INFO    ] 200
[2026-06-12 01:50:10,163.163 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:50:10,193.193 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 01:50:10,195.195 INFO    ] No update needed
[2026-06-12 01:50:10,196.196 INFO    ] Checking for camera pi updates...
[2026-06-12 01:50:10,217.217 INFO    ] 200
[2026-06-12 01:50:10,219.219 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:50:10,244.244 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 01:50:10,297.297 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 01:50:10,299.299 INFO    ] No camera update needed
[2026-06-12 01:50:10,300.300 INFO    ] Script finished. Safe exiting...
[2026-06-12 01:50:10,302.302 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 01:50:10,305.305 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 01:50:10,307.307 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 01:50:12,349.349 INFO    ] ================================================
[2026-06-12 01:50:12,365.365 INFO    ] Launching Daemon at Fri Jun 12 01:50:12 IST 2026
[2026-06-12 01:50:12,376.376 INFO    ] ================================================
[2026-06-12 01:50:12,753.753 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 01:50:12
[2026-06-12 01:50:13,077.077 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 01:50:13,225.225 INFO    ] Initializing speech engine...
[2026-06-12 01:50:13,231.231 INFO    ] 2026-06-12 01:50:13
[2026-06-12 01:50:13,446.446 INFO    ] 2026-06-12 01:50:13
[2026-06-12 01:50:13,476.476 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 01:50:13,599.599 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 01:50:13,662.662 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 01:50:13,798.798 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 01:50:13,855.855 INFO    ] time= 12/06/2026 01:50:13
[2026-06-12 01:50:13,893.893 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 01:50:13,899.899 INFO    ] Checking for existing commands in stream...
[2026-06-12 01:50:13,967.967 INFO    ] No existing commands found in stream
[2026-06-12 01:50:18,981.981 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 01:50:18,984.984 INFO    ] Waiting 3.72 seconds before fallback handling...
[2026-06-12 01:50:23,083.083 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 01:50:23,085.085 INFO    ] Checking for system updates...
[2026-06-12 01:50:23,107.107 INFO    ] 200
[2026-06-12 01:50:23,108.108 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:50:23,141.141 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 01:50:23,143.143 INFO    ] No update needed
[2026-06-12 01:50:23,144.144 INFO    ] Checking for camera pi updates...
[2026-06-12 01:50:23,163.163 INFO    ] 200
[2026-06-12 01:50:23,164.164 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:50:23,192.192 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 01:50:23,331.331 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 01:50:23,333.333 INFO    ] No camera update needed
[2026-06-12 01:50:23,334.334 INFO    ] Script finished. Safe exiting...
[2026-06-12 01:50:23,335.335 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 01:50:23,338.338 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 01:50:23,341.341 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 01:50:25,380.380 INFO    ] ================================================
[2026-06-12 01:50:25,396.396 INFO    ] Launching Daemon at Fri Jun 12 01:50:25 IST 2026
[2026-06-12 01:50:25,407.407 INFO    ] ================================================
[2026-06-12 01:50:25,738.738 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 01:50:25
[2026-06-12 01:50:26,049.049 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 01:50:26,185.185 INFO    ] Initializing speech engine...
[2026-06-12 01:50:26,195.195 INFO    ] 2026-06-12 01:50:26
[2026-06-12 01:50:26,398.398 INFO    ] 2026-06-12 01:50:26
[2026-06-12 01:50:26,426.426 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 01:50:26,548.548 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 01:50:26,601.601 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 01:50:26,741.741 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 01:50:26,797.797 INFO    ] time= 12/06/2026 01:50:26
[2026-06-12 01:50:26,831.831 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 01:50:26,841.841 INFO    ] Checking for existing commands in stream...
[2026-06-12 01:50:26,911.911 INFO    ] No existing commands found in stream
[2026-06-12 01:50:31,919.919 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 01:50:31,921.921 INFO    ] Waiting 3.33 seconds before fallback handling...
[2026-06-12 01:50:35,623.623 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 01:50:35,624.624 INFO    ] Checking for system updates...
[2026-06-12 01:50:35,646.646 INFO    ] 200
[2026-06-12 01:50:35,648.648 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:50:35,678.678 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 01:50:35,679.679 INFO    ] No update needed
[2026-06-12 01:50:35,680.680 INFO    ] Checking for camera pi updates...
[2026-06-12 01:50:35,702.702 INFO    ] 200
[2026-06-12 01:50:35,704.704 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:50:35,728.728 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 01:50:35,775.775 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 01:50:35,776.776 INFO    ] No camera update needed
[2026-06-12 01:50:35,777.777 INFO    ] Script finished. Safe exiting...
[2026-06-12 01:50:35,779.779 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 01:50:35,782.782 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 01:50:35,784.784 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 01:50:37,823.823 INFO    ] ================================================
[2026-06-12 01:50:37,838.838 INFO    ] Launching Daemon at Fri Jun 12 01:50:37 IST 2026
[2026-06-12 01:50:37,849.849 INFO    ] ================================================
[2026-06-12 01:50:38,191.191 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 01:50:38
[2026-06-12 01:50:38,530.530 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 01:50:38,667.667 INFO    ] Initializing speech engine...
[2026-06-12 01:50:38,677.677 INFO    ] 2026-06-12 01:50:38
[2026-06-12 01:50:38,893.893 INFO    ] 2026-06-12 01:50:38
[2026-06-12 01:50:38,923.923 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 01:50:39,107.107 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 01:50:39,119.119 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 01:50:39,265.265 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 01:50:39,314.314 INFO    ] time= 12/06/2026 01:50:39
[2026-06-12 01:50:39,335.335 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 01:50:39,341.341 INFO    ] Checking for existing commands in stream...
[2026-06-12 01:50:39,408.408 INFO    ] No existing commands found in stream
[2026-06-12 01:50:44,440.440 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 01:50:44,444.444 INFO    ] Waiting 0.06 seconds before fallback handling...
[2026-06-12 01:50:44,883.883 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 01:50:44,885.885 INFO    ] Checking for system updates...
[2026-06-12 01:50:44,906.906 INFO    ] 200
[2026-06-12 01:50:44,907.907 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:50:44,941.941 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 01:50:44,943.943 INFO    ] No update needed
[2026-06-12 01:50:44,944.944 INFO    ] Checking for camera pi updates...
[2026-06-12 01:50:44,964.964 INFO    ] 200
[2026-06-12 01:50:44,965.965 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:50:44,991.991 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 01:50:45,034.034 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 01:50:45,035.035 INFO    ] No camera update needed
[2026-06-12 01:50:45,037.037 INFO    ] Script finished. Safe exiting...
[2026-06-12 01:50:45,038.038 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 01:50:45,041.041 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 01:50:45,044.044 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 01:50:47,085.085 INFO    ] ================================================
[2026-06-12 01:50:47,101.101 INFO    ] Launching Daemon at Fri Jun 12 01:50:47 IST 2026
[2026-06-12 01:50:47,112.112 INFO    ] ================================================
[2026-06-12 01:50:47,468.468 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 01:50:47
[2026-06-12 01:50:47,795.795 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 01:50:47,928.928 INFO    ] Initializing speech engine...
[2026-06-12 01:50:47,933.933 INFO    ] 2026-06-12 01:50:47
[2026-06-12 01:50:48,126.126 INFO    ] 2026-06-12 01:50:48
[2026-06-12 01:50:48,173.173 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 01:50:48,334.334 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 01:50:48,366.366 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 01:50:48,524.524 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 01:50:48,557.557 INFO    ] time= 12/06/2026 01:50:48
[2026-06-12 01:50:48,626.626 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 01:50:48,657.657 INFO    ] Checking for existing commands in stream...
[2026-06-12 01:50:48,736.736 INFO    ] No existing commands found in stream
[2026-06-12 01:50:53,766.766 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 01:50:53,768.768 INFO    ] Waiting 0.27 seconds before fallback handling...
[2026-06-12 01:50:54,433.433 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 01:50:54,435.435 INFO    ] Checking for system updates...
[2026-06-12 01:50:54,455.455 INFO    ] 200
[2026-06-12 01:50:54,457.457 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:50:54,489.489 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 01:50:54,491.491 INFO    ] No update needed
[2026-06-12 01:50:54,492.492 INFO    ] Checking for camera pi updates...
[2026-06-12 01:50:54,513.513 INFO    ] 200
[2026-06-12 01:50:54,514.514 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:50:54,537.537 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 01:50:54,582.582 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 01:50:54,584.584 INFO    ] No camera update needed
[2026-06-12 01:50:54,585.585 INFO    ] Script finished. Safe exiting...
[2026-06-12 01:50:54,586.586 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 01:50:54,589.589 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 01:50:54,592.592 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 01:50:56,632.632 INFO    ] ================================================
[2026-06-12 01:50:56,648.648 INFO    ] Launching Daemon at Fri Jun 12 01:50:56 IST 2026
[2026-06-12 01:50:56,660.660 INFO    ] ================================================
[2026-06-12 01:50:57,037.037 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 01:50:57
[2026-06-12 01:50:57,379.379 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 01:50:57,532.532 INFO    ] Initializing speech engine...
[2026-06-12 01:50:57,538.538 INFO    ] 2026-06-12 01:50:57
[2026-06-12 01:50:57,750.750 INFO    ] 2026-06-12 01:50:57
[2026-06-12 01:50:57,779.779 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 01:50:57,965.965 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 01:50:57,975.975 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 01:50:58,102.102 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 01:50:58,165.165 INFO    ] time= 12/06/2026 01:50:58
[2026-06-12 01:50:58,231.231 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 01:50:58,235.235 INFO    ] Checking for existing commands in stream...
[2026-06-12 01:50:58,346.346 INFO    ] No existing commands found in stream
[2026-06-12 01:51:03,354.354 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 01:51:03,356.356 INFO    ] Waiting 2.29 seconds before fallback handling...
[2026-06-12 01:51:06,025.025 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 01:51:06,027.027 INFO    ] Checking for system updates...
[2026-06-12 01:51:06,049.049 INFO    ] 200
[2026-06-12 01:51:06,051.051 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:51:06,081.081 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 01:51:06,083.083 INFO    ] No update needed
[2026-06-12 01:51:06,084.084 INFO    ] Checking for camera pi updates...
[2026-06-12 01:51:06,106.106 INFO    ] 200
[2026-06-12 01:51:06,107.107 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:51:06,132.132 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 01:51:06,185.185 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 01:51:06,187.187 INFO    ] No camera update needed
[2026-06-12 01:51:06,188.188 INFO    ] Script finished. Safe exiting...
[2026-06-12 01:51:06,189.189 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 01:51:06,193.193 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 01:51:06,195.195 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 01:51:08,235.235 INFO    ] ================================================
[2026-06-12 01:51:08,251.251 INFO    ] Launching Daemon at Fri Jun 12 01:51:08 IST 2026
[2026-06-12 01:51:08,263.263 INFO    ] ================================================
[2026-06-12 01:51:08,600.600 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 01:51:08
[2026-06-12 01:51:08,915.915 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 01:51:09,047.047 INFO    ] Initializing speech engine...
[2026-06-12 01:51:09,063.063 INFO    ] 2026-06-12 01:51:09
[2026-06-12 01:51:09,269.269 INFO    ] 2026-06-12 01:51:09
[2026-06-12 01:51:09,298.298 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 01:51:09,482.482 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 01:51:09,490.490 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 01:51:09,635.635 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 01:51:09,687.687 INFO    ] time= 12/06/2026 01:51:09
[2026-06-12 01:51:09,709.709 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 01:51:09,716.716 INFO    ] Checking for existing commands in stream...
[2026-06-12 01:51:09,781.781 INFO    ] No existing commands found in stream
[2026-06-12 01:51:14,791.791 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 01:51:14,794.794 INFO    ] Waiting 0.02 seconds before fallback handling...
[2026-06-12 01:51:15,163.163 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 01:51:15,165.165 INFO    ] Checking for system updates...
[2026-06-12 01:51:15,185.185 INFO    ] 200
[2026-06-12 01:51:15,187.187 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:51:15,222.222 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 01:51:15,224.224 INFO    ] No update needed
[2026-06-12 01:51:15,225.225 INFO    ] Checking for camera pi updates...
[2026-06-12 01:51:15,246.246 INFO    ] 200
[2026-06-12 01:51:15,247.247 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:51:15,272.272 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 01:51:15,325.325 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 01:51:15,327.327 INFO    ] No camera update needed
[2026-06-12 01:51:15,328.328 INFO    ] Script finished. Safe exiting...
[2026-06-12 01:51:15,329.329 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 01:51:15,332.332 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 01:51:15,335.335 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 01:51:17,374.374 INFO    ] ================================================
[2026-06-12 01:51:17,390.390 INFO    ] Launching Daemon at Fri Jun 12 01:51:17 IST 2026
[2026-06-12 01:51:17,401.401 INFO    ] ================================================
[2026-06-12 01:51:17,782.782 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 01:51:17
[2026-06-12 01:51:18,093.093 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 01:51:18,222.222 INFO    ] Initializing speech engine...
[2026-06-12 01:51:18,227.227 INFO    ] 2026-06-12 01:51:18
[2026-06-12 01:51:18,445.445 INFO    ] 2026-06-12 01:51:18
[2026-06-12 01:51:18,474.474 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 01:51:18,662.662 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 01:51:18,671.671 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 01:51:18,804.804 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 01:51:18,871.871 INFO    ] time= 12/06/2026 01:51:18
[2026-06-12 01:51:18,895.895 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 01:51:18,901.901 INFO    ] Checking for existing commands in stream...
[2026-06-12 01:51:18,967.967 INFO    ] No existing commands found in stream
[2026-06-12 01:51:23,976.976 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 01:51:23,979.979 INFO    ] Waiting 2.79 seconds before fallback handling...
[2026-06-12 01:51:27,125.125 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 01:51:27,127.127 INFO    ] Checking for system updates...
[2026-06-12 01:51:27,148.148 INFO    ] 200
[2026-06-12 01:51:27,149.149 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:51:27,180.180 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 01:51:27,181.181 INFO    ] No update needed
[2026-06-12 01:51:27,183.183 INFO    ] Checking for camera pi updates...
[2026-06-12 01:51:27,204.204 INFO    ] 200
[2026-06-12 01:51:27,206.206 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:51:27,229.229 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 01:51:27,273.273 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 01:51:27,274.274 INFO    ] No camera update needed
[2026-06-12 01:51:27,275.275 INFO    ] Script finished. Safe exiting...
[2026-06-12 01:51:27,277.277 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 01:51:27,280.280 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 01:51:27,283.283 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 01:51:29,323.323 INFO    ] ================================================
[2026-06-12 01:51:29,339.339 INFO    ] Launching Daemon at Fri Jun 12 01:51:29 IST 2026
[2026-06-12 01:51:29,349.349 INFO    ] ================================================
[2026-06-12 01:51:29,748.748 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 01:51:29
[2026-06-12 01:51:30,090.090 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 01:51:30,242.242 INFO    ] Initializing speech engine...
[2026-06-12 01:51:30,248.248 INFO    ] 2026-06-12 01:51:30
[2026-06-12 01:51:30,462.462 INFO    ] 2026-06-12 01:51:30
[2026-06-12 01:51:30,490.490 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 01:51:30,676.676 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 01:51:30,679.679 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 01:51:30,817.817 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 01:51:30,882.882 INFO    ] time= 12/06/2026 01:51:30
[2026-06-12 01:51:30,910.910 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 01:51:30,917.917 INFO    ] Checking for existing commands in stream...
[2026-06-12 01:51:30,984.984 INFO    ] No existing commands found in stream
[2026-06-12 01:51:35,993.993 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 01:51:35,995.995 INFO    ] Waiting 3.60 seconds before fallback handling...
[2026-06-12 01:51:39,974.974 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 01:51:39,976.976 INFO    ] Checking for system updates...
[2026-06-12 01:51:39,996.996 INFO    ] 200
[2026-06-12 01:51:39,998.998 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:51:40,031.031 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 01:51:40,032.032 INFO    ] No update needed
[2026-06-12 01:51:40,033.033 INFO    ] Checking for camera pi updates...
[2026-06-12 01:51:40,053.053 INFO    ] 200
[2026-06-12 01:51:40,054.054 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:51:40,078.078 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 01:51:40,122.122 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 01:51:40,123.123 INFO    ] No camera update needed
[2026-06-12 01:51:40,125.125 INFO    ] Script finished. Safe exiting...
[2026-06-12 01:51:40,126.126 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 01:51:40,129.129 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 01:51:40,132.132 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 01:51:42,171.171 INFO    ] ================================================
[2026-06-12 01:51:42,187.187 INFO    ] Launching Daemon at Fri Jun 12 01:51:42 IST 2026
[2026-06-12 01:51:42,199.199 INFO    ] ================================================
[2026-06-12 01:51:42,567.567 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 01:51:42
[2026-06-12 01:51:42,880.880 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 01:51:43,008.008 INFO    ] Initializing speech engine...
[2026-06-12 01:51:43,017.017 INFO    ] 2026-06-12 01:51:43
[2026-06-12 01:51:43,227.227 INFO    ] 2026-06-12 01:51:43
[2026-06-12 01:51:43,256.256 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 01:51:43,439.439 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 01:51:43,448.448 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 01:51:43,574.574 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 01:51:43,626.626 INFO    ] time= 12/06/2026 01:51:43
[2026-06-12 01:51:43,667.667 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 01:51:43,684.684 INFO    ] Checking for existing commands in stream...
[2026-06-12 01:51:43,762.762 INFO    ] No existing commands found in stream
[2026-06-12 01:51:48,771.771 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 01:51:48,774.774 INFO    ] Waiting 0.60 seconds before fallback handling...
[2026-06-12 01:51:49,775.775 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 01:51:49,777.777 INFO    ] Checking for system updates...
[2026-06-12 01:51:49,797.797 INFO    ] 200
[2026-06-12 01:51:49,799.799 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:51:49,829.829 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 01:51:49,830.830 INFO    ] No update needed
[2026-06-12 01:51:49,832.832 INFO    ] Checking for camera pi updates...
[2026-06-12 01:51:49,853.853 INFO    ] 200
[2026-06-12 01:51:49,854.854 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:51:49,877.877 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 01:51:49,920.920 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 01:51:49,922.922 INFO    ] No camera update needed
[2026-06-12 01:51:49,923.923 INFO    ] Script finished. Safe exiting...
[2026-06-12 01:51:49,924.924 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 01:51:49,927.927 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 01:51:49,930.930 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 01:51:51,961.961 INFO    ] ================================================
[2026-06-12 01:51:51,981.981 INFO    ] Launching Daemon at Fri Jun 12 01:51:51 IST 2026
[2026-06-12 01:51:51,992.992 INFO    ] ================================================
[2026-06-12 01:51:52,353.353 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 01:51:52
[2026-06-12 01:51:52,666.666 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 01:51:52,802.802 INFO    ] Initializing speech engine...
[2026-06-12 01:51:52,813.813 INFO    ] 2026-06-12 01:51:52
[2026-06-12 01:51:53,016.016 INFO    ] 2026-06-12 01:51:52
[2026-06-12 01:51:53,045.045 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 01:51:53,229.229 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 01:51:53,239.239 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 01:51:53,367.367 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 01:51:53,433.433 INFO    ] time= 12/06/2026 01:51:53
[2026-06-12 01:51:53,460.460 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 01:51:53,466.466 INFO    ] Checking for existing commands in stream...
[2026-06-12 01:51:53,534.534 INFO    ] No existing commands found in stream
[2026-06-12 01:51:58,548.548 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 01:51:58,551.551 INFO    ] Waiting 1.90 seconds before fallback handling...
[2026-06-12 01:52:00,823.823 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 01:52:00,825.825 INFO    ] Checking for system updates...
[2026-06-12 01:52:00,845.845 INFO    ] 200
[2026-06-12 01:52:00,847.847 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:52:00,879.879 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 01:52:00,880.880 INFO    ] No update needed
[2026-06-12 01:52:00,882.882 INFO    ] Checking for camera pi updates...
[2026-06-12 01:52:00,901.901 INFO    ] 200
[2026-06-12 01:52:00,903.903 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:52:00,926.926 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 01:52:00,973.973 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 01:52:00,975.975 INFO    ] No camera update needed
[2026-06-12 01:52:00,976.976 INFO    ] Script finished. Safe exiting...
[2026-06-12 01:52:00,977.977 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 01:52:00,980.980 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 01:52:00,983.983 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 01:52:03,011.011 INFO    ] ================================================
[2026-06-12 01:52:03,020.020 INFO    ] Launching Daemon at Fri Jun 12 01:52:03 IST 2026
[2026-06-12 01:52:03,026.026 INFO    ] ================================================
[2026-06-12 01:52:03,329.329 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 01:52:03
[2026-06-12 01:52:03,689.689 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 01:52:03,822.822 INFO    ] Initializing speech engine...
[2026-06-12 01:52:03,832.832 INFO    ] 2026-06-12 01:52:03
[2026-06-12 01:52:04,026.026 INFO    ] 2026-06-12 01:52:04
[2026-06-12 01:52:04,064.064 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 01:52:04,226.226 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 01:52:04,243.243 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 01:52:04,402.402 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 01:52:04,443.443 INFO    ] time= 12/06/2026 01:52:04
[2026-06-12 01:52:04,505.505 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 01:52:04,535.535 INFO    ] Checking for existing commands in stream...
[2026-06-12 01:52:04,629.629 INFO    ] No existing commands found in stream
[2026-06-12 01:52:09,653.653 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 01:52:09,656.656 INFO    ] Waiting 2.71 seconds before fallback handling...
[2026-06-12 01:52:12,715.715 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 01:52:12,717.717 INFO    ] Checking for system updates...
[2026-06-12 01:52:12,738.738 INFO    ] 200
[2026-06-12 01:52:12,739.739 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:52:12,772.772 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 01:52:12,773.773 INFO    ] No update needed
[2026-06-12 01:52:12,774.774 INFO    ] Checking for camera pi updates...
[2026-06-12 01:52:12,794.794 INFO    ] 200
[2026-06-12 01:52:12,795.795 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:52:12,818.818 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 01:52:12,865.865 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 01:52:12,866.866 INFO    ] No camera update needed
[2026-06-12 01:52:12,868.868 INFO    ] Script finished. Safe exiting...
[2026-06-12 01:52:12,869.869 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 01:52:12,872.872 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 01:52:12,875.875 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 01:52:14,913.913 INFO    ] ================================================
[2026-06-12 01:52:14,928.928 INFO    ] Launching Daemon at Fri Jun 12 01:52:14 IST 2026
[2026-06-12 01:52:14,939.939 INFO    ] ================================================
[2026-06-12 01:52:15,278.278 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 01:52:15
[2026-06-12 01:52:15,589.589 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 01:52:15,727.727 INFO    ] Initializing speech engine...
[2026-06-12 01:52:15,734.734 INFO    ] 2026-06-12 01:52:15
[2026-06-12 01:52:15,943.943 INFO    ] 2026-06-12 01:52:15
[2026-06-12 01:52:15,972.972 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 01:52:16,157.157 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 01:52:16,161.161 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 01:52:16,299.299 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 01:52:16,363.363 INFO    ] time= 12/06/2026 01:52:16
[2026-06-12 01:52:16,391.391 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 01:52:16,398.398 INFO    ] Checking for existing commands in stream...
[2026-06-12 01:52:16,466.466 INFO    ] No existing commands found in stream
[2026-06-12 01:52:21,480.480 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 01:52:21,482.482 INFO    ] Waiting 1.95 seconds before fallback handling...
[2026-06-12 01:52:23,836.836 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 01:52:23,838.838 INFO    ] Checking for system updates...
[2026-06-12 01:52:23,859.859 INFO    ] 200
[2026-06-12 01:52:23,861.861 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:52:23,893.893 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 01:52:23,894.894 INFO    ] No update needed
[2026-06-12 01:52:23,896.896 INFO    ] Checking for camera pi updates...
[2026-06-12 01:52:23,915.915 INFO    ] 200
[2026-06-12 01:52:23,916.916 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:52:23,940.940 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 01:52:23,989.989 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 01:52:23,991.991 INFO    ] No camera update needed
[2026-06-12 01:52:23,992.992 INFO    ] Script finished. Safe exiting...
[2026-06-12 01:52:23,993.993 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 01:52:23,996.996 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 01:52:23,999.999 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 01:52:26,037.037 INFO    ] ================================================
[2026-06-12 01:52:26,055.055 INFO    ] Launching Daemon at Fri Jun 12 01:52:26 IST 2026
[2026-06-12 01:52:26,067.067 INFO    ] ================================================
[2026-06-12 01:52:26,435.435 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 01:52:26
[2026-06-12 01:52:26,751.751 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 01:52:26,895.895 INFO    ] Initializing speech engine...
[2026-06-12 01:52:26,899.899 INFO    ] 2026-06-12 01:52:26
[2026-06-12 01:52:27,103.103 INFO    ] 2026-06-12 01:52:27
[2026-06-12 01:52:27,132.132 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 01:52:27,253.253 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 01:52:27,316.316 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 01:52:27,453.453 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 01:52:27,520.520 INFO    ] time= 12/06/2026 01:52:27
[2026-06-12 01:52:27,543.543 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 01:52:27,550.550 INFO    ] Checking for existing commands in stream...
[2026-06-12 01:52:27,616.616 INFO    ] No existing commands found in stream
[2026-06-12 01:52:32,629.629 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 01:52:32,631.631 INFO    ] Waiting 1.76 seconds before fallback handling...
[2026-06-12 01:52:34,776.776 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 01:52:34,777.777 INFO    ] Checking for system updates...
[2026-06-12 01:52:34,799.799 INFO    ] 200
[2026-06-12 01:52:34,800.800 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:52:34,830.830 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 01:52:34,832.832 INFO    ] No update needed
[2026-06-12 01:52:34,833.833 INFO    ] Checking for camera pi updates...
[2026-06-12 01:52:34,852.852 INFO    ] 200
[2026-06-12 01:52:34,854.854 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:52:34,877.877 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 01:52:34,917.917 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 01:52:34,918.918 INFO    ] No camera update needed
[2026-06-12 01:52:34,920.920 INFO    ] Script finished. Safe exiting...
[2026-06-12 01:52:34,921.921 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 01:52:34,924.924 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 01:52:34,927.927 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 01:52:36,965.965 INFO    ] ================================================
[2026-06-12 01:52:36,980.980 INFO    ] Launching Daemon at Fri Jun 12 01:52:36 IST 2026
[2026-06-12 01:52:36,991.991 INFO    ] ================================================
[2026-06-12 01:52:37,350.350 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 01:52:37
[2026-06-12 01:52:37,661.661 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 01:52:37,803.803 INFO    ] Initializing speech engine...
[2026-06-12 01:52:37,808.808 INFO    ] 2026-06-12 01:52:37
[2026-06-12 01:52:38,011.011 INFO    ] 2026-06-12 01:52:37
[2026-06-12 01:52:38,040.040 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 01:52:38,162.162 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 01:52:38,224.224 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 01:52:38,360.360 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 01:52:38,424.424 INFO    ] time= 12/06/2026 01:52:38
[2026-06-12 01:52:38,450.450 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 01:52:38,452.452 INFO    ] Checking for existing commands in stream...
[2026-06-12 01:52:38,523.523 INFO    ] No existing commands found in stream
[2026-06-12 01:52:43,537.537 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 01:52:43,539.539 INFO    ] Waiting 3.46 seconds before fallback handling...
[2026-06-12 01:52:47,366.366 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 01:52:47,368.368 INFO    ] Checking for system updates...
[2026-06-12 01:52:47,389.389 INFO    ] 200
[2026-06-12 01:52:47,391.391 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:52:47,421.421 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 01:52:47,423.423 INFO    ] No update needed
[2026-06-12 01:52:47,424.424 INFO    ] Checking for camera pi updates...
[2026-06-12 01:52:47,444.444 INFO    ] 200
[2026-06-12 01:52:47,445.445 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:52:47,468.468 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 01:52:47,496.496 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 01:52:47,497.497 INFO    ] No camera update needed
[2026-06-12 01:52:47,499.499 INFO    ] Script finished. Safe exiting...
[2026-06-12 01:52:47,500.500 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 01:52:47,503.503 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 01:52:47,506.506 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 01:52:49,536.536 INFO    ] ================================================
[2026-06-12 01:52:49,544.544 INFO    ] Launching Daemon at Fri Jun 12 01:52:49 IST 2026
[2026-06-12 01:52:49,550.550 INFO    ] ================================================
[2026-06-12 01:52:49,852.852 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 01:52:49
[2026-06-12 01:52:50,215.215 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 01:52:50,345.345 INFO    ] Initializing speech engine...
[2026-06-12 01:52:50,353.353 INFO    ] 2026-06-12 01:52:50
[2026-06-12 01:52:50,563.563 INFO    ] 2026-06-12 01:52:50
[2026-06-12 01:52:50,592.592 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 01:52:50,774.774 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 01:52:50,778.778 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 01:52:50,906.906 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 01:52:50,967.967 INFO    ] time= 12/06/2026 01:52:50
[2026-06-12 01:52:51,002.002 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 01:52:51,007.007 INFO    ] Checking for existing commands in stream...
[2026-06-12 01:52:51,078.078 INFO    ] No existing commands found in stream
[2026-06-12 01:52:56,092.092 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 01:52:56,095.095 INFO    ] Waiting 0.06 seconds before fallback handling...
[2026-06-12 01:52:56,493.493 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 01:52:56,495.495 INFO    ] Checking for system updates...
[2026-06-12 01:52:56,517.517 INFO    ] 200
[2026-06-12 01:52:56,518.518 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:52:56,549.549 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 01:52:56,551.551 INFO    ] No update needed
[2026-06-12 01:52:56,552.552 INFO    ] Checking for camera pi updates...
[2026-06-12 01:52:56,571.571 INFO    ] 200
[2026-06-12 01:52:56,573.573 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:52:56,598.598 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 01:52:56,642.642 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 01:52:56,643.643 INFO    ] No camera update needed
[2026-06-12 01:52:56,644.644 INFO    ] Script finished. Safe exiting...
[2026-06-12 01:52:56,645.645 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 01:52:56,648.648 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 01:52:56,651.651 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 01:52:58,691.691 INFO    ] ================================================
[2026-06-12 01:52:58,706.706 INFO    ] Launching Daemon at Fri Jun 12 01:52:58 IST 2026
[2026-06-12 01:52:58,717.717 INFO    ] ================================================
[2026-06-12 01:52:59,060.060 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 01:52:59
[2026-06-12 01:52:59,374.374 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 01:52:59,504.504 INFO    ] Initializing speech engine...
[2026-06-12 01:52:59,509.509 INFO    ] 2026-06-12 01:52:59
[2026-06-12 01:52:59,728.728 INFO    ] 2026-06-12 01:52:59
[2026-06-12 01:52:59,757.757 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 01:52:59,943.943 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 01:52:59,947.947 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 01:53:00,083.083 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 01:53:00,135.135 INFO    ] time= 12/06/2026 01:53:00
[2026-06-12 01:53:00,175.175 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 01:53:00,181.181 INFO    ] Checking for existing commands in stream...
[2026-06-12 01:53:00,278.278 INFO    ] No existing commands found in stream
[2026-06-12 01:53:05,286.286 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 01:53:05,289.289 INFO    ] Waiting 3.96 seconds before fallback handling...
[2026-06-12 01:53:09,644.644 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 01:53:09,645.645 INFO    ] Checking for system updates...
[2026-06-12 01:53:09,668.668 INFO    ] 200
[2026-06-12 01:53:09,669.669 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:53:09,702.702 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 01:53:09,703.703 INFO    ] No update needed
[2026-06-12 01:53:09,704.704 INFO    ] Checking for camera pi updates...
[2026-06-12 01:53:09,724.724 INFO    ] 200
[2026-06-12 01:53:09,725.725 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:53:09,751.751 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 01:53:09,795.795 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 01:53:09,797.797 INFO    ] No camera update needed
[2026-06-12 01:53:09,798.798 INFO    ] Script finished. Safe exiting...
[2026-06-12 01:53:09,799.799 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 01:53:09,802.802 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 01:53:09,805.805 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 01:53:11,843.843 INFO    ] ================================================
[2026-06-12 01:53:11,858.858 INFO    ] Launching Daemon at Fri Jun 12 01:53:11 IST 2026
[2026-06-12 01:53:11,869.869 INFO    ] ================================================
[2026-06-12 01:53:12,214.214 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 01:53:12
[2026-06-12 01:53:12,527.527 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 01:53:12,681.681 INFO    ] Initializing speech engine...
[2026-06-12 01:53:12,687.687 INFO    ] 2026-06-12 01:53:12
[2026-06-12 01:53:12,894.894 INFO    ] 2026-06-12 01:53:12
[2026-06-12 01:53:12,924.924 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 01:53:13,074.074 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 01:53:13,113.113 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 01:53:13,251.251 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 01:53:13,319.319 INFO    ] time= 12/06/2026 01:53:13
[2026-06-12 01:53:13,346.346 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 01:53:13,353.353 INFO    ] Checking for existing commands in stream...
[2026-06-12 01:53:13,443.443 INFO    ] No existing commands found in stream
[2026-06-12 01:53:18,460.460 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 01:53:18,464.464 INFO    ] Waiting 0.19 seconds before fallback handling...
[2026-06-12 01:53:19,057.057 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 01:53:19,058.058 INFO    ] Checking for system updates...
[2026-06-12 01:53:19,082.082 INFO    ] 200
[2026-06-12 01:53:19,083.083 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:53:19,116.116 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 01:53:19,117.117 INFO    ] No update needed
[2026-06-12 01:53:19,118.118 INFO    ] Checking for camera pi updates...
[2026-06-12 01:53:19,139.139 INFO    ] 200
[2026-06-12 01:53:19,141.141 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:53:19,166.166 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 01:53:19,206.206 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 01:53:19,207.207 INFO    ] No camera update needed
[2026-06-12 01:53:19,208.208 INFO    ] Script finished. Safe exiting...
[2026-06-12 01:53:19,210.210 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 01:53:19,213.213 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 01:53:19,215.215 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 01:53:21,253.253 INFO    ] ================================================
[2026-06-12 01:53:21,269.269 INFO    ] Launching Daemon at Fri Jun 12 01:53:21 IST 2026
[2026-06-12 01:53:21,280.280 INFO    ] ================================================
[2026-06-12 01:53:21,628.628 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 01:53:21
[2026-06-12 01:53:21,948.948 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 01:53:22,086.086 INFO    ] Initializing speech engine...
[2026-06-12 01:53:22,089.089 INFO    ] 2026-06-12 01:53:22
[2026-06-12 01:53:22,285.285 INFO    ] 2026-06-12 01:53:22
[2026-06-12 01:53:22,332.332 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 01:53:22,492.492 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 01:53:22,525.525 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 01:53:22,691.691 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 01:53:22,715.715 INFO    ] time= 12/06/2026 01:53:22
[2026-06-12 01:53:22,772.772 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 01:53:22,802.802 INFO    ] Checking for existing commands in stream...
[2026-06-12 01:53:22,949.949 INFO    ] No existing commands found in stream
[2026-06-12 01:53:27,960.960 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 01:53:27,962.962 INFO    ] Waiting 3.05 seconds before fallback handling...
[2026-06-12 01:53:31,387.387 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 01:53:31,388.388 INFO    ] Checking for system updates...
[2026-06-12 01:53:31,409.409 INFO    ] 200
[2026-06-12 01:53:31,410.410 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:53:31,443.443 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 01:53:31,445.445 INFO    ] No update needed
[2026-06-12 01:53:31,446.446 INFO    ] Checking for camera pi updates...
[2026-06-12 01:53:31,465.465 INFO    ] 200
[2026-06-12 01:53:31,467.467 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:53:31,490.490 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 01:53:31,533.533 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 01:53:31,534.534 INFO    ] No camera update needed
[2026-06-12 01:53:31,535.535 INFO    ] Script finished. Safe exiting...
[2026-06-12 01:53:31,537.537 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 01:53:31,540.540 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 01:53:31,543.543 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 01:53:33,576.576 INFO    ] ================================================
[2026-06-12 01:53:33,591.591 INFO    ] Launching Daemon at Fri Jun 12 01:53:33 IST 2026
[2026-06-12 01:53:33,603.603 INFO    ] ================================================
[2026-06-12 01:53:33,950.950 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 01:53:33
[2026-06-12 01:53:34,264.264 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 01:53:34,398.398 INFO    ] Initializing speech engine...
[2026-06-12 01:53:34,402.402 INFO    ] 2026-06-12 01:53:34
[2026-06-12 01:53:34,595.595 INFO    ] 2026-06-12 01:53:34
[2026-06-12 01:53:34,642.642 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 01:53:34,804.804 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 01:53:34,852.852 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 01:53:35,017.017 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 01:53:35,075.075 INFO    ] time= 12/06/2026 01:53:35
[2026-06-12 01:53:35,125.125 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 01:53:35,127.127 INFO    ] Checking for existing commands in stream...
[2026-06-12 01:53:35,233.233 INFO    ] No existing commands found in stream
[2026-06-12 01:53:40,239.239 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 01:53:40,242.242 INFO    ] Waiting 2.84 seconds before fallback handling...
[2026-06-12 01:53:43,450.450 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 01:53:43,452.452 INFO    ] Checking for system updates...
[2026-06-12 01:53:43,473.473 INFO    ] 200
[2026-06-12 01:53:43,474.474 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:53:43,505.505 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 01:53:43,507.507 INFO    ] No update needed
[2026-06-12 01:53:43,508.508 INFO    ] Checking for camera pi updates...
[2026-06-12 01:53:43,528.528 INFO    ] 200
[2026-06-12 01:53:43,530.530 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:53:43,555.555 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 01:53:43,606.606 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 01:53:43,608.608 INFO    ] No camera update needed
[2026-06-12 01:53:43,609.609 INFO    ] Script finished. Safe exiting...
[2026-06-12 01:53:43,611.611 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 01:53:43,614.614 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 01:53:43,617.617 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 01:53:45,656.656 INFO    ] ================================================
[2026-06-12 01:53:45,672.672 INFO    ] Launching Daemon at Fri Jun 12 01:53:45 IST 2026
[2026-06-12 01:53:45,683.683 INFO    ] ================================================
[2026-06-12 01:53:46,015.015 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 01:53:46
[2026-06-12 01:53:46,329.329 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 01:53:46,460.460 INFO    ] Initializing speech engine...
[2026-06-12 01:53:46,463.463 INFO    ] 2026-06-12 01:53:46
[2026-06-12 01:53:46,683.683 INFO    ] 2026-06-12 01:53:46
[2026-06-12 01:53:46,712.712 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 01:53:46,898.898 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 01:53:46,902.902 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 01:53:47,032.032 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 01:53:47,083.083 INFO    ] time= 12/06/2026 01:53:47
[2026-06-12 01:53:47,119.119 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 01:53:47,135.135 INFO    ] Checking for existing commands in stream...
[2026-06-12 01:53:47,257.257 INFO    ] No existing commands found in stream
[2026-06-12 01:53:52,266.266 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 01:53:52,270.270 INFO    ] Waiting 0.71 seconds before fallback handling...
[2026-06-12 01:53:53,378.378 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 01:53:53,379.379 INFO    ] Checking for system updates...
[2026-06-12 01:53:53,400.400 INFO    ] 200
[2026-06-12 01:53:53,402.402 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:53:53,435.435 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 01:53:53,436.436 INFO    ] No update needed
[2026-06-12 01:53:53,438.438 INFO    ] Checking for camera pi updates...
[2026-06-12 01:53:53,461.461 INFO    ] 200
[2026-06-12 01:53:53,463.463 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:53:53,489.489 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 01:53:53,532.532 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 01:53:53,533.533 INFO    ] No camera update needed
[2026-06-12 01:53:53,534.534 INFO    ] Script finished. Safe exiting...
[2026-06-12 01:53:53,536.536 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 01:53:53,539.539 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 01:53:53,542.542 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 01:53:55,583.583 INFO    ] ================================================
[2026-06-12 01:53:55,597.597 INFO    ] Launching Daemon at Fri Jun 12 01:53:55 IST 2026
[2026-06-12 01:53:55,608.608 INFO    ] ================================================
[2026-06-12 01:53:55,944.944 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 01:53:55
[2026-06-12 01:53:56,260.260 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 01:53:56,414.414 INFO    ] Initializing speech engine...
[2026-06-12 01:53:56,420.420 INFO    ] 2026-06-12 01:53:56
[2026-06-12 01:53:56,630.630 INFO    ] 2026-06-12 01:53:56
[2026-06-12 01:53:56,658.658 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 01:53:56,841.841 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 01:53:56,852.852 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 01:53:56,978.978 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 01:53:57,041.041 INFO    ] time= 12/06/2026 01:53:56
[2026-06-12 01:53:57,073.073 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 01:53:57,080.080 INFO    ] Checking for existing commands in stream...
[2026-06-12 01:53:57,147.147 INFO    ] No existing commands found in stream
[2026-06-12 01:54:02,151.151 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 01:54:02,153.153 INFO    ] Waiting 2.78 seconds before fallback handling...
[2026-06-12 01:54:05,299.299 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 01:54:05,301.301 INFO    ] Checking for system updates...
[2026-06-12 01:54:05,322.322 INFO    ] 200
[2026-06-12 01:54:05,323.323 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:54:05,357.357 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 01:54:05,360.360 INFO    ] No update needed
[2026-06-12 01:54:05,362.362 INFO    ] Checking for camera pi updates...
[2026-06-12 01:54:05,391.391 INFO    ] 200
[2026-06-12 01:54:05,394.394 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:54:05,423.423 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 01:54:05,467.467 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 01:54:05,469.469 INFO    ] No camera update needed
[2026-06-12 01:54:05,471.471 INFO    ] Script finished. Safe exiting...
[2026-06-12 01:54:05,472.472 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 01:54:05,475.475 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 01:54:05,478.478 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 01:54:07,520.520 INFO    ] ================================================
[2026-06-12 01:54:07,536.536 INFO    ] Launching Daemon at Fri Jun 12 01:54:07 IST 2026
[2026-06-12 01:54:07,547.547 INFO    ] ================================================
[2026-06-12 01:54:07,878.878 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 01:54:07
[2026-06-12 01:54:08,199.199 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 01:54:08,336.336 INFO    ] Initializing speech engine...
[2026-06-12 01:54:08,341.341 INFO    ] 2026-06-12 01:54:08
[2026-06-12 01:54:08,564.564 INFO    ] 2026-06-12 01:54:08
[2026-06-12 01:54:08,593.593 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 01:54:08,777.777 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 01:54:08,780.780 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 01:54:08,927.927 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 01:54:08,985.985 INFO    ] time= 12/06/2026 01:54:08
[2026-06-12 01:54:09,007.007 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 01:54:09,014.014 INFO    ] Checking for existing commands in stream...
[2026-06-12 01:54:09,081.081 INFO    ] No existing commands found in stream
[2026-06-12 01:54:14,090.090 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 01:54:14,093.093 INFO    ] Waiting 0.03 seconds before fallback handling...
[2026-06-12 01:54:14,459.459 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 01:54:14,461.461 INFO    ] Checking for system updates...
[2026-06-12 01:54:14,481.481 INFO    ] 200
[2026-06-12 01:54:14,483.483 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:54:14,513.513 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 01:54:14,514.514 INFO    ] No update needed
[2026-06-12 01:54:14,515.515 INFO    ] Checking for camera pi updates...
[2026-06-12 01:54:14,536.536 INFO    ] 200
[2026-06-12 01:54:14,538.538 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:54:14,563.563 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 01:54:14,609.609 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 01:54:14,611.611 INFO    ] No camera update needed
[2026-06-12 01:54:14,612.612 INFO    ] Script finished. Safe exiting...
[2026-06-12 01:54:14,613.613 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 01:54:14,616.616 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 01:54:14,619.619 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 01:54:16,657.657 INFO    ] ================================================
[2026-06-12 01:54:16,673.673 INFO    ] Launching Daemon at Fri Jun 12 01:54:16 IST 2026
[2026-06-12 01:54:16,683.683 INFO    ] ================================================
[2026-06-12 01:54:17,064.064 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 01:54:17
[2026-06-12 01:54:17,409.409 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 01:54:17,554.554 INFO    ] Initializing speech engine...
[2026-06-12 01:54:17,568.568 INFO    ] 2026-06-12 01:54:17
[2026-06-12 01:54:17,785.785 INFO    ] 2026-06-12 01:54:17
[2026-06-12 01:54:17,814.814 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 01:54:18,002.002 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 01:54:18,012.012 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 01:54:18,145.145 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 01:54:18,214.214 INFO    ] time= 12/06/2026 01:54:18
[2026-06-12 01:54:18,239.239 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 01:54:18,246.246 INFO    ] Checking for existing commands in stream...
[2026-06-12 01:54:18,313.313 INFO    ] No existing commands found in stream
[2026-06-12 01:54:23,333.333 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 01:54:23,337.337 INFO    ] Waiting 3.37 seconds before fallback handling...
[2026-06-12 01:54:27,089.089 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 01:54:27,091.091 INFO    ] Checking for system updates...
[2026-06-12 01:54:27,112.112 INFO    ] 200
[2026-06-12 01:54:27,113.113 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:54:27,143.143 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 01:54:27,145.145 INFO    ] No update needed
[2026-06-12 01:54:27,146.146 INFO    ] Checking for camera pi updates...
[2026-06-12 01:54:27,167.167 INFO    ] 200
[2026-06-12 01:54:27,168.168 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:54:27,192.192 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 01:54:27,236.236 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 01:54:27,237.237 INFO    ] No camera update needed
[2026-06-12 01:54:27,239.239 INFO    ] Script finished. Safe exiting...
[2026-06-12 01:54:27,240.240 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 01:54:27,243.243 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 01:54:27,246.246 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 01:54:29,284.284 INFO    ] ================================================
[2026-06-12 01:54:29,299.299 INFO    ] Launching Daemon at Fri Jun 12 01:54:29 IST 2026
[2026-06-12 01:54:29,310.310 INFO    ] ================================================
[2026-06-12 01:54:29,706.706 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 01:54:29
[2026-06-12 01:54:30,052.052 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 01:54:30,204.204 INFO    ] Initializing speech engine...
[2026-06-12 01:54:30,209.209 INFO    ] 2026-06-12 01:54:30
[2026-06-12 01:54:30,418.418 INFO    ] 2026-06-12 01:54:30
[2026-06-12 01:54:30,446.446 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 01:54:30,632.632 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 01:54:30,643.643 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 01:54:30,777.777 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 01:54:30,841.841 INFO    ] time= 12/06/2026 01:54:30
[2026-06-12 01:54:30,864.864 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 01:54:30,870.870 INFO    ] Checking for existing commands in stream...
[2026-06-12 01:54:30,938.938 INFO    ] No existing commands found in stream
[2026-06-12 01:54:35,963.963 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 01:54:35,966.966 INFO    ] Waiting 2.38 seconds before fallback handling...
[2026-06-12 01:54:38,659.659 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 01:54:38,661.661 INFO    ] Checking for system updates...
[2026-06-12 01:54:38,682.682 INFO    ] 200
[2026-06-12 01:54:38,683.683 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:54:38,713.713 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 01:54:38,714.714 INFO    ] No update needed
[2026-06-12 01:54:38,716.716 INFO    ] Checking for camera pi updates...
[2026-06-12 01:54:38,737.737 INFO    ] 200
[2026-06-12 01:54:38,738.738 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:54:38,762.762 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 01:54:38,885.885 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 01:54:38,887.887 INFO    ] No camera update needed
[2026-06-12 01:54:38,888.888 INFO    ] Script finished. Safe exiting...
[2026-06-12 01:54:38,889.889 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 01:54:38,892.892 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 01:54:38,895.895 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 01:54:40,936.936 INFO    ] ================================================
[2026-06-12 01:54:40,951.951 INFO    ] Launching Daemon at Fri Jun 12 01:54:40 IST 2026
[2026-06-12 01:54:40,963.963 INFO    ] ================================================
[2026-06-12 01:54:41,319.319 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 01:54:41
[2026-06-12 01:54:41,639.639 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 01:54:41,797.797 INFO    ] Initializing speech engine...
[2026-06-12 01:54:41,801.801 INFO    ] 2026-06-12 01:54:41
[2026-06-12 01:54:42,011.011 INFO    ] 2026-06-12 01:54:41
[2026-06-12 01:54:42,041.041 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 01:54:42,225.225 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 01:54:42,235.235 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 01:54:42,365.365 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 01:54:42,429.429 INFO    ] time= 12/06/2026 01:54:42
[2026-06-12 01:54:42,456.456 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 01:54:42,463.463 INFO    ] Checking for existing commands in stream...
[2026-06-12 01:54:42,530.530 INFO    ] No existing commands found in stream
[2026-06-12 01:54:47,545.545 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 01:54:47,548.548 INFO    ] Waiting 0.25 seconds before fallback handling...
[2026-06-12 01:54:48,168.168 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 01:54:48,170.170 INFO    ] Checking for system updates...
[2026-06-12 01:54:48,193.193 INFO    ] 200
[2026-06-12 01:54:48,195.195 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:54:48,228.228 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 01:54:48,230.230 INFO    ] No update needed
[2026-06-12 01:54:48,231.231 INFO    ] Checking for camera pi updates...
[2026-06-12 01:54:48,253.253 INFO    ] 200
[2026-06-12 01:54:48,255.255 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:54:48,283.283 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 01:54:48,328.328 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 01:54:48,329.329 INFO    ] No camera update needed
[2026-06-12 01:54:48,331.331 INFO    ] Script finished. Safe exiting...
[2026-06-12 01:54:48,332.332 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 01:54:48,336.336 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 01:54:48,339.339 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 01:54:50,378.378 INFO    ] ================================================
[2026-06-12 01:54:50,394.394 INFO    ] Launching Daemon at Fri Jun 12 01:54:50 IST 2026
[2026-06-12 01:54:50,405.405 INFO    ] ================================================
[2026-06-12 01:54:50,744.744 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 01:54:50
[2026-06-12 01:54:51,056.056 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 01:54:51,193.193 INFO    ] Initializing speech engine...
[2026-06-12 01:54:51,202.202 INFO    ] 2026-06-12 01:54:51
[2026-06-12 01:54:51,409.409 INFO    ] 2026-06-12 01:54:51
[2026-06-12 01:54:51,439.439 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 01:54:51,626.626 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 01:54:51,635.635 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 01:54:51,765.765 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 01:54:51,833.833 INFO    ] time= 12/06/2026 01:54:51
[2026-06-12 01:54:51,856.856 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 01:54:51,863.863 INFO    ] Checking for existing commands in stream...
[2026-06-12 01:54:51,953.953 INFO    ] No existing commands found in stream
[2026-06-12 01:54:56,962.962 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 01:54:56,964.964 INFO    ] Waiting 3.34 seconds before fallback handling...
[2026-06-12 01:55:00,700.700 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 01:55:00,702.702 INFO    ] Checking for system updates...
[2026-06-12 01:55:00,722.722 INFO    ] 200
[2026-06-12 01:55:00,724.724 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:55:00,757.757 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 01:55:00,758.758 INFO    ] No update needed
[2026-06-12 01:55:00,759.759 INFO    ] Checking for camera pi updates...
[2026-06-12 01:55:00,781.781 INFO    ] 200
[2026-06-12 01:55:00,782.782 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:55:00,805.805 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 01:55:00,846.846 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 01:55:00,847.847 INFO    ] No camera update needed
[2026-06-12 01:55:00,849.849 INFO    ] Script finished. Safe exiting...
[2026-06-12 01:55:00,850.850 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 01:55:00,853.853 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 01:55:00,856.856 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 01:55:02,883.883 INFO    ] ================================================
[2026-06-12 01:55:02,892.892 INFO    ] Launching Daemon at Fri Jun 12 01:55:02 IST 2026
[2026-06-12 01:55:02,898.898 INFO    ] ================================================
[2026-06-12 01:55:03,249.249 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 01:55:03
[2026-06-12 01:55:03,595.595 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 01:55:03,752.752 INFO    ] Initializing speech engine...
[2026-06-12 01:55:03,756.756 INFO    ] 2026-06-12 01:55:03
[2026-06-12 01:55:03,951.951 INFO    ] 2026-06-12 01:55:03
[2026-06-12 01:55:03,979.979 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 01:55:04,117.117 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 01:55:04,166.166 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 01:55:04,304.304 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 01:55:04,371.371 INFO    ] time= 12/06/2026 01:55:04
[2026-06-12 01:55:04,395.395 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 01:55:04,401.401 INFO    ] Checking for existing commands in stream...
[2026-06-12 01:55:04,466.466 INFO    ] No existing commands found in stream
[2026-06-12 01:55:09,477.477 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 01:55:09,479.479 INFO    ] Waiting 1.12 seconds before fallback handling...
[2026-06-12 01:55:10,969.969 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 01:55:10,971.971 INFO    ] Checking for system updates...
[2026-06-12 01:55:10,993.993 INFO    ] 200
[2026-06-12 01:55:10,994.994 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:55:11,027.027 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 01:55:11,029.029 INFO    ] No update needed
[2026-06-12 01:55:11,030.030 INFO    ] Checking for camera pi updates...
[2026-06-12 01:55:11,051.051 INFO    ] 200
[2026-06-12 01:55:11,053.053 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:55:11,076.076 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 01:55:11,171.171 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 01:55:11,172.172 INFO    ] No camera update needed
[2026-06-12 01:55:11,173.173 INFO    ] Script finished. Safe exiting...
[2026-06-12 01:55:11,175.175 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 01:55:11,178.178 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 01:55:11,181.181 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 01:55:13,222.222 INFO    ] ================================================
[2026-06-12 01:55:13,238.238 INFO    ] Launching Daemon at Fri Jun 12 01:55:13 IST 2026
[2026-06-12 01:55:13,250.250 INFO    ] ================================================
[2026-06-12 01:55:13,614.614 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 01:55:13
[2026-06-12 01:55:13,934.934 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 01:55:14,064.064 INFO    ] Initializing speech engine...
[2026-06-12 01:55:14,070.070 INFO    ] 2026-06-12 01:55:14
[2026-06-12 01:55:14,288.288 INFO    ] 2026-06-12 01:55:14
[2026-06-12 01:55:14,318.318 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 01:55:14,504.504 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 01:55:14,507.507 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 01:55:14,638.638 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 01:55:14,699.699 INFO    ] time= 12/06/2026 01:55:14
[2026-06-12 01:55:14,738.738 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 01:55:14,740.740 INFO    ] Checking for existing commands in stream...
[2026-06-12 01:55:14,812.812 INFO    ] No existing commands found in stream
[2026-06-12 01:55:19,821.821 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 01:55:19,823.823 INFO    ] Waiting 0.98 seconds before fallback handling...
[2026-06-12 01:55:21,168.168 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 01:55:21,170.170 INFO    ] Checking for system updates...
[2026-06-12 01:55:21,193.193 INFO    ] 200
[2026-06-12 01:55:21,194.194 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:55:21,227.227 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 01:55:21,228.228 INFO    ] No update needed
[2026-06-12 01:55:21,229.229 INFO    ] Checking for camera pi updates...
[2026-06-12 01:55:21,249.249 INFO    ] 200
[2026-06-12 01:55:21,250.250 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:55:21,277.277 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 01:55:21,319.319 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 01:55:21,321.321 INFO    ] No camera update needed
[2026-06-12 01:55:21,322.322 INFO    ] Script finished. Safe exiting...
[2026-06-12 01:55:21,323.323 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 01:55:21,326.326 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 01:55:21,329.329 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 01:55:23,372.372 INFO    ] ================================================
[2026-06-12 01:55:23,388.388 INFO    ] Launching Daemon at Fri Jun 12 01:55:23 IST 2026
[2026-06-12 01:55:23,400.400 INFO    ] ================================================
[2026-06-12 01:55:23,769.769 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 01:55:23
[2026-06-12 01:55:24,118.118 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 01:55:24,274.274 INFO    ] Initializing speech engine...
[2026-06-12 01:55:24,280.280 INFO    ] 2026-06-12 01:55:24
[2026-06-12 01:55:24,489.489 INFO    ] 2026-06-12 01:55:24
[2026-06-12 01:55:24,519.519 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 01:55:24,705.705 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 01:55:24,714.714 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 01:55:24,845.845 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 01:55:24,912.912 INFO    ] time= 12/06/2026 01:55:24
[2026-06-12 01:55:24,936.936 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 01:55:24,943.943 INFO    ] Checking for existing commands in stream...
[2026-06-12 01:55:25,010.010 INFO    ] No existing commands found in stream
[2026-06-12 01:55:30,025.025 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 01:55:30,028.028 INFO    ] Waiting 0.84 seconds before fallback handling...
[2026-06-12 01:55:31,238.238 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 01:55:31,240.240 INFO    ] Checking for system updates...
[2026-06-12 01:55:31,261.261 INFO    ] 200
[2026-06-12 01:55:31,263.263 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:55:31,294.294 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 01:55:31,295.295 INFO    ] No update needed
[2026-06-12 01:55:31,297.297 INFO    ] Checking for camera pi updates...
[2026-06-12 01:55:31,317.317 INFO    ] 200
[2026-06-12 01:55:31,319.319 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:55:31,345.345 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 01:55:31,376.376 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 01:55:31,377.377 INFO    ] No camera update needed
[2026-06-12 01:55:31,379.379 INFO    ] Script finished. Safe exiting...
[2026-06-12 01:55:31,380.380 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 01:55:31,383.383 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 01:55:31,386.386 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 01:55:33,418.418 INFO    ] ================================================
[2026-06-12 01:55:33,434.434 INFO    ] Launching Daemon at Fri Jun 12 01:55:33 IST 2026
[2026-06-12 01:55:33,445.445 INFO    ] ================================================
[2026-06-12 01:55:33,822.822 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 01:55:33
[2026-06-12 01:55:34,165.165 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 01:55:34,319.319 INFO    ] Initializing speech engine...
[2026-06-12 01:55:34,324.324 INFO    ] 2026-06-12 01:55:34
[2026-06-12 01:55:34,536.536 INFO    ] 2026-06-12 01:55:34
[2026-06-12 01:55:34,565.565 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 01:55:34,752.752 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 01:55:34,762.762 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 01:55:34,893.893 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 01:55:34,961.961 INFO    ] time= 12/06/2026 01:55:34
[2026-06-12 01:55:34,986.986 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 01:55:34,993.993 INFO    ] Checking for existing commands in stream...
[2026-06-12 01:55:35,085.085 INFO    ] No existing commands found in stream
[2026-06-12 01:55:40,119.119 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 01:55:40,129.129 INFO    ] Waiting 3.65 seconds before fallback handling...
[2026-06-12 01:55:44,181.181 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 01:55:44,183.183 INFO    ] Checking for system updates...
[2026-06-12 01:55:44,205.205 INFO    ] 200
[2026-06-12 01:55:44,207.207 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:55:44,241.241 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 01:55:44,242.242 INFO    ] No update needed
[2026-06-12 01:55:44,244.244 INFO    ] Checking for camera pi updates...
[2026-06-12 01:55:44,265.265 INFO    ] 200
[2026-06-12 01:55:44,267.267 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:55:44,292.292 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 01:55:44,338.338 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 01:55:44,339.339 INFO    ] No camera update needed
[2026-06-12 01:55:44,341.341 INFO    ] Script finished. Safe exiting...
[2026-06-12 01:55:44,342.342 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 01:55:44,345.345 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 01:55:44,348.348 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 01:55:46,389.389 INFO    ] ================================================
[2026-06-12 01:55:46,405.405 INFO    ] Launching Daemon at Fri Jun 12 01:55:46 IST 2026
[2026-06-12 01:55:46,417.417 INFO    ] ================================================
[2026-06-12 01:55:46,782.782 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 01:55:46
[2026-06-12 01:55:47,111.111 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 01:55:47,246.246 INFO    ] Initializing speech engine...
[2026-06-12 01:55:47,249.249 INFO    ] 2026-06-12 01:55:47
[2026-06-12 01:55:47,447.447 INFO    ] 2026-06-12 01:55:47
[2026-06-12 01:55:47,489.489 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 01:55:47,613.613 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 01:55:47,649.649 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 01:55:47,801.801 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 01:55:47,838.838 INFO    ] time= 12/06/2026 01:55:47
[2026-06-12 01:55:47,865.865 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 01:55:47,931.931 INFO    ] Checking for existing commands in stream...
[2026-06-12 01:55:48,022.022 INFO    ] No existing commands found in stream
[2026-06-12 01:55:53,032.032 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 01:55:53,035.035 INFO    ] Waiting 1.34 seconds before fallback handling...
[2026-06-12 01:55:54,709.709 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 01:55:54,711.711 INFO    ] Checking for system updates...
[2026-06-12 01:55:54,733.733 INFO    ] 200
[2026-06-12 01:55:54,735.735 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:55:54,771.771 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 01:55:54,772.772 INFO    ] No update needed
[2026-06-12 01:55:54,774.774 INFO    ] Checking for camera pi updates...
[2026-06-12 01:55:54,795.795 INFO    ] 200
[2026-06-12 01:55:54,797.797 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:55:54,823.823 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 01:55:54,868.868 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 01:55:54,869.869 INFO    ] No camera update needed
[2026-06-12 01:55:54,871.871 INFO    ] Script finished. Safe exiting...
[2026-06-12 01:55:54,872.872 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 01:55:54,876.876 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 01:55:54,878.878 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 01:55:56,917.917 INFO    ] ================================================
[2026-06-12 01:55:56,932.932 INFO    ] Launching Daemon at Fri Jun 12 01:55:56 IST 2026
[2026-06-12 01:55:56,943.943 INFO    ] ================================================
[2026-06-12 01:55:57,299.299 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 01:55:57
[2026-06-12 01:55:57,610.610 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 01:55:57,747.747 INFO    ] Initializing speech engine...
[2026-06-12 01:55:57,757.757 INFO    ] 2026-06-12 01:55:57
[2026-06-12 01:55:57,961.961 INFO    ] 2026-06-12 01:55:57
[2026-06-12 01:55:57,989.989 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 01:55:58,172.172 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 01:55:58,181.181 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 01:55:58,310.310 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 01:55:58,374.374 INFO    ] time= 12/06/2026 01:55:58
[2026-06-12 01:55:58,400.400 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 01:55:58,406.406 INFO    ] Checking for existing commands in stream...
[2026-06-12 01:55:58,474.474 INFO    ] No existing commands found in stream
[2026-06-12 01:56:03,488.488 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 01:56:03,491.491 INFO    ] Waiting 2.43 seconds before fallback handling...
[2026-06-12 01:56:06,280.280 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 01:56:06,282.282 INFO    ] Checking for system updates...
[2026-06-12 01:56:06,302.302 INFO    ] 200
[2026-06-12 01:56:06,304.304 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:56:06,334.334 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 01:56:06,335.335 INFO    ] No update needed
[2026-06-12 01:56:06,336.336 INFO    ] Checking for camera pi updates...
[2026-06-12 01:56:06,358.358 INFO    ] 200
[2026-06-12 01:56:06,359.359 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:56:06,382.382 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 01:56:06,426.426 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 01:56:06,427.427 INFO    ] No camera update needed
[2026-06-12 01:56:06,428.428 INFO    ] Script finished. Safe exiting...
[2026-06-12 01:56:06,429.429 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 01:56:06,433.433 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 01:56:06,436.436 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 01:56:08,476.476 INFO    ] ================================================
[2026-06-12 01:56:08,492.492 INFO    ] Launching Daemon at Fri Jun 12 01:56:08 IST 2026
[2026-06-12 01:56:08,504.504 INFO    ] ================================================
[2026-06-12 01:56:08,858.858 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 01:56:08
[2026-06-12 01:56:09,170.170 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 01:56:09,304.304 INFO    ] Initializing speech engine...
[2026-06-12 01:56:09,308.308 INFO    ] 2026-06-12 01:56:09
[2026-06-12 01:56:09,518.518 INFO    ] 2026-06-12 01:56:09
[2026-06-12 01:56:09,546.546 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 01:56:09,705.705 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 01:56:09,742.742 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 01:56:09,875.875 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 01:56:09,921.921 INFO    ] time= 12/06/2026 01:56:09
[2026-06-12 01:56:09,947.947 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 01:56:10,004.004 INFO    ] Checking for existing commands in stream...
[2026-06-12 01:56:10,106.106 INFO    ] No existing commands found in stream
[2026-06-12 01:56:15,115.115 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 01:56:15,118.118 INFO    ] Waiting 3.07 seconds before fallback handling...
[2026-06-12 01:56:18,539.539 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 01:56:18,541.541 INFO    ] Checking for system updates...
[2026-06-12 01:56:18,561.561 INFO    ] 200
[2026-06-12 01:56:18,562.562 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:56:18,594.594 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 01:56:18,596.596 INFO    ] No update needed
[2026-06-12 01:56:18,597.597 INFO    ] Checking for camera pi updates...
[2026-06-12 01:56:18,617.617 INFO    ] 200
[2026-06-12 01:56:18,618.618 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:56:18,643.643 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 01:56:18,692.692 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 01:56:18,694.694 INFO    ] No camera update needed
[2026-06-12 01:56:18,695.695 INFO    ] Script finished. Safe exiting...
[2026-06-12 01:56:18,696.696 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 01:56:18,699.699 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 01:56:18,702.702 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 01:56:20,742.742 INFO    ] ================================================
[2026-06-12 01:56:20,758.758 INFO    ] Launching Daemon at Fri Jun 12 01:56:20 IST 2026
[2026-06-12 01:56:20,768.768 INFO    ] ================================================
[2026-06-12 01:56:21,119.119 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 01:56:21
[2026-06-12 01:56:21,429.429 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 01:56:21,562.562 INFO    ] Initializing speech engine...
[2026-06-12 01:56:21,566.566 INFO    ] 2026-06-12 01:56:21
[2026-06-12 01:56:21,784.784 INFO    ] 2026-06-12 01:56:21
[2026-06-12 01:56:21,814.814 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 01:56:22,001.001 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 01:56:22,011.011 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 01:56:22,139.139 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 01:56:22,197.197 INFO    ] time= 12/06/2026 01:56:22
[2026-06-12 01:56:22,235.235 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 01:56:22,242.242 INFO    ] Checking for existing commands in stream...
[2026-06-12 01:56:22,310.310 INFO    ] No existing commands found in stream
[2026-06-12 01:56:27,329.329 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 01:56:27,333.333 INFO    ] Waiting 0.82 seconds before fallback handling...
[2026-06-12 01:56:28,551.551 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 01:56:28,553.553 INFO    ] Checking for system updates...
[2026-06-12 01:56:28,575.575 INFO    ] 200
[2026-06-12 01:56:28,576.576 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:56:28,612.612 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 01:56:28,614.614 INFO    ] No update needed
[2026-06-12 01:56:28,615.615 INFO    ] Checking for camera pi updates...
[2026-06-12 01:56:28,637.637 INFO    ] 200
[2026-06-12 01:56:28,639.639 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:56:28,665.665 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 01:56:28,713.713 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 01:56:28,714.714 INFO    ] No camera update needed
[2026-06-12 01:56:28,716.716 INFO    ] Script finished. Safe exiting...
[2026-06-12 01:56:28,717.717 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 01:56:28,720.720 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 01:56:28,723.723 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 01:56:30,762.762 INFO    ] ================================================
[2026-06-12 01:56:30,778.778 INFO    ] Launching Daemon at Fri Jun 12 01:56:30 IST 2026
[2026-06-12 01:56:30,788.788 INFO    ] ================================================
[2026-06-12 01:56:31,137.137 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 01:56:31
[2026-06-12 01:56:31,448.448 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 01:56:31,578.578 INFO    ] Initializing speech engine...
[2026-06-12 01:56:31,582.582 INFO    ] 2026-06-12 01:56:31
[2026-06-12 01:56:31,804.804 INFO    ] 2026-06-12 01:56:31
[2026-06-12 01:56:31,841.841 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 01:56:32,040.040 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 01:56:32,050.050 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 01:56:32,235.235 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 01:56:32,295.295 INFO    ] time= 12/06/2026 01:56:32
[2026-06-12 01:56:32,298.298 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 01:56:32,305.305 INFO    ] Checking for existing commands in stream...
[2026-06-12 01:56:32,380.380 INFO    ] No existing commands found in stream
[2026-06-12 01:56:37,391.391 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 01:56:37,394.394 INFO    ] Waiting 3.05 seconds before fallback handling...
[2026-06-12 01:56:40,799.799 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 01:56:40,800.800 INFO    ] Checking for system updates...
[2026-06-12 01:56:40,821.821 INFO    ] 200
[2026-06-12 01:56:40,822.822 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:56:40,855.855 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 01:56:40,856.856 INFO    ] No update needed
[2026-06-12 01:56:40,858.858 INFO    ] Checking for camera pi updates...
[2026-06-12 01:56:40,877.877 INFO    ] 200
[2026-06-12 01:56:40,879.879 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:56:40,904.904 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 01:56:41,046.046 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 01:56:41,048.048 INFO    ] No camera update needed
[2026-06-12 01:56:41,049.049 INFO    ] Script finished. Safe exiting...
[2026-06-12 01:56:41,051.051 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 01:56:41,053.053 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 01:56:41,056.056 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 01:56:43,095.095 INFO    ] ================================================
[2026-06-12 01:56:43,110.110 INFO    ] Launching Daemon at Fri Jun 12 01:56:43 IST 2026
[2026-06-12 01:56:43,121.121 INFO    ] ================================================
[2026-06-12 01:56:43,482.482 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 01:56:43
[2026-06-12 01:56:43,801.801 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 01:56:43,932.932 INFO    ] Initializing speech engine...
[2026-06-12 01:56:43,940.940 INFO    ] 2026-06-12 01:56:43
[2026-06-12 01:56:44,154.154 INFO    ] 2026-06-12 01:56:44
[2026-06-12 01:56:44,183.183 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 01:56:44,368.368 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 01:56:44,377.377 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 01:56:44,522.522 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 01:56:44,576.576 INFO    ] time= 12/06/2026 01:56:44
[2026-06-12 01:56:44,598.598 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 01:56:44,604.604 INFO    ] Checking for existing commands in stream...
[2026-06-12 01:56:44,671.671 INFO    ] No existing commands found in stream
[2026-06-12 01:56:49,680.680 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 01:56:49,683.683 INFO    ] Waiting 1.35 seconds before fallback handling...
[2026-06-12 01:56:51,419.419 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 01:56:51,421.421 INFO    ] Checking for system updates...
[2026-06-12 01:56:51,441.441 INFO    ] 200
[2026-06-12 01:56:51,443.443 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:56:51,473.473 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 01:56:51,474.474 INFO    ] No update needed
[2026-06-12 01:56:51,475.475 INFO    ] Checking for camera pi updates...
[2026-06-12 01:56:51,497.497 INFO    ] 200
[2026-06-12 01:56:51,498.498 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:56:51,525.525 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 01:56:51,582.582 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 01:56:51,584.584 INFO    ] No camera update needed
[2026-06-12 01:56:51,585.585 INFO    ] Script finished. Safe exiting...
[2026-06-12 01:56:51,586.586 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 01:56:51,589.589 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 01:56:51,592.592 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 01:56:53,635.635 INFO    ] ================================================
[2026-06-12 01:56:53,651.651 INFO    ] Launching Daemon at Fri Jun 12 01:56:53 IST 2026
[2026-06-12 01:56:53,661.661 INFO    ] ================================================
[2026-06-12 01:56:54,014.014 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 01:56:54
[2026-06-12 01:56:54,333.333 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 01:56:54,477.477 INFO    ] Initializing speech engine...
[2026-06-12 01:56:54,483.483 INFO    ] 2026-06-12 01:56:54
[2026-06-12 01:56:54,686.686 INFO    ] 2026-06-12 01:56:54
[2026-06-12 01:56:54,715.715 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 01:56:54,899.899 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 01:56:54,908.908 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 01:56:55,043.043 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 01:56:55,106.106 INFO    ] time= 12/06/2026 01:56:55
[2026-06-12 01:56:55,130.130 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 01:56:55,136.136 INFO    ] Checking for existing commands in stream...
[2026-06-12 01:56:55,203.203 INFO    ] No existing commands found in stream
[2026-06-12 01:57:00,212.212 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 01:57:00,215.215 INFO    ] Waiting 2.21 seconds before fallback handling...
[2026-06-12 01:57:02,768.768 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 01:57:02,771.771 INFO    ] Checking for system updates...
[2026-06-12 01:57:02,810.810 INFO    ] 200
[2026-06-12 01:57:02,812.812 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:57:02,850.850 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 01:57:02,852.852 INFO    ] No update needed
[2026-06-12 01:57:02,854.854 INFO    ] Checking for camera pi updates...
[2026-06-12 01:57:02,879.879 INFO    ] 200
[2026-06-12 01:57:02,880.880 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:57:02,907.907 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 01:57:02,938.938 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 01:57:02,939.939 INFO    ] No camera update needed
[2026-06-12 01:57:02,941.941 INFO    ] Script finished. Safe exiting...
[2026-06-12 01:57:02,942.942 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 01:57:02,945.945 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 01:57:02,948.948 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 01:57:04,989.989 INFO    ] ================================================
[2026-06-12 01:57:05,005.005 INFO    ] Launching Daemon at Fri Jun 12 01:57:04 IST 2026
[2026-06-12 01:57:05,017.017 INFO    ] ================================================
[2026-06-12 01:57:05,372.372 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 01:57:05
[2026-06-12 01:57:05,689.689 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 01:57:05,832.832 INFO    ] Initializing speech engine...
[2026-06-12 01:57:05,838.838 INFO    ] 2026-06-12 01:57:05
[2026-06-12 01:57:06,041.041 INFO    ] 2026-06-12 01:57:06
[2026-06-12 01:57:06,070.070 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 01:57:06,272.272 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 01:57:06,275.275 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 01:57:06,412.412 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 01:57:06,465.465 INFO    ] time= 12/06/2026 01:57:06
[2026-06-12 01:57:06,494.494 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 01:57:06,504.504 INFO    ] Checking for existing commands in stream...
[2026-06-12 01:57:06,576.576 INFO    ] No existing commands found in stream
[2026-06-12 01:57:11,595.595 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 01:57:11,598.598 INFO    ] Waiting 0.27 seconds before fallback handling...
[2026-06-12 01:57:12,286.286 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 01:57:12,289.289 INFO    ] Checking for system updates...
[2026-06-12 01:57:12,326.326 INFO    ] 200
[2026-06-12 01:57:12,329.329 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:57:12,396.396 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 01:57:12,399.399 INFO    ] No update needed
[2026-06-12 01:57:12,401.401 INFO    ] Checking for camera pi updates...
[2026-06-12 01:57:12,430.430 INFO    ] 200
[2026-06-12 01:57:12,431.431 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:57:12,455.455 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 01:57:12,497.497 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 01:57:12,498.498 INFO    ] No camera update needed
[2026-06-12 01:57:12,500.500 INFO    ] Script finished. Safe exiting...
[2026-06-12 01:57:12,501.501 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 01:57:12,504.504 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 01:57:12,507.507 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 01:57:14,538.538 INFO    ] ================================================
[2026-06-12 01:57:14,554.554 INFO    ] Launching Daemon at Fri Jun 12 01:57:14 IST 2026
[2026-06-12 01:57:14,564.564 INFO    ] ================================================
[2026-06-12 01:57:14,929.929 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 01:57:14
[2026-06-12 01:57:15,245.245 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 01:57:15,388.388 INFO    ] Initializing speech engine...
[2026-06-12 01:57:15,394.394 INFO    ] 2026-06-12 01:57:15
[2026-06-12 01:57:15,598.598 INFO    ] 2026-06-12 01:57:15
[2026-06-12 01:57:15,626.626 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 01:57:15,758.758 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 01:57:15,811.811 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 01:57:15,944.944 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 01:57:16,002.002 INFO    ] time= 12/06/2026 01:57:15
[2026-06-12 01:57:16,036.036 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 01:57:16,041.041 INFO    ] Checking for existing commands in stream...
[2026-06-12 01:57:16,112.112 INFO    ] No existing commands found in stream
[2026-06-12 01:57:21,126.126 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 01:57:21,129.129 INFO    ] Waiting 3.40 seconds before fallback handling...
[2026-06-12 01:57:24,891.891 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 01:57:24,893.893 INFO    ] Checking for system updates...
[2026-06-12 01:57:24,913.913 INFO    ] 200
[2026-06-12 01:57:24,914.914 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:57:24,947.947 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 01:57:24,948.948 INFO    ] No update needed
[2026-06-12 01:57:24,950.950 INFO    ] Checking for camera pi updates...
[2026-06-12 01:57:24,969.969 INFO    ] 200
[2026-06-12 01:57:24,971.971 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:57:24,994.994 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 01:57:25,035.035 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 01:57:25,037.037 INFO    ] No camera update needed
[2026-06-12 01:57:25,038.038 INFO    ] Script finished. Safe exiting...
[2026-06-12 01:57:25,039.039 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 01:57:25,042.042 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 01:57:25,045.045 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 01:57:27,084.084 INFO    ] ================================================
[2026-06-12 01:57:27,099.099 INFO    ] Launching Daemon at Fri Jun 12 01:57:27 IST 2026
[2026-06-12 01:57:27,111.111 INFO    ] ================================================
[2026-06-12 01:57:27,474.474 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 01:57:27
[2026-06-12 01:57:27,811.811 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 01:57:27,963.963 INFO    ] Initializing speech engine...
[2026-06-12 01:57:27,967.967 INFO    ] 2026-06-12 01:57:27
[2026-06-12 01:57:28,174.174 INFO    ] 2026-06-12 01:57:28
[2026-06-12 01:57:28,202.202 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 01:57:28,385.385 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 01:57:28,395.395 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 01:57:28,525.525 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 01:57:28,592.592 INFO    ] time= 12/06/2026 01:57:28
[2026-06-12 01:57:28,616.616 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 01:57:28,622.622 INFO    ] Checking for existing commands in stream...
[2026-06-12 01:57:28,689.689 INFO    ] No existing commands found in stream
[2026-06-12 01:57:33,709.709 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 01:57:33,712.712 INFO    ] Waiting 2.19 seconds before fallback handling...
[2026-06-12 01:57:36,260.260 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 01:57:36,262.262 INFO    ] Checking for system updates...
[2026-06-12 01:57:36,282.282 INFO    ] 200
[2026-06-12 01:57:36,284.284 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:57:36,316.316 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 01:57:36,318.318 INFO    ] No update needed
[2026-06-12 01:57:36,320.320 INFO    ] Checking for camera pi updates...
[2026-06-12 01:57:36,340.340 INFO    ] 200
[2026-06-12 01:57:36,341.341 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:57:36,365.365 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 01:57:36,404.404 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 01:57:36,405.405 INFO    ] No camera update needed
[2026-06-12 01:57:36,407.407 INFO    ] Script finished. Safe exiting...
[2026-06-12 01:57:36,408.408 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 01:57:36,412.412 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 01:57:36,415.415 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 01:57:38,456.456 INFO    ] ================================================
[2026-06-12 01:57:38,472.472 INFO    ] Launching Daemon at Fri Jun 12 01:57:38 IST 2026
[2026-06-12 01:57:38,483.483 INFO    ] ================================================
[2026-06-12 01:57:38,829.829 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 01:57:38
[2026-06-12 01:57:39,168.168 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 01:57:39,318.318 INFO    ] Initializing speech engine...
[2026-06-12 01:57:39,323.323 INFO    ] 2026-06-12 01:57:39
[2026-06-12 01:57:39,526.526 INFO    ] 2026-06-12 01:57:39
[2026-06-12 01:57:39,554.554 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 01:57:39,677.677 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 01:57:39,739.739 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 01:57:39,876.876 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 01:57:39,940.940 INFO    ] time= 12/06/2026 01:57:39
[2026-06-12 01:57:39,966.966 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 01:57:39,968.968 INFO    ] Checking for existing commands in stream...
[2026-06-12 01:57:40,039.039 INFO    ] No existing commands found in stream
[2026-06-12 01:57:45,054.054 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 01:57:45,056.056 INFO    ] Waiting 1.65 seconds before fallback handling...
[2026-06-12 01:57:47,081.081 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 01:57:47,082.082 INFO    ] Checking for system updates...
[2026-06-12 01:57:47,103.103 INFO    ] 200
[2026-06-12 01:57:47,104.104 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:57:47,134.134 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 01:57:47,135.135 INFO    ] No update needed
[2026-06-12 01:57:47,137.137 INFO    ] Checking for camera pi updates...
[2026-06-12 01:57:47,156.156 INFO    ] 200
[2026-06-12 01:57:47,157.157 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:57:47,182.182 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 01:57:47,231.231 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 01:57:47,232.232 INFO    ] No camera update needed
[2026-06-12 01:57:47,234.234 INFO    ] Script finished. Safe exiting...
[2026-06-12 01:57:47,235.235 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 01:57:47,238.238 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 01:57:47,242.242 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 01:57:49,281.281 INFO    ] ================================================
[2026-06-12 01:57:49,297.297 INFO    ] Launching Daemon at Fri Jun 12 01:57:49 IST 2026
[2026-06-12 01:57:49,308.308 INFO    ] ================================================
[2026-06-12 01:57:49,663.663 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 01:57:49
[2026-06-12 01:57:49,979.979 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 01:57:50,122.122 INFO    ] Initializing speech engine...
[2026-06-12 01:57:50,128.128 INFO    ] 2026-06-12 01:57:50
[2026-06-12 01:57:50,331.331 INFO    ] 2026-06-12 01:57:50
[2026-06-12 01:57:50,358.358 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 01:57:50,545.545 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 01:57:50,548.548 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 01:57:50,680.680 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 01:57:50,738.738 INFO    ] time= 12/06/2026 01:57:50
[2026-06-12 01:57:50,775.775 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 01:57:50,781.781 INFO    ] Checking for existing commands in stream...
[2026-06-12 01:57:50,867.867 INFO    ] No existing commands found in stream
[2026-06-12 01:57:55,884.884 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 01:57:55,887.887 INFO    ] Waiting 0.13 seconds before fallback handling...
[2026-06-12 01:57:56,383.383 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 01:57:56,384.384 INFO    ] Checking for system updates...
[2026-06-12 01:57:56,406.406 INFO    ] 200
[2026-06-12 01:57:56,407.407 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:57:56,438.438 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 01:57:56,439.439 INFO    ] No update needed
[2026-06-12 01:57:56,441.441 INFO    ] Checking for camera pi updates...
[2026-06-12 01:57:56,462.462 INFO    ] 200
[2026-06-12 01:57:56,464.464 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:57:56,488.488 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 01:57:56,531.531 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 01:57:56,533.533 INFO    ] No camera update needed
[2026-06-12 01:57:56,534.534 INFO    ] Script finished. Safe exiting...
[2026-06-12 01:57:56,536.536 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 01:57:56,539.539 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 01:57:56,542.542 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 01:57:58,582.582 INFO    ] ================================================
[2026-06-12 01:57:58,598.598 INFO    ] Launching Daemon at Fri Jun 12 01:57:58 IST 2026
[2026-06-12 01:57:58,609.609 INFO    ] ================================================
[2026-06-12 01:57:58,967.967 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 01:57:58
[2026-06-12 01:57:59,308.308 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 01:57:59,449.449 INFO    ] Initializing speech engine...
[2026-06-12 01:57:59,455.455 INFO    ] 2026-06-12 01:57:59
[2026-06-12 01:57:59,657.657 INFO    ] 2026-06-12 01:57:59
[2026-06-12 01:57:59,685.685 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 01:57:59,867.867 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 01:57:59,877.877 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 01:58:00,005.005 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 01:58:00,069.069 INFO    ] time= 12/06/2026 01:58:00
[2026-06-12 01:58:00,096.096 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 01:58:00,102.102 INFO    ] Checking for existing commands in stream...
[2026-06-12 01:58:00,168.168 INFO    ] No existing commands found in stream
[2026-06-12 01:58:05,177.177 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 01:58:05,180.180 INFO    ] Waiting 0.33 seconds before fallback handling...
[2026-06-12 01:58:05,881.881 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 01:58:05,883.883 INFO    ] Checking for system updates...
[2026-06-12 01:58:05,903.903 INFO    ] 200
[2026-06-12 01:58:05,905.905 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:58:05,935.935 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 01:58:05,937.937 INFO    ] No update needed
[2026-06-12 01:58:05,938.938 INFO    ] Checking for camera pi updates...
[2026-06-12 01:58:05,957.957 INFO    ] 200
[2026-06-12 01:58:05,959.959 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:58:05,982.982 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 01:58:06,024.024 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 01:58:06,026.026 INFO    ] No camera update needed
[2026-06-12 01:58:06,027.027 INFO    ] Script finished. Safe exiting...
[2026-06-12 01:58:06,028.028 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 01:58:06,031.031 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 01:58:06,034.034 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 01:58:08,072.072 INFO    ] ================================================
[2026-06-12 01:58:08,087.087 INFO    ] Launching Daemon at Fri Jun 12 01:58:08 IST 2026
[2026-06-12 01:58:08,098.098 INFO    ] ================================================
[2026-06-12 01:58:08,442.442 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 01:58:08
[2026-06-12 01:58:08,779.779 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 01:58:08,931.931 INFO    ] Initializing speech engine...
[2026-06-12 01:58:08,936.936 INFO    ] 2026-06-12 01:58:08
[2026-06-12 01:58:09,144.144 INFO    ] 2026-06-12 01:58:09
[2026-06-12 01:58:09,173.173 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 01:58:09,358.358 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 01:58:09,368.368 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 01:58:09,511.511 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 01:58:09,563.563 INFO    ] time= 12/06/2026 01:58:09
[2026-06-12 01:58:09,586.586 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 01:58:09,593.593 INFO    ] Checking for existing commands in stream...
[2026-06-12 01:58:09,660.660 INFO    ] No existing commands found in stream
[2026-06-12 01:58:14,674.674 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 01:58:14,677.677 INFO    ] Waiting 3.69 seconds before fallback handling...
[2026-06-12 01:58:18,743.743 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 01:58:18,745.745 INFO    ] Checking for system updates...
[2026-06-12 01:58:18,765.765 INFO    ] 200
[2026-06-12 01:58:18,767.767 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:58:18,799.799 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 01:58:18,800.800 INFO    ] No update needed
[2026-06-12 01:58:18,802.802 INFO    ] Checking for camera pi updates...
[2026-06-12 01:58:18,823.823 INFO    ] 200
[2026-06-12 01:58:18,824.824 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:58:18,849.849 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 01:58:18,891.891 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 01:58:18,892.892 INFO    ] No camera update needed
[2026-06-12 01:58:18,894.894 INFO    ] Script finished. Safe exiting...
[2026-06-12 01:58:18,895.895 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 01:58:18,898.898 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 01:58:18,900.900 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 01:58:20,939.939 INFO    ] ================================================
[2026-06-12 01:58:20,954.954 INFO    ] Launching Daemon at Fri Jun 12 01:58:20 IST 2026
[2026-06-12 01:58:20,964.964 INFO    ] ================================================
[2026-06-12 01:58:21,338.338 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 01:58:21
[2026-06-12 01:58:21,654.654 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 01:58:21,798.798 INFO    ] Initializing speech engine...
[2026-06-12 01:58:21,804.804 INFO    ] 2026-06-12 01:58:21
[2026-06-12 01:58:22,007.007 INFO    ] 2026-06-12 01:58:21
[2026-06-12 01:58:22,035.035 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 01:58:22,220.220 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 01:58:22,223.223 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 01:58:22,358.358 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 01:58:22,417.417 INFO    ] time= 12/06/2026 01:58:22
[2026-06-12 01:58:22,450.450 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 01:58:22,456.456 INFO    ] Checking for existing commands in stream...
[2026-06-12 01:58:22,522.522 INFO    ] No existing commands found in stream
[2026-06-12 01:58:27,533.533 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 01:58:27,536.536 INFO    ] Waiting 3.68 seconds before fallback handling...
[2026-06-12 01:58:31,622.622 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 01:58:31,624.624 INFO    ] Checking for system updates...
[2026-06-12 01:58:31,649.649 INFO    ] 200
[2026-06-12 01:58:31,651.651 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:58:31,689.689 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 01:58:31,691.691 INFO    ] No update needed
[2026-06-12 01:58:31,693.693 INFO    ] Checking for camera pi updates...
[2026-06-12 01:58:31,715.715 INFO    ] 200
[2026-06-12 01:58:31,716.716 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:58:31,743.743 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 01:58:31,790.790 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 01:58:31,792.792 INFO    ] No camera update needed
[2026-06-12 01:58:31,794.794 INFO    ] Script finished. Safe exiting...
[2026-06-12 01:58:31,795.795 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 01:58:31,799.799 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 01:58:31,802.802 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 01:58:33,842.842 INFO    ] ================================================
[2026-06-12 01:58:33,857.857 INFO    ] Launching Daemon at Fri Jun 12 01:58:33 IST 2026
[2026-06-12 01:58:33,868.868 INFO    ] ================================================
[2026-06-12 01:58:34,220.220 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 01:58:34
[2026-06-12 01:58:34,559.559 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 01:58:34,712.712 INFO    ] Initializing speech engine...
[2026-06-12 01:58:34,717.717 INFO    ] 2026-06-12 01:58:34
[2026-06-12 01:58:34,915.915 INFO    ] 2026-06-12 01:58:34
[2026-06-12 01:58:34,943.943 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 01:58:35,129.129 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 01:58:35,133.133 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 01:58:35,262.262 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 01:58:35,313.313 INFO    ] time= 12/06/2026 01:58:35
[2026-06-12 01:58:35,354.354 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 01:58:35,364.364 INFO    ] Checking for existing commands in stream...
[2026-06-12 01:58:35,436.436 INFO    ] No existing commands found in stream
[2026-06-12 01:58:40,445.445 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 01:58:40,448.448 INFO    ] Waiting 1.29 seconds before fallback handling...
[2026-06-12 01:58:42,122.122 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 01:58:42,123.123 INFO    ] Checking for system updates...
[2026-06-12 01:58:42,144.144 INFO    ] 200
[2026-06-12 01:58:42,145.145 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:58:42,179.179 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 01:58:42,180.180 INFO    ] No update needed
[2026-06-12 01:58:42,181.181 INFO    ] Checking for camera pi updates...
[2026-06-12 01:58:42,201.201 INFO    ] 200
[2026-06-12 01:58:42,202.202 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:58:42,228.228 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 01:58:42,265.265 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 01:58:42,267.267 INFO    ] No camera update needed
[2026-06-12 01:58:42,268.268 INFO    ] Script finished. Safe exiting...
[2026-06-12 01:58:42,269.269 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 01:58:42,272.272 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 01:58:42,275.275 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 01:58:44,316.316 INFO    ] ================================================
[2026-06-12 01:58:44,331.331 INFO    ] Launching Daemon at Fri Jun 12 01:58:44 IST 2026
[2026-06-12 01:58:44,342.342 INFO    ] ================================================
[2026-06-12 01:58:44,731.731 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 01:58:44
[2026-06-12 01:58:45,102.102 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 01:58:45,253.253 INFO    ] Initializing speech engine...
[2026-06-12 01:58:45,258.258 INFO    ] 2026-06-12 01:58:45
[2026-06-12 01:58:45,469.469 INFO    ] 2026-06-12 01:58:45
[2026-06-12 01:58:45,498.498 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 01:58:45,686.686 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 01:58:45,696.696 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 01:58:45,842.842 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 01:58:45,903.903 INFO    ] time= 12/06/2026 01:58:45
[2026-06-12 01:58:45,920.920 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 01:58:45,926.926 INFO    ] Checking for existing commands in stream...
[2026-06-12 01:58:46,018.018 INFO    ] No existing commands found in stream
[2026-06-12 01:58:51,028.028 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 01:58:51,031.031 INFO    ] Waiting 2.02 seconds before fallback handling...
[2026-06-12 01:58:53,444.444 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 01:58:53,445.445 INFO    ] Checking for system updates...
[2026-06-12 01:58:53,467.467 INFO    ] 200
[2026-06-12 01:58:53,469.469 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:58:53,500.500 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 01:58:53,501.501 INFO    ] No update needed
[2026-06-12 01:58:53,503.503 INFO    ] Checking for camera pi updates...
[2026-06-12 01:58:53,524.524 INFO    ] 200
[2026-06-12 01:58:53,525.525 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:58:53,552.552 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 01:58:53,701.701 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 01:58:53,703.703 INFO    ] No camera update needed
[2026-06-12 01:58:53,704.704 INFO    ] Script finished. Safe exiting...
[2026-06-12 01:58:53,706.706 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 01:58:53,709.709 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 01:58:53,712.712 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 01:58:55,752.752 INFO    ] ================================================
[2026-06-12 01:58:55,767.767 INFO    ] Launching Daemon at Fri Jun 12 01:58:55 IST 2026
[2026-06-12 01:58:55,778.778 INFO    ] ================================================
[2026-06-12 01:58:56,147.147 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 01:58:56
[2026-06-12 01:58:56,484.484 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 01:58:56,636.636 INFO    ] Initializing speech engine...
[2026-06-12 01:58:56,642.642 INFO    ] 2026-06-12 01:58:56
[2026-06-12 01:58:56,851.851 INFO    ] 2026-06-12 01:58:56
[2026-06-12 01:58:56,882.882 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 01:58:57,016.016 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 01:58:57,069.069 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 01:58:57,214.214 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 01:58:57,276.276 INFO    ] time= 12/06/2026 01:58:57
[2026-06-12 01:58:57,300.300 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 01:58:57,307.307 INFO    ] Checking for existing commands in stream...
[2026-06-12 01:58:57,397.397 INFO    ] No existing commands found in stream
[2026-06-12 01:59:02,410.410 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 01:59:02,412.412 INFO    ] Waiting 3.59 seconds before fallback handling...
[2026-06-12 01:59:08,260.260 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 01:59:08,263.263 INFO    ] Checking for system updates...
[2026-06-12 01:59:08,300.300 INFO    ] 200
[2026-06-12 01:59:08,303.303 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:59:08,356.356 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 01:59:08,359.359 INFO    ] No update needed
[2026-06-12 01:59:08,362.362 INFO    ] Checking for camera pi updates...
[2026-06-12 01:59:08,385.385 INFO    ] 200
[2026-06-12 01:59:08,386.386 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:59:08,411.411 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 01:59:08,456.456 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 01:59:08,458.458 INFO    ] No camera update needed
[2026-06-12 01:59:08,459.459 INFO    ] Script finished. Safe exiting...
[2026-06-12 01:59:08,461.461 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 01:59:08,464.464 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 01:59:08,467.467 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 01:59:10,506.506 INFO    ] ================================================
[2026-06-12 01:59:10,521.521 INFO    ] Launching Daemon at Fri Jun 12 01:59:10 IST 2026
[2026-06-12 01:59:10,532.532 INFO    ] ================================================
[2026-06-12 01:59:10,919.919 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 01:59:10
[2026-06-12 01:59:11,258.258 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 01:59:11,410.410 INFO    ] Initializing speech engine...
[2026-06-12 01:59:11,416.416 INFO    ] 2026-06-12 01:59:11
[2026-06-12 01:59:11,627.627 INFO    ] 2026-06-12 01:59:11
[2026-06-12 01:59:11,657.657 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 01:59:11,844.844 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 01:59:11,848.848 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 01:59:11,985.985 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 01:59:12,054.054 INFO    ] time= 12/06/2026 01:59:11
[2026-06-12 01:59:12,078.078 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 01:59:12,085.085 INFO    ] Checking for existing commands in stream...
[2026-06-12 01:59:12,153.153 INFO    ] No existing commands found in stream
[2026-06-12 01:59:17,167.167 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 01:59:17,171.171 INFO    ] Waiting 2.50 seconds before fallback handling...
[2026-06-12 01:59:20,040.040 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 01:59:20,042.042 INFO    ] Checking for system updates...
[2026-06-12 01:59:20,064.064 INFO    ] 200
[2026-06-12 01:59:20,065.065 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:59:20,099.099 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 01:59:20,100.100 INFO    ] No update needed
[2026-06-12 01:59:20,102.102 INFO    ] Checking for camera pi updates...
[2026-06-12 01:59:20,122.122 INFO    ] 200
[2026-06-12 01:59:20,123.123 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:59:20,147.147 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 01:59:20,199.199 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 01:59:20,200.200 INFO    ] No camera update needed
[2026-06-12 01:59:20,202.202 INFO    ] Script finished. Safe exiting...
[2026-06-12 01:59:20,203.203 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 01:59:20,206.206 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 01:59:20,209.209 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 01:59:22,249.249 INFO    ] ================================================
[2026-06-12 01:59:22,265.265 INFO    ] Launching Daemon at Fri Jun 12 01:59:22 IST 2026
[2026-06-12 01:59:22,276.276 INFO    ] ================================================
[2026-06-12 01:59:22,671.671 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 01:59:22
[2026-06-12 01:59:23,010.010 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 01:59:23,163.163 INFO    ] Initializing speech engine...
[2026-06-12 01:59:23,168.168 INFO    ] 2026-06-12 01:59:23
[2026-06-12 01:59:23,378.378 INFO    ] 2026-06-12 01:59:23
[2026-06-12 01:59:23,407.407 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 01:59:23,548.548 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 01:59:23,596.596 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 01:59:23,736.736 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 01:59:23,800.800 INFO    ] time= 12/06/2026 01:59:23
[2026-06-12 01:59:23,829.829 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 01:59:23,836.836 INFO    ] Checking for existing commands in stream...
[2026-06-12 01:59:23,903.903 INFO    ] No existing commands found in stream
[2026-06-12 01:59:28,928.928 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 01:59:28,932.932 INFO    ] Waiting 2.23 seconds before fallback handling...
[2026-06-12 01:59:31,535.535 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 01:59:31,537.537 INFO    ] Checking for system updates...
[2026-06-12 01:59:31,563.563 INFO    ] 200
[2026-06-12 01:59:31,565.565 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:59:31,602.602 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 01:59:31,603.603 INFO    ] No update needed
[2026-06-12 01:59:31,605.605 INFO    ] Checking for camera pi updates...
[2026-06-12 01:59:31,628.628 INFO    ] 200
[2026-06-12 01:59:31,630.630 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:59:31,657.657 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 01:59:31,696.696 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 01:59:31,698.698 INFO    ] No camera update needed
[2026-06-12 01:59:31,699.699 INFO    ] Script finished. Safe exiting...
[2026-06-12 01:59:31,701.701 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 01:59:31,705.705 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 01:59:31,708.708 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 01:59:33,747.747 INFO    ] ================================================
[2026-06-12 01:59:33,762.762 INFO    ] Launching Daemon at Fri Jun 12 01:59:33 IST 2026
[2026-06-12 01:59:33,773.773 INFO    ] ================================================
[2026-06-12 01:59:34,099.099 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 01:59:34
[2026-06-12 01:59:34,410.410 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 01:59:34,544.544 INFO    ] Initializing speech engine...
[2026-06-12 01:59:34,547.547 INFO    ] 2026-06-12 01:59:34
[2026-06-12 01:59:34,776.776 INFO    ] 2026-06-12 01:59:34
[2026-06-12 01:59:34,807.807 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 01:59:35,006.006 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 01:59:35,009.009 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 01:59:35,139.139 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 01:59:35,147.147 INFO    ] time= 12/06/2026 01:59:35
[2026-06-12 01:59:35,187.187 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 01:59:35,237.237 INFO    ] Checking for existing commands in stream...
[2026-06-12 01:59:35,318.318 INFO    ] No existing commands found in stream
[2026-06-12 01:59:40,327.327 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 01:59:40,330.330 INFO    ] Waiting 1.59 seconds before fallback handling...
[2026-06-12 01:59:42,301.301 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 01:59:42,302.302 INFO    ] Checking for system updates...
[2026-06-12 01:59:42,323.323 INFO    ] 200
[2026-06-12 01:59:42,325.325 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:59:42,354.354 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 01:59:42,356.356 INFO    ] No update needed
[2026-06-12 01:59:42,357.357 INFO    ] Checking for camera pi updates...
[2026-06-12 01:59:42,378.378 INFO    ] 200
[2026-06-12 01:59:42,380.380 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:59:42,403.403 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 01:59:42,447.447 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 01:59:42,448.448 INFO    ] No camera update needed
[2026-06-12 01:59:42,450.450 INFO    ] Script finished. Safe exiting...
[2026-06-12 01:59:42,451.451 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 01:59:42,454.454 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 01:59:42,457.457 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 01:59:44,494.494 INFO    ] ================================================
[2026-06-12 01:59:44,509.509 INFO    ] Launching Daemon at Fri Jun 12 01:59:44 IST 2026
[2026-06-12 01:59:44,520.520 INFO    ] ================================================
[2026-06-12 01:59:44,867.867 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 01:59:44
[2026-06-12 01:59:45,204.204 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 01:59:45,350.350 INFO    ] Initializing speech engine...
[2026-06-12 01:59:45,361.361 INFO    ] 2026-06-12 01:59:45
[2026-06-12 01:59:45,570.570 INFO    ] 2026-06-12 01:59:45
[2026-06-12 01:59:45,600.600 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 01:59:45,788.788 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 01:59:45,797.797 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 01:59:45,938.938 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 01:59:45,998.998 INFO    ] time= 12/06/2026 01:59:45
[2026-06-12 01:59:46,020.020 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 01:59:46,027.027 INFO    ] Checking for existing commands in stream...
[2026-06-12 01:59:46,094.094 INFO    ] No existing commands found in stream
[2026-06-12 01:59:51,104.104 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 01:59:51,107.107 INFO    ] Waiting 3.94 seconds before fallback handling...
[2026-06-12 01:59:55,444.444 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 01:59:55,445.445 INFO    ] Checking for system updates...
[2026-06-12 01:59:55,466.466 INFO    ] 200
[2026-06-12 01:59:55,467.467 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:59:55,503.503 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 01:59:55,504.504 INFO    ] No update needed
[2026-06-12 01:59:55,505.505 INFO    ] Checking for camera pi updates...
[2026-06-12 01:59:55,524.524 INFO    ] 200
[2026-06-12 01:59:55,526.526 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 01:59:55,550.550 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 01:59:55,610.610 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 01:59:55,612.612 INFO    ] No camera update needed
[2026-06-12 01:59:55,613.613 INFO    ] Script finished. Safe exiting...
[2026-06-12 01:59:55,614.614 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 01:59:55,617.617 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 01:59:55,620.620 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 01:59:57,658.658 INFO    ] ================================================
[2026-06-12 01:59:57,674.674 INFO    ] Launching Daemon at Fri Jun 12 01:59:57 IST 2026
[2026-06-12 01:59:57,685.685 INFO    ] ================================================
[2026-06-12 01:59:58,016.016 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 01:59:58
[2026-06-12 01:59:58,326.326 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 01:59:58,469.469 INFO    ] Initializing speech engine...
[2026-06-12 01:59:58,475.475 INFO    ] 2026-06-12 01:59:58
[2026-06-12 01:59:58,677.677 INFO    ] 2026-06-12 01:59:58
[2026-06-12 01:59:58,705.705 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 01:59:58,887.887 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 01:59:58,897.897 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 01:59:59,047.047 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 01:59:59,095.095 INFO    ] time= 12/06/2026 01:59:59
[2026-06-12 01:59:59,116.116 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 01:59:59,122.122 INFO    ] Checking for existing commands in stream...
[2026-06-12 01:59:59,189.189 INFO    ] No existing commands found in stream
[2026-06-12 02:00:04,198.198 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 02:00:04,201.201 INFO    ] Waiting 2.98 seconds before fallback handling...
[2026-06-12 02:00:09,891.891 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 02:00:09,894.894 INFO    ] Checking for system updates...
[2026-06-12 02:00:09,935.935 INFO    ] 200
[2026-06-12 02:00:09,937.937 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:00:10,001.001 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 02:00:10,003.003 INFO    ] No update needed
[2026-06-12 02:00:10,004.004 INFO    ] Checking for camera pi updates...
[2026-06-12 02:00:10,024.024 INFO    ] 200
[2026-06-12 02:00:10,026.026 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:00:10,049.049 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 02:00:10,103.103 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 02:00:10,104.104 INFO    ] No camera update needed
[2026-06-12 02:00:10,105.105 INFO    ] Script finished. Safe exiting...
[2026-06-12 02:00:10,106.106 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 02:00:10,109.109 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 02:00:10,112.112 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 02:00:12,150.150 INFO    ] ================================================
[2026-06-12 02:00:12,166.166 INFO    ] Launching Daemon at Fri Jun 12 02:00:12 IST 2026
[2026-06-12 02:00:12,177.177 INFO    ] ================================================
[2026-06-12 02:00:12,533.533 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 02:00:12
[2026-06-12 02:00:12,849.849 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 02:00:12,993.993 INFO    ] Initializing speech engine...
[2026-06-12 02:00:12,998.998 INFO    ] 2026-06-12 02:00:12
[2026-06-12 02:00:13,202.202 INFO    ] 2026-06-12 02:00:13
[2026-06-12 02:00:13,230.230 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 02:00:13,413.413 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 02:00:13,416.416 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 02:00:13,552.552 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 02:00:13,619.619 INFO    ] time= 12/06/2026 02:00:13
[2026-06-12 02:00:13,643.643 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 02:00:13,649.649 INFO    ] Checking for existing commands in stream...
[2026-06-12 02:00:13,716.716 INFO    ] No existing commands found in stream
[2026-06-12 02:00:18,725.725 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 02:00:18,728.728 INFO    ] Waiting 3.50 seconds before fallback handling...
[2026-06-12 02:00:22,590.590 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 02:00:22,592.592 INFO    ] Checking for system updates...
[2026-06-12 02:00:22,613.613 INFO    ] 200
[2026-06-12 02:00:22,614.614 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:00:22,647.647 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 02:00:22,648.648 INFO    ] No update needed
[2026-06-12 02:00:22,649.649 INFO    ] Checking for camera pi updates...
[2026-06-12 02:00:22,669.669 INFO    ] 200
[2026-06-12 02:00:22,671.671 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:00:22,696.696 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 02:00:22,742.742 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 02:00:22,743.743 INFO    ] No camera update needed
[2026-06-12 02:00:22,745.745 INFO    ] Script finished. Safe exiting...
[2026-06-12 02:00:22,746.746 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 02:00:22,749.749 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 02:00:22,752.752 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 02:00:24,792.792 INFO    ] ================================================
[2026-06-12 02:00:24,810.810 INFO    ] Launching Daemon at Fri Jun 12 02:00:24 IST 2026
[2026-06-12 02:00:24,821.821 INFO    ] ================================================
[2026-06-12 02:00:25,160.160 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 02:00:25
[2026-06-12 02:00:25,499.499 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 02:00:25,649.649 INFO    ] Initializing speech engine...
[2026-06-12 02:00:25,659.659 INFO    ] 2026-06-12 02:00:25
[2026-06-12 02:00:25,869.869 INFO    ] 2026-06-12 02:00:25
[2026-06-12 02:00:25,897.897 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 02:00:26,083.083 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 02:00:26,093.093 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 02:00:26,236.236 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 02:00:26,291.291 INFO    ] time= 12/06/2026 02:00:26
[2026-06-12 02:00:26,312.312 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 02:00:26,318.318 INFO    ] Checking for existing commands in stream...
[2026-06-12 02:00:26,385.385 INFO    ] No existing commands found in stream
[2026-06-12 02:00:31,400.400 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 02:00:31,403.403 INFO    ] Waiting 0.85 seconds before fallback handling...
[2026-06-12 02:00:32,580.580 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 02:00:32,583.583 INFO    ] Checking for system updates...
[2026-06-12 02:00:32,608.608 INFO    ] 200
[2026-06-12 02:00:32,611.611 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:00:32,643.643 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 02:00:32,645.645 INFO    ] No update needed
[2026-06-12 02:00:32,646.646 INFO    ] Checking for camera pi updates...
[2026-06-12 02:00:32,670.670 INFO    ] 200
[2026-06-12 02:00:32,672.672 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:00:32,700.700 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 02:00:32,731.731 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 02:00:32,733.733 INFO    ] No camera update needed
[2026-06-12 02:00:32,734.734 INFO    ] Script finished. Safe exiting...
[2026-06-12 02:00:32,735.735 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 02:00:32,738.738 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 02:00:32,741.741 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 02:00:34,780.780 INFO    ] ================================================
[2026-06-12 02:00:34,795.795 INFO    ] Launching Daemon at Fri Jun 12 02:00:34 IST 2026
[2026-06-12 02:00:34,806.806 INFO    ] ================================================
[2026-06-12 02:00:35,162.162 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 02:00:35
[2026-06-12 02:00:35,481.481 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 02:00:35,613.613 INFO    ] Initializing speech engine...
[2026-06-12 02:00:35,617.617 INFO    ] 2026-06-12 02:00:35
[2026-06-12 02:00:35,836.836 INFO    ] 2026-06-12 02:00:35
[2026-06-12 02:00:35,866.866 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 02:00:36,050.050 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 02:00:36,054.054 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 02:00:36,191.191 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 02:00:36,258.258 INFO    ] time= 12/06/2026 02:00:36
[2026-06-12 02:00:36,282.282 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 02:00:36,289.289 INFO    ] Checking for existing commands in stream...
[2026-06-12 02:00:36,356.356 INFO    ] No existing commands found in stream
[2026-06-12 02:00:41,370.370 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 02:00:41,373.373 INFO    ] Waiting 3.91 seconds before fallback handling...
[2026-06-12 02:00:45,677.677 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 02:00:45,679.679 INFO    ] Checking for system updates...
[2026-06-12 02:00:45,701.701 INFO    ] 200
[2026-06-12 02:00:45,702.702 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:00:45,735.735 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 02:00:45,736.736 INFO    ] No update needed
[2026-06-12 02:00:45,737.737 INFO    ] Checking for camera pi updates...
[2026-06-12 02:00:45,757.757 INFO    ] 200
[2026-06-12 02:00:45,758.758 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:00:45,783.783 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 02:00:45,830.830 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 02:00:45,831.831 INFO    ] No camera update needed
[2026-06-12 02:00:45,833.833 INFO    ] Script finished. Safe exiting...
[2026-06-12 02:00:45,834.834 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 02:00:45,837.837 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 02:00:45,840.840 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 02:00:47,879.879 INFO    ] ================================================
[2026-06-12 02:00:47,894.894 INFO    ] Launching Daemon at Fri Jun 12 02:00:47 IST 2026
[2026-06-12 02:00:47,905.905 INFO    ] ================================================
[2026-06-12 02:00:48,273.273 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 02:00:48
[2026-06-12 02:00:48,609.609 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 02:00:48,748.748 INFO    ] Initializing speech engine...
[2026-06-12 02:00:48,761.761 INFO    ] 2026-06-12 02:00:48
[2026-06-12 02:00:48,974.974 INFO    ] 2026-06-12 02:00:48
[2026-06-12 02:00:49,002.002 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 02:00:49,187.187 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 02:00:49,197.197 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 02:00:49,359.359 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 02:00:49,410.410 INFO    ] time= 12/06/2026 02:00:49
[2026-06-12 02:00:49,420.420 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 02:00:49,427.427 INFO    ] Checking for existing commands in stream...
[2026-06-12 02:00:49,493.493 INFO    ] No existing commands found in stream
[2026-06-12 02:00:54,508.508 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 02:00:54,511.511 INFO    ] Waiting 2.75 seconds before fallback handling...
[2026-06-12 02:00:57,639.639 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 02:00:57,641.641 INFO    ] Checking for system updates...
[2026-06-12 02:00:57,663.663 INFO    ] 200
[2026-06-12 02:00:57,665.665 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:00:57,695.695 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 02:00:57,697.697 INFO    ] No update needed
[2026-06-12 02:00:57,698.698 INFO    ] Checking for camera pi updates...
[2026-06-12 02:00:57,719.719 INFO    ] 200
[2026-06-12 02:00:57,720.720 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:00:57,746.746 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 02:00:57,889.889 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 02:00:57,891.891 INFO    ] No camera update needed
[2026-06-12 02:00:57,892.892 INFO    ] Script finished. Safe exiting...
[2026-06-12 02:00:57,894.894 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 02:00:57,897.897 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 02:00:57,900.900 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 02:00:59,939.939 INFO    ] ================================================
[2026-06-12 02:00:59,954.954 INFO    ] Launching Daemon at Fri Jun 12 02:00:59 IST 2026
[2026-06-12 02:00:59,966.966 INFO    ] ================================================
[2026-06-12 02:01:00,319.319 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 02:01:00
[2026-06-12 02:01:00,635.635 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 02:01:00,771.771 INFO    ] Initializing speech engine...
[2026-06-12 02:01:00,774.774 INFO    ] 2026-06-12 02:01:00
[2026-06-12 02:01:01,002.002 INFO    ] 2026-06-12 02:01:00
[2026-06-12 02:01:01,032.032 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 02:01:01,228.228 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 02:01:01,232.232 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 02:01:01,370.370 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 02:01:01,435.435 INFO    ] time= 12/06/2026 02:01:01
[2026-06-12 02:01:01,461.461 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 02:01:01,472.472 INFO    ] Checking for existing commands in stream...
[2026-06-12 02:01:01,537.537 INFO    ] No existing commands found in stream
[2026-06-12 02:01:06,548.548 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 02:01:06,551.551 INFO    ] Waiting 0.19 seconds before fallback handling...
[2026-06-12 02:01:07,130.130 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 02:01:07,132.132 INFO    ] Checking for system updates...
[2026-06-12 02:01:07,152.152 INFO    ] 200
[2026-06-12 02:01:07,154.154 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:01:07,185.185 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 02:01:07,186.186 INFO    ] No update needed
[2026-06-12 02:01:07,187.187 INFO    ] Checking for camera pi updates...
[2026-06-12 02:01:07,207.207 INFO    ] 200
[2026-06-12 02:01:07,209.209 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:01:07,234.234 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 02:01:07,275.275 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 02:01:07,277.277 INFO    ] No camera update needed
[2026-06-12 02:01:07,278.278 INFO    ] Script finished. Safe exiting...
[2026-06-12 02:01:07,279.279 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 02:01:07,283.283 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 02:01:07,286.286 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 02:01:09,326.326 INFO    ] ================================================
[2026-06-12 02:01:09,343.343 INFO    ] Launching Daemon at Fri Jun 12 02:01:09 IST 2026
[2026-06-12 02:01:09,354.354 INFO    ] ================================================
[2026-06-12 02:01:09,707.707 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 02:01:09
[2026-06-12 02:01:10,024.024 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 02:01:10,169.169 INFO    ] Initializing speech engine...
[2026-06-12 02:01:10,177.177 INFO    ] 2026-06-12 02:01:10
[2026-06-12 02:01:10,392.392 INFO    ] 2026-06-12 02:01:10
[2026-06-12 02:01:10,420.420 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 02:01:10,603.603 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 02:01:10,612.612 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 02:01:10,741.741 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 02:01:10,805.805 INFO    ] time= 12/06/2026 02:01:10
[2026-06-12 02:01:10,832.832 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 02:01:10,838.838 INFO    ] Checking for existing commands in stream...
[2026-06-12 02:01:10,929.929 INFO    ] No existing commands found in stream
[2026-06-12 02:01:15,938.938 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 02:01:15,942.942 INFO    ] Waiting 0.45 seconds before fallback handling...
[2026-06-12 02:01:16,778.778 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 02:01:16,779.779 INFO    ] Checking for system updates...
[2026-06-12 02:01:16,801.801 INFO    ] 200
[2026-06-12 02:01:16,802.802 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:01:16,833.833 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 02:01:16,834.834 INFO    ] No update needed
[2026-06-12 02:01:16,835.835 INFO    ] Checking for camera pi updates...
[2026-06-12 02:01:16,856.856 INFO    ] 200
[2026-06-12 02:01:16,857.857 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:01:16,881.881 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 02:01:16,929.929 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 02:01:16,930.930 INFO    ] No camera update needed
[2026-06-12 02:01:16,932.932 INFO    ] Script finished. Safe exiting...
[2026-06-12 02:01:16,933.933 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 02:01:16,936.936 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 02:01:16,938.938 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 02:01:18,977.977 INFO    ] ================================================
[2026-06-12 02:01:18,994.994 INFO    ] Launching Daemon at Fri Jun 12 02:01:18 IST 2026
[2026-06-12 02:01:19,005.005 INFO    ] ================================================
[2026-06-12 02:01:19,331.331 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 02:01:19
[2026-06-12 02:01:19,641.641 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 02:01:19,772.772 INFO    ] Initializing speech engine...
[2026-06-12 02:01:19,785.785 INFO    ] 2026-06-12 02:01:19
[2026-06-12 02:01:19,991.991 INFO    ] 2026-06-12 02:01:19
[2026-06-12 02:01:20,019.019 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 02:01:20,203.203 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 02:01:20,213.213 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 02:01:20,334.334 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 02:01:20,385.385 INFO    ] time= 12/06/2026 02:01:20
[2026-06-12 02:01:20,414.414 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 02:01:20,435.435 INFO    ] Checking for existing commands in stream...
[2026-06-12 02:01:20,506.506 INFO    ] No existing commands found in stream
[2026-06-12 02:01:25,515.515 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 02:01:25,518.518 INFO    ] Waiting 2.46 seconds before fallback handling...
[2026-06-12 02:01:28,367.367 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 02:01:28,369.369 INFO    ] Checking for system updates...
[2026-06-12 02:01:28,390.390 INFO    ] 200
[2026-06-12 02:01:28,391.391 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:01:28,425.425 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 02:01:28,426.426 INFO    ] No update needed
[2026-06-12 02:01:28,428.428 INFO    ] Checking for camera pi updates...
[2026-06-12 02:01:28,451.451 INFO    ] 200
[2026-06-12 02:01:28,452.452 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:01:28,477.477 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 02:01:28,530.530 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 02:01:28,532.532 INFO    ] No camera update needed
[2026-06-12 02:01:28,533.533 INFO    ] Script finished. Safe exiting...
[2026-06-12 02:01:28,535.535 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 02:01:28,538.538 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 02:01:28,541.541 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 02:01:30,582.582 INFO    ] ================================================
[2026-06-12 02:01:30,598.598 INFO    ] Launching Daemon at Fri Jun 12 02:01:30 IST 2026
[2026-06-12 02:01:30,610.610 INFO    ] ================================================
[2026-06-12 02:01:30,982.982 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 02:01:30
[2026-06-12 02:01:31,295.295 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 02:01:31,425.425 INFO    ] Initializing speech engine...
[2026-06-12 02:01:31,430.430 INFO    ] 2026-06-12 02:01:31
[2026-06-12 02:01:31,641.641 INFO    ] 2026-06-12 02:01:31
[2026-06-12 02:01:31,691.691 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 02:01:31,872.872 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 02:01:31,926.926 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 02:01:32,101.101 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 02:01:32,151.151 INFO    ] time= 12/06/2026 02:01:32
[2026-06-12 02:01:32,198.198 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 02:01:32,221.221 INFO    ] Checking for existing commands in stream...
[2026-06-12 02:01:32,334.334 INFO    ] No existing commands found in stream
[2026-06-12 02:01:37,343.343 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 02:01:37,345.345 INFO    ] Waiting 1.63 seconds before fallback handling...
[2026-06-12 02:01:39,363.363 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 02:01:39,364.364 INFO    ] Checking for system updates...
[2026-06-12 02:01:39,385.385 INFO    ] 200
[2026-06-12 02:01:39,386.386 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:01:39,419.419 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 02:01:39,421.421 INFO    ] No update needed
[2026-06-12 02:01:39,422.422 INFO    ] Checking for camera pi updates...
[2026-06-12 02:01:39,442.442 INFO    ] 200
[2026-06-12 02:01:39,443.443 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:01:39,466.466 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 02:01:39,510.510 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 02:01:39,512.512 INFO    ] No camera update needed
[2026-06-12 02:01:39,513.513 INFO    ] Script finished. Safe exiting...
[2026-06-12 02:01:39,514.514 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 02:01:39,517.517 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 02:01:39,520.520 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 02:01:41,561.561 INFO    ] ================================================
[2026-06-12 02:01:41,577.577 INFO    ] Launching Daemon at Fri Jun 12 02:01:41 IST 2026
[2026-06-12 02:01:41,588.588 INFO    ] ================================================
[2026-06-12 02:01:41,926.926 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 02:01:41
[2026-06-12 02:01:42,236.236 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 02:01:42,380.380 INFO    ] Initializing speech engine...
[2026-06-12 02:01:42,385.385 INFO    ] 2026-06-12 02:01:42
[2026-06-12 02:01:42,590.590 INFO    ] 2026-06-12 02:01:42
[2026-06-12 02:01:42,619.619 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 02:01:42,806.806 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 02:01:42,815.815 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 02:01:42,946.946 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 02:01:43,015.015 INFO    ] time= 12/06/2026 02:01:42
[2026-06-12 02:01:43,039.039 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 02:01:43,041.041 INFO    ] Checking for existing commands in stream...
[2026-06-12 02:01:43,138.138 INFO    ] No existing commands found in stream
[2026-06-12 02:01:48,147.147 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 02:01:48,150.150 INFO    ] Waiting 0.53 seconds before fallback handling...
[2026-06-12 02:01:49,004.004 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 02:01:49,007.007 INFO    ] Checking for system updates...
[2026-06-12 02:01:49,049.049 INFO    ] 200
[2026-06-12 02:01:49,051.051 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:01:49,111.111 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 02:01:49,114.114 INFO    ] No update needed
[2026-06-12 02:01:49,116.116 INFO    ] Checking for camera pi updates...
[2026-06-12 02:01:49,138.138 INFO    ] 200
[2026-06-12 02:01:49,140.140 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:01:49,165.165 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 02:01:49,219.219 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 02:01:49,221.221 INFO    ] No camera update needed
[2026-06-12 02:01:49,222.222 INFO    ] Script finished. Safe exiting...
[2026-06-12 02:01:49,223.223 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 02:01:49,226.226 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 02:01:49,229.229 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 02:01:51,269.269 INFO    ] ================================================
[2026-06-12 02:01:51,285.285 INFO    ] Launching Daemon at Fri Jun 12 02:01:51 IST 2026
[2026-06-12 02:01:51,297.297 INFO    ] ================================================
[2026-06-12 02:01:51,662.662 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 02:01:51
[2026-06-12 02:01:51,974.974 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 02:01:52,104.104 INFO    ] Initializing speech engine...
[2026-06-12 02:01:52,112.112 INFO    ] 2026-06-12 02:01:52
[2026-06-12 02:01:52,326.326 INFO    ] 2026-06-12 02:01:52
[2026-06-12 02:01:52,355.355 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 02:01:52,540.540 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 02:01:52,548.548 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 02:01:52,678.678 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 02:01:52,740.740 INFO    ] time= 12/06/2026 02:01:52
[2026-06-12 02:01:52,774.774 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 02:01:52,780.780 INFO    ] Checking for existing commands in stream...
[2026-06-12 02:01:52,846.846 INFO    ] No existing commands found in stream
[2026-06-12 02:01:57,856.856 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 02:01:57,859.859 INFO    ] Waiting 2.59 seconds before fallback handling...
[2026-06-12 02:02:00,815.815 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 02:02:00,817.817 INFO    ] Checking for system updates...
[2026-06-12 02:02:00,839.839 INFO    ] 200
[2026-06-12 02:02:00,840.840 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:02:00,871.871 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 02:02:00,872.872 INFO    ] No update needed
[2026-06-12 02:02:00,873.873 INFO    ] Checking for camera pi updates...
[2026-06-12 02:02:00,894.894 INFO    ] 200
[2026-06-12 02:02:00,895.895 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:02:00,919.919 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 02:02:00,963.963 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 02:02:00,965.965 INFO    ] No camera update needed
[2026-06-12 02:02:00,966.966 INFO    ] Script finished. Safe exiting...
[2026-06-12 02:02:00,967.967 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 02:02:00,970.970 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 02:02:00,973.973 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 02:02:03,003.003 INFO    ] ================================================
[2026-06-12 02:02:03,011.011 INFO    ] Launching Daemon at Fri Jun 12 02:02:03 IST 2026
[2026-06-12 02:02:03,017.017 INFO    ] ================================================
[2026-06-12 02:02:03,370.370 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 02:02:03
[2026-06-12 02:02:03,683.683 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 02:02:03,815.815 INFO    ] Initializing speech engine...
[2026-06-12 02:02:03,827.827 INFO    ] 2026-06-12 02:02:03
[2026-06-12 02:02:04,034.034 INFO    ] 2026-06-12 02:02:04
[2026-06-12 02:02:04,064.064 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 02:02:04,250.250 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 02:02:04,259.259 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 02:02:04,387.387 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 02:02:04,444.444 INFO    ] time= 12/06/2026 02:02:04
[2026-06-12 02:02:04,479.479 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 02:02:04,485.485 INFO    ] Checking for existing commands in stream...
[2026-06-12 02:02:04,580.580 INFO    ] No existing commands found in stream
[2026-06-12 02:02:09,586.586 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 02:02:09,589.589 INFO    ] Waiting 0.68 seconds before fallback handling...
[2026-06-12 02:02:10,643.643 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 02:02:10,644.644 INFO    ] Checking for system updates...
[2026-06-12 02:02:10,666.666 INFO    ] 200
[2026-06-12 02:02:10,667.667 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:02:10,697.697 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 02:02:10,698.698 INFO    ] No update needed
[2026-06-12 02:02:10,700.700 INFO    ] Checking for camera pi updates...
[2026-06-12 02:02:10,721.721 INFO    ] 200
[2026-06-12 02:02:10,722.722 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:02:10,747.747 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 02:02:10,788.788 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 02:02:10,790.790 INFO    ] No camera update needed
[2026-06-12 02:02:10,791.791 INFO    ] Script finished. Safe exiting...
[2026-06-12 02:02:10,792.792 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 02:02:10,795.795 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 02:02:10,798.798 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 02:02:12,836.836 INFO    ] ================================================
[2026-06-12 02:02:12,852.852 INFO    ] Launching Daemon at Fri Jun 12 02:02:12 IST 2026
[2026-06-12 02:02:12,863.863 INFO    ] ================================================
[2026-06-12 02:02:13,190.190 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 02:02:13
[2026-06-12 02:02:13,505.505 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 02:02:13,643.643 INFO    ] Initializing speech engine...
[2026-06-12 02:02:13,652.652 INFO    ] 2026-06-12 02:02:13
[2026-06-12 02:02:13,855.855 INFO    ] 2026-06-12 02:02:13
[2026-06-12 02:02:13,885.885 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 02:02:14,067.067 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 02:02:14,076.076 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 02:02:14,205.205 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 02:02:14,272.272 INFO    ] time= 12/06/2026 02:02:14
[2026-06-12 02:02:14,296.296 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 02:02:14,302.302 INFO    ] Checking for existing commands in stream...
[2026-06-12 02:02:14,367.367 INFO    ] No existing commands found in stream
[2026-06-12 02:02:19,378.378 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 02:02:19,381.381 INFO    ] Waiting 0.00 seconds before fallback handling...
[2026-06-12 02:02:19,774.774 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 02:02:19,775.775 INFO    ] Checking for system updates...
[2026-06-12 02:02:19,799.799 INFO    ] 200
[2026-06-12 02:02:19,800.800 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:02:19,836.836 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 02:02:19,837.837 INFO    ] No update needed
[2026-06-12 02:02:19,839.839 INFO    ] Checking for camera pi updates...
[2026-06-12 02:02:19,862.862 INFO    ] 200
[2026-06-12 02:02:19,863.863 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:02:19,890.890 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 02:02:19,935.935 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 02:02:19,936.936 INFO    ] No camera update needed
[2026-06-12 02:02:19,938.938 INFO    ] Script finished. Safe exiting...
[2026-06-12 02:02:19,939.939 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 02:02:19,942.942 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 02:02:19,945.945 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 02:02:21,988.988 INFO    ] ================================================
[2026-06-12 02:02:22,004.004 INFO    ] Launching Daemon at Fri Jun 12 02:02:21 IST 2026
[2026-06-12 02:02:22,016.016 INFO    ] ================================================
[2026-06-12 02:02:22,374.374 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 02:02:22
[2026-06-12 02:02:22,689.689 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 02:02:22,832.832 INFO    ] Initializing speech engine...
[2026-06-12 02:02:22,837.837 INFO    ] 2026-06-12 02:02:22
[2026-06-12 02:02:23,038.038 INFO    ] 2026-06-12 02:02:23
[2026-06-12 02:02:23,066.066 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 02:02:23,260.260 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 02:02:23,269.269 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 02:02:23,403.403 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 02:02:23,466.466 INFO    ] time= 12/06/2026 02:02:23
[2026-06-12 02:02:23,490.490 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 02:02:23,496.496 INFO    ] Checking for existing commands in stream...
[2026-06-12 02:02:23,563.563 INFO    ] No existing commands found in stream
[2026-06-12 02:02:28,577.577 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 02:02:28,580.580 INFO    ] Waiting 1.34 seconds before fallback handling...
[2026-06-12 02:02:30,290.290 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 02:02:30,292.292 INFO    ] Checking for system updates...
[2026-06-12 02:02:30,312.312 INFO    ] 200
[2026-06-12 02:02:30,314.314 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:02:30,349.349 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 02:02:30,350.350 INFO    ] No update needed
[2026-06-12 02:02:30,352.352 INFO    ] Checking for camera pi updates...
[2026-06-12 02:02:30,371.371 INFO    ] 200
[2026-06-12 02:02:30,373.373 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:02:30,400.400 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 02:02:30,453.453 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 02:02:30,455.455 INFO    ] No camera update needed
[2026-06-12 02:02:30,456.456 INFO    ] Script finished. Safe exiting...
[2026-06-12 02:02:30,457.457 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 02:02:30,460.460 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 02:02:30,463.463 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 02:02:32,499.499 INFO    ] ================================================
[2026-06-12 02:02:32,508.508 INFO    ] Launching Daemon at Fri Jun 12 02:02:32 IST 2026
[2026-06-12 02:02:32,515.515 INFO    ] ================================================
[2026-06-12 02:02:32,877.877 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 02:02:32
[2026-06-12 02:02:33,199.199 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 02:02:33,334.334 INFO    ] Initializing speech engine...
[2026-06-12 02:02:33,338.338 INFO    ] 2026-06-12 02:02:33
[2026-06-12 02:02:33,541.541 INFO    ] 2026-06-12 02:02:33
[2026-06-12 02:02:33,594.594 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 02:02:33,720.720 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 02:02:33,723.723 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 02:02:33,858.858 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 02:02:33,862.862 INFO    ] time= 12/06/2026 02:02:33
[2026-06-12 02:02:33,874.874 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 02:02:33,920.920 INFO    ] Checking for existing commands in stream...
[2026-06-12 02:02:34,042.042 INFO    ] No existing commands found in stream
[2026-06-12 02:02:39,063.063 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 02:02:39,066.066 INFO    ] Waiting 2.69 seconds before fallback handling...
[2026-06-12 02:02:42,176.176 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 02:02:42,177.177 INFO    ] Checking for system updates...
[2026-06-12 02:02:42,198.198 INFO    ] 200
[2026-06-12 02:02:42,199.199 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:02:42,230.230 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 02:02:42,231.231 INFO    ] No update needed
[2026-06-12 02:02:42,233.233 INFO    ] Checking for camera pi updates...
[2026-06-12 02:02:42,252.252 INFO    ] 200
[2026-06-12 02:02:42,254.254 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:02:42,278.278 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 02:02:42,332.332 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 02:02:42,333.333 INFO    ] No camera update needed
[2026-06-12 02:02:42,335.335 INFO    ] Script finished. Safe exiting...
[2026-06-12 02:02:42,336.336 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 02:02:42,339.339 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 02:02:42,342.342 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 02:02:44,381.381 INFO    ] ================================================
[2026-06-12 02:02:44,396.396 INFO    ] Launching Daemon at Fri Jun 12 02:02:44 IST 2026
[2026-06-12 02:02:44,407.407 INFO    ] ================================================
[2026-06-12 02:02:44,750.750 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 02:02:44
[2026-06-12 02:02:45,085.085 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 02:02:45,232.232 INFO    ] Initializing speech engine...
[2026-06-12 02:02:45,243.243 INFO    ] 2026-06-12 02:02:45
[2026-06-12 02:02:45,455.455 INFO    ] 2026-06-12 02:02:45
[2026-06-12 02:02:45,484.484 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 02:02:45,673.673 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 02:02:45,686.686 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 02:02:45,831.831 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 02:02:45,887.887 INFO    ] time= 12/06/2026 02:02:45
[2026-06-12 02:02:45,910.910 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 02:02:45,916.916 INFO    ] Checking for existing commands in stream...
[2026-06-12 02:02:45,984.984 INFO    ] No existing commands found in stream
[2026-06-12 02:02:51,004.004 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 02:02:51,007.007 INFO    ] Waiting 1.65 seconds before fallback handling...
[2026-06-12 02:02:53,024.024 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 02:02:53,025.025 INFO    ] Checking for system updates...
[2026-06-12 02:02:53,047.047 INFO    ] 200
[2026-06-12 02:02:53,049.049 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:02:53,082.082 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 02:02:53,084.084 INFO    ] No update needed
[2026-06-12 02:02:53,085.085 INFO    ] Checking for camera pi updates...
[2026-06-12 02:02:53,106.106 INFO    ] 200
[2026-06-12 02:02:53,107.107 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:02:53,133.133 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 02:02:53,181.181 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 02:02:53,183.183 INFO    ] No camera update needed
[2026-06-12 02:02:53,184.184 INFO    ] Script finished. Safe exiting...
[2026-06-12 02:02:53,185.185 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 02:02:53,189.189 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 02:02:53,192.192 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 02:02:55,232.232 INFO    ] ================================================
[2026-06-12 02:02:55,247.247 INFO    ] Launching Daemon at Fri Jun 12 02:02:55 IST 2026
[2026-06-12 02:02:55,258.258 INFO    ] ================================================
[2026-06-12 02:02:55,585.585 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 02:02:55
[2026-06-12 02:02:55,896.896 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 02:02:56,026.026 INFO    ] Initializing speech engine...
[2026-06-12 02:02:56,029.029 INFO    ] 2026-06-12 02:02:56
[2026-06-12 02:02:56,249.249 INFO    ] 2026-06-12 02:02:56
[2026-06-12 02:02:56,278.278 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 02:02:56,464.464 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 02:02:56,467.467 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 02:02:56,604.604 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 02:02:56,662.662 INFO    ] time= 12/06/2026 02:02:56
[2026-06-12 02:02:56,696.696 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 02:02:56,702.702 INFO    ] Checking for existing commands in stream...
[2026-06-12 02:02:56,770.770 INFO    ] No existing commands found in stream
[2026-06-12 02:03:01,779.779 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 02:03:01,782.782 INFO    ] Waiting 0.02 seconds before fallback handling...
[2026-06-12 02:03:02,206.206 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 02:03:02,209.209 INFO    ] Checking for system updates...
[2026-06-12 02:03:02,243.243 INFO    ] 200
[2026-06-12 02:03:02,245.245 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:03:02,285.285 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 02:03:02,287.287 INFO    ] No update needed
[2026-06-12 02:03:02,289.289 INFO    ] Checking for camera pi updates...
[2026-06-12 02:03:02,313.313 INFO    ] 200
[2026-06-12 02:03:02,315.315 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:03:02,347.347 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 02:03:02,379.379 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 02:03:02,381.381 INFO    ] No camera update needed
[2026-06-12 02:03:02,383.383 INFO    ] Script finished. Safe exiting...
[2026-06-12 02:03:02,386.386 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 02:03:02,391.391 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 02:03:02,397.397 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 02:03:04,438.438 INFO    ] ================================================
[2026-06-12 02:03:04,454.454 INFO    ] Launching Daemon at Fri Jun 12 02:03:04 IST 2026
[2026-06-12 02:03:04,466.466 INFO    ] ================================================
[2026-06-12 02:03:04,789.789 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 02:03:04
[2026-06-12 02:03:05,100.100 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 02:03:05,230.230 INFO    ] Initializing speech engine...
[2026-06-12 02:03:05,238.238 INFO    ] 2026-06-12 02:03:05
[2026-06-12 02:03:05,453.453 INFO    ] 2026-06-12 02:03:05
[2026-06-12 02:03:05,481.481 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 02:03:05,605.605 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 02:03:05,670.670 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 02:03:05,803.803 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 02:03:05,859.859 INFO    ] time= 12/06/2026 02:03:05
[2026-06-12 02:03:05,900.900 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 02:03:05,906.906 INFO    ] Checking for existing commands in stream...
[2026-06-12 02:03:05,979.979 INFO    ] No existing commands found in stream
[2026-06-12 02:03:10,988.988 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 02:03:10,991.991 INFO    ] Waiting 1.46 seconds before fallback handling...
[2026-06-12 02:03:12,809.809 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 02:03:12,812.812 INFO    ] Checking for system updates...
[2026-06-12 02:03:12,848.848 INFO    ] 200
[2026-06-12 02:03:12,850.850 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:03:12,903.903 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 02:03:12,906.906 INFO    ] No update needed
[2026-06-12 02:03:12,908.908 INFO    ] Checking for camera pi updates...
[2026-06-12 02:03:12,933.933 INFO    ] 200
[2026-06-12 02:03:12,934.934 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:03:12,957.957 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 02:03:12,999.999 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 02:03:13,000.000 INFO    ] No camera update needed
[2026-06-12 02:03:13,002.002 INFO    ] Script finished. Safe exiting...
[2026-06-12 02:03:13,003.003 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 02:03:13,006.006 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 02:03:13,008.008 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 02:03:15,047.047 INFO    ] ================================================
[2026-06-12 02:03:15,062.062 INFO    ] Launching Daemon at Fri Jun 12 02:03:15 IST 2026
[2026-06-12 02:03:15,073.073 INFO    ] ================================================
[2026-06-12 02:03:15,400.400 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 02:03:15
[2026-06-12 02:03:15,712.712 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 02:03:15,846.846 INFO    ] Initializing speech engine...
[2026-06-12 02:03:15,850.850 INFO    ] 2026-06-12 02:03:15
[2026-06-12 02:03:16,080.080 INFO    ] 2026-06-12 02:03:16
[2026-06-12 02:03:16,110.110 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 02:03:16,243.243 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 02:03:16,310.310 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 02:03:16,453.453 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 02:03:16,514.514 INFO    ] time= 12/06/2026 02:03:16
[2026-06-12 02:03:16,543.543 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 02:03:16,560.560 INFO    ] Checking for existing commands in stream...
[2026-06-12 02:03:16,664.664 INFO    ] No existing commands found in stream
[2026-06-12 02:03:21,673.673 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 02:03:21,676.676 INFO    ] Waiting 2.19 seconds before fallback handling...
[2026-06-12 02:03:24,243.243 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 02:03:24,244.244 INFO    ] Checking for system updates...
[2026-06-12 02:03:24,265.265 INFO    ] 200
[2026-06-12 02:03:24,266.266 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:03:24,299.299 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 02:03:24,301.301 INFO    ] No update needed
[2026-06-12 02:03:24,303.303 INFO    ] Checking for camera pi updates...
[2026-06-12 02:03:24,323.323 INFO    ] 200
[2026-06-12 02:03:24,324.324 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:03:24,349.349 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 02:03:24,392.392 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 02:03:24,393.393 INFO    ] No camera update needed
[2026-06-12 02:03:24,395.395 INFO    ] Script finished. Safe exiting...
[2026-06-12 02:03:24,396.396 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 02:03:24,399.399 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 02:03:24,402.402 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 02:03:26,445.445 INFO    ] ================================================
[2026-06-12 02:03:26,462.462 INFO    ] Launching Daemon at Fri Jun 12 02:03:26 IST 2026
[2026-06-12 02:03:26,473.473 INFO    ] ================================================
[2026-06-12 02:03:26,806.806 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 02:03:26
[2026-06-12 02:03:27,124.124 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 02:03:27,257.257 INFO    ] Initializing speech engine...
[2026-06-12 02:03:27,265.265 INFO    ] 2026-06-12 02:03:27
[2026-06-12 02:03:27,476.476 INFO    ] 2026-06-12 02:03:27
[2026-06-12 02:03:27,505.505 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 02:03:27,689.689 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 02:03:27,699.699 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 02:03:27,842.842 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 02:03:27,894.894 INFO    ] time= 12/06/2026 02:03:27
[2026-06-12 02:03:27,917.917 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 02:03:27,923.923 INFO    ] Checking for existing commands in stream...
[2026-06-12 02:03:27,990.990 INFO    ] No existing commands found in stream
[2026-06-12 02:03:33,004.004 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 02:03:33,007.007 INFO    ] Waiting 2.76 seconds before fallback handling...
[2026-06-12 02:03:36,113.113 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 02:03:36,114.114 INFO    ] Checking for system updates...
[2026-06-12 02:03:36,136.136 INFO    ] 200
[2026-06-12 02:03:36,137.137 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:03:36,170.170 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 02:03:36,172.172 INFO    ] No update needed
[2026-06-12 02:03:36,173.173 INFO    ] Checking for camera pi updates...
[2026-06-12 02:03:36,194.194 INFO    ] 200
[2026-06-12 02:03:36,195.195 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:03:36,219.219 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 02:03:36,263.263 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 02:03:36,264.264 INFO    ] No camera update needed
[2026-06-12 02:03:36,266.266 INFO    ] Script finished. Safe exiting...
[2026-06-12 02:03:36,267.267 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 02:03:36,270.270 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 02:03:36,273.273 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 02:03:38,314.314 INFO    ] ================================================
[2026-06-12 02:03:38,330.330 INFO    ] Launching Daemon at Fri Jun 12 02:03:38 IST 2026
[2026-06-12 02:03:38,341.341 INFO    ] ================================================
[2026-06-12 02:03:38,676.676 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 02:03:38
[2026-06-12 02:03:38,988.988 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 02:03:39,123.123 INFO    ] Initializing speech engine...
[2026-06-12 02:03:39,130.130 INFO    ] 2026-06-12 02:03:39
[2026-06-12 02:03:39,355.355 INFO    ] 2026-06-12 02:03:39
[2026-06-12 02:03:39,386.386 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 02:03:39,518.518 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 02:03:39,556.556 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 02:03:39,727.727 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 02:03:39,779.779 INFO    ] time= 12/06/2026 02:03:39
[2026-06-12 02:03:39,812.812 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 02:03:39,835.835 INFO    ] Checking for existing commands in stream...
[2026-06-12 02:03:39,939.939 INFO    ] No existing commands found in stream
[2026-06-12 02:03:44,948.948 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 02:03:44,951.951 INFO    ] Waiting 3.67 seconds before fallback handling...
[2026-06-12 02:03:49,041.041 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 02:03:49,042.042 INFO    ] Checking for system updates...
[2026-06-12 02:03:49,063.063 INFO    ] 200
[2026-06-12 02:03:49,065.065 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:03:49,095.095 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 02:03:49,097.097 INFO    ] No update needed
[2026-06-12 02:03:49,098.098 INFO    ] Checking for camera pi updates...
[2026-06-12 02:03:49,118.118 INFO    ] 200
[2026-06-12 02:03:49,120.120 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:03:49,146.146 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 02:03:49,191.191 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 02:03:49,192.192 INFO    ] No camera update needed
[2026-06-12 02:03:49,194.194 INFO    ] Script finished. Safe exiting...
[2026-06-12 02:03:49,195.195 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 02:03:49,198.198 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 02:03:49,201.201 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 02:03:51,240.240 INFO    ] ================================================
[2026-06-12 02:03:51,257.257 INFO    ] Launching Daemon at Fri Jun 12 02:03:51 IST 2026
[2026-06-12 02:03:51,268.268 INFO    ] ================================================
[2026-06-12 02:03:51,627.627 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 02:03:51
[2026-06-12 02:03:51,967.967 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 02:03:52,118.118 INFO    ] Initializing speech engine...
[2026-06-12 02:03:52,123.123 INFO    ] 2026-06-12 02:03:52
[2026-06-12 02:03:52,332.332 INFO    ] 2026-06-12 02:03:52
[2026-06-12 02:03:52,360.360 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 02:03:52,547.547 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 02:03:52,558.558 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 02:03:52,696.696 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 02:03:52,754.754 INFO    ] time= 12/06/2026 02:03:52
[2026-06-12 02:03:52,778.778 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 02:03:52,783.783 INFO    ] Checking for existing commands in stream...
[2026-06-12 02:03:52,851.851 INFO    ] No existing commands found in stream
[2026-06-12 02:03:57,866.866 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 02:03:57,869.869 INFO    ] Waiting 1.88 seconds before fallback handling...
[2026-06-12 02:04:00,111.111 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 02:04:00,113.113 INFO    ] Checking for system updates...
[2026-06-12 02:04:00,133.133 INFO    ] 200
[2026-06-12 02:04:00,135.135 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:04:00,167.167 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 02:04:00,168.168 INFO    ] No update needed
[2026-06-12 02:04:00,170.170 INFO    ] Checking for camera pi updates...
[2026-06-12 02:04:00,192.192 INFO    ] 200
[2026-06-12 02:04:00,193.193 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:04:00,216.216 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 02:04:00,271.271 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 02:04:00,272.272 INFO    ] No camera update needed
[2026-06-12 02:04:00,273.273 INFO    ] Script finished. Safe exiting...
[2026-06-12 02:04:00,275.275 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 02:04:00,278.278 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 02:04:00,280.280 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 02:04:02,312.312 INFO    ] ================================================
[2026-06-12 02:04:02,321.321 INFO    ] Launching Daemon at Fri Jun 12 02:04:02 IST 2026
[2026-06-12 02:04:02,327.327 INFO    ] ================================================
[2026-06-12 02:04:02,643.643 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 02:04:02
[2026-06-12 02:04:02,996.996 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 02:04:03,140.140 INFO    ] Initializing speech engine...
[2026-06-12 02:04:03,145.145 INFO    ] 2026-06-12 02:04:03
[2026-06-12 02:04:03,330.330 INFO    ] 2026-06-12 02:04:03
[2026-06-12 02:04:03,356.356 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 02:04:03,501.501 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 02:04:03,564.564 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 02:04:03,694.694 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 02:04:03,714.714 INFO    ] time= 12/06/2026 02:04:03
[2026-06-12 02:04:03,715.715 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 02:04:03,717.717 INFO    ] Checking for existing commands in stream...
[2026-06-12 02:04:03,775.775 INFO    ] No existing commands found in stream
[2026-06-12 02:04:08,784.784 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 02:04:08,787.787 INFO    ] Waiting 0.36 seconds before fallback handling...
[2026-06-12 02:04:09,534.534 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 02:04:09,535.535 INFO    ] Checking for system updates...
[2026-06-12 02:04:09,556.556 INFO    ] 200
[2026-06-12 02:04:09,558.558 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:04:09,588.588 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 02:04:09,590.590 INFO    ] No update needed
[2026-06-12 02:04:09,591.591 INFO    ] Checking for camera pi updates...
[2026-06-12 02:04:09,613.613 INFO    ] 200
[2026-06-12 02:04:09,614.614 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:04:09,642.642 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 02:04:09,691.691 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 02:04:09,693.693 INFO    ] No camera update needed
[2026-06-12 02:04:09,694.694 INFO    ] Script finished. Safe exiting...
[2026-06-12 02:04:09,695.695 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 02:04:09,698.698 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 02:04:09,701.701 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 02:04:11,742.742 INFO    ] ================================================
[2026-06-12 02:04:11,758.758 INFO    ] Launching Daemon at Fri Jun 12 02:04:11 IST 2026
[2026-06-12 02:04:11,769.769 INFO    ] ================================================
[2026-06-12 02:04:12,103.103 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 02:04:12
[2026-06-12 02:04:12,438.438 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 02:04:12,588.588 INFO    ] Initializing speech engine...
[2026-06-12 02:04:12,593.593 INFO    ] 2026-06-12 02:04:12
[2026-06-12 02:04:12,799.799 INFO    ] 2026-06-12 02:04:12
[2026-06-12 02:04:12,828.828 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 02:04:13,014.014 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 02:04:13,024.024 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 02:04:13,163.163 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 02:04:13,220.220 INFO    ] time= 12/06/2026 02:04:13
[2026-06-12 02:04:13,244.244 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 02:04:13,250.250 INFO    ] Checking for existing commands in stream...
[2026-06-12 02:04:13,317.317 INFO    ] No existing commands found in stream
[2026-06-12 02:04:18,326.326 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 02:04:18,329.329 INFO    ] Waiting 3.11 seconds before fallback handling...
[2026-06-12 02:04:21,803.803 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 02:04:21,805.805 INFO    ] Checking for system updates...
[2026-06-12 02:04:21,826.826 INFO    ] 200
[2026-06-12 02:04:21,827.827 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:04:21,859.859 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 02:04:21,861.861 INFO    ] No update needed
[2026-06-12 02:04:21,862.862 INFO    ] Checking for camera pi updates...
[2026-06-12 02:04:21,885.885 INFO    ] 200
[2026-06-12 02:04:21,886.886 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:04:21,910.910 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 02:04:21,968.968 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 02:04:21,970.970 INFO    ] No camera update needed
[2026-06-12 02:04:21,971.971 INFO    ] Script finished. Safe exiting...
[2026-06-12 02:04:21,972.972 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 02:04:21,975.975 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 02:04:21,978.978 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 02:04:24,016.016 INFO    ] ================================================
[2026-06-12 02:04:24,032.032 INFO    ] Launching Daemon at Fri Jun 12 02:04:24 IST 2026
[2026-06-12 02:04:24,043.043 INFO    ] ================================================
[2026-06-12 02:04:24,384.384 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 02:04:24
[2026-06-12 02:04:24,696.696 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 02:04:24,828.828 INFO    ] Initializing speech engine...
[2026-06-12 02:04:24,841.841 INFO    ] 2026-06-12 02:04:24
[2026-06-12 02:04:25,049.049 INFO    ] 2026-06-12 02:04:25
[2026-06-12 02:04:25,078.078 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 02:04:25,264.264 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 02:04:25,268.268 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 02:04:25,403.403 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 02:04:25,460.460 INFO    ] time= 12/06/2026 02:04:25
[2026-06-12 02:04:25,491.491 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 02:04:25,501.501 INFO    ] Checking for existing commands in stream...
[2026-06-12 02:04:25,574.574 INFO    ] No existing commands found in stream
[2026-06-12 02:04:30,582.582 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 02:04:30,585.585 INFO    ] Waiting 2.82 seconds before fallback handling...
[2026-06-12 02:04:33,811.811 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 02:04:33,812.812 INFO    ] Checking for system updates...
[2026-06-12 02:04:33,833.833 INFO    ] 200
[2026-06-12 02:04:33,834.834 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:04:33,865.865 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 02:04:33,867.867 INFO    ] No update needed
[2026-06-12 02:04:33,868.868 INFO    ] Checking for camera pi updates...
[2026-06-12 02:04:33,887.887 INFO    ] 200
[2026-06-12 02:04:33,889.889 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:04:33,913.913 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 02:04:33,959.959 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 02:04:33,961.961 INFO    ] No camera update needed
[2026-06-12 02:04:33,962.962 INFO    ] Script finished. Safe exiting...
[2026-06-12 02:04:33,964.964 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 02:04:33,966.966 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 02:04:33,969.969 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 02:04:36,007.007 INFO    ] ================================================
[2026-06-12 02:04:36,023.023 INFO    ] Launching Daemon at Fri Jun 12 02:04:36 IST 2026
[2026-06-12 02:04:36,034.034 INFO    ] ================================================
[2026-06-12 02:04:36,391.391 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 02:04:36
[2026-06-12 02:04:36,703.703 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 02:04:36,834.834 INFO    ] Initializing speech engine...
[2026-06-12 02:04:36,843.843 INFO    ] 2026-06-12 02:04:36
[2026-06-12 02:04:37,059.059 INFO    ] 2026-06-12 02:04:37
[2026-06-12 02:04:37,089.089 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 02:04:37,276.276 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 02:04:37,285.285 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 02:04:37,428.428 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 02:04:37,487.487 INFO    ] time= 12/06/2026 02:04:37
[2026-06-12 02:04:37,510.510 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 02:04:37,517.517 INFO    ] Checking for existing commands in stream...
[2026-06-12 02:04:37,609.609 INFO    ] No existing commands found in stream
[2026-06-12 02:04:42,623.623 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 02:04:42,625.625 INFO    ] Waiting 1.28 seconds before fallback handling...
[2026-06-12 02:04:44,369.369 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 02:04:44,371.371 INFO    ] Checking for system updates...
[2026-06-12 02:04:44,393.393 INFO    ] 200
[2026-06-12 02:04:44,395.395 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:04:44,427.427 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 02:04:44,429.429 INFO    ] No update needed
[2026-06-12 02:04:44,430.430 INFO    ] Checking for camera pi updates...
[2026-06-12 02:04:44,451.451 INFO    ] 200
[2026-06-12 02:04:44,452.452 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:04:44,475.475 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 02:04:44,519.519 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 02:04:44,520.520 INFO    ] No camera update needed
[2026-06-12 02:04:44,522.522 INFO    ] Script finished. Safe exiting...
[2026-06-12 02:04:44,523.523 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 02:04:44,526.526 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 02:04:44,529.529 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 02:04:46,567.567 INFO    ] ================================================
[2026-06-12 02:04:46,583.583 INFO    ] Launching Daemon at Fri Jun 12 02:04:46 IST 2026
[2026-06-12 02:04:46,594.594 INFO    ] ================================================
[2026-06-12 02:04:46,956.956 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 02:04:46
[2026-06-12 02:04:47,295.295 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 02:04:47,449.449 INFO    ] Initializing speech engine...
[2026-06-12 02:04:47,454.454 INFO    ] 2026-06-12 02:04:47
[2026-06-12 02:04:47,663.663 INFO    ] 2026-06-12 02:04:47
[2026-06-12 02:04:47,692.692 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 02:04:47,879.879 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 02:04:47,891.891 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 02:04:48,050.050 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 02:04:48,095.095 INFO    ] time= 12/06/2026 02:04:48
[2026-06-12 02:04:48,112.112 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 02:04:48,118.118 INFO    ] Checking for existing commands in stream...
[2026-06-12 02:04:48,186.186 INFO    ] No existing commands found in stream
[2026-06-12 02:04:53,196.196 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 02:04:53,199.199 INFO    ] Waiting 1.98 seconds before fallback handling...
[2026-06-12 02:04:55,590.590 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 02:04:55,592.592 INFO    ] Checking for system updates...
[2026-06-12 02:04:55,613.613 INFO    ] 200
[2026-06-12 02:04:55,615.615 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:04:55,645.645 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 02:04:55,647.647 INFO    ] No update needed
[2026-06-12 02:04:55,648.648 INFO    ] Checking for camera pi updates...
[2026-06-12 02:04:55,668.668 INFO    ] 200
[2026-06-12 02:04:55,669.669 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:04:55,696.696 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 02:04:55,741.741 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 02:04:55,742.742 INFO    ] No camera update needed
[2026-06-12 02:04:55,743.743 INFO    ] Script finished. Safe exiting...
[2026-06-12 02:04:55,745.745 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 02:04:55,748.748 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 02:04:55,751.751 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 02:04:57,791.791 INFO    ] ================================================
[2026-06-12 02:04:57,808.808 INFO    ] Launching Daemon at Fri Jun 12 02:04:57 IST 2026
[2026-06-12 02:04:57,819.819 INFO    ] ================================================
[2026-06-12 02:04:58,182.182 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 02:04:58
[2026-06-12 02:04:58,523.523 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 02:04:58,664.664 INFO    ] Initializing speech engine...
[2026-06-12 02:04:58,678.678 INFO    ] 2026-06-12 02:04:58
[2026-06-12 02:04:58,887.887 INFO    ] 2026-06-12 02:04:58
[2026-06-12 02:04:58,917.917 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 02:04:59,100.100 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 02:04:59,110.110 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 02:04:59,256.256 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 02:04:59,308.308 INFO    ] time= 12/06/2026 02:04:59
[2026-06-12 02:04:59,332.332 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 02:04:59,338.338 INFO    ] Checking for existing commands in stream...
[2026-06-12 02:04:59,403.403 INFO    ] No existing commands found in stream
[2026-06-12 02:05:04,414.414 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 02:05:04,417.417 INFO    ] Waiting 0.21 seconds before fallback handling...
[2026-06-12 02:05:04,981.981 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 02:05:04,982.982 INFO    ] Checking for system updates...
[2026-06-12 02:05:05,004.004 INFO    ] 200
[2026-06-12 02:05:05,005.005 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:05:05,039.039 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 02:05:05,041.041 INFO    ] No update needed
[2026-06-12 02:05:05,042.042 INFO    ] Checking for camera pi updates...
[2026-06-12 02:05:05,063.063 INFO    ] 200
[2026-06-12 02:05:05,065.065 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:05:05,091.091 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 02:05:05,244.244 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 02:05:05,246.246 INFO    ] No camera update needed
[2026-06-12 02:05:05,247.247 INFO    ] Script finished. Safe exiting...
[2026-06-12 02:05:05,248.248 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 02:05:05,252.252 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 02:05:05,255.255 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 02:05:07,295.295 INFO    ] ================================================
[2026-06-12 02:05:07,311.311 INFO    ] Launching Daemon at Fri Jun 12 02:05:07 IST 2026
[2026-06-12 02:05:07,323.323 INFO    ] ================================================
[2026-06-12 02:05:07,648.648 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 02:05:07
[2026-06-12 02:05:07,959.959 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 02:05:08,095.095 INFO    ] Initializing speech engine...
[2026-06-12 02:05:08,105.105 INFO    ] 2026-06-12 02:05:08
[2026-06-12 02:05:08,307.307 INFO    ] 2026-06-12 02:05:08
[2026-06-12 02:05:08,336.336 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 02:05:08,519.519 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 02:05:08,523.523 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 02:05:08,674.674 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 02:05:08,728.728 INFO    ] time= 12/06/2026 02:05:08
[2026-06-12 02:05:08,749.749 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 02:05:08,755.755 INFO    ] Checking for existing commands in stream...
[2026-06-12 02:05:08,822.822 INFO    ] No existing commands found in stream
[2026-06-12 02:05:13,831.831 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 02:05:13,834.834 INFO    ] Waiting 3.82 seconds before fallback handling...
[2026-06-12 02:05:18,010.010 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 02:05:18,012.012 INFO    ] Checking for system updates...
[2026-06-12 02:05:18,032.032 INFO    ] 200
[2026-06-12 02:05:18,033.033 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:05:18,065.065 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 02:05:18,067.067 INFO    ] No update needed
[2026-06-12 02:05:18,068.068 INFO    ] Checking for camera pi updates...
[2026-06-12 02:05:18,087.087 INFO    ] 200
[2026-06-12 02:05:18,088.088 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:05:18,111.111 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 02:05:18,160.160 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 02:05:18,161.161 INFO    ] No camera update needed
[2026-06-12 02:05:18,163.163 INFO    ] Script finished. Safe exiting...
[2026-06-12 02:05:18,164.164 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 02:05:18,167.167 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 02:05:18,169.169 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 02:05:20,201.201 INFO    ] ================================================
[2026-06-12 02:05:20,217.217 INFO    ] Launching Daemon at Fri Jun 12 02:05:20 IST 2026
[2026-06-12 02:05:20,229.229 INFO    ] ================================================
[2026-06-12 02:05:20,595.595 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 02:05:20
[2026-06-12 02:05:20,943.943 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 02:05:21,074.074 INFO    ] Initializing speech engine...
[2026-06-12 02:05:21,082.082 INFO    ] 2026-06-12 02:05:21
[2026-06-12 02:05:21,294.294 INFO    ] 2026-06-12 02:05:21
[2026-06-12 02:05:21,323.323 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 02:05:21,508.508 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 02:05:21,519.519 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 02:05:21,658.658 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 02:05:21,716.716 INFO    ] time= 12/06/2026 02:05:21
[2026-06-12 02:05:21,738.738 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 02:05:21,745.745 INFO    ] Checking for existing commands in stream...
[2026-06-12 02:05:21,812.812 INFO    ] No existing commands found in stream
[2026-06-12 02:05:26,826.826 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 02:05:26,828.828 INFO    ] Waiting 0.63 seconds before fallback handling...
[2026-06-12 02:05:27,841.841 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 02:05:27,843.843 INFO    ] Checking for system updates...
[2026-06-12 02:05:27,865.865 INFO    ] 200
[2026-06-12 02:05:27,866.866 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:05:27,901.901 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 02:05:27,902.902 INFO    ] No update needed
[2026-06-12 02:05:27,903.903 INFO    ] Checking for camera pi updates...
[2026-06-12 02:05:27,927.927 INFO    ] 200
[2026-06-12 02:05:27,928.928 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:05:27,954.954 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 02:05:27,998.998 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 02:05:28,000.000 INFO    ] No camera update needed
[2026-06-12 02:05:28,001.001 INFO    ] Script finished. Safe exiting...
[2026-06-12 02:05:28,002.002 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 02:05:28,006.006 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 02:05:28,008.008 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 02:05:30,048.048 INFO    ] ================================================
[2026-06-12 02:05:30,064.064 INFO    ] Launching Daemon at Fri Jun 12 02:05:30 IST 2026
[2026-06-12 02:05:30,075.075 INFO    ] ================================================
[2026-06-12 02:05:30,409.409 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 02:05:30
[2026-06-12 02:05:30,719.719 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 02:05:30,860.860 INFO    ] Initializing speech engine...
[2026-06-12 02:05:30,866.866 INFO    ] 2026-06-12 02:05:30
[2026-06-12 02:05:31,067.067 INFO    ] 2026-06-12 02:05:31
[2026-06-12 02:05:31,097.097 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 02:05:31,280.280 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 02:05:31,283.283 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 02:05:31,419.419 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 02:05:31,486.486 INFO    ] time= 12/06/2026 02:05:31
[2026-06-12 02:05:31,521.521 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 02:05:31,528.528 INFO    ] Checking for existing commands in stream...
[2026-06-12 02:05:31,597.597 INFO    ] No existing commands found in stream
[2026-06-12 02:05:36,610.610 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 02:05:36,611.611 INFO    ] Waiting 2.81 seconds before fallback handling...
[2026-06-12 02:05:39,763.763 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 02:05:39,764.764 INFO    ] Checking for system updates...
[2026-06-12 02:05:39,785.785 INFO    ] 200
[2026-06-12 02:05:39,787.787 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:05:39,817.817 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 02:05:39,818.818 INFO    ] No update needed
[2026-06-12 02:05:39,819.819 INFO    ] Checking for camera pi updates...
[2026-06-12 02:05:39,840.840 INFO    ] 200
[2026-06-12 02:05:39,841.841 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:05:39,866.866 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 02:05:39,903.903 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 02:05:39,905.905 INFO    ] No camera update needed
[2026-06-12 02:05:39,906.906 INFO    ] Script finished. Safe exiting...
[2026-06-12 02:05:39,907.907 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 02:05:39,910.910 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 02:05:39,913.913 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 02:05:41,946.946 INFO    ] ================================================
[2026-06-12 02:05:41,962.962 INFO    ] Launching Daemon at Fri Jun 12 02:05:41 IST 2026
[2026-06-12 02:05:41,975.975 INFO    ] ================================================
[2026-06-12 02:05:42,335.335 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 02:05:42
[2026-06-12 02:05:42,665.665 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 02:05:42,814.814 INFO    ] Initializing speech engine...
[2026-06-12 02:05:42,820.820 INFO    ] 2026-06-12 02:05:42
[2026-06-12 02:05:43,027.027 INFO    ] 2026-06-12 02:05:43
[2026-06-12 02:05:43,055.055 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 02:05:43,240.240 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 02:05:43,249.249 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 02:05:43,383.383 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 02:05:43,445.445 INFO    ] time= 12/06/2026 02:05:43
[2026-06-12 02:05:43,469.469 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 02:05:43,475.475 INFO    ] Checking for existing commands in stream...
[2026-06-12 02:05:43,542.542 INFO    ] No existing commands found in stream
[2026-06-12 02:05:48,551.551 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 02:05:48,554.554 INFO    ] Waiting 1.44 seconds before fallback handling...
[2026-06-12 02:05:50,349.349 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 02:05:50,351.351 INFO    ] Checking for system updates...
[2026-06-12 02:05:50,373.373 INFO    ] 200
[2026-06-12 02:05:50,374.374 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:05:50,404.404 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 02:05:50,406.406 INFO    ] No update needed
[2026-06-12 02:05:50,407.407 INFO    ] Checking for camera pi updates...
[2026-06-12 02:05:50,427.427 INFO    ] 200
[2026-06-12 02:05:50,429.429 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:05:50,453.453 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 02:05:50,495.495 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 02:05:50,497.497 INFO    ] No camera update needed
[2026-06-12 02:05:50,498.498 INFO    ] Script finished. Safe exiting...
[2026-06-12 02:05:50,499.499 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 02:05:50,502.502 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 02:05:50,505.505 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 02:05:52,544.544 INFO    ] ================================================
[2026-06-12 02:05:52,560.560 INFO    ] Launching Daemon at Fri Jun 12 02:05:52 IST 2026
[2026-06-12 02:05:52,571.571 INFO    ] ================================================
[2026-06-12 02:05:52,903.903 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 02:05:52
[2026-06-12 02:05:53,215.215 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 02:05:53,345.345 INFO    ] Initializing speech engine...
[2026-06-12 02:05:53,352.352 INFO    ] 2026-06-12 02:05:53
[2026-06-12 02:05:53,562.562 INFO    ] 2026-06-12 02:05:53
[2026-06-12 02:05:53,591.591 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 02:05:53,772.772 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 02:05:53,781.781 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 02:05:53,909.909 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 02:05:53,973.973 INFO    ] time= 12/06/2026 02:05:53
[2026-06-12 02:05:53,999.999 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 02:05:54,005.005 INFO    ] Checking for existing commands in stream...
[2026-06-12 02:05:54,071.071 INFO    ] No existing commands found in stream
[2026-06-12 02:05:59,081.081 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 02:05:59,083.083 INFO    ] Waiting 3.22 seconds before fallback handling...
[2026-06-12 02:06:02,662.662 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 02:06:02,664.664 INFO    ] Checking for system updates...
[2026-06-12 02:06:02,693.693 INFO    ] 200
[2026-06-12 02:06:02,694.694 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:06:02,724.724 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 02:06:02,726.726 INFO    ] No update needed
[2026-06-12 02:06:02,727.727 INFO    ] Checking for camera pi updates...
[2026-06-12 02:06:02,747.747 INFO    ] 200
[2026-06-12 02:06:02,748.748 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:06:02,781.781 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 02:06:02,828.828 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 02:06:02,830.830 INFO    ] No camera update needed
[2026-06-12 02:06:02,831.831 INFO    ] Script finished. Safe exiting...
[2026-06-12 02:06:02,833.833 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 02:06:02,836.836 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 02:06:02,838.838 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 02:06:04,879.879 INFO    ] ================================================
[2026-06-12 02:06:04,895.895 INFO    ] Launching Daemon at Fri Jun 12 02:06:04 IST 2026
[2026-06-12 02:06:04,906.906 INFO    ] ================================================
[2026-06-12 02:06:05,269.269 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 02:06:05
[2026-06-12 02:06:05,580.580 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 02:06:05,709.709 INFO    ] Initializing speech engine...
[2026-06-12 02:06:05,713.713 INFO    ] 2026-06-12 02:06:05
[2026-06-12 02:06:05,901.901 INFO    ] 2026-06-12 02:06:05
[2026-06-12 02:06:05,928.928 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 02:06:06,111.111 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 02:06:06,169.169 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 02:06:06,325.325 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 02:06:06,395.395 INFO    ] time= 12/06/2026 02:06:06
[2026-06-12 02:06:06,423.423 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 02:06:06,424.424 INFO    ] Checking for existing commands in stream...
[2026-06-12 02:06:06,502.502 INFO    ] No existing commands found in stream
[2026-06-12 02:06:11,516.516 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 02:06:11,519.519 INFO    ] Waiting 2.70 seconds before fallback handling...
[2026-06-12 02:06:14,612.612 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 02:06:14,613.613 INFO    ] Checking for system updates...
[2026-06-12 02:06:14,635.635 INFO    ] 200
[2026-06-12 02:06:14,636.636 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:06:14,670.670 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 02:06:14,672.672 INFO    ] No update needed
[2026-06-12 02:06:14,673.673 INFO    ] Checking for camera pi updates...
[2026-06-12 02:06:14,694.694 INFO    ] 200
[2026-06-12 02:06:14,695.695 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:06:14,721.721 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 02:06:14,762.762 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 02:06:14,763.763 INFO    ] No camera update needed
[2026-06-12 02:06:14,765.765 INFO    ] Script finished. Safe exiting...
[2026-06-12 02:06:14,766.766 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 02:06:14,769.769 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 02:06:14,772.772 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 02:06:16,812.812 INFO    ] ================================================
[2026-06-12 02:06:16,829.829 INFO    ] Launching Daemon at Fri Jun 12 02:06:16 IST 2026
[2026-06-12 02:06:16,839.839 INFO    ] ================================================
[2026-06-12 02:06:17,184.184 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 02:06:17
[2026-06-12 02:06:17,496.496 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 02:06:17,639.639 INFO    ] Initializing speech engine...
[2026-06-12 02:06:17,644.644 INFO    ] 2026-06-12 02:06:17
[2026-06-12 02:06:17,847.847 INFO    ] 2026-06-12 02:06:17
[2026-06-12 02:06:17,875.875 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 02:06:18,058.058 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 02:06:18,068.068 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 02:06:18,196.196 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 02:06:18,255.255 INFO    ] time= 12/06/2026 02:06:18
[2026-06-12 02:06:18,287.287 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 02:06:18,293.293 INFO    ] Checking for existing commands in stream...
[2026-06-12 02:06:18,360.360 INFO    ] No existing commands found in stream
[2026-06-12 02:06:23,369.369 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 02:06:23,372.372 INFO    ] Waiting 0.56 seconds before fallback handling...
[2026-06-12 02:06:24,298.298 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 02:06:24,299.299 INFO    ] Checking for system updates...
[2026-06-12 02:06:24,320.320 INFO    ] 200
[2026-06-12 02:06:24,322.322 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:06:24,353.353 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 02:06:24,355.355 INFO    ] No update needed
[2026-06-12 02:06:24,356.356 INFO    ] Checking for camera pi updates...
[2026-06-12 02:06:24,376.376 INFO    ] 200
[2026-06-12 02:06:24,377.377 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:06:24,402.402 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 02:06:24,456.456 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 02:06:24,457.457 INFO    ] No camera update needed
[2026-06-12 02:06:24,458.458 INFO    ] Script finished. Safe exiting...
[2026-06-12 02:06:24,459.459 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 02:06:24,462.462 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 02:06:24,465.465 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 02:06:26,503.503 INFO    ] ================================================
[2026-06-12 02:06:26,519.519 INFO    ] Launching Daemon at Fri Jun 12 02:06:26 IST 2026
[2026-06-12 02:06:26,530.530 INFO    ] ================================================
[2026-06-12 02:06:26,881.881 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 02:06:26
[2026-06-12 02:06:27,213.213 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 02:06:27,352.352 INFO    ] Initializing speech engine...
[2026-06-12 02:06:27,365.365 INFO    ] 2026-06-12 02:06:27
[2026-06-12 02:06:27,574.574 INFO    ] 2026-06-12 02:06:27
[2026-06-12 02:06:27,603.603 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 02:06:27,790.790 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 02:06:27,798.798 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 02:06:27,944.944 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 02:06:27,997.997 INFO    ] time= 12/06/2026 02:06:27
[2026-06-12 02:06:28,019.019 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 02:06:28,026.026 INFO    ] Checking for existing commands in stream...
[2026-06-12 02:06:28,093.093 INFO    ] No existing commands found in stream
[2026-06-12 02:06:33,106.106 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 02:06:33,108.108 INFO    ] Waiting 0.59 seconds before fallback handling...
[2026-06-12 02:06:34,067.067 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 02:06:34,068.068 INFO    ] Checking for system updates...
[2026-06-12 02:06:34,090.090 INFO    ] 200
[2026-06-12 02:06:34,092.092 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:06:34,124.124 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 02:06:34,125.125 INFO    ] No update needed
[2026-06-12 02:06:34,127.127 INFO    ] Checking for camera pi updates...
[2026-06-12 02:06:34,149.149 INFO    ] 200
[2026-06-12 02:06:34,150.150 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:06:34,174.174 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 02:06:34,224.224 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 02:06:34,225.225 INFO    ] No camera update needed
[2026-06-12 02:06:34,227.227 INFO    ] Script finished. Safe exiting...
[2026-06-12 02:06:34,228.228 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 02:06:34,231.231 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 02:06:34,234.234 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 02:06:36,272.272 INFO    ] ================================================
[2026-06-12 02:06:36,287.287 INFO    ] Launching Daemon at Fri Jun 12 02:06:36 IST 2026
[2026-06-12 02:06:36,298.298 INFO    ] ================================================
[2026-06-12 02:06:36,649.649 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 02:06:36
[2026-06-12 02:06:36,959.959 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 02:06:37,092.092 INFO    ] Initializing speech engine...
[2026-06-12 02:06:37,100.100 INFO    ] 2026-06-12 02:06:37
[2026-06-12 02:06:37,320.320 INFO    ] 2026-06-12 02:06:37
[2026-06-12 02:06:37,350.350 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 02:06:37,545.545 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 02:06:37,548.548 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 02:06:37,685.685 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 02:06:37,741.741 INFO    ] time= 12/06/2026 02:06:37
[2026-06-12 02:06:37,785.785 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 02:06:37,791.791 INFO    ] Checking for existing commands in stream...
[2026-06-12 02:06:37,867.867 INFO    ] No existing commands found in stream
[2026-06-12 02:06:42,876.876 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 02:06:42,878.878 INFO    ] Waiting 1.36 seconds before fallback handling...
[2026-06-12 02:06:44,620.620 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 02:06:44,622.622 INFO    ] Checking for system updates...
[2026-06-12 02:06:44,643.643 INFO    ] 200
[2026-06-12 02:06:44,644.644 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:06:44,674.674 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 02:06:44,676.676 INFO    ] No update needed
[2026-06-12 02:06:44,677.677 INFO    ] Checking for camera pi updates...
[2026-06-12 02:06:44,696.696 INFO    ] 200
[2026-06-12 02:06:44,698.698 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:06:44,723.723 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 02:06:44,770.770 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 02:06:44,771.771 INFO    ] No camera update needed
[2026-06-12 02:06:44,773.773 INFO    ] Script finished. Safe exiting...
[2026-06-12 02:06:44,774.774 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 02:06:44,777.777 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 02:06:44,780.780 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 02:06:46,818.818 INFO    ] ================================================
[2026-06-12 02:06:46,833.833 INFO    ] Launching Daemon at Fri Jun 12 02:06:46 IST 2026
[2026-06-12 02:06:46,844.844 INFO    ] ================================================
[2026-06-12 02:06:47,195.195 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 02:06:47
[2026-06-12 02:06:47,525.525 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 02:06:47,673.673 INFO    ] Initializing speech engine...
[2026-06-12 02:06:47,678.678 INFO    ] 2026-06-12 02:06:47
[2026-06-12 02:06:47,884.884 INFO    ] 2026-06-12 02:06:47
[2026-06-12 02:06:47,913.913 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 02:06:48,034.034 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 02:06:48,097.097 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 02:06:48,234.234 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 02:06:48,302.302 INFO    ] time= 12/06/2026 02:06:48
[2026-06-12 02:06:48,326.326 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 02:06:48,332.332 INFO    ] Checking for existing commands in stream...
[2026-06-12 02:06:48,399.399 INFO    ] No existing commands found in stream
[2026-06-12 02:06:53,411.411 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 02:06:53,413.413 INFO    ] Waiting 1.71 seconds before fallback handling...
[2026-06-12 02:06:55,518.518 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 02:06:55,520.520 INFO    ] Checking for system updates...
[2026-06-12 02:06:55,542.542 INFO    ] 200
[2026-06-12 02:06:55,544.544 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:06:55,574.574 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 02:06:55,576.576 INFO    ] No update needed
[2026-06-12 02:06:55,577.577 INFO    ] Checking for camera pi updates...
[2026-06-12 02:06:55,597.597 INFO    ] 200
[2026-06-12 02:06:55,598.598 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:06:55,622.622 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 02:06:55,672.672 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 02:06:55,673.673 INFO    ] No camera update needed
[2026-06-12 02:06:55,674.674 INFO    ] Script finished. Safe exiting...
[2026-06-12 02:06:55,676.676 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 02:06:55,679.679 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 02:06:55,682.682 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 02:06:57,721.721 INFO    ] ================================================
[2026-06-12 02:06:57,736.736 INFO    ] Launching Daemon at Fri Jun 12 02:06:57 IST 2026
[2026-06-12 02:06:57,747.747 INFO    ] ================================================
[2026-06-12 02:06:58,095.095 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 02:06:58
[2026-06-12 02:06:58,406.406 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 02:06:58,538.538 INFO    ] Initializing speech engine...
[2026-06-12 02:06:58,550.550 INFO    ] 2026-06-12 02:06:58
[2026-06-12 02:06:58,755.755 INFO    ] 2026-06-12 02:06:58
[2026-06-12 02:06:58,783.783 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 02:06:58,968.968 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 02:06:58,971.971 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 02:06:59,123.123 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 02:06:59,178.178 INFO    ] time= 12/06/2026 02:06:59
[2026-06-12 02:06:59,200.200 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 02:06:59,206.206 INFO    ] Checking for existing commands in stream...
[2026-06-12 02:06:59,273.273 INFO    ] No existing commands found in stream
[2026-06-12 02:07:04,287.287 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 02:07:04,290.290 INFO    ] Waiting 0.09 seconds before fallback handling...
[2026-06-12 02:07:04,725.725 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 02:07:04,727.727 INFO    ] Checking for system updates...
[2026-06-12 02:07:04,747.747 INFO    ] 200
[2026-06-12 02:07:04,749.749 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:07:04,779.779 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 02:07:04,780.780 INFO    ] No update needed
[2026-06-12 02:07:04,781.781 INFO    ] Checking for camera pi updates...
[2026-06-12 02:07:04,801.801 INFO    ] 200
[2026-06-12 02:07:04,802.802 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:07:04,825.825 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 02:07:04,878.878 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 02:07:04,879.879 INFO    ] No camera update needed
[2026-06-12 02:07:04,881.881 INFO    ] Script finished. Safe exiting...
[2026-06-12 02:07:04,882.882 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 02:07:04,885.885 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 02:07:04,888.888 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 02:07:06,927.927 INFO    ] ================================================
[2026-06-12 02:07:06,943.943 INFO    ] Launching Daemon at Fri Jun 12 02:07:06 IST 2026
[2026-06-12 02:07:06,955.955 INFO    ] ================================================
[2026-06-12 02:07:07,303.303 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 02:07:07
[2026-06-12 02:07:07,636.636 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 02:07:07,787.787 INFO    ] Initializing speech engine...
[2026-06-12 02:07:07,793.793 INFO    ] 2026-06-12 02:07:07
[2026-06-12 02:07:08,002.002 INFO    ] 2026-06-12 02:07:07
[2026-06-12 02:07:08,031.031 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 02:07:08,155.155 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 02:07:08,218.218 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 02:07:08,363.363 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 02:07:08,427.427 INFO    ] time= 12/06/2026 02:07:08
[2026-06-12 02:07:08,450.450 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 02:07:08,457.457 INFO    ] Checking for existing commands in stream...
[2026-06-12 02:07:08,524.524 INFO    ] No existing commands found in stream
[2026-06-12 02:07:13,539.539 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 02:07:13,542.542 INFO    ] Waiting 1.69 seconds before fallback handling...
[2026-06-12 02:07:15,628.628 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 02:07:15,630.630 INFO    ] Checking for system updates...
[2026-06-12 02:07:15,652.652 INFO    ] 200
[2026-06-12 02:07:15,653.653 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:07:15,685.685 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 02:07:15,687.687 INFO    ] No update needed
[2026-06-12 02:07:15,688.688 INFO    ] Checking for camera pi updates...
[2026-06-12 02:07:15,709.709 INFO    ] 200
[2026-06-12 02:07:15,710.710 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:07:15,737.737 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 02:07:15,873.873 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 02:07:15,874.874 INFO    ] No camera update needed
[2026-06-12 02:07:15,876.876 INFO    ] Script finished. Safe exiting...
[2026-06-12 02:07:15,877.877 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 02:07:15,881.881 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 02:07:15,884.884 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 02:07:17,922.922 INFO    ] ================================================
[2026-06-12 02:07:17,938.938 INFO    ] Launching Daemon at Fri Jun 12 02:07:17 IST 2026
[2026-06-12 02:07:17,949.949 INFO    ] ================================================
[2026-06-12 02:07:18,287.287 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 02:07:18
[2026-06-12 02:07:18,621.621 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 02:07:18,770.770 INFO    ] Initializing speech engine...
[2026-06-12 02:07:18,776.776 INFO    ] 2026-06-12 02:07:18
[2026-06-12 02:07:18,982.982 INFO    ] 2026-06-12 02:07:18
[2026-06-12 02:07:19,011.011 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 02:07:19,195.195 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 02:07:19,203.203 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 02:07:19,343.343 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 02:07:19,400.400 INFO    ] time= 12/06/2026 02:07:19
[2026-06-12 02:07:19,424.424 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 02:07:19,431.431 INFO    ] Checking for existing commands in stream...
[2026-06-12 02:07:19,521.521 INFO    ] No existing commands found in stream
[2026-06-12 02:07:24,529.529 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 02:07:24,531.531 INFO    ] Waiting 1.36 seconds before fallback handling...
[2026-06-12 02:07:26,258.258 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 02:07:26,259.259 INFO    ] Checking for system updates...
[2026-06-12 02:07:26,281.281 INFO    ] 200
[2026-06-12 02:07:26,282.282 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:07:26,313.313 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 02:07:26,314.314 INFO    ] No update needed
[2026-06-12 02:07:26,315.315 INFO    ] Checking for camera pi updates...
[2026-06-12 02:07:26,335.335 INFO    ] 200
[2026-06-12 02:07:26,336.336 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:07:26,360.360 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 02:07:26,403.403 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 02:07:26,405.405 INFO    ] No camera update needed
[2026-06-12 02:07:26,406.406 INFO    ] Script finished. Safe exiting...
[2026-06-12 02:07:26,407.407 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 02:07:26,411.411 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 02:07:26,414.414 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 02:07:28,452.452 INFO    ] ================================================
[2026-06-12 02:07:28,468.468 INFO    ] Launching Daemon at Fri Jun 12 02:07:28 IST 2026
[2026-06-12 02:07:28,480.480 INFO    ] ================================================
[2026-06-12 02:07:28,814.814 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 02:07:28
[2026-06-12 02:07:29,129.129 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 02:07:29,272.272 INFO    ] Initializing speech engine...
[2026-06-12 02:07:29,276.276 INFO    ] 2026-06-12 02:07:29
[2026-06-12 02:07:29,481.481 INFO    ] 2026-06-12 02:07:29
[2026-06-12 02:07:29,510.510 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 02:07:29,696.696 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 02:07:29,706.706 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 02:07:29,829.829 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 02:07:29,885.885 INFO    ] time= 12/06/2026 02:07:29
[2026-06-12 02:07:29,925.925 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 02:07:29,930.930 INFO    ] Checking for existing commands in stream...
[2026-06-12 02:07:30,002.002 INFO    ] No existing commands found in stream
[2026-06-12 02:07:35,011.011 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 02:07:35,014.014 INFO    ] Waiting 3.66 seconds before fallback handling...
[2026-06-12 02:07:39,065.065 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 02:07:39,067.067 INFO    ] Checking for system updates...
[2026-06-12 02:07:39,088.088 INFO    ] 200
[2026-06-12 02:07:39,089.089 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:07:39,121.121 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 02:07:39,123.123 INFO    ] No update needed
[2026-06-12 02:07:39,124.124 INFO    ] Checking for camera pi updates...
[2026-06-12 02:07:39,146.146 INFO    ] 200
[2026-06-12 02:07:39,147.147 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:07:39,170.170 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 02:07:39,211.211 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 02:07:39,212.212 INFO    ] No camera update needed
[2026-06-12 02:07:39,214.214 INFO    ] Script finished. Safe exiting...
[2026-06-12 02:07:39,215.215 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 02:07:39,218.218 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 02:07:39,221.221 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 02:07:41,260.260 INFO    ] ================================================
[2026-06-12 02:07:41,277.277 INFO    ] Launching Daemon at Fri Jun 12 02:07:41 IST 2026
[2026-06-12 02:07:41,288.288 INFO    ] ================================================
[2026-06-12 02:07:41,643.643 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 02:07:41
[2026-06-12 02:07:41,966.966 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 02:07:42,115.115 INFO    ] Initializing speech engine...
[2026-06-12 02:07:42,121.121 INFO    ] 2026-06-12 02:07:42
[2026-06-12 02:07:42,331.331 INFO    ] 2026-06-12 02:07:42
[2026-06-12 02:07:42,360.360 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 02:07:42,544.544 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 02:07:42,553.553 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 02:07:42,677.677 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 02:07:42,738.738 INFO    ] time= 12/06/2026 02:07:42
[2026-06-12 02:07:42,772.772 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 02:07:42,777.777 INFO    ] Checking for existing commands in stream...
[2026-06-12 02:07:42,849.849 INFO    ] No existing commands found in stream
[2026-06-12 02:07:47,858.858 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 02:07:47,861.861 INFO    ] Waiting 0.19 seconds before fallback handling...
[2026-06-12 02:07:48,427.427 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 02:07:48,428.428 INFO    ] Checking for system updates...
[2026-06-12 02:07:48,450.450 INFO    ] 200
[2026-06-12 02:07:48,451.451 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:07:48,484.484 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 02:07:48,485.485 INFO    ] No update needed
[2026-06-12 02:07:48,487.487 INFO    ] Checking for camera pi updates...
[2026-06-12 02:07:48,508.508 INFO    ] 200
[2026-06-12 02:07:48,509.509 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:07:48,535.535 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 02:07:48,575.575 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 02:07:48,577.577 INFO    ] No camera update needed
[2026-06-12 02:07:48,578.578 INFO    ] Script finished. Safe exiting...
[2026-06-12 02:07:48,579.579 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 02:07:48,583.583 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 02:07:48,586.586 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 02:07:50,626.626 INFO    ] ================================================
[2026-06-12 02:07:50,642.642 INFO    ] Launching Daemon at Fri Jun 12 02:07:50 IST 2026
[2026-06-12 02:07:50,654.654 INFO    ] ================================================
[2026-06-12 02:07:50,980.980 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 02:07:50
[2026-06-12 02:07:51,296.296 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 02:07:51,429.429 INFO    ] Initializing speech engine...
[2026-06-12 02:07:51,434.434 INFO    ] 2026-06-12 02:07:51
[2026-06-12 02:07:51,662.662 INFO    ] 2026-06-12 02:07:51
[2026-06-12 02:07:51,693.693 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 02:07:51,888.888 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 02:07:51,892.892 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 02:07:52,031.031 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 02:07:52,068.068 INFO    ] time= 12/06/2026 02:07:52
[2026-06-12 02:07:52,115.115 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 02:07:52,138.138 INFO    ] Checking for existing commands in stream...
[2026-06-12 02:07:52,214.214 INFO    ] No existing commands found in stream
[2026-06-12 02:07:57,223.223 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 02:07:57,231.231 INFO    ] Waiting 1.96 seconds before fallback handling...
[2026-06-12 02:07:59,568.568 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 02:07:59,569.569 INFO    ] Checking for system updates...
[2026-06-12 02:07:59,590.590 INFO    ] 200
[2026-06-12 02:07:59,592.592 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:07:59,625.625 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 02:07:59,626.626 INFO    ] No update needed
[2026-06-12 02:07:59,627.627 INFO    ] Checking for camera pi updates...
[2026-06-12 02:07:59,649.649 INFO    ] 200
[2026-06-12 02:07:59,650.650 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:07:59,674.674 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 02:07:59,722.722 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 02:07:59,723.723 INFO    ] No camera update needed
[2026-06-12 02:07:59,725.725 INFO    ] Script finished. Safe exiting...
[2026-06-12 02:07:59,726.726 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 02:07:59,729.729 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 02:07:59,731.731 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 02:08:01,765.765 INFO    ] ================================================
[2026-06-12 02:08:01,777.777 INFO    ] Launching Daemon at Fri Jun 12 02:08:01 IST 2026
[2026-06-12 02:08:01,785.785 INFO    ] ================================================
[2026-06-12 02:08:02,140.140 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 02:08:02
[2026-06-12 02:08:02,466.466 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 02:08:02,608.608 INFO    ] Initializing speech engine...
[2026-06-12 02:08:02,613.613 INFO    ] 2026-06-12 02:08:02
[2026-06-12 02:08:02,823.823 INFO    ] 2026-06-12 02:08:02
[2026-06-12 02:08:02,852.852 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 02:08:03,035.035 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 02:08:03,044.044 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 02:08:03,166.166 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 02:08:03,222.222 INFO    ] time= 12/06/2026 02:08:03
[2026-06-12 02:08:03,250.250 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 02:08:03,266.266 INFO    ] Checking for existing commands in stream...
[2026-06-12 02:08:03,336.336 INFO    ] No existing commands found in stream
[2026-06-12 02:08:08,347.347 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 02:08:08,349.349 INFO    ] Waiting 0.33 seconds before fallback handling...
[2026-06-12 02:08:09,045.045 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 02:08:09,047.047 INFO    ] Checking for system updates...
[2026-06-12 02:08:09,067.067 INFO    ] 200
[2026-06-12 02:08:09,069.069 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:08:09,101.101 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 02:08:09,102.102 INFO    ] No update needed
[2026-06-12 02:08:09,103.103 INFO    ] Checking for camera pi updates...
[2026-06-12 02:08:09,123.123 INFO    ] 200
[2026-06-12 02:08:09,125.125 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:08:09,148.148 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 02:08:09,185.185 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 02:08:09,186.186 INFO    ] No camera update needed
[2026-06-12 02:08:09,188.188 INFO    ] Script finished. Safe exiting...
[2026-06-12 02:08:09,190.190 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 02:08:09,193.193 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 02:08:09,196.196 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 02:08:11,237.237 INFO    ] ================================================
[2026-06-12 02:08:11,252.252 INFO    ] Launching Daemon at Fri Jun 12 02:08:11 IST 2026
[2026-06-12 02:08:11,263.263 INFO    ] ================================================
[2026-06-12 02:08:11,625.625 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 02:08:11
[2026-06-12 02:08:11,942.942 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 02:08:12,077.077 INFO    ] Initializing speech engine...
[2026-06-12 02:08:12,082.082 INFO    ] 2026-06-12 02:08:12
[2026-06-12 02:08:12,302.302 INFO    ] 2026-06-12 02:08:12
[2026-06-12 02:08:12,331.331 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 02:08:12,517.517 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 02:08:12,521.521 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 02:08:12,656.656 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 02:08:12,719.719 INFO    ] time= 12/06/2026 02:08:12
[2026-06-12 02:08:12,749.749 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 02:08:12,754.754 INFO    ] Checking for existing commands in stream...
[2026-06-12 02:08:12,826.826 INFO    ] No existing commands found in stream
[2026-06-12 02:08:17,835.835 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 02:08:17,838.838 INFO    ] Waiting 0.16 seconds before fallback handling...
[2026-06-12 02:08:18,346.346 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 02:08:18,348.348 INFO    ] Checking for system updates...
[2026-06-12 02:08:18,368.368 INFO    ] 200
[2026-06-12 02:08:18,370.370 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:08:18,400.400 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 02:08:18,401.401 INFO    ] No update needed
[2026-06-12 02:08:18,402.402 INFO    ] Checking for camera pi updates...
[2026-06-12 02:08:18,424.424 INFO    ] 200
[2026-06-12 02:08:18,425.425 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:08:18,448.448 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 02:08:18,498.498 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 02:08:18,499.499 INFO    ] No camera update needed
[2026-06-12 02:08:18,501.501 INFO    ] Script finished. Safe exiting...
[2026-06-12 02:08:18,502.502 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 02:08:18,505.505 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 02:08:18,507.507 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 02:08:20,533.533 INFO    ] ================================================
[2026-06-12 02:08:20,543.543 INFO    ] Launching Daemon at Fri Jun 12 02:08:20 IST 2026
[2026-06-12 02:08:20,550.550 INFO    ] ================================================
[2026-06-12 02:08:20,872.872 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 02:08:20
[2026-06-12 02:08:21,201.201 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 02:08:21,341.341 INFO    ] Initializing speech engine...
[2026-06-12 02:08:21,343.343 INFO    ] 2026-06-12 02:08:21
[2026-06-12 02:08:21,572.572 INFO    ] 2026-06-12 02:08:21
[2026-06-12 02:08:21,602.602 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 02:08:21,791.791 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 02:08:21,796.796 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 02:08:21,958.958 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 02:08:22,009.009 INFO    ] time= 12/06/2026 02:08:21
[2026-06-12 02:08:22,032.032 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 02:08:22,039.039 INFO    ] Checking for existing commands in stream...
[2026-06-12 02:08:22,120.120 INFO    ] No existing commands found in stream
[2026-06-12 02:08:27,148.148 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 02:08:27,151.151 INFO    ] Waiting 2.80 seconds before fallback handling...
[2026-06-12 02:08:30,296.296 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 02:08:30,297.297 INFO    ] Checking for system updates...
[2026-06-12 02:08:30,320.320 INFO    ] 200
[2026-06-12 02:08:30,322.322 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:08:30,353.353 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 02:08:30,354.354 INFO    ] No update needed
[2026-06-12 02:08:30,356.356 INFO    ] Checking for camera pi updates...
[2026-06-12 02:08:30,376.376 INFO    ] 200
[2026-06-12 02:08:30,378.378 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:08:30,401.401 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 02:08:30,446.446 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 02:08:30,448.448 INFO    ] No camera update needed
[2026-06-12 02:08:30,449.449 INFO    ] Script finished. Safe exiting...
[2026-06-12 02:08:30,451.451 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 02:08:30,453.453 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 02:08:30,456.456 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 02:08:32,481.481 INFO    ] ================================================
[2026-06-12 02:08:32,489.489 INFO    ] Launching Daemon at Fri Jun 12 02:08:32 IST 2026
[2026-06-12 02:08:32,495.495 INFO    ] ================================================
[2026-06-12 02:08:32,838.838 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 02:08:32
[2026-06-12 02:08:33,221.221 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 02:08:33,374.374 INFO    ] Initializing speech engine...
[2026-06-12 02:08:33,378.378 INFO    ] 2026-06-12 02:08:33
[2026-06-12 02:08:33,584.584 INFO    ] 2026-06-12 02:08:33
[2026-06-12 02:08:33,615.615 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 02:08:33,797.797 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 02:08:33,807.807 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 02:08:33,948.948 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 02:08:34,006.006 INFO    ] time= 12/06/2026 02:08:33
[2026-06-12 02:08:34,028.028 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 02:08:34,035.035 INFO    ] Checking for existing commands in stream...
[2026-06-12 02:08:34,101.101 INFO    ] No existing commands found in stream
[2026-06-12 02:08:39,111.111 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 02:08:39,114.114 INFO    ] Waiting 0.78 seconds before fallback handling...
[2026-06-12 02:08:40,287.287 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 02:08:40,288.288 INFO    ] Checking for system updates...
[2026-06-12 02:08:40,309.309 INFO    ] 200
[2026-06-12 02:08:40,311.311 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:08:40,341.341 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 02:08:40,343.343 INFO    ] No update needed
[2026-06-12 02:08:40,345.345 INFO    ] Checking for camera pi updates...
[2026-06-12 02:08:40,364.364 INFO    ] 200
[2026-06-12 02:08:40,365.365 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:08:40,389.389 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 02:08:40,416.416 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 02:08:40,417.417 INFO    ] No camera update needed
[2026-06-12 02:08:40,419.419 INFO    ] Script finished. Safe exiting...
[2026-06-12 02:08:40,420.420 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 02:08:40,423.423 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 02:08:40,426.426 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 02:08:42,464.464 INFO    ] ================================================
[2026-06-12 02:08:42,480.480 INFO    ] Launching Daemon at Fri Jun 12 02:08:42 IST 2026
[2026-06-12 02:08:42,491.491 INFO    ] ================================================
[2026-06-12 02:08:42,854.854 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 02:08:42
[2026-06-12 02:08:43,201.201 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 02:08:43,353.353 INFO    ] Initializing speech engine...
[2026-06-12 02:08:43,360.360 INFO    ] 2026-06-12 02:08:43
[2026-06-12 02:08:43,566.566 INFO    ] 2026-06-12 02:08:43
[2026-06-12 02:08:43,595.595 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 02:08:43,781.781 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 02:08:43,790.790 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 02:08:43,921.921 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 02:08:43,988.988 INFO    ] time= 12/06/2026 02:08:43
[2026-06-12 02:08:44,013.013 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 02:08:44,019.019 INFO    ] Checking for existing commands in stream...
[2026-06-12 02:08:44,086.086 INFO    ] No existing commands found in stream
[2026-06-12 02:08:49,095.095 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 02:08:49,098.098 INFO    ] Waiting 0.79 seconds before fallback handling...
[2026-06-12 02:08:50,300.300 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 02:08:50,302.302 INFO    ] Checking for system updates...
[2026-06-12 02:08:50,323.323 INFO    ] 200
[2026-06-12 02:08:50,324.324 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:08:50,357.357 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 02:08:50,359.359 INFO    ] No update needed
[2026-06-12 02:08:50,360.360 INFO    ] Checking for camera pi updates...
[2026-06-12 02:08:50,379.379 INFO    ] 200
[2026-06-12 02:08:50,381.381 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:08:50,404.404 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 02:08:50,444.444 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 02:08:50,445.445 INFO    ] No camera update needed
[2026-06-12 02:08:50,446.446 INFO    ] Script finished. Safe exiting...
[2026-06-12 02:08:50,448.448 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 02:08:50,451.451 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 02:08:50,453.453 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 02:08:52,492.492 INFO    ] ================================================
[2026-06-12 02:08:52,508.508 INFO    ] Launching Daemon at Fri Jun 12 02:08:52 IST 2026
[2026-06-12 02:08:52,519.519 INFO    ] ================================================
[2026-06-12 02:08:52,882.882 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 02:08:52
[2026-06-12 02:08:53,200.200 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 02:08:53,333.333 INFO    ] Initializing speech engine...
[2026-06-12 02:08:53,340.340 INFO    ] 2026-06-12 02:08:53
[2026-06-12 02:08:53,554.554 INFO    ] 2026-06-12 02:08:53
[2026-06-12 02:08:53,582.582 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 02:08:53,765.765 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 02:08:53,775.775 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 02:08:53,918.918 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 02:08:53,977.977 INFO    ] time= 12/06/2026 02:08:53
[2026-06-12 02:08:54,001.001 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 02:08:54,007.007 INFO    ] Checking for existing commands in stream...
[2026-06-12 02:08:54,072.072 INFO    ] No existing commands found in stream
[2026-06-12 02:08:59,082.082 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 02:08:59,085.085 INFO    ] Waiting 3.41 seconds before fallback handling...
[2026-06-12 02:09:02,807.807 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 02:09:02,808.808 INFO    ] Checking for system updates...
[2026-06-12 02:09:02,829.829 INFO    ] 200
[2026-06-12 02:09:02,831.831 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:09:02,861.861 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 02:09:02,862.862 INFO    ] No update needed
[2026-06-12 02:09:02,863.863 INFO    ] Checking for camera pi updates...
[2026-06-12 02:09:02,883.883 INFO    ] 200
[2026-06-12 02:09:02,884.884 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:09:02,908.908 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 02:09:02,936.936 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 02:09:02,938.938 INFO    ] No camera update needed
[2026-06-12 02:09:02,948.948 INFO    ] Script finished. Safe exiting...
[2026-06-12 02:09:02,949.949 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 02:09:02,956.956 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 02:09:02,961.961 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 02:09:05,005.005 INFO    ] ================================================
[2026-06-12 02:09:05,021.021 INFO    ] Launching Daemon at Fri Jun 12 02:09:05 IST 2026
[2026-06-12 02:09:05,032.032 INFO    ] ================================================
[2026-06-12 02:09:05,394.394 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 02:09:05
[2026-06-12 02:09:05,735.735 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 02:09:05,886.886 INFO    ] Initializing speech engine...
[2026-06-12 02:09:05,892.892 INFO    ] 2026-06-12 02:09:05
[2026-06-12 02:09:06,100.100 INFO    ] 2026-06-12 02:09:06
[2026-06-12 02:09:06,129.129 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 02:09:06,315.315 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 02:09:06,324.324 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 02:09:06,480.480 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 02:09:06,523.523 INFO    ] time= 12/06/2026 02:09:06
[2026-06-12 02:09:06,546.546 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 02:09:06,552.552 INFO    ] Checking for existing commands in stream...
[2026-06-12 02:09:06,619.619 INFO    ] No existing commands found in stream
[2026-06-12 02:09:11,629.629 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 02:09:11,632.632 INFO    ] Waiting 2.75 seconds before fallback handling...
[2026-06-12 02:09:14,777.777 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 02:09:14,779.779 INFO    ] Checking for system updates...
[2026-06-12 02:09:14,800.800 INFO    ] 200
[2026-06-12 02:09:14,802.802 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:09:14,836.836 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 02:09:14,837.837 INFO    ] No update needed
[2026-06-12 02:09:14,839.839 INFO    ] Checking for camera pi updates...
[2026-06-12 02:09:14,858.858 INFO    ] 200
[2026-06-12 02:09:14,860.860 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:09:14,883.883 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 02:09:14,926.926 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 02:09:14,927.927 INFO    ] No camera update needed
[2026-06-12 02:09:14,929.929 INFO    ] Script finished. Safe exiting...
[2026-06-12 02:09:14,930.930 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 02:09:14,933.933 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 02:09:14,936.936 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 02:09:16,974.974 INFO    ] ================================================
[2026-06-12 02:09:16,989.989 INFO    ] Launching Daemon at Fri Jun 12 02:09:16 IST 2026
[2026-06-12 02:09:17,000.000 INFO    ] ================================================
[2026-06-12 02:09:17,393.393 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 02:09:17
[2026-06-12 02:09:17,733.733 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 02:09:17,885.885 INFO    ] Initializing speech engine...
[2026-06-12 02:09:17,890.890 INFO    ] 2026-06-12 02:09:17
[2026-06-12 02:09:18,099.099 INFO    ] 2026-06-12 02:09:18
[2026-06-12 02:09:18,128.128 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 02:09:18,312.312 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 02:09:18,323.323 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 02:09:18,466.466 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 02:09:18,520.520 INFO    ] time= 12/06/2026 02:09:18
[2026-06-12 02:09:18,542.542 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 02:09:18,548.548 INFO    ] Checking for existing commands in stream...
[2026-06-12 02:09:18,615.615 INFO    ] No existing commands found in stream
[2026-06-12 02:09:23,640.640 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 02:09:23,644.644 INFO    ] Waiting 1.31 seconds before fallback handling...
[2026-06-12 02:09:25,356.356 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 02:09:25,358.358 INFO    ] Checking for system updates...
[2026-06-12 02:09:25,378.378 INFO    ] 200
[2026-06-12 02:09:25,380.380 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:09:25,411.411 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 02:09:25,413.413 INFO    ] No update needed
[2026-06-12 02:09:25,414.414 INFO    ] Checking for camera pi updates...
[2026-06-12 02:09:25,433.433 INFO    ] 200
[2026-06-12 02:09:25,435.435 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:09:25,458.458 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 02:09:25,610.610 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 02:09:25,612.612 INFO    ] No camera update needed
[2026-06-12 02:09:25,613.613 INFO    ] Script finished. Safe exiting...
[2026-06-12 02:09:25,614.614 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 02:09:25,617.617 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 02:09:25,620.620 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 02:09:27,660.660 INFO    ] ================================================
[2026-06-12 02:09:27,675.675 INFO    ] Launching Daemon at Fri Jun 12 02:09:27 IST 2026
[2026-06-12 02:09:27,686.686 INFO    ] ================================================
[2026-06-12 02:09:28,030.030 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 02:09:28
[2026-06-12 02:09:28,347.347 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 02:09:28,486.486 INFO    ] Initializing speech engine...
[2026-06-12 02:09:28,496.496 INFO    ] 2026-06-12 02:09:28
[2026-06-12 02:09:28,703.703 INFO    ] 2026-06-12 02:09:28
[2026-06-12 02:09:28,733.733 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 02:09:28,920.920 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 02:09:28,924.924 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 02:09:29,055.055 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 02:09:29,116.116 INFO    ] time= 12/06/2026 02:09:29
[2026-06-12 02:09:29,152.152 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 02:09:29,157.157 INFO    ] Checking for existing commands in stream...
[2026-06-12 02:09:29,228.228 INFO    ] No existing commands found in stream
[2026-06-12 02:09:34,239.239 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 02:09:34,242.242 INFO    ] Waiting 1.84 seconds before fallback handling...
[2026-06-12 02:09:36,474.474 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 02:09:36,475.475 INFO    ] Checking for system updates...
[2026-06-12 02:09:36,496.496 INFO    ] 200
[2026-06-12 02:09:36,497.497 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:09:36,529.529 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 02:09:36,531.531 INFO    ] No update needed
[2026-06-12 02:09:36,532.532 INFO    ] Checking for camera pi updates...
[2026-06-12 02:09:36,553.553 INFO    ] 200
[2026-06-12 02:09:36,555.555 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:09:36,580.580 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 02:09:36,633.633 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 02:09:36,634.634 INFO    ] No camera update needed
[2026-06-12 02:09:36,635.635 INFO    ] Script finished. Safe exiting...
[2026-06-12 02:09:36,636.636 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 02:09:36,639.639 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 02:09:36,642.642 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 02:09:38,682.682 INFO    ] ================================================
[2026-06-12 02:09:38,697.697 INFO    ] Launching Daemon at Fri Jun 12 02:09:38 IST 2026
[2026-06-12 02:09:38,708.708 INFO    ] ================================================
[2026-06-12 02:09:39,042.042 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 02:09:39
[2026-06-12 02:09:39,354.354 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 02:09:39,484.484 INFO    ] Initializing speech engine...
[2026-06-12 02:09:39,488.488 INFO    ] 2026-06-12 02:09:39
[2026-06-12 02:09:39,705.705 INFO    ] 2026-06-12 02:09:39
[2026-06-12 02:09:39,734.734 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 02:09:39,868.868 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 02:09:39,923.923 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 02:09:40,054.054 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 02:09:40,110.110 INFO    ] time= 12/06/2026 02:09:40
[2026-06-12 02:09:40,146.146 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 02:09:40,156.156 INFO    ] Checking for existing commands in stream...
[2026-06-12 02:09:40,229.229 INFO    ] No existing commands found in stream
[2026-06-12 02:09:45,237.237 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 02:09:45,240.240 INFO    ] Waiting 0.55 seconds before fallback handling...
[2026-06-12 02:09:46,136.136 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 02:09:46,137.137 INFO    ] Checking for system updates...
[2026-06-12 02:09:46,158.158 INFO    ] 200
[2026-06-12 02:09:46,160.160 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:09:46,192.192 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 02:09:46,194.194 INFO    ] No update needed
[2026-06-12 02:09:46,195.195 INFO    ] Checking for camera pi updates...
[2026-06-12 02:09:46,214.214 INFO    ] 200
[2026-06-12 02:09:46,215.215 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:09:46,240.240 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 02:09:46,281.281 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 02:09:46,282.282 INFO    ] No camera update needed
[2026-06-12 02:09:46,283.283 INFO    ] Script finished. Safe exiting...
[2026-06-12 02:09:46,285.285 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 02:09:46,287.287 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 02:09:46,290.290 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 02:09:48,330.330 INFO    ] ================================================
[2026-06-12 02:09:48,345.345 INFO    ] Launching Daemon at Fri Jun 12 02:09:48 IST 2026
[2026-06-12 02:09:48,356.356 INFO    ] ================================================
[2026-06-12 02:09:48,716.716 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 02:09:48
[2026-06-12 02:09:49,028.028 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 02:09:49,171.171 INFO    ] Initializing speech engine...
[2026-06-12 02:09:49,175.175 INFO    ] 2026-06-12 02:09:49
[2026-06-12 02:09:49,381.381 INFO    ] 2026-06-12 02:09:49
[2026-06-12 02:09:49,410.410 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 02:09:49,544.544 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 02:09:49,599.599 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 02:09:49,739.739 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 02:09:49,808.808 INFO    ] time= 12/06/2026 02:09:49
[2026-06-12 02:09:49,832.832 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 02:09:49,839.839 INFO    ] Checking for existing commands in stream...
[2026-06-12 02:09:49,906.906 INFO    ] No existing commands found in stream
[2026-06-12 02:09:54,925.925 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 02:09:54,928.928 INFO    ] Waiting 1.29 seconds before fallback handling...
[2026-06-12 02:09:56,647.647 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 02:09:56,648.648 INFO    ] Checking for system updates...
[2026-06-12 02:09:56,670.670 INFO    ] 200
[2026-06-12 02:09:56,672.672 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:09:56,702.702 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 02:09:56,704.704 INFO    ] No update needed
[2026-06-12 02:09:56,705.705 INFO    ] Checking for camera pi updates...
[2026-06-12 02:09:56,725.725 INFO    ] 200
[2026-06-12 02:09:56,727.727 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:09:56,751.751 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 02:09:56,793.793 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 02:09:56,795.795 INFO    ] No camera update needed
[2026-06-12 02:09:56,796.796 INFO    ] Script finished. Safe exiting...
[2026-06-12 02:09:56,797.797 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 02:09:56,801.801 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 02:09:56,804.804 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 02:09:58,842.842 INFO    ] ================================================
[2026-06-12 02:09:58,857.857 INFO    ] Launching Daemon at Fri Jun 12 02:09:58 IST 2026
[2026-06-12 02:09:58,868.868 INFO    ] ================================================
[2026-06-12 02:09:59,232.232 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 02:09:59
[2026-06-12 02:09:59,548.548 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 02:09:59,692.692 INFO    ] Initializing speech engine...
[2026-06-12 02:09:59,697.697 INFO    ] 2026-06-12 02:09:59
[2026-06-12 02:09:59,902.902 INFO    ] 2026-06-12 02:09:59
[2026-06-12 02:09:59,930.930 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 02:10:00,113.113 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 02:10:00,123.123 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 02:10:00,267.267 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 02:10:00,320.320 INFO    ] time= 12/06/2026 02:10:00
[2026-06-12 02:10:00,341.341 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 02:10:00,348.348 INFO    ] Checking for existing commands in stream...
[2026-06-12 02:10:00,414.414 INFO    ] No existing commands found in stream
[2026-06-12 02:10:05,428.428 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 02:10:05,431.431 INFO    ] Waiting 0.47 seconds before fallback handling...
[2026-06-12 02:10:09,063.063 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 02:10:09,065.065 INFO    ] Checking for system updates...
[2026-06-12 02:10:09,102.102 INFO    ] 200
[2026-06-12 02:10:09,105.105 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:10:09,158.158 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 02:10:09,160.160 INFO    ] No update needed
[2026-06-12 02:10:09,163.163 INFO    ] Checking for camera pi updates...
[2026-06-12 02:10:09,186.186 INFO    ] 200
[2026-06-12 02:10:09,187.187 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:10:09,213.213 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 02:10:09,257.257 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 02:10:09,259.259 INFO    ] No camera update needed
[2026-06-12 02:10:09,260.260 INFO    ] Script finished. Safe exiting...
[2026-06-12 02:10:09,262.262 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 02:10:09,264.264 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 02:10:09,267.267 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 02:10:11,307.307 INFO    ] ================================================
[2026-06-12 02:10:11,322.322 INFO    ] Launching Daemon at Fri Jun 12 02:10:11 IST 2026
[2026-06-12 02:10:11,334.334 INFO    ] ================================================
[2026-06-12 02:10:11,680.680 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 02:10:11
[2026-06-12 02:10:11,997.997 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 02:10:12,141.141 INFO    ] Initializing speech engine...
[2026-06-12 02:10:12,149.149 INFO    ] 2026-06-12 02:10:12
[2026-06-12 02:10:12,371.371 INFO    ] 2026-06-12 02:10:12
[2026-06-12 02:10:12,403.403 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 02:10:12,552.552 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 02:10:12,554.554 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 02:10:12,715.715 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 02:10:12,743.743 INFO    ] time= 12/06/2026 02:10:12
[2026-06-12 02:10:12,810.810 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 02:10:12,834.834 INFO    ] Checking for existing commands in stream...
[2026-06-12 02:10:12,905.905 INFO    ] No existing commands found in stream
[2026-06-12 02:10:17,919.919 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 02:10:17,922.922 INFO    ] Waiting 1.30 seconds before fallback handling...
[2026-06-12 02:10:19,588.588 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 02:10:19,590.590 INFO    ] Checking for system updates...
[2026-06-12 02:10:19,612.612 INFO    ] 200
[2026-06-12 02:10:19,613.613 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:10:19,646.646 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 02:10:19,648.648 INFO    ] No update needed
[2026-06-12 02:10:19,649.649 INFO    ] Checking for camera pi updates...
[2026-06-12 02:10:19,669.669 INFO    ] 200
[2026-06-12 02:10:19,670.670 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:10:19,696.696 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 02:10:19,748.748 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 02:10:19,750.750 INFO    ] No camera update needed
[2026-06-12 02:10:19,751.751 INFO    ] Script finished. Safe exiting...
[2026-06-12 02:10:19,753.753 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 02:10:19,756.756 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 02:10:19,758.758 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 02:10:21,798.798 INFO    ] ================================================
[2026-06-12 02:10:21,813.813 INFO    ] Launching Daemon at Fri Jun 12 02:10:21 IST 2026
[2026-06-12 02:10:21,824.824 INFO    ] ================================================
[2026-06-12 02:10:22,180.180 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 02:10:22
[2026-06-12 02:10:22,491.491 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 02:10:22,634.634 INFO    ] Initializing speech engine...
[2026-06-12 02:10:22,639.639 INFO    ] 2026-06-12 02:10:22
[2026-06-12 02:10:22,843.843 INFO    ] 2026-06-12 02:10:22
[2026-06-12 02:10:22,872.872 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 02:10:23,054.054 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 02:10:23,063.063 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 02:10:23,197.197 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 02:10:23,259.259 INFO    ] time= 12/06/2026 02:10:23
[2026-06-12 02:10:23,282.282 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 02:10:23,289.289 INFO    ] Checking for existing commands in stream...
[2026-06-12 02:10:23,356.356 INFO    ] No existing commands found in stream
[2026-06-12 02:10:28,370.370 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 02:10:28,373.373 INFO    ] Waiting 3.19 seconds before fallback handling...
[2026-06-12 02:10:31,920.920 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 02:10:31,921.921 INFO    ] Checking for system updates...
[2026-06-12 02:10:31,944.944 INFO    ] 200
[2026-06-12 02:10:31,946.946 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:10:31,980.980 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 02:10:31,981.981 INFO    ] No update needed
[2026-06-12 02:10:31,983.983 INFO    ] Checking for camera pi updates...
[2026-06-12 02:10:32,006.006 INFO    ] 200
[2026-06-12 02:10:32,008.008 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:10:32,034.034 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 02:10:32,064.064 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 02:10:32,066.066 INFO    ] No camera update needed
[2026-06-12 02:10:32,067.067 INFO    ] Script finished. Safe exiting...
[2026-06-12 02:10:32,069.069 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 02:10:32,073.073 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 02:10:32,076.076 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 02:10:34,108.108 INFO    ] ================================================
[2026-06-12 02:10:34,124.124 INFO    ] Launching Daemon at Fri Jun 12 02:10:34 IST 2026
[2026-06-12 02:10:34,134.134 INFO    ] ================================================
[2026-06-12 02:10:34,498.498 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 02:10:34
[2026-06-12 02:10:34,810.810 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 02:10:34,940.940 INFO    ] Initializing speech engine...
[2026-06-12 02:10:34,948.948 INFO    ] 2026-06-12 02:10:34
[2026-06-12 02:10:35,160.160 INFO    ] 2026-06-12 02:10:35
[2026-06-12 02:10:35,188.188 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 02:10:35,371.371 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 02:10:35,380.380 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 02:10:35,510.510 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 02:10:35,577.577 INFO    ] time= 12/06/2026 02:10:35
[2026-06-12 02:10:35,601.601 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 02:10:35,607.607 INFO    ] Checking for existing commands in stream...
[2026-06-12 02:10:35,673.673 INFO    ] No existing commands found in stream
[2026-06-12 02:10:40,683.683 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 02:10:40,686.686 INFO    ] Waiting 1.51 seconds before fallback handling...
[2026-06-12 02:10:42,553.553 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 02:10:42,555.555 INFO    ] Checking for system updates...
[2026-06-12 02:10:42,576.576 INFO    ] 200
[2026-06-12 02:10:42,577.577 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:10:42,611.611 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 02:10:42,612.612 INFO    ] No update needed
[2026-06-12 02:10:42,613.613 INFO    ] Checking for camera pi updates...
[2026-06-12 02:10:42,637.637 INFO    ] 200
[2026-06-12 02:10:42,638.638 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:10:42,662.662 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 02:10:42,713.713 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 02:10:42,715.715 INFO    ] No camera update needed
[2026-06-12 02:10:42,716.716 INFO    ] Script finished. Safe exiting...
[2026-06-12 02:10:42,718.718 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 02:10:42,721.721 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 02:10:42,724.724 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 02:10:44,765.765 INFO    ] ================================================
[2026-06-12 02:10:44,780.780 INFO    ] Launching Daemon at Fri Jun 12 02:10:44 IST 2026
[2026-06-12 02:10:44,792.792 INFO    ] ================================================
[2026-06-12 02:10:45,145.145 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 02:10:45
[2026-06-12 02:10:45,461.461 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 02:10:45,592.592 INFO    ] Initializing speech engine...
[2026-06-12 02:10:45,601.601 INFO    ] 2026-06-12 02:10:45
[2026-06-12 02:10:45,816.816 INFO    ] 2026-06-12 02:10:45
[2026-06-12 02:10:45,845.845 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 02:10:46,005.005 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 02:10:46,035.035 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 02:10:46,173.173 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 02:10:46,241.241 INFO    ] time= 12/06/2026 02:10:46
[2026-06-12 02:10:46,266.266 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 02:10:46,272.272 INFO    ] Checking for existing commands in stream...
[2026-06-12 02:10:46,340.340 INFO    ] No existing commands found in stream
[2026-06-12 02:10:51,354.354 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 02:10:51,357.357 INFO    ] Waiting 3.34 seconds before fallback handling...
[2026-06-12 02:10:55,066.066 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 02:10:55,068.068 INFO    ] Checking for system updates...
[2026-06-12 02:10:55,089.089 INFO    ] 200
[2026-06-12 02:10:55,090.090 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:10:55,123.123 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 02:10:55,125.125 INFO    ] No update needed
[2026-06-12 02:10:55,126.126 INFO    ] Checking for camera pi updates...
[2026-06-12 02:10:55,147.147 INFO    ] 200
[2026-06-12 02:10:55,148.148 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:10:55,171.171 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 02:10:55,221.221 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 02:10:55,223.223 INFO    ] No camera update needed
[2026-06-12 02:10:55,224.224 INFO    ] Script finished. Safe exiting...
[2026-06-12 02:10:55,225.225 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 02:10:55,228.228 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 02:10:55,231.231 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 02:10:57,270.270 INFO    ] ================================================
[2026-06-12 02:10:57,285.285 INFO    ] Launching Daemon at Fri Jun 12 02:10:57 IST 2026
[2026-06-12 02:10:57,296.296 INFO    ] ================================================
[2026-06-12 02:10:57,672.672 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 02:10:57
[2026-06-12 02:10:57,987.987 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 02:10:58,120.120 INFO    ] Initializing speech engine...
[2026-06-12 02:10:58,133.133 INFO    ] 2026-06-12 02:10:58
[2026-06-12 02:10:58,338.338 INFO    ] 2026-06-12 02:10:58
[2026-06-12 02:10:58,367.367 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 02:10:58,552.552 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 02:10:58,561.561 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 02:10:58,705.705 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 02:10:58,756.756 INFO    ] time= 12/06/2026 02:10:58
[2026-06-12 02:10:58,780.780 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 02:10:58,786.786 INFO    ] Checking for existing commands in stream...
[2026-06-12 02:10:58,852.852 INFO    ] No existing commands found in stream
[2026-06-12 02:11:03,876.876 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 02:11:03,879.879 INFO    ] Waiting 3.02 seconds before fallback handling...
[2026-06-12 02:11:07,256.256 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 02:11:07,258.258 INFO    ] Checking for system updates...
[2026-06-12 02:11:07,278.278 INFO    ] 200
[2026-06-12 02:11:07,280.280 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:11:07,310.310 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 02:11:07,312.312 INFO    ] No update needed
[2026-06-12 02:11:07,313.313 INFO    ] Checking for camera pi updates...
[2026-06-12 02:11:07,333.333 INFO    ] 200
[2026-06-12 02:11:07,334.334 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:11:07,361.361 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 02:11:07,408.408 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 02:11:07,409.409 INFO    ] No camera update needed
[2026-06-12 02:11:07,411.411 INFO    ] Script finished. Safe exiting...
[2026-06-12 02:11:07,412.412 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 02:11:07,415.415 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 02:11:07,418.418 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 02:11:09,456.456 INFO    ] ================================================
[2026-06-12 02:11:09,472.472 INFO    ] Launching Daemon at Fri Jun 12 02:11:09 IST 2026
[2026-06-12 02:11:09,483.483 INFO    ] ================================================
[2026-06-12 02:11:09,849.849 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 02:11:09
[2026-06-12 02:11:10,187.187 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 02:11:10,342.342 INFO    ] Initializing speech engine...
[2026-06-12 02:11:10,348.348 INFO    ] 2026-06-12 02:11:10
[2026-06-12 02:11:10,557.557 INFO    ] 2026-06-12 02:11:10
[2026-06-12 02:11:10,588.588 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 02:11:10,714.714 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 02:11:10,778.778 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 02:11:10,919.919 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 02:11:10,988.988 INFO    ] time= 12/06/2026 02:11:10
[2026-06-12 02:11:11,013.013 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 02:11:11,019.019 INFO    ] Checking for existing commands in stream...
[2026-06-12 02:11:11,088.088 INFO    ] No existing commands found in stream
[2026-06-12 02:11:16,097.097 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 02:11:16,101.101 INFO    ] Waiting 3.36 seconds before fallback handling...
[2026-06-12 02:11:19,824.824 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 02:11:19,826.826 INFO    ] Checking for system updates...
[2026-06-12 02:11:19,848.848 INFO    ] 200
[2026-06-12 02:11:19,850.850 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:11:19,881.881 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 02:11:19,882.882 INFO    ] No update needed
[2026-06-12 02:11:19,884.884 INFO    ] Checking for camera pi updates...
[2026-06-12 02:11:19,903.903 INFO    ] 200
[2026-06-12 02:11:19,905.905 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:11:19,933.933 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 02:11:19,977.977 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 02:11:19,978.978 INFO    ] No camera update needed
[2026-06-12 02:11:19,980.980 INFO    ] Script finished. Safe exiting...
[2026-06-12 02:11:19,981.981 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 02:11:19,984.984 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 02:11:19,987.987 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 02:11:22,026.026 INFO    ] ================================================
[2026-06-12 02:11:22,042.042 INFO    ] Launching Daemon at Fri Jun 12 02:11:22 IST 2026
[2026-06-12 02:11:22,054.054 INFO    ] ================================================
[2026-06-12 02:11:22,403.403 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 02:11:22
[2026-06-12 02:11:22,743.743 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 02:11:22,897.897 INFO    ] Initializing speech engine...
[2026-06-12 02:11:22,902.902 INFO    ] 2026-06-12 02:11:22
[2026-06-12 02:11:23,108.108 INFO    ] 2026-06-12 02:11:23
[2026-06-12 02:11:23,137.137 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 02:11:23,321.321 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 02:11:23,331.331 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 02:11:23,470.470 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 02:11:23,529.529 INFO    ] time= 12/06/2026 02:11:23
[2026-06-12 02:11:23,551.551 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 02:11:23,558.558 INFO    ] Checking for existing commands in stream...
[2026-06-12 02:11:23,625.625 INFO    ] No existing commands found in stream
[2026-06-12 02:11:28,649.649 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 02:11:28,653.653 INFO    ] Waiting 0.52 seconds before fallback handling...
[2026-06-12 02:11:29,569.569 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 02:11:29,571.571 INFO    ] Checking for system updates...
[2026-06-12 02:11:29,593.593 INFO    ] 200
[2026-06-12 02:11:29,595.595 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:11:29,628.628 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 02:11:29,629.629 INFO    ] No update needed
[2026-06-12 02:11:29,631.631 INFO    ] Checking for camera pi updates...
[2026-06-12 02:11:29,651.651 INFO    ] 200
[2026-06-12 02:11:29,653.653 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:11:29,678.678 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 02:11:29,816.816 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 02:11:29,818.818 INFO    ] No camera update needed
[2026-06-12 02:11:29,819.819 INFO    ] Script finished. Safe exiting...
[2026-06-12 02:11:29,821.821 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 02:11:29,824.824 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 02:11:29,827.827 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 02:11:31,857.857 INFO    ] ================================================
[2026-06-12 02:11:31,866.866 INFO    ] Launching Daemon at Fri Jun 12 02:11:31 IST 2026
[2026-06-12 02:11:31,872.872 INFO    ] ================================================
[2026-06-12 02:11:32,189.189 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 02:11:32
[2026-06-12 02:11:32,500.500 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 02:11:32,643.643 INFO    ] Initializing speech engine...
[2026-06-12 02:11:32,648.648 INFO    ] 2026-06-12 02:11:32
[2026-06-12 02:11:32,851.851 INFO    ] 2026-06-12 02:11:32
[2026-06-12 02:11:32,880.880 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 02:11:33,064.064 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 02:11:33,073.073 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 02:11:33,214.214 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 02:11:33,272.272 INFO    ] time= 12/06/2026 02:11:33
[2026-06-12 02:11:33,294.294 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 02:11:33,301.301 INFO    ] Checking for existing commands in stream...
[2026-06-12 02:11:33,367.367 INFO    ] No existing commands found in stream
[2026-06-12 02:11:38,376.376 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 02:11:38,379.379 INFO    ] Waiting 1.64 seconds before fallback handling...
[2026-06-12 02:11:40,399.399 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 02:11:40,401.401 INFO    ] Checking for system updates...
[2026-06-12 02:11:40,423.423 INFO    ] 200
[2026-06-12 02:11:40,425.425 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:11:40,460.460 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 02:11:40,462.462 INFO    ] No update needed
[2026-06-12 02:11:40,463.463 INFO    ] Checking for camera pi updates...
[2026-06-12 02:11:40,484.484 INFO    ] 200
[2026-06-12 02:11:40,485.485 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:11:40,509.509 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 02:11:40,564.564 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 02:11:40,565.565 INFO    ] No camera update needed
[2026-06-12 02:11:40,567.567 INFO    ] Script finished. Safe exiting...
[2026-06-12 02:11:40,568.568 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 02:11:40,572.572 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 02:11:40,575.575 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 02:11:42,616.616 INFO    ] ================================================
[2026-06-12 02:11:42,632.632 INFO    ] Launching Daemon at Fri Jun 12 02:11:42 IST 2026
[2026-06-12 02:11:42,643.643 INFO    ] ================================================
[2026-06-12 02:11:43,008.008 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 02:11:43
[2026-06-12 02:11:43,325.325 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 02:11:43,463.463 INFO    ] Initializing speech engine...
[2026-06-12 02:11:43,474.474 INFO    ] 2026-06-12 02:11:43
[2026-06-12 02:11:43,677.677 INFO    ] 2026-06-12 02:11:43
[2026-06-12 02:11:43,706.706 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 02:11:43,891.891 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 02:11:43,900.900 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 02:11:44,023.023 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 02:11:44,068.068 INFO    ] time= 12/06/2026 02:11:44
[2026-06-12 02:11:44,112.112 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 02:11:44,122.122 INFO    ] Checking for existing commands in stream...
[2026-06-12 02:11:44,194.194 INFO    ] No existing commands found in stream
[2026-06-12 02:11:49,208.208 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 02:11:49,211.211 INFO    ] Waiting 3.99 seconds before fallback handling...
[2026-06-12 02:11:53,562.562 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 02:11:53,563.563 INFO    ] Checking for system updates...
[2026-06-12 02:11:53,584.584 INFO    ] 200
[2026-06-12 02:11:53,585.585 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:11:53,619.619 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 02:11:53,621.621 INFO    ] No update needed
[2026-06-12 02:11:53,622.622 INFO    ] Checking for camera pi updates...
[2026-06-12 02:11:53,643.643 INFO    ] 200
[2026-06-12 02:11:53,645.645 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:11:53,668.668 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 02:11:53,711.711 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 02:11:53,713.713 INFO    ] No camera update needed
[2026-06-12 02:11:53,714.714 INFO    ] Script finished. Safe exiting...
[2026-06-12 02:11:53,715.715 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 02:11:53,718.718 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 02:11:53,721.721 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 02:11:55,764.764 INFO    ] ================================================
[2026-06-12 02:11:55,779.779 INFO    ] Launching Daemon at Fri Jun 12 02:11:55 IST 2026
[2026-06-12 02:11:55,790.790 INFO    ] ================================================
[2026-06-12 02:11:56,167.167 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 02:11:56
[2026-06-12 02:11:56,484.484 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 02:11:56,619.619 INFO    ] Initializing speech engine...
[2026-06-12 02:11:56,628.628 INFO    ] 2026-06-12 02:11:56
[2026-06-12 02:11:56,856.856 INFO    ] 2026-06-12 02:11:56
[2026-06-12 02:11:56,886.886 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 02:11:57,084.084 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 02:11:57,088.088 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 02:11:57,230.230 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 02:11:57,281.281 INFO    ] time= 12/06/2026 02:11:57
[2026-06-12 02:11:57,320.320 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 02:11:57,337.337 INFO    ] Checking for existing commands in stream...
[2026-06-12 02:11:57,442.442 INFO    ] No existing commands found in stream
[2026-06-12 02:12:02,450.450 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 02:12:02,451.451 INFO    ] Waiting 3.18 seconds before fallback handling...
[2026-06-12 02:12:05,998.998 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 02:12:05,999.999 INFO    ] Checking for system updates...
[2026-06-12 02:12:06,021.021 INFO    ] 200
[2026-06-12 02:12:06,022.022 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:12:06,055.055 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 02:12:06,057.057 INFO    ] No update needed
[2026-06-12 02:12:06,058.058 INFO    ] Checking for camera pi updates...
[2026-06-12 02:12:06,078.078 INFO    ] 200
[2026-06-12 02:12:06,080.080 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:12:06,103.103 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 02:12:06,161.161 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 02:12:06,162.162 INFO    ] No camera update needed
[2026-06-12 02:12:06,163.163 INFO    ] Script finished. Safe exiting...
[2026-06-12 02:12:06,164.164 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 02:12:06,167.167 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 02:12:06,170.170 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 02:12:08,211.211 INFO    ] ================================================
[2026-06-12 02:12:08,226.226 INFO    ] Launching Daemon at Fri Jun 12 02:12:08 IST 2026
[2026-06-12 02:12:08,237.237 INFO    ] ================================================
[2026-06-12 02:12:08,589.589 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 02:12:08
[2026-06-12 02:12:08,902.902 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 02:12:09,033.033 INFO    ] Initializing speech engine...
[2026-06-12 02:12:09,036.036 INFO    ] 2026-06-12 02:12:09
[2026-06-12 02:12:09,252.252 INFO    ] 2026-06-12 02:12:09
[2026-06-12 02:12:09,282.282 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 02:12:09,463.463 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 02:12:09,466.466 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 02:12:09,611.611 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 02:12:09,667.667 INFO    ] time= 12/06/2026 02:12:09
[2026-06-12 02:12:09,691.691 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 02:12:09,697.697 INFO    ] Checking for existing commands in stream...
[2026-06-12 02:12:09,763.763 INFO    ] No existing commands found in stream
[2026-06-12 02:12:14,777.777 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 02:12:14,780.780 INFO    ] Waiting 2.61 seconds before fallback handling...
[2026-06-12 02:12:17,764.764 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 02:12:17,765.765 INFO    ] Checking for system updates...
[2026-06-12 02:12:17,786.786 INFO    ] 200
[2026-06-12 02:12:17,787.787 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:12:17,820.820 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 02:12:17,821.821 INFO    ] No update needed
[2026-06-12 02:12:17,822.822 INFO    ] Checking for camera pi updates...
[2026-06-12 02:12:17,842.842 INFO    ] 200
[2026-06-12 02:12:17,843.843 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:12:17,868.868 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 02:12:17,909.909 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 02:12:17,910.910 INFO    ] No camera update needed
[2026-06-12 02:12:17,912.912 INFO    ] Script finished. Safe exiting...
[2026-06-12 02:12:17,913.913 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 02:12:17,916.916 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 02:12:17,918.918 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 02:12:19,957.957 INFO    ] ================================================
[2026-06-12 02:12:19,973.973 INFO    ] Launching Daemon at Fri Jun 12 02:12:19 IST 2026
[2026-06-12 02:12:19,984.984 INFO    ] ================================================
[2026-06-12 02:12:20,326.326 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 02:12:20
[2026-06-12 02:12:20,640.640 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 02:12:20,772.772 INFO    ] Initializing speech engine...
[2026-06-12 02:12:20,777.777 INFO    ] 2026-06-12 02:12:20
[2026-06-12 02:12:20,971.971 INFO    ] 2026-06-12 02:12:20
[2026-06-12 02:12:21,017.017 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 02:12:21,175.175 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 02:12:21,215.215 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 02:12:21,388.388 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 02:12:21,460.460 INFO    ] time= 12/06/2026 02:12:21
[2026-06-12 02:12:21,495.495 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 02:12:21,497.497 INFO    ] Checking for existing commands in stream...
[2026-06-12 02:12:21,574.574 INFO    ] No existing commands found in stream
[2026-06-12 02:12:26,583.583 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 02:12:26,586.586 INFO    ] Waiting 2.13 seconds before fallback handling...
[2026-06-12 02:12:29,103.103 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 02:12:29,105.105 INFO    ] Checking for system updates...
[2026-06-12 02:12:29,127.127 INFO    ] 200
[2026-06-12 02:12:29,129.129 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:12:29,159.159 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 02:12:29,161.161 INFO    ] No update needed
[2026-06-12 02:12:29,162.162 INFO    ] Checking for camera pi updates...
[2026-06-12 02:12:29,182.182 INFO    ] 200
[2026-06-12 02:12:29,183.183 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:12:29,208.208 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 02:12:29,260.260 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 02:12:29,261.261 INFO    ] No camera update needed
[2026-06-12 02:12:29,263.263 INFO    ] Script finished. Safe exiting...
[2026-06-12 02:12:29,264.264 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 02:12:29,267.267 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 02:12:29,270.270 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 02:12:31,304.304 INFO    ] ================================================
[2026-06-12 02:12:31,317.317 INFO    ] Launching Daemon at Fri Jun 12 02:12:31 IST 2026
[2026-06-12 02:12:31,323.323 INFO    ] ================================================
[2026-06-12 02:12:31,662.662 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 02:12:31
[2026-06-12 02:12:32,014.014 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 02:12:32,165.165 INFO    ] Initializing speech engine...
[2026-06-12 02:12:32,176.176 INFO    ] 2026-06-12 02:12:32
[2026-06-12 02:12:32,391.391 INFO    ] 2026-06-12 02:12:32
[2026-06-12 02:12:32,420.420 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 02:12:32,561.561 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 02:12:32,562.562 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 02:12:32,679.679 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 02:12:32,711.711 INFO    ] time= 12/06/2026 02:12:32
[2026-06-12 02:12:32,745.745 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 02:12:32,785.785 INFO    ] Checking for existing commands in stream...
[2026-06-12 02:12:32,910.910 INFO    ] No existing commands found in stream
[2026-06-12 02:12:37,921.921 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 02:12:37,924.924 INFO    ] Waiting 1.59 seconds before fallback handling...
[2026-06-12 02:12:39,884.884 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 02:12:39,886.886 INFO    ] Checking for system updates...
[2026-06-12 02:12:39,906.906 INFO    ] 200
[2026-06-12 02:12:39,908.908 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:12:39,937.937 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 02:12:39,939.939 INFO    ] No update needed
[2026-06-12 02:12:39,940.940 INFO    ] Checking for camera pi updates...
[2026-06-12 02:12:39,959.959 INFO    ] 200
[2026-06-12 02:12:39,961.961 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:12:39,984.984 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 02:12:40,029.029 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 02:12:40,031.031 INFO    ] No camera update needed
[2026-06-12 02:12:40,032.032 INFO    ] Script finished. Safe exiting...
[2026-06-12 02:12:40,033.033 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 02:12:40,036.036 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 02:12:40,039.039 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 02:12:42,077.077 INFO    ] ================================================
[2026-06-12 02:12:42,093.093 INFO    ] Launching Daemon at Fri Jun 12 02:12:42 IST 2026
[2026-06-12 02:12:42,103.103 INFO    ] ================================================
[2026-06-12 02:12:42,453.453 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 02:12:42
[2026-06-12 02:12:42,791.791 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 02:12:42,944.944 INFO    ] Initializing speech engine...
[2026-06-12 02:12:42,950.950 INFO    ] 2026-06-12 02:12:42
[2026-06-12 02:12:43,157.157 INFO    ] 2026-06-12 02:12:43
[2026-06-12 02:12:43,186.186 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 02:12:43,374.374 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 02:12:43,385.385 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 02:12:43,523.523 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 02:12:43,587.587 INFO    ] time= 12/06/2026 02:12:43
[2026-06-12 02:12:43,630.630 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 02:12:43,663.663 INFO    ] Checking for existing commands in stream...
[2026-06-12 02:12:43,760.760 INFO    ] No existing commands found in stream
[2026-06-12 02:12:48,775.775 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 02:12:48,778.778 INFO    ] Waiting 0.73 seconds before fallback handling...
[2026-06-12 02:12:49,885.885 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 02:12:49,886.886 INFO    ] Checking for system updates...
[2026-06-12 02:12:49,909.909 INFO    ] 200
[2026-06-12 02:12:49,911.911 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:12:49,945.945 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 02:12:49,946.946 INFO    ] No update needed
[2026-06-12 02:12:49,947.947 INFO    ] Checking for camera pi updates...
[2026-06-12 02:12:49,967.967 INFO    ] 200
[2026-06-12 02:12:49,969.969 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:12:49,993.993 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 02:12:50,044.044 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 02:12:50,045.045 INFO    ] No camera update needed
[2026-06-12 02:12:50,047.047 INFO    ] Script finished. Safe exiting...
[2026-06-12 02:12:50,048.048 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 02:12:50,052.052 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 02:12:50,055.055 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 02:12:52,092.092 INFO    ] ================================================
[2026-06-12 02:12:52,108.108 INFO    ] Launching Daemon at Fri Jun 12 02:12:52 IST 2026
[2026-06-12 02:12:52,118.118 INFO    ] ================================================
[2026-06-12 02:12:52,476.476 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 02:12:52
[2026-06-12 02:12:52,816.816 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 02:12:52,955.955 INFO    ] Initializing speech engine...
[2026-06-12 02:12:52,969.969 INFO    ] 2026-06-12 02:12:52
[2026-06-12 02:12:53,180.180 INFO    ] 2026-06-12 02:12:53
[2026-06-12 02:12:53,209.209 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 02:12:53,394.394 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 02:12:53,404.404 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 02:12:53,539.539 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 02:12:53,602.602 INFO    ] time= 12/06/2026 02:12:53
[2026-06-12 02:12:53,626.626 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 02:12:53,633.633 INFO    ] Checking for existing commands in stream...
[2026-06-12 02:12:53,700.700 INFO    ] No existing commands found in stream
[2026-06-12 02:12:58,710.710 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 02:12:58,713.713 INFO    ] Waiting 0.43 seconds before fallback handling...
[2026-06-12 02:12:59,508.508 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 02:12:59,509.509 INFO    ] Checking for system updates...
[2026-06-12 02:12:59,530.530 INFO    ] 200
[2026-06-12 02:12:59,532.532 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:12:59,563.563 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 02:12:59,564.564 INFO    ] No update needed
[2026-06-12 02:12:59,565.565 INFO    ] Checking for camera pi updates...
[2026-06-12 02:12:59,586.586 INFO    ] 200
[2026-06-12 02:12:59,588.588 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:12:59,615.615 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 02:12:59,672.672 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 02:12:59,673.673 INFO    ] No camera update needed
[2026-06-12 02:12:59,674.674 INFO    ] Script finished. Safe exiting...
[2026-06-12 02:12:59,676.676 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 02:12:59,679.679 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 02:12:59,681.681 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 02:13:01,722.722 INFO    ] ================================================
[2026-06-12 02:13:01,744.744 INFO    ] Launching Daemon at Fri Jun 12 02:13:01 IST 2026
[2026-06-12 02:13:01,758.758 INFO    ] ================================================
[2026-06-12 02:13:02,172.172 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 02:13:02
[2026-06-12 02:13:02,567.567 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 02:13:02,720.720 INFO    ] Initializing speech engine...
[2026-06-12 02:13:02,725.725 INFO    ] 2026-06-12 02:13:02
[2026-06-12 02:13:02,928.928 INFO    ] 2026-06-12 02:13:02
[2026-06-12 02:13:02,956.956 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 02:13:03,108.108 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 02:13:03,141.141 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 02:13:03,276.276 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 02:13:03,340.340 INFO    ] time= 12/06/2026 02:13:03
[2026-06-12 02:13:03,367.367 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 02:13:03,374.374 INFO    ] Checking for existing commands in stream...
[2026-06-12 02:13:03,439.439 INFO    ] No existing commands found in stream
[2026-06-12 02:13:08,448.448 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 02:13:08,451.451 INFO    ] Waiting 3.59 seconds before fallback handling...
[2026-06-12 02:13:12,401.401 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 02:13:12,403.403 INFO    ] Checking for system updates...
[2026-06-12 02:13:12,423.423 INFO    ] 200
[2026-06-12 02:13:12,424.424 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:13:12,457.457 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 02:13:12,458.458 INFO    ] No update needed
[2026-06-12 02:13:12,459.459 INFO    ] Checking for camera pi updates...
[2026-06-12 02:13:12,481.481 INFO    ] 200
[2026-06-12 02:13:12,482.482 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:13:12,505.505 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 02:13:12,544.544 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 02:13:12,546.546 INFO    ] No camera update needed
[2026-06-12 02:13:12,547.547 INFO    ] Script finished. Safe exiting...
[2026-06-12 02:13:12,548.548 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 02:13:12,551.551 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 02:13:12,554.554 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 02:13:14,593.593 INFO    ] ================================================
[2026-06-12 02:13:14,609.609 INFO    ] Launching Daemon at Fri Jun 12 02:13:14 IST 2026
[2026-06-12 02:13:14,620.620 INFO    ] ================================================
[2026-06-12 02:13:14,967.967 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 02:13:14
[2026-06-12 02:13:15,302.302 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 02:13:15,454.454 INFO    ] Initializing speech engine...
[2026-06-12 02:13:15,459.459 INFO    ] 2026-06-12 02:13:15
[2026-06-12 02:13:15,667.667 INFO    ] 2026-06-12 02:13:15
[2026-06-12 02:13:15,696.696 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 02:13:15,840.840 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 02:13:15,884.884 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 02:13:16,014.014 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 02:13:16,065.065 INFO    ] time= 12/06/2026 02:13:16
[2026-06-12 02:13:16,113.113 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 02:13:16,119.119 INFO    ] Checking for existing commands in stream...
[2026-06-12 02:13:16,187.187 INFO    ] No existing commands found in stream
[2026-06-12 02:13:21,201.201 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 02:13:21,204.204 INFO    ] Waiting 1.20 seconds before fallback handling...
[2026-06-12 02:13:22,773.773 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 02:13:22,775.775 INFO    ] Checking for system updates...
[2026-06-12 02:13:22,796.796 INFO    ] 200
[2026-06-12 02:13:22,797.797 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:13:22,830.830 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 02:13:22,832.832 INFO    ] No update needed
[2026-06-12 02:13:22,833.833 INFO    ] Checking for camera pi updates...
[2026-06-12 02:13:22,852.852 INFO    ] 200
[2026-06-12 02:13:22,854.854 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:13:22,878.878 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 02:13:22,919.919 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 02:13:22,920.920 INFO    ] No camera update needed
[2026-06-12 02:13:22,922.922 INFO    ] Script finished. Safe exiting...
[2026-06-12 02:13:22,923.923 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 02:13:22,926.926 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 02:13:22,929.929 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 02:13:24,967.967 INFO    ] ================================================
[2026-06-12 02:13:24,983.983 INFO    ] Launching Daemon at Fri Jun 12 02:13:24 IST 2026
[2026-06-12 02:13:25,994.994 INFO    ] ================================================
[2026-06-12 02:13:25,371.371 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 02:13:25
[2026-06-12 02:13:25,702.702 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 02:13:25,853.853 INFO    ] Initializing speech engine...
[2026-06-12 02:13:25,856.856 INFO    ] 2026-06-12 02:13:25
[2026-06-12 02:13:26,061.061 INFO    ] 2026-06-12 02:13:26
[2026-06-12 02:13:26,089.089 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 02:13:26,273.273 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 02:13:26,283.283 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 02:13:26,411.411 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 02:13:26,470.470 INFO    ] time= 12/06/2026 02:13:26
[2026-06-12 02:13:26,501.501 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 02:13:26,508.508 INFO    ] Checking for existing commands in stream...
[2026-06-12 02:13:26,575.575 INFO    ] No existing commands found in stream
[2026-06-12 02:13:31,588.588 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 02:13:31,590.590 INFO    ] Waiting 3.62 seconds before fallback handling...
[2026-06-12 02:13:35,584.584 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 02:13:35,586.586 INFO    ] Checking for system updates...
[2026-06-12 02:13:35,608.608 INFO    ] 200
[2026-06-12 02:13:35,610.610 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:13:35,641.641 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 02:13:35,642.642 INFO    ] No update needed
[2026-06-12 02:13:35,644.644 INFO    ] Checking for camera pi updates...
[2026-06-12 02:13:35,664.664 INFO    ] 200
[2026-06-12 02:13:35,665.665 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:13:35,689.689 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 02:13:35,731.731 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 02:13:35,732.732 INFO    ] No camera update needed
[2026-06-12 02:13:35,733.733 INFO    ] Script finished. Safe exiting...
[2026-06-12 02:13:35,734.734 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 02:13:35,737.737 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 02:13:35,740.740 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 02:13:37,778.778 INFO    ] ================================================
[2026-06-12 02:13:37,794.794 INFO    ] Launching Daemon at Fri Jun 12 02:13:37 IST 2026
[2026-06-12 02:13:37,805.805 INFO    ] ================================================
[2026-06-12 02:13:38,162.162 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 02:13:38
[2026-06-12 02:13:38,494.494 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 02:13:38,644.644 INFO    ] Initializing speech engine...
[2026-06-12 02:13:38,649.649 INFO    ] 2026-06-12 02:13:38
[2026-06-12 02:13:38,854.854 INFO    ] 2026-06-12 02:13:38
[2026-06-12 02:13:38,883.883 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 02:13:39,066.066 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 02:13:39,076.076 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 02:13:39,204.204 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 02:13:39,271.271 INFO    ] time= 12/06/2026 02:13:39
[2026-06-12 02:13:39,295.295 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 02:13:39,302.302 INFO    ] Checking for existing commands in stream...
[2026-06-12 02:13:39,369.369 INFO    ] No existing commands found in stream
[2026-06-12 02:13:44,398.398 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 02:13:44,402.402 INFO    ] Waiting 1.37 seconds before fallback handling...
[2026-06-12 02:13:46,156.156 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 02:13:46,158.158 INFO    ] Checking for system updates...
[2026-06-12 02:13:46,178.178 INFO    ] 200
[2026-06-12 02:13:46,180.180 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:13:46,210.210 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 02:13:46,212.212 INFO    ] No update needed
[2026-06-12 02:13:46,213.213 INFO    ] Checking for camera pi updates...
[2026-06-12 02:13:46,233.233 INFO    ] 200
[2026-06-12 02:13:46,234.234 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:13:46,258.258 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 02:13:46,311.311 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 02:13:46,313.313 INFO    ] No camera update needed
[2026-06-12 02:13:46,314.314 INFO    ] Script finished. Safe exiting...
[2026-06-12 02:13:46,315.315 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 02:13:46,318.318 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 02:13:46,322.322 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 02:13:48,362.362 INFO    ] ================================================
[2026-06-12 02:13:48,378.378 INFO    ] Launching Daemon at Fri Jun 12 02:13:48 IST 2026
[2026-06-12 02:13:48,389.389 INFO    ] ================================================
[2026-06-12 02:13:48,713.713 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 02:13:48
[2026-06-12 02:13:49,024.024 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 02:13:49,156.156 INFO    ] Initializing speech engine...
[2026-06-12 02:13:49,166.166 INFO    ] 2026-06-12 02:13:49
[2026-06-12 02:13:49,390.390 INFO    ] 2026-06-12 02:13:49
[2026-06-12 02:13:49,420.420 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 02:13:49,615.615 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 02:13:49,619.619 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 02:13:49,757.757 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 02:13:49,793.793 INFO    ] time= 12/06/2026 02:13:49
[2026-06-12 02:13:49,840.840 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 02:13:49,863.863 INFO    ] Checking for existing commands in stream...
[2026-06-12 02:13:49,937.937 INFO    ] No existing commands found in stream
[2026-06-12 02:13:54,948.948 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 02:13:54,951.951 INFO    ] Waiting 1.01 seconds before fallback handling...
[2026-06-12 02:13:56,375.375 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 02:13:56,378.378 INFO    ] Checking for system updates...
[2026-06-12 02:13:56,418.418 INFO    ] 200
[2026-06-12 02:13:56,420.420 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:13:56,474.474 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 02:13:56,476.476 INFO    ] No update needed
[2026-06-12 02:13:56,479.479 INFO    ] Checking for camera pi updates...
[2026-06-12 02:13:56,515.515 INFO    ] 200
[2026-06-12 02:13:56,518.518 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:13:56,558.558 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 02:13:56,604.604 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 02:13:56,607.607 INFO    ] No camera update needed
[2026-06-12 02:13:56,609.609 INFO    ] Script finished. Safe exiting...
[2026-06-12 02:13:56,612.612 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 02:13:56,617.617 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 02:13:56,622.622 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 02:13:58,662.662 INFO    ] ================================================
[2026-06-12 02:13:58,679.679 INFO    ] Launching Daemon at Fri Jun 12 02:13:58 IST 2026
[2026-06-12 02:13:58,691.691 INFO    ] ================================================
[2026-06-12 02:13:59,028.028 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 02:13:59
[2026-06-12 02:13:59,341.341 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 02:13:59,470.470 INFO    ] Initializing speech engine...
[2026-06-12 02:13:59,478.478 INFO    ] 2026-06-12 02:13:59
[2026-06-12 02:13:59,688.688 INFO    ] 2026-06-12 02:13:59
[2026-06-12 02:13:59,717.717 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 02:13:59,900.900 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 02:13:59,904.904 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 02:14:00,039.039 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 02:14:00,106.106 INFO    ] time= 12/06/2026 02:14:00
[2026-06-12 02:14:00,129.129 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 02:14:00,136.136 INFO    ] Checking for existing commands in stream...
[2026-06-12 02:14:00,203.203 INFO    ] No existing commands found in stream
[2026-06-12 02:14:05,212.212 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 02:14:05,215.215 INFO    ] Waiting 1.20 seconds before fallback handling...
[2026-06-12 02:14:06,783.783 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 02:14:06,784.784 INFO    ] Checking for system updates...
[2026-06-12 02:14:06,805.805 INFO    ] 200
[2026-06-12 02:14:06,806.806 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:14:06,838.838 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 02:14:06,840.840 INFO    ] No update needed
[2026-06-12 02:14:06,841.841 INFO    ] Checking for camera pi updates...
[2026-06-12 02:14:06,861.861 INFO    ] 200
[2026-06-12 02:14:06,862.862 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:14:06,886.886 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 02:14:06,938.938 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 02:14:06,939.939 INFO    ] No camera update needed
[2026-06-12 02:14:06,940.940 INFO    ] Script finished. Safe exiting...
[2026-06-12 02:14:06,942.942 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 02:14:06,945.945 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 02:14:06,947.947 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 02:14:08,986.986 INFO    ] ================================================
[2026-06-12 02:14:09,002.002 INFO    ] Launching Daemon at Fri Jun 12 02:14:08 IST 2026
[2026-06-12 02:14:09,014.014 INFO    ] ================================================
[2026-06-12 02:14:09,374.374 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 02:14:09
[2026-06-12 02:14:09,684.684 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 02:14:09,815.815 INFO    ] Initializing speech engine...
[2026-06-12 02:14:09,820.820 INFO    ] 2026-06-12 02:14:09
[2026-06-12 02:14:10,039.039 INFO    ] 2026-06-12 02:14:10
[2026-06-12 02:14:10,069.069 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 02:14:10,251.251 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 02:14:10,260.260 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 02:14:10,399.399 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 02:14:10,456.456 INFO    ] time= 12/06/2026 02:14:10
[2026-06-12 02:14:10,480.480 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 02:14:10,485.485 INFO    ] Checking for existing commands in stream...
[2026-06-12 02:14:10,552.552 INFO    ] No existing commands found in stream
[2026-06-12 02:14:15,566.566 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 02:14:15,574.574 INFO    ] Waiting 1.76 seconds before fallback handling...
[2026-06-12 02:14:17,718.718 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 02:14:17,719.719 INFO    ] Checking for system updates...
[2026-06-12 02:14:17,740.740 INFO    ] 200
[2026-06-12 02:14:17,741.741 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:14:17,771.771 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 02:14:17,772.772 INFO    ] No update needed
[2026-06-12 02:14:17,773.773 INFO    ] Checking for camera pi updates...
[2026-06-12 02:14:17,792.792 INFO    ] 200
[2026-06-12 02:14:17,794.794 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:14:17,817.817 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 02:14:17,863.863 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 02:14:17,865.865 INFO    ] No camera update needed
[2026-06-12 02:14:17,866.866 INFO    ] Script finished. Safe exiting...
[2026-06-12 02:14:17,867.867 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 02:14:17,870.870 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 02:14:17,873.873 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 02:14:19,912.912 INFO    ] ================================================
[2026-06-12 02:14:19,927.927 INFO    ] Launching Daemon at Fri Jun 12 02:14:19 IST 2026
[2026-06-12 02:14:19,938.938 INFO    ] ================================================
[2026-06-12 02:14:20,286.286 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 02:14:20
[2026-06-12 02:14:20,598.598 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 02:14:20,735.735 INFO    ] Initializing speech engine...
[2026-06-12 02:14:20,746.746 INFO    ] 2026-06-12 02:14:20
[2026-06-12 02:14:20,949.949 INFO    ] 2026-06-12 02:14:20
[2026-06-12 02:14:20,976.976 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 02:14:21,159.159 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 02:14:21,162.162 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 02:14:21,297.297 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 02:14:21,361.361 INFO    ] time= 12/06/2026 02:14:21
[2026-06-12 02:14:21,387.387 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 02:14:21,393.393 INFO    ] Checking for existing commands in stream...
[2026-06-12 02:14:21,460.460 INFO    ] No existing commands found in stream
[2026-06-12 02:14:26,469.469 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 02:14:26,472.472 INFO    ] Waiting 0.04 seconds before fallback handling...
[2026-06-12 02:14:26,883.883 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 02:14:26,885.885 INFO    ] Checking for system updates...
[2026-06-12 02:14:26,906.906 INFO    ] 200
[2026-06-12 02:14:26,907.907 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:14:26,940.940 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 02:14:26,941.941 INFO    ] No update needed
[2026-06-12 02:14:26,942.942 INFO    ] Checking for camera pi updates...
[2026-06-12 02:14:26,964.964 INFO    ] 200
[2026-06-12 02:14:26,966.966 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:14:26,990.990 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 02:14:27,035.035 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 02:14:27,036.036 INFO    ] No camera update needed
[2026-06-12 02:14:27,037.037 INFO    ] Script finished. Safe exiting...
[2026-06-12 02:14:27,039.039 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 02:14:27,042.042 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 02:14:27,045.045 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 02:14:29,077.077 INFO    ] ================================================
[2026-06-12 02:14:29,093.093 INFO    ] Launching Daemon at Fri Jun 12 02:14:29 IST 2026
[2026-06-12 02:14:29,104.104 INFO    ] ================================================
[2026-06-12 02:14:29,461.461 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 02:14:29
[2026-06-12 02:14:29,773.773 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 02:14:29,904.904 INFO    ] Initializing speech engine...
[2026-06-12 02:14:29,907.907 INFO    ] 2026-06-12 02:14:29
[2026-06-12 02:14:30,125.125 INFO    ] 2026-06-12 02:14:30
[2026-06-12 02:14:30,155.155 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 02:14:30,339.339 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 02:14:30,342.342 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 02:14:30,489.489 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 02:14:30,551.551 INFO    ] time= 12/06/2026 02:14:30
[2026-06-12 02:14:30,575.575 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 02:14:30,582.582 INFO    ] Checking for existing commands in stream...
[2026-06-12 02:14:30,650.650 INFO    ] No existing commands found in stream
[2026-06-12 02:14:35,659.659 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 02:14:35,662.662 INFO    ] Waiting 3.11 seconds before fallback handling...
[2026-06-12 02:14:39,131.131 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 02:14:39,133.133 INFO    ] Checking for system updates...
[2026-06-12 02:14:39,154.154 INFO    ] 200
[2026-06-12 02:14:39,155.155 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:14:39,185.185 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 02:14:39,187.187 INFO    ] No update needed
[2026-06-12 02:14:39,188.188 INFO    ] Checking for camera pi updates...
[2026-06-12 02:14:39,208.208 INFO    ] 200
[2026-06-12 02:14:39,210.210 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:14:39,233.233 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 02:14:39,274.274 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 02:14:39,276.276 INFO    ] No camera update needed
[2026-06-12 02:14:39,277.277 INFO    ] Script finished. Safe exiting...
[2026-06-12 02:14:39,278.278 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 02:14:39,281.281 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 02:14:39,284.284 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 02:14:41,323.323 INFO    ] ================================================
[2026-06-12 02:14:41,339.339 INFO    ] Launching Daemon at Fri Jun 12 02:14:41 IST 2026
[2026-06-12 02:14:41,351.351 INFO    ] ================================================
[2026-06-12 02:14:41,692.692 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 02:14:41
[2026-06-12 02:14:42,007.007 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 02:14:42,149.149 INFO    ] Initializing speech engine...
[2026-06-12 02:14:42,154.154 INFO    ] 2026-06-12 02:14:42
[2026-06-12 02:14:42,357.357 INFO    ] 2026-06-12 02:14:42
[2026-06-12 02:14:42,385.385 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 02:14:42,570.570 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 02:14:42,580.580 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 02:14:42,718.718 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 02:14:42,774.774 INFO    ] time= 12/06/2026 02:14:42
[2026-06-12 02:14:42,798.798 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 02:14:42,804.804 INFO    ] Checking for existing commands in stream...
[2026-06-12 02:14:42,872.872 INFO    ] No existing commands found in stream
[2026-06-12 02:14:47,886.886 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 02:14:47,888.888 INFO    ] Waiting 1.87 seconds before fallback handling...
[2026-06-12 02:14:50,132.132 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 02:14:50,134.134 INFO    ] Checking for system updates...
[2026-06-12 02:14:50,154.154 INFO    ] 200
[2026-06-12 02:14:50,155.155 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:14:50,189.189 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 02:14:50,191.191 INFO    ] No update needed
[2026-06-12 02:14:50,192.192 INFO    ] Checking for camera pi updates...
[2026-06-12 02:14:50,212.212 INFO    ] 200
[2026-06-12 02:14:50,213.213 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:14:50,237.237 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 02:14:50,279.279 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 02:14:50,280.280 INFO    ] No camera update needed
[2026-06-12 02:14:50,282.282 INFO    ] Script finished. Safe exiting...
[2026-06-12 02:14:50,283.283 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 02:14:50,286.286 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 02:14:50,288.288 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 02:14:52,327.327 INFO    ] ================================================
[2026-06-12 02:14:52,343.343 INFO    ] Launching Daemon at Fri Jun 12 02:14:52 IST 2026
[2026-06-12 02:14:52,354.354 INFO    ] ================================================
[2026-06-12 02:14:52,705.705 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 02:14:52
[2026-06-12 02:14:53,022.022 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 02:14:53,159.159 INFO    ] Initializing speech engine...
[2026-06-12 02:14:53,169.169 INFO    ] 2026-06-12 02:14:53
[2026-06-12 02:14:53,375.375 INFO    ] 2026-06-12 02:14:53
[2026-06-12 02:14:53,404.404 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 02:14:53,587.587 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 02:14:53,596.596 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 02:14:53,721.721 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 02:14:53,778.778 INFO    ] time= 12/06/2026 02:14:53
[2026-06-12 02:14:53,816.816 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 02:14:53,818.818 INFO    ] Checking for existing commands in stream...
[2026-06-12 02:14:53,913.913 INFO    ] No existing commands found in stream
[2026-06-12 02:14:58,922.922 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 02:14:58,925.925 INFO    ] Waiting 2.00 seconds before fallback handling...
[2026-06-12 02:15:01,439.439 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 02:15:01,442.442 INFO    ] Checking for system updates...
[2026-06-12 02:15:01,517.517 INFO    ] 200
[2026-06-12 02:15:01,519.519 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:15:01,617.617 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 02:15:01,619.619 INFO    ] No update needed
[2026-06-12 02:15:01,621.621 INFO    ] Checking for camera pi updates...
[2026-06-12 02:15:01,648.648 INFO    ] 200
[2026-06-12 02:15:01,650.650 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:15:01,682.682 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 02:15:01,727.727 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 02:15:01,729.729 INFO    ] No camera update needed
[2026-06-12 02:15:01,731.731 INFO    ] Script finished. Safe exiting...
[2026-06-12 02:15:01,733.733 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 02:15:01,737.737 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 02:15:01,742.742 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 02:15:03,775.775 INFO    ] ================================================
[2026-06-12 02:15:03,791.791 INFO    ] Launching Daemon at Fri Jun 12 02:15:03 IST 2026
[2026-06-12 02:15:03,803.803 INFO    ] ================================================
[2026-06-12 02:15:04,136.136 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 02:15:04
[2026-06-12 02:15:04,449.449 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 02:15:04,582.582 INFO    ] Initializing speech engine...
[2026-06-12 02:15:04,586.586 INFO    ] 2026-06-12 02:15:04
[2026-06-12 02:15:04,806.806 INFO    ] 2026-06-12 02:15:04
[2026-06-12 02:15:04,835.835 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 02:15:05,024.024 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 02:15:05,033.033 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 02:15:05,165.165 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 02:15:05,229.229 INFO    ] time= 12/06/2026 02:15:05
[2026-06-12 02:15:05,261.261 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 02:15:05,267.267 INFO    ] Checking for existing commands in stream...
[2026-06-12 02:15:05,333.333 INFO    ] No existing commands found in stream
[2026-06-12 02:15:10,343.343 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 02:15:10,346.346 INFO    ] Waiting 1.03 seconds before fallback handling...
[2026-06-12 02:15:11,754.754 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 02:15:11,755.755 INFO    ] Checking for system updates...
[2026-06-12 02:15:11,776.776 INFO    ] 200
[2026-06-12 02:15:11,777.777 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:15:11,807.807 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 02:15:11,809.809 INFO    ] No update needed
[2026-06-12 02:15:11,810.810 INFO    ] Checking for camera pi updates...
[2026-06-12 02:15:11,829.829 INFO    ] 200
[2026-06-12 02:15:11,831.831 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:15:11,855.855 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 02:15:11,883.883 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 02:15:11,884.884 INFO    ] No camera update needed
[2026-06-12 02:15:11,885.885 INFO    ] Script finished. Safe exiting...
[2026-06-12 02:15:11,886.886 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 02:15:11,889.889 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 02:15:11,892.892 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 02:15:13,931.931 INFO    ] ================================================
[2026-06-12 02:15:13,948.948 INFO    ] Launching Daemon at Fri Jun 12 02:15:13 IST 2026
[2026-06-12 02:15:13,959.959 INFO    ] ================================================
[2026-06-12 02:15:14,293.293 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 02:15:14
[2026-06-12 02:15:14,606.606 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 02:15:14,748.748 INFO    ] Initializing speech engine...
[2026-06-12 02:15:14,753.753 INFO    ] 2026-06-12 02:15:14
[2026-06-12 02:15:14,956.956 INFO    ] 2026-06-12 02:15:14
[2026-06-12 02:15:14,984.984 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 02:15:15,157.157 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 02:15:15,170.170 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 02:15:15,298.298 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 02:15:15,348.348 INFO    ] time= 12/06/2026 02:15:15
[2026-06-12 02:15:15,393.393 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 02:15:15,398.398 INFO    ] Checking for existing commands in stream...
[2026-06-12 02:15:15,467.467 INFO    ] No existing commands found in stream
[2026-06-12 02:15:20,478.478 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 02:15:20,481.481 INFO    ] Waiting 2.84 seconds before fallback handling...
[2026-06-12 02:15:23,709.709 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 02:15:23,711.711 INFO    ] Checking for system updates...
[2026-06-12 02:15:23,733.733 INFO    ] 200
[2026-06-12 02:15:23,734.734 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:15:23,767.767 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 02:15:23,769.769 INFO    ] No update needed
[2026-06-12 02:15:23,770.770 INFO    ] Checking for camera pi updates...
[2026-06-12 02:15:23,790.790 INFO    ] 200
[2026-06-12 02:15:23,791.791 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:15:23,815.815 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 02:15:23,860.860 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 02:15:23,861.861 INFO    ] No camera update needed
[2026-06-12 02:15:23,862.862 INFO    ] Script finished. Safe exiting...
[2026-06-12 02:15:23,864.864 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 02:15:23,867.867 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 02:15:23,870.870 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 02:15:25,909.909 INFO    ] ================================================
[2026-06-12 02:15:25,927.927 INFO    ] Launching Daemon at Fri Jun 12 02:15:25 IST 2026
[2026-06-12 02:15:25,938.938 INFO    ] ================================================
[2026-06-12 02:15:26,268.268 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 02:15:26
[2026-06-12 02:15:26,578.578 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 02:15:26,711.711 INFO    ] Initializing speech engine...
[2026-06-12 02:15:26,725.725 INFO    ] 2026-06-12 02:15:26
[2026-06-12 02:15:26,929.929 INFO    ] 2026-06-12 02:15:26
[2026-06-12 02:15:26,958.958 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 02:15:27,089.089 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 02:15:27,141.141 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 02:15:27,275.275 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 02:15:27,331.331 INFO    ] time= 12/06/2026 02:15:27
[2026-06-12 02:15:27,365.365 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 02:15:27,370.370 INFO    ] Checking for existing commands in stream...
[2026-06-12 02:15:27,441.441 INFO    ] No existing commands found in stream
[2026-06-12 02:15:32,455.455 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 02:15:32,458.458 INFO    ] Waiting 3.40 seconds before fallback handling...
[2026-06-12 02:15:36,232.232 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 02:15:36,234.234 INFO    ] Checking for system updates...
[2026-06-12 02:15:36,259.259 INFO    ] 200
[2026-06-12 02:15:36,261.261 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:15:36,302.302 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 02:15:36,303.303 INFO    ] No update needed
[2026-06-12 02:15:36,305.305 INFO    ] Checking for camera pi updates...
[2026-06-12 02:15:36,341.341 INFO    ] 200
[2026-06-12 02:15:36,342.342 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:15:36,365.365 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 02:15:36,508.508 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 02:15:36,510.510 INFO    ] No camera update needed
[2026-06-12 02:15:36,511.511 INFO    ] Script finished. Safe exiting...
[2026-06-12 02:15:36,512.512 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 02:15:36,515.515 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 02:15:36,519.519 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 02:15:38,558.558 INFO    ] ================================================
[2026-06-12 02:15:38,573.573 INFO    ] Launching Daemon at Fri Jun 12 02:15:38 IST 2026
[2026-06-12 02:15:38,584.584 INFO    ] ================================================
[2026-06-12 02:15:38,911.911 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 02:15:38
[2026-06-12 02:15:39,223.223 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 02:15:39,366.366 INFO    ] Initializing speech engine...
[2026-06-12 02:15:39,371.371 INFO    ] 2026-06-12 02:15:39
[2026-06-12 02:15:39,573.573 INFO    ] 2026-06-12 02:15:39
[2026-06-12 02:15:39,601.601 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 02:15:39,785.785 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 02:15:39,788.788 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 02:15:39,924.924 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 02:15:39,988.988 INFO    ] time= 12/06/2026 02:15:39
[2026-06-12 02:15:40,015.015 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 02:15:40,021.021 INFO    ] Checking for existing commands in stream...
[2026-06-12 02:15:40,111.111 INFO    ] No existing commands found in stream
[2026-06-12 02:15:45,125.125 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 02:15:45,128.128 INFO    ] Waiting 1.80 seconds before fallback handling...
[2026-06-12 02:15:47,330.330 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 02:15:47,331.331 INFO    ] Checking for system updates...
[2026-06-12 02:15:47,353.353 INFO    ] 200
[2026-06-12 02:15:47,354.354 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:15:47,385.385 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 02:15:47,386.386 INFO    ] No update needed
[2026-06-12 02:15:47,388.388 INFO    ] Checking for camera pi updates...
[2026-06-12 02:15:47,410.410 INFO    ] 200
[2026-06-12 02:15:47,411.411 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:15:47,435.435 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 02:15:47,480.480 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 02:15:47,481.481 INFO    ] No camera update needed
[2026-06-12 02:15:47,482.482 INFO    ] Script finished. Safe exiting...
[2026-06-12 02:15:47,484.484 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 02:15:47,487.487 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 02:15:47,489.489 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 02:15:49,529.529 INFO    ] ================================================
[2026-06-12 02:15:49,544.544 INFO    ] Launching Daemon at Fri Jun 12 02:15:49 IST 2026
[2026-06-12 02:15:49,556.556 INFO    ] ================================================
[2026-06-12 02:15:49,904.904 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 02:15:49
[2026-06-12 02:15:50,216.216 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 02:15:50,348.348 INFO    ] Initializing speech engine...
[2026-06-12 02:15:50,355.355 INFO    ] 2026-06-12 02:15:50
[2026-06-12 02:15:50,571.571 INFO    ] 2026-06-12 02:15:50
[2026-06-12 02:15:50,599.599 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 02:15:50,785.785 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 02:15:50,789.789 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 02:15:50,919.919 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 02:15:50,950.950 INFO    ] time= 12/06/2026 02:15:50
[2026-06-12 02:15:50,952.952 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 02:15:50,953.953 INFO    ] Checking for existing commands in stream...
[2026-06-12 02:15:51,026.026 INFO    ] No existing commands found in stream
[2026-06-12 02:15:56,035.035 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 02:15:56,038.038 INFO    ] Waiting 3.18 seconds before fallback handling...
[2026-06-12 02:15:59,613.613 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 02:15:59,614.614 INFO    ] Checking for system updates...
[2026-06-12 02:15:59,635.635 INFO    ] 200
[2026-06-12 02:15:59,636.636 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:15:59,666.666 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 02:15:59,667.667 INFO    ] No update needed
[2026-06-12 02:15:59,668.668 INFO    ] Checking for camera pi updates...
[2026-06-12 02:15:59,689.689 INFO    ] 200
[2026-06-12 02:15:59,691.691 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:15:59,723.723 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 02:15:59,769.769 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 02:15:59,771.771 INFO    ] No camera update needed
[2026-06-12 02:15:59,772.772 INFO    ] Script finished. Safe exiting...
[2026-06-12 02:15:59,773.773 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 02:15:59,776.776 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 02:15:59,779.779 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 02:16:01,814.814 INFO    ] ================================================
[2026-06-12 02:16:01,827.827 INFO    ] Launching Daemon at Fri Jun 12 02:16:01 IST 2026
[2026-06-12 02:16:01,835.835 INFO    ] ================================================
[2026-06-12 02:16:02,224.224 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 02:16:02
[2026-06-12 02:16:02,598.598 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 02:16:02,739.739 INFO    ] Initializing speech engine...
[2026-06-12 02:16:02,747.747 INFO    ] 2026-06-12 02:16:02
[2026-06-12 02:16:02,969.969 INFO    ] 2026-06-12 02:16:02
[2026-06-12 02:16:02,999.999 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 02:16:03,130.130 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 02:16:03,193.193 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 02:16:03,336.336 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 02:16:03,392.392 INFO    ] time= 12/06/2026 02:16:03
[2026-06-12 02:16:03,436.436 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 02:16:03,442.442 INFO    ] Checking for existing commands in stream...
[2026-06-12 02:16:03,518.518 INFO    ] No existing commands found in stream
[2026-06-12 02:16:08,527.527 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 02:16:08,530.530 INFO    ] Waiting 1.71 seconds before fallback handling...
[2026-06-12 02:16:10,611.611 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 02:16:10,613.613 INFO    ] Checking for system updates...
[2026-06-12 02:16:10,633.633 INFO    ] 200
[2026-06-12 02:16:10,634.634 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:16:10,665.665 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 02:16:10,666.666 INFO    ] No update needed
[2026-06-12 02:16:10,667.667 INFO    ] Checking for camera pi updates...
[2026-06-12 02:16:10,688.688 INFO    ] 200
[2026-06-12 02:16:10,689.689 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:16:10,712.712 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 02:16:10,768.768 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 02:16:10,769.769 INFO    ] No camera update needed
[2026-06-12 02:16:10,771.771 INFO    ] Script finished. Safe exiting...
[2026-06-12 02:16:10,772.772 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 02:16:10,775.775 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 02:16:10,778.778 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 02:16:12,815.815 INFO    ] ================================================
[2026-06-12 02:16:12,830.830 INFO    ] Launching Daemon at Fri Jun 12 02:16:12 IST 2026
[2026-06-12 02:16:12,841.841 INFO    ] ================================================
[2026-06-12 02:16:13,185.185 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 02:16:13
[2026-06-12 02:16:13,499.499 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 02:16:13,634.634 INFO    ] Initializing speech engine...
[2026-06-12 02:16:13,638.638 INFO    ] 2026-06-12 02:16:13
[2026-06-12 02:16:13,867.867 INFO    ] 2026-06-12 02:16:13
[2026-06-12 02:16:13,897.897 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 02:16:14,028.028 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 02:16:14,071.071 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 02:16:14,239.239 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 02:16:14,302.302 INFO    ] time= 12/06/2026 02:16:14
[2026-06-12 02:16:14,336.336 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 02:16:14,342.342 INFO    ] Checking for existing commands in stream...
[2026-06-12 02:16:14,417.417 INFO    ] No existing commands found in stream
[2026-06-12 02:16:19,428.428 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 02:16:19,431.431 INFO    ] Waiting 0.64 seconds before fallback handling...
[2026-06-12 02:16:20,447.447 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 02:16:20,449.449 INFO    ] Checking for system updates...
[2026-06-12 02:16:20,469.469 INFO    ] 200
[2026-06-12 02:16:20,471.471 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:16:20,503.503 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 02:16:20,504.504 INFO    ] No update needed
[2026-06-12 02:16:20,506.506 INFO    ] Checking for camera pi updates...
[2026-06-12 02:16:20,526.526 INFO    ] 200
[2026-06-12 02:16:20,528.528 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:16:20,552.552 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 02:16:20,595.595 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 02:16:20,596.596 INFO    ] No camera update needed
[2026-06-12 02:16:20,598.598 INFO    ] Script finished. Safe exiting...
[2026-06-12 02:16:20,599.599 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 02:16:20,602.602 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 02:16:20,605.605 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 02:16:22,645.645 INFO    ] ================================================
[2026-06-12 02:16:22,660.660 INFO    ] Launching Daemon at Fri Jun 12 02:16:22 IST 2026
[2026-06-12 02:16:22,671.671 INFO    ] ================================================
[2026-06-12 02:16:23,025.025 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 02:16:23
[2026-06-12 02:16:23,337.337 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 02:16:23,470.470 INFO    ] Initializing speech engine...
[2026-06-12 02:16:23,475.475 INFO    ] 2026-06-12 02:16:23
[2026-06-12 02:16:23,702.702 INFO    ] 2026-06-12 02:16:23
[2026-06-12 02:16:23,732.732 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 02:16:23,927.927 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 02:16:23,931.931 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 02:16:24,069.069 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 02:16:24,125.125 INFO    ] time= 12/06/2026 02:16:24
[2026-06-12 02:16:24,170.170 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 02:16:24,176.176 INFO    ] Checking for existing commands in stream...
[2026-06-12 02:16:24,277.277 INFO    ] No existing commands found in stream
[2026-06-12 02:16:29,286.286 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 02:16:29,289.289 INFO    ] Waiting 3.99 seconds before fallback handling...
[2026-06-12 02:16:33,644.644 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 02:16:33,645.645 INFO    ] Checking for system updates...
[2026-06-12 02:16:33,667.667 INFO    ] 200
[2026-06-12 02:16:33,668.668 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:16:33,700.700 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 02:16:33,701.701 INFO    ] No update needed
[2026-06-12 02:16:33,703.703 INFO    ] Checking for camera pi updates...
[2026-06-12 02:16:33,724.724 INFO    ] 200
[2026-06-12 02:16:33,725.725 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:16:33,750.750 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 02:16:33,789.789 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 02:16:33,790.790 INFO    ] No camera update needed
[2026-06-12 02:16:33,792.792 INFO    ] Script finished. Safe exiting...
[2026-06-12 02:16:33,793.793 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 02:16:33,796.796 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 02:16:33,799.799 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 02:16:35,841.841 INFO    ] ================================================
[2026-06-12 02:16:35,856.856 INFO    ] Launching Daemon at Fri Jun 12 02:16:35 IST 2026
[2026-06-12 02:16:35,866.866 INFO    ] ================================================
[2026-06-12 02:16:36,202.202 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 02:16:36
[2026-06-12 02:16:36,514.514 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 02:16:36,657.657 INFO    ] Initializing speech engine...
[2026-06-12 02:16:36,662.662 INFO    ] 2026-06-12 02:16:36
[2026-06-12 02:16:36,864.864 INFO    ] 2026-06-12 02:16:36
[2026-06-12 02:16:36,892.892 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 02:16:37,076.076 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 02:16:37,084.084 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 02:16:37,235.235 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 02:16:37,283.283 INFO    ] time= 12/06/2026 02:16:37
[2026-06-12 02:16:37,305.305 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 02:16:37,311.311 INFO    ] Checking for existing commands in stream...
[2026-06-12 02:16:37,378.378 INFO    ] No existing commands found in stream
[2026-06-12 02:16:42,387.387 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 02:16:42,390.390 INFO    ] Waiting 1.01 seconds before fallback handling...
[2026-06-12 02:16:43,792.792 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 02:16:43,793.793 INFO    ] Checking for system updates...
[2026-06-12 02:16:43,814.814 INFO    ] 200
[2026-06-12 02:16:43,815.815 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:16:43,847.847 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 02:16:43,849.849 INFO    ] No update needed
[2026-06-12 02:16:43,850.850 INFO    ] Checking for camera pi updates...
[2026-06-12 02:16:43,873.873 INFO    ] 200
[2026-06-12 02:16:43,875.875 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:16:43,900.900 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 02:16:43,945.945 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 02:16:43,946.946 INFO    ] No camera update needed
[2026-06-12 02:16:43,947.947 INFO    ] Script finished. Safe exiting...
[2026-06-12 02:16:43,949.949 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 02:16:43,952.952 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 02:16:43,955.955 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 02:16:46,995.995 INFO    ] ================================================
[2026-06-12 02:16:46,010.010 INFO    ] Launching Daemon at Fri Jun 12 02:16:46 IST 2026
[2026-06-12 02:16:46,021.021 INFO    ] ================================================
[2026-06-12 02:16:46,350.350 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 02:16:46
[2026-06-12 02:16:46,664.664 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 02:16:46,794.794 INFO    ] Initializing speech engine...
[2026-06-12 02:16:46,799.799 INFO    ] 2026-06-12 02:16:46
[2026-06-12 02:16:47,019.019 INFO    ] 2026-06-12 02:16:46
[2026-06-12 02:16:47,047.047 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 02:16:47,226.226 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 02:16:47,238.238 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 02:16:47,377.377 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 02:16:47,431.431 INFO    ] time= 12/06/2026 02:16:47
[2026-06-12 02:16:47,469.469 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 02:16:47,471.471 INFO    ] Checking for existing commands in stream...
[2026-06-12 02:16:47,539.539 INFO    ] No existing commands found in stream
[2026-06-12 02:16:52,551.551 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 02:16:52,554.554 INFO    ] Waiting 3.64 seconds before fallback handling...
[2026-06-12 02:16:56,537.537 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 02:16:56,538.538 INFO    ] Checking for system updates...
[2026-06-12 02:16:56,559.559 INFO    ] 200
[2026-06-12 02:16:56,561.561 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:16:56,591.591 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 02:16:56,593.593 INFO    ] No update needed
[2026-06-12 02:16:56,594.594 INFO    ] Checking for camera pi updates...
[2026-06-12 02:16:56,614.614 INFO    ] 200
[2026-06-12 02:16:56,616.616 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:16:56,639.639 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 02:16:56,682.682 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 02:16:56,684.684 INFO    ] No camera update needed
[2026-06-12 02:16:56,685.685 INFO    ] Script finished. Safe exiting...
[2026-06-12 02:16:56,687.687 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 02:16:56,690.690 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 02:16:56,693.693 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 02:16:58,732.732 INFO    ] ================================================
[2026-06-12 02:16:58,748.748 INFO    ] Launching Daemon at Fri Jun 12 02:16:58 IST 2026
[2026-06-12 02:16:58,759.759 INFO    ] ================================================
[2026-06-12 02:16:59,116.116 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 02:16:59
[2026-06-12 02:16:59,454.454 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 02:16:59,608.608 INFO    ] Initializing speech engine...
[2026-06-12 02:16:59,612.612 INFO    ] 2026-06-12 02:16:59
[2026-06-12 02:16:59,818.818 INFO    ] 2026-06-12 02:16:59
[2026-06-12 02:16:59,847.847 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 02:17:00,031.031 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 02:17:00,042.042 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 02:17:00,195.195 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 02:17:00,238.238 INFO    ] time= 12/06/2026 02:17:00
[2026-06-12 02:17:00,260.260 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 02:17:00,266.266 INFO    ] Checking for existing commands in stream...
[2026-06-12 02:17:00,331.331 INFO    ] No existing commands found in stream
[2026-06-12 02:17:05,342.342 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 02:17:05,345.345 INFO    ] Waiting 0.71 seconds before fallback handling...
[2026-06-12 02:17:06,454.454 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 02:17:06,456.456 INFO    ] Checking for system updates...
[2026-06-12 02:17:06,476.476 INFO    ] 200
[2026-06-12 02:17:06,478.478 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:17:06,508.508 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 02:17:06,509.509 INFO    ] No update needed
[2026-06-12 02:17:06,511.511 INFO    ] Checking for camera pi updates...
[2026-06-12 02:17:06,532.532 INFO    ] 200
[2026-06-12 02:17:06,533.533 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:17:06,560.560 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 02:17:06,603.603 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 02:17:06,605.605 INFO    ] No camera update needed
[2026-06-12 02:17:06,606.606 INFO    ] Script finished. Safe exiting...
[2026-06-12 02:17:06,608.608 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 02:17:06,611.611 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 02:17:06,614.614 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 02:17:08,654.654 INFO    ] ================================================
[2026-06-12 02:17:08,670.670 INFO    ] Launching Daemon at Fri Jun 12 02:17:08 IST 2026
[2026-06-12 02:17:08,682.682 INFO    ] ================================================
[2026-06-12 02:17:09,047.047 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 02:17:09
[2026-06-12 02:17:09,358.358 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 02:17:09,493.493 INFO    ] Initializing speech engine...
[2026-06-12 02:17:09,506.506 INFO    ] 2026-06-12 02:17:09
[2026-06-12 02:17:09,724.724 INFO    ] 2026-06-12 02:17:09
[2026-06-12 02:17:09,754.754 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 02:17:09,951.951 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 02:17:09,955.955 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 02:17:10,103.103 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 02:17:10,157.157 INFO    ] time= 12/06/2026 02:17:10
[2026-06-12 02:17:10,179.179 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 02:17:10,202.202 INFO    ] Checking for existing commands in stream...
[2026-06-12 02:17:10,276.276 INFO    ] No existing commands found in stream
[2026-06-12 02:17:15,286.286 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 02:17:15,289.289 INFO    ] Waiting 3.30 seconds before fallback handling...
[2026-06-12 02:17:18,944.944 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 02:17:18,945.945 INFO    ] Checking for system updates...
[2026-06-12 02:17:18,967.967 INFO    ] 200
[2026-06-12 02:17:18,968.968 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:17:18,999.999 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 02:17:19,000.000 INFO    ] No update needed
[2026-06-12 02:17:19,001.001 INFO    ] Checking for camera pi updates...
[2026-06-12 02:17:19,022.022 INFO    ] 200
[2026-06-12 02:17:19,023.023 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:17:19,047.047 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 02:17:19,092.092 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 02:17:19,093.093 INFO    ] No camera update needed
[2026-06-12 02:17:19,094.094 INFO    ] Script finished. Safe exiting...
[2026-06-12 02:17:19,096.096 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 02:17:19,098.098 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 02:17:19,101.101 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 02:17:21,140.140 INFO    ] ================================================
[2026-06-12 02:17:21,158.158 INFO    ] Launching Daemon at Fri Jun 12 02:17:21 IST 2026
[2026-06-12 02:17:21,170.170 INFO    ] ================================================
[2026-06-12 02:17:21,502.502 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 02:17:21
[2026-06-12 02:17:21,813.813 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 02:17:21,946.946 INFO    ] Initializing speech engine...
[2026-06-12 02:17:21,949.949 INFO    ] 2026-06-12 02:17:21
[2026-06-12 02:17:22,176.176 INFO    ] 2026-06-12 02:17:22
[2026-06-12 02:17:22,207.207 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 02:17:22,402.402 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 02:17:22,405.405 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 02:17:22,543.543 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 02:17:22,600.600 INFO    ] time= 12/06/2026 02:17:22
[2026-06-12 02:17:22,639.639 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 02:17:22,655.655 INFO    ] Checking for existing commands in stream...
[2026-06-12 02:17:22,726.726 INFO    ] No existing commands found in stream
[2026-06-12 02:17:27,735.735 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 02:17:27,738.738 INFO    ] Waiting 3.83 seconds before fallback handling...
[2026-06-12 02:17:31,925.925 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 02:17:31,927.927 INFO    ] Checking for system updates...
[2026-06-12 02:17:31,954.954 INFO    ] 200
[2026-06-12 02:17:31,956.956 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:17:31,991.991 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 02:17:31,993.993 INFO    ] No update needed
[2026-06-12 02:17:31,995.995 INFO    ] Checking for camera pi updates...
[2026-06-12 02:17:32,017.017 INFO    ] 200
[2026-06-12 02:17:32,019.019 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:17:32,048.048 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 02:17:32,082.082 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 02:17:32,084.084 INFO    ] No camera update needed
[2026-06-12 02:17:32,086.086 INFO    ] Script finished. Safe exiting...
[2026-06-12 02:17:32,087.087 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 02:17:32,091.091 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 02:17:32,095.095 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 02:17:34,128.128 INFO    ] ================================================
[2026-06-12 02:17:34,144.144 INFO    ] Launching Daemon at Fri Jun 12 02:17:34 IST 2026
[2026-06-12 02:17:34,156.156 INFO    ] ================================================
[2026-06-12 02:17:34,506.506 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 02:17:34
[2026-06-12 02:17:34,823.823 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 02:17:34,955.955 INFO    ] Initializing speech engine...
[2026-06-12 02:17:34,963.963 INFO    ] 2026-06-12 02:17:34
[2026-06-12 02:17:35,178.178 INFO    ] 2026-06-12 02:17:35
[2026-06-12 02:17:35,209.209 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 02:17:35,392.392 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 02:17:35,402.402 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 02:17:35,529.529 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 02:17:35,590.590 INFO    ] time= 12/06/2026 02:17:35
[2026-06-12 02:17:35,622.622 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 02:17:35,624.624 INFO    ] Checking for existing commands in stream...
[2026-06-12 02:17:35,694.694 INFO    ] No existing commands found in stream
[2026-06-12 02:17:40,703.703 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 02:17:40,706.706 INFO    ] Waiting 1.17 seconds before fallback handling...
[2026-06-12 02:17:42,176.176 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 02:17:42,178.178 INFO    ] Checking for system updates...
[2026-06-12 02:17:42,203.203 INFO    ] 200
[2026-06-12 02:17:42,205.205 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:17:42,248.248 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 02:17:42,250.250 INFO    ] No update needed
[2026-06-12 02:17:42,251.251 INFO    ] Checking for camera pi updates...
[2026-06-12 02:17:42,274.274 INFO    ] 200
[2026-06-12 02:17:42,275.275 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:17:42,299.299 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 02:17:42,442.442 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 02:17:42,444.444 INFO    ] No camera update needed
[2026-06-12 02:17:42,445.445 INFO    ] Script finished. Safe exiting...
[2026-06-12 02:17:42,446.446 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 02:17:42,449.449 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 02:17:42,452.452 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 02:17:44,494.494 INFO    ] ================================================
[2026-06-12 02:17:44,510.510 INFO    ] Launching Daemon at Fri Jun 12 02:17:44 IST 2026
[2026-06-12 02:17:44,521.521 INFO    ] ================================================
[2026-06-12 02:17:44,883.883 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 02:17:44
[2026-06-12 02:17:45,219.219 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 02:17:45,369.369 INFO    ] Initializing speech engine...
[2026-06-12 02:17:45,374.374 INFO    ] 2026-06-12 02:17:45
[2026-06-12 02:17:45,585.585 INFO    ] 2026-06-12 02:17:45
[2026-06-12 02:17:45,615.615 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 02:17:45,801.801 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 02:17:45,810.810 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 02:17:45,964.964 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 02:17:46,020.020 INFO    ] time= 12/06/2026 02:17:45
[2026-06-12 02:17:46,036.036 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 02:17:46,043.043 INFO    ] Checking for existing commands in stream...
[2026-06-12 02:17:46,111.111 INFO    ] No existing commands found in stream
[2026-06-12 02:17:51,125.125 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 02:17:51,128.128 INFO    ] Waiting 1.23 seconds before fallback handling...
[2026-06-12 02:17:52,838.838 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 02:17:52,840.840 INFO    ] Checking for system updates...
[2026-06-12 02:17:52,861.861 INFO    ] 200
[2026-06-12 02:17:52,862.862 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:17:52,894.894 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 02:17:52,896.896 INFO    ] No update needed
[2026-06-12 02:17:52,897.897 INFO    ] Checking for camera pi updates...
[2026-06-12 02:17:52,917.917 INFO    ] 200
[2026-06-12 02:17:52,918.918 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:17:52,941.941 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 02:17:52,979.979 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 02:17:52,981.981 INFO    ] No camera update needed
[2026-06-12 02:17:52,982.982 INFO    ] Script finished. Safe exiting...
[2026-06-12 02:17:52,983.983 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 02:17:52,986.986 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 02:17:52,989.989 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 02:17:55,029.029 INFO    ] ================================================
[2026-06-12 02:17:55,044.044 INFO    ] Launching Daemon at Fri Jun 12 02:17:55 IST 2026
[2026-06-12 02:17:55,055.055 INFO    ] ================================================
[2026-06-12 02:17:55,404.404 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 02:17:55
[2026-06-12 02:17:55,717.717 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 02:17:55,848.848 INFO    ] Initializing speech engine...
[2026-06-12 02:17:55,860.860 INFO    ] 2026-06-12 02:17:55
[2026-06-12 02:17:56,067.067 INFO    ] 2026-06-12 02:17:56
[2026-06-12 02:17:56,094.094 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 02:17:56,277.277 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 02:17:56,285.285 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 02:17:56,430.430 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 02:17:56,480.480 INFO    ] time= 12/06/2026 02:17:56
[2026-06-12 02:17:56,504.504 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 02:17:56,510.510 INFO    ] Checking for existing commands in stream...
[2026-06-12 02:17:56,577.577 INFO    ] No existing commands found in stream
[2026-06-12 02:18:01,590.590 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 02:18:01,592.592 INFO    ] Waiting 3.23 seconds before fallback handling...
[2026-06-12 02:18:05,178.178 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 02:18:05,179.179 INFO    ] Checking for system updates...
[2026-06-12 02:18:05,201.201 INFO    ] 200
[2026-06-12 02:18:05,202.202 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:18:05,251.251 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 02:18:05,253.253 INFO    ] No update needed
[2026-06-12 02:18:05,255.255 INFO    ] Checking for camera pi updates...
[2026-06-12 02:18:05,280.280 INFO    ] 200
[2026-06-12 02:18:05,282.282 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:18:05,306.306 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 02:18:05,334.334 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 02:18:05,335.335 INFO    ] No camera update needed
[2026-06-12 02:18:05,336.336 INFO    ] Script finished. Safe exiting...
[2026-06-12 02:18:05,338.338 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 02:18:05,341.341 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 02:18:05,344.344 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 02:18:07,384.384 INFO    ] ================================================
[2026-06-12 02:18:07,399.399 INFO    ] Launching Daemon at Fri Jun 12 02:18:07 IST 2026
[2026-06-12 02:18:07,410.410 INFO    ] ================================================
[2026-06-12 02:18:07,765.765 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 02:18:07
[2026-06-12 02:18:08,078.078 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 02:18:08,209.209 INFO    ] Initializing speech engine...
[2026-06-12 02:18:08,217.217 INFO    ] 2026-06-12 02:18:08
[2026-06-12 02:18:08,431.431 INFO    ] 2026-06-12 02:18:08
[2026-06-12 02:18:08,460.460 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 02:18:08,647.647 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 02:18:08,656.656 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 02:18:08,787.787 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 02:18:08,851.851 INFO    ] time= 12/06/2026 02:18:08
[2026-06-12 02:18:08,880.880 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 02:18:08,886.886 INFO    ] Checking for existing commands in stream...
[2026-06-12 02:18:08,954.954 INFO    ] No existing commands found in stream
[2026-06-12 02:18:13,963.963 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 02:18:13,965.965 INFO    ] Waiting 0.26 seconds before fallback handling...
[2026-06-12 02:18:14,599.599 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 02:18:14,601.601 INFO    ] Checking for system updates...
[2026-06-12 02:18:14,622.622 INFO    ] 200
[2026-06-12 02:18:14,623.623 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:18:14,655.655 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 02:18:14,657.657 INFO    ] No update needed
[2026-06-12 02:18:14,658.658 INFO    ] Checking for camera pi updates...
[2026-06-12 02:18:14,678.678 INFO    ] 200
[2026-06-12 02:18:14,679.679 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:18:14,703.703 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 02:18:14,749.749 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 02:18:14,750.750 INFO    ] No camera update needed
[2026-06-12 02:18:14,752.752 INFO    ] Script finished. Safe exiting...
[2026-06-12 02:18:14,753.753 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 02:18:14,756.756 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 02:18:14,758.758 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 02:18:16,798.798 INFO    ] ================================================
[2026-06-12 02:18:16,814.814 INFO    ] Launching Daemon at Fri Jun 12 02:18:16 IST 2026
[2026-06-12 02:18:16,824.824 INFO    ] ================================================
[2026-06-12 02:18:17,184.184 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 02:18:17
[2026-06-12 02:18:17,500.500 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 02:18:17,629.629 INFO    ] Initializing speech engine...
[2026-06-12 02:18:17,634.634 INFO    ] 2026-06-12 02:18:17
[2026-06-12 02:18:17,857.857 INFO    ] 2026-06-12 02:18:17
[2026-06-12 02:18:17,886.886 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 02:18:18,073.073 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 02:18:18,077.077 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 02:18:18,215.215 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 02:18:18,279.279 INFO    ] time= 12/06/2026 02:18:18
[2026-06-12 02:18:18,308.308 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 02:18:18,315.315 INFO    ] Checking for existing commands in stream...
[2026-06-12 02:18:18,407.407 INFO    ] No existing commands found in stream
[2026-06-12 02:18:23,422.422 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 02:18:23,425.425 INFO    ] Waiting 2.20 seconds before fallback handling...
[2026-06-12 02:18:25,997.997 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 02:18:25,999.999 INFO    ] Checking for system updates...
[2026-06-12 02:18:26,020.020 INFO    ] 200
[2026-06-12 02:18:26,021.021 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:18:26,052.052 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 02:18:26,053.053 INFO    ] No update needed
[2026-06-12 02:18:26,054.054 INFO    ] Checking for camera pi updates...
[2026-06-12 02:18:26,075.075 INFO    ] 200
[2026-06-12 02:18:26,076.076 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:18:26,099.099 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 02:18:26,144.144 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 02:18:26,146.146 INFO    ] No camera update needed
[2026-06-12 02:18:26,147.147 INFO    ] Script finished. Safe exiting...
[2026-06-12 02:18:26,148.148 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 02:18:26,151.151 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 02:18:26,154.154 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 02:18:28,192.192 INFO    ] ================================================
[2026-06-12 02:18:28,207.207 INFO    ] Launching Daemon at Fri Jun 12 02:18:28 IST 2026
[2026-06-12 02:18:28,217.217 INFO    ] ================================================
[2026-06-12 02:18:28,595.595 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 02:18:28
[2026-06-12 02:18:28,928.928 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 02:18:29,081.081 INFO    ] Initializing speech engine...
[2026-06-12 02:18:29,086.086 INFO    ] 2026-06-12 02:18:29
[2026-06-12 02:18:29,290.290 INFO    ] 2026-06-12 02:18:29
[2026-06-12 02:18:29,319.319 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 02:18:29,442.442 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 02:18:29,505.505 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 02:18:29,653.653 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 02:18:29,710.710 INFO    ] time= 12/06/2026 02:18:29
[2026-06-12 02:18:29,735.735 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 02:18:29,741.741 INFO    ] Checking for existing commands in stream...
[2026-06-12 02:18:29,808.808 INFO    ] No existing commands found in stream
[2026-06-12 02:18:34,821.821 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 02:18:34,823.823 INFO    ] Waiting 0.55 seconds before fallback handling...
[2026-06-12 02:18:35,770.770 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 02:18:35,772.772 INFO    ] Checking for system updates...
[2026-06-12 02:18:35,793.793 INFO    ] 200
[2026-06-12 02:18:35,794.794 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:18:35,827.827 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 02:18:35,828.828 INFO    ] No update needed
[2026-06-12 02:18:35,830.830 INFO    ] Checking for camera pi updates...
[2026-06-12 02:18:35,849.849 INFO    ] 200
[2026-06-12 02:18:35,850.850 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:18:35,873.873 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 02:18:35,914.914 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 02:18:35,916.916 INFO    ] No camera update needed
[2026-06-12 02:18:35,917.917 INFO    ] Script finished. Safe exiting...
[2026-06-12 02:18:35,918.918 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 02:18:35,921.921 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 02:18:35,924.924 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 02:18:37,963.963 INFO    ] ================================================
[2026-06-12 02:18:37,979.979 INFO    ] Launching Daemon at Fri Jun 12 02:18:37 IST 2026
[2026-06-12 02:18:37,990.990 INFO    ] ================================================
[2026-06-12 02:18:38,333.333 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 02:18:38
[2026-06-12 02:18:38,667.667 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 02:18:38,818.818 INFO    ] Initializing speech engine...
[2026-06-12 02:18:38,823.823 INFO    ] 2026-06-12 02:18:38
[2026-06-12 02:18:39,033.033 INFO    ] 2026-06-12 02:18:39
[2026-06-12 02:18:39,062.062 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 02:18:39,248.248 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 02:18:39,252.252 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 02:18:39,386.386 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 02:18:39,454.454 INFO    ] time= 12/06/2026 02:18:39
[2026-06-12 02:18:39,482.482 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 02:18:39,489.489 INFO    ] Checking for existing commands in stream...
[2026-06-12 02:18:39,556.556 INFO    ] No existing commands found in stream
[2026-06-12 02:18:44,571.571 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 02:18:44,574.574 INFO    ] Waiting 1.83 seconds before fallback handling...
[2026-06-12 02:18:46,804.804 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 02:18:46,806.806 INFO    ] Checking for system updates...
[2026-06-12 02:18:46,828.828 INFO    ] 200
[2026-06-12 02:18:46,829.829 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:18:46,860.860 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 02:18:46,861.861 INFO    ] No update needed
[2026-06-12 02:18:46,863.863 INFO    ] Checking for camera pi updates...
[2026-06-12 02:18:46,883.883 INFO    ] 200
[2026-06-12 02:18:46,885.885 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:18:46,908.908 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 02:18:46,951.951 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 02:18:46,953.953 INFO    ] No camera update needed
[2026-06-12 02:18:46,954.954 INFO    ] Script finished. Safe exiting...
[2026-06-12 02:18:46,955.955 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 02:18:46,958.958 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 02:18:46,961.961 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 02:18:48,991.991 INFO    ] ================================================
[2026-06-12 02:18:49,000.000 INFO    ] Launching Daemon at Fri Jun 12 02:18:48 IST 2026
[2026-06-12 02:18:49,006.006 INFO    ] ================================================
[2026-06-12 02:18:49,361.361 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 02:18:49
[2026-06-12 02:18:49,678.678 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 02:18:49,823.823 INFO    ] Initializing speech engine...
[2026-06-12 02:18:49,834.834 INFO    ] 2026-06-12 02:18:49
[2026-06-12 02:18:50,060.060 INFO    ] 2026-06-12 02:18:50
[2026-06-12 02:18:50,092.092 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 02:18:50,233.233 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 02:18:50,278.278 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 02:18:50,452.452 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 02:18:50,512.512 INFO    ] time= 12/06/2026 02:18:50
[2026-06-12 02:18:50,560.560 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 02:18:50,563.563 INFO    ] Checking for existing commands in stream...
[2026-06-12 02:18:50,669.669 INFO    ] No existing commands found in stream
[2026-06-12 02:18:55,678.678 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 02:18:55,681.681 INFO    ] Waiting 1.45 seconds before fallback handling...
[2026-06-12 02:18:57,519.519 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 02:18:57,520.520 INFO    ] Checking for system updates...
[2026-06-12 02:18:57,541.541 INFO    ] 200
[2026-06-12 02:18:57,543.543 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:18:57,575.575 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 02:18:57,576.576 INFO    ] No update needed
[2026-06-12 02:18:57,578.578 INFO    ] Checking for camera pi updates...
[2026-06-12 02:18:57,597.597 INFO    ] 200
[2026-06-12 02:18:57,598.598 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:18:57,623.623 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 02:18:57,663.663 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 02:18:57,665.665 INFO    ] No camera update needed
[2026-06-12 02:18:57,666.666 INFO    ] Script finished. Safe exiting...
[2026-06-12 02:18:57,667.667 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 02:18:57,670.670 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 02:18:57,673.673 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 02:18:59,712.712 INFO    ] ================================================
[2026-06-12 02:18:59,728.728 INFO    ] Launching Daemon at Fri Jun 12 02:18:59 IST 2026
[2026-06-12 02:18:59,739.739 INFO    ] ================================================
[2026-06-12 02:19:00,093.093 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 02:19:00
[2026-06-12 02:19:00,406.406 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 02:19:00,539.539 INFO    ] Initializing speech engine...
[2026-06-12 02:19:00,543.543 INFO    ] 2026-06-12 02:19:00
[2026-06-12 02:19:00,760.760 INFO    ] 2026-06-12 02:19:00
[2026-06-12 02:19:00,789.789 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 02:19:00,972.972 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 02:19:00,975.975 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 02:19:01,111.111 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 02:19:01,175.175 INFO    ] time= 12/06/2026 02:19:01
[2026-06-12 02:19:01,201.201 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 02:19:01,207.207 INFO    ] Checking for existing commands in stream...
[2026-06-12 02:19:01,323.323 INFO    ] No existing commands found in stream
[2026-06-12 02:19:06,333.333 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 02:19:06,336.336 INFO    ] Waiting 2.52 seconds before fallback handling...
[2026-06-12 02:19:09,241.241 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 02:19:09,243.243 INFO    ] Checking for system updates...
[2026-06-12 02:19:09,265.265 INFO    ] 200
[2026-06-12 02:19:09,267.267 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:19:09,300.300 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 02:19:09,301.301 INFO    ] No update needed
[2026-06-12 02:19:09,303.303 INFO    ] Checking for camera pi updates...
[2026-06-12 02:19:09,323.323 INFO    ] 200
[2026-06-12 02:19:09,324.324 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:19:09,348.348 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 02:19:09,391.391 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 02:19:09,392.392 INFO    ] No camera update needed
[2026-06-12 02:19:09,394.394 INFO    ] Script finished. Safe exiting...
[2026-06-12 02:19:09,395.395 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 02:19:09,398.398 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 02:19:09,402.402 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 02:19:11,446.446 INFO    ] ================================================
[2026-06-12 02:19:11,462.462 INFO    ] Launching Daemon at Fri Jun 12 02:19:11 IST 2026
[2026-06-12 02:19:11,474.474 INFO    ] ================================================
[2026-06-12 02:19:11,815.815 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 02:19:11
[2026-06-12 02:19:12,131.131 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 02:19:12,263.263 INFO    ] Initializing speech engine...
[2026-06-12 02:19:12,276.276 INFO    ] 2026-06-12 02:19:12
[2026-06-12 02:19:12,484.484 INFO    ] 2026-06-12 02:19:12
[2026-06-12 02:19:12,512.512 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 02:19:12,635.635 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 02:19:12,698.698 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 02:19:12,836.836 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 02:19:12,900.900 INFO    ] time= 12/06/2026 02:19:12
[2026-06-12 02:19:12,927.927 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 02:19:12,934.934 INFO    ] Checking for existing commands in stream...
[2026-06-12 02:19:13,001.001 INFO    ] No existing commands found in stream
[2026-06-12 02:19:18,015.015 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 02:19:18,018.018 INFO    ] Waiting 1.09 seconds before fallback handling...
[2026-06-12 02:19:19,472.472 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 02:19:19,474.474 INFO    ] Checking for system updates...
[2026-06-12 02:19:19,496.496 INFO    ] 200
[2026-06-12 02:19:19,497.497 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:19:19,527.527 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 02:19:19,529.529 INFO    ] No update needed
[2026-06-12 02:19:19,530.530 INFO    ] Checking for camera pi updates...
[2026-06-12 02:19:19,550.550 INFO    ] 200
[2026-06-12 02:19:19,551.551 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:19:19,576.576 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 02:19:19,616.616 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 02:19:19,618.618 INFO    ] No camera update needed
[2026-06-12 02:19:19,619.619 INFO    ] Script finished. Safe exiting...
[2026-06-12 02:19:19,620.620 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 02:19:19,624.624 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 02:19:19,626.626 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 02:19:21,669.669 INFO    ] ================================================
[2026-06-12 02:19:21,684.684 INFO    ] Launching Daemon at Fri Jun 12 02:19:21 IST 2026
[2026-06-12 02:19:21,695.695 INFO    ] ================================================
[2026-06-12 02:19:22,021.021 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 02:19:22
[2026-06-12 02:19:22,332.332 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 02:19:22,480.480 INFO    ] Initializing speech engine...
[2026-06-12 02:19:22,485.485 INFO    ] 2026-06-12 02:19:22
[2026-06-12 02:19:22,694.694 INFO    ] 2026-06-12 02:19:22
[2026-06-12 02:19:22,723.723 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 02:19:22,911.911 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 02:19:22,921.921 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 02:19:23,045.045 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 02:19:23,101.101 INFO    ] time= 12/06/2026 02:19:23
[2026-06-12 02:19:23,145.145 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 02:19:23,147.147 INFO    ] Checking for existing commands in stream...
[2026-06-12 02:19:23,219.219 INFO    ] No existing commands found in stream
[2026-06-12 02:19:28,234.234 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 02:19:28,237.237 INFO    ] Waiting 3.52 seconds before fallback handling...
[2026-06-12 02:19:32,083.083 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 02:19:32,085.085 INFO    ] Checking for system updates...
[2026-06-12 02:19:32,108.108 INFO    ] 200
[2026-06-12 02:19:32,110.110 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:19:32,145.145 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 02:19:32,146.146 INFO    ] No update needed
[2026-06-12 02:19:32,147.147 INFO    ] Checking for camera pi updates...
[2026-06-12 02:19:32,168.168 INFO    ] 200
[2026-06-12 02:19:32,169.169 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:19:32,193.193 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 02:19:32,231.231 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 02:19:32,234.234 INFO    ] No camera update needed
[2026-06-12 02:19:32,236.236 INFO    ] Script finished. Safe exiting...
[2026-06-12 02:19:32,238.238 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 02:19:32,244.244 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 02:19:32,249.249 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 02:19:34,288.288 INFO    ] ================================================
[2026-06-12 02:19:34,304.304 INFO    ] Launching Daemon at Fri Jun 12 02:19:34 IST 2026
[2026-06-12 02:19:34,315.315 INFO    ] ================================================
[2026-06-12 02:19:34,707.707 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 02:19:34
[2026-06-12 02:19:35,043.043 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 02:19:35,189.189 INFO    ] Initializing speech engine...
[2026-06-12 02:19:35,199.199 INFO    ] 2026-06-12 02:19:35
[2026-06-12 02:19:35,411.411 INFO    ] 2026-06-12 02:19:35
[2026-06-12 02:19:35,439.439 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 02:19:35,628.628 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 02:19:35,640.640 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 02:19:35,786.786 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 02:19:35,839.839 INFO    ] time= 12/06/2026 02:19:35
[2026-06-12 02:19:35,863.863 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 02:19:35,869.869 INFO    ] Checking for existing commands in stream...
[2026-06-12 02:19:35,937.937 INFO    ] No existing commands found in stream
[2026-06-12 02:19:40,952.952 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 02:19:40,963.963 INFO    ] Waiting 2.69 seconds before fallback handling...
[2026-06-12 02:19:44,022.022 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 02:19:44,023.023 INFO    ] Checking for system updates...
[2026-06-12 02:19:44,044.044 INFO    ] 200
[2026-06-12 02:19:44,046.046 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:19:44,076.076 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 02:19:44,077.077 INFO    ] No update needed
[2026-06-12 02:19:44,078.078 INFO    ] Checking for camera pi updates...
[2026-06-12 02:19:44,100.100 INFO    ] 200
[2026-06-12 02:19:44,102.102 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:19:44,127.127 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 02:19:44,183.183 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 02:19:44,185.185 INFO    ] No camera update needed
[2026-06-12 02:19:44,186.186 INFO    ] Script finished. Safe exiting...
[2026-06-12 02:19:44,187.187 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 02:19:44,190.190 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 02:19:44,193.193 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 02:19:46,232.232 INFO    ] ================================================
[2026-06-12 02:19:46,248.248 INFO    ] Launching Daemon at Fri Jun 12 02:19:46 IST 2026
[2026-06-12 02:19:46,259.259 INFO    ] ================================================
[2026-06-12 02:19:46,639.639 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 02:19:46
[2026-06-12 02:19:46,955.955 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 02:19:47,100.100 INFO    ] Initializing speech engine...
[2026-06-12 02:19:47,105.105 INFO    ] 2026-06-12 02:19:47
[2026-06-12 02:19:47,306.306 INFO    ] 2026-06-12 02:19:47
[2026-06-12 02:19:47,336.336 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 02:19:47,521.521 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 02:19:47,530.530 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 02:19:47,679.679 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 02:19:47,728.728 INFO    ] time= 12/06/2026 02:19:47
[2026-06-12 02:19:47,750.750 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 02:19:47,756.756 INFO    ] Checking for existing commands in stream...
[2026-06-12 02:19:47,824.824 INFO    ] No existing commands found in stream
[2026-06-12 02:19:52,838.838 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 02:19:52,841.841 INFO    ] Waiting 1.03 seconds before fallback handling...
[2026-06-12 02:19:54,254.254 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 02:19:54,255.255 INFO    ] Checking for system updates...
[2026-06-12 02:19:54,276.276 INFO    ] 200
[2026-06-12 02:19:54,278.278 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:19:54,311.311 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 02:19:54,312.312 INFO    ] No update needed
[2026-06-12 02:19:54,314.314 INFO    ] Checking for camera pi updates...
[2026-06-12 02:19:54,335.335 INFO    ] 200
[2026-06-12 02:19:54,336.336 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:19:54,363.363 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 02:19:54,507.507 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 02:19:54,508.508 INFO    ] No camera update needed
[2026-06-12 02:19:54,510.510 INFO    ] Script finished. Safe exiting...
[2026-06-12 02:19:54,511.511 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 02:19:54,515.515 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 02:19:54,518.518 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 02:19:56,558.558 INFO    ] ================================================
[2026-06-12 02:19:56,573.573 INFO    ] Launching Daemon at Fri Jun 12 02:19:56 IST 2026
[2026-06-12 02:19:56,584.584 INFO    ] ================================================
[2026-06-12 02:19:56,910.910 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 02:19:56
[2026-06-12 02:19:57,225.225 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 02:19:57,360.360 INFO    ] Initializing speech engine...
[2026-06-12 02:19:57,368.368 INFO    ] 2026-06-12 02:19:57
[2026-06-12 02:19:57,593.593 INFO    ] 2026-06-12 02:19:57
[2026-06-12 02:19:57,624.624 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 02:19:57,756.756 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 02:19:57,823.823 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 02:19:57,965.965 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 02:19:58,017.017 INFO    ] time= 12/06/2026 02:19:57
[2026-06-12 02:19:58,049.049 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 02:19:58,073.073 INFO    ] Checking for existing commands in stream...
[2026-06-12 02:19:58,176.176 INFO    ] No existing commands found in stream
[2026-06-12 02:20:03,189.189 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 02:20:03,191.191 INFO    ] Waiting 2.39 seconds before fallback handling...
[2026-06-12 02:20:08,386.386 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 02:20:08,389.389 INFO    ] Checking for system updates...
[2026-06-12 02:20:08,438.438 INFO    ] 200
[2026-06-12 02:20:08,440.440 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:20:08,500.500 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 02:20:08,503.503 INFO    ] No update needed
[2026-06-12 02:20:08,505.505 INFO    ] Checking for camera pi updates...
[2026-06-12 02:20:08,527.527 INFO    ] 200
[2026-06-12 02:20:08,529.529 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:20:08,552.552 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 02:20:08,598.598 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 02:20:08,599.599 INFO    ] No camera update needed
[2026-06-12 02:20:08,601.601 INFO    ] Script finished. Safe exiting...
[2026-06-12 02:20:08,602.602 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 02:20:08,605.605 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 02:20:08,607.607 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 02:20:10,648.648 INFO    ] ================================================
[2026-06-12 02:20:10,663.663 INFO    ] Launching Daemon at Fri Jun 12 02:20:10 IST 2026
[2026-06-12 02:20:10,674.674 INFO    ] ================================================
[2026-06-12 02:20:11,026.026 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 02:20:11
[2026-06-12 02:20:11,337.337 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 02:20:11,469.469 INFO    ] Initializing speech engine...
[2026-06-12 02:20:11,473.473 INFO    ] 2026-06-12 02:20:11
[2026-06-12 02:20:11,705.705 INFO    ] 2026-06-12 02:20:11
[2026-06-12 02:20:11,735.735 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 02:20:11,935.935 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 02:20:11,938.938 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 02:20:12,083.083 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 02:20:12,140.140 INFO    ] time= 12/06/2026 02:20:12
[2026-06-12 02:20:12,181.181 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 02:20:12,188.188 INFO    ] Checking for existing commands in stream...
[2026-06-12 02:20:12,290.290 INFO    ] No existing commands found in stream
[2026-06-12 02:20:17,299.299 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 02:20:17,302.302 INFO    ] Waiting 2.69 seconds before fallback handling...
[2026-06-12 02:20:20,391.391 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 02:20:20,392.392 INFO    ] Checking for system updates...
[2026-06-12 02:20:20,413.413 INFO    ] 200
[2026-06-12 02:20:20,415.415 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:20:20,445.445 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 02:20:20,446.446 INFO    ] No update needed
[2026-06-12 02:20:20,448.448 INFO    ] Checking for camera pi updates...
[2026-06-12 02:20:20,468.468 INFO    ] 200
[2026-06-12 02:20:20,470.470 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:20:20,493.493 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 02:20:20,537.537 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 02:20:20,538.538 INFO    ] No camera update needed
[2026-06-12 02:20:20,539.539 INFO    ] Script finished. Safe exiting...
[2026-06-12 02:20:20,541.541 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 02:20:20,544.544 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 02:20:20,546.546 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 02:20:22,585.585 INFO    ] ================================================
[2026-06-12 02:20:22,600.600 INFO    ] Launching Daemon at Fri Jun 12 02:20:22 IST 2026
[2026-06-12 02:20:22,611.611 INFO    ] ================================================
[2026-06-12 02:20:22,950.950 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 02:20:22
[2026-06-12 02:20:23,267.267 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 02:20:23,411.411 INFO    ] Initializing speech engine...
[2026-06-12 02:20:23,416.416 INFO    ] 2026-06-12 02:20:23
[2026-06-12 02:20:23,621.621 INFO    ] 2026-06-12 02:20:23
[2026-06-12 02:20:23,649.649 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 02:20:23,833.833 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 02:20:23,842.842 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 02:20:23,987.987 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 02:20:24,040.040 INFO    ] time= 12/06/2026 02:20:23
[2026-06-12 02:20:24,062.062 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 02:20:24,069.069 INFO    ] Checking for existing commands in stream...
[2026-06-12 02:20:24,136.136 INFO    ] No existing commands found in stream
[2026-06-12 02:20:29,145.145 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 02:20:29,147.147 INFO    ] Waiting 2.32 seconds before fallback handling...
[2026-06-12 02:20:31,848.848 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 02:20:31,850.850 INFO    ] Checking for system updates...
[2026-06-12 02:20:31,876.876 INFO    ] 200
[2026-06-12 02:20:31,878.878 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:20:31,913.913 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 02:20:31,915.915 INFO    ] No update needed
[2026-06-12 02:20:31,916.916 INFO    ] Checking for camera pi updates...
[2026-06-12 02:20:31,938.938 INFO    ] 200
[2026-06-12 02:20:31,940.940 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:20:31,968.968 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 02:20:32,003.003 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 02:20:32,005.005 INFO    ] No camera update needed
[2026-06-12 02:20:32,006.006 INFO    ] Script finished. Safe exiting...
[2026-06-12 02:20:32,008.008 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 02:20:32,012.012 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 02:20:32,015.015 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 02:20:34,047.047 INFO    ] ================================================
[2026-06-12 02:20:34,063.063 INFO    ] Launching Daemon at Fri Jun 12 02:20:34 IST 2026
[2026-06-12 02:20:34,073.073 INFO    ] ================================================
[2026-06-12 02:20:34,406.406 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 02:20:34
[2026-06-12 02:20:34,717.717 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 02:20:34,850.850 INFO    ] Initializing speech engine...
[2026-06-12 02:20:34,858.858 INFO    ] 2026-06-12 02:20:34
[2026-06-12 02:20:35,071.071 INFO    ] 2026-06-12 02:20:35
[2026-06-12 02:20:35,100.100 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 02:20:35,224.224 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 02:20:35,287.287 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 02:20:35,427.427 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 02:20:35,491.491 INFO    ] time= 12/06/2026 02:20:35
[2026-06-12 02:20:35,519.519 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 02:20:35,525.525 INFO    ] Checking for existing commands in stream...
[2026-06-12 02:20:35,621.621 INFO    ] No existing commands found in stream
[2026-06-12 02:20:40,629.629 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 02:20:40,632.632 INFO    ] Waiting 2.27 seconds before fallback handling...
[2026-06-12 02:20:43,292.292 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 02:20:43,294.294 INFO    ] Checking for system updates...
[2026-06-12 02:20:43,315.315 INFO    ] 200
[2026-06-12 02:20:43,317.317 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:20:43,347.347 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 02:20:43,349.349 INFO    ] No update needed
[2026-06-12 02:20:43,351.351 INFO    ] Checking for camera pi updates...
[2026-06-12 02:20:43,372.372 INFO    ] 200
[2026-06-12 02:20:43,373.373 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:20:43,401.401 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 02:20:43,442.442 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 02:20:43,443.443 INFO    ] No camera update needed
[2026-06-12 02:20:43,445.445 INFO    ] Script finished. Safe exiting...
[2026-06-12 02:20:43,446.446 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 02:20:43,449.449 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 02:20:43,453.453 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 02:20:45,493.493 INFO    ] ================================================
[2026-06-12 02:20:45,507.507 INFO    ] Launching Daemon at Fri Jun 12 02:20:45 IST 2026
[2026-06-12 02:20:45,518.518 INFO    ] ================================================
[2026-06-12 02:20:45,852.852 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 02:20:45
[2026-06-12 02:20:46,166.166 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 02:20:46,296.296 INFO    ] Initializing speech engine...
[2026-06-12 02:20:46,300.300 INFO    ] 2026-06-12 02:20:46
[2026-06-12 02:20:46,520.520 INFO    ] 2026-06-12 02:20:46
[2026-06-12 02:20:46,548.548 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 02:20:46,734.734 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 02:20:46,743.743 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 02:20:46,868.868 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 02:20:46,924.924 INFO    ] time= 12/06/2026 02:20:46
[2026-06-12 02:20:46,959.959 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 02:20:46,970.970 INFO    ] Checking for existing commands in stream...
[2026-06-12 02:20:47,042.042 INFO    ] No existing commands found in stream
[2026-06-12 02:20:52,056.056 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 02:20:52,059.059 INFO    ] Waiting 1.43 seconds before fallback handling...
[2026-06-12 02:20:53,868.868 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 02:20:53,870.870 INFO    ] Checking for system updates...
[2026-06-12 02:20:53,890.890 INFO    ] 200
[2026-06-12 02:20:53,892.892 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:20:53,922.922 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 02:20:53,923.923 INFO    ] No update needed
[2026-06-12 02:20:53,925.925 INFO    ] Checking for camera pi updates...
[2026-06-12 02:20:53,944.944 INFO    ] 200
[2026-06-12 02:20:53,945.945 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:20:53,971.971 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 02:20:54,013.013 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 02:20:54,015.015 INFO    ] No camera update needed
[2026-06-12 02:20:54,016.016 INFO    ] Script finished. Safe exiting...
[2026-06-12 02:20:54,017.017 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 02:20:54,020.020 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 02:20:54,023.023 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 02:20:56,063.063 INFO    ] ================================================
[2026-06-12 02:20:56,081.081 INFO    ] Launching Daemon at Fri Jun 12 02:20:56 IST 2026
[2026-06-12 02:20:56,091.091 INFO    ] ================================================
[2026-06-12 02:20:56,422.422 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 02:20:56
[2026-06-12 02:20:56,741.741 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 02:20:56,884.884 INFO    ] Initializing speech engine...
[2026-06-12 02:20:56,889.889 INFO    ] 2026-06-12 02:20:56
[2026-06-12 02:20:57,094.094 INFO    ] 2026-06-12 02:20:57
[2026-06-12 02:20:57,121.121 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 02:20:57,305.305 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 02:20:57,309.309 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 02:20:57,444.444 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 02:20:57,511.511 INFO    ] time= 12/06/2026 02:20:57
[2026-06-12 02:20:57,535.535 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 02:20:57,536.536 INFO    ] Checking for existing commands in stream...
[2026-06-12 02:20:57,608.608 INFO    ] No existing commands found in stream
[2026-06-12 02:21:02,621.621 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 02:21:02,623.623 INFO    ] Waiting 1.47 seconds before fallback handling...
[2026-06-12 02:21:04,474.474 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 02:21:04,476.476 INFO    ] Checking for system updates...
[2026-06-12 02:21:04,498.498 INFO    ] 200
[2026-06-12 02:21:04,500.500 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:21:04,530.530 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 02:21:04,532.532 INFO    ] No update needed
[2026-06-12 02:21:04,533.533 INFO    ] Checking for camera pi updates...
[2026-06-12 02:21:04,553.553 INFO    ] 200
[2026-06-12 02:21:04,554.554 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:21:04,577.577 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 02:21:04,619.619 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 02:21:04,621.621 INFO    ] No camera update needed
[2026-06-12 02:21:04,622.622 INFO    ] Script finished. Safe exiting...
[2026-06-12 02:21:04,623.623 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 02:21:04,626.626 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 02:21:04,629.629 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 02:21:06,669.669 INFO    ] ================================================
[2026-06-12 02:21:06,684.684 INFO    ] Launching Daemon at Fri Jun 12 02:21:06 IST 2026
[2026-06-12 02:21:06,695.695 INFO    ] ================================================
[2026-06-12 02:21:07,027.027 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 02:21:07
[2026-06-12 02:21:07,342.342 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 02:21:07,474.474 INFO    ] Initializing speech engine...
[2026-06-12 02:21:07,482.482 INFO    ] 2026-06-12 02:21:07
[2026-06-12 02:21:07,697.697 INFO    ] 2026-06-12 02:21:07
[2026-06-12 02:21:07,727.727 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 02:21:07,914.914 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 02:21:07,923.923 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 02:21:08,052.052 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 02:21:08,115.115 INFO    ] time= 12/06/2026 02:21:08
[2026-06-12 02:21:08,149.149 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 02:21:08,151.151 INFO    ] Checking for existing commands in stream...
[2026-06-12 02:21:08,223.223 INFO    ] No existing commands found in stream
[2026-06-12 02:21:13,237.237 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 02:21:13,240.240 INFO    ] Waiting 2.51 seconds before fallback handling...
[2026-06-12 02:21:16,141.141 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 02:21:16,222.222 INFO    ] Checking for system updates...
[2026-06-12 02:21:16,246.246 INFO    ] 200
[2026-06-12 02:21:16,248.248 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:21:16,280.280 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 02:21:16,281.281 INFO    ] No update needed
[2026-06-12 02:21:16,283.283 INFO    ] Checking for camera pi updates...
[2026-06-12 02:21:16,304.304 INFO    ] 200
[2026-06-12 02:21:16,305.305 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:21:16,328.328 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 02:21:16,378.378 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 02:21:16,379.379 INFO    ] No camera update needed
[2026-06-12 02:21:16,381.381 INFO    ] Script finished. Safe exiting...
[2026-06-12 02:21:16,382.382 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 02:21:16,385.385 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 02:21:16,388.388 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 02:21:18,427.427 INFO    ] ================================================
[2026-06-12 02:21:18,443.443 INFO    ] Launching Daemon at Fri Jun 12 02:21:18 IST 2026
[2026-06-12 02:21:18,454.454 INFO    ] ================================================
[2026-06-12 02:21:18,814.814 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 02:21:18
[2026-06-12 02:21:19,126.126 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 02:21:19,269.269 INFO    ] Initializing speech engine...
[2026-06-12 02:21:19,275.275 INFO    ] 2026-06-12 02:21:19
[2026-06-12 02:21:19,481.481 INFO    ] 2026-06-12 02:21:19
[2026-06-12 02:21:19,510.510 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 02:21:19,696.696 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 02:21:19,705.705 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 02:21:19,856.856 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 02:21:19,906.906 INFO    ] time= 12/06/2026 02:21:19
[2026-06-12 02:21:19,928.928 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 02:21:19,934.934 INFO    ] Checking for existing commands in stream...
[2026-06-12 02:21:20,001.001 INFO    ] No existing commands found in stream
[2026-06-12 02:21:25,015.015 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 02:21:25,018.018 INFO    ] Waiting 2.12 seconds before fallback handling...
[2026-06-12 02:21:27,521.521 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 02:21:27,522.522 INFO    ] Checking for system updates...
[2026-06-12 02:21:27,544.544 INFO    ] 200
[2026-06-12 02:21:27,546.546 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:21:27,576.576 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 02:21:27,577.577 INFO    ] No update needed
[2026-06-12 02:21:27,579.579 INFO    ] Checking for camera pi updates...
[2026-06-12 02:21:27,599.599 INFO    ] 200
[2026-06-12 02:21:27,601.601 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:21:27,626.626 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 02:21:27,684.684 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 02:21:27,685.685 INFO    ] No camera update needed
[2026-06-12 02:21:27,686.686 INFO    ] Script finished. Safe exiting...
[2026-06-12 02:21:27,688.688 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 02:21:27,691.691 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 02:21:27,693.693 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 02:21:29,732.732 INFO    ] ================================================
[2026-06-12 02:21:29,751.751 INFO    ] Launching Daemon at Fri Jun 12 02:21:29 IST 2026
[2026-06-12 02:21:29,763.763 INFO    ] ================================================
[2026-06-12 02:21:30,100.100 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 02:21:30
[2026-06-12 02:21:30,411.411 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 02:21:30,543.543 INFO    ] Initializing speech engine...
[2026-06-12 02:21:30,548.548 INFO    ] 2026-06-12 02:21:30
[2026-06-12 02:21:30,777.777 INFO    ] 2026-06-12 02:21:30
[2026-06-12 02:21:30,807.807 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 02:21:31,006.006 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 02:21:31,010.010 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 02:21:31,148.148 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 02:21:31,199.199 INFO    ] time= 12/06/2026 02:21:31
[2026-06-12 02:21:31,238.238 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 02:21:31,255.255 INFO    ] Checking for existing commands in stream...
[2026-06-12 02:21:31,331.331 INFO    ] No existing commands found in stream
[2026-06-12 02:21:36,340.340 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 02:21:36,343.343 INFO    ] Waiting 2.00 seconds before fallback handling...
[2026-06-12 02:21:38,660.660 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 02:21:38,661.661 INFO    ] Checking for system updates...
[2026-06-12 02:21:38,682.682 INFO    ] 200
[2026-06-12 02:21:38,684.684 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:21:38,713.713 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 02:21:38,715.715 INFO    ] No update needed
[2026-06-12 02:21:38,716.716 INFO    ] Checking for camera pi updates...
[2026-06-12 02:21:38,735.735 INFO    ] 200
[2026-06-12 02:21:38,737.737 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:21:38,764.764 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 02:21:38,795.795 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 02:21:38,796.796 INFO    ] No camera update needed
[2026-06-12 02:21:38,798.798 INFO    ] Script finished. Safe exiting...
[2026-06-12 02:21:38,799.799 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 02:21:38,802.802 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 02:21:38,805.805 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 02:21:40,844.844 INFO    ] ================================================
[2026-06-12 02:21:40,859.859 INFO    ] Launching Daemon at Fri Jun 12 02:21:40 IST 2026
[2026-06-12 02:21:40,870.870 INFO    ] ================================================
[2026-06-12 02:21:41,238.238 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 02:21:41
[2026-06-12 02:21:41,557.557 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 02:21:41,689.689 INFO    ] Initializing speech engine...
[2026-06-12 02:21:41,697.697 INFO    ] 2026-06-12 02:21:41
[2026-06-12 02:21:41,910.910 INFO    ] 2026-06-12 02:21:41
[2026-06-12 02:21:41,938.938 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 02:21:42,121.121 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 02:21:42,131.131 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 02:21:42,277.277 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 02:21:42,330.330 INFO    ] time= 12/06/2026 02:21:42
[2026-06-12 02:21:42,352.352 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 02:21:42,359.359 INFO    ] Checking for existing commands in stream...
[2026-06-12 02:21:42,449.449 INFO    ] No existing commands found in stream
[2026-06-12 02:21:47,458.458 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 02:21:47,461.461 INFO    ] Waiting 2.34 seconds before fallback handling...
[2026-06-12 02:21:50,196.196 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 02:21:50,197.197 INFO    ] Checking for system updates...
[2026-06-12 02:21:50,218.218 INFO    ] 200
[2026-06-12 02:21:50,220.220 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:21:50,253.253 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 02:21:50,254.254 INFO    ] No update needed
[2026-06-12 02:21:50,256.256 INFO    ] Checking for camera pi updates...
[2026-06-12 02:21:50,276.276 INFO    ] 200
[2026-06-12 02:21:50,277.277 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:21:50,301.301 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 02:21:50,344.344 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 02:21:50,345.345 INFO    ] No camera update needed
[2026-06-12 02:21:50,347.347 INFO    ] Script finished. Safe exiting...
[2026-06-12 02:21:50,348.348 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 02:21:50,351.351 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 02:21:50,354.354 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 02:21:52,397.397 INFO    ] ================================================
[2026-06-12 02:21:52,413.413 INFO    ] Launching Daemon at Fri Jun 12 02:21:52 IST 2026
[2026-06-12 02:21:52,425.425 INFO    ] ================================================
[2026-06-12 02:21:52,767.767 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 02:21:52
[2026-06-12 02:21:53,085.085 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 02:21:53,229.229 INFO    ] Initializing speech engine...
[2026-06-12 02:21:53,234.234 INFO    ] 2026-06-12 02:21:53
[2026-06-12 02:21:53,438.438 INFO    ] 2026-06-12 02:21:53
[2026-06-12 02:21:53,466.466 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 02:21:53,599.599 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 02:21:53,651.651 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 02:21:53,782.782 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 02:21:53,848.848 INFO    ] time= 12/06/2026 02:21:53
[2026-06-12 02:21:53,879.879 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 02:21:53,881.881 INFO    ] Checking for existing commands in stream...
[2026-06-12 02:21:53,976.976 INFO    ] No existing commands found in stream
[2026-06-12 02:21:58,991.991 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 02:21:58,994.994 INFO    ] Waiting 2.09 seconds before fallback handling...
[2026-06-12 02:22:01,469.469 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 02:22:01,471.471 INFO    ] Checking for system updates...
[2026-06-12 02:22:01,502.502 INFO    ] 200
[2026-06-12 02:22:01,504.504 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:22:01,545.545 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 02:22:01,547.547 INFO    ] No update needed
[2026-06-12 02:22:01,549.549 INFO    ] Checking for camera pi updates...
[2026-06-12 02:22:01,574.574 INFO    ] 200
[2026-06-12 02:22:01,576.576 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:22:01,604.604 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 02:22:01,735.735 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 02:22:01,737.737 INFO    ] No camera update needed
[2026-06-12 02:22:01,739.739 INFO    ] Script finished. Safe exiting...
[2026-06-12 02:22:01,740.740 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 02:22:01,744.744 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 02:22:01,748.748 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 02:22:03,789.789 INFO    ] ================================================
[2026-06-12 02:22:03,805.805 INFO    ] Launching Daemon at Fri Jun 12 02:22:03 IST 2026
[2026-06-12 02:22:03,816.816 INFO    ] ================================================
[2026-06-12 02:22:04,147.147 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 02:22:04
[2026-06-12 02:22:04,460.460 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 02:22:04,594.594 INFO    ] Initializing speech engine...
[2026-06-12 02:22:04,597.597 INFO    ] 2026-06-12 02:22:04
[2026-06-12 02:22:04,824.824 INFO    ] 2026-06-12 02:22:04
[2026-06-12 02:22:04,854.854 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 02:22:04,985.985 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 02:22:05,054.054 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 02:22:05,193.193 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 02:22:05,255.255 INFO    ] time= 12/06/2026 02:22:05
[2026-06-12 02:22:05,293.293 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 02:22:05,299.299 INFO    ] Checking for existing commands in stream...
[2026-06-12 02:22:05,387.387 INFO    ] No existing commands found in stream
[2026-06-12 02:22:10,397.397 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 02:22:10,400.400 INFO    ] Waiting 1.63 seconds before fallback handling...
[2026-06-12 02:22:12,404.404 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 02:22:12,406.406 INFO    ] Checking for system updates...
[2026-06-12 02:22:12,429.429 INFO    ] 200
[2026-06-12 02:22:12,431.431 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:22:12,471.471 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 02:22:12,473.473 INFO    ] No update needed
[2026-06-12 02:22:12,474.474 INFO    ] Checking for camera pi updates...
[2026-06-12 02:22:12,498.498 INFO    ] 200
[2026-06-12 02:22:12,500.500 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:22:12,529.529 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 02:22:12,567.567 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 02:22:12,569.569 INFO    ] No camera update needed
[2026-06-12 02:22:12,570.570 INFO    ] Script finished. Safe exiting...
[2026-06-12 02:22:12,572.572 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 02:22:12,575.575 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 02:22:12,578.578 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 02:22:14,610.610 INFO    ] ================================================
[2026-06-12 02:22:14,627.627 INFO    ] Launching Daemon at Fri Jun 12 02:22:14 IST 2026
[2026-06-12 02:22:14,638.638 INFO    ] ================================================
[2026-06-12 02:22:14,976.976 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 02:22:14
[2026-06-12 02:22:15,286.286 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 02:22:15,418.418 INFO    ] Initializing speech engine...
[2026-06-12 02:22:15,431.431 INFO    ] 2026-06-12 02:22:15
[2026-06-12 02:22:15,636.636 INFO    ] 2026-06-12 02:22:15
[2026-06-12 02:22:15,665.665 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 02:22:15,847.847 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 02:22:15,856.856 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 02:22:15,985.985 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 02:22:16,052.052 INFO    ] time= 12/06/2026 02:22:15
[2026-06-12 02:22:16,076.076 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 02:22:16,083.083 INFO    ] Checking for existing commands in stream...
[2026-06-12 02:22:16,149.149 INFO    ] No existing commands found in stream
[2026-06-12 02:22:21,159.159 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 02:22:21,162.162 INFO    ] Waiting 1.31 seconds before fallback handling...
[2026-06-12 02:22:22,845.845 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 02:22:22,846.846 INFO    ] Checking for system updates...
[2026-06-12 02:22:22,868.868 INFO    ] 200
[2026-06-12 02:22:22,869.869 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:22:22,902.902 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 02:22:22,903.903 INFO    ] No update needed
[2026-06-12 02:22:22,905.905 INFO    ] Checking for camera pi updates...
[2026-06-12 02:22:22,924.924 INFO    ] 200
[2026-06-12 02:22:22,926.926 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:22:22,951.951 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 02:22:22,991.991 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 02:22:22,992.992 INFO    ] No camera update needed
[2026-06-12 02:22:22,994.994 INFO    ] Script finished. Safe exiting...
[2026-06-12 02:22:22,995.995 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 02:22:22,998.998 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 02:22:23,001.001 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 02:22:25,042.042 INFO    ] ================================================
[2026-06-12 02:22:25,058.058 INFO    ] Launching Daemon at Fri Jun 12 02:22:25 IST 2026
[2026-06-12 02:22:25,069.069 INFO    ] ================================================
[2026-06-12 02:22:25,417.417 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 02:22:25
[2026-06-12 02:22:25,755.755 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 02:22:25,894.894 INFO    ] Initializing speech engine...
[2026-06-12 02:22:25,907.907 INFO    ] 2026-06-12 02:22:25
[2026-06-12 02:22:26,125.125 INFO    ] 2026-06-12 02:22:26
[2026-06-12 02:22:26,155.155 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 02:22:26,439.439 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 02:22:26,492.492 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 02:22:26,605.605 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 02:22:26,608.608 INFO    ] time= 12/06/2026 02:22:26
[2026-06-12 02:22:26,609.609 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 02:22:26,673.673 INFO    ] Checking for existing commands in stream...
[2026-06-12 02:22:26,737.737 INFO    ] No existing commands found in stream
[2026-06-12 02:22:31,742.742 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 02:22:31,744.744 INFO    ] Waiting 3.04 seconds before fallback handling...
[2026-06-12 02:22:35,098.098 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 02:22:35,100.100 INFO    ] Checking for system updates...
[2026-06-12 02:22:35,121.121 INFO    ] 200
[2026-06-12 02:22:35,122.122 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:22:35,157.157 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 02:22:35,158.158 INFO    ] No update needed
[2026-06-12 02:22:35,160.160 INFO    ] Checking for camera pi updates...
[2026-06-12 02:22:35,180.180 INFO    ] 200
[2026-06-12 02:22:35,182.182 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:22:35,206.206 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 02:22:35,247.247 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 02:22:35,248.248 INFO    ] No camera update needed
[2026-06-12 02:22:35,249.249 INFO    ] Script finished. Safe exiting...
[2026-06-12 02:22:35,251.251 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 02:22:35,254.254 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 02:22:35,256.256 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 02:22:37,295.295 INFO    ] ================================================
[2026-06-12 02:22:37,311.311 INFO    ] Launching Daemon at Fri Jun 12 02:22:37 IST 2026
[2026-06-12 02:22:37,322.322 INFO    ] ================================================
[2026-06-12 02:22:37,650.650 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 02:22:37
[2026-06-12 02:22:37,964.964 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 02:22:38,096.096 INFO    ] Initializing speech engine...
[2026-06-12 02:22:38,101.101 INFO    ] 2026-06-12 02:22:38
[2026-06-12 02:22:38,331.331 INFO    ] 2026-06-12 02:22:38
[2026-06-12 02:22:38,361.361 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 02:22:38,571.571 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 02:22:38,585.585 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 02:22:38,735.735 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 02:22:38,783.783 INFO    ] time= 12/06/2026 02:22:38
[2026-06-12 02:22:38,807.807 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 02:22:38,813.813 INFO    ] Checking for existing commands in stream...
[2026-06-12 02:22:38,884.884 INFO    ] No existing commands found in stream
[2026-06-12 02:22:43,894.894 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 02:22:43,897.897 INFO    ] Waiting 2.49 seconds before fallback handling...
[2026-06-12 02:22:46,800.800 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 02:22:46,803.803 INFO    ] Checking for system updates...
[2026-06-12 02:22:46,839.839 INFO    ] 200
[2026-06-12 02:22:46,842.842 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:22:46,895.895 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 02:22:46,897.897 INFO    ] No update needed
[2026-06-12 02:22:46,899.899 INFO    ] Checking for camera pi updates...
[2026-06-12 02:22:46,929.929 INFO    ] 200
[2026-06-12 02:22:46,931.931 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:22:46,954.954 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 02:22:47,009.009 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 02:22:47,011.011 INFO    ] No camera update needed
[2026-06-12 02:22:47,012.012 INFO    ] Script finished. Safe exiting...
[2026-06-12 02:22:47,013.013 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 02:22:47,016.016 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 02:22:47,019.019 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 02:22:49,059.059 INFO    ] ================================================
[2026-06-12 02:22:49,091.091 INFO    ] Launching Daemon at Fri Jun 12 02:22:49 IST 2026
[2026-06-12 02:22:49,102.102 INFO    ] ================================================
[2026-06-12 02:22:49,485.485 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 02:22:49
[2026-06-12 02:22:49,804.804 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 02:22:49,937.937 INFO    ] Initializing speech engine...
[2026-06-12 02:22:49,942.942 INFO    ] 2026-06-12 02:22:49
[2026-06-12 02:22:50,151.151 INFO    ] 2026-06-12 02:22:50
[2026-06-12 02:22:50,179.179 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 02:22:50,336.336 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 02:22:50,394.394 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 02:22:50,545.545 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 02:22:50,597.597 INFO    ] time= 12/06/2026 02:22:50
[2026-06-12 02:22:50,630.630 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 02:22:50,653.653 INFO    ] Checking for existing commands in stream...
[2026-06-12 02:22:50,756.756 INFO    ] No existing commands found in stream
[2026-06-12 02:22:55,765.765 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 02:22:55,767.767 INFO    ] Waiting 3.29 seconds before fallback handling...
[2026-06-12 02:22:59,439.439 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 02:22:59,441.441 INFO    ] Checking for system updates...
[2026-06-12 02:22:59,463.463 INFO    ] 200
[2026-06-12 02:22:59,464.464 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:22:59,495.495 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 02:22:59,496.496 INFO    ] No update needed
[2026-06-12 02:22:59,498.498 INFO    ] Checking for camera pi updates...
[2026-06-12 02:22:59,518.518 INFO    ] 200
[2026-06-12 02:22:59,519.519 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:22:59,543.543 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 02:22:59,589.589 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 02:22:59,590.590 INFO    ] No camera update needed
[2026-06-12 02:22:59,592.592 INFO    ] Script finished. Safe exiting...
[2026-06-12 02:22:59,593.593 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 02:22:59,596.596 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 02:22:59,599.599 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 02:23:01,635.635 INFO    ] ================================================
[2026-06-12 02:23:01,648.648 INFO    ] Launching Daemon at Fri Jun 12 02:23:01 IST 2026
[2026-06-12 02:23:01,662.662 INFO    ] ================================================
[2026-06-12 02:23:02,057.057 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 02:23:02
[2026-06-12 02:23:02,429.429 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 02:23:02,579.579 INFO    ] Initializing speech engine...
[2026-06-12 02:23:02,588.588 INFO    ] 2026-06-12 02:23:02
[2026-06-12 02:23:02,811.811 INFO    ] 2026-06-12 02:23:02
[2026-06-12 02:23:02,841.841 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 02:23:02,975.975 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 02:23:03,038.038 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 02:23:03,187.187 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 02:23:03,234.234 INFO    ] time= 12/06/2026 02:23:03
[2026-06-12 02:23:03,274.274 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 02:23:03,302.302 INFO    ] Checking for existing commands in stream...
[2026-06-12 02:23:03,374.374 INFO    ] No existing commands found in stream
[2026-06-12 02:23:08,385.385 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 02:23:08,387.387 INFO    ] Waiting 0.07 seconds before fallback handling...
[2026-06-12 02:23:08,812.812 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 02:23:08,814.814 INFO    ] Checking for system updates...
[2026-06-12 02:23:08,835.835 INFO    ] 200
[2026-06-12 02:23:08,836.836 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:23:08,869.869 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 02:23:08,871.871 INFO    ] No update needed
[2026-06-12 02:23:08,873.873 INFO    ] Checking for camera pi updates...
[2026-06-12 02:23:08,894.894 INFO    ] 200
[2026-06-12 02:23:08,896.896 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:23:08,920.920 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 02:23:08,966.966 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 02:23:08,967.967 INFO    ] No camera update needed
[2026-06-12 02:23:08,969.969 INFO    ] Script finished. Safe exiting...
[2026-06-12 02:23:08,970.970 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 02:23:08,973.973 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 02:23:08,976.976 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 02:23:11,017.017 INFO    ] ================================================
[2026-06-12 02:23:11,033.033 INFO    ] Launching Daemon at Fri Jun 12 02:23:11 IST 2026
[2026-06-12 02:23:11,044.044 INFO    ] ================================================
[2026-06-12 02:23:11,372.372 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 02:23:11
[2026-06-12 02:23:11,686.686 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 02:23:11,820.820 INFO    ] Initializing speech engine...
[2026-06-12 02:23:11,831.831 INFO    ] 2026-06-12 02:23:11
[2026-06-12 02:23:12,041.041 INFO    ] 2026-06-12 02:23:12
[2026-06-12 02:23:12,070.070 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 02:23:12,194.194 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 02:23:12,258.258 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 02:23:12,397.397 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 02:23:12,458.458 INFO    ] time= 12/06/2026 02:23:12
[2026-06-12 02:23:12,492.492 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 02:23:12,498.498 INFO    ] Checking for existing commands in stream...
[2026-06-12 02:23:12,566.566 INFO    ] No existing commands found in stream
[2026-06-12 02:23:17,592.592 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 02:23:17,595.595 INFO    ] Waiting 3.32 seconds before fallback handling...
[2026-06-12 02:23:21,272.272 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 02:23:21,274.274 INFO    ] Checking for system updates...
[2026-06-12 02:23:21,294.294 INFO    ] 200
[2026-06-12 02:23:21,296.296 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:23:21,326.326 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 02:23:21,328.328 INFO    ] No update needed
[2026-06-12 02:23:21,329.329 INFO    ] Checking for camera pi updates...
[2026-06-12 02:23:21,348.348 INFO    ] 200
[2026-06-12 02:23:21,349.349 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:23:21,373.373 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 02:23:21,420.420 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 02:23:21,421.421 INFO    ] No camera update needed
[2026-06-12 02:23:21,422.422 INFO    ] Script finished. Safe exiting...
[2026-06-12 02:23:21,424.424 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 02:23:21,426.426 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 02:23:21,429.429 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 02:23:23,471.471 INFO    ] ================================================
[2026-06-12 02:23:23,487.487 INFO    ] Launching Daemon at Fri Jun 12 02:23:23 IST 2026
[2026-06-12 02:23:23,498.498 INFO    ] ================================================
[2026-06-12 02:23:23,854.854 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 02:23:23
[2026-06-12 02:23:24,195.195 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 02:23:24,348.348 INFO    ] Initializing speech engine...
[2026-06-12 02:23:24,354.354 INFO    ] 2026-06-12 02:23:24
[2026-06-12 02:23:24,565.565 INFO    ] 2026-06-12 02:23:24
[2026-06-12 02:23:24,595.595 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 02:23:24,781.781 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 02:23:24,791.791 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 02:23:24,949.949 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 02:23:24,994.994 INFO    ] time= 12/06/2026 02:23:24
[2026-06-12 02:23:25,015.015 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 02:23:25,022.022 INFO    ] Checking for existing commands in stream...
[2026-06-12 02:23:25,089.089 INFO    ] No existing commands found in stream
[2026-06-12 02:23:30,104.104 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 02:23:30,107.107 INFO    ] Waiting 2.61 seconds before fallback handling...
[2026-06-12 02:23:33,070.070 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 02:23:33,073.073 INFO    ] Checking for system updates...
[2026-06-12 02:23:33,111.111 INFO    ] 200
[2026-06-12 02:23:33,114.114 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:23:33,165.165 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 02:23:33,167.167 INFO    ] No update needed
[2026-06-12 02:23:33,168.168 INFO    ] Checking for camera pi updates...
[2026-06-12 02:23:33,188.188 INFO    ] 200
[2026-06-12 02:23:33,189.189 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:23:33,213.213 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 02:23:33,262.262 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 02:23:33,263.263 INFO    ] No camera update needed
[2026-06-12 02:23:33,265.265 INFO    ] Script finished. Safe exiting...
[2026-06-12 02:23:33,266.266 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 02:23:33,269.269 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 02:23:33,272.272 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 02:23:35,310.310 INFO    ] ================================================
[2026-06-12 02:23:35,325.325 INFO    ] Launching Daemon at Fri Jun 12 02:23:35 IST 2026
[2026-06-12 02:23:35,336.336 INFO    ] ================================================
[2026-06-12 02:23:35,691.691 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 02:23:35
[2026-06-12 02:23:36,035.035 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 02:23:36,189.189 INFO    ] Initializing speech engine...
[2026-06-12 02:23:36,192.192 INFO    ] 2026-06-12 02:23:36
[2026-06-12 02:23:36,400.400 INFO    ] 2026-06-12 02:23:36
[2026-06-12 02:23:36,430.430 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 02:23:36,612.612 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 02:23:36,616.616 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 02:23:36,771.771 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 02:23:36,829.829 INFO    ] time= 12/06/2026 02:23:36
[2026-06-12 02:23:36,855.855 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 02:23:36,857.857 INFO    ] Checking for existing commands in stream...
[2026-06-12 02:23:36,935.935 INFO    ] No existing commands found in stream
[2026-06-12 02:23:41,944.944 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 02:23:41,947.947 INFO    ] Waiting 1.97 seconds before fallback handling...
[2026-06-12 02:23:44,297.297 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 02:23:44,299.299 INFO    ] Checking for system updates...
[2026-06-12 02:23:44,320.320 INFO    ] 200
[2026-06-12 02:23:44,321.321 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:23:44,351.351 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 02:23:44,353.353 INFO    ] No update needed
[2026-06-12 02:23:44,354.354 INFO    ] Checking for camera pi updates...
[2026-06-12 02:23:44,374.374 INFO    ] 200
[2026-06-12 02:23:44,375.375 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:23:44,400.400 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 02:23:44,432.432 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 02:23:44,434.434 INFO    ] No camera update needed
[2026-06-12 02:23:44,435.435 INFO    ] Script finished. Safe exiting...
[2026-06-12 02:23:44,436.436 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 02:23:44,439.439 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 02:23:44,442.442 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 02:23:46,474.474 INFO    ] ================================================
[2026-06-12 02:23:46,489.489 INFO    ] Launching Daemon at Fri Jun 12 02:23:46 IST 2026
[2026-06-12 02:23:46,500.500 INFO    ] ================================================
[2026-06-12 02:23:46,871.871 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 02:23:46
[2026-06-12 02:23:47,216.216 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 02:23:47,365.365 INFO    ] Initializing speech engine...
[2026-06-12 02:23:47,376.376 INFO    ] 2026-06-12 02:23:47
[2026-06-12 02:23:47,588.588 INFO    ] 2026-06-12 02:23:47
[2026-06-12 02:23:47,617.617 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 02:23:47,804.804 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 02:23:47,814.814 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 02:23:47,946.946 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 02:23:48,013.013 INFO    ] time= 12/06/2026 02:23:47
[2026-06-12 02:23:48,038.038 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 02:23:48,044.044 INFO    ] Checking for existing commands in stream...
[2026-06-12 02:23:48,135.135 INFO    ] No existing commands found in stream
[2026-06-12 02:23:53,150.150 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 02:23:53,154.154 INFO    ] Waiting 1.00 seconds before fallback handling...
[2026-06-12 02:23:54,522.522 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 02:23:54,523.523 INFO    ] Checking for system updates...
[2026-06-12 02:23:54,545.545 INFO    ] 200
[2026-06-12 02:23:54,546.546 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:23:54,579.579 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 02:23:54,581.581 INFO    ] No update needed
[2026-06-12 02:23:54,582.582 INFO    ] Checking for camera pi updates...
[2026-06-12 02:23:54,601.601 INFO    ] 200
[2026-06-12 02:23:54,603.603 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:23:54,626.626 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 02:23:54,669.669 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 02:23:54,671.671 INFO    ] No camera update needed
[2026-06-12 02:23:54,672.672 INFO    ] Script finished. Safe exiting...
[2026-06-12 02:23:54,673.673 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 02:23:54,676.676 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 02:23:54,679.679 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 02:23:56,717.717 INFO    ] ================================================
[2026-06-12 02:23:56,732.732 INFO    ] Launching Daemon at Fri Jun 12 02:23:56 IST 2026
[2026-06-12 02:23:56,743.743 INFO    ] ================================================
[2026-06-12 02:23:57,088.088 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 02:23:57
[2026-06-12 02:23:57,399.399 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 02:23:57,545.545 INFO    ] Initializing speech engine...
[2026-06-12 02:23:57,551.551 INFO    ] 2026-06-12 02:23:57
[2026-06-12 02:23:57,769.769 INFO    ] 2026-06-12 02:23:57
[2026-06-12 02:23:57,799.799 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 02:23:57,997.997 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 02:23:58,005.005 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 02:23:58,147.147 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 02:23:58,194.194 INFO    ] time= 12/06/2026 02:23:58
[2026-06-12 02:23:58,233.233 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 02:23:58,256.256 INFO    ] Checking for existing commands in stream...
[2026-06-12 02:23:58,333.333 INFO    ] No existing commands found in stream
[2026-06-12 02:24:03,344.344 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 02:24:03,347.347 INFO    ] Waiting 3.01 seconds before fallback handling...
[2026-06-12 02:24:06,713.713 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 02:24:06,714.714 INFO    ] Checking for system updates...
[2026-06-12 02:24:06,735.735 INFO    ] 200
[2026-06-12 02:24:06,736.736 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:24:06,766.766 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 02:24:06,768.768 INFO    ] No update needed
[2026-06-12 02:24:06,769.769 INFO    ] Checking for camera pi updates...
[2026-06-12 02:24:06,788.788 INFO    ] 200
[2026-06-12 02:24:06,789.789 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:24:06,813.813 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 02:24:06,955.955 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 02:24:06,957.957 INFO    ] No camera update needed
[2026-06-12 02:24:06,958.958 INFO    ] Script finished. Safe exiting...
[2026-06-12 02:24:06,959.959 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 02:24:06,962.962 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 02:24:06,965.965 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 02:24:09,004.004 INFO    ] ================================================
[2026-06-12 02:24:09,019.019 INFO    ] Launching Daemon at Fri Jun 12 02:24:09 IST 2026
[2026-06-12 02:24:09,030.030 INFO    ] ================================================
[2026-06-12 02:24:09,393.393 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 02:24:09
[2026-06-12 02:24:09,731.731 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 02:24:09,875.875 INFO    ] Initializing speech engine...
[2026-06-12 02:24:09,886.886 INFO    ] 2026-06-12 02:24:09
[2026-06-12 02:24:10,094.094 INFO    ] 2026-06-12 02:24:10
[2026-06-12 02:24:10,123.123 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 02:24:10,307.307 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 02:24:10,318.318 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 02:24:10,456.456 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 02:24:10,514.514 INFO    ] time= 12/06/2026 02:24:10
[2026-06-12 02:24:10,537.537 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 02:24:10,543.543 INFO    ] Checking for existing commands in stream...
[2026-06-12 02:24:10,633.633 INFO    ] No existing commands found in stream
[2026-06-12 02:24:15,648.648 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 02:24:15,651.651 INFO    ] Waiting 0.29 seconds before fallback handling...
[2026-06-12 02:24:16,322.322 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 02:24:16,323.323 INFO    ] Checking for system updates...
[2026-06-12 02:24:16,344.344 INFO    ] 200
[2026-06-12 02:24:16,346.346 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:24:16,377.377 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 02:24:16,379.379 INFO    ] No update needed
[2026-06-12 02:24:16,380.380 INFO    ] Checking for camera pi updates...
[2026-06-12 02:24:16,401.401 INFO    ] 200
[2026-06-12 02:24:16,402.402 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:24:16,426.426 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 02:24:16,469.469 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 02:24:16,470.470 INFO    ] No camera update needed
[2026-06-12 02:24:16,472.472 INFO    ] Script finished. Safe exiting...
[2026-06-12 02:24:16,473.473 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 02:24:16,476.476 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 02:24:16,479.479 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 02:24:18,518.518 INFO    ] ================================================
[2026-06-12 02:24:18,534.534 INFO    ] Launching Daemon at Fri Jun 12 02:24:18 IST 2026
[2026-06-12 02:24:18,545.545 INFO    ] ================================================
[2026-06-12 02:24:18,876.876 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 02:24:18
[2026-06-12 02:24:19,188.188 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 02:24:19,325.325 INFO    ] Initializing speech engine...
[2026-06-12 02:24:19,335.335 INFO    ] 2026-06-12 02:24:19
[2026-06-12 02:24:19,541.541 INFO    ] 2026-06-12 02:24:19
[2026-06-12 02:24:19,570.570 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 02:24:19,694.694 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 02:24:19,757.757 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 02:24:19,890.890 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 02:24:19,951.951 INFO    ] time= 12/06/2026 02:24:19
[2026-06-12 02:24:19,981.981 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 02:24:19,991.991 INFO    ] Checking for existing commands in stream...
[2026-06-12 02:24:20,064.064 INFO    ] No existing commands found in stream
[2026-06-12 02:24:25,072.072 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 02:24:25,075.075 INFO    ] Waiting 1.74 seconds before fallback handling...
[2026-06-12 02:24:27,191.191 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 02:24:27,193.193 INFO    ] Checking for system updates...
[2026-06-12 02:24:27,215.215 INFO    ] 200
[2026-06-12 02:24:27,216.216 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:24:27,246.246 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 02:24:27,247.247 INFO    ] No update needed
[2026-06-12 02:24:27,249.249 INFO    ] Checking for camera pi updates...
[2026-06-12 02:24:27,268.268 INFO    ] 200
[2026-06-12 02:24:27,269.269 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:24:27,295.295 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 02:24:27,322.322 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 02:24:27,324.324 INFO    ] No camera update needed
[2026-06-12 02:24:27,325.325 INFO    ] Script finished. Safe exiting...
[2026-06-12 02:24:27,326.326 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 02:24:27,329.329 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 02:24:27,332.332 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 02:24:29,372.372 INFO    ] ================================================
[2026-06-12 02:24:29,388.388 INFO    ] Launching Daemon at Fri Jun 12 02:24:29 IST 2026
[2026-06-12 02:24:29,399.399 INFO    ] ================================================
[2026-06-12 02:24:29,731.731 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 02:24:29
[2026-06-12 02:24:30,043.043 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 02:24:30,183.183 INFO    ] Initializing speech engine...
[2026-06-12 02:24:30,193.193 INFO    ] 2026-06-12 02:24:30
[2026-06-12 02:24:30,395.395 INFO    ] 2026-06-12 02:24:30
[2026-06-12 02:24:30,424.424 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 02:24:30,587.587 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 02:24:30,613.613 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 02:24:30,741.741 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 02:24:30,792.792 INFO    ] time= 12/06/2026 02:24:30
[2026-06-12 02:24:30,836.836 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 02:24:30,841.841 INFO    ] Checking for existing commands in stream...
[2026-06-12 02:24:30,912.912 INFO    ] No existing commands found in stream
[2026-06-12 02:24:35,921.921 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 02:24:35,924.924 INFO    ] Waiting 1.56 seconds before fallback handling...
[2026-06-12 02:24:37,862.862 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 02:24:37,864.864 INFO    ] Checking for system updates...
[2026-06-12 02:24:37,885.885 INFO    ] 200
[2026-06-12 02:24:37,886.886 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:24:37,916.916 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 02:24:37,917.917 INFO    ] No update needed
[2026-06-12 02:24:37,918.918 INFO    ] Checking for camera pi updates...
[2026-06-12 02:24:37,938.938 INFO    ] 200
[2026-06-12 02:24:37,940.940 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:24:37,965.965 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 02:24:38,015.015 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 02:24:38,016.016 INFO    ] No camera update needed
[2026-06-12 02:24:38,018.018 INFO    ] Script finished. Safe exiting...
[2026-06-12 02:24:38,019.019 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 02:24:38,022.022 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 02:24:38,024.024 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 02:24:40,063.063 INFO    ] ================================================
[2026-06-12 02:24:40,078.078 INFO    ] Launching Daemon at Fri Jun 12 02:24:40 IST 2026
[2026-06-12 02:24:40,088.088 INFO    ] ================================================
[2026-06-12 02:24:40,480.480 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 02:24:40
[2026-06-12 02:24:40,820.820 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 02:24:40,971.971 INFO    ] Initializing speech engine...
[2026-06-12 02:24:40,985.985 INFO    ] 2026-06-12 02:24:40
[2026-06-12 02:24:41,195.195 INFO    ] 2026-06-12 02:24:41
[2026-06-12 02:24:41,213.213 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 02:24:41,425.425 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 02:24:41,429.429 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 02:24:41,570.570 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 02:24:41,621.621 INFO    ] time= 12/06/2026 02:24:41
[2026-06-12 02:24:41,655.655 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 02:24:41,678.678 INFO    ] Checking for existing commands in stream...
[2026-06-12 02:24:41,754.754 INFO    ] No existing commands found in stream
[2026-06-12 02:24:46,765.765 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 02:24:46,767.767 INFO    ] Waiting 2.76 seconds before fallback handling...
[2026-06-12 02:24:49,920.920 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 02:24:49,922.922 INFO    ] Checking for system updates...
[2026-06-12 02:24:49,943.943 INFO    ] 200
[2026-06-12 02:24:49,944.944 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:24:49,977.977 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 02:24:49,978.978 INFO    ] No update needed
[2026-06-12 02:24:49,979.979 INFO    ] Checking for camera pi updates...
[2026-06-12 02:24:50,002.002 INFO    ] 200
[2026-06-12 02:24:50,003.003 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:24:50,026.026 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 02:24:50,073.073 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 02:24:50,074.074 INFO    ] No camera update needed
[2026-06-12 02:24:50,075.075 INFO    ] Script finished. Safe exiting...
[2026-06-12 02:24:50,076.076 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 02:24:50,079.079 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 02:24:50,082.082 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 02:24:52,121.121 INFO    ] ================================================
[2026-06-12 02:24:52,136.136 INFO    ] Launching Daemon at Fri Jun 12 02:24:52 IST 2026
[2026-06-12 02:24:52,147.147 INFO    ] ================================================
[2026-06-12 02:24:52,488.488 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 02:24:52
[2026-06-12 02:24:52,800.800 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 02:24:52,930.930 INFO    ] Initializing speech engine...
[2026-06-12 02:24:52,934.934 INFO    ] 2026-06-12 02:24:52
[2026-06-12 02:24:53,153.153 INFO    ] 2026-06-12 02:24:53
[2026-06-12 02:24:53,182.182 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 02:24:53,368.368 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 02:24:53,377.377 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 02:24:53,501.501 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 02:24:53,567.567 INFO    ] time= 12/06/2026 02:24:53
[2026-06-12 02:24:53,601.601 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 02:24:53,603.603 INFO    ] Checking for existing commands in stream...
[2026-06-12 02:24:53,700.700 INFO    ] No existing commands found in stream
[2026-06-12 02:24:58,714.714 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 02:24:58,717.717 INFO    ] Waiting 3.98 seconds before fallback handling...
[2026-06-12 02:25:03,040.040 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 02:25:03,042.042 INFO    ] Checking for system updates...
[2026-06-12 02:25:03,062.062 INFO    ] 200
[2026-06-12 02:25:03,065.065 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:25:03,103.103 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 02:25:03,104.104 INFO    ] No update needed
[2026-06-12 02:25:03,105.105 INFO    ] Checking for camera pi updates...
[2026-06-12 02:25:03,125.125 INFO    ] 200
[2026-06-12 02:25:03,126.126 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:25:03,150.150 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 02:25:03,179.179 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 02:25:03,181.181 INFO    ] No camera update needed
[2026-06-12 02:25:03,183.183 INFO    ] Script finished. Safe exiting...
[2026-06-12 02:25:03,184.184 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 02:25:03,188.188 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 02:25:03,191.191 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 02:25:05,233.233 INFO    ] ================================================
[2026-06-12 02:25:05,248.248 INFO    ] Launching Daemon at Fri Jun 12 02:25:05 IST 2026
[2026-06-12 02:25:05,259.259 INFO    ] ================================================
[2026-06-12 02:25:05,600.600 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 02:25:05
[2026-06-12 02:25:05,939.939 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 02:25:06,080.080 INFO    ] Initializing speech engine...
[2026-06-12 02:25:06,093.093 INFO    ] 2026-06-12 02:25:06
[2026-06-12 02:25:06,285.285 INFO    ] 2026-06-12 02:25:06
[2026-06-12 02:25:06,328.328 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 02:25:06,476.476 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 02:25:06,523.523 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 02:25:06,671.671 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 02:25:06,704.704 INFO    ] time= 12/06/2026 02:25:06
[2026-06-12 02:25:06,753.753 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 02:25:06,779.779 INFO    ] Checking for existing commands in stream...
[2026-06-12 02:25:06,846.846 INFO    ] No existing commands found in stream
[2026-06-12 02:25:11,861.861 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 02:25:11,864.864 INFO    ] Waiting 1.13 seconds before fallback handling...
[2026-06-12 02:25:13,355.355 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 02:25:13,357.357 INFO    ] Checking for system updates...
[2026-06-12 02:25:13,380.380 INFO    ] 200
[2026-06-12 02:25:13,381.381 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:25:13,414.414 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 02:25:13,416.416 INFO    ] No update needed
[2026-06-12 02:25:13,417.417 INFO    ] Checking for camera pi updates...
[2026-06-12 02:25:13,437.437 INFO    ] 200
[2026-06-12 02:25:13,439.439 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:25:13,463.463 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 02:25:13,507.507 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 02:25:13,508.508 INFO    ] No camera update needed
[2026-06-12 02:25:13,510.510 INFO    ] Script finished. Safe exiting...
[2026-06-12 02:25:13,511.511 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 02:25:13,515.515 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 02:25:13,517.517 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 02:25:15,556.556 INFO    ] ================================================
[2026-06-12 02:25:15,571.571 INFO    ] Launching Daemon at Fri Jun 12 02:25:15 IST 2026
[2026-06-12 02:25:15,582.582 INFO    ] ================================================
[2026-06-12 02:25:15,913.913 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 02:25:15
[2026-06-12 02:25:16,229.229 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 02:25:16,362.362 INFO    ] Initializing speech engine...
[2026-06-12 02:25:16,376.376 INFO    ] 2026-06-12 02:25:16
[2026-06-12 02:25:16,582.582 INFO    ] 2026-06-12 02:25:16
[2026-06-12 02:25:16,611.611 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 02:25:16,793.793 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 02:25:16,797.797 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 02:25:16,954.954 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 02:25:17,003.003 INFO    ] time= 12/06/2026 02:25:16
[2026-06-12 02:25:17,023.023 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 02:25:17,030.030 INFO    ] Checking for existing commands in stream...
[2026-06-12 02:25:17,097.097 INFO    ] No existing commands found in stream
[2026-06-12 02:25:22,102.102 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 02:25:22,111.111 INFO    ] Waiting 2.20 seconds before fallback handling...
[2026-06-12 02:25:24,684.684 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 02:25:24,685.685 INFO    ] Checking for system updates...
[2026-06-12 02:25:24,706.706 INFO    ] 200
[2026-06-12 02:25:24,708.708 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:25:24,743.743 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 02:25:24,744.744 INFO    ] No update needed
[2026-06-12 02:25:24,746.746 INFO    ] Checking for camera pi updates...
[2026-06-12 02:25:24,765.765 INFO    ] 200
[2026-06-12 02:25:24,766.766 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:25:24,792.792 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 02:25:24,835.835 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 02:25:24,837.837 INFO    ] No camera update needed
[2026-06-12 02:25:24,838.838 INFO    ] Script finished. Safe exiting...
[2026-06-12 02:25:24,839.839 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 02:25:24,842.842 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 02:25:24,845.845 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 02:25:26,885.885 INFO    ] ================================================
[2026-06-12 02:25:26,900.900 INFO    ] Launching Daemon at Fri Jun 12 02:25:26 IST 2026
[2026-06-12 02:25:26,911.911 INFO    ] ================================================
[2026-06-12 02:25:27,271.271 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 02:25:27
[2026-06-12 02:25:27,610.610 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 02:25:27,765.765 INFO    ] Initializing speech engine...
[2026-06-12 02:25:27,770.770 INFO    ] 2026-06-12 02:25:27
[2026-06-12 02:25:27,976.976 INFO    ] 2026-06-12 02:25:27
[2026-06-12 02:25:28,005.005 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 02:25:28,187.187 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 02:25:28,198.198 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 02:25:28,351.351 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 02:25:28,395.395 INFO    ] time= 12/06/2026 02:25:28
[2026-06-12 02:25:28,416.416 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 02:25:28,422.422 INFO    ] Checking for existing commands in stream...
[2026-06-12 02:25:28,489.489 INFO    ] No existing commands found in stream
[2026-06-12 02:25:33,504.504 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 02:25:33,507.507 INFO    ] Waiting 3.10 seconds before fallback handling...
[2026-06-12 02:25:37,002.002 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 02:25:37,003.003 INFO    ] Checking for system updates...
[2026-06-12 02:25:37,024.024 INFO    ] 200
[2026-06-12 02:25:37,026.026 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:25:37,058.058 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 02:25:37,059.059 INFO    ] No update needed
[2026-06-12 02:25:37,061.061 INFO    ] Checking for camera pi updates...
[2026-06-12 02:25:37,080.080 INFO    ] 200
[2026-06-12 02:25:37,082.082 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:25:37,105.105 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 02:25:37,157.157 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 02:25:37,158.158 INFO    ] No camera update needed
[2026-06-12 02:25:37,159.159 INFO    ] Script finished. Safe exiting...
[2026-06-12 02:25:37,161.161 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 02:25:37,164.164 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 02:25:37,166.166 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 02:25:39,205.205 INFO    ] ================================================
[2026-06-12 02:25:39,220.220 INFO    ] Launching Daemon at Fri Jun 12 02:25:39 IST 2026
[2026-06-12 02:25:39,231.231 INFO    ] ================================================
[2026-06-12 02:25:39,573.573 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 02:25:39
[2026-06-12 02:25:39,884.884 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 02:25:40,016.016 INFO    ] Initializing speech engine...
[2026-06-12 02:25:40,025.025 INFO    ] 2026-06-12 02:25:40
[2026-06-12 02:25:40,236.236 INFO    ] 2026-06-12 02:25:40
[2026-06-12 02:25:40,264.264 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 02:25:40,446.446 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 02:25:40,450.450 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 02:25:40,584.584 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 02:25:40,644.644 INFO    ] time= 12/06/2026 02:25:40
[2026-06-12 02:25:40,675.675 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 02:25:40,681.681 INFO    ] Checking for existing commands in stream...
[2026-06-12 02:25:40,748.748 INFO    ] No existing commands found in stream
[2026-06-12 02:25:45,767.767 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 02:25:45,770.770 INFO    ] Waiting 2.59 seconds before fallback handling...
[2026-06-12 02:25:48,721.721 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 02:25:48,725.725 INFO    ] Checking for system updates...
[2026-06-12 02:25:48,748.748 INFO    ] 200
[2026-06-12 02:25:48,750.750 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:25:48,783.783 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 02:25:48,785.785 INFO    ] No update needed
[2026-06-12 02:25:48,786.786 INFO    ] Checking for camera pi updates...
[2026-06-12 02:25:48,809.809 INFO    ] 200
[2026-06-12 02:25:48,810.810 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:25:48,834.834 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 02:25:48,876.876 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 02:25:48,877.877 INFO    ] No camera update needed
[2026-06-12 02:25:48,879.879 INFO    ] Script finished. Safe exiting...
[2026-06-12 02:25:48,880.880 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 02:25:48,883.883 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 02:25:48,886.886 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 02:25:50,925.925 INFO    ] ================================================
[2026-06-12 02:25:50,941.941 INFO    ] Launching Daemon at Fri Jun 12 02:25:50 IST 2026
[2026-06-12 02:25:50,952.952 INFO    ] ================================================
[2026-06-12 02:25:51,327.327 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 02:25:51
[2026-06-12 02:25:51,666.666 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 02:25:51,817.817 INFO    ] Initializing speech engine...
[2026-06-12 02:25:51,823.823 INFO    ] 2026-06-12 02:25:51
[2026-06-12 02:25:52,034.034 INFO    ] 2026-06-12 02:25:52
[2026-06-12 02:25:52,063.063 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 02:25:52,247.247 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 02:25:52,257.257 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 02:25:52,384.384 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 02:25:52,450.450 INFO    ] time= 12/06/2026 02:25:52
[2026-06-12 02:25:52,482.482 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 02:25:52,489.489 INFO    ] Checking for existing commands in stream...
[2026-06-12 02:25:52,578.578 INFO    ] No existing commands found in stream
[2026-06-12 02:25:57,588.588 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 02:25:57,591.591 INFO    ] Waiting 2.60 seconds before fallback handling...
[2026-06-12 02:26:00,602.602 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 02:26:00,604.604 INFO    ] Checking for system updates...
[2026-06-12 02:26:00,626.626 INFO    ] 200
[2026-06-12 02:26:00,628.628 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:26:00,659.659 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 02:26:00,660.660 INFO    ] No update needed
[2026-06-12 02:26:00,662.662 INFO    ] Checking for camera pi updates...
[2026-06-12 02:26:00,683.683 INFO    ] 200
[2026-06-12 02:26:00,684.684 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:26:00,710.710 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 02:26:00,769.769 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 02:26:00,770.770 INFO    ] No camera update needed
[2026-06-12 02:26:00,772.772 INFO    ] Script finished. Safe exiting...
[2026-06-12 02:26:00,773.773 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 02:26:00,776.776 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 02:26:00,779.779 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 02:26:02,813.813 INFO    ] ================================================
[2026-06-12 02:26:02,828.828 INFO    ] Launching Daemon at Fri Jun 12 02:26:02 IST 2026
[2026-06-12 02:26:02,838.838 INFO    ] ================================================
[2026-06-12 02:26:03,210.210 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 02:26:03
[2026-06-12 02:26:03,548.548 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 02:26:03,699.699 INFO    ] Initializing speech engine...
[2026-06-12 02:26:03,705.705 INFO    ] 2026-06-12 02:26:03
[2026-06-12 02:26:03,914.914 INFO    ] 2026-06-12 02:26:03
[2026-06-12 02:26:03,944.944 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 02:26:04,073.073 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 02:26:04,131.131 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 02:26:04,282.282 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 02:26:04,340.340 INFO    ] time= 12/06/2026 02:26:04
[2026-06-12 02:26:04,363.363 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 02:26:04,370.370 INFO    ] Checking for existing commands in stream...
[2026-06-12 02:26:04,437.437 INFO    ] No existing commands found in stream
[2026-06-12 02:26:09,452.452 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 02:26:09,455.455 INFO    ] Waiting 0.31 seconds before fallback handling...
[2026-06-12 02:26:12,252.252 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 02:26:12,256.256 INFO    ] Checking for system updates...
[2026-06-12 02:26:12,293.293 INFO    ] 200
[2026-06-12 02:26:12,296.296 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:26:12,341.341 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 02:26:12,343.343 INFO    ] No update needed
[2026-06-12 02:26:12,344.344 INFO    ] Checking for camera pi updates...
[2026-06-12 02:26:12,367.367 INFO    ] 200
[2026-06-12 02:26:12,369.369 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:26:12,403.403 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 02:26:12,542.542 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 02:26:12,543.543 INFO    ] No camera update needed
[2026-06-12 02:26:12,545.545 INFO    ] Script finished. Safe exiting...
[2026-06-12 02:26:12,546.546 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 02:26:12,549.549 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 02:26:12,552.552 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 02:26:14,591.591 INFO    ] ================================================
[2026-06-12 02:26:14,606.606 INFO    ] Launching Daemon at Fri Jun 12 02:26:14 IST 2026
[2026-06-12 02:26:14,617.617 INFO    ] ================================================
[2026-06-12 02:26:14,969.969 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 02:26:14
[2026-06-12 02:26:15,287.287 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 02:26:15,433.433 INFO    ] Initializing speech engine...
[2026-06-12 02:26:15,437.437 INFO    ] 2026-06-12 02:26:15
[2026-06-12 02:26:15,641.641 INFO    ] 2026-06-12 02:26:15
[2026-06-12 02:26:15,671.671 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 02:26:15,854.854 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 02:26:15,857.857 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 02:26:15,991.991 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 02:26:16,048.048 INFO    ] time= 12/06/2026 02:26:15
[2026-06-12 02:26:16,085.085 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 02:26:16,087.087 INFO    ] Checking for existing commands in stream...
[2026-06-12 02:26:16,157.157 INFO    ] No existing commands found in stream
[2026-06-12 02:26:21,168.168 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 02:26:21,171.171 INFO    ] Waiting 2.03 seconds before fallback handling...
[2026-06-12 02:26:24,071.071 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 02:26:24,073.073 INFO    ] Checking for system updates...
[2026-06-12 02:26:24,095.095 INFO    ] 200
[2026-06-12 02:26:24,096.096 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:26:24,147.147 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 02:26:24,149.149 INFO    ] No update needed
[2026-06-12 02:26:24,152.152 INFO    ] Checking for camera pi updates...
[2026-06-12 02:26:24,188.188 INFO    ] 200
[2026-06-12 02:26:24,191.191 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:26:24,233.233 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 02:26:24,278.278 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 02:26:24,281.281 INFO    ] No camera update needed
[2026-06-12 02:26:24,283.283 INFO    ] Script finished. Safe exiting...
[2026-06-12 02:26:24,286.286 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 02:26:24,291.291 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 02:26:24,296.296 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 02:26:26,336.336 INFO    ] ================================================
[2026-06-12 02:26:26,351.351 INFO    ] Launching Daemon at Fri Jun 12 02:26:26 IST 2026
[2026-06-12 02:26:26,363.363 INFO    ] ================================================
[2026-06-12 02:26:26,723.723 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 02:26:26
[2026-06-12 02:26:27,037.037 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 02:26:27,179.179 INFO    ] Initializing speech engine...
[2026-06-12 02:26:27,184.184 INFO    ] 2026-06-12 02:26:27
[2026-06-12 02:26:27,391.391 INFO    ] 2026-06-12 02:26:27
[2026-06-12 02:26:27,418.418 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 02:26:27,552.552 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 02:26:27,604.604 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 02:26:27,747.747 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 02:26:27,808.808 INFO    ] time= 12/06/2026 02:26:27
[2026-06-12 02:26:27,832.832 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 02:26:27,838.838 INFO    ] Checking for existing commands in stream...
[2026-06-12 02:26:27,904.904 INFO    ] No existing commands found in stream
[2026-06-12 02:26:32,918.918 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 02:26:32,921.921 INFO    ] Waiting 3.97 seconds before fallback handling...
[2026-06-12 02:26:37,274.274 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 02:26:37,275.275 INFO    ] Checking for system updates...
[2026-06-12 02:26:37,296.296 INFO    ] 200
[2026-06-12 02:26:37,297.297 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:26:37,330.330 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 02:26:37,331.331 INFO    ] No update needed
[2026-06-12 02:26:37,333.333 INFO    ] Checking for camera pi updates...
[2026-06-12 02:26:37,352.352 INFO    ] 200
[2026-06-12 02:26:37,353.353 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:26:37,378.378 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 02:26:37,415.415 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 02:26:37,416.416 INFO    ] No camera update needed
[2026-06-12 02:26:37,418.418 INFO    ] Script finished. Safe exiting...
[2026-06-12 02:26:37,419.419 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 02:26:37,422.422 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 02:26:37,424.424 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 02:26:39,463.463 INFO    ] ================================================
[2026-06-12 02:26:39,479.479 INFO    ] Launching Daemon at Fri Jun 12 02:26:39 IST 2026
[2026-06-12 02:26:39,490.490 INFO    ] ================================================
[2026-06-12 02:26:39,837.837 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 02:26:39
[2026-06-12 02:26:40,177.177 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 02:26:40,332.332 INFO    ] Initializing speech engine...
[2026-06-12 02:26:40,335.335 INFO    ] 2026-06-12 02:26:40
[2026-06-12 02:26:40,546.546 INFO    ] 2026-06-12 02:26:40
[2026-06-12 02:26:40,575.575 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 02:26:40,763.763 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 02:26:40,767.767 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 02:26:40,906.906 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 02:26:40,976.976 INFO    ] time= 12/06/2026 02:26:40
[2026-06-12 02:26:41,001.001 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 02:26:41,007.007 INFO    ] Checking for existing commands in stream...
[2026-06-12 02:26:41,075.075 INFO    ] No existing commands found in stream
[2026-06-12 02:26:46,084.084 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 02:26:46,088.088 INFO    ] Waiting 0.92 seconds before fallback handling...
[2026-06-12 02:26:47,360.360 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 02:26:47,362.362 INFO    ] Checking for system updates...
[2026-06-12 02:26:47,383.383 INFO    ] 200
[2026-06-12 02:26:47,384.384 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:26:47,415.415 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 02:26:47,416.416 INFO    ] No update needed
[2026-06-12 02:26:47,418.418 INFO    ] Checking for camera pi updates...
[2026-06-12 02:26:47,440.440 INFO    ] 200
[2026-06-12 02:26:47,441.441 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:26:47,468.468 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 02:26:47,509.509 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 02:26:47,516.516 INFO    ] No camera update needed
[2026-06-12 02:26:47,518.518 INFO    ] Script finished. Safe exiting...
[2026-06-12 02:26:47,519.519 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 02:26:47,523.523 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 02:26:47,526.526 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 02:26:49,564.564 INFO    ] ================================================
[2026-06-12 02:26:49,580.580 INFO    ] Launching Daemon at Fri Jun 12 02:26:49 IST 2026
[2026-06-12 02:26:49,590.590 INFO    ] ================================================
[2026-06-12 02:26:49,957.957 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 02:26:49
[2026-06-12 02:26:50,271.271 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 02:26:50,401.401 INFO    ] Initializing speech engine...
[2026-06-12 02:26:50,405.405 INFO    ] 2026-06-12 02:26:50
[2026-06-12 02:26:50,622.622 INFO    ] 2026-06-12 02:26:50
[2026-06-12 02:26:50,652.652 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 02:26:50,838.838 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 02:26:50,842.842 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 02:26:50,980.980 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 02:26:51,048.048 INFO    ] time= 12/06/2026 02:26:50
[2026-06-12 02:26:51,073.073 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 02:26:51,079.079 INFO    ] Checking for existing commands in stream...
[2026-06-12 02:26:51,147.147 INFO    ] No existing commands found in stream
[2026-06-12 02:26:56,156.156 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 02:26:56,159.159 INFO    ] Waiting 0.25 seconds before fallback handling...
[2026-06-12 02:26:56,791.791 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 02:26:56,792.792 INFO    ] Checking for system updates...
[2026-06-12 02:26:56,813.813 INFO    ] 200
[2026-06-12 02:26:56,814.814 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:26:56,847.847 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 02:26:56,848.848 INFO    ] No update needed
[2026-06-12 02:26:56,849.849 INFO    ] Checking for camera pi updates...
[2026-06-12 02:26:56,869.869 INFO    ] 200
[2026-06-12 02:26:56,870.870 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:26:56,896.896 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 02:26:56,947.947 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 02:26:56,949.949 INFO    ] No camera update needed
[2026-06-12 02:26:56,950.950 INFO    ] Script finished. Safe exiting...
[2026-06-12 02:26:56,951.951 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 02:26:56,954.954 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 02:26:56,957.957 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 02:26:59,999.999 INFO    ] ================================================
[2026-06-12 02:26:59,014.014 INFO    ] Launching Daemon at Fri Jun 12 02:26:59 IST 2026
[2026-06-12 02:26:59,025.025 INFO    ] ================================================
[2026-06-12 02:26:59,367.367 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 02:26:59
[2026-06-12 02:26:59,684.684 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 02:26:59,819.819 INFO    ] Initializing speech engine...
[2026-06-12 02:26:59,822.822 INFO    ] 2026-06-12 02:26:59
[2026-06-12 02:27:00,034.034 INFO    ] 2026-06-12 02:27:00
[2026-06-12 02:27:00,063.063 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 02:27:00,231.231 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 02:27:00,289.289 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 02:27:00,446.446 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 02:27:00,505.505 INFO    ] time= 12/06/2026 02:27:00
[2026-06-12 02:27:00,539.539 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 02:27:00,541.541 INFO    ] Checking for existing commands in stream...
[2026-06-12 02:27:00,645.645 INFO    ] No existing commands found in stream
[2026-06-12 02:27:05,652.652 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 02:27:05,655.655 INFO    ] Waiting 2.39 seconds before fallback handling...
[2026-06-12 02:27:08,402.402 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 02:27:08,404.404 INFO    ] Checking for system updates...
[2026-06-12 02:27:08,426.426 INFO    ] 200
[2026-06-12 02:27:08,427.427 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:27:08,458.458 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 02:27:08,459.459 INFO    ] No update needed
[2026-06-12 02:27:08,460.460 INFO    ] Checking for camera pi updates...
[2026-06-12 02:27:08,481.481 INFO    ] 200
[2026-06-12 02:27:08,483.483 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:27:08,508.508 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 02:27:08,547.547 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 02:27:08,549.549 INFO    ] No camera update needed
[2026-06-12 02:27:08,550.550 INFO    ] Script finished. Safe exiting...
[2026-06-12 02:27:08,552.552 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 02:27:08,555.555 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 02:27:08,557.557 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 02:27:10,597.597 INFO    ] ================================================
[2026-06-12 02:27:10,612.612 INFO    ] Launching Daemon at Fri Jun 12 02:27:10 IST 2026
[2026-06-12 02:27:10,623.623 INFO    ] ================================================
[2026-06-12 02:27:10,980.980 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 02:27:10
[2026-06-12 02:27:11,321.321 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 02:27:11,473.473 INFO    ] Initializing speech engine...
[2026-06-12 02:27:11,479.479 INFO    ] 2026-06-12 02:27:11
[2026-06-12 02:27:11,687.687 INFO    ] 2026-06-12 02:27:11
[2026-06-12 02:27:11,717.717 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 02:27:11,902.902 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 02:27:11,912.912 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 02:27:12,050.050 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 02:27:12,107.107 INFO    ] time= 12/06/2026 02:27:12
[2026-06-12 02:27:12,130.130 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 02:27:12,137.137 INFO    ] Checking for existing commands in stream...
[2026-06-12 02:27:12,203.203 INFO    ] No existing commands found in stream
[2026-06-12 02:27:17,212.212 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 02:27:17,216.216 INFO    ] Waiting 3.94 seconds before fallback handling...
[2026-06-12 02:27:21,491.491 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 02:27:21,492.492 INFO    ] Checking for system updates...
[2026-06-12 02:27:21,513.513 INFO    ] 200
[2026-06-12 02:27:21,515.515 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:27:21,548.548 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 02:27:21,550.550 INFO    ] No update needed
[2026-06-12 02:27:21,552.552 INFO    ] Checking for camera pi updates...
[2026-06-12 02:27:21,572.572 INFO    ] 200
[2026-06-12 02:27:21,573.573 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:27:21,597.597 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 02:27:21,638.638 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 02:27:21,640.640 INFO    ] No camera update needed
[2026-06-12 02:27:21,641.641 INFO    ] Script finished. Safe exiting...
[2026-06-12 02:27:21,643.643 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 02:27:21,646.646 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 02:27:21,649.649 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 02:27:23,689.689 INFO    ] ================================================
[2026-06-12 02:27:23,705.705 INFO    ] Launching Daemon at Fri Jun 12 02:27:23 IST 2026
[2026-06-12 02:27:23,716.716 INFO    ] ================================================
[2026-06-12 02:27:24,060.060 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 02:27:24
[2026-06-12 02:27:24,373.373 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 02:27:24,506.506 INFO    ] Initializing speech engine...
[2026-06-12 02:27:24,518.518 INFO    ] 2026-06-12 02:27:24
[2026-06-12 02:27:24,726.726 INFO    ] 2026-06-12 02:27:24
[2026-06-12 02:27:24,755.755 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 02:27:24,942.942 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 02:27:24,951.951 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 02:27:25,081.081 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 02:27:25,149.149 INFO    ] time= 12/06/2026 02:27:25
[2026-06-12 02:27:25,174.174 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 02:27:25,179.179 INFO    ] Checking for existing commands in stream...
[2026-06-12 02:27:25,248.248 INFO    ] No existing commands found in stream
[2026-06-12 02:27:30,257.257 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 02:27:30,259.259 INFO    ] Waiting 1.38 seconds before fallback handling...
[2026-06-12 02:27:31,984.984 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 02:27:31,986.986 INFO    ] Checking for system updates...
[2026-06-12 02:27:32,009.009 INFO    ] 200
[2026-06-12 02:27:32,011.011 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:27:32,048.048 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 02:27:32,049.049 INFO    ] No update needed
[2026-06-12 02:27:32,051.051 INFO    ] Checking for camera pi updates...
[2026-06-12 02:27:32,074.074 INFO    ] 200
[2026-06-12 02:27:32,076.076 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:27:32,102.102 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 02:27:32,137.137 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 02:27:32,138.138 INFO    ] No camera update needed
[2026-06-12 02:27:32,140.140 INFO    ] Script finished. Safe exiting...
[2026-06-12 02:27:32,142.142 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 02:27:32,145.145 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 02:27:32,148.148 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 02:27:34,187.187 INFO    ] ================================================
[2026-06-12 02:27:34,202.202 INFO    ] Launching Daemon at Fri Jun 12 02:27:34 IST 2026
[2026-06-12 02:27:34,213.213 INFO    ] ================================================
[2026-06-12 02:27:34,581.581 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 02:27:34
[2026-06-12 02:27:34,899.899 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 02:27:35,042.042 INFO    ] Initializing speech engine...
[2026-06-12 02:27:35,048.048 INFO    ] 2026-06-12 02:27:35
[2026-06-12 02:27:35,251.251 INFO    ] 2026-06-12 02:27:35
[2026-06-12 02:27:35,279.279 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 02:27:35,409.409 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 02:27:35,462.462 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 02:27:35,604.604 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 02:27:35,668.668 INFO    ] time= 12/06/2026 02:27:35
[2026-06-12 02:27:35,695.695 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 02:27:35,701.701 INFO    ] Checking for existing commands in stream...
[2026-06-12 02:27:35,768.768 INFO    ] No existing commands found in stream
[2026-06-12 02:27:40,777.777 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 02:27:40,780.780 INFO    ] Waiting 2.38 seconds before fallback handling...
[2026-06-12 02:27:43,543.543 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 02:27:43,544.544 INFO    ] Checking for system updates...
[2026-06-12 02:27:43,565.565 INFO    ] 200
[2026-06-12 02:27:43,566.566 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:27:43,599.599 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 02:27:43,601.601 INFO    ] No update needed
[2026-06-12 02:27:43,602.602 INFO    ] Checking for camera pi updates...
[2026-06-12 02:27:43,623.623 INFO    ] 200
[2026-06-12 02:27:43,624.624 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:27:43,647.647 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 02:27:43,692.692 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 02:27:43,693.693 INFO    ] No camera update needed
[2026-06-12 02:27:43,694.694 INFO    ] Script finished. Safe exiting...
[2026-06-12 02:27:43,695.695 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 02:27:43,698.698 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 02:27:43,701.701 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 02:27:45,739.739 INFO    ] ================================================
[2026-06-12 02:27:45,755.755 INFO    ] Launching Daemon at Fri Jun 12 02:27:45 IST 2026
[2026-06-12 02:27:45,765.765 INFO    ] ================================================
[2026-06-12 02:27:46,090.090 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 02:27:46
[2026-06-12 02:27:46,423.423 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 02:27:46,565.565 INFO    ] Initializing speech engine...
[2026-06-12 02:27:46,578.578 INFO    ] 2026-06-12 02:27:46
[2026-06-12 02:27:46,792.792 INFO    ] 2026-06-12 02:27:46
[2026-06-12 02:27:46,822.822 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 02:27:47,011.011 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 02:27:47,021.021 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 02:27:47,168.168 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 02:27:47,224.224 INFO    ] time= 12/06/2026 02:27:47
[2026-06-12 02:27:47,245.245 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 02:27:47,252.252 INFO    ] Checking for existing commands in stream...
[2026-06-12 02:27:47,320.320 INFO    ] No existing commands found in stream
[2026-06-12 02:27:52,334.334 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 02:27:52,338.338 INFO    ] Waiting 1.78 seconds before fallback handling...
[2026-06-12 02:27:54,493.493 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 02:27:54,494.494 INFO    ] Checking for system updates...
[2026-06-12 02:27:54,515.515 INFO    ] 200
[2026-06-12 02:27:54,517.517 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:27:54,549.549 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 02:27:54,551.551 INFO    ] No update needed
[2026-06-12 02:27:54,552.552 INFO    ] Checking for camera pi updates...
[2026-06-12 02:27:54,571.571 INFO    ] 200
[2026-06-12 02:27:54,573.573 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:27:54,598.598 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 02:27:54,639.639 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 02:27:54,641.641 INFO    ] No camera update needed
[2026-06-12 02:27:54,642.642 INFO    ] Script finished. Safe exiting...
[2026-06-12 02:27:54,643.643 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 02:27:54,646.646 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 02:27:54,649.649 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 02:27:56,688.688 INFO    ] ================================================
[2026-06-12 02:27:56,703.703 INFO    ] Launching Daemon at Fri Jun 12 02:27:56 IST 2026
[2026-06-12 02:27:56,714.714 INFO    ] ================================================
[2026-06-12 02:27:57,075.075 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 02:27:57
[2026-06-12 02:27:57,386.386 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 02:27:57,531.531 INFO    ] Initializing speech engine...
[2026-06-12 02:27:57,536.536 INFO    ] 2026-06-12 02:27:57
[2026-06-12 02:27:57,742.742 INFO    ] 2026-06-12 02:27:57
[2026-06-12 02:27:57,770.770 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 02:27:57,956.956 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 02:27:57,966.966 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 02:27:58,098.098 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 02:27:58,157.157 INFO    ] time= 12/06/2026 02:27:58
[2026-06-12 02:27:58,190.190 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 02:27:58,196.196 INFO    ] Checking for existing commands in stream...
[2026-06-12 02:27:58,265.265 INFO    ] No existing commands found in stream
[2026-06-12 02:28:03,274.274 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 02:28:03,277.277 INFO    ] Waiting 3.88 seconds before fallback handling...
[2026-06-12 02:28:07,523.523 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 02:28:07,524.524 INFO    ] Checking for system updates...
[2026-06-12 02:28:07,546.546 INFO    ] 200
[2026-06-12 02:28:07,548.548 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:28:07,582.582 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 02:28:07,584.584 INFO    ] No update needed
[2026-06-12 02:28:07,585.585 INFO    ] Checking for camera pi updates...
[2026-06-12 02:28:07,607.607 INFO    ] 200
[2026-06-12 02:28:07,609.609 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:28:07,633.633 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 02:28:07,684.684 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 02:28:07,686.686 INFO    ] No camera update needed
[2026-06-12 02:28:07,687.687 INFO    ] Script finished. Safe exiting...
[2026-06-12 02:28:07,688.688 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 02:28:07,692.692 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 02:28:07,695.695 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 02:28:09,734.734 INFO    ] ================================================
[2026-06-12 02:28:09,749.749 INFO    ] Launching Daemon at Fri Jun 12 02:28:09 IST 2026
[2026-06-12 02:28:09,760.760 INFO    ] ================================================
[2026-06-12 02:28:10,098.098 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 02:28:10
[2026-06-12 02:28:10,416.416 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 02:28:10,560.560 INFO    ] Initializing speech engine...
[2026-06-12 02:28:10,565.565 INFO    ] 2026-06-12 02:28:10
[2026-06-12 02:28:10,771.771 INFO    ] 2026-06-12 02:28:10
[2026-06-12 02:28:10,802.802 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 02:28:10,985.985 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 02:28:10,995.995 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 02:28:11,139.139 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 02:28:11,192.192 INFO    ] time= 12/06/2026 02:28:11
[2026-06-12 02:28:11,215.215 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 02:28:11,221.221 INFO    ] Checking for existing commands in stream...
[2026-06-12 02:28:11,288.288 INFO    ] No existing commands found in stream
[2026-06-12 02:28:16,297.297 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 02:28:16,299.299 INFO    ] Waiting 2.13 seconds before fallback handling...
[2026-06-12 02:28:18,811.811 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 02:28:18,812.812 INFO    ] Checking for system updates...
[2026-06-12 02:28:18,834.834 INFO    ] 200
[2026-06-12 02:28:18,836.836 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:28:18,871.871 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 02:28:18,872.872 INFO    ] No update needed
[2026-06-12 02:28:18,874.874 INFO    ] Checking for camera pi updates...
[2026-06-12 02:28:18,894.894 INFO    ] 200
[2026-06-12 02:28:18,895.895 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:28:18,918.918 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 02:28:19,056.056 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 02:28:19,058.058 INFO    ] No camera update needed
[2026-06-12 02:28:19,059.059 INFO    ] Script finished. Safe exiting...
[2026-06-12 02:28:19,061.061 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 02:28:19,064.064 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 02:28:19,067.067 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 02:28:21,107.107 INFO    ] ================================================
[2026-06-12 02:28:21,122.122 INFO    ] Launching Daemon at Fri Jun 12 02:28:21 IST 2026
[2026-06-12 02:28:21,133.133 INFO    ] ================================================
[2026-06-12 02:28:21,488.488 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 02:28:21
[2026-06-12 02:28:21,821.821 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 02:28:21,975.975 INFO    ] Initializing speech engine...
[2026-06-12 02:28:21,979.979 INFO    ] 2026-06-12 02:28:21
[2026-06-12 02:28:22,184.184 INFO    ] 2026-06-12 02:28:22
[2026-06-12 02:28:22,213.213 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 02:28:22,398.398 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 02:28:22,406.406 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 02:28:22,535.535 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 02:28:22,603.603 INFO    ] time= 12/06/2026 02:28:22
[2026-06-12 02:28:22,627.627 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 02:28:22,633.633 INFO    ] Checking for existing commands in stream...
[2026-06-12 02:28:22,701.701 INFO    ] No existing commands found in stream
[2026-06-12 02:28:27,720.720 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 02:28:27,724.724 INFO    ] Waiting 1.50 seconds before fallback handling...
[2026-06-12 02:28:29,605.605 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 02:28:29,606.606 INFO    ] Checking for system updates...
[2026-06-12 02:28:29,627.627 INFO    ] 200
[2026-06-12 02:28:29,629.629 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:28:29,659.659 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 02:28:29,661.661 INFO    ] No update needed
[2026-06-12 02:28:29,662.662 INFO    ] Checking for camera pi updates...
[2026-06-12 02:28:29,682.682 INFO    ] 200
[2026-06-12 02:28:29,683.683 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:28:29,708.708 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 02:28:29,751.751 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 02:28:29,753.753 INFO    ] No camera update needed
[2026-06-12 02:28:29,754.754 INFO    ] Script finished. Safe exiting...
[2026-06-12 02:28:29,755.755 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 02:28:29,758.758 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 02:28:29,761.761 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 02:28:31,804.804 INFO    ] ================================================
[2026-06-12 02:28:31,823.823 INFO    ] Launching Daemon at Fri Jun 12 02:28:31 IST 2026
[2026-06-12 02:28:31,835.835 INFO    ] ================================================
[2026-06-12 02:28:32,199.199 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 02:28:32
[2026-06-12 02:28:32,562.562 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 02:28:32,691.691 INFO    ] Initializing speech engine...
[2026-06-12 02:28:32,695.695 INFO    ] 2026-06-12 02:28:32
[2026-06-12 02:28:32,913.913 INFO    ] 2026-06-12 02:28:32
[2026-06-12 02:28:32,942.942 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 02:28:33,130.130 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 02:28:33,138.138 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 02:28:33,267.267 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 02:28:33,318.318 INFO    ] time= 12/06/2026 02:28:33
[2026-06-12 02:28:33,357.357 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 02:28:33,363.363 INFO    ] Checking for existing commands in stream...
[2026-06-12 02:28:33,434.434 INFO    ] No existing commands found in stream
[2026-06-12 02:28:38,443.443 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 02:28:38,446.446 INFO    ] Waiting 1.61 seconds before fallback handling...
[2026-06-12 02:28:40,441.441 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 02:28:40,442.442 INFO    ] Checking for system updates...
[2026-06-12 02:28:40,462.462 INFO    ] 200
[2026-06-12 02:28:40,464.464 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:28:40,493.493 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 02:28:40,495.495 INFO    ] No update needed
[2026-06-12 02:28:40,496.496 INFO    ] Checking for camera pi updates...
[2026-06-12 02:28:40,519.519 INFO    ] 200
[2026-06-12 02:28:40,520.520 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:28:40,544.544 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 02:28:40,586.586 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 02:28:40,588.588 INFO    ] No camera update needed
[2026-06-12 02:28:40,589.589 INFO    ] Script finished. Safe exiting...
[2026-06-12 02:28:40,590.590 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 02:28:40,593.593 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 02:28:40,596.596 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 02:28:42,638.638 INFO    ] ================================================
[2026-06-12 02:28:42,653.653 INFO    ] Launching Daemon at Fri Jun 12 02:28:42 IST 2026
[2026-06-12 02:28:42,665.665 INFO    ] ================================================
[2026-06-12 02:28:42,992.992 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 02:28:42
[2026-06-12 02:28:43,305.305 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 02:28:43,447.447 INFO    ] Initializing speech engine...
[2026-06-12 02:28:43,452.452 INFO    ] 2026-06-12 02:28:43
[2026-06-12 02:28:43,655.655 INFO    ] 2026-06-12 02:28:43
[2026-06-12 02:28:43,683.683 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 02:28:43,867.867 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 02:28:43,877.877 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 02:28:44,001.001 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 02:28:44,059.059 INFO    ] time= 12/06/2026 02:28:44
[2026-06-12 02:28:44,095.095 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 02:28:44,097.097 INFO    ] Checking for existing commands in stream...
[2026-06-12 02:28:44,168.168 INFO    ] No existing commands found in stream
[2026-06-12 02:28:49,178.178 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 02:28:49,182.182 INFO    ] Waiting 0.62 seconds before fallback handling...
[2026-06-12 02:28:50,174.174 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 02:28:50,175.175 INFO    ] Checking for system updates...
[2026-06-12 02:28:50,196.196 INFO    ] 200
[2026-06-12 02:28:50,198.198 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:28:50,232.232 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 02:28:50,233.233 INFO    ] No update needed
[2026-06-12 02:28:50,234.234 INFO    ] Checking for camera pi updates...
[2026-06-12 02:28:50,254.254 INFO    ] 200
[2026-06-12 02:28:50,255.255 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:28:50,278.278 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 02:28:50,321.321 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 02:28:50,322.322 INFO    ] No camera update needed
[2026-06-12 02:28:50,323.323 INFO    ] Script finished. Safe exiting...
[2026-06-12 02:28:50,325.325 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 02:28:50,327.327 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 02:28:50,330.330 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 02:28:52,374.374 INFO    ] ================================================
[2026-06-12 02:28:52,389.389 INFO    ] Launching Daemon at Fri Jun 12 02:28:52 IST 2026
[2026-06-12 02:28:52,401.401 INFO    ] ================================================
[2026-06-12 02:28:52,729.729 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 02:28:52
[2026-06-12 02:28:53,050.050 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 02:28:53,182.182 INFO    ] Initializing speech engine...
[2026-06-12 02:28:53,190.190 INFO    ] 2026-06-12 02:28:53
[2026-06-12 02:28:53,401.401 INFO    ] 2026-06-12 02:28:53
[2026-06-12 02:28:53,431.431 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 02:28:53,616.616 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 02:28:53,625.625 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 02:28:53,769.769 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 02:28:53,820.820 INFO    ] time= 12/06/2026 02:28:53
[2026-06-12 02:28:53,844.844 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 02:28:53,851.851 INFO    ] Checking for existing commands in stream...
[2026-06-12 02:28:53,917.917 INFO    ] No existing commands found in stream
[2026-06-12 02:28:58,926.926 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 02:28:58,929.929 INFO    ] Waiting 0.89 seconds before fallback handling...
[2026-06-12 02:29:00,211.211 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 02:29:00,213.213 INFO    ] Checking for system updates...
[2026-06-12 02:29:00,233.233 INFO    ] 200
[2026-06-12 02:29:00,234.234 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:29:00,265.265 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 02:29:00,266.266 INFO    ] No update needed
[2026-06-12 02:29:00,267.267 INFO    ] Checking for camera pi updates...
[2026-06-12 02:29:00,289.289 INFO    ] 200
[2026-06-12 02:29:00,291.291 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:29:00,314.314 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 02:29:00,358.358 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 02:29:00,360.360 INFO    ] No camera update needed
[2026-06-12 02:29:00,361.361 INFO    ] Script finished. Safe exiting...
[2026-06-12 02:29:00,363.363 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 02:29:00,366.366 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 02:29:00,368.368 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 02:29:02,404.404 INFO    ] ================================================
[2026-06-12 02:29:02,416.416 INFO    ] Launching Daemon at Fri Jun 12 02:29:02 IST 2026
[2026-06-12 02:29:02,424.424 INFO    ] ================================================
[2026-06-12 02:29:02,819.819 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 02:29:02
[2026-06-12 02:29:03,172.172 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 02:29:03,319.319 INFO    ] Initializing speech engine...
[2026-06-12 02:29:03,331.331 INFO    ] 2026-06-12 02:29:03
[2026-06-12 02:29:03,534.534 INFO    ] 2026-06-12 02:29:03
[2026-06-12 02:29:03,561.561 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 02:29:03,684.684 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 02:29:03,747.747 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 02:29:03,883.883 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 02:29:03,932.932 INFO    ] time= 12/06/2026 02:29:03
[2026-06-12 02:29:03,975.975 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 02:29:03,976.976 INFO    ] Checking for existing commands in stream...
[2026-06-12 02:29:04,049.049 INFO    ] No existing commands found in stream
[2026-06-12 02:29:09,057.057 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 02:29:09,060.060 INFO    ] Waiting 0.43 seconds before fallback handling...
[2026-06-12 02:29:09,862.862 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 02:29:09,863.863 INFO    ] Checking for system updates...
[2026-06-12 02:29:09,883.883 INFO    ] 200
[2026-06-12 02:29:09,885.885 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:29:09,917.917 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 02:29:09,918.918 INFO    ] No update needed
[2026-06-12 02:29:09,920.920 INFO    ] Checking for camera pi updates...
[2026-06-12 02:29:09,939.939 INFO    ] 200
[2026-06-12 02:29:09,941.941 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:29:09,965.965 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 02:29:10,013.013 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 02:29:10,015.015 INFO    ] No camera update needed
[2026-06-12 02:29:10,016.016 INFO    ] Script finished. Safe exiting...
[2026-06-12 02:29:10,017.017 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 02:29:10,020.020 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 02:29:10,023.023 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 02:29:12,062.062 INFO    ] ================================================
[2026-06-12 02:29:12,078.078 INFO    ] Launching Daemon at Fri Jun 12 02:29:12 IST 2026
[2026-06-12 02:29:12,089.089 INFO    ] ================================================
[2026-06-12 02:29:12,471.471 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 02:29:12
[2026-06-12 02:29:12,805.805 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 02:29:12,956.956 INFO    ] Initializing speech engine...
[2026-06-12 02:29:12,962.962 INFO    ] 2026-06-12 02:29:12
[2026-06-12 02:29:13,168.168 INFO    ] 2026-06-12 02:29:13
[2026-06-12 02:29:13,197.197 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 02:29:13,384.384 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 02:29:13,392.392 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 02:29:13,533.533 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 02:29:13,589.589 INFO    ] time= 12/06/2026 02:29:13
[2026-06-12 02:29:13,613.613 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 02:29:13,620.620 INFO    ] Checking for existing commands in stream...
[2026-06-12 02:29:13,686.686 INFO    ] No existing commands found in stream
[2026-06-12 02:29:18,695.695 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 02:29:18,699.699 INFO    ] Waiting 3.93 seconds before fallback handling...
[2026-06-12 02:29:22,992.992 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 02:29:22,994.994 INFO    ] Checking for system updates...
[2026-06-12 02:29:23,016.016 INFO    ] 200
[2026-06-12 02:29:23,017.017 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:29:23,047.047 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 02:29:23,049.049 INFO    ] No update needed
[2026-06-12 02:29:23,050.050 INFO    ] Checking for camera pi updates...
[2026-06-12 02:29:23,071.071 INFO    ] 200
[2026-06-12 02:29:23,072.072 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:29:23,097.097 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 02:29:23,146.146 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 02:29:23,147.147 INFO    ] No camera update needed
[2026-06-12 02:29:23,148.148 INFO    ] Script finished. Safe exiting...
[2026-06-12 02:29:23,150.150 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 02:29:23,153.153 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 02:29:23,155.155 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 02:29:25,193.193 INFO    ] ================================================
[2026-06-12 02:29:25,208.208 INFO    ] Launching Daemon at Fri Jun 12 02:29:25 IST 2026
[2026-06-12 02:29:25,219.219 INFO    ] ================================================
[2026-06-12 02:29:25,577.577 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 02:29:25
[2026-06-12 02:29:25,887.887 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 02:29:26,029.029 INFO    ] Initializing speech engine...
[2026-06-12 02:29:26,034.034 INFO    ] 2026-06-12 02:29:26
[2026-06-12 02:29:26,241.241 INFO    ] 2026-06-12 02:29:26
[2026-06-12 02:29:26,269.269 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 02:29:26,392.392 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 02:29:26,455.455 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 02:29:26,588.588 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 02:29:26,649.649 INFO    ] time= 12/06/2026 02:29:26
[2026-06-12 02:29:26,684.684 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 02:29:26,689.689 INFO    ] Checking for existing commands in stream...
[2026-06-12 02:29:26,762.762 INFO    ] No existing commands found in stream
[2026-06-12 02:29:31,771.771 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 02:29:31,774.774 INFO    ] Waiting 0.46 seconds before fallback handling...
[2026-06-12 02:29:32,562.562 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 02:29:32,564.564 INFO    ] Checking for system updates...
[2026-06-12 02:29:32,587.587 INFO    ] 200
[2026-06-12 02:29:32,589.589 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:29:32,624.624 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 02:29:32,625.625 INFO    ] No update needed
[2026-06-12 02:29:32,627.627 INFO    ] Checking for camera pi updates...
[2026-06-12 02:29:32,650.650 INFO    ] 200
[2026-06-12 02:29:32,652.652 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:29:32,683.683 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 02:29:32,711.711 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 02:29:32,713.713 INFO    ] No camera update needed
[2026-06-12 02:29:32,714.714 INFO    ] Script finished. Safe exiting...
[2026-06-12 02:29:32,716.716 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 02:29:32,719.719 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 02:29:32,722.722 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 02:29:34,760.760 INFO    ] ================================================
[2026-06-12 02:29:34,776.776 INFO    ] Launching Daemon at Fri Jun 12 02:29:34 IST 2026
[2026-06-12 02:29:34,787.787 INFO    ] ================================================
[2026-06-12 02:29:35,141.141 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 02:29:35
[2026-06-12 02:29:35,453.453 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 02:29:35,583.583 INFO    ] Initializing speech engine...
[2026-06-12 02:29:35,587.587 INFO    ] 2026-06-12 02:29:35
[2026-06-12 02:29:35,806.806 INFO    ] 2026-06-12 02:29:35
[2026-06-12 02:29:35,834.834 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 02:29:36,021.021 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 02:29:36,029.029 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 02:29:36,172.172 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 02:29:36,230.230 INFO    ] time= 12/06/2026 02:29:36
[2026-06-12 02:29:36,254.254 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 02:29:36,259.259 INFO    ] Checking for existing commands in stream...
[2026-06-12 02:29:36,327.327 INFO    ] No existing commands found in stream
[2026-06-12 02:29:41,336.336 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 02:29:41,339.339 INFO    ] Waiting 0.55 seconds before fallback handling...
[2026-06-12 02:29:42,253.253 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 02:29:42,255.255 INFO    ] Checking for system updates...
[2026-06-12 02:29:42,275.275 INFO    ] 200
[2026-06-12 02:29:42,277.277 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:29:42,306.306 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 02:29:42,308.308 INFO    ] No update needed
[2026-06-12 02:29:42,309.309 INFO    ] Checking for camera pi updates...
[2026-06-12 02:29:42,330.330 INFO    ] 200
[2026-06-12 02:29:42,331.331 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:29:42,355.355 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 02:29:42,395.395 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 02:29:42,397.397 INFO    ] No camera update needed
[2026-06-12 02:29:42,398.398 INFO    ] Script finished. Safe exiting...
[2026-06-12 02:29:42,399.399 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 02:29:42,402.402 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 02:29:42,405.405 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 02:29:44,444.444 INFO    ] ================================================
[2026-06-12 02:29:44,459.459 INFO    ] Launching Daemon at Fri Jun 12 02:29:44 IST 2026
[2026-06-12 02:29:44,471.471 INFO    ] ================================================
[2026-06-12 02:29:44,840.840 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 02:29:44
[2026-06-12 02:29:45,177.177 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 02:29:45,330.330 INFO    ] Initializing speech engine...
[2026-06-12 02:29:45,334.334 INFO    ] 2026-06-12 02:29:45
[2026-06-12 02:29:45,534.534 INFO    ] 2026-06-12 02:29:45
[2026-06-12 02:29:45,563.563 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 02:29:45,748.748 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 02:29:45,757.757 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 02:29:45,887.887 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 02:29:45,954.954 INFO    ] time= 12/06/2026 02:29:45
[2026-06-12 02:29:45,978.978 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 02:29:45,980.980 INFO    ] Checking for existing commands in stream...
[2026-06-12 02:29:46,075.075 INFO    ] No existing commands found in stream
[2026-06-12 02:29:51,099.099 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 02:29:51,102.102 INFO    ] Waiting 3.35 seconds before fallback handling...
[2026-06-12 02:29:54,871.871 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 02:29:54,873.873 INFO    ] Checking for system updates...
[2026-06-12 02:29:54,894.894 INFO    ] 200
[2026-06-12 02:29:54,895.895 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:29:54,932.932 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 02:29:54,934.934 INFO    ] No update needed
[2026-06-12 02:29:54,935.935 INFO    ] Checking for camera pi updates...
[2026-06-12 02:29:54,958.958 INFO    ] 200
[2026-06-12 02:29:54,959.959 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:29:54,984.984 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 02:29:55,026.026 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 02:29:55,027.027 INFO    ] No camera update needed
[2026-06-12 02:29:55,029.029 INFO    ] Script finished. Safe exiting...
[2026-06-12 02:29:55,030.030 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 02:29:55,033.033 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 02:29:55,036.036 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 02:29:57,075.075 INFO    ] ================================================
[2026-06-12 02:29:57,091.091 INFO    ] Launching Daemon at Fri Jun 12 02:29:57 IST 2026
[2026-06-12 02:29:57,102.102 INFO    ] ================================================
[2026-06-12 02:29:57,471.471 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 02:29:57
[2026-06-12 02:29:57,782.782 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 02:29:57,925.925 INFO    ] Initializing speech engine...
[2026-06-12 02:29:57,930.930 INFO    ] 2026-06-12 02:29:57
[2026-06-12 02:29:58,134.134 INFO    ] 2026-06-12 02:29:58
[2026-06-12 02:29:58,164.164 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 02:29:58,349.349 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 02:29:58,359.359 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 02:29:58,489.489 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 02:29:58,554.554 INFO    ] time= 12/06/2026 02:29:58
[2026-06-12 02:29:58,583.583 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 02:29:58,589.589 INFO    ] Checking for existing commands in stream...
[2026-06-12 02:29:58,657.657 INFO    ] No existing commands found in stream
[2026-06-12 02:30:03,669.669 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 02:30:03,671.671 INFO    ] Waiting 3.71 seconds before fallback handling...
[2026-06-12 02:30:08,884.884 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 02:30:08,887.887 INFO    ] Checking for system updates...
[2026-06-12 02:30:08,924.924 INFO    ] 200
[2026-06-12 02:30:08,927.927 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:30:08,982.982 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 02:30:08,985.985 INFO    ] No update needed
[2026-06-12 02:30:08,988.988 INFO    ] Checking for camera pi updates...
[2026-06-12 02:30:09,019.019 INFO    ] 200
[2026-06-12 02:30:09,021.021 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:30:09,047.047 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 02:30:09,116.116 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 02:30:09,118.118 INFO    ] No camera update needed
[2026-06-12 02:30:09,119.119 INFO    ] Script finished. Safe exiting...
[2026-06-12 02:30:09,121.121 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 02:30:09,124.124 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 02:30:09,127.127 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 02:30:11,167.167 INFO    ] ================================================
[2026-06-12 02:30:11,183.183 INFO    ] Launching Daemon at Fri Jun 12 02:30:11 IST 2026
[2026-06-12 02:30:11,194.194 INFO    ] ================================================
[2026-06-12 02:30:11,552.552 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 02:30:11
[2026-06-12 02:30:11,868.868 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 02:30:12,006.006 INFO    ] Initializing speech engine...
[2026-06-12 02:30:12,016.016 INFO    ] 2026-06-12 02:30:12
[2026-06-12 02:30:12,221.221 INFO    ] 2026-06-12 02:30:12
[2026-06-12 02:30:12,250.250 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 02:30:12,432.432 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 02:30:12,442.442 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 02:30:12,585.585 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 02:30:12,637.637 INFO    ] time= 12/06/2026 02:30:12
[2026-06-12 02:30:12,659.659 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 02:30:12,666.666 INFO    ] Checking for existing commands in stream...
[2026-06-12 02:30:12,732.732 INFO    ] No existing commands found in stream
[2026-06-12 02:30:17,746.746 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 02:30:17,749.749 INFO    ] Waiting 3.22 seconds before fallback handling...
[2026-06-12 02:30:21,345.345 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 02:30:21,347.347 INFO    ] Checking for system updates...
[2026-06-12 02:30:21,368.368 INFO    ] 200
[2026-06-12 02:30:21,370.370 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:30:21,402.402 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 02:30:21,404.404 INFO    ] No update needed
[2026-06-12 02:30:21,405.405 INFO    ] Checking for camera pi updates...
[2026-06-12 02:30:21,425.425 INFO    ] 200
[2026-06-12 02:30:21,427.427 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:30:21,450.450 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 02:30:21,592.592 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 02:30:21,594.594 INFO    ] No camera update needed
[2026-06-12 02:30:21,595.595 INFO    ] Script finished. Safe exiting...
[2026-06-12 02:30:21,596.596 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 02:30:21,599.599 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 02:30:21,602.602 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 02:30:23,642.642 INFO    ] ================================================
[2026-06-12 02:30:23,658.658 INFO    ] Launching Daemon at Fri Jun 12 02:30:23 IST 2026
[2026-06-12 02:30:23,809.809 INFO    ] ================================================
[2026-06-12 02:30:24,150.150 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 02:30:24
[2026-06-12 02:30:24,465.465 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 02:30:24,598.598 INFO    ] Initializing speech engine...
[2026-06-12 02:30:24,602.602 INFO    ] 2026-06-12 02:30:24
[2026-06-12 02:30:24,833.833 INFO    ] 2026-06-12 02:30:24
[2026-06-12 02:30:24,863.863 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 02:30:24,994.994 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 02:30:25,033.033 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 02:30:25,203.203 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 02:30:25,266.266 INFO    ] time= 12/06/2026 02:30:25
[2026-06-12 02:30:25,300.300 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 02:30:25,312.312 INFO    ] Checking for existing commands in stream...
[2026-06-12 02:30:25,388.388 INFO    ] No existing commands found in stream
[2026-06-12 02:30:30,399.399 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 02:30:30,402.402 INFO    ] Waiting 2.25 seconds before fallback handling...
[2026-06-12 02:30:32,996.996 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 02:30:32,999.999 INFO    ] Checking for system updates...
[2026-06-12 02:30:33,036.036 INFO    ] 200
[2026-06-12 02:30:33,039.039 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:30:33,094.094 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 02:30:33,097.097 INFO    ] No update needed
[2026-06-12 02:30:33,099.099 INFO    ] Checking for camera pi updates...
[2026-06-12 02:30:33,133.133 INFO    ] 200
[2026-06-12 02:30:33,134.134 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:30:33,160.160 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 02:30:33,210.210 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 02:30:33,211.211 INFO    ] No camera update needed
[2026-06-12 02:30:33,213.213 INFO    ] Script finished. Safe exiting...
[2026-06-12 02:30:33,214.214 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 02:30:33,217.217 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 02:30:33,219.219 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 02:30:35,261.261 INFO    ] ================================================
[2026-06-12 02:30:35,276.276 INFO    ] Launching Daemon at Fri Jun 12 02:30:35 IST 2026
[2026-06-12 02:30:35,287.287 INFO    ] ================================================
[2026-06-12 02:30:35,660.660 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 02:30:35
[2026-06-12 02:30:35,976.976 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 02:30:36,121.121 INFO    ] Initializing speech engine...
[2026-06-12 02:30:36,126.126 INFO    ] 2026-06-12 02:30:36
[2026-06-12 02:30:36,334.334 INFO    ] 2026-06-12 02:30:36
[2026-06-12 02:30:36,364.364 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 02:30:36,548.548 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 02:30:36,557.557 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 02:30:36,680.680 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 02:30:36,741.741 INFO    ] time= 12/06/2026 02:30:36
[2026-06-12 02:30:36,779.779 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 02:30:36,781.781 INFO    ] Checking for existing commands in stream...
[2026-06-12 02:30:36,876.876 INFO    ] No existing commands found in stream
[2026-06-12 02:30:41,890.890 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 02:30:41,893.893 INFO    ] Waiting 3.98 seconds before fallback handling...
[2026-06-12 02:30:46,233.233 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 02:30:46,235.235 INFO    ] Checking for system updates...
[2026-06-12 02:30:46,256.256 INFO    ] 200
[2026-06-12 02:30:46,258.258 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:30:46,290.290 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 02:30:46,292.292 INFO    ] No update needed
[2026-06-12 02:30:46,293.293 INFO    ] Checking for camera pi updates...
[2026-06-12 02:30:46,312.312 INFO    ] 200
[2026-06-12 02:30:46,314.314 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:30:46,338.338 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 02:30:46,367.367 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 02:30:46,368.368 INFO    ] No camera update needed
[2026-06-12 02:30:46,369.369 INFO    ] Script finished. Safe exiting...
[2026-06-12 02:30:46,371.371 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 02:30:46,374.374 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 02:30:46,377.377 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 02:30:48,416.416 INFO    ] ================================================
[2026-06-12 02:30:48,431.431 INFO    ] Launching Daemon at Fri Jun 12 02:30:48 IST 2026
[2026-06-12 02:30:48,442.442 INFO    ] ================================================
[2026-06-12 02:30:48,781.781 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 02:30:48
[2026-06-12 02:30:49,107.107 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 02:30:49,247.247 INFO    ] Initializing speech engine...
[2026-06-12 02:30:49,255.255 INFO    ] 2026-06-12 02:30:49
[2026-06-12 02:30:49,449.449 INFO    ] 2026-06-12 02:30:49
[2026-06-12 02:30:49,493.493 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 02:30:49,639.639 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 02:30:49,701.701 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 02:30:49,838.838 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 02:30:49,902.902 INFO    ] time= 12/06/2026 02:30:49
[2026-06-12 02:30:49,929.929 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 02:30:49,935.935 INFO    ] Checking for existing commands in stream...
[2026-06-12 02:30:50,002.002 INFO    ] No existing commands found in stream
[2026-06-12 02:30:55,026.026 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 02:30:55,029.029 INFO    ] Waiting 3.14 seconds before fallback handling...
[2026-06-12 02:30:58,531.531 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 02:30:58,532.532 INFO    ] Checking for system updates...
[2026-06-12 02:30:58,554.554 INFO    ] 200
[2026-06-12 02:30:58,555.555 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:30:58,589.589 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 02:30:58,590.590 INFO    ] No update needed
[2026-06-12 02:30:58,591.591 INFO    ] Checking for camera pi updates...
[2026-06-12 02:30:58,611.611 INFO    ] 200
[2026-06-12 02:30:58,612.612 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:30:58,636.636 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 02:30:58,677.677 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 02:30:58,678.678 INFO    ] No camera update needed
[2026-06-12 02:30:58,680.680 INFO    ] Script finished. Safe exiting...
[2026-06-12 02:30:58,681.681 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 02:30:58,684.684 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 02:30:58,686.686 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 02:31:00,726.726 INFO    ] ================================================
[2026-06-12 02:31:00,742.742 INFO    ] Launching Daemon at Fri Jun 12 02:31:00 IST 2026
[2026-06-12 02:31:00,754.754 INFO    ] ================================================
[2026-06-12 02:31:01,117.117 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 02:31:01
[2026-06-12 02:31:01,456.456 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 02:31:01,601.601 INFO    ] Initializing speech engine...
[2026-06-12 02:31:01,606.606 INFO    ] 2026-06-12 02:31:01
[2026-06-12 02:31:01,812.812 INFO    ] 2026-06-12 02:31:01
[2026-06-12 02:31:01,864.864 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 02:31:02,017.017 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 02:31:02,020.020 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 02:31:02,183.183 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 02:31:02,202.202 INFO    ] time= 12/06/2026 02:31:02
[2026-06-12 02:31:02,222.222 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 02:31:02,231.231 INFO    ] Checking for existing commands in stream...
[2026-06-12 02:31:02,347.347 INFO    ] No existing commands found in stream
[2026-06-12 02:31:07,365.365 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 02:31:07,367.367 INFO    ] Waiting 1.17 seconds before fallback handling...
[2026-06-12 02:31:08,933.933 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 02:31:08,934.934 INFO    ] Checking for system updates...
[2026-06-12 02:31:08,956.956 INFO    ] 200
[2026-06-12 02:31:08,957.957 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:31:08,990.990 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 02:31:08,991.991 INFO    ] No update needed
[2026-06-12 02:31:08,993.993 INFO    ] Checking for camera pi updates...
[2026-06-12 02:31:09,014.014 INFO    ] 200
[2026-06-12 02:31:09,016.016 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:31:09,039.039 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 02:31:09,087.087 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 02:31:09,088.088 INFO    ] No camera update needed
[2026-06-12 02:31:09,090.090 INFO    ] Script finished. Safe exiting...
[2026-06-12 02:31:09,091.091 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 02:31:09,094.094 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 02:31:09,097.097 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 02:31:11,134.134 INFO    ] ================================================
[2026-06-12 02:31:11,151.151 INFO    ] Launching Daemon at Fri Jun 12 02:31:11 IST 2026
[2026-06-12 02:31:11,162.162 INFO    ] ================================================
[2026-06-12 02:31:11,514.514 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 02:31:11
[2026-06-12 02:31:11,825.825 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 02:31:11,956.956 INFO    ] Initializing speech engine...
[2026-06-12 02:31:11,961.961 INFO    ] 2026-06-12 02:31:11
[2026-06-12 02:31:12,189.189 INFO    ] 2026-06-12 02:31:12
[2026-06-12 02:31:12,220.220 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 02:31:12,352.352 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 02:31:12,418.418 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 02:31:12,562.562 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 02:31:12,624.624 INFO    ] time= 12/06/2026 02:31:12
[2026-06-12 02:31:12,663.663 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 02:31:12,665.665 INFO    ] Checking for existing commands in stream...
[2026-06-12 02:31:12,740.740 INFO    ] No existing commands found in stream
[2026-06-12 02:31:17,750.750 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 02:31:17,753.753 INFO    ] Waiting 1.55 seconds before fallback handling...
[2026-06-12 02:31:19,672.672 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 02:31:19,674.674 INFO    ] Checking for system updates...
[2026-06-12 02:31:19,695.695 INFO    ] 200
[2026-06-12 02:31:19,696.696 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:31:19,726.726 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 02:31:19,728.728 INFO    ] No update needed
[2026-06-12 02:31:19,729.729 INFO    ] Checking for camera pi updates...
[2026-06-12 02:31:19,751.751 INFO    ] 200
[2026-06-12 02:31:19,752.752 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:31:19,775.775 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 02:31:19,806.806 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 02:31:19,807.807 INFO    ] No camera update needed
[2026-06-12 02:31:19,808.808 INFO    ] Script finished. Safe exiting...
[2026-06-12 02:31:19,810.810 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 02:31:19,813.813 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 02:31:19,815.815 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 02:31:21,854.854 INFO    ] ================================================
[2026-06-12 02:31:21,870.870 INFO    ] Launching Daemon at Fri Jun 12 02:31:21 IST 2026
[2026-06-12 02:31:21,882.882 INFO    ] ================================================
[2026-06-12 02:31:22,215.215 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 02:31:22
[2026-06-12 02:31:22,527.527 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 02:31:22,662.662 INFO    ] Initializing speech engine...
[2026-06-12 02:31:22,666.666 INFO    ] 2026-06-12 02:31:22
[2026-06-12 02:31:22,894.894 INFO    ] 2026-06-12 02:31:22
[2026-06-12 02:31:22,918.918 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 02:31:23,098.098 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 02:31:23,126.126 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 02:31:23,270.270 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 02:31:23,333.333 INFO    ] time= 12/06/2026 02:31:23
[2026-06-12 02:31:23,372.372 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 02:31:23,374.374 INFO    ] Checking for existing commands in stream...
[2026-06-12 02:31:23,450.450 INFO    ] No existing commands found in stream
[2026-06-12 02:31:28,464.464 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 02:31:28,467.467 INFO    ] Waiting 2.62 seconds before fallback handling...
[2026-06-12 02:31:31,481.481 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 02:31:31,483.483 INFO    ] Checking for system updates...
[2026-06-12 02:31:31,505.505 INFO    ] 200
[2026-06-12 02:31:31,506.506 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:31:31,540.540 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 02:31:31,542.542 INFO    ] No update needed
[2026-06-12 02:31:31,543.543 INFO    ] Checking for camera pi updates...
[2026-06-12 02:31:31,564.564 INFO    ] 200
[2026-06-12 02:31:31,565.565 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:31:31,592.592 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 02:31:31,630.630 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 02:31:31,632.632 INFO    ] No camera update needed
[2026-06-12 02:31:31,633.633 INFO    ] Script finished. Safe exiting...
[2026-06-12 02:31:31,635.635 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 02:31:31,638.638 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 02:31:31,641.641 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 02:31:33,673.673 INFO    ] ================================================
[2026-06-12 02:31:33,688.688 INFO    ] Launching Daemon at Fri Jun 12 02:31:33 IST 2026
[2026-06-12 02:31:33,699.699 INFO    ] ================================================
[2026-06-12 02:31:34,082.082 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 02:31:34
[2026-06-12 02:31:34,395.395 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 02:31:34,538.538 INFO    ] Initializing speech engine...
[2026-06-12 02:31:34,544.544 INFO    ] 2026-06-12 02:31:34
[2026-06-12 02:31:34,747.747 INFO    ] 2026-06-12 02:31:34
[2026-06-12 02:31:34,775.775 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 02:31:34,959.959 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 02:31:34,967.967 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 02:31:35,102.102 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 02:31:35,165.165 INFO    ] time= 12/06/2026 02:31:35
[2026-06-12 02:31:35,188.188 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 02:31:35,194.194 INFO    ] Checking for existing commands in stream...
[2026-06-12 02:31:35,262.262 INFO    ] No existing commands found in stream
[2026-06-12 02:31:40,275.275 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 02:31:40,278.278 INFO    ] Waiting 1.30 seconds before fallback handling...
[2026-06-12 02:31:42,047.047 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 02:31:42,049.049 INFO    ] Checking for system updates...
[2026-06-12 02:31:42,070.070 INFO    ] 200
[2026-06-12 02:31:42,071.071 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:31:42,104.104 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 02:31:42,105.105 INFO    ] No update needed
[2026-06-12 02:31:42,106.106 INFO    ] Checking for camera pi updates...
[2026-06-12 02:31:42,128.128 INFO    ] 200
[2026-06-12 02:31:42,130.130 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:31:42,153.153 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 02:31:42,204.204 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 02:31:42,205.205 INFO    ] No camera update needed
[2026-06-12 02:31:42,206.206 INFO    ] Script finished. Safe exiting...
[2026-06-12 02:31:42,208.208 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 02:31:42,211.211 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 02:31:42,214.214 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 02:31:44,254.254 INFO    ] ================================================
[2026-06-12 02:31:44,269.269 INFO    ] Launching Daemon at Fri Jun 12 02:31:44 IST 2026
[2026-06-12 02:31:44,280.280 INFO    ] ================================================
[2026-06-12 02:31:44,656.656 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 02:31:44
[2026-06-12 02:31:44,991.991 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 02:31:45,139.139 INFO    ] Initializing speech engine...
[2026-06-12 02:31:45,145.145 INFO    ] 2026-06-12 02:31:45
[2026-06-12 02:31:45,352.352 INFO    ] 2026-06-12 02:31:45
[2026-06-12 02:31:45,380.380 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 02:31:45,564.564 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 02:31:45,576.576 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 02:31:45,715.715 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 02:31:45,774.774 INFO    ] time= 12/06/2026 02:31:45
[2026-06-12 02:31:45,796.796 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 02:31:45,803.803 INFO    ] Checking for existing commands in stream...
[2026-06-12 02:31:45,868.868 INFO    ] No existing commands found in stream
[2026-06-12 02:31:50,879.879 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 02:31:50,882.882 INFO    ] Waiting 0.91 seconds before fallback handling...
[2026-06-12 02:31:52,155.155 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 02:31:52,156.156 INFO    ] Checking for system updates...
[2026-06-12 02:31:52,177.177 INFO    ] 200
[2026-06-12 02:31:52,179.179 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:31:52,211.211 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 02:31:52,212.212 INFO    ] No update needed
[2026-06-12 02:31:52,214.214 INFO    ] Checking for camera pi updates...
[2026-06-12 02:31:52,237.237 INFO    ] 200
[2026-06-12 02:31:52,238.238 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:31:52,263.263 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 02:31:52,306.306 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 02:31:52,307.307 INFO    ] No camera update needed
[2026-06-12 02:31:52,309.309 INFO    ] Script finished. Safe exiting...
[2026-06-12 02:31:52,310.310 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 02:31:52,314.314 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 02:31:52,316.316 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 02:31:54,356.356 INFO    ] ================================================
[2026-06-12 02:31:54,371.371 INFO    ] Launching Daemon at Fri Jun 12 02:31:54 IST 2026
[2026-06-12 02:31:54,382.382 INFO    ] ================================================
[2026-06-12 02:31:54,735.735 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 02:31:54
[2026-06-12 02:31:55,063.063 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 02:31:55,216.216 INFO    ] Initializing speech engine...
[2026-06-12 02:31:55,219.219 INFO    ] 2026-06-12 02:31:55
[2026-06-12 02:31:55,423.423 INFO    ] 2026-06-12 02:31:55
[2026-06-12 02:31:55,451.451 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 02:31:55,634.634 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 02:31:55,644.644 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 02:31:55,766.766 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 02:31:55,827.827 INFO    ] time= 12/06/2026 02:31:55
[2026-06-12 02:31:55,856.856 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 02:31:55,866.866 INFO    ] Checking for existing commands in stream...
[2026-06-12 02:31:55,961.961 INFO    ] No existing commands found in stream
[2026-06-12 02:32:00,975.975 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 02:32:00,978.978 INFO    ] Waiting 0.84 seconds before fallback handling...
[2026-06-12 02:32:02,124.124 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 02:32:02,126.126 INFO    ] Checking for system updates...
[2026-06-12 02:32:02,153.153 INFO    ] 200
[2026-06-12 02:32:02,154.154 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:32:02,187.187 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 02:32:02,188.188 INFO    ] No update needed
[2026-06-12 02:32:02,189.189 INFO    ] Checking for camera pi updates...
[2026-06-12 02:32:02,209.209 INFO    ] 200
[2026-06-12 02:32:02,210.210 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:32:02,235.235 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 02:32:02,261.261 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 02:32:02,262.262 INFO    ] No camera update needed
[2026-06-12 02:32:02,263.263 INFO    ] Script finished. Safe exiting...
[2026-06-12 02:32:02,265.265 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 02:32:02,268.268 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 02:32:02,271.271 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 02:32:04,310.310 INFO    ] ================================================
[2026-06-12 02:32:04,326.326 INFO    ] Launching Daemon at Fri Jun 12 02:32:04 IST 2026
[2026-06-12 02:32:04,340.340 INFO    ] ================================================
[2026-06-12 02:32:04,700.700 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 02:32:04
[2026-06-12 02:32:05,039.039 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 02:32:05,213.213 INFO    ] Initializing speech engine...
[2026-06-12 02:32:05,226.226 INFO    ] 2026-06-12 02:32:05
[2026-06-12 02:32:05,432.432 INFO    ] 2026-06-12 02:32:05
[2026-06-12 02:32:05,463.463 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 02:32:05,661.661 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 02:32:05,665.665 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 02:32:05,804.804 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 02:32:05,855.855 INFO    ] time= 12/06/2026 02:32:05
[2026-06-12 02:32:05,893.893 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 02:32:05,911.911 INFO    ] Checking for existing commands in stream...
[2026-06-12 02:32:05,985.985 INFO    ] No existing commands found in stream
[2026-06-12 02:32:10,995.995 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 02:32:10,998.998 INFO    ] Waiting 0.30 seconds before fallback handling...
[2026-06-12 02:32:11,672.672 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 02:32:11,673.673 INFO    ] Checking for system updates...
[2026-06-12 02:32:11,694.694 INFO    ] 200
[2026-06-12 02:32:11,695.695 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:32:11,729.729 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 02:32:11,731.731 INFO    ] No update needed
[2026-06-12 02:32:11,732.732 INFO    ] Checking for camera pi updates...
[2026-06-12 02:32:11,751.751 INFO    ] 200
[2026-06-12 02:32:11,753.753 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:32:11,777.777 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 02:32:11,802.802 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 02:32:11,803.803 INFO    ] No camera update needed
[2026-06-12 02:32:11,805.805 INFO    ] Script finished. Safe exiting...
[2026-06-12 02:32:11,806.806 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 02:32:11,809.809 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 02:32:11,811.811 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 02:32:13,850.850 INFO    ] ================================================
[2026-06-12 02:32:13,865.865 INFO    ] Launching Daemon at Fri Jun 12 02:32:13 IST 2026
[2026-06-12 02:32:13,877.877 INFO    ] ================================================
[2026-06-12 02:32:14,247.247 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 02:32:14
[2026-06-12 02:32:14,560.560 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 02:32:14,691.691 INFO    ] Initializing speech engine...
[2026-06-12 02:32:14,699.699 INFO    ] 2026-06-12 02:32:14
[2026-06-12 02:32:14,914.914 INFO    ] 2026-06-12 02:32:14
[2026-06-12 02:32:14,942.942 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 02:32:15,128.128 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 02:32:15,138.138 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 02:32:15,268.268 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 02:32:15,336.336 INFO    ] time= 12/06/2026 02:32:15
[2026-06-12 02:32:15,360.360 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 02:32:15,366.366 INFO    ] Checking for existing commands in stream...
[2026-06-12 02:32:15,434.434 INFO    ] No existing commands found in stream
[2026-06-12 02:32:20,466.466 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 02:32:20,470.470 INFO    ] Waiting 1.25 seconds before fallback handling...
[2026-06-12 02:32:22,115.115 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 02:32:22,116.116 INFO    ] Checking for system updates...
[2026-06-12 02:32:22,137.137 INFO    ] 200
[2026-06-12 02:32:22,139.139 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:32:22,173.173 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 02:32:22,174.174 INFO    ] No update needed
[2026-06-12 02:32:22,175.175 INFO    ] Checking for camera pi updates...
[2026-06-12 02:32:22,194.194 INFO    ] 200
[2026-06-12 02:32:22,196.196 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:32:22,220.220 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 02:32:22,272.272 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 02:32:22,273.273 INFO    ] No camera update needed
[2026-06-12 02:32:22,274.274 INFO    ] Script finished. Safe exiting...
[2026-06-12 02:32:22,276.276 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 02:32:22,279.279 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 02:32:22,281.281 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 02:32:24,321.321 INFO    ] ================================================
[2026-06-12 02:32:24,337.337 INFO    ] Launching Daemon at Fri Jun 12 02:32:24 IST 2026
[2026-06-12 02:32:24,347.347 INFO    ] ================================================
[2026-06-12 02:32:24,687.687 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 02:32:24
[2026-06-12 02:32:25,019.019 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 02:32:25,157.157 INFO    ] Initializing speech engine...
[2026-06-12 02:32:25,171.171 INFO    ] 2026-06-12 02:32:25
[2026-06-12 02:32:25,383.383 INFO    ] 2026-06-12 02:32:25
[2026-06-12 02:32:25,412.412 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 02:32:25,598.598 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 02:32:25,609.609 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 02:32:25,740.740 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 02:32:25,808.808 INFO    ] time= 12/06/2026 02:32:25
[2026-06-12 02:32:25,832.832 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 02:32:25,839.839 INFO    ] Checking for existing commands in stream...
[2026-06-12 02:32:25,905.905 INFO    ] No existing commands found in stream
[2026-06-12 02:32:30,916.916 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 02:32:30,919.919 INFO    ] Waiting 2.40 seconds before fallback handling...
[2026-06-12 02:32:33,734.734 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 02:32:33,735.735 INFO    ] Checking for system updates...
[2026-06-12 02:32:33,756.756 INFO    ] 200
[2026-06-12 02:32:33,758.758 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:32:33,788.788 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 02:32:33,790.790 INFO    ] No update needed
[2026-06-12 02:32:33,791.791 INFO    ] Checking for camera pi updates...
[2026-06-12 02:32:33,812.812 INFO    ] 200
[2026-06-12 02:32:33,813.813 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:32:33,839.839 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 02:32:33,884.884 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 02:32:33,885.885 INFO    ] No camera update needed
[2026-06-12 02:32:33,887.887 INFO    ] Script finished. Safe exiting...
[2026-06-12 02:32:33,888.888 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 02:32:33,892.892 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 02:32:33,894.894 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 02:32:35,935.935 INFO    ] ================================================
[2026-06-12 02:32:35,951.951 INFO    ] Launching Daemon at Fri Jun 12 02:32:35 IST 2026
[2026-06-12 02:32:35,962.962 INFO    ] ================================================
[2026-06-12 02:32:36,304.304 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 02:32:36
[2026-06-12 02:32:36,617.617 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 02:32:36,752.752 INFO    ] Initializing speech engine...
[2026-06-12 02:32:36,764.764 INFO    ] 2026-06-12 02:32:36
[2026-06-12 02:32:36,979.979 INFO    ] 2026-06-12 02:32:36
[2026-06-12 02:32:37,009.009 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 02:32:37,138.138 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 02:32:37,204.204 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 02:32:37,350.350 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 02:32:37,419.419 INFO    ] time= 12/06/2026 02:32:37
[2026-06-12 02:32:37,444.444 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 02:32:37,451.451 INFO    ] Checking for existing commands in stream...
[2026-06-12 02:32:37,546.546 INFO    ] No existing commands found in stream
[2026-06-12 02:32:42,560.560 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 02:32:42,563.563 INFO    ] Waiting 1.51 seconds before fallback handling...
[2026-06-12 02:32:44,476.476 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 02:32:44,477.477 INFO    ] Checking for system updates...
[2026-06-12 02:32:44,498.498 INFO    ] 200
[2026-06-12 02:32:44,500.500 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:32:44,533.533 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 02:32:44,535.535 INFO    ] No update needed
[2026-06-12 02:32:44,536.536 INFO    ] Checking for camera pi updates...
[2026-06-12 02:32:44,556.556 INFO    ] 200
[2026-06-12 02:32:44,558.558 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:32:44,584.584 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 02:32:44,624.624 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 02:32:44,625.625 INFO    ] No camera update needed
[2026-06-12 02:32:44,627.627 INFO    ] Script finished. Safe exiting...
[2026-06-12 02:32:44,628.628 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 02:32:44,631.631 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 02:32:44,634.634 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 02:32:46,673.673 INFO    ] ================================================
[2026-06-12 02:32:46,688.688 INFO    ] Launching Daemon at Fri Jun 12 02:32:46 IST 2026
[2026-06-12 02:32:46,699.699 INFO    ] ================================================
[2026-06-12 02:32:47,041.041 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 02:32:47
[2026-06-12 02:32:47,353.353 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 02:32:47,483.483 INFO    ] Initializing speech engine...
[2026-06-12 02:32:47,488.488 INFO    ] 2026-06-12 02:32:47
[2026-06-12 02:32:47,712.712 INFO    ] 2026-06-12 02:32:47
[2026-06-12 02:32:47,741.741 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 02:32:47,935.935 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 02:32:47,939.939 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 02:32:48,079.079 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 02:32:48,131.131 INFO    ] time= 12/06/2026 02:32:48
[2026-06-12 02:32:48,159.159 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 02:32:48,181.181 INFO    ] Checking for existing commands in stream...
[2026-06-12 02:32:48,256.256 INFO    ] No existing commands found in stream
[2026-06-12 02:32:53,265.265 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 02:32:53,268.268 INFO    ] Waiting 1.83 seconds before fallback handling...
[2026-06-12 02:32:55,495.495 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 02:32:55,496.496 INFO    ] Checking for system updates...
[2026-06-12 02:32:55,517.517 INFO    ] 200
[2026-06-12 02:32:55,518.518 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:32:55,548.548 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 02:32:55,550.550 INFO    ] No update needed
[2026-06-12 02:32:55,551.551 INFO    ] Checking for camera pi updates...
[2026-06-12 02:32:55,572.572 INFO    ] 200
[2026-06-12 02:32:55,573.573 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:32:55,596.596 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 02:32:55,636.636 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 02:32:55,638.638 INFO    ] No camera update needed
[2026-06-12 02:32:55,639.639 INFO    ] Script finished. Safe exiting...
[2026-06-12 02:32:55,641.641 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 02:32:55,644.644 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 02:32:55,646.646 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 02:32:57,685.685 INFO    ] ================================================
[2026-06-12 02:32:57,700.700 INFO    ] Launching Daemon at Fri Jun 12 02:32:57 IST 2026
[2026-06-12 02:32:57,711.711 INFO    ] ================================================
[2026-06-12 02:32:58,070.070 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 02:32:58
[2026-06-12 02:32:58,384.384 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 02:32:58,514.514 INFO    ] Initializing speech engine...
[2026-06-12 02:32:58,519.519 INFO    ] 2026-06-12 02:32:58
[2026-06-12 02:32:58,738.738 INFO    ] 2026-06-12 02:32:58
[2026-06-12 02:32:58,766.766 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 02:32:58,901.901 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 02:32:58,955.955 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 02:32:59,095.095 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 02:32:59,153.153 INFO    ] time= 12/06/2026 02:32:59
[2026-06-12 02:32:59,187.187 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 02:32:59,194.194 INFO    ] Checking for existing commands in stream...
[2026-06-12 02:32:59,260.260 INFO    ] No existing commands found in stream
[2026-06-12 02:33:04,271.271 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 02:33:04,273.273 INFO    ] Waiting 3.24 seconds before fallback handling...
[2026-06-12 02:33:07,929.929 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 02:33:07,931.931 INFO    ] Checking for system updates...
[2026-06-12 02:33:07,951.951 INFO    ] 200
[2026-06-12 02:33:07,953.953 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:33:07,985.985 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 02:33:07,987.987 INFO    ] No update needed
[2026-06-12 02:33:07,988.988 INFO    ] Checking for camera pi updates...
[2026-06-12 02:33:08,007.007 INFO    ] 200
[2026-06-12 02:33:08,008.008 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:33:08,034.034 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 02:33:08,077.077 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 02:33:08,079.079 INFO    ] No camera update needed
[2026-06-12 02:33:08,080.080 INFO    ] Script finished. Safe exiting...
[2026-06-12 02:33:08,081.081 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 02:33:08,084.084 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 02:33:08,087.087 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 02:33:10,126.126 INFO    ] ================================================
[2026-06-12 02:33:10,142.142 INFO    ] Launching Daemon at Fri Jun 12 02:33:10 IST 2026
[2026-06-12 02:33:10,152.152 INFO    ] ================================================
[2026-06-12 02:33:10,480.480 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 02:33:10
[2026-06-12 02:33:10,792.792 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 02:33:10,923.923 INFO    ] Initializing speech engine...
[2026-06-12 02:33:10,931.931 INFO    ] 2026-06-12 02:33:10
[2026-06-12 02:33:11,145.145 INFO    ] 2026-06-12 02:33:11
[2026-06-12 02:33:11,174.174 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 02:33:11,360.360 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 02:33:11,363.363 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 02:33:11,502.502 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 02:33:11,570.570 INFO    ] time= 12/06/2026 02:33:11
[2026-06-12 02:33:11,594.594 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 02:33:11,601.601 INFO    ] Checking for existing commands in stream...
[2026-06-12 02:33:11,667.667 INFO    ] No existing commands found in stream
[2026-06-12 02:33:16,678.678 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 02:33:16,681.681 INFO    ] Waiting 3.27 seconds before fallback handling...
[2026-06-12 02:33:20,322.322 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 02:33:20,323.323 INFO    ] Checking for system updates...
[2026-06-12 02:33:20,344.344 INFO    ] 200
[2026-06-12 02:33:20,345.345 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:33:20,377.377 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 02:33:20,378.378 INFO    ] No update needed
[2026-06-12 02:33:20,379.379 INFO    ] Checking for camera pi updates...
[2026-06-12 02:33:20,399.399 INFO    ] 200
[2026-06-12 02:33:20,401.401 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:33:20,425.425 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 02:33:20,466.466 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 02:33:20,468.468 INFO    ] No camera update needed
[2026-06-12 02:33:20,469.469 INFO    ] Script finished. Safe exiting...
[2026-06-12 02:33:20,470.470 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 02:33:20,473.473 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 02:33:20,476.476 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 02:33:22,515.515 INFO    ] ================================================
[2026-06-12 02:33:22,530.530 INFO    ] Launching Daemon at Fri Jun 12 02:33:22 IST 2026
[2026-06-12 02:33:22,541.541 INFO    ] ================================================
[2026-06-12 02:33:22,887.887 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 02:33:22
[2026-06-12 02:33:23,198.198 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 02:33:23,341.341 INFO    ] Initializing speech engine...
[2026-06-12 02:33:23,348.348 INFO    ] 2026-06-12 02:33:23
[2026-06-12 02:33:23,550.550 INFO    ] 2026-06-12 02:33:23
[2026-06-12 02:33:23,580.580 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 02:33:23,767.767 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 02:33:23,776.776 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 02:33:23,901.901 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 02:33:23,962.962 INFO    ] time= 12/06/2026 02:33:23
[2026-06-12 02:33:23,992.992 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 02:33:24,002.002 INFO    ] Checking for existing commands in stream...
[2026-06-12 02:33:24,098.098 INFO    ] No existing commands found in stream
[2026-06-12 02:33:29,122.122 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 02:33:29,125.125 INFO    ] Waiting 2.42 seconds before fallback handling...
[2026-06-12 02:33:31,852.852 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 02:33:31,854.854 INFO    ] Checking for system updates...
[2026-06-12 02:33:31,877.877 INFO    ] 200
[2026-06-12 02:33:31,878.878 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:33:31,915.915 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 02:33:31,916.916 INFO    ] No update needed
[2026-06-12 02:33:31,918.918 INFO    ] Checking for camera pi updates...
[2026-06-12 02:33:31,943.943 INFO    ] 200
[2026-06-12 02:33:31,945.945 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:33:31,971.971 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 02:33:32,001.001 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 02:33:32,003.003 INFO    ] No camera update needed
[2026-06-12 02:33:32,005.005 INFO    ] Script finished. Safe exiting...
[2026-06-12 02:33:32,007.007 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 02:33:32,011.011 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 02:33:32,015.015 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 02:33:34,056.056 INFO    ] ================================================
[2026-06-12 02:33:34,071.071 INFO    ] Launching Daemon at Fri Jun 12 02:33:34 IST 2026
[2026-06-12 02:33:34,082.082 INFO    ] ================================================
[2026-06-12 02:33:34,405.405 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 02:33:34
[2026-06-12 02:33:34,716.716 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 02:33:34,859.859 INFO    ] Initializing speech engine...
[2026-06-12 02:33:34,864.864 INFO    ] 2026-06-12 02:33:34
[2026-06-12 02:33:35,073.073 INFO    ] 2026-06-12 02:33:35
[2026-06-12 02:33:35,101.101 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 02:33:35,287.287 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 02:33:35,295.295 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 02:33:35,423.423 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 02:33:35,439.439 INFO    ] time= 12/06/2026 02:33:35
[2026-06-12 02:33:35,498.498 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 02:33:35,521.521 INFO    ] Checking for existing commands in stream...
[2026-06-12 02:33:35,592.592 INFO    ] No existing commands found in stream
[2026-06-12 02:33:40,601.601 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 02:33:40,604.604 INFO    ] Waiting 0.51 seconds before fallback handling...
[2026-06-12 02:33:41,501.501 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 02:33:41,502.502 INFO    ] Checking for system updates...
[2026-06-12 02:33:41,524.524 INFO    ] 200
[2026-06-12 02:33:41,526.526 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:33:41,559.559 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 02:33:41,561.561 INFO    ] No update needed
[2026-06-12 02:33:41,563.563 INFO    ] Checking for camera pi updates...
[2026-06-12 02:33:41,583.583 INFO    ] 200
[2026-06-12 02:33:41,585.585 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:33:41,611.611 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 02:33:41,672.672 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 02:33:41,673.673 INFO    ] No camera update needed
[2026-06-12 02:33:41,675.675 INFO    ] Script finished. Safe exiting...
[2026-06-12 02:33:41,676.676 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 02:33:41,679.679 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 02:33:41,682.682 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 02:33:43,721.721 INFO    ] ================================================
[2026-06-12 02:33:43,736.736 INFO    ] Launching Daemon at Fri Jun 12 02:33:43 IST 2026
[2026-06-12 02:33:43,747.747 INFO    ] ================================================
[2026-06-12 02:33:44,112.112 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 02:33:44
[2026-06-12 02:33:44,424.424 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 02:33:44,558.558 INFO    ] Initializing speech engine...
[2026-06-12 02:33:44,570.570 INFO    ] 2026-06-12 02:33:44
[2026-06-12 02:33:44,781.781 INFO    ] 2026-06-12 02:33:44
[2026-06-12 02:33:44,809.809 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 02:33:44,996.996 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 02:33:45,000.000 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 02:33:45,135.135 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 02:33:45,202.202 INFO    ] time= 12/06/2026 02:33:45
[2026-06-12 02:33:45,231.231 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 02:33:45,238.238 INFO    ] Checking for existing commands in stream...
[2026-06-12 02:33:45,306.306 INFO    ] No existing commands found in stream
[2026-06-12 02:33:50,315.315 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 02:33:50,317.317 INFO    ] Waiting 2.80 seconds before fallback handling...
[2026-06-12 02:33:53,501.501 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 02:33:53,502.502 INFO    ] Checking for system updates...
[2026-06-12 02:33:53,523.523 INFO    ] 200
[2026-06-12 02:33:53,525.525 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:33:53,555.555 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 02:33:53,557.557 INFO    ] No update needed
[2026-06-12 02:33:53,558.558 INFO    ] Checking for camera pi updates...
[2026-06-12 02:33:53,581.581 INFO    ] 200
[2026-06-12 02:33:53,582.582 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:33:53,605.605 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 02:33:53,650.650 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 02:33:53,652.652 INFO    ] No camera update needed
[2026-06-12 02:33:53,653.653 INFO    ] Script finished. Safe exiting...
[2026-06-12 02:33:53,654.654 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 02:33:53,657.657 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 02:33:53,660.660 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 02:33:55,699.699 INFO    ] ================================================
[2026-06-12 02:33:55,719.719 INFO    ] Launching Daemon at Fri Jun 12 02:33:55 IST 2026
[2026-06-12 02:33:55,730.730 INFO    ] ================================================
[2026-06-12 02:33:56,099.099 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 02:33:56
[2026-06-12 02:33:56,409.409 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 02:33:56,551.551 INFO    ] Initializing speech engine...
[2026-06-12 02:33:56,556.556 INFO    ] 2026-06-12 02:33:56
[2026-06-12 02:33:56,761.761 INFO    ] 2026-06-12 02:33:56
[2026-06-12 02:33:56,791.791 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 02:33:56,976.976 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 02:33:56,985.985 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 02:33:57,112.112 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 02:33:57,174.174 INFO    ] time= 12/06/2026 02:33:57
[2026-06-12 02:33:57,207.207 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 02:33:57,209.209 INFO    ] Checking for existing commands in stream...
[2026-06-12 02:33:57,305.305 INFO    ] No existing commands found in stream
[2026-06-12 02:34:02,312.312 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 02:34:02,314.314 INFO    ] Waiting 2.77 seconds before fallback handling...
[2026-06-12 02:34:05,479.479 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 02:34:05,480.480 INFO    ] Checking for system updates...
[2026-06-12 02:34:05,502.502 INFO    ] 200
[2026-06-12 02:34:05,503.503 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:34:05,534.534 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 02:34:05,536.536 INFO    ] No update needed
[2026-06-12 02:34:05,537.537 INFO    ] Checking for camera pi updates...
[2026-06-12 02:34:05,557.557 INFO    ] 200
[2026-06-12 02:34:05,558.558 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:34:05,583.583 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 02:34:05,625.625 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 02:34:05,626.626 INFO    ] No camera update needed
[2026-06-12 02:34:05,628.628 INFO    ] Script finished. Safe exiting...
[2026-06-12 02:34:05,629.629 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 02:34:05,632.632 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 02:34:05,635.635 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 02:34:07,673.673 INFO    ] ================================================
[2026-06-12 02:34:07,688.688 INFO    ] Launching Daemon at Fri Jun 12 02:34:07 IST 2026
[2026-06-12 02:34:07,699.699 INFO    ] ================================================
[2026-06-12 02:34:08,022.022 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 02:34:08
[2026-06-12 02:34:08,333.333 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 02:34:08,462.462 INFO    ] Initializing speech engine...
[2026-06-12 02:34:08,466.466 INFO    ] 2026-06-12 02:34:08
[2026-06-12 02:34:08,683.683 INFO    ] 2026-06-12 02:34:08
[2026-06-12 02:34:08,712.712 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 02:34:08,897.897 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 02:34:08,905.905 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 02:34:09,034.034 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 02:34:09,102.102 INFO    ] time= 12/06/2026 02:34:09
[2026-06-12 02:34:09,126.126 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 02:34:09,133.133 INFO    ] Checking for existing commands in stream...
[2026-06-12 02:34:09,222.222 INFO    ] No existing commands found in stream
[2026-06-12 02:34:14,231.231 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 02:34:14,234.234 INFO    ] Waiting 2.13 seconds before fallback handling...
[2026-06-12 02:34:16,749.749 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 02:34:16,751.751 INFO    ] Checking for system updates...
[2026-06-12 02:34:16,771.771 INFO    ] 200
[2026-06-12 02:34:16,773.773 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:34:16,805.805 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 02:34:16,806.806 INFO    ] No update needed
[2026-06-12 02:34:16,807.807 INFO    ] Checking for camera pi updates...
[2026-06-12 02:34:16,827.827 INFO    ] 200
[2026-06-12 02:34:16,828.828 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:34:16,851.851 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 02:34:16,895.895 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 02:34:16,897.897 INFO    ] No camera update needed
[2026-06-12 02:34:16,898.898 INFO    ] Script finished. Safe exiting...
[2026-06-12 02:34:16,899.899 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 02:34:16,902.902 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 02:34:16,905.905 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 02:34:18,943.943 INFO    ] ================================================
[2026-06-12 02:34:18,958.958 INFO    ] Launching Daemon at Fri Jun 12 02:34:18 IST 2026
[2026-06-12 02:34:18,968.968 INFO    ] ================================================
[2026-06-12 02:34:19,322.322 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 02:34:19
[2026-06-12 02:34:19,660.660 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 02:34:19,817.817 INFO    ] Initializing speech engine...
[2026-06-12 02:34:19,823.823 INFO    ] 2026-06-12 02:34:19
[2026-06-12 02:34:20,031.031 INFO    ] 2026-06-12 02:34:20
[2026-06-12 02:34:20,060.060 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 02:34:20,247.247 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 02:34:20,256.256 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 02:34:20,402.402 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 02:34:20,456.456 INFO    ] time= 12/06/2026 02:34:20
[2026-06-12 02:34:20,478.478 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 02:34:20,484.484 INFO    ] Checking for existing commands in stream...
[2026-06-12 02:34:20,574.574 INFO    ] No existing commands found in stream
[2026-06-12 02:34:25,589.589 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 02:34:25,592.592 INFO    ] Waiting 2.34 seconds before fallback handling...
[2026-06-12 02:34:28,305.305 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 02:34:28,307.307 INFO    ] Checking for system updates...
[2026-06-12 02:34:28,328.328 INFO    ] 200
[2026-06-12 02:34:28,329.329 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:34:28,364.364 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 02:34:28,365.365 INFO    ] No update needed
[2026-06-12 02:34:28,366.366 INFO    ] Checking for camera pi updates...
[2026-06-12 02:34:28,389.389 INFO    ] 200
[2026-06-12 02:34:28,390.390 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:34:28,415.415 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 02:34:28,455.455 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 02:34:28,457.457 INFO    ] No camera update needed
[2026-06-12 02:34:28,458.458 INFO    ] Script finished. Safe exiting...
[2026-06-12 02:34:28,459.459 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 02:34:28,462.462 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 02:34:28,465.465 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 02:34:30,503.503 INFO    ] ================================================
[2026-06-12 02:34:30,518.518 INFO    ] Launching Daemon at Fri Jun 12 02:34:30 IST 2026
[2026-06-12 02:34:30,529.529 INFO    ] ================================================
[2026-06-12 02:34:30,877.877 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 02:34:30
[2026-06-12 02:34:31,189.189 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 02:34:31,320.320 INFO    ] Initializing speech engine...
[2026-06-12 02:34:31,325.325 INFO    ] 2026-06-12 02:34:31
[2026-06-12 02:34:31,554.554 INFO    ] 2026-06-12 02:34:31
[2026-06-12 02:34:31,585.585 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 02:34:31,749.749 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 02:34:31,811.811 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 02:34:31,967.967 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 02:34:31,991.991 INFO    ] time= 12/06/2026 02:34:31
[2026-06-12 02:34:32,045.045 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 02:34:32,089.089 INFO    ] Checking for existing commands in stream...
[2026-06-12 02:34:32,169.169 INFO    ] No existing commands found in stream
[2026-06-12 02:34:37,179.179 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 02:34:37,182.182 INFO    ] Waiting 3.31 seconds before fallback handling...
[2026-06-12 02:34:40,859.859 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 02:34:40,861.861 INFO    ] Checking for system updates...
[2026-06-12 02:34:40,883.883 INFO    ] 200
[2026-06-12 02:34:40,885.885 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:34:40,921.921 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 02:34:40,923.923 INFO    ] No update needed
[2026-06-12 02:34:40,925.925 INFO    ] Checking for camera pi updates...
[2026-06-12 02:34:40,947.947 INFO    ] 200
[2026-06-12 02:34:40,949.949 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:34:40,981.981 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 02:34:41,123.123 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 02:34:41,125.125 INFO    ] No camera update needed
[2026-06-12 02:34:41,126.126 INFO    ] Script finished. Safe exiting...
[2026-06-12 02:34:41,127.127 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 02:34:41,130.130 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 02:34:41,133.133 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 02:34:43,158.158 INFO    ] ================================================
[2026-06-12 02:34:43,168.168 INFO    ] Launching Daemon at Fri Jun 12 02:34:43 IST 2026
[2026-06-12 02:34:43,174.174 INFO    ] ================================================
[2026-06-12 02:34:43,514.514 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 02:34:43
[2026-06-12 02:34:43,866.866 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 02:34:44,040.040 INFO    ] Initializing speech engine...
[2026-06-12 02:34:44,044.044 INFO    ] 2026-06-12 02:34:44
[2026-06-12 02:34:44,247.247 INFO    ] 2026-06-12 02:34:44
[2026-06-12 02:34:44,277.277 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 02:34:44,461.461 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 02:34:44,465.465 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 02:34:44,609.609 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 02:34:44,672.672 INFO    ] time= 12/06/2026 02:34:44
[2026-06-12 02:34:44,696.696 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 02:34:44,697.697 INFO    ] Checking for existing commands in stream...
[2026-06-12 02:34:44,769.769 INFO    ] No existing commands found in stream
[2026-06-12 02:34:49,779.779 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 02:34:49,782.782 INFO    ] Waiting 0.20 seconds before fallback handling...
[2026-06-12 02:34:50,318.318 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 02:34:50,320.320 INFO    ] Checking for system updates...
[2026-06-12 02:34:50,341.341 INFO    ] 200
[2026-06-12 02:34:50,342.342 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:34:50,395.395 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 02:34:50,396.396 INFO    ] No update needed
[2026-06-12 02:34:50,397.397 INFO    ] Checking for camera pi updates...
[2026-06-12 02:34:50,417.417 INFO    ] 200
[2026-06-12 02:34:50,418.418 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:34:50,443.443 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 02:34:50,488.488 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 02:34:50,490.490 INFO    ] No camera update needed
[2026-06-12 02:34:50,491.491 INFO    ] Script finished. Safe exiting...
[2026-06-12 02:34:50,493.493 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 02:34:50,496.496 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 02:34:50,498.498 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 02:34:52,537.537 INFO    ] ================================================
[2026-06-12 02:34:52,552.552 INFO    ] Launching Daemon at Fri Jun 12 02:34:52 IST 2026
[2026-06-12 02:34:52,563.563 INFO    ] ================================================
[2026-06-12 02:34:52,908.908 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 02:34:52
[2026-06-12 02:34:53,219.219 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 02:34:53,363.363 INFO    ] Initializing speech engine...
[2026-06-12 02:34:53,369.369 INFO    ] 2026-06-12 02:34:53
[2026-06-12 02:34:53,573.573 INFO    ] 2026-06-12 02:34:53
[2026-06-12 02:34:53,601.601 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 02:34:53,789.789 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 02:34:53,799.799 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 02:34:53,926.926 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 02:34:53,998.998 INFO    ] time= 12/06/2026 02:34:53
[2026-06-12 02:34:54,022.022 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 02:34:54,028.028 INFO    ] Checking for existing commands in stream...
[2026-06-12 02:34:54,120.120 INFO    ] No existing commands found in stream
[2026-06-12 02:34:59,128.128 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 02:34:59,131.131 INFO    ] Waiting 0.03 seconds before fallback handling...
[2026-06-12 02:34:59,527.527 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 02:34:59,529.529 INFO    ] Checking for system updates...
[2026-06-12 02:34:59,550.550 INFO    ] 200
[2026-06-12 02:34:59,551.551 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:34:59,584.584 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 02:34:59,585.585 INFO    ] No update needed
[2026-06-12 02:34:59,587.587 INFO    ] Checking for camera pi updates...
[2026-06-12 02:34:59,609.609 INFO    ] 200
[2026-06-12 02:34:59,610.610 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:34:59,633.633 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 02:34:59,687.687 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 02:34:59,688.688 INFO    ] No camera update needed
[2026-06-12 02:34:59,690.690 INFO    ] Script finished. Safe exiting...
[2026-06-12 02:34:59,691.691 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 02:34:59,694.694 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 02:34:59,697.697 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 02:35:01,753.753 INFO    ] ================================================
[2026-06-12 02:35:01,787.787 INFO    ] Launching Daemon at Fri Jun 12 02:35:01 IST 2026
[2026-06-12 02:35:01,821.821 INFO    ] ================================================
[2026-06-12 02:35:02,276.276 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 02:35:02
[2026-06-12 02:35:02,639.639 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 02:35:02,806.806 INFO    ] Initializing speech engine...
[2026-06-12 02:35:02,832.832 INFO    ] 2026-06-12 02:35:02
[2026-06-12 02:35:03,068.068 INFO    ] 2026-06-12 02:35:03
[2026-06-12 02:35:03,099.099 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 02:35:03,244.244 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 02:35:03,291.291 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 02:35:03,435.435 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 02:35:03,499.499 INFO    ] time= 12/06/2026 02:35:03
[2026-06-12 02:35:03,523.523 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 02:35:03,529.529 INFO    ] Checking for existing commands in stream...
[2026-06-12 02:35:03,597.597 INFO    ] No existing commands found in stream
[2026-06-12 02:35:08,607.607 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 02:35:08,610.610 INFO    ] Waiting 0.06 seconds before fallback handling...
[2026-06-12 02:35:09,037.037 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 02:35:09,039.039 INFO    ] Checking for system updates...
[2026-06-12 02:35:09,060.060 INFO    ] 200
[2026-06-12 02:35:09,061.061 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:35:09,094.094 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 02:35:09,096.096 INFO    ] No update needed
[2026-06-12 02:35:09,097.097 INFO    ] Checking for camera pi updates...
[2026-06-12 02:35:09,120.120 INFO    ] 200
[2026-06-12 02:35:09,121.121 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:35:09,146.146 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 02:35:09,192.192 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 02:35:09,193.193 INFO    ] No camera update needed
[2026-06-12 02:35:09,194.194 INFO    ] Script finished. Safe exiting...
[2026-06-12 02:35:09,196.196 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 02:35:09,199.199 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 02:35:09,202.202 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 02:35:11,242.242 INFO    ] ================================================
[2026-06-12 02:35:11,257.257 INFO    ] Launching Daemon at Fri Jun 12 02:35:11 IST 2026
[2026-06-12 02:35:11,268.268 INFO    ] ================================================
[2026-06-12 02:35:11,638.638 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 02:35:11
[2026-06-12 02:35:11,952.952 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 02:35:12,085.085 INFO    ] Initializing speech engine...
[2026-06-12 02:35:12,094.094 INFO    ] 2026-06-12 02:35:12
[2026-06-12 02:35:12,319.319 INFO    ] 2026-06-12 02:35:12
[2026-06-12 02:35:12,349.349 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 02:35:12,482.482 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 02:35:12,526.526 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 02:35:12,647.647 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 02:35:12,649.649 INFO    ] time= 12/06/2026 02:35:12
[2026-06-12 02:35:12,670.670 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 02:35:12,692.692 INFO    ] Checking for existing commands in stream...
[2026-06-12 02:35:12,784.784 INFO    ] No existing commands found in stream
[2026-06-12 02:35:17,798.798 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 02:35:17,801.801 INFO    ] Waiting 2.26 seconds before fallback handling...
[2026-06-12 02:35:20,428.428 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 02:35:20,429.429 INFO    ] Checking for system updates...
[2026-06-12 02:35:20,452.452 INFO    ] 200
[2026-06-12 02:35:20,454.454 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:35:20,484.484 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 02:35:20,485.485 INFO    ] No update needed
[2026-06-12 02:35:20,487.487 INFO    ] Checking for camera pi updates...
[2026-06-12 02:35:20,506.506 INFO    ] 200
[2026-06-12 02:35:20,508.508 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:35:20,533.533 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 02:35:20,577.577 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 02:35:20,578.578 INFO    ] No camera update needed
[2026-06-12 02:35:20,580.580 INFO    ] Script finished. Safe exiting...
[2026-06-12 02:35:20,581.581 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 02:35:20,585.585 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 02:35:20,588.588 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 02:35:22,626.626 INFO    ] ================================================
[2026-06-12 02:35:22,641.641 INFO    ] Launching Daemon at Fri Jun 12 02:35:22 IST 2026
[2026-06-12 02:35:22,652.652 INFO    ] ================================================
[2026-06-12 02:35:22,980.980 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 02:35:22
[2026-06-12 02:35:23,293.293 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 02:35:23,425.425 INFO    ] Initializing speech engine...
[2026-06-12 02:35:23,433.433 INFO    ] 2026-06-12 02:35:23
[2026-06-12 02:35:23,645.645 INFO    ] 2026-06-12 02:35:23
[2026-06-12 02:35:23,674.674 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 02:35:23,861.861 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 02:35:23,870.870 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 02:35:23,995.995 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 02:35:24,056.056 INFO    ] time= 12/06/2026 02:35:24
[2026-06-12 02:35:24,091.091 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 02:35:24,096.096 INFO    ] Checking for existing commands in stream...
[2026-06-12 02:35:24,169.169 INFO    ] No existing commands found in stream
[2026-06-12 02:35:29,178.178 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 02:35:29,181.181 INFO    ] Waiting 3.06 seconds before fallback handling...
[2026-06-12 02:35:32,578.578 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 02:35:32,580.580 INFO    ] Checking for system updates...
[2026-06-12 02:35:32,607.607 INFO    ] 200
[2026-06-12 02:35:32,608.608 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:35:32,639.639 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 02:35:32,640.640 INFO    ] No update needed
[2026-06-12 02:35:32,642.642 INFO    ] Checking for camera pi updates...
[2026-06-12 02:35:32,663.663 INFO    ] 200
[2026-06-12 02:35:32,664.664 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:35:32,701.701 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 02:35:32,733.733 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 02:35:32,736.736 INFO    ] No camera update needed
[2026-06-12 02:35:32,739.739 INFO    ] Script finished. Safe exiting...
[2026-06-12 02:35:32,741.741 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 02:35:32,748.748 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 02:35:32,754.754 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 02:35:34,796.796 INFO    ] ================================================
[2026-06-12 02:35:34,812.812 INFO    ] Launching Daemon at Fri Jun 12 02:35:34 IST 2026
[2026-06-12 02:35:34,823.823 INFO    ] ================================================
[2026-06-12 02:35:35,187.187 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 02:35:35
[2026-06-12 02:35:35,513.513 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 02:35:35,644.644 INFO    ] Initializing speech engine...
[2026-06-12 02:35:35,648.648 INFO    ] 2026-06-12 02:35:35
[2026-06-12 02:35:35,866.866 INFO    ] 2026-06-12 02:35:35
[2026-06-12 02:35:35,896.896 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 02:35:36,081.081 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 02:35:36,084.084 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 02:35:36,228.228 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 02:35:36,291.291 INFO    ] time= 12/06/2026 02:35:36
[2026-06-12 02:35:36,315.315 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 02:35:36,321.321 INFO    ] Checking for existing commands in stream...
[2026-06-12 02:35:36,389.389 INFO    ] No existing commands found in stream
[2026-06-12 02:35:41,422.422 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 02:35:41,424.424 INFO    ] Waiting 2.12 seconds before fallback handling...
[2026-06-12 02:35:43,915.915 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 02:35:43,917.917 INFO    ] Checking for system updates...
[2026-06-12 02:35:43,938.938 INFO    ] 200
[2026-06-12 02:35:43,939.939 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:35:43,969.969 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 02:35:43,971.971 INFO    ] No update needed
[2026-06-12 02:35:43,972.972 INFO    ] Checking for camera pi updates...
[2026-06-12 02:35:43,993.993 INFO    ] 200
[2026-06-12 02:35:43,994.994 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:35:44,017.017 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 02:35:44,060.060 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 02:35:44,061.061 INFO    ] No camera update needed
[2026-06-12 02:35:44,062.062 INFO    ] Script finished. Safe exiting...
[2026-06-12 02:35:44,064.064 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 02:35:44,067.067 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 02:35:44,069.069 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 02:35:46,108.108 INFO    ] ================================================
[2026-06-12 02:35:46,123.123 INFO    ] Launching Daemon at Fri Jun 12 02:35:46 IST 2026
[2026-06-12 02:35:46,134.134 INFO    ] ================================================
[2026-06-12 02:35:46,469.469 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 02:35:46
[2026-06-12 02:35:46,786.786 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 02:35:46,929.929 INFO    ] Initializing speech engine...
[2026-06-12 02:35:46,934.934 INFO    ] 2026-06-12 02:35:46
[2026-06-12 02:35:47,139.139 INFO    ] 2026-06-12 02:35:47
[2026-06-12 02:35:47,167.167 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 02:35:47,353.353 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 02:35:47,362.362 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 02:35:47,497.497 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 02:35:47,559.559 INFO    ] time= 12/06/2026 02:35:47
[2026-06-12 02:35:47,583.583 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 02:35:47,585.585 INFO    ] Checking for existing commands in stream...
[2026-06-12 02:35:47,656.656 INFO    ] No existing commands found in stream
[2026-06-12 02:35:52,665.665 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 02:35:52,668.668 INFO    ] Waiting 2.04 seconds before fallback handling...
[2026-06-12 02:35:55,086.086 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 02:35:55,088.088 INFO    ] Checking for system updates...
[2026-06-12 02:35:55,114.114 INFO    ] 200
[2026-06-12 02:35:55,115.115 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:35:55,147.147 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 02:35:55,149.149 INFO    ] No update needed
[2026-06-12 02:35:55,150.150 INFO    ] Checking for camera pi updates...
[2026-06-12 02:35:55,170.170 INFO    ] 200
[2026-06-12 02:35:55,172.172 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:35:55,195.195 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 02:35:55,236.236 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 02:35:55,237.237 INFO    ] No camera update needed
[2026-06-12 02:35:55,239.239 INFO    ] Script finished. Safe exiting...
[2026-06-12 02:35:55,240.240 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 02:35:55,243.243 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 02:35:55,246.246 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 02:35:57,287.287 INFO    ] ================================================
[2026-06-12 02:35:57,302.302 INFO    ] Launching Daemon at Fri Jun 12 02:35:57 IST 2026
[2026-06-12 02:35:57,314.314 INFO    ] ================================================
[2026-06-12 02:35:57,642.642 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 02:35:57
[2026-06-12 02:35:57,953.953 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 02:35:58,095.095 INFO    ] Initializing speech engine...
[2026-06-12 02:35:58,100.100 INFO    ] 2026-06-12 02:35:58
[2026-06-12 02:35:58,304.304 INFO    ] 2026-06-12 02:35:58
[2026-06-12 02:35:58,332.332 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 02:35:58,515.515 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 02:35:58,518.518 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 02:35:58,676.676 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 02:35:58,730.730 INFO    ] time= 12/06/2026 02:35:58
[2026-06-12 02:35:58,746.746 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 02:35:58,752.752 INFO    ] Checking for existing commands in stream...
[2026-06-12 02:35:58,818.818 INFO    ] No existing commands found in stream
[2026-06-12 02:36:03,827.827 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 02:36:03,830.830 INFO    ] Waiting 3.84 seconds before fallback handling...
[2026-06-12 02:36:08,047.047 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 02:36:08,048.048 INFO    ] Checking for system updates...
[2026-06-12 02:36:08,068.068 INFO    ] 200
[2026-06-12 02:36:08,070.070 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:36:08,103.103 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 02:36:08,104.104 INFO    ] No update needed
[2026-06-12 02:36:08,106.106 INFO    ] Checking for camera pi updates...
[2026-06-12 02:36:08,125.125 INFO    ] 200
[2026-06-12 02:36:08,126.126 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:36:08,151.151 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 02:36:08,199.199 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 02:36:08,200.200 INFO    ] No camera update needed
[2026-06-12 02:36:08,202.202 INFO    ] Script finished. Safe exiting...
[2026-06-12 02:36:08,203.203 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 02:36:08,206.206 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 02:36:08,208.208 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 02:36:10,248.248 INFO    ] ================================================
[2026-06-12 02:36:10,264.264 INFO    ] Launching Daemon at Fri Jun 12 02:36:10 IST 2026
[2026-06-12 02:36:10,275.275 INFO    ] ================================================
[2026-06-12 02:36:10,653.653 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 02:36:10
[2026-06-12 02:36:10,989.989 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 02:36:11,140.140 INFO    ] Initializing speech engine...
[2026-06-12 02:36:11,146.146 INFO    ] 2026-06-12 02:36:11
[2026-06-12 02:36:11,353.353 INFO    ] 2026-06-12 02:36:11
[2026-06-12 02:36:11,383.383 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 02:36:11,564.564 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 02:36:11,572.572 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 02:36:11,714.714 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 02:36:11,775.775 INFO    ] time= 12/06/2026 02:36:11
[2026-06-12 02:36:11,799.799 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 02:36:11,806.806 INFO    ] Checking for existing commands in stream...
[2026-06-12 02:36:11,873.873 INFO    ] No existing commands found in stream
[2026-06-12 02:36:16,898.898 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 02:36:16,901.901 INFO    ] Waiting 1.70 seconds before fallback handling...
[2026-06-12 02:36:18,994.994 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 02:36:18,995.995 INFO    ] Checking for system updates...
[2026-06-12 02:36:19,016.016 INFO    ] 200
[2026-06-12 02:36:19,018.018 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:36:19,052.052 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 02:36:19,053.053 INFO    ] No update needed
[2026-06-12 02:36:19,055.055 INFO    ] Checking for camera pi updates...
[2026-06-12 02:36:19,075.075 INFO    ] 200
[2026-06-12 02:36:19,076.076 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:36:19,101.101 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 02:36:19,143.143 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 02:36:19,145.145 INFO    ] No camera update needed
[2026-06-12 02:36:19,146.146 INFO    ] Script finished. Safe exiting...
[2026-06-12 02:36:19,148.148 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 02:36:19,151.151 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 02:36:19,154.154 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 02:36:21,194.194 INFO    ] ================================================
[2026-06-12 02:36:21,210.210 INFO    ] Launching Daemon at Fri Jun 12 02:36:21 IST 2026
[2026-06-12 02:36:21,222.222 INFO    ] ================================================
[2026-06-12 02:36:21,547.547 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 02:36:21
[2026-06-12 02:36:21,865.865 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 02:36:22,009.009 INFO    ] Initializing speech engine...
[2026-06-12 02:36:22,014.014 INFO    ] 2026-06-12 02:36:22
[2026-06-12 02:36:22,218.218 INFO    ] 2026-06-12 02:36:22
[2026-06-12 02:36:22,248.248 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 02:36:22,371.371 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 02:36:22,434.434 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 02:36:22,571.571 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 02:36:22,635.635 INFO    ] time= 12/06/2026 02:36:22
[2026-06-12 02:36:22,662.662 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 02:36:22,669.669 INFO    ] Checking for existing commands in stream...
[2026-06-12 02:36:22,736.736 INFO    ] No existing commands found in stream
[2026-06-12 02:36:27,749.749 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 02:36:27,750.750 INFO    ] Waiting 3.13 seconds before fallback handling...
[2026-06-12 02:36:31,264.264 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 02:36:31,265.265 INFO    ] Checking for system updates...
[2026-06-12 02:36:31,292.292 INFO    ] 200
[2026-06-12 02:36:31,293.293 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:36:31,331.331 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 02:36:31,333.333 INFO    ] No update needed
[2026-06-12 02:36:31,335.335 INFO    ] Checking for camera pi updates...
[2026-06-12 02:36:31,356.356 INFO    ] 200
[2026-06-12 02:36:31,358.358 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:36:31,385.385 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 02:36:31,426.426 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 02:36:31,428.428 INFO    ] No camera update needed
[2026-06-12 02:36:31,429.429 INFO    ] Script finished. Safe exiting...
[2026-06-12 02:36:31,431.431 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 02:36:31,434.434 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 02:36:31,438.438 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 02:36:33,472.472 INFO    ] ================================================
[2026-06-12 02:36:33,487.487 INFO    ] Launching Daemon at Fri Jun 12 02:36:33 IST 2026
[2026-06-12 02:36:33,498.498 INFO    ] ================================================
[2026-06-12 02:36:33,868.868 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 02:36:33
[2026-06-12 02:36:34,205.205 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 02:36:34,356.356 INFO    ] Initializing speech engine...
[2026-06-12 02:36:34,362.362 INFO    ] 2026-06-12 02:36:34
[2026-06-12 02:36:34,569.569 INFO    ] 2026-06-12 02:36:34
[2026-06-12 02:36:34,597.597 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 02:36:34,785.785 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 02:36:34,795.795 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 02:36:34,926.926 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 02:36:34,991.991 INFO    ] time= 12/06/2026 02:36:34
[2026-06-12 02:36:35,033.033 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 02:36:35,042.042 INFO    ] Checking for existing commands in stream...
[2026-06-12 02:36:35,142.142 INFO    ] No existing commands found in stream
[2026-06-12 02:36:40,153.153 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 02:36:40,156.156 INFO    ] Waiting 2.01 seconds before fallback handling...
[2026-06-12 02:36:42,538.538 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 02:36:42,540.540 INFO    ] Checking for system updates...
[2026-06-12 02:36:42,562.562 INFO    ] 200
[2026-06-12 02:36:42,564.564 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:36:42,597.597 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 02:36:42,599.599 INFO    ] No update needed
[2026-06-12 02:36:42,600.600 INFO    ] Checking for camera pi updates...
[2026-06-12 02:36:42,621.621 INFO    ] 200
[2026-06-12 02:36:42,623.623 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:36:42,650.650 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 02:36:42,788.788 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 02:36:42,790.790 INFO    ] No camera update needed
[2026-06-12 02:36:42,791.791 INFO    ] Script finished. Safe exiting...
[2026-06-12 02:36:42,793.793 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 02:36:42,796.796 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 02:36:42,799.799 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 02:36:44,839.839 INFO    ] ================================================
[2026-06-12 02:36:44,855.855 INFO    ] Launching Daemon at Fri Jun 12 02:36:44 IST 2026
[2026-06-12 02:36:44,867.867 INFO    ] ================================================
[2026-06-12 02:36:45,198.198 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 02:36:45
[2026-06-12 02:36:45,517.517 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 02:36:45,656.656 INFO    ] Initializing speech engine...
[2026-06-12 02:36:45,666.666 INFO    ] 2026-06-12 02:36:45
[2026-06-12 02:36:45,871.871 INFO    ] 2026-06-12 02:36:45
[2026-06-12 02:36:45,900.900 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 02:36:46,085.085 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 02:36:46,094.094 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 02:36:46,223.223 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 02:36:46,290.290 INFO    ] time= 12/06/2026 02:36:46
[2026-06-12 02:36:46,315.315 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 02:36:46,321.321 INFO    ] Checking for existing commands in stream...
[2026-06-12 02:36:46,388.388 INFO    ] No existing commands found in stream
[2026-06-12 02:36:51,421.421 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 02:36:51,424.424 INFO    ] Waiting 1.26 seconds before fallback handling...
[2026-06-12 02:36:53,003.003 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 02:36:53,005.005 INFO    ] Checking for system updates...
[2026-06-12 02:36:53,025.025 INFO    ] 200
[2026-06-12 02:36:53,027.027 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:36:53,057.057 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 02:36:53,059.059 INFO    ] No update needed
[2026-06-12 02:36:53,060.060 INFO    ] Checking for camera pi updates...
[2026-06-12 02:36:53,084.084 INFO    ] 200
[2026-06-12 02:36:53,085.085 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:36:53,108.108 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 02:36:53,147.147 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 02:36:53,148.148 INFO    ] No camera update needed
[2026-06-12 02:36:53,149.149 INFO    ] Script finished. Safe exiting...
[2026-06-12 02:36:53,151.151 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 02:36:53,154.154 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 02:36:53,157.157 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 02:36:55,196.196 INFO    ] ================================================
[2026-06-12 02:36:55,213.213 INFO    ] Launching Daemon at Fri Jun 12 02:36:55 IST 2026
[2026-06-12 02:36:55,224.224 INFO    ] ================================================
[2026-06-12 02:36:55,597.597 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 02:36:55
[2026-06-12 02:36:55,936.936 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 02:36:56,077.077 INFO    ] Initializing speech engine...
[2026-06-12 02:36:56,089.089 INFO    ] 2026-06-12 02:36:56
[2026-06-12 02:36:56,304.304 INFO    ] 2026-06-12 02:36:56
[2026-06-12 02:36:56,333.333 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 02:36:56,503.503 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 02:36:56,523.523 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 02:36:56,683.683 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 02:36:56,733.733 INFO    ] time= 12/06/2026 02:36:56
[2026-06-12 02:36:56,755.755 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 02:36:56,761.761 INFO    ] Checking for existing commands in stream...
[2026-06-12 02:36:56,829.829 INFO    ] No existing commands found in stream
[2026-06-12 02:37:01,842.842 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 02:37:01,844.844 INFO    ] Waiting 3.91 seconds before fallback handling...
[2026-06-12 02:37:06,177.177 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 02:37:06,178.178 INFO    ] Checking for system updates...
[2026-06-12 02:37:06,199.199 INFO    ] 200
[2026-06-12 02:37:06,201.201 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:37:06,232.232 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 02:37:06,233.233 INFO    ] No update needed
[2026-06-12 02:37:06,235.235 INFO    ] Checking for camera pi updates...
[2026-06-12 02:37:06,256.256 INFO    ] 200
[2026-06-12 02:37:06,257.257 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:37:06,283.283 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 02:37:06,322.322 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 02:37:06,324.324 INFO    ] No camera update needed
[2026-06-12 02:37:06,325.325 INFO    ] Script finished. Safe exiting...
[2026-06-12 02:37:06,327.327 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 02:37:06,330.330 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 02:37:06,333.333 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 02:37:08,373.373 INFO    ] ================================================
[2026-06-12 02:37:08,390.390 INFO    ] Launching Daemon at Fri Jun 12 02:37:08 IST 2026
[2026-06-12 02:37:08,402.402 INFO    ] ================================================
[2026-06-12 02:37:08,768.768 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 02:37:08
[2026-06-12 02:37:09,083.083 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 02:37:09,230.230 INFO    ] Initializing speech engine...
[2026-06-12 02:37:09,235.235 INFO    ] 2026-06-12 02:37:09
[2026-06-12 02:37:09,438.438 INFO    ] 2026-06-12 02:37:09
[2026-06-12 02:37:09,466.466 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 02:37:09,652.652 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 02:37:09,662.662 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 02:37:09,807.807 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 02:37:09,859.859 INFO    ] time= 12/06/2026 02:37:09
[2026-06-12 02:37:09,881.881 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 02:37:09,888.888 INFO    ] Checking for existing commands in stream...
[2026-06-12 02:37:09,954.954 INFO    ] No existing commands found in stream
[2026-06-12 02:37:14,963.963 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 02:37:14,966.966 INFO    ] Waiting 0.22 seconds before fallback handling...
[2026-06-12 02:37:15,565.565 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 02:37:15,567.567 INFO    ] Checking for system updates...
[2026-06-12 02:37:15,590.590 INFO    ] 200
[2026-06-12 02:37:15,591.591 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:37:15,630.630 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 02:37:15,632.632 INFO    ] No update needed
[2026-06-12 02:37:15,633.633 INFO    ] Checking for camera pi updates...
[2026-06-12 02:37:15,653.653 INFO    ] 200
[2026-06-12 02:37:15,655.655 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:37:15,683.683 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 02:37:15,725.725 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 02:37:15,726.726 INFO    ] No camera update needed
[2026-06-12 02:37:15,727.727 INFO    ] Script finished. Safe exiting...
[2026-06-12 02:37:15,729.729 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 02:37:15,732.732 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 02:37:15,734.734 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 02:37:17,773.773 INFO    ] ================================================
[2026-06-12 02:37:17,788.788 INFO    ] Launching Daemon at Fri Jun 12 02:37:17 IST 2026
[2026-06-12 02:37:17,799.799 INFO    ] ================================================
[2026-06-12 02:37:18,152.152 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 02:37:18
[2026-06-12 02:37:18,462.462 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 02:37:18,592.592 INFO    ] Initializing speech engine...
[2026-06-12 02:37:18,600.600 INFO    ] 2026-06-12 02:37:18
[2026-06-12 02:37:18,811.811 INFO    ] 2026-06-12 02:37:18
[2026-06-12 02:37:18,839.839 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 02:37:19,023.023 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 02:37:19,031.031 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 02:37:19,186.186 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 02:37:19,236.236 INFO    ] time= 12/06/2026 02:37:19
[2026-06-12 02:37:19,251.251 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 02:37:19,257.257 INFO    ] Checking for existing commands in stream...
[2026-06-12 02:37:19,324.324 INFO    ] No existing commands found in stream
[2026-06-12 02:37:24,333.333 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 02:37:24,336.336 INFO    ] Waiting 0.32 seconds before fallback handling...
[2026-06-12 02:37:24,975.975 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 02:37:24,977.977 INFO    ] Checking for system updates...
[2026-06-12 02:37:24,998.998 INFO    ] 200
[2026-06-12 02:37:24,999.999 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:37:25,032.032 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 02:37:25,033.033 INFO    ] No update needed
[2026-06-12 02:37:25,034.034 INFO    ] Checking for camera pi updates...
[2026-06-12 02:37:25,055.055 INFO    ] 200
[2026-06-12 02:37:25,056.056 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:37:25,080.080 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 02:37:25,132.132 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 02:37:25,133.133 INFO    ] No camera update needed
[2026-06-12 02:37:25,135.135 INFO    ] Script finished. Safe exiting...
[2026-06-12 02:37:25,136.136 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 02:37:25,139.139 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 02:37:25,142.142 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 02:37:27,172.172 INFO    ] ================================================
[2026-06-12 02:37:27,181.181 INFO    ] Launching Daemon at Fri Jun 12 02:37:27 IST 2026
[2026-06-12 02:37:27,188.188 INFO    ] ================================================
[2026-06-12 02:37:27,557.557 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 02:37:27
[2026-06-12 02:37:27,872.872 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 02:37:28,003.003 INFO    ] Initializing speech engine...
[2026-06-12 02:37:28,010.010 INFO    ] 2026-06-12 02:37:28
[2026-06-12 02:37:28,221.221 INFO    ] 2026-06-12 02:37:28
[2026-06-12 02:37:28,249.249 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 02:37:28,432.432 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 02:37:28,442.442 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 02:37:28,570.570 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 02:37:28,637.637 INFO    ] time= 12/06/2026 02:37:28
[2026-06-12 02:37:28,661.661 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 02:37:28,667.667 INFO    ] Checking for existing commands in stream...
[2026-06-12 02:37:28,733.733 INFO    ] No existing commands found in stream
[2026-06-12 02:37:33,742.742 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 02:37:33,745.745 INFO    ] Waiting 3.81 seconds before fallback handling...
[2026-06-12 02:37:37,941.941 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 02:37:37,943.943 INFO    ] Checking for system updates...
[2026-06-12 02:37:37,964.964 INFO    ] 200
[2026-06-12 02:37:37,965.965 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:37:37,998.998 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 02:37:37,999.999 INFO    ] No update needed
[2026-06-12 02:37:38,001.001 INFO    ] Checking for camera pi updates...
[2026-06-12 02:37:38,021.021 INFO    ] 200
[2026-06-12 02:37:38,023.023 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:37:38,047.047 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 02:37:38,091.091 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 02:37:38,092.092 INFO    ] No camera update needed
[2026-06-12 02:37:38,093.093 INFO    ] Script finished. Safe exiting...
[2026-06-12 02:37:38,095.095 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 02:37:38,098.098 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 02:37:38,100.100 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 02:37:40,139.139 INFO    ] ================================================
[2026-06-12 02:37:40,155.155 INFO    ] Launching Daemon at Fri Jun 12 02:37:40 IST 2026
[2026-06-12 02:37:40,165.165 INFO    ] ================================================
[2026-06-12 02:37:40,508.508 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 02:37:40
[2026-06-12 02:37:40,844.844 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 02:37:40,998.998 INFO    ] Initializing speech engine...
[2026-06-12 02:37:41,003.003 INFO    ] 2026-06-12 02:37:41
[2026-06-12 02:37:41,212.212 INFO    ] 2026-06-12 02:37:41
[2026-06-12 02:37:41,242.242 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 02:37:41,428.428 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 02:37:41,438.438 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 02:37:41,581.581 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 02:37:41,640.640 INFO    ] time= 12/06/2026 02:37:41
[2026-06-12 02:37:41,664.664 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 02:37:41,671.671 INFO    ] Checking for existing commands in stream...
[2026-06-12 02:37:41,739.739 INFO    ] No existing commands found in stream
[2026-06-12 02:37:46,754.754 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 02:37:46,757.757 INFO    ] Waiting 2.85 seconds before fallback handling...
[2026-06-12 02:37:49,983.983 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 02:37:49,985.985 INFO    ] Checking for system updates...
[2026-06-12 02:37:50,008.008 INFO    ] 200
[2026-06-12 02:37:50,009.009 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:37:50,045.045 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 02:37:50,047.047 INFO    ] No update needed
[2026-06-12 02:37:50,048.048 INFO    ] Checking for camera pi updates...
[2026-06-12 02:37:50,072.072 INFO    ] 200
[2026-06-12 02:37:50,073.073 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:37:50,097.097 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 02:37:50,143.143 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 02:37:50,144.144 INFO    ] No camera update needed
[2026-06-12 02:37:50,146.146 INFO    ] Script finished. Safe exiting...
[2026-06-12 02:37:50,147.147 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 02:37:50,150.150 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 02:37:50,153.153 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 02:37:52,192.192 INFO    ] ================================================
[2026-06-12 02:37:52,208.208 INFO    ] Launching Daemon at Fri Jun 12 02:37:52 IST 2026
[2026-06-12 02:37:52,219.219 INFO    ] ================================================
[2026-06-12 02:37:52,571.571 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 02:37:52
[2026-06-12 02:37:52,911.911 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 02:37:53,057.057 INFO    ] Initializing speech engine...
[2026-06-12 02:37:53,067.067 INFO    ] 2026-06-12 02:37:53
[2026-06-12 02:37:53,279.279 INFO    ] 2026-06-12 02:37:53
[2026-06-12 02:37:53,308.308 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 02:37:53,495.495 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 02:37:53,504.504 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 02:37:53,637.637 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 02:37:53,701.701 INFO    ] time= 12/06/2026 02:37:53
[2026-06-12 02:37:53,730.730 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 02:37:53,737.737 INFO    ] Checking for existing commands in stream...
[2026-06-12 02:37:53,805.805 INFO    ] No existing commands found in stream
[2026-06-12 02:37:58,819.819 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 02:37:58,823.823 INFO    ] Waiting 1.64 seconds before fallback handling...
[2026-06-12 02:38:00,843.843 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 02:38:00,845.845 INFO    ] Checking for system updates...
[2026-06-12 02:38:00,867.867 INFO    ] 200
[2026-06-12 02:38:00,868.868 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:38:00,899.899 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 02:38:00,901.901 INFO    ] No update needed
[2026-06-12 02:38:00,902.902 INFO    ] Checking for camera pi updates...
[2026-06-12 02:38:00,925.925 INFO    ] 200
[2026-06-12 02:38:00,927.927 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:38:00,952.952 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 02:38:00,998.998 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 02:38:00,999.999 INFO    ] No camera update needed
[2026-06-12 02:38:01,001.001 INFO    ] Script finished. Safe exiting...
[2026-06-12 02:38:01,002.002 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 02:38:01,005.005 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 02:38:01,008.008 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 02:38:03,033.033 INFO    ] ================================================
[2026-06-12 02:38:03,042.042 INFO    ] Launching Daemon at Fri Jun 12 02:38:03 IST 2026
[2026-06-12 02:38:03,048.048 INFO    ] ================================================
[2026-06-12 02:38:03,426.426 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 02:38:03
[2026-06-12 02:38:03,758.758 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 02:38:03,908.908 INFO    ] Initializing speech engine...
[2026-06-12 02:38:03,913.913 INFO    ] 2026-06-12 02:38:03
[2026-06-12 02:38:04,121.121 INFO    ] 2026-06-12 02:38:04
[2026-06-12 02:38:04,149.149 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 02:38:04,335.335 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 02:38:04,347.347 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 02:38:04,495.495 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 02:38:04,545.545 INFO    ] time= 12/06/2026 02:38:04
[2026-06-12 02:38:04,570.570 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 02:38:04,572.572 INFO    ] Checking for existing commands in stream...
[2026-06-12 02:38:04,640.640 INFO    ] No existing commands found in stream
[2026-06-12 02:38:09,651.651 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 02:38:09,653.653 INFO    ] Waiting 2.18 seconds before fallback handling...
[2026-06-12 02:38:12,224.224 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 02:38:12,225.225 INFO    ] Checking for system updates...
[2026-06-12 02:38:12,247.247 INFO    ] 200
[2026-06-12 02:38:12,249.249 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:38:12,282.282 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 02:38:12,283.283 INFO    ] No update needed
[2026-06-12 02:38:12,285.285 INFO    ] Checking for camera pi updates...
[2026-06-12 02:38:12,305.305 INFO    ] 200
[2026-06-12 02:38:12,307.307 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:38:12,334.334 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 02:38:12,362.362 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 02:38:12,364.364 INFO    ] No camera update needed
[2026-06-12 02:38:12,365.365 INFO    ] Script finished. Safe exiting...
[2026-06-12 02:38:12,366.366 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 02:38:12,370.370 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 02:38:12,373.373 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 02:38:14,413.413 INFO    ] ================================================
[2026-06-12 02:38:14,428.428 INFO    ] Launching Daemon at Fri Jun 12 02:38:14 IST 2026
[2026-06-12 02:38:14,439.439 INFO    ] ================================================
[2026-06-12 02:38:14,806.806 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 02:38:14
[2026-06-12 02:38:15,116.116 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 02:38:15,258.258 INFO    ] Initializing speech engine...
[2026-06-12 02:38:15,263.263 INFO    ] 2026-06-12 02:38:15
[2026-06-12 02:38:15,468.468 INFO    ] 2026-06-12 02:38:15
[2026-06-12 02:38:15,497.497 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 02:38:15,681.681 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 02:38:15,685.685 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 02:38:15,823.823 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 02:38:15,891.891 INFO    ] time= 12/06/2026 02:38:15
[2026-06-12 02:38:15,914.914 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 02:38:15,921.921 INFO    ] Checking for existing commands in stream...
[2026-06-12 02:38:15,986.986 INFO    ] No existing commands found in stream
[2026-06-12 02:38:20,997.997 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 02:38:20,999.999 INFO    ] Waiting 3.41 seconds before fallback handling...
[2026-06-12 02:38:24,783.783 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 02:38:24,785.785 INFO    ] Checking for system updates...
[2026-06-12 02:38:24,809.809 INFO    ] 200
[2026-06-12 02:38:24,810.810 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:38:24,843.843 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 02:38:24,844.844 INFO    ] No update needed
[2026-06-12 02:38:24,845.845 INFO    ] Checking for camera pi updates...
[2026-06-12 02:38:24,866.866 INFO    ] 200
[2026-06-12 02:38:24,867.867 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:38:24,892.892 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 02:38:24,933.933 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 02:38:24,935.935 INFO    ] No camera update needed
[2026-06-12 02:38:24,936.936 INFO    ] Script finished. Safe exiting...
[2026-06-12 02:38:24,937.937 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 02:38:24,940.940 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 02:38:24,943.943 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 02:38:26,982.982 INFO    ] ================================================
[2026-06-12 02:38:27,997.997 INFO    ] Launching Daemon at Fri Jun 12 02:38:26 IST 2026
[2026-06-12 02:38:27,008.008 INFO    ] ================================================
[2026-06-12 02:38:27,342.342 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 02:38:27
[2026-06-12 02:38:27,656.656 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 02:38:27,800.800 INFO    ] Initializing speech engine...
[2026-06-12 02:38:27,805.805 INFO    ] 2026-06-12 02:38:27
[2026-06-12 02:38:28,008.008 INFO    ] 2026-06-12 02:38:27
[2026-06-12 02:38:28,036.036 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 02:38:28,219.219 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 02:38:28,228.228 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 02:38:28,368.368 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 02:38:28,424.424 INFO    ] time= 12/06/2026 02:38:28
[2026-06-12 02:38:28,448.448 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 02:38:28,454.454 INFO    ] Checking for existing commands in stream...
[2026-06-12 02:38:28,521.521 INFO    ] No existing commands found in stream
[2026-06-12 02:38:33,535.535 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 02:38:33,538.538 INFO    ] Waiting 3.89 seconds before fallback handling...
[2026-06-12 02:38:37,837.837 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 02:38:37,839.839 INFO    ] Checking for system updates...
[2026-06-12 02:38:37,863.863 INFO    ] 200
[2026-06-12 02:38:37,864.864 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:38:37,899.899 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 02:38:37,900.900 INFO    ] No update needed
[2026-06-12 02:38:37,902.902 INFO    ] Checking for camera pi updates...
[2026-06-12 02:38:37,922.922 INFO    ] 200
[2026-06-12 02:38:37,923.923 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:38:37,948.948 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 02:38:37,993.993 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 02:38:37,994.994 INFO    ] No camera update needed
[2026-06-12 02:38:37,996.996 INFO    ] Script finished. Safe exiting...
[2026-06-12 02:38:37,997.997 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 02:38:38,000.000 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 02:38:38,003.003 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 02:38:40,042.042 INFO    ] ================================================
[2026-06-12 02:38:40,057.057 INFO    ] Launching Daemon at Fri Jun 12 02:38:40 IST 2026
[2026-06-12 02:38:40,068.068 INFO    ] ================================================
[2026-06-12 02:38:40,425.425 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 02:38:40
[2026-06-12 02:38:40,737.737 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 02:38:40,881.881 INFO    ] Initializing speech engine...
[2026-06-12 02:38:40,885.885 INFO    ] 2026-06-12 02:38:40
[2026-06-12 02:38:41,086.086 INFO    ] 2026-06-12 02:38:41
[2026-06-12 02:38:41,114.114 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 02:38:41,297.297 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 02:38:41,307.307 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 02:38:41,433.433 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 02:38:41,497.497 INFO    ] time= 12/06/2026 02:38:41
[2026-06-12 02:38:41,524.524 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 02:38:41,530.530 INFO    ] Checking for existing commands in stream...
[2026-06-12 02:38:41,597.597 INFO    ] No existing commands found in stream
[2026-06-12 02:38:46,629.629 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 02:38:46,632.632 INFO    ] Waiting 1.47 seconds before fallback handling...
[2026-06-12 02:38:48,471.471 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 02:38:48,472.472 INFO    ] Checking for system updates...
[2026-06-12 02:38:48,493.493 INFO    ] 200
[2026-06-12 02:38:48,495.495 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:38:48,527.527 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 02:38:48,529.529 INFO    ] No update needed
[2026-06-12 02:38:48,530.530 INFO    ] Checking for camera pi updates...
[2026-06-12 02:38:48,552.552 INFO    ] 200
[2026-06-12 02:38:48,554.554 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:38:48,577.577 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 02:38:48,705.705 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 02:38:48,706.706 INFO    ] No camera update needed
[2026-06-12 02:38:48,708.708 INFO    ] Script finished. Safe exiting...
[2026-06-12 02:38:48,709.709 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 02:38:48,712.712 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 02:38:48,715.715 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 02:38:50,755.755 INFO    ] ================================================
[2026-06-12 02:38:50,771.771 INFO    ] Launching Daemon at Fri Jun 12 02:38:50 IST 2026
[2026-06-12 02:38:50,782.782 INFO    ] ================================================
[2026-06-12 02:38:51,138.138 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 02:38:51
[2026-06-12 02:38:51,449.449 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 02:38:51,586.586 INFO    ] Initializing speech engine...
[2026-06-12 02:38:51,596.596 INFO    ] 2026-06-12 02:38:51
[2026-06-12 02:38:51,802.802 INFO    ] 2026-06-12 02:38:51
[2026-06-12 02:38:51,831.831 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 02:38:52,018.018 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 02:38:52,026.026 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 02:38:52,158.158 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 02:38:52,226.226 INFO    ] time= 12/06/2026 02:38:52
[2026-06-12 02:38:52,250.250 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 02:38:52,256.256 INFO    ] Checking for existing commands in stream...
[2026-06-12 02:38:52,348.348 INFO    ] No existing commands found in stream
[2026-06-12 02:38:57,357.357 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 02:38:57,360.360 INFO    ] Waiting 1.66 seconds before fallback handling...
[2026-06-12 02:38:59,401.401 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 02:38:59,402.402 INFO    ] Checking for system updates...
[2026-06-12 02:38:59,423.423 INFO    ] 200
[2026-06-12 02:38:59,424.424 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:38:59,455.455 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 02:38:59,456.456 INFO    ] No update needed
[2026-06-12 02:38:59,457.457 INFO    ] Checking for camera pi updates...
[2026-06-12 02:38:59,477.477 INFO    ] 200
[2026-06-12 02:38:59,479.479 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:38:59,503.503 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 02:38:59,553.553 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 02:38:59,555.555 INFO    ] No camera update needed
[2026-06-12 02:38:59,556.556 INFO    ] Script finished. Safe exiting...
[2026-06-12 02:38:59,557.557 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 02:38:59,561.561 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 02:38:59,564.564 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 02:39:01,606.606 INFO    ] ================================================
[2026-06-12 02:39:01,621.621 INFO    ] Launching Daemon at Fri Jun 12 02:39:01 IST 2026
[2026-06-12 02:39:01,632.632 INFO    ] ================================================
[2026-06-12 02:39:02,045.045 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 02:39:02
[2026-06-12 02:39:02,424.424 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 02:39:02,583.583 INFO    ] Initializing speech engine...
[2026-06-12 02:39:02,598.598 INFO    ] 2026-06-12 02:39:02
[2026-06-12 02:39:02,823.823 INFO    ] 2026-06-12 02:39:02
[2026-06-12 02:39:02,856.856 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 02:39:03,012.012 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 02:39:03,056.056 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 02:39:03,216.216 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 02:39:03,281.281 INFO    ] time= 12/06/2026 02:39:03
[2026-06-12 02:39:03,308.308 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 02:39:03,315.315 INFO    ] Checking for existing commands in stream...
[2026-06-12 02:39:03,383.383 INFO    ] No existing commands found in stream
[2026-06-12 02:39:08,391.391 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 02:39:08,394.394 INFO    ] Waiting 0.46 seconds before fallback handling...
[2026-06-12 02:39:09,199.199 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 02:39:09,200.200 INFO    ] Checking for system updates...
[2026-06-12 02:39:09,222.222 INFO    ] 200
[2026-06-12 02:39:09,223.223 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:39:09,255.255 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 02:39:09,256.256 INFO    ] No update needed
[2026-06-12 02:39:09,258.258 INFO    ] Checking for camera pi updates...
[2026-06-12 02:39:09,278.278 INFO    ] 200
[2026-06-12 02:39:09,279.279 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:39:09,303.303 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 02:39:09,345.345 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 02:39:09,347.347 INFO    ] No camera update needed
[2026-06-12 02:39:09,348.348 INFO    ] Script finished. Safe exiting...
[2026-06-12 02:39:09,349.349 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 02:39:09,352.352 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 02:39:09,355.355 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 02:39:11,394.394 INFO    ] ================================================
[2026-06-12 02:39:11,409.409 INFO    ] Launching Daemon at Fri Jun 12 02:39:11 IST 2026
[2026-06-12 02:39:11,420.420 INFO    ] ================================================
[2026-06-12 02:39:11,748.748 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 02:39:11
[2026-06-12 02:39:12,061.061 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 02:39:12,191.191 INFO    ] Initializing speech engine...
[2026-06-12 02:39:12,194.194 INFO    ] 2026-06-12 02:39:12
[2026-06-12 02:39:12,422.422 INFO    ] 2026-06-12 02:39:12
[2026-06-12 02:39:12,452.452 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 02:39:12,647.647 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 02:39:12,657.657 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 02:39:12,787.787 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 02:39:12,848.848 INFO    ] time= 12/06/2026 02:39:12
[2026-06-12 02:39:12,882.882 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 02:39:12,893.893 INFO    ] Checking for existing commands in stream...
[2026-06-12 02:39:12,968.968 INFO    ] No existing commands found in stream
[2026-06-12 02:39:17,978.978 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 02:39:17,981.981 INFO    ] Waiting 0.34 seconds before fallback handling...
[2026-06-12 02:39:18,685.685 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 02:39:18,686.686 INFO    ] Checking for system updates...
[2026-06-12 02:39:18,708.708 INFO    ] 200
[2026-06-12 02:39:18,709.709 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:39:18,740.740 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 02:39:18,742.742 INFO    ] No update needed
[2026-06-12 02:39:18,743.743 INFO    ] Checking for camera pi updates...
[2026-06-12 02:39:18,763.763 INFO    ] 200
[2026-06-12 02:39:18,764.764 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:39:18,787.787 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 02:39:18,831.831 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 02:39:18,833.833 INFO    ] No camera update needed
[2026-06-12 02:39:18,834.834 INFO    ] Script finished. Safe exiting...
[2026-06-12 02:39:18,836.836 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 02:39:18,839.839 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 02:39:18,842.842 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 02:39:20,880.880 INFO    ] ================================================
[2026-06-12 02:39:20,895.895 INFO    ] Launching Daemon at Fri Jun 12 02:39:20 IST 2026
[2026-06-12 02:39:20,906.906 INFO    ] ================================================
[2026-06-12 02:39:21,246.246 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 02:39:21
[2026-06-12 02:39:21,562.562 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 02:39:21,700.700 INFO    ] Initializing speech engine...
[2026-06-12 02:39:21,710.710 INFO    ] 2026-06-12 02:39:21
[2026-06-12 02:39:21,915.915 INFO    ] 2026-06-12 02:39:21
[2026-06-12 02:39:21,943.943 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 02:39:22,127.127 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 02:39:22,136.136 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 02:39:22,265.265 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 02:39:22,331.331 INFO    ] time= 12/06/2026 02:39:22
[2026-06-12 02:39:22,355.355 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 02:39:22,361.361 INFO    ] Checking for existing commands in stream...
[2026-06-12 02:39:22,451.451 INFO    ] No existing commands found in stream
[2026-06-12 02:39:27,460.460 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 02:39:27,463.463 INFO    ] Waiting 2.16 seconds before fallback handling...
[2026-06-12 02:39:30,030.030 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 02:39:30,031.031 INFO    ] Checking for system updates...
[2026-06-12 02:39:30,052.052 INFO    ] 200
[2026-06-12 02:39:30,053.053 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:39:30,083.083 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 02:39:30,085.085 INFO    ] No update needed
[2026-06-12 02:39:30,086.086 INFO    ] Checking for camera pi updates...
[2026-06-12 02:39:30,106.106 INFO    ] 200
[2026-06-12 02:39:30,107.107 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:39:30,132.132 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 02:39:30,177.177 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 02:39:30,179.179 INFO    ] No camera update needed
[2026-06-12 02:39:30,180.180 INFO    ] Script finished. Safe exiting...
[2026-06-12 02:39:30,181.181 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 02:39:30,184.184 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 02:39:30,187.187 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 02:39:32,218.218 INFO    ] ================================================
[2026-06-12 02:39:32,227.227 INFO    ] Launching Daemon at Fri Jun 12 02:39:32 IST 2026
[2026-06-12 02:39:32,234.234 INFO    ] ================================================
[2026-06-12 02:39:32,558.558 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 02:39:32
[2026-06-12 02:39:32,884.884 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 02:39:33,014.014 INFO    ] Initializing speech engine...
[2026-06-12 02:39:33,022.022 INFO    ] 2026-06-12 02:39:33
[2026-06-12 02:39:33,232.232 INFO    ] 2026-06-12 02:39:33
[2026-06-12 02:39:33,262.262 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 02:39:33,447.447 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 02:39:33,457.457 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 02:39:33,596.596 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 02:39:33,653.653 INFO    ] time= 12/06/2026 02:39:33
[2026-06-12 02:39:33,676.676 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 02:39:33,682.682 INFO    ] Checking for existing commands in stream...
[2026-06-12 02:39:33,749.749 INFO    ] No existing commands found in stream
[2026-06-12 02:39:38,763.763 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 02:39:38,766.766 INFO    ] Waiting 3.39 seconds before fallback handling...
[2026-06-12 02:39:42,564.564 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 02:39:42,565.565 INFO    ] Checking for system updates...
[2026-06-12 02:39:42,586.586 INFO    ] 200
[2026-06-12 02:39:42,588.588 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:39:42,619.619 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 02:39:42,621.621 INFO    ] No update needed
[2026-06-12 02:39:42,622.622 INFO    ] Checking for camera pi updates...
[2026-06-12 02:39:42,642.642 INFO    ] 200
[2026-06-12 02:39:42,643.643 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:39:42,666.666 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 02:39:42,707.707 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 02:39:42,708.708 INFO    ] No camera update needed
[2026-06-12 02:39:42,709.709 INFO    ] Script finished. Safe exiting...
[2026-06-12 02:39:42,710.710 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 02:39:42,713.713 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 02:39:42,716.716 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 02:39:44,754.754 INFO    ] ================================================
[2026-06-12 02:39:44,769.769 INFO    ] Launching Daemon at Fri Jun 12 02:39:44 IST 2026
[2026-06-12 02:39:44,780.780 INFO    ] ================================================
[2026-06-12 02:39:45,141.141 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 02:39:45
[2026-06-12 02:39:45,453.453 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 02:39:45,587.587 INFO    ] Initializing speech engine...
[2026-06-12 02:39:45,590.590 INFO    ] 2026-06-12 02:39:45
[2026-06-12 02:39:45,806.806 INFO    ] 2026-06-12 02:39:45
[2026-06-12 02:39:45,835.835 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 02:39:45,957.957 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 02:39:46,020.020 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 02:39:46,164.164 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 02:39:46,227.227 INFO    ] time= 12/06/2026 02:39:46
[2026-06-12 02:39:46,250.250 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 02:39:46,256.256 INFO    ] Checking for existing commands in stream...
[2026-06-12 02:39:46,346.346 INFO    ] No existing commands found in stream
[2026-06-12 02:39:51,360.360 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 02:39:51,363.363 INFO    ] Waiting 2.66 seconds before fallback handling...
[2026-06-12 02:39:54,408.408 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 02:39:54,410.410 INFO    ] Checking for system updates...
[2026-06-12 02:39:54,431.431 INFO    ] 200
[2026-06-12 02:39:54,433.433 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:39:54,462.462 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 02:39:54,464.464 INFO    ] No update needed
[2026-06-12 02:39:54,465.465 INFO    ] Checking for camera pi updates...
[2026-06-12 02:39:54,486.486 INFO    ] 200
[2026-06-12 02:39:54,488.488 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:39:54,512.512 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 02:39:54,558.558 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 02:39:54,560.560 INFO    ] No camera update needed
[2026-06-12 02:39:54,561.561 INFO    ] Script finished. Safe exiting...
[2026-06-12 02:39:54,562.562 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 02:39:54,565.565 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 02:39:54,568.568 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 02:39:56,606.606 INFO    ] ================================================
[2026-06-12 02:39:56,621.621 INFO    ] Launching Daemon at Fri Jun 12 02:39:56 IST 2026
[2026-06-12 02:39:56,632.632 INFO    ] ================================================
[2026-06-12 02:39:56,960.960 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 02:39:56
[2026-06-12 02:39:57,271.271 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 02:39:57,400.400 INFO    ] Initializing speech engine...
[2026-06-12 02:39:57,404.404 INFO    ] 2026-06-12 02:39:57
[2026-06-12 02:39:57,622.622 INFO    ] 2026-06-12 02:39:57
[2026-06-12 02:39:57,651.651 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 02:39:57,837.837 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 02:39:57,846.846 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 02:39:57,970.970 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 02:39:58,031.031 INFO    ] time= 12/06/2026 02:39:57
[2026-06-12 02:39:58,061.061 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 02:39:58,071.071 INFO    ] Checking for existing commands in stream...
[2026-06-12 02:39:58,167.167 INFO    ] No existing commands found in stream
[2026-06-12 02:40:03,175.175 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 02:40:03,178.178 INFO    ] Waiting 0.72 seconds before fallback handling...
[2026-06-12 02:40:07,899.899 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 02:40:07,901.901 INFO    ] Checking for system updates...
[2026-06-12 02:40:07,937.937 INFO    ] 200
[2026-06-12 02:40:07,940.940 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:40:07,996.996 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 02:40:07,999.999 INFO    ] No update needed
[2026-06-12 02:40:08,001.001 INFO    ] Checking for camera pi updates...
[2026-06-12 02:40:08,030.030 INFO    ] 200
[2026-06-12 02:40:08,032.032 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:40:08,055.055 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 02:40:08,098.098 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 02:40:08,100.100 INFO    ] No camera update needed
[2026-06-12 02:40:08,101.101 INFO    ] Script finished. Safe exiting...
[2026-06-12 02:40:08,102.102 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 02:40:08,105.105 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 02:40:08,108.108 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 02:40:10,147.147 INFO    ] ================================================
[2026-06-12 02:40:10,162.162 INFO    ] Launching Daemon at Fri Jun 12 02:40:10 IST 2026
[2026-06-12 02:40:10,173.173 INFO    ] ================================================
[2026-06-12 02:40:10,523.523 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 02:40:10
[2026-06-12 02:40:10,838.838 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 02:40:10,981.981 INFO    ] Initializing speech engine...
[2026-06-12 02:40:10,987.987 INFO    ] 2026-06-12 02:40:10
[2026-06-12 02:40:11,192.192 INFO    ] 2026-06-12 02:40:11
[2026-06-12 02:40:11,221.221 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 02:40:11,404.404 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 02:40:11,413.413 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 02:40:11,543.543 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 02:40:11,609.609 INFO    ] time= 12/06/2026 02:40:11
[2026-06-12 02:40:11,633.633 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 02:40:11,640.640 INFO    ] Checking for existing commands in stream...
[2026-06-12 02:40:11,706.706 INFO    ] No existing commands found in stream
[2026-06-12 02:40:16,725.725 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 02:40:16,728.728 INFO    ] Waiting 2.53 seconds before fallback handling...
[2026-06-12 02:40:19,629.629 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 02:40:19,631.631 INFO    ] Checking for system updates...
[2026-06-12 02:40:19,652.652 INFO    ] 200
[2026-06-12 02:40:19,653.653 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:40:19,683.683 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 02:40:19,684.684 INFO    ] No update needed
[2026-06-12 02:40:19,685.685 INFO    ] Checking for camera pi updates...
[2026-06-12 02:40:19,706.706 INFO    ] 200
[2026-06-12 02:40:19,707.707 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:40:19,730.730 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 02:40:19,775.775 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 02:40:19,776.776 INFO    ] No camera update needed
[2026-06-12 02:40:19,777.777 INFO    ] Script finished. Safe exiting...
[2026-06-12 02:40:19,778.778 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 02:40:19,782.782 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 02:40:19,784.784 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 02:40:21,824.824 INFO    ] ================================================
[2026-06-12 02:40:21,839.839 INFO    ] Launching Daemon at Fri Jun 12 02:40:21 IST 2026
[2026-06-12 02:40:21,850.850 INFO    ] ================================================
[2026-06-12 02:40:22,176.176 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 02:40:22
[2026-06-12 02:40:22,487.487 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 02:40:22,620.620 INFO    ] Initializing speech engine...
[2026-06-12 02:40:22,625.625 INFO    ] 2026-06-12 02:40:22
[2026-06-12 02:40:22,833.833 INFO    ] 2026-06-12 02:40:22
[2026-06-12 02:40:22,861.861 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 02:40:23,017.017 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 02:40:23,057.057 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 02:40:23,208.208 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 02:40:23,245.245 INFO    ] time= 12/06/2026 02:40:23
[2026-06-12 02:40:23,308.308 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 02:40:23,337.337 INFO    ] Checking for existing commands in stream...
[2026-06-12 02:40:23,441.441 INFO    ] No existing commands found in stream
[2026-06-12 02:40:28,449.449 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 02:40:28,452.452 INFO    ] Waiting 0.45 seconds before fallback handling...
[2026-06-12 02:40:29,289.289 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 02:40:29,291.291 INFO    ] Checking for system updates...
[2026-06-12 02:40:29,313.313 INFO    ] 200
[2026-06-12 02:40:29,314.314 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:40:29,350.350 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 02:40:29,352.352 INFO    ] No update needed
[2026-06-12 02:40:29,353.353 INFO    ] Checking for camera pi updates...
[2026-06-12 02:40:29,375.375 INFO    ] 200
[2026-06-12 02:40:29,377.377 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:40:29,402.402 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 02:40:29,447.447 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 02:40:29,448.448 INFO    ] No camera update needed
[2026-06-12 02:40:29,450.450 INFO    ] Script finished. Safe exiting...
[2026-06-12 02:40:29,451.451 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 02:40:29,455.455 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 02:40:29,458.458 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 02:40:31,490.490 INFO    ] ================================================
[2026-06-12 02:40:31,499.499 INFO    ] Launching Daemon at Fri Jun 12 02:40:31 IST 2026
[2026-06-12 02:40:31,506.506 INFO    ] ================================================
[2026-06-12 02:40:31,838.838 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 02:40:31
[2026-06-12 02:40:32,176.176 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 02:40:32,313.313 INFO    ] Initializing speech engine...
[2026-06-12 02:40:32,322.322 INFO    ] 2026-06-12 02:40:32
[2026-06-12 02:40:32,531.531 INFO    ] 2026-06-12 02:40:32
[2026-06-12 02:40:32,560.560 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 02:40:32,743.743 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 02:40:32,752.752 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 02:40:32,884.884 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 02:40:32,951.951 INFO    ] time= 12/06/2026 02:40:32
[2026-06-12 02:40:32,986.986 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 02:40:32,992.992 INFO    ] Checking for existing commands in stream...
[2026-06-12 02:40:33,068.068 INFO    ] No existing commands found in stream
[2026-06-12 02:40:38,078.078 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 02:40:38,081.081 INFO    ] Waiting 3.22 seconds before fallback handling...
[2026-06-12 02:40:41,678.678 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 02:40:41,679.679 INFO    ] Checking for system updates...
[2026-06-12 02:40:41,700.700 INFO    ] 200
[2026-06-12 02:40:41,702.702 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:40:41,734.734 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 02:40:41,735.735 INFO    ] No update needed
[2026-06-12 02:40:41,737.737 INFO    ] Checking for camera pi updates...
[2026-06-12 02:40:41,757.757 INFO    ] 200
[2026-06-12 02:40:41,758.758 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:40:41,783.783 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 02:40:41,823.823 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 02:40:41,825.825 INFO    ] No camera update needed
[2026-06-12 02:40:41,826.826 INFO    ] Script finished. Safe exiting...
[2026-06-12 02:40:41,827.827 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 02:40:41,830.830 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 02:40:41,833.833 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 02:40:43,873.873 INFO    ] ================================================
[2026-06-12 02:40:43,888.888 INFO    ] Launching Daemon at Fri Jun 12 02:40:43 IST 2026
[2026-06-12 02:40:43,899.899 INFO    ] ================================================
[2026-06-12 02:40:44,255.255 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 02:40:44
[2026-06-12 02:40:44,567.567 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 02:40:44,705.705 INFO    ] Initializing speech engine...
[2026-06-12 02:40:44,716.716 INFO    ] 2026-06-12 02:40:44
[2026-06-12 02:40:44,921.921 INFO    ] 2026-06-12 02:40:44
[2026-06-12 02:40:44,951.951 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 02:40:45,137.137 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 02:40:45,146.146 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 02:40:45,293.293 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 02:40:45,346.346 INFO    ] time= 12/06/2026 02:40:45
[2026-06-12 02:40:45,369.369 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 02:40:45,376.376 INFO    ] Checking for existing commands in stream...
[2026-06-12 02:40:45,443.443 INFO    ] No existing commands found in stream
[2026-06-12 02:40:50,458.458 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 02:40:50,461.461 INFO    ] Waiting 0.21 seconds before fallback handling...
[2026-06-12 02:40:51,019.019 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 02:40:51,020.020 INFO    ] Checking for system updates...
[2026-06-12 02:40:51,042.042 INFO    ] 200
[2026-06-12 02:40:51,043.043 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:40:51,074.074 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 02:40:51,075.075 INFO    ] No update needed
[2026-06-12 02:40:51,077.077 INFO    ] Checking for camera pi updates...
[2026-06-12 02:40:51,096.096 INFO    ] 200
[2026-06-12 02:40:51,097.097 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:40:51,125.125 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 02:40:51,275.275 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 02:40:51,277.277 INFO    ] No camera update needed
[2026-06-12 02:40:51,278.278 INFO    ] Script finished. Safe exiting...
[2026-06-12 02:40:51,279.279 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 02:40:51,282.282 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 02:40:51,285.285 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 02:40:53,323.323 INFO    ] ================================================
[2026-06-12 02:40:53,338.338 INFO    ] Launching Daemon at Fri Jun 12 02:40:53 IST 2026
[2026-06-12 02:40:53,348.348 INFO    ] ================================================
[2026-06-12 02:40:53,711.711 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 02:40:53
[2026-06-12 02:40:54,026.026 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 02:40:54,170.170 INFO    ] Initializing speech engine...
[2026-06-12 02:40:54,175.175 INFO    ] 2026-06-12 02:40:54
[2026-06-12 02:40:54,379.379 INFO    ] 2026-06-12 02:40:54
[2026-06-12 02:40:54,408.408 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 02:40:54,590.590 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 02:40:54,594.594 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 02:40:54,740.740 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 02:40:54,797.797 INFO    ] time= 12/06/2026 02:40:54
[2026-06-12 02:40:54,820.820 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 02:40:54,827.827 INFO    ] Checking for existing commands in stream...
[2026-06-12 02:40:54,893.893 INFO    ] No existing commands found in stream
[2026-06-12 02:40:59,907.907 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 02:40:59,910.910 INFO    ] Waiting 3.32 seconds before fallback handling...
[2026-06-12 02:41:03,596.596 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 02:41:03,598.598 INFO    ] Checking for system updates...
[2026-06-12 02:41:03,623.623 INFO    ] 200
[2026-06-12 02:41:03,624.624 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:41:03,655.655 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 02:41:03,656.656 INFO    ] No update needed
[2026-06-12 02:41:03,658.658 INFO    ] Checking for camera pi updates...
[2026-06-12 02:41:03,677.677 INFO    ] 200
[2026-06-12 02:41:03,679.679 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:41:03,708.708 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 02:41:03,757.757 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 02:41:03,758.758 INFO    ] No camera update needed
[2026-06-12 02:41:03,760.760 INFO    ] Script finished. Safe exiting...
[2026-06-12 02:41:03,761.761 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 02:41:03,764.764 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 02:41:03,767.767 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 02:41:05,804.804 INFO    ] ================================================
[2026-06-12 02:41:05,819.819 INFO    ] Launching Daemon at Fri Jun 12 02:41:05 IST 2026
[2026-06-12 02:41:05,830.830 INFO    ] ================================================
[2026-06-12 02:41:06,189.189 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 02:41:06
[2026-06-12 02:41:06,519.519 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 02:41:06,657.657 INFO    ] Initializing speech engine...
[2026-06-12 02:41:06,667.667 INFO    ] 2026-06-12 02:41:06
[2026-06-12 02:41:06,871.871 INFO    ] 2026-06-12 02:41:06
[2026-06-12 02:41:06,900.900 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 02:41:07,057.057 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 02:41:07,086.086 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 02:41:07,221.221 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 02:41:07,280.280 INFO    ] time= 12/06/2026 02:41:07
[2026-06-12 02:41:07,312.312 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 02:41:07,319.319 INFO    ] Checking for existing commands in stream...
[2026-06-12 02:41:07,386.386 INFO    ] No existing commands found in stream
[2026-06-12 02:41:12,395.395 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 02:41:12,397.397 INFO    ] Waiting 3.76 seconds before fallback handling...
[2026-06-12 02:41:16,538.538 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 02:41:16,540.540 INFO    ] Checking for system updates...
[2026-06-12 02:41:16,562.562 INFO    ] 200
[2026-06-12 02:41:16,563.563 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:41:16,595.595 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 02:41:16,596.596 INFO    ] No update needed
[2026-06-12 02:41:16,598.598 INFO    ] Checking for camera pi updates...
[2026-06-12 02:41:16,617.617 INFO    ] 200
[2026-06-12 02:41:16,619.619 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:41:16,643.643 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 02:41:16,683.683 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 02:41:16,685.685 INFO    ] No camera update needed
[2026-06-12 02:41:16,686.686 INFO    ] Script finished. Safe exiting...
[2026-06-12 02:41:16,687.687 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 02:41:16,690.690 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 02:41:16,693.693 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 02:41:18,730.730 INFO    ] ================================================
[2026-06-12 02:41:18,745.745 INFO    ] Launching Daemon at Fri Jun 12 02:41:18 IST 2026
[2026-06-12 02:41:18,756.756 INFO    ] ================================================
[2026-06-12 02:41:19,098.098 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 02:41:19
[2026-06-12 02:41:19,415.415 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 02:41:19,554.554 INFO    ] Initializing speech engine...
[2026-06-12 02:41:19,565.565 INFO    ] 2026-06-12 02:41:19
[2026-06-12 02:41:19,769.769 INFO    ] 2026-06-12 02:41:19
[2026-06-12 02:41:19,797.797 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 02:41:19,980.980 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 02:41:19,984.984 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 02:41:20,119.119 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 02:41:20,173.173 INFO    ] time= 12/06/2026 02:41:20
[2026-06-12 02:41:20,206.206 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 02:41:20,211.211 INFO    ] Checking for existing commands in stream...
[2026-06-12 02:41:20,282.282 INFO    ] No existing commands found in stream
[2026-06-12 02:41:25,292.292 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 02:41:25,294.294 INFO    ] Waiting 3.57 seconds before fallback handling...
[2026-06-12 02:41:29,256.256 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 02:41:29,258.258 INFO    ] Checking for system updates...
[2026-06-12 02:41:29,279.279 INFO    ] 200
[2026-06-12 02:41:29,281.281 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:41:29,311.311 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 02:41:29,312.312 INFO    ] No update needed
[2026-06-12 02:41:29,314.314 INFO    ] Checking for camera pi updates...
[2026-06-12 02:41:29,335.335 INFO    ] 200
[2026-06-12 02:41:29,336.336 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:41:29,360.360 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 02:41:29,408.408 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 02:41:29,409.409 INFO    ] No camera update needed
[2026-06-12 02:41:29,410.410 INFO    ] Script finished. Safe exiting...
[2026-06-12 02:41:29,412.412 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 02:41:29,415.415 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 02:41:29,417.417 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 02:41:31,459.459 INFO    ] ================================================
[2026-06-12 02:41:31,475.475 INFO    ] Launching Daemon at Fri Jun 12 02:41:31 IST 2026
[2026-06-12 02:41:31,488.488 INFO    ] ================================================
[2026-06-12 02:41:31,841.841 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 02:41:31
[2026-06-12 02:41:32,180.180 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 02:41:32,327.327 INFO    ] Initializing speech engine...
[2026-06-12 02:41:32,336.336 INFO    ] 2026-06-12 02:41:32
[2026-06-12 02:41:32,555.555 INFO    ] 2026-06-12 02:41:32
[2026-06-12 02:41:32,584.584 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 02:41:32,770.770 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 02:41:32,780.780 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 02:41:32,908.908 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 02:41:32,964.964 INFO    ] time= 12/06/2026 02:41:32
[2026-06-12 02:41:32,994.994 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 02:41:33,004.004 INFO    ] Checking for existing commands in stream...
[2026-06-12 02:41:33,076.076 INFO    ] No existing commands found in stream
[2026-06-12 02:41:38,091.091 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 02:41:38,093.093 INFO    ] Waiting 2.50 seconds before fallback handling...
[2026-06-12 02:41:40,947.947 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 02:41:40,948.948 INFO    ] Checking for system updates...
[2026-06-12 02:41:40,971.971 INFO    ] 200
[2026-06-12 02:41:40,972.972 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:41:41,003.003 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 02:41:41,004.004 INFO    ] No update needed
[2026-06-12 02:41:41,005.005 INFO    ] Checking for camera pi updates...
[2026-06-12 02:41:41,029.029 INFO    ] 200
[2026-06-12 02:41:41,030.030 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:41:41,055.055 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 02:41:41,101.101 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 02:41:41,102.102 INFO    ] No camera update needed
[2026-06-12 02:41:41,104.104 INFO    ] Script finished. Safe exiting...
[2026-06-12 02:41:41,105.105 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 02:41:41,108.108 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 02:41:41,110.110 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 02:41:43,149.149 INFO    ] ================================================
[2026-06-12 02:41:43,164.164 INFO    ] Launching Daemon at Fri Jun 12 02:41:43 IST 2026
[2026-06-12 02:41:43,175.175 INFO    ] ================================================
[2026-06-12 02:41:43,529.529 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 02:41:43
[2026-06-12 02:41:43,863.863 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 02:41:44,000.000 INFO    ] Initializing speech engine...
[2026-06-12 02:41:44,009.009 INFO    ] 2026-06-12 02:41:44
[2026-06-12 02:41:44,227.227 INFO    ] 2026-06-12 02:41:44
[2026-06-12 02:41:44,257.257 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 02:41:44,444.444 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 02:41:44,454.454 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 02:41:44,595.595 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 02:41:44,654.654 INFO    ] time= 12/06/2026 02:41:44
[2026-06-12 02:41:44,678.678 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 02:41:44,684.684 INFO    ] Checking for existing commands in stream...
[2026-06-12 02:41:44,750.750 INFO    ] No existing commands found in stream
[2026-06-12 02:41:49,761.761 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 02:41:49,764.764 INFO    ] Waiting 2.57 seconds before fallback handling...
[2026-06-12 02:41:52,698.698 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 02:41:52,700.700 INFO    ] Checking for system updates...
[2026-06-12 02:41:52,722.722 INFO    ] 200
[2026-06-12 02:41:52,723.723 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:41:52,756.756 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 02:41:52,757.757 INFO    ] No update needed
[2026-06-12 02:41:52,758.758 INFO    ] Checking for camera pi updates...
[2026-06-12 02:41:52,778.778 INFO    ] 200
[2026-06-12 02:41:52,780.780 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:41:52,804.804 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 02:41:52,857.857 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 02:41:52,859.859 INFO    ] No camera update needed
[2026-06-12 02:41:52,860.860 INFO    ] Script finished. Safe exiting...
[2026-06-12 02:41:52,861.861 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 02:41:52,864.864 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 02:41:52,867.867 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 02:41:54,906.906 INFO    ] ================================================
[2026-06-12 02:41:54,921.921 INFO    ] Launching Daemon at Fri Jun 12 02:41:54 IST 2026
[2026-06-12 02:41:54,933.933 INFO    ] ================================================
[2026-06-12 02:41:55,275.275 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 02:41:55
[2026-06-12 02:41:55,589.589 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 02:41:55,722.722 INFO    ] Initializing speech engine...
[2026-06-12 02:41:55,735.735 INFO    ] 2026-06-12 02:41:55
[2026-06-12 02:41:55,943.943 INFO    ] 2026-06-12 02:41:55
[2026-06-12 02:41:55,974.974 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 02:41:56,160.160 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 02:41:56,169.169 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 02:41:56,299.299 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 02:41:56,363.363 INFO    ] time= 12/06/2026 02:41:56
[2026-06-12 02:41:56,392.392 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 02:41:56,393.393 INFO    ] Checking for existing commands in stream...
[2026-06-12 02:41:56,491.491 INFO    ] No existing commands found in stream
[2026-06-12 02:42:01,499.499 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 02:42:01,502.502 INFO    ] Waiting 0.38 seconds before fallback handling...
[2026-06-12 02:42:02,240.240 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 02:42:02,243.243 INFO    ] Checking for system updates...
[2026-06-12 02:42:02,279.279 INFO    ] 200
[2026-06-12 02:42:02,281.281 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:42:02,328.328 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 02:42:02,331.331 INFO    ] No update needed
[2026-06-12 02:42:02,333.333 INFO    ] Checking for camera pi updates...
[2026-06-12 02:42:02,359.359 INFO    ] 200
[2026-06-12 02:42:02,362.362 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:42:02,392.392 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 02:42:02,425.425 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 02:42:02,427.427 INFO    ] No camera update needed
[2026-06-12 02:42:02,429.429 INFO    ] Script finished. Safe exiting...
[2026-06-12 02:42:02,431.431 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 02:42:02,435.435 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 02:42:02,440.440 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 02:42:04,481.481 INFO    ] ================================================
[2026-06-12 02:42:04,497.497 INFO    ] Launching Daemon at Fri Jun 12 02:42:04 IST 2026
[2026-06-12 02:42:04,509.509 INFO    ] ================================================
[2026-06-12 02:42:04,834.834 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 02:42:04
[2026-06-12 02:42:05,146.146 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 02:42:05,278.278 INFO    ] Initializing speech engine...
[2026-06-12 02:42:05,286.286 INFO    ] 2026-06-12 02:42:05
[2026-06-12 02:42:05,502.502 INFO    ] 2026-06-12 02:42:05
[2026-06-12 02:42:05,531.531 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 02:42:05,717.717 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 02:42:05,721.721 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 02:42:05,870.870 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 02:42:05,927.927 INFO    ] time= 12/06/2026 02:42:05
[2026-06-12 02:42:05,958.958 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 02:42:05,970.970 INFO    ] Checking for existing commands in stream...
[2026-06-12 02:42:06,038.038 INFO    ] No existing commands found in stream
[2026-06-12 02:42:11,048.048 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 02:42:11,052.052 INFO    ] Waiting 0.98 seconds before fallback handling...
[2026-06-12 02:42:12,387.387 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 02:42:12,388.388 INFO    ] Checking for system updates...
[2026-06-12 02:42:12,411.411 INFO    ] 200
[2026-06-12 02:42:12,412.412 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:42:12,447.447 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 02:42:12,449.449 INFO    ] No update needed
[2026-06-12 02:42:12,450.450 INFO    ] Checking for camera pi updates...
[2026-06-12 02:42:12,473.473 INFO    ] 200
[2026-06-12 02:42:12,474.474 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:42:12,499.499 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 02:42:12,546.546 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 02:42:12,548.548 INFO    ] No camera update needed
[2026-06-12 02:42:12,549.549 INFO    ] Script finished. Safe exiting...
[2026-06-12 02:42:12,551.551 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 02:42:12,554.554 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 02:42:12,557.557 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 02:42:14,597.597 INFO    ] ================================================
[2026-06-12 02:42:14,614.614 INFO    ] Launching Daemon at Fri Jun 12 02:42:14 IST 2026
[2026-06-12 02:42:14,625.625 INFO    ] ================================================
[2026-06-12 02:42:14,957.957 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 02:42:14
[2026-06-12 02:42:15,270.270 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 02:42:15,399.399 INFO    ] Initializing speech engine...
[2026-06-12 02:42:15,408.408 INFO    ] 2026-06-12 02:42:15
[2026-06-12 02:42:15,622.622 INFO    ] 2026-06-12 02:42:15
[2026-06-12 02:42:15,651.651 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 02:42:15,838.838 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 02:42:15,841.841 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 02:42:15,979.979 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 02:42:16,038.038 INFO    ] time= 12/06/2026 02:42:15
[2026-06-12 02:42:16,072.072 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 02:42:16,078.078 INFO    ] Checking for existing commands in stream...
[2026-06-12 02:42:16,146.146 INFO    ] No existing commands found in stream
[2026-06-12 02:42:21,155.155 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 02:42:21,158.158 INFO    ] Waiting 2.15 seconds before fallback handling...
[2026-06-12 02:42:23,705.705 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 02:42:23,706.706 INFO    ] Checking for system updates...
[2026-06-12 02:42:23,728.728 INFO    ] 200
[2026-06-12 02:42:23,730.730 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:42:23,763.763 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 02:42:23,765.765 INFO    ] No update needed
[2026-06-12 02:42:23,766.766 INFO    ] Checking for camera pi updates...
[2026-06-12 02:42:23,788.788 INFO    ] 200
[2026-06-12 02:42:23,790.790 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:42:23,815.815 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 02:42:23,865.865 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 02:42:23,867.867 INFO    ] No camera update needed
[2026-06-12 02:42:23,868.868 INFO    ] Script finished. Safe exiting...
[2026-06-12 02:42:23,870.870 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 02:42:23,873.873 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 02:42:23,876.876 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 02:42:25,917.917 INFO    ] ================================================
[2026-06-12 02:42:25,933.933 INFO    ] Launching Daemon at Fri Jun 12 02:42:25 IST 2026
[2026-06-12 02:42:25,945.945 INFO    ] ================================================
[2026-06-12 02:42:26,314.314 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 02:42:26
[2026-06-12 02:42:26,630.630 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 02:42:26,766.766 INFO    ] Initializing speech engine...
[2026-06-12 02:42:26,774.774 INFO    ] 2026-06-12 02:42:26
[2026-06-12 02:42:26,987.987 INFO    ] 2026-06-12 02:42:26
[2026-06-12 02:42:27,016.016 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 02:42:27,202.202 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 02:42:27,212.212 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 02:42:27,335.335 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 02:42:27,398.398 INFO    ] time= 12/06/2026 02:42:27
[2026-06-12 02:42:27,430.430 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 02:42:27,432.432 INFO    ] Checking for existing commands in stream...
[2026-06-12 02:42:27,503.503 INFO    ] No existing commands found in stream
[2026-06-12 02:42:32,517.517 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 02:42:32,519.519 INFO    ] Waiting 2.16 seconds before fallback handling...
[2026-06-12 02:42:35,085.085 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 02:42:35,087.087 INFO    ] Checking for system updates...
[2026-06-12 02:42:35,109.109 INFO    ] 200
[2026-06-12 02:42:35,111.111 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:42:35,143.143 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 02:42:35,144.144 INFO    ] No update needed
[2026-06-12 02:42:35,146.146 INFO    ] Checking for camera pi updates...
[2026-06-12 02:42:35,168.168 INFO    ] 200
[2026-06-12 02:42:35,170.170 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:42:35,193.193 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 02:42:35,237.237 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 02:42:35,239.239 INFO    ] No camera update needed
[2026-06-12 02:42:35,240.240 INFO    ] Script finished. Safe exiting...
[2026-06-12 02:42:35,242.242 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 02:42:35,245.245 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 02:42:35,248.248 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 02:42:37,286.286 INFO    ] ================================================
[2026-06-12 02:42:37,301.301 INFO    ] Launching Daemon at Fri Jun 12 02:42:37 IST 2026
[2026-06-12 02:42:37,312.312 INFO    ] ================================================
[2026-06-12 02:42:37,697.697 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 02:42:37
[2026-06-12 02:42:38,030.030 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 02:42:38,169.169 INFO    ] Initializing speech engine...
[2026-06-12 02:42:38,183.183 INFO    ] 2026-06-12 02:42:38
[2026-06-12 02:42:38,392.392 INFO    ] 2026-06-12 02:42:38
[2026-06-12 02:42:38,421.421 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 02:42:38,604.604 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 02:42:38,614.614 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 02:42:38,748.748 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 02:42:38,810.810 INFO    ] time= 12/06/2026 02:42:38
[2026-06-12 02:42:38,833.833 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 02:42:38,840.840 INFO    ] Checking for existing commands in stream...
[2026-06-12 02:42:38,906.906 INFO    ] No existing commands found in stream
[2026-06-12 02:42:43,921.921 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 02:42:43,925.925 INFO    ] Waiting 3.47 seconds before fallback handling...
[2026-06-12 02:42:47,797.797 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 02:42:47,799.799 INFO    ] Checking for system updates...
[2026-06-12 02:42:47,820.820 INFO    ] 200
[2026-06-12 02:42:47,821.821 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:42:47,854.854 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 02:42:47,855.855 INFO    ] No update needed
[2026-06-12 02:42:47,856.856 INFO    ] Checking for camera pi updates...
[2026-06-12 02:42:47,880.880 INFO    ] 200
[2026-06-12 02:42:47,881.881 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:42:47,907.907 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 02:42:47,961.961 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 02:42:47,963.963 INFO    ] No camera update needed
[2026-06-12 02:42:47,964.964 INFO    ] Script finished. Safe exiting...
[2026-06-12 02:42:47,966.966 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 02:42:47,969.969 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 02:42:47,972.972 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 02:42:50,011.011 INFO    ] ================================================
[2026-06-12 02:42:50,027.027 INFO    ] Launching Daemon at Fri Jun 12 02:42:50 IST 2026
[2026-06-12 02:42:50,038.038 INFO    ] ================================================
[2026-06-12 02:42:50,395.395 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 02:42:50
[2026-06-12 02:42:50,705.705 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 02:42:50,842.842 INFO    ] Initializing speech engine...
[2026-06-12 02:42:50,850.850 INFO    ] 2026-06-12 02:42:50
[2026-06-12 02:42:51,072.072 INFO    ] 2026-06-12 02:42:51
[2026-06-12 02:42:51,103.103 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 02:42:51,234.234 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 02:42:51,272.272 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 02:42:51,441.441 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 02:42:51,468.468 INFO    ] time= 12/06/2026 02:42:51
[2026-06-12 02:42:51,524.524 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 02:42:51,549.549 INFO    ] Checking for existing commands in stream...
[2026-06-12 02:42:51,624.624 INFO    ] No existing commands found in stream
[2026-06-12 02:42:56,632.632 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 02:42:56,635.635 INFO    ] Waiting 3.85 seconds before fallback handling...
[2026-06-12 02:43:00,846.846 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 02:43:00,847.847 INFO    ] Checking for system updates...
[2026-06-12 02:43:00,869.869 INFO    ] 200
[2026-06-12 02:43:00,871.871 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:43:00,901.901 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 02:43:00,903.903 INFO    ] No update needed
[2026-06-12 02:43:00,904.904 INFO    ] Checking for camera pi updates...
[2026-06-12 02:43:00,924.924 INFO    ] 200
[2026-06-12 02:43:00,925.925 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:43:00,949.949 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 02:43:01,087.087 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 02:43:01,089.089 INFO    ] No camera update needed
[2026-06-12 02:43:01,090.090 INFO    ] Script finished. Safe exiting...
[2026-06-12 02:43:01,092.092 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 02:43:01,095.095 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 02:43:01,098.098 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 02:43:03,125.125 INFO    ] ================================================
[2026-06-12 02:43:03,133.133 INFO    ] Launching Daemon at Fri Jun 12 02:43:03 IST 2026
[2026-06-12 02:43:03,139.139 INFO    ] ================================================
[2026-06-12 02:43:03,450.450 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 02:43:03
[2026-06-12 02:43:03,768.768 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 02:43:03,906.906 INFO    ] Initializing speech engine...
[2026-06-12 02:43:03,917.917 INFO    ] 2026-06-12 02:43:03
[2026-06-12 02:43:04,123.123 INFO    ] 2026-06-12 02:43:04
[2026-06-12 02:43:04,151.151 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 02:43:04,335.335 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 02:43:04,344.344 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 02:43:04,489.489 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 02:43:04,543.543 INFO    ] time= 12/06/2026 02:43:04
[2026-06-12 02:43:04,565.565 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 02:43:04,571.571 INFO    ] Checking for existing commands in stream...
[2026-06-12 02:43:04,661.661 INFO    ] No existing commands found in stream
[2026-06-12 02:43:09,675.675 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 02:43:09,678.678 INFO    ] Waiting 0.84 seconds before fallback handling...
[2026-06-12 02:43:10,887.887 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 02:43:10,889.889 INFO    ] Checking for system updates...
[2026-06-12 02:43:10,910.910 INFO    ] 200
[2026-06-12 02:43:10,911.911 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:43:10,944.944 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 02:43:10,946.946 INFO    ] No update needed
[2026-06-12 02:43:10,947.947 INFO    ] Checking for camera pi updates...
[2026-06-12 02:43:10,969.969 INFO    ] 200
[2026-06-12 02:43:10,971.971 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:43:10,995.995 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 02:43:11,045.045 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 02:43:11,046.046 INFO    ] No camera update needed
[2026-06-12 02:43:11,048.048 INFO    ] Script finished. Safe exiting...
[2026-06-12 02:43:11,049.049 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 02:43:11,053.053 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 02:43:11,055.055 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 02:43:13,096.096 INFO    ] ================================================
[2026-06-12 02:43:13,112.112 INFO    ] Launching Daemon at Fri Jun 12 02:43:13 IST 2026
[2026-06-12 02:43:13,123.123 INFO    ] ================================================
[2026-06-12 02:43:13,454.454 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 02:43:13
[2026-06-12 02:43:13,773.773 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 02:43:13,907.907 INFO    ] Initializing speech engine...
[2026-06-12 02:43:13,917.917 INFO    ] 2026-06-12 02:43:13
[2026-06-12 02:43:14,145.145 INFO    ] 2026-06-12 02:43:14
[2026-06-12 02:43:14,177.177 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 02:43:14,374.374 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 02:43:14,378.378 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 02:43:14,518.518 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 02:43:14,569.569 INFO    ] time= 12/06/2026 02:43:14
[2026-06-12 02:43:14,619.619 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 02:43:14,626.626 INFO    ] Checking for existing commands in stream...
[2026-06-12 02:43:14,701.701 INFO    ] No existing commands found in stream
[2026-06-12 02:43:19,712.712 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 02:43:19,715.715 INFO    ] Waiting 3.18 seconds before fallback handling...
[2026-06-12 02:43:23,244.244 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 02:43:23,245.245 INFO    ] Checking for system updates...
[2026-06-12 02:43:23,267.267 INFO    ] 200
[2026-06-12 02:43:23,269.269 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:43:23,303.303 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 02:43:23,305.305 INFO    ] No update needed
[2026-06-12 02:43:23,306.306 INFO    ] Checking for camera pi updates...
[2026-06-12 02:43:23,326.326 INFO    ] 200
[2026-06-12 02:43:23,328.328 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:43:23,353.353 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 02:43:23,399.399 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 02:43:23,401.401 INFO    ] No camera update needed
[2026-06-12 02:43:23,402.402 INFO    ] Script finished. Safe exiting...
[2026-06-12 02:43:23,404.404 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 02:43:23,407.407 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 02:43:23,410.410 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 02:43:25,449.449 INFO    ] ================================================
[2026-06-12 02:43:25,464.464 INFO    ] Launching Daemon at Fri Jun 12 02:43:25 IST 2026
[2026-06-12 02:43:25,475.475 INFO    ] ================================================
[2026-06-12 02:43:25,814.814 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 02:43:25
[2026-06-12 02:43:26,133.133 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 02:43:26,268.268 INFO    ] Initializing speech engine...
[2026-06-12 02:43:26,273.273 INFO    ] 2026-06-12 02:43:26
[2026-06-12 02:43:26,502.502 INFO    ] 2026-06-12 02:43:26
[2026-06-12 02:43:26,533.533 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 02:43:26,732.732 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 02:43:26,741.741 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 02:43:26,883.883 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 02:43:26,942.942 INFO    ] time= 12/06/2026 02:43:26
[2026-06-12 02:43:26,980.980 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 02:43:27,056.056 INFO    ] Checking for existing commands in stream...
[2026-06-12 02:43:27,120.120 INFO    ] No existing commands found in stream
[2026-06-12 02:43:32,131.131 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 02:43:32,134.134 INFO    ] Waiting 1.56 seconds before fallback handling...
[2026-06-12 02:43:34,084.084 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 02:43:34,086.086 INFO    ] Checking for system updates...
[2026-06-12 02:43:34,106.106 INFO    ] 200
[2026-06-12 02:43:34,108.108 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:43:34,138.138 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 02:43:34,139.139 INFO    ] No update needed
[2026-06-12 02:43:34,141.141 INFO    ] Checking for camera pi updates...
[2026-06-12 02:43:34,160.160 INFO    ] 200
[2026-06-12 02:43:34,161.161 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:43:34,184.184 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 02:43:34,225.225 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 02:43:34,226.226 INFO    ] No camera update needed
[2026-06-12 02:43:34,228.228 INFO    ] Script finished. Safe exiting...
[2026-06-12 02:43:34,229.229 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 02:43:34,232.232 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 02:43:34,235.235 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 02:43:36,274.274 INFO    ] ================================================
[2026-06-12 02:43:36,290.290 INFO    ] Launching Daemon at Fri Jun 12 02:43:36 IST 2026
[2026-06-12 02:43:36,301.301 INFO    ] ================================================
[2026-06-12 02:43:36,671.671 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 02:43:36
[2026-06-12 02:43:37,009.009 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 02:43:37,157.157 INFO    ] Initializing speech engine...
[2026-06-12 02:43:37,158.158 INFO    ] 2026-06-12 02:43:37
[2026-06-12 02:43:37,377.377 INFO    ] 2026-06-12 02:43:37
[2026-06-12 02:43:37,406.406 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 02:43:37,591.591 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 02:43:37,600.600 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 02:43:37,741.741 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 02:43:37,799.799 INFO    ] time= 12/06/2026 02:43:37
[2026-06-12 02:43:37,822.822 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 02:43:37,828.828 INFO    ] Checking for existing commands in stream...
[2026-06-12 02:43:37,896.896 INFO    ] No existing commands found in stream
[2026-06-12 02:43:42,910.910 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 02:43:42,914.914 INFO    ] Waiting 1.05 seconds before fallback handling...
[2026-06-12 02:43:44,346.346 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 02:43:44,348.348 INFO    ] Checking for system updates...
[2026-06-12 02:43:44,369.369 INFO    ] 200
[2026-06-12 02:43:44,371.371 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:43:44,401.401 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 02:43:44,403.403 INFO    ] No update needed
[2026-06-12 02:43:44,404.404 INFO    ] Checking for camera pi updates...
[2026-06-12 02:43:44,425.425 INFO    ] 200
[2026-06-12 02:43:44,427.427 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:43:44,451.451 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 02:43:44,493.493 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 02:43:44,495.495 INFO    ] No camera update needed
[2026-06-12 02:43:44,496.496 INFO    ] Script finished. Safe exiting...
[2026-06-12 02:43:44,497.497 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 02:43:44,501.501 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 02:43:44,504.504 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 02:43:46,543.543 INFO    ] ================================================
[2026-06-12 02:43:46,558.558 INFO    ] Launching Daemon at Fri Jun 12 02:43:46 IST 2026
[2026-06-12 02:43:46,569.569 INFO    ] ================================================
[2026-06-12 02:43:46,903.903 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 02:43:46
[2026-06-12 02:43:47,216.216 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 02:43:47,350.350 INFO    ] Initializing speech engine...
[2026-06-12 02:43:47,353.353 INFO    ] 2026-06-12 02:43:47
[2026-06-12 02:43:47,581.581 INFO    ] 2026-06-12 02:43:47
[2026-06-12 02:43:47,611.611 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 02:43:47,760.760 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 02:43:47,812.812 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 02:43:47,957.957 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 02:43:48,000.000 INFO    ] time= 12/06/2026 02:43:47
[2026-06-12 02:43:48,037.037 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 02:43:48,061.061 INFO    ] Checking for existing commands in stream...
[2026-06-12 02:43:48,137.137 INFO    ] No existing commands found in stream
[2026-06-12 02:43:53,147.147 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 02:43:53,150.150 INFO    ] Waiting 1.14 seconds before fallback handling...
[2026-06-12 02:43:54,643.643 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 02:43:54,644.644 INFO    ] Checking for system updates...
[2026-06-12 02:43:54,665.665 INFO    ] 200
[2026-06-12 02:43:54,666.666 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:43:54,696.696 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 02:43:54,697.697 INFO    ] No update needed
[2026-06-12 02:43:54,698.698 INFO    ] Checking for camera pi updates...
[2026-06-12 02:43:54,717.717 INFO    ] 200
[2026-06-12 02:43:54,719.719 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:43:54,742.742 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 02:43:54,781.781 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 02:43:54,783.783 INFO    ] No camera update needed
[2026-06-12 02:43:54,784.784 INFO    ] Script finished. Safe exiting...
[2026-06-12 02:43:54,785.785 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 02:43:54,788.788 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 02:43:54,791.791 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 02:43:56,830.830 INFO    ] ================================================
[2026-06-12 02:43:56,846.846 INFO    ] Launching Daemon at Fri Jun 12 02:43:56 IST 2026
[2026-06-12 02:43:56,856.856 INFO    ] ================================================
[2026-06-12 02:43:57,208.208 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 02:43:57
[2026-06-12 02:43:57,548.548 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 02:43:57,702.702 INFO    ] Initializing speech engine...
[2026-06-12 02:43:57,705.705 INFO    ] 2026-06-12 02:43:57
[2026-06-12 02:43:57,916.916 INFO    ] 2026-06-12 02:43:57
[2026-06-12 02:43:57,945.945 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 02:43:58,132.132 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 02:43:58,143.143 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 02:43:58,286.286 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 02:43:58,344.344 INFO    ] time= 12/06/2026 02:43:58
[2026-06-12 02:43:58,368.368 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 02:43:58,375.375 INFO    ] Checking for existing commands in stream...
[2026-06-12 02:43:58,443.443 INFO    ] No existing commands found in stream
[2026-06-12 02:44:03,476.476 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 02:44:03,479.479 INFO    ] Waiting 3.59 seconds before fallback handling...
[2026-06-12 02:44:07,468.468 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 02:44:07,470.470 INFO    ] Checking for system updates...
[2026-06-12 02:44:07,491.491 INFO    ] 200
[2026-06-12 02:44:07,492.492 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:44:07,523.523 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 02:44:07,525.525 INFO    ] No update needed
[2026-06-12 02:44:07,526.526 INFO    ] Checking for camera pi updates...
[2026-06-12 02:44:07,546.546 INFO    ] 200
[2026-06-12 02:44:07,547.547 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:44:07,571.571 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 02:44:07,613.613 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 02:44:07,615.615 INFO    ] No camera update needed
[2026-06-12 02:44:07,616.616 INFO    ] Script finished. Safe exiting...
[2026-06-12 02:44:07,618.618 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 02:44:07,621.621 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 02:44:07,624.624 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 02:44:09,664.664 INFO    ] ================================================
[2026-06-12 02:44:09,679.679 INFO    ] Launching Daemon at Fri Jun 12 02:44:09 IST 2026
[2026-06-12 02:44:09,689.689 INFO    ] ================================================
[2026-06-12 02:44:10,148.148 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 02:44:10
[2026-06-12 02:44:10,461.461 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 02:44:10,596.596 INFO    ] Initializing speech engine...
[2026-06-12 02:44:10,600.600 INFO    ] 2026-06-12 02:44:10
[2026-06-12 02:44:10,829.829 INFO    ] 2026-06-12 02:44:10
[2026-06-12 02:44:10,860.860 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 02:44:11,058.058 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 02:44:11,062.062 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 02:44:11,201.201 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 02:44:11,252.252 INFO    ] time= 12/06/2026 02:44:11
[2026-06-12 02:44:11,291.291 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 02:44:11,309.309 INFO    ] Checking for existing commands in stream...
[2026-06-12 02:44:11,385.385 INFO    ] No existing commands found in stream
[2026-06-12 02:44:16,395.395 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 02:44:16,398.398 INFO    ] Waiting 1.43 seconds before fallback handling...
[2026-06-12 02:44:18,205.205 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 02:44:18,207.207 INFO    ] Checking for system updates...
[2026-06-12 02:44:18,227.227 INFO    ] 200
[2026-06-12 02:44:18,229.229 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:44:18,259.259 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 02:44:18,260.260 INFO    ] No update needed
[2026-06-12 02:44:18,262.262 INFO    ] Checking for camera pi updates...
[2026-06-12 02:44:18,281.281 INFO    ] 200
[2026-06-12 02:44:18,283.283 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:44:18,306.306 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 02:44:18,332.332 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 02:44:18,333.333 INFO    ] No camera update needed
[2026-06-12 02:44:18,334.334 INFO    ] Script finished. Safe exiting...
[2026-06-12 02:44:18,336.336 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 02:44:18,339.339 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 02:44:18,341.341 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 02:44:20,381.381 INFO    ] ================================================
[2026-06-12 02:44:20,396.396 INFO    ] Launching Daemon at Fri Jun 12 02:44:20 IST 2026
[2026-06-12 02:44:20,407.407 INFO    ] ================================================
[2026-06-12 02:44:20,760.760 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 02:44:20
[2026-06-12 02:44:21,074.074 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 02:44:21,205.205 INFO    ] Initializing speech engine...
[2026-06-12 02:44:21,209.209 INFO    ] 2026-06-12 02:44:21
[2026-06-12 02:44:21,429.429 INFO    ] 2026-06-12 02:44:21
[2026-06-12 02:44:21,470.470 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 02:44:21,664.664 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 02:44:21,672.672 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 02:44:21,810.810 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 02:44:21,872.872 INFO    ] time= 12/06/2026 02:44:21
[2026-06-12 02:44:21,913.913 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 02:44:21,919.919 INFO    ] Checking for existing commands in stream...
[2026-06-12 02:44:21,994.994 INFO    ] No existing commands found in stream
[2026-06-12 02:44:27,005.005 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 02:44:27,008.008 INFO    ] Waiting 0.89 seconds before fallback handling...
[2026-06-12 02:44:28,258.258 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 02:44:28,259.259 INFO    ] Checking for system updates...
[2026-06-12 02:44:28,281.281 INFO    ] 200
[2026-06-12 02:44:28,282.282 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:44:28,313.313 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 02:44:28,314.314 INFO    ] No update needed
[2026-06-12 02:44:28,315.315 INFO    ] Checking for camera pi updates...
[2026-06-12 02:44:28,335.335 INFO    ] 200
[2026-06-12 02:44:28,337.337 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:44:28,360.360 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 02:44:28,405.405 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 02:44:28,407.407 INFO    ] No camera update needed
[2026-06-12 02:44:28,408.408 INFO    ] Script finished. Safe exiting...
[2026-06-12 02:44:28,410.410 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 02:44:28,413.413 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 02:44:28,416.416 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 02:44:30,456.456 INFO    ] ================================================
[2026-06-12 02:44:30,471.471 INFO    ] Launching Daemon at Fri Jun 12 02:44:30 IST 2026
[2026-06-12 02:44:30,481.481 INFO    ] ================================================
[2026-06-12 02:44:30,814.814 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 02:44:30
[2026-06-12 02:44:31,131.131 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 02:44:31,279.279 INFO    ] Initializing speech engine...
[2026-06-12 02:44:31,284.284 INFO    ] 2026-06-12 02:44:31
[2026-06-12 02:44:31,494.494 INFO    ] 2026-06-12 02:44:31
[2026-06-12 02:44:31,541.541 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 02:44:31,681.681 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 02:44:31,721.721 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 02:44:31,832.832 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 02:44:31,873.873 INFO    ] time= 12/06/2026 02:44:31
[2026-06-12 02:44:31,936.936 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 02:44:31,985.985 INFO    ] Checking for existing commands in stream...
[2026-06-12 02:44:32,070.070 INFO    ] No existing commands found in stream
[2026-06-12 02:44:37,083.083 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 02:44:37,086.086 INFO    ] Waiting 3.62 seconds before fallback handling...
[2026-06-12 02:44:41,095.095 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 02:44:41,096.096 INFO    ] Checking for system updates...
[2026-06-12 02:44:41,117.117 INFO    ] 200
[2026-06-12 02:44:41,118.118 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:44:41,151.151 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 02:44:41,152.152 INFO    ] No update needed
[2026-06-12 02:44:41,153.153 INFO    ] Checking for camera pi updates...
[2026-06-12 02:44:41,175.175 INFO    ] 200
[2026-06-12 02:44:41,176.176 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:44:41,200.200 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 02:44:41,243.243 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 02:44:41,244.244 INFO    ] No camera update needed
[2026-06-12 02:44:41,246.246 INFO    ] Script finished. Safe exiting...
[2026-06-12 02:44:41,247.247 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 02:44:41,250.250 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 02:44:41,253.253 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 02:44:43,291.291 INFO    ] ================================================
[2026-06-12 02:44:43,307.307 INFO    ] Launching Daemon at Fri Jun 12 02:44:43 IST 2026
[2026-06-12 02:44:43,317.317 INFO    ] ================================================
[2026-06-12 02:44:43,658.658 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 02:44:43
[2026-06-12 02:44:43,973.973 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 02:44:44,103.103 INFO    ] Initializing speech engine...
[2026-06-12 02:44:44,107.107 INFO    ] 2026-06-12 02:44:44
[2026-06-12 02:44:44,326.326 INFO    ] 2026-06-12 02:44:44
[2026-06-12 02:44:44,355.355 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 02:44:44,540.540 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 02:44:44,549.549 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 02:44:44,679.679 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 02:44:44,748.748 INFO    ] time= 12/06/2026 02:44:44
[2026-06-12 02:44:44,773.773 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 02:44:44,778.778 INFO    ] Checking for existing commands in stream...
[2026-06-12 02:44:44,871.871 INFO    ] No existing commands found in stream
[2026-06-12 02:44:49,885.885 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 02:44:49,887.887 INFO    ] Waiting 3.94 seconds before fallback handling...
[2026-06-12 02:44:54,229.229 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 02:44:54,230.230 INFO    ] Checking for system updates...
[2026-06-12 02:44:54,251.251 INFO    ] 200
[2026-06-12 02:44:54,253.253 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:44:54,284.284 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 02:44:54,285.285 INFO    ] No update needed
[2026-06-12 02:44:54,286.286 INFO    ] Checking for camera pi updates...
[2026-06-12 02:44:54,306.306 INFO    ] 200
[2026-06-12 02:44:54,307.307 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:44:54,331.331 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 02:44:54,373.373 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 02:44:54,375.375 INFO    ] No camera update needed
[2026-06-12 02:44:54,376.376 INFO    ] Script finished. Safe exiting...
[2026-06-12 02:44:54,377.377 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 02:44:54,381.381 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 02:44:54,384.384 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 02:44:56,424.424 INFO    ] ================================================
[2026-06-12 02:44:56,439.439 INFO    ] Launching Daemon at Fri Jun 12 02:44:56 IST 2026
[2026-06-12 02:44:56,450.450 INFO    ] ================================================
[2026-06-12 02:44:56,794.794 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 02:44:56
[2026-06-12 02:44:57,109.109 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 02:44:57,239.239 INFO    ] Initializing speech engine...
[2026-06-12 02:44:57,244.244 INFO    ] 2026-06-12 02:44:57
[2026-06-12 02:44:57,463.463 INFO    ] 2026-06-12 02:44:57
[2026-06-12 02:44:57,492.492 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 02:44:57,678.678 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 02:44:57,681.681 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 02:44:57,818.818 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 02:44:57,882.882 INFO    ] time= 12/06/2026 02:44:57
[2026-06-12 02:44:57,911.911 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 02:44:57,917.917 INFO    ] Checking for existing commands in stream...
[2026-06-12 02:44:57,985.985 INFO    ] No existing commands found in stream
[2026-06-12 02:45:02,994.994 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 02:45:02,996.996 INFO    ] Waiting 0.62 seconds before fallback handling...
[2026-06-12 02:45:03,964.964 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 02:45:03,966.966 INFO    ] Checking for system updates...
[2026-06-12 02:45:03,986.986 INFO    ] 200
[2026-06-12 02:45:03,988.988 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:45:04,020.020 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 02:45:04,021.021 INFO    ] No update needed
[2026-06-12 02:45:04,023.023 INFO    ] Checking for camera pi updates...
[2026-06-12 02:45:04,042.042 INFO    ] 200
[2026-06-12 02:45:04,043.043 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:45:04,069.069 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 02:45:04,211.211 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 02:45:04,212.212 INFO    ] No camera update needed
[2026-06-12 02:45:04,214.214 INFO    ] Script finished. Safe exiting...
[2026-06-12 02:45:04,215.215 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 02:45:04,218.218 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 02:45:04,221.221 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 02:45:06,259.259 INFO    ] ================================================
[2026-06-12 02:45:06,275.275 INFO    ] Launching Daemon at Fri Jun 12 02:45:06 IST 2026
[2026-06-12 02:45:06,286.286 INFO    ] ================================================
[2026-06-12 02:45:06,625.625 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 02:45:06
[2026-06-12 02:45:06,938.938 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 02:45:07,082.082 INFO    ] Initializing speech engine...
[2026-06-12 02:45:07,087.087 INFO    ] 2026-06-12 02:45:07
[2026-06-12 02:45:07,292.292 INFO    ] 2026-06-12 02:45:07
[2026-06-12 02:45:07,323.323 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 02:45:07,511.511 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 02:45:07,520.520 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 02:45:07,654.654 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 02:45:07,723.723 INFO    ] time= 12/06/2026 02:45:07
[2026-06-12 02:45:07,747.747 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 02:45:07,754.754 INFO    ] Checking for existing commands in stream...
[2026-06-12 02:45:07,820.820 INFO    ] No existing commands found in stream
[2026-06-12 02:45:12,831.831 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 02:45:12,834.834 INFO    ] Waiting 2.01 seconds before fallback handling...
[2026-06-12 02:45:15,233.233 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 02:45:15,234.234 INFO    ] Checking for system updates...
[2026-06-12 02:45:15,255.255 INFO    ] 200
[2026-06-12 02:45:15,256.256 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:45:15,287.287 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 02:45:15,288.288 INFO    ] No update needed
[2026-06-12 02:45:15,289.289 INFO    ] Checking for camera pi updates...
[2026-06-12 02:45:15,309.309 INFO    ] 200
[2026-06-12 02:45:15,310.310 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:45:15,334.334 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 02:45:15,385.385 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 02:45:15,386.386 INFO    ] No camera update needed
[2026-06-12 02:45:15,387.387 INFO    ] Script finished. Safe exiting...
[2026-06-12 02:45:15,388.388 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 02:45:15,392.392 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 02:45:15,394.394 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 02:45:17,434.434 INFO    ] ================================================
[2026-06-12 02:45:17,449.449 INFO    ] Launching Daemon at Fri Jun 12 02:45:17 IST 2026
[2026-06-12 02:45:17,460.460 INFO    ] ================================================
[2026-06-12 02:45:17,837.837 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 02:45:17
[2026-06-12 02:45:18,174.174 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 02:45:18,328.328 INFO    ] Initializing speech engine...
[2026-06-12 02:45:18,331.331 INFO    ] 2026-06-12 02:45:18
[2026-06-12 02:45:18,541.541 INFO    ] 2026-06-12 02:45:18
[2026-06-12 02:45:18,570.570 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 02:45:18,720.720 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 02:45:18,760.760 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 02:45:18,915.915 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 02:45:18,969.969 INFO    ] time= 12/06/2026 02:45:18
[2026-06-12 02:45:18,992.992 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 02:45:18,999.999 INFO    ] Checking for existing commands in stream...
[2026-06-12 02:45:19,067.067 INFO    ] No existing commands found in stream
[2026-06-12 02:45:24,092.092 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 02:45:24,095.095 INFO    ] Waiting 2.92 seconds before fallback handling...
[2026-06-12 02:45:27,415.415 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 02:45:27,417.417 INFO    ] Checking for system updates...
[2026-06-12 02:45:27,438.438 INFO    ] 200
[2026-06-12 02:45:27,440.440 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:45:27,471.471 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 02:45:27,472.472 INFO    ] No update needed
[2026-06-12 02:45:27,474.474 INFO    ] Checking for camera pi updates...
[2026-06-12 02:45:27,494.494 INFO    ] 200
[2026-06-12 02:45:27,495.495 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:45:27,519.519 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 02:45:27,564.564 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 02:45:27,565.565 INFO    ] No camera update needed
[2026-06-12 02:45:27,567.567 INFO    ] Script finished. Safe exiting...
[2026-06-12 02:45:27,568.568 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 02:45:27,572.572 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 02:45:27,575.575 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 02:45:29,614.614 INFO    ] ================================================
[2026-06-12 02:45:29,630.630 INFO    ] Launching Daemon at Fri Jun 12 02:45:29 IST 2026
[2026-06-12 02:45:29,641.641 INFO    ] ================================================
[2026-06-12 02:45:29,988.988 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 02:45:29
[2026-06-12 02:45:30,300.300 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 02:45:30,442.442 INFO    ] Initializing speech engine...
[2026-06-12 02:45:30,447.447 INFO    ] 2026-06-12 02:45:30
[2026-06-12 02:45:30,651.651 INFO    ] 2026-06-12 02:45:30
[2026-06-12 02:45:30,679.679 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 02:45:30,865.865 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 02:45:30,868.868 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 02:45:31,003.003 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 02:45:31,062.062 INFO    ] time= 12/06/2026 02:45:31
[2026-06-12 02:45:31,099.099 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 02:45:31,101.101 INFO    ] Checking for existing commands in stream...
[2026-06-12 02:45:31,168.168 INFO    ] No existing commands found in stream
[2026-06-12 02:45:36,183.183 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 02:45:36,185.185 INFO    ] Waiting 1.33 seconds before fallback handling...
[2026-06-12 02:45:37,863.863 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 02:45:37,865.865 INFO    ] Checking for system updates...
[2026-06-12 02:45:37,886.886 INFO    ] 200
[2026-06-12 02:45:37,888.888 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:45:37,919.919 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 02:45:37,920.920 INFO    ] No update needed
[2026-06-12 02:45:37,922.922 INFO    ] Checking for camera pi updates...
[2026-06-12 02:45:37,944.944 INFO    ] 200
[2026-06-12 02:45:37,945.945 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:45:37,968.968 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 02:45:38,012.012 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 02:45:38,013.013 INFO    ] No camera update needed
[2026-06-12 02:45:38,015.015 INFO    ] Script finished. Safe exiting...
[2026-06-12 02:45:38,016.016 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 02:45:38,019.019 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 02:45:38,021.021 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 02:45:40,060.060 INFO    ] ================================================
[2026-06-12 02:45:40,075.075 INFO    ] Launching Daemon at Fri Jun 12 02:45:40 IST 2026
[2026-06-12 02:45:40,087.087 INFO    ] ================================================
[2026-06-12 02:45:40,449.449 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 02:45:40
[2026-06-12 02:45:40,788.788 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 02:45:40,939.939 INFO    ] Initializing speech engine...
[2026-06-12 02:45:40,944.944 INFO    ] 2026-06-12 02:45:40
[2026-06-12 02:45:41,153.153 INFO    ] 2026-06-12 02:45:41
[2026-06-12 02:45:41,182.182 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 02:45:41,365.365 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 02:45:41,375.375 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 02:45:41,531.531 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 02:45:41,586.586 INFO    ] time= 12/06/2026 02:45:41
[2026-06-12 02:45:41,597.597 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 02:45:41,603.603 INFO    ] Checking for existing commands in stream...
[2026-06-12 02:45:41,670.670 INFO    ] No existing commands found in stream
[2026-06-12 02:45:46,695.695 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 02:45:46,698.698 INFO    ] Waiting 0.18 seconds before fallback handling...
[2026-06-12 02:45:47,215.215 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 02:45:47,216.216 INFO    ] Checking for system updates...
[2026-06-12 02:45:47,237.237 INFO    ] 200
[2026-06-12 02:45:47,238.238 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:45:47,268.268 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 02:45:47,269.269 INFO    ] No update needed
[2026-06-12 02:45:47,271.271 INFO    ] Checking for camera pi updates...
[2026-06-12 02:45:47,290.290 INFO    ] 200
[2026-06-12 02:45:47,292.292 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:45:47,317.317 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 02:45:47,367.367 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 02:45:47,368.368 INFO    ] No camera update needed
[2026-06-12 02:45:47,370.370 INFO    ] Script finished. Safe exiting...
[2026-06-12 02:45:47,371.371 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 02:45:47,374.374 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 02:45:47,377.377 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 02:45:49,415.415 INFO    ] ================================================
[2026-06-12 02:45:49,432.432 INFO    ] Launching Daemon at Fri Jun 12 02:45:49 IST 2026
[2026-06-12 02:45:49,444.444 INFO    ] ================================================
[2026-06-12 02:45:49,790.790 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 02:45:49
[2026-06-12 02:45:50,102.102 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 02:45:50,234.234 INFO    ] Initializing speech engine...
[2026-06-12 02:45:50,241.241 INFO    ] 2026-06-12 02:45:50
[2026-06-12 02:45:50,456.456 INFO    ] 2026-06-12 02:45:50
[2026-06-12 02:45:50,484.484 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 02:45:50,670.670 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 02:45:50,673.673 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 02:45:50,804.804 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 02:45:50,865.865 INFO    ] time= 12/06/2026 02:45:50
[2026-06-12 02:45:50,896.896 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 02:45:50,906.906 INFO    ] Checking for existing commands in stream...
[2026-06-12 02:45:50,978.978 INFO    ] No existing commands found in stream
[2026-06-12 02:45:55,987.987 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 02:45:55,990.990 INFO    ] Waiting 0.61 seconds before fallback handling...
[2026-06-12 02:45:56,962.962 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 02:45:56,963.963 INFO    ] Checking for system updates...
[2026-06-12 02:45:56,983.983 INFO    ] 200
[2026-06-12 02:45:56,985.985 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:45:57,018.018 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 02:45:57,019.019 INFO    ] No update needed
[2026-06-12 02:45:57,021.021 INFO    ] Checking for camera pi updates...
[2026-06-12 02:45:57,040.040 INFO    ] 200
[2026-06-12 02:45:57,041.041 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:45:57,067.067 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 02:45:57,110.110 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 02:45:57,111.111 INFO    ] No camera update needed
[2026-06-12 02:45:57,113.113 INFO    ] Script finished. Safe exiting...
[2026-06-12 02:45:57,114.114 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 02:45:57,117.117 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 02:45:57,120.120 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 02:45:59,160.160 INFO    ] ================================================
[2026-06-12 02:45:59,176.176 INFO    ] Launching Daemon at Fri Jun 12 02:45:59 IST 2026
[2026-06-12 02:45:59,188.188 INFO    ] ================================================
[2026-06-12 02:45:59,538.538 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 02:45:59
[2026-06-12 02:45:59,881.881 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 02:46:00,034.034 INFO    ] Initializing speech engine...
[2026-06-12 02:46:00,040.040 INFO    ] 2026-06-12 02:46:00
[2026-06-12 02:46:00,247.247 INFO    ] 2026-06-12 02:46:00
[2026-06-12 02:46:00,277.277 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 02:46:00,462.462 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 02:46:00,471.471 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 02:46:00,626.626 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 02:46:00,669.669 INFO    ] time= 12/06/2026 02:46:00
[2026-06-12 02:46:00,691.691 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 02:46:00,698.698 INFO    ] Checking for existing commands in stream...
[2026-06-12 02:46:00,790.790 INFO    ] No existing commands found in stream
[2026-06-12 02:46:05,800.800 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 02:46:05,803.803 INFO    ] Waiting 3.56 seconds before fallback handling...
[2026-06-12 02:46:09,753.753 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 02:46:09,755.755 INFO    ] Checking for system updates...
[2026-06-12 02:46:09,776.776 INFO    ] 200
[2026-06-12 02:46:09,777.777 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:46:09,808.808 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 02:46:09,810.810 INFO    ] No update needed
[2026-06-12 02:46:09,811.811 INFO    ] Checking for camera pi updates...
[2026-06-12 02:46:09,832.832 INFO    ] 200
[2026-06-12 02:46:09,833.833 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:46:09,859.859 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 02:46:09,902.902 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 02:46:09,904.904 INFO    ] No camera update needed
[2026-06-12 02:46:09,905.905 INFO    ] Script finished. Safe exiting...
[2026-06-12 02:46:09,907.907 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 02:46:09,910.910 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 02:46:09,913.913 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 02:46:11,951.951 INFO    ] ================================================
[2026-06-12 02:46:11,967.967 INFO    ] Launching Daemon at Fri Jun 12 02:46:11 IST 2026
[2026-06-12 02:46:11,978.978 INFO    ] ================================================
[2026-06-12 02:46:12,325.325 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 02:46:12
[2026-06-12 02:46:12,659.659 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 02:46:12,808.808 INFO    ] Initializing speech engine...
[2026-06-12 02:46:12,810.810 INFO    ] 2026-06-12 02:46:12
[2026-06-12 02:46:13,026.026 INFO    ] 2026-06-12 02:46:13
[2026-06-12 02:46:13,055.055 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 02:46:13,243.243 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 02:46:13,252.252 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 02:46:13,402.402 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 02:46:13,451.451 INFO    ] time= 12/06/2026 02:46:13
[2026-06-12 02:46:13,472.472 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 02:46:13,479.479 INFO    ] Checking for existing commands in stream...
[2026-06-12 02:46:13,547.547 INFO    ] No existing commands found in stream
[2026-06-12 02:46:18,552.552 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 02:46:18,555.555 INFO    ] Waiting 3.37 seconds before fallback handling...
[2026-06-12 02:46:22,285.285 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 02:46:22,286.286 INFO    ] Checking for system updates...
[2026-06-12 02:46:22,307.307 INFO    ] 200
[2026-06-12 02:46:22,309.309 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:46:22,339.339 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 02:46:22,340.340 INFO    ] No update needed
[2026-06-12 02:46:22,342.342 INFO    ] Checking for camera pi updates...
[2026-06-12 02:46:22,362.362 INFO    ] 200
[2026-06-12 02:46:22,363.363 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:46:22,387.387 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 02:46:22,439.439 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 02:46:22,441.441 INFO    ] No camera update needed
[2026-06-12 02:46:22,442.442 INFO    ] Script finished. Safe exiting...
[2026-06-12 02:46:22,444.444 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 02:46:22,447.447 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 02:46:22,450.450 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 02:46:24,489.489 INFO    ] ================================================
[2026-06-12 02:46:24,505.505 INFO    ] Launching Daemon at Fri Jun 12 02:46:24 IST 2026
[2026-06-12 02:46:24,516.516 INFO    ] ================================================
[2026-06-12 02:46:24,873.873 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 02:46:24
[2026-06-12 02:46:25,184.184 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 02:46:25,314.314 INFO    ] Initializing speech engine...
[2026-06-12 02:46:25,322.322 INFO    ] 2026-06-12 02:46:25
[2026-06-12 02:46:25,535.535 INFO    ] 2026-06-12 02:46:25
[2026-06-12 02:46:25,564.564 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 02:46:25,750.750 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 02:46:25,753.753 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 02:46:25,883.883 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 02:46:25,939.939 INFO    ] time= 12/06/2026 02:46:25
[2026-06-12 02:46:25,980.980 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 02:46:25,985.985 INFO    ] Checking for existing commands in stream...
[2026-06-12 02:46:26,057.057 INFO    ] No existing commands found in stream
[2026-06-12 02:46:31,066.066 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 02:46:31,069.069 INFO    ] Waiting 1.97 seconds before fallback handling...
[2026-06-12 02:46:33,365.365 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 02:46:33,367.367 INFO    ] Checking for system updates...
[2026-06-12 02:46:33,389.389 INFO    ] 200
[2026-06-12 02:46:33,390.390 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:46:33,420.420 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 02:46:33,422.422 INFO    ] No update needed
[2026-06-12 02:46:33,423.423 INFO    ] Checking for camera pi updates...
[2026-06-12 02:46:33,443.443 INFO    ] 200
[2026-06-12 02:46:33,445.445 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:46:33,468.468 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 02:46:33,497.497 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 02:46:33,498.498 INFO    ] No camera update needed
[2026-06-12 02:46:33,500.500 INFO    ] Script finished. Safe exiting...
[2026-06-12 02:46:33,501.501 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 02:46:33,504.504 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 02:46:33,507.507 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 02:46:35,548.548 INFO    ] ================================================
[2026-06-12 02:46:35,563.563 INFO    ] Launching Daemon at Fri Jun 12 02:46:35 IST 2026
[2026-06-12 02:46:35,574.574 INFO    ] ================================================
[2026-06-12 02:46:35,931.931 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 02:46:35
[2026-06-12 02:46:36,270.270 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 02:46:36,422.422 INFO    ] Initializing speech engine...
[2026-06-12 02:46:36,428.428 INFO    ] 2026-06-12 02:46:36
[2026-06-12 02:46:36,639.639 INFO    ] 2026-06-12 02:46:36
[2026-06-12 02:46:36,669.669 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 02:46:36,858.858 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 02:46:36,868.868 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 02:46:37,006.006 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 02:46:37,070.070 INFO    ] time= 12/06/2026 02:46:37
[2026-06-12 02:46:37,095.095 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 02:46:37,101.101 INFO    ] Checking for existing commands in stream...
[2026-06-12 02:46:37,169.169 INFO    ] No existing commands found in stream
[2026-06-12 02:46:42,179.179 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 02:46:42,182.182 INFO    ] Waiting 0.06 seconds before fallback handling...
[2026-06-12 02:46:42,606.606 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 02:46:42,608.608 INFO    ] Checking for system updates...
[2026-06-12 02:46:42,629.629 INFO    ] 200
[2026-06-12 02:46:42,630.630 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:46:42,661.661 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 02:46:42,662.662 INFO    ] No update needed
[2026-06-12 02:46:42,663.663 INFO    ] Checking for camera pi updates...
[2026-06-12 02:46:42,686.686 INFO    ] 200
[2026-06-12 02:46:42,688.688 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:46:42,733.733 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 02:46:42,781.781 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 02:46:42,782.782 INFO    ] No camera update needed
[2026-06-12 02:46:42,783.783 INFO    ] Script finished. Safe exiting...
[2026-06-12 02:46:42,785.785 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 02:46:42,788.788 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 02:46:42,791.791 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 02:46:44,831.831 INFO    ] ================================================
[2026-06-12 02:46:44,847.847 INFO    ] Launching Daemon at Fri Jun 12 02:46:44 IST 2026
[2026-06-12 02:46:44,858.858 INFO    ] ================================================
[2026-06-12 02:46:45,231.231 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 02:46:45
[2026-06-12 02:46:45,549.549 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 02:46:45,694.694 INFO    ] Initializing speech engine...
[2026-06-12 02:46:45,698.698 INFO    ] 2026-06-12 02:46:45
[2026-06-12 02:46:45,903.903 INFO    ] 2026-06-12 02:46:45
[2026-06-12 02:46:45,931.931 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 02:46:46,053.053 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 02:46:46,116.116 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 02:46:46,254.254 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 02:46:46,320.320 INFO    ] time= 12/06/2026 02:46:46
[2026-06-12 02:46:46,345.345 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 02:46:46,351.351 INFO    ] Checking for existing commands in stream...
[2026-06-12 02:46:46,418.418 INFO    ] No existing commands found in stream
[2026-06-12 02:46:51,443.443 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 02:46:51,445.445 INFO    ] Waiting 3.07 seconds before fallback handling...
[2026-06-12 02:46:54,903.903 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 02:46:54,904.904 INFO    ] Checking for system updates...
[2026-06-12 02:46:54,925.925 INFO    ] 200
[2026-06-12 02:46:54,926.926 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:46:54,957.957 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 02:46:54,958.958 INFO    ] No update needed
[2026-06-12 02:46:54,960.960 INFO    ] Checking for camera pi updates...
[2026-06-12 02:46:54,979.979 INFO    ] 200
[2026-06-12 02:46:54,981.981 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:46:55,006.006 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 02:46:55,052.052 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 02:46:55,054.054 INFO    ] No camera update needed
[2026-06-12 02:46:55,055.055 INFO    ] Script finished. Safe exiting...
[2026-06-12 02:46:55,056.056 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 02:46:55,059.059 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 02:46:55,062.062 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 02:46:57,102.102 INFO    ] ================================================
[2026-06-12 02:46:57,118.118 INFO    ] Launching Daemon at Fri Jun 12 02:46:57 IST 2026
[2026-06-12 02:46:57,129.129 INFO    ] ================================================
[2026-06-12 02:46:57,472.472 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 02:46:57
[2026-06-12 02:46:57,812.812 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 02:46:57,951.951 INFO    ] Initializing speech engine...
[2026-06-12 02:46:57,966.966 INFO    ] 2026-06-12 02:46:57
[2026-06-12 02:46:58,179.179 INFO    ] 2026-06-12 02:46:58
[2026-06-12 02:46:58,207.207 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 02:46:58,392.392 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 02:46:58,402.402 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 02:46:58,553.553 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 02:46:58,603.603 INFO    ] time= 12/06/2026 02:46:58
[2026-06-12 02:46:58,624.624 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 02:46:58,630.630 INFO    ] Checking for existing commands in stream...
[2026-06-12 02:46:58,697.697 INFO    ] No existing commands found in stream
[2026-06-12 02:47:03,712.712 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 02:47:03,715.715 INFO    ] Waiting 0.63 seconds before fallback handling...
[2026-06-12 02:47:04,715.715 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 02:47:04,717.717 INFO    ] Checking for system updates...
[2026-06-12 02:47:04,737.737 INFO    ] 200
[2026-06-12 02:47:04,739.739 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:47:04,772.772 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 02:47:04,773.773 INFO    ] No update needed
[2026-06-12 02:47:04,774.774 INFO    ] Checking for camera pi updates...
[2026-06-12 02:47:04,794.794 INFO    ] 200
[2026-06-12 02:47:04,795.795 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:47:04,818.818 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 02:47:04,956.956 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 02:47:04,957.957 INFO    ] No camera update needed
[2026-06-12 02:47:04,958.958 INFO    ] Script finished. Safe exiting...
[2026-06-12 02:47:04,960.960 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 02:47:04,963.963 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 02:47:04,965.965 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 02:47:07,004.004 INFO    ] ================================================
[2026-06-12 02:47:07,019.019 INFO    ] Launching Daemon at Fri Jun 12 02:47:07 IST 2026
[2026-06-12 02:47:07,030.030 INFO    ] ================================================
[2026-06-12 02:47:07,359.359 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 02:47:07
[2026-06-12 02:47:07,672.672 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 02:47:07,804.804 INFO    ] Initializing speech engine...
[2026-06-12 02:47:07,812.812 INFO    ] 2026-06-12 02:47:07
[2026-06-12 02:47:08,026.026 INFO    ] 2026-06-12 02:47:08
[2026-06-12 02:47:08,056.056 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 02:47:08,243.243 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 02:47:08,251.251 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 02:47:08,382.382 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 02:47:08,450.450 INFO    ] time= 12/06/2026 02:47:08
[2026-06-12 02:47:08,474.474 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 02:47:08,476.476 INFO    ] Checking for existing commands in stream...
[2026-06-12 02:47:08,546.546 INFO    ] No existing commands found in stream
[2026-06-12 02:47:13,557.557 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 02:47:13,560.560 INFO    ] Waiting 0.58 seconds before fallback handling...
[2026-06-12 02:47:14,510.510 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 02:47:14,512.512 INFO    ] Checking for system updates...
[2026-06-12 02:47:14,536.536 INFO    ] 200
[2026-06-12 02:47:14,537.537 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:47:14,567.567 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 02:47:14,569.569 INFO    ] No update needed
[2026-06-12 02:47:14,570.570 INFO    ] Checking for camera pi updates...
[2026-06-12 02:47:14,589.589 INFO    ] 200
[2026-06-12 02:47:14,591.591 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:47:14,616.616 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 02:47:14,661.661 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 02:47:14,662.662 INFO    ] No camera update needed
[2026-06-12 02:47:14,663.663 INFO    ] Script finished. Safe exiting...
[2026-06-12 02:47:14,665.665 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 02:47:14,668.668 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 02:47:14,670.670 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 02:47:16,708.708 INFO    ] ================================================
[2026-06-12 02:47:16,724.724 INFO    ] Launching Daemon at Fri Jun 12 02:47:16 IST 2026
[2026-06-12 02:47:16,735.735 INFO    ] ================================================
[2026-06-12 02:47:17,072.072 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 02:47:17
[2026-06-12 02:47:17,386.386 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 02:47:17,530.530 INFO    ] Initializing speech engine...
[2026-06-12 02:47:17,535.535 INFO    ] 2026-06-12 02:47:17
[2026-06-12 02:47:17,743.743 INFO    ] 2026-06-12 02:47:17
[2026-06-12 02:47:17,771.771 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 02:47:17,958.958 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 02:47:17,967.967 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 02:47:18,093.093 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 02:47:18,146.146 INFO    ] time= 12/06/2026 02:47:18
[2026-06-12 02:47:18,185.185 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 02:47:18,200.200 INFO    ] Checking for existing commands in stream...
[2026-06-12 02:47:18,268.268 INFO    ] No existing commands found in stream
[2026-06-12 02:47:23,277.277 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 02:47:23,279.279 INFO    ] Waiting 1.93 seconds before fallback handling...
[2026-06-12 02:47:25,593.593 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 02:47:25,595.595 INFO    ] Checking for system updates...
[2026-06-12 02:47:25,617.617 INFO    ] 200
[2026-06-12 02:47:25,618.618 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:47:25,649.649 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 02:47:25,650.650 INFO    ] No update needed
[2026-06-12 02:47:25,652.652 INFO    ] Checking for camera pi updates...
[2026-06-12 02:47:25,672.672 INFO    ] 200
[2026-06-12 02:47:25,674.674 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:47:25,698.698 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 02:47:25,737.737 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 02:47:25,739.739 INFO    ] No camera update needed
[2026-06-12 02:47:25,740.740 INFO    ] Script finished. Safe exiting...
[2026-06-12 02:47:25,741.741 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 02:47:25,744.744 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 02:47:25,747.747 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 02:47:27,787.787 INFO    ] ================================================
[2026-06-12 02:47:27,803.803 INFO    ] Launching Daemon at Fri Jun 12 02:47:27 IST 2026
[2026-06-12 02:47:27,814.814 INFO    ] ================================================
[2026-06-12 02:47:28,147.147 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 02:47:28
[2026-06-12 02:47:28,464.464 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 02:47:28,610.610 INFO    ] Initializing speech engine...
[2026-06-12 02:47:28,615.615 INFO    ] 2026-06-12 02:47:28
[2026-06-12 02:47:28,819.819 INFO    ] 2026-06-12 02:47:28
[2026-06-12 02:47:28,848.848 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 02:47:29,032.032 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 02:47:29,041.041 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 02:47:29,188.188 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 02:47:29,241.241 INFO    ] time= 12/06/2026 02:47:29
[2026-06-12 02:47:29,264.264 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 02:47:29,270.270 INFO    ] Checking for existing commands in stream...
[2026-06-12 02:47:29,336.336 INFO    ] No existing commands found in stream
[2026-06-12 02:47:34,346.346 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 02:47:34,348.348 INFO    ] Waiting 3.76 seconds before fallback handling...
[2026-06-12 02:47:38,427.427 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 02:47:38,428.428 INFO    ] Checking for system updates...
[2026-06-12 02:47:38,453.453 INFO    ] 200
[2026-06-12 02:47:38,455.455 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:47:38,488.488 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 02:47:38,489.489 INFO    ] No update needed
[2026-06-12 02:47:38,491.491 INFO    ] Checking for camera pi updates...
[2026-06-12 02:47:38,514.514 INFO    ] 200
[2026-06-12 02:47:38,516.516 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:47:38,542.542 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 02:47:38,593.593 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 02:47:38,596.596 INFO    ] No camera update needed
[2026-06-12 02:47:38,599.599 INFO    ] Script finished. Safe exiting...
[2026-06-12 02:47:38,601.601 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 02:47:38,608.608 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 02:47:38,614.614 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 02:47:40,648.648 INFO    ] ================================================
[2026-06-12 02:47:40,664.664 INFO    ] Launching Daemon at Fri Jun 12 02:47:40 IST 2026
[2026-06-12 02:47:40,675.675 INFO    ] ================================================
[2026-06-12 02:47:41,023.023 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 02:47:41
[2026-06-12 02:47:41,357.357 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 02:47:41,496.496 INFO    ] Initializing speech engine...
[2026-06-12 02:47:41,508.508 INFO    ] 2026-06-12 02:47:41
[2026-06-12 02:47:41,718.718 INFO    ] 2026-06-12 02:47:41
[2026-06-12 02:47:41,748.748 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 02:47:41,933.933 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 02:47:41,936.936 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 02:47:42,069.069 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 02:47:42,140.140 INFO    ] time= 12/06/2026 02:47:42
[2026-06-12 02:47:42,165.165 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 02:47:42,171.171 INFO    ] Checking for existing commands in stream...
[2026-06-12 02:47:42,238.238 INFO    ] No existing commands found in stream
[2026-06-12 02:47:47,257.257 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 02:47:47,261.261 INFO    ] Waiting 1.82 seconds before fallback handling...
[2026-06-12 02:47:49,472.472 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 02:47:49,474.474 INFO    ] Checking for system updates...
[2026-06-12 02:47:49,495.495 INFO    ] 200
[2026-06-12 02:47:49,496.496 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:47:49,531.531 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 02:47:49,532.532 INFO    ] No update needed
[2026-06-12 02:47:49,533.533 INFO    ] Checking for camera pi updates...
[2026-06-12 02:47:49,553.553 INFO    ] 200
[2026-06-12 02:47:49,554.554 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:47:49,577.577 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 02:47:49,620.620 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 02:47:49,621.621 INFO    ] No camera update needed
[2026-06-12 02:47:49,623.623 INFO    ] Script finished. Safe exiting...
[2026-06-12 02:47:49,624.624 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 02:47:49,627.627 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 02:47:49,629.629 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 02:47:51,668.668 INFO    ] ================================================
[2026-06-12 02:47:51,683.683 INFO    ] Launching Daemon at Fri Jun 12 02:47:51 IST 2026
[2026-06-12 02:47:51,693.693 INFO    ] ================================================
[2026-06-12 02:47:52,049.049 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 02:47:52
[2026-06-12 02:47:52,361.361 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 02:47:52,491.491 INFO    ] Initializing speech engine...
[2026-06-12 02:47:52,500.500 INFO    ] 2026-06-12 02:47:52
[2026-06-12 02:47:52,715.715 INFO    ] 2026-06-12 02:47:52
[2026-06-12 02:47:52,744.744 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 02:47:52,929.929 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 02:47:52,932.932 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 02:47:53,070.070 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 02:47:53,134.134 INFO    ] time= 12/06/2026 02:47:53
[2026-06-12 02:47:53,162.162 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 02:47:53,169.169 INFO    ] Checking for existing commands in stream...
[2026-06-12 02:47:53,237.237 INFO    ] No existing commands found in stream
[2026-06-12 02:47:58,251.251 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 02:47:58,254.254 INFO    ] Waiting 1.34 seconds before fallback handling...
[2026-06-12 02:47:59,978.978 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 02:47:59,979.979 INFO    ] Checking for system updates...
[2026-06-12 02:48:00,000.000 INFO    ] 200
[2026-06-12 02:48:00,001.001 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:48:00,036.036 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 02:48:00,037.037 INFO    ] No update needed
[2026-06-12 02:48:00,038.038 INFO    ] Checking for camera pi updates...
[2026-06-12 02:48:00,058.058 INFO    ] 200
[2026-06-12 02:48:00,059.059 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:48:00,084.084 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 02:48:00,139.139 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 02:48:00,140.140 INFO    ] No camera update needed
[2026-06-12 02:48:00,141.141 INFO    ] Script finished. Safe exiting...
[2026-06-12 02:48:00,143.143 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 02:48:00,145.145 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 02:48:00,148.148 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 02:48:02,183.183 INFO    ] ================================================
[2026-06-12 02:48:02,197.197 INFO    ] Launching Daemon at Fri Jun 12 02:48:02 IST 2026
[2026-06-12 02:48:02,204.204 INFO    ] ================================================
[2026-06-12 02:48:02,522.522 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 02:48:02
[2026-06-12 02:48:02,835.835 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 02:48:02,968.968 INFO    ] Initializing speech engine...
[2026-06-12 02:48:02,973.973 INFO    ] 2026-06-12 02:48:02
[2026-06-12 02:48:03,199.199 INFO    ] 2026-06-12 02:48:03
[2026-06-12 02:48:03,231.231 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 02:48:03,413.413 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 02:48:03,417.417 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 02:48:03,532.532 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 02:48:03,533.533 INFO    ] time= 12/06/2026 02:48:03
[2026-06-12 02:48:03,535.535 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 02:48:03,536.536 INFO    ] Checking for existing commands in stream...
[2026-06-12 02:48:03,586.586 INFO    ] No existing commands found in stream
[2026-06-12 02:48:08,596.596 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 02:48:08,599.599 INFO    ] Waiting 1.52 seconds before fallback handling...
[2026-06-12 02:48:10,492.492 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 02:48:10,493.493 INFO    ] Checking for system updates...
[2026-06-12 02:48:10,514.514 INFO    ] 200
[2026-06-12 02:48:10,515.515 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:48:10,548.548 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 02:48:10,549.549 INFO    ] No update needed
[2026-06-12 02:48:10,550.550 INFO    ] Checking for camera pi updates...
[2026-06-12 02:48:10,570.570 INFO    ] 200
[2026-06-12 02:48:10,571.571 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:48:10,595.595 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 02:48:10,646.646 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 02:48:10,647.647 INFO    ] No camera update needed
[2026-06-12 02:48:10,648.648 INFO    ] Script finished. Safe exiting...
[2026-06-12 02:48:10,650.650 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 02:48:10,654.654 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 02:48:10,657.657 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 02:48:12,697.697 INFO    ] ================================================
[2026-06-12 02:48:12,712.712 INFO    ] Launching Daemon at Fri Jun 12 02:48:12 IST 2026
[2026-06-12 02:48:12,723.723 INFO    ] ================================================
[2026-06-12 02:48:13,049.049 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 02:48:13
[2026-06-12 02:48:13,361.361 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 02:48:13,494.494 INFO    ] Initializing speech engine...
[2026-06-12 02:48:13,502.502 INFO    ] 2026-06-12 02:48:13
[2026-06-12 02:48:13,716.716 INFO    ] 2026-06-12 02:48:13
[2026-06-12 02:48:13,745.745 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 02:48:13,869.869 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 02:48:13,922.922 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 02:48:14,065.065 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 02:48:14,137.137 INFO    ] time= 12/06/2026 02:48:14
[2026-06-12 02:48:14,165.165 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 02:48:14,172.172 INFO    ] Checking for existing commands in stream...
[2026-06-12 02:48:14,239.239 INFO    ] No existing commands found in stream
[2026-06-12 02:48:19,248.248 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 02:48:19,251.251 INFO    ] Waiting 0.11 seconds before fallback handling...
[2026-06-12 02:48:19,713.713 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 02:48:19,714.714 INFO    ] Checking for system updates...
[2026-06-12 02:48:19,735.735 INFO    ] 200
[2026-06-12 02:48:19,736.736 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:48:19,766.766 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 02:48:19,768.768 INFO    ] No update needed
[2026-06-12 02:48:19,769.769 INFO    ] Checking for camera pi updates...
[2026-06-12 02:48:19,788.788 INFO    ] 200
[2026-06-12 02:48:19,790.790 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:48:19,813.813 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 02:48:19,857.857 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 02:48:19,858.858 INFO    ] No camera update needed
[2026-06-12 02:48:19,860.860 INFO    ] Script finished. Safe exiting...
[2026-06-12 02:48:19,861.861 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 02:48:19,864.864 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 02:48:19,867.867 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 02:48:21,905.905 INFO    ] ================================================
[2026-06-12 02:48:21,920.920 INFO    ] Launching Daemon at Fri Jun 12 02:48:21 IST 2026
[2026-06-12 02:48:21,931.931 INFO    ] ================================================
[2026-06-12 02:48:22,273.273 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 02:48:22
[2026-06-12 02:48:22,590.590 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 02:48:22,722.722 INFO    ] Initializing speech engine...
[2026-06-12 02:48:22,726.726 INFO    ] 2026-06-12 02:48:22
[2026-06-12 02:48:22,942.942 INFO    ] 2026-06-12 02:48:22
[2026-06-12 02:48:22,971.971 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 02:48:23,154.154 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 02:48:23,163.163 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 02:48:23,309.309 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 02:48:23,362.362 INFO    ] time= 12/06/2026 02:48:23
[2026-06-12 02:48:23,385.385 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 02:48:23,391.391 INFO    ] Checking for existing commands in stream...
[2026-06-12 02:48:23,458.458 INFO    ] No existing commands found in stream
[2026-06-12 02:48:28,467.467 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 02:48:28,470.470 INFO    ] Waiting 0.79 seconds before fallback handling...
[2026-06-12 02:48:29,651.651 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 02:48:29,653.653 INFO    ] Checking for system updates...
[2026-06-12 02:48:29,676.676 INFO    ] 200
[2026-06-12 02:48:29,677.677 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:48:29,710.710 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 02:48:29,712.712 INFO    ] No update needed
[2026-06-12 02:48:29,714.714 INFO    ] Checking for camera pi updates...
[2026-06-12 02:48:29,733.733 INFO    ] 200
[2026-06-12 02:48:29,735.735 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:48:29,760.760 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 02:48:29,805.805 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 02:48:29,806.806 INFO    ] No camera update needed
[2026-06-12 02:48:29,808.808 INFO    ] Script finished. Safe exiting...
[2026-06-12 02:48:29,809.809 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 02:48:29,812.812 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 02:48:29,815.815 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 02:48:31,848.848 INFO    ] ================================================
[2026-06-12 02:48:31,858.858 INFO    ] Launching Daemon at Fri Jun 12 02:48:31 IST 2026
[2026-06-12 02:48:31,865.865 INFO    ] ================================================
[2026-06-12 02:48:32,192.192 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 02:48:32
[2026-06-12 02:48:32,507.507 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 02:48:32,651.651 INFO    ] Initializing speech engine...
[2026-06-12 02:48:32,656.656 INFO    ] 2026-06-12 02:48:32
[2026-06-12 02:48:32,859.859 INFO    ] 2026-06-12 02:48:32
[2026-06-12 02:48:32,887.887 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 02:48:33,070.070 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 02:48:33,078.078 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 02:48:33,207.207 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 02:48:33,273.273 INFO    ] time= 12/06/2026 02:48:33
[2026-06-12 02:48:33,297.297 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 02:48:33,304.304 INFO    ] Checking for existing commands in stream...
[2026-06-12 02:48:33,371.371 INFO    ] No existing commands found in stream
[2026-06-12 02:48:38,385.385 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 02:48:38,388.388 INFO    ] Waiting 1.63 seconds before fallback handling...
[2026-06-12 02:48:40,352.352 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 02:48:40,354.354 INFO    ] Checking for system updates...
[2026-06-12 02:48:40,375.375 INFO    ] 200
[2026-06-12 02:48:40,376.376 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:48:40,409.409 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 02:48:40,410.410 INFO    ] No update needed
[2026-06-12 02:48:40,411.411 INFO    ] Checking for camera pi updates...
[2026-06-12 02:48:40,433.433 INFO    ] 200
[2026-06-12 02:48:40,434.434 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:48:40,460.460 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 02:48:40,501.501 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 02:48:40,502.502 INFO    ] No camera update needed
[2026-06-12 02:48:40,504.504 INFO    ] Script finished. Safe exiting...
[2026-06-12 02:48:40,505.505 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 02:48:40,508.508 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 02:48:40,511.511 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 02:48:42,549.549 INFO    ] ================================================
[2026-06-12 02:48:42,564.564 INFO    ] Launching Daemon at Fri Jun 12 02:48:42 IST 2026
[2026-06-12 02:48:42,575.575 INFO    ] ================================================
[2026-06-12 02:48:42,932.932 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 02:48:42
[2026-06-12 02:48:43,271.271 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 02:48:43,426.426 INFO    ] Initializing speech engine...
[2026-06-12 02:48:43,430.430 INFO    ] 2026-06-12 02:48:43
[2026-06-12 02:48:43,635.635 INFO    ] 2026-06-12 02:48:43
[2026-06-12 02:48:43,666.666 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 02:48:43,843.843 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 02:48:43,861.861 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 02:48:44,020.020 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 02:48:44,060.060 INFO    ] time= 12/06/2026 02:48:44
[2026-06-12 02:48:44,125.125 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 02:48:44,141.141 INFO    ] Checking for existing commands in stream...
[2026-06-12 02:48:44,257.257 INFO    ] No existing commands found in stream
[2026-06-12 02:48:49,266.266 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 02:48:49,269.269 INFO    ] Waiting 1.98 seconds before fallback handling...
[2026-06-12 02:48:51,622.622 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 02:48:51,623.623 INFO    ] Checking for system updates...
[2026-06-12 02:48:51,655.655 INFO    ] 200
[2026-06-12 02:48:51,656.656 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:48:51,687.687 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 02:48:51,688.688 INFO    ] No update needed
[2026-06-12 02:48:51,689.689 INFO    ] Checking for camera pi updates...
[2026-06-12 02:48:51,712.712 INFO    ] 200
[2026-06-12 02:48:51,714.714 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:48:51,736.736 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 02:48:51,783.783 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 02:48:51,784.784 INFO    ] No camera update needed
[2026-06-12 02:48:51,786.786 INFO    ] Script finished. Safe exiting...
[2026-06-12 02:48:51,787.787 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 02:48:51,790.790 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 02:48:51,793.793 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 02:48:53,831.831 INFO    ] ================================================
[2026-06-12 02:48:53,846.846 INFO    ] Launching Daemon at Fri Jun 12 02:48:53 IST 2026
[2026-06-12 02:48:53,857.857 INFO    ] ================================================
[2026-06-12 02:48:54,187.187 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 02:48:54
[2026-06-12 02:48:54,498.498 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 02:48:54,641.641 INFO    ] Initializing speech engine...
[2026-06-12 02:48:54,645.645 INFO    ] 2026-06-12 02:48:54
[2026-06-12 02:48:54,847.847 INFO    ] 2026-06-12 02:48:54
[2026-06-12 02:48:54,876.876 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 02:48:54,998.998 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 02:48:55,061.061 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 02:48:55,199.199 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 02:48:55,263.263 INFO    ] time= 12/06/2026 02:48:55
[2026-06-12 02:48:55,290.290 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 02:48:55,297.297 INFO    ] Checking for existing commands in stream...
[2026-06-12 02:48:55,364.364 INFO    ] No existing commands found in stream
[2026-06-12 02:49:00,373.373 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 02:49:00,376.376 INFO    ] Waiting 3.05 seconds before fallback handling...
[2026-06-12 02:49:03,797.797 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 02:49:03,799.799 INFO    ] Checking for system updates...
[2026-06-12 02:49:03,819.819 INFO    ] 200
[2026-06-12 02:49:03,821.821 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:49:03,853.853 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 02:49:03,854.854 INFO    ] No update needed
[2026-06-12 02:49:03,856.856 INFO    ] Checking for camera pi updates...
[2026-06-12 02:49:03,875.875 INFO    ] 200
[2026-06-12 02:49:03,877.877 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:49:03,900.900 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 02:49:03,949.949 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 02:49:03,951.951 INFO    ] No camera update needed
[2026-06-12 02:49:03,952.952 INFO    ] Script finished. Safe exiting...
[2026-06-12 02:49:03,953.953 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 02:49:03,956.956 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 02:49:03,959.959 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 02:49:06,002.002 INFO    ] ================================================
[2026-06-12 02:49:06,017.017 INFO    ] Launching Daemon at Fri Jun 12 02:49:06 IST 2026
[2026-06-12 02:49:06,028.028 INFO    ] ================================================
[2026-06-12 02:49:06,343.343 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 02:49:06
[2026-06-12 02:49:06,655.655 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 02:49:06,787.787 INFO    ] Initializing speech engine...
[2026-06-12 02:49:06,796.796 INFO    ] 2026-06-12 02:49:06
[2026-06-12 02:49:07,018.018 INFO    ] 2026-06-12 02:49:06
[2026-06-12 02:49:07,048.048 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 02:49:07,179.179 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 02:49:07,216.216 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 02:49:07,385.385 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 02:49:07,452.452 INFO    ] time= 12/06/2026 02:49:07
[2026-06-12 02:49:07,489.489 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 02:49:07,491.491 INFO    ] Checking for existing commands in stream...
[2026-06-12 02:49:07,594.594 INFO    ] No existing commands found in stream
[2026-06-12 02:49:12,608.608 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 02:49:12,611.611 INFO    ] Waiting 0.24 seconds before fallback handling...
[2026-06-12 02:49:13,240.240 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 02:49:13,242.242 INFO    ] Checking for system updates...
[2026-06-12 02:49:13,262.262 INFO    ] 200
[2026-06-12 02:49:13,264.264 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:49:13,293.293 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 02:49:13,295.295 INFO    ] No update needed
[2026-06-12 02:49:13,296.296 INFO    ] Checking for camera pi updates...
[2026-06-12 02:49:13,318.318 INFO    ] 200
[2026-06-12 02:49:13,319.319 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:49:13,342.342 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 02:49:13,482.482 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 02:49:13,484.484 INFO    ] No camera update needed
[2026-06-12 02:49:13,488.488 INFO    ] Script finished. Safe exiting...
[2026-06-12 02:49:13,490.490 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 02:49:13,494.494 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 02:49:13,497.497 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 02:49:15,536.536 INFO    ] ================================================
[2026-06-12 02:49:15,551.551 INFO    ] Launching Daemon at Fri Jun 12 02:49:15 IST 2026
[2026-06-12 02:49:15,562.562 INFO    ] ================================================
[2026-06-12 02:49:15,898.898 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 02:49:15
[2026-06-12 02:49:16,216.216 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 02:49:16,353.353 INFO    ] Initializing speech engine...
[2026-06-12 02:49:16,366.366 INFO    ] 2026-06-12 02:49:16
[2026-06-12 02:49:16,584.584 INFO    ] 2026-06-12 02:49:16
[2026-06-12 02:49:16,615.615 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 02:49:16,822.822 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 02:49:16,826.826 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 02:49:16,964.964 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 02:49:17,035.035 INFO    ] time= 12/06/2026 02:49:16
[2026-06-12 02:49:17,061.061 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 02:49:17,067.067 INFO    ] Checking for existing commands in stream...
[2026-06-12 02:49:17,137.137 INFO    ] No existing commands found in stream
[2026-06-12 02:49:22,148.148 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 02:49:22,151.151 INFO    ] Waiting 1.50 seconds before fallback handling...
[2026-06-12 02:49:24,042.042 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 02:49:24,044.044 INFO    ] Checking for system updates...
[2026-06-12 02:49:24,065.065 INFO    ] 200
[2026-06-12 02:49:24,066.066 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:49:24,097.097 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 02:49:24,098.098 INFO    ] No update needed
[2026-06-12 02:49:24,100.100 INFO    ] Checking for camera pi updates...
[2026-06-12 02:49:24,120.120 INFO    ] 200
[2026-06-12 02:49:24,122.122 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:49:24,146.146 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 02:49:24,199.199 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 02:49:24,200.200 INFO    ] No camera update needed
[2026-06-12 02:49:24,202.202 INFO    ] Script finished. Safe exiting...
[2026-06-12 02:49:24,203.203 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 02:49:24,206.206 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 02:49:24,209.209 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 02:49:26,249.249 INFO    ] ================================================
[2026-06-12 02:49:26,264.264 INFO    ] Launching Daemon at Fri Jun 12 02:49:26 IST 2026
[2026-06-12 02:49:26,275.275 INFO    ] ================================================
[2026-06-12 02:49:26,622.622 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 02:49:26
[2026-06-12 02:49:26,935.935 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 02:49:27,065.065 INFO    ] Initializing speech engine...
[2026-06-12 02:49:27,073.073 INFO    ] 2026-06-12 02:49:27
[2026-06-12 02:49:27,284.284 INFO    ] 2026-06-12 02:49:27
[2026-06-12 02:49:27,312.312 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 02:49:27,496.496 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 02:49:27,504.504 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 02:49:27,631.631 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 02:49:27,688.688 INFO    ] time= 12/06/2026 02:49:27
[2026-06-12 02:49:27,717.717 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 02:49:27,727.727 INFO    ] Checking for existing commands in stream...
[2026-06-12 02:49:27,799.799 INFO    ] No existing commands found in stream
[2026-06-12 02:49:32,808.808 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 02:49:32,811.811 INFO    ] Waiting 0.22 seconds before fallback handling...
[2026-06-12 02:49:33,400.400 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 02:49:33,402.402 INFO    ] Checking for system updates...
[2026-06-12 02:49:33,423.423 INFO    ] 200
[2026-06-12 02:49:33,424.424 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:49:33,455.455 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 02:49:33,456.456 INFO    ] No update needed
[2026-06-12 02:49:33,457.457 INFO    ] Checking for camera pi updates...
[2026-06-12 02:49:33,478.478 INFO    ] 200
[2026-06-12 02:49:33,479.479 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:49:33,503.503 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 02:49:33,545.545 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 02:49:33,547.547 INFO    ] No camera update needed
[2026-06-12 02:49:33,548.548 INFO    ] Script finished. Safe exiting...
[2026-06-12 02:49:33,549.549 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 02:49:33,552.552 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 02:49:33,559.559 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 02:49:35,598.598 INFO    ] ================================================
[2026-06-12 02:49:35,614.614 INFO    ] Launching Daemon at Fri Jun 12 02:49:35 IST 2026
[2026-06-12 02:49:35,625.625 INFO    ] ================================================
[2026-06-12 02:49:35,994.994 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 02:49:35
[2026-06-12 02:49:36,334.334 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 02:49:36,486.486 INFO    ] Initializing speech engine...
[2026-06-12 02:49:36,493.493 INFO    ] 2026-06-12 02:49:36
[2026-06-12 02:49:36,699.699 INFO    ] 2026-06-12 02:49:36
[2026-06-12 02:49:36,728.728 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 02:49:36,914.914 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 02:49:36,924.924 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 02:49:37,074.074 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 02:49:37,123.123 INFO    ] time= 12/06/2026 02:49:37
[2026-06-12 02:49:37,145.145 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 02:49:37,152.152 INFO    ] Checking for existing commands in stream...
[2026-06-12 02:49:37,219.219 INFO    ] No existing commands found in stream
[2026-06-12 02:49:42,233.233 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 02:49:42,236.236 INFO    ] Waiting 1.64 seconds before fallback handling...
[2026-06-12 02:49:44,263.263 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 02:49:44,264.264 INFO    ] Checking for system updates...
[2026-06-12 02:49:44,286.286 INFO    ] 200
[2026-06-12 02:49:44,287.287 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:49:44,320.320 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 02:49:44,322.322 INFO    ] No update needed
[2026-06-12 02:49:44,324.324 INFO    ] Checking for camera pi updates...
[2026-06-12 02:49:44,344.344 INFO    ] 200
[2026-06-12 02:49:44,345.345 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:49:44,369.369 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 02:49:44,414.414 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 02:49:44,416.416 INFO    ] No camera update needed
[2026-06-12 02:49:44,417.417 INFO    ] Script finished. Safe exiting...
[2026-06-12 02:49:44,419.419 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 02:49:44,422.422 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 02:49:44,425.425 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 02:49:46,463.463 INFO    ] ================================================
[2026-06-12 02:49:46,478.478 INFO    ] Launching Daemon at Fri Jun 12 02:49:46 IST 2026
[2026-06-12 02:49:46,489.489 INFO    ] ================================================
[2026-06-12 02:49:46,871.871 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 02:49:46
[2026-06-12 02:49:47,211.211 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 02:49:47,367.367 INFO    ] Initializing speech engine...
[2026-06-12 02:49:47,375.375 INFO    ] 2026-06-12 02:49:47
[2026-06-12 02:49:47,580.580 INFO    ] 2026-06-12 02:49:47
[2026-06-12 02:49:47,609.609 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 02:49:47,812.812 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 02:49:47,821.821 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 02:49:47,999.999 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 02:49:48,043.043 INFO    ] time= 12/06/2026 02:49:48
[2026-06-12 02:49:48,066.066 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 02:49:48,073.073 INFO    ] Checking for existing commands in stream...
[2026-06-12 02:49:48,143.143 INFO    ] No existing commands found in stream
[2026-06-12 02:49:53,154.154 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 02:49:53,157.157 INFO    ] Waiting 2.82 seconds before fallback handling...
[2026-06-12 02:49:56,323.323 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 02:49:56,325.325 INFO    ] Checking for system updates...
[2026-06-12 02:49:56,345.345 INFO    ] 200
[2026-06-12 02:49:56,347.347 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:49:56,377.377 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 02:49:56,378.378 INFO    ] No update needed
[2026-06-12 02:49:56,379.379 INFO    ] Checking for camera pi updates...
[2026-06-12 02:49:56,400.400 INFO    ] 200
[2026-06-12 02:49:56,402.402 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:49:56,425.425 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 02:49:56,468.468 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 02:49:56,469.469 INFO    ] No camera update needed
[2026-06-12 02:49:56,471.471 INFO    ] Script finished. Safe exiting...
[2026-06-12 02:49:56,472.472 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 02:49:56,475.475 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 02:49:56,478.478 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 02:49:58,502.502 INFO    ] ================================================
[2026-06-12 02:49:58,512.512 INFO    ] Launching Daemon at Fri Jun 12 02:49:58 IST 2026
[2026-06-12 02:49:58,518.518 INFO    ] ================================================
[2026-06-12 02:49:58,843.843 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 02:49:58
[2026-06-12 02:49:59,173.173 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 02:49:59,310.310 INFO    ] Initializing speech engine...
[2026-06-12 02:49:59,315.315 INFO    ] 2026-06-12 02:49:59
[2026-06-12 02:49:59,545.545 INFO    ] 2026-06-12 02:49:59
[2026-06-12 02:49:59,576.576 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 02:49:59,768.768 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 02:49:59,772.772 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 02:49:59,927.927 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 02:50:00,008.008 INFO    ] time= 12/06/2026 02:49:59
[2026-06-12 02:50:00,020.020 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 02:50:00,026.026 INFO    ] Checking for existing commands in stream...
[2026-06-12 02:50:00,092.092 INFO    ] No existing commands found in stream
[2026-06-12 02:50:05,103.103 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 02:50:05,106.106 INFO    ] Waiting 1.82 seconds before fallback handling...
[2026-06-12 02:50:09,023.023 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 02:50:09,026.026 INFO    ] Checking for system updates...
[2026-06-12 02:50:09,063.063 INFO    ] 200
[2026-06-12 02:50:09,066.066 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:50:09,119.119 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 02:50:09,122.122 INFO    ] No update needed
[2026-06-12 02:50:09,124.124 INFO    ] Checking for camera pi updates...
[2026-06-12 02:50:09,146.146 INFO    ] 200
[2026-06-12 02:50:09,147.147 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:50:09,170.170 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 02:50:09,217.217 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 02:50:09,218.218 INFO    ] No camera update needed
[2026-06-12 02:50:09,219.219 INFO    ] Script finished. Safe exiting...
[2026-06-12 02:50:09,221.221 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 02:50:09,224.224 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 02:50:09,226.226 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 02:50:11,264.264 INFO    ] ================================================
[2026-06-12 02:50:11,280.280 INFO    ] Launching Daemon at Fri Jun 12 02:50:11 IST 2026
[2026-06-12 02:50:11,292.292 INFO    ] ================================================
[2026-06-12 02:50:11,639.639 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 02:50:11
[2026-06-12 02:50:11,950.950 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 02:50:12,079.079 INFO    ] Initializing speech engine...
[2026-06-12 02:50:12,087.087 INFO    ] 2026-06-12 02:50:12
[2026-06-12 02:50:12,297.297 INFO    ] 2026-06-12 02:50:12
[2026-06-12 02:50:12,326.326 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 02:50:12,458.458 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 02:50:12,511.511 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 02:50:12,645.645 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 02:50:12,702.702 INFO    ] time= 12/06/2026 02:50:12
[2026-06-12 02:50:12,736.736 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 02:50:12,746.746 INFO    ] Checking for existing commands in stream...
[2026-06-12 02:50:12,812.812 INFO    ] No existing commands found in stream
[2026-06-12 02:50:17,821.821 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 02:50:17,824.824 INFO    ] Waiting 3.30 seconds before fallback handling...
[2026-06-12 02:50:21,450.450 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 02:50:21,452.452 INFO    ] Checking for system updates...
[2026-06-12 02:50:21,472.472 INFO    ] 200
[2026-06-12 02:50:21,473.473 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:50:21,503.503 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 02:50:21,504.504 INFO    ] No update needed
[2026-06-12 02:50:21,506.506 INFO    ] Checking for camera pi updates...
[2026-06-12 02:50:21,526.526 INFO    ] 200
[2026-06-12 02:50:21,528.528 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:50:21,552.552 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 02:50:21,595.595 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 02:50:21,596.596 INFO    ] No camera update needed
[2026-06-12 02:50:21,597.597 INFO    ] Script finished. Safe exiting...
[2026-06-12 02:50:21,598.598 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 02:50:21,601.601 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 02:50:21,604.604 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 02:50:23,645.645 INFO    ] ================================================
[2026-06-12 02:50:23,661.661 INFO    ] Launching Daemon at Fri Jun 12 02:50:23 IST 2026
[2026-06-12 02:50:23,673.673 INFO    ] ================================================
[2026-06-12 02:50:24,038.038 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 02:50:24
[2026-06-12 02:50:24,354.354 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 02:50:24,499.499 INFO    ] Initializing speech engine...
[2026-06-12 02:50:24,505.505 INFO    ] 2026-06-12 02:50:24
[2026-06-12 02:50:24,707.707 INFO    ] 2026-06-12 02:50:24
[2026-06-12 02:50:24,737.737 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 02:50:24,864.864 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 02:50:24,922.922 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 02:50:25,059.059 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 02:50:25,126.126 INFO    ] time= 12/06/2026 02:50:25
[2026-06-12 02:50:25,151.151 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 02:50:25,157.157 INFO    ] Checking for existing commands in stream...
[2026-06-12 02:50:25,223.223 INFO    ] No existing commands found in stream
[2026-06-12 02:50:30,232.232 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 02:50:30,235.235 INFO    ] Waiting 3.58 seconds before fallback handling...
[2026-06-12 02:50:34,153.153 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 02:50:34,155.155 INFO    ] Checking for system updates...
[2026-06-12 02:50:34,175.175 INFO    ] 200
[2026-06-12 02:50:34,177.177 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:50:34,210.210 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 02:50:34,212.212 INFO    ] No update needed
[2026-06-12 02:50:34,213.213 INFO    ] Checking for camera pi updates...
[2026-06-12 02:50:34,233.233 INFO    ] 200
[2026-06-12 02:50:34,234.234 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:50:34,257.257 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 02:50:34,302.302 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 02:50:34,303.303 INFO    ] No camera update needed
[2026-06-12 02:50:34,305.305 INFO    ] Script finished. Safe exiting...
[2026-06-12 02:50:34,306.306 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 02:50:34,309.309 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 02:50:34,312.312 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 02:50:36,353.353 INFO    ] ================================================
[2026-06-12 02:50:36,369.369 INFO    ] Launching Daemon at Fri Jun 12 02:50:36 IST 2026
[2026-06-12 02:50:36,381.381 INFO    ] ================================================
[2026-06-12 02:50:36,765.765 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 02:50:36
[2026-06-12 02:50:37,100.100 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 02:50:37,250.250 INFO    ] Initializing speech engine...
[2026-06-12 02:50:37,256.256 INFO    ] 2026-06-12 02:50:37
[2026-06-12 02:50:37,466.466 INFO    ] 2026-06-12 02:50:37
[2026-06-12 02:50:37,495.495 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 02:50:37,619.619 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 02:50:37,678.678 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 02:50:37,830.830 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 02:50:37,893.893 INFO    ] time= 12/06/2026 02:50:37
[2026-06-12 02:50:37,918.918 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 02:50:37,925.925 INFO    ] Checking for existing commands in stream...
[2026-06-12 02:50:37,992.992 INFO    ] No existing commands found in stream
[2026-06-12 02:50:43,002.002 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 02:50:43,005.005 INFO    ] Waiting 2.77 seconds before fallback handling...
[2026-06-12 02:50:46,142.142 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 02:50:46,143.143 INFO    ] Checking for system updates...
[2026-06-12 02:50:46,164.164 INFO    ] 200
[2026-06-12 02:50:46,165.165 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:50:46,200.200 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 02:50:46,202.202 INFO    ] No update needed
[2026-06-12 02:50:46,203.203 INFO    ] Checking for camera pi updates...
[2026-06-12 02:50:46,224.224 INFO    ] 200
[2026-06-12 02:50:46,225.225 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:50:46,255.255 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 02:50:46,295.295 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 02:50:46,297.297 INFO    ] No camera update needed
[2026-06-12 02:50:46,298.298 INFO    ] Script finished. Safe exiting...
[2026-06-12 02:50:46,299.299 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 02:50:46,303.303 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 02:50:46,306.306 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 02:50:48,345.345 INFO    ] ================================================
[2026-06-12 02:50:48,361.361 INFO    ] Launching Daemon at Fri Jun 12 02:50:48 IST 2026
[2026-06-12 02:50:48,373.373 INFO    ] ================================================
[2026-06-12 02:50:48,743.743 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 02:50:48
[2026-06-12 02:50:49,056.056 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 02:50:49,199.199 INFO    ] Initializing speech engine...
[2026-06-12 02:50:49,204.204 INFO    ] 2026-06-12 02:50:49
[2026-06-12 02:50:49,410.410 INFO    ] 2026-06-12 02:50:49
[2026-06-12 02:50:49,439.439 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 02:50:49,619.619 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 02:50:49,628.628 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 02:50:49,762.762 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 02:50:49,824.824 INFO    ] time= 12/06/2026 02:50:49
[2026-06-12 02:50:49,858.858 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 02:50:49,860.860 INFO    ] Checking for existing commands in stream...
[2026-06-12 02:50:49,932.932 INFO    ] No existing commands found in stream
[2026-06-12 02:50:54,941.941 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 02:50:54,944.944 INFO    ] Waiting 1.42 seconds before fallback handling...
[2026-06-12 02:50:56,786.786 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 02:50:56,788.788 INFO    ] Checking for system updates...
[2026-06-12 02:50:56,828.828 INFO    ] 200
[2026-06-12 02:50:56,830.830 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:50:56,883.883 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 02:50:56,885.885 INFO    ] No update needed
[2026-06-12 02:50:56,887.887 INFO    ] Checking for camera pi updates...
[2026-06-12 02:50:56,913.913 INFO    ] 200
[2026-06-12 02:50:56,914.914 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:50:56,939.939 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 02:50:56,980.980 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 02:50:56,982.982 INFO    ] No camera update needed
[2026-06-12 02:50:56,983.983 INFO    ] Script finished. Safe exiting...
[2026-06-12 02:50:56,984.984 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 02:50:56,987.987 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 02:50:56,990.990 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 02:50:59,030.030 INFO    ] ================================================
[2026-06-12 02:50:59,045.045 INFO    ] Launching Daemon at Fri Jun 12 02:50:59 IST 2026
[2026-06-12 02:50:59,057.057 INFO    ] ================================================
[2026-06-12 02:50:59,403.403 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 02:50:59
[2026-06-12 02:50:59,715.715 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 02:50:59,852.852 INFO    ] Initializing speech engine...
[2026-06-12 02:50:59,860.860 INFO    ] 2026-06-12 02:50:59
[2026-06-12 02:51:00,066.066 INFO    ] 2026-06-12 02:51:00
[2026-06-12 02:51:00,094.094 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 02:51:00,216.216 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 02:51:00,278.278 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 02:51:00,410.410 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 02:51:00,470.470 INFO    ] time= 12/06/2026 02:51:00
[2026-06-12 02:51:00,507.507 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 02:51:00,509.509 INFO    ] Checking for existing commands in stream...
[2026-06-12 02:51:00,580.580 INFO    ] No existing commands found in stream
[2026-06-12 02:51:05,590.590 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 02:51:05,592.592 INFO    ] Waiting 1.51 seconds before fallback handling...
[2026-06-12 02:51:07,529.529 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 02:51:07,532.532 INFO    ] Checking for system updates...
[2026-06-12 02:51:07,569.569 INFO    ] 200
[2026-06-12 02:51:07,572.572 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:51:07,633.633 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 02:51:07,636.636 INFO    ] No update needed
[2026-06-12 02:51:07,639.639 INFO    ] Checking for camera pi updates...
[2026-06-12 02:51:07,660.660 INFO    ] 200
[2026-06-12 02:51:07,661.661 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:51:07,685.685 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 02:51:07,739.739 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 02:51:07,741.741 INFO    ] No camera update needed
[2026-06-12 02:51:07,742.742 INFO    ] Script finished. Safe exiting...
[2026-06-12 02:51:07,744.744 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 02:51:07,747.747 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 02:51:07,750.750 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 02:51:09,790.790 INFO    ] ================================================
[2026-06-12 02:51:09,807.807 INFO    ] Launching Daemon at Fri Jun 12 02:51:09 IST 2026
[2026-06-12 02:51:09,818.818 INFO    ] ================================================
[2026-06-12 02:51:10,154.154 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 02:51:10
[2026-06-12 02:51:10,465.465 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 02:51:10,595.595 INFO    ] Initializing speech engine...
[2026-06-12 02:51:10,599.599 INFO    ] 2026-06-12 02:51:10
[2026-06-12 02:51:10,815.815 INFO    ] 2026-06-12 02:51:10
[2026-06-12 02:51:10,843.843 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 02:51:11,118.118 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 02:51:11,157.157 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 02:51:11,318.318 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 02:51:11,322.322 INFO    ] time= 12/06/2026 02:51:11
[2026-06-12 02:51:11,339.339 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 02:51:11,349.349 INFO    ] Checking for existing commands in stream...
[2026-06-12 02:51:11,445.445 INFO    ] No existing commands found in stream
[2026-06-12 02:51:16,455.455 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 02:51:16,458.458 INFO    ] Waiting 3.75 seconds before fallback handling...
[2026-06-12 02:51:20,580.580 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 02:51:20,582.582 INFO    ] Checking for system updates...
[2026-06-12 02:51:20,603.603 INFO    ] 200
[2026-06-12 02:51:20,605.605 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:51:20,635.635 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 02:51:20,636.636 INFO    ] No update needed
[2026-06-12 02:51:20,638.638 INFO    ] Checking for camera pi updates...
[2026-06-12 02:51:20,658.658 INFO    ] 200
[2026-06-12 02:51:20,659.659 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:51:20,683.683 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 02:51:20,829.829 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 02:51:20,830.830 INFO    ] No camera update needed
[2026-06-12 02:51:20,832.832 INFO    ] Script finished. Safe exiting...
[2026-06-12 02:51:20,833.833 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 02:51:20,836.836 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 02:51:20,838.838 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 02:51:22,878.878 INFO    ] ================================================
[2026-06-12 02:51:22,893.893 INFO    ] Launching Daemon at Fri Jun 12 02:51:22 IST 2026
[2026-06-12 02:51:22,905.905 INFO    ] ================================================
[2026-06-12 02:51:23,292.292 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 02:51:23
[2026-06-12 02:51:23,630.630 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 02:51:23,779.779 INFO    ] Initializing speech engine...
[2026-06-12 02:51:23,784.784 INFO    ] 2026-06-12 02:51:23
[2026-06-12 02:51:23,994.994 INFO    ] 2026-06-12 02:51:23
[2026-06-12 02:51:24,022.022 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 02:51:24,161.161 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 02:51:24,209.209 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 02:51:24,344.344 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 02:51:24,401.401 INFO    ] time= 12/06/2026 02:51:24
[2026-06-12 02:51:24,439.439 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 02:51:24,445.445 INFO    ] Checking for existing commands in stream...
[2026-06-12 02:51:24,512.512 INFO    ] No existing commands found in stream
[2026-06-12 02:51:29,521.521 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 02:51:29,524.524 INFO    ] Waiting 1.78 seconds before fallback handling...
[2026-06-12 02:51:31,662.662 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 02:51:31,664.664 INFO    ] Checking for system updates...
[2026-06-12 02:51:31,692.692 INFO    ] 200
[2026-06-12 02:51:31,694.694 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:51:31,729.729 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 02:51:31,731.731 INFO    ] No update needed
[2026-06-12 02:51:31,732.732 INFO    ] Checking for camera pi updates...
[2026-06-12 02:51:31,755.755 INFO    ] 200
[2026-06-12 02:51:31,757.757 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:51:31,785.785 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 02:51:31,834.834 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 02:51:31,836.836 INFO    ] No camera update needed
[2026-06-12 02:51:31,837.837 INFO    ] Script finished. Safe exiting...
[2026-06-12 02:51:31,839.839 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 02:51:31,843.843 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 02:51:31,846.846 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 02:51:33,886.886 INFO    ] ================================================
[2026-06-12 02:51:33,903.903 INFO    ] Launching Daemon at Fri Jun 12 02:51:33 IST 2026
[2026-06-12 02:51:33,914.914 INFO    ] ================================================
[2026-06-12 02:51:34,246.246 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 02:51:34
[2026-06-12 02:51:34,557.557 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 02:51:34,698.698 INFO    ] Initializing speech engine...
[2026-06-12 02:51:34,706.706 INFO    ] 2026-06-12 02:51:34
[2026-06-12 02:51:34,922.922 INFO    ] 2026-06-12 02:51:34
[2026-06-12 02:51:34,953.953 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 02:51:35,149.149 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 02:51:35,157.157 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 02:51:35,295.295 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 02:51:35,346.346 INFO    ] time= 12/06/2026 02:51:35
[2026-06-12 02:51:35,396.396 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 02:51:35,402.402 INFO    ] Checking for existing commands in stream...
[2026-06-12 02:51:35,478.478 INFO    ] No existing commands found in stream
[2026-06-12 02:51:40,488.488 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 02:51:40,490.490 INFO    ] Waiting 2.59 seconds before fallback handling...
[2026-06-12 02:51:43,453.453 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 02:51:43,454.454 INFO    ] Checking for system updates...
[2026-06-12 02:51:43,475.475 INFO    ] 200
[2026-06-12 02:51:43,477.477 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:51:43,511.511 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 02:51:43,513.513 INFO    ] No update needed
[2026-06-12 02:51:43,514.514 INFO    ] Checking for camera pi updates...
[2026-06-12 02:51:43,534.534 INFO    ] 200
[2026-06-12 02:51:43,535.535 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:51:43,559.559 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 02:51:43,601.601 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 02:51:43,603.603 INFO    ] No camera update needed
[2026-06-12 02:51:43,604.604 INFO    ] Script finished. Safe exiting...
[2026-06-12 02:51:43,605.605 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 02:51:43,609.609 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 02:51:43,612.612 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 02:51:45,652.652 INFO    ] ================================================
[2026-06-12 02:51:45,668.668 INFO    ] Launching Daemon at Fri Jun 12 02:51:45 IST 2026
[2026-06-12 02:51:45,678.678 INFO    ] ================================================
[2026-06-12 02:51:46,023.023 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 02:51:46
[2026-06-12 02:51:46,335.335 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 02:51:46,478.478 INFO    ] Initializing speech engine...
[2026-06-12 02:51:46,483.483 INFO    ] 2026-06-12 02:51:46
[2026-06-12 02:51:46,686.686 INFO    ] 2026-06-12 02:51:46
[2026-06-12 02:51:46,715.715 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 02:51:46,851.851 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 02:51:46,899.899 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 02:51:47,036.036 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 02:51:47,090.090 INFO    ] time= 12/06/2026 02:51:47
[2026-06-12 02:51:47,124.124 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 02:51:47,129.129 INFO    ] Checking for existing commands in stream...
[2026-06-12 02:51:47,200.200 INFO    ] No existing commands found in stream
[2026-06-12 02:51:52,209.209 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 02:51:52,212.212 INFO    ] Waiting 0.82 seconds before fallback handling...
[2026-06-12 02:51:53,409.409 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 02:51:53,411.411 INFO    ] Checking for system updates...
[2026-06-12 02:51:53,431.431 INFO    ] 200
[2026-06-12 02:51:53,433.433 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:51:53,465.465 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 02:51:53,466.466 INFO    ] No update needed
[2026-06-12 02:51:53,467.467 INFO    ] Checking for camera pi updates...
[2026-06-12 02:51:53,487.487 INFO    ] 200
[2026-06-12 02:51:53,488.488 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:51:53,513.513 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 02:51:53,555.555 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 02:51:53,556.556 INFO    ] No camera update needed
[2026-06-12 02:51:53,557.557 INFO    ] Script finished. Safe exiting...
[2026-06-12 02:51:53,559.559 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 02:51:53,562.562 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 02:51:53,564.564 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 02:51:55,603.603 INFO    ] ================================================
[2026-06-12 02:51:55,625.625 INFO    ] Launching Daemon at Fri Jun 12 02:51:55 IST 2026
[2026-06-12 02:51:55,636.636 INFO    ] ================================================
[2026-06-12 02:51:55,965.965 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 02:51:55
[2026-06-12 02:51:56,276.276 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 02:51:56,407.407 INFO    ] Initializing speech engine...
[2026-06-12 02:51:56,410.410 INFO    ] 2026-06-12 02:51:56
[2026-06-12 02:51:56,618.618 INFO    ] 2026-06-12 02:51:56
[2026-06-12 02:51:56,647.647 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 02:51:56,810.810 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 02:51:56,812.812 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 02:51:56,956.956 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 02:51:57,002.002 INFO    ] time= 12/06/2026 02:51:56
[2026-06-12 02:51:57,057.057 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 02:51:57,100.100 INFO    ] Checking for existing commands in stream...
[2026-06-12 02:51:57,195.195 INFO    ] No existing commands found in stream
[2026-06-12 02:52:02,210.210 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 02:52:02,213.213 INFO    ] Waiting 0.25 seconds before fallback handling...
[2026-06-12 02:52:02,778.778 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 02:52:02,779.779 INFO    ] Checking for system updates...
[2026-06-12 02:52:02,800.800 INFO    ] 200
[2026-06-12 02:52:02,802.802 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:52:02,833.833 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 02:52:02,834.834 INFO    ] No update needed
[2026-06-12 02:52:02,835.835 INFO    ] Checking for camera pi updates...
[2026-06-12 02:52:02,854.854 INFO    ] 200
[2026-06-12 02:52:02,856.856 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:52:02,881.881 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 02:52:02,906.906 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 02:52:02,908.908 INFO    ] No camera update needed
[2026-06-12 02:52:02,909.909 INFO    ] Script finished. Safe exiting...
[2026-06-12 02:52:02,911.911 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 02:52:02,913.913 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 02:52:02,916.916 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 02:52:04,954.954 INFO    ] ================================================
[2026-06-12 02:52:04,969.969 INFO    ] Launching Daemon at Fri Jun 12 02:52:04 IST 2026
[2026-06-12 02:52:04,981.981 INFO    ] ================================================
[2026-06-12 02:52:05,338.338 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 02:52:05
[2026-06-12 02:52:05,667.667 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 02:52:05,806.806 INFO    ] Initializing speech engine...
[2026-06-12 02:52:05,816.816 INFO    ] 2026-06-12 02:52:05
[2026-06-12 02:52:06,020.020 INFO    ] 2026-06-12 02:52:06
[2026-06-12 02:52:06,048.048 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 02:52:06,232.232 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 02:52:06,241.241 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 02:52:06,362.362 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 02:52:06,417.417 INFO    ] time= 12/06/2026 02:52:06
[2026-06-12 02:52:06,457.457 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 02:52:06,462.462 INFO    ] Checking for existing commands in stream...
[2026-06-12 02:52:06,533.533 INFO    ] No existing commands found in stream
[2026-06-12 02:52:11,565.565 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 02:52:11,568.568 INFO    ] Waiting 0.86 seconds before fallback handling...
[2026-06-12 02:52:12,817.817 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 02:52:12,819.819 INFO    ] Checking for system updates...
[2026-06-12 02:52:12,840.840 INFO    ] 200
[2026-06-12 02:52:12,841.841 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:52:12,875.875 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 02:52:12,877.877 INFO    ] No update needed
[2026-06-12 02:52:12,878.878 INFO    ] Checking for camera pi updates...
[2026-06-12 02:52:12,898.898 INFO    ] 200
[2026-06-12 02:52:12,900.900 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:52:12,925.925 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 02:52:12,966.966 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 02:52:12,967.967 INFO    ] No camera update needed
[2026-06-12 02:52:12,969.969 INFO    ] Script finished. Safe exiting...
[2026-06-12 02:52:12,970.970 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 02:52:12,973.973 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 02:52:12,976.976 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 02:52:15,016.016 INFO    ] ================================================
[2026-06-12 02:52:15,032.032 INFO    ] Launching Daemon at Fri Jun 12 02:52:15 IST 2026
[2026-06-12 02:52:15,044.044 INFO    ] ================================================
[2026-06-12 02:52:15,385.385 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 02:52:15
[2026-06-12 02:52:15,696.696 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 02:52:15,832.832 INFO    ] Initializing speech engine...
[2026-06-12 02:52:15,845.845 INFO    ] 2026-06-12 02:52:15
[2026-06-12 02:52:16,066.066 INFO    ] 2026-06-12 02:52:16
[2026-06-12 02:52:16,097.097 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 02:52:16,228.228 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 02:52:16,281.281 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 02:52:16,436.436 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 02:52:16,459.459 INFO    ] time= 12/06/2026 02:52:16
[2026-06-12 02:52:16,518.518 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 02:52:16,541.541 INFO    ] Checking for existing commands in stream...
[2026-06-12 02:52:16,636.636 INFO    ] No existing commands found in stream
[2026-06-12 02:52:21,645.645 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 02:52:21,647.647 INFO    ] Waiting 3.73 seconds before fallback handling...
[2026-06-12 02:52:25,771.771 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 02:52:25,773.773 INFO    ] Checking for system updates...
[2026-06-12 02:52:25,795.795 INFO    ] 200
[2026-06-12 02:52:25,796.796 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:52:25,826.826 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 02:52:25,828.828 INFO    ] No update needed
[2026-06-12 02:52:25,829.829 INFO    ] Checking for camera pi updates...
[2026-06-12 02:52:25,848.848 INFO    ] 200
[2026-06-12 02:52:25,850.850 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:52:25,875.875 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 02:52:25,927.927 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 02:52:25,929.929 INFO    ] No camera update needed
[2026-06-12 02:52:25,930.930 INFO    ] Script finished. Safe exiting...
[2026-06-12 02:52:25,932.932 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 02:52:25,935.935 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 02:52:25,937.937 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 02:52:27,977.977 INFO    ] ================================================
[2026-06-12 02:52:27,993.993 INFO    ] Launching Daemon at Fri Jun 12 02:52:27 IST 2026
[2026-06-12 02:52:28,004.004 INFO    ] ================================================
[2026-06-12 02:52:28,374.374 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 02:52:28
[2026-06-12 02:52:28,689.689 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 02:52:28,832.832 INFO    ] Initializing speech engine...
[2026-06-12 02:52:28,838.838 INFO    ] 2026-06-12 02:52:28
[2026-06-12 02:52:29,041.041 INFO    ] 2026-06-12 02:52:29
[2026-06-12 02:52:29,069.069 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 02:52:29,252.252 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 02:52:29,261.261 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 02:52:29,396.396 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 02:52:29,458.458 INFO    ] time= 12/06/2026 02:52:29
[2026-06-12 02:52:29,482.482 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 02:52:29,488.488 INFO    ] Checking for existing commands in stream...
[2026-06-12 02:52:29,555.555 INFO    ] No existing commands found in stream
[2026-06-12 02:52:34,564.564 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 02:52:34,567.567 INFO    ] Waiting 2.08 seconds before fallback handling...
[2026-06-12 02:52:37,031.031 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 02:52:37,033.033 INFO    ] Checking for system updates...
[2026-06-12 02:52:37,054.054 INFO    ] 200
[2026-06-12 02:52:37,056.056 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:52:37,088.088 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 02:52:37,090.090 INFO    ] No update needed
[2026-06-12 02:52:37,091.091 INFO    ] Checking for camera pi updates...
[2026-06-12 02:52:37,112.112 INFO    ] 200
[2026-06-12 02:52:37,114.114 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:52:37,137.137 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 02:52:37,185.185 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 02:52:37,187.187 INFO    ] No camera update needed
[2026-06-12 02:52:37,188.188 INFO    ] Script finished. Safe exiting...
[2026-06-12 02:52:37,189.189 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 02:52:37,193.193 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 02:52:37,196.196 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 02:52:39,234.234 INFO    ] ================================================
[2026-06-12 02:52:39,250.250 INFO    ] Launching Daemon at Fri Jun 12 02:52:39 IST 2026
[2026-06-12 02:52:39,262.262 INFO    ] ================================================
[2026-06-12 02:52:39,646.646 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 02:52:39
[2026-06-12 02:52:39,979.979 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 02:52:40,132.132 INFO    ] Initializing speech engine...
[2026-06-12 02:52:40,136.136 INFO    ] 2026-06-12 02:52:40
[2026-06-12 02:52:40,335.335 INFO    ] 2026-06-12 02:52:40
[2026-06-12 02:52:40,363.363 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 02:52:40,547.547 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 02:52:40,555.555 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 02:52:40,678.678 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 02:52:40,738.738 INFO    ] time= 12/06/2026 02:52:40
[2026-06-12 02:52:40,775.775 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 02:52:40,777.777 INFO    ] Checking for existing commands in stream...
[2026-06-12 02:52:40,896.896 INFO    ] No existing commands found in stream
[2026-06-12 02:52:45,906.906 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 02:52:45,914.914 INFO    ] Waiting 3.48 seconds before fallback handling...
[2026-06-12 02:52:49,754.754 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 02:52:49,755.755 INFO    ] Checking for system updates...
[2026-06-12 02:52:49,776.776 INFO    ] 200
[2026-06-12 02:52:49,777.777 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:52:49,810.810 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 02:52:49,812.812 INFO    ] No update needed
[2026-06-12 02:52:49,813.813 INFO    ] Checking for camera pi updates...
[2026-06-12 02:52:49,836.836 INFO    ] 200
[2026-06-12 02:52:49,837.837 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:52:49,861.861 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 02:52:49,900.900 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 02:52:49,901.901 INFO    ] No camera update needed
[2026-06-12 02:52:49,903.903 INFO    ] Script finished. Safe exiting...
[2026-06-12 02:52:49,904.904 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 02:52:49,907.907 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 02:52:49,910.910 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 02:52:51,949.949 INFO    ] ================================================
[2026-06-12 02:52:51,965.965 INFO    ] Launching Daemon at Fri Jun 12 02:52:51 IST 2026
[2026-06-12 02:52:51,976.976 INFO    ] ================================================
[2026-06-12 02:52:52,337.337 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 02:52:52
[2026-06-12 02:52:52,650.650 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 02:52:52,781.781 INFO    ] Initializing speech engine...
[2026-06-12 02:52:52,788.788 INFO    ] 2026-06-12 02:52:52
[2026-06-12 02:52:52,999.999 INFO    ] 2026-06-12 02:52:52
[2026-06-12 02:52:53,028.028 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 02:52:53,213.213 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 02:52:53,222.222 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 02:52:53,352.352 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 02:52:53,419.419 INFO    ] time= 12/06/2026 02:52:53
[2026-06-12 02:52:53,443.443 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 02:52:53,449.449 INFO    ] Checking for existing commands in stream...
[2026-06-12 02:52:53,515.515 INFO    ] No existing commands found in stream
[2026-06-12 02:52:58,525.525 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 02:52:58,528.528 INFO    ] Waiting 1.47 seconds before fallback handling...
[2026-06-12 02:53:00,401.401 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 02:53:00,403.403 INFO    ] Checking for system updates...
[2026-06-12 02:53:00,424.424 INFO    ] 200
[2026-06-12 02:53:00,426.426 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:53:00,459.459 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 02:53:00,460.460 INFO    ] No update needed
[2026-06-12 02:53:00,462.462 INFO    ] Checking for camera pi updates...
[2026-06-12 02:53:00,481.481 INFO    ] 200
[2026-06-12 02:53:00,483.483 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:53:00,506.506 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 02:53:00,550.550 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 02:53:00,551.551 INFO    ] No camera update needed
[2026-06-12 02:53:00,552.552 INFO    ] Script finished. Safe exiting...
[2026-06-12 02:53:00,554.554 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 02:53:00,557.557 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 02:53:00,559.559 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 02:53:02,592.592 INFO    ] ================================================
[2026-06-12 02:53:02,601.601 INFO    ] Launching Daemon at Fri Jun 12 02:53:02 IST 2026
[2026-06-12 02:53:02,607.607 INFO    ] ================================================
[2026-06-12 02:53:02,912.912 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 02:53:02
[2026-06-12 02:53:03,226.226 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 02:53:03,358.358 INFO    ] Initializing speech engine...
[2026-06-12 02:53:03,370.370 INFO    ] 2026-06-12 02:53:03
[2026-06-12 02:53:03,577.577 INFO    ] 2026-06-12 02:53:03
[2026-06-12 02:53:03,607.607 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 02:53:03,791.791 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 02:53:03,794.794 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 02:53:03,931.931 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 02:53:03,995.995 INFO    ] time= 12/06/2026 02:53:03
[2026-06-12 02:53:04,023.023 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 02:53:04,025.025 INFO    ] Checking for existing commands in stream...
[2026-06-12 02:53:04,097.097 INFO    ] No existing commands found in stream
[2026-06-12 02:53:09,105.105 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 02:53:09,108.108 INFO    ] Waiting 1.29 seconds before fallback handling...
[2026-06-12 02:53:11,391.391 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 02:53:11,394.394 INFO    ] Checking for system updates...
[2026-06-12 02:53:11,431.431 INFO    ] 200
[2026-06-12 02:53:11,433.433 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:53:11,487.487 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 02:53:11,490.490 INFO    ] No update needed
[2026-06-12 02:53:11,492.492 INFO    ] Checking for camera pi updates...
[2026-06-12 02:53:11,527.527 INFO    ] 200
[2026-06-12 02:53:11,529.529 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:53:11,553.553 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 02:53:11,580.580 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 02:53:11,582.582 INFO    ] No camera update needed
[2026-06-12 02:53:11,583.583 INFO    ] Script finished. Safe exiting...
[2026-06-12 02:53:11,584.584 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 02:53:11,587.587 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 02:53:11,589.589 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 02:53:13,631.631 INFO    ] ================================================
[2026-06-12 02:53:13,647.647 INFO    ] Launching Daemon at Fri Jun 12 02:53:13 IST 2026
[2026-06-12 02:53:13,658.658 INFO    ] ================================================
[2026-06-12 02:53:14,017.017 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 02:53:14
[2026-06-12 02:53:14,328.328 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 02:53:14,466.466 INFO    ] Initializing speech engine...
[2026-06-12 02:53:14,476.476 INFO    ] 2026-06-12 02:53:14
[2026-06-12 02:53:14,681.681 INFO    ] 2026-06-12 02:53:14
[2026-06-12 02:53:14,709.709 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 02:53:14,892.892 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 02:53:14,896.896 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 02:53:15,031.031 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 02:53:15,098.098 INFO    ] time= 12/06/2026 02:53:15
[2026-06-12 02:53:15,123.123 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 02:53:15,129.129 INFO    ] Checking for existing commands in stream...
[2026-06-12 02:53:15,196.196 INFO    ] No existing commands found in stream
[2026-06-12 02:53:20,205.205 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 02:53:20,207.207 INFO    ] Waiting 3.98 seconds before fallback handling...
[2026-06-12 02:53:24,552.552 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 02:53:24,554.554 INFO    ] Checking for system updates...
[2026-06-12 02:53:24,575.575 INFO    ] 200
[2026-06-12 02:53:24,577.577 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:53:24,607.607 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 02:53:24,608.608 INFO    ] No update needed
[2026-06-12 02:53:24,610.610 INFO    ] Checking for camera pi updates...
[2026-06-12 02:53:24,629.629 INFO    ] 200
[2026-06-12 02:53:24,631.631 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:53:24,663.663 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 02:53:24,806.806 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 02:53:24,807.807 INFO    ] No camera update needed
[2026-06-12 02:53:24,808.808 INFO    ] Script finished. Safe exiting...
[2026-06-12 02:53:24,810.810 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 02:53:24,813.813 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 02:53:24,815.815 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 02:53:26,854.854 INFO    ] ================================================
[2026-06-12 02:53:26,870.870 INFO    ] Launching Daemon at Fri Jun 12 02:53:26 IST 2026
[2026-06-12 02:53:26,881.881 INFO    ] ================================================
[2026-06-12 02:53:27,263.263 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 02:53:27
[2026-06-12 02:53:27,599.599 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 02:53:27,749.749 INFO    ] Initializing speech engine...
[2026-06-12 02:53:27,755.755 INFO    ] 2026-06-12 02:53:27
[2026-06-12 02:53:27,961.961 INFO    ] 2026-06-12 02:53:27
[2026-06-12 02:53:27,991.991 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 02:53:28,175.175 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 02:53:28,185.185 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 02:53:28,315.315 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 02:53:28,379.379 INFO    ] time= 12/06/2026 02:53:28
[2026-06-12 02:53:28,407.407 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 02:53:28,413.413 INFO    ] Checking for existing commands in stream...
[2026-06-12 02:53:28,480.480 INFO    ] No existing commands found in stream
[2026-06-12 02:53:33,492.492 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 02:53:33,495.495 INFO    ] Waiting 3.96 seconds before fallback handling...
[2026-06-12 02:53:37,790.790 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 02:53:37,792.792 INFO    ] Checking for system updates...
[2026-06-12 02:53:37,814.814 INFO    ] 200
[2026-06-12 02:53:37,815.815 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:53:37,846.846 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 02:53:37,848.848 INFO    ] No update needed
[2026-06-12 02:53:37,849.849 INFO    ] Checking for camera pi updates...
[2026-06-12 02:53:37,873.873 INFO    ] 200
[2026-06-12 02:53:37,874.874 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:53:37,900.900 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 02:53:37,945.945 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 02:53:37,946.946 INFO    ] No camera update needed
[2026-06-12 02:53:37,948.948 INFO    ] Script finished. Safe exiting...
[2026-06-12 02:53:37,949.949 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 02:53:37,953.953 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 02:53:37,956.956 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 02:53:40,996.996 INFO    ] ================================================
[2026-06-12 02:53:40,012.012 INFO    ] Launching Daemon at Fri Jun 12 02:53:40 IST 2026
[2026-06-12 02:53:40,023.023 INFO    ] ================================================
[2026-06-12 02:53:40,373.373 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 02:53:40
[2026-06-12 02:53:40,708.708 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 02:53:40,853.853 INFO    ] Initializing speech engine...
[2026-06-12 02:53:40,863.863 INFO    ] 2026-06-12 02:53:40
[2026-06-12 02:53:41,072.072 INFO    ] 2026-06-12 02:53:41
[2026-06-12 02:53:41,101.101 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 02:53:41,287.287 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 02:53:41,296.296 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 02:53:41,479.479 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 02:53:41,517.517 INFO    ] time= 12/06/2026 02:53:41
[2026-06-12 02:53:41,524.524 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 02:53:41,526.526 INFO    ] Checking for existing commands in stream...
[2026-06-12 02:53:41,593.593 INFO    ] No existing commands found in stream
[2026-06-12 02:53:46,608.608 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 02:53:46,611.611 INFO    ] Waiting 0.93 seconds before fallback handling...
[2026-06-12 02:53:47,922.922 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 02:53:47,924.924 INFO    ] Checking for system updates...
[2026-06-12 02:53:47,945.945 INFO    ] 200
[2026-06-12 02:53:47,946.946 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:53:47,979.979 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 02:53:47,980.980 INFO    ] No update needed
[2026-06-12 02:53:47,982.982 INFO    ] Checking for camera pi updates...
[2026-06-12 02:53:48,001.001 INFO    ] 200
[2026-06-12 02:53:48,003.003 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:53:48,026.026 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 02:53:48,066.066 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 02:53:48,067.067 INFO    ] No camera update needed
[2026-06-12 02:53:48,069.069 INFO    ] Script finished. Safe exiting...
[2026-06-12 02:53:48,070.070 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 02:53:48,073.073 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 02:53:48,076.076 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 02:53:50,114.114 INFO    ] ================================================
[2026-06-12 02:53:50,129.129 INFO    ] Launching Daemon at Fri Jun 12 02:53:50 IST 2026
[2026-06-12 02:53:50,140.140 INFO    ] ================================================
[2026-06-12 02:53:50,464.464 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 02:53:50
[2026-06-12 02:53:50,776.776 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 02:53:50,908.908 INFO    ] Initializing speech engine...
[2026-06-12 02:53:50,922.922 INFO    ] 2026-06-12 02:53:50
[2026-06-12 02:53:51,129.129 INFO    ] 2026-06-12 02:53:51
[2026-06-12 02:53:51,158.158 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 02:53:51,343.343 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 02:53:51,352.352 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 02:53:51,493.493 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 02:53:51,550.550 INFO    ] time= 12/06/2026 02:53:51
[2026-06-12 02:53:51,574.574 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 02:53:51,580.580 INFO    ] Checking for existing commands in stream...
[2026-06-12 02:53:51,646.646 INFO    ] No existing commands found in stream
[2026-06-12 02:53:56,657.657 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 02:53:56,659.659 INFO    ] Waiting 3.22 seconds before fallback handling...
[2026-06-12 02:54:00,248.248 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 02:54:00,250.250 INFO    ] Checking for system updates...
[2026-06-12 02:54:00,270.270 INFO    ] 200
[2026-06-12 02:54:00,272.272 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:54:00,305.305 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 02:54:00,306.306 INFO    ] No update needed
[2026-06-12 02:54:00,307.307 INFO    ] Checking for camera pi updates...
[2026-06-12 02:54:00,327.327 INFO    ] 200
[2026-06-12 02:54:00,328.328 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:54:00,353.353 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 02:54:00,393.393 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 02:54:00,394.394 INFO    ] No camera update needed
[2026-06-12 02:54:00,395.395 INFO    ] Script finished. Safe exiting...
[2026-06-12 02:54:00,397.397 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 02:54:00,399.399 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 02:54:00,402.402 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 02:54:02,436.436 INFO    ] ================================================
[2026-06-12 02:54:02,448.448 INFO    ] Launching Daemon at Fri Jun 12 02:54:02 IST 2026
[2026-06-12 02:54:02,457.457 INFO    ] ================================================
[2026-06-12 02:54:02,813.813 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 02:54:02
[2026-06-12 02:54:03,133.133 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 02:54:03,264.264 INFO    ] Initializing speech engine...
[2026-06-12 02:54:03,272.272 INFO    ] 2026-06-12 02:54:03
[2026-06-12 02:54:03,485.485 INFO    ] 2026-06-12 02:54:03
[2026-06-12 02:54:03,513.513 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 02:54:03,637.637 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 02:54:03,700.700 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 02:54:03,839.839 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 02:54:03,886.886 INFO    ] time= 12/06/2026 02:54:03
[2026-06-12 02:54:03,940.940 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 02:54:03,951.951 INFO    ] Checking for existing commands in stream...
[2026-06-12 02:54:04,021.021 INFO    ] No existing commands found in stream
[2026-06-12 02:54:09,032.032 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 02:54:09,034.034 INFO    ] Waiting 1.90 seconds before fallback handling...
[2026-06-12 02:54:11,284.284 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 02:54:11,286.286 INFO    ] Checking for system updates...
[2026-06-12 02:54:11,306.306 INFO    ] 200
[2026-06-12 02:54:11,308.308 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:54:11,345.345 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 02:54:11,347.347 INFO    ] No update needed
[2026-06-12 02:54:11,348.348 INFO    ] Checking for camera pi updates...
[2026-06-12 02:54:11,371.371 INFO    ] 200
[2026-06-12 02:54:11,373.373 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:54:11,412.412 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 02:54:11,442.442 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 02:54:11,443.443 INFO    ] No camera update needed
[2026-06-12 02:54:11,445.445 INFO    ] Script finished. Safe exiting...
[2026-06-12 02:54:11,446.446 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 02:54:11,449.449 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 02:54:11,452.452 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 02:54:13,490.490 INFO    ] ================================================
[2026-06-12 02:54:13,505.505 INFO    ] Launching Daemon at Fri Jun 12 02:54:13 IST 2026
[2026-06-12 02:54:13,516.516 INFO    ] ================================================
[2026-06-12 02:54:13,875.875 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 02:54:13
[2026-06-12 02:54:14,192.192 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 02:54:14,322.322 INFO    ] Initializing speech engine...
[2026-06-12 02:54:14,326.326 INFO    ] 2026-06-12 02:54:14
[2026-06-12 02:54:14,544.544 INFO    ] 2026-06-12 02:54:14
[2026-06-12 02:54:14,572.572 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 02:54:14,754.754 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 02:54:14,758.758 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 02:54:14,896.896 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 02:54:14,963.963 INFO    ] time= 12/06/2026 02:54:14
[2026-06-12 02:54:14,986.986 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 02:54:14,993.993 INFO    ] Checking for existing commands in stream...
[2026-06-12 02:54:15,059.059 INFO    ] No existing commands found in stream
[2026-06-12 02:54:20,073.073 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 02:54:20,076.076 INFO    ] Waiting 3.62 seconds before fallback handling...
[2026-06-12 02:54:24,079.079 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 02:54:24,081.081 INFO    ] Checking for system updates...
[2026-06-12 02:54:24,103.103 INFO    ] 200
[2026-06-12 02:54:24,104.104 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:54:24,136.136 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 02:54:24,138.138 INFO    ] No update needed
[2026-06-12 02:54:24,139.139 INFO    ] Checking for camera pi updates...
[2026-06-12 02:54:24,158.158 INFO    ] 200
[2026-06-12 02:54:24,159.159 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:54:24,184.184 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 02:54:24,222.222 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 02:54:24,224.224 INFO    ] No camera update needed
[2026-06-12 02:54:24,225.225 INFO    ] Script finished. Safe exiting...
[2026-06-12 02:54:24,226.226 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 02:54:24,229.229 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 02:54:24,232.232 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 02:54:26,269.269 INFO    ] ================================================
[2026-06-12 02:54:26,284.284 INFO    ] Launching Daemon at Fri Jun 12 02:54:26 IST 2026
[2026-06-12 02:54:26,295.295 INFO    ] ================================================
[2026-06-12 02:54:26,633.633 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 02:54:26
[2026-06-12 02:54:26,950.950 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 02:54:27,082.082 INFO    ] Initializing speech engine...
[2026-06-12 02:54:27,085.085 INFO    ] 2026-06-12 02:54:27
[2026-06-12 02:54:27,302.302 INFO    ] 2026-06-12 02:54:27
[2026-06-12 02:54:27,331.331 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 02:54:27,515.515 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 02:54:27,525.525 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 02:54:27,654.654 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 02:54:27,718.718 INFO    ] time= 12/06/2026 02:54:27
[2026-06-12 02:54:27,745.745 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 02:54:27,746.746 INFO    ] Checking for existing commands in stream...
[2026-06-12 02:54:27,841.841 INFO    ] No existing commands found in stream
[2026-06-12 02:54:32,849.849 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 02:54:32,851.851 INFO    ] Waiting 1.58 seconds before fallback handling...
[2026-06-12 02:54:34,834.834 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 02:54:34,836.836 INFO    ] Checking for system updates...
[2026-06-12 02:54:34,857.857 INFO    ] 200
[2026-06-12 02:54:34,858.858 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:54:34,891.891 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 02:54:34,893.893 INFO    ] No update needed
[2026-06-12 02:54:34,894.894 INFO    ] Checking for camera pi updates...
[2026-06-12 02:54:34,927.927 INFO    ] 200
[2026-06-12 02:54:34,929.929 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:54:34,953.953 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 02:54:35,001.001 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 02:54:35,003.003 INFO    ] No camera update needed
[2026-06-12 02:54:35,004.004 INFO    ] Script finished. Safe exiting...
[2026-06-12 02:54:35,006.006 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 02:54:35,009.009 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 02:54:35,012.012 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 02:54:37,051.051 INFO    ] ================================================
[2026-06-12 02:54:37,067.067 INFO    ] Launching Daemon at Fri Jun 12 02:54:37 IST 2026
[2026-06-12 02:54:37,078.078 INFO    ] ================================================
[2026-06-12 02:54:37,435.435 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 02:54:37
[2026-06-12 02:54:37,751.751 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 02:54:37,887.887 INFO    ] Initializing speech engine...
[2026-06-12 02:54:37,895.895 INFO    ] 2026-06-12 02:54:37
[2026-06-12 02:54:38,107.107 INFO    ] 2026-06-12 02:54:38
[2026-06-12 02:54:38,135.135 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 02:54:38,287.287 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 02:54:38,354.354 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 02:54:38,469.469 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 02:54:38,496.496 INFO    ] time= 12/06/2026 02:54:38
[2026-06-12 02:54:38,556.556 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 02:54:38,591.591 INFO    ] Checking for existing commands in stream...
[2026-06-12 02:54:38,666.666 INFO    ] No existing commands found in stream
[2026-06-12 02:54:43,675.675 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 02:54:43,677.677 INFO    ] Waiting 0.54 seconds before fallback handling...
[2026-06-12 02:54:44,581.581 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 02:54:44,582.582 INFO    ] Checking for system updates...
[2026-06-12 02:54:44,603.603 INFO    ] 200
[2026-06-12 02:54:44,604.604 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:54:44,635.635 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 02:54:44,636.636 INFO    ] No update needed
[2026-06-12 02:54:44,638.638 INFO    ] Checking for camera pi updates...
[2026-06-12 02:54:44,657.657 INFO    ] 200
[2026-06-12 02:54:44,659.659 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:54:44,684.684 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 02:54:44,730.730 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 02:54:44,732.732 INFO    ] No camera update needed
[2026-06-12 02:54:44,733.733 INFO    ] Script finished. Safe exiting...
[2026-06-12 02:54:44,735.735 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 02:54:44,738.738 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 02:54:44,741.741 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 02:54:46,772.772 INFO    ] ================================================
[2026-06-12 02:54:46,780.780 INFO    ] Launching Daemon at Fri Jun 12 02:54:46 IST 2026
[2026-06-12 02:54:46,786.786 INFO    ] ================================================
[2026-06-12 02:54:47,093.093 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 02:54:47
[2026-06-12 02:54:47,411.411 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 02:54:47,545.545 INFO    ] Initializing speech engine...
[2026-06-12 02:54:47,550.550 INFO    ] 2026-06-12 02:54:47
[2026-06-12 02:54:47,744.744 INFO    ] 2026-06-12 02:54:47
[2026-06-12 02:54:47,790.790 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 02:54:47,948.948 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 02:54:48,001.001 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 02:54:48,152.152 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 02:54:48,199.199 INFO    ] time= 12/06/2026 02:54:48
[2026-06-12 02:54:48,238.238 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 02:54:48,254.254 INFO    ] Checking for existing commands in stream...
[2026-06-12 02:54:48,326.326 INFO    ] No existing commands found in stream
[2026-06-12 02:54:53,340.340 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 02:54:53,343.343 INFO    ] Waiting 3.00 seconds before fallback handling...
[2026-06-12 02:54:56,730.730 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 02:54:56,732.732 INFO    ] Checking for system updates...
[2026-06-12 02:54:56,753.753 INFO    ] 200
[2026-06-12 02:54:56,754.754 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:54:56,784.784 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 02:54:56,786.786 INFO    ] No update needed
[2026-06-12 02:54:56,787.787 INFO    ] Checking for camera pi updates...
[2026-06-12 02:54:56,807.807 INFO    ] 200
[2026-06-12 02:54:56,809.809 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:54:56,832.832 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 02:54:56,876.876 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 02:54:56,878.878 INFO    ] No camera update needed
[2026-06-12 02:54:56,879.879 INFO    ] Script finished. Safe exiting...
[2026-06-12 02:54:56,881.881 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 02:54:56,884.884 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 02:54:56,886.886 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 02:54:58,925.925 INFO    ] ================================================
[2026-06-12 02:54:58,940.940 INFO    ] Launching Daemon at Fri Jun 12 02:54:58 IST 2026
[2026-06-12 02:54:58,950.950 INFO    ] ================================================
[2026-06-12 02:54:59,293.293 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 02:54:59
[2026-06-12 02:54:59,626.626 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 02:54:59,776.776 INFO    ] Initializing speech engine...
[2026-06-12 02:54:59,782.782 INFO    ] 2026-06-12 02:54:59
[2026-06-12 02:54:59,988.988 INFO    ] 2026-06-12 02:54:59
[2026-06-12 02:55:00,022.022 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 02:55:00,204.204 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 02:55:00,214.214 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 02:55:00,357.357 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 02:55:00,409.409 INFO    ] time= 12/06/2026 02:55:00
[2026-06-12 02:55:00,432.432 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 02:55:00,438.438 INFO    ] Checking for existing commands in stream...
[2026-06-12 02:55:00,504.504 INFO    ] No existing commands found in stream
[2026-06-12 02:55:05,513.513 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 02:55:05,516.516 INFO    ] Waiting 3.83 seconds before fallback handling...
[2026-06-12 02:55:09,690.690 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 02:55:09,691.691 INFO    ] Checking for system updates...
[2026-06-12 02:55:09,712.712 INFO    ] 200
[2026-06-12 02:55:09,714.714 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:55:09,744.744 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 02:55:09,745.745 INFO    ] No update needed
[2026-06-12 02:55:09,746.746 INFO    ] Checking for camera pi updates...
[2026-06-12 02:55:09,766.766 INFO    ] 200
[2026-06-12 02:55:09,767.767 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:55:09,792.792 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 02:55:09,832.832 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 02:55:09,833.833 INFO    ] No camera update needed
[2026-06-12 02:55:09,834.834 INFO    ] Script finished. Safe exiting...
[2026-06-12 02:55:09,836.836 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 02:55:09,839.839 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 02:55:09,841.841 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 02:55:11,879.879 INFO    ] ================================================
[2026-06-12 02:55:11,894.894 INFO    ] Launching Daemon at Fri Jun 12 02:55:11 IST 2026
[2026-06-12 02:55:11,905.905 INFO    ] ================================================
[2026-06-12 02:55:12,264.264 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 02:55:12
[2026-06-12 02:55:12,574.574 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 02:55:12,705.705 INFO    ] Initializing speech engine...
[2026-06-12 02:55:12,710.710 INFO    ] 2026-06-12 02:55:12
[2026-06-12 02:55:12,905.905 INFO    ] 2026-06-12 02:55:12
[2026-06-12 02:55:12,945.945 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 02:55:13,101.101 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 02:55:13,154.154 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 02:55:13,317.317 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 02:55:13,373.373 INFO    ] time= 12/06/2026 02:55:13
[2026-06-12 02:55:13,396.396 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 02:55:13,418.418 INFO    ] Checking for existing commands in stream...
[2026-06-12 02:55:13,493.493 INFO    ] No existing commands found in stream
[2026-06-12 02:55:18,503.503 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 02:55:18,506.506 INFO    ] Waiting 0.26 seconds before fallback handling...
[2026-06-12 02:55:19,081.081 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 02:55:19,083.083 INFO    ] Checking for system updates...
[2026-06-12 02:55:19,105.105 INFO    ] 200
[2026-06-12 02:55:19,106.106 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:55:19,138.138 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 02:55:19,140.140 INFO    ] No update needed
[2026-06-12 02:55:19,141.141 INFO    ] Checking for camera pi updates...
[2026-06-12 02:55:19,161.161 INFO    ] 200
[2026-06-12 02:55:19,163.163 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:55:19,185.185 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 02:55:19,224.224 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 02:55:19,226.226 INFO    ] No camera update needed
[2026-06-12 02:55:19,227.227 INFO    ] Script finished. Safe exiting...
[2026-06-12 02:55:19,228.228 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 02:55:19,231.231 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 02:55:19,234.234 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 02:55:21,272.272 INFO    ] ================================================
[2026-06-12 02:55:21,287.287 INFO    ] Launching Daemon at Fri Jun 12 02:55:21 IST 2026
[2026-06-12 02:55:21,298.298 INFO    ] ================================================
[2026-06-12 02:55:21,619.619 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 02:55:21
[2026-06-12 02:55:21,933.933 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 02:55:22,069.069 INFO    ] Initializing speech engine...
[2026-06-12 02:55:22,079.079 INFO    ] 2026-06-12 02:55:22
[2026-06-12 02:55:22,282.282 INFO    ] 2026-06-12 02:55:22
[2026-06-12 02:55:22,311.311 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 02:55:22,495.495 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 02:55:22,504.504 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 02:55:22,630.630 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 02:55:22,687.687 INFO    ] time= 12/06/2026 02:55:22
[2026-06-12 02:55:22,722.722 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 02:55:22,727.727 INFO    ] Checking for existing commands in stream...
[2026-06-12 02:55:22,798.798 INFO    ] No existing commands found in stream
[2026-06-12 02:55:27,807.807 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 02:55:27,810.810 INFO    ] Waiting 1.88 seconds before fallback handling...
[2026-06-12 02:55:32,024.024 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 02:55:32,026.026 INFO    ] Checking for system updates...
[2026-06-12 02:55:32,063.063 INFO    ] 200
[2026-06-12 02:55:32,066.066 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:55:32,109.109 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 02:55:32,111.111 INFO    ] No update needed
[2026-06-12 02:55:32,112.112 INFO    ] Checking for camera pi updates...
[2026-06-12 02:55:32,132.132 INFO    ] 200
[2026-06-12 02:55:32,133.133 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:55:32,157.157 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 02:55:32,183.183 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 02:55:32,185.185 INFO    ] No camera update needed
[2026-06-12 02:55:32,186.186 INFO    ] Script finished. Safe exiting...
[2026-06-12 02:55:32,187.187 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 02:55:32,190.190 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 02:55:32,193.193 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 02:55:34,231.231 INFO    ] ================================================
[2026-06-12 02:55:34,246.246 INFO    ] Launching Daemon at Fri Jun 12 02:55:34 IST 2026
[2026-06-12 02:55:34,257.257 INFO    ] ================================================
[2026-06-12 02:55:34,637.637 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 02:55:34
[2026-06-12 02:55:34,947.947 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 02:55:35,084.084 INFO    ] Initializing speech engine...
[2026-06-12 02:55:35,092.092 INFO    ] 2026-06-12 02:55:35
[2026-06-12 02:55:35,302.302 INFO    ] 2026-06-12 02:55:35
[2026-06-12 02:55:35,330.330 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 02:55:35,517.517 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 02:55:35,525.525 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 02:55:35,657.657 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 02:55:35,722.722 INFO    ] time= 12/06/2026 02:55:35
[2026-06-12 02:55:35,750.750 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 02:55:35,757.757 INFO    ] Checking for existing commands in stream...
[2026-06-12 02:55:35,824.824 INFO    ] No existing commands found in stream
[2026-06-12 02:55:40,833.833 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 02:55:40,836.836 INFO    ] Waiting 1.59 seconds before fallback handling...
[2026-06-12 02:55:42,827.827 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 02:55:42,829.829 INFO    ] Checking for system updates...
[2026-06-12 02:55:42,850.850 INFO    ] 200
[2026-06-12 02:55:42,851.851 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:55:42,883.883 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 02:55:42,885.885 INFO    ] No update needed
[2026-06-12 02:55:42,886.886 INFO    ] Checking for camera pi updates...
[2026-06-12 02:55:42,905.905 INFO    ] 200
[2026-06-12 02:55:42,907.907 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:55:42,930.930 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 02:55:42,971.971 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 02:55:42,972.972 INFO    ] No camera update needed
[2026-06-12 02:55:42,974.974 INFO    ] Script finished. Safe exiting...
[2026-06-12 02:55:42,975.975 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 02:55:42,981.981 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 02:55:42,984.984 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 02:55:45,022.022 INFO    ] ================================================
[2026-06-12 02:55:45,037.037 INFO    ] Launching Daemon at Fri Jun 12 02:55:45 IST 2026
[2026-06-12 02:55:45,048.048 INFO    ] ================================================
[2026-06-12 02:55:45,394.394 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 02:55:45
[2026-06-12 02:55:45,704.704 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 02:55:45,848.848 INFO    ] Initializing speech engine...
[2026-06-12 02:55:45,853.853 INFO    ] 2026-06-12 02:55:45
[2026-06-12 02:55:46,057.057 INFO    ] 2026-06-12 02:55:46
[2026-06-12 02:55:46,087.087 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 02:55:46,210.210 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 02:55:46,274.274 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 02:55:46,414.414 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 02:55:46,473.473 INFO    ] time= 12/06/2026 02:55:46
[2026-06-12 02:55:46,506.506 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 02:55:46,513.513 INFO    ] Checking for existing commands in stream...
[2026-06-12 02:55:46,580.580 INFO    ] No existing commands found in stream
[2026-06-12 02:55:51,589.589 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 02:55:51,592.592 INFO    ] Waiting 3.08 seconds before fallback handling...
[2026-06-12 02:55:55,030.030 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 02:55:55,032.032 INFO    ] Checking for system updates...
[2026-06-12 02:55:55,054.054 INFO    ] 200
[2026-06-12 02:55:55,055.055 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:55:55,087.087 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 02:55:55,089.089 INFO    ] No update needed
[2026-06-12 02:55:55,090.090 INFO    ] Checking for camera pi updates...
[2026-06-12 02:55:55,111.111 INFO    ] 200
[2026-06-12 02:55:55,112.112 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:55:55,136.136 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 02:55:55,182.182 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 02:55:55,183.183 INFO    ] No camera update needed
[2026-06-12 02:55:55,184.184 INFO    ] Script finished. Safe exiting...
[2026-06-12 02:55:55,185.185 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 02:55:55,188.188 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 02:55:55,191.191 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 02:55:57,235.235 INFO    ] ================================================
[2026-06-12 02:55:57,251.251 INFO    ] Launching Daemon at Fri Jun 12 02:55:57 IST 2026
[2026-06-12 02:55:57,261.261 INFO    ] ================================================
[2026-06-12 02:55:57,602.602 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 02:55:57
[2026-06-12 02:55:57,936.936 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 02:55:58,086.086 INFO    ] Initializing speech engine...
[2026-06-12 02:55:58,092.092 INFO    ] 2026-06-12 02:55:58
[2026-06-12 02:55:58,302.302 INFO    ] 2026-06-12 02:55:58
[2026-06-12 02:55:58,331.331 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 02:55:58,517.517 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 02:55:58,527.527 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 02:55:58,679.679 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 02:55:58,729.729 INFO    ] time= 12/06/2026 02:55:58
[2026-06-12 02:55:58,750.750 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 02:55:58,757.757 INFO    ] Checking for existing commands in stream...
[2026-06-12 02:55:58,824.824 INFO    ] No existing commands found in stream
[2026-06-12 02:56:03,834.834 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 02:56:03,837.837 INFO    ] Waiting 3.67 seconds before fallback handling...
[2026-06-12 02:56:07,874.874 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 02:56:07,876.876 INFO    ] Checking for system updates...
[2026-06-12 02:56:07,897.897 INFO    ] 200
[2026-06-12 02:56:07,898.898 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:56:07,930.930 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 02:56:07,932.932 INFO    ] No update needed
[2026-06-12 02:56:07,933.933 INFO    ] Checking for camera pi updates...
[2026-06-12 02:56:07,952.952 INFO    ] 200
[2026-06-12 02:56:07,954.954 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:56:07,977.977 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 02:56:08,022.022 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 02:56:08,024.024 INFO    ] No camera update needed
[2026-06-12 02:56:08,025.025 INFO    ] Script finished. Safe exiting...
[2026-06-12 02:56:08,026.026 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 02:56:08,029.029 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 02:56:08,032.032 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 02:56:10,071.071 INFO    ] ================================================
[2026-06-12 02:56:10,086.086 INFO    ] Launching Daemon at Fri Jun 12 02:56:10 IST 2026
[2026-06-12 02:56:10,098.098 INFO    ] ================================================
[2026-06-12 02:56:10,458.458 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 02:56:10
[2026-06-12 02:56:10,769.769 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 02:56:10,911.911 INFO    ] Initializing speech engine...
[2026-06-12 02:56:10,917.917 INFO    ] 2026-06-12 02:56:10
[2026-06-12 02:56:11,121.121 INFO    ] 2026-06-12 02:56:11
[2026-06-12 02:56:11,150.150 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 02:56:11,336.336 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 02:56:11,345.345 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 02:56:11,475.475 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 02:56:11,534.534 INFO    ] time= 12/06/2026 02:56:11
[2026-06-12 02:56:11,566.566 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 02:56:11,573.573 INFO    ] Checking for existing commands in stream...
[2026-06-12 02:56:11,665.665 INFO    ] No existing commands found in stream
[2026-06-12 02:56:16,684.684 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 02:56:16,687.687 INFO    ] Waiting 3.18 seconds before fallback handling...
[2026-06-12 02:56:20,276.276 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 02:56:20,277.277 INFO    ] Checking for system updates...
[2026-06-12 02:56:20,298.298 INFO    ] 200
[2026-06-12 02:56:20,299.299 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:56:20,343.343 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 02:56:20,345.345 INFO    ] No update needed
[2026-06-12 02:56:20,346.346 INFO    ] Checking for camera pi updates...
[2026-06-12 02:56:20,365.365 INFO    ] 200
[2026-06-12 02:56:20,366.366 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:56:20,394.394 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 02:56:20,437.437 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 02:56:20,438.438 INFO    ] No camera update needed
[2026-06-12 02:56:20,439.439 INFO    ] Script finished. Safe exiting...
[2026-06-12 02:56:20,441.441 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 02:56:20,444.444 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 02:56:20,446.446 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 02:56:22,489.489 INFO    ] ================================================
[2026-06-12 02:56:22,505.505 INFO    ] Launching Daemon at Fri Jun 12 02:56:22 IST 2026
[2026-06-12 02:56:22,516.516 INFO    ] ================================================
[2026-06-12 02:56:22,856.856 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 02:56:22
[2026-06-12 02:56:23,171.171 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 02:56:23,308.308 INFO    ] Initializing speech engine...
[2026-06-12 02:56:23,318.318 INFO    ] 2026-06-12 02:56:23
[2026-06-12 02:56:23,521.521 INFO    ] 2026-06-12 02:56:23
[2026-06-12 02:56:23,550.550 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 02:56:23,686.686 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 02:56:23,734.734 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 02:56:23,876.876 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 02:56:23,937.937 INFO    ] time= 12/06/2026 02:56:23
[2026-06-12 02:56:23,961.961 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 02:56:23,967.967 INFO    ] Checking for existing commands in stream...
[2026-06-12 02:56:24,034.034 INFO    ] No existing commands found in stream
[2026-06-12 02:56:29,048.048 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 02:56:29,051.051 INFO    ] Waiting 2.03 seconds before fallback handling...
[2026-06-12 02:56:31,488.488 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 02:56:31,490.490 INFO    ] Checking for system updates...
[2026-06-12 02:56:31,523.523 INFO    ] 200
[2026-06-12 02:56:31,525.525 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:56:31,563.563 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 02:56:31,565.565 INFO    ] No update needed
[2026-06-12 02:56:31,566.566 INFO    ] Checking for camera pi updates...
[2026-06-12 02:56:31,590.590 INFO    ] 200
[2026-06-12 02:56:31,591.591 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:56:31,619.619 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 02:56:31,649.649 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 02:56:31,651.651 INFO    ] No camera update needed
[2026-06-12 02:56:31,652.652 INFO    ] Script finished. Safe exiting...
[2026-06-12 02:56:31,653.653 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 02:56:31,657.657 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 02:56:31,661.661 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 02:56:33,693.693 INFO    ] ================================================
[2026-06-12 02:56:33,709.709 INFO    ] Launching Daemon at Fri Jun 12 02:56:33 IST 2026
[2026-06-12 02:56:33,720.720 INFO    ] ================================================
[2026-06-12 02:56:34,062.062 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 02:56:34
[2026-06-12 02:56:34,401.401 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 02:56:34,551.551 INFO    ] Initializing speech engine...
[2026-06-12 02:56:34,557.557 INFO    ] 2026-06-12 02:56:34
[2026-06-12 02:56:34,767.767 INFO    ] 2026-06-12 02:56:34
[2026-06-12 02:56:34,797.797 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 02:56:34,983.983 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 02:56:34,994.994 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 02:56:35,136.136 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 02:56:35,196.196 INFO    ] time= 12/06/2026 02:56:35
[2026-06-12 02:56:35,218.218 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 02:56:35,224.224 INFO    ] Checking for existing commands in stream...
[2026-06-12 02:56:35,292.292 INFO    ] No existing commands found in stream
[2026-06-12 02:56:40,307.307 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 02:56:40,310.310 INFO    ] Waiting 1.17 seconds before fallback handling...
[2026-06-12 02:56:41,868.868 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 02:56:41,870.870 INFO    ] Checking for system updates...
[2026-06-12 02:56:41,893.893 INFO    ] 200
[2026-06-12 02:56:41,894.894 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:56:41,931.931 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 02:56:41,932.932 INFO    ] No update needed
[2026-06-12 02:56:41,934.934 INFO    ] Checking for camera pi updates...
[2026-06-12 02:56:41,957.957 INFO    ] 200
[2026-06-12 02:56:41,959.959 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:56:41,987.987 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 02:56:42,032.032 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 02:56:42,034.034 INFO    ] No camera update needed
[2026-06-12 02:56:42,035.035 INFO    ] Script finished. Safe exiting...
[2026-06-12 02:56:42,037.037 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 02:56:42,040.040 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 02:56:42,043.043 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 02:56:44,081.081 INFO    ] ================================================
[2026-06-12 02:56:44,096.096 INFO    ] Launching Daemon at Fri Jun 12 02:56:44 IST 2026
[2026-06-12 02:56:44,109.109 INFO    ] ================================================
[2026-06-12 02:56:44,476.476 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 02:56:44
[2026-06-12 02:56:44,786.786 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 02:56:44,922.922 INFO    ] Initializing speech engine...
[2026-06-12 02:56:44,935.935 INFO    ] 2026-06-12 02:56:44
[2026-06-12 02:56:45,154.154 INFO    ] 2026-06-12 02:56:45
[2026-06-12 02:56:45,185.185 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 02:56:45,317.317 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 02:56:45,384.384 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 02:56:45,529.529 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 02:56:45,585.585 INFO    ] time= 12/06/2026 02:56:45
[2026-06-12 02:56:45,614.614 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 02:56:45,637.637 INFO    ] Checking for existing commands in stream...
[2026-06-12 02:56:45,714.714 INFO    ] No existing commands found in stream
[2026-06-12 02:56:50,743.743 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 02:56:50,746.746 INFO    ] Waiting 1.54 seconds before fallback handling...
[2026-06-12 02:56:52,693.693 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 02:56:52,695.695 INFO    ] Checking for system updates...
[2026-06-12 02:56:52,716.716 INFO    ] 200
[2026-06-12 02:56:52,718.718 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:56:52,752.752 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 02:56:52,753.753 INFO    ] No update needed
[2026-06-12 02:56:52,754.754 INFO    ] Checking for camera pi updates...
[2026-06-12 02:56:52,774.774 INFO    ] 200
[2026-06-12 02:56:52,775.775 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:56:52,798.798 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 02:56:52,837.837 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 02:56:52,839.839 INFO    ] No camera update needed
[2026-06-12 02:56:52,840.840 INFO    ] Script finished. Safe exiting...
[2026-06-12 02:56:52,841.841 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 02:56:52,844.844 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 02:56:52,847.847 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 02:56:54,886.886 INFO    ] ================================================
[2026-06-12 02:56:54,901.901 INFO    ] Launching Daemon at Fri Jun 12 02:56:54 IST 2026
[2026-06-12 02:56:54,911.911 INFO    ] ================================================
[2026-06-12 02:56:55,262.262 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 02:56:55
[2026-06-12 02:56:55,583.583 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 02:56:55,717.717 INFO    ] Initializing speech engine...
[2026-06-12 02:56:55,721.721 INFO    ] 2026-06-12 02:56:55
[2026-06-12 02:56:55,913.913 INFO    ] 2026-06-12 02:56:55
[2026-06-12 02:56:55,960.960 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 02:56:56,118.118 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 02:56:56,176.176 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 02:56:56,327.327 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 02:56:56,390.390 INFO    ] time= 12/06/2026 02:56:56
[2026-06-12 02:56:56,434.434 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 02:56:56,441.441 INFO    ] Checking for existing commands in stream...
[2026-06-12 02:56:56,514.514 INFO    ] No existing commands found in stream
[2026-06-12 02:57:01,523.523 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 02:57:01,526.526 INFO    ] Waiting 2.05 seconds before fallback handling...
[2026-06-12 02:57:03,974.974 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 02:57:03,976.976 INFO    ] Checking for system updates...
[2026-06-12 02:57:03,997.997 INFO    ] 200
[2026-06-12 02:57:03,999.999 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:57:04,031.031 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 02:57:04,033.033 INFO    ] No update needed
[2026-06-12 02:57:04,035.035 INFO    ] Checking for camera pi updates...
[2026-06-12 02:57:04,054.054 INFO    ] 200
[2026-06-12 02:57:04,056.056 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:57:04,079.079 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 02:57:04,124.124 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 02:57:04,125.125 INFO    ] No camera update needed
[2026-06-12 02:57:04,127.127 INFO    ] Script finished. Safe exiting...
[2026-06-12 02:57:04,128.128 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 02:57:04,131.131 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 02:57:04,134.134 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 02:57:06,175.175 INFO    ] ================================================
[2026-06-12 02:57:06,191.191 INFO    ] Launching Daemon at Fri Jun 12 02:57:06 IST 2026
[2026-06-12 02:57:06,201.201 INFO    ] ================================================
[2026-06-12 02:57:06,536.536 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 02:57:06
[2026-06-12 02:57:06,850.850 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 02:57:06,980.980 INFO    ] Initializing speech engine...
[2026-06-12 02:57:06,983.983 INFO    ] 2026-06-12 02:57:06
[2026-06-12 02:57:07,199.199 INFO    ] 2026-06-12 02:57:07
[2026-06-12 02:57:07,228.228 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 02:57:07,411.411 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 02:57:07,420.420 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 02:57:07,549.549 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 02:57:07,613.613 INFO    ] time= 12/06/2026 02:57:07
[2026-06-12 02:57:07,640.640 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 02:57:07,646.646 INFO    ] Checking for existing commands in stream...
[2026-06-12 02:57:07,713.713 INFO    ] No existing commands found in stream
[2026-06-12 02:57:12,722.722 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 02:57:12,730.730 INFO    ] Waiting 3.76 seconds before fallback handling...
[2026-06-12 02:57:16,853.853 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 02:57:16,855.855 INFO    ] Checking for system updates...
[2026-06-12 02:57:16,875.875 INFO    ] 200
[2026-06-12 02:57:16,876.876 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:57:16,906.906 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 02:57:16,908.908 INFO    ] No update needed
[2026-06-12 02:57:16,909.909 INFO    ] Checking for camera pi updates...
[2026-06-12 02:57:16,929.929 INFO    ] 200
[2026-06-12 02:57:16,931.931 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:57:16,956.956 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 02:57:17,002.002 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 02:57:17,004.004 INFO    ] No camera update needed
[2026-06-12 02:57:17,005.005 INFO    ] Script finished. Safe exiting...
[2026-06-12 02:57:17,006.006 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 02:57:17,009.009 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 02:57:17,012.012 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 02:57:19,052.052 INFO    ] ================================================
[2026-06-12 02:57:19,067.067 INFO    ] Launching Daemon at Fri Jun 12 02:57:19 IST 2026
[2026-06-12 02:57:19,078.078 INFO    ] ================================================
[2026-06-12 02:57:19,448.448 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 02:57:19
[2026-06-12 02:57:19,761.761 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 02:57:19,895.895 INFO    ] Initializing speech engine...
[2026-06-12 02:57:19,899.899 INFO    ] 2026-06-12 02:57:19
[2026-06-12 02:57:20,131.131 INFO    ] 2026-06-12 02:57:20
[2026-06-12 02:57:20,162.162 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 02:57:20,295.295 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 02:57:20,363.363 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 02:57:20,506.506 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 02:57:20,553.553 INFO    ] time= 12/06/2026 02:57:20
[2026-06-12 02:57:20,593.593 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 02:57:20,616.616 INFO    ] Checking for existing commands in stream...
[2026-06-12 02:57:20,693.693 INFO    ] No existing commands found in stream
[2026-06-12 02:57:25,704.704 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 02:57:25,707.707 INFO    ] Waiting 0.26 seconds before fallback handling...
[2026-06-12 02:57:26,351.351 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 02:57:26,353.353 INFO    ] Checking for system updates...
[2026-06-12 02:57:26,375.375 INFO    ] 200
[2026-06-12 02:57:26,377.377 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:57:26,407.407 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 02:57:26,409.409 INFO    ] No update needed
[2026-06-12 02:57:26,411.411 INFO    ] Checking for camera pi updates...
[2026-06-12 02:57:26,431.431 INFO    ] 200
[2026-06-12 02:57:26,433.433 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:57:26,456.456 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 02:57:26,502.502 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 02:57:26,504.504 INFO    ] No camera update needed
[2026-06-12 02:57:26,505.505 INFO    ] Script finished. Safe exiting...
[2026-06-12 02:57:26,506.506 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 02:57:26,510.510 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 02:57:26,513.513 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 02:57:28,553.553 INFO    ] ================================================
[2026-06-12 02:57:28,568.568 INFO    ] Launching Daemon at Fri Jun 12 02:57:28 IST 2026
[2026-06-12 02:57:28,579.579 INFO    ] ================================================
[2026-06-12 02:57:28,948.948 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 02:57:28
[2026-06-12 02:57:29,264.264 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 02:57:29,399.399 INFO    ] Initializing speech engine...
[2026-06-12 02:57:29,403.403 INFO    ] 2026-06-12 02:57:29
[2026-06-12 02:57:29,634.634 INFO    ] 2026-06-12 02:57:29
[2026-06-12 02:57:29,665.665 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 02:57:29,799.799 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 02:57:29,847.847 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 02:57:30,010.010 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 02:57:30,078.078 INFO    ] time= 12/06/2026 02:57:30
[2026-06-12 02:57:30,103.103 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 02:57:30,120.120 INFO    ] Checking for existing commands in stream...
[2026-06-12 02:57:30,224.224 INFO    ] No existing commands found in stream
[2026-06-12 02:57:35,233.233 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 02:57:35,236.236 INFO    ] Waiting 1.76 seconds before fallback handling...
[2026-06-12 02:57:37,375.375 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 02:57:37,376.376 INFO    ] Checking for system updates...
[2026-06-12 02:57:37,398.398 INFO    ] 200
[2026-06-12 02:57:37,400.400 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:57:37,431.431 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 02:57:37,432.432 INFO    ] No update needed
[2026-06-12 02:57:37,433.433 INFO    ] Checking for camera pi updates...
[2026-06-12 02:57:37,455.455 INFO    ] 200
[2026-06-12 02:57:37,456.456 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:57:37,479.479 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 02:57:37,524.524 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 02:57:37,525.525 INFO    ] No camera update needed
[2026-06-12 02:57:37,526.526 INFO    ] Script finished. Safe exiting...
[2026-06-12 02:57:37,527.527 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 02:57:37,531.531 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 02:57:37,533.533 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 02:57:39,572.572 INFO    ] ================================================
[2026-06-12 02:57:39,588.588 INFO    ] Launching Daemon at Fri Jun 12 02:57:39 IST 2026
[2026-06-12 02:57:39,599.599 INFO    ] ================================================
[2026-06-12 02:57:39,954.954 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 02:57:39
[2026-06-12 02:57:40,267.267 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 02:57:40,399.399 INFO    ] Initializing speech engine...
[2026-06-12 02:57:40,403.403 INFO    ] 2026-06-12 02:57:40
[2026-06-12 02:57:40,602.602 INFO    ] 2026-06-12 02:57:40
[2026-06-12 02:57:40,643.643 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 02:57:40,802.802 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 02:57:40,855.855 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 02:57:41,013.013 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 02:57:41,060.060 INFO    ] time= 12/06/2026 02:57:41
[2026-06-12 02:57:41,100.100 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 02:57:41,122.122 INFO    ] Checking for existing commands in stream...
[2026-06-12 02:57:41,226.226 INFO    ] No existing commands found in stream
[2026-06-12 02:57:46,235.235 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 02:57:46,238.238 INFO    ] Waiting 2.99 seconds before fallback handling...
[2026-06-12 02:57:49,627.627 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 02:57:49,629.629 INFO    ] Checking for system updates...
[2026-06-12 02:57:49,650.650 INFO    ] 200
[2026-06-12 02:57:49,651.651 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:57:49,683.683 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 02:57:49,684.684 INFO    ] No update needed
[2026-06-12 02:57:49,686.686 INFO    ] Checking for camera pi updates...
[2026-06-12 02:57:49,705.705 INFO    ] 200
[2026-06-12 02:57:49,707.707 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:57:49,732.732 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 02:57:49,777.777 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 02:57:49,778.778 INFO    ] No camera update needed
[2026-06-12 02:57:49,780.780 INFO    ] Script finished. Safe exiting...
[2026-06-12 02:57:49,781.781 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 02:57:49,784.784 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 02:57:49,787.787 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 02:57:51,818.818 INFO    ] ================================================
[2026-06-12 02:57:51,827.827 INFO    ] Launching Daemon at Fri Jun 12 02:57:51 IST 2026
[2026-06-12 02:57:51,833.833 INFO    ] ================================================
[2026-06-12 02:57:52,139.139 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 02:57:52
[2026-06-12 02:57:52,458.458 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 02:57:52,603.603 INFO    ] Initializing speech engine...
[2026-06-12 02:57:52,608.608 INFO    ] 2026-06-12 02:57:52
[2026-06-12 02:57:52,812.812 INFO    ] 2026-06-12 02:57:52
[2026-06-12 02:57:52,842.842 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 02:57:53,030.030 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 02:57:53,034.034 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 02:57:53,168.168 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 02:57:53,226.226 INFO    ] time= 12/06/2026 02:57:53
[2026-06-12 02:57:53,251.251 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 02:57:53,267.267 INFO    ] Checking for existing commands in stream...
[2026-06-12 02:57:53,336.336 INFO    ] No existing commands found in stream
[2026-06-12 02:57:58,349.349 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 02:57:58,352.352 INFO    ] Waiting 0.38 seconds before fallback handling...
[2026-06-12 02:58:04,079.079 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 02:58:04,080.080 INFO    ] Checking for system updates...
[2026-06-12 02:58:04,109.109 INFO    ] 200
[2026-06-12 02:58:04,111.111 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:58:04,143.143 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 02:58:04,144.144 INFO    ] No update needed
[2026-06-12 02:58:04,146.146 INFO    ] Checking for camera pi updates...
[2026-06-12 02:58:04,165.165 INFO    ] 200
[2026-06-12 02:58:04,166.166 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:58:04,190.190 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 02:58:04,242.242 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 02:58:04,243.243 INFO    ] No camera update needed
[2026-06-12 02:58:04,245.245 INFO    ] Script finished. Safe exiting...
[2026-06-12 02:58:04,246.246 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 02:58:04,249.249 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 02:58:04,252.252 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 02:58:06,292.292 INFO    ] ================================================
[2026-06-12 02:58:06,308.308 INFO    ] Launching Daemon at Fri Jun 12 02:58:06 IST 2026
[2026-06-12 02:58:06,319.319 INFO    ] ================================================
[2026-06-12 02:58:06,670.670 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 02:58:06
[2026-06-12 02:58:06,981.981 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 02:58:07,122.122 INFO    ] Initializing speech engine...
[2026-06-12 02:58:07,127.127 INFO    ] 2026-06-12 02:58:07
[2026-06-12 02:58:07,331.331 INFO    ] 2026-06-12 02:58:07
[2026-06-12 02:58:07,359.359 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 02:58:07,541.541 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 02:58:07,551.551 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 02:58:07,676.676 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 02:58:07,746.746 INFO    ] time= 12/06/2026 02:58:07
[2026-06-12 02:58:07,770.770 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 02:58:07,776.776 INFO    ] Checking for existing commands in stream...
[2026-06-12 02:58:07,843.843 INFO    ] No existing commands found in stream
[2026-06-12 02:58:12,857.857 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 02:58:12,859.859 INFO    ] Waiting 3.79 seconds before fallback handling...
[2026-06-12 02:58:17,009.009 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 02:58:17,010.010 INFO    ] Checking for system updates...
[2026-06-12 02:58:17,031.031 INFO    ] 200
[2026-06-12 02:58:17,032.032 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:58:17,062.062 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 02:58:17,064.064 INFO    ] No update needed
[2026-06-12 02:58:17,065.065 INFO    ] Checking for camera pi updates...
[2026-06-12 02:58:17,084.084 INFO    ] 200
[2026-06-12 02:58:17,085.085 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:58:17,108.108 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 02:58:17,157.157 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 02:58:17,158.158 INFO    ] No camera update needed
[2026-06-12 02:58:17,159.159 INFO    ] Script finished. Safe exiting...
[2026-06-12 02:58:17,161.161 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 02:58:17,164.164 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 02:58:17,167.167 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 02:58:19,209.209 INFO    ] ================================================
[2026-06-12 02:58:19,224.224 INFO    ] Launching Daemon at Fri Jun 12 02:58:19 IST 2026
[2026-06-12 02:58:19,236.236 INFO    ] ================================================
[2026-06-12 02:58:19,603.603 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 02:58:19
[2026-06-12 02:58:19,929.929 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 02:58:20,071.071 INFO    ] Initializing speech engine...
[2026-06-12 02:58:20,075.075 INFO    ] 2026-06-12 02:58:20
[2026-06-12 02:58:20,277.277 INFO    ] 2026-06-12 02:58:20
[2026-06-12 02:58:20,306.306 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 02:58:20,488.488 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 02:58:20,498.498 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 02:58:20,627.627 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 02:58:20,686.686 INFO    ] time= 12/06/2026 02:58:20
[2026-06-12 02:58:20,718.718 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 02:58:20,724.724 INFO    ] Checking for existing commands in stream...
[2026-06-12 02:58:20,791.791 INFO    ] No existing commands found in stream
[2026-06-12 02:58:25,800.800 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 02:58:25,803.803 INFO    ] Waiting 0.51 seconds before fallback handling...
[2026-06-12 02:58:26,679.679 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 02:58:26,681.681 INFO    ] Checking for system updates...
[2026-06-12 02:58:26,702.702 INFO    ] 200
[2026-06-12 02:58:26,703.703 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:58:26,735.735 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 02:58:26,736.736 INFO    ] No update needed
[2026-06-12 02:58:26,737.737 INFO    ] Checking for camera pi updates...
[2026-06-12 02:58:26,757.757 INFO    ] 200
[2026-06-12 02:58:26,759.759 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:58:26,782.782 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 02:58:26,824.824 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 02:58:26,825.825 INFO    ] No camera update needed
[2026-06-12 02:58:26,827.827 INFO    ] Script finished. Safe exiting...
[2026-06-12 02:58:26,828.828 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 02:58:26,831.831 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 02:58:26,834.834 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 02:58:28,874.874 INFO    ] ================================================
[2026-06-12 02:58:28,890.890 INFO    ] Launching Daemon at Fri Jun 12 02:58:28 IST 2026
[2026-06-12 02:58:28,901.901 INFO    ] ================================================
[2026-06-12 02:58:29,269.269 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 02:58:29
[2026-06-12 02:58:29,594.594 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 02:58:29,727.727 INFO    ] Initializing speech engine...
[2026-06-12 02:58:29,732.732 INFO    ] 2026-06-12 02:58:29
[2026-06-12 02:58:29,963.963 INFO    ] 2026-06-12 02:58:29
[2026-06-12 02:58:29,994.994 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 02:58:30,193.193 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 02:58:30,197.197 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 02:58:30,344.344 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 02:58:30,398.398 INFO    ] time= 12/06/2026 02:58:30
[2026-06-12 02:58:30,433.433 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 02:58:30,445.445 INFO    ] Checking for existing commands in stream...
[2026-06-12 02:58:30,522.522 INFO    ] No existing commands found in stream
[2026-06-12 02:58:35,531.531 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 02:58:35,534.534 INFO    ] Waiting 1.54 seconds before fallback handling...
[2026-06-12 02:58:37,447.447 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 02:58:37,449.449 INFO    ] Checking for system updates...
[2026-06-12 02:58:37,471.471 INFO    ] 200
[2026-06-12 02:58:37,472.472 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:58:37,508.508 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 02:58:37,509.509 INFO    ] No update needed
[2026-06-12 02:58:37,511.511 INFO    ] Checking for camera pi updates...
[2026-06-12 02:58:37,534.534 INFO    ] 200
[2026-06-12 02:58:37,536.536 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:58:37,559.559 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 02:58:37,615.615 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 02:58:37,616.616 INFO    ] No camera update needed
[2026-06-12 02:58:37,617.617 INFO    ] Script finished. Safe exiting...
[2026-06-12 02:58:37,619.619 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 02:58:37,622.622 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 02:58:37,625.625 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 02:58:39,665.665 INFO    ] ================================================
[2026-06-12 02:58:39,680.680 INFO    ] Launching Daemon at Fri Jun 12 02:58:39 IST 2026
[2026-06-12 02:58:39,691.691 INFO    ] ================================================
[2026-06-12 02:58:40,059.059 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 02:58:40
[2026-06-12 02:58:40,381.381 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 02:58:40,514.514 INFO    ] Initializing speech engine...
[2026-06-12 02:58:40,522.522 INFO    ] 2026-06-12 02:58:40
[2026-06-12 02:58:40,734.734 INFO    ] 2026-06-12 02:58:40
[2026-06-12 02:58:40,764.764 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 02:58:40,951.951 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 02:58:40,963.963 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 02:58:41,095.095 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 02:58:41,159.159 INFO    ] time= 12/06/2026 02:58:41
[2026-06-12 02:58:41,182.182 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 02:58:41,188.188 INFO    ] Checking for existing commands in stream...
[2026-06-12 02:58:41,254.254 INFO    ] No existing commands found in stream
[2026-06-12 02:58:46,264.264 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 02:58:46,267.267 INFO    ] Waiting 1.75 seconds before fallback handling...
[2026-06-12 02:58:48,400.400 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 02:58:48,401.401 INFO    ] Checking for system updates...
[2026-06-12 02:58:48,422.422 INFO    ] 200
[2026-06-12 02:58:48,424.424 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:58:48,454.454 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 02:58:48,456.456 INFO    ] No update needed
[2026-06-12 02:58:48,457.457 INFO    ] Checking for camera pi updates...
[2026-06-12 02:58:48,477.477 INFO    ] 200
[2026-06-12 02:58:48,478.478 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:58:48,501.501 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 02:58:48,547.547 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 02:58:48,548.548 INFO    ] No camera update needed
[2026-06-12 02:58:48,550.550 INFO    ] Script finished. Safe exiting...
[2026-06-12 02:58:48,551.551 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 02:58:48,555.555 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 02:58:48,558.558 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 02:58:50,596.596 INFO    ] ================================================
[2026-06-12 02:58:50,612.612 INFO    ] Launching Daemon at Fri Jun 12 02:58:50 IST 2026
[2026-06-12 02:58:50,624.624 INFO    ] ================================================
[2026-06-12 02:58:50,964.964 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 02:58:50
[2026-06-12 02:58:51,275.275 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 02:58:51,406.406 INFO    ] Initializing speech engine...
[2026-06-12 02:58:51,413.413 INFO    ] 2026-06-12 02:58:51
[2026-06-12 02:58:51,627.627 INFO    ] 2026-06-12 02:58:51
[2026-06-12 02:58:51,656.656 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 02:58:51,843.843 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 02:58:51,851.851 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 02:58:51,983.983 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 02:58:52,047.047 INFO    ] time= 12/06/2026 02:58:51
[2026-06-12 02:58:52,075.075 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 02:58:52,081.081 INFO    ] Checking for existing commands in stream...
[2026-06-12 02:58:52,150.150 INFO    ] No existing commands found in stream
[2026-06-12 02:58:57,159.159 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 02:58:57,161.161 INFO    ] Waiting 3.68 seconds before fallback handling...
[2026-06-12 02:59:01,242.242 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 02:59:01,245.245 INFO    ] Checking for system updates...
[2026-06-12 02:59:01,285.285 INFO    ] 200
[2026-06-12 02:59:01,287.287 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:59:01,334.334 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 02:59:01,337.337 INFO    ] No update needed
[2026-06-12 02:59:01,340.340 INFO    ] Checking for camera pi updates...
[2026-06-12 02:59:01,365.365 INFO    ] 200
[2026-06-12 02:59:01,367.367 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:59:01,400.400 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 02:59:01,454.454 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 02:59:01,457.457 INFO    ] No camera update needed
[2026-06-12 02:59:01,459.459 INFO    ] Script finished. Safe exiting...
[2026-06-12 02:59:01,462.462 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 02:59:01,468.468 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 02:59:01,474.474 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 02:59:03,515.515 INFO    ] ================================================
[2026-06-12 02:59:03,531.531 INFO    ] Launching Daemon at Fri Jun 12 02:59:03 IST 2026
[2026-06-12 02:59:03,542.542 INFO    ] ================================================
[2026-06-12 02:59:03,870.870 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 02:59:03
[2026-06-12 02:59:04,186.186 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 02:59:04,335.335 INFO    ] Initializing speech engine...
[2026-06-12 02:59:04,341.341 INFO    ] 2026-06-12 02:59:04
[2026-06-12 02:59:04,556.556 INFO    ] 2026-06-12 02:59:04
[2026-06-12 02:59:04,586.586 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 02:59:04,786.786 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 02:59:04,790.790 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 02:59:04,937.937 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 02:59:05,001.001 INFO    ] time= 12/06/2026 02:59:04
[2026-06-12 02:59:05,026.026 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 02:59:05,038.038 INFO    ] Checking for existing commands in stream...
[2026-06-12 02:59:05,114.114 INFO    ] No existing commands found in stream
[2026-06-12 02:59:10,124.124 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 02:59:10,127.127 INFO    ] Waiting 1.06 seconds before fallback handling...
[2026-06-12 02:59:11,537.537 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 02:59:11,539.539 INFO    ] Checking for system updates...
[2026-06-12 02:59:11,561.561 INFO    ] 200
[2026-06-12 02:59:11,563.563 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:59:11,593.593 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 02:59:11,595.595 INFO    ] No update needed
[2026-06-12 02:59:11,596.596 INFO    ] Checking for camera pi updates...
[2026-06-12 02:59:11,616.616 INFO    ] 200
[2026-06-12 02:59:11,617.617 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:59:11,640.640 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 02:59:11,671.671 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 02:59:11,672.672 INFO    ] No camera update needed
[2026-06-12 02:59:11,674.674 INFO    ] Script finished. Safe exiting...
[2026-06-12 02:59:11,675.675 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 02:59:11,678.678 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 02:59:11,681.681 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 02:59:13,720.720 INFO    ] ================================================
[2026-06-12 02:59:13,736.736 INFO    ] Launching Daemon at Fri Jun 12 02:59:13 IST 2026
[2026-06-12 02:59:13,747.747 INFO    ] ================================================
[2026-06-12 02:59:14,094.094 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 02:59:14
[2026-06-12 02:59:14,413.413 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 02:59:14,552.552 INFO    ] Initializing speech engine...
[2026-06-12 02:59:14,562.562 INFO    ] 2026-06-12 02:59:14
[2026-06-12 02:59:14,767.767 INFO    ] 2026-06-12 02:59:14
[2026-06-12 02:59:14,795.795 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 02:59:14,977.977 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 02:59:14,987.987 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 02:59:15,133.133 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 02:59:15,187.187 INFO    ] time= 12/06/2026 02:59:15
[2026-06-12 02:59:15,208.208 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 02:59:15,215.215 INFO    ] Checking for existing commands in stream...
[2026-06-12 02:59:15,282.282 INFO    ] No existing commands found in stream
[2026-06-12 02:59:20,296.296 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 02:59:20,299.299 INFO    ] Waiting 0.62 seconds before fallback handling...
[2026-06-12 02:59:21,297.297 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 02:59:21,299.299 INFO    ] Checking for system updates...
[2026-06-12 02:59:21,320.320 INFO    ] 200
[2026-06-12 02:59:21,322.322 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:59:21,352.352 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 02:59:21,354.354 INFO    ] No update needed
[2026-06-12 02:59:21,355.355 INFO    ] Checking for camera pi updates...
[2026-06-12 02:59:21,375.375 INFO    ] 200
[2026-06-12 02:59:21,376.376 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:59:21,400.400 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 02:59:21,446.446 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 02:59:21,448.448 INFO    ] No camera update needed
[2026-06-12 02:59:21,449.449 INFO    ] Script finished. Safe exiting...
[2026-06-12 02:59:21,451.451 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 02:59:21,454.454 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 02:59:21,457.457 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 02:59:23,498.498 INFO    ] ================================================
[2026-06-12 02:59:23,514.514 INFO    ] Launching Daemon at Fri Jun 12 02:59:23 IST 2026
[2026-06-12 02:59:23,526.526 INFO    ] ================================================
[2026-06-12 02:59:23,914.914 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 02:59:23
[2026-06-12 02:59:24,258.258 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 02:59:24,411.411 INFO    ] Initializing speech engine...
[2026-06-12 02:59:24,417.417 INFO    ] 2026-06-12 02:59:24
[2026-06-12 02:59:24,625.625 INFO    ] 2026-06-12 02:59:24
[2026-06-12 02:59:24,654.654 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 02:59:24,838.838 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 02:59:24,842.842 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 02:59:24,984.984 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 02:59:25,047.047 INFO    ] time= 12/06/2026 02:59:24
[2026-06-12 02:59:25,070.070 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 02:59:25,076.076 INFO    ] Checking for existing commands in stream...
[2026-06-12 02:59:25,142.142 INFO    ] No existing commands found in stream
[2026-06-12 02:59:30,167.167 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 02:59:30,171.171 INFO    ] Waiting 3.08 seconds before fallback handling...
[2026-06-12 02:59:33,626.626 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 02:59:33,628.628 INFO    ] Checking for system updates...
[2026-06-12 02:59:33,649.649 INFO    ] 200
[2026-06-12 02:59:33,651.651 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:59:33,682.682 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 02:59:33,683.683 INFO    ] No update needed
[2026-06-12 02:59:33,685.685 INFO    ] Checking for camera pi updates...
[2026-06-12 02:59:33,704.704 INFO    ] 200
[2026-06-12 02:59:33,706.706 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:59:33,729.729 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 02:59:33,784.784 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 02:59:33,786.786 INFO    ] No camera update needed
[2026-06-12 02:59:33,787.787 INFO    ] Script finished. Safe exiting...
[2026-06-12 02:59:33,789.789 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 02:59:33,792.792 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 02:59:33,795.795 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 02:59:35,834.834 INFO    ] ================================================
[2026-06-12 02:59:35,850.850 INFO    ] Launching Daemon at Fri Jun 12 02:59:35 IST 2026
[2026-06-12 02:59:35,861.861 INFO    ] ================================================
[2026-06-12 02:59:36,252.252 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 02:59:36
[2026-06-12 02:59:36,595.595 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 02:59:36,752.752 INFO    ] Initializing speech engine...
[2026-06-12 02:59:36,757.757 INFO    ] 2026-06-12 02:59:36
[2026-06-12 02:59:36,966.966 INFO    ] 2026-06-12 02:59:36
[2026-06-12 02:59:36,996.996 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 02:59:37,182.182 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 02:59:37,193.193 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 02:59:37,322.322 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 02:59:37,383.383 INFO    ] time= 12/06/2026 02:59:37
[2026-06-12 02:59:37,417.417 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 02:59:37,424.424 INFO    ] Checking for existing commands in stream...
[2026-06-12 02:59:37,492.492 INFO    ] No existing commands found in stream
[2026-06-12 02:59:42,522.522 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 02:59:42,525.525 INFO    ] Waiting 0.51 seconds before fallback handling...
[2026-06-12 02:59:43,429.429 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 02:59:43,431.431 INFO    ] Checking for system updates...
[2026-06-12 02:59:43,453.453 INFO    ] 200
[2026-06-12 02:59:43,455.455 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:59:43,487.487 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 02:59:43,489.489 INFO    ] No update needed
[2026-06-12 02:59:43,490.490 INFO    ] Checking for camera pi updates...
[2026-06-12 02:59:43,510.510 INFO    ] 200
[2026-06-12 02:59:43,511.511 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:59:43,538.538 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 02:59:43,674.674 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 02:59:43,675.675 INFO    ] No camera update needed
[2026-06-12 02:59:43,676.676 INFO    ] Script finished. Safe exiting...
[2026-06-12 02:59:43,678.678 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 02:59:43,681.681 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 02:59:43,683.683 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 02:59:45,723.723 INFO    ] ================================================
[2026-06-12 02:59:45,738.738 INFO    ] Launching Daemon at Fri Jun 12 02:59:45 IST 2026
[2026-06-12 02:59:45,749.749 INFO    ] ================================================
[2026-06-12 02:59:46,121.121 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 02:59:46
[2026-06-12 02:59:46,439.439 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 02:59:46,576.576 INFO    ] Initializing speech engine...
[2026-06-12 02:59:46,589.589 INFO    ] 2026-06-12 02:59:46
[2026-06-12 02:59:46,810.810 INFO    ] 2026-06-12 02:59:46
[2026-06-12 02:59:46,841.841 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 02:59:46,985.985 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 02:59:47,043.043 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 02:59:47,186.186 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 02:59:47,243.243 INFO    ] time= 12/06/2026 02:59:47
[2026-06-12 02:59:47,283.283 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 02:59:47,295.295 INFO    ] Checking for existing commands in stream...
[2026-06-12 02:59:47,370.370 INFO    ] No existing commands found in stream
[2026-06-12 02:59:52,381.381 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 02:59:52,384.384 INFO    ] Waiting 3.27 seconds before fallback handling...
[2026-06-12 02:59:56,012.012 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 02:59:56,014.014 INFO    ] Checking for system updates...
[2026-06-12 02:59:56,034.034 INFO    ] 200
[2026-06-12 02:59:56,036.036 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:59:56,067.067 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 02:59:56,069.069 INFO    ] No update needed
[2026-06-12 02:59:56,070.070 INFO    ] Checking for camera pi updates...
[2026-06-12 02:59:56,089.089 INFO    ] 200
[2026-06-12 02:59:56,091.091 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 02:59:56,114.114 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 02:59:56,165.165 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 02:59:56,166.166 INFO    ] No camera update needed
[2026-06-12 02:59:56,167.167 INFO    ] Script finished. Safe exiting...
[2026-06-12 02:59:56,168.168 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 02:59:56,171.171 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 02:59:56,174.174 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 02:59:58,213.213 INFO    ] ================================================
[2026-06-12 02:59:58,228.228 INFO    ] Launching Daemon at Fri Jun 12 02:59:58 IST 2026
[2026-06-12 02:59:58,239.239 INFO    ] ================================================
[2026-06-12 02:59:58,621.621 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 02:59:58
[2026-06-12 02:59:58,963.963 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 02:59:59,110.110 INFO    ] Initializing speech engine...
[2026-06-12 02:59:59,120.120 INFO    ] 2026-06-12 02:59:59
[2026-06-12 02:59:59,331.331 INFO    ] 2026-06-12 02:59:59
[2026-06-12 02:59:59,360.360 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 02:59:59,543.543 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 02:59:59,553.553 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 02:59:59,701.701 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 02:59:59,754.754 INFO    ] time= 12/06/2026 02:59:59
[2026-06-12 02:59:59,776.776 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 02:59:59,783.783 INFO    ] Checking for existing commands in stream...
[2026-06-12 02:59:59,849.849 INFO    ] No existing commands found in stream
[2026-06-12 03:00:04,859.859 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 03:00:04,862.862 INFO    ] Waiting 2.36 seconds before fallback handling...
[2026-06-12 03:00:09,345.345 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 03:00:09,348.348 INFO    ] Checking for system updates...
[2026-06-12 03:00:09,386.386 INFO    ] 200
[2026-06-12 03:00:09,388.388 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:00:09,441.441 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 03:00:09,442.442 INFO    ] No update needed
[2026-06-12 03:00:09,444.444 INFO    ] Checking for camera pi updates...
[2026-06-12 03:00:09,465.465 INFO    ] 200
[2026-06-12 03:00:09,466.466 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:00:09,494.494 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 03:00:09,544.544 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 03:00:09,546.546 INFO    ] No camera update needed
[2026-06-12 03:00:09,547.547 INFO    ] Script finished. Safe exiting...
[2026-06-12 03:00:09,549.549 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 03:00:09,552.552 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 03:00:09,555.555 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 03:00:11,594.594 INFO    ] ================================================
[2026-06-12 03:00:11,610.610 INFO    ] Launching Daemon at Fri Jun 12 03:00:11 IST 2026
[2026-06-12 03:00:11,621.621 INFO    ] ================================================
[2026-06-12 03:00:11,967.967 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 03:00:11
[2026-06-12 03:00:12,279.279 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 03:00:12,412.412 INFO    ] Initializing speech engine...
[2026-06-12 03:00:12,417.417 INFO    ] 2026-06-12 03:00:12
[2026-06-12 03:00:12,644.644 INFO    ] 2026-06-12 03:00:12
[2026-06-12 03:00:12,676.676 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 03:00:12,807.807 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 03:00:12,870.870 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 03:00:13,028.028 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 03:00:13,091.091 INFO    ] time= 12/06/2026 03:00:13
[2026-06-12 03:00:13,119.119 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 03:00:13,121.121 INFO    ] Checking for existing commands in stream...
[2026-06-12 03:00:13,197.197 INFO    ] No existing commands found in stream
[2026-06-12 03:00:18,206.206 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 03:00:18,209.209 INFO    ] Waiting 2.73 seconds before fallback handling...
[2026-06-12 03:00:21,323.323 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 03:00:21,324.324 INFO    ] Checking for system updates...
[2026-06-12 03:00:21,345.345 INFO    ] 200
[2026-06-12 03:00:21,346.346 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:00:21,376.376 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 03:00:21,378.378 INFO    ] No update needed
[2026-06-12 03:00:21,379.379 INFO    ] Checking for camera pi updates...
[2026-06-12 03:00:21,400.400 INFO    ] 200
[2026-06-12 03:00:21,401.401 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:00:21,424.424 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 03:00:21,466.466 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 03:00:21,467.467 INFO    ] No camera update needed
[2026-06-12 03:00:21,469.469 INFO    ] Script finished. Safe exiting...
[2026-06-12 03:00:21,470.470 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 03:00:21,473.473 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 03:00:21,476.476 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 03:00:23,509.509 INFO    ] ================================================
[2026-06-12 03:00:23,524.524 INFO    ] Launching Daemon at Fri Jun 12 03:00:23 IST 2026
[2026-06-12 03:00:23,535.535 INFO    ] ================================================
[2026-06-12 03:00:23,883.883 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 03:00:23
[2026-06-12 03:00:24,200.200 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 03:00:24,343.343 INFO    ] Initializing speech engine...
[2026-06-12 03:00:24,348.348 INFO    ] 2026-06-12 03:00:24
[2026-06-12 03:00:24,552.552 INFO    ] 2026-06-12 03:00:24
[2026-06-12 03:00:24,581.581 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 03:00:24,766.766 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 03:00:24,775.775 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 03:00:24,925.925 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 03:00:24,980.980 INFO    ] time= 12/06/2026 03:00:24
[2026-06-12 03:00:24,996.996 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 03:00:25,002.002 INFO    ] Checking for existing commands in stream...
[2026-06-12 03:00:25,067.067 INFO    ] No existing commands found in stream
[2026-06-12 03:00:30,077.077 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 03:00:30,080.080 INFO    ] Waiting 1.37 seconds before fallback handling...
[2026-06-12 03:00:31,835.835 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 03:00:31,837.837 INFO    ] Checking for system updates...
[2026-06-12 03:00:31,862.862 INFO    ] 200
[2026-06-12 03:00:31,864.864 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:00:31,905.905 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 03:00:31,906.906 INFO    ] No update needed
[2026-06-12 03:00:31,908.908 INFO    ] Checking for camera pi updates...
[2026-06-12 03:00:31,931.931 INFO    ] 200
[2026-06-12 03:00:31,932.932 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:00:31,959.959 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 03:00:31,991.991 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 03:00:31,993.993 INFO    ] No camera update needed
[2026-06-12 03:00:31,995.995 INFO    ] Script finished. Safe exiting...
[2026-06-12 03:00:31,996.996 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 03:00:32,000.000 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 03:00:32,003.003 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 03:00:34,044.044 INFO    ] ================================================
[2026-06-12 03:00:34,063.063 INFO    ] Launching Daemon at Fri Jun 12 03:00:34 IST 2026
[2026-06-12 03:00:34,075.075 INFO    ] ================================================
[2026-06-12 03:00:34,416.416 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 03:00:34
[2026-06-12 03:00:34,727.727 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 03:00:34,870.870 INFO    ] Initializing speech engine...
[2026-06-12 03:00:34,875.875 INFO    ] 2026-06-12 03:00:34
[2026-06-12 03:00:35,080.080 INFO    ] 2026-06-12 03:00:35
[2026-06-12 03:00:35,110.110 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 03:00:35,264.264 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 03:00:35,299.299 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 03:00:35,435.435 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 03:00:35,501.501 INFO    ] time= 12/06/2026 03:00:35
[2026-06-12 03:00:35,529.529 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 03:00:35,536.536 INFO    ] Checking for existing commands in stream...
[2026-06-12 03:00:35,603.603 INFO    ] No existing commands found in stream
[2026-06-12 03:00:40,613.613 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 03:00:40,616.616 INFO    ] Waiting 3.06 seconds before fallback handling...
[2026-06-12 03:00:44,055.055 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 03:00:44,056.056 INFO    ] Checking for system updates...
[2026-06-12 03:00:44,079.079 INFO    ] 200
[2026-06-12 03:00:44,081.081 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:00:44,112.112 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 03:00:44,113.113 INFO    ] No update needed
[2026-06-12 03:00:44,114.114 INFO    ] Checking for camera pi updates...
[2026-06-12 03:00:44,134.134 INFO    ] 200
[2026-06-12 03:00:44,135.135 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:00:44,159.159 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 03:00:44,200.200 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 03:00:44,202.202 INFO    ] No camera update needed
[2026-06-12 03:00:44,203.203 INFO    ] Script finished. Safe exiting...
[2026-06-12 03:00:44,205.205 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 03:00:44,208.208 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 03:00:44,211.211 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 03:00:46,251.251 INFO    ] ================================================
[2026-06-12 03:00:46,266.266 INFO    ] Launching Daemon at Fri Jun 12 03:00:46 IST 2026
[2026-06-12 03:00:46,278.278 INFO    ] ================================================
[2026-06-12 03:00:46,616.616 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 03:00:46
[2026-06-12 03:00:46,931.931 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 03:00:47,062.062 INFO    ] Initializing speech engine...
[2026-06-12 03:00:47,070.070 INFO    ] 2026-06-12 03:00:47
[2026-06-12 03:00:47,282.282 INFO    ] 2026-06-12 03:00:47
[2026-06-12 03:00:47,311.311 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 03:00:47,495.495 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 03:00:47,504.504 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 03:00:47,631.631 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 03:00:47,698.698 INFO    ] time= 12/06/2026 03:00:47
[2026-06-12 03:00:47,722.722 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 03:00:47,729.729 INFO    ] Checking for existing commands in stream...
[2026-06-12 03:00:47,793.793 INFO    ] No existing commands found in stream
[2026-06-12 03:00:52,804.804 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 03:00:52,807.807 INFO    ] Waiting 2.29 seconds before fallback handling...
[2026-06-12 03:00:55,454.454 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 03:00:55,456.456 INFO    ] Checking for system updates...
[2026-06-12 03:00:55,476.476 INFO    ] 200
[2026-06-12 03:00:55,477.477 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:00:55,507.507 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 03:00:55,509.509 INFO    ] No update needed
[2026-06-12 03:00:55,510.510 INFO    ] Checking for camera pi updates...
[2026-06-12 03:00:55,531.531 INFO    ] 200
[2026-06-12 03:00:55,532.532 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:00:55,555.555 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 03:00:55,604.604 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 03:00:55,605.605 INFO    ] No camera update needed
[2026-06-12 03:00:55,607.607 INFO    ] Script finished. Safe exiting...
[2026-06-12 03:00:55,608.608 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 03:00:55,611.611 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 03:00:55,614.614 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 03:00:57,653.653 INFO    ] ================================================
[2026-06-12 03:00:57,669.669 INFO    ] Launching Daemon at Fri Jun 12 03:00:57 IST 2026
[2026-06-12 03:00:57,679.679 INFO    ] ================================================
[2026-06-12 03:00:58,027.027 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 03:00:58
[2026-06-12 03:00:58,356.356 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 03:00:58,506.506 INFO    ] Initializing speech engine...
[2026-06-12 03:00:58,512.512 INFO    ] 2026-06-12 03:00:58
[2026-06-12 03:00:58,720.720 INFO    ] 2026-06-12 03:00:58
[2026-06-12 03:00:58,750.750 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 03:00:58,936.936 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 03:00:58,946.946 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 03:00:59,099.099 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 03:00:59,148.148 INFO    ] time= 12/06/2026 03:00:59
[2026-06-12 03:00:59,172.172 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 03:00:59,179.179 INFO    ] Checking for existing commands in stream...
[2026-06-12 03:00:59,246.246 INFO    ] No existing commands found in stream
[2026-06-12 03:01:04,260.260 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 03:01:04,263.263 INFO    ] Waiting 3.09 seconds before fallback handling...
[2026-06-12 03:01:07,758.758 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 03:01:07,759.759 INFO    ] Checking for system updates...
[2026-06-12 03:01:07,783.783 INFO    ] 200
[2026-06-12 03:01:07,784.784 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:01:07,815.815 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 03:01:07,816.816 INFO    ] No update needed
[2026-06-12 03:01:07,818.818 INFO    ] Checking for camera pi updates...
[2026-06-12 03:01:07,839.839 INFO    ] 200
[2026-06-12 03:01:07,841.841 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:01:07,866.866 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 03:01:07,911.911 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 03:01:07,913.913 INFO    ] No camera update needed
[2026-06-12 03:01:07,914.914 INFO    ] Script finished. Safe exiting...
[2026-06-12 03:01:07,915.915 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 03:01:07,918.918 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 03:01:07,921.921 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 03:01:09,960.960 INFO    ] ================================================
[2026-06-12 03:01:09,975.975 INFO    ] Launching Daemon at Fri Jun 12 03:01:09 IST 2026
[2026-06-12 03:01:09,987.987 INFO    ] ================================================
[2026-06-12 03:01:10,317.317 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 03:01:10
[2026-06-12 03:01:10,629.629 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 03:01:10,761.761 INFO    ] Initializing speech engine...
[2026-06-12 03:01:10,766.766 INFO    ] 2026-06-12 03:01:10
[2026-06-12 03:01:10,993.993 INFO    ] 2026-06-12 03:01:10
[2026-06-12 03:01:11,023.023 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 03:01:11,217.217 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 03:01:11,224.224 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 03:01:11,369.369 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 03:01:11,441.441 INFO    ] time= 12/06/2026 03:01:11
[2026-06-12 03:01:11,463.463 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 03:01:11,469.469 INFO    ] Checking for existing commands in stream...
[2026-06-12 03:01:11,546.546 INFO    ] No existing commands found in stream
[2026-06-12 03:01:16,560.560 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 03:01:16,563.563 INFO    ] Waiting 0.75 seconds before fallback handling...
[2026-06-12 03:01:17,668.668 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 03:01:17,670.670 INFO    ] Checking for system updates...
[2026-06-12 03:01:17,691.691 INFO    ] 200
[2026-06-12 03:01:17,692.692 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:01:17,722.722 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 03:01:17,724.724 INFO    ] No update needed
[2026-06-12 03:01:17,725.725 INFO    ] Checking for camera pi updates...
[2026-06-12 03:01:17,747.747 INFO    ] 200
[2026-06-12 03:01:17,748.748 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:01:17,773.773 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 03:01:17,813.813 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 03:01:17,815.815 INFO    ] No camera update needed
[2026-06-12 03:01:17,816.816 INFO    ] Script finished. Safe exiting...
[2026-06-12 03:01:17,817.817 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 03:01:17,820.820 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 03:01:17,823.823 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 03:01:19,861.861 INFO    ] ================================================
[2026-06-12 03:01:19,876.876 INFO    ] Launching Daemon at Fri Jun 12 03:01:19 IST 2026
[2026-06-12 03:01:19,887.887 INFO    ] ================================================
[2026-06-12 03:01:20,249.249 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 03:01:20
[2026-06-12 03:01:20,565.565 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 03:01:20,703.703 INFO    ] Initializing speech engine...
[2026-06-12 03:01:20,716.716 INFO    ] 2026-06-12 03:01:20
[2026-06-12 03:01:20,934.934 INFO    ] 2026-06-12 03:01:20
[2026-06-12 03:01:20,966.966 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 03:01:21,163.163 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 03:01:21,167.167 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 03:01:21,305.305 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 03:01:21,372.372 INFO    ] time= 12/06/2026 03:01:21
[2026-06-12 03:01:21,406.406 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 03:01:21,418.418 INFO    ] Checking for existing commands in stream...
[2026-06-12 03:01:21,516.516 INFO    ] No existing commands found in stream
[2026-06-12 03:01:26,525.525 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 03:01:26,528.528 INFO    ] Waiting 2.90 seconds before fallback handling...
[2026-06-12 03:01:29,809.809 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 03:01:29,810.810 INFO    ] Checking for system updates...
[2026-06-12 03:01:29,831.831 INFO    ] 200
[2026-06-12 03:01:29,832.832 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:01:29,865.865 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 03:01:29,867.867 INFO    ] No update needed
[2026-06-12 03:01:29,868.868 INFO    ] Checking for camera pi updates...
[2026-06-12 03:01:29,887.887 INFO    ] 200
[2026-06-12 03:01:29,889.889 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:01:29,913.913 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 03:01:29,965.965 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 03:01:29,966.966 INFO    ] No camera update needed
[2026-06-12 03:01:29,967.967 INFO    ] Script finished. Safe exiting...
[2026-06-12 03:01:29,968.968 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 03:01:29,972.972 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 03:01:29,974.974 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 03:01:32,015.015 INFO    ] ================================================
[2026-06-12 03:01:32,031.031 INFO    ] Launching Daemon at Fri Jun 12 03:01:32 IST 2026
[2026-06-12 03:01:32,042.042 INFO    ] ================================================
[2026-06-12 03:01:32,427.427 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 03:01:32
[2026-06-12 03:01:32,759.759 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 03:01:32,910.910 INFO    ] Initializing speech engine...
[2026-06-12 03:01:32,915.915 INFO    ] 2026-06-12 03:01:32
[2026-06-12 03:01:33,125.125 INFO    ] 2026-06-12 03:01:33
[2026-06-12 03:01:33,154.154 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 03:01:33,340.340 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 03:01:33,350.350 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 03:01:33,482.482 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 03:01:33,546.546 INFO    ] time= 12/06/2026 03:01:33
[2026-06-12 03:01:33,574.574 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 03:01:33,581.581 INFO    ] Checking for existing commands in stream...
[2026-06-12 03:01:33,648.648 INFO    ] No existing commands found in stream
[2026-06-12 03:01:38,658.658 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 03:01:38,661.661 INFO    ] Waiting 3.68 seconds before fallback handling...
[2026-06-12 03:01:42,745.745 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 03:01:42,747.747 INFO    ] Checking for system updates...
[2026-06-12 03:01:42,768.768 INFO    ] 200
[2026-06-12 03:01:42,769.769 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:01:42,802.802 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 03:01:42,804.804 INFO    ] No update needed
[2026-06-12 03:01:42,805.805 INFO    ] Checking for camera pi updates...
[2026-06-12 03:01:42,825.825 INFO    ] 200
[2026-06-12 03:01:42,827.827 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:01:42,851.851 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 03:01:42,894.894 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 03:01:42,895.895 INFO    ] No camera update needed
[2026-06-12 03:01:42,896.896 INFO    ] Script finished. Safe exiting...
[2026-06-12 03:01:42,898.898 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 03:01:42,901.901 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 03:01:42,904.904 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 03:01:44,942.942 INFO    ] ================================================
[2026-06-12 03:01:44,958.958 INFO    ] Launching Daemon at Fri Jun 12 03:01:44 IST 2026
[2026-06-12 03:01:44,968.968 INFO    ] ================================================
[2026-06-12 03:01:45,326.326 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 03:01:45
[2026-06-12 03:01:45,636.636 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 03:01:45,794.794 INFO    ] Initializing speech engine...
[2026-06-12 03:01:45,801.801 INFO    ] 2026-06-12 03:01:45
[2026-06-12 03:01:46,023.023 INFO    ] 2026-06-12 03:01:45
[2026-06-12 03:01:46,055.055 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 03:01:46,274.274 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 03:01:46,278.278 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 03:01:46,387.387 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 03:01:46,389.389 INFO    ] time= 12/06/2026 03:01:46
[2026-06-12 03:01:46,424.424 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 03:01:46,460.460 INFO    ] Checking for existing commands in stream...
[2026-06-12 03:01:46,533.533 INFO    ] No existing commands found in stream
[2026-06-12 03:01:51,572.572 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 03:01:51,575.575 INFO    ] Waiting 0.03 seconds before fallback handling...
[2026-06-12 03:01:51,969.969 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 03:01:51,971.971 INFO    ] Checking for system updates...
[2026-06-12 03:01:51,991.991 INFO    ] 200
[2026-06-12 03:01:51,993.993 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:01:52,023.023 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 03:01:52,024.024 INFO    ] No update needed
[2026-06-12 03:01:52,025.025 INFO    ] Checking for camera pi updates...
[2026-06-12 03:01:52,048.048 INFO    ] 200
[2026-06-12 03:01:52,050.050 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:01:52,073.073 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 03:01:52,215.215 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 03:01:52,216.216 INFO    ] No camera update needed
[2026-06-12 03:01:52,218.218 INFO    ] Script finished. Safe exiting...
[2026-06-12 03:01:52,219.219 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 03:01:52,223.223 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 03:01:52,226.226 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 03:01:54,266.266 INFO    ] ================================================
[2026-06-12 03:01:54,282.282 INFO    ] Launching Daemon at Fri Jun 12 03:01:54 IST 2026
[2026-06-12 03:01:54,293.293 INFO    ] ================================================
[2026-06-12 03:01:54,648.648 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 03:01:54
[2026-06-12 03:01:54,960.960 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 03:01:55,092.092 INFO    ] Initializing speech engine...
[2026-06-12 03:01:55,100.100 INFO    ] 2026-06-12 03:01:55
[2026-06-12 03:01:55,314.314 INFO    ] 2026-06-12 03:01:55
[2026-06-12 03:01:55,344.344 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 03:01:55,529.529 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 03:01:55,533.533 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 03:01:55,668.668 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 03:01:55,739.739 INFO    ] time= 12/06/2026 03:01:55
[2026-06-12 03:01:55,764.764 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 03:01:55,770.770 INFO    ] Checking for existing commands in stream...
[2026-06-12 03:01:55,838.838 INFO    ] No existing commands found in stream
[2026-06-12 03:02:00,847.847 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 03:02:00,850.850 INFO    ] Waiting 2.52 seconds before fallback handling...
[2026-06-12 03:02:03,389.389 INFO    ] <class 'urllib3.exceptions.MaxRetryError'>
[2026-06-12 03:02:03,413.413 INFO    ] ("HTTPSConnectionPool(host='neuustore.com', port=443): Max retries exceeded with url: /tm/process-order/getorder/TM09202301 (Caused by NewConnectionError('<urllib3.connection.VerifiedHTTPSConnection object at 0x73cd1630>: Failed to establish a new connection: [Errno 101] Network is unreachable',))",)
[2026-06-12 03:02:03,422.422 INFO    ] HTTPSConnectionPool(host='neuustore.com', port=443): Max retries exceeded with url: /tm/process-order/getorder/TM09202301 (Caused by NewConnectionError('<urllib3.connection.VerifiedHTTPSConnection object at 0x73cd1630>: Failed to establish a new connection: [Errno 101] Network is unreachable',))
[2026-06-12 03:02:03,430.430 INFO    ] None
[2026-06-12 03:02:03,433.433 INFO    ] Checking for system updates...
[2026-06-12 03:02:03,478.478 INFO    ] 200
[2026-06-12 03:02:03,480.480 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:02:03,528.528 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 03:02:03,529.529 INFO    ] No update needed
[2026-06-12 03:02:03,531.531 INFO    ] Checking for camera pi updates...
[2026-06-12 03:02:03,550.550 INFO    ] 200
[2026-06-12 03:02:03,552.552 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:02:03,577.577 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 03:02:03,625.625 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 03:02:03,626.626 INFO    ] No camera update needed
[2026-06-12 03:02:03,628.628 INFO    ] Script finished. Safe exiting...
[2026-06-12 03:02:03,629.629 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 03:02:03,632.632 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 03:02:03,635.635 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 03:02:05,679.679 INFO    ] ================================================
[2026-06-12 03:02:05,695.695 INFO    ] Launching Daemon at Fri Jun 12 03:02:05 IST 2026
[2026-06-12 03:02:05,707.707 INFO    ] ================================================
[2026-06-12 03:02:06,039.039 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 03:02:06
[2026-06-12 03:02:06,356.356 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 03:02:06,490.490 INFO    ] Initializing speech engine...
[2026-06-12 03:02:06,502.502 INFO    ] 2026-06-12 03:02:06
[2026-06-12 03:02:06,722.722 INFO    ] 2026-06-12 03:02:06
[2026-06-12 03:02:06,752.752 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 03:02:06,805.805 INFO    ] VendingMachinePublisher.__init__: Redis error: Error 101 connecting to live.vendingbuddy.in:23294. Network is unreachable.
[2026-06-12 03:02:06,848.848 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-06-12 03:02:06,860.860 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 03:02:06,866.866 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 03:02:06,926.926 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-06-12 03:02:06,973.973 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 03:02:09,006.006 INFO    ] ================================================
[2026-06-12 03:02:09,014.014 INFO    ] Launching Daemon at Fri Jun 12 03:02:09 IST 2026
[2026-06-12 03:02:09,021.021 INFO    ] ================================================
[2026-06-12 03:02:09,325.325 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 03:02:09
[2026-06-12 03:02:09,637.637 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 03:02:09,769.769 INFO    ] Initializing speech engine...
[2026-06-12 03:02:09,772.772 INFO    ] 2026-06-12 03:02:09
[2026-06-12 03:02:09,965.965 INFO    ] 2026-06-12 03:02:09
[2026-06-12 03:02:10,010.010 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 03:02:10,049.049 INFO    ] VendingMachinePublisher.__init__: Redis error: Error 101 connecting to live.vendingbuddy.in:23294. Network is unreachable.
[2026-06-12 03:02:10,127.127 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-06-12 03:02:10,132.132 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 03:02:10,146.146 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 03:02:10,162.162 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-06-12 03:02:10,205.205 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 03:02:12,269.269 INFO    ] ================================================
[2026-06-12 03:02:12,285.285 INFO    ] Launching Daemon at Fri Jun 12 03:02:12 IST 2026
[2026-06-12 03:02:12,296.296 INFO    ] ================================================
[2026-06-12 03:02:12,618.618 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 03:02:12
[2026-06-12 03:02:12,931.931 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 03:02:13,063.063 INFO    ] Initializing speech engine...
[2026-06-12 03:02:13,070.070 INFO    ] 2026-06-12 03:02:13
[2026-06-12 03:02:13,284.284 INFO    ] 2026-06-12 03:02:13
[2026-06-12 03:02:13,314.314 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 03:02:13,367.367 INFO    ] VendingMachinePublisher.__init__: Redis error: Error 101 connecting to live.vendingbuddy.in:23294. Network is unreachable.
[2026-06-12 03:02:13,400.400 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-06-12 03:02:13,417.417 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 03:02:13,427.427 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 03:02:13,467.467 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-06-12 03:02:13,534.534 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 03:02:15,573.573 INFO    ] ================================================
[2026-06-12 03:02:15,589.589 INFO    ] Launching Daemon at Fri Jun 12 03:02:15 IST 2026
[2026-06-12 03:02:15,602.602 INFO    ] ================================================
[2026-06-12 03:02:15,966.966 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 03:02:15
[2026-06-12 03:02:16,304.304 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 03:02:16,455.455 INFO    ] Initializing speech engine...
[2026-06-12 03:02:16,461.461 INFO    ] 2026-06-12 03:02:16
[2026-06-12 03:02:16,652.652 INFO    ] 2026-06-12 03:02:16
[2026-06-12 03:02:16,681.681 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 03:02:16,725.725 INFO    ] VendingMachinePublisher.__init__: Redis error: Error 101 connecting to live.vendingbuddy.in:23294. Network is unreachable.
[2026-06-12 03:02:16,802.802 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-06-12 03:02:16,811.811 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 03:02:16,830.830 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 03:02:16,870.870 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-06-12 03:02:16,938.938 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 03:02:18,984.984 INFO    ] ================================================
[2026-06-12 03:02:19,999.999 INFO    ] Launching Daemon at Fri Jun 12 03:02:18 IST 2026
[2026-06-12 03:02:19,011.011 INFO    ] ================================================
[2026-06-12 03:02:19,377.377 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 03:02:19
[2026-06-12 03:02:19,694.694 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 03:02:19,838.838 INFO    ] Initializing speech engine...
[2026-06-12 03:02:19,842.842 INFO    ] 2026-06-12 03:02:19
[2026-06-12 03:02:20,048.048 INFO    ] 2026-06-12 03:02:20
[2026-06-12 03:02:20,077.077 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 03:02:20,100.100 INFO    ] VendingMachinePublisher.__init__: Redis error: Error 101 connecting to live.vendingbuddy.in:23294. Network is unreachable.
[2026-06-12 03:02:20,162.162 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-06-12 03:02:20,166.166 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 03:02:20,190.190 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 03:02:20,198.198 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-06-12 03:02:20,283.283 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 03:02:22,337.337 INFO    ] ================================================
[2026-06-12 03:02:22,352.352 INFO    ] Launching Daemon at Fri Jun 12 03:02:22 IST 2026
[2026-06-12 03:02:22,363.363 INFO    ] ================================================
[2026-06-12 03:02:22,751.751 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 03:02:22
[2026-06-12 03:02:23,063.063 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 03:02:23,193.193 INFO    ] Initializing speech engine...
[2026-06-12 03:02:23,196.196 INFO    ] 2026-06-12 03:02:23
[2026-06-12 03:02:23,412.412 INFO    ] 2026-06-12 03:02:23
[2026-06-12 03:02:23,441.441 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 03:02:23,465.465 INFO    ] VendingMachinePublisher.__init__: Redis error: Error 101 connecting to live.vendingbuddy.in:23294. Network is unreachable.
[2026-06-12 03:02:23,526.526 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-06-12 03:02:23,546.546 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 03:02:23,553.553 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 03:02:23,592.592 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-06-12 03:02:23,659.659 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 03:02:25,697.697 INFO    ] ================================================
[2026-06-12 03:02:25,713.713 INFO    ] Launching Daemon at Fri Jun 12 03:02:25 IST 2026
[2026-06-12 03:02:25,725.725 INFO    ] ================================================
[2026-06-12 03:02:26,102.102 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 03:02:26
[2026-06-12 03:02:26,448.448 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 03:02:26,595.595 INFO    ] Initializing speech engine...
[2026-06-12 03:02:26,600.600 INFO    ] 2026-06-12 03:02:26
[2026-06-12 03:02:26,810.810 INFO    ] 2026-06-12 03:02:26
[2026-06-12 03:02:26,840.840 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 03:02:26,893.893 INFO    ] VendingMachinePublisher.__init__: Redis error: Error 101 connecting to live.vendingbuddy.in:23294. Network is unreachable.
[2026-06-12 03:02:26,949.949 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-06-12 03:02:26,955.955 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 03:02:27,039.039 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 03:02:27,070.070 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-06-12 03:02:27,090.090 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 03:02:29,135.135 INFO    ] ================================================
[2026-06-12 03:02:29,151.151 INFO    ] Launching Daemon at Fri Jun 12 03:02:29 IST 2026
[2026-06-12 03:02:29,162.162 INFO    ] ================================================
[2026-06-12 03:02:29,553.553 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 03:02:29
[2026-06-12 03:02:29,897.897 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 03:02:30,053.053 INFO    ] Initializing speech engine...
[2026-06-12 03:02:30,060.060 INFO    ] 2026-06-12 03:02:30
[2026-06-12 03:02:30,267.267 INFO    ] 2026-06-12 03:02:30
[2026-06-12 03:02:30,296.296 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 03:02:30,322.322 INFO    ] VendingMachinePublisher.__init__: Redis error: Error 101 connecting to live.vendingbuddy.in:23294. Network is unreachable.
[2026-06-12 03:02:30,394.394 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-06-12 03:02:30,407.407 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 03:02:30,415.415 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 03:02:30,510.510 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-06-12 03:02:30,531.531 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 03:02:32,588.588 INFO    ] ================================================
[2026-06-12 03:02:32,603.603 INFO    ] Launching Daemon at Fri Jun 12 03:02:32 IST 2026
[2026-06-12 03:02:32,614.614 INFO    ] ================================================
[2026-06-12 03:02:32,975.975 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 03:02:32
[2026-06-12 03:02:33,290.290 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 03:02:33,433.433 INFO    ] Initializing speech engine...
[2026-06-12 03:02:33,438.438 INFO    ] 2026-06-12 03:02:33
[2026-06-12 03:02:33,644.644 INFO    ] 2026-06-12 03:02:33
[2026-06-12 03:02:33,672.672 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 03:02:33,697.697 INFO    ] VendingMachinePublisher.__init__: Redis error: Error 101 connecting to live.vendingbuddy.in:23294. Network is unreachable.
[2026-06-12 03:02:33,767.767 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-06-12 03:02:33,780.780 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 03:02:33,786.786 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 03:02:33,841.841 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-06-12 03:02:33,899.899 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 03:02:35,937.937 INFO    ] ================================================
[2026-06-12 03:02:35,954.954 INFO    ] Launching Daemon at Fri Jun 12 03:02:35 IST 2026
[2026-06-12 03:02:35,965.965 INFO    ] ================================================
[2026-06-12 03:02:36,358.358 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 03:02:36
[2026-06-12 03:02:36,698.698 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 03:02:36,850.850 INFO    ] Initializing speech engine...
[2026-06-12 03:02:36,856.856 INFO    ] 2026-06-12 03:02:36
[2026-06-12 03:02:37,047.047 INFO    ] 2026-06-12 03:02:37
[2026-06-12 03:02:37,093.093 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 03:02:37,163.163 INFO    ] VendingMachinePublisher.__init__: Redis error: Error 101 connecting to live.vendingbuddy.in:23294. Network is unreachable.
[2026-06-12 03:02:37,240.240 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-06-12 03:02:37,248.248 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 03:02:37,256.256 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 03:02:37,346.346 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-06-12 03:02:37,372.372 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 03:02:39,419.419 INFO    ] ================================================
[2026-06-12 03:02:39,435.435 INFO    ] Launching Daemon at Fri Jun 12 03:02:39 IST 2026
[2026-06-12 03:02:39,446.446 INFO    ] ================================================
[2026-06-12 03:02:39,802.802 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 03:02:39
[2026-06-12 03:02:40,116.116 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 03:02:40,247.247 INFO    ] Initializing speech engine...
[2026-06-12 03:02:40,256.256 INFO    ] 2026-06-12 03:02:40
[2026-06-12 03:02:40,472.472 INFO    ] 2026-06-12 03:02:40
[2026-06-12 03:02:40,501.501 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 03:02:40,525.525 INFO    ] VendingMachinePublisher.__init__: Redis error: Error 101 connecting to live.vendingbuddy.in:23294. Network is unreachable.
[2026-06-12 03:02:40,587.587 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-06-12 03:02:40,607.607 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 03:02:40,616.616 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 03:02:40,672.672 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-06-12 03:02:40,724.724 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 03:02:42,769.769 INFO    ] ================================================
[2026-06-12 03:02:42,785.785 INFO    ] Launching Daemon at Fri Jun 12 03:02:42 IST 2026
[2026-06-12 03:02:42,796.796 INFO    ] ================================================
[2026-06-12 03:02:43,149.149 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 03:02:43
[2026-06-12 03:02:43,463.463 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 03:02:43,596.596 INFO    ] Initializing speech engine...
[2026-06-12 03:02:43,601.601 INFO    ] 2026-06-12 03:02:43
[2026-06-12 03:02:43,832.832 INFO    ] 2026-06-12 03:02:43
[2026-06-12 03:02:43,863.863 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 03:02:43,888.888 INFO    ] VendingMachinePublisher.__init__: Redis error: Error 101 connecting to live.vendingbuddy.in:23294. Network is unreachable.
[2026-06-12 03:02:43,955.955 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-06-12 03:02:43,959.959 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 03:02:43,985.985 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 03:02:43,991.991 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-06-12 03:02:44,046.046 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 03:02:46,129.129 INFO    ] ================================================
[2026-06-12 03:02:46,145.145 INFO    ] Launching Daemon at Fri Jun 12 03:02:46 IST 2026
[2026-06-12 03:02:46,157.157 INFO    ] ================================================
[2026-06-12 03:02:46,504.504 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 03:02:46
[2026-06-12 03:02:46,818.818 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 03:02:46,960.960 INFO    ] Initializing speech engine...
[2026-06-12 03:02:46,968.968 INFO    ] 2026-06-12 03:02:46
[2026-06-12 03:02:47,186.186 INFO    ] 2026-06-12 03:02:47
[2026-06-12 03:02:47,217.217 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 03:02:52,239.239 INFO    ] VendingMachinePublisher.__init__: Redis error: Timeout connecting to server
[2026-06-12 03:02:52,253.253 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-06-12 03:02:52,255.255 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 03:02:52,258.258 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 03:02:52,260.260 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 03:02:54,298.298 INFO    ] ================================================
[2026-06-12 03:02:54,315.315 INFO    ] Launching Daemon at Fri Jun 12 03:02:54 IST 2026
[2026-06-12 03:02:54,326.326 INFO    ] ================================================
[2026-06-12 03:02:54,662.662 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 03:02:54
[2026-06-12 03:02:54,977.977 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 03:02:55,116.116 INFO    ] Initializing speech engine...
[2026-06-12 03:02:55,126.126 INFO    ] 2026-06-12 03:02:55
[2026-06-12 03:02:55,331.331 INFO    ] 2026-06-12 03:02:55
[2026-06-12 03:02:55,358.358 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 03:02:55,383.383 INFO    ] VendingMachinePublisher.__init__: Redis error: Error 101 connecting to live.vendingbuddy.in:23294. Network is unreachable.
[2026-06-12 03:02:55,444.444 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-06-12 03:02:55,465.465 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 03:02:55,473.473 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 03:02:55,513.513 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-06-12 03:02:55,579.579 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 03:02:57,621.621 INFO    ] ================================================
[2026-06-12 03:02:57,636.636 INFO    ] Launching Daemon at Fri Jun 12 03:02:57 IST 2026
[2026-06-12 03:02:57,648.648 INFO    ] ================================================
[2026-06-12 03:02:58,017.017 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 03:02:58
[2026-06-12 03:02:58,331.331 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 03:02:58,465.465 INFO    ] Initializing speech engine...
[2026-06-12 03:02:58,479.479 INFO    ] 2026-06-12 03:02:58
[2026-06-12 03:02:58,683.683 INFO    ] 2026-06-12 03:02:58
[2026-06-12 03:02:58,712.712 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 03:02:58,896.896 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 03:02:58,899.899 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 03:02:59,041.041 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 03:02:59,105.105 INFO    ] time= 12/06/2026 03:02:59
[2026-06-12 03:02:59,127.127 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 03:02:59,133.133 INFO    ] Checking for existing commands in stream...
[2026-06-12 03:02:59,200.200 INFO    ] No existing commands found in stream
[2026-06-12 03:03:04,214.214 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 03:03:04,216.216 INFO    ] Waiting 0.12 seconds before fallback handling...
[2026-06-12 03:03:04,719.719 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 03:03:04,721.721 INFO    ] Checking for system updates...
[2026-06-12 03:03:04,742.742 INFO    ] 200
[2026-06-12 03:03:04,743.743 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:03:04,774.774 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 03:03:04,775.775 INFO    ] No update needed
[2026-06-12 03:03:04,777.777 INFO    ] Checking for camera pi updates...
[2026-06-12 03:03:04,796.796 INFO    ] 200
[2026-06-12 03:03:04,800.800 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:03:04,825.825 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 03:03:04,863.863 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 03:03:04,865.865 INFO    ] No camera update needed
[2026-06-12 03:03:04,866.866 INFO    ] Script finished. Safe exiting...
[2026-06-12 03:03:04,868.868 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 03:03:04,871.871 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 03:03:04,874.874 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 03:03:06,915.915 INFO    ] ================================================
[2026-06-12 03:03:06,932.932 INFO    ] Launching Daemon at Fri Jun 12 03:03:06 IST 2026
[2026-06-12 03:03:06,943.943 INFO    ] ================================================
[2026-06-12 03:03:07,286.286 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 03:03:07
[2026-06-12 03:03:07,626.626 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 03:03:07,781.781 INFO    ] Initializing speech engine...
[2026-06-12 03:03:07,785.785 INFO    ] 2026-06-12 03:03:07
[2026-06-12 03:03:07,997.997 INFO    ] 2026-06-12 03:03:07
[2026-06-12 03:03:08,026.026 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 03:03:08,213.213 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 03:03:08,222.222 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 03:03:08,353.353 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 03:03:08,409.409 INFO    ] time= 12/06/2026 03:03:08
[2026-06-12 03:03:08,443.443 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 03:03:08,449.449 INFO    ] Checking for existing commands in stream...
[2026-06-12 03:03:08,521.521 INFO    ] No existing commands found in stream
[2026-06-12 03:03:13,530.530 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 03:03:13,534.534 INFO    ] Waiting 2.15 seconds before fallback handling...
[2026-06-12 03:03:16,081.081 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 03:03:16,083.083 INFO    ] Checking for system updates...
[2026-06-12 03:03:16,104.104 INFO    ] 200
[2026-06-12 03:03:16,105.105 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:03:16,136.136 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 03:03:16,137.137 INFO    ] No update needed
[2026-06-12 03:03:16,139.139 INFO    ] Checking for camera pi updates...
[2026-06-12 03:03:16,159.159 INFO    ] 200
[2026-06-12 03:03:16,160.160 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:03:16,185.185 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 03:03:16,231.231 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 03:03:16,233.233 INFO    ] No camera update needed
[2026-06-12 03:03:16,234.234 INFO    ] Script finished. Safe exiting...
[2026-06-12 03:03:16,235.235 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 03:03:16,238.238 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 03:03:16,241.241 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 03:03:18,280.280 INFO    ] ================================================
[2026-06-12 03:03:18,296.296 INFO    ] Launching Daemon at Fri Jun 12 03:03:18 IST 2026
[2026-06-12 03:03:18,308.308 INFO    ] ================================================
[2026-06-12 03:03:18,704.704 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 03:03:18
[2026-06-12 03:03:19,044.044 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 03:03:19,197.197 INFO    ] Initializing speech engine...
[2026-06-12 03:03:19,203.203 INFO    ] 2026-06-12 03:03:19
[2026-06-12 03:03:19,416.416 INFO    ] 2026-06-12 03:03:19
[2026-06-12 03:03:19,445.445 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 03:03:19,585.585 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 03:03:19,634.634 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 03:03:19,774.774 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 03:03:19,842.842 INFO    ] time= 12/06/2026 03:03:19
[2026-06-12 03:03:19,866.866 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 03:03:19,873.873 INFO    ] Checking for existing commands in stream...
[2026-06-12 03:03:19,941.941 INFO    ] No existing commands found in stream
[2026-06-12 03:03:24,955.955 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 03:03:24,958.958 INFO    ] Waiting 2.90 seconds before fallback handling...
[2026-06-12 03:03:28,200.200 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 03:03:28,202.202 INFO    ] Checking for system updates...
[2026-06-12 03:03:28,224.224 INFO    ] 200
[2026-06-12 03:03:28,225.225 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:03:28,261.261 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 03:03:28,262.262 INFO    ] No update needed
[2026-06-12 03:03:28,264.264 INFO    ] Checking for camera pi updates...
[2026-06-12 03:03:28,284.284 INFO    ] 200
[2026-06-12 03:03:28,285.285 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:03:28,309.309 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 03:03:28,354.354 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 03:03:28,356.356 INFO    ] No camera update needed
[2026-06-12 03:03:28,357.357 INFO    ] Script finished. Safe exiting...
[2026-06-12 03:03:28,358.358 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 03:03:28,362.362 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 03:03:28,365.365 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 03:03:30,405.405 INFO    ] ================================================
[2026-06-12 03:03:30,421.421 INFO    ] Launching Daemon at Fri Jun 12 03:03:30 IST 2026
[2026-06-12 03:03:30,432.432 INFO    ] ================================================
[2026-06-12 03:03:30,783.783 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 03:03:30
[2026-06-12 03:03:31,126.126 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 03:03:31,304.304 INFO    ] Initializing speech engine...
[2026-06-12 03:03:31,308.308 INFO    ] 2026-06-12 03:03:31
[2026-06-12 03:03:31,530.530 INFO    ] 2026-06-12 03:03:31
[2026-06-12 03:03:31,564.564 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 03:03:31,758.758 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 03:03:31,767.767 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 03:03:31,928.928 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 03:03:31,972.972 INFO    ] time= 12/06/2026 03:03:31
[2026-06-12 03:03:31,996.996 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 03:03:32,011.011 INFO    ] Checking for existing commands in stream...
[2026-06-12 03:03:32,083.083 INFO    ] No existing commands found in stream
[2026-06-12 03:03:37,097.097 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 03:03:37,100.100 INFO    ] Waiting 2.62 seconds before fallback handling...
[2026-06-12 03:03:40,080.080 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 03:03:40,082.082 INFO    ] Checking for system updates...
[2026-06-12 03:03:40,102.102 INFO    ] 200
[2026-06-12 03:03:40,104.104 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:03:40,136.136 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 03:03:40,137.137 INFO    ] No update needed
[2026-06-12 03:03:40,138.138 INFO    ] Checking for camera pi updates...
[2026-06-12 03:03:40,158.158 INFO    ] 200
[2026-06-12 03:03:40,159.159 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:03:40,183.183 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 03:03:40,224.224 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 03:03:40,225.225 INFO    ] No camera update needed
[2026-06-12 03:03:40,227.227 INFO    ] Script finished. Safe exiting...
[2026-06-12 03:03:40,228.228 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 03:03:40,231.231 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 03:03:40,234.234 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 03:03:42,276.276 INFO    ] ================================================
[2026-06-12 03:03:42,292.292 INFO    ] Launching Daemon at Fri Jun 12 03:03:42 IST 2026
[2026-06-12 03:03:42,303.303 INFO    ] ================================================
[2026-06-12 03:03:42,631.631 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 03:03:42
[2026-06-12 03:03:42,943.943 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 03:03:43,074.074 INFO    ] Initializing speech engine...
[2026-06-12 03:03:43,081.081 INFO    ] 2026-06-12 03:03:43
[2026-06-12 03:03:43,294.294 INFO    ] 2026-06-12 03:03:43
[2026-06-12 03:03:43,324.324 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 03:03:43,509.509 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 03:03:43,513.513 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 03:03:43,666.666 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 03:03:43,720.720 INFO    ] time= 12/06/2026 03:03:43
[2026-06-12 03:03:43,742.742 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 03:03:43,749.749 INFO    ] Checking for existing commands in stream...
[2026-06-12 03:03:43,816.816 INFO    ] No existing commands found in stream
[2026-06-12 03:03:48,825.825 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 03:03:48,828.828 INFO    ] Waiting 3.02 seconds before fallback handling...
[2026-06-12 03:03:52,251.251 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 03:03:52,253.253 INFO    ] Checking for system updates...
[2026-06-12 03:03:52,273.273 INFO    ] 200
[2026-06-12 03:03:52,275.275 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:03:52,307.307 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 03:03:52,308.308 INFO    ] No update needed
[2026-06-12 03:03:52,310.310 INFO    ] Checking for camera pi updates...
[2026-06-12 03:03:52,329.329 INFO    ] 200
[2026-06-12 03:03:52,331.331 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:03:52,354.354 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 03:03:52,398.398 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 03:03:52,399.399 INFO    ] No camera update needed
[2026-06-12 03:03:52,400.400 INFO    ] Script finished. Safe exiting...
[2026-06-12 03:03:52,402.402 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 03:03:52,405.405 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 03:03:52,407.407 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 03:03:54,446.446 INFO    ] ================================================
[2026-06-12 03:03:54,462.462 INFO    ] Launching Daemon at Fri Jun 12 03:03:54 IST 2026
[2026-06-12 03:03:54,473.473 INFO    ] ================================================
[2026-06-12 03:03:54,879.879 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 03:03:54
[2026-06-12 03:03:55,219.219 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 03:03:55,359.359 INFO    ] Initializing speech engine...
[2026-06-12 03:03:55,366.366 INFO    ] 2026-06-12 03:03:55
[2026-06-12 03:03:55,579.579 INFO    ] 2026-06-12 03:03:55
[2026-06-12 03:03:55,609.609 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 03:03:55,732.732 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 03:03:55,796.796 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 03:03:55,927.927 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 03:03:55,983.983 INFO    ] time= 12/06/2026 03:03:55
[2026-06-12 03:03:56,018.018 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 03:03:56,029.029 INFO    ] Checking for existing commands in stream...
[2026-06-12 03:03:56,101.101 INFO    ] No existing commands found in stream
[2026-06-12 03:04:01,110.110 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 03:04:01,113.113 INFO    ] Waiting 0.77 seconds before fallback handling...
[2026-06-12 03:04:02,311.311 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 03:04:02,313.313 INFO    ] Checking for system updates...
[2026-06-12 03:04:02,341.341 INFO    ] 200
[2026-06-12 03:04:02,343.343 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:04:02,384.384 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 03:04:02,386.386 INFO    ] No update needed
[2026-06-12 03:04:02,388.388 INFO    ] Checking for camera pi updates...
[2026-06-12 03:04:02,419.419 INFO    ] 200
[2026-06-12 03:04:02,422.422 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:04:02,455.455 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 03:04:02,497.497 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 03:04:02,499.499 INFO    ] No camera update needed
[2026-06-12 03:04:02,501.501 INFO    ] Script finished. Safe exiting...
[2026-06-12 03:04:02,503.503 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 03:04:02,507.507 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 03:04:02,510.510 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 03:04:04,550.550 INFO    ] ================================================
[2026-06-12 03:04:04,567.567 INFO    ] Launching Daemon at Fri Jun 12 03:04:04 IST 2026
[2026-06-12 03:04:04,579.579 INFO    ] ================================================
[2026-06-12 03:04:04,933.933 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 03:04:04
[2026-06-12 03:04:05,250.250 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 03:04:05,389.389 INFO    ] Initializing speech engine...
[2026-06-12 03:04:05,397.397 INFO    ] 2026-06-12 03:04:05
[2026-06-12 03:04:05,603.603 INFO    ] 2026-06-12 03:04:05
[2026-06-12 03:04:05,632.632 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 03:04:05,817.817 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 03:04:05,825.825 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 03:04:05,955.955 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 03:04:06,023.023 INFO    ] time= 12/06/2026 03:04:05
[2026-06-12 03:04:06,046.046 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 03:04:06,052.052 INFO    ] Checking for existing commands in stream...
[2026-06-12 03:04:06,124.124 INFO    ] No existing commands found in stream
[2026-06-12 03:04:11,135.135 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 03:04:11,138.138 INFO    ] Waiting 2.73 seconds before fallback handling...
[2026-06-12 03:04:14,318.318 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 03:04:14,320.320 INFO    ] Checking for system updates...
[2026-06-12 03:04:14,342.342 INFO    ] 200
[2026-06-12 03:04:14,343.343 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:04:14,375.375 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 03:04:14,377.377 INFO    ] No update needed
[2026-06-12 03:04:14,378.378 INFO    ] Checking for camera pi updates...
[2026-06-12 03:04:14,397.397 INFO    ] 200
[2026-06-12 03:04:14,399.399 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:04:14,424.424 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 03:04:14,457.457 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 03:04:14,459.459 INFO    ] No camera update needed
[2026-06-12 03:04:14,460.460 INFO    ] Script finished. Safe exiting...
[2026-06-12 03:04:14,462.462 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 03:04:14,465.465 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 03:04:14,467.467 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 03:04:16,511.511 INFO    ] ================================================
[2026-06-12 03:04:16,528.528 INFO    ] Launching Daemon at Fri Jun 12 03:04:16 IST 2026
[2026-06-12 03:04:16,538.538 INFO    ] ================================================
[2026-06-12 03:04:16,871.871 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 03:04:16
[2026-06-12 03:04:17,186.186 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 03:04:17,316.316 INFO    ] Initializing speech engine...
[2026-06-12 03:04:17,320.320 INFO    ] 2026-06-12 03:04:17
[2026-06-12 03:04:17,539.539 INFO    ] 2026-06-12 03:04:17
[2026-06-12 03:04:17,567.567 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 03:04:17,712.712 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 03:04:17,756.756 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 03:04:17,893.893 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 03:04:17,959.959 INFO    ] time= 12/06/2026 03:04:17
[2026-06-12 03:04:17,988.988 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 03:04:17,994.994 INFO    ] Checking for existing commands in stream...
[2026-06-12 03:04:18,062.062 INFO    ] No existing commands found in stream
[2026-06-12 03:04:23,071.071 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 03:04:23,074.074 INFO    ] Waiting 1.80 seconds before fallback handling...
[2026-06-12 03:04:25,253.253 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 03:04:25,254.254 INFO    ] Checking for system updates...
[2026-06-12 03:04:25,274.274 INFO    ] 200
[2026-06-12 03:04:25,276.276 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:04:25,308.308 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 03:04:25,309.309 INFO    ] No update needed
[2026-06-12 03:04:25,311.311 INFO    ] Checking for camera pi updates...
[2026-06-12 03:04:25,331.331 INFO    ] 200
[2026-06-12 03:04:25,333.333 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:04:25,357.357 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 03:04:25,396.396 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 03:04:25,398.398 INFO    ] No camera update needed
[2026-06-12 03:04:25,399.399 INFO    ] Script finished. Safe exiting...
[2026-06-12 03:04:25,402.402 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 03:04:25,406.406 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 03:04:25,408.408 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 03:04:27,449.449 INFO    ] ================================================
[2026-06-12 03:04:27,464.464 INFO    ] Launching Daemon at Fri Jun 12 03:04:27 IST 2026
[2026-06-12 03:04:27,475.475 INFO    ] ================================================
[2026-06-12 03:04:27,856.856 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 03:04:27
[2026-06-12 03:04:28,195.195 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 03:04:28,346.346 INFO    ] Initializing speech engine...
[2026-06-12 03:04:28,352.352 INFO    ] 2026-06-12 03:04:28
[2026-06-12 03:04:28,560.560 INFO    ] 2026-06-12 03:04:28
[2026-06-12 03:04:28,589.589 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 03:04:28,773.773 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 03:04:28,777.777 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 03:04:28,934.934 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 03:04:28,989.989 INFO    ] time= 12/06/2026 03:04:28
[2026-06-12 03:04:29,005.005 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 03:04:29,011.011 INFO    ] Checking for existing commands in stream...
[2026-06-12 03:04:29,078.078 INFO    ] No existing commands found in stream
[2026-06-12 03:04:34,087.087 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 03:04:34,091.091 INFO    ] Waiting 1.91 seconds before fallback handling...
[2026-06-12 03:04:36,400.400 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 03:04:36,402.402 INFO    ] Checking for system updates...
[2026-06-12 03:04:36,423.423 INFO    ] 200
[2026-06-12 03:04:36,424.424 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:04:36,457.457 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 03:04:36,459.459 INFO    ] No update needed
[2026-06-12 03:04:36,460.460 INFO    ] Checking for camera pi updates...
[2026-06-12 03:04:36,480.480 INFO    ] 200
[2026-06-12 03:04:36,482.482 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:04:36,507.507 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 03:04:36,552.552 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 03:04:36,553.553 INFO    ] No camera update needed
[2026-06-12 03:04:36,555.555 INFO    ] Script finished. Safe exiting...
[2026-06-12 03:04:36,556.556 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 03:04:36,559.559 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 03:04:36,562.562 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 03:04:38,603.603 INFO    ] ================================================
[2026-06-12 03:04:38,618.618 INFO    ] Launching Daemon at Fri Jun 12 03:04:38 IST 2026
[2026-06-12 03:04:38,629.629 INFO    ] ================================================
[2026-06-12 03:04:38,971.971 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 03:04:38
[2026-06-12 03:04:39,285.285 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 03:04:39,418.418 INFO    ] Initializing speech engine...
[2026-06-12 03:04:39,433.433 INFO    ] 2026-06-12 03:04:39
[2026-06-12 03:04:39,641.641 INFO    ] 2026-06-12 03:04:39
[2026-06-12 03:04:39,671.671 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 03:04:39,855.855 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 03:04:39,865.865 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 03:04:39,996.996 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 03:04:40,050.050 INFO    ] time= 12/06/2026 03:04:40
[2026-06-12 03:04:40,088.088 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 03:04:40,095.095 INFO    ] Checking for existing commands in stream...
[2026-06-12 03:04:40,162.162 INFO    ] No existing commands found in stream
[2026-06-12 03:04:45,176.176 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 03:04:45,179.179 INFO    ] Waiting 0.54 seconds before fallback handling...
[2026-06-12 03:04:46,112.112 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 03:04:46,114.114 INFO    ] Checking for system updates...
[2026-06-12 03:04:46,136.136 INFO    ] 200
[2026-06-12 03:04:46,137.137 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:04:46,171.171 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 03:04:46,173.173 INFO    ] No update needed
[2026-06-12 03:04:46,174.174 INFO    ] Checking for camera pi updates...
[2026-06-12 03:04:46,196.196 INFO    ] 200
[2026-06-12 03:04:46,198.198 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:04:46,223.223 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 03:04:46,268.268 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 03:04:46,269.269 INFO    ] No camera update needed
[2026-06-12 03:04:46,271.271 INFO    ] Script finished. Safe exiting...
[2026-06-12 03:04:46,273.273 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 03:04:46,276.276 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 03:04:46,279.279 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 03:04:48,319.319 INFO    ] ================================================
[2026-06-12 03:04:48,334.334 INFO    ] Launching Daemon at Fri Jun 12 03:04:48 IST 2026
[2026-06-12 03:04:48,345.345 INFO    ] ================================================
[2026-06-12 03:04:48,700.700 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 03:04:48
[2026-06-12 03:04:49,038.038 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 03:04:49,192.192 INFO    ] Initializing speech engine...
[2026-06-12 03:04:49,196.196 INFO    ] 2026-06-12 03:04:49
[2026-06-12 03:04:49,406.406 INFO    ] 2026-06-12 03:04:49
[2026-06-12 03:04:49,435.435 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 03:04:49,624.624 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 03:04:49,633.633 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 03:04:49,784.784 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 03:04:49,834.834 INFO    ] time= 12/06/2026 03:04:49
[2026-06-12 03:04:49,856.856 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 03:04:49,863.863 INFO    ] Checking for existing commands in stream...
[2026-06-12 03:04:49,955.955 INFO    ] No existing commands found in stream
[2026-06-12 03:04:54,969.969 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 03:04:54,973.973 INFO    ] Waiting 1.64 seconds before fallback handling...
[2026-06-12 03:04:57,002.002 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 03:04:57,004.004 INFO    ] Checking for system updates...
[2026-06-12 03:04:57,026.026 INFO    ] 200
[2026-06-12 03:04:57,028.028 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:04:57,059.059 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 03:04:57,060.060 INFO    ] No update needed
[2026-06-12 03:04:57,062.062 INFO    ] Checking for camera pi updates...
[2026-06-12 03:04:57,083.083 INFO    ] 200
[2026-06-12 03:04:57,084.084 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:04:57,110.110 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 03:04:57,148.148 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 03:04:57,149.149 INFO    ] No camera update needed
[2026-06-12 03:04:57,151.151 INFO    ] Script finished. Safe exiting...
[2026-06-12 03:04:57,152.152 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 03:04:57,156.156 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 03:04:57,159.159 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 03:04:59,198.198 INFO    ] ================================================
[2026-06-12 03:04:59,213.213 INFO    ] Launching Daemon at Fri Jun 12 03:04:59 IST 2026
[2026-06-12 03:04:59,225.225 INFO    ] ================================================
[2026-06-12 03:04:59,552.552 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 03:04:59
[2026-06-12 03:04:59,863.863 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 03:04:59,999.999 INFO    ] Initializing speech engine...
[2026-06-12 03:05:00,013.013 INFO    ] 2026-06-12 03:05:00
[2026-06-12 03:05:00,232.232 INFO    ] 2026-06-12 03:05:00
[2026-06-12 03:05:00,263.263 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 03:05:00,464.464 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 03:05:00,473.473 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 03:05:00,613.613 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 03:05:00,685.685 INFO    ] time= 12/06/2026 03:05:00
[2026-06-12 03:05:00,711.711 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 03:05:00,713.713 INFO    ] Checking for existing commands in stream...
[2026-06-12 03:05:00,790.790 INFO    ] No existing commands found in stream
[2026-06-12 03:05:05,799.799 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 03:05:05,802.802 INFO    ] Waiting 3.86 seconds before fallback handling...
[2026-06-12 03:05:10,044.044 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 03:05:10,046.046 INFO    ] Checking for system updates...
[2026-06-12 03:05:10,067.067 INFO    ] 200
[2026-06-12 03:05:10,069.069 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:05:10,098.098 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 03:05:10,100.100 INFO    ] No update needed
[2026-06-12 03:05:10,101.101 INFO    ] Checking for camera pi updates...
[2026-06-12 03:05:10,120.120 INFO    ] 200
[2026-06-12 03:05:10,122.122 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:05:10,147.147 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 03:05:10,192.192 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 03:05:10,193.193 INFO    ] No camera update needed
[2026-06-12 03:05:10,195.195 INFO    ] Script finished. Safe exiting...
[2026-06-12 03:05:10,196.196 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 03:05:10,200.200 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 03:05:10,203.203 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 03:05:12,243.243 INFO    ] ================================================
[2026-06-12 03:05:12,258.258 INFO    ] Launching Daemon at Fri Jun 12 03:05:12 IST 2026
[2026-06-12 03:05:12,269.269 INFO    ] ================================================
[2026-06-12 03:05:12,617.617 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 03:05:12
[2026-06-12 03:05:12,927.927 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 03:05:13,057.057 INFO    ] Initializing speech engine...
[2026-06-12 03:05:13,066.066 INFO    ] 2026-06-12 03:05:13
[2026-06-12 03:05:13,280.280 INFO    ] 2026-06-12 03:05:13
[2026-06-12 03:05:13,309.309 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 03:05:13,495.495 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 03:05:13,509.509 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 03:05:13,658.658 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 03:05:13,708.708 INFO    ] time= 12/06/2026 03:05:13
[2026-06-12 03:05:13,729.729 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 03:05:13,735.735 INFO    ] Checking for existing commands in stream...
[2026-06-12 03:05:13,802.802 INFO    ] No existing commands found in stream
[2026-06-12 03:05:18,810.810 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 03:05:18,813.813 INFO    ] Waiting 1.40 seconds before fallback handling...
[2026-06-12 03:05:20,599.599 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 03:05:20,602.602 INFO    ] Checking for system updates...
[2026-06-12 03:05:20,641.641 INFO    ] 200
[2026-06-12 03:05:20,644.644 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:05:20,702.702 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 03:05:20,704.704 INFO    ] No update needed
[2026-06-12 03:05:20,705.705 INFO    ] Checking for camera pi updates...
[2026-06-12 03:05:20,725.725 INFO    ] 200
[2026-06-12 03:05:20,726.726 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:05:20,749.749 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 03:05:20,900.900 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 03:05:20,902.902 INFO    ] No camera update needed
[2026-06-12 03:05:20,903.903 INFO    ] Script finished. Safe exiting...
[2026-06-12 03:05:20,904.904 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 03:05:20,907.907 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 03:05:20,910.910 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 03:05:22,949.949 INFO    ] ================================================
[2026-06-12 03:05:22,964.964 INFO    ] Launching Daemon at Fri Jun 12 03:05:22 IST 2026
[2026-06-12 03:05:22,975.975 INFO    ] ================================================
[2026-06-12 03:05:23,364.364 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 03:05:23
[2026-06-12 03:05:23,703.703 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 03:05:23,849.849 INFO    ] Initializing speech engine...
[2026-06-12 03:05:23,860.860 INFO    ] 2026-06-12 03:05:23
[2026-06-12 03:05:24,069.069 INFO    ] 2026-06-12 03:05:24
[2026-06-12 03:05:24,098.098 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 03:05:24,282.282 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 03:05:24,292.292 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 03:05:24,419.419 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 03:05:24,487.487 INFO    ] time= 12/06/2026 03:05:24
[2026-06-12 03:05:24,514.514 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 03:05:24,521.521 INFO    ] Checking for existing commands in stream...
[2026-06-12 03:05:24,589.589 INFO    ] No existing commands found in stream
[2026-06-12 03:05:29,622.622 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 03:05:29,625.625 INFO    ] Waiting 1.28 seconds before fallback handling...
[2026-06-12 03:05:31,282.282 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 03:05:31,284.284 INFO    ] Checking for system updates...
[2026-06-12 03:05:31,308.308 INFO    ] 200
[2026-06-12 03:05:31,309.309 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:05:31,344.344 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 03:05:31,346.346 INFO    ] No update needed
[2026-06-12 03:05:31,348.348 INFO    ] Checking for camera pi updates...
[2026-06-12 03:05:31,372.372 INFO    ] 200
[2026-06-12 03:05:31,373.373 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:05:31,400.400 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 03:05:31,438.438 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 03:05:31,440.440 INFO    ] No camera update needed
[2026-06-12 03:05:31,442.442 INFO    ] Script finished. Safe exiting...
[2026-06-12 03:05:31,443.443 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 03:05:31,447.447 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 03:05:31,450.450 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 03:05:33,483.483 INFO    ] ================================================
[2026-06-12 03:05:33,498.498 INFO    ] Launching Daemon at Fri Jun 12 03:05:33 IST 2026
[2026-06-12 03:05:33,509.509 INFO    ] ================================================
[2026-06-12 03:05:33,870.870 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 03:05:33
[2026-06-12 03:05:34,186.186 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 03:05:34,329.329 INFO    ] Initializing speech engine...
[2026-06-12 03:05:34,334.334 INFO    ] 2026-06-12 03:05:34
[2026-06-12 03:05:34,538.538 INFO    ] 2026-06-12 03:05:34
[2026-06-12 03:05:34,566.566 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 03:05:34,690.690 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 03:05:34,755.755 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 03:05:34,891.891 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 03:05:34,959.959 INFO    ] time= 12/06/2026 03:05:34
[2026-06-12 03:05:34,983.983 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 03:05:34,984.984 INFO    ] Checking for existing commands in stream...
[2026-06-12 03:05:35,056.056 INFO    ] No existing commands found in stream
[2026-06-12 03:05:40,065.065 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 03:05:40,067.067 INFO    ] Waiting 0.20 seconds before fallback handling...
[2026-06-12 03:05:40,653.653 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 03:05:40,654.654 INFO    ] Checking for system updates...
[2026-06-12 03:05:40,794.794 INFO    ] 200
[2026-06-12 03:05:40,796.796 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:05:40,829.829 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 03:05:40,831.831 INFO    ] No update needed
[2026-06-12 03:05:40,832.832 INFO    ] Checking for camera pi updates...
[2026-06-12 03:05:40,854.854 INFO    ] 200
[2026-06-12 03:05:40,856.856 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:05:40,879.879 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 03:05:40,917.917 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 03:05:40,918.918 INFO    ] No camera update needed
[2026-06-12 03:05:40,920.920 INFO    ] Script finished. Safe exiting...
[2026-06-12 03:05:40,921.921 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 03:05:40,924.924 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 03:05:40,927.927 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 03:05:42,966.966 INFO    ] ================================================
[2026-06-12 03:05:42,981.981 INFO    ] Launching Daemon at Fri Jun 12 03:05:42 IST 2026
[2026-06-12 03:05:42,992.992 INFO    ] ================================================
[2026-06-12 03:05:43,314.314 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 03:05:43
[2026-06-12 03:05:43,625.625 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 03:05:43,768.768 INFO    ] Initializing speech engine...
[2026-06-12 03:05:43,773.773 INFO    ] 2026-06-12 03:05:43
[2026-06-12 03:05:43,978.978 INFO    ] 2026-06-12 03:05:43
[2026-06-12 03:05:44,006.006 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 03:05:44,191.191 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 03:05:44,195.195 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 03:05:44,332.332 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 03:05:44,400.400 INFO    ] time= 12/06/2026 03:05:44
[2026-06-12 03:05:44,425.425 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 03:05:44,427.427 INFO    ] Checking for existing commands in stream...
[2026-06-12 03:05:44,499.499 INFO    ] No existing commands found in stream
[2026-06-12 03:05:49,513.513 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 03:05:49,515.515 INFO    ] Waiting 0.66 seconds before fallback handling...
[2026-06-12 03:05:50,540.540 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 03:05:50,542.542 INFO    ] Checking for system updates...
[2026-06-12 03:05:50,562.562 INFO    ] 200
[2026-06-12 03:05:50,563.563 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:05:50,596.596 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 03:05:50,597.597 INFO    ] No update needed
[2026-06-12 03:05:50,598.598 INFO    ] Checking for camera pi updates...
[2026-06-12 03:05:50,619.619 INFO    ] 200
[2026-06-12 03:05:50,621.621 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:05:50,644.644 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 03:05:50,686.686 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 03:05:50,687.687 INFO    ] No camera update needed
[2026-06-12 03:05:50,688.688 INFO    ] Script finished. Safe exiting...
[2026-06-12 03:05:50,689.689 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 03:05:50,693.693 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 03:05:50,695.695 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 03:05:52,734.734 INFO    ] ================================================
[2026-06-12 03:05:52,749.749 INFO    ] Launching Daemon at Fri Jun 12 03:05:52 IST 2026
[2026-06-12 03:05:52,760.760 INFO    ] ================================================
[2026-06-12 03:05:53,102.102 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 03:05:53
[2026-06-12 03:05:53,419.419 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 03:05:53,563.563 INFO    ] Initializing speech engine...
[2026-06-12 03:05:53,568.568 INFO    ] 2026-06-12 03:05:53
[2026-06-12 03:05:53,772.772 INFO    ] 2026-06-12 03:05:53
[2026-06-12 03:05:53,800.800 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 03:05:53,984.984 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 03:05:53,994.994 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 03:05:54,133.133 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 03:05:54,191.191 INFO    ] time= 12/06/2026 03:05:54
[2026-06-12 03:05:54,214.214 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 03:05:54,220.220 INFO    ] Checking for existing commands in stream...
[2026-06-12 03:05:54,287.287 INFO    ] No existing commands found in stream
[2026-06-12 03:05:59,296.296 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 03:05:59,299.299 INFO    ] Waiting 0.96 seconds before fallback handling...
[2026-06-12 03:06:00,662.662 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 03:06:00,664.664 INFO    ] Checking for system updates...
[2026-06-12 03:06:00,685.685 INFO    ] 200
[2026-06-12 03:06:00,686.686 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:06:00,717.717 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 03:06:00,718.718 INFO    ] No update needed
[2026-06-12 03:06:00,720.720 INFO    ] Checking for camera pi updates...
[2026-06-12 03:06:00,740.740 INFO    ] 200
[2026-06-12 03:06:00,741.741 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:06:00,765.765 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 03:06:00,801.801 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 03:06:00,803.803 INFO    ] No camera update needed
[2026-06-12 03:06:00,804.804 INFO    ] Script finished. Safe exiting...
[2026-06-12 03:06:00,806.806 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 03:06:00,809.809 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 03:06:00,812.812 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 03:06:02,837.837 INFO    ] ================================================
[2026-06-12 03:06:02,846.846 INFO    ] Launching Daemon at Fri Jun 12 03:06:02 IST 2026
[2026-06-12 03:06:02,852.852 INFO    ] ================================================
[2026-06-12 03:06:03,212.212 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 03:06:03
[2026-06-12 03:06:03,526.526 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 03:06:03,665.665 INFO    ] Initializing speech engine...
[2026-06-12 03:06:03,673.673 INFO    ] 2026-06-12 03:06:03
[2026-06-12 03:06:03,881.881 INFO    ] 2026-06-12 03:06:03
[2026-06-12 03:06:03,911.911 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 03:06:04,099.099 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 03:06:04,102.102 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 03:06:04,251.251 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 03:06:04,308.308 INFO    ] time= 12/06/2026 03:06:04
[2026-06-12 03:06:04,332.332 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 03:06:04,338.338 INFO    ] Checking for existing commands in stream...
[2026-06-12 03:06:04,406.406 INFO    ] No existing commands found in stream
[2026-06-12 03:06:09,420.420 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 03:06:09,423.423 INFO    ] Waiting 2.52 seconds before fallback handling...
[2026-06-12 03:06:12,315.315 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 03:06:12,316.316 INFO    ] Checking for system updates...
[2026-06-12 03:06:12,337.337 INFO    ] 200
[2026-06-12 03:06:12,339.339 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:06:12,372.372 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 03:06:12,373.373 INFO    ] No update needed
[2026-06-12 03:06:12,375.375 INFO    ] Checking for camera pi updates...
[2026-06-12 03:06:12,397.397 INFO    ] 200
[2026-06-12 03:06:12,398.398 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:06:12,424.424 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 03:06:12,461.461 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 03:06:12,463.463 INFO    ] No camera update needed
[2026-06-12 03:06:12,464.464 INFO    ] Script finished. Safe exiting...
[2026-06-12 03:06:12,465.465 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 03:06:12,469.469 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 03:06:12,472.472 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 03:06:14,512.512 INFO    ] ================================================
[2026-06-12 03:06:14,528.528 INFO    ] Launching Daemon at Fri Jun 12 03:06:14 IST 2026
[2026-06-12 03:06:14,540.540 INFO    ] ================================================
[2026-06-12 03:06:14,902.902 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 03:06:14
[2026-06-12 03:06:15,242.242 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 03:06:15,396.396 INFO    ] Initializing speech engine...
[2026-06-12 03:06:15,399.399 INFO    ] 2026-06-12 03:06:15
[2026-06-12 03:06:15,606.606 INFO    ] 2026-06-12 03:06:15
[2026-06-12 03:06:15,635.635 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 03:06:15,822.822 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 03:06:15,834.834 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 03:06:15,976.976 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 03:06:16,029.029 INFO    ] time= 12/06/2026 03:06:15
[2026-06-12 03:06:16,055.055 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 03:06:16,061.061 INFO    ] Checking for existing commands in stream...
[2026-06-12 03:06:16,152.152 INFO    ] No existing commands found in stream
[2026-06-12 03:06:21,166.166 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 03:06:21,170.170 INFO    ] Waiting 3.91 seconds before fallback handling...
[2026-06-12 03:06:25,480.480 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 03:06:25,482.482 INFO    ] Checking for system updates...
[2026-06-12 03:06:25,503.503 INFO    ] 200
[2026-06-12 03:06:25,504.504 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:06:25,535.535 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 03:06:25,536.536 INFO    ] No update needed
[2026-06-12 03:06:25,538.538 INFO    ] Checking for camera pi updates...
[2026-06-12 03:06:25,558.558 INFO    ] 200
[2026-06-12 03:06:25,560.560 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:06:25,586.586 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 03:06:25,629.629 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 03:06:25,631.631 INFO    ] No camera update needed
[2026-06-12 03:06:25,632.632 INFO    ] Script finished. Safe exiting...
[2026-06-12 03:06:25,633.633 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 03:06:25,637.637 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 03:06:25,640.640 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 03:06:27,687.687 INFO    ] ================================================
[2026-06-12 03:06:27,705.705 INFO    ] Launching Daemon at Fri Jun 12 03:06:27 IST 2026
[2026-06-12 03:06:27,717.717 INFO    ] ================================================
[2026-06-12 03:06:28,038.038 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 03:06:28
[2026-06-12 03:06:28,352.352 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 03:06:28,484.484 INFO    ] Initializing speech engine...
[2026-06-12 03:06:28,491.491 INFO    ] 2026-06-12 03:06:28
[2026-06-12 03:06:28,706.706 INFO    ] 2026-06-12 03:06:28
[2026-06-12 03:06:28,735.735 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 03:06:28,909.909 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 03:06:28,926.926 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 03:06:29,067.067 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 03:06:29,135.135 INFO    ] time= 12/06/2026 03:06:29
[2026-06-12 03:06:29,159.159 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 03:06:29,165.165 INFO    ] Checking for existing commands in stream...
[2026-06-12 03:06:29,234.234 INFO    ] No existing commands found in stream
[2026-06-12 03:06:34,248.248 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 03:06:34,251.251 INFO    ] Waiting 2.95 seconds before fallback handling...
[2026-06-12 03:06:37,590.590 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 03:06:37,591.591 INFO    ] Checking for system updates...
[2026-06-12 03:06:37,612.612 INFO    ] 200
[2026-06-12 03:06:37,614.614 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:06:37,644.644 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 03:06:37,645.645 INFO    ] No update needed
[2026-06-12 03:06:37,646.646 INFO    ] Checking for camera pi updates...
[2026-06-12 03:06:37,666.666 INFO    ] 200
[2026-06-12 03:06:37,667.667 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:06:37,692.692 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 03:06:37,731.731 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 03:06:37,733.733 INFO    ] No camera update needed
[2026-06-12 03:06:37,734.734 INFO    ] Script finished. Safe exiting...
[2026-06-12 03:06:37,735.735 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 03:06:37,738.738 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 03:06:37,741.741 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 03:06:39,782.782 INFO    ] ================================================
[2026-06-12 03:06:39,798.798 INFO    ] Launching Daemon at Fri Jun 12 03:06:39 IST 2026
[2026-06-12 03:06:39,809.809 INFO    ] ================================================
[2026-06-12 03:06:40,167.167 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 03:06:40
[2026-06-12 03:06:40,504.504 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 03:06:40,657.657 INFO    ] Initializing speech engine...
[2026-06-12 03:06:40,663.663 INFO    ] 2026-06-12 03:06:40
[2026-06-12 03:06:40,867.867 INFO    ] 2026-06-12 03:06:40
[2026-06-12 03:06:40,897.897 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 03:06:41,083.083 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 03:06:41,093.093 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 03:06:41,221.221 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 03:06:41,288.288 INFO    ] time= 12/06/2026 03:06:41
[2026-06-12 03:06:41,313.313 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 03:06:41,319.319 INFO    ] Checking for existing commands in stream...
[2026-06-12 03:06:41,409.409 INFO    ] No existing commands found in stream
[2026-06-12 03:06:46,419.419 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 03:06:46,422.422 INFO    ] Waiting 3.72 seconds before fallback handling...
[2026-06-12 03:06:50,519.519 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 03:06:50,520.520 INFO    ] Checking for system updates...
[2026-06-12 03:06:50,544.544 INFO    ] 200
[2026-06-12 03:06:50,545.545 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:06:50,576.576 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 03:06:50,577.577 INFO    ] No update needed
[2026-06-12 03:06:50,579.579 INFO    ] Checking for camera pi updates...
[2026-06-12 03:06:50,600.600 INFO    ] 200
[2026-06-12 03:06:50,601.601 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:06:50,629.629 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 03:06:50,667.667 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 03:06:50,669.669 INFO    ] No camera update needed
[2026-06-12 03:06:50,670.670 INFO    ] Script finished. Safe exiting...
[2026-06-12 03:06:50,672.672 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 03:06:50,675.675 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 03:06:50,678.678 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 03:06:52,717.717 INFO    ] ================================================
[2026-06-12 03:06:52,733.733 INFO    ] Launching Daemon at Fri Jun 12 03:06:52 IST 2026
[2026-06-12 03:06:52,745.745 INFO    ] ================================================
[2026-06-12 03:06:53,085.085 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 03:06:53
[2026-06-12 03:06:53,397.397 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 03:06:53,539.539 INFO    ] Initializing speech engine...
[2026-06-12 03:06:53,543.543 INFO    ] 2026-06-12 03:06:53
[2026-06-12 03:06:53,746.746 INFO    ] 2026-06-12 03:06:53
[2026-06-12 03:06:53,774.774 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 03:06:53,958.958 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 03:06:53,968.968 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 03:06:54,117.117 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 03:06:54,165.165 INFO    ] time= 12/06/2026 03:06:54
[2026-06-12 03:06:54,187.187 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 03:06:54,194.194 INFO    ] Checking for existing commands in stream...
[2026-06-12 03:06:54,260.260 INFO    ] No existing commands found in stream
[2026-06-12 03:06:59,269.269 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 03:06:59,272.272 INFO    ] Waiting 2.06 seconds before fallback handling...
[2026-06-12 03:07:01,727.727 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 03:07:01,732.732 INFO    ] Checking for system updates...
[2026-06-12 03:07:01,786.786 INFO    ] 200
[2026-06-12 03:07:01,789.789 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:07:01,850.850 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 03:07:01,853.853 INFO    ] No update needed
[2026-06-12 03:07:01,855.855 INFO    ] Checking for camera pi updates...
[2026-06-12 03:07:01,897.897 INFO    ] 200
[2026-06-12 03:07:01,899.899 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:07:01,936.936 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 03:07:01,983.983 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 03:07:01,986.986 INFO    ] No camera update needed
[2026-06-12 03:07:01,989.989 INFO    ] Script finished. Safe exiting...
[2026-06-12 03:07:01,992.992 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 03:07:01,997.997 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 03:07:02,002.002 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 03:07:04,036.036 INFO    ] ================================================
[2026-06-12 03:07:04,052.052 INFO    ] Launching Daemon at Fri Jun 12 03:07:04 IST 2026
[2026-06-12 03:07:04,063.063 INFO    ] ================================================
[2026-06-12 03:07:04,420.420 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 03:07:04
[2026-06-12 03:07:04,757.757 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 03:07:04,911.911 INFO    ] Initializing speech engine...
[2026-06-12 03:07:04,916.916 INFO    ] 2026-06-12 03:07:04
[2026-06-12 03:07:05,128.128 INFO    ] 2026-06-12 03:07:05
[2026-06-12 03:07:05,157.157 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 03:07:05,371.371 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 03:07:05,376.376 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 03:07:05,553.553 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 03:07:05,578.578 INFO    ] time= 12/06/2026 03:07:05
[2026-06-12 03:07:05,584.584 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 03:07:05,586.586 INFO    ] Checking for existing commands in stream...
[2026-06-12 03:07:05,654.654 INFO    ] No existing commands found in stream
[2026-06-12 03:07:10,679.679 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 03:07:10,683.683 INFO    ] Waiting 3.45 seconds before fallback handling...
[2026-06-12 03:07:14,548.548 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 03:07:14,549.549 INFO    ] Checking for system updates...
[2026-06-12 03:07:14,572.572 INFO    ] 200
[2026-06-12 03:07:14,573.573 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:07:14,607.607 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 03:07:14,609.609 INFO    ] No update needed
[2026-06-12 03:07:14,610.610 INFO    ] Checking for camera pi updates...
[2026-06-12 03:07:14,631.631 INFO    ] 200
[2026-06-12 03:07:14,632.632 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:07:14,655.655 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 03:07:14,694.694 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 03:07:14,696.696 INFO    ] No camera update needed
[2026-06-12 03:07:14,697.697 INFO    ] Script finished. Safe exiting...
[2026-06-12 03:07:14,698.698 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 03:07:14,702.702 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 03:07:14,705.705 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 03:07:16,744.744 INFO    ] ================================================
[2026-06-12 03:07:16,760.760 INFO    ] Launching Daemon at Fri Jun 12 03:07:16 IST 2026
[2026-06-12 03:07:16,772.772 INFO    ] ================================================
[2026-06-12 03:07:17,154.154 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 03:07:17
[2026-06-12 03:07:17,495.495 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 03:07:17,647.647 INFO    ] Initializing speech engine...
[2026-06-12 03:07:17,653.653 INFO    ] 2026-06-12 03:07:17
[2026-06-12 03:07:17,863.863 INFO    ] 2026-06-12 03:07:17
[2026-06-12 03:07:17,893.893 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 03:07:18,083.083 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 03:07:18,092.092 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 03:07:18,240.240 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 03:07:18,296.296 INFO    ] time= 12/06/2026 03:07:18
[2026-06-12 03:07:18,317.317 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 03:07:18,324.324 INFO    ] Checking for existing commands in stream...
[2026-06-12 03:07:18,392.392 INFO    ] No existing commands found in stream
[2026-06-12 03:07:23,401.401 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 03:07:23,405.405 INFO    ] Waiting 0.20 seconds before fallback handling...
[2026-06-12 03:07:23,972.972 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 03:07:23,974.974 INFO    ] Checking for system updates...
[2026-06-12 03:07:23,995.995 INFO    ] 200
[2026-06-12 03:07:23,996.996 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:07:24,029.029 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 03:07:24,030.030 INFO    ] No update needed
[2026-06-12 03:07:24,032.032 INFO    ] Checking for camera pi updates...
[2026-06-12 03:07:24,054.054 INFO    ] 200
[2026-06-12 03:07:24,056.056 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:07:24,080.080 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 03:07:24,218.218 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 03:07:24,220.220 INFO    ] No camera update needed
[2026-06-12 03:07:24,222.222 INFO    ] Script finished. Safe exiting...
[2026-06-12 03:07:24,223.223 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 03:07:24,226.226 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 03:07:24,229.229 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 03:07:26,268.268 INFO    ] ================================================
[2026-06-12 03:07:26,284.284 INFO    ] Launching Daemon at Fri Jun 12 03:07:26 IST 2026
[2026-06-12 03:07:26,295.295 INFO    ] ================================================
[2026-06-12 03:07:26,637.637 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 03:07:26
[2026-06-12 03:07:26,948.948 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 03:07:27,083.083 INFO    ] Initializing speech engine...
[2026-06-12 03:07:27,086.086 INFO    ] 2026-06-12 03:07:27
[2026-06-12 03:07:27,305.305 INFO    ] 2026-06-12 03:07:27
[2026-06-12 03:07:27,333.333 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 03:07:27,457.457 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 03:07:27,521.521 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 03:07:27,661.661 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 03:07:27,729.729 INFO    ] time= 12/06/2026 03:07:27
[2026-06-12 03:07:27,753.753 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 03:07:27,760.760 INFO    ] Checking for existing commands in stream...
[2026-06-12 03:07:27,827.827 INFO    ] No existing commands found in stream
[2026-06-12 03:07:32,836.836 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 03:07:32,839.839 INFO    ] Waiting 1.89 seconds before fallback handling...
[2026-06-12 03:07:35,120.120 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 03:07:35,121.121 INFO    ] Checking for system updates...
[2026-06-12 03:07:35,142.142 INFO    ] 200
[2026-06-12 03:07:35,143.143 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:07:35,173.173 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 03:07:35,174.174 INFO    ] No update needed
[2026-06-12 03:07:35,175.175 INFO    ] Checking for camera pi updates...
[2026-06-12 03:07:35,195.195 INFO    ] 200
[2026-06-12 03:07:35,196.196 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:07:35,221.221 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 03:07:35,259.259 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 03:07:35,260.260 INFO    ] No camera update needed
[2026-06-12 03:07:35,262.262 INFO    ] Script finished. Safe exiting...
[2026-06-12 03:07:35,263.263 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 03:07:35,266.266 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 03:07:35,268.268 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 03:07:37,306.306 INFO    ] ================================================
[2026-06-12 03:07:37,322.322 INFO    ] Launching Daemon at Fri Jun 12 03:07:37 IST 2026
[2026-06-12 03:07:37,333.333 INFO    ] ================================================
[2026-06-12 03:07:37,672.672 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 03:07:37
[2026-06-12 03:07:37,987.987 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 03:07:38,136.136 INFO    ] Initializing speech engine...
[2026-06-12 03:07:38,143.143 INFO    ] 2026-06-12 03:07:38
[2026-06-12 03:07:38,340.340 INFO    ] 2026-06-12 03:07:38
[2026-06-12 03:07:38,368.368 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 03:07:38,551.551 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 03:07:38,560.560 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 03:07:38,686.686 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 03:07:38,752.752 INFO    ] time= 12/06/2026 03:07:38
[2026-06-12 03:07:38,779.779 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 03:07:38,785.785 INFO    ] Checking for existing commands in stream...
[2026-06-12 03:07:38,875.875 INFO    ] No existing commands found in stream
[2026-06-12 03:07:43,889.889 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 03:07:43,892.892 INFO    ] Waiting 1.92 seconds before fallback handling...
[2026-06-12 03:07:46,185.185 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 03:07:46,187.187 INFO    ] Checking for system updates...
[2026-06-12 03:07:46,207.207 INFO    ] 200
[2026-06-12 03:07:46,209.209 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:07:46,239.239 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 03:07:46,240.240 INFO    ] No update needed
[2026-06-12 03:07:46,242.242 INFO    ] Checking for camera pi updates...
[2026-06-12 03:07:46,261.261 INFO    ] 200
[2026-06-12 03:07:46,263.263 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:07:46,286.286 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 03:07:46,325.325 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 03:07:46,326.326 INFO    ] No camera update needed
[2026-06-12 03:07:46,327.327 INFO    ] Script finished. Safe exiting...
[2026-06-12 03:07:46,328.328 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 03:07:46,331.331 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 03:07:46,334.334 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 03:07:48,372.372 INFO    ] ================================================
[2026-06-12 03:07:48,387.387 INFO    ] Launching Daemon at Fri Jun 12 03:07:48 IST 2026
[2026-06-12 03:07:48,398.398 INFO    ] ================================================
[2026-06-12 03:07:48,747.747 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 03:07:48
[2026-06-12 03:07:49,082.082 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 03:07:49,233.233 INFO    ] Initializing speech engine...
[2026-06-12 03:07:49,239.239 INFO    ] 2026-06-12 03:07:49
[2026-06-12 03:07:49,449.449 INFO    ] 2026-06-12 03:07:49
[2026-06-12 03:07:49,478.478 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 03:07:49,602.602 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 03:07:49,665.665 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 03:07:49,798.798 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 03:07:49,865.865 INFO    ] time= 12/06/2026 03:07:49
[2026-06-12 03:07:49,899.899 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 03:07:49,905.905 INFO    ] Checking for existing commands in stream...
[2026-06-12 03:07:49,974.974 INFO    ] No existing commands found in stream
[2026-06-12 03:07:54,988.988 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 03:07:54,991.991 INFO    ] Waiting 3.77 seconds before fallback handling...
[2026-06-12 03:07:59,138.138 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 03:07:59,140.140 INFO    ] Checking for system updates...
[2026-06-12 03:07:59,161.161 INFO    ] 200
[2026-06-12 03:07:59,162.162 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:07:59,194.194 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 03:07:59,196.196 INFO    ] No update needed
[2026-06-12 03:07:59,197.197 INFO    ] Checking for camera pi updates...
[2026-06-12 03:07:59,216.216 INFO    ] 200
[2026-06-12 03:07:59,218.218 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:07:59,241.241 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 03:07:59,277.277 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 03:07:59,278.278 INFO    ] No camera update needed
[2026-06-12 03:07:59,279.279 INFO    ] Script finished. Safe exiting...
[2026-06-12 03:07:59,281.281 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 03:07:59,284.284 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 03:07:59,287.287 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 03:08:01,325.325 INFO    ] ================================================
[2026-06-12 03:08:01,340.340 INFO    ] Launching Daemon at Fri Jun 12 03:08:01 IST 2026
[2026-06-12 03:08:01,351.351 INFO    ] ================================================
[2026-06-12 03:08:01,707.707 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 03:08:01
[2026-06-12 03:08:02,094.094 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 03:08:02,310.310 INFO    ] Initializing speech engine...
[2026-06-12 03:08:02,319.319 INFO    ] 2026-06-12 03:08:02
[2026-06-12 03:08:02,578.578 INFO    ] 2026-06-12 03:08:02
[2026-06-12 03:08:02,612.612 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 03:08:02,819.819 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 03:08:02,840.840 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 03:08:02,983.983 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 03:08:03,036.036 INFO    ] time= 12/06/2026 03:08:02
[2026-06-12 03:08:03,068.068 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 03:08:03,094.094 INFO    ] Checking for existing commands in stream...
[2026-06-12 03:08:03,170.170 INFO    ] No existing commands found in stream
[2026-06-12 03:08:08,179.179 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 03:08:08,182.182 INFO    ] Waiting 3.26 seconds before fallback handling...
[2026-06-12 03:08:11,794.794 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 03:08:11,796.796 INFO    ] Checking for system updates...
[2026-06-12 03:08:11,816.816 INFO    ] 200
[2026-06-12 03:08:11,817.817 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:08:11,848.848 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 03:08:11,850.850 INFO    ] No update needed
[2026-06-12 03:08:11,851.851 INFO    ] Checking for camera pi updates...
[2026-06-12 03:08:11,873.873 INFO    ] 200
[2026-06-12 03:08:11,874.874 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:08:11,899.899 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 03:08:11,927.927 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 03:08:11,928.928 INFO    ] No camera update needed
[2026-06-12 03:08:11,929.929 INFO    ] Script finished. Safe exiting...
[2026-06-12 03:08:11,931.931 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 03:08:11,934.934 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 03:08:11,936.936 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 03:08:13,977.977 INFO    ] ================================================
[2026-06-12 03:08:13,992.992 INFO    ] Launching Daemon at Fri Jun 12 03:08:13 IST 2026
[2026-06-12 03:08:14,003.003 INFO    ] ================================================
[2026-06-12 03:08:14,352.352 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 03:08:14
[2026-06-12 03:08:14,669.669 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 03:08:14,816.816 INFO    ] Initializing speech engine...
[2026-06-12 03:08:14,821.821 INFO    ] 2026-06-12 03:08:14
[2026-06-12 03:08:15,026.026 INFO    ] 2026-06-12 03:08:15
[2026-06-12 03:08:15,054.054 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 03:08:15,239.239 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 03:08:15,248.248 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 03:08:15,384.384 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 03:08:15,447.447 INFO    ] time= 12/06/2026 03:08:15
[2026-06-12 03:08:15,470.470 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 03:08:15,476.476 INFO    ] Checking for existing commands in stream...
[2026-06-12 03:08:15,543.543 INFO    ] No existing commands found in stream
[2026-06-12 03:08:20,552.552 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 03:08:20,555.555 INFO    ] Waiting 0.81 seconds before fallback handling...
[2026-06-12 03:08:21,766.766 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 03:08:21,767.767 INFO    ] Checking for system updates...
[2026-06-12 03:08:21,788.788 INFO    ] 200
[2026-06-12 03:08:21,789.789 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:08:21,819.819 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 03:08:21,821.821 INFO    ] No update needed
[2026-06-12 03:08:21,822.822 INFO    ] Checking for camera pi updates...
[2026-06-12 03:08:21,843.843 INFO    ] 200
[2026-06-12 03:08:21,844.844 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:08:21,867.867 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 03:08:21,920.920 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 03:08:21,921.921 INFO    ] No camera update needed
[2026-06-12 03:08:21,923.923 INFO    ] Script finished. Safe exiting...
[2026-06-12 03:08:21,924.924 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 03:08:21,927.927 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 03:08:21,929.929 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 03:08:23,970.970 INFO    ] ================================================
[2026-06-12 03:08:23,985.985 INFO    ] Launching Daemon at Fri Jun 12 03:08:23 IST 2026
[2026-06-12 03:08:24,996.996 INFO    ] ================================================
[2026-06-12 03:08:24,336.336 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 03:08:24
[2026-06-12 03:08:24,648.648 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 03:08:24,793.793 INFO    ] Initializing speech engine...
[2026-06-12 03:08:24,798.798 INFO    ] 2026-06-12 03:08:24
[2026-06-12 03:08:25,005.005 INFO    ] 2026-06-12 03:08:24
[2026-06-12 03:08:25,033.033 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 03:08:25,219.219 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 03:08:25,222.222 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 03:08:25,361.361 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 03:08:25,428.428 INFO    ] time= 12/06/2026 03:08:25
[2026-06-12 03:08:25,453.453 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 03:08:25,459.459 INFO    ] Checking for existing commands in stream...
[2026-06-12 03:08:25,527.527 INFO    ] No existing commands found in stream
[2026-06-12 03:08:30,536.536 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 03:08:30,538.538 INFO    ] Waiting 2.64 seconds before fallback handling...
[2026-06-12 03:08:33,554.554 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 03:08:33,555.555 INFO    ] Checking for system updates...
[2026-06-12 03:08:33,576.576 INFO    ] 200
[2026-06-12 03:08:33,578.578 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:08:33,608.608 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 03:08:33,609.609 INFO    ] No update needed
[2026-06-12 03:08:33,611.611 INFO    ] Checking for camera pi updates...
[2026-06-12 03:08:33,630.630 INFO    ] 200
[2026-06-12 03:08:33,631.631 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:08:33,654.654 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 03:08:33,692.692 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 03:08:33,694.694 INFO    ] No camera update needed
[2026-06-12 03:08:33,695.695 INFO    ] Script finished. Safe exiting...
[2026-06-12 03:08:33,696.696 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 03:08:33,699.699 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 03:08:33,702.702 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 03:08:35,741.741 INFO    ] ================================================
[2026-06-12 03:08:35,756.756 INFO    ] Launching Daemon at Fri Jun 12 03:08:35 IST 2026
[2026-06-12 03:08:35,767.767 INFO    ] ================================================
[2026-06-12 03:08:36,092.092 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 03:08:36
[2026-06-12 03:08:36,403.403 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 03:08:36,534.534 INFO    ] Initializing speech engine...
[2026-06-12 03:08:36,537.537 INFO    ] 2026-06-12 03:08:36
[2026-06-12 03:08:36,753.753 INFO    ] 2026-06-12 03:08:36
[2026-06-12 03:08:36,783.783 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 03:08:36,967.967 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 03:08:36,976.976 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 03:08:37,107.107 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 03:08:37,171.171 INFO    ] time= 12/06/2026 03:08:37
[2026-06-12 03:08:37,198.198 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 03:08:37,205.205 INFO    ] Checking for existing commands in stream...
[2026-06-12 03:08:37,296.296 INFO    ] No existing commands found in stream
[2026-06-12 03:08:42,305.305 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 03:08:42,307.307 INFO    ] Waiting 2.33 seconds before fallback handling...
[2026-06-12 03:08:45,032.032 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 03:08:45,034.034 INFO    ] Checking for system updates...
[2026-06-12 03:08:45,055.055 INFO    ] 200
[2026-06-12 03:08:45,056.056 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:08:45,089.089 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 03:08:45,090.090 INFO    ] No update needed
[2026-06-12 03:08:45,091.091 INFO    ] Checking for camera pi updates...
[2026-06-12 03:08:45,113.113 INFO    ] 200
[2026-06-12 03:08:45,114.114 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:08:45,137.137 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 03:08:45,176.176 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 03:08:45,178.178 INFO    ] No camera update needed
[2026-06-12 03:08:45,179.179 INFO    ] Script finished. Safe exiting...
[2026-06-12 03:08:45,180.180 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 03:08:45,183.183 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 03:08:45,186.186 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 03:08:47,225.225 INFO    ] ================================================
[2026-06-12 03:08:47,241.241 INFO    ] Launching Daemon at Fri Jun 12 03:08:47 IST 2026
[2026-06-12 03:08:47,251.251 INFO    ] ================================================
[2026-06-12 03:08:47,594.594 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 03:08:47
[2026-06-12 03:08:47,906.906 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 03:08:48,049.049 INFO    ] Initializing speech engine...
[2026-06-12 03:08:48,053.053 INFO    ] 2026-06-12 03:08:48
[2026-06-12 03:08:48,259.259 INFO    ] 2026-06-12 03:08:48
[2026-06-12 03:08:48,288.288 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 03:08:48,432.432 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 03:08:48,433.433 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 03:08:48,538.538 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 03:08:48,539.539 INFO    ] time= 12/06/2026 03:08:48
[2026-06-12 03:08:48,573.573 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 03:08:48,613.613 INFO    ] Checking for existing commands in stream...
[2026-06-12 03:08:48,711.711 INFO    ] No existing commands found in stream
[2026-06-12 03:08:53,725.725 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 03:08:53,727.727 INFO    ] Waiting 1.95 seconds before fallback handling...
[2026-06-12 03:08:56,053.053 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 03:08:56,054.054 INFO    ] Checking for system updates...
[2026-06-12 03:08:56,074.074 INFO    ] 200
[2026-06-12 03:08:56,076.076 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:08:56,110.110 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 03:08:56,112.112 INFO    ] No update needed
[2026-06-12 03:08:56,113.113 INFO    ] Checking for camera pi updates...
[2026-06-12 03:08:56,132.132 INFO    ] 200
[2026-06-12 03:08:56,133.133 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:08:56,156.156 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 03:08:56,189.189 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 03:08:56,190.190 INFO    ] No camera update needed
[2026-06-12 03:08:56,192.192 INFO    ] Script finished. Safe exiting...
[2026-06-12 03:08:56,193.193 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 03:08:56,196.196 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 03:08:56,199.199 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 03:08:58,236.236 INFO    ] ================================================
[2026-06-12 03:08:58,252.252 INFO    ] Launching Daemon at Fri Jun 12 03:08:58 IST 2026
[2026-06-12 03:08:58,262.262 INFO    ] ================================================
[2026-06-12 03:08:58,605.605 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 03:08:58
[2026-06-12 03:08:58,916.916 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 03:08:59,057.057 INFO    ] Initializing speech engine...
[2026-06-12 03:08:59,062.062 INFO    ] 2026-06-12 03:08:59
[2026-06-12 03:08:59,266.266 INFO    ] 2026-06-12 03:08:59
[2026-06-12 03:08:59,295.295 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 03:08:59,479.479 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 03:08:59,489.489 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 03:08:59,626.626 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 03:08:59,685.685 INFO    ] time= 12/06/2026 03:08:59
[2026-06-12 03:08:59,710.710 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 03:08:59,715.715 INFO    ] Checking for existing commands in stream...
[2026-06-12 03:08:59,780.780 INFO    ] No existing commands found in stream
[2026-06-12 03:09:04,791.791 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 03:09:04,793.793 INFO    ] Waiting 2.88 seconds before fallback handling...
[2026-06-12 03:09:08,062.062 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 03:09:08,064.064 INFO    ] Checking for system updates...
[2026-06-12 03:09:08,086.086 INFO    ] 200
[2026-06-12 03:09:08,087.087 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:09:08,118.118 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 03:09:08,120.120 INFO    ] No update needed
[2026-06-12 03:09:08,122.122 INFO    ] Checking for camera pi updates...
[2026-06-12 03:09:08,142.142 INFO    ] 200
[2026-06-12 03:09:08,143.143 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:09:08,167.167 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 03:09:08,210.210 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 03:09:08,211.211 INFO    ] No camera update needed
[2026-06-12 03:09:08,213.213 INFO    ] Script finished. Safe exiting...
[2026-06-12 03:09:08,214.214 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 03:09:08,217.217 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 03:09:08,221.221 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 03:09:10,259.259 INFO    ] ================================================
[2026-06-12 03:09:10,274.274 INFO    ] Launching Daemon at Fri Jun 12 03:09:10 IST 2026
[2026-06-12 03:09:10,285.285 INFO    ] ================================================
[2026-06-12 03:09:10,638.638 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 03:09:10
[2026-06-12 03:09:10,949.949 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 03:09:11,086.086 INFO    ] Initializing speech engine...
[2026-06-12 03:09:11,096.096 INFO    ] 2026-06-12 03:09:11
[2026-06-12 03:09:11,299.299 INFO    ] 2026-06-12 03:09:11
[2026-06-12 03:09:11,327.327 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 03:09:11,511.511 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 03:09:11,515.515 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 03:09:11,650.650 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 03:09:11,715.715 INFO    ] time= 12/06/2026 03:09:11
[2026-06-12 03:09:11,742.742 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 03:09:11,748.748 INFO    ] Checking for existing commands in stream...
[2026-06-12 03:09:11,816.816 INFO    ] No existing commands found in stream
[2026-06-12 03:09:16,840.840 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 03:09:16,843.843 INFO    ] Waiting 0.15 seconds before fallback handling...
[2026-06-12 03:09:17,351.351 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 03:09:17,353.353 INFO    ] Checking for system updates...
[2026-06-12 03:09:17,373.373 INFO    ] 200
[2026-06-12 03:09:17,375.375 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:09:17,404.404 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 03:09:17,406.406 INFO    ] No update needed
[2026-06-12 03:09:17,407.407 INFO    ] Checking for camera pi updates...
[2026-06-12 03:09:17,426.426 INFO    ] 200
[2026-06-12 03:09:17,427.427 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:09:17,451.451 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 03:09:17,487.487 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 03:09:17,489.489 INFO    ] No camera update needed
[2026-06-12 03:09:17,490.490 INFO    ] Script finished. Safe exiting...
[2026-06-12 03:09:17,491.491 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 03:09:17,494.494 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 03:09:17,497.497 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 03:09:19,537.537 INFO    ] ================================================
[2026-06-12 03:09:19,552.552 INFO    ] Launching Daemon at Fri Jun 12 03:09:19 IST 2026
[2026-06-12 03:09:19,563.563 INFO    ] ================================================
[2026-06-12 03:09:19,904.904 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 03:09:19
[2026-06-12 03:09:20,215.215 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 03:09:20,344.344 INFO    ] Initializing speech engine...
[2026-06-12 03:09:20,348.348 INFO    ] 2026-06-12 03:09:20
[2026-06-12 03:09:20,565.565 INFO    ] 2026-06-12 03:09:20
[2026-06-12 03:09:20,594.594 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 03:09:20,777.777 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 03:09:20,786.786 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 03:09:20,908.908 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 03:09:20,964.964 INFO    ] time= 12/06/2026 03:09:20
[2026-06-12 03:09:21,003.003 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 03:09:21,008.008 INFO    ] Checking for existing commands in stream...
[2026-06-12 03:09:21,081.081 INFO    ] No existing commands found in stream
[2026-06-12 03:09:26,090.090 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 03:09:26,093.093 INFO    ] Waiting 1.16 seconds before fallback handling...
[2026-06-12 03:09:28,964.964 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 03:09:28,967.967 INFO    ] Checking for system updates...
[2026-06-12 03:09:29,006.006 INFO    ] 200
[2026-06-12 03:09:29,009.009 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:09:29,061.061 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 03:09:29,064.064 INFO    ] No update needed
[2026-06-12 03:09:29,066.066 INFO    ] Checking for camera pi updates...
[2026-06-12 03:09:29,101.101 INFO    ] 200
[2026-06-12 03:09:29,103.103 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:09:29,131.131 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 03:09:29,275.275 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 03:09:29,276.276 INFO    ] No camera update needed
[2026-06-12 03:09:29,278.278 INFO    ] Script finished. Safe exiting...
[2026-06-12 03:09:29,279.279 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 03:09:29,282.282 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 03:09:29,285.285 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 03:09:31,325.325 INFO    ] ================================================
[2026-06-12 03:09:31,342.342 INFO    ] Launching Daemon at Fri Jun 12 03:09:31 IST 2026
[2026-06-12 03:09:31,354.354 INFO    ] ================================================
[2026-06-12 03:09:31,737.737 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 03:09:31
[2026-06-12 03:09:32,107.107 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 03:09:32,246.246 INFO    ] Initializing speech engine...
[2026-06-12 03:09:32,254.254 INFO    ] 2026-06-12 03:09:32
[2026-06-12 03:09:32,471.471 INFO    ] 2026-06-12 03:09:32
[2026-06-12 03:09:32,500.500 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 03:09:32,683.683 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 03:09:32,693.693 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 03:09:32,815.815 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 03:09:32,865.865 INFO    ] time= 12/06/2026 03:09:32
[2026-06-12 03:09:32,899.899 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 03:09:32,915.915 INFO    ] Checking for existing commands in stream...
[2026-06-12 03:09:32,990.990 INFO    ] No existing commands found in stream
[2026-06-12 03:09:38,000.000 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 03:09:38,003.003 INFO    ] Waiting 2.78 seconds before fallback handling...
[2026-06-12 03:09:41,184.184 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 03:09:41,186.186 INFO    ] Checking for system updates...
[2026-06-12 03:09:41,207.207 INFO    ] 200
[2026-06-12 03:09:41,208.208 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:09:41,239.239 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 03:09:41,240.240 INFO    ] No update needed
[2026-06-12 03:09:41,242.242 INFO    ] Checking for camera pi updates...
[2026-06-12 03:09:41,262.262 INFO    ] 200
[2026-06-12 03:09:41,263.263 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:09:41,288.288 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 03:09:41,324.324 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 03:09:41,325.325 INFO    ] No camera update needed
[2026-06-12 03:09:41,327.327 INFO    ] Script finished. Safe exiting...
[2026-06-12 03:09:41,328.328 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 03:09:41,331.331 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 03:09:41,334.334 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 03:09:43,373.373 INFO    ] ================================================
[2026-06-12 03:09:43,388.388 INFO    ] Launching Daemon at Fri Jun 12 03:09:43 IST 2026
[2026-06-12 03:09:43,400.400 INFO    ] ================================================
[2026-06-12 03:09:43,753.753 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 03:09:43
[2026-06-12 03:09:44,065.065 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 03:09:44,198.198 INFO    ] Initializing speech engine...
[2026-06-12 03:09:44,203.203 INFO    ] 2026-06-12 03:09:44
[2026-06-12 03:09:44,431.431 INFO    ] 2026-06-12 03:09:44
[2026-06-12 03:09:44,462.462 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 03:09:44,658.658 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 03:09:44,662.662 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 03:09:44,800.800 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 03:09:44,856.856 INFO    ] time= 12/06/2026 03:09:44
[2026-06-12 03:09:44,885.885 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 03:09:44,907.907 INFO    ] Checking for existing commands in stream...
[2026-06-12 03:09:44,983.983 INFO    ] No existing commands found in stream
[2026-06-12 03:09:49,993.993 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 03:09:49,996.996 INFO    ] Waiting 1.01 seconds before fallback handling...
[2026-06-12 03:09:51,328.328 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 03:09:51,330.330 INFO    ] Checking for system updates...
[2026-06-12 03:09:51,351.351 INFO    ] 200
[2026-06-12 03:09:51,352.352 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:09:51,386.386 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 03:09:51,387.387 INFO    ] No update needed
[2026-06-12 03:09:51,389.389 INFO    ] Checking for camera pi updates...
[2026-06-12 03:09:51,408.408 INFO    ] 200
[2026-06-12 03:09:51,409.409 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:09:51,434.434 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 03:09:51,474.474 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 03:09:51,475.475 INFO    ] No camera update needed
[2026-06-12 03:09:51,477.477 INFO    ] Script finished. Safe exiting...
[2026-06-12 03:09:51,478.478 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 03:09:51,481.481 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 03:09:51,484.484 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 03:09:53,523.523 INFO    ] ================================================
[2026-06-12 03:09:53,539.539 INFO    ] Launching Daemon at Fri Jun 12 03:09:53 IST 2026
[2026-06-12 03:09:53,557.557 INFO    ] ================================================
[2026-06-12 03:09:53,896.896 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 03:09:53
[2026-06-12 03:09:54,229.229 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 03:09:54,381.381 INFO    ] Initializing speech engine...
[2026-06-12 03:09:54,386.386 INFO    ] 2026-06-12 03:09:54
[2026-06-12 03:09:54,598.598 INFO    ] 2026-06-12 03:09:54
[2026-06-12 03:09:54,629.629 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 03:09:54,814.814 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 03:09:54,824.824 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 03:09:54,952.952 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 03:09:54,969.969 INFO    ] time= 12/06/2026 03:09:54
[2026-06-12 03:09:54,971.971 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 03:09:54,973.973 INFO    ] Checking for existing commands in stream...
[2026-06-12 03:09:55,034.034 INFO    ] No existing commands found in stream
[2026-06-12 03:10:00,045.045 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 03:10:00,048.048 INFO    ] Waiting 3.26 seconds before fallback handling...
[2026-06-12 03:10:06,043.043 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 03:10:06,045.045 INFO    ] Checking for system updates...
[2026-06-12 03:10:06,081.081 INFO    ] 200
[2026-06-12 03:10:06,084.084 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:10:06,136.136 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 03:10:06,138.138 INFO    ] No update needed
[2026-06-12 03:10:06,141.141 INFO    ] Checking for camera pi updates...
[2026-06-12 03:10:06,165.165 INFO    ] 200
[2026-06-12 03:10:06,166.166 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:10:06,194.194 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 03:10:06,232.232 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 03:10:06,233.233 INFO    ] No camera update needed
[2026-06-12 03:10:06,234.234 INFO    ] Script finished. Safe exiting...
[2026-06-12 03:10:06,236.236 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 03:10:06,238.238 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 03:10:06,241.241 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 03:10:08,282.282 INFO    ] ================================================
[2026-06-12 03:10:08,297.297 INFO    ] Launching Daemon at Fri Jun 12 03:10:08 IST 2026
[2026-06-12 03:10:08,309.309 INFO    ] ================================================
[2026-06-12 03:10:08,684.684 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 03:10:08
[2026-06-12 03:10:08,996.996 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 03:10:09,144.144 INFO    ] Initializing speech engine...
[2026-06-12 03:10:09,148.148 INFO    ] 2026-06-12 03:10:09
[2026-06-12 03:10:09,363.363 INFO    ] 2026-06-12 03:10:09
[2026-06-12 03:10:09,394.394 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 03:10:09,593.593 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 03:10:09,597.597 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 03:10:09,744.744 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 03:10:09,798.798 INFO    ] time= 12/06/2026 03:10:09
[2026-06-12 03:10:09,838.838 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 03:10:09,844.844 INFO    ] Checking for existing commands in stream...
[2026-06-12 03:10:09,920.920 INFO    ] No existing commands found in stream
[2026-06-12 03:10:14,931.931 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 03:10:14,933.933 INFO    ] Waiting 1.18 seconds before fallback handling...
[2026-06-12 03:10:16,480.480 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 03:10:16,482.482 INFO    ] Checking for system updates...
[2026-06-12 03:10:16,502.502 INFO    ] 200
[2026-06-12 03:10:16,503.503 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:10:16,535.535 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 03:10:16,537.537 INFO    ] No update needed
[2026-06-12 03:10:16,538.538 INFO    ] Checking for camera pi updates...
[2026-06-12 03:10:16,559.559 INFO    ] 200
[2026-06-12 03:10:16,560.560 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:10:16,585.585 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 03:10:16,622.622 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 03:10:16,624.624 INFO    ] No camera update needed
[2026-06-12 03:10:16,625.625 INFO    ] Script finished. Safe exiting...
[2026-06-12 03:10:16,626.626 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 03:10:16,629.629 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 03:10:16,632.632 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 03:10:18,673.673 INFO    ] ================================================
[2026-06-12 03:10:18,689.689 INFO    ] Launching Daemon at Fri Jun 12 03:10:18 IST 2026
[2026-06-12 03:10:18,700.700 INFO    ] ================================================
[2026-06-12 03:10:19,044.044 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 03:10:19
[2026-06-12 03:10:19,355.355 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 03:10:19,497.497 INFO    ] Initializing speech engine...
[2026-06-12 03:10:19,502.502 INFO    ] 2026-06-12 03:10:19
[2026-06-12 03:10:19,705.705 INFO    ] 2026-06-12 03:10:19
[2026-06-12 03:10:19,734.734 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 03:10:19,919.919 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 03:10:19,927.927 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 03:10:20,056.056 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 03:10:20,115.115 INFO    ] time= 12/06/2026 03:10:20
[2026-06-12 03:10:20,147.147 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 03:10:20,153.153 INFO    ] Checking for existing commands in stream...
[2026-06-12 03:10:20,243.243 INFO    ] No existing commands found in stream
[2026-06-12 03:10:25,252.252 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 03:10:25,255.255 INFO    ] Waiting 0.25 seconds before fallback handling...
[2026-06-12 03:10:25,869.869 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 03:10:25,871.871 INFO    ] Checking for system updates...
[2026-06-12 03:10:25,892.892 INFO    ] 200
[2026-06-12 03:10:25,893.893 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:10:25,924.924 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 03:10:25,926.926 INFO    ] No update needed
[2026-06-12 03:10:25,927.927 INFO    ] Checking for camera pi updates...
[2026-06-12 03:10:25,948.948 INFO    ] 200
[2026-06-12 03:10:25,949.949 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:10:25,974.974 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 03:10:26,011.011 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 03:10:26,012.012 INFO    ] No camera update needed
[2026-06-12 03:10:26,014.014 INFO    ] Script finished. Safe exiting...
[2026-06-12 03:10:26,015.015 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 03:10:26,018.018 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 03:10:26,021.021 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 03:10:28,065.065 INFO    ] ================================================
[2026-06-12 03:10:28,081.081 INFO    ] Launching Daemon at Fri Jun 12 03:10:28 IST 2026
[2026-06-12 03:10:28,092.092 INFO    ] ================================================
[2026-06-12 03:10:28,473.473 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 03:10:28
[2026-06-12 03:10:28,815.815 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 03:10:28,969.969 INFO    ] Initializing speech engine...
[2026-06-12 03:10:28,972.972 INFO    ] 2026-06-12 03:10:28
[2026-06-12 03:10:29,181.181 INFO    ] 2026-06-12 03:10:29
[2026-06-12 03:10:29,210.210 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 03:10:29,384.384 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 03:10:29,398.398 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 03:10:29,541.541 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 03:10:29,605.605 INFO    ] time= 12/06/2026 03:10:29
[2026-06-12 03:10:29,628.628 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 03:10:29,635.635 INFO    ] Checking for existing commands in stream...
[2026-06-12 03:10:29,702.702 INFO    ] No existing commands found in stream
[2026-06-12 03:10:34,716.716 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 03:10:34,720.720 INFO    ] Waiting 1.98 seconds before fallback handling...
[2026-06-12 03:10:37,068.068 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 03:10:37,070.070 INFO    ] Checking for system updates...
[2026-06-12 03:10:37,093.093 INFO    ] 200
[2026-06-12 03:10:37,094.094 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:10:37,128.128 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 03:10:37,129.129 INFO    ] No update needed
[2026-06-12 03:10:37,131.131 INFO    ] Checking for camera pi updates...
[2026-06-12 03:10:37,151.151 INFO    ] 200
[2026-06-12 03:10:37,152.152 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:10:37,176.176 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 03:10:37,218.218 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 03:10:37,219.219 INFO    ] No camera update needed
[2026-06-12 03:10:37,221.221 INFO    ] Script finished. Safe exiting...
[2026-06-12 03:10:37,222.222 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 03:10:37,225.225 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 03:10:37,228.228 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 03:10:39,269.269 INFO    ] ================================================
[2026-06-12 03:10:39,286.286 INFO    ] Launching Daemon at Fri Jun 12 03:10:39 IST 2026
[2026-06-12 03:10:39,297.297 INFO    ] ================================================
[2026-06-12 03:10:39,619.619 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 03:10:39
[2026-06-12 03:10:39,931.931 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 03:10:40,073.073 INFO    ] Initializing speech engine...
[2026-06-12 03:10:40,078.078 INFO    ] 2026-06-12 03:10:40
[2026-06-12 03:10:40,283.283 INFO    ] 2026-06-12 03:10:40
[2026-06-12 03:10:40,312.312 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 03:10:40,497.497 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 03:10:40,507.507 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 03:10:40,635.635 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 03:10:40,697.697 INFO    ] time= 12/06/2026 03:10:40
[2026-06-12 03:10:40,732.732 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 03:10:40,744.744 INFO    ] Checking for existing commands in stream...
[2026-06-12 03:10:40,856.856 INFO    ] No existing commands found in stream
[2026-06-12 03:10:45,882.882 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 03:10:45,885.885 INFO    ] Waiting 3.73 seconds before fallback handling...
[2026-06-12 03:10:49,999.999 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 03:10:50,001.001 INFO    ] Checking for system updates...
[2026-06-12 03:10:50,021.021 INFO    ] 200
[2026-06-12 03:10:50,023.023 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:10:50,053.053 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 03:10:50,054.054 INFO    ] No update needed
[2026-06-12 03:10:50,055.055 INFO    ] Checking for camera pi updates...
[2026-06-12 03:10:50,075.075 INFO    ] 200
[2026-06-12 03:10:50,076.076 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:10:50,099.099 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 03:10:50,136.136 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 03:10:50,137.137 INFO    ] No camera update needed
[2026-06-12 03:10:50,139.139 INFO    ] Script finished. Safe exiting...
[2026-06-12 03:10:50,140.140 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 03:10:50,143.143 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 03:10:50,146.146 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 03:10:52,183.183 INFO    ] ================================================
[2026-06-12 03:10:52,198.198 INFO    ] Launching Daemon at Fri Jun 12 03:10:52 IST 2026
[2026-06-12 03:10:52,209.209 INFO    ] ================================================
[2026-06-12 03:10:52,567.567 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 03:10:52
[2026-06-12 03:10:52,883.883 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 03:10:53,016.016 INFO    ] Initializing speech engine...
[2026-06-12 03:10:53,029.029 INFO    ] 2026-06-12 03:10:53
[2026-06-12 03:10:53,237.237 INFO    ] 2026-06-12 03:10:53
[2026-06-12 03:10:53,266.266 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 03:10:53,450.450 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 03:10:53,459.459 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 03:10:53,595.595 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 03:10:53,657.657 INFO    ] time= 12/06/2026 03:10:53
[2026-06-12 03:10:53,680.680 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 03:10:53,687.687 INFO    ] Checking for existing commands in stream...
[2026-06-12 03:10:53,803.803 INFO    ] No existing commands found in stream
[2026-06-12 03:10:58,812.812 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 03:10:58,815.815 INFO    ] Waiting 1.30 seconds before fallback handling...
[2026-06-12 03:11:00,496.496 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 03:11:00,498.498 INFO    ] Checking for system updates...
[2026-06-12 03:11:00,519.519 INFO    ] 200
[2026-06-12 03:11:00,521.521 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:11:00,551.551 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 03:11:00,552.552 INFO    ] No update needed
[2026-06-12 03:11:00,554.554 INFO    ] Checking for camera pi updates...
[2026-06-12 03:11:00,573.573 INFO    ] 200
[2026-06-12 03:11:00,574.574 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:11:00,598.598 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 03:11:00,636.636 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 03:11:00,637.637 INFO    ] No camera update needed
[2026-06-12 03:11:00,638.638 INFO    ] Script finished. Safe exiting...
[2026-06-12 03:11:00,640.640 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 03:11:00,643.643 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 03:11:00,645.645 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 03:11:02,679.679 INFO    ] ================================================
[2026-06-12 03:11:02,690.690 INFO    ] Launching Daemon at Fri Jun 12 03:11:02 IST 2026
[2026-06-12 03:11:02,698.698 INFO    ] ================================================
[2026-06-12 03:11:03,047.047 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 03:11:03
[2026-06-12 03:11:03,366.366 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 03:11:03,509.509 INFO    ] Initializing speech engine...
[2026-06-12 03:11:03,514.514 INFO    ] 2026-06-12 03:11:03
[2026-06-12 03:11:03,717.717 INFO    ] 2026-06-12 03:11:03
[2026-06-12 03:11:03,746.746 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 03:11:03,916.916 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 03:11:03,936.936 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 03:11:04,072.072 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 03:11:04,131.131 INFO    ] time= 12/06/2026 03:11:04
[2026-06-12 03:11:04,164.164 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 03:11:04,166.166 INFO    ] Checking for existing commands in stream...
[2026-06-12 03:11:04,238.238 INFO    ] No existing commands found in stream
[2026-06-12 03:11:09,247.247 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 03:11:09,249.249 INFO    ] Waiting 3.13 seconds before fallback handling...
[2026-06-12 03:11:12,738.738 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 03:11:12,740.740 INFO    ] Checking for system updates...
[2026-06-12 03:11:12,761.761 INFO    ] 200
[2026-06-12 03:11:12,763.763 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:11:12,793.793 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 03:11:12,794.794 INFO    ] No update needed
[2026-06-12 03:11:12,795.795 INFO    ] Checking for camera pi updates...
[2026-06-12 03:11:12,816.816 INFO    ] 200
[2026-06-12 03:11:12,818.818 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:11:12,843.843 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 03:11:12,878.878 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 03:11:12,880.880 INFO    ] No camera update needed
[2026-06-12 03:11:12,881.881 INFO    ] Script finished. Safe exiting...
[2026-06-12 03:11:12,882.882 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 03:11:12,885.885 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 03:11:12,888.888 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 03:11:14,926.926 INFO    ] ================================================
[2026-06-12 03:11:14,942.942 INFO    ] Launching Daemon at Fri Jun 12 03:11:14 IST 2026
[2026-06-12 03:11:14,954.954 INFO    ] ================================================
[2026-06-12 03:11:15,291.291 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 03:11:15
[2026-06-12 03:11:15,604.604 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 03:11:15,738.738 INFO    ] Initializing speech engine...
[2026-06-12 03:11:15,750.750 INFO    ] 2026-06-12 03:11:15
[2026-06-12 03:11:15,958.958 INFO    ] 2026-06-12 03:11:15
[2026-06-12 03:11:15,988.988 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 03:11:16,176.176 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 03:11:16,184.184 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 03:11:16,316.316 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 03:11:16,386.386 INFO    ] time= 12/06/2026 03:11:16
[2026-06-12 03:11:16,409.409 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 03:11:16,416.416 INFO    ] Checking for existing commands in stream...
[2026-06-12 03:11:16,507.507 INFO    ] No existing commands found in stream
[2026-06-12 03:11:21,516.516 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 03:11:21,519.519 INFO    ] Waiting 3.57 seconds before fallback handling...
[2026-06-12 03:11:25,442.442 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 03:11:25,444.444 INFO    ] Checking for system updates...
[2026-06-12 03:11:25,464.464 INFO    ] 200
[2026-06-12 03:11:25,466.466 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:11:25,496.496 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 03:11:25,497.497 INFO    ] No update needed
[2026-06-12 03:11:25,498.498 INFO    ] Checking for camera pi updates...
[2026-06-12 03:11:25,518.518 INFO    ] 200
[2026-06-12 03:11:25,519.519 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:11:25,544.544 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 03:11:25,583.583 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 03:11:25,585.585 INFO    ] No camera update needed
[2026-06-12 03:11:25,586.586 INFO    ] Script finished. Safe exiting...
[2026-06-12 03:11:25,587.587 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 03:11:25,590.590 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 03:11:25,593.593 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 03:11:27,636.636 INFO    ] ================================================
[2026-06-12 03:11:27,651.651 INFO    ] Launching Daemon at Fri Jun 12 03:11:27 IST 2026
[2026-06-12 03:11:27,662.662 INFO    ] ================================================
[2026-06-12 03:11:28,013.013 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 03:11:28
[2026-06-12 03:11:28,325.325 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 03:11:28,455.455 INFO    ] Initializing speech engine...
[2026-06-12 03:11:28,459.459 INFO    ] 2026-06-12 03:11:28
[2026-06-12 03:11:28,676.676 INFO    ] 2026-06-12 03:11:28
[2026-06-12 03:11:28,705.705 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 03:11:28,850.850 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 03:11:28,893.893 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 03:11:29,025.025 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 03:11:29,080.080 INFO    ] time= 12/06/2026 03:11:29
[2026-06-12 03:11:29,115.115 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 03:11:29,125.125 INFO    ] Checking for existing commands in stream...
[2026-06-12 03:11:29,197.197 INFO    ] No existing commands found in stream
[2026-06-12 03:11:34,211.211 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 03:11:34,214.214 INFO    ] Waiting 2.79 seconds before fallback handling...
[2026-06-12 03:11:37,382.382 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 03:11:37,383.383 INFO    ] Checking for system updates...
[2026-06-12 03:11:37,404.404 INFO    ] 200
[2026-06-12 03:11:37,405.405 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:11:37,437.437 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 03:11:37,438.438 INFO    ] No update needed
[2026-06-12 03:11:37,440.440 INFO    ] Checking for camera pi updates...
[2026-06-12 03:11:37,459.459 INFO    ] 200
[2026-06-12 03:11:37,461.461 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:11:37,483.483 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 03:11:37,508.508 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 03:11:37,509.509 INFO    ] No camera update needed
[2026-06-12 03:11:37,511.511 INFO    ] Script finished. Safe exiting...
[2026-06-12 03:11:37,512.512 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 03:11:37,515.515 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 03:11:37,517.517 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 03:11:39,555.555 INFO    ] ================================================
[2026-06-12 03:11:39,570.570 INFO    ] Launching Daemon at Fri Jun 12 03:11:39 IST 2026
[2026-06-12 03:11:39,581.581 INFO    ] ================================================
[2026-06-12 03:11:39,940.940 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 03:11:39
[2026-06-12 03:11:40,279.279 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 03:11:40,432.432 INFO    ] Initializing speech engine...
[2026-06-12 03:11:40,436.436 INFO    ] 2026-06-12 03:11:40
[2026-06-12 03:11:40,643.643 INFO    ] 2026-06-12 03:11:40
[2026-06-12 03:11:40,672.672 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 03:11:40,856.856 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 03:11:40,866.866 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 03:11:40,999.999 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 03:11:41,062.062 INFO    ] time= 12/06/2026 03:11:41
[2026-06-12 03:11:41,085.085 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 03:11:41,091.091 INFO    ] Checking for existing commands in stream...
[2026-06-12 03:11:41,158.158 INFO    ] No existing commands found in stream
[2026-06-12 03:11:46,173.173 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 03:11:46,176.176 INFO    ] Waiting 1.84 seconds before fallback handling...
[2026-06-12 03:11:48,423.423 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 03:11:48,424.424 INFO    ] Checking for system updates...
[2026-06-12 03:11:48,446.446 INFO    ] 200
[2026-06-12 03:11:48,448.448 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:11:48,478.478 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 03:11:48,480.480 INFO    ] No update needed
[2026-06-12 03:11:48,481.481 INFO    ] Checking for camera pi updates...
[2026-06-12 03:11:48,504.504 INFO    ] 200
[2026-06-12 03:11:48,505.505 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:11:48,529.529 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 03:11:48,570.570 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 03:11:48,571.571 INFO    ] No camera update needed
[2026-06-12 03:11:48,573.573 INFO    ] Script finished. Safe exiting...
[2026-06-12 03:11:48,574.574 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 03:11:48,577.577 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 03:11:48,580.580 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 03:11:50,617.617 INFO    ] ================================================
[2026-06-12 03:11:50,633.633 INFO    ] Launching Daemon at Fri Jun 12 03:11:50 IST 2026
[2026-06-12 03:11:50,643.643 INFO    ] ================================================
[2026-06-12 03:11:50,984.984 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 03:11:50
[2026-06-12 03:11:51,296.296 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 03:11:51,425.425 INFO    ] Initializing speech engine...
[2026-06-12 03:11:51,434.434 INFO    ] 2026-06-12 03:11:51
[2026-06-12 03:11:51,645.645 INFO    ] 2026-06-12 03:11:51
[2026-06-12 03:11:51,674.674 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 03:11:51,857.857 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 03:11:51,866.866 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 03:11:51,989.989 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 03:11:52,050.050 INFO    ] time= 12/06/2026 03:11:51
[2026-06-12 03:11:52,074.074 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 03:11:52,090.090 INFO    ] Checking for existing commands in stream...
[2026-06-12 03:11:52,161.161 INFO    ] No existing commands found in stream
[2026-06-12 03:11:57,175.175 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 03:11:57,178.178 INFO    ] Waiting 1.95 seconds before fallback handling...
[2026-06-12 03:11:59,522.522 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 03:11:59,523.523 INFO    ] Checking for system updates...
[2026-06-12 03:11:59,546.546 INFO    ] 200
[2026-06-12 03:11:59,547.547 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:11:59,578.578 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 03:11:59,579.579 INFO    ] No update needed
[2026-06-12 03:11:59,581.581 INFO    ] Checking for camera pi updates...
[2026-06-12 03:11:59,603.603 INFO    ] 200
[2026-06-12 03:11:59,604.604 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:11:59,627.627 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 03:11:59,668.668 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 03:11:59,670.670 INFO    ] No camera update needed
[2026-06-12 03:11:59,671.671 INFO    ] Script finished. Safe exiting...
[2026-06-12 03:11:59,672.672 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 03:11:59,676.676 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 03:11:59,679.679 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 03:12:01,712.712 INFO    ] ================================================
[2026-06-12 03:12:01,729.729 INFO    ] Launching Daemon at Fri Jun 12 03:12:01 IST 2026
[2026-06-12 03:12:01,737.737 INFO    ] ================================================
[2026-06-12 03:12:02,102.102 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 03:12:02
[2026-06-12 03:12:02,454.454 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 03:12:02,585.585 INFO    ] Initializing speech engine...
[2026-06-12 03:12:02,588.588 INFO    ] 2026-06-12 03:12:02
[2026-06-12 03:12:02,807.807 INFO    ] 2026-06-12 03:12:02
[2026-06-12 03:12:02,836.836 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 03:12:02,959.959 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 03:12:03,023.023 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 03:12:03,160.160 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 03:12:03,227.227 INFO    ] time= 12/06/2026 03:12:03
[2026-06-12 03:12:03,255.255 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 03:12:03,262.262 INFO    ] Checking for existing commands in stream...
[2026-06-12 03:12:03,328.328 INFO    ] No existing commands found in stream
[2026-06-12 03:12:08,338.338 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 03:12:08,341.341 INFO    ] Waiting 3.89 seconds before fallback handling...
[2026-06-12 03:12:12,612.612 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 03:12:12,613.613 INFO    ] Checking for system updates...
[2026-06-12 03:12:12,634.634 INFO    ] 200
[2026-06-12 03:12:12,635.635 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:12:12,666.666 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 03:12:12,667.667 INFO    ] No update needed
[2026-06-12 03:12:12,668.668 INFO    ] Checking for camera pi updates...
[2026-06-12 03:12:12,689.689 INFO    ] 200
[2026-06-12 03:12:12,691.691 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:12:12,714.714 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 03:12:12,768.768 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 03:12:12,770.770 INFO    ] No camera update needed
[2026-06-12 03:12:12,771.771 INFO    ] Script finished. Safe exiting...
[2026-06-12 03:12:12,772.772 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 03:12:12,775.775 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 03:12:12,778.778 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 03:12:14,817.817 INFO    ] ================================================
[2026-06-12 03:12:14,832.832 INFO    ] Launching Daemon at Fri Jun 12 03:12:14 IST 2026
[2026-06-12 03:12:14,843.843 INFO    ] ================================================
[2026-06-12 03:12:15,185.185 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 03:12:15
[2026-06-12 03:12:15,496.496 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 03:12:15,638.638 INFO    ] Initializing speech engine...
[2026-06-12 03:12:15,643.643 INFO    ] 2026-06-12 03:12:15
[2026-06-12 03:12:15,846.846 INFO    ] 2026-06-12 03:12:15
[2026-06-12 03:12:15,874.874 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 03:12:16,057.057 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 03:12:16,065.065 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 03:12:16,194.194 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 03:12:16,258.258 INFO    ] time= 12/06/2026 03:12:16
[2026-06-12 03:12:16,284.284 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 03:12:16,291.291 INFO    ] Checking for existing commands in stream...
[2026-06-12 03:12:16,381.381 INFO    ] No existing commands found in stream
[2026-06-12 03:12:21,390.390 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 03:12:21,392.392 INFO    ] Waiting 0.97 seconds before fallback handling...
[2026-06-12 03:12:22,742.742 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 03:12:22,743.743 INFO    ] Checking for system updates...
[2026-06-12 03:12:22,764.764 INFO    ] 200
[2026-06-12 03:12:22,766.766 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:12:22,798.798 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 03:12:22,800.800 INFO    ] No update needed
[2026-06-12 03:12:22,802.802 INFO    ] Checking for camera pi updates...
[2026-06-12 03:12:22,822.822 INFO    ] 200
[2026-06-12 03:12:22,823.823 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:12:22,848.848 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 03:12:22,882.882 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 03:12:22,883.883 INFO    ] No camera update needed
[2026-06-12 03:12:22,885.885 INFO    ] Script finished. Safe exiting...
[2026-06-12 03:12:22,886.886 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 03:12:22,889.889 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 03:12:22,892.892 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 03:12:24,931.931 INFO    ] ================================================
[2026-06-12 03:12:24,950.950 INFO    ] Launching Daemon at Fri Jun 12 03:12:24 IST 2026
[2026-06-12 03:12:24,961.961 INFO    ] ================================================
[2026-06-12 03:12:25,305.305 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 03:12:25
[2026-06-12 03:12:25,619.619 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 03:12:25,751.751 INFO    ] Initializing speech engine...
[2026-06-12 03:12:25,754.754 INFO    ] 2026-06-12 03:12:25
[2026-06-12 03:12:25,959.959 INFO    ] 2026-06-12 03:12:25
[2026-06-12 03:12:25,993.993 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 03:12:26,154.154 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 03:12:26,191.191 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 03:12:26,368.368 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 03:12:26,431.431 INFO    ] time= 12/06/2026 03:12:26
[2026-06-12 03:12:26,461.461 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 03:12:26,472.472 INFO    ] Checking for existing commands in stream...
[2026-06-12 03:12:26,551.551 INFO    ] No existing commands found in stream
[2026-06-12 03:12:31,561.561 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 03:12:31,562.562 INFO    ] Waiting 1.72 seconds before fallback handling...
[2026-06-12 03:12:33,629.629 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 03:12:33,631.631 INFO    ] Checking for system updates...
[2026-06-12 03:12:33,652.652 INFO    ] 200
[2026-06-12 03:12:33,653.653 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:12:33,684.684 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 03:12:33,685.685 INFO    ] No update needed
[2026-06-12 03:12:33,687.687 INFO    ] Checking for camera pi updates...
[2026-06-12 03:12:33,706.706 INFO    ] 200
[2026-06-12 03:12:33,708.708 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:12:33,733.733 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 03:12:33,769.769 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 03:12:33,771.771 INFO    ] No camera update needed
[2026-06-12 03:12:33,772.772 INFO    ] Script finished. Safe exiting...
[2026-06-12 03:12:33,773.773 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 03:12:33,777.777 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 03:12:33,780.780 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 03:12:35,818.818 INFO    ] ================================================
[2026-06-12 03:12:35,833.833 INFO    ] Launching Daemon at Fri Jun 12 03:12:35 IST 2026
[2026-06-12 03:12:35,844.844 INFO    ] ================================================
[2026-06-12 03:12:36,188.188 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 03:12:36
[2026-06-12 03:12:36,500.500 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 03:12:36,631.631 INFO    ] Initializing speech engine...
[2026-06-12 03:12:36,634.634 INFO    ] 2026-06-12 03:12:36
[2026-06-12 03:12:36,838.838 INFO    ] 2026-06-12 03:12:36
[2026-06-12 03:12:36,870.870 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 03:12:37,027.027 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 03:12:37,090.090 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 03:12:37,242.242 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 03:12:37,296.296 INFO    ] time= 12/06/2026 03:12:37
[2026-06-12 03:12:37,317.317 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 03:12:37,324.324 INFO    ] Checking for existing commands in stream...
[2026-06-12 03:12:37,390.390 INFO    ] No existing commands found in stream
[2026-06-12 03:12:42,404.404 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 03:12:42,407.407 INFO    ] Waiting 2.35 seconds before fallback handling...
[2026-06-12 03:12:45,140.140 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 03:12:45,142.142 INFO    ] Checking for system updates...
[2026-06-12 03:12:45,163.163 INFO    ] 200
[2026-06-12 03:12:45,165.165 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:12:45,195.195 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 03:12:45,196.196 INFO    ] No update needed
[2026-06-12 03:12:45,198.198 INFO    ] Checking for camera pi updates...
[2026-06-12 03:12:45,217.217 INFO    ] 200
[2026-06-12 03:12:45,218.218 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:12:45,243.243 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 03:12:45,276.276 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 03:12:45,277.277 INFO    ] No camera update needed
[2026-06-12 03:12:45,279.279 INFO    ] Script finished. Safe exiting...
[2026-06-12 03:12:45,280.280 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 03:12:45,283.283 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 03:12:45,286.286 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 03:12:47,324.324 INFO    ] ================================================
[2026-06-12 03:12:47,340.340 INFO    ] Launching Daemon at Fri Jun 12 03:12:47 IST 2026
[2026-06-12 03:12:47,350.350 INFO    ] ================================================
[2026-06-12 03:12:47,740.740 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 03:12:47
[2026-06-12 03:12:48,082.082 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 03:12:48,240.240 INFO    ] Initializing speech engine...
[2026-06-12 03:12:48,247.247 INFO    ] 2026-06-12 03:12:48
[2026-06-12 03:12:48,448.448 INFO    ] 2026-06-12 03:12:48
[2026-06-12 03:12:48,476.476 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 03:12:48,661.661 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 03:12:48,671.671 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 03:12:48,805.805 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 03:12:48,868.868 INFO    ] time= 12/06/2026 03:12:48
[2026-06-12 03:12:48,891.891 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 03:12:48,897.897 INFO    ] Checking for existing commands in stream...
[2026-06-12 03:12:48,988.988 INFO    ] No existing commands found in stream
[2026-06-12 03:12:54,014.014 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 03:12:54,017.017 INFO    ] Waiting 2.06 seconds before fallback handling...
[2026-06-12 03:12:56,442.442 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 03:12:56,443.443 INFO    ] Checking for system updates...
[2026-06-12 03:12:56,466.466 INFO    ] 200
[2026-06-12 03:12:56,467.467 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:12:56,500.500 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 03:12:56,502.502 INFO    ] No update needed
[2026-06-12 03:12:56,503.503 INFO    ] Checking for camera pi updates...
[2026-06-12 03:12:56,523.523 INFO    ] 200
[2026-06-12 03:12:56,525.525 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:12:56,549.549 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 03:12:56,587.587 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 03:12:56,589.589 INFO    ] No camera update needed
[2026-06-12 03:12:56,590.590 INFO    ] Script finished. Safe exiting...
[2026-06-12 03:12:56,592.592 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 03:12:56,595.595 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 03:12:56,598.598 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 03:12:58,637.637 INFO    ] ================================================
[2026-06-12 03:12:58,652.652 INFO    ] Launching Daemon at Fri Jun 12 03:12:58 IST 2026
[2026-06-12 03:12:58,663.663 INFO    ] ================================================
[2026-06-12 03:12:59,015.015 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 03:12:59
[2026-06-12 03:12:59,358.358 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 03:12:59,519.519 INFO    ] Initializing speech engine...
[2026-06-12 03:12:59,526.526 INFO    ] 2026-06-12 03:12:59
[2026-06-12 03:12:59,731.731 INFO    ] 2026-06-12 03:12:59
[2026-06-12 03:12:59,759.759 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 03:12:59,947.947 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 03:12:59,956.956 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 03:13:00,109.109 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 03:13:00,157.157 INFO    ] time= 12/06/2026 03:13:00
[2026-06-12 03:13:00,180.180 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 03:13:00,187.187 INFO    ] Checking for existing commands in stream...
[2026-06-12 03:13:00,255.255 INFO    ] No existing commands found in stream
[2026-06-12 03:13:05,269.269 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 03:13:05,273.273 INFO    ] Waiting 0.32 seconds before fallback handling...
[2026-06-12 03:13:05,969.969 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 03:13:05,971.971 INFO    ] Checking for system updates...
[2026-06-12 03:13:05,992.992 INFO    ] 200
[2026-06-12 03:13:05,994.994 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:13:06,025.025 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 03:13:06,026.026 INFO    ] No update needed
[2026-06-12 03:13:06,027.027 INFO    ] Checking for camera pi updates...
[2026-06-12 03:13:06,048.048 INFO    ] 200
[2026-06-12 03:13:06,050.050 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:13:06,075.075 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 03:13:06,104.104 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 03:13:06,106.106 INFO    ] No camera update needed
[2026-06-12 03:13:06,107.107 INFO    ] Script finished. Safe exiting...
[2026-06-12 03:13:06,108.108 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 03:13:06,111.111 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 03:13:06,114.114 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 03:13:08,152.152 INFO    ] ================================================
[2026-06-12 03:13:08,167.167 INFO    ] Launching Daemon at Fri Jun 12 03:13:08 IST 2026
[2026-06-12 03:13:08,177.177 INFO    ] ================================================
[2026-06-12 03:13:08,531.531 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 03:13:08
[2026-06-12 03:13:08,844.844 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 03:13:08,974.974 INFO    ] Initializing speech engine...
[2026-06-12 03:13:08,983.983 INFO    ] 2026-06-12 03:13:08
[2026-06-12 03:13:09,197.197 INFO    ] 2026-06-12 03:13:09
[2026-06-12 03:13:09,227.227 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 03:13:09,361.361 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 03:13:09,415.415 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 03:13:09,556.556 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 03:13:09,620.620 INFO    ] time= 12/06/2026 03:13:09
[2026-06-12 03:13:09,649.649 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 03:13:09,655.655 INFO    ] Checking for existing commands in stream...
[2026-06-12 03:13:09,723.723 INFO    ] No existing commands found in stream
[2026-06-12 03:13:14,732.732 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 03:13:14,735.735 INFO    ] Waiting 2.80 seconds before fallback handling...
[2026-06-12 03:13:17,899.899 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 03:13:17,901.901 INFO    ] Checking for system updates...
[2026-06-12 03:13:17,922.922 INFO    ] 200
[2026-06-12 03:13:17,923.923 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:13:17,954.954 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 03:13:17,955.955 INFO    ] No update needed
[2026-06-12 03:13:17,956.956 INFO    ] Checking for camera pi updates...
[2026-06-12 03:13:17,977.977 INFO    ] 200
[2026-06-12 03:13:17,978.978 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:13:18,003.003 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 03:13:18,030.030 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 03:13:18,031.031 INFO    ] No camera update needed
[2026-06-12 03:13:18,033.033 INFO    ] Script finished. Safe exiting...
[2026-06-12 03:13:18,034.034 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 03:13:18,037.037 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 03:13:18,039.039 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 03:13:20,077.077 INFO    ] ================================================
[2026-06-12 03:13:20,093.093 INFO    ] Launching Daemon at Fri Jun 12 03:13:20 IST 2026
[2026-06-12 03:13:20,105.105 INFO    ] ================================================
[2026-06-12 03:13:20,464.464 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 03:13:20
[2026-06-12 03:13:20,782.782 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 03:13:20,914.914 INFO    ] Initializing speech engine...
[2026-06-12 03:13:20,928.928 INFO    ] 2026-06-12 03:13:20
[2026-06-12 03:13:21,135.135 INFO    ] 2026-06-12 03:13:21
[2026-06-12 03:13:21,163.163 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 03:13:21,347.347 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 03:13:21,351.351 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 03:13:21,483.483 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 03:13:21,546.546 INFO    ] time= 12/06/2026 03:13:21
[2026-06-12 03:13:21,578.578 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 03:13:21,585.585 INFO    ] Checking for existing commands in stream...
[2026-06-12 03:13:21,652.652 INFO    ] No existing commands found in stream
[2026-06-12 03:13:26,666.666 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 03:13:26,669.669 INFO    ] Waiting 3.13 seconds before fallback handling...
[2026-06-12 03:13:30,159.159 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 03:13:30,161.161 INFO    ] Checking for system updates...
[2026-06-12 03:13:30,181.181 INFO    ] 200
[2026-06-12 03:13:30,183.183 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:13:30,212.212 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 03:13:30,214.214 INFO    ] No update needed
[2026-06-12 03:13:30,215.215 INFO    ] Checking for camera pi updates...
[2026-06-12 03:13:30,235.235 INFO    ] 200
[2026-06-12 03:13:30,236.236 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:13:30,259.259 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 03:13:30,309.309 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 03:13:30,311.311 INFO    ] No camera update needed
[2026-06-12 03:13:30,312.312 INFO    ] Script finished. Safe exiting...
[2026-06-12 03:13:30,313.313 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 03:13:30,316.316 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 03:13:30,319.319 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 03:13:32,356.356 INFO    ] ================================================
[2026-06-12 03:13:32,371.371 INFO    ] Launching Daemon at Fri Jun 12 03:13:32 IST 2026
[2026-06-12 03:13:32,381.381 INFO    ] ================================================
[2026-06-12 03:13:32,741.741 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 03:13:32
[2026-06-12 03:13:33,081.081 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 03:13:33,232.232 INFO    ] Initializing speech engine...
[2026-06-12 03:13:33,238.238 INFO    ] 2026-06-12 03:13:33
[2026-06-12 03:13:33,445.445 INFO    ] 2026-06-12 03:13:33
[2026-06-12 03:13:33,474.474 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 03:13:33,658.658 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 03:13:33,668.668 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 03:13:33,796.796 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 03:13:33,864.864 INFO    ] time= 12/06/2026 03:13:33
[2026-06-12 03:13:33,889.889 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 03:13:33,894.894 INFO    ] Checking for existing commands in stream...
[2026-06-12 03:13:33,986.986 INFO    ] No existing commands found in stream
[2026-06-12 03:13:38,993.993 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 03:13:38,997.997 INFO    ] Waiting 2.18 seconds before fallback handling...
[2026-06-12 03:13:41,558.558 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 03:13:41,560.560 INFO    ] Checking for system updates...
[2026-06-12 03:13:41,581.581 INFO    ] 200
[2026-06-12 03:13:41,582.582 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:13:41,613.613 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 03:13:41,615.615 INFO    ] No update needed
[2026-06-12 03:13:41,616.616 INFO    ] Checking for camera pi updates...
[2026-06-12 03:13:41,636.636 INFO    ] 200
[2026-06-12 03:13:41,638.638 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:13:41,663.663 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 03:13:41,802.802 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 03:13:41,803.803 INFO    ] No camera update needed
[2026-06-12 03:13:41,805.805 INFO    ] Script finished. Safe exiting...
[2026-06-12 03:13:41,806.806 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 03:13:41,809.809 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 03:13:41,812.812 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 03:13:43,851.851 INFO    ] ================================================
[2026-06-12 03:13:43,867.867 INFO    ] Launching Daemon at Fri Jun 12 03:13:43 IST 2026
[2026-06-12 03:13:43,878.878 INFO    ] ================================================
[2026-06-12 03:13:44,231.231 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 03:13:44
[2026-06-12 03:13:44,547.547 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 03:13:44,686.686 INFO    ] Initializing speech engine...
[2026-06-12 03:13:44,693.693 INFO    ] 2026-06-12 03:13:44
[2026-06-12 03:13:44,919.919 INFO    ] 2026-06-12 03:13:44
[2026-06-12 03:13:44,949.949 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 03:13:45,151.151 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 03:13:45,161.161 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 03:13:45,294.294 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 03:13:45,355.355 INFO    ] time= 12/06/2026 03:13:45
[2026-06-12 03:13:45,390.390 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 03:13:45,402.402 INFO    ] Checking for existing commands in stream...
[2026-06-12 03:13:45,480.480 INFO    ] No existing commands found in stream
[2026-06-12 03:13:50,489.489 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 03:13:50,492.492 INFO    ] Waiting 1.81 seconds before fallback handling...
[2026-06-12 03:13:52,659.659 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 03:13:52,661.661 INFO    ] Checking for system updates...
[2026-06-12 03:13:52,683.683 INFO    ] 200
[2026-06-12 03:13:52,684.684 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:13:52,714.714 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 03:13:52,716.716 INFO    ] No update needed
[2026-06-12 03:13:52,717.717 INFO    ] Checking for camera pi updates...
[2026-06-12 03:13:52,739.739 INFO    ] 200
[2026-06-12 03:13:52,740.740 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:13:52,771.771 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 03:13:52,792.792 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 03:13:52,794.794 INFO    ] No camera update needed
[2026-06-12 03:13:52,795.795 INFO    ] Script finished. Safe exiting...
[2026-06-12 03:13:52,796.796 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 03:13:52,799.799 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 03:13:52,802.802 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 03:13:54,841.841 INFO    ] ================================================
[2026-06-12 03:13:54,856.856 INFO    ] Launching Daemon at Fri Jun 12 03:13:54 IST 2026
[2026-06-12 03:13:54,867.867 INFO    ] ================================================
[2026-06-12 03:13:55,217.217 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 03:13:55
[2026-06-12 03:13:55,528.528 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 03:13:55,658.658 INFO    ] Initializing speech engine...
[2026-06-12 03:13:55,663.663 INFO    ] 2026-06-12 03:13:55
[2026-06-12 03:13:55,880.880 INFO    ] 2026-06-12 03:13:55
[2026-06-12 03:13:55,910.910 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 03:13:56,032.032 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 03:13:56,086.086 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 03:13:56,236.236 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 03:13:56,304.304 INFO    ] time= 12/06/2026 03:13:56
[2026-06-12 03:13:56,328.328 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 03:13:56,334.334 INFO    ] Checking for existing commands in stream...
[2026-06-12 03:13:56,402.402 INFO    ] No existing commands found in stream
[2026-06-12 03:14:01,411.411 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 03:14:01,414.414 INFO    ] Waiting 0.58 seconds before fallback handling...
[2026-06-12 03:14:02,321.321 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 03:14:02,323.323 INFO    ] Checking for system updates...
[2026-06-12 03:14:02,350.350 INFO    ] 200
[2026-06-12 03:14:02,352.352 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:14:02,389.389 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 03:14:02,391.391 INFO    ] No update needed
[2026-06-12 03:14:02,393.393 INFO    ] Checking for camera pi updates...
[2026-06-12 03:14:02,419.419 INFO    ] 200
[2026-06-12 03:14:02,421.421 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:14:02,459.459 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 03:14:02,485.485 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 03:14:02,488.488 INFO    ] No camera update needed
[2026-06-12 03:14:02,491.491 INFO    ] Script finished. Safe exiting...
[2026-06-12 03:14:02,492.492 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 03:14:02,497.497 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 03:14:02,502.502 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 03:14:04,542.542 INFO    ] ================================================
[2026-06-12 03:14:04,557.557 INFO    ] Launching Daemon at Fri Jun 12 03:14:04 IST 2026
[2026-06-12 03:14:04,568.568 INFO    ] ================================================
[2026-06-12 03:14:04,916.916 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 03:14:04
[2026-06-12 03:14:05,233.233 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 03:14:05,376.376 INFO    ] Initializing speech engine...
[2026-06-12 03:14:05,382.382 INFO    ] 2026-06-12 03:14:05
[2026-06-12 03:14:05,585.585 INFO    ] 2026-06-12 03:14:05
[2026-06-12 03:14:05,613.613 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 03:14:05,794.794 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 03:14:05,804.804 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 03:14:05,905.905 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 03:14:05,906.906 INFO    ] time= 12/06/2026 03:14:05
[2026-06-12 03:14:05,908.908 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 03:14:05,909.909 INFO    ] Checking for existing commands in stream...
[2026-06-12 03:14:06,019.019 INFO    ] No existing commands found in stream
[2026-06-12 03:14:11,047.047 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 03:14:11,049.049 INFO    ] Waiting 2.85 seconds before fallback handling...
[2026-06-12 03:14:14,228.228 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 03:14:14,230.230 INFO    ] Checking for system updates...
[2026-06-12 03:14:14,251.251 INFO    ] 200
[2026-06-12 03:14:14,252.252 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:14:14,283.283 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 03:14:14,284.284 INFO    ] No update needed
[2026-06-12 03:14:14,285.285 INFO    ] Checking for camera pi updates...
[2026-06-12 03:14:14,308.308 INFO    ] 200
[2026-06-12 03:14:14,310.310 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:14:14,333.333 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 03:14:14,360.360 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 03:14:14,361.361 INFO    ] No camera update needed
[2026-06-12 03:14:14,363.363 INFO    ] Script finished. Safe exiting...
[2026-06-12 03:14:14,364.364 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 03:14:14,367.367 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 03:14:14,370.370 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 03:14:16,408.408 INFO    ] ================================================
[2026-06-12 03:14:16,423.423 INFO    ] Launching Daemon at Fri Jun 12 03:14:16 IST 2026
[2026-06-12 03:14:16,434.434 INFO    ] ================================================
[2026-06-12 03:14:16,776.776 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 03:14:16
[2026-06-12 03:14:17,088.088 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 03:14:17,229.229 INFO    ] Initializing speech engine...
[2026-06-12 03:14:17,239.239 INFO    ] 2026-06-12 03:14:17
[2026-06-12 03:14:17,453.453 INFO    ] 2026-06-12 03:14:17
[2026-06-12 03:14:17,484.484 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 03:14:17,680.680 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 03:14:17,684.684 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 03:14:17,828.828 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 03:14:17,886.886 INFO    ] time= 12/06/2026 03:14:17
[2026-06-12 03:14:17,915.915 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 03:14:17,932.932 INFO    ] Checking for existing commands in stream...
[2026-06-12 03:14:18,009.009 INFO    ] No existing commands found in stream
[2026-06-12 03:14:23,039.039 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 03:14:23,042.042 INFO    ] Waiting 0.17 seconds before fallback handling...
[2026-06-12 03:14:23,576.576 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 03:14:23,577.577 INFO    ] Checking for system updates...
[2026-06-12 03:14:23,599.599 INFO    ] 200
[2026-06-12 03:14:23,600.600 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:14:23,631.631 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 03:14:23,632.632 INFO    ] No update needed
[2026-06-12 03:14:23,634.634 INFO    ] Checking for camera pi updates...
[2026-06-12 03:14:23,654.654 INFO    ] 200
[2026-06-12 03:14:23,655.655 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:14:23,680.680 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 03:14:23,728.728 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 03:14:23,729.729 INFO    ] No camera update needed
[2026-06-12 03:14:23,731.731 INFO    ] Script finished. Safe exiting...
[2026-06-12 03:14:23,732.732 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 03:14:23,735.735 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 03:14:23,737.737 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 03:14:25,776.776 INFO    ] ================================================
[2026-06-12 03:14:25,791.791 INFO    ] Launching Daemon at Fri Jun 12 03:14:25 IST 2026
[2026-06-12 03:14:25,803.803 INFO    ] ================================================
[2026-06-12 03:14:26,163.163 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 03:14:26
[2026-06-12 03:14:26,475.475 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 03:14:26,607.607 INFO    ] Initializing speech engine...
[2026-06-12 03:14:26,612.612 INFO    ] 2026-06-12 03:14:26
[2026-06-12 03:14:26,839.839 INFO    ] 2026-06-12 03:14:26
[2026-06-12 03:14:26,870.870 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 03:14:27,002.002 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 03:14:27,065.065 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 03:14:27,223.223 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 03:14:27,287.287 INFO    ] time= 12/06/2026 03:14:27
[2026-06-12 03:14:27,314.314 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 03:14:27,316.316 INFO    ] Checking for existing commands in stream...
[2026-06-12 03:14:27,418.418 INFO    ] No existing commands found in stream
[2026-06-12 03:14:32,421.421 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 03:14:32,423.423 INFO    ] Waiting 1.47 seconds before fallback handling...
[2026-06-12 03:14:34,230.230 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 03:14:34,231.231 INFO    ] Checking for system updates...
[2026-06-12 03:14:34,252.252 INFO    ] 200
[2026-06-12 03:14:34,253.253 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:14:34,286.286 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 03:14:34,287.287 INFO    ] No update needed
[2026-06-12 03:14:34,288.288 INFO    ] Checking for camera pi updates...
[2026-06-12 03:14:34,308.308 INFO    ] 200
[2026-06-12 03:14:34,309.309 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:14:34,334.334 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 03:14:34,370.370 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 03:14:34,371.371 INFO    ] No camera update needed
[2026-06-12 03:14:34,372.372 INFO    ] Script finished. Safe exiting...
[2026-06-12 03:14:34,374.374 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 03:14:34,376.376 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 03:14:34,379.379 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 03:14:36,410.410 INFO    ] ================================================
[2026-06-12 03:14:36,419.419 INFO    ] Launching Daemon at Fri Jun 12 03:14:36 IST 2026
[2026-06-12 03:14:36,425.425 INFO    ] ================================================
[2026-06-12 03:14:36,772.772 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 03:14:36
[2026-06-12 03:14:37,105.105 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 03:14:37,254.254 INFO    ] Initializing speech engine...
[2026-06-12 03:14:37,260.260 INFO    ] 2026-06-12 03:14:37
[2026-06-12 03:14:37,466.466 INFO    ] 2026-06-12 03:14:37
[2026-06-12 03:14:37,495.495 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 03:14:37,679.679 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 03:14:37,689.689 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 03:14:37,829.829 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 03:14:37,886.886 INFO    ] time= 12/06/2026 03:14:37
[2026-06-12 03:14:37,909.909 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 03:14:37,916.916 INFO    ] Checking for existing commands in stream...
[2026-06-12 03:14:37,982.982 INFO    ] No existing commands found in stream
[2026-06-12 03:14:42,997.997 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 03:14:43,000.000 INFO    ] Waiting 1.81 seconds before fallback handling...
[2026-06-12 03:14:45,132.132 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 03:14:45,135.135 INFO    ] Checking for system updates...
[2026-06-12 03:14:45,173.173 INFO    ] 200
[2026-06-12 03:14:45,176.176 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:14:45,232.232 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 03:14:45,234.234 INFO    ] No update needed
[2026-06-12 03:14:45,237.237 INFO    ] Checking for camera pi updates...
[2026-06-12 03:14:45,260.260 INFO    ] 200
[2026-06-12 03:14:45,262.262 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:14:45,288.288 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 03:14:45,334.334 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 03:14:45,336.336 INFO    ] No camera update needed
[2026-06-12 03:14:45,337.337 INFO    ] Script finished. Safe exiting...
[2026-06-12 03:14:45,339.339 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 03:14:45,342.342 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 03:14:45,345.345 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 03:14:47,383.383 INFO    ] ================================================
[2026-06-12 03:14:47,398.398 INFO    ] Launching Daemon at Fri Jun 12 03:14:47 IST 2026
[2026-06-12 03:14:47,409.409 INFO    ] ================================================
[2026-06-12 03:14:47,753.753 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 03:14:47
[2026-06-12 03:14:48,064.064 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 03:14:48,202.202 INFO    ] Initializing speech engine...
[2026-06-12 03:14:48,213.213 INFO    ] 2026-06-12 03:14:48
[2026-06-12 03:14:48,415.415 INFO    ] 2026-06-12 03:14:48
[2026-06-12 03:14:48,442.442 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 03:14:48,627.627 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 03:14:48,635.635 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 03:14:48,780.780 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 03:14:48,833.833 INFO    ] time= 12/06/2026 03:14:48
[2026-06-12 03:14:48,856.856 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 03:14:48,862.862 INFO    ] Checking for existing commands in stream...
[2026-06-12 03:14:48,929.929 INFO    ] No existing commands found in stream
[2026-06-12 03:14:53,938.938 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 03:14:53,940.940 INFO    ] Waiting 0.03 seconds before fallback handling...
[2026-06-12 03:14:54,336.336 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 03:14:54,338.338 INFO    ] Checking for system updates...
[2026-06-12 03:14:54,360.360 INFO    ] 200
[2026-06-12 03:14:54,361.361 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:14:54,393.393 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 03:14:54,395.395 INFO    ] No update needed
[2026-06-12 03:14:54,396.396 INFO    ] Checking for camera pi updates...
[2026-06-12 03:14:54,416.416 INFO    ] 200
[2026-06-12 03:14:54,417.417 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:14:54,442.442 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 03:14:54,481.481 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 03:14:54,483.483 INFO    ] No camera update needed
[2026-06-12 03:14:54,484.484 INFO    ] Script finished. Safe exiting...
[2026-06-12 03:14:54,485.485 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 03:14:54,488.488 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 03:14:54,491.491 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 03:14:56,531.531 INFO    ] ================================================
[2026-06-12 03:14:56,546.546 INFO    ] Launching Daemon at Fri Jun 12 03:14:56 IST 2026
[2026-06-12 03:14:56,557.557 INFO    ] ================================================
[2026-06-12 03:14:56,881.881 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 03:14:56
[2026-06-12 03:14:57,194.194 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 03:14:57,327.327 INFO    ] Initializing speech engine...
[2026-06-12 03:14:57,330.330 INFO    ] 2026-06-12 03:14:57
[2026-06-12 03:14:57,559.559 INFO    ] 2026-06-12 03:14:57
[2026-06-12 03:14:57,589.589 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 03:14:57,737.737 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 03:14:57,789.789 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 03:14:57,930.930 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 03:14:57,981.981 INFO    ] time= 12/06/2026 03:14:57
[2026-06-12 03:14:58,019.019 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 03:14:58,037.037 INFO    ] Checking for existing commands in stream...
[2026-06-12 03:14:58,113.113 INFO    ] No existing commands found in stream
[2026-06-12 03:15:03,121.121 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 03:15:03,123.123 INFO    ] Waiting 1.07 seconds before fallback handling...
[2026-06-12 03:15:04,570.570 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 03:15:04,572.572 INFO    ] Checking for system updates...
[2026-06-12 03:15:04,593.593 INFO    ] 200
[2026-06-12 03:15:04,595.595 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:15:04,627.627 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 03:15:04,628.628 INFO    ] No update needed
[2026-06-12 03:15:04,630.630 INFO    ] Checking for camera pi updates...
[2026-06-12 03:15:04,649.649 INFO    ] 200
[2026-06-12 03:15:04,651.651 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:15:04,674.674 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 03:15:04,714.714 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 03:15:04,715.715 INFO    ] No camera update needed
[2026-06-12 03:15:04,716.716 INFO    ] Script finished. Safe exiting...
[2026-06-12 03:15:04,717.717 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 03:15:04,720.720 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 03:15:04,723.723 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 03:15:06,763.763 INFO    ] ================================================
[2026-06-12 03:15:06,778.778 INFO    ] Launching Daemon at Fri Jun 12 03:15:06 IST 2026
[2026-06-12 03:15:06,789.789 INFO    ] ================================================
[2026-06-12 03:15:07,161.161 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 03:15:07
[2026-06-12 03:15:07,482.482 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 03:15:07,626.626 INFO    ] Initializing speech engine...
[2026-06-12 03:15:07,631.631 INFO    ] 2026-06-12 03:15:07
[2026-06-12 03:15:07,836.836 INFO    ] 2026-06-12 03:15:07
[2026-06-12 03:15:07,865.865 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 03:15:08,051.051 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 03:15:08,054.054 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 03:15:08,188.188 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 03:15:08,239.239 INFO    ] time= 12/06/2026 03:15:08
[2026-06-12 03:15:08,281.281 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 03:15:08,287.287 INFO    ] Checking for existing commands in stream...
[2026-06-12 03:15:08,353.353 INFO    ] No existing commands found in stream
[2026-06-12 03:15:13,362.362 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 03:15:13,365.365 INFO    ] Waiting 0.80 seconds before fallback handling...
[2026-06-12 03:15:14,559.559 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 03:15:14,561.561 INFO    ] Checking for system updates...
[2026-06-12 03:15:14,582.582 INFO    ] 200
[2026-06-12 03:15:14,583.583 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:15:14,616.616 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 03:15:14,617.617 INFO    ] No update needed
[2026-06-12 03:15:14,618.618 INFO    ] Checking for camera pi updates...
[2026-06-12 03:15:14,639.639 INFO    ] 200
[2026-06-12 03:15:14,640.640 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:15:14,665.665 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 03:15:14,703.703 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 03:15:14,704.704 INFO    ] No camera update needed
[2026-06-12 03:15:14,706.706 INFO    ] Script finished. Safe exiting...
[2026-06-12 03:15:14,707.707 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 03:15:14,710.710 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 03:15:14,713.713 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 03:15:16,752.752 INFO    ] ================================================
[2026-06-12 03:15:16,767.767 INFO    ] Launching Daemon at Fri Jun 12 03:15:16 IST 2026
[2026-06-12 03:15:16,779.779 INFO    ] ================================================
[2026-06-12 03:15:17,113.113 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 03:15:17
[2026-06-12 03:15:17,425.425 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 03:15:17,567.567 INFO    ] Initializing speech engine...
[2026-06-12 03:15:17,572.572 INFO    ] 2026-06-12 03:15:17
[2026-06-12 03:15:17,775.775 INFO    ] 2026-06-12 03:15:17
[2026-06-12 03:15:17,804.804 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 03:15:17,937.937 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 03:15:17,996.996 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 03:15:18,132.132 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 03:15:18,193.193 INFO    ] time= 12/06/2026 03:15:18
[2026-06-12 03:15:18,225.225 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 03:15:18,231.231 INFO    ] Checking for existing commands in stream...
[2026-06-12 03:15:18,302.302 INFO    ] No existing commands found in stream
[2026-06-12 03:15:23,311.311 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 03:15:23,314.314 INFO    ] Waiting 2.83 seconds before fallback handling...
[2026-06-12 03:15:26,492.492 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 03:15:26,494.494 INFO    ] Checking for system updates...
[2026-06-12 03:15:26,515.515 INFO    ] 200
[2026-06-12 03:15:26,517.517 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:15:26,547.547 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 03:15:26,548.548 INFO    ] No update needed
[2026-06-12 03:15:26,550.550 INFO    ] Checking for camera pi updates...
[2026-06-12 03:15:26,570.570 INFO    ] 200
[2026-06-12 03:15:26,572.572 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:15:26,595.595 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 03:15:26,640.640 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 03:15:26,642.642 INFO    ] No camera update needed
[2026-06-12 03:15:26,643.643 INFO    ] Script finished. Safe exiting...
[2026-06-12 03:15:26,644.644 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 03:15:26,647.647 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 03:15:26,650.650 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 03:15:28,689.689 INFO    ] ================================================
[2026-06-12 03:15:28,705.705 INFO    ] Launching Daemon at Fri Jun 12 03:15:28 IST 2026
[2026-06-12 03:15:28,716.716 INFO    ] ================================================
[2026-06-12 03:15:29,074.074 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 03:15:29
[2026-06-12 03:15:29,394.394 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 03:15:29,553.553 INFO    ] Initializing speech engine...
[2026-06-12 03:15:29,558.558 INFO    ] 2026-06-12 03:15:29
[2026-06-12 03:15:29,761.761 INFO    ] 2026-06-12 03:15:29
[2026-06-12 03:15:29,789.789 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 03:15:29,912.912 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 03:15:29,974.974 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 03:15:30,124.124 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 03:15:30,195.195 INFO    ] time= 12/06/2026 03:15:30
[2026-06-12 03:15:30,222.222 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 03:15:30,228.228 INFO    ] Checking for existing commands in stream...
[2026-06-12 03:15:30,302.302 INFO    ] No existing commands found in stream
[2026-06-12 03:15:35,311.311 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 03:15:35,314.314 INFO    ] Waiting 2.69 seconds before fallback handling...
[2026-06-12 03:15:38,373.373 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 03:15:38,374.374 INFO    ] Checking for system updates...
[2026-06-12 03:15:38,395.395 INFO    ] 200
[2026-06-12 03:15:38,396.396 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:15:38,428.428 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 03:15:38,430.430 INFO    ] No update needed
[2026-06-12 03:15:38,431.431 INFO    ] Checking for camera pi updates...
[2026-06-12 03:15:38,452.452 INFO    ] 200
[2026-06-12 03:15:38,453.453 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:15:38,476.476 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 03:15:38,522.522 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 03:15:38,524.524 INFO    ] No camera update needed
[2026-06-12 03:15:38,525.525 INFO    ] Script finished. Safe exiting...
[2026-06-12 03:15:38,526.526 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 03:15:38,529.529 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 03:15:38,532.532 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 03:15:40,562.562 INFO    ] ================================================
[2026-06-12 03:15:40,571.571 INFO    ] Launching Daemon at Fri Jun 12 03:15:40 IST 2026
[2026-06-12 03:15:40,577.577 INFO    ] ================================================
[2026-06-12 03:15:40,886.886 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 03:15:40
[2026-06-12 03:15:41,200.200 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 03:15:41,331.331 INFO    ] Initializing speech engine...
[2026-06-12 03:15:41,339.339 INFO    ] 2026-06-12 03:15:41
[2026-06-12 03:15:41,552.552 INFO    ] 2026-06-12 03:15:41
[2026-06-12 03:15:41,585.585 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 03:15:41,718.718 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 03:15:41,763.763 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 03:15:41,933.933 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 03:15:41,987.987 INFO    ] time= 12/06/2026 03:15:41
[2026-06-12 03:15:42,024.024 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 03:15:42,073.073 INFO    ] Checking for existing commands in stream...
[2026-06-12 03:15:42,173.173 INFO    ] No existing commands found in stream
[2026-06-12 03:15:47,182.182 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 03:15:47,185.185 INFO    ] Waiting 2.30 seconds before fallback handling...
[2026-06-12 03:15:49,872.872 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 03:15:49,873.873 INFO    ] Checking for system updates...
[2026-06-12 03:15:49,894.894 INFO    ] 200
[2026-06-12 03:15:49,895.895 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:15:49,925.925 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 03:15:49,926.926 INFO    ] No update needed
[2026-06-12 03:15:49,928.928 INFO    ] Checking for camera pi updates...
[2026-06-12 03:15:49,951.951 INFO    ] 200
[2026-06-12 03:15:49,952.952 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:15:49,977.977 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 03:15:50,119.119 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 03:15:50,121.121 INFO    ] No camera update needed
[2026-06-12 03:15:50,122.122 INFO    ] Script finished. Safe exiting...
[2026-06-12 03:15:50,124.124 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 03:15:50,127.127 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 03:15:50,130.130 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 03:15:52,162.162 INFO    ] ================================================
[2026-06-12 03:15:52,171.171 INFO    ] Launching Daemon at Fri Jun 12 03:15:52 IST 2026
[2026-06-12 03:15:52,177.177 INFO    ] ================================================
[2026-06-12 03:15:52,528.528 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 03:15:52
[2026-06-12 03:15:52,843.843 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 03:15:52,979.979 INFO    ] Initializing speech engine...
[2026-06-12 03:15:52,990.990 INFO    ] 2026-06-12 03:15:52
[2026-06-12 03:15:53,193.193 INFO    ] 2026-06-12 03:15:53
[2026-06-12 03:15:53,222.222 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 03:15:53,404.404 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 03:15:53,414.414 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 03:15:53,552.552 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 03:15:53,608.608 INFO    ] time= 12/06/2026 03:15:53
[2026-06-12 03:15:53,632.632 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 03:15:53,638.638 INFO    ] Checking for existing commands in stream...
[2026-06-12 03:15:53,704.704 INFO    ] No existing commands found in stream
[2026-06-12 03:15:58,713.713 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 03:15:58,716.716 INFO    ] Waiting 1.21 seconds before fallback handling...
[2026-06-12 03:16:00,314.314 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 03:16:00,315.315 INFO    ] Checking for system updates...
[2026-06-12 03:16:00,337.337 INFO    ] 200
[2026-06-12 03:16:00,338.338 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:16:00,371.371 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 03:16:00,373.373 INFO    ] No update needed
[2026-06-12 03:16:00,374.374 INFO    ] Checking for camera pi updates...
[2026-06-12 03:16:00,395.395 INFO    ] 200
[2026-06-12 03:16:00,397.397 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:16:00,422.422 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 03:16:00,457.457 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 03:16:00,459.459 INFO    ] No camera update needed
[2026-06-12 03:16:00,460.460 INFO    ] Script finished. Safe exiting...
[2026-06-12 03:16:00,462.462 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 03:16:00,465.465 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 03:16:00,468.468 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 03:16:02,515.515 INFO    ] ================================================
[2026-06-12 03:16:02,524.524 INFO    ] Launching Daemon at Fri Jun 12 03:16:02 IST 2026
[2026-06-12 03:16:02,530.530 INFO    ] ================================================
[2026-06-12 03:16:02,878.878 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 03:16:02
[2026-06-12 03:16:03,238.238 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 03:16:03,391.391 INFO    ] Initializing speech engine...
[2026-06-12 03:16:03,397.397 INFO    ] 2026-06-12 03:16:03
[2026-06-12 03:16:03,605.605 INFO    ] 2026-06-12 03:16:03
[2026-06-12 03:16:03,634.634 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 03:16:03,776.776 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 03:16:03,820.820 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 03:16:03,959.959 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 03:16:04,023.023 INFO    ] time= 12/06/2026 03:16:03
[2026-06-12 03:16:04,050.050 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 03:16:04,056.056 INFO    ] Checking for existing commands in stream...
[2026-06-12 03:16:04,146.146 INFO    ] No existing commands found in stream
[2026-06-12 03:16:09,161.161 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 03:16:09,164.164 INFO    ] Waiting 2.02 seconds before fallback handling...
[2026-06-12 03:16:11,592.592 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 03:16:11,594.594 INFO    ] Checking for system updates...
[2026-06-12 03:16:11,616.616 INFO    ] 200
[2026-06-12 03:16:11,618.618 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:16:11,654.654 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 03:16:11,655.655 INFO    ] No update needed
[2026-06-12 03:16:11,657.657 INFO    ] Checking for camera pi updates...
[2026-06-12 03:16:11,679.679 INFO    ] 200
[2026-06-12 03:16:11,680.680 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:16:11,704.704 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 03:16:11,732.732 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 03:16:11,733.733 INFO    ] No camera update needed
[2026-06-12 03:16:11,735.735 INFO    ] Script finished. Safe exiting...
[2026-06-12 03:16:11,736.736 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 03:16:11,739.739 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 03:16:11,742.742 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 03:16:13,781.781 INFO    ] ================================================
[2026-06-12 03:16:13,796.796 INFO    ] Launching Daemon at Fri Jun 12 03:16:13 IST 2026
[2026-06-12 03:16:13,807.807 INFO    ] ================================================
[2026-06-12 03:16:14,183.183 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 03:16:14
[2026-06-12 03:16:14,542.542 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 03:16:14,699.699 INFO    ] Initializing speech engine...
[2026-06-12 03:16:14,705.705 INFO    ] 2026-06-12 03:16:14
[2026-06-12 03:16:14,904.904 INFO    ] 2026-06-12 03:16:14
[2026-06-12 03:16:14,941.941 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 03:16:15,091.091 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 03:16:15,149.149 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 03:16:15,316.316 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 03:16:15,381.381 INFO    ] time= 12/06/2026 03:16:15
[2026-06-12 03:16:15,421.421 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 03:16:15,443.443 INFO    ] Checking for existing commands in stream...
[2026-06-12 03:16:15,540.540 INFO    ] No existing commands found in stream
[2026-06-12 03:16:20,565.565 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 03:16:20,568.568 INFO    ] Waiting 0.98 seconds before fallback handling...
[2026-06-12 03:16:21,932.932 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 03:16:21,934.934 INFO    ] Checking for system updates...
[2026-06-12 03:16:21,957.957 INFO    ] 200
[2026-06-12 03:16:21,958.958 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:16:21,991.991 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 03:16:21,992.992 INFO    ] No update needed
[2026-06-12 03:16:21,993.993 INFO    ] Checking for camera pi updates...
[2026-06-12 03:16:22,013.013 INFO    ] 200
[2026-06-12 03:16:22,014.014 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:16:22,037.037 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 03:16:22,074.074 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 03:16:22,075.075 INFO    ] No camera update needed
[2026-06-12 03:16:22,076.076 INFO    ] Script finished. Safe exiting...
[2026-06-12 03:16:22,078.078 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 03:16:22,081.081 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 03:16:22,083.083 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 03:16:24,121.121 INFO    ] ================================================
[2026-06-12 03:16:24,137.137 INFO    ] Launching Daemon at Fri Jun 12 03:16:24 IST 2026
[2026-06-12 03:16:24,148.148 INFO    ] ================================================
[2026-06-12 03:16:24,512.512 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 03:16:24
[2026-06-12 03:16:24,824.824 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 03:16:24,955.955 INFO    ] Initializing speech engine...
[2026-06-12 03:16:24,963.963 INFO    ] 2026-06-12 03:16:24
[2026-06-12 03:16:25,190.190 INFO    ] 2026-06-12 03:16:25
[2026-06-12 03:16:25,219.219 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 03:16:25,400.400 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 03:16:25,410.410 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 03:16:25,624.624 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 03:16:25,653.653 INFO    ] time= 12/06/2026 03:16:25
[2026-06-12 03:16:25,655.655 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 03:16:25,656.656 INFO    ] Checking for existing commands in stream...
[2026-06-12 03:16:25,723.723 INFO    ] No existing commands found in stream
[2026-06-12 03:16:30,757.757 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 03:16:30,760.760 INFO    ] Waiting 2.67 seconds before fallback handling...
[2026-06-12 03:16:33,831.831 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 03:16:33,832.832 INFO    ] Checking for system updates...
[2026-06-12 03:16:33,853.853 INFO    ] 200
[2026-06-12 03:16:33,854.854 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:16:33,885.885 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 03:16:33,886.886 INFO    ] No update needed
[2026-06-12 03:16:33,887.887 INFO    ] Checking for camera pi updates...
[2026-06-12 03:16:33,909.909 INFO    ] 200
[2026-06-12 03:16:33,910.910 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:16:33,934.934 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 03:16:33,975.975 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 03:16:33,977.977 INFO    ] No camera update needed
[2026-06-12 03:16:33,978.978 INFO    ] Script finished. Safe exiting...
[2026-06-12 03:16:33,979.979 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 03:16:33,982.982 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 03:16:33,985.985 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 03:16:36,022.022 INFO    ] ================================================
[2026-06-12 03:16:36,038.038 INFO    ] Launching Daemon at Fri Jun 12 03:16:36 IST 2026
[2026-06-12 03:16:36,048.048 INFO    ] ================================================
[2026-06-12 03:16:36,424.424 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 03:16:36
[2026-06-12 03:16:36,736.736 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 03:16:36,890.890 INFO    ] Initializing speech engine...
[2026-06-12 03:16:36,897.897 INFO    ] 2026-06-12 03:16:36
[2026-06-12 03:16:37,100.100 INFO    ] 2026-06-12 03:16:37
[2026-06-12 03:16:37,144.144 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 03:16:37,325.325 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 03:16:37,336.336 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 03:16:37,528.528 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 03:16:37,551.551 INFO    ] time= 12/06/2026 03:16:37
[2026-06-12 03:16:37,557.557 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 03:16:37,559.559 INFO    ] Checking for existing commands in stream...
[2026-06-12 03:16:37,625.625 INFO    ] No existing commands found in stream
[2026-06-12 03:16:42,634.634 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 03:16:42,637.637 INFO    ] Waiting 2.87 seconds before fallback handling...
[2026-06-12 03:16:45,833.833 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 03:16:45,835.835 INFO    ] Checking for system updates...
[2026-06-12 03:16:45,857.857 INFO    ] 200
[2026-06-12 03:16:45,858.858 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:16:45,888.888 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 03:16:45,889.889 INFO    ] No update needed
[2026-06-12 03:16:45,891.891 INFO    ] Checking for camera pi updates...
[2026-06-12 03:16:45,911.911 INFO    ] 200
[2026-06-12 03:16:45,912.912 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:16:45,935.935 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 03:16:45,970.970 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 03:16:45,972.972 INFO    ] No camera update needed
[2026-06-12 03:16:45,973.973 INFO    ] Script finished. Safe exiting...
[2026-06-12 03:16:45,974.974 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 03:16:45,977.977 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 03:16:45,980.980 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 03:16:48,020.020 INFO    ] ================================================
[2026-06-12 03:16:48,035.035 INFO    ] Launching Daemon at Fri Jun 12 03:16:48 IST 2026
[2026-06-12 03:16:48,047.047 INFO    ] ================================================
[2026-06-12 03:16:48,421.421 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 03:16:48
[2026-06-12 03:16:48,739.739 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 03:16:48,873.873 INFO    ] Initializing speech engine...
[2026-06-12 03:16:48,877.877 INFO    ] 2026-06-12 03:16:48
[2026-06-12 03:16:49,107.107 INFO    ] 2026-06-12 03:16:49
[2026-06-12 03:16:49,137.137 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 03:16:49,272.272 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 03:16:49,330.330 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 03:16:49,484.484 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 03:16:49,531.531 INFO    ] time= 12/06/2026 03:16:49
[2026-06-12 03:16:49,583.583 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 03:16:49,590.590 INFO    ] Checking for existing commands in stream...
[2026-06-12 03:16:49,666.666 INFO    ] No existing commands found in stream
[2026-06-12 03:16:54,675.675 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 03:16:54,678.678 INFO    ] Waiting 0.51 seconds before fallback handling...
[2026-06-12 03:16:55,570.570 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 03:16:55,571.571 INFO    ] Checking for system updates...
[2026-06-12 03:16:55,594.594 INFO    ] 200
[2026-06-12 03:16:55,595.595 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:16:55,628.628 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 03:16:55,629.629 INFO    ] No update needed
[2026-06-12 03:16:55,631.631 INFO    ] Checking for camera pi updates...
[2026-06-12 03:16:55,652.652 INFO    ] 200
[2026-06-12 03:16:55,653.653 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:16:55,676.676 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 03:16:55,716.716 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 03:16:55,718.718 INFO    ] No camera update needed
[2026-06-12 03:16:55,719.719 INFO    ] Script finished. Safe exiting...
[2026-06-12 03:16:55,720.720 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 03:16:55,723.723 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 03:16:55,726.726 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 03:16:57,765.765 INFO    ] ================================================
[2026-06-12 03:16:57,781.781 INFO    ] Launching Daemon at Fri Jun 12 03:16:57 IST 2026
[2026-06-12 03:16:57,792.792 INFO    ] ================================================
[2026-06-12 03:16:58,131.131 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 03:16:58
[2026-06-12 03:16:58,445.445 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 03:16:58,585.585 INFO    ] Initializing speech engine...
[2026-06-12 03:16:58,594.594 INFO    ] 2026-06-12 03:16:58
[2026-06-12 03:16:58,813.813 INFO    ] 2026-06-12 03:16:58
[2026-06-12 03:16:58,844.844 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 03:16:59,007.007 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 03:16:59,045.045 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 03:16:59,191.191 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 03:16:59,239.239 INFO    ] time= 12/06/2026 03:16:59
[2026-06-12 03:16:59,280.280 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 03:16:59,305.305 INFO    ] Checking for existing commands in stream...
[2026-06-12 03:16:59,383.383 INFO    ] No existing commands found in stream
[2026-06-12 03:17:04,392.392 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 03:17:04,395.395 INFO    ] Waiting 0.45 seconds before fallback handling...
[2026-06-12 03:17:05,233.233 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 03:17:05,235.235 INFO    ] Checking for system updates...
[2026-06-12 03:17:05,255.255 INFO    ] 200
[2026-06-12 03:17:05,256.256 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:17:05,289.289 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 03:17:05,290.290 INFO    ] No update needed
[2026-06-12 03:17:05,291.291 INFO    ] Checking for camera pi updates...
[2026-06-12 03:17:05,311.311 INFO    ] 200
[2026-06-12 03:17:05,312.312 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:17:05,339.339 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 03:17:05,375.375 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 03:17:05,377.377 INFO    ] No camera update needed
[2026-06-12 03:17:05,378.378 INFO    ] Script finished. Safe exiting...
[2026-06-12 03:17:05,379.379 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 03:17:05,382.382 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 03:17:05,385.385 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 03:17:07,425.425 INFO    ] ================================================
[2026-06-12 03:17:07,445.445 INFO    ] Launching Daemon at Fri Jun 12 03:17:07 IST 2026
[2026-06-12 03:17:07,456.456 INFO    ] ================================================
[2026-06-12 03:17:07,803.803 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 03:17:07
[2026-06-12 03:17:08,121.121 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 03:17:08,258.258 INFO    ] Initializing speech engine...
[2026-06-12 03:17:08,272.272 INFO    ] 2026-06-12 03:17:08
[2026-06-12 03:17:08,491.491 INFO    ] 2026-06-12 03:17:08
[2026-06-12 03:17:08,522.522 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 03:17:08,660.660 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 03:17:08,723.723 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 03:17:08,870.870 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 03:17:08,927.927 INFO    ] time= 12/06/2026 03:17:08
[2026-06-12 03:17:08,968.968 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 03:17:08,974.974 INFO    ] Checking for existing commands in stream...
[2026-06-12 03:17:09,077.077 INFO    ] No existing commands found in stream
[2026-06-12 03:17:14,086.086 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 03:17:14,089.089 INFO    ] Waiting 1.65 seconds before fallback handling...
[2026-06-12 03:17:16,132.132 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 03:17:16,133.133 INFO    ] Checking for system updates...
[2026-06-12 03:17:16,155.155 INFO    ] 200
[2026-06-12 03:17:16,156.156 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:17:16,187.187 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 03:17:16,189.189 INFO    ] No update needed
[2026-06-12 03:17:16,190.190 INFO    ] Checking for camera pi updates...
[2026-06-12 03:17:16,210.210 INFO    ] 200
[2026-06-12 03:17:16,211.211 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:17:16,235.235 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 03:17:16,262.262 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 03:17:16,263.263 INFO    ] No camera update needed
[2026-06-12 03:17:16,265.265 INFO    ] Script finished. Safe exiting...
[2026-06-12 03:17:16,266.266 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 03:17:16,269.269 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 03:17:16,272.272 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 03:17:18,315.315 INFO    ] ================================================
[2026-06-12 03:17:18,330.330 INFO    ] Launching Daemon at Fri Jun 12 03:17:18 IST 2026
[2026-06-12 03:17:18,341.341 INFO    ] ================================================
[2026-06-12 03:17:18,665.665 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 03:17:18
[2026-06-12 03:17:18,976.976 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 03:17:19,119.119 INFO    ] Initializing speech engine...
[2026-06-12 03:17:19,125.125 INFO    ] 2026-06-12 03:17:19
[2026-06-12 03:17:19,330.330 INFO    ] 2026-06-12 03:17:19
[2026-06-12 03:17:19,360.360 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 03:17:19,546.546 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 03:17:19,556.556 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 03:17:19,684.684 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 03:17:19,746.746 INFO    ] time= 12/06/2026 03:17:19
[2026-06-12 03:17:19,779.779 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 03:17:19,781.781 INFO    ] Checking for existing commands in stream...
[2026-06-12 03:17:19,852.852 INFO    ] No existing commands found in stream
[2026-06-12 03:17:24,861.861 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 03:17:24,863.863 INFO    ] Waiting 1.39 seconds before fallback handling...
[2026-06-12 03:17:26,609.609 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 03:17:26,611.611 INFO    ] Checking for system updates...
[2026-06-12 03:17:26,633.633 INFO    ] 200
[2026-06-12 03:17:26,635.635 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:17:26,667.667 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 03:17:26,668.668 INFO    ] No update needed
[2026-06-12 03:17:26,669.669 INFO    ] Checking for camera pi updates...
[2026-06-12 03:17:26,689.689 INFO    ] 200
[2026-06-12 03:17:26,691.691 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:17:26,714.714 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 03:17:26,755.755 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 03:17:26,756.756 INFO    ] No camera update needed
[2026-06-12 03:17:26,758.758 INFO    ] Script finished. Safe exiting...
[2026-06-12 03:17:26,759.759 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 03:17:26,762.762 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 03:17:26,765.765 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 03:17:28,804.804 INFO    ] ================================================
[2026-06-12 03:17:28,819.819 INFO    ] Launching Daemon at Fri Jun 12 03:17:28 IST 2026
[2026-06-12 03:17:28,831.831 INFO    ] ================================================
[2026-06-12 03:17:29,165.165 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 03:17:29
[2026-06-12 03:17:29,483.483 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 03:17:29,626.626 INFO    ] Initializing speech engine...
[2026-06-12 03:17:29,636.636 INFO    ] 2026-06-12 03:17:29
[2026-06-12 03:17:29,855.855 INFO    ] 2026-06-12 03:17:29
[2026-06-12 03:17:29,886.886 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 03:17:30,085.085 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 03:17:30,089.089 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 03:17:30,234.234 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 03:17:30,301.301 INFO    ] time= 12/06/2026 03:17:30
[2026-06-12 03:17:30,314.314 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 03:17:30,337.337 INFO    ] Checking for existing commands in stream...
[2026-06-12 03:17:30,441.441 INFO    ] No existing commands found in stream
[2026-06-12 03:17:35,449.449 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 03:17:35,451.451 INFO    ] Waiting 3.66 seconds before fallback handling...
[2026-06-12 03:17:39,449.449 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 03:17:39,450.450 INFO    ] Checking for system updates...
[2026-06-12 03:17:39,472.472 INFO    ] 200
[2026-06-12 03:17:39,474.474 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:17:39,506.506 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 03:17:39,508.508 INFO    ] No update needed
[2026-06-12 03:17:39,509.509 INFO    ] Checking for camera pi updates...
[2026-06-12 03:17:39,529.529 INFO    ] 200
[2026-06-12 03:17:39,530.530 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:17:39,556.556 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 03:17:39,583.583 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 03:17:39,585.585 INFO    ] No camera update needed
[2026-06-12 03:17:39,586.586 INFO    ] Script finished. Safe exiting...
[2026-06-12 03:17:39,587.587 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 03:17:39,590.590 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 03:17:39,593.593 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 03:17:41,632.632 INFO    ] ================================================
[2026-06-12 03:17:41,647.647 INFO    ] Launching Daemon at Fri Jun 12 03:17:41 IST 2026
[2026-06-12 03:17:41,657.657 INFO    ] ================================================
[2026-06-12 03:17:41,984.984 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 03:17:41
[2026-06-12 03:17:42,302.302 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 03:17:42,433.433 INFO    ] Initializing speech engine...
[2026-06-12 03:17:42,438.438 INFO    ] 2026-06-12 03:17:42
[2026-06-12 03:17:42,657.657 INFO    ] 2026-06-12 03:17:42
[2026-06-12 03:17:42,685.685 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 03:17:42,871.871 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 03:17:42,880.880 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 03:17:43,012.012 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 03:17:43,071.071 INFO    ] time= 12/06/2026 03:17:43
[2026-06-12 03:17:43,104.104 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 03:17:43,106.106 INFO    ] Checking for existing commands in stream...
[2026-06-12 03:17:43,178.178 INFO    ] No existing commands found in stream
[2026-06-12 03:17:48,187.187 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 03:17:48,190.190 INFO    ] Waiting 0.25 seconds before fallback handling...
[2026-06-12 03:17:48,791.791 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 03:17:48,793.793 INFO    ] Checking for system updates...
[2026-06-12 03:17:48,813.813 INFO    ] 200
[2026-06-12 03:17:48,814.814 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:17:48,847.847 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 03:17:48,848.848 INFO    ] No update needed
[2026-06-12 03:17:48,849.849 INFO    ] Checking for camera pi updates...
[2026-06-12 03:17:48,870.870 INFO    ] 200
[2026-06-12 03:17:48,872.872 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:17:48,896.896 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 03:17:48,921.921 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 03:17:48,922.922 INFO    ] No camera update needed
[2026-06-12 03:17:48,924.924 INFO    ] Script finished. Safe exiting...
[2026-06-12 03:17:48,925.925 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 03:17:48,928.928 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 03:17:48,931.931 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 03:17:50,971.971 INFO    ] ================================================
[2026-06-12 03:17:50,986.986 INFO    ] Launching Daemon at Fri Jun 12 03:17:50 IST 2026
[2026-06-12 03:17:51,997.997 INFO    ] ================================================
[2026-06-12 03:17:51,349.349 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 03:17:51
[2026-06-12 03:17:51,686.686 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 03:17:51,838.838 INFO    ] Initializing speech engine...
[2026-06-12 03:17:51,843.843 INFO    ] 2026-06-12 03:17:51
[2026-06-12 03:17:52,051.051 INFO    ] 2026-06-12 03:17:52
[2026-06-12 03:17:52,080.080 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 03:17:52,212.212 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 03:17:52,271.271 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 03:17:52,412.412 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 03:17:52,482.482 INFO    ] time= 12/06/2026 03:17:52
[2026-06-12 03:17:52,513.513 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 03:17:52,545.545 INFO    ] Checking for existing commands in stream...
[2026-06-12 03:17:52,630.630 INFO    ] No existing commands found in stream
[2026-06-12 03:17:57,640.640 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 03:17:57,643.643 INFO    ] Waiting 1.81 seconds before fallback handling...
[2026-06-12 03:17:59,821.821 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 03:17:59,823.823 INFO    ] Checking for system updates...
[2026-06-12 03:17:59,844.844 INFO    ] 200
[2026-06-12 03:17:59,845.845 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:17:59,876.876 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 03:17:59,878.878 INFO    ] No update needed
[2026-06-12 03:17:59,879.879 INFO    ] Checking for camera pi updates...
[2026-06-12 03:17:59,899.899 INFO    ] 200
[2026-06-12 03:17:59,900.900 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:17:59,924.924 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 03:18:00,065.065 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 03:18:00,067.067 INFO    ] No camera update needed
[2026-06-12 03:18:00,068.068 INFO    ] Script finished. Safe exiting...
[2026-06-12 03:18:00,070.070 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 03:18:00,073.073 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 03:18:00,076.076 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 03:18:02,122.122 INFO    ] ================================================
[2026-06-12 03:18:02,141.141 INFO    ] Launching Daemon at Fri Jun 12 03:18:02 IST 2026
[2026-06-12 03:18:02,154.154 INFO    ] ================================================
[2026-06-12 03:18:02,554.554 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 03:18:02
[2026-06-12 03:18:02,947.947 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 03:18:03,095.095 INFO    ] Initializing speech engine...
[2026-06-12 03:18:03,108.108 INFO    ] 2026-06-12 03:18:03
[2026-06-12 03:18:03,315.315 INFO    ] 2026-06-12 03:18:03
[2026-06-12 03:18:03,344.344 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 03:18:03,467.467 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 03:18:03,530.530 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 03:18:03,668.668 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 03:18:03,735.735 INFO    ] time= 12/06/2026 03:18:03
[2026-06-12 03:18:03,759.759 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 03:18:03,761.761 INFO    ] Checking for existing commands in stream...
[2026-06-12 03:18:03,833.833 INFO    ] No existing commands found in stream
[2026-06-12 03:18:08,852.852 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 03:18:08,855.855 INFO    ] Waiting 1.91 seconds before fallback handling...
[2026-06-12 03:18:11,148.148 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 03:18:11,149.149 INFO    ] Checking for system updates...
[2026-06-12 03:18:11,171.171 INFO    ] 200
[2026-06-12 03:18:11,173.173 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:18:11,203.203 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 03:18:11,205.205 INFO    ] No update needed
[2026-06-12 03:18:11,206.206 INFO    ] Checking for camera pi updates...
[2026-06-12 03:18:11,228.228 INFO    ] 200
[2026-06-12 03:18:11,229.229 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:18:11,255.255 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 03:18:11,280.280 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 03:18:11,281.281 INFO    ] No camera update needed
[2026-06-12 03:18:11,283.283 INFO    ] Script finished. Safe exiting...
[2026-06-12 03:18:11,284.284 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 03:18:11,287.287 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 03:18:11,290.290 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 03:18:13,330.330 INFO    ] ================================================
[2026-06-12 03:18:13,345.345 INFO    ] Launching Daemon at Fri Jun 12 03:18:13 IST 2026
[2026-06-12 03:18:13,356.356 INFO    ] ================================================
[2026-06-12 03:18:13,738.738 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 03:18:13
[2026-06-12 03:18:14,071.071 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 03:18:14,212.212 INFO    ] Initializing speech engine...
[2026-06-12 03:18:14,224.224 INFO    ] 2026-06-12 03:18:14
[2026-06-12 03:18:14,438.438 INFO    ] 2026-06-12 03:18:14
[2026-06-12 03:18:14,466.466 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 03:18:14,607.607 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 03:18:14,656.656 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 03:18:14,797.797 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 03:18:14,860.860 INFO    ] time= 12/06/2026 03:18:14
[2026-06-12 03:18:14,891.891 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 03:18:14,896.896 INFO    ] Checking for existing commands in stream...
[2026-06-12 03:18:14,989.989 INFO    ] No existing commands found in stream
[2026-06-12 03:18:20,008.008 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 03:18:20,016.016 INFO    ] Waiting 2.16 seconds before fallback handling...
[2026-06-12 03:18:22,508.508 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 03:18:22,509.509 INFO    ] Checking for system updates...
[2026-06-12 03:18:22,531.531 INFO    ] 200
[2026-06-12 03:18:22,532.532 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:18:22,565.565 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 03:18:22,566.566 INFO    ] No update needed
[2026-06-12 03:18:22,567.567 INFO    ] Checking for camera pi updates...
[2026-06-12 03:18:22,588.588 INFO    ] 200
[2026-06-12 03:18:22,590.590 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:18:22,613.613 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 03:18:22,634.634 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 03:18:22,636.636 INFO    ] No camera update needed
[2026-06-12 03:18:22,637.637 INFO    ] Script finished. Safe exiting...
[2026-06-12 03:18:22,638.638 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 03:18:22,641.641 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 03:18:22,644.644 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 03:18:24,683.683 INFO    ] ================================================
[2026-06-12 03:18:24,698.698 INFO    ] Launching Daemon at Fri Jun 12 03:18:24 IST 2026
[2026-06-12 03:18:24,709.709 INFO    ] ================================================
[2026-06-12 03:18:25,033.033 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 03:18:25
[2026-06-12 03:18:25,344.344 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 03:18:25,487.487 INFO    ] Initializing speech engine...
[2026-06-12 03:18:25,492.492 INFO    ] 2026-06-12 03:18:25
[2026-06-12 03:18:25,704.704 INFO    ] 2026-06-12 03:18:25
[2026-06-12 03:18:25,734.734 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 03:18:25,868.868 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 03:18:25,921.921 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 03:18:26,060.060 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 03:18:26,127.127 INFO    ] time= 12/06/2026 03:18:26
[2026-06-12 03:18:26,152.152 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 03:18:26,158.158 INFO    ] Checking for existing commands in stream...
[2026-06-12 03:18:26,225.225 INFO    ] No existing commands found in stream
[2026-06-12 03:18:31,235.235 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 03:18:31,238.238 INFO    ] Waiting 1.24 seconds before fallback handling...
[2026-06-12 03:18:32,843.843 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 03:18:32,845.845 INFO    ] Checking for system updates...
[2026-06-12 03:18:32,882.882 INFO    ] 200
[2026-06-12 03:18:32,884.884 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:18:32,929.929 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 03:18:32,931.931 INFO    ] No update needed
[2026-06-12 03:18:32,932.932 INFO    ] Checking for camera pi updates...
[2026-06-12 03:18:32,951.951 INFO    ] 200
[2026-06-12 03:18:32,952.952 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:18:32,978.978 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 03:18:33,016.016 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 03:18:33,017.017 INFO    ] No camera update needed
[2026-06-12 03:18:33,018.018 INFO    ] Script finished. Safe exiting...
[2026-06-12 03:18:33,019.019 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 03:18:33,022.022 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 03:18:33,025.025 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 03:18:35,063.063 INFO    ] ================================================
[2026-06-12 03:18:35,079.079 INFO    ] Launching Daemon at Fri Jun 12 03:18:35 IST 2026
[2026-06-12 03:18:35,089.089 INFO    ] ================================================
[2026-06-12 03:18:35,437.437 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 03:18:35
[2026-06-12 03:18:35,750.750 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 03:18:35,880.880 INFO    ] Initializing speech engine...
[2026-06-12 03:18:35,883.883 INFO    ] 2026-06-12 03:18:35
[2026-06-12 03:18:36,101.101 INFO    ] 2026-06-12 03:18:36
[2026-06-12 03:18:36,128.128 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 03:18:36,311.311 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 03:18:36,320.320 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 03:18:36,450.450 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 03:18:36,514.514 INFO    ] time= 12/06/2026 03:18:36
[2026-06-12 03:18:36,541.541 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 03:18:36,547.547 INFO    ] Checking for existing commands in stream...
[2026-06-12 03:18:36,614.614 INFO    ] No existing commands found in stream
[2026-06-12 03:18:41,623.623 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 03:18:41,625.625 INFO    ] Waiting 0.05 seconds before fallback handling...
[2026-06-12 03:18:42,021.021 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 03:18:42,022.022 INFO    ] Checking for system updates...
[2026-06-12 03:18:42,043.043 INFO    ] 200
[2026-06-12 03:18:42,044.044 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:18:42,077.077 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 03:18:42,079.079 INFO    ] No update needed
[2026-06-12 03:18:42,081.081 INFO    ] Checking for camera pi updates...
[2026-06-12 03:18:42,100.100 INFO    ] 200
[2026-06-12 03:18:42,101.101 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:18:42,129.129 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 03:18:42,173.173 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 03:18:42,174.174 INFO    ] No camera update needed
[2026-06-12 03:18:42,176.176 INFO    ] Script finished. Safe exiting...
[2026-06-12 03:18:42,177.177 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 03:18:42,180.180 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 03:18:42,183.183 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 03:18:44,215.215 INFO    ] ================================================
[2026-06-12 03:18:44,230.230 INFO    ] Launching Daemon at Fri Jun 12 03:18:44 IST 2026
[2026-06-12 03:18:44,245.245 INFO    ] ================================================
[2026-06-12 03:18:44,589.589 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 03:18:44
[2026-06-12 03:18:44,918.918 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 03:18:45,062.062 INFO    ] Initializing speech engine...
[2026-06-12 03:18:45,072.072 INFO    ] 2026-06-12 03:18:45
[2026-06-12 03:18:45,281.281 INFO    ] 2026-06-12 03:18:45
[2026-06-12 03:18:45,310.310 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 03:18:45,470.470 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 03:18:45,499.499 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 03:18:45,649.649 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 03:18:45,711.711 INFO    ] time= 12/06/2026 03:18:45
[2026-06-12 03:18:45,732.732 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 03:18:45,739.739 INFO    ] Checking for existing commands in stream...
[2026-06-12 03:18:45,806.806 INFO    ] No existing commands found in stream
[2026-06-12 03:18:50,815.815 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 03:18:50,818.818 INFO    ] Waiting 2.57 seconds before fallback handling...
[2026-06-12 03:18:53,723.723 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 03:18:53,724.724 INFO    ] Checking for system updates...
[2026-06-12 03:18:53,754.754 INFO    ] 200
[2026-06-12 03:18:53,756.756 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:18:53,794.794 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 03:18:53,795.795 INFO    ] No update needed
[2026-06-12 03:18:53,797.797 INFO    ] Checking for camera pi updates...
[2026-06-12 03:18:53,820.820 INFO    ] 200
[2026-06-12 03:18:53,822.822 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:18:53,846.846 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 03:18:53,890.890 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 03:18:53,891.891 INFO    ] No camera update needed
[2026-06-12 03:18:53,893.893 INFO    ] Script finished. Safe exiting...
[2026-06-12 03:18:53,894.894 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 03:18:53,897.897 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 03:18:53,900.900 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 03:18:55,932.932 INFO    ] ================================================
[2026-06-12 03:18:55,947.947 INFO    ] Launching Daemon at Fri Jun 12 03:18:55 IST 2026
[2026-06-12 03:18:55,957.957 INFO    ] ================================================
[2026-06-12 03:18:56,291.291 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 03:18:56
[2026-06-12 03:18:56,603.603 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 03:18:56,735.735 INFO    ] Initializing speech engine...
[2026-06-12 03:18:56,749.749 INFO    ] 2026-06-12 03:18:56
[2026-06-12 03:18:56,956.956 INFO    ] 2026-06-12 03:18:56
[2026-06-12 03:18:56,985.985 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 03:18:57,109.109 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 03:18:57,172.172 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 03:18:57,313.313 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 03:18:57,380.380 INFO    ] time= 12/06/2026 03:18:57
[2026-06-12 03:18:57,405.405 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 03:18:57,411.411 INFO    ] Checking for existing commands in stream...
[2026-06-12 03:18:57,502.502 INFO    ] No existing commands found in stream
[2026-06-12 03:19:02,511.511 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 03:19:02,513.513 INFO    ] Waiting 3.89 seconds before fallback handling...
[2026-06-12 03:19:06,788.788 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 03:19:06,789.789 INFO    ] Checking for system updates...
[2026-06-12 03:19:06,810.810 INFO    ] 200
[2026-06-12 03:19:06,811.811 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:19:06,844.844 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 03:19:06,845.845 INFO    ] No update needed
[2026-06-12 03:19:06,846.846 INFO    ] Checking for camera pi updates...
[2026-06-12 03:19:06,866.866 INFO    ] 200
[2026-06-12 03:19:06,867.867 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:19:06,891.891 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 03:19:06,929.929 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 03:19:06,930.930 INFO    ] No camera update needed
[2026-06-12 03:19:06,931.931 INFO    ] Script finished. Safe exiting...
[2026-06-12 03:19:06,933.933 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 03:19:06,936.936 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 03:19:06,938.938 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 03:19:08,979.979 INFO    ] ================================================
[2026-06-12 03:19:08,995.995 INFO    ] Launching Daemon at Fri Jun 12 03:19:08 IST 2026
[2026-06-12 03:19:09,005.005 INFO    ] ================================================
[2026-06-12 03:19:09,394.394 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 03:19:09
[2026-06-12 03:19:09,724.724 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 03:19:09,871.871 INFO    ] Initializing speech engine...
[2026-06-12 03:19:09,876.876 INFO    ] 2026-06-12 03:19:09
[2026-06-12 03:19:10,082.082 INFO    ] 2026-06-12 03:19:10
[2026-06-12 03:19:10,112.112 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 03:19:10,298.298 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 03:19:10,308.308 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 03:19:10,452.452 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 03:19:10,505.505 INFO    ] time= 12/06/2026 03:19:10
[2026-06-12 03:19:10,527.527 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 03:19:10,534.534 INFO    ] Checking for existing commands in stream...
[2026-06-12 03:19:10,600.600 INFO    ] No existing commands found in stream
[2026-06-12 03:19:15,608.608 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 03:19:15,610.610 INFO    ] Waiting 2.85 seconds before fallback handling...
[2026-06-12 03:19:18,803.803 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 03:19:18,805.805 INFO    ] Checking for system updates...
[2026-06-12 03:19:18,826.826 INFO    ] 200
[2026-06-12 03:19:18,828.828 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:19:18,859.859 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 03:19:18,861.861 INFO    ] No update needed
[2026-06-12 03:19:18,862.862 INFO    ] Checking for camera pi updates...
[2026-06-12 03:19:18,882.882 INFO    ] 200
[2026-06-12 03:19:18,883.883 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:19:18,907.907 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 03:19:18,930.930 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 03:19:18,932.932 INFO    ] No camera update needed
[2026-06-12 03:19:18,933.933 INFO    ] Script finished. Safe exiting...
[2026-06-12 03:19:18,934.934 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 03:19:18,937.937 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 03:19:18,940.940 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 03:19:20,979.979 INFO    ] ================================================
[2026-06-12 03:19:20,994.994 INFO    ] Launching Daemon at Fri Jun 12 03:19:20 IST 2026
[2026-06-12 03:19:21,004.004 INFO    ] ================================================
[2026-06-12 03:19:21,363.363 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 03:19:21
[2026-06-12 03:19:21,678.678 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 03:19:21,821.821 INFO    ] Initializing speech engine...
[2026-06-12 03:19:21,827.827 INFO    ] 2026-06-12 03:19:21
[2026-06-12 03:19:22,031.031 INFO    ] 2026-06-12 03:19:22
[2026-06-12 03:19:22,059.059 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 03:19:22,242.242 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 03:19:22,245.245 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 03:19:22,381.381 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 03:19:22,445.445 INFO    ] time= 12/06/2026 03:19:22
[2026-06-12 03:19:22,471.471 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 03:19:22,477.477 INFO    ] Checking for existing commands in stream...
[2026-06-12 03:19:22,544.544 INFO    ] No existing commands found in stream
[2026-06-12 03:19:27,561.561 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 03:19:27,563.563 INFO    ] Waiting 3.81 seconds before fallback handling...
[2026-06-12 03:19:31,687.687 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 03:19:31,689.689 INFO    ] Checking for system updates...
[2026-06-12 03:19:31,713.713 INFO    ] 200
[2026-06-12 03:19:31,714.714 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:19:31,749.749 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 03:19:31,750.750 INFO    ] No update needed
[2026-06-12 03:19:31,752.752 INFO    ] Checking for camera pi updates...
[2026-06-12 03:19:31,776.776 INFO    ] 200
[2026-06-12 03:19:31,777.777 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:19:31,804.804 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 03:19:31,833.833 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 03:19:31,834.834 INFO    ] No camera update needed
[2026-06-12 03:19:31,836.836 INFO    ] Script finished. Safe exiting...
[2026-06-12 03:19:31,837.837 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 03:19:31,841.841 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 03:19:31,844.844 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 03:19:33,885.885 INFO    ] ================================================
[2026-06-12 03:19:33,901.901 INFO    ] Launching Daemon at Fri Jun 12 03:19:33 IST 2026
[2026-06-12 03:19:33,912.912 INFO    ] ================================================
[2026-06-12 03:19:34,283.283 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 03:19:34
[2026-06-12 03:19:34,598.598 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 03:19:34,741.741 INFO    ] Initializing speech engine...
[2026-06-12 03:19:34,746.746 INFO    ] 2026-06-12 03:19:34
[2026-06-12 03:19:34,950.950 INFO    ] 2026-06-12 03:19:34
[2026-06-12 03:19:34,979.979 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 03:19:35,162.162 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 03:19:35,171.171 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 03:19:35,296.296 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 03:19:35,353.353 INFO    ] time= 12/06/2026 03:19:35
[2026-06-12 03:19:35,387.387 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 03:19:35,392.392 INFO    ] Checking for existing commands in stream...
[2026-06-12 03:19:35,486.486 INFO    ] No existing commands found in stream
[2026-06-12 03:19:40,495.495 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 03:19:40,497.497 INFO    ] Waiting 1.81 seconds before fallback handling...
[2026-06-12 03:19:42,677.677 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 03:19:42,678.678 INFO    ] Checking for system updates...
[2026-06-12 03:19:42,700.700 INFO    ] 200
[2026-06-12 03:19:42,702.702 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:19:42,733.733 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 03:19:42,734.734 INFO    ] No update needed
[2026-06-12 03:19:42,736.736 INFO    ] Checking for camera pi updates...
[2026-06-12 03:19:42,756.756 INFO    ] 200
[2026-06-12 03:19:42,757.757 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:19:42,781.781 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 03:19:42,802.802 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 03:19:42,803.803 INFO    ] No camera update needed
[2026-06-12 03:19:42,805.805 INFO    ] Script finished. Safe exiting...
[2026-06-12 03:19:42,806.806 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 03:19:42,809.809 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 03:19:42,811.811 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 03:19:44,852.852 INFO    ] ================================================
[2026-06-12 03:19:44,868.868 INFO    ] Launching Daemon at Fri Jun 12 03:19:44 IST 2026
[2026-06-12 03:19:44,879.879 INFO    ] ================================================
[2026-06-12 03:19:45,247.247 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 03:19:45
[2026-06-12 03:19:45,558.558 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 03:19:45,705.705 INFO    ] Initializing speech engine...
[2026-06-12 03:19:45,710.710 INFO    ] 2026-06-12 03:19:45
[2026-06-12 03:19:45,935.935 INFO    ] 2026-06-12 03:19:45
[2026-06-12 03:19:45,954.954 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 03:19:46,127.127 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 03:19:46,136.136 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 03:19:46,263.263 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 03:19:46,325.325 INFO    ] time= 12/06/2026 03:19:46
[2026-06-12 03:19:46,358.358 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 03:19:46,359.359 INFO    ] Checking for existing commands in stream...
[2026-06-12 03:19:46,432.432 INFO    ] No existing commands found in stream
[2026-06-12 03:19:51,464.464 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 03:19:51,467.467 INFO    ] Waiting 1.13 seconds before fallback handling...
[2026-06-12 03:19:52,929.929 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 03:19:52,931.931 INFO    ] Checking for system updates...
[2026-06-12 03:19:52,953.953 INFO    ] 200
[2026-06-12 03:19:52,954.954 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:19:52,990.990 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 03:19:52,992.992 INFO    ] No update needed
[2026-06-12 03:19:52,993.993 INFO    ] Checking for camera pi updates...
[2026-06-12 03:19:53,013.013 INFO    ] 200
[2026-06-12 03:19:53,014.014 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:19:53,040.040 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 03:19:53,065.065 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 03:19:53,067.067 INFO    ] No camera update needed
[2026-06-12 03:19:53,068.068 INFO    ] Script finished. Safe exiting...
[2026-06-12 03:19:53,069.069 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 03:19:53,073.073 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 03:19:53,076.076 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 03:19:55,116.116 INFO    ] ================================================
[2026-06-12 03:19:55,132.132 INFO    ] Launching Daemon at Fri Jun 12 03:19:55 IST 2026
[2026-06-12 03:19:55,143.143 INFO    ] ================================================
[2026-06-12 03:19:55,482.482 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 03:19:55
[2026-06-12 03:19:55,797.797 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 03:19:55,949.949 INFO    ] Initializing speech engine...
[2026-06-12 03:19:55,952.952 INFO    ] 2026-06-12 03:19:55
[2026-06-12 03:19:56,149.149 INFO    ] 2026-06-12 03:19:56
[2026-06-12 03:19:56,178.178 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 03:19:56,363.363 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 03:19:56,372.372 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 03:19:56,512.512 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 03:19:56,569.569 INFO    ] time= 12/06/2026 03:19:56
[2026-06-12 03:19:56,593.593 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 03:19:56,599.599 INFO    ] Checking for existing commands in stream...
[2026-06-12 03:19:56,666.666 INFO    ] No existing commands found in stream
[2026-06-12 03:20:01,679.679 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 03:20:01,682.682 INFO    ] Waiting 0.95 seconds before fallback handling...
[2026-06-12 03:20:05,369.369 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 03:20:05,372.372 INFO    ] Checking for system updates...
[2026-06-12 03:20:05,407.407 INFO    ] 200
[2026-06-12 03:20:05,410.410 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:20:05,464.464 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 03:20:05,467.467 INFO    ] No update needed
[2026-06-12 03:20:05,469.469 INFO    ] Checking for camera pi updates...
[2026-06-12 03:20:05,502.502 INFO    ] 200
[2026-06-12 03:20:05,505.505 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:20:05,529.529 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 03:20:05,673.673 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 03:20:05,674.674 INFO    ] No camera update needed
[2026-06-12 03:20:05,676.676 INFO    ] Script finished. Safe exiting...
[2026-06-12 03:20:05,677.677 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 03:20:05,680.680 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 03:20:05,683.683 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 03:20:07,722.722 INFO    ] ================================================
[2026-06-12 03:20:07,738.738 INFO    ] Launching Daemon at Fri Jun 12 03:20:07 IST 2026
[2026-06-12 03:20:07,749.749 INFO    ] ================================================
[2026-06-12 03:20:08,083.083 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 03:20:08
[2026-06-12 03:20:08,395.395 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 03:20:08,525.525 INFO    ] Initializing speech engine...
[2026-06-12 03:20:08,530.530 INFO    ] 2026-06-12 03:20:08
[2026-06-12 03:20:08,748.748 INFO    ] 2026-06-12 03:20:08
[2026-06-12 03:20:08,777.777 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 03:20:08,964.964 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 03:20:08,967.967 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 03:20:09,103.103 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 03:20:09,159.159 INFO    ] time= 12/06/2026 03:20:09
[2026-06-12 03:20:09,198.198 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 03:20:09,204.204 INFO    ] Checking for existing commands in stream...
[2026-06-12 03:20:09,273.273 INFO    ] No existing commands found in stream
[2026-06-12 03:20:14,282.282 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 03:20:14,284.284 INFO    ] Waiting 0.28 seconds before fallback handling...
[2026-06-12 03:20:16,106.106 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 03:20:16,109.109 INFO    ] Checking for system updates...
[2026-06-12 03:20:16,148.148 INFO    ] 200
[2026-06-12 03:20:16,150.150 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:20:16,198.198 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 03:20:16,199.199 INFO    ] No update needed
[2026-06-12 03:20:16,201.201 INFO    ] Checking for camera pi updates...
[2026-06-12 03:20:16,223.223 INFO    ] 200
[2026-06-12 03:20:16,224.224 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:20:16,247.247 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 03:20:16,284.284 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 03:20:16,285.285 INFO    ] No camera update needed
[2026-06-12 03:20:16,286.286 INFO    ] Script finished. Safe exiting...
[2026-06-12 03:20:16,288.288 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 03:20:16,291.291 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 03:20:16,293.293 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 03:20:18,335.335 INFO    ] ================================================
[2026-06-12 03:20:18,350.350 INFO    ] Launching Daemon at Fri Jun 12 03:20:18 IST 2026
[2026-06-12 03:20:18,362.362 INFO    ] ================================================
[2026-06-12 03:20:18,712.712 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 03:20:18
[2026-06-12 03:20:19,024.024 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 03:20:19,157.157 INFO    ] Initializing speech engine...
[2026-06-12 03:20:19,161.161 INFO    ] 2026-06-12 03:20:19
[2026-06-12 03:20:19,387.387 INFO    ] 2026-06-12 03:20:19
[2026-06-12 03:20:19,417.417 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 03:20:19,612.612 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 03:20:19,616.616 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 03:20:19,760.760 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 03:20:19,829.829 INFO    ] time= 12/06/2026 03:20:19
[2026-06-12 03:20:19,856.856 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 03:20:19,858.858 INFO    ] Checking for existing commands in stream...
[2026-06-12 03:20:19,934.934 INFO    ] No existing commands found in stream
[2026-06-12 03:20:24,943.943 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 03:20:24,945.945 INFO    ] Waiting 1.08 seconds before fallback handling...
[2026-06-12 03:20:26,415.415 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 03:20:26,417.417 INFO    ] Checking for system updates...
[2026-06-12 03:20:26,437.437 INFO    ] 200
[2026-06-12 03:20:26,439.439 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:20:26,470.470 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 03:20:26,471.471 INFO    ] No update needed
[2026-06-12 03:20:26,472.472 INFO    ] Checking for camera pi updates...
[2026-06-12 03:20:26,494.494 INFO    ] 200
[2026-06-12 03:20:26,495.495 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:20:26,518.518 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 03:20:26,558.558 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 03:20:26,559.559 INFO    ] No camera update needed
[2026-06-12 03:20:26,561.561 INFO    ] Script finished. Safe exiting...
[2026-06-12 03:20:26,562.562 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 03:20:26,565.565 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 03:20:26,567.567 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 03:20:28,606.606 INFO    ] ================================================
[2026-06-12 03:20:28,623.623 INFO    ] Launching Daemon at Fri Jun 12 03:20:28 IST 2026
[2026-06-12 03:20:28,634.634 INFO    ] ================================================
[2026-06-12 03:20:28,966.966 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 03:20:28
[2026-06-12 03:20:29,277.277 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 03:20:29,414.414 INFO    ] Initializing speech engine...
[2026-06-12 03:20:29,423.423 INFO    ] 2026-06-12 03:20:29
[2026-06-12 03:20:29,628.628 INFO    ] 2026-06-12 03:20:29
[2026-06-12 03:20:29,657.657 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 03:20:29,844.844 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 03:20:29,852.852 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 03:20:29,984.984 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 03:20:30,048.048 INFO    ] time= 12/06/2026 03:20:29
[2026-06-12 03:20:30,076.076 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 03:20:30,082.082 INFO    ] Checking for existing commands in stream...
[2026-06-12 03:20:30,150.150 INFO    ] No existing commands found in stream
[2026-06-12 03:20:35,158.158 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 03:20:35,159.159 INFO    ] Waiting 3.92 seconds before fallback handling...
[2026-06-12 03:20:39,445.445 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 03:20:39,447.447 INFO    ] Checking for system updates...
[2026-06-12 03:20:39,467.467 INFO    ] 200
[2026-06-12 03:20:39,468.468 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:20:39,499.499 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 03:20:39,500.500 INFO    ] No update needed
[2026-06-12 03:20:39,501.501 INFO    ] Checking for camera pi updates...
[2026-06-12 03:20:39,523.523 INFO    ] 200
[2026-06-12 03:20:39,524.524 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:20:39,547.547 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 03:20:39,582.582 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 03:20:39,583.583 INFO    ] No camera update needed
[2026-06-12 03:20:39,584.584 INFO    ] Script finished. Safe exiting...
[2026-06-12 03:20:39,585.585 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 03:20:39,588.588 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 03:20:39,591.591 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 03:20:41,631.631 INFO    ] ================================================
[2026-06-12 03:20:41,647.647 INFO    ] Launching Daemon at Fri Jun 12 03:20:41 IST 2026
[2026-06-12 03:20:41,658.658 INFO    ] ================================================
[2026-06-12 03:20:42,003.003 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 03:20:42
[2026-06-12 03:20:42,339.339 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 03:20:42,492.492 INFO    ] Initializing speech engine...
[2026-06-12 03:20:42,497.497 INFO    ] 2026-06-12 03:20:42
[2026-06-12 03:20:42,704.704 INFO    ] 2026-06-12 03:20:42
[2026-06-12 03:20:42,733.733 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 03:20:42,919.919 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 03:20:42,929.929 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 03:20:43,066.066 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 03:20:43,130.130 INFO    ] time= 12/06/2026 03:20:43
[2026-06-12 03:20:43,156.156 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 03:20:43,191.191 INFO    ] Checking for existing commands in stream...
[2026-06-12 03:20:43,277.277 INFO    ] No existing commands found in stream
[2026-06-12 03:20:48,288.288 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 03:20:48,291.291 INFO    ] Waiting 2.63 seconds before fallback handling...
[2026-06-12 03:20:51,282.282 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 03:20:51,283.283 INFO    ] Checking for system updates...
[2026-06-12 03:20:51,304.304 INFO    ] 200
[2026-06-12 03:20:51,306.306 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:20:51,337.337 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 03:20:51,339.339 INFO    ] No update needed
[2026-06-12 03:20:51,340.340 INFO    ] Checking for camera pi updates...
[2026-06-12 03:20:51,360.360 INFO    ] 200
[2026-06-12 03:20:51,362.362 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:20:51,385.385 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 03:20:51,426.426 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 03:20:51,427.427 INFO    ] No camera update needed
[2026-06-12 03:20:51,429.429 INFO    ] Script finished. Safe exiting...
[2026-06-12 03:20:51,430.430 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 03:20:51,434.434 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 03:20:51,437.437 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 03:20:53,477.477 INFO    ] ================================================
[2026-06-12 03:20:53,493.493 INFO    ] Launching Daemon at Fri Jun 12 03:20:53 IST 2026
[2026-06-12 03:20:53,504.504 INFO    ] ================================================
[2026-06-12 03:20:53,840.840 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 03:20:53
[2026-06-12 03:20:54,153.153 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 03:20:54,284.284 INFO    ] Initializing speech engine...
[2026-06-12 03:20:54,288.288 INFO    ] 2026-06-12 03:20:54
[2026-06-12 03:20:54,507.507 INFO    ] 2026-06-12 03:20:54
[2026-06-12 03:20:54,537.537 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 03:20:54,661.661 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 03:20:54,708.708 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 03:20:54,858.858 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 03:20:54,920.920 INFO    ] time= 12/06/2026 03:20:54
[2026-06-12 03:20:54,959.959 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 03:20:54,961.961 INFO    ] Checking for existing commands in stream...
[2026-06-12 03:20:55,034.034 INFO    ] No existing commands found in stream
[2026-06-12 03:21:00,043.043 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 03:21:00,045.045 INFO    ] Waiting 3.53 seconds before fallback handling...
[2026-06-12 03:21:03,925.925 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 03:21:03,927.927 INFO    ] Checking for system updates...
[2026-06-12 03:21:03,947.947 INFO    ] 200
[2026-06-12 03:21:03,949.949 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:21:03,979.979 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 03:21:03,980.980 INFO    ] No update needed
[2026-06-12 03:21:03,981.981 INFO    ] Checking for camera pi updates...
[2026-06-12 03:21:04,002.002 INFO    ] 200
[2026-06-12 03:21:04,003.003 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:21:04,026.026 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 03:21:04,067.067 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 03:21:04,069.069 INFO    ] No camera update needed
[2026-06-12 03:21:04,070.070 INFO    ] Script finished. Safe exiting...
[2026-06-12 03:21:04,071.071 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 03:21:04,074.074 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 03:21:04,077.077 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 03:21:06,117.117 INFO    ] ================================================
[2026-06-12 03:21:06,132.132 INFO    ] Launching Daemon at Fri Jun 12 03:21:06 IST 2026
[2026-06-12 03:21:06,147.147 INFO    ] ================================================
[2026-06-12 03:21:06,507.507 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 03:21:06
[2026-06-12 03:21:06,824.824 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 03:21:06,957.957 INFO    ] Initializing speech engine...
[2026-06-12 03:21:06,965.965 INFO    ] 2026-06-12 03:21:06
[2026-06-12 03:21:07,180.180 INFO    ] 2026-06-12 03:21:07
[2026-06-12 03:21:07,209.209 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 03:21:07,396.396 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 03:21:07,405.405 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 03:21:07,536.536 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 03:21:07,595.595 INFO    ] time= 12/06/2026 03:21:07
[2026-06-12 03:21:07,628.628 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 03:21:07,630.630 INFO    ] Checking for existing commands in stream...
[2026-06-12 03:21:07,726.726 INFO    ] No existing commands found in stream
[2026-06-12 03:21:12,740.740 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 03:21:12,743.743 INFO    ] Waiting 3.89 seconds before fallback handling...
[2026-06-12 03:21:17,013.013 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 03:21:17,015.015 INFO    ] Checking for system updates...
[2026-06-12 03:21:17,036.036 INFO    ] 200
[2026-06-12 03:21:17,037.037 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:21:17,070.070 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 03:21:17,072.072 INFO    ] No update needed
[2026-06-12 03:21:17,073.073 INFO    ] Checking for camera pi updates...
[2026-06-12 03:21:17,093.093 INFO    ] 200
[2026-06-12 03:21:17,094.094 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:21:17,118.118 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 03:21:17,142.142 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 03:21:17,144.144 INFO    ] No camera update needed
[2026-06-12 03:21:17,145.145 INFO    ] Script finished. Safe exiting...
[2026-06-12 03:21:17,146.146 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 03:21:17,149.149 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 03:21:17,152.152 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 03:21:19,192.192 INFO    ] ================================================
[2026-06-12 03:21:19,208.208 INFO    ] Launching Daemon at Fri Jun 12 03:21:19 IST 2026
[2026-06-12 03:21:19,219.219 INFO    ] ================================================
[2026-06-12 03:21:19,569.569 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 03:21:19
[2026-06-12 03:21:19,915.915 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 03:21:20,061.061 INFO    ] Initializing speech engine...
[2026-06-12 03:21:20,069.069 INFO    ] 2026-06-12 03:21:20
[2026-06-12 03:21:20,290.290 INFO    ] 2026-06-12 03:21:20
[2026-06-12 03:21:20,319.319 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 03:21:20,442.442 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 03:21:20,504.504 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 03:21:20,643.643 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 03:21:20,713.713 INFO    ] time= 12/06/2026 03:21:20
[2026-06-12 03:21:20,737.737 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 03:21:20,743.743 INFO    ] Checking for existing commands in stream...
[2026-06-12 03:21:20,809.809 INFO    ] No existing commands found in stream
[2026-06-12 03:21:25,819.819 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 03:21:25,822.822 INFO    ] Waiting 2.96 seconds before fallback handling...
[2026-06-12 03:21:29,164.164 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 03:21:29,165.165 INFO    ] Checking for system updates...
[2026-06-12 03:21:29,186.186 INFO    ] 200
[2026-06-12 03:21:29,187.187 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:21:29,220.220 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 03:21:29,221.221 INFO    ] No update needed
[2026-06-12 03:21:29,222.222 INFO    ] Checking for camera pi updates...
[2026-06-12 03:21:29,243.243 INFO    ] 200
[2026-06-12 03:21:29,244.244 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:21:29,268.268 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 03:21:29,316.316 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 03:21:29,317.317 INFO    ] No camera update needed
[2026-06-12 03:21:29,319.319 INFO    ] Script finished. Safe exiting...
[2026-06-12 03:21:29,320.320 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 03:21:29,323.323 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 03:21:29,326.326 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 03:21:31,360.360 INFO    ] ================================================
[2026-06-12 03:21:31,373.373 INFO    ] Launching Daemon at Fri Jun 12 03:21:31 IST 2026
[2026-06-12 03:21:31,381.381 INFO    ] ================================================
[2026-06-12 03:21:31,708.708 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 03:21:31
[2026-06-12 03:21:32,050.050 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 03:21:32,208.208 INFO    ] Initializing speech engine...
[2026-06-12 03:21:32,214.214 INFO    ] 2026-06-12 03:21:32
[2026-06-12 03:21:32,422.422 INFO    ] 2026-06-12 03:21:32
[2026-06-12 03:21:32,451.451 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 03:21:32,638.638 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 03:21:32,648.648 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 03:21:32,780.780 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 03:21:32,844.844 INFO    ] time= 12/06/2026 03:21:32
[2026-06-12 03:21:32,873.873 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 03:21:32,880.880 INFO    ] Checking for existing commands in stream...
[2026-06-12 03:21:32,948.948 INFO    ] No existing commands found in stream
[2026-06-12 03:21:37,972.972 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 03:21:37,975.975 INFO    ] Waiting 2.23 seconds before fallback handling...
[2026-06-12 03:21:40,584.584 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 03:21:40,586.586 INFO    ] Checking for system updates...
[2026-06-12 03:21:40,606.606 INFO    ] 200
[2026-06-12 03:21:40,608.608 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:21:40,641.641 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 03:21:40,642.642 INFO    ] No update needed
[2026-06-12 03:21:40,643.643 INFO    ] Checking for camera pi updates...
[2026-06-12 03:21:40,663.663 INFO    ] 200
[2026-06-12 03:21:40,665.665 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:21:40,690.690 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 03:21:40,732.732 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 03:21:40,733.733 INFO    ] No camera update needed
[2026-06-12 03:21:40,735.735 INFO    ] Script finished. Safe exiting...
[2026-06-12 03:21:40,736.736 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 03:21:40,739.739 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 03:21:40,742.742 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 03:21:42,772.772 INFO    ] ================================================
[2026-06-12 03:21:42,782.782 INFO    ] Launching Daemon at Fri Jun 12 03:21:42 IST 2026
[2026-06-12 03:21:42,788.788 INFO    ] ================================================
[2026-06-12 03:21:43,146.146 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 03:21:43
[2026-06-12 03:21:43,463.463 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 03:21:43,606.606 INFO    ] Initializing speech engine...
[2026-06-12 03:21:43,612.612 INFO    ] 2026-06-12 03:21:43
[2026-06-12 03:21:43,813.813 INFO    ] 2026-06-12 03:21:43
[2026-06-12 03:21:43,842.842 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 03:21:44,025.025 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 03:21:44,033.033 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 03:21:44,172.172 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 03:21:44,229.229 INFO    ] time= 12/06/2026 03:21:44
[2026-06-12 03:21:44,252.252 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 03:21:44,258.258 INFO    ] Checking for existing commands in stream...
[2026-06-12 03:21:44,324.324 INFO    ] No existing commands found in stream
[2026-06-12 03:21:49,338.338 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 03:21:49,341.341 INFO    ] Waiting 1.62 seconds before fallback handling...
[2026-06-12 03:21:51,364.364 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 03:21:51,366.366 INFO    ] Checking for system updates...
[2026-06-12 03:21:51,398.398 INFO    ] 200
[2026-06-12 03:21:51,400.400 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:21:51,431.431 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 03:21:51,432.432 INFO    ] No update needed
[2026-06-12 03:21:51,434.434 INFO    ] Checking for camera pi updates...
[2026-06-12 03:21:51,457.457 INFO    ] 200
[2026-06-12 03:21:51,458.458 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:21:51,482.482 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 03:21:51,520.520 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 03:21:51,522.522 INFO    ] No camera update needed
[2026-06-12 03:21:51,523.523 INFO    ] Script finished. Safe exiting...
[2026-06-12 03:21:51,524.524 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 03:21:51,527.527 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 03:21:51,530.530 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 03:21:53,553.553 INFO    ] ================================================
[2026-06-12 03:21:53,562.562 INFO    ] Launching Daemon at Fri Jun 12 03:21:53 IST 2026
[2026-06-12 03:21:53,571.571 INFO    ] ================================================
[2026-06-12 03:21:53,949.949 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 03:21:53
[2026-06-12 03:21:54,281.281 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 03:21:54,425.425 INFO    ] Initializing speech engine...
[2026-06-12 03:21:54,433.433 INFO    ] 2026-06-12 03:21:54
[2026-06-12 03:21:54,660.660 INFO    ] 2026-06-12 03:21:54
[2026-06-12 03:21:54,689.689 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 03:21:54,811.811 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 03:21:54,876.876 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 03:21:55,007.007 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 03:21:55,076.076 INFO    ] time= 12/06/2026 03:21:55
[2026-06-12 03:21:55,105.105 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 03:21:55,112.112 INFO    ] Checking for existing commands in stream...
[2026-06-12 03:21:55,179.179 INFO    ] No existing commands found in stream
[2026-06-12 03:22:00,211.211 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 03:22:00,214.214 INFO    ] Waiting 0.73 seconds before fallback handling...
[2026-06-12 03:22:01,300.300 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 03:22:01,310.310 INFO    ] Checking for system updates...
[2026-06-12 03:22:01,353.353 INFO    ] 200
[2026-06-12 03:22:01,355.355 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:22:01,422.422 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 03:22:01,424.424 INFO    ] No update needed
[2026-06-12 03:22:01,426.426 INFO    ] Checking for camera pi updates...
[2026-06-12 03:22:01,457.457 INFO    ] 200
[2026-06-12 03:22:01,459.459 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:22:01,524.524 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 03:22:01,558.558 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 03:22:01,560.560 INFO    ] No camera update needed
[2026-06-12 03:22:01,562.562 INFO    ] Script finished. Safe exiting...
[2026-06-12 03:22:01,564.564 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 03:22:01,569.569 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 03:22:01,573.573 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 03:22:03,616.616 INFO    ] ================================================
[2026-06-12 03:22:03,632.632 INFO    ] Launching Daemon at Fri Jun 12 03:22:03 IST 2026
[2026-06-12 03:22:03,643.643 INFO    ] ================================================
[2026-06-12 03:22:04,015.015 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 03:22:04
[2026-06-12 03:22:04,356.356 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 03:22:04,509.509 INFO    ] Initializing speech engine...
[2026-06-12 03:22:04,515.515 INFO    ] 2026-06-12 03:22:04
[2026-06-12 03:22:04,736.736 INFO    ] 2026-06-12 03:22:04
[2026-06-12 03:22:04,766.766 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 03:22:04,954.954 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 03:22:04,964.964 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 03:22:05,109.109 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 03:22:05,177.177 INFO    ] time= 12/06/2026 03:22:05
[2026-06-12 03:22:05,250.250 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 03:22:05,274.274 INFO    ] Checking for existing commands in stream...
[2026-06-12 03:22:05,327.327 INFO    ] No existing commands found in stream
[2026-06-12 03:22:10,337.337 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 03:22:10,341.341 INFO    ] Waiting 1.43 seconds before fallback handling...
[2026-06-12 03:22:12,185.185 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 03:22:12,186.186 INFO    ] Checking for system updates...
[2026-06-12 03:22:12,207.207 INFO    ] 200
[2026-06-12 03:22:12,209.209 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:22:12,240.240 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 03:22:12,241.241 INFO    ] No update needed
[2026-06-12 03:22:12,243.243 INFO    ] Checking for camera pi updates...
[2026-06-12 03:22:12,264.264 INFO    ] 200
[2026-06-12 03:22:12,265.265 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:22:12,291.291 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 03:22:12,431.431 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 03:22:12,433.433 INFO    ] No camera update needed
[2026-06-12 03:22:12,434.434 INFO    ] Script finished. Safe exiting...
[2026-06-12 03:22:12,436.436 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 03:22:12,439.439 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 03:22:12,442.442 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 03:22:14,482.482 INFO    ] ================================================
[2026-06-12 03:22:14,498.498 INFO    ] Launching Daemon at Fri Jun 12 03:22:14 IST 2026
[2026-06-12 03:22:14,509.509 INFO    ] ================================================
[2026-06-12 03:22:14,869.869 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 03:22:14
[2026-06-12 03:22:15,212.212 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 03:22:15,353.353 INFO    ] Initializing speech engine...
[2026-06-12 03:22:15,365.365 INFO    ] 2026-06-12 03:22:15
[2026-06-12 03:22:15,578.578 INFO    ] 2026-06-12 03:22:15
[2026-06-12 03:22:15,606.606 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 03:22:15,796.796 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 03:22:15,806.806 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 03:22:15,960.960 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 03:22:16,009.009 INFO    ] time= 12/06/2026 03:22:15
[2026-06-12 03:22:16,031.031 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 03:22:16,038.038 INFO    ] Checking for existing commands in stream...
[2026-06-12 03:22:16,130.130 INFO    ] No existing commands found in stream
[2026-06-12 03:22:21,144.144 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 03:22:21,148.148 INFO    ] Waiting 3.22 seconds before fallback handling...
[2026-06-12 03:22:24,729.729 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 03:22:24,730.730 INFO    ] Checking for system updates...
[2026-06-12 03:22:24,752.752 INFO    ] 200
[2026-06-12 03:22:24,753.753 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:22:24,786.786 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 03:22:24,788.788 INFO    ] No update needed
[2026-06-12 03:22:24,789.789 INFO    ] Checking for camera pi updates...
[2026-06-12 03:22:24,812.812 INFO    ] 200
[2026-06-12 03:22:24,813.813 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:22:24,839.839 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 03:22:24,880.880 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 03:22:24,882.882 INFO    ] No camera update needed
[2026-06-12 03:22:24,883.883 INFO    ] Script finished. Safe exiting...
[2026-06-12 03:22:24,884.884 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 03:22:24,887.887 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 03:22:24,891.891 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 03:22:26,932.932 INFO    ] ================================================
[2026-06-12 03:22:26,948.948 INFO    ] Launching Daemon at Fri Jun 12 03:22:26 IST 2026
[2026-06-12 03:22:26,960.960 INFO    ] ================================================
[2026-06-12 03:22:27,302.302 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 03:22:27
[2026-06-12 03:22:27,628.628 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 03:22:27,771.771 INFO    ] Initializing speech engine...
[2026-06-12 03:22:27,776.776 INFO    ] 2026-06-12 03:22:27
[2026-06-12 03:22:27,982.982 INFO    ] 2026-06-12 03:22:27
[2026-06-12 03:22:28,013.013 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 03:22:28,304.304 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 03:22:28,336.336 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 03:22:28,498.498 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 03:22:28,501.501 INFO    ] time= 12/06/2026 03:22:28
[2026-06-12 03:22:28,523.523 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 03:22:28,529.529 INFO    ] Checking for existing commands in stream...
[2026-06-12 03:22:28,627.627 INFO    ] No existing commands found in stream
[2026-06-12 03:22:33,637.637 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 03:22:33,640.640 INFO    ] Waiting 3.08 seconds before fallback handling...
[2026-06-12 03:22:37,075.075 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 03:22:37,076.076 INFO    ] Checking for system updates...
[2026-06-12 03:22:37,097.097 INFO    ] 200
[2026-06-12 03:22:37,099.099 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:22:37,131.131 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 03:22:37,132.132 INFO    ] No update needed
[2026-06-12 03:22:37,133.133 INFO    ] Checking for camera pi updates...
[2026-06-12 03:22:37,155.155 INFO    ] 200
[2026-06-12 03:22:37,156.156 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:22:37,181.181 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 03:22:37,230.230 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 03:22:37,232.232 INFO    ] No camera update needed
[2026-06-12 03:22:37,236.236 INFO    ] Script finished. Safe exiting...
[2026-06-12 03:22:37,238.238 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 03:22:37,241.241 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 03:22:37,244.244 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 03:22:39,275.275 INFO    ] ================================================
[2026-06-12 03:22:39,291.291 INFO    ] Launching Daemon at Fri Jun 12 03:22:39 IST 2026
[2026-06-12 03:22:39,302.302 INFO    ] ================================================
[2026-06-12 03:22:39,695.695 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 03:22:39
[2026-06-12 03:22:40,035.035 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 03:22:40,189.189 INFO    ] Initializing speech engine...
[2026-06-12 03:22:40,193.193 INFO    ] 2026-06-12 03:22:40
[2026-06-12 03:22:40,401.401 INFO    ] 2026-06-12 03:22:40
[2026-06-12 03:22:40,432.432 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 03:22:40,751.751 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 03:22:40,819.819 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 03:22:40,967.967 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 03:22:40,970.970 INFO    ] time= 12/06/2026 03:22:40
[2026-06-12 03:22:40,973.973 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 03:22:40,975.975 INFO    ] Checking for existing commands in stream...
[2026-06-12 03:22:41,049.049 INFO    ] No existing commands found in stream
[2026-06-12 03:22:46,059.059 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 03:22:46,063.063 INFO    ] Waiting 1.64 seconds before fallback handling...
[2026-06-12 03:22:48,122.122 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 03:22:48,124.124 INFO    ] Checking for system updates...
[2026-06-12 03:22:48,149.149 INFO    ] 200
[2026-06-12 03:22:48,151.151 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:22:48,182.182 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 03:22:48,184.184 INFO    ] No update needed
[2026-06-12 03:22:48,185.185 INFO    ] Checking for camera pi updates...
[2026-06-12 03:22:48,205.205 INFO    ] 200
[2026-06-12 03:22:48,206.206 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:22:48,230.230 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 03:22:48,274.274 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 03:22:48,276.276 INFO    ] No camera update needed
[2026-06-12 03:22:48,277.277 INFO    ] Script finished. Safe exiting...
[2026-06-12 03:22:48,279.279 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 03:22:48,282.282 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 03:22:48,285.285 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 03:22:50,324.324 INFO    ] ================================================
[2026-06-12 03:22:50,345.345 INFO    ] Launching Daemon at Fri Jun 12 03:22:50 IST 2026
[2026-06-12 03:22:50,356.356 INFO    ] ================================================
[2026-06-12 03:22:50,690.690 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 03:22:50
[2026-06-12 03:22:51,008.008 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 03:22:51,152.152 INFO    ] Initializing speech engine...
[2026-06-12 03:22:51,157.157 INFO    ] 2026-06-12 03:22:51
[2026-06-12 03:22:51,360.360 INFO    ] 2026-06-12 03:22:51
[2026-06-12 03:22:51,388.388 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 03:22:51,572.572 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 03:22:51,581.581 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 03:22:51,731.731 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 03:22:51,780.780 INFO    ] time= 12/06/2026 03:22:51
[2026-06-12 03:22:51,802.802 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 03:22:51,808.808 INFO    ] Checking for existing commands in stream...
[2026-06-12 03:22:51,875.875 INFO    ] No existing commands found in stream
[2026-06-12 03:22:56,889.889 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 03:22:56,892.892 INFO    ] Waiting 2.58 seconds before fallback handling...
[2026-06-12 03:22:59,875.875 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 03:22:59,877.877 INFO    ] Checking for system updates...
[2026-06-12 03:22:59,900.900 INFO    ] 200
[2026-06-12 03:22:59,902.902 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:22:59,936.936 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 03:22:59,937.937 INFO    ] No update needed
[2026-06-12 03:22:59,939.939 INFO    ] Checking for camera pi updates...
[2026-06-12 03:22:59,963.963 INFO    ] 200
[2026-06-12 03:22:59,965.965 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:22:59,991.991 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 03:23:00,029.029 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 03:23:00,031.031 INFO    ] No camera update needed
[2026-06-12 03:23:00,032.032 INFO    ] Script finished. Safe exiting...
[2026-06-12 03:23:00,034.034 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 03:23:00,038.038 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 03:23:00,042.042 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 03:23:02,069.069 INFO    ] ================================================
[2026-06-12 03:23:02,082.082 INFO    ] Launching Daemon at Fri Jun 12 03:23:02 IST 2026
[2026-06-12 03:23:02,091.091 INFO    ] ================================================
[2026-06-12 03:23:02,448.448 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 03:23:02
[2026-06-12 03:23:02,766.766 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 03:23:02,908.908 INFO    ] Initializing speech engine...
[2026-06-12 03:23:02,912.912 INFO    ] 2026-06-12 03:23:02
[2026-06-12 03:23:03,116.116 INFO    ] 2026-06-12 03:23:03
[2026-06-12 03:23:03,144.144 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 03:23:03,326.326 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 03:23:03,330.330 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 03:23:03,461.461 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 03:23:03,523.523 INFO    ] time= 12/06/2026 03:23:03
[2026-06-12 03:23:03,552.552 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 03:23:03,557.557 INFO    ] Checking for existing commands in stream...
[2026-06-12 03:23:03,626.626 INFO    ] No existing commands found in stream
[2026-06-12 03:23:08,637.637 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 03:23:08,640.640 INFO    ] Waiting 0.90 seconds before fallback handling...
[2026-06-12 03:23:09,924.924 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 03:23:09,926.926 INFO    ] Checking for system updates...
[2026-06-12 03:23:09,946.946 INFO    ] 200
[2026-06-12 03:23:09,948.948 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:23:09,978.978 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 03:23:09,980.980 INFO    ] No update needed
[2026-06-12 03:23:09,981.981 INFO    ] Checking for camera pi updates...
[2026-06-12 03:23:10,000.000 INFO    ] 200
[2026-06-12 03:23:10,002.002 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:23:10,025.025 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 03:23:10,062.062 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 03:23:10,064.064 INFO    ] No camera update needed
[2026-06-12 03:23:10,065.065 INFO    ] Script finished. Safe exiting...
[2026-06-12 03:23:10,066.066 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 03:23:10,069.069 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 03:23:10,072.072 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 03:23:12,102.102 INFO    ] ================================================
[2026-06-12 03:23:12,110.110 INFO    ] Launching Daemon at Fri Jun 12 03:23:12 IST 2026
[2026-06-12 03:23:12,117.117 INFO    ] ================================================
[2026-06-12 03:23:12,429.429 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 03:23:12
[2026-06-12 03:23:12,741.741 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 03:23:12,883.883 INFO    ] Initializing speech engine...
[2026-06-12 03:23:12,888.888 INFO    ] 2026-06-12 03:23:12
[2026-06-12 03:23:13,095.095 INFO    ] 2026-06-12 03:23:13
[2026-06-12 03:23:13,124.124 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 03:23:13,256.256 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 03:23:13,309.309 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 03:23:13,445.445 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 03:23:13,509.509 INFO    ] time= 12/06/2026 03:23:13
[2026-06-12 03:23:13,536.536 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 03:23:13,542.542 INFO    ] Checking for existing commands in stream...
[2026-06-12 03:23:13,609.609 INFO    ] No existing commands found in stream
[2026-06-12 03:23:18,618.618 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 03:23:18,621.621 INFO    ] Waiting 1.17 seconds before fallback handling...
[2026-06-12 03:23:20,151.151 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 03:23:20,153.153 INFO    ] Checking for system updates...
[2026-06-12 03:23:20,175.175 INFO    ] 200
[2026-06-12 03:23:20,177.177 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:23:20,208.208 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 03:23:20,209.209 INFO    ] No update needed
[2026-06-12 03:23:20,211.211 INFO    ] Checking for camera pi updates...
[2026-06-12 03:23:20,232.232 INFO    ] 200
[2026-06-12 03:23:20,233.233 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:23:20,256.256 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 03:23:20,301.301 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 03:23:20,302.302 INFO    ] No camera update needed
[2026-06-12 03:23:20,303.303 INFO    ] Script finished. Safe exiting...
[2026-06-12 03:23:20,305.305 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 03:23:20,308.308 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 03:23:20,310.310 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 03:23:22,349.349 INFO    ] ================================================
[2026-06-12 03:23:22,364.364 INFO    ] Launching Daemon at Fri Jun 12 03:23:22 IST 2026
[2026-06-12 03:23:22,376.376 INFO    ] ================================================
[2026-06-12 03:23:22,738.738 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 03:23:22
[2026-06-12 03:23:23,063.063 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 03:23:23,203.203 INFO    ] Initializing speech engine...
[2026-06-12 03:23:23,207.207 INFO    ] 2026-06-12 03:23:23
[2026-06-12 03:23:23,437.437 INFO    ] 2026-06-12 03:23:23
[2026-06-12 03:23:23,473.473 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 03:23:23,660.660 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 03:23:23,670.670 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 03:23:23,793.793 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 03:23:23,859.859 INFO    ] time= 12/06/2026 03:23:23
[2026-06-12 03:23:23,891.891 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 03:23:23,898.898 INFO    ] Checking for existing commands in stream...
[2026-06-12 03:23:23,965.965 INFO    ] No existing commands found in stream
[2026-06-12 03:23:28,974.974 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 03:23:28,977.977 INFO    ] Waiting 2.79 seconds before fallback handling...
[2026-06-12 03:23:32,103.103 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 03:23:32,105.105 INFO    ] Checking for system updates...
[2026-06-12 03:23:32,130.130 INFO    ] 200
[2026-06-12 03:23:32,132.132 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:23:32,173.173 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 03:23:32,175.175 INFO    ] No update needed
[2026-06-12 03:23:32,177.177 INFO    ] Checking for camera pi updates...
[2026-06-12 03:23:32,201.201 INFO    ] 200
[2026-06-12 03:23:32,202.202 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:23:32,228.228 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 03:23:32,252.252 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 03:23:32,253.253 INFO    ] No camera update needed
[2026-06-12 03:23:32,255.255 INFO    ] Script finished. Safe exiting...
[2026-06-12 03:23:32,256.256 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 03:23:32,259.259 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 03:23:32,261.261 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 03:23:34,300.300 INFO    ] ================================================
[2026-06-12 03:23:34,317.317 INFO    ] Launching Daemon at Fri Jun 12 03:23:34 IST 2026
[2026-06-12 03:23:34,328.328 INFO    ] ================================================
[2026-06-12 03:23:34,660.660 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 03:23:34
[2026-06-12 03:23:34,984.984 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 03:23:35,126.126 INFO    ] Initializing speech engine...
[2026-06-12 03:23:35,130.130 INFO    ] 2026-06-12 03:23:35
[2026-06-12 03:23:35,334.334 INFO    ] 2026-06-12 03:23:35
[2026-06-12 03:23:35,362.362 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 03:23:35,501.501 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 03:23:35,548.548 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 03:23:35,682.682 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 03:23:35,744.744 INFO    ] time= 12/06/2026 03:23:35
[2026-06-12 03:23:35,775.775 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 03:23:35,777.777 INFO    ] Checking for existing commands in stream...
[2026-06-12 03:23:35,847.847 INFO    ] No existing commands found in stream
[2026-06-12 03:23:40,857.857 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 03:23:40,860.860 INFO    ] Waiting 1.89 seconds before fallback handling...
[2026-06-12 03:23:43,158.158 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 03:23:43,161.161 INFO    ] Checking for system updates...
[2026-06-12 03:23:43,197.197 INFO    ] 200
[2026-06-12 03:23:43,200.200 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:23:43,254.254 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 03:23:43,256.256 INFO    ] No update needed
[2026-06-12 03:23:43,259.259 INFO    ] Checking for camera pi updates...
[2026-06-12 03:23:43,293.293 INFO    ] 200
[2026-06-12 03:23:43,295.295 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:23:43,322.322 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 03:23:43,364.364 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 03:23:43,365.365 INFO    ] No camera update needed
[2026-06-12 03:23:43,367.367 INFO    ] Script finished. Safe exiting...
[2026-06-12 03:23:43,368.368 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 03:23:43,371.371 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 03:23:43,374.374 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 03:23:45,412.412 INFO    ] ================================================
[2026-06-12 03:23:45,427.427 INFO    ] Launching Daemon at Fri Jun 12 03:23:45 IST 2026
[2026-06-12 03:23:45,439.439 INFO    ] ================================================
[2026-06-12 03:23:45,812.812 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 03:23:45
[2026-06-12 03:23:46,136.136 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 03:23:46,274.274 INFO    ] Initializing speech engine...
[2026-06-12 03:23:46,283.283 INFO    ] 2026-06-12 03:23:46
[2026-06-12 03:23:46,489.489 INFO    ] 2026-06-12 03:23:46
[2026-06-12 03:23:46,518.518 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 03:23:46,644.644 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 03:23:46,708.708 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 03:23:46,847.847 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 03:23:46,914.914 INFO    ] time= 12/06/2026 03:23:46
[2026-06-12 03:23:46,944.944 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 03:23:46,945.945 INFO    ] Checking for existing commands in stream...
[2026-06-12 03:23:47,042.042 INFO    ] No existing commands found in stream
[2026-06-12 03:23:52,051.051 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 03:23:52,054.054 INFO    ] Waiting 0.40 seconds before fallback handling...
[2026-06-12 03:23:52,860.860 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 03:23:52,862.862 INFO    ] Checking for system updates...
[2026-06-12 03:23:52,883.883 INFO    ] 200
[2026-06-12 03:23:52,885.885 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:23:52,917.917 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 03:23:52,918.918 INFO    ] No update needed
[2026-06-12 03:23:52,920.920 INFO    ] Checking for camera pi updates...
[2026-06-12 03:23:52,945.945 INFO    ] 200
[2026-06-12 03:23:52,946.946 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:23:52,971.971 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 03:23:53,004.004 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 03:23:53,006.006 INFO    ] No camera update needed
[2026-06-12 03:23:53,007.007 INFO    ] Script finished. Safe exiting...
[2026-06-12 03:23:53,008.008 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 03:23:53,011.011 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 03:23:53,014.014 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 03:23:55,054.054 INFO    ] ================================================
[2026-06-12 03:23:55,069.069 INFO    ] Launching Daemon at Fri Jun 12 03:23:55 IST 2026
[2026-06-12 03:23:55,081.081 INFO    ] ================================================
[2026-06-12 03:23:55,447.447 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 03:23:55
[2026-06-12 03:23:55,759.759 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 03:23:55,888.888 INFO    ] Initializing speech engine...
[2026-06-12 03:23:55,893.893 INFO    ] 2026-06-12 03:23:55
[2026-06-12 03:23:56,111.111 INFO    ] 2026-06-12 03:23:56
[2026-06-12 03:23:56,139.139 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 03:23:56,324.324 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 03:23:56,334.334 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 03:23:56,457.457 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 03:23:56,518.518 INFO    ] time= 12/06/2026 03:23:56
[2026-06-12 03:23:56,542.542 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 03:23:56,559.559 INFO    ] Checking for existing commands in stream...
[2026-06-12 03:23:56,631.631 INFO    ] No existing commands found in stream
[2026-06-12 03:24:01,640.640 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 03:24:01,642.642 INFO    ] Waiting 3.04 seconds before fallback handling...
[2026-06-12 03:24:05,044.044 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 03:24:05,046.046 INFO    ] Checking for system updates...
[2026-06-12 03:24:05,067.067 INFO    ] 200
[2026-06-12 03:24:05,069.069 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:24:05,099.099 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 03:24:05,100.100 INFO    ] No update needed
[2026-06-12 03:24:05,102.102 INFO    ] Checking for camera pi updates...
[2026-06-12 03:24:05,122.122 INFO    ] 200
[2026-06-12 03:24:05,123.123 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:24:05,148.148 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 03:24:05,189.189 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 03:24:05,191.191 INFO    ] No camera update needed
[2026-06-12 03:24:05,192.192 INFO    ] Script finished. Safe exiting...
[2026-06-12 03:24:05,193.193 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 03:24:05,196.196 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 03:24:05,199.199 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 03:24:07,238.238 INFO    ] ================================================
[2026-06-12 03:24:07,254.254 INFO    ] Launching Daemon at Fri Jun 12 03:24:07 IST 2026
[2026-06-12 03:24:07,265.265 INFO    ] ================================================
[2026-06-12 03:24:07,609.609 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 03:24:07
[2026-06-12 03:24:07,933.933 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 03:24:08,073.073 INFO    ] Initializing speech engine...
[2026-06-12 03:24:08,080.080 INFO    ] 2026-06-12 03:24:08
[2026-06-12 03:24:08,322.322 INFO    ] 2026-06-12 03:24:08
[2026-06-12 03:24:08,345.345 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 03:24:08,518.518 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 03:24:08,527.527 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 03:24:08,649.649 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 03:24:08,705.705 INFO    ] time= 12/06/2026 03:24:08
[2026-06-12 03:24:08,739.739 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 03:24:08,749.749 INFO    ] Checking for existing commands in stream...
[2026-06-12 03:24:08,820.820 INFO    ] No existing commands found in stream
[2026-06-12 03:24:13,829.829 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 03:24:13,832.832 INFO    ] Waiting 3.29 seconds before fallback handling...
[2026-06-12 03:24:17,462.462 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 03:24:17,463.463 INFO    ] Checking for system updates...
[2026-06-12 03:24:17,485.485 INFO    ] 200
[2026-06-12 03:24:17,486.486 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:24:17,517.517 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 03:24:17,519.519 INFO    ] No update needed
[2026-06-12 03:24:17,520.520 INFO    ] Checking for camera pi updates...
[2026-06-12 03:24:17,540.540 INFO    ] 200
[2026-06-12 03:24:17,542.542 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:24:17,567.567 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 03:24:17,704.704 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 03:24:17,705.705 INFO    ] No camera update needed
[2026-06-12 03:24:17,707.707 INFO    ] Script finished. Safe exiting...
[2026-06-12 03:24:17,708.708 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 03:24:17,711.711 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 03:24:17,714.714 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 03:24:19,744.744 INFO    ] ================================================
[2026-06-12 03:24:19,753.753 INFO    ] Launching Daemon at Fri Jun 12 03:24:19 IST 2026
[2026-06-12 03:24:19,760.760 INFO    ] ================================================
[2026-06-12 03:24:20,117.117 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 03:24:20
[2026-06-12 03:24:20,431.431 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 03:24:20,560.560 INFO    ] Initializing speech engine...
[2026-06-12 03:24:20,569.569 INFO    ] 2026-06-12 03:24:20
[2026-06-12 03:24:20,785.785 INFO    ] 2026-06-12 03:24:20
[2026-06-12 03:24:20,814.814 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 03:24:21,001.001 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 03:24:21,009.009 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 03:24:21,152.152 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 03:24:21,211.211 INFO    ] time= 12/06/2026 03:24:21
[2026-06-12 03:24:21,234.234 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 03:24:21,240.240 INFO    ] Checking for existing commands in stream...
[2026-06-12 03:24:21,307.307 INFO    ] No existing commands found in stream
[2026-06-12 03:24:26,317.317 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 03:24:26,320.320 INFO    ] Waiting 0.49 seconds before fallback handling...
[2026-06-12 03:24:27,200.200 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 03:24:27,202.202 INFO    ] Checking for system updates...
[2026-06-12 03:24:27,223.223 INFO    ] 200
[2026-06-12 03:24:27,225.225 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:24:27,257.257 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 03:24:27,258.258 INFO    ] No update needed
[2026-06-12 03:24:27,259.259 INFO    ] Checking for camera pi updates...
[2026-06-12 03:24:27,280.280 INFO    ] 200
[2026-06-12 03:24:27,282.282 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:24:27,305.305 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 03:24:27,345.345 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 03:24:27,346.346 INFO    ] No camera update needed
[2026-06-12 03:24:27,347.347 INFO    ] Script finished. Safe exiting...
[2026-06-12 03:24:27,348.348 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 03:24:27,351.351 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 03:24:27,354.354 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 03:24:29,393.393 INFO    ] ================================================
[2026-06-12 03:24:29,409.409 INFO    ] Launching Daemon at Fri Jun 12 03:24:29 IST 2026
[2026-06-12 03:24:29,421.421 INFO    ] ================================================
[2026-06-12 03:24:29,763.763 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 03:24:29
[2026-06-12 03:24:30,073.073 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 03:24:30,203.203 INFO    ] Initializing speech engine...
[2026-06-12 03:24:30,210.210 INFO    ] 2026-06-12 03:24:30
[2026-06-12 03:24:30,430.430 INFO    ] 2026-06-12 03:24:30
[2026-06-12 03:24:30,460.460 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 03:24:30,584.584 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 03:24:30,646.646 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 03:24:30,788.788 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 03:24:30,848.848 INFO    ] time= 12/06/2026 03:24:30
[2026-06-12 03:24:30,877.877 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 03:24:30,887.887 INFO    ] Checking for existing commands in stream...
[2026-06-12 03:24:30,959.959 INFO    ] No existing commands found in stream
[2026-06-12 03:24:35,968.968 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 03:24:35,971.971 INFO    ] Waiting 1.77 seconds before fallback handling...
[2026-06-12 03:24:38,092.092 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 03:24:38,094.094 INFO    ] Checking for system updates...
[2026-06-12 03:24:38,116.116 INFO    ] 200
[2026-06-12 03:24:38,117.117 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:24:38,150.150 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 03:24:38,151.151 INFO    ] No update needed
[2026-06-12 03:24:38,152.152 INFO    ] Checking for camera pi updates...
[2026-06-12 03:24:38,172.172 INFO    ] 200
[2026-06-12 03:24:38,173.173 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:24:38,199.199 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 03:24:38,232.232 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 03:24:38,233.233 INFO    ] No camera update needed
[2026-06-12 03:24:38,234.234 INFO    ] Script finished. Safe exiting...
[2026-06-12 03:24:38,236.236 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 03:24:38,239.239 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 03:24:38,241.241 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 03:24:40,281.281 INFO    ] ================================================
[2026-06-12 03:24:40,297.297 INFO    ] Launching Daemon at Fri Jun 12 03:24:40 IST 2026
[2026-06-12 03:24:40,308.308 INFO    ] ================================================
[2026-06-12 03:24:40,660.660 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 03:24:40
[2026-06-12 03:24:40,979.979 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 03:24:41,114.114 INFO    ] Initializing speech engine...
[2026-06-12 03:24:41,126.126 INFO    ] 2026-06-12 03:24:41
[2026-06-12 03:24:41,333.333 INFO    ] 2026-06-12 03:24:41
[2026-06-12 03:24:41,362.362 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 03:24:41,529.529 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 03:24:41,555.555 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 03:24:41,687.687 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 03:24:41,748.748 INFO    ] time= 12/06/2026 03:24:41
[2026-06-12 03:24:41,782.782 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 03:24:41,787.787 INFO    ] Checking for existing commands in stream...
[2026-06-12 03:24:41,863.863 INFO    ] No existing commands found in stream
[2026-06-12 03:24:46,872.872 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 03:24:46,875.875 INFO    ] Waiting 1.02 seconds before fallback handling...
[2026-06-12 03:24:48,302.302 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 03:24:48,304.304 INFO    ] Checking for system updates...
[2026-06-12 03:24:48,328.328 INFO    ] 200
[2026-06-12 03:24:48,330.330 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:24:48,364.364 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 03:24:48,366.366 INFO    ] No update needed
[2026-06-12 03:24:48,367.367 INFO    ] Checking for camera pi updates...
[2026-06-12 03:24:48,392.392 INFO    ] 200
[2026-06-12 03:24:48,394.394 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:24:48,420.420 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 03:24:48,461.461 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 03:24:48,463.463 INFO    ] No camera update needed
[2026-06-12 03:24:48,465.465 INFO    ] Script finished. Safe exiting...
[2026-06-12 03:24:48,467.467 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 03:24:48,472.472 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 03:24:48,475.475 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 03:24:50,501.501 INFO    ] ================================================
[2026-06-12 03:24:50,510.510 INFO    ] Launching Daemon at Fri Jun 12 03:24:50 IST 2026
[2026-06-12 03:24:50,516.516 INFO    ] ================================================
[2026-06-12 03:24:50,840.840 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 03:24:50
[2026-06-12 03:24:51,173.173 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 03:24:51,314.314 INFO    ] Initializing speech engine...
[2026-06-12 03:24:51,322.322 INFO    ] 2026-06-12 03:24:51
[2026-06-12 03:24:51,547.547 INFO    ] 2026-06-12 03:24:51
[2026-06-12 03:24:51,578.578 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 03:24:51,699.699 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 03:24:51,717.717 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 03:24:51,882.882 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 03:24:51,913.913 INFO    ] time= 12/06/2026 03:24:51
[2026-06-12 03:24:51,971.971 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 03:24:52,022.022 INFO    ] Checking for existing commands in stream...
[2026-06-12 03:24:52,102.102 INFO    ] No existing commands found in stream
[2026-06-12 03:24:57,111.111 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 03:24:57,114.114 INFO    ] Waiting 2.88 seconds before fallback handling...
[2026-06-12 03:25:00,360.360 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 03:25:00,362.362 INFO    ] Checking for system updates...
[2026-06-12 03:25:00,384.384 INFO    ] 200
[2026-06-12 03:25:00,385.385 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:25:00,417.417 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 03:25:00,419.419 INFO    ] No update needed
[2026-06-12 03:25:00,420.420 INFO    ] Checking for camera pi updates...
[2026-06-12 03:25:00,439.439 INFO    ] 200
[2026-06-12 03:25:00,441.441 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:25:00,464.464 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 03:25:00,501.501 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 03:25:00,502.502 INFO    ] No camera update needed
[2026-06-12 03:25:00,503.503 INFO    ] Script finished. Safe exiting...
[2026-06-12 03:25:00,505.505 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 03:25:00,507.507 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 03:25:00,510.510 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 03:25:02,544.544 INFO    ] ================================================
[2026-06-12 03:25:02,557.557 INFO    ] Launching Daemon at Fri Jun 12 03:25:02 IST 2026
[2026-06-12 03:25:02,567.567 INFO    ] ================================================
[2026-06-12 03:25:02,961.961 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 03:25:02
[2026-06-12 03:25:03,326.326 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 03:25:03,476.476 INFO    ] Initializing speech engine...
[2026-06-12 03:25:03,482.482 INFO    ] 2026-06-12 03:25:03
[2026-06-12 03:25:03,688.688 INFO    ] 2026-06-12 03:25:03
[2026-06-12 03:25:03,716.716 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 03:25:03,908.908 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 03:25:03,920.920 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 03:25:04,081.081 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 03:25:04,126.126 INFO    ] time= 12/06/2026 03:25:04
[2026-06-12 03:25:04,142.142 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 03:25:04,148.148 INFO    ] Checking for existing commands in stream...
[2026-06-12 03:25:04,218.218 INFO    ] No existing commands found in stream
[2026-06-12 03:25:09,229.229 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 03:25:09,232.232 INFO    ] Waiting 3.43 seconds before fallback handling...
[2026-06-12 03:25:13,080.080 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 03:25:13,081.081 INFO    ] Checking for system updates...
[2026-06-12 03:25:13,104.104 INFO    ] 200
[2026-06-12 03:25:13,105.105 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:25:13,137.137 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 03:25:13,139.139 INFO    ] No update needed
[2026-06-12 03:25:13,140.140 INFO    ] Checking for camera pi updates...
[2026-06-12 03:25:13,161.161 INFO    ] 200
[2026-06-12 03:25:13,162.162 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:25:13,185.185 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 03:25:13,233.233 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 03:25:13,235.235 INFO    ] No camera update needed
[2026-06-12 03:25:13,236.236 INFO    ] Script finished. Safe exiting...
[2026-06-12 03:25:13,237.237 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 03:25:13,241.241 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 03:25:13,243.243 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 03:25:15,273.273 INFO    ] ================================================
[2026-06-12 03:25:15,282.282 INFO    ] Launching Daemon at Fri Jun 12 03:25:15 IST 2026
[2026-06-12 03:25:15,288.288 INFO    ] ================================================
[2026-06-12 03:25:15,599.599 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 03:25:15
[2026-06-12 03:25:15,911.911 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 03:25:16,041.041 INFO    ] Initializing speech engine...
[2026-06-12 03:25:16,044.044 INFO    ] 2026-06-12 03:25:16
[2026-06-12 03:25:16,269.269 INFO    ] 2026-06-12 03:25:16
[2026-06-12 03:25:16,299.299 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 03:25:16,426.426 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 03:25:16,464.464 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 03:25:16,629.629 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 03:25:16,695.695 INFO    ] time= 12/06/2026 03:25:16
[2026-06-12 03:25:16,724.724 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 03:25:16,731.731 INFO    ] Checking for existing commands in stream...
[2026-06-12 03:25:16,823.823 INFO    ] No existing commands found in stream
[2026-06-12 03:25:21,832.832 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 03:25:21,834.834 INFO    ] Waiting 0.54 seconds before fallback handling...
[2026-06-12 03:25:22,719.719 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 03:25:22,721.721 INFO    ] Checking for system updates...
[2026-06-12 03:25:22,743.743 INFO    ] 200
[2026-06-12 03:25:22,744.744 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:25:22,777.777 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 03:25:22,778.778 INFO    ] No update needed
[2026-06-12 03:25:22,780.780 INFO    ] Checking for camera pi updates...
[2026-06-12 03:25:22,801.801 INFO    ] 200
[2026-06-12 03:25:22,802.802 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:25:22,827.827 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 03:25:22,869.869 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 03:25:22,871.871 INFO    ] No camera update needed
[2026-06-12 03:25:22,872.872 INFO    ] Script finished. Safe exiting...
[2026-06-12 03:25:22,873.873 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 03:25:22,876.876 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 03:25:22,879.879 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 03:25:24,918.918 INFO    ] ================================================
[2026-06-12 03:25:24,934.934 INFO    ] Launching Daemon at Fri Jun 12 03:25:24 IST 2026
[2026-06-12 03:25:24,944.944 INFO    ] ================================================
[2026-06-12 03:25:25,299.299 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 03:25:25
[2026-06-12 03:25:25,616.616 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 03:25:25,760.760 INFO    ] Initializing speech engine...
[2026-06-12 03:25:25,766.766 INFO    ] 2026-06-12 03:25:25
[2026-06-12 03:25:25,970.970 INFO    ] 2026-06-12 03:25:25
[2026-06-12 03:25:25,998.998 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 03:25:26,182.182 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 03:25:26,192.192 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 03:25:26,349.349 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 03:25:26,397.397 INFO    ] time= 12/06/2026 03:25:26
[2026-06-12 03:25:26,421.421 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 03:25:26,426.426 INFO    ] Checking for existing commands in stream...
[2026-06-12 03:25:26,494.494 INFO    ] No existing commands found in stream
[2026-06-12 03:25:31,503.503 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 03:25:31,505.505 INFO    ] Waiting 2.16 seconds before fallback handling...
[2026-06-12 03:25:34,041.041 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 03:25:34,043.043 INFO    ] Checking for system updates...
[2026-06-12 03:25:34,064.064 INFO    ] 200
[2026-06-12 03:25:34,065.065 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:25:34,098.098 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 03:25:34,099.099 INFO    ] No update needed
[2026-06-12 03:25:34,101.101 INFO    ] Checking for camera pi updates...
[2026-06-12 03:25:34,120.120 INFO    ] 200
[2026-06-12 03:25:34,122.122 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:25:34,147.147 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 03:25:34,183.183 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 03:25:34,185.185 INFO    ] No camera update needed
[2026-06-12 03:25:34,186.186 INFO    ] Script finished. Safe exiting...
[2026-06-12 03:25:34,187.187 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 03:25:34,190.190 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 03:25:34,193.193 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 03:25:36,232.232 INFO    ] ================================================
[2026-06-12 03:25:36,248.248 INFO    ] Launching Daemon at Fri Jun 12 03:25:36 IST 2026
[2026-06-12 03:25:36,259.259 INFO    ] ================================================
[2026-06-12 03:25:36,628.628 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 03:25:36
[2026-06-12 03:25:36,946.946 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 03:25:37,090.090 INFO    ] Initializing speech engine...
[2026-06-12 03:25:37,095.095 INFO    ] 2026-06-12 03:25:37
[2026-06-12 03:25:37,300.300 INFO    ] 2026-06-12 03:25:37
[2026-06-12 03:25:37,328.328 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 03:25:37,520.520 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 03:25:37,523.523 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 03:25:37,660.660 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 03:25:37,719.719 INFO    ] time= 12/06/2026 03:25:37
[2026-06-12 03:25:37,751.751 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 03:25:37,753.753 INFO    ] Checking for existing commands in stream...
[2026-06-12 03:25:37,872.872 INFO    ] No existing commands found in stream
[2026-06-12 03:25:42,882.882 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 03:25:42,885.885 INFO    ] Waiting 2.52 seconds before fallback handling...
[2026-06-12 03:25:45,784.784 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 03:25:45,785.785 INFO    ] Checking for system updates...
[2026-06-12 03:25:45,808.808 INFO    ] 200
[2026-06-12 03:25:45,810.810 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:25:45,843.843 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 03:25:45,844.844 INFO    ] No update needed
[2026-06-12 03:25:45,845.845 INFO    ] Checking for camera pi updates...
[2026-06-12 03:25:45,866.866 INFO    ] 200
[2026-06-12 03:25:45,868.868 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:25:45,893.893 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 03:25:45,932.932 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 03:25:45,933.933 INFO    ] No camera update needed
[2026-06-12 03:25:45,934.934 INFO    ] Script finished. Safe exiting...
[2026-06-12 03:25:45,936.936 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 03:25:45,939.939 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 03:25:45,941.941 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 03:25:47,982.982 INFO    ] ================================================
[2026-06-12 03:25:48,998.998 INFO    ] Launching Daemon at Fri Jun 12 03:25:47 IST 2026
[2026-06-12 03:25:48,010.010 INFO    ] ================================================
[2026-06-12 03:25:48,385.385 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 03:25:48
[2026-06-12 03:25:48,703.703 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 03:25:48,834.834 INFO    ] Initializing speech engine...
[2026-06-12 03:25:48,847.847 INFO    ] 2026-06-12 03:25:48
[2026-06-12 03:25:49,053.053 INFO    ] 2026-06-12 03:25:49
[2026-06-12 03:25:49,081.081 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 03:25:49,264.264 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 03:25:49,273.273 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 03:25:49,418.418 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 03:25:49,470.470 INFO    ] time= 12/06/2026 03:25:49
[2026-06-12 03:25:49,493.493 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 03:25:49,499.499 INFO    ] Checking for existing commands in stream...
[2026-06-12 03:25:49,565.565 INFO    ] No existing commands found in stream
[2026-06-12 03:25:54,579.579 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 03:25:54,582.582 INFO    ] Waiting 0.09 seconds before fallback handling...
[2026-06-12 03:25:55,049.049 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 03:25:55,051.051 INFO    ] Checking for system updates...
[2026-06-12 03:25:55,073.073 INFO    ] 200
[2026-06-12 03:25:55,075.075 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:25:55,109.109 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 03:25:55,111.111 INFO    ] No update needed
[2026-06-12 03:25:55,112.112 INFO    ] Checking for camera pi updates...
[2026-06-12 03:25:55,134.134 INFO    ] 200
[2026-06-12 03:25:55,135.135 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:25:55,163.163 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 03:25:55,200.200 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 03:25:55,202.202 INFO    ] No camera update needed
[2026-06-12 03:25:55,203.203 INFO    ] Script finished. Safe exiting...
[2026-06-12 03:25:55,205.205 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 03:25:55,208.208 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 03:25:55,211.211 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 03:25:57,250.250 INFO    ] ================================================
[2026-06-12 03:25:57,278.278 INFO    ] Launching Daemon at Fri Jun 12 03:25:57 IST 2026
[2026-06-12 03:25:57,289.289 INFO    ] ================================================
[2026-06-12 03:25:57,651.651 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 03:25:57
[2026-06-12 03:25:57,967.967 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 03:25:58,111.111 INFO    ] Initializing speech engine...
[2026-06-12 03:25:58,117.117 INFO    ] 2026-06-12 03:25:58
[2026-06-12 03:25:58,321.321 INFO    ] 2026-06-12 03:25:58
[2026-06-12 03:25:58,349.349 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 03:25:58,532.532 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 03:25:58,536.536 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 03:25:58,688.688 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 03:25:58,740.740 INFO    ] time= 12/06/2026 03:25:58
[2026-06-12 03:25:58,764.764 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 03:25:58,770.770 INFO    ] Checking for existing commands in stream...
[2026-06-12 03:25:58,837.837 INFO    ] No existing commands found in stream
[2026-06-12 03:26:03,845.845 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 03:26:03,846.846 INFO    ] Waiting 3.50 seconds before fallback handling...
[2026-06-12 03:26:07,739.739 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 03:26:07,741.741 INFO    ] Checking for system updates...
[2026-06-12 03:26:07,763.763 INFO    ] 200
[2026-06-12 03:26:07,764.764 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:26:07,794.794 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 03:26:07,795.795 INFO    ] No update needed
[2026-06-12 03:26:07,797.797 INFO    ] Checking for camera pi updates...
[2026-06-12 03:26:07,817.817 INFO    ] 200
[2026-06-12 03:26:07,819.819 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:26:07,842.842 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 03:26:07,883.883 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 03:26:07,884.884 INFO    ] No camera update needed
[2026-06-12 03:26:07,885.885 INFO    ] Script finished. Safe exiting...
[2026-06-12 03:26:07,887.887 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 03:26:07,890.890 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 03:26:07,892.892 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 03:26:09,931.931 INFO    ] ================================================
[2026-06-12 03:26:09,946.946 INFO    ] Launching Daemon at Fri Jun 12 03:26:09 IST 2026
[2026-06-12 03:26:09,957.957 INFO    ] ================================================
[2026-06-12 03:26:10,282.282 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 03:26:10
[2026-06-12 03:26:10,594.594 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 03:26:10,725.725 INFO    ] Initializing speech engine...
[2026-06-12 03:26:10,733.733 INFO    ] 2026-06-12 03:26:10
[2026-06-12 03:26:10,947.947 INFO    ] 2026-06-12 03:26:10
[2026-06-12 03:26:10,975.975 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 03:26:11,162.162 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 03:26:11,170.170 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 03:26:11,295.295 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 03:26:11,356.356 INFO    ] time= 12/06/2026 03:26:11
[2026-06-12 03:26:11,380.380 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 03:26:11,396.396 INFO    ] Checking for existing commands in stream...
[2026-06-12 03:26:11,469.469 INFO    ] No existing commands found in stream
[2026-06-12 03:26:16,483.483 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 03:26:16,486.486 INFO    ] Waiting 0.73 seconds before fallback handling...
[2026-06-12 03:26:17,600.600 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 03:26:17,602.602 INFO    ] Checking for system updates...
[2026-06-12 03:26:17,623.623 INFO    ] 200
[2026-06-12 03:26:17,625.625 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:26:17,657.657 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 03:26:17,659.659 INFO    ] No update needed
[2026-06-12 03:26:17,660.660 INFO    ] Checking for camera pi updates...
[2026-06-12 03:26:17,681.681 INFO    ] 200
[2026-06-12 03:26:17,682.682 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:26:17,706.706 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 03:26:17,747.747 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 03:26:17,748.748 INFO    ] No camera update needed
[2026-06-12 03:26:17,750.750 INFO    ] Script finished. Safe exiting...
[2026-06-12 03:26:17,751.751 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 03:26:17,754.754 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 03:26:17,757.757 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 03:26:19,795.795 INFO    ] ================================================
[2026-06-12 03:26:19,810.810 INFO    ] Launching Daemon at Fri Jun 12 03:26:19 IST 2026
[2026-06-12 03:26:19,821.821 INFO    ] ================================================
[2026-06-12 03:26:20,167.167 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 03:26:20
[2026-06-12 03:26:20,482.482 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 03:26:20,614.614 INFO    ] Initializing speech engine...
[2026-06-12 03:26:20,617.617 INFO    ] 2026-06-12 03:26:20
[2026-06-12 03:26:20,833.833 INFO    ] 2026-06-12 03:26:20
[2026-06-12 03:26:20,861.861 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 03:26:21,046.046 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 03:26:21,054.054 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 03:26:21,184.184 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 03:26:21,250.250 INFO    ] time= 12/06/2026 03:26:21
[2026-06-12 03:26:21,274.274 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 03:26:21,280.280 INFO    ] Checking for existing commands in stream...
[2026-06-12 03:26:21,371.371 INFO    ] No existing commands found in stream
[2026-06-12 03:26:26,379.379 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 03:26:26,381.381 INFO    ] Waiting 2.36 seconds before fallback handling...
[2026-06-12 03:26:29,123.123 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 03:26:29,124.124 INFO    ] Checking for system updates...
[2026-06-12 03:26:29,145.145 INFO    ] 200
[2026-06-12 03:26:29,147.147 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:26:29,180.180 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 03:26:29,181.181 INFO    ] No update needed
[2026-06-12 03:26:29,182.182 INFO    ] Checking for camera pi updates...
[2026-06-12 03:26:29,203.203 INFO    ] 200
[2026-06-12 03:26:29,205.205 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:26:29,229.229 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 03:26:29,377.377 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 03:26:29,378.378 INFO    ] No camera update needed
[2026-06-12 03:26:29,380.380 INFO    ] Script finished. Safe exiting...
[2026-06-12 03:26:29,381.381 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 03:26:29,384.384 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 03:26:29,387.387 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 03:26:31,425.425 INFO    ] ================================================
[2026-06-12 03:26:31,443.443 INFO    ] Launching Daemon at Fri Jun 12 03:26:31 IST 2026
[2026-06-12 03:26:31,456.456 INFO    ] ================================================
[2026-06-12 03:26:31,809.809 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 03:26:31
[2026-06-12 03:26:32,155.155 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 03:26:32,295.295 INFO    ] Initializing speech engine...
[2026-06-12 03:26:32,307.307 INFO    ] 2026-06-12 03:26:32
[2026-06-12 03:26:32,515.515 INFO    ] 2026-06-12 03:26:32
[2026-06-12 03:26:32,544.544 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 03:26:32,726.726 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 03:26:32,735.735 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 03:26:32,880.880 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 03:26:32,932.932 INFO    ] time= 12/06/2026 03:26:32
[2026-06-12 03:26:32,955.955 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 03:26:32,961.961 INFO    ] Checking for existing commands in stream...
[2026-06-12 03:26:33,027.027 INFO    ] No existing commands found in stream
[2026-06-12 03:26:38,036.036 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 03:26:38,039.039 INFO    ] Waiting 3.56 seconds before fallback handling...
[2026-06-12 03:26:42,004.004 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 03:26:42,006.006 INFO    ] Checking for system updates...
[2026-06-12 03:26:42,048.048 INFO    ] 200
[2026-06-12 03:26:42,051.051 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:26:42,112.112 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 03:26:42,114.114 INFO    ] No update needed
[2026-06-12 03:26:42,117.117 INFO    ] Checking for camera pi updates...
[2026-06-12 03:26:42,146.146 INFO    ] 200
[2026-06-12 03:26:42,147.147 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:26:42,173.173 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 03:26:42,206.206 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 03:26:42,208.208 INFO    ] No camera update needed
[2026-06-12 03:26:42,209.209 INFO    ] Script finished. Safe exiting...
[2026-06-12 03:26:42,210.210 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 03:26:42,213.213 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 03:26:42,216.216 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 03:26:44,256.256 INFO    ] ================================================
[2026-06-12 03:26:44,271.271 INFO    ] Launching Daemon at Fri Jun 12 03:26:44 IST 2026
[2026-06-12 03:26:44,282.282 INFO    ] ================================================
[2026-06-12 03:26:44,653.653 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 03:26:44
[2026-06-12 03:26:44,969.969 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 03:26:45,114.114 INFO    ] Initializing speech engine...
[2026-06-12 03:26:45,119.119 INFO    ] 2026-06-12 03:26:45
[2026-06-12 03:26:45,322.322 INFO    ] 2026-06-12 03:26:45
[2026-06-12 03:26:45,351.351 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 03:26:45,534.534 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 03:26:45,544.544 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 03:26:45,666.666 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 03:26:45,727.727 INFO    ] time= 12/06/2026 03:26:45
[2026-06-12 03:26:45,764.764 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 03:26:45,766.766 INFO    ] Checking for existing commands in stream...
[2026-06-12 03:26:45,837.837 INFO    ] No existing commands found in stream
[2026-06-12 03:26:50,846.846 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 03:26:50,849.849 INFO    ] Waiting 1.12 seconds before fallback handling...
[2026-06-12 03:26:52,337.337 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 03:26:52,338.338 INFO    ] Checking for system updates...
[2026-06-12 03:26:52,361.361 INFO    ] 200
[2026-06-12 03:26:52,362.362 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:26:52,395.395 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 03:26:52,396.396 INFO    ] No update needed
[2026-06-12 03:26:52,397.397 INFO    ] Checking for camera pi updates...
[2026-06-12 03:26:52,417.417 INFO    ] 200
[2026-06-12 03:26:52,419.419 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:26:52,444.444 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 03:26:52,480.480 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 03:26:52,486.486 INFO    ] No camera update needed
[2026-06-12 03:26:52,488.488 INFO    ] Script finished. Safe exiting...
[2026-06-12 03:26:52,489.489 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 03:26:52,493.493 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 03:26:52,496.496 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 03:26:54,534.534 INFO    ] ================================================
[2026-06-12 03:26:54,549.549 INFO    ] Launching Daemon at Fri Jun 12 03:26:54 IST 2026
[2026-06-12 03:26:54,560.560 INFO    ] ================================================
[2026-06-12 03:26:54,895.895 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 03:26:54
[2026-06-12 03:26:55,211.211 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 03:26:55,356.356 INFO    ] Initializing speech engine...
[2026-06-12 03:26:55,361.361 INFO    ] 2026-06-12 03:26:55
[2026-06-12 03:26:55,564.564 INFO    ] 2026-06-12 03:26:55
[2026-06-12 03:26:55,593.593 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 03:26:55,777.777 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 03:26:55,785.785 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 03:26:55,926.926 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 03:26:55,983.983 INFO    ] time= 12/06/2026 03:26:55
[2026-06-12 03:26:56,007.007 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 03:26:56,012.012 INFO    ] Checking for existing commands in stream...
[2026-06-12 03:26:56,080.080 INFO    ] No existing commands found in stream
[2026-06-12 03:27:01,089.089 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 03:27:01,092.092 INFO    ] Waiting 3.10 seconds before fallback handling...
[2026-06-12 03:27:04,559.559 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 03:27:04,561.561 INFO    ] Checking for system updates...
[2026-06-12 03:27:04,584.584 INFO    ] 200
[2026-06-12 03:27:04,585.585 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:27:04,618.618 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 03:27:04,620.620 INFO    ] No update needed
[2026-06-12 03:27:04,621.621 INFO    ] Checking for camera pi updates...
[2026-06-12 03:27:04,642.642 INFO    ] 200
[2026-06-12 03:27:04,643.643 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:27:04,671.671 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 03:27:04,708.708 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 03:27:04,709.709 INFO    ] No camera update needed
[2026-06-12 03:27:04,711.711 INFO    ] Script finished. Safe exiting...
[2026-06-12 03:27:04,712.712 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 03:27:04,715.715 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 03:27:04,718.718 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 03:27:06,756.756 INFO    ] ================================================
[2026-06-12 03:27:06,771.771 INFO    ] Launching Daemon at Fri Jun 12 03:27:06 IST 2026
[2026-06-12 03:27:06,783.783 INFO    ] ================================================
[2026-06-12 03:27:07,151.151 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 03:27:07
[2026-06-12 03:27:07,465.465 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 03:27:07,598.598 INFO    ] Initializing speech engine...
[2026-06-12 03:27:07,602.602 INFO    ] 2026-06-12 03:27:07
[2026-06-12 03:27:07,818.818 INFO    ] 2026-06-12 03:27:07
[2026-06-12 03:27:07,848.848 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 03:27:08,066.066 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 03:27:08,071.071 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 03:27:08,215.215 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 03:27:08,270.270 INFO    ] time= 12/06/2026 03:27:08
[2026-06-12 03:27:08,304.304 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 03:27:08,322.322 INFO    ] Checking for existing commands in stream...
[2026-06-12 03:27:08,424.424 INFO    ] No existing commands found in stream
[2026-06-12 03:27:13,433.433 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 03:27:13,435.435 INFO    ] Waiting 2.00 seconds before fallback handling...
[2026-06-12 03:27:15,787.787 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 03:27:15,789.789 INFO    ] Checking for system updates...
[2026-06-12 03:27:15,811.811 INFO    ] 200
[2026-06-12 03:27:15,812.812 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:27:15,842.842 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 03:27:15,844.844 INFO    ] No update needed
[2026-06-12 03:27:15,845.845 INFO    ] Checking for camera pi updates...
[2026-06-12 03:27:15,868.868 INFO    ] 200
[2026-06-12 03:27:15,869.869 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:27:15,893.893 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 03:27:15,937.937 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 03:27:15,939.939 INFO    ] No camera update needed
[2026-06-12 03:27:15,940.940 INFO    ] Script finished. Safe exiting...
[2026-06-12 03:27:15,942.942 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 03:27:15,944.944 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 03:27:15,947.947 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 03:27:17,985.985 INFO    ] ================================================
[2026-06-12 03:27:18,000.000 INFO    ] Launching Daemon at Fri Jun 12 03:27:17 IST 2026
[2026-06-12 03:27:18,011.011 INFO    ] ================================================
[2026-06-12 03:27:18,369.369 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 03:27:18
[2026-06-12 03:27:18,687.687 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 03:27:18,825.825 INFO    ] Initializing speech engine...
[2026-06-12 03:27:18,835.835 INFO    ] 2026-06-12 03:27:18
[2026-06-12 03:27:19,037.037 INFO    ] 2026-06-12 03:27:19
[2026-06-12 03:27:19,070.070 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 03:27:19,253.253 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 03:27:19,256.256 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 03:27:19,391.391 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 03:27:19,458.458 INFO    ] time= 12/06/2026 03:27:19
[2026-06-12 03:27:19,482.482 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 03:27:19,489.489 INFO    ] Checking for existing commands in stream...
[2026-06-12 03:27:19,556.556 INFO    ] No existing commands found in stream
[2026-06-12 03:27:24,580.580 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 03:27:24,583.583 INFO    ] Waiting 2.62 seconds before fallback handling...
[2026-06-12 03:27:27,587.587 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 03:27:27,588.588 INFO    ] Checking for system updates...
[2026-06-12 03:27:27,615.615 INFO    ] 200
[2026-06-12 03:27:27,616.616 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:27:27,655.655 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 03:27:27,656.656 INFO    ] No update needed
[2026-06-12 03:27:27,658.658 INFO    ] Checking for camera pi updates...
[2026-06-12 03:27:27,681.681 INFO    ] 200
[2026-06-12 03:27:27,682.682 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:27:27,707.707 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 03:27:27,742.742 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 03:27:27,743.743 INFO    ] No camera update needed
[2026-06-12 03:27:27,745.745 INFO    ] Script finished. Safe exiting...
[2026-06-12 03:27:27,746.746 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 03:27:27,749.749 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 03:27:27,752.752 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 03:27:29,791.791 INFO    ] ================================================
[2026-06-12 03:27:29,806.806 INFO    ] Launching Daemon at Fri Jun 12 03:27:29 IST 2026
[2026-06-12 03:27:29,818.818 INFO    ] ================================================
[2026-06-12 03:27:30,192.192 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 03:27:30
[2026-06-12 03:27:30,508.508 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 03:27:30,642.642 INFO    ] Initializing speech engine...
[2026-06-12 03:27:30,654.654 INFO    ] 2026-06-12 03:27:30
[2026-06-12 03:27:30,861.861 INFO    ] 2026-06-12 03:27:30
[2026-06-12 03:27:30,889.889 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 03:27:31,011.011 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 03:27:31,074.074 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 03:27:31,211.211 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 03:27:31,278.278 INFO    ] time= 12/06/2026 03:27:31
[2026-06-12 03:27:31,302.302 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 03:27:31,308.308 INFO    ] Checking for existing commands in stream...
[2026-06-12 03:27:31,399.399 INFO    ] No existing commands found in stream
[2026-06-12 03:27:36,408.408 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 03:27:36,411.411 INFO    ] Waiting 3.59 seconds before fallback handling...
[2026-06-12 03:27:40,377.377 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 03:27:40,378.378 INFO    ] Checking for system updates...
[2026-06-12 03:27:40,400.400 INFO    ] 200
[2026-06-12 03:27:40,402.402 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:27:40,434.434 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 03:27:40,436.436 INFO    ] No update needed
[2026-06-12 03:27:40,437.437 INFO    ] Checking for camera pi updates...
[2026-06-12 03:27:40,458.458 INFO    ] 200
[2026-06-12 03:27:40,459.459 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:27:40,483.483 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 03:27:40,521.521 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 03:27:40,522.522 INFO    ] No camera update needed
[2026-06-12 03:27:40,524.524 INFO    ] Script finished. Safe exiting...
[2026-06-12 03:27:40,525.525 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 03:27:40,528.528 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 03:27:40,531.531 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 03:27:42,571.571 INFO    ] ================================================
[2026-06-12 03:27:42,587.587 INFO    ] Launching Daemon at Fri Jun 12 03:27:42 IST 2026
[2026-06-12 03:27:42,598.598 INFO    ] ================================================
[2026-06-12 03:27:42,951.951 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 03:27:42
[2026-06-12 03:27:43,263.263 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 03:27:43,393.393 INFO    ] Initializing speech engine...
[2026-06-12 03:27:43,398.398 INFO    ] 2026-06-12 03:27:43
[2026-06-12 03:27:43,603.603 INFO    ] 2026-06-12 03:27:43
[2026-06-12 03:27:43,637.637 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 03:27:43,794.794 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 03:27:43,833.833 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 03:27:44,007.007 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 03:27:44,064.064 INFO    ] time= 12/06/2026 03:27:44
[2026-06-12 03:27:44,099.099 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 03:27:44,117.117 INFO    ] Checking for existing commands in stream...
[2026-06-12 03:27:44,198.198 INFO    ] No existing commands found in stream
[2026-06-12 03:27:49,217.217 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 03:27:49,220.220 INFO    ] Waiting 0.03 seconds before fallback handling...
[2026-06-12 03:27:49,586.586 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 03:27:49,588.588 INFO    ] Checking for system updates...
[2026-06-12 03:27:49,608.608 INFO    ] 200
[2026-06-12 03:27:49,610.610 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:27:49,643.643 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 03:27:49,644.644 INFO    ] No update needed
[2026-06-12 03:27:49,645.645 INFO    ] Checking for camera pi updates...
[2026-06-12 03:27:49,664.664 INFO    ] 200
[2026-06-12 03:27:49,666.666 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:27:49,693.693 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 03:27:49,729.729 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 03:27:49,731.731 INFO    ] No camera update needed
[2026-06-12 03:27:49,732.732 INFO    ] Script finished. Safe exiting...
[2026-06-12 03:27:49,733.733 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 03:27:49,736.736 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 03:27:49,739.739 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 03:27:51,778.778 INFO    ] ================================================
[2026-06-12 03:27:51,793.793 INFO    ] Launching Daemon at Fri Jun 12 03:27:51 IST 2026
[2026-06-12 03:27:51,804.804 INFO    ] ================================================
[2026-06-12 03:27:52,140.140 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 03:27:52
[2026-06-12 03:27:52,457.457 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 03:27:52,590.590 INFO    ] Initializing speech engine...
[2026-06-12 03:27:52,593.593 INFO    ] 2026-06-12 03:27:52
[2026-06-12 03:27:52,787.787 INFO    ] 2026-06-12 03:27:52
[2026-06-12 03:27:52,830.830 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 03:27:53,035.035 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 03:27:53,038.038 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 03:27:53,174.174 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 03:27:53,240.240 INFO    ] time= 12/06/2026 03:27:53
[2026-06-12 03:27:53,264.264 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 03:27:53,270.270 INFO    ] Checking for existing commands in stream...
[2026-06-12 03:27:53,360.360 INFO    ] No existing commands found in stream
[2026-06-12 03:27:58,374.374 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 03:27:58,377.377 INFO    ] Waiting 1.21 seconds before fallback handling...
[2026-06-12 03:27:59,978.978 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 03:27:59,979.979 INFO    ] Checking for system updates...
[2026-06-12 03:28:00,000.000 INFO    ] 200
[2026-06-12 03:28:00,001.001 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:28:00,034.034 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 03:28:00,036.036 INFO    ] No update needed
[2026-06-12 03:28:00,037.037 INFO    ] Checking for camera pi updates...
[2026-06-12 03:28:00,058.058 INFO    ] 200
[2026-06-12 03:28:00,059.059 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:28:00,082.082 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 03:28:00,117.117 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 03:28:00,119.119 INFO    ] No camera update needed
[2026-06-12 03:28:00,120.120 INFO    ] Script finished. Safe exiting...
[2026-06-12 03:28:00,121.121 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 03:28:00,124.124 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 03:28:00,127.127 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 03:28:02,161.161 INFO    ] ================================================
[2026-06-12 03:28:02,175.175 INFO    ] Launching Daemon at Fri Jun 12 03:28:02 IST 2026
[2026-06-12 03:28:02,183.183 INFO    ] ================================================
[2026-06-12 03:28:02,595.595 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 03:28:02
[2026-06-12 03:28:02,942.942 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 03:28:03,084.084 INFO    ] Initializing speech engine...
[2026-06-12 03:28:03,088.088 INFO    ] 2026-06-12 03:28:03
[2026-06-12 03:28:03,296.296 INFO    ] 2026-06-12 03:28:03
[2026-06-12 03:28:03,324.324 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 03:28:03,458.458 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 03:28:03,512.512 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 03:28:03,653.653 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 03:28:03,720.720 INFO    ] time= 12/06/2026 03:28:03
[2026-06-12 03:28:03,744.744 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 03:28:03,751.751 INFO    ] Checking for existing commands in stream...
[2026-06-12 03:28:03,819.819 INFO    ] No existing commands found in stream
[2026-06-12 03:28:08,828.828 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 03:28:08,831.831 INFO    ] Waiting 3.52 seconds before fallback handling...
[2026-06-12 03:28:12,762.762 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 03:28:12,765.765 INFO    ] Checking for system updates...
[2026-06-12 03:28:12,809.809 INFO    ] 200
[2026-06-12 03:28:12,811.811 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:28:12,875.875 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 03:28:12,877.877 INFO    ] No update needed
[2026-06-12 03:28:12,880.880 INFO    ] Checking for camera pi updates...
[2026-06-12 03:28:12,918.918 INFO    ] 200
[2026-06-12 03:28:12,920.920 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:28:12,965.965 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 03:28:13,007.007 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 03:28:13,008.008 INFO    ] No camera update needed
[2026-06-12 03:28:13,010.010 INFO    ] Script finished. Safe exiting...
[2026-06-12 03:28:13,011.011 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 03:28:13,014.014 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 03:28:13,017.017 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 03:28:15,057.057 INFO    ] ================================================
[2026-06-12 03:28:15,073.073 INFO    ] Launching Daemon at Fri Jun 12 03:28:15 IST 2026
[2026-06-12 03:28:15,085.085 INFO    ] ================================================
[2026-06-12 03:28:15,457.457 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 03:28:15
[2026-06-12 03:28:15,774.774 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 03:28:15,917.917 INFO    ] Initializing speech engine...
[2026-06-12 03:28:15,922.922 INFO    ] 2026-06-12 03:28:15
[2026-06-12 03:28:16,126.126 INFO    ] 2026-06-12 03:28:16
[2026-06-12 03:28:16,155.155 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 03:28:16,338.338 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 03:28:16,348.348 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 03:28:16,475.475 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 03:28:16,534.534 INFO    ] time= 12/06/2026 03:28:16
[2026-06-12 03:28:16,558.558 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 03:28:16,569.569 INFO    ] Checking for existing commands in stream...
[2026-06-12 03:28:16,663.663 INFO    ] No existing commands found in stream
[2026-06-12 03:28:21,672.672 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 03:28:21,675.675 INFO    ] Waiting 3.47 seconds before fallback handling...
[2026-06-12 03:28:25,516.516 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 03:28:25,518.518 INFO    ] Checking for system updates...
[2026-06-12 03:28:25,540.540 INFO    ] 200
[2026-06-12 03:28:25,541.541 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:28:25,571.571 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 03:28:25,573.573 INFO    ] No update needed
[2026-06-12 03:28:25,574.574 INFO    ] Checking for camera pi updates...
[2026-06-12 03:28:25,594.594 INFO    ] 200
[2026-06-12 03:28:25,596.596 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:28:25,621.621 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 03:28:25,656.656 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 03:28:25,657.657 INFO    ] No camera update needed
[2026-06-12 03:28:25,659.659 INFO    ] Script finished. Safe exiting...
[2026-06-12 03:28:25,660.660 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 03:28:25,663.663 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 03:28:25,666.666 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 03:28:27,704.704 INFO    ] ================================================
[2026-06-12 03:28:27,720.720 INFO    ] Launching Daemon at Fri Jun 12 03:28:27 IST 2026
[2026-06-12 03:28:27,731.731 INFO    ] ================================================
[2026-06-12 03:28:28,088.088 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 03:28:28
[2026-06-12 03:28:28,403.403 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 03:28:28,548.548 INFO    ] Initializing speech engine...
[2026-06-12 03:28:28,553.553 INFO    ] 2026-06-12 03:28:28
[2026-06-12 03:28:28,755.755 INFO    ] 2026-06-12 03:28:28
[2026-06-12 03:28:28,784.784 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 03:28:28,968.968 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 03:28:28,977.977 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 03:28:29,107.107 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 03:28:29,178.178 INFO    ] time= 12/06/2026 03:28:29
[2026-06-12 03:28:29,204.204 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 03:28:29,210.210 INFO    ] Checking for existing commands in stream...
[2026-06-12 03:28:29,278.278 INFO    ] No existing commands found in stream
[2026-06-12 03:28:34,287.287 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 03:28:34,290.290 INFO    ] Waiting 1.64 seconds before fallback handling...
[2026-06-12 03:28:36,318.318 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 03:28:36,319.319 INFO    ] Checking for system updates...
[2026-06-12 03:28:36,341.341 INFO    ] 200
[2026-06-12 03:28:36,343.343 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:28:36,375.375 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 03:28:36,377.377 INFO    ] No update needed
[2026-06-12 03:28:36,378.378 INFO    ] Checking for camera pi updates...
[2026-06-12 03:28:36,397.397 INFO    ] 200
[2026-06-12 03:28:36,399.399 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:28:36,422.422 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 03:28:36,469.469 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 03:28:36,471.471 INFO    ] No camera update needed
[2026-06-12 03:28:36,472.472 INFO    ] Script finished. Safe exiting...
[2026-06-12 03:28:36,473.473 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 03:28:36,476.476 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 03:28:36,479.479 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 03:28:38,521.521 INFO    ] ================================================
[2026-06-12 03:28:38,537.537 INFO    ] Launching Daemon at Fri Jun 12 03:28:38 IST 2026
[2026-06-12 03:28:38,548.548 INFO    ] ================================================
[2026-06-12 03:28:38,906.906 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 03:28:38
[2026-06-12 03:28:39,224.224 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 03:28:39,369.369 INFO    ] Initializing speech engine...
[2026-06-12 03:28:39,374.374 INFO    ] 2026-06-12 03:28:39
[2026-06-12 03:28:39,579.579 INFO    ] 2026-06-12 03:28:39
[2026-06-12 03:28:39,608.608 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 03:28:39,793.793 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 03:28:39,797.797 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 03:28:39,934.934 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 03:28:39,993.993 INFO    ] time= 12/06/2026 03:28:39
[2026-06-12 03:28:40,026.026 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 03:28:40,032.032 INFO    ] Checking for existing commands in stream...
[2026-06-12 03:28:40,100.100 INFO    ] No existing commands found in stream
[2026-06-12 03:28:45,109.109 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 03:28:45,112.112 INFO    ] Waiting 3.83 seconds before fallback handling...
[2026-06-12 03:28:49,318.318 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 03:28:49,319.319 INFO    ] Checking for system updates...
[2026-06-12 03:28:49,341.341 INFO    ] 200
[2026-06-12 03:28:49,342.342 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:28:49,373.373 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 03:28:49,374.374 INFO    ] No update needed
[2026-06-12 03:28:49,376.376 INFO    ] Checking for camera pi updates...
[2026-06-12 03:28:49,397.397 INFO    ] 200
[2026-06-12 03:28:49,399.399 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:28:49,424.424 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 03:28:49,456.456 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 03:28:49,458.458 INFO    ] No camera update needed
[2026-06-12 03:28:49,459.459 INFO    ] Script finished. Safe exiting...
[2026-06-12 03:28:49,460.460 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 03:28:49,464.464 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 03:28:49,466.466 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 03:28:51,509.509 INFO    ] ================================================
[2026-06-12 03:28:51,526.526 INFO    ] Launching Daemon at Fri Jun 12 03:28:51 IST 2026
[2026-06-12 03:28:51,538.538 INFO    ] ================================================
[2026-06-12 03:28:51,913.913 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 03:28:51
[2026-06-12 03:28:52,254.254 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 03:28:52,394.394 INFO    ] Initializing speech engine...
[2026-06-12 03:28:52,407.407 INFO    ] 2026-06-12 03:28:52
[2026-06-12 03:28:52,620.620 INFO    ] 2026-06-12 03:28:52
[2026-06-12 03:28:52,648.648 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 03:28:52,836.836 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 03:28:52,846.846 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 03:28:52,976.976 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 03:28:53,028.028 INFO    ] time= 12/06/2026 03:28:52
[2026-06-12 03:28:53,083.083 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 03:28:53,125.125 INFO    ] Checking for existing commands in stream...
[2026-06-12 03:28:53,197.197 INFO    ] No existing commands found in stream
[2026-06-12 03:28:58,208.208 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 03:28:58,211.211 INFO    ] Waiting 0.06 seconds before fallback handling...
[2026-06-12 03:28:58,621.621 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 03:28:58,623.623 INFO    ] Checking for system updates...
[2026-06-12 03:28:58,644.644 INFO    ] 200
[2026-06-12 03:28:58,645.645 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:28:58,680.680 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 03:28:58,681.681 INFO    ] No update needed
[2026-06-12 03:28:58,683.683 INFO    ] Checking for camera pi updates...
[2026-06-12 03:28:58,703.703 INFO    ] 200
[2026-06-12 03:28:58,704.704 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:28:58,730.730 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 03:28:58,767.767 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 03:28:58,769.769 INFO    ] No camera update needed
[2026-06-12 03:28:58,770.770 INFO    ] Script finished. Safe exiting...
[2026-06-12 03:28:58,771.771 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 03:28:58,774.774 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 03:28:58,777.777 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 03:29:00,815.815 INFO    ] ================================================
[2026-06-12 03:29:00,831.831 INFO    ] Launching Daemon at Fri Jun 12 03:29:00 IST 2026
[2026-06-12 03:29:00,841.841 INFO    ] ================================================
[2026-06-12 03:29:01,258.258 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 03:29:01
[2026-06-12 03:29:01,640.640 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 03:29:01,817.817 INFO    ] Initializing speech engine...
[2026-06-12 03:29:01,827.827 INFO    ] 2026-06-12 03:29:01
[2026-06-12 03:29:02,078.078 INFO    ] 2026-06-12 03:29:02
[2026-06-12 03:29:02,114.114 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 03:29:02,247.247 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 03:29:02,305.305 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 03:29:02,439.439 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 03:29:02,493.493 INFO    ] time= 12/06/2026 03:29:02
[2026-06-12 03:29:02,528.528 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 03:29:02,538.538 INFO    ] Checking for existing commands in stream...
[2026-06-12 03:29:02,610.610 INFO    ] No existing commands found in stream
[2026-06-12 03:29:07,624.624 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 03:29:07,626.626 INFO    ] Waiting 3.08 seconds before fallback handling...
[2026-06-12 03:29:11,066.066 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 03:29:11,067.067 INFO    ] Checking for system updates...
[2026-06-12 03:29:11,089.089 INFO    ] 200
[2026-06-12 03:29:11,091.091 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:29:11,121.121 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 03:29:11,122.122 INFO    ] No update needed
[2026-06-12 03:29:11,124.124 INFO    ] Checking for camera pi updates...
[2026-06-12 03:29:11,143.143 INFO    ] 200
[2026-06-12 03:29:11,144.144 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:29:11,169.169 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 03:29:11,205.205 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 03:29:11,206.206 INFO    ] No camera update needed
[2026-06-12 03:29:11,208.208 INFO    ] Script finished. Safe exiting...
[2026-06-12 03:29:11,209.209 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 03:29:11,212.212 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 03:29:11,215.215 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 03:29:13,252.252 INFO    ] ================================================
[2026-06-12 03:29:13,268.268 INFO    ] Launching Daemon at Fri Jun 12 03:29:13 IST 2026
[2026-06-12 03:29:13,279.279 INFO    ] ================================================
[2026-06-12 03:29:13,637.637 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 03:29:13
[2026-06-12 03:29:13,963.963 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 03:29:14,103.103 INFO    ] Initializing speech engine...
[2026-06-12 03:29:14,111.111 INFO    ] 2026-06-12 03:29:14
[2026-06-12 03:29:14,308.308 INFO    ] 2026-06-12 03:29:14
[2026-06-12 03:29:14,335.335 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 03:29:14,480.480 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 03:29:14,546.546 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 03:29:14,679.679 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 03:29:14,737.737 INFO    ] time= 12/06/2026 03:29:14
[2026-06-12 03:29:14,766.766 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 03:29:14,776.776 INFO    ] Checking for existing commands in stream...
[2026-06-12 03:29:14,847.847 INFO    ] No existing commands found in stream
[2026-06-12 03:29:19,852.852 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 03:29:19,855.855 INFO    ] Waiting 3.59 seconds before fallback handling...
[2026-06-12 03:29:23,836.836 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 03:29:23,838.838 INFO    ] Checking for system updates...
[2026-06-12 03:29:23,859.859 INFO    ] 200
[2026-06-12 03:29:23,861.861 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:29:23,891.891 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 03:29:23,892.892 INFO    ] No update needed
[2026-06-12 03:29:23,894.894 INFO    ] Checking for camera pi updates...
[2026-06-12 03:29:23,914.914 INFO    ] 200
[2026-06-12 03:29:23,916.916 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:29:23,940.940 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 03:29:23,976.976 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 03:29:23,977.977 INFO    ] No camera update needed
[2026-06-12 03:29:23,978.978 INFO    ] Script finished. Safe exiting...
[2026-06-12 03:29:23,980.980 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 03:29:23,983.983 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 03:29:23,985.985 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 03:29:26,024.024 INFO    ] ================================================
[2026-06-12 03:29:26,039.039 INFO    ] Launching Daemon at Fri Jun 12 03:29:26 IST 2026
[2026-06-12 03:29:26,049.049 INFO    ] ================================================
[2026-06-12 03:29:26,369.369 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 03:29:26
[2026-06-12 03:29:26,680.680 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 03:29:26,808.808 INFO    ] Initializing speech engine...
[2026-06-12 03:29:26,813.813 INFO    ] 2026-06-12 03:29:26
[2026-06-12 03:29:27,032.032 INFO    ] 2026-06-12 03:29:27
[2026-06-12 03:29:27,061.061 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 03:29:27,246.246 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 03:29:27,255.255 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 03:29:27,407.407 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 03:29:27,455.455 INFO    ] time= 12/06/2026 03:29:27
[2026-06-12 03:29:27,478.478 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 03:29:27,485.485 INFO    ] Checking for existing commands in stream...
[2026-06-12 03:29:27,552.552 INFO    ] No existing commands found in stream
[2026-06-12 03:29:32,561.561 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 03:29:32,564.564 INFO    ] Waiting 2.88 seconds before fallback handling...
[2026-06-12 03:29:35,816.816 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 03:29:35,818.818 INFO    ] Checking for system updates...
[2026-06-12 03:29:35,840.840 INFO    ] 200
[2026-06-12 03:29:35,841.841 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:29:35,871.871 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 03:29:35,873.873 INFO    ] No update needed
[2026-06-12 03:29:35,874.874 INFO    ] Checking for camera pi updates...
[2026-06-12 03:29:35,895.895 INFO    ] 200
[2026-06-12 03:29:35,896.896 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:29:35,921.921 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 03:29:35,962.962 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 03:29:35,963.963 INFO    ] No camera update needed
[2026-06-12 03:29:35,965.965 INFO    ] Script finished. Safe exiting...
[2026-06-12 03:29:35,966.966 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 03:29:35,969.969 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 03:29:35,971.971 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 03:29:38,003.003 INFO    ] ================================================
[2026-06-12 03:29:38,018.018 INFO    ] Launching Daemon at Fri Jun 12 03:29:38 IST 2026
[2026-06-12 03:29:38,028.028 INFO    ] ================================================
[2026-06-12 03:29:38,368.368 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 03:29:38
[2026-06-12 03:29:38,712.712 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 03:29:38,863.863 INFO    ] Initializing speech engine...
[2026-06-12 03:29:38,868.868 INFO    ] 2026-06-12 03:29:38
[2026-06-12 03:29:39,075.075 INFO    ] 2026-06-12 03:29:39
[2026-06-12 03:29:39,104.104 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 03:29:39,287.287 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 03:29:39,297.297 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 03:29:39,442.442 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 03:29:39,495.495 INFO    ] time= 12/06/2026 03:29:39
[2026-06-12 03:29:39,517.517 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 03:29:39,523.523 INFO    ] Checking for existing commands in stream...
[2026-06-12 03:29:39,591.591 INFO    ] No existing commands found in stream
[2026-06-12 03:29:44,605.605 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 03:29:44,609.609 INFO    ] Waiting 1.12 seconds before fallback handling...
[2026-06-12 03:29:46,137.137 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 03:29:46,139.139 INFO    ] Checking for system updates...
[2026-06-12 03:29:46,162.162 INFO    ] 200
[2026-06-12 03:29:46,163.163 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:29:46,196.196 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 03:29:46,197.197 INFO    ] No update needed
[2026-06-12 03:29:46,198.198 INFO    ] Checking for camera pi updates...
[2026-06-12 03:29:46,218.218 INFO    ] 200
[2026-06-12 03:29:46,219.219 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:29:46,242.242 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 03:29:46,282.282 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 03:29:46,284.284 INFO    ] No camera update needed
[2026-06-12 03:29:46,285.285 INFO    ] Script finished. Safe exiting...
[2026-06-12 03:29:46,286.286 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 03:29:46,289.289 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 03:29:46,292.292 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 03:29:48,330.330 INFO    ] ================================================
[2026-06-12 03:29:48,345.345 INFO    ] Launching Daemon at Fri Jun 12 03:29:48 IST 2026
[2026-06-12 03:29:48,356.356 INFO    ] ================================================
[2026-06-12 03:29:48,718.718 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 03:29:48
[2026-06-12 03:29:49,029.029 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 03:29:49,166.166 INFO    ] Initializing speech engine...
[2026-06-12 03:29:49,174.174 INFO    ] 2026-06-12 03:29:49
[2026-06-12 03:29:49,381.381 INFO    ] 2026-06-12 03:29:49
[2026-06-12 03:29:49,411.411 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 03:29:49,596.596 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 03:29:49,606.606 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 03:29:49,735.735 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 03:29:49,801.801 INFO    ] time= 12/06/2026 03:29:49
[2026-06-12 03:29:49,829.829 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 03:29:49,836.836 INFO    ] Checking for existing commands in stream...
[2026-06-12 03:29:49,902.902 INFO    ] No existing commands found in stream
[2026-06-12 03:29:54,912.912 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 03:29:54,915.915 INFO    ] Waiting 1.63 seconds before fallback handling...
[2026-06-12 03:29:56,904.904 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 03:29:56,906.906 INFO    ] Checking for system updates...
[2026-06-12 03:29:56,928.928 INFO    ] 200
[2026-06-12 03:29:56,929.929 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:29:56,962.962 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 03:29:56,964.964 INFO    ] No update needed
[2026-06-12 03:29:56,965.965 INFO    ] Checking for camera pi updates...
[2026-06-12 03:29:56,985.985 INFO    ] 200
[2026-06-12 03:29:56,986.986 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:29:57,011.011 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 03:29:57,050.050 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 03:29:57,051.051 INFO    ] No camera update needed
[2026-06-12 03:29:57,053.053 INFO    ] Script finished. Safe exiting...
[2026-06-12 03:29:57,054.054 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 03:29:57,057.057 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 03:29:57,060.060 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 03:29:59,090.090 INFO    ] ================================================
[2026-06-12 03:29:59,101.101 INFO    ] Launching Daemon at Fri Jun 12 03:29:59 IST 2026
[2026-06-12 03:29:59,107.107 INFO    ] ================================================
[2026-06-12 03:29:59,439.439 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 03:29:59
[2026-06-12 03:29:59,778.778 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 03:29:59,936.936 INFO    ] Initializing speech engine...
[2026-06-12 03:29:59,940.940 INFO    ] 2026-06-12 03:29:59
[2026-06-12 03:30:00,145.145 INFO    ] 2026-06-12 03:30:00
[2026-06-12 03:30:00,174.174 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 03:30:00,360.360 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 03:30:00,370.370 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 03:30:00,499.499 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 03:30:00,567.567 INFO    ] time= 12/06/2026 03:30:00
[2026-06-12 03:30:00,590.590 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 03:30:00,597.597 INFO    ] Checking for existing commands in stream...
[2026-06-12 03:30:00,662.662 INFO    ] No existing commands found in stream
[2026-06-12 03:30:05,673.673 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 03:30:05,676.676 INFO    ] Waiting 0.41 seconds before fallback handling...
[2026-06-12 03:30:06,969.969 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 03:30:06,972.972 INFO    ] Checking for system updates...
[2026-06-12 03:30:07,015.015 INFO    ] 200
[2026-06-12 03:30:07,018.018 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:30:07,064.064 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 03:30:07,066.066 INFO    ] No update needed
[2026-06-12 03:30:07,067.067 INFO    ] Checking for camera pi updates...
[2026-06-12 03:30:07,091.091 INFO    ] 200
[2026-06-12 03:30:07,092.092 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:30:07,118.118 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 03:30:07,161.161 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 03:30:07,163.163 INFO    ] No camera update needed
[2026-06-12 03:30:07,164.164 INFO    ] Script finished. Safe exiting...
[2026-06-12 03:30:07,166.166 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 03:30:07,169.169 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 03:30:07,172.172 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 03:30:09,212.212 INFO    ] ================================================
[2026-06-12 03:30:09,227.227 INFO    ] Launching Daemon at Fri Jun 12 03:30:09 IST 2026
[2026-06-12 03:30:09,238.238 INFO    ] ================================================
[2026-06-12 03:30:09,563.563 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 03:30:09
[2026-06-12 03:30:09,879.879 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 03:30:10,030.030 INFO    ] Initializing speech engine...
[2026-06-12 03:30:10,035.035 INFO    ] 2026-06-12 03:30:10
[2026-06-12 03:30:10,243.243 INFO    ] 2026-06-12 03:30:10
[2026-06-12 03:30:10,277.277 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 03:30:10,402.402 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 03:30:10,465.465 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 03:30:10,599.599 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 03:30:10,661.661 INFO    ] time= 12/06/2026 03:30:10
[2026-06-12 03:30:10,693.693 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 03:30:10,699.699 INFO    ] Checking for existing commands in stream...
[2026-06-12 03:30:10,765.765 INFO    ] No existing commands found in stream
[2026-06-12 03:30:15,775.775 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 03:30:15,778.778 INFO    ] Waiting 0.57 seconds before fallback handling...
[2026-06-12 03:30:16,698.698 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 03:30:16,700.700 INFO    ] Checking for system updates...
[2026-06-12 03:30:16,721.721 INFO    ] 200
[2026-06-12 03:30:16,722.722 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:30:16,755.755 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 03:30:16,756.756 INFO    ] No update needed
[2026-06-12 03:30:16,758.758 INFO    ] Checking for camera pi updates...
[2026-06-12 03:30:16,779.779 INFO    ] 200
[2026-06-12 03:30:16,780.780 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:30:16,805.805 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 03:30:16,840.840 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 03:30:16,841.841 INFO    ] No camera update needed
[2026-06-12 03:30:16,842.842 INFO    ] Script finished. Safe exiting...
[2026-06-12 03:30:16,844.844 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 03:30:16,847.847 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 03:30:16,849.849 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 03:30:18,891.891 INFO    ] ================================================
[2026-06-12 03:30:18,906.906 INFO    ] Launching Daemon at Fri Jun 12 03:30:18 IST 2026
[2026-06-12 03:30:18,917.917 INFO    ] ================================================
[2026-06-12 03:30:19,277.277 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 03:30:19
[2026-06-12 03:30:19,616.616 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 03:30:19,769.769 INFO    ] Initializing speech engine...
[2026-06-12 03:30:19,775.775 INFO    ] 2026-06-12 03:30:19
[2026-06-12 03:30:19,986.986 INFO    ] 2026-06-12 03:30:19
[2026-06-12 03:30:20,014.014 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 03:30:20,200.200 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 03:30:20,209.209 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 03:30:20,342.342 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 03:30:20,410.410 INFO    ] time= 12/06/2026 03:30:20
[2026-06-12 03:30:20,435.435 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 03:30:20,441.441 INFO    ] Checking for existing commands in stream...
[2026-06-12 03:30:20,509.509 INFO    ] No existing commands found in stream
[2026-06-12 03:30:25,539.539 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 03:30:25,543.543 INFO    ] Waiting 3.19 seconds before fallback handling...
[2026-06-12 03:30:29,119.119 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 03:30:29,120.120 INFO    ] Checking for system updates...
[2026-06-12 03:30:29,143.143 INFO    ] 200
[2026-06-12 03:30:29,144.144 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:30:29,179.179 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 03:30:29,181.181 INFO    ] No update needed
[2026-06-12 03:30:29,182.182 INFO    ] Checking for camera pi updates...
[2026-06-12 03:30:29,203.203 INFO    ] 200
[2026-06-12 03:30:29,205.205 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:30:29,230.230 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 03:30:29,267.267 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 03:30:29,268.268 INFO    ] No camera update needed
[2026-06-12 03:30:29,269.269 INFO    ] Script finished. Safe exiting...
[2026-06-12 03:30:29,271.271 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 03:30:29,274.274 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 03:30:29,277.277 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 03:30:31,316.316 INFO    ] ================================================
[2026-06-12 03:30:31,332.332 INFO    ] Launching Daemon at Fri Jun 12 03:30:31 IST 2026
[2026-06-12 03:30:31,343.343 INFO    ] ================================================
[2026-06-12 03:30:31,701.701 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 03:30:31
[2026-06-12 03:30:32,042.042 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 03:30:32,198.198 INFO    ] Initializing speech engine...
[2026-06-12 03:30:32,208.208 INFO    ] 2026-06-12 03:30:32
[2026-06-12 03:30:32,416.416 INFO    ] 2026-06-12 03:30:32
[2026-06-12 03:30:32,464.464 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 03:30:32,630.630 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 03:30:32,696.696 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 03:30:32,836.836 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 03:30:32,899.899 INFO    ] time= 12/06/2026 03:30:32
[2026-06-12 03:30:32,931.931 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 03:30:32,938.938 INFO    ] Checking for existing commands in stream...
[2026-06-12 03:30:33,005.005 INFO    ] No existing commands found in stream
[2026-06-12 03:30:38,014.014 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 03:30:38,017.017 INFO    ] Waiting 3.61 seconds before fallback handling...
[2026-06-12 03:30:42,017.017 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 03:30:42,018.018 INFO    ] Checking for system updates...
[2026-06-12 03:30:42,041.041 INFO    ] 200
[2026-06-12 03:30:42,043.043 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:30:42,075.075 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 03:30:42,077.077 INFO    ] No update needed
[2026-06-12 03:30:42,078.078 INFO    ] Checking for camera pi updates...
[2026-06-12 03:30:42,099.099 INFO    ] 200
[2026-06-12 03:30:42,101.101 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:30:42,124.124 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 03:30:42,266.266 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 03:30:42,267.267 INFO    ] No camera update needed
[2026-06-12 03:30:42,269.269 INFO    ] Script finished. Safe exiting...
[2026-06-12 03:30:42,270.270 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 03:30:42,274.274 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 03:30:42,277.277 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 03:30:44,318.318 INFO    ] ================================================
[2026-06-12 03:30:44,338.338 INFO    ] Launching Daemon at Fri Jun 12 03:30:44 IST 2026
[2026-06-12 03:30:44,349.349 INFO    ] ================================================
[2026-06-12 03:30:44,680.680 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 03:30:44
[2026-06-12 03:30:44,998.998 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 03:30:45,141.141 INFO    ] Initializing speech engine...
[2026-06-12 03:30:45,146.146 INFO    ] 2026-06-12 03:30:45
[2026-06-12 03:30:45,349.349 INFO    ] 2026-06-12 03:30:45
[2026-06-12 03:30:45,378.378 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 03:30:45,561.561 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 03:30:45,571.571 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 03:30:45,698.698 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 03:30:45,757.757 INFO    ] time= 12/06/2026 03:30:45
[2026-06-12 03:30:45,803.803 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 03:30:45,810.810 INFO    ] Checking for existing commands in stream...
[2026-06-12 03:30:45,879.879 INFO    ] No existing commands found in stream
[2026-06-12 03:30:50,904.904 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 03:30:50,907.907 INFO    ] Waiting 1.61 seconds before fallback handling...
[2026-06-12 03:30:52,875.875 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 03:30:52,876.876 INFO    ] Checking for system updates...
[2026-06-12 03:30:52,897.897 INFO    ] 200
[2026-06-12 03:30:52,898.898 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:30:52,931.931 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 03:30:52,932.932 INFO    ] No update needed
[2026-06-12 03:30:52,933.933 INFO    ] Checking for camera pi updates...
[2026-06-12 03:30:52,955.955 INFO    ] 200
[2026-06-12 03:30:52,957.957 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:30:52,982.982 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 03:30:53,018.018 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 03:30:53,020.020 INFO    ] No camera update needed
[2026-06-12 03:30:53,021.021 INFO    ] Script finished. Safe exiting...
[2026-06-12 03:30:53,023.023 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 03:30:53,025.025 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 03:30:53,028.028 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 03:30:55,061.061 INFO    ] ================================================
[2026-06-12 03:30:55,070.070 INFO    ] Launching Daemon at Fri Jun 12 03:30:55 IST 2026
[2026-06-12 03:30:55,077.077 INFO    ] ================================================
[2026-06-12 03:30:55,392.392 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 03:30:55
[2026-06-12 03:30:55,711.711 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 03:30:55,846.846 INFO    ] Initializing speech engine...
[2026-06-12 03:30:55,851.851 INFO    ] 2026-06-12 03:30:55
[2026-06-12 03:30:56,086.086 INFO    ] 2026-06-12 03:30:56
[2026-06-12 03:30:56,116.116 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 03:30:56,317.317 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 03:30:56,327.327 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 03:30:56,475.475 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 03:30:56,543.543 INFO    ] time= 12/06/2026 03:30:56
[2026-06-12 03:30:56,568.568 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 03:30:56,575.575 INFO    ] Checking for existing commands in stream...
[2026-06-12 03:30:56,645.645 INFO    ] No existing commands found in stream
[2026-06-12 03:31:01,656.656 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 03:31:01,659.659 INFO    ] Waiting 0.75 seconds before fallback handling...
[2026-06-12 03:31:04,071.071 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 03:31:04,074.074 INFO    ] Checking for system updates...
[2026-06-12 03:31:04,111.111 INFO    ] 200
[2026-06-12 03:31:04,114.114 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:31:04,168.168 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 03:31:04,169.169 INFO    ] No update needed
[2026-06-12 03:31:04,171.171 INFO    ] Checking for camera pi updates...
[2026-06-12 03:31:04,190.190 INFO    ] 200
[2026-06-12 03:31:04,192.192 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:31:04,215.215 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 03:31:04,256.256 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 03:31:04,258.258 INFO    ] No camera update needed
[2026-06-12 03:31:04,259.259 INFO    ] Script finished. Safe exiting...
[2026-06-12 03:31:04,261.261 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 03:31:04,264.264 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 03:31:04,266.266 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 03:31:06,297.297 INFO    ] ================================================
[2026-06-12 03:31:06,306.306 INFO    ] Launching Daemon at Fri Jun 12 03:31:06 IST 2026
[2026-06-12 03:31:06,313.313 INFO    ] ================================================
[2026-06-12 03:31:06,659.659 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 03:31:06
[2026-06-12 03:31:07,001.001 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 03:31:07,156.156 INFO    ] Initializing speech engine...
[2026-06-12 03:31:07,162.162 INFO    ] 2026-06-12 03:31:07
[2026-06-12 03:31:07,374.374 INFO    ] 2026-06-12 03:31:07
[2026-06-12 03:31:07,403.403 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 03:31:07,591.591 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 03:31:07,602.602 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 03:31:07,754.754 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 03:31:07,803.803 INFO    ] time= 12/06/2026 03:31:07
[2026-06-12 03:31:07,826.826 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 03:31:07,833.833 INFO    ] Checking for existing commands in stream...
[2026-06-12 03:31:07,901.901 INFO    ] No existing commands found in stream
[2026-06-12 03:31:12,915.915 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 03:31:12,919.919 INFO    ] Waiting 0.23 seconds before fallback handling...
[2026-06-12 03:31:13,559.559 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 03:31:13,561.561 INFO    ] Checking for system updates...
[2026-06-12 03:31:13,582.582 INFO    ] 200
[2026-06-12 03:31:13,586.586 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:31:13,625.625 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 03:31:13,627.627 INFO    ] No update needed
[2026-06-12 03:31:13,628.628 INFO    ] Checking for camera pi updates...
[2026-06-12 03:31:13,647.647 INFO    ] 200
[2026-06-12 03:31:13,649.649 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:31:13,673.673 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 03:31:13,709.709 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 03:31:13,710.710 INFO    ] No camera update needed
[2026-06-12 03:31:13,711.711 INFO    ] Script finished. Safe exiting...
[2026-06-12 03:31:13,713.713 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 03:31:13,715.715 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 03:31:13,718.718 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 03:31:15,757.757 INFO    ] ================================================
[2026-06-12 03:31:15,772.772 INFO    ] Launching Daemon at Fri Jun 12 03:31:15 IST 2026
[2026-06-12 03:31:15,783.783 INFO    ] ================================================
[2026-06-12 03:31:16,168.168 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 03:31:16
[2026-06-12 03:31:16,505.505 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 03:31:16,657.657 INFO    ] Initializing speech engine...
[2026-06-12 03:31:16,663.663 INFO    ] 2026-06-12 03:31:16
[2026-06-12 03:31:16,872.872 INFO    ] 2026-06-12 03:31:16
[2026-06-12 03:31:16,901.901 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 03:31:17,086.086 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 03:31:17,090.090 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 03:31:17,229.229 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 03:31:17,250.250 INFO    ] time= 12/06/2026 03:31:17
[2026-06-12 03:31:17,309.309 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 03:31:17,332.332 INFO    ] Checking for existing commands in stream...
[2026-06-12 03:31:17,404.404 INFO    ] No existing commands found in stream
[2026-06-12 03:31:22,418.418 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 03:31:22,422.422 INFO    ] Waiting 1.85 seconds before fallback handling...
[2026-06-12 03:31:24,648.648 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 03:31:24,649.649 INFO    ] Checking for system updates...
[2026-06-12 03:31:24,673.673 INFO    ] 200
[2026-06-12 03:31:24,674.674 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:31:24,710.710 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 03:31:24,711.711 INFO    ] No update needed
[2026-06-12 03:31:24,713.713 INFO    ] Checking for camera pi updates...
[2026-06-12 03:31:24,736.736 INFO    ] 200
[2026-06-12 03:31:24,738.738 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:31:24,764.764 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 03:31:24,809.809 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 03:31:24,811.811 INFO    ] No camera update needed
[2026-06-12 03:31:24,812.812 INFO    ] Script finished. Safe exiting...
[2026-06-12 03:31:24,813.813 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 03:31:24,817.817 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 03:31:24,820.820 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 03:31:26,861.861 INFO    ] ================================================
[2026-06-12 03:31:26,877.877 INFO    ] Launching Daemon at Fri Jun 12 03:31:26 IST 2026
[2026-06-12 03:31:26,888.888 INFO    ] ================================================
[2026-06-12 03:31:27,234.234 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 03:31:27
[2026-06-12 03:31:27,575.575 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 03:31:27,729.729 INFO    ] Initializing speech engine...
[2026-06-12 03:31:27,735.735 INFO    ] 2026-06-12 03:31:27
[2026-06-12 03:31:27,942.942 INFO    ] 2026-06-12 03:31:27
[2026-06-12 03:31:27,971.971 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 03:31:28,156.156 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 03:31:28,165.165 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 03:31:28,316.316 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 03:31:28,368.368 INFO    ] time= 12/06/2026 03:31:28
[2026-06-12 03:31:28,396.396 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 03:31:28,398.398 INFO    ] Checking for existing commands in stream...
[2026-06-12 03:31:28,466.466 INFO    ] No existing commands found in stream
[2026-06-12 03:31:33,480.480 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 03:31:33,483.483 INFO    ] Waiting 2.24 seconds before fallback handling...
[2026-06-12 03:31:36,075.075 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 03:31:36,076.076 INFO    ] Checking for system updates...
[2026-06-12 03:31:36,101.101 INFO    ] 200
[2026-06-12 03:31:36,103.103 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:31:36,133.133 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 03:31:36,135.135 INFO    ] No update needed
[2026-06-12 03:31:36,136.136 INFO    ] Checking for camera pi updates...
[2026-06-12 03:31:36,156.156 INFO    ] 200
[2026-06-12 03:31:36,158.158 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:31:36,182.182 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 03:31:36,220.220 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 03:31:36,222.222 INFO    ] No camera update needed
[2026-06-12 03:31:36,223.223 INFO    ] Script finished. Safe exiting...
[2026-06-12 03:31:36,224.224 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 03:31:36,227.227 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 03:31:36,230.230 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 03:31:38,269.269 INFO    ] ================================================
[2026-06-12 03:31:38,285.285 INFO    ] Launching Daemon at Fri Jun 12 03:31:38 IST 2026
[2026-06-12 03:31:38,296.296 INFO    ] ================================================
[2026-06-12 03:31:38,633.633 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 03:31:38
[2026-06-12 03:31:38,952.952 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 03:31:39,090.090 INFO    ] Initializing speech engine...
[2026-06-12 03:31:39,098.098 INFO    ] 2026-06-12 03:31:39
[2026-06-12 03:31:39,327.327 INFO    ] 2026-06-12 03:31:39
[2026-06-12 03:31:39,357.357 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 03:31:39,561.561 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 03:31:39,566.566 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 03:31:39,709.709 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 03:31:39,730.730 INFO    ] time= 12/06/2026 03:31:39
[2026-06-12 03:31:39,732.732 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 03:31:39,733.733 INFO    ] Checking for existing commands in stream...
[2026-06-12 03:31:39,792.792 INFO    ] No existing commands found in stream
[2026-06-12 03:31:44,801.801 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 03:31:44,804.804 INFO    ] Waiting 2.92 seconds before fallback handling...
[2026-06-12 03:31:48,069.069 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 03:31:48,070.070 INFO    ] Checking for system updates...
[2026-06-12 03:31:48,095.095 INFO    ] 200
[2026-06-12 03:31:48,097.097 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:31:48,130.130 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 03:31:48,131.131 INFO    ] No update needed
[2026-06-12 03:31:48,133.133 INFO    ] Checking for camera pi updates...
[2026-06-12 03:31:48,153.153 INFO    ] 200
[2026-06-12 03:31:48,155.155 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:31:48,178.178 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 03:31:48,216.216 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 03:31:48,218.218 INFO    ] No camera update needed
[2026-06-12 03:31:48,219.219 INFO    ] Script finished. Safe exiting...
[2026-06-12 03:31:48,220.220 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 03:31:48,223.223 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 03:31:48,226.226 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 03:31:50,265.265 INFO    ] ================================================
[2026-06-12 03:31:50,280.280 INFO    ] Launching Daemon at Fri Jun 12 03:31:50 IST 2026
[2026-06-12 03:31:50,292.292 INFO    ] ================================================
[2026-06-12 03:31:50,635.635 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 03:31:50
[2026-06-12 03:31:50,959.959 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 03:31:51,100.100 INFO    ] Initializing speech engine...
[2026-06-12 03:31:51,103.103 INFO    ] 2026-06-12 03:31:51
[2026-06-12 03:31:51,329.329 INFO    ] 2026-06-12 03:31:51
[2026-06-12 03:31:51,358.358 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 03:31:51,480.480 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 03:31:51,513.513 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 03:31:51,702.702 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 03:31:51,751.751 INFO    ] time= 12/06/2026 03:31:51
[2026-06-12 03:31:51,772.772 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 03:31:51,778.778 INFO    ] Checking for existing commands in stream...
[2026-06-12 03:31:51,846.846 INFO    ] No existing commands found in stream
[2026-06-12 03:31:56,859.859 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 03:31:56,861.861 INFO    ] Waiting 3.53 seconds before fallback handling...
[2026-06-12 03:32:00,786.786 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 03:32:00,787.787 INFO    ] Checking for system updates...
[2026-06-12 03:32:00,807.807 INFO    ] 200
[2026-06-12 03:32:00,809.809 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:32:00,842.842 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 03:32:00,843.843 INFO    ] No update needed
[2026-06-12 03:32:00,844.844 INFO    ] Checking for camera pi updates...
[2026-06-12 03:32:00,865.865 INFO    ] 200
[2026-06-12 03:32:00,866.866 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:32:00,890.890 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 03:32:00,926.926 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 03:32:00,928.928 INFO    ] No camera update needed
[2026-06-12 03:32:00,929.929 INFO    ] Script finished. Safe exiting...
[2026-06-12 03:32:00,930.930 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 03:32:00,933.933 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 03:32:00,936.936 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 03:32:02,973.973 INFO    ] ================================================
[2026-06-12 03:32:02,989.989 INFO    ] Launching Daemon at Fri Jun 12 03:32:02 IST 2026
[2026-06-12 03:32:03,001.001 INFO    ] ================================================
[2026-06-12 03:32:03,341.341 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 03:32:03
[2026-06-12 03:32:03,653.653 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 03:32:03,791.791 INFO    ] Initializing speech engine...
[2026-06-12 03:32:03,801.801 INFO    ] 2026-06-12 03:32:03
[2026-06-12 03:32:04,004.004 INFO    ] 2026-06-12 03:32:03
[2026-06-12 03:32:04,034.034 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 03:32:04,216.216 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 03:32:04,220.220 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 03:32:04,348.348 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 03:32:04,409.409 INFO    ] time= 12/06/2026 03:32:04
[2026-06-12 03:32:04,446.446 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 03:32:04,448.448 INFO    ] Checking for existing commands in stream...
[2026-06-12 03:32:04,519.519 INFO    ] No existing commands found in stream
[2026-06-12 03:32:09,533.533 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 03:32:09,536.536 INFO    ] Waiting 2.02 seconds before fallback handling...
[2026-06-12 03:32:11,944.944 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 03:32:11,945.945 INFO    ] Checking for system updates...
[2026-06-12 03:32:11,966.966 INFO    ] 200
[2026-06-12 03:32:11,967.967 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:32:11,999.999 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 03:32:12,001.001 INFO    ] No update needed
[2026-06-12 03:32:12,002.002 INFO    ] Checking for camera pi updates...
[2026-06-12 03:32:12,022.022 INFO    ] 200
[2026-06-12 03:32:12,023.023 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:32:12,048.048 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 03:32:12,072.072 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 03:32:12,073.073 INFO    ] No camera update needed
[2026-06-12 03:32:12,074.074 INFO    ] Script finished. Safe exiting...
[2026-06-12 03:32:12,076.076 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 03:32:12,079.079 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 03:32:12,081.081 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 03:32:14,122.122 INFO    ] ================================================
[2026-06-12 03:32:14,138.138 INFO    ] Launching Daemon at Fri Jun 12 03:32:14 IST 2026
[2026-06-12 03:32:14,149.149 INFO    ] ================================================
[2026-06-12 03:32:14,521.521 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 03:32:14
[2026-06-12 03:32:14,859.859 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 03:32:15,013.013 INFO    ] Initializing speech engine...
[2026-06-12 03:32:15,020.020 INFO    ] 2026-06-12 03:32:15
[2026-06-12 03:32:15,220.220 INFO    ] 2026-06-12 03:32:15
[2026-06-12 03:32:15,248.248 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 03:32:15,435.435 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 03:32:15,445.445 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 03:32:15,576.576 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 03:32:15,630.630 INFO    ] time= 12/06/2026 03:32:15
[2026-06-12 03:32:15,669.669 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 03:32:15,671.671 INFO    ] Checking for existing commands in stream...
[2026-06-12 03:32:15,743.743 INFO    ] No existing commands found in stream
[2026-06-12 03:32:20,752.752 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 03:32:20,755.755 INFO    ] Waiting 1.81 seconds before fallback handling...
[2026-06-12 03:32:22,959.959 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 03:32:22,960.960 INFO    ] Checking for system updates...
[2026-06-12 03:32:22,982.982 INFO    ] 200
[2026-06-12 03:32:22,983.983 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:32:23,013.013 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 03:32:23,014.014 INFO    ] No update needed
[2026-06-12 03:32:23,016.016 INFO    ] Checking for camera pi updates...
[2026-06-12 03:32:23,035.035 INFO    ] 200
[2026-06-12 03:32:23,036.036 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:32:23,060.060 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 03:32:23,101.101 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 03:32:23,103.103 INFO    ] No camera update needed
[2026-06-12 03:32:23,104.104 INFO    ] Script finished. Safe exiting...
[2026-06-12 03:32:23,105.105 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 03:32:23,108.108 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 03:32:23,111.111 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 03:32:25,151.151 INFO    ] ================================================
[2026-06-12 03:32:25,167.167 INFO    ] Launching Daemon at Fri Jun 12 03:32:25 IST 2026
[2026-06-12 03:32:25,179.179 INFO    ] ================================================
[2026-06-12 03:32:25,529.529 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 03:32:25
[2026-06-12 03:32:25,841.841 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 03:32:25,972.972 INFO    ] Initializing speech engine...
[2026-06-12 03:32:25,979.979 INFO    ] 2026-06-12 03:32:25
[2026-06-12 03:32:26,192.192 INFO    ] 2026-06-12 03:32:26
[2026-06-12 03:32:26,220.220 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 03:32:26,403.403 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 03:32:26,413.413 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 03:32:26,548.548 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 03:32:26,610.610 INFO    ] time= 12/06/2026 03:32:26
[2026-06-12 03:32:26,634.634 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 03:32:26,640.640 INFO    ] Checking for existing commands in stream...
[2026-06-12 03:32:26,705.705 INFO    ] No existing commands found in stream
[2026-06-12 03:32:31,714.714 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 03:32:31,716.716 INFO    ] Waiting 1.85 seconds before fallback handling...
[2026-06-12 03:32:33,933.933 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 03:32:33,935.935 INFO    ] Checking for system updates...
[2026-06-12 03:32:33,959.959 INFO    ] 200
[2026-06-12 03:32:33,961.961 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:32:33,993.993 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 03:32:33,994.994 INFO    ] No update needed
[2026-06-12 03:32:33,996.996 INFO    ] Checking for camera pi updates...
[2026-06-12 03:32:34,016.016 INFO    ] 200
[2026-06-12 03:32:34,018.018 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:32:34,041.041 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 03:32:34,077.077 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 03:32:34,079.079 INFO    ] No camera update needed
[2026-06-12 03:32:34,080.080 INFO    ] Script finished. Safe exiting...
[2026-06-12 03:32:34,082.082 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 03:32:34,085.085 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 03:32:34,087.087 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 03:32:36,119.119 INFO    ] ================================================
[2026-06-12 03:32:36,127.127 INFO    ] Launching Daemon at Fri Jun 12 03:32:36 IST 2026
[2026-06-12 03:32:36,133.133 INFO    ] ================================================
[2026-06-12 03:32:36,488.488 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 03:32:36
[2026-06-12 03:32:36,804.804 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 03:32:36,943.943 INFO    ] Initializing speech engine...
[2026-06-12 03:32:36,953.953 INFO    ] 2026-06-12 03:32:36
[2026-06-12 03:32:37,160.160 INFO    ] 2026-06-12 03:32:37
[2026-06-12 03:32:37,188.188 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 03:32:37,374.374 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 03:32:37,378.378 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 03:32:37,527.527 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 03:32:37,594.594 INFO    ] time= 12/06/2026 03:32:37
[2026-06-12 03:32:37,618.618 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 03:32:37,625.625 INFO    ] Checking for existing commands in stream...
[2026-06-12 03:32:37,694.694 INFO    ] No existing commands found in stream
[2026-06-12 03:32:42,703.703 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 03:32:42,706.706 INFO    ] Waiting 1.95 seconds before fallback handling...
[2026-06-12 03:32:45,056.056 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 03:32:45,057.057 INFO    ] Checking for system updates...
[2026-06-12 03:32:45,078.078 INFO    ] 200
[2026-06-12 03:32:45,080.080 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:32:45,113.113 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 03:32:45,114.114 INFO    ] No update needed
[2026-06-12 03:32:45,116.116 INFO    ] Checking for camera pi updates...
[2026-06-12 03:32:45,137.137 INFO    ] 200
[2026-06-12 03:32:45,139.139 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:32:45,163.163 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 03:32:45,313.313 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 03:32:45,315.315 INFO    ] No camera update needed
[2026-06-12 03:32:45,316.316 INFO    ] Script finished. Safe exiting...
[2026-06-12 03:32:45,318.318 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 03:32:45,321.321 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 03:32:45,324.324 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 03:32:47,355.355 INFO    ] ================================================
[2026-06-12 03:32:47,365.365 INFO    ] Launching Daemon at Fri Jun 12 03:32:47 IST 2026
[2026-06-12 03:32:47,371.371 INFO    ] ================================================
[2026-06-12 03:32:47,725.725 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 03:32:47
[2026-06-12 03:32:48,049.049 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 03:32:48,193.193 INFO    ] Initializing speech engine...
[2026-06-12 03:32:48,197.197 INFO    ] 2026-06-12 03:32:48
[2026-06-12 03:32:48,402.402 INFO    ] 2026-06-12 03:32:48
[2026-06-12 03:32:48,430.430 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 03:32:48,613.613 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 03:32:48,617.617 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 03:32:48,758.758 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 03:32:48,820.820 INFO    ] time= 12/06/2026 03:32:48
[2026-06-12 03:32:48,844.844 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 03:32:48,850.850 INFO    ] Checking for existing commands in stream...
[2026-06-12 03:32:48,917.917 INFO    ] No existing commands found in stream
[2026-06-12 03:32:53,931.931 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 03:32:53,934.934 INFO    ] Waiting 3.00 seconds before fallback handling...
[2026-06-12 03:32:57,313.313 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 03:32:57,315.315 INFO    ] Checking for system updates...
[2026-06-12 03:32:57,335.335 INFO    ] 200
[2026-06-12 03:32:57,337.337 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:32:57,367.367 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 03:32:57,368.368 INFO    ] No update needed
[2026-06-12 03:32:57,370.370 INFO    ] Checking for camera pi updates...
[2026-06-12 03:32:57,391.391 INFO    ] 200
[2026-06-12 03:32:57,392.392 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:32:57,415.415 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 03:32:57,454.454 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 03:32:57,455.455 INFO    ] No camera update needed
[2026-06-12 03:32:57,456.456 INFO    ] Script finished. Safe exiting...
[2026-06-12 03:32:57,458.458 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 03:32:57,461.461 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 03:32:57,464.464 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 03:32:59,497.497 INFO    ] ================================================
[2026-06-12 03:32:59,512.512 INFO    ] Launching Daemon at Fri Jun 12 03:32:59 IST 2026
[2026-06-12 03:32:59,523.523 INFO    ] ================================================
[2026-06-12 03:32:59,894.894 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 03:32:59
[2026-06-12 03:33:00,212.212 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 03:33:00,359.359 INFO    ] Initializing speech engine...
[2026-06-12 03:33:00,363.363 INFO    ] 2026-06-12 03:33:00
[2026-06-12 03:33:00,568.568 INFO    ] 2026-06-12 03:33:00
[2026-06-12 03:33:00,597.597 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 03:33:00,784.784 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 03:33:00,793.793 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 03:33:00,925.925 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 03:33:00,984.984 INFO    ] time= 12/06/2026 03:33:00
[2026-06-12 03:33:01,017.017 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 03:33:01,024.024 INFO    ] Checking for existing commands in stream...
[2026-06-12 03:33:01,092.092 INFO    ] No existing commands found in stream
[2026-06-12 03:33:06,116.116 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 03:33:06,118.118 INFO    ] Waiting 1.27 seconds before fallback handling...
[2026-06-12 03:33:07,794.794 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 03:33:07,796.796 INFO    ] Checking for system updates...
[2026-06-12 03:33:07,816.816 INFO    ] 200
[2026-06-12 03:33:07,818.818 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:33:07,850.850 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 03:33:07,852.852 INFO    ] No update needed
[2026-06-12 03:33:07,853.853 INFO    ] Checking for camera pi updates...
[2026-06-12 03:33:07,874.874 INFO    ] 200
[2026-06-12 03:33:07,876.876 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:33:07,899.899 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 03:33:07,939.939 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 03:33:07,941.941 INFO    ] No camera update needed
[2026-06-12 03:33:07,942.942 INFO    ] Script finished. Safe exiting...
[2026-06-12 03:33:07,943.943 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 03:33:07,946.946 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 03:33:07,949.949 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 03:33:09,981.981 INFO    ] ================================================
[2026-06-12 03:33:09,990.990 INFO    ] Launching Daemon at Fri Jun 12 03:33:09 IST 2026
[2026-06-12 03:33:09,996.996 INFO    ] ================================================
[2026-06-12 03:33:10,376.376 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 03:33:10
[2026-06-12 03:33:10,717.717 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 03:33:10,868.868 INFO    ] Initializing speech engine...
[2026-06-12 03:33:10,874.874 INFO    ] 2026-06-12 03:33:10
[2026-06-12 03:33:11,090.090 INFO    ] 2026-06-12 03:33:11
[2026-06-12 03:33:11,114.114 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 03:33:11,246.246 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 03:33:11,309.309 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 03:33:11,458.458 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 03:33:11,526.526 INFO    ] time= 12/06/2026 03:33:11
[2026-06-12 03:33:11,559.559 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 03:33:11,561.561 INFO    ] Checking for existing commands in stream...
[2026-06-12 03:33:11,638.638 INFO    ] No existing commands found in stream
[2026-06-12 03:33:16,647.647 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 03:33:16,650.650 INFO    ] Waiting 0.24 seconds before fallback handling...
[2026-06-12 03:33:17,254.254 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 03:33:17,256.256 INFO    ] Checking for system updates...
[2026-06-12 03:33:17,276.276 INFO    ] 200
[2026-06-12 03:33:17,278.278 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:33:17,308.308 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 03:33:17,309.309 INFO    ] No update needed
[2026-06-12 03:33:17,310.310 INFO    ] Checking for camera pi updates...
[2026-06-12 03:33:17,332.332 INFO    ] 200
[2026-06-12 03:33:17,333.333 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:33:17,359.359 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 03:33:17,398.398 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 03:33:17,400.400 INFO    ] No camera update needed
[2026-06-12 03:33:17,401.401 INFO    ] Script finished. Safe exiting...
[2026-06-12 03:33:17,402.402 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 03:33:17,405.405 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 03:33:17,408.408 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 03:33:19,447.447 INFO    ] ================================================
[2026-06-12 03:33:19,462.462 INFO    ] Launching Daemon at Fri Jun 12 03:33:19 IST 2026
[2026-06-12 03:33:19,473.473 INFO    ] ================================================
[2026-06-12 03:33:19,801.801 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 03:33:19
[2026-06-12 03:33:20,114.114 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 03:33:20,253.253 INFO    ] Initializing speech engine...
[2026-06-12 03:33:20,263.263 INFO    ] 2026-06-12 03:33:20
[2026-06-12 03:33:20,468.468 INFO    ] 2026-06-12 03:33:20
[2026-06-12 03:33:20,508.508 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 03:33:20,693.693 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 03:33:20,702.702 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 03:33:20,855.855 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 03:33:20,909.909 INFO    ] time= 12/06/2026 03:33:20
[2026-06-12 03:33:20,937.937 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 03:33:20,949.949 INFO    ] Checking for existing commands in stream...
[2026-06-12 03:33:21,017.017 INFO    ] No existing commands found in stream
[2026-06-12 03:33:26,027.027 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 03:33:26,030.030 INFO    ] Waiting 1.69 seconds before fallback handling...
[2026-06-12 03:33:28,091.091 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 03:33:28,093.093 INFO    ] Checking for system updates...
[2026-06-12 03:33:28,114.114 INFO    ] 200
[2026-06-12 03:33:28,116.116 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:33:28,148.148 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 03:33:28,149.149 INFO    ] No update needed
[2026-06-12 03:33:28,151.151 INFO    ] Checking for camera pi updates...
[2026-06-12 03:33:28,171.171 INFO    ] 200
[2026-06-12 03:33:28,173.173 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:33:28,197.197 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 03:33:28,235.235 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 03:33:28,236.236 INFO    ] No camera update needed
[2026-06-12 03:33:28,238.238 INFO    ] Script finished. Safe exiting...
[2026-06-12 03:33:28,239.239 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 03:33:28,242.242 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 03:33:28,245.245 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 03:33:30,284.284 INFO    ] ================================================
[2026-06-12 03:33:30,299.299 INFO    ] Launching Daemon at Fri Jun 12 03:33:30 IST 2026
[2026-06-12 03:33:30,309.309 INFO    ] ================================================
[2026-06-12 03:33:30,678.678 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 03:33:30
[2026-06-12 03:33:31,012.012 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 03:33:31,149.149 INFO    ] Initializing speech engine...
[2026-06-12 03:33:31,162.162 INFO    ] 2026-06-12 03:33:31
[2026-06-12 03:33:31,374.374 INFO    ] 2026-06-12 03:33:31
[2026-06-12 03:33:31,403.403 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 03:33:31,604.604 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 03:33:31,608.608 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 03:33:31,758.758 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 03:33:31,845.845 INFO    ] time= 12/06/2026 03:33:31
[2026-06-12 03:33:31,862.862 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 03:33:31,869.869 INFO    ] Checking for existing commands in stream...
[2026-06-12 03:33:31,939.939 INFO    ] No existing commands found in stream
[2026-06-12 03:33:36,961.961 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 03:33:36,964.964 INFO    ] Waiting 0.08 seconds before fallback handling...
[2026-06-12 03:33:37,352.352 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 03:33:37,354.354 INFO    ] Checking for system updates...
[2026-06-12 03:33:37,376.376 INFO    ] 200
[2026-06-12 03:33:37,377.377 INFO    ] {"msg": "Status of machine", "state": "STATE_HEALTH_CHECK", "status": true}
[2026-06-12 03:33:37,379.379 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping update check
[2026-06-12 03:33:37,381.381 INFO    ] Checking for camera pi updates...
[2026-06-12 03:33:37,407.407 INFO    ] 200
[2026-06-12 03:33:37,408.408 INFO    ] {"msg": "Status of machine", "state": "STATE_HEALTH_CHECK", "status": true}
[2026-06-12 03:33:37,410.410 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping camera update check
[2026-06-12 03:33:37,412.412 INFO    ] Script finished. Safe exiting...
[2026-06-12 03:33:37,414.414 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 03:33:37,418.418 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 03:33:37,421.421 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 03:33:39,446.446 INFO    ] ================================================
[2026-06-12 03:33:39,455.455 INFO    ] Launching Daemon at Fri Jun 12 03:33:39 IST 2026
[2026-06-12 03:33:39,461.461 INFO    ] ================================================
[2026-06-12 03:33:39,776.776 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 03:33:39
[2026-06-12 03:33:40,108.108 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 03:33:40,252.252 INFO    ] Initializing speech engine...
[2026-06-12 03:33:40,257.257 INFO    ] 2026-06-12 03:33:40
[2026-06-12 03:33:40,463.463 INFO    ] 2026-06-12 03:33:40
[2026-06-12 03:33:40,493.493 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 03:33:40,679.679 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 03:33:40,687.687 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 03:33:40,819.819 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 03:33:40,883.883 INFO    ] time= 12/06/2026 03:33:40
[2026-06-12 03:33:40,911.911 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 03:33:40,917.917 INFO    ] Checking for existing commands in stream...
[2026-06-12 03:33:41,009.009 INFO    ] No existing commands found in stream
[2026-06-12 03:33:46,018.018 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 03:33:46,021.021 INFO    ] Waiting 2.22 seconds before fallback handling...
[2026-06-12 03:33:48,632.632 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 03:33:48,633.633 INFO    ] Checking for system updates...
[2026-06-12 03:33:48,656.656 INFO    ] 200
[2026-06-12 03:33:48,658.658 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:33:48,688.688 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 03:33:48,689.689 INFO    ] No update needed
[2026-06-12 03:33:48,691.691 INFO    ] Checking for camera pi updates...
[2026-06-12 03:33:48,710.710 INFO    ] 200
[2026-06-12 03:33:48,711.711 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:33:48,735.735 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 03:33:48,775.775 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 03:33:48,776.776 INFO    ] No camera update needed
[2026-06-12 03:33:48,778.778 INFO    ] Script finished. Safe exiting...
[2026-06-12 03:33:48,779.779 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 03:33:48,782.782 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 03:33:48,785.785 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 03:33:50,825.825 INFO    ] ================================================
[2026-06-12 03:33:50,841.841 INFO    ] Launching Daemon at Fri Jun 12 03:33:50 IST 2026
[2026-06-12 03:33:50,851.851 INFO    ] ================================================
[2026-06-12 03:33:51,180.180 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 03:33:51
[2026-06-12 03:33:51,492.492 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 03:33:51,623.623 INFO    ] Initializing speech engine...
[2026-06-12 03:33:51,627.627 INFO    ] 2026-06-12 03:33:51
[2026-06-12 03:33:51,845.845 INFO    ] 2026-06-12 03:33:51
[2026-06-12 03:33:51,874.874 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 03:33:52,059.059 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 03:33:52,068.068 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 03:33:52,199.199 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 03:33:52,263.263 INFO    ] time= 12/06/2026 03:33:52
[2026-06-12 03:33:52,291.291 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 03:33:52,297.297 INFO    ] Checking for existing commands in stream...
[2026-06-12 03:33:52,364.364 INFO    ] No existing commands found in stream
[2026-06-12 03:33:57,373.373 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 03:33:57,376.376 INFO    ] Waiting 3.07 seconds before fallback handling...
[2026-06-12 03:34:00,811.811 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 03:34:00,812.812 INFO    ] Checking for system updates...
[2026-06-12 03:34:00,833.833 INFO    ] 200
[2026-06-12 03:34:00,835.835 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:34:00,868.868 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 03:34:00,869.869 INFO    ] No update needed
[2026-06-12 03:34:00,871.871 INFO    ] Checking for camera pi updates...
[2026-06-12 03:34:00,892.892 INFO    ] 200
[2026-06-12 03:34:00,893.893 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:34:00,919.919 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 03:34:00,965.965 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 03:34:00,966.966 INFO    ] No camera update needed
[2026-06-12 03:34:00,968.968 INFO    ] Script finished. Safe exiting...
[2026-06-12 03:34:00,969.969 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 03:34:00,972.972 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 03:34:00,975.975 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 03:34:03,003.003 INFO    ] ================================================
[2026-06-12 03:34:03,012.012 INFO    ] Launching Daemon at Fri Jun 12 03:34:03 IST 2026
[2026-06-12 03:34:03,018.018 INFO    ] ================================================
[2026-06-12 03:34:03,394.394 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 03:34:03
[2026-06-12 03:34:03,731.731 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 03:34:03,885.885 INFO    ] Initializing speech engine...
[2026-06-12 03:34:03,891.891 INFO    ] 2026-06-12 03:34:03
[2026-06-12 03:34:04,099.099 INFO    ] 2026-06-12 03:34:04
[2026-06-12 03:34:04,128.128 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 03:34:04,315.315 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 03:34:04,324.324 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 03:34:04,457.457 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 03:34:04,517.517 INFO    ] time= 12/06/2026 03:34:04
[2026-06-12 03:34:04,551.551 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 03:34:04,558.558 INFO    ] Checking for existing commands in stream...
[2026-06-12 03:34:04,626.626 INFO    ] No existing commands found in stream
[2026-06-12 03:34:09,651.651 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 03:34:09,654.654 INFO    ] Waiting 2.76 seconds before fallback handling...
[2026-06-12 03:34:12,833.833 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 03:34:12,835.835 INFO    ] Checking for system updates...
[2026-06-12 03:34:12,856.856 INFO    ] 200
[2026-06-12 03:34:12,857.857 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:34:12,890.890 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 03:34:12,891.891 INFO    ] No update needed
[2026-06-12 03:34:12,893.893 INFO    ] Checking for camera pi updates...
[2026-06-12 03:34:12,913.913 INFO    ] 200
[2026-06-12 03:34:12,915.915 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:34:12,938.938 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 03:34:12,976.976 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 03:34:12,977.977 INFO    ] No camera update needed
[2026-06-12 03:34:12,978.978 INFO    ] Script finished. Safe exiting...
[2026-06-12 03:34:12,980.980 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 03:34:12,983.983 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 03:34:12,986.986 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 03:34:15,025.025 INFO    ] ================================================
[2026-06-12 03:34:15,040.040 INFO    ] Launching Daemon at Fri Jun 12 03:34:15 IST 2026
[2026-06-12 03:34:15,051.051 INFO    ] ================================================
[2026-06-12 03:34:15,382.382 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 03:34:15
[2026-06-12 03:34:15,698.698 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 03:34:15,836.836 INFO    ] Initializing speech engine...
[2026-06-12 03:34:15,847.847 INFO    ] 2026-06-12 03:34:15
[2026-06-12 03:34:16,054.054 INFO    ] 2026-06-12 03:34:16
[2026-06-12 03:34:16,083.083 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 03:34:16,266.266 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 03:34:16,275.275 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 03:34:16,410.410 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 03:34:16,475.475 INFO    ] time= 12/06/2026 03:34:16
[2026-06-12 03:34:16,499.499 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 03:34:16,505.505 INFO    ] Checking for existing commands in stream...
[2026-06-12 03:34:16,599.599 INFO    ] No existing commands found in stream
[2026-06-12 03:34:21,608.608 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 03:34:21,611.611 INFO    ] Waiting 2.57 seconds before fallback handling...
[2026-06-12 03:34:24,573.573 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 03:34:24,575.575 INFO    ] Checking for system updates...
[2026-06-12 03:34:24,596.596 INFO    ] 200
[2026-06-12 03:34:24,597.597 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:34:24,628.628 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 03:34:24,629.629 INFO    ] No update needed
[2026-06-12 03:34:24,631.631 INFO    ] Checking for camera pi updates...
[2026-06-12 03:34:24,652.652 INFO    ] 200
[2026-06-12 03:34:24,653.653 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:34:24,679.679 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 03:34:24,726.726 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 03:34:24,727.727 INFO    ] No camera update needed
[2026-06-12 03:34:24,729.729 INFO    ] Script finished. Safe exiting...
[2026-06-12 03:34:24,730.730 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 03:34:24,734.734 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 03:34:24,737.737 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 03:34:26,775.775 INFO    ] ================================================
[2026-06-12 03:34:26,790.790 INFO    ] Launching Daemon at Fri Jun 12 03:34:26 IST 2026
[2026-06-12 03:34:26,801.801 INFO    ] ================================================
[2026-06-12 03:34:27,140.140 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 03:34:27
[2026-06-12 03:34:27,452.452 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 03:34:27,584.584 INFO    ] Initializing speech engine...
[2026-06-12 03:34:27,589.589 INFO    ] 2026-06-12 03:34:27
[2026-06-12 03:34:27,784.784 INFO    ] 2026-06-12 03:34:27
[2026-06-12 03:34:27,830.830 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 03:34:27,965.965 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 03:34:27,967.967 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 03:34:28,102.102 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 03:34:28,108.108 INFO    ] time= 12/06/2026 03:34:28
[2026-06-12 03:34:28,181.181 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 03:34:28,230.230 INFO    ] Checking for existing commands in stream...
[2026-06-12 03:34:28,324.324 INFO    ] No existing commands found in stream
[2026-06-12 03:34:33,342.342 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 03:34:33,345.345 INFO    ] Waiting 0.03 seconds before fallback handling...
[2026-06-12 03:34:33,715.715 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 03:34:33,717.717 INFO    ] Checking for system updates...
[2026-06-12 03:34:33,737.737 INFO    ] 200
[2026-06-12 03:34:33,738.738 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:34:33,769.769 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 03:34:33,770.770 INFO    ] No update needed
[2026-06-12 03:34:33,771.771 INFO    ] Checking for camera pi updates...
[2026-06-12 03:34:33,791.791 INFO    ] 200
[2026-06-12 03:34:33,792.792 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:34:33,816.816 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 03:34:33,852.852 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 03:34:33,854.854 INFO    ] No camera update needed
[2026-06-12 03:34:33,855.855 INFO    ] Script finished. Safe exiting...
[2026-06-12 03:34:33,856.856 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 03:34:33,859.859 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 03:34:33,862.862 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 03:34:35,900.900 INFO    ] ================================================
[2026-06-12 03:34:35,916.916 INFO    ] Launching Daemon at Fri Jun 12 03:34:35 IST 2026
[2026-06-12 03:34:35,926.926 INFO    ] ================================================
[2026-06-12 03:34:36,295.295 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 03:34:36
[2026-06-12 03:34:36,613.613 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 03:34:36,746.746 INFO    ] Initializing speech engine...
[2026-06-12 03:34:36,754.754 INFO    ] 2026-06-12 03:34:36
[2026-06-12 03:34:36,966.966 INFO    ] 2026-06-12 03:34:36
[2026-06-12 03:34:36,995.995 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 03:34:37,179.179 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 03:34:37,189.189 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 03:34:37,337.337 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 03:34:37,386.386 INFO    ] time= 12/06/2026 03:34:37
[2026-06-12 03:34:37,408.408 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 03:34:37,414.414 INFO    ] Checking for existing commands in stream...
[2026-06-12 03:34:37,481.481 INFO    ] No existing commands found in stream
[2026-06-12 03:34:42,495.495 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 03:34:42,498.498 INFO    ] Waiting 1.52 seconds before fallback handling...
[2026-06-12 03:34:44,411.411 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 03:34:44,412.412 INFO    ] Checking for system updates...
[2026-06-12 03:34:44,433.433 INFO    ] 200
[2026-06-12 03:34:44,434.434 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:34:44,464.464 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 03:34:44,466.466 INFO    ] No update needed
[2026-06-12 03:34:44,467.467 INFO    ] Checking for camera pi updates...
[2026-06-12 03:34:44,486.486 INFO    ] 200
[2026-06-12 03:34:44,488.488 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:34:44,512.512 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 03:34:44,549.549 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 03:34:44,550.550 INFO    ] No camera update needed
[2026-06-12 03:34:44,552.552 INFO    ] Script finished. Safe exiting...
[2026-06-12 03:34:44,553.553 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 03:34:44,556.556 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 03:34:44,559.559 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 03:34:46,604.604 INFO    ] ================================================
[2026-06-12 03:34:46,619.619 INFO    ] Launching Daemon at Fri Jun 12 03:34:46 IST 2026
[2026-06-12 03:34:46,629.629 INFO    ] ================================================
[2026-06-12 03:34:46,959.959 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 03:34:46
[2026-06-12 03:34:47,272.272 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 03:34:47,405.405 INFO    ] Initializing speech engine...
[2026-06-12 03:34:47,408.408 INFO    ] 2026-06-12 03:34:47
[2026-06-12 03:34:47,638.638 INFO    ] 2026-06-12 03:34:47
[2026-06-12 03:34:47,668.668 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 03:34:47,805.805 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 03:34:47,867.867 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 03:34:48,010.010 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 03:34:48,061.061 INFO    ] time= 12/06/2026 03:34:48
[2026-06-12 03:34:48,100.100 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 03:34:48,118.118 INFO    ] Checking for existing commands in stream...
[2026-06-12 03:34:48,221.221 INFO    ] No existing commands found in stream
[2026-06-12 03:34:53,230.230 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 03:34:53,232.232 INFO    ] Waiting 1.73 seconds before fallback handling...
[2026-06-12 03:34:55,352.352 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 03:34:55,354.354 INFO    ] Checking for system updates...
[2026-06-12 03:34:55,374.374 INFO    ] 200
[2026-06-12 03:34:55,376.376 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:34:55,406.406 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 03:34:55,407.407 INFO    ] No update needed
[2026-06-12 03:34:55,409.409 INFO    ] Checking for camera pi updates...
[2026-06-12 03:34:55,430.430 INFO    ] 200
[2026-06-12 03:34:55,432.432 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:34:55,458.458 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 03:34:55,601.601 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 03:34:55,603.603 INFO    ] No camera update needed
[2026-06-12 03:34:55,604.604 INFO    ] Script finished. Safe exiting...
[2026-06-12 03:34:55,605.605 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 03:34:55,608.608 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 03:34:55,611.611 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 03:34:57,650.650 INFO    ] ================================================
[2026-06-12 03:34:57,665.665 INFO    ] Launching Daemon at Fri Jun 12 03:34:57 IST 2026
[2026-06-12 03:34:57,676.676 INFO    ] ================================================
[2026-06-12 03:34:58,001.001 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 03:34:57
[2026-06-12 03:34:58,312.312 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 03:34:58,448.448 INFO    ] Initializing speech engine...
[2026-06-12 03:34:58,458.458 INFO    ] 2026-06-12 03:34:58
[2026-06-12 03:34:58,662.662 INFO    ] 2026-06-12 03:34:58
[2026-06-12 03:34:58,691.691 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 03:34:58,875.875 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 03:34:58,884.884 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 03:34:59,014.014 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 03:34:59,082.082 INFO    ] time= 12/06/2026 03:34:59
[2026-06-12 03:34:59,106.106 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 03:34:59,113.113 INFO    ] Checking for existing commands in stream...
[2026-06-12 03:34:59,227.227 INFO    ] No existing commands found in stream
[2026-06-12 03:35:04,238.238 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 03:35:04,241.241 INFO    ] Waiting 0.00 seconds before fallback handling...
[2026-06-12 03:35:04,620.620 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 03:35:04,621.621 INFO    ] Checking for system updates...
[2026-06-12 03:35:04,645.645 INFO    ] 200
[2026-06-12 03:35:04,647.647 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:35:04,684.684 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 03:35:04,685.685 INFO    ] No update needed
[2026-06-12 03:35:04,687.687 INFO    ] Checking for camera pi updates...
[2026-06-12 03:35:04,708.708 INFO    ] 200
[2026-06-12 03:35:04,710.710 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:35:04,734.734 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 03:35:04,777.777 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 03:35:04,778.778 INFO    ] No camera update needed
[2026-06-12 03:35:04,780.780 INFO    ] Script finished. Safe exiting...
[2026-06-12 03:35:04,781.781 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 03:35:04,784.784 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 03:35:04,787.787 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 03:35:06,827.827 INFO    ] ================================================
[2026-06-12 03:35:06,842.842 INFO    ] Launching Daemon at Fri Jun 12 03:35:06 IST 2026
[2026-06-12 03:35:06,853.853 INFO    ] ================================================
[2026-06-12 03:35:07,179.179 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 03:35:07
[2026-06-12 03:35:07,491.491 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 03:35:07,622.622 INFO    ] Initializing speech engine...
[2026-06-12 03:35:07,630.630 INFO    ] 2026-06-12 03:35:07
[2026-06-12 03:35:07,846.846 INFO    ] 2026-06-12 03:35:07
[2026-06-12 03:35:07,876.876 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 03:35:07,999.999 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 03:35:08,062.062 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 03:35:08,180.180 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 03:35:08,199.199 INFO    ] time= 12/06/2026 03:35:08
[2026-06-12 03:35:08,255.255 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 03:35:08,294.294 INFO    ] Checking for existing commands in stream...
[2026-06-12 03:35:08,370.370 INFO    ] No existing commands found in stream
[2026-06-12 03:35:13,383.383 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 03:35:13,384.384 INFO    ] Waiting 2.75 seconds before fallback handling...
[2026-06-12 03:35:16,509.509 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 03:35:16,511.511 INFO    ] Checking for system updates...
[2026-06-12 03:35:16,531.531 INFO    ] 200
[2026-06-12 03:35:16,533.533 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:35:16,563.563 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 03:35:16,565.565 INFO    ] No update needed
[2026-06-12 03:35:16,566.566 INFO    ] Checking for camera pi updates...
[2026-06-12 03:35:16,586.586 INFO    ] 200
[2026-06-12 03:35:16,587.587 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:35:16,614.614 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 03:35:16,655.655 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 03:35:16,656.656 INFO    ] No camera update needed
[2026-06-12 03:35:16,657.657 INFO    ] Script finished. Safe exiting...
[2026-06-12 03:35:16,659.659 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 03:35:16,662.662 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 03:35:16,665.665 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 03:35:18,704.704 INFO    ] ================================================
[2026-06-12 03:35:18,719.719 INFO    ] Launching Daemon at Fri Jun 12 03:35:18 IST 2026
[2026-06-12 03:35:18,730.730 INFO    ] ================================================
[2026-06-12 03:35:19,063.063 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 03:35:19
[2026-06-12 03:35:19,374.374 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 03:35:19,518.518 INFO    ] Initializing speech engine...
[2026-06-12 03:35:19,523.523 INFO    ] 2026-06-12 03:35:19
[2026-06-12 03:35:19,729.729 INFO    ] 2026-06-12 03:35:19
[2026-06-12 03:35:19,757.757 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 03:35:19,946.946 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 03:35:19,955.955 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 03:35:20,082.082 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 03:35:20,148.148 INFO    ] time= 12/06/2026 03:35:20
[2026-06-12 03:35:20,169.169 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 03:35:20,181.181 INFO    ] Checking for existing commands in stream...
[2026-06-12 03:35:20,253.253 INFO    ] No existing commands found in stream
[2026-06-12 03:35:25,262.262 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 03:35:25,265.265 INFO    ] Waiting 0.64 seconds before fallback handling...
[2026-06-12 03:35:26,271.271 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 03:35:26,273.273 INFO    ] Checking for system updates...
[2026-06-12 03:35:26,294.294 INFO    ] 200
[2026-06-12 03:35:26,295.295 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:35:26,327.327 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 03:35:26,329.329 INFO    ] No update needed
[2026-06-12 03:35:26,330.330 INFO    ] Checking for camera pi updates...
[2026-06-12 03:35:26,351.351 INFO    ] 200
[2026-06-12 03:35:26,353.353 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:35:26,376.376 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 03:35:26,416.416 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 03:35:26,418.418 INFO    ] No camera update needed
[2026-06-12 03:35:26,419.419 INFO    ] Script finished. Safe exiting...
[2026-06-12 03:35:26,420.420 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 03:35:26,423.423 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 03:35:26,426.426 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 03:35:28,466.466 INFO    ] ================================================
[2026-06-12 03:35:28,481.481 INFO    ] Launching Daemon at Fri Jun 12 03:35:28 IST 2026
[2026-06-12 03:35:28,492.492 INFO    ] ================================================
[2026-06-12 03:35:28,843.843 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 03:35:28
[2026-06-12 03:35:29,155.155 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 03:35:29,286.286 INFO    ] Initializing speech engine...
[2026-06-12 03:35:29,291.291 INFO    ] 2026-06-12 03:35:29
[2026-06-12 03:35:29,519.519 INFO    ] 2026-06-12 03:35:29
[2026-06-12 03:35:29,549.549 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 03:35:29,745.745 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 03:35:29,756.756 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 03:35:29,988.988 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 03:35:29,995.995 INFO    ] time= 12/06/2026 03:35:29
[2026-06-12 03:35:29,997.997 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 03:35:29,998.998 INFO    ] Checking for existing commands in stream...
[2026-06-12 03:35:30,067.067 INFO    ] No existing commands found in stream
[2026-06-12 03:35:35,078.078 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 03:35:35,081.081 INFO    ] Waiting 1.81 seconds before fallback handling...
[2026-06-12 03:35:37,290.290 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 03:35:37,292.292 INFO    ] Checking for system updates...
[2026-06-12 03:35:37,313.313 INFO    ] 200
[2026-06-12 03:35:37,315.315 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:35:37,345.345 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 03:35:37,346.346 INFO    ] No update needed
[2026-06-12 03:35:37,347.347 INFO    ] Checking for camera pi updates...
[2026-06-12 03:35:37,370.370 INFO    ] 200
[2026-06-12 03:35:37,371.371 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:35:37,395.395 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 03:35:37,443.443 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 03:35:37,444.444 INFO    ] No camera update needed
[2026-06-12 03:35:37,446.446 INFO    ] Script finished. Safe exiting...
[2026-06-12 03:35:37,447.447 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 03:35:37,450.450 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 03:35:37,452.452 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 03:35:39,492.492 INFO    ] ================================================
[2026-06-12 03:35:39,507.507 INFO    ] Launching Daemon at Fri Jun 12 03:35:39 IST 2026
[2026-06-12 03:35:39,517.517 INFO    ] ================================================
[2026-06-12 03:35:39,899.899 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 03:35:39
[2026-06-12 03:35:40,233.233 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 03:35:40,383.383 INFO    ] Initializing speech engine...
[2026-06-12 03:35:40,389.389 INFO    ] 2026-06-12 03:35:40
[2026-06-12 03:35:40,597.597 INFO    ] 2026-06-12 03:35:40
[2026-06-12 03:35:40,627.627 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 03:35:40,810.810 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 03:35:40,821.821 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 03:35:40,948.948 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 03:35:41,009.009 INFO    ] time= 12/06/2026 03:35:40
[2026-06-12 03:35:41,041.041 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 03:35:41,048.048 INFO    ] Checking for existing commands in stream...
[2026-06-12 03:35:41,115.115 INFO    ] No existing commands found in stream
[2026-06-12 03:35:46,130.130 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 03:35:46,133.133 INFO    ] Waiting 3.82 seconds before fallback handling...
[2026-06-12 03:35:50,310.310 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 03:35:50,312.312 INFO    ] Checking for system updates...
[2026-06-12 03:35:50,333.333 INFO    ] 200
[2026-06-12 03:35:50,335.335 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:35:50,366.366 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 03:35:50,368.368 INFO    ] No update needed
[2026-06-12 03:35:50,369.369 INFO    ] Checking for camera pi updates...
[2026-06-12 03:35:50,392.392 INFO    ] 200
[2026-06-12 03:35:50,393.393 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:35:50,418.418 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 03:35:50,454.454 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 03:35:50,455.455 INFO    ] No camera update needed
[2026-06-12 03:35:50,457.457 INFO    ] Script finished. Safe exiting...
[2026-06-12 03:35:50,458.458 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 03:35:50,461.461 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 03:35:50,464.464 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 03:35:52,503.503 INFO    ] ================================================
[2026-06-12 03:35:52,519.519 INFO    ] Launching Daemon at Fri Jun 12 03:35:52 IST 2026
[2026-06-12 03:35:52,530.530 INFO    ] ================================================
[2026-06-12 03:35:52,891.891 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 03:35:52
[2026-06-12 03:35:53,202.202 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 03:35:53,334.334 INFO    ] Initializing speech engine...
[2026-06-12 03:35:53,337.337 INFO    ] 2026-06-12 03:35:53
[2026-06-12 03:35:53,546.546 INFO    ] 2026-06-12 03:35:53
[2026-06-12 03:35:53,574.574 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 03:35:53,798.798 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 03:35:53,806.806 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 03:35:53,939.939 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 03:35:53,995.995 INFO    ] time= 12/06/2026 03:35:53
[2026-06-12 03:35:54,024.024 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 03:35:54,046.046 INFO    ] Checking for existing commands in stream...
[2026-06-12 03:35:54,122.122 INFO    ] No existing commands found in stream
[2026-06-12 03:35:59,132.132 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 03:35:59,135.135 INFO    ] Waiting 0.48 seconds before fallback handling...
[2026-06-12 03:36:00,013.013 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 03:36:00,014.014 INFO    ] Checking for system updates...
[2026-06-12 03:36:00,034.034 INFO    ] 200
[2026-06-12 03:36:00,036.036 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:36:00,066.066 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 03:36:00,068.068 INFO    ] No update needed
[2026-06-12 03:36:00,069.069 INFO    ] Checking for camera pi updates...
[2026-06-12 03:36:00,088.088 INFO    ] 200
[2026-06-12 03:36:00,089.089 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:36:00,114.114 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 03:36:00,153.153 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 03:36:00,154.154 INFO    ] No camera update needed
[2026-06-12 03:36:00,155.155 INFO    ] Script finished. Safe exiting...
[2026-06-12 03:36:00,156.156 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 03:36:00,159.159 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 03:36:00,162.162 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 03:36:02,195.195 INFO    ] ================================================
[2026-06-12 03:36:02,206.206 INFO    ] Launching Daemon at Fri Jun 12 03:36:02 IST 2026
[2026-06-12 03:36:02,212.212 INFO    ] ================================================
[2026-06-12 03:36:02,539.539 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 03:36:02
[2026-06-12 03:36:02,855.855 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 03:36:03,000.000 INFO    ] Initializing speech engine...
[2026-06-12 03:36:03,005.005 INFO    ] 2026-06-12 03:36:03
[2026-06-12 03:36:03,209.209 INFO    ] 2026-06-12 03:36:03
[2026-06-12 03:36:03,238.238 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 03:36:03,361.361 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 03:36:03,423.423 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 03:36:03,568.568 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 03:36:03,630.630 INFO    ] time= 12/06/2026 03:36:03
[2026-06-12 03:36:03,653.653 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 03:36:03,659.659 INFO    ] Checking for existing commands in stream...
[2026-06-12 03:36:03,726.726 INFO    ] No existing commands found in stream
[2026-06-12 03:36:08,741.741 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 03:36:08,743.743 INFO    ] Waiting 1.59 seconds before fallback handling...
[2026-06-12 03:36:10,741.741 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 03:36:10,742.742 INFO    ] Checking for system updates...
[2026-06-12 03:36:10,763.763 INFO    ] 200
[2026-06-12 03:36:10,764.764 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:36:10,797.797 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 03:36:10,798.798 INFO    ] No update needed
[2026-06-12 03:36:10,800.800 INFO    ] Checking for camera pi updates...
[2026-06-12 03:36:10,820.820 INFO    ] 200
[2026-06-12 03:36:10,821.821 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:36:10,844.844 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 03:36:10,884.884 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 03:36:10,885.885 INFO    ] No camera update needed
[2026-06-12 03:36:10,886.886 INFO    ] Script finished. Safe exiting...
[2026-06-12 03:36:10,887.887 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 03:36:10,891.891 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 03:36:10,893.893 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 03:36:12,934.934 INFO    ] ================================================
[2026-06-12 03:36:12,949.949 INFO    ] Launching Daemon at Fri Jun 12 03:36:12 IST 2026
[2026-06-12 03:36:12,960.960 INFO    ] ================================================
[2026-06-12 03:36:13,328.328 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 03:36:13
[2026-06-12 03:36:13,647.647 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 03:36:13,786.786 INFO    ] Initializing speech engine...
[2026-06-12 03:36:13,796.796 INFO    ] 2026-06-12 03:36:13
[2026-06-12 03:36:14,000.000 INFO    ] 2026-06-12 03:36:13
[2026-06-12 03:36:14,028.028 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 03:36:14,212.212 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 03:36:14,221.221 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 03:36:14,376.376 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 03:36:14,420.420 INFO    ] time= 12/06/2026 03:36:14
[2026-06-12 03:36:14,441.441 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 03:36:14,448.448 INFO    ] Checking for existing commands in stream...
[2026-06-12 03:36:14,515.515 INFO    ] No existing commands found in stream
[2026-06-12 03:36:19,529.529 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 03:36:19,532.532 INFO    ] Waiting 3.73 seconds before fallback handling...
[2026-06-12 03:36:23,810.810 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 03:36:23,812.812 INFO    ] Checking for system updates...
[2026-06-12 03:36:23,832.832 INFO    ] 200
[2026-06-12 03:36:23,834.834 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:36:23,864.864 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 03:36:23,865.865 INFO    ] No update needed
[2026-06-12 03:36:23,866.866 INFO    ] Checking for camera pi updates...
[2026-06-12 03:36:23,888.888 INFO    ] 200
[2026-06-12 03:36:23,889.889 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:36:23,915.915 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 03:36:23,958.958 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 03:36:23,960.960 INFO    ] No camera update needed
[2026-06-12 03:36:23,961.961 INFO    ] Script finished. Safe exiting...
[2026-06-12 03:36:23,962.962 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 03:36:23,965.965 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 03:36:23,968.968 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 03:36:26,007.007 INFO    ] ================================================
[2026-06-12 03:36:26,024.024 INFO    ] Launching Daemon at Fri Jun 12 03:36:26 IST 2026
[2026-06-12 03:36:26,035.035 INFO    ] ================================================
[2026-06-12 03:36:26,396.396 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 03:36:26
[2026-06-12 03:36:26,708.708 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 03:36:26,851.851 INFO    ] Initializing speech engine...
[2026-06-12 03:36:26,856.856 INFO    ] 2026-06-12 03:36:26
[2026-06-12 03:36:27,062.062 INFO    ] 2026-06-12 03:36:27
[2026-06-12 03:36:27,090.090 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 03:36:27,280.280 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 03:36:27,289.289 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 03:36:27,437.437 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 03:36:27,492.492 INFO    ] time= 12/06/2026 03:36:27
[2026-06-12 03:36:27,514.514 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 03:36:27,585.585 INFO    ] Checking for existing commands in stream...
[2026-06-12 03:36:27,706.706 INFO    ] No existing commands found in stream
[2026-06-12 03:36:32,716.716 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 03:36:32,719.719 INFO    ] Waiting 3.08 seconds before fallback handling...
[2026-06-12 03:36:36,197.197 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 03:36:36,199.199 INFO    ] Checking for system updates...
[2026-06-12 03:36:36,220.220 INFO    ] 200
[2026-06-12 03:36:36,221.221 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:36:36,251.251 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 03:36:36,253.253 INFO    ] No update needed
[2026-06-12 03:36:36,254.254 INFO    ] Checking for camera pi updates...
[2026-06-12 03:36:36,274.274 INFO    ] 200
[2026-06-12 03:36:36,276.276 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:36:36,298.298 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 03:36:36,329.329 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 03:36:36,330.330 INFO    ] No camera update needed
[2026-06-12 03:36:36,332.332 INFO    ] Script finished. Safe exiting...
[2026-06-12 03:36:36,333.333 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 03:36:36,336.336 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 03:36:36,338.338 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 03:36:38,379.379 INFO    ] ================================================
[2026-06-12 03:36:38,394.394 INFO    ] Launching Daemon at Fri Jun 12 03:36:38 IST 2026
[2026-06-12 03:36:38,406.406 INFO    ] ================================================
[2026-06-12 03:36:38,769.769 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 03:36:38
[2026-06-12 03:36:39,107.107 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 03:36:39,258.258 INFO    ] Initializing speech engine...
[2026-06-12 03:36:39,263.263 INFO    ] 2026-06-12 03:36:39
[2026-06-12 03:36:39,471.471 INFO    ] 2026-06-12 03:36:39
[2026-06-12 03:36:39,500.500 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 03:36:39,685.685 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 03:36:39,697.697 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 03:36:39,839.839 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 03:36:39,893.893 INFO    ] time= 12/06/2026 03:36:39
[2026-06-12 03:36:39,916.916 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 03:36:39,921.921 INFO    ] Checking for existing commands in stream...
[2026-06-12 03:36:39,988.988 INFO    ] No existing commands found in stream
[2026-06-12 03:36:45,002.002 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 03:36:45,006.006 INFO    ] Waiting 3.48 seconds before fallback handling...
[2026-06-12 03:36:48,892.892 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 03:36:48,893.893 INFO    ] Checking for system updates...
[2026-06-12 03:36:48,915.915 INFO    ] 200
[2026-06-12 03:36:48,917.917 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:36:48,948.948 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 03:36:48,949.949 INFO    ] No update needed
[2026-06-12 03:36:48,951.951 INFO    ] Checking for camera pi updates...
[2026-06-12 03:36:48,972.972 INFO    ] 200
[2026-06-12 03:36:48,973.973 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:36:48,999.999 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 03:36:49,044.044 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 03:36:49,046.046 INFO    ] No camera update needed
[2026-06-12 03:36:49,047.047 INFO    ] Script finished. Safe exiting...
[2026-06-12 03:36:49,048.048 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 03:36:49,052.052 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 03:36:49,055.055 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 03:36:51,095.095 INFO    ] ================================================
[2026-06-12 03:36:51,111.111 INFO    ] Launching Daemon at Fri Jun 12 03:36:51 IST 2026
[2026-06-12 03:36:51,122.122 INFO    ] ================================================
[2026-06-12 03:36:51,479.479 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 03:36:51
[2026-06-12 03:36:51,802.802 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 03:36:51,938.938 INFO    ] Initializing speech engine...
[2026-06-12 03:36:51,947.947 INFO    ] 2026-06-12 03:36:51
[2026-06-12 03:36:52,172.172 INFO    ] 2026-06-12 03:36:52
[2026-06-12 03:36:52,203.203 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 03:36:52,336.336 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 03:36:52,369.369 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 03:36:52,547.547 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 03:36:52,600.600 INFO    ] time= 12/06/2026 03:36:52
[2026-06-12 03:36:52,639.639 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 03:36:52,657.657 INFO    ] Checking for existing commands in stream...
[2026-06-12 03:36:52,760.760 INFO    ] No existing commands found in stream
[2026-06-12 03:36:57,769.769 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 03:36:57,773.773 INFO    ] Waiting 3.38 seconds before fallback handling...
[2026-06-12 03:37:01,535.535 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 03:37:01,537.537 INFO    ] Checking for system updates...
[2026-06-12 03:37:01,595.595 INFO    ] 200
[2026-06-12 03:37:01,598.598 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:37:01,663.663 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 03:37:01,665.665 INFO    ] No update needed
[2026-06-12 03:37:01,667.667 INFO    ] Checking for camera pi updates...
[2026-06-12 03:37:01,725.725 INFO    ] 200
[2026-06-12 03:37:01,728.728 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:37:01,775.775 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 03:37:01,904.904 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 03:37:01,906.906 INFO    ] No camera update needed
[2026-06-12 03:37:01,908.908 INFO    ] Script finished. Safe exiting...
[2026-06-12 03:37:01,912.912 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 03:37:01,917.917 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 03:37:01,922.922 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 03:37:03,965.965 INFO    ] ================================================
[2026-06-12 03:37:03,981.981 INFO    ] Launching Daemon at Fri Jun 12 03:37:03 IST 2026
[2026-06-12 03:37:03,992.992 INFO    ] ================================================
[2026-06-12 03:37:04,365.365 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 03:37:04
[2026-06-12 03:37:04,703.703 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 03:37:04,856.856 INFO    ] Initializing speech engine...
[2026-06-12 03:37:04,858.858 INFO    ] 2026-06-12 03:37:04
[2026-06-12 03:37:05,078.078 INFO    ] 2026-06-12 03:37:05
[2026-06-12 03:37:05,108.108 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 03:37:05,246.246 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 03:37:05,307.307 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 03:37:05,453.453 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 03:37:05,517.517 INFO    ] time= 12/06/2026 03:37:05
[2026-06-12 03:37:05,542.542 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 03:37:05,549.549 INFO    ] Checking for existing commands in stream...
[2026-06-12 03:37:05,623.623 INFO    ] No existing commands found in stream
[2026-06-12 03:37:10,649.649 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 03:37:10,652.652 INFO    ] Waiting 1.42 seconds before fallback handling...
[2026-06-12 03:37:12,452.452 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 03:37:12,453.453 INFO    ] Checking for system updates...
[2026-06-12 03:37:12,474.474 INFO    ] 200
[2026-06-12 03:37:12,476.476 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:37:12,506.506 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 03:37:12,507.507 INFO    ] No update needed
[2026-06-12 03:37:12,509.509 INFO    ] Checking for camera pi updates...
[2026-06-12 03:37:12,529.529 INFO    ] 200
[2026-06-12 03:37:12,531.531 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:37:12,555.555 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 03:37:12,596.596 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 03:37:12,598.598 INFO    ] No camera update needed
[2026-06-12 03:37:12,599.599 INFO    ] Script finished. Safe exiting...
[2026-06-12 03:37:12,601.601 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 03:37:12,604.604 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 03:37:12,607.607 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 03:37:14,649.649 INFO    ] ================================================
[2026-06-12 03:37:14,665.665 INFO    ] Launching Daemon at Fri Jun 12 03:37:14 IST 2026
[2026-06-12 03:37:14,677.677 INFO    ] ================================================
[2026-06-12 03:37:15,039.039 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 03:37:15
[2026-06-12 03:37:15,355.355 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 03:37:15,492.492 INFO    ] Initializing speech engine...
[2026-06-12 03:37:15,505.505 INFO    ] 2026-06-12 03:37:15
[2026-06-12 03:37:15,725.725 INFO    ] 2026-06-12 03:37:15
[2026-06-12 03:37:15,755.755 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 03:37:15,954.954 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 03:37:15,958.958 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 03:37:16,107.107 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 03:37:16,168.168 INFO    ] time= 12/06/2026 03:37:16
[2026-06-12 03:37:16,214.214 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 03:37:16,216.216 INFO    ] Checking for existing commands in stream...
[2026-06-12 03:37:16,294.294 INFO    ] No existing commands found in stream
[2026-06-12 03:37:21,303.303 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 03:37:21,306.306 INFO    ] Waiting 2.32 seconds before fallback handling...
[2026-06-12 03:37:24,010.010 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 03:37:24,012.012 INFO    ] Checking for system updates...
[2026-06-12 03:37:24,032.032 INFO    ] 200
[2026-06-12 03:37:24,034.034 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:37:24,067.067 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 03:37:24,068.068 INFO    ] No update needed
[2026-06-12 03:37:24,069.069 INFO    ] Checking for camera pi updates...
[2026-06-12 03:37:24,089.089 INFO    ] 200
[2026-06-12 03:37:24,091.091 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:37:24,114.114 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 03:37:24,153.153 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 03:37:24,155.155 INFO    ] No camera update needed
[2026-06-12 03:37:24,156.156 INFO    ] Script finished. Safe exiting...
[2026-06-12 03:37:24,157.157 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 03:37:24,160.160 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 03:37:24,163.163 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 03:37:26,202.202 INFO    ] ================================================
[2026-06-12 03:37:26,218.218 INFO    ] Launching Daemon at Fri Jun 12 03:37:26 IST 2026
[2026-06-12 03:37:26,229.229 INFO    ] ================================================
[2026-06-12 03:37:26,557.557 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 03:37:26
[2026-06-12 03:37:26,868.868 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 03:37:27,002.002 INFO    ] Initializing speech engine...
[2026-06-12 03:37:27,011.011 INFO    ] 2026-06-12 03:37:27
[2026-06-12 03:37:27,242.242 INFO    ] 2026-06-12 03:37:27
[2026-06-12 03:37:27,275.275 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 03:37:27,408.408 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 03:37:27,457.457 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 03:37:27,631.631 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 03:37:27,640.640 INFO    ] time= 12/06/2026 03:37:27
[2026-06-12 03:37:27,707.707 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 03:37:27,743.743 INFO    ] Checking for existing commands in stream...
[2026-06-12 03:37:27,818.818 INFO    ] No existing commands found in stream
[2026-06-12 03:37:32,829.829 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 03:37:32,832.832 INFO    ] Waiting 0.20 seconds before fallback handling...
[2026-06-12 03:37:33,391.391 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 03:37:33,392.392 INFO    ] Checking for system updates...
[2026-06-12 03:37:33,413.413 INFO    ] 200
[2026-06-12 03:37:33,414.414 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:37:33,444.444 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 03:37:33,446.446 INFO    ] No update needed
[2026-06-12 03:37:33,447.447 INFO    ] Checking for camera pi updates...
[2026-06-12 03:37:33,466.466 INFO    ] 200
[2026-06-12 03:37:33,467.467 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:37:33,491.491 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 03:37:33,531.531 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 03:37:33,532.532 INFO    ] No camera update needed
[2026-06-12 03:37:33,533.533 INFO    ] Script finished. Safe exiting...
[2026-06-12 03:37:33,535.535 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 03:37:33,538.538 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 03:37:33,540.540 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 03:37:35,580.580 INFO    ] ================================================
[2026-06-12 03:37:35,596.596 INFO    ] Launching Daemon at Fri Jun 12 03:37:35 IST 2026
[2026-06-12 03:37:35,607.607 INFO    ] ================================================
[2026-06-12 03:37:35,947.947 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 03:37:35
[2026-06-12 03:37:36,259.259 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 03:37:36,402.402 INFO    ] Initializing speech engine...
[2026-06-12 03:37:36,407.407 INFO    ] 2026-06-12 03:37:36
[2026-06-12 03:37:36,608.608 INFO    ] 2026-06-12 03:37:36
[2026-06-12 03:37:36,637.637 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 03:37:36,821.821 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 03:37:36,829.829 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 03:37:36,979.979 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 03:37:37,027.027 INFO    ] time= 12/06/2026 03:37:36
[2026-06-12 03:37:37,049.049 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 03:37:37,056.056 INFO    ] Checking for existing commands in stream...
[2026-06-12 03:37:37,145.145 INFO    ] No existing commands found in stream
[2026-06-12 03:37:42,159.159 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 03:37:42,162.162 INFO    ] Waiting 0.77 seconds before fallback handling...
[2026-06-12 03:37:43,327.327 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 03:37:43,328.328 INFO    ] Checking for system updates...
[2026-06-12 03:37:43,350.350 INFO    ] 200
[2026-06-12 03:37:43,352.352 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:37:43,382.382 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 03:37:43,383.383 INFO    ] No update needed
[2026-06-12 03:37:43,385.385 INFO    ] Checking for camera pi updates...
[2026-06-12 03:37:43,404.404 INFO    ] 200
[2026-06-12 03:37:43,405.405 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:37:43,429.429 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 03:37:43,474.474 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 03:37:43,475.475 INFO    ] No camera update needed
[2026-06-12 03:37:43,477.477 INFO    ] Script finished. Safe exiting...
[2026-06-12 03:37:43,478.478 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 03:37:43,481.481 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 03:37:43,484.484 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 03:37:45,531.531 INFO    ] ================================================
[2026-06-12 03:37:45,547.547 INFO    ] Launching Daemon at Fri Jun 12 03:37:45 IST 2026
[2026-06-12 03:37:45,558.558 INFO    ] ================================================
[2026-06-12 03:37:45,908.908 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 03:37:45
[2026-06-12 03:37:46,218.218 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 03:37:46,359.359 INFO    ] Initializing speech engine...
[2026-06-12 03:37:46,364.364 INFO    ] 2026-06-12 03:37:46
[2026-06-12 03:37:46,567.567 INFO    ] 2026-06-12 03:37:46
[2026-06-12 03:37:46,596.596 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 03:37:46,718.718 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 03:37:46,781.781 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 03:37:46,923.923 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 03:37:46,986.986 INFO    ] time= 12/06/2026 03:37:46
[2026-06-12 03:37:47,009.009 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 03:37:47,015.015 INFO    ] Checking for existing commands in stream...
[2026-06-12 03:37:47,081.081 INFO    ] No existing commands found in stream
[2026-06-12 03:37:52,090.090 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 03:37:52,093.093 INFO    ] Waiting 2.77 seconds before fallback handling...
[2026-06-12 03:37:55,274.274 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 03:37:55,276.276 INFO    ] Checking for system updates...
[2026-06-12 03:37:55,313.313 INFO    ] 200
[2026-06-12 03:37:55,315.315 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:37:55,371.371 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 03:37:55,374.374 INFO    ] No update needed
[2026-06-12 03:37:55,379.379 INFO    ] Checking for camera pi updates...
[2026-06-12 03:37:55,410.410 INFO    ] 200
[2026-06-12 03:37:55,412.412 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:37:55,435.435 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 03:37:55,469.469 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 03:37:55,471.471 INFO    ] No camera update needed
[2026-06-12 03:37:55,472.472 INFO    ] Script finished. Safe exiting...
[2026-06-12 03:37:55,473.473 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 03:37:55,476.476 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 03:37:55,479.479 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 03:37:57,521.521 INFO    ] ================================================
[2026-06-12 03:37:57,537.537 INFO    ] Launching Daemon at Fri Jun 12 03:37:57 IST 2026
[2026-06-12 03:37:57,548.548 INFO    ] ================================================
[2026-06-12 03:37:57,894.894 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 03:37:57
[2026-06-12 03:37:58,204.204 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 03:37:58,339.339 INFO    ] Initializing speech engine...
[2026-06-12 03:37:58,352.352 INFO    ] 2026-06-12 03:37:58
[2026-06-12 03:37:58,569.569 INFO    ] 2026-06-12 03:37:58
[2026-06-12 03:37:58,599.599 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 03:37:58,783.783 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 03:37:58,793.793 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 03:37:58,936.936 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 03:37:58,990.990 INFO    ] time= 12/06/2026 03:37:58
[2026-06-12 03:37:59,012.012 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 03:37:59,018.018 INFO    ] Checking for existing commands in stream...
[2026-06-12 03:37:59,083.083 INFO    ] No existing commands found in stream
[2026-06-12 03:38:04,093.093 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 03:38:04,096.096 INFO    ] Waiting 1.40 seconds before fallback handling...
[2026-06-12 03:38:05,871.871 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 03:38:05,872.872 INFO    ] Checking for system updates...
[2026-06-12 03:38:05,893.893 INFO    ] 200
[2026-06-12 03:38:05,894.894 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:38:05,927.927 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 03:38:05,928.928 INFO    ] No update needed
[2026-06-12 03:38:05,930.930 INFO    ] Checking for camera pi updates...
[2026-06-12 03:38:05,950.950 INFO    ] 200
[2026-06-12 03:38:05,952.952 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:38:05,975.975 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 03:38:06,015.015 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 03:38:06,016.016 INFO    ] No camera update needed
[2026-06-12 03:38:06,017.017 INFO    ] Script finished. Safe exiting...
[2026-06-12 03:38:06,019.019 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 03:38:06,022.022 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 03:38:06,024.024 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 03:38:08,064.064 INFO    ] ================================================
[2026-06-12 03:38:08,079.079 INFO    ] Launching Daemon at Fri Jun 12 03:38:08 IST 2026
[2026-06-12 03:38:08,090.090 INFO    ] ================================================
[2026-06-12 03:38:08,425.425 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 03:38:08
[2026-06-12 03:38:08,742.742 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 03:38:08,875.875 INFO    ] Initializing speech engine...
[2026-06-12 03:38:08,883.883 INFO    ] 2026-06-12 03:38:08
[2026-06-12 03:38:09,095.095 INFO    ] 2026-06-12 03:38:09
[2026-06-12 03:38:09,124.124 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 03:38:09,309.309 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 03:38:09,319.319 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 03:38:09,454.454 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 03:38:09,517.517 INFO    ] time= 12/06/2026 03:38:09
[2026-06-12 03:38:09,541.541 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 03:38:09,546.546 INFO    ] Checking for existing commands in stream...
[2026-06-12 03:38:09,638.638 INFO    ] No existing commands found in stream
[2026-06-12 03:38:14,652.652 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 03:38:14,655.655 INFO    ] Waiting 3.83 seconds before fallback handling...
[2026-06-12 03:38:18,830.830 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 03:38:18,832.832 INFO    ] Checking for system updates...
[2026-06-12 03:38:18,853.853 INFO    ] 200
[2026-06-12 03:38:18,855.855 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:38:18,887.887 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 03:38:18,889.889 INFO    ] No update needed
[2026-06-12 03:38:18,890.890 INFO    ] Checking for camera pi updates...
[2026-06-12 03:38:18,911.911 INFO    ] 200
[2026-06-12 03:38:18,912.912 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:38:18,937.937 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 03:38:18,977.977 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 03:38:18,979.979 INFO    ] No camera update needed
[2026-06-12 03:38:18,980.980 INFO    ] Script finished. Safe exiting...
[2026-06-12 03:38:18,982.982 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 03:38:18,985.985 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 03:38:18,988.988 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 03:38:21,022.022 INFO    ] ================================================
[2026-06-12 03:38:21,038.038 INFO    ] Launching Daemon at Fri Jun 12 03:38:21 IST 2026
[2026-06-12 03:38:21,050.050 INFO    ] ================================================
[2026-06-12 03:38:21,437.437 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 03:38:21
[2026-06-12 03:38:21,775.775 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 03:38:21,924.924 INFO    ] Initializing speech engine...
[2026-06-12 03:38:21,935.935 INFO    ] 2026-06-12 03:38:21
[2026-06-12 03:38:22,149.149 INFO    ] 2026-06-12 03:38:22
[2026-06-12 03:38:22,178.178 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 03:38:22,314.314 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 03:38:22,339.339 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 03:38:22,512.512 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 03:38:22,564.564 INFO    ] time= 12/06/2026 03:38:22
[2026-06-12 03:38:22,604.604 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 03:38:22,614.614 INFO    ] Checking for existing commands in stream...
[2026-06-12 03:38:22,684.684 INFO    ] No existing commands found in stream
[2026-06-12 03:38:27,695.695 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 03:38:27,698.698 INFO    ] Waiting 3.41 seconds before fallback handling...
[2026-06-12 03:38:31,508.508 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 03:38:31,510.510 INFO    ] Checking for system updates...
[2026-06-12 03:38:31,531.531 INFO    ] 200
[2026-06-12 03:38:31,533.533 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:38:31,565.565 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 03:38:31,567.567 INFO    ] No update needed
[2026-06-12 03:38:31,568.568 INFO    ] Checking for camera pi updates...
[2026-06-12 03:38:31,588.588 INFO    ] 200
[2026-06-12 03:38:31,590.590 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:38:31,613.613 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 03:38:31,637.637 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 03:38:31,638.638 INFO    ] No camera update needed
[2026-06-12 03:38:31,639.639 INFO    ] Script finished. Safe exiting...
[2026-06-12 03:38:31,641.641 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 03:38:31,644.644 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 03:38:31,647.647 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 03:38:33,678.678 INFO    ] ================================================
[2026-06-12 03:38:33,695.695 INFO    ] Launching Daemon at Fri Jun 12 03:38:33 IST 2026
[2026-06-12 03:38:33,706.706 INFO    ] ================================================
[2026-06-12 03:38:34,058.058 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 03:38:34
[2026-06-12 03:38:34,368.368 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 03:38:34,499.499 INFO    ] Initializing speech engine...
[2026-06-12 03:38:34,508.508 INFO    ] 2026-06-12 03:38:34
[2026-06-12 03:38:34,739.739 INFO    ] 2026-06-12 03:38:34
[2026-06-12 03:38:34,768.768 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 03:38:34,908.908 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 03:38:34,964.964 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 03:38:35,078.078 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 03:38:35,079.079 INFO    ] time= 12/06/2026 03:38:35
[2026-06-12 03:38:35,176.176 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 03:38:35,231.231 INFO    ] Checking for existing commands in stream...
[2026-06-12 03:38:35,322.322 INFO    ] No existing commands found in stream
[2026-06-12 03:38:40,333.333 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 03:38:40,336.336 INFO    ] Waiting 3.87 seconds before fallback handling...
[2026-06-12 03:38:44,588.588 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 03:38:44,589.589 INFO    ] Checking for system updates...
[2026-06-12 03:38:44,611.611 INFO    ] 200
[2026-06-12 03:38:44,613.613 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:38:44,648.648 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 03:38:44,650.650 INFO    ] No update needed
[2026-06-12 03:38:44,652.652 INFO    ] Checking for camera pi updates...
[2026-06-12 03:38:44,672.672 INFO    ] 200
[2026-06-12 03:38:44,674.674 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:38:44,700.700 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 03:38:44,736.736 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 03:38:44,737.737 INFO    ] No camera update needed
[2026-06-12 03:38:44,738.738 INFO    ] Script finished. Safe exiting...
[2026-06-12 03:38:44,740.740 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 03:38:44,743.743 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 03:38:44,746.746 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 03:38:46,786.786 INFO    ] ================================================
[2026-06-12 03:38:46,803.803 INFO    ] Launching Daemon at Fri Jun 12 03:38:46 IST 2026
[2026-06-12 03:38:46,814.814 INFO    ] ================================================
[2026-06-12 03:38:47,175.175 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 03:38:47
[2026-06-12 03:38:47,487.487 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 03:38:47,624.624 INFO    ] Initializing speech engine...
[2026-06-12 03:38:47,634.634 INFO    ] 2026-06-12 03:38:47
[2026-06-12 03:38:47,840.840 INFO    ] 2026-06-12 03:38:47
[2026-06-12 03:38:47,871.871 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 03:38:48,057.057 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 03:38:48,066.066 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 03:38:48,207.207 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 03:38:48,266.266 INFO    ] time= 12/06/2026 03:38:48
[2026-06-12 03:38:48,289.289 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 03:38:48,295.295 INFO    ] Checking for existing commands in stream...
[2026-06-12 03:38:48,363.363 INFO    ] No existing commands found in stream
[2026-06-12 03:38:53,372.372 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 03:38:53,375.375 INFO    ] Waiting 3.02 seconds before fallback handling...
[2026-06-12 03:38:56,769.769 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 03:38:56,771.771 INFO    ] Checking for system updates...
[2026-06-12 03:38:56,791.791 INFO    ] 200
[2026-06-12 03:38:56,793.793 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:38:56,825.825 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 03:38:56,826.826 INFO    ] No update needed
[2026-06-12 03:38:56,827.827 INFO    ] Checking for camera pi updates...
[2026-06-12 03:38:56,848.848 INFO    ] 200
[2026-06-12 03:38:56,849.849 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:38:56,873.873 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 03:38:56,917.917 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 03:38:56,918.918 INFO    ] No camera update needed
[2026-06-12 03:38:56,920.920 INFO    ] Script finished. Safe exiting...
[2026-06-12 03:38:56,921.921 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 03:38:56,924.924 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 03:38:56,927.927 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 03:38:58,961.961 INFO    ] ================================================
[2026-06-12 03:38:58,976.976 INFO    ] Launching Daemon at Fri Jun 12 03:38:58 IST 2026
[2026-06-12 03:38:58,987.987 INFO    ] ================================================
[2026-06-12 03:38:59,353.353 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 03:38:59
[2026-06-12 03:38:59,663.663 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 03:38:59,791.791 INFO    ] Initializing speech engine...
[2026-06-12 03:38:59,795.795 INFO    ] 2026-06-12 03:38:59
[2026-06-12 03:39:00,013.013 INFO    ] 2026-06-12 03:38:59
[2026-06-12 03:39:00,042.042 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 03:39:00,224.224 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 03:39:00,233.233 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 03:39:00,363.363 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 03:39:00,419.419 INFO    ] time= 12/06/2026 03:39:00
[2026-06-12 03:39:00,452.452 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 03:39:00,469.469 INFO    ] Checking for existing commands in stream...
[2026-06-12 03:39:00,546.546 INFO    ] No existing commands found in stream
[2026-06-12 03:39:05,552.552 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 03:39:05,555.555 INFO    ] Waiting 2.72 seconds before fallback handling...
[2026-06-12 03:39:08,592.592 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 03:39:08,594.594 INFO    ] Checking for system updates...
[2026-06-12 03:39:08,620.620 INFO    ] 200
[2026-06-12 03:39:08,622.622 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:39:08,653.653 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 03:39:08,654.654 INFO    ] No update needed
[2026-06-12 03:39:08,655.655 INFO    ] Checking for camera pi updates...
[2026-06-12 03:39:08,675.675 INFO    ] 200
[2026-06-12 03:39:08,676.676 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:39:08,700.700 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 03:39:08,838.838 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 03:39:08,840.840 INFO    ] No camera update needed
[2026-06-12 03:39:08,841.841 INFO    ] Script finished. Safe exiting...
[2026-06-12 03:39:08,842.842 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 03:39:08,846.846 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 03:39:08,848.848 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 03:39:10,887.887 INFO    ] ================================================
[2026-06-12 03:39:10,903.903 INFO    ] Launching Daemon at Fri Jun 12 03:39:10 IST 2026
[2026-06-12 03:39:10,914.914 INFO    ] ================================================
[2026-06-12 03:39:11,251.251 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 03:39:11
[2026-06-12 03:39:11,561.561 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 03:39:11,692.692 INFO    ] Initializing speech engine...
[2026-06-12 03:39:11,706.706 INFO    ] 2026-06-12 03:39:11
[2026-06-12 03:39:11,914.914 INFO    ] 2026-06-12 03:39:11
[2026-06-12 03:39:11,945.945 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 03:39:12,129.129 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 03:39:12,139.139 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 03:39:12,263.263 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 03:39:12,319.319 INFO    ] time= 12/06/2026 03:39:12
[2026-06-12 03:39:12,354.354 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 03:39:12,364.364 INFO    ] Checking for existing commands in stream...
[2026-06-12 03:39:12,437.437 INFO    ] No existing commands found in stream
[2026-06-12 03:39:17,445.445 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 03:39:17,448.448 INFO    ] Waiting 0.48 seconds before fallback handling...
[2026-06-12 03:39:18,309.309 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 03:39:18,310.310 INFO    ] Checking for system updates...
[2026-06-12 03:39:18,334.334 INFO    ] 200
[2026-06-12 03:39:18,335.335 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:39:18,365.365 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 03:39:18,367.367 INFO    ] No update needed
[2026-06-12 03:39:18,368.368 INFO    ] Checking for camera pi updates...
[2026-06-12 03:39:18,387.387 INFO    ] 200
[2026-06-12 03:39:18,389.389 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:39:18,412.412 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 03:39:18,448.448 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 03:39:18,449.449 INFO    ] No camera update needed
[2026-06-12 03:39:18,451.451 INFO    ] Script finished. Safe exiting...
[2026-06-12 03:39:18,452.452 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 03:39:18,455.455 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 03:39:18,458.458 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 03:39:20,495.495 INFO    ] ================================================
[2026-06-12 03:39:20,511.511 INFO    ] Launching Daemon at Fri Jun 12 03:39:20 IST 2026
[2026-06-12 03:39:20,521.521 INFO    ] ================================================
[2026-06-12 03:39:20,871.871 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 03:39:20
[2026-06-12 03:39:21,210.210 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 03:39:21,364.364 INFO    ] Initializing speech engine...
[2026-06-12 03:39:21,368.368 INFO    ] 2026-06-12 03:39:21
[2026-06-12 03:39:21,574.574 INFO    ] 2026-06-12 03:39:21
[2026-06-12 03:39:21,603.603 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 03:39:21,787.787 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 03:39:21,791.791 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 03:39:21,939.939 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 03:39:21,996.996 INFO    ] time= 12/06/2026 03:39:21
[2026-06-12 03:39:22,020.020 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 03:39:22,026.026 INFO    ] Checking for existing commands in stream...
[2026-06-12 03:39:22,094.094 INFO    ] No existing commands found in stream
[2026-06-12 03:39:27,114.114 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 03:39:27,117.117 INFO    ] Waiting 3.48 seconds before fallback handling...
[2026-06-12 03:39:30,926.926 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 03:39:30,928.928 INFO    ] Checking for system updates...
[2026-06-12 03:39:30,949.949 INFO    ] 200
[2026-06-12 03:39:30,951.951 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:39:30,983.983 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 03:39:30,984.984 INFO    ] No update needed
[2026-06-12 03:39:30,985.985 INFO    ] Checking for camera pi updates...
[2026-06-12 03:39:31,005.005 INFO    ] 200
[2026-06-12 03:39:31,006.006 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:39:31,042.042 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 03:39:31,082.082 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 03:39:31,083.083 INFO    ] No camera update needed
[2026-06-12 03:39:31,085.085 INFO    ] Script finished. Safe exiting...
[2026-06-12 03:39:31,086.086 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 03:39:31,090.090 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 03:39:31,094.094 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 03:39:33,127.127 INFO    ] ================================================
[2026-06-12 03:39:33,143.143 INFO    ] Launching Daemon at Fri Jun 12 03:39:33 IST 2026
[2026-06-12 03:39:33,154.154 INFO    ] ================================================
[2026-06-12 03:39:33,500.500 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 03:39:33
[2026-06-12 03:39:33,817.817 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 03:39:33,953.953 INFO    ] Initializing speech engine...
[2026-06-12 03:39:33,956.956 INFO    ] 2026-06-12 03:39:33
[2026-06-12 03:39:34,187.187 INFO    ] 2026-06-12 03:39:34
[2026-06-12 03:39:34,217.217 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 03:39:34,414.414 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 03:39:34,420.420 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 03:39:34,574.574 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 03:39:34,642.642 INFO    ] time= 12/06/2026 03:39:34
[2026-06-12 03:39:34,667.667 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 03:39:34,669.669 INFO    ] Checking for existing commands in stream...
[2026-06-12 03:39:34,745.745 INFO    ] No existing commands found in stream
[2026-06-12 03:39:39,756.756 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 03:39:39,759.759 INFO    ] Waiting 0.88 seconds before fallback handling...
[2026-06-12 03:39:41,048.048 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 03:39:41,050.050 INFO    ] Checking for system updates...
[2026-06-12 03:39:41,071.071 INFO    ] 200
[2026-06-12 03:39:41,072.072 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:39:41,103.103 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 03:39:41,105.105 INFO    ] No update needed
[2026-06-12 03:39:41,106.106 INFO    ] Checking for camera pi updates...
[2026-06-12 03:39:41,126.126 INFO    ] 200
[2026-06-12 03:39:41,127.127 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:39:41,151.151 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 03:39:41,185.185 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 03:39:41,186.186 INFO    ] No camera update needed
[2026-06-12 03:39:41,187.187 INFO    ] Script finished. Safe exiting...
[2026-06-12 03:39:41,189.189 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 03:39:41,192.192 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 03:39:41,194.194 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 03:39:43,226.226 INFO    ] ================================================
[2026-06-12 03:39:43,242.242 INFO    ] Launching Daemon at Fri Jun 12 03:39:43 IST 2026
[2026-06-12 03:39:43,254.254 INFO    ] ================================================
[2026-06-12 03:39:43,603.603 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 03:39:43
[2026-06-12 03:39:43,942.942 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 03:39:44,093.093 INFO    ] Initializing speech engine...
[2026-06-12 03:39:44,098.098 INFO    ] 2026-06-12 03:39:44
[2026-06-12 03:39:44,308.308 INFO    ] 2026-06-12 03:39:44
[2026-06-12 03:39:44,337.337 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 03:39:44,524.524 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 03:39:44,534.534 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 03:39:44,665.665 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 03:39:44,733.733 INFO    ] time= 12/06/2026 03:39:44
[2026-06-12 03:39:44,757.757 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 03:39:44,764.764 INFO    ] Checking for existing commands in stream...
[2026-06-12 03:39:44,832.832 INFO    ] No existing commands found in stream
[2026-06-12 03:39:49,856.856 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 03:39:49,860.860 INFO    ] Waiting 2.17 seconds before fallback handling...
[2026-06-12 03:39:52,449.449 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 03:39:52,451.451 INFO    ] Checking for system updates...
[2026-06-12 03:39:52,473.473 INFO    ] 200
[2026-06-12 03:39:52,475.475 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:39:52,505.505 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 03:39:52,506.506 INFO    ] No update needed
[2026-06-12 03:39:52,508.508 INFO    ] Checking for camera pi updates...
[2026-06-12 03:39:52,528.528 INFO    ] 200
[2026-06-12 03:39:52,530.530 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:39:52,555.555 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 03:39:52,595.595 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 03:39:52,597.597 INFO    ] No camera update needed
[2026-06-12 03:39:52,598.598 INFO    ] Script finished. Safe exiting...
[2026-06-12 03:39:52,599.599 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 03:39:52,602.602 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 03:39:52,605.605 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 03:39:54,638.638 INFO    ] ================================================
[2026-06-12 03:39:54,654.654 INFO    ] Launching Daemon at Fri Jun 12 03:39:54 IST 2026
[2026-06-12 03:39:54,665.665 INFO    ] ================================================
[2026-06-12 03:39:55,030.030 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 03:39:55
[2026-06-12 03:39:55,342.342 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 03:39:55,471.471 INFO    ] Initializing speech engine...
[2026-06-12 03:39:55,476.476 INFO    ] 2026-06-12 03:39:55
[2026-06-12 03:39:55,695.695 INFO    ] 2026-06-12 03:39:55
[2026-06-12 03:39:55,724.724 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 03:39:55,912.912 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 03:39:55,920.920 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 03:39:56,045.045 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 03:39:56,095.095 INFO    ] time= 12/06/2026 03:39:56
[2026-06-12 03:39:56,131.131 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 03:39:56,147.147 INFO    ] Checking for existing commands in stream...
[2026-06-12 03:39:56,243.243 INFO    ] No existing commands found in stream
[2026-06-12 03:40:01,257.257 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 03:40:01,259.259 INFO    ] Waiting 2.24 seconds before fallback handling...
[2026-06-12 03:40:08,231.231 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 03:40:08,234.234 INFO    ] Checking for system updates...
[2026-06-12 03:40:08,281.281 INFO    ] 200
[2026-06-12 03:40:08,284.284 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:40:08,350.350 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 03:40:08,352.352 INFO    ] No update needed
[2026-06-12 03:40:08,354.354 INFO    ] Checking for camera pi updates...
[2026-06-12 03:40:08,377.377 INFO    ] 200
[2026-06-12 03:40:08,378.378 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:40:08,403.403 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 03:40:08,450.450 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 03:40:08,451.451 INFO    ] No camera update needed
[2026-06-12 03:40:08,453.453 INFO    ] Script finished. Safe exiting...
[2026-06-12 03:40:08,454.454 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 03:40:08,457.457 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 03:40:08,460.460 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 03:40:10,499.499 INFO    ] ================================================
[2026-06-12 03:40:10,514.514 INFO    ] Launching Daemon at Fri Jun 12 03:40:10 IST 2026
[2026-06-12 03:40:10,525.525 INFO    ] ================================================
[2026-06-12 03:40:10,900.900 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 03:40:10
[2026-06-12 03:40:11,244.244 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 03:40:11,395.395 INFO    ] Initializing speech engine...
[2026-06-12 03:40:11,401.401 INFO    ] 2026-06-12 03:40:11
[2026-06-12 03:40:11,608.608 INFO    ] 2026-06-12 03:40:11
[2026-06-12 03:40:11,637.637 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 03:40:11,822.822 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 03:40:11,832.832 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 03:40:11,985.985 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 03:40:12,034.034 INFO    ] time= 12/06/2026 03:40:11
[2026-06-12 03:40:12,055.055 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 03:40:12,057.057 INFO    ] Checking for existing commands in stream...
[2026-06-12 03:40:12,123.123 INFO    ] No existing commands found in stream
[2026-06-12 03:40:17,138.138 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 03:40:17,141.141 INFO    ] Waiting 3.68 seconds before fallback handling...
[2026-06-12 03:40:21,209.209 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 03:40:21,211.211 INFO    ] Checking for system updates...
[2026-06-12 03:40:21,232.232 INFO    ] 200
[2026-06-12 03:40:21,233.233 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:40:21,264.264 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 03:40:21,266.266 INFO    ] No update needed
[2026-06-12 03:40:21,267.267 INFO    ] Checking for camera pi updates...
[2026-06-12 03:40:21,288.288 INFO    ] 200
[2026-06-12 03:40:21,290.290 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:40:21,314.314 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 03:40:21,358.358 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 03:40:21,360.360 INFO    ] No camera update needed
[2026-06-12 03:40:21,361.361 INFO    ] Script finished. Safe exiting...
[2026-06-12 03:40:21,363.363 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 03:40:21,366.366 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 03:40:21,369.369 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 03:40:23,408.408 INFO    ] ================================================
[2026-06-12 03:40:23,424.424 INFO    ] Launching Daemon at Fri Jun 12 03:40:23 IST 2026
[2026-06-12 03:40:23,434.434 INFO    ] ================================================
[2026-06-12 03:40:23,763.763 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 03:40:23
[2026-06-12 03:40:24,073.073 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 03:40:24,208.208 INFO    ] Initializing speech engine...
[2026-06-12 03:40:24,213.213 INFO    ] 2026-06-12 03:40:24
[2026-06-12 03:40:24,441.441 INFO    ] 2026-06-12 03:40:24
[2026-06-12 03:40:24,472.472 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 03:40:24,659.659 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 03:40:24,668.668 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 03:40:24,808.808 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 03:40:24,865.865 INFO    ] time= 12/06/2026 03:40:24
[2026-06-12 03:40:24,888.888 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 03:40:24,895.895 INFO    ] Checking for existing commands in stream...
[2026-06-12 03:40:24,961.961 INFO    ] No existing commands found in stream
[2026-06-12 03:40:29,970.970 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 03:40:29,973.973 INFO    ] Waiting 1.13 seconds before fallback handling...
[2026-06-12 03:40:31,438.438 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 03:40:31,439.439 INFO    ] Checking for system updates...
[2026-06-12 03:40:31,464.464 INFO    ] 200
[2026-06-12 03:40:31,466.466 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:40:31,500.500 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 03:40:31,502.502 INFO    ] No update needed
[2026-06-12 03:40:31,503.503 INFO    ] Checking for camera pi updates...
[2026-06-12 03:40:31,535.535 INFO    ] 200
[2026-06-12 03:40:31,538.538 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:40:31,596.596 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 03:40:31,626.626 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 03:40:31,628.628 INFO    ] No camera update needed
[2026-06-12 03:40:31,630.630 INFO    ] Script finished. Safe exiting...
[2026-06-12 03:40:31,632.632 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 03:40:31,635.635 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 03:40:31,639.639 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 03:40:33,680.680 INFO    ] ================================================
[2026-06-12 03:40:33,695.695 INFO    ] Launching Daemon at Fri Jun 12 03:40:33 IST 2026
[2026-06-12 03:40:33,709.709 INFO    ] ================================================
[2026-06-12 03:40:34,089.089 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 03:40:34
[2026-06-12 03:40:34,427.427 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 03:40:34,578.578 INFO    ] Initializing speech engine...
[2026-06-12 03:40:34,584.584 INFO    ] 2026-06-12 03:40:34
[2026-06-12 03:40:34,790.790 INFO    ] 2026-06-12 03:40:34
[2026-06-12 03:40:34,819.819 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 03:40:35,005.005 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 03:40:35,016.016 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 03:40:35,165.165 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 03:40:35,225.225 INFO    ] time= 12/06/2026 03:40:35
[2026-06-12 03:40:35,236.236 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 03:40:35,242.242 INFO    ] Checking for existing commands in stream...
[2026-06-12 03:40:35,334.334 INFO    ] No existing commands found in stream
[2026-06-12 03:40:40,348.348 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 03:40:40,356.356 INFO    ] Waiting 3.74 seconds before fallback handling...
[2026-06-12 03:40:44,466.466 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 03:40:44,468.468 INFO    ] Checking for system updates...
[2026-06-12 03:40:44,488.488 INFO    ] 200
[2026-06-12 03:40:44,489.489 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:40:44,522.522 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 03:40:44,523.523 INFO    ] No update needed
[2026-06-12 03:40:44,525.525 INFO    ] Checking for camera pi updates...
[2026-06-12 03:40:44,546.546 INFO    ] 200
[2026-06-12 03:40:44,547.547 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:40:44,572.572 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 03:40:44,613.613 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 03:40:44,615.615 INFO    ] No camera update needed
[2026-06-12 03:40:44,616.616 INFO    ] Script finished. Safe exiting...
[2026-06-12 03:40:44,617.617 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 03:40:44,620.620 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 03:40:44,623.623 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 03:40:46,661.661 INFO    ] ================================================
[2026-06-12 03:40:46,676.676 INFO    ] Launching Daemon at Fri Jun 12 03:40:46 IST 2026
[2026-06-12 03:40:46,687.687 INFO    ] ================================================
[2026-06-12 03:40:47,029.029 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 03:40:47
[2026-06-12 03:40:47,347.347 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 03:40:47,491.491 INFO    ] Initializing speech engine...
[2026-06-12 03:40:47,496.496 INFO    ] 2026-06-12 03:40:47
[2026-06-12 03:40:47,699.699 INFO    ] 2026-06-12 03:40:47
[2026-06-12 03:40:47,728.728 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 03:40:47,912.912 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 03:40:47,919.919 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 03:40:48,047.047 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 03:40:48,108.108 INFO    ] time= 12/06/2026 03:40:48
[2026-06-12 03:40:48,141.141 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 03:40:48,147.147 INFO    ] Checking for existing commands in stream...
[2026-06-12 03:40:48,214.214 INFO    ] No existing commands found in stream
[2026-06-12 03:40:53,228.228 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 03:40:53,231.231 INFO    ] Waiting 2.26 seconds before fallback handling...
[2026-06-12 03:40:55,857.857 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 03:40:55,859.859 INFO    ] Checking for system updates...
[2026-06-12 03:40:55,879.879 INFO    ] 200
[2026-06-12 03:40:55,881.881 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:40:55,911.911 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 03:40:55,913.913 INFO    ] No update needed
[2026-06-12 03:40:55,914.914 INFO    ] Checking for camera pi updates...
[2026-06-12 03:40:55,936.936 INFO    ] 200
[2026-06-12 03:40:55,938.938 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:40:55,961.961 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 03:40:56,000.000 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 03:40:56,001.001 INFO    ] No camera update needed
[2026-06-12 03:40:56,003.003 INFO    ] Script finished. Safe exiting...
[2026-06-12 03:40:56,004.004 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 03:40:56,007.007 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 03:40:56,010.010 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 03:40:58,050.050 INFO    ] ================================================
[2026-06-12 03:40:58,065.065 INFO    ] Launching Daemon at Fri Jun 12 03:40:58 IST 2026
[2026-06-12 03:40:58,076.076 INFO    ] ================================================
[2026-06-12 03:40:58,451.451 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 03:40:58
[2026-06-12 03:40:58,762.762 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 03:40:58,898.898 INFO    ] Initializing speech engine...
[2026-06-12 03:40:58,907.907 INFO    ] 2026-06-12 03:40:58
[2026-06-12 03:40:59,111.111 INFO    ] 2026-06-12 03:40:59
[2026-06-12 03:40:59,141.141 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 03:40:59,324.324 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 03:40:59,334.334 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 03:40:59,455.455 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 03:40:59,526.526 INFO    ] time= 12/06/2026 03:40:59
[2026-06-12 03:40:59,553.553 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 03:40:59,559.559 INFO    ] Checking for existing commands in stream...
[2026-06-12 03:40:59,624.624 INFO    ] No existing commands found in stream
[2026-06-12 03:41:04,632.632 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 03:41:04,635.635 INFO    ] Waiting 2.78 seconds before fallback handling...
[2026-06-12 03:41:07,845.845 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 03:41:07,848.848 INFO    ] Checking for system updates...
[2026-06-12 03:41:07,884.884 INFO    ] 200
[2026-06-12 03:41:07,887.887 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:41:07,947.947 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 03:41:07,950.950 INFO    ] No update needed
[2026-06-12 03:41:07,952.952 INFO    ] Checking for camera pi updates...
[2026-06-12 03:41:07,977.977 INFO    ] 200
[2026-06-12 03:41:07,978.978 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:41:08,002.002 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 03:41:08,037.037 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 03:41:08,039.039 INFO    ] No camera update needed
[2026-06-12 03:41:08,040.040 INFO    ] Script finished. Safe exiting...
[2026-06-12 03:41:08,041.041 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 03:41:08,044.044 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 03:41:08,047.047 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 03:41:10,085.085 INFO    ] ================================================
[2026-06-12 03:41:10,101.101 INFO    ] Launching Daemon at Fri Jun 12 03:41:10 IST 2026
[2026-06-12 03:41:10,112.112 INFO    ] ================================================
[2026-06-12 03:41:10,480.480 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 03:41:10
[2026-06-12 03:41:10,797.797 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 03:41:10,942.942 INFO    ] Initializing speech engine...
[2026-06-12 03:41:10,947.947 INFO    ] 2026-06-12 03:41:10
[2026-06-12 03:41:11,161.161 INFO    ] 2026-06-12 03:41:11
[2026-06-12 03:41:11,190.190 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 03:41:11,348.348 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 03:41:11,377.377 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 03:41:11,510.510 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 03:41:11,572.572 INFO    ] time= 12/06/2026 03:41:11
[2026-06-12 03:41:11,604.604 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 03:41:11,611.611 INFO    ] Checking for existing commands in stream...
[2026-06-12 03:41:11,701.701 INFO    ] No existing commands found in stream
[2026-06-12 03:41:16,709.709 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 03:41:16,711.711 INFO    ] Waiting 2.42 seconds before fallback handling...
[2026-06-12 03:41:19,506.506 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 03:41:19,508.508 INFO    ] Checking for system updates...
[2026-06-12 03:41:19,530.530 INFO    ] 200
[2026-06-12 03:41:19,532.532 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:41:19,565.565 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 03:41:19,566.566 INFO    ] No update needed
[2026-06-12 03:41:19,567.567 INFO    ] Checking for camera pi updates...
[2026-06-12 03:41:19,588.588 INFO    ] 200
[2026-06-12 03:41:19,590.590 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:41:19,615.615 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 03:41:19,753.753 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 03:41:19,754.754 INFO    ] No camera update needed
[2026-06-12 03:41:19,755.755 INFO    ] Script finished. Safe exiting...
[2026-06-12 03:41:19,756.756 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 03:41:19,760.760 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 03:41:19,762.762 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 03:41:21,801.801 INFO    ] ================================================
[2026-06-12 03:41:21,817.817 INFO    ] Launching Daemon at Fri Jun 12 03:41:21 IST 2026
[2026-06-12 03:41:21,829.829 INFO    ] ================================================
[2026-06-12 03:41:22,222.222 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 03:41:22
[2026-06-12 03:41:22,564.564 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 03:41:22,716.716 INFO    ] Initializing speech engine...
[2026-06-12 03:41:22,722.722 INFO    ] 2026-06-12 03:41:22
[2026-06-12 03:41:22,932.932 INFO    ] 2026-06-12 03:41:22
[2026-06-12 03:41:22,960.960 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 03:41:23,147.147 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 03:41:23,158.158 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 03:41:23,309.309 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 03:41:23,358.358 INFO    ] time= 12/06/2026 03:41:23
[2026-06-12 03:41:23,380.380 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 03:41:23,387.387 INFO    ] Checking for existing commands in stream...
[2026-06-12 03:41:23,454.454 INFO    ] No existing commands found in stream
[2026-06-12 03:41:28,463.463 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 03:41:28,467.467 INFO    ] Waiting 0.44 seconds before fallback handling...
[2026-06-12 03:41:29,305.305 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 03:41:29,307.307 INFO    ] Checking for system updates...
[2026-06-12 03:41:29,328.328 INFO    ] 200
[2026-06-12 03:41:29,329.329 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:41:29,364.364 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 03:41:29,365.365 INFO    ] No update needed
[2026-06-12 03:41:29,366.366 INFO    ] Checking for camera pi updates...
[2026-06-12 03:41:29,388.388 INFO    ] 200
[2026-06-12 03:41:29,389.389 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:41:29,412.412 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 03:41:29,446.446 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 03:41:29,447.447 INFO    ] No camera update needed
[2026-06-12 03:41:29,448.448 INFO    ] Script finished. Safe exiting...
[2026-06-12 03:41:29,450.450 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 03:41:29,453.453 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 03:41:29,455.455 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 03:41:31,493.493 INFO    ] ================================================
[2026-06-12 03:41:31,509.509 INFO    ] Launching Daemon at Fri Jun 12 03:41:31 IST 2026
[2026-06-12 03:41:31,519.519 INFO    ] ================================================
[2026-06-12 03:41:31,905.905 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 03:41:31
[2026-06-12 03:41:32,245.245 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 03:41:32,399.399 INFO    ] Initializing speech engine...
[2026-06-12 03:41:32,407.407 INFO    ] 2026-06-12 03:41:32
[2026-06-12 03:41:32,619.619 INFO    ] 2026-06-12 03:41:32
[2026-06-12 03:41:32,651.651 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 03:41:32,813.813 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 03:41:32,836.836 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 03:41:32,969.969 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 03:41:33,036.036 INFO    ] time= 12/06/2026 03:41:32
[2026-06-12 03:41:33,064.064 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 03:41:33,070.070 INFO    ] Checking for existing commands in stream...
[2026-06-12 03:41:33,137.137 INFO    ] No existing commands found in stream
[2026-06-12 03:41:38,151.151 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 03:41:38,154.154 INFO    ] Waiting 2.55 seconds before fallback handling...
[2026-06-12 03:41:41,058.058 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 03:41:41,059.059 INFO    ] Checking for system updates...
[2026-06-12 03:41:41,086.086 INFO    ] 200
[2026-06-12 03:41:41,088.088 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:41:41,118.118 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 03:41:41,120.120 INFO    ] No update needed
[2026-06-12 03:41:41,121.121 INFO    ] Checking for camera pi updates...
[2026-06-12 03:41:41,142.142 INFO    ] 200
[2026-06-12 03:41:41,143.143 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:41:41,168.168 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 03:41:41,215.215 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 03:41:41,216.216 INFO    ] No camera update needed
[2026-06-12 03:41:41,217.217 INFO    ] Script finished. Safe exiting...
[2026-06-12 03:41:41,218.218 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 03:41:41,221.221 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 03:41:41,224.224 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 03:41:43,264.264 INFO    ] ================================================
[2026-06-12 03:41:43,280.280 INFO    ] Launching Daemon at Fri Jun 12 03:41:43 IST 2026
[2026-06-12 03:41:43,290.290 INFO    ] ================================================
[2026-06-12 03:41:43,686.686 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 03:41:43
[2026-06-12 03:41:44,029.029 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 03:41:44,169.169 INFO    ] Initializing speech engine...
[2026-06-12 03:41:44,182.182 INFO    ] 2026-06-12 03:41:44
[2026-06-12 03:41:44,395.395 INFO    ] 2026-06-12 03:41:44
[2026-06-12 03:41:44,424.424 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 03:41:44,608.608 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 03:41:44,617.617 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 03:41:44,758.758 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 03:41:44,816.816 INFO    ] time= 12/06/2026 03:41:44
[2026-06-12 03:41:44,839.839 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 03:41:44,845.845 INFO    ] Checking for existing commands in stream...
[2026-06-12 03:41:44,912.912 INFO    ] No existing commands found in stream
[2026-06-12 03:41:49,925.925 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 03:41:49,927.927 INFO    ] Waiting 0.32 seconds before fallback handling...
[2026-06-12 03:41:51,656.656 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 03:41:51,659.659 INFO    ] Checking for system updates...
[2026-06-12 03:41:51,702.702 INFO    ] 200
[2026-06-12 03:41:51,705.705 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:41:51,751.751 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 03:41:51,752.752 INFO    ] No update needed
[2026-06-12 03:41:51,754.754 INFO    ] Checking for camera pi updates...
[2026-06-12 03:41:51,777.777 INFO    ] 200
[2026-06-12 03:41:51,779.779 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:41:51,806.806 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 03:41:51,855.855 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 03:41:51,856.856 INFO    ] No camera update needed
[2026-06-12 03:41:51,858.858 INFO    ] Script finished. Safe exiting...
[2026-06-12 03:41:51,859.859 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 03:41:51,862.862 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 03:41:51,865.865 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 03:41:53,904.904 INFO    ] ================================================
[2026-06-12 03:41:53,919.919 INFO    ] Launching Daemon at Fri Jun 12 03:41:53 IST 2026
[2026-06-12 03:41:53,929.929 INFO    ] ================================================
[2026-06-12 03:41:54,257.257 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 03:41:54
[2026-06-12 03:41:54,569.569 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 03:41:54,699.699 INFO    ] Initializing speech engine...
[2026-06-12 03:41:54,702.702 INFO    ] 2026-06-12 03:41:54
[2026-06-12 03:41:54,895.895 INFO    ] 2026-06-12 03:41:54
[2026-06-12 03:41:54,941.941 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 03:41:55,101.101 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 03:41:55,125.125 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 03:41:55,311.311 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 03:41:55,338.338 INFO    ] time= 12/06/2026 03:41:55
[2026-06-12 03:41:55,396.396 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 03:41:55,422.422 INFO    ] Checking for existing commands in stream...
[2026-06-12 03:41:55,500.500 INFO    ] No existing commands found in stream
[2026-06-12 03:42:00,509.509 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 03:42:00,512.512 INFO    ] Waiting 0.74 seconds before fallback handling...
[2026-06-12 03:42:01,699.699 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 03:42:01,701.701 INFO    ] Checking for system updates...
[2026-06-12 03:42:01,721.721 INFO    ] 200
[2026-06-12 03:42:01,723.723 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:42:01,795.795 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 03:42:01,798.798 INFO    ] No update needed
[2026-06-12 03:42:01,800.800 INFO    ] Checking for camera pi updates...
[2026-06-12 03:42:01,873.873 INFO    ] 200
[2026-06-12 03:42:01,876.876 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:42:01,915.915 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 03:42:01,940.940 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 03:42:01,942.942 INFO    ] No camera update needed
[2026-06-12 03:42:01,944.944 INFO    ] Script finished. Safe exiting...
[2026-06-12 03:42:01,946.946 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 03:42:01,951.951 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 03:42:01,955.955 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 03:42:03,988.988 INFO    ] ================================================
[2026-06-12 03:42:04,003.003 INFO    ] Launching Daemon at Fri Jun 12 03:42:03 IST 2026
[2026-06-12 03:42:04,014.014 INFO    ] ================================================
[2026-06-12 03:42:04,378.378 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 03:42:04
[2026-06-12 03:42:04,690.690 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 03:42:04,822.822 INFO    ] Initializing speech engine...
[2026-06-12 03:42:04,825.825 INFO    ] 2026-06-12 03:42:04
[2026-06-12 03:42:05,021.021 INFO    ] 2026-06-12 03:42:05
[2026-06-12 03:42:05,062.062 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 03:42:05,213.213 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 03:42:05,263.263 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 03:42:05,420.420 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 03:42:05,484.484 INFO    ] time= 12/06/2026 03:42:05
[2026-06-12 03:42:05,513.513 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 03:42:05,519.519 INFO    ] Checking for existing commands in stream...
[2026-06-12 03:42:05,611.611 INFO    ] No existing commands found in stream
[2026-06-12 03:42:10,619.619 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 03:42:10,622.622 INFO    ] Waiting 1.97 seconds before fallback handling...
[2026-06-12 03:42:12,985.985 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 03:42:12,987.987 INFO    ] Checking for system updates...
[2026-06-12 03:42:13,012.012 INFO    ] 200
[2026-06-12 03:42:13,013.013 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:42:13,043.043 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 03:42:13,045.045 INFO    ] No update needed
[2026-06-12 03:42:13,046.046 INFO    ] Checking for camera pi updates...
[2026-06-12 03:42:13,065.065 INFO    ] 200
[2026-06-12 03:42:13,067.067 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:42:13,091.091 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 03:42:13,137.137 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 03:42:13,138.138 INFO    ] No camera update needed
[2026-06-12 03:42:13,140.140 INFO    ] Script finished. Safe exiting...
[2026-06-12 03:42:13,141.141 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 03:42:13,144.144 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 03:42:13,147.147 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 03:42:15,186.186 INFO    ] ================================================
[2026-06-12 03:42:15,201.201 INFO    ] Launching Daemon at Fri Jun 12 03:42:15 IST 2026
[2026-06-12 03:42:15,212.212 INFO    ] ================================================
[2026-06-12 03:42:15,574.574 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 03:42:15
[2026-06-12 03:42:15,891.891 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 03:42:16,030.030 INFO    ] Initializing speech engine...
[2026-06-12 03:42:16,040.040 INFO    ] 2026-06-12 03:42:16
[2026-06-12 03:42:16,244.244 INFO    ] 2026-06-12 03:42:16
[2026-06-12 03:42:16,272.272 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 03:42:16,455.455 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 03:42:16,459.459 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 03:42:16,605.605 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 03:42:16,663.663 INFO    ] time= 12/06/2026 03:42:16
[2026-06-12 03:42:16,685.685 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 03:42:16,692.692 INFO    ] Checking for existing commands in stream...
[2026-06-12 03:42:16,759.759 INFO    ] No existing commands found in stream
[2026-06-12 03:42:21,773.773 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 03:42:21,775.775 INFO    ] Waiting 2.37 seconds before fallback handling...
[2026-06-12 03:42:24,544.544 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 03:42:24,546.546 INFO    ] Checking for system updates...
[2026-06-12 03:42:24,568.568 INFO    ] 200
[2026-06-12 03:42:24,569.569 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:42:24,603.603 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 03:42:24,604.604 INFO    ] No update needed
[2026-06-12 03:42:24,605.605 INFO    ] Checking for camera pi updates...
[2026-06-12 03:42:24,628.628 INFO    ] 200
[2026-06-12 03:42:24,629.629 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:42:24,653.653 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 03:42:24,691.691 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 03:42:24,693.693 INFO    ] No camera update needed
[2026-06-12 03:42:24,694.694 INFO    ] Script finished. Safe exiting...
[2026-06-12 03:42:24,696.696 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 03:42:24,699.699 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 03:42:24,703.703 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 03:42:26,742.742 INFO    ] ================================================
[2026-06-12 03:42:26,757.757 INFO    ] Launching Daemon at Fri Jun 12 03:42:26 IST 2026
[2026-06-12 03:42:26,768.768 INFO    ] ================================================
[2026-06-12 03:42:27,117.117 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 03:42:27
[2026-06-12 03:42:27,451.451 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 03:42:27,602.602 INFO    ] Initializing speech engine...
[2026-06-12 03:42:27,607.607 INFO    ] 2026-06-12 03:42:27
[2026-06-12 03:42:27,815.815 INFO    ] 2026-06-12 03:42:27
[2026-06-12 03:42:27,844.844 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 03:42:27,966.966 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 03:42:28,029.029 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 03:42:28,166.166 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 03:42:28,230.230 INFO    ] time= 12/06/2026 03:42:28
[2026-06-12 03:42:28,257.257 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 03:42:28,263.263 INFO    ] Checking for existing commands in stream...
[2026-06-12 03:42:28,330.330 INFO    ] No existing commands found in stream
[2026-06-12 03:42:33,340.340 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 03:42:33,343.343 INFO    ] Waiting 1.72 seconds before fallback handling...
[2026-06-12 03:42:35,435.435 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 03:42:35,437.437 INFO    ] Checking for system updates...
[2026-06-12 03:42:35,458.458 INFO    ] 200
[2026-06-12 03:42:35,460.460 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:42:35,490.490 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 03:42:35,491.491 INFO    ] No update needed
[2026-06-12 03:42:35,493.493 INFO    ] Checking for camera pi updates...
[2026-06-12 03:42:35,514.514 INFO    ] 200
[2026-06-12 03:42:35,515.515 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:42:35,542.542 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 03:42:35,579.579 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 03:42:35,580.580 INFO    ] No camera update needed
[2026-06-12 03:42:35,582.582 INFO    ] Script finished. Safe exiting...
[2026-06-12 03:42:35,583.583 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 03:42:35,586.586 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 03:42:35,589.589 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 03:42:37,628.628 INFO    ] ================================================
[2026-06-12 03:42:37,643.643 INFO    ] Launching Daemon at Fri Jun 12 03:42:37 IST 2026
[2026-06-12 03:42:37,654.654 INFO    ] ================================================
[2026-06-12 03:42:38,017.017 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 03:42:38
[2026-06-12 03:42:38,333.333 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 03:42:38,465.465 INFO    ] Initializing speech engine...
[2026-06-12 03:42:38,478.478 INFO    ] 2026-06-12 03:42:38
[2026-06-12 03:42:38,686.686 INFO    ] 2026-06-12 03:42:38
[2026-06-12 03:42:38,713.713 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 03:42:38,898.898 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 03:42:38,906.906 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 03:42:39,046.046 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 03:42:39,105.105 INFO    ] time= 12/06/2026 03:42:39
[2026-06-12 03:42:39,127.127 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 03:42:39,133.133 INFO    ] Checking for existing commands in stream...
[2026-06-12 03:42:39,200.200 INFO    ] No existing commands found in stream
[2026-06-12 03:42:44,214.214 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 03:42:44,217.217 INFO    ] Waiting 3.80 seconds before fallback handling...
[2026-06-12 03:42:48,380.380 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 03:42:48,381.381 INFO    ] Checking for system updates...
[2026-06-12 03:42:48,404.404 INFO    ] 200
[2026-06-12 03:42:48,405.405 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:42:48,441.441 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 03:42:48,443.443 INFO    ] No update needed
[2026-06-12 03:42:48,444.444 INFO    ] Checking for camera pi updates...
[2026-06-12 03:42:48,466.466 INFO    ] 200
[2026-06-12 03:42:48,468.468 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:42:48,492.492 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 03:42:48,528.528 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 03:42:48,530.530 INFO    ] No camera update needed
[2026-06-12 03:42:48,531.531 INFO    ] Script finished. Safe exiting...
[2026-06-12 03:42:48,533.533 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 03:42:48,536.536 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 03:42:48,539.539 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 03:42:50,577.577 INFO    ] ================================================
[2026-06-12 03:42:50,592.592 INFO    ] Launching Daemon at Fri Jun 12 03:42:50 IST 2026
[2026-06-12 03:42:50,603.603 INFO    ] ================================================
[2026-06-12 03:42:50,993.993 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 03:42:50
[2026-06-12 03:42:51,327.327 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 03:42:51,476.476 INFO    ] Initializing speech engine...
[2026-06-12 03:42:51,481.481 INFO    ] 2026-06-12 03:42:51
[2026-06-12 03:42:51,689.689 INFO    ] 2026-06-12 03:42:51
[2026-06-12 03:42:51,717.717 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 03:42:51,902.902 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 03:42:51,912.912 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 03:42:52,032.032 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 03:42:52,094.094 INFO    ] time= 12/06/2026 03:42:52
[2026-06-12 03:42:52,131.131 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 03:42:52,133.133 INFO    ] Checking for existing commands in stream...
[2026-06-12 03:42:52,204.204 INFO    ] No existing commands found in stream
[2026-06-12 03:42:57,224.224 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 03:42:57,227.227 INFO    ] Waiting 2.76 seconds before fallback handling...
[2026-06-12 03:43:00,346.346 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 03:43:00,348.348 INFO    ] Checking for system updates...
[2026-06-12 03:43:00,369.369 INFO    ] 200
[2026-06-12 03:43:00,371.371 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:43:00,401.401 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 03:43:00,402.402 INFO    ] No update needed
[2026-06-12 03:43:00,404.404 INFO    ] Checking for camera pi updates...
[2026-06-12 03:43:00,424.424 INFO    ] 200
[2026-06-12 03:43:00,425.425 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:43:00,448.448 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 03:43:00,497.497 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 03:43:00,498.498 INFO    ] No camera update needed
[2026-06-12 03:43:00,500.500 INFO    ] Script finished. Safe exiting...
[2026-06-12 03:43:00,501.501 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 03:43:00,504.504 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 03:43:00,507.507 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 03:43:02,538.538 INFO    ] ================================================
[2026-06-12 03:43:02,549.549 INFO    ] Launching Daemon at Fri Jun 12 03:43:02 IST 2026
[2026-06-12 03:43:02,556.556 INFO    ] ================================================
[2026-06-12 03:43:02,909.909 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 03:43:02
[2026-06-12 03:43:03,239.239 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 03:43:03,376.376 INFO    ] Initializing speech engine...
[2026-06-12 03:43:03,384.384 INFO    ] 2026-06-12 03:43:03
[2026-06-12 03:43:03,588.588 INFO    ] 2026-06-12 03:43:03
[2026-06-12 03:43:03,616.616 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 03:43:03,797.797 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 03:43:03,801.801 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 03:43:03,936.936 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 03:43:04,000.000 INFO    ] time= 12/06/2026 03:43:03
[2026-06-12 03:43:04,025.025 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 03:43:04,032.032 INFO    ] Checking for existing commands in stream...
[2026-06-12 03:43:04,121.121 INFO    ] No existing commands found in stream
[2026-06-12 03:43:09,130.130 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 03:43:09,133.133 INFO    ] Waiting 3.92 seconds before fallback handling...
[2026-06-12 03:43:13,446.446 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 03:43:13,448.448 INFO    ] Checking for system updates...
[2026-06-12 03:43:13,468.468 INFO    ] 200
[2026-06-12 03:43:13,470.470 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:43:13,502.502 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 03:43:13,503.503 INFO    ] No update needed
[2026-06-12 03:43:13,504.504 INFO    ] Checking for camera pi updates...
[2026-06-12 03:43:13,524.524 INFO    ] 200
[2026-06-12 03:43:13,525.525 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:43:13,548.548 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 03:43:13,588.588 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 03:43:13,590.590 INFO    ] No camera update needed
[2026-06-12 03:43:13,591.591 INFO    ] Script finished. Safe exiting...
[2026-06-12 03:43:13,592.592 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 03:43:13,595.595 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 03:43:13,598.598 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 03:43:15,640.640 INFO    ] ================================================
[2026-06-12 03:43:15,656.656 INFO    ] Launching Daemon at Fri Jun 12 03:43:15 IST 2026
[2026-06-12 03:43:15,666.666 INFO    ] ================================================
[2026-06-12 03:43:15,991.991 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 03:43:15
[2026-06-12 03:43:16,301.301 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 03:43:16,431.431 INFO    ] Initializing speech engine...
[2026-06-12 03:43:16,434.434 INFO    ] 2026-06-12 03:43:16
[2026-06-12 03:43:16,649.649 INFO    ] 2026-06-12 03:43:16
[2026-06-12 03:43:16,678.678 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 03:43:16,862.862 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 03:43:16,872.872 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 03:43:17,020.020 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 03:43:17,068.068 INFO    ] time= 12/06/2026 03:43:17
[2026-06-12 03:43:17,089.089 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 03:43:17,095.095 INFO    ] Checking for existing commands in stream...
[2026-06-12 03:43:17,162.162 INFO    ] No existing commands found in stream
[2026-06-12 03:43:22,186.186 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 03:43:22,189.189 INFO    ] Waiting 1.80 seconds before fallback handling...
[2026-06-12 03:43:24,399.399 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 03:43:24,401.401 INFO    ] Checking for system updates...
[2026-06-12 03:43:24,423.423 INFO    ] 200
[2026-06-12 03:43:24,425.425 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:43:24,458.458 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 03:43:24,459.459 INFO    ] No update needed
[2026-06-12 03:43:24,461.461 INFO    ] Checking for camera pi updates...
[2026-06-12 03:43:24,481.481 INFO    ] 200
[2026-06-12 03:43:24,482.482 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:43:24,507.507 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 03:43:24,651.651 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 03:43:24,653.653 INFO    ] No camera update needed
[2026-06-12 03:43:24,654.654 INFO    ] Script finished. Safe exiting...
[2026-06-12 03:43:24,656.656 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 03:43:24,659.659 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 03:43:24,662.662 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 03:43:26,704.704 INFO    ] ================================================
[2026-06-12 03:43:26,719.719 INFO    ] Launching Daemon at Fri Jun 12 03:43:26 IST 2026
[2026-06-12 03:43:26,730.730 INFO    ] ================================================
[2026-06-12 03:43:27,112.112 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 03:43:27
[2026-06-12 03:43:27,424.424 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 03:43:27,558.558 INFO    ] Initializing speech engine...
[2026-06-12 03:43:27,571.571 INFO    ] 2026-06-12 03:43:27
[2026-06-12 03:43:27,787.787 INFO    ] 2026-06-12 03:43:27
[2026-06-12 03:43:27,817.817 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 03:43:28,011.011 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 03:43:28,014.014 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 03:43:28,157.157 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 03:43:28,226.226 INFO    ] time= 12/06/2026 03:43:28
[2026-06-12 03:43:28,253.253 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 03:43:28,259.259 INFO    ] Checking for existing commands in stream...
[2026-06-12 03:43:28,328.328 INFO    ] No existing commands found in stream
[2026-06-12 03:43:33,339.339 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 03:43:33,342.342 INFO    ] Waiting 2.18 seconds before fallback handling...
[2026-06-12 03:43:35,896.896 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 03:43:35,897.897 INFO    ] Checking for system updates...
[2026-06-12 03:43:35,918.918 INFO    ] 200
[2026-06-12 03:43:35,919.919 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:43:35,952.952 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 03:43:35,953.953 INFO    ] No update needed
[2026-06-12 03:43:35,955.955 INFO    ] Checking for camera pi updates...
[2026-06-12 03:43:35,974.974 INFO    ] 200
[2026-06-12 03:43:35,975.975 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:43:35,998.998 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 03:43:36,042.042 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 03:43:36,044.044 INFO    ] No camera update needed
[2026-06-12 03:43:36,045.045 INFO    ] Script finished. Safe exiting...
[2026-06-12 03:43:36,046.046 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 03:43:36,049.049 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 03:43:36,052.052 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 03:43:38,090.090 INFO    ] ================================================
[2026-06-12 03:43:38,104.104 INFO    ] Launching Daemon at Fri Jun 12 03:43:38 IST 2026
[2026-06-12 03:43:38,115.115 INFO    ] ================================================
[2026-06-12 03:43:38,475.475 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 03:43:38
[2026-06-12 03:43:38,790.790 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 03:43:38,932.932 INFO    ] Initializing speech engine...
[2026-06-12 03:43:38,938.938 INFO    ] 2026-06-12 03:43:38
[2026-06-12 03:43:39,140.140 INFO    ] 2026-06-12 03:43:39
[2026-06-12 03:43:39,169.169 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 03:43:39,352.352 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 03:43:39,361.361 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 03:43:39,510.510 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 03:43:39,557.557 INFO    ] time= 12/06/2026 03:43:39
[2026-06-12 03:43:39,579.579 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 03:43:39,586.586 INFO    ] Checking for existing commands in stream...
[2026-06-12 03:43:39,652.652 INFO    ] No existing commands found in stream
[2026-06-12 03:43:44,666.666 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 03:43:44,669.669 INFO    ] Waiting 0.34 seconds before fallback handling...
[2026-06-12 03:43:45,404.404 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 03:43:45,406.406 INFO    ] Checking for system updates...
[2026-06-12 03:43:45,429.429 INFO    ] 200
[2026-06-12 03:43:45,431.431 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:43:45,466.466 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 03:43:45,468.468 INFO    ] No update needed
[2026-06-12 03:43:45,470.470 INFO    ] Checking for camera pi updates...
[2026-06-12 03:43:45,497.497 INFO    ] 200
[2026-06-12 03:43:45,500.500 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:43:45,528.528 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 03:43:45,568.568 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 03:43:45,569.569 INFO    ] No camera update needed
[2026-06-12 03:43:45,571.571 INFO    ] Script finished. Safe exiting...
[2026-06-12 03:43:45,572.572 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 03:43:45,576.576 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 03:43:45,579.579 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 03:43:47,617.617 INFO    ] ================================================
[2026-06-12 03:43:47,633.633 INFO    ] Launching Daemon at Fri Jun 12 03:43:47 IST 2026
[2026-06-12 03:43:47,644.644 INFO    ] ================================================
[2026-06-12 03:43:47,992.992 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 03:43:47
[2026-06-12 03:43:48,322.322 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 03:43:48,459.459 INFO    ] Initializing speech engine...
[2026-06-12 03:43:48,468.468 INFO    ] 2026-06-12 03:43:48
[2026-06-12 03:43:48,685.685 INFO    ] 2026-06-12 03:43:48
[2026-06-12 03:43:48,715.715 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 03:43:48,902.902 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 03:43:48,911.911 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 03:43:49,059.059 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 03:43:49,113.113 INFO    ] time= 12/06/2026 03:43:49
[2026-06-12 03:43:49,135.135 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 03:43:49,142.142 INFO    ] Checking for existing commands in stream...
[2026-06-12 03:43:49,209.209 INFO    ] No existing commands found in stream
[2026-06-12 03:43:54,219.219 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 03:43:54,222.222 INFO    ] Waiting 3.88 seconds before fallback handling...
[2026-06-12 03:43:58,492.492 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 03:43:58,493.493 INFO    ] Checking for system updates...
[2026-06-12 03:43:58,515.515 INFO    ] 200
[2026-06-12 03:43:58,517.517 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:43:58,549.549 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 03:43:58,551.551 INFO    ] No update needed
[2026-06-12 03:43:58,552.552 INFO    ] Checking for camera pi updates...
[2026-06-12 03:43:58,572.572 INFO    ] 200
[2026-06-12 03:43:58,573.573 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:43:58,601.601 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 03:43:58,639.639 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 03:43:58,641.641 INFO    ] No camera update needed
[2026-06-12 03:43:58,642.642 INFO    ] Script finished. Safe exiting...
[2026-06-12 03:43:58,643.643 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 03:43:58,646.646 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 03:43:58,649.649 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 03:44:00,686.686 INFO    ] ================================================
[2026-06-12 03:44:00,702.702 INFO    ] Launching Daemon at Fri Jun 12 03:44:00 IST 2026
[2026-06-12 03:44:00,713.713 INFO    ] ================================================
[2026-06-12 03:44:01,041.041 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 03:44:01
[2026-06-12 03:44:01,426.426 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 03:44:01,609.609 INFO    ] Initializing speech engine...
[2026-06-12 03:44:01,613.613 INFO    ] 2026-06-12 03:44:01
[2026-06-12 03:44:01,845.845 INFO    ] 2026-06-12 03:44:01
[2026-06-12 03:44:01,895.895 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 03:44:02,064.064 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 03:44:02,128.128 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 03:44:02,293.293 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 03:44:02,357.357 INFO    ] time= 12/06/2026 03:44:02
[2026-06-12 03:44:02,398.398 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 03:44:02,405.405 INFO    ] Checking for existing commands in stream...
[2026-06-12 03:44:02,472.472 INFO    ] No existing commands found in stream
[2026-06-12 03:44:07,482.482 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 03:44:07,485.485 INFO    ] Waiting 3.99 seconds before fallback handling...
[2026-06-12 03:44:11,864.864 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 03:44:11,865.865 INFO    ] Checking for system updates...
[2026-06-12 03:44:11,886.886 INFO    ] 200
[2026-06-12 03:44:11,888.888 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:44:11,940.940 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 03:44:11,941.941 INFO    ] No update needed
[2026-06-12 03:44:11,942.942 INFO    ] Checking for camera pi updates...
[2026-06-12 03:44:11,962.962 INFO    ] 200
[2026-06-12 03:44:11,963.963 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:44:11,986.986 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 03:44:12,013.013 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 03:44:12,014.014 INFO    ] No camera update needed
[2026-06-12 03:44:12,016.016 INFO    ] Script finished. Safe exiting...
[2026-06-12 03:44:12,017.017 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 03:44:12,020.020 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 03:44:12,023.023 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 03:44:14,061.061 INFO    ] ================================================
[2026-06-12 03:44:14,077.077 INFO    ] Launching Daemon at Fri Jun 12 03:44:14 IST 2026
[2026-06-12 03:44:14,087.087 INFO    ] ================================================
[2026-06-12 03:44:14,436.436 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 03:44:14
[2026-06-12 03:44:14,751.751 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 03:44:14,894.894 INFO    ] Initializing speech engine...
[2026-06-12 03:44:14,899.899 INFO    ] 2026-06-12 03:44:14
[2026-06-12 03:44:15,102.102 INFO    ] 2026-06-12 03:44:15
[2026-06-12 03:44:15,130.130 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 03:44:15,314.314 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 03:44:15,323.323 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 03:44:15,450.450 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 03:44:15,506.506 INFO    ] time= 12/06/2026 03:44:15
[2026-06-12 03:44:15,540.540 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 03:44:15,545.545 INFO    ] Checking for existing commands in stream...
[2026-06-12 03:44:15,640.640 INFO    ] No existing commands found in stream
[2026-06-12 03:44:20,659.659 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 03:44:20,662.662 INFO    ] Waiting 2.62 seconds before fallback handling...
[2026-06-12 03:44:23,664.664 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 03:44:23,665.665 INFO    ] Checking for system updates...
[2026-06-12 03:44:23,687.687 INFO    ] 200
[2026-06-12 03:44:23,688.688 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:44:23,719.719 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 03:44:23,721.721 INFO    ] No update needed
[2026-06-12 03:44:23,723.723 INFO    ] Checking for camera pi updates...
[2026-06-12 03:44:23,742.742 INFO    ] 200
[2026-06-12 03:44:23,744.744 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:44:23,767.767 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 03:44:23,804.804 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 03:44:23,806.806 INFO    ] No camera update needed
[2026-06-12 03:44:23,807.807 INFO    ] Script finished. Safe exiting...
[2026-06-12 03:44:23,808.808 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 03:44:23,811.811 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 03:44:23,814.814 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 03:44:25,852.852 INFO    ] ================================================
[2026-06-12 03:44:25,876.876 INFO    ] Launching Daemon at Fri Jun 12 03:44:25 IST 2026
[2026-06-12 03:44:25,886.886 INFO    ] ================================================
[2026-06-12 03:44:26,210.210 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 03:44:26
[2026-06-12 03:44:26,521.521 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 03:44:26,651.651 INFO    ] Initializing speech engine...
[2026-06-12 03:44:26,654.654 INFO    ] 2026-06-12 03:44:26
[2026-06-12 03:44:26,870.870 INFO    ] 2026-06-12 03:44:26
[2026-06-12 03:44:26,898.898 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 03:44:27,096.096 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 03:44:27,106.106 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 03:44:27,246.246 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 03:44:27,300.300 INFO    ] time= 12/06/2026 03:44:27
[2026-06-12 03:44:27,344.344 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 03:44:27,351.351 INFO    ] Checking for existing commands in stream...
[2026-06-12 03:44:27,421.421 INFO    ] No existing commands found in stream
[2026-06-12 03:44:32,432.432 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 03:44:32,435.435 INFO    ] Waiting 3.04 seconds before fallback handling...
[2026-06-12 03:44:35,863.863 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 03:44:35,865.865 INFO    ] Checking for system updates...
[2026-06-12 03:44:35,887.887 INFO    ] 200
[2026-06-12 03:44:35,888.888 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:44:35,922.922 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 03:44:35,923.923 INFO    ] No update needed
[2026-06-12 03:44:35,924.924 INFO    ] Checking for camera pi updates...
[2026-06-12 03:44:35,945.945 INFO    ] 200
[2026-06-12 03:44:35,946.946 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:44:35,970.970 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 03:44:36,009.009 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 03:44:36,011.011 INFO    ] No camera update needed
[2026-06-12 03:44:36,012.012 INFO    ] Script finished. Safe exiting...
[2026-06-12 03:44:36,013.013 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 03:44:36,016.016 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 03:44:36,019.019 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 03:44:38,058.058 INFO    ] ================================================
[2026-06-12 03:44:38,073.073 INFO    ] Launching Daemon at Fri Jun 12 03:44:38 IST 2026
[2026-06-12 03:44:38,083.083 INFO    ] ================================================
[2026-06-12 03:44:38,435.435 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 03:44:38
[2026-06-12 03:44:38,752.752 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 03:44:38,896.896 INFO    ] Initializing speech engine...
[2026-06-12 03:44:38,902.902 INFO    ] 2026-06-12 03:44:38
[2026-06-12 03:44:39,106.106 INFO    ] 2026-06-12 03:44:39
[2026-06-12 03:44:39,135.135 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 03:44:39,320.320 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 03:44:39,329.329 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 03:44:39,469.469 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 03:44:39,527.527 INFO    ] time= 12/06/2026 03:44:39
[2026-06-12 03:44:39,551.551 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 03:44:39,557.557 INFO    ] Checking for existing commands in stream...
[2026-06-12 03:44:39,624.624 INFO    ] No existing commands found in stream
[2026-06-12 03:44:44,638.638 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 03:44:44,641.641 INFO    ] Waiting 0.92 seconds before fallback handling...
[2026-06-12 03:44:45,953.953 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 03:44:45,954.954 INFO    ] Checking for system updates...
[2026-06-12 03:44:45,975.975 INFO    ] 200
[2026-06-12 03:44:45,977.977 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:44:46,008.008 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 03:44:46,009.009 INFO    ] No update needed
[2026-06-12 03:44:46,011.011 INFO    ] Checking for camera pi updates...
[2026-06-12 03:44:46,031.031 INFO    ] 200
[2026-06-12 03:44:46,032.032 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:44:46,055.055 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 03:44:46,095.095 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 03:44:46,097.097 INFO    ] No camera update needed
[2026-06-12 03:44:46,098.098 INFO    ] Script finished. Safe exiting...
[2026-06-12 03:44:46,100.100 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 03:44:46,103.103 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 03:44:46,106.106 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 03:44:48,146.146 INFO    ] ================================================
[2026-06-12 03:44:48,161.161 INFO    ] Launching Daemon at Fri Jun 12 03:44:48 IST 2026
[2026-06-12 03:44:48,172.172 INFO    ] ================================================
[2026-06-12 03:44:48,543.543 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 03:44:48
[2026-06-12 03:44:48,856.856 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 03:44:48,999.999 INFO    ] Initializing speech engine...
[2026-06-12 03:44:49,005.005 INFO    ] 2026-06-12 03:44:49
[2026-06-12 03:44:49,208.208 INFO    ] 2026-06-12 03:44:49
[2026-06-12 03:44:49,238.238 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 03:44:49,423.423 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 03:44:49,433.433 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 03:44:49,564.564 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 03:44:49,632.632 INFO    ] time= 12/06/2026 03:44:49
[2026-06-12 03:44:49,656.656 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 03:44:49,662.662 INFO    ] Checking for existing commands in stream...
[2026-06-12 03:44:49,729.729 INFO    ] No existing commands found in stream
[2026-06-12 03:44:54,739.739 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 03:44:54,742.742 INFO    ] Waiting 1.02 seconds before fallback handling...
[2026-06-12 03:44:56,125.125 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 03:44:56,126.126 INFO    ] Checking for system updates...
[2026-06-12 03:44:56,147.147 INFO    ] 200
[2026-06-12 03:44:56,148.148 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:44:56,181.181 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 03:44:56,182.182 INFO    ] No update needed
[2026-06-12 03:44:56,184.184 INFO    ] Checking for camera pi updates...
[2026-06-12 03:44:56,205.205 INFO    ] 200
[2026-06-12 03:44:56,206.206 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:44:56,232.232 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 03:44:56,268.268 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 03:44:56,269.269 INFO    ] No camera update needed
[2026-06-12 03:44:56,271.271 INFO    ] Script finished. Safe exiting...
[2026-06-12 03:44:56,272.272 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 03:44:56,275.275 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 03:44:56,278.278 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 03:44:58,318.318 INFO    ] ================================================
[2026-06-12 03:44:58,334.334 INFO    ] Launching Daemon at Fri Jun 12 03:44:58 IST 2026
[2026-06-12 03:44:58,345.345 INFO    ] ================================================
[2026-06-12 03:44:58,718.718 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 03:44:58
[2026-06-12 03:44:59,036.036 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 03:44:59,175.175 INFO    ] Initializing speech engine...
[2026-06-12 03:44:59,185.185 INFO    ] 2026-06-12 03:44:59
[2026-06-12 03:44:59,390.390 INFO    ] 2026-06-12 03:44:59
[2026-06-12 03:44:59,419.419 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 03:44:59,603.603 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 03:44:59,612.612 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 03:44:59,758.758 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 03:44:59,811.811 INFO    ] time= 12/06/2026 03:44:59
[2026-06-12 03:44:59,834.834 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 03:44:59,840.840 INFO    ] Checking for existing commands in stream...
[2026-06-12 03:44:59,907.907 INFO    ] No existing commands found in stream
[2026-06-12 03:45:04,921.921 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 03:45:04,924.924 INFO    ] Waiting 3.64 seconds before fallback handling...
[2026-06-12 03:45:08,967.967 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 03:45:08,968.968 INFO    ] Checking for system updates...
[2026-06-12 03:45:08,989.989 INFO    ] 200
[2026-06-12 03:45:08,990.990 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:45:09,020.020 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 03:45:09,022.022 INFO    ] No update needed
[2026-06-12 03:45:09,023.023 INFO    ] Checking for camera pi updates...
[2026-06-12 03:45:09,043.043 INFO    ] 200
[2026-06-12 03:45:09,044.044 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:45:09,069.069 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 03:45:09,104.104 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 03:45:09,106.106 INFO    ] No camera update needed
[2026-06-12 03:45:09,107.107 INFO    ] Script finished. Safe exiting...
[2026-06-12 03:45:09,108.108 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 03:45:09,111.111 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 03:45:09,114.114 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 03:45:11,153.153 INFO    ] ================================================
[2026-06-12 03:45:11,168.168 INFO    ] Launching Daemon at Fri Jun 12 03:45:11 IST 2026
[2026-06-12 03:45:11,179.179 INFO    ] ================================================
[2026-06-12 03:45:11,508.508 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 03:45:11
[2026-06-12 03:45:11,819.819 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 03:45:11,949.949 INFO    ] Initializing speech engine...
[2026-06-12 03:45:11,957.957 INFO    ] 2026-06-12 03:45:11
[2026-06-12 03:45:12,172.172 INFO    ] 2026-06-12 03:45:12
[2026-06-12 03:45:12,201.201 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 03:45:12,338.338 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 03:45:12,385.385 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 03:45:12,519.519 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 03:45:12,580.580 INFO    ] time= 12/06/2026 03:45:12
[2026-06-12 03:45:12,612.612 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 03:45:12,613.613 INFO    ] Checking for existing commands in stream...
[2026-06-12 03:45:12,685.685 INFO    ] No existing commands found in stream
[2026-06-12 03:45:17,694.694 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 03:45:17,696.696 INFO    ] Waiting 3.23 seconds before fallback handling...
[2026-06-12 03:45:21,302.302 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 03:45:21,304.304 INFO    ] Checking for system updates...
[2026-06-12 03:45:21,324.324 INFO    ] 200
[2026-06-12 03:45:21,326.326 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:45:21,357.357 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 03:45:21,359.359 INFO    ] No update needed
[2026-06-12 03:45:21,360.360 INFO    ] Checking for camera pi updates...
[2026-06-12 03:45:21,379.379 INFO    ] 200
[2026-06-12 03:45:21,381.381 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:45:21,404.404 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 03:45:21,450.450 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 03:45:21,452.452 INFO    ] No camera update needed
[2026-06-12 03:45:21,453.453 INFO    ] Script finished. Safe exiting...
[2026-06-12 03:45:21,454.454 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 03:45:21,457.457 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 03:45:21,460.460 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 03:45:23,499.499 INFO    ] ================================================
[2026-06-12 03:45:23,514.514 INFO    ] Launching Daemon at Fri Jun 12 03:45:23 IST 2026
[2026-06-12 03:45:23,525.525 INFO    ] ================================================
[2026-06-12 03:45:23,866.866 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 03:45:23
[2026-06-12 03:45:24,182.182 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 03:45:24,313.313 INFO    ] Initializing speech engine...
[2026-06-12 03:45:24,321.321 INFO    ] 2026-06-12 03:45:24
[2026-06-12 03:45:24,531.531 INFO    ] 2026-06-12 03:45:24
[2026-06-12 03:45:24,560.560 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 03:45:24,743.743 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 03:45:24,747.747 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 03:45:24,888.888 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 03:45:24,951.951 INFO    ] time= 12/06/2026 03:45:24
[2026-06-12 03:45:24,974.974 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 03:45:24,980.980 INFO    ] Checking for existing commands in stream...
[2026-06-12 03:45:25,047.047 INFO    ] No existing commands found in stream
[2026-06-12 03:45:30,061.061 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 03:45:30,064.064 INFO    ] Waiting 0.50 seconds before fallback handling...
[2026-06-12 03:45:30,981.981 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 03:45:30,982.982 INFO    ] Checking for system updates...
[2026-06-12 03:45:31,003.003 INFO    ] 200
[2026-06-12 03:45:31,004.004 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:45:31,036.036 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 03:45:31,038.038 INFO    ] No update needed
[2026-06-12 03:45:31,039.039 INFO    ] Checking for camera pi updates...
[2026-06-12 03:45:31,061.061 INFO    ] 200
[2026-06-12 03:45:31,063.063 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:45:31,087.087 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 03:45:31,236.236 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 03:45:31,238.238 INFO    ] No camera update needed
[2026-06-12 03:45:31,239.239 INFO    ] Script finished. Safe exiting...
[2026-06-12 03:45:31,241.241 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 03:45:31,244.244 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 03:45:31,247.247 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 03:45:33,279.279 INFO    ] ================================================
[2026-06-12 03:45:33,294.294 INFO    ] Launching Daemon at Fri Jun 12 03:45:33 IST 2026
[2026-06-12 03:45:33,304.304 INFO    ] ================================================
[2026-06-12 03:45:33,641.641 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 03:45:33
[2026-06-12 03:45:33,956.956 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 03:45:34,099.099 INFO    ] Initializing speech engine...
[2026-06-12 03:45:34,104.104 INFO    ] 2026-06-12 03:45:34
[2026-06-12 03:45:34,307.307 INFO    ] 2026-06-12 03:45:34
[2026-06-12 03:45:34,336.336 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 03:45:34,520.520 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 03:45:34,529.529 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 03:45:34,669.669 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 03:45:34,726.726 INFO    ] time= 12/06/2026 03:45:34
[2026-06-12 03:45:34,750.750 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 03:45:34,756.756 INFO    ] Checking for existing commands in stream...
[2026-06-12 03:45:34,822.822 INFO    ] No existing commands found in stream
[2026-06-12 03:45:39,842.842 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 03:45:39,844.844 INFO    ] Waiting 0.82 seconds before fallback handling...
[2026-06-12 03:45:41,046.046 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 03:45:41,047.047 INFO    ] Checking for system updates...
[2026-06-12 03:45:41,068.068 INFO    ] 200
[2026-06-12 03:45:41,069.069 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:45:41,100.100 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 03:45:41,101.101 INFO    ] No update needed
[2026-06-12 03:45:41,102.102 INFO    ] Checking for camera pi updates...
[2026-06-12 03:45:41,124.124 INFO    ] 200
[2026-06-12 03:45:41,125.125 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:45:41,148.148 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 03:45:41,182.182 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 03:45:41,183.183 INFO    ] No camera update needed
[2026-06-12 03:45:41,184.184 INFO    ] Script finished. Safe exiting...
[2026-06-12 03:45:41,186.186 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 03:45:41,189.189 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 03:45:41,192.192 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 03:45:43,230.230 INFO    ] ================================================
[2026-06-12 03:45:43,245.245 INFO    ] Launching Daemon at Fri Jun 12 03:45:43 IST 2026
[2026-06-12 03:45:43,255.255 INFO    ] ================================================
[2026-06-12 03:45:43,623.623 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 03:45:43
[2026-06-12 03:45:43,937.937 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 03:45:44,079.079 INFO    ] Initializing speech engine...
[2026-06-12 03:45:44,087.087 INFO    ] 2026-06-12 03:45:44
[2026-06-12 03:45:44,302.302 INFO    ] 2026-06-12 03:45:44
[2026-06-12 03:45:44,333.333 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 03:45:44,467.467 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 03:45:44,531.531 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 03:45:44,678.678 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 03:45:44,742.742 INFO    ] time= 12/06/2026 03:45:44
[2026-06-12 03:45:44,773.773 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 03:45:44,780.780 INFO    ] Checking for existing commands in stream...
[2026-06-12 03:45:44,851.851 INFO    ] No existing commands found in stream
[2026-06-12 03:45:49,885.885 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 03:45:49,898.898 INFO    ] Waiting 3.80 seconds before fallback handling...
[2026-06-12 03:45:54,079.079 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 03:45:54,081.081 INFO    ] Checking for system updates...
[2026-06-12 03:45:54,106.106 INFO    ] 200
[2026-06-12 03:45:54,108.108 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:45:54,138.138 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 03:45:54,139.139 INFO    ] No update needed
[2026-06-12 03:45:54,141.141 INFO    ] Checking for camera pi updates...
[2026-06-12 03:45:54,160.160 INFO    ] 200
[2026-06-12 03:45:54,161.161 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:45:54,186.186 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 03:45:54,219.219 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 03:45:54,221.221 INFO    ] No camera update needed
[2026-06-12 03:45:54,222.222 INFO    ] Script finished. Safe exiting...
[2026-06-12 03:45:54,223.223 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 03:45:54,226.226 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 03:45:54,229.229 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 03:45:56,267.267 INFO    ] ================================================
[2026-06-12 03:45:56,282.282 INFO    ] Launching Daemon at Fri Jun 12 03:45:56 IST 2026
[2026-06-12 03:45:56,293.293 INFO    ] ================================================
[2026-06-12 03:45:56,636.636 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 03:45:56
[2026-06-12 03:45:56,947.947 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 03:45:57,089.089 INFO    ] Initializing speech engine...
[2026-06-12 03:45:57,094.094 INFO    ] 2026-06-12 03:45:57
[2026-06-12 03:45:57,296.296 INFO    ] 2026-06-12 03:45:57
[2026-06-12 03:45:57,326.326 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 03:45:57,510.510 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 03:45:57,519.519 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 03:45:57,659.659 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 03:45:57,716.716 INFO    ] time= 12/06/2026 03:45:57
[2026-06-12 03:45:57,739.739 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 03:45:57,746.746 INFO    ] Checking for existing commands in stream...
[2026-06-12 03:45:57,835.835 INFO    ] No existing commands found in stream
[2026-06-12 03:46:02,844.844 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 03:46:02,847.847 INFO    ] Waiting 2.88 seconds before fallback handling...
[2026-06-12 03:46:06,140.140 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 03:46:06,141.141 INFO    ] Checking for system updates...
[2026-06-12 03:46:06,164.164 INFO    ] 200
[2026-06-12 03:46:06,165.165 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:46:06,198.198 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 03:46:06,200.200 INFO    ] No update needed
[2026-06-12 03:46:06,201.201 INFO    ] Checking for camera pi updates...
[2026-06-12 03:46:06,222.222 INFO    ] 200
[2026-06-12 03:46:06,224.224 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:46:06,247.247 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 03:46:06,289.289 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 03:46:06,291.291 INFO    ] No camera update needed
[2026-06-12 03:46:06,292.292 INFO    ] Script finished. Safe exiting...
[2026-06-12 03:46:06,293.293 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 03:46:06,296.296 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 03:46:06,299.299 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 03:46:08,339.339 INFO    ] ================================================
[2026-06-12 03:46:08,355.355 INFO    ] Launching Daemon at Fri Jun 12 03:46:08 IST 2026
[2026-06-12 03:46:08,365.365 INFO    ] ================================================
[2026-06-12 03:46:08,729.729 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 03:46:08
[2026-06-12 03:46:09,040.040 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 03:46:09,171.171 INFO    ] Initializing speech engine...
[2026-06-12 03:46:09,176.176 INFO    ] 2026-06-12 03:46:09
[2026-06-12 03:46:09,401.401 INFO    ] 2026-06-12 03:46:09
[2026-06-12 03:46:09,430.430 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 03:46:09,615.615 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 03:46:09,623.623 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 03:46:09,769.769 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 03:46:09,822.822 INFO    ] time= 12/06/2026 03:46:09
[2026-06-12 03:46:09,844.844 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 03:46:09,850.850 INFO    ] Checking for existing commands in stream...
[2026-06-12 03:46:09,922.922 INFO    ] No existing commands found in stream
[2026-06-12 03:46:14,949.949 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 03:46:14,952.952 INFO    ] Waiting 3.57 seconds before fallback handling...
[2026-06-12 03:46:18,878.878 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 03:46:18,879.879 INFO    ] Checking for system updates...
[2026-06-12 03:46:18,900.900 INFO    ] 200
[2026-06-12 03:46:18,902.902 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:46:18,932.932 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 03:46:18,933.933 INFO    ] No update needed
[2026-06-12 03:46:18,934.934 INFO    ] Checking for camera pi updates...
[2026-06-12 03:46:18,954.954 INFO    ] 200
[2026-06-12 03:46:18,956.956 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:46:18,981.981 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 03:46:19,017.017 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 03:46:19,019.019 INFO    ] No camera update needed
[2026-06-12 03:46:19,020.020 INFO    ] Script finished. Safe exiting...
[2026-06-12 03:46:19,022.022 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 03:46:19,024.024 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 03:46:19,027.027 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 03:46:21,065.065 INFO    ] ================================================
[2026-06-12 03:46:21,081.081 INFO    ] Launching Daemon at Fri Jun 12 03:46:21 IST 2026
[2026-06-12 03:46:21,092.092 INFO    ] ================================================
[2026-06-12 03:46:21,448.448 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 03:46:21
[2026-06-12 03:46:21,759.759 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 03:46:21,902.902 INFO    ] Initializing speech engine...
[2026-06-12 03:46:21,907.907 INFO    ] 2026-06-12 03:46:21
[2026-06-12 03:46:22,111.111 INFO    ] 2026-06-12 03:46:22
[2026-06-12 03:46:22,140.140 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 03:46:22,324.324 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 03:46:22,332.332 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 03:46:22,479.479 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 03:46:22,532.532 INFO    ] time= 12/06/2026 03:46:22
[2026-06-12 03:46:22,554.554 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 03:46:22,561.561 INFO    ] Checking for existing commands in stream...
[2026-06-12 03:46:22,628.628 INFO    ] No existing commands found in stream
[2026-06-12 03:46:27,642.642 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 03:46:27,644.644 INFO    ] Waiting 0.77 seconds before fallback handling...
[2026-06-12 03:46:28,780.780 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 03:46:28,782.782 INFO    ] Checking for system updates...
[2026-06-12 03:46:28,802.802 INFO    ] 200
[2026-06-12 03:46:28,804.804 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:46:28,834.834 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 03:46:28,835.835 INFO    ] No update needed
[2026-06-12 03:46:28,837.837 INFO    ] Checking for camera pi updates...
[2026-06-12 03:46:28,857.857 INFO    ] 200
[2026-06-12 03:46:28,858.858 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:46:28,883.883 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 03:46:28,923.923 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 03:46:28,925.925 INFO    ] No camera update needed
[2026-06-12 03:46:28,926.926 INFO    ] Script finished. Safe exiting...
[2026-06-12 03:46:28,927.927 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 03:46:28,930.930 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 03:46:28,933.933 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 03:46:30,974.974 INFO    ] ================================================
[2026-06-12 03:46:30,989.989 INFO    ] Launching Daemon at Fri Jun 12 03:46:30 IST 2026
[2026-06-12 03:46:31,000.000 INFO    ] ================================================
[2026-06-12 03:46:31,377.377 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 03:46:31
[2026-06-12 03:46:31,717.717 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 03:46:31,868.868 INFO    ] Initializing speech engine...
[2026-06-12 03:46:31,872.872 INFO    ] 2026-06-12 03:46:31
[2026-06-12 03:46:32,104.104 INFO    ] 2026-06-12 03:46:32
[2026-06-12 03:46:32,134.134 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 03:46:32,332.332 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 03:46:32,341.341 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 03:46:32,479.479 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 03:46:32,542.542 INFO    ] time= 12/06/2026 03:46:32
[2026-06-12 03:46:32,565.565 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 03:46:32,583.583 INFO    ] Checking for existing commands in stream...
[2026-06-12 03:46:32,648.648 INFO    ] No existing commands found in stream
[2026-06-12 03:46:37,657.657 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 03:46:37,660.660 INFO    ] Waiting 2.36 seconds before fallback handling...
[2026-06-12 03:46:40,400.400 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 03:46:40,402.402 INFO    ] Checking for system updates...
[2026-06-12 03:46:40,422.422 INFO    ] 200
[2026-06-12 03:46:40,424.424 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:46:40,456.456 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 03:46:40,458.458 INFO    ] No update needed
[2026-06-12 03:46:40,459.459 INFO    ] Checking for camera pi updates...
[2026-06-12 03:46:40,478.478 INFO    ] 200
[2026-06-12 03:46:40,480.480 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:46:40,503.503 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 03:46:40,538.538 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 03:46:40,540.540 INFO    ] No camera update needed
[2026-06-12 03:46:40,541.541 INFO    ] Script finished. Safe exiting...
[2026-06-12 03:46:40,542.542 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 03:46:40,545.545 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 03:46:40,548.548 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 03:46:42,588.588 INFO    ] ================================================
[2026-06-12 03:46:42,603.603 INFO    ] Launching Daemon at Fri Jun 12 03:46:42 IST 2026
[2026-06-12 03:46:42,614.614 INFO    ] ================================================
[2026-06-12 03:46:42,951.951 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 03:46:42
[2026-06-12 03:46:43,269.269 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 03:46:43,413.413 INFO    ] Initializing speech engine...
[2026-06-12 03:46:43,420.420 INFO    ] 2026-06-12 03:46:43
[2026-06-12 03:46:43,623.623 INFO    ] 2026-06-12 03:46:43
[2026-06-12 03:46:43,651.651 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 03:46:43,835.835 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 03:46:43,844.844 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 03:46:43,973.973 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 03:46:44,040.040 INFO    ] time= 12/06/2026 03:46:43
[2026-06-12 03:46:44,064.064 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 03:46:44,070.070 INFO    ] Checking for existing commands in stream...
[2026-06-12 03:46:44,135.135 INFO    ] No existing commands found in stream
[2026-06-12 03:46:49,146.146 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 03:46:49,149.149 INFO    ] Waiting 3.88 seconds before fallback handling...
[2026-06-12 03:46:53,449.449 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 03:46:53,451.451 INFO    ] Checking for system updates...
[2026-06-12 03:46:53,472.472 INFO    ] 200
[2026-06-12 03:46:53,473.473 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:46:53,503.503 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 03:46:53,504.504 INFO    ] No update needed
[2026-06-12 03:46:53,506.506 INFO    ] Checking for camera pi updates...
[2026-06-12 03:46:53,525.525 INFO    ] 200
[2026-06-12 03:46:53,526.526 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:46:53,552.552 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 03:46:53,601.601 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 03:46:53,602.602 INFO    ] No camera update needed
[2026-06-12 03:46:53,603.603 INFO    ] Script finished. Safe exiting...
[2026-06-12 03:46:53,604.604 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 03:46:53,607.607 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 03:46:53,610.610 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 03:46:55,648.648 INFO    ] ================================================
[2026-06-12 03:46:55,664.664 INFO    ] Launching Daemon at Fri Jun 12 03:46:55 IST 2026
[2026-06-12 03:46:55,675.675 INFO    ] ================================================
[2026-06-12 03:46:56,023.023 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 03:46:56
[2026-06-12 03:46:56,363.363 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 03:46:56,515.515 INFO    ] Initializing speech engine...
[2026-06-12 03:46:56,519.519 INFO    ] 2026-06-12 03:46:56
[2026-06-12 03:46:56,726.726 INFO    ] 2026-06-12 03:46:56
[2026-06-12 03:46:56,755.755 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 03:46:56,939.939 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 03:46:56,949.949 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 03:46:57,097.097 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 03:46:57,146.146 INFO    ] time= 12/06/2026 03:46:57
[2026-06-12 03:46:57,169.169 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 03:46:57,174.174 INFO    ] Checking for existing commands in stream...
[2026-06-12 03:46:57,241.241 INFO    ] No existing commands found in stream
[2026-06-12 03:47:02,261.261 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 03:47:02,263.263 INFO    ] Waiting 1.06 seconds before fallback handling...
[2026-06-12 03:47:03,701.701 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 03:47:03,702.702 INFO    ] Checking for system updates...
[2026-06-12 03:47:03,723.723 INFO    ] 200
[2026-06-12 03:47:03,725.725 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:47:03,759.759 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 03:47:03,760.760 INFO    ] No update needed
[2026-06-12 03:47:03,762.762 INFO    ] Checking for camera pi updates...
[2026-06-12 03:47:03,782.782 INFO    ] 200
[2026-06-12 03:47:03,784.784 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:47:03,808.808 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 03:47:03,848.848 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 03:47:03,849.849 INFO    ] No camera update needed
[2026-06-12 03:47:03,851.851 INFO    ] Script finished. Safe exiting...
[2026-06-12 03:47:03,852.852 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 03:47:03,855.855 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 03:47:03,858.858 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 03:47:05,898.898 INFO    ] ================================================
[2026-06-12 03:47:05,913.913 INFO    ] Launching Daemon at Fri Jun 12 03:47:05 IST 2026
[2026-06-12 03:47:05,924.924 INFO    ] ================================================
[2026-06-12 03:47:06,285.285 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 03:47:06
[2026-06-12 03:47:06,601.601 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 03:47:06,734.734 INFO    ] Initializing speech engine...
[2026-06-12 03:47:06,739.739 INFO    ] 2026-06-12 03:47:06
[2026-06-12 03:47:06,965.965 INFO    ] 2026-06-12 03:47:06
[2026-06-12 03:47:06,996.996 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 03:47:07,126.126 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 03:47:07,166.166 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 03:47:07,333.333 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 03:47:07,390.390 INFO    ] time= 12/06/2026 03:47:07
[2026-06-12 03:47:07,424.424 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 03:47:07,440.440 INFO    ] Checking for existing commands in stream...
[2026-06-12 03:47:07,537.537 INFO    ] No existing commands found in stream
[2026-06-12 03:47:12,546.546 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 03:47:12,549.549 INFO    ] Waiting 3.95 seconds before fallback handling...
[2026-06-12 03:47:18,015.015 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 03:47:18,017.017 INFO    ] Checking for system updates...
[2026-06-12 03:47:18,055.055 INFO    ] 200
[2026-06-12 03:47:18,057.057 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:47:18,111.111 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 03:47:18,114.114 INFO    ] No update needed
[2026-06-12 03:47:18,116.116 INFO    ] Checking for camera pi updates...
[2026-06-12 03:47:18,151.151 INFO    ] 200
[2026-06-12 03:47:18,153.153 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:47:18,195.195 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 03:47:18,233.233 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 03:47:18,234.234 INFO    ] No camera update needed
[2026-06-12 03:47:18,236.236 INFO    ] Script finished. Safe exiting...
[2026-06-12 03:47:18,237.237 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 03:47:18,240.240 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 03:47:18,243.243 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 03:47:20,282.282 INFO    ] ================================================
[2026-06-12 03:47:20,297.297 INFO    ] Launching Daemon at Fri Jun 12 03:47:20 IST 2026
[2026-06-12 03:47:20,308.308 INFO    ] ================================================
[2026-06-12 03:47:20,649.649 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 03:47:20
[2026-06-12 03:47:20,961.961 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 03:47:21,103.103 INFO    ] Initializing speech engine...
[2026-06-12 03:47:21,108.108 INFO    ] 2026-06-12 03:47:21
[2026-06-12 03:47:21,310.310 INFO    ] 2026-06-12 03:47:21
[2026-06-12 03:47:21,339.339 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 03:47:21,523.523 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 03:47:21,533.533 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 03:47:21,677.677 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 03:47:21,728.728 INFO    ] time= 12/06/2026 03:47:21
[2026-06-12 03:47:21,752.752 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 03:47:21,758.758 INFO    ] Checking for existing commands in stream...
[2026-06-12 03:47:21,824.824 INFO    ] No existing commands found in stream
[2026-06-12 03:47:26,833.833 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 03:47:26,836.836 INFO    ] Waiting 1.27 seconds before fallback handling...
[2026-06-12 03:47:28,525.525 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 03:47:28,527.527 INFO    ] Checking for system updates...
[2026-06-12 03:47:28,547.547 INFO    ] 200
[2026-06-12 03:47:28,549.549 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:47:28,581.581 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 03:47:28,583.583 INFO    ] No update needed
[2026-06-12 03:47:28,584.584 INFO    ] Checking for camera pi updates...
[2026-06-12 03:47:28,603.603 INFO    ] 200
[2026-06-12 03:47:28,605.605 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:47:28,629.629 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 03:47:28,676.676 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 03:47:28,677.677 INFO    ] No camera update needed
[2026-06-12 03:47:28,679.679 INFO    ] Script finished. Safe exiting...
[2026-06-12 03:47:28,680.680 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 03:47:28,683.683 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 03:47:28,686.686 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 03:47:30,726.726 INFO    ] ================================================
[2026-06-12 03:47:30,741.741 INFO    ] Launching Daemon at Fri Jun 12 03:47:30 IST 2026
[2026-06-12 03:47:30,752.752 INFO    ] ================================================
[2026-06-12 03:47:31,070.070 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 03:47:31
[2026-06-12 03:47:31,383.383 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 03:47:31,547.547 INFO    ] Initializing speech engine...
[2026-06-12 03:47:31,557.557 INFO    ] 2026-06-12 03:47:31
[2026-06-12 03:47:31,807.807 INFO    ] 2026-06-12 03:47:31
[2026-06-12 03:47:31,835.835 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 03:47:32,015.015 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 03:47:32,027.027 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 03:47:32,164.164 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 03:47:32,223.223 INFO    ] time= 12/06/2026 03:47:32
[2026-06-12 03:47:32,264.264 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 03:47:32,266.266 INFO    ] Checking for existing commands in stream...
[2026-06-12 03:47:32,333.333 INFO    ] No existing commands found in stream
[2026-06-12 03:47:37,342.342 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 03:47:37,345.345 INFO    ] Waiting 3.30 seconds before fallback handling...
[2026-06-12 03:47:41,053.053 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 03:47:41,054.054 INFO    ] Checking for system updates...
[2026-06-12 03:47:41,075.075 INFO    ] 200
[2026-06-12 03:47:41,076.076 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:47:41,109.109 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 03:47:41,110.110 INFO    ] No update needed
[2026-06-12 03:47:41,111.111 INFO    ] Checking for camera pi updates...
[2026-06-12 03:47:41,134.134 INFO    ] 200
[2026-06-12 03:47:41,135.135 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:47:41,160.160 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 03:47:41,197.197 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 03:47:41,199.199 INFO    ] No camera update needed
[2026-06-12 03:47:41,200.200 INFO    ] Script finished. Safe exiting...
[2026-06-12 03:47:41,201.201 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 03:47:41,204.204 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 03:47:41,207.207 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 03:47:43,246.246 INFO    ] ================================================
[2026-06-12 03:47:43,261.261 INFO    ] Launching Daemon at Fri Jun 12 03:47:43 IST 2026
[2026-06-12 03:47:43,272.272 INFO    ] ================================================
[2026-06-12 03:47:43,637.637 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 03:47:43
[2026-06-12 03:47:43,966.966 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 03:47:44,115.115 INFO    ] Initializing speech engine...
[2026-06-12 03:47:44,119.119 INFO    ] 2026-06-12 03:47:44
[2026-06-12 03:47:44,329.329 INFO    ] 2026-06-12 03:47:44
[2026-06-12 03:47:44,358.358 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 03:47:44,544.544 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 03:47:44,548.548 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 03:47:44,696.696 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 03:47:44,754.754 INFO    ] time= 12/06/2026 03:47:44
[2026-06-12 03:47:44,781.781 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 03:47:44,788.788 INFO    ] Checking for existing commands in stream...
[2026-06-12 03:47:44,855.855 INFO    ] No existing commands found in stream
[2026-06-12 03:47:49,870.870 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 03:47:49,873.873 INFO    ] Waiting 2.36 seconds before fallback handling...
[2026-06-12 03:47:52,640.640 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 03:47:52,642.642 INFO    ] Checking for system updates...
[2026-06-12 03:47:52,663.663 INFO    ] 200
[2026-06-12 03:47:52,664.664 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:47:52,695.695 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 03:47:52,696.696 INFO    ] No update needed
[2026-06-12 03:47:52,698.698 INFO    ] Checking for camera pi updates...
[2026-06-12 03:47:52,722.722 INFO    ] 200
[2026-06-12 03:47:52,723.723 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:47:52,750.750 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 03:47:52,789.789 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 03:47:52,790.790 INFO    ] No camera update needed
[2026-06-12 03:47:52,792.792 INFO    ] Script finished. Safe exiting...
[2026-06-12 03:47:52,793.793 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 03:47:52,796.796 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 03:47:52,799.799 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 03:47:54,837.837 INFO    ] ================================================
[2026-06-12 03:47:54,852.852 INFO    ] Launching Daemon at Fri Jun 12 03:47:54 IST 2026
[2026-06-12 03:47:54,863.863 INFO    ] ================================================
[2026-06-12 03:47:55,204.204 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 03:47:55
[2026-06-12 03:47:55,515.515 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 03:47:55,660.660 INFO    ] Initializing speech engine...
[2026-06-12 03:47:55,665.665 INFO    ] 2026-06-12 03:47:55
[2026-06-12 03:47:55,872.872 INFO    ] 2026-06-12 03:47:55
[2026-06-12 03:47:55,900.900 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 03:47:56,076.076 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 03:47:56,090.090 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 03:47:56,222.222 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 03:47:56,273.273 INFO    ] time= 12/06/2026 03:47:56
[2026-06-12 03:47:56,308.308 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 03:47:56,324.324 INFO    ] Checking for existing commands in stream...
[2026-06-12 03:47:56,394.394 INFO    ] No existing commands found in stream
[2026-06-12 03:48:01,403.403 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 03:48:01,405.405 INFO    ] Waiting 1.65 seconds before fallback handling...
[2026-06-12 03:48:03,401.401 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 03:48:03,402.402 INFO    ] Checking for system updates...
[2026-06-12 03:48:03,423.423 INFO    ] 200
[2026-06-12 03:48:03,424.424 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:48:03,454.454 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 03:48:03,456.456 INFO    ] No update needed
[2026-06-12 03:48:03,457.457 INFO    ] Checking for camera pi updates...
[2026-06-12 03:48:03,478.478 INFO    ] 200
[2026-06-12 03:48:03,479.479 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:48:03,504.504 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 03:48:03,552.552 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 03:48:03,553.553 INFO    ] No camera update needed
[2026-06-12 03:48:03,555.555 INFO    ] Script finished. Safe exiting...
[2026-06-12 03:48:03,556.556 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 03:48:03,559.559 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 03:48:03,562.562 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 03:48:05,601.601 INFO    ] ================================================
[2026-06-12 03:48:05,616.616 INFO    ] Launching Daemon at Fri Jun 12 03:48:05 IST 2026
[2026-06-12 03:48:05,627.627 INFO    ] ================================================
[2026-06-12 03:48:06,007.007 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 03:48:06
[2026-06-12 03:48:06,316.316 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 03:48:06,459.459 INFO    ] Initializing speech engine...
[2026-06-12 03:48:06,465.465 INFO    ] 2026-06-12 03:48:06
[2026-06-12 03:48:06,670.670 INFO    ] 2026-06-12 03:48:06
[2026-06-12 03:48:06,699.699 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 03:48:06,884.884 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 03:48:06,893.893 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 03:48:07,023.023 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 03:48:07,087.087 INFO    ] time= 12/06/2026 03:48:07
[2026-06-12 03:48:07,114.114 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 03:48:07,121.121 INFO    ] Checking for existing commands in stream...
[2026-06-12 03:48:07,188.188 INFO    ] No existing commands found in stream
[2026-06-12 03:48:12,203.203 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 03:48:12,206.206 INFO    ] Waiting 0.02 seconds before fallback handling...
[2026-06-12 03:48:12,539.539 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 03:48:12,541.541 INFO    ] Checking for system updates...
[2026-06-12 03:48:12,563.563 INFO    ] 200
[2026-06-12 03:48:12,564.564 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:48:12,604.604 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 03:48:12,606.606 INFO    ] No update needed
[2026-06-12 03:48:12,607.607 INFO    ] Checking for camera pi updates...
[2026-06-12 03:48:12,631.631 INFO    ] 200
[2026-06-12 03:48:12,632.632 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:48:12,673.673 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 03:48:12,708.708 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 03:48:12,710.710 INFO    ] No camera update needed
[2026-06-12 03:48:12,711.711 INFO    ] Script finished. Safe exiting...
[2026-06-12 03:48:12,713.713 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 03:48:12,715.715 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 03:48:12,718.718 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 03:48:14,757.757 INFO    ] ================================================
[2026-06-12 03:48:14,773.773 INFO    ] Launching Daemon at Fri Jun 12 03:48:14 IST 2026
[2026-06-12 03:48:14,784.784 INFO    ] ================================================
[2026-06-12 03:48:15,140.140 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 03:48:15
[2026-06-12 03:48:15,453.453 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 03:48:15,587.587 INFO    ] Initializing speech engine...
[2026-06-12 03:48:15,591.591 INFO    ] 2026-06-12 03:48:15
[2026-06-12 03:48:15,820.820 INFO    ] 2026-06-12 03:48:15
[2026-06-12 03:48:15,851.851 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 03:48:15,983.983 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 03:48:16,036.036 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 03:48:16,195.195 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 03:48:16,257.257 INFO    ] time= 12/06/2026 03:48:16
[2026-06-12 03:48:16,281.281 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 03:48:16,287.287 INFO    ] Checking for existing commands in stream...
[2026-06-12 03:48:16,354.354 INFO    ] No existing commands found in stream
[2026-06-12 03:48:21,364.364 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 03:48:21,367.367 INFO    ] Waiting 0.34 seconds before fallback handling...
[2026-06-12 03:48:22,118.118 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 03:48:22,119.119 INFO    ] Checking for system updates...
[2026-06-12 03:48:22,141.141 INFO    ] 200
[2026-06-12 03:48:22,142.142 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:48:22,173.173 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 03:48:22,175.175 INFO    ] No update needed
[2026-06-12 03:48:22,176.176 INFO    ] Checking for camera pi updates...
[2026-06-12 03:48:22,196.196 INFO    ] 200
[2026-06-12 03:48:22,197.197 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:48:22,221.221 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 03:48:22,258.258 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 03:48:22,259.259 INFO    ] No camera update needed
[2026-06-12 03:48:22,261.261 INFO    ] Script finished. Safe exiting...
[2026-06-12 03:48:22,262.262 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 03:48:22,265.265 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 03:48:22,268.268 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 03:48:24,311.311 INFO    ] ================================================
[2026-06-12 03:48:24,325.325 INFO    ] Launching Daemon at Fri Jun 12 03:48:24 IST 2026
[2026-06-12 03:48:24,336.336 INFO    ] ================================================
[2026-06-12 03:48:24,694.694 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 03:48:24
[2026-06-12 03:48:25,011.011 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 03:48:25,153.153 INFO    ] Initializing speech engine...
[2026-06-12 03:48:25,158.158 INFO    ] 2026-06-12 03:48:25
[2026-06-12 03:48:25,364.364 INFO    ] 2026-06-12 03:48:25
[2026-06-12 03:48:25,392.392 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 03:48:25,575.575 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 03:48:25,584.584 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 03:48:25,713.713 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 03:48:25,777.777 INFO    ] time= 12/06/2026 03:48:25
[2026-06-12 03:48:25,804.804 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 03:48:25,810.810 INFO    ] Checking for existing commands in stream...
[2026-06-12 03:48:25,876.876 INFO    ] No existing commands found in stream
[2026-06-12 03:48:30,885.885 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 03:48:30,888.888 INFO    ] Waiting 2.61 seconds before fallback handling...
[2026-06-12 03:48:33,888.888 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 03:48:33,890.890 INFO    ] Checking for system updates...
[2026-06-12 03:48:33,910.910 INFO    ] 200
[2026-06-12 03:48:33,912.912 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:48:33,944.944 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 03:48:33,945.945 INFO    ] No update needed
[2026-06-12 03:48:33,947.947 INFO    ] Checking for camera pi updates...
[2026-06-12 03:48:33,967.967 INFO    ] 200
[2026-06-12 03:48:33,968.968 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:48:33,992.992 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 03:48:34,024.024 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 03:48:34,025.025 INFO    ] No camera update needed
[2026-06-12 03:48:34,027.027 INFO    ] Script finished. Safe exiting...
[2026-06-12 03:48:34,028.028 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 03:48:34,031.031 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 03:48:34,034.034 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 03:48:36,068.068 INFO    ] ================================================
[2026-06-12 03:48:36,077.077 INFO    ] Launching Daemon at Fri Jun 12 03:48:36 IST 2026
[2026-06-12 03:48:36,083.083 INFO    ] ================================================
[2026-06-12 03:48:36,386.386 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 03:48:36
[2026-06-12 03:48:36,698.698 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 03:48:36,832.832 INFO    ] Initializing speech engine...
[2026-06-12 03:48:36,836.836 INFO    ] 2026-06-12 03:48:36
[2026-06-12 03:48:37,064.064 INFO    ] 2026-06-12 03:48:37
[2026-06-12 03:48:37,095.095 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 03:48:37,293.293 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 03:48:37,296.296 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 03:48:37,440.440 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 03:48:37,508.508 INFO    ] time= 12/06/2026 03:48:37
[2026-06-12 03:48:37,541.541 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 03:48:37,543.543 INFO    ] Checking for existing commands in stream...
[2026-06-12 03:48:37,618.618 INFO    ] No existing commands found in stream
[2026-06-12 03:48:42,629.629 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 03:48:42,632.632 INFO    ] Waiting 1.09 seconds before fallback handling...
[2026-06-12 03:48:44,099.099 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 03:48:44,101.101 INFO    ] Checking for system updates...
[2026-06-12 03:48:44,122.122 INFO    ] 200
[2026-06-12 03:48:44,123.123 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:48:44,154.154 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 03:48:44,156.156 INFO    ] No update needed
[2026-06-12 03:48:44,157.157 INFO    ] Checking for camera pi updates...
[2026-06-12 03:48:44,177.177 INFO    ] 200
[2026-06-12 03:48:44,178.178 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:48:44,203.203 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 03:48:44,249.249 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 03:48:44,251.251 INFO    ] No camera update needed
[2026-06-12 03:48:44,252.252 INFO    ] Script finished. Safe exiting...
[2026-06-12 03:48:44,253.253 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 03:48:44,257.257 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 03:48:44,260.260 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 03:48:46,299.299 INFO    ] ================================================
[2026-06-12 03:48:46,314.314 INFO    ] Launching Daemon at Fri Jun 12 03:48:46 IST 2026
[2026-06-12 03:48:46,325.325 INFO    ] ================================================
[2026-06-12 03:48:46,675.675 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 03:48:46
[2026-06-12 03:48:47,007.007 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 03:48:47,152.152 INFO    ] Initializing speech engine...
[2026-06-12 03:48:47,157.157 INFO    ] 2026-06-12 03:48:47
[2026-06-12 03:48:47,362.362 INFO    ] 2026-06-12 03:48:47
[2026-06-12 03:48:47,390.390 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 03:48:47,574.574 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 03:48:47,583.583 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 03:48:47,714.714 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 03:48:47,781.781 INFO    ] time= 12/06/2026 03:48:47
[2026-06-12 03:48:47,804.804 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 03:48:47,811.811 INFO    ] Checking for existing commands in stream...
[2026-06-12 03:48:47,877.877 INFO    ] No existing commands found in stream
[2026-06-12 03:48:52,891.891 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 03:48:52,894.894 INFO    ] Waiting 0.01 seconds before fallback handling...
[2026-06-12 03:48:53,267.267 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 03:48:53,269.269 INFO    ] Checking for system updates...
[2026-06-12 03:48:53,290.290 INFO    ] 200
[2026-06-12 03:48:53,291.291 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:48:53,321.321 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 03:48:53,323.323 INFO    ] No update needed
[2026-06-12 03:48:53,324.324 INFO    ] Checking for camera pi updates...
[2026-06-12 03:48:53,345.345 INFO    ] 200
[2026-06-12 03:48:53,346.346 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:48:53,371.371 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 03:48:53,413.413 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 03:48:53,415.415 INFO    ] No camera update needed
[2026-06-12 03:48:53,416.416 INFO    ] Script finished. Safe exiting...
[2026-06-12 03:48:53,417.417 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 03:48:53,420.420 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 03:48:53,423.423 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 03:48:55,461.461 INFO    ] ================================================
[2026-06-12 03:48:55,477.477 INFO    ] Launching Daemon at Fri Jun 12 03:48:55 IST 2026
[2026-06-12 03:48:55,488.488 INFO    ] ================================================
[2026-06-12 03:48:55,846.846 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 03:48:55
[2026-06-12 03:48:56,162.162 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 03:48:56,306.306 INFO    ] Initializing speech engine...
[2026-06-12 03:48:56,311.311 INFO    ] 2026-06-12 03:48:56
[2026-06-12 03:48:56,515.515 INFO    ] 2026-06-12 03:48:56
[2026-06-12 03:48:56,537.537 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 03:48:56,729.729 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 03:48:56,733.733 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 03:48:56,868.868 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 03:48:56,949.949 INFO    ] time= 12/06/2026 03:48:56
[2026-06-12 03:48:56,969.969 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 03:48:56,976.976 INFO    ] Checking for existing commands in stream...
[2026-06-12 03:48:57,045.045 INFO    ] No existing commands found in stream
[2026-06-12 03:49:02,059.059 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 03:49:02,064.064 INFO    ] Waiting 2.64 seconds before fallback handling...
[2026-06-12 03:49:05,067.067 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 03:49:05,069.069 INFO    ] Checking for system updates...
[2026-06-12 03:49:05,091.091 INFO    ] 200
[2026-06-12 03:49:05,093.093 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:49:05,125.125 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 03:49:05,126.126 INFO    ] No update needed
[2026-06-12 03:49:05,128.128 INFO    ] Checking for camera pi updates...
[2026-06-12 03:49:05,147.147 INFO    ] 200
[2026-06-12 03:49:05,148.148 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:49:05,172.172 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 03:49:05,220.220 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 03:49:05,222.222 INFO    ] No camera update needed
[2026-06-12 03:49:05,223.223 INFO    ] Script finished. Safe exiting...
[2026-06-12 03:49:05,224.224 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 03:49:05,227.227 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 03:49:05,230.230 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 03:49:07,271.271 INFO    ] ================================================
[2026-06-12 03:49:07,286.286 INFO    ] Launching Daemon at Fri Jun 12 03:49:07 IST 2026
[2026-06-12 03:49:07,297.297 INFO    ] ================================================
[2026-06-12 03:49:07,638.638 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 03:49:07
[2026-06-12 03:49:07,952.952 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 03:49:08,102.102 INFO    ] Initializing speech engine...
[2026-06-12 03:49:08,107.107 INFO    ] 2026-06-12 03:49:08
[2026-06-12 03:49:08,306.306 INFO    ] 2026-06-12 03:49:08
[2026-06-12 03:49:08,335.335 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 03:49:08,521.521 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 03:49:08,524.524 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 03:49:08,656.656 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 03:49:08,722.722 INFO    ] time= 12/06/2026 03:49:08
[2026-06-12 03:49:08,748.748 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 03:49:08,758.758 INFO    ] Checking for existing commands in stream...
[2026-06-12 03:49:08,831.831 INFO    ] No existing commands found in stream
[2026-06-12 03:49:13,864.864 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 03:49:13,866.866 INFO    ] Waiting 1.40 seconds before fallback handling...
[2026-06-12 03:49:15,625.625 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 03:49:15,626.626 INFO    ] Checking for system updates...
[2026-06-12 03:49:15,647.647 INFO    ] 200
[2026-06-12 03:49:15,648.648 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:49:15,680.680 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 03:49:15,682.682 INFO    ] No update needed
[2026-06-12 03:49:15,683.683 INFO    ] Checking for camera pi updates...
[2026-06-12 03:49:15,704.704 INFO    ] 200
[2026-06-12 03:49:15,705.705 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:49:15,728.728 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 03:49:15,768.768 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 03:49:15,769.769 INFO    ] No camera update needed
[2026-06-12 03:49:15,771.771 INFO    ] Script finished. Safe exiting...
[2026-06-12 03:49:15,772.772 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 03:49:15,775.775 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 03:49:15,778.778 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 03:49:17,818.818 INFO    ] ================================================
[2026-06-12 03:49:17,833.833 INFO    ] Launching Daemon at Fri Jun 12 03:49:17 IST 2026
[2026-06-12 03:49:17,844.844 INFO    ] ================================================
[2026-06-12 03:49:18,181.181 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 03:49:18
[2026-06-12 03:49:18,496.496 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 03:49:18,641.641 INFO    ] Initializing speech engine...
[2026-06-12 03:49:18,646.646 INFO    ] 2026-06-12 03:49:18
[2026-06-12 03:49:18,850.850 INFO    ] 2026-06-12 03:49:18
[2026-06-12 03:49:18,878.878 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 03:49:19,063.063 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 03:49:19,072.072 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 03:49:19,197.197 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 03:49:19,255.255 INFO    ] time= 12/06/2026 03:49:19
[2026-06-12 03:49:19,292.292 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 03:49:19,294.294 INFO    ] Checking for existing commands in stream...
[2026-06-12 03:49:19,388.388 INFO    ] No existing commands found in stream
[2026-06-12 03:49:24,398.398 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 03:49:24,401.401 INFO    ] Waiting 0.95 seconds before fallback handling...
[2026-06-12 03:49:25,777.777 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 03:49:25,778.778 INFO    ] Checking for system updates...
[2026-06-12 03:49:25,800.800 INFO    ] 200
[2026-06-12 03:49:25,802.802 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:49:25,836.836 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 03:49:25,837.837 INFO    ] No update needed
[2026-06-12 03:49:25,839.839 INFO    ] Checking for camera pi updates...
[2026-06-12 03:49:25,860.860 INFO    ] 200
[2026-06-12 03:49:25,861.861 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:49:25,888.888 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 03:49:25,927.927 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 03:49:25,928.928 INFO    ] No camera update needed
[2026-06-12 03:49:25,930.930 INFO    ] Script finished. Safe exiting...
[2026-06-12 03:49:25,931.931 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 03:49:25,935.935 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 03:49:25,938.938 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 03:49:27,977.977 INFO    ] ================================================
[2026-06-12 03:49:27,993.993 INFO    ] Launching Daemon at Fri Jun 12 03:49:27 IST 2026
[2026-06-12 03:49:28,004.004 INFO    ] ================================================
[2026-06-12 03:49:28,331.331 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 03:49:28
[2026-06-12 03:49:28,650.650 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 03:49:28,788.788 INFO    ] Initializing speech engine...
[2026-06-12 03:49:28,796.796 INFO    ] 2026-06-12 03:49:28
[2026-06-12 03:49:29,025.025 INFO    ] 2026-06-12 03:49:28
[2026-06-12 03:49:29,056.056 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 03:49:29,253.253 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 03:49:29,260.260 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 03:49:29,402.402 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 03:49:29,443.443 INFO    ] time= 12/06/2026 03:49:29
[2026-06-12 03:49:29,488.488 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 03:49:29,512.512 INFO    ] Checking for existing commands in stream...
[2026-06-12 03:49:29,589.589 INFO    ] No existing commands found in stream
[2026-06-12 03:49:34,600.600 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 03:49:34,603.603 INFO    ] Waiting 0.71 seconds before fallback handling...
[2026-06-12 03:49:35,698.698 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 03:49:35,699.699 INFO    ] Checking for system updates...
[2026-06-12 03:49:35,722.722 INFO    ] 200
[2026-06-12 03:49:35,723.723 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:49:35,755.755 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 03:49:35,757.757 INFO    ] No update needed
[2026-06-12 03:49:35,758.758 INFO    ] Checking for camera pi updates...
[2026-06-12 03:49:35,779.779 INFO    ] 200
[2026-06-12 03:49:35,780.780 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:49:35,803.803 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 03:49:35,951.951 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 03:49:35,952.952 INFO    ] No camera update needed
[2026-06-12 03:49:35,953.953 INFO    ] Script finished. Safe exiting...
[2026-06-12 03:49:35,954.954 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 03:49:35,957.957 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 03:49:35,960.960 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 03:49:38,002.002 INFO    ] ================================================
[2026-06-12 03:49:38,017.017 INFO    ] Launching Daemon at Fri Jun 12 03:49:38 IST 2026
[2026-06-12 03:49:38,028.028 INFO    ] ================================================
[2026-06-12 03:49:38,368.368 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 03:49:38
[2026-06-12 03:49:38,680.680 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 03:49:38,809.809 INFO    ] Initializing speech engine...
[2026-06-12 03:49:38,814.814 INFO    ] 2026-06-12 03:49:38
[2026-06-12 03:49:39,032.032 INFO    ] 2026-06-12 03:49:39
[2026-06-12 03:49:39,062.062 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 03:49:39,249.249 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 03:49:39,252.252 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 03:49:39,392.392 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 03:49:39,451.451 INFO    ] time= 12/06/2026 03:49:39
[2026-06-12 03:49:39,484.484 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 03:49:39,486.486 INFO    ] Checking for existing commands in stream...
[2026-06-12 03:49:39,557.557 INFO    ] No existing commands found in stream
[2026-06-12 03:49:44,566.566 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 03:49:44,568.568 INFO    ] Waiting 0.27 seconds before fallback handling...
[2026-06-12 03:49:45,166.166 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 03:49:45,168.168 INFO    ] Checking for system updates...
[2026-06-12 03:49:45,190.190 INFO    ] 200
[2026-06-12 03:49:45,191.191 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:49:45,224.224 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 03:49:45,225.225 INFO    ] No update needed
[2026-06-12 03:49:45,226.226 INFO    ] Checking for camera pi updates...
[2026-06-12 03:49:45,245.245 INFO    ] 200
[2026-06-12 03:49:45,247.247 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:49:45,273.273 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 03:49:45,318.318 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 03:49:45,320.320 INFO    ] No camera update needed
[2026-06-12 03:49:45,321.321 INFO    ] Script finished. Safe exiting...
[2026-06-12 03:49:45,323.323 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 03:49:45,325.325 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 03:49:45,328.328 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 03:49:47,366.366 INFO    ] ================================================
[2026-06-12 03:49:47,381.381 INFO    ] Launching Daemon at Fri Jun 12 03:49:47 IST 2026
[2026-06-12 03:49:47,393.393 INFO    ] ================================================
[2026-06-12 03:49:47,720.720 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 03:49:47
[2026-06-12 03:49:48,031.031 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 03:49:48,163.163 INFO    ] Initializing speech engine...
[2026-06-12 03:49:48,166.166 INFO    ] 2026-06-12 03:49:48
[2026-06-12 03:49:48,383.383 INFO    ] 2026-06-12 03:49:48
[2026-06-12 03:49:48,411.411 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 03:49:48,596.596 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 03:49:48,605.605 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 03:49:48,760.760 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 03:49:48,803.803 INFO    ] time= 12/06/2026 03:49:48
[2026-06-12 03:49:48,825.825 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 03:49:48,831.831 INFO    ] Checking for existing commands in stream...
[2026-06-12 03:49:48,896.896 INFO    ] No existing commands found in stream
[2026-06-12 03:49:53,907.907 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 03:49:53,909.909 INFO    ] Waiting 0.25 seconds before fallback handling...
[2026-06-12 03:49:54,536.536 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 03:49:54,537.537 INFO    ] Checking for system updates...
[2026-06-12 03:49:54,558.558 INFO    ] 200
[2026-06-12 03:49:54,559.559 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:49:54,594.594 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 03:49:54,595.595 INFO    ] No update needed
[2026-06-12 03:49:54,596.596 INFO    ] Checking for camera pi updates...
[2026-06-12 03:49:54,616.616 INFO    ] 200
[2026-06-12 03:49:54,617.617 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:49:54,641.641 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 03:49:54,681.681 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 03:49:54,682.682 INFO    ] No camera update needed
[2026-06-12 03:49:54,683.683 INFO    ] Script finished. Safe exiting...
[2026-06-12 03:49:54,685.685 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 03:49:54,688.688 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 03:49:54,690.690 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 03:49:56,729.729 INFO    ] ================================================
[2026-06-12 03:49:56,745.745 INFO    ] Launching Daemon at Fri Jun 12 03:49:56 IST 2026
[2026-06-12 03:49:56,756.756 INFO    ] ================================================
[2026-06-12 03:49:57,092.092 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 03:49:57
[2026-06-12 03:49:57,407.407 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 03:49:57,550.550 INFO    ] Initializing speech engine...
[2026-06-12 03:49:57,556.556 INFO    ] 2026-06-12 03:49:57
[2026-06-12 03:49:57,760.760 INFO    ] 2026-06-12 03:49:57
[2026-06-12 03:49:57,788.788 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 03:49:57,970.970 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 03:49:57,974.974 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 03:49:58,102.102 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 03:49:58,158.158 INFO    ] time= 12/06/2026 03:49:58
[2026-06-12 03:49:58,201.201 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 03:49:58,207.207 INFO    ] Checking for existing commands in stream...
[2026-06-12 03:49:58,274.274 INFO    ] No existing commands found in stream
[2026-06-12 03:50:03,288.288 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 03:50:03,291.291 INFO    ] Waiting 1.92 seconds before fallback handling...
[2026-06-12 03:50:07,913.913 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 03:50:07,916.916 INFO    ] Checking for system updates...
[2026-06-12 03:50:07,953.953 INFO    ] 200
[2026-06-12 03:50:07,955.955 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:50:08,010.010 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 03:50:08,012.012 INFO    ] No update needed
[2026-06-12 03:50:08,013.013 INFO    ] Checking for camera pi updates...
[2026-06-12 03:50:08,034.034 INFO    ] 200
[2026-06-12 03:50:08,035.035 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:50:08,062.062 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 03:50:08,100.100 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 03:50:08,101.101 INFO    ] No camera update needed
[2026-06-12 03:50:08,103.103 INFO    ] Script finished. Safe exiting...
[2026-06-12 03:50:08,104.104 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 03:50:08,107.107 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 03:50:08,110.110 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 03:50:10,149.149 INFO    ] ================================================
[2026-06-12 03:50:10,165.165 INFO    ] Launching Daemon at Fri Jun 12 03:50:10 IST 2026
[2026-06-12 03:50:10,176.176 INFO    ] ================================================
[2026-06-12 03:50:10,545.545 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 03:50:10
[2026-06-12 03:50:10,861.861 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 03:50:11,006.006 INFO    ] Initializing speech engine...
[2026-06-12 03:50:11,011.011 INFO    ] 2026-06-12 03:50:11
[2026-06-12 03:50:11,216.216 INFO    ] 2026-06-12 03:50:11
[2026-06-12 03:50:11,245.245 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 03:50:11,372.372 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 03:50:11,429.429 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 03:50:11,546.546 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 03:50:11,547.547 INFO    ] time= 12/06/2026 03:50:11
[2026-06-12 03:50:11,549.549 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 03:50:11,566.566 INFO    ] Checking for existing commands in stream...
[2026-06-12 03:50:11,661.661 INFO    ] No existing commands found in stream
[2026-06-12 03:50:16,671.671 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 03:50:16,673.673 INFO    ] Waiting 1.47 seconds before fallback handling...
[2026-06-12 03:50:18,532.532 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 03:50:18,533.533 INFO    ] Checking for system updates...
[2026-06-12 03:50:18,555.555 INFO    ] 200
[2026-06-12 03:50:18,556.556 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:50:18,588.588 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 03:50:18,589.589 INFO    ] No update needed
[2026-06-12 03:50:18,590.590 INFO    ] Checking for camera pi updates...
[2026-06-12 03:50:18,610.610 INFO    ] 200
[2026-06-12 03:50:18,611.611 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:50:18,635.635 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 03:50:18,680.680 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 03:50:18,681.681 INFO    ] No camera update needed
[2026-06-12 03:50:18,683.683 INFO    ] Script finished. Safe exiting...
[2026-06-12 03:50:18,684.684 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 03:50:18,687.687 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 03:50:18,689.689 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 03:50:20,727.727 INFO    ] ================================================
[2026-06-12 03:50:20,743.743 INFO    ] Launching Daemon at Fri Jun 12 03:50:20 IST 2026
[2026-06-12 03:50:20,755.755 INFO    ] ================================================
[2026-06-12 03:50:21,108.108 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 03:50:21
[2026-06-12 03:50:21,420.420 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 03:50:21,550.550 INFO    ] Initializing speech engine...
[2026-06-12 03:50:21,555.555 INFO    ] 2026-06-12 03:50:21
[2026-06-12 03:50:21,779.779 INFO    ] 2026-06-12 03:50:21
[2026-06-12 03:50:21,811.811 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 03:50:22,004.004 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 03:50:22,007.007 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 03:50:22,143.143 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 03:50:22,199.199 INFO    ] time= 12/06/2026 03:50:22
[2026-06-12 03:50:22,236.236 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 03:50:22,247.247 INFO    ] Checking for existing commands in stream...
[2026-06-12 03:50:22,322.322 INFO    ] No existing commands found in stream
[2026-06-12 03:50:27,331.331 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 03:50:27,341.341 INFO    ] Waiting 3.00 seconds before fallback handling...
[2026-06-12 03:50:30,660.660 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 03:50:30,662.662 INFO    ] Checking for system updates...
[2026-06-12 03:50:30,690.690 INFO    ] 200
[2026-06-12 03:50:30,692.692 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:50:30,750.750 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 03:50:30,752.752 INFO    ] No update needed
[2026-06-12 03:50:30,754.754 INFO    ] Checking for camera pi updates...
[2026-06-12 03:50:30,785.785 INFO    ] 200
[2026-06-12 03:50:30,787.787 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:50:30,812.812 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 03:50:30,849.849 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 03:50:30,851.851 INFO    ] No camera update needed
[2026-06-12 03:50:30,852.852 INFO    ] Script finished. Safe exiting...
[2026-06-12 03:50:30,853.853 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 03:50:30,856.856 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 03:50:30,859.859 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 03:50:32,892.892 INFO    ] ================================================
[2026-06-12 03:50:32,907.907 INFO    ] Launching Daemon at Fri Jun 12 03:50:32 IST 2026
[2026-06-12 03:50:32,918.918 INFO    ] ================================================
[2026-06-12 03:50:33,276.276 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 03:50:33
[2026-06-12 03:50:33,605.605 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 03:50:33,754.754 INFO    ] Initializing speech engine...
[2026-06-12 03:50:33,760.760 INFO    ] 2026-06-12 03:50:33
[2026-06-12 03:50:33,969.969 INFO    ] 2026-06-12 03:50:33
[2026-06-12 03:50:33,998.998 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 03:50:34,186.186 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 03:50:34,195.195 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 03:50:34,323.323 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 03:50:34,386.386 INFO    ] time= 12/06/2026 03:50:34
[2026-06-12 03:50:34,420.420 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 03:50:34,427.427 INFO    ] Checking for existing commands in stream...
[2026-06-12 03:50:34,495.495 INFO    ] No existing commands found in stream
[2026-06-12 03:50:39,509.509 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 03:50:39,512.512 INFO    ] Waiting 0.29 seconds before fallback handling...
[2026-06-12 03:50:40,177.177 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 03:50:40,179.179 INFO    ] Checking for system updates...
[2026-06-12 03:50:40,199.199 INFO    ] 200
[2026-06-12 03:50:40,201.201 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:50:40,232.232 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 03:50:40,233.233 INFO    ] No update needed
[2026-06-12 03:50:40,235.235 INFO    ] Checking for camera pi updates...
[2026-06-12 03:50:40,254.254 INFO    ] 200
[2026-06-12 03:50:40,255.255 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:50:40,279.279 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 03:50:40,313.313 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 03:50:40,315.315 INFO    ] No camera update needed
[2026-06-12 03:50:40,316.316 INFO    ] Script finished. Safe exiting...
[2026-06-12 03:50:40,317.317 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 03:50:40,320.320 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 03:50:40,323.323 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 03:50:42,362.362 INFO    ] ================================================
[2026-06-12 03:50:42,377.377 INFO    ] Launching Daemon at Fri Jun 12 03:50:42 IST 2026
[2026-06-12 03:50:42,387.387 INFO    ] ================================================
[2026-06-12 03:50:42,745.745 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 03:50:42
[2026-06-12 03:50:43,074.074 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 03:50:43,223.223 INFO    ] Initializing speech engine...
[2026-06-12 03:50:43,227.227 INFO    ] 2026-06-12 03:50:43
[2026-06-12 03:50:43,438.438 INFO    ] 2026-06-12 03:50:43
[2026-06-12 03:50:43,467.467 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 03:50:43,652.652 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 03:50:43,662.662 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 03:50:43,803.803 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 03:50:43,862.862 INFO    ] time= 12/06/2026 03:50:43
[2026-06-12 03:50:43,885.885 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 03:50:43,891.891 INFO    ] Checking for existing commands in stream...
[2026-06-12 03:50:43,958.958 INFO    ] No existing commands found in stream
[2026-06-12 03:50:48,973.973 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 03:50:48,976.976 INFO    ] Waiting 0.32 seconds before fallback handling...
[2026-06-12 03:50:49,682.682 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 03:50:49,684.684 INFO    ] Checking for system updates...
[2026-06-12 03:50:49,705.705 INFO    ] 200
[2026-06-12 03:50:49,707.707 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:50:49,739.739 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 03:50:49,741.741 INFO    ] No update needed
[2026-06-12 03:50:49,742.742 INFO    ] Checking for camera pi updates...
[2026-06-12 03:50:49,763.763 INFO    ] 200
[2026-06-12 03:50:49,764.764 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:50:49,790.790 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 03:50:49,826.826 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 03:50:49,828.828 INFO    ] No camera update needed
[2026-06-12 03:50:49,829.829 INFO    ] Script finished. Safe exiting...
[2026-06-12 03:50:49,830.830 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 03:50:49,834.834 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 03:50:49,836.836 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 03:50:51,874.874 INFO    ] ================================================
[2026-06-12 03:50:51,890.890 INFO    ] Launching Daemon at Fri Jun 12 03:50:51 IST 2026
[2026-06-12 03:50:51,900.900 INFO    ] ================================================
[2026-06-12 03:50:52,262.262 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 03:50:52
[2026-06-12 03:50:52,590.590 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 03:50:52,739.739 INFO    ] Initializing speech engine...
[2026-06-12 03:50:52,744.744 INFO    ] 2026-06-12 03:50:52
[2026-06-12 03:50:52,951.951 INFO    ] 2026-06-12 03:50:52
[2026-06-12 03:50:52,979.979 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 03:50:53,164.164 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 03:50:53,174.174 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 03:50:53,328.328 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 03:50:53,372.372 INFO    ] time= 12/06/2026 03:50:53
[2026-06-12 03:50:53,393.393 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 03:50:53,400.400 INFO    ] Checking for existing commands in stream...
[2026-06-12 03:50:53,467.467 INFO    ] No existing commands found in stream
[2026-06-12 03:50:58,481.481 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 03:50:58,484.484 INFO    ] Waiting 0.65 seconds before fallback handling...
[2026-06-12 03:50:59,495.495 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 03:50:59,497.497 INFO    ] Checking for system updates...
[2026-06-12 03:50:59,517.517 INFO    ] 200
[2026-06-12 03:50:59,519.519 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:50:59,551.551 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 03:50:59,553.553 INFO    ] No update needed
[2026-06-12 03:50:59,554.554 INFO    ] Checking for camera pi updates...
[2026-06-12 03:50:59,573.573 INFO    ] 200
[2026-06-12 03:50:59,574.574 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:50:59,600.600 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 03:50:59,648.648 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 03:50:59,650.650 INFO    ] No camera update needed
[2026-06-12 03:50:59,652.652 INFO    ] Script finished. Safe exiting...
[2026-06-12 03:50:59,654.654 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 03:50:59,657.657 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 03:50:59,660.660 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 03:51:01,703.703 INFO    ] ================================================
[2026-06-12 03:51:01,723.723 INFO    ] Launching Daemon at Fri Jun 12 03:51:01 IST 2026
[2026-06-12 03:51:01,734.734 INFO    ] ================================================
[2026-06-12 03:51:02,131.131 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 03:51:02
[2026-06-12 03:51:02,528.528 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 03:51:02,688.688 INFO    ] Initializing speech engine...
[2026-06-12 03:51:02,694.694 INFO    ] 2026-06-12 03:51:02
[2026-06-12 03:51:02,899.899 INFO    ] 2026-06-12 03:51:02
[2026-06-12 03:51:02,927.927 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 03:51:03,095.095 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 03:51:03,145.145 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 03:51:03,298.298 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 03:51:03,367.367 INFO    ] time= 12/06/2026 03:51:03
[2026-06-12 03:51:03,391.391 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 03:51:03,397.397 INFO    ] Checking for existing commands in stream...
[2026-06-12 03:51:03,464.464 INFO    ] No existing commands found in stream
[2026-06-12 03:51:08,478.478 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 03:51:08,480.480 INFO    ] Waiting 3.38 seconds before fallback handling...
[2026-06-12 03:51:12,227.227 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 03:51:12,228.228 INFO    ] Checking for system updates...
[2026-06-12 03:51:12,251.251 INFO    ] 200
[2026-06-12 03:51:12,252.252 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:51:12,285.285 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 03:51:12,287.287 INFO    ] No update needed
[2026-06-12 03:51:12,288.288 INFO    ] Checking for camera pi updates...
[2026-06-12 03:51:12,310.310 INFO    ] 200
[2026-06-12 03:51:12,311.311 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:51:12,337.337 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 03:51:12,378.378 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 03:51:12,379.379 INFO    ] No camera update needed
[2026-06-12 03:51:12,381.381 INFO    ] Script finished. Safe exiting...
[2026-06-12 03:51:12,382.382 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 03:51:12,385.385 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 03:51:12,388.388 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 03:51:14,428.428 INFO    ] ================================================
[2026-06-12 03:51:14,443.443 INFO    ] Launching Daemon at Fri Jun 12 03:51:14 IST 2026
[2026-06-12 03:51:14,454.454 INFO    ] ================================================
[2026-06-12 03:51:14,785.785 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 03:51:14
[2026-06-12 03:51:15,103.103 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 03:51:15,246.246 INFO    ] Initializing speech engine...
[2026-06-12 03:51:15,252.252 INFO    ] 2026-06-12 03:51:15
[2026-06-12 03:51:15,457.457 INFO    ] 2026-06-12 03:51:15
[2026-06-12 03:51:15,487.487 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 03:51:15,671.671 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 03:51:15,679.679 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 03:51:15,808.808 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 03:51:15,874.874 INFO    ] time= 12/06/2026 03:51:15
[2026-06-12 03:51:15,898.898 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 03:51:15,905.905 INFO    ] Checking for existing commands in stream...
[2026-06-12 03:51:15,995.995 INFO    ] No existing commands found in stream
[2026-06-12 03:51:21,004.004 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 03:51:21,007.007 INFO    ] Waiting 0.22 seconds before fallback handling...
[2026-06-12 03:51:21,605.605 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 03:51:21,607.607 INFO    ] Checking for system updates...
[2026-06-12 03:51:21,628.628 INFO    ] 200
[2026-06-12 03:51:21,629.629 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:51:21,662.662 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 03:51:21,663.663 INFO    ] No update needed
[2026-06-12 03:51:21,665.665 INFO    ] Checking for camera pi updates...
[2026-06-12 03:51:21,688.688 INFO    ] 200
[2026-06-12 03:51:21,689.689 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:51:21,715.715 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 03:51:21,755.755 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 03:51:21,757.757 INFO    ] No camera update needed
[2026-06-12 03:51:21,758.758 INFO    ] Script finished. Safe exiting...
[2026-06-12 03:51:21,760.760 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 03:51:21,763.763 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 03:51:21,766.766 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 03:51:23,805.805 INFO    ] ================================================
[2026-06-12 03:51:23,821.821 INFO    ] Launching Daemon at Fri Jun 12 03:51:23 IST 2026
[2026-06-12 03:51:23,832.832 INFO    ] ================================================
[2026-06-12 03:51:24,207.207 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 03:51:24
[2026-06-12 03:51:24,541.541 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 03:51:24,691.691 INFO    ] Initializing speech engine...
[2026-06-12 03:51:24,697.697 INFO    ] 2026-06-12 03:51:24
[2026-06-12 03:51:24,905.905 INFO    ] 2026-06-12 03:51:24
[2026-06-12 03:51:24,935.935 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 03:51:25,121.121 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 03:51:25,131.131 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 03:51:25,278.278 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 03:51:25,333.333 INFO    ] time= 12/06/2026 03:51:25
[2026-06-12 03:51:25,359.359 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 03:51:25,361.361 INFO    ] Checking for existing commands in stream...
[2026-06-12 03:51:25,429.429 INFO    ] No existing commands found in stream
[2026-06-12 03:51:30,459.459 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 03:51:30,462.462 INFO    ] Waiting 0.97 seconds before fallback handling...
[2026-06-12 03:51:31,835.835 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 03:51:31,837.837 INFO    ] Checking for system updates...
[2026-06-12 03:51:31,860.860 INFO    ] 200
[2026-06-12 03:51:31,861.861 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:51:31,898.898 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 03:51:31,899.899 INFO    ] No update needed
[2026-06-12 03:51:31,902.902 INFO    ] Checking for camera pi updates...
[2026-06-12 03:51:31,927.927 INFO    ] 200
[2026-06-12 03:51:31,930.930 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:51:31,959.959 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 03:51:31,992.992 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 03:51:31,994.994 INFO    ] No camera update needed
[2026-06-12 03:51:31,995.995 INFO    ] Script finished. Safe exiting...
[2026-06-12 03:51:31,997.997 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 03:51:32,001.001 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 03:51:32,005.005 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 03:51:34,046.046 INFO    ] ================================================
[2026-06-12 03:51:34,061.061 INFO    ] Launching Daemon at Fri Jun 12 03:51:34 IST 2026
[2026-06-12 03:51:34,072.072 INFO    ] ================================================
[2026-06-12 03:51:34,453.453 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 03:51:34
[2026-06-12 03:51:34,766.766 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 03:51:34,902.902 INFO    ] Initializing speech engine...
[2026-06-12 03:51:34,913.913 INFO    ] 2026-06-12 03:51:34
[2026-06-12 03:51:35,115.115 INFO    ] 2026-06-12 03:51:35
[2026-06-12 03:51:35,144.144 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 03:51:35,265.265 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 03:51:35,311.311 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 03:51:35,474.474 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 03:51:35,535.535 INFO    ] time= 12/06/2026 03:51:35
[2026-06-12 03:51:35,559.559 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 03:51:35,565.565 INFO    ] Checking for existing commands in stream...
[2026-06-12 03:51:35,632.632 INFO    ] No existing commands found in stream
[2026-06-12 03:51:40,641.641 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 03:51:40,644.644 INFO    ] Waiting 1.10 seconds before fallback handling...
[2026-06-12 03:51:42,125.125 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 03:51:42,127.127 INFO    ] Checking for system updates...
[2026-06-12 03:51:42,148.148 INFO    ] 200
[2026-06-12 03:51:42,149.149 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:51:42,182.182 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 03:51:42,183.183 INFO    ] No update needed
[2026-06-12 03:51:42,185.185 INFO    ] Checking for camera pi updates...
[2026-06-12 03:51:42,204.204 INFO    ] 200
[2026-06-12 03:51:42,205.205 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:51:42,231.231 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 03:51:42,356.356 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 03:51:42,358.358 INFO    ] No camera update needed
[2026-06-12 03:51:42,359.359 INFO    ] Script finished. Safe exiting...
[2026-06-12 03:51:42,360.360 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 03:51:42,363.363 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 03:51:42,366.366 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 03:51:44,405.405 INFO    ] ================================================
[2026-06-12 03:51:44,421.421 INFO    ] Launching Daemon at Fri Jun 12 03:51:44 IST 2026
[2026-06-12 03:51:44,431.431 INFO    ] ================================================
[2026-06-12 03:51:44,777.777 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 03:51:44
[2026-06-12 03:51:45,112.112 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 03:51:45,262.262 INFO    ] Initializing speech engine...
[2026-06-12 03:51:45,267.267 INFO    ] 2026-06-12 03:51:45
[2026-06-12 03:51:45,476.476 INFO    ] 2026-06-12 03:51:45
[2026-06-12 03:51:45,505.505 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 03:51:45,690.690 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 03:51:45,694.694 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 03:51:45,831.831 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 03:51:45,895.895 INFO    ] time= 12/06/2026 03:51:45
[2026-06-12 03:51:45,924.924 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 03:51:45,930.930 INFO    ] Checking for existing commands in stream...
[2026-06-12 03:51:45,997.997 INFO    ] No existing commands found in stream
[2026-06-12 03:51:51,007.007 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 03:51:51,010.010 INFO    ] Waiting 2.25 seconds before fallback handling...
[2026-06-12 03:51:53,636.636 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 03:51:53,637.637 INFO    ] Checking for system updates...
[2026-06-12 03:51:53,661.661 INFO    ] 200
[2026-06-12 03:51:53,662.662 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:51:53,695.695 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 03:51:53,696.696 INFO    ] No update needed
[2026-06-12 03:51:53,698.698 INFO    ] Checking for camera pi updates...
[2026-06-12 03:51:53,717.717 INFO    ] 200
[2026-06-12 03:51:53,718.718 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:51:53,743.743 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 03:51:53,779.779 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 03:51:53,780.780 INFO    ] No camera update needed
[2026-06-12 03:51:53,782.782 INFO    ] Script finished. Safe exiting...
[2026-06-12 03:51:53,783.783 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 03:51:53,786.786 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 03:51:53,788.788 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 03:51:55,828.828 INFO    ] ================================================
[2026-06-12 03:51:55,845.845 INFO    ] Launching Daemon at Fri Jun 12 03:51:55 IST 2026
[2026-06-12 03:51:55,856.856 INFO    ] ================================================
[2026-06-12 03:51:56,193.193 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 03:51:56
[2026-06-12 03:51:56,505.505 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 03:51:56,646.646 INFO    ] Initializing speech engine...
[2026-06-12 03:51:56,651.651 INFO    ] 2026-06-12 03:51:56
[2026-06-12 03:51:56,855.855 INFO    ] 2026-06-12 03:51:56
[2026-06-12 03:51:56,882.882 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 03:51:57,069.069 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 03:51:57,078.078 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 03:51:57,208.208 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 03:51:57,275.275 INFO    ] time= 12/06/2026 03:51:57
[2026-06-12 03:51:57,299.299 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 03:51:57,305.305 INFO    ] Checking for existing commands in stream...
[2026-06-12 03:51:57,376.376 INFO    ] No existing commands found in stream
[2026-06-12 03:52:02,381.381 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 03:52:02,383.383 INFO    ] Waiting 3.00 seconds before fallback handling...
[2026-06-12 03:52:05,753.753 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 03:52:05,754.754 INFO    ] Checking for system updates...
[2026-06-12 03:52:05,777.777 INFO    ] 200
[2026-06-12 03:52:05,778.778 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:52:05,811.811 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 03:52:05,812.812 INFO    ] No update needed
[2026-06-12 03:52:05,814.814 INFO    ] Checking for camera pi updates...
[2026-06-12 03:52:05,833.833 INFO    ] 200
[2026-06-12 03:52:05,834.834 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:52:05,859.859 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 03:52:05,900.900 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 03:52:05,901.901 INFO    ] No camera update needed
[2026-06-12 03:52:05,903.903 INFO    ] Script finished. Safe exiting...
[2026-06-12 03:52:05,904.904 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 03:52:05,907.907 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 03:52:05,910.910 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 03:52:07,948.948 INFO    ] ================================================
[2026-06-12 03:52:07,963.963 INFO    ] Launching Daemon at Fri Jun 12 03:52:07 IST 2026
[2026-06-12 03:52:07,974.974 INFO    ] ================================================
[2026-06-12 03:52:08,325.325 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 03:52:08
[2026-06-12 03:52:08,666.666 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 03:52:08,809.809 INFO    ] Initializing speech engine...
[2026-06-12 03:52:08,814.814 INFO    ] 2026-06-12 03:52:08
[2026-06-12 03:52:09,016.016 INFO    ] 2026-06-12 03:52:08
[2026-06-12 03:52:09,044.044 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 03:52:09,228.228 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 03:52:09,237.237 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 03:52:09,387.387 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 03:52:09,436.436 INFO    ] time= 12/06/2026 03:52:09
[2026-06-12 03:52:09,456.456 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 03:52:09,463.463 INFO    ] Checking for existing commands in stream...
[2026-06-12 03:52:09,529.529 INFO    ] No existing commands found in stream
[2026-06-12 03:52:14,538.538 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 03:52:14,541.541 INFO    ] Waiting 1.17 seconds before fallback handling...
[2026-06-12 03:52:16,072.072 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 03:52:16,074.074 INFO    ] Checking for system updates...
[2026-06-12 03:52:16,095.095 INFO    ] 200
[2026-06-12 03:52:16,096.096 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:52:16,127.127 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 03:52:16,128.128 INFO    ] No update needed
[2026-06-12 03:52:16,129.129 INFO    ] Checking for camera pi updates...
[2026-06-12 03:52:16,149.149 INFO    ] 200
[2026-06-12 03:52:16,150.150 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:52:16,175.175 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 03:52:16,210.210 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 03:52:16,211.211 INFO    ] No camera update needed
[2026-06-12 03:52:16,213.213 INFO    ] Script finished. Safe exiting...
[2026-06-12 03:52:16,214.214 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 03:52:16,217.217 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 03:52:16,219.219 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 03:52:18,251.251 INFO    ] ================================================
[2026-06-12 03:52:18,266.266 INFO    ] Launching Daemon at Fri Jun 12 03:52:18 IST 2026
[2026-06-12 03:52:18,277.277 INFO    ] ================================================
[2026-06-12 03:52:18,632.632 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 03:52:18
[2026-06-12 03:52:18,947.947 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 03:52:19,082.082 INFO    ] Initializing speech engine...
[2026-06-12 03:52:19,094.094 INFO    ] 2026-06-12 03:52:19
[2026-06-12 03:52:19,306.306 INFO    ] 2026-06-12 03:52:19
[2026-06-12 03:52:19,340.340 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 03:52:19,532.532 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 03:52:19,535.535 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 03:52:19,668.668 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 03:52:19,735.735 INFO    ] time= 12/06/2026 03:52:19
[2026-06-12 03:52:19,762.762 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 03:52:19,769.769 INFO    ] Checking for existing commands in stream...
[2026-06-12 03:52:19,839.839 INFO    ] No existing commands found in stream
[2026-06-12 03:52:24,848.848 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 03:52:24,851.851 INFO    ] Waiting 0.47 seconds before fallback handling...
[2026-06-12 03:52:25,664.664 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 03:52:25,665.665 INFO    ] Checking for system updates...
[2026-06-12 03:52:25,687.687 INFO    ] 200
[2026-06-12 03:52:25,688.688 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:52:25,721.721 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 03:52:25,722.722 INFO    ] No update needed
[2026-06-12 03:52:25,723.723 INFO    ] Checking for camera pi updates...
[2026-06-12 03:52:25,743.743 INFO    ] 200
[2026-06-12 03:52:25,744.744 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:52:25,767.767 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 03:52:25,808.808 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 03:52:25,809.809 INFO    ] No camera update needed
[2026-06-12 03:52:25,810.810 INFO    ] Script finished. Safe exiting...
[2026-06-12 03:52:25,812.812 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 03:52:25,815.815 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 03:52:25,817.817 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 03:52:27,856.856 INFO    ] ================================================
[2026-06-12 03:52:27,871.871 INFO    ] Launching Daemon at Fri Jun 12 03:52:27 IST 2026
[2026-06-12 03:52:27,882.882 INFO    ] ================================================
[2026-06-12 03:52:28,274.274 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 03:52:28
[2026-06-12 03:52:28,608.608 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 03:52:28,760.760 INFO    ] Initializing speech engine...
[2026-06-12 03:52:28,765.765 INFO    ] 2026-06-12 03:52:28
[2026-06-12 03:52:28,970.970 INFO    ] 2026-06-12 03:52:28
[2026-06-12 03:52:28,998.998 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 03:52:29,184.184 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 03:52:29,193.193 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 03:52:29,338.338 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 03:52:29,393.393 INFO    ] time= 12/06/2026 03:52:29
[2026-06-12 03:52:29,414.414 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 03:52:29,421.421 INFO    ] Checking for existing commands in stream...
[2026-06-12 03:52:29,488.488 INFO    ] No existing commands found in stream
[2026-06-12 03:52:34,497.497 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 03:52:34,501.501 INFO    ] Waiting 0.24 seconds before fallback handling...
[2026-06-12 03:52:35,090.090 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 03:52:35,091.091 INFO    ] Checking for system updates...
[2026-06-12 03:52:35,113.113 INFO    ] 200
[2026-06-12 03:52:35,114.114 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:52:35,146.146 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 03:52:35,147.147 INFO    ] No update needed
[2026-06-12 03:52:35,149.149 INFO    ] Checking for camera pi updates...
[2026-06-12 03:52:35,169.169 INFO    ] 200
[2026-06-12 03:52:35,170.170 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:52:35,194.194 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 03:52:35,231.231 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 03:52:35,233.233 INFO    ] No camera update needed
[2026-06-12 03:52:35,234.234 INFO    ] Script finished. Safe exiting...
[2026-06-12 03:52:35,235.235 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 03:52:35,238.238 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 03:52:35,241.241 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 03:52:37,279.279 INFO    ] ================================================
[2026-06-12 03:52:37,294.294 INFO    ] Launching Daemon at Fri Jun 12 03:52:37 IST 2026
[2026-06-12 03:52:37,305.305 INFO    ] ================================================
[2026-06-12 03:52:37,655.655 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 03:52:37
[2026-06-12 03:52:37,969.969 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 03:52:38,111.111 INFO    ] Initializing speech engine...
[2026-06-12 03:52:38,116.116 INFO    ] 2026-06-12 03:52:38
[2026-06-12 03:52:38,322.322 INFO    ] 2026-06-12 03:52:38
[2026-06-12 03:52:38,350.350 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 03:52:38,535.535 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 03:52:38,545.545 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 03:52:38,697.697 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 03:52:38,747.747 INFO    ] time= 12/06/2026 03:52:38
[2026-06-12 03:52:38,769.769 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 03:52:38,775.775 INFO    ] Checking for existing commands in stream...
[2026-06-12 03:52:38,843.843 INFO    ] No existing commands found in stream
[2026-06-12 03:52:43,860.860 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 03:52:43,863.863 INFO    ] Waiting 3.56 seconds before fallback handling...
[2026-06-12 03:52:47,830.830 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 03:52:47,832.832 INFO    ] Checking for system updates...
[2026-06-12 03:52:47,853.853 INFO    ] 200
[2026-06-12 03:52:47,854.854 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:52:47,886.886 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 03:52:47,887.887 INFO    ] No update needed
[2026-06-12 03:52:47,889.889 INFO    ] Checking for camera pi updates...
[2026-06-12 03:52:47,910.910 INFO    ] 200
[2026-06-12 03:52:47,912.912 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:52:47,937.937 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 03:52:47,975.975 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 03:52:47,976.976 INFO    ] No camera update needed
[2026-06-12 03:52:47,978.978 INFO    ] Script finished. Safe exiting...
[2026-06-12 03:52:47,979.979 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 03:52:47,982.982 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 03:52:47,985.985 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 03:52:50,027.027 INFO    ] ================================================
[2026-06-12 03:52:50,042.042 INFO    ] Launching Daemon at Fri Jun 12 03:52:50 IST 2026
[2026-06-12 03:52:50,053.053 INFO    ] ================================================
[2026-06-12 03:52:50,405.405 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 03:52:50
[2026-06-12 03:52:50,721.721 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 03:52:50,855.855 INFO    ] Initializing speech engine...
[2026-06-12 03:52:50,867.867 INFO    ] 2026-06-12 03:52:50
[2026-06-12 03:52:51,073.073 INFO    ] 2026-06-12 03:52:51
[2026-06-12 03:52:51,107.107 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 03:52:51,303.303 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 03:52:51,307.307 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 03:52:51,464.464 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 03:52:51,525.525 INFO    ] time= 12/06/2026 03:52:51
[2026-06-12 03:52:51,550.550 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 03:52:51,557.557 INFO    ] Checking for existing commands in stream...
[2026-06-12 03:52:51,628.628 INFO    ] No existing commands found in stream
[2026-06-12 03:52:56,637.637 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 03:52:56,640.640 INFO    ] Waiting 2.31 seconds before fallback handling...
[2026-06-12 03:52:59,369.369 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 03:52:59,372.372 INFO    ] Checking for system updates...
[2026-06-12 03:52:59,413.413 INFO    ] 200
[2026-06-12 03:52:59,415.415 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:52:59,475.475 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 03:52:59,478.478 INFO    ] No update needed
[2026-06-12 03:52:59,480.480 INFO    ] Checking for camera pi updates...
[2026-06-12 03:52:59,507.507 INFO    ] 200
[2026-06-12 03:52:59,508.508 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:52:59,532.532 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 03:52:59,567.567 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 03:52:59,569.569 INFO    ] No camera update needed
[2026-06-12 03:52:59,570.570 INFO    ] Script finished. Safe exiting...
[2026-06-12 03:52:59,571.571 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 03:52:59,574.574 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 03:52:59,577.577 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 03:53:01,615.615 INFO    ] ================================================
[2026-06-12 03:53:01,630.630 INFO    ] Launching Daemon at Fri Jun 12 03:53:01 IST 2026
[2026-06-12 03:53:01,641.641 INFO    ] ================================================
[2026-06-12 03:53:02,025.025 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 03:53:02
[2026-06-12 03:53:02,453.453 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 03:53:02,623.623 INFO    ] Initializing speech engine...
[2026-06-12 03:53:02,637.637 INFO    ] 2026-06-12 03:53:02
[2026-06-12 03:53:02,885.885 INFO    ] 2026-06-12 03:53:02
[2026-06-12 03:53:02,920.920 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 03:53:03,057.057 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 03:53:03,118.118 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 03:53:03,257.257 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 03:53:03,320.320 INFO    ] time= 12/06/2026 03:53:03
[2026-06-12 03:53:03,352.352 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 03:53:03,358.358 INFO    ] Checking for existing commands in stream...
[2026-06-12 03:53:03,426.426 INFO    ] No existing commands found in stream
[2026-06-12 03:53:08,435.435 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 03:53:08,438.438 INFO    ] Waiting 2.79 seconds before fallback handling...
[2026-06-12 03:53:11,596.596 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 03:53:11,602.602 INFO    ] Checking for system updates...
[2026-06-12 03:53:11,624.624 INFO    ] 200
[2026-06-12 03:53:11,626.626 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:53:11,660.660 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 03:53:11,661.661 INFO    ] No update needed
[2026-06-12 03:53:11,663.663 INFO    ] Checking for camera pi updates...
[2026-06-12 03:53:11,684.684 INFO    ] 200
[2026-06-12 03:53:11,686.686 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:53:11,710.710 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 03:53:11,732.732 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 03:53:11,734.734 INFO    ] No camera update needed
[2026-06-12 03:53:11,735.735 INFO    ] Script finished. Safe exiting...
[2026-06-12 03:53:11,736.736 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 03:53:11,739.739 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 03:53:11,742.742 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 03:53:13,782.782 INFO    ] ================================================
[2026-06-12 03:53:13,797.797 INFO    ] Launching Daemon at Fri Jun 12 03:53:13 IST 2026
[2026-06-12 03:53:13,808.808 INFO    ] ================================================
[2026-06-12 03:53:14,154.154 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 03:53:14
[2026-06-12 03:53:14,470.470 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 03:53:14,605.605 INFO    ] Initializing speech engine...
[2026-06-12 03:53:14,613.613 INFO    ] 2026-06-12 03:53:14
[2026-06-12 03:53:14,838.838 INFO    ] 2026-06-12 03:53:14
[2026-06-12 03:53:14,868.868 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 03:53:15,066.066 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 03:53:15,075.075 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 03:53:15,208.208 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 03:53:15,264.264 INFO    ] time= 12/06/2026 03:53:15
[2026-06-12 03:53:15,313.313 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 03:53:15,315.315 INFO    ] Checking for existing commands in stream...
[2026-06-12 03:53:15,417.417 INFO    ] No existing commands found in stream
[2026-06-12 03:53:20,426.426 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 03:53:20,429.429 INFO    ] Waiting 0.69 seconds before fallback handling...
[2026-06-12 03:53:21,503.503 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 03:53:21,505.505 INFO    ] Checking for system updates...
[2026-06-12 03:53:21,525.525 INFO    ] 200
[2026-06-12 03:53:21,527.527 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:53:21,561.561 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 03:53:21,562.562 INFO    ] No update needed
[2026-06-12 03:53:21,563.563 INFO    ] Checking for camera pi updates...
[2026-06-12 03:53:21,583.583 INFO    ] 200
[2026-06-12 03:53:21,584.584 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:53:21,609.609 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 03:53:21,648.648 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 03:53:21,649.649 INFO    ] No camera update needed
[2026-06-12 03:53:21,651.651 INFO    ] Script finished. Safe exiting...
[2026-06-12 03:53:21,652.652 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 03:53:21,655.655 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 03:53:21,658.658 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 03:53:23,688.688 INFO    ] ================================================
[2026-06-12 03:53:23,698.698 INFO    ] Launching Daemon at Fri Jun 12 03:53:23 IST 2026
[2026-06-12 03:53:23,705.705 INFO    ] ================================================
[2026-06-12 03:53:24,015.015 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 03:53:24
[2026-06-12 03:53:24,348.348 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 03:53:24,481.481 INFO    ] Initializing speech engine...
[2026-06-12 03:53:24,495.495 INFO    ] 2026-06-12 03:53:24
[2026-06-12 03:53:24,701.701 INFO    ] 2026-06-12 03:53:24
[2026-06-12 03:53:24,731.731 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 03:53:24,918.918 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 03:53:24,927.927 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 03:53:25,059.059 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 03:53:25,118.118 INFO    ] time= 12/06/2026 03:53:25
[2026-06-12 03:53:25,152.152 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 03:53:25,159.159 INFO    ] Checking for existing commands in stream...
[2026-06-12 03:53:25,227.227 INFO    ] No existing commands found in stream
[2026-06-12 03:53:30,236.236 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 03:53:30,239.239 INFO    ] Waiting 2.95 seconds before fallback handling...
[2026-06-12 03:53:33,608.608 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 03:53:33,610.610 INFO    ] Checking for system updates...
[2026-06-12 03:53:33,646.646 INFO    ] 200
[2026-06-12 03:53:33,649.649 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:53:33,710.710 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 03:53:33,712.712 INFO    ] No update needed
[2026-06-12 03:53:33,715.715 INFO    ] Checking for camera pi updates...
[2026-06-12 03:53:33,747.747 INFO    ] 200
[2026-06-12 03:53:33,748.748 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:53:33,773.773 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 03:53:33,822.822 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 03:53:33,824.824 INFO    ] No camera update needed
[2026-06-12 03:53:33,825.825 INFO    ] Script finished. Safe exiting...
[2026-06-12 03:53:33,826.826 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 03:53:33,829.829 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 03:53:33,832.832 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 03:53:35,872.872 INFO    ] ================================================
[2026-06-12 03:53:35,887.887 INFO    ] Launching Daemon at Fri Jun 12 03:53:35 IST 2026
[2026-06-12 03:53:35,898.898 INFO    ] ================================================
[2026-06-12 03:53:36,258.258 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 03:53:36
[2026-06-12 03:53:36,570.570 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 03:53:36,702.702 INFO    ] Initializing speech engine...
[2026-06-12 03:53:36,705.705 INFO    ] 2026-06-12 03:53:36
[2026-06-12 03:53:36,926.926 INFO    ] 2026-06-12 03:53:36
[2026-06-12 03:53:36,954.954 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 03:53:37,139.139 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 03:53:37,142.142 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 03:53:37,277.277 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 03:53:37,335.335 INFO    ] time= 12/06/2026 03:53:37
[2026-06-12 03:53:37,370.370 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 03:53:37,375.375 INFO    ] Checking for existing commands in stream...
[2026-06-12 03:53:37,452.452 INFO    ] No existing commands found in stream
[2026-06-12 03:53:42,479.479 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 03:53:42,482.482 INFO    ] Waiting 1.80 seconds before fallback handling...
[2026-06-12 03:53:44,594.594 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 03:53:44,596.596 INFO    ] Checking for system updates...
[2026-06-12 03:53:44,617.617 INFO    ] 200
[2026-06-12 03:53:44,618.618 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:53:44,648.648 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 03:53:44,650.650 INFO    ] No update needed
[2026-06-12 03:53:44,652.652 INFO    ] Checking for camera pi updates...
[2026-06-12 03:53:44,686.686 INFO    ] 200
[2026-06-12 03:53:44,689.689 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:53:44,729.729 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 03:53:44,868.868 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 03:53:44,870.870 INFO    ] No camera update needed
[2026-06-12 03:53:44,871.871 INFO    ] Script finished. Safe exiting...
[2026-06-12 03:53:44,872.872 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 03:53:44,876.876 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 03:53:44,878.878 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 03:53:46,919.919 INFO    ] ================================================
[2026-06-12 03:53:46,934.934 INFO    ] Launching Daemon at Fri Jun 12 03:53:46 IST 2026
[2026-06-12 03:53:46,945.945 INFO    ] ================================================
[2026-06-12 03:53:47,277.277 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 03:53:47
[2026-06-12 03:53:47,587.587 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 03:53:47,718.718 INFO    ] Initializing speech engine...
[2026-06-12 03:53:47,721.721 INFO    ] 2026-06-12 03:53:47
[2026-06-12 03:53:47,936.936 INFO    ] 2026-06-12 03:53:47
[2026-06-12 03:53:47,965.965 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 03:53:48,152.152 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 03:53:48,162.162 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 03:53:48,305.305 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 03:53:48,357.357 INFO    ] time= 12/06/2026 03:53:48
[2026-06-12 03:53:48,380.380 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 03:53:48,385.385 INFO    ] Checking for existing commands in stream...
[2026-06-12 03:53:48,452.452 INFO    ] No existing commands found in stream
[2026-06-12 03:53:53,466.466 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 03:53:53,469.469 INFO    ] Waiting 1.88 seconds before fallback handling...
[2026-06-12 03:53:55,736.736 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 03:53:55,737.737 INFO    ] Checking for system updates...
[2026-06-12 03:53:55,759.759 INFO    ] 200
[2026-06-12 03:53:55,761.761 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:53:55,794.794 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 03:53:55,795.795 INFO    ] No update needed
[2026-06-12 03:53:55,797.797 INFO    ] Checking for camera pi updates...
[2026-06-12 03:53:55,820.820 INFO    ] 200
[2026-06-12 03:53:55,822.822 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:53:55,848.848 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 03:53:55,890.890 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 03:53:55,891.891 INFO    ] No camera update needed
[2026-06-12 03:53:55,893.893 INFO    ] Script finished. Safe exiting...
[2026-06-12 03:53:55,894.894 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 03:53:55,897.897 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 03:53:55,900.900 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 03:53:57,941.941 INFO    ] ================================================
[2026-06-12 03:53:57,956.956 INFO    ] Launching Daemon at Fri Jun 12 03:53:57 IST 2026
[2026-06-12 03:53:57,967.967 INFO    ] ================================================
[2026-06-12 03:53:58,314.314 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 03:53:58
[2026-06-12 03:53:58,625.625 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 03:53:58,767.767 INFO    ] Initializing speech engine...
[2026-06-12 03:53:58,771.771 INFO    ] 2026-06-12 03:53:58
[2026-06-12 03:53:58,974.974 INFO    ] 2026-06-12 03:53:58
[2026-06-12 03:53:59,003.003 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 03:53:59,198.198 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 03:53:59,202.202 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 03:53:59,341.341 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 03:53:59,382.382 INFO    ] time= 12/06/2026 03:53:59
[2026-06-12 03:53:59,426.426 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 03:53:59,448.448 INFO    ] Checking for existing commands in stream...
[2026-06-12 03:53:59,550.550 INFO    ] No existing commands found in stream
[2026-06-12 03:54:04,559.559 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 03:54:04,562.562 INFO    ] Waiting 2.95 seconds before fallback handling...
[2026-06-12 03:54:07,861.861 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 03:54:07,863.863 INFO    ] Checking for system updates...
[2026-06-12 03:54:07,889.889 INFO    ] 200
[2026-06-12 03:54:07,890.890 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:54:07,933.933 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 03:54:07,935.935 INFO    ] No update needed
[2026-06-12 03:54:07,937.937 INFO    ] Checking for camera pi updates...
[2026-06-12 03:54:07,960.960 INFO    ] 200
[2026-06-12 03:54:07,962.962 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:54:08,001.001 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 03:54:08,038.038 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 03:54:08,040.040 INFO    ] No camera update needed
[2026-06-12 03:54:08,041.041 INFO    ] Script finished. Safe exiting...
[2026-06-12 03:54:08,042.042 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 03:54:08,046.046 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 03:54:08,050.050 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 03:54:10,090.090 INFO    ] ================================================
[2026-06-12 03:54:10,105.105 INFO    ] Launching Daemon at Fri Jun 12 03:54:10 IST 2026
[2026-06-12 03:54:10,116.116 INFO    ] ================================================
[2026-06-12 03:54:10,452.452 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 03:54:10
[2026-06-12 03:54:10,771.771 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 03:54:10,904.904 INFO    ] Initializing speech engine...
[2026-06-12 03:54:10,912.912 INFO    ] 2026-06-12 03:54:10
[2026-06-12 03:54:11,125.125 INFO    ] 2026-06-12 03:54:11
[2026-06-12 03:54:11,153.153 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 03:54:11,340.340 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 03:54:11,350.350 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 03:54:11,484.484 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 03:54:11,546.546 INFO    ] time= 12/06/2026 03:54:11
[2026-06-12 03:54:11,570.570 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 03:54:11,577.577 INFO    ] Checking for existing commands in stream...
[2026-06-12 03:54:11,668.668 INFO    ] No existing commands found in stream
[2026-06-12 03:54:16,682.682 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 03:54:16,685.685 INFO    ] Waiting 3.04 seconds before fallback handling...
[2026-06-12 03:54:20,103.103 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 03:54:20,104.104 INFO    ] Checking for system updates...
[2026-06-12 03:54:20,125.125 INFO    ] 200
[2026-06-12 03:54:20,127.127 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:54:20,162.162 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 03:54:20,163.163 INFO    ] No update needed
[2026-06-12 03:54:20,165.165 INFO    ] Checking for camera pi updates...
[2026-06-12 03:54:20,184.184 INFO    ] 200
[2026-06-12 03:54:20,186.186 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:54:20,211.211 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 03:54:20,247.247 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 03:54:20,248.248 INFO    ] No camera update needed
[2026-06-12 03:54:20,250.250 INFO    ] Script finished. Safe exiting...
[2026-06-12 03:54:20,251.251 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 03:54:20,254.254 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 03:54:20,257.257 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 03:54:22,296.296 INFO    ] ================================================
[2026-06-12 03:54:22,312.312 INFO    ] Launching Daemon at Fri Jun 12 03:54:22 IST 2026
[2026-06-12 03:54:22,322.322 INFO    ] ================================================
[2026-06-12 03:54:22,660.660 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 03:54:22
[2026-06-12 03:54:22,978.978 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 03:54:23,122.122 INFO    ] Initializing speech engine...
[2026-06-12 03:54:23,127.127 INFO    ] 2026-06-12 03:54:23
[2026-06-12 03:54:23,330.330 INFO    ] 2026-06-12 03:54:23
[2026-06-12 03:54:23,359.359 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 03:54:23,542.542 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 03:54:23,552.552 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 03:54:23,682.682 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 03:54:23,741.741 INFO    ] time= 12/06/2026 03:54:23
[2026-06-12 03:54:23,773.773 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 03:54:23,779.779 INFO    ] Checking for existing commands in stream...
[2026-06-12 03:54:23,846.846 INFO    ] No existing commands found in stream
[2026-06-12 03:54:28,852.852 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 03:54:28,855.855 INFO    ] Waiting 2.58 seconds before fallback handling...
[2026-06-12 03:54:31,766.766 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 03:54:31,768.768 INFO    ] Checking for system updates...
[2026-06-12 03:54:31,796.796 INFO    ] 200
[2026-06-12 03:54:31,798.798 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:54:31,837.837 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 03:54:31,839.839 INFO    ] No update needed
[2026-06-12 03:54:31,841.841 INFO    ] Checking for camera pi updates...
[2026-06-12 03:54:31,864.864 INFO    ] 200
[2026-06-12 03:54:31,866.866 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:54:31,899.899 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 03:54:31,940.940 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 03:54:31,942.942 INFO    ] No camera update needed
[2026-06-12 03:54:31,944.944 INFO    ] Script finished. Safe exiting...
[2026-06-12 03:54:31,945.945 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 03:54:31,949.949 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 03:54:31,952.952 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 03:54:33,994.994 INFO    ] ================================================
[2026-06-12 03:54:34,010.010 INFO    ] Launching Daemon at Fri Jun 12 03:54:34 IST 2026
[2026-06-12 03:54:34,021.021 INFO    ] ================================================
[2026-06-12 03:54:34,362.362 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 03:54:34
[2026-06-12 03:54:34,676.676 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 03:54:34,810.810 INFO    ] Initializing speech engine...
[2026-06-12 03:54:34,823.823 INFO    ] 2026-06-12 03:54:34
[2026-06-12 03:54:35,037.037 INFO    ] 2026-06-12 03:54:35
[2026-06-12 03:54:35,065.065 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 03:54:35,249.249 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 03:54:35,258.258 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 03:54:35,387.387 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 03:54:35,455.455 INFO    ] time= 12/06/2026 03:54:35
[2026-06-12 03:54:35,479.479 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 03:54:35,485.485 INFO    ] Checking for existing commands in stream...
[2026-06-12 03:54:35,552.552 INFO    ] No existing commands found in stream
[2026-06-12 03:54:40,561.561 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 03:54:40,563.563 INFO    ] Waiting 0.33 seconds before fallback handling...
[2026-06-12 03:54:41,252.252 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 03:54:41,254.254 INFO    ] Checking for system updates...
[2026-06-12 03:54:41,276.276 INFO    ] 200
[2026-06-12 03:54:41,278.278 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:54:41,313.313 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 03:54:41,314.314 INFO    ] No update needed
[2026-06-12 03:54:41,316.316 INFO    ] Checking for camera pi updates...
[2026-06-12 03:54:41,335.335 INFO    ] 200
[2026-06-12 03:54:41,337.337 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:54:41,362.362 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 03:54:41,399.399 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 03:54:41,401.401 INFO    ] No camera update needed
[2026-06-12 03:54:41,402.402 INFO    ] Script finished. Safe exiting...
[2026-06-12 03:54:41,404.404 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 03:54:41,407.407 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 03:54:41,410.410 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 03:54:43,447.447 INFO    ] ================================================
[2026-06-12 03:54:43,463.463 INFO    ] Launching Daemon at Fri Jun 12 03:54:43 IST 2026
[2026-06-12 03:54:43,473.473 INFO    ] ================================================
[2026-06-12 03:54:43,796.796 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 03:54:43
[2026-06-12 03:54:44,106.106 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 03:54:44,249.249 INFO    ] Initializing speech engine...
[2026-06-12 03:54:44,254.254 INFO    ] 2026-06-12 03:54:44
[2026-06-12 03:54:44,458.458 INFO    ] 2026-06-12 03:54:44
[2026-06-12 03:54:44,487.487 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 03:54:44,609.609 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 03:54:44,672.672 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 03:54:44,808.808 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 03:54:44,862.862 INFO    ] time= 12/06/2026 03:54:44
[2026-06-12 03:54:44,896.896 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 03:54:44,901.901 INFO    ] Checking for existing commands in stream...
[2026-06-12 03:54:44,972.972 INFO    ] No existing commands found in stream
[2026-06-12 03:54:49,986.986 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 03:54:49,989.989 INFO    ] Waiting 1.17 seconds before fallback handling...
[2026-06-12 03:54:51,532.532 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 03:54:51,533.533 INFO    ] Checking for system updates...
[2026-06-12 03:54:51,555.555 INFO    ] 200
[2026-06-12 03:54:51,557.557 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:54:51,587.587 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 03:54:51,588.588 INFO    ] No update needed
[2026-06-12 03:54:51,589.589 INFO    ] Checking for camera pi updates...
[2026-06-12 03:54:51,610.610 INFO    ] 200
[2026-06-12 03:54:51,612.612 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:54:51,635.635 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 03:54:51,683.683 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 03:54:51,684.684 INFO    ] No camera update needed
[2026-06-12 03:54:51,685.685 INFO    ] Script finished. Safe exiting...
[2026-06-12 03:54:51,686.686 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 03:54:51,689.689 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 03:54:51,692.692 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 03:54:53,731.731 INFO    ] ================================================
[2026-06-12 03:54:53,746.746 INFO    ] Launching Daemon at Fri Jun 12 03:54:53 IST 2026
[2026-06-12 03:54:53,757.757 INFO    ] ================================================
[2026-06-12 03:54:54,099.099 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 03:54:54
[2026-06-12 03:54:54,409.409 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 03:54:54,551.551 INFO    ] Initializing speech engine...
[2026-06-12 03:54:54,556.556 INFO    ] 2026-06-12 03:54:54
[2026-06-12 03:54:54,759.759 INFO    ] 2026-06-12 03:54:54
[2026-06-12 03:54:54,786.786 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 03:54:54,969.969 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 03:54:54,979.979 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 03:54:55,100.100 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 03:54:55,171.171 INFO    ] time= 12/06/2026 03:54:55
[2026-06-12 03:54:55,198.198 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 03:54:55,204.204 INFO    ] Checking for existing commands in stream...
[2026-06-12 03:54:55,293.293 INFO    ] No existing commands found in stream
[2026-06-12 03:55:00,302.302 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 03:55:00,305.305 INFO    ] Waiting 2.96 seconds before fallback handling...
[2026-06-12 03:55:03,624.624 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 03:55:03,626.626 INFO    ] Checking for system updates...
[2026-06-12 03:55:03,647.647 INFO    ] 200
[2026-06-12 03:55:03,649.649 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:55:03,679.679 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 03:55:03,680.680 INFO    ] No update needed
[2026-06-12 03:55:03,682.682 INFO    ] Checking for camera pi updates...
[2026-06-12 03:55:03,701.701 INFO    ] 200
[2026-06-12 03:55:03,703.703 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:55:03,727.727 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 03:55:03,767.767 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 03:55:03,768.768 INFO    ] No camera update needed
[2026-06-12 03:55:03,770.770 INFO    ] Script finished. Safe exiting...
[2026-06-12 03:55:03,771.771 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 03:55:03,774.774 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 03:55:03,777.777 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 03:55:05,816.816 INFO    ] ================================================
[2026-06-12 03:55:05,833.833 INFO    ] Launching Daemon at Fri Jun 12 03:55:05 IST 2026
[2026-06-12 03:55:05,845.845 INFO    ] ================================================
[2026-06-12 03:55:06,205.205 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 03:55:06
[2026-06-12 03:55:06,515.515 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 03:55:06,651.651 INFO    ] Initializing speech engine...
[2026-06-12 03:55:06,659.659 INFO    ] 2026-06-12 03:55:06
[2026-06-12 03:55:06,863.863 INFO    ] 2026-06-12 03:55:06
[2026-06-12 03:55:06,891.891 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 03:55:07,073.073 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 03:55:07,077.077 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 03:55:07,227.227 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 03:55:07,281.281 INFO    ] time= 12/06/2026 03:55:07
[2026-06-12 03:55:07,303.303 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 03:55:07,309.309 INFO    ] Checking for existing commands in stream...
[2026-06-12 03:55:07,375.375 INFO    ] No existing commands found in stream
[2026-06-12 03:55:12,389.389 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 03:55:12,392.392 INFO    ] Waiting 2.14 seconds before fallback handling...
[2026-06-12 03:55:14,873.873 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 03:55:14,875.875 INFO    ] Checking for system updates...
[2026-06-12 03:55:14,896.896 INFO    ] 200
[2026-06-12 03:55:14,897.897 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:55:14,928.928 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 03:55:14,929.929 INFO    ] No update needed
[2026-06-12 03:55:14,931.931 INFO    ] Checking for camera pi updates...
[2026-06-12 03:55:14,951.951 INFO    ] 200
[2026-06-12 03:55:14,953.953 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:55:14,976.976 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 03:55:15,010.010 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 03:55:15,012.012 INFO    ] No camera update needed
[2026-06-12 03:55:15,013.013 INFO    ] Script finished. Safe exiting...
[2026-06-12 03:55:15,014.014 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 03:55:15,017.017 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 03:55:15,019.019 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 03:55:17,061.061 INFO    ] ================================================
[2026-06-12 03:55:17,076.076 INFO    ] Launching Daemon at Fri Jun 12 03:55:17 IST 2026
[2026-06-12 03:55:17,086.086 INFO    ] ================================================
[2026-06-12 03:55:17,430.430 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 03:55:17
[2026-06-12 03:55:17,742.742 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 03:55:17,873.873 INFO    ] Initializing speech engine...
[2026-06-12 03:55:17,881.881 INFO    ] 2026-06-12 03:55:17
[2026-06-12 03:55:18,095.095 INFO    ] 2026-06-12 03:55:18
[2026-06-12 03:55:18,123.123 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 03:55:18,309.309 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 03:55:18,319.319 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 03:55:18,456.456 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 03:55:18,518.518 INFO    ] time= 12/06/2026 03:55:18
[2026-06-12 03:55:18,543.543 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 03:55:18,549.549 INFO    ] Checking for existing commands in stream...
[2026-06-12 03:55:18,617.617 INFO    ] No existing commands found in stream
[2026-06-12 03:55:23,632.632 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 03:55:23,635.635 INFO    ] Waiting 2.18 seconds before fallback handling...
[2026-06-12 03:55:26,212.212 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 03:55:26,214.214 INFO    ] Checking for system updates...
[2026-06-12 03:55:26,235.235 INFO    ] 200
[2026-06-12 03:55:26,236.236 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:55:26,268.268 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 03:55:26,269.269 INFO    ] No update needed
[2026-06-12 03:55:26,270.270 INFO    ] Checking for camera pi updates...
[2026-06-12 03:55:26,292.292 INFO    ] 200
[2026-06-12 03:55:26,293.293 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:55:26,318.318 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 03:55:26,357.357 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 03:55:26,358.358 INFO    ] No camera update needed
[2026-06-12 03:55:26,360.360 INFO    ] Script finished. Safe exiting...
[2026-06-12 03:55:26,361.361 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 03:55:26,364.364 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 03:55:26,367.367 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 03:55:28,405.405 INFO    ] ================================================
[2026-06-12 03:55:28,420.420 INFO    ] Launching Daemon at Fri Jun 12 03:55:28 IST 2026
[2026-06-12 03:55:28,430.430 INFO    ] ================================================
[2026-06-12 03:55:28,770.770 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 03:55:28
[2026-06-12 03:55:29,083.083 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 03:55:29,213.213 INFO    ] Initializing speech engine...
[2026-06-12 03:55:29,217.217 INFO    ] 2026-06-12 03:55:29
[2026-06-12 03:55:29,436.436 INFO    ] 2026-06-12 03:55:29
[2026-06-12 03:55:29,464.464 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 03:55:29,651.651 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 03:55:29,660.660 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 03:55:29,807.807 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 03:55:29,861.861 INFO    ] time= 12/06/2026 03:55:29
[2026-06-12 03:55:29,883.883 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 03:55:29,890.890 INFO    ] Checking for existing commands in stream...
[2026-06-12 03:55:29,958.958 INFO    ] No existing commands found in stream
[2026-06-12 03:55:34,967.967 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 03:55:34,969.969 INFO    ] Waiting 1.73 seconds before fallback handling...
[2026-06-12 03:55:37,050.050 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 03:55:37,051.051 INFO    ] Checking for system updates...
[2026-06-12 03:55:37,074.074 INFO    ] 200
[2026-06-12 03:55:37,075.075 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:55:37,111.111 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 03:55:37,113.113 INFO    ] No update needed
[2026-06-12 03:55:37,114.114 INFO    ] Checking for camera pi updates...
[2026-06-12 03:55:37,133.133 INFO    ] 200
[2026-06-12 03:55:37,135.135 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:55:37,157.157 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 03:55:37,194.194 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 03:55:37,196.196 INFO    ] No camera update needed
[2026-06-12 03:55:37,197.197 INFO    ] Script finished. Safe exiting...
[2026-06-12 03:55:37,198.198 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 03:55:37,201.201 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 03:55:37,204.204 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 03:55:39,241.241 INFO    ] ================================================
[2026-06-12 03:55:39,256.256 INFO    ] Launching Daemon at Fri Jun 12 03:55:39 IST 2026
[2026-06-12 03:55:39,267.267 INFO    ] ================================================
[2026-06-12 03:55:39,619.619 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 03:55:39
[2026-06-12 03:55:39,936.936 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 03:55:40,080.080 INFO    ] Initializing speech engine...
[2026-06-12 03:55:40,086.086 INFO    ] 2026-06-12 03:55:40
[2026-06-12 03:55:40,289.289 INFO    ] 2026-06-12 03:55:40
[2026-06-12 03:55:40,318.318 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 03:55:40,501.501 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 03:55:40,510.510 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 03:55:40,655.655 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 03:55:40,708.708 INFO    ] time= 12/06/2026 03:55:40
[2026-06-12 03:55:40,730.730 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 03:55:40,736.736 INFO    ] Checking for existing commands in stream...
[2026-06-12 03:55:40,803.803 INFO    ] No existing commands found in stream
[2026-06-12 03:55:45,812.812 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 03:55:45,815.815 INFO    ] Waiting 1.39 seconds before fallback handling...
[2026-06-12 03:55:47,590.590 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 03:55:47,591.591 INFO    ] Checking for system updates...
[2026-06-12 03:55:47,612.612 INFO    ] 200
[2026-06-12 03:55:47,614.614 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:55:47,646.646 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 03:55:47,647.647 INFO    ] No update needed
[2026-06-12 03:55:47,649.649 INFO    ] Checking for camera pi updates...
[2026-06-12 03:55:47,668.668 INFO    ] 200
[2026-06-12 03:55:47,670.670 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:55:47,696.696 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 03:55:47,837.837 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 03:55:47,839.839 INFO    ] No camera update needed
[2026-06-12 03:55:47,840.840 INFO    ] Script finished. Safe exiting...
[2026-06-12 03:55:47,841.841 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 03:55:47,844.844 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 03:55:47,847.847 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 03:55:49,884.884 INFO    ] ================================================
[2026-06-12 03:55:49,899.899 INFO    ] Launching Daemon at Fri Jun 12 03:55:49 IST 2026
[2026-06-12 03:55:49,910.910 INFO    ] ================================================
[2026-06-12 03:55:50,280.280 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 03:55:50
[2026-06-12 03:55:50,596.596 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 03:55:50,759.759 INFO    ] Initializing speech engine...
[2026-06-12 03:55:50,768.768 INFO    ] 2026-06-12 03:55:50
[2026-06-12 03:55:50,995.995 INFO    ] 2026-06-12 03:55:50
[2026-06-12 03:55:51,025.025 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 03:55:51,210.210 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 03:55:51,219.219 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 03:55:51,366.366 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 03:55:51,420.420 INFO    ] time= 12/06/2026 03:55:51
[2026-06-12 03:55:51,443.443 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 03:55:51,448.448 INFO    ] Checking for existing commands in stream...
[2026-06-12 03:55:51,516.516 INFO    ] No existing commands found in stream
[2026-06-12 03:55:56,531.531 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 03:55:56,533.533 INFO    ] Waiting 1.14 seconds before fallback handling...
[2026-06-12 03:55:58,082.082 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 03:55:58,083.083 INFO    ] Checking for system updates...
[2026-06-12 03:55:58,104.104 INFO    ] 200
[2026-06-12 03:55:58,105.105 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:55:58,138.138 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 03:55:58,139.139 INFO    ] No update needed
[2026-06-12 03:55:58,141.141 INFO    ] Checking for camera pi updates...
[2026-06-12 03:55:58,161.161 INFO    ] 200
[2026-06-12 03:55:58,163.163 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:55:58,187.187 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 03:55:58,231.231 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 03:55:58,232.232 INFO    ] No camera update needed
[2026-06-12 03:55:58,234.234 INFO    ] Script finished. Safe exiting...
[2026-06-12 03:55:58,235.235 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 03:55:58,238.238 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 03:55:58,240.240 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 03:56:00,278.278 INFO    ] ================================================
[2026-06-12 03:56:00,293.293 INFO    ] Launching Daemon at Fri Jun 12 03:56:00 IST 2026
[2026-06-12 03:56:00,304.304 INFO    ] ================================================
[2026-06-12 03:56:00,636.636 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 03:56:00
[2026-06-12 03:56:00,947.947 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 03:56:01,089.089 INFO    ] Initializing speech engine...
[2026-06-12 03:56:01,094.094 INFO    ] 2026-06-12 03:56:01
[2026-06-12 03:56:01,297.297 INFO    ] 2026-06-12 03:56:01
[2026-06-12 03:56:01,325.325 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 03:56:01,507.507 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 03:56:01,517.517 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 03:56:01,647.647 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 03:56:01,711.711 INFO    ] time= 12/06/2026 03:56:01
[2026-06-12 03:56:01,738.738 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 03:56:01,745.745 INFO    ] Checking for existing commands in stream...
[2026-06-12 03:56:01,835.835 INFO    ] No existing commands found in stream
[2026-06-12 03:56:06,849.849 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 03:56:06,852.852 INFO    ] Waiting 0.61 seconds before fallback handling...
[2026-06-12 03:56:07,879.879 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 03:56:07,881.881 INFO    ] Checking for system updates...
[2026-06-12 03:56:07,917.917 INFO    ] 200
[2026-06-12 03:56:07,919.919 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:56:07,976.976 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 03:56:07,978.978 INFO    ] No update needed
[2026-06-12 03:56:07,981.981 INFO    ] Checking for camera pi updates...
[2026-06-12 03:56:08,013.013 INFO    ] 200
[2026-06-12 03:56:08,015.015 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:56:08,039.039 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 03:56:08,088.088 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 03:56:08,089.089 INFO    ] No camera update needed
[2026-06-12 03:56:08,091.091 INFO    ] Script finished. Safe exiting...
[2026-06-12 03:56:08,092.092 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 03:56:08,095.095 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 03:56:08,097.097 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 03:56:10,135.135 INFO    ] ================================================
[2026-06-12 03:56:10,150.150 INFO    ] Launching Daemon at Fri Jun 12 03:56:10 IST 2026
[2026-06-12 03:56:10,161.161 INFO    ] ================================================
[2026-06-12 03:56:10,488.488 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 03:56:10
[2026-06-12 03:56:10,797.797 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 03:56:10,939.939 INFO    ] Initializing speech engine...
[2026-06-12 03:56:10,944.944 INFO    ] 2026-06-12 03:56:10
[2026-06-12 03:56:11,149.149 INFO    ] 2026-06-12 03:56:11
[2026-06-12 03:56:11,179.179 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 03:56:11,364.364 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 03:56:11,373.373 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 03:56:11,503.503 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 03:56:11,570.570 INFO    ] time= 12/06/2026 03:56:11
[2026-06-12 03:56:11,594.594 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 03:56:11,600.600 INFO    ] Checking for existing commands in stream...
[2026-06-12 03:56:11,691.691 INFO    ] No existing commands found in stream
[2026-06-12 03:56:16,700.700 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 03:56:16,703.703 INFO    ] Waiting 0.14 seconds before fallback handling...
[2026-06-12 03:56:17,210.210 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 03:56:17,211.211 INFO    ] Checking for system updates...
[2026-06-12 03:56:17,233.233 INFO    ] 200
[2026-06-12 03:56:17,234.234 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:56:17,264.264 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 03:56:17,266.266 INFO    ] No update needed
[2026-06-12 03:56:17,267.267 INFO    ] Checking for camera pi updates...
[2026-06-12 03:56:17,287.287 INFO    ] 200
[2026-06-12 03:56:17,288.288 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:56:17,313.313 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 03:56:17,357.357 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 03:56:17,358.358 INFO    ] No camera update needed
[2026-06-12 03:56:17,360.360 INFO    ] Script finished. Safe exiting...
[2026-06-12 03:56:17,361.361 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 03:56:17,364.364 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 03:56:17,366.366 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 03:56:19,405.405 INFO    ] ================================================
[2026-06-12 03:56:19,420.420 INFO    ] Launching Daemon at Fri Jun 12 03:56:19 IST 2026
[2026-06-12 03:56:19,431.431 INFO    ] ================================================
[2026-06-12 03:56:19,769.769 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 03:56:19
[2026-06-12 03:56:20,079.079 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 03:56:20,222.222 INFO    ] Initializing speech engine...
[2026-06-12 03:56:20,227.227 INFO    ] 2026-06-12 03:56:20
[2026-06-12 03:56:20,433.433 INFO    ] 2026-06-12 03:56:20
[2026-06-12 03:56:20,461.461 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 03:56:20,647.647 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 03:56:20,656.656 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 03:56:20,788.788 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 03:56:20,856.856 INFO    ] time= 12/06/2026 03:56:20
[2026-06-12 03:56:20,880.880 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 03:56:20,882.882 INFO    ] Checking for existing commands in stream...
[2026-06-12 03:56:20,978.978 INFO    ] No existing commands found in stream
[2026-06-12 03:56:25,987.987 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 03:56:25,990.990 INFO    ] Waiting 2.22 seconds before fallback handling...
[2026-06-12 03:56:28,578.578 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 03:56:28,580.580 INFO    ] Checking for system updates...
[2026-06-12 03:56:28,600.600 INFO    ] 200
[2026-06-12 03:56:28,602.602 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:56:28,634.634 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 03:56:28,635.635 INFO    ] No update needed
[2026-06-12 03:56:28,637.637 INFO    ] Checking for camera pi updates...
[2026-06-12 03:56:28,660.660 INFO    ] 200
[2026-06-12 03:56:28,661.661 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:56:28,686.686 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 03:56:28,724.724 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 03:56:28,725.725 INFO    ] No camera update needed
[2026-06-12 03:56:28,727.727 INFO    ] Script finished. Safe exiting...
[2026-06-12 03:56:28,728.728 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 03:56:28,731.731 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 03:56:28,734.734 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 03:56:30,774.774 INFO    ] ================================================
[2026-06-12 03:56:30,789.789 INFO    ] Launching Daemon at Fri Jun 12 03:56:30 IST 2026
[2026-06-12 03:56:30,799.799 INFO    ] ================================================
[2026-06-12 03:56:31,146.146 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 03:56:31
[2026-06-12 03:56:31,457.457 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 03:56:31,602.602 INFO    ] Initializing speech engine...
[2026-06-12 03:56:31,608.608 INFO    ] 2026-06-12 03:56:31
[2026-06-12 03:56:31,820.820 INFO    ] 2026-06-12 03:56:31
[2026-06-12 03:56:31,850.850 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 03:56:32,053.053 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 03:56:32,057.057 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 03:56:32,221.221 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 03:56:32,290.290 INFO    ] time= 12/06/2026 03:56:32
[2026-06-12 03:56:32,318.318 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 03:56:32,326.326 INFO    ] Checking for existing commands in stream...
[2026-06-12 03:56:32,402.402 INFO    ] No existing commands found in stream
[2026-06-12 03:56:37,412.412 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 03:56:37,414.414 INFO    ] Waiting 1.15 seconds before fallback handling...
[2026-06-12 03:56:39,868.868 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 03:56:39,871.871 INFO    ] Checking for system updates...
[2026-06-12 03:56:39,907.907 INFO    ] 200
[2026-06-12 03:56:39,909.909 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:56:39,966.966 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 03:56:39,969.969 INFO    ] No update needed
[2026-06-12 03:56:39,971.971 INFO    ] Checking for camera pi updates...
[2026-06-12 03:56:40,007.007 INFO    ] 200
[2026-06-12 03:56:40,008.008 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:56:40,032.032 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 03:56:40,068.068 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 03:56:40,069.069 INFO    ] No camera update needed
[2026-06-12 03:56:40,071.071 INFO    ] Script finished. Safe exiting...
[2026-06-12 03:56:40,072.072 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 03:56:40,075.075 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 03:56:40,077.077 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 03:56:42,116.116 INFO    ] ================================================
[2026-06-12 03:56:42,131.131 INFO    ] Launching Daemon at Fri Jun 12 03:56:42 IST 2026
[2026-06-12 03:56:42,141.141 INFO    ] ================================================
[2026-06-12 03:56:42,530.530 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 03:56:42
[2026-06-12 03:56:42,860.860 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 03:56:43,003.003 INFO    ] Initializing speech engine...
[2026-06-12 03:56:43,014.014 INFO    ] 2026-06-12 03:56:43
[2026-06-12 03:56:43,223.223 INFO    ] 2026-06-12 03:56:43
[2026-06-12 03:56:43,252.252 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 03:56:43,439.439 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 03:56:43,449.449 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 03:56:43,630.630 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 03:56:43,671.671 INFO    ] time= 12/06/2026 03:56:43
[2026-06-12 03:56:43,677.677 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 03:56:43,679.679 INFO    ] Checking for existing commands in stream...
[2026-06-12 03:56:43,747.747 INFO    ] No existing commands found in stream
[2026-06-12 03:56:48,761.761 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 03:56:48,765.765 INFO    ] Waiting 0.52 seconds before fallback handling...
[2026-06-12 03:56:49,701.701 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 03:56:49,703.703 INFO    ] Checking for system updates...
[2026-06-12 03:56:49,725.725 INFO    ] 200
[2026-06-12 03:56:49,726.726 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:56:49,771.771 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 03:56:49,772.772 INFO    ] No update needed
[2026-06-12 03:56:49,774.774 INFO    ] Checking for camera pi updates...
[2026-06-12 03:56:49,794.794 INFO    ] 200
[2026-06-12 03:56:49,795.795 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:56:49,820.820 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 03:56:49,858.858 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 03:56:49,859.859 INFO    ] No camera update needed
[2026-06-12 03:56:49,861.861 INFO    ] Script finished. Safe exiting...
[2026-06-12 03:56:49,862.862 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 03:56:49,865.865 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 03:56:49,868.868 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 03:56:51,907.907 INFO    ] ================================================
[2026-06-12 03:56:51,923.923 INFO    ] Launching Daemon at Fri Jun 12 03:56:51 IST 2026
[2026-06-12 03:56:51,933.933 INFO    ] ================================================
[2026-06-12 03:56:52,265.265 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 03:56:52
[2026-06-12 03:56:52,580.580 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 03:56:52,725.725 INFO    ] Initializing speech engine...
[2026-06-12 03:56:52,731.731 INFO    ] 2026-06-12 03:56:52
[2026-06-12 03:56:52,944.944 INFO    ] 2026-06-12 03:56:52
[2026-06-12 03:56:52,974.974 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 03:56:53,167.167 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 03:56:53,177.177 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 03:56:53,329.329 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 03:56:53,382.382 INFO    ] time= 12/06/2026 03:56:53
[2026-06-12 03:56:53,403.403 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 03:56:53,410.410 INFO    ] Checking for existing commands in stream...
[2026-06-12 03:56:53,476.476 INFO    ] No existing commands found in stream
[2026-06-12 03:56:58,485.485 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 03:56:58,488.488 INFO    ] Waiting 1.78 seconds before fallback handling...
[2026-06-12 03:57:00,640.640 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 03:57:00,641.641 INFO    ] Checking for system updates...
[2026-06-12 03:57:00,662.662 INFO    ] 200
[2026-06-12 03:57:00,663.663 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:57:00,694.694 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 03:57:00,695.695 INFO    ] No update needed
[2026-06-12 03:57:00,696.696 INFO    ] Checking for camera pi updates...
[2026-06-12 03:57:00,717.717 INFO    ] 200
[2026-06-12 03:57:00,719.719 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:57:00,744.744 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 03:57:00,789.789 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 03:57:00,791.791 INFO    ] No camera update needed
[2026-06-12 03:57:00,792.792 INFO    ] Script finished. Safe exiting...
[2026-06-12 03:57:00,793.793 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 03:57:00,796.796 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 03:57:00,799.799 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 03:57:02,833.833 INFO    ] ================================================
[2026-06-12 03:57:02,848.848 INFO    ] Launching Daemon at Fri Jun 12 03:57:02 IST 2026
[2026-06-12 03:57:02,859.859 INFO    ] ================================================
[2026-06-12 03:57:03,227.227 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 03:57:03
[2026-06-12 03:57:03,559.559 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 03:57:03,702.702 INFO    ] Initializing speech engine...
[2026-06-12 03:57:03,714.714 INFO    ] 2026-06-12 03:57:03
[2026-06-12 03:57:03,923.923 INFO    ] 2026-06-12 03:57:03
[2026-06-12 03:57:03,953.953 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 03:57:04,137.137 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 03:57:04,147.147 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 03:57:04,340.340 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 03:57:04,367.367 INFO    ] time= 12/06/2026 03:57:04
[2026-06-12 03:57:04,374.374 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 03:57:04,376.376 INFO    ] Checking for existing commands in stream...
[2026-06-12 03:57:04,442.442 INFO    ] No existing commands found in stream
[2026-06-12 03:57:09,462.462 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 03:57:09,465.465 INFO    ] Waiting 2.63 seconds before fallback handling...
[2026-06-12 03:57:12,472.472 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 03:57:12,473.473 INFO    ] Checking for system updates...
[2026-06-12 03:57:12,495.495 INFO    ] 200
[2026-06-12 03:57:12,497.497 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:57:12,532.532 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 03:57:12,534.534 INFO    ] No update needed
[2026-06-12 03:57:12,535.535 INFO    ] Checking for camera pi updates...
[2026-06-12 03:57:12,557.557 INFO    ] 200
[2026-06-12 03:57:12,558.558 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:57:12,583.583 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 03:57:12,628.628 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 03:57:12,629.629 INFO    ] No camera update needed
[2026-06-12 03:57:12,631.631 INFO    ] Script finished. Safe exiting...
[2026-06-12 03:57:12,632.632 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 03:57:12,635.635 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 03:57:12,638.638 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 03:57:14,677.677 INFO    ] ================================================
[2026-06-12 03:57:14,693.693 INFO    ] Launching Daemon at Fri Jun 12 03:57:14 IST 2026
[2026-06-12 03:57:14,704.704 INFO    ] ================================================
[2026-06-12 03:57:15,049.049 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 03:57:15
[2026-06-12 03:57:15,359.359 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 03:57:15,502.502 INFO    ] Initializing speech engine...
[2026-06-12 03:57:15,506.506 INFO    ] 2026-06-12 03:57:15
[2026-06-12 03:57:15,711.711 INFO    ] 2026-06-12 03:57:15
[2026-06-12 03:57:15,742.742 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 03:57:15,872.872 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 03:57:15,925.925 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 03:57:16,084.084 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 03:57:16,154.154 INFO    ] time= 12/06/2026 03:57:16
[2026-06-12 03:57:16,181.181 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 03:57:16,183.183 INFO    ] Checking for existing commands in stream...
[2026-06-12 03:57:16,258.258 INFO    ] No existing commands found in stream
[2026-06-12 03:57:21,272.272 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 03:57:21,275.275 INFO    ] Waiting 0.64 seconds before fallback handling...
[2026-06-12 03:57:22,298.298 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 03:57:22,300.300 INFO    ] Checking for system updates...
[2026-06-12 03:57:22,320.320 INFO    ] 200
[2026-06-12 03:57:22,321.321 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:57:22,352.352 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 03:57:22,353.353 INFO    ] No update needed
[2026-06-12 03:57:22,354.354 INFO    ] Checking for camera pi updates...
[2026-06-12 03:57:22,375.375 INFO    ] 200
[2026-06-12 03:57:22,376.376 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:57:22,400.400 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 03:57:22,444.444 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 03:57:22,446.446 INFO    ] No camera update needed
[2026-06-12 03:57:22,447.447 INFO    ] Script finished. Safe exiting...
[2026-06-12 03:57:22,448.448 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 03:57:22,451.451 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 03:57:22,454.454 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 03:57:24,493.493 INFO    ] ================================================
[2026-06-12 03:57:24,508.508 INFO    ] Launching Daemon at Fri Jun 12 03:57:24 IST 2026
[2026-06-12 03:57:24,519.519 INFO    ] ================================================
[2026-06-12 03:57:24,862.862 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 03:57:24
[2026-06-12 03:57:25,173.173 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 03:57:25,304.304 INFO    ] Initializing speech engine...
[2026-06-12 03:57:25,309.309 INFO    ] 2026-06-12 03:57:25
[2026-06-12 03:57:25,536.536 INFO    ] 2026-06-12 03:57:25
[2026-06-12 03:57:25,565.565 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 03:57:25,760.760 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 03:57:25,764.764 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 03:57:25,901.901 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 03:57:25,957.957 INFO    ] time= 12/06/2026 03:57:25
[2026-06-12 03:57:25,985.985 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 03:57:26,007.007 INFO    ] Checking for existing commands in stream...
[2026-06-12 03:57:26,107.107 INFO    ] No existing commands found in stream
[2026-06-12 03:57:31,116.116 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 03:57:31,119.119 INFO    ] Waiting 3.06 seconds before fallback handling...
[2026-06-12 03:57:34,583.583 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 03:57:34,585.585 INFO    ] Checking for system updates...
[2026-06-12 03:57:34,605.605 INFO    ] 200
[2026-06-12 03:57:34,606.606 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:57:34,638.638 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 03:57:34,639.639 INFO    ] No update needed
[2026-06-12 03:57:34,641.641 INFO    ] Checking for camera pi updates...
[2026-06-12 03:57:34,660.660 INFO    ] 200
[2026-06-12 03:57:34,662.662 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:57:34,684.684 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 03:57:34,731.731 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 03:57:34,732.732 INFO    ] No camera update needed
[2026-06-12 03:57:34,733.733 INFO    ] Script finished. Safe exiting...
[2026-06-12 03:57:34,735.735 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 03:57:34,737.737 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 03:57:34,740.740 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 03:57:36,779.779 INFO    ] ================================================
[2026-06-12 03:57:36,794.794 INFO    ] Launching Daemon at Fri Jun 12 03:57:36 IST 2026
[2026-06-12 03:57:36,805.805 INFO    ] ================================================
[2026-06-12 03:57:37,143.143 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 03:57:37
[2026-06-12 03:57:37,456.456 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 03:57:37,591.591 INFO    ] Initializing speech engine...
[2026-06-12 03:57:37,604.604 INFO    ] 2026-06-12 03:57:37
[2026-06-12 03:57:37,819.819 INFO    ] 2026-06-12 03:57:37
[2026-06-12 03:57:37,850.850 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 03:57:38,046.046 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 03:57:38,056.056 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 03:57:38,190.190 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 03:57:38,253.253 INFO    ] time= 12/06/2026 03:57:38
[2026-06-12 03:57:38,271.271 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 03:57:38,294.294 INFO    ] Checking for existing commands in stream...
[2026-06-12 03:57:38,369.369 INFO    ] No existing commands found in stream
[2026-06-12 03:57:43,378.378 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 03:57:43,381.381 INFO    ] Waiting 1.71 seconds before fallback handling...
[2026-06-12 03:57:45,501.501 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 03:57:45,503.503 INFO    ] Checking for system updates...
[2026-06-12 03:57:45,524.524 INFO    ] 200
[2026-06-12 03:57:45,525.525 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:57:45,557.557 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 03:57:45,559.559 INFO    ] No update needed
[2026-06-12 03:57:45,560.560 INFO    ] Checking for camera pi updates...
[2026-06-12 03:57:45,582.582 INFO    ] 200
[2026-06-12 03:57:45,584.584 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:57:45,607.607 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 03:57:45,646.646 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 03:57:45,648.648 INFO    ] No camera update needed
[2026-06-12 03:57:45,649.649 INFO    ] Script finished. Safe exiting...
[2026-06-12 03:57:45,651.651 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 03:57:45,654.654 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 03:57:45,657.657 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 03:57:47,696.696 INFO    ] ================================================
[2026-06-12 03:57:47,711.711 INFO    ] Launching Daemon at Fri Jun 12 03:57:47 IST 2026
[2026-06-12 03:57:47,722.722 INFO    ] ================================================
[2026-06-12 03:57:48,052.052 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 03:57:48
[2026-06-12 03:57:48,365.365 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 03:57:48,507.507 INFO    ] Initializing speech engine...
[2026-06-12 03:57:48,512.512 INFO    ] 2026-06-12 03:57:48
[2026-06-12 03:57:48,716.716 INFO    ] 2026-06-12 03:57:48
[2026-06-12 03:57:48,745.745 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 03:57:48,928.928 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 03:57:48,938.938 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 03:57:49,127.127 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 03:57:49,154.154 INFO    ] time= 12/06/2026 03:57:49
[2026-06-12 03:57:49,156.156 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 03:57:49,162.162 INFO    ] Checking for existing commands in stream...
[2026-06-12 03:57:49,228.228 INFO    ] No existing commands found in stream
[2026-06-12 03:57:54,237.237 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 03:57:54,240.240 INFO    ] Waiting 1.08 seconds before fallback handling...
[2026-06-12 03:57:55,693.693 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 03:57:55,694.694 INFO    ] Checking for system updates...
[2026-06-12 03:57:55,715.715 INFO    ] 200
[2026-06-12 03:57:55,717.717 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:57:55,747.747 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 03:57:55,748.748 INFO    ] No update needed
[2026-06-12 03:57:55,750.750 INFO    ] Checking for camera pi updates...
[2026-06-12 03:57:55,770.770 INFO    ] 200
[2026-06-12 03:57:55,771.771 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:57:55,796.796 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 03:57:55,940.940 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 03:57:55,942.942 INFO    ] No camera update needed
[2026-06-12 03:57:55,943.943 INFO    ] Script finished. Safe exiting...
[2026-06-12 03:57:55,944.944 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 03:57:55,948.948 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 03:57:55,951.951 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 03:57:57,989.989 INFO    ] ================================================
[2026-06-12 03:57:58,005.005 INFO    ] Launching Daemon at Fri Jun 12 03:57:57 IST 2026
[2026-06-12 03:57:58,015.015 INFO    ] ================================================
[2026-06-12 03:57:58,365.365 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 03:57:58
[2026-06-12 03:57:58,675.675 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 03:57:58,817.817 INFO    ] Initializing speech engine...
[2026-06-12 03:57:58,822.822 INFO    ] 2026-06-12 03:57:58
[2026-06-12 03:57:59,025.025 INFO    ] 2026-06-12 03:57:59
[2026-06-12 03:57:59,053.053 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 03:57:59,236.236 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 03:57:59,246.246 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 03:57:59,437.437 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 03:57:59,461.461 INFO    ] time= 12/06/2026 03:57:59
[2026-06-12 03:57:59,467.467 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 03:57:59,468.468 INFO    ] Checking for existing commands in stream...
[2026-06-12 03:57:59,535.535 INFO    ] No existing commands found in stream
[2026-06-12 03:58:04,549.549 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 03:58:04,552.552 INFO    ] Waiting 1.01 seconds before fallback handling...
[2026-06-12 03:58:05,965.965 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 03:58:05,966.966 INFO    ] Checking for system updates...
[2026-06-12 03:58:05,988.988 INFO    ] 200
[2026-06-12 03:58:05,989.989 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:58:06,019.019 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 03:58:06,020.020 INFO    ] No update needed
[2026-06-12 03:58:06,022.022 INFO    ] Checking for camera pi updates...
[2026-06-12 03:58:06,041.041 INFO    ] 200
[2026-06-12 03:58:06,043.043 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:58:06,066.066 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 03:58:06,111.111 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 03:58:06,112.112 INFO    ] No camera update needed
[2026-06-12 03:58:06,114.114 INFO    ] Script finished. Safe exiting...
[2026-06-12 03:58:06,115.115 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 03:58:06,118.118 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 03:58:06,120.120 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 03:58:08,160.160 INFO    ] ================================================
[2026-06-12 03:58:08,175.175 INFO    ] Launching Daemon at Fri Jun 12 03:58:08 IST 2026
[2026-06-12 03:58:08,186.186 INFO    ] ================================================
[2026-06-12 03:58:08,535.535 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 03:58:08
[2026-06-12 03:58:08,870.870 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 03:58:09,009.009 INFO    ] Initializing speech engine...
[2026-06-12 03:58:09,017.017 INFO    ] 2026-06-12 03:58:09
[2026-06-12 03:58:09,236.236 INFO    ] 2026-06-12 03:58:09
[2026-06-12 03:58:09,265.265 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 03:58:09,451.451 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 03:58:09,455.455 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 03:58:09,603.603 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 03:58:09,661.661 INFO    ] time= 12/06/2026 03:58:09
[2026-06-12 03:58:09,684.684 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 03:58:09,691.691 INFO    ] Checking for existing commands in stream...
[2026-06-12 03:58:09,758.758 INFO    ] No existing commands found in stream
[2026-06-12 03:58:14,772.772 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 03:58:14,776.776 INFO    ] Waiting 2.89 seconds before fallback handling...
[2026-06-12 03:58:18,083.083 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 03:58:18,085.085 INFO    ] Checking for system updates...
[2026-06-12 03:58:18,107.107 INFO    ] 200
[2026-06-12 03:58:18,108.108 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:58:18,141.141 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 03:58:18,142.142 INFO    ] No update needed
[2026-06-12 03:58:18,143.143 INFO    ] Checking for camera pi updates...
[2026-06-12 03:58:18,163.163 INFO    ] 200
[2026-06-12 03:58:18,165.165 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:58:18,190.190 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 03:58:18,232.232 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 03:58:18,234.234 INFO    ] No camera update needed
[2026-06-12 03:58:18,235.235 INFO    ] Script finished. Safe exiting...
[2026-06-12 03:58:18,236.236 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 03:58:18,240.240 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 03:58:18,243.243 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 03:58:20,281.281 INFO    ] ================================================
[2026-06-12 03:58:20,296.296 INFO    ] Launching Daemon at Fri Jun 12 03:58:20 IST 2026
[2026-06-12 03:58:20,307.307 INFO    ] ================================================
[2026-06-12 03:58:20,703.703 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 03:58:20
[2026-06-12 03:58:21,036.036 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 03:58:21,178.178 INFO    ] Initializing speech engine...
[2026-06-12 03:58:21,188.188 INFO    ] 2026-06-12 03:58:21
[2026-06-12 03:58:21,393.393 INFO    ] 2026-06-12 03:58:21
[2026-06-12 03:58:21,423.423 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 03:58:21,608.608 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 03:58:21,612.612 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 03:58:21,765.765 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 03:58:21,819.819 INFO    ] time= 12/06/2026 03:58:21
[2026-06-12 03:58:21,842.842 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 03:58:21,848.848 INFO    ] Checking for existing commands in stream...
[2026-06-12 03:58:21,914.914 INFO    ] No existing commands found in stream
[2026-06-12 03:58:26,925.925 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 03:58:26,927.927 INFO    ] Waiting 3.66 seconds before fallback handling...
[2026-06-12 03:58:30,991.991 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 03:58:30,992.992 INFO    ] Checking for system updates...
[2026-06-12 03:58:31,013.013 INFO    ] 200
[2026-06-12 03:58:31,014.014 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:58:31,045.045 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 03:58:31,046.046 INFO    ] No update needed
[2026-06-12 03:58:31,048.048 INFO    ] Checking for camera pi updates...
[2026-06-12 03:58:31,068.068 INFO    ] 200
[2026-06-12 03:58:31,070.070 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:58:31,097.097 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 03:58:31,146.146 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 03:58:31,147.147 INFO    ] No camera update needed
[2026-06-12 03:58:31,149.149 INFO    ] Script finished. Safe exiting...
[2026-06-12 03:58:31,150.150 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 03:58:31,153.153 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 03:58:31,156.156 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 03:58:33,188.188 INFO    ] ================================================
[2026-06-12 03:58:33,203.203 INFO    ] Launching Daemon at Fri Jun 12 03:58:33 IST 2026
[2026-06-12 03:58:33,214.214 INFO    ] ================================================
[2026-06-12 03:58:33,536.536 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 03:58:33
[2026-06-12 03:58:33,847.847 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 03:58:33,991.991 INFO    ] Initializing speech engine...
[2026-06-12 03:58:33,996.996 INFO    ] 2026-06-12 03:58:33
[2026-06-12 03:58:34,202.202 INFO    ] 2026-06-12 03:58:34
[2026-06-12 03:58:34,230.230 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 03:58:34,418.418 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 03:58:34,421.421 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 03:58:34,575.575 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 03:58:34,630.630 INFO    ] time= 12/06/2026 03:58:34
[2026-06-12 03:58:34,652.652 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 03:58:34,659.659 INFO    ] Checking for existing commands in stream...
[2026-06-12 03:58:34,725.725 INFO    ] No existing commands found in stream
[2026-06-12 03:58:39,736.736 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 03:58:39,738.738 INFO    ] Waiting 3.91 seconds before fallback handling...
[2026-06-12 03:58:44,069.069 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 03:58:44,081.081 INFO    ] Checking for system updates...
[2026-06-12 03:58:44,102.102 INFO    ] 200
[2026-06-12 03:58:44,104.104 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:58:44,136.136 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 03:58:44,137.137 INFO    ] No update needed
[2026-06-12 03:58:44,139.139 INFO    ] Checking for camera pi updates...
[2026-06-12 03:58:44,158.158 INFO    ] 200
[2026-06-12 03:58:44,159.159 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:58:44,187.187 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 03:58:44,229.229 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 03:58:44,230.230 INFO    ] No camera update needed
[2026-06-12 03:58:44,232.232 INFO    ] Script finished. Safe exiting...
[2026-06-12 03:58:44,233.233 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 03:58:44,236.236 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 03:58:44,238.238 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 03:58:46,278.278 INFO    ] ================================================
[2026-06-12 03:58:46,293.293 INFO    ] Launching Daemon at Fri Jun 12 03:58:46 IST 2026
[2026-06-12 03:58:46,304.304 INFO    ] ================================================
[2026-06-12 03:58:46,659.659 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 03:58:46
[2026-06-12 03:58:46,977.977 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 03:58:47,121.121 INFO    ] Initializing speech engine...
[2026-06-12 03:58:47,126.126 INFO    ] 2026-06-12 03:58:47
[2026-06-12 03:58:47,331.331 INFO    ] 2026-06-12 03:58:47
[2026-06-12 03:58:47,360.360 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 03:58:47,544.544 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 03:58:47,554.554 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 03:58:47,679.679 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 03:58:47,749.749 INFO    ] time= 12/06/2026 03:58:47
[2026-06-12 03:58:47,773.773 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 03:58:47,774.774 INFO    ] Checking for existing commands in stream...
[2026-06-12 03:58:47,869.869 INFO    ] No existing commands found in stream
[2026-06-12 03:58:52,878.878 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 03:58:52,881.881 INFO    ] Waiting 2.29 seconds before fallback handling...
[2026-06-12 03:58:55,570.570 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 03:58:55,572.572 INFO    ] Checking for system updates...
[2026-06-12 03:58:55,593.593 INFO    ] 200
[2026-06-12 03:58:55,594.594 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:58:55,624.624 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 03:58:55,625.625 INFO    ] No update needed
[2026-06-12 03:58:55,627.627 INFO    ] Checking for camera pi updates...
[2026-06-12 03:58:55,646.646 INFO    ] 200
[2026-06-12 03:58:55,647.647 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:58:55,670.670 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 03:58:55,707.707 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 03:58:55,709.709 INFO    ] No camera update needed
[2026-06-12 03:58:55,710.710 INFO    ] Script finished. Safe exiting...
[2026-06-12 03:58:55,711.711 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 03:58:55,714.714 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 03:58:55,717.717 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 03:58:57,755.755 INFO    ] ================================================
[2026-06-12 03:58:57,770.770 INFO    ] Launching Daemon at Fri Jun 12 03:58:57 IST 2026
[2026-06-12 03:58:57,781.781 INFO    ] ================================================
[2026-06-12 03:58:58,132.132 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 03:58:58
[2026-06-12 03:58:58,444.444 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 03:58:58,574.574 INFO    ] Initializing speech engine...
[2026-06-12 03:58:58,578.578 INFO    ] 2026-06-12 03:58:58
[2026-06-12 03:58:58,797.797 INFO    ] 2026-06-12 03:58:58
[2026-06-12 03:58:58,825.825 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 03:58:59,009.009 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 03:58:59,013.013 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 03:58:59,155.155 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 03:58:59,218.218 INFO    ] time= 12/06/2026 03:58:59
[2026-06-12 03:58:59,242.242 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 03:58:59,248.248 INFO    ] Checking for existing commands in stream...
[2026-06-12 03:58:59,315.315 INFO    ] No existing commands found in stream
[2026-06-12 03:59:04,324.324 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 03:59:04,327.327 INFO    ] Waiting 0.18 seconds before fallback handling...
[2026-06-12 03:59:04,903.903 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 03:59:04,905.905 INFO    ] Checking for system updates...
[2026-06-12 03:59:04,942.942 INFO    ] 200
[2026-06-12 03:59:04,944.944 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:59:05,005.005 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 03:59:05,007.007 INFO    ] No update needed
[2026-06-12 03:59:05,010.010 INFO    ] Checking for camera pi updates...
[2026-06-12 03:59:05,040.040 INFO    ] 200
[2026-06-12 03:59:05,041.041 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:59:05,066.066 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 03:59:05,101.101 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 03:59:05,103.103 INFO    ] No camera update needed
[2026-06-12 03:59:05,104.104 INFO    ] Script finished. Safe exiting...
[2026-06-12 03:59:05,105.105 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 03:59:05,108.108 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 03:59:05,111.111 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 03:59:07,149.149 INFO    ] ================================================
[2026-06-12 03:59:07,164.164 INFO    ] Launching Daemon at Fri Jun 12 03:59:07 IST 2026
[2026-06-12 03:59:07,175.175 INFO    ] ================================================
[2026-06-12 03:59:07,529.529 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 03:59:07
[2026-06-12 03:59:07,841.841 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 03:59:07,969.969 INFO    ] Initializing speech engine...
[2026-06-12 03:59:07,974.974 INFO    ] 2026-06-12 03:59:07
[2026-06-12 03:59:08,189.189 INFO    ] 2026-06-12 03:59:08
[2026-06-12 03:59:08,219.219 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 03:59:08,401.401 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 03:59:08,411.411 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 03:59:08,584.584 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 03:59:08,623.623 INFO    ] time= 12/06/2026 03:59:08
[2026-06-12 03:59:08,628.628 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 03:59:08,634.634 INFO    ] Checking for existing commands in stream...
[2026-06-12 03:59:08,699.699 INFO    ] No existing commands found in stream
[2026-06-12 03:59:13,709.709 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 03:59:13,712.712 INFO    ] Waiting 0.41 seconds before fallback handling...
[2026-06-12 03:59:14,498.498 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 03:59:14,500.500 INFO    ] Checking for system updates...
[2026-06-12 03:59:14,522.522 INFO    ] 200
[2026-06-12 03:59:14,523.523 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:59:14,556.556 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 03:59:14,558.558 INFO    ] No update needed
[2026-06-12 03:59:14,559.559 INFO    ] Checking for camera pi updates...
[2026-06-12 03:59:14,581.581 INFO    ] 200
[2026-06-12 03:59:14,582.582 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:59:14,608.608 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 03:59:14,645.645 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 03:59:14,646.646 INFO    ] No camera update needed
[2026-06-12 03:59:14,648.648 INFO    ] Script finished. Safe exiting...
[2026-06-12 03:59:14,649.649 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 03:59:14,652.652 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 03:59:14,655.655 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 03:59:16,694.694 INFO    ] ================================================
[2026-06-12 03:59:16,709.709 INFO    ] Launching Daemon at Fri Jun 12 03:59:16 IST 2026
[2026-06-12 03:59:16,719.719 INFO    ] ================================================
[2026-06-12 03:59:17,091.091 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 03:59:17
[2026-06-12 03:59:17,428.428 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 03:59:17,577.577 INFO    ] Initializing speech engine...
[2026-06-12 03:59:17,582.582 INFO    ] 2026-06-12 03:59:17
[2026-06-12 03:59:17,792.792 INFO    ] 2026-06-12 03:59:17
[2026-06-12 03:59:17,821.821 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 03:59:18,004.004 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 03:59:18,014.014 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 03:59:18,141.141 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 03:59:18,202.202 INFO    ] time= 12/06/2026 03:59:18
[2026-06-12 03:59:18,235.235 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 03:59:18,241.241 INFO    ] Checking for existing commands in stream...
[2026-06-12 03:59:18,308.308 INFO    ] No existing commands found in stream
[2026-06-12 03:59:23,317.317 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 03:59:23,320.320 INFO    ] Waiting 1.63 seconds before fallback handling...
[2026-06-12 03:59:25,328.328 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 03:59:25,329.329 INFO    ] Checking for system updates...
[2026-06-12 03:59:25,351.351 INFO    ] 200
[2026-06-12 03:59:25,352.352 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:59:25,390.390 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 03:59:25,392.392 INFO    ] No update needed
[2026-06-12 03:59:25,393.393 INFO    ] Checking for camera pi updates...
[2026-06-12 03:59:25,413.413 INFO    ] 200
[2026-06-12 03:59:25,414.414 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:59:25,439.439 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 03:59:25,484.484 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 03:59:25,486.486 INFO    ] No camera update needed
[2026-06-12 03:59:25,487.487 INFO    ] Script finished. Safe exiting...
[2026-06-12 03:59:25,488.488 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 03:59:25,491.491 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 03:59:25,494.494 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 03:59:27,532.532 INFO    ] ================================================
[2026-06-12 03:59:27,547.547 INFO    ] Launching Daemon at Fri Jun 12 03:59:27 IST 2026
[2026-06-12 03:59:27,558.558 INFO    ] ================================================
[2026-06-12 03:59:27,915.915 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 03:59:27
[2026-06-12 03:59:28,226.226 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 03:59:28,369.369 INFO    ] Initializing speech engine...
[2026-06-12 03:59:28,374.374 INFO    ] 2026-06-12 03:59:28
[2026-06-12 03:59:28,578.578 INFO    ] 2026-06-12 03:59:28
[2026-06-12 03:59:28,606.606 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 03:59:28,728.728 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 03:59:28,790.790 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 03:59:28,927.927 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 03:59:28,995.995 INFO    ] time= 12/06/2026 03:59:28
[2026-06-12 03:59:29,018.018 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 03:59:29,025.025 INFO    ] Checking for existing commands in stream...
[2026-06-12 03:59:29,091.091 INFO    ] No existing commands found in stream
[2026-06-12 03:59:34,100.100 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 03:59:34,103.103 INFO    ] Waiting 3.23 seconds before fallback handling...
[2026-06-12 03:59:37,711.711 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 03:59:37,712.712 INFO    ] Checking for system updates...
[2026-06-12 03:59:37,733.733 INFO    ] 200
[2026-06-12 03:59:37,734.734 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:59:37,768.768 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 03:59:37,769.769 INFO    ] No update needed
[2026-06-12 03:59:37,771.771 INFO    ] Checking for camera pi updates...
[2026-06-12 03:59:37,791.791 INFO    ] 200
[2026-06-12 03:59:37,793.793 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:59:37,817.817 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 03:59:37,862.862 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 03:59:37,863.863 INFO    ] No camera update needed
[2026-06-12 03:59:37,865.865 INFO    ] Script finished. Safe exiting...
[2026-06-12 03:59:37,866.866 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 03:59:37,869.869 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 03:59:37,872.872 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 03:59:39,913.913 INFO    ] ================================================
[2026-06-12 03:59:39,928.928 INFO    ] Launching Daemon at Fri Jun 12 03:59:39 IST 2026
[2026-06-12 03:59:39,939.939 INFO    ] ================================================
[2026-06-12 03:59:40,326.326 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 03:59:40
[2026-06-12 03:59:40,666.666 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 03:59:40,817.817 INFO    ] Initializing speech engine...
[2026-06-12 03:59:40,823.823 INFO    ] 2026-06-12 03:59:40
[2026-06-12 03:59:41,034.034 INFO    ] 2026-06-12 03:59:41
[2026-06-12 03:59:41,063.063 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 03:59:41,250.250 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 03:59:41,260.260 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 03:59:41,418.418 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 03:59:41,463.463 INFO    ] time= 12/06/2026 03:59:41
[2026-06-12 03:59:41,484.484 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 03:59:41,490.490 INFO    ] Checking for existing commands in stream...
[2026-06-12 03:59:41,557.557 INFO    ] No existing commands found in stream
[2026-06-12 03:59:46,572.572 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 03:59:46,575.575 INFO    ] Waiting 2.44 seconds before fallback handling...
[2026-06-12 03:59:49,411.411 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 03:59:49,413.413 INFO    ] Checking for system updates...
[2026-06-12 03:59:49,433.433 INFO    ] 200
[2026-06-12 03:59:49,435.435 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:59:49,467.467 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 03:59:49,469.469 INFO    ] No update needed
[2026-06-12 03:59:49,470.470 INFO    ] Checking for camera pi updates...
[2026-06-12 03:59:49,489.489 INFO    ] 200
[2026-06-12 03:59:49,491.491 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 03:59:49,517.517 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 03:59:49,562.562 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 03:59:49,563.563 INFO    ] No camera update needed
[2026-06-12 03:59:49,564.564 INFO    ] Script finished. Safe exiting...
[2026-06-12 03:59:49,566.566 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 03:59:49,569.569 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 03:59:49,572.572 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 03:59:51,611.611 INFO    ] ================================================
[2026-06-12 03:59:51,632.632 INFO    ] Launching Daemon at Fri Jun 12 03:59:51 IST 2026
[2026-06-12 03:59:51,643.643 INFO    ] ================================================
[2026-06-12 03:59:51,995.995 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 03:59:51
[2026-06-12 03:59:52,307.307 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 03:59:52,450.450 INFO    ] Initializing speech engine...
[2026-06-12 03:59:52,455.455 INFO    ] 2026-06-12 03:59:52
[2026-06-12 03:59:52,661.661 INFO    ] 2026-06-12 03:59:52
[2026-06-12 03:59:52,690.690 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 03:59:52,877.877 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 03:59:52,885.885 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 03:59:53,012.012 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 03:59:53,064.064 INFO    ] time= 12/06/2026 03:59:53
[2026-06-12 03:59:53,104.104 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 03:59:53,110.110 INFO    ] Checking for existing commands in stream...
[2026-06-12 03:59:53,182.182 INFO    ] No existing commands found in stream
[2026-06-12 03:59:58,191.191 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 03:59:58,194.194 INFO    ] Waiting 3.27 seconds before fallback handling...
[2026-06-12 04:00:01,863.863 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 04:00:01,864.864 INFO    ] Checking for system updates...
[2026-06-12 04:00:01,887.887 INFO    ] 200
[2026-06-12 04:00:01,888.888 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:00:01,922.922 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 04:00:01,933.933 INFO    ] No update needed
[2026-06-12 04:00:01,937.937 INFO    ] Checking for camera pi updates...
[2026-06-12 04:00:01,983.983 INFO    ] 200
[2026-06-12 04:00:01,986.986 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:00:02,066.066 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 04:00:02,452.452 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 04:00:02,454.454 INFO    ] No camera update needed
[2026-06-12 04:00:02,462.462 INFO    ] Script finished. Safe exiting...
[2026-06-12 04:00:02,465.465 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 04:00:02,494.494 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 04:00:02,498.498 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 04:00:04,577.577 INFO    ] ================================================
[2026-06-12 04:00:04,619.619 INFO    ] Launching Daemon at Fri Jun 12 04:00:04 IST 2026
[2026-06-12 04:00:04,631.631 INFO    ] ================================================
[2026-06-12 04:00:05,017.017 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 04:00:05
[2026-06-12 04:00:05,343.343 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 04:00:05,483.483 INFO    ] Initializing speech engine...
[2026-06-12 04:00:05,486.486 INFO    ] 2026-06-12 04:00:05
[2026-06-12 04:00:05,740.740 INFO    ] 2026-06-12 04:00:05
[2026-06-12 04:00:05,773.773 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 04:00:05,930.930 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 04:00:05,966.966 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 04:00:06,126.126 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 04:00:06,184.184 INFO    ] time= 12/06/2026 04:00:06
[2026-06-12 04:00:06,209.209 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 04:00:06,216.216 INFO    ] Checking for existing commands in stream...
[2026-06-12 04:00:06,284.284 INFO    ] No existing commands found in stream
[2026-06-12 04:00:11,294.294 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 04:00:11,297.297 INFO    ] Waiting 2.17 seconds before fallback handling...
[2026-06-12 04:00:13,847.847 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 04:00:13,848.848 INFO    ] Checking for system updates...
[2026-06-12 04:00:13,870.870 INFO    ] 200
[2026-06-12 04:00:13,872.872 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:00:13,905.905 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 04:00:13,906.906 INFO    ] No update needed
[2026-06-12 04:00:13,907.907 INFO    ] Checking for camera pi updates...
[2026-06-12 04:00:13,931.931 INFO    ] 200
[2026-06-12 04:00:13,932.932 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:00:13,959.959 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 04:00:14,000.000 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 04:00:14,002.002 INFO    ] No camera update needed
[2026-06-12 04:00:14,003.003 INFO    ] Script finished. Safe exiting...
[2026-06-12 04:00:14,004.004 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 04:00:14,007.007 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 04:00:14,011.011 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 04:00:16,050.050 INFO    ] ================================================
[2026-06-12 04:00:16,065.065 INFO    ] Launching Daemon at Fri Jun 12 04:00:16 IST 2026
[2026-06-12 04:00:16,076.076 INFO    ] ================================================
[2026-06-12 04:00:16,403.403 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 04:00:16
[2026-06-12 04:00:16,715.715 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 04:00:16,857.857 INFO    ] Initializing speech engine...
[2026-06-12 04:00:16,862.862 INFO    ] 2026-06-12 04:00:16
[2026-06-12 04:00:17,064.064 INFO    ] 2026-06-12 04:00:17
[2026-06-12 04:00:17,094.094 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 04:00:17,277.277 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 04:00:17,286.286 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 04:00:17,468.468 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 04:00:17,506.506 INFO    ] time= 12/06/2026 04:00:17
[2026-06-12 04:00:17,508.508 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 04:00:17,514.514 INFO    ] Checking for existing commands in stream...
[2026-06-12 04:00:17,581.581 INFO    ] No existing commands found in stream
[2026-06-12 04:00:22,595.595 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 04:00:22,599.599 INFO    ] Waiting 2.87 seconds before fallback handling...
[2026-06-12 04:00:25,852.852 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 04:00:25,854.854 INFO    ] Checking for system updates...
[2026-06-12 04:00:25,875.875 INFO    ] 200
[2026-06-12 04:00:25,876.876 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:00:25,907.907 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 04:00:25,908.908 INFO    ] No update needed
[2026-06-12 04:00:25,910.910 INFO    ] Checking for camera pi updates...
[2026-06-12 04:00:25,929.929 INFO    ] 200
[2026-06-12 04:00:25,931.931 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:00:25,954.954 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 04:00:25,996.996 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 04:00:25,998.998 INFO    ] No camera update needed
[2026-06-12 04:00:25,999.999 INFO    ] Script finished. Safe exiting...
[2026-06-12 04:00:26,000.000 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 04:00:26,003.003 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 04:00:26,006.006 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 04:00:28,045.045 INFO    ] ================================================
[2026-06-12 04:00:28,061.061 INFO    ] Launching Daemon at Fri Jun 12 04:00:28 IST 2026
[2026-06-12 04:00:28,071.071 INFO    ] ================================================
[2026-06-12 04:00:28,406.406 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 04:00:28
[2026-06-12 04:00:28,724.724 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 04:00:28,864.864 INFO    ] Initializing speech engine...
[2026-06-12 04:00:28,874.874 INFO    ] 2026-06-12 04:00:28
[2026-06-12 04:00:29,079.079 INFO    ] 2026-06-12 04:00:29
[2026-06-12 04:00:29,107.107 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 04:00:29,276.276 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 04:00:29,295.295 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 04:00:29,437.437 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 04:00:29,499.499 INFO    ] time= 12/06/2026 04:00:29
[2026-06-12 04:00:29,523.523 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 04:00:29,529.529 INFO    ] Checking for existing commands in stream...
[2026-06-12 04:00:29,596.596 INFO    ] No existing commands found in stream
[2026-06-12 04:00:34,602.602 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 04:00:34,605.605 INFO    ] Waiting 3.22 seconds before fallback handling...
[2026-06-12 04:00:38,198.198 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 04:00:38,583.583 INFO    ] Checking for system updates...
[2026-06-12 04:00:38,604.604 INFO    ] 200
[2026-06-12 04:00:38,606.606 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:00:38,637.637 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 04:00:38,639.639 INFO    ] No update needed
[2026-06-12 04:00:38,640.640 INFO    ] Checking for camera pi updates...
[2026-06-12 04:00:38,660.660 INFO    ] 200
[2026-06-12 04:00:38,661.661 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:00:38,686.686 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 04:00:38,725.725 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 04:00:38,726.726 INFO    ] No camera update needed
[2026-06-12 04:00:38,728.728 INFO    ] Script finished. Safe exiting...
[2026-06-12 04:00:38,729.729 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 04:00:38,732.732 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 04:00:38,735.735 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 04:00:40,773.773 INFO    ] ================================================
[2026-06-12 04:00:40,788.788 INFO    ] Launching Daemon at Fri Jun 12 04:00:40 IST 2026
[2026-06-12 04:00:40,799.799 INFO    ] ================================================
[2026-06-12 04:00:41,146.146 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 04:00:41
[2026-06-12 04:00:41,457.457 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 04:00:41,599.599 INFO    ] Initializing speech engine...
[2026-06-12 04:00:41,604.604 INFO    ] 2026-06-12 04:00:41
[2026-06-12 04:00:41,807.807 INFO    ] 2026-06-12 04:00:41
[2026-06-12 04:00:41,836.836 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 04:00:42,018.018 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 04:00:42,028.028 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 04:00:42,154.154 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 04:00:42,215.215 INFO    ] time= 12/06/2026 04:00:42
[2026-06-12 04:00:42,246.246 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 04:00:42,253.253 INFO    ] Checking for existing commands in stream...
[2026-06-12 04:00:42,319.319 INFO    ] No existing commands found in stream
[2026-06-12 04:00:47,328.328 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 04:00:47,331.331 INFO    ] Waiting 2.90 seconds before fallback handling...
[2026-06-12 04:00:50,625.625 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 04:00:50,627.627 INFO    ] Checking for system updates...
[2026-06-12 04:00:50,659.659 INFO    ] 200
[2026-06-12 04:00:50,661.661 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:00:50,692.692 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 04:00:50,693.693 INFO    ] No update needed
[2026-06-12 04:00:50,694.694 INFO    ] Checking for camera pi updates...
[2026-06-12 04:00:50,713.713 INFO    ] 200
[2026-06-12 04:00:50,715.715 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:00:50,738.738 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 04:00:50,782.782 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 04:00:50,783.783 INFO    ] No camera update needed
[2026-06-12 04:00:50,785.785 INFO    ] Script finished. Safe exiting...
[2026-06-12 04:00:50,786.786 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 04:00:50,789.789 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 04:00:50,792.792 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 04:00:52,832.832 INFO    ] ================================================
[2026-06-12 04:00:52,847.847 INFO    ] Launching Daemon at Fri Jun 12 04:00:52 IST 2026
[2026-06-12 04:00:52,857.857 INFO    ] ================================================
[2026-06-12 04:00:53,215.215 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 04:00:53
[2026-06-12 04:00:53,526.526 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 04:00:53,663.663 INFO    ] Initializing speech engine...
[2026-06-12 04:00:53,672.672 INFO    ] 2026-06-12 04:00:53
[2026-06-12 04:00:53,879.879 INFO    ] 2026-06-12 04:00:53
[2026-06-12 04:00:53,907.907 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 04:00:54,093.093 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 04:00:54,102.102 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 04:00:54,238.238 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 04:00:54,301.301 INFO    ] time= 12/06/2026 04:00:54
[2026-06-12 04:00:54,325.325 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 04:00:54,331.331 INFO    ] Checking for existing commands in stream...
[2026-06-12 04:00:54,422.422 INFO    ] No existing commands found in stream
[2026-06-12 04:00:59,437.437 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 04:00:59,440.440 INFO    ] Waiting 3.98 seconds before fallback handling...
[2026-06-12 04:01:03,818.818 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 04:01:03,819.819 INFO    ] Checking for system updates...
[2026-06-12 04:01:03,840.840 INFO    ] 200
[2026-06-12 04:01:03,842.842 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:01:03,875.875 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 04:01:03,876.876 INFO    ] No update needed
[2026-06-12 04:01:03,878.878 INFO    ] Checking for camera pi updates...
[2026-06-12 04:01:03,897.897 INFO    ] 200
[2026-06-12 04:01:03,898.898 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:01:03,923.923 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 04:01:03,963.963 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 04:01:03,965.965 INFO    ] No camera update needed
[2026-06-12 04:01:03,966.966 INFO    ] Script finished. Safe exiting...
[2026-06-12 04:01:03,967.967 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 04:01:03,970.970 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 04:01:03,973.973 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 04:01:06,013.013 INFO    ] ================================================
[2026-06-12 04:01:06,029.029 INFO    ] Launching Daemon at Fri Jun 12 04:01:06 IST 2026
[2026-06-12 04:01:06,040.040 INFO    ] ================================================
[2026-06-12 04:01:06,422.422 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 04:01:06
[2026-06-12 04:01:06,753.753 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 04:01:06,890.890 INFO    ] Initializing speech engine...
[2026-06-12 04:01:06,898.898 INFO    ] 2026-06-12 04:01:06
[2026-06-12 04:01:07,113.113 INFO    ] 2026-06-12 04:01:07
[2026-06-12 04:01:07,141.141 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 04:01:07,326.326 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 04:01:07,336.336 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 04:01:07,524.524 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 04:01:07,553.553 INFO    ] time= 12/06/2026 04:01:07
[2026-06-12 04:01:07,559.559 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 04:01:07,561.561 INFO    ] Checking for existing commands in stream...
[2026-06-12 04:01:07,651.651 INFO    ] No existing commands found in stream
[2026-06-12 04:01:12,659.659 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 04:01:12,661.661 INFO    ] Waiting 1.37 seconds before fallback handling...
[2026-06-12 04:01:14,367.367 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 04:01:14,369.369 INFO    ] Checking for system updates...
[2026-06-12 04:01:14,482.482 INFO    ] 200
[2026-06-12 04:01:14,483.483 INFO    ] {"msg": "Status of machine", "state": "STATE_HEALTH_CHECK", "status": true}
[2026-06-12 04:01:14,485.485 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping update check
[2026-06-12 04:01:14,486.486 INFO    ] Checking for camera pi updates...
[2026-06-12 04:01:14,515.515 INFO    ] 200
[2026-06-12 04:01:14,517.517 INFO    ] {"msg": "Status of machine", "state": "STATE_HEALTH_CHECK", "status": true}
[2026-06-12 04:01:14,518.518 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping camera update check
[2026-06-12 04:01:14,520.520 INFO    ] Script finished. Safe exiting...
[2026-06-12 04:01:14,522.522 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 04:01:14,525.525 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 04:01:14,529.529 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 04:01:16,560.560 INFO    ] ================================================
[2026-06-12 04:01:16,577.577 INFO    ] Launching Daemon at Fri Jun 12 04:01:16 IST 2026
[2026-06-12 04:01:16,588.588 INFO    ] ================================================
[2026-06-12 04:01:16,941.941 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 04:01:16
[2026-06-12 04:01:17,256.256 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 04:01:17,389.389 INFO    ] Initializing speech engine...
[2026-06-12 04:01:17,395.395 INFO    ] 2026-06-12 04:01:17
[2026-06-12 04:01:17,592.592 INFO    ] 2026-06-12 04:01:17
[2026-06-12 04:01:17,629.629 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 04:01:17,837.837 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 04:01:17,846.846 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 04:01:17,997.997 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 04:01:18,046.046 INFO    ] time= 12/06/2026 04:01:18
[2026-06-12 04:01:18,067.067 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 04:01:18,074.074 INFO    ] Checking for existing commands in stream...
[2026-06-12 04:01:18,139.139 INFO    ] No existing commands found in stream
[2026-06-12 04:01:23,149.149 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 04:01:23,153.153 INFO    ] Waiting 2.46 seconds before fallback handling...
[2026-06-12 04:01:26,010.010 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 04:01:26,012.012 INFO    ] Checking for system updates...
[2026-06-12 04:01:26,032.032 INFO    ] 200
[2026-06-12 04:01:26,034.034 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:01:26,064.064 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 04:01:26,065.065 INFO    ] No update needed
[2026-06-12 04:01:26,066.066 INFO    ] Checking for camera pi updates...
[2026-06-12 04:01:26,088.088 INFO    ] 200
[2026-06-12 04:01:26,090.090 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:01:26,113.113 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 04:01:26,152.152 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 04:01:26,153.153 INFO    ] No camera update needed
[2026-06-12 04:01:26,155.155 INFO    ] Script finished. Safe exiting...
[2026-06-12 04:01:26,156.156 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 04:01:26,159.159 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 04:01:26,162.162 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 04:01:28,201.201 INFO    ] ================================================
[2026-06-12 04:01:28,217.217 INFO    ] Launching Daemon at Fri Jun 12 04:01:28 IST 2026
[2026-06-12 04:01:28,229.229 INFO    ] ================================================
[2026-06-12 04:01:28,592.592 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 04:01:28
[2026-06-12 04:01:28,903.903 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 04:01:29,045.045 INFO    ] Initializing speech engine...
[2026-06-12 04:01:29,050.050 INFO    ] 2026-06-12 04:01:29
[2026-06-12 04:01:29,253.253 INFO    ] 2026-06-12 04:01:29
[2026-06-12 04:01:29,280.280 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 04:01:29,464.464 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 04:01:29,475.475 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 04:01:29,657.657 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 04:01:29,689.689 INFO    ] time= 12/06/2026 04:01:29
[2026-06-12 04:01:29,691.691 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 04:01:29,696.696 INFO    ] Checking for existing commands in stream...
[2026-06-12 04:01:29,761.761 INFO    ] No existing commands found in stream
[2026-06-12 04:01:34,772.772 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 04:01:34,774.774 INFO    ] Waiting 2.32 seconds before fallback handling...
[2026-06-12 04:01:37,444.444 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 04:01:37,446.446 INFO    ] Checking for system updates...
[2026-06-12 04:01:37,466.466 INFO    ] 200
[2026-06-12 04:01:37,467.467 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:01:37,497.497 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 04:01:37,499.499 INFO    ] No update needed
[2026-06-12 04:01:37,500.500 INFO    ] Checking for camera pi updates...
[2026-06-12 04:01:37,521.521 INFO    ] 200
[2026-06-12 04:01:37,522.522 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:01:37,545.545 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 04:01:37,586.586 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 04:01:37,587.587 INFO    ] No camera update needed
[2026-06-12 04:01:37,588.588 INFO    ] Script finished. Safe exiting...
[2026-06-12 04:01:37,590.590 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 04:01:37,593.593 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 04:01:37,595.595 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 04:01:39,635.635 INFO    ] ================================================
[2026-06-12 04:01:39,651.651 INFO    ] Launching Daemon at Fri Jun 12 04:01:39 IST 2026
[2026-06-12 04:01:39,662.662 INFO    ] ================================================
[2026-06-12 04:01:40,017.017 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 04:01:40
[2026-06-12 04:01:40,356.356 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 04:01:40,514.514 INFO    ] Initializing speech engine...
[2026-06-12 04:01:40,518.518 INFO    ] 2026-06-12 04:01:40
[2026-06-12 04:01:40,724.724 INFO    ] 2026-06-12 04:01:40
[2026-06-12 04:01:40,753.753 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 04:01:40,938.938 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 04:01:40,942.942 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 04:01:41,077.077 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 04:01:41,145.145 INFO    ] time= 12/06/2026 04:01:41
[2026-06-12 04:01:41,169.169 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 04:01:41,176.176 INFO    ] Checking for existing commands in stream...
[2026-06-12 04:01:41,243.243 INFO    ] No existing commands found in stream
[2026-06-12 04:01:46,257.257 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 04:01:46,261.261 INFO    ] Waiting 0.40 seconds before fallback handling...
[2026-06-12 04:01:47,039.039 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 04:01:47,040.040 INFO    ] Checking for system updates...
[2026-06-12 04:01:47,061.061 INFO    ] 200
[2026-06-12 04:01:47,062.062 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:01:47,094.094 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 04:01:47,096.096 INFO    ] No update needed
[2026-06-12 04:01:47,097.097 INFO    ] Checking for camera pi updates...
[2026-06-12 04:01:47,116.116 INFO    ] 200
[2026-06-12 04:01:47,117.117 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:01:47,140.140 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 04:01:47,186.186 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 04:01:47,187.187 INFO    ] No camera update needed
[2026-06-12 04:01:47,188.188 INFO    ] Script finished. Safe exiting...
[2026-06-12 04:01:47,189.189 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 04:01:47,192.192 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 04:01:47,195.195 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 04:01:49,234.234 INFO    ] ================================================
[2026-06-12 04:01:49,250.250 INFO    ] Launching Daemon at Fri Jun 12 04:01:49 IST 2026
[2026-06-12 04:01:49,261.261 INFO    ] ================================================
[2026-06-12 04:01:49,627.627 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 04:01:49
[2026-06-12 04:01:49,962.962 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 04:01:50,102.102 INFO    ] Initializing speech engine...
[2026-06-12 04:01:50,110.110 INFO    ] 2026-06-12 04:01:50
[2026-06-12 04:01:50,325.325 INFO    ] 2026-06-12 04:01:50
[2026-06-12 04:01:50,355.355 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 04:01:50,539.539 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 04:01:50,549.549 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 04:01:50,699.699 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 04:01:50,748.748 INFO    ] time= 12/06/2026 04:01:50
[2026-06-12 04:01:50,770.770 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 04:01:50,776.776 INFO    ] Checking for existing commands in stream...
[2026-06-12 04:01:50,843.843 INFO    ] No existing commands found in stream
[2026-06-12 04:01:55,876.876 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 04:01:55,885.885 INFO    ] Waiting 1.54 seconds before fallback handling...
[2026-06-12 04:01:57,804.804 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 04:01:57,806.806 INFO    ] Checking for system updates...
[2026-06-12 04:01:57,828.828 INFO    ] 200
[2026-06-12 04:01:57,829.829 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:01:57,862.862 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 04:01:57,864.864 INFO    ] No update needed
[2026-06-12 04:01:57,865.865 INFO    ] Checking for camera pi updates...
[2026-06-12 04:01:57,885.885 INFO    ] 200
[2026-06-12 04:01:57,887.887 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:01:57,913.913 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 04:01:57,948.948 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 04:01:57,949.949 INFO    ] No camera update needed
[2026-06-12 04:01:57,951.951 INFO    ] Script finished. Safe exiting...
[2026-06-12 04:01:57,953.953 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 04:01:57,957.957 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 04:01:57,960.960 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 04:02:00,001.001 INFO    ] ================================================
[2026-06-12 04:02:00,015.015 INFO    ] Launching Daemon at Fri Jun 12 04:02:00 IST 2026
[2026-06-12 04:02:00,026.026 INFO    ] ================================================
[2026-06-12 04:02:00,367.367 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 04:02:00
[2026-06-12 04:02:00,678.678 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 04:02:00,808.808 INFO    ] Initializing speech engine...
[2026-06-12 04:02:00,813.813 INFO    ] 2026-06-12 04:02:00
[2026-06-12 04:02:01,033.033 INFO    ] 2026-06-12 04:02:01
[2026-06-12 04:02:01,062.062 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 04:02:01,253.253 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 04:02:01,255.255 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 04:02:01,389.389 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 04:02:01,488.488 INFO    ] time= 12/06/2026 04:02:01
[2026-06-12 04:02:01,509.509 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 04:02:01,563.563 INFO    ] Checking for existing commands in stream...
[2026-06-12 04:02:01,644.644 INFO    ] No existing commands found in stream
[2026-06-12 04:02:06,673.673 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 04:02:06,676.676 INFO    ] Waiting 2.00 seconds before fallback handling...
[2026-06-12 04:02:09,083.083 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 04:02:09,085.085 INFO    ] Checking for system updates...
[2026-06-12 04:02:09,105.105 INFO    ] 200
[2026-06-12 04:02:09,106.106 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:02:09,142.142 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 04:02:09,143.143 INFO    ] No update needed
[2026-06-12 04:02:09,144.144 INFO    ] Checking for camera pi updates...
[2026-06-12 04:02:09,164.164 INFO    ] 200
[2026-06-12 04:02:09,165.165 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:02:09,188.188 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 04:02:09,329.329 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 04:02:09,330.330 INFO    ] No camera update needed
[2026-06-12 04:02:09,332.332 INFO    ] Script finished. Safe exiting...
[2026-06-12 04:02:09,333.333 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 04:02:09,336.336 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 04:02:09,339.339 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 04:02:11,376.376 INFO    ] ================================================
[2026-06-12 04:02:11,392.392 INFO    ] Launching Daemon at Fri Jun 12 04:02:11 IST 2026
[2026-06-12 04:02:11,403.403 INFO    ] ================================================
[2026-06-12 04:02:11,766.766 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 04:02:11
[2026-06-12 04:02:12,077.077 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 04:02:12,219.219 INFO    ] Initializing speech engine...
[2026-06-12 04:02:12,225.225 INFO    ] 2026-06-12 04:02:12
[2026-06-12 04:02:12,430.430 INFO    ] 2026-06-12 04:02:12
[2026-06-12 04:02:12,458.458 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 04:02:12,645.645 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 04:02:12,653.653 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 04:02:12,843.843 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 04:02:12,872.872 INFO    ] time= 12/06/2026 04:02:12
[2026-06-12 04:02:12,877.877 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 04:02:12,879.879 INFO    ] Checking for existing commands in stream...
[2026-06-12 04:02:12,946.946 INFO    ] No existing commands found in stream
[2026-06-12 04:02:17,961.961 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 04:02:17,963.963 INFO    ] Waiting 1.27 seconds before fallback handling...
[2026-06-12 04:02:19,625.625 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 04:02:19,627.627 INFO    ] Checking for system updates...
[2026-06-12 04:02:19,649.649 INFO    ] 200
[2026-06-12 04:02:19,651.651 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:02:19,681.681 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 04:02:19,682.682 INFO    ] No update needed
[2026-06-12 04:02:19,683.683 INFO    ] Checking for camera pi updates...
[2026-06-12 04:02:19,703.703 INFO    ] 200
[2026-06-12 04:02:19,704.704 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:02:19,727.727 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 04:02:19,765.765 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 04:02:19,766.766 INFO    ] No camera update needed
[2026-06-12 04:02:19,767.767 INFO    ] Script finished. Safe exiting...
[2026-06-12 04:02:19,768.768 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 04:02:19,772.772 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 04:02:19,774.774 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 04:02:21,804.804 INFO    ] ================================================
[2026-06-12 04:02:21,812.812 INFO    ] Launching Daemon at Fri Jun 12 04:02:21 IST 2026
[2026-06-12 04:02:21,818.818 INFO    ] ================================================
[2026-06-12 04:02:22,119.119 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 04:02:22
[2026-06-12 04:02:22,431.431 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 04:02:22,562.562 INFO    ] Initializing speech engine...
[2026-06-12 04:02:22,566.566 INFO    ] 2026-06-12 04:02:22
[2026-06-12 04:02:22,782.782 INFO    ] 2026-06-12 04:02:22
[2026-06-12 04:02:22,810.810 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 04:02:22,994.994 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 04:02:23,004.004 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 04:02:23,189.189 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 04:02:23,222.222 INFO    ] time= 12/06/2026 04:02:23
[2026-06-12 04:02:23,228.228 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 04:02:23,229.229 INFO    ] Checking for existing commands in stream...
[2026-06-12 04:02:23,297.297 INFO    ] No existing commands found in stream
[2026-06-12 04:02:28,306.306 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 04:02:28,309.309 INFO    ] Waiting 0.33 seconds before fallback handling...
[2026-06-12 04:02:29,012.012 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 04:02:29,014.014 INFO    ] Checking for system updates...
[2026-06-12 04:02:29,034.034 INFO    ] 200
[2026-06-12 04:02:29,035.035 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:02:29,066.066 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 04:02:29,067.067 INFO    ] No update needed
[2026-06-12 04:02:29,068.068 INFO    ] Checking for camera pi updates...
[2026-06-12 04:02:29,090.090 INFO    ] 200
[2026-06-12 04:02:29,091.091 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:02:29,115.115 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 04:02:29,149.149 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 04:02:29,151.151 INFO    ] No camera update needed
[2026-06-12 04:02:29,152.152 INFO    ] Script finished. Safe exiting...
[2026-06-12 04:02:29,153.153 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 04:02:29,156.156 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 04:02:29,159.159 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 04:02:31,198.198 INFO    ] ================================================
[2026-06-12 04:02:31,216.216 INFO    ] Launching Daemon at Fri Jun 12 04:02:31 IST 2026
[2026-06-12 04:02:31,228.228 INFO    ] ================================================
[2026-06-12 04:02:31,628.628 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 04:02:31
[2026-06-12 04:02:32,002.002 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 04:02:32,170.170 INFO    ] Initializing speech engine...
[2026-06-12 04:02:32,175.175 INFO    ] 2026-06-12 04:02:32
[2026-06-12 04:02:32,384.384 INFO    ] 2026-06-12 04:02:32
[2026-06-12 04:02:32,412.412 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 04:02:32,597.597 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 04:02:32,608.608 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 04:02:32,738.738 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 04:02:32,805.805 INFO    ] time= 12/06/2026 04:02:32
[2026-06-12 04:02:32,829.829 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 04:02:32,836.836 INFO    ] Checking for existing commands in stream...
[2026-06-12 04:02:32,927.927 INFO    ] No existing commands found in stream
[2026-06-12 04:02:37,942.942 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 04:02:37,945.945 INFO    ] Waiting 3.64 seconds before fallback handling...
[2026-06-12 04:02:41,987.987 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 04:02:41,988.988 INFO    ] Checking for system updates...
[2026-06-12 04:02:42,012.012 INFO    ] 200
[2026-06-12 04:02:42,013.013 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:02:42,044.044 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 04:02:42,045.045 INFO    ] No update needed
[2026-06-12 04:02:42,046.046 INFO    ] Checking for camera pi updates...
[2026-06-12 04:02:42,067.067 INFO    ] 200
[2026-06-12 04:02:42,069.069 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:02:42,094.094 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 04:02:42,143.143 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 04:02:42,145.145 INFO    ] No camera update needed
[2026-06-12 04:02:42,146.146 INFO    ] Script finished. Safe exiting...
[2026-06-12 04:02:42,147.147 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 04:02:42,151.151 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 04:02:42,154.154 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 04:02:44,192.192 INFO    ] ================================================
[2026-06-12 04:02:44,208.208 INFO    ] Launching Daemon at Fri Jun 12 04:02:44 IST 2026
[2026-06-12 04:02:44,219.219 INFO    ] ================================================
[2026-06-12 04:02:44,599.599 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 04:02:44
[2026-06-12 04:02:44,943.943 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 04:02:45,097.097 INFO    ] Initializing speech engine...
[2026-06-12 04:02:45,102.102 INFO    ] 2026-06-12 04:02:45
[2026-06-12 04:02:45,312.312 INFO    ] 2026-06-12 04:02:45
[2026-06-12 04:02:45,341.341 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 04:02:45,479.479 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 04:02:45,527.527 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 04:02:45,665.665 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 04:02:45,731.731 INFO    ] time= 12/06/2026 04:02:45
[2026-06-12 04:02:45,755.755 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 04:02:45,762.762 INFO    ] Checking for existing commands in stream...
[2026-06-12 04:02:45,829.829 INFO    ] No existing commands found in stream
[2026-06-12 04:02:50,849.849 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 04:02:50,853.853 INFO    ] Waiting 0.27 seconds before fallback handling...
[2026-06-12 04:02:51,506.506 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 04:02:51,507.507 INFO    ] Checking for system updates...
[2026-06-12 04:02:51,531.531 INFO    ] 200
[2026-06-12 04:02:51,533.533 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:02:51,569.569 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 04:02:51,570.570 INFO    ] No update needed
[2026-06-12 04:02:51,572.572 INFO    ] Checking for camera pi updates...
[2026-06-12 04:02:51,592.592 INFO    ] 200
[2026-06-12 04:02:51,594.594 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:02:51,620.620 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 04:02:51,660.660 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 04:02:51,662.662 INFO    ] No camera update needed
[2026-06-12 04:02:51,663.663 INFO    ] Script finished. Safe exiting...
[2026-06-12 04:02:51,665.665 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 04:02:51,668.668 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 04:02:51,671.671 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 04:02:53,711.711 INFO    ] ================================================
[2026-06-12 04:02:53,726.726 INFO    ] Launching Daemon at Fri Jun 12 04:02:53 IST 2026
[2026-06-12 04:02:53,736.736 INFO    ] ================================================
[2026-06-12 04:02:54,124.124 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 04:02:54
[2026-06-12 04:02:54,449.449 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 04:02:54,609.609 INFO    ] Initializing speech engine...
[2026-06-12 04:02:54,628.628 INFO    ] 2026-06-12 04:02:54
[2026-06-12 04:02:54,850.850 INFO    ] 2026-06-12 04:02:54
[2026-06-12 04:02:54,879.879 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 04:02:55,066.066 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 04:02:55,075.075 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 04:02:55,261.261 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 04:02:55,295.295 INFO    ] time= 12/06/2026 04:02:55
[2026-06-12 04:02:55,297.297 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 04:02:55,302.302 INFO    ] Checking for existing commands in stream...
[2026-06-12 04:02:55,368.368 INFO    ] No existing commands found in stream
[2026-06-12 04:03:00,377.377 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 04:03:00,379.379 INFO    ] Waiting 0.68 seconds before fallback handling...
[2026-06-12 04:03:01,456.456 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 04:03:01,458.458 INFO    ] Checking for system updates...
[2026-06-12 04:03:01,479.479 INFO    ] 200
[2026-06-12 04:03:01,481.481 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:03:01,535.535 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 04:03:01,539.539 INFO    ] No update needed
[2026-06-12 04:03:01,544.544 INFO    ] Checking for camera pi updates...
[2026-06-12 04:03:01,591.591 INFO    ] 200
[2026-06-12 04:03:01,593.593 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:03:01,647.647 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 04:03:01,703.703 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 04:03:01,706.706 INFO    ] No camera update needed
[2026-06-12 04:03:01,708.708 INFO    ] Script finished. Safe exiting...
[2026-06-12 04:03:01,710.710 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 04:03:01,715.715 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 04:03:01,720.720 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 04:03:03,760.760 INFO    ] ================================================
[2026-06-12 04:03:03,775.775 INFO    ] Launching Daemon at Fri Jun 12 04:03:03 IST 2026
[2026-06-12 04:03:03,786.786 INFO    ] ================================================
[2026-06-12 04:03:04,127.127 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 04:03:04
[2026-06-12 04:03:04,444.444 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 04:03:04,574.574 INFO    ] Initializing speech engine...
[2026-06-12 04:03:04,579.579 INFO    ] 2026-06-12 04:03:04
[2026-06-12 04:03:04,797.797 INFO    ] 2026-06-12 04:03:04
[2026-06-12 04:03:04,825.825 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 04:03:05,007.007 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 04:03:05,012.012 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 04:03:05,163.163 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 04:03:05,215.215 INFO    ] time= 12/06/2026 04:03:05
[2026-06-12 04:03:05,237.237 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 04:03:05,244.244 INFO    ] Checking for existing commands in stream...
[2026-06-12 04:03:05,310.310 INFO    ] No existing commands found in stream
[2026-06-12 04:03:10,319.319 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 04:03:10,322.322 INFO    ] Waiting 3.04 seconds before fallback handling...
[2026-06-12 04:03:13,748.748 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 04:03:13,750.750 INFO    ] Checking for system updates...
[2026-06-12 04:03:13,772.772 INFO    ] 200
[2026-06-12 04:03:13,773.773 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:03:13,806.806 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 04:03:13,807.807 INFO    ] No update needed
[2026-06-12 04:03:13,808.808 INFO    ] Checking for camera pi updates...
[2026-06-12 04:03:13,828.828 INFO    ] 200
[2026-06-12 04:03:13,829.829 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:03:13,854.854 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 04:03:13,899.899 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 04:03:13,901.901 INFO    ] No camera update needed
[2026-06-12 04:03:13,902.902 INFO    ] Script finished. Safe exiting...
[2026-06-12 04:03:13,904.904 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 04:03:13,907.907 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 04:03:13,909.909 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 04:03:15,947.947 INFO    ] ================================================
[2026-06-12 04:03:15,963.963 INFO    ] Launching Daemon at Fri Jun 12 04:03:15 IST 2026
[2026-06-12 04:03:15,974.974 INFO    ] ================================================
[2026-06-12 04:03:16,364.364 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 04:03:16
[2026-06-12 04:03:16,701.701 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 04:03:16,832.832 INFO    ] Initializing speech engine...
[2026-06-12 04:03:16,839.839 INFO    ] 2026-06-12 04:03:16
[2026-06-12 04:03:17,052.052 INFO    ] 2026-06-12 04:03:17
[2026-06-12 04:03:17,081.081 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 04:03:17,202.202 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 04:03:17,265.265 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 04:03:17,399.399 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 04:03:17,466.466 INFO    ] time= 12/06/2026 04:03:17
[2026-06-12 04:03:17,492.492 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 04:03:17,499.499 INFO    ] Checking for existing commands in stream...
[2026-06-12 04:03:17,565.565 INFO    ] No existing commands found in stream
[2026-06-12 04:03:22,575.575 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 04:03:22,577.577 INFO    ] Waiting 1.18 seconds before fallback handling...
[2026-06-12 04:03:24,175.175 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 04:03:24,177.177 INFO    ] Checking for system updates...
[2026-06-12 04:03:24,198.198 INFO    ] 200
[2026-06-12 04:03:24,200.200 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:03:24,233.233 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 04:03:24,234.234 INFO    ] No update needed
[2026-06-12 04:03:24,236.236 INFO    ] Checking for camera pi updates...
[2026-06-12 04:03:24,258.258 INFO    ] 200
[2026-06-12 04:03:24,263.263 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:03:24,289.289 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 04:03:24,327.327 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 04:03:24,328.328 INFO    ] No camera update needed
[2026-06-12 04:03:24,329.329 INFO    ] Script finished. Safe exiting...
[2026-06-12 04:03:24,331.331 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 04:03:24,334.334 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 04:03:24,337.337 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 04:03:26,377.377 INFO    ] ================================================
[2026-06-12 04:03:26,393.393 INFO    ] Launching Daemon at Fri Jun 12 04:03:26 IST 2026
[2026-06-12 04:03:26,403.403 INFO    ] ================================================
[2026-06-12 04:03:26,768.768 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 04:03:26
[2026-06-12 04:03:27,079.079 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 04:03:27,221.221 INFO    ] Initializing speech engine...
[2026-06-12 04:03:27,226.226 INFO    ] 2026-06-12 04:03:27
[2026-06-12 04:03:27,427.427 INFO    ] 2026-06-12 04:03:27
[2026-06-12 04:03:27,456.456 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 04:03:27,642.642 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 04:03:27,653.653 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 04:03:27,795.795 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 04:03:27,849.849 INFO    ] time= 12/06/2026 04:03:27
[2026-06-12 04:03:27,871.871 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 04:03:27,877.877 INFO    ] Checking for existing commands in stream...
[2026-06-12 04:03:27,968.968 INFO    ] No existing commands found in stream
[2026-06-12 04:03:32,982.982 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 04:03:32,985.985 INFO    ] Waiting 3.92 seconds before fallback handling...
[2026-06-12 04:03:37,319.319 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 04:03:37,321.321 INFO    ] Checking for system updates...
[2026-06-12 04:03:37,341.341 INFO    ] 200
[2026-06-12 04:03:37,343.343 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:03:37,373.373 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 04:03:37,375.375 INFO    ] No update needed
[2026-06-12 04:03:37,376.376 INFO    ] Checking for camera pi updates...
[2026-06-12 04:03:37,396.396 INFO    ] 200
[2026-06-12 04:03:37,398.398 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:03:37,422.422 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 04:03:37,470.470 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 04:03:37,472.472 INFO    ] No camera update needed
[2026-06-12 04:03:37,473.473 INFO    ] Script finished. Safe exiting...
[2026-06-12 04:03:37,474.474 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 04:03:37,477.477 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 04:03:37,480.480 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 04:03:39,518.518 INFO    ] ================================================
[2026-06-12 04:03:39,534.534 INFO    ] Launching Daemon at Fri Jun 12 04:03:39 IST 2026
[2026-06-12 04:03:39,545.545 INFO    ] ================================================
[2026-06-12 04:03:39,876.876 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 04:03:39
[2026-06-12 04:03:40,188.188 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 04:03:40,321.321 INFO    ] Initializing speech engine...
[2026-06-12 04:03:40,333.333 INFO    ] 2026-06-12 04:03:40
[2026-06-12 04:03:40,540.540 INFO    ] 2026-06-12 04:03:40
[2026-06-12 04:03:40,570.570 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 04:03:40,756.756 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 04:03:40,765.765 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 04:03:40,912.912 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 04:03:40,966.966 INFO    ] time= 12/06/2026 04:03:40
[2026-06-12 04:03:40,988.988 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 04:03:40,995.995 INFO    ] Checking for existing commands in stream...
[2026-06-12 04:03:41,062.062 INFO    ] No existing commands found in stream
[2026-06-12 04:03:46,071.071 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 04:03:46,074.074 INFO    ] Waiting 1.09 seconds before fallback handling...
[2026-06-12 04:03:47,547.547 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 04:03:47,549.549 INFO    ] Checking for system updates...
[2026-06-12 04:03:47,570.570 INFO    ] 200
[2026-06-12 04:03:47,572.572 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:03:47,605.605 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 04:03:47,607.607 INFO    ] No update needed
[2026-06-12 04:03:47,608.608 INFO    ] Checking for camera pi updates...
[2026-06-12 04:03:47,629.629 INFO    ] 200
[2026-06-12 04:03:47,631.631 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:03:47,657.657 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 04:03:47,697.697 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 04:03:47,699.699 INFO    ] No camera update needed
[2026-06-12 04:03:47,701.701 INFO    ] Script finished. Safe exiting...
[2026-06-12 04:03:47,702.702 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 04:03:47,705.705 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 04:03:47,708.708 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 04:03:49,749.749 INFO    ] ================================================
[2026-06-12 04:03:49,764.764 INFO    ] Launching Daemon at Fri Jun 12 04:03:49 IST 2026
[2026-06-12 04:03:49,775.775 INFO    ] ================================================
[2026-06-12 04:03:50,147.147 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 04:03:50
[2026-06-12 04:03:50,477.477 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 04:03:50,620.620 INFO    ] Initializing speech engine...
[2026-06-12 04:03:50,626.626 INFO    ] 2026-06-12 04:03:50
[2026-06-12 04:03:50,829.829 INFO    ] 2026-06-12 04:03:50
[2026-06-12 04:03:50,857.857 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 04:03:51,042.042 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 04:03:51,052.052 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 04:03:51,179.179 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 04:03:51,247.247 INFO    ] time= 12/06/2026 04:03:51
[2026-06-12 04:03:51,272.272 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 04:03:51,278.278 INFO    ] Checking for existing commands in stream...
[2026-06-12 04:03:51,377.377 INFO    ] No existing commands found in stream
[2026-06-12 04:03:56,386.386 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 04:03:56,389.389 INFO    ] Waiting 2.46 seconds before fallback handling...
[2026-06-12 04:03:59,237.237 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 04:03:59,238.238 INFO    ] Checking for system updates...
[2026-06-12 04:03:59,261.261 INFO    ] 200
[2026-06-12 04:03:59,263.263 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:03:59,293.293 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 04:03:59,294.294 INFO    ] No update needed
[2026-06-12 04:03:59,295.295 INFO    ] Checking for camera pi updates...
[2026-06-12 04:03:59,316.316 INFO    ] 200
[2026-06-12 04:03:59,317.317 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:03:59,340.340 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 04:03:59,385.385 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 04:03:59,387.387 INFO    ] No camera update needed
[2026-06-12 04:03:59,388.388 INFO    ] Script finished. Safe exiting...
[2026-06-12 04:03:59,389.389 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 04:03:59,392.392 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 04:03:59,395.395 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 04:04:01,433.433 INFO    ] ================================================
[2026-06-12 04:04:01,450.450 INFO    ] Launching Daemon at Fri Jun 12 04:04:01 IST 2026
[2026-06-12 04:04:01,461.461 INFO    ] ================================================
[2026-06-12 04:04:01,869.869 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 04:04:01
[2026-06-12 04:04:02,257.257 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 04:04:02,427.427 INFO    ] Initializing speech engine...
[2026-06-12 04:04:02,439.439 INFO    ] 2026-06-12 04:04:02
[2026-06-12 04:04:02,652.652 INFO    ] 2026-06-12 04:04:02
[2026-06-12 04:04:02,704.704 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 04:04:02,845.845 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 04:04:02,877.877 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 04:04:03,028.028 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 04:04:03,077.077 INFO    ] time= 12/06/2026 04:04:03
[2026-06-12 04:04:03,128.128 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 04:04:03,172.172 INFO    ] Checking for existing commands in stream...
[2026-06-12 04:04:03,247.247 INFO    ] No existing commands found in stream
[2026-06-12 04:04:08,256.256 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 04:04:08,259.259 INFO    ] Waiting 3.47 seconds before fallback handling...
[2026-06-12 04:04:12,106.106 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 04:04:12,108.108 INFO    ] Checking for system updates...
[2026-06-12 04:04:12,130.130 INFO    ] 200
[2026-06-12 04:04:12,132.132 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:04:12,162.162 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 04:04:12,163.163 INFO    ] No update needed
[2026-06-12 04:04:12,164.164 INFO    ] Checking for camera pi updates...
[2026-06-12 04:04:12,184.184 INFO    ] 200
[2026-06-12 04:04:12,185.185 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:04:12,209.209 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 04:04:12,354.354 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 04:04:12,355.355 INFO    ] No camera update needed
[2026-06-12 04:04:12,356.356 INFO    ] Script finished. Safe exiting...
[2026-06-12 04:04:12,357.357 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 04:04:12,361.361 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 04:04:12,363.363 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 04:04:14,403.403 INFO    ] ================================================
[2026-06-12 04:04:14,419.419 INFO    ] Launching Daemon at Fri Jun 12 04:04:14 IST 2026
[2026-06-12 04:04:14,431.431 INFO    ] ================================================
[2026-06-12 04:04:14,782.782 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 04:04:14
[2026-06-12 04:04:15,122.122 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 04:04:15,273.273 INFO    ] Initializing speech engine...
[2026-06-12 04:04:15,278.278 INFO    ] 2026-06-12 04:04:15
[2026-06-12 04:04:15,484.484 INFO    ] 2026-06-12 04:04:15
[2026-06-12 04:04:15,514.514 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 04:04:15,697.697 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 04:04:15,706.706 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 04:04:15,857.857 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 04:04:15,905.905 INFO    ] time= 12/06/2026 04:04:15
[2026-06-12 04:04:15,927.927 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 04:04:15,933.933 INFO    ] Checking for existing commands in stream...
[2026-06-12 04:04:16,000.000 INFO    ] No existing commands found in stream
[2026-06-12 04:04:21,020.020 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 04:04:21,023.023 INFO    ] Waiting 3.62 seconds before fallback handling...
[2026-06-12 04:04:25,028.028 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 04:04:25,029.029 INFO    ] Checking for system updates...
[2026-06-12 04:04:25,050.050 INFO    ] 200
[2026-06-12 04:04:25,052.052 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:04:25,085.085 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 04:04:25,086.086 INFO    ] No update needed
[2026-06-12 04:04:25,087.087 INFO    ] Checking for camera pi updates...
[2026-06-12 04:04:25,108.108 INFO    ] 200
[2026-06-12 04:04:25,109.109 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:04:25,133.133 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 04:04:25,174.174 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 04:04:25,175.175 INFO    ] No camera update needed
[2026-06-12 04:04:25,176.176 INFO    ] Script finished. Safe exiting...
[2026-06-12 04:04:25,177.177 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 04:04:25,180.180 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 04:04:25,183.183 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 04:04:27,221.221 INFO    ] ================================================
[2026-06-12 04:04:27,237.237 INFO    ] Launching Daemon at Fri Jun 12 04:04:27 IST 2026
[2026-06-12 04:04:27,249.249 INFO    ] ================================================
[2026-06-12 04:04:27,581.581 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 04:04:27
[2026-06-12 04:04:27,894.894 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 04:04:28,021.021 INFO    ] Initializing speech engine...
[2026-06-12 04:04:28,026.026 INFO    ] 2026-06-12 04:04:28
[2026-06-12 04:04:28,246.246 INFO    ] 2026-06-12 04:04:28
[2026-06-12 04:04:28,275.275 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 04:04:28,461.461 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 04:04:28,469.469 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 04:04:28,598.598 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 04:04:28,660.660 INFO    ] time= 12/06/2026 04:04:28
[2026-06-12 04:04:28,694.694 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 04:04:28,699.699 INFO    ] Checking for existing commands in stream...
[2026-06-12 04:04:28,767.767 INFO    ] No existing commands found in stream
[2026-06-12 04:04:33,791.791 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 04:04:33,794.794 INFO    ] Waiting 3.47 seconds before fallback handling...
[2026-06-12 04:04:37,655.655 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 04:04:37,657.657 INFO    ] Checking for system updates...
[2026-06-12 04:04:37,678.678 INFO    ] 200
[2026-06-12 04:04:37,679.679 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:04:37,712.712 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 04:04:37,714.714 INFO    ] No update needed
[2026-06-12 04:04:37,715.715 INFO    ] Checking for camera pi updates...
[2026-06-12 04:04:37,734.734 INFO    ] 200
[2026-06-12 04:04:37,735.735 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:04:37,760.760 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 04:04:37,799.799 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 04:04:37,801.801 INFO    ] No camera update needed
[2026-06-12 04:04:37,802.802 INFO    ] Script finished. Safe exiting...
[2026-06-12 04:04:37,803.803 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 04:04:37,806.806 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 04:04:37,809.809 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 04:04:39,839.839 INFO    ] ================================================
[2026-06-12 04:04:39,847.847 INFO    ] Launching Daemon at Fri Jun 12 04:04:39 IST 2026
[2026-06-12 04:04:39,854.854 INFO    ] ================================================
[2026-06-12 04:04:40,203.203 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 04:04:40
[2026-06-12 04:04:40,514.514 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 04:04:40,645.645 INFO    ] Initializing speech engine...
[2026-06-12 04:04:40,652.652 INFO    ] 2026-06-12 04:04:40
[2026-06-12 04:04:40,864.864 INFO    ] 2026-06-12 04:04:40
[2026-06-12 04:04:40,893.893 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 04:04:41,075.075 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 04:04:41,084.084 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 04:04:41,229.229 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 04:04:41,281.281 INFO    ] time= 12/06/2026 04:04:41
[2026-06-12 04:04:41,304.304 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 04:04:41,310.310 INFO    ] Checking for existing commands in stream...
[2026-06-12 04:04:41,382.382 INFO    ] No existing commands found in stream
[2026-06-12 04:04:46,409.409 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 04:04:46,412.412 INFO    ] Waiting 0.49 seconds before fallback handling...
[2026-06-12 04:04:47,294.294 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 04:04:47,296.296 INFO    ] Checking for system updates...
[2026-06-12 04:04:47,316.316 INFO    ] 200
[2026-06-12 04:04:47,318.318 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:04:47,348.348 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 04:04:47,349.349 INFO    ] No update needed
[2026-06-12 04:04:47,351.351 INFO    ] Checking for camera pi updates...
[2026-06-12 04:04:47,370.370 INFO    ] 200
[2026-06-12 04:04:47,372.372 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:04:47,397.397 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 04:04:47,434.434 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 04:04:47,435.435 INFO    ] No camera update needed
[2026-06-12 04:04:47,436.436 INFO    ] Script finished. Safe exiting...
[2026-06-12 04:04:47,438.438 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 04:04:47,441.441 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 04:04:47,443.443 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 04:04:49,487.487 INFO    ] ================================================
[2026-06-12 04:04:49,503.503 INFO    ] Launching Daemon at Fri Jun 12 04:04:49 IST 2026
[2026-06-12 04:04:49,514.514 INFO    ] ================================================
[2026-06-12 04:04:49,873.873 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 04:04:49
[2026-06-12 04:04:50,214.214 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 04:04:50,367.367 INFO    ] Initializing speech engine...
[2026-06-12 04:04:50,373.373 INFO    ] 2026-06-12 04:04:50
[2026-06-12 04:04:50,592.592 INFO    ] 2026-06-12 04:04:50
[2026-06-12 04:04:50,622.622 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 04:04:50,757.757 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 04:04:50,811.811 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 04:04:50,956.956 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 04:04:51,019.019 INFO    ] time= 12/06/2026 04:04:50
[2026-06-12 04:04:51,043.043 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 04:04:51,050.050 INFO    ] Checking for existing commands in stream...
[2026-06-12 04:04:51,119.119 INFO    ] No existing commands found in stream
[2026-06-12 04:04:56,133.133 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 04:04:56,137.137 INFO    ] Waiting 3.95 seconds before fallback handling...
[2026-06-12 04:05:00,523.523 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 04:05:00,525.525 INFO    ] Checking for system updates...
[2026-06-12 04:05:00,547.547 INFO    ] 200
[2026-06-12 04:05:00,549.549 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:05:00,582.582 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 04:05:00,583.583 INFO    ] No update needed
[2026-06-12 04:05:00,584.584 INFO    ] Checking for camera pi updates...
[2026-06-12 04:05:00,604.604 INFO    ] 200
[2026-06-12 04:05:00,605.605 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:05:00,631.631 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 04:05:00,667.667 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 04:05:00,669.669 INFO    ] No camera update needed
[2026-06-12 04:05:00,670.670 INFO    ] Script finished. Safe exiting...
[2026-06-12 04:05:00,672.672 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 04:05:00,675.675 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 04:05:00,677.677 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 04:05:02,711.711 INFO    ] ================================================
[2026-06-12 04:05:02,727.727 INFO    ] Launching Daemon at Fri Jun 12 04:05:02 IST 2026
[2026-06-12 04:05:02,738.738 INFO    ] ================================================
[2026-06-12 04:05:03,065.065 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 04:05:03
[2026-06-12 04:05:03,377.377 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 04:05:03,508.508 INFO    ] Initializing speech engine...
[2026-06-12 04:05:03,516.516 INFO    ] 2026-06-12 04:05:03
[2026-06-12 04:05:03,727.727 INFO    ] 2026-06-12 04:05:03
[2026-06-12 04:05:03,756.756 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 04:05:03,940.940 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 04:05:03,943.943 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 04:05:04,089.089 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 04:05:04,147.147 INFO    ] time= 12/06/2026 04:05:04
[2026-06-12 04:05:04,170.170 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 04:05:04,176.176 INFO    ] Checking for existing commands in stream...
[2026-06-12 04:05:04,243.243 INFO    ] No existing commands found in stream
[2026-06-12 04:05:09,257.257 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 04:05:09,260.260 INFO    ] Waiting 1.86 seconds before fallback handling...
[2026-06-12 04:05:11,483.483 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 04:05:11,485.485 INFO    ] Checking for system updates...
[2026-06-12 04:05:11,505.505 INFO    ] 200
[2026-06-12 04:05:11,507.507 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:05:11,537.537 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 04:05:11,538.538 INFO    ] No update needed
[2026-06-12 04:05:11,540.540 INFO    ] Checking for camera pi updates...
[2026-06-12 04:05:11,561.561 INFO    ] 200
[2026-06-12 04:05:11,562.562 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:05:11,587.587 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 04:05:11,614.614 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 04:05:11,616.616 INFO    ] No camera update needed
[2026-06-12 04:05:11,617.617 INFO    ] Script finished. Safe exiting...
[2026-06-12 04:05:11,618.618 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 04:05:11,621.621 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 04:05:11,624.624 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 04:05:13,667.667 INFO    ] ================================================
[2026-06-12 04:05:13,683.683 INFO    ] Launching Daemon at Fri Jun 12 04:05:13 IST 2026
[2026-06-12 04:05:13,695.695 INFO    ] ================================================
[2026-06-12 04:05:14,060.060 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 04:05:14
[2026-06-12 04:05:14,372.372 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 04:05:14,503.503 INFO    ] Initializing speech engine...
[2026-06-12 04:05:14,511.511 INFO    ] 2026-06-12 04:05:14
[2026-06-12 04:05:14,723.723 INFO    ] 2026-06-12 04:05:14
[2026-06-12 04:05:14,752.752 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 04:05:14,936.936 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 04:05:14,945.945 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 04:05:15,080.080 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 04:05:15,142.142 INFO    ] time= 12/06/2026 04:05:15
[2026-06-12 04:05:15,165.165 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 04:05:15,172.172 INFO    ] Checking for existing commands in stream...
[2026-06-12 04:05:15,238.238 INFO    ] No existing commands found in stream
[2026-06-12 04:05:20,247.247 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 04:05:20,250.250 INFO    ] Waiting 3.27 seconds before fallback handling...
[2026-06-12 04:05:23,865.865 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 04:05:23,866.866 INFO    ] Checking for system updates...
[2026-06-12 04:05:23,888.888 INFO    ] 200
[2026-06-12 04:05:23,889.889 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:05:23,922.922 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 04:05:23,923.923 INFO    ] No update needed
[2026-06-12 04:05:23,925.925 INFO    ] Checking for camera pi updates...
[2026-06-12 04:05:23,944.944 INFO    ] 200
[2026-06-12 04:05:23,945.945 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:05:23,971.971 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 04:05:24,004.004 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 04:05:24,006.006 INFO    ] No camera update needed
[2026-06-12 04:05:24,007.007 INFO    ] Script finished. Safe exiting...
[2026-06-12 04:05:24,008.008 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 04:05:24,011.011 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 04:05:24,014.014 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 04:05:26,054.054 INFO    ] ================================================
[2026-06-12 04:05:26,069.069 INFO    ] Launching Daemon at Fri Jun 12 04:05:26 IST 2026
[2026-06-12 04:05:26,080.080 INFO    ] ================================================
[2026-06-12 04:05:26,432.432 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 04:05:26
[2026-06-12 04:05:26,775.775 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 04:05:26,927.927 INFO    ] Initializing speech engine...
[2026-06-12 04:05:26,933.933 INFO    ] 2026-06-12 04:05:26
[2026-06-12 04:05:27,142.142 INFO    ] 2026-06-12 04:05:27
[2026-06-12 04:05:27,171.171 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 04:05:27,353.353 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 04:05:27,357.357 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 04:05:27,498.498 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 04:05:27,560.560 INFO    ] time= 12/06/2026 04:05:27
[2026-06-12 04:05:27,584.584 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 04:05:27,591.591 INFO    ] Checking for existing commands in stream...
[2026-06-12 04:05:27,658.658 INFO    ] No existing commands found in stream
[2026-06-12 04:05:32,667.667 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 04:05:32,671.671 INFO    ] Waiting 0.11 seconds before fallback handling...
[2026-06-12 04:05:33,168.168 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 04:05:33,169.169 INFO    ] Checking for system updates...
[2026-06-12 04:05:33,192.192 INFO    ] 200
[2026-06-12 04:05:33,193.193 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:05:33,229.229 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 04:05:33,231.231 INFO    ] No update needed
[2026-06-12 04:05:33,232.232 INFO    ] Checking for camera pi updates...
[2026-06-12 04:05:33,256.256 INFO    ] 200
[2026-06-12 04:05:33,257.257 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:05:33,285.285 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 04:05:33,332.332 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 04:05:33,333.333 INFO    ] No camera update needed
[2026-06-12 04:05:33,335.335 INFO    ] Script finished. Safe exiting...
[2026-06-12 04:05:33,336.336 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 04:05:33,339.339 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 04:05:33,342.342 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 04:05:35,385.385 INFO    ] ================================================
[2026-06-12 04:05:35,401.401 INFO    ] Launching Daemon at Fri Jun 12 04:05:35 IST 2026
[2026-06-12 04:05:35,413.413 INFO    ] ================================================
[2026-06-12 04:05:35,764.764 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 04:05:35
[2026-06-12 04:05:36,079.079 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 04:05:36,223.223 INFO    ] Initializing speech engine...
[2026-06-12 04:05:36,228.228 INFO    ] 2026-06-12 04:05:36
[2026-06-12 04:05:36,431.431 INFO    ] 2026-06-12 04:05:36
[2026-06-12 04:05:36,459.459 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 04:05:36,644.644 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 04:05:36,653.653 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 04:05:36,803.803 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 04:05:36,851.851 INFO    ] time= 12/06/2026 04:05:36
[2026-06-12 04:05:36,873.873 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 04:05:36,879.879 INFO    ] Checking for existing commands in stream...
[2026-06-12 04:05:36,969.969 INFO    ] No existing commands found in stream
[2026-06-12 04:05:41,978.978 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 04:05:41,981.981 INFO    ] Waiting 2.25 seconds before fallback handling...
[2026-06-12 04:05:44,623.623 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 04:05:44,625.625 INFO    ] Checking for system updates...
[2026-06-12 04:05:44,647.647 INFO    ] 200
[2026-06-12 04:05:44,648.648 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:05:44,679.679 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 04:05:44,680.680 INFO    ] No update needed
[2026-06-12 04:05:44,682.682 INFO    ] Checking for camera pi updates...
[2026-06-12 04:05:44,703.703 INFO    ] 200
[2026-06-12 04:05:44,704.704 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:05:44,729.729 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 04:05:44,768.768 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 04:05:44,770.770 INFO    ] No camera update needed
[2026-06-12 04:05:44,771.771 INFO    ] Script finished. Safe exiting...
[2026-06-12 04:05:44,772.772 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 04:05:44,775.775 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 04:05:44,778.778 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 04:05:46,818.818 INFO    ] ================================================
[2026-06-12 04:05:46,834.834 INFO    ] Launching Daemon at Fri Jun 12 04:05:46 IST 2026
[2026-06-12 04:05:46,846.846 INFO    ] ================================================
[2026-06-12 04:05:47,196.196 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 04:05:47
[2026-06-12 04:05:47,513.513 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 04:05:47,659.659 INFO    ] Initializing speech engine...
[2026-06-12 04:05:47,665.665 INFO    ] 2026-06-12 04:05:47
[2026-06-12 04:05:47,868.868 INFO    ] 2026-06-12 04:05:47
[2026-06-12 04:05:47,898.898 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 04:05:48,082.082 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 04:05:48,092.092 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 04:05:48,236.236 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 04:05:48,290.290 INFO    ] time= 12/06/2026 04:05:48
[2026-06-12 04:05:48,311.311 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 04:05:48,318.318 INFO    ] Checking for existing commands in stream...
[2026-06-12 04:05:48,408.408 INFO    ] No existing commands found in stream
[2026-06-12 04:05:53,422.422 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 04:05:53,425.425 INFO    ] Waiting 1.48 seconds before fallback handling...
[2026-06-12 04:05:55,274.274 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 04:05:55,275.275 INFO    ] Checking for system updates...
[2026-06-12 04:05:55,298.298 INFO    ] 200
[2026-06-12 04:05:55,300.300 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:05:55,336.336 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 04:05:55,337.337 INFO    ] No update needed
[2026-06-12 04:05:55,339.339 INFO    ] Checking for camera pi updates...
[2026-06-12 04:05:55,363.363 INFO    ] 200
[2026-06-12 04:05:55,364.364 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:05:55,388.388 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 04:05:55,430.430 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 04:05:55,431.431 INFO    ] No camera update needed
[2026-06-12 04:05:55,433.433 INFO    ] Script finished. Safe exiting...
[2026-06-12 04:05:55,434.434 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 04:05:55,437.437 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 04:05:55,441.441 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 04:05:57,479.479 INFO    ] ================================================
[2026-06-12 04:05:57,495.495 INFO    ] Launching Daemon at Fri Jun 12 04:05:57 IST 2026
[2026-06-12 04:05:57,507.507 INFO    ] ================================================
[2026-06-12 04:05:57,874.874 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 04:05:57
[2026-06-12 04:05:58,183.183 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 04:05:58,314.314 INFO    ] Initializing speech engine...
[2026-06-12 04:05:58,322.322 INFO    ] 2026-06-12 04:05:58
[2026-06-12 04:05:58,540.540 INFO    ] 2026-06-12 04:05:58
[2026-06-12 04:05:58,570.570 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 04:05:58,693.693 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 04:05:58,757.757 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 04:05:58,890.890 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 04:05:58,951.951 INFO    ] time= 12/06/2026 04:05:58
[2026-06-12 04:05:58,981.981 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 04:05:58,992.992 INFO    ] Checking for existing commands in stream...
[2026-06-12 04:05:59,064.064 INFO    ] No existing commands found in stream
[2026-06-12 04:06:04,072.072 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 04:06:04,075.075 INFO    ] Waiting 3.43 seconds before fallback handling...
[2026-06-12 04:06:07,887.887 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 04:06:07,889.889 INFO    ] Checking for system updates...
[2026-06-12 04:06:07,911.911 INFO    ] 200
[2026-06-12 04:06:07,912.912 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:06:07,945.945 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 04:06:07,946.946 INFO    ] No update needed
[2026-06-12 04:06:07,947.947 INFO    ] Checking for camera pi updates...
[2026-06-12 04:06:07,968.968 INFO    ] 200
[2026-06-12 04:06:07,970.970 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:06:07,995.995 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 04:06:08,034.034 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 04:06:08,035.035 INFO    ] No camera update needed
[2026-06-12 04:06:08,037.037 INFO    ] Script finished. Safe exiting...
[2026-06-12 04:06:08,038.038 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 04:06:08,041.041 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 04:06:08,044.044 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 04:06:10,083.083 INFO    ] ================================================
[2026-06-12 04:06:10,099.099 INFO    ] Launching Daemon at Fri Jun 12 04:06:10 IST 2026
[2026-06-12 04:06:10,110.110 INFO    ] ================================================
[2026-06-12 04:06:10,472.472 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 04:06:10
[2026-06-12 04:06:10,815.815 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 04:06:10,972.972 INFO    ] Initializing speech engine...
[2026-06-12 04:06:10,977.977 INFO    ] 2026-06-12 04:06:10
[2026-06-12 04:06:11,188.188 INFO    ] 2026-06-12 04:06:11
[2026-06-12 04:06:11,217.217 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 04:06:11,407.407 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 04:06:11,416.416 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 04:06:11,549.549 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 04:06:11,603.603 INFO    ] time= 12/06/2026 04:06:11
[2026-06-12 04:06:11,639.639 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 04:06:11,645.645 INFO    ] Checking for existing commands in stream...
[2026-06-12 04:06:11,717.717 INFO    ] No existing commands found in stream
[2026-06-12 04:06:16,726.726 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 04:06:16,730.730 INFO    ] Waiting 1.89 seconds before fallback handling...
[2026-06-12 04:06:18,984.984 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 04:06:18,985.985 INFO    ] Checking for system updates...
[2026-06-12 04:06:19,008.008 INFO    ] 200
[2026-06-12 04:06:19,009.009 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:06:19,045.045 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 04:06:19,047.047 INFO    ] No update needed
[2026-06-12 04:06:19,048.048 INFO    ] Checking for camera pi updates...
[2026-06-12 04:06:19,072.072 INFO    ] 200
[2026-06-12 04:06:19,074.074 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:06:19,100.100 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 04:06:19,248.248 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 04:06:19,249.249 INFO    ] No camera update needed
[2026-06-12 04:06:19,251.251 INFO    ] Script finished. Safe exiting...
[2026-06-12 04:06:19,252.252 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 04:06:19,256.256 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 04:06:19,259.259 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 04:06:21,298.298 INFO    ] ================================================
[2026-06-12 04:06:21,315.315 INFO    ] Launching Daemon at Fri Jun 12 04:06:21 IST 2026
[2026-06-12 04:06:21,326.326 INFO    ] ================================================
[2026-06-12 04:06:21,663.663 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 04:06:21
[2026-06-12 04:06:21,981.981 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 04:06:22,115.115 INFO    ] Initializing speech engine...
[2026-06-12 04:06:22,127.127 INFO    ] 2026-06-12 04:06:22
[2026-06-12 04:06:22,335.335 INFO    ] 2026-06-12 04:06:22
[2026-06-12 04:06:22,365.365 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 04:06:22,547.547 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 04:06:22,551.551 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 04:06:22,686.686 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 04:06:22,745.745 INFO    ] time= 12/06/2026 04:06:22
[2026-06-12 04:06:22,777.777 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 04:06:22,784.784 INFO    ] Checking for existing commands in stream...
[2026-06-12 04:06:22,851.851 INFO    ] No existing commands found in stream
[2026-06-12 04:06:27,860.860 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 04:06:27,863.863 INFO    ] Waiting 1.15 seconds before fallback handling...
[2026-06-12 04:06:29,382.382 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 04:06:29,384.384 INFO    ] Checking for system updates...
[2026-06-12 04:06:29,406.406 INFO    ] 200
[2026-06-12 04:06:29,407.407 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:06:29,437.437 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 04:06:29,439.439 INFO    ] No update needed
[2026-06-12 04:06:29,440.440 INFO    ] Checking for camera pi updates...
[2026-06-12 04:06:29,460.460 INFO    ] 200
[2026-06-12 04:06:29,461.461 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:06:29,489.489 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 04:06:29,526.526 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 04:06:29,527.527 INFO    ] No camera update needed
[2026-06-12 04:06:29,528.528 INFO    ] Script finished. Safe exiting...
[2026-06-12 04:06:29,530.530 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 04:06:29,533.533 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 04:06:29,535.535 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 04:06:31,575.575 INFO    ] ================================================
[2026-06-12 04:06:31,591.591 INFO    ] Launching Daemon at Fri Jun 12 04:06:31 IST 2026
[2026-06-12 04:06:31,598.598 INFO    ] ================================================
[2026-06-12 04:06:31,927.927 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 04:06:31
[2026-06-12 04:06:32,264.264 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 04:06:32,400.400 INFO    ] Initializing speech engine...
[2026-06-12 04:06:32,405.405 INFO    ] 2026-06-12 04:06:32
[2026-06-12 04:06:32,615.615 INFO    ] 2026-06-12 04:06:32
[2026-06-12 04:06:32,644.644 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 04:06:32,794.794 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 04:06:32,795.795 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 04:06:32,915.915 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 04:06:32,916.916 INFO    ] time= 12/06/2026 04:06:32
[2026-06-12 04:06:32,948.948 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 04:06:33,005.005 INFO    ] Checking for existing commands in stream...
[2026-06-12 04:06:33,111.111 INFO    ] No existing commands found in stream
[2026-06-12 04:06:38,120.120 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 04:06:38,123.123 INFO    ] Waiting 0.49 seconds before fallback handling...
[2026-06-12 04:06:38,995.995 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 04:06:38,997.997 INFO    ] Checking for system updates...
[2026-06-12 04:06:39,019.019 INFO    ] 200
[2026-06-12 04:06:39,021.021 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:06:39,054.054 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 04:06:39,055.055 INFO    ] No update needed
[2026-06-12 04:06:39,057.057 INFO    ] Checking for camera pi updates...
[2026-06-12 04:06:39,081.081 INFO    ] 200
[2026-06-12 04:06:39,082.082 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:06:39,110.110 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 04:06:39,157.157 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 04:06:39,158.158 INFO    ] No camera update needed
[2026-06-12 04:06:39,160.160 INFO    ] Script finished. Safe exiting...
[2026-06-12 04:06:39,161.161 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 04:06:39,164.164 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 04:06:39,167.167 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 04:06:41,206.206 INFO    ] ================================================
[2026-06-12 04:06:41,222.222 INFO    ] Launching Daemon at Fri Jun 12 04:06:41 IST 2026
[2026-06-12 04:06:41,233.233 INFO    ] ================================================
[2026-06-12 04:06:41,610.610 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 04:06:41
[2026-06-12 04:06:41,928.928 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 04:06:42,075.075 INFO    ] Initializing speech engine...
[2026-06-12 04:06:42,078.078 INFO    ] 2026-06-12 04:06:42
[2026-06-12 04:06:42,282.282 INFO    ] 2026-06-12 04:06:42
[2026-06-12 04:06:42,310.310 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 04:06:42,493.493 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 04:06:42,503.503 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 04:06:42,655.655 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 04:06:42,703.703 INFO    ] time= 12/06/2026 04:06:42
[2026-06-12 04:06:42,725.725 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 04:06:42,732.732 INFO    ] Checking for existing commands in stream...
[2026-06-12 04:06:42,797.797 INFO    ] No existing commands found in stream
[2026-06-12 04:06:47,808.808 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 04:06:47,811.811 INFO    ] Waiting 0.34 seconds before fallback handling...
[2026-06-12 04:06:48,547.547 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 04:06:48,549.549 INFO    ] Checking for system updates...
[2026-06-12 04:06:48,570.570 INFO    ] 200
[2026-06-12 04:06:48,572.572 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:06:48,605.605 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 04:06:48,606.606 INFO    ] No update needed
[2026-06-12 04:06:48,608.608 INFO    ] Checking for camera pi updates...
[2026-06-12 04:06:48,629.629 INFO    ] 200
[2026-06-12 04:06:48,631.631 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:06:48,654.654 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 04:06:48,692.692 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 04:06:48,694.694 INFO    ] No camera update needed
[2026-06-12 04:06:48,695.695 INFO    ] Script finished. Safe exiting...
[2026-06-12 04:06:48,697.697 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 04:06:48,700.700 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 04:06:48,703.703 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 04:06:50,746.746 INFO    ] ================================================
[2026-06-12 04:06:50,762.762 INFO    ] Launching Daemon at Fri Jun 12 04:06:50 IST 2026
[2026-06-12 04:06:50,778.778 INFO    ] ================================================
[2026-06-12 04:06:51,116.116 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 04:06:51
[2026-06-12 04:06:51,427.427 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 04:06:51,569.569 INFO    ] Initializing speech engine...
[2026-06-12 04:06:51,574.574 INFO    ] 2026-06-12 04:06:51
[2026-06-12 04:06:51,776.776 INFO    ] 2026-06-12 04:06:51
[2026-06-12 04:06:51,805.805 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 04:06:51,987.987 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 04:06:51,991.991 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 04:06:52,137.137 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 04:06:52,193.193 INFO    ] time= 12/06/2026 04:06:52
[2026-06-12 04:06:52,217.217 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 04:06:52,223.223 INFO    ] Checking for existing commands in stream...
[2026-06-12 04:06:52,289.289 INFO    ] No existing commands found in stream
[2026-06-12 04:06:57,298.298 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 04:06:57,301.301 INFO    ] Waiting 0.20 seconds before fallback handling...
[2026-06-12 04:06:57,865.865 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 04:06:57,866.866 INFO    ] Checking for system updates...
[2026-06-12 04:06:57,888.888 INFO    ] 200
[2026-06-12 04:06:57,889.889 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:06:57,922.922 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 04:06:57,923.923 INFO    ] No update needed
[2026-06-12 04:06:57,925.925 INFO    ] Checking for camera pi updates...
[2026-06-12 04:06:57,944.944 INFO    ] 200
[2026-06-12 04:06:57,945.945 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:06:57,972.972 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 04:06:57,994.994 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 04:06:57,995.995 INFO    ] No camera update needed
[2026-06-12 04:06:57,997.997 INFO    ] Script finished. Safe exiting...
[2026-06-12 04:06:57,998.998 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 04:06:58,002.002 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 04:06:58,004.004 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 04:07:00,047.047 INFO    ] ================================================
[2026-06-12 04:07:00,062.062 INFO    ] Launching Daemon at Fri Jun 12 04:07:00 IST 2026
[2026-06-12 04:07:00,074.074 INFO    ] ================================================
[2026-06-12 04:07:00,411.411 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 04:07:00
[2026-06-12 04:07:00,728.728 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 04:07:00,873.873 INFO    ] Initializing speech engine...
[2026-06-12 04:07:00,878.878 INFO    ] 2026-06-12 04:07:00
[2026-06-12 04:07:01,081.081 INFO    ] 2026-06-12 04:07:01
[2026-06-12 04:07:01,111.111 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 04:07:01,248.248 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 04:07:01,296.296 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 04:07:01,434.434 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 04:07:01,500.500 INFO    ] time= 12/06/2026 04:07:01
[2026-06-12 04:07:01,524.524 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 04:07:01,530.530 INFO    ] Checking for existing commands in stream...
[2026-06-12 04:07:01,597.597 INFO    ] No existing commands found in stream
[2026-06-12 04:07:06,602.602 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 04:07:06,605.605 INFO    ] Waiting 3.12 seconds before fallback handling...
[2026-06-12 04:07:10,093.093 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 04:07:10,094.094 INFO    ] Checking for system updates...
[2026-06-12 04:07:10,116.116 INFO    ] 200
[2026-06-12 04:07:10,117.117 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:07:10,150.150 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 04:07:10,151.151 INFO    ] No update needed
[2026-06-12 04:07:10,153.153 INFO    ] Checking for camera pi updates...
[2026-06-12 04:07:10,172.172 INFO    ] 200
[2026-06-12 04:07:10,173.173 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:07:10,198.198 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 04:07:10,237.237 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 04:07:10,239.239 INFO    ] No camera update needed
[2026-06-12 04:07:10,240.240 INFO    ] Script finished. Safe exiting...
[2026-06-12 04:07:10,242.242 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 04:07:10,244.244 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 04:07:10,247.247 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 04:07:12,286.286 INFO    ] ================================================
[2026-06-12 04:07:12,302.302 INFO    ] Launching Daemon at Fri Jun 12 04:07:12 IST 2026
[2026-06-12 04:07:12,313.313 INFO    ] ================================================
[2026-06-12 04:07:12,661.661 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 04:07:12
[2026-06-12 04:07:12,979.979 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 04:07:13,111.111 INFO    ] Initializing speech engine...
[2026-06-12 04:07:13,118.118 INFO    ] 2026-06-12 04:07:13
[2026-06-12 04:07:13,330.330 INFO    ] 2026-06-12 04:07:13
[2026-06-12 04:07:13,358.358 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 04:07:13,544.544 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 04:07:13,553.553 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 04:07:13,736.736 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 04:07:13,768.768 INFO    ] time= 12/06/2026 04:07:13
[2026-06-12 04:07:13,773.773 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 04:07:13,779.779 INFO    ] Checking for existing commands in stream...
[2026-06-12 04:07:13,844.844 INFO    ] No existing commands found in stream
[2026-06-12 04:07:18,852.852 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 04:07:18,856.856 INFO    ] Waiting 3.83 seconds before fallback handling...
[2026-06-12 04:07:23,054.054 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 04:07:23,056.056 INFO    ] Checking for system updates...
[2026-06-12 04:07:23,077.077 INFO    ] 200
[2026-06-12 04:07:23,078.078 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:07:23,109.109 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 04:07:23,111.111 INFO    ] No update needed
[2026-06-12 04:07:23,112.112 INFO    ] Checking for camera pi updates...
[2026-06-12 04:07:23,132.132 INFO    ] 200
[2026-06-12 04:07:23,133.133 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:07:23,159.159 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 04:07:23,194.194 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 04:07:23,195.195 INFO    ] No camera update needed
[2026-06-12 04:07:23,197.197 INFO    ] Script finished. Safe exiting...
[2026-06-12 04:07:23,198.198 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 04:07:23,202.202 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 04:07:23,205.205 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 04:07:25,247.247 INFO    ] ================================================
[2026-06-12 04:07:25,262.262 INFO    ] Launching Daemon at Fri Jun 12 04:07:25 IST 2026
[2026-06-12 04:07:25,273.273 INFO    ] ================================================
[2026-06-12 04:07:25,626.626 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 04:07:25
[2026-06-12 04:07:25,942.942 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 04:07:26,081.081 INFO    ] Initializing speech engine...
[2026-06-12 04:07:26,091.091 INFO    ] 2026-06-12 04:07:26
[2026-06-12 04:07:26,294.294 INFO    ] 2026-06-12 04:07:26
[2026-06-12 04:07:26,323.323 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 04:07:26,507.507 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 04:07:26,515.515 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 04:07:26,661.661 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 04:07:26,712.712 INFO    ] time= 12/06/2026 04:07:26
[2026-06-12 04:07:26,736.736 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 04:07:26,743.743 INFO    ] Checking for existing commands in stream...
[2026-06-12 04:07:26,810.810 INFO    ] No existing commands found in stream
[2026-06-12 04:07:31,822.822 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 04:07:31,826.826 INFO    ] Waiting 0.05 seconds before fallback handling...
[2026-06-12 04:07:32,201.201 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 04:07:32,204.204 INFO    ] Checking for system updates...
[2026-06-12 04:07:32,228.228 INFO    ] 200
[2026-06-12 04:07:32,230.230 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:07:32,265.265 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 04:07:32,266.266 INFO    ] No update needed
[2026-06-12 04:07:32,268.268 INFO    ] Checking for camera pi updates...
[2026-06-12 04:07:32,291.291 INFO    ] 200
[2026-06-12 04:07:32,293.293 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:07:32,321.321 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 04:07:32,370.370 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 04:07:32,372.372 INFO    ] No camera update needed
[2026-06-12 04:07:32,373.373 INFO    ] Script finished. Safe exiting...
[2026-06-12 04:07:32,375.375 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 04:07:32,379.379 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 04:07:32,382.382 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 04:07:34,421.421 INFO    ] ================================================
[2026-06-12 04:07:34,436.436 INFO    ] Launching Daemon at Fri Jun 12 04:07:34 IST 2026
[2026-06-12 04:07:34,447.447 INFO    ] ================================================
[2026-06-12 04:07:34,809.809 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 04:07:34
[2026-06-12 04:07:35,119.119 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 04:07:35,261.261 INFO    ] Initializing speech engine...
[2026-06-12 04:07:35,266.266 INFO    ] 2026-06-12 04:07:35
[2026-06-12 04:07:35,468.468 INFO    ] 2026-06-12 04:07:35
[2026-06-12 04:07:35,496.496 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 04:07:35,690.690 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 04:07:35,705.705 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 04:07:35,834.834 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 04:07:35,887.887 INFO    ] time= 12/06/2026 04:07:35
[2026-06-12 04:07:35,909.909 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 04:07:35,915.915 INFO    ] Checking for existing commands in stream...
[2026-06-12 04:07:35,982.982 INFO    ] No existing commands found in stream
[2026-06-12 04:07:40,991.991 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 04:07:40,994.994 INFO    ] Waiting 0.29 seconds before fallback handling...
[2026-06-12 04:07:41,664.664 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 04:07:41,665.665 INFO    ] Checking for system updates...
[2026-06-12 04:07:41,686.686 INFO    ] 200
[2026-06-12 04:07:41,687.687 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:07:41,724.724 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 04:07:41,726.726 INFO    ] No update needed
[2026-06-12 04:07:41,727.727 INFO    ] Checking for camera pi updates...
[2026-06-12 04:07:41,747.747 INFO    ] 200
[2026-06-12 04:07:41,749.749 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:07:41,772.772 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 04:07:41,811.811 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 04:07:41,813.813 INFO    ] No camera update needed
[2026-06-12 04:07:41,814.814 INFO    ] Script finished. Safe exiting...
[2026-06-12 04:07:41,815.815 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 04:07:41,818.818 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 04:07:41,821.821 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 04:07:43,859.859 INFO    ] ================================================
[2026-06-12 04:07:43,875.875 INFO    ] Launching Daemon at Fri Jun 12 04:07:43 IST 2026
[2026-06-12 04:07:43,886.886 INFO    ] ================================================
[2026-06-12 04:07:44,261.261 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 04:07:44
[2026-06-12 04:07:44,595.595 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 04:07:44,744.744 INFO    ] Initializing speech engine...
[2026-06-12 04:07:44,749.749 INFO    ] 2026-06-12 04:07:44
[2026-06-12 04:07:44,956.956 INFO    ] 2026-06-12 04:07:44
[2026-06-12 04:07:44,987.987 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 04:07:45,150.150 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 04:07:45,173.173 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 04:07:45,311.311 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 04:07:45,377.377 INFO    ] time= 12/06/2026 04:07:45
[2026-06-12 04:07:45,402.402 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 04:07:45,408.408 INFO    ] Checking for existing commands in stream...
[2026-06-12 04:07:45,475.475 INFO    ] No existing commands found in stream
[2026-06-12 04:07:50,500.500 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 04:07:50,503.503 INFO    ] Waiting 0.68 seconds before fallback handling...
[2026-06-12 04:07:51,546.546 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 04:07:51,548.548 INFO    ] Checking for system updates...
[2026-06-12 04:07:51,571.571 INFO    ] 200
[2026-06-12 04:07:51,573.573 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:07:51,605.605 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 04:07:51,606.606 INFO    ] No update needed
[2026-06-12 04:07:51,607.607 INFO    ] Checking for camera pi updates...
[2026-06-12 04:07:51,628.628 INFO    ] 200
[2026-06-12 04:07:51,629.629 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:07:51,653.653 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 04:07:51,701.701 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 04:07:51,702.702 INFO    ] No camera update needed
[2026-06-12 04:07:51,703.703 INFO    ] Script finished. Safe exiting...
[2026-06-12 04:07:51,705.705 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 04:07:51,708.708 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 04:07:51,710.710 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 04:07:53,750.750 INFO    ] ================================================
[2026-06-12 04:07:53,765.765 INFO    ] Launching Daemon at Fri Jun 12 04:07:53 IST 2026
[2026-06-12 04:07:53,776.776 INFO    ] ================================================
[2026-06-12 04:07:54,130.130 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 04:07:54
[2026-06-12 04:07:54,442.442 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 04:07:54,574.574 INFO    ] Initializing speech engine...
[2026-06-12 04:07:54,582.582 INFO    ] 2026-06-12 04:07:54
[2026-06-12 04:07:54,796.796 INFO    ] 2026-06-12 04:07:54
[2026-06-12 04:07:54,825.825 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 04:07:55,013.013 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 04:07:55,017.017 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 04:07:55,220.220 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 04:07:55,245.245 INFO    ] time= 12/06/2026 04:07:55
[2026-06-12 04:07:55,251.251 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 04:07:55,252.252 INFO    ] Checking for existing commands in stream...
[2026-06-12 04:07:55,320.320 INFO    ] No existing commands found in stream
[2026-06-12 04:08:00,329.329 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 04:08:00,332.332 INFO    ] Waiting 3.21 seconds before fallback handling...
[2026-06-12 04:08:03,922.922 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 04:08:03,923.923 INFO    ] Checking for system updates...
[2026-06-12 04:08:03,945.945 INFO    ] 200
[2026-06-12 04:08:03,946.946 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:08:03,978.978 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 04:08:03,979.979 INFO    ] No update needed
[2026-06-12 04:08:03,981.981 INFO    ] Checking for camera pi updates...
[2026-06-12 04:08:04,001.001 INFO    ] 200
[2026-06-12 04:08:04,003.003 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:08:04,025.025 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 04:08:04,047.047 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 04:08:04,048.048 INFO    ] No camera update needed
[2026-06-12 04:08:04,049.049 INFO    ] Script finished. Safe exiting...
[2026-06-12 04:08:04,051.051 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 04:08:04,053.053 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 04:08:04,056.056 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 04:08:06,098.098 INFO    ] ================================================
[2026-06-12 04:08:06,113.113 INFO    ] Launching Daemon at Fri Jun 12 04:08:06 IST 2026
[2026-06-12 04:08:06,124.124 INFO    ] ================================================
[2026-06-12 04:08:06,478.478 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 04:08:06
[2026-06-12 04:08:06,790.790 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 04:08:06,920.920 INFO    ] Initializing speech engine...
[2026-06-12 04:08:06,928.928 INFO    ] 2026-06-12 04:08:06
[2026-06-12 04:08:07,138.138 INFO    ] 2026-06-12 04:08:07
[2026-06-12 04:08:07,167.167 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 04:08:07,350.350 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 04:08:07,358.358 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 04:08:07,486.486 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 04:08:07,551.551 INFO    ] time= 12/06/2026 04:08:07
[2026-06-12 04:08:07,578.578 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 04:08:07,583.583 INFO    ] Checking for existing commands in stream...
[2026-06-12 04:08:07,674.674 INFO    ] No existing commands found in stream
[2026-06-12 04:08:12,681.681 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 04:08:12,683.683 INFO    ] Waiting 2.85 seconds before fallback handling...
[2026-06-12 04:08:15,894.894 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 04:08:15,896.896 INFO    ] Checking for system updates...
[2026-06-12 04:08:15,919.919 INFO    ] 200
[2026-06-12 04:08:15,921.921 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:08:15,950.950 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 04:08:15,952.952 INFO    ] No update needed
[2026-06-12 04:08:15,953.953 INFO    ] Checking for camera pi updates...
[2026-06-12 04:08:15,975.975 INFO    ] 200
[2026-06-12 04:08:15,977.977 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:08:16,003.003 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 04:08:16,041.041 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 04:08:16,042.042 INFO    ] No camera update needed
[2026-06-12 04:08:16,043.043 INFO    ] Script finished. Safe exiting...
[2026-06-12 04:08:16,044.044 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 04:08:16,047.047 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 04:08:16,050.050 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 04:08:18,092.092 INFO    ] ================================================
[2026-06-12 04:08:18,108.108 INFO    ] Launching Daemon at Fri Jun 12 04:08:18 IST 2026
[2026-06-12 04:08:18,119.119 INFO    ] ================================================
[2026-06-12 04:08:18,467.467 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 04:08:18
[2026-06-12 04:08:18,788.788 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 04:08:18,932.932 INFO    ] Initializing speech engine...
[2026-06-12 04:08:18,937.937 INFO    ] 2026-06-12 04:08:18
[2026-06-12 04:08:19,143.143 INFO    ] 2026-06-12 04:08:19
[2026-06-12 04:08:19,170.170 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 04:08:19,353.353 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 04:08:19,356.356 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 04:08:19,507.507 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 04:08:19,559.559 INFO    ] time= 12/06/2026 04:08:19
[2026-06-12 04:08:19,581.581 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 04:08:19,587.587 INFO    ] Checking for existing commands in stream...
[2026-06-12 04:08:19,654.654 INFO    ] No existing commands found in stream
[2026-06-12 04:08:24,686.686 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 04:08:24,689.689 INFO    ] Waiting 2.82 seconds before fallback handling...
[2026-06-12 04:08:27,894.894 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 04:08:27,896.896 INFO    ] Checking for system updates...
[2026-06-12 04:08:27,916.916 INFO    ] 200
[2026-06-12 04:08:27,918.918 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:08:27,950.950 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 04:08:27,951.951 INFO    ] No update needed
[2026-06-12 04:08:27,953.953 INFO    ] Checking for camera pi updates...
[2026-06-12 04:08:27,973.973 INFO    ] 200
[2026-06-12 04:08:27,974.974 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:08:27,998.998 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 04:08:28,137.137 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 04:08:28,138.138 INFO    ] No camera update needed
[2026-06-12 04:08:28,139.139 INFO    ] Script finished. Safe exiting...
[2026-06-12 04:08:28,141.141 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 04:08:28,144.144 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 04:08:28,146.146 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 04:08:30,185.185 INFO    ] ================================================
[2026-06-12 04:08:30,201.201 INFO    ] Launching Daemon at Fri Jun 12 04:08:30 IST 2026
[2026-06-12 04:08:30,212.212 INFO    ] ================================================
[2026-06-12 04:08:30,575.575 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 04:08:30
[2026-06-12 04:08:30,908.908 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 04:08:31,053.053 INFO    ] Initializing speech engine...
[2026-06-12 04:08:31,063.063 INFO    ] 2026-06-12 04:08:31
[2026-06-12 04:08:31,270.270 INFO    ] 2026-06-12 04:08:31
[2026-06-12 04:08:31,299.299 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 04:08:31,481.481 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 04:08:31,485.485 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 04:08:31,641.641 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 04:08:31,689.689 INFO    ] time= 12/06/2026 04:08:31
[2026-06-12 04:08:31,711.711 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 04:08:31,717.717 INFO    ] Checking for existing commands in stream...
[2026-06-12 04:08:31,784.784 INFO    ] No existing commands found in stream
[2026-06-12 04:08:36,798.798 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 04:08:36,801.801 INFO    ] Waiting 0.86 seconds before fallback handling...
[2026-06-12 04:08:38,082.082 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 04:08:38,083.083 INFO    ] Checking for system updates...
[2026-06-12 04:08:38,105.105 INFO    ] 200
[2026-06-12 04:08:38,107.107 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:08:38,142.142 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 04:08:38,143.143 INFO    ] No update needed
[2026-06-12 04:08:38,145.145 INFO    ] Checking for camera pi updates...
[2026-06-12 04:08:38,164.164 INFO    ] 200
[2026-06-12 04:08:38,166.166 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:08:38,190.190 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 04:08:38,229.229 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 04:08:38,230.230 INFO    ] No camera update needed
[2026-06-12 04:08:38,232.232 INFO    ] Script finished. Safe exiting...
[2026-06-12 04:08:38,233.233 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 04:08:38,236.236 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 04:08:38,239.239 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 04:08:40,279.279 INFO    ] ================================================
[2026-06-12 04:08:40,294.294 INFO    ] Launching Daemon at Fri Jun 12 04:08:40 IST 2026
[2026-06-12 04:08:40,305.305 INFO    ] ================================================
[2026-06-12 04:08:40,641.641 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 04:08:40
[2026-06-12 04:08:40,953.953 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 04:08:41,094.094 INFO    ] Initializing speech engine...
[2026-06-12 04:08:41,099.099 INFO    ] 2026-06-12 04:08:41
[2026-06-12 04:08:41,303.303 INFO    ] 2026-06-12 04:08:41
[2026-06-12 04:08:41,331.331 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 04:08:41,514.514 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 04:08:41,523.523 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 04:08:41,704.704 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 04:08:41,738.738 INFO    ] time= 12/06/2026 04:08:41
[2026-06-12 04:08:41,744.744 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 04:08:41,749.749 INFO    ] Checking for existing commands in stream...
[2026-06-12 04:08:41,814.814 INFO    ] No existing commands found in stream
[2026-06-12 04:08:46,824.824 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 04:08:46,827.827 INFO    ] Waiting 1.33 seconds before fallback handling...
[2026-06-12 04:08:48,564.564 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 04:08:48,566.566 INFO    ] Checking for system updates...
[2026-06-12 04:08:48,586.586 INFO    ] 200
[2026-06-12 04:08:48,587.587 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:08:48,617.617 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 04:08:48,619.619 INFO    ] No update needed
[2026-06-12 04:08:48,620.620 INFO    ] Checking for camera pi updates...
[2026-06-12 04:08:48,639.639 INFO    ] 200
[2026-06-12 04:08:48,641.641 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:08:48,668.668 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 04:08:48,710.710 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 04:08:48,712.712 INFO    ] No camera update needed
[2026-06-12 04:08:48,713.713 INFO    ] Script finished. Safe exiting...
[2026-06-12 04:08:48,714.714 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 04:08:48,717.717 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 04:08:48,720.720 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 04:08:50,757.757 INFO    ] ================================================
[2026-06-12 04:08:50,773.773 INFO    ] Launching Daemon at Fri Jun 12 04:08:50 IST 2026
[2026-06-12 04:08:50,784.784 INFO    ] ================================================
[2026-06-12 04:08:51,155.155 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 04:08:51
[2026-06-12 04:08:51,489.489 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 04:08:51,640.640 INFO    ] Initializing speech engine...
[2026-06-12 04:08:51,645.645 INFO    ] 2026-06-12 04:08:51
[2026-06-12 04:08:51,852.852 INFO    ] 2026-06-12 04:08:51
[2026-06-12 04:08:51,881.881 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 04:08:52,064.064 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 04:08:52,068.068 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 04:08:52,214.214 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 04:08:52,271.271 INFO    ] time= 12/06/2026 04:08:52
[2026-06-12 04:08:52,295.295 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 04:08:52,302.302 INFO    ] Checking for existing commands in stream...
[2026-06-12 04:08:52,368.368 INFO    ] No existing commands found in stream
[2026-06-12 04:08:57,401.401 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 04:08:57,404.404 INFO    ] Waiting 3.37 seconds before fallback handling...
[2026-06-12 04:09:01,197.197 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 04:09:01,198.198 INFO    ] Checking for system updates...
[2026-06-12 04:09:01,221.221 INFO    ] 200
[2026-06-12 04:09:01,222.222 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:09:01,295.295 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 04:09:01,298.298 INFO    ] No update needed
[2026-06-12 04:09:01,304.304 INFO    ] Checking for camera pi updates...
[2026-06-12 04:09:01,345.345 INFO    ] 200
[2026-06-12 04:09:01,348.348 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:09:01,412.412 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 04:09:01,442.442 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 04:09:01,445.445 INFO    ] No camera update needed
[2026-06-12 04:09:01,448.448 INFO    ] Script finished. Safe exiting...
[2026-06-12 04:09:01,450.450 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 04:09:01,457.457 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 04:09:01,462.462 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 04:09:03,505.505 INFO    ] ================================================
[2026-06-12 04:09:03,523.523 INFO    ] Launching Daemon at Fri Jun 12 04:09:03 IST 2026
[2026-06-12 04:09:03,533.533 INFO    ] ================================================
[2026-06-12 04:09:03,888.888 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 04:09:03
[2026-06-12 04:09:04,198.198 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 04:09:04,331.331 INFO    ] Initializing speech engine...
[2026-06-12 04:09:04,343.343 INFO    ] 2026-06-12 04:09:04
[2026-06-12 04:09:04,551.551 INFO    ] 2026-06-12 04:09:04
[2026-06-12 04:09:04,581.581 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 04:09:04,767.767 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 04:09:04,771.771 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 04:09:04,909.909 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 04:09:04,973.973 INFO    ] time= 12/06/2026 04:09:04
[2026-06-12 04:09:05,002.002 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 04:09:05,003.003 INFO    ] Checking for existing commands in stream...
[2026-06-12 04:09:05,075.075 INFO    ] No existing commands found in stream
[2026-06-12 04:09:10,084.084 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 04:09:10,087.087 INFO    ] Waiting 3.01 seconds before fallback handling...
[2026-06-12 04:09:13,494.494 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 04:09:13,495.495 INFO    ] Checking for system updates...
[2026-06-12 04:09:13,517.517 INFO    ] 200
[2026-06-12 04:09:13,518.518 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:09:13,549.549 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 04:09:13,550.550 INFO    ] No update needed
[2026-06-12 04:09:13,552.552 INFO    ] Checking for camera pi updates...
[2026-06-12 04:09:13,573.573 INFO    ] 200
[2026-06-12 04:09:13,574.574 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:09:13,597.597 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 04:09:13,629.629 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 04:09:13,631.631 INFO    ] No camera update needed
[2026-06-12 04:09:13,632.632 INFO    ] Script finished. Safe exiting...
[2026-06-12 04:09:13,633.633 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 04:09:13,636.636 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 04:09:13,639.639 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 04:09:15,678.678 INFO    ] ================================================
[2026-06-12 04:09:15,694.694 INFO    ] Launching Daemon at Fri Jun 12 04:09:15 IST 2026
[2026-06-12 04:09:15,705.705 INFO    ] ================================================
[2026-06-12 04:09:16,072.072 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 04:09:16
[2026-06-12 04:09:16,384.384 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 04:09:16,514.514 INFO    ] Initializing speech engine...
[2026-06-12 04:09:16,518.518 INFO    ] 2026-06-12 04:09:16
[2026-06-12 04:09:16,727.727 INFO    ] 2026-06-12 04:09:16
[2026-06-12 04:09:16,755.755 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 04:09:16,912.912 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 04:09:16,950.950 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 04:09:17,120.120 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 04:09:17,152.152 INFO    ] time= 12/06/2026 04:09:17
[2026-06-12 04:09:17,204.204 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 04:09:17,228.228 INFO    ] Checking for existing commands in stream...
[2026-06-12 04:09:17,331.331 INFO    ] No existing commands found in stream
[2026-06-12 04:09:22,340.340 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 04:09:22,343.343 INFO    ] Waiting 2.59 seconds before fallback handling...
[2026-06-12 04:09:25,300.300 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 04:09:25,301.301 INFO    ] Checking for system updates...
[2026-06-12 04:09:25,324.324 INFO    ] 200
[2026-06-12 04:09:25,325.325 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:09:25,361.361 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 04:09:25,362.362 INFO    ] No update needed
[2026-06-12 04:09:25,364.364 INFO    ] Checking for camera pi updates...
[2026-06-12 04:09:25,384.384 INFO    ] 200
[2026-06-12 04:09:25,386.386 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:09:25,412.412 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 04:09:25,437.437 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 04:09:25,438.438 INFO    ] No camera update needed
[2026-06-12 04:09:25,440.440 INFO    ] Script finished. Safe exiting...
[2026-06-12 04:09:25,441.441 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 04:09:25,444.444 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 04:09:25,447.447 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 04:09:27,486.486 INFO    ] ================================================
[2026-06-12 04:09:27,501.501 INFO    ] Launching Daemon at Fri Jun 12 04:09:27 IST 2026
[2026-06-12 04:09:27,512.512 INFO    ] ================================================
[2026-06-12 04:09:27,846.846 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 04:09:27
[2026-06-12 04:09:28,159.159 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 04:09:28,298.298 INFO    ] Initializing speech engine...
[2026-06-12 04:09:28,308.308 INFO    ] 2026-06-12 04:09:28
[2026-06-12 04:09:28,516.516 INFO    ] 2026-06-12 04:09:28
[2026-06-12 04:09:28,544.544 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 04:09:28,730.730 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 04:09:28,733.733 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 04:09:28,888.888 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 04:09:28,941.941 INFO    ] time= 12/06/2026 04:09:28
[2026-06-12 04:09:28,964.964 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 04:09:28,971.971 INFO    ] Checking for existing commands in stream...
[2026-06-12 04:09:29,038.038 INFO    ] No existing commands found in stream
[2026-06-12 04:09:34,047.047 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 04:09:34,050.050 INFO    ] Waiting 3.02 seconds before fallback handling...
[2026-06-12 04:09:37,453.453 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 04:09:37,454.454 INFO    ] Checking for system updates...
[2026-06-12 04:09:37,475.475 INFO    ] 200
[2026-06-12 04:09:37,476.476 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:09:37,506.506 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 04:09:37,507.507 INFO    ] No update needed
[2026-06-12 04:09:37,509.509 INFO    ] Checking for camera pi updates...
[2026-06-12 04:09:37,529.529 INFO    ] 200
[2026-06-12 04:09:37,531.531 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:09:37,555.555 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 04:09:37,591.591 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 04:09:37,592.592 INFO    ] No camera update needed
[2026-06-12 04:09:37,593.593 INFO    ] Script finished. Safe exiting...
[2026-06-12 04:09:37,594.594 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 04:09:37,597.597 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 04:09:37,600.600 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 04:09:39,638.638 INFO    ] ================================================
[2026-06-12 04:09:39,653.653 INFO    ] Launching Daemon at Fri Jun 12 04:09:39 IST 2026
[2026-06-12 04:09:39,665.665 INFO    ] ================================================
[2026-06-12 04:09:40,013.013 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 04:09:40
[2026-06-12 04:09:40,324.324 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 04:09:40,453.453 INFO    ] Initializing speech engine...
[2026-06-12 04:09:40,456.456 INFO    ] 2026-06-12 04:09:40
[2026-06-12 04:09:40,675.675 INFO    ] 2026-06-12 04:09:40
[2026-06-12 04:09:40,703.703 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 04:09:40,860.860 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 04:09:40,892.892 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 04:09:41,043.043 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 04:09:41,096.096 INFO    ] time= 12/06/2026 04:09:41
[2026-06-12 04:09:41,118.118 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 04:09:41,124.124 INFO    ] Checking for existing commands in stream...
[2026-06-12 04:09:41,191.191 INFO    ] No existing commands found in stream
[2026-06-12 04:09:46,205.205 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 04:09:46,207.207 INFO    ] Waiting 0.64 seconds before fallback handling...
[2026-06-12 04:09:47,221.221 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 04:09:47,223.223 INFO    ] Checking for system updates...
[2026-06-12 04:09:47,245.245 INFO    ] 200
[2026-06-12 04:09:47,246.246 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:09:47,281.281 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 04:09:47,283.283 INFO    ] No update needed
[2026-06-12 04:09:47,284.284 INFO    ] Checking for camera pi updates...
[2026-06-12 04:09:47,305.305 INFO    ] 200
[2026-06-12 04:09:47,306.306 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:09:47,333.333 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 04:09:47,370.370 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 04:09:47,372.372 INFO    ] No camera update needed
[2026-06-12 04:09:47,373.373 INFO    ] Script finished. Safe exiting...
[2026-06-12 04:09:47,374.374 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 04:09:47,377.377 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 04:09:47,381.381 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 04:09:49,419.419 INFO    ] ================================================
[2026-06-12 04:09:49,434.434 INFO    ] Launching Daemon at Fri Jun 12 04:09:49 IST 2026
[2026-06-12 04:09:49,445.445 INFO    ] ================================================
[2026-06-12 04:09:49,780.780 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 04:09:49
[2026-06-12 04:09:50,097.097 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 04:09:50,241.241 INFO    ] Initializing speech engine...
[2026-06-12 04:09:50,246.246 INFO    ] 2026-06-12 04:09:50
[2026-06-12 04:09:50,450.450 INFO    ] 2026-06-12 04:09:50
[2026-06-12 04:09:50,478.478 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 04:09:50,661.661 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 04:09:50,669.669 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 04:09:50,864.864 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 04:09:50,889.889 INFO    ] time= 12/06/2026 04:09:50
[2026-06-12 04:09:50,891.891 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 04:09:50,896.896 INFO    ] Checking for existing commands in stream...
[2026-06-12 04:09:50,964.964 INFO    ] No existing commands found in stream
[2026-06-12 04:09:55,973.973 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 04:09:55,976.976 INFO    ] Waiting 0.88 seconds before fallback handling...
[2026-06-12 04:09:57,231.231 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 04:09:57,232.232 INFO    ] Checking for system updates...
[2026-06-12 04:09:57,253.253 INFO    ] 200
[2026-06-12 04:09:57,254.254 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:09:57,286.286 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 04:09:57,288.288 INFO    ] No update needed
[2026-06-12 04:09:57,289.289 INFO    ] Checking for camera pi updates...
[2026-06-12 04:09:57,308.308 INFO    ] 200
[2026-06-12 04:09:57,310.310 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:09:57,334.334 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 04:09:57,377.377 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 04:09:57,379.379 INFO    ] No camera update needed
[2026-06-12 04:09:57,380.380 INFO    ] Script finished. Safe exiting...
[2026-06-12 04:09:57,381.381 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 04:09:57,384.384 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 04:09:57,387.387 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 04:09:59,426.426 INFO    ] ================================================
[2026-06-12 04:09:59,442.442 INFO    ] Launching Daemon at Fri Jun 12 04:09:59 IST 2026
[2026-06-12 04:09:59,453.453 INFO    ] ================================================
[2026-06-12 04:09:59,826.826 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 04:09:59
[2026-06-12 04:10:00,159.159 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 04:10:00,304.304 INFO    ] Initializing speech engine...
[2026-06-12 04:10:00,314.314 INFO    ] 2026-06-12 04:10:00
[2026-06-12 04:10:00,520.520 INFO    ] 2026-06-12 04:10:00
[2026-06-12 04:10:00,550.550 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 04:10:00,736.736 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 04:10:00,746.746 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 04:10:00,873.873 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 04:10:00,939.939 INFO    ] time= 12/06/2026 04:10:00
[2026-06-12 04:10:00,967.967 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 04:10:00,973.973 INFO    ] Checking for existing commands in stream...
[2026-06-12 04:10:01,041.041 INFO    ] No existing commands found in stream
[2026-06-12 04:10:06,053.053 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 04:10:06,056.056 INFO    ] Waiting 2.35 seconds before fallback handling...
[2026-06-12 04:10:09,294.294 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 04:10:09,297.297 INFO    ] Checking for system updates...
[2026-06-12 04:10:09,338.338 INFO    ] 200
[2026-06-12 04:10:09,341.341 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:10:09,397.397 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 04:10:09,399.399 INFO    ] No update needed
[2026-06-12 04:10:09,400.400 INFO    ] Checking for camera pi updates...
[2026-06-12 04:10:09,423.423 INFO    ] 200
[2026-06-12 04:10:09,425.425 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:10:09,451.451 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 04:10:09,488.488 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 04:10:09,490.490 INFO    ] No camera update needed
[2026-06-12 04:10:09,491.491 INFO    ] Script finished. Safe exiting...
[2026-06-12 04:10:09,493.493 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 04:10:09,496.496 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 04:10:09,499.499 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 04:10:11,540.540 INFO    ] ================================================
[2026-06-12 04:10:11,555.555 INFO    ] Launching Daemon at Fri Jun 12 04:10:11 IST 2026
[2026-06-12 04:10:11,566.566 INFO    ] ================================================
[2026-06-12 04:10:11,927.927 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 04:10:11
[2026-06-12 04:10:12,262.262 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 04:10:12,414.414 INFO    ] Initializing speech engine...
[2026-06-12 04:10:12,418.418 INFO    ] 2026-06-12 04:10:12
[2026-06-12 04:10:12,625.625 INFO    ] 2026-06-12 04:10:12
[2026-06-12 04:10:12,654.654 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 04:10:12,846.846 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 04:10:12,856.856 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 04:10:13,052.052 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 04:10:13,075.075 INFO    ] time= 12/06/2026 04:10:13
[2026-06-12 04:10:13,081.081 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 04:10:13,083.083 INFO    ] Checking for existing commands in stream...
[2026-06-12 04:10:13,150.150 INFO    ] No existing commands found in stream
[2026-06-12 04:10:18,164.164 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 04:10:18,167.167 INFO    ] Waiting 3.47 seconds before fallback handling...
[2026-06-12 04:10:22,033.033 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 04:10:22,034.034 INFO    ] Checking for system updates...
[2026-06-12 04:10:22,056.056 INFO    ] 200
[2026-06-12 04:10:22,057.057 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:10:22,088.088 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 04:10:22,089.089 INFO    ] No update needed
[2026-06-12 04:10:22,091.091 INFO    ] Checking for camera pi updates...
[2026-06-12 04:10:22,111.111 INFO    ] 200
[2026-06-12 04:10:22,112.112 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:10:22,137.137 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 04:10:22,170.170 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 04:10:22,171.171 INFO    ] No camera update needed
[2026-06-12 04:10:22,173.173 INFO    ] Script finished. Safe exiting...
[2026-06-12 04:10:22,174.174 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 04:10:22,177.177 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 04:10:22,179.179 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 04:10:24,219.219 INFO    ] ================================================
[2026-06-12 04:10:24,234.234 INFO    ] Launching Daemon at Fri Jun 12 04:10:24 IST 2026
[2026-06-12 04:10:24,246.246 INFO    ] ================================================
[2026-06-12 04:10:24,611.611 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 04:10:24
[2026-06-12 04:10:24,929.929 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 04:10:25,072.072 INFO    ] Initializing speech engine...
[2026-06-12 04:10:25,078.078 INFO    ] 2026-06-12 04:10:25
[2026-06-12 04:10:25,280.280 INFO    ] 2026-06-12 04:10:25
[2026-06-12 04:10:25,309.309 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 04:10:25,442.442 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 04:10:25,494.494 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 04:10:25,637.637 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 04:10:25,700.700 INFO    ] time= 12/06/2026 04:10:25
[2026-06-12 04:10:25,722.722 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 04:10:25,728.728 INFO    ] Checking for existing commands in stream...
[2026-06-12 04:10:25,795.795 INFO    ] No existing commands found in stream
[2026-06-12 04:10:30,804.804 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 04:10:30,807.807 INFO    ] Waiting 3.68 seconds before fallback handling...
[2026-06-12 04:10:34,892.892 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 04:10:34,893.893 INFO    ] Checking for system updates...
[2026-06-12 04:10:34,917.917 INFO    ] 200
[2026-06-12 04:10:34,918.918 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:10:34,951.951 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 04:10:34,952.952 INFO    ] No update needed
[2026-06-12 04:10:34,954.954 INFO    ] Checking for camera pi updates...
[2026-06-12 04:10:34,973.973 INFO    ] 200
[2026-06-12 04:10:34,975.975 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:10:34,998.998 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 04:10:35,056.056 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 04:10:35,057.057 INFO    ] No camera update needed
[2026-06-12 04:10:35,059.059 INFO    ] Script finished. Safe exiting...
[2026-06-12 04:10:35,060.060 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 04:10:35,064.064 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 04:10:35,066.066 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 04:10:37,106.106 INFO    ] ================================================
[2026-06-12 04:10:37,122.122 INFO    ] Launching Daemon at Fri Jun 12 04:10:37 IST 2026
[2026-06-12 04:10:37,133.133 INFO    ] ================================================
[2026-06-12 04:10:37,479.479 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 04:10:37
[2026-06-12 04:10:37,795.795 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 04:10:37,933.933 INFO    ] Initializing speech engine...
[2026-06-12 04:10:37,946.946 INFO    ] 2026-06-12 04:10:37
[2026-06-12 04:10:38,164.164 INFO    ] 2026-06-12 04:10:38
[2026-06-12 04:10:38,195.195 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 04:10:38,327.327 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 04:10:38,391.391 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 04:10:38,538.538 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 04:10:38,605.605 INFO    ] time= 12/06/2026 04:10:38
[2026-06-12 04:10:38,630.630 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 04:10:38,647.647 INFO    ] Checking for existing commands in stream...
[2026-06-12 04:10:38,777.777 INFO    ] No existing commands found in stream
[2026-06-12 04:10:43,786.786 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 04:10:43,789.789 INFO    ] Waiting 2.06 seconds before fallback handling...
[2026-06-12 04:10:46,238.238 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 04:10:46,240.240 INFO    ] Checking for system updates...
[2026-06-12 04:10:46,261.261 INFO    ] 200
[2026-06-12 04:10:46,262.262 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:10:46,295.295 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 04:10:46,296.296 INFO    ] No update needed
[2026-06-12 04:10:46,298.298 INFO    ] Checking for camera pi updates...
[2026-06-12 04:10:46,321.321 INFO    ] 200
[2026-06-12 04:10:46,323.323 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:10:46,351.351 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 04:10:46,391.391 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 04:10:46,393.393 INFO    ] No camera update needed
[2026-06-12 04:10:46,394.394 INFO    ] Script finished. Safe exiting...
[2026-06-12 04:10:46,395.395 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 04:10:46,399.399 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 04:10:46,402.402 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 04:10:48,441.441 INFO    ] ================================================
[2026-06-12 04:10:48,457.457 INFO    ] Launching Daemon at Fri Jun 12 04:10:48 IST 2026
[2026-06-12 04:10:48,469.469 INFO    ] ================================================
[2026-06-12 04:10:48,804.804 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 04:10:48
[2026-06-12 04:10:49,122.122 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 04:10:49,254.254 INFO    ] Initializing speech engine...
[2026-06-12 04:10:49,258.258 INFO    ] 2026-06-12 04:10:49
[2026-06-12 04:10:49,476.476 INFO    ] 2026-06-12 04:10:49
[2026-06-12 04:10:49,505.505 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 04:10:49,638.638 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 04:10:49,690.690 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 04:10:49,827.827 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 04:10:49,894.894 INFO    ] time= 12/06/2026 04:10:49
[2026-06-12 04:10:49,919.919 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 04:10:49,925.925 INFO    ] Checking for existing commands in stream...
[2026-06-12 04:10:49,992.992 INFO    ] No existing commands found in stream
[2026-06-12 04:10:55,001.001 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 04:10:55,004.004 INFO    ] Waiting 2.50 seconds before fallback handling...
[2026-06-12 04:10:57,893.893 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 04:10:57,894.894 INFO    ] Checking for system updates...
[2026-06-12 04:10:57,926.926 INFO    ] 200
[2026-06-12 04:10:57,928.928 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:10:57,960.960 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 04:10:57,962.962 INFO    ] No update needed
[2026-06-12 04:10:57,963.963 INFO    ] Checking for camera pi updates...
[2026-06-12 04:10:57,991.991 INFO    ] 200
[2026-06-12 04:10:57,992.992 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:10:58,016.016 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 04:10:58,053.053 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 04:10:58,055.055 INFO    ] No camera update needed
[2026-06-12 04:10:58,056.056 INFO    ] Script finished. Safe exiting...
[2026-06-12 04:10:58,058.058 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 04:10:58,061.061 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 04:10:58,064.064 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 04:11:00,105.105 INFO    ] ================================================
[2026-06-12 04:11:00,121.121 INFO    ] Launching Daemon at Fri Jun 12 04:11:00 IST 2026
[2026-06-12 04:11:00,132.132 INFO    ] ================================================
[2026-06-12 04:11:00,493.493 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 04:11:00
[2026-06-12 04:11:00,831.831 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 04:11:00,982.982 INFO    ] Initializing speech engine...
[2026-06-12 04:11:00,987.987 INFO    ] 2026-06-12 04:11:00
[2026-06-12 04:11:01,279.279 INFO    ] 2026-06-12 04:11:01
[2026-06-12 04:11:01,303.303 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 04:11:01,455.455 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 04:11:01,457.457 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 04:11:01,602.602 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 04:11:01,609.609 INFO    ] time= 12/06/2026 04:11:01
[2026-06-12 04:11:01,663.663 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 04:11:01,716.716 INFO    ] Checking for existing commands in stream...
[2026-06-12 04:11:01,833.833 INFO    ] No existing commands found in stream
[2026-06-12 04:11:06,858.858 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 04:11:06,861.861 INFO    ] Waiting 1.87 seconds before fallback handling...
[2026-06-12 04:11:09,131.131 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 04:11:09,133.133 INFO    ] Checking for system updates...
[2026-06-12 04:11:09,154.154 INFO    ] 200
[2026-06-12 04:11:09,155.155 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:11:09,185.185 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 04:11:09,187.187 INFO    ] No update needed
[2026-06-12 04:11:09,188.188 INFO    ] Checking for camera pi updates...
[2026-06-12 04:11:09,210.210 INFO    ] 200
[2026-06-12 04:11:09,211.211 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:11:09,234.234 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 04:11:09,279.279 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 04:11:09,281.281 INFO    ] No camera update needed
[2026-06-12 04:11:09,282.282 INFO    ] Script finished. Safe exiting...
[2026-06-12 04:11:09,283.283 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 04:11:09,286.286 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 04:11:09,289.289 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 04:11:11,329.329 INFO    ] ================================================
[2026-06-12 04:11:11,345.345 INFO    ] Launching Daemon at Fri Jun 12 04:11:11 IST 2026
[2026-06-12 04:11:11,356.356 INFO    ] ================================================
[2026-06-12 04:11:11,725.725 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 04:11:11
[2026-06-12 04:11:12,063.063 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 04:11:12,217.217 INFO    ] Initializing speech engine...
[2026-06-12 04:11:12,222.222 INFO    ] 2026-06-12 04:11:12
[2026-06-12 04:11:12,427.427 INFO    ] 2026-06-12 04:11:12
[2026-06-12 04:11:12,456.456 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 04:11:12,639.639 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 04:11:12,649.649 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 04:11:12,794.794 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 04:11:12,846.846 INFO    ] time= 12/06/2026 04:11:12
[2026-06-12 04:11:12,869.869 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 04:11:12,876.876 INFO    ] Checking for existing commands in stream...
[2026-06-12 04:11:12,942.942 INFO    ] No existing commands found in stream
[2026-06-12 04:11:17,962.962 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 04:11:17,965.965 INFO    ] Waiting 3.28 seconds before fallback handling...
[2026-06-12 04:11:21,622.622 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 04:11:21,623.623 INFO    ] Checking for system updates...
[2026-06-12 04:11:21,645.645 INFO    ] 200
[2026-06-12 04:11:21,647.647 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:11:21,682.682 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 04:11:21,684.684 INFO    ] No update needed
[2026-06-12 04:11:21,685.685 INFO    ] Checking for camera pi updates...
[2026-06-12 04:11:21,707.707 INFO    ] 200
[2026-06-12 04:11:21,709.709 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:11:21,732.732 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 04:11:21,772.772 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 04:11:21,774.774 INFO    ] No camera update needed
[2026-06-12 04:11:21,775.775 INFO    ] Script finished. Safe exiting...
[2026-06-12 04:11:21,776.776 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 04:11:21,780.780 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 04:11:21,783.783 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 04:11:23,823.823 INFO    ] ================================================
[2026-06-12 04:11:23,839.839 INFO    ] Launching Daemon at Fri Jun 12 04:11:23 IST 2026
[2026-06-12 04:11:23,849.849 INFO    ] ================================================
[2026-06-12 04:11:24,188.188 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 04:11:24
[2026-06-12 04:11:24,501.501 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 04:11:24,631.631 INFO    ] Initializing speech engine...
[2026-06-12 04:11:24,639.639 INFO    ] 2026-06-12 04:11:24
[2026-06-12 04:11:24,851.851 INFO    ] 2026-06-12 04:11:24
[2026-06-12 04:11:24,879.879 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 04:11:25,063.063 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 04:11:25,066.066 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 04:11:25,218.218 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 04:11:25,270.270 INFO    ] time= 12/06/2026 04:11:25
[2026-06-12 04:11:25,293.293 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 04:11:25,300.300 INFO    ] Checking for existing commands in stream...
[2026-06-12 04:11:25,365.365 INFO    ] No existing commands found in stream
[2026-06-12 04:11:30,375.375 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 04:11:30,378.378 INFO    ] Waiting 0.13 seconds before fallback handling...
[2026-06-12 04:11:30,894.894 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 04:11:30,897.897 INFO    ] Checking for system updates...
[2026-06-12 04:11:30,933.933 INFO    ] 200
[2026-06-12 04:11:30,936.936 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:11:30,988.988 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 04:11:30,991.991 INFO    ] No update needed
[2026-06-12 04:11:30,993.993 INFO    ] Checking for camera pi updates...
[2026-06-12 04:11:31,024.024 INFO    ] 200
[2026-06-12 04:11:31,026.026 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:11:31,055.055 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 04:11:31,092.092 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 04:11:31,094.094 INFO    ] No camera update needed
[2026-06-12 04:11:31,096.096 INFO    ] Script finished. Safe exiting...
[2026-06-12 04:11:31,098.098 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 04:11:31,102.102 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 04:11:31,106.106 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 04:11:33,139.139 INFO    ] ================================================
[2026-06-12 04:11:33,165.165 INFO    ] Launching Daemon at Fri Jun 12 04:11:33 IST 2026
[2026-06-12 04:11:33,176.176 INFO    ] ================================================
[2026-06-12 04:11:33,526.526 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 04:11:33
[2026-06-12 04:11:33,839.839 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 04:11:33,977.977 INFO    ] Initializing speech engine...
[2026-06-12 04:11:33,987.987 INFO    ] 2026-06-12 04:11:33
[2026-06-12 04:11:34,192.192 INFO    ] 2026-06-12 04:11:34
[2026-06-12 04:11:34,222.222 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 04:11:34,408.408 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 04:11:34,417.417 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 04:11:34,565.565 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 04:11:34,618.618 INFO    ] time= 12/06/2026 04:11:34
[2026-06-12 04:11:34,643.643 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 04:11:34,648.648 INFO    ] Checking for existing commands in stream...
[2026-06-12 04:11:34,717.717 INFO    ] No existing commands found in stream
[2026-06-12 04:11:39,725.725 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 04:11:39,728.728 INFO    ] Waiting 3.45 seconds before fallback handling...
[2026-06-12 04:11:43,571.571 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 04:11:43,572.572 INFO    ] Checking for system updates...
[2026-06-12 04:11:43,593.593 INFO    ] 200
[2026-06-12 04:11:43,594.594 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:11:43,624.624 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 04:11:43,626.626 INFO    ] No update needed
[2026-06-12 04:11:43,627.627 INFO    ] Checking for camera pi updates...
[2026-06-12 04:11:43,647.647 INFO    ] 200
[2026-06-12 04:11:43,648.648 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:11:43,672.672 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 04:11:43,717.717 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 04:11:43,719.719 INFO    ] No camera update needed
[2026-06-12 04:11:43,729.729 INFO    ] Script finished. Safe exiting...
[2026-06-12 04:11:43,731.731 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 04:11:43,734.734 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 04:11:43,737.737 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 04:11:45,777.777 INFO    ] ================================================
[2026-06-12 04:11:45,792.792 INFO    ] Launching Daemon at Fri Jun 12 04:11:45 IST 2026
[2026-06-12 04:11:45,803.803 INFO    ] ================================================
[2026-06-12 04:11:46,145.145 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 04:11:46
[2026-06-12 04:11:46,455.455 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 04:11:46,597.597 INFO    ] Initializing speech engine...
[2026-06-12 04:11:46,602.602 INFO    ] 2026-06-12 04:11:46
[2026-06-12 04:11:46,807.807 INFO    ] 2026-06-12 04:11:46
[2026-06-12 04:11:46,835.835 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 04:11:47,018.018 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 04:11:47,022.022 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 04:11:47,131.131 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 04:11:47,132.132 INFO    ] time= 12/06/2026 04:11:47
[2026-06-12 04:11:47,134.134 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 04:11:47,135.135 INFO    ] Checking for existing commands in stream...
[2026-06-12 04:11:47,248.248 INFO    ] No existing commands found in stream
[2026-06-12 04:11:52,260.260 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 04:11:52,263.263 INFO    ] Waiting 0.84 seconds before fallback handling...
[2026-06-12 04:11:53,659.659 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 04:11:53,660.660 INFO    ] Checking for system updates...
[2026-06-12 04:11:53,681.681 INFO    ] 200
[2026-06-12 04:11:53,682.682 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:11:53,717.717 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 04:11:53,718.718 INFO    ] No update needed
[2026-06-12 04:11:53,720.720 INFO    ] Checking for camera pi updates...
[2026-06-12 04:11:53,740.740 INFO    ] 200
[2026-06-12 04:11:53,742.742 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:11:53,773.773 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 04:11:53,811.811 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 04:11:53,812.812 INFO    ] No camera update needed
[2026-06-12 04:11:53,813.813 INFO    ] Script finished. Safe exiting...
[2026-06-12 04:11:53,815.815 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 04:11:53,817.817 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 04:11:53,820.820 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 04:11:55,860.860 INFO    ] ================================================
[2026-06-12 04:11:55,875.875 INFO    ] Launching Daemon at Fri Jun 12 04:11:55 IST 2026
[2026-06-12 04:11:55,886.886 INFO    ] ================================================
[2026-06-12 04:11:56,263.263 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 04:11:56
[2026-06-12 04:11:56,580.580 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 04:11:56,712.712 INFO    ] Initializing speech engine...
[2026-06-12 04:11:56,716.716 INFO    ] 2026-06-12 04:11:56
[2026-06-12 04:11:56,933.933 INFO    ] 2026-06-12 04:11:56
[2026-06-12 04:11:56,963.963 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 04:11:57,146.146 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 04:11:57,156.156 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 04:11:57,289.289 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 04:11:57,352.352 INFO    ] time= 12/06/2026 04:11:57
[2026-06-12 04:11:57,375.375 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 04:11:57,380.380 INFO    ] Checking for existing commands in stream...
[2026-06-12 04:11:57,448.448 INFO    ] No existing commands found in stream
[2026-06-12 04:12:02,451.451 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 04:12:02,453.453 INFO    ] Waiting 2.29 seconds before fallback handling...
[2026-06-12 04:12:05,141.141 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 04:12:05,143.143 INFO    ] Checking for system updates...
[2026-06-12 04:12:05,163.163 INFO    ] 200
[2026-06-12 04:12:05,165.165 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:12:05,195.195 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 04:12:05,196.196 INFO    ] No update needed
[2026-06-12 04:12:05,197.197 INFO    ] Checking for camera pi updates...
[2026-06-12 04:12:05,218.218 INFO    ] 200
[2026-06-12 04:12:05,219.219 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:12:05,242.242 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 04:12:05,281.281 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 04:12:05,283.283 INFO    ] No camera update needed
[2026-06-12 04:12:05,284.284 INFO    ] Script finished. Safe exiting...
[2026-06-12 04:12:05,285.285 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 04:12:05,288.288 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 04:12:05,291.291 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 04:12:07,331.331 INFO    ] ================================================
[2026-06-12 04:12:07,346.346 INFO    ] Launching Daemon at Fri Jun 12 04:12:07 IST 2026
[2026-06-12 04:12:07,357.357 INFO    ] ================================================
[2026-06-12 04:12:07,733.733 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 04:12:07
[2026-06-12 04:12:08,070.070 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 04:12:08,219.219 INFO    ] Initializing speech engine...
[2026-06-12 04:12:08,225.225 INFO    ] 2026-06-12 04:12:08
[2026-06-12 04:12:08,432.432 INFO    ] 2026-06-12 04:12:08
[2026-06-12 04:12:08,461.461 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 04:12:08,646.646 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 04:12:08,656.656 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 04:12:08,850.850 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 04:12:08,878.878 INFO    ] time= 12/06/2026 04:12:08
[2026-06-12 04:12:08,881.881 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 04:12:08,882.882 INFO    ] Checking for existing commands in stream...
[2026-06-12 04:12:08,950.950 INFO    ] No existing commands found in stream
[2026-06-12 04:12:13,964.964 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 04:12:13,967.967 INFO    ] Waiting 3.60 seconds before fallback handling...
[2026-06-12 04:12:18,740.740 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 04:12:18,743.743 INFO    ] Checking for system updates...
[2026-06-12 04:12:18,781.781 INFO    ] 200
[2026-06-12 04:12:18,784.784 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:12:18,836.836 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 04:12:18,838.838 INFO    ] No update needed
[2026-06-12 04:12:18,841.841 INFO    ] Checking for camera pi updates...
[2026-06-12 04:12:18,876.876 INFO    ] 200
[2026-06-12 04:12:18,888.888 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:12:18,932.932 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 04:12:18,968.968 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 04:12:18,969.969 INFO    ] No camera update needed
[2026-06-12 04:12:18,971.971 INFO    ] Script finished. Safe exiting...
[2026-06-12 04:12:18,972.972 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 04:12:18,975.975 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 04:12:18,978.978 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 04:12:21,017.017 INFO    ] ================================================
[2026-06-12 04:12:21,033.033 INFO    ] Launching Daemon at Fri Jun 12 04:12:21 IST 2026
[2026-06-12 04:12:21,044.044 INFO    ] ================================================
[2026-06-12 04:12:21,395.395 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 04:12:21
[2026-06-12 04:12:21,711.711 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 04:12:21,844.844 INFO    ] Initializing speech engine...
[2026-06-12 04:12:21,848.848 INFO    ] 2026-06-12 04:12:21
[2026-06-12 04:12:22,041.041 INFO    ] 2026-06-12 04:12:22
[2026-06-12 04:12:22,085.085 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 04:12:22,244.244 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 04:12:22,312.312 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 04:12:22,461.461 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 04:12:22,520.520 INFO    ] time= 12/06/2026 04:12:22
[2026-06-12 04:12:22,555.555 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 04:12:22,561.561 INFO    ] Checking for existing commands in stream...
[2026-06-12 04:12:22,639.639 INFO    ] No existing commands found in stream
[2026-06-12 04:12:27,653.653 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 04:12:27,656.656 INFO    ] Waiting 0.44 seconds before fallback handling...
[2026-06-12 04:12:28,465.465 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 04:12:28,467.467 INFO    ] Checking for system updates...
[2026-06-12 04:12:28,488.488 INFO    ] 200
[2026-06-12 04:12:28,490.490 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:12:28,523.523 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 04:12:28,524.524 INFO    ] No update needed
[2026-06-12 04:12:28,525.525 INFO    ] Checking for camera pi updates...
[2026-06-12 04:12:28,544.544 INFO    ] 200
[2026-06-12 04:12:28,546.546 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:12:28,569.569 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 04:12:28,610.610 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 04:12:28,612.612 INFO    ] No camera update needed
[2026-06-12 04:12:28,613.613 INFO    ] Script finished. Safe exiting...
[2026-06-12 04:12:28,614.614 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 04:12:28,617.617 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 04:12:28,620.620 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 04:12:30,661.661 INFO    ] ================================================
[2026-06-12 04:12:30,676.676 INFO    ] Launching Daemon at Fri Jun 12 04:12:30 IST 2026
[2026-06-12 04:12:30,687.687 INFO    ] ================================================
[2026-06-12 04:12:31,031.031 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 04:12:31
[2026-06-12 04:12:31,343.343 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 04:12:31,491.491 INFO    ] Initializing speech engine...
[2026-06-12 04:12:31,503.503 INFO    ] 2026-06-12 04:12:31
[2026-06-12 04:12:31,696.696 INFO    ] 2026-06-12 04:12:31
[2026-06-12 04:12:31,752.752 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 04:12:31,931.931 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 04:12:31,955.955 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 04:12:32,115.115 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 04:12:32,137.137 INFO    ] time= 12/06/2026 04:12:32
[2026-06-12 04:12:32,176.176 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 04:12:32,232.232 INFO    ] Checking for existing commands in stream...
[2026-06-12 04:12:32,347.347 INFO    ] No existing commands found in stream
[2026-06-12 04:12:37,358.358 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 04:12:37,362.362 INFO    ] Waiting 2.54 seconds before fallback handling...
[2026-06-12 04:12:40,331.331 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 04:12:40,334.334 INFO    ] Checking for system updates...
[2026-06-12 04:12:40,370.370 INFO    ] 200
[2026-06-12 04:12:40,372.372 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:12:40,428.428 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 04:12:40,431.431 INFO    ] No update needed
[2026-06-12 04:12:40,433.433 INFO    ] Checking for camera pi updates...
[2026-06-12 04:12:40,459.459 INFO    ] 200
[2026-06-12 04:12:40,460.460 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:12:40,485.485 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 04:12:40,623.623 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 04:12:40,624.624 INFO    ] No camera update needed
[2026-06-12 04:12:40,626.626 INFO    ] Script finished. Safe exiting...
[2026-06-12 04:12:40,627.627 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 04:12:40,630.630 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 04:12:40,633.633 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 04:12:42,672.672 INFO    ] ================================================
[2026-06-12 04:12:42,687.687 INFO    ] Launching Daemon at Fri Jun 12 04:12:42 IST 2026
[2026-06-12 04:12:42,697.697 INFO    ] ================================================
[2026-06-12 04:12:43,040.040 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 04:12:43
[2026-06-12 04:12:43,352.352 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 04:12:43,482.482 INFO    ] Initializing speech engine...
[2026-06-12 04:12:43,490.490 INFO    ] 2026-06-12 04:12:43
[2026-06-12 04:12:43,700.700 INFO    ] 2026-06-12 04:12:43
[2026-06-12 04:12:43,729.729 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 04:12:43,912.912 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 04:12:43,922.922 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 04:12:44,072.072 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 04:12:44,120.120 INFO    ] time= 12/06/2026 04:12:44
[2026-06-12 04:12:44,142.142 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 04:12:44,148.148 INFO    ] Checking for existing commands in stream...
[2026-06-12 04:12:44,215.215 INFO    ] No existing commands found in stream
[2026-06-12 04:12:49,223.223 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 04:12:49,226.226 INFO    ] Waiting 0.85 seconds before fallback handling...
[2026-06-12 04:12:50,457.457 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 04:12:50,459.459 INFO    ] Checking for system updates...
[2026-06-12 04:12:50,479.479 INFO    ] 200
[2026-06-12 04:12:50,481.481 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:12:50,513.513 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 04:12:50,514.514 INFO    ] No update needed
[2026-06-12 04:12:50,515.515 INFO    ] Checking for camera pi updates...
[2026-06-12 04:12:50,535.535 INFO    ] 200
[2026-06-12 04:12:50,536.536 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:12:50,563.563 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 04:12:50,603.603 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 04:12:50,605.605 INFO    ] No camera update needed
[2026-06-12 04:12:50,606.606 INFO    ] Script finished. Safe exiting...
[2026-06-12 04:12:50,607.607 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 04:12:50,610.610 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 04:12:50,613.613 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 04:12:52,652.652 INFO    ] ================================================
[2026-06-12 04:12:52,668.668 INFO    ] Launching Daemon at Fri Jun 12 04:12:52 IST 2026
[2026-06-12 04:12:52,679.679 INFO    ] ================================================
[2026-06-12 04:12:53,016.016 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 04:12:53
[2026-06-12 04:12:53,327.327 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 04:12:53,469.469 INFO    ] Initializing speech engine...
[2026-06-12 04:12:53,474.474 INFO    ] 2026-06-12 04:12:53
[2026-06-12 04:12:53,678.678 INFO    ] 2026-06-12 04:12:53
[2026-06-12 04:12:53,706.706 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 04:12:53,888.888 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 04:12:53,891.891 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 04:12:54,043.043 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 04:12:54,096.096 INFO    ] time= 12/06/2026 04:12:54
[2026-06-12 04:12:54,118.118 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 04:12:54,125.125 INFO    ] Checking for existing commands in stream...
[2026-06-12 04:12:54,192.192 INFO    ] No existing commands found in stream
[2026-06-12 04:12:59,221.221 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 04:12:59,224.224 INFO    ] Waiting 1.55 seconds before fallback handling...
[2026-06-12 04:13:01,142.142 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 04:13:01,143.143 INFO    ] Checking for system updates...
[2026-06-12 04:13:01,165.165 INFO    ] 200
[2026-06-12 04:13:01,166.166 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:13:01,200.200 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 04:13:01,201.201 INFO    ] No update needed
[2026-06-12 04:13:01,203.203 INFO    ] Checking for camera pi updates...
[2026-06-12 04:13:01,226.226 INFO    ] 200
[2026-06-12 04:13:01,228.228 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:13:01,253.253 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 04:13:01,281.281 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 04:13:01,282.282 INFO    ] No camera update needed
[2026-06-12 04:13:01,284.284 INFO    ] Script finished. Safe exiting...
[2026-06-12 04:13:01,285.285 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 04:13:01,288.288 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 04:13:01,292.292 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 04:13:03,326.326 INFO    ] ================================================
[2026-06-12 04:13:03,342.342 INFO    ] Launching Daemon at Fri Jun 12 04:13:03 IST 2026
[2026-06-12 04:13:03,352.352 INFO    ] ================================================
[2026-06-12 04:13:03,680.680 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 04:13:03
[2026-06-12 04:13:03,992.992 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 04:13:04,130.130 INFO    ] Initializing speech engine...
[2026-06-12 04:13:04,135.135 INFO    ] 2026-06-12 04:13:04
[2026-06-12 04:13:04,353.353 INFO    ] 2026-06-12 04:13:04
[2026-06-12 04:13:04,383.383 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 04:13:04,526.526 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 04:13:04,571.571 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 04:13:04,720.720 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 04:13:04,778.778 INFO    ] time= 12/06/2026 04:13:04
[2026-06-12 04:13:04,801.801 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 04:13:04,807.807 INFO    ] Checking for existing commands in stream...
[2026-06-12 04:13:04,875.875 INFO    ] No existing commands found in stream
[2026-06-12 04:13:09,884.884 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 04:13:09,887.887 INFO    ] Waiting 3.99 seconds before fallback handling...
[2026-06-12 04:13:14,253.253 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 04:13:14,254.254 INFO    ] Checking for system updates...
[2026-06-12 04:13:14,275.275 INFO    ] 200
[2026-06-12 04:13:14,276.276 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:13:14,307.307 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 04:13:14,308.308 INFO    ] No update needed
[2026-06-12 04:13:14,309.309 INFO    ] Checking for camera pi updates...
[2026-06-12 04:13:14,331.331 INFO    ] 200
[2026-06-12 04:13:14,333.333 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:13:14,356.356 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 04:13:14,397.397 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 04:13:14,398.398 INFO    ] No camera update needed
[2026-06-12 04:13:14,399.399 INFO    ] Script finished. Safe exiting...
[2026-06-12 04:13:14,401.401 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 04:13:14,403.403 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 04:13:14,406.406 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 04:13:16,443.443 INFO    ] ================================================
[2026-06-12 04:13:16,458.458 INFO    ] Launching Daemon at Fri Jun 12 04:13:16 IST 2026
[2026-06-12 04:13:16,469.469 INFO    ] ================================================
[2026-06-12 04:13:16,850.850 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 04:13:16
[2026-06-12 04:13:17,188.188 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 04:13:17,341.341 INFO    ] Initializing speech engine...
[2026-06-12 04:13:17,345.345 INFO    ] 2026-06-12 04:13:17
[2026-06-12 04:13:17,552.552 INFO    ] 2026-06-12 04:13:17
[2026-06-12 04:13:17,581.581 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 04:13:17,764.764 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 04:13:17,773.773 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 04:13:17,948.948 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 04:13:17,982.982 INFO    ] time= 12/06/2026 04:13:17
[2026-06-12 04:13:17,992.992 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 04:13:17,998.998 INFO    ] Checking for existing commands in stream...
[2026-06-12 04:13:18,065.065 INFO    ] No existing commands found in stream
[2026-06-12 04:13:23,080.080 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 04:13:23,083.083 INFO    ] Waiting 3.22 seconds before fallback handling...
[2026-06-12 04:13:26,701.701 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 04:13:26,703.703 INFO    ] Checking for system updates...
[2026-06-12 04:13:26,726.726 INFO    ] 200
[2026-06-12 04:13:26,727.727 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:13:26,760.760 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 04:13:26,762.762 INFO    ] No update needed
[2026-06-12 04:13:26,763.763 INFO    ] Checking for camera pi updates...
[2026-06-12 04:13:26,785.785 INFO    ] 200
[2026-06-12 04:13:26,786.786 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:13:26,812.812 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 04:13:26,848.848 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 04:13:26,850.850 INFO    ] No camera update needed
[2026-06-12 04:13:26,851.851 INFO    ] Script finished. Safe exiting...
[2026-06-12 04:13:26,853.853 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 04:13:26,856.856 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 04:13:26,859.859 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 04:13:28,897.897 INFO    ] ================================================
[2026-06-12 04:13:28,912.912 INFO    ] Launching Daemon at Fri Jun 12 04:13:28 IST 2026
[2026-06-12 04:13:28,924.924 INFO    ] ================================================
[2026-06-12 04:13:29,256.256 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 04:13:29
[2026-06-12 04:13:29,573.573 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 04:13:29,704.704 INFO    ] Initializing speech engine...
[2026-06-12 04:13:29,712.712 INFO    ] 2026-06-12 04:13:29
[2026-06-12 04:13:29,923.923 INFO    ] 2026-06-12 04:13:29
[2026-06-12 04:13:29,952.952 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 04:13:30,135.135 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 04:13:30,145.145 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 04:13:30,274.274 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 04:13:30,327.327 INFO    ] time= 12/06/2026 04:13:30
[2026-06-12 04:13:30,365.365 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 04:13:30,367.367 INFO    ] Checking for existing commands in stream...
[2026-06-12 04:13:30,462.462 INFO    ] No existing commands found in stream
[2026-06-12 04:13:35,471.471 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 04:13:35,474.474 INFO    ] Waiting 3.20 seconds before fallback handling...
[2026-06-12 04:13:39,058.058 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 04:13:39,059.059 INFO    ] Checking for system updates...
[2026-06-12 04:13:39,081.081 INFO    ] 200
[2026-06-12 04:13:39,083.083 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:13:39,115.115 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 04:13:39,117.117 INFO    ] No update needed
[2026-06-12 04:13:39,118.118 INFO    ] Checking for camera pi updates...
[2026-06-12 04:13:39,138.138 INFO    ] 200
[2026-06-12 04:13:39,139.139 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:13:39,162.162 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 04:13:39,202.202 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 04:13:39,203.203 INFO    ] No camera update needed
[2026-06-12 04:13:39,204.204 INFO    ] Script finished. Safe exiting...
[2026-06-12 04:13:39,206.206 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 04:13:39,209.209 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 04:13:39,211.211 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 04:13:41,251.251 INFO    ] ================================================
[2026-06-12 04:13:41,267.267 INFO    ] Launching Daemon at Fri Jun 12 04:13:41 IST 2026
[2026-06-12 04:13:41,278.278 INFO    ] ================================================
[2026-06-12 04:13:41,627.627 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 04:13:41
[2026-06-12 04:13:41,943.943 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 04:13:42,076.076 INFO    ] Initializing speech engine...
[2026-06-12 04:13:42,091.091 INFO    ] 2026-06-12 04:13:42
[2026-06-12 04:13:42,297.297 INFO    ] 2026-06-12 04:13:42
[2026-06-12 04:13:42,325.325 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 04:13:42,509.509 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 04:13:42,513.513 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 04:13:42,706.706 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 04:13:42,739.739 INFO    ] time= 12/06/2026 04:13:42
[2026-06-12 04:13:42,745.745 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 04:13:42,747.747 INFO    ] Checking for existing commands in stream...
[2026-06-12 04:13:42,814.814 INFO    ] No existing commands found in stream
[2026-06-12 04:13:47,823.823 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 04:13:47,825.825 INFO    ] Waiting 2.97 seconds before fallback handling...
[2026-06-12 04:13:51,188.188 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 04:13:51,190.190 INFO    ] Checking for system updates...
[2026-06-12 04:13:51,210.210 INFO    ] 200
[2026-06-12 04:13:51,212.212 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:13:51,244.244 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 04:13:51,245.245 INFO    ] No update needed
[2026-06-12 04:13:51,247.247 INFO    ] Checking for camera pi updates...
[2026-06-12 04:13:51,266.266 INFO    ] 200
[2026-06-12 04:13:51,267.267 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:13:51,292.292 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 04:13:51,332.332 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 04:13:51,333.333 INFO    ] No camera update needed
[2026-06-12 04:13:51,334.334 INFO    ] Script finished. Safe exiting...
[2026-06-12 04:13:51,335.335 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 04:13:51,338.338 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 04:13:51,341.341 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 04:13:53,382.382 INFO    ] ================================================
[2026-06-12 04:13:53,403.403 INFO    ] Launching Daemon at Fri Jun 12 04:13:53 IST 2026
[2026-06-12 04:13:53,413.413 INFO    ] ================================================
[2026-06-12 04:13:53,776.776 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 04:13:53
[2026-06-12 04:13:54,091.091 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 04:13:54,223.223 INFO    ] Initializing speech engine...
[2026-06-12 04:13:54,236.236 INFO    ] 2026-06-12 04:13:54
[2026-06-12 04:13:54,444.444 INFO    ] 2026-06-12 04:13:54
[2026-06-12 04:13:54,473.473 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 04:13:54,660.660 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 04:13:54,670.670 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 04:13:54,807.807 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 04:13:54,863.863 INFO    ] time= 12/06/2026 04:13:54
[2026-06-12 04:13:54,888.888 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 04:13:54,893.893 INFO    ] Checking for existing commands in stream...
[2026-06-12 04:13:54,960.960 INFO    ] No existing commands found in stream
[2026-06-12 04:13:59,969.969 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 04:13:59,972.972 INFO    ] Waiting 1.38 seconds before fallback handling...
[2026-06-12 04:14:01,739.739 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 04:14:01,740.740 INFO    ] Checking for system updates...
[2026-06-12 04:14:01,772.772 INFO    ] 200
[2026-06-12 04:14:01,775.775 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:14:01,856.856 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 04:14:01,860.860 INFO    ] No update needed
[2026-06-12 04:14:01,862.862 INFO    ] Checking for camera pi updates...
[2026-06-12 04:14:01,899.899 INFO    ] 200
[2026-06-12 04:14:01,901.901 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:14:01,945.945 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 04:14:01,993.993 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 04:14:01,995.995 INFO    ] No camera update needed
[2026-06-12 04:14:01,997.997 INFO    ] Script finished. Safe exiting...
[2026-06-12 04:14:01,999.999 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 04:14:02,004.004 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 04:14:02,008.008 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 04:14:04,050.050 INFO    ] ================================================
[2026-06-12 04:14:04,066.066 INFO    ] Launching Daemon at Fri Jun 12 04:14:04 IST 2026
[2026-06-12 04:14:04,076.076 INFO    ] ================================================
[2026-06-12 04:14:04,434.434 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 04:14:04
[2026-06-12 04:14:04,745.745 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 04:14:04,877.877 INFO    ] Initializing speech engine...
[2026-06-12 04:14:04,881.881 INFO    ] 2026-06-12 04:14:04
[2026-06-12 04:14:05,109.109 INFO    ] 2026-06-12 04:14:05
[2026-06-12 04:14:05,139.139 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 04:14:05,333.333 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 04:14:05,336.336 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 04:14:05,504.504 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 04:14:05,554.554 INFO    ] time= 12/06/2026 04:14:05
[2026-06-12 04:14:05,578.578 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 04:14:05,585.585 INFO    ] Checking for existing commands in stream...
[2026-06-12 04:14:05,656.656 INFO    ] No existing commands found in stream
[2026-06-12 04:14:10,664.664 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 04:14:10,667.667 INFO    ] Waiting 0.12 seconds before fallback handling...
[2026-06-12 04:14:11,166.166 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 04:14:11,167.167 INFO    ] Checking for system updates...
[2026-06-12 04:14:11,189.189 INFO    ] 200
[2026-06-12 04:14:11,191.191 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:14:11,221.221 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 04:14:11,222.222 INFO    ] No update needed
[2026-06-12 04:14:11,224.224 INFO    ] Checking for camera pi updates...
[2026-06-12 04:14:11,243.243 INFO    ] 200
[2026-06-12 04:14:11,244.244 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:14:11,267.267 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 04:14:11,313.313 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 04:14:11,315.315 INFO    ] No camera update needed
[2026-06-12 04:14:11,316.316 INFO    ] Script finished. Safe exiting...
[2026-06-12 04:14:11,317.317 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 04:14:11,320.320 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 04:14:11,323.323 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 04:14:13,361.361 INFO    ] ================================================
[2026-06-12 04:14:13,375.375 INFO    ] Launching Daemon at Fri Jun 12 04:14:13 IST 2026
[2026-06-12 04:14:13,386.386 INFO    ] ================================================
[2026-06-12 04:14:13,758.758 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 04:14:13
[2026-06-12 04:14:14,092.092 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 04:14:14,234.234 INFO    ] Initializing speech engine...
[2026-06-12 04:14:14,242.242 INFO    ] 2026-06-12 04:14:14
[2026-06-12 04:14:14,461.461 INFO    ] 2026-06-12 04:14:14
[2026-06-12 04:14:14,490.490 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 04:14:14,679.679 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 04:14:14,690.690 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 04:14:14,818.818 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 04:14:14,884.884 INFO    ] time= 12/06/2026 04:14:14
[2026-06-12 04:14:14,913.913 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 04:14:14,919.919 INFO    ] Checking for existing commands in stream...
[2026-06-12 04:14:14,988.988 INFO    ] No existing commands found in stream
[2026-06-12 04:14:20,002.002 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 04:14:20,011.011 INFO    ] Waiting 0.16 seconds before fallback handling...
[2026-06-12 04:14:20,562.562 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 04:14:20,564.564 INFO    ] Checking for system updates...
[2026-06-12 04:14:20,586.586 INFO    ] 200
[2026-06-12 04:14:20,587.587 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:14:20,617.617 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 04:14:20,618.618 INFO    ] No update needed
[2026-06-12 04:14:20,620.620 INFO    ] Checking for camera pi updates...
[2026-06-12 04:14:20,641.641 INFO    ] 200
[2026-06-12 04:14:20,642.642 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:14:20,668.668 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 04:14:20,705.705 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 04:14:20,706.706 INFO    ] No camera update needed
[2026-06-12 04:14:20,708.708 INFO    ] Script finished. Safe exiting...
[2026-06-12 04:14:20,709.709 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 04:14:20,712.712 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 04:14:20,715.715 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 04:14:22,752.752 INFO    ] ================================================
[2026-06-12 04:14:22,767.767 INFO    ] Launching Daemon at Fri Jun 12 04:14:22 IST 2026
[2026-06-12 04:14:22,778.778 INFO    ] ================================================
[2026-06-12 04:14:23,142.142 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 04:14:23
[2026-06-12 04:14:23,460.460 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 04:14:23,592.592 INFO    ] Initializing speech engine...
[2026-06-12 04:14:23,600.600 INFO    ] 2026-06-12 04:14:23
[2026-06-12 04:14:23,813.813 INFO    ] 2026-06-12 04:14:23
[2026-06-12 04:14:23,841.841 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 04:14:24,025.025 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 04:14:24,035.035 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 04:14:24,224.224 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 04:14:24,251.251 INFO    ] time= 12/06/2026 04:14:24
[2026-06-12 04:14:24,256.256 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 04:14:24,259.259 INFO    ] Checking for existing commands in stream...
[2026-06-12 04:14:24,326.326 INFO    ] No existing commands found in stream
[2026-06-12 04:14:29,340.340 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 04:14:29,343.343 INFO    ] Waiting 1.49 seconds before fallback handling...
[2026-06-12 04:14:31,261.261 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 04:14:31,263.263 INFO    ] Checking for system updates...
[2026-06-12 04:14:31,284.284 INFO    ] 200
[2026-06-12 04:14:31,285.285 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:14:31,317.317 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 04:14:31,318.318 INFO    ] No update needed
[2026-06-12 04:14:31,320.320 INFO    ] Checking for camera pi updates...
[2026-06-12 04:14:31,339.339 INFO    ] 200
[2026-06-12 04:14:31,340.340 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:14:31,364.364 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 04:14:31,398.398 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 04:14:31,399.399 INFO    ] No camera update needed
[2026-06-12 04:14:31,401.401 INFO    ] Script finished. Safe exiting...
[2026-06-12 04:14:31,402.402 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 04:14:31,405.405 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 04:14:31,408.408 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 04:14:33,441.441 INFO    ] ================================================
[2026-06-12 04:14:33,456.456 INFO    ] Launching Daemon at Fri Jun 12 04:14:33 IST 2026
[2026-06-12 04:14:33,467.467 INFO    ] ================================================
[2026-06-12 04:14:33,834.834 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 04:14:33
[2026-06-12 04:14:34,145.145 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 04:14:34,275.275 INFO    ] Initializing speech engine...
[2026-06-12 04:14:34,280.280 INFO    ] 2026-06-12 04:14:34
[2026-06-12 04:14:34,476.476 INFO    ] 2026-06-12 04:14:34
[2026-06-12 04:14:34,520.520 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 04:14:34,675.675 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 04:14:34,738.738 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 04:14:34,877.877 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 04:14:34,929.929 INFO    ] time= 12/06/2026 04:14:34
[2026-06-12 04:14:34,980.980 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 04:14:34,982.982 INFO    ] Checking for existing commands in stream...
[2026-06-12 04:14:35,082.082 INFO    ] No existing commands found in stream
[2026-06-12 04:14:40,091.091 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 04:14:40,094.094 INFO    ] Waiting 1.61 seconds before fallback handling...
[2026-06-12 04:14:42,109.109 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 04:14:42,111.111 INFO    ] Checking for system updates...
[2026-06-12 04:14:42,133.133 INFO    ] 200
[2026-06-12 04:14:42,135.135 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:14:42,169.169 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 04:14:42,171.171 INFO    ] No update needed
[2026-06-12 04:14:42,172.172 INFO    ] Checking for camera pi updates...
[2026-06-12 04:14:42,194.194 INFO    ] 200
[2026-06-12 04:14:42,196.196 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:14:42,219.219 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 04:14:42,255.255 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 04:14:42,256.256 INFO    ] No camera update needed
[2026-06-12 04:14:42,258.258 INFO    ] Script finished. Safe exiting...
[2026-06-12 04:14:42,259.259 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 04:14:42,262.262 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 04:14:42,265.265 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 04:14:44,303.303 INFO    ] ================================================
[2026-06-12 04:14:44,318.318 INFO    ] Launching Daemon at Fri Jun 12 04:14:44 IST 2026
[2026-06-12 04:14:44,329.329 INFO    ] ================================================
[2026-06-12 04:14:44,658.658 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 04:14:44
[2026-06-12 04:14:44,968.968 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 04:14:45,098.098 INFO    ] Initializing speech engine...
[2026-06-12 04:14:45,102.102 INFO    ] 2026-06-12 04:14:45
[2026-06-12 04:14:45,321.321 INFO    ] 2026-06-12 04:14:45
[2026-06-12 04:14:45,349.349 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 04:14:45,534.534 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 04:14:45,537.537 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 04:14:45,695.695 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 04:14:45,744.744 INFO    ] time= 12/06/2026 04:14:45
[2026-06-12 04:14:45,766.766 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 04:14:45,772.772 INFO    ] Checking for existing commands in stream...
[2026-06-12 04:14:45,838.838 INFO    ] No existing commands found in stream
[2026-06-12 04:14:50,848.848 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 04:14:50,851.851 INFO    ] Waiting 3.36 seconds before fallback handling...
[2026-06-12 04:14:54,579.579 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 04:14:54,581.581 INFO    ] Checking for system updates...
[2026-06-12 04:14:54,602.602 INFO    ] 200
[2026-06-12 04:14:54,603.603 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:14:54,635.635 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 04:14:54,637.637 INFO    ] No update needed
[2026-06-12 04:14:54,638.638 INFO    ] Checking for camera pi updates...
[2026-06-12 04:14:54,657.657 INFO    ] 200
[2026-06-12 04:14:54,658.658 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:14:54,683.683 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 04:14:54,822.822 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 04:14:54,824.824 INFO    ] No camera update needed
[2026-06-12 04:14:54,825.825 INFO    ] Script finished. Safe exiting...
[2026-06-12 04:14:54,826.826 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 04:14:54,829.829 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 04:14:54,832.832 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 04:14:56,871.871 INFO    ] ================================================
[2026-06-12 04:14:56,887.887 INFO    ] Launching Daemon at Fri Jun 12 04:14:56 IST 2026
[2026-06-12 04:14:56,897.897 INFO    ] ================================================
[2026-06-12 04:14:57,243.243 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 04:14:57
[2026-06-12 04:14:57,554.554 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 04:14:57,686.686 INFO    ] Initializing speech engine...
[2026-06-12 04:14:57,699.699 INFO    ] 2026-06-12 04:14:57
[2026-06-12 04:14:57,904.904 INFO    ] 2026-06-12 04:14:57
[2026-06-12 04:14:57,935.935 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 04:14:58,121.121 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 04:14:58,130.130 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 04:14:58,259.259 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 04:14:58,323.323 INFO    ] time= 12/06/2026 04:14:58
[2026-06-12 04:14:58,352.352 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 04:14:58,358.358 INFO    ] Checking for existing commands in stream...
[2026-06-12 04:14:58,449.449 INFO    ] No existing commands found in stream
[2026-06-12 04:15:03,468.468 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 04:15:03,471.471 INFO    ] Waiting 0.08 seconds before fallback handling...
[2026-06-12 04:15:03,910.910 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 04:15:03,911.911 INFO    ] Checking for system updates...
[2026-06-12 04:15:03,933.933 INFO    ] 200
[2026-06-12 04:15:03,934.934 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:15:03,967.967 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 04:15:03,969.969 INFO    ] No update needed
[2026-06-12 04:15:03,970.970 INFO    ] Checking for camera pi updates...
[2026-06-12 04:15:03,990.990 INFO    ] 200
[2026-06-12 04:15:03,991.991 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:15:04,016.016 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 04:15:04,049.049 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 04:15:04,051.051 INFO    ] No camera update needed
[2026-06-12 04:15:04,052.052 INFO    ] Script finished. Safe exiting...
[2026-06-12 04:15:04,053.053 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 04:15:04,056.056 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 04:15:04,059.059 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 04:15:06,099.099 INFO    ] ================================================
[2026-06-12 04:15:06,114.114 INFO    ] Launching Daemon at Fri Jun 12 04:15:06 IST 2026
[2026-06-12 04:15:06,125.125 INFO    ] ================================================
[2026-06-12 04:15:06,483.483 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 04:15:06
[2026-06-12 04:15:06,794.794 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 04:15:06,928.928 INFO    ] Initializing speech engine...
[2026-06-12 04:15:06,932.932 INFO    ] 2026-06-12 04:15:06
[2026-06-12 04:15:07,158.158 INFO    ] 2026-06-12 04:15:07
[2026-06-12 04:15:07,189.189 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 04:15:07,385.385 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 04:15:07,388.388 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 04:15:07,526.526 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 04:15:07,588.588 INFO    ] time= 12/06/2026 04:15:07
[2026-06-12 04:15:07,627.627 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 04:15:07,633.633 INFO    ] Checking for existing commands in stream...
[2026-06-12 04:15:07,709.709 INFO    ] No existing commands found in stream
[2026-06-12 04:15:12,739.739 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 04:15:12,742.742 INFO    ] Waiting 2.76 seconds before fallback handling...
[2026-06-12 04:15:15,887.887 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 04:15:15,889.889 INFO    ] Checking for system updates...
[2026-06-12 04:15:15,909.909 INFO    ] 200
[2026-06-12 04:15:15,911.911 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:15:15,941.941 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 04:15:15,942.942 INFO    ] No update needed
[2026-06-12 04:15:15,944.944 INFO    ] Checking for camera pi updates...
[2026-06-12 04:15:15,963.963 INFO    ] 200
[2026-06-12 04:15:15,964.964 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:15:15,990.990 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 04:15:16,028.028 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 04:15:16,030.030 INFO    ] No camera update needed
[2026-06-12 04:15:16,031.031 INFO    ] Script finished. Safe exiting...
[2026-06-12 04:15:16,032.032 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 04:15:16,035.035 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 04:15:16,038.038 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 04:15:18,077.077 INFO    ] ================================================
[2026-06-12 04:15:18,098.098 INFO    ] Launching Daemon at Fri Jun 12 04:15:18 IST 2026
[2026-06-12 04:15:18,108.108 INFO    ] ================================================
[2026-06-12 04:15:18,477.477 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 04:15:18
[2026-06-12 04:15:18,808.808 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 04:15:18,957.957 INFO    ] Initializing speech engine...
[2026-06-12 04:15:18,963.963 INFO    ] 2026-06-12 04:15:18
[2026-06-12 04:15:19,172.172 INFO    ] 2026-06-12 04:15:19
[2026-06-12 04:15:19,200.200 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 04:15:19,388.388 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 04:15:19,397.397 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 04:15:19,559.559 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 04:15:19,605.605 INFO    ] time= 12/06/2026 04:15:19
[2026-06-12 04:15:19,622.622 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 04:15:19,628.628 INFO    ] Checking for existing commands in stream...
[2026-06-12 04:15:19,695.695 INFO    ] No existing commands found in stream
[2026-06-12 04:15:24,705.705 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 04:15:24,708.708 INFO    ] Waiting 0.47 seconds before fallback handling...
[2026-06-12 04:15:25,557.557 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 04:15:25,558.558 INFO    ] Checking for system updates...
[2026-06-12 04:15:25,580.580 INFO    ] 200
[2026-06-12 04:15:25,581.581 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:15:25,612.612 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 04:15:25,613.613 INFO    ] No update needed
[2026-06-12 04:15:25,615.615 INFO    ] Checking for camera pi updates...
[2026-06-12 04:15:25,634.634 INFO    ] 200
[2026-06-12 04:15:25,635.635 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:15:25,658.658 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 04:15:25,693.693 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 04:15:25,694.694 INFO    ] No camera update needed
[2026-06-12 04:15:25,696.696 INFO    ] Script finished. Safe exiting...
[2026-06-12 04:15:25,697.697 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 04:15:25,700.700 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 04:15:25,702.702 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 04:15:27,740.740 INFO    ] ================================================
[2026-06-12 04:15:27,755.755 INFO    ] Launching Daemon at Fri Jun 12 04:15:27 IST 2026
[2026-06-12 04:15:27,766.766 INFO    ] ================================================
[2026-06-12 04:15:28,102.102 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 04:15:28
[2026-06-12 04:15:28,412.412 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 04:15:28,541.541 INFO    ] Initializing speech engine...
[2026-06-12 04:15:28,550.550 INFO    ] 2026-06-12 04:15:28
[2026-06-12 04:15:28,763.763 INFO    ] 2026-06-12 04:15:28
[2026-06-12 04:15:28,792.792 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 04:15:28,977.977 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 04:15:28,980.980 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 04:15:29,116.116 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 04:15:29,180.180 INFO    ] time= 12/06/2026 04:15:29
[2026-06-12 04:15:29,209.209 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 04:15:29,216.216 INFO    ] Checking for existing commands in stream...
[2026-06-12 04:15:29,283.283 INFO    ] No existing commands found in stream
[2026-06-12 04:15:34,292.292 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 04:15:34,296.296 INFO    ] Waiting 1.73 seconds before fallback handling...
[2026-06-12 04:15:36,399.399 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 04:15:36,402.402 INFO    ] Checking for system updates...
[2026-06-12 04:15:36,447.447 INFO    ] 200
[2026-06-12 04:15:36,450.450 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:15:36,503.503 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 04:15:36,505.505 INFO    ] No update needed
[2026-06-12 04:15:36,508.508 INFO    ] Checking for camera pi updates...
[2026-06-12 04:15:36,544.544 INFO    ] 200
[2026-06-12 04:15:36,547.547 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:15:36,587.587 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 04:15:36,631.631 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 04:15:36,634.634 INFO    ] No camera update needed
[2026-06-12 04:15:36,636.636 INFO    ] Script finished. Safe exiting...
[2026-06-12 04:15:36,638.638 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 04:15:36,643.643 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 04:15:36,648.648 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 04:15:38,689.689 INFO    ] ================================================
[2026-06-12 04:15:38,704.704 INFO    ] Launching Daemon at Fri Jun 12 04:15:38 IST 2026
[2026-06-12 04:15:38,715.715 INFO    ] ================================================
[2026-06-12 04:15:39,080.080 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 04:15:39
[2026-06-12 04:15:39,393.393 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 04:15:39,522.522 INFO    ] Initializing speech engine...
[2026-06-12 04:15:39,527.527 INFO    ] 2026-06-12 04:15:39
[2026-06-12 04:15:39,745.745 INFO    ] 2026-06-12 04:15:39
[2026-06-12 04:15:39,774.774 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 04:15:39,959.959 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 04:15:39,963.963 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 04:15:40,100.100 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 04:15:40,164.164 INFO    ] time= 12/06/2026 04:15:40
[2026-06-12 04:15:40,192.192 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 04:15:40,198.198 INFO    ] Checking for existing commands in stream...
[2026-06-12 04:15:40,265.265 INFO    ] No existing commands found in stream
[2026-06-12 04:15:45,276.276 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 04:15:45,278.278 INFO    ] Waiting 2.02 seconds before fallback handling...
[2026-06-12 04:15:47,667.667 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 04:15:47,668.668 INFO    ] Checking for system updates...
[2026-06-12 04:15:47,689.689 INFO    ] 200
[2026-06-12 04:15:47,691.691 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:15:47,721.721 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 04:15:47,722.722 INFO    ] No update needed
[2026-06-12 04:15:47,723.723 INFO    ] Checking for camera pi updates...
[2026-06-12 04:15:47,743.743 INFO    ] 200
[2026-06-12 04:15:47,745.745 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:15:47,769.769 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 04:15:47,806.806 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 04:15:47,807.807 INFO    ] No camera update needed
[2026-06-12 04:15:47,808.808 INFO    ] Script finished. Safe exiting...
[2026-06-12 04:15:47,809.809 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 04:15:47,813.813 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 04:15:47,815.815 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 04:15:49,854.854 INFO    ] ================================================
[2026-06-12 04:15:49,870.870 INFO    ] Launching Daemon at Fri Jun 12 04:15:49 IST 2026
[2026-06-12 04:15:49,880.880 INFO    ] ================================================
[2026-06-12 04:15:50,233.233 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 04:15:50
[2026-06-12 04:15:50,548.548 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 04:15:50,691.691 INFO    ] Initializing speech engine...
[2026-06-12 04:15:50,696.696 INFO    ] 2026-06-12 04:15:50
[2026-06-12 04:15:50,900.900 INFO    ] 2026-06-12 04:15:50
[2026-06-12 04:15:50,929.929 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 04:15:51,112.112 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 04:15:51,124.124 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 04:15:51,313.313 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 04:15:51,338.338 INFO    ] time= 12/06/2026 04:15:51
[2026-06-12 04:15:51,344.344 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 04:15:51,346.346 INFO    ] Checking for existing commands in stream...
[2026-06-12 04:15:51,436.436 INFO    ] No existing commands found in stream
[2026-06-12 04:15:56,450.450 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 04:15:56,453.453 INFO    ] Waiting 3.87 seconds before fallback handling...
[2026-06-12 04:16:00,726.726 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 04:16:00,727.727 INFO    ] Checking for system updates...
[2026-06-12 04:16:00,749.749 INFO    ] 200
[2026-06-12 04:16:00,751.751 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:16:00,781.781 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 04:16:00,782.782 INFO    ] No update needed
[2026-06-12 04:16:00,784.784 INFO    ] Checking for camera pi updates...
[2026-06-12 04:16:00,803.803 INFO    ] 200
[2026-06-12 04:16:00,805.805 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:16:00,828.828 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 04:16:00,869.869 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 04:16:00,871.871 INFO    ] No camera update needed
[2026-06-12 04:16:00,872.872 INFO    ] Script finished. Safe exiting...
[2026-06-12 04:16:00,874.874 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 04:16:00,877.877 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 04:16:00,880.880 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 04:16:02,906.906 INFO    ] ================================================
[2026-06-12 04:16:02,914.914 INFO    ] Launching Daemon at Fri Jun 12 04:16:02 IST 2026
[2026-06-12 04:16:02,920.920 INFO    ] ================================================
[2026-06-12 04:16:03,272.272 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 04:16:03
[2026-06-12 04:16:03,588.588 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 04:16:03,731.731 INFO    ] Initializing speech engine...
[2026-06-12 04:16:03,737.737 INFO    ] 2026-06-12 04:16:03
[2026-06-12 04:16:03,938.938 INFO    ] 2026-06-12 04:16:03
[2026-06-12 04:16:03,968.968 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 04:16:04,152.152 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 04:16:04,161.161 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 04:16:04,306.306 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 04:16:04,359.359 INFO    ] time= 12/06/2026 04:16:04
[2026-06-12 04:16:04,382.382 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 04:16:04,388.388 INFO    ] Checking for existing commands in stream...
[2026-06-12 04:16:04,455.455 INFO    ] No existing commands found in stream
[2026-06-12 04:16:09,464.464 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 04:16:09,467.467 INFO    ] Waiting 1.84 seconds before fallback handling...
[2026-06-12 04:16:11,734.734 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 04:16:11,736.736 INFO    ] Checking for system updates...
[2026-06-12 04:16:11,760.760 INFO    ] 200
[2026-06-12 04:16:11,762.762 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:16:11,792.792 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 04:16:11,794.794 INFO    ] No update needed
[2026-06-12 04:16:11,795.795 INFO    ] Checking for camera pi updates...
[2026-06-12 04:16:11,814.814 INFO    ] 200
[2026-06-12 04:16:11,816.816 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:16:11,839.839 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 04:16:11,862.862 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 04:16:11,865.865 INFO    ] No camera update needed
[2026-06-12 04:16:11,867.867 INFO    ] Script finished. Safe exiting...
[2026-06-12 04:16:11,868.868 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 04:16:11,872.872 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 04:16:11,874.874 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 04:16:13,914.914 INFO    ] ================================================
[2026-06-12 04:16:13,929.929 INFO    ] Launching Daemon at Fri Jun 12 04:16:13 IST 2026
[2026-06-12 04:16:13,940.940 INFO    ] ================================================
[2026-06-12 04:16:14,281.281 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 04:16:14
[2026-06-12 04:16:14,597.597 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 04:16:14,740.740 INFO    ] Initializing speech engine...
[2026-06-12 04:16:14,745.745 INFO    ] 2026-06-12 04:16:14
[2026-06-12 04:16:14,951.951 INFO    ] 2026-06-12 04:16:14
[2026-06-12 04:16:14,979.979 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 04:16:15,162.162 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 04:16:15,165.165 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 04:16:15,356.356 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 04:16:15,388.388 INFO    ] time= 12/06/2026 04:16:15
[2026-06-12 04:16:15,394.394 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 04:16:15,396.396 INFO    ] Checking for existing commands in stream...
[2026-06-12 04:16:15,463.463 INFO    ] No existing commands found in stream
[2026-06-12 04:16:20,472.472 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 04:16:20,474.474 INFO    ] Waiting 3.80 seconds before fallback handling...
[2026-06-12 04:16:24,633.633 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 04:16:24,635.635 INFO    ] Checking for system updates...
[2026-06-12 04:16:24,657.657 INFO    ] 200
[2026-06-12 04:16:24,658.658 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:16:24,691.691 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 04:16:24,692.692 INFO    ] No update needed
[2026-06-12 04:16:24,693.693 INFO    ] Checking for camera pi updates...
[2026-06-12 04:16:24,713.713 INFO    ] 200
[2026-06-12 04:16:24,714.714 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:16:24,737.737 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 04:16:24,774.774 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 04:16:24,775.775 INFO    ] No camera update needed
[2026-06-12 04:16:24,777.777 INFO    ] Script finished. Safe exiting...
[2026-06-12 04:16:24,778.778 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 04:16:24,781.781 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 04:16:24,784.784 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 04:16:26,822.822 INFO    ] ================================================
[2026-06-12 04:16:26,837.837 INFO    ] Launching Daemon at Fri Jun 12 04:16:26 IST 2026
[2026-06-12 04:16:26,848.848 INFO    ] ================================================
[2026-06-12 04:16:27,196.196 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 04:16:27
[2026-06-12 04:16:27,507.507 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 04:16:27,648.648 INFO    ] Initializing speech engine...
[2026-06-12 04:16:27,653.653 INFO    ] 2026-06-12 04:16:27
[2026-06-12 04:16:27,855.855 INFO    ] 2026-06-12 04:16:27
[2026-06-12 04:16:27,883.883 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 04:16:28,066.066 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 04:16:28,076.076 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 04:16:28,245.245 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 04:16:28,289.289 INFO    ] time= 12/06/2026 04:16:28
[2026-06-12 04:16:28,295.295 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 04:16:28,301.301 INFO    ] Checking for existing commands in stream...
[2026-06-12 04:16:28,366.366 INFO    ] No existing commands found in stream
[2026-06-12 04:16:33,377.377 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 04:16:33,379.379 INFO    ] Waiting 3.48 seconds before fallback handling...
[2026-06-12 04:16:37,242.242 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 04:16:37,243.243 INFO    ] Checking for system updates...
[2026-06-12 04:16:37,264.264 INFO    ] 200
[2026-06-12 04:16:37,265.265 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:16:37,295.295 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 04:16:37,296.296 INFO    ] No update needed
[2026-06-12 04:16:37,298.298 INFO    ] Checking for camera pi updates...
[2026-06-12 04:16:37,317.317 INFO    ] 200
[2026-06-12 04:16:37,318.318 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:16:37,342.342 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 04:16:37,377.377 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 04:16:37,379.379 INFO    ] No camera update needed
[2026-06-12 04:16:37,380.380 INFO    ] Script finished. Safe exiting...
[2026-06-12 04:16:37,381.381 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 04:16:37,384.384 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 04:16:37,387.387 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 04:16:39,418.418 INFO    ] ================================================
[2026-06-12 04:16:39,427.427 INFO    ] Launching Daemon at Fri Jun 12 04:16:39 IST 2026
[2026-06-12 04:16:39,433.433 INFO    ] ================================================
[2026-06-12 04:16:39,759.759 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 04:16:39
[2026-06-12 04:16:40,094.094 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 04:16:40,246.246 INFO    ] Initializing speech engine...
[2026-06-12 04:16:40,250.250 INFO    ] 2026-06-12 04:16:40
[2026-06-12 04:16:40,452.452 INFO    ] 2026-06-12 04:16:40
[2026-06-12 04:16:40,481.481 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 04:16:40,663.663 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 04:16:40,672.672 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 04:16:40,807.807 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 04:16:40,867.867 INFO    ] time= 12/06/2026 04:16:40
[2026-06-12 04:16:40,891.891 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 04:16:40,898.898 INFO    ] Checking for existing commands in stream...
[2026-06-12 04:16:40,964.964 INFO    ] No existing commands found in stream
[2026-06-12 04:16:45,978.978 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 04:16:45,981.981 INFO    ] Waiting 3.42 seconds before fallback handling...
[2026-06-12 04:16:49,774.774 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 04:16:49,776.776 INFO    ] Checking for system updates...
[2026-06-12 04:16:49,797.797 INFO    ] 200
[2026-06-12 04:16:49,798.798 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:16:49,835.835 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 04:16:49,836.836 INFO    ] No update needed
[2026-06-12 04:16:49,837.837 INFO    ] Checking for camera pi updates...
[2026-06-12 04:16:49,859.859 INFO    ] 200
[2026-06-12 04:16:49,861.861 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:16:49,886.886 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 04:16:49,926.926 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 04:16:49,932.932 INFO    ] No camera update needed
[2026-06-12 04:16:49,934.934 INFO    ] Script finished. Safe exiting...
[2026-06-12 04:16:49,935.935 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 04:16:49,938.938 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 04:16:49,942.942 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 04:16:51,981.981 INFO    ] ================================================
[2026-06-12 04:16:52,996.996 INFO    ] Launching Daemon at Fri Jun 12 04:16:51 IST 2026
[2026-06-12 04:16:52,007.007 INFO    ] ================================================
[2026-06-12 04:16:52,339.339 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 04:16:52
[2026-06-12 04:16:52,654.654 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 04:16:52,792.792 INFO    ] Initializing speech engine...
[2026-06-12 04:16:52,802.802 INFO    ] 2026-06-12 04:16:52
[2026-06-12 04:16:53,005.005 INFO    ] 2026-06-12 04:16:52
[2026-06-12 04:16:53,033.033 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 04:16:53,216.216 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 04:16:53,225.225 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 04:16:53,352.352 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 04:16:53,419.419 INFO    ] time= 12/06/2026 04:16:53
[2026-06-12 04:16:53,444.444 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 04:16:53,450.450 INFO    ] Checking for existing commands in stream...
[2026-06-12 04:16:53,516.516 INFO    ] No existing commands found in stream
[2026-06-12 04:16:58,531.531 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 04:16:58,533.533 INFO    ] Waiting 2.80 seconds before fallback handling...
[2026-06-12 04:17:01,770.770 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 04:17:01,773.773 INFO    ] Checking for system updates...
[2026-06-12 04:17:01,817.817 INFO    ] 200
[2026-06-12 04:17:01,819.819 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:17:01,873.873 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 04:17:01,875.875 INFO    ] No update needed
[2026-06-12 04:17:01,877.877 INFO    ] Checking for camera pi updates...
[2026-06-12 04:17:01,922.922 INFO    ] 200
[2026-06-12 04:17:01,924.924 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:17:01,975.975 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 04:17:02,109.109 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 04:17:02,112.112 INFO    ] No camera update needed
[2026-06-12 04:17:02,115.115 INFO    ] Script finished. Safe exiting...
[2026-06-12 04:17:02,118.118 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 04:17:02,123.123 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 04:17:02,128.128 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 04:17:04,169.169 INFO    ] ================================================
[2026-06-12 04:17:04,184.184 INFO    ] Launching Daemon at Fri Jun 12 04:17:04 IST 2026
[2026-06-12 04:17:04,195.195 INFO    ] ================================================
[2026-06-12 04:17:04,550.550 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 04:17:04
[2026-06-12 04:17:04,866.866 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 04:17:05,004.004 INFO    ] Initializing speech engine...
[2026-06-12 04:17:05,015.015 INFO    ] 2026-06-12 04:17:05
[2026-06-12 04:17:05,218.218 INFO    ] 2026-06-12 04:17:05
[2026-06-12 04:17:05,247.247 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 04:17:05,379.379 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 04:17:05,431.431 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 04:17:05,568.568 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 04:17:05,627.627 INFO    ] time= 12/06/2026 04:17:05
[2026-06-12 04:17:05,658.658 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 04:17:05,664.664 INFO    ] Checking for existing commands in stream...
[2026-06-12 04:17:05,754.754 INFO    ] No existing commands found in stream
[2026-06-12 04:17:10,768.768 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 04:17:10,771.771 INFO    ] Waiting 1.24 seconds before fallback handling...
[2026-06-12 04:17:12,398.398 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 04:17:12,399.399 INFO    ] Checking for system updates...
[2026-06-12 04:17:12,420.420 INFO    ] 200
[2026-06-12 04:17:12,422.422 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:17:12,454.454 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 04:17:12,456.456 INFO    ] No update needed
[2026-06-12 04:17:12,457.457 INFO    ] Checking for camera pi updates...
[2026-06-12 04:17:12,476.476 INFO    ] 200
[2026-06-12 04:17:12,477.477 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:17:12,501.501 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 04:17:12,536.536 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 04:17:12,538.538 INFO    ] No camera update needed
[2026-06-12 04:17:12,539.539 INFO    ] Script finished. Safe exiting...
[2026-06-12 04:17:12,540.540 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 04:17:12,543.543 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 04:17:12,546.546 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 04:17:14,585.585 INFO    ] ================================================
[2026-06-12 04:17:14,602.602 INFO    ] Launching Daemon at Fri Jun 12 04:17:14 IST 2026
[2026-06-12 04:17:14,613.613 INFO    ] ================================================
[2026-06-12 04:17:14,982.982 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 04:17:14
[2026-06-12 04:17:15,309.309 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 04:17:15,466.466 INFO    ] Initializing speech engine...
[2026-06-12 04:17:15,471.471 INFO    ] 2026-06-12 04:17:15
[2026-06-12 04:17:15,695.695 INFO    ] 2026-06-12 04:17:15
[2026-06-12 04:17:15,726.726 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 04:17:15,921.921 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 04:17:15,930.930 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 04:17:16,088.088 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 04:17:16,135.135 INFO    ] time= 12/06/2026 04:17:16
[2026-06-12 04:17:16,170.170 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 04:17:16,195.195 INFO    ] Checking for existing commands in stream...
[2026-06-12 04:17:16,273.273 INFO    ] No existing commands found in stream
[2026-06-12 04:17:21,287.287 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 04:17:21,290.290 INFO    ] Waiting 1.43 seconds before fallback handling...
[2026-06-12 04:17:23,117.117 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 04:17:23,118.118 INFO    ] Checking for system updates...
[2026-06-12 04:17:23,141.141 INFO    ] 200
[2026-06-12 04:17:23,142.142 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:17:23,175.175 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 04:17:23,176.176 INFO    ] No update needed
[2026-06-12 04:17:23,177.177 INFO    ] Checking for camera pi updates...
[2026-06-12 04:17:23,196.196 INFO    ] 200
[2026-06-12 04:17:23,198.198 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:17:23,221.221 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 04:17:23,257.257 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 04:17:23,259.259 INFO    ] No camera update needed
[2026-06-12 04:17:23,260.260 INFO    ] Script finished. Safe exiting...
[2026-06-12 04:17:23,261.261 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 04:17:23,264.264 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 04:17:23,267.267 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 04:17:25,306.306 INFO    ] ================================================
[2026-06-12 04:17:25,321.321 INFO    ] Launching Daemon at Fri Jun 12 04:17:25 IST 2026
[2026-06-12 04:17:25,332.332 INFO    ] ================================================
[2026-06-12 04:17:25,655.655 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 04:17:25
[2026-06-12 04:17:25,967.967 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 04:17:26,109.109 INFO    ] Initializing speech engine...
[2026-06-12 04:17:26,114.114 INFO    ] 2026-06-12 04:17:26
[2026-06-12 04:17:26,318.318 INFO    ] 2026-06-12 04:17:26
[2026-06-12 04:17:26,348.348 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 04:17:26,472.472 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 04:17:26,536.536 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 04:17:26,669.669 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 04:17:26,730.730 INFO    ] time= 12/06/2026 04:17:26
[2026-06-12 04:17:26,765.765 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 04:17:26,771.771 INFO    ] Checking for existing commands in stream...
[2026-06-12 04:17:26,843.843 INFO    ] No existing commands found in stream
[2026-06-12 04:17:31,852.852 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 04:17:31,855.855 INFO    ] Waiting 2.78 seconds before fallback handling...
[2026-06-12 04:17:35,049.049 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 04:17:35,050.050 INFO    ] Checking for system updates...
[2026-06-12 04:17:35,071.071 INFO    ] 200
[2026-06-12 04:17:35,072.072 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:17:35,107.107 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 04:17:35,108.108 INFO    ] No update needed
[2026-06-12 04:17:35,110.110 INFO    ] Checking for camera pi updates...
[2026-06-12 04:17:35,148.148 INFO    ] 200
[2026-06-12 04:17:35,150.150 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:17:35,173.173 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 04:17:35,213.213 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 04:17:35,214.214 INFO    ] No camera update needed
[2026-06-12 04:17:35,215.215 INFO    ] Script finished. Safe exiting...
[2026-06-12 04:17:35,216.216 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 04:17:35,219.219 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 04:17:35,222.222 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 04:17:37,262.262 INFO    ] ================================================
[2026-06-12 04:17:37,277.277 INFO    ] Launching Daemon at Fri Jun 12 04:17:37 IST 2026
[2026-06-12 04:17:37,288.288 INFO    ] ================================================
[2026-06-12 04:17:37,636.636 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 04:17:37
[2026-06-12 04:17:37,952.952 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 04:17:38,085.085 INFO    ] Initializing speech engine...
[2026-06-12 04:17:38,099.099 INFO    ] 2026-06-12 04:17:38
[2026-06-12 04:17:38,303.303 INFO    ] 2026-06-12 04:17:38
[2026-06-12 04:17:38,334.334 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 04:17:38,516.516 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 04:17:38,525.525 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 04:17:38,650.650 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 04:17:38,713.713 INFO    ] time= 12/06/2026 04:17:38
[2026-06-12 04:17:38,745.745 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 04:17:38,751.751 INFO    ] Checking for existing commands in stream...
[2026-06-12 04:17:38,841.841 INFO    ] No existing commands found in stream
[2026-06-12 04:17:43,855.855 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 04:17:43,858.858 INFO    ] Waiting 0.78 seconds before fallback handling...
[2026-06-12 04:17:45,019.019 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 04:17:45,021.021 INFO    ] Checking for system updates...
[2026-06-12 04:17:45,044.044 INFO    ] 200
[2026-06-12 04:17:45,045.045 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:17:45,078.078 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 04:17:45,080.080 INFO    ] No update needed
[2026-06-12 04:17:45,081.081 INFO    ] Checking for camera pi updates...
[2026-06-12 04:17:45,101.101 INFO    ] 200
[2026-06-12 04:17:45,103.103 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:17:45,126.126 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 04:17:45,165.165 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 04:17:45,167.167 INFO    ] No camera update needed
[2026-06-12 04:17:45,179.179 INFO    ] Script finished. Safe exiting...
[2026-06-12 04:17:45,181.181 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 04:17:45,184.184 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 04:17:45,187.187 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 04:17:47,228.228 INFO    ] ================================================
[2026-06-12 04:17:47,244.244 INFO    ] Launching Daemon at Fri Jun 12 04:17:47 IST 2026
[2026-06-12 04:17:47,254.254 INFO    ] ================================================
[2026-06-12 04:17:47,636.636 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 04:17:47
[2026-06-12 04:17:47,955.955 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 04:17:48,092.092 INFO    ] Initializing speech engine...
[2026-06-12 04:17:48,095.095 INFO    ] 2026-06-12 04:17:48
[2026-06-12 04:17:48,330.330 INFO    ] 2026-06-12 04:17:48
[2026-06-12 04:17:48,361.361 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 04:17:48,562.562 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 04:17:48,566.566 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 04:17:48,708.708 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 04:17:48,761.761 INFO    ] time= 12/06/2026 04:17:48
[2026-06-12 04:17:48,807.807 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 04:17:48,819.819 INFO    ] Checking for existing commands in stream...
[2026-06-12 04:17:48,896.896 INFO    ] No existing commands found in stream
[2026-06-12 04:17:53,906.906 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 04:17:53,909.909 INFO    ] Waiting 3.92 seconds before fallback handling...
[2026-06-12 04:17:58,213.213 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 04:17:58,214.214 INFO    ] Checking for system updates...
[2026-06-12 04:17:58,235.235 INFO    ] 200
[2026-06-12 04:17:58,236.236 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:17:58,269.269 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 04:17:58,271.271 INFO    ] No update needed
[2026-06-12 04:17:58,272.272 INFO    ] Checking for camera pi updates...
[2026-06-12 04:17:58,293.293 INFO    ] 200
[2026-06-12 04:17:58,294.294 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:17:58,319.319 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 04:17:58,353.353 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 04:17:58,354.354 INFO    ] No camera update needed
[2026-06-12 04:17:58,356.356 INFO    ] Script finished. Safe exiting...
[2026-06-12 04:17:58,357.357 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 04:17:58,360.360 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 04:17:58,363.363 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 04:18:00,401.401 INFO    ] ================================================
[2026-06-12 04:18:00,416.416 INFO    ] Launching Daemon at Fri Jun 12 04:18:00 IST 2026
[2026-06-12 04:18:00,427.427 INFO    ] ================================================
[2026-06-12 04:18:00,795.795 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 04:18:00
[2026-06-12 04:18:01,106.106 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 04:18:01,234.234 INFO    ] Initializing speech engine...
[2026-06-12 04:18:01,238.238 INFO    ] 2026-06-12 04:18:01
[2026-06-12 04:18:01,460.460 INFO    ] 2026-06-12 04:18:01
[2026-06-12 04:18:01,489.489 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 04:18:01,676.676 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 04:18:01,685.685 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 04:18:01,864.864 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 04:18:01,895.895 INFO    ] time= 12/06/2026 04:18:01
[2026-06-12 04:18:01,898.898 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 04:18:01,915.915 INFO    ] Checking for existing commands in stream...
[2026-06-12 04:18:02,016.016 INFO    ] No existing commands found in stream
[2026-06-12 04:18:07,026.026 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 04:18:07,029.029 INFO    ] Waiting 0.19 seconds before fallback handling...
[2026-06-12 04:18:07,583.583 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 04:18:07,584.584 INFO    ] Checking for system updates...
[2026-06-12 04:18:07,606.606 INFO    ] 200
[2026-06-12 04:18:07,608.608 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:18:07,640.640 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 04:18:07,642.642 INFO    ] No update needed
[2026-06-12 04:18:07,643.643 INFO    ] Checking for camera pi updates...
[2026-06-12 04:18:07,662.662 INFO    ] 200
[2026-06-12 04:18:07,664.664 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:18:07,687.687 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 04:18:07,710.710 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 04:18:07,712.712 INFO    ] No camera update needed
[2026-06-12 04:18:07,713.713 INFO    ] Script finished. Safe exiting...
[2026-06-12 04:18:07,714.714 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 04:18:07,717.717 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 04:18:07,720.720 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 04:18:09,759.759 INFO    ] ================================================
[2026-06-12 04:18:09,775.775 INFO    ] Launching Daemon at Fri Jun 12 04:18:09 IST 2026
[2026-06-12 04:18:09,786.786 INFO    ] ================================================
[2026-06-12 04:18:10,138.138 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 04:18:10
[2026-06-12 04:18:10,450.450 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 04:18:10,630.630 INFO    ] Initializing speech engine...
[2026-06-12 04:18:10,642.642 INFO    ] 2026-06-12 04:18:10
[2026-06-12 04:18:10,848.848 INFO    ] 2026-06-12 04:18:10
[2026-06-12 04:18:10,876.876 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 04:18:11,060.060 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 04:18:11,069.069 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 04:18:11,212.212 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 04:18:11,265.265 INFO    ] time= 12/06/2026 04:18:11
[2026-06-12 04:18:11,287.287 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 04:18:11,293.293 INFO    ] Checking for existing commands in stream...
[2026-06-12 04:18:11,383.383 INFO    ] No existing commands found in stream
[2026-06-12 04:18:16,397.397 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 04:18:16,400.400 INFO    ] Waiting 2.18 seconds before fallback handling...
[2026-06-12 04:18:18,955.955 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 04:18:18,956.956 INFO    ] Checking for system updates...
[2026-06-12 04:18:18,977.977 INFO    ] 200
[2026-06-12 04:18:18,978.978 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:18:19,010.010 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 04:18:19,011.011 INFO    ] No update needed
[2026-06-12 04:18:19,013.013 INFO    ] Checking for camera pi updates...
[2026-06-12 04:18:19,033.033 INFO    ] 200
[2026-06-12 04:18:19,034.034 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:18:19,059.059 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 04:18:19,094.094 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 04:18:19,096.096 INFO    ] No camera update needed
[2026-06-12 04:18:19,097.097 INFO    ] Script finished. Safe exiting...
[2026-06-12 04:18:19,098.098 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 04:18:19,101.101 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 04:18:19,104.104 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 04:18:21,144.144 INFO    ] ================================================
[2026-06-12 04:18:21,159.159 INFO    ] Launching Daemon at Fri Jun 12 04:18:21 IST 2026
[2026-06-12 04:18:21,169.169 INFO    ] ================================================
[2026-06-12 04:18:21,526.526 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 04:18:21
[2026-06-12 04:18:21,860.860 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 04:18:22,008.008 INFO    ] Initializing speech engine...
[2026-06-12 04:18:22,014.014 INFO    ] 2026-06-12 04:18:22
[2026-06-12 04:18:22,216.216 INFO    ] 2026-06-12 04:18:22
[2026-06-12 04:18:22,243.243 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 04:18:22,426.426 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 04:18:22,436.436 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 04:18:22,576.576 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 04:18:22,632.632 INFO    ] time= 12/06/2026 04:18:22
[2026-06-12 04:18:22,655.655 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 04:18:22,662.662 INFO    ] Checking for existing commands in stream...
[2026-06-12 04:18:22,728.728 INFO    ] No existing commands found in stream
[2026-06-12 04:18:27,742.742 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 04:18:27,745.745 INFO    ] Waiting 0.79 seconds before fallback handling...
[2026-06-12 04:18:28,916.916 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 04:18:28,918.918 INFO    ] Checking for system updates...
[2026-06-12 04:18:28,940.940 INFO    ] 200
[2026-06-12 04:18:28,941.941 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:18:28,971.971 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 04:18:28,973.973 INFO    ] No update needed
[2026-06-12 04:18:28,974.974 INFO    ] Checking for camera pi updates...
[2026-06-12 04:18:28,994.994 INFO    ] 200
[2026-06-12 04:18:28,996.996 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:18:29,020.020 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 04:18:29,054.054 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 04:18:29,056.056 INFO    ] No camera update needed
[2026-06-12 04:18:29,057.057 INFO    ] Script finished. Safe exiting...
[2026-06-12 04:18:29,058.058 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 04:18:29,061.061 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 04:18:29,064.064 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 04:18:31,104.104 INFO    ] ================================================
[2026-06-12 04:18:31,119.119 INFO    ] Launching Daemon at Fri Jun 12 04:18:31 IST 2026
[2026-06-12 04:18:31,130.130 INFO    ] ================================================
[2026-06-12 04:18:31,517.517 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 04:18:31
[2026-06-12 04:18:31,851.851 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 04:18:32,011.011 INFO    ] Initializing speech engine...
[2026-06-12 04:18:32,018.018 INFO    ] 2026-06-12 04:18:32
[2026-06-12 04:18:32,259.259 INFO    ] 2026-06-12 04:18:32
[2026-06-12 04:18:32,292.292 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 04:18:32,488.488 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 04:18:32,497.497 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 04:18:32,648.648 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 04:18:32,671.671 INFO    ] time= 12/06/2026 04:18:32
[2026-06-12 04:18:32,712.712 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 04:18:32,738.738 INFO    ] Checking for existing commands in stream...
[2026-06-12 04:18:32,815.815 INFO    ] No existing commands found in stream
[2026-06-12 04:18:37,824.824 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 04:18:37,827.827 INFO    ] Waiting 0.24 seconds before fallback handling...
[2026-06-12 04:18:38,453.453 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 04:18:38,455.455 INFO    ] Checking for system updates...
[2026-06-12 04:18:38,476.476 INFO    ] 200
[2026-06-12 04:18:38,478.478 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:18:38,511.511 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 04:18:38,513.513 INFO    ] No update needed
[2026-06-12 04:18:38,514.514 INFO    ] Checking for camera pi updates...
[2026-06-12 04:18:38,533.533 INFO    ] 200
[2026-06-12 04:18:38,535.535 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:18:38,560.560 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 04:18:38,598.598 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 04:18:38,599.599 INFO    ] No camera update needed
[2026-06-12 04:18:38,601.601 INFO    ] Script finished. Safe exiting...
[2026-06-12 04:18:38,602.602 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 04:18:38,605.605 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 04:18:38,607.607 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 04:18:40,645.645 INFO    ] ================================================
[2026-06-12 04:18:40,661.661 INFO    ] Launching Daemon at Fri Jun 12 04:18:40 IST 2026
[2026-06-12 04:18:40,672.672 INFO    ] ================================================
[2026-06-12 04:18:41,023.023 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 04:18:41
[2026-06-12 04:18:41,333.333 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 04:18:41,462.462 INFO    ] Initializing speech engine...
[2026-06-12 04:18:41,466.466 INFO    ] 2026-06-12 04:18:41
[2026-06-12 04:18:41,681.681 INFO    ] 2026-06-12 04:18:41
[2026-06-12 04:18:41,710.710 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 04:18:41,893.893 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 04:18:41,903.903 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 04:18:42,094.094 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 04:18:42,118.118 INFO    ] time= 12/06/2026 04:18:42
[2026-06-12 04:18:42,124.124 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 04:18:42,126.126 INFO    ] Checking for existing commands in stream...
[2026-06-12 04:18:42,216.216 INFO    ] No existing commands found in stream
[2026-06-12 04:18:47,230.230 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 04:18:47,233.233 INFO    ] Waiting 0.19 seconds before fallback handling...
[2026-06-12 04:18:47,847.847 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 04:18:47,849.849 INFO    ] Checking for system updates...
[2026-06-12 04:18:47,871.871 INFO    ] 200
[2026-06-12 04:18:47,872.872 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:18:47,905.905 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 04:18:47,907.907 INFO    ] No update needed
[2026-06-12 04:18:47,908.908 INFO    ] Checking for camera pi updates...
[2026-06-12 04:18:47,929.929 INFO    ] 200
[2026-06-12 04:18:47,930.930 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:18:47,956.956 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 04:18:47,996.996 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 04:18:47,998.998 INFO    ] No camera update needed
[2026-06-12 04:18:47,999.999 INFO    ] Script finished. Safe exiting...
[2026-06-12 04:18:48,001.001 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 04:18:48,004.004 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 04:18:48,007.007 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 04:18:50,046.046 INFO    ] ================================================
[2026-06-12 04:18:50,062.062 INFO    ] Launching Daemon at Fri Jun 12 04:18:50 IST 2026
[2026-06-12 04:18:50,073.073 INFO    ] ================================================
[2026-06-12 04:18:50,455.455 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 04:18:50
[2026-06-12 04:18:50,792.792 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 04:18:50,944.944 INFO    ] Initializing speech engine...
[2026-06-12 04:18:50,950.950 INFO    ] 2026-06-12 04:18:50
[2026-06-12 04:18:51,155.155 INFO    ] 2026-06-12 04:18:51
[2026-06-12 04:18:51,183.183 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 04:18:51,368.368 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 04:18:51,378.378 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 04:18:51,517.517 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 04:18:51,577.577 INFO    ] time= 12/06/2026 04:18:51
[2026-06-12 04:18:51,599.599 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 04:18:51,605.605 INFO    ] Checking for existing commands in stream...
[2026-06-12 04:18:51,696.696 INFO    ] No existing commands found in stream
[2026-06-12 04:18:56,706.706 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 04:18:56,709.709 INFO    ] Waiting 1.25 seconds before fallback handling...
[2026-06-12 04:18:58,334.334 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 04:18:58,336.336 INFO    ] Checking for system updates...
[2026-06-12 04:18:58,358.358 INFO    ] 200
[2026-06-12 04:18:58,360.360 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:18:58,393.393 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 04:18:58,394.394 INFO    ] No update needed
[2026-06-12 04:18:58,395.395 INFO    ] Checking for camera pi updates...
[2026-06-12 04:18:58,415.415 INFO    ] 200
[2026-06-12 04:18:58,416.416 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:18:58,441.441 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 04:18:58,487.487 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 04:18:58,488.488 INFO    ] No camera update needed
[2026-06-12 04:18:58,490.490 INFO    ] Script finished. Safe exiting...
[2026-06-12 04:18:58,491.491 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 04:18:58,494.494 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 04:18:58,497.497 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 04:19:00,537.537 INFO    ] ================================================
[2026-06-12 04:19:00,556.556 INFO    ] Launching Daemon at Fri Jun 12 04:19:00 IST 2026
[2026-06-12 04:19:00,568.568 INFO    ] ================================================
[2026-06-12 04:19:00,907.907 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 04:19:00
[2026-06-12 04:19:01,229.229 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 04:19:01,537.537 INFO    ] Initializing speech engine...
[2026-06-12 04:19:01,542.542 INFO    ] 2026-06-12 04:19:01
[2026-06-12 04:19:01,843.843 INFO    ] 2026-06-12 04:19:01
[2026-06-12 04:19:01,864.864 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 04:19:02,034.034 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 04:19:02,041.041 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 04:19:02,193.193 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 04:19:02,241.241 INFO    ] time= 12/06/2026 04:19:02
[2026-06-12 04:19:02,264.264 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 04:19:02,331.331 INFO    ] Checking for existing commands in stream...
[2026-06-12 04:19:02,399.399 INFO    ] No existing commands found in stream
[2026-06-12 04:19:07,409.409 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 04:19:07,412.412 INFO    ] Waiting 2.70 seconds before fallback handling...
[2026-06-12 04:19:10,504.504 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 04:19:10,506.506 INFO    ] Checking for system updates...
[2026-06-12 04:19:10,526.526 INFO    ] 200
[2026-06-12 04:19:10,528.528 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:19:10,559.559 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 04:19:10,560.560 INFO    ] No update needed
[2026-06-12 04:19:10,562.562 INFO    ] Checking for camera pi updates...
[2026-06-12 04:19:10,586.586 INFO    ] 200
[2026-06-12 04:19:10,587.587 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:19:10,617.617 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 04:19:10,757.757 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 04:19:10,758.758 INFO    ] No camera update needed
[2026-06-12 04:19:10,759.759 INFO    ] Script finished. Safe exiting...
[2026-06-12 04:19:10,761.761 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 04:19:10,764.764 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 04:19:10,766.766 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 04:19:12,807.807 INFO    ] ================================================
[2026-06-12 04:19:12,823.823 INFO    ] Launching Daemon at Fri Jun 12 04:19:12 IST 2026
[2026-06-12 04:19:12,834.834 INFO    ] ================================================
[2026-06-12 04:19:13,218.218 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 04:19:13
[2026-06-12 04:19:13,555.555 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 04:19:13,708.708 INFO    ] Initializing speech engine...
[2026-06-12 04:19:13,712.712 INFO    ] 2026-06-12 04:19:13
[2026-06-12 04:19:13,918.918 INFO    ] 2026-06-12 04:19:13
[2026-06-12 04:19:13,947.947 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 04:19:14,129.129 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 04:19:14,139.139 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 04:19:14,280.280 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 04:19:14,338.338 INFO    ] time= 12/06/2026 04:19:14
[2026-06-12 04:19:14,360.360 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 04:19:14,366.366 INFO    ] Checking for existing commands in stream...
[2026-06-12 04:19:14,456.456 INFO    ] No existing commands found in stream
[2026-06-12 04:19:19,471.471 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 04:19:19,474.474 INFO    ] Waiting 0.46 seconds before fallback handling...
[2026-06-12 04:19:20,335.335 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 04:19:20,337.337 INFO    ] Checking for system updates...
[2026-06-12 04:19:20,359.359 INFO    ] 200
[2026-06-12 04:19:20,361.361 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:19:20,394.394 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 04:19:20,395.395 INFO    ] No update needed
[2026-06-12 04:19:20,397.397 INFO    ] Checking for camera pi updates...
[2026-06-12 04:19:20,418.418 INFO    ] 200
[2026-06-12 04:19:20,420.420 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:19:20,443.443 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 04:19:20,483.483 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 04:19:20,485.485 INFO    ] No camera update needed
[2026-06-12 04:19:20,486.486 INFO    ] Script finished. Safe exiting...
[2026-06-12 04:19:20,487.487 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 04:19:20,491.491 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 04:19:20,494.494 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 04:19:22,534.534 INFO    ] ================================================
[2026-06-12 04:19:22,550.550 INFO    ] Launching Daemon at Fri Jun 12 04:19:22 IST 2026
[2026-06-12 04:19:22,562.562 INFO    ] ================================================
[2026-06-12 04:19:22,950.950 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 04:19:22
[2026-06-12 04:19:23,288.288 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 04:19:23,434.434 INFO    ] Initializing speech engine...
[2026-06-12 04:19:23,444.444 INFO    ] 2026-06-12 04:19:23
[2026-06-12 04:19:23,652.652 INFO    ] 2026-06-12 04:19:23
[2026-06-12 04:19:23,681.681 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 04:19:23,867.867 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 04:19:23,879.879 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 04:19:24,072.072 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 04:19:24,095.095 INFO    ] time= 12/06/2026 04:19:24
[2026-06-12 04:19:24,101.101 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 04:19:24,102.102 INFO    ] Checking for existing commands in stream...
[2026-06-12 04:19:24,169.169 INFO    ] No existing commands found in stream
[2026-06-12 04:19:29,184.184 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 04:19:29,187.187 INFO    ] Waiting 0.36 seconds before fallback handling...
[2026-06-12 04:19:29,934.934 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 04:19:29,936.936 INFO    ] Checking for system updates...
[2026-06-12 04:19:29,958.958 INFO    ] 200
[2026-06-12 04:19:29,959.959 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:19:29,995.995 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 04:19:29,996.996 INFO    ] No update needed
[2026-06-12 04:19:29,998.998 INFO    ] Checking for camera pi updates...
[2026-06-12 04:19:30,017.017 INFO    ] 200
[2026-06-12 04:19:30,019.019 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:19:30,044.044 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 04:19:30,081.081 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 04:19:30,083.083 INFO    ] No camera update needed
[2026-06-12 04:19:30,084.084 INFO    ] Script finished. Safe exiting...
[2026-06-12 04:19:30,085.085 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 04:19:30,089.089 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 04:19:30,092.092 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 04:19:32,129.129 INFO    ] ================================================
[2026-06-12 04:19:32,144.144 INFO    ] Launching Daemon at Fri Jun 12 04:19:32 IST 2026
[2026-06-12 04:19:32,156.156 INFO    ] ================================================
[2026-06-12 04:19:32,488.488 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 04:19:32
[2026-06-12 04:19:32,802.802 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 04:19:32,932.932 INFO    ] Initializing speech engine...
[2026-06-12 04:19:32,940.940 INFO    ] 2026-06-12 04:19:32
[2026-06-12 04:19:33,151.151 INFO    ] 2026-06-12 04:19:33
[2026-06-12 04:19:33,181.181 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 04:19:33,373.373 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 04:19:33,389.389 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 04:19:33,553.553 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 04:19:33,587.587 INFO    ] time= 12/06/2026 04:19:33
[2026-06-12 04:19:33,593.593 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 04:19:33,598.598 INFO    ] Checking for existing commands in stream...
[2026-06-12 04:19:33,665.665 INFO    ] No existing commands found in stream
[2026-06-12 04:19:38,674.674 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 04:19:38,677.677 INFO    ] Waiting 0.67 seconds before fallback handling...
[2026-06-12 04:19:42,242.242 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 04:19:42,244.244 INFO    ] Checking for system updates...
[2026-06-12 04:19:42,280.280 INFO    ] 200
[2026-06-12 04:19:42,283.283 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:19:42,335.335 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 04:19:42,338.338 INFO    ] No update needed
[2026-06-12 04:19:42,340.340 INFO    ] Checking for camera pi updates...
[2026-06-12 04:19:42,360.360 INFO    ] 200
[2026-06-12 04:19:42,361.361 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:19:42,386.386 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 04:19:42,420.420 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 04:19:42,421.421 INFO    ] No camera update needed
[2026-06-12 04:19:42,423.423 INFO    ] Script finished. Safe exiting...
[2026-06-12 04:19:42,424.424 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 04:19:42,427.427 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 04:19:42,429.429 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 04:19:44,470.470 INFO    ] ================================================
[2026-06-12 04:19:44,486.486 INFO    ] Launching Daemon at Fri Jun 12 04:19:44 IST 2026
[2026-06-12 04:19:44,498.498 INFO    ] ================================================
[2026-06-12 04:19:44,818.818 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 04:19:44
[2026-06-12 04:19:45,128.128 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 04:19:45,270.270 INFO    ] Initializing speech engine...
[2026-06-12 04:19:45,275.275 INFO    ] 2026-06-12 04:19:45
[2026-06-12 04:19:45,479.479 INFO    ] 2026-06-12 04:19:45
[2026-06-12 04:19:45,507.507 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 04:19:45,691.691 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 04:19:45,701.701 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 04:19:45,870.870 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 04:19:45,910.910 INFO    ] time= 12/06/2026 04:19:45
[2026-06-12 04:19:45,920.920 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 04:19:45,926.926 INFO    ] Checking for existing commands in stream...
[2026-06-12 04:19:45,992.992 INFO    ] No existing commands found in stream
[2026-06-12 04:19:51,001.001 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 04:19:51,004.004 INFO    ] Waiting 0.40 seconds before fallback handling...
[2026-06-12 04:19:51,841.841 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 04:19:51,842.842 INFO    ] Checking for system updates...
[2026-06-12 04:19:51,863.863 INFO    ] 200
[2026-06-12 04:19:51,864.864 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:19:51,895.895 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 04:19:51,896.896 INFO    ] No update needed
[2026-06-12 04:19:51,898.898 INFO    ] Checking for camera pi updates...
[2026-06-12 04:19:51,919.919 INFO    ] 200
[2026-06-12 04:19:51,921.921 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:19:51,944.944 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 04:19:51,986.986 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 04:19:51,988.988 INFO    ] No camera update needed
[2026-06-12 04:19:51,989.989 INFO    ] Script finished. Safe exiting...
[2026-06-12 04:19:51,991.991 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 04:19:51,994.994 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 04:19:51,997.997 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 04:19:54,037.037 INFO    ] ================================================
[2026-06-12 04:19:54,053.053 INFO    ] Launching Daemon at Fri Jun 12 04:19:54 IST 2026
[2026-06-12 04:19:54,064.064 INFO    ] ================================================
[2026-06-12 04:19:54,395.395 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 04:19:54
[2026-06-12 04:19:54,706.706 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 04:19:54,849.849 INFO    ] Initializing speech engine...
[2026-06-12 04:19:54,853.853 INFO    ] 2026-06-12 04:19:54
[2026-06-12 04:19:55,047.047 INFO    ] 2026-06-12 04:19:55
[2026-06-12 04:19:55,070.070 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 04:19:55,227.227 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 04:19:55,280.280 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 04:19:55,435.435 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 04:19:55,489.489 INFO    ] time= 12/06/2026 04:19:55
[2026-06-12 04:19:55,515.515 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 04:19:55,517.517 INFO    ] Checking for existing commands in stream...
[2026-06-12 04:19:55,587.587 INFO    ] No existing commands found in stream
[2026-06-12 04:20:00,597.597 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 04:20:00,600.600 INFO    ] Waiting 2.78 seconds before fallback handling...
[2026-06-12 04:20:07,018.018 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 04:20:07,020.020 INFO    ] Checking for system updates...
[2026-06-12 04:20:07,060.060 INFO    ] 200
[2026-06-12 04:20:07,062.062 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:20:07,116.116 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 04:20:07,118.118 INFO    ] No update needed
[2026-06-12 04:20:07,121.121 INFO    ] Checking for camera pi updates...
[2026-06-12 04:20:07,155.155 INFO    ] 200
[2026-06-12 04:20:07,157.157 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:20:07,185.185 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 04:20:07,220.220 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 04:20:07,222.222 INFO    ] No camera update needed
[2026-06-12 04:20:07,223.223 INFO    ] Script finished. Safe exiting...
[2026-06-12 04:20:07,224.224 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 04:20:07,227.227 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 04:20:07,230.230 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 04:20:09,269.269 INFO    ] ================================================
[2026-06-12 04:20:09,285.285 INFO    ] Launching Daemon at Fri Jun 12 04:20:09 IST 2026
[2026-06-12 04:20:09,296.296 INFO    ] ================================================
[2026-06-12 04:20:09,664.664 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 04:20:09
[2026-06-12 04:20:09,982.982 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 04:20:10,114.114 INFO    ] Initializing speech engine...
[2026-06-12 04:20:10,122.122 INFO    ] 2026-06-12 04:20:10
[2026-06-12 04:20:10,334.334 INFO    ] 2026-06-12 04:20:10
[2026-06-12 04:20:10,363.363 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 04:20:10,547.547 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 04:20:10,557.557 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 04:20:10,705.705 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 04:20:10,753.753 INFO    ] time= 12/06/2026 04:20:10
[2026-06-12 04:20:10,775.775 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 04:20:10,781.781 INFO    ] Checking for existing commands in stream...
[2026-06-12 04:20:10,872.872 INFO    ] No existing commands found in stream
[2026-06-12 04:20:15,886.886 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 04:20:15,889.889 INFO    ] Waiting 3.08 seconds before fallback handling...
[2026-06-12 04:20:19,362.362 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 04:20:19,363.363 INFO    ] Checking for system updates...
[2026-06-12 04:20:19,384.384 INFO    ] 200
[2026-06-12 04:20:19,386.386 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:20:19,416.416 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 04:20:19,418.418 INFO    ] No update needed
[2026-06-12 04:20:19,419.419 INFO    ] Checking for camera pi updates...
[2026-06-12 04:20:19,439.439 INFO    ] 200
[2026-06-12 04:20:19,441.441 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:20:19,464.464 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 04:20:19,515.515 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 04:20:19,516.516 INFO    ] No camera update needed
[2026-06-12 04:20:19,518.518 INFO    ] Script finished. Safe exiting...
[2026-06-12 04:20:19,519.519 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 04:20:19,523.523 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 04:20:19,526.526 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 04:20:21,564.564 INFO    ] ================================================
[2026-06-12 04:20:21,585.585 INFO    ] Launching Daemon at Fri Jun 12 04:20:21 IST 2026
[2026-06-12 04:20:21,597.597 INFO    ] ================================================
[2026-06-12 04:20:21,960.960 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 04:20:21
[2026-06-12 04:20:22,270.270 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 04:20:22,412.412 INFO    ] Initializing speech engine...
[2026-06-12 04:20:22,417.417 INFO    ] 2026-06-12 04:20:22
[2026-06-12 04:20:22,622.622 INFO    ] 2026-06-12 04:20:22
[2026-06-12 04:20:22,650.650 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 04:20:22,774.774 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 04:20:22,837.837 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 04:20:22,975.975 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 04:20:23,043.043 INFO    ] time= 12/06/2026 04:20:22
[2026-06-12 04:20:23,067.067 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 04:20:23,073.073 INFO    ] Checking for existing commands in stream...
[2026-06-12 04:20:23,141.141 INFO    ] No existing commands found in stream
[2026-06-12 04:20:28,149.149 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 04:20:28,152.152 INFO    ] Waiting 1.84 seconds before fallback handling...
[2026-06-12 04:20:30,392.392 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 04:20:30,393.393 INFO    ] Checking for system updates...
[2026-06-12 04:20:30,415.415 INFO    ] 200
[2026-06-12 04:20:30,416.416 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:20:30,446.446 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 04:20:30,448.448 INFO    ] No update needed
[2026-06-12 04:20:30,449.449 INFO    ] Checking for camera pi updates...
[2026-06-12 04:20:30,470.470 INFO    ] 200
[2026-06-12 04:20:30,471.471 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:20:30,495.495 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 04:20:30,533.533 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 04:20:30,535.535 INFO    ] No camera update needed
[2026-06-12 04:20:30,536.536 INFO    ] Script finished. Safe exiting...
[2026-06-12 04:20:30,537.537 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 04:20:30,540.540 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 04:20:30,543.543 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 04:20:32,578.578 INFO    ] ================================================
[2026-06-12 04:20:32,589.589 INFO    ] Launching Daemon at Fri Jun 12 04:20:32 IST 2026
[2026-06-12 04:20:32,595.595 INFO    ] ================================================
[2026-06-12 04:20:32,943.943 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 04:20:32
[2026-06-12 04:20:33,254.254 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 04:20:33,387.387 INFO    ] Initializing speech engine...
[2026-06-12 04:20:33,392.392 INFO    ] 2026-06-12 04:20:33
[2026-06-12 04:20:33,623.623 INFO    ] 2026-06-12 04:20:33
[2026-06-12 04:20:33,652.652 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 04:20:33,850.850 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 04:20:33,853.853 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 04:20:33,994.994 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 04:20:34,061.061 INFO    ] time= 12/06/2026 04:20:34
[2026-06-12 04:20:34,098.098 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 04:20:34,105.105 INFO    ] Checking for existing commands in stream...
[2026-06-12 04:20:34,176.176 INFO    ] No existing commands found in stream
[2026-06-12 04:20:39,185.185 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 04:20:39,188.188 INFO    ] Waiting 2.68 seconds before fallback handling...
[2026-06-12 04:20:42,229.229 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 04:20:42,230.230 INFO    ] Checking for system updates...
[2026-06-12 04:20:42,252.252 INFO    ] 200
[2026-06-12 04:20:42,253.253 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:20:42,283.283 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 04:20:42,285.285 INFO    ] No update needed
[2026-06-12 04:20:42,286.286 INFO    ] Checking for camera pi updates...
[2026-06-12 04:20:42,307.307 INFO    ] 200
[2026-06-12 04:20:42,308.308 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:20:42,332.332 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 04:20:42,368.368 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 04:20:42,370.370 INFO    ] No camera update needed
[2026-06-12 04:20:42,371.371 INFO    ] Script finished. Safe exiting...
[2026-06-12 04:20:42,372.372 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 04:20:42,375.375 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 04:20:42,378.378 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 04:20:44,416.416 INFO    ] ================================================
[2026-06-12 04:20:44,432.432 INFO    ] Launching Daemon at Fri Jun 12 04:20:44 IST 2026
[2026-06-12 04:20:44,443.443 INFO    ] ================================================
[2026-06-12 04:20:44,803.803 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 04:20:44
[2026-06-12 04:20:45,119.119 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 04:20:45,262.262 INFO    ] Initializing speech engine...
[2026-06-12 04:20:45,267.267 INFO    ] 2026-06-12 04:20:45
[2026-06-12 04:20:45,471.471 INFO    ] 2026-06-12 04:20:45
[2026-06-12 04:20:45,499.499 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 04:20:45,682.682 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 04:20:45,686.686 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 04:20:45,836.836 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 04:20:45,890.890 INFO    ] time= 12/06/2026 04:20:45
[2026-06-12 04:20:45,912.912 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 04:20:45,918.918 INFO    ] Checking for existing commands in stream...
[2026-06-12 04:20:45,985.985 INFO    ] No existing commands found in stream
[2026-06-12 04:20:50,994.994 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 04:20:50,996.996 INFO    ] Waiting 3.50 seconds before fallback handling...
[2026-06-12 04:20:54,910.910 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 04:20:54,912.912 INFO    ] Checking for system updates...
[2026-06-12 04:20:54,932.932 INFO    ] 200
[2026-06-12 04:20:54,934.934 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:20:54,964.964 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 04:20:54,965.965 INFO    ] No update needed
[2026-06-12 04:20:54,967.967 INFO    ] Checking for camera pi updates...
[2026-06-12 04:20:54,986.986 INFO    ] 200
[2026-06-12 04:20:54,987.987 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:20:55,010.010 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 04:20:55,046.046 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 04:20:55,048.048 INFO    ] No camera update needed
[2026-06-12 04:20:55,049.049 INFO    ] Script finished. Safe exiting...
[2026-06-12 04:20:55,050.050 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 04:20:55,053.053 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 04:20:55,056.056 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 04:20:57,096.096 INFO    ] ================================================
[2026-06-12 04:20:57,111.111 INFO    ] Launching Daemon at Fri Jun 12 04:20:57 IST 2026
[2026-06-12 04:20:57,121.121 INFO    ] ================================================
[2026-06-12 04:20:57,454.454 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 04:20:57
[2026-06-12 04:20:57,781.781 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 04:20:57,932.932 INFO    ] Initializing speech engine...
[2026-06-12 04:20:57,938.938 INFO    ] 2026-06-12 04:20:57
[2026-06-12 04:20:58,148.148 INFO    ] 2026-06-12 04:20:58
[2026-06-12 04:20:58,177.177 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 04:20:58,318.318 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 04:20:58,366.366 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 04:20:58,511.511 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 04:20:58,573.573 INFO    ] time= 12/06/2026 04:20:58
[2026-06-12 04:20:58,597.597 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 04:20:58,604.604 INFO    ] Checking for existing commands in stream...
[2026-06-12 04:20:58,719.719 INFO    ] No existing commands found in stream
[2026-06-12 04:21:03,728.728 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 04:21:03,732.732 INFO    ] Waiting 3.75 seconds before fallback handling...
[2026-06-12 04:21:07,880.880 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 04:21:07,882.882 INFO    ] Checking for system updates...
[2026-06-12 04:21:07,903.903 INFO    ] 200
[2026-06-12 04:21:07,905.905 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:21:07,937.937 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 04:21:07,939.939 INFO    ] No update needed
[2026-06-12 04:21:07,940.940 INFO    ] Checking for camera pi updates...
[2026-06-12 04:21:07,964.964 INFO    ] 200
[2026-06-12 04:21:07,965.965 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:21:07,991.991 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 04:21:08,030.030 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 04:21:08,032.032 INFO    ] No camera update needed
[2026-06-12 04:21:08,033.033 INFO    ] Script finished. Safe exiting...
[2026-06-12 04:21:08,034.034 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 04:21:08,038.038 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 04:21:08,041.041 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 04:21:10,080.080 INFO    ] ================================================
[2026-06-12 04:21:10,095.095 INFO    ] Launching Daemon at Fri Jun 12 04:21:10 IST 2026
[2026-06-12 04:21:10,106.106 INFO    ] ================================================
[2026-06-12 04:21:10,466.466 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 04:21:10
[2026-06-12 04:21:10,783.783 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 04:21:10,915.915 INFO    ] Initializing speech engine...
[2026-06-12 04:21:10,920.920 INFO    ] 2026-06-12 04:21:10
[2026-06-12 04:21:11,147.147 INFO    ] 2026-06-12 04:21:11
[2026-06-12 04:21:11,179.179 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 04:21:11,378.378 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 04:21:11,382.382 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 04:21:11,531.531 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 04:21:11,590.590 INFO    ] time= 12/06/2026 04:21:11
[2026-06-12 04:21:11,629.629 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 04:21:11,631.631 INFO    ] Checking for existing commands in stream...
[2026-06-12 04:21:11,706.706 INFO    ] No existing commands found in stream
[2026-06-12 04:21:16,717.717 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 04:21:16,719.719 INFO    ] Waiting 1.85 seconds before fallback handling...
[2026-06-12 04:21:18,957.957 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 04:21:18,958.958 INFO    ] Checking for system updates...
[2026-06-12 04:21:18,979.979 INFO    ] 200
[2026-06-12 04:21:18,980.980 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:21:19,011.011 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 04:21:19,013.013 INFO    ] No update needed
[2026-06-12 04:21:19,014.014 INFO    ] Checking for camera pi updates...
[2026-06-12 04:21:19,033.033 INFO    ] 200
[2026-06-12 04:21:19,035.035 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:21:19,057.057 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 04:21:19,201.201 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 04:21:19,202.202 INFO    ] No camera update needed
[2026-06-12 04:21:19,204.204 INFO    ] Script finished. Safe exiting...
[2026-06-12 04:21:19,205.205 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 04:21:19,208.208 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 04:21:19,211.211 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 04:21:21,250.250 INFO    ] ================================================
[2026-06-12 04:21:21,265.265 INFO    ] Launching Daemon at Fri Jun 12 04:21:21 IST 2026
[2026-06-12 04:21:21,276.276 INFO    ] ================================================
[2026-06-12 04:21:21,607.607 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 04:21:21
[2026-06-12 04:21:21,925.925 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 04:21:22,057.057 INFO    ] Initializing speech engine...
[2026-06-12 04:21:22,065.065 INFO    ] 2026-06-12 04:21:22
[2026-06-12 04:21:22,278.278 INFO    ] 2026-06-12 04:21:22
[2026-06-12 04:21:22,307.307 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 04:21:22,491.491 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 04:21:22,502.502 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 04:21:22,694.694 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 04:21:22,718.718 INFO    ] time= 12/06/2026 04:21:22
[2026-06-12 04:21:22,723.723 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 04:21:22,725.725 INFO    ] Checking for existing commands in stream...
[2026-06-12 04:21:22,793.793 INFO    ] No existing commands found in stream
[2026-06-12 04:21:27,802.802 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 04:21:27,804.804 INFO    ] Waiting 0.03 seconds before fallback handling...
[2026-06-12 04:21:28,220.220 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 04:21:28,222.222 INFO    ] Checking for system updates...
[2026-06-12 04:21:28,243.243 INFO    ] 200
[2026-06-12 04:21:28,244.244 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:21:28,277.277 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 04:21:28,278.278 INFO    ] No update needed
[2026-06-12 04:21:28,280.280 INFO    ] Checking for camera pi updates...
[2026-06-12 04:21:28,303.303 INFO    ] 200
[2026-06-12 04:21:28,305.305 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:21:28,333.333 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 04:21:28,372.372 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 04:21:28,373.373 INFO    ] No camera update needed
[2026-06-12 04:21:28,375.375 INFO    ] Script finished. Safe exiting...
[2026-06-12 04:21:28,376.376 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 04:21:28,379.379 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 04:21:28,383.383 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 04:21:30,423.423 INFO    ] ================================================
[2026-06-12 04:21:30,438.438 INFO    ] Launching Daemon at Fri Jun 12 04:21:30 IST 2026
[2026-06-12 04:21:30,449.449 INFO    ] ================================================
[2026-06-12 04:21:30,797.797 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 04:21:30
[2026-06-12 04:21:31,136.136 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 04:21:31,313.313 INFO    ] Initializing speech engine...
[2026-06-12 04:21:31,318.318 INFO    ] 2026-06-12 04:21:31
[2026-06-12 04:21:31,544.544 INFO    ] 2026-06-12 04:21:31
[2026-06-12 04:21:31,579.579 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 04:21:31,776.776 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 04:21:31,780.780 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 04:21:31,950.950 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 04:21:32,002.002 INFO    ] time= 12/06/2026 04:21:31
[2026-06-12 04:21:32,025.025 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 04:21:32,031.031 INFO    ] Checking for existing commands in stream...
[2026-06-12 04:21:32,098.098 INFO    ] No existing commands found in stream
[2026-06-12 04:21:37,117.117 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 04:21:37,121.121 INFO    ] Waiting 2.66 seconds before fallback handling...
[2026-06-12 04:21:40,137.137 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 04:21:40,139.139 INFO    ] Checking for system updates...
[2026-06-12 04:21:40,161.161 INFO    ] 200
[2026-06-12 04:21:40,162.162 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:21:40,196.196 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 04:21:40,197.197 INFO    ] No update needed
[2026-06-12 04:21:40,199.199 INFO    ] Checking for camera pi updates...
[2026-06-12 04:21:40,220.220 INFO    ] 200
[2026-06-12 04:21:40,221.221 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:21:40,249.249 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 04:21:40,293.293 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 04:21:40,294.294 INFO    ] No camera update needed
[2026-06-12 04:21:40,296.296 INFO    ] Script finished. Safe exiting...
[2026-06-12 04:21:40,297.297 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 04:21:40,300.300 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 04:21:40,303.303 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 04:21:42,343.343 INFO    ] ================================================
[2026-06-12 04:21:42,358.358 INFO    ] Launching Daemon at Fri Jun 12 04:21:42 IST 2026
[2026-06-12 04:21:42,369.369 INFO    ] ================================================
[2026-06-12 04:21:42,718.718 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 04:21:42
[2026-06-12 04:21:43,058.058 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 04:21:43,213.213 INFO    ] Initializing speech engine...
[2026-06-12 04:21:43,218.218 INFO    ] 2026-06-12 04:21:43
[2026-06-12 04:21:43,428.428 INFO    ] 2026-06-12 04:21:43
[2026-06-12 04:21:43,457.457 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 04:21:43,595.595 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 04:21:43,644.644 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 04:21:43,795.795 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 04:21:43,862.862 INFO    ] time= 12/06/2026 04:21:43
[2026-06-12 04:21:43,888.888 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 04:21:43,895.895 INFO    ] Checking for existing commands in stream...
[2026-06-12 04:21:43,965.965 INFO    ] No existing commands found in stream
[2026-06-12 04:21:48,972.972 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 04:21:48,975.975 INFO    ] Waiting 3.33 seconds before fallback handling...
[2026-06-12 04:21:52,738.738 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 04:21:52,739.739 INFO    ] Checking for system updates...
[2026-06-12 04:21:52,760.760 INFO    ] 200
[2026-06-12 04:21:52,761.761 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:21:52,791.791 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 04:21:52,793.793 INFO    ] No update needed
[2026-06-12 04:21:52,794.794 INFO    ] Checking for camera pi updates...
[2026-06-12 04:21:52,814.814 INFO    ] 200
[2026-06-12 04:21:52,815.815 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:21:52,840.840 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 04:21:52,881.881 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 04:21:52,882.882 INFO    ] No camera update needed
[2026-06-12 04:21:52,884.884 INFO    ] Script finished. Safe exiting...
[2026-06-12 04:21:52,885.885 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 04:21:52,888.888 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 04:21:52,891.891 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 04:21:54,930.930 INFO    ] ================================================
[2026-06-12 04:21:54,946.946 INFO    ] Launching Daemon at Fri Jun 12 04:21:54 IST 2026
[2026-06-12 04:21:54,957.957 INFO    ] ================================================
[2026-06-12 04:21:55,330.330 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 04:21:55
[2026-06-12 04:21:55,669.669 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 04:21:55,823.823 INFO    ] Initializing speech engine...
[2026-06-12 04:21:55,828.828 INFO    ] 2026-06-12 04:21:55
[2026-06-12 04:21:56,035.035 INFO    ] 2026-06-12 04:21:56
[2026-06-12 04:21:56,064.064 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 04:21:56,250.250 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 04:21:56,263.263 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 04:21:56,457.457 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 04:21:56,479.479 INFO    ] time= 12/06/2026 04:21:56
[2026-06-12 04:21:56,485.485 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 04:21:56,487.487 INFO    ] Checking for existing commands in stream...
[2026-06-12 04:21:56,557.557 INFO    ] No existing commands found in stream
[2026-06-12 04:22:01,572.572 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 04:22:01,574.574 INFO    ] Waiting 0.49 seconds before fallback handling...
[2026-06-12 04:22:02,437.437 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 04:22:02,438.438 INFO    ] Checking for system updates...
[2026-06-12 04:22:02,463.463 INFO    ] 200
[2026-06-12 04:22:02,464.464 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:22:02,506.506 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 04:22:02,507.507 INFO    ] No update needed
[2026-06-12 04:22:02,509.509 INFO    ] Checking for camera pi updates...
[2026-06-12 04:22:02,530.530 INFO    ] 200
[2026-06-12 04:22:02,532.532 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:22:02,558.558 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 04:22:02,601.601 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 04:22:02,602.602 INFO    ] No camera update needed
[2026-06-12 04:22:02,603.603 INFO    ] Script finished. Safe exiting...
[2026-06-12 04:22:02,605.605 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 04:22:02,608.608 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 04:22:02,611.611 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 04:22:04,649.649 INFO    ] ================================================
[2026-06-12 04:22:04,664.664 INFO    ] Launching Daemon at Fri Jun 12 04:22:04 IST 2026
[2026-06-12 04:22:04,675.675 INFO    ] ================================================
[2026-06-12 04:22:04,997.997 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 04:22:04
[2026-06-12 04:22:05,307.307 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 04:22:05,451.451 INFO    ] Initializing speech engine...
[2026-06-12 04:22:05,456.456 INFO    ] 2026-06-12 04:22:05
[2026-06-12 04:22:05,682.682 INFO    ] 2026-06-12 04:22:05
[2026-06-12 04:22:05,712.712 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 04:22:05,906.906 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 04:22:05,909.909 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 04:22:06,045.045 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 04:22:06,107.107 INFO    ] time= 12/06/2026 04:22:06
[2026-06-12 04:22:06,134.134 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 04:22:06,151.151 INFO    ] Checking for existing commands in stream...
[2026-06-12 04:22:06,225.225 INFO    ] No existing commands found in stream
[2026-06-12 04:22:11,236.236 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 04:22:11,238.238 INFO    ] Waiting 1.91 seconds before fallback handling...
[2026-06-12 04:22:13,553.553 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 04:22:13,555.555 INFO    ] Checking for system updates...
[2026-06-12 04:22:13,575.575 INFO    ] 200
[2026-06-12 04:22:13,577.577 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:22:13,608.608 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 04:22:13,609.609 INFO    ] No update needed
[2026-06-12 04:22:13,611.611 INFO    ] Checking for camera pi updates...
[2026-06-12 04:22:13,633.633 INFO    ] 200
[2026-06-12 04:22:13,635.635 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:22:13,658.658 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 04:22:13,697.697 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 04:22:13,699.699 INFO    ] No camera update needed
[2026-06-12 04:22:13,700.700 INFO    ] Script finished. Safe exiting...
[2026-06-12 04:22:13,701.701 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 04:22:13,704.704 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 04:22:13,707.707 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 04:22:15,745.745 INFO    ] ================================================
[2026-06-12 04:22:15,760.760 INFO    ] Launching Daemon at Fri Jun 12 04:22:15 IST 2026
[2026-06-12 04:22:15,770.770 INFO    ] ================================================
[2026-06-12 04:22:16,117.117 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 04:22:16
[2026-06-12 04:22:16,430.430 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 04:22:16,562.562 INFO    ] Initializing speech engine...
[2026-06-12 04:22:16,567.567 INFO    ] 2026-06-12 04:22:16
[2026-06-12 04:22:16,794.794 INFO    ] 2026-06-12 04:22:16
[2026-06-12 04:22:16,824.824 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 04:22:17,020.020 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 04:22:17,024.024 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 04:22:17,169.169 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 04:22:17,228.228 INFO    ] time= 12/06/2026 04:22:17
[2026-06-12 04:22:17,266.266 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 04:22:17,268.268 INFO    ] Checking for existing commands in stream...
[2026-06-12 04:22:17,396.396 INFO    ] No existing commands found in stream
[2026-06-12 04:22:22,405.405 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 04:22:22,408.408 INFO    ] Waiting 0.92 seconds before fallback handling...
[2026-06-12 04:22:23,693.693 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 04:22:23,694.694 INFO    ] Checking for system updates...
[2026-06-12 04:22:23,716.716 INFO    ] 200
[2026-06-12 04:22:23,718.718 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:22:23,747.747 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 04:22:23,749.749 INFO    ] No update needed
[2026-06-12 04:22:23,750.750 INFO    ] Checking for camera pi updates...
[2026-06-12 04:22:23,770.770 INFO    ] 200
[2026-06-12 04:22:23,771.771 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:22:23,798.798 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 04:22:23,831.831 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 04:22:23,832.832 INFO    ] No camera update needed
[2026-06-12 04:22:23,833.833 INFO    ] Script finished. Safe exiting...
[2026-06-12 04:22:23,834.834 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 04:22:23,838.838 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 04:22:23,840.840 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 04:22:25,879.879 INFO    ] ================================================
[2026-06-12 04:22:25,894.894 INFO    ] Launching Daemon at Fri Jun 12 04:22:25 IST 2026
[2026-06-12 04:22:25,905.905 INFO    ] ================================================
[2026-06-12 04:22:26,246.246 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 04:22:26
[2026-06-12 04:22:26,565.565 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 04:22:26,707.707 INFO    ] Initializing speech engine...
[2026-06-12 04:22:26,713.713 INFO    ] 2026-06-12 04:22:26
[2026-06-12 04:22:26,915.915 INFO    ] 2026-06-12 04:22:26
[2026-06-12 04:22:26,943.943 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 04:22:27,127.127 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 04:22:27,137.137 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 04:22:27,331.331 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 04:22:27,356.356 INFO    ] time= 12/06/2026 04:22:27
[2026-06-12 04:22:27,361.361 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 04:22:27,363.363 INFO    ] Checking for existing commands in stream...
[2026-06-12 04:22:27,429.429 INFO    ] No existing commands found in stream
[2026-06-12 04:22:32,462.462 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 04:22:32,464.464 INFO    ] Waiting 3.45 seconds before fallback handling...
[2026-06-12 04:22:36,308.308 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 04:22:36,310.310 INFO    ] Checking for system updates...
[2026-06-12 04:22:36,330.330 INFO    ] 200
[2026-06-12 04:22:36,332.332 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:22:36,362.362 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 04:22:36,363.363 INFO    ] No update needed
[2026-06-12 04:22:36,365.365 INFO    ] Checking for camera pi updates...
[2026-06-12 04:22:36,385.385 INFO    ] 200
[2026-06-12 04:22:36,386.386 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:22:36,414.414 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 04:22:36,451.451 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 04:22:36,453.453 INFO    ] No camera update needed
[2026-06-12 04:22:36,454.454 INFO    ] Script finished. Safe exiting...
[2026-06-12 04:22:36,455.455 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 04:22:36,458.458 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 04:22:36,461.461 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 04:22:38,499.499 INFO    ] ================================================
[2026-06-12 04:22:38,515.515 INFO    ] Launching Daemon at Fri Jun 12 04:22:38 IST 2026
[2026-06-12 04:22:38,525.525 INFO    ] ================================================
[2026-06-12 04:22:38,855.855 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 04:22:38
[2026-06-12 04:22:39,165.165 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 04:22:39,294.294 INFO    ] Initializing speech engine...
[2026-06-12 04:22:39,302.302 INFO    ] 2026-06-12 04:22:39
[2026-06-12 04:22:39,513.513 INFO    ] 2026-06-12 04:22:39
[2026-06-12 04:22:39,542.542 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 04:22:39,938.938 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 04:22:39,948.948 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 04:22:40,067.067 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 04:22:40,070.070 INFO    ] time= 12/06/2026 04:22:40
[2026-06-12 04:22:40,072.072 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 04:22:40,075.075 INFO    ] Checking for existing commands in stream...
[2026-06-12 04:22:40,147.147 INFO    ] No existing commands found in stream
[2026-06-12 04:22:45,157.157 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 04:22:45,160.160 INFO    ] Waiting 3.52 seconds before fallback handling...
[2026-06-12 04:22:49,061.061 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 04:22:49,062.062 INFO    ] Checking for system updates...
[2026-06-12 04:22:49,083.083 INFO    ] 200
[2026-06-12 04:22:49,084.084 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:22:49,117.117 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 04:22:49,118.118 INFO    ] No update needed
[2026-06-12 04:22:49,120.120 INFO    ] Checking for camera pi updates...
[2026-06-12 04:22:49,140.140 INFO    ] 200
[2026-06-12 04:22:49,142.142 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:22:49,165.165 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 04:22:49,200.200 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 04:22:49,202.202 INFO    ] No camera update needed
[2026-06-12 04:22:49,203.203 INFO    ] Script finished. Safe exiting...
[2026-06-12 04:22:49,204.204 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 04:22:49,207.207 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 04:22:49,210.210 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 04:22:51,243.243 INFO    ] ================================================
[2026-06-12 04:22:51,258.258 INFO    ] Launching Daemon at Fri Jun 12 04:22:51 IST 2026
[2026-06-12 04:22:51,269.269 INFO    ] ================================================
[2026-06-12 04:22:51,604.604 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 04:22:51
[2026-06-12 04:22:51,924.924 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 04:22:52,068.068 INFO    ] Initializing speech engine...
[2026-06-12 04:22:52,073.073 INFO    ] 2026-06-12 04:22:52
[2026-06-12 04:22:52,278.278 INFO    ] 2026-06-12 04:22:52
[2026-06-12 04:22:52,306.306 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 04:22:52,688.688 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 04:22:52,709.709 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 04:22:52,839.839 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 04:22:52,841.841 INFO    ] time= 12/06/2026 04:22:52
[2026-06-12 04:22:52,844.844 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 04:22:52,847.847 INFO    ] Checking for existing commands in stream...
[2026-06-12 04:22:52,911.911 INFO    ] No existing commands found in stream
[2026-06-12 04:22:57,920.920 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 04:22:57,923.923 INFO    ] Waiting 2.97 seconds before fallback handling...
[2026-06-12 04:23:01,304.304 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 04:23:01,306.306 INFO    ] Checking for system updates...
[2026-06-12 04:23:01,328.328 INFO    ] 200
[2026-06-12 04:23:01,329.329 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:23:01,360.360 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 04:23:01,361.361 INFO    ] No update needed
[2026-06-12 04:23:01,363.363 INFO    ] Checking for camera pi updates...
[2026-06-12 04:23:01,383.383 INFO    ] 200
[2026-06-12 04:23:01,384.384 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:23:01,410.410 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 04:23:01,459.459 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 04:23:01,460.460 INFO    ] No camera update needed
[2026-06-12 04:23:01,465.465 INFO    ] Script finished. Safe exiting...
[2026-06-12 04:23:01,467.467 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 04:23:01,471.471 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 04:23:01,474.474 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 04:23:03,508.508 INFO    ] ================================================
[2026-06-12 04:23:03,523.523 INFO    ] Launching Daemon at Fri Jun 12 04:23:03 IST 2026
[2026-06-12 04:23:03,534.534 INFO    ] ================================================
[2026-06-12 04:23:03,882.882 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 04:23:03
[2026-06-12 04:23:04,194.194 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 04:23:04,324.324 INFO    ] Initializing speech engine...
[2026-06-12 04:23:04,329.329 INFO    ] 2026-06-12 04:23:04
[2026-06-12 04:23:04,547.547 INFO    ] 2026-06-12 04:23:04
[2026-06-12 04:23:04,576.576 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 04:23:04,763.763 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 04:23:04,772.772 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 04:23:04,915.915 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 04:23:04,973.973 INFO    ] time= 12/06/2026 04:23:04
[2026-06-12 04:23:04,997.997 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 04:23:05,004.004 INFO    ] Checking for existing commands in stream...
[2026-06-12 04:23:05,098.098 INFO    ] No existing commands found in stream
[2026-06-12 04:23:10,107.107 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 04:23:10,110.110 INFO    ] Waiting 0.45 seconds before fallback handling...
[2026-06-12 04:23:10,924.924 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 04:23:10,926.926 INFO    ] Checking for system updates...
[2026-06-12 04:23:10,947.947 INFO    ] 200
[2026-06-12 04:23:10,948.948 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:23:10,981.981 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 04:23:10,982.982 INFO    ] No update needed
[2026-06-12 04:23:10,984.984 INFO    ] Checking for camera pi updates...
[2026-06-12 04:23:11,004.004 INFO    ] 200
[2026-06-12 04:23:11,006.006 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:23:11,030.030 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 04:23:11,072.072 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 04:23:11,073.073 INFO    ] No camera update needed
[2026-06-12 04:23:11,074.074 INFO    ] Script finished. Safe exiting...
[2026-06-12 04:23:11,075.075 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 04:23:11,078.078 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 04:23:11,081.081 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 04:23:13,119.119 INFO    ] ================================================
[2026-06-12 04:23:13,134.134 INFO    ] Launching Daemon at Fri Jun 12 04:23:13 IST 2026
[2026-06-12 04:23:13,145.145 INFO    ] ================================================
[2026-06-12 04:23:13,514.514 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 04:23:13
[2026-06-12 04:23:13,826.826 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 04:23:13,960.960 INFO    ] Initializing speech engine...
[2026-06-12 04:23:13,969.969 INFO    ] 2026-06-12 04:23:13
[2026-06-12 04:23:14,195.195 INFO    ] 2026-06-12 04:23:14
[2026-06-12 04:23:14,225.225 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 04:23:14,424.424 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 04:23:14,427.427 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 04:23:14,567.567 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 04:23:14,613.613 INFO    ] time= 12/06/2026 04:23:14
[2026-06-12 04:23:14,651.651 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 04:23:14,675.675 INFO    ] Checking for existing commands in stream...
[2026-06-12 04:23:14,778.778 INFO    ] No existing commands found in stream
[2026-06-12 04:23:19,787.787 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 04:23:19,790.790 INFO    ] Waiting 3.34 seconds before fallback handling...
[2026-06-12 04:23:23,554.554 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 04:23:23,556.556 INFO    ] Checking for system updates...
[2026-06-12 04:23:23,577.577 INFO    ] 200
[2026-06-12 04:23:23,578.578 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:23:23,608.608 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 04:23:23,610.610 INFO    ] No update needed
[2026-06-12 04:23:23,611.611 INFO    ] Checking for camera pi updates...
[2026-06-12 04:23:23,632.632 INFO    ] 200
[2026-06-12 04:23:23,633.633 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:23:23,656.656 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 04:23:23,801.801 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 04:23:23,802.802 INFO    ] No camera update needed
[2026-06-12 04:23:23,804.804 INFO    ] Script finished. Safe exiting...
[2026-06-12 04:23:23,805.805 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 04:23:23,808.808 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 04:23:23,811.811 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 04:23:25,848.848 INFO    ] ================================================
[2026-06-12 04:23:25,863.863 INFO    ] Launching Daemon at Fri Jun 12 04:23:25 IST 2026
[2026-06-12 04:23:25,874.874 INFO    ] ================================================
[2026-06-12 04:23:26,238.238 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 04:23:26
[2026-06-12 04:23:26,549.549 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 04:23:26,697.697 INFO    ] Initializing speech engine...
[2026-06-12 04:23:26,701.701 INFO    ] 2026-06-12 04:23:26
[2026-06-12 04:23:26,920.920 INFO    ] 2026-06-12 04:23:26
[2026-06-12 04:23:26,944.944 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 04:23:27,150.150 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 04:23:27,154.154 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 04:23:27,299.299 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 04:23:27,355.355 INFO    ] time= 12/06/2026 04:23:27
[2026-06-12 04:23:27,390.390 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 04:23:27,401.401 INFO    ] Checking for existing commands in stream...
[2026-06-12 04:23:27,505.505 INFO    ] No existing commands found in stream
[2026-06-12 04:23:32,512.512 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 04:23:32,515.515 INFO    ] Waiting 1.52 seconds before fallback handling...
[2026-06-12 04:23:34,412.412 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 04:23:34,414.414 INFO    ] Checking for system updates...
[2026-06-12 04:23:34,434.434 INFO    ] 200
[2026-06-12 04:23:34,436.436 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:23:34,467.467 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 04:23:34,468.468 INFO    ] No update needed
[2026-06-12 04:23:34,469.469 INFO    ] Checking for camera pi updates...
[2026-06-12 04:23:34,490.490 INFO    ] 200
[2026-06-12 04:23:34,492.492 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:23:34,516.516 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 04:23:34,558.558 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 04:23:34,559.559 INFO    ] No camera update needed
[2026-06-12 04:23:34,560.560 INFO    ] Script finished. Safe exiting...
[2026-06-12 04:23:34,562.562 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 04:23:34,565.565 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 04:23:34,567.567 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 04:23:36,606.606 INFO    ] ================================================
[2026-06-12 04:23:36,623.623 INFO    ] Launching Daemon at Fri Jun 12 04:23:36 IST 2026
[2026-06-12 04:23:36,634.634 INFO    ] ================================================
[2026-06-12 04:23:36,971.971 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 04:23:36
[2026-06-12 04:23:37,282.282 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 04:23:37,411.411 INFO    ] Initializing speech engine...
[2026-06-12 04:23:37,416.416 INFO    ] 2026-06-12 04:23:37
[2026-06-12 04:23:37,641.641 INFO    ] 2026-06-12 04:23:37
[2026-06-12 04:23:37,672.672 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 04:23:37,870.870 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 04:23:37,874.874 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 04:23:38,014.014 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 04:23:38,065.065 INFO    ] time= 12/06/2026 04:23:38
[2026-06-12 04:23:38,099.099 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 04:23:38,126.126 INFO    ] Checking for existing commands in stream...
[2026-06-12 04:23:38,194.194 INFO    ] No existing commands found in stream
[2026-06-12 04:23:43,202.202 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 04:23:43,205.205 INFO    ] Waiting 1.74 seconds before fallback handling...
[2026-06-12 04:23:45,361.361 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 04:23:45,363.363 INFO    ] Checking for system updates...
[2026-06-12 04:23:45,385.385 INFO    ] 200
[2026-06-12 04:23:45,387.387 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:23:45,422.422 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 04:23:45,424.424 INFO    ] No update needed
[2026-06-12 04:23:45,425.425 INFO    ] Checking for camera pi updates...
[2026-06-12 04:23:45,448.448 INFO    ] 200
[2026-06-12 04:23:45,450.450 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:23:45,475.475 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 04:23:45,514.514 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 04:23:45,516.516 INFO    ] No camera update needed
[2026-06-12 04:23:45,517.517 INFO    ] Script finished. Safe exiting...
[2026-06-12 04:23:45,518.518 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 04:23:45,522.522 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 04:23:45,525.525 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 04:23:47,565.565 INFO    ] ================================================
[2026-06-12 04:23:47,581.581 INFO    ] Launching Daemon at Fri Jun 12 04:23:47 IST 2026
[2026-06-12 04:23:47,593.593 INFO    ] ================================================
[2026-06-12 04:23:47,954.954 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 04:23:47
[2026-06-12 04:23:48,266.266 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 04:23:48,408.408 INFO    ] Initializing speech engine...
[2026-06-12 04:23:48,418.418 INFO    ] 2026-06-12 04:23:48
[2026-06-12 04:23:48,635.635 INFO    ] 2026-06-12 04:23:48
[2026-06-12 04:23:48,666.666 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 04:23:48,862.862 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 04:23:48,866.866 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 04:23:49,029.029 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 04:23:49,086.086 INFO    ] time= 12/06/2026 04:23:49
[2026-06-12 04:23:49,110.110 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 04:23:49,112.112 INFO    ] Checking for existing commands in stream...
[2026-06-12 04:23:49,189.189 INFO    ] No existing commands found in stream
[2026-06-12 04:23:54,203.203 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 04:23:54,206.206 INFO    ] Waiting 2.64 seconds before fallback handling...
[2026-06-12 04:23:57,192.192 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 04:23:57,193.193 INFO    ] Checking for system updates...
[2026-06-12 04:23:57,216.216 INFO    ] 200
[2026-06-12 04:23:57,217.217 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:23:57,250.250 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 04:23:57,252.252 INFO    ] No update needed
[2026-06-12 04:23:57,253.253 INFO    ] Checking for camera pi updates...
[2026-06-12 04:23:57,272.272 INFO    ] 200
[2026-06-12 04:23:57,274.274 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:23:57,296.296 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 04:23:57,334.334 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 04:23:57,335.335 INFO    ] No camera update needed
[2026-06-12 04:23:57,336.336 INFO    ] Script finished. Safe exiting...
[2026-06-12 04:23:57,337.337 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 04:23:57,341.341 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 04:23:57,343.343 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 04:23:59,382.382 INFO    ] ================================================
[2026-06-12 04:23:59,398.398 INFO    ] Launching Daemon at Fri Jun 12 04:23:59 IST 2026
[2026-06-12 04:23:59,409.409 INFO    ] ================================================
[2026-06-12 04:23:59,764.764 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 04:23:59
[2026-06-12 04:24:00,076.076 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 04:24:00,209.209 INFO    ] Initializing speech engine...
[2026-06-12 04:24:00,213.213 INFO    ] 2026-06-12 04:24:00
[2026-06-12 04:24:00,443.443 INFO    ] 2026-06-12 04:24:00
[2026-06-12 04:24:00,473.473 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 04:24:00,670.670 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 04:24:00,674.674 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 04:24:00,822.822 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 04:24:00,876.876 INFO    ] time= 12/06/2026 04:24:00
[2026-06-12 04:24:00,910.910 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 04:24:00,921.921 INFO    ] Checking for existing commands in stream...
[2026-06-12 04:24:01,025.025 INFO    ] No existing commands found in stream
[2026-06-12 04:24:06,032.032 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 04:24:06,035.035 INFO    ] Waiting 3.77 seconds before fallback handling...
[2026-06-12 04:24:10,162.162 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 04:24:10,164.164 INFO    ] Checking for system updates...
[2026-06-12 04:24:10,185.185 INFO    ] 200
[2026-06-12 04:24:10,186.186 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:24:10,216.216 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 04:24:10,217.217 INFO    ] No update needed
[2026-06-12 04:24:10,219.219 INFO    ] Checking for camera pi updates...
[2026-06-12 04:24:10,240.240 INFO    ] 200
[2026-06-12 04:24:10,241.241 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:24:10,269.269 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 04:24:10,315.315 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 04:24:10,316.316 INFO    ] No camera update needed
[2026-06-12 04:24:10,318.318 INFO    ] Script finished. Safe exiting...
[2026-06-12 04:24:10,319.319 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 04:24:10,322.322 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 04:24:10,325.325 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 04:24:12,365.365 INFO    ] ================================================
[2026-06-12 04:24:12,380.380 INFO    ] Launching Daemon at Fri Jun 12 04:24:12 IST 2026
[2026-06-12 04:24:12,391.391 INFO    ] ================================================
[2026-06-12 04:24:12,737.737 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 04:24:12
[2026-06-12 04:24:13,075.075 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 04:24:13,226.226 INFO    ] Initializing speech engine...
[2026-06-12 04:24:13,231.231 INFO    ] 2026-06-12 04:24:13
[2026-06-12 04:24:13,439.439 INFO    ] 2026-06-12 04:24:13
[2026-06-12 04:24:13,468.468 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 04:24:13,654.654 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 04:24:13,664.664 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 04:24:13,854.854 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 04:24:13,883.883 INFO    ] time= 12/06/2026 04:24:13
[2026-06-12 04:24:13,889.889 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 04:24:13,891.891 INFO    ] Checking for existing commands in stream...
[2026-06-12 04:24:13,958.958 INFO    ] No existing commands found in stream
[2026-06-12 04:24:18,967.967 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 04:24:18,970.970 INFO    ] Waiting 3.20 seconds before fallback handling...
[2026-06-12 04:24:27,642.642 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 04:24:27,644.644 INFO    ] Checking for system updates...
[2026-06-12 04:24:27,666.666 INFO    ] 200
[2026-06-12 04:24:27,668.668 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:24:27,701.701 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 04:24:27,702.702 INFO    ] No update needed
[2026-06-12 04:24:27,704.704 INFO    ] Checking for camera pi updates...
[2026-06-12 04:24:27,725.725 INFO    ] 200
[2026-06-12 04:24:27,726.726 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:24:27,754.754 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 04:24:27,794.794 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 04:24:27,796.796 INFO    ] No camera update needed
[2026-06-12 04:24:27,797.797 INFO    ] Script finished. Safe exiting...
[2026-06-12 04:24:27,798.798 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 04:24:27,802.802 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 04:24:27,805.805 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 04:24:29,843.843 INFO    ] ================================================
[2026-06-12 04:24:29,859.859 INFO    ] Launching Daemon at Fri Jun 12 04:24:29 IST 2026
[2026-06-12 04:24:29,871.871 INFO    ] ================================================
[2026-06-12 04:24:30,231.231 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 04:24:30
[2026-06-12 04:24:30,543.543 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 04:24:30,672.672 INFO    ] Initializing speech engine...
[2026-06-12 04:24:30,680.680 INFO    ] 2026-06-12 04:24:30
[2026-06-12 04:24:30,892.892 INFO    ] 2026-06-12 04:24:30
[2026-06-12 04:24:30,920.920 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 04:24:31,102.102 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 04:24:31,111.111 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 04:24:31,250.250 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 04:24:31,306.306 INFO    ] time= 12/06/2026 04:24:31
[2026-06-12 04:24:31,329.329 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 04:24:31,335.335 INFO    ] Checking for existing commands in stream...
[2026-06-12 04:24:31,402.402 INFO    ] No existing commands found in stream
[2026-06-12 04:24:36,416.416 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 04:24:36,418.418 INFO    ] Waiting 2.66 seconds before fallback handling...
[2026-06-12 04:24:39,470.470 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 04:24:39,471.471 INFO    ] Checking for system updates...
[2026-06-12 04:24:39,492.492 INFO    ] 200
[2026-06-12 04:24:39,493.493 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:24:39,524.524 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 04:24:39,525.525 INFO    ] No update needed
[2026-06-12 04:24:39,526.526 INFO    ] Checking for camera pi updates...
[2026-06-12 04:24:39,546.546 INFO    ] 200
[2026-06-12 04:24:39,547.547 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:24:39,572.572 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 04:24:39,613.613 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 04:24:39,614.614 INFO    ] No camera update needed
[2026-06-12 04:24:39,616.616 INFO    ] Script finished. Safe exiting...
[2026-06-12 04:24:39,617.617 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 04:24:39,620.620 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 04:24:39,622.622 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 04:24:41,661.661 INFO    ] ================================================
[2026-06-12 04:24:41,677.677 INFO    ] Launching Daemon at Fri Jun 12 04:24:41 IST 2026
[2026-06-12 04:24:41,688.688 INFO    ] ================================================
[2026-06-12 04:24:42,076.076 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 04:24:42
[2026-06-12 04:24:42,414.414 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 04:24:42,567.567 INFO    ] Initializing speech engine...
[2026-06-12 04:24:42,571.571 INFO    ] 2026-06-12 04:24:42
[2026-06-12 04:24:42,775.775 INFO    ] 2026-06-12 04:24:42
[2026-06-12 04:24:42,803.803 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 04:24:42,927.927 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 04:24:42,980.980 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 04:24:43,131.131 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 04:24:43,194.194 INFO    ] time= 12/06/2026 04:24:43
[2026-06-12 04:24:43,222.222 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 04:24:43,229.229 INFO    ] Checking for existing commands in stream...
[2026-06-12 04:24:43,297.297 INFO    ] No existing commands found in stream
[2026-06-12 04:24:48,311.311 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 04:24:48,314.314 INFO    ] Waiting 1.86 seconds before fallback handling...
[2026-06-12 04:24:50,567.567 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 04:24:50,568.568 INFO    ] Checking for system updates...
[2026-06-12 04:24:50,591.591 INFO    ] 200
[2026-06-12 04:24:50,593.593 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:24:50,624.624 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 04:24:50,626.626 INFO    ] No update needed
[2026-06-12 04:24:50,627.627 INFO    ] Checking for camera pi updates...
[2026-06-12 04:24:50,647.647 INFO    ] 200
[2026-06-12 04:24:50,648.648 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:24:50,674.674 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 04:24:50,714.714 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 04:24:50,715.715 INFO    ] No camera update needed
[2026-06-12 04:24:50,717.717 INFO    ] Script finished. Safe exiting...
[2026-06-12 04:24:50,718.718 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 04:24:50,722.722 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 04:24:50,725.725 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 04:24:52,763.763 INFO    ] ================================================
[2026-06-12 04:24:52,779.779 INFO    ] Launching Daemon at Fri Jun 12 04:24:52 IST 2026
[2026-06-12 04:24:52,790.790 INFO    ] ================================================
[2026-06-12 04:24:53,155.155 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 04:24:53
[2026-06-12 04:24:53,509.509 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 04:24:53,665.665 INFO    ] Initializing speech engine...
[2026-06-12 04:24:53,673.673 INFO    ] 2026-06-12 04:24:53
[2026-06-12 04:24:53,869.869 INFO    ] 2026-06-12 04:24:53
[2026-06-12 04:24:53,897.897 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 04:24:54,081.081 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 04:24:54,084.084 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 04:24:54,219.219 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 04:24:54,283.283 INFO    ] time= 12/06/2026 04:24:54
[2026-06-12 04:24:54,311.311 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 04:24:54,317.317 INFO    ] Checking for existing commands in stream...
[2026-06-12 04:24:54,383.383 INFO    ] No existing commands found in stream
[2026-06-12 04:24:59,391.391 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 04:24:59,393.393 INFO    ] Waiting 2.24 seconds before fallback handling...
[2026-06-12 04:25:04,465.465 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 04:25:04,468.468 INFO    ] Checking for system updates...
[2026-06-12 04:25:04,515.515 INFO    ] 200
[2026-06-12 04:25:04,517.517 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:25:04,571.571 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 04:25:04,574.574 INFO    ] No update needed
[2026-06-12 04:25:04,577.577 INFO    ] Checking for camera pi updates...
[2026-06-12 04:25:04,613.613 INFO    ] 200
[2026-06-12 04:25:04,614.614 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:25:04,637.637 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 04:25:04,672.672 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 04:25:04,673.673 INFO    ] No camera update needed
[2026-06-12 04:25:04,674.674 INFO    ] Script finished. Safe exiting...
[2026-06-12 04:25:04,675.675 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 04:25:04,678.678 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 04:25:04,681.681 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 04:25:06,719.719 INFO    ] ================================================
[2026-06-12 04:25:06,735.735 INFO    ] Launching Daemon at Fri Jun 12 04:25:06 IST 2026
[2026-06-12 04:25:06,746.746 INFO    ] ================================================
[2026-06-12 04:25:07,073.073 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 04:25:07
[2026-06-12 04:25:07,384.384 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 04:25:07,512.512 INFO    ] Initializing speech engine...
[2026-06-12 04:25:07,517.517 INFO    ] 2026-06-12 04:25:07
[2026-06-12 04:25:07,732.732 INFO    ] 2026-06-12 04:25:07
[2026-06-12 04:25:07,761.761 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 04:25:07,918.918 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 04:25:07,946.946 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 04:25:08,080.080 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 04:25:08,150.150 INFO    ] time= 12/06/2026 04:25:08
[2026-06-12 04:25:08,174.174 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 04:25:08,180.180 INFO    ] Checking for existing commands in stream...
[2026-06-12 04:25:08,248.248 INFO    ] No existing commands found in stream
[2026-06-12 04:25:13,262.262 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 04:25:13,264.264 INFO    ] Waiting 1.50 seconds before fallback handling...
[2026-06-12 04:25:15,173.173 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 04:25:15,174.174 INFO    ] Checking for system updates...
[2026-06-12 04:25:15,196.196 INFO    ] 200
[2026-06-12 04:25:15,197.197 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:25:15,230.230 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 04:25:15,231.231 INFO    ] No update needed
[2026-06-12 04:25:15,232.232 INFO    ] Checking for camera pi updates...
[2026-06-12 04:25:15,252.252 INFO    ] 200
[2026-06-12 04:25:15,253.253 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:25:15,276.276 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 04:25:15,316.316 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 04:25:15,318.318 INFO    ] No camera update needed
[2026-06-12 04:25:15,319.319 INFO    ] Script finished. Safe exiting...
[2026-06-12 04:25:15,320.320 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 04:25:15,323.323 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 04:25:15,326.326 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 04:25:17,365.365 INFO    ] ================================================
[2026-06-12 04:25:17,381.381 INFO    ] Launching Daemon at Fri Jun 12 04:25:17 IST 2026
[2026-06-12 04:25:17,392.392 INFO    ] ================================================
[2026-06-12 04:25:17,735.735 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 04:25:17
[2026-06-12 04:25:18,051.051 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 04:25:18,182.182 INFO    ] Initializing speech engine...
[2026-06-12 04:25:18,190.190 INFO    ] 2026-06-12 04:25:18
[2026-06-12 04:25:18,401.401 INFO    ] 2026-06-12 04:25:18
[2026-06-12 04:25:18,431.431 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 04:25:18,614.614 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 04:25:18,623.623 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 04:25:18,747.747 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 04:25:18,810.810 INFO    ] time= 12/06/2026 04:25:18
[2026-06-12 04:25:18,842.842 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 04:25:18,848.848 INFO    ] Checking for existing commands in stream...
[2026-06-12 04:25:18,915.915 INFO    ] No existing commands found in stream
[2026-06-12 04:25:23,929.929 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 04:25:23,932.932 INFO    ] Waiting 3.81 seconds before fallback handling...
[2026-06-12 04:25:28,117.117 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 04:25:28,118.118 INFO    ] Checking for system updates...
[2026-06-12 04:25:28,140.140 INFO    ] 200
[2026-06-12 04:25:28,141.141 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:25:28,171.171 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 04:25:28,172.172 INFO    ] No update needed
[2026-06-12 04:25:28,173.173 INFO    ] Checking for camera pi updates...
[2026-06-12 04:25:28,196.196 INFO    ] 200
[2026-06-12 04:25:28,197.197 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:25:28,222.222 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 04:25:28,359.359 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 04:25:28,360.360 INFO    ] No camera update needed
[2026-06-12 04:25:28,362.362 INFO    ] Script finished. Safe exiting...
[2026-06-12 04:25:28,363.363 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 04:25:28,366.366 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 04:25:28,368.368 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 04:25:30,406.406 INFO    ] ================================================
[2026-06-12 04:25:30,422.422 INFO    ] Launching Daemon at Fri Jun 12 04:25:30 IST 2026
[2026-06-12 04:25:30,433.433 INFO    ] ================================================
[2026-06-12 04:25:30,797.797 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 04:25:30
[2026-06-12 04:25:31,134.134 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 04:25:31,285.285 INFO    ] Initializing speech engine...
[2026-06-12 04:25:31,290.290 INFO    ] 2026-06-12 04:25:31
[2026-06-12 04:25:31,495.495 INFO    ] 2026-06-12 04:25:31
[2026-06-12 04:25:31,525.525 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 04:25:31,708.708 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 04:25:31,718.718 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 04:25:31,858.858 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 04:25:31,917.917 INFO    ] time= 12/06/2026 04:25:31
[2026-06-12 04:25:31,939.939 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 04:25:31,946.946 INFO    ] Checking for existing commands in stream...
[2026-06-12 04:25:32,013.013 INFO    ] No existing commands found in stream
[2026-06-12 04:25:37,043.043 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 04:25:37,047.047 INFO    ] Waiting 1.15 seconds before fallback handling...
[2026-06-12 04:25:38,587.587 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 04:25:38,589.589 INFO    ] Checking for system updates...
[2026-06-12 04:25:38,613.613 INFO    ] 200
[2026-06-12 04:25:38,615.615 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:25:38,647.647 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 04:25:38,649.649 INFO    ] No update needed
[2026-06-12 04:25:38,651.651 INFO    ] Checking for camera pi updates...
[2026-06-12 04:25:38,670.670 INFO    ] 200
[2026-06-12 04:25:38,672.672 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:25:38,697.697 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 04:25:38,739.739 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 04:25:38,740.740 INFO    ] No camera update needed
[2026-06-12 04:25:38,742.742 INFO    ] Script finished. Safe exiting...
[2026-06-12 04:25:38,743.743 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 04:25:38,746.746 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 04:25:38,749.749 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 04:25:40,787.787 INFO    ] ================================================
[2026-06-12 04:25:40,803.803 INFO    ] Launching Daemon at Fri Jun 12 04:25:40 IST 2026
[2026-06-12 04:25:40,813.813 INFO    ] ================================================
[2026-06-12 04:25:41,141.141 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 04:25:41
[2026-06-12 04:25:41,454.454 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 04:25:41,584.584 INFO    ] Initializing speech engine...
[2026-06-12 04:25:41,598.598 INFO    ] 2026-06-12 04:25:41
[2026-06-12 04:25:41,803.803 INFO    ] 2026-06-12 04:25:41
[2026-06-12 04:25:41,831.831 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 04:25:42,015.015 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 04:25:42,025.025 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 04:25:42,219.219 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 04:25:42,243.243 INFO    ] time= 12/06/2026 04:25:42
[2026-06-12 04:25:42,248.248 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 04:25:42,250.250 INFO    ] Checking for existing commands in stream...
[2026-06-12 04:25:42,318.318 INFO    ] No existing commands found in stream
[2026-06-12 04:25:47,331.331 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 04:25:47,334.334 INFO    ] Waiting 1.55 seconds before fallback handling...
[2026-06-12 04:25:49,287.287 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 04:25:49,288.288 INFO    ] Checking for system updates...
[2026-06-12 04:25:49,309.309 INFO    ] 200
[2026-06-12 04:25:49,310.310 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:25:49,342.342 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 04:25:49,344.344 INFO    ] No update needed
[2026-06-12 04:25:49,345.345 INFO    ] Checking for camera pi updates...
[2026-06-12 04:25:49,365.365 INFO    ] 200
[2026-06-12 04:25:49,366.366 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:25:49,389.389 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 04:25:49,429.429 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 04:25:49,431.431 INFO    ] No camera update needed
[2026-06-12 04:25:49,432.432 INFO    ] Script finished. Safe exiting...
[2026-06-12 04:25:49,433.433 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 04:25:49,436.436 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 04:25:49,439.439 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 04:25:51,479.479 INFO    ] ================================================
[2026-06-12 04:25:51,495.495 INFO    ] Launching Daemon at Fri Jun 12 04:25:51 IST 2026
[2026-06-12 04:25:51,507.507 INFO    ] ================================================
[2026-06-12 04:25:51,832.832 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 04:25:51
[2026-06-12 04:25:52,144.144 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 04:25:52,286.286 INFO    ] Initializing speech engine...
[2026-06-12 04:25:52,291.291 INFO    ] 2026-06-12 04:25:52
[2026-06-12 04:25:52,495.495 INFO    ] 2026-06-12 04:25:52
[2026-06-12 04:25:52,524.524 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 04:25:52,707.707 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 04:25:52,717.717 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 04:25:52,901.901 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 04:25:52,933.933 INFO    ] time= 12/06/2026 04:25:52
[2026-06-12 04:25:52,939.939 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 04:25:52,941.941 INFO    ] Checking for existing commands in stream...
[2026-06-12 04:25:53,008.008 INFO    ] No existing commands found in stream
[2026-06-12 04:25:58,022.022 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 04:25:58,024.024 INFO    ] Waiting 3.87 seconds before fallback handling...
[2026-06-12 04:26:02,287.287 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 04:26:02,288.288 INFO    ] Checking for system updates...
[2026-06-12 04:26:02,309.309 INFO    ] 200
[2026-06-12 04:26:02,310.310 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:26:02,353.353 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 04:26:02,354.354 INFO    ] No update needed
[2026-06-12 04:26:02,355.355 INFO    ] Checking for camera pi updates...
[2026-06-12 04:26:02,376.376 INFO    ] 200
[2026-06-12 04:26:02,377.377 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:26:02,409.409 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 04:26:02,432.432 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 04:26:02,434.434 INFO    ] No camera update needed
[2026-06-12 04:26:02,435.435 INFO    ] Script finished. Safe exiting...
[2026-06-12 04:26:02,436.436 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 04:26:02,439.439 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 04:26:02,442.442 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 04:26:04,481.481 INFO    ] ================================================
[2026-06-12 04:26:04,497.497 INFO    ] Launching Daemon at Fri Jun 12 04:26:04 IST 2026
[2026-06-12 04:26:04,508.508 INFO    ] ================================================
[2026-06-12 04:26:04,882.882 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 04:26:04
[2026-06-12 04:26:05,199.199 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 04:26:05,344.344 INFO    ] Initializing speech engine...
[2026-06-12 04:26:05,349.349 INFO    ] 2026-06-12 04:26:05
[2026-06-12 04:26:05,566.566 INFO    ] 2026-06-12 04:26:05
[2026-06-12 04:26:05,595.595 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 04:26:05,778.778 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 04:26:05,781.781 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 04:26:05,968.968 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 04:26:06,002.002 INFO    ] time= 12/06/2026 04:26:05
[2026-06-12 04:26:06,008.008 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 04:26:06,013.013 INFO    ] Checking for existing commands in stream...
[2026-06-12 04:26:06,081.081 INFO    ] No existing commands found in stream
[2026-06-12 04:26:11,102.102 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 04:26:11,105.105 INFO    ] Waiting 2.43 seconds before fallback handling...
[2026-06-12 04:26:13,928.928 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 04:26:13,929.929 INFO    ] Checking for system updates...
[2026-06-12 04:26:13,951.951 INFO    ] 200
[2026-06-12 04:26:13,955.955 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:26:13,986.986 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 04:26:13,988.988 INFO    ] No update needed
[2026-06-12 04:26:13,989.989 INFO    ] Checking for camera pi updates...
[2026-06-12 04:26:14,009.009 INFO    ] 200
[2026-06-12 04:26:14,010.010 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:26:14,035.035 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 04:26:14,072.072 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 04:26:14,073.073 INFO    ] No camera update needed
[2026-06-12 04:26:14,074.074 INFO    ] Script finished. Safe exiting...
[2026-06-12 04:26:14,076.076 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 04:26:14,079.079 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 04:26:14,082.082 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 04:26:16,121.121 INFO    ] ================================================
[2026-06-12 04:26:16,136.136 INFO    ] Launching Daemon at Fri Jun 12 04:26:16 IST 2026
[2026-06-12 04:26:16,147.147 INFO    ] ================================================
[2026-06-12 04:26:16,483.483 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 04:26:16
[2026-06-12 04:26:16,799.799 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 04:26:16,931.931 INFO    ] Initializing speech engine...
[2026-06-12 04:26:16,944.944 INFO    ] 2026-06-12 04:26:16
[2026-06-12 04:26:17,149.149 INFO    ] 2026-06-12 04:26:17
[2026-06-12 04:26:17,177.177 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 04:26:17,368.368 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 04:26:17,378.378 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 04:26:17,559.559 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 04:26:17,594.594 INFO    ] time= 12/06/2026 04:26:17
[2026-06-12 04:26:17,600.600 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 04:26:17,605.605 INFO    ] Checking for existing commands in stream...
[2026-06-12 04:26:17,672.672 INFO    ] No existing commands found in stream
[2026-06-12 04:26:22,681.681 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 04:26:22,684.684 INFO    ] Waiting 0.07 seconds before fallback handling...
[2026-06-12 04:26:23,118.118 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 04:26:23,120.120 INFO    ] Checking for system updates...
[2026-06-12 04:26:23,141.141 INFO    ] 200
[2026-06-12 04:26:23,142.142 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:26:23,172.172 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 04:26:23,173.173 INFO    ] No update needed
[2026-06-12 04:26:23,175.175 INFO    ] Checking for camera pi updates...
[2026-06-12 04:26:23,196.196 INFO    ] 200
[2026-06-12 04:26:23,198.198 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:26:23,222.222 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 04:26:23,259.259 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 04:26:23,261.261 INFO    ] No camera update needed
[2026-06-12 04:26:23,262.262 INFO    ] Script finished. Safe exiting...
[2026-06-12 04:26:23,263.263 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 04:26:23,266.266 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 04:26:23,269.269 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 04:26:25,308.308 INFO    ] ================================================
[2026-06-12 04:26:25,324.324 INFO    ] Launching Daemon at Fri Jun 12 04:26:25 IST 2026
[2026-06-12 04:26:25,334.334 INFO    ] ================================================
[2026-06-12 04:26:25,684.684 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 04:26:25
[2026-06-12 04:26:25,995.995 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 04:26:26,126.126 INFO    ] Initializing speech engine...
[2026-06-12 04:26:26,139.139 INFO    ] 2026-06-12 04:26:26
[2026-06-12 04:26:26,348.348 INFO    ] 2026-06-12 04:26:26
[2026-06-12 04:26:26,377.377 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 04:26:26,562.562 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 04:26:26,565.565 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 04:26:26,708.708 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 04:26:26,771.771 INFO    ] time= 12/06/2026 04:26:26
[2026-06-12 04:26:26,795.795 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 04:26:26,802.802 INFO    ] Checking for existing commands in stream...
[2026-06-12 04:26:26,869.869 INFO    ] No existing commands found in stream
[2026-06-12 04:26:31,877.877 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 04:26:31,879.879 INFO    ] Waiting 0.81 seconds before fallback handling...
[2026-06-12 04:26:33,057.057 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 04:26:33,059.059 INFO    ] Checking for system updates...
[2026-06-12 04:26:33,079.079 INFO    ] 200
[2026-06-12 04:26:33,081.081 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:26:33,113.113 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 04:26:33,114.114 INFO    ] No update needed
[2026-06-12 04:26:33,115.115 INFO    ] Checking for camera pi updates...
[2026-06-12 04:26:33,135.135 INFO    ] 200
[2026-06-12 04:26:33,137.137 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:26:33,161.161 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 04:26:33,204.204 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 04:26:33,205.205 INFO    ] No camera update needed
[2026-06-12 04:26:33,207.207 INFO    ] Script finished. Safe exiting...
[2026-06-12 04:26:33,208.208 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 04:26:33,211.211 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 04:26:33,214.214 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 04:26:35,253.253 INFO    ] ================================================
[2026-06-12 04:26:35,268.268 INFO    ] Launching Daemon at Fri Jun 12 04:26:35 IST 2026
[2026-06-12 04:26:35,279.279 INFO    ] ================================================
[2026-06-12 04:26:35,654.654 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 04:26:35
[2026-06-12 04:26:35,985.985 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 04:26:36,129.129 INFO    ] Initializing speech engine...
[2026-06-12 04:26:36,139.139 INFO    ] 2026-06-12 04:26:36
[2026-06-12 04:26:36,345.345 INFO    ] 2026-06-12 04:26:36
[2026-06-12 04:26:36,374.374 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 04:26:36,556.556 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 04:26:36,561.561 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 04:26:36,707.707 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 04:26:36,763.763 INFO    ] time= 12/06/2026 04:26:36
[2026-06-12 04:26:36,787.787 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 04:26:36,794.794 INFO    ] Checking for existing commands in stream...
[2026-06-12 04:26:36,859.859 INFO    ] No existing commands found in stream
[2026-06-12 04:26:41,870.870 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 04:26:41,873.873 INFO    ] Waiting 0.37 seconds before fallback handling...
[2026-06-12 04:26:42,631.631 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 04:26:42,633.633 INFO    ] Checking for system updates...
[2026-06-12 04:26:42,654.654 INFO    ] 200
[2026-06-12 04:26:42,655.655 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:26:42,686.686 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 04:26:42,687.687 INFO    ] No update needed
[2026-06-12 04:26:42,688.688 INFO    ] Checking for camera pi updates...
[2026-06-12 04:26:42,708.708 INFO    ] 200
[2026-06-12 04:26:42,709.709 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:26:42,733.733 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 04:26:42,768.768 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 04:26:42,770.770 INFO    ] No camera update needed
[2026-06-12 04:26:42,771.771 INFO    ] Script finished. Safe exiting...
[2026-06-12 04:26:42,773.773 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 04:26:42,776.776 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 04:26:42,779.779 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 04:26:44,820.820 INFO    ] ================================================
[2026-06-12 04:26:44,835.835 INFO    ] Launching Daemon at Fri Jun 12 04:26:44 IST 2026
[2026-06-12 04:26:44,846.846 INFO    ] ================================================
[2026-06-12 04:26:45,174.174 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 04:26:45
[2026-06-12 04:26:45,488.488 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 04:26:45,634.634 INFO    ] Initializing speech engine...
[2026-06-12 04:26:45,649.649 INFO    ] 2026-06-12 04:26:45
[2026-06-12 04:26:45,887.887 INFO    ] 2026-06-12 04:26:45
[2026-06-12 04:26:45,916.916 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 04:26:46,102.102 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 04:26:46,111.111 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 04:26:46,242.242 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 04:26:46,296.296 INFO    ] time= 12/06/2026 04:26:46
[2026-06-12 04:26:46,334.334 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 04:26:46,336.336 INFO    ] Checking for existing commands in stream...
[2026-06-12 04:26:46,406.406 INFO    ] No existing commands found in stream
[2026-06-12 04:26:51,417.417 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 04:26:51,420.420 INFO    ] Waiting 2.54 seconds before fallback handling...
[2026-06-12 04:26:54,392.392 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 04:26:54,395.395 INFO    ] Checking for system updates...
[2026-06-12 04:26:54,434.434 INFO    ] 200
[2026-06-12 04:26:54,436.436 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:26:54,488.488 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 04:26:54,491.491 INFO    ] No update needed
[2026-06-12 04:26:54,493.493 INFO    ] Checking for camera pi updates...
[2026-06-12 04:26:54,520.520 INFO    ] 200
[2026-06-12 04:26:54,522.522 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:26:54,546.546 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 04:26:54,600.600 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 04:26:54,601.601 INFO    ] No camera update needed
[2026-06-12 04:26:54,602.602 INFO    ] Script finished. Safe exiting...
[2026-06-12 04:26:54,603.603 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 04:26:54,606.606 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 04:26:54,609.609 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 04:26:56,649.649 INFO    ] ================================================
[2026-06-12 04:26:56,665.665 INFO    ] Launching Daemon at Fri Jun 12 04:26:56 IST 2026
[2026-06-12 04:26:56,676.676 INFO    ] ================================================
[2026-06-12 04:26:57,044.044 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 04:26:57
[2026-06-12 04:26:57,360.360 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 04:26:57,502.502 INFO    ] Initializing speech engine...
[2026-06-12 04:26:57,507.507 INFO    ] 2026-06-12 04:26:57
[2026-06-12 04:26:57,710.710 INFO    ] 2026-06-12 04:26:57
[2026-06-12 04:26:57,738.738 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 04:26:57,923.923 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 04:26:57,933.933 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 04:26:58,081.081 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 04:26:58,130.130 INFO    ] time= 12/06/2026 04:26:58
[2026-06-12 04:26:58,151.151 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 04:26:58,156.156 INFO    ] Checking for existing commands in stream...
[2026-06-12 04:26:58,224.224 INFO    ] No existing commands found in stream
[2026-06-12 04:27:03,238.238 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 04:27:03,241.241 INFO    ] Waiting 0.67 seconds before fallback handling...
[2026-06-12 04:27:04,279.279 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 04:27:04,281.281 INFO    ] Checking for system updates...
[2026-06-12 04:27:04,302.302 INFO    ] 200
[2026-06-12 04:27:04,304.304 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:27:04,336.336 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 04:27:04,337.337 INFO    ] No update needed
[2026-06-12 04:27:04,338.338 INFO    ] Checking for camera pi updates...
[2026-06-12 04:27:04,359.359 INFO    ] 200
[2026-06-12 04:27:04,360.360 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:27:04,383.383 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 04:27:04,418.418 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 04:27:04,420.420 INFO    ] No camera update needed
[2026-06-12 04:27:04,421.421 INFO    ] Script finished. Safe exiting...
[2026-06-12 04:27:04,422.422 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 04:27:04,425.425 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 04:27:04,428.428 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 04:27:06,468.468 INFO    ] ================================================
[2026-06-12 04:27:06,484.484 INFO    ] Launching Daemon at Fri Jun 12 04:27:06 IST 2026
[2026-06-12 04:27:06,494.494 INFO    ] ================================================
[2026-06-12 04:27:06,826.826 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 04:27:06
[2026-06-12 04:27:07,138.138 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 04:27:07,283.283 INFO    ] Initializing speech engine...
[2026-06-12 04:27:07,288.288 INFO    ] 2026-06-12 04:27:07
[2026-06-12 04:27:07,500.500 INFO    ] 2026-06-12 04:27:07
[2026-06-12 04:27:07,529.529 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 04:27:07,652.652 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 04:27:07,714.714 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 04:27:07,852.852 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 04:27:07,918.918 INFO    ] time= 12/06/2026 04:27:07
[2026-06-12 04:27:07,943.943 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 04:27:07,949.949 INFO    ] Checking for existing commands in stream...
[2026-06-12 04:27:08,039.039 INFO    ] No existing commands found in stream
[2026-06-12 04:27:13,048.048 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 04:27:13,051.051 INFO    ] Waiting 2.16 seconds before fallback handling...
[2026-06-12 04:27:15,574.574 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 04:27:15,576.576 INFO    ] Checking for system updates...
[2026-06-12 04:27:15,596.596 INFO    ] 200
[2026-06-12 04:27:15,597.597 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:27:15,628.628 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 04:27:15,629.629 INFO    ] No update needed
[2026-06-12 04:27:15,630.630 INFO    ] Checking for camera pi updates...
[2026-06-12 04:27:15,650.650 INFO    ] 200
[2026-06-12 04:27:15,651.651 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:27:15,676.676 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 04:27:15,711.711 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 04:27:15,713.713 INFO    ] No camera update needed
[2026-06-12 04:27:15,714.714 INFO    ] Script finished. Safe exiting...
[2026-06-12 04:27:15,715.715 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 04:27:15,718.718 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 04:27:15,721.721 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 04:27:17,759.759 INFO    ] ================================================
[2026-06-12 04:27:17,775.775 INFO    ] Launching Daemon at Fri Jun 12 04:27:17 IST 2026
[2026-06-12 04:27:17,786.786 INFO    ] ================================================
[2026-06-12 04:27:18,128.128 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 04:27:18
[2026-06-12 04:27:18,445.445 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 04:27:18,589.589 INFO    ] Initializing speech engine...
[2026-06-12 04:27:18,594.594 INFO    ] 2026-06-12 04:27:18
[2026-06-12 04:27:18,798.798 INFO    ] 2026-06-12 04:27:18
[2026-06-12 04:27:18,827.827 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 04:27:19,011.011 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 04:27:19,019.019 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 04:27:19,145.145 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 04:27:19,192.192 INFO    ] time= 12/06/2026 04:27:19
[2026-06-12 04:27:19,237.237 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 04:27:19,242.242 INFO    ] Checking for existing commands in stream...
[2026-06-12 04:27:19,338.338 INFO    ] No existing commands found in stream
[2026-06-12 04:27:24,347.347 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 04:27:24,349.349 INFO    ] Waiting 0.31 seconds before fallback handling...
[2026-06-12 04:27:25,036.036 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 04:27:25,038.038 INFO    ] Checking for system updates...
[2026-06-12 04:27:25,060.060 INFO    ] 200
[2026-06-12 04:27:25,062.062 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:27:25,094.094 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 04:27:25,095.095 INFO    ] No update needed
[2026-06-12 04:27:25,097.097 INFO    ] Checking for camera pi updates...
[2026-06-12 04:27:25,120.120 INFO    ] 200
[2026-06-12 04:27:25,121.121 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:27:25,145.145 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 04:27:25,183.183 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 04:27:25,184.184 INFO    ] No camera update needed
[2026-06-12 04:27:25,186.186 INFO    ] Script finished. Safe exiting...
[2026-06-12 04:27:25,187.187 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 04:27:25,190.190 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 04:27:25,193.193 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 04:27:27,232.232 INFO    ] ================================================
[2026-06-12 04:27:27,248.248 INFO    ] Launching Daemon at Fri Jun 12 04:27:27 IST 2026
[2026-06-12 04:27:27,259.259 INFO    ] ================================================
[2026-06-12 04:27:27,626.626 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 04:27:27
[2026-06-12 04:27:27,959.959 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 04:27:28,109.109 INFO    ] Initializing speech engine...
[2026-06-12 04:27:28,114.114 INFO    ] 2026-06-12 04:27:28
[2026-06-12 04:27:28,323.323 INFO    ] 2026-06-12 04:27:28
[2026-06-12 04:27:28,352.352 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 04:27:28,524.524 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 04:27:28,526.526 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 04:27:28,643.643 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 04:27:28,645.645 INFO    ] time= 12/06/2026 04:27:28
[2026-06-12 04:27:28,646.646 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 04:27:28,648.648 INFO    ] Checking for existing commands in stream...
[2026-06-12 04:27:28,714.714 INFO    ] No existing commands found in stream
[2026-06-12 04:27:33,723.723 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 04:27:33,726.726 INFO    ] Waiting 3.87 seconds before fallback handling...
[2026-06-12 04:27:38,007.007 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 04:27:38,009.009 INFO    ] Checking for system updates...
[2026-06-12 04:27:38,031.031 INFO    ] 200
[2026-06-12 04:27:38,032.032 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:27:38,067.067 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 04:27:38,068.068 INFO    ] No update needed
[2026-06-12 04:27:38,070.070 INFO    ] Checking for camera pi updates...
[2026-06-12 04:27:38,092.092 INFO    ] 200
[2026-06-12 04:27:38,094.094 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:27:38,117.117 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 04:27:38,158.158 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 04:27:38,160.160 INFO    ] No camera update needed
[2026-06-12 04:27:38,161.161 INFO    ] Script finished. Safe exiting...
[2026-06-12 04:27:38,162.162 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 04:27:38,166.166 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 04:27:38,169.169 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 04:27:40,207.207 INFO    ] ================================================
[2026-06-12 04:27:40,222.222 INFO    ] Launching Daemon at Fri Jun 12 04:27:40 IST 2026
[2026-06-12 04:27:40,233.233 INFO    ] ================================================
[2026-06-12 04:27:40,562.562 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 04:27:40
[2026-06-12 04:27:40,874.874 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 04:27:41,005.005 INFO    ] Initializing speech engine...
[2026-06-12 04:27:41,013.013 INFO    ] 2026-06-12 04:27:41
[2026-06-12 04:27:41,223.223 INFO    ] 2026-06-12 04:27:41
[2026-06-12 04:27:41,252.252 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 04:27:41,436.436 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 04:27:41,439.439 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 04:27:41,596.596 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 04:27:41,645.645 INFO    ] time= 12/06/2026 04:27:41
[2026-06-12 04:27:41,667.667 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 04:27:41,673.673 INFO    ] Checking for existing commands in stream...
[2026-06-12 04:27:41,741.741 INFO    ] No existing commands found in stream
[2026-06-12 04:27:46,750.750 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 04:27:46,753.753 INFO    ] Waiting 1.74 seconds before fallback handling...
[2026-06-12 04:27:48,902.902 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 04:27:48,903.903 INFO    ] Checking for system updates...
[2026-06-12 04:27:48,925.925 INFO    ] 200
[2026-06-12 04:27:48,926.926 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:27:48,958.958 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 04:27:48,959.959 INFO    ] No update needed
[2026-06-12 04:27:48,961.961 INFO    ] Checking for camera pi updates...
[2026-06-12 04:27:48,983.983 INFO    ] 200
[2026-06-12 04:27:48,984.984 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:27:49,009.009 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 04:27:49,056.056 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 04:27:49,057.057 INFO    ] No camera update needed
[2026-06-12 04:27:49,059.059 INFO    ] Script finished. Safe exiting...
[2026-06-12 04:27:49,060.060 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 04:27:49,063.063 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 04:27:49,066.066 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 04:27:51,105.105 INFO    ] ================================================
[2026-06-12 04:27:51,120.120 INFO    ] Launching Daemon at Fri Jun 12 04:27:51 IST 2026
[2026-06-12 04:27:51,131.131 INFO    ] ================================================
[2026-06-12 04:27:51,459.459 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 04:27:51
[2026-06-12 04:27:51,770.770 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 04:27:51,900.900 INFO    ] Initializing speech engine...
[2026-06-12 04:27:51,905.905 INFO    ] 2026-06-12 04:27:51
[2026-06-12 04:27:52,121.121 INFO    ] 2026-06-12 04:27:52
[2026-06-12 04:27:52,149.149 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 04:27:52,343.343 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 04:27:52,357.357 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 04:27:52,538.538 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 04:27:52,561.561 INFO    ] time= 12/06/2026 04:27:52
[2026-06-12 04:27:52,566.566 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 04:27:52,568.568 INFO    ] Checking for existing commands in stream...
[2026-06-12 04:27:52,635.635 INFO    ] No existing commands found in stream
[2026-06-12 04:27:57,649.649 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 04:27:57,652.652 INFO    ] Waiting 2.08 seconds before fallback handling...
[2026-06-12 04:28:00,124.124 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 04:28:00,125.125 INFO    ] Checking for system updates...
[2026-06-12 04:28:00,146.146 INFO    ] 200
[2026-06-12 04:28:00,147.147 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:28:00,177.177 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 04:28:00,178.178 INFO    ] No update needed
[2026-06-12 04:28:00,179.179 INFO    ] Checking for camera pi updates...
[2026-06-12 04:28:00,202.202 INFO    ] 200
[2026-06-12 04:28:00,203.203 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:28:00,226.226 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 04:28:00,258.258 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 04:28:00,260.260 INFO    ] No camera update needed
[2026-06-12 04:28:00,261.261 INFO    ] Script finished. Safe exiting...
[2026-06-12 04:28:00,262.262 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 04:28:00,265.265 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 04:28:00,268.268 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 04:28:02,304.304 INFO    ] ================================================
[2026-06-12 04:28:02,318.318 INFO    ] Launching Daemon at Fri Jun 12 04:28:02 IST 2026
[2026-06-12 04:28:02,326.326 INFO    ] ================================================
[2026-06-12 04:28:02,710.710 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 04:28:02
[2026-06-12 04:28:03,049.049 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 04:28:03,191.191 INFO    ] Initializing speech engine...
[2026-06-12 04:28:03,195.195 INFO    ] 2026-06-12 04:28:03
[2026-06-12 04:28:03,397.397 INFO    ] 2026-06-12 04:28:03
[2026-06-12 04:28:03,426.426 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 04:28:03,547.547 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 04:28:03,610.610 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 04:28:03,743.743 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 04:28:03,795.795 INFO    ] time= 12/06/2026 04:28:03
[2026-06-12 04:28:03,835.835 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 04:28:03,840.840 INFO    ] Checking for existing commands in stream...
[2026-06-12 04:28:03,911.911 INFO    ] No existing commands found in stream
[2026-06-12 04:28:08,919.919 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 04:28:08,922.922 INFO    ] Waiting 0.62 seconds before fallback handling...
[2026-06-12 04:28:09,908.908 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 04:28:09,909.909 INFO    ] Checking for system updates...
[2026-06-12 04:28:09,931.931 INFO    ] 200
[2026-06-12 04:28:09,932.932 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:28:09,963.963 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 04:28:09,964.964 INFO    ] No update needed
[2026-06-12 04:28:09,965.965 INFO    ] Checking for camera pi updates...
[2026-06-12 04:28:09,984.984 INFO    ] 200
[2026-06-12 04:28:09,985.985 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:28:10,010.010 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 04:28:10,046.046 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 04:28:10,048.048 INFO    ] No camera update needed
[2026-06-12 04:28:10,049.049 INFO    ] Script finished. Safe exiting...
[2026-06-12 04:28:10,050.050 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 04:28:10,053.053 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 04:28:10,056.056 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 04:28:12,094.094 INFO    ] ================================================
[2026-06-12 04:28:12,109.109 INFO    ] Launching Daemon at Fri Jun 12 04:28:12 IST 2026
[2026-06-12 04:28:12,120.120 INFO    ] ================================================
[2026-06-12 04:28:12,501.501 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 04:28:12
[2026-06-12 04:28:12,832.832 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 04:28:12,975.975 INFO    ] Initializing speech engine...
[2026-06-12 04:28:12,985.985 INFO    ] 2026-06-12 04:28:12
[2026-06-12 04:28:13,191.191 INFO    ] 2026-06-12 04:28:13
[2026-06-12 04:28:13,220.220 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 04:28:13,403.403 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 04:28:13,406.406 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 04:28:13,534.534 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 04:28:13,595.595 INFO    ] time= 12/06/2026 04:28:13
[2026-06-12 04:28:13,632.632 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 04:28:13,638.638 INFO    ] Checking for existing commands in stream...
[2026-06-12 04:28:13,705.705 INFO    ] No existing commands found in stream
[2026-06-12 04:28:18,738.738 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 04:28:18,741.741 INFO    ] Waiting 3.43 seconds before fallback handling...
[2026-06-12 04:28:22,565.565 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 04:28:22,566.566 INFO    ] Checking for system updates...
[2026-06-12 04:28:22,588.588 INFO    ] 200
[2026-06-12 04:28:22,590.590 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:28:22,624.624 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 04:28:22,626.626 INFO    ] No update needed
[2026-06-12 04:28:22,627.627 INFO    ] Checking for camera pi updates...
[2026-06-12 04:28:22,651.651 INFO    ] 200
[2026-06-12 04:28:22,653.653 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:28:22,676.676 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 04:28:22,714.714 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 04:28:22,716.716 INFO    ] No camera update needed
[2026-06-12 04:28:22,717.717 INFO    ] Script finished. Safe exiting...
[2026-06-12 04:28:22,718.718 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 04:28:22,721.721 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 04:28:22,724.724 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 04:28:24,761.761 INFO    ] ================================================
[2026-06-12 04:28:24,776.776 INFO    ] Launching Daemon at Fri Jun 12 04:28:24 IST 2026
[2026-06-12 04:28:24,787.787 INFO    ] ================================================
[2026-06-12 04:28:25,135.135 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 04:28:25
[2026-06-12 04:28:25,466.466 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 04:28:25,613.613 INFO    ] Initializing speech engine...
[2026-06-12 04:28:25,619.619 INFO    ] 2026-06-12 04:28:25
[2026-06-12 04:28:25,825.825 INFO    ] 2026-06-12 04:28:25
[2026-06-12 04:28:25,854.854 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 04:28:26,037.037 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 04:28:26,046.046 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 04:28:26,195.195 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 04:28:26,243.243 INFO    ] time= 12/06/2026 04:28:26
[2026-06-12 04:28:26,265.265 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 04:28:26,272.272 INFO    ] Checking for existing commands in stream...
[2026-06-12 04:28:26,338.338 INFO    ] No existing commands found in stream
[2026-06-12 04:28:31,348.348 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 04:28:31,351.351 INFO    ] Waiting 1.74 seconds before fallback handling...
[2026-06-12 04:28:33,444.444 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 04:28:33,445.445 INFO    ] Checking for system updates...
[2026-06-12 04:28:33,466.466 INFO    ] 200
[2026-06-12 04:28:33,468.468 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:28:33,505.505 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 04:28:33,507.507 INFO    ] No update needed
[2026-06-12 04:28:33,508.508 INFO    ] Checking for camera pi updates...
[2026-06-12 04:28:33,527.527 INFO    ] 200
[2026-06-12 04:28:33,529.529 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:28:33,552.552 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 04:28:33,588.588 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 04:28:33,590.590 INFO    ] No camera update needed
[2026-06-12 04:28:33,591.591 INFO    ] Script finished. Safe exiting...
[2026-06-12 04:28:33,592.592 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 04:28:33,595.595 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 04:28:33,598.598 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 04:28:35,636.636 INFO    ] ================================================
[2026-06-12 04:28:35,651.651 INFO    ] Launching Daemon at Fri Jun 12 04:28:35 IST 2026
[2026-06-12 04:28:35,661.661 INFO    ] ================================================
[2026-06-12 04:28:35,993.993 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 04:28:35
[2026-06-12 04:28:36,303.303 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 04:28:36,433.433 INFO    ] Initializing speech engine...
[2026-06-12 04:28:36,440.440 INFO    ] 2026-06-12 04:28:36
[2026-06-12 04:28:36,651.651 INFO    ] 2026-06-12 04:28:36
[2026-06-12 04:28:36,679.679 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 04:28:36,862.862 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 04:28:36,872.872 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 04:28:37,014.014 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 04:28:37,066.066 INFO    ] time= 12/06/2026 04:28:37
[2026-06-12 04:28:37,089.089 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 04:28:37,095.095 INFO    ] Checking for existing commands in stream...
[2026-06-12 04:28:37,162.162 INFO    ] No existing commands found in stream
[2026-06-12 04:28:42,171.171 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 04:28:42,174.174 INFO    ] Waiting 2.74 seconds before fallback handling...
[2026-06-12 04:28:45,343.343 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 04:28:45,344.344 INFO    ] Checking for system updates...
[2026-06-12 04:28:45,366.366 INFO    ] 200
[2026-06-12 04:28:45,367.367 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:28:45,399.399 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 04:28:45,400.400 INFO    ] No update needed
[2026-06-12 04:28:45,402.402 INFO    ] Checking for camera pi updates...
[2026-06-12 04:28:45,421.421 INFO    ] 200
[2026-06-12 04:28:45,422.422 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:28:45,448.448 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 04:28:45,487.487 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 04:28:45,489.489 INFO    ] No camera update needed
[2026-06-12 04:28:45,490.490 INFO    ] Script finished. Safe exiting...
[2026-06-12 04:28:45,491.491 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 04:28:45,494.494 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 04:28:45,501.501 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 04:28:47,540.540 INFO    ] ================================================
[2026-06-12 04:28:47,555.555 INFO    ] Launching Daemon at Fri Jun 12 04:28:47 IST 2026
[2026-06-12 04:28:47,565.565 INFO    ] ================================================
[2026-06-12 04:28:47,936.936 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 04:28:47
[2026-06-12 04:28:48,267.267 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 04:28:48,415.415 INFO    ] Initializing speech engine...
[2026-06-12 04:28:48,421.421 INFO    ] 2026-06-12 04:28:48
[2026-06-12 04:28:48,627.627 INFO    ] 2026-06-12 04:28:48
[2026-06-12 04:28:48,656.656 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 04:28:48,840.840 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 04:28:48,851.851 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 04:28:49,029.029 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 04:28:49,067.067 INFO    ] time= 12/06/2026 04:28:49
[2026-06-12 04:28:49,069.069 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 04:28:49,074.074 INFO    ] Checking for existing commands in stream...
[2026-06-12 04:28:49,141.141 INFO    ] No existing commands found in stream
[2026-06-12 04:28:54,151.151 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 04:28:54,154.154 INFO    ] Waiting 2.48 seconds before fallback handling...
[2026-06-12 04:28:57,014.014 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 04:28:57,015.015 INFO    ] Checking for system updates...
[2026-06-12 04:28:57,038.038 INFO    ] 200
[2026-06-12 04:28:57,039.039 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:28:57,073.073 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 04:28:57,074.074 INFO    ] No update needed
[2026-06-12 04:28:57,075.075 INFO    ] Checking for camera pi updates...
[2026-06-12 04:28:57,097.097 INFO    ] 200
[2026-06-12 04:28:57,099.099 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:28:57,123.123 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 04:28:57,161.161 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 04:28:57,162.162 INFO    ] No camera update needed
[2026-06-12 04:28:57,164.164 INFO    ] Script finished. Safe exiting...
[2026-06-12 04:28:57,165.165 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 04:28:57,168.168 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 04:28:57,171.171 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 04:28:59,209.209 INFO    ] ================================================
[2026-06-12 04:28:59,225.225 INFO    ] Launching Daemon at Fri Jun 12 04:28:59 IST 2026
[2026-06-12 04:28:59,236.236 INFO    ] ================================================
[2026-06-12 04:28:59,603.603 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 04:28:59
[2026-06-12 04:28:59,914.914 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 04:29:00,054.054 INFO    ] Initializing speech engine...
[2026-06-12 04:29:00,065.065 INFO    ] 2026-06-12 04:29:00
[2026-06-12 04:29:00,276.276 INFO    ] 2026-06-12 04:29:00
[2026-06-12 04:29:00,306.306 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 04:29:00,472.472 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 04:29:00,504.504 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 04:29:00,648.648 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 04:29:00,717.717 INFO    ] time= 12/06/2026 04:29:00
[2026-06-12 04:29:00,744.744 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 04:29:00,750.750 INFO    ] Checking for existing commands in stream...
[2026-06-12 04:29:00,822.822 INFO    ] No existing commands found in stream
[2026-06-12 04:29:05,831.831 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 04:29:05,834.834 INFO    ] Waiting 2.82 seconds before fallback handling...
[2026-06-12 04:29:09,045.045 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 04:29:09,046.046 INFO    ] Checking for system updates...
[2026-06-12 04:29:09,067.067 INFO    ] 200
[2026-06-12 04:29:09,069.069 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:29:09,099.099 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 04:29:09,100.100 INFO    ] No update needed
[2026-06-12 04:29:09,102.102 INFO    ] Checking for camera pi updates...
[2026-06-12 04:29:09,121.121 INFO    ] 200
[2026-06-12 04:29:09,122.122 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:29:09,145.145 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 04:29:09,184.184 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 04:29:09,185.185 INFO    ] No camera update needed
[2026-06-12 04:29:09,187.187 INFO    ] Script finished. Safe exiting...
[2026-06-12 04:29:09,188.188 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 04:29:09,191.191 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 04:29:09,193.193 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 04:29:11,232.232 INFO    ] ================================================
[2026-06-12 04:29:11,247.247 INFO    ] Launching Daemon at Fri Jun 12 04:29:11 IST 2026
[2026-06-12 04:29:11,258.258 INFO    ] ================================================
[2026-06-12 04:29:11,614.614 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 04:29:11
[2026-06-12 04:29:11,924.924 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 04:29:12,058.058 INFO    ] Initializing speech engine...
[2026-06-12 04:29:12,066.066 INFO    ] 2026-06-12 04:29:12
[2026-06-12 04:29:12,286.286 INFO    ] 2026-06-12 04:29:12
[2026-06-12 04:29:12,317.317 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 04:29:12,509.509 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 04:29:12,513.513 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 04:29:12,649.649 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 04:29:12,715.715 INFO    ] time= 12/06/2026 04:29:12
[2026-06-12 04:29:12,744.744 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 04:29:12,759.759 INFO    ] Checking for existing commands in stream...
[2026-06-12 04:29:12,830.830 INFO    ] No existing commands found in stream
[2026-06-12 04:29:17,839.839 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 04:29:17,842.842 INFO    ] Waiting 2.49 seconds before fallback handling...
[2026-06-12 04:29:20,691.691 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 04:29:20,692.692 INFO    ] Checking for system updates...
[2026-06-12 04:29:20,714.714 INFO    ] 200
[2026-06-12 04:29:20,715.715 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:29:20,745.745 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 04:29:20,746.746 INFO    ] No update needed
[2026-06-12 04:29:20,748.748 INFO    ] Checking for camera pi updates...
[2026-06-12 04:29:20,767.767 INFO    ] 200
[2026-06-12 04:29:20,768.768 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:29:20,794.794 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 04:29:20,829.829 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 04:29:20,831.831 INFO    ] No camera update needed
[2026-06-12 04:29:20,832.832 INFO    ] Script finished. Safe exiting...
[2026-06-12 04:29:20,833.833 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 04:29:20,836.836 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 04:29:20,839.839 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 04:29:22,877.877 INFO    ] ================================================
[2026-06-12 04:29:22,892.892 INFO    ] Launching Daemon at Fri Jun 12 04:29:22 IST 2026
[2026-06-12 04:29:22,903.903 INFO    ] ================================================
[2026-06-12 04:29:23,277.277 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 04:29:23
[2026-06-12 04:29:23,606.606 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 04:29:23,755.755 INFO    ] Initializing speech engine...
[2026-06-12 04:29:23,759.759 INFO    ] 2026-06-12 04:29:23
[2026-06-12 04:29:23,964.964 INFO    ] 2026-06-12 04:29:23
[2026-06-12 04:29:23,993.993 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 04:29:24,177.177 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 04:29:24,186.186 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 04:29:24,308.308 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 04:29:24,369.369 INFO    ] time= 12/06/2026 04:29:24
[2026-06-12 04:29:24,404.404 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 04:29:24,409.409 INFO    ] Checking for existing commands in stream...
[2026-06-12 04:29:24,478.478 INFO    ] No existing commands found in stream
[2026-06-12 04:29:29,489.489 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 04:29:29,492.492 INFO    ] Waiting 2.15 seconds before fallback handling...
[2026-06-12 04:29:32,017.017 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 04:29:32,019.019 INFO    ] Checking for system updates...
[2026-06-12 04:29:32,059.059 INFO    ] 200
[2026-06-12 04:29:32,062.062 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:29:32,105.105 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 04:29:32,106.106 INFO    ] No update needed
[2026-06-12 04:29:32,108.108 INFO    ] Checking for camera pi updates...
[2026-06-12 04:29:32,130.130 INFO    ] 200
[2026-06-12 04:29:32,132.132 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:29:32,156.156 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 04:29:32,183.183 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 04:29:32,184.184 INFO    ] No camera update needed
[2026-06-12 04:29:32,186.186 INFO    ] Script finished. Safe exiting...
[2026-06-12 04:29:32,187.187 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 04:29:32,190.190 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 04:29:32,193.193 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 04:29:34,232.232 INFO    ] ================================================
[2026-06-12 04:29:34,246.246 INFO    ] Launching Daemon at Fri Jun 12 04:29:34 IST 2026
[2026-06-12 04:29:34,257.257 INFO    ] ================================================
[2026-06-12 04:29:34,611.611 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 04:29:34
[2026-06-12 04:29:34,941.941 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 04:29:35,088.088 INFO    ] Initializing speech engine...
[2026-06-12 04:29:35,093.093 INFO    ] 2026-06-12 04:29:35
[2026-06-12 04:29:35,300.300 INFO    ] 2026-06-12 04:29:35
[2026-06-12 04:29:35,328.328 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 04:29:35,514.514 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 04:29:35,524.524 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 04:29:35,716.716 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 04:29:35,740.740 INFO    ] time= 12/06/2026 04:29:35
[2026-06-12 04:29:35,746.746 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 04:29:35,748.748 INFO    ] Checking for existing commands in stream...
[2026-06-12 04:29:35,815.815 INFO    ] No existing commands found in stream
[2026-06-12 04:29:40,830.830 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 04:29:40,833.833 INFO    ] Waiting 3.67 seconds before fallback handling...
[2026-06-12 04:29:44,911.911 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 04:29:44,913.913 INFO    ] Checking for system updates...
[2026-06-12 04:29:44,933.933 INFO    ] 200
[2026-06-12 04:29:44,935.935 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:29:44,967.967 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 04:29:44,969.969 INFO    ] No update needed
[2026-06-12 04:29:44,971.971 INFO    ] Checking for camera pi updates...
[2026-06-12 04:29:44,990.990 INFO    ] 200
[2026-06-12 04:29:44,992.992 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:29:45,015.015 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 04:29:45,162.162 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 04:29:45,163.163 INFO    ] No camera update needed
[2026-06-12 04:29:45,165.165 INFO    ] Script finished. Safe exiting...
[2026-06-12 04:29:45,166.166 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 04:29:45,169.169 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 04:29:45,172.172 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 04:29:47,213.213 INFO    ] ================================================
[2026-06-12 04:29:47,228.228 INFO    ] Launching Daemon at Fri Jun 12 04:29:47 IST 2026
[2026-06-12 04:29:47,239.239 INFO    ] ================================================
[2026-06-12 04:29:47,609.609 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 04:29:47
[2026-06-12 04:29:47,941.941 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 04:29:48,073.073 INFO    ] Initializing speech engine...
[2026-06-12 04:29:48,081.081 INFO    ] 2026-06-12 04:29:48
[2026-06-12 04:29:48,293.293 INFO    ] 2026-06-12 04:29:48
[2026-06-12 04:29:48,322.322 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 04:29:48,509.509 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 04:29:48,518.518 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 04:29:48,700.700 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 04:29:48,739.739 INFO    ] time= 12/06/2026 04:29:48
[2026-06-12 04:29:48,741.741 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 04:29:48,746.746 INFO    ] Checking for existing commands in stream...
[2026-06-12 04:29:48,813.813 INFO    ] No existing commands found in stream
[2026-06-12 04:29:53,823.823 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 04:29:53,826.826 INFO    ] Waiting 0.17 seconds before fallback handling...
[2026-06-12 04:29:54,323.323 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 04:29:54,324.324 INFO    ] Checking for system updates...
[2026-06-12 04:29:54,345.345 INFO    ] 200
[2026-06-12 04:29:54,347.347 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:29:54,378.378 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 04:29:54,379.379 INFO    ] No update needed
[2026-06-12 04:29:54,381.381 INFO    ] Checking for camera pi updates...
[2026-06-12 04:29:54,400.400 INFO    ] 200
[2026-06-12 04:29:54,402.402 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:29:54,424.424 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 04:29:54,463.463 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 04:29:54,464.464 INFO    ] No camera update needed
[2026-06-12 04:29:54,466.466 INFO    ] Script finished. Safe exiting...
[2026-06-12 04:29:54,467.467 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 04:29:54,470.470 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 04:29:54,473.473 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 04:29:56,511.511 INFO    ] ================================================
[2026-06-12 04:29:56,526.526 INFO    ] Launching Daemon at Fri Jun 12 04:29:56 IST 2026
[2026-06-12 04:29:56,536.536 INFO    ] ================================================
[2026-06-12 04:29:56,900.900 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 04:29:56
[2026-06-12 04:29:57,216.216 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 04:29:57,362.362 INFO    ] Initializing speech engine...
[2026-06-12 04:29:57,367.367 INFO    ] 2026-06-12 04:29:57
[2026-06-12 04:29:57,580.580 INFO    ] 2026-06-12 04:29:57
[2026-06-12 04:29:57,609.609 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 04:29:57,805.805 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 04:29:57,815.815 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 04:29:57,970.970 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 04:29:58,024.024 INFO    ] time= 12/06/2026 04:29:57
[2026-06-12 04:29:58,048.048 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 04:29:58,055.055 INFO    ] Checking for existing commands in stream...
[2026-06-12 04:29:58,129.129 INFO    ] No existing commands found in stream
[2026-06-12 04:30:03,137.137 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 04:30:03,138.138 INFO    ] Waiting 0.19 seconds before fallback handling...
[2026-06-12 04:30:07,972.972 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 04:30:07,975.975 INFO    ] Checking for system updates...
[2026-06-12 04:30:08,024.024 INFO    ] 200
[2026-06-12 04:30:08,026.026 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:30:08,079.079 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 04:30:08,082.082 INFO    ] No update needed
[2026-06-12 04:30:08,085.085 INFO    ] Checking for camera pi updates...
[2026-06-12 04:30:08,120.120 INFO    ] 200
[2026-06-12 04:30:08,123.123 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:30:08,165.165 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 04:30:08,191.191 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 04:30:08,193.193 INFO    ] No camera update needed
[2026-06-12 04:30:08,194.194 INFO    ] Script finished. Safe exiting...
[2026-06-12 04:30:08,195.195 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 04:30:08,198.198 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 04:30:08,201.201 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 04:30:10,240.240 INFO    ] ================================================
[2026-06-12 04:30:10,255.255 INFO    ] Launching Daemon at Fri Jun 12 04:30:10 IST 2026
[2026-06-12 04:30:10,266.266 INFO    ] ================================================
[2026-06-12 04:30:10,601.601 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 04:30:10
[2026-06-12 04:30:10,920.920 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 04:30:11,052.052 INFO    ] Initializing speech engine...
[2026-06-12 04:30:11,059.059 INFO    ] 2026-06-12 04:30:11
[2026-06-12 04:30:11,274.274 INFO    ] 2026-06-12 04:30:11
[2026-06-12 04:30:11,303.303 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 04:30:11,486.486 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 04:30:11,495.495 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 04:30:11,624.624 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 04:30:11,692.692 INFO    ] time= 12/06/2026 04:30:11
[2026-06-12 04:30:11,716.716 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 04:30:11,722.722 INFO    ] Checking for existing commands in stream...
[2026-06-12 04:30:11,812.812 INFO    ] No existing commands found in stream
[2026-06-12 04:30:16,826.826 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 04:30:16,829.829 INFO    ] Waiting 1.21 seconds before fallback handling...
[2026-06-12 04:30:18,421.421 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 04:30:18,422.422 INFO    ] Checking for system updates...
[2026-06-12 04:30:18,443.443 INFO    ] 200
[2026-06-12 04:30:18,445.445 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:30:18,476.476 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 04:30:18,477.477 INFO    ] No update needed
[2026-06-12 04:30:18,479.479 INFO    ] Checking for camera pi updates...
[2026-06-12 04:30:18,499.499 INFO    ] 200
[2026-06-12 04:30:18,501.501 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:30:18,529.529 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 04:30:18,573.573 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 04:30:18,575.575 INFO    ] No camera update needed
[2026-06-12 04:30:18,576.576 INFO    ] Script finished. Safe exiting...
[2026-06-12 04:30:18,577.577 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 04:30:18,581.581 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 04:30:18,584.584 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 04:30:20,622.622 INFO    ] ================================================
[2026-06-12 04:30:20,638.638 INFO    ] Launching Daemon at Fri Jun 12 04:30:20 IST 2026
[2026-06-12 04:30:20,649.649 INFO    ] ================================================
[2026-06-12 04:30:21,007.007 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 04:30:21
[2026-06-12 04:30:21,317.317 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 04:30:21,448.448 INFO    ] Initializing speech engine...
[2026-06-12 04:30:21,451.451 INFO    ] 2026-06-12 04:30:21
[2026-06-12 04:30:21,670.670 INFO    ] 2026-06-12 04:30:21
[2026-06-12 04:30:21,699.699 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 04:30:21,885.885 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 04:30:21,893.893 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 04:30:22,039.039 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 04:30:22,093.093 INFO    ] time= 12/06/2026 04:30:22
[2026-06-12 04:30:22,114.114 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 04:30:22,124.124 INFO    ] Checking for existing commands in stream...
[2026-06-12 04:30:22,192.192 INFO    ] No existing commands found in stream
[2026-06-12 04:30:27,211.211 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 04:30:27,214.214 INFO    ] Waiting 2.37 seconds before fallback handling...
[2026-06-12 04:30:31,833.833 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 04:30:31,836.836 INFO    ] Checking for system updates...
[2026-06-12 04:30:31,875.875 INFO    ] 200
[2026-06-12 04:30:31,879.879 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:30:31,935.935 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 04:30:31,937.937 INFO    ] No update needed
[2026-06-12 04:30:31,939.939 INFO    ] Checking for camera pi updates...
[2026-06-12 04:30:31,961.961 INFO    ] 200
[2026-06-12 04:30:31,963.963 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:30:31,992.992 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 04:30:32,016.016 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 04:30:32,017.017 INFO    ] No camera update needed
[2026-06-12 04:30:32,019.019 INFO    ] Script finished. Safe exiting...
[2026-06-12 04:30:32,020.020 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 04:30:32,024.024 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 04:30:32,027.027 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 04:30:34,060.060 INFO    ] ================================================
[2026-06-12 04:30:34,075.075 INFO    ] Launching Daemon at Fri Jun 12 04:30:34 IST 2026
[2026-06-12 04:30:34,087.087 INFO    ] ================================================
[2026-06-12 04:30:34,436.436 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 04:30:34
[2026-06-12 04:30:34,746.746 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 04:30:34,889.889 INFO    ] Initializing speech engine...
[2026-06-12 04:30:34,894.894 INFO    ] 2026-06-12 04:30:34
[2026-06-12 04:30:35,098.098 INFO    ] 2026-06-12 04:30:35
[2026-06-12 04:30:35,127.127 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 04:30:35,314.314 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 04:30:35,317.317 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 04:30:35,480.480 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 04:30:35,525.525 INFO    ] time= 12/06/2026 04:30:35
[2026-06-12 04:30:35,547.547 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 04:30:35,554.554 INFO    ] Checking for existing commands in stream...
[2026-06-12 04:30:35,621.621 INFO    ] No existing commands found in stream
[2026-06-12 04:30:40,635.635 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 04:30:40,637.637 INFO    ] Waiting 3.79 seconds before fallback handling...
[2026-06-12 04:30:44,824.824 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 04:30:44,826.826 INFO    ] Checking for system updates...
[2026-06-12 04:30:44,848.848 INFO    ] 200
[2026-06-12 04:30:44,849.849 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:30:44,882.882 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 04:30:44,884.884 INFO    ] No update needed
[2026-06-12 04:30:44,885.885 INFO    ] Checking for camera pi updates...
[2026-06-12 04:30:44,907.907 INFO    ] 200
[2026-06-12 04:30:44,909.909 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:30:44,933.933 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 04:30:44,975.975 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 04:30:44,977.977 INFO    ] No camera update needed
[2026-06-12 04:30:44,978.978 INFO    ] Script finished. Safe exiting...
[2026-06-12 04:30:44,979.979 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 04:30:44,983.983 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 04:30:44,985.985 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 04:30:47,025.025 INFO    ] ================================================
[2026-06-12 04:30:47,041.041 INFO    ] Launching Daemon at Fri Jun 12 04:30:47 IST 2026
[2026-06-12 04:30:47,053.053 INFO    ] ================================================
[2026-06-12 04:30:47,381.381 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 04:30:47
[2026-06-12 04:30:47,693.693 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 04:30:47,826.826 INFO    ] Initializing speech engine...
[2026-06-12 04:30:47,831.831 INFO    ] 2026-06-12 04:30:47
[2026-06-12 04:30:48,058.058 INFO    ] 2026-06-12 04:30:48
[2026-06-12 04:30:48,089.089 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 04:30:48,287.287 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 04:30:48,291.291 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 04:30:48,488.488 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 04:30:48,516.516 INFO    ] time= 12/06/2026 04:30:48
[2026-06-12 04:30:48,533.533 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 04:30:48,540.540 INFO    ] Checking for existing commands in stream...
[2026-06-12 04:30:48,612.612 INFO    ] No existing commands found in stream
[2026-06-12 04:30:53,621.621 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 04:30:53,624.624 INFO    ] Waiting 3.78 seconds before fallback handling...
[2026-06-12 04:30:57,789.789 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 04:30:57,790.790 INFO    ] Checking for system updates...
[2026-06-12 04:30:57,812.812 INFO    ] 200
[2026-06-12 04:30:57,813.813 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:30:57,843.843 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 04:30:57,844.844 INFO    ] No update needed
[2026-06-12 04:30:57,846.846 INFO    ] Checking for camera pi updates...
[2026-06-12 04:30:57,865.865 INFO    ] 200
[2026-06-12 04:30:57,867.867 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:30:57,891.891 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 04:30:57,926.926 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 04:30:57,927.927 INFO    ] No camera update needed
[2026-06-12 04:30:57,928.928 INFO    ] Script finished. Safe exiting...
[2026-06-12 04:30:57,930.930 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 04:30:57,933.933 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 04:30:57,935.935 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 04:30:59,974.974 INFO    ] ================================================
[2026-06-12 04:30:59,990.990 INFO    ] Launching Daemon at Fri Jun 12 04:30:59 IST 2026
[2026-06-12 04:31:00,001.001 INFO    ] ================================================
[2026-06-12 04:31:00,376.376 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 04:31:00
[2026-06-12 04:31:00,692.692 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 04:31:00,823.823 INFO    ] Initializing speech engine...
[2026-06-12 04:31:00,831.831 INFO    ] 2026-06-12 04:31:00
[2026-06-12 04:31:01,043.043 INFO    ] 2026-06-12 04:31:01
[2026-06-12 04:31:01,085.085 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 04:31:01,248.248 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 04:31:01,348.348 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 04:31:01,539.539 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 04:31:01,614.614 INFO    ] time= 12/06/2026 04:31:01
[2026-06-12 04:31:01,642.642 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 04:31:01,660.660 INFO    ] Checking for existing commands in stream...
[2026-06-12 04:31:01,758.758 INFO    ] No existing commands found in stream
[2026-06-12 04:31:06,783.783 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 04:31:06,786.786 INFO    ] Waiting 2.23 seconds before fallback handling...
[2026-06-12 04:31:09,418.418 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 04:31:09,419.419 INFO    ] Checking for system updates...
[2026-06-12 04:31:09,441.441 INFO    ] 200
[2026-06-12 04:31:09,442.442 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:31:09,474.474 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 04:31:09,476.476 INFO    ] No update needed
[2026-06-12 04:31:09,477.477 INFO    ] Checking for camera pi updates...
[2026-06-12 04:31:09,500.500 INFO    ] 200
[2026-06-12 04:31:09,501.501 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:31:09,526.526 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 04:31:09,560.560 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 04:31:09,562.562 INFO    ] No camera update needed
[2026-06-12 04:31:09,563.563 INFO    ] Script finished. Safe exiting...
[2026-06-12 04:31:09,565.565 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 04:31:09,568.568 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 04:31:09,571.571 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 04:31:11,610.610 INFO    ] ================================================
[2026-06-12 04:31:11,626.626 INFO    ] Launching Daemon at Fri Jun 12 04:31:11 IST 2026
[2026-06-12 04:31:11,638.638 INFO    ] ================================================
[2026-06-12 04:31:12,010.010 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 04:31:12
[2026-06-12 04:31:12,325.325 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 04:31:12,458.458 INFO    ] Initializing speech engine...
[2026-06-12 04:31:12,465.465 INFO    ] 2026-06-12 04:31:12
[2026-06-12 04:31:12,679.679 INFO    ] 2026-06-12 04:31:12
[2026-06-12 04:31:12,707.707 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 04:31:12,888.888 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 04:31:12,898.898 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 04:31:13,091.091 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 04:31:13,115.115 INFO    ] time= 12/06/2026 04:31:13
[2026-06-12 04:31:13,121.121 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 04:31:13,122.122 INFO    ] Checking for existing commands in stream...
[2026-06-12 04:31:13,212.212 INFO    ] No existing commands found in stream
[2026-06-12 04:31:18,221.221 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 04:31:18,224.224 INFO    ] Waiting 1.18 seconds before fallback handling...
[2026-06-12 04:31:19,767.767 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 04:31:19,768.768 INFO    ] Checking for system updates...
[2026-06-12 04:31:19,789.789 INFO    ] 200
[2026-06-12 04:31:19,791.791 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:31:19,821.821 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 04:31:19,822.822 INFO    ] No update needed
[2026-06-12 04:31:19,823.823 INFO    ] Checking for camera pi updates...
[2026-06-12 04:31:19,843.843 INFO    ] 200
[2026-06-12 04:31:19,844.844 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:31:19,871.871 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 04:31:19,915.915 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 04:31:19,917.917 INFO    ] No camera update needed
[2026-06-12 04:31:19,918.918 INFO    ] Script finished. Safe exiting...
[2026-06-12 04:31:19,919.919 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 04:31:19,922.922 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 04:31:19,925.925 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 04:31:21,963.963 INFO    ] ================================================
[2026-06-12 04:31:21,979.979 INFO    ] Launching Daemon at Fri Jun 12 04:31:21 IST 2026
[2026-06-12 04:31:21,990.990 INFO    ] ================================================
[2026-06-12 04:31:22,333.333 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 04:31:22
[2026-06-12 04:31:22,649.649 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 04:31:22,786.786 INFO    ] Initializing speech engine...
[2026-06-12 04:31:22,794.794 INFO    ] 2026-06-12 04:31:22
[2026-06-12 04:31:23,005.005 INFO    ] 2026-06-12 04:31:22
[2026-06-12 04:31:23,033.033 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 04:31:23,155.155 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 04:31:23,217.217 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 04:31:23,356.356 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 04:31:23,415.415 INFO    ] time= 12/06/2026 04:31:23
[2026-06-12 04:31:23,446.446 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 04:31:23,453.453 INFO    ] Checking for existing commands in stream...
[2026-06-12 04:31:23,519.519 INFO    ] No existing commands found in stream
[2026-06-12 04:31:28,533.533 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 04:31:28,536.536 INFO    ] Waiting 2.66 seconds before fallback handling...
[2026-06-12 04:31:31,523.523 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 04:31:31,525.525 INFO    ] Checking for system updates...
[2026-06-12 04:31:31,551.551 INFO    ] 200
[2026-06-12 04:31:31,552.552 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:31:31,591.591 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 04:31:31,592.592 INFO    ] No update needed
[2026-06-12 04:31:31,594.594 INFO    ] Checking for camera pi updates...
[2026-06-12 04:31:31,616.616 INFO    ] 200
[2026-06-12 04:31:31,618.618 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:31:31,645.645 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 04:31:31,669.669 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 04:31:31,671.671 INFO    ] No camera update needed
[2026-06-12 04:31:31,672.672 INFO    ] Script finished. Safe exiting...
[2026-06-12 04:31:31,674.674 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 04:31:31,678.678 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 04:31:31,681.681 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 04:31:33,728.728 INFO    ] ================================================
[2026-06-12 04:31:33,743.743 INFO    ] Launching Daemon at Fri Jun 12 04:31:33 IST 2026
[2026-06-12 04:31:33,755.755 INFO    ] ================================================
[2026-06-12 04:31:34,115.115 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 04:31:34
[2026-06-12 04:31:34,425.425 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 04:31:34,557.557 INFO    ] Initializing speech engine...
[2026-06-12 04:31:34,560.560 INFO    ] 2026-06-12 04:31:34
[2026-06-12 04:31:34,778.778 INFO    ] 2026-06-12 04:31:34
[2026-06-12 04:31:34,808.808 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 04:31:34,994.994 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 04:31:34,997.997 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 04:31:35,134.134 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 04:31:35,193.193 INFO    ] time= 12/06/2026 04:31:35
[2026-06-12 04:31:35,227.227 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 04:31:35,233.233 INFO    ] Checking for existing commands in stream...
[2026-06-12 04:31:35,300.300 INFO    ] No existing commands found in stream
[2026-06-12 04:31:40,314.314 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 04:31:40,317.317 INFO    ] Waiting 2.99 seconds before fallback handling...
[2026-06-12 04:31:43,701.701 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 04:31:43,702.702 INFO    ] Checking for system updates...
[2026-06-12 04:31:43,723.723 INFO    ] 200
[2026-06-12 04:31:43,724.724 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:31:43,756.756 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 04:31:43,758.758 INFO    ] No update needed
[2026-06-12 04:31:43,759.759 INFO    ] Checking for camera pi updates...
[2026-06-12 04:31:43,778.778 INFO    ] 200
[2026-06-12 04:31:43,780.780 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:31:43,804.804 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 04:31:43,849.849 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 04:31:43,850.850 INFO    ] No camera update needed
[2026-06-12 04:31:43,852.852 INFO    ] Script finished. Safe exiting...
[2026-06-12 04:31:43,853.853 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 04:31:43,856.856 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 04:31:43,858.858 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 04:31:45,901.901 INFO    ] ================================================
[2026-06-12 04:31:45,917.917 INFO    ] Launching Daemon at Fri Jun 12 04:31:45 IST 2026
[2026-06-12 04:31:45,929.929 INFO    ] ================================================
[2026-06-12 04:31:46,267.267 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 04:31:46
[2026-06-12 04:31:46,583.583 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 04:31:46,716.716 INFO    ] Initializing speech engine...
[2026-06-12 04:31:46,728.728 INFO    ] 2026-06-12 04:31:46
[2026-06-12 04:31:46,935.935 INFO    ] 2026-06-12 04:31:46
[2026-06-12 04:31:46,963.963 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 04:31:47,146.146 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 04:31:47,149.149 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 04:31:47,346.346 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 04:31:47,374.374 INFO    ] time= 12/06/2026 04:31:47
[2026-06-12 04:31:47,376.376 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 04:31:47,381.381 INFO    ] Checking for existing commands in stream...
[2026-06-12 04:31:47,448.448 INFO    ] No existing commands found in stream
[2026-06-12 04:31:52,462.462 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 04:31:52,465.465 INFO    ] Waiting 2.68 seconds before fallback handling...
[2026-06-12 04:31:55,536.536 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 04:31:55,538.538 INFO    ] Checking for system updates...
[2026-06-12 04:31:55,559.559 INFO    ] 200
[2026-06-12 04:31:55,561.561 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:31:55,591.591 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 04:31:55,593.593 INFO    ] No update needed
[2026-06-12 04:31:55,594.594 INFO    ] Checking for camera pi updates...
[2026-06-12 04:31:55,615.615 INFO    ] 200
[2026-06-12 04:31:55,616.616 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:31:55,640.640 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 04:31:55,778.778 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 04:31:55,780.780 INFO    ] No camera update needed
[2026-06-12 04:31:55,781.781 INFO    ] Script finished. Safe exiting...
[2026-06-12 04:31:55,782.782 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 04:31:55,785.785 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 04:31:55,788.788 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 04:31:57,827.827 INFO    ] ================================================
[2026-06-12 04:31:57,843.843 INFO    ] Launching Daemon at Fri Jun 12 04:31:57 IST 2026
[2026-06-12 04:31:57,854.854 INFO    ] ================================================
[2026-06-12 04:31:58,224.224 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 04:31:58
[2026-06-12 04:31:58,538.538 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 04:31:58,670.670 INFO    ] Initializing speech engine...
[2026-06-12 04:31:58,683.683 INFO    ] 2026-06-12 04:31:58
[2026-06-12 04:31:58,893.893 INFO    ] 2026-06-12 04:31:58
[2026-06-12 04:31:58,922.922 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 04:31:59,109.109 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 04:31:59,118.118 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 04:31:59,269.269 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 04:31:59,318.318 INFO    ] time= 12/06/2026 04:31:59
[2026-06-12 04:31:59,342.342 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 04:31:59,348.348 INFO    ] Checking for existing commands in stream...
[2026-06-12 04:31:59,416.416 INFO    ] No existing commands found in stream
[2026-06-12 04:32:04,425.425 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 04:32:04,427.427 INFO    ] Waiting 2.54 seconds before fallback handling...
[2026-06-12 04:32:07,337.337 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 04:32:07,339.339 INFO    ] Checking for system updates...
[2026-06-12 04:32:07,359.359 INFO    ] 200
[2026-06-12 04:32:07,361.361 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:32:07,394.394 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 04:32:07,395.395 INFO    ] No update needed
[2026-06-12 04:32:07,396.396 INFO    ] Checking for camera pi updates...
[2026-06-12 04:32:07,415.415 INFO    ] 200
[2026-06-12 04:32:07,417.417 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:32:07,440.440 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 04:32:07,474.474 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 04:32:07,475.475 INFO    ] No camera update needed
[2026-06-12 04:32:07,476.476 INFO    ] Script finished. Safe exiting...
[2026-06-12 04:32:07,478.478 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 04:32:07,481.481 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 04:32:07,483.483 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 04:32:09,522.522 INFO    ] ================================================
[2026-06-12 04:32:09,538.538 INFO    ] Launching Daemon at Fri Jun 12 04:32:09 IST 2026
[2026-06-12 04:32:09,549.549 INFO    ] ================================================
[2026-06-12 04:32:09,906.906 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 04:32:09
[2026-06-12 04:32:10,223.223 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 04:32:10,357.357 INFO    ] Initializing speech engine...
[2026-06-12 04:32:10,362.362 INFO    ] 2026-06-12 04:32:10
[2026-06-12 04:32:10,588.588 INFO    ] 2026-06-12 04:32:10
[2026-06-12 04:32:10,620.620 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 04:32:10,813.813 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 04:32:10,817.817 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 04:32:10,958.958 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 04:32:11,025.025 INFO    ] time= 12/06/2026 04:32:10
[2026-06-12 04:32:11,057.057 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 04:32:11,059.059 INFO    ] Checking for existing commands in stream...
[2026-06-12 04:32:11,133.133 INFO    ] No existing commands found in stream
[2026-06-12 04:32:16,144.144 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 04:32:16,147.147 INFO    ] Waiting 3.79 seconds before fallback handling...
[2026-06-12 04:32:20,257.257 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 04:32:20,259.259 INFO    ] Checking for system updates...
[2026-06-12 04:32:20,280.280 INFO    ] 200
[2026-06-12 04:32:20,281.281 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:32:20,314.314 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 04:32:20,315.315 INFO    ] No update needed
[2026-06-12 04:32:20,317.317 INFO    ] Checking for camera pi updates...
[2026-06-12 04:32:20,339.339 INFO    ] 200
[2026-06-12 04:32:20,341.341 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:32:20,365.365 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 04:32:20,410.410 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 04:32:20,411.411 INFO    ] No camera update needed
[2026-06-12 04:32:20,413.413 INFO    ] Script finished. Safe exiting...
[2026-06-12 04:32:20,414.414 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 04:32:20,417.417 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 04:32:20,420.420 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 04:32:22,459.459 INFO    ] ================================================
[2026-06-12 04:32:22,475.475 INFO    ] Launching Daemon at Fri Jun 12 04:32:22 IST 2026
[2026-06-12 04:32:22,487.487 INFO    ] ================================================
[2026-06-12 04:32:22,811.811 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 04:32:22
[2026-06-12 04:32:23,129.129 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 04:32:23,273.273 INFO    ] Initializing speech engine...
[2026-06-12 04:32:23,277.277 INFO    ] 2026-06-12 04:32:23
[2026-06-12 04:32:23,501.501 INFO    ] 2026-06-12 04:32:23
[2026-06-12 04:32:23,531.531 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 04:32:23,666.666 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 04:32:23,668.668 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 04:32:23,825.825 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 04:32:23,867.867 INFO    ] time= 12/06/2026 04:32:23
[2026-06-12 04:32:23,922.922 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 04:32:23,954.954 INFO    ] Checking for existing commands in stream...
[2026-06-12 04:32:24,090.090 INFO    ] No existing commands found in stream
[2026-06-12 04:32:29,100.100 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 04:32:29,102.102 INFO    ] Waiting 2.31 seconds before fallback handling...
[2026-06-12 04:32:31,817.817 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 04:32:31,819.819 INFO    ] Checking for system updates...
[2026-06-12 04:32:31,846.846 INFO    ] 200
[2026-06-12 04:32:31,848.848 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:32:31,884.884 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 04:32:31,886.886 INFO    ] No update needed
[2026-06-12 04:32:31,887.887 INFO    ] Checking for camera pi updates...
[2026-06-12 04:32:31,920.920 INFO    ] 200
[2026-06-12 04:32:31,922.922 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:32:31,954.954 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 04:32:31,986.986 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 04:32:31,988.988 INFO    ] No camera update needed
[2026-06-12 04:32:31,991.991 INFO    ] Script finished. Safe exiting...
[2026-06-12 04:32:31,992.992 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 04:32:31,996.996 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 04:32:32,001.001 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 04:32:34,034.034 INFO    ] ================================================
[2026-06-12 04:32:34,054.054 INFO    ] Launching Daemon at Fri Jun 12 04:32:34 IST 2026
[2026-06-12 04:32:34,065.065 INFO    ] ================================================
[2026-06-12 04:32:34,391.391 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 04:32:34
[2026-06-12 04:32:34,702.702 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 04:32:34,831.831 INFO    ] Initializing speech engine...
[2026-06-12 04:32:34,834.834 INFO    ] 2026-06-12 04:32:34
[2026-06-12 04:32:35,062.062 INFO    ] 2026-06-12 04:32:35
[2026-06-12 04:32:35,091.091 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 04:32:35,241.241 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 04:32:35,243.243 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 04:32:35,407.407 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 04:32:35,445.445 INFO    ] time= 12/06/2026 04:32:35
[2026-06-12 04:32:35,499.499 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 04:32:35,519.519 INFO    ] Checking for existing commands in stream...
[2026-06-12 04:32:35,609.609 INFO    ] No existing commands found in stream
[2026-06-12 04:32:40,623.623 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 04:32:40,626.626 INFO    ] Waiting 0.81 seconds before fallback handling...
[2026-06-12 04:32:41,840.840 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 04:32:41,841.841 INFO    ] Checking for system updates...
[2026-06-12 04:32:41,862.862 INFO    ] 200
[2026-06-12 04:32:41,864.864 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:32:41,894.894 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 04:32:41,896.896 INFO    ] No update needed
[2026-06-12 04:32:41,897.897 INFO    ] Checking for camera pi updates...
[2026-06-12 04:32:41,917.917 INFO    ] 200
[2026-06-12 04:32:41,918.918 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:32:41,942.942 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 04:32:41,990.990 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 04:32:41,992.992 INFO    ] No camera update needed
[2026-06-12 04:32:41,993.993 INFO    ] Script finished. Safe exiting...
[2026-06-12 04:32:41,994.994 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 04:32:41,998.998 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 04:32:42,001.001 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 04:32:44,041.041 INFO    ] ================================================
[2026-06-12 04:32:44,056.056 INFO    ] Launching Daemon at Fri Jun 12 04:32:44 IST 2026
[2026-06-12 04:32:44,074.074 INFO    ] ================================================
[2026-06-12 04:32:44,424.424 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 04:32:44
[2026-06-12 04:32:44,739.739 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 04:32:44,884.884 INFO    ] Initializing speech engine...
[2026-06-12 04:32:44,888.888 INFO    ] 2026-06-12 04:32:44
[2026-06-12 04:32:45,091.091 INFO    ] 2026-06-12 04:32:45
[2026-06-12 04:32:45,121.121 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 04:32:45,305.305 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 04:32:45,314.314 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 04:32:45,468.468 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 04:32:45,511.511 INFO    ] time= 12/06/2026 04:32:45
[2026-06-12 04:32:45,533.533 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 04:32:45,539.539 INFO    ] Checking for existing commands in stream...
[2026-06-12 04:32:45,606.606 INFO    ] No existing commands found in stream
[2026-06-12 04:32:50,615.615 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 04:32:50,618.618 INFO    ] Waiting 1.48 seconds before fallback handling...
[2026-06-12 04:32:52,501.501 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 04:32:52,504.504 INFO    ] Checking for system updates...
[2026-06-12 04:32:52,543.543 INFO    ] 200
[2026-06-12 04:32:52,545.545 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:32:52,597.597 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 04:32:52,600.600 INFO    ] No update needed
[2026-06-12 04:32:52,602.602 INFO    ] Checking for camera pi updates...
[2026-06-12 04:32:52,639.639 INFO    ] 200
[2026-06-12 04:32:52,641.641 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:32:52,682.682 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 04:32:52,722.722 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 04:32:52,725.725 INFO    ] No camera update needed
[2026-06-12 04:32:52,727.727 INFO    ] Script finished. Safe exiting...
[2026-06-12 04:32:52,729.729 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 04:32:52,735.735 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 04:32:52,740.740 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 04:32:54,780.780 INFO    ] ================================================
[2026-06-12 04:32:54,795.795 INFO    ] Launching Daemon at Fri Jun 12 04:32:54 IST 2026
[2026-06-12 04:32:54,806.806 INFO    ] ================================================
[2026-06-12 04:32:55,155.155 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 04:32:55
[2026-06-12 04:32:55,466.466 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 04:32:55,600.600 INFO    ] Initializing speech engine...
[2026-06-12 04:32:55,613.613 INFO    ] 2026-06-12 04:32:55
[2026-06-12 04:32:55,832.832 INFO    ] 2026-06-12 04:32:55
[2026-06-12 04:32:55,862.862 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 04:32:56,055.055 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 04:32:56,065.065 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 04:32:56,206.206 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 04:32:56,276.276 INFO    ] time= 12/06/2026 04:32:56
[2026-06-12 04:32:56,302.302 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 04:32:56,304.304 INFO    ] Checking for existing commands in stream...
[2026-06-12 04:32:56,379.379 INFO    ] No existing commands found in stream
[2026-06-12 04:33:01,393.393 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 04:33:01,396.396 INFO    ] Waiting 0.58 seconds before fallback handling...
[2026-06-12 04:33:02,323.323 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 04:33:02,325.325 INFO    ] Checking for system updates...
[2026-06-12 04:33:02,359.359 INFO    ] 200
[2026-06-12 04:33:02,364.364 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:33:02,412.412 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 04:33:02,414.414 INFO    ] No update needed
[2026-06-12 04:33:02,416.416 INFO    ] Checking for camera pi updates...
[2026-06-12 04:33:02,436.436 INFO    ] 200
[2026-06-12 04:33:02,437.437 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:33:02,472.472 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 04:33:02,494.494 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 04:33:02,495.495 INFO    ] No camera update needed
[2026-06-12 04:33:02,496.496 INFO    ] Script finished. Safe exiting...
[2026-06-12 04:33:02,498.498 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 04:33:02,501.501 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 04:33:02,503.503 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 04:33:04,541.541 INFO    ] ================================================
[2026-06-12 04:33:04,556.556 INFO    ] Launching Daemon at Fri Jun 12 04:33:04 IST 2026
[2026-06-12 04:33:04,567.567 INFO    ] ================================================
[2026-06-12 04:33:04,906.906 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 04:33:04
[2026-06-12 04:33:05,221.221 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 04:33:05,365.365 INFO    ] Initializing speech engine...
[2026-06-12 04:33:05,370.370 INFO    ] 2026-06-12 04:33:05
[2026-06-12 04:33:05,574.574 INFO    ] 2026-06-12 04:33:05
[2026-06-12 04:33:05,602.602 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 04:33:05,785.785 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 04:33:05,794.794 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 04:33:05,935.935 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 04:33:05,987.987 INFO    ] time= 12/06/2026 04:33:05
[2026-06-12 04:33:06,029.029 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 04:33:06,035.035 INFO    ] Checking for existing commands in stream...
[2026-06-12 04:33:06,102.102 INFO    ] No existing commands found in stream
[2026-06-12 04:33:11,126.126 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 04:33:11,128.128 INFO    ] Waiting 3.82 seconds before fallback handling...
[2026-06-12 04:33:15,325.325 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 04:33:15,326.326 INFO    ] Checking for system updates...
[2026-06-12 04:33:15,348.348 INFO    ] 200
[2026-06-12 04:33:15,349.349 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:33:15,381.381 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 04:33:15,382.382 INFO    ] No update needed
[2026-06-12 04:33:15,384.384 INFO    ] Checking for camera pi updates...
[2026-06-12 04:33:15,403.403 INFO    ] 200
[2026-06-12 04:33:15,405.405 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:33:15,429.429 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 04:33:15,466.466 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 04:33:15,467.467 INFO    ] No camera update needed
[2026-06-12 04:33:15,469.469 INFO    ] Script finished. Safe exiting...
[2026-06-12 04:33:15,470.470 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 04:33:15,473.473 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 04:33:15,476.476 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 04:33:17,513.513 INFO    ] ================================================
[2026-06-12 04:33:17,529.529 INFO    ] Launching Daemon at Fri Jun 12 04:33:17 IST 2026
[2026-06-12 04:33:17,540.540 INFO    ] ================================================
[2026-06-12 04:33:17,907.907 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 04:33:17
[2026-06-12 04:33:18,218.218 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 04:33:18,360.360 INFO    ] Initializing speech engine...
[2026-06-12 04:33:18,365.365 INFO    ] 2026-06-12 04:33:18
[2026-06-12 04:33:18,568.568 INFO    ] 2026-06-12 04:33:18
[2026-06-12 04:33:18,597.597 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 04:33:18,786.786 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 04:33:18,795.795 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 04:33:18,929.929 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 04:33:18,980.980 INFO    ] time= 12/06/2026 04:33:18
[2026-06-12 04:33:19,026.026 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 04:33:19,031.031 INFO    ] Checking for existing commands in stream...
[2026-06-12 04:33:19,103.103 INFO    ] No existing commands found in stream
[2026-06-12 04:33:24,112.112 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 04:33:24,114.114 INFO    ] Waiting 2.80 seconds before fallback handling...
[2026-06-12 04:33:27,316.316 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 04:33:27,317.317 INFO    ] Checking for system updates...
[2026-06-12 04:33:27,338.338 INFO    ] 200
[2026-06-12 04:33:27,339.339 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:33:27,374.374 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 04:33:27,376.376 INFO    ] No update needed
[2026-06-12 04:33:27,378.378 INFO    ] Checking for camera pi updates...
[2026-06-12 04:33:27,397.397 INFO    ] 200
[2026-06-12 04:33:27,398.398 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:33:27,422.422 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 04:33:27,461.461 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 04:33:27,462.462 INFO    ] No camera update needed
[2026-06-12 04:33:27,463.463 INFO    ] Script finished. Safe exiting...
[2026-06-12 04:33:27,465.465 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 04:33:27,468.468 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 04:33:27,470.470 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 04:33:29,509.509 INFO    ] ================================================
[2026-06-12 04:33:29,524.524 INFO    ] Launching Daemon at Fri Jun 12 04:33:29 IST 2026
[2026-06-12 04:33:29,536.536 INFO    ] ================================================
[2026-06-12 04:33:29,918.918 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 04:33:29
[2026-06-12 04:33:30,230.230 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 04:33:30,362.362 INFO    ] Initializing speech engine...
[2026-06-12 04:33:30,367.367 INFO    ] 2026-06-12 04:33:30
[2026-06-12 04:33:30,595.595 INFO    ] 2026-06-12 04:33:30
[2026-06-12 04:33:30,624.624 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 04:33:30,807.807 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 04:33:30,811.811 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 04:33:30,946.946 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 04:33:31,010.010 INFO    ] time= 12/06/2026 04:33:30
[2026-06-12 04:33:31,038.038 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 04:33:31,040.040 INFO    ] Checking for existing commands in stream...
[2026-06-12 04:33:31,111.111 INFO    ] No existing commands found in stream
[2026-06-12 04:33:36,125.125 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 04:33:36,128.128 INFO    ] Waiting 0.31 seconds before fallback handling...
[2026-06-12 04:33:36,817.817 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 04:33:36,818.818 INFO    ] Checking for system updates...
[2026-06-12 04:33:36,839.839 INFO    ] 200
[2026-06-12 04:33:36,840.840 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:33:36,871.871 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 04:33:36,872.872 INFO    ] No update needed
[2026-06-12 04:33:36,874.874 INFO    ] Checking for camera pi updates...
[2026-06-12 04:33:36,894.894 INFO    ] 200
[2026-06-12 04:33:36,896.896 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:33:36,920.920 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 04:33:36,964.964 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 04:33:36,966.966 INFO    ] No camera update needed
[2026-06-12 04:33:36,967.967 INFO    ] Script finished. Safe exiting...
[2026-06-12 04:33:36,968.968 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 04:33:36,971.971 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 04:33:36,974.974 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 04:33:39,012.012 INFO    ] ================================================
[2026-06-12 04:33:39,028.028 INFO    ] Launching Daemon at Fri Jun 12 04:33:39 IST 2026
[2026-06-12 04:33:39,039.039 INFO    ] ================================================
[2026-06-12 04:33:39,406.406 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 04:33:39
[2026-06-12 04:33:39,724.724 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 04:33:39,858.858 INFO    ] Initializing speech engine...
[2026-06-12 04:33:39,862.862 INFO    ] 2026-06-12 04:33:39
[2026-06-12 04:33:40,092.092 INFO    ] 2026-06-12 04:33:40
[2026-06-12 04:33:40,125.125 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 04:33:40,257.257 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 04:33:40,314.314 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 04:33:40,443.443 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 04:33:40,494.494 INFO    ] time= 12/06/2026 04:33:40
[2026-06-12 04:33:40,537.537 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 04:33:40,542.542 INFO    ] Checking for existing commands in stream...
[2026-06-12 04:33:40,613.613 INFO    ] No existing commands found in stream
[2026-06-12 04:33:45,627.627 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 04:33:45,630.630 INFO    ] Waiting 0.50 seconds before fallback handling...
[2026-06-12 04:33:46,540.540 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 04:33:46,541.541 INFO    ] Checking for system updates...
[2026-06-12 04:33:46,563.563 INFO    ] 200
[2026-06-12 04:33:46,564.564 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:33:46,596.596 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 04:33:46,598.598 INFO    ] No update needed
[2026-06-12 04:33:46,599.599 INFO    ] Checking for camera pi updates...
[2026-06-12 04:33:46,618.618 INFO    ] 200
[2026-06-12 04:33:46,619.619 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:33:46,644.644 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 04:33:46,679.679 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 04:33:46,680.680 INFO    ] No camera update needed
[2026-06-12 04:33:46,682.682 INFO    ] Script finished. Safe exiting...
[2026-06-12 04:33:46,683.683 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 04:33:46,686.686 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 04:33:46,688.688 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 04:33:48,726.726 INFO    ] ================================================
[2026-06-12 04:33:48,742.742 INFO    ] Launching Daemon at Fri Jun 12 04:33:48 IST 2026
[2026-06-12 04:33:48,753.753 INFO    ] ================================================
[2026-06-12 04:33:49,100.100 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 04:33:49
[2026-06-12 04:33:49,412.412 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 04:33:49,554.554 INFO    ] Initializing speech engine...
[2026-06-12 04:33:49,556.556 INFO    ] 2026-06-12 04:33:49
[2026-06-12 04:33:49,800.800 INFO    ] 2026-06-12 04:33:49
[2026-06-12 04:33:49,829.829 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 04:33:50,029.029 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 04:33:50,034.034 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 04:33:50,172.172 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 04:33:50,245.245 INFO    ] time= 12/06/2026 04:33:50
[2026-06-12 04:33:50,281.281 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 04:33:50,289.289 INFO    ] Checking for existing commands in stream...
[2026-06-12 04:33:50,362.362 INFO    ] No existing commands found in stream
[2026-06-12 04:33:55,371.371 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 04:33:55,374.374 INFO    ] Waiting 0.44 seconds before fallback handling...
[2026-06-12 04:33:56,166.166 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 04:33:56,172.172 INFO    ] Checking for system updates...
[2026-06-12 04:33:56,193.193 INFO    ] 200
[2026-06-12 04:33:56,194.194 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:33:56,225.225 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 04:33:56,226.226 INFO    ] No update needed
[2026-06-12 04:33:56,228.228 INFO    ] Checking for camera pi updates...
[2026-06-12 04:33:56,248.248 INFO    ] 200
[2026-06-12 04:33:56,250.250 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:33:56,275.275 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 04:33:56,426.426 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 04:33:56,427.427 INFO    ] No camera update needed
[2026-06-12 04:33:56,428.428 INFO    ] Script finished. Safe exiting...
[2026-06-12 04:33:56,430.430 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 04:33:56,433.433 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 04:33:56,435.435 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 04:33:58,474.474 INFO    ] ================================================
[2026-06-12 04:33:58,490.490 INFO    ] Launching Daemon at Fri Jun 12 04:33:58 IST 2026
[2026-06-12 04:33:58,501.501 INFO    ] ================================================
[2026-06-12 04:33:58,889.889 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 04:33:58
[2026-06-12 04:33:59,226.226 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 04:33:59,376.376 INFO    ] Initializing speech engine...
[2026-06-12 04:33:59,382.382 INFO    ] 2026-06-12 04:33:59
[2026-06-12 04:33:59,590.590 INFO    ] 2026-06-12 04:33:59
[2026-06-12 04:33:59,619.619 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 04:33:59,803.803 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 04:33:59,807.807 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 04:33:59,971.971 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 04:34:00,026.026 INFO    ] time= 12/06/2026 04:33:59
[2026-06-12 04:34:00,037.037 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 04:34:00,043.043 INFO    ] Checking for existing commands in stream...
[2026-06-12 04:34:00,110.110 INFO    ] No existing commands found in stream
[2026-06-12 04:34:05,120.120 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 04:34:05,123.123 INFO    ] Waiting 1.46 seconds before fallback handling...
[2026-06-12 04:34:07,004.004 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 04:34:07,006.006 INFO    ] Checking for system updates...
[2026-06-12 04:34:07,033.033 INFO    ] 200
[2026-06-12 04:34:07,034.034 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:34:07,070.070 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 04:34:07,072.072 INFO    ] No update needed
[2026-06-12 04:34:07,077.077 INFO    ] Checking for camera pi updates...
[2026-06-12 04:34:07,097.097 INFO    ] 200
[2026-06-12 04:34:07,099.099 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:34:07,123.123 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 04:34:07,149.149 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 04:34:07,150.150 INFO    ] No camera update needed
[2026-06-12 04:34:07,152.152 INFO    ] Script finished. Safe exiting...
[2026-06-12 04:34:07,153.153 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 04:34:07,156.156 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 04:34:07,160.160 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 04:34:09,199.199 INFO    ] ================================================
[2026-06-12 04:34:09,215.215 INFO    ] Launching Daemon at Fri Jun 12 04:34:09 IST 2026
[2026-06-12 04:34:09,226.226 INFO    ] ================================================
[2026-06-12 04:34:09,578.578 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 04:34:09
[2026-06-12 04:34:09,889.889 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 04:34:10,032.032 INFO    ] Initializing speech engine...
[2026-06-12 04:34:10,037.037 INFO    ] 2026-06-12 04:34:10
[2026-06-12 04:34:10,243.243 INFO    ] 2026-06-12 04:34:10
[2026-06-12 04:34:10,272.272 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 04:34:10,457.457 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 04:34:10,460.460 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 04:34:10,618.618 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 04:34:10,667.667 INFO    ] time= 12/06/2026 04:34:10
[2026-06-12 04:34:10,689.689 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 04:34:10,696.696 INFO    ] Checking for existing commands in stream...
[2026-06-12 04:34:10,761.761 INFO    ] No existing commands found in stream
[2026-06-12 04:34:15,771.771 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 04:34:15,774.774 INFO    ] Waiting 2.07 seconds before fallback handling...
[2026-06-12 04:34:18,233.233 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 04:34:18,235.235 INFO    ] Checking for system updates...
[2026-06-12 04:34:18,257.257 INFO    ] 200
[2026-06-12 04:34:18,258.258 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:34:18,295.295 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 04:34:18,297.297 INFO    ] No update needed
[2026-06-12 04:34:18,299.299 INFO    ] Checking for camera pi updates...
[2026-06-12 04:34:18,320.320 INFO    ] 200
[2026-06-12 04:34:18,322.322 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:34:18,346.346 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 04:34:18,382.382 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 04:34:18,383.383 INFO    ] No camera update needed
[2026-06-12 04:34:18,385.385 INFO    ] Script finished. Safe exiting...
[2026-06-12 04:34:18,386.386 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 04:34:18,389.389 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 04:34:18,392.392 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 04:34:20,432.432 INFO    ] ================================================
[2026-06-12 04:34:20,448.448 INFO    ] Launching Daemon at Fri Jun 12 04:34:20 IST 2026
[2026-06-12 04:34:20,459.459 INFO    ] ================================================
[2026-06-12 04:34:20,833.833 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 04:34:20
[2026-06-12 04:34:21,149.149 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 04:34:21,292.292 INFO    ] Initializing speech engine...
[2026-06-12 04:34:21,297.297 INFO    ] 2026-06-12 04:34:21
[2026-06-12 04:34:21,504.504 INFO    ] 2026-06-12 04:34:21
[2026-06-12 04:34:21,532.532 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 04:34:21,659.659 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 04:34:21,717.717 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 04:34:21,865.865 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 04:34:21,922.922 INFO    ] time= 12/06/2026 04:34:21
[2026-06-12 04:34:21,945.945 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 04:34:21,951.951 INFO    ] Checking for existing commands in stream...
[2026-06-12 04:34:22,018.018 INFO    ] No existing commands found in stream
[2026-06-12 04:34:27,027.027 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 04:34:27,030.030 INFO    ] Waiting 1.31 seconds before fallback handling...
[2026-06-12 04:34:28,734.734 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 04:34:28,736.736 INFO    ] Checking for system updates...
[2026-06-12 04:34:28,758.758 INFO    ] 200
[2026-06-12 04:34:28,760.760 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:34:28,792.792 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 04:34:28,794.794 INFO    ] No update needed
[2026-06-12 04:34:28,795.795 INFO    ] Checking for camera pi updates...
[2026-06-12 04:34:28,816.816 INFO    ] 200
[2026-06-12 04:34:28,817.817 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:34:28,841.841 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 04:34:28,875.875 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 04:34:28,877.877 INFO    ] No camera update needed
[2026-06-12 04:34:28,878.878 INFO    ] Script finished. Safe exiting...
[2026-06-12 04:34:28,879.879 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 04:34:28,883.883 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 04:34:28,885.885 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 04:34:30,923.923 INFO    ] ================================================
[2026-06-12 04:34:30,939.939 INFO    ] Launching Daemon at Fri Jun 12 04:34:30 IST 2026
[2026-06-12 04:34:30,950.950 INFO    ] ================================================
[2026-06-12 04:34:31,303.303 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 04:34:31
[2026-06-12 04:34:31,614.614 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 04:34:31,745.745 INFO    ] Initializing speech engine...
[2026-06-12 04:34:31,753.753 INFO    ] 2026-06-12 04:34:31
[2026-06-12 04:34:31,966.966 INFO    ] 2026-06-12 04:34:31
[2026-06-12 04:34:31,996.996 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 04:34:32,198.198 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 04:34:32,208.208 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 04:34:32,354.354 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 04:34:32,436.436 INFO    ] time= 12/06/2026 04:34:32
[2026-06-12 04:34:32,447.447 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 04:34:32,454.454 INFO    ] Checking for existing commands in stream...
[2026-06-12 04:34:32,548.548 INFO    ] No existing commands found in stream
[2026-06-12 04:34:37,562.562 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 04:34:37,565.565 INFO    ] Waiting 0.70 seconds before fallback handling...
[2026-06-12 04:34:38,661.661 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 04:34:38,662.662 INFO    ] Checking for system updates...
[2026-06-12 04:34:38,683.683 INFO    ] 200
[2026-06-12 04:34:38,684.684 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:34:38,718.718 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 04:34:38,719.719 INFO    ] No update needed
[2026-06-12 04:34:38,721.721 INFO    ] Checking for camera pi updates...
[2026-06-12 04:34:38,741.741 INFO    ] 200
[2026-06-12 04:34:38,743.743 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:34:38,766.766 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 04:34:38,801.801 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 04:34:38,802.802 INFO    ] No camera update needed
[2026-06-12 04:34:38,803.803 INFO    ] Script finished. Safe exiting...
[2026-06-12 04:34:38,805.805 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 04:34:38,808.808 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 04:34:38,811.811 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 04:34:40,850.850 INFO    ] ================================================
[2026-06-12 04:34:40,866.866 INFO    ] Launching Daemon at Fri Jun 12 04:34:40 IST 2026
[2026-06-12 04:34:40,877.877 INFO    ] ================================================
[2026-06-12 04:34:41,209.209 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 04:34:41
[2026-06-12 04:34:41,521.521 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 04:34:41,649.649 INFO    ] Initializing speech engine...
[2026-06-12 04:34:41,654.654 INFO    ] 2026-06-12 04:34:41
[2026-06-12 04:34:41,870.870 INFO    ] 2026-06-12 04:34:41
[2026-06-12 04:34:41,898.898 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 04:34:42,036.036 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 04:34:42,085.085 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 04:34:42,237.237 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 04:34:42,289.289 INFO    ] time= 12/06/2026 04:34:42
[2026-06-12 04:34:42,313.313 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 04:34:42,319.319 INFO    ] Checking for existing commands in stream...
[2026-06-12 04:34:42,386.386 INFO    ] No existing commands found in stream
[2026-06-12 04:34:47,394.394 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 04:34:47,397.397 INFO    ] Waiting 3.34 seconds before fallback handling...
[2026-06-12 04:34:51,132.132 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 04:34:51,134.134 INFO    ] Checking for system updates...
[2026-06-12 04:34:51,154.154 INFO    ] 200
[2026-06-12 04:34:51,156.156 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:34:51,185.185 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 04:34:51,187.187 INFO    ] No update needed
[2026-06-12 04:34:51,188.188 INFO    ] Checking for camera pi updates...
[2026-06-12 04:34:51,213.213 INFO    ] 200
[2026-06-12 04:34:51,215.215 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:34:51,239.239 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 04:34:51,279.279 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 04:34:51,281.281 INFO    ] No camera update needed
[2026-06-12 04:34:51,282.282 INFO    ] Script finished. Safe exiting...
[2026-06-12 04:34:51,283.283 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 04:34:51,286.286 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 04:34:51,289.289 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 04:34:53,327.327 INFO    ] ================================================
[2026-06-12 04:34:53,343.343 INFO    ] Launching Daemon at Fri Jun 12 04:34:53 IST 2026
[2026-06-12 04:34:53,354.354 INFO    ] ================================================
[2026-06-12 04:34:53,689.689 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 04:34:53
[2026-06-12 04:34:54,006.006 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 04:34:54,151.151 INFO    ] Initializing speech engine...
[2026-06-12 04:34:54,156.156 INFO    ] 2026-06-12 04:34:54
[2026-06-12 04:34:54,360.360 INFO    ] 2026-06-12 04:34:54
[2026-06-12 04:34:54,388.388 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 04:34:54,572.572 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 04:34:54,581.581 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 04:34:54,730.730 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 04:34:54,777.777 INFO    ] time= 12/06/2026 04:34:54
[2026-06-12 04:34:54,799.799 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 04:34:54,806.806 INFO    ] Checking for existing commands in stream...
[2026-06-12 04:34:54,896.896 INFO    ] No existing commands found in stream
[2026-06-12 04:34:59,904.904 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 04:34:59,907.907 INFO    ] Waiting 1.73 seconds before fallback handling...
[2026-06-12 04:35:01,976.976 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 04:35:01,978.978 INFO    ] Checking for system updates...
[2026-06-12 04:35:02,008.008 INFO    ] 200
[2026-06-12 04:35:02,010.010 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:35:02,054.054 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 04:35:02,056.056 INFO    ] No update needed
[2026-06-12 04:35:02,059.059 INFO    ] Checking for camera pi updates...
[2026-06-12 04:35:02,093.093 INFO    ] 200
[2026-06-12 04:35:02,096.096 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:35:02,131.131 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 04:35:02,168.168 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 04:35:02,172.172 INFO    ] No camera update needed
[2026-06-12 04:35:02,177.177 INFO    ] Script finished. Safe exiting...
[2026-06-12 04:35:02,178.178 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 04:35:02,183.183 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 04:35:02,187.187 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 04:35:04,228.228 INFO    ] ================================================
[2026-06-12 04:35:04,244.244 INFO    ] Launching Daemon at Fri Jun 12 04:35:04 IST 2026
[2026-06-12 04:35:04,255.255 INFO    ] ================================================
[2026-06-12 04:35:04,594.594 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 04:35:04
[2026-06-12 04:35:04,906.906 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 04:35:05,037.037 INFO    ] Initializing speech engine...
[2026-06-12 04:35:05,041.041 INFO    ] 2026-06-12 04:35:05
[2026-06-12 04:35:05,260.260 INFO    ] 2026-06-12 04:35:05
[2026-06-12 04:35:05,290.290 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 04:35:05,496.496 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 04:35:05,503.503 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 04:35:05,697.697 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 04:35:05,719.719 INFO    ] time= 12/06/2026 04:35:05
[2026-06-12 04:35:05,725.725 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 04:35:05,727.727 INFO    ] Checking for existing commands in stream...
[2026-06-12 04:35:05,793.793 INFO    ] No existing commands found in stream
[2026-06-12 04:35:10,807.807 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 04:35:10,810.810 INFO    ] Waiting 0.60 seconds before fallback handling...
[2026-06-12 04:35:11,804.804 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 04:35:11,805.805 INFO    ] Checking for system updates...
[2026-06-12 04:35:11,826.826 INFO    ] 200
[2026-06-12 04:35:11,827.827 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:35:11,860.860 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 04:35:11,861.861 INFO    ] No update needed
[2026-06-12 04:35:11,863.863 INFO    ] Checking for camera pi updates...
[2026-06-12 04:35:11,885.885 INFO    ] 200
[2026-06-12 04:35:11,886.886 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:35:11,913.913 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 04:35:11,937.937 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 04:35:11,939.939 INFO    ] No camera update needed
[2026-06-12 04:35:11,940.940 INFO    ] Script finished. Safe exiting...
[2026-06-12 04:35:11,941.941 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 04:35:11,944.944 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 04:35:11,947.947 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 04:35:13,987.987 INFO    ] ================================================
[2026-06-12 04:35:14,003.003 INFO    ] Launching Daemon at Fri Jun 12 04:35:13 IST 2026
[2026-06-12 04:35:14,014.014 INFO    ] ================================================
[2026-06-12 04:35:14,384.384 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 04:35:14
[2026-06-12 04:35:14,696.696 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 04:35:14,825.825 INFO    ] Initializing speech engine...
[2026-06-12 04:35:14,829.829 INFO    ] 2026-06-12 04:35:14
[2026-06-12 04:35:15,047.047 INFO    ] 2026-06-12 04:35:15
[2026-06-12 04:35:15,076.076 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 04:35:15,262.262 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 04:35:15,273.273 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 04:35:15,452.452 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 04:35:15,482.482 INFO    ] time= 12/06/2026 04:35:15
[2026-06-12 04:35:15,493.493 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 04:35:15,499.499 INFO    ] Checking for existing commands in stream...
[2026-06-12 04:35:15,566.566 INFO    ] No existing commands found in stream
[2026-06-12 04:35:20,580.580 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 04:35:20,583.583 INFO    ] Waiting 0.45 seconds before fallback handling...
[2026-06-12 04:35:21,393.393 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 04:35:21,394.394 INFO    ] Checking for system updates...
[2026-06-12 04:35:21,417.417 INFO    ] 200
[2026-06-12 04:35:21,418.418 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:35:21,448.448 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 04:35:21,449.449 INFO    ] No update needed
[2026-06-12 04:35:21,451.451 INFO    ] Checking for camera pi updates...
[2026-06-12 04:35:21,470.470 INFO    ] 200
[2026-06-12 04:35:21,472.472 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:35:21,497.497 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 04:35:21,532.532 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 04:35:21,533.533 INFO    ] No camera update needed
[2026-06-12 04:35:21,534.534 INFO    ] Script finished. Safe exiting...
[2026-06-12 04:35:21,536.536 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 04:35:21,539.539 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 04:35:21,541.541 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 04:35:23,582.582 INFO    ] ================================================
[2026-06-12 04:35:23,598.598 INFO    ] Launching Daemon at Fri Jun 12 04:35:23 IST 2026
[2026-06-12 04:35:23,609.609 INFO    ] ================================================
[2026-06-12 04:35:23,963.963 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 04:35:23
[2026-06-12 04:35:24,312.312 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 04:35:24,464.464 INFO    ] Initializing speech engine...
[2026-06-12 04:35:24,470.470 INFO    ] 2026-06-12 04:35:24
[2026-06-12 04:35:24,678.678 INFO    ] 2026-06-12 04:35:24
[2026-06-12 04:35:24,707.707 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 04:35:24,830.830 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 04:35:24,893.893 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 04:35:25,037.037 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 04:35:25,099.099 INFO    ] time= 12/06/2026 04:35:25
[2026-06-12 04:35:25,124.124 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 04:35:25,130.130 INFO    ] Checking for existing commands in stream...
[2026-06-12 04:35:25,198.198 INFO    ] No existing commands found in stream
[2026-06-12 04:35:30,212.212 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 04:35:30,216.216 INFO    ] Waiting 1.08 seconds before fallback handling...
[2026-06-12 04:35:31,743.743 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 04:35:31,744.744 INFO    ] Checking for system updates...
[2026-06-12 04:35:31,770.770 INFO    ] 200
[2026-06-12 04:35:31,772.772 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:35:31,809.809 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 04:35:31,811.811 INFO    ] No update needed
[2026-06-12 04:35:31,813.813 INFO    ] Checking for camera pi updates...
[2026-06-12 04:35:31,835.835 INFO    ] 200
[2026-06-12 04:35:31,837.837 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:35:31,865.865 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 04:35:31,890.890 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 04:35:31,892.892 INFO    ] No camera update needed
[2026-06-12 04:35:31,893.893 INFO    ] Script finished. Safe exiting...
[2026-06-12 04:35:31,895.895 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 04:35:31,898.898 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 04:35:31,902.902 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 04:35:33,942.942 INFO    ] ================================================
[2026-06-12 04:35:33,957.957 INFO    ] Launching Daemon at Fri Jun 12 04:35:33 IST 2026
[2026-06-12 04:35:33,968.968 INFO    ] ================================================
[2026-06-12 04:35:34,303.303 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 04:35:34
[2026-06-12 04:35:34,617.617 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 04:35:34,749.749 INFO    ] Initializing speech engine...
[2026-06-12 04:35:34,752.752 INFO    ] 2026-06-12 04:35:34
[2026-06-12 04:35:34,972.972 INFO    ] 2026-06-12 04:35:34
[2026-06-12 04:35:35,002.002 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 04:35:35,189.189 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 04:35:35,198.198 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 04:35:35,381.381 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 04:35:35,421.421 INFO    ] time= 12/06/2026 04:35:35
[2026-06-12 04:35:35,423.423 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 04:35:35,428.428 INFO    ] Checking for existing commands in stream...
[2026-06-12 04:35:35,497.497 INFO    ] No existing commands found in stream
[2026-06-12 04:35:40,511.511 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 04:35:40,514.514 INFO    ] Waiting 3.10 seconds before fallback handling...
[2026-06-12 04:35:44,010.010 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 04:35:44,012.012 INFO    ] Checking for system updates...
[2026-06-12 04:35:44,036.036 INFO    ] 200
[2026-06-12 04:35:44,037.037 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:35:44,068.068 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 04:35:44,070.070 INFO    ] No update needed
[2026-06-12 04:35:44,071.071 INFO    ] Checking for camera pi updates...
[2026-06-12 04:35:44,091.091 INFO    ] 200
[2026-06-12 04:35:44,093.093 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:35:44,117.117 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 04:35:44,155.155 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 04:35:44,157.157 INFO    ] No camera update needed
[2026-06-12 04:35:44,158.158 INFO    ] Script finished. Safe exiting...
[2026-06-12 04:35:44,160.160 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 04:35:44,163.163 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 04:35:44,166.166 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 04:35:46,207.207 INFO    ] ================================================
[2026-06-12 04:35:46,223.223 INFO    ] Launching Daemon at Fri Jun 12 04:35:46 IST 2026
[2026-06-12 04:35:46,234.234 INFO    ] ================================================
[2026-06-12 04:35:46,582.582 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 04:35:46
[2026-06-12 04:35:46,921.921 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 04:35:47,066.066 INFO    ] Initializing speech engine...
[2026-06-12 04:35:47,078.078 INFO    ] 2026-06-12 04:35:47
[2026-06-12 04:35:47,291.291 INFO    ] 2026-06-12 04:35:47
[2026-06-12 04:35:47,321.321 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 04:35:47,505.505 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 04:35:47,509.509 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 04:35:47,645.645 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 04:35:47,715.715 INFO    ] time= 12/06/2026 04:35:47
[2026-06-12 04:35:47,743.743 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 04:35:47,750.750 INFO    ] Checking for existing commands in stream...
[2026-06-12 04:35:47,819.819 INFO    ] No existing commands found in stream
[2026-06-12 04:35:52,831.831 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 04:35:52,834.834 INFO    ] Waiting 0.70 seconds before fallback handling...
[2026-06-12 04:35:55,658.658 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 04:35:55,661.661 INFO    ] Checking for system updates...
[2026-06-12 04:35:55,698.698 INFO    ] 200
[2026-06-12 04:35:55,700.700 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:35:55,761.761 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 04:35:55,764.764 INFO    ] No update needed
[2026-06-12 04:35:55,766.766 INFO    ] Checking for camera pi updates...
[2026-06-12 04:35:55,788.788 INFO    ] 200
[2026-06-12 04:35:55,789.789 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:35:55,812.812 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 04:35:55,849.849 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 04:35:55,850.850 INFO    ] No camera update needed
[2026-06-12 04:35:55,851.851 INFO    ] Script finished. Safe exiting...
[2026-06-12 04:35:55,853.853 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 04:35:55,856.856 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 04:35:55,858.858 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 04:35:57,896.896 INFO    ] ================================================
[2026-06-12 04:35:57,913.913 INFO    ] Launching Daemon at Fri Jun 12 04:35:57 IST 2026
[2026-06-12 04:35:57,924.924 INFO    ] ================================================
[2026-06-12 04:35:58,278.278 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 04:35:58
[2026-06-12 04:35:58,589.589 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 04:35:58,732.732 INFO    ] Initializing speech engine...
[2026-06-12 04:35:58,737.737 INFO    ] 2026-06-12 04:35:58
[2026-06-12 04:35:58,942.942 INFO    ] 2026-06-12 04:35:58
[2026-06-12 04:35:58,972.972 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 04:35:59,159.159 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 04:35:59,167.167 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 04:35:59,298.298 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 04:35:59,366.366 INFO    ] time= 12/06/2026 04:35:59
[2026-06-12 04:35:59,390.390 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 04:35:59,392.392 INFO    ] Checking for existing commands in stream...
[2026-06-12 04:35:59,464.464 INFO    ] No existing commands found in stream
[2026-06-12 04:36:04,473.473 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 04:36:04,475.475 INFO    ] Waiting 3.31 seconds before fallback handling...
[2026-06-12 04:36:08,134.134 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 04:36:08,135.135 INFO    ] Checking for system updates...
[2026-06-12 04:36:08,156.156 INFO    ] 200
[2026-06-12 04:36:08,158.158 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:36:08,191.191 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 04:36:08,192.192 INFO    ] No update needed
[2026-06-12 04:36:08,194.194 INFO    ] Checking for camera pi updates...
[2026-06-12 04:36:08,214.214 INFO    ] 200
[2026-06-12 04:36:08,215.215 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:36:08,238.238 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 04:36:08,275.275 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 04:36:08,277.277 INFO    ] No camera update needed
[2026-06-12 04:36:08,278.278 INFO    ] Script finished. Safe exiting...
[2026-06-12 04:36:08,279.279 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 04:36:08,282.282 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 04:36:08,285.285 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 04:36:10,323.323 INFO    ] ================================================
[2026-06-12 04:36:10,339.339 INFO    ] Launching Daemon at Fri Jun 12 04:36:10 IST 2026
[2026-06-12 04:36:10,349.349 INFO    ] ================================================
[2026-06-12 04:36:10,708.708 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 04:36:10
[2026-06-12 04:36:11,048.048 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 04:36:11,204.204 INFO    ] Initializing speech engine...
[2026-06-12 04:36:11,208.208 INFO    ] 2026-06-12 04:36:11
[2026-06-12 04:36:11,414.414 INFO    ] 2026-06-12 04:36:11
[2026-06-12 04:36:11,443.443 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 04:36:11,629.629 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 04:36:11,638.638 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 04:36:11,783.783 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 04:36:11,837.837 INFO    ] time= 12/06/2026 04:36:11
[2026-06-12 04:36:11,860.860 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 04:36:11,866.866 INFO    ] Checking for existing commands in stream...
[2026-06-12 04:36:11,934.934 INFO    ] No existing commands found in stream
[2026-06-12 04:36:16,948.948 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 04:36:16,952.952 INFO    ] Waiting 1.22 seconds before fallback handling...
[2026-06-12 04:36:18,562.562 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 04:36:18,564.564 INFO    ] Checking for system updates...
[2026-06-12 04:36:18,585.585 INFO    ] 200
[2026-06-12 04:36:18,587.587 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:36:18,620.620 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 04:36:18,621.621 INFO    ] No update needed
[2026-06-12 04:36:18,623.623 INFO    ] Checking for camera pi updates...
[2026-06-12 04:36:18,646.646 INFO    ] 200
[2026-06-12 04:36:18,648.648 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:36:18,676.676 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 04:36:18,714.714 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 04:36:18,716.716 INFO    ] No camera update needed
[2026-06-12 04:36:18,717.717 INFO    ] Script finished. Safe exiting...
[2026-06-12 04:36:18,719.719 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 04:36:18,722.722 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 04:36:18,725.725 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 04:36:20,764.764 INFO    ] ================================================
[2026-06-12 04:36:20,780.780 INFO    ] Launching Daemon at Fri Jun 12 04:36:20 IST 2026
[2026-06-12 04:36:20,791.791 INFO    ] ================================================
[2026-06-12 04:36:21,150.150 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 04:36:21
[2026-06-12 04:36:21,491.491 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 04:36:21,646.646 INFO    ] Initializing speech engine...
[2026-06-12 04:36:21,653.653 INFO    ] 2026-06-12 04:36:21
[2026-06-12 04:36:21,855.855 INFO    ] 2026-06-12 04:36:21
[2026-06-12 04:36:21,884.884 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 04:36:22,067.067 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 04:36:22,079.079 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 04:36:22,269.269 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 04:36:22,294.294 INFO    ] time= 12/06/2026 04:36:22
[2026-06-12 04:36:22,300.300 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 04:36:22,302.302 INFO    ] Checking for existing commands in stream...
[2026-06-12 04:36:22,368.368 INFO    ] No existing commands found in stream
[2026-06-12 04:36:27,393.393 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 04:36:27,396.396 INFO    ] Waiting 0.32 seconds before fallback handling...
[2026-06-12 04:36:28,140.140 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 04:36:28,142.142 INFO    ] Checking for system updates...
[2026-06-12 04:36:28,162.162 INFO    ] 200
[2026-06-12 04:36:28,164.164 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:36:28,195.195 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 04:36:28,197.197 INFO    ] No update needed
[2026-06-12 04:36:28,198.198 INFO    ] Checking for camera pi updates...
[2026-06-12 04:36:28,219.219 INFO    ] 200
[2026-06-12 04:36:28,220.220 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:36:28,246.246 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 04:36:28,285.285 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 04:36:28,287.287 INFO    ] No camera update needed
[2026-06-12 04:36:28,288.288 INFO    ] Script finished. Safe exiting...
[2026-06-12 04:36:28,290.290 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 04:36:28,293.293 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 04:36:28,296.296 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 04:36:30,335.335 INFO    ] ================================================
[2026-06-12 04:36:30,351.351 INFO    ] Launching Daemon at Fri Jun 12 04:36:30 IST 2026
[2026-06-12 04:36:30,362.362 INFO    ] ================================================
[2026-06-12 04:36:30,713.713 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 04:36:30
[2026-06-12 04:36:31,047.047 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 04:36:31,186.186 INFO    ] Initializing speech engine...
[2026-06-12 04:36:31,196.196 INFO    ] 2026-06-12 04:36:31
[2026-06-12 04:36:31,402.402 INFO    ] 2026-06-12 04:36:31
[2026-06-12 04:36:31,431.431 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 04:36:31,619.619 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 04:36:31,632.632 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 04:36:31,796.796 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 04:36:31,851.851 INFO    ] time= 12/06/2026 04:36:31
[2026-06-12 04:36:31,877.877 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 04:36:31,885.885 INFO    ] Checking for existing commands in stream...
[2026-06-12 04:36:31,957.957 INFO    ] No existing commands found in stream
[2026-06-12 04:36:36,972.972 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 04:36:36,975.975 INFO    ] Waiting 1.17 seconds before fallback handling...
[2026-06-12 04:36:38,540.540 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 04:36:38,542.542 INFO    ] Checking for system updates...
[2026-06-12 04:36:38,563.563 INFO    ] 200
[2026-06-12 04:36:38,564.564 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:36:38,595.595 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 04:36:38,596.596 INFO    ] No update needed
[2026-06-12 04:36:38,597.597 INFO    ] Checking for camera pi updates...
[2026-06-12 04:36:38,619.619 INFO    ] 200
[2026-06-12 04:36:38,620.620 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:36:38,647.647 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 04:36:38,696.696 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 04:36:38,698.698 INFO    ] No camera update needed
[2026-06-12 04:36:38,699.699 INFO    ] Script finished. Safe exiting...
[2026-06-12 04:36:38,700.700 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 04:36:38,703.703 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 04:36:38,706.706 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 04:36:40,745.745 INFO    ] ================================================
[2026-06-12 04:36:40,761.761 INFO    ] Launching Daemon at Fri Jun 12 04:36:40 IST 2026
[2026-06-12 04:36:40,773.773 INFO    ] ================================================
[2026-06-12 04:36:41,115.115 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 04:36:41
[2026-06-12 04:36:41,427.427 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 04:36:41,557.557 INFO    ] Initializing speech engine...
[2026-06-12 04:36:41,561.561 INFO    ] 2026-06-12 04:36:41
[2026-06-12 04:36:41,780.780 INFO    ] 2026-06-12 04:36:41
[2026-06-12 04:36:41,808.808 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 04:36:41,994.994 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 04:36:42,004.004 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 04:36:42,155.155 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 04:36:42,211.211 INFO    ] time= 12/06/2026 04:36:42
[2026-06-12 04:36:42,227.227 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 04:36:42,233.233 INFO    ] Checking for existing commands in stream...
[2026-06-12 04:36:42,301.301 INFO    ] No existing commands found in stream
[2026-06-12 04:36:47,315.315 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 04:36:47,318.318 INFO    ] Waiting 2.55 seconds before fallback handling...
[2026-06-12 04:36:50,238.238 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 04:36:50,240.240 INFO    ] Checking for system updates...
[2026-06-12 04:36:50,262.262 INFO    ] 200
[2026-06-12 04:36:50,263.263 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:36:50,295.295 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 04:36:50,297.297 INFO    ] No update needed
[2026-06-12 04:36:50,298.298 INFO    ] Checking for camera pi updates...
[2026-06-12 04:36:50,318.318 INFO    ] 200
[2026-06-12 04:36:50,319.319 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:36:50,344.344 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 04:36:50,390.390 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 04:36:50,391.391 INFO    ] No camera update needed
[2026-06-12 04:36:50,392.392 INFO    ] Script finished. Safe exiting...
[2026-06-12 04:36:50,394.394 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 04:36:50,397.397 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 04:36:50,399.399 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 04:36:52,440.440 INFO    ] ================================================
[2026-06-12 04:36:52,455.455 INFO    ] Launching Daemon at Fri Jun 12 04:36:52 IST 2026
[2026-06-12 04:36:52,467.467 INFO    ] ================================================
[2026-06-12 04:36:52,822.822 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 04:36:52
[2026-06-12 04:36:53,134.134 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 04:36:53,266.266 INFO    ] Initializing speech engine...
[2026-06-12 04:36:53,274.274 INFO    ] 2026-06-12 04:36:53
[2026-06-12 04:36:53,487.487 INFO    ] 2026-06-12 04:36:53
[2026-06-12 04:36:53,516.516 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 04:36:53,701.701 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 04:36:53,704.704 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 04:36:53,847.847 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 04:36:53,911.911 INFO    ] time= 12/06/2026 04:36:53
[2026-06-12 04:36:53,934.934 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 04:36:53,940.940 INFO    ] Checking for existing commands in stream...
[2026-06-12 04:36:54,007.007 INFO    ] No existing commands found in stream
[2026-06-12 04:36:59,036.036 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 04:36:59,039.039 INFO    ] Waiting 2.54 seconds before fallback handling...
[2026-06-12 04:37:01,977.977 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 04:37:01,981.981 INFO    ] Checking for system updates...
[2026-06-12 04:37:02,043.043 INFO    ] 200
[2026-06-12 04:37:02,045.045 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:37:02,106.106 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 04:37:02,108.108 INFO    ] No update needed
[2026-06-12 04:37:02,109.109 INFO    ] Checking for camera pi updates...
[2026-06-12 04:37:02,134.134 INFO    ] 200
[2026-06-12 04:37:02,135.135 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:37:02,166.166 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 04:37:02,207.207 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 04:37:02,210.210 INFO    ] No camera update needed
[2026-06-12 04:37:02,212.212 INFO    ] Script finished. Safe exiting...
[2026-06-12 04:37:02,215.215 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 04:37:02,220.220 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 04:37:02,225.225 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 04:37:04,266.266 INFO    ] ================================================
[2026-06-12 04:37:04,282.282 INFO    ] Launching Daemon at Fri Jun 12 04:37:04 IST 2026
[2026-06-12 04:37:04,293.293 INFO    ] ================================================
[2026-06-12 04:37:04,631.631 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 04:37:04
[2026-06-12 04:37:04,942.942 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 04:37:05,073.073 INFO    ] Initializing speech engine...
[2026-06-12 04:37:05,077.077 INFO    ] 2026-06-12 04:37:05
[2026-06-12 04:37:05,295.295 INFO    ] 2026-06-12 04:37:05
[2026-06-12 04:37:05,324.324 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 04:37:05,509.509 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 04:37:05,517.517 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 04:37:05,669.669 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 04:37:05,718.718 INFO    ] time= 12/06/2026 04:37:05
[2026-06-12 04:37:05,740.740 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 04:37:05,745.745 INFO    ] Checking for existing commands in stream...
[2026-06-12 04:37:05,813.813 INFO    ] No existing commands found in stream
[2026-06-12 04:37:10,827.827 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 04:37:10,830.830 INFO    ] Waiting 0.94 seconds before fallback handling...
[2026-06-12 04:37:12,190.190 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 04:37:12,192.192 INFO    ] Checking for system updates...
[2026-06-12 04:37:12,212.212 INFO    ] 200
[2026-06-12 04:37:12,214.214 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:37:12,247.247 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 04:37:12,248.248 INFO    ] No update needed
[2026-06-12 04:37:12,249.249 INFO    ] Checking for camera pi updates...
[2026-06-12 04:37:12,270.270 INFO    ] 200
[2026-06-12 04:37:12,271.271 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:37:12,295.295 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 04:37:12,332.332 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 04:37:12,333.333 INFO    ] No camera update needed
[2026-06-12 04:37:12,334.334 INFO    ] Script finished. Safe exiting...
[2026-06-12 04:37:12,336.336 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 04:37:12,338.338 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 04:37:12,341.341 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 04:37:14,381.381 INFO    ] ================================================
[2026-06-12 04:37:14,396.396 INFO    ] Launching Daemon at Fri Jun 12 04:37:14 IST 2026
[2026-06-12 04:37:14,406.406 INFO    ] ================================================
[2026-06-12 04:37:14,759.759 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 04:37:14
[2026-06-12 04:37:15,073.073 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 04:37:15,202.202 INFO    ] Initializing speech engine...
[2026-06-12 04:37:15,206.206 INFO    ] 2026-06-12 04:37:15
[2026-06-12 04:37:15,423.423 INFO    ] 2026-06-12 04:37:15
[2026-06-12 04:37:15,452.452 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 04:37:15,648.648 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 04:37:15,657.657 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 04:37:15,808.808 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 04:37:15,871.871 INFO    ] time= 12/06/2026 04:37:15
[2026-06-12 04:37:15,893.893 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 04:37:15,900.900 INFO    ] Checking for existing commands in stream...
[2026-06-12 04:37:15,996.996 INFO    ] No existing commands found in stream
[2026-06-12 04:37:21,011.011 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 04:37:21,013.013 INFO    ] Waiting 3.02 seconds before fallback handling...
[2026-06-12 04:37:24,402.402 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 04:37:24,404.404 INFO    ] Checking for system updates...
[2026-06-12 04:37:24,426.426 INFO    ] 200
[2026-06-12 04:37:24,428.428 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:37:24,460.460 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 04:37:24,462.462 INFO    ] No update needed
[2026-06-12 04:37:24,463.463 INFO    ] Checking for camera pi updates...
[2026-06-12 04:37:24,483.483 INFO    ] 200
[2026-06-12 04:37:24,484.484 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:37:24,507.507 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 04:37:24,548.548 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 04:37:24,550.550 INFO    ] No camera update needed
[2026-06-12 04:37:24,551.551 INFO    ] Script finished. Safe exiting...
[2026-06-12 04:37:24,553.553 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 04:37:24,556.556 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 04:37:24,558.558 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 04:37:26,598.598 INFO    ] ================================================
[2026-06-12 04:37:26,614.614 INFO    ] Launching Daemon at Fri Jun 12 04:37:26 IST 2026
[2026-06-12 04:37:26,625.625 INFO    ] ================================================
[2026-06-12 04:37:26,997.997 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 04:37:26
[2026-06-12 04:37:27,330.330 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 04:37:27,473.473 INFO    ] Initializing speech engine...
[2026-06-12 04:37:27,483.483 INFO    ] 2026-06-12 04:37:27
[2026-06-12 04:37:27,690.690 INFO    ] 2026-06-12 04:37:27
[2026-06-12 04:37:27,719.719 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 04:37:27,902.902 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 04:37:27,912.912 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 04:37:28,066.066 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 04:37:28,110.110 INFO    ] time= 12/06/2026 04:37:28
[2026-06-12 04:37:28,131.131 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 04:37:28,137.137 INFO    ] Checking for existing commands in stream...
[2026-06-12 04:37:28,205.205 INFO    ] No existing commands found in stream
[2026-06-12 04:37:33,224.224 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 04:37:33,227.227 INFO    ] Waiting 1.26 seconds before fallback handling...
[2026-06-12 04:37:34,931.931 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 04:37:34,933.933 INFO    ] Checking for system updates...
[2026-06-12 04:37:34,954.954 INFO    ] 200
[2026-06-12 04:37:34,956.956 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:37:34,986.986 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 04:37:34,987.987 INFO    ] No update needed
[2026-06-12 04:37:34,989.989 INFO    ] Checking for camera pi updates...
[2026-06-12 04:37:35,008.008 INFO    ] 200
[2026-06-12 04:37:35,009.009 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:37:35,033.033 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 04:37:35,073.073 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 04:37:35,074.074 INFO    ] No camera update needed
[2026-06-12 04:37:35,076.076 INFO    ] Script finished. Safe exiting...
[2026-06-12 04:37:35,077.077 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 04:37:35,080.080 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 04:37:35,083.083 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 04:37:37,121.121 INFO    ] ================================================
[2026-06-12 04:37:37,137.137 INFO    ] Launching Daemon at Fri Jun 12 04:37:37 IST 2026
[2026-06-12 04:37:37,148.148 INFO    ] ================================================
[2026-06-12 04:37:37,506.506 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 04:37:37
[2026-06-12 04:37:37,822.822 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 04:37:37,966.966 INFO    ] Initializing speech engine...
[2026-06-12 04:37:37,971.971 INFO    ] 2026-06-12 04:37:37
[2026-06-12 04:37:38,174.174 INFO    ] 2026-06-12 04:37:38
[2026-06-12 04:37:38,202.202 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 04:37:38,385.385 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 04:37:38,394.394 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 04:37:38,555.555 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 04:37:38,605.605 INFO    ] time= 12/06/2026 04:37:38
[2026-06-12 04:37:38,615.615 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 04:37:38,622.622 INFO    ] Checking for existing commands in stream...
[2026-06-12 04:37:38,688.688 INFO    ] No existing commands found in stream
[2026-06-12 04:37:43,703.703 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 04:37:43,706.706 INFO    ] Waiting 0.23 seconds before fallback handling...
[2026-06-12 04:37:44,368.368 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 04:37:44,370.370 INFO    ] Checking for system updates...
[2026-06-12 04:37:44,391.391 INFO    ] 200
[2026-06-12 04:37:44,393.393 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:37:44,425.425 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 04:37:44,426.426 INFO    ] No update needed
[2026-06-12 04:37:44,428.428 INFO    ] Checking for camera pi updates...
[2026-06-12 04:37:44,448.448 INFO    ] 200
[2026-06-12 04:37:44,450.450 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:37:44,475.475 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 04:37:44,511.511 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 04:37:44,512.512 INFO    ] No camera update needed
[2026-06-12 04:37:44,513.513 INFO    ] Script finished. Safe exiting...
[2026-06-12 04:37:44,514.514 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 04:37:44,517.517 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 04:37:44,521.521 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 04:37:46,561.561 INFO    ] ================================================
[2026-06-12 04:37:46,576.576 INFO    ] Launching Daemon at Fri Jun 12 04:37:46 IST 2026
[2026-06-12 04:37:46,587.587 INFO    ] ================================================
[2026-06-12 04:37:46,933.933 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 04:37:46
[2026-06-12 04:37:47,250.250 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 04:37:47,381.381 INFO    ] Initializing speech engine...
[2026-06-12 04:37:47,386.386 INFO    ] 2026-06-12 04:37:47
[2026-06-12 04:37:47,603.603 INFO    ] 2026-06-12 04:37:47
[2026-06-12 04:37:47,632.632 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 04:37:47,818.818 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 04:37:47,827.827 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 04:37:47,978.978 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 04:37:48,028.028 INFO    ] time= 12/06/2026 04:37:47
[2026-06-12 04:37:48,050.050 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 04:37:48,056.056 INFO    ] Checking for existing commands in stream...
[2026-06-12 04:37:48,123.123 INFO    ] No existing commands found in stream
[2026-06-12 04:37:53,148.148 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 04:37:53,151.151 INFO    ] Waiting 3.32 seconds before fallback handling...
[2026-06-12 04:37:56,850.850 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 04:37:56,851.851 INFO    ] Checking for system updates...
[2026-06-12 04:37:56,872.872 INFO    ] 200
[2026-06-12 04:37:56,874.874 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:37:56,906.906 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 04:37:56,907.907 INFO    ] No update needed
[2026-06-12 04:37:56,909.909 INFO    ] Checking for camera pi updates...
[2026-06-12 04:37:56,928.928 INFO    ] 200
[2026-06-12 04:37:56,929.929 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:37:56,953.953 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 04:37:56,991.991 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 04:37:56,992.992 INFO    ] No camera update needed
[2026-06-12 04:37:56,993.993 INFO    ] Script finished. Safe exiting...
[2026-06-12 04:37:56,995.995 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 04:37:56,997.997 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 04:37:57,000.000 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 04:37:59,039.039 INFO    ] ================================================
[2026-06-12 04:37:59,055.055 INFO    ] Launching Daemon at Fri Jun 12 04:37:59 IST 2026
[2026-06-12 04:37:59,066.066 INFO    ] ================================================
[2026-06-12 04:37:59,425.425 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 04:37:59
[2026-06-12 04:37:59,736.736 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 04:37:59,883.883 INFO    ] Initializing speech engine...
[2026-06-12 04:37:59,886.886 INFO    ] 2026-06-12 04:37:59
[2026-06-12 04:38:00,092.092 INFO    ] 2026-06-12 04:38:00
[2026-06-12 04:38:00,120.120 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 04:38:00,307.307 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 04:38:00,317.317 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 04:38:00,488.488 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 04:38:00,534.534 INFO    ] time= 12/06/2026 04:38:00
[2026-06-12 04:38:00,540.540 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 04:38:00,545.545 INFO    ] Checking for existing commands in stream...
[2026-06-12 04:38:00,612.612 INFO    ] No existing commands found in stream
[2026-06-12 04:38:05,623.623 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 04:38:05,625.625 INFO    ] Waiting 0.96 seconds before fallback handling...
[2026-06-12 04:38:06,972.972 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 04:38:06,973.973 INFO    ] Checking for system updates...
[2026-06-12 04:38:06,994.994 INFO    ] 200
[2026-06-12 04:38:06,995.995 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:38:07,026.026 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 04:38:07,027.027 INFO    ] No update needed
[2026-06-12 04:38:07,029.029 INFO    ] Checking for camera pi updates...
[2026-06-12 04:38:07,048.048 INFO    ] 200
[2026-06-12 04:38:07,049.049 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:38:07,075.075 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 04:38:07,217.217 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 04:38:07,219.219 INFO    ] No camera update needed
[2026-06-12 04:38:07,220.220 INFO    ] Script finished. Safe exiting...
[2026-06-12 04:38:07,221.221 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 04:38:07,224.224 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 04:38:07,227.227 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 04:38:09,267.267 INFO    ] ================================================
[2026-06-12 04:38:09,282.282 INFO    ] Launching Daemon at Fri Jun 12 04:38:09 IST 2026
[2026-06-12 04:38:09,294.294 INFO    ] ================================================
[2026-06-12 04:38:09,648.648 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 04:38:09
[2026-06-12 04:38:09,959.959 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 04:38:10,101.101 INFO    ] Initializing speech engine...
[2026-06-12 04:38:10,106.106 INFO    ] 2026-06-12 04:38:10
[2026-06-12 04:38:10,312.312 INFO    ] 2026-06-12 04:38:10
[2026-06-12 04:38:10,341.341 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 04:38:10,527.527 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 04:38:10,536.536 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 04:38:10,687.687 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 04:38:10,737.737 INFO    ] time= 12/06/2026 04:38:10
[2026-06-12 04:38:10,759.759 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 04:38:10,764.764 INFO    ] Checking for existing commands in stream...
[2026-06-12 04:38:10,832.832 INFO    ] No existing commands found in stream
[2026-06-12 04:38:15,842.842 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 04:38:15,844.844 INFO    ] Waiting 1.07 seconds before fallback handling...
[2026-06-12 04:38:17,279.279 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 04:38:17,280.280 INFO    ] Checking for system updates...
[2026-06-12 04:38:17,302.302 INFO    ] 200
[2026-06-12 04:38:17,303.303 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:38:17,335.335 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 04:38:17,336.336 INFO    ] No update needed
[2026-06-12 04:38:17,337.337 INFO    ] Checking for camera pi updates...
[2026-06-12 04:38:17,358.358 INFO    ] 200
[2026-06-12 04:38:17,359.359 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:38:17,382.382 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 04:38:17,421.421 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 04:38:17,423.423 INFO    ] No camera update needed
[2026-06-12 04:38:17,424.424 INFO    ] Script finished. Safe exiting...
[2026-06-12 04:38:17,425.425 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 04:38:17,428.428 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 04:38:17,431.431 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 04:38:19,469.469 INFO    ] ================================================
[2026-06-12 04:38:19,484.484 INFO    ] Launching Daemon at Fri Jun 12 04:38:19 IST 2026
[2026-06-12 04:38:19,496.496 INFO    ] ================================================
[2026-06-12 04:38:19,822.822 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 04:38:19
[2026-06-12 04:38:20,133.133 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 04:38:20,270.270 INFO    ] Initializing speech engine...
[2026-06-12 04:38:20,280.280 INFO    ] 2026-06-12 04:38:20
[2026-06-12 04:38:20,485.485 INFO    ] 2026-06-12 04:38:20
[2026-06-12 04:38:20,514.514 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 04:38:20,699.699 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 04:38:20,709.709 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 04:38:20,845.845 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 04:38:20,908.908 INFO    ] time= 12/06/2026 04:38:20
[2026-06-12 04:38:20,932.932 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 04:38:20,939.939 INFO    ] Checking for existing commands in stream...
[2026-06-12 04:38:21,006.006 INFO    ] No existing commands found in stream
[2026-06-12 04:38:26,015.015 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 04:38:26,018.018 INFO    ] Waiting 0.10 seconds before fallback handling...
[2026-06-12 04:38:26,508.508 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 04:38:26,510.510 INFO    ] Checking for system updates...
[2026-06-12 04:38:26,533.533 INFO    ] 200
[2026-06-12 04:38:26,534.534 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:38:26,571.571 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 04:38:26,572.572 INFO    ] No update needed
[2026-06-12 04:38:26,574.574 INFO    ] Checking for camera pi updates...
[2026-06-12 04:38:26,597.597 INFO    ] 200
[2026-06-12 04:38:26,599.599 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:38:26,631.631 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 04:38:26,671.671 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 04:38:26,673.673 INFO    ] No camera update needed
[2026-06-12 04:38:26,674.674 INFO    ] Script finished. Safe exiting...
[2026-06-12 04:38:26,676.676 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 04:38:26,679.679 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 04:38:26,682.682 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 04:38:28,720.720 INFO    ] ================================================
[2026-06-12 04:38:28,737.737 INFO    ] Launching Daemon at Fri Jun 12 04:38:28 IST 2026
[2026-06-12 04:38:28,748.748 INFO    ] ================================================
[2026-06-12 04:38:29,107.107 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 04:38:29
[2026-06-12 04:38:29,421.421 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 04:38:29,552.552 INFO    ] Initializing speech engine...
[2026-06-12 04:38:29,568.568 INFO    ] 2026-06-12 04:38:29
[2026-06-12 04:38:29,805.805 INFO    ] 2026-06-12 04:38:29
[2026-06-12 04:38:29,837.837 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 04:38:30,044.044 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 04:38:30,055.055 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 04:38:30,260.260 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 04:38:30,298.298 INFO    ] time= 12/06/2026 04:38:30
[2026-06-12 04:38:30,299.299 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 04:38:30,307.307 INFO    ] Checking for existing commands in stream...
[2026-06-12 04:38:30,376.376 INFO    ] No existing commands found in stream
[2026-06-12 04:38:35,391.391 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 04:38:35,394.394 INFO    ] Waiting 3.48 seconds before fallback handling...
[2026-06-12 04:38:39,267.267 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 04:38:39,268.268 INFO    ] Checking for system updates...
[2026-06-12 04:38:39,290.290 INFO    ] 200
[2026-06-12 04:38:39,291.291 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:38:39,324.324 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 04:38:39,326.326 INFO    ] No update needed
[2026-06-12 04:38:39,327.327 INFO    ] Checking for camera pi updates...
[2026-06-12 04:38:39,348.348 INFO    ] 200
[2026-06-12 04:38:39,349.349 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:38:39,373.373 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 04:38:39,409.409 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 04:38:39,410.410 INFO    ] No camera update needed
[2026-06-12 04:38:39,412.412 INFO    ] Script finished. Safe exiting...
[2026-06-12 04:38:39,413.413 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 04:38:39,416.416 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 04:38:39,419.419 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 04:38:41,457.457 INFO    ] ================================================
[2026-06-12 04:38:41,473.473 INFO    ] Launching Daemon at Fri Jun 12 04:38:41 IST 2026
[2026-06-12 04:38:41,484.484 INFO    ] ================================================
[2026-06-12 04:38:41,837.837 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 04:38:41
[2026-06-12 04:38:42,174.174 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 04:38:42,319.319 INFO    ] Initializing speech engine...
[2026-06-12 04:38:42,324.324 INFO    ] 2026-06-12 04:38:42
[2026-06-12 04:38:42,527.527 INFO    ] 2026-06-12 04:38:42
[2026-06-12 04:38:42,554.554 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 04:38:42,738.738 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 04:38:42,741.741 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 04:38:42,897.897 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 04:38:42,945.945 INFO    ] time= 12/06/2026 04:38:42
[2026-06-12 04:38:42,967.967 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 04:38:42,973.973 INFO    ] Checking for existing commands in stream...
[2026-06-12 04:38:43,064.064 INFO    ] No existing commands found in stream
[2026-06-12 04:38:48,072.072 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 04:38:48,075.075 INFO    ] Waiting 1.10 seconds before fallback handling...
[2026-06-12 04:38:49,608.608 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 04:38:49,610.610 INFO    ] Checking for system updates...
[2026-06-12 04:38:49,631.631 INFO    ] 200
[2026-06-12 04:38:49,632.632 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:38:49,664.664 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 04:38:49,666.666 INFO    ] No update needed
[2026-06-12 04:38:49,667.667 INFO    ] Checking for camera pi updates...
[2026-06-12 04:38:49,688.688 INFO    ] 200
[2026-06-12 04:38:49,689.689 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:38:49,712.712 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 04:38:49,751.751 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 04:38:49,753.753 INFO    ] No camera update needed
[2026-06-12 04:38:49,754.754 INFO    ] Script finished. Safe exiting...
[2026-06-12 04:38:49,755.755 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 04:38:49,758.758 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 04:38:49,761.761 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 04:38:51,802.802 INFO    ] ================================================
[2026-06-12 04:38:51,818.818 INFO    ] Launching Daemon at Fri Jun 12 04:38:51 IST 2026
[2026-06-12 04:38:51,829.829 INFO    ] ================================================
[2026-06-12 04:38:52,199.199 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 04:38:52
[2026-06-12 04:38:52,512.512 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 04:38:52,643.643 INFO    ] Initializing speech engine...
[2026-06-12 04:38:52,646.646 INFO    ] 2026-06-12 04:38:52
[2026-06-12 04:38:52,865.865 INFO    ] 2026-06-12 04:38:52
[2026-06-12 04:38:52,894.894 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 04:38:53,079.079 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 04:38:53,083.083 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 04:38:53,220.220 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 04:38:53,284.284 INFO    ] time= 12/06/2026 04:38:53
[2026-06-12 04:38:53,313.313 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 04:38:53,314.314 INFO    ] Checking for existing commands in stream...
[2026-06-12 04:38:53,387.387 INFO    ] No existing commands found in stream
[2026-06-12 04:38:58,406.406 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 04:38:58,408.408 INFO    ] Waiting 3.74 seconds before fallback handling...
[2026-06-12 04:39:02,497.497 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 04:39:02,498.498 INFO    ] Checking for system updates...
[2026-06-12 04:39:02,520.520 INFO    ] 200
[2026-06-12 04:39:02,521.521 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:39:02,554.554 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 04:39:02,555.555 INFO    ] No update needed
[2026-06-12 04:39:02,556.556 INFO    ] Checking for camera pi updates...
[2026-06-12 04:39:02,575.575 INFO    ] 200
[2026-06-12 04:39:02,577.577 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:39:02,599.599 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 04:39:02,626.626 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 04:39:02,628.628 INFO    ] No camera update needed
[2026-06-12 04:39:02,629.629 INFO    ] Script finished. Safe exiting...
[2026-06-12 04:39:02,630.630 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 04:39:02,633.633 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 04:39:02,636.636 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 04:39:04,675.675 INFO    ] ================================================
[2026-06-12 04:39:04,691.691 INFO    ] Launching Daemon at Fri Jun 12 04:39:04 IST 2026
[2026-06-12 04:39:04,703.703 INFO    ] ================================================
[2026-06-12 04:39:05,061.061 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 04:39:05
[2026-06-12 04:39:05,374.374 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 04:39:05,514.514 INFO    ] Initializing speech engine...
[2026-06-12 04:39:05,525.525 INFO    ] 2026-06-12 04:39:05
[2026-06-12 04:39:05,738.738 INFO    ] 2026-06-12 04:39:05
[2026-06-12 04:39:05,766.766 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 04:39:05,949.949 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 04:39:05,959.959 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 04:39:06,119.119 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 04:39:06,157.157 INFO    ] time= 12/06/2026 04:39:06
[2026-06-12 04:39:06,179.179 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 04:39:06,185.185 INFO    ] Checking for existing commands in stream...
[2026-06-12 04:39:06,252.252 INFO    ] No existing commands found in stream
[2026-06-12 04:39:11,266.266 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 04:39:11,269.269 INFO    ] Waiting 2.91 seconds before fallback handling...
[2026-06-12 04:39:14,559.559 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 04:39:14,561.561 INFO    ] Checking for system updates...
[2026-06-12 04:39:14,583.583 INFO    ] 200
[2026-06-12 04:39:14,584.584 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:39:14,617.617 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 04:39:14,618.618 INFO    ] No update needed
[2026-06-12 04:39:14,619.619 INFO    ] Checking for camera pi updates...
[2026-06-12 04:39:14,640.640 INFO    ] 200
[2026-06-12 04:39:14,641.641 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:39:14,666.666 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 04:39:14,703.703 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 04:39:14,705.705 INFO    ] No camera update needed
[2026-06-12 04:39:14,706.706 INFO    ] Script finished. Safe exiting...
[2026-06-12 04:39:14,707.707 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 04:39:14,710.710 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 04:39:14,713.713 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 04:39:16,753.753 INFO    ] ================================================
[2026-06-12 04:39:16,769.769 INFO    ] Launching Daemon at Fri Jun 12 04:39:16 IST 2026
[2026-06-12 04:39:16,780.780 INFO    ] ================================================
[2026-06-12 04:39:17,149.149 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 04:39:17
[2026-06-12 04:39:17,460.460 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 04:39:17,591.591 INFO    ] Initializing speech engine...
[2026-06-12 04:39:17,595.595 INFO    ] 2026-06-12 04:39:17
[2026-06-12 04:39:17,812.812 INFO    ] 2026-06-12 04:39:17
[2026-06-12 04:39:17,841.841 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 04:39:18,026.026 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 04:39:18,036.036 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 04:39:18,214.214 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 04:39:18,254.254 INFO    ] time= 12/06/2026 04:39:18
[2026-06-12 04:39:18,259.259 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 04:39:18,265.265 INFO    ] Checking for existing commands in stream...
[2026-06-12 04:39:18,331.331 INFO    ] No existing commands found in stream
[2026-06-12 04:39:23,341.341 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 04:39:23,344.344 INFO    ] Waiting 2.96 seconds before fallback handling...
[2026-06-12 04:39:26,693.693 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 04:39:26,695.695 INFO    ] Checking for system updates...
[2026-06-12 04:39:26,716.716 INFO    ] 200
[2026-06-12 04:39:26,717.717 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:39:26,750.750 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 04:39:26,752.752 INFO    ] No update needed
[2026-06-12 04:39:26,753.753 INFO    ] Checking for camera pi updates...
[2026-06-12 04:39:26,772.772 INFO    ] 200
[2026-06-12 04:39:26,773.773 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:39:26,796.796 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 04:39:26,833.833 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 04:39:26,834.834 INFO    ] No camera update needed
[2026-06-12 04:39:26,836.836 INFO    ] Script finished. Safe exiting...
[2026-06-12 04:39:26,837.837 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 04:39:26,840.840 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 04:39:26,843.843 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 04:39:28,874.874 INFO    ] ================================================
[2026-06-12 04:39:28,890.890 INFO    ] Launching Daemon at Fri Jun 12 04:39:28 IST 2026
[2026-06-12 04:39:28,902.902 INFO    ] ================================================
[2026-06-12 04:39:29,271.271 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 04:39:29
[2026-06-12 04:39:29,586.586 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 04:39:29,716.716 INFO    ] Initializing speech engine...
[2026-06-12 04:39:29,720.720 INFO    ] 2026-06-12 04:39:29
[2026-06-12 04:39:29,940.940 INFO    ] 2026-06-12 04:39:29
[2026-06-12 04:39:29,969.969 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 04:39:30,164.164 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 04:39:30,181.181 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 04:39:30,363.363 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 04:39:30,387.387 INFO    ] time= 12/06/2026 04:39:30
[2026-06-12 04:39:30,393.393 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 04:39:30,395.395 INFO    ] Checking for existing commands in stream...
[2026-06-12 04:39:30,463.463 INFO    ] No existing commands found in stream
[2026-06-12 04:39:35,477.477 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 04:39:35,480.480 INFO    ] Waiting 2.29 seconds before fallback handling...
[2026-06-12 04:39:38,155.155 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 04:39:38,156.156 INFO    ] Checking for system updates...
[2026-06-12 04:39:38,178.178 INFO    ] 200
[2026-06-12 04:39:38,180.180 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:39:38,210.210 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 04:39:38,211.211 INFO    ] No update needed
[2026-06-12 04:39:38,213.213 INFO    ] Checking for camera pi updates...
[2026-06-12 04:39:38,232.232 INFO    ] 200
[2026-06-12 04:39:38,233.233 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:39:38,256.256 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 04:39:38,295.295 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 04:39:38,296.296 INFO    ] No camera update needed
[2026-06-12 04:39:38,298.298 INFO    ] Script finished. Safe exiting...
[2026-06-12 04:39:38,299.299 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 04:39:38,302.302 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 04:39:38,305.305 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 04:39:40,344.344 INFO    ] ================================================
[2026-06-12 04:39:40,361.361 INFO    ] Launching Daemon at Fri Jun 12 04:39:40 IST 2026
[2026-06-12 04:39:40,372.372 INFO    ] ================================================
[2026-06-12 04:39:40,717.717 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 04:39:40
[2026-06-12 04:39:41,032.032 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 04:39:41,163.163 INFO    ] Initializing speech engine...
[2026-06-12 04:39:41,168.168 INFO    ] 2026-06-12 04:39:41
[2026-06-12 04:39:41,388.388 INFO    ] 2026-06-12 04:39:41
[2026-06-12 04:39:41,416.416 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 04:39:41,572.572 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 04:39:41,606.606 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 04:39:41,739.739 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 04:39:41,805.805 INFO    ] time= 12/06/2026 04:39:41
[2026-06-12 04:39:41,839.839 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 04:39:41,841.841 INFO    ] Checking for existing commands in stream...
[2026-06-12 04:39:41,938.938 INFO    ] No existing commands found in stream
[2026-06-12 04:39:46,947.947 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 04:39:46,949.949 INFO    ] Waiting 0.32 seconds before fallback handling...
[2026-06-12 04:39:47,643.643 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 04:39:47,644.644 INFO    ] Checking for system updates...
[2026-06-12 04:39:47,666.666 INFO    ] 200
[2026-06-12 04:39:47,668.668 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:39:47,701.701 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 04:39:47,702.702 INFO    ] No update needed
[2026-06-12 04:39:47,703.703 INFO    ] Checking for camera pi updates...
[2026-06-12 04:39:47,724.724 INFO    ] 200
[2026-06-12 04:39:47,725.725 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:39:47,748.748 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 04:39:47,784.784 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 04:39:47,785.785 INFO    ] No camera update needed
[2026-06-12 04:39:47,786.786 INFO    ] Script finished. Safe exiting...
[2026-06-12 04:39:47,787.787 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 04:39:47,790.790 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 04:39:47,793.793 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 04:39:49,834.834 INFO    ] ================================================
[2026-06-12 04:39:49,851.851 INFO    ] Launching Daemon at Fri Jun 12 04:39:49 IST 2026
[2026-06-12 04:39:49,862.862 INFO    ] ================================================
[2026-06-12 04:39:50,252.252 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 04:39:50
[2026-06-12 04:39:50,593.593 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 04:39:50,746.746 INFO    ] Initializing speech engine...
[2026-06-12 04:39:50,752.752 INFO    ] 2026-06-12 04:39:50
[2026-06-12 04:39:50,960.960 INFO    ] 2026-06-12 04:39:50
[2026-06-12 04:39:50,987.987 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 04:39:51,173.173 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 04:39:51,183.183 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 04:39:51,314.314 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 04:39:51,381.381 INFO    ] time= 12/06/2026 04:39:51
[2026-06-12 04:39:51,405.405 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 04:39:51,411.411 INFO    ] Checking for existing commands in stream...
[2026-06-12 04:39:51,479.479 INFO    ] No existing commands found in stream
[2026-06-12 04:39:56,493.493 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 04:39:56,496.496 INFO    ] Waiting 3.24 seconds before fallback handling...
[2026-06-12 04:40:00,177.177 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 04:40:00,178.178 INFO    ] Checking for system updates...
[2026-06-12 04:40:00,200.200 INFO    ] 200
[2026-06-12 04:40:00,202.202 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:40:00,232.232 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 04:40:00,236.236 INFO    ] No update needed
[2026-06-12 04:40:00,238.238 INFO    ] Checking for camera pi updates...
[2026-06-12 04:40:00,258.258 INFO    ] 200
[2026-06-12 04:40:00,259.259 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:40:00,292.292 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 04:40:00,330.330 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 04:40:00,332.332 INFO    ] No camera update needed
[2026-06-12 04:40:00,333.333 INFO    ] Script finished. Safe exiting...
[2026-06-12 04:40:00,334.334 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 04:40:00,337.337 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 04:40:00,340.340 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 04:40:02,377.377 INFO    ] ================================================
[2026-06-12 04:40:02,394.394 INFO    ] Launching Daemon at Fri Jun 12 04:40:02 IST 2026
[2026-06-12 04:40:02,406.406 INFO    ] ================================================
[2026-06-12 04:40:02,785.785 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 04:40:02
[2026-06-12 04:40:03,126.126 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 04:40:03,271.271 INFO    ] Initializing speech engine...
[2026-06-12 04:40:03,277.277 INFO    ] 2026-06-12 04:40:03
[2026-06-12 04:40:03,479.479 INFO    ] 2026-06-12 04:40:03
[2026-06-12 04:40:03,508.508 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 04:40:03,691.691 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 04:40:03,694.694 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 04:40:03,827.827 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 04:40:03,889.889 INFO    ] time= 12/06/2026 04:40:03
[2026-06-12 04:40:03,921.921 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 04:40:03,928.928 INFO    ] Checking for existing commands in stream...
[2026-06-12 04:40:03,994.994 INFO    ] No existing commands found in stream
[2026-06-12 04:40:09,003.003 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 04:40:09,006.006 INFO    ] Waiting 3.68 seconds before fallback handling...
[2026-06-12 04:40:13,090.090 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 04:40:13,092.092 INFO    ] Checking for system updates...
[2026-06-12 04:40:13,112.112 INFO    ] 200
[2026-06-12 04:40:13,114.114 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:40:13,147.147 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 04:40:13,148.148 INFO    ] No update needed
[2026-06-12 04:40:13,149.149 INFO    ] Checking for camera pi updates...
[2026-06-12 04:40:13,170.170 INFO    ] 200
[2026-06-12 04:40:13,172.172 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:40:13,197.197 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 04:40:13,337.337 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 04:40:13,339.339 INFO    ] No camera update needed
[2026-06-12 04:40:13,340.340 INFO    ] Script finished. Safe exiting...
[2026-06-12 04:40:13,342.342 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 04:40:13,345.345 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 04:40:13,347.347 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 04:40:15,386.386 INFO    ] ================================================
[2026-06-12 04:40:15,402.402 INFO    ] Launching Daemon at Fri Jun 12 04:40:15 IST 2026
[2026-06-12 04:40:15,413.413 INFO    ] ================================================
[2026-06-12 04:40:15,740.740 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 04:40:15
[2026-06-12 04:40:16,057.057 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 04:40:16,200.200 INFO    ] Initializing speech engine...
[2026-06-12 04:40:16,205.205 INFO    ] 2026-06-12 04:40:16
[2026-06-12 04:40:16,409.409 INFO    ] 2026-06-12 04:40:16
[2026-06-12 04:40:16,438.438 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 04:40:16,631.631 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 04:40:16,645.645 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 04:40:16,822.822 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 04:40:16,847.847 INFO    ] time= 12/06/2026 04:40:16
[2026-06-12 04:40:16,853.853 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 04:40:16,854.854 INFO    ] Checking for existing commands in stream...
[2026-06-12 04:40:16,921.921 INFO    ] No existing commands found in stream
[2026-06-12 04:40:21,930.930 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 04:40:21,933.933 INFO    ] Waiting 0.89 seconds before fallback handling...
[2026-06-12 04:40:23,197.197 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 04:40:23,198.198 INFO    ] Checking for system updates...
[2026-06-12 04:40:23,218.218 INFO    ] 200
[2026-06-12 04:40:23,220.220 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:40:23,251.251 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 04:40:23,252.252 INFO    ] No update needed
[2026-06-12 04:40:23,254.254 INFO    ] Checking for camera pi updates...
[2026-06-12 04:40:23,275.275 INFO    ] 200
[2026-06-12 04:40:23,276.276 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:40:23,299.299 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 04:40:23,354.354 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 04:40:23,356.356 INFO    ] No camera update needed
[2026-06-12 04:40:23,357.357 INFO    ] Script finished. Safe exiting...
[2026-06-12 04:40:23,358.358 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 04:40:23,361.361 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 04:40:23,364.364 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 04:40:25,404.404 INFO    ] ================================================
[2026-06-12 04:40:25,420.420 INFO    ] Launching Daemon at Fri Jun 12 04:40:25 IST 2026
[2026-06-12 04:40:25,432.432 INFO    ] ================================================
[2026-06-12 04:40:25,759.759 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 04:40:25
[2026-06-12 04:40:26,072.072 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 04:40:26,203.203 INFO    ] Initializing speech engine...
[2026-06-12 04:40:26,206.206 INFO    ] 2026-06-12 04:40:26
[2026-06-12 04:40:26,424.424 INFO    ] 2026-06-12 04:40:26
[2026-06-12 04:40:26,453.453 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 04:40:26,639.639 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 04:40:26,648.648 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 04:40:26,796.796 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 04:40:26,849.849 INFO    ] time= 12/06/2026 04:40:26
[2026-06-12 04:40:26,873.873 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 04:40:26,879.879 INFO    ] Checking for existing commands in stream...
[2026-06-12 04:40:26,947.947 INFO    ] No existing commands found in stream
[2026-06-12 04:40:31,955.955 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 04:40:31,957.957 INFO    ] Waiting 3.46 seconds before fallback handling...
[2026-06-12 04:40:35,797.797 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 04:40:35,799.799 INFO    ] Checking for system updates...
[2026-06-12 04:40:35,820.820 INFO    ] 200
[2026-06-12 04:40:35,821.821 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:40:35,854.854 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 04:40:35,856.856 INFO    ] No update needed
[2026-06-12 04:40:35,857.857 INFO    ] Checking for camera pi updates...
[2026-06-12 04:40:35,878.878 INFO    ] 200
[2026-06-12 04:40:35,879.879 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:40:35,905.905 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 04:40:35,945.945 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 04:40:35,947.947 INFO    ] No camera update needed
[2026-06-12 04:40:35,948.948 INFO    ] Script finished. Safe exiting...
[2026-06-12 04:40:35,949.949 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 04:40:35,953.953 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 04:40:35,955.955 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 04:40:38,996.996 INFO    ] ================================================
[2026-06-12 04:40:38,012.012 INFO    ] Launching Daemon at Fri Jun 12 04:40:38 IST 2026
[2026-06-12 04:40:38,023.023 INFO    ] ================================================
[2026-06-12 04:40:38,377.377 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 04:40:38
[2026-06-12 04:40:38,688.688 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 04:40:38,831.831 INFO    ] Initializing speech engine...
[2026-06-12 04:40:38,835.835 INFO    ] 2026-06-12 04:40:38
[2026-06-12 04:40:39,038.038 INFO    ] 2026-06-12 04:40:39
[2026-06-12 04:40:39,067.067 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 04:40:39,248.248 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 04:40:39,258.258 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 04:40:39,408.408 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 04:40:39,460.460 INFO    ] time= 12/06/2026 04:40:39
[2026-06-12 04:40:39,482.482 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 04:40:39,488.488 INFO    ] Checking for existing commands in stream...
[2026-06-12 04:40:39,555.555 INFO    ] No existing commands found in stream
[2026-06-12 04:40:44,569.569 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 04:40:44,572.572 INFO    ] Waiting 3.02 seconds before fallback handling...
[2026-06-12 04:40:47,967.967 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 04:40:47,969.969 INFO    ] Checking for system updates...
[2026-06-12 04:40:47,989.989 INFO    ] 200
[2026-06-12 04:40:47,991.991 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:40:48,021.021 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 04:40:48,022.022 INFO    ] No update needed
[2026-06-12 04:40:48,024.024 INFO    ] Checking for camera pi updates...
[2026-06-12 04:40:48,045.045 INFO    ] 200
[2026-06-12 04:40:48,046.046 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:40:48,071.071 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 04:40:48,110.110 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 04:40:48,111.111 INFO    ] No camera update needed
[2026-06-12 04:40:48,112.112 INFO    ] Script finished. Safe exiting...
[2026-06-12 04:40:48,114.114 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 04:40:48,117.117 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 04:40:48,119.119 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 04:40:50,160.160 INFO    ] ================================================
[2026-06-12 04:40:50,180.180 INFO    ] Launching Daemon at Fri Jun 12 04:40:50 IST 2026
[2026-06-12 04:40:50,191.191 INFO    ] ================================================
[2026-06-12 04:40:50,544.544 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 04:40:50
[2026-06-12 04:40:50,886.886 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 04:40:51,039.039 INFO    ] Initializing speech engine...
[2026-06-12 04:40:51,046.046 INFO    ] 2026-06-12 04:40:51
[2026-06-12 04:40:51,255.255 INFO    ] 2026-06-12 04:40:51
[2026-06-12 04:40:51,285.285 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 04:40:51,474.474 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 04:40:51,484.484 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 04:40:51,667.667 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 04:40:51,706.706 INFO    ] time= 12/06/2026 04:40:51
[2026-06-12 04:40:51,713.713 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 04:40:51,715.715 INFO    ] Checking for existing commands in stream...
[2026-06-12 04:40:51,783.783 INFO    ] No existing commands found in stream
[2026-06-12 04:40:56,797.797 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 04:40:56,801.801 INFO    ] Waiting 2.79 seconds before fallback handling...
[2026-06-12 04:40:59,975.975 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 04:40:59,976.976 INFO    ] Checking for system updates...
[2026-06-12 04:40:59,997.997 INFO    ] 200
[2026-06-12 04:40:59,999.999 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:41:00,029.029 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 04:41:00,031.031 INFO    ] No update needed
[2026-06-12 04:41:00,032.032 INFO    ] Checking for camera pi updates...
[2026-06-12 04:41:00,052.052 INFO    ] 200
[2026-06-12 04:41:00,054.054 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:41:00,079.079 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 04:41:00,115.115 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 04:41:00,117.117 INFO    ] No camera update needed
[2026-06-12 04:41:00,118.118 INFO    ] Script finished. Safe exiting...
[2026-06-12 04:41:00,119.119 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 04:41:00,123.123 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 04:41:00,126.126 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 04:41:02,162.162 INFO    ] ================================================
[2026-06-12 04:41:02,170.170 INFO    ] Launching Daemon at Fri Jun 12 04:41:02 IST 2026
[2026-06-12 04:41:02,176.176 INFO    ] ================================================
[2026-06-12 04:41:02,488.488 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 04:41:02
[2026-06-12 04:41:02,799.799 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 04:41:02,929.929 INFO    ] Initializing speech engine...
[2026-06-12 04:41:02,933.933 INFO    ] 2026-06-12 04:41:02
[2026-06-12 04:41:03,152.152 INFO    ] 2026-06-12 04:41:03
[2026-06-12 04:41:03,181.181 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 04:41:03,367.367 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 04:41:03,376.376 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 04:41:03,518.518 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 04:41:03,577.577 INFO    ] time= 12/06/2026 04:41:03
[2026-06-12 04:41:03,600.600 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 04:41:03,607.607 INFO    ] Checking for existing commands in stream...
[2026-06-12 04:41:03,674.674 INFO    ] No existing commands found in stream
[2026-06-12 04:41:08,688.688 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 04:41:08,691.691 INFO    ] Waiting 1.37 seconds before fallback handling...
[2026-06-12 04:41:10,436.436 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 04:41:10,437.437 INFO    ] Checking for system updates...
[2026-06-12 04:41:10,459.459 INFO    ] 200
[2026-06-12 04:41:10,461.461 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:41:10,494.494 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 04:41:10,495.495 INFO    ] No update needed
[2026-06-12 04:41:10,496.496 INFO    ] Checking for camera pi updates...
[2026-06-12 04:41:10,517.517 INFO    ] 200
[2026-06-12 04:41:10,519.519 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:41:10,550.550 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 04:41:10,591.591 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 04:41:10,592.592 INFO    ] No camera update needed
[2026-06-12 04:41:10,593.593 INFO    ] Script finished. Safe exiting...
[2026-06-12 04:41:10,595.595 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 04:41:10,599.599 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 04:41:10,602.602 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 04:41:12,642.642 INFO    ] ================================================
[2026-06-12 04:41:12,658.658 INFO    ] Launching Daemon at Fri Jun 12 04:41:12 IST 2026
[2026-06-12 04:41:12,669.669 INFO    ] ================================================
[2026-06-12 04:41:13,036.036 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 04:41:13
[2026-06-12 04:41:13,382.382 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 04:41:13,535.535 INFO    ] Initializing speech engine...
[2026-06-12 04:41:13,540.540 INFO    ] 2026-06-12 04:41:13
[2026-06-12 04:41:13,749.749 INFO    ] 2026-06-12 04:41:13
[2026-06-12 04:41:13,781.781 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 04:41:13,967.967 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 04:41:13,977.977 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 04:41:14,126.126 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 04:41:14,178.178 INFO    ] time= 12/06/2026 04:41:14
[2026-06-12 04:41:14,199.199 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 04:41:14,206.206 INFO    ] Checking for existing commands in stream...
[2026-06-12 04:41:14,273.273 INFO    ] No existing commands found in stream
[2026-06-12 04:41:19,288.288 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 04:41:19,291.291 INFO    ] Waiting 3.81 seconds before fallback handling...
[2026-06-12 04:41:23,502.502 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 04:41:23,503.503 INFO    ] Checking for system updates...
[2026-06-12 04:41:23,526.526 INFO    ] 200
[2026-06-12 04:41:23,527.527 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:41:23,564.564 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 04:41:23,565.565 INFO    ] No update needed
[2026-06-12 04:41:23,566.566 INFO    ] Checking for camera pi updates...
[2026-06-12 04:41:23,590.590 INFO    ] 200
[2026-06-12 04:41:23,592.592 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:41:23,616.616 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 04:41:23,658.658 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 04:41:23,659.659 INFO    ] No camera update needed
[2026-06-12 04:41:23,661.661 INFO    ] Script finished. Safe exiting...
[2026-06-12 04:41:23,662.662 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 04:41:23,666.666 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 04:41:23,669.669 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 04:41:25,708.708 INFO    ] ================================================
[2026-06-12 04:41:25,724.724 INFO    ] Launching Daemon at Fri Jun 12 04:41:25 IST 2026
[2026-06-12 04:41:25,735.735 INFO    ] ================================================
[2026-06-12 04:41:26,057.057 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 04:41:26
[2026-06-12 04:41:26,369.369 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 04:41:26,506.506 INFO    ] Initializing speech engine...
[2026-06-12 04:41:26,515.515 INFO    ] 2026-06-12 04:41:26
[2026-06-12 04:41:26,719.719 INFO    ] 2026-06-12 04:41:26
[2026-06-12 04:41:26,748.748 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 04:41:26,932.932 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 04:41:26,942.942 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 04:41:27,135.135 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 04:41:27,160.160 INFO    ] time= 12/06/2026 04:41:27
[2026-06-12 04:41:27,161.161 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 04:41:27,167.167 INFO    ] Checking for existing commands in stream...
[2026-06-12 04:41:27,234.234 INFO    ] No existing commands found in stream
[2026-06-12 04:41:32,243.243 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 04:41:32,246.246 INFO    ] Waiting 1.62 seconds before fallback handling...
[2026-06-12 04:41:34,257.257 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 04:41:34,258.258 INFO    ] Checking for system updates...
[2026-06-12 04:41:34,279.279 INFO    ] 200
[2026-06-12 04:41:34,281.281 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:41:34,310.310 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 04:41:34,312.312 INFO    ] No update needed
[2026-06-12 04:41:34,313.313 INFO    ] Checking for camera pi updates...
[2026-06-12 04:41:34,334.334 INFO    ] 200
[2026-06-12 04:41:34,336.336 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:41:34,359.359 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 04:41:34,396.396 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 04:41:34,397.397 INFO    ] No camera update needed
[2026-06-12 04:41:34,398.398 INFO    ] Script finished. Safe exiting...
[2026-06-12 04:41:34,400.400 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 04:41:34,403.403 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 04:41:34,406.406 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 04:41:36,445.445 INFO    ] ================================================
[2026-06-12 04:41:36,460.460 INFO    ] Launching Daemon at Fri Jun 12 04:41:36 IST 2026
[2026-06-12 04:41:36,471.471 INFO    ] ================================================
[2026-06-12 04:41:36,796.796 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 04:41:36
[2026-06-12 04:41:37,114.114 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 04:41:37,258.258 INFO    ] Initializing speech engine...
[2026-06-12 04:41:37,263.263 INFO    ] 2026-06-12 04:41:37
[2026-06-12 04:41:37,469.469 INFO    ] 2026-06-12 04:41:37
[2026-06-12 04:41:37,497.497 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 04:41:37,679.679 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 04:41:37,683.683 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 04:41:37,819.819 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 04:41:37,887.887 INFO    ] time= 12/06/2026 04:41:37
[2026-06-12 04:41:37,910.910 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 04:41:37,917.917 INFO    ] Checking for existing commands in stream...
[2026-06-12 04:41:37,983.983 INFO    ] No existing commands found in stream
[2026-06-12 04:41:42,997.997 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 04:41:43,000.000 INFO    ] Waiting 0.17 seconds before fallback handling...
[2026-06-12 04:41:43,551.551 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 04:41:43,552.552 INFO    ] Checking for system updates...
[2026-06-12 04:41:43,575.575 INFO    ] 200
[2026-06-12 04:41:43,577.577 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:41:43,610.610 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 04:41:43,612.612 INFO    ] No update needed
[2026-06-12 04:41:43,613.613 INFO    ] Checking for camera pi updates...
[2026-06-12 04:41:43,637.637 INFO    ] 200
[2026-06-12 04:41:43,639.639 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:41:43,664.664 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 04:41:43,704.704 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 04:41:43,706.706 INFO    ] No camera update needed
[2026-06-12 04:41:43,707.707 INFO    ] Script finished. Safe exiting...
[2026-06-12 04:41:43,709.709 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 04:41:43,712.712 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 04:41:43,715.715 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 04:41:45,757.757 INFO    ] ================================================
[2026-06-12 04:41:45,772.772 INFO    ] Launching Daemon at Fri Jun 12 04:41:45 IST 2026
[2026-06-12 04:41:45,783.783 INFO    ] ================================================
[2026-06-12 04:41:46,148.148 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 04:41:46
[2026-06-12 04:41:46,460.460 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 04:41:46,604.604 INFO    ] Initializing speech engine...
[2026-06-12 04:41:46,609.609 INFO    ] 2026-06-12 04:41:46
[2026-06-12 04:41:46,814.814 INFO    ] 2026-06-12 04:41:46
[2026-06-12 04:41:46,842.842 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 04:41:47,028.028 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 04:41:47,038.038 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 04:41:47,165.165 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 04:41:47,223.223 INFO    ] time= 12/06/2026 04:41:47
[2026-06-12 04:41:47,262.262 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 04:41:47,263.263 INFO    ] Checking for existing commands in stream...
[2026-06-12 04:41:47,336.336 INFO    ] No existing commands found in stream
[2026-06-12 04:41:52,345.345 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 04:41:52,348.348 INFO    ] Waiting 0.61 seconds before fallback handling...
[2026-06-12 04:41:53,295.295 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 04:41:53,297.297 INFO    ] Checking for system updates...
[2026-06-12 04:41:53,319.319 INFO    ] 200
[2026-06-12 04:41:53,320.320 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:41:53,353.353 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 04:41:53,354.354 INFO    ] No update needed
[2026-06-12 04:41:53,356.356 INFO    ] Checking for camera pi updates...
[2026-06-12 04:41:53,376.376 INFO    ] 200
[2026-06-12 04:41:53,378.378 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:41:53,401.401 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 04:41:53,437.437 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 04:41:53,439.439 INFO    ] No camera update needed
[2026-06-12 04:41:53,440.440 INFO    ] Script finished. Safe exiting...
[2026-06-12 04:41:53,441.441 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 04:41:53,444.444 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 04:41:53,447.447 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 04:41:55,486.486 INFO    ] ================================================
[2026-06-12 04:41:55,502.502 INFO    ] Launching Daemon at Fri Jun 12 04:41:55 IST 2026
[2026-06-12 04:41:55,512.512 INFO    ] ================================================
[2026-06-12 04:41:55,864.864 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 04:41:55
[2026-06-12 04:41:56,176.176 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 04:41:56,313.313 INFO    ] Initializing speech engine...
[2026-06-12 04:41:56,322.322 INFO    ] 2026-06-12 04:41:56
[2026-06-12 04:41:56,527.527 INFO    ] 2026-06-12 04:41:56
[2026-06-12 04:41:56,555.555 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 04:41:56,740.740 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 04:41:56,750.750 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 04:41:56,934.934 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 04:41:56,967.967 INFO    ] time= 12/06/2026 04:41:56
[2026-06-12 04:41:56,973.973 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 04:41:56,974.974 INFO    ] Checking for existing commands in stream...
[2026-06-12 04:41:57,066.066 INFO    ] No existing commands found in stream
[2026-06-12 04:42:02,081.081 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 04:42:02,083.083 INFO    ] Waiting 3.23 seconds before fallback handling...
[2026-06-12 04:42:05,723.723 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 04:42:05,724.724 INFO    ] Checking for system updates...
[2026-06-12 04:42:05,746.746 INFO    ] 200
[2026-06-12 04:42:05,748.748 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:42:05,787.787 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 04:42:05,789.789 INFO    ] No update needed
[2026-06-12 04:42:05,790.790 INFO    ] Checking for camera pi updates...
[2026-06-12 04:42:05,809.809 INFO    ] 200
[2026-06-12 04:42:05,811.811 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:42:05,834.834 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 04:42:05,869.869 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 04:42:05,871.871 INFO    ] No camera update needed
[2026-06-12 04:42:05,872.872 INFO    ] Script finished. Safe exiting...
[2026-06-12 04:42:05,873.873 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 04:42:05,876.876 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 04:42:05,879.879 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 04:42:07,921.921 INFO    ] ================================================
[2026-06-12 04:42:07,936.936 INFO    ] Launching Daemon at Fri Jun 12 04:42:07 IST 2026
[2026-06-12 04:42:07,947.947 INFO    ] ================================================
[2026-06-12 04:42:08,272.272 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 04:42:08
[2026-06-12 04:42:08,584.584 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 04:42:08,720.720 INFO    ] Initializing speech engine...
[2026-06-12 04:42:08,729.729 INFO    ] 2026-06-12 04:42:08
[2026-06-12 04:42:08,932.932 INFO    ] 2026-06-12 04:42:08
[2026-06-12 04:42:08,961.961 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 04:42:09,146.146 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 04:42:09,154.154 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 04:42:09,284.284 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 04:42:09,351.351 INFO    ] time= 12/06/2026 04:42:09
[2026-06-12 04:42:09,374.374 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 04:42:09,380.380 INFO    ] Checking for existing commands in stream...
[2026-06-12 04:42:09,446.446 INFO    ] No existing commands found in stream
[2026-06-12 04:42:14,456.456 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 04:42:14,459.459 INFO    ] Waiting 2.49 seconds before fallback handling...
[2026-06-12 04:42:17,334.334 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 04:42:17,336.336 INFO    ] Checking for system updates...
[2026-06-12 04:42:17,357.357 INFO    ] 200
[2026-06-12 04:42:17,359.359 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:42:17,389.389 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 04:42:17,390.390 INFO    ] No update needed
[2026-06-12 04:42:17,392.392 INFO    ] Checking for camera pi updates...
[2026-06-12 04:42:17,413.413 INFO    ] 200
[2026-06-12 04:42:17,414.414 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:42:17,437.437 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 04:42:17,579.579 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 04:42:17,581.581 INFO    ] No camera update needed
[2026-06-12 04:42:17,582.582 INFO    ] Script finished. Safe exiting...
[2026-06-12 04:42:17,584.584 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 04:42:17,588.588 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 04:42:17,591.591 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 04:42:19,631.631 INFO    ] ================================================
[2026-06-12 04:42:19,656.656 INFO    ] Launching Daemon at Fri Jun 12 04:42:19 IST 2026
[2026-06-12 04:42:19,670.670 INFO    ] ================================================
[2026-06-12 04:42:20,010.010 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 04:42:20
[2026-06-12 04:42:20,352.352 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 04:42:20,503.503 INFO    ] Initializing speech engine...
[2026-06-12 04:42:20,509.509 INFO    ] 2026-06-12 04:42:20
[2026-06-12 04:42:20,717.717 INFO    ] 2026-06-12 04:42:20
[2026-06-12 04:42:20,746.746 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 04:42:20,931.931 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 04:42:20,940.940 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 04:42:21,131.131 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 04:42:21,159.159 INFO    ] time= 12/06/2026 04:42:21
[2026-06-12 04:42:21,165.165 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 04:42:21,167.167 INFO    ] Checking for existing commands in stream...
[2026-06-12 04:42:21,234.234 INFO    ] No existing commands found in stream
[2026-06-12 04:42:26,243.243 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 04:42:26,247.247 INFO    ] Waiting 0.51 seconds before fallback handling...
[2026-06-12 04:42:27,151.151 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 04:42:27,152.152 INFO    ] Checking for system updates...
[2026-06-12 04:42:27,174.174 INFO    ] 200
[2026-06-12 04:42:27,176.176 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:42:27,212.212 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 04:42:27,213.213 INFO    ] No update needed
[2026-06-12 04:42:27,214.214 INFO    ] Checking for camera pi updates...
[2026-06-12 04:42:27,238.238 INFO    ] 200
[2026-06-12 04:42:27,239.239 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:42:27,264.264 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 04:42:27,303.303 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 04:42:27,305.305 INFO    ] No camera update needed
[2026-06-12 04:42:27,306.306 INFO    ] Script finished. Safe exiting...
[2026-06-12 04:42:27,308.308 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 04:42:27,311.311 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 04:42:27,314.314 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 04:42:29,352.352 INFO    ] ================================================
[2026-06-12 04:42:29,368.368 INFO    ] Launching Daemon at Fri Jun 12 04:42:29 IST 2026
[2026-06-12 04:42:29,379.379 INFO    ] ================================================
[2026-06-12 04:42:29,772.772 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 04:42:29
[2026-06-12 04:42:30,129.129 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 04:42:30,282.282 INFO    ] Initializing speech engine...
[2026-06-12 04:42:30,288.288 INFO    ] 2026-06-12 04:42:30
[2026-06-12 04:42:30,497.497 INFO    ] 2026-06-12 04:42:30
[2026-06-12 04:42:30,526.526 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 04:42:30,648.648 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 04:42:30,712.712 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 04:42:30,917.917 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 04:42:30,942.942 INFO    ] time= 12/06/2026 04:42:30
[2026-06-12 04:42:30,948.948 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 04:42:30,949.949 INFO    ] Checking for existing commands in stream...
[2026-06-12 04:42:31,016.016 INFO    ] No existing commands found in stream
[2026-06-12 04:42:36,031.031 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 04:42:36,035.035 INFO    ] Waiting 2.36 seconds before fallback handling...
[2026-06-12 04:42:38,775.775 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 04:42:38,777.777 INFO    ] Checking for system updates...
[2026-06-12 04:42:38,799.799 INFO    ] 200
[2026-06-12 04:42:38,801.801 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:42:38,832.832 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 04:42:38,833.833 INFO    ] No update needed
[2026-06-12 04:42:38,835.835 INFO    ] Checking for camera pi updates...
[2026-06-12 04:42:38,858.858 INFO    ] 200
[2026-06-12 04:42:38,859.859 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:42:38,883.883 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 04:42:38,929.929 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 04:42:38,930.930 INFO    ] No camera update needed
[2026-06-12 04:42:38,932.932 INFO    ] Script finished. Safe exiting...
[2026-06-12 04:42:38,933.933 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 04:42:38,937.937 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 04:42:38,940.940 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 04:42:40,980.980 INFO    ] ================================================
[2026-06-12 04:42:41,995.995 INFO    ] Launching Daemon at Fri Jun 12 04:42:40 IST 2026
[2026-06-12 04:42:41,007.007 INFO    ] ================================================
[2026-06-12 04:42:41,372.372 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 04:42:41
[2026-06-12 04:42:41,685.685 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 04:42:41,821.821 INFO    ] Initializing speech engine...
[2026-06-12 04:42:41,829.829 INFO    ] 2026-06-12 04:42:41
[2026-06-12 04:42:42,035.035 INFO    ] 2026-06-12 04:42:42
[2026-06-12 04:42:42,064.064 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 04:42:42,247.247 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 04:42:42,256.256 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 04:42:42,425.425 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 04:42:42,465.465 INFO    ] time= 12/06/2026 04:42:42
[2026-06-12 04:42:42,476.476 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 04:42:42,481.481 INFO    ] Checking for existing commands in stream...
[2026-06-12 04:42:42,548.548 INFO    ] No existing commands found in stream
[2026-06-12 04:42:47,557.557 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 04:42:47,560.560 INFO    ] Waiting 3.37 seconds before fallback handling...
[2026-06-12 04:42:51,342.342 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 04:42:51,344.344 INFO    ] Checking for system updates...
[2026-06-12 04:42:51,365.365 INFO    ] 200
[2026-06-12 04:42:51,366.366 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:42:51,399.399 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 04:42:51,401.401 INFO    ] No update needed
[2026-06-12 04:42:51,402.402 INFO    ] Checking for camera pi updates...
[2026-06-12 04:42:51,422.422 INFO    ] 200
[2026-06-12 04:42:51,423.423 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:42:51,448.448 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 04:42:51,484.484 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 04:42:51,485.485 INFO    ] No camera update needed
[2026-06-12 04:42:51,487.487 INFO    ] Script finished. Safe exiting...
[2026-06-12 04:42:51,488.488 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 04:42:51,491.491 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 04:42:51,494.494 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 04:42:53,533.533 INFO    ] ================================================
[2026-06-12 04:42:53,548.548 INFO    ] Launching Daemon at Fri Jun 12 04:42:53 IST 2026
[2026-06-12 04:42:53,559.559 INFO    ] ================================================
[2026-06-12 04:42:53,898.898 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 04:42:53
[2026-06-12 04:42:54,211.211 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 04:42:54,341.341 INFO    ] Initializing speech engine...
[2026-06-12 04:42:54,348.348 INFO    ] 2026-06-12 04:42:54
[2026-06-12 04:42:54,562.562 INFO    ] 2026-06-12 04:42:54
[2026-06-12 04:42:54,589.589 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 04:42:54,772.772 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 04:42:54,782.782 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 04:42:54,922.922 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 04:42:54,980.980 INFO    ] time= 12/06/2026 04:42:54
[2026-06-12 04:42:55,002.002 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 04:42:55,008.008 INFO    ] Checking for existing commands in stream...
[2026-06-12 04:42:55,074.074 INFO    ] No existing commands found in stream
[2026-06-12 04:43:00,083.083 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 04:43:00,086.086 INFO    ] Waiting 3.15 seconds before fallback handling...
[2026-06-12 04:43:03,554.554 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 04:43:03,556.556 INFO    ] Checking for system updates...
[2026-06-12 04:43:03,576.576 INFO    ] 200
[2026-06-12 04:43:03,577.577 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:43:03,607.607 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 04:43:03,608.608 INFO    ] No update needed
[2026-06-12 04:43:03,610.610 INFO    ] Checking for camera pi updates...
[2026-06-12 04:43:03,630.630 INFO    ] 200
[2026-06-12 04:43:03,632.632 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:43:03,656.656 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 04:43:03,692.692 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 04:43:03,694.694 INFO    ] No camera update needed
[2026-06-12 04:43:03,695.695 INFO    ] Script finished. Safe exiting...
[2026-06-12 04:43:03,697.697 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 04:43:03,700.700 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 04:43:03,703.703 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 04:43:05,742.742 INFO    ] ================================================
[2026-06-12 04:43:05,758.758 INFO    ] Launching Daemon at Fri Jun 12 04:43:05 IST 2026
[2026-06-12 04:43:05,770.770 INFO    ] ================================================
[2026-06-12 04:43:06,136.136 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 04:43:06
[2026-06-12 04:43:06,446.446 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 04:43:06,589.589 INFO    ] Initializing speech engine...
[2026-06-12 04:43:06,594.594 INFO    ] 2026-06-12 04:43:06
[2026-06-12 04:43:06,796.796 INFO    ] 2026-06-12 04:43:06
[2026-06-12 04:43:06,824.824 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 04:43:06,991.991 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 04:43:07,009.009 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 04:43:07,206.206 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 04:43:07,233.233 INFO    ] time= 12/06/2026 04:43:07
[2026-06-12 04:43:07,238.238 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 04:43:07,240.240 INFO    ] Checking for existing commands in stream...
[2026-06-12 04:43:07,306.306 INFO    ] No existing commands found in stream
[2026-06-12 04:43:12,315.315 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 04:43:12,318.318 INFO    ] Waiting 3.35 seconds before fallback handling...
[2026-06-12 04:43:16,080.080 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 04:43:16,082.082 INFO    ] Checking for system updates...
[2026-06-12 04:43:16,102.102 INFO    ] 200
[2026-06-12 04:43:16,104.104 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:43:16,137.137 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 04:43:16,138.138 INFO    ] No update needed
[2026-06-12 04:43:16,139.139 INFO    ] Checking for camera pi updates...
[2026-06-12 04:43:16,158.158 INFO    ] 200
[2026-06-12 04:43:16,160.160 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:43:16,185.185 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 04:43:16,220.220 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 04:43:16,221.221 INFO    ] No camera update needed
[2026-06-12 04:43:16,223.223 INFO    ] Script finished. Safe exiting...
[2026-06-12 04:43:16,224.224 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 04:43:16,227.227 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 04:43:16,230.230 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 04:43:18,268.268 INFO    ] ================================================
[2026-06-12 04:43:18,284.284 INFO    ] Launching Daemon at Fri Jun 12 04:43:18 IST 2026
[2026-06-12 04:43:18,295.295 INFO    ] ================================================
[2026-06-12 04:43:18,640.640 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 04:43:18
[2026-06-12 04:43:18,957.957 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 04:43:19,101.101 INFO    ] Initializing speech engine...
[2026-06-12 04:43:19,105.105 INFO    ] 2026-06-12 04:43:19
[2026-06-12 04:43:19,309.309 INFO    ] 2026-06-12 04:43:19
[2026-06-12 04:43:19,339.339 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 04:43:19,521.521 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 04:43:19,530.530 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 04:43:19,711.711 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 04:43:19,747.747 INFO    ] time= 12/06/2026 04:43:19
[2026-06-12 04:43:19,750.750 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 04:43:19,756.756 INFO    ] Checking for existing commands in stream...
[2026-06-12 04:43:19,822.822 INFO    ] No existing commands found in stream
[2026-06-12 04:43:24,836.836 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 04:43:24,839.839 INFO    ] Waiting 1.87 seconds before fallback handling...
[2026-06-12 04:43:27,072.072 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 04:43:27,074.074 INFO    ] Checking for system updates...
[2026-06-12 04:43:27,095.095 INFO    ] 200
[2026-06-12 04:43:27,097.097 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:43:27,127.127 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 04:43:27,128.128 INFO    ] No update needed
[2026-06-12 04:43:27,130.130 INFO    ] Checking for camera pi updates...
[2026-06-12 04:43:27,149.149 INFO    ] 200
[2026-06-12 04:43:27,151.151 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:43:27,174.174 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 04:43:27,211.211 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 04:43:27,213.213 INFO    ] No camera update needed
[2026-06-12 04:43:27,214.214 INFO    ] Script finished. Safe exiting...
[2026-06-12 04:43:27,215.215 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 04:43:27,218.218 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 04:43:27,221.221 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 04:43:29,260.260 INFO    ] ================================================
[2026-06-12 04:43:29,276.276 INFO    ] Launching Daemon at Fri Jun 12 04:43:29 IST 2026
[2026-06-12 04:43:29,287.287 INFO    ] ================================================
[2026-06-12 04:43:29,654.654 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 04:43:29
[2026-06-12 04:43:29,992.992 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 04:43:30,145.145 INFO    ] Initializing speech engine...
[2026-06-12 04:43:30,150.150 INFO    ] 2026-06-12 04:43:30
[2026-06-12 04:43:30,359.359 INFO    ] 2026-06-12 04:43:30
[2026-06-12 04:43:30,389.389 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 04:43:30,575.575 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 04:43:30,585.585 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 04:43:30,727.727 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 04:43:30,788.788 INFO    ] time= 12/06/2026 04:43:30
[2026-06-12 04:43:30,809.809 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 04:43:30,816.816 INFO    ] Checking for existing commands in stream...
[2026-06-12 04:43:30,907.907 INFO    ] No existing commands found in stream
[2026-06-12 04:43:35,916.916 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 04:43:35,919.919 INFO    ] Waiting 1.00 seconds before fallback handling...
[2026-06-12 04:43:37,303.303 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 04:43:37,305.305 INFO    ] Checking for system updates...
[2026-06-12 04:43:37,327.327 INFO    ] 200
[2026-06-12 04:43:37,329.329 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:43:37,360.360 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 04:43:37,362.362 INFO    ] No update needed
[2026-06-12 04:43:37,363.363 INFO    ] Checking for camera pi updates...
[2026-06-12 04:43:37,382.382 INFO    ] 200
[2026-06-12 04:43:37,384.384 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:43:37,409.409 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 04:43:37,449.449 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 04:43:37,451.451 INFO    ] No camera update needed
[2026-06-12 04:43:37,452.452 INFO    ] Script finished. Safe exiting...
[2026-06-12 04:43:37,454.454 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 04:43:37,457.457 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 04:43:37,460.460 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 04:43:39,499.499 INFO    ] ================================================
[2026-06-12 04:43:39,515.515 INFO    ] Launching Daemon at Fri Jun 12 04:43:39 IST 2026
[2026-06-12 04:43:39,526.526 INFO    ] ================================================
[2026-06-12 04:43:39,853.853 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 04:43:39
[2026-06-12 04:43:40,164.164 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 04:43:40,296.296 INFO    ] Initializing speech engine...
[2026-06-12 04:43:40,300.300 INFO    ] 2026-06-12 04:43:40
[2026-06-12 04:43:40,490.490 INFO    ] 2026-06-12 04:43:40
[2026-06-12 04:43:40,535.535 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 04:43:40,693.693 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 04:43:40,701.701 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 04:43:40,902.902 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 04:43:40,919.919 INFO    ] time= 12/06/2026 04:43:40
[2026-06-12 04:43:40,978.978 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 04:43:40,992.992 INFO    ] Checking for existing commands in stream...
[2026-06-12 04:43:41,116.116 INFO    ] No existing commands found in stream
[2026-06-12 04:43:46,125.125 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 04:43:46,127.127 INFO    ] Waiting 0.86 seconds before fallback handling...
[2026-06-12 04:43:47,404.404 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 04:43:47,406.406 INFO    ] Checking for system updates...
[2026-06-12 04:43:47,427.427 INFO    ] 200
[2026-06-12 04:43:47,428.428 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:43:47,461.461 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 04:43:47,462.462 INFO    ] No update needed
[2026-06-12 04:43:47,464.464 INFO    ] Checking for camera pi updates...
[2026-06-12 04:43:47,487.487 INFO    ] 200
[2026-06-12 04:43:47,489.489 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:43:47,513.513 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 04:43:47,549.549 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 04:43:47,551.551 INFO    ] No camera update needed
[2026-06-12 04:43:47,552.552 INFO    ] Script finished. Safe exiting...
[2026-06-12 04:43:47,554.554 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 04:43:47,557.557 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 04:43:47,560.560 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 04:43:49,598.598 INFO    ] ================================================
[2026-06-12 04:43:49,615.615 INFO    ] Launching Daemon at Fri Jun 12 04:43:49 IST 2026
[2026-06-12 04:43:49,626.626 INFO    ] ================================================
[2026-06-12 04:43:49,953.953 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 04:43:49
[2026-06-12 04:43:50,266.266 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 04:43:50,398.398 INFO    ] Initializing speech engine...
[2026-06-12 04:43:50,410.410 INFO    ] 2026-06-12 04:43:50
[2026-06-12 04:43:50,617.617 INFO    ] 2026-06-12 04:43:50
[2026-06-12 04:43:50,644.644 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 04:43:50,827.827 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 04:43:50,830.830 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 04:43:50,966.966 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 04:43:51,030.030 INFO    ] time= 12/06/2026 04:43:50
[2026-06-12 04:43:51,057.057 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 04:43:51,063.063 INFO    ] Checking for existing commands in stream...
[2026-06-12 04:43:51,153.153 INFO    ] No existing commands found in stream
[2026-06-12 04:43:56,162.162 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 04:43:56,165.165 INFO    ] Waiting 0.16 seconds before fallback handling...
[2026-06-12 04:43:56,701.701 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 04:43:56,703.703 INFO    ] Checking for system updates...
[2026-06-12 04:43:56,724.724 INFO    ] 200
[2026-06-12 04:43:56,726.726 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:43:56,758.758 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 04:43:56,759.759 INFO    ] No update needed
[2026-06-12 04:43:56,761.761 INFO    ] Checking for camera pi updates...
[2026-06-12 04:43:56,780.780 INFO    ] 200
[2026-06-12 04:43:56,782.782 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:43:56,807.807 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 04:43:56,842.842 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 04:43:56,843.843 INFO    ] No camera update needed
[2026-06-12 04:43:56,845.845 INFO    ] Script finished. Safe exiting...
[2026-06-12 04:43:56,846.846 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 04:43:56,849.849 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 04:43:56,851.851 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 04:43:58,890.890 INFO    ] ================================================
[2026-06-12 04:43:58,907.907 INFO    ] Launching Daemon at Fri Jun 12 04:43:58 IST 2026
[2026-06-12 04:43:58,919.919 INFO    ] ================================================
[2026-06-12 04:43:59,266.266 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 04:43:59
[2026-06-12 04:43:59,599.599 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 04:43:59,747.747 INFO    ] Initializing speech engine...
[2026-06-12 04:43:59,753.753 INFO    ] 2026-06-12 04:43:59
[2026-06-12 04:43:59,961.961 INFO    ] 2026-06-12 04:43:59
[2026-06-12 04:43:59,990.990 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 04:44:00,174.174 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 04:44:00,184.184 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 04:44:00,329.329 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 04:44:00,381.381 INFO    ] time= 12/06/2026 04:44:00
[2026-06-12 04:44:00,404.404 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 04:44:00,411.411 INFO    ] Checking for existing commands in stream...
[2026-06-12 04:44:00,478.478 INFO    ] No existing commands found in stream
[2026-06-12 04:44:05,502.502 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 04:44:05,506.506 INFO    ] Waiting 3.21 seconds before fallback handling...
[2026-06-12 04:44:09,123.123 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 04:44:09,125.125 INFO    ] Checking for system updates...
[2026-06-12 04:44:09,146.146 INFO    ] 200
[2026-06-12 04:44:09,147.147 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:44:09,177.177 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 04:44:09,179.179 INFO    ] No update needed
[2026-06-12 04:44:09,180.180 INFO    ] Checking for camera pi updates...
[2026-06-12 04:44:09,200.200 INFO    ] 200
[2026-06-12 04:44:09,201.201 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:44:09,225.225 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 04:44:09,262.262 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 04:44:09,264.264 INFO    ] No camera update needed
[2026-06-12 04:44:09,265.265 INFO    ] Script finished. Safe exiting...
[2026-06-12 04:44:09,266.266 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 04:44:09,269.269 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 04:44:09,273.273 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 04:44:11,311.311 INFO    ] ================================================
[2026-06-12 04:44:11,326.326 INFO    ] Launching Daemon at Fri Jun 12 04:44:11 IST 2026
[2026-06-12 04:44:11,337.337 INFO    ] ================================================
[2026-06-12 04:44:11,695.695 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 04:44:11
[2026-06-12 04:44:12,007.007 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 04:44:12,140.140 INFO    ] Initializing speech engine...
[2026-06-12 04:44:12,152.152 INFO    ] 2026-06-12 04:44:12
[2026-06-12 04:44:12,360.360 INFO    ] 2026-06-12 04:44:12
[2026-06-12 04:44:12,390.390 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 04:44:12,575.575 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 04:44:12,578.578 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 04:44:12,716.716 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 04:44:12,775.775 INFO    ] time= 12/06/2026 04:44:12
[2026-06-12 04:44:12,808.808 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 04:44:12,814.814 INFO    ] Checking for existing commands in stream...
[2026-06-12 04:44:12,906.906 INFO    ] No existing commands found in stream
[2026-06-12 04:44:17,915.915 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 04:44:17,917.917 INFO    ] Waiting 0.17 seconds before fallback handling...
[2026-06-12 04:44:18,453.453 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 04:44:18,454.454 INFO    ] Checking for system updates...
[2026-06-12 04:44:18,475.475 INFO    ] 200
[2026-06-12 04:44:18,477.477 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:44:18,507.507 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 04:44:18,509.509 INFO    ] No update needed
[2026-06-12 04:44:18,510.510 INFO    ] Checking for camera pi updates...
[2026-06-12 04:44:18,530.530 INFO    ] 200
[2026-06-12 04:44:18,531.531 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:44:18,556.556 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 04:44:18,692.692 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 04:44:18,694.694 INFO    ] No camera update needed
[2026-06-12 04:44:18,695.695 INFO    ] Script finished. Safe exiting...
[2026-06-12 04:44:18,696.696 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 04:44:18,700.700 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 04:44:18,703.703 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 04:44:20,741.741 INFO    ] ================================================
[2026-06-12 04:44:20,756.756 INFO    ] Launching Daemon at Fri Jun 12 04:44:20 IST 2026
[2026-06-12 04:44:20,767.767 INFO    ] ================================================
[2026-06-12 04:44:21,145.145 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 04:44:21
[2026-06-12 04:44:21,492.492 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 04:44:21,646.646 INFO    ] Initializing speech engine...
[2026-06-12 04:44:21,650.650 INFO    ] 2026-06-12 04:44:21
[2026-06-12 04:44:21,860.860 INFO    ] 2026-06-12 04:44:21
[2026-06-12 04:44:21,889.889 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 04:44:22,075.075 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 04:44:22,079.079 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 04:44:22,218.218 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 04:44:22,285.285 INFO    ] time= 12/06/2026 04:44:22
[2026-06-12 04:44:22,309.309 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 04:44:22,316.316 INFO    ] Checking for existing commands in stream...
[2026-06-12 04:44:22,384.384 INFO    ] No existing commands found in stream
[2026-06-12 04:44:27,394.394 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 04:44:27,397.397 INFO    ] Waiting 3.15 seconds before fallback handling...
[2026-06-12 04:44:30,952.952 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 04:44:30,953.953 INFO    ] Checking for system updates...
[2026-06-12 04:44:30,975.975 INFO    ] 200
[2026-06-12 04:44:30,977.977 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:44:31,010.010 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 04:44:31,011.011 INFO    ] No update needed
[2026-06-12 04:44:31,013.013 INFO    ] Checking for camera pi updates...
[2026-06-12 04:44:31,032.032 INFO    ] 200
[2026-06-12 04:44:31,034.034 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:44:31,057.057 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 04:44:31,093.093 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 04:44:31,095.095 INFO    ] No camera update needed
[2026-06-12 04:44:31,096.096 INFO    ] Script finished. Safe exiting...
[2026-06-12 04:44:31,097.097 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 04:44:31,100.100 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 04:44:31,103.103 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 04:44:33,143.143 INFO    ] ================================================
[2026-06-12 04:44:33,159.159 INFO    ] Launching Daemon at Fri Jun 12 04:44:33 IST 2026
[2026-06-12 04:44:33,169.169 INFO    ] ================================================
[2026-06-12 04:44:33,517.517 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 04:44:33
[2026-06-12 04:44:33,828.828 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 04:44:33,970.970 INFO    ] Initializing speech engine...
[2026-06-12 04:44:33,975.975 INFO    ] 2026-06-12 04:44:33
[2026-06-12 04:44:34,176.176 INFO    ] 2026-06-12 04:44:34
[2026-06-12 04:44:34,205.205 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 04:44:34,387.387 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 04:44:34,391.391 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 04:44:34,523.523 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 04:44:34,570.570 INFO    ] time= 12/06/2026 04:44:34
[2026-06-12 04:44:34,617.617 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 04:44:34,619.619 INFO    ] Checking for existing commands in stream...
[2026-06-12 04:44:34,690.690 INFO    ] No existing commands found in stream
[2026-06-12 04:44:39,704.704 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 04:44:39,707.707 INFO    ] Waiting 3.23 seconds before fallback handling...
[2026-06-12 04:44:43,341.341 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 04:44:43,342.342 INFO    ] Checking for system updates...
[2026-06-12 04:44:43,363.363 INFO    ] 200
[2026-06-12 04:44:43,365.365 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:44:43,395.395 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 04:44:43,397.397 INFO    ] No update needed
[2026-06-12 04:44:43,398.398 INFO    ] Checking for camera pi updates...
[2026-06-12 04:44:43,418.418 INFO    ] 200
[2026-06-12 04:44:43,419.419 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:44:43,443.443 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 04:44:43,483.483 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 04:44:43,484.484 INFO    ] No camera update needed
[2026-06-12 04:44:43,486.486 INFO    ] Script finished. Safe exiting...
[2026-06-12 04:44:43,487.487 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 04:44:43,490.490 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 04:44:43,493.493 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 04:44:45,531.531 INFO    ] ================================================
[2026-06-12 04:44:45,547.547 INFO    ] Launching Daemon at Fri Jun 12 04:44:45 IST 2026
[2026-06-12 04:44:45,557.557 INFO    ] ================================================
[2026-06-12 04:44:45,888.888 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 04:44:45
[2026-06-12 04:44:46,199.199 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 04:44:46,340.340 INFO    ] Initializing speech engine...
[2026-06-12 04:44:46,353.353 INFO    ] 2026-06-12 04:44:46
[2026-06-12 04:44:46,551.551 INFO    ] 2026-06-12 04:44:46
[2026-06-12 04:44:46,579.579 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 04:44:46,764.764 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 04:44:46,774.774 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 04:44:46,898.898 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 04:44:46,966.966 INFO    ] time= 12/06/2026 04:44:46
[2026-06-12 04:44:46,993.993 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 04:44:46,999.999 INFO    ] Checking for existing commands in stream...
[2026-06-12 04:44:47,066.066 INFO    ] No existing commands found in stream
[2026-06-12 04:44:52,075.075 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 04:44:52,078.078 INFO    ] Waiting 0.55 seconds before fallback handling...
[2026-06-12 04:44:53,018.018 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 04:44:53,019.019 INFO    ] Checking for system updates...
[2026-06-12 04:44:53,041.041 INFO    ] 200
[2026-06-12 04:44:53,042.042 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:44:53,072.072 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 04:44:53,074.074 INFO    ] No update needed
[2026-06-12 04:44:53,076.076 INFO    ] Checking for camera pi updates...
[2026-06-12 04:44:53,095.095 INFO    ] 200
[2026-06-12 04:44:53,097.097 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:44:53,121.121 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 04:44:53,162.162 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 04:44:53,163.163 INFO    ] No camera update needed
[2026-06-12 04:44:53,164.164 INFO    ] Script finished. Safe exiting...
[2026-06-12 04:44:53,165.165 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 04:44:53,168.168 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 04:44:53,171.171 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 04:44:55,209.209 INFO    ] ================================================
[2026-06-12 04:44:55,224.224 INFO    ] Launching Daemon at Fri Jun 12 04:44:55 IST 2026
[2026-06-12 04:44:55,235.235 INFO    ] ================================================
[2026-06-12 04:44:55,576.576 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 04:44:55
[2026-06-12 04:44:55,892.892 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 04:44:56,029.029 INFO    ] Initializing speech engine...
[2026-06-12 04:44:56,039.039 INFO    ] 2026-06-12 04:44:56
[2026-06-12 04:44:56,244.244 INFO    ] 2026-06-12 04:44:56
[2026-06-12 04:44:56,272.272 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 04:44:56,456.456 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 04:44:56,466.466 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 04:44:56,594.594 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 04:44:56,661.661 INFO    ] time= 12/06/2026 04:44:56
[2026-06-12 04:44:56,685.685 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 04:44:56,691.691 INFO    ] Checking for existing commands in stream...
[2026-06-12 04:44:56,758.758 INFO    ] No existing commands found in stream
[2026-06-12 04:45:01,771.771 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 04:45:01,773.773 INFO    ] Waiting 0.77 seconds before fallback handling...
[2026-06-12 04:45:02,882.882 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 04:45:02,885.885 INFO    ] Checking for system updates...
[2026-06-12 04:45:02,921.921 INFO    ] 200
[2026-06-12 04:45:02,924.924 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:45:02,976.976 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 04:45:02,978.978 INFO    ] No update needed
[2026-06-12 04:45:02,981.981 INFO    ] Checking for camera pi updates...
[2026-06-12 04:45:03,015.015 INFO    ] 200
[2026-06-12 04:45:03,017.017 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:45:03,051.051 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 04:45:03,072.072 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 04:45:03,074.074 INFO    ] No camera update needed
[2026-06-12 04:45:03,075.075 INFO    ] Script finished. Safe exiting...
[2026-06-12 04:45:03,076.076 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 04:45:03,079.079 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 04:45:03,082.082 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 04:45:05,120.120 INFO    ] ================================================
[2026-06-12 04:45:05,137.137 INFO    ] Launching Daemon at Fri Jun 12 04:45:05 IST 2026
[2026-06-12 04:45:05,148.148 INFO    ] ================================================
[2026-06-12 04:45:05,472.472 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 04:45:05
[2026-06-12 04:45:05,800.800 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 04:45:05,933.933 INFO    ] Initializing speech engine...
[2026-06-12 04:45:05,940.940 INFO    ] 2026-06-12 04:45:05
[2026-06-12 04:45:06,152.152 INFO    ] 2026-06-12 04:45:06
[2026-06-12 04:45:06,182.182 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 04:45:06,366.366 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 04:45:06,374.374 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 04:45:06,504.504 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 04:45:06,565.565 INFO    ] time= 12/06/2026 04:45:06
[2026-06-12 04:45:06,597.597 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 04:45:06,604.604 INFO    ] Checking for existing commands in stream...
[2026-06-12 04:45:06,695.695 INFO    ] No existing commands found in stream
[2026-06-12 04:45:11,709.709 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 04:45:11,712.712 INFO    ] Waiting 2.47 seconds before fallback handling...
[2026-06-12 04:45:14,556.556 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 04:45:14,558.558 INFO    ] Checking for system updates...
[2026-06-12 04:45:14,579.579 INFO    ] 200
[2026-06-12 04:45:14,581.581 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:45:14,613.613 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 04:45:14,615.615 INFO    ] No update needed
[2026-06-12 04:45:14,616.616 INFO    ] Checking for camera pi updates...
[2026-06-12 04:45:14,637.637 INFO    ] 200
[2026-06-12 04:45:14,638.638 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:45:14,663.663 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 04:45:14,706.706 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 04:45:14,707.707 INFO    ] No camera update needed
[2026-06-12 04:45:14,708.708 INFO    ] Script finished. Safe exiting...
[2026-06-12 04:45:14,710.710 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 04:45:14,713.713 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 04:45:14,715.715 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 04:45:16,756.756 INFO    ] ================================================
[2026-06-12 04:45:16,772.772 INFO    ] Launching Daemon at Fri Jun 12 04:45:16 IST 2026
[2026-06-12 04:45:16,782.782 INFO    ] ================================================
[2026-06-12 04:45:17,146.146 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 04:45:17
[2026-06-12 04:45:17,478.478 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 04:45:17,628.628 INFO    ] Initializing speech engine...
[2026-06-12 04:45:17,633.633 INFO    ] 2026-06-12 04:45:17
[2026-06-12 04:45:17,841.841 INFO    ] 2026-06-12 04:45:17
[2026-06-12 04:45:17,869.869 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 04:45:18,061.061 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 04:45:18,070.070 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 04:45:18,201.201 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 04:45:18,258.258 INFO    ] time= 12/06/2026 04:45:18
[2026-06-12 04:45:18,302.302 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 04:45:18,308.308 INFO    ] Checking for existing commands in stream...
[2026-06-12 04:45:18,382.382 INFO    ] No existing commands found in stream
[2026-06-12 04:45:23,393.393 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 04:45:23,395.395 INFO    ] Waiting 3.47 seconds before fallback handling...
[2026-06-12 04:45:27,241.241 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 04:45:27,242.242 INFO    ] Checking for system updates...
[2026-06-12 04:45:27,263.263 INFO    ] 200
[2026-06-12 04:45:27,264.264 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:45:27,296.296 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 04:45:27,298.298 INFO    ] No update needed
[2026-06-12 04:45:27,299.299 INFO    ] Checking for camera pi updates...
[2026-06-12 04:45:27,318.318 INFO    ] 200
[2026-06-12 04:45:27,319.319 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:45:27,344.344 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 04:45:27,375.375 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 04:45:27,377.377 INFO    ] No camera update needed
[2026-06-12 04:45:27,378.378 INFO    ] Script finished. Safe exiting...
[2026-06-12 04:45:27,379.379 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 04:45:27,382.382 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 04:45:27,385.385 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 04:45:29,425.425 INFO    ] ================================================
[2026-06-12 04:45:29,441.441 INFO    ] Launching Daemon at Fri Jun 12 04:45:29 IST 2026
[2026-06-12 04:45:29,452.452 INFO    ] ================================================
[2026-06-12 04:45:29,843.843 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 04:45:29
[2026-06-12 04:45:30,182.182 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 04:45:30,333.333 INFO    ] Initializing speech engine...
[2026-06-12 04:45:30,338.338 INFO    ] 2026-06-12 04:45:30
[2026-06-12 04:45:30,548.548 INFO    ] 2026-06-12 04:45:30
[2026-06-12 04:45:30,576.576 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 04:45:30,761.761 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 04:45:30,772.772 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 04:45:30,944.944 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 04:45:30,979.979 INFO    ] time= 12/06/2026 04:45:30
[2026-06-12 04:45:30,994.994 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 04:45:30,996.996 INFO    ] Checking for existing commands in stream...
[2026-06-12 04:45:31,063.063 INFO    ] No existing commands found in stream
[2026-06-12 04:45:36,073.073 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 04:45:36,076.076 INFO    ] Waiting 3.37 seconds before fallback handling...
[2026-06-12 04:45:39,819.819 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 04:45:39,821.821 INFO    ] Checking for system updates...
[2026-06-12 04:45:39,842.842 INFO    ] 200
[2026-06-12 04:45:39,844.844 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:45:39,874.874 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 04:45:39,876.876 INFO    ] No update needed
[2026-06-12 04:45:39,877.877 INFO    ] Checking for camera pi updates...
[2026-06-12 04:45:39,897.897 INFO    ] 200
[2026-06-12 04:45:39,898.898 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:45:39,923.923 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 04:45:39,961.961 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 04:45:39,963.963 INFO    ] No camera update needed
[2026-06-12 04:45:39,964.964 INFO    ] Script finished. Safe exiting...
[2026-06-12 04:45:39,966.966 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 04:45:39,969.969 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 04:45:39,972.972 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 04:45:42,012.012 INFO    ] ================================================
[2026-06-12 04:45:42,028.028 INFO    ] Launching Daemon at Fri Jun 12 04:45:42 IST 2026
[2026-06-12 04:45:42,039.039 INFO    ] ================================================
[2026-06-12 04:45:42,396.396 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 04:45:42
[2026-06-12 04:45:42,713.713 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 04:45:42,857.857 INFO    ] Initializing speech engine...
[2026-06-12 04:45:42,863.863 INFO    ] 2026-06-12 04:45:42
[2026-06-12 04:45:43,067.067 INFO    ] 2026-06-12 04:45:43
[2026-06-12 04:45:43,094.094 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 04:45:43,279.279 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 04:45:43,288.288 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 04:45:43,467.467 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 04:45:43,505.505 INFO    ] time= 12/06/2026 04:45:43
[2026-06-12 04:45:43,511.511 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 04:45:43,513.513 INFO    ] Checking for existing commands in stream...
[2026-06-12 04:45:43,581.581 INFO    ] No existing commands found in stream
[2026-06-12 04:45:48,600.600 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 04:45:48,603.603 INFO    ] Waiting 3.89 seconds before fallback handling...
[2026-06-12 04:45:52,831.831 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 04:45:52,833.833 INFO    ] Checking for system updates...
[2026-06-12 04:45:52,855.855 INFO    ] 200
[2026-06-12 04:45:52,856.856 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:45:52,886.886 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 04:45:52,888.888 INFO    ] No update needed
[2026-06-12 04:45:52,889.889 INFO    ] Checking for camera pi updates...
[2026-06-12 04:45:52,910.910 INFO    ] 200
[2026-06-12 04:45:52,912.912 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:45:52,937.937 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 04:45:52,973.973 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 04:45:52,975.975 INFO    ] No camera update needed
[2026-06-12 04:45:52,976.976 INFO    ] Script finished. Safe exiting...
[2026-06-12 04:45:52,977.977 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 04:45:52,981.981 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 04:45:52,983.983 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 04:45:55,013.013 INFO    ] ================================================
[2026-06-12 04:45:55,022.022 INFO    ] Launching Daemon at Fri Jun 12 04:45:55 IST 2026
[2026-06-12 04:45:55,028.028 INFO    ] ================================================
[2026-06-12 04:45:55,381.381 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 04:45:55
[2026-06-12 04:45:55,731.731 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 04:45:55,877.877 INFO    ] Initializing speech engine...
[2026-06-12 04:45:55,887.887 INFO    ] 2026-06-12 04:45:55
[2026-06-12 04:45:56,111.111 INFO    ] 2026-06-12 04:45:56
[2026-06-12 04:45:56,139.139 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 04:45:56,324.324 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 04:45:56,334.334 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 04:45:56,545.545 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 04:45:56,551.551 INFO    ] time= 12/06/2026 04:45:56
[2026-06-12 04:45:56,557.557 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 04:45:56,559.559 INFO    ] Checking for existing commands in stream...
[2026-06-12 04:45:56,650.650 INFO    ] No existing commands found in stream
[2026-06-12 04:46:01,664.664 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 04:46:01,673.673 INFO    ] Waiting 2.26 seconds before fallback handling...
[2026-06-12 04:46:04,311.311 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 04:46:04,312.312 INFO    ] Checking for system updates...
[2026-06-12 04:46:04,334.334 INFO    ] 200
[2026-06-12 04:46:04,335.335 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:46:04,366.366 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 04:46:04,367.367 INFO    ] No update needed
[2026-06-12 04:46:04,368.368 INFO    ] Checking for camera pi updates...
[2026-06-12 04:46:04,389.389 INFO    ] 200
[2026-06-12 04:46:04,391.391 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:46:04,414.414 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 04:46:04,454.454 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 04:46:04,456.456 INFO    ] No camera update needed
[2026-06-12 04:46:04,457.457 INFO    ] Script finished. Safe exiting...
[2026-06-12 04:46:04,458.458 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 04:46:04,461.461 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 04:46:04,464.464 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 04:46:06,504.504 INFO    ] ================================================
[2026-06-12 04:46:06,519.519 INFO    ] Launching Daemon at Fri Jun 12 04:46:06 IST 2026
[2026-06-12 04:46:06,530.530 INFO    ] ================================================
[2026-06-12 04:46:06,897.897 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 04:46:06
[2026-06-12 04:46:07,232.232 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 04:46:07,385.385 INFO    ] Initializing speech engine...
[2026-06-12 04:46:07,391.391 INFO    ] 2026-06-12 04:46:07
[2026-06-12 04:46:07,600.600 INFO    ] 2026-06-12 04:46:07
[2026-06-12 04:46:07,631.631 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 04:46:07,818.818 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 04:46:07,827.827 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 04:46:08,010.010 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 04:46:08,050.050 INFO    ] time= 12/06/2026 04:46:08
[2026-06-12 04:46:08,055.055 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 04:46:08,057.057 INFO    ] Checking for existing commands in stream...
[2026-06-12 04:46:08,125.125 INFO    ] No existing commands found in stream
[2026-06-12 04:46:13,140.140 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 04:46:13,143.143 INFO    ] Waiting 0.86 seconds before fallback handling...
[2026-06-12 04:46:14,390.390 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 04:46:14,392.392 INFO    ] Checking for system updates...
[2026-06-12 04:46:14,413.413 INFO    ] 200
[2026-06-12 04:46:14,414.414 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:46:14,444.444 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 04:46:14,446.446 INFO    ] No update needed
[2026-06-12 04:46:14,447.447 INFO    ] Checking for camera pi updates...
[2026-06-12 04:46:14,467.467 INFO    ] 200
[2026-06-12 04:46:14,469.469 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:46:14,492.492 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 04:46:14,527.527 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 04:46:14,529.529 INFO    ] No camera update needed
[2026-06-12 04:46:14,531.531 INFO    ] Script finished. Safe exiting...
[2026-06-12 04:46:14,532.532 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 04:46:14,535.535 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 04:46:14,538.538 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 04:46:16,576.576 INFO    ] ================================================
[2026-06-12 04:46:16,592.592 INFO    ] Launching Daemon at Fri Jun 12 04:46:16 IST 2026
[2026-06-12 04:46:16,603.603 INFO    ] ================================================
[2026-06-12 04:46:16,965.965 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 04:46:16
[2026-06-12 04:46:17,276.276 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 04:46:17,408.408 INFO    ] Initializing speech engine...
[2026-06-12 04:46:17,412.412 INFO    ] 2026-06-12 04:46:17
[2026-06-12 04:46:17,631.631 INFO    ] 2026-06-12 04:46:17
[2026-06-12 04:46:17,660.660 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 04:46:17,846.846 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 04:46:17,855.855 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 04:46:18,003.003 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 04:46:18,057.057 INFO    ] time= 12/06/2026 04:46:18
[2026-06-12 04:46:18,080.080 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 04:46:18,085.085 INFO    ] Checking for existing commands in stream...
[2026-06-12 04:46:18,152.152 INFO    ] No existing commands found in stream
[2026-06-12 04:46:23,163.163 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 04:46:23,166.166 INFO    ] Waiting 1.17 seconds before fallback handling...
[2026-06-12 04:46:24,688.688 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 04:46:24,690.690 INFO    ] Checking for system updates...
[2026-06-12 04:46:24,711.711 INFO    ] 200
[2026-06-12 04:46:24,712.712 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:46:24,747.747 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 04:46:24,748.748 INFO    ] No update needed
[2026-06-12 04:46:24,749.749 INFO    ] Checking for camera pi updates...
[2026-06-12 04:46:24,770.770 INFO    ] 200
[2026-06-12 04:46:24,771.771 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:46:24,796.796 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 04:46:24,935.935 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 04:46:24,936.936 INFO    ] No camera update needed
[2026-06-12 04:46:24,937.937 INFO    ] Script finished. Safe exiting...
[2026-06-12 04:46:24,939.939 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 04:46:24,942.942 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 04:46:24,945.945 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 04:46:26,975.975 INFO    ] ================================================
[2026-06-12 04:46:26,984.984 INFO    ] Launching Daemon at Fri Jun 12 04:46:26 IST 2026
[2026-06-12 04:46:26,990.990 INFO    ] ================================================
[2026-06-12 04:46:27,364.364 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 04:46:27
[2026-06-12 04:46:27,699.699 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 04:46:27,850.850 INFO    ] Initializing speech engine...
[2026-06-12 04:46:27,855.855 INFO    ] 2026-06-12 04:46:27
[2026-06-12 04:46:28,062.062 INFO    ] 2026-06-12 04:46:28
[2026-06-12 04:46:28,091.091 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 04:46:28,274.274 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 04:46:28,287.287 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 04:46:28,475.475 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 04:46:28,503.503 INFO    ] time= 12/06/2026 04:46:28
[2026-06-12 04:46:28,509.509 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 04:46:28,511.511 INFO    ] Checking for existing commands in stream...
[2026-06-12 04:46:28,577.577 INFO    ] No existing commands found in stream
[2026-06-12 04:46:33,581.581 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 04:46:33,583.583 INFO    ] Waiting 3.87 seconds before fallback handling...
[2026-06-12 04:46:39,862.862 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 04:46:39,865.865 INFO    ] Checking for system updates...
[2026-06-12 04:46:39,905.905 INFO    ] 200
[2026-06-12 04:46:39,907.907 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:46:39,968.968 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 04:46:39,972.972 INFO    ] No update needed
[2026-06-12 04:46:39,975.975 INFO    ] Checking for camera pi updates...
[2026-06-12 04:46:40,002.002 INFO    ] 200
[2026-06-12 04:46:40,003.003 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:46:40,026.026 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 04:46:40,073.073 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 04:46:40,075.075 INFO    ] No camera update needed
[2026-06-12 04:46:40,076.076 INFO    ] Script finished. Safe exiting...
[2026-06-12 04:46:40,077.077 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 04:46:40,081.081 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 04:46:40,084.084 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 04:46:42,124.124 INFO    ] ================================================
[2026-06-12 04:46:42,139.139 INFO    ] Launching Daemon at Fri Jun 12 04:46:42 IST 2026
[2026-06-12 04:46:42,150.150 INFO    ] ================================================
[2026-06-12 04:46:42,502.502 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 04:46:42
[2026-06-12 04:46:42,841.841 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 04:46:42,992.992 INFO    ] Initializing speech engine...
[2026-06-12 04:46:42,998.998 INFO    ] 2026-06-12 04:46:42
[2026-06-12 04:46:43,208.208 INFO    ] 2026-06-12 04:46:43
[2026-06-12 04:46:43,237.237 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 04:46:43,377.377 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 04:46:43,379.379 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 04:46:43,556.556 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 04:46:43,613.613 INFO    ] time= 12/06/2026 04:46:43
[2026-06-12 04:46:43,655.655 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 04:46:43,700.700 INFO    ] Checking for existing commands in stream...
[2026-06-12 04:46:43,803.803 INFO    ] No existing commands found in stream
[2026-06-12 04:46:48,818.818 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 04:46:48,821.821 INFO    ] Waiting 3.06 seconds before fallback handling...
[2026-06-12 04:46:52,308.308 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 04:46:52,310.310 INFO    ] Checking for system updates...
[2026-06-12 04:46:52,331.331 INFO    ] 200
[2026-06-12 04:46:52,332.332 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:46:52,363.363 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 04:46:52,364.364 INFO    ] No update needed
[2026-06-12 04:46:52,366.366 INFO    ] Checking for camera pi updates...
[2026-06-12 04:46:52,385.385 INFO    ] 200
[2026-06-12 04:46:52,387.387 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:46:52,411.411 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 04:46:52,452.452 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 04:46:52,453.453 INFO    ] No camera update needed
[2026-06-12 04:46:52,455.455 INFO    ] Script finished. Safe exiting...
[2026-06-12 04:46:52,456.456 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 04:46:52,459.459 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 04:46:52,463.463 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 04:46:54,487.487 INFO    ] ================================================
[2026-06-12 04:46:54,496.496 INFO    ] Launching Daemon at Fri Jun 12 04:46:54 IST 2026
[2026-06-12 04:46:54,503.503 INFO    ] ================================================
[2026-06-12 04:46:54,816.816 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 04:46:54
[2026-06-12 04:46:55,143.143 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 04:46:55,289.289 INFO    ] Initializing speech engine...
[2026-06-12 04:46:55,299.299 INFO    ] 2026-06-12 04:46:55
[2026-06-12 04:46:55,515.515 INFO    ] 2026-06-12 04:46:55
[2026-06-12 04:46:55,544.544 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 04:46:55,735.735 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 04:46:55,745.745 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 04:46:55,910.910 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 04:46:55,968.968 INFO    ] time= 12/06/2026 04:46:55
[2026-06-12 04:46:55,978.978 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 04:46:55,980.980 INFO    ] Checking for existing commands in stream...
[2026-06-12 04:46:56,049.049 INFO    ] No existing commands found in stream
[2026-06-12 04:47:01,063.063 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 04:47:01,066.066 INFO    ] Waiting 2.80 seconds before fallback handling...
[2026-06-12 04:47:04,281.281 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 04:47:04,282.282 INFO    ] Checking for system updates...
[2026-06-12 04:47:04,304.304 INFO    ] 200
[2026-06-12 04:47:04,305.305 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:47:04,339.339 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 04:47:04,340.340 INFO    ] No update needed
[2026-06-12 04:47:04,342.342 INFO    ] Checking for camera pi updates...
[2026-06-12 04:47:04,361.361 INFO    ] 200
[2026-06-12 04:47:04,363.363 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:47:04,386.386 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 04:47:04,422.422 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 04:47:04,423.423 INFO    ] No camera update needed
[2026-06-12 04:47:04,425.425 INFO    ] Script finished. Safe exiting...
[2026-06-12 04:47:04,426.426 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 04:47:04,429.429 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 04:47:04,432.432 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 04:47:06,471.471 INFO    ] ================================================
[2026-06-12 04:47:06,487.487 INFO    ] Launching Daemon at Fri Jun 12 04:47:06 IST 2026
[2026-06-12 04:47:06,499.499 INFO    ] ================================================
[2026-06-12 04:47:06,851.851 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 04:47:06
[2026-06-12 04:47:07,167.167 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 04:47:07,305.305 INFO    ] Initializing speech engine...
[2026-06-12 04:47:07,318.318 INFO    ] 2026-06-12 04:47:07
[2026-06-12 04:47:07,504.504 INFO    ] 2026-06-12 04:47:07
[2026-06-12 04:47:07,550.550 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 04:47:07,709.709 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 04:47:07,737.737 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 04:47:07,924.924 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 04:47:07,947.947 INFO    ] time= 12/06/2026 04:47:07
[2026-06-12 04:47:08,000.000 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 04:47:08,031.031 INFO    ] Checking for existing commands in stream...
[2026-06-12 04:47:08,141.141 INFO    ] No existing commands found in stream
[2026-06-12 04:47:13,150.150 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 04:47:13,153.153 INFO    ] Waiting 3.15 seconds before fallback handling...
[2026-06-12 04:47:16,678.678 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 04:47:16,679.679 INFO    ] Checking for system updates...
[2026-06-12 04:47:16,700.700 INFO    ] 200
[2026-06-12 04:47:16,702.702 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:47:16,734.734 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 04:47:16,735.735 INFO    ] No update needed
[2026-06-12 04:47:16,736.736 INFO    ] Checking for camera pi updates...
[2026-06-12 04:47:16,756.756 INFO    ] 200
[2026-06-12 04:47:16,757.757 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:47:16,782.782 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 04:47:16,821.821 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 04:47:16,823.823 INFO    ] No camera update needed
[2026-06-12 04:47:16,824.824 INFO    ] Script finished. Safe exiting...
[2026-06-12 04:47:16,825.825 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 04:47:16,828.828 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 04:47:16,831.831 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 04:47:18,871.871 INFO    ] ================================================
[2026-06-12 04:47:18,887.887 INFO    ] Launching Daemon at Fri Jun 12 04:47:18 IST 2026
[2026-06-12 04:47:18,898.898 INFO    ] ================================================
[2026-06-12 04:47:19,272.272 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 04:47:19
[2026-06-12 04:47:19,591.591 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 04:47:19,727.727 INFO    ] Initializing speech engine...
[2026-06-12 04:47:19,732.732 INFO    ] 2026-06-12 04:47:19
[2026-06-12 04:47:19,949.949 INFO    ] 2026-06-12 04:47:19
[2026-06-12 04:47:19,978.978 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 04:47:20,197.197 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 04:47:20,204.204 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 04:47:20,353.353 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 04:47:20,414.414 INFO    ] time= 12/06/2026 04:47:20
[2026-06-12 04:47:20,446.446 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 04:47:20,458.458 INFO    ] Checking for existing commands in stream...
[2026-06-12 04:47:20,537.537 INFO    ] No existing commands found in stream
[2026-06-12 04:47:25,546.546 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 04:47:25,549.549 INFO    ] Waiting 3.97 seconds before fallback handling...
[2026-06-12 04:47:29,900.900 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 04:47:29,901.901 INFO    ] Checking for system updates...
[2026-06-12 04:47:29,922.922 INFO    ] 200
[2026-06-12 04:47:29,924.924 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:47:29,954.954 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 04:47:29,956.956 INFO    ] No update needed
[2026-06-12 04:47:29,957.957 INFO    ] Checking for camera pi updates...
[2026-06-12 04:47:29,977.977 INFO    ] 200
[2026-06-12 04:47:29,978.978 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:47:30,002.002 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 04:47:30,037.037 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 04:47:30,038.038 INFO    ] No camera update needed
[2026-06-12 04:47:30,040.040 INFO    ] Script finished. Safe exiting...
[2026-06-12 04:47:30,041.041 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 04:47:30,044.044 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 04:47:30,047.047 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 04:47:32,089.089 INFO    ] ================================================
[2026-06-12 04:47:32,101.101 INFO    ] Launching Daemon at Fri Jun 12 04:47:32 IST 2026
[2026-06-12 04:47:32,108.108 INFO    ] ================================================
[2026-06-12 04:47:32,442.442 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 04:47:32
[2026-06-12 04:47:32,791.791 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 04:47:32,937.937 INFO    ] Initializing speech engine...
[2026-06-12 04:47:32,949.949 INFO    ] 2026-06-12 04:47:32
[2026-06-12 04:47:33,158.158 INFO    ] 2026-06-12 04:47:33
[2026-06-12 04:47:33,186.186 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 04:47:33,370.370 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 04:47:33,380.380 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 04:47:33,533.533 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 04:47:33,576.576 INFO    ] time= 12/06/2026 04:47:33
[2026-06-12 04:47:33,598.598 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 04:47:33,604.604 INFO    ] Checking for existing commands in stream...
[2026-06-12 04:47:33,671.671 INFO    ] No existing commands found in stream
[2026-06-12 04:47:38,680.680 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 04:47:38,683.683 INFO    ] Waiting 2.69 seconds before fallback handling...
[2026-06-12 04:47:41,793.793 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 04:47:41,795.795 INFO    ] Checking for system updates...
[2026-06-12 04:47:41,816.816 INFO    ] 200
[2026-06-12 04:47:41,817.817 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:47:41,851.851 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 04:47:41,853.853 INFO    ] No update needed
[2026-06-12 04:47:41,854.854 INFO    ] Checking for camera pi updates...
[2026-06-12 04:47:41,878.878 INFO    ] 200
[2026-06-12 04:47:41,880.880 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:47:41,906.906 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 04:47:41,945.945 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 04:47:41,947.947 INFO    ] No camera update needed
[2026-06-12 04:47:41,948.948 INFO    ] Script finished. Safe exiting...
[2026-06-12 04:47:41,950.950 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 04:47:41,953.953 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 04:47:41,956.956 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 04:47:44,998.998 INFO    ] ================================================
[2026-06-12 04:47:44,014.014 INFO    ] Launching Daemon at Fri Jun 12 04:47:44 IST 2026
[2026-06-12 04:47:44,024.024 INFO    ] ================================================
[2026-06-12 04:47:44,405.405 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 04:47:44
[2026-06-12 04:47:44,749.749 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 04:47:44,906.906 INFO    ] Initializing speech engine...
[2026-06-12 04:47:44,911.911 INFO    ] 2026-06-12 04:47:44
[2026-06-12 04:47:45,118.118 INFO    ] 2026-06-12 04:47:45
[2026-06-12 04:47:45,147.147 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 04:47:45,331.331 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 04:47:45,340.340 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 04:47:45,529.529 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 04:47:45,556.556 INFO    ] time= 12/06/2026 04:47:45
[2026-06-12 04:47:45,563.563 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 04:47:45,565.565 INFO    ] Checking for existing commands in stream...
[2026-06-12 04:47:45,631.631 INFO    ] No existing commands found in stream
[2026-06-12 04:47:50,646.646 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 04:47:50,649.649 INFO    ] Waiting 3.81 seconds before fallback handling...
[2026-06-12 04:47:54,860.860 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 04:47:54,862.862 INFO    ] Checking for system updates...
[2026-06-12 04:47:54,883.883 INFO    ] 200
[2026-06-12 04:47:54,884.884 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:47:54,915.915 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 04:47:54,916.916 INFO    ] No update needed
[2026-06-12 04:47:54,918.918 INFO    ] Checking for camera pi updates...
[2026-06-12 04:47:54,938.938 INFO    ] 200
[2026-06-12 04:47:54,939.939 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:47:54,963.963 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 04:47:54,999.999 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 04:47:55,001.001 INFO    ] No camera update needed
[2026-06-12 04:47:55,002.002 INFO    ] Script finished. Safe exiting...
[2026-06-12 04:47:55,004.004 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 04:47:55,007.007 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 04:47:55,010.010 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 04:47:57,048.048 INFO    ] ================================================
[2026-06-12 04:47:57,064.064 INFO    ] Launching Daemon at Fri Jun 12 04:47:57 IST 2026
[2026-06-12 04:47:57,075.075 INFO    ] ================================================
[2026-06-12 04:47:57,425.425 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 04:47:57
[2026-06-12 04:47:57,735.735 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 04:47:57,868.868 INFO    ] Initializing speech engine...
[2026-06-12 04:47:57,881.881 INFO    ] 2026-06-12 04:47:57
[2026-06-12 04:47:58,091.091 INFO    ] 2026-06-12 04:47:58
[2026-06-12 04:47:58,120.120 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 04:47:58,306.306 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 04:47:58,315.315 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 04:47:58,494.494 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 04:47:58,535.535 INFO    ] time= 12/06/2026 04:47:58
[2026-06-12 04:47:58,541.541 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 04:47:58,546.546 INFO    ] Checking for existing commands in stream...
[2026-06-12 04:47:58,613.613 INFO    ] No existing commands found in stream
[2026-06-12 04:48:03,623.623 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 04:48:03,626.626 INFO    ] Waiting 0.49 seconds before fallback handling...
[2026-06-12 04:48:04,521.521 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 04:48:04,524.524 INFO    ] Checking for system updates...
[2026-06-12 04:48:04,564.564 INFO    ] 200
[2026-06-12 04:48:04,567.567 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:48:04,619.619 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 04:48:04,622.622 INFO    ] No update needed
[2026-06-12 04:48:04,624.624 INFO    ] Checking for camera pi updates...
[2026-06-12 04:48:04,658.658 INFO    ] 200
[2026-06-12 04:48:04,661.661 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:48:04,702.702 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 04:48:04,743.743 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 04:48:04,744.744 INFO    ] No camera update needed
[2026-06-12 04:48:04,745.745 INFO    ] Script finished. Safe exiting...
[2026-06-12 04:48:04,746.746 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 04:48:04,750.750 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 04:48:04,753.753 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 04:48:06,794.794 INFO    ] ================================================
[2026-06-12 04:48:06,809.809 INFO    ] Launching Daemon at Fri Jun 12 04:48:06 IST 2026
[2026-06-12 04:48:06,819.819 INFO    ] ================================================
[2026-06-12 04:48:07,158.158 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 04:48:07
[2026-06-12 04:48:07,470.470 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 04:48:07,603.603 INFO    ] Initializing speech engine...
[2026-06-12 04:48:07,608.608 INFO    ] 2026-06-12 04:48:07
[2026-06-12 04:48:07,827.827 INFO    ] 2026-06-12 04:48:07
[2026-06-12 04:48:07,856.856 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 04:48:08,052.052 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 04:48:08,061.061 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 04:48:08,197.197 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 04:48:08,260.260 INFO    ] time= 12/06/2026 04:48:08
[2026-06-12 04:48:08,295.295 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 04:48:08,302.302 INFO    ] Checking for existing commands in stream...
[2026-06-12 04:48:08,427.427 INFO    ] No existing commands found in stream
[2026-06-12 04:48:13,438.438 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 04:48:13,442.442 INFO    ] Waiting 3.02 seconds before fallback handling...
[2026-06-12 04:48:16,846.846 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 04:48:16,848.848 INFO    ] Checking for system updates...
[2026-06-12 04:48:16,870.870 INFO    ] 200
[2026-06-12 04:48:16,871.871 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:48:16,904.904 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 04:48:16,905.905 INFO    ] No update needed
[2026-06-12 04:48:16,906.906 INFO    ] Checking for camera pi updates...
[2026-06-12 04:48:16,926.926 INFO    ] 200
[2026-06-12 04:48:16,927.927 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:48:16,950.950 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 04:48:16,987.987 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 04:48:16,989.989 INFO    ] No camera update needed
[2026-06-12 04:48:16,990.990 INFO    ] Script finished. Safe exiting...
[2026-06-12 04:48:16,991.991 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 04:48:16,994.994 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 04:48:16,997.997 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 04:48:19,036.036 INFO    ] ================================================
[2026-06-12 04:48:19,051.051 INFO    ] Launching Daemon at Fri Jun 12 04:48:19 IST 2026
[2026-06-12 04:48:19,062.062 INFO    ] ================================================
[2026-06-12 04:48:19,391.391 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 04:48:19
[2026-06-12 04:48:19,703.703 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 04:48:19,833.833 INFO    ] Initializing speech engine...
[2026-06-12 04:48:19,837.837 INFO    ] 2026-06-12 04:48:19
[2026-06-12 04:48:20,053.053 INFO    ] 2026-06-12 04:48:20
[2026-06-12 04:48:20,083.083 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 04:48:20,266.266 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 04:48:20,269.269 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 04:48:20,425.425 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 04:48:20,474.474 INFO    ] time= 12/06/2026 04:48:20
[2026-06-12 04:48:20,495.495 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 04:48:20,502.502 INFO    ] Checking for existing commands in stream...
[2026-06-12 04:48:20,569.569 INFO    ] No existing commands found in stream
[2026-06-12 04:48:25,578.578 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 04:48:25,581.581 INFO    ] Waiting 1.32 seconds before fallback handling...
[2026-06-12 04:48:27,288.288 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 04:48:27,290.290 INFO    ] Checking for system updates...
[2026-06-12 04:48:27,314.314 INFO    ] 200
[2026-06-12 04:48:27,316.316 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:48:27,363.363 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 04:48:27,365.365 INFO    ] No update needed
[2026-06-12 04:48:27,367.367 INFO    ] Checking for camera pi updates...
[2026-06-12 04:48:27,399.399 INFO    ] 200
[2026-06-12 04:48:27,400.400 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:48:27,425.425 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 04:48:27,566.566 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 04:48:27,567.567 INFO    ] No camera update needed
[2026-06-12 04:48:27,568.568 INFO    ] Script finished. Safe exiting...
[2026-06-12 04:48:27,570.570 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 04:48:27,573.573 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 04:48:27,576.576 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 04:48:29,617.617 INFO    ] ================================================
[2026-06-12 04:48:29,636.636 INFO    ] Launching Daemon at Fri Jun 12 04:48:29 IST 2026
[2026-06-12 04:48:29,647.647 INFO    ] ================================================
[2026-06-12 04:48:30,002.002 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 04:48:30
[2026-06-12 04:48:30,313.313 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 04:48:30,451.451 INFO    ] Initializing speech engine...
[2026-06-12 04:48:30,461.461 INFO    ] 2026-06-12 04:48:30
[2026-06-12 04:48:30,663.663 INFO    ] 2026-06-12 04:48:30
[2026-06-12 04:48:30,693.693 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 04:48:30,877.877 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 04:48:30,887.887 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 04:48:31,070.070 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 04:48:31,103.103 INFO    ] time= 12/06/2026 04:48:31
[2026-06-12 04:48:31,109.109 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 04:48:31,111.111 INFO    ] Checking for existing commands in stream...
[2026-06-12 04:48:31,177.177 INFO    ] No existing commands found in stream
[2026-06-12 04:48:36,186.186 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 04:48:36,189.189 INFO    ] Waiting 2.16 seconds before fallback handling...
[2026-06-12 04:48:38,767.767 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 04:48:38,769.769 INFO    ] Checking for system updates...
[2026-06-12 04:48:38,806.806 INFO    ] 200
[2026-06-12 04:48:38,808.808 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:48:38,862.862 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 04:48:38,864.864 INFO    ] No update needed
[2026-06-12 04:48:38,866.866 INFO    ] Checking for camera pi updates...
[2026-06-12 04:48:38,891.891 INFO    ] 200
[2026-06-12 04:48:38,892.892 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:48:38,916.916 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 04:48:38,948.948 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 04:48:38,950.950 INFO    ] No camera update needed
[2026-06-12 04:48:38,951.951 INFO    ] Script finished. Safe exiting...
[2026-06-12 04:48:38,952.952 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 04:48:38,955.955 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 04:48:38,958.958 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 04:48:41,998.998 INFO    ] ================================================
[2026-06-12 04:48:41,014.014 INFO    ] Launching Daemon at Fri Jun 12 04:48:41 IST 2026
[2026-06-12 04:48:41,025.025 INFO    ] ================================================
[2026-06-12 04:48:41,384.384 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 04:48:41
[2026-06-12 04:48:41,696.696 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 04:48:41,839.839 INFO    ] Initializing speech engine...
[2026-06-12 04:48:41,844.844 INFO    ] 2026-06-12 04:48:41
[2026-06-12 04:48:42,048.048 INFO    ] 2026-06-12 04:48:42
[2026-06-12 04:48:42,078.078 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 04:48:42,264.264 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 04:48:42,273.273 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 04:48:42,416.416 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 04:48:42,475.475 INFO    ] time= 12/06/2026 04:48:42
[2026-06-12 04:48:42,499.499 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 04:48:42,505.505 INFO    ] Checking for existing commands in stream...
[2026-06-12 04:48:42,571.571 INFO    ] No existing commands found in stream
[2026-06-12 04:48:47,582.582 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 04:48:47,584.584 INFO    ] Waiting 0.37 seconds before fallback handling...
[2026-06-12 04:48:48,362.362 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 04:48:48,364.364 INFO    ] Checking for system updates...
[2026-06-12 04:48:48,385.385 INFO    ] 200
[2026-06-12 04:48:48,386.386 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:48:48,417.417 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 04:48:48,418.418 INFO    ] No update needed
[2026-06-12 04:48:48,420.420 INFO    ] Checking for camera pi updates...
[2026-06-12 04:48:48,440.440 INFO    ] 200
[2026-06-12 04:48:48,442.442 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:48:48,466.466 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 04:48:48,503.503 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 04:48:48,504.504 INFO    ] No camera update needed
[2026-06-12 04:48:48,506.506 INFO    ] Script finished. Safe exiting...
[2026-06-12 04:48:48,507.507 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 04:48:48,510.510 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 04:48:48,513.513 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 04:48:50,554.554 INFO    ] ================================================
[2026-06-12 04:48:50,570.570 INFO    ] Launching Daemon at Fri Jun 12 04:48:50 IST 2026
[2026-06-12 04:48:50,581.581 INFO    ] ================================================
[2026-06-12 04:48:50,910.910 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 04:48:50
[2026-06-12 04:48:51,222.222 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 04:48:51,354.354 INFO    ] Initializing speech engine...
[2026-06-12 04:48:51,362.362 INFO    ] 2026-06-12 04:48:51
[2026-06-12 04:48:51,575.575 INFO    ] 2026-06-12 04:48:51
[2026-06-12 04:48:51,604.604 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 04:48:51,791.791 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 04:48:51,795.795 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 04:48:51,929.929 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 04:48:51,987.987 INFO    ] time= 12/06/2026 04:48:51
[2026-06-12 04:48:52,022.022 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 04:48:52,028.028 INFO    ] Checking for existing commands in stream...
[2026-06-12 04:48:52,101.101 INFO    ] No existing commands found in stream
[2026-06-12 04:48:57,110.110 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 04:48:57,112.112 INFO    ] Waiting 1.98 seconds before fallback handling...
[2026-06-12 04:48:59,465.465 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 04:48:59,466.466 INFO    ] Checking for system updates...
[2026-06-12 04:48:59,487.487 INFO    ] 200
[2026-06-12 04:48:59,489.489 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:48:59,521.521 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 04:48:59,523.523 INFO    ] No update needed
[2026-06-12 04:48:59,524.524 INFO    ] Checking for camera pi updates...
[2026-06-12 04:48:59,545.545 INFO    ] 200
[2026-06-12 04:48:59,546.546 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:48:59,571.571 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 04:48:59,608.608 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 04:48:59,610.610 INFO    ] No camera update needed
[2026-06-12 04:48:59,611.611 INFO    ] Script finished. Safe exiting...
[2026-06-12 04:48:59,612.612 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 04:48:59,615.615 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 04:48:59,618.618 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 04:49:01,654.654 INFO    ] ================================================
[2026-06-12 04:49:01,668.668 INFO    ] Launching Daemon at Fri Jun 12 04:49:01 IST 2026
[2026-06-12 04:49:01,678.678 INFO    ] ================================================
[2026-06-12 04:49:02,084.084 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 04:49:02
[2026-06-12 04:49:02,470.470 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 04:49:02,623.623 INFO    ] Initializing speech engine...
[2026-06-12 04:49:02,628.628 INFO    ] 2026-06-12 04:49:02
[2026-06-12 04:49:02,831.831 INFO    ] 2026-06-12 04:49:02
[2026-06-12 04:49:02,861.861 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 04:49:03,006.006 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 04:49:03,049.049 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 04:49:03,187.187 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 04:49:03,255.255 INFO    ] time= 12/06/2026 04:49:03
[2026-06-12 04:49:03,278.278 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 04:49:03,285.285 INFO    ] Checking for existing commands in stream...
[2026-06-12 04:49:03,351.351 INFO    ] No existing commands found in stream
[2026-06-12 04:49:08,361.361 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 04:49:08,364.364 INFO    ] Waiting 2.04 seconds before fallback handling...
[2026-06-12 04:49:10,797.797 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 04:49:10,799.799 INFO    ] Checking for system updates...
[2026-06-12 04:49:10,820.820 INFO    ] 200
[2026-06-12 04:49:10,821.821 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:49:10,855.855 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 04:49:10,856.856 INFO    ] No update needed
[2026-06-12 04:49:10,857.857 INFO    ] Checking for camera pi updates...
[2026-06-12 04:49:10,877.877 INFO    ] 200
[2026-06-12 04:49:10,878.878 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:49:10,901.901 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 04:49:10,944.944 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 04:49:10,945.945 INFO    ] No camera update needed
[2026-06-12 04:49:10,947.947 INFO    ] Script finished. Safe exiting...
[2026-06-12 04:49:10,948.948 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 04:49:10,951.951 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 04:49:10,954.954 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 04:49:12,994.994 INFO    ] ================================================
[2026-06-12 04:49:13,010.010 INFO    ] Launching Daemon at Fri Jun 12 04:49:13 IST 2026
[2026-06-12 04:49:13,022.022 INFO    ] ================================================
[2026-06-12 04:49:13,404.404 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 04:49:13
[2026-06-12 04:49:13,749.749 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 04:49:13,903.903 INFO    ] Initializing speech engine...
[2026-06-12 04:49:13,909.909 INFO    ] 2026-06-12 04:49:13
[2026-06-12 04:49:14,118.118 INFO    ] 2026-06-12 04:49:14
[2026-06-12 04:49:14,147.147 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 04:49:14,332.332 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 04:49:14,342.342 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 04:49:14,481.481 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 04:49:14,538.538 INFO    ] time= 12/06/2026 04:49:14
[2026-06-12 04:49:14,562.562 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 04:49:14,568.568 INFO    ] Checking for existing commands in stream...
[2026-06-12 04:49:14,636.636 INFO    ] No existing commands found in stream
[2026-06-12 04:49:19,650.650 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 04:49:19,654.654 INFO    ] Waiting 0.38 seconds before fallback handling...
[2026-06-12 04:49:20,411.411 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 04:49:20,412.412 INFO    ] Checking for system updates...
[2026-06-12 04:49:20,433.433 INFO    ] 200
[2026-06-12 04:49:20,434.434 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:49:20,465.465 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 04:49:20,466.466 INFO    ] No update needed
[2026-06-12 04:49:20,467.467 INFO    ] Checking for camera pi updates...
[2026-06-12 04:49:20,487.487 INFO    ] 200
[2026-06-12 04:49:20,488.488 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:49:20,512.512 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 04:49:20,554.554 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 04:49:20,556.556 INFO    ] No camera update needed
[2026-06-12 04:49:20,557.557 INFO    ] Script finished. Safe exiting...
[2026-06-12 04:49:20,558.558 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 04:49:20,561.561 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 04:49:20,564.564 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 04:49:22,602.602 INFO    ] ================================================
[2026-06-12 04:49:22,618.618 INFO    ] Launching Daemon at Fri Jun 12 04:49:22 IST 2026
[2026-06-12 04:49:22,629.629 INFO    ] ================================================
[2026-06-12 04:49:22,984.984 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 04:49:22
[2026-06-12 04:49:23,301.301 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 04:49:23,434.434 INFO    ] Initializing speech engine...
[2026-06-12 04:49:23,447.447 INFO    ] 2026-06-12 04:49:23
[2026-06-12 04:49:23,654.654 INFO    ] 2026-06-12 04:49:23
[2026-06-12 04:49:23,684.684 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 04:49:23,869.869 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 04:49:23,877.877 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 04:49:24,018.018 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 04:49:24,076.076 INFO    ] time= 12/06/2026 04:49:24
[2026-06-12 04:49:24,099.099 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 04:49:24,105.105 INFO    ] Checking for existing commands in stream...
[2026-06-12 04:49:24,172.172 INFO    ] No existing commands found in stream
[2026-06-12 04:49:29,204.204 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 04:49:29,207.207 INFO    ] Waiting 2.51 seconds before fallback handling...
[2026-06-12 04:49:32,065.065 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 04:49:32,066.066 INFO    ] Checking for system updates...
[2026-06-12 04:49:32,094.094 INFO    ] 200
[2026-06-12 04:49:32,095.095 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:49:32,133.133 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 04:49:32,135.135 INFO    ] No update needed
[2026-06-12 04:49:32,136.136 INFO    ] Checking for camera pi updates...
[2026-06-12 04:49:32,156.156 INFO    ] 200
[2026-06-12 04:49:32,157.157 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:49:32,184.184 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 04:49:32,206.206 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 04:49:32,208.208 INFO    ] No camera update needed
[2026-06-12 04:49:32,209.209 INFO    ] Script finished. Safe exiting...
[2026-06-12 04:49:32,210.210 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 04:49:32,213.213 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 04:49:32,216.216 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 04:49:34,255.255 INFO    ] ================================================
[2026-06-12 04:49:34,271.271 INFO    ] Launching Daemon at Fri Jun 12 04:49:34 IST 2026
[2026-06-12 04:49:34,282.282 INFO    ] ================================================
[2026-06-12 04:49:34,655.655 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 04:49:34
[2026-06-12 04:49:34,968.968 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 04:49:35,111.111 INFO    ] Initializing speech engine...
[2026-06-12 04:49:35,116.116 INFO    ] 2026-06-12 04:49:35
[2026-06-12 04:49:35,319.319 INFO    ] 2026-06-12 04:49:35
[2026-06-12 04:49:35,347.347 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 04:49:35,531.531 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 04:49:35,539.539 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 04:49:35,665.665 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 04:49:35,727.727 INFO    ] time= 12/06/2026 04:49:35
[2026-06-12 04:49:35,759.759 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 04:49:35,765.765 INFO    ] Checking for existing commands in stream...
[2026-06-12 04:49:35,856.856 INFO    ] No existing commands found in stream
[2026-06-12 04:49:40,869.869 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 04:49:40,872.872 INFO    ] Waiting 0.90 seconds before fallback handling...
[2026-06-12 04:49:42,183.183 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 04:49:42,185.185 INFO    ] Checking for system updates...
[2026-06-12 04:49:42,207.207 INFO    ] 200
[2026-06-12 04:49:42,209.209 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:49:42,239.239 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 04:49:42,241.241 INFO    ] No update needed
[2026-06-12 04:49:42,243.243 INFO    ] Checking for camera pi updates...
[2026-06-12 04:49:42,262.262 INFO    ] 200
[2026-06-12 04:49:42,264.264 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:49:42,288.288 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 04:49:42,327.327 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 04:49:42,328.328 INFO    ] No camera update needed
[2026-06-12 04:49:42,330.330 INFO    ] Script finished. Safe exiting...
[2026-06-12 04:49:42,331.331 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 04:49:42,335.335 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 04:49:42,338.338 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 04:49:44,376.376 INFO    ] ================================================
[2026-06-12 04:49:44,391.391 INFO    ] Launching Daemon at Fri Jun 12 04:49:44 IST 2026
[2026-06-12 04:49:44,403.403 INFO    ] ================================================
[2026-06-12 04:49:44,801.801 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 04:49:44
[2026-06-12 04:49:45,133.133 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 04:49:45,276.276 INFO    ] Initializing speech engine...
[2026-06-12 04:49:45,281.281 INFO    ] 2026-06-12 04:49:45
[2026-06-12 04:49:45,484.484 INFO    ] 2026-06-12 04:49:45
[2026-06-12 04:49:45,514.514 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 04:49:45,696.696 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 04:49:45,706.706 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 04:49:45,899.899 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 04:49:45,924.924 INFO    ] time= 12/06/2026 04:49:45
[2026-06-12 04:49:45,929.929 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 04:49:45,931.931 INFO    ] Checking for existing commands in stream...
[2026-06-12 04:49:45,996.996 INFO    ] No existing commands found in stream
[2026-06-12 04:49:51,005.005 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 04:49:51,008.008 INFO    ] Waiting 0.47 seconds before fallback handling...
[2026-06-12 04:49:51,873.873 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 04:49:51,875.875 INFO    ] Checking for system updates...
[2026-06-12 04:49:51,896.896 INFO    ] 200
[2026-06-12 04:49:51,897.897 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:49:51,927.927 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 04:49:51,928.928 INFO    ] No update needed
[2026-06-12 04:49:51,930.930 INFO    ] Checking for camera pi updates...
[2026-06-12 04:49:51,949.949 INFO    ] 200
[2026-06-12 04:49:51,951.951 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:49:51,974.974 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 04:49:52,010.010 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 04:49:52,012.012 INFO    ] No camera update needed
[2026-06-12 04:49:52,013.013 INFO    ] Script finished. Safe exiting...
[2026-06-12 04:49:52,014.014 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 04:49:52,017.017 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 04:49:52,020.020 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 04:49:54,058.058 INFO    ] ================================================
[2026-06-12 04:49:54,074.074 INFO    ] Launching Daemon at Fri Jun 12 04:49:54 IST 2026
[2026-06-12 04:49:54,085.085 INFO    ] ================================================
[2026-06-12 04:49:54,449.449 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 04:49:54
[2026-06-12 04:49:54,795.795 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 04:49:54,950.950 INFO    ] Initializing speech engine...
[2026-06-12 04:49:54,955.955 INFO    ] 2026-06-12 04:49:54
[2026-06-12 04:49:55,163.163 INFO    ] 2026-06-12 04:49:55
[2026-06-12 04:49:55,192.192 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 04:49:55,377.377 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 04:49:55,386.386 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 04:49:55,531.531 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 04:49:55,583.583 INFO    ] time= 12/06/2026 04:49:55
[2026-06-12 04:49:55,607.607 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 04:49:55,614.614 INFO    ] Checking for existing commands in stream...
[2026-06-12 04:49:55,681.681 INFO    ] No existing commands found in stream
[2026-06-12 04:50:00,711.711 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 04:50:00,714.714 INFO    ] Waiting 1.80 seconds before fallback handling...
[2026-06-12 04:50:03,177.177 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 04:50:03,179.179 INFO    ] Checking for system updates...
[2026-06-12 04:50:03,200.200 INFO    ] 200
[2026-06-12 04:50:03,201.201 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:50:03,232.232 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 04:50:03,234.234 INFO    ] No update needed
[2026-06-12 04:50:03,235.235 INFO    ] Checking for camera pi updates...
[2026-06-12 04:50:03,255.255 INFO    ] 200
[2026-06-12 04:50:03,256.256 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:50:03,280.280 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 04:50:03,318.318 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 04:50:03,319.319 INFO    ] No camera update needed
[2026-06-12 04:50:03,321.321 INFO    ] Script finished. Safe exiting...
[2026-06-12 04:50:03,322.322 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 04:50:03,325.325 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 04:50:03,328.328 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 04:50:05,367.367 INFO    ] ================================================
[2026-06-12 04:50:05,383.383 INFO    ] Launching Daemon at Fri Jun 12 04:50:05 IST 2026
[2026-06-12 04:50:05,394.394 INFO    ] ================================================
[2026-06-12 04:50:05,766.766 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 04:50:05
[2026-06-12 04:50:06,114.114 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 04:50:06,279.279 INFO    ] Initializing speech engine...
[2026-06-12 04:50:06,286.286 INFO    ] 2026-06-12 04:50:06
[2026-06-12 04:50:06,488.488 INFO    ] 2026-06-12 04:50:06
[2026-06-12 04:50:06,517.517 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 04:50:06,701.701 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 04:50:06,710.710 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 04:50:06,903.903 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 04:50:06,928.928 INFO    ] time= 12/06/2026 04:50:06
[2026-06-12 04:50:06,934.934 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 04:50:06,936.936 INFO    ] Checking for existing commands in stream...
[2026-06-12 04:50:07,002.002 INFO    ] No existing commands found in stream
[2026-06-12 04:50:12,017.017 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 04:50:12,020.020 INFO    ] Waiting 3.37 seconds before fallback handling...
[2026-06-12 04:50:15,810.810 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 04:50:15,812.812 INFO    ] Checking for system updates...
[2026-06-12 04:50:15,833.833 INFO    ] 200
[2026-06-12 04:50:15,834.834 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:50:15,865.865 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 04:50:15,866.866 INFO    ] No update needed
[2026-06-12 04:50:15,868.868 INFO    ] Checking for camera pi updates...
[2026-06-12 04:50:15,887.887 INFO    ] 200
[2026-06-12 04:50:15,889.889 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:50:15,913.913 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 04:50:15,952.952 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 04:50:15,954.954 INFO    ] No camera update needed
[2026-06-12 04:50:15,955.955 INFO    ] Script finished. Safe exiting...
[2026-06-12 04:50:15,956.956 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 04:50:15,959.959 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 04:50:15,963.963 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 04:50:18,002.002 INFO    ] ================================================
[2026-06-12 04:50:18,017.017 INFO    ] Launching Daemon at Fri Jun 12 04:50:18 IST 2026
[2026-06-12 04:50:18,028.028 INFO    ] ================================================
[2026-06-12 04:50:18,399.399 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 04:50:18
[2026-06-12 04:50:18,735.735 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 04:50:18,866.866 INFO    ] Initializing speech engine...
[2026-06-12 04:50:18,879.879 INFO    ] 2026-06-12 04:50:18
[2026-06-12 04:50:19,090.090 INFO    ] 2026-06-12 04:50:19
[2026-06-12 04:50:19,120.120 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 04:50:19,306.306 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 04:50:19,310.310 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 04:50:19,476.476 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 04:50:19,522.522 INFO    ] time= 12/06/2026 04:50:19
[2026-06-12 04:50:19,543.543 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 04:50:19,549.549 INFO    ] Checking for existing commands in stream...
[2026-06-12 04:50:19,618.618 INFO    ] No existing commands found in stream
[2026-06-12 04:50:24,626.626 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 04:50:24,629.629 INFO    ] Waiting 0.19 seconds before fallback handling...
[2026-06-12 04:50:25,215.215 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 04:50:25,216.216 INFO    ] Checking for system updates...
[2026-06-12 04:50:25,237.237 INFO    ] 200
[2026-06-12 04:50:25,239.239 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:50:25,272.272 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 04:50:25,273.273 INFO    ] No update needed
[2026-06-12 04:50:25,275.275 INFO    ] Checking for camera pi updates...
[2026-06-12 04:50:25,296.296 INFO    ] 200
[2026-06-12 04:50:25,297.297 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:50:25,323.323 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 04:50:25,360.360 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 04:50:25,362.362 INFO    ] No camera update needed
[2026-06-12 04:50:25,363.363 INFO    ] Script finished. Safe exiting...
[2026-06-12 04:50:25,364.364 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 04:50:25,368.368 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 04:50:25,371.371 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 04:50:27,410.410 INFO    ] ================================================
[2026-06-12 04:50:27,425.425 INFO    ] Launching Daemon at Fri Jun 12 04:50:27 IST 2026
[2026-06-12 04:50:27,435.435 INFO    ] ================================================
[2026-06-12 04:50:27,789.789 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 04:50:27
[2026-06-12 04:50:28,126.126 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 04:50:28,282.282 INFO    ] Initializing speech engine...
[2026-06-12 04:50:28,287.287 INFO    ] 2026-06-12 04:50:28
[2026-06-12 04:50:28,492.492 INFO    ] 2026-06-12 04:50:28
[2026-06-12 04:50:28,521.521 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 04:50:28,707.707 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 04:50:28,717.717 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 04:50:28,858.858 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 04:50:28,916.916 INFO    ] time= 12/06/2026 04:50:28
[2026-06-12 04:50:28,939.939 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 04:50:28,945.945 INFO    ] Checking for existing commands in stream...
[2026-06-12 04:50:29,037.037 INFO    ] No existing commands found in stream
[2026-06-12 04:50:34,046.046 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 04:50:34,049.049 INFO    ] Waiting 2.55 seconds before fallback handling...
[2026-06-12 04:50:36,964.964 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 04:50:36,965.965 INFO    ] Checking for system updates...
[2026-06-12 04:50:36,986.986 INFO    ] 200
[2026-06-12 04:50:36,988.988 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:50:37,019.019 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 04:50:37,021.021 INFO    ] No update needed
[2026-06-12 04:50:37,022.022 INFO    ] Checking for camera pi updates...
[2026-06-12 04:50:37,041.041 INFO    ] 200
[2026-06-12 04:50:37,043.043 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:50:37,066.066 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 04:50:37,105.105 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 04:50:37,106.106 INFO    ] No camera update needed
[2026-06-12 04:50:37,108.108 INFO    ] Script finished. Safe exiting...
[2026-06-12 04:50:37,109.109 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 04:50:37,112.112 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 04:50:37,115.115 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 04:50:39,152.152 INFO    ] ================================================
[2026-06-12 04:50:39,168.168 INFO    ] Launching Daemon at Fri Jun 12 04:50:39 IST 2026
[2026-06-12 04:50:39,179.179 INFO    ] ================================================
[2026-06-12 04:50:39,553.553 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 04:50:39
[2026-06-12 04:50:39,872.872 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 04:50:40,006.006 INFO    ] Initializing speech engine...
[2026-06-12 04:50:40,014.014 INFO    ] 2026-06-12 04:50:40
[2026-06-12 04:50:40,226.226 INFO    ] 2026-06-12 04:50:40
[2026-06-12 04:50:40,255.255 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 04:50:40,413.413 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 04:50:40,442.442 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 04:50:40,598.598 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 04:50:40,645.645 INFO    ] time= 12/06/2026 04:50:40
[2026-06-12 04:50:40,668.668 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 04:50:40,674.674 INFO    ] Checking for existing commands in stream...
[2026-06-12 04:50:40,741.741 INFO    ] No existing commands found in stream
[2026-06-12 04:50:45,751.751 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 04:50:45,753.753 INFO    ] Waiting 2.16 seconds before fallback handling...
[2026-06-12 04:50:48,284.284 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 04:50:48,285.285 INFO    ] Checking for system updates...
[2026-06-12 04:50:48,307.307 INFO    ] 200
[2026-06-12 04:50:48,308.308 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:50:48,339.339 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 04:50:48,340.340 INFO    ] No update needed
[2026-06-12 04:50:48,342.342 INFO    ] Checking for camera pi updates...
[2026-06-12 04:50:48,362.362 INFO    ] 200
[2026-06-12 04:50:48,363.363 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:50:48,386.386 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 04:50:48,415.415 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 04:50:48,417.417 INFO    ] No camera update needed
[2026-06-12 04:50:48,418.418 INFO    ] Script finished. Safe exiting...
[2026-06-12 04:50:48,419.419 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 04:50:48,423.423 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 04:50:48,426.426 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 04:50:50,465.465 INFO    ] ================================================
[2026-06-12 04:50:50,480.480 INFO    ] Launching Daemon at Fri Jun 12 04:50:50 IST 2026
[2026-06-12 04:50:50,492.492 INFO    ] ================================================
[2026-06-12 04:50:50,822.822 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 04:50:50
[2026-06-12 04:50:51,138.138 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 04:50:51,270.270 INFO    ] Initializing speech engine...
[2026-06-12 04:50:51,273.273 INFO    ] 2026-06-12 04:50:51
[2026-06-12 04:50:51,490.490 INFO    ] 2026-06-12 04:50:51
[2026-06-12 04:50:51,519.519 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 04:50:51,702.702 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 04:50:51,712.712 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 04:50:51,852.852 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 04:50:51,909.909 INFO    ] time= 12/06/2026 04:50:51
[2026-06-12 04:50:51,931.931 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 04:50:51,937.937 INFO    ] Checking for existing commands in stream...
[2026-06-12 04:50:52,004.004 INFO    ] No existing commands found in stream
[2026-06-12 04:50:57,023.023 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 04:50:57,025.025 INFO    ] Waiting 0.15 seconds before fallback handling...
[2026-06-12 04:50:57,532.532 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 04:50:57,533.533 INFO    ] Checking for system updates...
[2026-06-12 04:50:57,556.556 INFO    ] 200
[2026-06-12 04:50:57,557.557 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:50:57,591.591 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 04:50:57,593.593 INFO    ] No update needed
[2026-06-12 04:50:57,594.594 INFO    ] Checking for camera pi updates...
[2026-06-12 04:50:57,614.614 INFO    ] 200
[2026-06-12 04:50:57,616.616 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:50:57,641.641 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 04:50:57,674.674 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 04:50:57,676.676 INFO    ] No camera update needed
[2026-06-12 04:50:57,677.677 INFO    ] Script finished. Safe exiting...
[2026-06-12 04:50:57,679.679 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 04:50:57,682.682 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 04:50:57,685.685 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 04:50:59,725.725 INFO    ] ================================================
[2026-06-12 04:50:59,740.740 INFO    ] Launching Daemon at Fri Jun 12 04:50:59 IST 2026
[2026-06-12 04:50:59,752.752 INFO    ] ================================================
[2026-06-12 04:51:00,089.089 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 04:51:00
[2026-06-12 04:51:00,400.400 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 04:51:00,531.531 INFO    ] Initializing speech engine...
[2026-06-12 04:51:00,535.535 INFO    ] 2026-06-12 04:51:00
[2026-06-12 04:51:00,752.752 INFO    ] 2026-06-12 04:51:00
[2026-06-12 04:51:00,781.781 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 04:51:00,966.966 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 04:51:00,970.970 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 04:51:01,106.106 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 04:51:01,170.170 INFO    ] time= 12/06/2026 04:51:01
[2026-06-12 04:51:01,184.184 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 04:51:01,227.227 INFO    ] Checking for existing commands in stream...
[2026-06-12 04:51:01,316.316 INFO    ] No existing commands found in stream
[2026-06-12 04:51:06,339.339 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 04:51:06,343.343 INFO    ] Waiting 3.83 seconds before fallback handling...
[2026-06-12 04:51:10,573.573 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 04:51:10,575.575 INFO    ] Checking for system updates...
[2026-06-12 04:51:10,596.596 INFO    ] 200
[2026-06-12 04:51:10,597.597 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:51:10,628.628 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 04:51:10,630.630 INFO    ] No update needed
[2026-06-12 04:51:10,631.631 INFO    ] Checking for camera pi updates...
[2026-06-12 04:51:10,651.651 INFO    ] 200
[2026-06-12 04:51:10,653.653 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:51:10,676.676 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 04:51:10,713.713 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 04:51:10,715.715 INFO    ] No camera update needed
[2026-06-12 04:51:10,716.716 INFO    ] Script finished. Safe exiting...
[2026-06-12 04:51:10,718.718 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 04:51:10,721.721 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 04:51:10,724.724 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 04:51:12,765.765 INFO    ] ================================================
[2026-06-12 04:51:12,780.780 INFO    ] Launching Daemon at Fri Jun 12 04:51:12 IST 2026
[2026-06-12 04:51:12,792.792 INFO    ] ================================================
[2026-06-12 04:51:13,175.175 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 04:51:13
[2026-06-12 04:51:13,522.522 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 04:51:13,679.679 INFO    ] Initializing speech engine...
[2026-06-12 04:51:13,684.684 INFO    ] 2026-06-12 04:51:13
[2026-06-12 04:51:13,894.894 INFO    ] 2026-06-12 04:51:13
[2026-06-12 04:51:13,923.923 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 04:51:14,112.112 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 04:51:14,123.123 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 04:51:14,303.303 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 04:51:14,343.343 INFO    ] time= 12/06/2026 04:51:14
[2026-06-12 04:51:14,349.349 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 04:51:14,351.351 INFO    ] Checking for existing commands in stream...
[2026-06-12 04:51:14,433.433 INFO    ] No existing commands found in stream
[2026-06-12 04:51:19,454.454 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 04:51:19,457.457 INFO    ] Waiting 0.10 seconds before fallback handling...
[2026-06-12 04:51:19,913.913 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 04:51:19,914.914 INFO    ] Checking for system updates...
[2026-06-12 04:51:19,936.936 INFO    ] 200
[2026-06-12 04:51:19,937.937 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:51:19,969.969 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 04:51:19,970.970 INFO    ] No update needed
[2026-06-12 04:51:19,972.972 INFO    ] Checking for camera pi updates...
[2026-06-12 04:51:19,993.993 INFO    ] 200
[2026-06-12 04:51:19,994.994 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:51:20,017.017 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 04:51:20,054.054 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 04:51:20,055.055 INFO    ] No camera update needed
[2026-06-12 04:51:20,057.057 INFO    ] Script finished. Safe exiting...
[2026-06-12 04:51:20,058.058 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 04:51:20,061.061 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 04:51:20,064.064 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 04:51:22,103.103 INFO    ] ================================================
[2026-06-12 04:51:22,118.118 INFO    ] Launching Daemon at Fri Jun 12 04:51:22 IST 2026
[2026-06-12 04:51:22,129.129 INFO    ] ================================================
[2026-06-12 04:51:22,458.458 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 04:51:22
[2026-06-12 04:51:22,773.773 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 04:51:22,912.912 INFO    ] Initializing speech engine...
[2026-06-12 04:51:22,923.923 INFO    ] 2026-06-12 04:51:22
[2026-06-12 04:51:23,132.132 INFO    ] 2026-06-12 04:51:23
[2026-06-12 04:51:23,160.160 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 04:51:23,347.347 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 04:51:23,357.357 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 04:51:23,482.482 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 04:51:23,538.538 INFO    ] time= 12/06/2026 04:51:23
[2026-06-12 04:51:23,574.574 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 04:51:23,585.585 INFO    ] Checking for existing commands in stream...
[2026-06-12 04:51:23,682.682 INFO    ] No existing commands found in stream
[2026-06-12 04:51:28,691.691 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 04:51:28,693.693 INFO    ] Waiting 2.76 seconds before fallback handling...
[2026-06-12 04:51:31,822.822 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 04:51:31,824.824 INFO    ] Checking for system updates...
[2026-06-12 04:51:31,846.846 INFO    ] 200
[2026-06-12 04:51:31,847.847 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:51:31,881.881 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 04:51:31,883.883 INFO    ] No update needed
[2026-06-12 04:51:31,884.884 INFO    ] Checking for camera pi updates...
[2026-06-12 04:51:31,908.908 INFO    ] 200
[2026-06-12 04:51:31,910.910 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:51:31,937.937 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 04:51:31,958.958 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 04:51:31,960.960 INFO    ] No camera update needed
[2026-06-12 04:51:31,962.962 INFO    ] Script finished. Safe exiting...
[2026-06-12 04:51:31,964.964 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 04:51:31,968.968 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 04:51:31,972.972 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 04:51:34,011.011 INFO    ] ================================================
[2026-06-12 04:51:34,027.027 INFO    ] Launching Daemon at Fri Jun 12 04:51:34 IST 2026
[2026-06-12 04:51:34,038.038 INFO    ] ================================================
[2026-06-12 04:51:34,401.401 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 04:51:34
[2026-06-12 04:51:34,718.718 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 04:51:34,861.861 INFO    ] Initializing speech engine...
[2026-06-12 04:51:34,868.868 INFO    ] 2026-06-12 04:51:34
[2026-06-12 04:51:35,120.120 INFO    ] 2026-06-12 04:51:35
[2026-06-12 04:51:35,148.148 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 04:51:35,332.332 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 04:51:35,342.342 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 04:51:35,531.531 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 04:51:35,559.559 INFO    ] time= 12/06/2026 04:51:35
[2026-06-12 04:51:35,565.565 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 04:51:35,566.566 INFO    ] Checking for existing commands in stream...
[2026-06-12 04:51:35,632.632 INFO    ] No existing commands found in stream
[2026-06-12 04:51:40,643.643 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 04:51:40,645.645 INFO    ] Waiting 1.65 seconds before fallback handling...
[2026-06-12 04:51:42,673.673 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 04:51:42,675.675 INFO    ] Checking for system updates...
[2026-06-12 04:51:42,696.696 INFO    ] 200
[2026-06-12 04:51:42,697.697 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:51:42,728.728 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 04:51:42,729.729 INFO    ] No update needed
[2026-06-12 04:51:42,731.731 INFO    ] Checking for camera pi updates...
[2026-06-12 04:51:42,751.751 INFO    ] 200
[2026-06-12 04:51:42,752.752 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:51:42,776.776 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 04:51:42,817.817 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 04:51:42,818.818 INFO    ] No camera update needed
[2026-06-12 04:51:42,820.820 INFO    ] Script finished. Safe exiting...
[2026-06-12 04:51:42,821.821 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 04:51:42,825.825 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 04:51:42,828.828 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 04:51:44,868.868 INFO    ] ================================================
[2026-06-12 04:51:44,884.884 INFO    ] Launching Daemon at Fri Jun 12 04:51:44 IST 2026
[2026-06-12 04:51:44,895.895 INFO    ] ================================================
[2026-06-12 04:51:45,237.237 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 04:51:45
[2026-06-12 04:51:45,550.550 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 04:51:45,682.682 INFO    ] Initializing speech engine...
[2026-06-12 04:51:45,689.689 INFO    ] 2026-06-12 04:51:45
[2026-06-12 04:51:45,903.903 INFO    ] 2026-06-12 04:51:45
[2026-06-12 04:51:45,933.933 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 04:51:46,128.128 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 04:51:46,143.143 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 04:51:46,340.340 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 04:51:46,346.346 INFO    ] time= 12/06/2026 04:51:46
[2026-06-12 04:51:46,351.351 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 04:51:46,353.353 INFO    ] Checking for existing commands in stream...
[2026-06-12 04:51:46,420.420 INFO    ] No existing commands found in stream
[2026-06-12 04:51:51,429.429 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 04:51:51,432.432 INFO    ] Waiting 3.92 seconds before fallback handling...
[2026-06-12 04:51:55,741.741 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 04:51:55,742.742 INFO    ] Checking for system updates...
[2026-06-12 04:51:55,763.763 INFO    ] 200
[2026-06-12 04:51:55,764.764 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:51:55,795.795 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 04:51:55,796.796 INFO    ] No update needed
[2026-06-12 04:51:55,797.797 INFO    ] Checking for camera pi updates...
[2026-06-12 04:51:55,820.820 INFO    ] 200
[2026-06-12 04:51:55,822.822 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:51:55,845.845 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 04:51:55,889.889 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 04:51:55,891.891 INFO    ] No camera update needed
[2026-06-12 04:51:55,892.892 INFO    ] Script finished. Safe exiting...
[2026-06-12 04:51:55,893.893 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 04:51:55,896.896 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 04:51:55,899.899 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 04:51:57,932.932 INFO    ] ================================================
[2026-06-12 04:51:57,948.948 INFO    ] Launching Daemon at Fri Jun 12 04:51:57 IST 2026
[2026-06-12 04:51:57,959.959 INFO    ] ================================================
[2026-06-12 04:51:58,342.342 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 04:51:58
[2026-06-12 04:51:58,685.685 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 04:51:58,836.836 INFO    ] Initializing speech engine...
[2026-06-12 04:51:58,842.842 INFO    ] 2026-06-12 04:51:58
[2026-06-12 04:51:59,051.051 INFO    ] 2026-06-12 04:51:59
[2026-06-12 04:51:59,080.080 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 04:51:59,266.266 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 04:51:59,275.275 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 04:51:59,417.417 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 04:51:59,476.476 INFO    ] time= 12/06/2026 04:51:59
[2026-06-12 04:51:59,498.498 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 04:51:59,504.504 INFO    ] Checking for existing commands in stream...
[2026-06-12 04:51:59,571.571 INFO    ] No existing commands found in stream
[2026-06-12 04:52:04,590.590 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 04:52:04,591.591 INFO    ] Waiting 0.84 seconds before fallback handling...
[2026-06-12 04:52:05,885.885 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 04:52:05,887.887 INFO    ] Checking for system updates...
[2026-06-12 04:52:05,907.907 INFO    ] 200
[2026-06-12 04:52:05,909.909 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:52:05,939.939 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 04:52:05,940.940 INFO    ] No update needed
[2026-06-12 04:52:05,942.942 INFO    ] Checking for camera pi updates...
[2026-06-12 04:52:05,963.963 INFO    ] 200
[2026-06-12 04:52:05,964.964 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:52:05,990.990 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 04:52:06,025.025 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 04:52:06,026.026 INFO    ] No camera update needed
[2026-06-12 04:52:06,027.027 INFO    ] Script finished. Safe exiting...
[2026-06-12 04:52:06,029.029 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 04:52:06,032.032 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 04:52:06,034.034 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 04:52:08,073.073 INFO    ] ================================================
[2026-06-12 04:52:08,089.089 INFO    ] Launching Daemon at Fri Jun 12 04:52:08 IST 2026
[2026-06-12 04:52:08,100.100 INFO    ] ================================================
[2026-06-12 04:52:08,461.461 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 04:52:08
[2026-06-12 04:52:08,797.797 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 04:52:08,939.939 INFO    ] Initializing speech engine...
[2026-06-12 04:52:08,954.954 INFO    ] 2026-06-12 04:52:08
[2026-06-12 04:52:09,161.161 INFO    ] 2026-06-12 04:52:09
[2026-06-12 04:52:09,190.190 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 04:52:09,376.376 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 04:52:09,385.385 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 04:52:09,508.508 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 04:52:09,579.579 INFO    ] time= 12/06/2026 04:52:09
[2026-06-12 04:52:09,607.607 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 04:52:09,614.614 INFO    ] Checking for existing commands in stream...
[2026-06-12 04:52:09,704.704 INFO    ] No existing commands found in stream
[2026-06-12 04:52:14,719.719 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 04:52:14,722.722 INFO    ] Waiting 2.97 seconds before fallback handling...
[2026-06-12 04:52:18,084.084 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 04:52:18,086.086 INFO    ] Checking for system updates...
[2026-06-12 04:52:18,107.107 INFO    ] 200
[2026-06-12 04:52:18,109.109 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:52:18,139.139 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 04:52:18,141.141 INFO    ] No update needed
[2026-06-12 04:52:18,142.142 INFO    ] Checking for camera pi updates...
[2026-06-12 04:52:18,168.168 INFO    ] 200
[2026-06-12 04:52:18,171.171 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:52:18,197.197 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 04:52:18,221.221 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 04:52:18,223.223 INFO    ] No camera update needed
[2026-06-12 04:52:18,224.224 INFO    ] Script finished. Safe exiting...
[2026-06-12 04:52:18,225.225 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 04:52:18,229.229 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 04:52:18,232.232 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 04:52:20,263.263 INFO    ] ================================================
[2026-06-12 04:52:20,272.272 INFO    ] Launching Daemon at Fri Jun 12 04:52:20 IST 2026
[2026-06-12 04:52:20,419.419 INFO    ] ================================================
[2026-06-12 04:52:20,767.767 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 04:52:20
[2026-06-12 04:52:21,079.079 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 04:52:21,212.212 INFO    ] Initializing speech engine...
[2026-06-12 04:52:21,225.225 INFO    ] 2026-06-12 04:52:21
[2026-06-12 04:52:21,437.437 INFO    ] 2026-06-12 04:52:21
[2026-06-12 04:52:21,469.469 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 04:52:21,667.667 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 04:52:21,671.671 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 04:52:21,818.818 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 04:52:21,883.883 INFO    ] time= 12/06/2026 04:52:21
[2026-06-12 04:52:21,925.925 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 04:52:21,926.926 INFO    ] Checking for existing commands in stream...
[2026-06-12 04:52:22,004.004 INFO    ] No existing commands found in stream
[2026-06-12 04:52:27,014.014 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 04:52:27,017.017 INFO    ] Waiting 3.82 seconds before fallback handling...
[2026-06-12 04:52:31,237.237 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 04:52:31,239.239 INFO    ] Checking for system updates...
[2026-06-12 04:52:31,259.259 INFO    ] 200
[2026-06-12 04:52:31,261.261 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:52:31,291.291 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 04:52:31,293.293 INFO    ] No update needed
[2026-06-12 04:52:31,294.294 INFO    ] Checking for camera pi updates...
[2026-06-12 04:52:31,314.314 INFO    ] 200
[2026-06-12 04:52:31,315.315 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:52:31,338.338 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 04:52:31,362.362 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 04:52:31,364.364 INFO    ] No camera update needed
[2026-06-12 04:52:31,365.365 INFO    ] Script finished. Safe exiting...
[2026-06-12 04:52:31,366.366 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 04:52:31,369.369 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 04:52:31,372.372 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 04:52:33,403.403 INFO    ] ================================================
[2026-06-12 04:52:33,419.419 INFO    ] Launching Daemon at Fri Jun 12 04:52:33 IST 2026
[2026-06-12 04:52:33,429.429 INFO    ] ================================================
[2026-06-12 04:52:33,755.755 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 04:52:33
[2026-06-12 04:52:34,067.067 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 04:52:34,204.204 INFO    ] Initializing speech engine...
[2026-06-12 04:52:34,214.214 INFO    ] 2026-06-12 04:52:34
[2026-06-12 04:52:34,417.417 INFO    ] 2026-06-12 04:52:34
[2026-06-12 04:52:34,445.445 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 04:52:34,628.628 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 04:52:34,632.632 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 04:52:34,823.823 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 04:52:34,855.855 INFO    ] time= 12/06/2026 04:52:34
[2026-06-12 04:52:34,857.857 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 04:52:34,863.863 INFO    ] Checking for existing commands in stream...
[2026-06-12 04:52:34,928.928 INFO    ] No existing commands found in stream
[2026-06-12 04:52:39,938.938 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 04:52:39,941.941 INFO    ] Waiting 1.86 seconds before fallback handling...
[2026-06-12 04:52:42,179.179 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 04:52:42,181.181 INFO    ] Checking for system updates...
[2026-06-12 04:52:42,203.203 INFO    ] 200
[2026-06-12 04:52:42,204.204 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:52:42,235.235 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 04:52:42,237.237 INFO    ] No update needed
[2026-06-12 04:52:42,238.238 INFO    ] Checking for camera pi updates...
[2026-06-12 04:52:42,259.259 INFO    ] 200
[2026-06-12 04:52:42,260.260 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:52:42,284.284 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 04:52:42,425.425 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 04:52:42,426.426 INFO    ] No camera update needed
[2026-06-12 04:52:42,427.427 INFO    ] Script finished. Safe exiting...
[2026-06-12 04:52:42,429.429 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 04:52:42,432.432 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 04:52:42,434.434 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 04:52:44,472.472 INFO    ] ================================================
[2026-06-12 04:52:44,487.487 INFO    ] Launching Daemon at Fri Jun 12 04:52:44 IST 2026
[2026-06-12 04:52:44,499.499 INFO    ] ================================================
[2026-06-12 04:52:44,835.835 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 04:52:44
[2026-06-12 04:52:45,148.148 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 04:52:45,278.278 INFO    ] Initializing speech engine...
[2026-06-12 04:52:45,283.283 INFO    ] 2026-06-12 04:52:45
[2026-06-12 04:52:45,504.504 INFO    ] 2026-06-12 04:52:45
[2026-06-12 04:52:45,532.532 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 04:52:45,717.717 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 04:52:45,725.725 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 04:52:45,861.861 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 04:52:45,924.924 INFO    ] time= 12/06/2026 04:52:45
[2026-06-12 04:52:45,948.948 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 04:52:45,953.953 INFO    ] Checking for existing commands in stream...
[2026-06-12 04:52:46,021.021 INFO    ] No existing commands found in stream
[2026-06-12 04:52:51,035.035 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 04:52:51,038.038 INFO    ] Waiting 3.94 seconds before fallback handling...
[2026-06-12 04:52:55,399.399 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 04:52:55,400.400 INFO    ] Checking for system updates...
[2026-06-12 04:52:55,423.423 INFO    ] 200
[2026-06-12 04:52:55,424.424 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:52:55,457.457 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 04:52:55,458.458 INFO    ] No update needed
[2026-06-12 04:52:55,460.460 INFO    ] Checking for camera pi updates...
[2026-06-12 04:52:55,479.479 INFO    ] 200
[2026-06-12 04:52:55,481.481 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:52:55,506.506 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 04:52:55,542.542 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 04:52:55,544.544 INFO    ] No camera update needed
[2026-06-12 04:52:55,545.545 INFO    ] Script finished. Safe exiting...
[2026-06-12 04:52:55,547.547 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 04:52:55,550.550 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 04:52:55,552.552 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 04:52:57,592.592 INFO    ] ================================================
[2026-06-12 04:52:57,607.607 INFO    ] Launching Daemon at Fri Jun 12 04:52:57 IST 2026
[2026-06-12 04:52:57,618.618 INFO    ] ================================================
[2026-06-12 04:52:57,939.939 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 04:52:57
[2026-06-12 04:52:58,250.250 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 04:52:58,382.382 INFO    ] Initializing speech engine...
[2026-06-12 04:52:58,395.395 INFO    ] 2026-06-12 04:52:58
[2026-06-12 04:52:58,613.613 INFO    ] 2026-06-12 04:52:58
[2026-06-12 04:52:58,642.642 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 04:52:58,827.827 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 04:52:58,837.837 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 04:52:58,962.962 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 04:52:59,024.024 INFO    ] time= 12/06/2026 04:52:58
[2026-06-12 04:52:59,057.057 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 04:52:59,059.059 INFO    ] Checking for existing commands in stream...
[2026-06-12 04:52:59,130.130 INFO    ] No existing commands found in stream
[2026-06-12 04:53:04,144.144 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 04:53:04,147.147 INFO    ] Waiting 3.91 seconds before fallback handling...
[2026-06-12 04:53:08,438.438 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 04:53:08,439.439 INFO    ] Checking for system updates...
[2026-06-12 04:53:08,462.462 INFO    ] 200
[2026-06-12 04:53:08,463.463 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:53:08,493.493 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 04:53:08,495.495 INFO    ] No update needed
[2026-06-12 04:53:08,496.496 INFO    ] Checking for camera pi updates...
[2026-06-12 04:53:08,518.518 INFO    ] 200
[2026-06-12 04:53:08,519.519 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:53:08,543.543 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 04:53:08,595.595 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 04:53:08,597.597 INFO    ] No camera update needed
[2026-06-12 04:53:08,598.598 INFO    ] Script finished. Safe exiting...
[2026-06-12 04:53:08,599.599 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 04:53:08,602.602 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 04:53:08,605.605 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 04:53:10,643.643 INFO    ] ================================================
[2026-06-12 04:53:10,659.659 INFO    ] Launching Daemon at Fri Jun 12 04:53:10 IST 2026
[2026-06-12 04:53:10,670.670 INFO    ] ================================================
[2026-06-12 04:53:11,036.036 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 04:53:11
[2026-06-12 04:53:11,347.347 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 04:53:11,476.476 INFO    ] Initializing speech engine...
[2026-06-12 04:53:11,485.485 INFO    ] 2026-06-12 04:53:11
[2026-06-12 04:53:11,699.699 INFO    ] 2026-06-12 04:53:11
[2026-06-12 04:53:11,729.729 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 04:53:11,914.914 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 04:53:11,924.924 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 04:53:12,076.076 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 04:53:12,136.136 INFO    ] time= 12/06/2026 04:53:12
[2026-06-12 04:53:12,147.147 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 04:53:12,153.153 INFO    ] Checking for existing commands in stream...
[2026-06-12 04:53:12,221.221 INFO    ] No existing commands found in stream
[2026-06-12 04:53:17,230.230 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 04:53:17,233.233 INFO    ] Waiting 2.71 seconds before fallback handling...
[2026-06-12 04:53:20,326.326 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 04:53:20,328.328 INFO    ] Checking for system updates...
[2026-06-12 04:53:20,348.348 INFO    ] 200
[2026-06-12 04:53:20,349.349 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:53:20,380.380 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 04:53:20,381.381 INFO    ] No update needed
[2026-06-12 04:53:20,383.383 INFO    ] Checking for camera pi updates...
[2026-06-12 04:53:20,403.403 INFO    ] 200
[2026-06-12 04:53:20,405.405 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:53:20,428.428 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 04:53:20,469.469 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 04:53:20,470.470 INFO    ] No camera update needed
[2026-06-12 04:53:20,471.471 INFO    ] Script finished. Safe exiting...
[2026-06-12 04:53:20,473.473 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 04:53:20,475.475 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 04:53:20,478.478 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 04:53:22,516.516 INFO    ] ================================================
[2026-06-12 04:53:22,532.532 INFO    ] Launching Daemon at Fri Jun 12 04:53:22 IST 2026
[2026-06-12 04:53:22,543.543 INFO    ] ================================================
[2026-06-12 04:53:22,917.917 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 04:53:22
[2026-06-12 04:53:23,228.228 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 04:53:23,372.372 INFO    ] Initializing speech engine...
[2026-06-12 04:53:23,376.376 INFO    ] 2026-06-12 04:53:23
[2026-06-12 04:53:23,582.582 INFO    ] 2026-06-12 04:53:23
[2026-06-12 04:53:23,611.611 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 04:53:23,798.798 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 04:53:23,807.807 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 04:53:23,986.986 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 04:53:24,021.021 INFO    ] time= 12/06/2026 04:53:23
[2026-06-12 04:53:24,031.031 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 04:53:24,038.038 INFO    ] Checking for existing commands in stream...
[2026-06-12 04:53:24,105.105 INFO    ] No existing commands found in stream
[2026-06-12 04:53:29,114.114 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 04:53:29,116.116 INFO    ] Waiting 3.89 seconds before fallback handling...
[2026-06-12 04:53:33,376.376 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 04:53:33,378.378 INFO    ] Checking for system updates...
[2026-06-12 04:53:33,400.400 INFO    ] 200
[2026-06-12 04:53:33,402.402 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:53:33,432.432 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 04:53:33,433.433 INFO    ] No update needed
[2026-06-12 04:53:33,434.434 INFO    ] Checking for camera pi updates...
[2026-06-12 04:53:33,461.461 INFO    ] 200
[2026-06-12 04:53:33,463.463 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:53:33,490.490 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 04:53:33,523.523 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 04:53:33,524.524 INFO    ] No camera update needed
[2026-06-12 04:53:33,526.526 INFO    ] Script finished. Safe exiting...
[2026-06-12 04:53:33,527.527 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 04:53:33,530.530 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 04:53:33,533.533 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 04:53:35,573.573 INFO    ] ================================================
[2026-06-12 04:53:35,589.589 INFO    ] Launching Daemon at Fri Jun 12 04:53:35 IST 2026
[2026-06-12 04:53:35,600.600 INFO    ] ================================================
[2026-06-12 04:53:35,960.960 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 04:53:35
[2026-06-12 04:53:36,274.274 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 04:53:36,405.405 INFO    ] Initializing speech engine...
[2026-06-12 04:53:36,408.408 INFO    ] 2026-06-12 04:53:36
[2026-06-12 04:53:36,624.624 INFO    ] 2026-06-12 04:53:36
[2026-06-12 04:53:36,652.652 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 04:53:36,836.836 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 04:53:36,846.846 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 04:53:37,020.020 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 04:53:37,058.058 INFO    ] time= 12/06/2026 04:53:37
[2026-06-12 04:53:37,063.063 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 04:53:37,070.070 INFO    ] Checking for existing commands in stream...
[2026-06-12 04:53:37,136.136 INFO    ] No existing commands found in stream
[2026-06-12 04:53:42,160.160 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 04:53:42,163.163 INFO    ] Waiting 3.22 seconds before fallback handling...
[2026-06-12 04:53:45,782.782 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 04:53:45,784.784 INFO    ] Checking for system updates...
[2026-06-12 04:53:45,805.805 INFO    ] 200
[2026-06-12 04:53:45,806.806 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:53:45,839.839 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 04:53:45,840.840 INFO    ] No update needed
[2026-06-12 04:53:45,842.842 INFO    ] Checking for camera pi updates...
[2026-06-12 04:53:45,861.861 INFO    ] 200
[2026-06-12 04:53:45,862.862 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:53:45,887.887 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 04:53:45,923.923 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 04:53:45,925.925 INFO    ] No camera update needed
[2026-06-12 04:53:45,926.926 INFO    ] Script finished. Safe exiting...
[2026-06-12 04:53:45,927.927 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 04:53:45,930.930 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 04:53:45,933.933 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 04:53:47,972.972 INFO    ] ================================================
[2026-06-12 04:53:47,994.994 INFO    ] Launching Daemon at Fri Jun 12 04:53:47 IST 2026
[2026-06-12 04:53:48,005.005 INFO    ] ================================================
[2026-06-12 04:53:48,332.332 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 04:53:48
[2026-06-12 04:53:48,644.644 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 04:53:48,774.774 INFO    ] Initializing speech engine...
[2026-06-12 04:53:48,778.778 INFO    ] 2026-06-12 04:53:48
[2026-06-12 04:53:48,993.993 INFO    ] 2026-06-12 04:53:48
[2026-06-12 04:53:49,022.022 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 04:53:49,205.205 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 04:53:49,215.215 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 04:53:49,358.358 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 04:53:49,411.411 INFO    ] time= 12/06/2026 04:53:49
[2026-06-12 04:53:49,433.433 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 04:53:49,439.439 INFO    ] Checking for existing commands in stream...
[2026-06-12 04:53:49,504.504 INFO    ] No existing commands found in stream
[2026-06-12 04:53:54,514.514 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 04:53:54,517.517 INFO    ] Waiting 1.95 seconds before fallback handling...
[2026-06-12 04:53:56,860.860 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 04:53:56,861.861 INFO    ] Checking for system updates...
[2026-06-12 04:53:56,882.882 INFO    ] 200
[2026-06-12 04:53:56,884.884 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:53:56,914.914 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 04:53:56,915.915 INFO    ] No update needed
[2026-06-12 04:53:56,917.917 INFO    ] Checking for camera pi updates...
[2026-06-12 04:53:56,936.936 INFO    ] 200
[2026-06-12 04:53:56,938.938 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:53:56,963.963 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 04:53:57,007.007 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 04:53:57,008.008 INFO    ] No camera update needed
[2026-06-12 04:53:57,010.010 INFO    ] Script finished. Safe exiting...
[2026-06-12 04:53:57,011.011 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 04:53:57,015.015 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 04:53:57,018.018 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 04:53:59,057.057 INFO    ] ================================================
[2026-06-12 04:53:59,073.073 INFO    ] Launching Daemon at Fri Jun 12 04:53:59 IST 2026
[2026-06-12 04:53:59,084.084 INFO    ] ================================================
[2026-06-12 04:53:59,405.405 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 04:53:59
[2026-06-12 04:53:59,716.716 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 04:53:59,857.857 INFO    ] Initializing speech engine...
[2026-06-12 04:53:59,862.862 INFO    ] 2026-06-12 04:53:59
[2026-06-12 04:54:00,066.066 INFO    ] 2026-06-12 04:54:00
[2026-06-12 04:54:00,094.094 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 04:54:00,278.278 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 04:54:00,289.289 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 04:54:00,466.466 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 04:54:00,500.500 INFO    ] time= 12/06/2026 04:54:00
[2026-06-12 04:54:00,506.506 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 04:54:00,512.512 INFO    ] Checking for existing commands in stream...
[2026-06-12 04:54:00,579.579 INFO    ] No existing commands found in stream
[2026-06-12 04:54:05,593.593 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 04:54:05,595.595 INFO    ] Waiting 3.83 seconds before fallback handling...
[2026-06-12 04:54:09,828.828 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 04:54:09,829.829 INFO    ] Checking for system updates...
[2026-06-12 04:54:09,850.850 INFO    ] 200
[2026-06-12 04:54:09,851.851 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:54:09,881.881 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 04:54:09,882.882 INFO    ] No update needed
[2026-06-12 04:54:09,884.884 INFO    ] Checking for camera pi updates...
[2026-06-12 04:54:09,903.903 INFO    ] 200
[2026-06-12 04:54:09,904.904 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:54:09,929.929 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 04:54:09,970.970 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 04:54:09,971.971 INFO    ] No camera update needed
[2026-06-12 04:54:09,972.972 INFO    ] Script finished. Safe exiting...
[2026-06-12 04:54:09,974.974 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 04:54:09,976.976 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 04:54:09,979.979 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 04:54:12,020.020 INFO    ] ================================================
[2026-06-12 04:54:12,035.035 INFO    ] Launching Daemon at Fri Jun 12 04:54:12 IST 2026
[2026-06-12 04:54:12,047.047 INFO    ] ================================================
[2026-06-12 04:54:12,414.414 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 04:54:12
[2026-06-12 04:54:12,726.726 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 04:54:12,863.863 INFO    ] Initializing speech engine...
[2026-06-12 04:54:12,872.872 INFO    ] 2026-06-12 04:54:12
[2026-06-12 04:54:13,076.076 INFO    ] 2026-06-12 04:54:13
[2026-06-12 04:54:13,105.105 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 04:54:13,288.288 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 04:54:13,297.297 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 04:54:13,437.437 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 04:54:13,495.495 INFO    ] time= 12/06/2026 04:54:13
[2026-06-12 04:54:13,517.517 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 04:54:13,523.523 INFO    ] Checking for existing commands in stream...
[2026-06-12 04:54:13,590.590 INFO    ] No existing commands found in stream
[2026-06-12 04:54:18,599.599 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 04:54:18,602.602 INFO    ] Waiting 0.23 seconds before fallback handling...
[2026-06-12 04:54:19,181.181 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 04:54:19,182.182 INFO    ] Checking for system updates...
[2026-06-12 04:54:19,204.204 INFO    ] 200
[2026-06-12 04:54:19,205.205 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:54:19,238.238 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 04:54:19,239.239 INFO    ] No update needed
[2026-06-12 04:54:19,240.240 INFO    ] Checking for camera pi updates...
[2026-06-12 04:54:19,260.260 INFO    ] 200
[2026-06-12 04:54:19,261.261 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:54:19,287.287 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 04:54:19,322.322 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 04:54:19,324.324 INFO    ] No camera update needed
[2026-06-12 04:54:19,325.325 INFO    ] Script finished. Safe exiting...
[2026-06-12 04:54:19,326.326 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 04:54:19,329.329 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 04:54:19,332.332 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 04:54:21,372.372 INFO    ] ================================================
[2026-06-12 04:54:21,388.388 INFO    ] Launching Daemon at Fri Jun 12 04:54:21 IST 2026
[2026-06-12 04:54:21,399.399 INFO    ] ================================================
[2026-06-12 04:54:21,775.775 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 04:54:21
[2026-06-12 04:54:22,120.120 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 04:54:22,260.260 INFO    ] Initializing speech engine...
[2026-06-12 04:54:22,268.268 INFO    ] 2026-06-12 04:54:22
[2026-06-12 04:54:22,484.484 INFO    ] 2026-06-12 04:54:22
[2026-06-12 04:54:22,513.513 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 04:54:22,698.698 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 04:54:22,708.708 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 04:54:22,893.893 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 04:54:22,927.927 INFO    ] time= 12/06/2026 04:54:22
[2026-06-12 04:54:22,929.929 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 04:54:22,936.936 INFO    ] Checking for existing commands in stream...
[2026-06-12 04:54:23,001.001 INFO    ] No existing commands found in stream
[2026-06-12 04:54:28,012.012 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 04:54:28,015.015 INFO    ] Waiting 2.86 seconds before fallback handling...
[2026-06-12 04:54:31,253.253 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 04:54:31,254.254 INFO    ] Checking for system updates...
[2026-06-12 04:54:31,278.278 INFO    ] 200
[2026-06-12 04:54:31,279.279 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:54:31,313.313 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 04:54:31,315.315 INFO    ] No update needed
[2026-06-12 04:54:31,316.316 INFO    ] Checking for camera pi updates...
[2026-06-12 04:54:31,336.336 INFO    ] 200
[2026-06-12 04:54:31,337.337 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:54:31,363.363 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 04:54:31,409.409 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 04:54:31,410.410 INFO    ] No camera update needed
[2026-06-12 04:54:31,412.412 INFO    ] Script finished. Safe exiting...
[2026-06-12 04:54:31,413.413 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 04:54:31,416.416 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 04:54:31,419.419 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 04:54:33,452.452 INFO    ] ================================================
[2026-06-12 04:54:33,468.468 INFO    ] Launching Daemon at Fri Jun 12 04:54:33 IST 2026
[2026-06-12 04:54:33,479.479 INFO    ] ================================================
[2026-06-12 04:54:33,828.828 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 04:54:33
[2026-06-12 04:54:34,144.144 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 04:54:34,288.288 INFO    ] Initializing speech engine...
[2026-06-12 04:54:34,293.293 INFO    ] 2026-06-12 04:54:34
[2026-06-12 04:54:34,495.495 INFO    ] 2026-06-12 04:54:34
[2026-06-12 04:54:34,525.525 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 04:54:34,708.708 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 04:54:34,717.717 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 04:54:34,862.862 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 04:54:34,915.915 INFO    ] time= 12/06/2026 04:54:34
[2026-06-12 04:54:34,938.938 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 04:54:34,944.944 INFO    ] Checking for existing commands in stream...
[2026-06-12 04:54:35,011.011 INFO    ] No existing commands found in stream
[2026-06-12 04:54:40,035.035 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 04:54:40,038.038 INFO    ] Waiting 0.19 seconds before fallback handling...
[2026-06-12 04:54:40,579.579 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 04:54:40,580.580 INFO    ] Checking for system updates...
[2026-06-12 04:54:40,601.601 INFO    ] 200
[2026-06-12 04:54:40,602.602 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:54:40,632.632 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 04:54:40,634.634 INFO    ] No update needed
[2026-06-12 04:54:40,635.635 INFO    ] Checking for camera pi updates...
[2026-06-12 04:54:40,654.654 INFO    ] 200
[2026-06-12 04:54:40,656.656 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:54:40,681.681 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 04:54:40,729.729 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 04:54:40,730.730 INFO    ] No camera update needed
[2026-06-12 04:54:40,731.731 INFO    ] Script finished. Safe exiting...
[2026-06-12 04:54:40,733.733 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 04:54:40,736.736 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 04:54:40,738.738 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 04:54:42,776.776 INFO    ] ================================================
[2026-06-12 04:54:42,792.792 INFO    ] Launching Daemon at Fri Jun 12 04:54:42 IST 2026
[2026-06-12 04:54:42,803.803 INFO    ] ================================================
[2026-06-12 04:54:43,170.170 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 04:54:43
[2026-06-12 04:54:43,507.507 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 04:54:43,644.644 INFO    ] Initializing speech engine...
[2026-06-12 04:54:43,654.654 INFO    ] 2026-06-12 04:54:43
[2026-06-12 04:54:43,861.861 INFO    ] 2026-06-12 04:54:43
[2026-06-12 04:54:43,891.891 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 04:54:44,079.079 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 04:54:44,089.089 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 04:54:44,270.270 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 04:54:44,311.311 INFO    ] time= 12/06/2026 04:54:44
[2026-06-12 04:54:44,317.317 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 04:54:44,319.319 INFO    ] Checking for existing commands in stream...
[2026-06-12 04:54:44,411.411 INFO    ] No existing commands found in stream
[2026-06-12 04:54:49,420.420 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 04:54:49,423.423 INFO    ] Waiting 1.79 seconds before fallback handling...
[2026-06-12 04:54:51,577.577 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 04:54:51,579.579 INFO    ] Checking for system updates...
[2026-06-12 04:54:51,601.601 INFO    ] 200
[2026-06-12 04:54:51,603.603 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:54:51,633.633 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 04:54:51,634.634 INFO    ] No update needed
[2026-06-12 04:54:51,635.635 INFO    ] Checking for camera pi updates...
[2026-06-12 04:54:51,656.656 INFO    ] 200
[2026-06-12 04:54:51,657.657 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:54:51,681.681 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 04:54:51,824.824 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 04:54:51,826.826 INFO    ] No camera update needed
[2026-06-12 04:54:51,827.827 INFO    ] Script finished. Safe exiting...
[2026-06-12 04:54:51,828.828 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 04:54:51,831.831 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 04:54:51,834.834 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 04:54:53,877.877 INFO    ] ================================================
[2026-06-12 04:54:53,892.892 INFO    ] Launching Daemon at Fri Jun 12 04:54:53 IST 2026
[2026-06-12 04:54:53,903.903 INFO    ] ================================================
[2026-06-12 04:54:54,282.282 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 04:54:54
[2026-06-12 04:54:54,630.630 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 04:54:54,786.786 INFO    ] Initializing speech engine...
[2026-06-12 04:54:54,791.791 INFO    ] 2026-06-12 04:54:54
[2026-06-12 04:54:55,001.001 INFO    ] 2026-06-12 04:54:54
[2026-06-12 04:54:55,030.030 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 04:54:55,216.216 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 04:54:55,227.227 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 04:54:55,370.370 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 04:54:55,429.429 INFO    ] time= 12/06/2026 04:54:55
[2026-06-12 04:54:55,452.452 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 04:54:55,459.459 INFO    ] Checking for existing commands in stream...
[2026-06-12 04:54:55,527.527 INFO    ] No existing commands found in stream
[2026-06-12 04:55:00,542.542 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 04:55:00,545.545 INFO    ] Waiting 2.96 seconds before fallback handling...
[2026-06-12 04:55:03,896.896 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 04:55:03,897.897 INFO    ] Checking for system updates...
[2026-06-12 04:55:03,920.920 INFO    ] 200
[2026-06-12 04:55:03,921.921 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:55:03,954.954 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 04:55:03,956.956 INFO    ] No update needed
[2026-06-12 04:55:03,957.957 INFO    ] Checking for camera pi updates...
[2026-06-12 04:55:03,977.977 INFO    ] 200
[2026-06-12 04:55:03,978.978 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:55:04,003.003 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 04:55:04,040.040 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 04:55:04,042.042 INFO    ] No camera update needed
[2026-06-12 04:55:04,043.043 INFO    ] Script finished. Safe exiting...
[2026-06-12 04:55:04,044.044 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 04:55:04,047.047 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 04:55:04,051.051 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 04:55:06,089.089 INFO    ] ================================================
[2026-06-12 04:55:06,104.104 INFO    ] Launching Daemon at Fri Jun 12 04:55:06 IST 2026
[2026-06-12 04:55:06,116.116 INFO    ] ================================================
[2026-06-12 04:55:06,452.452 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 04:55:06
[2026-06-12 04:55:06,765.765 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 04:55:06,903.903 INFO    ] Initializing speech engine...
[2026-06-12 04:55:06,910.910 INFO    ] 2026-06-12 04:55:06
[2026-06-12 04:55:07,118.118 INFO    ] 2026-06-12 04:55:07
[2026-06-12 04:55:07,147.147 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 04:55:07,333.333 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 04:55:07,343.343 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 04:55:07,472.472 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 04:55:07,526.526 INFO    ] time= 12/06/2026 04:55:07
[2026-06-12 04:55:07,564.564 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 04:55:07,566.566 INFO    ] Checking for existing commands in stream...
[2026-06-12 04:55:07,663.663 INFO    ] No existing commands found in stream
[2026-06-12 04:55:12,672.672 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 04:55:12,674.674 INFO    ] Waiting 0.52 seconds before fallback handling...
[2026-06-12 04:55:13,587.587 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 04:55:13,588.588 INFO    ] Checking for system updates...
[2026-06-12 04:55:13,609.609 INFO    ] 200
[2026-06-12 04:55:13,611.611 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:55:13,644.644 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 04:55:13,645.645 INFO    ] No update needed
[2026-06-12 04:55:13,647.647 INFO    ] Checking for camera pi updates...
[2026-06-12 04:55:13,667.667 INFO    ] 200
[2026-06-12 04:55:13,668.668 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:55:13,693.693 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 04:55:13,733.733 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 04:55:13,734.734 INFO    ] No camera update needed
[2026-06-12 04:55:13,736.736 INFO    ] Script finished. Safe exiting...
[2026-06-12 04:55:13,737.737 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 04:55:13,740.740 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 04:55:13,743.743 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 04:55:15,783.783 INFO    ] ================================================
[2026-06-12 04:55:15,798.798 INFO    ] Launching Daemon at Fri Jun 12 04:55:15 IST 2026
[2026-06-12 04:55:15,810.810 INFO    ] ================================================
[2026-06-12 04:55:16,155.155 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 04:55:16
[2026-06-12 04:55:16,472.472 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 04:55:16,616.616 INFO    ] Initializing speech engine...
[2026-06-12 04:55:16,621.621 INFO    ] 2026-06-12 04:55:16
[2026-06-12 04:55:16,825.825 INFO    ] 2026-06-12 04:55:16
[2026-06-12 04:55:16,854.854 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 04:55:17,037.037 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 04:55:17,046.046 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 04:55:17,237.237 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 04:55:17,264.264 INFO    ] time= 12/06/2026 04:55:17
[2026-06-12 04:55:17,269.269 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 04:55:17,271.271 INFO    ] Checking for existing commands in stream...
[2026-06-12 04:55:17,338.338 INFO    ] No existing commands found in stream
[2026-06-12 04:55:22,347.347 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 04:55:22,350.350 INFO    ] Waiting 3.68 seconds before fallback handling...
[2026-06-12 04:55:26,377.377 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 04:55:26,379.379 INFO    ] Checking for system updates...
[2026-06-12 04:55:26,400.400 INFO    ] 200
[2026-06-12 04:55:26,401.401 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:55:26,434.434 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 04:55:26,435.435 INFO    ] No update needed
[2026-06-12 04:55:26,436.436 INFO    ] Checking for camera pi updates...
[2026-06-12 04:55:26,456.456 INFO    ] 200
[2026-06-12 04:55:26,457.457 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:55:26,480.480 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 04:55:26,525.525 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 04:55:26,527.527 INFO    ] No camera update needed
[2026-06-12 04:55:26,528.528 INFO    ] Script finished. Safe exiting...
[2026-06-12 04:55:26,529.529 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 04:55:26,532.532 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 04:55:26,535.535 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 04:55:28,576.576 INFO    ] ================================================
[2026-06-12 04:55:28,591.591 INFO    ] Launching Daemon at Fri Jun 12 04:55:28 IST 2026
[2026-06-12 04:55:28,602.602 INFO    ] ================================================
[2026-06-12 04:55:28,950.950 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 04:55:28
[2026-06-12 04:55:29,291.291 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 04:55:29,445.445 INFO    ] Initializing speech engine...
[2026-06-12 04:55:29,451.451 INFO    ] 2026-06-12 04:55:29
[2026-06-12 04:55:29,660.660 INFO    ] 2026-06-12 04:55:29
[2026-06-12 04:55:29,689.689 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 04:55:29,888.888 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 04:55:29,904.904 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 04:55:30,064.064 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 04:55:30,109.109 INFO    ] time= 12/06/2026 04:55:30
[2026-06-12 04:55:30,115.115 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 04:55:30,117.117 INFO    ] Checking for existing commands in stream...
[2026-06-12 04:55:30,185.185 INFO    ] No existing commands found in stream
[2026-06-12 04:55:35,200.200 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 04:55:35,203.203 INFO    ] Waiting 1.38 seconds before fallback handling...
[2026-06-12 04:55:37,008.008 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 04:55:37,010.010 INFO    ] Checking for system updates...
[2026-06-12 04:55:37,031.031 INFO    ] 200
[2026-06-12 04:55:37,033.033 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:55:37,063.063 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 04:55:37,065.065 INFO    ] No update needed
[2026-06-12 04:55:37,066.066 INFO    ] Checking for camera pi updates...
[2026-06-12 04:55:37,086.086 INFO    ] 200
[2026-06-12 04:55:37,088.088 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:55:37,111.111 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 04:55:37,154.154 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 04:55:37,156.156 INFO    ] No camera update needed
[2026-06-12 04:55:37,157.157 INFO    ] Script finished. Safe exiting...
[2026-06-12 04:55:37,159.159 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 04:55:37,162.162 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 04:55:37,165.165 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 04:55:39,204.204 INFO    ] ================================================
[2026-06-12 04:55:39,220.220 INFO    ] Launching Daemon at Fri Jun 12 04:55:39 IST 2026
[2026-06-12 04:55:39,230.230 INFO    ] ================================================
[2026-06-12 04:55:39,602.602 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 04:55:39
[2026-06-12 04:55:39,919.919 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 04:55:40,062.062 INFO    ] Initializing speech engine...
[2026-06-12 04:55:40,072.072 INFO    ] 2026-06-12 04:55:40
[2026-06-12 04:55:40,291.291 INFO    ] 2026-06-12 04:55:40
[2026-06-12 04:55:40,322.322 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 04:55:40,522.522 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 04:55:40,531.531 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 04:55:40,673.673 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 04:55:40,732.732 INFO    ] time= 12/06/2026 04:55:40
[2026-06-12 04:55:40,771.771 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 04:55:40,773.773 INFO    ] Checking for existing commands in stream...
[2026-06-12 04:55:40,848.848 INFO    ] No existing commands found in stream
[2026-06-12 04:55:45,859.859 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 04:55:45,862.862 INFO    ] Waiting 1.20 seconds before fallback handling...
[2026-06-12 04:55:47,458.458 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 04:55:47,460.460 INFO    ] Checking for system updates...
[2026-06-12 04:55:47,483.483 INFO    ] 200
[2026-06-12 04:55:47,485.485 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:55:47,515.515 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 04:55:47,517.517 INFO    ] No update needed
[2026-06-12 04:55:47,518.518 INFO    ] Checking for camera pi updates...
[2026-06-12 04:55:47,539.539 INFO    ] 200
[2026-06-12 04:55:47,541.541 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:55:47,566.566 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 04:55:47,606.606 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 04:55:47,608.608 INFO    ] No camera update needed
[2026-06-12 04:55:47,609.609 INFO    ] Script finished. Safe exiting...
[2026-06-12 04:55:47,611.611 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 04:55:47,614.614 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 04:55:47,617.617 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 04:55:49,657.657 INFO    ] ================================================
[2026-06-12 04:55:49,672.672 INFO    ] Launching Daemon at Fri Jun 12 04:55:49 IST 2026
[2026-06-12 04:55:49,683.683 INFO    ] ================================================
[2026-06-12 04:55:50,050.050 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 04:55:50
[2026-06-12 04:55:50,369.369 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 04:55:50,512.512 INFO    ] Initializing speech engine...
[2026-06-12 04:55:50,517.517 INFO    ] 2026-06-12 04:55:50
[2026-06-12 04:55:50,723.723 INFO    ] 2026-06-12 04:55:50
[2026-06-12 04:55:50,752.752 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 04:55:50,933.933 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 04:55:50,937.937 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 04:55:51,133.133 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 04:55:51,160.160 INFO    ] time= 12/06/2026 04:55:51
[2026-06-12 04:55:51,163.163 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 04:55:51,168.168 INFO    ] Checking for existing commands in stream...
[2026-06-12 04:55:51,234.234 INFO    ] No existing commands found in stream
[2026-06-12 04:55:56,248.248 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 04:55:56,251.251 INFO    ] Waiting 1.19 seconds before fallback handling...
[2026-06-12 04:55:57,819.819 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 04:55:57,821.821 INFO    ] Checking for system updates...
[2026-06-12 04:55:57,841.841 INFO    ] 200
[2026-06-12 04:55:57,843.843 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:55:57,873.873 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 04:55:57,875.875 INFO    ] No update needed
[2026-06-12 04:55:57,876.876 INFO    ] Checking for camera pi updates...
[2026-06-12 04:55:57,897.897 INFO    ] 200
[2026-06-12 04:55:57,899.899 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:55:57,924.924 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 04:55:57,964.964 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 04:55:57,966.966 INFO    ] No camera update needed
[2026-06-12 04:55:57,967.967 INFO    ] Script finished. Safe exiting...
[2026-06-12 04:55:57,968.968 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 04:55:57,971.971 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 04:55:57,974.974 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 04:56:00,013.013 INFO    ] ================================================
[2026-06-12 04:56:00,029.029 INFO    ] Launching Daemon at Fri Jun 12 04:56:00 IST 2026
[2026-06-12 04:56:00,039.039 INFO    ] ================================================
[2026-06-12 04:56:00,426.426 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 04:56:00
[2026-06-12 04:56:00,768.768 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 04:56:00,914.914 INFO    ] Initializing speech engine...
[2026-06-12 04:56:00,925.925 INFO    ] 2026-06-12 04:56:00
[2026-06-12 04:56:01,133.133 INFO    ] 2026-06-12 04:56:01
[2026-06-12 04:56:01,161.161 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 04:56:01,344.344 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 04:56:01,355.355 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 04:56:01,541.541 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 04:56:01,574.574 INFO    ] time= 12/06/2026 04:56:01
[2026-06-12 04:56:01,602.602 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 04:56:01,634.634 INFO    ] Checking for existing commands in stream...
[2026-06-12 04:56:01,734.734 INFO    ] No existing commands found in stream
[2026-06-12 04:56:06,752.752 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 04:56:06,755.755 INFO    ] Waiting 3.77 seconds before fallback handling...
[2026-06-12 04:56:10,919.919 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 04:56:10,921.921 INFO    ] Checking for system updates...
[2026-06-12 04:56:10,942.942 INFO    ] 200
[2026-06-12 04:56:10,943.943 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:56:10,976.976 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 04:56:10,977.977 INFO    ] No update needed
[2026-06-12 04:56:10,978.978 INFO    ] Checking for camera pi updates...
[2026-06-12 04:56:11,001.001 INFO    ] 200
[2026-06-12 04:56:11,002.002 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:56:11,025.025 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 04:56:11,065.065 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 04:56:11,067.067 INFO    ] No camera update needed
[2026-06-12 04:56:11,068.068 INFO    ] Script finished. Safe exiting...
[2026-06-12 04:56:11,069.069 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 04:56:11,072.072 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 04:56:11,075.075 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 04:56:13,115.115 INFO    ] ================================================
[2026-06-12 04:56:13,131.131 INFO    ] Launching Daemon at Fri Jun 12 04:56:13 IST 2026
[2026-06-12 04:56:13,141.141 INFO    ] ================================================
[2026-06-12 04:56:13,484.484 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 04:56:13
[2026-06-12 04:56:13,800.800 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 04:56:13,931.931 INFO    ] Initializing speech engine...
[2026-06-12 04:56:13,940.940 INFO    ] 2026-06-12 04:56:13
[2026-06-12 04:56:14,152.152 INFO    ] 2026-06-12 04:56:14
[2026-06-12 04:56:14,182.182 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 04:56:14,365.365 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 04:56:14,374.374 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 04:56:14,568.568 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 04:56:14,593.593 INFO    ] time= 12/06/2026 04:56:14
[2026-06-12 04:56:14,598.598 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 04:56:14,600.600 INFO    ] Checking for existing commands in stream...
[2026-06-12 04:56:14,667.667 INFO    ] No existing commands found in stream
[2026-06-12 04:56:19,681.681 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 04:56:19,684.684 INFO    ] Waiting 3.73 seconds before fallback handling...
[2026-06-12 04:56:23,828.828 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 04:56:23,829.829 INFO    ] Checking for system updates...
[2026-06-12 04:56:23,850.850 INFO    ] 200
[2026-06-12 04:56:23,851.851 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:56:23,882.882 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 04:56:23,883.883 INFO    ] No update needed
[2026-06-12 04:56:23,885.885 INFO    ] Checking for camera pi updates...
[2026-06-12 04:56:23,905.905 INFO    ] 200
[2026-06-12 04:56:23,906.906 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:56:23,931.931 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 04:56:23,970.970 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 04:56:23,972.972 INFO    ] No camera update needed
[2026-06-12 04:56:23,973.973 INFO    ] Script finished. Safe exiting...
[2026-06-12 04:56:23,974.974 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 04:56:23,977.977 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 04:56:23,980.980 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 04:56:26,021.021 INFO    ] ================================================
[2026-06-12 04:56:26,036.036 INFO    ] Launching Daemon at Fri Jun 12 04:56:26 IST 2026
[2026-06-12 04:56:26,047.047 INFO    ] ================================================
[2026-06-12 04:56:26,382.382 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 04:56:26
[2026-06-12 04:56:26,694.694 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 04:56:26,825.825 INFO    ] Initializing speech engine...
[2026-06-12 04:56:26,833.833 INFO    ] 2026-06-12 04:56:26
[2026-06-12 04:56:27,046.046 INFO    ] 2026-06-12 04:56:27
[2026-06-12 04:56:27,074.074 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 04:56:27,257.257 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 04:56:27,266.266 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 04:56:27,442.442 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 04:56:27,481.481 INFO    ] time= 12/06/2026 04:56:27
[2026-06-12 04:56:27,486.486 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 04:56:27,492.492 INFO    ] Checking for existing commands in stream...
[2026-06-12 04:56:27,558.558 INFO    ] No existing commands found in stream
[2026-06-12 04:56:32,567.567 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 04:56:32,570.570 INFO    ] Waiting 3.75 seconds before fallback handling...
[2026-06-12 04:56:36,687.687 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 04:56:36,688.688 INFO    ] Checking for system updates...
[2026-06-12 04:56:36,710.710 INFO    ] 200
[2026-06-12 04:56:36,712.712 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:56:36,744.744 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 04:56:36,746.746 INFO    ] No update needed
[2026-06-12 04:56:36,747.747 INFO    ] Checking for camera pi updates...
[2026-06-12 04:56:36,767.767 INFO    ] 200
[2026-06-12 04:56:36,769.769 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:56:36,792.792 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 04:56:36,830.830 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 04:56:36,832.832 INFO    ] No camera update needed
[2026-06-12 04:56:36,833.833 INFO    ] Script finished. Safe exiting...
[2026-06-12 04:56:36,834.834 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 04:56:36,837.837 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 04:56:36,840.840 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 04:56:38,879.879 INFO    ] ================================================
[2026-06-12 04:56:38,895.895 INFO    ] Launching Daemon at Fri Jun 12 04:56:38 IST 2026
[2026-06-12 04:56:38,906.906 INFO    ] ================================================
[2026-06-12 04:56:39,252.252 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 04:56:39
[2026-06-12 04:56:39,564.564 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 04:56:39,696.696 INFO    ] Initializing speech engine...
[2026-06-12 04:56:39,700.700 INFO    ] 2026-06-12 04:56:39
[2026-06-12 04:56:39,895.895 INFO    ] 2026-06-12 04:56:39
[2026-06-12 04:56:39,936.936 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 04:56:40,096.096 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 04:56:40,148.148 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 04:56:40,311.311 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 04:56:40,368.368 INFO    ] time= 12/06/2026 04:56:40
[2026-06-12 04:56:40,404.404 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 04:56:40,416.416 INFO    ] Checking for existing commands in stream...
[2026-06-12 04:56:40,487.487 INFO    ] No existing commands found in stream
[2026-06-12 04:56:45,496.496 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 04:56:45,499.499 INFO    ] Waiting 1.30 seconds before fallback handling...
[2026-06-12 04:56:47,206.206 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 04:56:47,207.207 INFO    ] Checking for system updates...
[2026-06-12 04:56:47,229.229 INFO    ] 200
[2026-06-12 04:56:47,230.230 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:56:47,261.261 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 04:56:47,262.262 INFO    ] No update needed
[2026-06-12 04:56:47,263.263 INFO    ] Checking for camera pi updates...
[2026-06-12 04:56:47,284.284 INFO    ] 200
[2026-06-12 04:56:47,285.285 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:56:47,308.308 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 04:56:47,353.353 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 04:56:47,354.354 INFO    ] No camera update needed
[2026-06-12 04:56:47,355.355 INFO    ] Script finished. Safe exiting...
[2026-06-12 04:56:47,357.357 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 04:56:47,359.359 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 04:56:47,362.362 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 04:56:49,400.400 INFO    ] ================================================
[2026-06-12 04:56:49,415.415 INFO    ] Launching Daemon at Fri Jun 12 04:56:49 IST 2026
[2026-06-12 04:56:49,426.426 INFO    ] ================================================
[2026-06-12 04:56:49,780.780 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 04:56:49
[2026-06-12 04:56:50,092.092 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 04:56:50,222.222 INFO    ] Initializing speech engine...
[2026-06-12 04:56:50,226.226 INFO    ] 2026-06-12 04:56:50
[2026-06-12 04:56:50,445.445 INFO    ] 2026-06-12 04:56:50
[2026-06-12 04:56:50,474.474 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 04:56:50,660.660 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 04:56:50,664.664 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 04:56:50,863.863 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 04:56:50,893.893 INFO    ] time= 12/06/2026 04:56:50
[2026-06-12 04:56:50,895.895 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 04:56:50,900.900 INFO    ] Checking for existing commands in stream...
[2026-06-12 04:56:50,969.969 INFO    ] No existing commands found in stream
[2026-06-12 04:56:55,993.993 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 04:56:55,996.996 INFO    ] Waiting 2.40 seconds before fallback handling...
[2026-06-12 04:56:58,768.768 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 04:56:58,769.769 INFO    ] Checking for system updates...
[2026-06-12 04:56:58,790.790 INFO    ] 200
[2026-06-12 04:56:58,792.792 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:56:58,824.824 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 04:56:58,825.825 INFO    ] No update needed
[2026-06-12 04:56:58,827.827 INFO    ] Checking for camera pi updates...
[2026-06-12 04:56:58,846.846 INFO    ] 200
[2026-06-12 04:56:58,847.847 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:56:58,872.872 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 04:56:59,008.008 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 04:56:59,010.010 INFO    ] No camera update needed
[2026-06-12 04:56:59,011.011 INFO    ] Script finished. Safe exiting...
[2026-06-12 04:56:59,012.012 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 04:56:59,015.015 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 04:56:59,018.018 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 04:57:01,059.059 INFO    ] ================================================
[2026-06-12 04:57:01,074.074 INFO    ] Launching Daemon at Fri Jun 12 04:57:01 IST 2026
[2026-06-12 04:57:01,085.085 INFO    ] ================================================
[2026-06-12 04:57:01,458.458 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 04:57:01
[2026-06-12 04:57:01,771.771 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 04:57:01,900.900 INFO    ] Initializing speech engine...
[2026-06-12 04:57:01,904.904 INFO    ] 2026-06-12 04:57:01
[2026-06-12 04:57:02,268.268 INFO    ] 2026-06-12 04:57:02
[2026-06-12 04:57:02,292.292 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 04:57:02,502.502 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 04:57:02,523.523 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 04:57:02,698.698 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 04:57:02,750.750 INFO    ] time= 12/06/2026 04:57:02
[2026-06-12 04:57:02,768.768 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 04:57:02,771.771 INFO    ] Checking for existing commands in stream...
[2026-06-12 04:57:02,845.845 INFO    ] No existing commands found in stream
[2026-06-12 04:57:07,859.859 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 04:57:07,862.862 INFO    ] Waiting 1.56 seconds before fallback handling...
[2026-06-12 04:57:09,817.817 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 04:57:09,818.818 INFO    ] Checking for system updates...
[2026-06-12 04:57:09,840.840 INFO    ] 200
[2026-06-12 04:57:09,842.842 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:57:09,874.874 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 04:57:09,876.876 INFO    ] No update needed
[2026-06-12 04:57:09,877.877 INFO    ] Checking for camera pi updates...
[2026-06-12 04:57:09,896.896 INFO    ] 200
[2026-06-12 04:57:09,898.898 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:57:09,923.923 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 04:57:09,959.959 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 04:57:09,961.961 INFO    ] No camera update needed
[2026-06-12 04:57:09,962.962 INFO    ] Script finished. Safe exiting...
[2026-06-12 04:57:09,963.963 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 04:57:09,966.966 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 04:57:09,969.969 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 04:57:12,008.008 INFO    ] ================================================
[2026-06-12 04:57:12,023.023 INFO    ] Launching Daemon at Fri Jun 12 04:57:12 IST 2026
[2026-06-12 04:57:12,033.033 INFO    ] ================================================
[2026-06-12 04:57:12,396.396 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 04:57:12
[2026-06-12 04:57:12,709.709 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 04:57:12,846.846 INFO    ] Initializing speech engine...
[2026-06-12 04:57:12,855.855 INFO    ] 2026-06-12 04:57:12
[2026-06-12 04:57:13,061.061 INFO    ] 2026-06-12 04:57:13
[2026-06-12 04:57:13,090.090 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 04:57:13,277.277 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 04:57:13,286.286 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 04:57:13,474.474 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 04:57:13,508.508 INFO    ] time= 12/06/2026 04:57:13
[2026-06-12 04:57:13,515.515 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 04:57:13,516.516 INFO    ] Checking for existing commands in stream...
[2026-06-12 04:57:13,608.608 INFO    ] No existing commands found in stream
[2026-06-12 04:57:18,622.622 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 04:57:18,624.624 INFO    ] Waiting 1.04 seconds before fallback handling...
[2026-06-12 04:57:20,071.071 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 04:57:20,073.073 INFO    ] Checking for system updates...
[2026-06-12 04:57:20,093.093 INFO    ] 200
[2026-06-12 04:57:20,095.095 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:57:20,132.132 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 04:57:20,133.133 INFO    ] No update needed
[2026-06-12 04:57:20,134.134 INFO    ] Checking for camera pi updates...
[2026-06-12 04:57:20,153.153 INFO    ] 200
[2026-06-12 04:57:20,155.155 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:57:20,178.178 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 04:57:20,215.215 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 04:57:20,216.216 INFO    ] No camera update needed
[2026-06-12 04:57:20,217.217 INFO    ] Script finished. Safe exiting...
[2026-06-12 04:57:20,218.218 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 04:57:20,222.222 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 04:57:20,224.224 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 04:57:22,264.264 INFO    ] ================================================
[2026-06-12 04:57:22,279.279 INFO    ] Launching Daemon at Fri Jun 12 04:57:22 IST 2026
[2026-06-12 04:57:22,290.290 INFO    ] ================================================
[2026-06-12 04:57:22,640.640 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 04:57:22
[2026-06-12 04:57:22,951.951 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 04:57:23,082.082 INFO    ] Initializing speech engine...
[2026-06-12 04:57:23,095.095 INFO    ] 2026-06-12 04:57:23
[2026-06-12 04:57:23,301.301 INFO    ] 2026-06-12 04:57:23
[2026-06-12 04:57:23,330.330 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 04:57:23,514.514 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 04:57:23,524.524 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 04:57:23,667.667 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 04:57:23,721.721 INFO    ] time= 12/06/2026 04:57:23
[2026-06-12 04:57:23,743.743 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 04:57:23,749.749 INFO    ] Checking for existing commands in stream...
[2026-06-12 04:57:23,816.816 INFO    ] No existing commands found in stream
[2026-06-12 04:57:28,825.825 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 04:57:28,828.828 INFO    ] Waiting 0.84 seconds before fallback handling...
[2026-06-12 04:57:30,086.086 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 04:57:30,088.088 INFO    ] Checking for system updates...
[2026-06-12 04:57:30,108.108 INFO    ] 200
[2026-06-12 04:57:30,110.110 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:57:30,140.140 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 04:57:30,141.141 INFO    ] No update needed
[2026-06-12 04:57:30,142.142 INFO    ] Checking for camera pi updates...
[2026-06-12 04:57:30,163.163 INFO    ] 200
[2026-06-12 04:57:30,164.164 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:57:30,189.189 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 04:57:30,223.223 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 04:57:30,224.224 INFO    ] No camera update needed
[2026-06-12 04:57:30,225.225 INFO    ] Script finished. Safe exiting...
[2026-06-12 04:57:30,227.227 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 04:57:30,229.229 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 04:57:30,232.232 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 04:57:32,265.265 INFO    ] ================================================
[2026-06-12 04:57:32,274.274 INFO    ] Launching Daemon at Fri Jun 12 04:57:32 IST 2026
[2026-06-12 04:57:32,281.281 INFO    ] ================================================
[2026-06-12 04:57:32,614.614 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 04:57:32
[2026-06-12 04:57:32,959.959 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 04:57:33,098.098 INFO    ] Initializing speech engine...
[2026-06-12 04:57:33,107.107 INFO    ] 2026-06-12 04:57:33
[2026-06-12 04:57:33,313.313 INFO    ] 2026-06-12 04:57:33
[2026-06-12 04:57:33,342.342 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 04:57:33,525.525 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 04:57:33,534.534 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 04:57:33,716.716 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 04:57:33,753.753 INFO    ] time= 12/06/2026 04:57:33
[2026-06-12 04:57:33,759.759 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 04:57:33,761.761 INFO    ] Checking for existing commands in stream...
[2026-06-12 04:57:33,828.828 INFO    ] No existing commands found in stream
[2026-06-12 04:57:38,837.837 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 04:57:38,840.840 INFO    ] Waiting 2.05 seconds before fallback handling...
[2026-06-12 04:57:41,325.325 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 04:57:41,327.327 INFO    ] Checking for system updates...
[2026-06-12 04:57:41,349.349 INFO    ] 200
[2026-06-12 04:57:41,350.350 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:57:41,386.386 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 04:57:41,387.387 INFO    ] No update needed
[2026-06-12 04:57:41,388.388 INFO    ] Checking for camera pi updates...
[2026-06-12 04:57:41,409.409 INFO    ] 200
[2026-06-12 04:57:41,411.411 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:57:41,434.434 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 04:57:41,471.471 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 04:57:41,472.472 INFO    ] No camera update needed
[2026-06-12 04:57:41,473.473 INFO    ] Script finished. Safe exiting...
[2026-06-12 04:57:41,474.474 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 04:57:41,477.477 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 04:57:41,480.480 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 04:57:43,521.521 INFO    ] ================================================
[2026-06-12 04:57:43,536.536 INFO    ] Launching Daemon at Fri Jun 12 04:57:43 IST 2026
[2026-06-12 04:57:43,547.547 INFO    ] ================================================
[2026-06-12 04:57:43,890.890 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 04:57:43
[2026-06-12 04:57:44,201.201 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 04:57:44,330.330 INFO    ] Initializing speech engine...
[2026-06-12 04:57:44,334.334 INFO    ] 2026-06-12 04:57:44
[2026-06-12 04:57:44,553.553 INFO    ] 2026-06-12 04:57:44
[2026-06-12 04:57:44,581.581 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 04:57:44,766.766 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 04:57:44,776.776 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 04:57:44,928.928 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 04:57:44,978.978 INFO    ] time= 12/06/2026 04:57:44
[2026-06-12 04:57:45,000.000 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 04:57:45,006.006 INFO    ] Checking for existing commands in stream...
[2026-06-12 04:57:45,073.073 INFO    ] No existing commands found in stream
[2026-06-12 04:57:50,087.087 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 04:57:50,090.090 INFO    ] Waiting 1.26 seconds before fallback handling...
[2026-06-12 04:57:51,755.755 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 04:57:51,756.756 INFO    ] Checking for system updates...
[2026-06-12 04:57:51,777.777 INFO    ] 200
[2026-06-12 04:57:51,779.779 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:57:51,810.810 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 04:57:51,811.811 INFO    ] No update needed
[2026-06-12 04:57:51,813.813 INFO    ] Checking for camera pi updates...
[2026-06-12 04:57:51,834.834 INFO    ] 200
[2026-06-12 04:57:51,835.835 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:57:51,859.859 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 04:57:51,896.896 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 04:57:51,897.897 INFO    ] No camera update needed
[2026-06-12 04:57:51,899.899 INFO    ] Script finished. Safe exiting...
[2026-06-12 04:57:51,900.900 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 04:57:51,903.903 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 04:57:51,906.906 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 04:57:53,945.945 INFO    ] ================================================
[2026-06-12 04:57:53,960.960 INFO    ] Launching Daemon at Fri Jun 12 04:57:53 IST 2026
[2026-06-12 04:57:53,971.971 INFO    ] ================================================
[2026-06-12 04:57:54,314.314 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 04:57:54
[2026-06-12 04:57:54,634.634 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 04:57:54,767.767 INFO    ] Initializing speech engine...
[2026-06-12 04:57:54,774.774 INFO    ] 2026-06-12 04:57:54
[2026-06-12 04:57:54,987.987 INFO    ] 2026-06-12 04:57:54
[2026-06-12 04:57:55,016.016 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 04:57:55,200.200 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 04:57:55,209.209 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 04:57:55,389.389 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 04:57:55,426.426 INFO    ] time= 12/06/2026 04:57:55
[2026-06-12 04:57:55,433.433 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 04:57:55,435.435 INFO    ] Checking for existing commands in stream...
[2026-06-12 04:57:55,525.525 INFO    ] No existing commands found in stream
[2026-06-12 04:58:00,539.539 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 04:58:00,542.542 INFO    ] Waiting 1.72 seconds before fallback handling...
[2026-06-12 04:58:02,594.594 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 04:58:02,596.596 INFO    ] Checking for system updates...
[2026-06-12 04:58:02,617.617 INFO    ] 200
[2026-06-12 04:58:02,618.618 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:58:02,664.664 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 04:58:02,666.666 INFO    ] No update needed
[2026-06-12 04:58:02,669.669 INFO    ] Checking for camera pi updates...
[2026-06-12 04:58:02,707.707 INFO    ] 200
[2026-06-12 04:58:02,709.709 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:58:02,746.746 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 04:58:02,782.782 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 04:58:02,783.783 INFO    ] No camera update needed
[2026-06-12 04:58:02,785.785 INFO    ] Script finished. Safe exiting...
[2026-06-12 04:58:02,786.786 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 04:58:02,789.789 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 04:58:02,792.792 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 04:58:04,830.830 INFO    ] ================================================
[2026-06-12 04:58:04,845.845 INFO    ] Launching Daemon at Fri Jun 12 04:58:04 IST 2026
[2026-06-12 04:58:04,856.856 INFO    ] ================================================
[2026-06-12 04:58:05,208.208 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 04:58:05
[2026-06-12 04:58:05,555.555 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 04:58:05,709.709 INFO    ] Initializing speech engine...
[2026-06-12 04:58:05,715.715 INFO    ] 2026-06-12 04:58:05
[2026-06-12 04:58:05,924.924 INFO    ] 2026-06-12 04:58:05
[2026-06-12 04:58:05,953.953 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 04:58:06,137.137 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 04:58:06,147.147 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 04:58:06,319.319 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 04:58:06,365.365 INFO    ] time= 12/06/2026 04:58:06
[2026-06-12 04:58:06,375.375 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 04:58:06,377.377 INFO    ] Checking for existing commands in stream...
[2026-06-12 04:58:06,467.467 INFO    ] No existing commands found in stream
[2026-06-12 04:58:11,487.487 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 04:58:11,491.491 INFO    ] Waiting 3.11 seconds before fallback handling...
[2026-06-12 04:58:15,017.017 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 04:58:15,018.018 INFO    ] Checking for system updates...
[2026-06-12 04:58:15,041.041 INFO    ] 200
[2026-06-12 04:58:15,043.043 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:58:15,083.083 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 04:58:15,084.084 INFO    ] No update needed
[2026-06-12 04:58:15,086.086 INFO    ] Checking for camera pi updates...
[2026-06-12 04:58:15,108.108 INFO    ] 200
[2026-06-12 04:58:15,109.109 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:58:15,133.133 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 04:58:15,170.170 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 04:58:15,172.172 INFO    ] No camera update needed
[2026-06-12 04:58:15,173.173 INFO    ] Script finished. Safe exiting...
[2026-06-12 04:58:15,174.174 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 04:58:15,178.178 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 04:58:15,181.181 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 04:58:17,219.219 INFO    ] ================================================
[2026-06-12 04:58:17,235.235 INFO    ] Launching Daemon at Fri Jun 12 04:58:17 IST 2026
[2026-06-12 04:58:17,246.246 INFO    ] ================================================
[2026-06-12 04:58:17,576.576 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 04:58:17
[2026-06-12 04:58:17,887.887 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 04:58:18,028.028 INFO    ] Initializing speech engine...
[2026-06-12 04:58:18,034.034 INFO    ] 2026-06-12 04:58:18
[2026-06-12 04:58:18,236.236 INFO    ] 2026-06-12 04:58:18
[2026-06-12 04:58:18,264.264 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 04:58:18,449.449 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 04:58:18,457.457 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 04:58:18,589.589 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 04:58:18,641.641 INFO    ] time= 12/06/2026 04:58:18
[2026-06-12 04:58:18,658.658 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 04:58:18,660.660 INFO    ] Checking for existing commands in stream...
[2026-06-12 04:58:18,766.766 INFO    ] No existing commands found in stream
[2026-06-12 04:58:23,776.776 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 04:58:23,779.779 INFO    ] Waiting 4.00 seconds before fallback handling...
[2026-06-12 04:58:28,198.198 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 04:58:28,200.200 INFO    ] Checking for system updates...
[2026-06-12 04:58:28,222.222 INFO    ] 200
[2026-06-12 04:58:28,224.224 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:58:28,257.257 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 04:58:28,258.258 INFO    ] No update needed
[2026-06-12 04:58:28,259.259 INFO    ] Checking for camera pi updates...
[2026-06-12 04:58:28,278.278 INFO    ] 200
[2026-06-12 04:58:28,280.280 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:58:28,304.304 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 04:58:28,345.345 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 04:58:28,346.346 INFO    ] No camera update needed
[2026-06-12 04:58:28,348.348 INFO    ] Script finished. Safe exiting...
[2026-06-12 04:58:28,349.349 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 04:58:28,352.352 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 04:58:28,355.355 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 04:58:30,394.394 INFO    ] ================================================
[2026-06-12 04:58:30,409.409 INFO    ] Launching Daemon at Fri Jun 12 04:58:30 IST 2026
[2026-06-12 04:58:30,419.419 INFO    ] ================================================
[2026-06-12 04:58:30,742.742 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 04:58:30
[2026-06-12 04:58:31,056.056 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 04:58:31,200.200 INFO    ] Initializing speech engine...
[2026-06-12 04:58:31,205.205 INFO    ] 2026-06-12 04:58:31
[2026-06-12 04:58:31,401.401 INFO    ] 2026-06-12 04:58:31
[2026-06-12 04:58:31,452.452 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 04:58:31,632.632 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 04:58:31,665.665 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 04:58:31,846.846 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 04:58:31,873.873 INFO    ] time= 12/06/2026 04:58:31
[2026-06-12 04:58:31,938.938 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 04:58:31,975.975 INFO    ] Checking for existing commands in stream...
[2026-06-12 04:58:32,065.065 INFO    ] No existing commands found in stream
[2026-06-12 04:58:37,076.076 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 04:58:37,079.079 INFO    ] Waiting 3.52 seconds before fallback handling...
[2026-06-12 04:58:40,994.994 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 04:58:40,995.995 INFO    ] Checking for system updates...
[2026-06-12 04:58:41,016.016 INFO    ] 200
[2026-06-12 04:58:41,017.017 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:58:41,047.047 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 04:58:41,048.048 INFO    ] No update needed
[2026-06-12 04:58:41,050.050 INFO    ] Checking for camera pi updates...
[2026-06-12 04:58:41,071.071 INFO    ] 200
[2026-06-12 04:58:41,072.072 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:58:41,097.097 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 04:58:41,135.135 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 04:58:41,136.136 INFO    ] No camera update needed
[2026-06-12 04:58:41,137.137 INFO    ] Script finished. Safe exiting...
[2026-06-12 04:58:41,139.139 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 04:58:41,142.142 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 04:58:41,144.144 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 04:58:43,183.183 INFO    ] ================================================
[2026-06-12 04:58:43,199.199 INFO    ] Launching Daemon at Fri Jun 12 04:58:43 IST 2026
[2026-06-12 04:58:43,210.210 INFO    ] ================================================
[2026-06-12 04:58:43,555.555 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 04:58:43
[2026-06-12 04:58:43,869.869 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 04:58:44,007.007 INFO    ] Initializing speech engine...
[2026-06-12 04:58:44,015.015 INFO    ] 2026-06-12 04:58:44
[2026-06-12 04:58:44,223.223 INFO    ] 2026-06-12 04:58:44
[2026-06-12 04:58:44,253.253 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 04:58:44,440.440 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 04:58:44,449.449 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 04:58:44,580.580 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 04:58:44,644.644 INFO    ] time= 12/06/2026 04:58:44
[2026-06-12 04:58:44,673.673 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 04:58:44,675.675 INFO    ] Checking for existing commands in stream...
[2026-06-12 04:58:44,747.747 INFO    ] No existing commands found in stream
[2026-06-12 04:58:49,758.758 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 04:58:49,761.761 INFO    ] Waiting 0.89 seconds before fallback handling...
[2026-06-12 04:58:51,082.082 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 04:58:51,083.083 INFO    ] Checking for system updates...
[2026-06-12 04:58:51,106.106 INFO    ] 200
[2026-06-12 04:58:51,107.107 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:58:51,144.144 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 04:58:51,145.145 INFO    ] No update needed
[2026-06-12 04:58:51,147.147 INFO    ] Checking for camera pi updates...
[2026-06-12 04:58:51,169.169 INFO    ] 200
[2026-06-12 04:58:51,171.171 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:58:51,195.195 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 04:58:51,237.237 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 04:58:51,238.238 INFO    ] No camera update needed
[2026-06-12 04:58:51,240.240 INFO    ] Script finished. Safe exiting...
[2026-06-12 04:58:51,241.241 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 04:58:51,244.244 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 04:58:51,247.247 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 04:58:53,289.289 INFO    ] ================================================
[2026-06-12 04:58:53,304.304 INFO    ] Launching Daemon at Fri Jun 12 04:58:53 IST 2026
[2026-06-12 04:58:53,315.315 INFO    ] ================================================
[2026-06-12 04:58:53,655.655 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 04:58:53
[2026-06-12 04:58:53,969.969 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 04:58:54,112.112 INFO    ] Initializing speech engine...
[2026-06-12 04:58:54,117.117 INFO    ] 2026-06-12 04:58:54
[2026-06-12 04:58:54,324.324 INFO    ] 2026-06-12 04:58:54
[2026-06-12 04:58:54,352.352 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 04:58:54,517.517 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 04:58:54,542.542 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 04:58:54,680.680 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 04:58:54,749.749 INFO    ] time= 12/06/2026 04:58:54
[2026-06-12 04:58:54,774.774 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 04:58:54,781.781 INFO    ] Checking for existing commands in stream...
[2026-06-12 04:58:54,848.848 INFO    ] No existing commands found in stream
[2026-06-12 04:58:59,852.852 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 04:58:59,855.855 INFO    ] Waiting 0.55 seconds before fallback handling...
[2026-06-12 04:59:00,805.805 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 04:59:00,806.806 INFO    ] Checking for system updates...
[2026-06-12 04:59:00,828.828 INFO    ] 200
[2026-06-12 04:59:00,830.830 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:59:00,863.863 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 04:59:00,864.864 INFO    ] No update needed
[2026-06-12 04:59:00,865.865 INFO    ] Checking for camera pi updates...
[2026-06-12 04:59:00,886.886 INFO    ] 200
[2026-06-12 04:59:00,887.887 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:59:00,913.913 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 04:59:01,052.052 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 04:59:01,053.053 INFO    ] No camera update needed
[2026-06-12 04:59:01,054.054 INFO    ] Script finished. Safe exiting...
[2026-06-12 04:59:01,056.056 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 04:59:01,058.058 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 04:59:01,061.061 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 04:59:03,097.097 INFO    ] ================================================
[2026-06-12 04:59:03,113.113 INFO    ] Launching Daemon at Fri Jun 12 04:59:03 IST 2026
[2026-06-12 04:59:03,125.125 INFO    ] ================================================
[2026-06-12 04:59:03,479.479 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 04:59:03
[2026-06-12 04:59:03,793.793 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 04:59:03,930.930 INFO    ] Initializing speech engine...
[2026-06-12 04:59:03,940.940 INFO    ] 2026-06-12 04:59:03
[2026-06-12 04:59:04,142.142 INFO    ] 2026-06-12 04:59:04
[2026-06-12 04:59:04,171.171 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 04:59:04,355.355 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 04:59:04,364.364 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 04:59:04,558.558 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 04:59:04,581.581 INFO    ] time= 12/06/2026 04:59:04
[2026-06-12 04:59:04,586.586 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 04:59:04,588.588 INFO    ] Checking for existing commands in stream...
[2026-06-12 04:59:04,678.678 INFO    ] No existing commands found in stream
[2026-06-12 04:59:09,687.687 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 04:59:09,690.690 INFO    ] Waiting 1.59 seconds before fallback handling...
[2026-06-12 04:59:11,676.676 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 04:59:11,678.678 INFO    ] Checking for system updates...
[2026-06-12 04:59:11,701.701 INFO    ] 200
[2026-06-12 04:59:11,702.702 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:59:11,738.738 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 04:59:11,740.740 INFO    ] No update needed
[2026-06-12 04:59:11,741.741 INFO    ] Checking for camera pi updates...
[2026-06-12 04:59:11,763.763 INFO    ] 200
[2026-06-12 04:59:11,764.764 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:59:11,788.788 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 04:59:11,813.813 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 04:59:11,815.815 INFO    ] No camera update needed
[2026-06-12 04:59:11,816.816 INFO    ] Script finished. Safe exiting...
[2026-06-12 04:59:11,818.818 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 04:59:11,821.821 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 04:59:11,824.824 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 04:59:13,863.863 INFO    ] ================================================
[2026-06-12 04:59:13,879.879 INFO    ] Launching Daemon at Fri Jun 12 04:59:13 IST 2026
[2026-06-12 04:59:13,890.890 INFO    ] ================================================
[2026-06-12 04:59:15,140.140 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 04:59:14
[2026-06-12 04:59:15,503.503 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 04:59:15,646.646 INFO    ] Initializing speech engine...
[2026-06-12 04:59:15,651.651 INFO    ] 2026-06-12 04:59:15
[2026-06-12 04:59:15,854.854 INFO    ] 2026-06-12 04:59:15
[2026-06-12 04:59:15,883.883 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 04:59:16,066.066 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 04:59:16,076.076 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 04:59:16,204.204 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 04:59:16,270.270 INFO    ] time= 12/06/2026 04:59:16
[2026-06-12 04:59:16,295.295 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 04:59:16,301.301 INFO    ] Checking for existing commands in stream...
[2026-06-12 04:59:16,392.392 INFO    ] No existing commands found in stream
[2026-06-12 04:59:21,401.401 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 04:59:21,404.404 INFO    ] Waiting 3.80 seconds before fallback handling...
[2026-06-12 04:59:25,657.657 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 04:59:25,658.658 INFO    ] Checking for system updates...
[2026-06-12 04:59:25,682.682 INFO    ] 200
[2026-06-12 04:59:25,684.684 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:59:25,717.717 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 04:59:25,718.718 INFO    ] No update needed
[2026-06-12 04:59:25,720.720 INFO    ] Checking for camera pi updates...
[2026-06-12 04:59:25,740.740 INFO    ] 200
[2026-06-12 04:59:25,742.742 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:59:25,766.766 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 04:59:25,804.804 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 04:59:25,805.805 INFO    ] No camera update needed
[2026-06-12 04:59:25,806.806 INFO    ] Script finished. Safe exiting...
[2026-06-12 04:59:25,808.808 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 04:59:25,811.811 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 04:59:25,814.814 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 04:59:27,858.858 INFO    ] ================================================
[2026-06-12 04:59:27,874.874 INFO    ] Launching Daemon at Fri Jun 12 04:59:27 IST 2026
[2026-06-12 04:59:27,885.885 INFO    ] ================================================
[2026-06-12 04:59:28,241.241 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 04:59:28
[2026-06-12 04:59:28,573.573 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 04:59:28,703.703 INFO    ] Initializing speech engine...
[2026-06-12 04:59:28,711.711 INFO    ] 2026-06-12 04:59:28
[2026-06-12 04:59:28,922.922 INFO    ] 2026-06-12 04:59:28
[2026-06-12 04:59:28,951.951 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 04:59:29,134.134 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 04:59:29,143.143 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 04:59:29,283.283 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 04:59:29,341.341 INFO    ] time= 12/06/2026 04:59:29
[2026-06-12 04:59:29,363.363 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 04:59:29,369.369 INFO    ] Checking for existing commands in stream...
[2026-06-12 04:59:29,437.437 INFO    ] No existing commands found in stream
[2026-06-12 04:59:34,445.445 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 04:59:34,448.448 INFO    ] Waiting 2.79 seconds before fallback handling...
[2026-06-12 04:59:37,653.653 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 04:59:37,655.655 INFO    ] Checking for system updates...
[2026-06-12 04:59:37,677.677 INFO    ] 200
[2026-06-12 04:59:37,678.678 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:59:37,711.711 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 04:59:37,713.713 INFO    ] No update needed
[2026-06-12 04:59:37,714.714 INFO    ] Checking for camera pi updates...
[2026-06-12 04:59:37,734.734 INFO    ] 200
[2026-06-12 04:59:37,736.736 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:59:37,759.759 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 04:59:37,796.796 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 04:59:37,797.797 INFO    ] No camera update needed
[2026-06-12 04:59:37,798.798 INFO    ] Script finished. Safe exiting...
[2026-06-12 04:59:37,800.800 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 04:59:37,803.803 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 04:59:37,805.805 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 04:59:39,845.845 INFO    ] ================================================
[2026-06-12 04:59:39,862.862 INFO    ] Launching Daemon at Fri Jun 12 04:59:39 IST 2026
[2026-06-12 04:59:39,874.874 INFO    ] ================================================
[2026-06-12 04:59:40,214.214 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 04:59:40
[2026-06-12 04:59:40,568.568 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 04:59:40,725.725 INFO    ] Initializing speech engine...
[2026-06-12 04:59:40,730.730 INFO    ] 2026-06-12 04:59:40
[2026-06-12 04:59:40,940.940 INFO    ] 2026-06-12 04:59:40
[2026-06-12 04:59:40,969.969 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 04:59:41,160.160 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 04:59:41,169.169 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 04:59:41,318.318 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 04:59:41,386.386 INFO    ] time= 12/06/2026 04:59:41
[2026-06-12 04:59:41,401.401 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 04:59:41,403.403 INFO    ] Checking for existing commands in stream...
[2026-06-12 04:59:41,471.471 INFO    ] No existing commands found in stream
[2026-06-12 04:59:46,486.486 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 04:59:46,489.489 INFO    ] Waiting 0.96 seconds before fallback handling...
[2026-06-12 04:59:47,824.824 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 04:59:47,825.825 INFO    ] Checking for system updates...
[2026-06-12 04:59:47,846.846 INFO    ] 200
[2026-06-12 04:59:47,848.848 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:59:47,882.882 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 04:59:47,883.883 INFO    ] No update needed
[2026-06-12 04:59:47,885.885 INFO    ] Checking for camera pi updates...
[2026-06-12 04:59:47,909.909 INFO    ] 200
[2026-06-12 04:59:47,911.911 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:59:47,937.937 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 04:59:47,971.971 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 04:59:47,973.973 INFO    ] No camera update needed
[2026-06-12 04:59:47,974.974 INFO    ] Script finished. Safe exiting...
[2026-06-12 04:59:47,976.976 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 04:59:47,979.979 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 04:59:47,982.982 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 04:59:50,021.021 INFO    ] ================================================
[2026-06-12 04:59:50,038.038 INFO    ] Launching Daemon at Fri Jun 12 04:59:50 IST 2026
[2026-06-12 04:59:50,050.050 INFO    ] ================================================
[2026-06-12 04:59:50,448.448 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 04:59:50
[2026-06-12 04:59:50,794.794 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 04:59:50,947.947 INFO    ] Initializing speech engine...
[2026-06-12 04:59:50,953.953 INFO    ] 2026-06-12 04:59:50
[2026-06-12 04:59:51,162.162 INFO    ] 2026-06-12 04:59:51
[2026-06-12 04:59:51,193.193 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 04:59:51,381.381 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 04:59:51,391.391 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 04:59:51,538.538 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 04:59:51,591.591 INFO    ] time= 12/06/2026 04:59:51
[2026-06-12 04:59:51,616.616 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 04:59:51,622.622 INFO    ] Checking for existing commands in stream...
[2026-06-12 04:59:51,690.690 INFO    ] No existing commands found in stream
[2026-06-12 04:59:56,705.705 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 04:59:56,708.708 INFO    ] Waiting 0.13 seconds before fallback handling...
[2026-06-12 04:59:57,205.205 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 04:59:57,207.207 INFO    ] Checking for system updates...
[2026-06-12 04:59:57,229.229 INFO    ] 200
[2026-06-12 04:59:57,231.231 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:59:57,264.264 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 04:59:57,266.266 INFO    ] No update needed
[2026-06-12 04:59:57,268.268 INFO    ] Checking for camera pi updates...
[2026-06-12 04:59:57,287.287 INFO    ] 200
[2026-06-12 04:59:57,289.289 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 04:59:57,316.316 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 04:59:57,351.351 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 04:59:57,353.353 INFO    ] No camera update needed
[2026-06-12 04:59:57,354.354 INFO    ] Script finished. Safe exiting...
[2026-06-12 04:59:57,355.355 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 04:59:57,359.359 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 04:59:57,362.362 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 04:59:59,402.402 INFO    ] ================================================
[2026-06-12 04:59:59,418.418 INFO    ] Launching Daemon at Fri Jun 12 04:59:59 IST 2026
[2026-06-12 04:59:59,429.429 INFO    ] ================================================
[2026-06-12 04:59:59,784.784 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 04:59:59
[2026-06-12 05:00:00,096.096 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 05:00:00,240.240 INFO    ] Initializing speech engine...
[2026-06-12 05:00:00,245.245 INFO    ] 2026-06-12 05:00:00
[2026-06-12 05:00:00,454.454 INFO    ] 2026-06-12 05:00:00
[2026-06-12 05:00:00,484.484 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 05:00:00,671.671 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 05:00:00,679.679 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 05:00:00,863.863 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 05:00:00,902.902 INFO    ] time= 12/06/2026 05:00:00
[2026-06-12 05:00:00,908.908 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 05:00:00,910.910 INFO    ] Checking for existing commands in stream...
[2026-06-12 05:00:00,979.979 INFO    ] No existing commands found in stream
[2026-06-12 05:00:05,993.993 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 05:00:06,395.395 INFO    ] Waiting 3.41 seconds before fallback handling...
[2026-06-12 05:00:10,200.200 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 05:00:10,202.202 INFO    ] Checking for system updates...
[2026-06-12 05:00:10,222.222 INFO    ] 200
[2026-06-12 05:00:10,224.224 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:00:10,254.254 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 05:00:10,255.255 INFO    ] No update needed
[2026-06-12 05:00:10,256.256 INFO    ] Checking for camera pi updates...
[2026-06-12 05:00:10,276.276 INFO    ] 200
[2026-06-12 05:00:10,277.277 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:00:10,302.302 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 05:00:10,343.343 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 05:00:10,344.344 INFO    ] No camera update needed
[2026-06-12 05:00:10,350.350 INFO    ] Script finished. Safe exiting...
[2026-06-12 05:00:10,351.351 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 05:00:10,354.354 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 05:00:10,357.357 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 05:00:12,396.396 INFO    ] ================================================
[2026-06-12 05:00:12,412.412 INFO    ] Launching Daemon at Fri Jun 12 05:00:12 IST 2026
[2026-06-12 05:00:12,423.423 INFO    ] ================================================
[2026-06-12 05:00:12,822.822 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 05:00:12
[2026-06-12 05:00:13,169.169 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 05:00:13,323.323 INFO    ] Initializing speech engine...
[2026-06-12 05:00:13,328.328 INFO    ] 2026-06-12 05:00:13
[2026-06-12 05:00:13,540.540 INFO    ] 2026-06-12 05:00:13
[2026-06-12 05:00:13,568.568 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 05:00:13,754.754 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 05:00:13,766.766 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 05:00:13,959.959 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 05:00:13,983.983 INFO    ] time= 12/06/2026 05:00:13
[2026-06-12 05:00:13,989.989 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 05:00:13,991.991 INFO    ] Checking for existing commands in stream...
[2026-06-12 05:00:14,058.058 INFO    ] No existing commands found in stream
[2026-06-12 05:00:19,067.067 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 05:00:19,071.071 INFO    ] Waiting 2.07 seconds before fallback handling...
[2026-06-12 05:00:21,556.556 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 05:00:21,558.558 INFO    ] Checking for system updates...
[2026-06-12 05:00:21,579.579 INFO    ] 200
[2026-06-12 05:00:21,581.581 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:00:21,611.611 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 05:00:21,613.613 INFO    ] No update needed
[2026-06-12 05:00:21,614.614 INFO    ] Checking for camera pi updates...
[2026-06-12 05:00:21,634.634 INFO    ] 200
[2026-06-12 05:00:21,636.636 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:00:21,659.659 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 05:00:21,699.699 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 05:00:21,701.701 INFO    ] No camera update needed
[2026-06-12 05:00:21,702.702 INFO    ] Script finished. Safe exiting...
[2026-06-12 05:00:21,704.704 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 05:00:21,707.707 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 05:00:21,710.710 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 05:00:23,751.751 INFO    ] ================================================
[2026-06-12 05:00:23,768.768 INFO    ] Launching Daemon at Fri Jun 12 05:00:23 IST 2026
[2026-06-12 05:00:23,779.779 INFO    ] ================================================
[2026-06-12 05:00:24,160.160 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 05:00:24
[2026-06-12 05:00:24,501.501 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 05:00:24,652.652 INFO    ] Initializing speech engine...
[2026-06-12 05:00:24,658.658 INFO    ] 2026-06-12 05:00:24
[2026-06-12 05:00:24,866.866 INFO    ] 2026-06-12 05:00:24
[2026-06-12 05:00:24,896.896 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 05:00:25,079.079 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 05:00:25,089.089 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 05:00:25,284.284 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 05:00:25,308.308 INFO    ] time= 12/06/2026 05:00:25
[2026-06-12 05:00:25,314.314 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 05:00:25,316.316 INFO    ] Checking for existing commands in stream...
[2026-06-12 05:00:25,382.382 INFO    ] No existing commands found in stream
[2026-06-12 05:00:30,388.388 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 05:00:30,391.391 INFO    ] Waiting 1.47 seconds before fallback handling...
[2026-06-12 05:00:32,287.287 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 05:00:32,289.289 INFO    ] Checking for system updates...
[2026-06-12 05:00:32,315.315 INFO    ] 200
[2026-06-12 05:00:32,317.317 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:00:32,355.355 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 05:00:32,357.357 INFO    ] No update needed
[2026-06-12 05:00:32,358.358 INFO    ] Checking for camera pi updates...
[2026-06-12 05:00:32,382.382 INFO    ] 200
[2026-06-12 05:00:32,384.384 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:00:32,416.416 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 05:00:32,440.440 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 05:00:32,442.442 INFO    ] No camera update needed
[2026-06-12 05:00:32,444.444 INFO    ] Script finished. Safe exiting...
[2026-06-12 05:00:32,446.446 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 05:00:32,450.450 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 05:00:32,454.454 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 05:00:34,487.487 INFO    ] ================================================
[2026-06-12 05:00:34,503.503 INFO    ] Launching Daemon at Fri Jun 12 05:00:34 IST 2026
[2026-06-12 05:00:34,515.515 INFO    ] ================================================
[2026-06-12 05:00:34,861.861 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 05:00:34
[2026-06-12 05:00:35,176.176 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 05:00:35,312.312 INFO    ] Initializing speech engine...
[2026-06-12 05:00:35,326.326 INFO    ] 2026-06-12 05:00:35
[2026-06-12 05:00:35,547.547 INFO    ] 2026-06-12 05:00:35
[2026-06-12 05:00:35,578.578 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 05:00:35,779.779 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 05:00:35,783.783 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 05:00:35,947.947 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 05:00:36,003.003 INFO    ] time= 12/06/2026 05:00:35
[2026-06-12 05:00:36,029.029 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 05:00:36,036.036 INFO    ] Checking for existing commands in stream...
[2026-06-12 05:00:36,107.107 INFO    ] No existing commands found in stream
[2026-06-12 05:00:41,117.117 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 05:00:41,119.119 INFO    ] Waiting 2.23 seconds before fallback handling...
[2026-06-12 05:00:43,693.693 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 05:00:43,694.694 INFO    ] Checking for system updates...
[2026-06-12 05:00:43,716.716 INFO    ] 200
[2026-06-12 05:00:43,717.717 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:00:43,748.748 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 05:00:43,749.749 INFO    ] No update needed
[2026-06-12 05:00:43,751.751 INFO    ] Checking for camera pi updates...
[2026-06-12 05:00:43,770.770 INFO    ] 200
[2026-06-12 05:00:43,772.772 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:00:43,795.795 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 05:00:43,831.831 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 05:00:43,832.832 INFO    ] No camera update needed
[2026-06-12 05:00:43,833.833 INFO    ] Script finished. Safe exiting...
[2026-06-12 05:00:43,835.835 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 05:00:43,837.837 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 05:00:43,840.840 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 05:00:45,881.881 INFO    ] ================================================
[2026-06-12 05:00:45,897.897 INFO    ] Launching Daemon at Fri Jun 12 05:00:45 IST 2026
[2026-06-12 05:00:45,909.909 INFO    ] ================================================
[2026-06-12 05:00:46,276.276 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 05:00:46
[2026-06-12 05:00:46,586.586 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 05:00:46,730.730 INFO    ] Initializing speech engine...
[2026-06-12 05:00:46,736.736 INFO    ] 2026-06-12 05:00:46
[2026-06-12 05:00:46,939.939 INFO    ] 2026-06-12 05:00:46
[2026-06-12 05:00:46,967.967 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 05:00:47,104.104 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 05:00:47,153.153 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 05:00:47,295.295 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 05:00:47,357.357 INFO    ] time= 12/06/2026 05:00:47
[2026-06-12 05:00:47,381.381 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 05:00:47,387.387 INFO    ] Checking for existing commands in stream...
[2026-06-12 05:00:47,454.454 INFO    ] No existing commands found in stream
[2026-06-12 05:00:52,462.462 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 05:00:52,465.465 INFO    ] Waiting 2.09 seconds before fallback handling...
[2026-06-12 05:00:54,964.964 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 05:00:54,965.965 INFO    ] Checking for system updates...
[2026-06-12 05:00:54,988.988 INFO    ] 200
[2026-06-12 05:00:54,989.989 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:00:55,021.021 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 05:00:55,022.022 INFO    ] No update needed
[2026-06-12 05:00:55,024.024 INFO    ] Checking for camera pi updates...
[2026-06-12 05:00:55,044.044 INFO    ] 200
[2026-06-12 05:00:55,046.046 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:00:55,070.070 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 05:00:55,109.109 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 05:00:55,111.111 INFO    ] No camera update needed
[2026-06-12 05:00:55,112.112 INFO    ] Script finished. Safe exiting...
[2026-06-12 05:00:55,114.114 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 05:00:55,117.117 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 05:00:55,120.120 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 05:00:57,161.161 INFO    ] ================================================
[2026-06-12 05:00:57,177.177 INFO    ] Launching Daemon at Fri Jun 12 05:00:57 IST 2026
[2026-06-12 05:00:57,188.188 INFO    ] ================================================
[2026-06-12 05:00:57,551.551 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 05:00:57
[2026-06-12 05:00:57,891.891 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 05:00:58,032.032 INFO    ] Initializing speech engine...
[2026-06-12 05:00:58,046.046 INFO    ] 2026-06-12 05:00:58
[2026-06-12 05:00:58,260.260 INFO    ] 2026-06-12 05:00:58
[2026-06-12 05:00:58,290.290 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 05:00:58,477.477 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 05:00:58,487.487 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 05:00:58,614.614 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 05:00:58,676.676 INFO    ] time= 12/06/2026 05:00:58
[2026-06-12 05:00:58,712.712 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 05:00:58,717.717 INFO    ] Checking for existing commands in stream...
[2026-06-12 05:00:58,786.786 INFO    ] No existing commands found in stream
[2026-06-12 05:01:03,800.800 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 05:01:03,804.804 INFO    ] Waiting 1.49 seconds before fallback handling...
[2026-06-12 05:01:05,690.690 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 05:01:05,691.691 INFO    ] Checking for system updates...
[2026-06-12 05:01:05,716.716 INFO    ] 200
[2026-06-12 05:01:05,718.718 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:01:05,758.758 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 05:01:05,759.759 INFO    ] No update needed
[2026-06-12 05:01:05,761.761 INFO    ] Checking for camera pi updates...
[2026-06-12 05:01:05,781.781 INFO    ] 200
[2026-06-12 05:01:05,783.783 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:01:05,807.807 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 05:01:05,846.846 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 05:01:05,848.848 INFO    ] No camera update needed
[2026-06-12 05:01:05,850.850 INFO    ] Script finished. Safe exiting...
[2026-06-12 05:01:05,853.853 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 05:01:05,857.857 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 05:01:05,861.861 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 05:01:07,902.902 INFO    ] ================================================
[2026-06-12 05:01:07,918.918 INFO    ] Launching Daemon at Fri Jun 12 05:01:07 IST 2026
[2026-06-12 05:01:07,930.930 INFO    ] ================================================
[2026-06-12 05:01:08,287.287 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 05:01:08
[2026-06-12 05:01:08,602.602 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 05:01:08,734.734 INFO    ] Initializing speech engine...
[2026-06-12 05:01:08,748.748 INFO    ] 2026-06-12 05:01:08
[2026-06-12 05:01:08,954.954 INFO    ] 2026-06-12 05:01:08
[2026-06-12 05:01:08,983.983 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 05:01:09,166.166 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 05:01:09,176.176 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 05:01:09,320.320 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 05:01:09,373.373 INFO    ] time= 12/06/2026 05:01:09
[2026-06-12 05:01:09,395.395 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 05:01:09,402.402 INFO    ] Checking for existing commands in stream...
[2026-06-12 05:01:09,468.468 INFO    ] No existing commands found in stream
[2026-06-12 05:01:14,500.500 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 05:01:14,503.503 INFO    ] Waiting 1.87 seconds before fallback handling...
[2026-06-12 05:01:16,720.720 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 05:01:16,722.722 INFO    ] Checking for system updates...
[2026-06-12 05:01:16,742.742 INFO    ] 200
[2026-06-12 05:01:16,744.744 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:01:16,774.774 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 05:01:16,775.775 INFO    ] No update needed
[2026-06-12 05:01:16,776.776 INFO    ] Checking for camera pi updates...
[2026-06-12 05:01:16,796.796 INFO    ] 200
[2026-06-12 05:01:16,797.797 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:01:16,823.823 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 05:01:16,863.863 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 05:01:16,865.865 INFO    ] No camera update needed
[2026-06-12 05:01:16,866.866 INFO    ] Script finished. Safe exiting...
[2026-06-12 05:01:16,867.867 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 05:01:16,870.870 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 05:01:16,873.873 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 05:01:18,912.912 INFO    ] ================================================
[2026-06-12 05:01:18,928.928 INFO    ] Launching Daemon at Fri Jun 12 05:01:18 IST 2026
[2026-06-12 05:01:18,939.939 INFO    ] ================================================
[2026-06-12 05:01:19,314.314 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 05:01:19
[2026-06-12 05:01:19,630.630 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 05:01:19,764.764 INFO    ] Initializing speech engine...
[2026-06-12 05:01:19,769.769 INFO    ] 2026-06-12 05:01:19
[2026-06-12 05:01:19,996.996 INFO    ] 2026-06-12 05:01:19
[2026-06-12 05:01:20,027.027 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 05:01:20,222.222 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 05:01:20,225.225 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 05:01:20,371.371 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 05:01:20,442.442 INFO    ] time= 12/06/2026 05:01:20
[2026-06-12 05:01:20,467.467 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 05:01:20,474.474 INFO    ] Checking for existing commands in stream...
[2026-06-12 05:01:20,542.542 INFO    ] No existing commands found in stream
[2026-06-12 05:01:25,553.553 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 05:01:25,556.556 INFO    ] Waiting 3.88 seconds before fallback handling...
[2026-06-12 05:01:29,828.828 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 05:01:29,830.830 INFO    ] Checking for system updates...
[2026-06-12 05:01:29,851.851 INFO    ] 200
[2026-06-12 05:01:29,852.852 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:01:29,885.885 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 05:01:29,887.887 INFO    ] No update needed
[2026-06-12 05:01:29,888.888 INFO    ] Checking for camera pi updates...
[2026-06-12 05:01:29,914.914 INFO    ] 200
[2026-06-12 05:01:29,915.915 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:01:29,943.943 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 05:01:29,980.980 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 05:01:29,982.982 INFO    ] No camera update needed
[2026-06-12 05:01:29,983.983 INFO    ] Script finished. Safe exiting...
[2026-06-12 05:01:29,985.985 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 05:01:29,988.988 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 05:01:29,991.991 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 05:01:32,024.024 INFO    ] ================================================
[2026-06-12 05:01:32,034.034 INFO    ] Launching Daemon at Fri Jun 12 05:01:32 IST 2026
[2026-06-12 05:01:32,041.041 INFO    ] ================================================
[2026-06-12 05:01:32,375.375 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 05:01:32
[2026-06-12 05:01:32,713.713 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 05:01:32,845.845 INFO    ] Initializing speech engine...
[2026-06-12 05:01:32,849.849 INFO    ] 2026-06-12 05:01:32
[2026-06-12 05:01:33,066.066 INFO    ] 2026-06-12 05:01:33
[2026-06-12 05:01:33,096.096 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 05:01:33,281.281 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 05:01:33,291.291 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 05:01:33,485.485 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 05:01:33,510.510 INFO    ] time= 12/06/2026 05:01:33
[2026-06-12 05:01:33,517.517 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 05:01:33,519.519 INFO    ] Checking for existing commands in stream...
[2026-06-12 05:01:33,584.584 INFO    ] No existing commands found in stream
[2026-06-12 05:01:38,595.595 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 05:01:38,598.598 INFO    ] Waiting 3.64 seconds before fallback handling...
[2026-06-12 05:01:42,612.612 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 05:01:42,613.613 INFO    ] Checking for system updates...
[2026-06-12 05:01:42,634.634 INFO    ] 200
[2026-06-12 05:01:42,636.636 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:01:42,669.669 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 05:01:42,670.670 INFO    ] No update needed
[2026-06-12 05:01:42,672.672 INFO    ] Checking for camera pi updates...
[2026-06-12 05:01:42,693.693 INFO    ] 200
[2026-06-12 05:01:42,695.695 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:01:42,721.721 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 05:01:42,757.757 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 05:01:42,759.759 INFO    ] No camera update needed
[2026-06-12 05:01:42,760.760 INFO    ] Script finished. Safe exiting...
[2026-06-12 05:01:42,761.761 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 05:01:42,765.765 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 05:01:42,768.768 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 05:01:44,806.806 INFO    ] ================================================
[2026-06-12 05:01:44,822.822 INFO    ] Launching Daemon at Fri Jun 12 05:01:44 IST 2026
[2026-06-12 05:01:44,834.834 INFO    ] ================================================
[2026-06-12 05:01:45,197.197 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 05:01:45
[2026-06-12 05:01:45,511.511 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 05:01:45,643.643 INFO    ] Initializing speech engine...
[2026-06-12 05:01:45,647.647 INFO    ] 2026-06-12 05:01:45
[2026-06-12 05:01:45,866.866 INFO    ] 2026-06-12 05:01:45
[2026-06-12 05:01:45,909.909 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 05:01:46,162.162 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 05:01:46,213.213 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 05:01:46,381.381 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 05:01:46,384.384 INFO    ] time= 12/06/2026 05:01:46
[2026-06-12 05:01:46,410.410 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 05:01:46,412.412 INFO    ] Checking for existing commands in stream...
[2026-06-12 05:01:46,514.514 INFO    ] No existing commands found in stream
[2026-06-12 05:01:51,524.524 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 05:01:51,527.527 INFO    ] Waiting 0.64 seconds before fallback handling...
[2026-06-12 05:01:52,559.559 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 05:01:52,561.561 INFO    ] Checking for system updates...
[2026-06-12 05:01:52,582.582 INFO    ] 200
[2026-06-12 05:01:52,583.583 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:01:52,614.614 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 05:01:52,615.615 INFO    ] No update needed
[2026-06-12 05:01:52,616.616 INFO    ] Checking for camera pi updates...
[2026-06-12 05:01:52,636.636 INFO    ] 200
[2026-06-12 05:01:52,637.637 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:01:52,660.660 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 05:01:52,700.700 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 05:01:52,701.701 INFO    ] No camera update needed
[2026-06-12 05:01:52,702.702 INFO    ] Script finished. Safe exiting...
[2026-06-12 05:01:52,704.704 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 05:01:52,706.706 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 05:01:52,709.709 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 05:01:54,750.750 INFO    ] ================================================
[2026-06-12 05:01:54,765.765 INFO    ] Launching Daemon at Fri Jun 12 05:01:54 IST 2026
[2026-06-12 05:01:54,777.777 INFO    ] ================================================
[2026-06-12 05:01:55,164.164 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 05:01:55
[2026-06-12 05:01:55,499.499 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 05:01:55,651.651 INFO    ] Initializing speech engine...
[2026-06-12 05:01:55,657.657 INFO    ] 2026-06-12 05:01:55
[2026-06-12 05:01:55,866.866 INFO    ] 2026-06-12 05:01:55
[2026-06-12 05:01:55,896.896 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 05:01:56,083.083 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 05:01:56,094.094 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 05:01:56,279.279 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 05:01:56,313.313 INFO    ] time= 12/06/2026 05:01:56
[2026-06-12 05:01:56,319.319 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 05:01:56,321.321 INFO    ] Checking for existing commands in stream...
[2026-06-12 05:01:56,413.413 INFO    ] No existing commands found in stream
[2026-06-12 05:02:01,423.423 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 05:02:01,426.426 INFO    ] Waiting 3.44 seconds before fallback handling...
[2026-06-12 05:02:05,296.296 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 05:02:05,298.298 INFO    ] Checking for system updates...
[2026-06-12 05:02:05,321.321 INFO    ] 200
[2026-06-12 05:02:05,322.322 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:02:05,354.354 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 05:02:05,356.356 INFO    ] No update needed
[2026-06-12 05:02:05,357.357 INFO    ] Checking for camera pi updates...
[2026-06-12 05:02:05,376.376 INFO    ] 200
[2026-06-12 05:02:05,378.378 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:02:05,403.403 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 05:02:05,442.442 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 05:02:05,443.443 INFO    ] No camera update needed
[2026-06-12 05:02:05,444.444 INFO    ] Script finished. Safe exiting...
[2026-06-12 05:02:05,445.445 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 05:02:05,448.448 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 05:02:05,451.451 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 05:02:07,491.491 INFO    ] ================================================
[2026-06-12 05:02:07,507.507 INFO    ] Launching Daemon at Fri Jun 12 05:02:07 IST 2026
[2026-06-12 05:02:07,519.519 INFO    ] ================================================
[2026-06-12 05:02:07,855.855 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 05:02:07
[2026-06-12 05:02:08,166.166 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 05:02:08,297.297 INFO    ] Initializing speech engine...
[2026-06-12 05:02:08,305.305 INFO    ] 2026-06-12 05:02:08
[2026-06-12 05:02:08,508.508 INFO    ] 2026-06-12 05:02:08
[2026-06-12 05:02:08,553.553 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 05:02:08,714.714 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 05:02:08,772.772 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 05:02:08,935.935 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 05:02:09,002.002 INFO    ] time= 12/06/2026 05:02:08
[2026-06-12 05:02:09,035.035 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 05:02:09,037.037 INFO    ] Checking for existing commands in stream...
[2026-06-12 05:02:09,139.139 INFO    ] No existing commands found in stream
[2026-06-12 05:02:14,148.148 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 05:02:14,151.151 INFO    ] Waiting 3.13 seconds before fallback handling...
[2026-06-12 05:02:17,661.661 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 05:02:17,663.663 INFO    ] Checking for system updates...
[2026-06-12 05:02:17,683.683 INFO    ] 200
[2026-06-12 05:02:17,685.685 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:02:17,715.715 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 05:02:17,716.716 INFO    ] No update needed
[2026-06-12 05:02:17,717.717 INFO    ] Checking for camera pi updates...
[2026-06-12 05:02:17,736.736 INFO    ] 200
[2026-06-12 05:02:17,738.738 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:02:17,761.761 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 05:02:17,807.807 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 05:02:17,808.808 INFO    ] No camera update needed
[2026-06-12 05:02:17,810.810 INFO    ] Script finished. Safe exiting...
[2026-06-12 05:02:17,811.811 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 05:02:17,814.814 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 05:02:17,817.817 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 05:02:19,855.855 INFO    ] ================================================
[2026-06-12 05:02:19,871.871 INFO    ] Launching Daemon at Fri Jun 12 05:02:19 IST 2026
[2026-06-12 05:02:19,882.882 INFO    ] ================================================
[2026-06-12 05:02:20,212.212 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 05:02:20
[2026-06-12 05:02:20,525.525 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 05:02:20,661.661 INFO    ] Initializing speech engine...
[2026-06-12 05:02:20,674.674 INFO    ] 2026-06-12 05:02:20
[2026-06-12 05:02:20,895.895 INFO    ] 2026-06-12 05:02:20
[2026-06-12 05:02:20,926.926 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 05:02:21,126.126 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 05:02:21,130.130 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 05:02:21,277.277 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 05:02:21,342.342 INFO    ] time= 12/06/2026 05:02:21
[2026-06-12 05:02:21,376.376 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 05:02:21,378.378 INFO    ] Checking for existing commands in stream...
[2026-06-12 05:02:21,454.454 INFO    ] No existing commands found in stream
[2026-06-12 05:02:26,478.478 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 05:02:26,481.481 INFO    ] Waiting 2.16 seconds before fallback handling...
[2026-06-12 05:02:29,059.059 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 05:02:29,060.060 INFO    ] Checking for system updates...
[2026-06-12 05:02:29,081.081 INFO    ] 200
[2026-06-12 05:02:29,082.082 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:02:29,113.113 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 05:02:29,114.114 INFO    ] No update needed
[2026-06-12 05:02:29,115.115 INFO    ] Checking for camera pi updates...
[2026-06-12 05:02:29,136.136 INFO    ] 200
[2026-06-12 05:02:29,137.137 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:02:29,161.161 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 05:02:29,200.200 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 05:02:29,202.202 INFO    ] No camera update needed
[2026-06-12 05:02:29,203.203 INFO    ] Script finished. Safe exiting...
[2026-06-12 05:02:29,204.204 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 05:02:29,208.208 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 05:02:29,211.211 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 05:02:31,244.244 INFO    ] ================================================
[2026-06-12 05:02:31,261.261 INFO    ] Launching Daemon at Fri Jun 12 05:02:31 IST 2026
[2026-06-12 05:02:31,273.273 INFO    ] ================================================
[2026-06-12 05:02:31,619.619 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 05:02:31
[2026-06-12 05:02:31,963.963 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 05:02:32,114.114 INFO    ] Initializing speech engine...
[2026-06-12 05:02:32,127.127 INFO    ] 2026-06-12 05:02:32
[2026-06-12 05:02:32,353.353 INFO    ] 2026-06-12 05:02:32
[2026-06-12 05:02:32,384.384 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 05:02:32,579.579 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 05:02:32,589.589 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 05:02:32,758.758 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 05:02:32,802.802 INFO    ] time= 12/06/2026 05:02:32
[2026-06-12 05:02:32,824.824 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 05:02:32,829.829 INFO    ] Checking for existing commands in stream...
[2026-06-12 05:02:32,897.897 INFO    ] No existing commands found in stream
[2026-06-12 05:02:37,921.921 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 05:02:37,924.924 INFO    ] Waiting 3.71 seconds before fallback handling...
[2026-06-12 05:02:42,050.050 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 05:02:42,051.051 INFO    ] Checking for system updates...
[2026-06-12 05:02:42,074.074 INFO    ] 200
[2026-06-12 05:02:42,075.075 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:02:42,106.106 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 05:02:42,107.107 INFO    ] No update needed
[2026-06-12 05:02:42,108.108 INFO    ] Checking for camera pi updates...
[2026-06-12 05:02:42,129.129 INFO    ] 200
[2026-06-12 05:02:42,131.131 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:02:42,154.154 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 05:02:42,192.192 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 05:02:42,194.194 INFO    ] No camera update needed
[2026-06-12 05:02:42,195.195 INFO    ] Script finished. Safe exiting...
[2026-06-12 05:02:42,196.196 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 05:02:42,199.199 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 05:02:42,202.202 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 05:02:44,243.243 INFO    ] ================================================
[2026-06-12 05:02:44,259.259 INFO    ] Launching Daemon at Fri Jun 12 05:02:44 IST 2026
[2026-06-12 05:02:44,270.270 INFO    ] ================================================
[2026-06-12 05:02:44,625.625 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 05:02:44
[2026-06-12 05:02:44,945.945 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 05:02:45,094.094 INFO    ] Initializing speech engine...
[2026-06-12 05:02:45,100.100 INFO    ] 2026-06-12 05:02:45
[2026-06-12 05:02:45,317.317 INFO    ] 2026-06-12 05:02:45
[2026-06-12 05:02:45,348.348 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 05:02:45,547.547 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 05:02:45,557.557 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 05:02:45,716.716 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 05:02:45,772.772 INFO    ] time= 12/06/2026 05:02:45
[2026-06-12 05:02:45,798.798 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 05:02:45,800.800 INFO    ] Checking for existing commands in stream...
[2026-06-12 05:02:45,877.877 INFO    ] No existing commands found in stream
[2026-06-12 05:02:50,886.886 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 05:02:50,890.890 INFO    ] Waiting 3.96 seconds before fallback handling...
[2026-06-12 05:02:55,328.328 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 05:02:55,330.330 INFO    ] Checking for system updates...
[2026-06-12 05:02:55,352.352 INFO    ] 200
[2026-06-12 05:02:55,354.354 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:02:55,384.384 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 05:02:55,386.386 INFO    ] No update needed
[2026-06-12 05:02:55,387.387 INFO    ] Checking for camera pi updates...
[2026-06-12 05:02:55,407.407 INFO    ] 200
[2026-06-12 05:02:55,408.408 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:02:55,432.432 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 05:02:55,472.472 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 05:02:55,473.473 INFO    ] No camera update needed
[2026-06-12 05:02:55,475.475 INFO    ] Script finished. Safe exiting...
[2026-06-12 05:02:55,476.476 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 05:02:55,479.479 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 05:02:55,483.483 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 05:02:57,524.524 INFO    ] ================================================
[2026-06-12 05:02:57,540.540 INFO    ] Launching Daemon at Fri Jun 12 05:02:57 IST 2026
[2026-06-12 05:02:57,552.552 INFO    ] ================================================
[2026-06-12 05:02:57,882.882 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 05:02:57
[2026-06-12 05:02:58,200.200 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 05:02:58,345.345 INFO    ] Initializing speech engine...
[2026-06-12 05:02:58,351.351 INFO    ] 2026-06-12 05:02:58
[2026-06-12 05:02:58,554.554 INFO    ] 2026-06-12 05:02:58
[2026-06-12 05:02:58,584.584 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 05:02:58,768.768 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 05:02:58,776.776 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 05:02:58,927.927 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 05:02:58,975.975 INFO    ] time= 12/06/2026 05:02:58
[2026-06-12 05:02:58,997.997 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 05:02:59,004.004 INFO    ] Checking for existing commands in stream...
[2026-06-12 05:02:59,069.069 INFO    ] No existing commands found in stream
[2026-06-12 05:03:04,080.080 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 05:03:04,083.083 INFO    ] Waiting 0.86 seconds before fallback handling...
[2026-06-12 05:03:05,329.329 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 05:03:05,330.330 INFO    ] Checking for system updates...
[2026-06-12 05:03:05,356.356 INFO    ] 200
[2026-06-12 05:03:05,358.358 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:03:05,399.399 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 05:03:05,402.402 INFO    ] No update needed
[2026-06-12 05:03:05,404.404 INFO    ] Checking for camera pi updates...
[2026-06-12 05:03:05,425.425 INFO    ] 200
[2026-06-12 05:03:05,426.426 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:03:05,450.450 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 05:03:05,593.593 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 05:03:05,595.595 INFO    ] No camera update needed
[2026-06-12 05:03:05,596.596 INFO    ] Script finished. Safe exiting...
[2026-06-12 05:03:05,597.597 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 05:03:05,600.600 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 05:03:05,603.603 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 05:03:07,643.643 INFO    ] ================================================
[2026-06-12 05:03:07,660.660 INFO    ] Launching Daemon at Fri Jun 12 05:03:07 IST 2026
[2026-06-12 05:03:07,671.671 INFO    ] ================================================
[2026-06-12 05:03:07,993.993 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 05:03:07
[2026-06-12 05:03:08,307.307 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 05:03:08,438.438 INFO    ] Initializing speech engine...
[2026-06-12 05:03:08,446.446 INFO    ] 2026-06-12 05:03:08
[2026-06-12 05:03:08,662.662 INFO    ] 2026-06-12 05:03:08
[2026-06-12 05:03:08,691.691 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 05:03:08,815.815 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 05:03:08,858.858 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 05:03:09,019.019 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 05:03:09,084.084 INFO    ] time= 12/06/2026 05:03:09
[2026-06-12 05:03:09,112.112 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 05:03:09,118.118 INFO    ] Checking for existing commands in stream...
[2026-06-12 05:03:09,185.185 INFO    ] No existing commands found in stream
[2026-06-12 05:03:14,195.195 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 05:03:14,198.198 INFO    ] Waiting 1.95 seconds before fallback handling...
[2026-06-12 05:03:16,510.510 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 05:03:16,511.511 INFO    ] Checking for system updates...
[2026-06-12 05:03:16,532.532 INFO    ] 200
[2026-06-12 05:03:16,534.534 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:03:16,566.566 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 05:03:16,567.567 INFO    ] No update needed
[2026-06-12 05:03:16,569.569 INFO    ] Checking for camera pi updates...
[2026-06-12 05:03:16,590.590 INFO    ] 200
[2026-06-12 05:03:16,591.591 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:03:16,615.615 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 05:03:16,654.654 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 05:03:16,655.655 INFO    ] No camera update needed
[2026-06-12 05:03:16,656.656 INFO    ] Script finished. Safe exiting...
[2026-06-12 05:03:16,658.658 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 05:03:16,661.661 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 05:03:16,663.663 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 05:03:18,702.702 INFO    ] ================================================
[2026-06-12 05:03:18,718.718 INFO    ] Launching Daemon at Fri Jun 12 05:03:18 IST 2026
[2026-06-12 05:03:18,729.729 INFO    ] ================================================
[2026-06-12 05:03:19,088.088 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 05:03:19
[2026-06-12 05:03:19,432.432 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 05:03:19,583.583 INFO    ] Initializing speech engine...
[2026-06-12 05:03:19,589.589 INFO    ] 2026-06-12 05:03:19
[2026-06-12 05:03:19,798.798 INFO    ] 2026-06-12 05:03:19
[2026-06-12 05:03:19,827.827 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 05:03:20,010.010 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 05:03:20,020.020 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 05:03:20,170.170 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 05:03:20,219.219 INFO    ] time= 12/06/2026 05:03:20
[2026-06-12 05:03:20,240.240 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 05:03:20,247.247 INFO    ] Checking for existing commands in stream...
[2026-06-12 05:03:20,313.313 INFO    ] No existing commands found in stream
[2026-06-12 05:03:25,327.327 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 05:03:25,331.331 INFO    ] Waiting 2.75 seconds before fallback handling...
[2026-06-12 05:03:28,460.460 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 05:03:28,462.462 INFO    ] Checking for system updates...
[2026-06-12 05:03:28,483.483 INFO    ] 200
[2026-06-12 05:03:28,484.484 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:03:28,515.515 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 05:03:28,516.516 INFO    ] No update needed
[2026-06-12 05:03:28,518.518 INFO    ] Checking for camera pi updates...
[2026-06-12 05:03:28,537.537 INFO    ] 200
[2026-06-12 05:03:28,539.539 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:03:28,566.566 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 05:03:28,602.602 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 05:03:28,604.604 INFO    ] No camera update needed
[2026-06-12 05:03:28,605.605 INFO    ] Script finished. Safe exiting...
[2026-06-12 05:03:28,606.606 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 05:03:28,609.609 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 05:03:28,612.612 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 05:03:30,650.650 INFO    ] ================================================
[2026-06-12 05:03:30,667.667 INFO    ] Launching Daemon at Fri Jun 12 05:03:30 IST 2026
[2026-06-12 05:03:30,678.678 INFO    ] ================================================
[2026-06-12 05:03:31,032.032 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 05:03:31
[2026-06-12 05:03:31,380.380 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 05:03:31,557.557 INFO    ] Initializing speech engine...
[2026-06-12 05:03:31,562.562 INFO    ] 2026-06-12 05:03:31
[2026-06-12 05:03:31,791.791 INFO    ] 2026-06-12 05:03:31
[2026-06-12 05:03:31,823.823 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 05:03:32,021.021 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 05:03:32,025.025 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 05:03:32,172.172 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 05:03:32,230.230 INFO    ] time= 12/06/2026 05:03:32
[2026-06-12 05:03:32,252.252 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 05:03:32,258.258 INFO    ] Checking for existing commands in stream...
[2026-06-12 05:03:32,325.325 INFO    ] No existing commands found in stream
[2026-06-12 05:03:37,344.344 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 05:03:37,347.347 INFO    ] Waiting 1.80 seconds before fallback handling...
[2026-06-12 05:03:39,511.511 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 05:03:39,512.512 INFO    ] Checking for system updates...
[2026-06-12 05:03:39,533.533 INFO    ] 200
[2026-06-12 05:03:39,534.534 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:03:39,567.567 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 05:03:39,569.569 INFO    ] No update needed
[2026-06-12 05:03:39,570.570 INFO    ] Checking for camera pi updates...
[2026-06-12 05:03:39,591.591 INFO    ] 200
[2026-06-12 05:03:39,592.592 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:03:39,616.616 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 05:03:39,653.653 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 05:03:39,655.655 INFO    ] No camera update needed
[2026-06-12 05:03:39,656.656 INFO    ] Script finished. Safe exiting...
[2026-06-12 05:03:39,657.657 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 05:03:39,660.660 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 05:03:39,663.663 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 05:03:41,701.701 INFO    ] ================================================
[2026-06-12 05:03:41,717.717 INFO    ] Launching Daemon at Fri Jun 12 05:03:41 IST 2026
[2026-06-12 05:03:41,729.729 INFO    ] ================================================
[2026-06-12 05:03:42,113.113 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 05:03:42
[2026-06-12 05:03:42,455.455 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 05:03:42,610.610 INFO    ] Initializing speech engine...
[2026-06-12 05:03:42,614.614 INFO    ] 2026-06-12 05:03:42
[2026-06-12 05:03:42,824.824 INFO    ] 2026-06-12 05:03:42
[2026-06-12 05:03:42,854.854 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 05:03:43,039.039 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 05:03:43,050.050 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 05:03:43,192.192 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 05:03:43,250.250 INFO    ] time= 12/06/2026 05:03:43
[2026-06-12 05:03:43,274.274 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 05:03:43,281.281 INFO    ] Checking for existing commands in stream...
[2026-06-12 05:03:43,347.347 INFO    ] No existing commands found in stream
[2026-06-12 05:03:48,357.357 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 05:03:48,360.360 INFO    ] Waiting 2.44 seconds before fallback handling...
[2026-06-12 05:03:51,185.185 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 05:03:51,186.186 INFO    ] Checking for system updates...
[2026-06-12 05:03:51,209.209 INFO    ] 200
[2026-06-12 05:03:51,210.210 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:03:51,241.241 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 05:03:51,242.242 INFO    ] No update needed
[2026-06-12 05:03:51,243.243 INFO    ] Checking for camera pi updates...
[2026-06-12 05:03:51,264.264 INFO    ] 200
[2026-06-12 05:03:51,265.265 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:03:51,290.290 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 05:03:51,325.325 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 05:03:51,326.326 INFO    ] No camera update needed
[2026-06-12 05:03:51,328.328 INFO    ] Script finished. Safe exiting...
[2026-06-12 05:03:51,329.329 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 05:03:51,332.332 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 05:03:51,334.334 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 05:03:53,375.375 INFO    ] ================================================
[2026-06-12 05:03:53,390.390 INFO    ] Launching Daemon at Fri Jun 12 05:03:53 IST 2026
[2026-06-12 05:03:53,402.402 INFO    ] ================================================
[2026-06-12 05:03:53,795.795 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 05:03:53
[2026-06-12 05:03:54,136.136 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 05:03:54,284.284 INFO    ] Initializing speech engine...
[2026-06-12 05:03:54,294.294 INFO    ] 2026-06-12 05:03:54
[2026-06-12 05:03:54,503.503 INFO    ] 2026-06-12 05:03:54
[2026-06-12 05:03:54,532.532 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 05:03:54,718.718 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 05:03:54,728.728 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 05:03:54,859.859 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 05:03:54,918.918 INFO    ] time= 12/06/2026 05:03:54
[2026-06-12 05:03:54,960.960 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 05:03:54,969.969 INFO    ] Checking for existing commands in stream...
[2026-06-12 05:03:55,075.075 INFO    ] No existing commands found in stream
[2026-06-12 05:04:00,086.086 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 05:04:00,090.090 INFO    ] Waiting 3.33 seconds before fallback handling...
[2026-06-12 05:04:03,779.779 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 05:04:03,781.781 INFO    ] Checking for system updates...
[2026-06-12 05:04:03,803.803 INFO    ] 200
[2026-06-12 05:04:03,804.804 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:04:03,837.837 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 05:04:03,839.839 INFO    ] No update needed
[2026-06-12 05:04:03,840.840 INFO    ] Checking for camera pi updates...
[2026-06-12 05:04:03,861.861 INFO    ] 200
[2026-06-12 05:04:03,863.863 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:04:03,892.892 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 05:04:03,928.928 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 05:04:03,929.929 INFO    ] No camera update needed
[2026-06-12 05:04:03,931.931 INFO    ] Script finished. Safe exiting...
[2026-06-12 05:04:03,932.932 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 05:04:03,935.935 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 05:04:03,938.938 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 05:04:05,979.979 INFO    ] ================================================
[2026-06-12 05:04:06,995.995 INFO    ] Launching Daemon at Fri Jun 12 05:04:05 IST 2026
[2026-06-12 05:04:06,006.006 INFO    ] ================================================
[2026-06-12 05:04:06,361.361 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 05:04:06
[2026-06-12 05:04:06,677.677 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 05:04:06,822.822 INFO    ] Initializing speech engine...
[2026-06-12 05:04:06,827.827 INFO    ] 2026-06-12 05:04:06
[2026-06-12 05:04:07,032.032 INFO    ] 2026-06-12 05:04:07
[2026-06-12 05:04:07,060.060 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 05:04:07,244.244 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 05:04:07,254.254 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 05:04:07,381.381 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 05:04:07,441.441 INFO    ] time= 12/06/2026 05:04:07
[2026-06-12 05:04:07,473.473 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 05:04:07,479.479 INFO    ] Checking for existing commands in stream...
[2026-06-12 05:04:07,572.572 INFO    ] No existing commands found in stream
[2026-06-12 05:04:12,581.581 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 05:04:12,584.584 INFO    ] Waiting 0.84 seconds before fallback handling...
[2026-06-12 05:04:13,806.806 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 05:04:13,807.807 INFO    ] Checking for system updates...
[2026-06-12 05:04:13,828.828 INFO    ] 200
[2026-06-12 05:04:13,830.830 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:04:13,863.863 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 05:04:13,864.864 INFO    ] No update needed
[2026-06-12 05:04:13,866.866 INFO    ] Checking for camera pi updates...
[2026-06-12 05:04:13,887.887 INFO    ] 200
[2026-06-12 05:04:13,888.888 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:04:13,915.915 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 05:04:13,958.958 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 05:04:13,959.959 INFO    ] No camera update needed
[2026-06-12 05:04:13,961.961 INFO    ] Script finished. Safe exiting...
[2026-06-12 05:04:13,962.962 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 05:04:13,965.965 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 05:04:13,968.968 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 05:04:16,009.009 INFO    ] ================================================
[2026-06-12 05:04:16,025.025 INFO    ] Launching Daemon at Fri Jun 12 05:04:16 IST 2026
[2026-06-12 05:04:16,036.036 INFO    ] ================================================
[2026-06-12 05:04:16,391.391 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 05:04:16
[2026-06-12 05:04:16,705.705 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 05:04:16,838.838 INFO    ] Initializing speech engine...
[2026-06-12 05:04:16,842.842 INFO    ] 2026-06-12 05:04:16
[2026-06-12 05:04:17,072.072 INFO    ] 2026-06-12 05:04:17
[2026-06-12 05:04:17,102.102 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 05:04:17,301.301 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 05:04:17,305.305 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 05:04:17,452.452 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 05:04:17,522.522 INFO    ] time= 12/06/2026 05:04:17
[2026-06-12 05:04:17,552.552 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 05:04:17,554.554 INFO    ] Checking for existing commands in stream...
[2026-06-12 05:04:17,630.630 INFO    ] No existing commands found in stream
[2026-06-12 05:04:22,641.641 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 05:04:22,644.644 INFO    ] Waiting 1.45 seconds before fallback handling...
[2026-06-12 05:04:24,445.445 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 05:04:24,447.447 INFO    ] Checking for system updates...
[2026-06-12 05:04:24,468.468 INFO    ] 200
[2026-06-12 05:04:24,469.469 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:04:24,502.502 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 05:04:24,503.503 INFO    ] No update needed
[2026-06-12 05:04:24,504.504 INFO    ] Checking for camera pi updates...
[2026-06-12 05:04:24,525.525 INFO    ] 200
[2026-06-12 05:04:24,526.526 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:04:24,551.551 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 05:04:24,592.592 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 05:04:24,593.593 INFO    ] No camera update needed
[2026-06-12 05:04:24,594.594 INFO    ] Script finished. Safe exiting...
[2026-06-12 05:04:24,595.595 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 05:04:24,598.598 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 05:04:24,601.601 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 05:04:26,640.640 INFO    ] ================================================
[2026-06-12 05:04:26,656.656 INFO    ] Launching Daemon at Fri Jun 12 05:04:26 IST 2026
[2026-06-12 05:04:26,668.668 INFO    ] ================================================
[2026-06-12 05:04:27,051.051 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 05:04:27
[2026-06-12 05:04:27,387.387 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 05:04:27,539.539 INFO    ] Initializing speech engine...
[2026-06-12 05:04:27,549.549 INFO    ] 2026-06-12 05:04:27
[2026-06-12 05:04:27,758.758 INFO    ] 2026-06-12 05:04:27
[2026-06-12 05:04:27,787.787 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 05:04:27,998.998 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 05:04:28,003.003 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 05:04:28,190.190 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 05:04:28,205.205 INFO    ] time= 12/06/2026 05:04:28
[2026-06-12 05:04:28,207.207 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 05:04:28,208.208 INFO    ] Checking for existing commands in stream...
[2026-06-12 05:04:28,276.276 INFO    ] No existing commands found in stream
[2026-06-12 05:04:33,285.285 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 05:04:33,288.288 INFO    ] Waiting 2.27 seconds before fallback handling...
[2026-06-12 05:04:35,926.926 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 05:04:35,927.927 INFO    ] Checking for system updates...
[2026-06-12 05:04:35,948.948 INFO    ] 200
[2026-06-12 05:04:35,950.950 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:04:35,982.982 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 05:04:35,984.984 INFO    ] No update needed
[2026-06-12 05:04:35,985.985 INFO    ] Checking for camera pi updates...
[2026-06-12 05:04:36,007.007 INFO    ] 200
[2026-06-12 05:04:36,009.009 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:04:36,034.034 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 05:04:36,070.070 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 05:04:36,072.072 INFO    ] No camera update needed
[2026-06-12 05:04:36,073.073 INFO    ] Script finished. Safe exiting...
[2026-06-12 05:04:36,075.075 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 05:04:36,078.078 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 05:04:36,081.081 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 05:04:38,120.120 INFO    ] ================================================
[2026-06-12 05:04:38,136.136 INFO    ] Launching Daemon at Fri Jun 12 05:04:38 IST 2026
[2026-06-12 05:04:38,147.147 INFO    ] ================================================
[2026-06-12 05:04:38,482.482 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 05:04:38
[2026-06-12 05:04:38,794.794 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 05:04:38,923.923 INFO    ] Initializing speech engine...
[2026-06-12 05:04:38,927.927 INFO    ] 2026-06-12 05:04:38
[2026-06-12 05:04:39,143.143 INFO    ] 2026-06-12 05:04:39
[2026-06-12 05:04:39,173.173 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 05:04:39,356.356 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 05:04:39,365.365 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 05:04:39,551.551 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 05:04:39,584.584 INFO    ] time= 12/06/2026 05:04:39
[2026-06-12 05:04:39,589.589 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 05:04:39,591.591 INFO    ] Checking for existing commands in stream...
[2026-06-12 05:04:39,683.683 INFO    ] No existing commands found in stream
[2026-06-12 05:04:44,697.697 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 05:04:44,700.700 INFO    ] Waiting 3.71 seconds before fallback handling...
[2026-06-12 05:04:48,797.797 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 05:04:48,799.799 INFO    ] Checking for system updates...
[2026-06-12 05:04:48,820.820 INFO    ] 200
[2026-06-12 05:04:48,822.822 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:04:48,853.853 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 05:04:48,854.854 INFO    ] No update needed
[2026-06-12 05:04:48,856.856 INFO    ] Checking for camera pi updates...
[2026-06-12 05:04:48,876.876 INFO    ] 200
[2026-06-12 05:04:48,877.877 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:04:48,901.901 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 05:04:48,937.937 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 05:04:48,939.939 INFO    ] No camera update needed
[2026-06-12 05:04:48,941.941 INFO    ] Script finished. Safe exiting...
[2026-06-12 05:04:48,942.942 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 05:04:48,945.945 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 05:04:48,948.948 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 05:04:50,991.991 INFO    ] ================================================
[2026-06-12 05:04:51,007.007 INFO    ] Launching Daemon at Fri Jun 12 05:04:51 IST 2026
[2026-06-12 05:04:51,018.018 INFO    ] ================================================
[2026-06-12 05:04:51,407.407 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 05:04:51
[2026-06-12 05:04:51,742.742 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 05:04:51,880.880 INFO    ] Initializing speech engine...
[2026-06-12 05:04:51,894.894 INFO    ] 2026-06-12 05:04:51
[2026-06-12 05:04:52,104.104 INFO    ] 2026-06-12 05:04:52
[2026-06-12 05:04:52,134.134 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 05:04:52,317.317 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 05:04:52,327.327 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 05:04:52,477.477 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 05:04:52,526.526 INFO    ] time= 12/06/2026 05:04:52
[2026-06-12 05:04:52,547.547 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 05:04:52,554.554 INFO    ] Checking for existing commands in stream...
[2026-06-12 05:04:52,621.621 INFO    ] No existing commands found in stream
[2026-06-12 05:04:57,629.629 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 05:04:57,631.631 INFO    ] Waiting 1.21 seconds before fallback handling...
[2026-06-12 05:04:59,231.231 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 05:04:59,233.233 INFO    ] Checking for system updates...
[2026-06-12 05:04:59,254.254 INFO    ] 200
[2026-06-12 05:04:59,255.255 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:04:59,289.289 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 05:04:59,291.291 INFO    ] No update needed
[2026-06-12 05:04:59,292.292 INFO    ] Checking for camera pi updates...
[2026-06-12 05:04:59,313.313 INFO    ] 200
[2026-06-12 05:04:59,314.314 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:04:59,337.337 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 05:04:59,386.386 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 05:04:59,387.387 INFO    ] No camera update needed
[2026-06-12 05:04:59,388.388 INFO    ] Script finished. Safe exiting...
[2026-06-12 05:04:59,390.390 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 05:04:59,393.393 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 05:04:59,396.396 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 05:05:01,443.443 INFO    ] ================================================
[2026-06-12 05:05:01,458.458 INFO    ] Launching Daemon at Fri Jun 12 05:05:01 IST 2026
[2026-06-12 05:05:01,470.470 INFO    ] ================================================
[2026-06-12 05:05:01,995.995 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 05:05:01
[2026-06-12 05:05:02,434.434 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 05:05:02,607.607 INFO    ] Initializing speech engine...
[2026-06-12 05:05:02,624.624 INFO    ] 2026-06-12 05:05:02
[2026-06-12 05:05:02,882.882 INFO    ] 2026-06-12 05:05:02
[2026-06-12 05:05:02,911.911 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 05:05:03,052.052 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 05:05:03,106.106 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 05:05:03,254.254 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 05:05:03,316.316 INFO    ] time= 12/06/2026 05:05:03
[2026-06-12 05:05:03,340.340 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 05:05:03,346.346 INFO    ] Checking for existing commands in stream...
[2026-06-12 05:05:03,414.414 INFO    ] No existing commands found in stream
[2026-06-12 05:05:08,428.428 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 05:05:08,431.431 INFO    ] Waiting 3.12 seconds before fallback handling...
[2026-06-12 05:05:11,945.945 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 05:05:11,947.947 INFO    ] Checking for system updates...
[2026-06-12 05:05:11,969.969 INFO    ] 200
[2026-06-12 05:05:11,971.971 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:05:12,001.001 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 05:05:12,002.002 INFO    ] No update needed
[2026-06-12 05:05:12,003.003 INFO    ] Checking for camera pi updates...
[2026-06-12 05:05:12,023.023 INFO    ] 200
[2026-06-12 05:05:12,024.024 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:05:12,049.049 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 05:05:12,175.175 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 05:05:12,177.177 INFO    ] No camera update needed
[2026-06-12 05:05:12,178.178 INFO    ] Script finished. Safe exiting...
[2026-06-12 05:05:12,179.179 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 05:05:12,182.182 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 05:05:12,185.185 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 05:05:14,224.224 INFO    ] ================================================
[2026-06-12 05:05:14,240.240 INFO    ] Launching Daemon at Fri Jun 12 05:05:14 IST 2026
[2026-06-12 05:05:14,251.251 INFO    ] ================================================
[2026-06-12 05:05:14,620.620 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 05:05:14
[2026-06-12 05:05:14,955.955 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 05:05:15,093.093 INFO    ] Initializing speech engine...
[2026-06-12 05:05:15,104.104 INFO    ] 2026-06-12 05:05:15
[2026-06-12 05:05:15,311.311 INFO    ] 2026-06-12 05:05:15
[2026-06-12 05:05:15,339.339 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 05:05:15,527.527 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 05:05:15,536.536 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 05:05:15,660.660 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 05:05:15,716.716 INFO    ] time= 12/06/2026 05:05:15
[2026-06-12 05:05:15,752.752 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 05:05:15,763.763 INFO    ] Checking for existing commands in stream...
[2026-06-12 05:05:15,833.833 INFO    ] No existing commands found in stream
[2026-06-12 05:05:20,844.844 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 05:05:20,847.847 INFO    ] Waiting 3.31 seconds before fallback handling...
[2026-06-12 05:05:24,566.566 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 05:05:24,567.567 INFO    ] Checking for system updates...
[2026-06-12 05:05:24,588.588 INFO    ] 200
[2026-06-12 05:05:24,590.590 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:05:24,621.621 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 05:05:24,622.622 INFO    ] No update needed
[2026-06-12 05:05:24,624.624 INFO    ] Checking for camera pi updates...
[2026-06-12 05:05:24,645.645 INFO    ] 200
[2026-06-12 05:05:24,647.647 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:05:24,675.675 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 05:05:24,716.716 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 05:05:24,718.718 INFO    ] No camera update needed
[2026-06-12 05:05:24,719.719 INFO    ] Script finished. Safe exiting...
[2026-06-12 05:05:24,721.721 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 05:05:24,724.724 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 05:05:24,727.727 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 05:05:26,768.768 INFO    ] ================================================
[2026-06-12 05:05:26,785.785 INFO    ] Launching Daemon at Fri Jun 12 05:05:26 IST 2026
[2026-06-12 05:05:26,796.796 INFO    ] ================================================
[2026-06-12 05:05:27,153.153 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 05:05:27
[2026-06-12 05:05:27,466.466 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 05:05:27,596.596 INFO    ] Initializing speech engine...
[2026-06-12 05:05:27,605.605 INFO    ] 2026-06-12 05:05:27
[2026-06-12 05:05:27,821.821 INFO    ] 2026-06-12 05:05:27
[2026-06-12 05:05:27,850.850 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 05:05:28,037.037 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 05:05:28,047.047 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 05:05:28,181.181 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 05:05:28,245.245 INFO    ] time= 12/06/2026 05:05:28
[2026-06-12 05:05:28,274.274 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 05:05:28,281.281 INFO    ] Checking for existing commands in stream...
[2026-06-12 05:05:28,348.348 INFO    ] No existing commands found in stream
[2026-06-12 05:05:33,358.358 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 05:05:33,361.361 INFO    ] Waiting 2.38 seconds before fallback handling...
[2026-06-12 05:05:36,131.131 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 05:05:36,133.133 INFO    ] Checking for system updates...
[2026-06-12 05:05:36,154.154 INFO    ] 200
[2026-06-12 05:05:36,155.155 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:05:36,186.186 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 05:05:36,188.188 INFO    ] No update needed
[2026-06-12 05:05:36,189.189 INFO    ] Checking for camera pi updates...
[2026-06-12 05:05:36,209.209 INFO    ] 200
[2026-06-12 05:05:36,211.211 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:05:36,236.236 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 05:05:36,277.277 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 05:05:36,278.278 INFO    ] No camera update needed
[2026-06-12 05:05:36,280.280 INFO    ] Script finished. Safe exiting...
[2026-06-12 05:05:36,281.281 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 05:05:36,285.285 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 05:05:36,288.288 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 05:05:38,328.328 INFO    ] ================================================
[2026-06-12 05:05:38,344.344 INFO    ] Launching Daemon at Fri Jun 12 05:05:38 IST 2026
[2026-06-12 05:05:38,355.355 INFO    ] ================================================
[2026-06-12 05:05:38,736.736 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 05:05:38
[2026-06-12 05:05:39,081.081 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 05:05:39,235.235 INFO    ] Initializing speech engine...
[2026-06-12 05:05:39,241.241 INFO    ] 2026-06-12 05:05:39
[2026-06-12 05:05:39,453.453 INFO    ] 2026-06-12 05:05:39
[2026-06-12 05:05:39,481.481 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 05:05:39,606.606 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 05:05:39,669.669 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 05:05:39,807.807 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 05:05:39,863.863 INFO    ] time= 12/06/2026 05:05:39
[2026-06-12 05:05:39,893.893 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 05:05:39,904.904 INFO    ] Checking for existing commands in stream...
[2026-06-12 05:05:39,977.977 INFO    ] No existing commands found in stream
[2026-06-12 05:05:44,991.991 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 05:05:44,994.994 INFO    ] Waiting 2.81 seconds before fallback handling...
[2026-06-12 05:05:48,178.178 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 05:05:48,180.180 INFO    ] Checking for system updates...
[2026-06-12 05:05:48,202.202 INFO    ] 200
[2026-06-12 05:05:48,204.204 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:05:48,234.234 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 05:05:48,235.235 INFO    ] No update needed
[2026-06-12 05:05:48,236.236 INFO    ] Checking for camera pi updates...
[2026-06-12 05:05:48,260.260 INFO    ] 200
[2026-06-12 05:05:48,261.261 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:05:48,284.284 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 05:05:48,323.323 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 05:05:48,324.324 INFO    ] No camera update needed
[2026-06-12 05:05:48,325.325 INFO    ] Script finished. Safe exiting...
[2026-06-12 05:05:48,327.327 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 05:05:48,330.330 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 05:05:48,332.332 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 05:05:50,372.372 INFO    ] ================================================
[2026-06-12 05:05:50,388.388 INFO    ] Launching Daemon at Fri Jun 12 05:05:50 IST 2026
[2026-06-12 05:05:50,398.398 INFO    ] ================================================
[2026-06-12 05:05:50,751.751 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 05:05:50
[2026-06-12 05:05:51,070.070 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 05:05:51,213.213 INFO    ] Initializing speech engine...
[2026-06-12 05:05:51,218.218 INFO    ] 2026-06-12 05:05:51
[2026-06-12 05:05:51,424.424 INFO    ] 2026-06-12 05:05:51
[2026-06-12 05:05:51,454.454 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 05:05:51,639.639 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 05:05:51,642.642 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 05:05:51,801.801 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 05:05:51,850.850 INFO    ] time= 12/06/2026 05:05:51
[2026-06-12 05:05:51,872.872 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 05:05:51,879.879 INFO    ] Checking for existing commands in stream...
[2026-06-12 05:05:51,946.946 INFO    ] No existing commands found in stream
[2026-06-12 05:05:56,961.961 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 05:05:56,963.963 INFO    ] Waiting 3.90 seconds before fallback handling...
[2026-06-12 05:06:01,314.314 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 05:06:01,316.316 INFO    ] Checking for system updates...
[2026-06-12 05:06:01,351.351 INFO    ] 200
[2026-06-12 05:06:01,353.353 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:06:01,432.432 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 05:06:01,434.434 INFO    ] No update needed
[2026-06-12 05:06:01,436.436 INFO    ] Checking for camera pi updates...
[2026-06-12 05:06:01,467.467 INFO    ] 200
[2026-06-12 05:06:01,468.468 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:06:01,497.497 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 05:06:01,530.530 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 05:06:01,532.532 INFO    ] No camera update needed
[2026-06-12 05:06:01,533.533 INFO    ] Script finished. Safe exiting...
[2026-06-12 05:06:01,535.535 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 05:06:01,539.539 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 05:06:01,543.543 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 05:06:03,583.583 INFO    ] ================================================
[2026-06-12 05:06:03,599.599 INFO    ] Launching Daemon at Fri Jun 12 05:06:03 IST 2026
[2026-06-12 05:06:03,610.610 INFO    ] ================================================
[2026-06-12 05:06:03,961.961 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 05:06:03
[2026-06-12 05:06:04,281.281 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 05:06:04,428.428 INFO    ] Initializing speech engine...
[2026-06-12 05:06:04,432.432 INFO    ] 2026-06-12 05:06:04
[2026-06-12 05:06:04,636.636 INFO    ] 2026-06-12 05:06:04
[2026-06-12 05:06:04,665.665 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 05:06:04,849.849 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 05:06:04,852.852 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 05:06:05,053.053 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 05:06:05,078.078 INFO    ] time= 12/06/2026 05:06:05
[2026-06-12 05:06:05,083.083 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 05:06:05,085.085 INFO    ] Checking for existing commands in stream...
[2026-06-12 05:06:05,152.152 INFO    ] No existing commands found in stream
[2026-06-12 05:06:10,166.166 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 05:06:10,169.169 INFO    ] Waiting 0.85 seconds before fallback handling...
[2026-06-12 05:06:11,365.365 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 05:06:11,367.367 INFO    ] Checking for system updates...
[2026-06-12 05:06:11,388.388 INFO    ] 200
[2026-06-12 05:06:11,390.390 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:06:11,423.423 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 05:06:11,424.424 INFO    ] No update needed
[2026-06-12 05:06:11,426.426 INFO    ] Checking for camera pi updates...
[2026-06-12 05:06:11,445.445 INFO    ] 200
[2026-06-12 05:06:11,446.446 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:06:11,472.472 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 05:06:11,528.528 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 05:06:11,529.529 INFO    ] No camera update needed
[2026-06-12 05:06:11,530.530 INFO    ] Script finished. Safe exiting...
[2026-06-12 05:06:11,532.532 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 05:06:11,535.535 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 05:06:11,537.537 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 05:06:13,580.580 INFO    ] ================================================
[2026-06-12 05:06:13,596.596 INFO    ] Launching Daemon at Fri Jun 12 05:06:13 IST 2026
[2026-06-12 05:06:13,608.608 INFO    ] ================================================
[2026-06-12 05:06:14,000.000 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 05:06:13
[2026-06-12 05:06:14,342.342 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 05:06:14,494.494 INFO    ] Initializing speech engine...
[2026-06-12 05:06:14,500.500 INFO    ] 2026-06-12 05:06:14
[2026-06-12 05:06:14,709.709 INFO    ] 2026-06-12 05:06:14
[2026-06-12 05:06:14,738.738 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 05:06:14,923.923 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 05:06:14,932.932 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 05:06:15,123.123 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 05:06:15,150.150 INFO    ] time= 12/06/2026 05:06:15
[2026-06-12 05:06:15,157.157 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 05:06:15,159.159 INFO    ] Checking for existing commands in stream...
[2026-06-12 05:06:15,249.249 INFO    ] No existing commands found in stream
[2026-06-12 05:06:20,259.259 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 05:06:20,263.263 INFO    ] Waiting 1.41 seconds before fallback handling...
[2026-06-12 05:06:22,065.065 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 05:06:22,066.066 INFO    ] Checking for system updates...
[2026-06-12 05:06:22,087.087 INFO    ] 200
[2026-06-12 05:06:22,089.089 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:06:22,124.124 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 05:06:22,126.126 INFO    ] No update needed
[2026-06-12 05:06:22,127.127 INFO    ] Checking for camera pi updates...
[2026-06-12 05:06:22,155.155 INFO    ] 200
[2026-06-12 05:06:22,156.156 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:06:22,181.181 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 05:06:22,218.218 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 05:06:22,219.219 INFO    ] No camera update needed
[2026-06-12 05:06:22,220.220 INFO    ] Script finished. Safe exiting...
[2026-06-12 05:06:22,222.222 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 05:06:22,225.225 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 05:06:22,227.227 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 05:06:24,265.265 INFO    ] ================================================
[2026-06-12 05:06:24,282.282 INFO    ] Launching Daemon at Fri Jun 12 05:06:24 IST 2026
[2026-06-12 05:06:24,294.294 INFO    ] ================================================
[2026-06-12 05:06:24,624.624 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 05:06:24
[2026-06-12 05:06:24,937.937 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 05:06:25,071.071 INFO    ] Initializing speech engine...
[2026-06-12 05:06:25,083.083 INFO    ] 2026-06-12 05:06:25
[2026-06-12 05:06:25,292.292 INFO    ] 2026-06-12 05:06:25
[2026-06-12 05:06:25,322.322 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 05:06:25,509.509 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 05:06:25,513.513 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 05:06:25,652.652 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 05:06:25,720.720 INFO    ] time= 12/06/2026 05:06:25
[2026-06-12 05:06:25,744.744 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 05:06:25,751.751 INFO    ] Checking for existing commands in stream...
[2026-06-12 05:06:25,813.813 INFO    ] No existing commands found in stream
[2026-06-12 05:06:30,822.822 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 05:06:30,825.825 INFO    ] Waiting 1.42 seconds before fallback handling...
[2026-06-12 05:06:32,598.598 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 05:06:32,600.600 INFO    ] Checking for system updates...
[2026-06-12 05:06:32,622.622 INFO    ] 200
[2026-06-12 05:06:32,623.623 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:06:32,653.653 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 05:06:32,655.655 INFO    ] No update needed
[2026-06-12 05:06:32,656.656 INFO    ] Checking for camera pi updates...
[2026-06-12 05:06:32,675.675 INFO    ] 200
[2026-06-12 05:06:32,677.677 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:06:32,701.701 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 05:06:32,725.725 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 05:06:32,726.726 INFO    ] No camera update needed
[2026-06-12 05:06:32,727.727 INFO    ] Script finished. Safe exiting...
[2026-06-12 05:06:32,729.729 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 05:06:32,732.732 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 05:06:32,734.734 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 05:06:34,774.774 INFO    ] ================================================
[2026-06-12 05:06:34,791.791 INFO    ] Launching Daemon at Fri Jun 12 05:06:34 IST 2026
[2026-06-12 05:06:34,803.803 INFO    ] ================================================
[2026-06-12 05:06:35,132.132 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 05:06:35
[2026-06-12 05:06:35,448.448 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 05:06:35,594.594 INFO    ] Initializing speech engine...
[2026-06-12 05:06:35,598.598 INFO    ] 2026-06-12 05:06:35
[2026-06-12 05:06:35,801.801 INFO    ] 2026-06-12 05:06:35
[2026-06-12 05:06:35,829.829 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 05:06:36,012.012 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 05:06:36,016.016 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 05:06:36,215.215 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 05:06:36,240.240 INFO    ] time= 12/06/2026 05:06:36
[2026-06-12 05:06:36,245.245 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 05:06:36,247.247 INFO    ] Checking for existing commands in stream...
[2026-06-12 05:06:36,313.313 INFO    ] No existing commands found in stream
[2026-06-12 05:06:41,322.322 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 05:06:41,325.325 INFO    ] Waiting 2.49 seconds before fallback handling...
[2026-06-12 05:06:44,175.175 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 05:06:44,176.176 INFO    ] Checking for system updates...
[2026-06-12 05:06:44,197.197 INFO    ] 200
[2026-06-12 05:06:44,198.198 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:06:44,231.231 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 05:06:44,232.232 INFO    ] No update needed
[2026-06-12 05:06:44,233.233 INFO    ] Checking for camera pi updates...
[2026-06-12 05:06:44,253.253 INFO    ] 200
[2026-06-12 05:06:44,255.255 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:06:44,281.281 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 05:06:44,325.325 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 05:06:44,326.326 INFO    ] No camera update needed
[2026-06-12 05:06:44,327.327 INFO    ] Script finished. Safe exiting...
[2026-06-12 05:06:44,329.329 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 05:06:44,332.332 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 05:06:44,334.334 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 05:06:46,375.375 INFO    ] ================================================
[2026-06-12 05:06:46,392.392 INFO    ] Launching Daemon at Fri Jun 12 05:06:46 IST 2026
[2026-06-12 05:06:46,403.403 INFO    ] ================================================
[2026-06-12 05:06:46,735.735 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 05:06:46
[2026-06-12 05:06:47,052.052 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 05:06:47,188.188 INFO    ] Initializing speech engine...
[2026-06-12 05:06:47,197.197 INFO    ] 2026-06-12 05:06:47
[2026-06-12 05:06:47,397.397 INFO    ] 2026-06-12 05:06:47
[2026-06-12 05:06:47,432.432 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 05:06:47,591.591 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 05:06:47,654.654 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 05:06:47,801.801 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 05:06:47,863.863 INFO    ] time= 12/06/2026 05:06:47
[2026-06-12 05:06:47,899.899 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 05:06:47,911.911 INFO    ] Checking for existing commands in stream...
[2026-06-12 05:06:47,987.987 INFO    ] No existing commands found in stream
[2026-06-12 05:06:52,994.994 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 05:06:52,997.997 INFO    ] Waiting 2.77 seconds before fallback handling...
[2026-06-12 05:06:56,118.118 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 05:06:56,120.120 INFO    ] Checking for system updates...
[2026-06-12 05:06:56,141.141 INFO    ] 200
[2026-06-12 05:06:56,142.142 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:06:56,197.197 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 05:06:56,199.199 INFO    ] No update needed
[2026-06-12 05:06:56,200.200 INFO    ] Checking for camera pi updates...
[2026-06-12 05:06:56,222.222 INFO    ] 200
[2026-06-12 05:06:56,223.223 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:06:56,265.265 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 05:06:56,313.313 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 05:06:56,316.316 INFO    ] No camera update needed
[2026-06-12 05:06:56,318.318 INFO    ] Script finished. Safe exiting...
[2026-06-12 05:06:56,321.321 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 05:06:56,326.326 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 05:06:56,332.332 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 05:06:58,377.377 INFO    ] ================================================
[2026-06-12 05:06:58,392.392 INFO    ] Launching Daemon at Fri Jun 12 05:06:58 IST 2026
[2026-06-12 05:06:58,404.404 INFO    ] ================================================
[2026-06-12 05:06:58,789.789 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 05:06:58
[2026-06-12 05:06:59,127.127 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 05:06:59,279.279 INFO    ] Initializing speech engine...
[2026-06-12 05:06:59,285.285 INFO    ] 2026-06-12 05:06:59
[2026-06-12 05:06:59,495.495 INFO    ] 2026-06-12 05:06:59
[2026-06-12 05:06:59,525.525 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 05:06:59,711.711 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 05:06:59,720.720 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 05:06:59,894.894 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 05:06:59,939.939 INFO    ] time= 12/06/2026 05:06:59
[2026-06-12 05:06:59,944.944 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 05:06:59,951.951 INFO    ] Checking for existing commands in stream...
[2026-06-12 05:07:00,019.019 INFO    ] No existing commands found in stream
[2026-06-12 05:07:05,033.033 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 05:07:05,036.036 INFO    ] Waiting 3.28 seconds before fallback handling...
[2026-06-12 05:07:08,715.715 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 05:07:08,716.716 INFO    ] Checking for system updates...
[2026-06-12 05:07:08,737.737 INFO    ] 200
[2026-06-12 05:07:08,739.739 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:07:08,769.769 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 05:07:08,771.771 INFO    ] No update needed
[2026-06-12 05:07:08,772.772 INFO    ] Checking for camera pi updates...
[2026-06-12 05:07:08,793.793 INFO    ] 200
[2026-06-12 05:07:08,794.794 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:07:08,818.818 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 05:07:08,854.854 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 05:07:08,855.855 INFO    ] No camera update needed
[2026-06-12 05:07:08,857.857 INFO    ] Script finished. Safe exiting...
[2026-06-12 05:07:08,858.858 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 05:07:08,861.861 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 05:07:08,864.864 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 05:07:10,903.903 INFO    ] ================================================
[2026-06-12 05:07:10,918.918 INFO    ] Launching Daemon at Fri Jun 12 05:07:10 IST 2026
[2026-06-12 05:07:10,929.929 INFO    ] ================================================
[2026-06-12 05:07:11,267.267 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 05:07:11
[2026-06-12 05:07:11,579.579 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 05:07:11,723.723 INFO    ] Initializing speech engine...
[2026-06-12 05:07:11,728.728 INFO    ] 2026-06-12 05:07:11
[2026-06-12 05:07:11,932.932 INFO    ] 2026-06-12 05:07:11
[2026-06-12 05:07:11,961.961 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 05:07:12,146.146 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 05:07:12,149.149 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 05:07:12,302.302 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 05:07:12,357.357 INFO    ] time= 12/06/2026 05:07:12
[2026-06-12 05:07:12,379.379 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 05:07:12,385.385 INFO    ] Checking for existing commands in stream...
[2026-06-12 05:07:12,452.452 INFO    ] No existing commands found in stream
[2026-06-12 05:07:17,461.461 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 05:07:17,464.464 INFO    ] Waiting 2.37 seconds before fallback handling...
[2026-06-12 05:07:20,224.224 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 05:07:20,225.225 INFO    ] Checking for system updates...
[2026-06-12 05:07:20,247.247 INFO    ] 200
[2026-06-12 05:07:20,248.248 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:07:20,279.279 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 05:07:20,280.280 INFO    ] No update needed
[2026-06-12 05:07:20,282.282 INFO    ] Checking for camera pi updates...
[2026-06-12 05:07:20,301.301 INFO    ] 200
[2026-06-12 05:07:20,302.302 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:07:20,325.325 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 05:07:20,474.474 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 05:07:20,476.476 INFO    ] No camera update needed
[2026-06-12 05:07:20,477.477 INFO    ] Script finished. Safe exiting...
[2026-06-12 05:07:20,478.478 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 05:07:20,481.481 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 05:07:20,484.484 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 05:07:22,523.523 INFO    ] ================================================
[2026-06-12 05:07:22,538.538 INFO    ] Launching Daemon at Fri Jun 12 05:07:22 IST 2026
[2026-06-12 05:07:22,549.549 INFO    ] ================================================
[2026-06-12 05:07:22,882.882 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 05:07:22
[2026-06-12 05:07:23,194.194 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 05:07:23,324.324 INFO    ] Initializing speech engine...
[2026-06-12 05:07:23,328.328 INFO    ] 2026-06-12 05:07:23
[2026-06-12 05:07:23,546.546 INFO    ] 2026-06-12 05:07:23
[2026-06-12 05:07:23,576.576 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 05:07:23,761.761 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 05:07:23,764.764 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 05:07:23,923.923 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 05:07:23,972.972 INFO    ] time= 12/06/2026 05:07:23
[2026-06-12 05:07:23,994.994 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 05:07:24,000.000 INFO    ] Checking for existing commands in stream...
[2026-06-12 05:07:24,068.068 INFO    ] No existing commands found in stream
[2026-06-12 05:07:29,082.082 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 05:07:29,085.085 INFO    ] Waiting 3.40 seconds before fallback handling...
[2026-06-12 05:07:32,883.883 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 05:07:32,885.885 INFO    ] Checking for system updates...
[2026-06-12 05:07:32,906.906 INFO    ] 200
[2026-06-12 05:07:32,908.908 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:07:32,940.940 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 05:07:32,941.941 INFO    ] No update needed
[2026-06-12 05:07:32,943.943 INFO    ] Checking for camera pi updates...
[2026-06-12 05:07:32,963.963 INFO    ] 200
[2026-06-12 05:07:32,964.964 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:07:32,987.987 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 05:07:33,025.025 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 05:07:33,026.026 INFO    ] No camera update needed
[2026-06-12 05:07:33,027.027 INFO    ] Script finished. Safe exiting...
[2026-06-12 05:07:33,029.029 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 05:07:33,032.032 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 05:07:33,034.034 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 05:07:35,074.074 INFO    ] ================================================
[2026-06-12 05:07:35,089.089 INFO    ] Launching Daemon at Fri Jun 12 05:07:35 IST 2026
[2026-06-12 05:07:35,099.099 INFO    ] ================================================
[2026-06-12 05:07:35,438.438 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 05:07:35
[2026-06-12 05:07:35,755.755 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 05:07:35,888.888 INFO    ] Initializing speech engine...
[2026-06-12 05:07:35,893.893 INFO    ] 2026-06-12 05:07:35
[2026-06-12 05:07:36,126.126 INFO    ] 2026-06-12 05:07:36
[2026-06-12 05:07:36,157.157 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 05:07:36,355.355 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 05:07:36,364.364 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 05:07:36,498.498 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 05:07:36,539.539 INFO    ] time= 12/06/2026 05:07:36
[2026-06-12 05:07:36,583.583 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 05:07:36,605.605 INFO    ] Checking for existing commands in stream...
[2026-06-12 05:07:36,682.682 INFO    ] No existing commands found in stream
[2026-06-12 05:07:41,691.691 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 05:07:41,694.694 INFO    ] Waiting 2.98 seconds before fallback handling...
[2026-06-12 05:07:45,065.065 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 05:07:45,066.066 INFO    ] Checking for system updates...
[2026-06-12 05:07:45,087.087 INFO    ] 200
[2026-06-12 05:07:45,088.088 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:07:45,121.121 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 05:07:45,122.122 INFO    ] No update needed
[2026-06-12 05:07:45,124.124 INFO    ] Checking for camera pi updates...
[2026-06-12 05:07:45,143.143 INFO    ] 200
[2026-06-12 05:07:45,144.144 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:07:45,167.167 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 05:07:45,204.204 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 05:07:45,206.206 INFO    ] No camera update needed
[2026-06-12 05:07:45,207.207 INFO    ] Script finished. Safe exiting...
[2026-06-12 05:07:45,208.208 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 05:07:45,211.211 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 05:07:45,214.214 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 05:07:47,252.252 INFO    ] ================================================
[2026-06-12 05:07:47,267.267 INFO    ] Launching Daemon at Fri Jun 12 05:07:47 IST 2026
[2026-06-12 05:07:47,278.278 INFO    ] ================================================
[2026-06-12 05:07:47,627.627 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 05:07:47
[2026-06-12 05:07:47,938.938 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 05:07:48,083.083 INFO    ] Initializing speech engine...
[2026-06-12 05:07:48,088.088 INFO    ] 2026-06-12 05:07:48
[2026-06-12 05:07:48,292.292 INFO    ] 2026-06-12 05:07:48
[2026-06-12 05:07:48,321.321 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 05:07:48,505.505 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 05:07:48,513.513 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 05:07:48,654.654 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 05:07:48,711.711 INFO    ] time= 12/06/2026 05:07:48
[2026-06-12 05:07:48,734.734 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 05:07:48,740.740 INFO    ] Checking for existing commands in stream...
[2026-06-12 05:07:48,807.807 INFO    ] No existing commands found in stream
[2026-06-12 05:07:53,816.816 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 05:07:53,819.819 INFO    ] Waiting 2.12 seconds before fallback handling...
[2026-06-12 05:07:56,346.346 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 05:07:56,347.347 INFO    ] Checking for system updates...
[2026-06-12 05:07:56,368.368 INFO    ] 200
[2026-06-12 05:07:56,369.369 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:07:56,402.402 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 05:07:56,404.404 INFO    ] No update needed
[2026-06-12 05:07:56,405.405 INFO    ] Checking for camera pi updates...
[2026-06-12 05:07:56,428.428 INFO    ] 200
[2026-06-12 05:07:56,430.430 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:07:56,453.453 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 05:07:56,501.501 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 05:07:56,503.503 INFO    ] No camera update needed
[2026-06-12 05:07:56,504.504 INFO    ] Script finished. Safe exiting...
[2026-06-12 05:07:56,506.506 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 05:07:56,509.509 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 05:07:56,512.512 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 05:07:58,552.552 INFO    ] ================================================
[2026-06-12 05:07:58,569.569 INFO    ] Launching Daemon at Fri Jun 12 05:07:58 IST 2026
[2026-06-12 05:07:58,581.581 INFO    ] ================================================
[2026-06-12 05:07:58,922.922 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 05:07:58
[2026-06-12 05:07:59,237.237 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 05:07:59,381.381 INFO    ] Initializing speech engine...
[2026-06-12 05:07:59,386.386 INFO    ] 2026-06-12 05:07:59
[2026-06-12 05:07:59,591.591 INFO    ] 2026-06-12 05:07:59
[2026-06-12 05:07:59,621.621 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 05:07:59,805.805 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 05:07:59,814.814 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 05:07:59,944.944 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 05:08:00,012.012 INFO    ] time= 12/06/2026 05:07:59
[2026-06-12 05:08:00,037.037 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 05:08:00,043.043 INFO    ] Checking for existing commands in stream...
[2026-06-12 05:08:00,109.109 INFO    ] No existing commands found in stream
[2026-06-12 05:08:05,124.124 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 05:08:05,126.126 INFO    ] Waiting 1.93 seconds before fallback handling...
[2026-06-12 05:08:07,444.444 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 05:08:07,446.446 INFO    ] Checking for system updates...
[2026-06-12 05:08:07,468.468 INFO    ] 200
[2026-06-12 05:08:07,469.469 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:08:07,502.502 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 05:08:07,504.504 INFO    ] No update needed
[2026-06-12 05:08:07,505.505 INFO    ] Checking for camera pi updates...
[2026-06-12 05:08:07,524.524 INFO    ] 200
[2026-06-12 05:08:07,526.526 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:08:07,551.551 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 05:08:07,589.589 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 05:08:07,590.590 INFO    ] No camera update needed
[2026-06-12 05:08:07,592.592 INFO    ] Script finished. Safe exiting...
[2026-06-12 05:08:07,593.593 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 05:08:07,596.596 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 05:08:07,598.598 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 05:08:09,638.638 INFO    ] ================================================
[2026-06-12 05:08:09,654.654 INFO    ] Launching Daemon at Fri Jun 12 05:08:09 IST 2026
[2026-06-12 05:08:09,665.665 INFO    ] ================================================
[2026-06-12 05:08:10,047.047 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 05:08:10
[2026-06-12 05:08:10,388.388 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 05:08:10,545.545 INFO    ] Initializing speech engine...
[2026-06-12 05:08:10,549.549 INFO    ] 2026-06-12 05:08:10
[2026-06-12 05:08:10,759.759 INFO    ] 2026-06-12 05:08:10
[2026-06-12 05:08:10,788.788 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 05:08:10,975.975 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 05:08:10,986.986 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 05:08:11,114.114 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 05:08:11,176.176 INFO    ] time= 12/06/2026 05:08:11
[2026-06-12 05:08:11,210.210 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 05:08:11,216.216 INFO    ] Checking for existing commands in stream...
[2026-06-12 05:08:11,284.284 INFO    ] No existing commands found in stream
[2026-06-12 05:08:16,309.309 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 05:08:16,313.313 INFO    ] Waiting 0.72 seconds before fallback handling...
[2026-06-12 05:08:17,465.465 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 05:08:17,466.466 INFO    ] Checking for system updates...
[2026-06-12 05:08:17,489.489 INFO    ] 200
[2026-06-12 05:08:17,491.491 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:08:17,522.522 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 05:08:17,523.523 INFO    ] No update needed
[2026-06-12 05:08:17,525.525 INFO    ] Checking for camera pi updates...
[2026-06-12 05:08:17,544.544 INFO    ] 200
[2026-06-12 05:08:17,546.546 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:08:17,570.570 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 05:08:17,607.607 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 05:08:17,608.608 INFO    ] No camera update needed
[2026-06-12 05:08:17,610.610 INFO    ] Script finished. Safe exiting...
[2026-06-12 05:08:17,611.611 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 05:08:17,615.615 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 05:08:17,618.618 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 05:08:19,657.657 INFO    ] ================================================
[2026-06-12 05:08:19,673.673 INFO    ] Launching Daemon at Fri Jun 12 05:08:19 IST 2026
[2026-06-12 05:08:19,684.684 INFO    ] ================================================
[2026-06-12 05:08:20,028.028 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 05:08:20
[2026-06-12 05:08:20,344.344 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 05:08:20,476.476 INFO    ] Initializing speech engine...
[2026-06-12 05:08:20,480.480 INFO    ] 2026-06-12 05:08:20
[2026-06-12 05:08:20,698.698 INFO    ] 2026-06-12 05:08:20
[2026-06-12 05:08:20,727.727 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 05:08:20,912.912 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 05:08:20,921.921 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 05:08:21,112.112 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 05:08:21,141.141 INFO    ] time= 12/06/2026 05:08:21
[2026-06-12 05:08:21,146.146 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 05:08:21,148.148 INFO    ] Checking for existing commands in stream...
[2026-06-12 05:08:21,215.215 INFO    ] No existing commands found in stream
[2026-06-12 05:08:26,229.229 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 05:08:26,232.232 INFO    ] Waiting 1.01 seconds before fallback handling...
[2026-06-12 05:08:27,643.643 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 05:08:27,644.644 INFO    ] Checking for system updates...
[2026-06-12 05:08:27,669.669 INFO    ] 200
[2026-06-12 05:08:27,671.671 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:08:27,710.710 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 05:08:27,712.712 INFO    ] No update needed
[2026-06-12 05:08:27,713.713 INFO    ] Checking for camera pi updates...
[2026-06-12 05:08:27,734.734 INFO    ] 200
[2026-06-12 05:08:27,735.735 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:08:27,760.760 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 05:08:27,797.797 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 05:08:27,799.799 INFO    ] No camera update needed
[2026-06-12 05:08:27,800.800 INFO    ] Script finished. Safe exiting...
[2026-06-12 05:08:27,801.801 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 05:08:27,804.804 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 05:08:27,807.807 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 05:08:29,846.846 INFO    ] ================================================
[2026-06-12 05:08:29,862.862 INFO    ] Launching Daemon at Fri Jun 12 05:08:29 IST 2026
[2026-06-12 05:08:29,872.872 INFO    ] ================================================
[2026-06-12 05:08:30,225.225 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 05:08:30
[2026-06-12 05:08:30,541.541 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 05:08:30,672.672 INFO    ] Initializing speech engine...
[2026-06-12 05:08:30,681.681 INFO    ] 2026-06-12 05:08:30
[2026-06-12 05:08:30,892.892 INFO    ] 2026-06-12 05:08:30
[2026-06-12 05:08:30,921.921 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 05:08:31,103.103 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 05:08:31,113.113 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 05:08:31,289.289 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 05:08:31,332.332 INFO    ] time= 12/06/2026 05:08:31
[2026-06-12 05:08:31,334.334 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 05:08:31,340.340 INFO    ] Checking for existing commands in stream...
[2026-06-12 05:08:31,406.406 INFO    ] No existing commands found in stream
[2026-06-12 05:08:36,415.415 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 05:08:36,417.417 INFO    ] Waiting 1.91 seconds before fallback handling...
[2026-06-12 05:08:38,673.673 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 05:08:38,675.675 INFO    ] Checking for system updates...
[2026-06-12 05:08:38,696.696 INFO    ] 200
[2026-06-12 05:08:38,697.697 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:08:38,730.730 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 05:08:38,731.731 INFO    ] No update needed
[2026-06-12 05:08:38,733.733 INFO    ] Checking for camera pi updates...
[2026-06-12 05:08:38,753.753 INFO    ] 200
[2026-06-12 05:08:38,755.755 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:08:38,780.780 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 05:08:38,826.826 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 05:08:38,827.827 INFO    ] No camera update needed
[2026-06-12 05:08:38,829.829 INFO    ] Script finished. Safe exiting...
[2026-06-12 05:08:38,830.830 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 05:08:38,834.834 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 05:08:38,836.836 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 05:08:40,875.875 INFO    ] ================================================
[2026-06-12 05:08:40,891.891 INFO    ] Launching Daemon at Fri Jun 12 05:08:40 IST 2026
[2026-06-12 05:08:40,902.902 INFO    ] ================================================
[2026-06-12 05:08:41,236.236 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 05:08:41
[2026-06-12 05:08:41,554.554 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 05:08:41,688.688 INFO    ] Initializing speech engine...
[2026-06-12 05:08:41,700.700 INFO    ] 2026-06-12 05:08:41
[2026-06-12 05:08:41,907.907 INFO    ] 2026-06-12 05:08:41
[2026-06-12 05:08:41,936.936 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 05:08:42,121.121 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 05:08:42,130.130 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 05:08:42,269.269 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 05:08:42,328.328 INFO    ] time= 12/06/2026 05:08:42
[2026-06-12 05:08:42,350.350 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 05:08:42,356.356 INFO    ] Checking for existing commands in stream...
[2026-06-12 05:08:42,423.423 INFO    ] No existing commands found in stream
[2026-06-12 05:08:47,437.437 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 05:08:47,440.440 INFO    ] Waiting 3.89 seconds before fallback handling...
[2026-06-12 05:08:51,723.723 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 05:08:51,725.725 INFO    ] Checking for system updates...
[2026-06-12 05:08:51,747.747 INFO    ] 200
[2026-06-12 05:08:51,749.749 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:08:51,779.779 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 05:08:51,781.781 INFO    ] No update needed
[2026-06-12 05:08:51,782.782 INFO    ] Checking for camera pi updates...
[2026-06-12 05:08:51,802.802 INFO    ] 200
[2026-06-12 05:08:51,804.804 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:08:51,827.827 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 05:08:51,882.882 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 05:08:51,884.884 INFO    ] No camera update needed
[2026-06-12 05:08:51,885.885 INFO    ] Script finished. Safe exiting...
[2026-06-12 05:08:51,887.887 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 05:08:51,890.890 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 05:08:51,893.893 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 05:08:53,937.937 INFO    ] ================================================
[2026-06-12 05:08:53,953.953 INFO    ] Launching Daemon at Fri Jun 12 05:08:53 IST 2026
[2026-06-12 05:08:53,964.964 INFO    ] ================================================
[2026-06-12 05:08:54,325.325 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 05:08:54
[2026-06-12 05:08:54,641.641 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 05:08:54,784.784 INFO    ] Initializing speech engine...
[2026-06-12 05:08:54,790.790 INFO    ] 2026-06-12 05:08:54
[2026-06-12 05:08:54,993.993 INFO    ] 2026-06-12 05:08:54
[2026-06-12 05:08:55,023.023 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 05:08:55,205.205 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 05:08:55,208.208 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 05:08:55,391.391 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 05:08:55,434.434 INFO    ] time= 12/06/2026 05:08:55
[2026-06-12 05:08:55,436.436 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 05:08:55,442.442 INFO    ] Checking for existing commands in stream...
[2026-06-12 05:08:55,509.509 INFO    ] No existing commands found in stream
[2026-06-12 05:09:00,528.528 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 05:09:00,531.531 INFO    ] Waiting 2.46 seconds before fallback handling...
[2026-06-12 05:09:03,304.304 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 05:09:03,305.305 INFO    ] Checking for system updates...
[2026-06-12 05:09:03,327.327 INFO    ] 200
[2026-06-12 05:09:03,329.329 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:09:03,359.359 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 05:09:03,361.361 INFO    ] No update needed
[2026-06-12 05:09:03,362.362 INFO    ] Checking for camera pi updates...
[2026-06-12 05:09:03,397.397 INFO    ] 200
[2026-06-12 05:09:03,400.400 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:09:03,441.441 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 05:09:03,493.493 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 05:09:03,495.495 INFO    ] No camera update needed
[2026-06-12 05:09:03,498.498 INFO    ] Script finished. Safe exiting...
[2026-06-12 05:09:03,500.500 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 05:09:03,505.505 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 05:09:03,511.511 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 05:09:05,552.552 INFO    ] ================================================
[2026-06-12 05:09:05,568.568 INFO    ] Launching Daemon at Fri Jun 12 05:09:05 IST 2026
[2026-06-12 05:09:05,579.579 INFO    ] ================================================
[2026-06-12 05:09:05,969.969 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 05:09:05
[2026-06-12 05:09:06,332.332 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 05:09:06,485.485 INFO    ] Initializing speech engine...
[2026-06-12 05:09:06,492.492 INFO    ] 2026-06-12 05:09:06
[2026-06-12 05:09:06,702.702 INFO    ] 2026-06-12 05:09:06
[2026-06-12 05:09:06,731.731 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 05:09:06,916.916 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 05:09:06,926.926 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 05:09:07,084.084 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 05:09:07,140.140 INFO    ] time= 12/06/2026 05:09:07
[2026-06-12 05:09:07,155.155 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 05:09:07,157.157 INFO    ] Checking for existing commands in stream...
[2026-06-12 05:09:07,224.224 INFO    ] No existing commands found in stream
[2026-06-12 05:09:12,239.239 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 05:09:12,242.242 INFO    ] Waiting 2.38 seconds before fallback handling...
[2026-06-12 05:09:15,016.016 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 05:09:15,017.017 INFO    ] Checking for system updates...
[2026-06-12 05:09:15,038.038 INFO    ] 200
[2026-06-12 05:09:15,040.040 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:09:15,071.071 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 05:09:15,072.072 INFO    ] No update needed
[2026-06-12 05:09:15,074.074 INFO    ] Checking for camera pi updates...
[2026-06-12 05:09:15,094.094 INFO    ] 200
[2026-06-12 05:09:15,095.095 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:09:15,118.118 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 05:09:15,163.163 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 05:09:15,164.164 INFO    ] No camera update needed
[2026-06-12 05:09:15,165.165 INFO    ] Script finished. Safe exiting...
[2026-06-12 05:09:15,167.167 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 05:09:15,170.170 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 05:09:15,173.173 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 05:09:17,206.206 INFO    ] ================================================
[2026-06-12 05:09:17,221.221 INFO    ] Launching Daemon at Fri Jun 12 05:09:17 IST 2026
[2026-06-12 05:09:17,232.232 INFO    ] ================================================
[2026-06-12 05:09:17,574.574 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 05:09:17
[2026-06-12 05:09:17,885.885 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 05:09:18,014.014 INFO    ] Initializing speech engine...
[2026-06-12 05:09:18,019.019 INFO    ] 2026-06-12 05:09:18
[2026-06-12 05:09:18,236.236 INFO    ] 2026-06-12 05:09:18
[2026-06-12 05:09:18,266.266 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 05:09:18,450.450 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 05:09:18,453.453 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 05:09:18,601.601 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 05:09:18,658.658 INFO    ] time= 12/06/2026 05:09:18
[2026-06-12 05:09:18,682.682 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 05:09:18,688.688 INFO    ] Checking for existing commands in stream...
[2026-06-12 05:09:18,754.754 INFO    ] No existing commands found in stream
[2026-06-12 05:09:23,763.763 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 05:09:23,766.766 INFO    ] Waiting 0.71 seconds before fallback handling...
[2026-06-12 05:09:24,822.822 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 05:09:24,823.823 INFO    ] Checking for system updates...
[2026-06-12 05:09:24,844.844 INFO    ] 200
[2026-06-12 05:09:24,845.845 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:09:24,875.875 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 05:09:24,877.877 INFO    ] No update needed
[2026-06-12 05:09:24,878.878 INFO    ] Checking for camera pi updates...
[2026-06-12 05:09:24,899.899 INFO    ] 200
[2026-06-12 05:09:24,901.901 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:09:24,926.926 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 05:09:25,068.068 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 05:09:25,069.069 INFO    ] No camera update needed
[2026-06-12 05:09:25,071.071 INFO    ] Script finished. Safe exiting...
[2026-06-12 05:09:25,072.072 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 05:09:25,075.075 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 05:09:25,077.077 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 05:09:27,118.118 INFO    ] ================================================
[2026-06-12 05:09:27,135.135 INFO    ] Launching Daemon at Fri Jun 12 05:09:27 IST 2026
[2026-06-12 05:09:27,146.146 INFO    ] ================================================
[2026-06-12 05:09:27,524.524 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 05:09:27
[2026-06-12 05:09:27,867.867 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 05:09:28,025.025 INFO    ] Initializing speech engine...
[2026-06-12 05:09:28,030.030 INFO    ] 2026-06-12 05:09:28
[2026-06-12 05:09:28,238.238 INFO    ] 2026-06-12 05:09:28
[2026-06-12 05:09:28,267.267 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 05:09:28,453.453 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 05:09:28,463.463 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 05:09:28,661.661 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 05:09:28,685.685 INFO    ] time= 12/06/2026 05:09:28
[2026-06-12 05:09:28,691.691 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 05:09:28,693.693 INFO    ] Checking for existing commands in stream...
[2026-06-12 05:09:28,785.785 INFO    ] No existing commands found in stream
[2026-06-12 05:09:33,804.804 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 05:09:33,807.807 INFO    ] Waiting 2.33 seconds before fallback handling...
[2026-06-12 05:09:36,563.563 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 05:09:36,564.564 INFO    ] Checking for system updates...
[2026-06-12 05:09:36,586.586 INFO    ] 200
[2026-06-12 05:09:36,587.587 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:09:36,618.618 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 05:09:36,619.619 INFO    ] No update needed
[2026-06-12 05:09:36,621.621 INFO    ] Checking for camera pi updates...
[2026-06-12 05:09:36,641.641 INFO    ] 200
[2026-06-12 05:09:36,643.643 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:09:36,666.666 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 05:09:36,705.705 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 05:09:36,706.706 INFO    ] No camera update needed
[2026-06-12 05:09:36,708.708 INFO    ] Script finished. Safe exiting...
[2026-06-12 05:09:36,709.709 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 05:09:36,713.713 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 05:09:36,716.716 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 05:09:38,755.755 INFO    ] ================================================
[2026-06-12 05:09:38,771.771 INFO    ] Launching Daemon at Fri Jun 12 05:09:38 IST 2026
[2026-06-12 05:09:38,782.782 INFO    ] ================================================
[2026-06-12 05:09:39,131.131 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 05:09:39
[2026-06-12 05:09:39,444.444 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 05:09:39,591.591 INFO    ] Initializing speech engine...
[2026-06-12 05:09:39,596.596 INFO    ] 2026-06-12 05:09:39
[2026-06-12 05:09:39,802.802 INFO    ] 2026-06-12 05:09:39
[2026-06-12 05:09:39,831.831 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 05:09:40,017.017 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 05:09:40,026.026 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 05:09:40,150.150 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 05:09:40,201.201 INFO    ] time= 12/06/2026 05:09:40
[2026-06-12 05:09:40,241.241 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 05:09:40,252.252 INFO    ] Checking for existing commands in stream...
[2026-06-12 05:09:40,324.324 INFO    ] No existing commands found in stream
[2026-06-12 05:09:45,338.338 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 05:09:45,341.341 INFO    ] Waiting 1.68 seconds before fallback handling...
[2026-06-12 05:09:47,402.402 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 05:09:47,403.403 INFO    ] Checking for system updates...
[2026-06-12 05:09:47,424.424 INFO    ] 200
[2026-06-12 05:09:47,425.425 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:09:47,456.456 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 05:09:47,457.457 INFO    ] No update needed
[2026-06-12 05:09:47,458.458 INFO    ] Checking for camera pi updates...
[2026-06-12 05:09:47,477.477 INFO    ] 200
[2026-06-12 05:09:47,479.479 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:09:47,502.502 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 05:09:47,538.538 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 05:09:47,539.539 INFO    ] No camera update needed
[2026-06-12 05:09:47,541.541 INFO    ] Script finished. Safe exiting...
[2026-06-12 05:09:47,542.542 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 05:09:47,545.545 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 05:09:47,548.548 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 05:09:49,587.587 INFO    ] ================================================
[2026-06-12 05:09:49,602.602 INFO    ] Launching Daemon at Fri Jun 12 05:09:49 IST 2026
[2026-06-12 05:09:49,613.613 INFO    ] ================================================
[2026-06-12 05:09:49,961.961 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 05:09:49
[2026-06-12 05:09:50,279.279 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 05:09:50,417.417 INFO    ] Initializing speech engine...
[2026-06-12 05:09:50,427.427 INFO    ] 2026-06-12 05:09:50
[2026-06-12 05:09:50,631.631 INFO    ] 2026-06-12 05:09:50
[2026-06-12 05:09:50,661.661 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 05:09:50,844.844 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 05:09:50,853.853 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 05:09:51,034.034 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 05:09:51,071.071 INFO    ] time= 12/06/2026 05:09:51
[2026-06-12 05:09:51,073.073 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 05:09:51,079.079 INFO    ] Checking for existing commands in stream...
[2026-06-12 05:09:51,146.146 INFO    ] No existing commands found in stream
[2026-06-12 05:09:56,178.178 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 05:09:56,181.181 INFO    ] Waiting 3.00 seconds before fallback handling...
[2026-06-12 05:10:00,071.071 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 05:10:00,073.073 INFO    ] Checking for system updates...
[2026-06-12 05:10:00,114.114 INFO    ] 200
[2026-06-12 05:10:00,116.116 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:10:00,170.170 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 05:10:00,172.172 INFO    ] No update needed
[2026-06-12 05:10:00,175.175 INFO    ] Checking for camera pi updates...
[2026-06-12 05:10:00,213.213 INFO    ] 200
[2026-06-12 05:10:00,216.216 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:10:00,263.263 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 05:10:00,316.316 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 05:10:00,319.319 INFO    ] No camera update needed
[2026-06-12 05:10:00,321.321 INFO    ] Script finished. Safe exiting...
[2026-06-12 05:10:00,323.323 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 05:10:00,329.329 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 05:10:00,334.334 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 05:10:02,368.368 INFO    ] ================================================
[2026-06-12 05:10:02,377.377 INFO    ] Launching Daemon at Fri Jun 12 05:10:02 IST 2026
[2026-06-12 05:10:02,384.384 INFO    ] ================================================
[2026-06-12 05:10:02,692.692 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 05:10:02
[2026-06-12 05:10:03,006.006 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 05:10:03,136.136 INFO    ] Initializing speech engine...
[2026-06-12 05:10:03,141.141 INFO    ] 2026-06-12 05:10:03
[2026-06-12 05:10:03,357.357 INFO    ] 2026-06-12 05:10:03
[2026-06-12 05:10:03,386.386 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 05:10:03,573.573 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 05:10:03,576.576 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 05:10:03,734.734 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 05:10:03,783.783 INFO    ] time= 12/06/2026 05:10:03
[2026-06-12 05:10:03,805.805 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 05:10:03,811.811 INFO    ] Checking for existing commands in stream...
[2026-06-12 05:10:03,902.902 INFO    ] No existing commands found in stream
[2026-06-12 05:10:08,911.911 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 05:10:08,914.914 INFO    ] Waiting 3.75 seconds before fallback handling...
[2026-06-12 05:10:13,021.021 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 05:10:13,023.023 INFO    ] Checking for system updates...
[2026-06-12 05:10:13,043.043 INFO    ] 200
[2026-06-12 05:10:13,045.045 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:10:13,079.079 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 05:10:13,081.081 INFO    ] No update needed
[2026-06-12 05:10:13,083.083 INFO    ] Checking for camera pi updates...
[2026-06-12 05:10:13,106.106 INFO    ] 200
[2026-06-12 05:10:13,107.107 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:10:13,133.133 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 05:10:13,178.178 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 05:10:13,180.180 INFO    ] No camera update needed
[2026-06-12 05:10:13,181.181 INFO    ] Script finished. Safe exiting...
[2026-06-12 05:10:13,183.183 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 05:10:13,185.185 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 05:10:13,188.188 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 05:10:15,229.229 INFO    ] ================================================
[2026-06-12 05:10:15,244.244 INFO    ] Launching Daemon at Fri Jun 12 05:10:15 IST 2026
[2026-06-12 05:10:15,255.255 INFO    ] ================================================
[2026-06-12 05:10:15,623.623 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 05:10:15
[2026-06-12 05:10:15,963.963 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 05:10:16,102.102 INFO    ] Initializing speech engine...
[2026-06-12 05:10:16,116.116 INFO    ] 2026-06-12 05:10:16
[2026-06-12 05:10:16,329.329 INFO    ] 2026-06-12 05:10:16
[2026-06-12 05:10:16,358.358 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 05:10:16,541.541 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 05:10:16,551.551 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 05:10:16,692.692 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 05:10:16,751.751 INFO    ] time= 12/06/2026 05:10:16
[2026-06-12 05:10:16,773.773 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 05:10:16,779.779 INFO    ] Checking for existing commands in stream...
[2026-06-12 05:10:16,846.846 INFO    ] No existing commands found in stream
[2026-06-12 05:10:21,865.865 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 05:10:21,868.868 INFO    ] Waiting 1.05 seconds before fallback handling...
[2026-06-12 05:10:23,303.303 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 05:10:23,304.304 INFO    ] Checking for system updates...
[2026-06-12 05:10:23,326.326 INFO    ] 200
[2026-06-12 05:10:23,327.327 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:10:23,357.357 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 05:10:23,359.359 INFO    ] No update needed
[2026-06-12 05:10:23,360.360 INFO    ] Checking for camera pi updates...
[2026-06-12 05:10:23,381.381 INFO    ] 200
[2026-06-12 05:10:23,383.383 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:10:23,409.409 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 05:10:23,455.455 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 05:10:23,456.456 INFO    ] No camera update needed
[2026-06-12 05:10:23,458.458 INFO    ] Script finished. Safe exiting...
[2026-06-12 05:10:23,459.459 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 05:10:23,463.463 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 05:10:23,466.466 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 05:10:25,504.504 INFO    ] ================================================
[2026-06-12 05:10:25,519.519 INFO    ] Launching Daemon at Fri Jun 12 05:10:25 IST 2026
[2026-06-12 05:10:25,530.530 INFO    ] ================================================
[2026-06-12 05:10:25,892.892 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 05:10:25
[2026-06-12 05:10:26,206.206 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 05:10:26,337.337 INFO    ] Initializing speech engine...
[2026-06-12 05:10:26,342.342 INFO    ] 2026-06-12 05:10:26
[2026-06-12 05:10:26,562.562 INFO    ] 2026-06-12 05:10:26
[2026-06-12 05:10:26,591.591 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 05:10:26,776.776 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 05:10:26,780.780 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 05:10:26,911.911 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 05:10:26,977.977 INFO    ] time= 12/06/2026 05:10:26
[2026-06-12 05:10:27,010.010 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 05:10:27,017.017 INFO    ] Checking for existing commands in stream...
[2026-06-12 05:10:27,085.085 INFO    ] No existing commands found in stream
[2026-06-12 05:10:32,108.108 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 05:10:32,110.110 INFO    ] Waiting 0.43 seconds before fallback handling...
[2026-06-12 05:10:32,923.923 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 05:10:32,924.924 INFO    ] Checking for system updates...
[2026-06-12 05:10:32,947.947 INFO    ] 200
[2026-06-12 05:10:32,948.948 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:10:32,983.983 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 05:10:32,985.985 INFO    ] No update needed
[2026-06-12 05:10:32,986.986 INFO    ] Checking for camera pi updates...
[2026-06-12 05:10:33,010.010 INFO    ] 200
[2026-06-12 05:10:33,011.011 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:10:33,035.035 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 05:10:33,064.064 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 05:10:33,065.065 INFO    ] No camera update needed
[2026-06-12 05:10:33,067.067 INFO    ] Script finished. Safe exiting...
[2026-06-12 05:10:33,068.068 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 05:10:33,071.071 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 05:10:33,074.074 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 05:10:35,115.115 INFO    ] ================================================
[2026-06-12 05:10:35,130.130 INFO    ] Launching Daemon at Fri Jun 12 05:10:35 IST 2026
[2026-06-12 05:10:35,141.141 INFO    ] ================================================
[2026-06-12 05:10:35,483.483 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 05:10:35
[2026-06-12 05:10:35,796.796 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 05:10:35,928.928 INFO    ] Initializing speech engine...
[2026-06-12 05:10:35,940.940 INFO    ] 2026-06-12 05:10:35
[2026-06-12 05:10:36,148.148 INFO    ] 2026-06-12 05:10:36
[2026-06-12 05:10:36,177.177 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 05:10:36,359.359 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 05:10:36,363.363 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 05:10:36,508.508 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 05:10:36,564.564 INFO    ] time= 12/06/2026 05:10:36
[2026-06-12 05:10:36,588.588 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 05:10:36,594.594 INFO    ] Checking for existing commands in stream...
[2026-06-12 05:10:36,660.660 INFO    ] No existing commands found in stream
[2026-06-12 05:10:41,674.674 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 05:10:41,677.677 INFO    ] Waiting 0.13 seconds before fallback handling...
[2026-06-12 05:10:42,174.174 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 05:10:42,176.176 INFO    ] Checking for system updates...
[2026-06-12 05:10:42,197.197 INFO    ] 200
[2026-06-12 05:10:42,198.198 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:10:42,230.230 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 05:10:42,232.232 INFO    ] No update needed
[2026-06-12 05:10:42,233.233 INFO    ] Checking for camera pi updates...
[2026-06-12 05:10:42,252.252 INFO    ] 200
[2026-06-12 05:10:42,254.254 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:10:42,277.277 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 05:10:42,318.318 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 05:10:42,319.319 INFO    ] No camera update needed
[2026-06-12 05:10:42,321.321 INFO    ] Script finished. Safe exiting...
[2026-06-12 05:10:42,322.322 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 05:10:42,325.325 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 05:10:42,328.328 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 05:10:44,368.368 INFO    ] ================================================
[2026-06-12 05:10:44,383.383 INFO    ] Launching Daemon at Fri Jun 12 05:10:44 IST 2026
[2026-06-12 05:10:44,394.394 INFO    ] ================================================
[2026-06-12 05:10:44,775.775 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 05:10:44
[2026-06-12 05:10:45,116.116 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 05:10:45,266.266 INFO    ] Initializing speech engine...
[2026-06-12 05:10:45,272.272 INFO    ] 2026-06-12 05:10:45
[2026-06-12 05:10:45,479.479 INFO    ] 2026-06-12 05:10:45
[2026-06-12 05:10:45,508.508 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 05:10:45,694.694 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 05:10:45,704.704 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 05:10:45,900.900 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 05:10:45,924.924 INFO    ] time= 12/06/2026 05:10:45
[2026-06-12 05:10:45,930.930 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 05:10:45,932.932 INFO    ] Checking for existing commands in stream...
[2026-06-12 05:10:45,999.999 INFO    ] No existing commands found in stream
[2026-06-12 05:10:51,009.009 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 05:10:51,012.012 INFO    ] Waiting 1.25 seconds before fallback handling...
[2026-06-12 05:10:52,682.682 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 05:10:52,683.683 INFO    ] Checking for system updates...
[2026-06-12 05:10:52,706.706 INFO    ] 200
[2026-06-12 05:10:52,707.707 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:10:52,737.737 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 05:10:52,738.738 INFO    ] No update needed
[2026-06-12 05:10:52,740.740 INFO    ] Checking for camera pi updates...
[2026-06-12 05:10:52,759.759 INFO    ] 200
[2026-06-12 05:10:52,761.761 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:10:52,786.786 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 05:10:52,823.823 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 05:10:52,824.824 INFO    ] No camera update needed
[2026-06-12 05:10:52,825.825 INFO    ] Script finished. Safe exiting...
[2026-06-12 05:10:52,827.827 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 05:10:52,830.830 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 05:10:52,833.833 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 05:10:54,871.871 INFO    ] ================================================
[2026-06-12 05:10:54,886.886 INFO    ] Launching Daemon at Fri Jun 12 05:10:54 IST 2026
[2026-06-12 05:10:54,897.897 INFO    ] ================================================
[2026-06-12 05:10:55,229.229 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 05:10:55
[2026-06-12 05:10:55,547.547 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 05:10:55,692.692 INFO    ] Initializing speech engine...
[2026-06-12 05:10:55,697.697 INFO    ] 2026-06-12 05:10:55
[2026-06-12 05:10:55,901.901 INFO    ] 2026-06-12 05:10:55
[2026-06-12 05:10:55,930.930 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 05:10:56,116.116 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 05:10:56,126.126 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 05:10:56,254.254 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 05:10:56,322.322 INFO    ] time= 12/06/2026 05:10:56
[2026-06-12 05:10:56,347.347 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 05:10:56,352.352 INFO    ] Checking for existing commands in stream...
[2026-06-12 05:10:56,420.420 INFO    ] No existing commands found in stream
[2026-06-12 05:11:01,429.429 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 05:11:01,432.432 INFO    ] Waiting 2.25 seconds before fallback handling...
[2026-06-12 05:11:04,074.074 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 05:11:04,075.075 INFO    ] Checking for system updates...
[2026-06-12 05:11:04,096.096 INFO    ] 200
[2026-06-12 05:11:04,098.098 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:11:04,129.129 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 05:11:04,130.130 INFO    ] No update needed
[2026-06-12 05:11:04,132.132 INFO    ] Checking for camera pi updates...
[2026-06-12 05:11:04,152.152 INFO    ] 200
[2026-06-12 05:11:04,153.153 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:11:04,177.177 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 05:11:04,223.223 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 05:11:04,224.224 INFO    ] No camera update needed
[2026-06-12 05:11:04,226.226 INFO    ] Script finished. Safe exiting...
[2026-06-12 05:11:04,227.227 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 05:11:04,231.231 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 05:11:04,234.234 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 05:11:06,282.282 INFO    ] ================================================
[2026-06-12 05:11:06,296.296 INFO    ] Launching Daemon at Fri Jun 12 05:11:06 IST 2026
[2026-06-12 05:11:06,307.307 INFO    ] ================================================
[2026-06-12 05:11:06,638.638 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 05:11:06
[2026-06-12 05:11:06,948.948 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 05:11:07,090.090 INFO    ] Initializing speech engine...
[2026-06-12 05:11:07,095.095 INFO    ] 2026-06-12 05:11:07
[2026-06-12 05:11:07,301.301 INFO    ] 2026-06-12 05:11:07
[2026-06-12 05:11:07,329.329 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 05:11:07,516.516 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 05:11:07,525.525 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 05:11:07,676.676 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 05:11:07,726.726 INFO    ] time= 12/06/2026 05:11:07
[2026-06-12 05:11:07,748.748 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 05:11:07,754.754 INFO    ] Checking for existing commands in stream...
[2026-06-12 05:11:07,822.822 INFO    ] No existing commands found in stream
[2026-06-12 05:11:12,830.830 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 05:11:12,833.833 INFO    ] Waiting 2.58 seconds before fallback handling...
[2026-06-12 05:11:15,790.790 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 05:11:15,792.792 INFO    ] Checking for system updates...
[2026-06-12 05:11:15,813.813 INFO    ] 200
[2026-06-12 05:11:15,814.814 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:11:15,845.845 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 05:11:15,847.847 INFO    ] No update needed
[2026-06-12 05:11:15,848.848 INFO    ] Checking for camera pi updates...
[2026-06-12 05:11:15,868.868 INFO    ] 200
[2026-06-12 05:11:15,870.870 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:11:15,894.894 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 05:11:15,935.935 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 05:11:15,937.937 INFO    ] No camera update needed
[2026-06-12 05:11:15,938.938 INFO    ] Script finished. Safe exiting...
[2026-06-12 05:11:15,940.940 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 05:11:15,943.943 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 05:11:15,946.946 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 05:11:17,984.984 INFO    ] ================================================
[2026-06-12 05:11:18,999.999 INFO    ] Launching Daemon at Fri Jun 12 05:11:17 IST 2026
[2026-06-12 05:11:18,010.010 INFO    ] ================================================
[2026-06-12 05:11:18,377.377 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 05:11:18
[2026-06-12 05:11:18,693.693 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 05:11:18,825.825 INFO    ] Initializing speech engine...
[2026-06-12 05:11:18,833.833 INFO    ] 2026-06-12 05:11:18
[2026-06-12 05:11:19,047.047 INFO    ] 2026-06-12 05:11:19
[2026-06-12 05:11:19,076.076 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 05:11:19,261.261 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 05:11:19,270.270 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 05:11:19,411.411 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 05:11:19,469.469 INFO    ] time= 12/06/2026 05:11:19
[2026-06-12 05:11:19,493.493 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 05:11:19,499.499 INFO    ] Checking for existing commands in stream...
[2026-06-12 05:11:19,567.567 INFO    ] No existing commands found in stream
[2026-06-12 05:11:24,586.586 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 05:11:24,588.588 INFO    ] Waiting 2.78 seconds before fallback handling...
[2026-06-12 05:11:27,749.749 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 05:11:27,750.750 INFO    ] Checking for system updates...
[2026-06-12 05:11:27,771.771 INFO    ] 200
[2026-06-12 05:11:27,772.772 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:11:27,802.802 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 05:11:27,804.804 INFO    ] No update needed
[2026-06-12 05:11:27,805.805 INFO    ] Checking for camera pi updates...
[2026-06-12 05:11:27,826.826 INFO    ] 200
[2026-06-12 05:11:27,827.827 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:11:27,850.850 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 05:11:27,994.994 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 05:11:27,996.996 INFO    ] No camera update needed
[2026-06-12 05:11:27,997.997 INFO    ] Script finished. Safe exiting...
[2026-06-12 05:11:27,998.998 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 05:11:28,001.001 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 05:11:28,004.004 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 05:11:30,042.042 INFO    ] ================================================
[2026-06-12 05:11:30,058.058 INFO    ] Launching Daemon at Fri Jun 12 05:11:30 IST 2026
[2026-06-12 05:11:30,068.068 INFO    ] ================================================
[2026-06-12 05:11:30,405.405 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 05:11:30
[2026-06-12 05:11:30,719.719 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 05:11:30,850.850 INFO    ] Initializing speech engine...
[2026-06-12 05:11:30,858.858 INFO    ] 2026-06-12 05:11:30
[2026-06-12 05:11:31,071.071 INFO    ] 2026-06-12 05:11:31
[2026-06-12 05:11:31,101.101 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 05:11:31,287.287 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 05:11:31,295.295 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 05:11:31,426.426 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 05:11:31,494.494 INFO    ] time= 12/06/2026 05:11:31
[2026-06-12 05:11:31,519.519 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 05:11:31,525.525 INFO    ] Checking for existing commands in stream...
[2026-06-12 05:11:31,617.617 INFO    ] No existing commands found in stream
[2026-06-12 05:11:36,631.631 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 05:11:36,634.634 INFO    ] Waiting 1.39 seconds before fallback handling...
[2026-06-12 05:11:38,422.422 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 05:11:38,424.424 INFO    ] Checking for system updates...
[2026-06-12 05:11:38,444.444 INFO    ] 200
[2026-06-12 05:11:38,446.446 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:11:38,477.477 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 05:11:38,479.479 INFO    ] No update needed
[2026-06-12 05:11:38,480.480 INFO    ] Checking for camera pi updates...
[2026-06-12 05:11:38,499.499 INFO    ] 200
[2026-06-12 05:11:38,501.501 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:11:38,524.524 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 05:11:38,564.564 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 05:11:38,565.565 INFO    ] No camera update needed
[2026-06-12 05:11:38,567.567 INFO    ] Script finished. Safe exiting...
[2026-06-12 05:11:38,568.568 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 05:11:38,571.571 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 05:11:38,574.574 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 05:11:40,613.613 INFO    ] ================================================
[2026-06-12 05:11:40,629.629 INFO    ] Launching Daemon at Fri Jun 12 05:11:40 IST 2026
[2026-06-12 05:11:40,639.639 INFO    ] ================================================
[2026-06-12 05:11:40,966.966 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 05:11:40
[2026-06-12 05:11:41,278.278 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 05:11:41,425.425 INFO    ] Initializing speech engine...
[2026-06-12 05:11:41,429.429 INFO    ] 2026-06-12 05:11:41
[2026-06-12 05:11:41,629.629 INFO    ] 2026-06-12 05:11:41
[2026-06-12 05:11:41,658.658 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 05:11:41,842.842 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 05:11:41,851.851 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 05:11:41,999.999 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 05:11:42,048.048 INFO    ] time= 12/06/2026 05:11:42
[2026-06-12 05:11:42,070.070 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 05:11:42,076.076 INFO    ] Checking for existing commands in stream...
[2026-06-12 05:11:42,144.144 INFO    ] No existing commands found in stream
[2026-06-12 05:11:47,158.158 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 05:11:47,160.160 INFO    ] Waiting 2.05 seconds before fallback handling...
[2026-06-12 05:11:49,601.601 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 05:11:49,602.602 INFO    ] Checking for system updates...
[2026-06-12 05:11:49,623.623 INFO    ] 200
[2026-06-12 05:11:49,625.625 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:11:49,655.655 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 05:11:49,657.657 INFO    ] No update needed
[2026-06-12 05:11:49,658.658 INFO    ] Checking for camera pi updates...
[2026-06-12 05:11:49,677.677 INFO    ] 200
[2026-06-12 05:11:49,679.679 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:11:49,702.702 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 05:11:49,746.746 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 05:11:49,747.747 INFO    ] No camera update needed
[2026-06-12 05:11:49,749.749 INFO    ] Script finished. Safe exiting...
[2026-06-12 05:11:49,750.750 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 05:11:49,754.754 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 05:11:49,757.757 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 05:11:51,798.798 INFO    ] ================================================
[2026-06-12 05:11:51,813.813 INFO    ] Launching Daemon at Fri Jun 12 05:11:51 IST 2026
[2026-06-12 05:11:51,824.824 INFO    ] ================================================
[2026-06-12 05:11:52,167.167 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 05:11:52
[2026-06-12 05:11:52,505.505 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 05:11:52,659.659 INFO    ] Initializing speech engine...
[2026-06-12 05:11:52,663.663 INFO    ] 2026-06-12 05:11:52
[2026-06-12 05:11:52,873.873 INFO    ] 2026-06-12 05:11:52
[2026-06-12 05:11:52,903.903 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 05:11:53,091.091 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 05:11:53,101.101 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 05:11:53,239.239 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 05:11:53,303.303 INFO    ] time= 12/06/2026 05:11:53
[2026-06-12 05:11:53,327.327 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 05:11:53,334.334 INFO    ] Checking for existing commands in stream...
[2026-06-12 05:11:53,402.402 INFO    ] No existing commands found in stream
[2026-06-12 05:11:58,435.435 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 05:11:58,439.439 INFO    ] Waiting 1.62 seconds before fallback handling...
[2026-06-12 05:12:00,497.497 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 05:12:00,498.498 INFO    ] Checking for system updates...
[2026-06-12 05:12:00,521.521 INFO    ] 200
[2026-06-12 05:12:00,522.522 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:12:00,555.555 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 05:12:00,556.556 INFO    ] No update needed
[2026-06-12 05:12:00,558.558 INFO    ] Checking for camera pi updates...
[2026-06-12 05:12:00,578.578 INFO    ] 200
[2026-06-12 05:12:00,580.580 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:12:00,605.605 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 05:12:00,643.643 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 05:12:00,645.645 INFO    ] No camera update needed
[2026-06-12 05:12:00,646.646 INFO    ] Script finished. Safe exiting...
[2026-06-12 05:12:00,647.647 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 05:12:00,651.651 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 05:12:00,654.654 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 05:12:02,689.689 INFO    ] ================================================
[2026-06-12 05:12:02,704.704 INFO    ] Launching Daemon at Fri Jun 12 05:12:02 IST 2026
[2026-06-12 05:12:02,712.712 INFO    ] ================================================
[2026-06-12 05:12:03,058.058 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 05:12:03
[2026-06-12 05:12:03,393.393 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 05:12:03,535.535 INFO    ] Initializing speech engine...
[2026-06-12 05:12:03,548.548 INFO    ] 2026-06-12 05:12:03
[2026-06-12 05:12:03,760.760 INFO    ] 2026-06-12 05:12:03
[2026-06-12 05:12:03,790.790 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 05:12:03,975.975 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 05:12:03,979.979 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 05:12:04,168.168 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 05:12:04,207.207 INFO    ] time= 12/06/2026 05:12:04
[2026-06-12 05:12:04,214.214 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 05:12:04,216.216 INFO    ] Checking for existing commands in stream...
[2026-06-12 05:12:04,283.283 INFO    ] No existing commands found in stream
[2026-06-12 05:12:09,298.298 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 05:12:09,301.301 INFO    ] Waiting 1.43 seconds before fallback handling...
[2026-06-12 05:12:11,152.152 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 05:12:11,153.153 INFO    ] Checking for system updates...
[2026-06-12 05:12:11,174.174 INFO    ] 200
[2026-06-12 05:12:11,176.176 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:12:11,208.208 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 05:12:11,210.210 INFO    ] No update needed
[2026-06-12 05:12:11,211.211 INFO    ] Checking for camera pi updates...
[2026-06-12 05:12:11,231.231 INFO    ] 200
[2026-06-12 05:12:11,233.233 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:12:11,256.256 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 05:12:11,302.302 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 05:12:11,304.304 INFO    ] No camera update needed
[2026-06-12 05:12:11,305.305 INFO    ] Script finished. Safe exiting...
[2026-06-12 05:12:11,306.306 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 05:12:11,310.310 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 05:12:11,313.313 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 05:12:13,352.352 INFO    ] ================================================
[2026-06-12 05:12:13,367.367 INFO    ] Launching Daemon at Fri Jun 12 05:12:13 IST 2026
[2026-06-12 05:12:13,378.378 INFO    ] ================================================
[2026-06-12 05:12:13,748.748 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 05:12:13
[2026-06-12 05:12:14,059.059 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 05:12:14,192.192 INFO    ] Initializing speech engine...
[2026-06-12 05:12:14,197.197 INFO    ] 2026-06-12 05:12:14
[2026-06-12 05:12:14,424.424 INFO    ] 2026-06-12 05:12:14
[2026-06-12 05:12:14,455.455 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 05:12:14,654.654 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 05:12:14,662.662 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 05:12:14,803.803 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 05:12:14,867.867 INFO    ] time= 12/06/2026 05:12:14
[2026-06-12 05:12:14,891.891 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 05:12:14,902.902 INFO    ] Checking for existing commands in stream...
[2026-06-12 05:12:14,978.978 INFO    ] No existing commands found in stream
[2026-06-12 05:12:19,982.982 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 05:12:19,985.985 INFO    ] Waiting 1.72 seconds before fallback handling...
[2026-06-12 05:12:22,079.079 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 05:12:22,081.081 INFO    ] Checking for system updates...
[2026-06-12 05:12:22,101.101 INFO    ] 200
[2026-06-12 05:12:22,103.103 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:12:22,135.135 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 05:12:22,136.136 INFO    ] No update needed
[2026-06-12 05:12:22,138.138 INFO    ] Checking for camera pi updates...
[2026-06-12 05:12:22,157.157 INFO    ] 200
[2026-06-12 05:12:22,158.158 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:12:22,182.182 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 05:12:22,227.227 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 05:12:22,229.229 INFO    ] No camera update needed
[2026-06-12 05:12:22,230.230 INFO    ] Script finished. Safe exiting...
[2026-06-12 05:12:22,231.231 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 05:12:22,234.234 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 05:12:22,237.237 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 05:12:24,275.275 INFO    ] ================================================
[2026-06-12 05:12:24,291.291 INFO    ] Launching Daemon at Fri Jun 12 05:12:24 IST 2026
[2026-06-12 05:12:24,301.301 INFO    ] ================================================
[2026-06-12 05:12:24,642.642 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 05:12:24
[2026-06-12 05:12:24,956.956 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 05:12:25,086.086 INFO    ] Initializing speech engine...
[2026-06-12 05:12:25,094.094 INFO    ] 2026-06-12 05:12:25
[2026-06-12 05:12:25,306.306 INFO    ] 2026-06-12 05:12:25
[2026-06-12 05:12:25,334.334 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 05:12:25,518.518 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 05:12:25,521.521 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 05:12:25,703.703 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 05:12:25,743.743 INFO    ] time= 12/06/2026 05:12:25
[2026-06-12 05:12:25,748.748 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 05:12:25,754.754 INFO    ] Checking for existing commands in stream...
[2026-06-12 05:12:25,845.845 INFO    ] No existing commands found in stream
[2026-06-12 05:12:30,859.859 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 05:12:30,862.862 INFO    ] Waiting 1.90 seconds before fallback handling...
[2026-06-12 05:12:33,105.105 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 05:12:33,108.108 INFO    ] Checking for system updates...
[2026-06-12 05:12:33,148.148 INFO    ] 200
[2026-06-12 05:12:33,150.150 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:12:33,203.203 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 05:12:33,205.205 INFO    ] No update needed
[2026-06-12 05:12:33,208.208 INFO    ] Checking for camera pi updates...
[2026-06-12 05:12:33,242.242 INFO    ] 200
[2026-06-12 05:12:33,244.244 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:12:33,285.285 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 05:12:33,325.325 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 05:12:33,328.328 INFO    ] No camera update needed
[2026-06-12 05:12:33,330.330 INFO    ] Script finished. Safe exiting...
[2026-06-12 05:12:33,332.332 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 05:12:33,338.338 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 05:12:33,343.343 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 05:12:35,382.382 INFO    ] ================================================
[2026-06-12 05:12:35,398.398 INFO    ] Launching Daemon at Fri Jun 12 05:12:35 IST 2026
[2026-06-12 05:12:35,408.408 INFO    ] ================================================
[2026-06-12 05:12:35,771.771 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 05:12:35
[2026-06-12 05:12:36,105.105 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 05:12:36,254.254 INFO    ] Initializing speech engine...
[2026-06-12 05:12:36,261.261 INFO    ] 2026-06-12 05:12:36
[2026-06-12 05:12:36,468.468 INFO    ] 2026-06-12 05:12:36
[2026-06-12 05:12:36,498.498 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 05:12:36,681.681 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 05:12:36,684.684 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 05:12:36,835.835 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 05:12:36,888.888 INFO    ] time= 12/06/2026 05:12:36
[2026-06-12 05:12:36,911.911 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 05:12:36,917.917 INFO    ] Checking for existing commands in stream...
[2026-06-12 05:12:36,984.984 INFO    ] No existing commands found in stream
[2026-06-12 05:12:42,008.008 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 05:12:42,011.011 INFO    ] Waiting 0.25 seconds before fallback handling...
[2026-06-12 05:12:42,608.608 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 05:12:42,610.610 INFO    ] Checking for system updates...
[2026-06-12 05:12:42,631.631 INFO    ] 200
[2026-06-12 05:12:42,632.632 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:12:42,667.667 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 05:12:42,668.668 INFO    ] No update needed
[2026-06-12 05:12:42,669.669 INFO    ] Checking for camera pi updates...
[2026-06-12 05:12:42,690.690 INFO    ] 200
[2026-06-12 05:12:42,691.691 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:12:42,718.718 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 05:12:42,764.764 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 05:12:42,765.765 INFO    ] No camera update needed
[2026-06-12 05:12:42,766.766 INFO    ] Script finished. Safe exiting...
[2026-06-12 05:12:42,767.767 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 05:12:42,770.770 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 05:12:42,773.773 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 05:12:44,812.812 INFO    ] ================================================
[2026-06-12 05:12:44,827.827 INFO    ] Launching Daemon at Fri Jun 12 05:12:44 IST 2026
[2026-06-12 05:12:44,838.838 INFO    ] ================================================
[2026-06-12 05:12:45,208.208 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 05:12:45
[2026-06-12 05:12:45,541.541 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 05:12:45,682.682 INFO    ] Initializing speech engine...
[2026-06-12 05:12:45,694.694 INFO    ] 2026-06-12 05:12:45
[2026-06-12 05:12:45,908.908 INFO    ] 2026-06-12 05:12:45
[2026-06-12 05:12:45,938.938 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 05:12:46,120.120 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 05:12:46,130.130 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 05:12:46,259.259 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 05:12:46,323.323 INFO    ] time= 12/06/2026 05:12:46
[2026-06-12 05:12:46,350.350 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 05:12:46,352.352 INFO    ] Checking for existing commands in stream...
[2026-06-12 05:12:46,424.424 INFO    ] No existing commands found in stream
[2026-06-12 05:12:51,438.438 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 05:12:51,441.441 INFO    ] Waiting 2.47 seconds before fallback handling...
[2026-06-12 05:12:54,290.290 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 05:12:54,291.291 INFO    ] Checking for system updates...
[2026-06-12 05:12:54,316.316 INFO    ] 200
[2026-06-12 05:12:54,318.318 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:12:54,350.350 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 05:12:54,352.352 INFO    ] No update needed
[2026-06-12 05:12:54,353.353 INFO    ] Checking for camera pi updates...
[2026-06-12 05:12:54,372.372 INFO    ] 200
[2026-06-12 05:12:54,374.374 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:12:54,397.397 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 05:12:54,436.436 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 05:12:54,438.438 INFO    ] No camera update needed
[2026-06-12 05:12:54,439.439 INFO    ] Script finished. Safe exiting...
[2026-06-12 05:12:54,440.440 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 05:12:54,443.443 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 05:12:54,446.446 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 05:12:56,484.484 INFO    ] ================================================
[2026-06-12 05:12:56,499.499 INFO    ] Launching Daemon at Fri Jun 12 05:12:56 IST 2026
[2026-06-12 05:12:56,509.509 INFO    ] ================================================
[2026-06-12 05:12:56,861.861 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 05:12:56
[2026-06-12 05:12:57,174.174 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 05:12:57,304.304 INFO    ] Initializing speech engine...
[2026-06-12 05:12:57,311.311 INFO    ] 2026-06-12 05:12:57
[2026-06-12 05:12:57,523.523 INFO    ] 2026-06-12 05:12:57
[2026-06-12 05:12:57,553.553 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 05:12:57,736.736 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 05:12:57,740.740 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 05:12:57,868.868 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 05:12:57,924.924 INFO    ] time= 12/06/2026 05:12:57
[2026-06-12 05:12:57,963.963 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 05:12:57,968.968 INFO    ] Checking for existing commands in stream...
[2026-06-12 05:12:58,040.040 INFO    ] No existing commands found in stream
[2026-06-12 05:13:03,054.054 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 05:13:03,056.056 INFO    ] Waiting 2.48 seconds before fallback handling...
[2026-06-12 05:13:05,909.909 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 05:13:05,910.910 INFO    ] Checking for system updates...
[2026-06-12 05:13:05,931.931 INFO    ] 200
[2026-06-12 05:13:05,932.932 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:13:05,963.963 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 05:13:05,964.964 INFO    ] No update needed
[2026-06-12 05:13:05,966.966 INFO    ] Checking for camera pi updates...
[2026-06-12 05:13:05,986.986 INFO    ] 200
[2026-06-12 05:13:05,987.987 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:13:06,011.011 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 05:13:06,048.048 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 05:13:06,050.050 INFO    ] No camera update needed
[2026-06-12 05:13:06,051.051 INFO    ] Script finished. Safe exiting...
[2026-06-12 05:13:06,052.052 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 05:13:06,055.055 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 05:13:06,058.058 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 05:13:08,100.100 INFO    ] ================================================
[2026-06-12 05:13:08,115.115 INFO    ] Launching Daemon at Fri Jun 12 05:13:08 IST 2026
[2026-06-12 05:13:08,126.126 INFO    ] ================================================
[2026-06-12 05:13:08,488.488 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 05:13:08
[2026-06-12 05:13:08,823.823 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 05:13:08,961.961 INFO    ] Initializing speech engine...
[2026-06-12 05:13:08,974.974 INFO    ] 2026-06-12 05:13:08
[2026-06-12 05:13:09,183.183 INFO    ] 2026-06-12 05:13:09
[2026-06-12 05:13:09,211.211 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 05:13:09,405.405 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 05:13:09,420.420 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 05:13:09,598.598 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 05:13:09,622.622 INFO    ] time= 12/06/2026 05:13:09
[2026-06-12 05:13:09,628.628 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 05:13:09,630.630 INFO    ] Checking for existing commands in stream...
[2026-06-12 05:13:09,697.697 INFO    ] No existing commands found in stream
[2026-06-12 05:13:14,711.711 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 05:13:14,715.715 INFO    ] Waiting 1.84 seconds before fallback handling...
[2026-06-12 05:13:16,938.938 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 05:13:16,940.940 INFO    ] Checking for system updates...
[2026-06-12 05:13:16,963.963 INFO    ] 200
[2026-06-12 05:13:16,965.965 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:13:16,997.997 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 05:13:16,998.998 INFO    ] No update needed
[2026-06-12 05:13:16,999.999 INFO    ] Checking for camera pi updates...
[2026-06-12 05:13:17,021.021 INFO    ] 200
[2026-06-12 05:13:17,022.022 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:13:17,048.048 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 05:13:17,082.082 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 05:13:17,084.084 INFO    ] No camera update needed
[2026-06-12 05:13:17,085.085 INFO    ] Script finished. Safe exiting...
[2026-06-12 05:13:17,087.087 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 05:13:17,090.090 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 05:13:17,093.093 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 05:13:19,135.135 INFO    ] ================================================
[2026-06-12 05:13:19,150.150 INFO    ] Launching Daemon at Fri Jun 12 05:13:19 IST 2026
[2026-06-12 05:13:19,160.160 INFO    ] ================================================
[2026-06-12 05:13:19,488.488 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 05:13:19
[2026-06-12 05:13:19,800.800 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 05:13:19,929.929 INFO    ] Initializing speech engine...
[2026-06-12 05:13:19,933.933 INFO    ] 2026-06-12 05:13:19
[2026-06-12 05:13:20,150.150 INFO    ] 2026-06-12 05:13:20
[2026-06-12 05:13:20,177.177 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 05:13:20,359.359 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 05:13:20,363.363 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 05:13:20,509.509 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 05:13:20,565.565 INFO    ] time= 12/06/2026 05:13:20
[2026-06-12 05:13:20,589.589 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 05:13:20,595.595 INFO    ] Checking for existing commands in stream...
[2026-06-12 05:13:20,662.662 INFO    ] No existing commands found in stream
[2026-06-12 05:13:25,676.676 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 05:13:25,679.679 INFO    ] Waiting 1.48 seconds before fallback handling...
[2026-06-12 05:13:27,528.528 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 05:13:27,530.530 INFO    ] Checking for system updates...
[2026-06-12 05:13:27,551.551 INFO    ] 200
[2026-06-12 05:13:27,552.552 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:13:27,582.582 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 05:13:27,583.583 INFO    ] No update needed
[2026-06-12 05:13:27,585.585 INFO    ] Checking for camera pi updates...
[2026-06-12 05:13:27,605.605 INFO    ] 200
[2026-06-12 05:13:27,607.607 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:13:27,630.630 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 05:13:27,669.669 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 05:13:27,670.670 INFO    ] No camera update needed
[2026-06-12 05:13:27,672.672 INFO    ] Script finished. Safe exiting...
[2026-06-12 05:13:27,673.673 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 05:13:27,677.677 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 05:13:27,680.680 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 05:13:29,719.719 INFO    ] ================================================
[2026-06-12 05:13:29,735.735 INFO    ] Launching Daemon at Fri Jun 12 05:13:29 IST 2026
[2026-06-12 05:13:29,745.745 INFO    ] ================================================
[2026-06-12 05:13:30,080.080 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 05:13:30
[2026-06-12 05:13:30,391.391 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 05:13:30,522.522 INFO    ] Initializing speech engine...
[2026-06-12 05:13:30,532.532 INFO    ] 2026-06-12 05:13:30
[2026-06-12 05:13:30,754.754 INFO    ] 2026-06-12 05:13:30
[2026-06-12 05:13:30,785.785 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 05:13:30,980.980 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 05:13:30,990.990 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 05:13:31,124.124 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 05:13:31,176.176 INFO    ] time= 12/06/2026 05:13:31
[2026-06-12 05:13:31,220.220 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 05:13:31,235.235 INFO    ] Checking for existing commands in stream...
[2026-06-12 05:13:31,316.316 INFO    ] No existing commands found in stream
[2026-06-12 05:13:36,327.327 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 05:13:36,329.329 INFO    ] Waiting 0.03 seconds before fallback handling...
[2026-06-12 05:13:37,039.039 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 05:13:37,041.041 INFO    ] Checking for system updates...
[2026-06-12 05:13:37,061.061 INFO    ] 200
[2026-06-12 05:13:37,063.063 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:13:37,095.095 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 05:13:37,096.096 INFO    ] No update needed
[2026-06-12 05:13:37,097.097 INFO    ] Checking for camera pi updates...
[2026-06-12 05:13:37,116.116 INFO    ] 200
[2026-06-12 05:13:37,118.118 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:13:37,142.142 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 05:13:37,191.191 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 05:13:37,193.193 INFO    ] No camera update needed
[2026-06-12 05:13:37,196.196 INFO    ] Script finished. Safe exiting...
[2026-06-12 05:13:37,198.198 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 05:13:37,203.203 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 05:13:37,208.208 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 05:13:39,249.249 INFO    ] ================================================
[2026-06-12 05:13:39,264.264 INFO    ] Launching Daemon at Fri Jun 12 05:13:39 IST 2026
[2026-06-12 05:13:39,275.275 INFO    ] ================================================
[2026-06-12 05:13:39,659.659 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 05:13:39
[2026-06-12 05:13:39,992.992 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 05:13:40,132.132 INFO    ] Initializing speech engine...
[2026-06-12 05:13:40,144.144 INFO    ] 2026-06-12 05:13:40
[2026-06-12 05:13:40,354.354 INFO    ] 2026-06-12 05:13:40
[2026-06-12 05:13:40,382.382 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 05:13:40,568.568 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 05:13:40,577.577 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 05:13:40,723.723 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 05:13:40,777.777 INFO    ] time= 12/06/2026 05:13:40
[2026-06-12 05:13:40,799.799 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 05:13:40,806.806 INFO    ] Checking for existing commands in stream...
[2026-06-12 05:13:40,873.873 INFO    ] No existing commands found in stream
[2026-06-12 05:13:45,887.887 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 05:13:45,890.890 INFO    ] Waiting 2.04 seconds before fallback handling...
[2026-06-12 05:13:48,349.349 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 05:13:48,350.350 INFO    ] Checking for system updates...
[2026-06-12 05:13:48,371.371 INFO    ] 200
[2026-06-12 05:13:48,373.373 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:13:48,405.405 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 05:13:48,406.406 INFO    ] No update needed
[2026-06-12 05:13:48,407.407 INFO    ] Checking for camera pi updates...
[2026-06-12 05:13:48,429.429 INFO    ] 200
[2026-06-12 05:13:48,430.430 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:13:48,455.455 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 05:13:48,489.489 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 05:13:48,490.490 INFO    ] No camera update needed
[2026-06-12 05:13:48,492.492 INFO    ] Script finished. Safe exiting...
[2026-06-12 05:13:48,493.493 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 05:13:48,496.496 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 05:13:48,499.499 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 05:13:50,537.537 INFO    ] ================================================
[2026-06-12 05:13:50,552.552 INFO    ] Launching Daemon at Fri Jun 12 05:13:50 IST 2026
[2026-06-12 05:13:50,564.564 INFO    ] ================================================
[2026-06-12 05:13:50,895.895 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 05:13:50
[2026-06-12 05:13:51,206.206 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 05:13:51,340.340 INFO    ] Initializing speech engine...
[2026-06-12 05:13:51,352.352 INFO    ] 2026-06-12 05:13:51
[2026-06-12 05:13:51,558.558 INFO    ] 2026-06-12 05:13:51
[2026-06-12 05:13:51,586.586 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 05:13:51,770.770 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 05:13:51,779.779 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 05:13:51,958.958 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 05:13:51,996.996 INFO    ] time= 12/06/2026 05:13:51
[2026-06-12 05:13:52,002.002 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 05:13:52,004.004 INFO    ] Checking for existing commands in stream...
[2026-06-12 05:13:52,072.072 INFO    ] No existing commands found in stream
[2026-06-12 05:13:57,081.081 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 05:13:57,084.084 INFO    ] Waiting 2.04 seconds before fallback handling...
[2026-06-12 05:13:59,530.530 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 05:13:59,531.531 INFO    ] Checking for system updates...
[2026-06-12 05:13:59,553.553 INFO    ] 200
[2026-06-12 05:13:59,554.554 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:13:59,586.586 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 05:13:59,588.588 INFO    ] No update needed
[2026-06-12 05:13:59,589.589 INFO    ] Checking for camera pi updates...
[2026-06-12 05:13:59,610.610 INFO    ] 200
[2026-06-12 05:13:59,612.612 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:13:59,639.639 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 05:13:59,685.685 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 05:13:59,687.687 INFO    ] No camera update needed
[2026-06-12 05:13:59,688.688 INFO    ] Script finished. Safe exiting...
[2026-06-12 05:13:59,689.689 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 05:13:59,693.693 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 05:13:59,696.696 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 05:14:01,729.729 INFO    ] ================================================
[2026-06-12 05:14:01,739.739 INFO    ] Launching Daemon at Fri Jun 12 05:14:01 IST 2026
[2026-06-12 05:14:01,747.747 INFO    ] ================================================
[2026-06-12 05:14:02,114.114 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 05:14:02
[2026-06-12 05:14:02,478.478 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 05:14:02,633.633 INFO    ] Initializing speech engine...
[2026-06-12 05:14:02,642.642 INFO    ] 2026-06-12 05:14:02
[2026-06-12 05:14:02,859.859 INFO    ] 2026-06-12 05:14:02
[2026-06-12 05:14:02,888.888 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 05:14:03,081.081 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 05:14:03,084.084 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 05:14:03,224.224 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 05:14:03,279.279 INFO    ] time= 12/06/2026 05:14:03
[2026-06-12 05:14:03,315.315 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 05:14:03,326.326 INFO    ] Checking for existing commands in stream...
[2026-06-12 05:14:03,399.399 INFO    ] No existing commands found in stream
[2026-06-12 05:14:08,410.410 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 05:14:08,413.413 INFO    ] Waiting 1.21 seconds before fallback handling...
[2026-06-12 05:14:10,009.009 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 05:14:10,011.011 INFO    ] Checking for system updates...
[2026-06-12 05:14:10,032.032 INFO    ] 200
[2026-06-12 05:14:10,033.033 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:14:10,063.063 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 05:14:10,065.065 INFO    ] No update needed
[2026-06-12 05:14:10,066.066 INFO    ] Checking for camera pi updates...
[2026-06-12 05:14:10,087.087 INFO    ] 200
[2026-06-12 05:14:10,089.089 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:14:10,115.115 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 05:14:10,154.154 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 05:14:10,156.156 INFO    ] No camera update needed
[2026-06-12 05:14:10,157.157 INFO    ] Script finished. Safe exiting...
[2026-06-12 05:14:10,158.158 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 05:14:10,162.162 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 05:14:10,164.164 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 05:14:12,203.203 INFO    ] ================================================
[2026-06-12 05:14:12,219.219 INFO    ] Launching Daemon at Fri Jun 12 05:14:12 IST 2026
[2026-06-12 05:14:12,230.230 INFO    ] ================================================
[2026-06-12 05:14:12,573.573 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 05:14:12
[2026-06-12 05:14:12,904.904 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 05:14:13,046.046 INFO    ] Initializing speech engine...
[2026-06-12 05:14:13,055.055 INFO    ] 2026-06-12 05:14:13
[2026-06-12 05:14:13,263.263 INFO    ] 2026-06-12 05:14:13
[2026-06-12 05:14:13,292.292 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 05:14:13,425.425 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 05:14:13,478.478 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 05:14:13,612.612 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 05:14:13,680.680 INFO    ] time= 12/06/2026 05:14:13
[2026-06-12 05:14:13,707.707 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 05:14:13,714.714 INFO    ] Checking for existing commands in stream...
[2026-06-12 05:14:13,780.780 INFO    ] No existing commands found in stream
[2026-06-12 05:14:18,789.789 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 05:14:18,793.793 INFO    ] Waiting 2.99 seconds before fallback handling...
[2026-06-12 05:14:22,186.186 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 05:14:22,187.187 INFO    ] Checking for system updates...
[2026-06-12 05:14:22,208.208 INFO    ] 200
[2026-06-12 05:14:22,210.210 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:14:22,240.240 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 05:14:22,242.242 INFO    ] No update needed
[2026-06-12 05:14:22,243.243 INFO    ] Checking for camera pi updates...
[2026-06-12 05:14:22,263.263 INFO    ] 200
[2026-06-12 05:14:22,264.264 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:14:22,289.289 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 05:14:22,327.327 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 05:14:22,329.329 INFO    ] No camera update needed
[2026-06-12 05:14:22,330.330 INFO    ] Script finished. Safe exiting...
[2026-06-12 05:14:22,331.331 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 05:14:22,334.334 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 05:14:22,337.337 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 05:14:24,376.376 INFO    ] ================================================
[2026-06-12 05:14:24,392.392 INFO    ] Launching Daemon at Fri Jun 12 05:14:24 IST 2026
[2026-06-12 05:14:24,404.404 INFO    ] ================================================
[2026-06-12 05:14:24,747.747 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 05:14:24
[2026-06-12 05:14:25,066.066 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 05:14:25,210.210 INFO    ] Initializing speech engine...
[2026-06-12 05:14:25,214.214 INFO    ] 2026-06-12 05:14:25
[2026-06-12 05:14:25,417.417 INFO    ] 2026-06-12 05:14:25
[2026-06-12 05:14:25,446.446 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 05:14:25,628.628 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 05:14:25,638.638 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 05:14:25,755.755 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 05:14:25,757.757 INFO    ] time= 12/06/2026 05:14:25
[2026-06-12 05:14:25,758.758 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 05:14:25,773.773 INFO    ] Checking for existing commands in stream...
[2026-06-12 05:14:25,865.865 INFO    ] No existing commands found in stream
[2026-06-12 05:14:30,882.882 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 05:14:30,885.885 INFO    ] Waiting 3.01 seconds before fallback handling...
[2026-06-12 05:14:34,294.294 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 05:14:34,296.296 INFO    ] Checking for system updates...
[2026-06-12 05:14:34,317.317 INFO    ] 200
[2026-06-12 05:14:34,319.319 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:14:34,351.351 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 05:14:34,352.352 INFO    ] No update needed
[2026-06-12 05:14:34,353.353 INFO    ] Checking for camera pi updates...
[2026-06-12 05:14:34,373.373 INFO    ] 200
[2026-06-12 05:14:34,375.375 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:14:34,398.398 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 05:14:34,437.437 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 05:14:34,438.438 INFO    ] No camera update needed
[2026-06-12 05:14:34,440.440 INFO    ] Script finished. Safe exiting...
[2026-06-12 05:14:34,441.441 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 05:14:34,444.444 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 05:14:34,447.447 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 05:14:36,485.485 INFO    ] ================================================
[2026-06-12 05:14:36,500.500 INFO    ] Launching Daemon at Fri Jun 12 05:14:36 IST 2026
[2026-06-12 05:14:36,512.512 INFO    ] ================================================
[2026-06-12 05:14:36,875.875 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 05:14:36
[2026-06-12 05:14:37,189.189 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 05:14:37,322.322 INFO    ] Initializing speech engine...
[2026-06-12 05:14:37,335.335 INFO    ] 2026-06-12 05:14:37
[2026-06-12 05:14:37,541.541 INFO    ] 2026-06-12 05:14:37
[2026-06-12 05:14:37,570.570 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 05:14:37,761.761 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 05:14:37,770.770 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 05:14:37,894.894 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 05:14:37,945.945 INFO    ] time= 12/06/2026 05:14:37
[2026-06-12 05:14:37,991.991 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 05:14:37,996.996 INFO    ] Checking for existing commands in stream...
[2026-06-12 05:14:38,067.067 INFO    ] No existing commands found in stream
[2026-06-12 05:14:43,078.078 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 05:14:43,081.081 INFO    ] Waiting 3.72 seconds before fallback handling...
[2026-06-12 05:14:47,203.203 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 05:14:47,205.205 INFO    ] Checking for system updates...
[2026-06-12 05:14:47,225.225 INFO    ] 200
[2026-06-12 05:14:47,227.227 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:14:47,257.257 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 05:14:47,259.259 INFO    ] No update needed
[2026-06-12 05:14:47,260.260 INFO    ] Checking for camera pi updates...
[2026-06-12 05:14:47,281.281 INFO    ] 200
[2026-06-12 05:14:47,283.283 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:14:47,306.306 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 05:14:47,341.341 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 05:14:47,343.343 INFO    ] No camera update needed
[2026-06-12 05:14:47,344.344 INFO    ] Script finished. Safe exiting...
[2026-06-12 05:14:47,346.346 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 05:14:47,349.349 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 05:14:47,352.352 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 05:14:49,391.391 INFO    ] ================================================
[2026-06-12 05:14:49,406.406 INFO    ] Launching Daemon at Fri Jun 12 05:14:49 IST 2026
[2026-06-12 05:14:49,418.418 INFO    ] ================================================
[2026-06-12 05:14:49,762.762 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 05:14:49
[2026-06-12 05:14:50,073.073 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 05:14:50,203.203 INFO    ] Initializing speech engine...
[2026-06-12 05:14:50,207.207 INFO    ] 2026-06-12 05:14:50
[2026-06-12 05:14:50,421.421 INFO    ] 2026-06-12 05:14:50
[2026-06-12 05:14:50,450.450 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 05:14:50,633.633 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 05:14:50,642.642 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 05:14:50,787.787 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 05:14:50,839.839 INFO    ] time= 12/06/2026 05:14:50
[2026-06-12 05:14:50,861.861 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 05:14:50,867.867 INFO    ] Checking for existing commands in stream...
[2026-06-12 05:14:50,934.934 INFO    ] No existing commands found in stream
[2026-06-12 05:14:55,942.942 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 05:14:55,945.945 INFO    ] Waiting 3.57 seconds before fallback handling...
[2026-06-12 05:14:59,927.927 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 05:14:59,929.929 INFO    ] Checking for system updates...
[2026-06-12 05:14:59,949.949 INFO    ] 200
[2026-06-12 05:14:59,951.951 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:14:59,982.982 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 05:14:59,983.983 INFO    ] No update needed
[2026-06-12 05:14:59,984.984 INFO    ] Checking for camera pi updates...
[2026-06-12 05:15:00,004.004 INFO    ] 200
[2026-06-12 05:15:00,005.005 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:15:00,028.028 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 05:15:00,074.074 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 05:15:00,076.076 INFO    ] No camera update needed
[2026-06-12 05:15:00,077.077 INFO    ] Script finished. Safe exiting...
[2026-06-12 05:15:00,078.078 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 05:15:00,081.081 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 05:15:00,084.084 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 05:15:02,135.135 INFO    ] ================================================
[2026-06-12 05:15:02,194.194 INFO    ] Launching Daemon at Fri Jun 12 05:15:02 IST 2026
[2026-06-12 05:15:02,219.219 INFO    ] ================================================
[2026-06-12 05:15:02,615.615 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 05:15:02
[2026-06-12 05:15:02,985.985 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 05:15:03,133.133 INFO    ] Initializing speech engine...
[2026-06-12 05:15:03,137.137 INFO    ] 2026-06-12 05:15:03
[2026-06-12 05:15:03,360.360 INFO    ] 2026-06-12 05:15:03
[2026-06-12 05:15:03,389.389 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 05:15:03,576.576 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 05:15:03,579.579 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 05:15:03,732.732 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 05:15:03,786.786 INFO    ] time= 12/06/2026 05:15:03
[2026-06-12 05:15:03,808.808 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 05:15:03,815.815 INFO    ] Checking for existing commands in stream...
[2026-06-12 05:15:03,906.906 INFO    ] No existing commands found in stream
[2026-06-12 05:15:08,917.917 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 05:15:08,920.920 INFO    ] Waiting 1.30 seconds before fallback handling...
[2026-06-12 05:15:10,597.597 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 05:15:10,598.598 INFO    ] Checking for system updates...
[2026-06-12 05:15:10,619.619 INFO    ] 200
[2026-06-12 05:15:10,621.621 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:15:10,652.652 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 05:15:10,653.653 INFO    ] No update needed
[2026-06-12 05:15:10,654.654 INFO    ] Checking for camera pi updates...
[2026-06-12 05:15:10,674.674 INFO    ] 200
[2026-06-12 05:15:10,675.675 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:15:10,698.698 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 05:15:10,747.747 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 05:15:10,748.748 INFO    ] No camera update needed
[2026-06-12 05:15:10,749.749 INFO    ] Script finished. Safe exiting...
[2026-06-12 05:15:10,751.751 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 05:15:10,753.753 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 05:15:10,756.756 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 05:15:12,794.794 INFO    ] ================================================
[2026-06-12 05:15:12,811.811 INFO    ] Launching Daemon at Fri Jun 12 05:15:12 IST 2026
[2026-06-12 05:15:12,822.822 INFO    ] ================================================
[2026-06-12 05:15:13,152.152 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 05:15:13
[2026-06-12 05:15:13,465.465 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 05:15:13,607.607 INFO    ] Initializing speech engine...
[2026-06-12 05:15:13,612.612 INFO    ] 2026-06-12 05:15:13
[2026-06-12 05:15:13,815.815 INFO    ] 2026-06-12 05:15:13
[2026-06-12 05:15:13,843.843 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 05:15:14,025.025 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 05:15:14,035.035 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 05:15:14,220.220 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 05:15:14,253.253 INFO    ] time= 12/06/2026 05:15:14
[2026-06-12 05:15:14,259.259 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 05:15:14,261.261 INFO    ] Checking for existing commands in stream...
[2026-06-12 05:15:14,335.335 INFO    ] No existing commands found in stream
[2026-06-12 05:15:19,349.349 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 05:15:19,352.352 INFO    ] Waiting 2.05 seconds before fallback handling...
[2026-06-12 05:15:21,794.794 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 05:15:21,796.796 INFO    ] Checking for system updates...
[2026-06-12 05:15:21,816.816 INFO    ] 200
[2026-06-12 05:15:21,818.818 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:15:21,848.848 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 05:15:21,849.849 INFO    ] No update needed
[2026-06-12 05:15:21,851.851 INFO    ] Checking for camera pi updates...
[2026-06-12 05:15:21,870.870 INFO    ] 200
[2026-06-12 05:15:21,872.872 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:15:21,895.895 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 05:15:21,931.931 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 05:15:21,932.932 INFO    ] No camera update needed
[2026-06-12 05:15:21,934.934 INFO    ] Script finished. Safe exiting...
[2026-06-12 05:15:21,935.935 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 05:15:21,938.938 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 05:15:21,941.941 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 05:15:23,982.982 INFO    ] ================================================
[2026-06-12 05:15:24,998.998 INFO    ] Launching Daemon at Fri Jun 12 05:15:23 IST 2026
[2026-06-12 05:15:24,010.010 INFO    ] ================================================
[2026-06-12 05:15:24,387.387 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 05:15:24
[2026-06-12 05:15:24,703.703 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 05:15:24,840.840 INFO    ] Initializing speech engine...
[2026-06-12 05:15:24,848.848 INFO    ] 2026-06-12 05:15:24
[2026-06-12 05:15:25,054.054 INFO    ] 2026-06-12 05:15:25
[2026-06-12 05:15:25,083.083 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 05:15:25,265.265 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 05:15:25,274.274 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 05:15:25,429.429 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 05:15:25,471.471 INFO    ] time= 12/06/2026 05:15:25
[2026-06-12 05:15:25,494.494 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 05:15:25,500.500 INFO    ] Checking for existing commands in stream...
[2026-06-12 05:15:25,590.590 INFO    ] No existing commands found in stream
[2026-06-12 05:15:30,614.614 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 05:15:30,617.617 INFO    ] Waiting 2.74 seconds before fallback handling...
[2026-06-12 05:15:33,745.745 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 05:15:33,747.747 INFO    ] Checking for system updates...
[2026-06-12 05:15:33,767.767 INFO    ] 200
[2026-06-12 05:15:33,769.769 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:15:33,799.799 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 05:15:33,800.800 INFO    ] No update needed
[2026-06-12 05:15:33,802.802 INFO    ] Checking for camera pi updates...
[2026-06-12 05:15:33,822.822 INFO    ] 200
[2026-06-12 05:15:33,824.824 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:15:33,848.848 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 05:15:33,987.987 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 05:15:33,988.988 INFO    ] No camera update needed
[2026-06-12 05:15:33,989.989 INFO    ] Script finished. Safe exiting...
[2026-06-12 05:15:33,991.991 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 05:15:33,994.994 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 05:15:33,996.996 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 05:15:36,036.036 INFO    ] ================================================
[2026-06-12 05:15:36,053.053 INFO    ] Launching Daemon at Fri Jun 12 05:15:36 IST 2026
[2026-06-12 05:15:36,064.064 INFO    ] ================================================
[2026-06-12 05:15:36,406.406 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 05:15:36
[2026-06-12 05:15:36,720.720 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 05:15:36,850.850 INFO    ] Initializing speech engine...
[2026-06-12 05:15:36,854.854 INFO    ] 2026-06-12 05:15:36
[2026-06-12 05:15:37,073.073 INFO    ] 2026-06-12 05:15:37
[2026-06-12 05:15:37,102.102 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 05:15:37,288.288 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 05:15:37,292.292 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 05:15:37,429.429 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 05:15:37,493.493 INFO    ] time= 12/06/2026 05:15:37
[2026-06-12 05:15:37,522.522 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 05:15:37,528.528 INFO    ] Checking for existing commands in stream...
[2026-06-12 05:15:37,620.620 INFO    ] No existing commands found in stream
[2026-06-12 05:15:42,629.629 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 05:15:42,632.632 INFO    ] Waiting 1.68 seconds before fallback handling...
[2026-06-12 05:15:44,695.695 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 05:15:44,696.696 INFO    ] Checking for system updates...
[2026-06-12 05:15:44,717.717 INFO    ] 200
[2026-06-12 05:15:44,719.719 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:15:44,749.749 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 05:15:44,751.751 INFO    ] No update needed
[2026-06-12 05:15:44,752.752 INFO    ] Checking for camera pi updates...
[2026-06-12 05:15:44,772.772 INFO    ] 200
[2026-06-12 05:15:44,774.774 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:15:44,797.797 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 05:15:44,838.838 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 05:15:44,839.839 INFO    ] No camera update needed
[2026-06-12 05:15:44,841.841 INFO    ] Script finished. Safe exiting...
[2026-06-12 05:15:44,842.842 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 05:15:44,845.845 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 05:15:44,848.848 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 05:15:46,888.888 INFO    ] ================================================
[2026-06-12 05:15:46,903.903 INFO    ] Launching Daemon at Fri Jun 12 05:15:46 IST 2026
[2026-06-12 05:15:46,914.914 INFO    ] ================================================
[2026-06-12 05:15:47,248.248 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 05:15:47
[2026-06-12 05:15:47,563.563 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 05:15:47,706.706 INFO    ] Initializing speech engine...
[2026-06-12 05:15:47,711.711 INFO    ] 2026-06-12 05:15:47
[2026-06-12 05:15:47,916.916 INFO    ] 2026-06-12 05:15:47
[2026-06-12 05:15:47,944.944 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 05:15:48,125.125 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 05:15:48,129.129 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 05:15:48,284.284 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 05:15:48,338.338 INFO    ] time= 12/06/2026 05:15:48
[2026-06-12 05:15:48,354.354 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 05:15:48,360.360 INFO    ] Checking for existing commands in stream...
[2026-06-12 05:15:48,427.427 INFO    ] No existing commands found in stream
[2026-06-12 05:15:53,436.436 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 05:15:53,439.439 INFO    ] Waiting 2.42 seconds before fallback handling...
[2026-06-12 05:15:56,266.266 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 05:15:56,267.267 INFO    ] Checking for system updates...
[2026-06-12 05:15:56,288.288 INFO    ] 200
[2026-06-12 05:15:56,289.289 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:15:56,320.320 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 05:15:56,322.322 INFO    ] No update needed
[2026-06-12 05:15:56,324.324 INFO    ] Checking for camera pi updates...
[2026-06-12 05:15:56,343.343 INFO    ] 200
[2026-06-12 05:15:56,345.345 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:15:56,368.368 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 05:15:56,410.410 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 05:15:56,411.411 INFO    ] No camera update needed
[2026-06-12 05:15:56,413.413 INFO    ] Script finished. Safe exiting...
[2026-06-12 05:15:56,414.414 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 05:15:56,417.417 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 05:15:56,420.420 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 05:15:58,461.461 INFO    ] ================================================
[2026-06-12 05:15:58,482.482 INFO    ] Launching Daemon at Fri Jun 12 05:15:58 IST 2026
[2026-06-12 05:15:58,492.492 INFO    ] ================================================
[2026-06-12 05:15:58,855.855 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 05:15:58
[2026-06-12 05:15:59,190.190 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 05:15:59,341.341 INFO    ] Initializing speech engine...
[2026-06-12 05:15:59,346.346 INFO    ] 2026-06-12 05:15:59
[2026-06-12 05:15:59,555.555 INFO    ] 2026-06-12 05:15:59
[2026-06-12 05:15:59,585.585 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 05:15:59,773.773 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 05:15:59,782.782 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 05:15:59,965.965 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 05:16:00,005.005 INFO    ] time= 12/06/2026 05:15:59
[2026-06-12 05:16:00,010.010 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 05:16:00,012.012 INFO    ] Checking for existing commands in stream...
[2026-06-12 05:16:00,081.081 INFO    ] No existing commands found in stream
[2026-06-12 05:16:05,090.090 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 05:16:05,094.094 INFO    ] Waiting 1.58 seconds before fallback handling...
[2026-06-12 05:16:07,078.078 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 05:16:07,079.079 INFO    ] Checking for system updates...
[2026-06-12 05:16:07,101.101 INFO    ] 200
[2026-06-12 05:16:07,102.102 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:16:07,135.135 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 05:16:07,136.136 INFO    ] No update needed
[2026-06-12 05:16:07,138.138 INFO    ] Checking for camera pi updates...
[2026-06-12 05:16:07,159.159 INFO    ] 200
[2026-06-12 05:16:07,161.161 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:16:07,186.186 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 05:16:07,225.225 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 05:16:07,226.226 INFO    ] No camera update needed
[2026-06-12 05:16:07,228.228 INFO    ] Script finished. Safe exiting...
[2026-06-12 05:16:07,229.229 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 05:16:07,233.233 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 05:16:07,236.236 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 05:16:09,274.274 INFO    ] ================================================
[2026-06-12 05:16:09,289.289 INFO    ] Launching Daemon at Fri Jun 12 05:16:09 IST 2026
[2026-06-12 05:16:09,300.300 INFO    ] ================================================
[2026-06-12 05:16:09,632.632 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 05:16:09
[2026-06-12 05:16:09,945.945 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 05:16:10,087.087 INFO    ] Initializing speech engine...
[2026-06-12 05:16:10,092.092 INFO    ] 2026-06-12 05:16:10
[2026-06-12 05:16:10,296.296 INFO    ] 2026-06-12 05:16:10
[2026-06-12 05:16:10,324.324 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 05:16:10,507.507 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 05:16:10,511.511 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 05:16:10,647.647 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 05:16:10,714.714 INFO    ] time= 12/06/2026 05:16:10
[2026-06-12 05:16:10,738.738 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 05:16:10,744.744 INFO    ] Checking for existing commands in stream...
[2026-06-12 05:16:10,811.811 INFO    ] No existing commands found in stream
[2026-06-12 05:16:15,825.825 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 05:16:15,828.828 INFO    ] Waiting 2.63 seconds before fallback handling...
[2026-06-12 05:16:18,867.867 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 05:16:18,869.869 INFO    ] Checking for system updates...
[2026-06-12 05:16:18,890.890 INFO    ] 200
[2026-06-12 05:16:18,892.892 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:16:18,922.922 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 05:16:18,924.924 INFO    ] No update needed
[2026-06-12 05:16:18,925.925 INFO    ] Checking for camera pi updates...
[2026-06-12 05:16:18,945.945 INFO    ] 200
[2026-06-12 05:16:18,946.946 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:16:18,969.969 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 05:16:19,005.005 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 05:16:19,007.007 INFO    ] No camera update needed
[2026-06-12 05:16:19,008.008 INFO    ] Script finished. Safe exiting...
[2026-06-12 05:16:19,009.009 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 05:16:19,013.013 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 05:16:19,015.015 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 05:16:21,055.055 INFO    ] ================================================
[2026-06-12 05:16:21,071.071 INFO    ] Launching Daemon at Fri Jun 12 05:16:21 IST 2026
[2026-06-12 05:16:21,082.082 INFO    ] ================================================
[2026-06-12 05:16:21,438.438 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 05:16:21
[2026-06-12 05:16:21,769.769 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 05:16:21,917.917 INFO    ] Initializing speech engine...
[2026-06-12 05:16:21,923.923 INFO    ] 2026-06-12 05:16:21
[2026-06-12 05:16:22,130.130 INFO    ] 2026-06-12 05:16:22
[2026-06-12 05:16:22,159.159 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 05:16:22,343.343 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 05:16:22,353.353 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 05:16:22,532.532 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 05:16:22,570.570 INFO    ] time= 12/06/2026 05:16:22
[2026-06-12 05:16:22,576.576 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 05:16:22,578.578 INFO    ] Checking for existing commands in stream...
[2026-06-12 05:16:22,646.646 INFO    ] No existing commands found in stream
[2026-06-12 05:16:27,660.660 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 05:16:27,663.663 INFO    ] Waiting 1.53 seconds before fallback handling...
[2026-06-12 05:16:29,584.584 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 05:16:29,585.585 INFO    ] Checking for system updates...
[2026-06-12 05:16:29,611.611 INFO    ] 200
[2026-06-12 05:16:29,612.612 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:16:29,643.643 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 05:16:29,644.644 INFO    ] No update needed
[2026-06-12 05:16:29,646.646 INFO    ] Checking for camera pi updates...
[2026-06-12 05:16:29,665.665 INFO    ] 200
[2026-06-12 05:16:29,667.667 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:16:29,690.690 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 05:16:29,727.727 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 05:16:29,728.728 INFO    ] No camera update needed
[2026-06-12 05:16:29,729.729 INFO    ] Script finished. Safe exiting...
[2026-06-12 05:16:29,731.731 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 05:16:29,734.734 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 05:16:29,737.737 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 05:16:31,769.769 INFO    ] ================================================
[2026-06-12 05:16:31,779.779 INFO    ] Launching Daemon at Fri Jun 12 05:16:31 IST 2026
[2026-06-12 05:16:31,786.786 INFO    ] ================================================
[2026-06-12 05:16:32,120.120 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 05:16:32
[2026-06-12 05:16:32,438.438 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 05:16:32,572.572 INFO    ] Initializing speech engine...
[2026-06-12 05:16:32,580.580 INFO    ] 2026-06-12 05:16:32
[2026-06-12 05:16:32,803.803 INFO    ] 2026-06-12 05:16:32
[2026-06-12 05:16:32,834.834 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 05:16:33,028.028 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 05:16:33,039.039 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 05:16:33,174.174 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 05:16:33,230.230 INFO    ] time= 12/06/2026 05:16:33
[2026-06-12 05:16:33,264.264 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 05:16:33,280.280 INFO    ] Checking for existing commands in stream...
[2026-06-12 05:16:33,351.351 INFO    ] No existing commands found in stream
[2026-06-12 05:16:38,360.360 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 05:16:38,368.368 INFO    ] Waiting 2.35 seconds before fallback handling...
[2026-06-12 05:16:41,114.114 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 05:16:41,116.116 INFO    ] Checking for system updates...
[2026-06-12 05:16:41,136.136 INFO    ] 200
[2026-06-12 05:16:41,137.137 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:16:41,167.167 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 05:16:41,169.169 INFO    ] No update needed
[2026-06-12 05:16:41,170.170 INFO    ] Checking for camera pi updates...
[2026-06-12 05:16:41,192.192 INFO    ] 200
[2026-06-12 05:16:41,193.193 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:16:41,218.218 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 05:16:41,264.264 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 05:16:41,266.266 INFO    ] No camera update needed
[2026-06-12 05:16:41,267.267 INFO    ] Script finished. Safe exiting...
[2026-06-12 05:16:41,268.268 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 05:16:41,271.271 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 05:16:41,274.274 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 05:16:43,313.313 INFO    ] ================================================
[2026-06-12 05:16:43,328.328 INFO    ] Launching Daemon at Fri Jun 12 05:16:43 IST 2026
[2026-06-12 05:16:43,339.339 INFO    ] ================================================
[2026-06-12 05:16:43,673.673 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 05:16:43
[2026-06-12 05:16:43,989.989 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 05:16:44,144.144 INFO    ] Initializing speech engine...
[2026-06-12 05:16:44,148.148 INFO    ] 2026-06-12 05:16:44
[2026-06-12 05:16:44,354.354 INFO    ] 2026-06-12 05:16:44
[2026-06-12 05:16:44,384.384 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 05:16:44,572.572 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 05:16:44,582.582 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 05:16:44,765.765 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 05:16:44,806.806 INFO    ] time= 12/06/2026 05:16:44
[2026-06-12 05:16:44,812.812 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 05:16:44,814.814 INFO    ] Checking for existing commands in stream...
[2026-06-12 05:16:44,907.907 INFO    ] No existing commands found in stream
[2026-06-12 05:16:49,916.916 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 05:16:49,919.919 INFO    ] Waiting 1.98 seconds before fallback handling...
[2026-06-12 05:16:52,301.301 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 05:16:52,303.303 INFO    ] Checking for system updates...
[2026-06-12 05:16:52,323.323 INFO    ] 200
[2026-06-12 05:16:52,325.325 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:16:52,356.356 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 05:16:52,357.357 INFO    ] No update needed
[2026-06-12 05:16:52,358.358 INFO    ] Checking for camera pi updates...
[2026-06-12 05:16:52,378.378 INFO    ] 200
[2026-06-12 05:16:52,380.380 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:16:52,403.403 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 05:16:52,443.443 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 05:16:52,444.444 INFO    ] No camera update needed
[2026-06-12 05:16:52,446.446 INFO    ] Script finished. Safe exiting...
[2026-06-12 05:16:52,447.447 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 05:16:52,450.450 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 05:16:52,454.454 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 05:16:54,493.493 INFO    ] ================================================
[2026-06-12 05:16:54,509.509 INFO    ] Launching Daemon at Fri Jun 12 05:16:54 IST 2026
[2026-06-12 05:16:54,520.520 INFO    ] ================================================
[2026-06-12 05:16:54,859.859 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 05:16:54
[2026-06-12 05:16:55,168.168 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 05:16:55,310.310 INFO    ] Initializing speech engine...
[2026-06-12 05:16:55,316.316 INFO    ] 2026-06-12 05:16:55
[2026-06-12 05:16:55,518.518 INFO    ] 2026-06-12 05:16:55
[2026-06-12 05:16:55,545.545 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 05:16:55,728.728 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 05:16:55,732.732 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 05:16:55,859.859 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 05:16:55,920.920 INFO    ] time= 12/06/2026 05:16:55
[2026-06-12 05:16:55,954.954 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 05:16:55,959.959 INFO    ] Checking for existing commands in stream...
[2026-06-12 05:16:56,028.028 INFO    ] No existing commands found in stream
[2026-06-12 05:17:01,039.039 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 05:17:01,042.042 INFO    ] Waiting 1.87 seconds before fallback handling...
[2026-06-12 05:17:03,281.281 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 05:17:03,284.284 INFO    ] Checking for system updates...
[2026-06-12 05:17:03,320.320 INFO    ] 200
[2026-06-12 05:17:03,323.323 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:17:03,372.372 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 05:17:03,374.374 INFO    ] No update needed
[2026-06-12 05:17:03,375.375 INFO    ] Checking for camera pi updates...
[2026-06-12 05:17:03,394.394 INFO    ] 200
[2026-06-12 05:17:03,396.396 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:17:03,419.419 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 05:17:03,459.459 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 05:17:03,461.461 INFO    ] No camera update needed
[2026-06-12 05:17:03,462.462 INFO    ] Script finished. Safe exiting...
[2026-06-12 05:17:03,463.463 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 05:17:03,466.466 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 05:17:03,469.469 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 05:17:05,510.510 INFO    ] ================================================
[2026-06-12 05:17:05,526.526 INFO    ] Launching Daemon at Fri Jun 12 05:17:05 IST 2026
[2026-06-12 05:17:05,536.536 INFO    ] ================================================
[2026-06-12 05:17:05,908.908 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 05:17:05
[2026-06-12 05:17:06,225.225 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 05:17:06,364.364 INFO    ] Initializing speech engine...
[2026-06-12 05:17:06,373.373 INFO    ] 2026-06-12 05:17:06
[2026-06-12 05:17:06,578.578 INFO    ] 2026-06-12 05:17:06
[2026-06-12 05:17:06,606.606 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 05:17:06,790.790 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 05:17:06,799.799 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 05:17:06,995.995 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 05:17:07,023.023 INFO    ] time= 12/06/2026 05:17:06
[2026-06-12 05:17:07,029.029 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 05:17:07,031.031 INFO    ] Checking for existing commands in stream...
[2026-06-12 05:17:07,098.098 INFO    ] No existing commands found in stream
[2026-06-12 05:17:12,102.102 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 05:17:12,106.106 INFO    ] Waiting 2.57 seconds before fallback handling...
[2026-06-12 05:17:15,065.065 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 05:17:15,066.066 INFO    ] Checking for system updates...
[2026-06-12 05:17:15,087.087 INFO    ] 200
[2026-06-12 05:17:15,088.088 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:17:15,119.119 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 05:17:15,120.120 INFO    ] No update needed
[2026-06-12 05:17:15,122.122 INFO    ] Checking for camera pi updates...
[2026-06-12 05:17:15,142.142 INFO    ] 200
[2026-06-12 05:17:15,143.143 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:17:15,169.169 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 05:17:15,208.208 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 05:17:15,210.210 INFO    ] No camera update needed
[2026-06-12 05:17:15,211.211 INFO    ] Script finished. Safe exiting...
[2026-06-12 05:17:15,212.212 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 05:17:15,215.215 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 05:17:15,218.218 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 05:17:17,256.256 INFO    ] ================================================
[2026-06-12 05:17:17,273.273 INFO    ] Launching Daemon at Fri Jun 12 05:17:17 IST 2026
[2026-06-12 05:17:17,283.283 INFO    ] ================================================
[2026-06-12 05:17:17,611.611 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 05:17:17
[2026-06-12 05:17:17,928.928 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 05:17:18,073.073 INFO    ] Initializing speech engine...
[2026-06-12 05:17:18,078.078 INFO    ] 2026-06-12 05:17:18
[2026-06-12 05:17:18,282.282 INFO    ] 2026-06-12 05:17:18
[2026-06-12 05:17:18,311.311 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 05:17:18,449.449 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 05:17:18,497.497 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 05:17:18,645.645 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 05:17:18,704.704 INFO    ] time= 12/06/2026 05:17:18
[2026-06-12 05:17:18,726.726 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 05:17:18,733.733 INFO    ] Checking for existing commands in stream...
[2026-06-12 05:17:18,800.800 INFO    ] No existing commands found in stream
[2026-06-12 05:17:23,809.809 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 05:17:23,812.812 INFO    ] Waiting 0.28 seconds before fallback handling...
[2026-06-12 05:17:24,490.490 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 05:17:24,491.491 INFO    ] Checking for system updates...
[2026-06-12 05:17:24,512.512 INFO    ] 200
[2026-06-12 05:17:24,513.513 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:17:24,546.546 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 05:17:24,548.548 INFO    ] No update needed
[2026-06-12 05:17:24,549.549 INFO    ] Checking for camera pi updates...
[2026-06-12 05:17:24,568.568 INFO    ] 200
[2026-06-12 05:17:24,570.570 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:17:24,593.593 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 05:17:24,635.635 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 05:17:24,636.636 INFO    ] No camera update needed
[2026-06-12 05:17:24,638.638 INFO    ] Script finished. Safe exiting...
[2026-06-12 05:17:24,639.639 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 05:17:24,642.642 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 05:17:24,645.645 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 05:17:26,685.685 INFO    ] ================================================
[2026-06-12 05:17:26,700.700 INFO    ] Launching Daemon at Fri Jun 12 05:17:26 IST 2026
[2026-06-12 05:17:26,712.712 INFO    ] ================================================
[2026-06-12 05:17:27,054.054 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 05:17:27
[2026-06-12 05:17:27,366.366 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 05:17:27,514.514 INFO    ] Initializing speech engine...
[2026-06-12 05:17:27,519.519 INFO    ] 2026-06-12 05:17:27
[2026-06-12 05:17:27,736.736 INFO    ] 2026-06-12 05:17:27
[2026-06-12 05:17:27,767.767 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 05:17:27,967.967 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 05:17:27,971.971 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 05:17:28,111.111 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 05:17:28,168.168 INFO    ] time= 12/06/2026 05:17:28
[2026-06-12 05:17:28,213.213 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 05:17:28,220.220 INFO    ] Checking for existing commands in stream...
[2026-06-12 05:17:28,297.297 INFO    ] No existing commands found in stream
[2026-06-12 05:17:33,322.322 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 05:17:33,324.324 INFO    ] Waiting 0.40 seconds before fallback handling...
[2026-06-12 05:17:34,103.103 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 05:17:34,110.110 INFO    ] Checking for system updates...
[2026-06-12 05:17:34,131.131 INFO    ] 200
[2026-06-12 05:17:34,132.132 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:17:34,162.162 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 05:17:34,163.163 INFO    ] No update needed
[2026-06-12 05:17:34,164.164 INFO    ] Checking for camera pi updates...
[2026-06-12 05:17:34,183.183 INFO    ] 200
[2026-06-12 05:17:34,185.185 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:17:34,211.211 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 05:17:34,247.247 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 05:17:34,248.248 INFO    ] No camera update needed
[2026-06-12 05:17:34,250.250 INFO    ] Script finished. Safe exiting...
[2026-06-12 05:17:34,251.251 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 05:17:34,254.254 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 05:17:34,257.257 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 05:17:36,296.296 INFO    ] ================================================
[2026-06-12 05:17:36,312.312 INFO    ] Launching Daemon at Fri Jun 12 05:17:36 IST 2026
[2026-06-12 05:17:36,323.323 INFO    ] ================================================
[2026-06-12 05:17:36,664.664 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 05:17:36
[2026-06-12 05:17:36,977.977 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 05:17:37,109.109 INFO    ] Initializing speech engine...
[2026-06-12 05:17:37,114.114 INFO    ] 2026-06-12 05:17:37
[2026-06-12 05:17:37,335.335 INFO    ] 2026-06-12 05:17:37
[2026-06-12 05:17:37,376.376 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 05:17:37,509.509 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 05:17:37,542.542 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 05:17:37,719.719 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 05:17:37,777.777 INFO    ] time= 12/06/2026 05:17:37
[2026-06-12 05:17:37,822.822 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 05:17:37,828.828 INFO    ] Checking for existing commands in stream...
[2026-06-12 05:17:37,931.931 INFO    ] No existing commands found in stream
[2026-06-12 05:17:42,939.939 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 05:17:42,941.941 INFO    ] Waiting 0.46 seconds before fallback handling...
[2026-06-12 05:17:43,740.740 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 05:17:43,742.742 INFO    ] Checking for system updates...
[2026-06-12 05:17:43,762.762 INFO    ] 200
[2026-06-12 05:17:43,764.764 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:17:43,796.796 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 05:17:43,797.797 INFO    ] No update needed
[2026-06-12 05:17:43,798.798 INFO    ] Checking for camera pi updates...
[2026-06-12 05:17:43,818.818 INFO    ] 200
[2026-06-12 05:17:43,820.820 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:17:43,847.847 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 05:17:43,990.990 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 05:17:43,991.991 INFO    ] No camera update needed
[2026-06-12 05:17:43,993.993 INFO    ] Script finished. Safe exiting...
[2026-06-12 05:17:43,994.994 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 05:17:43,997.997 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 05:17:43,999.999 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 05:17:46,039.039 INFO    ] ================================================
[2026-06-12 05:17:46,054.054 INFO    ] Launching Daemon at Fri Jun 12 05:17:46 IST 2026
[2026-06-12 05:17:46,064.064 INFO    ] ================================================
[2026-06-12 05:17:46,424.424 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 05:17:46
[2026-06-12 05:17:46,738.738 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 05:17:46,880.880 INFO    ] Initializing speech engine...
[2026-06-12 05:17:46,885.885 INFO    ] 2026-06-12 05:17:46
[2026-06-12 05:17:47,090.090 INFO    ] 2026-06-12 05:17:47
[2026-06-12 05:17:47,118.118 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 05:17:47,301.301 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 05:17:47,304.304 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 05:17:47,455.455 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 05:17:47,508.508 INFO    ] time= 12/06/2026 05:17:47
[2026-06-12 05:17:47,531.531 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 05:17:47,537.537 INFO    ] Checking for existing commands in stream...
[2026-06-12 05:17:47,602.602 INFO    ] No existing commands found in stream
[2026-06-12 05:17:52,612.612 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 05:17:52,615.615 INFO    ] Waiting 1.05 seconds before fallback handling...
[2026-06-12 05:17:54,082.082 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 05:17:54,083.083 INFO    ] Checking for system updates...
[2026-06-12 05:17:54,103.103 INFO    ] 200
[2026-06-12 05:17:54,105.105 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:17:54,137.137 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 05:17:54,138.138 INFO    ] No update needed
[2026-06-12 05:17:54,139.139 INFO    ] Checking for camera pi updates...
[2026-06-12 05:17:54,159.159 INFO    ] 200
[2026-06-12 05:17:54,161.161 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:17:54,186.186 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 05:17:54,236.236 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 05:17:54,237.237 INFO    ] No camera update needed
[2026-06-12 05:17:54,239.239 INFO    ] Script finished. Safe exiting...
[2026-06-12 05:17:54,240.240 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 05:17:54,244.244 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 05:17:54,247.247 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 05:17:56,287.287 INFO    ] ================================================
[2026-06-12 05:17:56,302.302 INFO    ] Launching Daemon at Fri Jun 12 05:17:56 IST 2026
[2026-06-12 05:17:56,313.313 INFO    ] ================================================
[2026-06-12 05:17:56,710.710 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 05:17:56
[2026-06-12 05:17:57,049.049 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 05:17:57,189.189 INFO    ] Initializing speech engine...
[2026-06-12 05:17:57,204.204 INFO    ] 2026-06-12 05:17:57
[2026-06-12 05:17:57,414.414 INFO    ] 2026-06-12 05:17:57
[2026-06-12 05:17:57,443.443 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 05:17:57,626.626 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 05:17:57,635.635 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 05:17:57,764.764 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 05:17:57,829.829 INFO    ] time= 12/06/2026 05:17:57
[2026-06-12 05:17:57,856.856 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 05:17:57,863.863 INFO    ] Checking for existing commands in stream...
[2026-06-12 05:17:57,930.930 INFO    ] No existing commands found in stream
[2026-06-12 05:18:02,941.941 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 05:18:02,943.943 INFO    ] Waiting 3.65 seconds before fallback handling...
[2026-06-12 05:18:06,960.960 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 05:18:06,962.962 INFO    ] Checking for system updates...
[2026-06-12 05:18:06,984.984 INFO    ] 200
[2026-06-12 05:18:06,986.986 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:18:07,019.019 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 05:18:07,021.021 INFO    ] No update needed
[2026-06-12 05:18:07,022.022 INFO    ] Checking for camera pi updates...
[2026-06-12 05:18:07,043.043 INFO    ] 200
[2026-06-12 05:18:07,044.044 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:18:07,070.070 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 05:18:07,111.111 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 05:18:07,113.113 INFO    ] No camera update needed
[2026-06-12 05:18:07,114.114 INFO    ] Script finished. Safe exiting...
[2026-06-12 05:18:07,115.115 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 05:18:07,118.118 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 05:18:07,122.122 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 05:18:09,160.160 INFO    ] ================================================
[2026-06-12 05:18:09,175.175 INFO    ] Launching Daemon at Fri Jun 12 05:18:09 IST 2026
[2026-06-12 05:18:09,186.186 INFO    ] ================================================
[2026-06-12 05:18:09,554.554 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 05:18:09
[2026-06-12 05:18:09,889.889 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 05:18:10,046.046 INFO    ] Initializing speech engine...
[2026-06-12 05:18:10,052.052 INFO    ] 2026-06-12 05:18:10
[2026-06-12 05:18:10,254.254 INFO    ] 2026-06-12 05:18:10
[2026-06-12 05:18:10,283.283 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 05:18:10,467.467 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 05:18:10,478.478 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 05:18:10,605.605 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 05:18:10,670.670 INFO    ] time= 12/06/2026 05:18:10
[2026-06-12 05:18:10,698.698 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 05:18:10,703.703 INFO    ] Checking for existing commands in stream...
[2026-06-12 05:18:10,794.794 INFO    ] No existing commands found in stream
[2026-06-12 05:18:15,808.808 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 05:18:15,812.812 INFO    ] Waiting 3.39 seconds before fallback handling...
[2026-06-12 05:18:19,611.611 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 05:18:19,612.612 INFO    ] Checking for system updates...
[2026-06-12 05:18:19,634.634 INFO    ] 200
[2026-06-12 05:18:19,636.636 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:18:19,668.668 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 05:18:19,670.670 INFO    ] No update needed
[2026-06-12 05:18:19,671.671 INFO    ] Checking for camera pi updates...
[2026-06-12 05:18:19,692.692 INFO    ] 200
[2026-06-12 05:18:19,694.694 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:18:19,719.719 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 05:18:19,756.756 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 05:18:19,757.757 INFO    ] No camera update needed
[2026-06-12 05:18:19,759.759 INFO    ] Script finished. Safe exiting...
[2026-06-12 05:18:19,760.760 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 05:18:19,763.763 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 05:18:19,766.766 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 05:18:21,806.806 INFO    ] ================================================
[2026-06-12 05:18:21,822.822 INFO    ] Launching Daemon at Fri Jun 12 05:18:21 IST 2026
[2026-06-12 05:18:21,833.833 INFO    ] ================================================
[2026-06-12 05:18:22,199.199 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 05:18:22
[2026-06-12 05:18:22,533.533 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 05:18:22,685.685 INFO    ] Initializing speech engine...
[2026-06-12 05:18:22,691.691 INFO    ] 2026-06-12 05:18:22
[2026-06-12 05:18:22,900.900 INFO    ] 2026-06-12 05:18:22
[2026-06-12 05:18:22,928.928 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 05:18:23,120.120 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 05:18:23,128.128 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 05:18:23,266.266 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 05:18:23,331.331 INFO    ] time= 12/06/2026 05:18:23
[2026-06-12 05:18:23,354.354 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 05:18:23,359.359 INFO    ] Checking for existing commands in stream...
[2026-06-12 05:18:23,451.451 INFO    ] No existing commands found in stream
[2026-06-12 05:18:28,466.466 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 05:18:28,469.469 INFO    ] Waiting 0.37 seconds before fallback handling...
[2026-06-12 05:18:29,234.234 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 05:18:29,236.236 INFO    ] Checking for system updates...
[2026-06-12 05:18:29,257.257 INFO    ] 200
[2026-06-12 05:18:29,258.258 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:18:29,289.289 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 05:18:29,290.290 INFO    ] No update needed
[2026-06-12 05:18:29,292.292 INFO    ] Checking for camera pi updates...
[2026-06-12 05:18:29,313.313 INFO    ] 200
[2026-06-12 05:18:29,314.314 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:18:29,340.340 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 05:18:29,377.377 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 05:18:29,379.379 INFO    ] No camera update needed
[2026-06-12 05:18:29,380.380 INFO    ] Script finished. Safe exiting...
[2026-06-12 05:18:29,382.382 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 05:18:29,385.385 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 05:18:29,388.388 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 05:18:31,426.426 INFO    ] ================================================
[2026-06-12 05:18:31,442.442 INFO    ] Launching Daemon at Fri Jun 12 05:18:31 IST 2026
[2026-06-12 05:18:31,453.453 INFO    ] ================================================
[2026-06-12 05:18:31,799.799 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 05:18:31
[2026-06-12 05:18:32,138.138 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 05:18:32,294.294 INFO    ] Initializing speech engine...
[2026-06-12 05:18:32,309.309 INFO    ] 2026-06-12 05:18:32
[2026-06-12 05:18:32,505.505 INFO    ] 2026-06-12 05:18:32
[2026-06-12 05:18:32,556.556 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 05:18:32,709.709 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 05:18:32,720.720 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 05:18:32,889.889 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 05:18:32,915.915 INFO    ] time= 12/06/2026 05:18:32
[2026-06-12 05:18:32,970.970 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 05:18:33,012.012 INFO    ] Checking for existing commands in stream...
[2026-06-12 05:18:33,107.107 INFO    ] No existing commands found in stream
[2026-06-12 05:18:38,126.126 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 05:18:38,129.129 INFO    ] Waiting 3.86 seconds before fallback handling...
[2026-06-12 05:18:42,393.393 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 05:18:42,395.395 INFO    ] Checking for system updates...
[2026-06-12 05:18:42,416.416 INFO    ] 200
[2026-06-12 05:18:42,417.417 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:18:42,451.451 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 05:18:42,452.452 INFO    ] No update needed
[2026-06-12 05:18:42,454.454 INFO    ] Checking for camera pi updates...
[2026-06-12 05:18:42,476.476 INFO    ] 200
[2026-06-12 05:18:42,478.478 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:18:42,503.503 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 05:18:42,543.543 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 05:18:42,544.544 INFO    ] No camera update needed
[2026-06-12 05:18:42,546.546 INFO    ] Script finished. Safe exiting...
[2026-06-12 05:18:42,547.547 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 05:18:42,550.550 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 05:18:42,554.554 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 05:18:44,594.594 INFO    ] ================================================
[2026-06-12 05:18:44,609.609 INFO    ] Launching Daemon at Fri Jun 12 05:18:44 IST 2026
[2026-06-12 05:18:44,620.620 INFO    ] ================================================
[2026-06-12 05:18:44,984.984 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 05:18:44
[2026-06-12 05:18:45,325.325 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 05:18:45,477.477 INFO    ] Initializing speech engine...
[2026-06-12 05:18:45,482.482 INFO    ] 2026-06-12 05:18:45
[2026-06-12 05:18:45,691.691 INFO    ] 2026-06-12 05:18:45
[2026-06-12 05:18:45,720.720 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 05:18:45,906.906 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 05:18:45,918.918 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 05:18:46,109.109 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 05:18:46,134.134 INFO    ] time= 12/06/2026 05:18:46
[2026-06-12 05:18:46,140.140 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 05:18:46,142.142 INFO    ] Checking for existing commands in stream...
[2026-06-12 05:18:46,210.210 INFO    ] No existing commands found in stream
[2026-06-12 05:18:51,234.234 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 05:18:51,237.237 INFO    ] Waiting 2.98 seconds before fallback handling...
[2026-06-12 05:18:55,083.083 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 05:18:55,084.084 INFO    ] Checking for system updates...
[2026-06-12 05:18:55,108.108 INFO    ] 200
[2026-06-12 05:18:55,109.109 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:18:55,166.166 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 05:18:55,168.168 INFO    ] No update needed
[2026-06-12 05:18:55,171.171 INFO    ] Checking for camera pi updates...
[2026-06-12 05:18:55,204.204 INFO    ] 200
[2026-06-12 05:18:55,207.207 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:18:55,243.243 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 05:18:55,287.287 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 05:18:55,288.288 INFO    ] No camera update needed
[2026-06-12 05:18:55,290.290 INFO    ] Script finished. Safe exiting...
[2026-06-12 05:18:55,291.291 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 05:18:55,294.294 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 05:18:55,297.297 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 05:18:57,336.336 INFO    ] ================================================
[2026-06-12 05:18:57,352.352 INFO    ] Launching Daemon at Fri Jun 12 05:18:57 IST 2026
[2026-06-12 05:18:57,362.362 INFO    ] ================================================
[2026-06-12 05:18:57,730.730 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 05:18:57
[2026-06-12 05:18:58,077.077 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 05:18:58,229.229 INFO    ] Initializing speech engine...
[2026-06-12 05:18:58,235.235 INFO    ] 2026-06-12 05:18:58
[2026-06-12 05:18:58,443.443 INFO    ] 2026-06-12 05:18:58
[2026-06-12 05:18:58,472.472 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 05:18:58,663.663 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 05:18:58,669.669 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 05:18:58,861.861 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 05:18:58,886.886 INFO    ] time= 12/06/2026 05:18:58
[2026-06-12 05:18:58,892.892 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 05:18:58,894.894 INFO    ] Checking for existing commands in stream...
[2026-06-12 05:18:58,961.961 INFO    ] No existing commands found in stream
[2026-06-12 05:19:03,975.975 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 05:19:03,978.978 INFO    ] Waiting 1.98 seconds before fallback handling...
[2026-06-12 05:19:06,399.399 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 05:19:06,401.401 INFO    ] Checking for system updates...
[2026-06-12 05:19:06,422.422 INFO    ] 200
[2026-06-12 05:19:06,423.423 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:19:06,456.456 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 05:19:06,458.458 INFO    ] No update needed
[2026-06-12 05:19:06,459.459 INFO    ] Checking for camera pi updates...
[2026-06-12 05:19:06,481.481 INFO    ] 200
[2026-06-12 05:19:06,483.483 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:19:06,508.508 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 05:19:06,555.555 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 05:19:06,556.556 INFO    ] No camera update needed
[2026-06-12 05:19:06,557.557 INFO    ] Script finished. Safe exiting...
[2026-06-12 05:19:06,559.559 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 05:19:06,562.562 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 05:19:06,565.565 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 05:19:08,605.605 INFO    ] ================================================
[2026-06-12 05:19:08,621.621 INFO    ] Launching Daemon at Fri Jun 12 05:19:08 IST 2026
[2026-06-12 05:19:08,632.632 INFO    ] ================================================
[2026-06-12 05:19:08,981.981 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 05:19:08
[2026-06-12 05:19:09,312.312 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 05:19:09,450.450 INFO    ] Initializing speech engine...
[2026-06-12 05:19:09,460.460 INFO    ] 2026-06-12 05:19:09
[2026-06-12 05:19:09,666.666 INFO    ] 2026-06-12 05:19:09
[2026-06-12 05:19:09,695.695 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 05:19:09,877.877 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 05:19:09,887.887 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 05:19:10,081.081 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 05:19:10,105.105 INFO    ] time= 12/06/2026 05:19:10
[2026-06-12 05:19:10,111.111 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 05:19:10,112.112 INFO    ] Checking for existing commands in stream...
[2026-06-12 05:19:10,178.178 INFO    ] No existing commands found in stream
[2026-06-12 05:19:15,188.188 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 05:19:15,191.191 INFO    ] Waiting 3.37 seconds before fallback handling...
[2026-06-12 05:19:18,966.966 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 05:19:18,967.967 INFO    ] Checking for system updates...
[2026-06-12 05:19:18,988.988 INFO    ] 200
[2026-06-12 05:19:18,990.990 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:19:19,021.021 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 05:19:19,022.022 INFO    ] No update needed
[2026-06-12 05:19:19,024.024 INFO    ] Checking for camera pi updates...
[2026-06-12 05:19:19,045.045 INFO    ] 200
[2026-06-12 05:19:19,046.046 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:19:19,072.072 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 05:19:19,112.112 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 05:19:19,113.113 INFO    ] No camera update needed
[2026-06-12 05:19:19,114.114 INFO    ] Script finished. Safe exiting...
[2026-06-12 05:19:19,116.116 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 05:19:19,119.119 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 05:19:19,122.122 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 05:19:21,161.161 INFO    ] ================================================
[2026-06-12 05:19:21,176.176 INFO    ] Launching Daemon at Fri Jun 12 05:19:21 IST 2026
[2026-06-12 05:19:21,187.187 INFO    ] ================================================
[2026-06-12 05:19:21,541.541 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 05:19:21
[2026-06-12 05:19:21,854.854 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 05:19:21,983.983 INFO    ] Initializing speech engine...
[2026-06-12 05:19:21,987.987 INFO    ] 2026-06-12 05:19:21
[2026-06-12 05:19:22,181.181 INFO    ] 2026-06-12 05:19:22
[2026-06-12 05:19:22,229.229 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 05:19:22,453.453 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 05:19:22,457.457 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 05:19:22,605.605 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 05:19:22,670.670 INFO    ] time= 12/06/2026 05:19:22
[2026-06-12 05:19:22,704.704 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 05:19:22,706.706 INFO    ] Checking for existing commands in stream...
[2026-06-12 05:19:22,782.782 INFO    ] No existing commands found in stream
[2026-06-12 05:19:27,792.792 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 05:19:27,795.795 INFO    ] Waiting 3.54 seconds before fallback handling...
[2026-06-12 05:19:31,687.687 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 05:19:31,689.689 INFO    ] Checking for system updates...
[2026-06-12 05:19:31,713.713 INFO    ] 200
[2026-06-12 05:19:31,714.714 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:19:31,748.748 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 05:19:31,750.750 INFO    ] No update needed
[2026-06-12 05:19:31,752.752 INFO    ] Checking for camera pi updates...
[2026-06-12 05:19:31,778.778 INFO    ] 200
[2026-06-12 05:19:31,780.780 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:19:31,811.811 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 05:19:31,837.837 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 05:19:31,838.838 INFO    ] No camera update needed
[2026-06-12 05:19:31,839.839 INFO    ] Script finished. Safe exiting...
[2026-06-12 05:19:31,841.841 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 05:19:31,844.844 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 05:19:31,846.846 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 05:19:33,885.885 INFO    ] ================================================
[2026-06-12 05:19:33,900.900 INFO    ] Launching Daemon at Fri Jun 12 05:19:33 IST 2026
[2026-06-12 05:19:33,911.911 INFO    ] ================================================
[2026-06-12 05:19:34,243.243 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 05:19:34
[2026-06-12 05:19:34,559.559 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 05:19:34,695.695 INFO    ] Initializing speech engine...
[2026-06-12 05:19:34,699.699 INFO    ] 2026-06-12 05:19:34
[2026-06-12 05:19:34,932.932 INFO    ] 2026-06-12 05:19:34
[2026-06-12 05:19:34,962.962 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 05:19:35,160.160 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 05:19:35,170.170 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 05:19:35,297.297 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 05:19:35,299.299 INFO    ] time= 12/06/2026 05:19:35
[2026-06-12 05:19:35,300.300 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 05:19:35,351.351 INFO    ] Checking for existing commands in stream...
[2026-06-12 05:19:35,465.465 INFO    ] No existing commands found in stream
[2026-06-12 05:19:40,475.475 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 05:19:40,479.479 INFO    ] Waiting 1.01 seconds before fallback handling...
[2026-06-12 05:19:41,880.880 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 05:19:41,881.881 INFO    ] Checking for system updates...
[2026-06-12 05:19:41,902.902 INFO    ] 200
[2026-06-12 05:19:41,904.904 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:19:41,936.936 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 05:19:41,937.937 INFO    ] No update needed
[2026-06-12 05:19:41,939.939 INFO    ] Checking for camera pi updates...
[2026-06-12 05:19:41,960.960 INFO    ] 200
[2026-06-12 05:19:41,961.961 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:19:41,984.984 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 05:19:42,017.017 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 05:19:42,019.019 INFO    ] No camera update needed
[2026-06-12 05:19:42,020.020 INFO    ] Script finished. Safe exiting...
[2026-06-12 05:19:42,021.021 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 05:19:42,024.024 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 05:19:42,027.027 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 05:19:44,066.066 INFO    ] ================================================
[2026-06-12 05:19:44,081.081 INFO    ] Launching Daemon at Fri Jun 12 05:19:44 IST 2026
[2026-06-12 05:19:44,092.092 INFO    ] ================================================
[2026-06-12 05:19:44,450.450 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 05:19:44
[2026-06-12 05:19:44,764.764 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 05:19:44,907.907 INFO    ] Initializing speech engine...
[2026-06-12 05:19:44,912.912 INFO    ] 2026-06-12 05:19:44
[2026-06-12 05:19:45,115.115 INFO    ] 2026-06-12 05:19:45
[2026-06-12 05:19:45,142.142 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 05:19:45,325.325 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 05:19:45,328.328 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 05:19:45,474.474 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 05:19:45,532.532 INFO    ] time= 12/06/2026 05:19:45
[2026-06-12 05:19:45,554.554 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 05:19:45,560.560 INFO    ] Checking for existing commands in stream...
[2026-06-12 05:19:45,626.626 INFO    ] No existing commands found in stream
[2026-06-12 05:19:50,645.645 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 05:19:50,648.648 INFO    ] Waiting 1.00 seconds before fallback handling...
[2026-06-12 05:19:52,100.100 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 05:19:52,102.102 INFO    ] Checking for system updates...
[2026-06-12 05:19:52,123.123 INFO    ] 200
[2026-06-12 05:19:52,124.124 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:19:52,155.155 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 05:19:52,157.157 INFO    ] No update needed
[2026-06-12 05:19:52,158.158 INFO    ] Checking for camera pi updates...
[2026-06-12 05:19:52,178.178 INFO    ] 200
[2026-06-12 05:19:52,180.180 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:19:52,205.205 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 05:19:52,349.349 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 05:19:52,351.351 INFO    ] No camera update needed
[2026-06-12 05:19:52,352.352 INFO    ] Script finished. Safe exiting...
[2026-06-12 05:19:52,354.354 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 05:19:52,357.357 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 05:19:52,360.360 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 05:19:54,400.400 INFO    ] ================================================
[2026-06-12 05:19:54,415.415 INFO    ] Launching Daemon at Fri Jun 12 05:19:54 IST 2026
[2026-06-12 05:19:54,426.426 INFO    ] ================================================
[2026-06-12 05:19:54,791.791 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 05:19:54
[2026-06-12 05:19:55,129.129 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 05:19:55,276.276 INFO    ] Initializing speech engine...
[2026-06-12 05:19:55,286.286 INFO    ] 2026-06-12 05:19:55
[2026-06-12 05:19:55,498.498 INFO    ] 2026-06-12 05:19:55
[2026-06-12 05:19:55,527.527 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 05:19:55,712.712 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 05:19:55,716.716 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 05:19:55,850.850 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 05:19:55,917.917 INFO    ] time= 12/06/2026 05:19:55
[2026-06-12 05:19:55,944.944 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 05:19:55,951.951 INFO    ] Checking for existing commands in stream...
[2026-06-12 05:19:56,018.018 INFO    ] No existing commands found in stream
[2026-06-12 05:20:01,032.032 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 05:20:01,035.035 INFO    ] Waiting 0.33 seconds before fallback handling...
[2026-06-12 05:20:01,777.777 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 05:20:01,786.786 INFO    ] Checking for system updates...
[2026-06-12 05:20:01,824.824 INFO    ] 200
[2026-06-12 05:20:01,826.826 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:20:01,870.870 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 05:20:01,872.872 INFO    ] No update needed
[2026-06-12 05:20:01,874.874 INFO    ] Checking for camera pi updates...
[2026-06-12 05:20:01,911.911 INFO    ] 200
[2026-06-12 05:20:01,914.914 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:20:01,967.967 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 05:20:02,081.081 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 05:20:02,084.084 INFO    ] No camera update needed
[2026-06-12 05:20:02,086.086 INFO    ] Script finished. Safe exiting...
[2026-06-12 05:20:02,089.089 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 05:20:02,094.094 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 05:20:02,098.098 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 05:20:04,132.132 INFO    ] ================================================
[2026-06-12 05:20:04,147.147 INFO    ] Launching Daemon at Fri Jun 12 05:20:04 IST 2026
[2026-06-12 05:20:04,158.158 INFO    ] ================================================
[2026-06-12 05:20:04,478.478 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 05:20:04
[2026-06-12 05:20:04,790.790 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 05:20:04,922.922 INFO    ] Initializing speech engine...
[2026-06-12 05:20:04,930.930 INFO    ] 2026-06-12 05:20:04
[2026-06-12 05:20:05,145.145 INFO    ] 2026-06-12 05:20:05
[2026-06-12 05:20:05,174.174 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 05:20:05,361.361 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 05:20:05,371.371 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 05:20:05,534.534 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 05:20:05,573.573 INFO    ] time= 12/06/2026 05:20:05
[2026-06-12 05:20:05,595.595 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 05:20:05,601.601 INFO    ] Checking for existing commands in stream...
[2026-06-12 05:20:05,692.692 INFO    ] No existing commands found in stream
[2026-06-12 05:20:10,701.701 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 05:20:10,704.704 INFO    ] Waiting 2.09 seconds before fallback handling...
[2026-06-12 05:20:13,192.192 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 05:20:13,194.194 INFO    ] Checking for system updates...
[2026-06-12 05:20:13,214.214 INFO    ] 200
[2026-06-12 05:20:13,215.215 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:20:13,248.248 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 05:20:13,250.250 INFO    ] No update needed
[2026-06-12 05:20:13,251.251 INFO    ] Checking for camera pi updates...
[2026-06-12 05:20:13,271.271 INFO    ] 200
[2026-06-12 05:20:13,272.272 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:20:13,297.297 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 05:20:13,339.339 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 05:20:13,340.340 INFO    ] No camera update needed
[2026-06-12 05:20:13,341.341 INFO    ] Script finished. Safe exiting...
[2026-06-12 05:20:13,343.343 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 05:20:13,346.346 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 05:20:13,348.348 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 05:20:15,389.389 INFO    ] ================================================
[2026-06-12 05:20:15,409.409 INFO    ] Launching Daemon at Fri Jun 12 05:20:15 IST 2026
[2026-06-12 05:20:15,419.419 INFO    ] ================================================
[2026-06-12 05:20:15,777.777 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 05:20:15
[2026-06-12 05:20:16,118.118 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 05:20:16,271.271 INFO    ] Initializing speech engine...
[2026-06-12 05:20:16,277.277 INFO    ] 2026-06-12 05:20:16
[2026-06-12 05:20:16,488.488 INFO    ] 2026-06-12 05:20:16
[2026-06-12 05:20:16,517.517 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 05:20:16,689.689 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 05:20:16,709.709 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 05:20:16,849.849 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 05:20:16,903.903 INFO    ] time= 12/06/2026 05:20:16
[2026-06-12 05:20:16,943.943 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 05:20:16,950.950 INFO    ] Checking for existing commands in stream...
[2026-06-12 05:20:17,019.019 INFO    ] No existing commands found in stream
[2026-06-12 05:20:22,039.039 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 05:20:22,042.042 INFO    ] Waiting 2.67 seconds before fallback handling...
[2026-06-12 05:20:25,111.111 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 05:20:25,112.112 INFO    ] Checking for system updates...
[2026-06-12 05:20:25,133.133 INFO    ] 200
[2026-06-12 05:20:25,134.134 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:20:25,167.167 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 05:20:25,168.168 INFO    ] No update needed
[2026-06-12 05:20:25,170.170 INFO    ] Checking for camera pi updates...
[2026-06-12 05:20:25,189.189 INFO    ] 200
[2026-06-12 05:20:25,191.191 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:20:25,216.216 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 05:20:25,261.261 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 05:20:25,262.262 INFO    ] No camera update needed
[2026-06-12 05:20:25,264.264 INFO    ] Script finished. Safe exiting...
[2026-06-12 05:20:25,265.265 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 05:20:25,268.268 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 05:20:25,271.271 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 05:20:27,311.311 INFO    ] ================================================
[2026-06-12 05:20:27,326.326 INFO    ] Launching Daemon at Fri Jun 12 05:20:27 IST 2026
[2026-06-12 05:20:27,337.337 INFO    ] ================================================
[2026-06-12 05:20:27,690.690 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 05:20:27
[2026-06-12 05:20:28,030.030 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 05:20:28,177.177 INFO    ] Initializing speech engine...
[2026-06-12 05:20:28,188.188 INFO    ] 2026-06-12 05:20:28
[2026-06-12 05:20:28,397.397 INFO    ] 2026-06-12 05:20:28
[2026-06-12 05:20:28,425.425 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 05:20:28,610.610 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 05:20:28,619.619 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 05:20:28,793.793 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 05:20:28,837.837 INFO    ] time= 12/06/2026 05:20:28
[2026-06-12 05:20:28,843.843 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 05:20:28,844.844 INFO    ] Checking for existing commands in stream...
[2026-06-12 05:20:28,912.912 INFO    ] No existing commands found in stream
[2026-06-12 05:20:33,937.937 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 05:20:33,940.940 INFO    ] Waiting 1.81 seconds before fallback handling...
[2026-06-12 05:20:36,161.161 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 05:20:36,163.163 INFO    ] Checking for system updates...
[2026-06-12 05:20:36,186.186 INFO    ] 200
[2026-06-12 05:20:36,188.188 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:20:36,218.218 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 05:20:36,220.220 INFO    ] No update needed
[2026-06-12 05:20:36,222.222 INFO    ] Checking for camera pi updates...
[2026-06-12 05:20:36,241.241 INFO    ] 200
[2026-06-12 05:20:36,243.243 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:20:36,268.268 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 05:20:36,305.305 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 05:20:36,307.307 INFO    ] No camera update needed
[2026-06-12 05:20:36,308.308 INFO    ] Script finished. Safe exiting...
[2026-06-12 05:20:36,310.310 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 05:20:36,313.313 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 05:20:36,316.316 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 05:20:38,356.356 INFO    ] ================================================
[2026-06-12 05:20:38,371.371 INFO    ] Launching Daemon at Fri Jun 12 05:20:38 IST 2026
[2026-06-12 05:20:38,382.382 INFO    ] ================================================
[2026-06-12 05:20:38,734.734 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 05:20:38
[2026-06-12 05:20:39,052.052 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 05:20:39,186.186 INFO    ] Initializing speech engine...
[2026-06-12 05:20:39,198.198 INFO    ] 2026-06-12 05:20:39
[2026-06-12 05:20:39,406.406 INFO    ] 2026-06-12 05:20:39
[2026-06-12 05:20:39,435.435 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 05:20:39,628.628 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 05:20:39,643.643 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 05:20:39,823.823 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 05:20:39,845.845 INFO    ] time= 12/06/2026 05:20:39
[2026-06-12 05:20:39,851.851 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 05:20:39,853.853 INFO    ] Checking for existing commands in stream...
[2026-06-12 05:20:39,920.920 INFO    ] No existing commands found in stream
[2026-06-12 05:20:44,929.929 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 05:20:44,932.932 INFO    ] Waiting 1.43 seconds before fallback handling...
[2026-06-12 05:20:46,761.761 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 05:20:46,763.763 INFO    ] Checking for system updates...
[2026-06-12 05:20:46,784.784 INFO    ] 200
[2026-06-12 05:20:46,785.785 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:20:46,816.816 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 05:20:46,817.817 INFO    ] No update needed
[2026-06-12 05:20:46,819.819 INFO    ] Checking for camera pi updates...
[2026-06-12 05:20:46,839.839 INFO    ] 200
[2026-06-12 05:20:46,841.841 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:20:46,864.864 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 05:20:46,911.911 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 05:20:46,912.912 INFO    ] No camera update needed
[2026-06-12 05:20:46,914.914 INFO    ] Script finished. Safe exiting...
[2026-06-12 05:20:46,915.915 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 05:20:46,918.918 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 05:20:46,921.921 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 05:20:48,962.962 INFO    ] ================================================
[2026-06-12 05:20:48,977.977 INFO    ] Launching Daemon at Fri Jun 12 05:20:48 IST 2026
[2026-06-12 05:20:48,988.988 INFO    ] ================================================
[2026-06-12 05:20:49,372.372 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 05:20:49
[2026-06-12 05:20:49,714.714 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 05:20:49,868.868 INFO    ] Initializing speech engine...
[2026-06-12 05:20:49,874.874 INFO    ] 2026-06-12 05:20:49
[2026-06-12 05:20:50,086.086 INFO    ] 2026-06-12 05:20:50
[2026-06-12 05:20:50,115.115 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 05:20:50,304.304 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 05:20:50,313.313 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 05:20:50,470.470 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 05:20:50,527.527 INFO    ] time= 12/06/2026 05:20:50
[2026-06-12 05:20:50,559.559 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 05:20:50,610.610 INFO    ] Checking for existing commands in stream...
[2026-06-12 05:20:50,735.735 INFO    ] No existing commands found in stream
[2026-06-12 05:20:55,746.746 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 05:20:55,749.749 INFO    ] Waiting 1.48 seconds before fallback handling...
[2026-06-12 05:20:57,567.567 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 05:20:57,569.569 INFO    ] Checking for system updates...
[2026-06-12 05:20:57,591.591 INFO    ] 200
[2026-06-12 05:20:57,593.593 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:20:57,624.624 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 05:20:57,625.625 INFO    ] No update needed
[2026-06-12 05:20:57,627.627 INFO    ] Checking for camera pi updates...
[2026-06-12 05:20:57,649.649 INFO    ] 200
[2026-06-12 05:20:57,650.650 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:20:57,689.689 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 05:20:57,733.733 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 05:20:57,736.736 INFO    ] No camera update needed
[2026-06-12 05:20:57,739.739 INFO    ] Script finished. Safe exiting...
[2026-06-12 05:20:57,741.741 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 05:20:57,748.748 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 05:20:57,754.754 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 05:20:59,797.797 INFO    ] ================================================
[2026-06-12 05:20:59,812.812 INFO    ] Launching Daemon at Fri Jun 12 05:20:59 IST 2026
[2026-06-12 05:20:59,823.823 INFO    ] ================================================
[2026-06-12 05:21:00,193.193 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 05:21:00
[2026-06-12 05:21:00,538.538 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 05:21:00,694.694 INFO    ] Initializing speech engine...
[2026-06-12 05:21:00,701.701 INFO    ] 2026-06-12 05:21:00
[2026-06-12 05:21:00,898.898 INFO    ] 2026-06-12 05:21:00
[2026-06-12 05:21:00,926.926 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 05:21:01,120.120 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 05:21:01,134.134 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 05:21:01,315.315 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 05:21:01,338.338 INFO    ] time= 12/06/2026 05:21:01
[2026-06-12 05:21:01,343.343 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 05:21:01,345.345 INFO    ] Checking for existing commands in stream...
[2026-06-12 05:21:01,412.412 INFO    ] No existing commands found in stream
[2026-06-12 05:21:06,421.421 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 05:21:06,424.424 INFO    ] Waiting 3.62 seconds before fallback handling...
[2026-06-12 05:21:10,436.436 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 05:21:10,437.437 INFO    ] Checking for system updates...
[2026-06-12 05:21:10,458.458 INFO    ] 200
[2026-06-12 05:21:10,460.460 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:21:10,491.491 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 05:21:10,493.493 INFO    ] No update needed
[2026-06-12 05:21:10,494.494 INFO    ] Checking for camera pi updates...
[2026-06-12 05:21:10,514.514 INFO    ] 200
[2026-06-12 05:21:10,515.515 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:21:10,539.539 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 05:21:10,581.581 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 05:21:10,582.582 INFO    ] No camera update needed
[2026-06-12 05:21:10,584.584 INFO    ] Script finished. Safe exiting...
[2026-06-12 05:21:10,585.585 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 05:21:10,588.588 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 05:21:10,591.591 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 05:21:12,636.636 INFO    ] ================================================
[2026-06-12 05:21:12,652.652 INFO    ] Launching Daemon at Fri Jun 12 05:21:12 IST 2026
[2026-06-12 05:21:12,663.663 INFO    ] ================================================
[2026-06-12 05:21:13,014.014 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 05:21:13
[2026-06-12 05:21:13,325.325 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 05:21:13,458.458 INFO    ] Initializing speech engine...
[2026-06-12 05:21:13,462.462 INFO    ] 2026-06-12 05:21:13
[2026-06-12 05:21:13,666.666 INFO    ] 2026-06-12 05:21:13
[2026-06-12 05:21:13,700.700 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 05:21:13,857.857 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 05:21:13,895.895 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 05:21:14,076.076 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 05:21:14,148.148 INFO    ] time= 12/06/2026 05:21:14
[2026-06-12 05:21:14,174.174 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 05:21:14,180.180 INFO    ] Checking for existing commands in stream...
[2026-06-12 05:21:14,251.251 INFO    ] No existing commands found in stream
[2026-06-12 05:21:19,261.261 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 05:21:19,264.264 INFO    ] Waiting 3.12 seconds before fallback handling...
[2026-06-12 05:21:22,784.784 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 05:21:22,786.786 INFO    ] Checking for system updates...
[2026-06-12 05:21:22,807.807 INFO    ] 200
[2026-06-12 05:21:22,808.808 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:21:22,839.839 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 05:21:22,840.840 INFO    ] No update needed
[2026-06-12 05:21:22,841.841 INFO    ] Checking for camera pi updates...
[2026-06-12 05:21:22,863.863 INFO    ] 200
[2026-06-12 05:21:22,864.864 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:21:22,888.888 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 05:21:22,934.934 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 05:21:22,935.935 INFO    ] No camera update needed
[2026-06-12 05:21:22,936.936 INFO    ] Script finished. Safe exiting...
[2026-06-12 05:21:22,937.937 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 05:21:22,940.940 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 05:21:22,943.943 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 05:21:24,989.989 INFO    ] ================================================
[2026-06-12 05:21:25,005.005 INFO    ] Launching Daemon at Fri Jun 12 05:21:24 IST 2026
[2026-06-12 05:21:25,016.016 INFO    ] ================================================
[2026-06-12 05:21:25,357.357 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 05:21:25
[2026-06-12 05:21:25,671.671 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 05:21:25,803.803 INFO    ] Initializing speech engine...
[2026-06-12 05:21:25,816.816 INFO    ] 2026-06-12 05:21:25
[2026-06-12 05:21:26,023.023 INFO    ] 2026-06-12 05:21:26
[2026-06-12 05:21:26,052.052 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 05:21:26,236.236 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 05:21:26,246.246 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 05:21:26,397.397 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 05:21:26,446.446 INFO    ] time= 12/06/2026 05:21:26
[2026-06-12 05:21:26,468.468 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 05:21:26,474.474 INFO    ] Checking for existing commands in stream...
[2026-06-12 05:21:26,541.541 INFO    ] No existing commands found in stream
[2026-06-12 05:21:31,569.569 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 05:21:31,573.573 INFO    ] Waiting 1.68 seconds before fallback handling...
[2026-06-12 05:21:33,649.649 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 05:21:33,651.651 INFO    ] Checking for system updates...
[2026-06-12 05:21:33,671.671 INFO    ] 200
[2026-06-12 05:21:33,673.673 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:21:33,703.703 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 05:21:33,705.705 INFO    ] No update needed
[2026-06-12 05:21:33,706.706 INFO    ] Checking for camera pi updates...
[2026-06-12 05:21:33,726.726 INFO    ] 200
[2026-06-12 05:21:33,727.727 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:21:33,750.750 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 05:21:33,795.795 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 05:21:33,797.797 INFO    ] No camera update needed
[2026-06-12 05:21:33,798.798 INFO    ] Script finished. Safe exiting...
[2026-06-12 05:21:33,799.799 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 05:21:33,802.802 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 05:21:33,805.805 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 05:21:35,850.850 INFO    ] ================================================
[2026-06-12 05:21:35,866.866 INFO    ] Launching Daemon at Fri Jun 12 05:21:35 IST 2026
[2026-06-12 05:21:35,878.878 INFO    ] ================================================
[2026-06-12 05:21:36,235.235 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 05:21:36
[2026-06-12 05:21:36,570.570 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 05:21:36,778.778 INFO    ] Initializing speech engine...
[2026-06-12 05:21:36,787.787 INFO    ] 2026-06-12 05:21:36
[2026-06-12 05:21:36,990.990 INFO    ] 2026-06-12 05:21:36
[2026-06-12 05:21:37,018.018 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 05:21:37,204.204 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 05:21:37,215.215 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 05:21:37,406.406 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 05:21:37,435.435 INFO    ] time= 12/06/2026 05:21:37
[2026-06-12 05:21:37,440.440 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 05:21:37,442.442 INFO    ] Checking for existing commands in stream...
[2026-06-12 05:21:37,510.510 INFO    ] No existing commands found in stream
[2026-06-12 05:21:42,524.524 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 05:21:42,528.528 INFO    ] Waiting 0.48 seconds before fallback handling...
[2026-06-12 05:21:43,402.402 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 05:21:43,404.404 INFO    ] Checking for system updates...
[2026-06-12 05:21:43,425.425 INFO    ] 200
[2026-06-12 05:21:43,426.426 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:21:43,459.459 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 05:21:43,461.461 INFO    ] No update needed
[2026-06-12 05:21:43,462.462 INFO    ] Checking for camera pi updates...
[2026-06-12 05:21:43,484.484 INFO    ] 200
[2026-06-12 05:21:43,485.485 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:21:43,509.509 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 05:21:43,545.545 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 05:21:43,547.547 INFO    ] No camera update needed
[2026-06-12 05:21:43,548.548 INFO    ] Script finished. Safe exiting...
[2026-06-12 05:21:43,549.549 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 05:21:43,552.552 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 05:21:43,555.555 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 05:21:45,597.597 INFO    ] ================================================
[2026-06-12 05:21:45,614.614 INFO    ] Launching Daemon at Fri Jun 12 05:21:45 IST 2026
[2026-06-12 05:21:45,625.625 INFO    ] ================================================
[2026-06-12 05:21:45,986.986 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 05:21:45
[2026-06-12 05:21:46,322.322 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 05:21:46,470.470 INFO    ] Initializing speech engine...
[2026-06-12 05:21:46,481.481 INFO    ] 2026-06-12 05:21:46
[2026-06-12 05:21:46,692.692 INFO    ] 2026-06-12 05:21:46
[2026-06-12 05:21:46,721.721 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 05:21:46,909.909 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 05:21:46,921.921 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 05:21:47,117.117 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 05:21:47,141.141 INFO    ] time= 12/06/2026 05:21:47
[2026-06-12 05:21:47,147.147 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 05:21:47,148.148 INFO    ] Checking for existing commands in stream...
[2026-06-12 05:21:47,217.217 INFO    ] No existing commands found in stream
[2026-06-12 05:21:52,233.233 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 05:21:52,236.236 INFO    ] Waiting 0.89 seconds before fallback handling...
[2026-06-12 05:21:53,563.563 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 05:21:53,565.565 INFO    ] Checking for system updates...
[2026-06-12 05:21:53,588.588 INFO    ] 200
[2026-06-12 05:21:53,589.589 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:21:53,620.620 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 05:21:53,622.622 INFO    ] No update needed
[2026-06-12 05:21:53,623.623 INFO    ] Checking for camera pi updates...
[2026-06-12 05:21:53,643.643 INFO    ] 200
[2026-06-12 05:21:53,644.644 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:21:53,667.667 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 05:21:53,806.806 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 05:21:53,807.807 INFO    ] No camera update needed
[2026-06-12 05:21:53,808.808 INFO    ] Script finished. Safe exiting...
[2026-06-12 05:21:53,809.809 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 05:21:53,813.813 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 05:21:53,815.815 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 05:21:55,854.854 INFO    ] ================================================
[2026-06-12 05:21:55,870.870 INFO    ] Launching Daemon at Fri Jun 12 05:21:55 IST 2026
[2026-06-12 05:21:55,882.882 INFO    ] ================================================
[2026-06-12 05:21:56,216.216 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 05:21:56
[2026-06-12 05:21:56,529.529 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 05:21:56,660.660 INFO    ] Initializing speech engine...
[2026-06-12 05:21:56,664.664 INFO    ] 2026-06-12 05:21:56
[2026-06-12 05:21:56,884.884 INFO    ] 2026-06-12 05:21:56
[2026-06-12 05:21:56,912.912 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 05:21:57,036.036 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 05:21:57,100.100 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 05:21:57,239.239 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 05:21:57,304.304 INFO    ] time= 12/06/2026 05:21:57
[2026-06-12 05:21:57,332.332 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 05:21:57,338.338 INFO    ] Checking for existing commands in stream...
[2026-06-12 05:21:57,405.405 INFO    ] No existing commands found in stream
[2026-06-12 05:22:02,413.413 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 05:22:02,415.415 INFO    ] Waiting 1.85 seconds before fallback handling...
[2026-06-12 05:22:04,677.677 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 05:22:04,679.679 INFO    ] Checking for system updates...
[2026-06-12 05:22:04,699.699 INFO    ] 200
[2026-06-12 05:22:04,701.701 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:22:04,731.731 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 05:22:04,733.733 INFO    ] No update needed
[2026-06-12 05:22:04,734.734 INFO    ] Checking for camera pi updates...
[2026-06-12 05:22:04,753.753 INFO    ] 200
[2026-06-12 05:22:04,755.755 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:22:04,779.779 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 05:22:04,815.815 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 05:22:04,816.816 INFO    ] No camera update needed
[2026-06-12 05:22:04,818.818 INFO    ] Script finished. Safe exiting...
[2026-06-12 05:22:04,819.819 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 05:22:04,822.822 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 05:22:04,825.825 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 05:22:06,865.865 INFO    ] ================================================
[2026-06-12 05:22:06,880.880 INFO    ] Launching Daemon at Fri Jun 12 05:22:06 IST 2026
[2026-06-12 05:22:06,892.892 INFO    ] ================================================
[2026-06-12 05:22:07,247.247 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 05:22:07
[2026-06-12 05:22:07,584.584 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 05:22:07,737.737 INFO    ] Initializing speech engine...
[2026-06-12 05:22:07,743.743 INFO    ] 2026-06-12 05:22:07
[2026-06-12 05:22:07,952.952 INFO    ] 2026-06-12 05:22:07
[2026-06-12 05:22:07,981.981 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 05:22:08,168.168 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 05:22:08,180.180 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 05:22:08,369.369 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 05:22:08,398.398 INFO    ] time= 12/06/2026 05:22:08
[2026-06-12 05:22:08,404.404 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 05:22:08,406.406 INFO    ] Checking for existing commands in stream...
[2026-06-12 05:22:08,474.474 INFO    ] No existing commands found in stream
[2026-06-12 05:22:13,483.483 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 05:22:13,486.486 INFO    ] Waiting 1.96 seconds before fallback handling...
[2026-06-12 05:22:15,858.858 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 05:22:15,860.860 INFO    ] Checking for system updates...
[2026-06-12 05:22:15,889.889 INFO    ] 200
[2026-06-12 05:22:15,891.891 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:22:15,921.921 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 05:22:15,923.923 INFO    ] No update needed
[2026-06-12 05:22:15,924.924 INFO    ] Checking for camera pi updates...
[2026-06-12 05:22:15,944.944 INFO    ] 200
[2026-06-12 05:22:15,946.946 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:22:15,971.971 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 05:22:16,009.009 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 05:22:16,011.011 INFO    ] No camera update needed
[2026-06-12 05:22:16,012.012 INFO    ] Script finished. Safe exiting...
[2026-06-12 05:22:16,013.013 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 05:22:16,016.016 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 05:22:16,019.019 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 05:22:18,058.058 INFO    ] ================================================
[2026-06-12 05:22:18,076.076 INFO    ] Launching Daemon at Fri Jun 12 05:22:18 IST 2026
[2026-06-12 05:22:18,087.087 INFO    ] ================================================
[2026-06-12 05:22:18,428.428 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 05:22:18
[2026-06-12 05:22:18,745.745 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 05:22:18,889.889 INFO    ] Initializing speech engine...
[2026-06-12 05:22:18,894.894 INFO    ] 2026-06-12 05:22:18
[2026-06-12 05:22:19,098.098 INFO    ] 2026-06-12 05:22:19
[2026-06-12 05:22:19,126.126 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 05:22:19,309.309 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 05:22:19,312.312 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 05:22:19,512.512 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 05:22:19,537.537 INFO    ] time= 12/06/2026 05:22:19
[2026-06-12 05:22:19,542.542 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 05:22:19,544.544 INFO    ] Checking for existing commands in stream...
[2026-06-12 05:22:19,635.635 INFO    ] No existing commands found in stream
[2026-06-12 05:22:24,644.644 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 05:22:24,647.647 INFO    ] Waiting 0.38 seconds before fallback handling...
[2026-06-12 05:22:25,384.384 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 05:22:25,385.385 INFO    ] Checking for system updates...
[2026-06-12 05:22:25,406.406 INFO    ] 200
[2026-06-12 05:22:25,407.407 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:22:25,438.438 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 05:22:25,439.439 INFO    ] No update needed
[2026-06-12 05:22:25,440.440 INFO    ] Checking for camera pi updates...
[2026-06-12 05:22:25,460.460 INFO    ] 200
[2026-06-12 05:22:25,461.461 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:22:25,485.485 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 05:22:25,523.523 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 05:22:25,524.524 INFO    ] No camera update needed
[2026-06-12 05:22:25,525.525 INFO    ] Script finished. Safe exiting...
[2026-06-12 05:22:25,527.527 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 05:22:25,530.530 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 05:22:25,533.533 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 05:22:27,571.571 INFO    ] ================================================
[2026-06-12 05:22:27,587.587 INFO    ] Launching Daemon at Fri Jun 12 05:22:27 IST 2026
[2026-06-12 05:22:27,599.599 INFO    ] ================================================
[2026-06-12 05:22:27,970.970 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 05:22:27
[2026-06-12 05:22:28,309.309 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 05:22:28,461.461 INFO    ] Initializing speech engine...
[2026-06-12 05:22:28,466.466 INFO    ] 2026-06-12 05:22:28
[2026-06-12 05:22:28,677.677 INFO    ] 2026-06-12 05:22:28
[2026-06-12 05:22:28,707.707 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 05:22:28,894.894 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 05:22:28,903.903 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 05:22:29,050.050 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 05:22:29,105.105 INFO    ] time= 12/06/2026 05:22:29
[2026-06-12 05:22:29,127.127 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 05:22:29,134.134 INFO    ] Checking for existing commands in stream...
[2026-06-12 05:22:29,226.226 INFO    ] No existing commands found in stream
[2026-06-12 05:22:34,240.240 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 05:22:34,243.243 INFO    ] Waiting 2.25 seconds before fallback handling...
[2026-06-12 05:22:36,883.883 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 05:22:36,885.885 INFO    ] Checking for system updates...
[2026-06-12 05:22:36,906.906 INFO    ] 200
[2026-06-12 05:22:36,907.907 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:22:36,938.938 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 05:22:36,940.940 INFO    ] No update needed
[2026-06-12 05:22:36,941.941 INFO    ] Checking for camera pi updates...
[2026-06-12 05:22:36,961.961 INFO    ] 200
[2026-06-12 05:22:36,963.963 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:22:36,986.986 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 05:22:37,033.033 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 05:22:37,035.035 INFO    ] No camera update needed
[2026-06-12 05:22:37,036.036 INFO    ] Script finished. Safe exiting...
[2026-06-12 05:22:37,038.038 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 05:22:37,041.041 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 05:22:37,044.044 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 05:22:39,085.085 INFO    ] ================================================
[2026-06-12 05:22:39,101.101 INFO    ] Launching Daemon at Fri Jun 12 05:22:39 IST 2026
[2026-06-12 05:22:39,113.113 INFO    ] ================================================
[2026-06-12 05:22:39,498.498 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 05:22:39
[2026-06-12 05:22:39,837.837 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 05:22:39,987.987 INFO    ] Initializing speech engine...
[2026-06-12 05:22:39,992.992 INFO    ] 2026-06-12 05:22:39
[2026-06-12 05:22:40,201.201 INFO    ] 2026-06-12 05:22:40
[2026-06-12 05:22:40,229.229 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 05:22:40,608.608 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 05:22:40,635.635 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 05:22:40,763.763 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 05:22:40,766.766 INFO    ] time= 12/06/2026 05:22:40
[2026-06-12 05:22:40,769.769 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 05:22:40,771.771 INFO    ] Checking for existing commands in stream...
[2026-06-12 05:22:40,836.836 INFO    ] No existing commands found in stream
[2026-06-12 05:22:45,846.846 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 05:22:45,849.849 INFO    ] Waiting 0.80 seconds before fallback handling...
[2026-06-12 05:22:47,018.018 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 05:22:47,020.020 INFO    ] Checking for system updates...
[2026-06-12 05:22:47,041.041 INFO    ] 200
[2026-06-12 05:22:47,043.043 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:22:47,073.073 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 05:22:47,075.075 INFO    ] No update needed
[2026-06-12 05:22:47,076.076 INFO    ] Checking for camera pi updates...
[2026-06-12 05:22:47,096.096 INFO    ] 200
[2026-06-12 05:22:47,097.097 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:22:47,121.121 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 05:22:47,158.158 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 05:22:47,159.159 INFO    ] No camera update needed
[2026-06-12 05:22:47,161.161 INFO    ] Script finished. Safe exiting...
[2026-06-12 05:22:47,162.162 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 05:22:47,166.166 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 05:22:47,168.168 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 05:22:49,208.208 INFO    ] ================================================
[2026-06-12 05:22:49,223.223 INFO    ] Launching Daemon at Fri Jun 12 05:22:49 IST 2026
[2026-06-12 05:22:49,235.235 INFO    ] ================================================
[2026-06-12 05:22:49,567.567 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 05:22:49
[2026-06-12 05:22:49,883.883 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 05:22:50,027.027 INFO    ] Initializing speech engine...
[2026-06-12 05:22:50,032.032 INFO    ] 2026-06-12 05:22:50
[2026-06-12 05:22:50,236.236 INFO    ] 2026-06-12 05:22:50
[2026-06-12 05:22:50,266.266 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 05:22:50,449.449 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 05:22:50,459.459 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 05:22:50,605.605 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 05:22:50,658.658 INFO    ] time= 12/06/2026 05:22:50
[2026-06-12 05:22:50,681.681 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 05:22:50,687.687 INFO    ] Checking for existing commands in stream...
[2026-06-12 05:22:50,754.754 INFO    ] No existing commands found in stream
[2026-06-12 05:22:55,768.768 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 05:22:55,771.771 INFO    ] Waiting 1.42 seconds before fallback handling...
[2026-06-12 05:22:57,581.581 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 05:22:57,583.583 INFO    ] Checking for system updates...
[2026-06-12 05:22:57,603.603 INFO    ] 200
[2026-06-12 05:22:57,605.605 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:22:57,635.635 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 05:22:57,636.636 INFO    ] No update needed
[2026-06-12 05:22:57,638.638 INFO    ] Checking for camera pi updates...
[2026-06-12 05:22:57,657.657 INFO    ] 200
[2026-06-12 05:22:57,659.659 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:22:57,682.682 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 05:22:57,724.724 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 05:22:57,725.725 INFO    ] No camera update needed
[2026-06-12 05:22:57,726.726 INFO    ] Script finished. Safe exiting...
[2026-06-12 05:22:57,728.728 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 05:22:57,731.731 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 05:22:57,734.734 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 05:22:59,774.774 INFO    ] ================================================
[2026-06-12 05:22:59,790.790 INFO    ] Launching Daemon at Fri Jun 12 05:22:59 IST 2026
[2026-06-12 05:22:59,801.801 INFO    ] ================================================
[2026-06-12 05:23:00,135.135 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 05:23:00
[2026-06-12 05:23:00,453.453 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 05:23:00,597.597 INFO    ] Initializing speech engine...
[2026-06-12 05:23:00,602.602 INFO    ] 2026-06-12 05:23:00
[2026-06-12 05:23:00,806.806 INFO    ] 2026-06-12 05:23:00
[2026-06-12 05:23:00,835.835 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 05:23:01,372.372 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 05:23:01,376.376 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 05:23:01,511.511 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 05:23:01,514.514 INFO    ] time= 12/06/2026 05:23:01
[2026-06-12 05:23:01,531.531 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 05:23:01,535.535 INFO    ] Checking for existing commands in stream...
[2026-06-12 05:23:01,603.603 INFO    ] No existing commands found in stream
[2026-06-12 05:23:06,614.614 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 05:23:06,617.617 INFO    ] Waiting 2.08 seconds before fallback handling...
[2026-06-12 05:23:09,098.098 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 05:23:09,100.100 INFO    ] Checking for system updates...
[2026-06-12 05:23:09,121.121 INFO    ] 200
[2026-06-12 05:23:09,122.122 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:23:09,155.155 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 05:23:09,156.156 INFO    ] No update needed
[2026-06-12 05:23:09,158.158 INFO    ] Checking for camera pi updates...
[2026-06-12 05:23:09,179.179 INFO    ] 200
[2026-06-12 05:23:09,181.181 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:23:09,204.204 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 05:23:09,241.241 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 05:23:09,242.242 INFO    ] No camera update needed
[2026-06-12 05:23:09,244.244 INFO    ] Script finished. Safe exiting...
[2026-06-12 05:23:09,245.245 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 05:23:09,248.248 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 05:23:09,251.251 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 05:23:11,283.283 INFO    ] ================================================
[2026-06-12 05:23:11,298.298 INFO    ] Launching Daemon at Fri Jun 12 05:23:11 IST 2026
[2026-06-12 05:23:11,309.309 INFO    ] ================================================
[2026-06-12 05:23:11,645.645 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 05:23:11
[2026-06-12 05:23:11,961.961 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 05:23:12,093.093 INFO    ] Initializing speech engine...
[2026-06-12 05:23:12,105.105 INFO    ] 2026-06-12 05:23:12
[2026-06-12 05:23:12,311.311 INFO    ] 2026-06-12 05:23:12
[2026-06-12 05:23:12,340.340 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 05:23:12,524.524 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 05:23:12,532.532 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 05:23:12,677.677 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 05:23:12,730.730 INFO    ] time= 12/06/2026 05:23:12
[2026-06-12 05:23:12,752.752 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 05:23:12,758.758 INFO    ] Checking for existing commands in stream...
[2026-06-12 05:23:12,825.825 INFO    ] No existing commands found in stream
[2026-06-12 05:23:17,839.839 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 05:23:17,842.842 INFO    ] Waiting 2.37 seconds before fallback handling...
[2026-06-12 05:23:20,598.598 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 05:23:20,599.599 INFO    ] Checking for system updates...
[2026-06-12 05:23:20,620.620 INFO    ] 200
[2026-06-12 05:23:20,621.621 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:23:20,654.654 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 05:23:20,655.655 INFO    ] No update needed
[2026-06-12 05:23:20,656.656 INFO    ] Checking for camera pi updates...
[2026-06-12 05:23:20,676.676 INFO    ] 200
[2026-06-12 05:23:20,677.677 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:23:20,700.700 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 05:23:20,736.736 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 05:23:20,738.738 INFO    ] No camera update needed
[2026-06-12 05:23:20,739.739 INFO    ] Script finished. Safe exiting...
[2026-06-12 05:23:20,740.740 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 05:23:20,743.743 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 05:23:20,746.746 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 05:23:22,784.784 INFO    ] ================================================
[2026-06-12 05:23:22,799.799 INFO    ] Launching Daemon at Fri Jun 12 05:23:22 IST 2026
[2026-06-12 05:23:22,810.810 INFO    ] ================================================
[2026-06-12 05:23:23,161.161 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 05:23:23
[2026-06-12 05:23:23,499.499 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 05:23:23,649.649 INFO    ] Initializing speech engine...
[2026-06-12 05:23:23,655.655 INFO    ] 2026-06-12 05:23:23
[2026-06-12 05:23:23,864.864 INFO    ] 2026-06-12 05:23:23
[2026-06-12 05:23:23,893.893 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 05:23:24,038.038 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 05:23:24,082.082 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 05:23:24,220.220 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 05:23:24,288.288 INFO    ] time= 12/06/2026 05:23:24
[2026-06-12 05:23:24,313.313 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 05:23:24,319.319 INFO    ] Checking for existing commands in stream...
[2026-06-12 05:23:24,387.387 INFO    ] No existing commands found in stream
[2026-06-12 05:23:29,412.412 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 05:23:29,415.415 INFO    ] Waiting 0.23 seconds before fallback handling...
[2026-06-12 05:23:30,037.037 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 05:23:30,038.038 INFO    ] Checking for system updates...
[2026-06-12 05:23:30,059.059 INFO    ] 200
[2026-06-12 05:23:30,060.060 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:23:30,090.090 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 05:23:30,092.092 INFO    ] No update needed
[2026-06-12 05:23:30,093.093 INFO    ] Checking for camera pi updates...
[2026-06-12 05:23:30,114.114 INFO    ] 200
[2026-06-12 05:23:30,116.116 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:23:30,142.142 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 05:23:30,182.182 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 05:23:30,184.184 INFO    ] No camera update needed
[2026-06-12 05:23:30,185.185 INFO    ] Script finished. Safe exiting...
[2026-06-12 05:23:30,186.186 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 05:23:30,189.189 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 05:23:30,192.192 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 05:23:32,222.222 INFO    ] ================================================
[2026-06-12 05:23:32,230.230 INFO    ] Launching Daemon at Fri Jun 12 05:23:32 IST 2026
[2026-06-12 05:23:32,236.236 INFO    ] ================================================
[2026-06-12 05:23:32,590.590 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 05:23:32
[2026-06-12 05:23:32,908.908 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 05:23:33,045.045 INFO    ] Initializing speech engine...
[2026-06-12 05:23:33,055.055 INFO    ] 2026-06-12 05:23:33
[2026-06-12 05:23:33,258.258 INFO    ] 2026-06-12 05:23:33
[2026-06-12 05:23:33,286.286 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 05:23:33,471.471 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 05:23:33,481.481 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 05:23:33,631.631 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 05:23:33,680.680 INFO    ] time= 12/06/2026 05:23:33
[2026-06-12 05:23:33,702.702 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 05:23:33,708.708 INFO    ] Checking for existing commands in stream...
[2026-06-12 05:23:33,775.775 INFO    ] No existing commands found in stream
[2026-06-12 05:23:38,804.804 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 05:23:38,807.807 INFO    ] Waiting 4.00 seconds before fallback handling...
[2026-06-12 05:23:43,193.193 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 05:23:43,195.195 INFO    ] Checking for system updates...
[2026-06-12 05:23:43,216.216 INFO    ] 200
[2026-06-12 05:23:43,217.217 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:23:43,250.250 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 05:23:43,251.251 INFO    ] No update needed
[2026-06-12 05:23:43,252.252 INFO    ] Checking for camera pi updates...
[2026-06-12 05:23:43,272.272 INFO    ] 200
[2026-06-12 05:23:43,273.273 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:23:43,296.296 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 05:23:43,333.333 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 05:23:43,334.334 INFO    ] No camera update needed
[2026-06-12 05:23:43,335.335 INFO    ] Script finished. Safe exiting...
[2026-06-12 05:23:43,337.337 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 05:23:43,339.339 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 05:23:43,342.342 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 05:23:45,381.381 INFO    ] ================================================
[2026-06-12 05:23:45,396.396 INFO    ] Launching Daemon at Fri Jun 12 05:23:45 IST 2026
[2026-06-12 05:23:45,407.407 INFO    ] ================================================
[2026-06-12 05:23:45,757.757 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 05:23:45
[2026-06-12 05:23:46,074.074 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 05:23:46,219.219 INFO    ] Initializing speech engine...
[2026-06-12 05:23:46,221.221 INFO    ] 2026-06-12 05:23:46
[2026-06-12 05:23:46,443.443 INFO    ] 2026-06-12 05:23:46
[2026-06-12 05:23:46,473.473 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 05:23:46,674.674 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 05:23:46,684.684 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 05:23:46,876.876 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 05:23:46,917.917 INFO    ] time= 12/06/2026 05:23:46
[2026-06-12 05:23:46,923.923 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 05:23:46,930.930 INFO    ] Checking for existing commands in stream...
[2026-06-12 05:23:46,999.999 INFO    ] No existing commands found in stream
[2026-06-12 05:23:52,010.010 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 05:23:52,013.013 INFO    ] Waiting 0.98 seconds before fallback handling...
[2026-06-12 05:23:53,405.405 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 05:23:53,407.407 INFO    ] Checking for system updates...
[2026-06-12 05:23:53,429.429 INFO    ] 200
[2026-06-12 05:23:53,430.430 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:23:53,460.460 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 05:23:53,462.462 INFO    ] No update needed
[2026-06-12 05:23:53,464.464 INFO    ] Checking for camera pi updates...
[2026-06-12 05:23:53,483.483 INFO    ] 200
[2026-06-12 05:23:53,484.484 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:23:53,507.507 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 05:23:53,547.547 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 05:23:53,548.548 INFO    ] No camera update needed
[2026-06-12 05:23:53,550.550 INFO    ] Script finished. Safe exiting...
[2026-06-12 05:23:53,551.551 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 05:23:53,554.554 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 05:23:53,557.557 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 05:23:55,595.595 INFO    ] ================================================
[2026-06-12 05:23:55,610.610 INFO    ] Launching Daemon at Fri Jun 12 05:23:55 IST 2026
[2026-06-12 05:23:55,621.621 INFO    ] ================================================
[2026-06-12 05:23:55,986.986 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 05:23:55
[2026-06-12 05:23:56,301.301 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 05:23:56,432.432 INFO    ] Initializing speech engine...
[2026-06-12 05:23:56,439.439 INFO    ] 2026-06-12 05:23:56
[2026-06-12 05:23:56,653.653 INFO    ] 2026-06-12 05:23:56
[2026-06-12 05:23:56,682.682 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 05:23:56,867.867 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 05:23:56,875.875 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 05:23:57,022.022 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 05:23:57,076.076 INFO    ] time= 12/06/2026 05:23:57
[2026-06-12 05:23:57,098.098 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 05:23:57,105.105 INFO    ] Checking for existing commands in stream...
[2026-06-12 05:23:57,172.172 INFO    ] No existing commands found in stream
[2026-06-12 05:24:02,180.180 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 05:24:02,182.182 INFO    ] Waiting 0.24 seconds before fallback handling...
[2026-06-12 05:24:02,789.789 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 05:24:02,791.791 INFO    ] Checking for system updates...
[2026-06-12 05:24:02,883.883 INFO    ] 200
[2026-06-12 05:24:02,884.884 INFO    ] {"msg": "Status of machine", "state": "STATE_HEALTH_CHECK", "status": true}
[2026-06-12 05:24:02,886.886 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping update check
[2026-06-12 05:24:02,887.887 INFO    ] Checking for camera pi updates...
[2026-06-12 05:24:03,068.068 INFO    ] 200
[2026-06-12 05:24:03,069.069 INFO    ] {"msg": "Status of machine", "state": "STATE_HEALTH_CHECK", "status": true}
[2026-06-12 05:24:03,071.071 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping camera update check
[2026-06-12 05:24:03,072.072 INFO    ] Script finished. Safe exiting...
[2026-06-12 05:24:03,074.074 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 05:24:03,077.077 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 05:24:03,080.080 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 05:24:05,103.103 INFO    ] ================================================
[2026-06-12 05:24:05,112.112 INFO    ] Launching Daemon at Fri Jun 12 05:24:05 IST 2026
[2026-06-12 05:24:05,118.118 INFO    ] ================================================
[2026-06-12 05:24:05,457.457 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 05:24:05
[2026-06-12 05:24:05,831.831 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 05:24:06,001.001 INFO    ] Initializing speech engine...
[2026-06-12 05:24:06,007.007 INFO    ] 2026-06-12 05:24:06
[2026-06-12 05:24:06,211.211 INFO    ] 2026-06-12 05:24:06
[2026-06-12 05:24:06,240.240 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 05:24:06,425.425 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 05:24:06,434.434 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 05:24:06,585.585 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 05:24:06,633.633 INFO    ] time= 12/06/2026 05:24:06
[2026-06-12 05:24:06,656.656 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 05:24:06,662.662 INFO    ] Checking for existing commands in stream...
[2026-06-12 05:24:06,729.729 INFO    ] No existing commands found in stream
[2026-06-12 05:24:11,744.744 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 05:24:11,747.747 INFO    ] Waiting 3.59 seconds before fallback handling...
[2026-06-12 05:24:15,763.763 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 05:24:15,765.765 INFO    ] Checking for system updates...
[2026-06-12 05:24:15,787.787 INFO    ] 200
[2026-06-12 05:24:15,788.788 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:24:15,821.821 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 05:24:15,822.822 INFO    ] No update needed
[2026-06-12 05:24:15,823.823 INFO    ] Checking for camera pi updates...
[2026-06-12 05:24:15,843.843 INFO    ] 200
[2026-06-12 05:24:15,844.844 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:24:15,868.868 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 05:24:15,906.906 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 05:24:15,907.907 INFO    ] No camera update needed
[2026-06-12 05:24:15,909.909 INFO    ] Script finished. Safe exiting...
[2026-06-12 05:24:15,910.910 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 05:24:15,914.914 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 05:24:15,916.916 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 05:24:17,955.955 INFO    ] ================================================
[2026-06-12 05:24:17,970.970 INFO    ] Launching Daemon at Fri Jun 12 05:24:17 IST 2026
[2026-06-12 05:24:17,981.981 INFO    ] ================================================
[2026-06-12 05:24:18,333.333 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 05:24:18
[2026-06-12 05:24:18,644.644 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 05:24:18,776.776 INFO    ] Initializing speech engine...
[2026-06-12 05:24:18,781.781 INFO    ] 2026-06-12 05:24:18
[2026-06-12 05:24:19,008.008 INFO    ] 2026-06-12 05:24:18
[2026-06-12 05:24:19,038.038 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 05:24:19,183.183 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 05:24:19,205.205 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 05:24:19,376.376 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 05:24:19,427.427 INFO    ] time= 12/06/2026 05:24:19
[2026-06-12 05:24:19,471.471 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 05:24:19,477.477 INFO    ] Checking for existing commands in stream...
[2026-06-12 05:24:19,578.578 INFO    ] No existing commands found in stream
[2026-06-12 05:24:24,587.587 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 05:24:24,590.590 INFO    ] Waiting 1.73 seconds before fallback handling...
[2026-06-12 05:24:26,696.696 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 05:24:26,698.698 INFO    ] Checking for system updates...
[2026-06-12 05:24:26,718.718 INFO    ] 200
[2026-06-12 05:24:26,719.719 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:24:26,752.752 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 05:24:26,753.753 INFO    ] No update needed
[2026-06-12 05:24:26,755.755 INFO    ] Checking for camera pi updates...
[2026-06-12 05:24:26,775.775 INFO    ] 200
[2026-06-12 05:24:26,776.776 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:24:26,799.799 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 05:24:26,839.839 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 05:24:26,840.840 INFO    ] No camera update needed
[2026-06-12 05:24:26,842.842 INFO    ] Script finished. Safe exiting...
[2026-06-12 05:24:26,843.843 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 05:24:26,846.846 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 05:24:26,848.848 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 05:24:28,887.887 INFO    ] ================================================
[2026-06-12 05:24:28,902.902 INFO    ] Launching Daemon at Fri Jun 12 05:24:28 IST 2026
[2026-06-12 05:24:28,913.913 INFO    ] ================================================
[2026-06-12 05:24:29,289.289 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 05:24:29
[2026-06-12 05:24:29,625.625 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 05:24:29,774.774 INFO    ] Initializing speech engine...
[2026-06-12 05:24:29,779.779 INFO    ] 2026-06-12 05:24:29
[2026-06-12 05:24:29,987.987 INFO    ] 2026-06-12 05:24:29
[2026-06-12 05:24:30,015.015 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 05:24:30,197.197 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 05:24:30,206.206 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 05:24:30,397.397 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 05:24:30,425.425 INFO    ] time= 12/06/2026 05:24:30
[2026-06-12 05:24:30,431.431 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 05:24:30,433.433 INFO    ] Checking for existing commands in stream...
[2026-06-12 05:24:30,500.500 INFO    ] No existing commands found in stream
[2026-06-12 05:24:35,515.515 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 05:24:35,518.518 INFO    ] Waiting 1.13 seconds before fallback handling...
[2026-06-12 05:24:37,088.088 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 05:24:37,089.089 INFO    ] Checking for system updates...
[2026-06-12 05:24:37,111.111 INFO    ] 200
[2026-06-12 05:24:37,113.113 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:24:37,147.147 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 05:24:37,149.149 INFO    ] No update needed
[2026-06-12 05:24:37,150.150 INFO    ] Checking for camera pi updates...
[2026-06-12 05:24:37,173.173 INFO    ] 200
[2026-06-12 05:24:37,175.175 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:24:37,198.198 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 05:24:37,235.235 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 05:24:37,236.236 INFO    ] No camera update needed
[2026-06-12 05:24:37,238.238 INFO    ] Script finished. Safe exiting...
[2026-06-12 05:24:37,239.239 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 05:24:37,242.242 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 05:24:37,244.244 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 05:24:39,283.283 INFO    ] ================================================
[2026-06-12 05:24:39,298.298 INFO    ] Launching Daemon at Fri Jun 12 05:24:39 IST 2026
[2026-06-12 05:24:39,309.309 INFO    ] ================================================
[2026-06-12 05:24:39,649.649 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 05:24:39
[2026-06-12 05:24:39,965.965 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 05:24:40,103.103 INFO    ] Initializing speech engine...
[2026-06-12 05:24:40,114.114 INFO    ] 2026-06-12 05:24:40
[2026-06-12 05:24:40,317.317 INFO    ] 2026-06-12 05:24:40
[2026-06-12 05:24:40,346.346 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 05:24:40,529.529 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 05:24:40,539.539 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 05:24:40,714.714 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 05:24:40,748.748 INFO    ] time= 12/06/2026 05:24:40
[2026-06-12 05:24:40,758.758 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 05:24:40,764.764 INFO    ] Checking for existing commands in stream...
[2026-06-12 05:24:40,829.829 INFO    ] No existing commands found in stream
[2026-06-12 05:24:45,840.840 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 05:24:45,843.843 INFO    ] Waiting 0.75 seconds before fallback handling...
[2026-06-12 05:24:46,987.987 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 05:24:46,988.988 INFO    ] Checking for system updates...
[2026-06-12 05:24:47,009.009 INFO    ] 200
[2026-06-12 05:24:47,010.010 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:24:47,040.040 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 05:24:47,042.042 INFO    ] No update needed
[2026-06-12 05:24:47,043.043 INFO    ] Checking for camera pi updates...
[2026-06-12 05:24:47,062.062 INFO    ] 200
[2026-06-12 05:24:47,063.063 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:24:47,088.088 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 05:24:47,129.129 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 05:24:47,131.131 INFO    ] No camera update needed
[2026-06-12 05:24:47,132.132 INFO    ] Script finished. Safe exiting...
[2026-06-12 05:24:47,134.134 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 05:24:47,136.136 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 05:24:47,139.139 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 05:24:49,177.177 INFO    ] ================================================
[2026-06-12 05:24:49,193.193 INFO    ] Launching Daemon at Fri Jun 12 05:24:49 IST 2026
[2026-06-12 05:24:49,205.205 INFO    ] ================================================
[2026-06-12 05:24:49,559.559 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 05:24:49
[2026-06-12 05:24:49,870.870 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 05:24:49,999.999 INFO    ] Initializing speech engine...
[2026-06-12 05:24:50,003.003 INFO    ] 2026-06-12 05:24:50
[2026-06-12 05:24:50,220.220 INFO    ] 2026-06-12 05:24:50
[2026-06-12 05:24:50,250.250 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 05:24:50,436.436 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 05:24:50,445.445 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 05:24:50,574.574 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 05:24:50,641.641 INFO    ] time= 12/06/2026 05:24:50
[2026-06-12 05:24:50,666.666 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 05:24:50,672.672 INFO    ] Checking for existing commands in stream...
[2026-06-12 05:24:50,764.764 INFO    ] No existing commands found in stream
[2026-06-12 05:24:55,778.778 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 05:24:55,780.780 INFO    ] Waiting 2.45 seconds before fallback handling...
[2026-06-12 05:24:58,607.607 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 05:24:58,608.608 INFO    ] Checking for system updates...
[2026-06-12 05:24:58,630.630 INFO    ] 200
[2026-06-12 05:24:58,631.631 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:24:58,663.663 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 05:24:58,664.664 INFO    ] No update needed
[2026-06-12 05:24:58,666.666 INFO    ] Checking for camera pi updates...
[2026-06-12 05:24:58,685.685 INFO    ] 200
[2026-06-12 05:24:58,686.686 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:24:58,709.709 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 05:24:58,750.750 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 05:24:58,751.751 INFO    ] No camera update needed
[2026-06-12 05:24:58,752.752 INFO    ] Script finished. Safe exiting...
[2026-06-12 05:24:58,754.754 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 05:24:58,756.756 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 05:24:58,759.759 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 05:25:00,799.799 INFO    ] ================================================
[2026-06-12 05:25:00,815.815 INFO    ] Launching Daemon at Fri Jun 12 05:25:00 IST 2026
[2026-06-12 05:25:00,826.826 INFO    ] ================================================
[2026-06-12 05:25:01,162.162 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 05:25:01
[2026-06-12 05:25:01,475.475 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 05:25:01,613.613 INFO    ] Initializing speech engine...
[2026-06-12 05:25:01,623.623 INFO    ] 2026-06-12 05:25:01
[2026-06-12 05:25:01,830.830 INFO    ] 2026-06-12 05:25:01
[2026-06-12 05:25:01,858.858 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 05:25:02,024.024 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 05:25:02,027.027 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 05:25:02,198.198 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 05:25:02,200.200 INFO    ] time= 12/06/2026 05:25:02
[2026-06-12 05:25:02,202.202 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 05:25:02,204.204 INFO    ] Checking for existing commands in stream...
[2026-06-12 05:25:02,265.265 INFO    ] No existing commands found in stream
[2026-06-12 05:25:07,274.274 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 05:25:07,277.277 INFO    ] Waiting 2.28 seconds before fallback handling...
[2026-06-12 05:25:09,910.910 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 05:25:09,911.911 INFO    ] Checking for system updates...
[2026-06-12 05:25:09,932.932 INFO    ] 200
[2026-06-12 05:25:09,933.933 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:25:09,963.963 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 05:25:09,965.965 INFO    ] No update needed
[2026-06-12 05:25:09,966.966 INFO    ] Checking for camera pi updates...
[2026-06-12 05:25:09,985.985 INFO    ] 200
[2026-06-12 05:25:09,986.986 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:25:10,011.011 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 05:25:10,047.047 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 05:25:10,048.048 INFO    ] No camera update needed
[2026-06-12 05:25:10,050.050 INFO    ] Script finished. Safe exiting...
[2026-06-12 05:25:10,051.051 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 05:25:10,054.054 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 05:25:10,056.056 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 05:25:12,095.095 INFO    ] ================================================
[2026-06-12 05:25:12,110.110 INFO    ] Launching Daemon at Fri Jun 12 05:25:12 IST 2026
[2026-06-12 05:25:12,121.121 INFO    ] ================================================
[2026-06-12 05:25:12,448.448 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 05:25:12
[2026-06-12 05:25:12,762.762 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 05:25:12,906.906 INFO    ] Initializing speech engine...
[2026-06-12 05:25:12,912.912 INFO    ] 2026-06-12 05:25:12
[2026-06-12 05:25:13,115.115 INFO    ] 2026-06-12 05:25:13
[2026-06-12 05:25:13,143.143 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 05:25:13,327.327 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 05:25:13,337.337 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 05:25:13,515.515 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 05:25:13,553.553 INFO    ] time= 12/06/2026 05:25:13
[2026-06-12 05:25:13,555.555 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 05:25:13,561.561 INFO    ] Checking for existing commands in stream...
[2026-06-12 05:25:13,628.628 INFO    ] No existing commands found in stream
[2026-06-12 05:25:18,652.652 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 05:25:18,655.655 INFO    ] Waiting 2.58 seconds before fallback handling...
[2026-06-12 05:25:21,632.632 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 05:25:21,633.633 INFO    ] Checking for system updates...
[2026-06-12 05:25:21,654.654 INFO    ] 200
[2026-06-12 05:25:21,655.655 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:25:21,688.688 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 05:25:21,689.689 INFO    ] No update needed
[2026-06-12 05:25:21,691.691 INFO    ] Checking for camera pi updates...
[2026-06-12 05:25:21,711.711 INFO    ] 200
[2026-06-12 05:25:21,713.713 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:25:21,737.737 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 05:25:21,777.777 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 05:25:21,778.778 INFO    ] No camera update needed
[2026-06-12 05:25:21,779.779 INFO    ] Script finished. Safe exiting...
[2026-06-12 05:25:21,781.781 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 05:25:21,784.784 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 05:25:21,787.787 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 05:25:23,826.826 INFO    ] ================================================
[2026-06-12 05:25:23,842.842 INFO    ] Launching Daemon at Fri Jun 12 05:25:23 IST 2026
[2026-06-12 05:25:23,854.854 INFO    ] ================================================
[2026-06-12 05:25:24,209.209 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 05:25:24
[2026-06-12 05:25:24,525.525 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 05:25:24,670.670 INFO    ] Initializing speech engine...
[2026-06-12 05:25:24,676.676 INFO    ] 2026-06-12 05:25:24
[2026-06-12 05:25:24,879.879 INFO    ] 2026-06-12 05:25:24
[2026-06-12 05:25:24,908.908 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 05:25:25,035.035 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 05:25:25,094.094 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 05:25:25,237.237 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 05:25:25,299.299 INFO    ] time= 12/06/2026 05:25:25
[2026-06-12 05:25:25,323.323 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 05:25:25,329.329 INFO    ] Checking for existing commands in stream...
[2026-06-12 05:25:25,396.396 INFO    ] No existing commands found in stream
[2026-06-12 05:25:30,410.410 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 05:25:30,413.413 INFO    ] Waiting 2.06 seconds before fallback handling...
[2026-06-12 05:25:32,859.859 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 05:25:32,861.861 INFO    ] Checking for system updates...
[2026-06-12 05:25:32,895.895 INFO    ] 200
[2026-06-12 05:25:32,898.898 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:25:32,953.953 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 05:25:32,955.955 INFO    ] No update needed
[2026-06-12 05:25:32,958.958 INFO    ] Checking for camera pi updates...
[2026-06-12 05:25:32,981.981 INFO    ] 200
[2026-06-12 05:25:32,982.982 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:25:33,006.006 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 05:25:33,029.029 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 05:25:33,031.031 INFO    ] No camera update needed
[2026-06-12 05:25:33,032.032 INFO    ] Script finished. Safe exiting...
[2026-06-12 05:25:33,033.033 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 05:25:33,036.036 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 05:25:33,039.039 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 05:25:35,079.079 INFO    ] ================================================
[2026-06-12 05:25:35,095.095 INFO    ] Launching Daemon at Fri Jun 12 05:25:35 IST 2026
[2026-06-12 05:25:35,106.106 INFO    ] ================================================
[2026-06-12 05:25:35,464.464 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 05:25:35
[2026-06-12 05:25:35,784.784 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 05:25:35,921.921 INFO    ] Initializing speech engine...
[2026-06-12 05:25:35,931.931 INFO    ] 2026-06-12 05:25:35
[2026-06-12 05:25:36,136.136 INFO    ] 2026-06-12 05:25:36
[2026-06-12 05:25:36,163.163 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 05:25:36,348.348 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 05:25:36,356.356 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 05:25:36,485.485 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 05:25:36,549.549 INFO    ] time= 12/06/2026 05:25:36
[2026-06-12 05:25:36,577.577 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 05:25:36,583.583 INFO    ] Checking for existing commands in stream...
[2026-06-12 05:25:36,652.652 INFO    ] No existing commands found in stream
[2026-06-12 05:25:41,666.666 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 05:25:41,669.669 INFO    ] Waiting 3.60 seconds before fallback handling...
[2026-06-12 05:25:45,692.692 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 05:25:45,693.693 INFO    ] Checking for system updates...
[2026-06-12 05:25:45,716.716 INFO    ] 200
[2026-06-12 05:25:45,717.717 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:25:45,751.751 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 05:25:45,753.753 INFO    ] No update needed
[2026-06-12 05:25:45,754.754 INFO    ] Checking for camera pi updates...
[2026-06-12 05:25:45,773.773 INFO    ] 200
[2026-06-12 05:25:45,775.775 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:25:45,798.798 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 05:25:45,840.840 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 05:25:45,841.841 INFO    ] No camera update needed
[2026-06-12 05:25:45,843.843 INFO    ] Script finished. Safe exiting...
[2026-06-12 05:25:45,844.844 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 05:25:45,847.847 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 05:25:45,850.850 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 05:25:47,892.892 INFO    ] ================================================
[2026-06-12 05:25:47,907.907 INFO    ] Launching Daemon at Fri Jun 12 05:25:47 IST 2026
[2026-06-12 05:25:47,918.918 INFO    ] ================================================
[2026-06-12 05:25:48,272.272 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 05:25:48
[2026-06-12 05:25:48,585.585 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 05:25:48,728.728 INFO    ] Initializing speech engine...
[2026-06-12 05:25:48,733.733 INFO    ] 2026-06-12 05:25:48
[2026-06-12 05:25:48,940.940 INFO    ] 2026-06-12 05:25:48
[2026-06-12 05:25:48,972.972 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 05:25:49,159.159 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 05:25:49,162.162 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 05:25:49,297.297 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 05:25:49,344.344 INFO    ] time= 12/06/2026 05:25:49
[2026-06-12 05:25:49,383.383 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 05:25:49,400.400 INFO    ] Checking for existing commands in stream...
[2026-06-12 05:25:49,477.477 INFO    ] No existing commands found in stream
[2026-06-12 05:25:54,491.491 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 05:25:54,494.494 INFO    ] Waiting 3.72 seconds before fallback handling...
[2026-06-12 05:25:58,599.599 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 05:25:58,601.601 INFO    ] Checking for system updates...
[2026-06-12 05:25:58,622.622 INFO    ] 200
[2026-06-12 05:25:58,624.624 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:25:58,654.654 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 05:25:58,655.655 INFO    ] No update needed
[2026-06-12 05:25:58,656.656 INFO    ] Checking for camera pi updates...
[2026-06-12 05:25:58,677.677 INFO    ] 200
[2026-06-12 05:25:58,678.678 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:25:58,703.703 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 05:25:58,736.736 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 05:25:58,738.738 INFO    ] No camera update needed
[2026-06-12 05:25:58,739.739 INFO    ] Script finished. Safe exiting...
[2026-06-12 05:25:58,741.741 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 05:25:58,743.743 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 05:25:58,746.746 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 05:26:00,786.786 INFO    ] ================================================
[2026-06-12 05:26:00,801.801 INFO    ] Launching Daemon at Fri Jun 12 05:26:00 IST 2026
[2026-06-12 05:26:00,812.812 INFO    ] ================================================
[2026-06-12 05:26:01,161.161 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 05:26:01
[2026-06-12 05:26:01,574.574 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 05:26:01,733.733 INFO    ] Initializing speech engine...
[2026-06-12 05:26:01,738.738 INFO    ] 2026-06-12 05:26:01
[2026-06-12 05:26:01,982.982 INFO    ] 2026-06-12 05:26:01
[2026-06-12 05:26:02,033.033 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 05:26:02,201.201 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 05:26:02,207.207 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 05:26:02,345.345 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 05:26:02,402.402 INFO    ] time= 12/06/2026 05:26:02
[2026-06-12 05:26:02,453.453 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 05:26:02,526.526 INFO    ] Checking for existing commands in stream...
[2026-06-12 05:26:02,622.622 INFO    ] No existing commands found in stream
[2026-06-12 05:26:07,632.632 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 05:26:07,641.641 INFO    ] Waiting 1.70 seconds before fallback handling...
[2026-06-12 05:26:09,759.759 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 05:26:09,761.761 INFO    ] Checking for system updates...
[2026-06-12 05:26:09,781.781 INFO    ] 200
[2026-06-12 05:26:09,783.783 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:26:09,814.814 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 05:26:09,815.815 INFO    ] No update needed
[2026-06-12 05:26:09,816.816 INFO    ] Checking for camera pi updates...
[2026-06-12 05:26:09,837.837 INFO    ] 200
[2026-06-12 05:26:09,839.839 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:26:09,864.864 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 05:26:10,013.013 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 05:26:10,015.015 INFO    ] No camera update needed
[2026-06-12 05:26:10,016.016 INFO    ] Script finished. Safe exiting...
[2026-06-12 05:26:10,017.017 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 05:26:10,020.020 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 05:26:10,023.023 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 05:26:12,062.062 INFO    ] ================================================
[2026-06-12 05:26:12,077.077 INFO    ] Launching Daemon at Fri Jun 12 05:26:12 IST 2026
[2026-06-12 05:26:12,088.088 INFO    ] ================================================
[2026-06-12 05:26:12,455.455 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 05:26:12
[2026-06-12 05:26:12,772.772 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 05:26:12,920.920 INFO    ] Initializing speech engine...
[2026-06-12 05:26:12,925.925 INFO    ] 2026-06-12 05:26:12
[2026-06-12 05:26:13,143.143 INFO    ] 2026-06-12 05:26:13
[2026-06-12 05:26:13,173.173 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 05:26:13,370.370 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 05:26:13,374.374 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 05:26:13,514.514 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 05:26:13,570.570 INFO    ] time= 12/06/2026 05:26:13
[2026-06-12 05:26:13,609.609 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 05:26:13,621.621 INFO    ] Checking for existing commands in stream...
[2026-06-12 05:26:13,697.697 INFO    ] No existing commands found in stream
[2026-06-12 05:26:18,706.706 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 05:26:18,714.714 INFO    ] Waiting 3.79 seconds before fallback handling...
[2026-06-12 05:26:22,912.912 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 05:26:22,913.913 INFO    ] Checking for system updates...
[2026-06-12 05:26:22,934.934 INFO    ] 200
[2026-06-12 05:26:22,935.935 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:26:22,965.965 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 05:26:22,967.967 INFO    ] No update needed
[2026-06-12 05:26:22,968.968 INFO    ] Checking for camera pi updates...
[2026-06-12 05:26:22,987.987 INFO    ] 200
[2026-06-12 05:26:22,989.989 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:26:23,013.013 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 05:26:23,047.047 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 05:26:23,048.048 INFO    ] No camera update needed
[2026-06-12 05:26:23,050.050 INFO    ] Script finished. Safe exiting...
[2026-06-12 05:26:23,051.051 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 05:26:23,054.054 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 05:26:23,057.057 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 05:26:25,096.096 INFO    ] ================================================
[2026-06-12 05:26:25,111.111 INFO    ] Launching Daemon at Fri Jun 12 05:26:25 IST 2026
[2026-06-12 05:26:25,122.122 INFO    ] ================================================
[2026-06-12 05:26:25,487.487 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 05:26:25
[2026-06-12 05:26:25,799.799 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 05:26:25,932.932 INFO    ] Initializing speech engine...
[2026-06-12 05:26:25,940.940 INFO    ] 2026-06-12 05:26:25
[2026-06-12 05:26:26,162.162 INFO    ] 2026-06-12 05:26:26
[2026-06-12 05:26:26,193.193 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 05:26:26,389.389 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 05:26:26,400.400 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 05:26:26,538.538 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 05:26:26,607.607 INFO    ] time= 12/06/2026 05:26:26
[2026-06-12 05:26:26,635.635 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 05:26:26,637.637 INFO    ] Checking for existing commands in stream...
[2026-06-12 05:26:26,711.711 INFO    ] No existing commands found in stream
[2026-06-12 05:26:31,720.720 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 05:26:31,722.722 INFO    ] Waiting 3.95 seconds before fallback handling...
[2026-06-12 05:26:36,036.036 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 05:26:36,038.038 INFO    ] Checking for system updates...
[2026-06-12 05:26:36,058.058 INFO    ] 200
[2026-06-12 05:26:36,060.060 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:26:36,093.093 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 05:26:36,094.094 INFO    ] No update needed
[2026-06-12 05:26:36,095.095 INFO    ] Checking for camera pi updates...
[2026-06-12 05:26:36,115.115 INFO    ] 200
[2026-06-12 05:26:36,117.117 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:26:36,141.141 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 05:26:36,177.177 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 05:26:36,179.179 INFO    ] No camera update needed
[2026-06-12 05:26:36,180.180 INFO    ] Script finished. Safe exiting...
[2026-06-12 05:26:36,181.181 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 05:26:36,184.184 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 05:26:36,187.187 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 05:26:38,225.225 INFO    ] ================================================
[2026-06-12 05:26:38,240.240 INFO    ] Launching Daemon at Fri Jun 12 05:26:38 IST 2026
[2026-06-12 05:26:38,251.251 INFO    ] ================================================
[2026-06-12 05:26:38,607.607 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 05:26:38
[2026-06-12 05:26:38,917.917 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 05:26:39,059.059 INFO    ] Initializing speech engine...
[2026-06-12 05:26:39,064.064 INFO    ] 2026-06-12 05:26:39
[2026-06-12 05:26:39,268.268 INFO    ] 2026-06-12 05:26:39
[2026-06-12 05:26:39,296.296 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 05:26:39,428.428 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 05:26:39,470.470 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 05:26:39,596.596 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 05:26:39,597.597 INFO    ] time= 12/06/2026 05:26:39
[2026-06-12 05:26:39,598.598 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 05:26:39,600.600 INFO    ] Checking for existing commands in stream...
[2026-06-12 05:26:39,715.715 INFO    ] No existing commands found in stream
[2026-06-12 05:26:44,725.725 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 05:26:44,727.727 INFO    ] Waiting 3.60 seconds before fallback handling...
[2026-06-12 05:26:48,736.736 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 05:26:48,738.738 INFO    ] Checking for system updates...
[2026-06-12 05:26:48,758.758 INFO    ] 200
[2026-06-12 05:26:48,760.760 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:26:48,790.790 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 05:26:48,792.792 INFO    ] No update needed
[2026-06-12 05:26:48,793.793 INFO    ] Checking for camera pi updates...
[2026-06-12 05:26:48,812.812 INFO    ] 200
[2026-06-12 05:26:48,813.813 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:26:48,836.836 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 05:26:48,876.876 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 05:26:48,877.877 INFO    ] No camera update needed
[2026-06-12 05:26:48,878.878 INFO    ] Script finished. Safe exiting...
[2026-06-12 05:26:48,880.880 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 05:26:48,883.883 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 05:26:48,885.885 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 05:26:50,925.925 INFO    ] ================================================
[2026-06-12 05:26:50,940.940 INFO    ] Launching Daemon at Fri Jun 12 05:26:50 IST 2026
[2026-06-12 05:26:50,951.951 INFO    ] ================================================
[2026-06-12 05:26:51,315.315 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 05:26:51
[2026-06-12 05:26:51,625.625 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 05:26:51,758.758 INFO    ] Initializing speech engine...
[2026-06-12 05:26:51,762.762 INFO    ] 2026-06-12 05:26:51
[2026-06-12 05:26:51,990.990 INFO    ] 2026-06-12 05:26:51
[2026-06-12 05:26:52,020.020 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 05:26:52,152.152 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 05:26:52,210.210 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 05:26:52,383.383 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 05:26:52,439.439 INFO    ] time= 12/06/2026 05:26:52
[2026-06-12 05:26:52,464.464 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 05:26:52,466.466 INFO    ] Checking for existing commands in stream...
[2026-06-12 05:26:52,542.542 INFO    ] No existing commands found in stream
[2026-06-12 05:26:57,571.571 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 05:26:57,574.574 INFO    ] Waiting 3.80 seconds before fallback handling...
[2026-06-12 05:27:01,816.816 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 05:27:01,819.819 INFO    ] Checking for system updates...
[2026-06-12 05:27:01,852.852 INFO    ] 200
[2026-06-12 05:27:01,854.854 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:27:01,897.897 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 05:27:01,899.899 INFO    ] No update needed
[2026-06-12 05:27:01,901.901 INFO    ] Checking for camera pi updates...
[2026-06-12 05:27:01,933.933 INFO    ] 200
[2026-06-12 05:27:01,935.935 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:27:01,969.969 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 05:27:01,996.996 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 05:27:01,998.998 INFO    ] No camera update needed
[2026-06-12 05:27:02,000.000 INFO    ] Script finished. Safe exiting...
[2026-06-12 05:27:02,002.002 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 05:27:02,006.006 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 05:27:02,012.012 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 05:27:04,053.053 INFO    ] ================================================
[2026-06-12 05:27:04,069.069 INFO    ] Launching Daemon at Fri Jun 12 05:27:04 IST 2026
[2026-06-12 05:27:04,080.080 INFO    ] ================================================
[2026-06-12 05:27:04,440.440 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 05:27:04
[2026-06-12 05:27:04,751.751 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 05:27:04,883.883 INFO    ] Initializing speech engine...
[2026-06-12 05:27:04,892.892 INFO    ] 2026-06-12 05:27:04
[2026-06-12 05:27:05,114.114 INFO    ] 2026-06-12 05:27:05
[2026-06-12 05:27:05,145.145 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 05:27:05,342.342 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 05:27:05,346.346 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 05:27:05,502.502 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 05:27:05,563.563 INFO    ] time= 12/06/2026 05:27:05
[2026-06-12 05:27:05,589.589 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 05:27:05,591.591 INFO    ] Checking for existing commands in stream...
[2026-06-12 05:27:05,666.666 INFO    ] No existing commands found in stream
[2026-06-12 05:27:10,677.677 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 05:27:10,679.679 INFO    ] Waiting 2.38 seconds before fallback handling...
[2026-06-12 05:27:13,453.453 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 05:27:13,454.454 INFO    ] Checking for system updates...
[2026-06-12 05:27:13,476.476 INFO    ] 200
[2026-06-12 05:27:13,477.477 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:27:13,509.509 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 05:27:13,511.511 INFO    ] No update needed
[2026-06-12 05:27:13,512.512 INFO    ] Checking for camera pi updates...
[2026-06-12 05:27:13,532.532 INFO    ] 200
[2026-06-12 05:27:13,534.534 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:27:13,559.559 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 05:27:13,599.599 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 05:27:13,601.601 INFO    ] No camera update needed
[2026-06-12 05:27:13,602.602 INFO    ] Script finished. Safe exiting...
[2026-06-12 05:27:13,603.603 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 05:27:13,606.606 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 05:27:13,609.609 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 05:27:15,649.649 INFO    ] ================================================
[2026-06-12 05:27:15,664.664 INFO    ] Launching Daemon at Fri Jun 12 05:27:15 IST 2026
[2026-06-12 05:27:15,676.676 INFO    ] ================================================
[2026-06-12 05:27:16,037.037 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 05:27:16
[2026-06-12 05:27:16,353.353 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 05:27:16,485.485 INFO    ] Initializing speech engine...
[2026-06-12 05:27:16,488.488 INFO    ] 2026-06-12 05:27:16
[2026-06-12 05:27:16,705.705 INFO    ] 2026-06-12 05:27:16
[2026-06-12 05:27:16,733.733 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 05:27:16,921.921 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 05:27:16,931.931 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 05:27:17,056.056 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 05:27:17,114.114 INFO    ] time= 12/06/2026 05:27:17
[2026-06-12 05:27:17,143.143 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 05:27:17,145.145 INFO    ] Checking for existing commands in stream...
[2026-06-12 05:27:17,204.204 INFO    ] No existing commands found in stream
[2026-06-12 05:27:22,213.213 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 05:27:22,216.216 INFO    ] Waiting 1.99 seconds before fallback handling...
[2026-06-12 05:27:24,597.597 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 05:27:24,598.598 INFO    ] Checking for system updates...
[2026-06-12 05:27:24,619.619 INFO    ] 200
[2026-06-12 05:27:24,621.621 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:27:24,651.651 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 05:27:24,652.652 INFO    ] No update needed
[2026-06-12 05:27:24,654.654 INFO    ] Checking for camera pi updates...
[2026-06-12 05:27:24,675.675 INFO    ] 200
[2026-06-12 05:27:24,676.676 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:27:24,703.703 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 05:27:24,745.745 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 05:27:24,747.747 INFO    ] No camera update needed
[2026-06-12 05:27:24,748.748 INFO    ] Script finished. Safe exiting...
[2026-06-12 05:27:24,749.749 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 05:27:24,752.752 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 05:27:24,755.755 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 05:27:26,795.795 INFO    ] ================================================
[2026-06-12 05:27:26,812.812 INFO    ] Launching Daemon at Fri Jun 12 05:27:26 IST 2026
[2026-06-12 05:27:26,822.822 INFO    ] ================================================
[2026-06-12 05:27:27,192.192 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 05:27:27
[2026-06-12 05:27:27,503.503 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 05:27:27,633.633 INFO    ] Initializing speech engine...
[2026-06-12 05:27:27,638.638 INFO    ] 2026-06-12 05:27:27
[2026-06-12 05:27:27,856.856 INFO    ] 2026-06-12 05:27:27
[2026-06-12 05:27:27,886.886 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 05:27:28,072.072 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 05:27:28,082.082 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 05:27:28,229.229 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 05:27:28,281.281 INFO    ] time= 12/06/2026 05:27:28
[2026-06-12 05:27:28,305.305 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 05:27:28,311.311 INFO    ] Checking for existing commands in stream...
[2026-06-12 05:27:28,378.378 INFO    ] No existing commands found in stream
[2026-06-12 05:27:33,392.392 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 05:27:33,395.395 INFO    ] Waiting 3.50 seconds before fallback handling...
[2026-06-12 05:27:37,265.265 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 05:27:37,266.266 INFO    ] Checking for system updates...
[2026-06-12 05:27:37,287.287 INFO    ] 200
[2026-06-12 05:27:37,288.288 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:27:37,318.318 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 05:27:37,319.319 INFO    ] No update needed
[2026-06-12 05:27:37,321.321 INFO    ] Checking for camera pi updates...
[2026-06-12 05:27:37,340.340 INFO    ] 200
[2026-06-12 05:27:37,341.341 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:27:37,368.368 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 05:27:37,415.415 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 05:27:37,416.416 INFO    ] No camera update needed
[2026-06-12 05:27:37,417.417 INFO    ] Script finished. Safe exiting...
[2026-06-12 05:27:37,419.419 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 05:27:37,422.422 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 05:27:37,424.424 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 05:27:39,464.464 INFO    ] ================================================
[2026-06-12 05:27:39,480.480 INFO    ] Launching Daemon at Fri Jun 12 05:27:39 IST 2026
[2026-06-12 05:27:39,492.492 INFO    ] ================================================
[2026-06-12 05:27:39,849.849 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 05:27:39
[2026-06-12 05:27:40,161.161 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 05:27:40,292.292 INFO    ] Initializing speech engine...
[2026-06-12 05:27:40,300.300 INFO    ] 2026-06-12 05:27:40
[2026-06-12 05:27:40,514.514 INFO    ] 2026-06-12 05:27:40
[2026-06-12 05:27:40,543.543 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 05:27:40,728.728 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 05:27:40,738.738 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 05:27:40,933.933 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 05:27:40,957.957 INFO    ] time= 12/06/2026 05:27:40
[2026-06-12 05:27:40,963.963 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 05:27:40,964.964 INFO    ] Checking for existing commands in stream...
[2026-06-12 05:27:41,032.032 INFO    ] No existing commands found in stream
[2026-06-12 05:27:46,047.047 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 05:27:46,049.049 INFO    ] Waiting 0.19 seconds before fallback handling...
[2026-06-12 05:27:46,638.638 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 05:27:46,640.640 INFO    ] Checking for system updates...
[2026-06-12 05:27:46,661.661 INFO    ] 200
[2026-06-12 05:27:46,662.662 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:27:46,695.695 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 05:27:46,696.696 INFO    ] No update needed
[2026-06-12 05:27:46,698.698 INFO    ] Checking for camera pi updates...
[2026-06-12 05:27:46,721.721 INFO    ] 200
[2026-06-12 05:27:46,723.723 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:27:46,750.750 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 05:27:46,791.791 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 05:27:46,793.793 INFO    ] No camera update needed
[2026-06-12 05:27:46,794.794 INFO    ] Script finished. Safe exiting...
[2026-06-12 05:27:46,795.795 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 05:27:46,799.799 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 05:27:46,802.802 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 05:27:48,842.842 INFO    ] ================================================
[2026-06-12 05:27:48,857.857 INFO    ] Launching Daemon at Fri Jun 12 05:27:48 IST 2026
[2026-06-12 05:27:48,869.869 INFO    ] ================================================
[2026-06-12 05:27:49,212.212 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 05:27:49
[2026-06-12 05:27:49,547.547 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 05:27:49,702.702 INFO    ] Initializing speech engine...
[2026-06-12 05:27:49,707.707 INFO    ] 2026-06-12 05:27:49
[2026-06-12 05:27:49,913.913 INFO    ] 2026-06-12 05:27:49
[2026-06-12 05:27:49,942.942 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 05:27:50,127.127 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 05:27:50,136.136 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 05:27:50,283.283 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 05:27:50,337.337 INFO    ] time= 12/06/2026 05:27:50
[2026-06-12 05:27:50,359.359 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 05:27:50,365.365 INFO    ] Checking for existing commands in stream...
[2026-06-12 05:27:50,436.436 INFO    ] No existing commands found in stream
[2026-06-12 05:27:55,451.451 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 05:27:55,454.454 INFO    ] Waiting 2.78 seconds before fallback handling...
[2026-06-12 05:27:58,658.658 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 05:27:58,660.660 INFO    ] Checking for system updates...
[2026-06-12 05:27:58,681.681 INFO    ] 200
[2026-06-12 05:27:58,682.682 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:27:58,713.713 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 05:27:58,715.715 INFO    ] No update needed
[2026-06-12 05:27:58,716.716 INFO    ] Checking for camera pi updates...
[2026-06-12 05:27:58,736.736 INFO    ] 200
[2026-06-12 05:27:58,737.737 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:27:58,761.761 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 05:27:58,796.796 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 05:27:58,797.797 INFO    ] No camera update needed
[2026-06-12 05:27:58,798.798 INFO    ] Script finished. Safe exiting...
[2026-06-12 05:27:58,800.800 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 05:27:58,803.803 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 05:27:58,806.806 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 05:28:00,846.846 INFO    ] ================================================
[2026-06-12 05:28:00,862.862 INFO    ] Launching Daemon at Fri Jun 12 05:28:00 IST 2026
[2026-06-12 05:28:00,874.874 INFO    ] ================================================
[2026-06-12 05:28:01,240.240 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 05:28:01
[2026-06-12 05:28:01,556.556 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 05:28:01,701.701 INFO    ] Initializing speech engine...
[2026-06-12 05:28:01,705.705 INFO    ] 2026-06-12 05:28:01
[2026-06-12 05:28:01,918.918 INFO    ] 2026-06-12 05:28:01
[2026-06-12 05:28:01,978.978 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 05:28:02,174.174 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 05:28:02,176.176 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 05:28:02,309.309 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 05:28:02,324.324 INFO    ] time= 12/06/2026 05:28:02
[2026-06-12 05:28:02,344.344 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 05:28:02,352.352 INFO    ] Checking for existing commands in stream...
[2026-06-12 05:28:02,489.489 INFO    ] No existing commands found in stream
[2026-06-12 05:28:07,525.525 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 05:28:07,528.528 INFO    ] Waiting 0.80 seconds before fallback handling...
[2026-06-12 05:28:08,703.703 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 05:28:08,705.705 INFO    ] Checking for system updates...
[2026-06-12 05:28:08,726.726 INFO    ] 200
[2026-06-12 05:28:08,727.727 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:28:08,758.758 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 05:28:08,759.759 INFO    ] No update needed
[2026-06-12 05:28:08,761.761 INFO    ] Checking for camera pi updates...
[2026-06-12 05:28:08,782.782 INFO    ] 200
[2026-06-12 05:28:08,783.783 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:28:08,810.810 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 05:28:08,851.851 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 05:28:08,853.853 INFO    ] No camera update needed
[2026-06-12 05:28:08,854.854 INFO    ] Script finished. Safe exiting...
[2026-06-12 05:28:08,856.856 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 05:28:08,859.859 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 05:28:08,862.862 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 05:28:10,901.901 INFO    ] ================================================
[2026-06-12 05:28:10,917.917 INFO    ] Launching Daemon at Fri Jun 12 05:28:10 IST 2026
[2026-06-12 05:28:10,928.928 INFO    ] ================================================
[2026-06-12 05:28:11,281.281 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 05:28:11
[2026-06-12 05:28:11,592.592 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 05:28:11,722.722 INFO    ] Initializing speech engine...
[2026-06-12 05:28:11,730.730 INFO    ] 2026-06-12 05:28:11
[2026-06-12 05:28:11,945.945 INFO    ] 2026-06-12 05:28:11
[2026-06-12 05:28:11,973.973 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 05:28:12,160.160 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 05:28:12,170.170 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 05:28:12,291.291 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 05:28:12,292.292 INFO    ] time= 12/06/2026 05:28:12
[2026-06-12 05:28:12,293.293 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 05:28:12,295.295 INFO    ] Checking for existing commands in stream...
[2026-06-12 05:28:12,370.370 INFO    ] No existing commands found in stream
[2026-06-12 05:28:17,384.384 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 05:28:17,386.386 INFO    ] Waiting 0.54 seconds before fallback handling...
[2026-06-12 05:28:18,322.322 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 05:28:18,323.323 INFO    ] Checking for system updates...
[2026-06-12 05:28:18,344.344 INFO    ] 200
[2026-06-12 05:28:18,345.345 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:28:18,378.378 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 05:28:18,379.379 INFO    ] No update needed
[2026-06-12 05:28:18,380.380 INFO    ] Checking for camera pi updates...
[2026-06-12 05:28:18,401.401 INFO    ] 200
[2026-06-12 05:28:18,402.402 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:28:18,425.425 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 05:28:18,569.569 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 05:28:18,571.571 INFO    ] No camera update needed
[2026-06-12 05:28:18,572.572 INFO    ] Script finished. Safe exiting...
[2026-06-12 05:28:18,573.573 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 05:28:18,576.576 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 05:28:18,579.579 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 05:28:20,618.618 INFO    ] ================================================
[2026-06-12 05:28:20,633.633 INFO    ] Launching Daemon at Fri Jun 12 05:28:20 IST 2026
[2026-06-12 05:28:20,644.644 INFO    ] ================================================
[2026-06-12 05:28:20,965.965 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 05:28:20
[2026-06-12 05:28:21,276.276 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 05:28:21,418.418 INFO    ] Initializing speech engine...
[2026-06-12 05:28:21,423.423 INFO    ] 2026-06-12 05:28:21
[2026-06-12 05:28:21,628.628 INFO    ] 2026-06-12 05:28:21
[2026-06-12 05:28:21,657.657 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 05:28:21,843.843 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 05:28:21,854.854 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 05:28:22,043.043 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 05:28:22,073.073 INFO    ] time= 12/06/2026 05:28:22
[2026-06-12 05:28:22,078.078 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 05:28:22,080.080 INFO    ] Checking for existing commands in stream...
[2026-06-12 05:28:22,148.148 INFO    ] No existing commands found in stream
[2026-06-12 05:28:27,157.157 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 05:28:27,160.160 INFO    ] Waiting 1.94 seconds before fallback handling...
[2026-06-12 05:28:29,531.531 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 05:28:29,532.532 INFO    ] Checking for system updates...
[2026-06-12 05:28:29,554.554 INFO    ] 200
[2026-06-12 05:28:29,555.555 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:28:29,585.585 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 05:28:29,587.587 INFO    ] No update needed
[2026-06-12 05:28:29,588.588 INFO    ] Checking for camera pi updates...
[2026-06-12 05:28:29,608.608 INFO    ] 200
[2026-06-12 05:28:29,609.609 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:28:29,634.634 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 05:28:29,672.672 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 05:28:29,673.673 INFO    ] No camera update needed
[2026-06-12 05:28:29,675.675 INFO    ] Script finished. Safe exiting...
[2026-06-12 05:28:29,676.676 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 05:28:29,679.679 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 05:28:29,682.682 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 05:28:31,721.721 INFO    ] ================================================
[2026-06-12 05:28:31,741.741 INFO    ] Launching Daemon at Fri Jun 12 05:28:31 IST 2026
[2026-06-12 05:28:31,751.751 INFO    ] ================================================
[2026-06-12 05:28:32,127.127 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 05:28:32
[2026-06-12 05:28:32,500.500 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 05:28:32,651.651 INFO    ] Initializing speech engine...
[2026-06-12 05:28:32,662.662 INFO    ] 2026-06-12 05:28:32
[2026-06-12 05:28:32,883.883 INFO    ] 2026-06-12 05:28:32
[2026-06-12 05:28:32,913.913 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 05:28:33,113.113 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 05:28:33,117.117 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 05:28:33,255.255 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 05:28:33,306.306 INFO    ] time= 12/06/2026 05:28:33
[2026-06-12 05:28:33,351.351 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 05:28:33,362.362 INFO    ] Checking for existing commands in stream...
[2026-06-12 05:28:33,439.439 INFO    ] No existing commands found in stream
[2026-06-12 05:28:38,448.448 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 05:28:38,451.451 INFO    ] Waiting 2.77 seconds before fallback handling...
[2026-06-12 05:28:41,613.613 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 05:28:41,614.614 INFO    ] Checking for system updates...
[2026-06-12 05:28:41,635.635 INFO    ] 200
[2026-06-12 05:28:41,637.637 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:28:41,667.667 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 05:28:41,668.668 INFO    ] No update needed
[2026-06-12 05:28:41,669.669 INFO    ] Checking for camera pi updates...
[2026-06-12 05:28:41,691.691 INFO    ] 200
[2026-06-12 05:28:41,692.692 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:28:41,717.717 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 05:28:41,757.757 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 05:28:41,759.759 INFO    ] No camera update needed
[2026-06-12 05:28:41,760.760 INFO    ] Script finished. Safe exiting...
[2026-06-12 05:28:41,762.762 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 05:28:41,764.764 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 05:28:41,767.767 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 05:28:43,805.805 INFO    ] ================================================
[2026-06-12 05:28:43,820.820 INFO    ] Launching Daemon at Fri Jun 12 05:28:43 IST 2026
[2026-06-12 05:28:43,831.831 INFO    ] ================================================
[2026-06-12 05:28:44,212.212 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 05:28:44
[2026-06-12 05:28:44,551.551 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 05:28:44,698.698 INFO    ] Initializing speech engine...
[2026-06-12 05:28:44,704.704 INFO    ] 2026-06-12 05:28:44
[2026-06-12 05:28:44,910.910 INFO    ] 2026-06-12 05:28:44
[2026-06-12 05:28:44,940.940 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 05:28:45,124.124 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 05:28:45,134.134 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 05:28:45,324.324 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 05:28:45,351.351 INFO    ] time= 12/06/2026 05:28:45
[2026-06-12 05:28:45,357.357 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 05:28:45,359.359 INFO    ] Checking for existing commands in stream...
[2026-06-12 05:28:45,425.425 INFO    ] No existing commands found in stream
[2026-06-12 05:28:50,440.440 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 05:28:50,444.444 INFO    ] Waiting 0.96 seconds before fallback handling...
[2026-06-12 05:28:51,784.784 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 05:28:51,786.786 INFO    ] Checking for system updates...
[2026-06-12 05:28:51,807.807 INFO    ] 200
[2026-06-12 05:28:51,808.808 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:28:51,841.841 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 05:28:51,842.842 INFO    ] No update needed
[2026-06-12 05:28:51,844.844 INFO    ] Checking for camera pi updates...
[2026-06-12 05:28:51,867.867 INFO    ] 200
[2026-06-12 05:28:51,868.868 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:28:51,896.896 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 05:28:51,941.941 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 05:28:51,943.943 INFO    ] No camera update needed
[2026-06-12 05:28:51,944.944 INFO    ] Script finished. Safe exiting...
[2026-06-12 05:28:51,945.945 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 05:28:51,949.949 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 05:28:51,952.952 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 05:28:53,990.990 INFO    ] ================================================
[2026-06-12 05:28:54,005.005 INFO    ] Launching Daemon at Fri Jun 12 05:28:54 IST 2026
[2026-06-12 05:28:54,016.016 INFO    ] ================================================
[2026-06-12 05:28:54,370.370 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 05:28:54
[2026-06-12 05:28:54,706.706 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 05:28:54,856.856 INFO    ] Initializing speech engine...
[2026-06-12 05:28:54,862.862 INFO    ] 2026-06-12 05:28:54
[2026-06-12 05:28:55,066.066 INFO    ] 2026-06-12 05:28:55
[2026-06-12 05:28:55,096.096 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 05:28:55,280.280 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 05:28:55,283.283 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 05:28:55,471.471 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 05:28:55,509.509 INFO    ] time= 12/06/2026 05:28:55
[2026-06-12 05:28:55,516.516 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 05:28:55,517.517 INFO    ] Checking for existing commands in stream...
[2026-06-12 05:28:55,584.584 INFO    ] No existing commands found in stream
[2026-06-12 05:29:00,609.609 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 05:29:00,612.612 INFO    ] Waiting 3.06 seconds before fallback handling...
[2026-06-12 05:29:04,058.058 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 05:29:04,059.059 INFO    ] Checking for system updates...
[2026-06-12 05:29:04,081.081 INFO    ] 200
[2026-06-12 05:29:04,082.082 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:29:04,113.113 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 05:29:04,114.114 INFO    ] No update needed
[2026-06-12 05:29:04,115.115 INFO    ] Checking for camera pi updates...
[2026-06-12 05:29:04,136.136 INFO    ] 200
[2026-06-12 05:29:04,138.138 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:29:04,162.162 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 05:29:04,204.204 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 05:29:04,206.206 INFO    ] No camera update needed
[2026-06-12 05:29:04,207.207 INFO    ] Script finished. Safe exiting...
[2026-06-12 05:29:04,208.208 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 05:29:04,211.211 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 05:29:04,214.214 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 05:29:06,253.253 INFO    ] ================================================
[2026-06-12 05:29:06,268.268 INFO    ] Launching Daemon at Fri Jun 12 05:29:06 IST 2026
[2026-06-12 05:29:06,280.280 INFO    ] ================================================
[2026-06-12 05:29:06,634.634 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 05:29:06
[2026-06-12 05:29:06,946.946 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 05:29:07,076.076 INFO    ] Initializing speech engine...
[2026-06-12 05:29:07,081.081 INFO    ] 2026-06-12 05:29:07
[2026-06-12 05:29:07,305.305 INFO    ] 2026-06-12 05:29:07
[2026-06-12 05:29:07,335.335 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 05:29:07,524.524 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 05:29:07,534.534 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 05:29:07,646.646 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 05:29:07,648.648 INFO    ] time= 12/06/2026 05:29:07
[2026-06-12 05:29:07,649.649 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 05:29:07,673.673 INFO    ] Checking for existing commands in stream...
[2026-06-12 05:29:07,770.770 INFO    ] No existing commands found in stream
[2026-06-12 05:29:12,784.784 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 05:29:12,787.787 INFO    ] Waiting 3.95 seconds before fallback handling...
[2026-06-12 05:29:17,166.166 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 05:29:17,167.167 INFO    ] Checking for system updates...
[2026-06-12 05:29:17,188.188 INFO    ] 200
[2026-06-12 05:29:17,190.190 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:29:17,221.221 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 05:29:17,223.223 INFO    ] No update needed
[2026-06-12 05:29:17,224.224 INFO    ] Checking for camera pi updates...
[2026-06-12 05:29:17,245.245 INFO    ] 200
[2026-06-12 05:29:17,246.246 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:29:17,272.272 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 05:29:17,316.316 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 05:29:17,318.318 INFO    ] No camera update needed
[2026-06-12 05:29:17,319.319 INFO    ] Script finished. Safe exiting...
[2026-06-12 05:29:17,321.321 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 05:29:17,324.324 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 05:29:17,327.327 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 05:29:19,366.366 INFO    ] ================================================
[2026-06-12 05:29:19,381.381 INFO    ] Launching Daemon at Fri Jun 12 05:29:19 IST 2026
[2026-06-12 05:29:19,393.393 INFO    ] ================================================
[2026-06-12 05:29:19,732.732 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 05:29:19
[2026-06-12 05:29:20,048.048 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 05:29:20,192.192 INFO    ] Initializing speech engine...
[2026-06-12 05:29:20,197.197 INFO    ] 2026-06-12 05:29:20
[2026-06-12 05:29:20,401.401 INFO    ] 2026-06-12 05:29:20
[2026-06-12 05:29:20,429.429 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 05:29:20,613.613 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 05:29:20,616.616 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 05:29:20,757.757 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 05:29:20,819.819 INFO    ] time= 12/06/2026 05:29:20
[2026-06-12 05:29:20,842.842 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 05:29:20,848.848 INFO    ] Checking for existing commands in stream...
[2026-06-12 05:29:20,915.915 INFO    ] No existing commands found in stream
[2026-06-12 05:29:25,929.929 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 05:29:25,932.932 INFO    ] Waiting 0.24 seconds before fallback handling...
[2026-06-12 05:29:26,533.533 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 05:29:26,534.534 INFO    ] Checking for system updates...
[2026-06-12 05:29:26,555.555 INFO    ] 200
[2026-06-12 05:29:26,557.557 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:29:26,589.589 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 05:29:26,591.591 INFO    ] No update needed
[2026-06-12 05:29:26,592.592 INFO    ] Checking for camera pi updates...
[2026-06-12 05:29:26,616.616 INFO    ] 200
[2026-06-12 05:29:26,618.618 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:29:26,644.644 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 05:29:26,682.682 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 05:29:26,683.683 INFO    ] No camera update needed
[2026-06-12 05:29:26,685.685 INFO    ] Script finished. Safe exiting...
[2026-06-12 05:29:26,686.686 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 05:29:26,689.689 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 05:29:26,693.693 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 05:29:28,731.731 INFO    ] ================================================
[2026-06-12 05:29:28,747.747 INFO    ] Launching Daemon at Fri Jun 12 05:29:28 IST 2026
[2026-06-12 05:29:28,759.759 INFO    ] ================================================
[2026-06-12 05:29:29,094.094 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 05:29:29
[2026-06-12 05:29:29,409.409 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 05:29:29,549.549 INFO    ] Initializing speech engine...
[2026-06-12 05:29:29,559.559 INFO    ] 2026-06-12 05:29:29
[2026-06-12 05:29:29,763.763 INFO    ] 2026-06-12 05:29:29
[2026-06-12 05:29:29,792.792 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 05:29:29,977.977 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 05:29:29,986.986 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 05:29:30,171.171 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 05:29:30,205.205 INFO    ] time= 12/06/2026 05:29:30
[2026-06-12 05:29:30,210.210 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 05:29:30,212.212 INFO    ] Checking for existing commands in stream...
[2026-06-12 05:29:30,280.280 INFO    ] No existing commands found in stream
[2026-06-12 05:29:35,289.289 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 05:29:35,292.292 INFO    ] Waiting 2.94 seconds before fallback handling...
[2026-06-12 05:29:38,635.635 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 05:29:38,636.636 INFO    ] Checking for system updates...
[2026-06-12 05:29:38,658.658 INFO    ] 200
[2026-06-12 05:29:38,660.660 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:29:38,690.690 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 05:29:38,692.692 INFO    ] No update needed
[2026-06-12 05:29:38,693.693 INFO    ] Checking for camera pi updates...
[2026-06-12 05:29:38,713.713 INFO    ] 200
[2026-06-12 05:29:38,714.714 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:29:38,740.740 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 05:29:38,788.788 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 05:29:38,790.790 INFO    ] No camera update needed
[2026-06-12 05:29:38,791.791 INFO    ] Script finished. Safe exiting...
[2026-06-12 05:29:38,793.793 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 05:29:38,796.796 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 05:29:38,799.799 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 05:29:40,839.839 INFO    ] ================================================
[2026-06-12 05:29:40,855.855 INFO    ] Launching Daemon at Fri Jun 12 05:29:40 IST 2026
[2026-06-12 05:29:40,865.865 INFO    ] ================================================
[2026-06-12 05:29:41,201.201 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 05:29:41
[2026-06-12 05:29:41,512.512 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 05:29:41,643.643 INFO    ] Initializing speech engine...
[2026-06-12 05:29:41,646.646 INFO    ] 2026-06-12 05:29:41
[2026-06-12 05:29:41,864.864 INFO    ] 2026-06-12 05:29:41
[2026-06-12 05:29:41,894.894 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 05:29:42,080.080 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 05:29:42,089.089 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 05:29:42,226.226 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 05:29:42,288.288 INFO    ] time= 12/06/2026 05:29:42
[2026-06-12 05:29:42,313.313 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 05:29:42,319.319 INFO    ] Checking for existing commands in stream...
[2026-06-12 05:29:42,386.386 INFO    ] No existing commands found in stream
[2026-06-12 05:29:47,394.394 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 05:29:47,397.397 INFO    ] Waiting 2.75 seconds before fallback handling...
[2026-06-12 05:29:50,520.520 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 05:29:50,522.522 INFO    ] Checking for system updates...
[2026-06-12 05:29:50,544.544 INFO    ] 200
[2026-06-12 05:29:50,545.545 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:29:50,577.577 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 05:29:50,579.579 INFO    ] No update needed
[2026-06-12 05:29:50,580.580 INFO    ] Checking for camera pi updates...
[2026-06-12 05:29:50,600.600 INFO    ] 200
[2026-06-12 05:29:50,601.601 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:29:50,626.626 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 05:29:50,666.666 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 05:29:50,667.667 INFO    ] No camera update needed
[2026-06-12 05:29:50,669.669 INFO    ] Script finished. Safe exiting...
[2026-06-12 05:29:50,670.670 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 05:29:50,674.674 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 05:29:50,677.677 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 05:29:52,718.718 INFO    ] ================================================
[2026-06-12 05:29:52,740.740 INFO    ] Launching Daemon at Fri Jun 12 05:29:52 IST 2026
[2026-06-12 05:29:52,752.752 INFO    ] ================================================
[2026-06-12 05:29:53,110.110 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 05:29:53
[2026-06-12 05:29:53,420.420 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 05:29:53,560.560 INFO    ] Initializing speech engine...
[2026-06-12 05:29:53,570.570 INFO    ] 2026-06-12 05:29:53
[2026-06-12 05:29:53,775.775 INFO    ] 2026-06-12 05:29:53
[2026-06-12 05:29:53,803.803 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 05:29:53,986.986 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 05:29:53,996.996 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 05:29:54,180.180 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 05:29:54,213.213 INFO    ] time= 12/06/2026 05:29:54
[2026-06-12 05:29:54,219.219 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 05:29:54,221.221 INFO    ] Checking for existing commands in stream...
[2026-06-12 05:29:54,288.288 INFO    ] No existing commands found in stream
[2026-06-12 05:29:59,302.302 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 05:29:59,305.305 INFO    ] Waiting 2.76 seconds before fallback handling...
[2026-06-12 05:30:02,445.445 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 05:30:02,447.447 INFO    ] Checking for system updates...
[2026-06-12 05:30:02,482.482 INFO    ] 200
[2026-06-12 05:30:02,484.484 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:30:02,527.527 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 05:30:02,529.529 INFO    ] No update needed
[2026-06-12 05:30:02,531.531 INFO    ] Checking for camera pi updates...
[2026-06-12 05:30:02,561.561 INFO    ] 200
[2026-06-12 05:30:02,564.564 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:30:02,620.620 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 05:30:02,690.690 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 05:30:02,692.692 INFO    ] No camera update needed
[2026-06-12 05:30:02,693.693 INFO    ] Script finished. Safe exiting...
[2026-06-12 05:30:02,694.694 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 05:30:02,698.698 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 05:30:02,702.702 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 05:30:04,744.744 INFO    ] ================================================
[2026-06-12 05:30:04,761.761 INFO    ] Launching Daemon at Fri Jun 12 05:30:04 IST 2026
[2026-06-12 05:30:04,773.773 INFO    ] ================================================
[2026-06-12 05:30:05,133.133 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 05:30:05
[2026-06-12 05:30:05,444.444 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 05:30:05,583.583 INFO    ] Initializing speech engine...
[2026-06-12 05:30:05,592.592 INFO    ] 2026-06-12 05:30:05
[2026-06-12 05:30:05,813.813 INFO    ] 2026-06-12 05:30:05
[2026-06-12 05:30:05,842.842 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 05:30:06,045.045 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 05:30:06,048.048 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 05:30:06,200.200 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 05:30:06,269.269 INFO    ] time= 12/06/2026 05:30:06
[2026-06-12 05:30:06,299.299 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 05:30:06,306.306 INFO    ] Checking for existing commands in stream...
[2026-06-12 05:30:06,377.377 INFO    ] No existing commands found in stream
[2026-06-12 05:30:11,387.387 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 05:30:11,390.390 INFO    ] Waiting 2.08 seconds before fallback handling...
[2026-06-12 05:30:13,882.882 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 05:30:13,883.883 INFO    ] Checking for system updates...
[2026-06-12 05:30:13,904.904 INFO    ] 200
[2026-06-12 05:30:13,905.905 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:30:13,942.942 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 05:30:13,943.943 INFO    ] No update needed
[2026-06-12 05:30:13,945.945 INFO    ] Checking for camera pi updates...
[2026-06-12 05:30:13,964.964 INFO    ] 200
[2026-06-12 05:30:13,966.966 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:30:13,989.989 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 05:30:14,026.026 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 05:30:14,027.027 INFO    ] No camera update needed
[2026-06-12 05:30:14,029.029 INFO    ] Script finished. Safe exiting...
[2026-06-12 05:30:14,030.030 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 05:30:14,033.033 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 05:30:14,036.036 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 05:30:16,066.066 INFO    ] ================================================
[2026-06-12 05:30:16,075.075 INFO    ] Launching Daemon at Fri Jun 12 05:30:16 IST 2026
[2026-06-12 05:30:16,081.081 INFO    ] ================================================
[2026-06-12 05:30:16,419.419 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 05:30:16
[2026-06-12 05:30:16,809.809 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 05:30:16,964.964 INFO    ] Initializing speech engine...
[2026-06-12 05:30:16,972.972 INFO    ] 2026-06-12 05:30:16
[2026-06-12 05:30:17,163.163 INFO    ] 2026-06-12 05:30:17
[2026-06-12 05:30:17,189.189 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 05:30:17,395.395 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 05:30:17,406.406 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 05:30:17,597.597 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 05:30:17,617.617 INFO    ] time= 12/06/2026 05:30:17
[2026-06-12 05:30:17,635.635 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 05:30:17,642.642 INFO    ] Checking for existing commands in stream...
[2026-06-12 05:30:17,713.713 INFO    ] No existing commands found in stream
[2026-06-12 05:30:22,724.724 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 05:30:22,726.726 INFO    ] Waiting 2.28 seconds before fallback handling...
[2026-06-12 05:30:25,410.410 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 05:30:25,412.412 INFO    ] Checking for system updates...
[2026-06-12 05:30:25,432.432 INFO    ] 200
[2026-06-12 05:30:25,434.434 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:30:25,464.464 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 05:30:25,465.465 INFO    ] No update needed
[2026-06-12 05:30:25,466.466 INFO    ] Checking for camera pi updates...
[2026-06-12 05:30:25,486.486 INFO    ] 200
[2026-06-12 05:30:25,487.487 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:30:25,512.512 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 05:30:25,654.654 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 05:30:25,656.656 INFO    ] No camera update needed
[2026-06-12 05:30:25,657.657 INFO    ] Script finished. Safe exiting...
[2026-06-12 05:30:25,658.658 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 05:30:25,661.661 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 05:30:25,664.664 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 05:30:27,704.704 INFO    ] ================================================
[2026-06-12 05:30:27,721.721 INFO    ] Launching Daemon at Fri Jun 12 05:30:27 IST 2026
[2026-06-12 05:30:27,732.732 INFO    ] ================================================
[2026-06-12 05:30:28,125.125 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 05:30:28
[2026-06-12 05:30:28,469.469 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 05:30:28,622.622 INFO    ] Initializing speech engine...
[2026-06-12 05:30:28,628.628 INFO    ] 2026-06-12 05:30:28
[2026-06-12 05:30:28,836.836 INFO    ] 2026-06-12 05:30:28
[2026-06-12 05:30:28,866.866 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 05:30:29,050.050 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 05:30:29,060.060 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 05:30:29,252.252 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 05:30:29,277.277 INFO    ] time= 12/06/2026 05:30:29
[2026-06-12 05:30:29,283.283 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 05:30:29,285.285 INFO    ] Checking for existing commands in stream...
[2026-06-12 05:30:29,353.353 INFO    ] No existing commands found in stream
[2026-06-12 05:30:34,373.373 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 05:30:34,377.377 INFO    ] Waiting 0.93 seconds before fallback handling...
[2026-06-12 05:30:35,714.714 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 05:30:35,715.715 INFO    ] Checking for system updates...
[2026-06-12 05:30:35,738.738 INFO    ] 200
[2026-06-12 05:30:35,739.739 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:30:35,773.773 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 05:30:35,774.774 INFO    ] No update needed
[2026-06-12 05:30:35,776.776 INFO    ] Checking for camera pi updates...
[2026-06-12 05:30:35,796.796 INFO    ] 200
[2026-06-12 05:30:35,797.797 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:30:35,824.824 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 05:30:35,875.875 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 05:30:35,876.876 INFO    ] No camera update needed
[2026-06-12 05:30:35,877.877 INFO    ] Script finished. Safe exiting...
[2026-06-12 05:30:35,879.879 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 05:30:35,882.882 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 05:30:35,885.885 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 05:30:37,926.926 INFO    ] ================================================
[2026-06-12 05:30:37,941.941 INFO    ] Launching Daemon at Fri Jun 12 05:30:37 IST 2026
[2026-06-12 05:30:37,952.952 INFO    ] ================================================
[2026-06-12 05:30:38,327.327 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 05:30:38
[2026-06-12 05:30:38,667.667 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 05:30:38,813.813 INFO    ] Initializing speech engine...
[2026-06-12 05:30:38,822.822 INFO    ] 2026-06-12 05:30:38
[2026-06-12 05:30:39,034.034 INFO    ] 2026-06-12 05:30:39
[2026-06-12 05:30:39,063.063 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 05:30:39,249.249 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 05:30:39,260.260 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 05:30:39,409.409 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 05:30:39,459.459 INFO    ] time= 12/06/2026 05:30:39
[2026-06-12 05:30:39,481.481 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 05:30:39,486.486 INFO    ] Checking for existing commands in stream...
[2026-06-12 05:30:39,554.554 INFO    ] No existing commands found in stream
[2026-06-12 05:30:44,569.569 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 05:30:44,572.572 INFO    ] Waiting 3.47 seconds before fallback handling...
[2026-06-12 05:30:48,440.440 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 05:30:48,442.442 INFO    ] Checking for system updates...
[2026-06-12 05:30:48,463.463 INFO    ] 200
[2026-06-12 05:30:48,464.464 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:30:48,495.495 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 05:30:48,496.496 INFO    ] No update needed
[2026-06-12 05:30:48,498.498 INFO    ] Checking for camera pi updates...
[2026-06-12 05:30:48,520.520 INFO    ] 200
[2026-06-12 05:30:48,522.522 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:30:48,548.548 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 05:30:48,582.582 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 05:30:48,584.584 INFO    ] No camera update needed
[2026-06-12 05:30:48,585.585 INFO    ] Script finished. Safe exiting...
[2026-06-12 05:30:48,586.586 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 05:30:48,590.590 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 05:30:48,593.593 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 05:30:50,633.633 INFO    ] ================================================
[2026-06-12 05:30:50,649.649 INFO    ] Launching Daemon at Fri Jun 12 05:30:50 IST 2026
[2026-06-12 05:30:50,660.660 INFO    ] ================================================
[2026-06-12 05:30:51,004.004 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 05:30:51
[2026-06-12 05:30:51,345.345 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 05:30:51,497.497 INFO    ] Initializing speech engine...
[2026-06-12 05:30:51,502.502 INFO    ] 2026-06-12 05:30:51
[2026-06-12 05:30:51,711.711 INFO    ] 2026-06-12 05:30:51
[2026-06-12 05:30:51,741.741 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 05:30:51,925.925 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 05:30:51,936.936 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 05:30:52,128.128 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 05:30:52,153.153 INFO    ] time= 12/06/2026 05:30:52
[2026-06-12 05:30:52,159.159 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 05:30:52,161.161 INFO    ] Checking for existing commands in stream...
[2026-06-12 05:30:52,252.252 INFO    ] No existing commands found in stream
[2026-06-12 05:30:57,267.267 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 05:30:57,270.270 INFO    ] Waiting 3.31 seconds before fallback handling...
[2026-06-12 05:31:00,927.927 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 05:31:00,928.928 INFO    ] Checking for system updates...
[2026-06-12 05:31:00,951.951 INFO    ] 200
[2026-06-12 05:31:00,952.952 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:31:00,986.986 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 05:31:00,987.987 INFO    ] No update needed
[2026-06-12 05:31:00,989.989 INFO    ] Checking for camera pi updates...
[2026-06-12 05:31:01,011.011 INFO    ] 200
[2026-06-12 05:31:01,012.012 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:31:01,045.045 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 05:31:01,094.094 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 05:31:01,097.097 INFO    ] No camera update needed
[2026-06-12 05:31:01,099.099 INFO    ] Script finished. Safe exiting...
[2026-06-12 05:31:01,102.102 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 05:31:01,107.107 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 05:31:01,113.113 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 05:31:03,147.147 INFO    ] ================================================
[2026-06-12 05:31:03,162.162 INFO    ] Launching Daemon at Fri Jun 12 05:31:03 IST 2026
[2026-06-12 05:31:03,173.173 INFO    ] ================================================
[2026-06-12 05:31:03,535.535 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 05:31:03
[2026-06-12 05:31:03,875.875 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 05:31:04,026.026 INFO    ] Initializing speech engine...
[2026-06-12 05:31:04,032.032 INFO    ] 2026-06-12 05:31:04
[2026-06-12 05:31:04,244.244 INFO    ] 2026-06-12 05:31:04
[2026-06-12 05:31:04,273.273 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 05:31:04,460.460 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 05:31:04,470.470 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 05:31:04,618.618 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 05:31:04,672.672 INFO    ] time= 12/06/2026 05:31:04
[2026-06-12 05:31:04,695.695 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 05:31:04,702.702 INFO    ] Checking for existing commands in stream...
[2026-06-12 05:31:04,770.770 INFO    ] No existing commands found in stream
[2026-06-12 05:31:09,784.784 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 05:31:09,787.787 INFO    ] Waiting 1.57 seconds before fallback handling...
[2026-06-12 05:31:11,746.746 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 05:31:11,748.748 INFO    ] Checking for system updates...
[2026-06-12 05:31:11,772.772 INFO    ] 200
[2026-06-12 05:31:11,774.774 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:31:11,808.808 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 05:31:11,809.809 INFO    ] No update needed
[2026-06-12 05:31:11,811.811 INFO    ] Checking for camera pi updates...
[2026-06-12 05:31:11,833.833 INFO    ] 200
[2026-06-12 05:31:11,834.834 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:31:11,858.858 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 05:31:11,886.886 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 05:31:11,888.888 INFO    ] No camera update needed
[2026-06-12 05:31:11,889.889 INFO    ] Script finished. Safe exiting...
[2026-06-12 05:31:11,891.891 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 05:31:11,894.894 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 05:31:11,897.897 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 05:31:13,920.920 INFO    ] ================================================
[2026-06-12 05:31:13,929.929 INFO    ] Launching Daemon at Fri Jun 12 05:31:13 IST 2026
[2026-06-12 05:31:13,935.935 INFO    ] ================================================
[2026-06-12 05:31:14,250.250 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 05:31:14
[2026-06-12 05:31:14,574.574 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 05:31:14,712.712 INFO    ] Initializing speech engine...
[2026-06-12 05:31:14,726.726 INFO    ] 2026-06-12 05:31:14
[2026-06-12 05:31:14,938.938 INFO    ] 2026-06-12 05:31:14
[2026-06-12 05:31:14,983.983 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 05:31:15,168.168 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 05:31:15,177.177 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 05:31:15,377.377 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 05:31:15,413.413 INFO    ] time= 12/06/2026 05:31:15
[2026-06-12 05:31:15,415.415 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 05:31:15,422.422 INFO    ] Checking for existing commands in stream...
[2026-06-12 05:31:15,491.491 INFO    ] No existing commands found in stream
[2026-06-12 05:31:20,505.505 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 05:31:20,508.508 INFO    ] Waiting 0.99 seconds before fallback handling...
[2026-06-12 05:31:21,866.866 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 05:31:21,867.867 INFO    ] Checking for system updates...
[2026-06-12 05:31:21,889.889 INFO    ] 200
[2026-06-12 05:31:21,891.891 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:31:21,921.921 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 05:31:21,922.922 INFO    ] No update needed
[2026-06-12 05:31:21,923.923 INFO    ] Checking for camera pi updates...
[2026-06-12 05:31:21,945.945 INFO    ] 200
[2026-06-12 05:31:21,946.946 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:31:21,970.970 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 05:31:22,010.010 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 05:31:22,012.012 INFO    ] No camera update needed
[2026-06-12 05:31:22,013.013 INFO    ] Script finished. Safe exiting...
[2026-06-12 05:31:22,014.014 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 05:31:22,017.017 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 05:31:22,020.020 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 05:31:24,060.060 INFO    ] ================================================
[2026-06-12 05:31:24,075.075 INFO    ] Launching Daemon at Fri Jun 12 05:31:24 IST 2026
[2026-06-12 05:31:24,086.086 INFO    ] ================================================
[2026-06-12 05:31:24,428.428 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 05:31:24
[2026-06-12 05:31:24,741.741 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 05:31:24,875.875 INFO    ] Initializing speech engine...
[2026-06-12 05:31:24,880.880 INFO    ] 2026-06-12 05:31:24
[2026-06-12 05:31:25,086.086 INFO    ] 2026-06-12 05:31:25
[2026-06-12 05:31:25,121.121 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 05:31:25,282.282 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 05:31:25,315.315 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 05:31:25,465.465 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 05:31:25,501.501 INFO    ] time= 12/06/2026 05:31:25
[2026-06-12 05:31:25,578.578 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 05:31:25,609.609 INFO    ] Checking for existing commands in stream...
[2026-06-12 05:31:25,689.689 INFO    ] No existing commands found in stream
[2026-06-12 05:31:30,713.713 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 05:31:30,716.716 INFO    ] Waiting 0.92 seconds before fallback handling...
[2026-06-12 05:31:31,988.988 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 05:31:31,989.989 INFO    ] Checking for system updates...
[2026-06-12 05:31:32,012.012 INFO    ] 200
[2026-06-12 05:31:32,014.014 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:31:32,049.049 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 05:31:32,051.051 INFO    ] No update needed
[2026-06-12 05:31:32,053.053 INFO    ] Checking for camera pi updates...
[2026-06-12 05:31:32,073.073 INFO    ] 200
[2026-06-12 05:31:32,074.074 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:31:32,098.098 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 05:31:32,123.123 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 05:31:32,124.124 INFO    ] No camera update needed
[2026-06-12 05:31:32,126.126 INFO    ] Script finished. Safe exiting...
[2026-06-12 05:31:32,127.127 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 05:31:32,130.130 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 05:31:32,134.134 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 05:31:34,174.174 INFO    ] ================================================
[2026-06-12 05:31:34,189.189 INFO    ] Launching Daemon at Fri Jun 12 05:31:34 IST 2026
[2026-06-12 05:31:34,200.200 INFO    ] ================================================
[2026-06-12 05:31:34,543.543 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 05:31:34
[2026-06-12 05:31:34,859.859 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 05:31:34,998.998 INFO    ] Initializing speech engine...
[2026-06-12 05:31:35,008.008 INFO    ] 2026-06-12 05:31:35
[2026-06-12 05:31:35,212.212 INFO    ] 2026-06-12 05:31:35
[2026-06-12 05:31:35,241.241 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 05:31:35,424.424 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 05:31:35,433.433 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 05:31:35,578.578 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 05:31:35,630.630 INFO    ] time= 12/06/2026 05:31:35
[2026-06-12 05:31:35,653.653 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 05:31:35,659.659 INFO    ] Checking for existing commands in stream...
[2026-06-12 05:31:35,725.725 INFO    ] No existing commands found in stream
[2026-06-12 05:31:40,734.734 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 05:31:40,737.737 INFO    ] Waiting 0.02 seconds before fallback handling...
[2026-06-12 05:31:41,096.096 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 05:31:41,098.098 INFO    ] Checking for system updates...
[2026-06-12 05:31:41,119.119 INFO    ] 200
[2026-06-12 05:31:41,121.121 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:31:41,152.152 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 05:31:41,153.153 INFO    ] No update needed
[2026-06-12 05:31:41,154.154 INFO    ] Checking for camera pi updates...
[2026-06-12 05:31:41,176.176 INFO    ] 200
[2026-06-12 05:31:41,177.177 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:31:41,204.204 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 05:31:41,237.237 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 05:31:41,238.238 INFO    ] No camera update needed
[2026-06-12 05:31:41,240.240 INFO    ] Script finished. Safe exiting...
[2026-06-12 05:31:41,242.242 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 05:31:41,245.245 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 05:31:41,248.248 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 05:31:43,281.281 INFO    ] ================================================
[2026-06-12 05:31:43,300.300 INFO    ] Launching Daemon at Fri Jun 12 05:31:43 IST 2026
[2026-06-12 05:31:43,308.308 INFO    ] ================================================
[2026-06-12 05:31:43,721.721 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 05:31:43
[2026-06-12 05:31:44,074.074 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 05:31:44,257.257 INFO    ] Initializing speech engine...
[2026-06-12 05:31:44,263.263 INFO    ] 2026-06-12 05:31:44
[2026-06-12 05:31:44,459.459 INFO    ] 2026-06-12 05:31:44
[2026-06-12 05:31:44,489.489 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 05:31:44,672.672 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 05:31:44,684.684 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 05:31:44,835.835 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 05:31:44,879.879 INFO    ] time= 12/06/2026 05:31:44
[2026-06-12 05:31:44,901.901 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 05:31:44,906.906 INFO    ] Checking for existing commands in stream...
[2026-06-12 05:31:44,977.977 INFO    ] No existing commands found in stream
[2026-06-12 05:31:49,992.992 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 05:31:49,995.995 INFO    ] Waiting 2.13 seconds before fallback handling...
[2026-06-12 05:31:52,519.519 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 05:31:52,520.520 INFO    ] Checking for system updates...
[2026-06-12 05:31:52,542.542 INFO    ] 200
[2026-06-12 05:31:52,544.544 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:31:52,578.578 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 05:31:52,579.579 INFO    ] No update needed
[2026-06-12 05:31:52,581.581 INFO    ] Checking for camera pi updates...
[2026-06-12 05:31:52,603.603 INFO    ] 200
[2026-06-12 05:31:52,605.605 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:31:52,628.628 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 05:31:52,674.674 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 05:31:52,676.676 INFO    ] No camera update needed
[2026-06-12 05:31:52,677.677 INFO    ] Script finished. Safe exiting...
[2026-06-12 05:31:52,678.678 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 05:31:52,682.682 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 05:31:52,685.685 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 05:31:54,725.725 INFO    ] ================================================
[2026-06-12 05:31:54,740.740 INFO    ] Launching Daemon at Fri Jun 12 05:31:54 IST 2026
[2026-06-12 05:31:54,751.751 INFO    ] ================================================
[2026-06-12 05:31:55,090.090 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 05:31:55
[2026-06-12 05:31:55,401.401 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 05:31:55,543.543 INFO    ] Initializing speech engine...
[2026-06-12 05:31:55,548.548 INFO    ] 2026-06-12 05:31:55
[2026-06-12 05:31:55,756.756 INFO    ] 2026-06-12 05:31:55
[2026-06-12 05:31:55,784.784 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 05:31:55,967.967 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 05:31:55,977.977 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 05:31:56,153.153 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 05:31:56,180.180 INFO    ] time= 12/06/2026 05:31:56
[2026-06-12 05:31:56,205.205 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 05:31:56,211.211 INFO    ] Checking for existing commands in stream...
[2026-06-12 05:31:56,284.284 INFO    ] No existing commands found in stream
[2026-06-12 05:32:01,293.293 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 05:32:01,298.298 INFO    ] Waiting 1.91 seconds before fallback handling...
[2026-06-12 05:32:03,598.598 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 05:32:03,599.599 INFO    ] Checking for system updates...
[2026-06-12 05:32:03,619.619 INFO    ] 200
[2026-06-12 05:32:03,621.621 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:32:03,651.651 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 05:32:03,652.652 INFO    ] No update needed
[2026-06-12 05:32:03,653.653 INFO    ] Checking for camera pi updates...
[2026-06-12 05:32:03,673.673 INFO    ] 200
[2026-06-12 05:32:03,674.674 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:32:03,699.699 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 05:32:03,739.739 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 05:32:03,740.740 INFO    ] No camera update needed
[2026-06-12 05:32:03,741.741 INFO    ] Script finished. Safe exiting...
[2026-06-12 05:32:03,743.743 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 05:32:03,745.745 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 05:32:03,748.748 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 05:32:05,794.794 INFO    ] ================================================
[2026-06-12 05:32:05,809.809 INFO    ] Launching Daemon at Fri Jun 12 05:32:05 IST 2026
[2026-06-12 05:32:05,821.821 INFO    ] ================================================
[2026-06-12 05:32:06,208.208 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 05:32:06
[2026-06-12 05:32:06,543.543 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 05:32:06,680.680 INFO    ] Initializing speech engine...
[2026-06-12 05:32:06,685.685 INFO    ] 2026-06-12 05:32:06
[2026-06-12 05:32:06,906.906 INFO    ] 2026-06-12 05:32:06
[2026-06-12 05:32:06,935.935 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 05:32:07,086.086 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 05:32:07,088.088 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 05:32:07,260.260 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 05:32:07,286.286 INFO    ] time= 12/06/2026 05:32:07
[2026-06-12 05:32:07,338.338 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 05:32:07,362.362 INFO    ] Checking for existing commands in stream...
[2026-06-12 05:32:07,481.481 INFO    ] No existing commands found in stream
[2026-06-12 05:32:12,492.492 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 05:32:12,495.495 INFO    ] Waiting 0.92 seconds before fallback handling...
[2026-06-12 05:32:13,831.831 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 05:32:13,833.833 INFO    ] Checking for system updates...
[2026-06-12 05:32:13,854.854 INFO    ] 200
[2026-06-12 05:32:13,856.856 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:32:13,888.888 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 05:32:13,890.890 INFO    ] No update needed
[2026-06-12 05:32:13,891.891 INFO    ] Checking for camera pi updates...
[2026-06-12 05:32:13,911.911 INFO    ] 200
[2026-06-12 05:32:13,912.912 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:32:13,939.939 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 05:32:13,977.977 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 05:32:13,978.978 INFO    ] No camera update needed
[2026-06-12 05:32:13,979.979 INFO    ] Script finished. Safe exiting...
[2026-06-12 05:32:13,981.981 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 05:32:13,984.984 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 05:32:13,987.987 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 05:32:16,025.025 INFO    ] ================================================
[2026-06-12 05:32:16,041.041 INFO    ] Launching Daemon at Fri Jun 12 05:32:16 IST 2026
[2026-06-12 05:32:16,052.052 INFO    ] ================================================
[2026-06-12 05:32:16,449.449 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 05:32:16
[2026-06-12 05:32:16,785.785 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 05:32:16,935.935 INFO    ] Initializing speech engine...
[2026-06-12 05:32:16,940.940 INFO    ] 2026-06-12 05:32:16
[2026-06-12 05:32:17,148.148 INFO    ] 2026-06-12 05:32:17
[2026-06-12 05:32:17,177.177 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 05:32:17,361.361 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 05:32:17,370.370 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 05:32:17,555.555 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 05:32:17,588.588 INFO    ] time= 12/06/2026 05:32:17
[2026-06-12 05:32:17,594.594 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 05:32:17,596.596 INFO    ] Checking for existing commands in stream...
[2026-06-12 05:32:17,663.663 INFO    ] No existing commands found in stream
[2026-06-12 05:32:22,678.678 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 05:32:22,681.681 INFO    ] Waiting 2.86 seconds before fallback handling...
[2026-06-12 05:32:25,930.930 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 05:32:25,932.932 INFO    ] Checking for system updates...
[2026-06-12 05:32:25,953.953 INFO    ] 200
[2026-06-12 05:32:25,954.954 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:32:25,989.989 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 05:32:25,990.990 INFO    ] No update needed
[2026-06-12 05:32:25,992.992 INFO    ] Checking for camera pi updates...
[2026-06-12 05:32:26,011.011 INFO    ] 200
[2026-06-12 05:32:26,012.012 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:32:26,036.036 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 05:32:26,081.081 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 05:32:26,083.083 INFO    ] No camera update needed
[2026-06-12 05:32:26,084.084 INFO    ] Script finished. Safe exiting...
[2026-06-12 05:32:26,085.085 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 05:32:26,088.088 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 05:32:26,091.091 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 05:32:28,130.130 INFO    ] ================================================
[2026-06-12 05:32:28,146.146 INFO    ] Launching Daemon at Fri Jun 12 05:32:28 IST 2026
[2026-06-12 05:32:28,156.156 INFO    ] ================================================
[2026-06-12 05:32:28,525.525 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 05:32:28
[2026-06-12 05:32:28,848.848 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 05:32:28,978.978 INFO    ] Initializing speech engine...
[2026-06-12 05:32:28,983.983 INFO    ] 2026-06-12 05:32:28
[2026-06-12 05:32:29,199.199 INFO    ] 2026-06-12 05:32:29
[2026-06-12 05:32:29,229.229 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 05:32:29,351.351 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 05:32:29,385.385 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 05:32:29,548.548 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 05:32:29,610.610 INFO    ] time= 12/06/2026 05:32:29
[2026-06-12 05:32:29,645.645 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 05:32:29,650.650 INFO    ] Checking for existing commands in stream...
[2026-06-12 05:32:29,722.722 INFO    ] No existing commands found in stream
[2026-06-12 05:32:34,731.731 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 05:32:34,734.734 INFO    ] Waiting 1.80 seconds before fallback handling...
[2026-06-12 05:32:36,909.909 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 05:32:36,911.911 INFO    ] Checking for system updates...
[2026-06-12 05:32:36,932.932 INFO    ] 200
[2026-06-12 05:32:36,933.933 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:32:36,965.965 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 05:32:36,967.967 INFO    ] No update needed
[2026-06-12 05:32:36,968.968 INFO    ] Checking for camera pi updates...
[2026-06-12 05:32:36,989.989 INFO    ] 200
[2026-06-12 05:32:36,990.990 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:32:37,016.016 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 05:32:37,052.052 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 05:32:37,053.053 INFO    ] No camera update needed
[2026-06-12 05:32:37,055.055 INFO    ] Script finished. Safe exiting...
[2026-06-12 05:32:37,056.056 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 05:32:37,059.059 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 05:32:37,062.062 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 05:32:39,102.102 INFO    ] ================================================
[2026-06-12 05:32:39,118.118 INFO    ] Launching Daemon at Fri Jun 12 05:32:39 IST 2026
[2026-06-12 05:32:39,129.129 INFO    ] ================================================
[2026-06-12 05:32:39,483.483 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 05:32:39
[2026-06-12 05:32:39,801.801 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 05:32:39,934.934 INFO    ] Initializing speech engine...
[2026-06-12 05:32:39,946.946 INFO    ] 2026-06-12 05:32:39
[2026-06-12 05:32:40,153.153 INFO    ] 2026-06-12 05:32:40
[2026-06-12 05:32:40,182.182 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 05:32:40,318.318 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 05:32:40,319.319 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 05:32:40,466.466 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 05:32:40,502.502 INFO    ] time= 12/06/2026 05:32:40
[2026-06-12 05:32:40,548.548 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 05:32:40,592.592 INFO    ] Checking for existing commands in stream...
[2026-06-12 05:32:40,697.697 INFO    ] No existing commands found in stream
[2026-06-12 05:32:45,711.711 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 05:32:45,714.714 INFO    ] Waiting 3.87 seconds before fallback handling...
[2026-06-12 05:32:49,953.953 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 05:32:49,955.955 INFO    ] Checking for system updates...
[2026-06-12 05:32:49,976.976 INFO    ] 200
[2026-06-12 05:32:49,978.978 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:32:50,010.010 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 05:32:50,012.012 INFO    ] No update needed
[2026-06-12 05:32:50,013.013 INFO    ] Checking for camera pi updates...
[2026-06-12 05:32:50,033.033 INFO    ] 200
[2026-06-12 05:32:50,035.035 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:32:50,058.058 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 05:32:50,107.107 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 05:32:50,109.109 INFO    ] No camera update needed
[2026-06-12 05:32:50,110.110 INFO    ] Script finished. Safe exiting...
[2026-06-12 05:32:50,111.111 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 05:32:50,114.114 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 05:32:50,117.117 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 05:32:52,156.156 INFO    ] ================================================
[2026-06-12 05:32:52,173.173 INFO    ] Launching Daemon at Fri Jun 12 05:32:52 IST 2026
[2026-06-12 05:32:52,183.183 INFO    ] ================================================
[2026-06-12 05:32:52,530.530 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 05:32:52
[2026-06-12 05:32:52,846.846 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 05:32:52,989.989 INFO    ] Initializing speech engine...
[2026-06-12 05:32:52,995.995 INFO    ] 2026-06-12 05:32:52
[2026-06-12 05:32:53,199.199 INFO    ] 2026-06-12 05:32:53
[2026-06-12 05:32:53,227.227 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 05:32:53,409.409 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 05:32:53,418.418 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 05:32:53,594.594 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 05:32:53,634.634 INFO    ] time= 12/06/2026 05:32:53
[2026-06-12 05:32:53,640.640 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 05:32:53,645.645 INFO    ] Checking for existing commands in stream...
[2026-06-12 05:32:53,712.712 INFO    ] No existing commands found in stream
[2026-06-12 05:32:58,721.721 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 05:32:58,724.724 INFO    ] Waiting 2.66 seconds before fallback handling...
[2026-06-12 05:33:01,798.798 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 05:33:01,800.800 INFO    ] Checking for system updates...
[2026-06-12 05:33:01,828.828 INFO    ] 200
[2026-06-12 05:33:01,830.830 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:33:01,870.870 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 05:33:01,872.872 INFO    ] No update needed
[2026-06-12 05:33:01,874.874 INFO    ] Checking for camera pi updates...
[2026-06-12 05:33:01,899.899 INFO    ] 200
[2026-06-12 05:33:01,902.902 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:33:01,935.935 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 05:33:01,983.983 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 05:33:01,986.986 INFO    ] No camera update needed
[2026-06-12 05:33:01,988.988 INFO    ] Script finished. Safe exiting...
[2026-06-12 05:33:01,990.990 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 05:33:01,995.995 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 05:33:01,999.999 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 05:33:04,040.040 INFO    ] ================================================
[2026-06-12 05:33:04,056.056 INFO    ] Launching Daemon at Fri Jun 12 05:33:04 IST 2026
[2026-06-12 05:33:04,067.067 INFO    ] ================================================
[2026-06-12 05:33:04,418.418 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 05:33:04
[2026-06-12 05:33:04,737.737 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 05:33:04,877.877 INFO    ] Initializing speech engine...
[2026-06-12 05:33:04,887.887 INFO    ] 2026-06-12 05:33:04
[2026-06-12 05:33:05,093.093 INFO    ] 2026-06-12 05:33:05
[2026-06-12 05:33:05,121.121 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 05:33:05,306.306 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 05:33:05,309.309 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 05:33:05,446.446 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 05:33:05,510.510 INFO    ] time= 12/06/2026 05:33:05
[2026-06-12 05:33:05,539.539 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 05:33:05,545.545 INFO    ] Checking for existing commands in stream...
[2026-06-12 05:33:05,613.613 INFO    ] No existing commands found in stream
[2026-06-12 05:33:10,627.627 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 05:33:10,630.630 INFO    ] Waiting 2.78 seconds before fallback handling...
[2026-06-12 05:33:13,831.831 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 05:33:13,832.832 INFO    ] Checking for system updates...
[2026-06-12 05:33:13,854.854 INFO    ] 200
[2026-06-12 05:33:13,856.856 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:33:13,891.891 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 05:33:13,893.893 INFO    ] No update needed
[2026-06-12 05:33:13,894.894 INFO    ] Checking for camera pi updates...
[2026-06-12 05:33:13,914.914 INFO    ] 200
[2026-06-12 05:33:13,915.915 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:33:13,939.939 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 05:33:13,987.987 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 05:33:13,989.989 INFO    ] No camera update needed
[2026-06-12 05:33:13,990.990 INFO    ] Script finished. Safe exiting...
[2026-06-12 05:33:13,992.992 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 05:33:13,995.995 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 05:33:13,998.998 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 05:33:16,042.042 INFO    ] ================================================
[2026-06-12 05:33:16,058.058 INFO    ] Launching Daemon at Fri Jun 12 05:33:16 IST 2026
[2026-06-12 05:33:16,069.069 INFO    ] ================================================
[2026-06-12 05:33:16,443.443 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 05:33:16
[2026-06-12 05:33:16,760.760 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 05:33:16,893.893 INFO    ] Initializing speech engine...
[2026-06-12 05:33:16,906.906 INFO    ] 2026-06-12 05:33:16
[2026-06-12 05:33:17,113.113 INFO    ] 2026-06-12 05:33:17
[2026-06-12 05:33:17,142.142 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 05:33:17,326.326 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 05:33:17,329.329 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 05:33:17,517.517 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 05:33:17,551.551 INFO    ] time= 12/06/2026 05:33:17
[2026-06-12 05:33:17,558.558 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 05:33:17,563.563 INFO    ] Checking for existing commands in stream...
[2026-06-12 05:33:17,630.630 INFO    ] No existing commands found in stream
[2026-06-12 05:33:22,644.644 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 05:33:22,647.647 INFO    ] Waiting 0.85 seconds before fallback handling...
[2026-06-12 05:33:23,924.924 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 05:33:23,926.926 INFO    ] Checking for system updates...
[2026-06-12 05:33:23,947.947 INFO    ] 200
[2026-06-12 05:33:23,949.949 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:33:23,984.984 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 05:33:23,985.985 INFO    ] No update needed
[2026-06-12 05:33:23,986.986 INFO    ] Checking for camera pi updates...
[2026-06-12 05:33:24,008.008 INFO    ] 200
[2026-06-12 05:33:24,009.009 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:33:24,034.034 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 05:33:24,074.074 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 05:33:24,076.076 INFO    ] No camera update needed
[2026-06-12 05:33:24,077.077 INFO    ] Script finished. Safe exiting...
[2026-06-12 05:33:24,079.079 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 05:33:24,082.082 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 05:33:24,085.085 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 05:33:26,126.126 INFO    ] ================================================
[2026-06-12 05:33:26,141.141 INFO    ] Launching Daemon at Fri Jun 12 05:33:26 IST 2026
[2026-06-12 05:33:26,152.152 INFO    ] ================================================
[2026-06-12 05:33:26,480.480 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 05:33:26
[2026-06-12 05:33:26,792.792 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 05:33:26,922.922 INFO    ] Initializing speech engine...
[2026-06-12 05:33:26,936.936 INFO    ] 2026-06-12 05:33:26
[2026-06-12 05:33:27,140.140 INFO    ] 2026-06-12 05:33:27
[2026-06-12 05:33:27,170.170 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 05:33:27,354.354 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 05:33:27,357.357 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 05:33:27,509.509 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 05:33:27,562.562 INFO    ] time= 12/06/2026 05:33:27
[2026-06-12 05:33:27,584.584 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 05:33:27,591.591 INFO    ] Checking for existing commands in stream...
[2026-06-12 05:33:27,657.657 INFO    ] No existing commands found in stream
[2026-06-12 05:33:32,665.665 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 05:33:32,667.667 INFO    ] Waiting 2.21 seconds before fallback handling...
[2026-06-12 05:33:35,273.273 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 05:33:35,274.274 INFO    ] Checking for system updates...
[2026-06-12 05:33:35,295.295 INFO    ] 200
[2026-06-12 05:33:35,296.296 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:33:35,329.329 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 05:33:35,331.331 INFO    ] No update needed
[2026-06-12 05:33:35,332.332 INFO    ] Checking for camera pi updates...
[2026-06-12 05:33:35,351.351 INFO    ] 200
[2026-06-12 05:33:35,353.353 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:33:35,376.376 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 05:33:35,413.413 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 05:33:35,415.415 INFO    ] No camera update needed
[2026-06-12 05:33:35,416.416 INFO    ] Script finished. Safe exiting...
[2026-06-12 05:33:35,417.417 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 05:33:35,420.420 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 05:33:35,423.423 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 05:33:37,463.463 INFO    ] ================================================
[2026-06-12 05:33:37,478.478 INFO    ] Launching Daemon at Fri Jun 12 05:33:37 IST 2026
[2026-06-12 05:33:37,489.489 INFO    ] ================================================
[2026-06-12 05:33:37,857.857 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 05:33:37
[2026-06-12 05:33:38,199.199 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 05:33:38,351.351 INFO    ] Initializing speech engine...
[2026-06-12 05:33:38,357.357 INFO    ] 2026-06-12 05:33:38
[2026-06-12 05:33:38,569.569 INFO    ] 2026-06-12 05:33:38
[2026-06-12 05:33:38,598.598 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 05:33:38,785.785 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 05:33:38,795.795 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 05:33:38,927.927 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 05:33:38,996.996 INFO    ] time= 12/06/2026 05:33:38
[2026-06-12 05:33:39,020.020 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 05:33:39,026.026 INFO    ] Checking for existing commands in stream...
[2026-06-12 05:33:39,093.093 INFO    ] No existing commands found in stream
[2026-06-12 05:33:44,108.108 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 05:33:44,111.111 INFO    ] Waiting 1.43 seconds before fallback handling...
[2026-06-12 05:33:45,944.944 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 05:33:45,946.946 INFO    ] Checking for system updates...
[2026-06-12 05:33:45,969.969 INFO    ] 200
[2026-06-12 05:33:45,970.970 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:33:46,006.006 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 05:33:46,007.007 INFO    ] No update needed
[2026-06-12 05:33:46,009.009 INFO    ] Checking for camera pi updates...
[2026-06-12 05:33:46,031.031 INFO    ] 200
[2026-06-12 05:33:46,033.033 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:33:46,057.057 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 05:33:46,106.106 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 05:33:46,107.107 INFO    ] No camera update needed
[2026-06-12 05:33:46,109.109 INFO    ] Script finished. Safe exiting...
[2026-06-12 05:33:46,110.110 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 05:33:46,113.113 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 05:33:46,116.116 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 05:33:48,156.156 INFO    ] ================================================
[2026-06-12 05:33:48,171.171 INFO    ] Launching Daemon at Fri Jun 12 05:33:48 IST 2026
[2026-06-12 05:33:48,183.183 INFO    ] ================================================
[2026-06-12 05:33:48,518.518 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 05:33:48
[2026-06-12 05:33:48,829.829 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 05:33:48,959.959 INFO    ] Initializing speech engine...
[2026-06-12 05:33:48,968.968 INFO    ] 2026-06-12 05:33:48
[2026-06-12 05:33:49,181.181 INFO    ] 2026-06-12 05:33:49
[2026-06-12 05:33:49,209.209 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 05:33:49,395.395 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 05:33:49,404.404 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 05:33:49,591.591 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 05:33:49,624.624 INFO    ] time= 12/06/2026 05:33:49
[2026-06-12 05:33:49,630.630 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 05:33:49,632.632 INFO    ] Checking for existing commands in stream...
[2026-06-12 05:33:49,700.700 INFO    ] No existing commands found in stream
[2026-06-12 05:33:54,712.712 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 05:33:54,714.714 INFO    ] Waiting 2.45 seconds before fallback handling...
[2026-06-12 05:33:57,536.536 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 05:33:57,537.537 INFO    ] Checking for system updates...
[2026-06-12 05:33:57,559.559 INFO    ] 200
[2026-06-12 05:33:57,561.561 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:33:57,593.593 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 05:33:57,594.594 INFO    ] No update needed
[2026-06-12 05:33:57,595.595 INFO    ] Checking for camera pi updates...
[2026-06-12 05:33:57,615.615 INFO    ] 200
[2026-06-12 05:33:57,616.616 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:33:57,639.639 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 05:33:57,680.680 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 05:33:57,682.682 INFO    ] No camera update needed
[2026-06-12 05:33:57,683.683 INFO    ] Script finished. Safe exiting...
[2026-06-12 05:33:57,684.684 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 05:33:57,687.687 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 05:33:57,690.690 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 05:33:59,730.730 INFO    ] ================================================
[2026-06-12 05:33:59,746.746 INFO    ] Launching Daemon at Fri Jun 12 05:33:59 IST 2026
[2026-06-12 05:33:59,757.757 INFO    ] ================================================
[2026-06-12 05:34:00,103.103 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 05:34:00
[2026-06-12 05:34:00,415.415 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 05:34:00,557.557 INFO    ] Initializing speech engine...
[2026-06-12 05:34:00,562.562 INFO    ] 2026-06-12 05:34:00
[2026-06-12 05:34:00,764.764 INFO    ] 2026-06-12 05:34:00
[2026-06-12 05:34:00,793.793 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 05:34:00,978.978 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 05:34:00,987.987 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 05:34:01,166.166 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 05:34:01,204.204 INFO    ] time= 12/06/2026 05:34:01
[2026-06-12 05:34:01,206.206 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 05:34:01,212.212 INFO    ] Checking for existing commands in stream...
[2026-06-12 05:34:01,278.278 INFO    ] No existing commands found in stream
[2026-06-12 05:34:06,288.288 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 05:34:06,291.291 INFO    ] Waiting 0.69 seconds before fallback handling...
[2026-06-12 05:34:07,357.357 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 05:34:07,359.359 INFO    ] Checking for system updates...
[2026-06-12 05:34:07,381.381 INFO    ] 200
[2026-06-12 05:34:07,382.382 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:34:07,413.413 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 05:34:07,414.414 INFO    ] No update needed
[2026-06-12 05:34:07,415.415 INFO    ] Checking for camera pi updates...
[2026-06-12 05:34:07,435.435 INFO    ] 200
[2026-06-12 05:34:07,436.436 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:34:07,459.459 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 05:34:07,504.504 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 05:34:07,505.505 INFO    ] No camera update needed
[2026-06-12 05:34:07,507.507 INFO    ] Script finished. Safe exiting...
[2026-06-12 05:34:07,508.508 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 05:34:07,511.511 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 05:34:07,514.514 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 05:34:09,552.552 INFO    ] ================================================
[2026-06-12 05:34:09,568.568 INFO    ] Launching Daemon at Fri Jun 12 05:34:09 IST 2026
[2026-06-12 05:34:09,579.579 INFO    ] ================================================
[2026-06-12 05:34:09,953.953 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 05:34:09
[2026-06-12 05:34:10,276.276 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 05:34:10,420.420 INFO    ] Initializing speech engine...
[2026-06-12 05:34:10,425.425 INFO    ] 2026-06-12 05:34:10
[2026-06-12 05:34:10,632.632 INFO    ] 2026-06-12 05:34:10
[2026-06-12 05:34:10,661.661 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 05:34:10,784.784 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 05:34:10,848.848 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 05:34:10,984.984 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 05:34:11,040.040 INFO    ] time= 12/06/2026 05:34:10
[2026-06-12 05:34:11,083.083 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 05:34:11,085.085 INFO    ] Checking for existing commands in stream...
[2026-06-12 05:34:11,158.158 INFO    ] No existing commands found in stream
[2026-06-12 05:34:16,189.189 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 05:34:16,191.191 INFO    ] Waiting 1.95 seconds before fallback handling...
[2026-06-12 05:34:18,502.502 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 05:34:18,503.503 INFO    ] Checking for system updates...
[2026-06-12 05:34:18,524.524 INFO    ] 200
[2026-06-12 05:34:18,525.525 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:34:18,555.555 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 05:34:18,557.557 INFO    ] No update needed
[2026-06-12 05:34:18,558.558 INFO    ] Checking for camera pi updates...
[2026-06-12 05:34:18,581.581 INFO    ] 200
[2026-06-12 05:34:18,582.582 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:34:18,607.607 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 05:34:18,628.628 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 05:34:18,630.630 INFO    ] No camera update needed
[2026-06-12 05:34:18,631.631 INFO    ] Script finished. Safe exiting...
[2026-06-12 05:34:18,633.633 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 05:34:18,635.635 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 05:34:18,638.638 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 05:34:20,677.677 INFO    ] ================================================
[2026-06-12 05:34:20,693.693 INFO    ] Launching Daemon at Fri Jun 12 05:34:20 IST 2026
[2026-06-12 05:34:20,704.704 INFO    ] ================================================
[2026-06-12 05:34:21,046.046 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 05:34:21
[2026-06-12 05:34:21,368.368 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 05:34:21,518.518 INFO    ] Initializing speech engine...
[2026-06-12 05:34:21,523.523 INFO    ] 2026-06-12 05:34:21
[2026-06-12 05:34:21,732.732 INFO    ] 2026-06-12 05:34:21
[2026-06-12 05:34:21,761.761 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 05:34:21,945.945 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 05:34:21,954.954 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 05:34:22,104.104 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 05:34:22,152.152 INFO    ] time= 12/06/2026 05:34:22
[2026-06-12 05:34:22,175.175 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 05:34:22,181.181 INFO    ] Checking for existing commands in stream...
[2026-06-12 05:34:22,248.248 INFO    ] No existing commands found in stream
[2026-06-12 05:34:27,263.263 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 05:34:27,266.266 INFO    ] Waiting 0.64 seconds before fallback handling...
[2026-06-12 05:34:28,283.283 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 05:34:28,284.284 INFO    ] Checking for system updates...
[2026-06-12 05:34:28,305.305 INFO    ] 200
[2026-06-12 05:34:28,307.307 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:34:28,337.337 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 05:34:28,339.339 INFO    ] No update needed
[2026-06-12 05:34:28,340.340 INFO    ] Checking for camera pi updates...
[2026-06-12 05:34:28,360.360 INFO    ] 200
[2026-06-12 05:34:28,362.362 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:34:28,387.387 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 05:34:28,425.425 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 05:34:28,426.426 INFO    ] No camera update needed
[2026-06-12 05:34:28,428.428 INFO    ] Script finished. Safe exiting...
[2026-06-12 05:34:28,429.429 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 05:34:28,432.432 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 05:34:28,435.435 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 05:34:30,475.475 INFO    ] ================================================
[2026-06-12 05:34:30,491.491 INFO    ] Launching Daemon at Fri Jun 12 05:34:30 IST 2026
[2026-06-12 05:34:30,502.502 INFO    ] ================================================
[2026-06-12 05:34:30,862.862 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 05:34:30
[2026-06-12 05:34:31,197.197 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 05:34:31,347.347 INFO    ] Initializing speech engine...
[2026-06-12 05:34:31,353.353 INFO    ] 2026-06-12 05:34:31
[2026-06-12 05:34:31,560.560 INFO    ] 2026-06-12 05:34:31
[2026-06-12 05:34:31,587.587 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 05:34:31,772.772 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 05:34:31,782.782 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 05:34:31,927.927 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 05:34:31,977.977 INFO    ] time= 12/06/2026 05:34:31
[2026-06-12 05:34:32,012.012 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 05:34:32,019.019 INFO    ] Checking for existing commands in stream...
[2026-06-12 05:34:32,139.139 INFO    ] No existing commands found in stream
[2026-06-12 05:34:37,150.150 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 05:34:37,153.153 INFO    ] Waiting 0.49 seconds before fallback handling...
[2026-06-12 05:34:43,063.063 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 05:34:43,064.064 INFO    ] Checking for system updates...
[2026-06-12 05:34:43,085.085 INFO    ] 200
[2026-06-12 05:34:43,087.087 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:34:43,118.118 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 05:34:43,119.119 INFO    ] No update needed
[2026-06-12 05:34:43,121.121 INFO    ] Checking for camera pi updates...
[2026-06-12 05:34:43,140.140 INFO    ] 200
[2026-06-12 05:34:43,142.142 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:34:43,167.167 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 05:34:43,310.310 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 05:34:43,312.312 INFO    ] No camera update needed
[2026-06-12 05:34:43,313.313 INFO    ] Script finished. Safe exiting...
[2026-06-12 05:34:43,314.314 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 05:34:43,318.318 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 05:34:43,321.321 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 05:34:45,361.361 INFO    ] ================================================
[2026-06-12 05:34:45,377.377 INFO    ] Launching Daemon at Fri Jun 12 05:34:45 IST 2026
[2026-06-12 05:34:45,388.388 INFO    ] ================================================
[2026-06-12 05:34:45,744.744 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 05:34:45
[2026-06-12 05:34:46,055.055 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 05:34:46,185.185 INFO    ] Initializing speech engine...
[2026-06-12 05:34:46,189.189 INFO    ] 2026-06-12 05:34:46
[2026-06-12 05:34:46,417.417 INFO    ] 2026-06-12 05:34:46
[2026-06-12 05:34:46,448.448 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 05:34:46,643.643 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 05:34:46,647.647 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 05:34:46,784.784 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 05:34:46,840.840 INFO    ] time= 12/06/2026 05:34:46
[2026-06-12 05:34:46,880.880 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 05:34:46,891.891 INFO    ] Checking for existing commands in stream...
[2026-06-12 05:34:46,966.966 INFO    ] No existing commands found in stream
[2026-06-12 05:34:51,974.974 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 05:34:51,976.976 INFO    ] Waiting 2.23 seconds before fallback handling...
[2026-06-12 05:34:54,608.608 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 05:34:54,609.609 INFO    ] Checking for system updates...
[2026-06-12 05:34:54,630.630 INFO    ] 200
[2026-06-12 05:34:54,631.631 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:34:54,664.664 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 05:34:54,665.665 INFO    ] No update needed
[2026-06-12 05:34:54,666.666 INFO    ] Checking for camera pi updates...
[2026-06-12 05:34:54,690.690 INFO    ] 200
[2026-06-12 05:34:54,691.691 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:34:54,717.717 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 05:34:54,765.765 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 05:34:54,766.766 INFO    ] No camera update needed
[2026-06-12 05:34:54,767.767 INFO    ] Script finished. Safe exiting...
[2026-06-12 05:34:54,769.769 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 05:34:54,772.772 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 05:34:54,775.775 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 05:34:56,816.816 INFO    ] ================================================
[2026-06-12 05:34:56,832.832 INFO    ] Launching Daemon at Fri Jun 12 05:34:56 IST 2026
[2026-06-12 05:34:56,843.843 INFO    ] ================================================
[2026-06-12 05:34:57,185.185 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 05:34:57
[2026-06-12 05:34:57,498.498 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 05:34:57,633.633 INFO    ] Initializing speech engine...
[2026-06-12 05:34:57,646.646 INFO    ] 2026-06-12 05:34:57
[2026-06-12 05:34:57,864.864 INFO    ] 2026-06-12 05:34:57
[2026-06-12 05:34:57,895.895 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 05:34:58,090.090 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 05:34:58,094.094 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 05:34:58,238.238 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 05:34:58,292.292 INFO    ] time= 12/06/2026 05:34:58
[2026-06-12 05:34:58,320.320 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 05:34:58,337.337 INFO    ] Checking for existing commands in stream...
[2026-06-12 05:34:58,413.413 INFO    ] No existing commands found in stream
[2026-06-12 05:35:03,422.422 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 05:35:03,425.425 INFO    ] Waiting 1.34 seconds before fallback handling...
[2026-06-12 05:35:05,156.156 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 05:35:05,158.158 INFO    ] Checking for system updates...
[2026-06-12 05:35:05,179.179 INFO    ] 200
[2026-06-12 05:35:05,180.180 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:35:05,211.211 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 05:35:05,212.212 INFO    ] No update needed
[2026-06-12 05:35:05,213.213 INFO    ] Checking for camera pi updates...
[2026-06-12 05:35:05,233.233 INFO    ] 200
[2026-06-12 05:35:05,234.234 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:35:05,257.257 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 05:35:05,302.302 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 05:35:05,303.303 INFO    ] No camera update needed
[2026-06-12 05:35:05,305.305 INFO    ] Script finished. Safe exiting...
[2026-06-12 05:35:05,306.306 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 05:35:05,309.309 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 05:35:05,311.311 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 05:35:07,350.350 INFO    ] ================================================
[2026-06-12 05:35:07,366.366 INFO    ] Launching Daemon at Fri Jun 12 05:35:07 IST 2026
[2026-06-12 05:35:07,378.378 INFO    ] ================================================
[2026-06-12 05:35:07,744.744 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 05:35:07
[2026-06-12 05:35:08,076.076 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 05:35:08,214.214 INFO    ] Initializing speech engine...
[2026-06-12 05:35:08,216.216 INFO    ] 2026-06-12 05:35:08
[2026-06-12 05:35:08,437.437 INFO    ] 2026-06-12 05:35:08
[2026-06-12 05:35:08,467.467 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 05:35:08,611.611 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 05:35:08,618.618 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 05:35:08,763.763 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 05:35:08,805.805 INFO    ] time= 12/06/2026 05:35:08
[2026-06-12 05:35:08,858.858 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 05:35:08,896.896 INFO    ] Checking for existing commands in stream...
[2026-06-12 05:35:08,979.979 INFO    ] No existing commands found in stream
[2026-06-12 05:35:13,990.990 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 05:35:13,993.993 INFO    ] Waiting 2.44 seconds before fallback handling...
[2026-06-12 05:35:16,815.815 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 05:35:16,816.816 INFO    ] Checking for system updates...
[2026-06-12 05:35:16,837.837 INFO    ] 200
[2026-06-12 05:35:16,838.838 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:35:16,869.869 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 05:35:16,870.870 INFO    ] No update needed
[2026-06-12 05:35:16,872.872 INFO    ] Checking for camera pi updates...
[2026-06-12 05:35:16,891.891 INFO    ] 200
[2026-06-12 05:35:16,892.892 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:35:16,919.919 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 05:35:16,955.955 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 05:35:16,956.956 INFO    ] No camera update needed
[2026-06-12 05:35:16,958.958 INFO    ] Script finished. Safe exiting...
[2026-06-12 05:35:16,959.959 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 05:35:16,962.962 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 05:35:16,965.965 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 05:35:19,004.004 INFO    ] ================================================
[2026-06-12 05:35:19,026.026 INFO    ] Launching Daemon at Fri Jun 12 05:35:19 IST 2026
[2026-06-12 05:35:19,036.036 INFO    ] ================================================
[2026-06-12 05:35:19,382.382 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 05:35:19
[2026-06-12 05:35:19,696.696 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 05:35:19,840.840 INFO    ] Initializing speech engine...
[2026-06-12 05:35:19,845.845 INFO    ] 2026-06-12 05:35:19
[2026-06-12 05:35:20,051.051 INFO    ] 2026-06-12 05:35:20
[2026-06-12 05:35:20,080.080 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 05:35:20,270.270 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 05:35:20,274.274 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 05:35:20,412.412 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 05:35:20,468.468 INFO    ] time= 12/06/2026 05:35:20
[2026-06-12 05:35:20,508.508 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 05:35:20,519.519 INFO    ] Checking for existing commands in stream...
[2026-06-12 05:35:20,646.646 INFO    ] No existing commands found in stream
[2026-06-12 05:35:25,655.655 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 05:35:25,658.658 INFO    ] Waiting 3.85 seconds before fallback handling...
[2026-06-12 05:35:29,944.944 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 05:35:29,946.946 INFO    ] Checking for system updates...
[2026-06-12 05:35:29,967.967 INFO    ] 200
[2026-06-12 05:35:29,968.968 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:35:29,999.999 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 05:35:30,001.001 INFO    ] No update needed
[2026-06-12 05:35:30,002.002 INFO    ] Checking for camera pi updates...
[2026-06-12 05:35:30,022.022 INFO    ] 200
[2026-06-12 05:35:30,023.023 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:35:30,046.046 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 05:35:30,087.087 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 05:35:30,088.088 INFO    ] No camera update needed
[2026-06-12 05:35:30,089.089 INFO    ] Script finished. Safe exiting...
[2026-06-12 05:35:30,091.091 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 05:35:30,094.094 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 05:35:30,097.097 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 05:35:32,129.129 INFO    ] ================================================
[2026-06-12 05:35:32,137.137 INFO    ] Launching Daemon at Fri Jun 12 05:35:32 IST 2026
[2026-06-12 05:35:32,143.143 INFO    ] ================================================
[2026-06-12 05:35:32,490.490 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 05:35:32
[2026-06-12 05:35:32,801.801 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 05:35:32,929.929 INFO    ] Initializing speech engine...
[2026-06-12 05:35:32,934.934 INFO    ] 2026-06-12 05:35:32
[2026-06-12 05:35:33,152.152 INFO    ] 2026-06-12 05:35:33
[2026-06-12 05:35:33,180.180 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 05:35:33,366.366 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 05:35:33,375.375 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 05:35:33,551.551 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 05:35:33,591.591 INFO    ] time= 12/06/2026 05:35:33
[2026-06-12 05:35:33,597.597 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 05:35:33,603.603 INFO    ] Checking for existing commands in stream...
[2026-06-12 05:35:33,695.695 INFO    ] No existing commands found in stream
[2026-06-12 05:35:38,703.703 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 05:35:38,706.706 INFO    ] Waiting 1.57 seconds before fallback handling...
[2026-06-12 05:35:40,676.676 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 05:35:40,678.678 INFO    ] Checking for system updates...
[2026-06-12 05:35:40,701.701 INFO    ] 200
[2026-06-12 05:35:40,702.702 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:35:40,733.733 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 05:35:40,734.734 INFO    ] No update needed
[2026-06-12 05:35:40,735.735 INFO    ] Checking for camera pi updates...
[2026-06-12 05:35:40,755.755 INFO    ] 200
[2026-06-12 05:35:40,756.756 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:35:40,779.779 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 05:35:40,814.814 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 05:35:40,816.816 INFO    ] No camera update needed
[2026-06-12 05:35:40,817.817 INFO    ] Script finished. Safe exiting...
[2026-06-12 05:35:40,818.818 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 05:35:40,821.821 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 05:35:40,824.824 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 05:35:42,863.863 INFO    ] ================================================
[2026-06-12 05:35:42,878.878 INFO    ] Launching Daemon at Fri Jun 12 05:35:42 IST 2026
[2026-06-12 05:35:42,889.889 INFO    ] ================================================
[2026-06-12 05:35:43,226.226 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 05:35:43
[2026-06-12 05:35:43,541.541 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 05:35:43,677.677 INFO    ] Initializing speech engine...
[2026-06-12 05:35:43,686.686 INFO    ] 2026-06-12 05:35:43
[2026-06-12 05:35:43,892.892 INFO    ] 2026-06-12 05:35:43
[2026-06-12 05:35:43,921.921 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 05:35:44,107.107 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 05:35:44,116.116 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 05:35:44,271.271 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 05:35:44,317.317 INFO    ] time= 12/06/2026 05:35:44
[2026-06-12 05:35:44,339.339 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 05:35:44,345.345 INFO    ] Checking for existing commands in stream...
[2026-06-12 05:35:44,437.437 INFO    ] No existing commands found in stream
[2026-06-12 05:35:49,446.446 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 05:35:49,449.449 INFO    ] Waiting 3.48 seconds before fallback handling...
[2026-06-12 05:35:53,334.334 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 05:35:53,336.336 INFO    ] Checking for system updates...
[2026-06-12 05:35:53,357.357 INFO    ] 200
[2026-06-12 05:35:53,358.358 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:35:53,388.388 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 05:35:53,389.389 INFO    ] No update needed
[2026-06-12 05:35:53,391.391 INFO    ] Checking for camera pi updates...
[2026-06-12 05:35:53,410.410 INFO    ] 200
[2026-06-12 05:35:53,412.412 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:35:53,435.435 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 05:35:53,475.475 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 05:35:53,476.476 INFO    ] No camera update needed
[2026-06-12 05:35:53,478.478 INFO    ] Script finished. Safe exiting...
[2026-06-12 05:35:53,479.479 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 05:35:53,482.482 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 05:35:53,485.485 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 05:35:55,523.523 INFO    ] ================================================
[2026-06-12 05:35:55,542.542 INFO    ] Launching Daemon at Fri Jun 12 05:35:55 IST 2026
[2026-06-12 05:35:55,554.554 INFO    ] ================================================
[2026-06-12 05:35:55,927.927 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 05:35:55
[2026-06-12 05:35:56,260.260 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 05:35:56,410.410 INFO    ] Initializing speech engine...
[2026-06-12 05:35:56,416.416 INFO    ] 2026-06-12 05:35:56
[2026-06-12 05:35:56,622.622 INFO    ] 2026-06-12 05:35:56
[2026-06-12 05:35:56,651.651 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 05:35:56,836.836 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 05:35:56,847.847 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 05:35:57,019.019 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 05:35:57,058.058 INFO    ] time= 12/06/2026 05:35:57
[2026-06-12 05:35:57,064.064 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 05:35:57,070.070 INFO    ] Checking for existing commands in stream...
[2026-06-12 05:35:57,137.137 INFO    ] No existing commands found in stream
[2026-06-12 05:36:02,151.151 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 05:36:02,153.153 INFO    ] Waiting 2.40 seconds before fallback handling...
[2026-06-12 05:36:04,914.914 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 05:36:04,916.916 INFO    ] Checking for system updates...
[2026-06-12 05:36:04,937.937 INFO    ] 200
[2026-06-12 05:36:04,938.938 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:36:04,971.971 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 05:36:04,972.972 INFO    ] No update needed
[2026-06-12 05:36:04,973.973 INFO    ] Checking for camera pi updates...
[2026-06-12 05:36:04,993.993 INFO    ] 200
[2026-06-12 05:36:04,994.994 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:36:05,017.017 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 05:36:05,065.065 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 05:36:05,066.066 INFO    ] No camera update needed
[2026-06-12 05:36:05,067.067 INFO    ] Script finished. Safe exiting...
[2026-06-12 05:36:05,069.069 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 05:36:05,072.072 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 05:36:05,075.075 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 05:36:07,115.115 INFO    ] ================================================
[2026-06-12 05:36:07,131.131 INFO    ] Launching Daemon at Fri Jun 12 05:36:07 IST 2026
[2026-06-12 05:36:07,142.142 INFO    ] ================================================
[2026-06-12 05:36:07,495.495 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 05:36:07
[2026-06-12 05:36:07,830.830 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 05:36:07,980.980 INFO    ] Initializing speech engine...
[2026-06-12 05:36:07,986.986 INFO    ] 2026-06-12 05:36:07
[2026-06-12 05:36:08,193.193 INFO    ] 2026-06-12 05:36:08
[2026-06-12 05:36:08,222.222 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 05:36:08,409.409 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 05:36:08,421.421 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 05:36:08,606.606 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 05:36:08,639.639 INFO    ] time= 12/06/2026 05:36:08
[2026-06-12 05:36:08,646.646 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 05:36:08,647.647 INFO    ] Checking for existing commands in stream...
[2026-06-12 05:36:08,714.714 INFO    ] No existing commands found in stream
[2026-06-12 05:36:13,724.724 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 05:36:13,727.727 INFO    ] Waiting 3.56 seconds before fallback handling...
[2026-06-12 05:36:17,672.672 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 05:36:17,674.674 INFO    ] Checking for system updates...
[2026-06-12 05:36:17,695.695 INFO    ] 200
[2026-06-12 05:36:17,696.696 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:36:17,729.729 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 05:36:17,730.730 INFO    ] No update needed
[2026-06-12 05:36:17,732.732 INFO    ] Checking for camera pi updates...
[2026-06-12 05:36:17,751.751 INFO    ] 200
[2026-06-12 05:36:17,753.753 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:36:17,776.776 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 05:36:17,821.821 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 05:36:17,822.822 INFO    ] No camera update needed
[2026-06-12 05:36:17,823.823 INFO    ] Script finished. Safe exiting...
[2026-06-12 05:36:17,824.824 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 05:36:17,827.827 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 05:36:17,830.830 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 05:36:19,869.869 INFO    ] ================================================
[2026-06-12 05:36:19,884.884 INFO    ] Launching Daemon at Fri Jun 12 05:36:19 IST 2026
[2026-06-12 05:36:19,895.895 INFO    ] ================================================
[2026-06-12 05:36:20,243.243 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 05:36:20
[2026-06-12 05:36:20,577.577 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 05:36:20,729.729 INFO    ] Initializing speech engine...
[2026-06-12 05:36:20,734.734 INFO    ] 2026-06-12 05:36:20
[2026-06-12 05:36:20,939.939 INFO    ] 2026-06-12 05:36:20
[2026-06-12 05:36:20,968.968 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 05:36:21,150.150 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 05:36:21,161.161 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 05:36:21,355.355 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 05:36:21,379.379 INFO    ] time= 12/06/2026 05:36:21
[2026-06-12 05:36:21,385.385 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 05:36:21,386.386 INFO    ] Checking for existing commands in stream...
[2026-06-12 05:36:21,476.476 INFO    ] No existing commands found in stream
[2026-06-12 05:36:26,486.486 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 05:36:26,489.489 INFO    ] Waiting 3.02 seconds before fallback handling...
[2026-06-12 05:36:29,921.921 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 05:36:29,923.923 INFO    ] Checking for system updates...
[2026-06-12 05:36:29,944.944 INFO    ] 200
[2026-06-12 05:36:29,945.945 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:36:29,979.979 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 05:36:29,981.981 INFO    ] No update needed
[2026-06-12 05:36:29,982.982 INFO    ] Checking for camera pi updates...
[2026-06-12 05:36:30,005.005 INFO    ] 200
[2026-06-12 05:36:30,007.007 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:36:30,032.032 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 05:36:30,076.076 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 05:36:30,078.078 INFO    ] No camera update needed
[2026-06-12 05:36:30,079.079 INFO    ] Script finished. Safe exiting...
[2026-06-12 05:36:30,080.080 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 05:36:30,083.083 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 05:36:30,086.086 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 05:36:32,117.117 INFO    ] ================================================
[2026-06-12 05:36:32,127.127 INFO    ] Launching Daemon at Fri Jun 12 05:36:32 IST 2026
[2026-06-12 05:36:32,133.133 INFO    ] ================================================
[2026-06-12 05:36:32,503.503 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 05:36:32
[2026-06-12 05:36:32,814.814 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 05:36:32,944.944 INFO    ] Initializing speech engine...
[2026-06-12 05:36:32,947.947 INFO    ] 2026-06-12 05:36:32
[2026-06-12 05:36:33,176.176 INFO    ] 2026-06-12 05:36:33
[2026-06-12 05:36:33,206.206 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 05:36:33,400.400 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 05:36:33,409.409 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 05:36:33,546.546 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 05:36:33,614.614 INFO    ] time= 12/06/2026 05:36:33
[2026-06-12 05:36:33,643.643 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 05:36:33,648.648 INFO    ] Checking for existing commands in stream...
[2026-06-12 05:36:33,719.719 INFO    ] No existing commands found in stream
[2026-06-12 05:36:38,728.728 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 05:36:38,731.731 INFO    ] Waiting 3.77 seconds before fallback handling...
[2026-06-12 05:36:42,886.886 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 05:36:42,888.888 INFO    ] Checking for system updates...
[2026-06-12 05:36:42,909.909 INFO    ] 200
[2026-06-12 05:36:42,910.910 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:36:42,942.942 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 05:36:42,943.943 INFO    ] No update needed
[2026-06-12 05:36:42,945.945 INFO    ] Checking for camera pi updates...
[2026-06-12 05:36:42,964.964 INFO    ] 200
[2026-06-12 05:36:42,965.965 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:36:42,989.989 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 05:36:43,030.030 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 05:36:43,031.031 INFO    ] No camera update needed
[2026-06-12 05:36:43,032.032 INFO    ] Script finished. Safe exiting...
[2026-06-12 05:36:43,034.034 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 05:36:43,037.037 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 05:36:43,039.039 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 05:36:45,079.079 INFO    ] ================================================
[2026-06-12 05:36:45,094.094 INFO    ] Launching Daemon at Fri Jun 12 05:36:45 IST 2026
[2026-06-12 05:36:45,106.106 INFO    ] ================================================
[2026-06-12 05:36:45,456.456 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 05:36:45
[2026-06-12 05:36:45,784.784 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 05:36:45,935.935 INFO    ] Initializing speech engine...
[2026-06-12 05:36:45,939.939 INFO    ] 2026-06-12 05:36:45
[2026-06-12 05:36:46,147.147 INFO    ] 2026-06-12 05:36:46
[2026-06-12 05:36:46,176.176 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 05:36:46,363.363 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 05:36:46,372.372 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 05:36:46,504.504 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 05:36:46,572.572 INFO    ] time= 12/06/2026 05:36:46
[2026-06-12 05:36:46,595.595 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 05:36:46,602.602 INFO    ] Checking for existing commands in stream...
[2026-06-12 05:36:46,668.668 INFO    ] No existing commands found in stream
[2026-06-12 05:36:51,703.703 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 05:36:51,712.712 INFO    ] Waiting 1.71 seconds before fallback handling...
[2026-06-12 05:36:53,845.845 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 05:36:53,847.847 INFO    ] Checking for system updates...
[2026-06-12 05:36:53,867.867 INFO    ] 200
[2026-06-12 05:36:53,869.869 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:36:53,900.900 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 05:36:53,901.901 INFO    ] No update needed
[2026-06-12 05:36:53,903.903 INFO    ] Checking for camera pi updates...
[2026-06-12 05:36:53,922.922 INFO    ] 200
[2026-06-12 05:36:53,924.924 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:36:53,947.947 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 05:36:54,089.089 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 05:36:54,091.091 INFO    ] No camera update needed
[2026-06-12 05:36:54,092.092 INFO    ] Script finished. Safe exiting...
[2026-06-12 05:36:54,094.094 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 05:36:54,097.097 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 05:36:54,100.100 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 05:36:56,138.138 INFO    ] ================================================
[2026-06-12 05:36:56,154.154 INFO    ] Launching Daemon at Fri Jun 12 05:36:56 IST 2026
[2026-06-12 05:36:56,165.165 INFO    ] ================================================
[2026-06-12 05:36:56,500.500 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 05:36:56
[2026-06-12 05:36:56,828.828 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 05:36:56,986.986 INFO    ] Initializing speech engine...
[2026-06-12 05:36:56,992.992 INFO    ] 2026-06-12 05:36:56
[2026-06-12 05:36:57,190.190 INFO    ] 2026-06-12 05:36:57
[2026-06-12 05:36:57,218.218 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 05:36:57,402.402 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 05:36:57,406.406 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 05:36:57,541.541 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 05:36:57,608.608 INFO    ] time= 12/06/2026 05:36:57
[2026-06-12 05:36:57,632.632 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 05:36:57,638.638 INFO    ] Checking for existing commands in stream...
[2026-06-12 05:36:57,706.706 INFO    ] No existing commands found in stream
[2026-06-12 05:37:02,711.711 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 05:37:02,713.713 INFO    ] Waiting 1.05 seconds before fallback handling...
[2026-06-12 05:37:04,136.136 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 05:37:04,138.138 INFO    ] Checking for system updates...
[2026-06-12 05:37:04,159.159 INFO    ] 200
[2026-06-12 05:37:04,161.161 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:37:04,193.193 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 05:37:04,194.194 INFO    ] No update needed
[2026-06-12 05:37:04,196.196 INFO    ] Checking for camera pi updates...
[2026-06-12 05:37:04,215.215 INFO    ] 200
[2026-06-12 05:37:04,216.216 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:37:04,240.240 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 05:37:04,281.281 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 05:37:04,282.282 INFO    ] No camera update needed
[2026-06-12 05:37:04,283.283 INFO    ] Script finished. Safe exiting...
[2026-06-12 05:37:04,285.285 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 05:37:04,288.288 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 05:37:04,291.291 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 05:37:06,330.330 INFO    ] ================================================
[2026-06-12 05:37:06,345.345 INFO    ] Launching Daemon at Fri Jun 12 05:37:06 IST 2026
[2026-06-12 05:37:06,356.356 INFO    ] ================================================
[2026-06-12 05:37:06,695.695 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 05:37:06
[2026-06-12 05:37:07,026.026 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 05:37:07,178.178 INFO    ] Initializing speech engine...
[2026-06-12 05:37:07,185.185 INFO    ] 2026-06-12 05:37:07
[2026-06-12 05:37:07,391.391 INFO    ] 2026-06-12 05:37:07
[2026-06-12 05:37:07,420.420 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 05:37:07,605.605 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 05:37:07,614.614 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 05:37:07,735.735 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 05:37:07,751.751 INFO    ] time= 12/06/2026 05:37:07
[2026-06-12 05:37:07,818.818 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 05:37:07,844.844 INFO    ] Checking for existing commands in stream...
[2026-06-12 05:37:07,917.917 INFO    ] No existing commands found in stream
[2026-06-12 05:37:12,926.926 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 05:37:12,929.929 INFO    ] Waiting 1.76 seconds before fallback handling...
[2026-06-12 05:37:15,093.093 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 05:37:15,094.094 INFO    ] Checking for system updates...
[2026-06-12 05:37:15,116.116 INFO    ] 200
[2026-06-12 05:37:15,118.118 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:37:15,151.151 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 05:37:15,152.152 INFO    ] No update needed
[2026-06-12 05:37:15,154.154 INFO    ] Checking for camera pi updates...
[2026-06-12 05:37:15,174.174 INFO    ] 200
[2026-06-12 05:37:15,175.175 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:37:15,201.201 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 05:37:15,240.240 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 05:37:15,242.242 INFO    ] No camera update needed
[2026-06-12 05:37:15,243.243 INFO    ] Script finished. Safe exiting...
[2026-06-12 05:37:15,244.244 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 05:37:15,248.248 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 05:37:15,251.251 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 05:37:17,290.290 INFO    ] ================================================
[2026-06-12 05:37:17,305.305 INFO    ] Launching Daemon at Fri Jun 12 05:37:17 IST 2026
[2026-06-12 05:37:17,317.317 INFO    ] ================================================
[2026-06-12 05:37:17,666.666 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 05:37:17
[2026-06-12 05:37:17,995.995 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 05:37:18,150.150 INFO    ] Initializing speech engine...
[2026-06-12 05:37:18,156.156 INFO    ] 2026-06-12 05:37:18
[2026-06-12 05:37:18,356.356 INFO    ] 2026-06-12 05:37:18
[2026-06-12 05:37:18,384.384 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 05:37:18,564.564 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 05:37:18,566.566 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 05:37:18,704.704 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 05:37:18,742.742 INFO    ] time= 12/06/2026 05:37:18
[2026-06-12 05:37:18,791.791 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 05:37:18,833.833 INFO    ] Checking for existing commands in stream...
[2026-06-12 05:37:18,932.932 INFO    ] No existing commands found in stream
[2026-06-12 05:37:23,943.943 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 05:37:23,946.946 INFO    ] Waiting 2.35 seconds before fallback handling...
[2026-06-12 05:37:26,684.684 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 05:37:26,686.686 INFO    ] Checking for system updates...
[2026-06-12 05:37:26,707.707 INFO    ] 200
[2026-06-12 05:37:26,708.708 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:37:26,739.739 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 05:37:26,740.740 INFO    ] No update needed
[2026-06-12 05:37:26,742.742 INFO    ] Checking for camera pi updates...
[2026-06-12 05:37:26,762.762 INFO    ] 200
[2026-06-12 05:37:26,763.763 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:37:26,786.786 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 05:37:26,821.821 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 05:37:26,823.823 INFO    ] No camera update needed
[2026-06-12 05:37:26,824.824 INFO    ] Script finished. Safe exiting...
[2026-06-12 05:37:26,826.826 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 05:37:26,829.829 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 05:37:26,832.832 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 05:37:28,871.871 INFO    ] ================================================
[2026-06-12 05:37:28,887.887 INFO    ] Launching Daemon at Fri Jun 12 05:37:28 IST 2026
[2026-06-12 05:37:28,898.898 INFO    ] ================================================
[2026-06-12 05:37:29,237.237 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 05:37:29
[2026-06-12 05:37:29,549.549 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 05:37:29,685.685 INFO    ] Initializing speech engine...
[2026-06-12 05:37:29,697.697 INFO    ] 2026-06-12 05:37:29
[2026-06-12 05:37:29,913.913 INFO    ] 2026-06-12 05:37:29
[2026-06-12 05:37:29,943.943 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 05:37:30,136.136 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 05:37:30,146.146 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 05:37:30,330.330 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 05:37:30,367.367 INFO    ] time= 12/06/2026 05:37:30
[2026-06-12 05:37:30,378.378 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 05:37:30,385.385 INFO    ] Checking for existing commands in stream...
[2026-06-12 05:37:30,454.454 INFO    ] No existing commands found in stream
[2026-06-12 05:37:35,464.464 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 05:37:35,467.467 INFO    ] Waiting 0.94 seconds before fallback handling...
[2026-06-12 05:37:36,775.775 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 05:37:36,777.777 INFO    ] Checking for system updates...
[2026-06-12 05:37:36,797.797 INFO    ] 200
[2026-06-12 05:37:36,799.799 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:37:36,829.829 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 05:37:36,830.830 INFO    ] No update needed
[2026-06-12 05:37:36,832.832 INFO    ] Checking for camera pi updates...
[2026-06-12 05:37:36,851.851 INFO    ] 200
[2026-06-12 05:37:36,852.852 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:37:36,875.875 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 05:37:36,912.912 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 05:37:36,913.913 INFO    ] No camera update needed
[2026-06-12 05:37:36,914.914 INFO    ] Script finished. Safe exiting...
[2026-06-12 05:37:36,915.915 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 05:37:36,918.918 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 05:37:36,921.921 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 05:37:38,960.960 INFO    ] ================================================
[2026-06-12 05:37:38,975.975 INFO    ] Launching Daemon at Fri Jun 12 05:37:38 IST 2026
[2026-06-12 05:37:38,987.987 INFO    ] ================================================
[2026-06-12 05:37:39,340.340 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 05:37:39
[2026-06-12 05:37:39,651.651 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 05:37:39,784.784 INFO    ] Initializing speech engine...
[2026-06-12 05:37:39,787.787 INFO    ] 2026-06-12 05:37:39
[2026-06-12 05:37:40,005.005 INFO    ] 2026-06-12 05:37:39
[2026-06-12 05:37:40,035.035 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 05:37:40,219.219 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 05:37:40,222.222 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 05:37:40,352.352 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 05:37:40,408.408 INFO    ] time= 12/06/2026 05:37:40
[2026-06-12 05:37:40,451.451 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 05:37:40,453.453 INFO    ] Checking for existing commands in stream...
[2026-06-12 05:37:40,525.525 INFO    ] No existing commands found in stream
[2026-06-12 05:37:45,540.540 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 05:37:45,543.543 INFO    ] Waiting 3.76 seconds before fallback handling...
[2026-06-12 05:37:49,718.718 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 05:37:49,721.721 INFO    ] Checking for system updates...
[2026-06-12 05:37:49,760.760 INFO    ] 200
[2026-06-12 05:37:49,763.763 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:37:49,824.824 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 05:37:49,826.826 INFO    ] No update needed
[2026-06-12 05:37:49,828.828 INFO    ] Checking for camera pi updates...
[2026-06-12 05:37:49,858.858 INFO    ] 200
[2026-06-12 05:37:49,859.859 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:37:49,883.883 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 05:37:49,931.931 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 05:37:49,933.933 INFO    ] No camera update needed
[2026-06-12 05:37:49,934.934 INFO    ] Script finished. Safe exiting...
[2026-06-12 05:37:49,935.935 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 05:37:49,938.938 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 05:37:49,941.941 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 05:37:51,980.980 INFO    ] ================================================
[2026-06-12 05:37:52,995.995 INFO    ] Launching Daemon at Fri Jun 12 05:37:51 IST 2026
[2026-06-12 05:37:52,007.007 INFO    ] ================================================
[2026-06-12 05:37:52,375.375 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 05:37:52
[2026-06-12 05:37:52,687.687 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 05:37:52,818.818 INFO    ] Initializing speech engine...
[2026-06-12 05:37:52,832.832 INFO    ] 2026-06-12 05:37:52
[2026-06-12 05:37:53,040.040 INFO    ] 2026-06-12 05:37:53
[2026-06-12 05:37:53,069.069 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 05:37:53,254.254 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 05:37:53,257.257 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 05:37:53,411.411 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 05:37:53,464.464 INFO    ] time= 12/06/2026 05:37:53
[2026-06-12 05:37:53,487.487 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 05:37:53,494.494 INFO    ] Checking for existing commands in stream...
[2026-06-12 05:37:53,561.561 INFO    ] No existing commands found in stream
[2026-06-12 05:37:58,570.570 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 05:37:58,573.573 INFO    ] Waiting 0.14 seconds before fallback handling...
[2026-06-12 05:38:00,204.204 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 05:38:00,208.208 INFO    ] Checking for system updates...
[2026-06-12 05:38:00,244.244 INFO    ] 200
[2026-06-12 05:38:00,247.247 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:38:00,304.304 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 05:38:00,306.306 INFO    ] No update needed
[2026-06-12 05:38:00,309.309 INFO    ] Checking for camera pi updates...
[2026-06-12 05:38:00,343.343 INFO    ] 200
[2026-06-12 05:38:00,345.345 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:38:00,386.386 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 05:38:00,427.427 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 05:38:00,429.429 INFO    ] No camera update needed
[2026-06-12 05:38:00,430.430 INFO    ] Script finished. Safe exiting...
[2026-06-12 05:38:00,431.431 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 05:38:00,434.434 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 05:38:00,437.437 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 05:38:02,470.470 INFO    ] ================================================
[2026-06-12 05:38:02,481.481 INFO    ] Launching Daemon at Fri Jun 12 05:38:02 IST 2026
[2026-06-12 05:38:02,489.489 INFO    ] ================================================
[2026-06-12 05:38:02,835.835 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 05:38:02
[2026-06-12 05:38:03,174.174 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 05:38:03,304.304 INFO    ] Initializing speech engine...
[2026-06-12 05:38:03,309.309 INFO    ] 2026-06-12 05:38:03
[2026-06-12 05:38:03,528.528 INFO    ] 2026-06-12 05:38:03
[2026-06-12 05:38:03,557.557 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 05:38:03,743.743 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 05:38:03,757.757 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 05:38:03,952.952 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 05:38:03,977.977 INFO    ] time= 12/06/2026 05:38:03
[2026-06-12 05:38:03,983.983 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 05:38:03,985.985 INFO    ] Checking for existing commands in stream...
[2026-06-12 05:38:04,051.051 INFO    ] No existing commands found in stream
[2026-06-12 05:38:09,061.061 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 05:38:09,064.064 INFO    ] Waiting 2.43 seconds before fallback handling...
[2026-06-12 05:38:11,853.853 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 05:38:11,855.855 INFO    ] Checking for system updates...
[2026-06-12 05:38:11,876.876 INFO    ] 200
[2026-06-12 05:38:11,877.877 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:38:11,910.910 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 05:38:11,911.911 INFO    ] No update needed
[2026-06-12 05:38:11,912.912 INFO    ] Checking for camera pi updates...
[2026-06-12 05:38:11,934.934 INFO    ] 200
[2026-06-12 05:38:11,935.935 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:38:11,959.959 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 05:38:11,981.981 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 05:38:11,982.982 INFO    ] No camera update needed
[2026-06-12 05:38:11,983.983 INFO    ] Script finished. Safe exiting...
[2026-06-12 05:38:11,985.985 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 05:38:11,988.988 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 05:38:11,990.990 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 05:38:14,030.030 INFO    ] ================================================
[2026-06-12 05:38:14,045.045 INFO    ] Launching Daemon at Fri Jun 12 05:38:14 IST 2026
[2026-06-12 05:38:14,056.056 INFO    ] ================================================
[2026-06-12 05:38:14,397.397 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 05:38:14
[2026-06-12 05:38:14,713.713 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 05:38:14,857.857 INFO    ] Initializing speech engine...
[2026-06-12 05:38:14,863.863 INFO    ] 2026-06-12 05:38:14
[2026-06-12 05:38:15,068.068 INFO    ] 2026-06-12 05:38:15
[2026-06-12 05:38:15,096.096 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 05:38:15,280.280 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 05:38:15,289.289 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 05:38:15,418.418 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 05:38:15,485.485 INFO    ] time= 12/06/2026 05:38:15
[2026-06-12 05:38:15,509.509 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 05:38:15,515.515 INFO    ] Checking for existing commands in stream...
[2026-06-12 05:38:15,582.582 INFO    ] No existing commands found in stream
[2026-06-12 05:38:20,591.591 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 05:38:20,595.595 INFO    ] Waiting 3.09 seconds before fallback handling...
[2026-06-12 05:38:24,036.036 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 05:38:24,038.038 INFO    ] Checking for system updates...
[2026-06-12 05:38:24,059.059 INFO    ] 200
[2026-06-12 05:38:24,061.061 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:38:24,091.091 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 05:38:24,092.092 INFO    ] No update needed
[2026-06-12 05:38:24,094.094 INFO    ] Checking for camera pi updates...
[2026-06-12 05:38:24,113.113 INFO    ] 200
[2026-06-12 05:38:24,114.114 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:38:24,138.138 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 05:38:24,176.176 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 05:38:24,178.178 INFO    ] No camera update needed
[2026-06-12 05:38:24,179.179 INFO    ] Script finished. Safe exiting...
[2026-06-12 05:38:24,180.180 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 05:38:24,183.183 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 05:38:24,186.186 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 05:38:26,218.218 INFO    ] ================================================
[2026-06-12 05:38:26,233.233 INFO    ] Launching Daemon at Fri Jun 12 05:38:26 IST 2026
[2026-06-12 05:38:26,244.244 INFO    ] ================================================
[2026-06-12 05:38:26,586.586 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 05:38:26
[2026-06-12 05:38:26,919.919 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 05:38:27,069.069 INFO    ] Initializing speech engine...
[2026-06-12 05:38:27,075.075 INFO    ] 2026-06-12 05:38:27
[2026-06-12 05:38:27,282.282 INFO    ] 2026-06-12 05:38:27
[2026-06-12 05:38:27,312.312 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 05:38:27,501.501 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 05:38:27,510.510 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 05:38:27,708.708 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 05:38:27,732.732 INFO    ] time= 12/06/2026 05:38:27
[2026-06-12 05:38:27,738.738 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 05:38:27,740.740 INFO    ] Checking for existing commands in stream...
[2026-06-12 05:38:27,807.807 INFO    ] No existing commands found in stream
[2026-06-12 05:38:32,817.817 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 05:38:32,818.818 INFO    ] Waiting 2.66 seconds before fallback handling...
[2026-06-12 05:38:35,857.857 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 05:38:35,858.858 INFO    ] Checking for system updates...
[2026-06-12 05:38:35,881.881 INFO    ] 200
[2026-06-12 05:38:35,882.882 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:38:35,912.912 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 05:38:35,913.913 INFO    ] No update needed
[2026-06-12 05:38:35,914.914 INFO    ] Checking for camera pi updates...
[2026-06-12 05:38:35,934.934 INFO    ] 200
[2026-06-12 05:38:35,935.935 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:38:35,958.958 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 05:38:35,999.999 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 05:38:36,000.000 INFO    ] No camera update needed
[2026-06-12 05:38:36,002.002 INFO    ] Script finished. Safe exiting...
[2026-06-12 05:38:36,003.003 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 05:38:36,006.006 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 05:38:36,008.008 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 05:38:38,047.047 INFO    ] ================================================
[2026-06-12 05:38:38,063.063 INFO    ] Launching Daemon at Fri Jun 12 05:38:38 IST 2026
[2026-06-12 05:38:38,075.075 INFO    ] ================================================
[2026-06-12 05:38:38,411.411 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 05:38:38
[2026-06-12 05:38:38,723.723 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 05:38:38,852.852 INFO    ] Initializing speech engine...
[2026-06-12 05:38:38,861.861 INFO    ] 2026-06-12 05:38:38
[2026-06-12 05:38:39,075.075 INFO    ] 2026-06-12 05:38:39
[2026-06-12 05:38:39,104.104 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 05:38:39,289.289 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 05:38:39,293.293 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 05:38:39,447.447 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 05:38:39,500.500 INFO    ] time= 12/06/2026 05:38:39
[2026-06-12 05:38:39,523.523 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 05:38:39,529.529 INFO    ] Checking for existing commands in stream...
[2026-06-12 05:38:39,596.596 INFO    ] No existing commands found in stream
[2026-06-12 05:38:44,605.605 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 05:38:44,608.608 INFO    ] Waiting 2.10 seconds before fallback handling...
[2026-06-12 05:38:47,143.143 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 05:38:47,145.145 INFO    ] Checking for system updates...
[2026-06-12 05:38:47,166.166 INFO    ] 200
[2026-06-12 05:38:47,167.167 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:38:47,199.199 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 05:38:47,201.201 INFO    ] No update needed
[2026-06-12 05:38:47,202.202 INFO    ] Checking for camera pi updates...
[2026-06-12 05:38:47,221.221 INFO    ] 200
[2026-06-12 05:38:47,223.223 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:38:47,246.246 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 05:38:47,283.283 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 05:38:47,284.284 INFO    ] No camera update needed
[2026-06-12 05:38:47,286.286 INFO    ] Script finished. Safe exiting...
[2026-06-12 05:38:47,287.287 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 05:38:47,290.290 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 05:38:47,293.293 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 05:38:49,336.336 INFO    ] ================================================
[2026-06-12 05:38:49,351.351 INFO    ] Launching Daemon at Fri Jun 12 05:38:49 IST 2026
[2026-06-12 05:38:49,362.362 INFO    ] ================================================
[2026-06-12 05:38:49,723.723 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 05:38:49
[2026-06-12 05:38:50,061.061 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 05:38:50,192.192 INFO    ] Initializing speech engine...
[2026-06-12 05:38:50,196.196 INFO    ] 2026-06-12 05:38:50
[2026-06-12 05:38:50,422.422 INFO    ] 2026-06-12 05:38:50
[2026-06-12 05:38:50,453.453 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 05:38:50,647.647 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 05:38:50,651.651 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 05:38:50,788.788 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 05:38:50,850.850 INFO    ] time= 12/06/2026 05:38:50
[2026-06-12 05:38:50,883.883 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 05:38:50,894.894 INFO    ] Checking for existing commands in stream...
[2026-06-12 05:38:50,969.969 INFO    ] No existing commands found in stream
[2026-06-12 05:38:55,979.979 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 05:38:55,982.982 INFO    ] Waiting 0.44 seconds before fallback handling...
[2026-06-12 05:38:56,776.776 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 05:38:56,777.777 INFO    ] Checking for system updates...
[2026-06-12 05:38:56,797.797 INFO    ] 200
[2026-06-12 05:38:56,799.799 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:38:56,829.829 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 05:38:56,830.830 INFO    ] No update needed
[2026-06-12 05:38:56,832.832 INFO    ] Checking for camera pi updates...
[2026-06-12 05:38:56,852.852 INFO    ] 200
[2026-06-12 05:38:56,853.853 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:38:56,877.877 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 05:38:57,003.003 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 05:38:57,005.005 INFO    ] No camera update needed
[2026-06-12 05:38:57,006.006 INFO    ] Script finished. Safe exiting...
[2026-06-12 05:38:57,007.007 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 05:38:57,010.010 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 05:38:57,013.013 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 05:38:59,052.052 INFO    ] ================================================
[2026-06-12 05:38:59,068.068 INFO    ] Launching Daemon at Fri Jun 12 05:38:59 IST 2026
[2026-06-12 05:38:59,079.079 INFO    ] ================================================
[2026-06-12 05:38:59,437.437 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 05:38:59
[2026-06-12 05:38:59,753.753 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 05:38:59,888.888 INFO    ] Initializing speech engine...
[2026-06-12 05:38:59,902.902 INFO    ] 2026-06-12 05:38:59
[2026-06-12 05:39:00,120.120 INFO    ] 2026-06-12 05:39:00
[2026-06-12 05:39:00,151.151 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 05:39:00,345.345 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 05:39:00,356.356 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 05:39:00,489.489 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 05:39:00,552.552 INFO    ] time= 12/06/2026 05:39:00
[2026-06-12 05:39:00,589.589 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 05:39:00,591.591 INFO    ] Checking for existing commands in stream...
[2026-06-12 05:39:00,666.666 INFO    ] No existing commands found in stream
[2026-06-12 05:39:05,676.676 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 05:39:05,678.678 INFO    ] Waiting 3.05 seconds before fallback handling...
[2026-06-12 05:39:09,107.107 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 05:39:09,109.109 INFO    ] Checking for system updates...
[2026-06-12 05:39:09,129.129 INFO    ] 200
[2026-06-12 05:39:09,131.131 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:39:09,162.162 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 05:39:09,164.164 INFO    ] No update needed
[2026-06-12 05:39:09,165.165 INFO    ] Checking for camera pi updates...
[2026-06-12 05:39:09,185.185 INFO    ] 200
[2026-06-12 05:39:09,186.186 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:39:09,212.212 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 05:39:09,251.251 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 05:39:09,252.252 INFO    ] No camera update needed
[2026-06-12 05:39:09,254.254 INFO    ] Script finished. Safe exiting...
[2026-06-12 05:39:09,255.255 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 05:39:09,258.258 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 05:39:09,261.261 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 05:39:11,302.302 INFO    ] ================================================
[2026-06-12 05:39:11,317.317 INFO    ] Launching Daemon at Fri Jun 12 05:39:11 IST 2026
[2026-06-12 05:39:11,329.329 INFO    ] ================================================
[2026-06-12 05:39:11,682.682 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 05:39:11
[2026-06-12 05:39:11,995.995 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 05:39:12,135.135 INFO    ] Initializing speech engine...
[2026-06-12 05:39:12,145.145 INFO    ] 2026-06-12 05:39:12
[2026-06-12 05:39:12,359.359 INFO    ] 2026-06-12 05:39:12
[2026-06-12 05:39:12,389.389 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 05:39:12,584.584 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 05:39:12,595.595 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 05:39:12,778.778 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 05:39:12,811.811 INFO    ] time= 12/06/2026 05:39:12
[2026-06-12 05:39:12,828.828 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 05:39:12,835.835 INFO    ] Checking for existing commands in stream...
[2026-06-12 05:39:12,903.903 INFO    ] No existing commands found in stream
[2026-06-12 05:39:17,913.913 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 05:39:17,914.914 INFO    ] Waiting 1.82 seconds before fallback handling...
[2026-06-12 05:39:20,104.104 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 05:39:20,105.105 INFO    ] Checking for system updates...
[2026-06-12 05:39:20,148.148 INFO    ] 200
[2026-06-12 05:39:20,149.149 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:39:20,181.181 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 05:39:20,182.182 INFO    ] No update needed
[2026-06-12 05:39:20,184.184 INFO    ] Checking for camera pi updates...
[2026-06-12 05:39:20,203.203 INFO    ] 200
[2026-06-12 05:39:20,204.204 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:39:20,230.230 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 05:39:20,270.270 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 05:39:20,271.271 INFO    ] No camera update needed
[2026-06-12 05:39:20,272.272 INFO    ] Script finished. Safe exiting...
[2026-06-12 05:39:20,274.274 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 05:39:20,276.276 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 05:39:20,279.279 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 05:39:22,319.319 INFO    ] ================================================
[2026-06-12 05:39:22,335.335 INFO    ] Launching Daemon at Fri Jun 12 05:39:22 IST 2026
[2026-06-12 05:39:22,346.346 INFO    ] ================================================
[2026-06-12 05:39:22,676.676 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 05:39:22
[2026-06-12 05:39:22,988.988 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 05:39:23,134.134 INFO    ] Initializing speech engine...
[2026-06-12 05:39:23,140.140 INFO    ] 2026-06-12 05:39:23
[2026-06-12 05:39:23,356.356 INFO    ] 2026-06-12 05:39:23
[2026-06-12 05:39:23,386.386 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 05:39:23,583.583 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 05:39:23,586.586 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 05:39:23,731.731 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 05:39:23,796.796 INFO    ] time= 12/06/2026 05:39:23
[2026-06-12 05:39:23,828.828 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 05:39:23,835.835 INFO    ] Checking for existing commands in stream...
[2026-06-12 05:39:23,904.904 INFO    ] No existing commands found in stream
[2026-06-12 05:39:28,915.915 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 05:39:28,918.918 INFO    ] Waiting 1.99 seconds before fallback handling...
[2026-06-12 05:39:31,318.318 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 05:39:31,321.321 INFO    ] Checking for system updates...
[2026-06-12 05:39:31,345.345 INFO    ] 200
[2026-06-12 05:39:31,347.347 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:39:31,387.387 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 05:39:31,388.388 INFO    ] No update needed
[2026-06-12 05:39:31,390.390 INFO    ] Checking for camera pi updates...
[2026-06-12 05:39:31,415.415 INFO    ] 200
[2026-06-12 05:39:31,416.416 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:39:31,444.444 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 05:39:31,470.470 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 05:39:31,472.472 INFO    ] No camera update needed
[2026-06-12 05:39:31,474.474 INFO    ] Script finished. Safe exiting...
[2026-06-12 05:39:31,475.475 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 05:39:31,479.479 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 05:39:31,483.483 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 05:39:33,515.515 INFO    ] ================================================
[2026-06-12 05:39:33,531.531 INFO    ] Launching Daemon at Fri Jun 12 05:39:33 IST 2026
[2026-06-12 05:39:33,542.542 INFO    ] ================================================
[2026-06-12 05:39:33,890.890 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 05:39:33
[2026-06-12 05:39:34,216.216 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 05:39:34,368.368 INFO    ] Initializing speech engine...
[2026-06-12 05:39:34,372.372 INFO    ] 2026-06-12 05:39:34
[2026-06-12 05:39:34,580.580 INFO    ] 2026-06-12 05:39:34
[2026-06-12 05:39:34,609.609 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 05:39:34,793.793 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 05:39:34,803.803 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 05:39:34,934.934 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 05:39:35,000.000 INFO    ] time= 12/06/2026 05:39:34
[2026-06-12 05:39:35,025.025 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 05:39:35,031.031 INFO    ] Checking for existing commands in stream...
[2026-06-12 05:39:35,122.122 INFO    ] No existing commands found in stream
[2026-06-12 05:39:40,137.137 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 05:39:40,140.140 INFO    ] Waiting 0.53 seconds before fallback handling...
[2026-06-12 05:39:41,061.061 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 05:39:41,062.062 INFO    ] Checking for system updates...
[2026-06-12 05:39:41,083.083 INFO    ] 200
[2026-06-12 05:39:41,085.085 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:39:41,115.115 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 05:39:41,117.117 INFO    ] No update needed
[2026-06-12 05:39:41,118.118 INFO    ] Checking for camera pi updates...
[2026-06-12 05:39:41,138.138 INFO    ] 200
[2026-06-12 05:39:41,139.139 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:39:41,163.163 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 05:39:41,199.199 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 05:39:41,200.200 INFO    ] No camera update needed
[2026-06-12 05:39:41,202.202 INFO    ] Script finished. Safe exiting...
[2026-06-12 05:39:41,203.203 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 05:39:41,206.206 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 05:39:41,209.209 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 05:39:43,249.249 INFO    ] ================================================
[2026-06-12 05:39:43,264.264 INFO    ] Launching Daemon at Fri Jun 12 05:39:43 IST 2026
[2026-06-12 05:39:43,276.276 INFO    ] ================================================
[2026-06-12 05:39:43,646.646 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 05:39:43
[2026-06-12 05:39:43,980.980 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 05:39:44,131.131 INFO    ] Initializing speech engine...
[2026-06-12 05:39:44,137.137 INFO    ] 2026-06-12 05:39:44
[2026-06-12 05:39:44,344.344 INFO    ] 2026-06-12 05:39:44
[2026-06-12 05:39:44,372.372 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 05:39:44,557.557 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 05:39:44,566.566 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 05:39:44,759.759 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 05:39:44,785.785 INFO    ] time= 12/06/2026 05:39:44
[2026-06-12 05:39:44,791.791 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 05:39:44,792.792 INFO    ] Checking for existing commands in stream...
[2026-06-12 05:39:44,860.860 INFO    ] No existing commands found in stream
[2026-06-12 05:39:49,875.875 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 05:39:49,878.878 INFO    ] Waiting 1.91 seconds before fallback handling...
[2026-06-12 05:39:52,208.208 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 05:39:52,210.210 INFO    ] Checking for system updates...
[2026-06-12 05:39:52,232.232 INFO    ] 200
[2026-06-12 05:39:52,234.234 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:39:52,264.264 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 05:39:52,265.265 INFO    ] No update needed
[2026-06-12 05:39:52,267.267 INFO    ] Checking for camera pi updates...
[2026-06-12 05:39:52,287.287 INFO    ] 200
[2026-06-12 05:39:52,288.288 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:39:52,311.311 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 05:39:52,348.348 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 05:39:52,350.350 INFO    ] No camera update needed
[2026-06-12 05:39:52,351.351 INFO    ] Script finished. Safe exiting...
[2026-06-12 05:39:52,352.352 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 05:39:52,355.355 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 05:39:52,358.358 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 05:39:54,396.396 INFO    ] ================================================
[2026-06-12 05:39:54,412.412 INFO    ] Launching Daemon at Fri Jun 12 05:39:54 IST 2026
[2026-06-12 05:39:54,424.424 INFO    ] ================================================
[2026-06-12 05:39:54,780.780 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 05:39:54
[2026-06-12 05:39:55,093.093 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 05:39:55,223.223 INFO    ] Initializing speech engine...
[2026-06-12 05:39:55,236.236 INFO    ] 2026-06-12 05:39:55
[2026-06-12 05:39:55,445.445 INFO    ] 2026-06-12 05:39:55
[2026-06-12 05:39:55,473.473 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 05:39:55,655.655 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 05:39:55,658.658 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 05:39:55,809.809 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 05:39:55,861.861 INFO    ] time= 12/06/2026 05:39:55
[2026-06-12 05:39:55,884.884 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 05:39:55,891.891 INFO    ] Checking for existing commands in stream...
[2026-06-12 05:39:55,957.957 INFO    ] No existing commands found in stream
[2026-06-12 05:40:00,966.966 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 05:40:00,969.969 INFO    ] Waiting 3.60 seconds before fallback handling...
[2026-06-12 05:40:08,557.557 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 05:40:08,560.560 INFO    ] Checking for system updates...
[2026-06-12 05:40:08,599.599 INFO    ] 200
[2026-06-12 05:40:08,602.602 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:40:08,655.655 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 05:40:08,657.657 INFO    ] No update needed
[2026-06-12 05:40:08,660.660 INFO    ] Checking for camera pi updates...
[2026-06-12 05:40:08,688.688 INFO    ] 200
[2026-06-12 05:40:08,689.689 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:40:08,713.713 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 05:40:08,749.749 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 05:40:08,751.751 INFO    ] No camera update needed
[2026-06-12 05:40:08,752.752 INFO    ] Script finished. Safe exiting...
[2026-06-12 05:40:08,753.753 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 05:40:08,756.756 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 05:40:08,759.759 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 05:40:10,799.799 INFO    ] ================================================
[2026-06-12 05:40:10,815.815 INFO    ] Launching Daemon at Fri Jun 12 05:40:10 IST 2026
[2026-06-12 05:40:10,827.827 INFO    ] ================================================
[2026-06-12 05:40:11,176.176 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 05:40:11
[2026-06-12 05:40:11,504.504 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 05:40:11,656.656 INFO    ] Initializing speech engine...
[2026-06-12 05:40:11,661.661 INFO    ] 2026-06-12 05:40:11
[2026-06-12 05:40:11,867.867 INFO    ] 2026-06-12 05:40:11
[2026-06-12 05:40:11,895.895 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 05:40:12,081.081 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 05:40:12,090.090 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 05:40:12,220.220 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 05:40:12,279.279 INFO    ] time= 12/06/2026 05:40:12
[2026-06-12 05:40:12,312.312 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 05:40:12,319.319 INFO    ] Checking for existing commands in stream...
[2026-06-12 05:40:12,410.410 INFO    ] No existing commands found in stream
[2026-06-12 05:40:17,435.435 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 05:40:17,438.438 INFO    ] Waiting 1.93 seconds before fallback handling...
[2026-06-12 05:40:19,782.782 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 05:40:19,784.784 INFO    ] Checking for system updates...
[2026-06-12 05:40:19,805.805 INFO    ] 200
[2026-06-12 05:40:19,807.807 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:40:19,839.839 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 05:40:19,841.841 INFO    ] No update needed
[2026-06-12 05:40:19,842.842 INFO    ] Checking for camera pi updates...
[2026-06-12 05:40:19,862.862 INFO    ] 200
[2026-06-12 05:40:19,864.864 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:40:19,887.887 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 05:40:19,923.923 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 05:40:19,924.924 INFO    ] No camera update needed
[2026-06-12 05:40:19,925.925 INFO    ] Script finished. Safe exiting...
[2026-06-12 05:40:19,927.927 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 05:40:19,929.929 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 05:40:19,932.932 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 05:40:21,972.972 INFO    ] ================================================
[2026-06-12 05:40:21,987.987 INFO    ] Launching Daemon at Fri Jun 12 05:40:21 IST 2026
[2026-06-12 05:40:22,998.998 INFO    ] ================================================
[2026-06-12 05:40:22,375.375 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 05:40:22
[2026-06-12 05:40:22,711.711 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 05:40:22,862.862 INFO    ] Initializing speech engine...
[2026-06-12 05:40:22,869.869 INFO    ] 2026-06-12 05:40:22
[2026-06-12 05:40:23,077.077 INFO    ] 2026-06-12 05:40:23
[2026-06-12 05:40:23,106.106 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 05:40:23,294.294 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 05:40:23,303.303 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 05:40:23,462.462 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 05:40:23,507.507 INFO    ] time= 12/06/2026 05:40:23
[2026-06-12 05:40:23,529.529 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 05:40:23,536.536 INFO    ] Checking for existing commands in stream...
[2026-06-12 05:40:23,604.604 INFO    ] No existing commands found in stream
[2026-06-12 05:40:28,613.613 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 05:40:28,617.617 INFO    ] Waiting 3.34 seconds before fallback handling...
[2026-06-12 05:40:32,311.311 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 05:40:32,313.313 INFO    ] Checking for system updates...
[2026-06-12 05:40:32,339.339 INFO    ] 200
[2026-06-12 05:40:32,340.340 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:40:32,371.371 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 05:40:32,373.373 INFO    ] No update needed
[2026-06-12 05:40:32,374.374 INFO    ] Checking for camera pi updates...
[2026-06-12 05:40:32,394.394 INFO    ] 200
[2026-06-12 05:40:32,396.396 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:40:32,432.432 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 05:40:32,454.454 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 05:40:32,457.457 INFO    ] No camera update needed
[2026-06-12 05:40:32,461.461 INFO    ] Script finished. Safe exiting...
[2026-06-12 05:40:32,463.463 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 05:40:32,469.469 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 05:40:32,474.474 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 05:40:34,513.513 INFO    ] ================================================
[2026-06-12 05:40:34,528.528 INFO    ] Launching Daemon at Fri Jun 12 05:40:34 IST 2026
[2026-06-12 05:40:34,540.540 INFO    ] ================================================
[2026-06-12 05:40:34,879.879 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 05:40:34
[2026-06-12 05:40:35,191.191 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 05:40:35,328.328 INFO    ] Initializing speech engine...
[2026-06-12 05:40:35,338.338 INFO    ] 2026-06-12 05:40:35
[2026-06-12 05:40:35,552.552 INFO    ] 2026-06-12 05:40:35
[2026-06-12 05:40:35,583.583 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 05:40:35,778.778 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 05:40:35,789.789 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 05:40:35,924.924 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 05:40:35,987.987 INFO    ] time= 12/06/2026 05:40:35
[2026-06-12 05:40:36,015.015 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 05:40:36,026.026 INFO    ] Checking for existing commands in stream...
[2026-06-12 05:40:36,101.101 INFO    ] No existing commands found in stream
[2026-06-12 05:40:41,111.111 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 05:40:41,114.114 INFO    ] Waiting 1.05 seconds before fallback handling...
[2026-06-12 05:40:44,751.751 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 05:40:44,753.753 INFO    ] Checking for system updates...
[2026-06-12 05:40:44,789.789 INFO    ] 200
[2026-06-12 05:40:44,792.792 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:40:44,853.853 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 05:40:44,855.855 INFO    ] No update needed
[2026-06-12 05:40:44,858.858 INFO    ] Checking for camera pi updates...
[2026-06-12 05:40:44,887.887 INFO    ] 200
[2026-06-12 05:40:44,888.888 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:40:44,911.911 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 05:40:44,952.952 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 05:40:44,953.953 INFO    ] No camera update needed
[2026-06-12 05:40:44,955.955 INFO    ] Script finished. Safe exiting...
[2026-06-12 05:40:44,956.956 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 05:40:44,959.959 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 05:40:44,961.961 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 05:40:47,000.000 INFO    ] ================================================
[2026-06-12 05:40:47,016.016 INFO    ] Launching Daemon at Fri Jun 12 05:40:47 IST 2026
[2026-06-12 05:40:47,026.026 INFO    ] ================================================
[2026-06-12 05:40:47,377.377 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 05:40:47
[2026-06-12 05:40:47,690.690 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 05:40:47,820.820 INFO    ] Initializing speech engine...
[2026-06-12 05:40:47,824.824 INFO    ] 2026-06-12 05:40:47
[2026-06-12 05:40:48,043.043 INFO    ] 2026-06-12 05:40:48
[2026-06-12 05:40:48,071.071 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 05:40:48,255.255 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 05:40:48,259.259 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 05:40:48,389.389 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 05:40:48,445.445 INFO    ] time= 12/06/2026 05:40:48
[2026-06-12 05:40:48,485.485 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 05:40:48,490.490 INFO    ] Checking for existing commands in stream...
[2026-06-12 05:40:48,563.563 INFO    ] No existing commands found in stream
[2026-06-12 05:40:53,582.582 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 05:40:53,585.585 INFO    ] Waiting 2.16 seconds before fallback handling...
[2026-06-12 05:40:56,180.180 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 05:40:56,182.182 INFO    ] Checking for system updates...
[2026-06-12 05:40:56,204.204 INFO    ] 200
[2026-06-12 05:40:56,205.205 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:40:56,238.238 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 05:40:56,239.239 INFO    ] No update needed
[2026-06-12 05:40:56,241.241 INFO    ] Checking for camera pi updates...
[2026-06-12 05:40:56,264.264 INFO    ] 200
[2026-06-12 05:40:56,266.266 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:40:56,293.293 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 05:40:56,329.329 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 05:40:56,331.331 INFO    ] No camera update needed
[2026-06-12 05:40:56,332.332 INFO    ] Script finished. Safe exiting...
[2026-06-12 05:40:56,334.334 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 05:40:56,337.337 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 05:40:56,340.340 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 05:40:58,381.381 INFO    ] ================================================
[2026-06-12 05:40:58,397.397 INFO    ] Launching Daemon at Fri Jun 12 05:40:58 IST 2026
[2026-06-12 05:40:58,408.408 INFO    ] ================================================
[2026-06-12 05:40:58,784.784 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 05:40:58
[2026-06-12 05:40:59,118.118 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 05:40:59,257.257 INFO    ] Initializing speech engine...
[2026-06-12 05:40:59,269.269 INFO    ] 2026-06-12 05:40:59
[2026-06-12 05:40:59,483.483 INFO    ] 2026-06-12 05:40:59
[2026-06-12 05:40:59,512.512 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 05:40:59,695.695 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 05:40:59,705.705 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 05:40:59,854.854 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 05:40:59,908.908 INFO    ] time= 12/06/2026 05:40:59
[2026-06-12 05:40:59,930.930 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 05:40:59,937.937 INFO    ] Checking for existing commands in stream...
[2026-06-12 05:41:00,005.005 INFO    ] No existing commands found in stream
[2026-06-12 05:41:05,019.019 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 05:41:05,023.023 INFO    ] Waiting 0.89 seconds before fallback handling...
[2026-06-12 05:41:06,306.306 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 05:41:06,307.307 INFO    ] Checking for system updates...
[2026-06-12 05:41:06,328.328 INFO    ] 200
[2026-06-12 05:41:06,329.329 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:41:06,363.363 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 05:41:06,365.365 INFO    ] No update needed
[2026-06-12 05:41:06,366.366 INFO    ] Checking for camera pi updates...
[2026-06-12 05:41:06,385.385 INFO    ] 200
[2026-06-12 05:41:06,387.387 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:41:06,410.410 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 05:41:06,447.447 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 05:41:06,448.448 INFO    ] No camera update needed
[2026-06-12 05:41:06,449.449 INFO    ] Script finished. Safe exiting...
[2026-06-12 05:41:06,451.451 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 05:41:06,454.454 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 05:41:06,456.456 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 05:41:08,495.495 INFO    ] ================================================
[2026-06-12 05:41:08,510.510 INFO    ] Launching Daemon at Fri Jun 12 05:41:08 IST 2026
[2026-06-12 05:41:08,521.521 INFO    ] ================================================
[2026-06-12 05:41:08,850.850 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 05:41:08
[2026-06-12 05:41:09,167.167 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 05:41:09,306.306 INFO    ] Initializing speech engine...
[2026-06-12 05:41:09,316.316 INFO    ] 2026-06-12 05:41:09
[2026-06-12 05:41:09,521.521 INFO    ] 2026-06-12 05:41:09
[2026-06-12 05:41:09,549.549 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 05:41:09,733.733 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 05:41:09,742.742 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 05:41:09,935.935 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 05:41:09,960.960 INFO    ] time= 12/06/2026 05:41:09
[2026-06-12 05:41:09,965.965 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 05:41:09,967.967 INFO    ] Checking for existing commands in stream...
[2026-06-12 05:41:10,033.033 INFO    ] No existing commands found in stream
[2026-06-12 05:41:15,042.042 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 05:41:15,045.045 INFO    ] Waiting 0.77 seconds before fallback handling...
[2026-06-12 05:41:16,197.197 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 05:41:16,199.199 INFO    ] Checking for system updates...
[2026-06-12 05:41:16,221.221 INFO    ] 200
[2026-06-12 05:41:16,223.223 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:41:16,253.253 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 05:41:16,255.255 INFO    ] No update needed
[2026-06-12 05:41:16,256.256 INFO    ] Checking for camera pi updates...
[2026-06-12 05:41:16,275.275 INFO    ] 200
[2026-06-12 05:41:16,276.276 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:41:16,302.302 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 05:41:16,338.338 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 05:41:16,340.340 INFO    ] No camera update needed
[2026-06-12 05:41:16,341.341 INFO    ] Script finished. Safe exiting...
[2026-06-12 05:41:16,342.342 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 05:41:16,345.345 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 05:41:16,348.348 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 05:41:18,388.388 INFO    ] ================================================
[2026-06-12 05:41:18,403.403 INFO    ] Launching Daemon at Fri Jun 12 05:41:18 IST 2026
[2026-06-12 05:41:18,414.414 INFO    ] ================================================
[2026-06-12 05:41:18,783.783 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 05:41:18
[2026-06-12 05:41:19,098.098 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 05:41:19,242.242 INFO    ] Initializing speech engine...
[2026-06-12 05:41:19,247.247 INFO    ] 2026-06-12 05:41:19
[2026-06-12 05:41:19,452.452 INFO    ] 2026-06-12 05:41:19
[2026-06-12 05:41:19,482.482 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 05:41:19,641.641 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 05:41:19,669.669 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 05:41:19,808.808 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 05:41:19,876.876 INFO    ] time= 12/06/2026 05:41:19
[2026-06-12 05:41:19,902.902 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 05:41:19,903.903 INFO    ] Checking for existing commands in stream...
[2026-06-12 05:41:20,093.093 INFO    ] No existing commands found in stream
[2026-06-12 05:41:25,104.104 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 05:41:25,106.106 INFO    ] Waiting 3.12 seconds before fallback handling...
[2026-06-12 05:41:28,680.680 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 05:41:28,682.682 INFO    ] Checking for system updates...
[2026-06-12 05:41:28,704.704 INFO    ] 200
[2026-06-12 05:41:28,705.705 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:41:28,735.735 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 05:41:28,736.736 INFO    ] No update needed
[2026-06-12 05:41:28,737.737 INFO    ] Checking for camera pi updates...
[2026-06-12 05:41:28,760.760 INFO    ] 200
[2026-06-12 05:41:28,762.762 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:41:28,785.785 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 05:41:28,824.824 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 05:41:28,825.825 INFO    ] No camera update needed
[2026-06-12 05:41:28,827.827 INFO    ] Script finished. Safe exiting...
[2026-06-12 05:41:28,828.828 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 05:41:28,831.831 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 05:41:28,834.834 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 05:41:30,876.876 INFO    ] ================================================
[2026-06-12 05:41:30,892.892 INFO    ] Launching Daemon at Fri Jun 12 05:41:30 IST 2026
[2026-06-12 05:41:30,902.902 INFO    ] ================================================
[2026-06-12 05:41:31,247.247 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 05:41:31
[2026-06-12 05:41:31,563.563 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 05:41:31,709.709 INFO    ] Initializing speech engine...
[2026-06-12 05:41:31,714.714 INFO    ] 2026-06-12 05:41:31
[2026-06-12 05:41:31,922.922 INFO    ] 2026-06-12 05:41:31
[2026-06-12 05:41:31,953.953 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 05:41:32,165.165 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 05:41:32,176.176 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 05:41:32,375.375 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 05:41:32,415.415 INFO    ] time= 12/06/2026 05:41:32
[2026-06-12 05:41:32,422.422 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 05:41:32,424.424 INFO    ] Checking for existing commands in stream...
[2026-06-12 05:41:32,493.493 INFO    ] No existing commands found in stream
[2026-06-12 05:41:37,507.507 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 05:41:37,510.510 INFO    ] Waiting 1.07 seconds before fallback handling...
[2026-06-12 05:41:38,971.971 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 05:41:38,972.972 INFO    ] Checking for system updates...
[2026-06-12 05:41:38,994.994 INFO    ] 200
[2026-06-12 05:41:38,995.995 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:41:39,026.026 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 05:41:39,027.027 INFO    ] No update needed
[2026-06-12 05:41:39,028.028 INFO    ] Checking for camera pi updates...
[2026-06-12 05:41:39,050.050 INFO    ] 200
[2026-06-12 05:41:39,051.051 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:41:39,074.074 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 05:41:39,113.113 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 05:41:39,115.115 INFO    ] No camera update needed
[2026-06-12 05:41:39,116.116 INFO    ] Script finished. Safe exiting...
[2026-06-12 05:41:39,117.117 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 05:41:39,120.120 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 05:41:39,123.123 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 05:41:41,162.162 INFO    ] ================================================
[2026-06-12 05:41:41,177.177 INFO    ] Launching Daemon at Fri Jun 12 05:41:41 IST 2026
[2026-06-12 05:41:41,188.188 INFO    ] ================================================
[2026-06-12 05:41:41,538.538 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 05:41:41
[2026-06-12 05:41:41,851.851 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 05:41:41,983.983 INFO    ] Initializing speech engine...
[2026-06-12 05:41:41,990.990 INFO    ] 2026-06-12 05:41:41
[2026-06-12 05:41:42,206.206 INFO    ] 2026-06-12 05:41:42
[2026-06-12 05:41:42,233.233 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 05:41:42,419.419 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 05:41:42,423.423 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 05:41:42,576.576 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 05:41:42,630.630 INFO    ] time= 12/06/2026 05:41:42
[2026-06-12 05:41:42,653.653 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 05:41:42,659.659 INFO    ] Checking for existing commands in stream...
[2026-06-12 05:41:42,727.727 INFO    ] No existing commands found in stream
[2026-06-12 05:41:47,736.736 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 05:41:47,739.739 INFO    ] Waiting 3.25 seconds before fallback handling...
[2026-06-12 05:41:51,389.389 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 05:41:51,391.391 INFO    ] Checking for system updates...
[2026-06-12 05:41:51,413.413 INFO    ] 200
[2026-06-12 05:41:51,415.415 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:41:51,450.450 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 05:41:51,452.452 INFO    ] No update needed
[2026-06-12 05:41:51,453.453 INFO    ] Checking for camera pi updates...
[2026-06-12 05:41:51,473.473 INFO    ] 200
[2026-06-12 05:41:51,475.475 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:41:51,498.498 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 05:41:51,534.534 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 05:41:51,536.536 INFO    ] No camera update needed
[2026-06-12 05:41:51,537.537 INFO    ] Script finished. Safe exiting...
[2026-06-12 05:41:51,539.539 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 05:41:51,542.542 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 05:41:51,545.545 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 05:41:53,585.585 INFO    ] ================================================
[2026-06-12 05:41:53,601.601 INFO    ] Launching Daemon at Fri Jun 12 05:41:53 IST 2026
[2026-06-12 05:41:53,611.611 INFO    ] ================================================
[2026-06-12 05:41:53,942.942 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 05:41:53
[2026-06-12 05:41:54,257.257 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 05:41:54,401.401 INFO    ] Initializing speech engine...
[2026-06-12 05:41:54,406.406 INFO    ] 2026-06-12 05:41:54
[2026-06-12 05:41:54,608.608 INFO    ] 2026-06-12 05:41:54
[2026-06-12 05:41:54,637.637 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 05:41:54,821.821 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 05:41:54,830.830 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 05:41:54,969.969 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 05:41:55,026.026 INFO    ] time= 12/06/2026 05:41:54
[2026-06-12 05:41:55,050.050 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 05:41:55,055.055 INFO    ] Checking for existing commands in stream...
[2026-06-12 05:41:55,147.147 INFO    ] No existing commands found in stream
[2026-06-12 05:42:00,156.156 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 05:42:00,159.159 INFO    ] Waiting 0.49 seconds before fallback handling...
[2026-06-12 05:42:01,047.047 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 05:42:01,049.049 INFO    ] Checking for system updates...
[2026-06-12 05:42:01,070.070 INFO    ] 200
[2026-06-12 05:42:01,071.071 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:42:01,104.104 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 05:42:01,105.105 INFO    ] No update needed
[2026-06-12 05:42:01,106.106 INFO    ] Checking for camera pi updates...
[2026-06-12 05:42:01,143.143 INFO    ] 200
[2026-06-12 05:42:01,146.146 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:42:01,211.211 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 05:42:01,299.299 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 05:42:01,301.301 INFO    ] No camera update needed
[2026-06-12 05:42:01,303.303 INFO    ] Script finished. Safe exiting...
[2026-06-12 05:42:01,306.306 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 05:42:01,310.310 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 05:42:01,315.315 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 05:42:03,347.347 INFO    ] ================================================
[2026-06-12 05:42:03,363.363 INFO    ] Launching Daemon at Fri Jun 12 05:42:03 IST 2026
[2026-06-12 05:42:03,374.374 INFO    ] ================================================
[2026-06-12 05:42:03,736.736 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 05:42:03
[2026-06-12 05:42:04,048.048 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 05:42:04,180.180 INFO    ] Initializing speech engine...
[2026-06-12 05:42:04,183.183 INFO    ] 2026-06-12 05:42:04
[2026-06-12 05:42:04,380.380 INFO    ] 2026-06-12 05:42:04
[2026-06-12 05:42:04,424.424 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 05:42:04,650.650 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 05:42:04,654.654 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 05:42:04,802.802 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 05:42:04,865.865 INFO    ] time= 12/06/2026 05:42:04
[2026-06-12 05:42:04,896.896 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 05:42:04,907.907 INFO    ] Checking for existing commands in stream...
[2026-06-12 05:42:05,011.011 INFO    ] No existing commands found in stream
[2026-06-12 05:42:10,020.020 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 05:42:10,023.023 INFO    ] Waiting 3.15 seconds before fallback handling...
[2026-06-12 05:42:13,550.550 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 05:42:13,551.551 INFO    ] Checking for system updates...
[2026-06-12 05:42:13,572.572 INFO    ] 200
[2026-06-12 05:42:13,573.573 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:42:13,605.605 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 05:42:13,607.607 INFO    ] No update needed
[2026-06-12 05:42:13,608.608 INFO    ] Checking for camera pi updates...
[2026-06-12 05:42:13,627.627 INFO    ] 200
[2026-06-12 05:42:13,629.629 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:42:13,652.652 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 05:42:13,690.690 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 05:42:13,691.691 INFO    ] No camera update needed
[2026-06-12 05:42:13,692.692 INFO    ] Script finished. Safe exiting...
[2026-06-12 05:42:13,694.694 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 05:42:13,696.696 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 05:42:13,699.699 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 05:42:15,737.737 INFO    ] ================================================
[2026-06-12 05:42:15,752.752 INFO    ] Launching Daemon at Fri Jun 12 05:42:15 IST 2026
[2026-06-12 05:42:15,763.763 INFO    ] ================================================
[2026-06-12 05:42:16,111.111 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 05:42:16
[2026-06-12 05:42:16,428.428 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 05:42:16,572.572 INFO    ] Initializing speech engine...
[2026-06-12 05:42:16,576.576 INFO    ] 2026-06-12 05:42:16
[2026-06-12 05:42:16,781.781 INFO    ] 2026-06-12 05:42:16
[2026-06-12 05:42:16,810.810 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 05:42:16,995.995 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 05:42:17,003.003 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 05:42:17,138.138 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 05:42:17,199.199 INFO    ] time= 12/06/2026 05:42:17
[2026-06-12 05:42:17,223.223 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 05:42:17,229.229 INFO    ] Checking for existing commands in stream...
[2026-06-12 05:42:17,320.320 INFO    ] No existing commands found in stream
[2026-06-12 05:42:22,329.329 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 05:42:22,332.332 INFO    ] Waiting 3.00 seconds before fallback handling...
[2026-06-12 05:42:25,680.680 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 05:42:25,682.682 INFO    ] Checking for system updates...
[2026-06-12 05:42:25,703.703 INFO    ] 200
[2026-06-12 05:42:25,704.704 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:42:25,734.734 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 05:42:25,736.736 INFO    ] No update needed
[2026-06-12 05:42:25,737.737 INFO    ] Checking for camera pi updates...
[2026-06-12 05:42:25,757.757 INFO    ] 200
[2026-06-12 05:42:25,758.758 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:42:25,782.782 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 05:42:25,826.826 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 05:42:25,827.827 INFO    ] No camera update needed
[2026-06-12 05:42:25,829.829 INFO    ] Script finished. Safe exiting...
[2026-06-12 05:42:25,830.830 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 05:42:25,833.833 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 05:42:25,837.837 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 05:42:27,877.877 INFO    ] ================================================
[2026-06-12 05:42:27,892.892 INFO    ] Launching Daemon at Fri Jun 12 05:42:27 IST 2026
[2026-06-12 05:42:27,903.903 INFO    ] ================================================
[2026-06-12 05:42:28,254.254 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 05:42:28
[2026-06-12 05:42:28,596.596 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 05:42:28,750.750 INFO    ] Initializing speech engine...
[2026-06-12 05:42:28,755.755 INFO    ] 2026-06-12 05:42:28
[2026-06-12 05:42:28,962.962 INFO    ] 2026-06-12 05:42:28
[2026-06-12 05:42:28,992.992 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 05:42:29,174.174 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 05:42:29,185.185 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 05:42:29,375.375 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 05:42:29,403.403 INFO    ] time= 12/06/2026 05:42:29
[2026-06-12 05:42:29,409.409 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 05:42:29,411.411 INFO    ] Checking for existing commands in stream...
[2026-06-12 05:42:29,478.478 INFO    ] No existing commands found in stream
[2026-06-12 05:42:34,487.487 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 05:42:34,491.491 INFO    ] Waiting 1.93 seconds before fallback handling...
[2026-06-12 05:42:36,799.799 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 05:42:36,801.801 INFO    ] Checking for system updates...
[2026-06-12 05:42:36,823.823 INFO    ] 200
[2026-06-12 05:42:36,824.824 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:42:36,858.858 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 05:42:36,860.860 INFO    ] No update needed
[2026-06-12 05:42:36,861.861 INFO    ] Checking for camera pi updates...
[2026-06-12 05:42:36,882.882 INFO    ] 200
[2026-06-12 05:42:36,884.884 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:42:36,910.910 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 05:42:36,949.949 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 05:42:36,951.951 INFO    ] No camera update needed
[2026-06-12 05:42:36,952.952 INFO    ] Script finished. Safe exiting...
[2026-06-12 05:42:36,954.954 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 05:42:36,957.957 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 05:42:36,960.960 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 05:42:39,001.001 INFO    ] ================================================
[2026-06-12 05:42:39,016.016 INFO    ] Launching Daemon at Fri Jun 12 05:42:39 IST 2026
[2026-06-12 05:42:39,026.026 INFO    ] ================================================
[2026-06-12 05:42:39,424.424 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 05:42:39
[2026-06-12 05:42:39,766.766 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 05:42:39,918.918 INFO    ] Initializing speech engine...
[2026-06-12 05:42:39,924.924 INFO    ] 2026-06-12 05:42:39
[2026-06-12 05:42:40,132.132 INFO    ] 2026-06-12 05:42:40
[2026-06-12 05:42:40,161.161 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 05:42:40,346.346 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 05:42:40,357.357 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 05:42:40,530.530 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 05:42:40,570.570 INFO    ] time= 12/06/2026 05:42:40
[2026-06-12 05:42:40,575.575 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 05:42:40,582.582 INFO    ] Checking for existing commands in stream...
[2026-06-12 05:42:40,650.650 INFO    ] No existing commands found in stream
[2026-06-12 05:42:45,659.659 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 05:42:45,663.663 INFO    ] Waiting 3.69 seconds before fallback handling...
[2026-06-12 05:42:49,724.724 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 05:42:49,726.726 INFO    ] Checking for system updates...
[2026-06-12 05:42:49,747.747 INFO    ] 200
[2026-06-12 05:42:49,748.748 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:42:49,779.779 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 05:42:49,781.781 INFO    ] No update needed
[2026-06-12 05:42:49,782.782 INFO    ] Checking for camera pi updates...
[2026-06-12 05:42:49,803.803 INFO    ] 200
[2026-06-12 05:42:49,805.805 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:42:49,831.831 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 05:42:49,868.868 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 05:42:49,870.870 INFO    ] No camera update needed
[2026-06-12 05:42:49,871.871 INFO    ] Script finished. Safe exiting...
[2026-06-12 05:42:49,873.873 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 05:42:49,876.876 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 05:42:49,879.879 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 05:42:51,919.919 INFO    ] ================================================
[2026-06-12 05:42:51,934.934 INFO    ] Launching Daemon at Fri Jun 12 05:42:51 IST 2026
[2026-06-12 05:42:51,945.945 INFO    ] ================================================
[2026-06-12 05:42:52,314.314 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 05:42:52
[2026-06-12 05:42:52,627.627 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 05:42:52,760.760 INFO    ] Initializing speech engine...
[2026-06-12 05:42:52,765.765 INFO    ] 2026-06-12 05:42:52
[2026-06-12 05:42:52,994.994 INFO    ] 2026-06-12 05:42:52
[2026-06-12 05:42:53,025.025 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 05:42:53,194.194 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 05:42:53,227.227 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 05:42:53,376.376 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 05:42:53,429.429 INFO    ] time= 12/06/2026 05:42:53
[2026-06-12 05:42:53,474.474 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 05:42:53,476.476 INFO    ] Checking for existing commands in stream...
[2026-06-12 05:42:53,552.552 INFO    ] No existing commands found in stream
[2026-06-12 05:42:58,562.562 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 05:42:58,565.565 INFO    ] Waiting 1.36 seconds before fallback handling...
[2026-06-12 05:43:00,323.323 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 05:43:00,325.325 INFO    ] Checking for system updates...
[2026-06-12 05:43:00,346.346 INFO    ] 200
[2026-06-12 05:43:00,348.348 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:43:00,378.378 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 05:43:00,379.379 INFO    ] No update needed
[2026-06-12 05:43:00,381.381 INFO    ] Checking for camera pi updates...
[2026-06-12 05:43:00,401.401 INFO    ] 200
[2026-06-12 05:43:00,403.403 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:43:00,428.428 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 05:43:00,463.463 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 05:43:00,464.464 INFO    ] No camera update needed
[2026-06-12 05:43:00,465.465 INFO    ] Script finished. Safe exiting...
[2026-06-12 05:43:00,467.467 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 05:43:00,514.514 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 05:43:00,517.517 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 05:43:02,547.547 INFO    ] ================================================
[2026-06-12 05:43:02,555.555 INFO    ] Launching Daemon at Fri Jun 12 05:43:02 IST 2026
[2026-06-12 05:43:02,561.561 INFO    ] ================================================
[2026-06-12 05:43:02,923.923 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 05:43:02
[2026-06-12 05:43:03,241.241 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 05:43:03,374.374 INFO    ] Initializing speech engine...
[2026-06-12 05:43:03,382.382 INFO    ] 2026-06-12 05:43:03
[2026-06-12 05:43:03,594.594 INFO    ] 2026-06-12 05:43:03
[2026-06-12 05:43:03,624.624 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 05:43:03,787.787 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 05:43:03,811.811 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 05:43:03,995.995 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 05:43:04,029.029 INFO    ] time= 12/06/2026 05:43:04
[2026-06-12 05:43:04,039.039 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 05:43:04,046.046 INFO    ] Checking for existing commands in stream...
[2026-06-12 05:43:04,113.113 INFO    ] No existing commands found in stream
[2026-06-12 05:43:09,127.127 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 05:43:09,130.130 INFO    ] Waiting 2.71 seconds before fallback handling...
[2026-06-12 05:43:12,224.224 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 05:43:12,225.225 INFO    ] Checking for system updates...
[2026-06-12 05:43:12,246.246 INFO    ] 200
[2026-06-12 05:43:12,247.247 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:43:12,280.280 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 05:43:12,281.281 INFO    ] No update needed
[2026-06-12 05:43:12,282.282 INFO    ] Checking for camera pi updates...
[2026-06-12 05:43:12,302.302 INFO    ] 200
[2026-06-12 05:43:12,303.303 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:43:12,328.328 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 05:43:12,464.464 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 05:43:12,465.465 INFO    ] No camera update needed
[2026-06-12 05:43:12,466.466 INFO    ] Script finished. Safe exiting...
[2026-06-12 05:43:12,468.468 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 05:43:12,471.471 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 05:43:12,473.473 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 05:43:14,512.512 INFO    ] ================================================
[2026-06-12 05:43:14,527.527 INFO    ] Launching Daemon at Fri Jun 12 05:43:14 IST 2026
[2026-06-12 05:43:14,538.538 INFO    ] ================================================
[2026-06-12 05:43:14,886.886 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 05:43:14
[2026-06-12 05:43:15,201.201 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 05:43:15,333.333 INFO    ] Initializing speech engine...
[2026-06-12 05:43:15,342.342 INFO    ] 2026-06-12 05:43:15
[2026-06-12 05:43:15,554.554 INFO    ] 2026-06-12 05:43:15
[2026-06-12 05:43:15,582.582 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 05:43:15,765.765 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 05:43:15,769.769 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 05:43:15,904.904 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 05:43:15,968.968 INFO    ] time= 12/06/2026 05:43:15
[2026-06-12 05:43:15,995.995 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 05:43:16,001.001 INFO    ] Checking for existing commands in stream...
[2026-06-12 05:43:16,090.090 INFO    ] No existing commands found in stream
[2026-06-12 05:43:21,124.124 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 05:43:21,129.129 INFO    ] Waiting 2.40 seconds before fallback handling...
[2026-06-12 05:43:23,960.960 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 05:43:23,962.962 INFO    ] Checking for system updates...
[2026-06-12 05:43:23,983.983 INFO    ] 200
[2026-06-12 05:43:23,984.984 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:43:24,017.017 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 05:43:24,018.018 INFO    ] No update needed
[2026-06-12 05:43:24,020.020 INFO    ] Checking for camera pi updates...
[2026-06-12 05:43:24,042.042 INFO    ] 200
[2026-06-12 05:43:24,043.043 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:43:24,067.067 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 05:43:24,107.107 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 05:43:24,109.109 INFO    ] No camera update needed
[2026-06-12 05:43:24,110.110 INFO    ] Script finished. Safe exiting...
[2026-06-12 05:43:24,112.112 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 05:43:24,115.115 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 05:43:24,118.118 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 05:43:26,157.157 INFO    ] ================================================
[2026-06-12 05:43:26,174.174 INFO    ] Launching Daemon at Fri Jun 12 05:43:26 IST 2026
[2026-06-12 05:43:26,185.185 INFO    ] ================================================
[2026-06-12 05:43:26,532.532 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 05:43:26
[2026-06-12 05:43:26,849.849 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 05:43:26,992.992 INFO    ] Initializing speech engine...
[2026-06-12 05:43:26,998.998 INFO    ] 2026-06-12 05:43:26
[2026-06-12 05:43:27,202.202 INFO    ] 2026-06-12 05:43:27
[2026-06-12 05:43:27,230.230 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 05:43:27,352.352 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 05:43:27,415.415 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 05:43:27,557.557 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 05:43:27,622.622 INFO    ] time= 12/06/2026 05:43:27
[2026-06-12 05:43:27,644.644 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 05:43:27,650.650 INFO    ] Checking for existing commands in stream...
[2026-06-12 05:43:27,716.716 INFO    ] No existing commands found in stream
[2026-06-12 05:43:32,730.730 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 05:43:32,733.733 INFO    ] Waiting 0.58 seconds before fallback handling...
[2026-06-12 05:43:33,721.721 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 05:43:33,723.723 INFO    ] Checking for system updates...
[2026-06-12 05:43:33,745.745 INFO    ] 200
[2026-06-12 05:43:33,746.746 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:43:33,776.776 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 05:43:33,778.778 INFO    ] No update needed
[2026-06-12 05:43:33,779.779 INFO    ] Checking for camera pi updates...
[2026-06-12 05:43:33,799.799 INFO    ] 200
[2026-06-12 05:43:33,800.800 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:43:33,824.824 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 05:43:33,863.863 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 05:43:33,864.864 INFO    ] No camera update needed
[2026-06-12 05:43:33,865.865 INFO    ] Script finished. Safe exiting...
[2026-06-12 05:43:33,866.866 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 05:43:33,869.869 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 05:43:33,873.873 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 05:43:35,912.912 INFO    ] ================================================
[2026-06-12 05:43:35,929.929 INFO    ] Launching Daemon at Fri Jun 12 05:43:35 IST 2026
[2026-06-12 05:43:35,941.941 INFO    ] ================================================
[2026-06-12 05:43:36,301.301 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 05:43:36
[2026-06-12 05:43:36,613.613 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 05:43:36,742.742 INFO    ] Initializing speech engine...
[2026-06-12 05:43:36,746.746 INFO    ] 2026-06-12 05:43:36
[2026-06-12 05:43:36,962.962 INFO    ] 2026-06-12 05:43:36
[2026-06-12 05:43:36,993.993 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 05:43:37,130.130 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 05:43:37,192.192 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 05:43:37,334.334 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 05:43:37,376.376 INFO    ] time= 12/06/2026 05:43:37
[2026-06-12 05:43:37,418.418 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 05:43:37,443.443 INFO    ] Checking for existing commands in stream...
[2026-06-12 05:43:37,518.518 INFO    ] No existing commands found in stream
[2026-06-12 05:43:42,528.528 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 05:43:42,531.531 INFO    ] Waiting 1.84 seconds before fallback handling...
[2026-06-12 05:43:44,749.749 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 05:43:44,751.751 INFO    ] Checking for system updates...
[2026-06-12 05:43:44,773.773 INFO    ] 200
[2026-06-12 05:43:44,774.774 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:43:44,806.806 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 05:43:44,808.808 INFO    ] No update needed
[2026-06-12 05:43:44,809.809 INFO    ] Checking for camera pi updates...
[2026-06-12 05:43:44,830.830 INFO    ] 200
[2026-06-12 05:43:44,831.831 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:43:44,854.854 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 05:43:44,892.892 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 05:43:44,893.893 INFO    ] No camera update needed
[2026-06-12 05:43:44,894.894 INFO    ] Script finished. Safe exiting...
[2026-06-12 05:43:44,895.895 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 05:43:44,898.898 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 05:43:44,901.901 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 05:43:46,942.942 INFO    ] ================================================
[2026-06-12 05:43:46,958.958 INFO    ] Launching Daemon at Fri Jun 12 05:43:46 IST 2026
[2026-06-12 05:43:46,969.969 INFO    ] ================================================
[2026-06-12 05:43:47,322.322 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 05:43:47
[2026-06-12 05:43:47,663.663 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 05:43:47,805.805 INFO    ] Initializing speech engine...
[2026-06-12 05:43:47,818.818 INFO    ] 2026-06-12 05:43:47
[2026-06-12 05:43:48,031.031 INFO    ] 2026-06-12 05:43:48
[2026-06-12 05:43:48,061.061 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 05:43:48,248.248 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 05:43:48,252.252 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 05:43:48,397.397 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 05:43:48,460.460 INFO    ] time= 12/06/2026 05:43:48
[2026-06-12 05:43:48,485.485 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 05:43:48,492.492 INFO    ] Checking for existing commands in stream...
[2026-06-12 05:43:48,560.560 INFO    ] No existing commands found in stream
[2026-06-12 05:43:53,574.574 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 05:43:53,578.578 INFO    ] Waiting 0.09 seconds before fallback handling...
[2026-06-12 05:43:54,050.050 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 05:43:54,051.051 INFO    ] Checking for system updates...
[2026-06-12 05:43:54,072.072 INFO    ] 200
[2026-06-12 05:43:54,074.074 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:43:54,104.104 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 05:43:54,106.106 INFO    ] No update needed
[2026-06-12 05:43:54,107.107 INFO    ] Checking for camera pi updates...
[2026-06-12 05:43:54,130.130 INFO    ] 200
[2026-06-12 05:43:54,131.131 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:43:54,154.154 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 05:43:54,200.200 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 05:43:54,201.201 INFO    ] No camera update needed
[2026-06-12 05:43:54,203.203 INFO    ] Script finished. Safe exiting...
[2026-06-12 05:43:54,204.204 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 05:43:54,207.207 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 05:43:54,210.210 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 05:43:56,248.248 INFO    ] ================================================
[2026-06-12 05:43:56,264.264 INFO    ] Launching Daemon at Fri Jun 12 05:43:56 IST 2026
[2026-06-12 05:43:56,288.288 INFO    ] ================================================
[2026-06-12 05:43:56,612.612 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 05:43:56
[2026-06-12 05:43:56,927.927 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 05:43:57,058.058 INFO    ] Initializing speech engine...
[2026-06-12 05:43:57,065.065 INFO    ] 2026-06-12 05:43:57
[2026-06-12 05:43:57,279.279 INFO    ] 2026-06-12 05:43:57
[2026-06-12 05:43:57,309.309 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 05:43:57,434.434 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 05:43:57,498.498 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 05:43:57,654.654 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 05:43:57,707.707 INFO    ] time= 12/06/2026 05:43:57
[2026-06-12 05:43:57,730.730 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 05:43:57,737.737 INFO    ] Checking for existing commands in stream...
[2026-06-12 05:43:57,855.855 INFO    ] No existing commands found in stream
[2026-06-12 05:44:02,864.864 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 05:44:02,866.866 INFO    ] Waiting 1.54 seconds before fallback handling...
[2026-06-12 05:44:04,800.800 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 05:44:04,801.801 INFO    ] Checking for system updates...
[2026-06-12 05:44:04,827.827 INFO    ] 200
[2026-06-12 05:44:04,828.828 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:44:04,858.858 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 05:44:04,860.860 INFO    ] No update needed
[2026-06-12 05:44:04,861.861 INFO    ] Checking for camera pi updates...
[2026-06-12 05:44:04,882.882 INFO    ] 200
[2026-06-12 05:44:04,883.883 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:44:04,908.908 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 05:44:04,944.944 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 05:44:04,946.946 INFO    ] No camera update needed
[2026-06-12 05:44:04,947.947 INFO    ] Script finished. Safe exiting...
[2026-06-12 05:44:04,949.949 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 05:44:04,952.952 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 05:44:04,955.955 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 05:44:07,996.996 INFO    ] ================================================
[2026-06-12 05:44:07,012.012 INFO    ] Launching Daemon at Fri Jun 12 05:44:07 IST 2026
[2026-06-12 05:44:07,024.024 INFO    ] ================================================
[2026-06-12 05:44:07,383.383 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 05:44:07
[2026-06-12 05:44:07,696.696 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 05:44:07,832.832 INFO    ] Initializing speech engine...
[2026-06-12 05:44:07,840.840 INFO    ] 2026-06-12 05:44:07
[2026-06-12 05:44:08,049.049 INFO    ] 2026-06-12 05:44:08
[2026-06-12 05:44:08,077.077 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 05:44:08,263.263 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 05:44:08,273.273 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 05:44:08,466.466 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 05:44:08,491.491 INFO    ] time= 12/06/2026 05:44:08
[2026-06-12 05:44:08,493.493 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 05:44:08,499.499 INFO    ] Checking for existing commands in stream...
[2026-06-12 05:44:08,566.566 INFO    ] No existing commands found in stream
[2026-06-12 05:44:13,581.581 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 05:44:13,583.583 INFO    ] Waiting 1.33 seconds before fallback handling...
[2026-06-12 05:44:15,278.278 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 05:44:15,279.279 INFO    ] Checking for system updates...
[2026-06-12 05:44:15,301.301 INFO    ] 200
[2026-06-12 05:44:15,302.302 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:44:15,335.335 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 05:44:15,337.337 INFO    ] No update needed
[2026-06-12 05:44:15,338.338 INFO    ] Checking for camera pi updates...
[2026-06-12 05:44:15,358.358 INFO    ] 200
[2026-06-12 05:44:15,359.359 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:44:15,383.383 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 05:44:15,421.421 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 05:44:15,423.423 INFO    ] No camera update needed
[2026-06-12 05:44:15,424.424 INFO    ] Script finished. Safe exiting...
[2026-06-12 05:44:15,426.426 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 05:44:15,429.429 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 05:44:15,432.432 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 05:44:17,471.471 INFO    ] ================================================
[2026-06-12 05:44:17,487.487 INFO    ] Launching Daemon at Fri Jun 12 05:44:17 IST 2026
[2026-06-12 05:44:17,499.499 INFO    ] ================================================
[2026-06-12 05:44:17,830.830 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 05:44:17
[2026-06-12 05:44:18,144.144 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 05:44:18,277.277 INFO    ] Initializing speech engine...
[2026-06-12 05:44:18,284.284 INFO    ] 2026-06-12 05:44:18
[2026-06-12 05:44:18,498.498 INFO    ] 2026-06-12 05:44:18
[2026-06-12 05:44:18,528.528 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 05:44:18,715.715 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 05:44:18,726.726 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 05:44:18,905.905 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 05:44:18,935.935 INFO    ] time= 12/06/2026 05:44:18
[2026-06-12 05:44:18,946.946 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 05:44:18,951.951 INFO    ] Checking for existing commands in stream...
[2026-06-12 05:44:19,019.019 INFO    ] No existing commands found in stream
[2026-06-12 05:44:24,027.027 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 05:44:24,029.029 INFO    ] Waiting 2.17 seconds before fallback handling...
[2026-06-12 05:44:26,586.586 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 05:44:26,588.588 INFO    ] Checking for system updates...
[2026-06-12 05:44:26,610.610 INFO    ] 200
[2026-06-12 05:44:26,612.612 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:44:26,643.643 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 05:44:26,644.644 INFO    ] No update needed
[2026-06-12 05:44:26,646.646 INFO    ] Checking for camera pi updates...
[2026-06-12 05:44:26,667.667 INFO    ] 200
[2026-06-12 05:44:26,668.668 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:44:26,694.694 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 05:44:26,731.731 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 05:44:26,732.732 INFO    ] No camera update needed
[2026-06-12 05:44:26,734.734 INFO    ] Script finished. Safe exiting...
[2026-06-12 05:44:26,735.735 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 05:44:26,738.738 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 05:44:26,742.742 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 05:44:28,782.782 INFO    ] ================================================
[2026-06-12 05:44:28,799.799 INFO    ] Launching Daemon at Fri Jun 12 05:44:28 IST 2026
[2026-06-12 05:44:28,809.809 INFO    ] ================================================
[2026-06-12 05:44:29,180.180 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 05:44:29
[2026-06-12 05:44:29,524.524 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 05:44:29,680.680 INFO    ] Initializing speech engine...
[2026-06-12 05:44:29,684.684 INFO    ] 2026-06-12 05:44:29
[2026-06-12 05:44:29,893.893 INFO    ] 2026-06-12 05:44:29
[2026-06-12 05:44:29,923.923 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 05:44:30,109.109 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 05:44:30,119.119 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 05:44:30,244.244 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 05:44:30,305.305 INFO    ] time= 12/06/2026 05:44:30
[2026-06-12 05:44:30,344.344 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 05:44:30,351.351 INFO    ] Checking for existing commands in stream...
[2026-06-12 05:44:30,418.418 INFO    ] No existing commands found in stream
[2026-06-12 05:44:35,428.428 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 05:44:35,431.431 INFO    ] Waiting 1.12 seconds before fallback handling...
[2026-06-12 05:44:36,966.966 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 05:44:36,968.968 INFO    ] Checking for system updates...
[2026-06-12 05:44:36,989.989 INFO    ] 200
[2026-06-12 05:44:36,991.991 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:44:37,024.024 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 05:44:37,025.025 INFO    ] No update needed
[2026-06-12 05:44:37,027.027 INFO    ] Checking for camera pi updates...
[2026-06-12 05:44:37,046.046 INFO    ] 200
[2026-06-12 05:44:37,048.048 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:44:37,072.072 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 05:44:37,113.113 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 05:44:37,115.115 INFO    ] No camera update needed
[2026-06-12 05:44:37,117.117 INFO    ] Script finished. Safe exiting...
[2026-06-12 05:44:37,118.118 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 05:44:37,122.122 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 05:44:37,125.125 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 05:44:39,165.165 INFO    ] ================================================
[2026-06-12 05:44:39,182.182 INFO    ] Launching Daemon at Fri Jun 12 05:44:39 IST 2026
[2026-06-12 05:44:39,193.193 INFO    ] ================================================
[2026-06-12 05:44:39,547.547 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 05:44:39
[2026-06-12 05:44:39,863.863 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 05:44:39,996.996 INFO    ] Initializing speech engine...
[2026-06-12 05:44:40,001.001 INFO    ] 2026-06-12 05:44:39
[2026-06-12 05:44:40,218.218 INFO    ] 2026-06-12 05:44:40
[2026-06-12 05:44:40,246.246 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 05:44:40,429.429 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 05:44:40,433.433 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 05:44:40,589.589 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 05:44:40,637.637 INFO    ] time= 12/06/2026 05:44:40
[2026-06-12 05:44:40,659.659 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 05:44:40,665.665 INFO    ] Checking for existing commands in stream...
[2026-06-12 05:44:40,732.732 INFO    ] No existing commands found in stream
[2026-06-12 05:44:45,746.746 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 05:44:45,749.749 INFO    ] Waiting 1.67 seconds before fallback handling...
[2026-06-12 05:44:47,821.821 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 05:44:47,823.823 INFO    ] Checking for system updates...
[2026-06-12 05:44:47,844.844 INFO    ] 200
[2026-06-12 05:44:47,846.846 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:44:47,879.879 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 05:44:47,880.880 INFO    ] No update needed
[2026-06-12 05:44:47,882.882 INFO    ] Checking for camera pi updates...
[2026-06-12 05:44:47,904.904 INFO    ] 200
[2026-06-12 05:44:47,906.906 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:44:47,929.929 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 05:44:47,973.973 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 05:44:47,974.974 INFO    ] No camera update needed
[2026-06-12 05:44:47,976.976 INFO    ] Script finished. Safe exiting...
[2026-06-12 05:44:47,977.977 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 05:44:47,981.981 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 05:44:47,984.984 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 05:44:50,025.025 INFO    ] ================================================
[2026-06-12 05:44:50,041.041 INFO    ] Launching Daemon at Fri Jun 12 05:44:50 IST 2026
[2026-06-12 05:44:50,052.052 INFO    ] ================================================
[2026-06-12 05:44:50,393.393 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 05:44:50
[2026-06-12 05:44:50,707.707 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 05:44:50,839.839 INFO    ] Initializing speech engine...
[2026-06-12 05:44:50,843.843 INFO    ] 2026-06-12 05:44:50
[2026-06-12 05:44:51,062.062 INFO    ] 2026-06-12 05:44:51
[2026-06-12 05:44:51,091.091 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 05:44:51,276.276 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 05:44:51,280.280 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 05:44:51,417.417 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 05:44:51,482.482 INFO    ] time= 12/06/2026 05:44:51
[2026-06-12 05:44:51,511.511 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 05:44:51,518.518 INFO    ] Checking for existing commands in stream...
[2026-06-12 05:44:51,586.586 INFO    ] No existing commands found in stream
[2026-06-12 05:44:56,595.595 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 05:44:56,597.597 INFO    ] Waiting 3.28 seconds before fallback handling...
[2026-06-12 05:45:00,263.263 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 05:45:00,265.265 INFO    ] Checking for system updates...
[2026-06-12 05:45:00,285.285 INFO    ] 200
[2026-06-12 05:45:00,286.286 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:45:00,316.316 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 05:45:00,318.318 INFO    ] No update needed
[2026-06-12 05:45:00,319.319 INFO    ] Checking for camera pi updates...
[2026-06-12 05:45:00,339.339 INFO    ] 200
[2026-06-12 05:45:00,340.340 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:45:00,363.363 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 05:45:00,402.402 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 05:45:00,403.403 INFO    ] No camera update needed
[2026-06-12 05:45:00,404.404 INFO    ] Script finished. Safe exiting...
[2026-06-12 05:45:00,406.406 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 05:45:00,409.409 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 05:45:00,412.412 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 05:45:02,449.449 INFO    ] ================================================
[2026-06-12 05:45:02,461.461 INFO    ] Launching Daemon at Fri Jun 12 05:45:02 IST 2026
[2026-06-12 05:45:02,471.471 INFO    ] ================================================
[2026-06-12 05:45:02,826.826 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 05:45:02
[2026-06-12 05:45:03,187.187 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 05:45:03,348.348 INFO    ] Initializing speech engine...
[2026-06-12 05:45:03,353.353 INFO    ] 2026-06-12 05:45:03
[2026-06-12 05:45:03,559.559 INFO    ] 2026-06-12 05:45:03
[2026-06-12 05:45:03,590.590 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 05:45:03,775.775 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 05:45:03,778.778 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 05:45:03,914.914 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 05:45:03,981.981 INFO    ] time= 12/06/2026 05:45:03
[2026-06-12 05:45:03,985.985 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 05:45:04,009.009 INFO    ] Checking for existing commands in stream...
[2026-06-12 05:45:04,080.080 INFO    ] No existing commands found in stream
[2026-06-12 05:45:09,089.089 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 05:45:09,092.092 INFO    ] Waiting 3.35 seconds before fallback handling...
[2026-06-12 05:45:12,824.824 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 05:45:12,825.825 INFO    ] Checking for system updates...
[2026-06-12 05:45:12,846.846 INFO    ] 200
[2026-06-12 05:45:12,848.848 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:45:12,878.878 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 05:45:12,879.879 INFO    ] No update needed
[2026-06-12 05:45:12,881.881 INFO    ] Checking for camera pi updates...
[2026-06-12 05:45:12,900.900 INFO    ] 200
[2026-06-12 05:45:12,902.902 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:45:12,927.927 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 05:45:13,075.075 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 05:45:13,076.076 INFO    ] No camera update needed
[2026-06-12 05:45:13,077.077 INFO    ] Script finished. Safe exiting...
[2026-06-12 05:45:13,079.079 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 05:45:13,082.082 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 05:45:13,085.085 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 05:45:15,124.124 INFO    ] ================================================
[2026-06-12 05:45:15,140.140 INFO    ] Launching Daemon at Fri Jun 12 05:45:15 IST 2026
[2026-06-12 05:45:15,151.151 INFO    ] ================================================
[2026-06-12 05:45:15,488.488 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 05:45:15
[2026-06-12 05:45:15,804.804 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 05:45:15,935.935 INFO    ] Initializing speech engine...
[2026-06-12 05:45:15,942.942 INFO    ] 2026-06-12 05:45:15
[2026-06-12 05:45:16,155.155 INFO    ] 2026-06-12 05:45:16
[2026-06-12 05:45:16,184.184 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 05:45:16,316.316 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 05:45:16,368.368 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 05:45:16,505.505 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 05:45:16,569.569 INFO    ] time= 12/06/2026 05:45:16
[2026-06-12 05:45:16,597.597 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 05:45:16,604.604 INFO    ] Checking for existing commands in stream...
[2026-06-12 05:45:16,670.670 INFO    ] No existing commands found in stream
[2026-06-12 05:45:21,679.679 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 05:45:21,682.682 INFO    ] Waiting 2.73 seconds before fallback handling...
[2026-06-12 05:45:24,776.776 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 05:45:24,777.777 INFO    ] Checking for system updates...
[2026-06-12 05:45:24,797.797 INFO    ] 200
[2026-06-12 05:45:24,799.799 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:45:24,829.829 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 05:45:24,830.830 INFO    ] No update needed
[2026-06-12 05:45:24,832.832 INFO    ] Checking for camera pi updates...
[2026-06-12 05:45:24,851.851 INFO    ] 200
[2026-06-12 05:45:24,852.852 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:45:24,877.877 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 05:45:24,913.913 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 05:45:24,914.914 INFO    ] No camera update needed
[2026-06-12 05:45:24,916.916 INFO    ] Script finished. Safe exiting...
[2026-06-12 05:45:24,917.917 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 05:45:24,920.920 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 05:45:24,923.923 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 05:45:26,962.962 INFO    ] ================================================
[2026-06-12 05:45:26,978.978 INFO    ] Launching Daemon at Fri Jun 12 05:45:26 IST 2026
[2026-06-12 05:45:26,990.990 INFO    ] ================================================
[2026-06-12 05:45:27,314.314 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 05:45:27
[2026-06-12 05:45:27,626.626 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 05:45:27,768.768 INFO    ] Initializing speech engine...
[2026-06-12 05:45:27,773.773 INFO    ] 2026-06-12 05:45:27
[2026-06-12 05:45:27,976.976 INFO    ] 2026-06-12 05:45:27
[2026-06-12 05:45:28,003.003 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 05:45:28,187.187 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 05:45:28,197.197 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 05:45:28,375.375 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 05:45:28,405.405 INFO    ] time= 12/06/2026 05:45:28
[2026-06-12 05:45:28,416.416 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 05:45:28,421.421 INFO    ] Checking for existing commands in stream...
[2026-06-12 05:45:28,488.488 INFO    ] No existing commands found in stream
[2026-06-12 05:45:33,502.502 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 05:45:33,505.505 INFO    ] Waiting 0.87 seconds before fallback handling...
[2026-06-12 05:45:34,765.765 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 05:45:34,767.767 INFO    ] Checking for system updates...
[2026-06-12 05:45:34,789.789 INFO    ] 200
[2026-06-12 05:45:34,790.790 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:45:34,820.820 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 05:45:34,822.822 INFO    ] No update needed
[2026-06-12 05:45:34,823.823 INFO    ] Checking for camera pi updates...
[2026-06-12 05:45:34,843.843 INFO    ] 200
[2026-06-12 05:45:34,844.844 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:45:34,870.870 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 05:45:34,904.904 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 05:45:34,906.906 INFO    ] No camera update needed
[2026-06-12 05:45:34,907.907 INFO    ] Script finished. Safe exiting...
[2026-06-12 05:45:34,908.908 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 05:45:34,911.911 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 05:45:34,914.914 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 05:45:36,952.952 INFO    ] ================================================
[2026-06-12 05:45:36,968.968 INFO    ] Launching Daemon at Fri Jun 12 05:45:36 IST 2026
[2026-06-12 05:45:36,980.980 INFO    ] ================================================
[2026-06-12 05:45:37,307.307 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 05:45:37
[2026-06-12 05:45:37,619.619 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 05:45:37,752.752 INFO    ] Initializing speech engine...
[2026-06-12 05:45:37,755.755 INFO    ] 2026-06-12 05:45:37
[2026-06-12 05:45:37,974.974 INFO    ] 2026-06-12 05:45:37
[2026-06-12 05:45:38,002.002 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 05:45:38,189.189 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 05:45:38,198.198 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 05:45:38,328.328 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 05:45:38,387.387 INFO    ] time= 12/06/2026 05:45:38
[2026-06-12 05:45:38,421.421 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 05:45:38,423.423 INFO    ] Checking for existing commands in stream...
[2026-06-12 05:45:38,518.518 INFO    ] No existing commands found in stream
[2026-06-12 05:45:43,527.527 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 05:45:43,530.530 INFO    ] Waiting 1.57 seconds before fallback handling...
[2026-06-12 05:45:45,496.496 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 05:45:45,497.497 INFO    ] Checking for system updates...
[2026-06-12 05:45:45,518.518 INFO    ] 200
[2026-06-12 05:45:45,520.520 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:45:45,550.550 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 05:45:45,551.551 INFO    ] No update needed
[2026-06-12 05:45:45,553.553 INFO    ] Checking for camera pi updates...
[2026-06-12 05:45:45,574.574 INFO    ] 200
[2026-06-12 05:45:45,575.575 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:45:45,598.598 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 05:45:45,631.631 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 05:45:45,633.633 INFO    ] No camera update needed
[2026-06-12 05:45:45,634.634 INFO    ] Script finished. Safe exiting...
[2026-06-12 05:45:45,635.635 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 05:45:45,638.638 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 05:45:45,641.641 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 05:45:47,681.681 INFO    ] ================================================
[2026-06-12 05:45:47,697.697 INFO    ] Launching Daemon at Fri Jun 12 05:45:47 IST 2026
[2026-06-12 05:45:47,708.708 INFO    ] ================================================
[2026-06-12 05:45:48,033.033 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 05:45:48
[2026-06-12 05:45:48,344.344 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 05:45:48,487.487 INFO    ] Initializing speech engine...
[2026-06-12 05:45:48,492.492 INFO    ] 2026-06-12 05:45:48
[2026-06-12 05:45:48,697.697 INFO    ] 2026-06-12 05:45:48
[2026-06-12 05:45:48,727.727 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 05:45:48,912.912 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 05:45:48,922.922 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 05:45:49,062.062 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 05:45:49,119.119 INFO    ] time= 12/06/2026 05:45:49
[2026-06-12 05:45:49,144.144 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 05:45:49,149.149 INFO    ] Checking for existing commands in stream...
[2026-06-12 05:45:49,217.217 INFO    ] No existing commands found in stream
[2026-06-12 05:45:54,231.231 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 05:45:54,234.234 INFO    ] Waiting 1.03 seconds before fallback handling...
[2026-06-12 05:45:55,636.636 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 05:45:55,637.637 INFO    ] Checking for system updates...
[2026-06-12 05:45:55,658.658 INFO    ] 200
[2026-06-12 05:45:55,660.660 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:45:55,691.691 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 05:45:55,692.692 INFO    ] No update needed
[2026-06-12 05:45:55,694.694 INFO    ] Checking for camera pi updates...
[2026-06-12 05:45:55,715.715 INFO    ] 200
[2026-06-12 05:45:55,719.719 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:45:55,745.745 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 05:45:55,781.781 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 05:45:55,783.783 INFO    ] No camera update needed
[2026-06-12 05:45:55,784.784 INFO    ] Script finished. Safe exiting...
[2026-06-12 05:45:55,786.786 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 05:45:55,789.789 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 05:45:55,792.792 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 05:45:57,832.832 INFO    ] ================================================
[2026-06-12 05:45:57,848.848 INFO    ] Launching Daemon at Fri Jun 12 05:45:57 IST 2026
[2026-06-12 05:45:57,860.860 INFO    ] ================================================
[2026-06-12 05:45:58,220.220 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 05:45:58
[2026-06-12 05:45:58,533.533 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 05:45:58,663.663 INFO    ] Initializing speech engine...
[2026-06-12 05:45:58,666.666 INFO    ] 2026-06-12 05:45:58
[2026-06-12 05:45:58,882.882 INFO    ] 2026-06-12 05:45:58
[2026-06-12 05:45:58,912.912 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 05:45:59,109.109 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 05:45:59,113.113 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 05:45:59,260.260 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 05:45:59,319.319 INFO    ] time= 12/06/2026 05:45:59
[2026-06-12 05:45:59,356.356 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 05:45:59,362.362 INFO    ] Checking for existing commands in stream...
[2026-06-12 05:45:59,465.465 INFO    ] No existing commands found in stream
[2026-06-12 05:46:04,473.473 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 05:46:04,476.476 INFO    ] Waiting 3.14 seconds before fallback handling...
[2026-06-12 05:46:08,030.030 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 05:46:08,031.031 INFO    ] Checking for system updates...
[2026-06-12 05:46:08,053.053 INFO    ] 200
[2026-06-12 05:46:08,054.054 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:46:08,086.086 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 05:46:08,087.087 INFO    ] No update needed
[2026-06-12 05:46:08,089.089 INFO    ] Checking for camera pi updates...
[2026-06-12 05:46:08,108.108 INFO    ] 200
[2026-06-12 05:46:08,110.110 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:46:08,133.133 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 05:46:08,174.174 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 05:46:08,176.176 INFO    ] No camera update needed
[2026-06-12 05:46:08,177.177 INFO    ] Script finished. Safe exiting...
[2026-06-12 05:46:08,178.178 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 05:46:08,181.181 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 05:46:08,184.184 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 05:46:10,223.223 INFO    ] ================================================
[2026-06-12 05:46:10,239.239 INFO    ] Launching Daemon at Fri Jun 12 05:46:10 IST 2026
[2026-06-12 05:46:10,250.250 INFO    ] ================================================
[2026-06-12 05:46:10,619.619 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 05:46:10
[2026-06-12 05:46:10,930.930 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 05:46:11,059.059 INFO    ] Initializing speech engine...
[2026-06-12 05:46:11,064.064 INFO    ] 2026-06-12 05:46:11
[2026-06-12 05:46:11,279.279 INFO    ] 2026-06-12 05:46:11
[2026-06-12 05:46:11,309.309 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 05:46:11,494.494 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 05:46:11,503.503 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 05:46:11,674.674 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 05:46:11,718.718 INFO    ] time= 12/06/2026 05:46:11
[2026-06-12 05:46:11,723.723 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 05:46:11,729.729 INFO    ] Checking for existing commands in stream...
[2026-06-12 05:46:11,798.798 INFO    ] No existing commands found in stream
[2026-06-12 05:46:16,808.808 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 05:46:16,816.816 INFO    ] Waiting 1.35 seconds before fallback handling...
[2026-06-12 05:46:18,577.577 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 05:46:18,579.579 INFO    ] Checking for system updates...
[2026-06-12 05:46:18,601.601 INFO    ] 200
[2026-06-12 05:46:18,602.602 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:46:18,635.635 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 05:46:18,636.636 INFO    ] No update needed
[2026-06-12 05:46:18,638.638 INFO    ] Checking for camera pi updates...
[2026-06-12 05:46:18,657.657 INFO    ] 200
[2026-06-12 05:46:18,658.658 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:46:18,682.682 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 05:46:18,722.722 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 05:46:18,723.723 INFO    ] No camera update needed
[2026-06-12 05:46:18,725.725 INFO    ] Script finished. Safe exiting...
[2026-06-12 05:46:18,726.726 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 05:46:18,729.729 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 05:46:18,732.732 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 05:46:20,771.771 INFO    ] ================================================
[2026-06-12 05:46:20,786.786 INFO    ] Launching Daemon at Fri Jun 12 05:46:20 IST 2026
[2026-06-12 05:46:20,798.798 INFO    ] ================================================
[2026-06-12 05:46:21,162.162 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 05:46:21
[2026-06-12 05:46:21,474.474 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 05:46:21,610.610 INFO    ] Initializing speech engine...
[2026-06-12 05:46:21,622.622 INFO    ] 2026-06-12 05:46:21
[2026-06-12 05:46:21,840.840 INFO    ] 2026-06-12 05:46:21
[2026-06-12 05:46:21,871.871 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 05:46:22,066.066 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 05:46:22,070.070 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 05:46:22,242.242 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 05:46:22,286.286 INFO    ] time= 12/06/2026 05:46:22
[2026-06-12 05:46:22,312.312 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 05:46:22,314.314 INFO    ] Checking for existing commands in stream...
[2026-06-12 05:46:22,390.390 INFO    ] No existing commands found in stream
[2026-06-12 05:46:27,399.399 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 05:46:27,402.402 INFO    ] Waiting 2.45 seconds before fallback handling...
[2026-06-12 05:46:30,210.210 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 05:46:30,212.212 INFO    ] Checking for system updates...
[2026-06-12 05:46:30,232.232 INFO    ] 200
[2026-06-12 05:46:30,234.234 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:46:30,264.264 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 05:46:30,265.265 INFO    ] No update needed
[2026-06-12 05:46:30,267.267 INFO    ] Checking for camera pi updates...
[2026-06-12 05:46:30,288.288 INFO    ] 200
[2026-06-12 05:46:30,289.289 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:46:30,314.314 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 05:46:30,355.355 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 05:46:30,357.357 INFO    ] No camera update needed
[2026-06-12 05:46:30,358.358 INFO    ] Script finished. Safe exiting...
[2026-06-12 05:46:30,359.359 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 05:46:30,362.362 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 05:46:30,365.365 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 05:46:32,395.395 INFO    ] ================================================
[2026-06-12 05:46:32,404.404 INFO    ] Launching Daemon at Fri Jun 12 05:46:32 IST 2026
[2026-06-12 05:46:32,410.410 INFO    ] ================================================
[2026-06-12 05:46:32,712.712 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 05:46:32
[2026-06-12 05:46:33,025.025 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 05:46:33,170.170 INFO    ] Initializing speech engine...
[2026-06-12 05:46:33,176.176 INFO    ] 2026-06-12 05:46:33
[2026-06-12 05:46:33,390.390 INFO    ] 2026-06-12 05:46:33
[2026-06-12 05:46:33,420.420 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 05:46:33,614.614 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 05:46:33,618.618 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 05:46:33,764.764 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 05:46:33,817.817 INFO    ] time= 12/06/2026 05:46:33
[2026-06-12 05:46:33,846.846 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 05:46:33,863.863 INFO    ] Checking for existing commands in stream...
[2026-06-12 05:46:33,937.937 INFO    ] No existing commands found in stream
[2026-06-12 05:46:38,948.948 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 05:46:38,951.951 INFO    ] Waiting 1.71 seconds before fallback handling...
[2026-06-12 05:46:41,045.045 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 05:46:41,046.046 INFO    ] Checking for system updates...
[2026-06-12 05:46:41,067.067 INFO    ] 200
[2026-06-12 05:46:41,069.069 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:46:41,099.099 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 05:46:41,101.101 INFO    ] No update needed
[2026-06-12 05:46:41,102.102 INFO    ] Checking for camera pi updates...
[2026-06-12 05:46:41,122.122 INFO    ] 200
[2026-06-12 05:46:41,123.123 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:46:41,148.148 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 05:46:41,188.188 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 05:46:41,189.189 INFO    ] No camera update needed
[2026-06-12 05:46:41,191.191 INFO    ] Script finished. Safe exiting...
[2026-06-12 05:46:41,192.192 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 05:46:41,195.195 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 05:46:41,198.198 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 05:46:43,238.238 INFO    ] ================================================
[2026-06-12 05:46:43,253.253 INFO    ] Launching Daemon at Fri Jun 12 05:46:43 IST 2026
[2026-06-12 05:46:43,263.263 INFO    ] ================================================
[2026-06-12 05:46:43,622.622 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 05:46:43
[2026-06-12 05:46:43,939.939 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 05:46:44,073.073 INFO    ] Initializing speech engine...
[2026-06-12 05:46:44,085.085 INFO    ] 2026-06-12 05:46:44
[2026-06-12 05:46:44,292.292 INFO    ] 2026-06-12 05:46:44
[2026-06-12 05:46:44,320.320 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 05:46:44,502.502 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 05:46:44,506.506 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 05:46:44,641.641 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 05:46:44,708.708 INFO    ] time= 12/06/2026 05:46:44
[2026-06-12 05:46:44,732.732 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 05:46:44,738.738 INFO    ] Checking for existing commands in stream...
[2026-06-12 05:46:44,804.804 INFO    ] No existing commands found in stream
[2026-06-12 05:46:49,818.818 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 05:46:49,821.821 INFO    ] Waiting 1.74 seconds before fallback handling...
[2026-06-12 05:46:51,926.926 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 05:46:51,928.928 INFO    ] Checking for system updates...
[2026-06-12 05:46:51,957.957 INFO    ] 200
[2026-06-12 05:46:51,959.959 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:46:51,989.989 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 05:46:51,990.990 INFO    ] No update needed
[2026-06-12 05:46:51,992.992 INFO    ] Checking for camera pi updates...
[2026-06-12 05:46:52,012.012 INFO    ] 200
[2026-06-12 05:46:52,013.013 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:46:52,037.037 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 05:46:52,077.077 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 05:46:52,078.078 INFO    ] No camera update needed
[2026-06-12 05:46:52,080.080 INFO    ] Script finished. Safe exiting...
[2026-06-12 05:46:52,081.081 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 05:46:52,084.084 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 05:46:52,087.087 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 05:46:54,126.126 INFO    ] ================================================
[2026-06-12 05:46:54,141.141 INFO    ] Launching Daemon at Fri Jun 12 05:46:54 IST 2026
[2026-06-12 05:46:54,152.152 INFO    ] ================================================
[2026-06-12 05:46:54,512.512 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 05:46:54
[2026-06-12 05:46:54,829.829 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 05:46:54,966.966 INFO    ] Initializing speech engine...
[2026-06-12 05:46:54,976.976 INFO    ] 2026-06-12 05:46:54
[2026-06-12 05:46:55,180.180 INFO    ] 2026-06-12 05:46:55
[2026-06-12 05:46:55,209.209 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 05:46:55,392.392 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 05:46:55,396.396 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 05:46:55,548.548 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 05:46:55,602.602 INFO    ] time= 12/06/2026 05:46:55
[2026-06-12 05:46:55,623.623 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 05:46:55,629.629 INFO    ] Checking for existing commands in stream...
[2026-06-12 05:46:55,696.696 INFO    ] No existing commands found in stream
[2026-06-12 05:47:00,710.710 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 05:47:00,713.713 INFO    ] Waiting 0.66 seconds before fallback handling...
[2026-06-12 05:47:01,757.757 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 05:47:01,759.759 INFO    ] Checking for system updates...
[2026-06-12 05:47:01,793.793 INFO    ] 200
[2026-06-12 05:47:01,795.795 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:47:01,874.874 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 05:47:01,876.876 INFO    ] No update needed
[2026-06-12 05:47:01,879.879 INFO    ] Checking for camera pi updates...
[2026-06-12 05:47:01,914.914 INFO    ] 200
[2026-06-12 05:47:01,916.916 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:47:01,945.945 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 05:47:01,971.971 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 05:47:01,979.979 INFO    ] No camera update needed
[2026-06-12 05:47:01,981.981 INFO    ] Script finished. Safe exiting...
[2026-06-12 05:47:01,983.983 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 05:47:01,987.987 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 05:47:02,000.000 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 05:47:04,039.039 INFO    ] ================================================
[2026-06-12 05:47:04,055.055 INFO    ] Launching Daemon at Fri Jun 12 05:47:04 IST 2026
[2026-06-12 05:47:04,066.066 INFO    ] ================================================
[2026-06-12 05:47:04,418.418 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 05:47:04
[2026-06-12 05:47:04,729.729 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 05:47:04,875.875 INFO    ] Initializing speech engine...
[2026-06-12 05:47:04,880.880 INFO    ] 2026-06-12 05:47:04
[2026-06-12 05:47:05,093.093 INFO    ] 2026-06-12 05:47:05
[2026-06-12 05:47:05,124.124 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 05:47:05,319.319 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 05:47:05,329.329 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 05:47:05,490.490 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 05:47:05,539.539 INFO    ] time= 12/06/2026 05:47:05
[2026-06-12 05:47:05,565.565 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 05:47:05,572.572 INFO    ] Checking for existing commands in stream...
[2026-06-12 05:47:05,641.641 INFO    ] No existing commands found in stream
[2026-06-12 05:47:10,652.652 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 05:47:10,654.654 INFO    ] Waiting 3.25 seconds before fallback handling...
[2026-06-12 05:47:14,288.288 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 05:47:14,290.290 INFO    ] Checking for system updates...
[2026-06-12 05:47:14,311.311 INFO    ] 200
[2026-06-12 05:47:14,312.312 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:47:14,342.342 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 05:47:14,344.344 INFO    ] No update needed
[2026-06-12 05:47:14,345.345 INFO    ] Checking for camera pi updates...
[2026-06-12 05:47:14,364.364 INFO    ] 200
[2026-06-12 05:47:14,366.366 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:47:14,389.389 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 05:47:14,525.525 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 05:47:14,527.527 INFO    ] No camera update needed
[2026-06-12 05:47:14,528.528 INFO    ] Script finished. Safe exiting...
[2026-06-12 05:47:14,529.529 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 05:47:14,532.532 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 05:47:14,535.535 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 05:47:16,573.573 INFO    ] ================================================
[2026-06-12 05:47:16,589.589 INFO    ] Launching Daemon at Fri Jun 12 05:47:16 IST 2026
[2026-06-12 05:47:16,600.600 INFO    ] ================================================
[2026-06-12 05:47:16,948.948 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 05:47:16
[2026-06-12 05:47:17,266.266 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 05:47:17,415.415 INFO    ] Initializing speech engine...
[2026-06-12 05:47:17,421.421 INFO    ] 2026-06-12 05:47:17
[2026-06-12 05:47:17,637.637 INFO    ] 2026-06-12 05:47:17
[2026-06-12 05:47:17,668.668 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 05:47:17,865.865 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 05:47:17,869.869 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 05:47:18,011.011 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 05:47:18,079.079 INFO    ] time= 12/06/2026 05:47:18
[2026-06-12 05:47:18,108.108 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 05:47:18,114.114 INFO    ] Checking for existing commands in stream...
[2026-06-12 05:47:18,191.191 INFO    ] No existing commands found in stream
[2026-06-12 05:47:23,200.200 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 05:47:23,203.203 INFO    ] Waiting 0.43 seconds before fallback handling...
[2026-06-12 05:47:24,026.026 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 05:47:24,028.028 INFO    ] Checking for system updates...
[2026-06-12 05:47:24,049.049 INFO    ] 200
[2026-06-12 05:47:24,050.050 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:47:24,083.083 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 05:47:24,084.084 INFO    ] No update needed
[2026-06-12 05:47:24,086.086 INFO    ] Checking for camera pi updates...
[2026-06-12 05:47:24,106.106 INFO    ] 200
[2026-06-12 05:47:24,107.107 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:47:24,131.131 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 05:47:24,168.168 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 05:47:24,169.169 INFO    ] No camera update needed
[2026-06-12 05:47:24,171.171 INFO    ] Script finished. Safe exiting...
[2026-06-12 05:47:24,172.172 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 05:47:24,176.176 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 05:47:24,178.178 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 05:47:26,213.213 INFO    ] ================================================
[2026-06-12 05:47:26,228.228 INFO    ] Launching Daemon at Fri Jun 12 05:47:26 IST 2026
[2026-06-12 05:47:26,240.240 INFO    ] ================================================
[2026-06-12 05:47:26,563.563 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 05:47:26
[2026-06-12 05:47:26,878.878 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 05:47:27,020.020 INFO    ] Initializing speech engine...
[2026-06-12 05:47:27,026.026 INFO    ] 2026-06-12 05:47:27
[2026-06-12 05:47:27,228.228 INFO    ] 2026-06-12 05:47:27
[2026-06-12 05:47:27,257.257 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 05:47:27,441.441 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 05:47:27,451.451 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 05:47:27,584.584 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 05:47:27,646.646 INFO    ] time= 12/06/2026 05:47:27
[2026-06-12 05:47:27,670.670 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 05:47:27,676.676 INFO    ] Checking for existing commands in stream...
[2026-06-12 05:47:27,744.744 INFO    ] No existing commands found in stream
[2026-06-12 05:47:32,758.758 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 05:47:32,761.761 INFO    ] Waiting 2.14 seconds before fallback handling...
[2026-06-12 05:47:35,279.279 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 05:47:35,280.280 INFO    ] Checking for system updates...
[2026-06-12 05:47:35,301.301 INFO    ] 200
[2026-06-12 05:47:35,302.302 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:47:35,337.337 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 05:47:35,338.338 INFO    ] No update needed
[2026-06-12 05:47:35,340.340 INFO    ] Checking for camera pi updates...
[2026-06-12 05:47:35,359.359 INFO    ] 200
[2026-06-12 05:47:35,360.360 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:47:35,384.384 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 05:47:35,424.424 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 05:47:35,425.425 INFO    ] No camera update needed
[2026-06-12 05:47:35,427.427 INFO    ] Script finished. Safe exiting...
[2026-06-12 05:47:35,428.428 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 05:47:35,431.431 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 05:47:35,433.433 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 05:47:37,473.473 INFO    ] ================================================
[2026-06-12 05:47:37,488.488 INFO    ] Launching Daemon at Fri Jun 12 05:47:37 IST 2026
[2026-06-12 05:47:37,499.499 INFO    ] ================================================
[2026-06-12 05:47:37,820.820 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 05:47:37
[2026-06-12 05:47:38,132.132 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 05:47:38,262.262 INFO    ] Initializing speech engine...
[2026-06-12 05:47:38,270.270 INFO    ] 2026-06-12 05:47:38
[2026-06-12 05:47:38,479.479 INFO    ] 2026-06-12 05:47:38
[2026-06-12 05:47:38,508.508 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 05:47:38,692.692 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 05:47:38,695.695 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 05:47:38,838.838 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 05:47:38,899.899 INFO    ] time= 12/06/2026 05:47:38
[2026-06-12 05:47:38,923.923 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 05:47:38,930.930 INFO    ] Checking for existing commands in stream...
[2026-06-12 05:47:39,020.020 INFO    ] No existing commands found in stream
[2026-06-12 05:47:44,029.029 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 05:47:44,032.032 INFO    ] Waiting 2.34 seconds before fallback handling...
[2026-06-12 05:47:46,739.739 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 05:47:46,740.740 INFO    ] Checking for system updates...
[2026-06-12 05:47:46,761.761 INFO    ] 200
[2026-06-12 05:47:46,763.763 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:47:46,793.793 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 05:47:46,795.795 INFO    ] No update needed
[2026-06-12 05:47:46,796.796 INFO    ] Checking for camera pi updates...
[2026-06-12 05:47:46,815.815 INFO    ] 200
[2026-06-12 05:47:46,816.816 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:47:46,839.839 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 05:47:46,880.880 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 05:47:46,882.882 INFO    ] No camera update needed
[2026-06-12 05:47:46,883.883 INFO    ] Script finished. Safe exiting...
[2026-06-12 05:47:46,884.884 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 05:47:46,887.887 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 05:47:46,889.889 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 05:47:48,929.929 INFO    ] ================================================
[2026-06-12 05:47:48,944.944 INFO    ] Launching Daemon at Fri Jun 12 05:47:48 IST 2026
[2026-06-12 05:47:48,955.955 INFO    ] ================================================
[2026-06-12 05:47:49,326.326 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 05:47:49
[2026-06-12 05:47:49,643.643 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 05:47:49,788.788 INFO    ] Initializing speech engine...
[2026-06-12 05:47:49,793.793 INFO    ] 2026-06-12 05:47:49
[2026-06-12 05:47:49,998.998 INFO    ] 2026-06-12 05:47:49
[2026-06-12 05:47:50,026.026 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 05:47:50,209.209 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 05:47:50,218.218 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 05:47:50,358.358 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 05:47:50,415.415 INFO    ] time= 12/06/2026 05:47:50
[2026-06-12 05:47:50,438.438 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 05:47:50,444.444 INFO    ] Checking for existing commands in stream...
[2026-06-12 05:47:50,511.511 INFO    ] No existing commands found in stream
[2026-06-12 05:47:55,525.525 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 05:47:55,528.528 INFO    ] Waiting 1.38 seconds before fallback handling...
[2026-06-12 05:47:57,341.341 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 05:47:57,343.343 INFO    ] Checking for system updates...
[2026-06-12 05:47:57,368.368 INFO    ] 200
[2026-06-12 05:47:57,370.370 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:47:57,404.404 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 05:47:57,405.405 INFO    ] No update needed
[2026-06-12 05:47:57,407.407 INFO    ] Checking for camera pi updates...
[2026-06-12 05:47:57,426.426 INFO    ] 200
[2026-06-12 05:47:57,427.427 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:47:57,450.450 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 05:47:57,488.488 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 05:47:57,490.490 INFO    ] No camera update needed
[2026-06-12 05:47:57,491.491 INFO    ] Script finished. Safe exiting...
[2026-06-12 05:47:57,492.492 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 05:47:57,495.495 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 05:47:57,498.498 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 05:47:59,528.528 INFO    ] ================================================
[2026-06-12 05:47:59,537.537 INFO    ] Launching Daemon at Fri Jun 12 05:47:59 IST 2026
[2026-06-12 05:47:59,544.544 INFO    ] ================================================
[2026-06-12 05:47:59,855.855 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 05:47:59
[2026-06-12 05:48:00,200.200 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 05:48:00,338.338 INFO    ] Initializing speech engine...
[2026-06-12 05:48:00,351.351 INFO    ] 2026-06-12 05:48:00
[2026-06-12 05:48:00,560.560 INFO    ] 2026-06-12 05:48:00
[2026-06-12 05:48:00,590.590 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 05:48:00,773.773 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 05:48:00,783.783 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 05:48:00,915.915 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 05:48:00,917.917 INFO    ] time= 12/06/2026 05:48:00
[2026-06-12 05:48:00,918.918 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 05:48:00,919.919 INFO    ] Checking for existing commands in stream...
[2026-06-12 05:48:00,977.977 INFO    ] No existing commands found in stream
[2026-06-12 05:48:05,987.987 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 05:48:05,996.996 INFO    ] Waiting 0.40 seconds before fallback handling...
[2026-06-12 05:48:06,718.718 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 05:48:06,720.720 INFO    ] Checking for system updates...
[2026-06-12 05:48:06,743.743 INFO    ] 200
[2026-06-12 05:48:06,744.744 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:48:06,775.775 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 05:48:06,776.776 INFO    ] No update needed
[2026-06-12 05:48:06,777.777 INFO    ] Checking for camera pi updates...
[2026-06-12 05:48:06,800.800 INFO    ] 200
[2026-06-12 05:48:06,801.801 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:48:06,825.825 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 05:48:06,862.862 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 05:48:06,863.863 INFO    ] No camera update needed
[2026-06-12 05:48:06,865.865 INFO    ] Script finished. Safe exiting...
[2026-06-12 05:48:06,866.866 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 05:48:06,869.869 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 05:48:06,872.872 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 05:48:08,911.911 INFO    ] ================================================
[2026-06-12 05:48:08,926.926 INFO    ] Launching Daemon at Fri Jun 12 05:48:08 IST 2026
[2026-06-12 05:48:08,937.937 INFO    ] ================================================
[2026-06-12 05:48:09,303.303 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 05:48:09
[2026-06-12 05:48:09,615.615 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 05:48:09,758.758 INFO    ] Initializing speech engine...
[2026-06-12 05:48:09,763.763 INFO    ] 2026-06-12 05:48:09
[2026-06-12 05:48:09,966.966 INFO    ] 2026-06-12 05:48:09
[2026-06-12 05:48:09,995.995 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 05:48:10,179.179 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 05:48:10,189.189 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 05:48:10,319.319 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 05:48:10,378.378 INFO    ] time= 12/06/2026 05:48:10
[2026-06-12 05:48:10,411.411 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 05:48:10,417.417 INFO    ] Checking for existing commands in stream...
[2026-06-12 05:48:10,485.485 INFO    ] No existing commands found in stream
[2026-06-12 05:48:15,494.494 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 05:48:15,496.496 INFO    ] Waiting 3.86 seconds before fallback handling...
[2026-06-12 05:48:19,730.730 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 05:48:19,732.732 INFO    ] Checking for system updates...
[2026-06-12 05:48:19,752.752 INFO    ] 200
[2026-06-12 05:48:19,753.753 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:48:19,783.783 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 05:48:19,785.785 INFO    ] No update needed
[2026-06-12 05:48:19,786.786 INFO    ] Checking for camera pi updates...
[2026-06-12 05:48:19,808.808 INFO    ] 200
[2026-06-12 05:48:19,809.809 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:48:19,833.833 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 05:48:19,868.868 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 05:48:19,870.870 INFO    ] No camera update needed
[2026-06-12 05:48:19,871.871 INFO    ] Script finished. Safe exiting...
[2026-06-12 05:48:19,872.872 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 05:48:19,875.875 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 05:48:19,878.878 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 05:48:21,919.919 INFO    ] ================================================
[2026-06-12 05:48:21,934.934 INFO    ] Launching Daemon at Fri Jun 12 05:48:21 IST 2026
[2026-06-12 05:48:21,945.945 INFO    ] ================================================
[2026-06-12 05:48:22,292.292 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 05:48:22
[2026-06-12 05:48:22,627.627 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 05:48:22,779.779 INFO    ] Initializing speech engine...
[2026-06-12 05:48:22,785.785 INFO    ] 2026-06-12 05:48:22
[2026-06-12 05:48:22,995.995 INFO    ] 2026-06-12 05:48:22
[2026-06-12 05:48:23,024.024 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 05:48:23,212.212 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 05:48:23,221.221 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 05:48:23,355.355 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 05:48:23,424.424 INFO    ] time= 12/06/2026 05:48:23
[2026-06-12 05:48:23,449.449 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 05:48:23,455.455 INFO    ] Checking for existing commands in stream...
[2026-06-12 05:48:23,533.533 INFO    ] No existing commands found in stream
[2026-06-12 05:48:28,555.555 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 05:48:28,557.557 INFO    ] Waiting 3.20 seconds before fallback handling...
[2026-06-12 05:48:32,189.189 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 05:48:32,191.191 INFO    ] Checking for system updates...
[2026-06-12 05:48:32,218.218 INFO    ] 200
[2026-06-12 05:48:32,220.220 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:48:32,255.255 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 05:48:32,260.260 INFO    ] No update needed
[2026-06-12 05:48:32,262.262 INFO    ] Checking for camera pi updates...
[2026-06-12 05:48:32,288.288 INFO    ] 200
[2026-06-12 05:48:32,291.291 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:48:32,321.321 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 05:48:32,347.347 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 05:48:32,348.348 INFO    ] No camera update needed
[2026-06-12 05:48:32,350.350 INFO    ] Script finished. Safe exiting...
[2026-06-12 05:48:32,352.352 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 05:48:32,356.356 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 05:48:32,359.359 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 05:48:34,400.400 INFO    ] ================================================
[2026-06-12 05:48:34,415.415 INFO    ] Launching Daemon at Fri Jun 12 05:48:34 IST 2026
[2026-06-12 05:48:34,426.426 INFO    ] ================================================
[2026-06-12 05:48:34,780.780 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 05:48:34
[2026-06-12 05:48:35,115.115 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 05:48:35,266.266 INFO    ] Initializing speech engine...
[2026-06-12 05:48:35,272.272 INFO    ] 2026-06-12 05:48:35
[2026-06-12 05:48:35,481.481 INFO    ] 2026-06-12 05:48:35
[2026-06-12 05:48:35,511.511 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 05:48:35,701.701 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 05:48:35,714.714 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 05:48:35,924.924 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 05:48:35,931.931 INFO    ] time= 12/06/2026 05:48:35
[2026-06-12 05:48:35,936.936 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 05:48:35,938.938 INFO    ] Checking for existing commands in stream...
[2026-06-12 05:48:36,006.006 INFO    ] No existing commands found in stream
[2026-06-12 05:48:41,026.026 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 05:48:41,029.029 INFO    ] Waiting 0.45 seconds before fallback handling...
[2026-06-12 05:48:41,880.880 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 05:48:41,882.882 INFO    ] Checking for system updates...
[2026-06-12 05:48:41,903.903 INFO    ] 200
[2026-06-12 05:48:41,904.904 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:48:41,935.935 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 05:48:41,936.936 INFO    ] No update needed
[2026-06-12 05:48:41,938.938 INFO    ] Checking for camera pi updates...
[2026-06-12 05:48:41,957.957 INFO    ] 200
[2026-06-12 05:48:41,959.959 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:48:41,982.982 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 05:48:42,024.024 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 05:48:42,026.026 INFO    ] No camera update needed
[2026-06-12 05:48:42,027.027 INFO    ] Script finished. Safe exiting...
[2026-06-12 05:48:42,028.028 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 05:48:42,031.031 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 05:48:42,034.034 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 05:48:44,072.072 INFO    ] ================================================
[2026-06-12 05:48:44,087.087 INFO    ] Launching Daemon at Fri Jun 12 05:48:44 IST 2026
[2026-06-12 05:48:44,098.098 INFO    ] ================================================
[2026-06-12 05:48:44,451.451 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 05:48:44
[2026-06-12 05:48:44,763.763 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 05:48:44,899.899 INFO    ] Initializing speech engine...
[2026-06-12 05:48:44,910.910 INFO    ] 2026-06-12 05:48:44
[2026-06-12 05:48:45,116.116 INFO    ] 2026-06-12 05:48:45
[2026-06-12 05:48:45,144.144 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 05:48:45,275.275 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 05:48:45,328.328 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 05:48:45,463.463 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 05:48:45,518.518 INFO    ] time= 12/06/2026 05:48:45
[2026-06-12 05:48:45,541.541 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 05:48:45,557.557 INFO    ] Checking for existing commands in stream...
[2026-06-12 05:48:45,628.628 INFO    ] No existing commands found in stream
[2026-06-12 05:48:50,637.637 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 05:48:50,640.640 INFO    ] Waiting 3.92 seconds before fallback handling...
[2026-06-12 05:48:54,966.966 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 05:48:54,968.968 INFO    ] Checking for system updates...
[2026-06-12 05:48:54,989.989 INFO    ] 200
[2026-06-12 05:48:54,990.990 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:48:55,022.022 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 05:48:55,024.024 INFO    ] No update needed
[2026-06-12 05:48:55,025.025 INFO    ] Checking for camera pi updates...
[2026-06-12 05:48:55,044.044 INFO    ] 200
[2026-06-12 05:48:55,046.046 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:48:55,071.071 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 05:48:55,105.105 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 05:48:55,106.106 INFO    ] No camera update needed
[2026-06-12 05:48:55,108.108 INFO    ] Script finished. Safe exiting...
[2026-06-12 05:48:55,109.109 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 05:48:55,112.112 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 05:48:55,115.115 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 05:48:57,155.155 INFO    ] ================================================
[2026-06-12 05:48:57,171.171 INFO    ] Launching Daemon at Fri Jun 12 05:48:57 IST 2026
[2026-06-12 05:48:57,181.181 INFO    ] ================================================
[2026-06-12 05:48:57,522.522 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 05:48:57
[2026-06-12 05:48:57,839.839 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 05:48:57,983.983 INFO    ] Initializing speech engine...
[2026-06-12 05:48:57,989.989 INFO    ] 2026-06-12 05:48:57
[2026-06-12 05:48:58,194.194 INFO    ] 2026-06-12 05:48:58
[2026-06-12 05:48:58,223.223 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 05:48:58,415.415 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 05:48:58,430.430 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 05:48:58,613.613 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 05:48:58,635.635 INFO    ] time= 12/06/2026 05:48:58
[2026-06-12 05:48:58,641.641 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 05:48:58,643.643 INFO    ] Checking for existing commands in stream...
[2026-06-12 05:48:58,711.711 INFO    ] No existing commands found in stream
[2026-06-12 05:49:03,720.720 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 05:49:03,723.723 INFO    ] Waiting 0.42 seconds before fallback handling...
[2026-06-12 05:49:04,502.502 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 05:49:04,503.503 INFO    ] Checking for system updates...
[2026-06-12 05:49:04,524.524 INFO    ] 200
[2026-06-12 05:49:04,525.525 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:49:04,556.556 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 05:49:04,557.557 INFO    ] No update needed
[2026-06-12 05:49:04,558.558 INFO    ] Checking for camera pi updates...
[2026-06-12 05:49:04,578.578 INFO    ] 200
[2026-06-12 05:49:04,579.579 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:49:04,602.602 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 05:49:04,645.645 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 05:49:04,647.647 INFO    ] No camera update needed
[2026-06-12 05:49:04,648.648 INFO    ] Script finished. Safe exiting...
[2026-06-12 05:49:04,649.649 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 05:49:04,653.653 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 05:49:04,655.655 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 05:49:06,696.696 INFO    ] ================================================
[2026-06-12 05:49:06,711.711 INFO    ] Launching Daemon at Fri Jun 12 05:49:06 IST 2026
[2026-06-12 05:49:06,722.722 INFO    ] ================================================
[2026-06-12 05:49:07,054.054 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 05:49:07
[2026-06-12 05:49:07,365.365 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 05:49:07,500.500 INFO    ] Initializing speech engine...
[2026-06-12 05:49:07,503.503 INFO    ] 2026-06-12 05:49:07
[2026-06-12 05:49:07,733.733 INFO    ] 2026-06-12 05:49:07
[2026-06-12 05:49:07,764.764 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 05:49:07,961.961 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 05:49:07,965.965 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 05:49:08,138.138 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 05:49:08,186.186 INFO    ] time= 12/06/2026 05:49:08
[2026-06-12 05:49:08,209.209 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 05:49:08,216.216 INFO    ] Checking for existing commands in stream...
[2026-06-12 05:49:08,287.287 INFO    ] No existing commands found in stream
[2026-06-12 05:49:13,296.296 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 05:49:13,299.299 INFO    ] Waiting 1.87 seconds before fallback handling...
[2026-06-12 05:49:15,542.542 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 05:49:15,543.543 INFO    ] Checking for system updates...
[2026-06-12 05:49:15,563.563 INFO    ] 200
[2026-06-12 05:49:15,565.565 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:49:15,595.595 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 05:49:15,596.596 INFO    ] No update needed
[2026-06-12 05:49:15,597.597 INFO    ] Checking for camera pi updates...
[2026-06-12 05:49:15,616.616 INFO    ] 200
[2026-06-12 05:49:15,618.618 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:49:15,641.641 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 05:49:15,678.678 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 05:49:15,679.679 INFO    ] No camera update needed
[2026-06-12 05:49:15,681.681 INFO    ] Script finished. Safe exiting...
[2026-06-12 05:49:15,682.682 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 05:49:15,685.685 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 05:49:15,688.688 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 05:49:17,727.727 INFO    ] ================================================
[2026-06-12 05:49:17,742.742 INFO    ] Launching Daemon at Fri Jun 12 05:49:17 IST 2026
[2026-06-12 05:49:17,752.752 INFO    ] ================================================
[2026-06-12 05:49:18,112.112 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 05:49:18
[2026-06-12 05:49:18,431.431 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 05:49:18,566.566 INFO    ] Initializing speech engine...
[2026-06-12 05:49:18,570.570 INFO    ] 2026-06-12 05:49:18
[2026-06-12 05:49:18,788.788 INFO    ] 2026-06-12 05:49:18
[2026-06-12 05:49:18,812.812 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 05:49:18,969.969 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 05:49:19,033.033 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 05:49:19,188.188 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 05:49:19,247.247 INFO    ] time= 12/06/2026 05:49:19
[2026-06-12 05:49:19,271.271 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 05:49:19,289.289 INFO    ] Checking for existing commands in stream...
[2026-06-12 05:49:19,366.366 INFO    ] No existing commands found in stream
[2026-06-12 05:49:24,373.373 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 05:49:24,382.382 INFO    ] Waiting 0.05 seconds before fallback handling...
[2026-06-12 05:49:24,791.791 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 05:49:24,793.793 INFO    ] Checking for system updates...
[2026-06-12 05:49:24,814.814 INFO    ] 200
[2026-06-12 05:49:24,815.815 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:49:24,848.848 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 05:49:24,849.849 INFO    ] No update needed
[2026-06-12 05:49:24,850.850 INFO    ] Checking for camera pi updates...
[2026-06-12 05:49:24,872.872 INFO    ] 200
[2026-06-12 05:49:24,874.874 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:49:24,898.898 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 05:49:25,037.037 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 05:49:25,038.038 INFO    ] No camera update needed
[2026-06-12 05:49:25,040.040 INFO    ] Script finished. Safe exiting...
[2026-06-12 05:49:25,041.041 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 05:49:25,044.044 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 05:49:25,047.047 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 05:49:27,077.077 INFO    ] ================================================
[2026-06-12 05:49:27,086.086 INFO    ] Launching Daemon at Fri Jun 12 05:49:27 IST 2026
[2026-06-12 05:49:27,092.092 INFO    ] ================================================
[2026-06-12 05:49:27,424.424 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 05:49:27
[2026-06-12 05:49:27,742.742 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 05:49:27,877.877 INFO    ] Initializing speech engine...
[2026-06-12 05:49:27,882.882 INFO    ] 2026-06-12 05:49:27
[2026-06-12 05:49:28,114.114 INFO    ] 2026-06-12 05:49:28
[2026-06-12 05:49:28,144.144 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 05:49:28,345.345 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 05:49:28,348.348 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 05:49:28,489.489 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 05:49:28,546.546 INFO    ] time= 12/06/2026 05:49:28
[2026-06-12 05:49:28,580.580 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 05:49:28,598.598 INFO    ] Checking for existing commands in stream...
[2026-06-12 05:49:28,675.675 INFO    ] No existing commands found in stream
[2026-06-12 05:49:33,685.685 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 05:49:33,688.688 INFO    ] Waiting 0.39 seconds before fallback handling...
[2026-06-12 05:49:34,454.454 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 05:49:34,455.455 INFO    ] Checking for system updates...
[2026-06-12 05:49:34,476.476 INFO    ] 200
[2026-06-12 05:49:34,477.477 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:49:34,510.510 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 05:49:34,511.511 INFO    ] No update needed
[2026-06-12 05:49:34,512.512 INFO    ] Checking for camera pi updates...
[2026-06-12 05:49:34,532.532 INFO    ] 200
[2026-06-12 05:49:34,533.533 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:49:34,559.559 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 05:49:34,591.591 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 05:49:34,593.593 INFO    ] No camera update needed
[2026-06-12 05:49:34,594.594 INFO    ] Script finished. Safe exiting...
[2026-06-12 05:49:34,595.595 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 05:49:34,598.598 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 05:49:34,601.601 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 05:49:36,642.642 INFO    ] ================================================
[2026-06-12 05:49:36,657.657 INFO    ] Launching Daemon at Fri Jun 12 05:49:36 IST 2026
[2026-06-12 05:49:36,667.667 INFO    ] ================================================
[2026-06-12 05:49:37,024.024 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 05:49:37
[2026-06-12 05:49:37,339.339 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 05:49:37,470.470 INFO    ] Initializing speech engine...
[2026-06-12 05:49:37,474.474 INFO    ] 2026-06-12 05:49:37
[2026-06-12 05:49:37,694.694 INFO    ] 2026-06-12 05:49:37
[2026-06-12 05:49:37,724.724 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 05:49:37,890.890 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 05:49:37,915.915 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 05:49:38,120.120 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 05:49:38,145.145 INFO    ] time= 12/06/2026 05:49:38
[2026-06-12 05:49:38,151.151 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 05:49:38,153.153 INFO    ] Checking for existing commands in stream...
[2026-06-12 05:49:38,221.221 INFO    ] No existing commands found in stream
[2026-06-12 05:49:43,235.235 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 05:49:43,238.238 INFO    ] Waiting 1.58 seconds before fallback handling...
[2026-06-12 05:49:45,225.225 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 05:49:45,227.227 INFO    ] Checking for system updates...
[2026-06-12 05:49:45,248.248 INFO    ] 200
[2026-06-12 05:49:45,250.250 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:49:45,280.280 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 05:49:45,282.282 INFO    ] No update needed
[2026-06-12 05:49:45,283.283 INFO    ] Checking for camera pi updates...
[2026-06-12 05:49:45,303.303 INFO    ] 200
[2026-06-12 05:49:45,304.304 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:49:45,330.330 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 05:49:45,369.369 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 05:49:45,370.370 INFO    ] No camera update needed
[2026-06-12 05:49:45,372.372 INFO    ] Script finished. Safe exiting...
[2026-06-12 05:49:45,373.373 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 05:49:45,376.376 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 05:49:45,379.379 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 05:49:47,420.420 INFO    ] ================================================
[2026-06-12 05:49:47,435.435 INFO    ] Launching Daemon at Fri Jun 12 05:49:47 IST 2026
[2026-06-12 05:49:47,446.446 INFO    ] ================================================
[2026-06-12 05:49:47,787.787 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 05:49:47
[2026-06-12 05:49:48,104.104 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 05:49:48,243.243 INFO    ] Initializing speech engine...
[2026-06-12 05:49:48,253.253 INFO    ] 2026-06-12 05:49:48
[2026-06-12 05:49:48,458.458 INFO    ] 2026-06-12 05:49:48
[2026-06-12 05:49:48,486.486 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 05:49:48,672.672 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 05:49:48,681.681 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 05:49:48,827.827 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 05:49:48,883.883 INFO    ] time= 12/06/2026 05:49:48
[2026-06-12 05:49:48,904.904 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 05:49:48,910.910 INFO    ] Checking for existing commands in stream...
[2026-06-12 05:49:48,977.977 INFO    ] No existing commands found in stream
[2026-06-12 05:49:53,986.986 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 05:49:53,989.989 INFO    ] Waiting 2.90 seconds before fallback handling...
[2026-06-12 05:49:57,286.286 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 05:49:57,288.288 INFO    ] Checking for system updates...
[2026-06-12 05:49:57,309.309 INFO    ] 200
[2026-06-12 05:49:57,310.310 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:49:57,343.343 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 05:49:57,344.344 INFO    ] No update needed
[2026-06-12 05:49:57,346.346 INFO    ] Checking for camera pi updates...
[2026-06-12 05:49:57,366.366 INFO    ] 200
[2026-06-12 05:49:57,368.368 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:49:57,391.391 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 05:49:57,430.430 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 05:49:57,432.432 INFO    ] No camera update needed
[2026-06-12 05:49:57,433.433 INFO    ] Script finished. Safe exiting...
[2026-06-12 05:49:57,434.434 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 05:49:57,437.437 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 05:49:57,440.440 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 05:49:59,480.480 INFO    ] ================================================
[2026-06-12 05:49:59,496.496 INFO    ] Launching Daemon at Fri Jun 12 05:49:59 IST 2026
[2026-06-12 05:49:59,508.508 INFO    ] ================================================
[2026-06-12 05:49:59,837.837 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 05:49:59
[2026-06-12 05:50:00,150.150 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 05:50:00,281.281 INFO    ] Initializing speech engine...
[2026-06-12 05:50:00,285.285 INFO    ] 2026-06-12 05:50:00
[2026-06-12 05:50:00,503.503 INFO    ] 2026-06-12 05:50:00
[2026-06-12 05:50:00,534.534 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 05:50:00,721.721 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 05:50:00,730.730 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 05:50:00,878.878 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 05:50:00,934.934 INFO    ] time= 12/06/2026 05:50:00
[2026-06-12 05:50:00,955.955 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 05:50:00,961.961 INFO    ] Checking for existing commands in stream...
[2026-06-12 05:50:01,029.029 INFO    ] No existing commands found in stream
[2026-06-12 05:50:06,038.038 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 05:50:06,041.041 INFO    ] Waiting 3.33 seconds before fallback handling...
[2026-06-12 05:50:09,778.778 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 05:50:09,780.780 INFO    ] Checking for system updates...
[2026-06-12 05:50:09,801.801 INFO    ] 200
[2026-06-12 05:50:09,802.802 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:50:09,832.832 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 05:50:09,833.833 INFO    ] No update needed
[2026-06-12 05:50:09,835.835 INFO    ] Checking for camera pi updates...
[2026-06-12 05:50:09,854.854 INFO    ] 200
[2026-06-12 05:50:09,855.855 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:50:09,878.878 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 05:50:09,922.922 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 05:50:09,924.924 INFO    ] No camera update needed
[2026-06-12 05:50:09,925.925 INFO    ] Script finished. Safe exiting...
[2026-06-12 05:50:09,926.926 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 05:50:09,929.929 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 05:50:09,932.932 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 05:50:11,973.973 INFO    ] ================================================
[2026-06-12 05:50:11,989.989 INFO    ] Launching Daemon at Fri Jun 12 05:50:11 IST 2026
[2026-06-12 05:50:12,000.000 INFO    ] ================================================
[2026-06-12 05:50:12,360.360 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 05:50:12
[2026-06-12 05:50:12,677.677 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 05:50:12,822.822 INFO    ] Initializing speech engine...
[2026-06-12 05:50:12,827.827 INFO    ] 2026-06-12 05:50:12
[2026-06-12 05:50:13,033.033 INFO    ] 2026-06-12 05:50:13
[2026-06-12 05:50:13,062.062 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 05:50:13,250.250 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 05:50:13,258.258 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 05:50:13,451.451 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 05:50:13,480.480 INFO    ] time= 12/06/2026 05:50:13
[2026-06-12 05:50:13,486.486 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 05:50:13,488.488 INFO    ] Checking for existing commands in stream...
[2026-06-12 05:50:13,556.556 INFO    ] No existing commands found in stream
[2026-06-12 05:50:18,565.565 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 05:50:18,568.568 INFO    ] Waiting 2.74 seconds before fallback handling...
[2026-06-12 05:50:21,711.711 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 05:50:21,712.712 INFO    ] Checking for system updates...
[2026-06-12 05:50:21,733.733 INFO    ] 200
[2026-06-12 05:50:21,735.735 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:50:21,765.765 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 05:50:21,766.766 INFO    ] No update needed
[2026-06-12 05:50:21,768.768 INFO    ] Checking for camera pi updates...
[2026-06-12 05:50:21,787.787 INFO    ] 200
[2026-06-12 05:50:21,789.789 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:50:21,814.814 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 05:50:21,848.848 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 05:50:21,850.850 INFO    ] No camera update needed
[2026-06-12 05:50:21,852.852 INFO    ] Script finished. Safe exiting...
[2026-06-12 05:50:21,853.853 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 05:50:21,856.856 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 05:50:21,859.859 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 05:50:23,900.900 INFO    ] ================================================
[2026-06-12 05:50:23,916.916 INFO    ] Launching Daemon at Fri Jun 12 05:50:23 IST 2026
[2026-06-12 05:50:23,928.928 INFO    ] ================================================
[2026-06-12 05:50:24,301.301 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 05:50:24
[2026-06-12 05:50:24,617.617 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 05:50:24,762.762 INFO    ] Initializing speech engine...
[2026-06-12 05:50:24,767.767 INFO    ] 2026-06-12 05:50:24
[2026-06-12 05:50:24,972.972 INFO    ] 2026-06-12 05:50:24
[2026-06-12 05:50:25,000.000 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 05:50:25,122.122 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 05:50:25,134.134 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 05:50:25,298.298 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 05:50:25,337.337 INFO    ] time= 12/06/2026 05:50:25
[2026-06-12 05:50:25,383.383 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 05:50:25,429.429 INFO    ] Checking for existing commands in stream...
[2026-06-12 05:50:25,548.548 INFO    ] No existing commands found in stream
[2026-06-12 05:50:30,557.557 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 05:50:30,560.560 INFO    ] Waiting 2.12 seconds before fallback handling...
[2026-06-12 05:50:33,009.009 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 05:50:33,011.011 INFO    ] Checking for system updates...
[2026-06-12 05:50:33,032.032 INFO    ] 200
[2026-06-12 05:50:33,033.033 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:50:33,073.073 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 05:50:33,076.076 INFO    ] No update needed
[2026-06-12 05:50:33,078.078 INFO    ] Checking for camera pi updates...
[2026-06-12 05:50:33,112.112 INFO    ] 200
[2026-06-12 05:50:33,114.114 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:50:33,155.155 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 05:50:33,191.191 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 05:50:33,192.192 INFO    ] No camera update needed
[2026-06-12 05:50:33,194.194 INFO    ] Script finished. Safe exiting...
[2026-06-12 05:50:33,195.195 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 05:50:33,198.198 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 05:50:33,201.201 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 05:50:35,241.241 INFO    ] ================================================
[2026-06-12 05:50:35,256.256 INFO    ] Launching Daemon at Fri Jun 12 05:50:35 IST 2026
[2026-06-12 05:50:35,268.268 INFO    ] ================================================
[2026-06-12 05:50:35,630.630 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 05:50:35
[2026-06-12 05:50:35,940.940 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 05:50:36,071.071 INFO    ] Initializing speech engine...
[2026-06-12 05:50:36,074.074 INFO    ] 2026-06-12 05:50:36
[2026-06-12 05:50:36,291.291 INFO    ] 2026-06-12 05:50:36
[2026-06-12 05:50:36,319.319 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 05:50:36,501.501 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 05:50:36,504.504 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 05:50:36,696.696 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 05:50:36,728.728 INFO    ] time= 12/06/2026 05:50:36
[2026-06-12 05:50:36,734.734 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 05:50:36,736.736 INFO    ] Checking for existing commands in stream...
[2026-06-12 05:50:36,802.802 INFO    ] No existing commands found in stream
[2026-06-12 05:50:41,811.811 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 05:50:41,814.814 INFO    ] Waiting 0.23 seconds before fallback handling...
[2026-06-12 05:50:42,421.421 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 05:50:42,423.423 INFO    ] Checking for system updates...
[2026-06-12 05:50:42,443.443 INFO    ] 200
[2026-06-12 05:50:42,445.445 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:50:42,475.475 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 05:50:42,476.476 INFO    ] No update needed
[2026-06-12 05:50:42,477.477 INFO    ] Checking for camera pi updates...
[2026-06-12 05:50:42,497.497 INFO    ] 200
[2026-06-12 05:50:42,498.498 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:50:42,521.521 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 05:50:42,558.558 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 05:50:42,560.560 INFO    ] No camera update needed
[2026-06-12 05:50:42,561.561 INFO    ] Script finished. Safe exiting...
[2026-06-12 05:50:42,562.562 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 05:50:42,565.565 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 05:50:42,568.568 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 05:50:44,607.607 INFO    ] ================================================
[2026-06-12 05:50:44,623.623 INFO    ] Launching Daemon at Fri Jun 12 05:50:44 IST 2026
[2026-06-12 05:50:44,634.634 INFO    ] ================================================
[2026-06-12 05:50:45,005.005 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 05:50:45
[2026-06-12 05:50:45,317.317 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 05:50:45,455.455 INFO    ] Initializing speech engine...
[2026-06-12 05:50:45,466.466 INFO    ] 2026-06-12 05:50:45
[2026-06-12 05:50:45,672.672 INFO    ] 2026-06-12 05:50:45
[2026-06-12 05:50:45,702.702 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 05:50:45,831.831 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 05:50:45,889.889 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 05:50:46,030.030 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 05:50:46,094.094 INFO    ] time= 12/06/2026 05:50:46
[2026-06-12 05:50:46,123.123 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 05:50:46,129.129 INFO    ] Checking for existing commands in stream...
[2026-06-12 05:50:46,197.197 INFO    ] No existing commands found in stream
[2026-06-12 05:50:51,206.206 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 05:50:51,209.209 INFO    ] Waiting 1.05 seconds before fallback handling...
[2026-06-12 05:50:52,641.641 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 05:50:52,642.642 INFO    ] Checking for system updates...
[2026-06-12 05:50:52,663.663 INFO    ] 200
[2026-06-12 05:50:52,664.664 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:50:52,694.694 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 05:50:52,695.695 INFO    ] No update needed
[2026-06-12 05:50:52,697.697 INFO    ] Checking for camera pi updates...
[2026-06-12 05:50:52,716.716 INFO    ] 200
[2026-06-12 05:50:52,718.718 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:50:52,741.741 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 05:50:52,785.785 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 05:50:52,786.786 INFO    ] No camera update needed
[2026-06-12 05:50:52,787.787 INFO    ] Script finished. Safe exiting...
[2026-06-12 05:50:52,789.789 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 05:50:52,792.792 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 05:50:52,794.794 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 05:50:54,832.832 INFO    ] ================================================
[2026-06-12 05:50:54,848.848 INFO    ] Launching Daemon at Fri Jun 12 05:50:54 IST 2026
[2026-06-12 05:50:54,860.860 INFO    ] ================================================
[2026-06-12 05:50:55,186.186 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 05:50:55
[2026-06-12 05:50:55,501.501 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 05:50:55,632.632 INFO    ] Initializing speech engine...
[2026-06-12 05:50:55,637.637 INFO    ] 2026-06-12 05:50:55
[2026-06-12 05:50:55,855.855 INFO    ] 2026-06-12 05:50:55
[2026-06-12 05:50:55,885.885 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 05:50:56,074.074 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 05:50:56,084.084 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 05:50:56,272.272 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 05:50:56,308.308 INFO    ] time= 12/06/2026 05:50:56
[2026-06-12 05:50:56,309.309 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 05:50:56,315.315 INFO    ] Checking for existing commands in stream...
[2026-06-12 05:50:56,382.382 INFO    ] No existing commands found in stream
[2026-06-12 05:51:01,392.392 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 05:51:01,395.395 INFO    ] Waiting 3.31 seconds before fallback handling...
[2026-06-12 05:51:05,128.128 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 05:51:05,130.130 INFO    ] Checking for system updates...
[2026-06-12 05:51:05,151.151 INFO    ] 200
[2026-06-12 05:51:05,153.153 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:51:05,184.184 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 05:51:05,185.185 INFO    ] No update needed
[2026-06-12 05:51:05,186.186 INFO    ] Checking for camera pi updates...
[2026-06-12 05:51:05,206.206 INFO    ] 200
[2026-06-12 05:51:05,208.208 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:51:05,231.231 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 05:51:05,270.270 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 05:51:05,272.272 INFO    ] No camera update needed
[2026-06-12 05:51:05,273.273 INFO    ] Script finished. Safe exiting...
[2026-06-12 05:51:05,274.274 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 05:51:05,278.278 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 05:51:05,281.281 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 05:51:07,322.322 INFO    ] ================================================
[2026-06-12 05:51:07,338.338 INFO    ] Launching Daemon at Fri Jun 12 05:51:07 IST 2026
[2026-06-12 05:51:07,350.350 INFO    ] ================================================
[2026-06-12 05:51:07,718.718 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 05:51:07
[2026-06-12 05:51:08,033.033 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 05:51:08,173.173 INFO    ] Initializing speech engine...
[2026-06-12 05:51:08,183.183 INFO    ] 2026-06-12 05:51:08
[2026-06-12 05:51:08,388.388 INFO    ] 2026-06-12 05:51:08
[2026-06-12 05:51:08,417.417 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 05:51:08,604.604 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 05:51:08,607.607 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 05:51:08,745.745 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 05:51:08,804.804 INFO    ] time= 12/06/2026 05:51:08
[2026-06-12 05:51:08,838.838 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 05:51:08,844.844 INFO    ] Checking for existing commands in stream...
[2026-06-12 05:51:08,912.912 INFO    ] No existing commands found in stream
[2026-06-12 05:51:13,921.921 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 05:51:13,924.924 INFO    ] Waiting 2.33 seconds before fallback handling...
[2026-06-12 05:51:16,641.641 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 05:51:16,642.642 INFO    ] Checking for system updates...
[2026-06-12 05:51:16,662.662 INFO    ] 200
[2026-06-12 05:51:16,664.664 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:51:16,693.693 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 05:51:16,695.695 INFO    ] No update needed
[2026-06-12 05:51:16,696.696 INFO    ] Checking for camera pi updates...
[2026-06-12 05:51:16,718.718 INFO    ] 200
[2026-06-12 05:51:16,719.719 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:51:16,742.742 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 05:51:16,777.777 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 05:51:16,778.778 INFO    ] No camera update needed
[2026-06-12 05:51:16,780.780 INFO    ] Script finished. Safe exiting...
[2026-06-12 05:51:16,781.781 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 05:51:16,784.784 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 05:51:16,787.787 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 05:51:18,824.824 INFO    ] ================================================
[2026-06-12 05:51:18,841.841 INFO    ] Launching Daemon at Fri Jun 12 05:51:18 IST 2026
[2026-06-12 05:51:18,852.852 INFO    ] ================================================
[2026-06-12 05:51:19,226.226 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 05:51:19
[2026-06-12 05:51:19,545.545 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 05:51:19,683.683 INFO    ] Initializing speech engine...
[2026-06-12 05:51:19,686.686 INFO    ] 2026-06-12 05:51:19
[2026-06-12 05:51:19,917.917 INFO    ] 2026-06-12 05:51:19
[2026-06-12 05:51:19,948.948 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 05:51:20,148.148 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 05:51:20,152.152 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 05:51:20,297.297 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 05:51:20,344.344 INFO    ] time= 12/06/2026 05:51:20
[2026-06-12 05:51:20,399.399 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 05:51:20,401.401 INFO    ] Checking for existing commands in stream...
[2026-06-12 05:51:20,505.505 INFO    ] No existing commands found in stream
[2026-06-12 05:51:25,514.514 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 05:51:25,517.517 INFO    ] Waiting 2.04 seconds before fallback handling...
[2026-06-12 05:51:29,188.188 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 05:51:29,192.192 INFO    ] Checking for system updates...
[2026-06-12 05:51:29,229.229 INFO    ] 200
[2026-06-12 05:51:29,232.232 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:51:29,293.293 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 05:51:29,296.296 INFO    ] No update needed
[2026-06-12 05:51:29,299.299 INFO    ] Checking for camera pi updates...
[2026-06-12 05:51:29,321.321 INFO    ] 200
[2026-06-12 05:51:29,323.323 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:51:29,346.346 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 05:51:29,509.509 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 05:51:29,511.511 INFO    ] No camera update needed
[2026-06-12 05:51:29,512.512 INFO    ] Script finished. Safe exiting...
[2026-06-12 05:51:29,514.514 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 05:51:29,517.517 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 05:51:29,520.520 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 05:51:31,559.559 INFO    ] ================================================
[2026-06-12 05:51:31,575.575 INFO    ] Launching Daemon at Fri Jun 12 05:51:31 IST 2026
[2026-06-12 05:51:31,587.587 INFO    ] ================================================
[2026-06-12 05:51:31,926.926 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 05:51:31
[2026-06-12 05:51:32,264.264 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 05:51:32,418.418 INFO    ] Initializing speech engine...
[2026-06-12 05:51:32,427.427 INFO    ] 2026-06-12 05:51:32
[2026-06-12 05:51:32,628.628 INFO    ] 2026-06-12 05:51:32
[2026-06-12 05:51:32,681.681 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 05:51:32,812.812 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 05:51:32,847.847 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 05:51:33,004.004 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 05:51:33,041.041 INFO    ] time= 12/06/2026 05:51:33
[2026-06-12 05:51:33,068.068 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 05:51:33,136.136 INFO    ] Checking for existing commands in stream...
[2026-06-12 05:51:33,244.244 INFO    ] No existing commands found in stream
[2026-06-12 05:51:38,255.255 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 05:51:38,258.258 INFO    ] Waiting 2.93 seconds before fallback handling...
[2026-06-12 05:51:41,585.585 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 05:51:41,586.586 INFO    ] Checking for system updates...
[2026-06-12 05:51:41,607.607 INFO    ] 200
[2026-06-12 05:51:41,608.608 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:51:41,638.638 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 05:51:41,640.640 INFO    ] No update needed
[2026-06-12 05:51:41,641.641 INFO    ] Checking for camera pi updates...
[2026-06-12 05:51:41,661.661 INFO    ] 200
[2026-06-12 05:51:41,662.662 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:51:41,688.688 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 05:51:41,729.729 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 05:51:41,731.731 INFO    ] No camera update needed
[2026-06-12 05:51:41,732.732 INFO    ] Script finished. Safe exiting...
[2026-06-12 05:51:41,733.733 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 05:51:41,736.736 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 05:51:41,739.739 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 05:51:43,778.778 INFO    ] ================================================
[2026-06-12 05:51:43,795.795 INFO    ] Launching Daemon at Fri Jun 12 05:51:43 IST 2026
[2026-06-12 05:51:43,807.807 INFO    ] ================================================
[2026-06-12 05:51:44,167.167 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 05:51:44
[2026-06-12 05:51:44,505.505 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 05:51:44,656.656 INFO    ] Initializing speech engine...
[2026-06-12 05:51:44,662.662 INFO    ] 2026-06-12 05:51:44
[2026-06-12 05:51:44,872.872 INFO    ] 2026-06-12 05:51:44
[2026-06-12 05:51:44,901.901 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 05:51:45,088.088 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 05:51:45,098.098 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 05:51:45,249.249 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 05:51:45,298.298 INFO    ] time= 12/06/2026 05:51:45
[2026-06-12 05:51:45,326.326 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 05:51:45,328.328 INFO    ] Checking for existing commands in stream...
[2026-06-12 05:51:45,396.396 INFO    ] No existing commands found in stream
[2026-06-12 05:51:50,410.410 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 05:51:50,414.414 INFO    ] Waiting 1.38 seconds before fallback handling...
[2026-06-12 05:51:52,185.185 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 05:51:52,187.187 INFO    ] Checking for system updates...
[2026-06-12 05:51:52,209.209 INFO    ] 200
[2026-06-12 05:51:52,211.211 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:51:52,244.244 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 05:51:52,245.245 INFO    ] No update needed
[2026-06-12 05:51:52,247.247 INFO    ] Checking for camera pi updates...
[2026-06-12 05:51:52,266.266 INFO    ] 200
[2026-06-12 05:51:52,268.268 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:51:52,291.291 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 05:51:52,329.329 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 05:51:52,330.330 INFO    ] No camera update needed
[2026-06-12 05:51:52,332.332 INFO    ] Script finished. Safe exiting...
[2026-06-12 05:51:52,333.333 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 05:51:52,336.336 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 05:51:52,339.339 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 05:51:54,378.378 INFO    ] ================================================
[2026-06-12 05:51:54,393.393 INFO    ] Launching Daemon at Fri Jun 12 05:51:54 IST 2026
[2026-06-12 05:51:54,405.405 INFO    ] ================================================
[2026-06-12 05:51:54,794.794 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 05:51:54
[2026-06-12 05:51:55,134.134 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 05:51:55,280.280 INFO    ] Initializing speech engine...
[2026-06-12 05:51:55,291.291 INFO    ] 2026-06-12 05:51:55
[2026-06-12 05:51:55,503.503 INFO    ] 2026-06-12 05:51:55
[2026-06-12 05:51:55,532.532 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 05:51:55,719.719 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 05:51:55,729.729 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 05:51:55,866.866 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 05:51:55,931.931 INFO    ] time= 12/06/2026 05:51:55
[2026-06-12 05:51:55,954.954 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 05:51:55,960.960 INFO    ] Checking for existing commands in stream...
[2026-06-12 05:51:56,028.028 INFO    ] No existing commands found in stream
[2026-06-12 05:52:01,053.053 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 05:52:01,056.056 INFO    ] Waiting 0.09 seconds before fallback handling...
[2026-06-12 05:52:01,535.535 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 05:52:01,537.537 INFO    ] Checking for system updates...
[2026-06-12 05:52:01,563.563 INFO    ] 200
[2026-06-12 05:52:01,564.564 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:52:01,602.602 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 05:52:01,604.604 INFO    ] No update needed
[2026-06-12 05:52:01,606.606 INFO    ] Checking for camera pi updates...
[2026-06-12 05:52:01,631.631 INFO    ] 200
[2026-06-12 05:52:01,633.633 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:52:01,675.675 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 05:52:01,703.703 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 05:52:01,705.705 INFO    ] No camera update needed
[2026-06-12 05:52:01,707.707 INFO    ] Script finished. Safe exiting...
[2026-06-12 05:52:01,710.710 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 05:52:01,714.714 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 05:52:01,718.718 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 05:52:03,758.758 INFO    ] ================================================
[2026-06-12 05:52:03,774.774 INFO    ] Launching Daemon at Fri Jun 12 05:52:03 IST 2026
[2026-06-12 05:52:03,785.785 INFO    ] ================================================
[2026-06-12 05:52:04,176.176 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 05:52:04
[2026-06-12 05:52:04,493.493 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 05:52:04,629.629 INFO    ] Initializing speech engine...
[2026-06-12 05:52:04,638.638 INFO    ] 2026-06-12 05:52:04
[2026-06-12 05:52:04,865.865 INFO    ] 2026-06-12 05:52:04
[2026-06-12 05:52:04,896.896 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 05:52:05,030.030 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 05:52:05,093.093 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 05:52:05,240.240 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 05:52:05,287.287 INFO    ] time= 12/06/2026 05:52:05
[2026-06-12 05:52:05,359.359 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 05:52:05,361.361 INFO    ] Checking for existing commands in stream...
[2026-06-12 05:52:05,465.465 INFO    ] No existing commands found in stream
[2026-06-12 05:52:10,474.474 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 05:52:10,477.477 INFO    ] Waiting 0.41 seconds before fallback handling...
[2026-06-12 05:52:11,274.274 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 05:52:11,276.276 INFO    ] Checking for system updates...
[2026-06-12 05:52:11,296.296 INFO    ] 200
[2026-06-12 05:52:11,298.298 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:52:11,328.328 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 05:52:11,329.329 INFO    ] No update needed
[2026-06-12 05:52:11,331.331 INFO    ] Checking for camera pi updates...
[2026-06-12 05:52:11,350.350 INFO    ] 200
[2026-06-12 05:52:11,351.351 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:52:11,375.375 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 05:52:11,408.408 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 05:52:11,409.409 INFO    ] No camera update needed
[2026-06-12 05:52:11,411.411 INFO    ] Script finished. Safe exiting...
[2026-06-12 05:52:11,412.412 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 05:52:11,415.415 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 05:52:11,418.418 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 05:52:13,457.457 INFO    ] ================================================
[2026-06-12 05:52:13,472.472 INFO    ] Launching Daemon at Fri Jun 12 05:52:13 IST 2026
[2026-06-12 05:52:13,483.483 INFO    ] ================================================
[2026-06-12 05:52:13,834.834 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 05:52:13
[2026-06-12 05:52:14,146.146 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 05:52:14,284.284 INFO    ] Initializing speech engine...
[2026-06-12 05:52:14,293.293 INFO    ] 2026-06-12 05:52:14
[2026-06-12 05:52:14,498.498 INFO    ] 2026-06-12 05:52:14
[2026-06-12 05:52:14,526.526 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 05:52:14,664.664 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 05:52:14,712.712 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 05:52:14,864.864 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 05:52:14,917.917 INFO    ] time= 12/06/2026 05:52:14
[2026-06-12 05:52:14,939.939 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 05:52:14,945.945 INFO    ] Checking for existing commands in stream...
[2026-06-12 05:52:15,010.010 INFO    ] No existing commands found in stream
[2026-06-12 05:52:20,021.021 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 05:52:20,023.023 INFO    ] Waiting 1.07 seconds before fallback handling...
[2026-06-12 05:52:21,522.522 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 05:52:21,524.524 INFO    ] Checking for system updates...
[2026-06-12 05:52:21,545.545 INFO    ] 200
[2026-06-12 05:52:21,546.546 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:52:21,577.577 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 05:52:21,578.578 INFO    ] No update needed
[2026-06-12 05:52:21,580.580 INFO    ] Checking for camera pi updates...
[2026-06-12 05:52:21,600.600 INFO    ] 200
[2026-06-12 05:52:21,601.601 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:52:21,625.625 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 05:52:21,661.661 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 05:52:21,662.662 INFO    ] No camera update needed
[2026-06-12 05:52:21,664.664 INFO    ] Script finished. Safe exiting...
[2026-06-12 05:52:21,665.665 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 05:52:21,669.669 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 05:52:21,672.672 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 05:52:23,711.711 INFO    ] ================================================
[2026-06-12 05:52:23,726.726 INFO    ] Launching Daemon at Fri Jun 12 05:52:23 IST 2026
[2026-06-12 05:52:23,737.737 INFO    ] ================================================
[2026-06-12 05:52:24,068.068 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 05:52:24
[2026-06-12 05:52:24,383.383 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 05:52:24,519.519 INFO    ] Initializing speech engine...
[2026-06-12 05:52:24,528.528 INFO    ] 2026-06-12 05:52:24
[2026-06-12 05:52:24,732.732 INFO    ] 2026-06-12 05:52:24
[2026-06-12 05:52:24,760.760 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 05:52:24,942.942 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 05:52:24,951.951 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 05:52:25,135.135 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 05:52:25,163.163 INFO    ] time= 12/06/2026 05:52:25
[2026-06-12 05:52:25,174.174 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 05:52:25,180.180 INFO    ] Checking for existing commands in stream...
[2026-06-12 05:52:25,247.247 INFO    ] No existing commands found in stream
[2026-06-12 05:52:30,256.256 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 05:52:30,258.258 INFO    ] Waiting 0.89 seconds before fallback handling...
[2026-06-12 05:52:31,547.547 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 05:52:31,549.549 INFO    ] Checking for system updates...
[2026-06-12 05:52:31,572.572 INFO    ] 200
[2026-06-12 05:52:31,574.574 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:52:31,610.610 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 05:52:31,612.612 INFO    ] No update needed
[2026-06-12 05:52:31,614.614 INFO    ] Checking for camera pi updates...
[2026-06-12 05:52:31,644.644 INFO    ] 200
[2026-06-12 05:52:31,646.646 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:52:31,672.672 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 05:52:31,709.709 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 05:52:31,711.711 INFO    ] No camera update needed
[2026-06-12 05:52:31,712.712 INFO    ] Script finished. Safe exiting...
[2026-06-12 05:52:31,714.714 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 05:52:31,717.717 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 05:52:31,721.721 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 05:52:33,752.752 INFO    ] ================================================
[2026-06-12 05:52:33,767.767 INFO    ] Launching Daemon at Fri Jun 12 05:52:33 IST 2026
[2026-06-12 05:52:33,778.778 INFO    ] ================================================
[2026-06-12 05:52:34,127.127 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 05:52:34
[2026-06-12 05:52:34,437.437 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 05:52:34,579.579 INFO    ] Initializing speech engine...
[2026-06-12 05:52:34,584.584 INFO    ] 2026-06-12 05:52:34
[2026-06-12 05:52:34,787.787 INFO    ] 2026-06-12 05:52:34
[2026-06-12 05:52:34,816.816 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 05:52:34,998.998 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 05:52:35,008.008 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 05:52:35,196.196 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 05:52:35,227.227 INFO    ] time= 12/06/2026 05:52:35
[2026-06-12 05:52:35,234.234 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 05:52:35,236.236 INFO    ] Checking for existing commands in stream...
[2026-06-12 05:52:35,302.302 INFO    ] No existing commands found in stream
[2026-06-12 05:52:40,311.311 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 05:52:40,314.314 INFO    ] Waiting 1.24 seconds before fallback handling...
[2026-06-12 05:52:41,933.933 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 05:52:41,934.934 INFO    ] Checking for system updates...
[2026-06-12 05:52:41,955.955 INFO    ] 200
[2026-06-12 05:52:41,956.956 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:52:41,986.986 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 05:52:41,987.987 INFO    ] No update needed
[2026-06-12 05:52:41,988.988 INFO    ] Checking for camera pi updates...
[2026-06-12 05:52:42,008.008 INFO    ] 200
[2026-06-12 05:52:42,009.009 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:52:42,032.032 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 05:52:42,076.076 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 05:52:42,077.077 INFO    ] No camera update needed
[2026-06-12 05:52:42,078.078 INFO    ] Script finished. Safe exiting...
[2026-06-12 05:52:42,080.080 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 05:52:42,083.083 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 05:52:42,085.085 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 05:52:44,124.124 INFO    ] ================================================
[2026-06-12 05:52:44,140.140 INFO    ] Launching Daemon at Fri Jun 12 05:52:44 IST 2026
[2026-06-12 05:52:44,150.150 INFO    ] ================================================
[2026-06-12 05:52:44,475.475 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 05:52:44
[2026-06-12 05:52:44,786.786 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 05:52:44,916.916 INFO    ] Initializing speech engine...
[2026-06-12 05:52:44,925.925 INFO    ] 2026-06-12 05:52:44
[2026-06-12 05:52:45,141.141 INFO    ] 2026-06-12 05:52:45
[2026-06-12 05:52:45,169.169 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 05:52:45,355.355 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 05:52:45,365.365 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 05:52:45,497.497 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 05:52:45,564.564 INFO    ] time= 12/06/2026 05:52:45
[2026-06-12 05:52:45,588.588 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 05:52:45,595.595 INFO    ] Checking for existing commands in stream...
[2026-06-12 05:52:45,662.662 INFO    ] No existing commands found in stream
[2026-06-12 05:52:50,671.671 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 05:52:50,674.674 INFO    ] Waiting 2.54 seconds before fallback handling...
[2026-06-12 05:52:53,612.612 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 05:52:53,613.613 INFO    ] Checking for system updates...
[2026-06-12 05:52:53,634.634 INFO    ] 200
[2026-06-12 05:52:53,635.635 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:52:53,665.665 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 05:52:53,667.667 INFO    ] No update needed
[2026-06-12 05:52:53,668.668 INFO    ] Checking for camera pi updates...
[2026-06-12 05:52:53,690.690 INFO    ] 200
[2026-06-12 05:52:53,691.691 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:52:53,715.715 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 05:52:53,753.753 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 05:52:53,755.755 INFO    ] No camera update needed
[2026-06-12 05:52:53,756.756 INFO    ] Script finished. Safe exiting...
[2026-06-12 05:52:53,757.757 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 05:52:53,760.760 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 05:52:53,763.763 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 05:52:55,802.802 INFO    ] ================================================
[2026-06-12 05:52:55,817.817 INFO    ] Launching Daemon at Fri Jun 12 05:52:55 IST 2026
[2026-06-12 05:52:55,828.828 INFO    ] ================================================
[2026-06-12 05:52:56,196.196 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 05:52:56
[2026-06-12 05:52:56,516.516 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 05:52:56,654.654 INFO    ] Initializing speech engine...
[2026-06-12 05:52:56,663.663 INFO    ] 2026-06-12 05:52:56
[2026-06-12 05:52:56,870.870 INFO    ] 2026-06-12 05:52:56
[2026-06-12 05:52:56,899.899 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 05:52:57,085.085 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 05:52:57,089.089 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 05:52:57,248.248 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 05:52:57,303.303 INFO    ] time= 12/06/2026 05:52:57
[2026-06-12 05:52:57,319.319 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 05:52:57,325.325 INFO    ] Checking for existing commands in stream...
[2026-06-12 05:52:57,393.393 INFO    ] No existing commands found in stream
[2026-06-12 05:53:02,401.401 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 05:53:02,403.403 INFO    ] Waiting 3.01 seconds before fallback handling...
[2026-06-12 05:53:05,831.831 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 05:53:05,833.833 INFO    ] Checking for system updates...
[2026-06-12 05:53:05,854.854 INFO    ] 200
[2026-06-12 05:53:05,855.855 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:53:05,888.888 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 05:53:05,889.889 INFO    ] No update needed
[2026-06-12 05:53:05,891.891 INFO    ] Checking for camera pi updates...
[2026-06-12 05:53:05,911.911 INFO    ] 200
[2026-06-12 05:53:05,916.916 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:53:05,940.940 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 05:53:05,986.986 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 05:53:05,988.988 INFO    ] No camera update needed
[2026-06-12 05:53:05,989.989 INFO    ] Script finished. Safe exiting...
[2026-06-12 05:53:05,991.991 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 05:53:05,994.994 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 05:53:05,997.997 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 05:53:08,035.035 INFO    ] ================================================
[2026-06-12 05:53:08,050.050 INFO    ] Launching Daemon at Fri Jun 12 05:53:08 IST 2026
[2026-06-12 05:53:08,061.061 INFO    ] ================================================
[2026-06-12 05:53:08,416.416 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 05:53:08
[2026-06-12 05:53:08,728.728 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 05:53:08,859.859 INFO    ] Initializing speech engine...
[2026-06-12 05:53:08,866.866 INFO    ] 2026-06-12 05:53:08
[2026-06-12 05:53:09,078.078 INFO    ] 2026-06-12 05:53:09
[2026-06-12 05:53:09,108.108 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 05:53:09,292.292 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 05:53:09,302.302 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 05:53:09,475.475 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 05:53:09,515.515 INFO    ] time= 12/06/2026 05:53:09
[2026-06-12 05:53:09,521.521 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 05:53:09,527.527 INFO    ] Checking for existing commands in stream...
[2026-06-12 05:53:09,594.594 INFO    ] No existing commands found in stream
[2026-06-12 05:53:14,608.608 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 05:53:14,611.611 INFO    ] Waiting 2.40 seconds before fallback handling...
[2026-06-12 05:53:17,389.389 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 05:53:17,390.390 INFO    ] Checking for system updates...
[2026-06-12 05:53:17,411.411 INFO    ] 200
[2026-06-12 05:53:17,412.412 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:53:17,443.443 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 05:53:17,444.444 INFO    ] No update needed
[2026-06-12 05:53:17,445.445 INFO    ] Checking for camera pi updates...
[2026-06-12 05:53:17,466.466 INFO    ] 200
[2026-06-12 05:53:17,467.467 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:53:17,490.490 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 05:53:17,527.527 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 05:53:17,529.529 INFO    ] No camera update needed
[2026-06-12 05:53:17,530.530 INFO    ] Script finished. Safe exiting...
[2026-06-12 05:53:17,531.531 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 05:53:17,534.534 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 05:53:17,537.537 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 05:53:19,569.569 INFO    ] ================================================
[2026-06-12 05:53:19,578.578 INFO    ] Launching Daemon at Fri Jun 12 05:53:19 IST 2026
[2026-06-12 05:53:19,586.586 INFO    ] ================================================
[2026-06-12 05:53:19,945.945 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 05:53:19
[2026-06-12 05:53:20,301.301 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 05:53:20,466.466 INFO    ] Initializing speech engine...
[2026-06-12 05:53:20,471.471 INFO    ] 2026-06-12 05:53:20
[2026-06-12 05:53:20,691.691 INFO    ] 2026-06-12 05:53:20
[2026-06-12 05:53:20,721.721 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 05:53:20,913.913 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 05:53:20,917.917 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 05:53:21,053.053 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 05:53:21,115.115 INFO    ] time= 12/06/2026 05:53:21
[2026-06-12 05:53:21,156.156 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 05:53:21,158.158 INFO    ] Checking for existing commands in stream...
[2026-06-12 05:53:21,257.257 INFO    ] No existing commands found in stream
[2026-06-12 05:53:26,265.265 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 05:53:26,268.268 INFO    ] Waiting 1.95 seconds before fallback handling...
[2026-06-12 05:53:28,618.618 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 05:53:28,619.619 INFO    ] Checking for system updates...
[2026-06-12 05:53:28,641.641 INFO    ] 200
[2026-06-12 05:53:28,642.642 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:53:28,676.676 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 05:53:28,677.677 INFO    ] No update needed
[2026-06-12 05:53:28,679.679 INFO    ] Checking for camera pi updates...
[2026-06-12 05:53:28,701.701 INFO    ] 200
[2026-06-12 05:53:28,702.702 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:53:28,726.726 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 05:53:28,761.761 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 05:53:28,762.762 INFO    ] No camera update needed
[2026-06-12 05:53:28,764.764 INFO    ] Script finished. Safe exiting...
[2026-06-12 05:53:28,765.765 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 05:53:28,768.768 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 05:53:28,771.771 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 05:53:30,814.814 INFO    ] ================================================
[2026-06-12 05:53:30,830.830 INFO    ] Launching Daemon at Fri Jun 12 05:53:30 IST 2026
[2026-06-12 05:53:30,841.841 INFO    ] ================================================
[2026-06-12 05:53:31,165.165 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 05:53:31
[2026-06-12 05:53:31,487.487 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 05:53:31,640.640 INFO    ] Initializing speech engine...
[2026-06-12 05:53:31,650.650 INFO    ] 2026-06-12 05:53:31
[2026-06-12 05:53:31,839.839 INFO    ] 2026-06-12 05:53:31
[2026-06-12 05:53:31,885.885 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 05:53:32,108.108 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 05:53:32,112.112 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 05:53:32,247.247 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 05:53:32,288.288 INFO    ] time= 12/06/2026 05:53:32
[2026-06-12 05:53:32,334.334 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 05:53:32,357.357 INFO    ] Checking for existing commands in stream...
[2026-06-12 05:53:32,438.438 INFO    ] No existing commands found in stream
[2026-06-12 05:53:37,449.449 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 05:53:37,452.452 INFO    ] Waiting 2.64 seconds before fallback handling...
[2026-06-12 05:53:40,506.506 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 05:53:40,507.507 INFO    ] Checking for system updates...
[2026-06-12 05:53:40,528.528 INFO    ] 200
[2026-06-12 05:53:40,529.529 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:53:40,562.562 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 05:53:40,564.564 INFO    ] No update needed
[2026-06-12 05:53:40,565.565 INFO    ] Checking for camera pi updates...
[2026-06-12 05:53:40,584.584 INFO    ] 200
[2026-06-12 05:53:40,585.585 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:53:40,609.609 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 05:53:40,654.654 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 05:53:40,656.656 INFO    ] No camera update needed
[2026-06-12 05:53:40,657.657 INFO    ] Script finished. Safe exiting...
[2026-06-12 05:53:40,658.658 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 05:53:40,661.661 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 05:53:40,664.664 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 05:53:42,707.707 INFO    ] ================================================
[2026-06-12 05:53:42,729.729 INFO    ] Launching Daemon at Fri Jun 12 05:53:42 IST 2026
[2026-06-12 05:53:42,740.740 INFO    ] ================================================
[2026-06-12 05:53:43,085.085 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 05:53:43
[2026-06-12 05:53:43,397.397 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 05:53:43,551.551 INFO    ] Initializing speech engine...
[2026-06-12 05:53:43,557.557 INFO    ] 2026-06-12 05:53:43
[2026-06-12 05:53:43,769.769 INFO    ] 2026-06-12 05:53:43
[2026-06-12 05:53:43,798.798 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 05:53:43,985.985 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 05:53:43,995.995 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 05:53:44,178.178 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 05:53:44,217.217 INFO    ] time= 12/06/2026 05:53:44
[2026-06-12 05:53:44,224.224 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 05:53:44,226.226 INFO    ] Checking for existing commands in stream...
[2026-06-12 05:53:44,293.293 INFO    ] No existing commands found in stream
[2026-06-12 05:53:49,303.303 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 05:53:49,306.306 INFO    ] Waiting 3.74 seconds before fallback handling...
[2026-06-12 05:53:53,481.481 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 05:53:53,483.483 INFO    ] Checking for system updates...
[2026-06-12 05:53:53,506.506 INFO    ] 200
[2026-06-12 05:53:53,507.507 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:53:53,537.537 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 05:53:53,539.539 INFO    ] No update needed
[2026-06-12 05:53:53,540.540 INFO    ] Checking for camera pi updates...
[2026-06-12 05:53:53,560.560 INFO    ] 200
[2026-06-12 05:53:53,561.561 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:53:53,585.585 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 05:53:53,621.621 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 05:53:53,622.622 INFO    ] No camera update needed
[2026-06-12 05:53:53,624.624 INFO    ] Script finished. Safe exiting...
[2026-06-12 05:53:53,625.625 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 05:53:53,628.628 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 05:53:53,630.630 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 05:53:55,670.670 INFO    ] ================================================
[2026-06-12 05:53:55,686.686 INFO    ] Launching Daemon at Fri Jun 12 05:53:55 IST 2026
[2026-06-12 05:53:55,697.697 INFO    ] ================================================
[2026-06-12 05:53:56,079.079 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 05:53:56
[2026-06-12 05:53:56,424.424 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 05:53:56,577.577 INFO    ] Initializing speech engine...
[2026-06-12 05:53:56,582.582 INFO    ] 2026-06-12 05:53:56
[2026-06-12 05:53:56,791.791 INFO    ] 2026-06-12 05:53:56
[2026-06-12 05:53:56,820.820 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 05:53:57,004.004 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 05:53:57,008.008 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 05:53:57,136.136 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 05:53:57,192.192 INFO    ] time= 12/06/2026 05:53:57
[2026-06-12 05:53:57,234.234 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 05:53:57,241.241 INFO    ] Checking for existing commands in stream...
[2026-06-12 05:53:57,332.332 INFO    ] No existing commands found in stream
[2026-06-12 05:54:02,345.345 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 05:54:02,348.348 INFO    ] Waiting 0.20 seconds before fallback handling...
[2026-06-12 05:54:02,869.869 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 05:54:02,871.871 INFO    ] Checking for system updates...
[2026-06-12 05:54:02,891.891 INFO    ] 200
[2026-06-12 05:54:02,893.893 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:54:02,924.924 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 05:54:02,925.925 INFO    ] No update needed
[2026-06-12 05:54:02,926.926 INFO    ] Checking for camera pi updates...
[2026-06-12 05:54:02,946.946 INFO    ] 200
[2026-06-12 05:54:02,947.947 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:54:02,972.972 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 05:54:02,996.996 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 05:54:02,998.998 INFO    ] No camera update needed
[2026-06-12 05:54:02,999.999 INFO    ] Script finished. Safe exiting...
[2026-06-12 05:54:03,000.000 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 05:54:03,003.003 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 05:54:03,006.006 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 05:54:05,044.044 INFO    ] ================================================
[2026-06-12 05:54:05,059.059 INFO    ] Launching Daemon at Fri Jun 12 05:54:05 IST 2026
[2026-06-12 05:54:05,070.070 INFO    ] ================================================
[2026-06-12 05:54:05,427.427 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 05:54:05
[2026-06-12 05:54:05,738.738 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 05:54:05,890.890 INFO    ] Initializing speech engine...
[2026-06-12 05:54:05,904.904 INFO    ] 2026-06-12 05:54:05
[2026-06-12 05:54:06,107.107 INFO    ] 2026-06-12 05:54:06
[2026-06-12 05:54:06,136.136 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 05:54:06,294.294 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 05:54:06,332.332 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 05:54:06,471.471 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 05:54:06,472.472 INFO    ] time= 12/06/2026 05:54:06
[2026-06-12 05:54:06,474.474 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 05:54:06,475.475 INFO    ] Checking for existing commands in stream...
[2026-06-12 05:54:06,537.537 INFO    ] No existing commands found in stream
[2026-06-12 05:54:11,545.545 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 05:54:11,548.548 INFO    ] Waiting 1.18 seconds before fallback handling...
[2026-06-12 05:54:13,127.127 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 05:54:13,129.129 INFO    ] Checking for system updates...
[2026-06-12 05:54:13,150.150 INFO    ] 200
[2026-06-12 05:54:13,151.151 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:54:13,184.184 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 05:54:13,186.186 INFO    ] No update needed
[2026-06-12 05:54:13,187.187 INFO    ] Checking for camera pi updates...
[2026-06-12 05:54:13,206.206 INFO    ] 200
[2026-06-12 05:54:13,208.208 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:54:13,232.232 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 05:54:13,267.267 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 05:54:13,268.268 INFO    ] No camera update needed
[2026-06-12 05:54:13,269.269 INFO    ] Script finished. Safe exiting...
[2026-06-12 05:54:13,271.271 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 05:54:13,274.274 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 05:54:13,276.276 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 05:54:15,316.316 INFO    ] ================================================
[2026-06-12 05:54:15,331.331 INFO    ] Launching Daemon at Fri Jun 12 05:54:15 IST 2026
[2026-06-12 05:54:15,342.342 INFO    ] ================================================
[2026-06-12 05:54:15,710.710 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 05:54:15
[2026-06-12 05:54:16,021.021 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 05:54:16,153.153 INFO    ] Initializing speech engine...
[2026-06-12 05:54:16,167.167 INFO    ] 2026-06-12 05:54:16
[2026-06-12 05:54:16,374.374 INFO    ] 2026-06-12 05:54:16
[2026-06-12 05:54:16,402.402 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 05:54:16,588.588 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 05:54:16,598.598 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 05:54:16,729.729 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 05:54:16,797.797 INFO    ] time= 12/06/2026 05:54:16
[2026-06-12 05:54:16,821.821 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 05:54:16,822.822 INFO    ] Checking for existing commands in stream...
[2026-06-12 05:54:16,895.895 INFO    ] No existing commands found in stream
[2026-06-12 05:54:21,904.904 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 05:54:21,907.907 INFO    ] Waiting 2.64 seconds before fallback handling...
[2026-06-12 05:54:24,949.949 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 05:54:24,951.951 INFO    ] Checking for system updates...
[2026-06-12 05:54:24,973.973 INFO    ] 200
[2026-06-12 05:54:24,975.975 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:54:25,008.008 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 05:54:25,010.010 INFO    ] No update needed
[2026-06-12 05:54:25,011.011 INFO    ] Checking for camera pi updates...
[2026-06-12 05:54:25,031.031 INFO    ] 200
[2026-06-12 05:54:25,032.032 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:54:25,056.056 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 05:54:25,096.096 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 05:54:25,098.098 INFO    ] No camera update needed
[2026-06-12 05:54:25,099.099 INFO    ] Script finished. Safe exiting...
[2026-06-12 05:54:25,101.101 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 05:54:25,104.104 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 05:54:25,107.107 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 05:54:27,145.145 INFO    ] ================================================
[2026-06-12 05:54:27,161.161 INFO    ] Launching Daemon at Fri Jun 12 05:54:27 IST 2026
[2026-06-12 05:54:27,172.172 INFO    ] ================================================
[2026-06-12 05:54:27,575.575 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 05:54:27
[2026-06-12 05:54:27,903.903 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 05:54:28,042.042 INFO    ] Initializing speech engine...
[2026-06-12 05:54:28,052.052 INFO    ] 2026-06-12 05:54:28
[2026-06-12 05:54:28,257.257 INFO    ] 2026-06-12 05:54:28
[2026-06-12 05:54:28,286.286 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 05:54:28,470.470 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 05:54:28,480.480 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 05:54:28,660.660 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 05:54:28,696.696 INFO    ] time= 12/06/2026 05:54:28
[2026-06-12 05:54:28,702.702 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 05:54:28,708.708 INFO    ] Checking for existing commands in stream...
[2026-06-12 05:54:28,776.776 INFO    ] No existing commands found in stream
[2026-06-12 05:54:33,785.785 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 05:54:33,787.787 INFO    ] Waiting 2.74 seconds before fallback handling...
[2026-06-12 05:54:36,928.928 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 05:54:36,929.929 INFO    ] Checking for system updates...
[2026-06-12 05:54:36,950.950 INFO    ] 200
[2026-06-12 05:54:36,952.952 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:54:36,985.985 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 05:54:36,986.986 INFO    ] No update needed
[2026-06-12 05:54:36,988.988 INFO    ] Checking for camera pi updates...
[2026-06-12 05:54:37,007.007 INFO    ] 200
[2026-06-12 05:54:37,009.009 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:54:37,033.033 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 05:54:37,074.074 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 05:54:37,076.076 INFO    ] No camera update needed
[2026-06-12 05:54:37,077.077 INFO    ] Script finished. Safe exiting...
[2026-06-12 05:54:37,079.079 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 05:54:37,082.082 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 05:54:37,085.085 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 05:54:39,125.125 INFO    ] ================================================
[2026-06-12 05:54:39,140.140 INFO    ] Launching Daemon at Fri Jun 12 05:54:39 IST 2026
[2026-06-12 05:54:39,151.151 INFO    ] ================================================
[2026-06-12 05:54:39,469.469 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 05:54:39
[2026-06-12 05:54:39,782.782 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 05:54:39,913.913 INFO    ] Initializing speech engine...
[2026-06-12 05:54:39,921.921 INFO    ] 2026-06-12 05:54:39
[2026-06-12 05:54:40,135.135 INFO    ] 2026-06-12 05:54:40
[2026-06-12 05:54:40,164.164 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 05:54:40,350.350 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 05:54:40,354.354 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 05:54:40,517.517 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 05:54:40,561.561 INFO    ] time= 12/06/2026 05:54:40
[2026-06-12 05:54:40,583.583 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 05:54:40,590.590 INFO    ] Checking for existing commands in stream...
[2026-06-12 05:54:40,656.656 INFO    ] No existing commands found in stream
[2026-06-12 05:54:45,666.666 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 05:54:45,669.669 INFO    ] Waiting 1.87 seconds before fallback handling...
[2026-06-12 05:54:47,917.917 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 05:54:47,919.919 INFO    ] Checking for system updates...
[2026-06-12 05:54:47,940.940 INFO    ] 200
[2026-06-12 05:54:47,942.942 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:54:47,972.972 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 05:54:47,974.974 INFO    ] No update needed
[2026-06-12 05:54:47,975.975 INFO    ] Checking for camera pi updates...
[2026-06-12 05:54:47,997.997 INFO    ] 200
[2026-06-12 05:54:47,998.998 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:54:48,027.027 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 05:54:48,066.066 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 05:54:48,068.068 INFO    ] No camera update needed
[2026-06-12 05:54:48,069.069 INFO    ] Script finished. Safe exiting...
[2026-06-12 05:54:48,071.071 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 05:54:48,074.074 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 05:54:48,077.077 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 05:54:50,118.118 INFO    ] ================================================
[2026-06-12 05:54:50,133.133 INFO    ] Launching Daemon at Fri Jun 12 05:54:50 IST 2026
[2026-06-12 05:54:50,144.144 INFO    ] ================================================
[2026-06-12 05:54:50,535.535 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 05:54:50
[2026-06-12 05:54:50,878.878 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 05:54:51,036.036 INFO    ] Initializing speech engine...
[2026-06-12 05:54:51,043.043 INFO    ] 2026-06-12 05:54:51
[2026-06-12 05:54:51,248.248 INFO    ] 2026-06-12 05:54:51
[2026-06-12 05:54:51,276.276 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 05:54:51,432.432 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 05:54:51,465.465 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 05:54:51,605.605 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 05:54:51,670.670 INFO    ] time= 12/06/2026 05:54:51
[2026-06-12 05:54:51,698.698 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 05:54:51,705.705 INFO    ] Checking for existing commands in stream...
[2026-06-12 05:54:51,773.773 INFO    ] No existing commands found in stream
[2026-06-12 05:54:56,787.787 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 05:54:56,791.791 INFO    ] Waiting 0.90 seconds before fallback handling...
[2026-06-12 05:54:58,115.115 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 05:54:58,116.116 INFO    ] Checking for system updates...
[2026-06-12 05:54:58,139.139 INFO    ] 200
[2026-06-12 05:54:58,140.140 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:54:58,173.173 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 05:54:58,174.174 INFO    ] No update needed
[2026-06-12 05:54:58,175.175 INFO    ] Checking for camera pi updates...
[2026-06-12 05:54:58,195.195 INFO    ] 200
[2026-06-12 05:54:58,196.196 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:54:58,220.220 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 05:54:58,264.264 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 05:54:58,265.265 INFO    ] No camera update needed
[2026-06-12 05:54:58,267.267 INFO    ] Script finished. Safe exiting...
[2026-06-12 05:54:58,268.268 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 05:54:58,271.271 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 05:54:58,274.274 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 05:55:00,312.312 INFO    ] ================================================
[2026-06-12 05:55:00,327.327 INFO    ] Launching Daemon at Fri Jun 12 05:55:00 IST 2026
[2026-06-12 05:55:00,338.338 INFO    ] ================================================
[2026-06-12 05:55:00,693.693 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 05:55:00
[2026-06-12 05:55:01,033.033 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 05:55:01,180.180 INFO    ] Initializing speech engine...
[2026-06-12 05:55:01,189.189 INFO    ] 2026-06-12 05:55:01
[2026-06-12 05:55:01,402.402 INFO    ] 2026-06-12 05:55:01
[2026-06-12 05:55:01,431.431 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 05:55:01,618.618 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 05:55:01,627.627 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 05:55:01,759.759 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 05:55:01,823.823 INFO    ] time= 12/06/2026 05:55:01
[2026-06-12 05:55:01,870.870 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 05:55:01,882.882 INFO    ] Checking for existing commands in stream...
[2026-06-12 05:55:02,003.003 INFO    ] No existing commands found in stream
[2026-06-12 05:55:07,013.013 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 05:55:07,016.016 INFO    ] Waiting 2.89 seconds before fallback handling...
[2026-06-12 05:55:10,335.335 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 05:55:10,337.337 INFO    ] Checking for system updates...
[2026-06-12 05:55:10,358.358 INFO    ] 200
[2026-06-12 05:55:10,359.359 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:55:10,393.393 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 05:55:10,395.395 INFO    ] No update needed
[2026-06-12 05:55:10,396.396 INFO    ] Checking for camera pi updates...
[2026-06-12 05:55:10,415.415 INFO    ] 200
[2026-06-12 05:55:10,416.416 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:55:10,442.442 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 05:55:10,481.481 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 05:55:10,482.482 INFO    ] No camera update needed
[2026-06-12 05:55:10,484.484 INFO    ] Script finished. Safe exiting...
[2026-06-12 05:55:10,485.485 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 05:55:10,488.488 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 05:55:10,490.490 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 05:55:12,528.528 INFO    ] ================================================
[2026-06-12 05:55:12,544.544 INFO    ] Launching Daemon at Fri Jun 12 05:55:12 IST 2026
[2026-06-12 05:55:12,555.555 INFO    ] ================================================
[2026-06-12 05:55:12,896.896 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 05:55:12
[2026-06-12 05:55:13,208.208 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 05:55:13,340.340 INFO    ] Initializing speech engine...
[2026-06-12 05:55:13,345.345 INFO    ] 2026-06-12 05:55:13
[2026-06-12 05:55:13,538.538 INFO    ] 2026-06-12 05:55:13
[2026-06-12 05:55:13,582.582 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 05:55:13,743.743 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 05:55:13,811.811 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 05:55:13,955.955 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 05:55:14,006.006 INFO    ] time= 12/06/2026 05:55:13
[2026-06-12 05:55:14,041.041 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 05:55:14,063.063 INFO    ] Checking for existing commands in stream...
[2026-06-12 05:55:14,166.166 INFO    ] No existing commands found in stream
[2026-06-12 05:55:19,175.175 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 05:55:19,178.178 INFO    ] Waiting 1.71 seconds before fallback handling...
[2026-06-12 05:55:21,297.297 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 05:55:21,298.298 INFO    ] Checking for system updates...
[2026-06-12 05:55:21,319.319 INFO    ] 200
[2026-06-12 05:55:21,321.321 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:55:21,351.351 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 05:55:21,352.352 INFO    ] No update needed
[2026-06-12 05:55:21,353.353 INFO    ] Checking for camera pi updates...
[2026-06-12 05:55:21,377.377 INFO    ] 200
[2026-06-12 05:55:21,378.378 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:55:21,403.403 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 05:55:21,439.439 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 05:55:21,441.441 INFO    ] No camera update needed
[2026-06-12 05:55:21,442.442 INFO    ] Script finished. Safe exiting...
[2026-06-12 05:55:21,443.443 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 05:55:21,446.446 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 05:55:21,449.449 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 05:55:23,489.489 INFO    ] ================================================
[2026-06-12 05:55:23,505.505 INFO    ] Launching Daemon at Fri Jun 12 05:55:23 IST 2026
[2026-06-12 05:55:23,516.516 INFO    ] ================================================
[2026-06-12 05:55:23,880.880 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 05:55:23
[2026-06-12 05:55:24,218.218 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 05:55:24,369.369 INFO    ] Initializing speech engine...
[2026-06-12 05:55:24,376.376 INFO    ] 2026-06-12 05:55:24
[2026-06-12 05:55:24,583.583 INFO    ] 2026-06-12 05:55:24
[2026-06-12 05:55:24,612.612 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 05:55:24,797.797 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 05:55:24,808.808 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 05:55:24,972.972 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 05:55:25,011.011 INFO    ] time= 12/06/2026 05:55:24
[2026-06-12 05:55:25,027.027 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 05:55:25,033.033 INFO    ] Checking for existing commands in stream...
[2026-06-12 05:55:25,100.100 INFO    ] No existing commands found in stream
[2026-06-12 05:55:30,109.109 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 05:55:30,113.113 INFO    ] Waiting 3.65 seconds before fallback handling...
[2026-06-12 05:55:34,169.169 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 05:55:34,171.171 INFO    ] Checking for system updates...
[2026-06-12 05:55:34,192.192 INFO    ] 200
[2026-06-12 05:55:34,193.193 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:55:34,223.223 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 05:55:34,225.225 INFO    ] No update needed
[2026-06-12 05:55:34,226.226 INFO    ] Checking for camera pi updates...
[2026-06-12 05:55:34,247.247 INFO    ] 200
[2026-06-12 05:55:34,248.248 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:55:34,274.274 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 05:55:34,310.310 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 05:55:34,312.312 INFO    ] No camera update needed
[2026-06-12 05:55:34,313.313 INFO    ] Script finished. Safe exiting...
[2026-06-12 05:55:34,314.314 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 05:55:34,318.318 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 05:55:34,321.321 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 05:55:36,360.360 INFO    ] ================================================
[2026-06-12 05:55:36,376.376 INFO    ] Launching Daemon at Fri Jun 12 05:55:36 IST 2026
[2026-06-12 05:55:36,387.387 INFO    ] ================================================
[2026-06-12 05:55:36,739.739 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 05:55:36
[2026-06-12 05:55:37,049.049 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 05:55:37,185.185 INFO    ] Initializing speech engine...
[2026-06-12 05:55:37,194.194 INFO    ] 2026-06-12 05:55:37
[2026-06-12 05:55:37,398.398 INFO    ] 2026-06-12 05:55:37
[2026-06-12 05:55:37,427.427 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 05:55:37,611.611 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 05:55:37,620.620 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 05:55:37,754.754 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 05:55:37,816.816 INFO    ] time= 12/06/2026 05:55:37
[2026-06-12 05:55:37,839.839 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 05:55:37,846.846 INFO    ] Checking for existing commands in stream...
[2026-06-12 05:55:37,912.912 INFO    ] No existing commands found in stream
[2026-06-12 05:55:42,921.921 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 05:55:42,924.924 INFO    ] Waiting 1.89 seconds before fallback handling...
[2026-06-12 05:55:45,208.208 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 05:55:45,209.209 INFO    ] Checking for system updates...
[2026-06-12 05:55:45,231.231 INFO    ] 200
[2026-06-12 05:55:45,232.232 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:55:45,267.267 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 05:55:45,269.269 INFO    ] No update needed
[2026-06-12 05:55:45,270.270 INFO    ] Checking for camera pi updates...
[2026-06-12 05:55:45,291.291 INFO    ] 200
[2026-06-12 05:55:45,292.292 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:55:45,318.318 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 05:55:45,460.460 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 05:55:45,462.462 INFO    ] No camera update needed
[2026-06-12 05:55:45,463.463 INFO    ] Script finished. Safe exiting...
[2026-06-12 05:55:45,464.464 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 05:55:45,467.467 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 05:55:45,470.470 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 05:55:47,509.509 INFO    ] ================================================
[2026-06-12 05:55:47,525.525 INFO    ] Launching Daemon at Fri Jun 12 05:55:47 IST 2026
[2026-06-12 05:55:47,536.536 INFO    ] ================================================
[2026-06-12 05:55:47,895.895 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 05:55:47
[2026-06-12 05:55:48,235.235 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 05:55:48,387.387 INFO    ] Initializing speech engine...
[2026-06-12 05:55:48,393.393 INFO    ] 2026-06-12 05:55:48
[2026-06-12 05:55:48,600.600 INFO    ] 2026-06-12 05:55:48
[2026-06-12 05:55:48,630.630 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 05:55:48,814.814 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 05:55:48,825.825 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 05:55:48,967.967 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 05:55:49,025.025 INFO    ] time= 12/06/2026 05:55:48
[2026-06-12 05:55:49,047.047 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 05:55:49,054.054 INFO    ] Checking for existing commands in stream...
[2026-06-12 05:55:49,120.120 INFO    ] No existing commands found in stream
[2026-06-12 05:55:54,145.145 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 05:55:54,148.148 INFO    ] Waiting 3.02 seconds before fallback handling...
[2026-06-12 05:55:57,594.594 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 05:55:57,596.596 INFO    ] Checking for system updates...
[2026-06-12 05:55:57,617.617 INFO    ] 200
[2026-06-12 05:55:57,618.618 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:55:57,649.649 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 05:55:57,650.650 INFO    ] No update needed
[2026-06-12 05:55:57,651.651 INFO    ] Checking for camera pi updates...
[2026-06-12 05:55:57,671.671 INFO    ] 200
[2026-06-12 05:55:57,672.672 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:55:57,697.697 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 05:55:57,732.732 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 05:55:57,734.734 INFO    ] No camera update needed
[2026-06-12 05:55:57,735.735 INFO    ] Script finished. Safe exiting...
[2026-06-12 05:55:57,736.736 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 05:55:57,739.739 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 05:55:57,742.742 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 05:55:59,780.780 INFO    ] ================================================
[2026-06-12 05:55:59,797.797 INFO    ] Launching Daemon at Fri Jun 12 05:55:59 IST 2026
[2026-06-12 05:55:59,808.808 INFO    ] ================================================
[2026-06-12 05:56:00,138.138 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 05:56:00
[2026-06-12 05:56:00,453.453 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 05:56:00,585.585 INFO    ] Initializing speech engine...
[2026-06-12 05:56:00,598.598 INFO    ] 2026-06-12 05:56:00
[2026-06-12 05:56:00,806.806 INFO    ] 2026-06-12 05:56:00
[2026-06-12 05:56:00,834.834 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 05:56:01,018.018 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 05:56:01,026.026 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 05:56:01,155.155 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 05:56:01,219.219 INFO    ] time= 12/06/2026 05:56:01
[2026-06-12 05:56:01,261.261 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 05:56:01,278.278 INFO    ] Checking for existing commands in stream...
[2026-06-12 05:56:01,357.357 INFO    ] No existing commands found in stream
[2026-06-12 05:56:06,372.372 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 05:56:06,375.375 INFO    ] Waiting 1.90 seconds before fallback handling...
[2026-06-12 05:56:08,665.665 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 05:56:08,667.667 INFO    ] Checking for system updates...
[2026-06-12 05:56:08,687.687 INFO    ] 200
[2026-06-12 05:56:08,689.689 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:56:08,721.721 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 05:56:08,723.723 INFO    ] No update needed
[2026-06-12 05:56:08,724.724 INFO    ] Checking for camera pi updates...
[2026-06-12 05:56:08,743.743 INFO    ] 200
[2026-06-12 05:56:08,745.745 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:56:08,771.771 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 05:56:08,809.809 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 05:56:08,811.811 INFO    ] No camera update needed
[2026-06-12 05:56:08,812.812 INFO    ] Script finished. Safe exiting...
[2026-06-12 05:56:08,813.813 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 05:56:08,816.816 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 05:56:08,819.819 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 05:56:10,859.859 INFO    ] ================================================
[2026-06-12 05:56:10,875.875 INFO    ] Launching Daemon at Fri Jun 12 05:56:10 IST 2026
[2026-06-12 05:56:10,886.886 INFO    ] ================================================
[2026-06-12 05:56:11,271.271 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 05:56:11
[2026-06-12 05:56:11,606.606 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 05:56:11,759.759 INFO    ] Initializing speech engine...
[2026-06-12 05:56:11,764.764 INFO    ] 2026-06-12 05:56:11
[2026-06-12 05:56:11,972.972 INFO    ] 2026-06-12 05:56:11
[2026-06-12 05:56:12,001.001 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 05:56:12,187.187 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 05:56:12,198.198 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 05:56:12,355.355 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 05:56:12,406.406 INFO    ] time= 12/06/2026 05:56:12
[2026-06-12 05:56:12,422.422 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 05:56:12,429.429 INFO    ] Checking for existing commands in stream...
[2026-06-12 05:56:12,497.497 INFO    ] No existing commands found in stream
[2026-06-12 05:56:17,516.516 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 05:56:17,520.520 INFO    ] Waiting 3.56 seconds before fallback handling...
[2026-06-12 05:56:21,488.488 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 05:56:21,489.489 INFO    ] Checking for system updates...
[2026-06-12 05:56:21,511.511 INFO    ] 200
[2026-06-12 05:56:21,513.513 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:56:21,548.548 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 05:56:21,549.549 INFO    ] No update needed
[2026-06-12 05:56:21,551.551 INFO    ] Checking for camera pi updates...
[2026-06-12 05:56:21,574.574 INFO    ] 200
[2026-06-12 05:56:21,575.575 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:56:21,599.599 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 05:56:21,621.621 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 05:56:21,623.623 INFO    ] No camera update needed
[2026-06-12 05:56:21,624.624 INFO    ] Script finished. Safe exiting...
[2026-06-12 05:56:21,626.626 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 05:56:21,629.629 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 05:56:21,632.632 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 05:56:23,672.672 INFO    ] ================================================
[2026-06-12 05:56:23,688.688 INFO    ] Launching Daemon at Fri Jun 12 05:56:23 IST 2026
[2026-06-12 05:56:23,699.699 INFO    ] ================================================
[2026-06-12 05:56:24,070.070 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 05:56:24
[2026-06-12 05:56:24,388.388 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 05:56:24,532.532 INFO    ] Initializing speech engine...
[2026-06-12 05:56:24,538.538 INFO    ] 2026-06-12 05:56:24
[2026-06-12 05:56:24,742.742 INFO    ] 2026-06-12 05:56:24
[2026-06-12 05:56:24,771.771 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 05:56:24,955.955 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 05:56:24,965.965 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 05:56:25,159.159 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 05:56:25,183.183 INFO    ] time= 12/06/2026 05:56:25
[2026-06-12 05:56:25,188.188 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 05:56:25,190.190 INFO    ] Checking for existing commands in stream...
[2026-06-12 05:56:25,281.281 INFO    ] No existing commands found in stream
[2026-06-12 05:56:30,290.290 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 05:56:30,293.293 INFO    ] Waiting 3.84 seconds before fallback handling...
[2026-06-12 05:56:34,525.525 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 05:56:34,526.526 INFO    ] Checking for system updates...
[2026-06-12 05:56:34,547.547 INFO    ] 200
[2026-06-12 05:56:34,549.549 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:56:34,581.581 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 05:56:34,582.582 INFO    ] No update needed
[2026-06-12 05:56:34,584.584 INFO    ] Checking for camera pi updates...
[2026-06-12 05:56:34,604.604 INFO    ] 200
[2026-06-12 05:56:34,606.606 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:56:34,630.630 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 05:56:34,667.667 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 05:56:34,668.668 INFO    ] No camera update needed
[2026-06-12 05:56:34,670.670 INFO    ] Script finished. Safe exiting...
[2026-06-12 05:56:34,671.671 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 05:56:34,674.674 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 05:56:34,677.677 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 05:56:36,715.715 INFO    ] ================================================
[2026-06-12 05:56:36,731.731 INFO    ] Launching Daemon at Fri Jun 12 05:56:36 IST 2026
[2026-06-12 05:56:36,742.742 INFO    ] ================================================
[2026-06-12 05:56:37,099.099 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 05:56:37
[2026-06-12 05:56:37,411.411 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 05:56:37,539.539 INFO    ] Initializing speech engine...
[2026-06-12 05:56:37,543.543 INFO    ] 2026-06-12 05:56:37
[2026-06-12 05:56:37,761.761 INFO    ] 2026-06-12 05:56:37
[2026-06-12 05:56:37,790.790 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 05:56:37,973.973 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 05:56:37,982.982 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 05:56:38,106.106 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 05:56:38,161.161 INFO    ] time= 12/06/2026 05:56:38
[2026-06-12 05:56:38,201.201 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 05:56:38,206.206 INFO    ] Checking for existing commands in stream...
[2026-06-12 05:56:38,277.277 INFO    ] No existing commands found in stream
[2026-06-12 05:56:43,286.286 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 05:56:43,289.289 INFO    ] Waiting 1.11 seconds before fallback handling...
[2026-06-12 05:56:44,775.775 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 05:56:44,776.776 INFO    ] Checking for system updates...
[2026-06-12 05:56:44,797.797 INFO    ] 200
[2026-06-12 05:56:44,798.798 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:56:44,828.828 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 05:56:44,829.829 INFO    ] No update needed
[2026-06-12 05:56:44,831.831 INFO    ] Checking for camera pi updates...
[2026-06-12 05:56:44,851.851 INFO    ] 200
[2026-06-12 05:56:44,853.853 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:56:44,876.876 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 05:56:44,917.917 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 05:56:44,919.919 INFO    ] No camera update needed
[2026-06-12 05:56:44,920.920 INFO    ] Script finished. Safe exiting...
[2026-06-12 05:56:44,921.921 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 05:56:44,924.924 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 05:56:44,927.927 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 05:56:46,969.969 INFO    ] ================================================
[2026-06-12 05:56:46,985.985 INFO    ] Launching Daemon at Fri Jun 12 05:56:46 IST 2026
[2026-06-12 05:56:47,997.997 INFO    ] ================================================
[2026-06-12 05:56:47,347.347 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 05:56:47
[2026-06-12 05:56:47,659.659 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 05:56:47,788.788 INFO    ] Initializing speech engine...
[2026-06-12 05:56:47,792.792 INFO    ] 2026-06-12 05:56:47
[2026-06-12 05:56:48,007.007 INFO    ] 2026-06-12 05:56:47
[2026-06-12 05:56:48,036.036 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 05:56:48,221.221 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 05:56:48,229.229 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 05:56:48,415.415 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 05:56:48,446.446 INFO    ] time= 12/06/2026 05:56:48
[2026-06-12 05:56:48,453.453 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 05:56:48,455.455 INFO    ] Checking for existing commands in stream...
[2026-06-12 05:56:48,521.521 INFO    ] No existing commands found in stream
[2026-06-12 05:56:53,535.535 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 05:56:53,538.538 INFO    ] Waiting 2.50 seconds before fallback handling...
[2026-06-12 05:56:58,187.187 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 05:56:58,196.196 INFO    ] Checking for system updates...
[2026-06-12 05:56:58,234.234 INFO    ] 200
[2026-06-12 05:56:58,236.236 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:56:58,289.289 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 05:56:58,290.290 INFO    ] No update needed
[2026-06-12 05:56:58,292.292 INFO    ] Checking for camera pi updates...
[2026-06-12 05:56:58,312.312 INFO    ] 200
[2026-06-12 05:56:58,314.314 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:56:58,337.337 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 05:56:58,372.372 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 05:56:58,373.373 INFO    ] No camera update needed
[2026-06-12 05:56:58,374.374 INFO    ] Script finished. Safe exiting...
[2026-06-12 05:56:58,375.375 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 05:56:58,378.378 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 05:56:58,381.381 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 05:57:00,421.421 INFO    ] ================================================
[2026-06-12 05:57:00,437.437 INFO    ] Launching Daemon at Fri Jun 12 05:57:00 IST 2026
[2026-06-12 05:57:00,449.449 INFO    ] ================================================
[2026-06-12 05:57:00,814.814 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 05:57:00
[2026-06-12 05:57:01,151.151 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 05:57:01,302.302 INFO    ] Initializing speech engine...
[2026-06-12 05:57:01,307.307 INFO    ] 2026-06-12 05:57:01
[2026-06-12 05:57:01,516.516 INFO    ] 2026-06-12 05:57:01
[2026-06-12 05:57:01,585.585 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 05:57:01,772.772 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 05:57:01,791.791 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 05:57:01,906.906 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 05:57:01,908.908 INFO    ] time= 12/06/2026 05:57:01
[2026-06-12 05:57:01,933.933 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 05:57:02,006.006 INFO    ] Checking for existing commands in stream...
[2026-06-12 05:57:02,137.137 INFO    ] No existing commands found in stream
[2026-06-12 05:57:07,151.151 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 05:57:07,153.153 INFO    ] Waiting 3.95 seconds before fallback handling...
[2026-06-12 05:57:11,497.497 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 05:57:11,498.498 INFO    ] Checking for system updates...
[2026-06-12 05:57:11,519.519 INFO    ] 200
[2026-06-12 05:57:11,520.520 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:57:11,553.553 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 05:57:11,554.554 INFO    ] No update needed
[2026-06-12 05:57:11,555.555 INFO    ] Checking for camera pi updates...
[2026-06-12 05:57:11,576.576 INFO    ] 200
[2026-06-12 05:57:11,577.577 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:57:11,601.601 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 05:57:11,642.642 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 05:57:11,643.643 INFO    ] No camera update needed
[2026-06-12 05:57:11,644.644 INFO    ] Script finished. Safe exiting...
[2026-06-12 05:57:11,645.645 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 05:57:11,648.648 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 05:57:11,651.651 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 05:57:13,689.689 INFO    ] ================================================
[2026-06-12 05:57:13,706.706 INFO    ] Launching Daemon at Fri Jun 12 05:57:13 IST 2026
[2026-06-12 05:57:13,717.717 INFO    ] ================================================
[2026-06-12 05:57:14,080.080 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 05:57:14
[2026-06-12 05:57:14,392.392 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 05:57:14,523.523 INFO    ] Initializing speech engine...
[2026-06-12 05:57:14,531.531 INFO    ] 2026-06-12 05:57:14
[2026-06-12 05:57:14,745.745 INFO    ] 2026-06-12 05:57:14
[2026-06-12 05:57:14,774.774 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 05:57:14,960.960 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 05:57:14,968.968 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 05:57:15,099.099 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 05:57:15,163.163 INFO    ] time= 12/06/2026 05:57:15
[2026-06-12 05:57:15,191.191 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 05:57:15,193.193 INFO    ] Checking for existing commands in stream...
[2026-06-12 05:57:15,265.265 INFO    ] No existing commands found in stream
[2026-06-12 05:57:20,279.279 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 05:57:20,282.282 INFO    ] Waiting 1.93 seconds before fallback handling...
[2026-06-12 05:57:22,612.612 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 05:57:22,614.614 INFO    ] Checking for system updates...
[2026-06-12 05:57:22,634.634 INFO    ] 200
[2026-06-12 05:57:22,636.636 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:57:22,670.670 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 05:57:22,672.672 INFO    ] No update needed
[2026-06-12 05:57:22,673.673 INFO    ] Checking for camera pi updates...
[2026-06-12 05:57:22,692.692 INFO    ] 200
[2026-06-12 05:57:22,693.693 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:57:22,718.718 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 05:57:22,762.762 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 05:57:22,763.763 INFO    ] No camera update needed
[2026-06-12 05:57:22,765.765 INFO    ] Script finished. Safe exiting...
[2026-06-12 05:57:22,766.766 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 05:57:22,769.769 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 05:57:22,771.771 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 05:57:24,810.810 INFO    ] ================================================
[2026-06-12 05:57:24,825.825 INFO    ] Launching Daemon at Fri Jun 12 05:57:24 IST 2026
[2026-06-12 05:57:24,837.837 INFO    ] ================================================
[2026-06-12 05:57:25,209.209 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 05:57:25
[2026-06-12 05:57:25,543.543 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 05:57:25,695.695 INFO    ] Initializing speech engine...
[2026-06-12 05:57:25,700.700 INFO    ] 2026-06-12 05:57:25
[2026-06-12 05:57:25,907.907 INFO    ] 2026-06-12 05:57:25
[2026-06-12 05:57:25,935.935 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 05:57:26,117.117 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 05:57:26,121.121 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 05:57:26,257.257 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 05:57:26,324.324 INFO    ] time= 12/06/2026 05:57:26
[2026-06-12 05:57:26,347.347 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 05:57:26,354.354 INFO    ] Checking for existing commands in stream...
[2026-06-12 05:57:26,421.421 INFO    ] No existing commands found in stream
[2026-06-12 05:57:31,429.429 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 05:57:31,432.432 INFO    ] Waiting 0.29 seconds before fallback handling...
[2026-06-12 05:57:32,076.076 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 05:57:32,078.078 INFO    ] Checking for system updates...
[2026-06-12 05:57:32,101.101 INFO    ] 200
[2026-06-12 05:57:32,103.103 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:57:32,140.140 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 05:57:32,142.142 INFO    ] No update needed
[2026-06-12 05:57:32,143.143 INFO    ] Checking for camera pi updates...
[2026-06-12 05:57:32,164.164 INFO    ] 200
[2026-06-12 05:57:32,166.166 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:57:32,192.192 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 05:57:32,228.228 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 05:57:32,230.230 INFO    ] No camera update needed
[2026-06-12 05:57:32,231.231 INFO    ] Script finished. Safe exiting...
[2026-06-12 05:57:32,233.233 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 05:57:32,237.237 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 05:57:32,240.240 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 05:57:34,280.280 INFO    ] ================================================
[2026-06-12 05:57:34,295.295 INFO    ] Launching Daemon at Fri Jun 12 05:57:34 IST 2026
[2026-06-12 05:57:34,306.306 INFO    ] ================================================
[2026-06-12 05:57:34,632.632 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 05:57:34
[2026-06-12 05:57:34,942.942 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 05:57:35,072.072 INFO    ] Initializing speech engine...
[2026-06-12 05:57:35,080.080 INFO    ] 2026-06-12 05:57:35
[2026-06-12 05:57:35,294.294 INFO    ] 2026-06-12 05:57:35
[2026-06-12 05:57:35,322.322 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 05:57:35,519.519 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 05:57:35,534.534 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 05:57:35,711.711 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 05:57:35,740.740 INFO    ] time= 12/06/2026 05:57:35
[2026-06-12 05:57:35,746.746 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 05:57:35,747.747 INFO    ] Checking for existing commands in stream...
[2026-06-12 05:57:35,815.815 INFO    ] No existing commands found in stream
[2026-06-12 05:57:40,829.829 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 05:57:40,832.832 INFO    ] Waiting 3.08 seconds before fallback handling...
[2026-06-12 05:57:44,309.309 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 05:57:44,310.310 INFO    ] Checking for system updates...
[2026-06-12 05:57:44,331.331 INFO    ] 200
[2026-06-12 05:57:44,333.333 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:57:44,363.363 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 05:57:44,367.367 INFO    ] No update needed
[2026-06-12 05:57:44,368.368 INFO    ] Checking for camera pi updates...
[2026-06-12 05:57:44,397.397 INFO    ] 200
[2026-06-12 05:57:44,399.399 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:57:44,425.425 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 05:57:44,464.464 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 05:57:44,465.465 INFO    ] No camera update needed
[2026-06-12 05:57:44,467.467 INFO    ] Script finished. Safe exiting...
[2026-06-12 05:57:44,468.468 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 05:57:44,472.472 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 05:57:44,475.475 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 05:57:46,514.514 INFO    ] ================================================
[2026-06-12 05:57:46,530.530 INFO    ] Launching Daemon at Fri Jun 12 05:57:46 IST 2026
[2026-06-12 05:57:46,541.541 INFO    ] ================================================
[2026-06-12 05:57:46,887.887 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 05:57:46
[2026-06-12 05:57:47,197.197 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 05:57:47,339.339 INFO    ] Initializing speech engine...
[2026-06-12 05:57:47,344.344 INFO    ] 2026-06-12 05:57:47
[2026-06-12 05:57:47,546.546 INFO    ] 2026-06-12 05:57:47
[2026-06-12 05:57:47,574.574 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 05:57:47,756.756 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 05:57:47,765.765 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 05:57:47,958.958 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 05:57:47,982.982 INFO    ] time= 12/06/2026 05:57:47
[2026-06-12 05:57:47,988.988 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 05:57:47,989.989 INFO    ] Checking for existing commands in stream...
[2026-06-12 05:57:48,056.056 INFO    ] No existing commands found in stream
[2026-06-12 05:57:53,075.075 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 05:57:53,077.077 INFO    ] Waiting 3.52 seconds before fallback handling...
[2026-06-12 05:57:56,988.988 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 05:57:56,989.989 INFO    ] Checking for system updates...
[2026-06-12 05:57:57,011.011 INFO    ] 200
[2026-06-12 05:57:57,012.012 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:57:57,045.045 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 05:57:57,047.047 INFO    ] No update needed
[2026-06-12 05:57:57,048.048 INFO    ] Checking for camera pi updates...
[2026-06-12 05:57:57,068.068 INFO    ] 200
[2026-06-12 05:57:57,070.070 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:57:57,094.094 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 05:57:57,229.229 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 05:57:57,230.230 INFO    ] No camera update needed
[2026-06-12 05:57:57,232.232 INFO    ] Script finished. Safe exiting...
[2026-06-12 05:57:57,233.233 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 05:57:57,236.236 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 05:57:57,238.238 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 05:57:59,279.279 INFO    ] ================================================
[2026-06-12 05:57:59,295.295 INFO    ] Launching Daemon at Fri Jun 12 05:57:59 IST 2026
[2026-06-12 05:57:59,305.305 INFO    ] ================================================
[2026-06-12 05:57:59,630.630 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 05:57:59
[2026-06-12 05:57:59,942.942 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 05:58:00,073.073 INFO    ] Initializing speech engine...
[2026-06-12 05:58:00,078.078 INFO    ] 2026-06-12 05:58:00
[2026-06-12 05:58:00,306.306 INFO    ] 2026-06-12 05:58:00
[2026-06-12 05:58:00,335.335 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 05:58:00,465.465 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 05:58:00,510.510 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 05:58:00,684.684 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 05:58:00,747.747 INFO    ] time= 12/06/2026 05:58:00
[2026-06-12 05:58:00,781.781 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 05:58:00,787.787 INFO    ] Checking for existing commands in stream...
[2026-06-12 05:58:00,885.885 INFO    ] No existing commands found in stream
[2026-06-12 05:58:05,894.894 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 05:58:05,896.896 INFO    ] Waiting 0.87 seconds before fallback handling...
[2026-06-12 05:58:07,125.125 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 05:58:07,127.127 INFO    ] Checking for system updates...
[2026-06-12 05:58:07,148.148 INFO    ] 200
[2026-06-12 05:58:07,149.149 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:58:07,182.182 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 05:58:07,183.183 INFO    ] No update needed
[2026-06-12 05:58:07,185.185 INFO    ] Checking for camera pi updates...
[2026-06-12 05:58:07,204.204 INFO    ] 200
[2026-06-12 05:58:07,205.205 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:58:07,230.230 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 05:58:07,271.271 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 05:58:07,272.272 INFO    ] No camera update needed
[2026-06-12 05:58:07,273.273 INFO    ] Script finished. Safe exiting...
[2026-06-12 05:58:07,275.275 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 05:58:07,278.278 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 05:58:07,280.280 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 05:58:09,320.320 INFO    ] ================================================
[2026-06-12 05:58:09,336.336 INFO    ] Launching Daemon at Fri Jun 12 05:58:09 IST 2026
[2026-06-12 05:58:09,347.347 INFO    ] ================================================
[2026-06-12 05:58:09,690.690 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 05:58:09
[2026-06-12 05:58:10,003.003 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 05:58:10,136.136 INFO    ] Initializing speech engine...
[2026-06-12 05:58:10,140.140 INFO    ] 2026-06-12 05:58:10
[2026-06-12 05:58:10,362.362 INFO    ] 2026-06-12 05:58:10
[2026-06-12 05:58:10,404.404 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 05:58:10,604.604 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 05:58:10,607.607 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 05:58:10,749.749 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 05:58:10,805.805 INFO    ] time= 12/06/2026 05:58:10
[2026-06-12 05:58:10,846.846 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 05:58:10,857.857 INFO    ] Checking for existing commands in stream...
[2026-06-12 05:58:10,960.960 INFO    ] No existing commands found in stream
[2026-06-12 05:58:15,974.974 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 05:58:15,977.977 INFO    ] Waiting 1.13 seconds before fallback handling...
[2026-06-12 05:58:17,496.496 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 05:58:17,497.497 INFO    ] Checking for system updates...
[2026-06-12 05:58:17,520.520 INFO    ] 200
[2026-06-12 05:58:17,521.521 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:58:17,555.555 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 05:58:17,556.556 INFO    ] No update needed
[2026-06-12 05:58:17,557.557 INFO    ] Checking for camera pi updates...
[2026-06-12 05:58:17,577.577 INFO    ] 200
[2026-06-12 05:58:17,579.579 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:58:17,603.603 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 05:58:17,649.649 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 05:58:17,651.651 INFO    ] No camera update needed
[2026-06-12 05:58:17,652.652 INFO    ] Script finished. Safe exiting...
[2026-06-12 05:58:17,653.653 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 05:58:17,657.657 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 05:58:17,660.660 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 05:58:19,698.698 INFO    ] ================================================
[2026-06-12 05:58:19,714.714 INFO    ] Launching Daemon at Fri Jun 12 05:58:19 IST 2026
[2026-06-12 05:58:19,725.725 INFO    ] ================================================
[2026-06-12 05:58:20,074.074 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 05:58:20
[2026-06-12 05:58:20,385.385 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 05:58:20,521.521 INFO    ] Initializing speech engine...
[2026-06-12 05:58:20,534.534 INFO    ] 2026-06-12 05:58:20
[2026-06-12 05:58:20,753.753 INFO    ] 2026-06-12 05:58:20
[2026-06-12 05:58:20,782.782 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 05:58:20,984.984 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 05:58:20,993.993 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 05:58:21,130.130 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 05:58:21,172.172 INFO    ] time= 12/06/2026 05:58:21
[2026-06-12 05:58:21,211.211 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 05:58:21,235.235 INFO    ] Checking for existing commands in stream...
[2026-06-12 05:58:21,310.310 INFO    ] No existing commands found in stream
[2026-06-12 05:58:26,321.321 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 05:58:26,324.324 INFO    ] Waiting 2.90 seconds before fallback handling...
[2026-06-12 05:58:29,644.644 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 05:58:29,647.647 INFO    ] Checking for system updates...
[2026-06-12 05:58:29,690.690 INFO    ] 200
[2026-06-12 05:58:29,693.693 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:58:29,755.755 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 05:58:29,758.758 INFO    ] No update needed
[2026-06-12 05:58:29,761.761 INFO    ] Checking for camera pi updates...
[2026-06-12 05:58:29,784.784 INFO    ] 200
[2026-06-12 05:58:29,785.785 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:58:29,808.808 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 05:58:29,851.851 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 05:58:29,853.853 INFO    ] No camera update needed
[2026-06-12 05:58:29,854.854 INFO    ] Script finished. Safe exiting...
[2026-06-12 05:58:29,855.855 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 05:58:29,858.858 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 05:58:29,861.861 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 05:58:31,902.902 INFO    ] ================================================
[2026-06-12 05:58:31,925.925 INFO    ] Launching Daemon at Fri Jun 12 05:58:31 IST 2026
[2026-06-12 05:58:31,937.937 INFO    ] ================================================
[2026-06-12 05:58:32,274.274 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 05:58:32
[2026-06-12 05:58:32,617.617 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 05:58:32,755.755 INFO    ] Initializing speech engine...
[2026-06-12 05:58:32,768.768 INFO    ] 2026-06-12 05:58:32
[2026-06-12 05:58:32,974.974 INFO    ] 2026-06-12 05:58:32
[2026-06-12 05:58:33,004.004 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 05:58:33,144.144 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 05:58:33,196.196 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 05:58:33,344.344 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 05:58:33,396.396 INFO    ] time= 12/06/2026 05:58:33
[2026-06-12 05:58:33,461.461 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 05:58:33,501.501 INFO    ] Checking for existing commands in stream...
[2026-06-12 05:58:33,606.606 INFO    ] No existing commands found in stream
[2026-06-12 05:58:38,615.615 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 05:58:38,618.618 INFO    ] Waiting 1.92 seconds before fallback handling...
[2026-06-12 05:58:40,929.929 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 05:58:40,931.931 INFO    ] Checking for system updates...
[2026-06-12 05:58:40,951.951 INFO    ] 200
[2026-06-12 05:58:40,953.953 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:58:40,983.983 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 05:58:40,984.984 INFO    ] No update needed
[2026-06-12 05:58:40,986.986 INFO    ] Checking for camera pi updates...
[2026-06-12 05:58:41,008.008 INFO    ] 200
[2026-06-12 05:58:41,009.009 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:58:41,032.032 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 05:58:41,067.067 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 05:58:41,068.068 INFO    ] No camera update needed
[2026-06-12 05:58:41,070.070 INFO    ] Script finished. Safe exiting...
[2026-06-12 05:58:41,071.071 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 05:58:41,074.074 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 05:58:41,077.077 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 05:58:43,115.115 INFO    ] ================================================
[2026-06-12 05:58:43,131.131 INFO    ] Launching Daemon at Fri Jun 12 05:58:43 IST 2026
[2026-06-12 05:58:43,142.142 INFO    ] ================================================
[2026-06-12 05:58:43,483.483 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 05:58:43
[2026-06-12 05:58:43,795.795 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 05:58:43,931.931 INFO    ] Initializing speech engine...
[2026-06-12 05:58:43,945.945 INFO    ] 2026-06-12 05:58:43
[2026-06-12 05:58:44,145.145 INFO    ] 2026-06-12 05:58:44
[2026-06-12 05:58:44,172.172 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 05:58:44,357.357 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 05:58:44,367.367 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 05:58:44,551.551 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 05:58:44,583.583 INFO    ] time= 12/06/2026 05:58:44
[2026-06-12 05:58:44,589.589 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 05:58:44,591.591 INFO    ] Checking for existing commands in stream...
[2026-06-12 05:58:44,709.709 INFO    ] No existing commands found in stream
[2026-06-12 05:58:49,719.719 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 05:58:49,722.722 INFO    ] Waiting 3.59 seconds before fallback handling...
[2026-06-12 05:58:53,708.708 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 05:58:53,710.710 INFO    ] Checking for system updates...
[2026-06-12 05:58:53,733.733 INFO    ] 200
[2026-06-12 05:58:53,734.734 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:58:53,770.770 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 05:58:53,771.771 INFO    ] No update needed
[2026-06-12 05:58:53,773.773 INFO    ] Checking for camera pi updates...
[2026-06-12 05:58:53,795.795 INFO    ] 200
[2026-06-12 05:58:53,796.796 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:58:53,820.820 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 05:58:53,871.871 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 05:58:53,872.872 INFO    ] No camera update needed
[2026-06-12 05:58:53,874.874 INFO    ] Script finished. Safe exiting...
[2026-06-12 05:58:53,875.875 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 05:58:53,878.878 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 05:58:53,881.881 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 05:58:55,920.920 INFO    ] ================================================
[2026-06-12 05:58:55,935.935 INFO    ] Launching Daemon at Fri Jun 12 05:58:55 IST 2026
[2026-06-12 05:58:55,946.946 INFO    ] ================================================
[2026-06-12 05:58:56,276.276 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 05:58:56
[2026-06-12 05:58:56,587.587 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 05:58:56,730.730 INFO    ] Initializing speech engine...
[2026-06-12 05:58:56,734.734 INFO    ] 2026-06-12 05:58:56
[2026-06-12 05:58:56,936.936 INFO    ] 2026-06-12 05:58:56
[2026-06-12 05:58:56,964.964 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 05:58:57,147.147 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 05:58:57,157.157 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 05:58:57,338.338 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 05:58:57,375.375 INFO    ] time= 12/06/2026 05:58:57
[2026-06-12 05:58:57,377.377 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 05:58:57,383.383 INFO    ] Checking for existing commands in stream...
[2026-06-12 05:58:57,450.450 INFO    ] No existing commands found in stream
[2026-06-12 05:59:02,478.478 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 05:59:02,479.479 INFO    ] Waiting 1.34 seconds before fallback handling...
[2026-06-12 05:59:04,169.169 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 05:59:04,170.170 INFO    ] Checking for system updates...
[2026-06-12 05:59:04,191.191 INFO    ] 200
[2026-06-12 05:59:04,192.192 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:59:04,225.225 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 05:59:04,226.226 INFO    ] No update needed
[2026-06-12 05:59:04,227.227 INFO    ] Checking for camera pi updates...
[2026-06-12 05:59:04,246.246 INFO    ] 200
[2026-06-12 05:59:04,248.248 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:59:04,274.274 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 05:59:04,315.315 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 05:59:04,316.316 INFO    ] No camera update needed
[2026-06-12 05:59:04,317.317 INFO    ] Script finished. Safe exiting...
[2026-06-12 05:59:04,318.318 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 05:59:04,322.322 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 05:59:04,324.324 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 05:59:06,364.364 INFO    ] ================================================
[2026-06-12 05:59:06,379.379 INFO    ] Launching Daemon at Fri Jun 12 05:59:06 IST 2026
[2026-06-12 05:59:06,390.390 INFO    ] ================================================
[2026-06-12 05:59:06,734.734 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 05:59:06
[2026-06-12 05:59:07,050.050 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 05:59:07,178.178 INFO    ] Initializing speech engine...
[2026-06-12 05:59:07,183.183 INFO    ] 2026-06-12 05:59:07
[2026-06-12 05:59:07,399.399 INFO    ] 2026-06-12 05:59:07
[2026-06-12 05:59:07,427.427 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 05:59:07,612.612 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 05:59:07,622.622 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 05:59:07,765.765 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 05:59:07,817.817 INFO    ] time= 12/06/2026 05:59:07
[2026-06-12 05:59:07,841.841 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 05:59:07,847.847 INFO    ] Checking for existing commands in stream...
[2026-06-12 05:59:07,939.939 INFO    ] No existing commands found in stream
[2026-06-12 05:59:12,948.948 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 05:59:12,951.951 INFO    ] Waiting 1.48 seconds before fallback handling...
[2026-06-12 05:59:14,858.858 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 05:59:14,860.860 INFO    ] Checking for system updates...
[2026-06-12 05:59:14,881.881 INFO    ] 200
[2026-06-12 05:59:14,882.882 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:59:14,912.912 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 05:59:14,914.914 INFO    ] No update needed
[2026-06-12 05:59:14,915.915 INFO    ] Checking for camera pi updates...
[2026-06-12 05:59:14,936.936 INFO    ] 200
[2026-06-12 05:59:14,938.938 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:59:14,965.965 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 05:59:15,005.005 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 05:59:15,007.007 INFO    ] No camera update needed
[2026-06-12 05:59:15,008.008 INFO    ] Script finished. Safe exiting...
[2026-06-12 05:59:15,009.009 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 05:59:15,012.012 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 05:59:15,015.015 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 05:59:17,057.057 INFO    ] ================================================
[2026-06-12 05:59:17,073.073 INFO    ] Launching Daemon at Fri Jun 12 05:59:17 IST 2026
[2026-06-12 05:59:17,084.084 INFO    ] ================================================
[2026-06-12 05:59:17,432.432 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 05:59:17
[2026-06-12 05:59:17,767.767 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 05:59:17,917.917 INFO    ] Initializing speech engine...
[2026-06-12 05:59:17,923.923 INFO    ] 2026-06-12 05:59:17
[2026-06-12 05:59:18,131.131 INFO    ] 2026-06-12 05:59:18
[2026-06-12 05:59:18,159.159 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 05:59:18,343.343 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 05:59:18,354.354 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 05:59:18,547.547 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 05:59:18,572.572 INFO    ] time= 12/06/2026 05:59:18
[2026-06-12 05:59:18,578.578 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 05:59:18,580.580 INFO    ] Checking for existing commands in stream...
[2026-06-12 05:59:18,647.647 INFO    ] No existing commands found in stream
[2026-06-12 05:59:23,656.656 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 05:59:23,659.659 INFO    ] Waiting 3.86 seconds before fallback handling...
[2026-06-12 05:59:27,931.931 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 05:59:27,933.933 INFO    ] Checking for system updates...
[2026-06-12 05:59:27,956.956 INFO    ] 200
[2026-06-12 05:59:27,957.957 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:59:27,990.990 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 05:59:27,991.991 INFO    ] No update needed
[2026-06-12 05:59:27,993.993 INFO    ] Checking for camera pi updates...
[2026-06-12 05:59:28,012.012 INFO    ] 200
[2026-06-12 05:59:28,014.014 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:59:28,039.039 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 05:59:28,079.079 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 05:59:28,081.081 INFO    ] No camera update needed
[2026-06-12 05:59:28,082.082 INFO    ] Script finished. Safe exiting...
[2026-06-12 05:59:28,083.083 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 05:59:28,087.087 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 05:59:28,090.090 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 05:59:30,128.128 INFO    ] ================================================
[2026-06-12 05:59:30,144.144 INFO    ] Launching Daemon at Fri Jun 12 05:59:30 IST 2026
[2026-06-12 05:59:30,155.155 INFO    ] ================================================
[2026-06-12 05:59:30,508.508 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 05:59:30
[2026-06-12 05:59:30,824.824 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 05:59:30,958.958 INFO    ] Initializing speech engine...
[2026-06-12 05:59:30,963.963 INFO    ] 2026-06-12 05:59:30
[2026-06-12 05:59:31,164.164 INFO    ] 2026-06-12 05:59:31
[2026-06-12 05:59:31,215.215 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 05:59:31,415.415 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 05:59:31,460.460 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 05:59:31,619.619 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 05:59:31,689.689 INFO    ] time= 12/06/2026 05:59:31
[2026-06-12 05:59:31,728.728 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 05:59:31,731.731 INFO    ] Checking for existing commands in stream...
[2026-06-12 05:59:31,813.813 INFO    ] No existing commands found in stream
[2026-06-12 05:59:36,822.822 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 05:59:36,825.825 INFO    ] Waiting 1.28 seconds before fallback handling...
[2026-06-12 05:59:38,478.478 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 05:59:38,479.479 INFO    ] Checking for system updates...
[2026-06-12 05:59:38,500.500 INFO    ] 200
[2026-06-12 05:59:38,502.502 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:59:38,533.533 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 05:59:38,534.534 INFO    ] No update needed
[2026-06-12 05:59:38,535.535 INFO    ] Checking for camera pi updates...
[2026-06-12 05:59:38,557.557 INFO    ] 200
[2026-06-12 05:59:38,559.559 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:59:38,582.582 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 05:59:38,624.624 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 05:59:38,626.626 INFO    ] No camera update needed
[2026-06-12 05:59:38,627.627 INFO    ] Script finished. Safe exiting...
[2026-06-12 05:59:38,628.628 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 05:59:38,631.631 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 05:59:38,634.634 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 05:59:40,672.672 INFO    ] ================================================
[2026-06-12 05:59:40,687.687 INFO    ] Launching Daemon at Fri Jun 12 05:59:40 IST 2026
[2026-06-12 05:59:40,697.697 INFO    ] ================================================
[2026-06-12 05:59:41,050.050 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 05:59:41
[2026-06-12 05:59:41,364.364 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 05:59:41,507.507 INFO    ] Initializing speech engine...
[2026-06-12 05:59:41,512.512 INFO    ] 2026-06-12 05:59:41
[2026-06-12 05:59:41,716.716 INFO    ] 2026-06-12 05:59:41
[2026-06-12 05:59:41,744.744 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 05:59:41,926.926 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 05:59:41,935.935 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 05:59:42,073.073 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 05:59:42,130.130 INFO    ] time= 12/06/2026 05:59:42
[2026-06-12 05:59:42,153.153 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 05:59:42,159.159 INFO    ] Checking for existing commands in stream...
[2026-06-12 05:59:42,226.226 INFO    ] No existing commands found in stream
[2026-06-12 05:59:47,240.240 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 05:59:47,243.243 INFO    ] Waiting 1.44 seconds before fallback handling...
[2026-06-12 05:59:49,076.076 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 05:59:49,077.077 INFO    ] Checking for system updates...
[2026-06-12 05:59:49,098.098 INFO    ] 200
[2026-06-12 05:59:49,099.099 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:59:49,130.130 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 05:59:49,132.132 INFO    ] No update needed
[2026-06-12 05:59:49,133.133 INFO    ] Checking for camera pi updates...
[2026-06-12 05:59:49,153.153 INFO    ] 200
[2026-06-12 05:59:49,154.154 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 05:59:49,178.178 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 05:59:49,217.217 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 05:59:49,219.219 INFO    ] No camera update needed
[2026-06-12 05:59:49,220.220 INFO    ] Script finished. Safe exiting...
[2026-06-12 05:59:49,222.222 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 05:59:49,225.225 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 05:59:49,228.228 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 05:59:51,271.271 INFO    ] ================================================
[2026-06-12 05:59:51,286.286 INFO    ] Launching Daemon at Fri Jun 12 05:59:51 IST 2026
[2026-06-12 05:59:51,296.296 INFO    ] ================================================
[2026-06-12 05:59:51,621.621 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 05:59:51
[2026-06-12 05:59:51,932.932 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 05:59:52,063.063 INFO    ] Initializing speech engine...
[2026-06-12 05:59:52,066.066 INFO    ] 2026-06-12 05:59:52
[2026-06-12 05:59:52,282.282 INFO    ] 2026-06-12 05:59:52
[2026-06-12 05:59:52,312.312 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 05:59:52,506.506 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 05:59:52,512.512 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 05:59:52,708.708 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 05:59:52,732.732 INFO    ] time= 12/06/2026 05:59:52
[2026-06-12 05:59:52,738.738 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 05:59:52,739.739 INFO    ] Checking for existing commands in stream...
[2026-06-12 05:59:52,807.807 INFO    ] No existing commands found in stream
[2026-06-12 05:59:57,827.827 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 05:59:57,830.830 INFO    ] Waiting 3.70 seconds before fallback handling...
[2026-06-12 06:00:02,101.101 INFO    ] <class 'urllib3.exceptions.MaxRetryError'>
[2026-06-12 06:00:02,148.148 INFO    ] ("HTTPSConnectionPool(host='neuustore.com', port=443): Max retries exceeded with url: /tm/process-order/getorder/TM09202301 (Caused by NewConnectionError('<urllib3.connection.VerifiedHTTPSConnection object at 0x73d516b0>: Failed to establish a new connection: [Errno 111] Connection refused',))",)
[2026-06-12 06:00:02,181.181 INFO    ] HTTPSConnectionPool(host='neuustore.com', port=443): Max retries exceeded with url: /tm/process-order/getorder/TM09202301 (Caused by NewConnectionError('<urllib3.connection.VerifiedHTTPSConnection object at 0x73d516b0>: Failed to establish a new connection: [Errno 111] Connection refused',))
[2026-06-12 06:00:02,193.193 INFO    ] None
[2026-06-12 06:00:02,195.195 INFO    ] Checking for system updates...
[2026-06-12 06:00:02,268.268 INFO    ] 200
[2026-06-12 06:00:02,280.280 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:00:02,518.518 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 06:00:02,520.520 INFO    ] No update needed
[2026-06-12 06:00:02,522.522 INFO    ] Checking for camera pi updates...
[2026-06-12 06:00:02,623.623 INFO    ] 200
[2026-06-12 06:00:02,625.625 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:00:02,751.751 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 06:00:03,006.006 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 06:00:03,008.008 INFO    ] No camera update needed
[2026-06-12 06:00:03,011.011 INFO    ] Script finished. Safe exiting...
[2026-06-12 06:00:03,013.013 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 06:00:03,017.017 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 06:00:03,042.042 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 06:00:05,079.079 INFO    ] ================================================
[2026-06-12 06:00:05,095.095 INFO    ] Launching Daemon at Fri Jun 12 06:00:05 IST 2026
[2026-06-12 06:00:05,106.106 INFO    ] ================================================
[2026-06-12 06:00:05,464.464 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 06:00:05
[2026-06-12 06:00:05,798.798 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 06:00:05,952.952 INFO    ] Initializing speech engine...
[2026-06-12 06:00:05,955.955 INFO    ] 2026-06-12 06:00:05
[2026-06-12 06:00:06,161.161 INFO    ] 2026-06-12 06:00:06
[2026-06-12 06:00:06,192.192 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 06:00:06,376.376 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 06:00:06,384.384 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 06:00:06,570.570 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 06:00:06,603.603 INFO    ] time= 12/06/2026 06:00:06
[2026-06-12 06:00:06,609.609 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 06:00:06,611.611 INFO    ] Checking for existing commands in stream...
[2026-06-12 06:00:06,702.702 INFO    ] No existing commands found in stream
[2026-06-12 06:00:11,716.716 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 06:00:11,719.719 INFO    ] Waiting 1.80 seconds before fallback handling...
[2026-06-12 06:00:13,910.910 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 06:00:13,911.911 INFO    ] Checking for system updates...
[2026-06-12 06:00:13,932.932 INFO    ] 200
[2026-06-12 06:00:13,934.934 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:00:13,966.966 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 06:00:13,967.967 INFO    ] No update needed
[2026-06-12 06:00:13,969.969 INFO    ] Checking for camera pi updates...
[2026-06-12 06:00:13,988.988 INFO    ] 200
[2026-06-12 06:00:13,989.989 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:00:14,013.013 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 06:00:14,047.047 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 06:00:14,049.049 INFO    ] No camera update needed
[2026-06-12 06:00:14,050.050 INFO    ] Script finished. Safe exiting...
[2026-06-12 06:00:14,051.051 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 06:00:14,054.054 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 06:00:14,057.057 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 06:00:16,096.096 INFO    ] ================================================
[2026-06-12 06:00:16,111.111 INFO    ] Launching Daemon at Fri Jun 12 06:00:16 IST 2026
[2026-06-12 06:00:16,122.122 INFO    ] ================================================
[2026-06-12 06:00:16,478.478 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 06:00:16
[2026-06-12 06:00:16,808.808 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 06:00:16,951.951 INFO    ] Initializing speech engine...
[2026-06-12 06:00:16,958.958 INFO    ] 2026-06-12 06:00:16
[2026-06-12 06:00:17,173.173 INFO    ] 2026-06-12 06:00:17
[2026-06-12 06:00:17,202.202 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 06:00:17,424.424 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 06:00:17,454.454 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 06:00:17,640.640 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 06:00:17,666.666 INFO    ] time= 12/06/2026 06:00:17
[2026-06-12 06:00:17,668.668 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 06:00:17,670.670 INFO    ] Checking for existing commands in stream...
[2026-06-12 06:00:17,737.737 INFO    ] No existing commands found in stream
[2026-06-12 06:00:22,751.751 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 06:00:22,752.752 INFO    ] Waiting 3.02 seconds before fallback handling...
[2026-06-12 06:00:26,179.179 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 06:00:26,624.624 INFO    ] Checking for system updates...
[2026-06-12 06:00:26,657.657 INFO    ] 200
[2026-06-12 06:00:26,660.660 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:00:26,720.720 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 06:00:26,723.723 INFO    ] No update needed
[2026-06-12 06:00:26,725.725 INFO    ] Checking for camera pi updates...
[2026-06-12 06:00:26,748.748 INFO    ] 200
[2026-06-12 06:00:26,749.749 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:00:26,774.774 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 06:00:26,854.854 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 06:00:26,856.856 INFO    ] No camera update needed
[2026-06-12 06:00:26,857.857 INFO    ] Script finished. Safe exiting...
[2026-06-12 06:00:26,858.858 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 06:00:26,861.861 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 06:00:26,864.864 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 06:00:28,904.904 INFO    ] ================================================
[2026-06-12 06:00:28,919.919 INFO    ] Launching Daemon at Fri Jun 12 06:00:28 IST 2026
[2026-06-12 06:00:28,930.930 INFO    ] ================================================
[2026-06-12 06:00:29,282.282 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 06:00:29
[2026-06-12 06:00:29,617.617 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 06:00:29,763.763 INFO    ] Initializing speech engine...
[2026-06-12 06:00:29,772.772 INFO    ] 2026-06-12 06:00:29
[2026-06-12 06:00:29,984.984 INFO    ] 2026-06-12 06:00:29
[2026-06-12 06:00:30,013.013 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 06:00:30,200.200 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 06:00:30,211.211 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 06:00:30,406.406 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 06:00:30,432.432 INFO    ] time= 12/06/2026 06:00:30
[2026-06-12 06:00:30,437.437 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 06:00:30,439.439 INFO    ] Checking for existing commands in stream...
[2026-06-12 06:00:30,508.508 INFO    ] No existing commands found in stream
[2026-06-12 06:00:35,517.517 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 06:00:35,521.521 INFO    ] Waiting 1.75 seconds before fallback handling...
[2026-06-12 06:00:37,704.704 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 06:00:37,706.706 INFO    ] Checking for system updates...
[2026-06-12 06:00:37,727.727 INFO    ] 200
[2026-06-12 06:00:37,728.728 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:00:37,761.761 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 06:00:37,762.762 INFO    ] No update needed
[2026-06-12 06:00:37,763.763 INFO    ] Checking for camera pi updates...
[2026-06-12 06:00:37,784.784 INFO    ] 200
[2026-06-12 06:00:37,785.785 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:00:37,810.810 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 06:00:37,849.849 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 06:00:37,851.851 INFO    ] No camera update needed
[2026-06-12 06:00:37,852.852 INFO    ] Script finished. Safe exiting...
[2026-06-12 06:00:37,853.853 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 06:00:37,856.856 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 06:00:37,859.859 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 06:00:39,897.897 INFO    ] ================================================
[2026-06-12 06:00:39,913.913 INFO    ] Launching Daemon at Fri Jun 12 06:00:39 IST 2026
[2026-06-12 06:00:39,923.923 INFO    ] ================================================
[2026-06-12 06:00:40,283.283 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 06:00:40
[2026-06-12 06:00:40,594.594 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 06:00:40,742.742 INFO    ] Initializing speech engine...
[2026-06-12 06:00:40,748.748 INFO    ] 2026-06-12 06:00:40
[2026-06-12 06:00:40,945.945 INFO    ] 2026-06-12 06:00:40
[2026-06-12 06:00:40,973.973 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 06:00:41,156.156 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 06:00:41,165.165 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 06:00:41,350.350 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 06:00:41,382.382 INFO    ] time= 12/06/2026 06:00:41
[2026-06-12 06:00:41,389.389 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 06:00:41,391.391 INFO    ] Checking for existing commands in stream...
[2026-06-12 06:00:41,457.457 INFO    ] No existing commands found in stream
[2026-06-12 06:00:46,466.466 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 06:00:46,473.473 INFO    ] Waiting 1.62 seconds before fallback handling...
[2026-06-12 06:00:48,472.472 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 06:00:48,473.473 INFO    ] Checking for system updates...
[2026-06-12 06:00:48,495.495 INFO    ] 200
[2026-06-12 06:00:48,496.496 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:00:48,529.529 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 06:00:48,530.530 INFO    ] No update needed
[2026-06-12 06:00:48,532.532 INFO    ] Checking for camera pi updates...
[2026-06-12 06:00:48,552.552 INFO    ] 200
[2026-06-12 06:00:48,554.554 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:00:48,576.576 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 06:00:48,617.617 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 06:00:48,618.618 INFO    ] No camera update needed
[2026-06-12 06:00:48,619.619 INFO    ] Script finished. Safe exiting...
[2026-06-12 06:00:48,621.621 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 06:00:48,624.624 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 06:00:48,626.626 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 06:00:50,665.665 INFO    ] ================================================
[2026-06-12 06:00:50,681.681 INFO    ] Launching Daemon at Fri Jun 12 06:00:50 IST 2026
[2026-06-12 06:00:50,692.692 INFO    ] ================================================
[2026-06-12 06:00:51,064.064 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 06:00:51
[2026-06-12 06:00:51,376.376 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 06:00:51,520.520 INFO    ] Initializing speech engine...
[2026-06-12 06:00:51,525.525 INFO    ] 2026-06-12 06:00:51
[2026-06-12 06:00:51,732.732 INFO    ] 2026-06-12 06:00:51
[2026-06-12 06:00:51,761.761 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 06:00:51,954.954 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 06:00:51,957.957 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 06:00:52,152.152 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 06:00:52,187.187 INFO    ] time= 12/06/2026 06:00:52
[2026-06-12 06:00:52,193.193 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 06:00:52,195.195 INFO    ] Checking for existing commands in stream...
[2026-06-12 06:00:52,263.263 INFO    ] No existing commands found in stream
[2026-06-12 06:00:57,272.272 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 06:00:57,274.274 INFO    ] Waiting 2.31 seconds before fallback handling...
[2026-06-12 06:00:59,972.972 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 06:00:59,974.974 INFO    ] Checking for system updates...
[2026-06-12 06:00:59,996.996 INFO    ] 200
[2026-06-12 06:00:59,997.997 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:01:00,028.028 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 06:01:00,029.029 INFO    ] No update needed
[2026-06-12 06:01:00,030.030 INFO    ] Checking for camera pi updates...
[2026-06-12 06:01:00,053.053 INFO    ] 200
[2026-06-12 06:01:00,054.054 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:01:00,077.077 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 06:01:00,122.122 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 06:01:00,123.123 INFO    ] No camera update needed
[2026-06-12 06:01:00,125.125 INFO    ] Script finished. Safe exiting...
[2026-06-12 06:01:00,126.126 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 06:01:00,129.129 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 06:01:00,132.132 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 06:01:02,170.170 INFO    ] ================================================
[2026-06-12 06:01:02,182.182 INFO    ] Launching Daemon at Fri Jun 12 06:01:02 IST 2026
[2026-06-12 06:01:02,191.191 INFO    ] ================================================
[2026-06-12 06:01:02,525.525 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 06:01:02
[2026-06-12 06:01:02,849.849 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 06:01:02,998.998 INFO    ] Initializing speech engine...
[2026-06-12 06:01:03,004.004 INFO    ] 2026-06-12 06:01:02
[2026-06-12 06:01:03,220.220 INFO    ] 2026-06-12 06:01:03
[2026-06-12 06:01:03,250.250 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 06:01:03,449.449 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 06:01:03,453.453 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 06:01:03,611.611 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 06:01:03,673.673 INFO    ] time= 12/06/2026 06:01:03
[2026-06-12 06:01:03,699.699 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 06:01:03,701.701 INFO    ] Checking for existing commands in stream...
[2026-06-12 06:01:03,779.779 INFO    ] No existing commands found in stream
[2026-06-12 06:01:08,793.793 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 06:01:08,796.796 INFO    ] Waiting 1.20 seconds before fallback handling...
[2026-06-12 06:01:10,396.396 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 06:01:10,398.398 INFO    ] Checking for system updates...
[2026-06-12 06:01:10,420.420 INFO    ] 200
[2026-06-12 06:01:10,421.421 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:01:10,452.452 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 06:01:10,453.453 INFO    ] No update needed
[2026-06-12 06:01:10,454.454 INFO    ] Checking for camera pi updates...
[2026-06-12 06:01:10,475.475 INFO    ] 200
[2026-06-12 06:01:10,476.476 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:01:10,501.501 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 06:01:10,541.541 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 06:01:10,542.542 INFO    ] No camera update needed
[2026-06-12 06:01:10,543.543 INFO    ] Script finished. Safe exiting...
[2026-06-12 06:01:10,544.544 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 06:01:10,547.547 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 06:01:10,550.550 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 06:01:12,589.589 INFO    ] ================================================
[2026-06-12 06:01:12,604.604 INFO    ] Launching Daemon at Fri Jun 12 06:01:12 IST 2026
[2026-06-12 06:01:12,616.616 INFO    ] ================================================
[2026-06-12 06:01:12,983.983 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 06:01:12
[2026-06-12 06:01:13,321.321 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 06:01:13,467.467 INFO    ] Initializing speech engine...
[2026-06-12 06:01:13,478.478 INFO    ] 2026-06-12 06:01:13
[2026-06-12 06:01:13,689.689 INFO    ] 2026-06-12 06:01:13
[2026-06-12 06:01:13,718.718 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 06:01:13,906.906 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 06:01:13,916.916 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 06:01:14,069.069 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 06:01:14,120.120 INFO    ] time= 12/06/2026 06:01:14
[2026-06-12 06:01:14,142.142 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 06:01:14,148.148 INFO    ] Checking for existing commands in stream...
[2026-06-12 06:01:14,217.217 INFO    ] No existing commands found in stream
[2026-06-12 06:01:19,231.231 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 06:01:19,234.234 INFO    ] Waiting 1.31 seconds before fallback handling...
[2026-06-12 06:01:22,015.015 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 06:01:22,016.016 INFO    ] Checking for system updates...
[2026-06-12 06:01:22,038.038 INFO    ] 200
[2026-06-12 06:01:22,039.039 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:01:22,072.072 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 06:01:22,073.073 INFO    ] No update needed
[2026-06-12 06:01:22,075.075 INFO    ] Checking for camera pi updates...
[2026-06-12 06:01:22,095.095 INFO    ] 200
[2026-06-12 06:01:22,096.096 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:01:22,119.119 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 06:01:22,152.152 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 06:01:22,154.154 INFO    ] No camera update needed
[2026-06-12 06:01:22,155.155 INFO    ] Script finished. Safe exiting...
[2026-06-12 06:01:22,156.156 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 06:01:22,159.159 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 06:01:22,162.162 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 06:01:24,202.202 INFO    ] ================================================
[2026-06-12 06:01:24,218.218 INFO    ] Launching Daemon at Fri Jun 12 06:01:24 IST 2026
[2026-06-12 06:01:24,229.229 INFO    ] ================================================
[2026-06-12 06:01:24,602.602 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 06:01:24
[2026-06-12 06:01:24,943.943 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 06:01:25,097.097 INFO    ] Initializing speech engine...
[2026-06-12 06:01:25,102.102 INFO    ] 2026-06-12 06:01:25
[2026-06-12 06:01:25,310.310 INFO    ] 2026-06-12 06:01:25
[2026-06-12 06:01:25,339.339 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 06:01:25,523.523 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 06:01:25,533.533 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 06:01:25,679.679 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 06:01:25,733.733 INFO    ] time= 12/06/2026 06:01:25
[2026-06-12 06:01:25,754.754 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 06:01:25,761.761 INFO    ] Checking for existing commands in stream...
[2026-06-12 06:01:25,827.827 INFO    ] No existing commands found in stream
[2026-06-12 06:01:30,833.833 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 06:01:30,836.836 INFO    ] Waiting 0.50 seconds before fallback handling...
[2026-06-12 06:01:31,767.767 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 06:01:31,770.770 INFO    ] Checking for system updates...
[2026-06-12 06:01:31,798.798 INFO    ] 200
[2026-06-12 06:01:31,799.799 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:01:31,858.858 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 06:01:31,860.860 INFO    ] No update needed
[2026-06-12 06:01:31,861.861 INFO    ] Checking for camera pi updates...
[2026-06-12 06:01:31,885.885 INFO    ] 200
[2026-06-12 06:01:31,887.887 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:01:31,915.915 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 06:01:31,954.954 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 06:01:31,956.956 INFO    ] No camera update needed
[2026-06-12 06:01:31,958.958 INFO    ] Script finished. Safe exiting...
[2026-06-12 06:01:31,959.959 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 06:01:31,963.963 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 06:01:31,966.966 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 06:01:34,006.006 INFO    ] ================================================
[2026-06-12 06:01:34,022.022 INFO    ] Launching Daemon at Fri Jun 12 06:01:34 IST 2026
[2026-06-12 06:01:34,033.033 INFO    ] ================================================
[2026-06-12 06:01:34,391.391 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 06:01:34
[2026-06-12 06:01:34,732.732 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 06:01:34,873.873 INFO    ] Initializing speech engine...
[2026-06-12 06:01:34,881.881 INFO    ] 2026-06-12 06:01:34
[2026-06-12 06:01:35,098.098 INFO    ] 2026-06-12 06:01:35
[2026-06-12 06:01:35,128.128 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 06:01:35,318.318 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 06:01:35,328.328 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 06:01:35,453.453 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 06:01:35,505.505 INFO    ] time= 12/06/2026 06:01:35
[2026-06-12 06:01:35,559.559 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 06:01:35,601.601 INFO    ] Checking for existing commands in stream...
[2026-06-12 06:01:35,681.681 INFO    ] No existing commands found in stream
[2026-06-12 06:01:40,701.701 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 06:01:40,704.704 INFO    ] Waiting 0.65 seconds before fallback handling...
[2026-06-12 06:01:41,744.744 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 06:01:41,746.746 INFO    ] Checking for system updates...
[2026-06-12 06:01:41,767.767 INFO    ] 200
[2026-06-12 06:01:41,768.768 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:01:41,802.802 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 06:01:41,804.804 INFO    ] No update needed
[2026-06-12 06:01:41,805.805 INFO    ] Checking for camera pi updates...
[2026-06-12 06:01:41,829.829 INFO    ] 200
[2026-06-12 06:01:41,830.830 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:01:41,863.863 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 06:01:41,903.903 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 06:01:41,905.905 INFO    ] No camera update needed
[2026-06-12 06:01:41,906.906 INFO    ] Script finished. Safe exiting...
[2026-06-12 06:01:41,908.908 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 06:01:41,911.911 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 06:01:41,914.914 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 06:01:43,954.954 INFO    ] ================================================
[2026-06-12 06:01:43,970.970 INFO    ] Launching Daemon at Fri Jun 12 06:01:43 IST 2026
[2026-06-12 06:01:43,981.981 INFO    ] ================================================
[2026-06-12 06:01:44,371.371 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 06:01:44
[2026-06-12 06:01:44,709.709 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 06:01:44,864.864 INFO    ] Initializing speech engine...
[2026-06-12 06:01:44,869.869 INFO    ] 2026-06-12 06:01:44
[2026-06-12 06:01:45,077.077 INFO    ] 2026-06-12 06:01:45
[2026-06-12 06:01:45,107.107 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 06:01:45,295.295 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 06:01:45,299.299 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 06:01:45,430.430 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 06:01:45,491.491 INFO    ] time= 12/06/2026 06:01:45
[2026-06-12 06:01:45,527.527 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 06:01:45,532.532 INFO    ] Checking for existing commands in stream...
[2026-06-12 06:01:45,605.605 INFO    ] No existing commands found in stream
[2026-06-12 06:01:50,620.620 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 06:01:50,623.623 INFO    ] Waiting 3.36 seconds before fallback handling...
[2026-06-12 06:01:54,384.384 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 06:01:54,386.386 INFO    ] Checking for system updates...
[2026-06-12 06:01:54,407.407 INFO    ] 200
[2026-06-12 06:01:54,408.408 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:01:54,441.441 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 06:01:54,443.443 INFO    ] No update needed
[2026-06-12 06:01:54,444.444 INFO    ] Checking for camera pi updates...
[2026-06-12 06:01:54,465.465 INFO    ] 200
[2026-06-12 06:01:54,466.466 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:01:54,493.493 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 06:01:54,539.539 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 06:01:54,540.540 INFO    ] No camera update needed
[2026-06-12 06:01:54,542.542 INFO    ] Script finished. Safe exiting...
[2026-06-12 06:01:54,543.543 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 06:01:54,546.546 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 06:01:54,549.549 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 06:01:56,590.590 INFO    ] ================================================
[2026-06-12 06:01:56,606.606 INFO    ] Launching Daemon at Fri Jun 12 06:01:56 IST 2026
[2026-06-12 06:01:56,617.617 INFO    ] ================================================
[2026-06-12 06:01:56,961.961 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 06:01:56
[2026-06-12 06:01:57,302.302 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 06:01:57,454.454 INFO    ] Initializing speech engine...
[2026-06-12 06:01:57,459.459 INFO    ] 2026-06-12 06:01:57
[2026-06-12 06:01:57,668.668 INFO    ] 2026-06-12 06:01:57
[2026-06-12 06:01:57,698.698 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 06:01:57,882.882 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 06:01:57,892.892 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 06:01:58,038.038 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 06:01:58,092.092 INFO    ] time= 12/06/2026 06:01:58
[2026-06-12 06:01:58,118.118 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 06:01:58,121.121 INFO    ] Checking for existing commands in stream...
[2026-06-12 06:01:58,188.188 INFO    ] No existing commands found in stream
[2026-06-12 06:02:03,202.202 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 06:02:03,206.206 INFO    ] Waiting 2.79 seconds before fallback handling...
[2026-06-12 06:02:06,416.416 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 06:02:06,417.417 INFO    ] Checking for system updates...
[2026-06-12 06:02:06,439.439 INFO    ] 200
[2026-06-12 06:02:06,441.441 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:02:06,474.474 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 06:02:06,475.475 INFO    ] No update needed
[2026-06-12 06:02:06,476.476 INFO    ] Checking for camera pi updates...
[2026-06-12 06:02:06,499.499 INFO    ] 200
[2026-06-12 06:02:06,500.500 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:02:06,525.525 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 06:02:06,672.672 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 06:02:06,673.673 INFO    ] No camera update needed
[2026-06-12 06:02:06,674.674 INFO    ] Script finished. Safe exiting...
[2026-06-12 06:02:06,676.676 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 06:02:06,679.679 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 06:02:06,682.682 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 06:02:08,722.722 INFO    ] ================================================
[2026-06-12 06:02:08,737.737 INFO    ] Launching Daemon at Fri Jun 12 06:02:08 IST 2026
[2026-06-12 06:02:08,748.748 INFO    ] ================================================
[2026-06-12 06:02:09,136.136 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 06:02:09
[2026-06-12 06:02:09,468.468 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 06:02:09,623.623 INFO    ] Initializing speech engine...
[2026-06-12 06:02:09,626.626 INFO    ] 2026-06-12 06:02:09
[2026-06-12 06:02:09,834.834 INFO    ] 2026-06-12 06:02:09
[2026-06-12 06:02:09,862.862 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 06:02:10,050.050 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 06:02:10,060.060 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 06:02:10,196.196 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 06:02:10,258.258 INFO    ] time= 12/06/2026 06:02:10
[2026-06-12 06:02:10,283.283 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 06:02:10,290.290 INFO    ] Checking for existing commands in stream...
[2026-06-12 06:02:10,381.381 INFO    ] No existing commands found in stream
[2026-06-12 06:02:15,390.390 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 06:02:15,393.393 INFO    ] Waiting 2.01 seconds before fallback handling...
[2026-06-12 06:02:21,518.518 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 06:02:21,521.521 INFO    ] Checking for system updates...
[2026-06-12 06:02:21,562.562 INFO    ] 200
[2026-06-12 06:02:21,565.565 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:02:21,618.618 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 06:02:21,621.621 INFO    ] No update needed
[2026-06-12 06:02:21,624.624 INFO    ] Checking for camera pi updates...
[2026-06-12 06:02:21,646.646 INFO    ] 200
[2026-06-12 06:02:21,648.648 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:02:21,671.671 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 06:02:21,708.708 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 06:02:21,709.709 INFO    ] No camera update needed
[2026-06-12 06:02:21,711.711 INFO    ] Script finished. Safe exiting...
[2026-06-12 06:02:21,712.712 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 06:02:21,715.715 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 06:02:21,718.718 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 06:02:23,758.758 INFO    ] ================================================
[2026-06-12 06:02:23,774.774 INFO    ] Launching Daemon at Fri Jun 12 06:02:23 IST 2026
[2026-06-12 06:02:23,785.785 INFO    ] ================================================
[2026-06-12 06:02:24,140.140 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 06:02:24
[2026-06-12 06:02:24,455.455 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 06:02:24,593.593 INFO    ] Initializing speech engine...
[2026-06-12 06:02:24,604.604 INFO    ] 2026-06-12 06:02:24
[2026-06-12 06:02:24,808.808 INFO    ] 2026-06-12 06:02:24
[2026-06-12 06:02:24,836.836 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 06:02:25,018.018 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 06:02:25,028.028 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 06:02:25,157.157 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 06:02:25,221.221 INFO    ] time= 12/06/2026 06:02:25
[2026-06-12 06:02:25,248.248 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 06:02:25,249.249 INFO    ] Checking for existing commands in stream...
[2026-06-12 06:02:25,321.321 INFO    ] No existing commands found in stream
[2026-06-12 06:02:30,335.335 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 06:02:30,338.338 INFO    ] Waiting 3.50 seconds before fallback handling...
[2026-06-12 06:02:34,264.264 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 06:02:34,265.265 INFO    ] Checking for system updates...
[2026-06-12 06:02:34,287.287 INFO    ] 200
[2026-06-12 06:02:34,288.288 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:02:34,318.318 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 06:02:34,320.320 INFO    ] No update needed
[2026-06-12 06:02:34,321.321 INFO    ] Checking for camera pi updates...
[2026-06-12 06:02:34,340.340 INFO    ] 200
[2026-06-12 06:02:34,342.342 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:02:34,365.365 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 06:02:34,403.403 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 06:02:34,405.405 INFO    ] No camera update needed
[2026-06-12 06:02:34,406.406 INFO    ] Script finished. Safe exiting...
[2026-06-12 06:02:34,407.407 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 06:02:34,410.410 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 06:02:34,413.413 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 06:02:36,456.456 INFO    ] ================================================
[2026-06-12 06:02:36,471.471 INFO    ] Launching Daemon at Fri Jun 12 06:02:36 IST 2026
[2026-06-12 06:02:36,483.483 INFO    ] ================================================
[2026-06-12 06:02:36,862.862 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 06:02:36
[2026-06-12 06:02:37,196.196 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 06:02:37,346.346 INFO    ] Initializing speech engine...
[2026-06-12 06:02:37,351.351 INFO    ] 2026-06-12 06:02:37
[2026-06-12 06:02:37,557.557 INFO    ] 2026-06-12 06:02:37
[2026-06-12 06:02:37,587.587 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 06:02:37,772.772 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 06:02:37,775.775 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 06:02:37,918.918 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 06:02:37,980.980 INFO    ] time= 12/06/2026 06:02:37
[2026-06-12 06:02:38,004.004 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 06:02:38,010.010 INFO    ] Checking for existing commands in stream...
[2026-06-12 06:02:38,077.077 INFO    ] No existing commands found in stream
[2026-06-12 06:02:43,086.086 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 06:02:43,090.090 INFO    ] Waiting 0.35 seconds before fallback handling...
[2026-06-12 06:02:48,851.851 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 06:02:48,853.853 INFO    ] Checking for system updates...
[2026-06-12 06:02:48,876.876 INFO    ] 200
[2026-06-12 06:02:48,877.877 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:02:48,910.910 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 06:02:48,912.912 INFO    ] No update needed
[2026-06-12 06:02:48,913.913 INFO    ] Checking for camera pi updates...
[2026-06-12 06:02:48,934.934 INFO    ] 200
[2026-06-12 06:02:48,935.935 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:02:48,963.963 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 06:02:49,022.022 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 06:02:49,024.024 INFO    ] No camera update needed
[2026-06-12 06:02:49,025.025 INFO    ] Script finished. Safe exiting...
[2026-06-12 06:02:49,027.027 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 06:02:49,030.030 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 06:02:49,033.033 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 06:02:51,073.073 INFO    ] ================================================
[2026-06-12 06:02:51,088.088 INFO    ] Launching Daemon at Fri Jun 12 06:02:51 IST 2026
[2026-06-12 06:02:51,099.099 INFO    ] ================================================
[2026-06-12 06:02:51,428.428 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 06:02:51
[2026-06-12 06:02:51,741.741 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 06:02:51,872.872 INFO    ] Initializing speech engine...
[2026-06-12 06:02:51,879.879 INFO    ] 2026-06-12 06:02:51
[2026-06-12 06:02:52,094.094 INFO    ] 2026-06-12 06:02:52
[2026-06-12 06:02:52,124.124 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 06:02:52,309.309 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 06:02:52,319.319 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 06:02:52,457.457 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 06:02:52,522.522 INFO    ] time= 12/06/2026 06:02:52
[2026-06-12 06:02:52,544.544 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 06:02:52,550.550 INFO    ] Checking for existing commands in stream...
[2026-06-12 06:02:52,619.619 INFO    ] No existing commands found in stream
[2026-06-12 06:02:57,628.628 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 06:02:57,631.631 INFO    ] Waiting 3.20 seconds before fallback handling...
[2026-06-12 06:03:01,212.212 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 06:03:01,214.214 INFO    ] Checking for system updates...
[2026-06-12 06:03:01,234.234 INFO    ] 200
[2026-06-12 06:03:01,236.236 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:03:01,268.268 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 06:03:01,270.270 INFO    ] No update needed
[2026-06-12 06:03:01,271.271 INFO    ] Checking for camera pi updates...
[2026-06-12 06:03:01,291.291 INFO    ] 200
[2026-06-12 06:03:01,292.292 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:03:01,315.315 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 06:03:01,352.352 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 06:03:01,353.353 INFO    ] No camera update needed
[2026-06-12 06:03:01,354.354 INFO    ] Script finished. Safe exiting...
[2026-06-12 06:03:01,355.355 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 06:03:01,358.358 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 06:03:01,361.361 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 06:03:03,397.397 INFO    ] ================================================
[2026-06-12 06:03:03,412.412 INFO    ] Launching Daemon at Fri Jun 12 06:03:03 IST 2026
[2026-06-12 06:03:03,423.423 INFO    ] ================================================
[2026-06-12 06:03:03,783.783 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 06:03:03
[2026-06-12 06:03:04,096.096 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 06:03:04,240.240 INFO    ] Initializing speech engine...
[2026-06-12 06:03:04,245.245 INFO    ] 2026-06-12 06:03:04
[2026-06-12 06:03:04,450.450 INFO    ] 2026-06-12 06:03:04
[2026-06-12 06:03:04,478.478 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 06:03:04,607.607 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 06:03:04,665.665 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 06:03:04,815.815 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 06:03:04,873.873 INFO    ] time= 12/06/2026 06:03:04
[2026-06-12 06:03:04,897.897 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 06:03:04,903.903 INFO    ] Checking for existing commands in stream...
[2026-06-12 06:03:04,971.971 INFO    ] No existing commands found in stream
[2026-06-12 06:03:09,980.980 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 06:03:09,983.983 INFO    ] Waiting 3.38 seconds before fallback handling...
[2026-06-12 06:03:13,739.739 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 06:03:13,740.740 INFO    ] Checking for system updates...
[2026-06-12 06:03:13,761.761 INFO    ] 200
[2026-06-12 06:03:13,763.763 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:03:13,796.796 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 06:03:13,797.797 INFO    ] No update needed
[2026-06-12 06:03:13,798.798 INFO    ] Checking for camera pi updates...
[2026-06-12 06:03:13,819.819 INFO    ] 200
[2026-06-12 06:03:13,820.820 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:03:13,844.844 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 06:03:13,883.883 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 06:03:13,884.884 INFO    ] No camera update needed
[2026-06-12 06:03:13,886.886 INFO    ] Script finished. Safe exiting...
[2026-06-12 06:03:13,887.887 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 06:03:13,890.890 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 06:03:13,893.893 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 06:03:15,933.933 INFO    ] ================================================
[2026-06-12 06:03:15,949.949 INFO    ] Launching Daemon at Fri Jun 12 06:03:15 IST 2026
[2026-06-12 06:03:15,960.960 INFO    ] ================================================
[2026-06-12 06:03:16,337.337 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 06:03:16
[2026-06-12 06:03:16,671.671 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 06:03:16,821.821 INFO    ] Initializing speech engine...
[2026-06-12 06:03:16,827.827 INFO    ] 2026-06-12 06:03:16
[2026-06-12 06:03:17,035.035 INFO    ] 2026-06-12 06:03:17
[2026-06-12 06:03:17,063.063 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 06:03:17,248.248 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 06:03:17,257.257 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 06:03:17,414.414 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 06:03:17,458.458 INFO    ] time= 12/06/2026 06:03:17
[2026-06-12 06:03:17,480.480 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 06:03:17,486.486 INFO    ] Checking for existing commands in stream...
[2026-06-12 06:03:17,553.553 INFO    ] No existing commands found in stream
[2026-06-12 06:03:22,573.573 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 06:03:22,576.576 INFO    ] Waiting 3.94 seconds before fallback handling...
[2026-06-12 06:03:26,881.881 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 06:03:26,882.882 INFO    ] Checking for system updates...
[2026-06-12 06:03:26,903.903 INFO    ] 200
[2026-06-12 06:03:26,905.905 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:03:26,937.937 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 06:03:26,939.939 INFO    ] No update needed
[2026-06-12 06:03:26,940.940 INFO    ] Checking for camera pi updates...
[2026-06-12 06:03:26,964.964 INFO    ] 200
[2026-06-12 06:03:26,965.965 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:03:26,991.991 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 06:03:27,037.037 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 06:03:27,039.039 INFO    ] No camera update needed
[2026-06-12 06:03:27,040.040 INFO    ] Script finished. Safe exiting...
[2026-06-12 06:03:27,042.042 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 06:03:27,045.045 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 06:03:27,048.048 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 06:03:29,087.087 INFO    ] ================================================
[2026-06-12 06:03:29,103.103 INFO    ] Launching Daemon at Fri Jun 12 06:03:29 IST 2026
[2026-06-12 06:03:29,114.114 INFO    ] ================================================
[2026-06-12 06:03:29,466.466 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 06:03:29
[2026-06-12 06:03:29,781.781 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 06:03:29,919.919 INFO    ] Initializing speech engine...
[2026-06-12 06:03:29,929.929 INFO    ] 2026-06-12 06:03:29
[2026-06-12 06:03:30,132.132 INFO    ] 2026-06-12 06:03:30
[2026-06-12 06:03:30,161.161 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 06:03:30,345.345 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 06:03:30,353.353 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 06:03:30,483.483 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 06:03:30,547.547 INFO    ] time= 12/06/2026 06:03:30
[2026-06-12 06:03:30,573.573 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 06:03:30,579.579 INFO    ] Checking for existing commands in stream...
[2026-06-12 06:03:30,646.646 INFO    ] No existing commands found in stream
[2026-06-12 06:03:35,660.660 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 06:03:35,663.663 INFO    ] Waiting 2.90 seconds before fallback handling...
[2026-06-12 06:03:38,937.937 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 06:03:38,938.938 INFO    ] Checking for system updates...
[2026-06-12 06:03:38,959.959 INFO    ] 200
[2026-06-12 06:03:38,961.961 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:03:38,993.993 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 06:03:38,994.994 INFO    ] No update needed
[2026-06-12 06:03:38,995.995 INFO    ] Checking for camera pi updates...
[2026-06-12 06:03:39,015.015 INFO    ] 200
[2026-06-12 06:03:39,016.016 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:03:39,043.043 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 06:03:39,081.081 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 06:03:39,082.082 INFO    ] No camera update needed
[2026-06-12 06:03:39,084.084 INFO    ] Script finished. Safe exiting...
[2026-06-12 06:03:39,085.085 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 06:03:39,088.088 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 06:03:39,091.091 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 06:03:41,130.130 INFO    ] ================================================
[2026-06-12 06:03:41,150.150 INFO    ] Launching Daemon at Fri Jun 12 06:03:41 IST 2026
[2026-06-12 06:03:41,161.161 INFO    ] ================================================
[2026-06-12 06:03:41,548.548 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 06:03:41
[2026-06-12 06:03:41,864.864 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 06:03:41,996.996 INFO    ] Initializing speech engine...
[2026-06-12 06:03:42,004.004 INFO    ] 2026-06-12 06:03:41
[2026-06-12 06:03:42,216.216 INFO    ] 2026-06-12 06:03:42
[2026-06-12 06:03:42,245.245 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 06:03:42,367.367 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 06:03:42,429.429 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 06:03:42,566.566 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 06:03:42,620.620 INFO    ] time= 12/06/2026 06:03:42
[2026-06-12 06:03:42,643.643 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 06:03:42,659.659 INFO    ] Checking for existing commands in stream...
[2026-06-12 06:03:42,731.731 INFO    ] No existing commands found in stream
[2026-06-12 06:03:47,740.740 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 06:03:47,743.743 INFO    ] Waiting 2.49 seconds before fallback handling...
[2026-06-12 06:03:50,644.644 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 06:03:50,646.646 INFO    ] Checking for system updates...
[2026-06-12 06:03:50,672.672 INFO    ] 200
[2026-06-12 06:03:50,674.674 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:03:50,704.704 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 06:03:50,705.705 INFO    ] No update needed
[2026-06-12 06:03:50,707.707 INFO    ] Checking for camera pi updates...
[2026-06-12 06:03:50,728.728 INFO    ] 200
[2026-06-12 06:03:50,729.729 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:03:50,756.756 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 06:03:50,794.794 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 06:03:50,796.796 INFO    ] No camera update needed
[2026-06-12 06:03:50,797.797 INFO    ] Script finished. Safe exiting...
[2026-06-12 06:03:50,798.798 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 06:03:50,802.802 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 06:03:50,805.805 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 06:03:52,847.847 INFO    ] ================================================
[2026-06-12 06:03:52,863.863 INFO    ] Launching Daemon at Fri Jun 12 06:03:52 IST 2026
[2026-06-12 06:03:52,873.873 INFO    ] ================================================
[2026-06-12 06:03:53,229.229 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 06:03:53
[2026-06-12 06:03:53,545.545 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 06:03:53,690.690 INFO    ] Initializing speech engine...
[2026-06-12 06:03:53,695.695 INFO    ] 2026-06-12 06:03:53
[2026-06-12 06:03:53,897.897 INFO    ] 2026-06-12 06:03:53
[2026-06-12 06:03:53,927.927 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 06:03:54,109.109 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 06:03:54,113.113 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 06:03:54,248.248 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 06:03:54,316.316 INFO    ] time= 12/06/2026 06:03:54
[2026-06-12 06:03:54,340.340 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 06:03:54,346.346 INFO    ] Checking for existing commands in stream...
[2026-06-12 06:03:54,413.413 INFO    ] No existing commands found in stream
[2026-06-12 06:03:59,422.422 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 06:03:59,425.425 INFO    ] Waiting 0.80 seconds before fallback handling...
[2026-06-12 06:04:00,633.633 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 06:04:00,635.635 INFO    ] Checking for system updates...
[2026-06-12 06:04:00,675.675 INFO    ] 200
[2026-06-12 06:04:00,677.677 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:04:00,731.731 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 06:04:00,734.734 INFO    ] No update needed
[2026-06-12 06:04:00,736.736 INFO    ] Checking for camera pi updates...
[2026-06-12 06:04:00,772.772 INFO    ] 200
[2026-06-12 06:04:00,775.775 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:04:00,821.821 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 06:04:00,861.861 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 06:04:00,864.864 INFO    ] No camera update needed
[2026-06-12 06:04:00,866.866 INFO    ] Script finished. Safe exiting...
[2026-06-12 06:04:00,867.867 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 06:04:00,871.871 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 06:04:00,874.874 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 06:04:02,906.906 INFO    ] ================================================
[2026-06-12 06:04:02,922.922 INFO    ] Launching Daemon at Fri Jun 12 06:04:02 IST 2026
[2026-06-12 06:04:02,933.933 INFO    ] ================================================
[2026-06-12 06:04:03,263.263 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 06:04:03
[2026-06-12 06:04:03,574.574 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 06:04:03,710.710 INFO    ] Initializing speech engine...
[2026-06-12 06:04:03,723.723 INFO    ] 2026-06-12 06:04:03
[2026-06-12 06:04:03,942.942 INFO    ] 2026-06-12 06:04:03
[2026-06-12 06:04:03,973.973 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 06:04:04,111.111 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 06:04:04,173.173 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 06:04:04,314.314 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 06:04:04,345.345 INFO    ] time= 12/06/2026 06:04:04
[2026-06-12 06:04:04,397.397 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 06:04:04,423.423 INFO    ] Checking for existing commands in stream...
[2026-06-12 06:04:04,498.498 INFO    ] No existing commands found in stream
[2026-06-12 06:04:09,509.509 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 06:04:09,512.512 INFO    ] Waiting 0.45 seconds before fallback handling...
[2026-06-12 06:04:10,356.356 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 06:04:10,358.358 INFO    ] Checking for system updates...
[2026-06-12 06:04:10,395.395 INFO    ] 200
[2026-06-12 06:04:10,397.397 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:04:10,450.450 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 06:04:10,452.452 INFO    ] No update needed
[2026-06-12 06:04:10,455.455 INFO    ] Checking for camera pi updates...
[2026-06-12 06:04:10,492.492 INFO    ] 200
[2026-06-12 06:04:10,493.493 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:04:10,516.516 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 06:04:10,664.664 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 06:04:10,665.665 INFO    ] No camera update needed
[2026-06-12 06:04:10,666.666 INFO    ] Script finished. Safe exiting...
[2026-06-12 06:04:10,667.667 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 06:04:10,670.670 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 06:04:10,673.673 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 06:04:12,713.713 INFO    ] ================================================
[2026-06-12 06:04:12,731.731 INFO    ] Launching Daemon at Fri Jun 12 06:04:12 IST 2026
[2026-06-12 06:04:12,742.742 INFO    ] ================================================
[2026-06-12 06:04:13,101.101 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 06:04:13
[2026-06-12 06:04:13,445.445 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 06:04:13,598.598 INFO    ] Initializing speech engine...
[2026-06-12 06:04:13,603.603 INFO    ] 2026-06-12 06:04:13
[2026-06-12 06:04:13,812.812 INFO    ] 2026-06-12 06:04:13
[2026-06-12 06:04:13,841.841 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 06:04:14,025.025 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 06:04:14,029.029 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 06:04:14,164.164 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 06:04:14,228.228 INFO    ] time= 12/06/2026 06:04:14
[2026-06-12 06:04:14,255.255 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 06:04:14,262.262 INFO    ] Checking for existing commands in stream...
[2026-06-12 06:04:14,329.329 INFO    ] No existing commands found in stream
[2026-06-12 06:04:19,343.343 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 06:04:19,347.347 INFO    ] Waiting 2.45 seconds before fallback handling...
[2026-06-12 06:04:22,189.189 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 06:04:22,191.191 INFO    ] Checking for system updates...
[2026-06-12 06:04:22,213.213 INFO    ] 200
[2026-06-12 06:04:22,215.215 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:04:22,248.248 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 06:04:22,250.250 INFO    ] No update needed
[2026-06-12 06:04:22,251.251 INFO    ] Checking for camera pi updates...
[2026-06-12 06:04:22,273.273 INFO    ] 200
[2026-06-12 06:04:22,274.274 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:04:22,300.300 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 06:04:22,342.342 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 06:04:22,343.343 INFO    ] No camera update needed
[2026-06-12 06:04:22,345.345 INFO    ] Script finished. Safe exiting...
[2026-06-12 06:04:22,346.346 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 06:04:22,349.349 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 06:04:22,352.352 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 06:04:24,394.394 INFO    ] ================================================
[2026-06-12 06:04:24,410.410 INFO    ] Launching Daemon at Fri Jun 12 06:04:24 IST 2026
[2026-06-12 06:04:24,421.421 INFO    ] ================================================
[2026-06-12 06:04:24,799.799 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 06:04:24
[2026-06-12 06:04:25,139.139 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 06:04:25,292.292 INFO    ] Initializing speech engine...
[2026-06-12 06:04:25,298.298 INFO    ] 2026-06-12 06:04:25
[2026-06-12 06:04:25,511.511 INFO    ] 2026-06-12 06:04:25
[2026-06-12 06:04:25,543.543 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 06:04:25,727.727 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 06:04:25,737.737 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 06:04:25,873.873 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 06:04:25,937.937 INFO    ] time= 12/06/2026 06:04:25
[2026-06-12 06:04:25,960.960 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 06:04:25,967.967 INFO    ] Checking for existing commands in stream...
[2026-06-12 06:04:26,035.035 INFO    ] No existing commands found in stream
[2026-06-12 06:04:31,044.044 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 06:04:31,047.047 INFO    ] Waiting 0.79 seconds before fallback handling...
[2026-06-12 06:04:32,195.195 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 06:04:32,198.198 INFO    ] Checking for system updates...
[2026-06-12 06:04:32,237.237 INFO    ] 200
[2026-06-12 06:04:32,240.240 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:04:32,294.294 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 06:04:32,296.296 INFO    ] No update needed
[2026-06-12 06:04:32,299.299 INFO    ] Checking for camera pi updates...
[2026-06-12 06:04:32,333.333 INFO    ] 200
[2026-06-12 06:04:32,335.335 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:04:32,371.371 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 06:04:32,399.399 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 06:04:32,401.401 INFO    ] No camera update needed
[2026-06-12 06:04:32,402.402 INFO    ] Script finished. Safe exiting...
[2026-06-12 06:04:32,403.403 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 06:04:32,406.406 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 06:04:32,409.409 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 06:04:34,449.449 INFO    ] ================================================
[2026-06-12 06:04:34,466.466 INFO    ] Launching Daemon at Fri Jun 12 06:04:34 IST 2026
[2026-06-12 06:04:34,477.477 INFO    ] ================================================
[2026-06-12 06:04:34,832.832 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 06:04:34
[2026-06-12 06:04:35,146.146 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 06:04:35,280.280 INFO    ] Initializing speech engine...
[2026-06-12 06:04:35,283.283 INFO    ] 2026-06-12 06:04:35
[2026-06-12 06:04:35,503.503 INFO    ] 2026-06-12 06:04:35
[2026-06-12 06:04:35,532.532 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 06:04:35,721.721 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 06:04:35,724.724 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 06:04:35,863.863 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 06:04:35,931.931 INFO    ] time= 12/06/2026 06:04:35
[2026-06-12 06:04:35,956.956 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 06:04:35,962.962 INFO    ] Checking for existing commands in stream...
[2026-06-12 06:04:36,031.031 INFO    ] No existing commands found in stream
[2026-06-12 06:04:41,048.048 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 06:04:41,051.051 INFO    ] Waiting 0.87 seconds before fallback handling...
[2026-06-12 06:04:42,270.270 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 06:04:42,272.272 INFO    ] Checking for system updates...
[2026-06-12 06:04:42,292.292 INFO    ] 200
[2026-06-12 06:04:42,294.294 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:04:42,326.326 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 06:04:42,328.328 INFO    ] No update needed
[2026-06-12 06:04:42,329.329 INFO    ] Checking for camera pi updates...
[2026-06-12 06:04:42,348.348 INFO    ] 200
[2026-06-12 06:04:42,350.350 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:04:42,374.374 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 06:04:42,411.411 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 06:04:42,413.413 INFO    ] No camera update needed
[2026-06-12 06:04:42,414.414 INFO    ] Script finished. Safe exiting...
[2026-06-12 06:04:42,415.415 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 06:04:42,418.418 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 06:04:42,421.421 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 06:04:44,462.462 INFO    ] ================================================
[2026-06-12 06:04:44,477.477 INFO    ] Launching Daemon at Fri Jun 12 06:04:44 IST 2026
[2026-06-12 06:04:44,489.489 INFO    ] ================================================
[2026-06-12 06:04:44,847.847 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 06:04:44
[2026-06-12 06:04:45,162.162 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 06:04:45,295.295 INFO    ] Initializing speech engine...
[2026-06-12 06:04:45,298.298 INFO    ] 2026-06-12 06:04:45
[2026-06-12 06:04:45,515.515 INFO    ] 2026-06-12 06:04:45
[2026-06-12 06:04:45,544.544 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 06:04:45,727.727 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 06:04:45,737.737 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 06:04:45,876.876 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 06:04:45,934.934 INFO    ] time= 12/06/2026 06:04:45
[2026-06-12 06:04:45,957.957 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 06:04:45,963.963 INFO    ] Checking for existing commands in stream...
[2026-06-12 06:04:46,030.030 INFO    ] No existing commands found in stream
[2026-06-12 06:04:51,039.039 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 06:04:51,042.042 INFO    ] Waiting 0.47 seconds before fallback handling...
[2026-06-12 06:04:51,890.890 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 06:04:51,892.892 INFO    ] Checking for system updates...
[2026-06-12 06:04:51,913.913 INFO    ] 200
[2026-06-12 06:04:51,914.914 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:04:51,947.947 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 06:04:51,949.949 INFO    ] No update needed
[2026-06-12 06:04:51,950.950 INFO    ] Checking for camera pi updates...
[2026-06-12 06:04:51,969.969 INFO    ] 200
[2026-06-12 06:04:51,971.971 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:04:51,994.994 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 06:04:52,031.031 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 06:04:52,032.032 INFO    ] No camera update needed
[2026-06-12 06:04:52,033.033 INFO    ] Script finished. Safe exiting...
[2026-06-12 06:04:52,035.035 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 06:04:52,037.037 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 06:04:52,040.040 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 06:04:54,082.082 INFO    ] ================================================
[2026-06-12 06:04:54,098.098 INFO    ] Launching Daemon at Fri Jun 12 06:04:54 IST 2026
[2026-06-12 06:04:54,109.109 INFO    ] ================================================
[2026-06-12 06:04:54,458.458 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 06:04:54
[2026-06-12 06:04:54,773.773 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 06:04:54,912.912 INFO    ] Initializing speech engine...
[2026-06-12 06:04:54,920.920 INFO    ] 2026-06-12 06:04:54
[2026-06-12 06:04:55,131.131 INFO    ] 2026-06-12 06:04:55
[2026-06-12 06:04:55,159.159 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 06:04:55,346.346 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 06:04:55,350.350 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 06:04:55,488.488 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 06:04:55,557.557 INFO    ] time= 12/06/2026 06:04:55
[2026-06-12 06:04:55,582.582 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 06:04:55,588.588 INFO    ] Checking for existing commands in stream...
[2026-06-12 06:04:55,657.657 INFO    ] No existing commands found in stream
[2026-06-12 06:05:00,682.682 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 06:05:00,685.685 INFO    ] Waiting 1.96 seconds before fallback handling...
[2026-06-12 06:05:03,013.013 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 06:05:03,014.014 INFO    ] Checking for system updates...
[2026-06-12 06:05:03,035.035 INFO    ] 200
[2026-06-12 06:05:03,036.036 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:05:03,069.069 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 06:05:03,070.070 INFO    ] No update needed
[2026-06-12 06:05:03,072.072 INFO    ] Checking for camera pi updates...
[2026-06-12 06:05:03,092.092 INFO    ] 200
[2026-06-12 06:05:03,094.094 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:05:03,117.117 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 06:05:03,138.138 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 06:05:03,140.140 INFO    ] No camera update needed
[2026-06-12 06:05:03,141.141 INFO    ] Script finished. Safe exiting...
[2026-06-12 06:05:03,142.142 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 06:05:03,145.145 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 06:05:03,148.148 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 06:05:05,188.188 INFO    ] ================================================
[2026-06-12 06:05:05,204.204 INFO    ] Launching Daemon at Fri Jun 12 06:05:05 IST 2026
[2026-06-12 06:05:05,216.216 INFO    ] ================================================
[2026-06-12 06:05:05,561.561 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 06:05:05
[2026-06-12 06:05:05,875.875 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 06:05:06,008.008 INFO    ] Initializing speech engine...
[2026-06-12 06:05:06,013.013 INFO    ] 2026-06-12 06:05:06
[2026-06-12 06:05:06,243.243 INFO    ] 2026-06-12 06:05:06
[2026-06-12 06:05:06,275.275 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 06:05:06,475.475 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 06:05:06,478.478 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 06:05:06,624.624 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 06:05:06,685.685 INFO    ] time= 12/06/2026 06:05:06
[2026-06-12 06:05:06,710.710 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 06:05:06,728.728 INFO    ] Checking for existing commands in stream...
[2026-06-12 06:05:06,804.804 INFO    ] No existing commands found in stream
[2026-06-12 06:05:11,814.814 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 06:05:11,817.817 INFO    ] Waiting 1.00 seconds before fallback handling...
[2026-06-12 06:05:13,181.181 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 06:05:13,182.182 INFO    ] Checking for system updates...
[2026-06-12 06:05:13,203.203 INFO    ] 200
[2026-06-12 06:05:13,204.204 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:05:13,237.237 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 06:05:13,239.239 INFO    ] No update needed
[2026-06-12 06:05:13,240.240 INFO    ] Checking for camera pi updates...
[2026-06-12 06:05:13,262.262 INFO    ] 200
[2026-06-12 06:05:13,263.263 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:05:13,288.288 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 06:05:13,323.323 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 06:05:13,324.324 INFO    ] No camera update needed
[2026-06-12 06:05:13,325.325 INFO    ] Script finished. Safe exiting...
[2026-06-12 06:05:13,327.327 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 06:05:13,330.330 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 06:05:13,333.333 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 06:05:15,373.373 INFO    ] ================================================
[2026-06-12 06:05:15,389.389 INFO    ] Launching Daemon at Fri Jun 12 06:05:15 IST 2026
[2026-06-12 06:05:15,400.400 INFO    ] ================================================
[2026-06-12 06:05:15,749.749 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 06:05:15
[2026-06-12 06:05:16,064.064 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 06:05:16,196.196 INFO    ] Initializing speech engine...
[2026-06-12 06:05:16,200.200 INFO    ] 2026-06-12 06:05:16
[2026-06-12 06:05:16,398.398 INFO    ] 2026-06-12 06:05:16
[2026-06-12 06:05:16,438.438 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 06:05:16,596.596 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 06:05:16,635.635 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 06:05:16,807.807 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 06:05:16,859.859 INFO    ] time= 12/06/2026 06:05:16
[2026-06-12 06:05:16,904.904 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 06:05:16,916.916 INFO    ] Checking for existing commands in stream...
[2026-06-12 06:05:17,019.019 INFO    ] No existing commands found in stream
[2026-06-12 06:05:22,028.028 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 06:05:22,030.030 INFO    ] Waiting 2.93 seconds before fallback handling...
[2026-06-12 06:05:25,314.314 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 06:05:25,317.317 INFO    ] Checking for system updates...
[2026-06-12 06:05:25,354.354 INFO    ] 200
[2026-06-12 06:05:25,357.357 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:05:25,413.413 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 06:05:25,415.415 INFO    ] No update needed
[2026-06-12 06:05:25,418.418 INFO    ] Checking for camera pi updates...
[2026-06-12 06:05:25,454.454 INFO    ] 200
[2026-06-12 06:05:25,457.457 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:05:25,499.499 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 06:05:25,541.541 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 06:05:25,542.542 INFO    ] No camera update needed
[2026-06-12 06:05:25,544.544 INFO    ] Script finished. Safe exiting...
[2026-06-12 06:05:25,545.545 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 06:05:25,548.548 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 06:05:25,552.552 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 06:05:27,591.591 INFO    ] ================================================
[2026-06-12 06:05:27,608.608 INFO    ] Launching Daemon at Fri Jun 12 06:05:27 IST 2026
[2026-06-12 06:05:27,620.620 INFO    ] ================================================
[2026-06-12 06:05:27,967.967 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 06:05:27
[2026-06-12 06:05:28,284.284 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 06:05:28,418.418 INFO    ] Initializing speech engine...
[2026-06-12 06:05:28,422.422 INFO    ] 2026-06-12 06:05:28
[2026-06-12 06:05:28,658.658 INFO    ] 2026-06-12 06:05:28
[2026-06-12 06:05:28,687.687 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 06:05:28,864.864 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 06:05:28,894.894 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 06:05:29,036.036 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 06:05:29,093.093 INFO    ] time= 12/06/2026 06:05:29
[2026-06-12 06:05:29,123.123 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 06:05:29,146.146 INFO    ] Checking for existing commands in stream...
[2026-06-12 06:05:29,223.223 INFO    ] No existing commands found in stream
[2026-06-12 06:05:34,233.233 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 06:05:34,236.236 INFO    ] Waiting 0.01 seconds before fallback handling...
[2026-06-12 06:05:34,610.610 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 06:05:34,612.612 INFO    ] Checking for system updates...
[2026-06-12 06:05:34,632.632 INFO    ] 200
[2026-06-12 06:05:34,634.634 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:05:34,664.664 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 06:05:34,665.665 INFO    ] No update needed
[2026-06-12 06:05:34,666.666 INFO    ] Checking for camera pi updates...
[2026-06-12 06:05:34,686.686 INFO    ] 200
[2026-06-12 06:05:34,687.687 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:05:34,710.710 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 06:05:34,744.744 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 06:05:34,745.745 INFO    ] No camera update needed
[2026-06-12 06:05:34,746.746 INFO    ] Script finished. Safe exiting...
[2026-06-12 06:05:34,748.748 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 06:05:34,751.751 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 06:05:34,753.753 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 06:05:36,784.784 INFO    ] ================================================
[2026-06-12 06:05:36,792.792 INFO    ] Launching Daemon at Fri Jun 12 06:05:36 IST 2026
[2026-06-12 06:05:36,799.799 INFO    ] ================================================
[2026-06-12 06:05:37,109.109 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 06:05:37
[2026-06-12 06:05:37,424.424 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 06:05:37,561.561 INFO    ] Initializing speech engine...
[2026-06-12 06:05:37,569.569 INFO    ] 2026-06-12 06:05:37
[2026-06-12 06:05:37,787.787 INFO    ] 2026-06-12 06:05:37
[2026-06-12 06:05:37,815.815 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 06:05:38,000.000 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 06:05:38,009.009 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 06:05:38,157.157 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 06:05:38,210.210 INFO    ] time= 12/06/2026 06:05:38
[2026-06-12 06:05:38,233.233 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 06:05:38,239.239 INFO    ] Checking for existing commands in stream...
[2026-06-12 06:05:38,307.307 INFO    ] No existing commands found in stream
[2026-06-12 06:05:43,315.315 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 06:05:43,316.316 INFO    ] Waiting 3.58 seconds before fallback handling...
[2026-06-12 06:05:47,262.262 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 06:05:47,264.264 INFO    ] Checking for system updates...
[2026-06-12 06:05:47,284.284 INFO    ] 200
[2026-06-12 06:05:47,286.286 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:05:47,318.318 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 06:05:47,319.319 INFO    ] No update needed
[2026-06-12 06:05:47,321.321 INFO    ] Checking for camera pi updates...
[2026-06-12 06:05:47,341.341 INFO    ] 200
[2026-06-12 06:05:47,342.342 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:05:47,365.365 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 06:05:47,411.411 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 06:05:47,412.412 INFO    ] No camera update needed
[2026-06-12 06:05:47,413.413 INFO    ] Script finished. Safe exiting...
[2026-06-12 06:05:47,415.415 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 06:05:47,418.418 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 06:05:47,420.420 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 06:05:49,461.461 INFO    ] ================================================
[2026-06-12 06:05:49,478.478 INFO    ] Launching Daemon at Fri Jun 12 06:05:49 IST 2026
[2026-06-12 06:05:49,489.489 INFO    ] ================================================
[2026-06-12 06:05:49,864.864 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 06:05:49
[2026-06-12 06:05:50,208.208 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 06:05:50,361.361 INFO    ] Initializing speech engine...
[2026-06-12 06:05:50,366.366 INFO    ] 2026-06-12 06:05:50
[2026-06-12 06:05:50,576.576 INFO    ] 2026-06-12 06:05:50
[2026-06-12 06:05:50,606.606 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 06:05:50,747.747 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 06:05:50,796.796 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 06:05:50,943.943 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 06:05:51,006.006 INFO    ] time= 12/06/2026 06:05:50
[2026-06-12 06:05:51,031.031 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 06:05:51,037.037 INFO    ] Checking for existing commands in stream...
[2026-06-12 06:05:51,105.105 INFO    ] No existing commands found in stream
[2026-06-12 06:05:56,120.120 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 06:05:56,124.124 INFO    ] Waiting 1.71 seconds before fallback handling...
[2026-06-12 06:05:58,204.204 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 06:05:58,205.205 INFO    ] Checking for system updates...
[2026-06-12 06:05:58,228.228 INFO    ] 200
[2026-06-12 06:05:58,229.229 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:05:58,260.260 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 06:05:58,262.262 INFO    ] No update needed
[2026-06-12 06:05:58,263.263 INFO    ] Checking for camera pi updates...
[2026-06-12 06:05:58,283.283 INFO    ] 200
[2026-06-12 06:05:58,285.285 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:05:58,309.309 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 06:05:58,347.347 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 06:05:58,348.348 INFO    ] No camera update needed
[2026-06-12 06:05:58,350.350 INFO    ] Script finished. Safe exiting...
[2026-06-12 06:05:58,352.352 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 06:05:58,355.355 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 06:05:58,358.358 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 06:06:00,397.397 INFO    ] ================================================
[2026-06-12 06:06:00,414.414 INFO    ] Launching Daemon at Fri Jun 12 06:06:00 IST 2026
[2026-06-12 06:06:00,426.426 INFO    ] ================================================
[2026-06-12 06:06:00,757.757 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 06:06:00
[2026-06-12 06:06:01,069.069 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 06:06:01,206.206 INFO    ] Initializing speech engine...
[2026-06-12 06:06:01,216.216 INFO    ] 2026-06-12 06:06:01
[2026-06-12 06:06:01,444.444 INFO    ] 2026-06-12 06:06:01
[2026-06-12 06:06:01,518.518 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 06:06:01,704.704 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 06:06:01,730.730 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 06:06:01,908.908 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 06:06:01,948.948 INFO    ] time= 12/06/2026 06:06:01
[2026-06-12 06:06:02,026.026 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 06:06:02,058.058 INFO    ] Checking for existing commands in stream...
[2026-06-12 06:06:02,162.162 INFO    ] No existing commands found in stream
[2026-06-12 06:06:07,196.196 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 06:06:07,199.199 INFO    ] Waiting 1.28 seconds before fallback handling...
[2026-06-12 06:06:08,842.842 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 06:06:08,843.843 INFO    ] Checking for system updates...
[2026-06-12 06:06:08,864.864 INFO    ] 200
[2026-06-12 06:06:08,865.865 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:06:08,895.895 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 06:06:08,896.896 INFO    ] No update needed
[2026-06-12 06:06:08,898.898 INFO    ] Checking for camera pi updates...
[2026-06-12 06:06:08,917.917 INFO    ] 200
[2026-06-12 06:06:08,918.918 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:06:08,944.944 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 06:06:08,984.984 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 06:06:08,986.986 INFO    ] No camera update needed
[2026-06-12 06:06:08,987.987 INFO    ] Script finished. Safe exiting...
[2026-06-12 06:06:08,988.988 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 06:06:08,991.991 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 06:06:08,994.994 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 06:06:11,033.033 INFO    ] ================================================
[2026-06-12 06:06:11,049.049 INFO    ] Launching Daemon at Fri Jun 12 06:06:11 IST 2026
[2026-06-12 06:06:11,060.060 INFO    ] ================================================
[2026-06-12 06:06:11,394.394 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 06:06:11
[2026-06-12 06:06:11,710.710 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 06:06:11,848.848 INFO    ] Initializing speech engine...
[2026-06-12 06:06:11,857.857 INFO    ] 2026-06-12 06:06:11
[2026-06-12 06:06:12,063.063 INFO    ] 2026-06-12 06:06:12
[2026-06-12 06:06:12,091.091 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 06:06:12,274.274 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 06:06:12,277.277 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 06:06:12,411.411 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 06:06:12,472.472 INFO    ] time= 12/06/2026 06:06:12
[2026-06-12 06:06:12,504.504 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 06:06:12,510.510 INFO    ] Checking for existing commands in stream...
[2026-06-12 06:06:12,577.577 INFO    ] No existing commands found in stream
[2026-06-12 06:06:17,592.592 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 06:06:17,594.594 INFO    ] Waiting 0.89 seconds before fallback handling...
[2026-06-12 06:06:18,882.882 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 06:06:18,883.883 INFO    ] Checking for system updates...
[2026-06-12 06:06:18,904.904 INFO    ] 200
[2026-06-12 06:06:18,905.905 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:06:18,935.935 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 06:06:18,937.937 INFO    ] No update needed
[2026-06-12 06:06:18,938.938 INFO    ] Checking for camera pi updates...
[2026-06-12 06:06:18,957.957 INFO    ] 200
[2026-06-12 06:06:18,958.958 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:06:18,982.982 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 06:06:19,120.120 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 06:06:19,121.121 INFO    ] No camera update needed
[2026-06-12 06:06:19,123.123 INFO    ] Script finished. Safe exiting...
[2026-06-12 06:06:19,124.124 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 06:06:19,127.127 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 06:06:19,129.129 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 06:06:21,169.169 INFO    ] ================================================
[2026-06-12 06:06:21,185.185 INFO    ] Launching Daemon at Fri Jun 12 06:06:21 IST 2026
[2026-06-12 06:06:21,196.196 INFO    ] ================================================
[2026-06-12 06:06:21,522.522 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 06:06:21
[2026-06-12 06:06:21,833.833 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 06:06:21,963.963 INFO    ] Initializing speech engine...
[2026-06-12 06:06:21,971.971 INFO    ] 2026-06-12 06:06:21
[2026-06-12 06:06:22,182.182 INFO    ] 2026-06-12 06:06:22
[2026-06-12 06:06:22,211.211 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 06:06:22,396.396 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 06:06:22,407.407 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 06:06:22,550.550 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 06:06:22,602.602 INFO    ] time= 12/06/2026 06:06:22
[2026-06-12 06:06:22,627.627 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 06:06:22,632.632 INFO    ] Checking for existing commands in stream...
[2026-06-12 06:06:22,724.724 INFO    ] No existing commands found in stream
[2026-06-12 06:06:27,738.738 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 06:06:27,742.742 INFO    ] Waiting 2.44 seconds before fallback handling...
[2026-06-12 06:06:30,592.592 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 06:06:30,594.594 INFO    ] Checking for system updates...
[2026-06-12 06:06:30,615.615 INFO    ] 200
[2026-06-12 06:06:30,616.616 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:06:30,648.648 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 06:06:30,649.649 INFO    ] No update needed
[2026-06-12 06:06:30,651.651 INFO    ] Checking for camera pi updates...
[2026-06-12 06:06:30,671.671 INFO    ] 200
[2026-06-12 06:06:30,673.673 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:06:30,696.696 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 06:06:30,736.736 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 06:06:30,737.737 INFO    ] No camera update needed
[2026-06-12 06:06:30,739.739 INFO    ] Script finished. Safe exiting...
[2026-06-12 06:06:30,740.740 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 06:06:30,743.743 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 06:06:30,746.746 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 06:06:32,780.780 INFO    ] ================================================
[2026-06-12 06:06:32,802.802 INFO    ] Launching Daemon at Fri Jun 12 06:06:32 IST 2026
[2026-06-12 06:06:32,813.813 INFO    ] ================================================
[2026-06-12 06:06:33,211.211 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 06:06:33
[2026-06-12 06:06:33,556.556 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 06:06:33,723.723 INFO    ] Initializing speech engine...
[2026-06-12 06:06:33,730.730 INFO    ] 2026-06-12 06:06:33
[2026-06-12 06:06:33,945.945 INFO    ] 2026-06-12 06:06:33
[2026-06-12 06:06:33,975.975 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 06:06:34,110.110 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 06:06:34,177.177 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 06:06:34,291.291 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 06:06:34,293.293 INFO    ] time= 12/06/2026 06:06:34
[2026-06-12 06:06:34,324.324 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 06:06:34,390.390 INFO    ] Checking for existing commands in stream...
[2026-06-12 06:06:34,505.505 INFO    ] No existing commands found in stream
[2026-06-12 06:06:39,515.515 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 06:06:39,518.518 INFO    ] Waiting 0.42 seconds before fallback handling...
[2026-06-12 06:06:40,283.283 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 06:06:40,284.284 INFO    ] Checking for system updates...
[2026-06-12 06:06:40,305.305 INFO    ] 200
[2026-06-12 06:06:40,306.306 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:06:40,336.336 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 06:06:40,337.337 INFO    ] No update needed
[2026-06-12 06:06:40,338.338 INFO    ] Checking for camera pi updates...
[2026-06-12 06:06:40,358.358 INFO    ] 200
[2026-06-12 06:06:40,359.359 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:06:40,385.385 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 06:06:40,421.421 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 06:06:40,422.422 INFO    ] No camera update needed
[2026-06-12 06:06:40,423.423 INFO    ] Script finished. Safe exiting...
[2026-06-12 06:06:40,425.425 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 06:06:40,428.428 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 06:06:40,431.431 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 06:06:42,471.471 INFO    ] ================================================
[2026-06-12 06:06:42,487.487 INFO    ] Launching Daemon at Fri Jun 12 06:06:42 IST 2026
[2026-06-12 06:06:42,498.498 INFO    ] ================================================
[2026-06-12 06:06:42,874.874 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 06:06:42
[2026-06-12 06:06:43,192.192 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 06:06:43,322.322 INFO    ] Initializing speech engine...
[2026-06-12 06:06:43,326.326 INFO    ] 2026-06-12 06:06:43
[2026-06-12 06:06:43,545.545 INFO    ] 2026-06-12 06:06:43
[2026-06-12 06:06:43,575.575 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 06:06:43,761.761 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 06:06:43,772.772 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 06:06:43,913.913 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 06:06:43,970.970 INFO    ] time= 12/06/2026 06:06:43
[2026-06-12 06:06:43,995.995 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 06:06:44,001.001 INFO    ] Checking for existing commands in stream...
[2026-06-12 06:06:44,068.068 INFO    ] No existing commands found in stream
[2026-06-12 06:06:49,079.079 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 06:06:49,082.082 INFO    ] Waiting 3.29 seconds before fallback handling...
[2026-06-12 06:06:52,762.762 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 06:06:52,764.764 INFO    ] Checking for system updates...
[2026-06-12 06:06:52,785.785 INFO    ] 200
[2026-06-12 06:06:52,787.787 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:06:52,817.817 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 06:06:52,819.819 INFO    ] No update needed
[2026-06-12 06:06:52,820.820 INFO    ] Checking for camera pi updates...
[2026-06-12 06:06:52,841.841 INFO    ] 200
[2026-06-12 06:06:52,843.843 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:06:52,869.869 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 06:06:52,913.913 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 06:06:52,915.915 INFO    ] No camera update needed
[2026-06-12 06:06:52,916.916 INFO    ] Script finished. Safe exiting...
[2026-06-12 06:06:52,917.917 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 06:06:52,921.921 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 06:06:52,924.924 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 06:06:54,967.967 INFO    ] ================================================
[2026-06-12 06:06:54,983.983 INFO    ] Launching Daemon at Fri Jun 12 06:06:54 IST 2026
[2026-06-12 06:06:54,994.994 INFO    ] ================================================
[2026-06-12 06:06:55,327.327 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 06:06:55
[2026-06-12 06:06:55,642.642 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 06:06:55,774.774 INFO    ] Initializing speech engine...
[2026-06-12 06:06:55,782.782 INFO    ] 2026-06-12 06:06:55
[2026-06-12 06:06:56,004.004 INFO    ] 2026-06-12 06:06:55
[2026-06-12 06:06:56,035.035 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 06:06:56,229.229 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 06:06:56,236.236 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 06:06:56,378.378 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 06:06:56,441.441 INFO    ] time= 12/06/2026 06:06:56
[2026-06-12 06:06:56,481.481 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 06:06:56,487.487 INFO    ] Checking for existing commands in stream...
[2026-06-12 06:06:56,565.565 INFO    ] No existing commands found in stream
[2026-06-12 06:07:01,579.579 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 06:07:01,582.582 INFO    ] Waiting 2.13 seconds before fallback handling...
[2026-06-12 06:07:04,043.043 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 06:07:04,044.044 INFO    ] Checking for system updates...
[2026-06-12 06:07:04,065.065 INFO    ] 200
[2026-06-12 06:07:04,067.067 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:07:04,098.098 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 06:07:04,099.099 INFO    ] No update needed
[2026-06-12 06:07:04,101.101 INFO    ] Checking for camera pi updates...
[2026-06-12 06:07:04,120.120 INFO    ] 200
[2026-06-12 06:07:04,121.121 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:07:04,145.145 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 06:07:04,185.185 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 06:07:04,186.186 INFO    ] No camera update needed
[2026-06-12 06:07:04,187.187 INFO    ] Script finished. Safe exiting...
[2026-06-12 06:07:04,189.189 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 06:07:04,192.192 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 06:07:04,195.195 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 06:07:06,233.233 INFO    ] ================================================
[2026-06-12 06:07:06,249.249 INFO    ] Launching Daemon at Fri Jun 12 06:07:06 IST 2026
[2026-06-12 06:07:06,260.260 INFO    ] ================================================
[2026-06-12 06:07:06,622.622 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 06:07:06
[2026-06-12 06:07:06,971.971 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 06:07:07,122.122 INFO    ] Initializing speech engine...
[2026-06-12 06:07:07,128.128 INFO    ] 2026-06-12 06:07:07
[2026-06-12 06:07:07,336.336 INFO    ] 2026-06-12 06:07:07
[2026-06-12 06:07:07,365.365 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 06:07:07,544.544 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 06:07:07,553.553 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 06:07:07,689.689 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 06:07:07,757.757 INFO    ] time= 12/06/2026 06:07:07
[2026-06-12 06:07:07,782.782 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 06:07:07,788.788 INFO    ] Checking for existing commands in stream...
[2026-06-12 06:07:07,855.855 INFO    ] No existing commands found in stream
[2026-06-12 06:07:12,869.869 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 06:07:12,878.878 INFO    ] Waiting 0.31 seconds before fallback handling...
[2026-06-12 06:07:13,555.555 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 06:07:13,556.556 INFO    ] Checking for system updates...
[2026-06-12 06:07:13,577.577 INFO    ] 200
[2026-06-12 06:07:13,578.578 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:07:13,611.611 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 06:07:13,612.612 INFO    ] No update needed
[2026-06-12 06:07:13,614.614 INFO    ] Checking for camera pi updates...
[2026-06-12 06:07:13,633.633 INFO    ] 200
[2026-06-12 06:07:13,634.634 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:07:13,657.657 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 06:07:13,698.698 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 06:07:13,699.699 INFO    ] No camera update needed
[2026-06-12 06:07:13,701.701 INFO    ] Script finished. Safe exiting...
[2026-06-12 06:07:13,702.702 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 06:07:13,705.705 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 06:07:13,708.708 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 06:07:15,746.746 INFO    ] ================================================
[2026-06-12 06:07:15,761.761 INFO    ] Launching Daemon at Fri Jun 12 06:07:15 IST 2026
[2026-06-12 06:07:15,772.772 INFO    ] ================================================
[2026-06-12 06:07:16,112.112 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 06:07:16
[2026-06-12 06:07:16,429.429 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 06:07:16,573.573 INFO    ] Initializing speech engine...
[2026-06-12 06:07:16,578.578 INFO    ] 2026-06-12 06:07:16
[2026-06-12 06:07:16,783.783 INFO    ] 2026-06-12 06:07:16
[2026-06-12 06:07:16,812.812 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 06:07:16,943.943 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 06:07:16,996.996 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 06:07:17,131.131 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 06:07:17,182.182 INFO    ] time= 12/06/2026 06:07:17
[2026-06-12 06:07:17,224.224 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 06:07:17,231.231 INFO    ] Checking for existing commands in stream...
[2026-06-12 06:07:17,298.298 INFO    ] No existing commands found in stream
[2026-06-12 06:07:22,312.312 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 06:07:22,315.315 INFO    ] Waiting 3.89 seconds before fallback handling...
[2026-06-12 06:07:26,576.576 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 06:07:26,578.578 INFO    ] Checking for system updates...
[2026-06-12 06:07:26,598.598 INFO    ] 200
[2026-06-12 06:07:26,600.600 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:07:26,633.633 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 06:07:26,634.634 INFO    ] No update needed
[2026-06-12 06:07:26,635.635 INFO    ] Checking for camera pi updates...
[2026-06-12 06:07:26,655.655 INFO    ] 200
[2026-06-12 06:07:26,656.656 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:07:26,679.679 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 06:07:26,716.716 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 06:07:26,718.718 INFO    ] No camera update needed
[2026-06-12 06:07:26,719.719 INFO    ] Script finished. Safe exiting...
[2026-06-12 06:07:26,720.720 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 06:07:26,724.724 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 06:07:26,726.726 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 06:07:28,766.766 INFO    ] ================================================
[2026-06-12 06:07:28,783.783 INFO    ] Launching Daemon at Fri Jun 12 06:07:28 IST 2026
[2026-06-12 06:07:28,794.794 INFO    ] ================================================
[2026-06-12 06:07:29,140.140 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 06:07:29
[2026-06-12 06:07:29,458.458 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 06:07:29,596.596 INFO    ] Initializing speech engine...
[2026-06-12 06:07:29,604.604 INFO    ] 2026-06-12 06:07:29
[2026-06-12 06:07:29,831.831 INFO    ] 2026-06-12 06:07:29
[2026-06-12 06:07:29,863.863 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 06:07:30,038.038 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 06:07:30,066.066 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 06:07:30,208.208 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 06:07:30,259.259 INFO    ] time= 12/06/2026 06:07:30
[2026-06-12 06:07:30,293.293 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 06:07:30,317.317 INFO    ] Checking for existing commands in stream...
[2026-06-12 06:07:30,393.393 INFO    ] No existing commands found in stream
[2026-06-12 06:07:35,403.403 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 06:07:35,406.406 INFO    ] Waiting 0.84 seconds before fallback handling...
[2026-06-12 06:07:36,629.629 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 06:07:36,630.630 INFO    ] Checking for system updates...
[2026-06-12 06:07:36,652.652 INFO    ] 200
[2026-06-12 06:07:36,654.654 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:07:36,684.684 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 06:07:36,685.685 INFO    ] No update needed
[2026-06-12 06:07:36,686.686 INFO    ] Checking for camera pi updates...
[2026-06-12 06:07:36,706.706 INFO    ] 200
[2026-06-12 06:07:36,707.707 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:07:36,730.730 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 06:07:36,769.769 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 06:07:36,771.771 INFO    ] No camera update needed
[2026-06-12 06:07:36,772.772 INFO    ] Script finished. Safe exiting...
[2026-06-12 06:07:36,773.773 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 06:07:36,776.776 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 06:07:36,779.779 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 06:07:38,820.820 INFO    ] ================================================
[2026-06-12 06:07:38,836.836 INFO    ] Launching Daemon at Fri Jun 12 06:07:38 IST 2026
[2026-06-12 06:07:38,847.847 INFO    ] ================================================
[2026-06-12 06:07:39,186.186 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 06:07:39
[2026-06-12 06:07:39,501.501 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 06:07:39,634.634 INFO    ] Initializing speech engine...
[2026-06-12 06:07:39,642.642 INFO    ] 2026-06-12 06:07:39
[2026-06-12 06:07:39,853.853 INFO    ] 2026-06-12 06:07:39
[2026-06-12 06:07:39,881.881 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 06:07:40,064.064 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 06:07:40,068.068 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 06:07:40,204.204 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 06:07:40,270.270 INFO    ] time= 12/06/2026 06:07:40
[2026-06-12 06:07:40,294.294 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 06:07:40,301.301 INFO    ] Checking for existing commands in stream...
[2026-06-12 06:07:40,367.367 INFO    ] No existing commands found in stream
[2026-06-12 06:07:45,376.376 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 06:07:45,379.379 INFO    ] Waiting 3.02 seconds before fallback handling...
[2026-06-12 06:07:49,512.512 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 06:07:49,515.515 INFO    ] Checking for system updates...
[2026-06-12 06:07:49,554.554 INFO    ] 200
[2026-06-12 06:07:49,556.556 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:07:49,610.610 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 06:07:49,613.613 INFO    ] No update needed
[2026-06-12 06:07:49,616.616 INFO    ] Checking for camera pi updates...
[2026-06-12 06:07:49,651.651 INFO    ] 200
[2026-06-12 06:07:49,653.653 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:07:49,679.679 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 06:07:49,714.714 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 06:07:49,716.716 INFO    ] No camera update needed
[2026-06-12 06:07:49,717.717 INFO    ] Script finished. Safe exiting...
[2026-06-12 06:07:49,718.718 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 06:07:49,721.721 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 06:07:49,724.724 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 06:07:51,762.762 INFO    ] ================================================
[2026-06-12 06:07:51,777.777 INFO    ] Launching Daemon at Fri Jun 12 06:07:51 IST 2026
[2026-06-12 06:07:51,789.789 INFO    ] ================================================
[2026-06-12 06:07:52,120.120 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 06:07:52
[2026-06-12 06:07:52,438.438 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 06:07:52,574.574 INFO    ] Initializing speech engine...
[2026-06-12 06:07:52,583.583 INFO    ] 2026-06-12 06:07:52
[2026-06-12 06:07:52,809.809 INFO    ] 2026-06-12 06:07:52
[2026-06-12 06:07:52,841.841 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 06:07:52,972.972 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 06:07:53,012.012 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 06:07:53,162.162 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 06:07:53,187.187 INFO    ] time= 12/06/2026 06:07:53
[2026-06-12 06:07:53,233.233 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 06:07:53,274.274 INFO    ] Checking for existing commands in stream...
[2026-06-12 06:07:53,372.372 INFO    ] No existing commands found in stream
[2026-06-12 06:07:58,380.380 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 06:07:58,382.382 INFO    ] Waiting 0.84 seconds before fallback handling...
[2026-06-12 06:07:59,563.563 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 06:07:59,565.565 INFO    ] Checking for system updates...
[2026-06-12 06:07:59,592.592 INFO    ] 200
[2026-06-12 06:07:59,593.593 INFO    ] {"msg": "Status of machine", "state": "STATE_HEALTH_CHECK", "status": true}
[2026-06-12 06:07:59,595.595 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping update check
[2026-06-12 06:07:59,596.596 INFO    ] Checking for camera pi updates...
[2026-06-12 06:07:59,622.622 INFO    ] 200
[2026-06-12 06:07:59,623.623 INFO    ] {"msg": "Status of machine", "state": "STATE_HEALTH_CHECK", "status": true}
[2026-06-12 06:07:59,625.625 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping camera update check
[2026-06-12 06:07:59,627.627 INFO    ] Script finished. Safe exiting...
[2026-06-12 06:07:59,628.628 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 06:07:59,632.632 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 06:07:59,635.635 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 06:08:01,658.658 INFO    ] ================================================
[2026-06-12 06:08:01,667.667 INFO    ] Launching Daemon at Fri Jun 12 06:08:01 IST 2026
[2026-06-12 06:08:01,673.673 INFO    ] ================================================
[2026-06-12 06:08:02,121.121 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 06:08:02
[2026-06-12 06:08:02,511.511 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 06:08:02,666.666 INFO    ] Initializing speech engine...
[2026-06-12 06:08:02,670.670 INFO    ] 2026-06-12 06:08:02
[2026-06-12 06:08:02,888.888 INFO    ] 2026-06-12 06:08:02
[2026-06-12 06:08:02,954.954 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 06:08:03,102.102 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 06:08:03,155.155 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 06:08:03,309.309 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 06:08:03,372.372 INFO    ] time= 12/06/2026 06:08:03
[2026-06-12 06:08:03,406.406 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 06:08:03,412.412 INFO    ] Checking for existing commands in stream...
[2026-06-12 06:08:03,481.481 INFO    ] No existing commands found in stream
[2026-06-12 06:08:08,486.486 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 06:08:08,489.489 INFO    ] Waiting 2.81 seconds before fallback handling...
[2026-06-12 06:08:11,688.688 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 06:08:11,691.691 INFO    ] Checking for system updates...
[2026-06-12 06:08:11,727.727 INFO    ] 200
[2026-06-12 06:08:11,729.729 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:08:11,760.760 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 06:08:11,761.761 INFO    ] No update needed
[2026-06-12 06:08:11,762.762 INFO    ] Checking for camera pi updates...
[2026-06-12 06:08:11,782.782 INFO    ] 200
[2026-06-12 06:08:11,783.783 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:08:11,806.806 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 06:08:11,831.831 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 06:08:11,833.833 INFO    ] No camera update needed
[2026-06-12 06:08:11,834.834 INFO    ] Script finished. Safe exiting...
[2026-06-12 06:08:11,835.835 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 06:08:11,838.838 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 06:08:11,841.841 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 06:08:13,881.881 INFO    ] ================================================
[2026-06-12 06:08:13,896.896 INFO    ] Launching Daemon at Fri Jun 12 06:08:13 IST 2026
[2026-06-12 06:08:13,907.907 INFO    ] ================================================
[2026-06-12 06:08:14,264.264 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 06:08:14
[2026-06-12 06:08:14,580.580 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 06:08:14,724.724 INFO    ] Initializing speech engine...
[2026-06-12 06:08:14,729.729 INFO    ] 2026-06-12 06:08:14
[2026-06-12 06:08:14,932.932 INFO    ] 2026-06-12 06:08:14
[2026-06-12 06:08:14,961.961 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 06:08:15,143.143 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 06:08:15,147.147 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 06:08:15,283.283 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 06:08:15,351.351 INFO    ] time= 12/06/2026 06:08:15
[2026-06-12 06:08:15,374.374 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 06:08:15,380.380 INFO    ] Checking for existing commands in stream...
[2026-06-12 06:08:15,447.447 INFO    ] No existing commands found in stream
[2026-06-12 06:08:20,461.461 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 06:08:20,464.464 INFO    ] Waiting 3.58 seconds before fallback handling...
[2026-06-12 06:08:24,433.433 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 06:08:24,434.434 INFO    ] Checking for system updates...
[2026-06-12 06:08:24,455.455 INFO    ] 200
[2026-06-12 06:08:24,456.456 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:08:24,487.487 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 06:08:24,488.488 INFO    ] No update needed
[2026-06-12 06:08:24,489.489 INFO    ] Checking for camera pi updates...
[2026-06-12 06:08:24,512.512 INFO    ] 200
[2026-06-12 06:08:24,514.514 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:08:24,537.537 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 06:08:24,675.675 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 06:08:24,676.676 INFO    ] No camera update needed
[2026-06-12 06:08:24,677.677 INFO    ] Script finished. Safe exiting...
[2026-06-12 06:08:24,679.679 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 06:08:24,682.682 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 06:08:24,685.685 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 06:08:26,723.723 INFO    ] ================================================
[2026-06-12 06:08:26,738.738 INFO    ] Launching Daemon at Fri Jun 12 06:08:26 IST 2026
[2026-06-12 06:08:26,749.749 INFO    ] ================================================
[2026-06-12 06:08:27,100.100 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 06:08:27
[2026-06-12 06:08:27,418.418 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 06:08:27,561.561 INFO    ] Initializing speech engine...
[2026-06-12 06:08:27,566.566 INFO    ] 2026-06-12 06:08:27
[2026-06-12 06:08:27,771.771 INFO    ] 2026-06-12 06:08:27
[2026-06-12 06:08:27,799.799 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 06:08:27,982.982 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 06:08:27,985.985 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 06:08:28,121.121 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 06:08:28,188.188 INFO    ] time= 12/06/2026 06:08:28
[2026-06-12 06:08:28,212.212 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 06:08:28,218.218 INFO    ] Checking for existing commands in stream...
[2026-06-12 06:08:28,284.284 INFO    ] No existing commands found in stream
[2026-06-12 06:08:33,309.309 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 06:08:33,312.312 INFO    ] Waiting 1.73 seconds before fallback handling...
[2026-06-12 06:08:35,414.414 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 06:08:35,415.415 INFO    ] Checking for system updates...
[2026-06-12 06:08:35,436.436 INFO    ] 200
[2026-06-12 06:08:35,437.437 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:08:35,470.470 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 06:08:35,472.472 INFO    ] No update needed
[2026-06-12 06:08:35,473.473 INFO    ] Checking for camera pi updates...
[2026-06-12 06:08:35,494.494 INFO    ] 200
[2026-06-12 06:08:35,496.496 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:08:35,519.519 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 06:08:35,556.556 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 06:08:35,558.558 INFO    ] No camera update needed
[2026-06-12 06:08:35,559.559 INFO    ] Script finished. Safe exiting...
[2026-06-12 06:08:35,561.561 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 06:08:35,563.563 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 06:08:35,566.566 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 06:08:37,608.608 INFO    ] ================================================
[2026-06-12 06:08:37,624.624 INFO    ] Launching Daemon at Fri Jun 12 06:08:37 IST 2026
[2026-06-12 06:08:37,635.635 INFO    ] ================================================
[2026-06-12 06:08:37,998.998 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 06:08:37
[2026-06-12 06:08:38,308.308 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 06:08:38,453.453 INFO    ] Initializing speech engine...
[2026-06-12 06:08:38,457.457 INFO    ] 2026-06-12 06:08:38
[2026-06-12 06:08:38,662.662 INFO    ] 2026-06-12 06:08:38
[2026-06-12 06:08:38,692.692 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 06:08:38,875.875 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 06:08:38,879.879 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 06:08:39,026.026 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 06:08:39,084.084 INFO    ] time= 12/06/2026 06:08:39
[2026-06-12 06:08:39,106.106 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 06:08:39,113.113 INFO    ] Checking for existing commands in stream...
[2026-06-12 06:08:39,178.178 INFO    ] No existing commands found in stream
[2026-06-12 06:08:44,189.189 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 06:08:44,192.192 INFO    ] Waiting 1.01 seconds before fallback handling...
[2026-06-12 06:08:45,579.579 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 06:08:45,580.580 INFO    ] Checking for system updates...
[2026-06-12 06:08:45,603.603 INFO    ] 200
[2026-06-12 06:08:45,605.605 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:08:45,641.641 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 06:08:45,642.642 INFO    ] No update needed
[2026-06-12 06:08:45,644.644 INFO    ] Checking for camera pi updates...
[2026-06-12 06:08:45,664.664 INFO    ] 200
[2026-06-12 06:08:45,665.665 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:08:45,689.689 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 06:08:45,729.729 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 06:08:45,731.731 INFO    ] No camera update needed
[2026-06-12 06:08:45,732.732 INFO    ] Script finished. Safe exiting...
[2026-06-12 06:08:45,733.733 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 06:08:45,736.736 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 06:08:45,740.740 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 06:08:47,781.781 INFO    ] ================================================
[2026-06-12 06:08:47,796.796 INFO    ] Launching Daemon at Fri Jun 12 06:08:47 IST 2026
[2026-06-12 06:08:47,807.807 INFO    ] ================================================
[2026-06-12 06:08:48,151.151 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 06:08:48
[2026-06-12 06:08:48,464.464 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 06:08:48,601.601 INFO    ] Initializing speech engine...
[2026-06-12 06:08:48,611.611 INFO    ] 2026-06-12 06:08:48
[2026-06-12 06:08:48,814.814 INFO    ] 2026-06-12 06:08:48
[2026-06-12 06:08:48,842.842 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 06:08:49,032.032 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 06:08:49,041.041 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 06:08:49,178.178 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 06:08:49,231.231 INFO    ] time= 12/06/2026 06:08:49
[2026-06-12 06:08:49,259.259 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 06:08:49,282.282 INFO    ] Checking for existing commands in stream...
[2026-06-12 06:08:49,358.358 INFO    ] No existing commands found in stream
[2026-06-12 06:08:54,366.366 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 06:08:54,369.369 INFO    ] Waiting 3.73 seconds before fallback handling...
[2026-06-12 06:08:58,450.450 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 06:08:58,452.452 INFO    ] Checking for system updates...
[2026-06-12 06:08:58,478.478 INFO    ] 200
[2026-06-12 06:08:58,480.480 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:08:58,515.515 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 06:08:58,516.516 INFO    ] No update needed
[2026-06-12 06:08:58,517.517 INFO    ] Checking for camera pi updates...
[2026-06-12 06:08:58,537.537 INFO    ] 200
[2026-06-12 06:08:58,538.538 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:08:58,561.561 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 06:08:58,582.582 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 06:08:58,584.584 INFO    ] No camera update needed
[2026-06-12 06:08:58,585.585 INFO    ] Script finished. Safe exiting...
[2026-06-12 06:08:58,587.587 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 06:08:58,589.589 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 06:08:58,592.592 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 06:09:00,632.632 INFO    ] ================================================
[2026-06-12 06:09:00,648.648 INFO    ] Launching Daemon at Fri Jun 12 06:09:00 IST 2026
[2026-06-12 06:09:00,659.659 INFO    ] ================================================
[2026-06-12 06:09:00,998.998 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 06:09:00
[2026-06-12 06:09:01,367.367 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 06:09:01,618.618 INFO    ] Initializing speech engine...
[2026-06-12 06:09:01,623.623 INFO    ] 2026-06-12 06:09:01
[2026-06-12 06:09:01,856.856 INFO    ] 2026-06-12 06:09:01
[2026-06-12 06:09:01,887.887 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 06:09:02,092.092 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 06:09:02,102.102 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 06:09:02,222.222 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 06:09:02,224.224 INFO    ] time= 12/06/2026 06:09:02
[2026-06-12 06:09:02,261.261 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 06:09:02,328.328 INFO    ] Checking for existing commands in stream...
[2026-06-12 06:09:02,457.457 INFO    ] No existing commands found in stream
[2026-06-12 06:09:07,468.468 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 06:09:07,471.471 INFO    ] Waiting 1.51 seconds before fallback handling...
[2026-06-12 06:09:09,352.352 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 06:09:09,353.353 INFO    ] Checking for system updates...
[2026-06-12 06:09:09,374.374 INFO    ] 200
[2026-06-12 06:09:09,375.375 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:09:09,411.411 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 06:09:09,412.412 INFO    ] No update needed
[2026-06-12 06:09:09,414.414 INFO    ] Checking for camera pi updates...
[2026-06-12 06:09:09,433.433 INFO    ] 200
[2026-06-12 06:09:09,435.435 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:09:09,458.458 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 06:09:09,491.491 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 06:09:09,492.492 INFO    ] No camera update needed
[2026-06-12 06:09:09,494.494 INFO    ] Script finished. Safe exiting...
[2026-06-12 06:09:09,495.495 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 06:09:09,498.498 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 06:09:09,501.501 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 06:09:11,540.540 INFO    ] ================================================
[2026-06-12 06:09:11,555.555 INFO    ] Launching Daemon at Fri Jun 12 06:09:11 IST 2026
[2026-06-12 06:09:11,566.566 INFO    ] ================================================
[2026-06-12 06:09:11,911.911 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 06:09:11
[2026-06-12 06:09:12,226.226 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 06:09:12,392.392 INFO    ] Initializing speech engine...
[2026-06-12 06:09:12,397.397 INFO    ] 2026-06-12 06:09:12
[2026-06-12 06:09:12,608.608 INFO    ] 2026-06-12 06:09:12
[2026-06-12 06:09:12,637.637 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 06:09:12,781.781 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 06:09:12,832.832 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 06:09:12,977.977 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 06:09:13,041.041 INFO    ] time= 12/06/2026 06:09:12
[2026-06-12 06:09:13,065.065 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 06:09:13,071.071 INFO    ] Checking for existing commands in stream...
[2026-06-12 06:09:13,140.140 INFO    ] No existing commands found in stream
[2026-06-12 06:09:18,154.154 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 06:09:18,158.158 INFO    ] Waiting 3.70 seconds before fallback handling...
[2026-06-12 06:09:22,251.251 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 06:09:22,253.253 INFO    ] Checking for system updates...
[2026-06-12 06:09:22,276.276 INFO    ] 200
[2026-06-12 06:09:22,277.277 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:09:22,307.307 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 06:09:22,308.308 INFO    ] No update needed
[2026-06-12 06:09:22,310.310 INFO    ] Checking for camera pi updates...
[2026-06-12 06:09:22,331.331 INFO    ] 200
[2026-06-12 06:09:22,332.332 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:09:22,357.357 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 06:09:22,397.397 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 06:09:22,398.398 INFO    ] No camera update needed
[2026-06-12 06:09:22,399.399 INFO    ] Script finished. Safe exiting...
[2026-06-12 06:09:22,401.401 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 06:09:22,404.404 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 06:09:22,406.406 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 06:09:24,445.445 INFO    ] ================================================
[2026-06-12 06:09:24,461.461 INFO    ] Launching Daemon at Fri Jun 12 06:09:24 IST 2026
[2026-06-12 06:09:24,472.472 INFO    ] ================================================
[2026-06-12 06:09:24,840.840 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 06:09:24
[2026-06-12 06:09:25,159.159 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 06:09:25,293.293 INFO    ] Initializing speech engine...
[2026-06-12 06:09:25,298.298 INFO    ] 2026-06-12 06:09:25
[2026-06-12 06:09:25,493.493 INFO    ] 2026-06-12 06:09:25
[2026-06-12 06:09:25,539.539 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 06:09:25,699.699 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 06:09:25,757.757 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 06:09:25,916.916 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 06:09:25,978.978 INFO    ] time= 12/06/2026 06:09:25
[2026-06-12 06:09:26,014.014 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 06:09:26,021.021 INFO    ] Checking for existing commands in stream...
[2026-06-12 06:09:26,097.097 INFO    ] No existing commands found in stream
[2026-06-12 06:09:31,108.108 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 06:09:31,111.111 INFO    ] Waiting 1.87 seconds before fallback handling...
[2026-06-12 06:09:33,331.331 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 06:09:33,332.332 INFO    ] Checking for system updates...
[2026-06-12 06:09:33,354.354 INFO    ] 200
[2026-06-12 06:09:33,356.356 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:09:33,386.386 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 06:09:33,387.387 INFO    ] No update needed
[2026-06-12 06:09:33,388.388 INFO    ] Checking for camera pi updates...
[2026-06-12 06:09:33,408.408 INFO    ] 200
[2026-06-12 06:09:33,409.409 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:09:33,434.434 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 06:09:33,462.462 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 06:09:33,463.463 INFO    ] No camera update needed
[2026-06-12 06:09:33,465.465 INFO    ] Script finished. Safe exiting...
[2026-06-12 06:09:33,466.466 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 06:09:33,469.469 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 06:09:33,472.472 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 06:09:35,510.510 INFO    ] ================================================
[2026-06-12 06:09:35,525.525 INFO    ] Launching Daemon at Fri Jun 12 06:09:35 IST 2026
[2026-06-12 06:09:35,536.536 INFO    ] ================================================
[2026-06-12 06:09:35,865.865 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 06:09:35
[2026-06-12 06:09:36,177.177 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 06:09:36,321.321 INFO    ] Initializing speech engine...
[2026-06-12 06:09:36,326.326 INFO    ] 2026-06-12 06:09:36
[2026-06-12 06:09:36,531.531 INFO    ] 2026-06-12 06:09:36
[2026-06-12 06:09:36,561.561 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 06:09:36,685.685 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 06:09:36,749.749 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 06:09:36,882.882 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 06:09:36,938.938 INFO    ] time= 12/06/2026 06:09:36
[2026-06-12 06:09:36,982.982 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 06:09:36,988.988 INFO    ] Checking for existing commands in stream...
[2026-06-12 06:09:37,056.056 INFO    ] No existing commands found in stream
[2026-06-12 06:09:42,061.061 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 06:09:42,064.064 INFO    ] Waiting 0.44 seconds before fallback handling...
[2026-06-12 06:09:42,871.871 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 06:09:42,872.872 INFO    ] Checking for system updates...
[2026-06-12 06:09:42,894.894 INFO    ] 200
[2026-06-12 06:09:42,896.896 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:09:42,926.926 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 06:09:42,927.927 INFO    ] No update needed
[2026-06-12 06:09:42,928.928 INFO    ] Checking for camera pi updates...
[2026-06-12 06:09:42,948.948 INFO    ] 200
[2026-06-12 06:09:42,949.949 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:09:42,972.972 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 06:09:43,010.010 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 06:09:43,011.011 INFO    ] No camera update needed
[2026-06-12 06:09:43,012.012 INFO    ] Script finished. Safe exiting...
[2026-06-12 06:09:43,013.013 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 06:09:43,016.016 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 06:09:43,019.019 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 06:09:45,057.057 INFO    ] ================================================
[2026-06-12 06:09:45,073.073 INFO    ] Launching Daemon at Fri Jun 12 06:09:45 IST 2026
[2026-06-12 06:09:45,084.084 INFO    ] ================================================
[2026-06-12 06:09:45,429.429 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 06:09:45
[2026-06-12 06:09:45,742.742 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 06:09:45,871.871 INFO    ] Initializing speech engine...
[2026-06-12 06:09:45,875.875 INFO    ] 2026-06-12 06:09:45
[2026-06-12 06:09:46,091.091 INFO    ] 2026-06-12 06:09:46
[2026-06-12 06:09:46,120.120 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 06:09:46,302.302 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 06:09:46,306.306 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 06:09:46,441.441 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 06:09:46,509.509 INFO    ] time= 12/06/2026 06:09:46
[2026-06-12 06:09:46,533.533 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 06:09:46,539.539 INFO    ] Checking for existing commands in stream...
[2026-06-12 06:09:46,629.629 INFO    ] No existing commands found in stream
[2026-06-12 06:09:51,634.634 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 06:09:51,637.637 INFO    ] Waiting 2.87 seconds before fallback handling...
[2026-06-12 06:09:54,891.891 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 06:09:54,893.893 INFO    ] Checking for system updates...
[2026-06-12 06:09:54,914.914 INFO    ] 200
[2026-06-12 06:09:54,916.916 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:09:54,949.949 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 06:09:54,950.950 INFO    ] No update needed
[2026-06-12 06:09:54,952.952 INFO    ] Checking for camera pi updates...
[2026-06-12 06:09:54,971.971 INFO    ] 200
[2026-06-12 06:09:54,973.973 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:09:54,998.998 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 06:09:55,034.034 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 06:09:55,035.035 INFO    ] No camera update needed
[2026-06-12 06:09:55,036.036 INFO    ] Script finished. Safe exiting...
[2026-06-12 06:09:55,037.037 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 06:09:55,041.041 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 06:09:55,043.043 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 06:09:57,082.082 INFO    ] ================================================
[2026-06-12 06:09:57,097.097 INFO    ] Launching Daemon at Fri Jun 12 06:09:57 IST 2026
[2026-06-12 06:09:57,108.108 INFO    ] ================================================
[2026-06-12 06:09:57,480.480 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 06:09:57
[2026-06-12 06:09:57,791.791 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 06:09:57,921.921 INFO    ] Initializing speech engine...
[2026-06-12 06:09:57,924.924 INFO    ] 2026-06-12 06:09:57
[2026-06-12 06:09:58,141.141 INFO    ] 2026-06-12 06:09:58
[2026-06-12 06:09:58,169.169 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 06:09:58,351.351 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 06:09:58,361.361 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 06:09:58,482.482 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 06:09:58,542.542 INFO    ] time= 12/06/2026 06:09:58
[2026-06-12 06:09:58,579.579 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 06:09:58,581.581 INFO    ] Checking for existing commands in stream...
[2026-06-12 06:09:58,652.652 INFO    ] No existing commands found in stream
[2026-06-12 06:10:03,666.666 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 06:10:03,669.669 INFO    ] Waiting 0.67 seconds before fallback handling...
[2026-06-12 06:10:08,069.069 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 06:10:08,072.072 INFO    ] Checking for system updates...
[2026-06-12 06:10:08,108.108 INFO    ] 200
[2026-06-12 06:10:08,110.110 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:10:08,163.163 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 06:10:08,166.166 INFO    ] No update needed
[2026-06-12 06:10:08,168.168 INFO    ] Checking for camera pi updates...
[2026-06-12 06:10:08,195.195 INFO    ] 200
[2026-06-12 06:10:08,196.196 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:10:08,219.219 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 06:10:08,263.263 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 06:10:08,265.265 INFO    ] No camera update needed
[2026-06-12 06:10:08,266.266 INFO    ] Script finished. Safe exiting...
[2026-06-12 06:10:08,267.267 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 06:10:08,270.270 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 06:10:08,273.273 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 06:10:10,314.314 INFO    ] ================================================
[2026-06-12 06:10:10,330.330 INFO    ] Launching Daemon at Fri Jun 12 06:10:10 IST 2026
[2026-06-12 06:10:10,341.341 INFO    ] ================================================
[2026-06-12 06:10:10,709.709 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 06:10:10
[2026-06-12 06:10:11,028.028 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 06:10:11,159.159 INFO    ] Initializing speech engine...
[2026-06-12 06:10:11,162.162 INFO    ] 2026-06-12 06:10:11
[2026-06-12 06:10:11,381.381 INFO    ] 2026-06-12 06:10:11
[2026-06-12 06:10:11,411.411 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 06:10:11,597.597 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 06:10:11,605.605 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 06:10:11,728.728 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 06:10:11,789.789 INFO    ] time= 12/06/2026 06:10:11
[2026-06-12 06:10:11,824.824 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 06:10:11,830.830 INFO    ] Checking for existing commands in stream...
[2026-06-12 06:10:11,902.902 INFO    ] No existing commands found in stream
[2026-06-12 06:10:16,934.934 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 06:10:16,937.937 INFO    ] Waiting 2.68 seconds before fallback handling...
[2026-06-12 06:10:19,982.982 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 06:10:19,983.983 INFO    ] Checking for system updates...
[2026-06-12 06:10:20,003.003 INFO    ] 200
[2026-06-12 06:10:20,005.005 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:10:20,035.035 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 06:10:20,037.037 INFO    ] No update needed
[2026-06-12 06:10:20,038.038 INFO    ] Checking for camera pi updates...
[2026-06-12 06:10:20,059.059 INFO    ] 200
[2026-06-12 06:10:20,061.061 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:10:20,086.086 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 06:10:20,125.125 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 06:10:20,126.126 INFO    ] No camera update needed
[2026-06-12 06:10:20,127.127 INFO    ] Script finished. Safe exiting...
[2026-06-12 06:10:20,129.129 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 06:10:20,132.132 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 06:10:20,134.134 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 06:10:22,174.174 INFO    ] ================================================
[2026-06-12 06:10:22,191.191 INFO    ] Launching Daemon at Fri Jun 12 06:10:22 IST 2026
[2026-06-12 06:10:22,203.203 INFO    ] ================================================
[2026-06-12 06:10:22,545.545 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 06:10:22
[2026-06-12 06:10:22,858.858 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 06:10:23,001.001 INFO    ] Initializing speech engine...
[2026-06-12 06:10:23,006.006 INFO    ] 2026-06-12 06:10:23
[2026-06-12 06:10:23,213.213 INFO    ] 2026-06-12 06:10:23
[2026-06-12 06:10:23,241.241 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 06:10:23,428.428 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 06:10:23,436.436 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 06:10:23,561.561 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 06:10:23,632.632 INFO    ] time= 12/06/2026 06:10:23
[2026-06-12 06:10:23,660.660 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 06:10:23,666.666 INFO    ] Checking for existing commands in stream...
[2026-06-12 06:10:23,782.782 INFO    ] No existing commands found in stream
[2026-06-12 06:10:28,792.792 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 06:10:28,795.795 INFO    ] Waiting 3.38 seconds before fallback handling...
[2026-06-12 06:10:32,493.493 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 06:10:32,495.495 INFO    ] Checking for system updates...
[2026-06-12 06:10:32,518.518 INFO    ] 200
[2026-06-12 06:10:32,519.519 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:10:32,556.556 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 06:10:32,558.558 INFO    ] No update needed
[2026-06-12 06:10:32,560.560 INFO    ] Checking for camera pi updates...
[2026-06-12 06:10:32,582.582 INFO    ] 200
[2026-06-12 06:10:32,583.583 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:10:32,624.624 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 06:10:32,652.652 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 06:10:32,655.655 INFO    ] No camera update needed
[2026-06-12 06:10:32,657.657 INFO    ] Script finished. Safe exiting...
[2026-06-12 06:10:32,659.659 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 06:10:32,665.665 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 06:10:32,670.670 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 06:10:34,713.713 INFO    ] ================================================
[2026-06-12 06:10:34,729.729 INFO    ] Launching Daemon at Fri Jun 12 06:10:34 IST 2026
[2026-06-12 06:10:34,740.740 INFO    ] ================================================
[2026-06-12 06:10:35,117.117 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 06:10:35
[2026-06-12 06:10:35,467.467 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 06:10:35,620.620 INFO    ] Initializing speech engine...
[2026-06-12 06:10:35,626.626 INFO    ] 2026-06-12 06:10:35
[2026-06-12 06:10:35,835.835 INFO    ] 2026-06-12 06:10:35
[2026-06-12 06:10:35,864.864 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 06:10:36,049.049 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 06:10:36,059.059 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 06:10:36,203.203 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 06:10:36,256.256 INFO    ] time= 12/06/2026 06:10:36
[2026-06-12 06:10:36,278.278 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 06:10:36,285.285 INFO    ] Checking for existing commands in stream...
[2026-06-12 06:10:36,352.352 INFO    ] No existing commands found in stream
[2026-06-12 06:10:41,367.367 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 06:10:41,371.371 INFO    ] Waiting 0.24 seconds before fallback handling...
[2026-06-12 06:10:42,043.043 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 06:10:42,045.045 INFO    ] Checking for system updates...
[2026-06-12 06:10:42,070.070 INFO    ] 200
[2026-06-12 06:10:42,072.072 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:10:42,105.105 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 06:10:42,107.107 INFO    ] No update needed
[2026-06-12 06:10:42,108.108 INFO    ] Checking for camera pi updates...
[2026-06-12 06:10:42,130.130 INFO    ] 200
[2026-06-12 06:10:42,132.132 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:10:42,157.157 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 06:10:42,203.203 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 06:10:42,205.205 INFO    ] No camera update needed
[2026-06-12 06:10:42,206.206 INFO    ] Script finished. Safe exiting...
[2026-06-12 06:10:42,208.208 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 06:10:42,211.211 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 06:10:42,214.214 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 06:10:44,255.255 INFO    ] ================================================
[2026-06-12 06:10:44,271.271 INFO    ] Launching Daemon at Fri Jun 12 06:10:44 IST 2026
[2026-06-12 06:10:44,283.283 INFO    ] ================================================
[2026-06-12 06:10:44,608.608 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 06:10:44
[2026-06-12 06:10:44,921.921 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 06:10:45,053.053 INFO    ] Initializing speech engine...
[2026-06-12 06:10:45,057.057 INFO    ] 2026-06-12 06:10:45
[2026-06-12 06:10:45,272.272 INFO    ] 2026-06-12 06:10:45
[2026-06-12 06:10:45,301.301 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 06:10:45,485.485 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 06:10:45,494.494 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 06:10:45,623.623 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 06:10:45,687.687 INFO    ] time= 12/06/2026 06:10:45
[2026-06-12 06:10:45,714.714 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 06:10:45,721.721 INFO    ] Checking for existing commands in stream...
[2026-06-12 06:10:45,787.787 INFO    ] No existing commands found in stream
[2026-06-12 06:10:50,796.796 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 06:10:50,799.799 INFO    ] Waiting 1.97 seconds before fallback handling...
[2026-06-12 06:10:53,141.141 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 06:10:53,143.143 INFO    ] Checking for system updates...
[2026-06-12 06:10:53,163.163 INFO    ] 200
[2026-06-12 06:10:53,164.164 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:10:53,197.197 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 06:10:53,198.198 INFO    ] No update needed
[2026-06-12 06:10:53,200.200 INFO    ] Checking for camera pi updates...
[2026-06-12 06:10:53,221.221 INFO    ] 200
[2026-06-12 06:10:53,222.222 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:10:53,247.247 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 06:10:53,293.293 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 06:10:53,295.295 INFO    ] No camera update needed
[2026-06-12 06:10:53,296.296 INFO    ] Script finished. Safe exiting...
[2026-06-12 06:10:53,297.297 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 06:10:53,300.300 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 06:10:53,303.303 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 06:10:55,342.342 INFO    ] ================================================
[2026-06-12 06:10:55,358.358 INFO    ] Launching Daemon at Fri Jun 12 06:10:55 IST 2026
[2026-06-12 06:10:55,371.371 INFO    ] ================================================
[2026-06-12 06:10:55,749.749 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 06:10:55
[2026-06-12 06:10:56,093.093 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 06:10:56,244.244 INFO    ] Initializing speech engine...
[2026-06-12 06:10:56,250.250 INFO    ] 2026-06-12 06:10:56
[2026-06-12 06:10:56,459.459 INFO    ] 2026-06-12 06:10:56
[2026-06-12 06:10:56,488.488 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 06:10:56,616.616 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 06:10:56,674.674 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 06:10:56,811.811 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 06:10:56,877.877 INFO    ] time= 12/06/2026 06:10:56
[2026-06-12 06:10:56,902.902 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 06:10:56,909.909 INFO    ] Checking for existing commands in stream...
[2026-06-12 06:10:56,975.975 INFO    ] No existing commands found in stream
[2026-06-12 06:11:01,989.989 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 06:11:01,992.992 INFO    ] Waiting 2.42 seconds before fallback handling...
[2026-06-12 06:11:04,793.793 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 06:11:04,795.795 INFO    ] Checking for system updates...
[2026-06-12 06:11:04,818.818 INFO    ] 200
[2026-06-12 06:11:04,820.820 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:11:04,853.853 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 06:11:04,855.855 INFO    ] No update needed
[2026-06-12 06:11:04,856.856 INFO    ] Checking for camera pi updates...
[2026-06-12 06:11:04,877.877 INFO    ] 200
[2026-06-12 06:11:04,879.879 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:11:04,902.902 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 06:11:04,939.939 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 06:11:04,940.940 INFO    ] No camera update needed
[2026-06-12 06:11:04,942.942 INFO    ] Script finished. Safe exiting...
[2026-06-12 06:11:04,943.943 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 06:11:04,946.946 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 06:11:04,948.948 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 06:11:06,987.987 INFO    ] ================================================
[2026-06-12 06:11:07,003.003 INFO    ] Launching Daemon at Fri Jun 12 06:11:06 IST 2026
[2026-06-12 06:11:07,014.014 INFO    ] ================================================
[2026-06-12 06:11:07,351.351 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 06:11:07
[2026-06-12 06:11:07,668.668 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 06:11:07,812.812 INFO    ] Initializing speech engine...
[2026-06-12 06:11:07,818.818 INFO    ] 2026-06-12 06:11:07
[2026-06-12 06:11:08,022.022 INFO    ] 2026-06-12 06:11:08
[2026-06-12 06:11:08,050.050 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 06:11:08,234.234 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 06:11:08,243.243 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 06:11:08,369.369 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 06:11:08,430.430 INFO    ] time= 12/06/2026 06:11:08
[2026-06-12 06:11:08,462.462 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 06:11:08,464.464 INFO    ] Checking for existing commands in stream...
[2026-06-12 06:11:08,536.536 INFO    ] No existing commands found in stream
[2026-06-12 06:11:13,550.550 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 06:11:13,553.553 INFO    ] Waiting 0.14 seconds before fallback handling...
[2026-06-12 06:11:14,053.053 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 06:11:14,054.054 INFO    ] Checking for system updates...
[2026-06-12 06:11:14,076.076 INFO    ] 200
[2026-06-12 06:11:14,078.078 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:11:14,108.108 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 06:11:14,109.109 INFO    ] No update needed
[2026-06-12 06:11:14,111.111 INFO    ] Checking for camera pi updates...
[2026-06-12 06:11:14,130.130 INFO    ] 200
[2026-06-12 06:11:14,132.132 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:11:14,155.155 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 06:11:14,195.195 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 06:11:14,196.196 INFO    ] No camera update needed
[2026-06-12 06:11:14,198.198 INFO    ] Script finished. Safe exiting...
[2026-06-12 06:11:14,199.199 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 06:11:14,202.202 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 06:11:14,205.205 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 06:11:16,243.243 INFO    ] ================================================
[2026-06-12 06:11:16,258.258 INFO    ] Launching Daemon at Fri Jun 12 06:11:16 IST 2026
[2026-06-12 06:11:16,269.269 INFO    ] ================================================
[2026-06-12 06:11:16,625.625 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 06:11:16
[2026-06-12 06:11:16,937.937 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 06:11:17,069.069 INFO    ] Initializing speech engine...
[2026-06-12 06:11:17,081.081 INFO    ] 2026-06-12 06:11:17
[2026-06-12 06:11:17,287.287 INFO    ] 2026-06-12 06:11:17
[2026-06-12 06:11:17,315.315 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 06:11:17,499.499 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 06:11:17,503.503 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 06:11:17,632.632 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 06:11:17,688.688 INFO    ] time= 12/06/2026 06:11:17
[2026-06-12 06:11:17,731.731 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 06:11:17,733.733 INFO    ] Checking for existing commands in stream...
[2026-06-12 06:11:17,804.804 INFO    ] No existing commands found in stream
[2026-06-12 06:11:22,813.813 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 06:11:22,816.816 INFO    ] Waiting 3.57 seconds before fallback handling...
[2026-06-12 06:11:26,761.761 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 06:11:26,763.763 INFO    ] Checking for system updates...
[2026-06-12 06:11:26,785.785 INFO    ] 200
[2026-06-12 06:11:26,786.786 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:11:26,819.819 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 06:11:26,820.820 INFO    ] No update needed
[2026-06-12 06:11:26,822.822 INFO    ] Checking for camera pi updates...
[2026-06-12 06:11:26,843.843 INFO    ] 200
[2026-06-12 06:11:26,844.844 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:11:26,869.869 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 06:11:26,903.903 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 06:11:26,905.905 INFO    ] No camera update needed
[2026-06-12 06:11:26,906.906 INFO    ] Script finished. Safe exiting...
[2026-06-12 06:11:26,908.908 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 06:11:26,911.911 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 06:11:26,914.914 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 06:11:28,954.954 INFO    ] ================================================
[2026-06-12 06:11:28,971.971 INFO    ] Launching Daemon at Fri Jun 12 06:11:28 IST 2026
[2026-06-12 06:11:28,982.982 INFO    ] ================================================
[2026-06-12 06:11:29,332.332 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 06:11:29
[2026-06-12 06:11:29,648.648 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 06:11:29,792.792 INFO    ] Initializing speech engine...
[2026-06-12 06:11:29,797.797 INFO    ] 2026-06-12 06:11:29
[2026-06-12 06:11:30,000.000 INFO    ] 2026-06-12 06:11:29
[2026-06-12 06:11:30,030.030 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 06:11:30,212.212 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 06:11:30,215.215 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 06:11:30,351.351 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 06:11:30,417.417 INFO    ] time= 12/06/2026 06:11:30
[2026-06-12 06:11:30,441.441 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 06:11:30,447.447 INFO    ] Checking for existing commands in stream...
[2026-06-12 06:11:30,514.514 INFO    ] No existing commands found in stream
[2026-06-12 06:11:35,543.543 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 06:11:35,546.546 INFO    ] Waiting 1.69 seconds before fallback handling...
[2026-06-12 06:11:37,631.631 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 06:11:37,633.633 INFO    ] Checking for system updates...
[2026-06-12 06:11:37,655.655 INFO    ] 200
[2026-06-12 06:11:37,656.656 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:11:37,689.689 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 06:11:37,690.690 INFO    ] No update needed
[2026-06-12 06:11:37,691.691 INFO    ] Checking for camera pi updates...
[2026-06-12 06:11:37,711.711 INFO    ] 200
[2026-06-12 06:11:37,712.712 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:11:37,737.737 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 06:11:37,775.775 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 06:11:37,777.777 INFO    ] No camera update needed
[2026-06-12 06:11:37,778.778 INFO    ] Script finished. Safe exiting...
[2026-06-12 06:11:37,779.779 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 06:11:37,783.783 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 06:11:37,786.786 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 06:11:39,826.826 INFO    ] ================================================
[2026-06-12 06:11:39,842.842 INFO    ] Launching Daemon at Fri Jun 12 06:11:39 IST 2026
[2026-06-12 06:11:39,853.853 INFO    ] ================================================
[2026-06-12 06:11:40,191.191 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 06:11:40
[2026-06-12 06:11:40,508.508 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 06:11:40,647.647 INFO    ] Initializing speech engine...
[2026-06-12 06:11:40,657.657 INFO    ] 2026-06-12 06:11:40
[2026-06-12 06:11:40,861.861 INFO    ] 2026-06-12 06:11:40
[2026-06-12 06:11:40,889.889 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 06:11:41,073.073 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 06:11:41,077.077 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 06:11:41,212.212 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 06:11:41,271.271 INFO    ] time= 12/06/2026 06:11:41
[2026-06-12 06:11:41,303.303 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 06:11:41,304.304 INFO    ] Checking for existing commands in stream...
[2026-06-12 06:11:41,376.376 INFO    ] No existing commands found in stream
[2026-06-12 06:11:46,390.390 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 06:11:46,393.393 INFO    ] Waiting 2.40 seconds before fallback handling...
[2026-06-12 06:11:49,152.152 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 06:11:49,153.153 INFO    ] Checking for system updates...
[2026-06-12 06:11:49,176.176 INFO    ] 200
[2026-06-12 06:11:49,177.177 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:11:49,213.213 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 06:11:49,214.214 INFO    ] No update needed
[2026-06-12 06:11:49,216.216 INFO    ] Checking for camera pi updates...
[2026-06-12 06:11:49,238.238 INFO    ] 200
[2026-06-12 06:11:49,239.239 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:11:49,265.265 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 06:11:49,303.303 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 06:11:49,304.304 INFO    ] No camera update needed
[2026-06-12 06:11:49,306.306 INFO    ] Script finished. Safe exiting...
[2026-06-12 06:11:49,307.307 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 06:11:49,310.310 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 06:11:49,313.313 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 06:11:51,352.352 INFO    ] ================================================
[2026-06-12 06:11:51,367.367 INFO    ] Launching Daemon at Fri Jun 12 06:11:51 IST 2026
[2026-06-12 06:11:51,379.379 INFO    ] ================================================
[2026-06-12 06:11:51,740.740 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 06:11:51
[2026-06-12 06:11:52,052.052 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 06:11:52,185.185 INFO    ] Initializing speech engine...
[2026-06-12 06:11:52,198.198 INFO    ] 2026-06-12 06:11:52
[2026-06-12 06:11:52,402.402 INFO    ] 2026-06-12 06:11:52
[2026-06-12 06:11:52,431.431 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 06:11:52,614.614 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 06:11:52,617.617 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 06:11:52,749.749 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 06:11:52,806.806 INFO    ] time= 12/06/2026 06:11:52
[2026-06-12 06:11:52,835.835 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 06:11:52,845.845 INFO    ] Checking for existing commands in stream...
[2026-06-12 06:11:52,916.916 INFO    ] No existing commands found in stream
[2026-06-12 06:11:57,925.925 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 06:11:57,928.928 INFO    ] Waiting 3.65 seconds before fallback handling...
[2026-06-12 06:12:01,906.906 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 06:12:01,908.908 INFO    ] Checking for system updates...
[2026-06-12 06:12:01,934.934 INFO    ] 200
[2026-06-12 06:12:01,935.935 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:12:01,973.973 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 06:12:01,975.975 INFO    ] No update needed
[2026-06-12 06:12:01,977.977 INFO    ] Checking for camera pi updates...
[2026-06-12 06:12:02,008.008 INFO    ] 200
[2026-06-12 06:12:02,010.010 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:12:02,050.050 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 06:12:02,081.081 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 06:12:02,083.083 INFO    ] No camera update needed
[2026-06-12 06:12:02,085.085 INFO    ] Script finished. Safe exiting...
[2026-06-12 06:12:02,087.087 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 06:12:02,090.090 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 06:12:02,094.094 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 06:12:04,134.134 INFO    ] ================================================
[2026-06-12 06:12:04,150.150 INFO    ] Launching Daemon at Fri Jun 12 06:12:04 IST 2026
[2026-06-12 06:12:04,161.161 INFO    ] ================================================
[2026-06-12 06:12:04,549.549 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 06:12:04
[2026-06-12 06:12:04,891.891 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 06:12:05,045.045 INFO    ] Initializing speech engine...
[2026-06-12 06:12:05,050.050 INFO    ] 2026-06-12 06:12:05
[2026-06-12 06:12:05,263.263 INFO    ] 2026-06-12 06:12:05
[2026-06-12 06:12:05,292.292 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 06:12:05,443.443 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 06:12:05,482.482 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 06:12:05,643.643 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 06:12:05,711.711 INFO    ] time= 12/06/2026 06:12:05
[2026-06-12 06:12:05,739.739 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 06:12:05,746.746 INFO    ] Checking for existing commands in stream...
[2026-06-12 06:12:05,814.814 INFO    ] No existing commands found in stream
[2026-06-12 06:12:10,828.828 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 06:12:10,832.832 INFO    ] Waiting 2.61 seconds before fallback handling...
[2026-06-12 06:12:13,832.832 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 06:12:13,834.834 INFO    ] Checking for system updates...
[2026-06-12 06:12:13,856.856 INFO    ] 200
[2026-06-12 06:12:13,858.858 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:12:13,892.892 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 06:12:13,893.893 INFO    ] No update needed
[2026-06-12 06:12:13,895.895 INFO    ] Checking for camera pi updates...
[2026-06-12 06:12:13,916.916 INFO    ] 200
[2026-06-12 06:12:13,917.917 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:12:13,943.943 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 06:12:13,983.983 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 06:12:13,984.984 INFO    ] No camera update needed
[2026-06-12 06:12:13,986.986 INFO    ] Script finished. Safe exiting...
[2026-06-12 06:12:13,987.987 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 06:12:13,991.991 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 06:12:13,994.994 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 06:12:16,027.027 INFO    ] ================================================
[2026-06-12 06:12:16,036.036 INFO    ] Launching Daemon at Fri Jun 12 06:12:16 IST 2026
[2026-06-12 06:12:16,043.043 INFO    ] ================================================
[2026-06-12 06:12:16,415.415 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 06:12:16
[2026-06-12 06:12:16,782.782 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 06:12:16,913.913 INFO    ] Initializing speech engine...
[2026-06-12 06:12:16,926.926 INFO    ] 2026-06-12 06:12:16
[2026-06-12 06:12:17,132.132 INFO    ] 2026-06-12 06:12:17
[2026-06-12 06:12:17,161.161 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 06:12:17,345.345 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 06:12:17,354.354 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 06:12:17,477.477 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 06:12:17,533.533 INFO    ] time= 12/06/2026 06:12:17
[2026-06-12 06:12:17,573.573 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 06:12:17,578.578 INFO    ] Checking for existing commands in stream...
[2026-06-12 06:12:17,675.675 INFO    ] No existing commands found in stream
[2026-06-12 06:12:22,683.683 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 06:12:22,686.686 INFO    ] Waiting 2.39 seconds before fallback handling...
[2026-06-12 06:12:25,446.446 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 06:12:25,448.448 INFO    ] Checking for system updates...
[2026-06-12 06:12:25,470.470 INFO    ] 200
[2026-06-12 06:12:25,471.471 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:12:25,506.506 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 06:12:25,507.507 INFO    ] No update needed
[2026-06-12 06:12:25,509.509 INFO    ] Checking for camera pi updates...
[2026-06-12 06:12:25,530.530 INFO    ] 200
[2026-06-12 06:12:25,532.532 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:12:25,560.560 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 06:12:25,595.595 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 06:12:25,596.596 INFO    ] No camera update needed
[2026-06-12 06:12:25,598.598 INFO    ] Script finished. Safe exiting...
[2026-06-12 06:12:25,599.599 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 06:12:25,603.603 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 06:12:25,606.606 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 06:12:27,645.645 INFO    ] ================================================
[2026-06-12 06:12:27,661.661 INFO    ] Launching Daemon at Fri Jun 12 06:12:27 IST 2026
[2026-06-12 06:12:27,672.672 INFO    ] ================================================
[2026-06-12 06:12:28,036.036 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 06:12:28
[2026-06-12 06:12:28,374.374 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 06:12:28,503.503 INFO    ] Initializing speech engine...
[2026-06-12 06:12:28,507.507 INFO    ] 2026-06-12 06:12:28
[2026-06-12 06:12:28,725.725 INFO    ] 2026-06-12 06:12:28
[2026-06-12 06:12:28,754.754 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 06:12:28,940.940 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 06:12:28,944.944 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 06:12:29,081.081 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 06:12:29,145.145 INFO    ] time= 12/06/2026 06:12:29
[2026-06-12 06:12:29,174.174 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 06:12:29,181.181 INFO    ] Checking for existing commands in stream...
[2026-06-12 06:12:29,272.272 INFO    ] No existing commands found in stream
[2026-06-12 06:12:34,306.306 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 06:12:34,309.309 INFO    ] Waiting 0.08 seconds before fallback handling...
[2026-06-12 06:12:34,742.742 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 06:12:34,743.743 INFO    ] Checking for system updates...
[2026-06-12 06:12:34,763.763 INFO    ] 200
[2026-06-12 06:12:34,765.765 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:12:34,797.797 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 06:12:34,799.799 INFO    ] No update needed
[2026-06-12 06:12:34,800.800 INFO    ] Checking for camera pi updates...
[2026-06-12 06:12:34,821.821 INFO    ] 200
[2026-06-12 06:12:34,822.822 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:12:34,845.845 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 06:12:34,988.988 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 06:12:34,990.990 INFO    ] No camera update needed
[2026-06-12 06:12:34,991.991 INFO    ] Script finished. Safe exiting...
[2026-06-12 06:12:34,992.992 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 06:12:34,995.995 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 06:12:34,998.998 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 06:12:37,037.037 INFO    ] ================================================
[2026-06-12 06:12:37,052.052 INFO    ] Launching Daemon at Fri Jun 12 06:12:37 IST 2026
[2026-06-12 06:12:37,063.063 INFO    ] ================================================
[2026-06-12 06:12:37,389.389 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 06:12:37
[2026-06-12 06:12:37,705.705 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 06:12:37,848.848 INFO    ] Initializing speech engine...
[2026-06-12 06:12:37,854.854 INFO    ] 2026-06-12 06:12:37
[2026-06-12 06:12:38,058.058 INFO    ] 2026-06-12 06:12:38
[2026-06-12 06:12:38,088.088 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 06:12:38,270.270 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 06:12:38,274.274 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 06:12:38,409.409 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 06:12:38,473.473 INFO    ] time= 12/06/2026 06:12:38
[2026-06-12 06:12:38,500.500 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 06:12:38,506.506 INFO    ] Checking for existing commands in stream...
[2026-06-12 06:12:38,572.572 INFO    ] No existing commands found in stream
[2026-06-12 06:12:43,596.596 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 06:12:43,599.599 INFO    ] Waiting 0.31 seconds before fallback handling...
[2026-06-12 06:12:44,250.250 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 06:12:44,252.252 INFO    ] Checking for system updates...
[2026-06-12 06:12:44,273.273 INFO    ] 200
[2026-06-12 06:12:44,274.274 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:12:44,309.309 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 06:12:44,310.310 INFO    ] No update needed
[2026-06-12 06:12:44,312.312 INFO    ] Checking for camera pi updates...
[2026-06-12 06:12:44,333.333 INFO    ] 200
[2026-06-12 06:12:44,336.336 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:12:44,366.366 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 06:12:44,390.390 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 06:12:44,392.392 INFO    ] No camera update needed
[2026-06-12 06:12:44,393.393 INFO    ] Script finished. Safe exiting...
[2026-06-12 06:12:44,394.394 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 06:12:44,397.397 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 06:12:44,400.400 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 06:12:46,440.440 INFO    ] ================================================
[2026-06-12 06:12:46,455.455 INFO    ] Launching Daemon at Fri Jun 12 06:12:46 IST 2026
[2026-06-12 06:12:46,467.467 INFO    ] ================================================
[2026-06-12 06:12:46,827.827 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 06:12:46
[2026-06-12 06:12:47,137.137 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 06:12:47,266.266 INFO    ] Initializing speech engine...
[2026-06-12 06:12:47,271.271 INFO    ] 2026-06-12 06:12:47
[2026-06-12 06:12:47,489.489 INFO    ] 2026-06-12 06:12:47
[2026-06-12 06:12:47,518.518 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 06:12:47,703.703 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 06:12:47,706.706 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 06:12:47,836.836 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 06:12:47,896.896 INFO    ] time= 12/06/2026 06:12:47
[2026-06-12 06:12:47,934.934 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 06:12:47,936.936 INFO    ] Checking for existing commands in stream...
[2026-06-12 06:12:48,008.008 INFO    ] No existing commands found in stream
[2026-06-12 06:12:53,017.017 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 06:12:53,020.020 INFO    ] Waiting 1.33 seconds before fallback handling...
[2026-06-12 06:12:54,711.711 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 06:12:54,713.713 INFO    ] Checking for system updates...
[2026-06-12 06:12:54,733.733 INFO    ] 200
[2026-06-12 06:12:54,734.734 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:12:54,767.767 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 06:12:54,768.768 INFO    ] No update needed
[2026-06-12 06:12:54,769.769 INFO    ] Checking for camera pi updates...
[2026-06-12 06:12:54,791.791 INFO    ] 200
[2026-06-12 06:12:54,793.793 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:12:54,815.815 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 06:12:54,851.851 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 06:12:54,852.852 INFO    ] No camera update needed
[2026-06-12 06:12:54,854.854 INFO    ] Script finished. Safe exiting...
[2026-06-12 06:12:54,855.855 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 06:12:54,858.858 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 06:12:54,860.860 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 06:12:56,899.899 INFO    ] ================================================
[2026-06-12 06:12:56,914.914 INFO    ] Launching Daemon at Fri Jun 12 06:12:56 IST 2026
[2026-06-12 06:12:56,925.925 INFO    ] ================================================
[2026-06-12 06:12:57,265.265 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 06:12:57
[2026-06-12 06:12:57,576.576 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 06:12:57,705.705 INFO    ] Initializing speech engine...
[2026-06-12 06:12:57,709.709 INFO    ] 2026-06-12 06:12:57
[2026-06-12 06:12:57,923.923 INFO    ] 2026-06-12 06:12:57
[2026-06-12 06:12:57,952.952 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 06:12:58,138.138 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 06:12:58,147.147 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 06:12:58,275.275 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 06:12:58,339.339 INFO    ] time= 12/06/2026 06:12:58
[2026-06-12 06:12:58,365.365 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 06:12:58,371.371 INFO    ] Checking for existing commands in stream...
[2026-06-12 06:12:58,441.441 INFO    ] No existing commands found in stream
[2026-06-12 06:13:03,450.450 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 06:13:03,453.453 INFO    ] Waiting 2.11 seconds before fallback handling...
[2026-06-12 06:13:05,949.949 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 06:13:05,951.951 INFO    ] Checking for system updates...
[2026-06-12 06:13:05,973.973 INFO    ] 200
[2026-06-12 06:13:05,975.975 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:13:06,007.007 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 06:13:06,009.009 INFO    ] No update needed
[2026-06-12 06:13:06,010.010 INFO    ] Checking for camera pi updates...
[2026-06-12 06:13:06,030.030 INFO    ] 200
[2026-06-12 06:13:06,031.031 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:13:06,057.057 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 06:13:06,098.098 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 06:13:06,099.099 INFO    ] No camera update needed
[2026-06-12 06:13:06,101.101 INFO    ] Script finished. Safe exiting...
[2026-06-12 06:13:06,102.102 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 06:13:06,105.105 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 06:13:06,108.108 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 06:13:08,147.147 INFO    ] ================================================
[2026-06-12 06:13:08,163.163 INFO    ] Launching Daemon at Fri Jun 12 06:13:08 IST 2026
[2026-06-12 06:13:08,174.174 INFO    ] ================================================
[2026-06-12 06:13:08,539.539 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 06:13:08
[2026-06-12 06:13:08,854.854 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 06:13:08,989.989 INFO    ] Initializing speech engine...
[2026-06-12 06:13:08,994.994 INFO    ] 2026-06-12 06:13:08
[2026-06-12 06:13:09,227.227 INFO    ] 2026-06-12 06:13:09
[2026-06-12 06:13:09,258.258 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 06:13:09,459.459 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 06:13:09,469.469 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 06:13:09,612.612 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 06:13:09,671.671 INFO    ] time= 12/06/2026 06:13:09
[2026-06-12 06:13:09,695.695 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 06:13:09,713.713 INFO    ] Checking for existing commands in stream...
[2026-06-12 06:13:09,789.789 INFO    ] No existing commands found in stream
[2026-06-12 06:13:14,800.800 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 06:13:14,803.803 INFO    ] Waiting 1.77 seconds before fallback handling...
[2026-06-12 06:13:16,978.978 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 06:13:16,979.979 INFO    ] Checking for system updates...
[2026-06-12 06:13:17,001.001 INFO    ] 200
[2026-06-12 06:13:17,003.003 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:13:17,035.035 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 06:13:17,037.037 INFO    ] No update needed
[2026-06-12 06:13:17,038.038 INFO    ] Checking for camera pi updates...
[2026-06-12 06:13:17,057.057 INFO    ] 200
[2026-06-12 06:13:17,059.059 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:13:17,082.082 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 06:13:17,131.131 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 06:13:17,133.133 INFO    ] No camera update needed
[2026-06-12 06:13:17,134.134 INFO    ] Script finished. Safe exiting...
[2026-06-12 06:13:17,135.135 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 06:13:17,138.138 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 06:13:17,141.141 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 06:13:19,181.181 INFO    ] ================================================
[2026-06-12 06:13:19,196.196 INFO    ] Launching Daemon at Fri Jun 12 06:13:19 IST 2026
[2026-06-12 06:13:19,208.208 INFO    ] ================================================
[2026-06-12 06:13:19,570.570 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 06:13:19
[2026-06-12 06:13:19,881.881 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 06:13:20,013.013 INFO    ] Initializing speech engine...
[2026-06-12 06:13:20,018.018 INFO    ] 2026-06-12 06:13:20
[2026-06-12 06:13:20,222.222 INFO    ] 2026-06-12 06:13:20
[2026-06-12 06:13:20,254.254 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 06:13:20,413.413 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 06:13:20,452.452 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 06:13:20,629.629 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 06:13:20,687.687 INFO    ] time= 12/06/2026 06:13:20
[2026-06-12 06:13:20,728.728 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 06:13:20,734.734 INFO    ] Checking for existing commands in stream...
[2026-06-12 06:13:20,811.811 INFO    ] No existing commands found in stream
[2026-06-12 06:13:25,820.820 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 06:13:25,823.823 INFO    ] Waiting 2.67 seconds before fallback handling...
[2026-06-12 06:13:28,851.851 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 06:13:28,853.853 INFO    ] Checking for system updates...
[2026-06-12 06:13:28,875.875 INFO    ] 200
[2026-06-12 06:13:28,877.877 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:13:28,912.912 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 06:13:28,914.914 INFO    ] No update needed
[2026-06-12 06:13:28,915.915 INFO    ] Checking for camera pi updates...
[2026-06-12 06:13:28,935.935 INFO    ] 200
[2026-06-12 06:13:28,937.937 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:13:28,962.962 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 06:13:28,999.999 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 06:13:29,000.000 INFO    ] No camera update needed
[2026-06-12 06:13:29,002.002 INFO    ] Script finished. Safe exiting...
[2026-06-12 06:13:29,003.003 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 06:13:29,006.006 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 06:13:29,009.009 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 06:13:31,049.049 INFO    ] ================================================
[2026-06-12 06:13:31,065.065 INFO    ] Launching Daemon at Fri Jun 12 06:13:31 IST 2026
[2026-06-12 06:13:31,076.076 INFO    ] ================================================
[2026-06-12 06:13:31,435.435 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 06:13:31
[2026-06-12 06:13:31,777.777 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 06:13:31,932.932 INFO    ] Initializing speech engine...
[2026-06-12 06:13:31,936.936 INFO    ] 2026-06-12 06:13:31
[2026-06-12 06:13:32,149.149 INFO    ] 2026-06-12 06:13:32
[2026-06-12 06:13:32,196.196 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 06:13:32,363.363 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 06:13:32,380.380 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 06:13:32,543.543 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 06:13:32,578.578 INFO    ] time= 12/06/2026 06:13:32
[2026-06-12 06:13:32,619.619 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 06:13:32,662.662 INFO    ] Checking for existing commands in stream...
[2026-06-12 06:13:32,762.762 INFO    ] No existing commands found in stream
[2026-06-12 06:13:37,773.773 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 06:13:37,776.776 INFO    ] Waiting 3.35 seconds before fallback handling...
[2026-06-12 06:13:41,502.502 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 06:13:41,503.503 INFO    ] Checking for system updates...
[2026-06-12 06:13:41,525.525 INFO    ] 200
[2026-06-12 06:13:41,527.527 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:13:41,559.559 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 06:13:41,561.561 INFO    ] No update needed
[2026-06-12 06:13:41,562.562 INFO    ] Checking for camera pi updates...
[2026-06-12 06:13:41,583.583 INFO    ] 200
[2026-06-12 06:13:41,584.584 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:13:41,607.607 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 06:13:41,642.642 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 06:13:41,644.644 INFO    ] No camera update needed
[2026-06-12 06:13:41,645.645 INFO    ] Script finished. Safe exiting...
[2026-06-12 06:13:41,646.646 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 06:13:41,649.649 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 06:13:41,652.652 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 06:13:43,691.691 INFO    ] ================================================
[2026-06-12 06:13:43,707.707 INFO    ] Launching Daemon at Fri Jun 12 06:13:43 IST 2026
[2026-06-12 06:13:43,718.718 INFO    ] ================================================
[2026-06-12 06:13:44,081.081 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 06:13:44
[2026-06-12 06:13:44,393.393 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 06:13:44,525.525 INFO    ] Initializing speech engine...
[2026-06-12 06:13:44,530.530 INFO    ] 2026-06-12 06:13:44
[2026-06-12 06:13:44,727.727 INFO    ] 2026-06-12 06:13:44
[2026-06-12 06:13:44,768.768 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 06:13:44,967.967 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 06:13:44,996.996 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 06:13:45,145.145 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 06:13:45,198.198 INFO    ] time= 12/06/2026 06:13:45
[2026-06-12 06:13:45,243.243 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 06:13:45,245.245 INFO    ] Checking for existing commands in stream...
[2026-06-12 06:13:45,349.349 INFO    ] No existing commands found in stream
[2026-06-12 06:13:50,358.358 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 06:13:50,361.361 INFO    ] Waiting 2.85 seconds before fallback handling...
[2026-06-12 06:13:53,598.598 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 06:13:53,599.599 INFO    ] Checking for system updates...
[2026-06-12 06:13:53,621.621 INFO    ] 200
[2026-06-12 06:13:53,622.622 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:13:53,655.655 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 06:13:53,656.656 INFO    ] No update needed
[2026-06-12 06:13:53,658.658 INFO    ] Checking for camera pi updates...
[2026-06-12 06:13:53,678.678 INFO    ] 200
[2026-06-12 06:13:53,680.680 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:13:53,703.703 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 06:13:53,740.740 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 06:13:53,742.742 INFO    ] No camera update needed
[2026-06-12 06:13:53,743.743 INFO    ] Script finished. Safe exiting...
[2026-06-12 06:13:53,744.744 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 06:13:53,747.747 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 06:13:53,750.750 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 06:13:55,789.789 INFO    ] ================================================
[2026-06-12 06:13:55,805.805 INFO    ] Launching Daemon at Fri Jun 12 06:13:55 IST 2026
[2026-06-12 06:13:55,816.816 INFO    ] ================================================
[2026-06-12 06:13:56,162.162 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 06:13:56
[2026-06-12 06:13:56,478.478 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 06:13:56,621.621 INFO    ] Initializing speech engine...
[2026-06-12 06:13:56,626.626 INFO    ] 2026-06-12 06:13:56
[2026-06-12 06:13:56,829.829 INFO    ] 2026-06-12 06:13:56
[2026-06-12 06:13:56,857.857 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 06:13:57,040.040 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 06:13:57,043.043 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 06:13:57,171.171 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 06:13:57,232.232 INFO    ] time= 12/06/2026 06:13:57
[2026-06-12 06:13:57,261.261 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 06:13:57,271.271 INFO    ] Checking for existing commands in stream...
[2026-06-12 06:13:57,342.342 INFO    ] No existing commands found in stream
[2026-06-12 06:14:02,351.351 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 06:14:02,353.353 INFO    ] Waiting 1.51 seconds before fallback handling...
[2026-06-12 06:14:04,253.253 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 06:14:04,255.255 INFO    ] Checking for system updates...
[2026-06-12 06:14:04,275.275 INFO    ] 200
[2026-06-12 06:14:04,277.277 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:14:04,308.308 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 06:14:04,310.310 INFO    ] No update needed
[2026-06-12 06:14:04,311.311 INFO    ] Checking for camera pi updates...
[2026-06-12 06:14:04,332.332 INFO    ] 200
[2026-06-12 06:14:04,333.333 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:14:04,358.358 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 06:14:04,394.394 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 06:14:04,395.395 INFO    ] No camera update needed
[2026-06-12 06:14:04,397.397 INFO    ] Script finished. Safe exiting...
[2026-06-12 06:14:04,398.398 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 06:14:04,401.401 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 06:14:04,404.404 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 06:14:06,442.442 INFO    ] ================================================
[2026-06-12 06:14:06,458.458 INFO    ] Launching Daemon at Fri Jun 12 06:14:06 IST 2026
[2026-06-12 06:14:06,469.469 INFO    ] ================================================
[2026-06-12 06:14:06,811.811 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 06:14:06
[2026-06-12 06:14:07,129.129 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 06:14:07,273.273 INFO    ] Initializing speech engine...
[2026-06-12 06:14:07,277.277 INFO    ] 2026-06-12 06:14:07
[2026-06-12 06:14:07,481.481 INFO    ] 2026-06-12 06:14:07
[2026-06-12 06:14:07,511.511 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 06:14:07,695.695 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 06:14:07,698.698 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 06:14:07,845.845 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 06:14:07,903.903 INFO    ] time= 12/06/2026 06:14:07
[2026-06-12 06:14:07,926.926 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 06:14:07,932.932 INFO    ] Checking for existing commands in stream...
[2026-06-12 06:14:07,999.999 INFO    ] No existing commands found in stream
[2026-06-12 06:14:13,013.013 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 06:14:13,016.016 INFO    ] Waiting 3.06 seconds before fallback handling...
[2026-06-12 06:14:16,452.452 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 06:14:16,453.453 INFO    ] Checking for system updates...
[2026-06-12 06:14:16,476.476 INFO    ] 200
[2026-06-12 06:14:16,477.477 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:14:16,513.513 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 06:14:16,515.515 INFO    ] No update needed
[2026-06-12 06:14:16,516.516 INFO    ] Checking for camera pi updates...
[2026-06-12 06:14:16,538.538 INFO    ] 200
[2026-06-12 06:14:16,540.540 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:14:16,564.564 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 06:14:16,603.603 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 06:14:16,604.604 INFO    ] No camera update needed
[2026-06-12 06:14:16,606.606 INFO    ] Script finished. Safe exiting...
[2026-06-12 06:14:16,607.607 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 06:14:16,610.610 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 06:14:16,613.613 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 06:14:18,652.652 INFO    ] ================================================
[2026-06-12 06:14:18,667.667 INFO    ] Launching Daemon at Fri Jun 12 06:14:18 IST 2026
[2026-06-12 06:14:18,679.679 INFO    ] ================================================
[2026-06-12 06:14:19,027.027 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 06:14:19
[2026-06-12 06:14:19,364.364 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 06:14:19,511.511 INFO    ] Initializing speech engine...
[2026-06-12 06:14:19,521.521 INFO    ] 2026-06-12 06:14:19
[2026-06-12 06:14:19,735.735 INFO    ] 2026-06-12 06:14:19
[2026-06-12 06:14:19,764.764 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 06:14:19,949.949 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 06:14:19,960.960 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 06:14:20,111.111 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 06:14:20,160.160 INFO    ] time= 12/06/2026 06:14:20
[2026-06-12 06:14:20,182.182 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 06:14:20,189.189 INFO    ] Checking for existing commands in stream...
[2026-06-12 06:14:20,256.256 INFO    ] No existing commands found in stream
[2026-06-12 06:14:25,276.276 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 06:14:25,279.279 INFO    ] Waiting 1.04 seconds before fallback handling...
[2026-06-12 06:14:26,691.691 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 06:14:26,693.693 INFO    ] Checking for system updates...
[2026-06-12 06:14:26,715.715 INFO    ] 200
[2026-06-12 06:14:26,717.717 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:14:26,749.749 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 06:14:26,751.751 INFO    ] No update needed
[2026-06-12 06:14:26,752.752 INFO    ] Checking for camera pi updates...
[2026-06-12 06:14:26,771.771 INFO    ] 200
[2026-06-12 06:14:26,773.773 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:14:26,796.796 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 06:14:26,833.833 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 06:14:26,835.835 INFO    ] No camera update needed
[2026-06-12 06:14:26,836.836 INFO    ] Script finished. Safe exiting...
[2026-06-12 06:14:26,837.837 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 06:14:26,840.840 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 06:14:26,843.843 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 06:14:28,882.882 INFO    ] ================================================
[2026-06-12 06:14:28,897.897 INFO    ] Launching Daemon at Fri Jun 12 06:14:28 IST 2026
[2026-06-12 06:14:28,907.907 INFO    ] ================================================
[2026-06-12 06:14:29,271.271 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 06:14:29
[2026-06-12 06:14:29,591.591 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 06:14:29,734.734 INFO    ] Initializing speech engine...
[2026-06-12 06:14:29,740.740 INFO    ] 2026-06-12 06:14:29
[2026-06-12 06:14:29,948.948 INFO    ] 2026-06-12 06:14:29
[2026-06-12 06:14:29,976.976 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 06:14:30,159.159 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 06:14:30,168.168 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 06:14:30,294.294 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 06:14:30,356.356 INFO    ] time= 12/06/2026 06:14:30
[2026-06-12 06:14:30,388.388 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 06:14:30,395.395 INFO    ] Checking for existing commands in stream...
[2026-06-12 06:14:30,462.462 INFO    ] No existing commands found in stream
[2026-06-12 06:14:35,471.471 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 06:14:35,474.474 INFO    ] Waiting 2.55 seconds before fallback handling...
[2026-06-12 06:14:38,418.418 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 06:14:38,419.419 INFO    ] Checking for system updates...
[2026-06-12 06:14:38,440.440 INFO    ] 200
[2026-06-12 06:14:38,442.442 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:14:38,474.474 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 06:14:38,475.475 INFO    ] No update needed
[2026-06-12 06:14:38,476.476 INFO    ] Checking for camera pi updates...
[2026-06-12 06:14:38,498.498 INFO    ] 200
[2026-06-12 06:14:38,500.500 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:14:38,524.524 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 06:14:38,668.668 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 06:14:38,669.669 INFO    ] No camera update needed
[2026-06-12 06:14:38,671.671 INFO    ] Script finished. Safe exiting...
[2026-06-12 06:14:38,672.672 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 06:14:38,675.675 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 06:14:38,677.677 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 06:14:40,716.716 INFO    ] ================================================
[2026-06-12 06:14:40,732.732 INFO    ] Launching Daemon at Fri Jun 12 06:14:40 IST 2026
[2026-06-12 06:14:40,743.743 INFO    ] ================================================
[2026-06-12 06:14:41,067.067 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 06:14:41
[2026-06-12 06:14:41,381.381 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 06:14:41,513.513 INFO    ] Initializing speech engine...
[2026-06-12 06:14:41,517.517 INFO    ] 2026-06-12 06:14:41
[2026-06-12 06:14:41,737.737 INFO    ] 2026-06-12 06:14:41
[2026-06-12 06:14:41,767.767 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 06:14:41,897.897 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 06:14:41,955.955 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 06:14:42,096.096 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 06:14:42,160.160 INFO    ] time= 12/06/2026 06:14:42
[2026-06-12 06:14:42,188.188 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 06:14:42,195.195 INFO    ] Checking for existing commands in stream...
[2026-06-12 06:14:42,261.261 INFO    ] No existing commands found in stream
[2026-06-12 06:14:47,272.272 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 06:14:47,275.275 INFO    ] Waiting 2.79 seconds before fallback handling...
[2026-06-12 06:14:50,442.442 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 06:14:50,443.443 INFO    ] Checking for system updates...
[2026-06-12 06:14:50,466.466 INFO    ] 200
[2026-06-12 06:14:50,467.467 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:14:50,502.502 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 06:14:50,504.504 INFO    ] No update needed
[2026-06-12 06:14:50,506.506 INFO    ] Checking for camera pi updates...
[2026-06-12 06:14:50,527.527 INFO    ] 200
[2026-06-12 06:14:50,528.528 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:14:50,554.554 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 06:14:50,589.589 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 06:14:50,590.590 INFO    ] No camera update needed
[2026-06-12 06:14:50,592.592 INFO    ] Script finished. Safe exiting...
[2026-06-12 06:14:50,593.593 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 06:14:50,596.596 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 06:14:50,599.599 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 06:14:52,639.639 INFO    ] ================================================
[2026-06-12 06:14:52,655.655 INFO    ] Launching Daemon at Fri Jun 12 06:14:52 IST 2026
[2026-06-12 06:14:52,666.666 INFO    ] ================================================
[2026-06-12 06:14:53,025.025 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 06:14:53
[2026-06-12 06:14:53,341.341 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 06:14:53,486.486 INFO    ] Initializing speech engine...
[2026-06-12 06:14:53,491.491 INFO    ] 2026-06-12 06:14:53
[2026-06-12 06:14:53,694.694 INFO    ] 2026-06-12 06:14:53
[2026-06-12 06:14:53,722.722 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 06:14:53,904.904 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 06:14:53,907.907 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 06:14:54,059.059 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 06:14:54,109.109 INFO    ] time= 12/06/2026 06:14:54
[2026-06-12 06:14:54,133.133 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 06:14:54,140.140 INFO    ] Checking for existing commands in stream...
[2026-06-12 06:14:54,206.206 INFO    ] No existing commands found in stream
[2026-06-12 06:14:59,215.215 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 06:14:59,218.218 INFO    ] Waiting 1.36 seconds before fallback handling...
[2026-06-12 06:15:00,953.953 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 06:15:00,955.955 INFO    ] Checking for system updates...
[2026-06-12 06:15:00,976.976 INFO    ] 200
[2026-06-12 06:15:00,977.977 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:15:01,012.012 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 06:15:01,013.013 INFO    ] No update needed
[2026-06-12 06:15:01,014.014 INFO    ] Checking for camera pi updates...
[2026-06-12 06:15:01,035.035 INFO    ] 200
[2026-06-12 06:15:01,036.036 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:15:01,060.060 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 06:15:01,246.246 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 06:15:01,247.247 INFO    ] No camera update needed
[2026-06-12 06:15:01,248.248 INFO    ] Script finished. Safe exiting...
[2026-06-12 06:15:01,250.250 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 06:15:01,253.253 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 06:15:01,255.255 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 06:15:03,291.291 INFO    ] ================================================
[2026-06-12 06:15:03,307.307 INFO    ] Launching Daemon at Fri Jun 12 06:15:03 IST 2026
[2026-06-12 06:15:03,318.318 INFO    ] ================================================
[2026-06-12 06:15:03,668.668 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 06:15:03
[2026-06-12 06:15:04,002.002 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 06:15:04,153.153 INFO    ] Initializing speech engine...
[2026-06-12 06:15:04,158.158 INFO    ] 2026-06-12 06:15:04
[2026-06-12 06:15:04,368.368 INFO    ] 2026-06-12 06:15:04
[2026-06-12 06:15:04,397.397 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 06:15:04,584.584 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 06:15:04,587.587 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 06:15:04,723.723 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 06:15:04,785.785 INFO    ] time= 12/06/2026 06:15:04
[2026-06-12 06:15:04,819.819 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 06:15:04,826.826 INFO    ] Checking for existing commands in stream...
[2026-06-12 06:15:04,894.894 INFO    ] No existing commands found in stream
[2026-06-12 06:15:09,919.919 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 06:15:09,922.922 INFO    ] Waiting 0.95 seconds before fallback handling...
[2026-06-12 06:15:11,272.272 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 06:15:11,274.274 INFO    ] Checking for system updates...
[2026-06-12 06:15:11,296.296 INFO    ] 200
[2026-06-12 06:15:11,297.297 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:15:11,332.332 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 06:15:11,334.334 INFO    ] No update needed
[2026-06-12 06:15:11,335.335 INFO    ] Checking for camera pi updates...
[2026-06-12 06:15:11,355.355 INFO    ] 200
[2026-06-12 06:15:11,356.356 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:15:11,379.379 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 06:15:11,422.422 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 06:15:11,424.424 INFO    ] No camera update needed
[2026-06-12 06:15:11,425.425 INFO    ] Script finished. Safe exiting...
[2026-06-12 06:15:11,427.427 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 06:15:11,430.430 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 06:15:11,433.433 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 06:15:13,472.472 INFO    ] ================================================
[2026-06-12 06:15:13,488.488 INFO    ] Launching Daemon at Fri Jun 12 06:15:13 IST 2026
[2026-06-12 06:15:13,499.499 INFO    ] ================================================
[2026-06-12 06:15:13,858.858 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 06:15:13
[2026-06-12 06:15:14,175.175 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 06:15:14,313.313 INFO    ] Initializing speech engine...
[2026-06-12 06:15:14,326.326 INFO    ] 2026-06-12 06:15:14
[2026-06-12 06:15:14,544.544 INFO    ] 2026-06-12 06:15:14
[2026-06-12 06:15:14,575.575 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 06:15:14,706.706 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 06:15:14,744.744 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 06:15:14,913.913 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 06:15:14,981.981 INFO    ] time= 12/06/2026 06:15:14
[2026-06-12 06:15:15,015.015 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 06:15:15,021.021 INFO    ] Checking for existing commands in stream...
[2026-06-12 06:15:15,118.118 INFO    ] No existing commands found in stream
[2026-06-12 06:15:20,126.126 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 06:15:20,129.129 INFO    ] Waiting 3.58 seconds before fallback handling...
[2026-06-12 06:15:24,074.074 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 06:15:24,075.075 INFO    ] Checking for system updates...
[2026-06-12 06:15:24,096.096 INFO    ] 200
[2026-06-12 06:15:24,097.097 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:15:24,132.132 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 06:15:24,133.133 INFO    ] No update needed
[2026-06-12 06:15:24,134.134 INFO    ] Checking for camera pi updates...
[2026-06-12 06:15:24,155.155 INFO    ] 200
[2026-06-12 06:15:24,156.156 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:15:24,179.179 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 06:15:24,212.212 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 06:15:24,214.214 INFO    ] No camera update needed
[2026-06-12 06:15:24,215.215 INFO    ] Script finished. Safe exiting...
[2026-06-12 06:15:24,216.216 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 06:15:24,219.219 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 06:15:24,222.222 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 06:15:26,260.260 INFO    ] ================================================
[2026-06-12 06:15:26,277.277 INFO    ] Launching Daemon at Fri Jun 12 06:15:26 IST 2026
[2026-06-12 06:15:26,288.288 INFO    ] ================================================
[2026-06-12 06:15:26,660.660 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 06:15:26
[2026-06-12 06:15:26,972.972 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 06:15:27,103.103 INFO    ] Initializing speech engine...
[2026-06-12 06:15:27,117.117 INFO    ] 2026-06-12 06:15:27
[2026-06-12 06:15:27,326.326 INFO    ] 2026-06-12 06:15:27
[2026-06-12 06:15:27,355.355 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 06:15:27,543.543 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 06:15:27,551.551 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 06:15:27,684.684 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 06:15:27,747.747 INFO    ] time= 12/06/2026 06:15:27
[2026-06-12 06:15:27,775.775 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 06:15:27,777.777 INFO    ] Checking for existing commands in stream...
[2026-06-12 06:15:27,850.850 INFO    ] No existing commands found in stream
[2026-06-12 06:15:32,859.859 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 06:15:32,862.862 INFO    ] Waiting 0.47 seconds before fallback handling...
[2026-06-12 06:15:33,642.642 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 06:15:33,644.644 INFO    ] Checking for system updates...
[2026-06-12 06:15:33,669.669 INFO    ] 200
[2026-06-12 06:15:33,671.671 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:15:33,709.709 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 06:15:33,710.710 INFO    ] No update needed
[2026-06-12 06:15:33,712.712 INFO    ] Checking for camera pi updates...
[2026-06-12 06:15:33,734.734 INFO    ] 200
[2026-06-12 06:15:33,740.740 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:15:33,776.776 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 06:15:33,814.814 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 06:15:33,815.815 INFO    ] No camera update needed
[2026-06-12 06:15:33,817.817 INFO    ] Script finished. Safe exiting...
[2026-06-12 06:15:33,818.818 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 06:15:33,821.821 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 06:15:33,824.824 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 06:15:35,848.848 INFO    ] ================================================
[2026-06-12 06:15:35,858.858 INFO    ] Launching Daemon at Fri Jun 12 06:15:35 IST 2026
[2026-06-12 06:15:35,865.865 INFO    ] ================================================
[2026-06-12 06:15:36,187.187 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 06:15:36
[2026-06-12 06:15:36,516.516 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 06:15:36,668.668 INFO    ] Initializing speech engine...
[2026-06-12 06:15:36,683.683 INFO    ] 2026-06-12 06:15:36
[2026-06-12 06:15:36,899.899 INFO    ] 2026-06-12 06:15:36
[2026-06-12 06:15:36,928.928 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 06:15:37,110.110 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 06:15:37,113.113 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 06:15:37,253.253 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 06:15:37,321.321 INFO    ] time= 12/06/2026 06:15:37
[2026-06-12 06:15:37,344.344 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 06:15:37,351.351 INFO    ] Checking for existing commands in stream...
[2026-06-12 06:15:37,466.466 INFO    ] No existing commands found in stream
[2026-06-12 06:15:42,476.476 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 06:15:42,479.479 INFO    ] Waiting 2.34 seconds before fallback handling...
[2026-06-12 06:15:45,171.171 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 06:15:45,173.173 INFO    ] Checking for system updates...
[2026-06-12 06:15:45,193.193 INFO    ] 200
[2026-06-12 06:15:45,195.195 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:15:45,226.226 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 06:15:45,227.227 INFO    ] No update needed
[2026-06-12 06:15:45,229.229 INFO    ] Checking for camera pi updates...
[2026-06-12 06:15:45,250.250 INFO    ] 200
[2026-06-12 06:15:45,252.252 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:15:45,275.275 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 06:15:45,320.320 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 06:15:45,322.322 INFO    ] No camera update needed
[2026-06-12 06:15:45,323.323 INFO    ] Script finished. Safe exiting...
[2026-06-12 06:15:45,324.324 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 06:15:45,327.327 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 06:15:45,330.330 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 06:15:47,370.370 INFO    ] ================================================
[2026-06-12 06:15:47,386.386 INFO    ] Launching Daemon at Fri Jun 12 06:15:47 IST 2026
[2026-06-12 06:15:47,397.397 INFO    ] ================================================
[2026-06-12 06:15:47,724.724 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 06:15:47
[2026-06-12 06:15:48,036.036 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 06:15:48,168.168 INFO    ] Initializing speech engine...
[2026-06-12 06:15:48,172.172 INFO    ] 2026-06-12 06:15:48
[2026-06-12 06:15:48,401.401 INFO    ] 2026-06-12 06:15:48
[2026-06-12 06:15:48,432.432 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 06:15:48,629.629 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 06:15:48,633.633 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 06:15:48,777.777 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 06:15:48,835.835 INFO    ] time= 12/06/2026 06:15:48
[2026-06-12 06:15:48,879.879 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 06:15:48,881.881 INFO    ] Checking for existing commands in stream...
[2026-06-12 06:15:48,984.984 INFO    ] No existing commands found in stream
[2026-06-12 06:15:53,993.993 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 06:15:53,995.995 INFO    ] Waiting 1.58 seconds before fallback handling...
[2026-06-12 06:15:55,971.971 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 06:15:55,973.973 INFO    ] Checking for system updates...
[2026-06-12 06:15:55,995.995 INFO    ] 200
[2026-06-12 06:15:55,997.997 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:15:56,032.032 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 06:15:56,034.034 INFO    ] No update needed
[2026-06-12 06:15:56,035.035 INFO    ] Checking for camera pi updates...
[2026-06-12 06:15:56,055.055 INFO    ] 200
[2026-06-12 06:15:56,056.056 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:15:56,080.080 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 06:15:56,125.125 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 06:15:56,127.127 INFO    ] No camera update needed
[2026-06-12 06:15:56,128.128 INFO    ] Script finished. Safe exiting...
[2026-06-12 06:15:56,130.130 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 06:15:56,133.133 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 06:15:56,136.136 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 06:15:58,176.176 INFO    ] ================================================
[2026-06-12 06:15:58,193.193 INFO    ] Launching Daemon at Fri Jun 12 06:15:58 IST 2026
[2026-06-12 06:15:58,204.204 INFO    ] ================================================
[2026-06-12 06:15:58,549.549 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 06:15:58
[2026-06-12 06:15:58,859.859 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 06:15:58,992.992 INFO    ] Initializing speech engine...
[2026-06-12 06:15:58,996.996 INFO    ] 2026-06-12 06:15:58
[2026-06-12 06:15:59,197.197 INFO    ] 2026-06-12 06:15:59
[2026-06-12 06:15:59,231.231 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 06:15:59,388.388 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 06:15:59,440.440 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 06:15:59,596.596 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 06:15:59,654.654 INFO    ] time= 12/06/2026 06:15:59
[2026-06-12 06:15:59,699.699 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 06:15:59,705.705 INFO    ] Checking for existing commands in stream...
[2026-06-12 06:15:59,781.781 INFO    ] No existing commands found in stream
[2026-06-12 06:16:04,791.791 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 06:16:04,794.794 INFO    ] Waiting 3.12 seconds before fallback handling...
[2026-06-12 06:16:08,293.293 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 06:16:08,295.295 INFO    ] Checking for system updates...
[2026-06-12 06:16:08,321.321 INFO    ] 200
[2026-06-12 06:16:08,322.322 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:16:08,353.353 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 06:16:08,354.354 INFO    ] No update needed
[2026-06-12 06:16:08,356.356 INFO    ] Checking for camera pi updates...
[2026-06-12 06:16:08,375.375 INFO    ] 200
[2026-06-12 06:16:08,376.376 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:16:08,400.400 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 06:16:08,434.434 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 06:16:08,436.436 INFO    ] No camera update needed
[2026-06-12 06:16:08,437.437 INFO    ] Script finished. Safe exiting...
[2026-06-12 06:16:08,438.438 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 06:16:08,441.441 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 06:16:08,444.444 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 06:16:10,483.483 INFO    ] ================================================
[2026-06-12 06:16:10,499.499 INFO    ] Launching Daemon at Fri Jun 12 06:16:10 IST 2026
[2026-06-12 06:16:10,511.511 INFO    ] ================================================
[2026-06-12 06:16:10,871.871 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 06:16:10
[2026-06-12 06:16:11,189.189 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 06:16:11,332.332 INFO    ] Initializing speech engine...
[2026-06-12 06:16:11,338.338 INFO    ] 2026-06-12 06:16:11
[2026-06-12 06:16:11,542.542 INFO    ] 2026-06-12 06:16:11
[2026-06-12 06:16:11,570.570 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 06:16:11,720.720 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 06:16:11,759.759 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 06:16:11,887.887 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 06:16:11,948.948 INFO    ] time= 12/06/2026 06:16:11
[2026-06-12 06:16:11,981.981 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 06:16:11,986.986 INFO    ] Checking for existing commands in stream...
[2026-06-12 06:16:12,072.072 INFO    ] No existing commands found in stream
[2026-06-12 06:16:17,084.084 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 06:16:17,087.087 INFO    ] Waiting 3.29 seconds before fallback handling...
[2026-06-12 06:16:20,762.762 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 06:16:20,764.764 INFO    ] Checking for system updates...
[2026-06-12 06:16:20,786.786 INFO    ] 200
[2026-06-12 06:16:20,787.787 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:16:20,817.817 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 06:16:20,819.819 INFO    ] No update needed
[2026-06-12 06:16:20,820.820 INFO    ] Checking for camera pi updates...
[2026-06-12 06:16:20,840.840 INFO    ] 200
[2026-06-12 06:16:20,841.841 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:16:20,865.865 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 06:16:20,904.904 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 06:16:20,905.905 INFO    ] No camera update needed
[2026-06-12 06:16:20,907.907 INFO    ] Script finished. Safe exiting...
[2026-06-12 06:16:20,908.908 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 06:16:20,911.911 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 06:16:20,914.914 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 06:16:22,957.957 INFO    ] ================================================
[2026-06-12 06:16:22,973.973 INFO    ] Launching Daemon at Fri Jun 12 06:16:22 IST 2026
[2026-06-12 06:16:22,984.984 INFO    ] ================================================
[2026-06-12 06:16:23,335.335 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 06:16:23
[2026-06-12 06:16:23,652.652 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 06:16:23,784.784 INFO    ] Initializing speech engine...
[2026-06-12 06:16:23,797.797 INFO    ] 2026-06-12 06:16:23
[2026-06-12 06:16:24,004.004 INFO    ] 2026-06-12 06:16:23
[2026-06-12 06:16:24,033.033 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 06:16:24,216.216 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 06:16:24,220.220 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 06:16:24,353.353 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 06:16:24,419.419 INFO    ] time= 12/06/2026 06:16:24
[2026-06-12 06:16:24,446.446 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 06:16:24,447.447 INFO    ] Checking for existing commands in stream...
[2026-06-12 06:16:24,519.519 INFO    ] No existing commands found in stream
[2026-06-12 06:16:29,533.533 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 06:16:29,536.536 INFO    ] Waiting 2.40 seconds before fallback handling...
[2026-06-12 06:16:32,250.250 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 06:16:32,253.253 INFO    ] Checking for system updates...
[2026-06-12 06:16:32,290.290 INFO    ] 200
[2026-06-12 06:16:32,293.293 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:16:32,348.348 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 06:16:32,350.350 INFO    ] No update needed
[2026-06-12 06:16:32,354.354 INFO    ] Checking for camera pi updates...
[2026-06-12 06:16:32,374.374 INFO    ] 200
[2026-06-12 06:16:32,375.375 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:16:32,398.398 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 06:16:32,422.422 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 06:16:32,423.423 INFO    ] No camera update needed
[2026-06-12 06:16:32,425.425 INFO    ] Script finished. Safe exiting...
[2026-06-12 06:16:32,426.426 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 06:16:32,429.429 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 06:16:32,432.432 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 06:16:34,472.472 INFO    ] ================================================
[2026-06-12 06:16:34,489.489 INFO    ] Launching Daemon at Fri Jun 12 06:16:34 IST 2026
[2026-06-12 06:16:34,500.500 INFO    ] ================================================
[2026-06-12 06:16:34,879.879 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 06:16:34
[2026-06-12 06:16:35,195.195 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 06:16:35,349.349 INFO    ] Initializing speech engine...
[2026-06-12 06:16:35,353.353 INFO    ] 2026-06-12 06:16:35
[2026-06-12 06:16:35,562.562 INFO    ] 2026-06-12 06:16:35
[2026-06-12 06:16:35,591.591 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 06:16:35,774.774 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 06:16:35,784.784 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 06:16:35,914.914 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 06:16:35,982.982 INFO    ] time= 12/06/2026 06:16:35
[2026-06-12 06:16:36,006.006 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 06:16:36,008.008 INFO    ] Checking for existing commands in stream...
[2026-06-12 06:16:36,104.104 INFO    ] No existing commands found in stream
[2026-06-12 06:16:41,118.118 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 06:16:41,122.122 INFO    ] Waiting 0.45 seconds before fallback handling...
[2026-06-12 06:16:41,954.954 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 06:16:41,956.956 INFO    ] Checking for system updates...
[2026-06-12 06:16:41,978.978 INFO    ] 200
[2026-06-12 06:16:41,980.980 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:16:42,012.012 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 06:16:42,014.014 INFO    ] No update needed
[2026-06-12 06:16:42,015.015 INFO    ] Checking for camera pi updates...
[2026-06-12 06:16:42,035.035 INFO    ] 200
[2026-06-12 06:16:42,036.036 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:16:42,059.059 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 06:16:42,198.198 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 06:16:42,199.199 INFO    ] No camera update needed
[2026-06-12 06:16:42,200.200 INFO    ] Script finished. Safe exiting...
[2026-06-12 06:16:42,202.202 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 06:16:42,204.204 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 06:16:42,207.207 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 06:16:44,247.247 INFO    ] ================================================
[2026-06-12 06:16:44,264.264 INFO    ] Launching Daemon at Fri Jun 12 06:16:44 IST 2026
[2026-06-12 06:16:44,275.275 INFO    ] ================================================
[2026-06-12 06:16:44,644.644 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 06:16:44
[2026-06-12 06:16:44,982.982 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 06:16:45,134.134 INFO    ] Initializing speech engine...
[2026-06-12 06:16:45,140.140 INFO    ] 2026-06-12 06:16:45
[2026-06-12 06:16:45,350.350 INFO    ] 2026-06-12 06:16:45
[2026-06-12 06:16:45,379.379 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 06:16:45,507.507 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 06:16:45,565.565 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 06:16:45,709.709 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 06:16:45,772.772 INFO    ] time= 12/06/2026 06:16:45
[2026-06-12 06:16:45,795.795 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 06:16:45,802.802 INFO    ] Checking for existing commands in stream...
[2026-06-12 06:16:45,868.868 INFO    ] No existing commands found in stream
[2026-06-12 06:16:50,878.878 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 06:16:50,881.881 INFO    ] Waiting 3.44 seconds before fallback handling...
[2026-06-12 06:16:54,682.682 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 06:16:54,683.683 INFO    ] Checking for system updates...
[2026-06-12 06:16:54,704.704 INFO    ] 200
[2026-06-12 06:16:54,705.705 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:16:54,740.740 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 06:16:54,742.742 INFO    ] No update needed
[2026-06-12 06:16:54,743.743 INFO    ] Checking for camera pi updates...
[2026-06-12 06:16:54,762.762 INFO    ] 200
[2026-06-12 06:16:54,763.763 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:16:54,790.790 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 06:16:54,829.829 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 06:16:54,830.830 INFO    ] No camera update needed
[2026-06-12 06:16:54,832.832 INFO    ] Script finished. Safe exiting...
[2026-06-12 06:16:54,833.833 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 06:16:54,836.836 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 06:16:54,838.838 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 06:16:56,877.877 INFO    ] ================================================
[2026-06-12 06:16:56,893.893 INFO    ] Launching Daemon at Fri Jun 12 06:16:56 IST 2026
[2026-06-12 06:16:56,905.905 INFO    ] ================================================
[2026-06-12 06:16:57,257.257 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 06:16:57
[2026-06-12 06:16:57,594.594 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 06:16:57,745.745 INFO    ] Initializing speech engine...
[2026-06-12 06:16:57,751.751 INFO    ] 2026-06-12 06:16:57
[2026-06-12 06:16:57,957.957 INFO    ] 2026-06-12 06:16:57
[2026-06-12 06:16:57,985.985 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 06:16:58,170.170 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 06:16:58,179.179 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 06:16:58,324.324 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 06:16:58,378.378 INFO    ] time= 12/06/2026 06:16:58
[2026-06-12 06:16:58,400.400 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 06:16:58,406.406 INFO    ] Checking for existing commands in stream...
[2026-06-12 06:16:58,473.473 INFO    ] No existing commands found in stream
[2026-06-12 06:17:03,487.487 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 06:17:03,491.491 INFO    ] Waiting 1.45 seconds before fallback handling...
[2026-06-12 06:17:05,345.345 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 06:17:05,347.347 INFO    ] Checking for system updates...
[2026-06-12 06:17:05,374.374 INFO    ] 200
[2026-06-12 06:17:05,376.376 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:17:05,409.409 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 06:17:05,411.411 INFO    ] No update needed
[2026-06-12 06:17:05,412.412 INFO    ] Checking for camera pi updates...
[2026-06-12 06:17:05,433.433 INFO    ] 200
[2026-06-12 06:17:05,434.434 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:17:05,457.457 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 06:17:05,500.500 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 06:17:05,502.502 INFO    ] No camera update needed
[2026-06-12 06:17:05,503.503 INFO    ] Script finished. Safe exiting...
[2026-06-12 06:17:05,504.504 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 06:17:05,507.507 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 06:17:05,510.510 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 06:17:07,550.550 INFO    ] ================================================
[2026-06-12 06:17:07,567.567 INFO    ] Launching Daemon at Fri Jun 12 06:17:07 IST 2026
[2026-06-12 06:17:07,578.578 INFO    ] ================================================
[2026-06-12 06:17:07,919.919 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 06:17:07
[2026-06-12 06:17:08,239.239 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 06:17:08,376.376 INFO    ] Initializing speech engine...
[2026-06-12 06:17:08,388.388 INFO    ] 2026-06-12 06:17:08
[2026-06-12 06:17:08,609.609 INFO    ] 2026-06-12 06:17:08
[2026-06-12 06:17:08,640.640 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 06:17:08,773.773 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 06:17:08,836.836 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 06:17:08,985.985 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 06:17:09,038.038 INFO    ] time= 12/06/2026 06:17:08
[2026-06-12 06:17:09,082.082 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 06:17:09,089.089 INFO    ] Checking for existing commands in stream...
[2026-06-12 06:17:09,191.191 INFO    ] No existing commands found in stream
[2026-06-12 06:17:14,200.200 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 06:17:14,203.203 INFO    ] Waiting 3.22 seconds before fallback handling...
[2026-06-12 06:17:17,781.781 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 06:17:17,783.783 INFO    ] Checking for system updates...
[2026-06-12 06:17:17,820.820 INFO    ] 200
[2026-06-12 06:17:17,823.823 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:17:17,876.876 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 06:17:17,877.877 INFO    ] No update needed
[2026-06-12 06:17:17,879.879 INFO    ] Checking for camera pi updates...
[2026-06-12 06:17:17,898.898 INFO    ] 200
[2026-06-12 06:17:17,900.900 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:17:17,924.924 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 06:17:17,961.961 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 06:17:17,962.962 INFO    ] No camera update needed
[2026-06-12 06:17:17,963.963 INFO    ] Script finished. Safe exiting...
[2026-06-12 06:17:17,964.964 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 06:17:17,967.967 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 06:17:17,970.970 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 06:17:20,010.010 INFO    ] ================================================
[2026-06-12 06:17:20,025.025 INFO    ] Launching Daemon at Fri Jun 12 06:17:20 IST 2026
[2026-06-12 06:17:20,036.036 INFO    ] ================================================
[2026-06-12 06:17:20,402.402 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 06:17:20
[2026-06-12 06:17:20,721.721 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 06:17:20,853.853 INFO    ] Initializing speech engine...
[2026-06-12 06:17:20,861.861 INFO    ] 2026-06-12 06:17:20
[2026-06-12 06:17:21,074.074 INFO    ] 2026-06-12 06:17:21
[2026-06-12 06:17:21,102.102 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 06:17:21,286.286 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 06:17:21,294.294 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 06:17:21,425.425 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 06:17:21,489.489 INFO    ] time= 12/06/2026 06:17:21
[2026-06-12 06:17:21,515.515 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 06:17:21,522.522 INFO    ] Checking for existing commands in stream...
[2026-06-12 06:17:21,589.589 INFO    ] No existing commands found in stream
[2026-06-12 06:17:26,621.621 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 06:17:26,624.624 INFO    ] Waiting 2.42 seconds before fallback handling...
[2026-06-12 06:17:29,404.404 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 06:17:29,406.406 INFO    ] Checking for system updates...
[2026-06-12 06:17:29,428.428 INFO    ] 200
[2026-06-12 06:17:29,430.430 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:17:29,461.461 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 06:17:29,463.463 INFO    ] No update needed
[2026-06-12 06:17:29,464.464 INFO    ] Checking for camera pi updates...
[2026-06-12 06:17:29,485.485 INFO    ] 200
[2026-06-12 06:17:29,486.486 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:17:29,512.512 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 06:17:29,558.558 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 06:17:29,559.559 INFO    ] No camera update needed
[2026-06-12 06:17:29,561.561 INFO    ] Script finished. Safe exiting...
[2026-06-12 06:17:29,562.562 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 06:17:29,565.565 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 06:17:29,568.568 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 06:17:31,609.609 INFO    ] ================================================
[2026-06-12 06:17:31,626.626 INFO    ] Launching Daemon at Fri Jun 12 06:17:31 IST 2026
[2026-06-12 06:17:31,638.638 INFO    ] ================================================
[2026-06-12 06:17:32,023.023 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 06:17:32
[2026-06-12 06:17:32,365.365 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 06:17:32,514.514 INFO    ] Initializing speech engine...
[2026-06-12 06:17:32,518.518 INFO    ] 2026-06-12 06:17:32
[2026-06-12 06:17:32,728.728 INFO    ] 2026-06-12 06:17:32
[2026-06-12 06:17:32,757.757 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 06:17:32,930.930 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 06:17:32,982.982 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 06:17:33,129.129 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 06:17:33,181.181 INFO    ] time= 12/06/2026 06:17:33
[2026-06-12 06:17:33,222.222 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 06:17:33,233.233 INFO    ] Checking for existing commands in stream...
[2026-06-12 06:17:33,309.309 INFO    ] No existing commands found in stream
[2026-06-12 06:17:38,320.320 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 06:17:38,323.323 INFO    ] Waiting 3.43 seconds before fallback handling...
[2026-06-12 06:17:42,135.135 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 06:17:42,136.136 INFO    ] Checking for system updates...
[2026-06-12 06:17:42,157.157 INFO    ] 200
[2026-06-12 06:17:42,159.159 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:17:42,189.189 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 06:17:42,190.190 INFO    ] No update needed
[2026-06-12 06:17:42,191.191 INFO    ] Checking for camera pi updates...
[2026-06-12 06:17:42,213.213 INFO    ] 200
[2026-06-12 06:17:42,214.214 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:17:42,239.239 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 06:17:42,281.281 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 06:17:42,282.282 INFO    ] No camera update needed
[2026-06-12 06:17:42,284.284 INFO    ] Script finished. Safe exiting...
[2026-06-12 06:17:42,285.285 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 06:17:42,288.288 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 06:17:42,291.291 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 06:17:44,329.329 INFO    ] ================================================
[2026-06-12 06:17:44,345.345 INFO    ] Launching Daemon at Fri Jun 12 06:17:44 IST 2026
[2026-06-12 06:17:44,356.356 INFO    ] ================================================
[2026-06-12 06:17:44,710.710 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 06:17:44
[2026-06-12 06:17:45,021.021 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 06:17:45,158.158 INFO    ] Initializing speech engine...
[2026-06-12 06:17:45,169.169 INFO    ] 2026-06-12 06:17:45
[2026-06-12 06:17:45,374.374 INFO    ] 2026-06-12 06:17:45
[2026-06-12 06:17:45,403.403 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 06:17:45,590.590 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 06:17:45,593.593 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 06:17:45,731.731 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 06:17:45,795.795 INFO    ] time= 12/06/2026 06:17:45
[2026-06-12 06:17:45,823.823 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 06:17:45,830.830 INFO    ] Checking for existing commands in stream...
[2026-06-12 06:17:45,898.898 INFO    ] No existing commands found in stream
[2026-06-12 06:17:50,917.917 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 06:17:50,919.919 INFO    ] Waiting 0.32 seconds before fallback handling...
[2026-06-12 06:17:51,613.613 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 06:17:51,614.614 INFO    ] Checking for system updates...
[2026-06-12 06:17:51,635.635 INFO    ] 200
[2026-06-12 06:17:51,636.636 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:17:51,666.666 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 06:17:51,667.667 INFO    ] No update needed
[2026-06-12 06:17:51,669.669 INFO    ] Checking for camera pi updates...
[2026-06-12 06:17:51,689.689 INFO    ] 200
[2026-06-12 06:17:51,691.691 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:17:51,714.714 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 06:17:51,749.749 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 06:17:51,751.751 INFO    ] No camera update needed
[2026-06-12 06:17:51,752.752 INFO    ] Script finished. Safe exiting...
[2026-06-12 06:17:51,753.753 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 06:17:51,756.756 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 06:17:51,759.759 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 06:17:53,800.800 INFO    ] ================================================
[2026-06-12 06:17:53,816.816 INFO    ] Launching Daemon at Fri Jun 12 06:17:53 IST 2026
[2026-06-12 06:17:53,827.827 INFO    ] ================================================
[2026-06-12 06:17:54,197.197 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 06:17:54
[2026-06-12 06:17:54,509.509 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 06:17:54,652.652 INFO    ] Initializing speech engine...
[2026-06-12 06:17:54,657.657 INFO    ] 2026-06-12 06:17:54
[2026-06-12 06:17:54,864.864 INFO    ] 2026-06-12 06:17:54
[2026-06-12 06:17:54,893.893 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 06:17:55,081.081 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 06:17:55,089.089 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 06:17:55,222.222 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 06:17:55,290.290 INFO    ] time= 12/06/2026 06:17:55
[2026-06-12 06:17:55,314.314 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 06:17:55,321.321 INFO    ] Checking for existing commands in stream...
[2026-06-12 06:17:55,413.413 INFO    ] No existing commands found in stream
[2026-06-12 06:18:00,422.422 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 06:18:00,425.425 INFO    ] Waiting 1.55 seconds before fallback handling...
[2026-06-12 06:18:02,325.325 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 06:18:02,327.327 INFO    ] Checking for system updates...
[2026-06-12 06:18:02,352.352 INFO    ] 200
[2026-06-12 06:18:02,354.354 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:18:02,394.394 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 06:18:02,396.396 INFO    ] No update needed
[2026-06-12 06:18:02,398.398 INFO    ] Checking for camera pi updates...
[2026-06-12 06:18:02,424.424 INFO    ] 200
[2026-06-12 06:18:02,426.426 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:18:02,458.458 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 06:18:02,493.493 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 06:18:02,494.494 INFO    ] No camera update needed
[2026-06-12 06:18:02,496.496 INFO    ] Script finished. Safe exiting...
[2026-06-12 06:18:02,498.498 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 06:18:02,502.502 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 06:18:02,506.506 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 06:18:04,546.546 INFO    ] ================================================
[2026-06-12 06:18:04,562.562 INFO    ] Launching Daemon at Fri Jun 12 06:18:04 IST 2026
[2026-06-12 06:18:04,573.573 INFO    ] ================================================
[2026-06-12 06:18:04,909.909 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 06:18:04
[2026-06-12 06:18:05,227.227 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 06:18:05,358.358 INFO    ] Initializing speech engine...
[2026-06-12 06:18:05,363.363 INFO    ] 2026-06-12 06:18:05
[2026-06-12 06:18:05,583.583 INFO    ] 2026-06-12 06:18:05
[2026-06-12 06:18:05,613.613 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 06:18:05,799.799 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 06:18:05,808.808 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 06:18:05,955.955 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 06:18:06,014.014 INFO    ] time= 12/06/2026 06:18:05
[2026-06-12 06:18:06,051.051 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 06:18:06,057.057 INFO    ] Checking for existing commands in stream...
[2026-06-12 06:18:06,149.149 INFO    ] No existing commands found in stream
[2026-06-12 06:18:11,158.158 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 06:18:11,161.161 INFO    ] Waiting 3.60 seconds before fallback handling...
[2026-06-12 06:18:15,134.134 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 06:18:15,136.136 INFO    ] Checking for system updates...
[2026-06-12 06:18:15,157.157 INFO    ] 200
[2026-06-12 06:18:15,158.158 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:18:15,188.188 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 06:18:15,190.190 INFO    ] No update needed
[2026-06-12 06:18:15,191.191 INFO    ] Checking for camera pi updates...
[2026-06-12 06:18:15,213.213 INFO    ] 200
[2026-06-12 06:18:15,214.214 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:18:15,237.237 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 06:18:15,283.283 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 06:18:15,284.284 INFO    ] No camera update needed
[2026-06-12 06:18:15,285.285 INFO    ] Script finished. Safe exiting...
[2026-06-12 06:18:15,286.286 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 06:18:15,289.289 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 06:18:15,292.292 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 06:18:17,333.333 INFO    ] ================================================
[2026-06-12 06:18:17,348.348 INFO    ] Launching Daemon at Fri Jun 12 06:18:17 IST 2026
[2026-06-12 06:18:17,359.359 INFO    ] ================================================
[2026-06-12 06:18:17,728.728 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 06:18:17
[2026-06-12 06:18:18,044.044 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 06:18:18,189.189 INFO    ] Initializing speech engine...
[2026-06-12 06:18:18,193.193 INFO    ] 2026-06-12 06:18:18
[2026-06-12 06:18:18,393.393 INFO    ] 2026-06-12 06:18:18
[2026-06-12 06:18:18,423.423 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 06:18:18,604.604 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 06:18:18,607.607 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 06:18:18,734.734 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 06:18:18,795.795 INFO    ] time= 12/06/2026 06:18:18
[2026-06-12 06:18:18,823.823 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 06:18:18,833.833 INFO    ] Checking for existing commands in stream...
[2026-06-12 06:18:18,904.904 INFO    ] No existing commands found in stream
[2026-06-12 06:18:23,917.917 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 06:18:23,920.920 INFO    ] Waiting 3.87 seconds before fallback handling...
[2026-06-12 06:18:28,145.145 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 06:18:28,146.146 INFO    ] Checking for system updates...
[2026-06-12 06:18:28,167.167 INFO    ] 200
[2026-06-12 06:18:28,169.169 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:18:28,202.202 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 06:18:28,203.203 INFO    ] No update needed
[2026-06-12 06:18:28,205.205 INFO    ] Checking for camera pi updates...
[2026-06-12 06:18:28,224.224 INFO    ] 200
[2026-06-12 06:18:28,226.226 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:18:28,250.250 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 06:18:28,285.285 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 06:18:28,287.287 INFO    ] No camera update needed
[2026-06-12 06:18:28,288.288 INFO    ] Script finished. Safe exiting...
[2026-06-12 06:18:28,290.290 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 06:18:28,293.293 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 06:18:28,296.296 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 06:18:30,339.339 INFO    ] ================================================
[2026-06-12 06:18:30,355.355 INFO    ] Launching Daemon at Fri Jun 12 06:18:30 IST 2026
[2026-06-12 06:18:30,366.366 INFO    ] ================================================
[2026-06-12 06:18:30,721.721 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 06:18:30
[2026-06-12 06:18:31,037.037 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 06:18:31,180.180 INFO    ] Initializing speech engine...
[2026-06-12 06:18:31,188.188 INFO    ] 2026-06-12 06:18:31
[2026-06-12 06:18:31,409.409 INFO    ] 2026-06-12 06:18:31
[2026-06-12 06:18:31,440.440 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 06:18:31,573.573 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 06:18:31,636.636 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 06:18:31,774.774 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 06:18:31,847.847 INFO    ] time= 12/06/2026 06:18:31
[2026-06-12 06:18:31,879.879 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 06:18:31,887.887 INFO    ] Checking for existing commands in stream...
[2026-06-12 06:18:32,003.003 INFO    ] No existing commands found in stream
[2026-06-12 06:18:37,014.014 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 06:18:37,017.017 INFO    ] Waiting 0.26 seconds before fallback handling...
[2026-06-12 06:18:37,683.683 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 06:18:37,685.685 INFO    ] Checking for system updates...
[2026-06-12 06:18:37,707.707 INFO    ] 200
[2026-06-12 06:18:37,708.708 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:18:37,738.738 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 06:18:37,740.740 INFO    ] No update needed
[2026-06-12 06:18:37,741.741 INFO    ] Checking for camera pi updates...
[2026-06-12 06:18:37,761.761 INFO    ] 200
[2026-06-12 06:18:37,762.762 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:18:37,787.787 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 06:18:37,832.832 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 06:18:37,834.834 INFO    ] No camera update needed
[2026-06-12 06:18:37,835.835 INFO    ] Script finished. Safe exiting...
[2026-06-12 06:18:37,836.836 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 06:18:37,839.839 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 06:18:37,842.842 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 06:18:39,881.881 INFO    ] ================================================
[2026-06-12 06:18:39,896.896 INFO    ] Launching Daemon at Fri Jun 12 06:18:39 IST 2026
[2026-06-12 06:18:39,907.907 INFO    ] ================================================
[2026-06-12 06:18:40,238.238 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 06:18:40
[2026-06-12 06:18:40,554.554 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 06:18:40,685.685 INFO    ] Initializing speech engine...
[2026-06-12 06:18:40,690.690 INFO    ] 2026-06-12 06:18:40
[2026-06-12 06:18:40,907.907 INFO    ] 2026-06-12 06:18:40
[2026-06-12 06:18:40,937.937 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 06:18:41,120.120 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 06:18:41,129.129 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 06:18:41,259.259 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 06:18:41,326.326 INFO    ] time= 12/06/2026 06:18:41
[2026-06-12 06:18:41,350.350 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 06:18:41,352.352 INFO    ] Checking for existing commands in stream...
[2026-06-12 06:18:41,423.423 INFO    ] No existing commands found in stream
[2026-06-12 06:18:46,437.437 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 06:18:46,440.440 INFO    ] Waiting 0.51 seconds before fallback handling...
[2026-06-12 06:18:47,370.370 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 06:18:47,372.372 INFO    ] Checking for system updates...
[2026-06-12 06:18:47,393.393 INFO    ] 200
[2026-06-12 06:18:47,394.394 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:18:47,424.424 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 06:18:47,426.426 INFO    ] No update needed
[2026-06-12 06:18:47,427.427 INFO    ] Checking for camera pi updates...
[2026-06-12 06:18:47,447.447 INFO    ] 200
[2026-06-12 06:18:47,448.448 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:18:47,473.473 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 06:18:47,613.613 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 06:18:47,614.614 INFO    ] No camera update needed
[2026-06-12 06:18:47,615.615 INFO    ] Script finished. Safe exiting...
[2026-06-12 06:18:47,617.617 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 06:18:47,620.620 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 06:18:47,622.622 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 06:18:49,661.661 INFO    ] ================================================
[2026-06-12 06:18:49,676.676 INFO    ] Launching Daemon at Fri Jun 12 06:18:49 IST 2026
[2026-06-12 06:18:49,687.687 INFO    ] ================================================
[2026-06-12 06:18:50,027.027 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 06:18:50
[2026-06-12 06:18:50,344.344 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 06:18:50,489.489 INFO    ] Initializing speech engine...
[2026-06-12 06:18:50,494.494 INFO    ] 2026-06-12 06:18:50
[2026-06-12 06:18:50,698.698 INFO    ] 2026-06-12 06:18:50
[2026-06-12 06:18:50,726.726 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 06:18:50,849.849 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 06:18:50,912.912 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 06:18:51,042.042 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 06:18:51,108.108 INFO    ] time= 12/06/2026 06:18:51
[2026-06-12 06:18:51,139.139 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 06:18:51,141.141 INFO    ] Checking for existing commands in stream...
[2026-06-12 06:18:51,212.212 INFO    ] No existing commands found in stream
[2026-06-12 06:18:56,221.221 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 06:18:56,224.224 INFO    ] Waiting 0.44 seconds before fallback handling...
[2026-06-12 06:18:57,023.023 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 06:18:57,025.025 INFO    ] Checking for system updates...
[2026-06-12 06:18:57,045.045 INFO    ] 200
[2026-06-12 06:18:57,047.047 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:18:57,077.077 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 06:18:57,078.078 INFO    ] No update needed
[2026-06-12 06:18:57,080.080 INFO    ] Checking for camera pi updates...
[2026-06-12 06:18:57,102.102 INFO    ] 200
[2026-06-12 06:18:57,103.103 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:18:57,126.126 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 06:18:57,171.171 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 06:18:57,172.172 INFO    ] No camera update needed
[2026-06-12 06:18:57,174.174 INFO    ] Script finished. Safe exiting...
[2026-06-12 06:18:57,175.175 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 06:18:57,178.178 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 06:18:57,181.181 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 06:18:59,223.223 INFO    ] ================================================
[2026-06-12 06:18:59,238.238 INFO    ] Launching Daemon at Fri Jun 12 06:18:59 IST 2026
[2026-06-12 06:18:59,249.249 INFO    ] ================================================
[2026-06-12 06:18:59,605.605 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 06:18:59
[2026-06-12 06:18:59,918.918 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 06:19:00,052.052 INFO    ] Initializing speech engine...
[2026-06-12 06:19:00,057.057 INFO    ] 2026-06-12 06:19:00
[2026-06-12 06:19:00,275.275 INFO    ] 2026-06-12 06:19:00
[2026-06-12 06:19:00,304.304 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 06:19:00,491.491 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 06:19:00,499.499 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 06:19:00,624.624 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 06:19:00,685.685 INFO    ] time= 12/06/2026 06:19:00
[2026-06-12 06:19:00,710.710 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 06:19:00,726.726 INFO    ] Checking for existing commands in stream...
[2026-06-12 06:19:00,824.824 INFO    ] No existing commands found in stream
[2026-06-12 06:19:05,838.838 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 06:19:05,840.840 INFO    ] Waiting 3.11 seconds before fallback handling...
[2026-06-12 06:19:09,334.334 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 06:19:09,336.336 INFO    ] Checking for system updates...
[2026-06-12 06:19:09,358.358 INFO    ] 200
[2026-06-12 06:19:09,359.359 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:19:09,392.392 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 06:19:09,393.393 INFO    ] No update needed
[2026-06-12 06:19:09,395.395 INFO    ] Checking for camera pi updates...
[2026-06-12 06:19:09,415.415 INFO    ] 200
[2026-06-12 06:19:09,417.417 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:19:09,440.440 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 06:19:09,475.475 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 06:19:09,476.476 INFO    ] No camera update needed
[2026-06-12 06:19:09,478.478 INFO    ] Script finished. Safe exiting...
[2026-06-12 06:19:09,479.479 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 06:19:09,482.482 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 06:19:09,485.485 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 06:19:11,528.528 INFO    ] ================================================
[2026-06-12 06:19:11,543.543 INFO    ] Launching Daemon at Fri Jun 12 06:19:11 IST 2026
[2026-06-12 06:19:11,554.554 INFO    ] ================================================
[2026-06-12 06:19:11,906.906 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 06:19:11
[2026-06-12 06:19:12,247.247 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 06:19:12,394.394 INFO    ] Initializing speech engine...
[2026-06-12 06:19:12,405.405 INFO    ] 2026-06-12 06:19:12
[2026-06-12 06:19:12,617.617 INFO    ] 2026-06-12 06:19:12
[2026-06-12 06:19:12,647.647 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 06:19:12,835.835 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 06:19:12,845.845 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 06:19:12,988.988 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 06:19:13,048.048 INFO    ] time= 12/06/2026 06:19:12
[2026-06-12 06:19:13,071.071 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 06:19:13,078.078 INFO    ] Checking for existing commands in stream...
[2026-06-12 06:19:13,146.146 INFO    ] No existing commands found in stream
[2026-06-12 06:19:18,179.179 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 06:19:18,183.183 INFO    ] Waiting 2.80 seconds before fallback handling...
[2026-06-12 06:19:21,376.376 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 06:19:21,378.378 INFO    ] Checking for system updates...
[2026-06-12 06:19:21,399.399 INFO    ] 200
[2026-06-12 06:19:21,401.401 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:19:21,432.432 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 06:19:21,433.433 INFO    ] No update needed
[2026-06-12 06:19:21,435.435 INFO    ] Checking for camera pi updates...
[2026-06-12 06:19:21,454.454 INFO    ] 200
[2026-06-12 06:19:21,456.456 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:19:21,479.479 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 06:19:21,527.527 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 06:19:21,528.528 INFO    ] No camera update needed
[2026-06-12 06:19:21,529.529 INFO    ] Script finished. Safe exiting...
[2026-06-12 06:19:21,531.531 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 06:19:21,534.534 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 06:19:21,537.537 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 06:19:23,568.568 INFO    ] ================================================
[2026-06-12 06:19:23,584.584 INFO    ] Launching Daemon at Fri Jun 12 06:19:23 IST 2026
[2026-06-12 06:19:23,596.596 INFO    ] ================================================
[2026-06-12 06:19:23,917.917 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 06:19:23
[2026-06-12 06:19:24,263.263 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 06:19:24,395.395 INFO    ] Initializing speech engine...
[2026-06-12 06:19:24,408.408 INFO    ] 2026-06-12 06:19:24
[2026-06-12 06:19:24,620.620 INFO    ] 2026-06-12 06:19:24
[2026-06-12 06:19:24,650.650 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 06:19:24,774.774 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 06:19:24,837.837 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 06:19:24,978.978 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 06:19:25,046.046 INFO    ] time= 12/06/2026 06:19:24
[2026-06-12 06:19:25,070.070 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 06:19:25,076.076 INFO    ] Checking for existing commands in stream...
[2026-06-12 06:19:25,144.144 INFO    ] No existing commands found in stream
[2026-06-12 06:19:30,153.153 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 06:19:30,156.156 INFO    ] Waiting 2.93 seconds before fallback handling...
[2026-06-12 06:19:33,412.412 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 06:19:33,414.414 INFO    ] Checking for system updates...
[2026-06-12 06:19:33,435.435 INFO    ] 200
[2026-06-12 06:19:33,437.437 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:19:33,469.469 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 06:19:33,471.471 INFO    ] No update needed
[2026-06-12 06:19:33,472.472 INFO    ] Checking for camera pi updates...
[2026-06-12 06:19:33,491.491 INFO    ] 200
[2026-06-12 06:19:33,493.493 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:19:33,518.518 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 06:19:33,560.560 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 06:19:33,562.562 INFO    ] No camera update needed
[2026-06-12 06:19:33,563.563 INFO    ] Script finished. Safe exiting...
[2026-06-12 06:19:33,564.564 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 06:19:33,567.567 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 06:19:33,570.570 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 06:19:35,613.613 INFO    ] ================================================
[2026-06-12 06:19:35,629.629 INFO    ] Launching Daemon at Fri Jun 12 06:19:35 IST 2026
[2026-06-12 06:19:35,640.640 INFO    ] ================================================
[2026-06-12 06:19:35,985.985 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 06:19:35
[2026-06-12 06:19:36,298.298 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 06:19:36,438.438 INFO    ] Initializing speech engine...
[2026-06-12 06:19:36,447.447 INFO    ] 2026-06-12 06:19:36
[2026-06-12 06:19:36,665.665 INFO    ] 2026-06-12 06:19:36
[2026-06-12 06:19:36,696.696 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 06:19:36,894.894 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 06:19:36,897.897 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 06:19:37,037.037 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 06:19:37,094.094 INFO    ] time= 12/06/2026 06:19:37
[2026-06-12 06:19:37,111.111 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 06:19:37,126.126 INFO    ] Checking for existing commands in stream...
[2026-06-12 06:19:37,210.210 INFO    ] No existing commands found in stream
[2026-06-12 06:19:42,234.234 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 06:19:42,237.237 INFO    ] Waiting 2.47 seconds before fallback handling...
[2026-06-12 06:19:45,077.077 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 06:19:45,078.078 INFO    ] Checking for system updates...
[2026-06-12 06:19:45,099.099 INFO    ] 200
[2026-06-12 06:19:45,100.100 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:19:45,133.133 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 06:19:45,134.134 INFO    ] No update needed
[2026-06-12 06:19:45,136.136 INFO    ] Checking for camera pi updates...
[2026-06-12 06:19:45,155.155 INFO    ] 200
[2026-06-12 06:19:45,157.157 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:19:45,180.180 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 06:19:45,220.220 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 06:19:45,222.222 INFO    ] No camera update needed
[2026-06-12 06:19:45,223.223 INFO    ] Script finished. Safe exiting...
[2026-06-12 06:19:45,224.224 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 06:19:45,227.227 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 06:19:45,230.230 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 06:19:47,269.269 INFO    ] ================================================
[2026-06-12 06:19:47,285.285 INFO    ] Launching Daemon at Fri Jun 12 06:19:47 IST 2026
[2026-06-12 06:19:47,296.296 INFO    ] ================================================
[2026-06-12 06:19:47,658.658 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 06:19:47
[2026-06-12 06:19:47,996.996 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 06:19:48,148.148 INFO    ] Initializing speech engine...
[2026-06-12 06:19:48,154.154 INFO    ] 2026-06-12 06:19:48
[2026-06-12 06:19:48,361.361 INFO    ] 2026-06-12 06:19:48
[2026-06-12 06:19:48,392.392 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 06:19:48,535.535 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 06:19:48,579.579 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 06:19:48,718.718 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 06:19:48,782.782 INFO    ] time= 12/06/2026 06:19:48
[2026-06-12 06:19:48,811.811 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 06:19:48,818.818 INFO    ] Checking for existing commands in stream...
[2026-06-12 06:19:48,909.909 INFO    ] No existing commands found in stream
[2026-06-12 06:19:53,918.918 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 06:19:53,922.922 INFO    ] Waiting 1.99 seconds before fallback handling...
[2026-06-12 06:19:56,330.330 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 06:19:56,331.331 INFO    ] Checking for system updates...
[2026-06-12 06:19:56,352.352 INFO    ] 200
[2026-06-12 06:19:56,354.354 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:19:56,387.387 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 06:19:56,389.389 INFO    ] No update needed
[2026-06-12 06:19:56,390.390 INFO    ] Checking for camera pi updates...
[2026-06-12 06:19:56,410.410 INFO    ] 200
[2026-06-12 06:19:56,412.412 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:19:56,437.437 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 06:19:56,482.482 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 06:19:56,484.484 INFO    ] No camera update needed
[2026-06-12 06:19:56,485.485 INFO    ] Script finished. Safe exiting...
[2026-06-12 06:19:56,487.487 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 06:19:56,490.490 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 06:19:56,493.493 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 06:19:58,533.533 INFO    ] ================================================
[2026-06-12 06:19:58,549.549 INFO    ] Launching Daemon at Fri Jun 12 06:19:58 IST 2026
[2026-06-12 06:19:58,560.560 INFO    ] ================================================
[2026-06-12 06:19:58,902.902 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 06:19:58
[2026-06-12 06:19:59,214.214 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 06:19:59,345.345 INFO    ] Initializing speech engine...
[2026-06-12 06:19:59,353.353 INFO    ] 2026-06-12 06:19:59
[2026-06-12 06:19:59,564.564 INFO    ] 2026-06-12 06:19:59
[2026-06-12 06:19:59,592.592 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 06:19:59,776.776 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 06:19:59,786.786 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 06:19:59,912.912 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 06:19:59,969.969 INFO    ] time= 12/06/2026 06:19:59
[2026-06-12 06:20:00,003.003 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 06:20:00,008.008 INFO    ] Checking for existing commands in stream...
[2026-06-12 06:20:00,080.080 INFO    ] No existing commands found in stream
[2026-06-12 06:20:05,089.089 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 06:20:05,092.092 INFO    ] Waiting 2.99 seconds before fallback handling...
[2026-06-12 06:20:09,337.337 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 06:20:09,340.340 INFO    ] Checking for system updates...
[2026-06-12 06:20:09,381.381 INFO    ] 200
[2026-06-12 06:20:09,383.383 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:20:09,443.443 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 06:20:09,445.445 INFO    ] No update needed
[2026-06-12 06:20:09,448.448 INFO    ] Checking for camera pi updates...
[2026-06-12 06:20:09,481.481 INFO    ] 200
[2026-06-12 06:20:09,484.484 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:20:09,512.512 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 06:20:09,553.553 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 06:20:09,554.554 INFO    ] No camera update needed
[2026-06-12 06:20:09,556.556 INFO    ] Script finished. Safe exiting...
[2026-06-12 06:20:09,557.557 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 06:20:09,560.560 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 06:20:09,563.563 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 06:20:11,603.603 INFO    ] ================================================
[2026-06-12 06:20:11,619.619 INFO    ] Launching Daemon at Fri Jun 12 06:20:11 IST 2026
[2026-06-12 06:20:11,630.630 INFO    ] ================================================
[2026-06-12 06:20:11,959.959 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 06:20:11
[2026-06-12 06:20:12,272.272 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 06:20:12,402.402 INFO    ] Initializing speech engine...
[2026-06-12 06:20:12,409.409 INFO    ] 2026-06-12 06:20:12
[2026-06-12 06:20:12,621.621 INFO    ] 2026-06-12 06:20:12
[2026-06-12 06:20:12,649.649 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 06:20:12,786.786 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 06:20:12,834.834 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 06:20:12,963.963 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 06:20:13,016.016 INFO    ] time= 12/06/2026 06:20:12
[2026-06-12 06:20:13,068.068 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 06:20:13,075.075 INFO    ] Checking for existing commands in stream...
[2026-06-12 06:20:13,142.142 INFO    ] No existing commands found in stream
[2026-06-12 06:20:18,151.151 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 06:20:18,154.154 INFO    ] Waiting 3.62 seconds before fallback handling...
[2026-06-12 06:20:22,155.155 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 06:20:22,157.157 INFO    ] Checking for system updates...
[2026-06-12 06:20:22,177.177 INFO    ] 200
[2026-06-12 06:20:22,179.179 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:20:22,209.209 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 06:20:22,211.211 INFO    ] No update needed
[2026-06-12 06:20:22,213.213 INFO    ] Checking for camera pi updates...
[2026-06-12 06:20:22,232.232 INFO    ] 200
[2026-06-12 06:20:22,233.233 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:20:22,256.256 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 06:20:22,297.297 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 06:20:22,298.298 INFO    ] No camera update needed
[2026-06-12 06:20:22,299.299 INFO    ] Script finished. Safe exiting...
[2026-06-12 06:20:22,301.301 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 06:20:22,304.304 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 06:20:22,307.307 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 06:20:24,346.346 INFO    ] ================================================
[2026-06-12 06:20:24,362.362 INFO    ] Launching Daemon at Fri Jun 12 06:20:24 IST 2026
[2026-06-12 06:20:24,373.373 INFO    ] ================================================
[2026-06-12 06:20:24,759.759 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 06:20:24
[2026-06-12 06:20:25,082.082 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 06:20:25,215.215 INFO    ] Initializing speech engine...
[2026-06-12 06:20:25,228.228 INFO    ] 2026-06-12 06:20:25
[2026-06-12 06:20:25,437.437 INFO    ] 2026-06-12 06:20:25
[2026-06-12 06:20:25,465.465 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 06:20:25,587.587 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 06:20:25,649.649 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 06:20:25,779.779 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 06:20:25,835.835 INFO    ] time= 12/06/2026 06:20:25
[2026-06-12 06:20:25,869.869 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 06:20:25,879.879 INFO    ] Checking for existing commands in stream...
[2026-06-12 06:20:25,950.950 INFO    ] No existing commands found in stream
[2026-06-12 06:20:30,959.959 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 06:20:30,962.962 INFO    ] Waiting 2.52 seconds before fallback handling...
[2026-06-12 06:20:33,838.838 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 06:20:33,840.840 INFO    ] Checking for system updates...
[2026-06-12 06:20:33,862.862 INFO    ] 200
[2026-06-12 06:20:33,863.863 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:20:33,896.896 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 06:20:33,897.897 INFO    ] No update needed
[2026-06-12 06:20:33,899.899 INFO    ] Checking for camera pi updates...
[2026-06-12 06:20:33,918.918 INFO    ] 200
[2026-06-12 06:20:33,919.919 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:20:33,942.942 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 06:20:33,964.964 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 06:20:33,965.965 INFO    ] No camera update needed
[2026-06-12 06:20:33,966.966 INFO    ] Script finished. Safe exiting...
[2026-06-12 06:20:33,968.968 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 06:20:33,971.971 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 06:20:33,974.974 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 06:20:36,012.012 INFO    ] ================================================
[2026-06-12 06:20:36,028.028 INFO    ] Launching Daemon at Fri Jun 12 06:20:36 IST 2026
[2026-06-12 06:20:36,039.039 INFO    ] ================================================
[2026-06-12 06:20:36,441.441 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 06:20:36
[2026-06-12 06:20:36,787.787 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 06:20:36,941.941 INFO    ] Initializing speech engine...
[2026-06-12 06:20:36,945.945 INFO    ] 2026-06-12 06:20:36
[2026-06-12 06:20:37,153.153 INFO    ] 2026-06-12 06:20:37
[2026-06-12 06:20:37,181.181 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 06:20:37,365.365 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 06:20:37,375.375 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 06:20:37,510.510 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 06:20:37,580.580 INFO    ] time= 12/06/2026 06:20:37
[2026-06-12 06:20:37,596.596 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 06:20:37,603.603 INFO    ] Checking for existing commands in stream...
[2026-06-12 06:20:37,669.669 INFO    ] No existing commands found in stream
[2026-06-12 06:20:42,689.689 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 06:20:42,693.693 INFO    ] Waiting 2.37 seconds before fallback handling...
[2026-06-12 06:20:45,436.436 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 06:20:45,437.437 INFO    ] Checking for system updates...
[2026-06-12 06:20:45,460.460 INFO    ] 200
[2026-06-12 06:20:45,461.461 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:20:45,494.494 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 06:20:45,495.495 INFO    ] No update needed
[2026-06-12 06:20:45,497.497 INFO    ] Checking for camera pi updates...
[2026-06-12 06:20:45,517.517 INFO    ] 200
[2026-06-12 06:20:45,519.519 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:20:45,542.542 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 06:20:45,581.581 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 06:20:45,582.582 INFO    ] No camera update needed
[2026-06-12 06:20:45,584.584 INFO    ] Script finished. Safe exiting...
[2026-06-12 06:20:45,585.585 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 06:20:45,588.588 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 06:20:45,591.591 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 06:20:47,628.628 INFO    ] ================================================
[2026-06-12 06:20:47,644.644 INFO    ] Launching Daemon at Fri Jun 12 06:20:47 IST 2026
[2026-06-12 06:20:47,656.656 INFO    ] ================================================
[2026-06-12 06:20:47,982.982 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 06:20:47
[2026-06-12 06:20:48,294.294 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 06:20:48,433.433 INFO    ] Initializing speech engine...
[2026-06-12 06:20:48,442.442 INFO    ] 2026-06-12 06:20:48
[2026-06-12 06:20:48,647.647 INFO    ] 2026-06-12 06:20:48
[2026-06-12 06:20:48,677.677 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 06:20:48,864.864 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 06:20:48,873.873 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 06:20:48,996.996 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 06:20:49,052.052 INFO    ] time= 12/06/2026 06:20:49
[2026-06-12 06:20:49,092.092 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 06:20:49,097.097 INFO    ] Checking for existing commands in stream...
[2026-06-12 06:20:49,193.193 INFO    ] No existing commands found in stream
[2026-06-12 06:20:54,217.217 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 06:20:54,220.220 INFO    ] Waiting 3.44 seconds before fallback handling...
[2026-06-12 06:20:58,027.027 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 06:20:58,029.029 INFO    ] Checking for system updates...
[2026-06-12 06:20:58,050.050 INFO    ] 200
[2026-06-12 06:20:58,051.051 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:20:58,082.082 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 06:20:58,083.083 INFO    ] No update needed
[2026-06-12 06:20:58,084.084 INFO    ] Checking for camera pi updates...
[2026-06-12 06:20:58,106.106 INFO    ] 200
[2026-06-12 06:20:58,107.107 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:20:58,131.131 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 06:20:58,276.276 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 06:20:58,278.278 INFO    ] No camera update needed
[2026-06-12 06:20:58,279.279 INFO    ] Script finished. Safe exiting...
[2026-06-12 06:20:58,280.280 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 06:20:58,283.283 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 06:20:58,286.286 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 06:21:00,328.328 INFO    ] ================================================
[2026-06-12 06:21:00,343.343 INFO    ] Launching Daemon at Fri Jun 12 06:21:00 IST 2026
[2026-06-12 06:21:00,354.354 INFO    ] ================================================
[2026-06-12 06:21:00,687.687 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 06:21:00
[2026-06-12 06:21:00,999.999 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 06:21:01,142.142 INFO    ] Initializing speech engine...
[2026-06-12 06:21:01,147.147 INFO    ] 2026-06-12 06:21:01
[2026-06-12 06:21:01,354.354 INFO    ] 2026-06-12 06:21:01
[2026-06-12 06:21:01,383.383 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 06:21:01,569.569 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 06:21:01,579.579 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 06:21:01,741.741 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 06:21:01,760.760 INFO    ] time= 12/06/2026 06:21:01
[2026-06-12 06:21:01,763.763 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 06:21:01,767.767 INFO    ] Checking for existing commands in stream...
[2026-06-12 06:21:01,840.840 INFO    ] No existing commands found in stream
[2026-06-12 06:21:06,855.855 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 06:21:06,858.858 INFO    ] Waiting 1.91 seconds before fallback handling...
[2026-06-12 06:21:09,126.126 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 06:21:09,131.131 INFO    ] Checking for system updates...
[2026-06-12 06:21:09,153.153 INFO    ] 200
[2026-06-12 06:21:09,155.155 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:21:09,185.185 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 06:21:09,187.187 INFO    ] No update needed
[2026-06-12 06:21:09,188.188 INFO    ] Checking for camera pi updates...
[2026-06-12 06:21:09,208.208 INFO    ] 200
[2026-06-12 06:21:09,209.209 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:21:09,235.235 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 06:21:09,275.275 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 06:21:09,276.276 INFO    ] No camera update needed
[2026-06-12 06:21:09,277.277 INFO    ] Script finished. Safe exiting...
[2026-06-12 06:21:09,279.279 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 06:21:09,282.282 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 06:21:09,285.285 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 06:21:11,324.324 INFO    ] ================================================
[2026-06-12 06:21:11,341.341 INFO    ] Launching Daemon at Fri Jun 12 06:21:11 IST 2026
[2026-06-12 06:21:11,352.352 INFO    ] ================================================
[2026-06-12 06:21:11,716.716 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 06:21:11
[2026-06-12 06:21:12,026.026 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 06:21:12,172.172 INFO    ] Initializing speech engine...
[2026-06-12 06:21:12,179.179 INFO    ] 2026-06-12 06:21:12
[2026-06-12 06:21:12,376.376 INFO    ] 2026-06-12 06:21:12
[2026-06-12 06:21:12,404.404 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 06:21:12,586.586 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 06:21:12,595.595 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 06:21:12,735.735 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 06:21:12,791.791 INFO    ] time= 12/06/2026 06:21:12
[2026-06-12 06:21:12,814.814 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 06:21:12,821.821 INFO    ] Checking for existing commands in stream...
[2026-06-12 06:21:12,887.887 INFO    ] No existing commands found in stream
[2026-06-12 06:21:17,895.895 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 06:21:17,898.898 INFO    ] Waiting 0.15 seconds before fallback handling...
[2026-06-12 06:21:18,409.409 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 06:21:18,410.410 INFO    ] Checking for system updates...
[2026-06-12 06:21:18,432.432 INFO    ] 200
[2026-06-12 06:21:18,434.434 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:21:18,466.466 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 06:21:18,467.467 INFO    ] No update needed
[2026-06-12 06:21:18,468.468 INFO    ] Checking for camera pi updates...
[2026-06-12 06:21:18,487.487 INFO    ] 200
[2026-06-12 06:21:18,489.489 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:21:18,516.516 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 06:21:18,566.566 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 06:21:18,567.567 INFO    ] No camera update needed
[2026-06-12 06:21:18,568.568 INFO    ] Script finished. Safe exiting...
[2026-06-12 06:21:18,570.570 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 06:21:18,573.573 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 06:21:18,575.575 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 06:21:20,614.614 INFO    ] ================================================
[2026-06-12 06:21:20,629.629 INFO    ] Launching Daemon at Fri Jun 12 06:21:20 IST 2026
[2026-06-12 06:21:20,640.640 INFO    ] ================================================
[2026-06-12 06:21:20,966.966 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 06:21:20
[2026-06-12 06:21:21,278.278 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 06:21:21,421.421 INFO    ] Initializing speech engine...
[2026-06-12 06:21:21,426.426 INFO    ] 2026-06-12 06:21:21
[2026-06-12 06:21:21,628.628 INFO    ] 2026-06-12 06:21:21
[2026-06-12 06:21:21,658.658 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 06:21:21,841.841 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 06:21:21,845.845 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 06:21:21,982.982 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 06:21:22,049.049 INFO    ] time= 12/06/2026 06:21:21
[2026-06-12 06:21:22,073.073 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 06:21:22,080.080 INFO    ] Checking for existing commands in stream...
[2026-06-12 06:21:22,170.170 INFO    ] No existing commands found in stream
[2026-06-12 06:21:27,180.180 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 06:21:27,183.183 INFO    ] Waiting 2.53 seconds before fallback handling...
[2026-06-12 06:21:30,085.085 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 06:21:30,086.086 INFO    ] Checking for system updates...
[2026-06-12 06:21:30,119.119 INFO    ] 200
[2026-06-12 06:21:30,121.121 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:21:30,155.155 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 06:21:30,157.157 INFO    ] No update needed
[2026-06-12 06:21:30,158.158 INFO    ] Checking for camera pi updates...
[2026-06-12 06:21:30,180.180 INFO    ] 200
[2026-06-12 06:21:30,182.182 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:21:30,208.208 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 06:21:30,244.244 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 06:21:30,246.246 INFO    ] No camera update needed
[2026-06-12 06:21:30,247.247 INFO    ] Script finished. Safe exiting...
[2026-06-12 06:21:30,249.249 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 06:21:30,253.253 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 06:21:30,256.256 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 06:21:32,282.282 INFO    ] ================================================
[2026-06-12 06:21:32,295.295 INFO    ] Launching Daemon at Fri Jun 12 06:21:32 IST 2026
[2026-06-12 06:21:32,303.303 INFO    ] ================================================
[2026-06-12 06:21:32,690.690 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 06:21:32
[2026-06-12 06:21:33,045.045 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 06:21:33,216.216 INFO    ] Initializing speech engine...
[2026-06-12 06:21:33,223.223 INFO    ] 2026-06-12 06:21:33
[2026-06-12 06:21:33,439.439 INFO    ] 2026-06-12 06:21:33
[2026-06-12 06:21:33,469.469 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 06:21:33,593.593 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 06:21:33,657.657 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 06:21:33,793.793 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 06:21:33,851.851 INFO    ] time= 12/06/2026 06:21:33
[2026-06-12 06:21:33,881.881 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 06:21:33,892.892 INFO    ] Checking for existing commands in stream...
[2026-06-12 06:21:33,963.963 INFO    ] No existing commands found in stream
[2026-06-12 06:21:38,973.973 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 06:21:38,976.976 INFO    ] Waiting 3.18 seconds before fallback handling...
[2026-06-12 06:21:42,529.529 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 06:21:42,530.530 INFO    ] Checking for system updates...
[2026-06-12 06:21:42,553.553 INFO    ] 200
[2026-06-12 06:21:42,554.554 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:21:42,587.587 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 06:21:42,589.589 INFO    ] No update needed
[2026-06-12 06:21:42,590.590 INFO    ] Checking for camera pi updates...
[2026-06-12 06:21:42,610.610 INFO    ] 200
[2026-06-12 06:21:42,612.612 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:21:42,635.635 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 06:21:42,673.673 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 06:21:42,674.674 INFO    ] No camera update needed
[2026-06-12 06:21:42,675.675 INFO    ] Script finished. Safe exiting...
[2026-06-12 06:21:42,677.677 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 06:21:42,680.680 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 06:21:42,683.683 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 06:21:44,723.723 INFO    ] ================================================
[2026-06-12 06:21:44,738.738 INFO    ] Launching Daemon at Fri Jun 12 06:21:44 IST 2026
[2026-06-12 06:21:44,749.749 INFO    ] ================================================
[2026-06-12 06:21:45,075.075 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 06:21:45
[2026-06-12 06:21:45,386.386 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 06:21:45,528.528 INFO    ] Initializing speech engine...
[2026-06-12 06:21:45,534.534 INFO    ] 2026-06-12 06:21:45
[2026-06-12 06:21:45,736.736 INFO    ] 2026-06-12 06:21:45
[2026-06-12 06:21:45,765.765 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 06:21:45,947.947 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 06:21:45,957.957 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 06:21:46,086.086 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 06:21:46,145.145 INFO    ] time= 12/06/2026 06:21:46
[2026-06-12 06:21:46,177.177 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 06:21:46,183.183 INFO    ] Checking for existing commands in stream...
[2026-06-12 06:21:46,250.250 INFO    ] No existing commands found in stream
[2026-06-12 06:21:51,259.259 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 06:21:51,262.262 INFO    ] Waiting 1.64 seconds before fallback handling...
[2026-06-12 06:21:53,258.258 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 06:21:53,260.260 INFO    ] Checking for system updates...
[2026-06-12 06:21:53,280.280 INFO    ] 200
[2026-06-12 06:21:53,282.282 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:21:53,321.321 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 06:21:53,323.323 INFO    ] No update needed
[2026-06-12 06:21:53,324.324 INFO    ] Checking for camera pi updates...
[2026-06-12 06:21:53,343.343 INFO    ] 200
[2026-06-12 06:21:53,344.344 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:21:53,372.372 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 06:21:53,418.418 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 06:21:53,420.420 INFO    ] No camera update needed
[2026-06-12 06:21:53,421.421 INFO    ] Script finished. Safe exiting...
[2026-06-12 06:21:53,423.423 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 06:21:53,426.426 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 06:21:53,429.429 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 06:21:55,469.469 INFO    ] ================================================
[2026-06-12 06:21:55,484.484 INFO    ] Launching Daemon at Fri Jun 12 06:21:55 IST 2026
[2026-06-12 06:21:55,495.495 INFO    ] ================================================
[2026-06-12 06:21:55,895.895 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 06:21:55
[2026-06-12 06:21:56,239.239 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 06:21:56,392.392 INFO    ] Initializing speech engine...
[2026-06-12 06:21:56,398.398 INFO    ] 2026-06-12 06:21:56
[2026-06-12 06:21:56,612.612 INFO    ] 2026-06-12 06:21:56
[2026-06-12 06:21:56,642.642 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 06:21:56,829.829 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 06:21:56,833.833 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 06:21:56,974.974 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 06:21:57,044.044 INFO    ] time= 12/06/2026 06:21:56
[2026-06-12 06:21:57,067.067 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 06:21:57,074.074 INFO    ] Checking for existing commands in stream...
[2026-06-12 06:21:57,141.141 INFO    ] No existing commands found in stream
[2026-06-12 06:22:02,151.151 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 06:22:02,153.153 INFO    ] Waiting 3.39 seconds before fallback handling...
[2026-06-12 06:22:05,908.908 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 06:22:05,909.909 INFO    ] Checking for system updates...
[2026-06-12 06:22:05,931.931 INFO    ] 200
[2026-06-12 06:22:05,932.932 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:22:05,965.965 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 06:22:05,966.966 INFO    ] No update needed
[2026-06-12 06:22:05,967.967 INFO    ] Checking for camera pi updates...
[2026-06-12 06:22:05,989.989 INFO    ] 200
[2026-06-12 06:22:05,990.990 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:22:06,013.013 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 06:22:06,061.061 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 06:22:06,063.063 INFO    ] No camera update needed
[2026-06-12 06:22:06,065.065 INFO    ] Script finished. Safe exiting...
[2026-06-12 06:22:06,067.067 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 06:22:06,071.071 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 06:22:06,077.077 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 06:22:08,116.116 INFO    ] ================================================
[2026-06-12 06:22:08,131.131 INFO    ] Launching Daemon at Fri Jun 12 06:22:08 IST 2026
[2026-06-12 06:22:08,142.142 INFO    ] ================================================
[2026-06-12 06:22:08,468.468 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 06:22:08
[2026-06-12 06:22:08,777.777 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 06:22:08,915.915 INFO    ] Initializing speech engine...
[2026-06-12 06:22:08,925.925 INFO    ] 2026-06-12 06:22:08
[2026-06-12 06:22:09,133.133 INFO    ] 2026-06-12 06:22:09
[2026-06-12 06:22:09,162.162 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 06:22:09,346.346 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 06:22:09,357.357 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 06:22:09,535.535 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 06:22:09,569.569 INFO    ] time= 12/06/2026 06:22:09
[2026-06-12 06:22:09,575.575 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 06:22:09,580.580 INFO    ] Checking for existing commands in stream...
[2026-06-12 06:22:09,647.647 INFO    ] No existing commands found in stream
[2026-06-12 06:22:14,655.655 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 06:22:14,657.657 INFO    ] Waiting 0.93 seconds before fallback handling...
[2026-06-12 06:22:15,999.999 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 06:22:16,000.000 INFO    ] Checking for system updates...
[2026-06-12 06:22:16,023.023 INFO    ] 200
[2026-06-12 06:22:16,025.025 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:22:16,060.060 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 06:22:16,062.062 INFO    ] No update needed
[2026-06-12 06:22:16,063.063 INFO    ] Checking for camera pi updates...
[2026-06-12 06:22:16,085.085 INFO    ] 200
[2026-06-12 06:22:16,087.087 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:22:16,116.116 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 06:22:16,164.164 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 06:22:16,166.166 INFO    ] No camera update needed
[2026-06-12 06:22:16,167.167 INFO    ] Script finished. Safe exiting...
[2026-06-12 06:22:16,168.168 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 06:22:16,172.172 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 06:22:16,175.175 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 06:22:18,212.212 INFO    ] ================================================
[2026-06-12 06:22:18,227.227 INFO    ] Launching Daemon at Fri Jun 12 06:22:18 IST 2026
[2026-06-12 06:22:18,238.238 INFO    ] ================================================
[2026-06-12 06:22:18,582.582 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 06:22:18
[2026-06-12 06:22:18,894.894 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 06:22:19,026.026 INFO    ] Initializing speech engine...
[2026-06-12 06:22:19,034.034 INFO    ] 2026-06-12 06:22:19
[2026-06-12 06:22:19,247.247 INFO    ] 2026-06-12 06:22:19
[2026-06-12 06:22:19,276.276 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 06:22:19,463.463 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 06:22:19,472.472 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 06:22:19,600.600 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 06:22:19,657.657 INFO    ] time= 12/06/2026 06:22:19
[2026-06-12 06:22:19,693.693 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 06:22:19,698.698 INFO    ] Checking for existing commands in stream...
[2026-06-12 06:22:19,770.770 INFO    ] No existing commands found in stream
[2026-06-12 06:22:24,779.779 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 06:22:24,782.782 INFO    ] Waiting 3.34 seconds before fallback handling...
[2026-06-12 06:22:28,511.511 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 06:22:28,512.512 INFO    ] Checking for system updates...
[2026-06-12 06:22:28,534.534 INFO    ] 200
[2026-06-12 06:22:28,535.535 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:22:28,567.567 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 06:22:28,569.569 INFO    ] No update needed
[2026-06-12 06:22:28,570.570 INFO    ] Checking for camera pi updates...
[2026-06-12 06:22:28,589.589 INFO    ] 200
[2026-06-12 06:22:28,591.591 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:22:28,615.615 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 06:22:28,655.655 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 06:22:28,656.656 INFO    ] No camera update needed
[2026-06-12 06:22:28,658.658 INFO    ] Script finished. Safe exiting...
[2026-06-12 06:22:28,659.659 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 06:22:28,662.662 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 06:22:28,665.665 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 06:22:30,702.702 INFO    ] ================================================
[2026-06-12 06:22:30,717.717 INFO    ] Launching Daemon at Fri Jun 12 06:22:30 IST 2026
[2026-06-12 06:22:30,728.728 INFO    ] ================================================
[2026-06-12 06:22:31,052.052 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 06:22:31
[2026-06-12 06:22:31,363.363 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 06:22:31,494.494 INFO    ] Initializing speech engine...
[2026-06-12 06:22:31,502.502 INFO    ] 2026-06-12 06:22:31
[2026-06-12 06:22:31,717.717 INFO    ] 2026-06-12 06:22:31
[2026-06-12 06:22:31,750.750 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 06:22:31,889.889 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 06:22:31,938.938 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 06:22:32,080.080 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 06:22:32,155.155 INFO    ] time= 12/06/2026 06:22:32
[2026-06-12 06:22:32,188.188 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 06:22:32,195.195 INFO    ] Checking for existing commands in stream...
[2026-06-12 06:22:32,265.265 INFO    ] No existing commands found in stream
[2026-06-12 06:22:37,275.275 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 06:22:37,278.278 INFO    ] Waiting 0.50 seconds before fallback handling...
[2026-06-12 06:22:38,137.137 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 06:22:38,138.138 INFO    ] Checking for system updates...
[2026-06-12 06:22:38,160.160 INFO    ] 200
[2026-06-12 06:22:38,162.162 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:22:38,192.192 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 06:22:38,193.193 INFO    ] No update needed
[2026-06-12 06:22:38,195.195 INFO    ] Checking for camera pi updates...
[2026-06-12 06:22:38,214.214 INFO    ] 200
[2026-06-12 06:22:38,215.215 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:22:38,240.240 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 06:22:38,277.277 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 06:22:38,278.278 INFO    ] No camera update needed
[2026-06-12 06:22:38,280.280 INFO    ] Script finished. Safe exiting...
[2026-06-12 06:22:38,281.281 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 06:22:38,284.284 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 06:22:38,287.287 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 06:22:40,326.326 INFO    ] ================================================
[2026-06-12 06:22:40,341.341 INFO    ] Launching Daemon at Fri Jun 12 06:22:40 IST 2026
[2026-06-12 06:22:40,352.352 INFO    ] ================================================
[2026-06-12 06:22:40,746.746 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 06:22:40
[2026-06-12 06:22:41,061.061 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 06:22:41,198.198 INFO    ] Initializing speech engine...
[2026-06-12 06:22:41,208.208 INFO    ] 2026-06-12 06:22:41
[2026-06-12 06:22:41,412.412 INFO    ] 2026-06-12 06:22:41
[2026-06-12 06:22:41,440.440 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 06:22:41,767.767 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 06:22:41,768.768 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 06:22:41,927.927 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 06:22:41,931.931 INFO    ] time= 12/06/2026 06:22:41
[2026-06-12 06:22:41,958.958 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 06:22:41,960.960 INFO    ] Checking for existing commands in stream...
[2026-06-12 06:22:42,063.063 INFO    ] No existing commands found in stream
[2026-06-12 06:22:47,073.073 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 06:22:47,076.076 INFO    ] Waiting 3.98 seconds before fallback handling...
[2026-06-12 06:22:51,443.443 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 06:22:51,444.444 INFO    ] Checking for system updates...
[2026-06-12 06:22:51,465.465 INFO    ] 200
[2026-06-12 06:22:51,467.467 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:22:51,497.497 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 06:22:51,499.499 INFO    ] No update needed
[2026-06-12 06:22:51,500.500 INFO    ] Checking for camera pi updates...
[2026-06-12 06:22:51,521.521 INFO    ] 200
[2026-06-12 06:22:51,523.523 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:22:51,546.546 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 06:22:51,586.586 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 06:22:51,588.588 INFO    ] No camera update needed
[2026-06-12 06:22:51,589.589 INFO    ] Script finished. Safe exiting...
[2026-06-12 06:22:51,590.590 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 06:22:51,593.593 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 06:22:51,596.596 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 06:22:53,634.634 INFO    ] ================================================
[2026-06-12 06:22:53,649.649 INFO    ] Launching Daemon at Fri Jun 12 06:22:53 IST 2026
[2026-06-12 06:22:53,659.659 INFO    ] ================================================
[2026-06-12 06:22:53,999.999 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 06:22:53
[2026-06-12 06:22:54,310.310 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 06:22:54,440.440 INFO    ] Initializing speech engine...
[2026-06-12 06:22:54,445.445 INFO    ] 2026-06-12 06:22:54
[2026-06-12 06:22:54,664.664 INFO    ] 2026-06-12 06:22:54
[2026-06-12 06:22:54,693.693 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 06:22:54,877.877 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 06:22:54,880.880 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 06:22:55,010.010 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 06:22:55,076.076 INFO    ] time= 12/06/2026 06:22:55
[2026-06-12 06:22:55,109.109 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 06:22:55,115.115 INFO    ] Checking for existing commands in stream...
[2026-06-12 06:22:55,181.181 INFO    ] No existing commands found in stream
[2026-06-12 06:23:00,191.191 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 06:23:00,194.194 INFO    ] Waiting 3.32 seconds before fallback handling...
[2026-06-12 06:23:03,888.888 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 06:23:03,891.891 INFO    ] Checking for system updates...
[2026-06-12 06:23:03,933.933 INFO    ] 200
[2026-06-12 06:23:03,935.935 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:23:03,988.988 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 06:23:03,990.990 INFO    ] No update needed
[2026-06-12 06:23:03,993.993 INFO    ] Checking for camera pi updates...
[2026-06-12 06:23:04,030.030 INFO    ] 200
[2026-06-12 06:23:04,033.033 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:23:04,078.078 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 06:23:04,124.124 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 06:23:04,126.126 INFO    ] No camera update needed
[2026-06-12 06:23:04,128.128 INFO    ] Script finished. Safe exiting...
[2026-06-12 06:23:04,131.131 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 06:23:04,136.136 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 06:23:04,141.141 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 06:23:06,181.181 INFO    ] ================================================
[2026-06-12 06:23:06,197.197 INFO    ] Launching Daemon at Fri Jun 12 06:23:06 IST 2026
[2026-06-12 06:23:06,208.208 INFO    ] ================================================
[2026-06-12 06:23:06,557.557 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 06:23:06
[2026-06-12 06:23:06,906.906 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 06:23:07,065.065 INFO    ] Initializing speech engine...
[2026-06-12 06:23:07,072.072 INFO    ] 2026-06-12 06:23:07
[2026-06-12 06:23:07,274.274 INFO    ] 2026-06-12 06:23:07
[2026-06-12 06:23:07,304.304 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 06:23:07,594.594 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 06:23:07,632.632 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 06:23:07,788.788 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 06:23:07,791.791 INFO    ] time= 12/06/2026 06:23:07
[2026-06-12 06:23:07,817.817 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 06:23:07,819.819 INFO    ] Checking for existing commands in stream...
[2026-06-12 06:23:07,918.918 INFO    ] No existing commands found in stream
[2026-06-12 06:23:12,929.929 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 06:23:12,932.932 INFO    ] Waiting 0.21 seconds before fallback handling...
[2026-06-12 06:23:13,531.531 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 06:23:13,533.533 INFO    ] Checking for system updates...
[2026-06-12 06:23:13,554.554 INFO    ] 200
[2026-06-12 06:23:13,555.555 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:23:13,586.586 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 06:23:13,588.588 INFO    ] No update needed
[2026-06-12 06:23:13,589.589 INFO    ] Checking for camera pi updates...
[2026-06-12 06:23:13,611.611 INFO    ] 200
[2026-06-12 06:23:13,612.612 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:23:13,636.636 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 06:23:13,682.682 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 06:23:13,683.683 INFO    ] No camera update needed
[2026-06-12 06:23:13,685.685 INFO    ] Script finished. Safe exiting...
[2026-06-12 06:23:13,686.686 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 06:23:13,689.689 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 06:23:13,692.692 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 06:23:15,731.731 INFO    ] ================================================
[2026-06-12 06:23:15,746.746 INFO    ] Launching Daemon at Fri Jun 12 06:23:15 IST 2026
[2026-06-12 06:23:15,757.757 INFO    ] ================================================
[2026-06-12 06:23:16,093.093 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 06:23:16
[2026-06-12 06:23:16,404.404 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 06:23:16,534.534 INFO    ] Initializing speech engine...
[2026-06-12 06:23:16,537.537 INFO    ] 2026-06-12 06:23:16
[2026-06-12 06:23:16,752.752 INFO    ] 2026-06-12 06:23:16
[2026-06-12 06:23:16,781.781 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 06:23:16,965.965 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 06:23:16,973.973 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 06:23:17,095.095 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 06:23:17,150.150 INFO    ] time= 12/06/2026 06:23:17
[2026-06-12 06:23:17,188.188 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 06:23:17,194.194 INFO    ] Checking for existing commands in stream...
[2026-06-12 06:23:17,264.264 INFO    ] No existing commands found in stream
[2026-06-12 06:23:22,283.283 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 06:23:22,286.286 INFO    ] Waiting 3.73 seconds before fallback handling...
[2026-06-12 06:23:26,391.391 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 06:23:26,392.392 INFO    ] Checking for system updates...
[2026-06-12 06:23:26,413.413 INFO    ] 200
[2026-06-12 06:23:26,414.414 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:23:26,447.447 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 06:23:26,448.448 INFO    ] No update needed
[2026-06-12 06:23:26,449.449 INFO    ] Checking for camera pi updates...
[2026-06-12 06:23:26,469.469 INFO    ] 200
[2026-06-12 06:23:26,471.471 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:23:26,496.496 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 06:23:26,541.541 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 06:23:26,542.542 INFO    ] No camera update needed
[2026-06-12 06:23:26,544.544 INFO    ] Script finished. Safe exiting...
[2026-06-12 06:23:26,545.545 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 06:23:26,548.548 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 06:23:26,551.551 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 06:23:28,589.589 INFO    ] ================================================
[2026-06-12 06:23:28,604.604 INFO    ] Launching Daemon at Fri Jun 12 06:23:28 IST 2026
[2026-06-12 06:23:28,615.615 INFO    ] ================================================
[2026-06-12 06:23:28,980.980 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 06:23:28
[2026-06-12 06:23:29,292.292 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 06:23:29,423.423 INFO    ] Initializing speech engine...
[2026-06-12 06:23:29,431.431 INFO    ] 2026-06-12 06:23:29
[2026-06-12 06:23:29,645.645 INFO    ] 2026-06-12 06:23:29
[2026-06-12 06:23:29,674.674 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 06:23:29,861.861 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 06:23:29,871.871 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 06:23:30,002.002 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 06:23:30,066.066 INFO    ] time= 12/06/2026 06:23:30
[2026-06-12 06:23:30,094.094 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 06:23:30,101.101 INFO    ] Checking for existing commands in stream...
[2026-06-12 06:23:30,192.192 INFO    ] No existing commands found in stream
[2026-06-12 06:23:35,201.201 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 06:23:35,204.204 INFO    ] Waiting 1.58 seconds before fallback handling...
[2026-06-12 06:23:37,160.160 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 06:23:37,162.162 INFO    ] Checking for system updates...
[2026-06-12 06:23:37,183.183 INFO    ] 200
[2026-06-12 06:23:37,184.184 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:23:37,217.217 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 06:23:37,218.218 INFO    ] No update needed
[2026-06-12 06:23:37,219.219 INFO    ] Checking for camera pi updates...
[2026-06-12 06:23:37,239.239 INFO    ] 200
[2026-06-12 06:23:37,240.240 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:23:37,265.265 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 06:23:37,311.311 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 06:23:37,313.313 INFO    ] No camera update needed
[2026-06-12 06:23:37,314.314 INFO    ] Script finished. Safe exiting...
[2026-06-12 06:23:37,315.315 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 06:23:37,318.318 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 06:23:37,321.321 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 06:23:39,364.364 INFO    ] ================================================
[2026-06-12 06:23:39,379.379 INFO    ] Launching Daemon at Fri Jun 12 06:23:39 IST 2026
[2026-06-12 06:23:39,390.390 INFO    ] ================================================
[2026-06-12 06:23:39,720.720 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 06:23:39
[2026-06-12 06:23:40,031.031 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 06:23:40,160.160 INFO    ] Initializing speech engine...
[2026-06-12 06:23:40,164.164 INFO    ] 2026-06-12 06:23:40
[2026-06-12 06:23:40,384.384 INFO    ] 2026-06-12 06:23:40
[2026-06-12 06:23:40,413.413 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 06:23:40,597.597 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 06:23:40,607.607 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 06:23:40,735.735 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 06:23:40,802.802 INFO    ] time= 12/06/2026 06:23:40
[2026-06-12 06:23:40,831.831 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 06:23:40,832.832 INFO    ] Checking for existing commands in stream...
[2026-06-12 06:23:40,904.904 INFO    ] No existing commands found in stream
[2026-06-12 06:23:45,918.918 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 06:23:45,921.921 INFO    ] Waiting 3.92 seconds before fallback handling...
[2026-06-12 06:23:50,240.240 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 06:23:50,242.242 INFO    ] Checking for system updates...
[2026-06-12 06:23:50,265.265 INFO    ] 200
[2026-06-12 06:23:50,267.267 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:23:50,300.300 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 06:23:50,301.301 INFO    ] No update needed
[2026-06-12 06:23:50,303.303 INFO    ] Checking for camera pi updates...
[2026-06-12 06:23:50,323.323 INFO    ] 200
[2026-06-12 06:23:50,324.324 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:23:50,349.349 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 06:23:50,385.385 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 06:23:50,386.386 INFO    ] No camera update needed
[2026-06-12 06:23:50,388.388 INFO    ] Script finished. Safe exiting...
[2026-06-12 06:23:50,389.389 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 06:23:50,393.393 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 06:23:50,396.396 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 06:23:52,434.434 INFO    ] ================================================
[2026-06-12 06:23:52,449.449 INFO    ] Launching Daemon at Fri Jun 12 06:23:52 IST 2026
[2026-06-12 06:23:52,460.460 INFO    ] ================================================
[2026-06-12 06:23:52,816.816 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 06:23:52
[2026-06-12 06:23:53,130.130 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 06:23:53,268.268 INFO    ] Initializing speech engine...
[2026-06-12 06:23:53,278.278 INFO    ] 2026-06-12 06:23:53
[2026-06-12 06:23:53,481.481 INFO    ] 2026-06-12 06:23:53
[2026-06-12 06:23:53,509.509 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 06:23:53,693.693 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 06:23:53,703.703 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 06:23:53,848.848 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 06:23:53,902.902 INFO    ] time= 12/06/2026 06:23:53
[2026-06-12 06:23:53,923.923 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 06:23:53,930.930 INFO    ] Checking for existing commands in stream...
[2026-06-12 06:23:53,996.996 INFO    ] No existing commands found in stream
[2026-06-12 06:23:59,005.005 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 06:23:59,008.008 INFO    ] Waiting 1.86 seconds before fallback handling...
[2026-06-12 06:24:01,958.958 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 06:24:01,959.959 INFO    ] Checking for system updates...
[2026-06-12 06:24:01,991.991 INFO    ] 200
[2026-06-12 06:24:01,993.993 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:24:02,043.043 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 06:24:02,045.045 INFO    ] No update needed
[2026-06-12 06:24:02,048.048 INFO    ] Checking for camera pi updates...
[2026-06-12 06:24:02,083.083 INFO    ] 200
[2026-06-12 06:24:02,085.085 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:24:02,119.119 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 06:24:02,157.157 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 06:24:02,159.159 INFO    ] No camera update needed
[2026-06-12 06:24:02,160.160 INFO    ] Script finished. Safe exiting...
[2026-06-12 06:24:02,162.162 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 06:24:02,165.165 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 06:24:02,168.168 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 06:24:04,208.208 INFO    ] ================================================
[2026-06-12 06:24:04,223.223 INFO    ] Launching Daemon at Fri Jun 12 06:24:04 IST 2026
[2026-06-12 06:24:04,234.234 INFO    ] ================================================
[2026-06-12 06:24:04,587.587 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 06:24:04
[2026-06-12 06:24:04,907.907 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 06:24:05,051.051 INFO    ] Initializing speech engine...
[2026-06-12 06:24:05,059.059 INFO    ] 2026-06-12 06:24:05
[2026-06-12 06:24:05,279.279 INFO    ] 2026-06-12 06:24:05
[2026-06-12 06:24:05,311.311 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 06:24:05,455.455 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 06:24:05,513.513 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 06:24:05,664.664 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 06:24:05,728.728 INFO    ] time= 12/06/2026 06:24:05
[2026-06-12 06:24:05,758.758 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 06:24:05,765.765 INFO    ] Checking for existing commands in stream...
[2026-06-12 06:24:05,833.833 INFO    ] No existing commands found in stream
[2026-06-12 06:24:10,848.848 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 06:24:10,851.851 INFO    ] Waiting 1.19 seconds before fallback handling...
[2026-06-12 06:24:12,425.425 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 06:24:12,426.426 INFO    ] Checking for system updates...
[2026-06-12 06:24:12,447.447 INFO    ] 200
[2026-06-12 06:24:12,449.449 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:24:12,481.481 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 06:24:12,483.483 INFO    ] No update needed
[2026-06-12 06:24:12,484.484 INFO    ] Checking for camera pi updates...
[2026-06-12 06:24:12,504.504 INFO    ] 200
[2026-06-12 06:24:12,505.505 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:24:12,529.529 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 06:24:12,582.582 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 06:24:12,583.583 INFO    ] No camera update needed
[2026-06-12 06:24:12,585.585 INFO    ] Script finished. Safe exiting...
[2026-06-12 06:24:12,586.586 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 06:24:12,589.589 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 06:24:12,592.592 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 06:24:14,631.631 INFO    ] ================================================
[2026-06-12 06:24:14,646.646 INFO    ] Launching Daemon at Fri Jun 12 06:24:14 IST 2026
[2026-06-12 06:24:14,657.657 INFO    ] ================================================
[2026-06-12 06:24:14,985.985 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 06:24:14
[2026-06-12 06:24:15,296.296 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 06:24:15,439.439 INFO    ] Initializing speech engine...
[2026-06-12 06:24:15,444.444 INFO    ] 2026-06-12 06:24:15
[2026-06-12 06:24:15,649.649 INFO    ] 2026-06-12 06:24:15
[2026-06-12 06:24:15,678.678 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 06:24:15,866.866 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 06:24:15,874.874 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 06:24:16,005.005 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 06:24:16,064.064 INFO    ] time= 12/06/2026 06:24:16
[2026-06-12 06:24:16,094.094 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 06:24:16,099.099 INFO    ] Checking for existing commands in stream...
[2026-06-12 06:24:16,170.170 INFO    ] No existing commands found in stream
[2026-06-12 06:24:21,181.181 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 06:24:21,183.183 INFO    ] Waiting 0.66 seconds before fallback handling...
[2026-06-12 06:24:22,199.199 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 06:24:22,201.201 INFO    ] Checking for system updates...
[2026-06-12 06:24:22,223.223 INFO    ] 200
[2026-06-12 06:24:22,224.224 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:24:22,256.256 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 06:24:22,258.258 INFO    ] No update needed
[2026-06-12 06:24:22,259.259 INFO    ] Checking for camera pi updates...
[2026-06-12 06:24:22,279.279 INFO    ] 200
[2026-06-12 06:24:22,281.281 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:24:22,306.306 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 06:24:22,355.355 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 06:24:22,357.357 INFO    ] No camera update needed
[2026-06-12 06:24:22,358.358 INFO    ] Script finished. Safe exiting...
[2026-06-12 06:24:22,359.359 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 06:24:22,362.362 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 06:24:22,365.365 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 06:24:24,405.405 INFO    ] ================================================
[2026-06-12 06:24:24,420.420 INFO    ] Launching Daemon at Fri Jun 12 06:24:24 IST 2026
[2026-06-12 06:24:24,431.431 INFO    ] ================================================
[2026-06-12 06:24:24,788.788 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 06:24:24
[2026-06-12 06:24:25,106.106 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 06:24:25,251.251 INFO    ] Initializing speech engine...
[2026-06-12 06:24:25,257.257 INFO    ] 2026-06-12 06:24:25
[2026-06-12 06:24:25,460.460 INFO    ] 2026-06-12 06:24:25
[2026-06-12 06:24:25,489.489 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 06:24:25,674.674 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 06:24:25,677.677 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 06:24:25,807.807 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 06:24:25,867.867 INFO    ] time= 12/06/2026 06:24:25
[2026-06-12 06:24:25,897.897 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 06:24:25,907.907 INFO    ] Checking for existing commands in stream...
[2026-06-12 06:24:25,978.978 INFO    ] No existing commands found in stream
[2026-06-12 06:24:30,988.988 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 06:24:30,991.991 INFO    ] Waiting 3.60 seconds before fallback handling...
[2026-06-12 06:24:34,969.969 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 06:24:34,971.971 INFO    ] Checking for system updates...
[2026-06-12 06:24:34,992.992 INFO    ] 200
[2026-06-12 06:24:34,993.993 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:24:35,026.026 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 06:24:35,027.027 INFO    ] No update needed
[2026-06-12 06:24:35,028.028 INFO    ] Checking for camera pi updates...
[2026-06-12 06:24:35,049.049 INFO    ] 200
[2026-06-12 06:24:35,050.050 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:24:35,074.074 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 06:24:35,117.117 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 06:24:35,118.118 INFO    ] No camera update needed
[2026-06-12 06:24:35,119.119 INFO    ] Script finished. Safe exiting...
[2026-06-12 06:24:35,121.121 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 06:24:35,124.124 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 06:24:35,127.127 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 06:24:37,167.167 INFO    ] ================================================
[2026-06-12 06:24:37,182.182 INFO    ] Launching Daemon at Fri Jun 12 06:24:37 IST 2026
[2026-06-12 06:24:37,193.193 INFO    ] ================================================
[2026-06-12 06:24:37,555.555 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 06:24:37
[2026-06-12 06:24:37,892.892 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 06:24:38,038.038 INFO    ] Initializing speech engine...
[2026-06-12 06:24:38,050.050 INFO    ] 2026-06-12 06:24:38
[2026-06-12 06:24:38,257.257 INFO    ] 2026-06-12 06:24:38
[2026-06-12 06:24:38,287.287 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 06:24:38,473.473 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 06:24:38,477.477 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 06:24:38,620.620 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 06:24:38,682.682 INFO    ] time= 12/06/2026 06:24:38
[2026-06-12 06:24:38,706.706 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 06:24:38,713.713 INFO    ] Checking for existing commands in stream...
[2026-06-12 06:24:38,780.780 INFO    ] No existing commands found in stream
[2026-06-12 06:24:43,805.805 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 06:24:43,808.808 INFO    ] Waiting 3.53 seconds before fallback handling...
[2026-06-12 06:24:47,720.720 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 06:24:47,722.722 INFO    ] Checking for system updates...
[2026-06-12 06:24:47,743.743 INFO    ] 200
[2026-06-12 06:24:47,744.744 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:24:47,775.775 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 06:24:47,776.776 INFO    ] No update needed
[2026-06-12 06:24:47,778.778 INFO    ] Checking for camera pi updates...
[2026-06-12 06:24:47,797.797 INFO    ] 200
[2026-06-12 06:24:47,799.799 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:24:47,823.823 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 06:24:47,870.870 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 06:24:47,871.871 INFO    ] No camera update needed
[2026-06-12 06:24:47,873.873 INFO    ] Script finished. Safe exiting...
[2026-06-12 06:24:47,874.874 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 06:24:47,877.877 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 06:24:47,880.880 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 06:24:49,919.919 INFO    ] ================================================
[2026-06-12 06:24:49,934.934 INFO    ] Launching Daemon at Fri Jun 12 06:24:49 IST 2026
[2026-06-12 06:24:49,945.945 INFO    ] ================================================
[2026-06-12 06:24:50,289.289 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 06:24:50
[2026-06-12 06:24:50,600.600 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 06:24:50,729.729 INFO    ] Initializing speech engine...
[2026-06-12 06:24:50,733.733 INFO    ] 2026-06-12 06:24:50
[2026-06-12 06:24:50,953.953 INFO    ] 2026-06-12 06:24:50
[2026-06-12 06:24:50,981.981 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 06:24:51,166.166 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 06:24:51,176.176 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 06:24:51,308.308 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 06:24:51,371.371 INFO    ] time= 12/06/2026 06:24:51
[2026-06-12 06:24:51,398.398 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 06:24:51,405.405 INFO    ] Checking for existing commands in stream...
[2026-06-12 06:24:51,471.471 INFO    ] No existing commands found in stream
[2026-06-12 06:24:56,481.481 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 06:24:56,484.484 INFO    ] Waiting 0.63 seconds before fallback handling...
[2026-06-12 06:24:57,548.548 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 06:24:57,551.551 INFO    ] Checking for system updates...
[2026-06-12 06:24:57,591.591 INFO    ] 200
[2026-06-12 06:24:57,593.593 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:24:57,654.654 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 06:24:57,656.656 INFO    ] No update needed
[2026-06-12 06:24:57,658.658 INFO    ] Checking for camera pi updates...
[2026-06-12 06:24:57,687.687 INFO    ] 200
[2026-06-12 06:24:57,688.688 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:24:57,713.713 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 06:24:57,749.749 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 06:24:57,751.751 INFO    ] No camera update needed
[2026-06-12 06:24:57,752.752 INFO    ] Script finished. Safe exiting...
[2026-06-12 06:24:57,753.753 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 06:24:57,756.756 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 06:24:57,759.759 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 06:24:59,800.800 INFO    ] ================================================
[2026-06-12 06:24:59,815.815 INFO    ] Launching Daemon at Fri Jun 12 06:24:59 IST 2026
[2026-06-12 06:24:59,826.826 INFO    ] ================================================
[2026-06-12 06:25:00,218.218 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 06:25:00
[2026-06-12 06:25:00,554.554 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 06:25:00,700.700 INFO    ] Initializing speech engine...
[2026-06-12 06:25:00,710.710 INFO    ] 2026-06-12 06:25:00
[2026-06-12 06:25:00,920.920 INFO    ] 2026-06-12 06:25:00
[2026-06-12 06:25:00,949.949 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 06:25:01,134.134 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 06:25:01,143.143 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 06:25:01,283.283 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 06:25:01,341.341 INFO    ] time= 12/06/2026 06:25:01
[2026-06-12 06:25:01,364.364 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 06:25:01,371.371 INFO    ] Checking for existing commands in stream...
[2026-06-12 06:25:01,442.442 INFO    ] No existing commands found in stream
[2026-06-12 06:25:06,460.460 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 06:25:06,464.464 INFO    ] Waiting 2.32 seconds before fallback handling...
[2026-06-12 06:25:09,141.141 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 06:25:09,143.143 INFO    ] Checking for system updates...
[2026-06-12 06:25:09,164.164 INFO    ] 200
[2026-06-12 06:25:09,165.165 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:25:09,195.195 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 06:25:09,197.197 INFO    ] No update needed
[2026-06-12 06:25:09,198.198 INFO    ] Checking for camera pi updates...
[2026-06-12 06:25:09,217.217 INFO    ] 200
[2026-06-12 06:25:09,219.219 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:25:09,242.242 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 06:25:09,380.380 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 06:25:09,382.382 INFO    ] No camera update needed
[2026-06-12 06:25:09,383.383 INFO    ] Script finished. Safe exiting...
[2026-06-12 06:25:09,384.384 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 06:25:09,387.387 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 06:25:09,390.390 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 06:25:11,429.429 INFO    ] ================================================
[2026-06-12 06:25:11,444.444 INFO    ] Launching Daemon at Fri Jun 12 06:25:11 IST 2026
[2026-06-12 06:25:11,455.455 INFO    ] ================================================
[2026-06-12 06:25:11,809.809 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 06:25:11
[2026-06-12 06:25:12,148.148 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 06:25:12,302.302 INFO    ] Initializing speech engine...
[2026-06-12 06:25:12,307.307 INFO    ] 2026-06-12 06:25:12
[2026-06-12 06:25:12,516.516 INFO    ] 2026-06-12 06:25:12
[2026-06-12 06:25:12,545.545 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 06:25:12,731.731 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 06:25:12,741.741 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 06:25:12,878.878 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 06:25:12,942.942 INFO    ] time= 12/06/2026 06:25:12
[2026-06-12 06:25:12,965.965 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 06:25:12,972.972 INFO    ] Checking for existing commands in stream...
[2026-06-12 06:25:13,039.039 INFO    ] No existing commands found in stream
[2026-06-12 06:25:18,054.054 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 06:25:18,057.057 INFO    ] Waiting 3.94 seconds before fallback handling...
[2026-06-12 06:25:22,393.393 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 06:25:22,395.395 INFO    ] Checking for system updates...
[2026-06-12 06:25:22,416.416 INFO    ] 200
[2026-06-12 06:25:22,417.417 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:25:22,451.451 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 06:25:22,452.452 INFO    ] No update needed
[2026-06-12 06:25:22,454.454 INFO    ] Checking for camera pi updates...
[2026-06-12 06:25:22,477.477 INFO    ] 200
[2026-06-12 06:25:22,478.478 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:25:22,506.506 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 06:25:22,547.547 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 06:25:22,548.548 INFO    ] No camera update needed
[2026-06-12 06:25:22,550.550 INFO    ] Script finished. Safe exiting...
[2026-06-12 06:25:22,551.551 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 06:25:22,555.555 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 06:25:22,558.558 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 06:25:24,598.598 INFO    ] ================================================
[2026-06-12 06:25:24,613.613 INFO    ] Launching Daemon at Fri Jun 12 06:25:24 IST 2026
[2026-06-12 06:25:24,625.625 INFO    ] ================================================
[2026-06-12 06:25:24,996.996 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 06:25:24
[2026-06-12 06:25:25,336.336 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 06:25:25,494.494 INFO    ] Initializing speech engine...
[2026-06-12 06:25:25,497.497 INFO    ] 2026-06-12 06:25:25
[2026-06-12 06:25:25,705.705 INFO    ] 2026-06-12 06:25:25
[2026-06-12 06:25:25,734.734 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 06:25:25,920.920 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 06:25:25,930.930 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 06:25:26,052.052 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 06:25:26,118.118 INFO    ] time= 12/06/2026 06:25:26
[2026-06-12 06:25:26,147.147 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 06:25:26,149.149 INFO    ] Checking for existing commands in stream...
[2026-06-12 06:25:26,232.232 INFO    ] No existing commands found in stream
[2026-06-12 06:25:31,243.243 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 06:25:31,246.246 INFO    ] Waiting 1.40 seconds before fallback handling...
[2026-06-12 06:25:33,048.048 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 06:25:33,050.050 INFO    ] Checking for system updates...
[2026-06-12 06:25:33,072.072 INFO    ] 200
[2026-06-12 06:25:33,074.074 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:25:33,106.106 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 06:25:33,108.108 INFO    ] No update needed
[2026-06-12 06:25:33,109.109 INFO    ] Checking for camera pi updates...
[2026-06-12 06:25:33,130.130 INFO    ] 200
[2026-06-12 06:25:33,131.131 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:25:33,156.156 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 06:25:33,197.197 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 06:25:33,198.198 INFO    ] No camera update needed
[2026-06-12 06:25:33,200.200 INFO    ] Script finished. Safe exiting...
[2026-06-12 06:25:33,201.201 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 06:25:33,205.205 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 06:25:33,208.208 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 06:25:35,247.247 INFO    ] ================================================
[2026-06-12 06:25:35,262.262 INFO    ] Launching Daemon at Fri Jun 12 06:25:35 IST 2026
[2026-06-12 06:25:35,272.272 INFO    ] ================================================
[2026-06-12 06:25:35,647.647 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 06:25:35
[2026-06-12 06:25:35,986.986 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 06:25:36,139.139 INFO    ] Initializing speech engine...
[2026-06-12 06:25:36,144.144 INFO    ] 2026-06-12 06:25:36
[2026-06-12 06:25:36,356.356 INFO    ] 2026-06-12 06:25:36
[2026-06-12 06:25:36,385.385 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 06:25:36,573.573 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 06:25:36,582.582 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 06:25:36,730.730 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 06:25:36,784.784 INFO    ] time= 12/06/2026 06:25:36
[2026-06-12 06:25:36,806.806 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 06:25:36,813.813 INFO    ] Checking for existing commands in stream...
[2026-06-12 06:25:36,882.882 INFO    ] No existing commands found in stream
[2026-06-12 06:25:41,891.891 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 06:25:41,895.895 INFO    ] Waiting 0.78 seconds before fallback handling...
[2026-06-12 06:25:43,072.072 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 06:25:43,074.074 INFO    ] Checking for system updates...
[2026-06-12 06:25:43,095.095 INFO    ] 200
[2026-06-12 06:25:43,096.096 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:25:43,127.127 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 06:25:43,128.128 INFO    ] No update needed
[2026-06-12 06:25:43,129.129 INFO    ] Checking for camera pi updates...
[2026-06-12 06:25:43,149.149 INFO    ] 200
[2026-06-12 06:25:43,151.151 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:25:43,174.174 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 06:25:43,222.222 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 06:25:43,223.223 INFO    ] No camera update needed
[2026-06-12 06:25:43,225.225 INFO    ] Script finished. Safe exiting...
[2026-06-12 06:25:43,226.226 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 06:25:43,229.229 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 06:25:43,232.232 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 06:25:45,272.272 INFO    ] ================================================
[2026-06-12 06:25:45,287.287 INFO    ] Launching Daemon at Fri Jun 12 06:25:45 IST 2026
[2026-06-12 06:25:45,298.298 INFO    ] ================================================
[2026-06-12 06:25:45,638.638 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 06:25:45
[2026-06-12 06:25:45,955.955 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 06:25:46,093.093 INFO    ] Initializing speech engine...
[2026-06-12 06:25:46,103.103 INFO    ] 2026-06-12 06:25:46
[2026-06-12 06:25:46,307.307 INFO    ] 2026-06-12 06:25:46
[2026-06-12 06:25:46,336.336 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 06:25:46,520.520 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 06:25:46,529.529 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 06:25:46,658.658 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 06:25:46,726.726 INFO    ] time= 12/06/2026 06:25:46
[2026-06-12 06:25:46,750.750 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 06:25:46,756.756 INFO    ] Checking for existing commands in stream...
[2026-06-12 06:25:46,823.823 INFO    ] No existing commands found in stream
[2026-06-12 06:25:51,852.852 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 06:25:51,855.855 INFO    ] Waiting 3.96 seconds before fallback handling...
[2026-06-12 06:25:56,192.192 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 06:25:56,193.193 INFO    ] Checking for system updates...
[2026-06-12 06:25:56,215.215 INFO    ] 200
[2026-06-12 06:25:56,216.216 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:25:56,247.247 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 06:25:56,248.248 INFO    ] No update needed
[2026-06-12 06:25:56,249.249 INFO    ] Checking for camera pi updates...
[2026-06-12 06:25:56,270.270 INFO    ] 200
[2026-06-12 06:25:56,272.272 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:25:56,296.296 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 06:25:56,333.333 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 06:25:56,334.334 INFO    ] No camera update needed
[2026-06-12 06:25:56,335.335 INFO    ] Script finished. Safe exiting...
[2026-06-12 06:25:56,336.336 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 06:25:56,339.339 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 06:25:56,342.342 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 06:25:58,383.383 INFO    ] ================================================
[2026-06-12 06:25:58,398.398 INFO    ] Launching Daemon at Fri Jun 12 06:25:58 IST 2026
[2026-06-12 06:25:58,410.410 INFO    ] ================================================
[2026-06-12 06:25:58,772.772 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 06:25:58
[2026-06-12 06:25:59,111.111 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 06:25:59,262.262 INFO    ] Initializing speech engine...
[2026-06-12 06:25:59,267.267 INFO    ] 2026-06-12 06:25:59
[2026-06-12 06:25:59,476.476 INFO    ] 2026-06-12 06:25:59
[2026-06-12 06:25:59,505.505 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 06:25:59,689.689 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 06:25:59,698.698 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 06:25:59,828.828 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 06:25:59,895.895 INFO    ] time= 12/06/2026 06:25:59
[2026-06-12 06:25:59,919.919 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 06:25:59,925.925 INFO    ] Checking for existing commands in stream...
[2026-06-12 06:25:59,992.992 INFO    ] No existing commands found in stream
[2026-06-12 06:26:05,006.006 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 06:26:05,009.009 INFO    ] Waiting 1.99 seconds before fallback handling...
[2026-06-12 06:26:07,377.377 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 06:26:07,379.379 INFO    ] Checking for system updates...
[2026-06-12 06:26:07,400.400 INFO    ] 200
[2026-06-12 06:26:07,401.401 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:26:07,434.434 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 06:26:07,441.441 INFO    ] No update needed
[2026-06-12 06:26:07,443.443 INFO    ] Checking for camera pi updates...
[2026-06-12 06:26:07,471.471 INFO    ] 200
[2026-06-12 06:26:07,472.472 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:26:07,495.495 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 06:26:07,531.531 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 06:26:07,533.533 INFO    ] No camera update needed
[2026-06-12 06:26:07,534.534 INFO    ] Script finished. Safe exiting...
[2026-06-12 06:26:07,535.535 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 06:26:07,538.538 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 06:26:07,541.541 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 06:26:09,580.580 INFO    ] ================================================
[2026-06-12 06:26:09,596.596 INFO    ] Launching Daemon at Fri Jun 12 06:26:09 IST 2026
[2026-06-12 06:26:09,608.608 INFO    ] ================================================
[2026-06-12 06:26:09,999.999 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 06:26:09
[2026-06-12 06:26:10,333.333 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 06:26:10,483.483 INFO    ] Initializing speech engine...
[2026-06-12 06:26:10,489.489 INFO    ] 2026-06-12 06:26:10
[2026-06-12 06:26:10,699.699 INFO    ] 2026-06-12 06:26:10
[2026-06-12 06:26:10,727.727 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 06:26:10,914.914 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 06:26:10,918.918 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 06:26:11,054.054 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 06:26:11,124.124 INFO    ] time= 12/06/2026 06:26:11
[2026-06-12 06:26:11,148.148 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 06:26:11,155.155 INFO    ] Checking for existing commands in stream...
[2026-06-12 06:26:11,222.222 INFO    ] No existing commands found in stream
[2026-06-12 06:26:16,237.237 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 06:26:16,240.240 INFO    ] Waiting 3.27 seconds before fallback handling...
[2026-06-12 06:26:19,905.905 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 06:26:19,907.907 INFO    ] Checking for system updates...
[2026-06-12 06:26:19,927.927 INFO    ] 200
[2026-06-12 06:26:19,929.929 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:26:19,961.961 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 06:26:19,963.963 INFO    ] No update needed
[2026-06-12 06:26:19,964.964 INFO    ] Checking for camera pi updates...
[2026-06-12 06:26:19,983.983 INFO    ] 200
[2026-06-12 06:26:19,985.985 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:26:20,008.008 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 06:26:20,050.050 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 06:26:20,051.051 INFO    ] No camera update needed
[2026-06-12 06:26:20,053.053 INFO    ] Script finished. Safe exiting...
[2026-06-12 06:26:20,054.054 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 06:26:20,057.057 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 06:26:20,059.059 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 06:26:22,099.099 INFO    ] ================================================
[2026-06-12 06:26:22,114.114 INFO    ] Launching Daemon at Fri Jun 12 06:26:22 IST 2026
[2026-06-12 06:26:22,125.125 INFO    ] ================================================
[2026-06-12 06:26:22,513.513 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 06:26:22
[2026-06-12 06:26:22,848.848 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 06:26:22,998.998 INFO    ] Initializing speech engine...
[2026-06-12 06:26:23,003.003 INFO    ] 2026-06-12 06:26:22
[2026-06-12 06:26:23,213.213 INFO    ] 2026-06-12 06:26:23
[2026-06-12 06:26:23,242.242 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 06:26:23,429.429 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 06:26:23,437.437 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 06:26:23,570.570 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 06:26:23,637.637 INFO    ] time= 12/06/2026 06:26:23
[2026-06-12 06:26:23,662.662 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 06:26:23,669.669 INFO    ] Checking for existing commands in stream...
[2026-06-12 06:26:23,761.761 INFO    ] No existing commands found in stream
[2026-06-12 06:26:28,775.775 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 06:26:28,778.778 INFO    ] Waiting 0.43 seconds before fallback handling...
[2026-06-12 06:26:29,583.583 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 06:26:29,585.585 INFO    ] Checking for system updates...
[2026-06-12 06:26:29,606.606 INFO    ] 200
[2026-06-12 06:26:29,607.607 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:26:29,640.640 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 06:26:29,642.642 INFO    ] No update needed
[2026-06-12 06:26:29,644.644 INFO    ] Checking for camera pi updates...
[2026-06-12 06:26:29,664.664 INFO    ] 200
[2026-06-12 06:26:29,666.666 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:26:29,692.692 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 06:26:29,736.736 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 06:26:29,737.737 INFO    ] No camera update needed
[2026-06-12 06:26:29,738.738 INFO    ] Script finished. Safe exiting...
[2026-06-12 06:26:29,740.740 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 06:26:29,743.743 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 06:26:29,746.746 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 06:26:31,782.782 INFO    ] ================================================
[2026-06-12 06:26:31,792.792 INFO    ] Launching Daemon at Fri Jun 12 06:26:31 IST 2026
[2026-06-12 06:26:31,798.798 INFO    ] ================================================
[2026-06-12 06:26:32,151.151 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 06:26:32
[2026-06-12 06:26:32,478.478 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 06:26:32,630.630 INFO    ] Initializing speech engine...
[2026-06-12 06:26:32,637.637 INFO    ] 2026-06-12 06:26:32
[2026-06-12 06:26:32,844.844 INFO    ] 2026-06-12 06:26:32
[2026-06-12 06:26:32,875.875 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 06:26:33,071.071 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 06:26:33,074.074 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 06:26:33,219.219 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 06:26:33,283.283 INFO    ] time= 12/06/2026 06:26:33
[2026-06-12 06:26:33,317.317 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 06:26:33,318.318 INFO    ] Checking for existing commands in stream...
[2026-06-12 06:26:33,392.392 INFO    ] No existing commands found in stream
[2026-06-12 06:26:38,400.400 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 06:26:38,403.403 INFO    ] Waiting 0.29 seconds before fallback handling...
[2026-06-12 06:26:39,084.084 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 06:26:39,086.086 INFO    ] Checking for system updates...
[2026-06-12 06:26:39,111.111 INFO    ] 200
[2026-06-12 06:26:39,112.112 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:26:39,143.143 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 06:26:39,144.144 INFO    ] No update needed
[2026-06-12 06:26:39,145.145 INFO    ] Checking for camera pi updates...
[2026-06-12 06:26:39,165.165 INFO    ] 200
[2026-06-12 06:26:39,167.167 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:26:39,191.191 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 06:26:39,231.231 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 06:26:39,232.232 INFO    ] No camera update needed
[2026-06-12 06:26:39,233.233 INFO    ] Script finished. Safe exiting...
[2026-06-12 06:26:39,235.235 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 06:26:39,238.238 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 06:26:39,240.240 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 06:26:41,279.279 INFO    ] ================================================
[2026-06-12 06:26:41,295.295 INFO    ] Launching Daemon at Fri Jun 12 06:26:41 IST 2026
[2026-06-12 06:26:41,306.306 INFO    ] ================================================
[2026-06-12 06:26:41,643.643 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 06:26:41
[2026-06-12 06:26:41,957.957 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 06:26:42,088.088 INFO    ] Initializing speech engine...
[2026-06-12 06:26:42,096.096 INFO    ] 2026-06-12 06:26:42
[2026-06-12 06:26:42,310.310 INFO    ] 2026-06-12 06:26:42
[2026-06-12 06:26:42,340.340 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 06:26:42,526.526 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 06:26:42,536.536 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 06:26:42,666.666 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 06:26:42,733.733 INFO    ] time= 12/06/2026 06:26:42
[2026-06-12 06:26:42,761.761 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 06:26:42,768.768 INFO    ] Checking for existing commands in stream...
[2026-06-12 06:26:42,836.836 INFO    ] No existing commands found in stream
[2026-06-12 06:26:47,850.850 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 06:26:47,853.853 INFO    ] Waiting 1.08 seconds before fallback handling...
[2026-06-12 06:26:49,341.341 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 06:26:49,343.343 INFO    ] Checking for system updates...
[2026-06-12 06:26:49,379.379 INFO    ] 200
[2026-06-12 06:26:49,382.382 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:26:49,435.435 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 06:26:49,437.437 INFO    ] No update needed
[2026-06-12 06:26:49,440.440 INFO    ] Checking for camera pi updates...
[2026-06-12 06:26:49,477.477 INFO    ] 200
[2026-06-12 06:26:49,479.479 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:26:49,520.520 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 06:26:49,563.563 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 06:26:49,566.566 INFO    ] No camera update needed
[2026-06-12 06:26:49,568.568 INFO    ] Script finished. Safe exiting...
[2026-06-12 06:26:49,571.571 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 06:26:49,576.576 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 06:26:49,581.581 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 06:26:51,622.622 INFO    ] ================================================
[2026-06-12 06:26:51,637.637 INFO    ] Launching Daemon at Fri Jun 12 06:26:51 IST 2026
[2026-06-12 06:26:51,648.648 INFO    ] ================================================
[2026-06-12 06:26:51,984.984 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 06:26:51
[2026-06-12 06:26:52,295.295 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 06:26:52,441.441 INFO    ] Initializing speech engine...
[2026-06-12 06:26:52,446.446 INFO    ] 2026-06-12 06:26:52
[2026-06-12 06:26:52,660.660 INFO    ] 2026-06-12 06:26:52
[2026-06-12 06:26:52,690.690 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 06:26:52,886.886 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 06:26:52,890.890 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 06:26:53,031.031 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 06:26:53,094.094 INFO    ] time= 12/06/2026 06:26:53
[2026-06-12 06:26:53,128.128 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 06:26:53,134.134 INFO    ] Checking for existing commands in stream...
[2026-06-12 06:26:53,210.210 INFO    ] No existing commands found in stream
[2026-06-12 06:26:58,219.219 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 06:26:58,227.227 INFO    ] Waiting 1.19 seconds before fallback handling...
[2026-06-12 06:26:59,804.804 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 06:26:59,805.805 INFO    ] Checking for system updates...
[2026-06-12 06:26:59,826.826 INFO    ] 200
[2026-06-12 06:26:59,828.828 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:26:59,859.859 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 06:26:59,860.860 INFO    ] No update needed
[2026-06-12 06:26:59,862.862 INFO    ] Checking for camera pi updates...
[2026-06-12 06:26:59,881.881 INFO    ] 200
[2026-06-12 06:26:59,883.883 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:26:59,907.907 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 06:26:59,948.948 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 06:26:59,950.950 INFO    ] No camera update needed
[2026-06-12 06:26:59,951.951 INFO    ] Script finished. Safe exiting...
[2026-06-12 06:26:59,953.953 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 06:26:59,956.956 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 06:26:59,960.960 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 06:27:01,992.992 INFO    ] ================================================
[2026-06-12 06:27:02,005.005 INFO    ] Launching Daemon at Fri Jun 12 06:27:02 IST 2026
[2026-06-12 06:27:02,012.012 INFO    ] ================================================
[2026-06-12 06:27:02,382.382 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 06:27:02
[2026-06-12 06:27:02,707.707 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 06:27:02,861.861 INFO    ] Initializing speech engine...
[2026-06-12 06:27:02,864.864 INFO    ] 2026-06-12 06:27:02
[2026-06-12 06:27:03,061.061 INFO    ] 2026-06-12 06:27:03
[2026-06-12 06:27:03,089.089 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 06:27:03,226.226 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 06:27:03,274.274 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 06:27:03,403.403 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 06:27:03,464.464 INFO    ] time= 12/06/2026 06:27:03
[2026-06-12 06:27:03,501.501 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 06:27:03,503.503 INFO    ] Checking for existing commands in stream...
[2026-06-12 06:27:03,577.577 INFO    ] No existing commands found in stream
[2026-06-12 06:27:08,591.591 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 06:27:08,595.595 INFO    ] Waiting 2.10 seconds before fallback handling...
[2026-06-12 06:27:11,075.075 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 06:27:11,076.076 INFO    ] Checking for system updates...
[2026-06-12 06:27:11,097.097 INFO    ] 200
[2026-06-12 06:27:11,098.098 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:27:11,129.129 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 06:27:11,130.130 INFO    ] No update needed
[2026-06-12 06:27:11,132.132 INFO    ] Checking for camera pi updates...
[2026-06-12 06:27:11,154.154 INFO    ] 200
[2026-06-12 06:27:11,156.156 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:27:11,179.179 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 06:27:11,318.318 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 06:27:11,320.320 INFO    ] No camera update needed
[2026-06-12 06:27:11,321.321 INFO    ] Script finished. Safe exiting...
[2026-06-12 06:27:11,323.323 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 06:27:11,325.325 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 06:27:11,328.328 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 06:27:13,370.370 INFO    ] ================================================
[2026-06-12 06:27:13,385.385 INFO    ] Launching Daemon at Fri Jun 12 06:27:13 IST 2026
[2026-06-12 06:27:13,396.396 INFO    ] ================================================
[2026-06-12 06:27:13,748.748 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 06:27:13
[2026-06-12 06:27:14,076.076 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 06:27:14,224.224 INFO    ] Initializing speech engine...
[2026-06-12 06:27:14,229.229 INFO    ] 2026-06-12 06:27:14
[2026-06-12 06:27:14,438.438 INFO    ] 2026-06-12 06:27:14
[2026-06-12 06:27:14,468.468 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 06:27:14,655.655 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 06:27:14,665.665 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 06:27:14,795.795 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 06:27:14,851.851 INFO    ] time= 12/06/2026 06:27:14
[2026-06-12 06:27:14,887.887 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 06:27:14,892.892 INFO    ] Checking for existing commands in stream...
[2026-06-12 06:27:14,965.965 INFO    ] No existing commands found in stream
[2026-06-12 06:27:19,989.989 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 06:27:19,993.993 INFO    ] Waiting 2.99 seconds before fallback handling...
[2026-06-12 06:27:23,335.335 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 06:27:23,337.337 INFO    ] Checking for system updates...
[2026-06-12 06:27:23,357.357 INFO    ] 200
[2026-06-12 06:27:23,358.358 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:27:23,390.390 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 06:27:23,392.392 INFO    ] No update needed
[2026-06-12 06:27:23,393.393 INFO    ] Checking for camera pi updates...
[2026-06-12 06:27:23,412.412 INFO    ] 200
[2026-06-12 06:27:23,414.414 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:27:23,436.436 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 06:27:23,478.478 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 06:27:23,480.480 INFO    ] No camera update needed
[2026-06-12 06:27:23,481.481 INFO    ] Script finished. Safe exiting...
[2026-06-12 06:27:23,482.482 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 06:27:23,485.485 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 06:27:23,488.488 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 06:27:25,527.527 INFO    ] ================================================
[2026-06-12 06:27:25,543.543 INFO    ] Launching Daemon at Fri Jun 12 06:27:25 IST 2026
[2026-06-12 06:27:25,553.553 INFO    ] ================================================
[2026-06-12 06:27:25,885.885 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 06:27:25
[2026-06-12 06:27:26,202.202 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 06:27:26,334.334 INFO    ] Initializing speech engine...
[2026-06-12 06:27:26,347.347 INFO    ] 2026-06-12 06:27:26
[2026-06-12 06:27:26,554.554 INFO    ] 2026-06-12 06:27:26
[2026-06-12 06:27:26,583.583 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 06:27:26,704.704 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 06:27:26,767.767 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 06:27:26,902.902 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 06:27:26,963.963 INFO    ] time= 12/06/2026 06:27:26
[2026-06-12 06:27:26,995.995 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 06:27:27,001.001 INFO    ] Checking for existing commands in stream...
[2026-06-12 06:27:27,066.066 INFO    ] No existing commands found in stream
[2026-06-12 06:27:32,076.076 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 06:27:32,078.078 INFO    ] Waiting 2.67 seconds before fallback handling...
[2026-06-12 06:27:35,114.114 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 06:27:35,116.116 INFO    ] Checking for system updates...
[2026-06-12 06:27:35,137.137 INFO    ] 200
[2026-06-12 06:27:35,138.138 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:27:35,168.168 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 06:27:35,170.170 INFO    ] No update needed
[2026-06-12 06:27:35,171.171 INFO    ] Checking for camera pi updates...
[2026-06-12 06:27:35,193.193 INFO    ] 200
[2026-06-12 06:27:35,195.195 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:27:35,218.218 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 06:27:35,263.263 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 06:27:35,264.264 INFO    ] No camera update needed
[2026-06-12 06:27:35,265.265 INFO    ] Script finished. Safe exiting...
[2026-06-12 06:27:35,267.267 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 06:27:35,269.269 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 06:27:35,272.272 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 06:27:37,313.313 INFO    ] ================================================
[2026-06-12 06:27:37,328.328 INFO    ] Launching Daemon at Fri Jun 12 06:27:37 IST 2026
[2026-06-12 06:27:37,339.339 INFO    ] ================================================
[2026-06-12 06:27:37,685.685 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 06:27:37
[2026-06-12 06:27:38,013.013 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 06:27:38,160.160 INFO    ] Initializing speech engine...
[2026-06-12 06:27:38,165.165 INFO    ] 2026-06-12 06:27:38
[2026-06-12 06:27:38,370.370 INFO    ] 2026-06-12 06:27:38
[2026-06-12 06:27:38,399.399 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 06:27:38,583.583 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 06:27:38,592.592 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 06:27:38,731.731 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 06:27:38,788.788 INFO    ] time= 12/06/2026 06:27:38
[2026-06-12 06:27:38,810.810 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 06:27:38,817.817 INFO    ] Checking for existing commands in stream...
[2026-06-12 06:27:38,883.883 INFO    ] No existing commands found in stream
[2026-06-12 06:27:43,893.893 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 06:27:43,896.896 INFO    ] Waiting 0.67 seconds before fallback handling...
[2026-06-12 06:27:44,935.935 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 06:27:44,937.937 INFO    ] Checking for system updates...
[2026-06-12 06:27:44,958.958 INFO    ] 200
[2026-06-12 06:27:44,960.960 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:27:44,990.990 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 06:27:44,992.992 INFO    ] No update needed
[2026-06-12 06:27:44,993.993 INFO    ] Checking for camera pi updates...
[2026-06-12 06:27:45,013.013 INFO    ] 200
[2026-06-12 06:27:45,014.014 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:27:45,039.039 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 06:27:45,075.075 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 06:27:45,077.077 INFO    ] No camera update needed
[2026-06-12 06:27:45,078.078 INFO    ] Script finished. Safe exiting...
[2026-06-12 06:27:45,080.080 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 06:27:45,083.083 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 06:27:45,086.086 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 06:27:47,125.125 INFO    ] ================================================
[2026-06-12 06:27:47,141.141 INFO    ] Launching Daemon at Fri Jun 12 06:27:47 IST 2026
[2026-06-12 06:27:47,151.151 INFO    ] ================================================
[2026-06-12 06:27:47,522.522 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 06:27:47
[2026-06-12 06:27:47,841.841 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 06:27:47,989.989 INFO    ] Initializing speech engine...
[2026-06-12 06:27:47,994.994 INFO    ] 2026-06-12 06:27:47
[2026-06-12 06:27:48,201.201 INFO    ] 2026-06-12 06:27:48
[2026-06-12 06:27:48,230.230 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 06:27:48,413.413 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 06:27:48,424.424 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 06:27:48,572.572 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 06:27:48,620.620 INFO    ] time= 12/06/2026 06:27:48
[2026-06-12 06:27:48,642.642 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 06:27:48,648.648 INFO    ] Checking for existing commands in stream...
[2026-06-12 06:27:48,715.715 INFO    ] No existing commands found in stream
[2026-06-12 06:27:53,730.730 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 06:27:53,733.733 INFO    ] Waiting 3.45 seconds before fallback handling...
[2026-06-12 06:27:57,602.602 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 06:27:57,604.604 INFO    ] Checking for system updates...
[2026-06-12 06:27:57,626.626 INFO    ] 200
[2026-06-12 06:27:57,627.627 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:27:57,660.660 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 06:27:57,662.662 INFO    ] No update needed
[2026-06-12 06:27:57,663.663 INFO    ] Checking for camera pi updates...
[2026-06-12 06:27:57,685.685 INFO    ] 200
[2026-06-12 06:27:57,686.686 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:27:57,710.710 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 06:27:57,747.747 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 06:27:57,748.748 INFO    ] No camera update needed
[2026-06-12 06:27:57,750.750 INFO    ] Script finished. Safe exiting...
[2026-06-12 06:27:57,751.751 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 06:27:57,754.754 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 06:27:57,757.757 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 06:27:59,796.796 INFO    ] ================================================
[2026-06-12 06:27:59,811.811 INFO    ] Launching Daemon at Fri Jun 12 06:27:59 IST 2026
[2026-06-12 06:27:59,822.822 INFO    ] ================================================
[2026-06-12 06:28:00,176.176 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 06:28:00
[2026-06-12 06:28:00,486.486 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 06:28:00,627.627 INFO    ] Initializing speech engine...
[2026-06-12 06:28:00,635.635 INFO    ] 2026-06-12 06:28:00
[2026-06-12 06:28:00,848.848 INFO    ] 2026-06-12 06:28:00
[2026-06-12 06:28:00,879.879 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 06:28:01,073.073 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 06:28:01,077.077 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 06:28:01,221.221 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 06:28:01,285.285 INFO    ] time= 12/06/2026 06:28:01
[2026-06-12 06:28:01,318.318 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 06:28:01,325.325 INFO    ] Checking for existing commands in stream...
[2026-06-12 06:28:01,394.394 INFO    ] No existing commands found in stream
[2026-06-12 06:28:06,405.405 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 06:28:06,408.408 INFO    ] Waiting 2.85 seconds before fallback handling...
[2026-06-12 06:28:09,615.615 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 06:28:09,616.616 INFO    ] Checking for system updates...
[2026-06-12 06:28:09,637.637 INFO    ] 200
[2026-06-12 06:28:09,638.638 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:28:09,670.670 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 06:28:09,671.671 INFO    ] No update needed
[2026-06-12 06:28:09,673.673 INFO    ] Checking for camera pi updates...
[2026-06-12 06:28:09,692.692 INFO    ] 200
[2026-06-12 06:28:09,693.693 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:28:09,718.718 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 06:28:09,759.759 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 06:28:09,760.760 INFO    ] No camera update needed
[2026-06-12 06:28:09,761.761 INFO    ] Script finished. Safe exiting...
[2026-06-12 06:28:09,763.763 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 06:28:09,766.766 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 06:28:09,768.768 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 06:28:11,807.807 INFO    ] ================================================
[2026-06-12 06:28:11,823.823 INFO    ] Launching Daemon at Fri Jun 12 06:28:11 IST 2026
[2026-06-12 06:28:11,834.834 INFO    ] ================================================
[2026-06-12 06:28:12,162.162 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 06:28:12
[2026-06-12 06:28:12,473.473 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 06:28:12,606.606 INFO    ] Initializing speech engine...
[2026-06-12 06:28:12,618.618 INFO    ] 2026-06-12 06:28:12
[2026-06-12 06:28:12,826.826 INFO    ] 2026-06-12 06:28:12
[2026-06-12 06:28:12,855.855 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 06:28:13,064.064 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 06:28:13,069.069 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 06:28:13,196.196 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 06:28:13,249.249 INFO    ] time= 12/06/2026 06:28:13
[2026-06-12 06:28:13,272.272 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 06:28:13,277.277 INFO    ] Checking for existing commands in stream...
[2026-06-12 06:28:13,345.345 INFO    ] No existing commands found in stream
[2026-06-12 06:28:18,359.359 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 06:28:18,362.362 INFO    ] Waiting 0.57 seconds before fallback handling...
[2026-06-12 06:28:19,316.316 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 06:28:19,317.317 INFO    ] Checking for system updates...
[2026-06-12 06:28:19,339.339 INFO    ] 200
[2026-06-12 06:28:19,340.340 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:28:19,371.371 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 06:28:19,372.372 INFO    ] No update needed
[2026-06-12 06:28:19,373.373 INFO    ] Checking for camera pi updates...
[2026-06-12 06:28:19,392.392 INFO    ] 200
[2026-06-12 06:28:19,394.394 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:28:19,419.419 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 06:28:19,460.460 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 06:28:19,462.462 INFO    ] No camera update needed
[2026-06-12 06:28:19,463.463 INFO    ] Script finished. Safe exiting...
[2026-06-12 06:28:19,464.464 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 06:28:19,467.467 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 06:28:19,470.470 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 06:28:21,511.511 INFO    ] ================================================
[2026-06-12 06:28:21,526.526 INFO    ] Launching Daemon at Fri Jun 12 06:28:21 IST 2026
[2026-06-12 06:28:21,537.537 INFO    ] ================================================
[2026-06-12 06:28:21,903.903 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 06:28:21
[2026-06-12 06:28:22,236.236 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 06:28:22,385.385 INFO    ] Initializing speech engine...
[2026-06-12 06:28:22,391.391 INFO    ] 2026-06-12 06:28:22
[2026-06-12 06:28:22,598.598 INFO    ] 2026-06-12 06:28:22
[2026-06-12 06:28:22,626.626 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 06:28:22,810.810 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 06:28:22,820.820 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 06:28:22,950.950 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 06:28:23,011.011 INFO    ] time= 12/06/2026 06:28:22
[2026-06-12 06:28:23,043.043 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 06:28:23,046.046 INFO    ] Checking for existing commands in stream...
[2026-06-12 06:28:23,117.117 INFO    ] No existing commands found in stream
[2026-06-12 06:28:28,131.131 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 06:28:28,135.135 INFO    ] Waiting 2.80 seconds before fallback handling...
[2026-06-12 06:28:31,305.305 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 06:28:31,306.306 INFO    ] Checking for system updates...
[2026-06-12 06:28:31,327.327 INFO    ] 200
[2026-06-12 06:28:31,328.328 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:28:31,359.359 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 06:28:31,361.361 INFO    ] No update needed
[2026-06-12 06:28:31,362.362 INFO    ] Checking for camera pi updates...
[2026-06-12 06:28:31,382.382 INFO    ] 200
[2026-06-12 06:28:31,384.384 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:28:31,407.407 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 06:28:31,449.449 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 06:28:31,450.450 INFO    ] No camera update needed
[2026-06-12 06:28:31,452.452 INFO    ] Script finished. Safe exiting...
[2026-06-12 06:28:31,453.453 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 06:28:31,456.456 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 06:28:31,459.459 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 06:28:33,491.491 INFO    ] ================================================
[2026-06-12 06:28:33,506.506 INFO    ] Launching Daemon at Fri Jun 12 06:28:33 IST 2026
[2026-06-12 06:28:33,517.517 INFO    ] ================================================
[2026-06-12 06:28:33,848.848 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 06:28:33
[2026-06-12 06:28:34,159.159 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 06:28:34,302.302 INFO    ] Initializing speech engine...
[2026-06-12 06:28:34,308.308 INFO    ] 2026-06-12 06:28:34
[2026-06-12 06:28:34,512.512 INFO    ] 2026-06-12 06:28:34
[2026-06-12 06:28:34,541.541 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 06:28:34,727.727 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 06:28:34,737.737 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 06:28:34,868.868 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 06:28:34,932.932 INFO    ] time= 12/06/2026 06:28:34
[2026-06-12 06:28:34,961.961 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 06:28:34,968.968 INFO    ] Checking for existing commands in stream...
[2026-06-12 06:28:35,036.036 INFO    ] No existing commands found in stream
[2026-06-12 06:28:40,045.045 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 06:28:40,048.048 INFO    ] Waiting 1.61 seconds before fallback handling...
[2026-06-12 06:28:42,026.026 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 06:28:42,027.027 INFO    ] Checking for system updates...
[2026-06-12 06:28:42,048.048 INFO    ] 200
[2026-06-12 06:28:42,050.050 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:28:42,080.080 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 06:28:42,081.081 INFO    ] No update needed
[2026-06-12 06:28:42,083.083 INFO    ] Checking for camera pi updates...
[2026-06-12 06:28:42,103.103 INFO    ] 200
[2026-06-12 06:28:42,104.104 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:28:42,127.127 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 06:28:42,165.165 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 06:28:42,167.167 INFO    ] No camera update needed
[2026-06-12 06:28:42,168.168 INFO    ] Script finished. Safe exiting...
[2026-06-12 06:28:42,169.169 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 06:28:42,172.172 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 06:28:42,175.175 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 06:28:44,216.216 INFO    ] ================================================
[2026-06-12 06:28:44,231.231 INFO    ] Launching Daemon at Fri Jun 12 06:28:44 IST 2026
[2026-06-12 06:28:44,242.242 INFO    ] ================================================
[2026-06-12 06:28:44,575.575 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 06:28:44
[2026-06-12 06:28:44,892.892 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 06:28:45,026.026 INFO    ] Initializing speech engine...
[2026-06-12 06:28:45,029.029 INFO    ] 2026-06-12 06:28:45
[2026-06-12 06:28:45,256.256 INFO    ] 2026-06-12 06:28:45
[2026-06-12 06:28:45,286.286 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 06:28:45,482.482 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 06:28:45,485.485 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 06:28:45,623.623 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 06:28:45,658.658 INFO    ] time= 12/06/2026 06:28:45
[2026-06-12 06:28:45,706.706 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 06:28:45,729.729 INFO    ] Checking for existing commands in stream...
[2026-06-12 06:28:45,803.803 INFO    ] No existing commands found in stream
[2026-06-12 06:28:50,814.814 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 06:28:50,817.817 INFO    ] Waiting 2.84 seconds before fallback handling...
[2026-06-12 06:28:54,028.028 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 06:28:54,029.029 INFO    ] Checking for system updates...
[2026-06-12 06:28:54,050.050 INFO    ] 200
[2026-06-12 06:28:54,052.052 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:28:54,082.082 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 06:28:54,084.084 INFO    ] No update needed
[2026-06-12 06:28:54,085.085 INFO    ] Checking for camera pi updates...
[2026-06-12 06:28:54,105.105 INFO    ] 200
[2026-06-12 06:28:54,106.106 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:28:54,130.130 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 06:28:54,176.176 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 06:28:54,177.177 INFO    ] No camera update needed
[2026-06-12 06:28:54,179.179 INFO    ] Script finished. Safe exiting...
[2026-06-12 06:28:54,180.180 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 06:28:54,183.183 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 06:28:54,186.186 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 06:28:56,225.225 INFO    ] ================================================
[2026-06-12 06:28:56,240.240 INFO    ] Launching Daemon at Fri Jun 12 06:28:56 IST 2026
[2026-06-12 06:28:56,251.251 INFO    ] ================================================
[2026-06-12 06:28:56,599.599 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 06:28:56
[2026-06-12 06:28:56,915.915 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 06:28:57,064.064 INFO    ] Initializing speech engine...
[2026-06-12 06:28:57,069.069 INFO    ] 2026-06-12 06:28:57
[2026-06-12 06:28:57,281.281 INFO    ] 2026-06-12 06:28:57
[2026-06-12 06:28:57,312.312 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 06:28:57,506.506 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 06:28:57,516.516 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 06:28:57,646.646 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 06:28:57,703.703 INFO    ] time= 12/06/2026 06:28:57
[2026-06-12 06:28:57,741.741 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 06:28:57,752.752 INFO    ] Checking for existing commands in stream...
[2026-06-12 06:28:57,828.828 INFO    ] No existing commands found in stream
[2026-06-12 06:29:02,831.831 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 06:29:02,833.833 INFO    ] Waiting 3.51 seconds before fallback handling...
[2026-06-12 06:29:06,687.687 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 06:29:06,689.689 INFO    ] Checking for system updates...
[2026-06-12 06:29:06,710.710 INFO    ] 200
[2026-06-12 06:29:06,711.711 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:29:06,742.742 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 06:29:06,743.743 INFO    ] No update needed
[2026-06-12 06:29:06,744.744 INFO    ] Checking for camera pi updates...
[2026-06-12 06:29:06,765.765 INFO    ] 200
[2026-06-12 06:29:06,766.766 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:29:06,790.790 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 06:29:06,840.840 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 06:29:06,842.842 INFO    ] No camera update needed
[2026-06-12 06:29:06,843.843 INFO    ] Script finished. Safe exiting...
[2026-06-12 06:29:06,844.844 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 06:29:06,847.847 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 06:29:06,850.850 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 06:29:08,888.888 INFO    ] ================================================
[2026-06-12 06:29:08,904.904 INFO    ] Launching Daemon at Fri Jun 12 06:29:08 IST 2026
[2026-06-12 06:29:08,915.915 INFO    ] ================================================
[2026-06-12 06:29:09,279.279 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 06:29:09
[2026-06-12 06:29:09,591.591 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 06:29:09,726.726 INFO    ] Initializing speech engine...
[2026-06-12 06:29:09,734.734 INFO    ] 2026-06-12 06:29:09
[2026-06-12 06:29:09,960.960 INFO    ] 2026-06-12 06:29:09
[2026-06-12 06:29:09,990.990 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 06:29:10,188.188 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 06:29:10,192.192 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 06:29:10,333.333 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 06:29:10,394.394 INFO    ] time= 12/06/2026 06:29:10
[2026-06-12 06:29:10,434.434 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 06:29:10,441.441 INFO    ] Checking for existing commands in stream...
[2026-06-12 06:29:10,517.517 INFO    ] No existing commands found in stream
[2026-06-12 06:29:15,527.527 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 06:29:15,530.530 INFO    ] Waiting 2.58 seconds before fallback handling...
[2026-06-12 06:29:18,467.467 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 06:29:18,469.469 INFO    ] Checking for system updates...
[2026-06-12 06:29:18,490.490 INFO    ] 200
[2026-06-12 06:29:18,491.491 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:29:18,524.524 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 06:29:18,525.525 INFO    ] No update needed
[2026-06-12 06:29:18,526.526 INFO    ] Checking for camera pi updates...
[2026-06-12 06:29:18,546.546 INFO    ] 200
[2026-06-12 06:29:18,547.547 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:29:18,572.572 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 06:29:18,712.712 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 06:29:18,714.714 INFO    ] No camera update needed
[2026-06-12 06:29:18,715.715 INFO    ] Script finished. Safe exiting...
[2026-06-12 06:29:18,716.716 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 06:29:18,719.719 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 06:29:18,722.722 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 06:29:20,762.762 INFO    ] ================================================
[2026-06-12 06:29:20,777.777 INFO    ] Launching Daemon at Fri Jun 12 06:29:20 IST 2026
[2026-06-12 06:29:20,788.788 INFO    ] ================================================
[2026-06-12 06:29:21,132.132 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 06:29:21
[2026-06-12 06:29:21,447.447 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 06:29:21,590.590 INFO    ] Initializing speech engine...
[2026-06-12 06:29:21,595.595 INFO    ] 2026-06-12 06:29:21
[2026-06-12 06:29:21,799.799 INFO    ] 2026-06-12 06:29:21
[2026-06-12 06:29:21,827.827 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 06:29:22,012.012 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 06:29:22,022.022 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 06:29:22,146.146 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 06:29:22,213.213 INFO    ] time= 12/06/2026 06:29:22
[2026-06-12 06:29:22,240.240 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 06:29:22,246.246 INFO    ] Checking for existing commands in stream...
[2026-06-12 06:29:22,313.313 INFO    ] No existing commands found in stream
[2026-06-12 06:29:27,327.327 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 06:29:27,330.330 INFO    ] Waiting 1.02 seconds before fallback handling...
[2026-06-12 06:29:28,794.794 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 06:29:28,795.795 INFO    ] Checking for system updates...
[2026-06-12 06:29:28,816.816 INFO    ] 200
[2026-06-12 06:29:28,817.817 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:29:28,848.848 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 06:29:28,850.850 INFO    ] No update needed
[2026-06-12 06:29:28,851.851 INFO    ] Checking for camera pi updates...
[2026-06-12 06:29:28,871.871 INFO    ] 200
[2026-06-12 06:29:28,872.872 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:29:28,896.896 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 06:29:28,935.935 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 06:29:28,937.937 INFO    ] No camera update needed
[2026-06-12 06:29:28,938.938 INFO    ] Script finished. Safe exiting...
[2026-06-12 06:29:28,939.939 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 06:29:28,943.943 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 06:29:28,946.946 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 06:29:30,986.986 INFO    ] ================================================
[2026-06-12 06:29:31,001.001 INFO    ] Launching Daemon at Fri Jun 12 06:29:30 IST 2026
[2026-06-12 06:29:31,011.011 INFO    ] ================================================
[2026-06-12 06:29:31,349.349 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 06:29:31
[2026-06-12 06:29:31,663.663 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 06:29:31,792.792 INFO    ] Initializing speech engine...
[2026-06-12 06:29:31,796.796 INFO    ] 2026-06-12 06:29:31
[2026-06-12 06:29:32,019.019 INFO    ] 2026-06-12 06:29:31
[2026-06-12 06:29:32,059.059 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 06:29:32,253.253 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 06:29:32,258.258 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 06:29:32,422.422 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 06:29:32,477.477 INFO    ] time= 12/06/2026 06:29:32
[2026-06-12 06:29:32,500.500 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 06:29:32,507.507 INFO    ] Checking for existing commands in stream...
[2026-06-12 06:29:32,602.602 INFO    ] No existing commands found in stream
[2026-06-12 06:29:37,612.612 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 06:29:37,615.615 INFO    ] Waiting 2.44 seconds before fallback handling...
[2026-06-12 06:29:40,424.424 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 06:29:40,426.426 INFO    ] Checking for system updates...
[2026-06-12 06:29:40,447.447 INFO    ] 200
[2026-06-12 06:29:40,448.448 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:29:40,478.478 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 06:29:40,479.479 INFO    ] No update needed
[2026-06-12 06:29:40,481.481 INFO    ] Checking for camera pi updates...
[2026-06-12 06:29:40,502.502 INFO    ] 200
[2026-06-12 06:29:40,503.503 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:29:40,526.526 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 06:29:40,567.567 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 06:29:40,568.568 INFO    ] No camera update needed
[2026-06-12 06:29:40,570.570 INFO    ] Script finished. Safe exiting...
[2026-06-12 06:29:40,571.571 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 06:29:40,574.574 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 06:29:40,577.577 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 06:29:42,615.615 INFO    ] ================================================
[2026-06-12 06:29:42,631.631 INFO    ] Launching Daemon at Fri Jun 12 06:29:42 IST 2026
[2026-06-12 06:29:42,642.642 INFO    ] ================================================
[2026-06-12 06:29:42,970.970 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 06:29:42
[2026-06-12 06:29:43,280.280 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 06:29:43,433.433 INFO    ] Initializing speech engine...
[2026-06-12 06:29:43,437.437 INFO    ] 2026-06-12 06:29:43
[2026-06-12 06:29:43,646.646 INFO    ] 2026-06-12 06:29:43
[2026-06-12 06:29:43,675.675 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 06:29:43,862.862 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 06:29:43,872.872 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 06:29:44,000.000 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 06:29:44,067.067 INFO    ] time= 12/06/2026 06:29:44
[2026-06-12 06:29:44,096.096 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 06:29:44,102.102 INFO    ] Checking for existing commands in stream...
[2026-06-12 06:29:44,193.193 INFO    ] No existing commands found in stream
[2026-06-12 06:29:49,203.203 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 06:29:49,206.206 INFO    ] Waiting 2.54 seconds before fallback handling...
[2026-06-12 06:29:52,140.140 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 06:29:52,142.142 INFO    ] Checking for system updates...
[2026-06-12 06:29:52,163.163 INFO    ] 200
[2026-06-12 06:29:52,164.164 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:29:52,195.195 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 06:29:52,196.196 INFO    ] No update needed
[2026-06-12 06:29:52,198.198 INFO    ] Checking for camera pi updates...
[2026-06-12 06:29:52,218.218 INFO    ] 200
[2026-06-12 06:29:52,220.220 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:29:52,246.246 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 06:29:52,285.285 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 06:29:52,286.286 INFO    ] No camera update needed
[2026-06-12 06:29:52,288.288 INFO    ] Script finished. Safe exiting...
[2026-06-12 06:29:52,289.289 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 06:29:52,293.293 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 06:29:52,295.295 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 06:29:54,335.335 INFO    ] ================================================
[2026-06-12 06:29:54,350.350 INFO    ] Launching Daemon at Fri Jun 12 06:29:54 IST 2026
[2026-06-12 06:29:54,365.365 INFO    ] ================================================
[2026-06-12 06:29:54,710.710 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 06:29:54
[2026-06-12 06:29:55,027.027 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 06:29:55,171.171 INFO    ] Initializing speech engine...
[2026-06-12 06:29:55,176.176 INFO    ] 2026-06-12 06:29:55
[2026-06-12 06:29:55,380.380 INFO    ] 2026-06-12 06:29:55
[2026-06-12 06:29:55,409.409 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 06:29:55,594.594 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 06:29:55,603.603 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 06:29:55,725.725 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 06:29:55,780.780 INFO    ] time= 12/06/2026 06:29:55
[2026-06-12 06:29:55,810.810 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 06:29:55,825.825 INFO    ] Checking for existing commands in stream...
[2026-06-12 06:29:55,920.920 INFO    ] No existing commands found in stream
[2026-06-12 06:30:00,934.934 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 06:30:00,937.937 INFO    ] Waiting 0.48 seconds before fallback handling...
[2026-06-12 06:30:01,800.800 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 06:30:01,802.802 INFO    ] Checking for system updates...
[2026-06-12 06:30:01,835.835 INFO    ] 200
[2026-06-12 06:30:01,837.837 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:30:01,889.889 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 06:30:01,892.892 INFO    ] No update needed
[2026-06-12 06:30:01,895.895 INFO    ] Checking for camera pi updates...
[2026-06-12 06:30:01,931.931 INFO    ] 200
[2026-06-12 06:30:01,933.933 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:30:01,974.974 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 06:30:02,002.002 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 06:30:02,005.005 INFO    ] No camera update needed
[2026-06-12 06:30:02,007.007 INFO    ] Script finished. Safe exiting...
[2026-06-12 06:30:02,009.009 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 06:30:02,013.013 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 06:30:02,018.018 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 06:30:04,050.050 INFO    ] ================================================
[2026-06-12 06:30:04,066.066 INFO    ] Launching Daemon at Fri Jun 12 06:30:04 IST 2026
[2026-06-12 06:30:04,077.077 INFO    ] ================================================
[2026-06-12 06:30:04,438.438 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 06:30:04
[2026-06-12 06:30:04,756.756 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 06:30:04,892.892 INFO    ] Initializing speech engine...
[2026-06-12 06:30:04,901.901 INFO    ] 2026-06-12 06:30:04
[2026-06-12 06:30:05,124.124 INFO    ] 2026-06-12 06:30:05
[2026-06-12 06:30:05,155.155 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 06:30:05,286.286 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 06:30:05,353.353 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 06:30:05,498.498 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 06:30:05,541.541 INFO    ] time= 12/06/2026 06:30:05
[2026-06-12 06:30:05,587.587 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 06:30:05,611.611 INFO    ] Checking for existing commands in stream...
[2026-06-12 06:30:05,684.684 INFO    ] No existing commands found in stream
[2026-06-12 06:30:10,693.693 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 06:30:10,696.696 INFO    ] Waiting 1.74 seconds before fallback handling...
[2026-06-12 06:30:12,821.821 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 06:30:12,823.823 INFO    ] Checking for system updates...
[2026-06-12 06:30:12,843.843 INFO    ] 200
[2026-06-12 06:30:12,845.845 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:30:12,875.875 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 06:30:12,876.876 INFO    ] No update needed
[2026-06-12 06:30:12,878.878 INFO    ] Checking for camera pi updates...
[2026-06-12 06:30:12,899.899 INFO    ] 200
[2026-06-12 06:30:12,900.900 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:30:12,923.923 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 06:30:12,960.960 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 06:30:12,961.961 INFO    ] No camera update needed
[2026-06-12 06:30:12,962.962 INFO    ] Script finished. Safe exiting...
[2026-06-12 06:30:12,964.964 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 06:30:12,966.966 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 06:30:12,969.969 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 06:30:15,008.008 INFO    ] ================================================
[2026-06-12 06:30:15,023.023 INFO    ] Launching Daemon at Fri Jun 12 06:30:15 IST 2026
[2026-06-12 06:30:15,034.034 INFO    ] ================================================
[2026-06-12 06:30:15,404.404 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 06:30:15
[2026-06-12 06:30:15,736.736 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 06:30:15,885.885 INFO    ] Initializing speech engine...
[2026-06-12 06:30:15,891.891 INFO    ] 2026-06-12 06:30:15
[2026-06-12 06:30:16,098.098 INFO    ] 2026-06-12 06:30:16
[2026-06-12 06:30:16,126.126 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 06:30:16,311.311 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 06:30:16,320.320 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 06:30:16,467.467 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 06:30:16,519.519 INFO    ] time= 12/06/2026 06:30:16
[2026-06-12 06:30:16,542.542 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 06:30:16,549.549 INFO    ] Checking for existing commands in stream...
[2026-06-12 06:30:16,615.615 INFO    ] No existing commands found in stream
[2026-06-12 06:30:21,630.630 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 06:30:21,633.633 INFO    ] Waiting 0.78 seconds before fallback handling...
[2026-06-12 06:30:22,779.779 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 06:30:22,781.781 INFO    ] Checking for system updates...
[2026-06-12 06:30:22,802.802 INFO    ] 200
[2026-06-12 06:30:22,803.803 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:30:22,835.835 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 06:30:22,837.837 INFO    ] No update needed
[2026-06-12 06:30:22,838.838 INFO    ] Checking for camera pi updates...
[2026-06-12 06:30:22,861.861 INFO    ] 200
[2026-06-12 06:30:22,863.863 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:30:22,886.886 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 06:30:22,925.925 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 06:30:22,927.927 INFO    ] No camera update needed
[2026-06-12 06:30:22,928.928 INFO    ] Script finished. Safe exiting...
[2026-06-12 06:30:22,930.930 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 06:30:22,933.933 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 06:30:22,936.936 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 06:30:24,976.976 INFO    ] ================================================
[2026-06-12 06:30:24,991.991 INFO    ] Launching Daemon at Fri Jun 12 06:30:24 IST 2026
[2026-06-12 06:30:25,002.002 INFO    ] ================================================
[2026-06-12 06:30:25,341.341 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 06:30:25
[2026-06-12 06:30:25,654.654 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 06:30:25,792.792 INFO    ] Initializing speech engine...
[2026-06-12 06:30:25,801.801 INFO    ] 2026-06-12 06:30:25
[2026-06-12 06:30:26,006.006 INFO    ] 2026-06-12 06:30:25
[2026-06-12 06:30:26,036.036 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 06:30:26,221.221 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 06:30:26,224.224 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 06:30:26,361.361 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 06:30:26,420.420 INFO    ] time= 12/06/2026 06:30:26
[2026-06-12 06:30:26,453.453 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 06:30:26,459.459 INFO    ] Checking for existing commands in stream...
[2026-06-12 06:30:26,527.527 INFO    ] No existing commands found in stream
[2026-06-12 06:30:31,536.536 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 06:30:31,539.539 INFO    ] Waiting 0.39 seconds before fallback handling...
[2026-06-12 06:30:32,231.231 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 06:30:32,232.232 INFO    ] Checking for system updates...
[2026-06-12 06:30:32,253.253 INFO    ] 200
[2026-06-12 06:30:32,254.254 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:30:32,285.285 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 06:30:32,287.287 INFO    ] No update needed
[2026-06-12 06:30:32,288.288 INFO    ] Checking for camera pi updates...
[2026-06-12 06:30:32,310.310 INFO    ] 200
[2026-06-12 06:30:32,313.313 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:30:32,354.354 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 06:30:32,383.383 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 06:30:32,386.386 INFO    ] No camera update needed
[2026-06-12 06:30:32,389.389 INFO    ] Script finished. Safe exiting...
[2026-06-12 06:30:32,392.392 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 06:30:32,398.398 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 06:30:32,407.407 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 06:30:34,441.441 INFO    ] ================================================
[2026-06-12 06:30:34,460.460 INFO    ] Launching Daemon at Fri Jun 12 06:30:34 IST 2026
[2026-06-12 06:30:34,471.471 INFO    ] ================================================
[2026-06-12 06:30:34,816.816 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 06:30:34
[2026-06-12 06:30:35,143.143 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 06:30:35,311.311 INFO    ] Initializing speech engine...
[2026-06-12 06:30:35,321.321 INFO    ] 2026-06-12 06:30:35
[2026-06-12 06:30:35,556.556 INFO    ] 2026-06-12 06:30:35
[2026-06-12 06:30:35,585.585 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 06:30:35,773.773 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 06:30:35,776.776 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 06:30:35,915.915 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 06:30:35,984.984 INFO    ] time= 12/06/2026 06:30:35
[2026-06-12 06:30:36,008.008 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 06:30:36,015.015 INFO    ] Checking for existing commands in stream...
[2026-06-12 06:30:36,083.083 INFO    ] No existing commands found in stream
[2026-06-12 06:30:41,095.095 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 06:30:41,100.100 INFO    ] Waiting 3.61 seconds before fallback handling...
[2026-06-12 06:30:45,054.054 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 06:30:45,055.055 INFO    ] Checking for system updates...
[2026-06-12 06:30:45,076.076 INFO    ] 200
[2026-06-12 06:30:45,078.078 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:30:45,108.108 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 06:30:45,109.109 INFO    ] No update needed
[2026-06-12 06:30:45,111.111 INFO    ] Checking for camera pi updates...
[2026-06-12 06:30:45,131.131 INFO    ] 200
[2026-06-12 06:30:45,132.132 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:30:45,156.156 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 06:30:45,193.193 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 06:30:45,194.194 INFO    ] No camera update needed
[2026-06-12 06:30:45,195.195 INFO    ] Script finished. Safe exiting...
[2026-06-12 06:30:45,197.197 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 06:30:45,200.200 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 06:30:45,203.203 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 06:30:47,242.242 INFO    ] ================================================
[2026-06-12 06:30:47,257.257 INFO    ] Launching Daemon at Fri Jun 12 06:30:47 IST 2026
[2026-06-12 06:30:47,274.274 INFO    ] ================================================
[2026-06-12 06:30:47,617.617 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 06:30:47
[2026-06-12 06:30:47,933.933 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 06:30:48,077.077 INFO    ] Initializing speech engine...
[2026-06-12 06:30:48,082.082 INFO    ] 2026-06-12 06:30:48
[2026-06-12 06:30:48,287.287 INFO    ] 2026-06-12 06:30:48
[2026-06-12 06:30:48,315.315 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 06:30:48,501.501 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 06:30:48,510.510 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 06:30:48,643.643 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 06:30:48,707.707 INFO    ] time= 12/06/2026 06:30:48
[2026-06-12 06:30:48,734.734 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 06:30:48,741.741 INFO    ] Checking for existing commands in stream...
[2026-06-12 06:30:48,808.808 INFO    ] No existing commands found in stream
[2026-06-12 06:30:53,816.816 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 06:30:53,819.819 INFO    ] Waiting 3.48 seconds before fallback handling...
[2026-06-12 06:30:57,690.690 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 06:30:57,692.692 INFO    ] Checking for system updates...
[2026-06-12 06:30:57,712.712 INFO    ] 200
[2026-06-12 06:30:57,713.713 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:30:57,743.743 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 06:30:57,745.745 INFO    ] No update needed
[2026-06-12 06:30:57,746.746 INFO    ] Checking for camera pi updates...
[2026-06-12 06:30:57,765.765 INFO    ] 200
[2026-06-12 06:30:57,767.767 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:30:57,791.791 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 06:30:57,829.829 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 06:30:57,830.830 INFO    ] No camera update needed
[2026-06-12 06:30:57,831.831 INFO    ] Script finished. Safe exiting...
[2026-06-12 06:30:57,833.833 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 06:30:57,836.836 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 06:30:57,838.838 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 06:30:59,878.878 INFO    ] ================================================
[2026-06-12 06:30:59,894.894 INFO    ] Launching Daemon at Fri Jun 12 06:30:59 IST 2026
[2026-06-12 06:30:59,905.905 INFO    ] ================================================
[2026-06-12 06:31:00,249.249 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 06:31:00
[2026-06-12 06:31:00,581.581 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 06:31:00,718.718 INFO    ] Initializing speech engine...
[2026-06-12 06:31:00,726.726 INFO    ] 2026-06-12 06:31:00
[2026-06-12 06:31:00,942.942 INFO    ] 2026-06-12 06:31:00
[2026-06-12 06:31:00,972.972 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 06:31:01,155.155 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 06:31:01,165.165 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 06:31:01,291.291 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 06:31:01,353.353 INFO    ] time= 12/06/2026 06:31:01
[2026-06-12 06:31:01,385.385 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 06:31:01,391.391 INFO    ] Checking for existing commands in stream...
[2026-06-12 06:31:01,458.458 INFO    ] No existing commands found in stream
[2026-06-12 06:31:06,472.472 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 06:31:06,475.475 INFO    ] Waiting 0.71 seconds before fallback handling...
[2026-06-12 06:31:07,534.534 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 06:31:07,535.535 INFO    ] Checking for system updates...
[2026-06-12 06:31:07,557.557 INFO    ] 200
[2026-06-12 06:31:07,559.559 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:31:07,591.591 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 06:31:07,593.593 INFO    ] No update needed
[2026-06-12 06:31:07,594.594 INFO    ] Checking for camera pi updates...
[2026-06-12 06:31:07,616.616 INFO    ] 200
[2026-06-12 06:31:07,617.617 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:31:07,641.641 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 06:31:07,678.678 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 06:31:07,679.679 INFO    ] No camera update needed
[2026-06-12 06:31:07,681.681 INFO    ] Script finished. Safe exiting...
[2026-06-12 06:31:07,682.682 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 06:31:07,685.685 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 06:31:07,688.688 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 06:31:09,729.729 INFO    ] ================================================
[2026-06-12 06:31:09,745.745 INFO    ] Launching Daemon at Fri Jun 12 06:31:09 IST 2026
[2026-06-12 06:31:09,756.756 INFO    ] ================================================
[2026-06-12 06:31:10,107.107 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 06:31:10
[2026-06-12 06:31:10,420.420 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 06:31:10,554.554 INFO    ] Initializing speech engine...
[2026-06-12 06:31:10,558.558 INFO    ] 2026-06-12 06:31:10
[2026-06-12 06:31:10,786.786 INFO    ] 2026-06-12 06:31:10
[2026-06-12 06:31:10,816.816 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 06:31:11,012.012 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 06:31:11,015.015 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 06:31:11,153.153 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 06:31:11,215.215 INFO    ] time= 12/06/2026 06:31:11
[2026-06-12 06:31:11,250.250 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 06:31:11,261.261 INFO    ] Checking for existing commands in stream...
[2026-06-12 06:31:11,336.336 INFO    ] No existing commands found in stream
[2026-06-12 06:31:16,346.346 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 06:31:16,349.349 INFO    ] Waiting 1.71 seconds before fallback handling...
[2026-06-12 06:31:18,431.431 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 06:31:18,432.432 INFO    ] Checking for system updates...
[2026-06-12 06:31:18,453.453 INFO    ] 200
[2026-06-12 06:31:18,454.454 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:31:18,485.485 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 06:31:18,486.486 INFO    ] No update needed
[2026-06-12 06:31:18,488.488 INFO    ] Checking for camera pi updates...
[2026-06-12 06:31:18,507.507 INFO    ] 200
[2026-06-12 06:31:18,508.508 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:31:18,532.532 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 06:31:18,571.571 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 06:31:18,573.573 INFO    ] No camera update needed
[2026-06-12 06:31:18,574.574 INFO    ] Script finished. Safe exiting...
[2026-06-12 06:31:18,575.575 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 06:31:18,578.578 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 06:31:18,581.581 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 06:31:20,621.621 INFO    ] ================================================
[2026-06-12 06:31:20,636.636 INFO    ] Launching Daemon at Fri Jun 12 06:31:20 IST 2026
[2026-06-12 06:31:20,647.647 INFO    ] ================================================
[2026-06-12 06:31:20,983.983 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 06:31:20
[2026-06-12 06:31:21,296.296 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 06:31:21,440.440 INFO    ] Initializing speech engine...
[2026-06-12 06:31:21,445.445 INFO    ] 2026-06-12 06:31:21
[2026-06-12 06:31:21,652.652 INFO    ] 2026-06-12 06:31:21
[2026-06-12 06:31:21,680.680 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 06:31:21,865.865 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 06:31:21,869.869 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 06:31:22,004.004 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 06:31:22,065.065 INFO    ] time= 12/06/2026 06:31:22
[2026-06-12 06:31:22,098.098 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 06:31:22,100.100 INFO    ] Checking for existing commands in stream...
[2026-06-12 06:31:22,171.171 INFO    ] No existing commands found in stream
[2026-06-12 06:31:27,182.182 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 06:31:27,184.184 INFO    ] Waiting 2.99 seconds before fallback handling...
[2026-06-12 06:31:30,530.530 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 06:31:30,531.531 INFO    ] Checking for system updates...
[2026-06-12 06:31:30,553.553 INFO    ] 200
[2026-06-12 06:31:30,554.554 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:31:30,584.584 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 06:31:30,586.586 INFO    ] No update needed
[2026-06-12 06:31:30,587.587 INFO    ] Checking for camera pi updates...
[2026-06-12 06:31:30,607.607 INFO    ] 200
[2026-06-12 06:31:30,608.608 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:31:30,632.632 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 06:31:30,773.773 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 06:31:30,774.774 INFO    ] No camera update needed
[2026-06-12 06:31:30,776.776 INFO    ] Script finished. Safe exiting...
[2026-06-12 06:31:30,777.777 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 06:31:30,780.780 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 06:31:30,783.783 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 06:31:32,823.823 INFO    ] ================================================
[2026-06-12 06:31:32,840.840 INFO    ] Launching Daemon at Fri Jun 12 06:31:32 IST 2026
[2026-06-12 06:31:32,852.852 INFO    ] ================================================
[2026-06-12 06:31:33,178.178 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 06:31:33
[2026-06-12 06:31:33,500.500 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 06:31:33,638.638 INFO    ] Initializing speech engine...
[2026-06-12 06:31:33,646.646 INFO    ] 2026-06-12 06:31:33
[2026-06-12 06:31:33,860.860 INFO    ] 2026-06-12 06:31:33
[2026-06-12 06:31:33,890.890 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 06:31:34,074.074 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 06:31:34,077.077 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 06:31:34,235.235 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 06:31:34,283.283 INFO    ] time= 12/06/2026 06:31:34
[2026-06-12 06:31:34,305.305 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 06:31:34,312.312 INFO    ] Checking for existing commands in stream...
[2026-06-12 06:31:34,426.426 INFO    ] No existing commands found in stream
[2026-06-12 06:31:39,437.437 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 06:31:39,592.592 INFO    ] Waiting 2.64 seconds before fallback handling...
[2026-06-12 06:31:42,621.621 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 06:31:42,623.623 INFO    ] Checking for system updates...
[2026-06-12 06:31:42,644.644 INFO    ] 200
[2026-06-12 06:31:42,645.645 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:31:42,676.676 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 06:31:42,677.677 INFO    ] No update needed
[2026-06-12 06:31:42,679.679 INFO    ] Checking for camera pi updates...
[2026-06-12 06:31:42,699.699 INFO    ] 200
[2026-06-12 06:31:42,700.700 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:31:42,724.724 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 06:31:42,765.765 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 06:31:42,767.767 INFO    ] No camera update needed
[2026-06-12 06:31:42,768.768 INFO    ] Script finished. Safe exiting...
[2026-06-12 06:31:42,770.770 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 06:31:42,773.773 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 06:31:42,776.776 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 06:31:44,816.816 INFO    ] ================================================
[2026-06-12 06:31:44,842.842 INFO    ] Launching Daemon at Fri Jun 12 06:31:44 IST 2026
[2026-06-12 06:31:44,854.854 INFO    ] ================================================
[2026-06-12 06:31:45,217.217 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 06:31:45
[2026-06-12 06:31:45,553.553 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 06:31:45,705.705 INFO    ] Initializing speech engine...
[2026-06-12 06:31:45,709.709 INFO    ] 2026-06-12 06:31:45
[2026-06-12 06:31:45,920.920 INFO    ] 2026-06-12 06:31:45
[2026-06-12 06:31:45,950.950 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 06:31:46,136.136 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 06:31:46,147.147 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 06:31:46,275.275 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 06:31:46,338.338 INFO    ] time= 12/06/2026 06:31:46
[2026-06-12 06:31:46,371.371 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 06:31:46,378.378 INFO    ] Checking for existing commands in stream...
[2026-06-12 06:31:46,445.445 INFO    ] No existing commands found in stream
[2026-06-12 06:31:51,460.460 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 06:31:51,463.463 INFO    ] Waiting 3.94 seconds before fallback handling...
[2026-06-12 06:31:55,780.780 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 06:31:55,782.782 INFO    ] Checking for system updates...
[2026-06-12 06:31:55,803.803 INFO    ] 200
[2026-06-12 06:31:55,805.805 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:31:55,836.836 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 06:31:55,837.837 INFO    ] No update needed
[2026-06-12 06:31:55,839.839 INFO    ] Checking for camera pi updates...
[2026-06-12 06:31:55,859.859 INFO    ] 200
[2026-06-12 06:31:55,861.861 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:31:55,884.884 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 06:31:55,920.920 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 06:31:55,921.921 INFO    ] No camera update needed
[2026-06-12 06:31:55,923.923 INFO    ] Script finished. Safe exiting...
[2026-06-12 06:31:55,924.924 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 06:31:55,927.927 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 06:31:55,930.930 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 06:31:57,970.970 INFO    ] ================================================
[2026-06-12 06:31:57,985.985 INFO    ] Launching Daemon at Fri Jun 12 06:31:57 IST 2026
[2026-06-12 06:31:58,996.996 INFO    ] ================================================
[2026-06-12 06:31:58,330.330 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 06:31:58
[2026-06-12 06:31:58,647.647 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 06:31:58,790.790 INFO    ] Initializing speech engine...
[2026-06-12 06:31:58,796.796 INFO    ] 2026-06-12 06:31:58
[2026-06-12 06:31:58,998.998 INFO    ] 2026-06-12 06:31:58
[2026-06-12 06:31:59,028.028 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 06:31:59,218.218 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 06:31:59,223.223 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 06:31:59,407.407 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 06:31:59,441.441 INFO    ] time= 12/06/2026 06:31:59
[2026-06-12 06:31:59,447.447 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 06:31:59,448.448 INFO    ] Checking for existing commands in stream...
[2026-06-12 06:31:59,516.516 INFO    ] No existing commands found in stream
[2026-06-12 06:32:04,525.525 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 06:32:04,528.528 INFO    ] Waiting 1.34 seconds before fallback handling...
[2026-06-12 06:32:06,234.234 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 06:32:06,235.235 INFO    ] Checking for system updates...
[2026-06-12 06:32:06,256.256 INFO    ] 200
[2026-06-12 06:32:06,257.257 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:32:06,290.290 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 06:32:06,292.292 INFO    ] No update needed
[2026-06-12 06:32:06,293.293 INFO    ] Checking for camera pi updates...
[2026-06-12 06:32:06,312.312 INFO    ] 200
[2026-06-12 06:32:06,314.314 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:32:06,339.339 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 06:32:06,378.378 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 06:32:06,379.379 INFO    ] No camera update needed
[2026-06-12 06:32:06,381.381 INFO    ] Script finished. Safe exiting...
[2026-06-12 06:32:06,382.382 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 06:32:06,385.385 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 06:32:06,387.387 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 06:32:08,427.427 INFO    ] ================================================
[2026-06-12 06:32:08,442.442 INFO    ] Launching Daemon at Fri Jun 12 06:32:08 IST 2026
[2026-06-12 06:32:08,453.453 INFO    ] ================================================
[2026-06-12 06:32:08,827.827 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 06:32:08
[2026-06-12 06:32:09,146.146 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 06:32:09,285.285 INFO    ] Initializing speech engine...
[2026-06-12 06:32:09,295.295 INFO    ] 2026-06-12 06:32:09
[2026-06-12 06:32:09,499.499 INFO    ] 2026-06-12 06:32:09
[2026-06-12 06:32:09,528.528 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 06:32:09,713.713 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 06:32:09,723.723 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 06:32:09,851.851 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 06:32:09,919.919 INFO    ] time= 12/06/2026 06:32:09
[2026-06-12 06:32:09,943.943 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 06:32:09,949.949 INFO    ] Checking for existing commands in stream...
[2026-06-12 06:32:10,017.017 INFO    ] No existing commands found in stream
[2026-06-12 06:32:15,042.042 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 06:32:15,045.045 INFO    ] Waiting 2.22 seconds before fallback handling...
[2026-06-12 06:32:17,632.632 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 06:32:17,634.634 INFO    ] Checking for system updates...
[2026-06-12 06:32:17,654.654 INFO    ] 200
[2026-06-12 06:32:17,656.656 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:32:17,686.686 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 06:32:17,687.687 INFO    ] No update needed
[2026-06-12 06:32:17,689.689 INFO    ] Checking for camera pi updates...
[2026-06-12 06:32:17,708.708 INFO    ] 200
[2026-06-12 06:32:17,709.709 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:32:17,733.733 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 06:32:17,770.770 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 06:32:17,772.772 INFO    ] No camera update needed
[2026-06-12 06:32:17,773.773 INFO    ] Script finished. Safe exiting...
[2026-06-12 06:32:17,774.774 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 06:32:17,777.777 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 06:32:17,780.780 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 06:32:19,819.819 INFO    ] ================================================
[2026-06-12 06:32:19,835.835 INFO    ] Launching Daemon at Fri Jun 12 06:32:19 IST 2026
[2026-06-12 06:32:19,845.845 INFO    ] ================================================
[2026-06-12 06:32:20,234.234 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 06:32:20
[2026-06-12 06:32:20,570.570 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 06:32:20,722.722 INFO    ] Initializing speech engine...
[2026-06-12 06:32:20,725.725 INFO    ] 2026-06-12 06:32:20
[2026-06-12 06:32:20,935.935 INFO    ] 2026-06-12 06:32:20
[2026-06-12 06:32:20,964.964 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 06:32:21,088.088 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 06:32:21,151.151 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 06:32:21,290.290 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 06:32:21,350.350 INFO    ] time= 12/06/2026 06:32:21
[2026-06-12 06:32:21,383.383 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 06:32:21,389.389 INFO    ] Checking for existing commands in stream...
[2026-06-12 06:32:21,457.457 INFO    ] No existing commands found in stream
[2026-06-12 06:32:26,471.471 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 06:32:26,475.475 INFO    ] Waiting 2.44 seconds before fallback handling...
[2026-06-12 06:32:29,301.301 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 06:32:29,303.303 INFO    ] Checking for system updates...
[2026-06-12 06:32:29,324.324 INFO    ] 200
[2026-06-12 06:32:29,325.325 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:32:29,357.357 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 06:32:29,358.358 INFO    ] No update needed
[2026-06-12 06:32:29,360.360 INFO    ] Checking for camera pi updates...
[2026-06-12 06:32:29,382.382 INFO    ] 200
[2026-06-12 06:32:29,383.383 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:32:29,406.406 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 06:32:29,447.447 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 06:32:29,448.448 INFO    ] No camera update needed
[2026-06-12 06:32:29,450.450 INFO    ] Script finished. Safe exiting...
[2026-06-12 06:32:29,451.451 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 06:32:29,454.454 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 06:32:29,457.457 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 06:32:31,495.495 INFO    ] ================================================
[2026-06-12 06:32:31,511.511 INFO    ] Launching Daemon at Fri Jun 12 06:32:31 IST 2026
[2026-06-12 06:32:31,522.522 INFO    ] ================================================
[2026-06-12 06:32:31,879.879 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 06:32:31
[2026-06-12 06:32:32,224.224 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 06:32:32,376.376 INFO    ] Initializing speech engine...
[2026-06-12 06:32:32,381.381 INFO    ] 2026-06-12 06:32:32
[2026-06-12 06:32:32,591.591 INFO    ] 2026-06-12 06:32:32
[2026-06-12 06:32:32,642.642 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 06:32:32,807.807 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 06:32:32,850.850 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 06:32:33,014.014 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 06:32:33,061.061 INFO    ] time= 12/06/2026 06:32:33
[2026-06-12 06:32:33,100.100 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 06:32:33,124.124 INFO    ] Checking for existing commands in stream...
[2026-06-12 06:32:33,220.220 INFO    ] No existing commands found in stream
[2026-06-12 06:32:38,234.234 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 06:32:38,237.237 INFO    ] Waiting 2.69 seconds before fallback handling...
[2026-06-12 06:32:41,299.299 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 06:32:41,301.301 INFO    ] Checking for system updates...
[2026-06-12 06:32:41,322.322 INFO    ] 200
[2026-06-12 06:32:41,324.324 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:32:41,355.355 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 06:32:41,357.357 INFO    ] No update needed
[2026-06-12 06:32:41,358.358 INFO    ] Checking for camera pi updates...
[2026-06-12 06:32:41,378.378 INFO    ] 200
[2026-06-12 06:32:41,379.379 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:32:41,403.403 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 06:32:41,439.439 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 06:32:41,440.440 INFO    ] No camera update needed
[2026-06-12 06:32:41,442.442 INFO    ] Script finished. Safe exiting...
[2026-06-12 06:32:41,443.443 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 06:32:41,446.446 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 06:32:41,449.449 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 06:32:43,489.489 INFO    ] ================================================
[2026-06-12 06:32:43,505.505 INFO    ] Launching Daemon at Fri Jun 12 06:32:43 IST 2026
[2026-06-12 06:32:43,516.516 INFO    ] ================================================
[2026-06-12 06:32:43,886.886 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 06:32:43
[2026-06-12 06:32:44,204.204 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 06:32:44,333.333 INFO    ] Initializing speech engine...
[2026-06-12 06:32:44,337.337 INFO    ] 2026-06-12 06:32:44
[2026-06-12 06:32:44,542.542 INFO    ] 2026-06-12 06:32:44
[2026-06-12 06:32:44,569.569 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 06:32:44,777.777 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 06:32:44,781.781 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 06:32:44,913.913 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 06:32:44,958.958 INFO    ] time= 12/06/2026 06:32:44
[2026-06-12 06:32:44,993.993 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 06:32:45,014.014 INFO    ] Checking for existing commands in stream...
[2026-06-12 06:32:45,088.088 INFO    ] No existing commands found in stream
[2026-06-12 06:32:50,102.102 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 06:32:50,105.105 INFO    ] Waiting 2.16 seconds before fallback handling...
[2026-06-12 06:32:52,643.643 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 06:32:52,644.644 INFO    ] Checking for system updates...
[2026-06-12 06:32:52,665.665 INFO    ] 200
[2026-06-12 06:32:52,667.667 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:32:52,697.697 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 06:32:52,699.699 INFO    ] No update needed
[2026-06-12 06:32:52,700.700 INFO    ] Checking for camera pi updates...
[2026-06-12 06:32:52,721.721 INFO    ] 200
[2026-06-12 06:32:52,723.723 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:32:52,749.749 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 06:32:52,790.790 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 06:32:52,791.791 INFO    ] No camera update needed
[2026-06-12 06:32:52,792.792 INFO    ] Script finished. Safe exiting...
[2026-06-12 06:32:52,794.794 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 06:32:52,797.797 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 06:32:52,800.800 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 06:32:54,840.840 INFO    ] ================================================
[2026-06-12 06:32:54,855.855 INFO    ] Launching Daemon at Fri Jun 12 06:32:54 IST 2026
[2026-06-12 06:32:54,866.866 INFO    ] ================================================
[2026-06-12 06:32:55,229.229 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 06:32:55
[2026-06-12 06:32:55,541.541 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 06:32:55,670.670 INFO    ] Initializing speech engine...
[2026-06-12 06:32:55,675.675 INFO    ] 2026-06-12 06:32:55
[2026-06-12 06:32:55,891.891 INFO    ] 2026-06-12 06:32:55
[2026-06-12 06:32:55,920.920 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 06:32:56,104.104 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 06:32:56,113.113 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 06:32:56,243.243 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 06:32:56,311.311 INFO    ] time= 12/06/2026 06:32:56
[2026-06-12 06:32:56,335.335 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 06:32:56,341.341 INFO    ] Checking for existing commands in stream...
[2026-06-12 06:32:56,409.409 INFO    ] No existing commands found in stream
[2026-06-12 06:33:01,437.437 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 06:33:01,439.439 INFO    ] Waiting 3.25 seconds before fallback handling...
[2026-06-12 06:33:05,086.086 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 06:33:05,087.087 INFO    ] Checking for system updates...
[2026-06-12 06:33:05,107.107 INFO    ] 200
[2026-06-12 06:33:05,109.109 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:33:05,138.138 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 06:33:05,140.140 INFO    ] No update needed
[2026-06-12 06:33:05,141.141 INFO    ] Checking for camera pi updates...
[2026-06-12 06:33:05,161.161 INFO    ] 200
[2026-06-12 06:33:05,162.162 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:33:05,185.185 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 06:33:05,225.225 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 06:33:05,226.226 INFO    ] No camera update needed
[2026-06-12 06:33:05,228.228 INFO    ] Script finished. Safe exiting...
[2026-06-12 06:33:05,229.229 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 06:33:05,232.232 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 06:33:05,235.235 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 06:33:07,267.267 INFO    ] ================================================
[2026-06-12 06:33:07,275.275 INFO    ] Launching Daemon at Fri Jun 12 06:33:07 IST 2026
[2026-06-12 06:33:07,281.281 INFO    ] ================================================
[2026-06-12 06:33:07,632.632 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 06:33:07
[2026-06-12 06:33:07,945.945 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 06:33:08,089.089 INFO    ] Initializing speech engine...
[2026-06-12 06:33:08,099.099 INFO    ] 2026-06-12 06:33:08
[2026-06-12 06:33:08,308.308 INFO    ] 2026-06-12 06:33:08
[2026-06-12 06:33:08,338.338 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 06:33:08,521.521 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 06:33:08,531.531 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 06:33:08,677.677 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 06:33:08,730.730 INFO    ] time= 12/06/2026 06:33:08
[2026-06-12 06:33:08,753.753 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 06:33:08,759.759 INFO    ] Checking for existing commands in stream...
[2026-06-12 06:33:08,825.825 INFO    ] No existing commands found in stream
[2026-06-12 06:33:13,835.835 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 06:33:13,838.838 INFO    ] Waiting 1.75 seconds before fallback handling...
[2026-06-12 06:33:15,968.968 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 06:33:15,970.970 INFO    ] Checking for system updates...
[2026-06-12 06:33:15,991.991 INFO    ] 200
[2026-06-12 06:33:15,992.992 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:33:16,023.023 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 06:33:16,024.024 INFO    ] No update needed
[2026-06-12 06:33:16,025.025 INFO    ] Checking for camera pi updates...
[2026-06-12 06:33:16,046.046 INFO    ] 200
[2026-06-12 06:33:16,048.048 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:33:16,074.074 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 06:33:16,113.113 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 06:33:16,114.114 INFO    ] No camera update needed
[2026-06-12 06:33:16,116.116 INFO    ] Script finished. Safe exiting...
[2026-06-12 06:33:16,117.117 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 06:33:16,120.120 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 06:33:16,123.123 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 06:33:18,164.164 INFO    ] ================================================
[2026-06-12 06:33:18,178.178 INFO    ] Launching Daemon at Fri Jun 12 06:33:18 IST 2026
[2026-06-12 06:33:18,189.189 INFO    ] ================================================
[2026-06-12 06:33:18,527.527 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 06:33:18
[2026-06-12 06:33:18,843.843 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 06:33:18,975.975 INFO    ] Initializing speech engine...
[2026-06-12 06:33:18,978.978 INFO    ] 2026-06-12 06:33:18
[2026-06-12 06:33:19,194.194 INFO    ] 2026-06-12 06:33:19
[2026-06-12 06:33:19,223.223 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 06:33:19,406.406 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 06:33:19,409.409 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 06:33:19,544.544 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 06:33:19,610.610 INFO    ] time= 12/06/2026 06:33:19
[2026-06-12 06:33:19,634.634 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 06:33:19,641.641 INFO    ] Checking for existing commands in stream...
[2026-06-12 06:33:19,707.707 INFO    ] No existing commands found in stream
[2026-06-12 06:33:24,716.716 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 06:33:24,719.719 INFO    ] Waiting 2.04 seconds before fallback handling...
[2026-06-12 06:33:27,134.134 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 06:33:27,135.135 INFO    ] Checking for system updates...
[2026-06-12 06:33:27,156.156 INFO    ] 200
[2026-06-12 06:33:27,157.157 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:33:27,189.189 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 06:33:27,191.191 INFO    ] No update needed
[2026-06-12 06:33:27,193.193 INFO    ] Checking for camera pi updates...
[2026-06-12 06:33:27,213.213 INFO    ] 200
[2026-06-12 06:33:27,214.214 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:33:27,239.239 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 06:33:27,276.276 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 06:33:27,278.278 INFO    ] No camera update needed
[2026-06-12 06:33:27,279.279 INFO    ] Script finished. Safe exiting...
[2026-06-12 06:33:27,280.280 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 06:33:27,283.283 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 06:33:27,286.286 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 06:33:29,325.325 INFO    ] ================================================
[2026-06-12 06:33:29,340.340 INFO    ] Launching Daemon at Fri Jun 12 06:33:29 IST 2026
[2026-06-12 06:33:29,351.351 INFO    ] ================================================
[2026-06-12 06:33:29,684.684 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 06:33:29
[2026-06-12 06:33:30,002.002 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 06:33:30,136.136 INFO    ] Initializing speech engine...
[2026-06-12 06:33:30,141.141 INFO    ] 2026-06-12 06:33:30
[2026-06-12 06:33:30,368.368 INFO    ] 2026-06-12 06:33:30
[2026-06-12 06:33:30,399.399 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 06:33:30,597.597 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 06:33:30,606.606 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 06:33:30,738.738 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 06:33:30,799.799 INFO    ] time= 12/06/2026 06:33:30
[2026-06-12 06:33:30,843.843 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 06:33:30,845.845 INFO    ] Checking for existing commands in stream...
[2026-06-12 06:33:30,922.922 INFO    ] No existing commands found in stream
[2026-06-12 06:33:35,931.931 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 06:33:35,934.934 INFO    ] Waiting 3.87 seconds before fallback handling...
[2026-06-12 06:33:40,173.173 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 06:33:40,175.175 INFO    ] Checking for system updates...
[2026-06-12 06:33:40,196.196 INFO    ] 200
[2026-06-12 06:33:40,197.197 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:33:40,230.230 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 06:33:40,231.231 INFO    ] No update needed
[2026-06-12 06:33:40,233.233 INFO    ] Checking for camera pi updates...
[2026-06-12 06:33:40,252.252 INFO    ] 200
[2026-06-12 06:33:40,253.253 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:33:40,279.279 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 06:33:40,316.316 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 06:33:40,317.317 INFO    ] No camera update needed
[2026-06-12 06:33:40,318.318 INFO    ] Script finished. Safe exiting...
[2026-06-12 06:33:40,319.319 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 06:33:40,323.323 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 06:33:40,325.325 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 06:33:42,364.364 INFO    ] ================================================
[2026-06-12 06:33:42,379.379 INFO    ] Launching Daemon at Fri Jun 12 06:33:42 IST 2026
[2026-06-12 06:33:42,390.390 INFO    ] ================================================
[2026-06-12 06:33:42,762.762 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 06:33:42
[2026-06-12 06:33:43,096.096 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 06:33:43,245.245 INFO    ] Initializing speech engine...
[2026-06-12 06:33:43,250.250 INFO    ] 2026-06-12 06:33:43
[2026-06-12 06:33:43,462.462 INFO    ] 2026-06-12 06:33:43
[2026-06-12 06:33:43,491.491 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 06:33:43,678.678 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 06:33:43,682.682 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 06:33:43,820.820 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 06:33:43,888.888 INFO    ] time= 12/06/2026 06:33:43
[2026-06-12 06:33:43,912.912 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 06:33:43,919.919 INFO    ] Checking for existing commands in stream...
[2026-06-12 06:33:43,987.987 INFO    ] No existing commands found in stream
[2026-06-12 06:33:49,001.001 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 06:33:49,005.005 INFO    ] Waiting 1.89 seconds before fallback handling...
[2026-06-12 06:33:51,304.304 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 06:33:51,306.306 INFO    ] Checking for system updates...
[2026-06-12 06:33:51,327.327 INFO    ] 200
[2026-06-12 06:33:51,329.329 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:33:51,359.359 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 06:33:51,361.361 INFO    ] No update needed
[2026-06-12 06:33:51,362.362 INFO    ] Checking for camera pi updates...
[2026-06-12 06:33:51,382.382 INFO    ] 200
[2026-06-12 06:33:51,384.384 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:33:51,409.409 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 06:33:51,453.453 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 06:33:51,455.455 INFO    ] No camera update needed
[2026-06-12 06:33:51,456.456 INFO    ] Script finished. Safe exiting...
[2026-06-12 06:33:51,458.458 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 06:33:51,461.461 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 06:33:51,464.464 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 06:33:53,503.503 INFO    ] ================================================
[2026-06-12 06:33:53,518.518 INFO    ] Launching Daemon at Fri Jun 12 06:33:53 IST 2026
[2026-06-12 06:33:53,530.530 INFO    ] ================================================
[2026-06-12 06:33:53,891.891 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 06:33:53
[2026-06-12 06:33:54,202.202 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 06:33:54,332.332 INFO    ] Initializing speech engine...
[2026-06-12 06:33:54,340.340 INFO    ] 2026-06-12 06:33:54
[2026-06-12 06:33:54,554.554 INFO    ] 2026-06-12 06:33:54
[2026-06-12 06:33:54,583.583 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 06:33:54,766.766 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 06:33:54,770.770 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 06:33:54,927.927 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 06:33:54,981.981 INFO    ] time= 12/06/2026 06:33:54
[2026-06-12 06:33:54,997.997 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 06:33:55,003.003 INFO    ] Checking for existing commands in stream...
[2026-06-12 06:33:55,069.069 INFO    ] No existing commands found in stream
[2026-06-12 06:34:00,078.078 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 06:34:00,081.081 INFO    ] Waiting 3.76 seconds before fallback handling...
[2026-06-12 06:34:04,205.205 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 06:34:04,206.206 INFO    ] Checking for system updates...
[2026-06-12 06:34:04,226.226 INFO    ] 200
[2026-06-12 06:34:04,228.228 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:34:04,260.260 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 06:34:04,262.262 INFO    ] No update needed
[2026-06-12 06:34:04,263.263 INFO    ] Checking for camera pi updates...
[2026-06-12 06:34:04,282.282 INFO    ] 200
[2026-06-12 06:34:04,283.283 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:34:04,306.306 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 06:34:04,344.344 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 06:34:04,345.345 INFO    ] No camera update needed
[2026-06-12 06:34:04,347.347 INFO    ] Script finished. Safe exiting...
[2026-06-12 06:34:04,348.348 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 06:34:04,351.351 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 06:34:04,354.354 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 06:34:06,395.395 INFO    ] ================================================
[2026-06-12 06:34:06,411.411 INFO    ] Launching Daemon at Fri Jun 12 06:34:06 IST 2026
[2026-06-12 06:34:06,424.424 INFO    ] ================================================
[2026-06-12 06:34:06,738.738 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 06:34:06
[2026-06-12 06:34:07,055.055 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 06:34:07,199.199 INFO    ] Initializing speech engine...
[2026-06-12 06:34:07,204.204 INFO    ] 2026-06-12 06:34:07
[2026-06-12 06:34:07,409.409 INFO    ] 2026-06-12 06:34:07
[2026-06-12 06:34:07,439.439 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 06:34:07,623.623 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 06:34:07,633.633 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 06:34:07,773.773 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 06:34:07,831.831 INFO    ] time= 12/06/2026 06:34:07
[2026-06-12 06:34:07,854.854 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 06:34:07,860.860 INFO    ] Checking for existing commands in stream...
[2026-06-12 06:34:07,927.927 INFO    ] No existing commands found in stream
[2026-06-12 06:34:12,940.940 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 06:34:12,942.942 INFO    ] Waiting 0.01 seconds before fallback handling...
[2026-06-12 06:34:13,301.301 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 06:34:13,303.303 INFO    ] Checking for system updates...
[2026-06-12 06:34:13,327.327 INFO    ] 200
[2026-06-12 06:34:13,329.329 INFO    ] {"msg": "Status of machine", "state": "STATE_HEALTH_CHECK", "status": true}
[2026-06-12 06:34:13,331.331 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping update check
[2026-06-12 06:34:13,333.333 INFO    ] Checking for camera pi updates...
[2026-06-12 06:34:13,359.359 INFO    ] 200
[2026-06-12 06:34:13,360.360 INFO    ] {"msg": "Status of machine", "state": "STATE_HEALTH_CHECK", "status": true}
[2026-06-12 06:34:13,362.362 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping camera update check
[2026-06-12 06:34:13,363.363 INFO    ] Script finished. Safe exiting...
[2026-06-12 06:34:13,365.365 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 06:34:13,368.368 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 06:34:13,371.371 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 06:34:15,397.397 INFO    ] ================================================
[2026-06-12 06:34:15,406.406 INFO    ] Launching Daemon at Fri Jun 12 06:34:15 IST 2026
[2026-06-12 06:34:15,413.413 INFO    ] ================================================
[2026-06-12 06:34:15,731.731 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 06:34:15
[2026-06-12 06:34:16,063.063 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 06:34:16,207.207 INFO    ] Initializing speech engine...
[2026-06-12 06:34:16,212.212 INFO    ] 2026-06-12 06:34:16
[2026-06-12 06:34:16,414.414 INFO    ] 2026-06-12 06:34:16
[2026-06-12 06:34:16,443.443 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 06:34:16,569.569 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 06:34:16,622.622 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 06:34:16,780.780 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 06:34:16,827.827 INFO    ] time= 12/06/2026 06:34:16
[2026-06-12 06:34:16,867.867 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 06:34:16,890.890 INFO    ] Checking for existing commands in stream...
[2026-06-12 06:34:16,966.966 INFO    ] No existing commands found in stream
[2026-06-12 06:34:21,977.977 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 06:34:21,980.980 INFO    ] Waiting 2.71 seconds before fallback handling...
[2026-06-12 06:34:25,044.044 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 06:34:25,046.046 INFO    ] Checking for system updates...
[2026-06-12 06:34:25,066.066 INFO    ] 200
[2026-06-12 06:34:25,068.068 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:34:25,098.098 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 06:34:25,100.100 INFO    ] No update needed
[2026-06-12 06:34:25,101.101 INFO    ] Checking for camera pi updates...
[2026-06-12 06:34:25,120.120 INFO    ] 200
[2026-06-12 06:34:25,122.122 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:34:25,147.147 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 06:34:25,179.179 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 06:34:25,181.181 INFO    ] No camera update needed
[2026-06-12 06:34:25,182.182 INFO    ] Script finished. Safe exiting...
[2026-06-12 06:34:25,184.184 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 06:34:25,186.186 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 06:34:25,189.189 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 06:34:27,229.229 INFO    ] ================================================
[2026-06-12 06:34:27,244.244 INFO    ] Launching Daemon at Fri Jun 12 06:34:27 IST 2026
[2026-06-12 06:34:27,256.256 INFO    ] ================================================
[2026-06-12 06:34:27,621.621 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 06:34:27
[2026-06-12 06:34:27,937.937 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 06:34:28,081.081 INFO    ] Initializing speech engine...
[2026-06-12 06:34:28,086.086 INFO    ] 2026-06-12 06:34:28
[2026-06-12 06:34:28,292.292 INFO    ] 2026-06-12 06:34:28
[2026-06-12 06:34:28,320.320 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 06:34:28,505.505 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 06:34:28,515.515 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 06:34:28,664.664 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 06:34:28,712.712 INFO    ] time= 12/06/2026 06:34:28
[2026-06-12 06:34:28,734.734 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 06:34:28,741.741 INFO    ] Checking for existing commands in stream...
[2026-06-12 06:34:28,807.807 INFO    ] No existing commands found in stream
[2026-06-12 06:34:33,832.832 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 06:34:33,834.834 INFO    ] Waiting 1.13 seconds before fallback handling...
[2026-06-12 06:34:35,317.317 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 06:34:35,319.319 INFO    ] Checking for system updates...
[2026-06-12 06:34:35,340.340 INFO    ] 200
[2026-06-12 06:34:35,341.341 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:34:35,371.371 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 06:34:35,373.373 INFO    ] No update needed
[2026-06-12 06:34:35,374.374 INFO    ] Checking for camera pi updates...
[2026-06-12 06:34:35,394.394 INFO    ] 200
[2026-06-12 06:34:35,395.395 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:34:35,418.418 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 06:34:35,459.459 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 06:34:35,460.460 INFO    ] No camera update needed
[2026-06-12 06:34:35,462.462 INFO    ] Script finished. Safe exiting...
[2026-06-12 06:34:35,463.463 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 06:34:35,466.466 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 06:34:35,469.469 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 06:34:37,509.509 INFO    ] ================================================
[2026-06-12 06:34:37,524.524 INFO    ] Launching Daemon at Fri Jun 12 06:34:37 IST 2026
[2026-06-12 06:34:37,536.536 INFO    ] ================================================
[2026-06-12 06:34:37,906.906 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 06:34:37
[2026-06-12 06:34:38,225.225 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 06:34:38,362.362 INFO    ] Initializing speech engine...
[2026-06-12 06:34:38,370.370 INFO    ] 2026-06-12 06:34:38
[2026-06-12 06:34:38,598.598 INFO    ] 2026-06-12 06:34:38
[2026-06-12 06:34:38,630.630 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 06:34:38,832.832 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 06:34:38,835.835 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 06:34:38,977.977 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 06:34:39,034.034 INFO    ] time= 12/06/2026 06:34:38
[2026-06-12 06:34:39,085.085 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 06:34:39,087.087 INFO    ] Checking for existing commands in stream...
[2026-06-12 06:34:39,163.163 INFO    ] No existing commands found in stream
[2026-06-12 06:34:44,174.174 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 06:34:44,176.176 INFO    ] Waiting 0.31 seconds before fallback handling...
[2026-06-12 06:34:46,488.488 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 06:34:46,491.491 INFO    ] Checking for system updates...
[2026-06-12 06:34:46,528.528 INFO    ] 200
[2026-06-12 06:34:46,531.531 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:34:46,586.586 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 06:34:46,589.589 INFO    ] No update needed
[2026-06-12 06:34:46,591.591 INFO    ] Checking for camera pi updates...
[2026-06-12 06:34:46,626.626 INFO    ] 200
[2026-06-12 06:34:46,629.629 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:34:46,655.655 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 06:34:46,690.690 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 06:34:46,692.692 INFO    ] No camera update needed
[2026-06-12 06:34:46,693.693 INFO    ] Script finished. Safe exiting...
[2026-06-12 06:34:46,694.694 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 06:34:46,697.697 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 06:34:46,700.700 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 06:34:48,738.738 INFO    ] ================================================
[2026-06-12 06:34:48,753.753 INFO    ] Launching Daemon at Fri Jun 12 06:34:48 IST 2026
[2026-06-12 06:34:48,764.764 INFO    ] ================================================
[2026-06-12 06:34:49,126.126 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 06:34:49
[2026-06-12 06:34:49,438.438 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 06:34:49,568.568 INFO    ] Initializing speech engine...
[2026-06-12 06:34:49,572.572 INFO    ] 2026-06-12 06:34:49
[2026-06-12 06:34:49,766.766 INFO    ] 2026-06-12 06:34:49
[2026-06-12 06:34:49,799.799 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 06:34:49,949.949 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 06:34:50,013.013 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 06:34:50,155.155 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 06:34:50,209.209 INFO    ] time= 12/06/2026 06:34:50
[2026-06-12 06:34:50,245.245 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 06:34:50,250.250 INFO    ] Checking for existing commands in stream...
[2026-06-12 06:34:50,324.324 INFO    ] No existing commands found in stream
[2026-06-12 06:34:55,332.332 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 06:34:55,336.336 INFO    ] Waiting 1.82 seconds before fallback handling...
[2026-06-12 06:34:57,544.544 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 06:34:57,546.546 INFO    ] Checking for system updates...
[2026-06-12 06:34:57,567.567 INFO    ] 200
[2026-06-12 06:34:57,568.568 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:34:57,598.598 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 06:34:57,599.599 INFO    ] No update needed
[2026-06-12 06:34:57,601.601 INFO    ] Checking for camera pi updates...
[2026-06-12 06:34:57,620.620 INFO    ] 200
[2026-06-12 06:34:57,622.622 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:34:57,646.646 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 06:34:57,688.688 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 06:34:57,690.690 INFO    ] No camera update needed
[2026-06-12 06:34:57,691.691 INFO    ] Script finished. Safe exiting...
[2026-06-12 06:34:57,692.692 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 06:34:57,695.695 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 06:34:57,698.698 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 06:34:59,751.751 INFO    ] ================================================
[2026-06-12 06:34:59,767.767 INFO    ] Launching Daemon at Fri Jun 12 06:34:59 IST 2026
[2026-06-12 06:34:59,778.778 INFO    ] ================================================
[2026-06-12 06:35:00,101.101 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 06:35:00
[2026-06-12 06:35:00,417.417 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 06:35:00,556.556 INFO    ] Initializing speech engine...
[2026-06-12 06:35:00,571.571 INFO    ] 2026-06-12 06:35:00
[2026-06-12 06:35:00,789.789 INFO    ] 2026-06-12 06:35:00
[2026-06-12 06:35:00,819.819 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 06:35:01,020.020 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 06:35:01,023.023 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 06:35:01,171.171 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 06:35:01,230.230 INFO    ] time= 12/06/2026 06:35:01
[2026-06-12 06:35:01,261.261 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 06:35:01,273.273 INFO    ] Checking for existing commands in stream...
[2026-06-12 06:35:01,351.351 INFO    ] No existing commands found in stream
[2026-06-12 06:35:06,380.380 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 06:35:06,383.383 INFO    ] Waiting 0.13 seconds before fallback handling...
[2026-06-12 06:35:06,848.848 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 06:35:06,849.849 INFO    ] Checking for system updates...
[2026-06-12 06:35:06,870.870 INFO    ] 200
[2026-06-12 06:35:06,872.872 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:35:06,902.902 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 06:35:06,903.903 INFO    ] No update needed
[2026-06-12 06:35:06,905.905 INFO    ] Checking for camera pi updates...
[2026-06-12 06:35:06,924.924 INFO    ] 200
[2026-06-12 06:35:06,925.925 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:35:06,949.949 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 06:35:06,993.993 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 06:35:06,995.995 INFO    ] No camera update needed
[2026-06-12 06:35:06,996.996 INFO    ] Script finished. Safe exiting...
[2026-06-12 06:35:06,997.997 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 06:35:07,001.001 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 06:35:07,003.003 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 06:35:09,042.042 INFO    ] ================================================
[2026-06-12 06:35:09,057.057 INFO    ] Launching Daemon at Fri Jun 12 06:35:09 IST 2026
[2026-06-12 06:35:09,068.068 INFO    ] ================================================
[2026-06-12 06:35:09,415.415 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 06:35:09
[2026-06-12 06:35:09,733.733 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 06:35:09,871.871 INFO    ] Initializing speech engine...
[2026-06-12 06:35:09,882.882 INFO    ] 2026-06-12 06:35:09
[2026-06-12 06:35:10,153.153 INFO    ] 2026-06-12 06:35:10
[2026-06-12 06:35:10,184.184 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 06:35:10,317.317 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 06:35:10,375.375 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 06:35:10,528.528 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 06:35:10,571.571 INFO    ] time= 12/06/2026 06:35:10
[2026-06-12 06:35:10,615.615 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 06:35:10,638.638 INFO    ] Checking for existing commands in stream...
[2026-06-12 06:35:10,741.741 INFO    ] No existing commands found in stream
[2026-06-12 06:35:15,751.751 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 06:35:15,753.753 INFO    ] Waiting 0.83 seconds before fallback handling...
[2026-06-12 06:35:16,976.976 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 06:35:16,978.978 INFO    ] Checking for system updates...
[2026-06-12 06:35:16,999.999 INFO    ] 200
[2026-06-12 06:35:17,001.001 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:35:17,031.031 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 06:35:17,032.032 INFO    ] No update needed
[2026-06-12 06:35:17,034.034 INFO    ] Checking for camera pi updates...
[2026-06-12 06:35:17,053.053 INFO    ] 200
[2026-06-12 06:35:17,054.054 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:35:17,080.080 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 06:35:17,112.112 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 06:35:17,114.114 INFO    ] No camera update needed
[2026-06-12 06:35:17,115.115 INFO    ] Script finished. Safe exiting...
[2026-06-12 06:35:17,116.116 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 06:35:17,119.119 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 06:35:17,122.122 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 06:35:19,160.160 INFO    ] ================================================
[2026-06-12 06:35:19,175.175 INFO    ] Launching Daemon at Fri Jun 12 06:35:19 IST 2026
[2026-06-12 06:35:19,186.186 INFO    ] ================================================
[2026-06-12 06:35:19,548.548 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 06:35:19
[2026-06-12 06:35:19,888.888 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 06:35:20,042.042 INFO    ] Initializing speech engine...
[2026-06-12 06:35:20,047.047 INFO    ] 2026-06-12 06:35:20
[2026-06-12 06:35:20,256.256 INFO    ] 2026-06-12 06:35:20
[2026-06-12 06:35:20,285.285 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 06:35:20,473.473 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 06:35:20,483.483 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 06:35:20,619.619 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 06:35:20,683.683 INFO    ] time= 12/06/2026 06:35:20
[2026-06-12 06:35:20,706.706 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 06:35:20,712.712 INFO    ] Checking for existing commands in stream...
[2026-06-12 06:35:20,781.781 INFO    ] No existing commands found in stream
[2026-06-12 06:35:25,795.795 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 06:35:25,798.798 INFO    ] Waiting 1.50 seconds before fallback handling...
[2026-06-12 06:35:27,687.687 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 06:35:27,688.688 INFO    ] Checking for system updates...
[2026-06-12 06:35:27,709.709 INFO    ] 200
[2026-06-12 06:35:27,711.711 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:35:27,743.743 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 06:35:27,744.744 INFO    ] No update needed
[2026-06-12 06:35:27,746.746 INFO    ] Checking for camera pi updates...
[2026-06-12 06:35:27,765.765 INFO    ] 200
[2026-06-12 06:35:27,766.766 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:35:27,792.792 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 06:35:27,824.824 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 06:35:27,825.825 INFO    ] No camera update needed
[2026-06-12 06:35:27,827.827 INFO    ] Script finished. Safe exiting...
[2026-06-12 06:35:27,828.828 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 06:35:27,831.831 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 06:35:27,834.834 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 06:35:29,873.873 INFO    ] ================================================
[2026-06-12 06:35:29,887.887 INFO    ] Launching Daemon at Fri Jun 12 06:35:29 IST 2026
[2026-06-12 06:35:29,898.898 INFO    ] ================================================
[2026-06-12 06:35:30,256.256 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 06:35:30
[2026-06-12 06:35:30,572.572 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 06:35:30,709.709 INFO    ] Initializing speech engine...
[2026-06-12 06:35:30,719.719 INFO    ] 2026-06-12 06:35:30
[2026-06-12 06:35:30,923.923 INFO    ] 2026-06-12 06:35:30
[2026-06-12 06:35:30,953.953 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 06:35:31,138.138 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 06:35:31,141.141 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 06:35:31,278.278 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 06:35:31,342.342 INFO    ] time= 12/06/2026 06:35:31
[2026-06-12 06:35:31,370.370 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 06:35:31,372.372 INFO    ] Checking for existing commands in stream...
[2026-06-12 06:35:31,467.467 INFO    ] No existing commands found in stream
[2026-06-12 06:35:36,481.481 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 06:35:36,483.483 INFO    ] Waiting 2.11 seconds before fallback handling...
[2026-06-12 06:35:38,967.967 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 06:35:38,969.969 INFO    ] Checking for system updates...
[2026-06-12 06:35:38,990.990 INFO    ] 200
[2026-06-12 06:35:38,991.991 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:35:39,024.024 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 06:35:39,025.025 INFO    ] No update needed
[2026-06-12 06:35:39,027.027 INFO    ] Checking for camera pi updates...
[2026-06-12 06:35:39,046.046 INFO    ] 200
[2026-06-12 06:35:39,048.048 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:35:39,073.073 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 06:35:39,213.213 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 06:35:39,214.214 INFO    ] No camera update needed
[2026-06-12 06:35:39,215.215 INFO    ] Script finished. Safe exiting...
[2026-06-12 06:35:39,216.216 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 06:35:39,219.219 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 06:35:39,222.222 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 06:35:41,262.262 INFO    ] ================================================
[2026-06-12 06:35:41,279.279 INFO    ] Launching Daemon at Fri Jun 12 06:35:41 IST 2026
[2026-06-12 06:35:41,290.290 INFO    ] ================================================
[2026-06-12 06:35:41,641.641 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 06:35:41
[2026-06-12 06:35:41,983.983 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 06:35:42,123.123 INFO    ] Initializing speech engine...
[2026-06-12 06:35:42,136.136 INFO    ] 2026-06-12 06:35:42
[2026-06-12 06:35:42,347.347 INFO    ] 2026-06-12 06:35:42
[2026-06-12 06:35:42,377.377 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 06:35:42,560.560 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 06:35:42,571.571 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 06:35:42,698.698 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 06:35:42,767.767 INFO    ] time= 12/06/2026 06:35:42
[2026-06-12 06:35:42,791.791 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 06:35:42,798.798 INFO    ] Checking for existing commands in stream...
[2026-06-12 06:35:42,865.865 INFO    ] No existing commands found in stream
[2026-06-12 06:35:47,879.879 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 06:35:47,883.883 INFO    ] Waiting 2.15 seconds before fallback handling...
[2026-06-12 06:35:50,426.426 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 06:35:50,427.427 INFO    ] Checking for system updates...
[2026-06-12 06:35:50,448.448 INFO    ] 200
[2026-06-12 06:35:50,449.449 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:35:50,480.480 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 06:35:50,482.482 INFO    ] No update needed
[2026-06-12 06:35:50,483.483 INFO    ] Checking for camera pi updates...
[2026-06-12 06:35:50,505.505 INFO    ] 200
[2026-06-12 06:35:50,507.507 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:35:50,534.534 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 06:35:50,571.571 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 06:35:50,573.573 INFO    ] No camera update needed
[2026-06-12 06:35:50,574.574 INFO    ] Script finished. Safe exiting...
[2026-06-12 06:35:50,575.575 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 06:35:50,578.578 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 06:35:50,581.581 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 06:35:52,621.621 INFO    ] ================================================
[2026-06-12 06:35:52,637.637 INFO    ] Launching Daemon at Fri Jun 12 06:35:52 IST 2026
[2026-06-12 06:35:52,648.648 INFO    ] ================================================
[2026-06-12 06:35:52,973.973 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 06:35:52
[2026-06-12 06:35:53,284.284 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 06:35:53,416.416 INFO    ] Initializing speech engine...
[2026-06-12 06:35:53,421.421 INFO    ] 2026-06-12 06:35:53
[2026-06-12 06:35:53,651.651 INFO    ] 2026-06-12 06:35:53
[2026-06-12 06:35:53,682.682 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 06:35:53,825.825 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 06:35:53,882.882 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 06:35:54,026.026 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 06:35:54,072.072 INFO    ] time= 12/06/2026 06:35:54
[2026-06-12 06:35:54,111.111 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 06:35:54,135.135 INFO    ] Checking for existing commands in stream...
[2026-06-12 06:35:54,210.210 INFO    ] No existing commands found in stream
[2026-06-12 06:35:59,221.221 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 06:35:59,224.224 INFO    ] Waiting 0.99 seconds before fallback handling...
[2026-06-12 06:36:00,547.547 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 06:36:00,548.548 INFO    ] Checking for system updates...
[2026-06-12 06:36:00,569.569 INFO    ] 200
[2026-06-12 06:36:00,570.570 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:36:00,601.601 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 06:36:00,602.602 INFO    ] No update needed
[2026-06-12 06:36:00,603.603 INFO    ] Checking for camera pi updates...
[2026-06-12 06:36:00,622.622 INFO    ] 200
[2026-06-12 06:36:00,624.624 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:36:00,649.649 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 06:36:00,685.685 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 06:36:00,686.686 INFO    ] No camera update needed
[2026-06-12 06:36:00,688.688 INFO    ] Script finished. Safe exiting...
[2026-06-12 06:36:00,689.689 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 06:36:00,692.692 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 06:36:00,695.695 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 06:36:02,732.732 INFO    ] ================================================
[2026-06-12 06:36:02,744.744 INFO    ] Launching Daemon at Fri Jun 12 06:36:02 IST 2026
[2026-06-12 06:36:02,758.758 INFO    ] ================================================
[2026-06-12 06:36:03,096.096 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 06:36:03
[2026-06-12 06:36:03,412.412 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 06:36:03,544.544 INFO    ] Initializing speech engine...
[2026-06-12 06:36:03,552.552 INFO    ] 2026-06-12 06:36:03
[2026-06-12 06:36:03,764.764 INFO    ] 2026-06-12 06:36:03
[2026-06-12 06:36:03,792.792 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 06:36:03,914.914 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 06:36:03,976.976 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 06:36:04,114.114 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 06:36:04,178.178 INFO    ] time= 12/06/2026 06:36:04
[2026-06-12 06:36:04,205.205 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 06:36:04,211.211 INFO    ] Checking for existing commands in stream...
[2026-06-12 06:36:04,302.302 INFO    ] No existing commands found in stream
[2026-06-12 06:36:09,334.334 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 06:36:09,337.337 INFO    ] Waiting 2.99 seconds before fallback handling...
[2026-06-12 06:36:12,729.729 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 06:36:12,730.730 INFO    ] Checking for system updates...
[2026-06-12 06:36:12,752.752 INFO    ] 200
[2026-06-12 06:36:12,753.753 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:36:12,784.784 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 06:36:12,785.785 INFO    ] No update needed
[2026-06-12 06:36:12,787.787 INFO    ] Checking for camera pi updates...
[2026-06-12 06:36:12,810.810 INFO    ] 200
[2026-06-12 06:36:12,811.811 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:36:12,834.834 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 06:36:12,869.869 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 06:36:12,871.871 INFO    ] No camera update needed
[2026-06-12 06:36:12,872.872 INFO    ] Script finished. Safe exiting...
[2026-06-12 06:36:12,873.873 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 06:36:12,876.876 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 06:36:12,879.879 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 06:36:14,920.920 INFO    ] ================================================
[2026-06-12 06:36:14,935.935 INFO    ] Launching Daemon at Fri Jun 12 06:36:14 IST 2026
[2026-06-12 06:36:14,946.946 INFO    ] ================================================
[2026-06-12 06:36:15,291.291 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 06:36:15
[2026-06-12 06:36:15,602.602 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 06:36:15,734.734 INFO    ] Initializing speech engine...
[2026-06-12 06:36:15,742.742 INFO    ] 2026-06-12 06:36:15
[2026-06-12 06:36:15,955.955 INFO    ] 2026-06-12 06:36:15
[2026-06-12 06:36:15,983.983 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 06:36:16,172.172 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 06:36:16,182.182 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 06:36:16,307.307 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 06:36:16,363.363 INFO    ] time= 12/06/2026 06:36:16
[2026-06-12 06:36:16,407.407 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 06:36:16,409.409 INFO    ] Checking for existing commands in stream...
[2026-06-12 06:36:16,482.482 INFO    ] No existing commands found in stream
[2026-06-12 06:36:21,496.496 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 06:36:21,499.499 INFO    ] Waiting 0.07 seconds before fallback handling...
[2026-06-12 06:36:21,919.919 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 06:36:21,921.921 INFO    ] Checking for system updates...
[2026-06-12 06:36:21,942.942 INFO    ] 200
[2026-06-12 06:36:21,943.943 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:36:21,974.974 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 06:36:21,975.975 INFO    ] No update needed
[2026-06-12 06:36:21,976.976 INFO    ] Checking for camera pi updates...
[2026-06-12 06:36:21,999.999 INFO    ] 200
[2026-06-12 06:36:22,001.001 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:36:22,024.024 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 06:36:22,069.069 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 06:36:22,070.070 INFO    ] No camera update needed
[2026-06-12 06:36:22,071.071 INFO    ] Script finished. Safe exiting...
[2026-06-12 06:36:22,073.073 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 06:36:22,076.076 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 06:36:22,078.078 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 06:36:24,118.118 INFO    ] ================================================
[2026-06-12 06:36:24,134.134 INFO    ] Launching Daemon at Fri Jun 12 06:36:24 IST 2026
[2026-06-12 06:36:24,145.145 INFO    ] ================================================
[2026-06-12 06:36:24,469.469 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 06:36:24
[2026-06-12 06:36:24,781.781 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 06:36:24,914.914 INFO    ] Initializing speech engine...
[2026-06-12 06:36:24,918.918 INFO    ] 2026-06-12 06:36:24
[2026-06-12 06:36:25,121.121 INFO    ] 2026-06-12 06:36:25
[2026-06-12 06:36:25,155.155 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 06:36:25,313.313 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 06:36:25,357.357 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 06:36:25,524.524 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 06:36:25,576.576 INFO    ] time= 12/06/2026 06:36:25
[2026-06-12 06:36:25,621.621 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 06:36:25,633.633 INFO    ] Checking for existing commands in stream...
[2026-06-12 06:36:25,708.708 INFO    ] No existing commands found in stream
[2026-06-12 06:36:30,719.719 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 06:36:30,722.722 INFO    ] Waiting 2.86 seconds before fallback handling...
[2026-06-12 06:36:33,948.948 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 06:36:33,949.949 INFO    ] Checking for system updates...
[2026-06-12 06:36:33,970.970 INFO    ] 200
[2026-06-12 06:36:33,972.972 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:36:34,002.002 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 06:36:34,003.003 INFO    ] No update needed
[2026-06-12 06:36:34,005.005 INFO    ] Checking for camera pi updates...
[2026-06-12 06:36:34,024.024 INFO    ] 200
[2026-06-12 06:36:34,025.025 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:36:34,048.048 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 06:36:34,086.086 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 06:36:34,087.087 INFO    ] No camera update needed
[2026-06-12 06:36:34,088.088 INFO    ] Script finished. Safe exiting...
[2026-06-12 06:36:34,090.090 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 06:36:34,093.093 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 06:36:34,095.095 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 06:36:36,134.134 INFO    ] ================================================
[2026-06-12 06:36:36,149.149 INFO    ] Launching Daemon at Fri Jun 12 06:36:36 IST 2026
[2026-06-12 06:36:36,160.160 INFO    ] ================================================
[2026-06-12 06:36:36,511.511 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 06:36:36
[2026-06-12 06:36:36,825.825 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 06:36:36,964.964 INFO    ] Initializing speech engine...
[2026-06-12 06:36:36,974.974 INFO    ] 2026-06-12 06:36:36
[2026-06-12 06:36:37,178.178 INFO    ] 2026-06-12 06:36:37
[2026-06-12 06:36:37,206.206 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 06:36:37,389.389 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 06:36:37,399.399 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 06:36:37,529.529 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 06:36:37,596.596 INFO    ] time= 12/06/2026 06:36:37
[2026-06-12 06:36:37,620.620 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 06:36:37,626.626 INFO    ] Checking for existing commands in stream...
[2026-06-12 06:36:37,693.693 INFO    ] No existing commands found in stream
[2026-06-12 06:36:42,717.717 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 06:36:42,720.720 INFO    ] Waiting 2.08 seconds before fallback handling...
[2026-06-12 06:36:45,170.170 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 06:36:45,172.172 INFO    ] Checking for system updates...
[2026-06-12 06:36:45,193.193 INFO    ] 200
[2026-06-12 06:36:45,195.195 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:36:45,227.227 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 06:36:45,228.228 INFO    ] No update needed
[2026-06-12 06:36:45,229.229 INFO    ] Checking for camera pi updates...
[2026-06-12 06:36:45,250.250 INFO    ] 200
[2026-06-12 06:36:45,251.251 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:36:45,278.278 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 06:36:45,307.307 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 06:36:45,309.309 INFO    ] No camera update needed
[2026-06-12 06:36:45,310.310 INFO    ] Script finished. Safe exiting...
[2026-06-12 06:36:45,312.312 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 06:36:45,315.315 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 06:36:45,318.318 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 06:36:47,358.358 INFO    ] ================================================
[2026-06-12 06:36:47,374.374 INFO    ] Launching Daemon at Fri Jun 12 06:36:47 IST 2026
[2026-06-12 06:36:47,385.385 INFO    ] ================================================
[2026-06-12 06:36:47,735.735 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 06:36:47
[2026-06-12 06:36:48,056.056 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 06:36:48,200.200 INFO    ] Initializing speech engine...
[2026-06-12 06:36:48,205.205 INFO    ] 2026-06-12 06:36:48
[2026-06-12 06:36:48,408.408 INFO    ] 2026-06-12 06:36:48
[2026-06-12 06:36:48,436.436 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 06:36:48,619.619 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 06:36:48,623.623 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 06:36:48,757.757 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 06:36:48,824.824 INFO    ] time= 12/06/2026 06:36:48
[2026-06-12 06:36:48,847.847 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 06:36:48,849.849 INFO    ] Checking for existing commands in stream...
[2026-06-12 06:36:48,920.920 INFO    ] No existing commands found in stream
[2026-06-12 06:36:53,934.934 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 06:36:53,937.937 INFO    ] Waiting 3.15 seconds before fallback handling...
[2026-06-12 06:36:57,460.460 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 06:36:57,462.462 INFO    ] Checking for system updates...
[2026-06-12 06:36:57,482.482 INFO    ] 200
[2026-06-12 06:36:57,484.484 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:36:57,517.517 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 06:36:57,518.518 INFO    ] No update needed
[2026-06-12 06:36:57,519.519 INFO    ] Checking for camera pi updates...
[2026-06-12 06:36:57,539.539 INFO    ] 200
[2026-06-12 06:36:57,540.540 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:36:57,565.565 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 06:36:57,602.602 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 06:36:57,603.603 INFO    ] No camera update needed
[2026-06-12 06:36:57,604.604 INFO    ] Script finished. Safe exiting...
[2026-06-12 06:36:57,606.606 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 06:36:57,609.609 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 06:36:57,611.611 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 06:36:59,650.650 INFO    ] ================================================
[2026-06-12 06:36:59,665.665 INFO    ] Launching Daemon at Fri Jun 12 06:36:59 IST 2026
[2026-06-12 06:36:59,676.676 INFO    ] ================================================
[2026-06-12 06:37:00,034.034 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 06:37:00
[2026-06-12 06:37:00,346.346 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 06:37:00,478.478 INFO    ] Initializing speech engine...
[2026-06-12 06:37:00,482.482 INFO    ] 2026-06-12 06:37:00
[2026-06-12 06:37:00,711.711 INFO    ] 2026-06-12 06:37:00
[2026-06-12 06:37:00,741.741 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 06:37:00,872.872 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 06:37:00,920.920 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 06:37:01,078.078 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 06:37:01,130.130 INFO    ] time= 12/06/2026 06:37:01
[2026-06-12 06:37:01,174.174 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 06:37:01,194.194 INFO    ] Checking for existing commands in stream...
[2026-06-12 06:37:01,259.259 INFO    ] No existing commands found in stream
[2026-06-12 06:37:06,293.293 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 06:37:06,296.296 INFO    ] Waiting 0.39 seconds before fallback handling...
[2026-06-12 06:37:07,079.079 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 06:37:07,081.081 INFO    ] Checking for system updates...
[2026-06-12 06:37:07,101.101 INFO    ] 200
[2026-06-12 06:37:07,103.103 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:37:07,133.133 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 06:37:07,134.134 INFO    ] No update needed
[2026-06-12 06:37:07,135.135 INFO    ] Checking for camera pi updates...
[2026-06-12 06:37:07,154.154 INFO    ] 200
[2026-06-12 06:37:07,156.156 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:37:07,180.180 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 06:37:07,220.220 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 06:37:07,222.222 INFO    ] No camera update needed
[2026-06-12 06:37:07,223.223 INFO    ] Script finished. Safe exiting...
[2026-06-12 06:37:07,224.224 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 06:37:07,227.227 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 06:37:07,230.230 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 06:37:09,270.270 INFO    ] ================================================
[2026-06-12 06:37:09,285.285 INFO    ] Launching Daemon at Fri Jun 12 06:37:09 IST 2026
[2026-06-12 06:37:09,296.296 INFO    ] ================================================
[2026-06-12 06:37:09,655.655 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 06:37:09
[2026-06-12 06:37:09,965.965 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 06:37:10,107.107 INFO    ] Initializing speech engine...
[2026-06-12 06:37:10,112.112 INFO    ] 2026-06-12 06:37:10
[2026-06-12 06:37:10,318.318 INFO    ] 2026-06-12 06:37:10
[2026-06-12 06:37:10,347.347 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 06:37:10,529.529 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 06:37:10,533.533 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 06:37:10,666.666 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 06:37:10,722.722 INFO    ] time= 12/06/2026 06:37:10
[2026-06-12 06:37:10,759.759 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 06:37:10,761.761 INFO    ] Checking for existing commands in stream...
[2026-06-12 06:37:10,832.832 INFO    ] No existing commands found in stream
[2026-06-12 06:37:15,846.846 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 06:37:15,848.848 INFO    ] Waiting 1.27 seconds before fallback handling...
[2026-06-12 06:37:17,480.480 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 06:37:17,481.481 INFO    ] Checking for system updates...
[2026-06-12 06:37:17,503.503 INFO    ] 200
[2026-06-12 06:37:17,504.504 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:37:17,535.535 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 06:37:17,537.537 INFO    ] No update needed
[2026-06-12 06:37:17,538.538 INFO    ] Checking for camera pi updates...
[2026-06-12 06:37:17,559.559 INFO    ] 200
[2026-06-12 06:37:17,560.560 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:37:17,586.586 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 06:37:17,625.625 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 06:37:17,627.627 INFO    ] No camera update needed
[2026-06-12 06:37:17,628.628 INFO    ] Script finished. Safe exiting...
[2026-06-12 06:37:17,629.629 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 06:37:17,633.633 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 06:37:17,636.636 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 06:37:19,676.676 INFO    ] ================================================
[2026-06-12 06:37:19,692.692 INFO    ] Launching Daemon at Fri Jun 12 06:37:19 IST 2026
[2026-06-12 06:37:19,703.703 INFO    ] ================================================
[2026-06-12 06:37:20,053.053 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 06:37:20
[2026-06-12 06:37:20,371.371 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 06:37:20,507.507 INFO    ] Initializing speech engine...
[2026-06-12 06:37:20,511.511 INFO    ] 2026-06-12 06:37:20
[2026-06-12 06:37:20,742.742 INFO    ] 2026-06-12 06:37:20
[2026-06-12 06:37:20,772.772 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 06:37:20,969.969 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 06:37:20,972.972 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 06:37:21,111.111 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 06:37:21,172.172 INFO    ] time= 12/06/2026 06:37:21
[2026-06-12 06:37:21,206.206 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 06:37:21,218.218 INFO    ] Checking for existing commands in stream...
[2026-06-12 06:37:21,294.294 INFO    ] No existing commands found in stream
[2026-06-12 06:37:26,318.318 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 06:37:26,321.321 INFO    ] Waiting 2.84 seconds before fallback handling...
[2026-06-12 06:37:29,522.522 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 06:37:29,523.523 INFO    ] Checking for system updates...
[2026-06-12 06:37:29,546.546 INFO    ] 200
[2026-06-12 06:37:29,547.547 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:37:29,581.581 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 06:37:29,582.582 INFO    ] No update needed
[2026-06-12 06:37:29,584.584 INFO    ] Checking for camera pi updates...
[2026-06-12 06:37:29,605.605 INFO    ] 200
[2026-06-12 06:37:29,606.606 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:37:29,633.633 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 06:37:29,674.674 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 06:37:29,675.675 INFO    ] No camera update needed
[2026-06-12 06:37:29,676.676 INFO    ] Script finished. Safe exiting...
[2026-06-12 06:37:29,678.678 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 06:37:29,681.681 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 06:37:29,684.684 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 06:37:31,717.717 INFO    ] ================================================
[2026-06-12 06:37:31,727.727 INFO    ] Launching Daemon at Fri Jun 12 06:37:31 IST 2026
[2026-06-12 06:37:31,733.733 INFO    ] ================================================
[2026-06-12 06:37:32,054.054 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 06:37:32
[2026-06-12 06:37:32,375.375 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 06:37:32,519.519 INFO    ] Initializing speech engine...
[2026-06-12 06:37:32,524.524 INFO    ] 2026-06-12 06:37:32
[2026-06-12 06:37:32,727.727 INFO    ] 2026-06-12 06:37:32
[2026-06-12 06:37:32,755.755 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 06:37:32,938.938 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 06:37:32,947.947 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 06:37:33,076.076 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 06:37:33,143.143 INFO    ] time= 12/06/2026 06:37:33
[2026-06-12 06:37:33,167.167 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 06:37:33,174.174 INFO    ] Checking for existing commands in stream...
[2026-06-12 06:37:33,264.264 INFO    ] No existing commands found in stream
[2026-06-12 06:37:38,273.273 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 06:37:38,275.275 INFO    ] Waiting 2.18 seconds before fallback handling...
[2026-06-12 06:37:40,860.860 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 06:37:40,861.861 INFO    ] Checking for system updates...
[2026-06-12 06:37:40,883.883 INFO    ] 200
[2026-06-12 06:37:40,885.885 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:37:40,915.915 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 06:37:40,916.916 INFO    ] No update needed
[2026-06-12 06:37:40,917.917 INFO    ] Checking for camera pi updates...
[2026-06-12 06:37:40,936.936 INFO    ] 200
[2026-06-12 06:37:40,938.938 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:37:40,961.961 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 06:37:41,099.099 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 06:37:41,100.100 INFO    ] No camera update needed
[2026-06-12 06:37:41,102.102 INFO    ] Script finished. Safe exiting...
[2026-06-12 06:37:41,103.103 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 06:37:41,106.106 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 06:37:41,108.108 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 06:37:43,146.146 INFO    ] ================================================
[2026-06-12 06:37:43,161.161 INFO    ] Launching Daemon at Fri Jun 12 06:37:43 IST 2026
[2026-06-12 06:37:43,172.172 INFO    ] ================================================
[2026-06-12 06:37:43,518.518 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 06:37:43
[2026-06-12 06:37:43,835.835 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 06:37:43,978.978 INFO    ] Initializing speech engine...
[2026-06-12 06:37:43,984.984 INFO    ] 2026-06-12 06:37:43
[2026-06-12 06:37:44,187.187 INFO    ] 2026-06-12 06:37:44
[2026-06-12 06:37:44,215.215 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 06:37:44,398.398 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 06:37:44,407.407 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 06:37:44,530.530 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 06:37:44,590.590 INFO    ] time= 12/06/2026 06:37:44
[2026-06-12 06:37:44,624.624 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 06:37:44,629.629 INFO    ] Checking for existing commands in stream...
[2026-06-12 06:37:44,701.701 INFO    ] No existing commands found in stream
[2026-06-12 06:37:49,710.710 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 06:37:49,713.713 INFO    ] Waiting 3.64 seconds before fallback handling...
[2026-06-12 06:37:53,713.713 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 06:37:53,714.714 INFO    ] Checking for system updates...
[2026-06-12 06:37:53,737.737 INFO    ] 200
[2026-06-12 06:37:53,738.738 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:37:53,769.769 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 06:37:53,770.770 INFO    ] No update needed
[2026-06-12 06:37:53,772.772 INFO    ] Checking for camera pi updates...
[2026-06-12 06:37:53,791.791 INFO    ] 200
[2026-06-12 06:37:53,792.792 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:37:53,817.817 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 06:37:53,853.853 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 06:37:53,854.854 INFO    ] No camera update needed
[2026-06-12 06:37:53,856.856 INFO    ] Script finished. Safe exiting...
[2026-06-12 06:37:53,857.857 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 06:37:53,860.860 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 06:37:53,862.862 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 06:37:55,901.901 INFO    ] ================================================
[2026-06-12 06:37:55,916.916 INFO    ] Launching Daemon at Fri Jun 12 06:37:55 IST 2026
[2026-06-12 06:37:55,927.927 INFO    ] ================================================
[2026-06-12 06:37:56,299.299 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 06:37:56
[2026-06-12 06:37:56,631.631 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 06:37:56,770.770 INFO    ] Initializing speech engine...
[2026-06-12 06:37:56,783.783 INFO    ] 2026-06-12 06:37:56
[2026-06-12 06:37:56,995.995 INFO    ] 2026-06-12 06:37:56
[2026-06-12 06:37:57,025.025 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 06:37:57,165.165 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 06:37:57,214.214 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 06:37:57,350.350 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 06:37:57,412.412 INFO    ] time= 12/06/2026 06:37:57
[2026-06-12 06:37:57,446.446 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 06:37:57,452.452 INFO    ] Checking for existing commands in stream...
[2026-06-12 06:37:57,544.544 INFO    ] No existing commands found in stream
[2026-06-12 06:38:02,551.551 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 06:38:02,553.553 INFO    ] Waiting 3.53 seconds before fallback handling...
[2026-06-12 06:38:06,472.472 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 06:38:06,474.474 INFO    ] Checking for system updates...
[2026-06-12 06:38:06,495.495 INFO    ] 200
[2026-06-12 06:38:06,496.496 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:38:06,531.531 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 06:38:06,532.532 INFO    ] No update needed
[2026-06-12 06:38:06,533.533 INFO    ] Checking for camera pi updates...
[2026-06-12 06:38:06,552.552 INFO    ] 200
[2026-06-12 06:38:06,554.554 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:38:06,577.577 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 06:38:06,615.615 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 06:38:06,616.616 INFO    ] No camera update needed
[2026-06-12 06:38:06,617.617 INFO    ] Script finished. Safe exiting...
[2026-06-12 06:38:06,618.618 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 06:38:06,622.622 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 06:38:06,624.624 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 06:38:08,662.662 INFO    ] ================================================
[2026-06-12 06:38:08,678.678 INFO    ] Launching Daemon at Fri Jun 12 06:38:08 IST 2026
[2026-06-12 06:38:08,688.688 INFO    ] ================================================
[2026-06-12 06:38:09,037.037 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 06:38:09
[2026-06-12 06:38:09,353.353 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 06:38:09,494.494 INFO    ] Initializing speech engine...
[2026-06-12 06:38:09,503.503 INFO    ] 2026-06-12 06:38:09
[2026-06-12 06:38:09,717.717 INFO    ] 2026-06-12 06:38:09
[2026-06-12 06:38:09,747.747 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 06:38:09,918.918 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 06:38:09,945.945 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 06:38:10,089.089 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 06:38:10,154.154 INFO    ] time= 12/06/2026 06:38:10
[2026-06-12 06:38:10,185.185 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 06:38:10,187.187 INFO    ] Checking for existing commands in stream...
[2026-06-12 06:38:10,287.287 INFO    ] No existing commands found in stream
[2026-06-12 06:38:15,296.296 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 06:38:15,299.299 INFO    ] Waiting 1.36 seconds before fallback handling...
[2026-06-12 06:38:17,007.007 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 06:38:17,008.008 INFO    ] Checking for system updates...
[2026-06-12 06:38:17,029.029 INFO    ] 200
[2026-06-12 06:38:17,031.031 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:38:17,072.072 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 06:38:17,073.073 INFO    ] No update needed
[2026-06-12 06:38:17,075.075 INFO    ] Checking for camera pi updates...
[2026-06-12 06:38:17,099.099 INFO    ] 200
[2026-06-12 06:38:17,100.100 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:38:17,140.140 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 06:38:17,182.182 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 06:38:17,183.183 INFO    ] No camera update needed
[2026-06-12 06:38:17,184.184 INFO    ] Script finished. Safe exiting...
[2026-06-12 06:38:17,186.186 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 06:38:17,189.189 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 06:38:17,191.191 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 06:38:19,229.229 INFO    ] ================================================
[2026-06-12 06:38:19,245.245 INFO    ] Launching Daemon at Fri Jun 12 06:38:19 IST 2026
[2026-06-12 06:38:19,255.255 INFO    ] ================================================
[2026-06-12 06:38:19,600.600 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 06:38:19
[2026-06-12 06:38:19,915.915 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 06:38:20,060.060 INFO    ] Initializing speech engine...
[2026-06-12 06:38:20,067.067 INFO    ] 2026-06-12 06:38:20
[2026-06-12 06:38:20,283.283 INFO    ] 2026-06-12 06:38:20
[2026-06-12 06:38:20,313.313 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 06:38:20,461.461 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 06:38:20,471.471 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 06:38:20,630.630 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 06:38:20,654.654 INFO    ] time= 12/06/2026 06:38:20
[2026-06-12 06:38:20,722.722 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 06:38:20,746.746 INFO    ] Checking for existing commands in stream...
[2026-06-12 06:38:20,842.842 INFO    ] No existing commands found in stream
[2026-06-12 06:38:25,857.857 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 06:38:25,860.860 INFO    ] Waiting 2.90 seconds before fallback handling...
[2026-06-12 06:38:29,146.146 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 06:38:29,147.147 INFO    ] Checking for system updates...
[2026-06-12 06:38:29,169.169 INFO    ] 200
[2026-06-12 06:38:29,171.171 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:38:29,203.203 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 06:38:29,205.205 INFO    ] No update needed
[2026-06-12 06:38:29,206.206 INFO    ] Checking for camera pi updates...
[2026-06-12 06:38:29,227.227 INFO    ] 200
[2026-06-12 06:38:29,228.228 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:38:29,256.256 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 06:38:29,300.300 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 06:38:29,301.301 INFO    ] No camera update needed
[2026-06-12 06:38:29,303.303 INFO    ] Script finished. Safe exiting...
[2026-06-12 06:38:29,304.304 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 06:38:29,307.307 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 06:38:29,310.310 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 06:38:31,348.348 INFO    ] ================================================
[2026-06-12 06:38:31,363.363 INFO    ] Launching Daemon at Fri Jun 12 06:38:31 IST 2026
[2026-06-12 06:38:31,374.374 INFO    ] ================================================
[2026-06-12 06:38:31,723.723 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 06:38:31
[2026-06-12 06:38:32,067.067 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 06:38:32,235.235 INFO    ] Initializing speech engine...
[2026-06-12 06:38:32,237.237 INFO    ] 2026-06-12 06:38:32
[2026-06-12 06:38:32,456.456 INFO    ] 2026-06-12 06:38:32
[2026-06-12 06:38:32,485.485 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 06:38:32,681.681 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 06:38:32,691.691 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 06:38:32,836.836 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 06:38:32,894.894 INFO    ] time= 12/06/2026 06:38:32
[2026-06-12 06:38:32,918.918 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 06:38:32,924.924 INFO    ] Checking for existing commands in stream...
[2026-06-12 06:38:32,992.992 INFO    ] No existing commands found in stream
[2026-06-12 06:38:38,001.001 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 06:38:38,003.003 INFO    ] Waiting 1.71 seconds before fallback handling...
[2026-06-12 06:38:40,091.091 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 06:38:40,093.093 INFO    ] Checking for system updates...
[2026-06-12 06:38:40,114.114 INFO    ] 200
[2026-06-12 06:38:40,116.116 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:38:40,145.145 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 06:38:40,147.147 INFO    ] No update needed
[2026-06-12 06:38:40,148.148 INFO    ] Checking for camera pi updates...
[2026-06-12 06:38:40,169.169 INFO    ] 200
[2026-06-12 06:38:40,171.171 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:38:40,195.195 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 06:38:40,234.234 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 06:38:40,235.235 INFO    ] No camera update needed
[2026-06-12 06:38:40,236.236 INFO    ] Script finished. Safe exiting...
[2026-06-12 06:38:40,237.237 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 06:38:40,241.241 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 06:38:40,243.243 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 06:38:42,281.281 INFO    ] ================================================
[2026-06-12 06:38:42,297.297 INFO    ] Launching Daemon at Fri Jun 12 06:38:42 IST 2026
[2026-06-12 06:38:42,308.308 INFO    ] ================================================
[2026-06-12 06:38:42,665.665 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 06:38:42
[2026-06-12 06:38:42,982.982 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 06:38:43,125.125 INFO    ] Initializing speech engine...
[2026-06-12 06:38:43,129.129 INFO    ] 2026-06-12 06:38:43
[2026-06-12 06:38:43,333.333 INFO    ] 2026-06-12 06:38:43
[2026-06-12 06:38:43,362.362 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 06:38:43,545.545 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 06:38:43,554.554 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 06:38:43,734.734 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 06:38:43,771.771 INFO    ] time= 12/06/2026 06:38:43
[2026-06-12 06:38:43,773.773 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 06:38:43,779.779 INFO    ] Checking for existing commands in stream...
[2026-06-12 06:38:43,845.845 INFO    ] No existing commands found in stream
[2026-06-12 06:38:48,852.852 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 06:38:48,855.855 INFO    ] Waiting 0.34 seconds before fallback handling...
[2026-06-12 06:38:49,573.573 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 06:38:49,574.574 INFO    ] Checking for system updates...
[2026-06-12 06:38:49,597.597 INFO    ] 200
[2026-06-12 06:38:49,598.598 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:38:49,631.631 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 06:38:49,632.632 INFO    ] No update needed
[2026-06-12 06:38:49,634.634 INFO    ] Checking for camera pi updates...
[2026-06-12 06:38:49,653.653 INFO    ] 200
[2026-06-12 06:38:49,655.655 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:38:49,678.678 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 06:38:49,719.719 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 06:38:49,720.720 INFO    ] No camera update needed
[2026-06-12 06:38:49,722.722 INFO    ] Script finished. Safe exiting...
[2026-06-12 06:38:49,723.723 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 06:38:49,726.726 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 06:38:49,729.729 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 06:38:51,768.768 INFO    ] ================================================
[2026-06-12 06:38:51,783.783 INFO    ] Launching Daemon at Fri Jun 12 06:38:51 IST 2026
[2026-06-12 06:38:51,794.794 INFO    ] ================================================
[2026-06-12 06:38:52,160.160 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 06:38:52
[2026-06-12 06:38:52,478.478 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 06:38:52,627.627 INFO    ] Initializing speech engine...
[2026-06-12 06:38:52,633.633 INFO    ] 2026-06-12 06:38:52
[2026-06-12 06:38:52,842.842 INFO    ] 2026-06-12 06:38:52
[2026-06-12 06:38:52,871.871 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 06:38:53,056.056 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 06:38:53,066.066 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 06:38:53,198.198 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 06:38:53,267.267 INFO    ] time= 12/06/2026 06:38:53
[2026-06-12 06:38:53,290.290 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 06:38:53,297.297 INFO    ] Checking for existing commands in stream...
[2026-06-12 06:38:53,364.364 INFO    ] No existing commands found in stream
[2026-06-12 06:38:58,384.384 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 06:38:58,387.387 INFO    ] Waiting 3.18 seconds before fallback handling...
[2026-06-12 06:39:02,045.045 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 06:39:02,047.047 INFO    ] Checking for system updates...
[2026-06-12 06:39:02,073.073 INFO    ] 200
[2026-06-12 06:39:02,074.074 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:39:02,114.114 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 06:39:02,116.116 INFO    ] No update needed
[2026-06-12 06:39:02,118.118 INFO    ] Checking for camera pi updates...
[2026-06-12 06:39:02,152.152 INFO    ] 200
[2026-06-12 06:39:02,155.155 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:39:02,186.186 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 06:39:02,215.215 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 06:39:02,217.217 INFO    ] No camera update needed
[2026-06-12 06:39:02,219.219 INFO    ] Script finished. Safe exiting...
[2026-06-12 06:39:02,221.221 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 06:39:02,225.225 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 06:39:02,229.229 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 06:39:04,268.268 INFO    ] ================================================
[2026-06-12 06:39:04,284.284 INFO    ] Launching Daemon at Fri Jun 12 06:39:04 IST 2026
[2026-06-12 06:39:04,295.295 INFO    ] ================================================
[2026-06-12 06:39:04,631.631 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 06:39:04
[2026-06-12 06:39:04,946.946 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 06:39:05,088.088 INFO    ] Initializing speech engine...
[2026-06-12 06:39:05,093.093 INFO    ] 2026-06-12 06:39:05
[2026-06-12 06:39:05,296.296 INFO    ] 2026-06-12 06:39:05
[2026-06-12 06:39:05,325.325 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 06:39:05,488.488 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 06:39:05,511.511 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 06:39:05,674.674 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 06:39:05,718.718 INFO    ] time= 12/06/2026 06:39:05
[2026-06-12 06:39:05,739.739 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 06:39:05,745.745 INFO    ] Checking for existing commands in stream...
[2026-06-12 06:39:05,812.812 INFO    ] No existing commands found in stream
[2026-06-12 06:39:10,826.826 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 06:39:10,830.830 INFO    ] Waiting 1.72 seconds before fallback handling...
[2026-06-12 06:39:12,912.912 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 06:39:12,914.914 INFO    ] Checking for system updates...
[2026-06-12 06:39:12,934.934 INFO    ] 200
[2026-06-12 06:39:12,936.936 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:39:12,969.969 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 06:39:12,970.970 INFO    ] No update needed
[2026-06-12 06:39:12,972.972 INFO    ] Checking for camera pi updates...
[2026-06-12 06:39:12,992.992 INFO    ] 200
[2026-06-12 06:39:12,994.994 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:39:13,017.017 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 06:39:13,055.055 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 06:39:13,056.056 INFO    ] No camera update needed
[2026-06-12 06:39:13,057.057 INFO    ] Script finished. Safe exiting...
[2026-06-12 06:39:13,059.059 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 06:39:13,062.062 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 06:39:13,064.064 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 06:39:15,104.104 INFO    ] ================================================
[2026-06-12 06:39:15,119.119 INFO    ] Launching Daemon at Fri Jun 12 06:39:15 IST 2026
[2026-06-12 06:39:15,129.129 INFO    ] ================================================
[2026-06-12 06:39:15,472.472 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 06:39:15
[2026-06-12 06:39:15,785.785 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 06:39:15,928.928 INFO    ] Initializing speech engine...
[2026-06-12 06:39:15,933.933 INFO    ] 2026-06-12 06:39:15
[2026-06-12 06:39:16,136.136 INFO    ] 2026-06-12 06:39:16
[2026-06-12 06:39:16,166.166 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 06:39:16,352.352 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 06:39:16,362.362 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 06:39:16,507.507 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 06:39:16,562.562 INFO    ] time= 12/06/2026 06:39:16
[2026-06-12 06:39:16,584.584 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 06:39:16,590.590 INFO    ] Checking for existing commands in stream...
[2026-06-12 06:39:16,658.658 INFO    ] No existing commands found in stream
[2026-06-12 06:39:21,672.672 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 06:39:21,675.675 INFO    ] Waiting 0.41 seconds before fallback handling...
[2026-06-12 06:39:22,443.443 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 06:39:22,444.444 INFO    ] Checking for system updates...
[2026-06-12 06:39:22,467.467 INFO    ] 200
[2026-06-12 06:39:22,468.468 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:39:22,498.498 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 06:39:22,500.500 INFO    ] No update needed
[2026-06-12 06:39:22,501.501 INFO    ] Checking for camera pi updates...
[2026-06-12 06:39:22,520.520 INFO    ] 200
[2026-06-12 06:39:22,522.522 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:39:22,547.547 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 06:39:22,581.581 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 06:39:22,582.582 INFO    ] No camera update needed
[2026-06-12 06:39:22,583.583 INFO    ] Script finished. Safe exiting...
[2026-06-12 06:39:22,585.585 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 06:39:22,588.588 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 06:39:22,590.590 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 06:39:24,628.628 INFO    ] ================================================
[2026-06-12 06:39:24,643.643 INFO    ] Launching Daemon at Fri Jun 12 06:39:24 IST 2026
[2026-06-12 06:39:24,654.654 INFO    ] ================================================
[2026-06-12 06:39:25,001.001 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 06:39:24
[2026-06-12 06:39:25,317.317 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 06:39:25,451.451 INFO    ] Initializing speech engine...
[2026-06-12 06:39:25,456.456 INFO    ] 2026-06-12 06:39:25
[2026-06-12 06:39:25,686.686 INFO    ] 2026-06-12 06:39:25
[2026-06-12 06:39:25,703.703 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 06:39:25,852.852 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 06:39:25,905.905 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 06:39:26,042.042 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 06:39:26,112.112 INFO    ] time= 12/06/2026 06:39:26
[2026-06-12 06:39:26,136.136 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 06:39:26,143.143 INFO    ] Checking for existing commands in stream...
[2026-06-12 06:39:26,208.208 INFO    ] No existing commands found in stream
[2026-06-12 06:39:31,218.218 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 06:39:31,222.222 INFO    ] Waiting 3.40 seconds before fallback handling...
[2026-06-12 06:39:34,983.983 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 06:39:34,984.984 INFO    ] Checking for system updates...
[2026-06-12 06:39:35,006.006 INFO    ] 200
[2026-06-12 06:39:35,007.007 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:39:35,039.039 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 06:39:35,041.041 INFO    ] No update needed
[2026-06-12 06:39:35,042.042 INFO    ] Checking for camera pi updates...
[2026-06-12 06:39:35,061.061 INFO    ] 200
[2026-06-12 06:39:35,063.063 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:39:35,087.087 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 06:39:35,120.120 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 06:39:35,122.122 INFO    ] No camera update needed
[2026-06-12 06:39:35,123.123 INFO    ] Script finished. Safe exiting...
[2026-06-12 06:39:35,124.124 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 06:39:35,127.127 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 06:39:35,130.130 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 06:39:37,168.168 INFO    ] ================================================
[2026-06-12 06:39:37,183.183 INFO    ] Launching Daemon at Fri Jun 12 06:39:37 IST 2026
[2026-06-12 06:39:37,194.194 INFO    ] ================================================
[2026-06-12 06:39:37,571.571 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 06:39:37
[2026-06-12 06:39:37,904.904 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 06:39:38,055.055 INFO    ] Initializing speech engine...
[2026-06-12 06:39:38,060.060 INFO    ] 2026-06-12 06:39:38
[2026-06-12 06:39:38,269.269 INFO    ] 2026-06-12 06:39:38
[2026-06-12 06:39:38,297.297 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 06:39:38,483.483 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 06:39:38,487.487 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 06:39:38,621.621 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 06:39:38,684.684 INFO    ] time= 12/06/2026 06:39:38
[2026-06-12 06:39:38,717.717 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 06:39:38,723.723 INFO    ] Checking for existing commands in stream...
[2026-06-12 06:39:38,791.791 INFO    ] No existing commands found in stream
[2026-06-12 06:39:43,810.810 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 06:39:43,813.813 INFO    ] Waiting 3.31 seconds before fallback handling...
[2026-06-12 06:39:47,486.486 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 06:39:47,488.488 INFO    ] Checking for system updates...
[2026-06-12 06:39:47,509.509 INFO    ] 200
[2026-06-12 06:39:47,510.510 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:39:47,541.541 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 06:39:47,542.542 INFO    ] No update needed
[2026-06-12 06:39:47,544.544 INFO    ] Checking for camera pi updates...
[2026-06-12 06:39:47,565.565 INFO    ] 200
[2026-06-12 06:39:47,567.567 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:39:47,591.591 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 06:39:47,731.731 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 06:39:47,732.732 INFO    ] No camera update needed
[2026-06-12 06:39:47,734.734 INFO    ] Script finished. Safe exiting...
[2026-06-12 06:39:47,735.735 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 06:39:47,738.738 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 06:39:47,741.741 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 06:39:49,764.764 INFO    ] ================================================
[2026-06-12 06:39:49,773.773 INFO    ] Launching Daemon at Fri Jun 12 06:39:49 IST 2026
[2026-06-12 06:39:49,779.779 INFO    ] ================================================
[2026-06-12 06:39:50,134.134 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 06:39:50
[2026-06-12 06:39:50,451.451 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 06:39:50,584.584 INFO    ] Initializing speech engine...
[2026-06-12 06:39:50,587.587 INFO    ] 2026-06-12 06:39:50
[2026-06-12 06:39:50,805.805 INFO    ] 2026-06-12 06:39:50
[2026-06-12 06:39:50,835.835 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 06:39:51,018.018 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 06:39:51,028.028 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 06:39:51,158.158 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 06:39:51,226.226 INFO    ] time= 12/06/2026 06:39:51
[2026-06-12 06:39:51,250.250 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 06:39:51,256.256 INFO    ] Checking for existing commands in stream...
[2026-06-12 06:39:51,324.324 INFO    ] No existing commands found in stream
[2026-06-12 06:39:56,338.338 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 06:39:56,341.341 INFO    ] Waiting 0.66 seconds before fallback handling...
[2026-06-12 06:39:57,374.374 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 06:39:57,376.376 INFO    ] Checking for system updates...
[2026-06-12 06:39:57,397.397 INFO    ] 200
[2026-06-12 06:39:57,398.398 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:39:57,429.429 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 06:39:57,431.431 INFO    ] No update needed
[2026-06-12 06:39:57,432.432 INFO    ] Checking for camera pi updates...
[2026-06-12 06:39:57,452.452 INFO    ] 200
[2026-06-12 06:39:57,453.453 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:39:57,476.476 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 06:39:57,515.515 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 06:39:57,516.516 INFO    ] No camera update needed
[2026-06-12 06:39:57,518.518 INFO    ] Script finished. Safe exiting...
[2026-06-12 06:39:57,519.519 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 06:39:57,522.522 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 06:39:57,525.525 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 06:39:59,569.569 INFO    ] ================================================
[2026-06-12 06:39:59,585.585 INFO    ] Launching Daemon at Fri Jun 12 06:39:59 IST 2026
[2026-06-12 06:39:59,597.597 INFO    ] ================================================
[2026-06-12 06:39:59,933.933 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 06:39:59
[2026-06-12 06:40:00,248.248 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 06:40:00,393.393 INFO    ] Initializing speech engine...
[2026-06-12 06:40:00,396.396 INFO    ] 2026-06-12 06:40:00
[2026-06-12 06:40:00,600.600 INFO    ] 2026-06-12 06:40:00
[2026-06-12 06:40:00,629.629 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 06:40:00,810.810 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 06:40:00,819.819 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 06:40:00,944.944 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 06:40:01,007.007 INFO    ] time= 12/06/2026 06:40:00
[2026-06-12 06:40:01,037.037 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 06:40:01,044.044 INFO    ] Checking for existing commands in stream...
[2026-06-12 06:40:01,134.134 INFO    ] No existing commands found in stream
[2026-06-12 06:40:06,142.142 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 06:40:06,145.145 INFO    ] Waiting 3.15 seconds before fallback handling...
[2026-06-12 06:40:09,974.974 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 06:40:09,975.975 INFO    ] Checking for system updates...
[2026-06-12 06:40:09,997.997 INFO    ] 200
[2026-06-12 06:40:09,998.998 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:40:10,028.028 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 06:40:10,030.030 INFO    ] No update needed
[2026-06-12 06:40:10,031.031 INFO    ] Checking for camera pi updates...
[2026-06-12 06:40:10,051.051 INFO    ] 200
[2026-06-12 06:40:10,052.052 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:40:10,077.077 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 06:40:10,118.118 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 06:40:10,120.120 INFO    ] No camera update needed
[2026-06-12 06:40:10,121.121 INFO    ] Script finished. Safe exiting...
[2026-06-12 06:40:10,122.122 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 06:40:10,125.125 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 06:40:10,128.128 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 06:40:12,168.168 INFO    ] ================================================
[2026-06-12 06:40:12,184.184 INFO    ] Launching Daemon at Fri Jun 12 06:40:12 IST 2026
[2026-06-12 06:40:12,195.195 INFO    ] ================================================
[2026-06-12 06:40:12,579.579 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 06:40:12
[2026-06-12 06:40:12,913.913 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 06:40:13,063.063 INFO    ] Initializing speech engine...
[2026-06-12 06:40:13,069.069 INFO    ] 2026-06-12 06:40:13
[2026-06-12 06:40:13,276.276 INFO    ] 2026-06-12 06:40:13
[2026-06-12 06:40:13,305.305 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 06:40:13,488.488 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 06:40:13,497.497 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 06:40:13,625.625 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 06:40:13,694.694 INFO    ] time= 12/06/2026 06:40:13
[2026-06-12 06:40:13,718.718 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 06:40:13,724.724 INFO    ] Checking for existing commands in stream...
[2026-06-12 06:40:13,792.792 INFO    ] No existing commands found in stream
[2026-06-12 06:40:18,806.806 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 06:40:18,809.809 INFO    ] Waiting 3.92 seconds before fallback handling...
[2026-06-12 06:40:23,116.116 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 06:40:23,118.118 INFO    ] Checking for system updates...
[2026-06-12 06:40:23,156.156 INFO    ] 200
[2026-06-12 06:40:23,157.157 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:40:23,189.189 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 06:40:23,191.191 INFO    ] No update needed
[2026-06-12 06:40:23,192.192 INFO    ] Checking for camera pi updates...
[2026-06-12 06:40:23,212.212 INFO    ] 200
[2026-06-12 06:40:23,213.213 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:40:23,236.236 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 06:40:23,285.285 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 06:40:23,287.287 INFO    ] No camera update needed
[2026-06-12 06:40:23,288.288 INFO    ] Script finished. Safe exiting...
[2026-06-12 06:40:23,289.289 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 06:40:23,292.292 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 06:40:23,295.295 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 06:40:25,326.326 INFO    ] ================================================
[2026-06-12 06:40:25,342.342 INFO    ] Launching Daemon at Fri Jun 12 06:40:25 IST 2026
[2026-06-12 06:40:25,354.354 INFO    ] ================================================
[2026-06-12 06:40:25,710.710 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 06:40:25
[2026-06-12 06:40:26,025.025 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 06:40:26,162.162 INFO    ] Initializing speech engine...
[2026-06-12 06:40:26,172.172 INFO    ] 2026-06-12 06:40:26
[2026-06-12 06:40:26,378.378 INFO    ] 2026-06-12 06:40:26
[2026-06-12 06:40:26,406.406 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 06:40:26,589.589 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 06:40:26,593.593 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 06:40:26,729.729 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 06:40:26,793.793 INFO    ] time= 12/06/2026 06:40:26
[2026-06-12 06:40:26,820.820 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 06:40:26,822.822 INFO    ] Checking for existing commands in stream...
[2026-06-12 06:40:26,893.893 INFO    ] No existing commands found in stream
[2026-06-12 06:40:31,907.907 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 06:40:31,910.910 INFO    ] Waiting 0.56 seconds before fallback handling...
[2026-06-12 06:40:32,798.798 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 06:40:32,800.800 INFO    ] Checking for system updates...
[2026-06-12 06:40:32,822.822 INFO    ] 200
[2026-06-12 06:40:32,823.823 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:40:32,853.853 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 06:40:32,854.854 INFO    ] No update needed
[2026-06-12 06:40:32,855.855 INFO    ] Checking for camera pi updates...
[2026-06-12 06:40:32,876.876 INFO    ] 200
[2026-06-12 06:40:32,878.878 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:40:32,901.901 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 06:40:32,929.929 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 06:40:32,931.931 INFO    ] No camera update needed
[2026-06-12 06:40:32,932.932 INFO    ] Script finished. Safe exiting...
[2026-06-12 06:40:32,933.933 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 06:40:32,936.936 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 06:40:32,939.939 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 06:40:34,979.979 INFO    ] ================================================
[2026-06-12 06:40:35,995.995 INFO    ] Launching Daemon at Fri Jun 12 06:40:34 IST 2026
[2026-06-12 06:40:35,006.006 INFO    ] ================================================
[2026-06-12 06:40:35,337.337 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 06:40:35
[2026-06-12 06:40:35,653.653 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 06:40:35,785.785 INFO    ] Initializing speech engine...
[2026-06-12 06:40:35,792.792 INFO    ] 2026-06-12 06:40:35
[2026-06-12 06:40:36,005.005 INFO    ] 2026-06-12 06:40:35
[2026-06-12 06:40:36,035.035 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 06:40:36,216.216 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 06:40:36,220.220 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 06:40:36,355.355 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 06:40:36,419.419 INFO    ] time= 12/06/2026 06:40:36
[2026-06-12 06:40:36,446.446 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 06:40:36,453.453 INFO    ] Checking for existing commands in stream...
[2026-06-12 06:40:36,543.543 INFO    ] No existing commands found in stream
[2026-06-12 06:40:41,552.552 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 06:40:41,555.555 INFO    ] Waiting 3.21 seconds before fallback handling...
[2026-06-12 06:40:45,096.096 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 06:40:45,097.097 INFO    ] Checking for system updates...
[2026-06-12 06:40:45,119.119 INFO    ] 200
[2026-06-12 06:40:45,120.120 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:40:45,151.151 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 06:40:45,152.152 INFO    ] No update needed
[2026-06-12 06:40:45,153.153 INFO    ] Checking for camera pi updates...
[2026-06-12 06:40:45,174.174 INFO    ] 200
[2026-06-12 06:40:45,175.175 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:40:45,199.199 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 06:40:45,234.234 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 06:40:45,235.235 INFO    ] No camera update needed
[2026-06-12 06:40:45,236.236 INFO    ] Script finished. Safe exiting...
[2026-06-12 06:40:45,238.238 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 06:40:45,241.241 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 06:40:45,243.243 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 06:40:47,285.285 INFO    ] ================================================
[2026-06-12 06:40:47,301.301 INFO    ] Launching Daemon at Fri Jun 12 06:40:47 IST 2026
[2026-06-12 06:40:47,312.312 INFO    ] ================================================
[2026-06-12 06:40:47,667.667 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 06:40:47
[2026-06-12 06:40:48,001.001 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 06:40:48,145.145 INFO    ] Initializing speech engine...
[2026-06-12 06:40:48,155.155 INFO    ] 2026-06-12 06:40:48
[2026-06-12 06:40:48,364.364 INFO    ] 2026-06-12 06:40:48
[2026-06-12 06:40:48,393.393 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 06:40:48,578.578 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 06:40:48,588.588 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 06:40:48,721.721 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 06:40:48,785.785 INFO    ] time= 12/06/2026 06:40:48
[2026-06-12 06:40:48,813.813 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 06:40:48,819.819 INFO    ] Checking for existing commands in stream...
[2026-06-12 06:40:48,911.911 INFO    ] No existing commands found in stream
[2026-06-12 06:40:53,921.921 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 06:40:53,924.924 INFO    ] Waiting 2.03 seconds before fallback handling...
[2026-06-12 06:40:56,335.335 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 06:40:56,337.337 INFO    ] Checking for system updates...
[2026-06-12 06:40:56,358.358 INFO    ] 200
[2026-06-12 06:40:56,360.360 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:40:56,392.392 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 06:40:56,393.393 INFO    ] No update needed
[2026-06-12 06:40:56,395.395 INFO    ] Checking for camera pi updates...
[2026-06-12 06:40:56,414.414 INFO    ] 200
[2026-06-12 06:40:56,415.415 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:40:56,440.440 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 06:40:56,476.476 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 06:40:56,477.477 INFO    ] No camera update needed
[2026-06-12 06:40:56,478.478 INFO    ] Script finished. Safe exiting...
[2026-06-12 06:40:56,480.480 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 06:40:56,483.483 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 06:40:56,486.486 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 06:40:58,524.524 INFO    ] ================================================
[2026-06-12 06:40:58,540.540 INFO    ] Launching Daemon at Fri Jun 12 06:40:58 IST 2026
[2026-06-12 06:40:58,551.551 INFO    ] ================================================
[2026-06-12 06:40:58,917.917 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 06:40:58
[2026-06-12 06:40:59,250.250 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 06:40:59,399.399 INFO    ] Initializing speech engine...
[2026-06-12 06:40:59,405.405 INFO    ] 2026-06-12 06:40:59
[2026-06-12 06:40:59,612.612 INFO    ] 2026-06-12 06:40:59
[2026-06-12 06:40:59,641.641 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 06:40:59,774.774 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 06:40:59,827.827 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 06:40:59,959.959 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 06:41:00,015.015 INFO    ] time= 12/06/2026 06:40:59
[2026-06-12 06:41:00,057.057 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 06:41:00,063.063 INFO    ] Checking for existing commands in stream...
[2026-06-12 06:41:00,131.131 INFO    ] No existing commands found in stream
[2026-06-12 06:41:05,145.145 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 06:41:05,148.148 INFO    ] Waiting 3.93 seconds before fallback handling...
[2026-06-12 06:41:09,466.466 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 06:41:09,468.468 INFO    ] Checking for system updates...
[2026-06-12 06:41:09,489.489 INFO    ] 200
[2026-06-12 06:41:09,490.490 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:41:09,523.523 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 06:41:09,525.525 INFO    ] No update needed
[2026-06-12 06:41:09,526.526 INFO    ] Checking for camera pi updates...
[2026-06-12 06:41:09,548.548 INFO    ] 200
[2026-06-12 06:41:09,551.551 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:41:09,580.580 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 06:41:09,625.625 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 06:41:09,626.626 INFO    ] No camera update needed
[2026-06-12 06:41:09,628.628 INFO    ] Script finished. Safe exiting...
[2026-06-12 06:41:09,629.629 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 06:41:09,632.632 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 06:41:09,635.635 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 06:41:11,675.675 INFO    ] ================================================
[2026-06-12 06:41:11,690.690 INFO    ] Launching Daemon at Fri Jun 12 06:41:11 IST 2026
[2026-06-12 06:41:11,701.701 INFO    ] ================================================
[2026-06-12 06:41:12,065.065 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 06:41:12
[2026-06-12 06:41:12,394.394 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 06:41:12,532.532 INFO    ] Initializing speech engine...
[2026-06-12 06:41:12,545.545 INFO    ] 2026-06-12 06:41:12
[2026-06-12 06:41:12,757.757 INFO    ] 2026-06-12 06:41:12
[2026-06-12 06:41:12,786.786 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 06:41:12,972.972 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 06:41:12,982.982 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 06:41:13,112.112 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 06:41:13,168.168 INFO    ] time= 12/06/2026 06:41:13
[2026-06-12 06:41:13,206.206 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 06:41:13,208.208 INFO    ] Checking for existing commands in stream...
[2026-06-12 06:41:13,281.281 INFO    ] No existing commands found in stream
[2026-06-12 06:41:18,296.296 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 06:41:18,299.299 INFO    ] Waiting 2.31 seconds before fallback handling...
[2026-06-12 06:41:20,996.996 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 06:41:20,998.998 INFO    ] Checking for system updates...
[2026-06-12 06:41:21,019.019 INFO    ] 200
[2026-06-12 06:41:21,021.021 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:41:21,053.053 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 06:41:21,054.054 INFO    ] No update needed
[2026-06-12 06:41:21,055.055 INFO    ] Checking for camera pi updates...
[2026-06-12 06:41:21,078.078 INFO    ] 200
[2026-06-12 06:41:21,080.080 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:41:21,107.107 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 06:41:21,148.148 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 06:41:21,150.150 INFO    ] No camera update needed
[2026-06-12 06:41:21,152.152 INFO    ] Script finished. Safe exiting...
[2026-06-12 06:41:21,154.154 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 06:41:21,157.157 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 06:41:21,160.160 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 06:41:23,199.199 INFO    ] ================================================
[2026-06-12 06:41:23,214.214 INFO    ] Launching Daemon at Fri Jun 12 06:41:23 IST 2026
[2026-06-12 06:41:23,226.226 INFO    ] ================================================
[2026-06-12 06:41:23,580.580 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 06:41:23
[2026-06-12 06:41:23,896.896 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 06:41:24,044.044 INFO    ] Initializing speech engine...
[2026-06-12 06:41:24,049.049 INFO    ] 2026-06-12 06:41:24
[2026-06-12 06:41:24,252.252 INFO    ] 2026-06-12 06:41:24
[2026-06-12 06:41:24,281.281 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 06:41:24,465.465 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 06:41:24,468.468 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 06:41:24,604.604 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 06:41:24,670.670 INFO    ] time= 12/06/2026 06:41:24
[2026-06-12 06:41:24,694.694 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 06:41:24,701.701 INFO    ] Checking for existing commands in stream...
[2026-06-12 06:41:24,768.768 INFO    ] No existing commands found in stream
[2026-06-12 06:41:29,777.777 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 06:41:29,780.780 INFO    ] Waiting 2.86 seconds before fallback handling...
[2026-06-12 06:41:33,026.026 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 06:41:33,028.028 INFO    ] Checking for system updates...
[2026-06-12 06:41:33,049.049 INFO    ] 200
[2026-06-12 06:41:33,051.051 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:41:33,081.081 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 06:41:33,082.082 INFO    ] No update needed
[2026-06-12 06:41:33,083.083 INFO    ] Checking for camera pi updates...
[2026-06-12 06:41:33,104.104 INFO    ] 200
[2026-06-12 06:41:33,105.105 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:41:33,128.128 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 06:41:33,176.176 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 06:41:33,177.177 INFO    ] No camera update needed
[2026-06-12 06:41:33,179.179 INFO    ] Script finished. Safe exiting...
[2026-06-12 06:41:33,180.180 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 06:41:33,183.183 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 06:41:33,186.186 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 06:41:35,226.226 INFO    ] ================================================
[2026-06-12 06:41:35,242.242 INFO    ] Launching Daemon at Fri Jun 12 06:41:35 IST 2026
[2026-06-12 06:41:35,254.254 INFO    ] ================================================
[2026-06-12 06:41:35,629.629 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 06:41:35
[2026-06-12 06:41:35,961.961 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 06:41:36,109.109 INFO    ] Initializing speech engine...
[2026-06-12 06:41:36,115.115 INFO    ] 2026-06-12 06:41:36
[2026-06-12 06:41:36,323.323 INFO    ] 2026-06-12 06:41:36
[2026-06-12 06:41:36,352.352 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 06:41:36,535.535 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 06:41:36,539.539 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 06:41:36,691.691 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 06:41:36,745.745 INFO    ] time= 12/06/2026 06:41:36
[2026-06-12 06:41:36,767.767 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 06:41:36,773.773 INFO    ] Checking for existing commands in stream...
[2026-06-12 06:41:36,840.840 INFO    ] No existing commands found in stream
[2026-06-12 06:41:41,849.849 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 06:41:41,852.852 INFO    ] Waiting 3.77 seconds before fallback handling...
[2026-06-12 06:41:46,005.005 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 06:41:46,007.007 INFO    ] Checking for system updates...
[2026-06-12 06:41:46,028.028 INFO    ] 200
[2026-06-12 06:41:46,029.029 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:41:46,059.059 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 06:41:46,061.061 INFO    ] No update needed
[2026-06-12 06:41:46,062.062 INFO    ] Checking for camera pi updates...
[2026-06-12 06:41:46,083.083 INFO    ] 200
[2026-06-12 06:41:46,084.084 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:41:46,111.111 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 06:41:46,147.147 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 06:41:46,149.149 INFO    ] No camera update needed
[2026-06-12 06:41:46,150.150 INFO    ] Script finished. Safe exiting...
[2026-06-12 06:41:46,152.152 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 06:41:46,155.155 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 06:41:46,158.158 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 06:41:48,196.196 INFO    ] ================================================
[2026-06-12 06:41:48,212.212 INFO    ] Launching Daemon at Fri Jun 12 06:41:48 IST 2026
[2026-06-12 06:41:48,223.223 INFO    ] ================================================
[2026-06-12 06:41:48,612.612 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 06:41:48
[2026-06-12 06:41:48,940.940 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 06:41:49,087.087 INFO    ] Initializing speech engine...
[2026-06-12 06:41:49,093.093 INFO    ] 2026-06-12 06:41:49
[2026-06-12 06:41:49,298.298 INFO    ] 2026-06-12 06:41:49
[2026-06-12 06:41:49,327.327 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 06:41:49,458.458 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 06:41:49,510.510 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 06:41:49,643.643 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 06:41:49,711.711 INFO    ] time= 12/06/2026 06:41:49
[2026-06-12 06:41:49,737.737 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 06:41:49,744.744 INFO    ] Checking for existing commands in stream...
[2026-06-12 06:41:49,811.811 INFO    ] No existing commands found in stream
[2026-06-12 06:41:54,825.825 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 06:41:54,828.828 INFO    ] Waiting 0.95 seconds before fallback handling...
[2026-06-12 06:41:56,171.171 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 06:41:56,173.173 INFO    ] Checking for system updates...
[2026-06-12 06:41:56,194.194 INFO    ] 200
[2026-06-12 06:41:56,195.195 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:41:56,227.227 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 06:41:56,229.229 INFO    ] No update needed
[2026-06-12 06:41:56,230.230 INFO    ] Checking for camera pi updates...
[2026-06-12 06:41:56,251.251 INFO    ] 200
[2026-06-12 06:41:56,252.252 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:41:56,288.288 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 06:41:56,430.430 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 06:41:56,432.432 INFO    ] No camera update needed
[2026-06-12 06:41:56,433.433 INFO    ] Script finished. Safe exiting...
[2026-06-12 06:41:56,434.434 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 06:41:56,437.437 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 06:41:56,440.440 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 06:41:58,479.479 INFO    ] ================================================
[2026-06-12 06:41:58,495.495 INFO    ] Launching Daemon at Fri Jun 12 06:41:58 IST 2026
[2026-06-12 06:41:58,506.506 INFO    ] ================================================
[2026-06-12 06:41:58,836.836 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 06:41:58
[2026-06-12 06:41:59,150.150 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 06:41:59,293.293 INFO    ] Initializing speech engine...
[2026-06-12 06:41:59,298.298 INFO    ] 2026-06-12 06:41:59
[2026-06-12 06:41:59,501.501 INFO    ] 2026-06-12 06:41:59
[2026-06-12 06:41:59,529.529 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 06:41:59,714.714 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 06:41:59,722.722 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 06:41:59,849.849 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 06:41:59,905.905 INFO    ] time= 12/06/2026 06:41:59
[2026-06-12 06:41:59,942.942 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 06:41:59,948.948 INFO    ] Checking for existing commands in stream...
[2026-06-12 06:42:00,015.015 INFO    ] No existing commands found in stream
[2026-06-12 06:42:05,024.024 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 06:42:05,027.027 INFO    ] Waiting 1.84 seconds before fallback handling...
[2026-06-12 06:42:07,230.230 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 06:42:07,231.231 INFO    ] Checking for system updates...
[2026-06-12 06:42:07,252.252 INFO    ] 200
[2026-06-12 06:42:07,253.253 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:42:07,286.286 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 06:42:07,287.287 INFO    ] No update needed
[2026-06-12 06:42:07,288.288 INFO    ] Checking for camera pi updates...
[2026-06-12 06:42:07,308.308 INFO    ] 200
[2026-06-12 06:42:07,309.309 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:42:07,333.333 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 06:42:07,373.373 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 06:42:07,374.374 INFO    ] No camera update needed
[2026-06-12 06:42:07,376.376 INFO    ] Script finished. Safe exiting...
[2026-06-12 06:42:07,377.377 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 06:42:07,380.380 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 06:42:07,383.383 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 06:42:09,422.422 INFO    ] ================================================
[2026-06-12 06:42:09,438.438 INFO    ] Launching Daemon at Fri Jun 12 06:42:09 IST 2026
[2026-06-12 06:42:09,448.448 INFO    ] ================================================
[2026-06-12 06:42:09,814.814 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 06:42:09
[2026-06-12 06:42:10,148.148 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 06:42:10,299.299 INFO    ] Initializing speech engine...
[2026-06-12 06:42:10,304.304 INFO    ] 2026-06-12 06:42:10
[2026-06-12 06:42:10,514.514 INFO    ] 2026-06-12 06:42:10
[2026-06-12 06:42:10,542.542 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 06:42:10,729.729 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 06:42:10,738.738 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 06:42:10,884.884 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 06:42:10,936.936 INFO    ] time= 12/06/2026 06:42:10
[2026-06-12 06:42:10,960.960 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 06:42:10,966.966 INFO    ] Checking for existing commands in stream...
[2026-06-12 06:42:11,034.034 INFO    ] No existing commands found in stream
[2026-06-12 06:42:16,053.053 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 06:42:16,056.056 INFO    ] Waiting 3.39 seconds before fallback handling...
[2026-06-12 06:42:19,817.817 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 06:42:19,818.818 INFO    ] Checking for system updates...
[2026-06-12 06:42:19,839.839 INFO    ] 200
[2026-06-12 06:42:19,841.841 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:42:19,873.873 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 06:42:19,874.874 INFO    ] No update needed
[2026-06-12 06:42:19,875.875 INFO    ] Checking for camera pi updates...
[2026-06-12 06:42:19,895.895 INFO    ] 200
[2026-06-12 06:42:19,896.896 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:42:19,921.921 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 06:42:19,957.957 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 06:42:19,958.958 INFO    ] No camera update needed
[2026-06-12 06:42:19,959.959 INFO    ] Script finished. Safe exiting...
[2026-06-12 06:42:19,961.961 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 06:42:19,964.964 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 06:42:19,966.966 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 06:42:22,005.005 INFO    ] ================================================
[2026-06-12 06:42:22,020.020 INFO    ] Launching Daemon at Fri Jun 12 06:42:22 IST 2026
[2026-06-12 06:42:22,031.031 INFO    ] ================================================
[2026-06-12 06:42:22,378.378 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 06:42:22
[2026-06-12 06:42:22,715.715 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 06:42:22,854.854 INFO    ] Initializing speech engine...
[2026-06-12 06:42:22,856.856 INFO    ] 2026-06-12 06:42:22
[2026-06-12 06:42:23,077.077 INFO    ] 2026-06-12 06:42:23
[2026-06-12 06:42:23,105.105 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 06:42:23,288.288 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 06:42:23,298.298 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 06:42:23,420.420 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 06:42:23,475.475 INFO    ] time= 12/06/2026 06:42:23
[2026-06-12 06:42:23,517.517 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 06:42:23,524.524 INFO    ] Checking for existing commands in stream...
[2026-06-12 06:42:23,591.591 INFO    ] No existing commands found in stream
[2026-06-12 06:42:28,610.610 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 06:42:28,613.613 INFO    ] Waiting 3.07 seconds before fallback handling...
[2026-06-12 06:42:32,024.024 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 06:42:32,026.026 INFO    ] Checking for system updates...
[2026-06-12 06:42:32,050.050 INFO    ] 200
[2026-06-12 06:42:32,052.052 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:42:32,090.090 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 06:42:32,092.092 INFO    ] No update needed
[2026-06-12 06:42:32,093.093 INFO    ] Checking for camera pi updates...
[2026-06-12 06:42:32,119.119 INFO    ] 200
[2026-06-12 06:42:32,121.121 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:42:32,150.150 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 06:42:32,173.173 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 06:42:32,174.174 INFO    ] No camera update needed
[2026-06-12 06:42:32,176.176 INFO    ] Script finished. Safe exiting...
[2026-06-12 06:42:32,178.178 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 06:42:32,182.182 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 06:42:32,186.186 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 06:42:34,226.226 INFO    ] ================================================
[2026-06-12 06:42:34,241.241 INFO    ] Launching Daemon at Fri Jun 12 06:42:34 IST 2026
[2026-06-12 06:42:34,252.252 INFO    ] ================================================
[2026-06-12 06:42:34,576.576 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 06:42:34
[2026-06-12 06:42:34,903.903 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 06:42:35,038.038 INFO    ] Initializing speech engine...
[2026-06-12 06:42:35,050.050 INFO    ] 2026-06-12 06:42:35
[2026-06-12 06:42:35,269.269 INFO    ] 2026-06-12 06:42:35
[2026-06-12 06:42:35,297.297 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 06:42:35,479.479 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 06:42:35,483.483 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 06:42:35,618.618 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 06:42:35,682.682 INFO    ] time= 12/06/2026 06:42:35
[2026-06-12 06:42:35,684.684 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 06:42:35,711.711 INFO    ] Checking for existing commands in stream...
[2026-06-12 06:42:35,790.790 INFO    ] No existing commands found in stream
[2026-06-12 06:42:40,801.801 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 06:42:40,804.804 INFO    ] Waiting 2.17 seconds before fallback handling...
[2026-06-12 06:42:43,361.361 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 06:42:43,362.362 INFO    ] Checking for system updates...
[2026-06-12 06:42:43,384.384 INFO    ] 200
[2026-06-12 06:42:43,386.386 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:42:43,416.416 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 06:42:43,417.417 INFO    ] No update needed
[2026-06-12 06:42:43,418.418 INFO    ] Checking for camera pi updates...
[2026-06-12 06:42:43,439.439 INFO    ] 200
[2026-06-12 06:42:43,440.440 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:42:43,463.463 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 06:42:43,501.501 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 06:42:43,503.503 INFO    ] No camera update needed
[2026-06-12 06:42:43,504.504 INFO    ] Script finished. Safe exiting...
[2026-06-12 06:42:43,505.505 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 06:42:43,508.508 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 06:42:43,511.511 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 06:42:45,550.550 INFO    ] ================================================
[2026-06-12 06:42:45,565.565 INFO    ] Launching Daemon at Fri Jun 12 06:42:45 IST 2026
[2026-06-12 06:42:45,576.576 INFO    ] ================================================
[2026-06-12 06:42:45,969.969 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 06:42:45
[2026-06-12 06:42:46,303.303 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 06:42:46,447.447 INFO    ] Initializing speech engine...
[2026-06-12 06:42:46,458.458 INFO    ] 2026-06-12 06:42:46
[2026-06-12 06:42:46,673.673 INFO    ] 2026-06-12 06:42:46
[2026-06-12 06:42:46,702.702 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 06:42:46,885.885 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 06:42:46,896.896 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 06:42:47,054.054 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 06:42:47,093.093 INFO    ] time= 12/06/2026 06:42:47
[2026-06-12 06:42:47,114.114 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 06:42:47,120.120 INFO    ] Checking for existing commands in stream...
[2026-06-12 06:42:47,188.188 INFO    ] No existing commands found in stream
[2026-06-12 06:42:52,217.217 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 06:42:52,220.220 INFO    ] Waiting 3.70 seconds before fallback handling...
[2026-06-12 06:42:56,314.314 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 06:42:56,315.315 INFO    ] Checking for system updates...
[2026-06-12 06:42:56,336.336 INFO    ] 200
[2026-06-12 06:42:56,338.338 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:42:56,369.369 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 06:42:56,371.371 INFO    ] No update needed
[2026-06-12 06:42:56,372.372 INFO    ] Checking for camera pi updates...
[2026-06-12 06:42:56,393.393 INFO    ] 200
[2026-06-12 06:42:56,395.395 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:42:56,421.421 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 06:42:56,462.462 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 06:42:56,464.464 INFO    ] No camera update needed
[2026-06-12 06:42:56,465.465 INFO    ] Script finished. Safe exiting...
[2026-06-12 06:42:56,466.466 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 06:42:56,469.469 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 06:42:56,476.476 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 06:42:58,515.515 INFO    ] ================================================
[2026-06-12 06:42:58,530.530 INFO    ] Launching Daemon at Fri Jun 12 06:42:58 IST 2026
[2026-06-12 06:42:58,543.543 INFO    ] ================================================
[2026-06-12 06:42:58,898.898 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 06:42:58
[2026-06-12 06:42:59,210.210 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 06:42:59,339.339 INFO    ] Initializing speech engine...
[2026-06-12 06:42:59,343.343 INFO    ] 2026-06-12 06:42:59
[2026-06-12 06:42:59,560.560 INFO    ] 2026-06-12 06:42:59
[2026-06-12 06:42:59,587.587 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 06:42:59,736.736 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 06:42:59,778.778 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 06:42:59,919.919 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 06:42:59,965.965 INFO    ] time= 12/06/2026 06:42:59
[2026-06-12 06:43:00,015.015 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 06:43:00,026.026 INFO    ] Checking for existing commands in stream...
[2026-06-12 06:43:00,122.122 INFO    ] No existing commands found in stream
[2026-06-12 06:43:05,135.135 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 06:43:05,138.138 INFO    ] Waiting 1.32 seconds before fallback handling...
[2026-06-12 06:43:06,814.814 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 06:43:06,815.815 INFO    ] Checking for system updates...
[2026-06-12 06:43:06,837.837 INFO    ] 200
[2026-06-12 06:43:06,838.838 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:43:06,869.869 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 06:43:06,870.870 INFO    ] No update needed
[2026-06-12 06:43:06,871.871 INFO    ] Checking for camera pi updates...
[2026-06-12 06:43:06,892.892 INFO    ] 200
[2026-06-12 06:43:06,893.893 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:43:06,917.917 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 06:43:06,963.963 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 06:43:06,964.964 INFO    ] No camera update needed
[2026-06-12 06:43:06,965.965 INFO    ] Script finished. Safe exiting...
[2026-06-12 06:43:06,967.967 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 06:43:06,970.970 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 06:43:06,972.972 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 06:43:09,011.011 INFO    ] ================================================
[2026-06-12 06:43:09,025.025 INFO    ] Launching Daemon at Fri Jun 12 06:43:09 IST 2026
[2026-06-12 06:43:09,036.036 INFO    ] ================================================
[2026-06-12 06:43:09,389.389 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 06:43:09
[2026-06-12 06:43:09,699.699 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 06:43:09,845.845 INFO    ] Initializing speech engine...
[2026-06-12 06:43:09,850.850 INFO    ] 2026-06-12 06:43:09
[2026-06-12 06:43:10,052.052 INFO    ] 2026-06-12 06:43:10
[2026-06-12 06:43:10,080.080 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 06:43:10,263.263 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 06:43:10,272.272 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 06:43:10,402.402 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 06:43:10,466.466 INFO    ] time= 12/06/2026 06:43:10
[2026-06-12 06:43:10,492.492 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 06:43:10,494.494 INFO    ] Checking for existing commands in stream...
[2026-06-12 06:43:10,569.569 INFO    ] No existing commands found in stream
[2026-06-12 06:43:15,582.582 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 06:43:15,585.585 INFO    ] Waiting 1.71 seconds before fallback handling...
[2026-06-12 06:43:17,669.669 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 06:43:17,670.670 INFO    ] Checking for system updates...
[2026-06-12 06:43:17,691.691 INFO    ] 200
[2026-06-12 06:43:17,692.692 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:43:17,724.724 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 06:43:17,726.726 INFO    ] No update needed
[2026-06-12 06:43:17,727.727 INFO    ] Checking for camera pi updates...
[2026-06-12 06:43:17,746.746 INFO    ] 200
[2026-06-12 06:43:17,748.748 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:43:17,773.773 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 06:43:17,808.808 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 06:43:17,809.809 INFO    ] No camera update needed
[2026-06-12 06:43:17,811.811 INFO    ] Script finished. Safe exiting...
[2026-06-12 06:43:17,812.812 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 06:43:17,815.815 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 06:43:17,817.817 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 06:43:19,855.855 INFO    ] ================================================
[2026-06-12 06:43:19,871.871 INFO    ] Launching Daemon at Fri Jun 12 06:43:19 IST 2026
[2026-06-12 06:43:19,881.881 INFO    ] ================================================
[2026-06-12 06:43:20,232.232 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 06:43:20
[2026-06-12 06:43:20,548.548 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 06:43:20,691.691 INFO    ] Initializing speech engine...
[2026-06-12 06:43:20,700.700 INFO    ] 2026-06-12 06:43:20
[2026-06-12 06:43:20,917.917 INFO    ] 2026-06-12 06:43:20
[2026-06-12 06:43:20,946.946 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 06:43:21,143.143 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 06:43:21,147.147 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 06:43:21,286.286 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 06:43:21,353.353 INFO    ] time= 12/06/2026 06:43:21
[2026-06-12 06:43:21,387.387 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 06:43:21,394.394 INFO    ] Checking for existing commands in stream...
[2026-06-12 06:43:21,470.470 INFO    ] No existing commands found in stream
[2026-06-12 06:43:26,479.479 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 06:43:26,482.482 INFO    ] Waiting 1.25 seconds before fallback handling...
[2026-06-12 06:43:28,118.118 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 06:43:28,120.120 INFO    ] Checking for system updates...
[2026-06-12 06:43:28,141.141 INFO    ] 200
[2026-06-12 06:43:28,142.142 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:43:28,174.174 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 06:43:28,176.176 INFO    ] No update needed
[2026-06-12 06:43:28,177.177 INFO    ] Checking for camera pi updates...
[2026-06-12 06:43:28,196.196 INFO    ] 200
[2026-06-12 06:43:28,198.198 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:43:28,223.223 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 06:43:28,263.263 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 06:43:28,264.264 INFO    ] No camera update needed
[2026-06-12 06:43:28,266.266 INFO    ] Script finished. Safe exiting...
[2026-06-12 06:43:28,267.267 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 06:43:28,270.270 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 06:43:28,273.273 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 06:43:30,311.311 INFO    ] ================================================
[2026-06-12 06:43:30,327.327 INFO    ] Launching Daemon at Fri Jun 12 06:43:30 IST 2026
[2026-06-12 06:43:30,337.337 INFO    ] ================================================
[2026-06-12 06:43:30,709.709 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 06:43:30
[2026-06-12 06:43:31,022.022 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 06:43:31,152.152 INFO    ] Initializing speech engine...
[2026-06-12 06:43:31,157.157 INFO    ] 2026-06-12 06:43:31
[2026-06-12 06:43:31,385.385 INFO    ] 2026-06-12 06:43:31
[2026-06-12 06:43:31,416.416 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 06:43:31,546.546 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 06:43:31,579.579 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 06:43:31,703.703 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 06:43:31,705.705 INFO    ] time= 12/06/2026 06:43:31
[2026-06-12 06:43:31,707.707 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 06:43:31,708.708 INFO    ] Checking for existing commands in stream...
[2026-06-12 06:43:31,767.767 INFO    ] No existing commands found in stream
[2026-06-12 06:43:36,776.776 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 06:43:36,779.779 INFO    ] Waiting 3.23 seconds before fallback handling...
[2026-06-12 06:43:40,387.387 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 06:43:40,388.388 INFO    ] Checking for system updates...
[2026-06-12 06:43:40,410.410 INFO    ] 200
[2026-06-12 06:43:40,412.412 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:43:40,444.444 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 06:43:40,445.445 INFO    ] No update needed
[2026-06-12 06:43:40,446.446 INFO    ] Checking for camera pi updates...
[2026-06-12 06:43:40,466.466 INFO    ] 200
[2026-06-12 06:43:40,467.467 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:43:40,491.491 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 06:43:40,531.531 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 06:43:40,532.532 INFO    ] No camera update needed
[2026-06-12 06:43:40,533.533 INFO    ] Script finished. Safe exiting...
[2026-06-12 06:43:40,535.535 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 06:43:40,537.537 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 06:43:40,540.540 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 06:43:42,580.580 INFO    ] ================================================
[2026-06-12 06:43:42,595.595 INFO    ] Launching Daemon at Fri Jun 12 06:43:42 IST 2026
[2026-06-12 06:43:42,606.606 INFO    ] ================================================
[2026-06-12 06:43:42,960.960 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 06:43:42
[2026-06-12 06:43:43,272.272 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 06:43:43,402.402 INFO    ] Initializing speech engine...
[2026-06-12 06:43:43,410.410 INFO    ] 2026-06-12 06:43:43
[2026-06-12 06:43:43,625.625 INFO    ] 2026-06-12 06:43:43
[2026-06-12 06:43:43,653.653 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 06:43:43,838.838 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 06:43:43,841.841 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 06:43:43,998.998 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 06:43:44,047.047 INFO    ] time= 12/06/2026 06:43:44
[2026-06-12 06:43:44,069.069 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 06:43:44,075.075 INFO    ] Checking for existing commands in stream...
[2026-06-12 06:43:44,143.143 INFO    ] No existing commands found in stream
[2026-06-12 06:43:49,151.151 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 06:43:49,154.154 INFO    ] Waiting 0.37 seconds before fallback handling...
[2026-06-12 06:43:49,895.895 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 06:43:49,897.897 INFO    ] Checking for system updates...
[2026-06-12 06:43:49,917.917 INFO    ] 200
[2026-06-12 06:43:49,919.919 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:43:49,949.949 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 06:43:49,950.950 INFO    ] No update needed
[2026-06-12 06:43:49,952.952 INFO    ] Checking for camera pi updates...
[2026-06-12 06:43:49,971.971 INFO    ] 200
[2026-06-12 06:43:49,972.972 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:43:49,999.999 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 06:43:50,037.037 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 06:43:50,038.038 INFO    ] No camera update needed
[2026-06-12 06:43:50,040.040 INFO    ] Script finished. Safe exiting...
[2026-06-12 06:43:50,041.041 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 06:43:50,044.044 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 06:43:50,047.047 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 06:43:52,086.086 INFO    ] ================================================
[2026-06-12 06:43:52,101.101 INFO    ] Launching Daemon at Fri Jun 12 06:43:52 IST 2026
[2026-06-12 06:43:52,112.112 INFO    ] ================================================
[2026-06-12 06:43:52,483.483 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 06:43:52
[2026-06-12 06:43:52,800.800 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 06:43:52,934.934 INFO    ] Initializing speech engine...
[2026-06-12 06:43:52,943.943 INFO    ] 2026-06-12 06:43:52
[2026-06-12 06:43:53,168.168 INFO    ] 2026-06-12 06:43:53
[2026-06-12 06:43:53,198.198 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 06:43:53,390.390 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 06:43:53,398.398 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 06:43:53,542.542 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 06:43:53,591.591 INFO    ] time= 12/06/2026 06:43:53
[2026-06-12 06:43:53,630.630 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 06:43:53,642.642 INFO    ] Checking for existing commands in stream...
[2026-06-12 06:43:53,717.717 INFO    ] No existing commands found in stream
[2026-06-12 06:43:58,742.742 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 06:43:58,744.744 INFO    ] Waiting 0.79 seconds before fallback handling...
[2026-06-12 06:43:59,908.908 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 06:43:59,909.909 INFO    ] Checking for system updates...
[2026-06-12 06:43:59,932.932 INFO    ] 200
[2026-06-12 06:43:59,933.933 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:43:59,967.967 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 06:43:59,969.969 INFO    ] No update needed
[2026-06-12 06:43:59,970.970 INFO    ] Checking for camera pi updates...
[2026-06-12 06:43:59,990.990 INFO    ] 200
[2026-06-12 06:43:59,991.991 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:44:00,017.017 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 06:44:00,161.161 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 06:44:00,162.162 INFO    ] No camera update needed
[2026-06-12 06:44:00,163.163 INFO    ] Script finished. Safe exiting...
[2026-06-12 06:44:00,165.165 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 06:44:00,168.168 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 06:44:00,171.171 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 06:44:02,203.203 INFO    ] ================================================
[2026-06-12 06:44:02,216.216 INFO    ] Launching Daemon at Fri Jun 12 06:44:02 IST 2026
[2026-06-12 06:44:02,223.223 INFO    ] ================================================
[2026-06-12 06:44:02,572.572 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 06:44:02
[2026-06-12 06:44:02,936.936 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 06:44:03,079.079 INFO    ] Initializing speech engine...
[2026-06-12 06:44:03,093.093 INFO    ] 2026-06-12 06:44:03
[2026-06-12 06:44:03,300.300 INFO    ] 2026-06-12 06:44:03
[2026-06-12 06:44:03,329.329 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 06:44:03,514.514 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 06:44:03,518.518 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 06:44:03,653.653 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 06:44:03,714.714 INFO    ] time= 12/06/2026 06:44:03
[2026-06-12 06:44:03,747.747 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 06:44:03,749.749 INFO    ] Checking for existing commands in stream...
[2026-06-12 06:44:03,820.820 INFO    ] No existing commands found in stream
[2026-06-12 06:44:08,830.830 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 06:44:08,833.833 INFO    ] Waiting 2.96 seconds before fallback handling...
[2026-06-12 06:44:12,180.180 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 06:44:12,182.182 INFO    ] Checking for system updates...
[2026-06-12 06:44:12,203.203 INFO    ] 200
[2026-06-12 06:44:12,204.204 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:44:12,234.234 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 06:44:12,236.236 INFO    ] No update needed
[2026-06-12 06:44:12,237.237 INFO    ] Checking for camera pi updates...
[2026-06-12 06:44:12,257.257 INFO    ] 200
[2026-06-12 06:44:12,258.258 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:44:12,282.282 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 06:44:12,304.304 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 06:44:12,305.305 INFO    ] No camera update needed
[2026-06-12 06:44:12,307.307 INFO    ] Script finished. Safe exiting...
[2026-06-12 06:44:12,308.308 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 06:44:12,311.311 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 06:44:12,314.314 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 06:44:14,354.354 INFO    ] ================================================
[2026-06-12 06:44:14,369.369 INFO    ] Launching Daemon at Fri Jun 12 06:44:14 IST 2026
[2026-06-12 06:44:14,380.380 INFO    ] ================================================
[2026-06-12 06:44:14,707.707 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 06:44:14
[2026-06-12 06:44:15,018.018 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 06:44:15,161.161 INFO    ] Initializing speech engine...
[2026-06-12 06:44:15,166.166 INFO    ] 2026-06-12 06:44:15
[2026-06-12 06:44:15,371.371 INFO    ] 2026-06-12 06:44:15
[2026-06-12 06:44:15,401.401 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 06:44:15,586.586 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 06:44:15,590.590 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 06:44:15,727.727 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 06:44:15,781.781 INFO    ] time= 12/06/2026 06:44:15
[2026-06-12 06:44:15,819.819 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 06:44:15,821.821 INFO    ] Checking for existing commands in stream...
[2026-06-12 06:44:15,892.892 INFO    ] No existing commands found in stream
[2026-06-12 06:44:20,903.903 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 06:44:20,905.905 INFO    ] Waiting 0.12 seconds before fallback handling...
[2026-06-12 06:44:21,400.400 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 06:44:21,403.403 INFO    ] Checking for system updates...
[2026-06-12 06:44:21,439.439 INFO    ] 200
[2026-06-12 06:44:21,442.442 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:44:21,494.494 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 06:44:21,497.497 INFO    ] No update needed
[2026-06-12 06:44:21,499.499 INFO    ] Checking for camera pi updates...
[2026-06-12 06:44:21,537.537 INFO    ] 200
[2026-06-12 06:44:21,539.539 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:44:21,564.564 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 06:44:21,605.605 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 06:44:21,607.607 INFO    ] No camera update needed
[2026-06-12 06:44:21,608.608 INFO    ] Script finished. Safe exiting...
[2026-06-12 06:44:21,609.609 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 06:44:21,612.612 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 06:44:21,615.615 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 06:44:23,654.654 INFO    ] ================================================
[2026-06-12 06:44:23,670.670 INFO    ] Launching Daemon at Fri Jun 12 06:44:23 IST 2026
[2026-06-12 06:44:23,681.681 INFO    ] ================================================
[2026-06-12 06:44:24,015.015 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 06:44:24
[2026-06-12 06:44:24,333.333 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 06:44:24,466.466 INFO    ] Initializing speech engine...
[2026-06-12 06:44:24,471.471 INFO    ] 2026-06-12 06:44:24
[2026-06-12 06:44:24,699.699 INFO    ] 2026-06-12 06:44:24
[2026-06-12 06:44:24,729.729 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 06:44:24,861.861 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 06:44:24,927.927 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 06:44:25,071.071 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 06:44:25,139.139 INFO    ] time= 12/06/2026 06:44:25
[2026-06-12 06:44:25,167.167 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 06:44:25,174.174 INFO    ] Checking for existing commands in stream...
[2026-06-12 06:44:25,275.275 INFO    ] No existing commands found in stream
[2026-06-12 06:44:30,284.284 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 06:44:30,287.287 INFO    ] Waiting 0.55 seconds before fallback handling...
[2026-06-12 06:44:31,252.252 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 06:44:31,253.253 INFO    ] Checking for system updates...
[2026-06-12 06:44:31,274.274 INFO    ] 200
[2026-06-12 06:44:31,275.275 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:44:31,308.308 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 06:44:31,309.309 INFO    ] No update needed
[2026-06-12 06:44:31,311.311 INFO    ] Checking for camera pi updates...
[2026-06-12 06:44:31,332.332 INFO    ] 200
[2026-06-12 06:44:31,333.333 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:44:31,356.356 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 06:44:31,397.397 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 06:44:31,398.398 INFO    ] No camera update needed
[2026-06-12 06:44:31,400.400 INFO    ] Script finished. Safe exiting...
[2026-06-12 06:44:31,401.401 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 06:44:31,404.404 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 06:44:31,407.407 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 06:44:33,438.438 INFO    ] ================================================
[2026-06-12 06:44:33,454.454 INFO    ] Launching Daemon at Fri Jun 12 06:44:33 IST 2026
[2026-06-12 06:44:33,465.465 INFO    ] ================================================
[2026-06-12 06:44:33,814.814 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 06:44:33
[2026-06-12 06:44:34,150.150 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 06:44:34,301.301 INFO    ] Initializing speech engine...
[2026-06-12 06:44:34,308.308 INFO    ] 2026-06-12 06:44:34
[2026-06-12 06:44:34,516.516 INFO    ] 2026-06-12 06:44:34
[2026-06-12 06:44:34,545.545 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 06:44:34,731.731 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 06:44:34,741.741 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 06:44:34,866.866 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 06:44:34,922.922 INFO    ] time= 12/06/2026 06:44:34
[2026-06-12 06:44:34,962.962 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 06:44:34,967.967 INFO    ] Checking for existing commands in stream...
[2026-06-12 06:44:35,040.040 INFO    ] No existing commands found in stream
[2026-06-12 06:44:40,054.054 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 06:44:40,057.057 INFO    ] Waiting 0.35 seconds before fallback handling...
[2026-06-12 06:44:40,803.803 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 06:44:40,805.805 INFO    ] Checking for system updates...
[2026-06-12 06:44:40,826.826 INFO    ] 200
[2026-06-12 06:44:40,827.827 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:44:40,862.862 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 06:44:40,864.864 INFO    ] No update needed
[2026-06-12 06:44:40,865.865 INFO    ] Checking for camera pi updates...
[2026-06-12 06:44:40,885.885 INFO    ] 200
[2026-06-12 06:44:40,886.886 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:44:40,911.911 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 06:44:40,948.948 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 06:44:40,950.950 INFO    ] No camera update needed
[2026-06-12 06:44:40,951.951 INFO    ] Script finished. Safe exiting...
[2026-06-12 06:44:40,952.952 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 06:44:40,955.955 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 06:44:40,958.958 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 06:44:43,998.998 INFO    ] ================================================
[2026-06-12 06:44:43,013.013 INFO    ] Launching Daemon at Fri Jun 12 06:44:43 IST 2026
[2026-06-12 06:44:43,024.024 INFO    ] ================================================
[2026-06-12 06:44:43,352.352 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 06:44:43
[2026-06-12 06:44:43,664.664 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 06:44:43,794.794 INFO    ] Initializing speech engine...
[2026-06-12 06:44:43,801.801 INFO    ] 2026-06-12 06:44:43
[2026-06-12 06:44:44,012.012 INFO    ] 2026-06-12 06:44:43
[2026-06-12 06:44:44,041.041 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 06:44:44,223.223 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 06:44:44,233.233 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 06:44:44,361.361 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 06:44:44,420.420 INFO    ] time= 12/06/2026 06:44:44
[2026-06-12 06:44:44,452.452 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 06:44:44,458.458 INFO    ] Checking for existing commands in stream...
[2026-06-12 06:44:44,548.548 INFO    ] No existing commands found in stream
[2026-06-12 06:44:49,557.557 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 06:44:49,559.559 INFO    ] Waiting 2.19 seconds before fallback handling...
[2026-06-12 06:44:52,141.141 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 06:44:52,143.143 INFO    ] Checking for system updates...
[2026-06-12 06:44:52,164.164 INFO    ] 200
[2026-06-12 06:44:52,165.165 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:44:52,196.196 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 06:44:52,198.198 INFO    ] No update needed
[2026-06-12 06:44:52,199.199 INFO    ] Checking for camera pi updates...
[2026-06-12 06:44:52,220.220 INFO    ] 200
[2026-06-12 06:44:52,221.221 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:44:52,246.246 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 06:44:52,286.286 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 06:44:52,287.287 INFO    ] No camera update needed
[2026-06-12 06:44:52,289.289 INFO    ] Script finished. Safe exiting...
[2026-06-12 06:44:52,290.290 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 06:44:52,293.293 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 06:44:52,296.296 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 06:44:54,334.334 INFO    ] ================================================
[2026-06-12 06:44:54,350.350 INFO    ] Launching Daemon at Fri Jun 12 06:44:54 IST 2026
[2026-06-12 06:44:54,362.362 INFO    ] ================================================
[2026-06-12 06:44:54,710.710 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 06:44:54
[2026-06-12 06:44:55,028.028 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 06:44:55,161.161 INFO    ] Initializing speech engine...
[2026-06-12 06:44:55,173.173 INFO    ] 2026-06-12 06:44:55
[2026-06-12 06:44:55,380.380 INFO    ] 2026-06-12 06:44:55
[2026-06-12 06:44:55,408.408 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 06:44:55,593.593 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 06:44:55,602.602 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 06:44:55,732.732 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 06:44:55,796.796 INFO    ] time= 12/06/2026 06:44:55
[2026-06-12 06:44:55,822.822 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 06:44:55,829.829 INFO    ] Checking for existing commands in stream...
[2026-06-12 06:44:55,920.920 INFO    ] No existing commands found in stream
[2026-06-12 06:45:00,934.934 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 06:45:00,937.937 INFO    ] Waiting 3.60 seconds before fallback handling...
[2026-06-12 06:45:04,898.898 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 06:45:04,899.899 INFO    ] Checking for system updates...
[2026-06-12 06:45:04,920.920 INFO    ] 200
[2026-06-12 06:45:04,922.922 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:45:04,954.954 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 06:45:04,955.955 INFO    ] No update needed
[2026-06-12 06:45:04,957.957 INFO    ] Checking for camera pi updates...
[2026-06-12 06:45:04,976.976 INFO    ] 200
[2026-06-12 06:45:04,978.978 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:45:05,004.004 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 06:45:05,045.045 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 06:45:05,046.046 INFO    ] No camera update needed
[2026-06-12 06:45:05,047.047 INFO    ] Script finished. Safe exiting...
[2026-06-12 06:45:05,048.048 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 06:45:05,052.052 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 06:45:05,054.054 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 06:45:07,093.093 INFO    ] ================================================
[2026-06-12 06:45:07,109.109 INFO    ] Launching Daemon at Fri Jun 12 06:45:07 IST 2026
[2026-06-12 06:45:07,119.119 INFO    ] ================================================
[2026-06-12 06:45:07,477.477 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 06:45:07
[2026-06-12 06:45:07,795.795 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 06:45:07,939.939 INFO    ] Initializing speech engine...
[2026-06-12 06:45:07,944.944 INFO    ] 2026-06-12 06:45:07
[2026-06-12 06:45:08,148.148 INFO    ] 2026-06-12 06:45:08
[2026-06-12 06:45:08,176.176 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 06:45:08,299.299 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 06:45:08,362.362 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 06:45:08,501.501 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 06:45:08,568.568 INFO    ] time= 12/06/2026 06:45:08
[2026-06-12 06:45:08,593.593 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 06:45:08,599.599 INFO    ] Checking for existing commands in stream...
[2026-06-12 06:45:08,666.666 INFO    ] No existing commands found in stream
[2026-06-12 06:45:13,675.675 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 06:45:13,678.678 INFO    ] Waiting 0.65 seconds before fallback handling...
[2026-06-12 06:45:14,707.707 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 06:45:14,708.708 INFO    ] Checking for system updates...
[2026-06-12 06:45:14,730.730 INFO    ] 200
[2026-06-12 06:45:14,732.732 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:45:14,762.762 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 06:45:14,763.763 INFO    ] No update needed
[2026-06-12 06:45:14,764.764 INFO    ] Checking for camera pi updates...
[2026-06-12 06:45:14,785.785 INFO    ] 200
[2026-06-12 06:45:14,786.786 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:45:14,809.809 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 06:45:14,845.845 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 06:45:14,847.847 INFO    ] No camera update needed
[2026-06-12 06:45:14,848.848 INFO    ] Script finished. Safe exiting...
[2026-06-12 06:45:14,849.849 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 06:45:14,852.852 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 06:45:14,855.855 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 06:45:16,897.897 INFO    ] ================================================
[2026-06-12 06:45:16,913.913 INFO    ] Launching Daemon at Fri Jun 12 06:45:16 IST 2026
[2026-06-12 06:45:16,924.924 INFO    ] ================================================
[2026-06-12 06:45:17,255.255 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 06:45:17
[2026-06-12 06:45:17,566.566 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 06:45:17,708.708 INFO    ] Initializing speech engine...
[2026-06-12 06:45:17,714.714 INFO    ] 2026-06-12 06:45:17
[2026-06-12 06:45:17,916.916 INFO    ] 2026-06-12 06:45:17
[2026-06-12 06:45:17,945.945 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 06:45:18,127.127 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 06:45:18,131.131 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 06:45:18,277.277 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 06:45:18,334.334 INFO    ] time= 12/06/2026 06:45:18
[2026-06-12 06:45:18,357.357 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 06:45:18,364.364 INFO    ] Checking for existing commands in stream...
[2026-06-12 06:45:18,430.430 INFO    ] No existing commands found in stream
[2026-06-12 06:45:23,444.444 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 06:45:23,447.447 INFO    ] Waiting 1.82 seconds before fallback handling...
[2026-06-12 06:45:25,607.607 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 06:45:25,609.609 INFO    ] Checking for system updates...
[2026-06-12 06:45:25,631.631 INFO    ] 200
[2026-06-12 06:45:25,632.632 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:45:25,664.664 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 06:45:25,666.666 INFO    ] No update needed
[2026-06-12 06:45:25,668.668 INFO    ] Checking for camera pi updates...
[2026-06-12 06:45:25,688.688 INFO    ] 200
[2026-06-12 06:45:25,690.690 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:45:25,713.713 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 06:45:25,745.745 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 06:45:25,747.747 INFO    ] No camera update needed
[2026-06-12 06:45:25,748.748 INFO    ] Script finished. Safe exiting...
[2026-06-12 06:45:25,749.749 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 06:45:25,752.752 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 06:45:25,755.755 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 06:45:27,795.795 INFO    ] ================================================
[2026-06-12 06:45:27,810.810 INFO    ] Launching Daemon at Fri Jun 12 06:45:27 IST 2026
[2026-06-12 06:45:27,822.822 INFO    ] ================================================
[2026-06-12 06:45:28,216.216 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 06:45:28
[2026-06-12 06:45:28,562.562 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 06:45:28,706.706 INFO    ] Initializing speech engine...
[2026-06-12 06:45:28,720.720 INFO    ] 2026-06-12 06:45:28
[2026-06-12 06:45:28,948.948 INFO    ] 2026-06-12 06:45:28
[2026-06-12 06:45:28,977.977 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 06:45:29,112.112 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 06:45:29,176.176 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 06:45:29,314.314 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 06:45:29,373.373 INFO    ] time= 12/06/2026 06:45:29
[2026-06-12 06:45:29,405.405 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 06:45:29,412.412 INFO    ] Checking for existing commands in stream...
[2026-06-12 06:45:29,481.481 INFO    ] No existing commands found in stream
[2026-06-12 06:45:34,495.495 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 06:45:34,498.498 INFO    ] Waiting 3.51 seconds before fallback handling...
[2026-06-12 06:45:38,429.429 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 06:45:38,431.431 INFO    ] Checking for system updates...
[2026-06-12 06:45:38,452.452 INFO    ] 200
[2026-06-12 06:45:38,454.454 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:45:38,484.484 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 06:45:38,486.486 INFO    ] No update needed
[2026-06-12 06:45:38,487.487 INFO    ] Checking for camera pi updates...
[2026-06-12 06:45:38,511.511 INFO    ] 200
[2026-06-12 06:45:38,512.512 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:45:38,538.538 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 06:45:38,563.563 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 06:45:38,564.564 INFO    ] No camera update needed
[2026-06-12 06:45:38,566.566 INFO    ] Script finished. Safe exiting...
[2026-06-12 06:45:38,567.567 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 06:45:38,570.570 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 06:45:38,573.573 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 06:45:40,614.614 INFO    ] ================================================
[2026-06-12 06:45:40,631.631 INFO    ] Launching Daemon at Fri Jun 12 06:45:40 IST 2026
[2026-06-12 06:45:40,643.643 INFO    ] ================================================
[2026-06-12 06:45:41,014.014 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 06:45:41
[2026-06-12 06:45:41,354.354 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 06:45:41,508.508 INFO    ] Initializing speech engine...
[2026-06-12 06:45:41,513.513 INFO    ] 2026-06-12 06:45:41
[2026-06-12 06:45:41,718.718 INFO    ] 2026-06-12 06:45:41
[2026-06-12 06:45:41,747.747 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 06:45:41,932.932 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 06:45:41,941.941 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 06:45:42,071.071 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 06:45:42,138.138 INFO    ] time= 12/06/2026 06:45:42
[2026-06-12 06:45:42,162.162 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 06:45:42,169.169 INFO    ] Checking for existing commands in stream...
[2026-06-12 06:45:42,259.259 INFO    ] No existing commands found in stream
[2026-06-12 06:45:47,269.269 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 06:45:47,272.272 INFO    ] Waiting 2.19 seconds before fallback handling...
[2026-06-12 06:45:49,867.867 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 06:45:49,868.868 INFO    ] Checking for system updates...
[2026-06-12 06:45:49,890.890 INFO    ] 200
[2026-06-12 06:45:49,892.892 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:45:49,924.924 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 06:45:49,926.926 INFO    ] No update needed
[2026-06-12 06:45:49,927.927 INFO    ] Checking for camera pi updates...
[2026-06-12 06:45:49,947.947 INFO    ] 200
[2026-06-12 06:45:49,949.949 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:45:49,972.972 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 06:45:50,006.006 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 06:45:50,007.007 INFO    ] No camera update needed
[2026-06-12 06:45:50,008.008 INFO    ] Script finished. Safe exiting...
[2026-06-12 06:45:50,010.010 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 06:45:50,013.013 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 06:45:50,015.015 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 06:45:52,053.053 INFO    ] ================================================
[2026-06-12 06:45:52,069.069 INFO    ] Launching Daemon at Fri Jun 12 06:45:52 IST 2026
[2026-06-12 06:45:52,081.081 INFO    ] ================================================
[2026-06-12 06:45:52,445.445 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 06:45:52
[2026-06-12 06:45:52,787.787 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 06:45:52,942.942 INFO    ] Initializing speech engine...
[2026-06-12 06:45:52,946.946 INFO    ] 2026-06-12 06:45:52
[2026-06-12 06:45:53,153.153 INFO    ] 2026-06-12 06:45:53
[2026-06-12 06:45:53,181.181 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 06:45:53,366.366 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 06:45:53,377.377 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 06:45:53,508.508 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 06:45:53,575.575 INFO    ] time= 12/06/2026 06:45:53
[2026-06-12 06:45:53,599.599 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 06:45:53,605.605 INFO    ] Checking for existing commands in stream...
[2026-06-12 06:45:53,672.672 INFO    ] No existing commands found in stream
[2026-06-12 06:45:58,697.697 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 06:45:58,700.700 INFO    ] Waiting 0.67 seconds before fallback handling...
[2026-06-12 06:45:59,786.786 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 06:45:59,788.788 INFO    ] Checking for system updates...
[2026-06-12 06:45:59,809.809 INFO    ] 200
[2026-06-12 06:45:59,811.811 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:45:59,842.842 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 06:45:59,843.843 INFO    ] No update needed
[2026-06-12 06:45:59,845.845 INFO    ] Checking for camera pi updates...
[2026-06-12 06:45:59,866.866 INFO    ] 200
[2026-06-12 06:45:59,867.867 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:45:59,893.893 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 06:45:59,928.928 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 06:45:59,930.930 INFO    ] No camera update needed
[2026-06-12 06:45:59,931.931 INFO    ] Script finished. Safe exiting...
[2026-06-12 06:45:59,933.933 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 06:45:59,936.936 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 06:45:59,939.939 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 06:46:01,974.974 INFO    ] ================================================
[2026-06-12 06:46:01,987.987 INFO    ] Launching Daemon at Fri Jun 12 06:46:01 IST 2026
[2026-06-12 06:46:02,995.995 INFO    ] ================================================
[2026-06-12 06:46:02,352.352 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 06:46:02
[2026-06-12 06:46:02,721.721 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 06:46:02,857.857 INFO    ] Initializing speech engine...
[2026-06-12 06:46:02,861.861 INFO    ] 2026-06-12 06:46:02
[2026-06-12 06:46:03,082.082 INFO    ] 2026-06-12 06:46:03
[2026-06-12 06:46:03,111.111 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 06:46:03,248.248 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 06:46:03,302.302 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 06:46:03,442.442 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 06:46:03,506.506 INFO    ] time= 12/06/2026 06:46:03
[2026-06-12 06:46:03,535.535 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 06:46:03,541.541 INFO    ] Checking for existing commands in stream...
[2026-06-12 06:46:03,607.607 INFO    ] No existing commands found in stream
[2026-06-12 06:46:08,618.618 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 06:46:08,620.620 INFO    ] Waiting 2.33 seconds before fallback handling...
[2026-06-12 06:46:11,298.298 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 06:46:11,300.300 INFO    ] Checking for system updates...
[2026-06-12 06:46:11,321.321 INFO    ] 200
[2026-06-12 06:46:11,322.322 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:46:11,355.355 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 06:46:11,356.356 INFO    ] No update needed
[2026-06-12 06:46:11,357.357 INFO    ] Checking for camera pi updates...
[2026-06-12 06:46:11,378.378 INFO    ] 200
[2026-06-12 06:46:11,379.379 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:46:11,403.403 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 06:46:11,444.444 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 06:46:11,445.445 INFO    ] No camera update needed
[2026-06-12 06:46:11,447.447 INFO    ] Script finished. Safe exiting...
[2026-06-12 06:46:11,448.448 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 06:46:11,451.451 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 06:46:11,454.454 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 06:46:13,494.494 INFO    ] ================================================
[2026-06-12 06:46:13,509.509 INFO    ] Launching Daemon at Fri Jun 12 06:46:13 IST 2026
[2026-06-12 06:46:13,520.520 INFO    ] ================================================
[2026-06-12 06:46:13,897.897 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 06:46:13
[2026-06-12 06:46:14,208.208 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 06:46:14,339.339 INFO    ] Initializing speech engine...
[2026-06-12 06:46:14,351.351 INFO    ] 2026-06-12 06:46:14
[2026-06-12 06:46:14,557.557 INFO    ] 2026-06-12 06:46:14
[2026-06-12 06:46:14,586.586 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 06:46:14,770.770 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 06:46:14,778.778 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 06:46:14,908.908 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 06:46:14,975.975 INFO    ] time= 12/06/2026 06:46:14
[2026-06-12 06:46:15,000.000 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 06:46:15,005.005 INFO    ] Checking for existing commands in stream...
[2026-06-12 06:46:15,096.096 INFO    ] No existing commands found in stream
[2026-06-12 06:46:20,104.104 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 06:46:20,107.107 INFO    ] Waiting 0.18 seconds before fallback handling...
[2026-06-12 06:46:20,630.630 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 06:46:20,632.632 INFO    ] Checking for system updates...
[2026-06-12 06:46:20,652.652 INFO    ] 200
[2026-06-12 06:46:20,653.653 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:46:20,686.686 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 06:46:20,688.688 INFO    ] No update needed
[2026-06-12 06:46:20,689.689 INFO    ] Checking for camera pi updates...
[2026-06-12 06:46:20,710.710 INFO    ] 200
[2026-06-12 06:46:20,711.711 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:46:20,734.734 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 06:46:20,770.770 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 06:46:20,771.771 INFO    ] No camera update needed
[2026-06-12 06:46:20,773.773 INFO    ] Script finished. Safe exiting...
[2026-06-12 06:46:20,774.774 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 06:46:20,777.777 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 06:46:20,779.779 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 06:46:22,821.821 INFO    ] ================================================
[2026-06-12 06:46:22,836.836 INFO    ] Launching Daemon at Fri Jun 12 06:46:22 IST 2026
[2026-06-12 06:46:22,847.847 INFO    ] ================================================
[2026-06-12 06:46:23,188.188 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 06:46:23
[2026-06-12 06:46:23,501.501 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 06:46:23,635.635 INFO    ] Initializing speech engine...
[2026-06-12 06:46:23,642.642 INFO    ] 2026-06-12 06:46:23
[2026-06-12 06:46:23,856.856 INFO    ] 2026-06-12 06:46:23
[2026-06-12 06:46:23,885.885 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 06:46:24,019.019 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 06:46:24,073.073 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 06:46:24,209.209 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 06:46:24,276.276 INFO    ] time= 12/06/2026 06:46:24
[2026-06-12 06:46:24,305.305 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 06:46:24,312.312 INFO    ] Checking for existing commands in stream...
[2026-06-12 06:46:24,379.379 INFO    ] No existing commands found in stream
[2026-06-12 06:46:29,388.388 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 06:46:29,391.391 INFO    ] Waiting 3.69 seconds before fallback handling...
[2026-06-12 06:46:33,451.451 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 06:46:33,452.452 INFO    ] Checking for system updates...
[2026-06-12 06:46:33,473.473 INFO    ] 200
[2026-06-12 06:46:33,474.474 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:46:33,507.507 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 06:46:33,508.508 INFO    ] No update needed
[2026-06-12 06:46:33,509.509 INFO    ] Checking for camera pi updates...
[2026-06-12 06:46:33,529.529 INFO    ] 200
[2026-06-12 06:46:33,530.530 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:46:33,558.558 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 06:46:33,594.594 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 06:46:33,595.595 INFO    ] No camera update needed
[2026-06-12 06:46:33,597.597 INFO    ] Script finished. Safe exiting...
[2026-06-12 06:46:33,598.598 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 06:46:33,601.601 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 06:46:33,604.604 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 06:46:35,644.644 INFO    ] ================================================
[2026-06-12 06:46:35,659.659 INFO    ] Launching Daemon at Fri Jun 12 06:46:35 IST 2026
[2026-06-12 06:46:35,669.669 INFO    ] ================================================
[2026-06-12 06:46:36,033.033 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 06:46:36
[2026-06-12 06:46:36,349.349 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 06:46:36,483.483 INFO    ] Initializing speech engine...
[2026-06-12 06:46:36,495.495 INFO    ] 2026-06-12 06:46:36
[2026-06-12 06:46:36,704.704 INFO    ] 2026-06-12 06:46:36
[2026-06-12 06:46:36,734.734 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 06:46:36,920.920 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 06:46:36,924.924 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 06:46:37,060.060 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 06:46:37,121.121 INFO    ] time= 12/06/2026 06:46:37
[2026-06-12 06:46:37,154.154 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 06:46:37,156.156 INFO    ] Checking for existing commands in stream...
[2026-06-12 06:46:37,230.230 INFO    ] No existing commands found in stream
[2026-06-12 06:46:42,238.238 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 06:46:42,241.241 INFO    ] Waiting 0.08 seconds before fallback handling...
[2026-06-12 06:46:42,659.659 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 06:46:42,660.660 INFO    ] Checking for system updates...
[2026-06-12 06:46:42,683.683 INFO    ] 200
[2026-06-12 06:46:42,684.684 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:46:42,715.715 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 06:46:42,716.716 INFO    ] No update needed
[2026-06-12 06:46:42,717.717 INFO    ] Checking for camera pi updates...
[2026-06-12 06:46:42,738.738 INFO    ] 200
[2026-06-12 06:46:42,739.739 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:46:42,764.764 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 06:46:42,804.804 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 06:46:42,805.805 INFO    ] No camera update needed
[2026-06-12 06:46:42,806.806 INFO    ] Script finished. Safe exiting...
[2026-06-12 06:46:42,808.808 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 06:46:42,811.811 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 06:46:42,814.814 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 06:46:44,853.853 INFO    ] ================================================
[2026-06-12 06:46:44,868.868 INFO    ] Launching Daemon at Fri Jun 12 06:46:44 IST 2026
[2026-06-12 06:46:44,879.879 INFO    ] ================================================
[2026-06-12 06:46:45,232.232 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 06:46:45
[2026-06-12 06:46:45,543.543 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 06:46:45,676.676 INFO    ] Initializing speech engine...
[2026-06-12 06:46:45,680.680 INFO    ] 2026-06-12 06:46:45
[2026-06-12 06:46:45,870.870 INFO    ] 2026-06-12 06:46:45
[2026-06-12 06:46:45,912.912 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 06:46:46,062.062 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 06:46:46,116.116 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 06:46:46,267.267 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 06:46:46,331.331 INFO    ] time= 12/06/2026 06:46:46
[2026-06-12 06:46:46,360.360 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 06:46:46,362.362 INFO    ] Checking for existing commands in stream...
[2026-06-12 06:46:46,458.458 INFO    ] No existing commands found in stream
[2026-06-12 06:46:51,472.472 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 06:46:51,475.475 INFO    ] Waiting 1.96 seconds before fallback handling...
[2026-06-12 06:46:53,808.808 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 06:46:53,809.809 INFO    ] Checking for system updates...
[2026-06-12 06:46:53,831.831 INFO    ] 200
[2026-06-12 06:46:53,832.832 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:46:53,863.863 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 06:46:53,865.865 INFO    ] No update needed
[2026-06-12 06:46:53,866.866 INFO    ] Checking for camera pi updates...
[2026-06-12 06:46:53,888.888 INFO    ] 200
[2026-06-12 06:46:53,890.890 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:46:53,915.915 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 06:46:53,941.941 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 06:46:53,943.943 INFO    ] No camera update needed
[2026-06-12 06:46:53,944.944 INFO    ] Script finished. Safe exiting...
[2026-06-12 06:46:53,945.945 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 06:46:53,949.949 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 06:46:53,952.952 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 06:46:55,992.992 INFO    ] ================================================
[2026-06-12 06:46:56,007.007 INFO    ] Launching Daemon at Fri Jun 12 06:46:56 IST 2026
[2026-06-12 06:46:56,017.017 INFO    ] ================================================
[2026-06-12 06:46:56,396.396 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 06:46:56
[2026-06-12 06:46:56,735.735 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 06:46:56,877.877 INFO    ] Initializing speech engine...
[2026-06-12 06:46:56,882.882 INFO    ] 2026-06-12 06:46:56
[2026-06-12 06:46:57,085.085 INFO    ] 2026-06-12 06:46:57
[2026-06-12 06:46:57,113.113 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 06:46:57,296.296 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 06:46:57,299.299 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 06:46:57,435.435 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 06:46:57,500.500 INFO    ] time= 12/06/2026 06:46:57
[2026-06-12 06:46:57,530.530 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 06:46:57,537.537 INFO    ] Checking for existing commands in stream...
[2026-06-12 06:46:57,602.602 INFO    ] No existing commands found in stream
[2026-06-12 06:47:02,612.612 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 06:47:02,614.614 INFO    ] Waiting 3.23 seconds before fallback handling...
[2026-06-12 06:47:06,242.242 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 06:47:06,243.243 INFO    ] Checking for system updates...
[2026-06-12 06:47:06,265.265 INFO    ] 200
[2026-06-12 06:47:06,266.266 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:47:06,296.296 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 06:47:06,297.297 INFO    ] No update needed
[2026-06-12 06:47:06,299.299 INFO    ] Checking for camera pi updates...
[2026-06-12 06:47:06,319.319 INFO    ] 200
[2026-06-12 06:47:06,321.321 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:47:06,345.345 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 06:47:06,381.381 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 06:47:06,382.382 INFO    ] No camera update needed
[2026-06-12 06:47:06,384.384 INFO    ] Script finished. Safe exiting...
[2026-06-12 06:47:06,385.385 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 06:47:06,388.388 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 06:47:06,391.391 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 06:47:08,430.430 INFO    ] ================================================
[2026-06-12 06:47:08,446.446 INFO    ] Launching Daemon at Fri Jun 12 06:47:08 IST 2026
[2026-06-12 06:47:08,457.457 INFO    ] ================================================
[2026-06-12 06:47:08,810.810 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 06:47:08
[2026-06-12 06:47:09,123.123 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 06:47:09,267.267 INFO    ] Initializing speech engine...
[2026-06-12 06:47:09,272.272 INFO    ] 2026-06-12 06:47:09
[2026-06-12 06:47:09,476.476 INFO    ] 2026-06-12 06:47:09
[2026-06-12 06:47:09,505.505 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 06:47:09,686.686 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 06:47:09,689.689 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 06:47:09,817.817 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 06:47:09,883.883 INFO    ] time= 12/06/2026 06:47:09
[2026-06-12 06:47:09,914.914 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 06:47:09,921.921 INFO    ] Checking for existing commands in stream...
[2026-06-12 06:47:10,011.011 INFO    ] No existing commands found in stream
[2026-06-12 06:47:15,020.020 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 06:47:15,023.023 INFO    ] Waiting 2.04 seconds before fallback handling...
[2026-06-12 06:47:17,398.398 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 06:47:17,399.399 INFO    ] Checking for system updates...
[2026-06-12 06:47:17,428.428 INFO    ] 200
[2026-06-12 06:47:17,430.430 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:47:17,468.468 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 06:47:17,470.470 INFO    ] No update needed
[2026-06-12 06:47:17,472.472 INFO    ] Checking for camera pi updates...
[2026-06-12 06:47:17,494.494 INFO    ] 200
[2026-06-12 06:47:17,495.495 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:47:17,521.521 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 06:47:17,572.572 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 06:47:17,573.573 INFO    ] No camera update needed
[2026-06-12 06:47:17,575.575 INFO    ] Script finished. Safe exiting...
[2026-06-12 06:47:17,576.576 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 06:47:17,580.580 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 06:47:17,583.583 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 06:47:19,616.616 INFO    ] ================================================
[2026-06-12 06:47:19,632.632 INFO    ] Launching Daemon at Fri Jun 12 06:47:19 IST 2026
[2026-06-12 06:47:19,643.643 INFO    ] ================================================
[2026-06-12 06:47:19,999.999 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 06:47:19
[2026-06-12 06:47:20,333.333 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 06:47:20,483.483 INFO    ] Initializing speech engine...
[2026-06-12 06:47:20,488.488 INFO    ] 2026-06-12 06:47:20
[2026-06-12 06:47:20,696.696 INFO    ] 2026-06-12 06:47:20
[2026-06-12 06:47:20,725.725 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 06:47:20,908.908 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 06:47:20,917.917 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 06:47:21,045.045 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 06:47:21,113.113 INFO    ] time= 12/06/2026 06:47:21
[2026-06-12 06:47:21,137.137 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 06:47:21,144.144 INFO    ] Checking for existing commands in stream...
[2026-06-12 06:47:21,210.210 INFO    ] No existing commands found in stream
[2026-06-12 06:47:26,223.223 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 06:47:26,225.225 INFO    ] Waiting 0.47 seconds before fallback handling...
[2026-06-12 06:47:27,079.079 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 06:47:27,081.081 INFO    ] Checking for system updates...
[2026-06-12 06:47:27,102.102 INFO    ] 200
[2026-06-12 06:47:27,104.104 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:47:27,134.134 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 06:47:27,136.136 INFO    ] No update needed
[2026-06-12 06:47:27,137.137 INFO    ] Checking for camera pi updates...
[2026-06-12 06:47:27,157.157 INFO    ] 200
[2026-06-12 06:47:27,159.159 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:47:27,183.183 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 06:47:27,208.208 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 06:47:27,209.209 INFO    ] No camera update needed
[2026-06-12 06:47:27,211.211 INFO    ] Script finished. Safe exiting...
[2026-06-12 06:47:27,212.212 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 06:47:27,215.215 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 06:47:27,218.218 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 06:47:29,258.258 INFO    ] ================================================
[2026-06-12 06:47:29,273.273 INFO    ] Launching Daemon at Fri Jun 12 06:47:29 IST 2026
[2026-06-12 06:47:29,284.284 INFO    ] ================================================
[2026-06-12 06:47:29,612.612 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 06:47:29
[2026-06-12 06:47:29,928.928 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 06:47:30,071.071 INFO    ] Initializing speech engine...
[2026-06-12 06:47:30,076.076 INFO    ] 2026-06-12 06:47:30
[2026-06-12 06:47:30,280.280 INFO    ] 2026-06-12 06:47:30
[2026-06-12 06:47:30,309.309 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 06:47:30,492.492 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 06:47:30,501.501 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 06:47:30,628.628 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 06:47:30,685.685 INFO    ] time= 12/06/2026 06:47:30
[2026-06-12 06:47:30,719.719 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 06:47:30,724.724 INFO    ] Checking for existing commands in stream...
[2026-06-12 06:47:30,819.819 INFO    ] No existing commands found in stream
[2026-06-12 06:47:35,828.828 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 06:47:35,831.831 INFO    ] Waiting 2.11 seconds before fallback handling...
[2026-06-12 06:47:38,325.325 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 06:47:38,327.327 INFO    ] Checking for system updates...
[2026-06-12 06:47:38,347.347 INFO    ] 200
[2026-06-12 06:47:38,348.348 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:47:38,381.381 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 06:47:38,383.383 INFO    ] No update needed
[2026-06-12 06:47:38,384.384 INFO    ] Checking for camera pi updates...
[2026-06-12 06:47:38,404.404 INFO    ] 200
[2026-06-12 06:47:38,405.405 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:47:38,430.430 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 06:47:38,470.470 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 06:47:38,471.471 INFO    ] No camera update needed
[2026-06-12 06:47:38,472.472 INFO    ] Script finished. Safe exiting...
[2026-06-12 06:47:38,474.474 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 06:47:38,477.477 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 06:47:38,479.479 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 06:47:40,519.519 INFO    ] ================================================
[2026-06-12 06:47:40,534.534 INFO    ] Launching Daemon at Fri Jun 12 06:47:40 IST 2026
[2026-06-12 06:47:40,545.545 INFO    ] ================================================
[2026-06-12 06:47:40,914.914 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 06:47:40
[2026-06-12 06:47:41,231.231 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 06:47:41,371.371 INFO    ] Initializing speech engine...
[2026-06-12 06:47:41,382.382 INFO    ] 2026-06-12 06:47:41
[2026-06-12 06:47:41,585.585 INFO    ] 2026-06-12 06:47:41
[2026-06-12 06:47:41,615.615 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 06:47:41,800.800 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 06:47:41,803.803 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 06:47:41,938.938 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 06:47:41,998.998 INFO    ] time= 12/06/2026 06:47:41
[2026-06-12 06:47:42,031.031 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 06:47:42,037.037 INFO    ] Checking for existing commands in stream...
[2026-06-12 06:47:42,103.103 INFO    ] No existing commands found in stream
[2026-06-12 06:47:47,117.117 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 06:47:47,120.120 INFO    ] Waiting 2.53 seconds before fallback handling...
[2026-06-12 06:47:50,052.052 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 06:47:50,054.054 INFO    ] Checking for system updates...
[2026-06-12 06:47:50,076.076 INFO    ] 200
[2026-06-12 06:47:50,077.077 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:47:50,113.113 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 06:47:50,114.114 INFO    ] No update needed
[2026-06-12 06:47:50,115.115 INFO    ] Checking for camera pi updates...
[2026-06-12 06:47:50,135.135 INFO    ] 200
[2026-06-12 06:47:50,137.137 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:47:50,161.161 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 06:47:50,203.203 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 06:47:50,205.205 INFO    ] No camera update needed
[2026-06-12 06:47:50,206.206 INFO    ] Script finished. Safe exiting...
[2026-06-12 06:47:50,207.207 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 06:47:50,211.211 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 06:47:50,214.214 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 06:47:52,252.252 INFO    ] ================================================
[2026-06-12 06:47:52,267.267 INFO    ] Launching Daemon at Fri Jun 12 06:47:52 IST 2026
[2026-06-12 06:47:52,278.278 INFO    ] ================================================
[2026-06-12 06:47:52,628.628 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 06:47:52
[2026-06-12 06:47:52,942.942 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 06:47:53,071.071 INFO    ] Initializing speech engine...
[2026-06-12 06:47:53,076.076 INFO    ] 2026-06-12 06:47:53
[2026-06-12 06:47:53,296.296 INFO    ] 2026-06-12 06:47:53
[2026-06-12 06:47:53,325.325 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 06:47:53,510.510 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 06:47:53,514.514 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 06:47:53,653.653 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 06:47:53,707.707 INFO    ] time= 12/06/2026 06:47:53
[2026-06-12 06:47:53,741.741 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 06:47:53,747.747 INFO    ] Checking for existing commands in stream...
[2026-06-12 06:47:53,819.819 INFO    ] No existing commands found in stream
[2026-06-12 06:47:58,828.828 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 06:47:58,831.831 INFO    ] Waiting 2.07 seconds before fallback handling...
[2026-06-12 06:48:01,277.277 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 06:48:01,279.279 INFO    ] Checking for system updates...
[2026-06-12 06:48:01,321.321 INFO    ] 200
[2026-06-12 06:48:01,324.324 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:48:01,374.374 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 06:48:01,376.376 INFO    ] No update needed
[2026-06-12 06:48:01,378.378 INFO    ] Checking for camera pi updates...
[2026-06-12 06:48:01,413.413 INFO    ] 200
[2026-06-12 06:48:01,415.415 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:48:01,446.446 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 06:48:01,491.491 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 06:48:01,493.493 INFO    ] No camera update needed
[2026-06-12 06:48:01,496.496 INFO    ] Script finished. Safe exiting...
[2026-06-12 06:48:01,498.498 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 06:48:01,502.502 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 06:48:01,507.507 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 06:48:03,548.548 INFO    ] ================================================
[2026-06-12 06:48:03,564.564 INFO    ] Launching Daemon at Fri Jun 12 06:48:03 IST 2026
[2026-06-12 06:48:03,575.575 INFO    ] ================================================
[2026-06-12 06:48:03,937.937 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 06:48:03
[2026-06-12 06:48:04,251.251 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 06:48:04,382.382 INFO    ] Initializing speech engine...
[2026-06-12 06:48:04,386.386 INFO    ] 2026-06-12 06:48:04
[2026-06-12 06:48:04,605.605 INFO    ] 2026-06-12 06:48:04
[2026-06-12 06:48:04,634.634 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 06:48:04,820.820 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 06:48:04,824.824 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 06:48:04,955.955 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 06:48:05,011.011 INFO    ] time= 12/06/2026 06:48:04
[2026-06-12 06:48:05,051.051 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 06:48:05,057.057 INFO    ] Checking for existing commands in stream...
[2026-06-12 06:48:05,129.129 INFO    ] No existing commands found in stream
[2026-06-12 06:48:10,138.138 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 06:48:10,141.141 INFO    ] Waiting 3.34 seconds before fallback handling...
[2026-06-12 06:48:13,860.860 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 06:48:13,861.861 INFO    ] Checking for system updates...
[2026-06-12 06:48:13,883.883 INFO    ] 200
[2026-06-12 06:48:13,885.885 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:48:13,915.915 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 06:48:13,916.916 INFO    ] No update needed
[2026-06-12 06:48:13,918.918 INFO    ] Checking for camera pi updates...
[2026-06-12 06:48:13,939.939 INFO    ] 200
[2026-06-12 06:48:13,940.940 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:48:13,966.966 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 06:48:14,105.105 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 06:48:14,107.107 INFO    ] No camera update needed
[2026-06-12 06:48:14,108.108 INFO    ] Script finished. Safe exiting...
[2026-06-12 06:48:14,110.110 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 06:48:14,113.113 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 06:48:14,116.116 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 06:48:16,157.157 INFO    ] ================================================
[2026-06-12 06:48:16,172.172 INFO    ] Launching Daemon at Fri Jun 12 06:48:16 IST 2026
[2026-06-12 06:48:16,183.183 INFO    ] ================================================
[2026-06-12 06:48:16,529.529 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 06:48:16
[2026-06-12 06:48:16,841.841 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 06:48:16,971.971 INFO    ] Initializing speech engine...
[2026-06-12 06:48:16,975.975 INFO    ] 2026-06-12 06:48:16
[2026-06-12 06:48:17,192.192 INFO    ] 2026-06-12 06:48:17
[2026-06-12 06:48:17,222.222 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 06:48:17,408.408 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 06:48:17,411.411 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 06:48:17,548.548 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 06:48:17,607.607 INFO    ] time= 12/06/2026 06:48:17
[2026-06-12 06:48:17,639.639 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 06:48:17,646.646 INFO    ] Checking for existing commands in stream...
[2026-06-12 06:48:17,716.716 INFO    ] No existing commands found in stream
[2026-06-12 06:48:22,725.725 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 06:48:22,727.727 INFO    ] Waiting 2.39 seconds before fallback handling...
[2026-06-12 06:48:25,472.472 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 06:48:25,474.474 INFO    ] Checking for system updates...
[2026-06-12 06:48:25,495.495 INFO    ] 200
[2026-06-12 06:48:25,496.496 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:48:25,526.526 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 06:48:25,528.528 INFO    ] No update needed
[2026-06-12 06:48:25,529.529 INFO    ] Checking for camera pi updates...
[2026-06-12 06:48:25,549.549 INFO    ] 200
[2026-06-12 06:48:25,551.551 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:48:25,575.575 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 06:48:25,624.624 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 06:48:25,625.625 INFO    ] No camera update needed
[2026-06-12 06:48:25,627.627 INFO    ] Script finished. Safe exiting...
[2026-06-12 06:48:25,628.628 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 06:48:25,632.632 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 06:48:25,635.635 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 06:48:27,675.675 INFO    ] ================================================
[2026-06-12 06:48:27,691.691 INFO    ] Launching Daemon at Fri Jun 12 06:48:27 IST 2026
[2026-06-12 06:48:27,702.702 INFO    ] ================================================
[2026-06-12 06:48:28,089.089 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 06:48:28
[2026-06-12 06:48:28,433.433 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 06:48:28,591.591 INFO    ] Initializing speech engine...
[2026-06-12 06:48:28,598.598 INFO    ] 2026-06-12 06:48:28
[2026-06-12 06:48:28,802.802 INFO    ] 2026-06-12 06:48:28
[2026-06-12 06:48:28,831.831 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 06:48:29,015.015 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 06:48:29,025.025 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 06:48:29,152.152 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 06:48:29,218.218 INFO    ] time= 12/06/2026 06:48:29
[2026-06-12 06:48:29,245.245 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 06:48:29,252.252 INFO    ] Checking for existing commands in stream...
[2026-06-12 06:48:29,320.320 INFO    ] No existing commands found in stream
[2026-06-12 06:48:34,329.329 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 06:48:34,333.333 INFO    ] Waiting 2.41 seconds before fallback handling...
[2026-06-12 06:48:37,112.112 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 06:48:37,113.113 INFO    ] Checking for system updates...
[2026-06-12 06:48:37,136.136 INFO    ] 200
[2026-06-12 06:48:37,137.137 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:48:37,170.170 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 06:48:37,172.172 INFO    ] No update needed
[2026-06-12 06:48:37,173.173 INFO    ] Checking for camera pi updates...
[2026-06-12 06:48:37,196.196 INFO    ] 200
[2026-06-12 06:48:37,197.197 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:48:37,221.221 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 06:48:37,266.266 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 06:48:37,267.267 INFO    ] No camera update needed
[2026-06-12 06:48:37,269.269 INFO    ] Script finished. Safe exiting...
[2026-06-12 06:48:37,270.270 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 06:48:37,273.273 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 06:48:37,276.276 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 06:48:39,317.317 INFO    ] ================================================
[2026-06-12 06:48:39,333.333 INFO    ] Launching Daemon at Fri Jun 12 06:48:39 IST 2026
[2026-06-12 06:48:39,344.344 INFO    ] ================================================
[2026-06-12 06:48:39,667.667 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 06:48:39
[2026-06-12 06:48:39,977.977 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 06:48:40,108.108 INFO    ] Initializing speech engine...
[2026-06-12 06:48:40,111.111 INFO    ] 2026-06-12 06:48:40
[2026-06-12 06:48:40,329.329 INFO    ] 2026-06-12 06:48:40
[2026-06-12 06:48:40,359.359 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 06:48:40,491.491 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 06:48:40,544.544 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 06:48:40,676.676 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 06:48:40,737.737 INFO    ] time= 12/06/2026 06:48:40
[2026-06-12 06:48:40,766.766 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 06:48:40,780.780 INFO    ] Checking for existing commands in stream...
[2026-06-12 06:48:40,846.846 INFO    ] No existing commands found in stream
[2026-06-12 06:48:45,852.852 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 06:48:45,855.855 INFO    ] Waiting 2.24 seconds before fallback handling...
[2026-06-12 06:48:48,450.450 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 06:48:48,451.451 INFO    ] Checking for system updates...
[2026-06-12 06:48:48,472.472 INFO    ] 200
[2026-06-12 06:48:48,473.473 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:48:48,506.506 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 06:48:48,507.507 INFO    ] No update needed
[2026-06-12 06:48:48,508.508 INFO    ] Checking for camera pi updates...
[2026-06-12 06:48:48,528.528 INFO    ] 200
[2026-06-12 06:48:48,530.530 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:48:48,555.555 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 06:48:48,593.593 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 06:48:48,595.595 INFO    ] No camera update needed
[2026-06-12 06:48:48,596.596 INFO    ] Script finished. Safe exiting...
[2026-06-12 06:48:48,597.597 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 06:48:48,600.600 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 06:48:48,603.603 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 06:48:50,642.642 INFO    ] ================================================
[2026-06-12 06:48:50,663.663 INFO    ] Launching Daemon at Fri Jun 12 06:48:50 IST 2026
[2026-06-12 06:48:50,674.674 INFO    ] ================================================
[2026-06-12 06:48:51,047.047 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 06:48:51
[2026-06-12 06:48:51,361.361 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 06:48:51,494.494 INFO    ] Initializing speech engine...
[2026-06-12 06:48:51,499.499 INFO    ] 2026-06-12 06:48:51
[2026-06-12 06:48:51,727.727 INFO    ] 2026-06-12 06:48:51
[2026-06-12 06:48:51,758.758 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 06:48:51,955.955 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 06:48:51,958.958 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 06:48:52,097.097 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 06:48:52,159.159 INFO    ] time= 12/06/2026 06:48:52
[2026-06-12 06:48:52,176.176 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 06:48:52,177.177 INFO    ] Checking for existing commands in stream...
[2026-06-12 06:48:52,233.233 INFO    ] No existing commands found in stream
[2026-06-12 06:48:57,242.242 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 06:48:57,244.244 INFO    ] Waiting 0.55 seconds before fallback handling...
[2026-06-12 06:48:58,180.180 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 06:48:58,181.181 INFO    ] Checking for system updates...
[2026-06-12 06:48:58,204.204 INFO    ] 200
[2026-06-12 06:48:58,205.205 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:48:58,237.237 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 06:48:58,239.239 INFO    ] No update needed
[2026-06-12 06:48:58,240.240 INFO    ] Checking for camera pi updates...
[2026-06-12 06:48:58,260.260 INFO    ] 200
[2026-06-12 06:48:58,261.261 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:48:58,284.284 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 06:48:58,321.321 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 06:48:58,323.323 INFO    ] No camera update needed
[2026-06-12 06:48:58,324.324 INFO    ] Script finished. Safe exiting...
[2026-06-12 06:48:58,325.325 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 06:48:58,328.328 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 06:48:58,331.331 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 06:49:00,372.372 INFO    ] ================================================
[2026-06-12 06:49:00,388.388 INFO    ] Launching Daemon at Fri Jun 12 06:49:00 IST 2026
[2026-06-12 06:49:00,399.399 INFO    ] ================================================
[2026-06-12 06:49:00,771.771 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 06:49:00
[2026-06-12 06:49:01,107.107 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 06:49:01,253.253 INFO    ] Initializing speech engine...
[2026-06-12 06:49:01,263.263 INFO    ] 2026-06-12 06:49:01
[2026-06-12 06:49:01,556.556 INFO    ] 2026-06-12 06:49:01
[2026-06-12 06:49:01,581.581 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 06:49:01,767.767 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 06:49:01,842.842 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 06:49:01,995.995 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 06:49:02,043.043 INFO    ] time= 12/06/2026 06:49:02
[2026-06-12 06:49:02,082.082 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 06:49:02,110.110 INFO    ] Checking for existing commands in stream...
[2026-06-12 06:49:02,218.218 INFO    ] No existing commands found in stream
[2026-06-12 06:49:07,228.228 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 06:49:07,231.231 INFO    ] Waiting 0.51 seconds before fallback handling...
[2026-06-12 06:49:08,118.118 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 06:49:08,119.119 INFO    ] Checking for system updates...
[2026-06-12 06:49:08,141.141 INFO    ] 200
[2026-06-12 06:49:08,142.142 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:49:08,173.173 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 06:49:08,175.175 INFO    ] No update needed
[2026-06-12 06:49:08,176.176 INFO    ] Checking for camera pi updates...
[2026-06-12 06:49:08,196.196 INFO    ] 200
[2026-06-12 06:49:08,198.198 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:49:08,224.224 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 06:49:08,267.267 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 06:49:08,269.269 INFO    ] No camera update needed
[2026-06-12 06:49:08,271.271 INFO    ] Script finished. Safe exiting...
[2026-06-12 06:49:08,272.272 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 06:49:08,275.275 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 06:49:08,278.278 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 06:49:10,320.320 INFO    ] ================================================
[2026-06-12 06:49:10,335.335 INFO    ] Launching Daemon at Fri Jun 12 06:49:10 IST 2026
[2026-06-12 06:49:10,347.347 INFO    ] ================================================
[2026-06-12 06:49:10,720.720 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 06:49:10
[2026-06-12 06:49:11,037.037 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 06:49:11,179.179 INFO    ] Initializing speech engine...
[2026-06-12 06:49:11,187.187 INFO    ] 2026-06-12 06:49:11
[2026-06-12 06:49:11,408.408 INFO    ] 2026-06-12 06:49:11
[2026-06-12 06:49:11,440.440 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 06:49:11,640.640 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 06:49:11,644.644 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 06:49:11,785.785 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 06:49:11,831.831 INFO    ] time= 12/06/2026 06:49:11
[2026-06-12 06:49:11,870.870 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 06:49:11,894.894 INFO    ] Checking for existing commands in stream...
[2026-06-12 06:49:11,997.997 INFO    ] No existing commands found in stream
[2026-06-12 06:49:17,006.006 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 06:49:17,009.009 INFO    ] Waiting 3.01 seconds before fallback handling...
[2026-06-12 06:49:20,398.398 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 06:49:20,400.400 INFO    ] Checking for system updates...
[2026-06-12 06:49:20,422.422 INFO    ] 200
[2026-06-12 06:49:20,423.423 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:49:20,454.454 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 06:49:20,455.455 INFO    ] No update needed
[2026-06-12 06:49:20,457.457 INFO    ] Checking for camera pi updates...
[2026-06-12 06:49:20,478.478 INFO    ] 200
[2026-06-12 06:49:20,479.479 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:49:20,506.506 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 06:49:20,543.543 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 06:49:20,545.545 INFO    ] No camera update needed
[2026-06-12 06:49:20,546.546 INFO    ] Script finished. Safe exiting...
[2026-06-12 06:49:20,548.548 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 06:49:20,551.551 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 06:49:20,554.554 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 06:49:22,595.595 INFO    ] ================================================
[2026-06-12 06:49:22,610.610 INFO    ] Launching Daemon at Fri Jun 12 06:49:22 IST 2026
[2026-06-12 06:49:22,621.621 INFO    ] ================================================
[2026-06-12 06:49:22,973.973 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 06:49:22
[2026-06-12 06:49:23,290.290 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 06:49:23,429.429 INFO    ] Initializing speech engine...
[2026-06-12 06:49:23,439.439 INFO    ] 2026-06-12 06:49:23
[2026-06-12 06:49:23,644.644 INFO    ] 2026-06-12 06:49:23
[2026-06-12 06:49:23,673.673 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 06:49:23,795.795 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 06:49:23,859.859 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 06:49:23,995.995 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 06:49:24,061.061 INFO    ] time= 12/06/2026 06:49:23
[2026-06-12 06:49:24,088.088 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 06:49:24,095.095 INFO    ] Checking for existing commands in stream...
[2026-06-12 06:49:24,161.161 INFO    ] No existing commands found in stream
[2026-06-12 06:49:29,170.170 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 06:49:29,173.173 INFO    ] Waiting 0.88 seconds before fallback handling...
[2026-06-12 06:49:30,428.428 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 06:49:30,429.429 INFO    ] Checking for system updates...
[2026-06-12 06:49:30,452.452 INFO    ] 200
[2026-06-12 06:49:30,453.453 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:49:30,484.484 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 06:49:30,485.485 INFO    ] No update needed
[2026-06-12 06:49:30,486.486 INFO    ] Checking for camera pi updates...
[2026-06-12 06:49:30,506.506 INFO    ] 200
[2026-06-12 06:49:30,507.507 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:49:30,531.531 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 06:49:30,566.566 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 06:49:30,568.568 INFO    ] No camera update needed
[2026-06-12 06:49:30,569.569 INFO    ] Script finished. Safe exiting...
[2026-06-12 06:49:30,571.571 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 06:49:30,574.574 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 06:49:30,577.577 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 06:49:32,609.609 INFO    ] ================================================
[2026-06-12 06:49:32,624.624 INFO    ] Launching Daemon at Fri Jun 12 06:49:32 IST 2026
[2026-06-12 06:49:32,635.635 INFO    ] ================================================
[2026-06-12 06:49:32,985.985 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 06:49:32
[2026-06-12 06:49:33,302.302 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 06:49:33,433.433 INFO    ] Initializing speech engine...
[2026-06-12 06:49:33,437.437 INFO    ] 2026-06-12 06:49:33
[2026-06-12 06:49:33,656.656 INFO    ] 2026-06-12 06:49:33
[2026-06-12 06:49:33,685.685 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 06:49:33,871.871 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 06:49:33,875.875 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 06:49:34,005.005 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 06:49:34,061.061 INFO    ] time= 12/06/2026 06:49:34
[2026-06-12 06:49:34,105.105 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 06:49:34,107.107 INFO    ] Checking for existing commands in stream...
[2026-06-12 06:49:34,179.179 INFO    ] No existing commands found in stream
[2026-06-12 06:49:39,188.188 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 06:49:39,191.191 INFO    ] Waiting 3.54 seconds before fallback handling...
[2026-06-12 06:49:43,137.137 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 06:49:43,138.138 INFO    ] Checking for system updates...
[2026-06-12 06:49:43,160.160 INFO    ] 200
[2026-06-12 06:49:43,161.161 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:49:43,192.192 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 06:49:43,193.193 INFO    ] No update needed
[2026-06-12 06:49:43,195.195 INFO    ] Checking for camera pi updates...
[2026-06-12 06:49:43,214.214 INFO    ] 200
[2026-06-12 06:49:43,216.216 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:49:43,239.239 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 06:49:43,281.281 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 06:49:43,282.282 INFO    ] No camera update needed
[2026-06-12 06:49:43,283.283 INFO    ] Script finished. Safe exiting...
[2026-06-12 06:49:43,285.285 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 06:49:43,288.288 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 06:49:43,290.290 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 06:49:45,332.332 INFO    ] ================================================
[2026-06-12 06:49:45,348.348 INFO    ] Launching Daemon at Fri Jun 12 06:49:45 IST 2026
[2026-06-12 06:49:45,359.359 INFO    ] ================================================
[2026-06-12 06:49:45,715.715 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 06:49:45
[2026-06-12 06:49:46,031.031 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 06:49:46,164.164 INFO    ] Initializing speech engine...
[2026-06-12 06:49:46,168.168 INFO    ] 2026-06-12 06:49:46
[2026-06-12 06:49:46,375.375 INFO    ] 2026-06-12 06:49:46
[2026-06-12 06:49:46,409.409 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 06:49:46,567.567 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 06:49:46,616.616 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 06:49:46,780.780 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 06:49:46,838.838 INFO    ] time= 12/06/2026 06:49:46
[2026-06-12 06:49:46,872.872 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 06:49:46,890.890 INFO    ] Checking for existing commands in stream...
[2026-06-12 06:49:46,966.966 INFO    ] No existing commands found in stream
[2026-06-12 06:49:51,977.977 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 06:49:51,980.980 INFO    ] Waiting 2.08 seconds before fallback handling...
[2026-06-12 06:49:54,437.437 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 06:49:54,438.438 INFO    ] Checking for system updates...
[2026-06-12 06:49:54,460.460 INFO    ] 200
[2026-06-12 06:49:54,461.461 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:49:54,492.492 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 06:49:54,494.494 INFO    ] No update needed
[2026-06-12 06:49:54,495.495 INFO    ] Checking for camera pi updates...
[2026-06-12 06:49:54,515.515 INFO    ] 200
[2026-06-12 06:49:54,516.516 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:49:54,541.541 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 06:49:54,581.581 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 06:49:54,582.582 INFO    ] No camera update needed
[2026-06-12 06:49:54,584.584 INFO    ] Script finished. Safe exiting...
[2026-06-12 06:49:54,585.585 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 06:49:54,588.588 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 06:49:54,591.591 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 06:49:56,630.630 INFO    ] ================================================
[2026-06-12 06:49:56,646.646 INFO    ] Launching Daemon at Fri Jun 12 06:49:56 IST 2026
[2026-06-12 06:49:56,657.657 INFO    ] ================================================
[2026-06-12 06:49:57,025.025 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 06:49:57
[2026-06-12 06:49:57,339.339 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 06:49:57,473.473 INFO    ] Initializing speech engine...
[2026-06-12 06:49:57,478.478 INFO    ] 2026-06-12 06:49:57
[2026-06-12 06:49:57,725.725 INFO    ] 2026-06-12 06:49:57
[2026-06-12 06:49:57,764.764 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 06:49:57,925.925 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 06:49:57,967.967 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 06:49:58,137.137 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 06:49:58,185.185 INFO    ] time= 12/06/2026 06:49:58
[2026-06-12 06:49:58,224.224 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 06:49:58,248.248 INFO    ] Checking for existing commands in stream...
[2026-06-12 06:49:58,325.325 INFO    ] No existing commands found in stream
[2026-06-12 06:50:03,335.335 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 06:50:03,338.338 INFO    ] Waiting 1.24 seconds before fallback handling...
[2026-06-12 06:50:08,013.013 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 06:50:08,014.014 INFO    ] Checking for system updates...
[2026-06-12 06:50:08,048.048 INFO    ] 200
[2026-06-12 06:50:08,051.051 INFO    ] {"msg": "Status of machine", "state": "STATE_HEALTH_CHECK", "status": true}
[2026-06-12 06:50:08,053.053 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping update check
[2026-06-12 06:50:08,056.056 INFO    ] Checking for camera pi updates...
[2026-06-12 06:50:08,091.091 INFO    ] 200
[2026-06-12 06:50:08,093.093 INFO    ] {"msg": "Status of machine", "state": "STATE_HEALTH_CHECK", "status": true}
[2026-06-12 06:50:08,096.096 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping camera update check
[2026-06-12 06:50:08,099.099 INFO    ] Script finished. Safe exiting...
[2026-06-12 06:50:08,101.101 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 06:50:08,106.106 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 06:50:08,111.111 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 06:50:10,151.151 INFO    ] ================================================
[2026-06-12 06:50:10,166.166 INFO    ] Launching Daemon at Fri Jun 12 06:50:10 IST 2026
[2026-06-12 06:50:10,177.177 INFO    ] ================================================
[2026-06-12 06:50:10,526.526 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 06:50:10
[2026-06-12 06:50:10,838.838 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 06:50:10,969.969 INFO    ] Initializing speech engine...
[2026-06-12 06:50:10,974.974 INFO    ] 2026-06-12 06:50:10
[2026-06-12 06:50:11,202.202 INFO    ] 2026-06-12 06:50:11
[2026-06-12 06:50:11,233.233 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 06:50:11,429.429 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 06:50:11,433.433 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 06:50:11,573.573 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 06:50:11,629.629 INFO    ] time= 12/06/2026 06:50:11
[2026-06-12 06:50:11,670.670 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 06:50:11,681.681 INFO    ] Checking for existing commands in stream...
[2026-06-12 06:50:11,758.758 INFO    ] No existing commands found in stream
[2026-06-12 06:50:16,768.768 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 06:50:16,771.771 INFO    ] Waiting 1.05 seconds before fallback handling...
[2026-06-12 06:50:18,205.205 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 06:50:18,206.206 INFO    ] Checking for system updates...
[2026-06-12 06:50:18,227.227 INFO    ] 200
[2026-06-12 06:50:18,228.228 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:50:18,258.258 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 06:50:18,260.260 INFO    ] No update needed
[2026-06-12 06:50:18,261.261 INFO    ] Checking for camera pi updates...
[2026-06-12 06:50:18,281.281 INFO    ] 200
[2026-06-12 06:50:18,282.282 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:50:18,307.307 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 06:50:18,446.446 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 06:50:18,447.447 INFO    ] No camera update needed
[2026-06-12 06:50:18,448.448 INFO    ] Script finished. Safe exiting...
[2026-06-12 06:50:18,450.450 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 06:50:18,453.453 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 06:50:18,455.455 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 06:50:20,495.495 INFO    ] ================================================
[2026-06-12 06:50:20,510.510 INFO    ] Launching Daemon at Fri Jun 12 06:50:20 IST 2026
[2026-06-12 06:50:20,521.521 INFO    ] ================================================
[2026-06-12 06:50:20,870.870 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 06:50:20
[2026-06-12 06:50:21,183.183 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 06:50:21,315.315 INFO    ] Initializing speech engine...
[2026-06-12 06:50:21,318.318 INFO    ] 2026-06-12 06:50:21
[2026-06-12 06:50:21,537.537 INFO    ] 2026-06-12 06:50:21
[2026-06-12 06:50:21,565.565 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 06:50:21,753.753 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 06:50:21,762.762 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 06:50:21,899.899 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 06:50:21,962.962 INFO    ] time= 12/06/2026 06:50:21
[2026-06-12 06:50:21,986.986 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 06:50:21,992.992 INFO    ] Checking for existing commands in stream...
[2026-06-12 06:50:22,060.060 INFO    ] No existing commands found in stream
[2026-06-12 06:50:27,069.069 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 06:50:27,072.072 INFO    ] Waiting 3.09 seconds before fallback handling...
[2026-06-12 06:50:30,529.529 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 06:50:30,531.531 INFO    ] Checking for system updates...
[2026-06-12 06:50:30,553.553 INFO    ] 200
[2026-06-12 06:50:30,554.554 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:50:30,584.584 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 06:50:30,585.585 INFO    ] No update needed
[2026-06-12 06:50:30,587.587 INFO    ] Checking for camera pi updates...
[2026-06-12 06:50:30,607.607 INFO    ] 200
[2026-06-12 06:50:30,609.609 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:50:30,634.634 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 06:50:30,675.675 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 06:50:30,676.676 INFO    ] No camera update needed
[2026-06-12 06:50:30,677.677 INFO    ] Script finished. Safe exiting...
[2026-06-12 06:50:30,679.679 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 06:50:30,682.682 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 06:50:30,684.684 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 06:50:32,718.718 INFO    ] ================================================
[2026-06-12 06:50:32,727.727 INFO    ] Launching Daemon at Fri Jun 12 06:50:32 IST 2026
[2026-06-12 06:50:32,738.738 INFO    ] ================================================
[2026-06-12 06:50:33,082.082 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 06:50:33
[2026-06-12 06:50:33,401.401 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 06:50:33,545.545 INFO    ] Initializing speech engine...
[2026-06-12 06:50:33,551.551 INFO    ] 2026-06-12 06:50:33
[2026-06-12 06:50:33,754.754 INFO    ] 2026-06-12 06:50:33
[2026-06-12 06:50:33,782.782 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 06:50:33,905.905 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 06:50:33,968.968 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 06:50:34,105.105 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 06:50:34,169.169 INFO    ] time= 12/06/2026 06:50:34
[2026-06-12 06:50:34,196.196 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 06:50:34,202.202 INFO    ] Checking for existing commands in stream...
[2026-06-12 06:50:34,269.269 INFO    ] No existing commands found in stream
[2026-06-12 06:50:39,277.277 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 06:50:39,278.278 INFO    ] Waiting 3.12 seconds before fallback handling...
[2026-06-12 06:50:42,766.766 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 06:50:42,767.767 INFO    ] Checking for system updates...
[2026-06-12 06:50:42,788.788 INFO    ] 200
[2026-06-12 06:50:42,790.790 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:50:42,826.826 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 06:50:42,827.827 INFO    ] No update needed
[2026-06-12 06:50:42,829.829 INFO    ] Checking for camera pi updates...
[2026-06-12 06:50:42,848.848 INFO    ] 200
[2026-06-12 06:50:42,849.849 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:50:42,873.873 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 06:50:42,910.910 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 06:50:42,911.911 INFO    ] No camera update needed
[2026-06-12 06:50:42,913.913 INFO    ] Script finished. Safe exiting...
[2026-06-12 06:50:42,914.914 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 06:50:42,917.917 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 06:50:42,920.920 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 06:50:44,960.960 INFO    ] ================================================
[2026-06-12 06:50:44,976.976 INFO    ] Launching Daemon at Fri Jun 12 06:50:44 IST 2026
[2026-06-12 06:50:44,987.987 INFO    ] ================================================
[2026-06-12 06:50:45,334.334 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 06:50:45
[2026-06-12 06:50:45,649.649 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 06:50:45,793.793 INFO    ] Initializing speech engine...
[2026-06-12 06:50:45,798.798 INFO    ] 2026-06-12 06:50:45
[2026-06-12 06:50:46,002.002 INFO    ] 2026-06-12 06:50:45
[2026-06-12 06:50:46,030.030 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 06:50:46,213.213 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 06:50:46,222.222 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 06:50:46,366.366 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 06:50:46,418.418 INFO    ] time= 12/06/2026 06:50:46
[2026-06-12 06:50:46,440.440 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 06:50:46,446.446 INFO    ] Checking for existing commands in stream...
[2026-06-12 06:50:46,513.513 INFO    ] No existing commands found in stream
[2026-06-12 06:50:51,522.522 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 06:50:51,525.525 INFO    ] Waiting 0.14 seconds before fallback handling...
[2026-06-12 06:50:52,014.014 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 06:50:52,015.015 INFO    ] Checking for system updates...
[2026-06-12 06:50:52,037.037 INFO    ] 200
[2026-06-12 06:50:52,038.038 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:50:52,069.069 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 06:50:52,070.070 INFO    ] No update needed
[2026-06-12 06:50:52,072.072 INFO    ] Checking for camera pi updates...
[2026-06-12 06:50:52,093.093 INFO    ] 200
[2026-06-12 06:50:52,095.095 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:50:52,118.118 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 06:50:52,159.159 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 06:50:52,160.160 INFO    ] No camera update needed
[2026-06-12 06:50:52,162.162 INFO    ] Script finished. Safe exiting...
[2026-06-12 06:50:52,163.163 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 06:50:52,166.166 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 06:50:52,169.169 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 06:50:54,210.210 INFO    ] ================================================
[2026-06-12 06:50:54,226.226 INFO    ] Launching Daemon at Fri Jun 12 06:50:54 IST 2026
[2026-06-12 06:50:54,237.237 INFO    ] ================================================
[2026-06-12 06:50:54,604.604 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 06:50:54
[2026-06-12 06:50:54,942.942 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 06:50:55,079.079 INFO    ] Initializing speech engine...
[2026-06-12 06:50:55,089.089 INFO    ] 2026-06-12 06:50:55
[2026-06-12 06:50:55,295.295 INFO    ] 2026-06-12 06:50:55
[2026-06-12 06:50:55,324.324 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 06:50:55,507.507 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 06:50:55,517.517 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 06:50:55,645.645 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 06:50:55,709.709 INFO    ] time= 12/06/2026 06:50:55
[2026-06-12 06:50:55,737.737 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 06:50:55,742.742 INFO    ] Checking for existing commands in stream...
[2026-06-12 06:50:55,810.810 INFO    ] No existing commands found in stream
[2026-06-12 06:51:00,819.819 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 06:51:00,822.822 INFO    ] Waiting 0.50 seconds before fallback handling...
[2026-06-12 06:51:01,703.703 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 06:51:01,705.705 INFO    ] Checking for system updates...
[2026-06-12 06:51:01,730.730 INFO    ] 200
[2026-06-12 06:51:01,732.732 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:51:01,775.775 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 06:51:01,777.777 INFO    ] No update needed
[2026-06-12 06:51:01,779.779 INFO    ] Checking for camera pi updates...
[2026-06-12 06:51:01,810.810 INFO    ] 200
[2026-06-12 06:51:01,812.812 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:51:01,855.855 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 06:51:01,889.889 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 06:51:01,891.891 INFO    ] No camera update needed
[2026-06-12 06:51:01,894.894 INFO    ] Script finished. Safe exiting...
[2026-06-12 06:51:01,896.896 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 06:51:01,901.901 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 06:51:01,907.907 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 06:51:03,949.949 INFO    ] ================================================
[2026-06-12 06:51:03,965.965 INFO    ] Launching Daemon at Fri Jun 12 06:51:03 IST 2026
[2026-06-12 06:51:03,977.977 INFO    ] ================================================
[2026-06-12 06:51:04,312.312 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 06:51:04
[2026-06-12 06:51:04,623.623 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 06:51:04,754.754 INFO    ] Initializing speech engine...
[2026-06-12 06:51:04,762.762 INFO    ] 2026-06-12 06:51:04
[2026-06-12 06:51:04,976.976 INFO    ] 2026-06-12 06:51:04
[2026-06-12 06:51:05,005.005 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 06:51:05,195.195 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 06:51:05,208.208 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 06:51:05,345.345 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 06:51:05,401.401 INFO    ] time= 12/06/2026 06:51:05
[2026-06-12 06:51:05,442.442 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 06:51:05,453.453 INFO    ] Checking for existing commands in stream...
[2026-06-12 06:51:05,528.528 INFO    ] No existing commands found in stream
[2026-06-12 06:51:10,539.539 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 06:51:10,542.542 INFO    ] Waiting 0.22 seconds before fallback handling...
[2026-06-12 06:51:11,087.087 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 06:51:11,089.089 INFO    ] Checking for system updates...
[2026-06-12 06:51:11,110.110 INFO    ] 200
[2026-06-12 06:51:11,111.111 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:51:11,141.141 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 06:51:11,143.143 INFO    ] No update needed
[2026-06-12 06:51:11,144.144 INFO    ] Checking for camera pi updates...
[2026-06-12 06:51:11,164.164 INFO    ] 200
[2026-06-12 06:51:11,165.165 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:51:11,191.191 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 06:51:11,229.229 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 06:51:11,231.231 INFO    ] No camera update needed
[2026-06-12 06:51:11,232.232 INFO    ] Script finished. Safe exiting...
[2026-06-12 06:51:11,233.233 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 06:51:11,236.236 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 06:51:11,239.239 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 06:51:13,277.277 INFO    ] ================================================
[2026-06-12 06:51:13,294.294 INFO    ] Launching Daemon at Fri Jun 12 06:51:13 IST 2026
[2026-06-12 06:51:13,305.305 INFO    ] ================================================
[2026-06-12 06:51:13,673.673 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 06:51:13
[2026-06-12 06:51:13,984.984 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 06:51:14,118.118 INFO    ] Initializing speech engine...
[2026-06-12 06:51:14,131.131 INFO    ] 2026-06-12 06:51:14
[2026-06-12 06:51:14,339.339 INFO    ] 2026-06-12 06:51:14
[2026-06-12 06:51:14,369.369 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 06:51:14,554.554 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 06:51:14,557.557 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 06:51:14,687.687 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 06:51:14,743.743 INFO    ] time= 12/06/2026 06:51:14
[2026-06-12 06:51:14,786.786 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 06:51:14,792.792 INFO    ] Checking for existing commands in stream...
[2026-06-12 06:51:14,858.858 INFO    ] No existing commands found in stream
[2026-06-12 06:51:19,869.869 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 06:51:19,872.872 INFO    ] Waiting 0.73 seconds before fallback handling...
[2026-06-12 06:51:20,948.948 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 06:51:20,949.949 INFO    ] Checking for system updates...
[2026-06-12 06:51:20,970.970 INFO    ] 200
[2026-06-12 06:51:20,971.971 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:51:21,002.002 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 06:51:21,003.003 INFO    ] No update needed
[2026-06-12 06:51:21,004.004 INFO    ] Checking for camera pi updates...
[2026-06-12 06:51:21,024.024 INFO    ] 200
[2026-06-12 06:51:21,025.025 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:51:21,052.052 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 06:51:21,078.078 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 06:51:21,079.079 INFO    ] No camera update needed
[2026-06-12 06:51:21,081.081 INFO    ] Script finished. Safe exiting...
[2026-06-12 06:51:21,082.082 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 06:51:21,085.085 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 06:51:21,087.087 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 06:51:23,125.125 INFO    ] ================================================
[2026-06-12 06:51:23,142.142 INFO    ] Launching Daemon at Fri Jun 12 06:51:23 IST 2026
[2026-06-12 06:51:23,153.153 INFO    ] ================================================
[2026-06-12 06:51:23,534.534 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 06:51:23
[2026-06-12 06:51:23,853.853 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 06:51:23,997.997 INFO    ] Initializing speech engine...
[2026-06-12 06:51:24,003.003 INFO    ] 2026-06-12 06:51:23
[2026-06-12 06:51:24,207.207 INFO    ] 2026-06-12 06:51:24
[2026-06-12 06:51:24,235.235 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 06:51:24,421.421 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 06:51:24,431.431 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 06:51:24,573.573 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 06:51:24,626.626 INFO    ] time= 12/06/2026 06:51:24
[2026-06-12 06:51:24,649.649 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 06:51:24,655.655 INFO    ] Checking for existing commands in stream...
[2026-06-12 06:51:24,722.722 INFO    ] No existing commands found in stream
[2026-06-12 06:51:29,736.736 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 06:51:29,739.739 INFO    ] Waiting 3.21 seconds before fallback handling...
[2026-06-12 06:51:33,311.311 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 06:51:33,313.313 INFO    ] Checking for system updates...
[2026-06-12 06:51:33,333.333 INFO    ] 200
[2026-06-12 06:51:33,335.335 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:51:33,365.365 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 06:51:33,367.367 INFO    ] No update needed
[2026-06-12 06:51:33,368.368 INFO    ] Checking for camera pi updates...
[2026-06-12 06:51:33,393.393 INFO    ] 200
[2026-06-12 06:51:33,394.394 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:51:33,417.417 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 06:51:33,454.454 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 06:51:33,455.455 INFO    ] No camera update needed
[2026-06-12 06:51:33,456.456 INFO    ] Script finished. Safe exiting...
[2026-06-12 06:51:33,458.458 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 06:51:33,461.461 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 06:51:33,464.464 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 06:51:35,502.502 INFO    ] ================================================
[2026-06-12 06:51:35,518.518 INFO    ] Launching Daemon at Fri Jun 12 06:51:35 IST 2026
[2026-06-12 06:51:35,530.530 INFO    ] ================================================
[2026-06-12 06:51:35,891.891 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 06:51:35
[2026-06-12 06:51:36,203.203 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 06:51:36,332.332 INFO    ] Initializing speech engine...
[2026-06-12 06:51:36,336.336 INFO    ] 2026-06-12 06:51:36
[2026-06-12 06:51:36,552.552 INFO    ] 2026-06-12 06:51:36
[2026-06-12 06:51:36,582.582 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 06:51:36,766.766 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 06:51:36,776.776 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 06:51:36,901.901 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 06:51:36,962.962 INFO    ] time= 12/06/2026 06:51:36
[2026-06-12 06:51:36,994.994 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 06:51:37,001.001 INFO    ] Checking for existing commands in stream...
[2026-06-12 06:51:37,067.067 INFO    ] No existing commands found in stream
[2026-06-12 06:51:42,076.076 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 06:51:42,078.078 INFO    ] Waiting 1.58 seconds before fallback handling...
[2026-06-12 06:51:44,042.042 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 06:51:44,044.044 INFO    ] Checking for system updates...
[2026-06-12 06:51:44,065.065 INFO    ] 200
[2026-06-12 06:51:44,067.067 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:51:44,096.096 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 06:51:44,098.098 INFO    ] No update needed
[2026-06-12 06:51:44,099.099 INFO    ] Checking for camera pi updates...
[2026-06-12 06:51:44,118.118 INFO    ] 200
[2026-06-12 06:51:44,120.120 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:51:44,145.145 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 06:51:44,184.184 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 06:51:44,186.186 INFO    ] No camera update needed
[2026-06-12 06:51:44,187.187 INFO    ] Script finished. Safe exiting...
[2026-06-12 06:51:44,188.188 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 06:51:44,191.191 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 06:51:44,194.194 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 06:51:46,233.233 INFO    ] ================================================
[2026-06-12 06:51:46,249.249 INFO    ] Launching Daemon at Fri Jun 12 06:51:46 IST 2026
[2026-06-12 06:51:46,261.261 INFO    ] ================================================
[2026-06-12 06:51:46,629.629 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 06:51:46
[2026-06-12 06:51:46,973.973 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 06:51:47,130.130 INFO    ] Initializing speech engine...
[2026-06-12 06:51:47,138.138 INFO    ] 2026-06-12 06:51:47
[2026-06-12 06:51:47,341.341 INFO    ] 2026-06-12 06:51:47
[2026-06-12 06:51:47,370.370 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 06:51:47,555.555 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 06:51:47,564.564 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 06:51:47,705.705 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 06:51:47,764.764 INFO    ] time= 12/06/2026 06:51:47
[2026-06-12 06:51:47,786.786 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 06:51:47,793.793 INFO    ] Checking for existing commands in stream...
[2026-06-12 06:51:47,858.858 INFO    ] No existing commands found in stream
[2026-06-12 06:51:52,869.869 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 06:51:52,873.873 INFO    ] Waiting 0.33 seconds before fallback handling...
[2026-06-12 06:51:53,581.581 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 06:51:53,582.582 INFO    ] Checking for system updates...
[2026-06-12 06:51:53,614.614 INFO    ] 200
[2026-06-12 06:51:53,615.615 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:51:53,648.648 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 06:51:53,649.649 INFO    ] No update needed
[2026-06-12 06:51:53,651.651 INFO    ] Checking for camera pi updates...
[2026-06-12 06:51:53,672.672 INFO    ] 200
[2026-06-12 06:51:53,673.673 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:51:53,698.698 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 06:51:53,743.743 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 06:51:53,744.744 INFO    ] No camera update needed
[2026-06-12 06:51:53,745.745 INFO    ] Script finished. Safe exiting...
[2026-06-12 06:51:53,746.746 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 06:51:53,749.749 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 06:51:53,753.753 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 06:51:55,793.793 INFO    ] ================================================
[2026-06-12 06:51:55,809.809 INFO    ] Launching Daemon at Fri Jun 12 06:51:55 IST 2026
[2026-06-12 06:51:55,820.820 INFO    ] ================================================
[2026-06-12 06:51:56,212.212 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 06:51:56
[2026-06-12 06:51:56,557.557 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 06:51:56,712.712 INFO    ] Initializing speech engine...
[2026-06-12 06:51:56,718.718 INFO    ] 2026-06-12 06:51:56
[2026-06-12 06:51:56,928.928 INFO    ] 2026-06-12 06:51:56
[2026-06-12 06:51:56,958.958 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 06:51:57,145.145 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 06:51:57,156.156 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 06:51:57,287.287 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 06:51:57,346.346 INFO    ] time= 12/06/2026 06:51:57
[2026-06-12 06:51:57,381.381 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 06:51:57,387.387 INFO    ] Checking for existing commands in stream...
[2026-06-12 06:51:57,455.455 INFO    ] No existing commands found in stream
[2026-06-12 06:52:02,463.463 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 06:52:02,465.465 INFO    ] Waiting 1.73 seconds before fallback handling...
[2026-06-12 06:52:04,597.597 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 06:52:04,598.598 INFO    ] Checking for system updates...
[2026-06-12 06:52:04,620.620 INFO    ] 200
[2026-06-12 06:52:04,621.621 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:52:04,653.653 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 06:52:04,655.655 INFO    ] No update needed
[2026-06-12 06:52:04,656.656 INFO    ] Checking for camera pi updates...
[2026-06-12 06:52:04,677.677 INFO    ] 200
[2026-06-12 06:52:04,678.678 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:52:04,703.703 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 06:52:04,742.742 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 06:52:04,743.743 INFO    ] No camera update needed
[2026-06-12 06:52:04,745.745 INFO    ] Script finished. Safe exiting...
[2026-06-12 06:52:04,746.746 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 06:52:04,750.750 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 06:52:04,753.753 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 06:52:06,779.779 INFO    ] ================================================
[2026-06-12 06:52:06,789.789 INFO    ] Launching Daemon at Fri Jun 12 06:52:06 IST 2026
[2026-06-12 06:52:06,796.796 INFO    ] ================================================
[2026-06-12 06:52:07,102.102 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 06:52:07
[2026-06-12 06:52:07,466.466 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 06:52:07,615.615 INFO    ] Initializing speech engine...
[2026-06-12 06:52:07,620.620 INFO    ] 2026-06-12 06:52:07
[2026-06-12 06:52:07,838.838 INFO    ] 2026-06-12 06:52:07
[2026-06-12 06:52:07,869.869 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 06:52:08,068.068 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 06:52:08,072.072 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 06:52:08,215.215 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 06:52:08,268.268 INFO    ] time= 12/06/2026 06:52:08
[2026-06-12 06:52:08,302.302 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 06:52:08,320.320 INFO    ] Checking for existing commands in stream...
[2026-06-12 06:52:08,395.395 INFO    ] No existing commands found in stream
[2026-06-12 06:52:13,406.406 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 06:52:13,409.409 INFO    ] Waiting 3.31 seconds before fallback handling...
[2026-06-12 06:52:17,081.081 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 06:52:17,082.082 INFO    ] Checking for system updates...
[2026-06-12 06:52:17,103.103 INFO    ] 200
[2026-06-12 06:52:17,104.104 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:52:17,139.139 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 06:52:17,140.140 INFO    ] No update needed
[2026-06-12 06:52:17,142.142 INFO    ] Checking for camera pi updates...
[2026-06-12 06:52:17,162.162 INFO    ] 200
[2026-06-12 06:52:17,164.164 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:52:17,189.189 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 06:52:17,225.225 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 06:52:17,227.227 INFO    ] No camera update needed
[2026-06-12 06:52:17,228.228 INFO    ] Script finished. Safe exiting...
[2026-06-12 06:52:17,229.229 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 06:52:17,232.232 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 06:52:17,235.235 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 06:52:19,275.275 INFO    ] ================================================
[2026-06-12 06:52:19,290.290 INFO    ] Launching Daemon at Fri Jun 12 06:52:19 IST 2026
[2026-06-12 06:52:19,301.301 INFO    ] ================================================
[2026-06-12 06:52:19,625.625 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 06:52:19
[2026-06-12 06:52:19,936.936 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 06:52:20,079.079 INFO    ] Initializing speech engine...
[2026-06-12 06:52:20,083.083 INFO    ] 2026-06-12 06:52:20
[2026-06-12 06:52:20,289.289 INFO    ] 2026-06-12 06:52:20
[2026-06-12 06:52:20,318.318 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 06:52:20,503.503 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 06:52:20,507.507 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 06:52:20,618.618 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 06:52:20,640.640 INFO    ] time= 12/06/2026 06:52:20
[2026-06-12 06:52:20,668.668 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 06:52:20,726.726 INFO    ] Checking for existing commands in stream...
[2026-06-12 06:52:20,820.820 INFO    ] No existing commands found in stream
[2026-06-12 06:52:25,830.830 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 06:52:25,833.833 INFO    ] Waiting 2.94 seconds before fallback handling...
[2026-06-12 06:52:29,171.171 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 06:52:29,172.172 INFO    ] Checking for system updates...
[2026-06-12 06:52:29,194.194 INFO    ] 200
[2026-06-12 06:52:29,196.196 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:52:29,229.229 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 06:52:29,231.231 INFO    ] No update needed
[2026-06-12 06:52:29,232.232 INFO    ] Checking for camera pi updates...
[2026-06-12 06:52:29,252.252 INFO    ] 200
[2026-06-12 06:52:29,254.254 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:52:29,278.278 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 06:52:29,421.421 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 06:52:29,423.423 INFO    ] No camera update needed
[2026-06-12 06:52:29,424.424 INFO    ] Script finished. Safe exiting...
[2026-06-12 06:52:29,426.426 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 06:52:29,429.429 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 06:52:29,432.432 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 06:52:31,473.473 INFO    ] ================================================
[2026-06-12 06:52:31,482.482 INFO    ] Launching Daemon at Fri Jun 12 06:52:31 IST 2026
[2026-06-12 06:52:31,489.489 INFO    ] ================================================
[2026-06-12 06:52:31,817.817 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 06:52:31
[2026-06-12 06:52:32,152.152 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 06:52:32,289.289 INFO    ] Initializing speech engine...
[2026-06-12 06:52:32,298.298 INFO    ] 2026-06-12 06:52:32
[2026-06-12 06:52:32,513.513 INFO    ] 2026-06-12 06:52:32
[2026-06-12 06:52:32,542.542 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 06:52:32,734.734 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 06:52:32,738.738 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 06:52:32,871.871 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 06:52:32,921.921 INFO    ] time= 12/06/2026 06:52:32
[2026-06-12 06:52:32,967.967 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 06:52:32,979.979 INFO    ] Checking for existing commands in stream...
[2026-06-12 06:52:33,053.053 INFO    ] No existing commands found in stream
[2026-06-12 06:52:38,062.062 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 06:52:38,066.066 INFO    ] Waiting 2.75 seconds before fallback handling...
[2026-06-12 06:52:41,184.184 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 06:52:41,186.186 INFO    ] Checking for system updates...
[2026-06-12 06:52:41,207.207 INFO    ] 200
[2026-06-12 06:52:41,209.209 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:52:41,241.241 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 06:52:41,242.242 INFO    ] No update needed
[2026-06-12 06:52:41,243.243 INFO    ] Checking for camera pi updates...
[2026-06-12 06:52:41,265.265 INFO    ] 200
[2026-06-12 06:52:41,266.266 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:52:41,289.289 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 06:52:41,325.325 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 06:52:41,326.326 INFO    ] No camera update needed
[2026-06-12 06:52:41,328.328 INFO    ] Script finished. Safe exiting...
[2026-06-12 06:52:41,329.329 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 06:52:41,332.332 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 06:52:41,335.335 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 06:52:43,375.375 INFO    ] ================================================
[2026-06-12 06:52:43,391.391 INFO    ] Launching Daemon at Fri Jun 12 06:52:43 IST 2026
[2026-06-12 06:52:43,403.403 INFO    ] ================================================
[2026-06-12 06:52:43,733.733 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 06:52:43
[2026-06-12 06:52:44,051.051 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 06:52:44,183.183 INFO    ] Initializing speech engine...
[2026-06-12 06:52:44,191.191 INFO    ] 2026-06-12 06:52:44
[2026-06-12 06:52:44,403.403 INFO    ] 2026-06-12 06:52:44
[2026-06-12 06:52:44,433.433 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 06:52:44,617.617 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 06:52:44,626.626 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 06:52:44,771.771 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 06:52:44,824.824 INFO    ] time= 12/06/2026 06:52:44
[2026-06-12 06:52:44,846.846 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 06:52:44,853.853 INFO    ] Checking for existing commands in stream...
[2026-06-12 06:52:44,920.920 INFO    ] No existing commands found in stream
[2026-06-12 06:52:49,934.934 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 06:52:49,937.937 INFO    ] Waiting 2.46 seconds before fallback handling...
[2026-06-12 06:52:52,757.757 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 06:52:52,759.759 INFO    ] Checking for system updates...
[2026-06-12 06:52:52,781.781 INFO    ] 200
[2026-06-12 06:52:52,783.783 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:52:52,813.813 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 06:52:52,815.815 INFO    ] No update needed
[2026-06-12 06:52:52,816.816 INFO    ] Checking for camera pi updates...
[2026-06-12 06:52:52,837.837 INFO    ] 200
[2026-06-12 06:52:52,839.839 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:52:52,864.864 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 06:52:52,896.896 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 06:52:52,898.898 INFO    ] No camera update needed
[2026-06-12 06:52:52,899.899 INFO    ] Script finished. Safe exiting...
[2026-06-12 06:52:52,900.900 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 06:52:52,903.903 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 06:52:52,906.906 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 06:52:54,945.945 INFO    ] ================================================
[2026-06-12 06:52:54,961.961 INFO    ] Launching Daemon at Fri Jun 12 06:52:54 IST 2026
[2026-06-12 06:52:54,972.972 INFO    ] ================================================
[2026-06-12 06:52:55,302.302 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 06:52:55
[2026-06-12 06:52:55,613.613 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 06:52:55,754.754 INFO    ] Initializing speech engine...
[2026-06-12 06:52:55,759.759 INFO    ] 2026-06-12 06:52:55
[2026-06-12 06:52:55,962.962 INFO    ] 2026-06-12 06:52:55
[2026-06-12 06:52:55,991.991 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 06:52:56,174.174 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 06:52:56,182.182 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 06:52:56,304.304 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 06:52:56,370.370 INFO    ] time= 12/06/2026 06:52:56
[2026-06-12 06:52:56,402.402 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 06:52:56,403.403 INFO    ] Checking for existing commands in stream...
[2026-06-12 06:52:56,475.475 INFO    ] No existing commands found in stream
[2026-06-12 06:53:01,483.483 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 06:53:01,495.495 INFO    ] Waiting 2.58 seconds before fallback handling...
[2026-06-12 06:53:04,423.423 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 06:53:04,426.426 INFO    ] Checking for system updates...
[2026-06-12 06:53:04,462.462 INFO    ] 200
[2026-06-12 06:53:04,464.464 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:53:04,517.517 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 06:53:04,520.520 INFO    ] No update needed
[2026-06-12 06:53:04,522.522 INFO    ] Checking for camera pi updates...
[2026-06-12 06:53:04,560.560 INFO    ] 200
[2026-06-12 06:53:04,562.562 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:53:04,600.600 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 06:53:04,645.645 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 06:53:04,646.646 INFO    ] No camera update needed
[2026-06-12 06:53:04,647.647 INFO    ] Script finished. Safe exiting...
[2026-06-12 06:53:04,648.648 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 06:53:04,652.652 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 06:53:04,654.654 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 06:53:06,694.694 INFO    ] ================================================
[2026-06-12 06:53:06,710.710 INFO    ] Launching Daemon at Fri Jun 12 06:53:06 IST 2026
[2026-06-12 06:53:06,721.721 INFO    ] ================================================
[2026-06-12 06:53:07,120.120 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 06:53:07
[2026-06-12 06:53:07,464.464 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 06:53:07,619.619 INFO    ] Initializing speech engine...
[2026-06-12 06:53:07,625.625 INFO    ] 2026-06-12 06:53:07
[2026-06-12 06:53:07,833.833 INFO    ] 2026-06-12 06:53:07
[2026-06-12 06:53:07,862.862 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 06:53:08,046.046 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 06:53:08,055.055 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 06:53:08,185.185 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 06:53:08,251.251 INFO    ] time= 12/06/2026 06:53:08
[2026-06-12 06:53:08,275.275 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 06:53:08,282.282 INFO    ] Checking for existing commands in stream...
[2026-06-12 06:53:08,349.349 INFO    ] No existing commands found in stream
[2026-06-12 06:53:13,364.364 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 06:53:13,367.367 INFO    ] Waiting 1.97 seconds before fallback handling...
[2026-06-12 06:53:15,698.698 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 06:53:15,700.700 INFO    ] Checking for system updates...
[2026-06-12 06:53:15,721.721 INFO    ] 200
[2026-06-12 06:53:15,723.723 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:53:15,754.754 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 06:53:15,755.755 INFO    ] No update needed
[2026-06-12 06:53:15,756.756 INFO    ] Checking for camera pi updates...
[2026-06-12 06:53:15,777.777 INFO    ] 200
[2026-06-12 06:53:15,778.778 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:53:15,803.803 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 06:53:15,843.843 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 06:53:15,844.844 INFO    ] No camera update needed
[2026-06-12 06:53:15,845.845 INFO    ] Script finished. Safe exiting...
[2026-06-12 06:53:15,847.847 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 06:53:15,849.849 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 06:53:15,852.852 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 06:53:17,891.891 INFO    ] ================================================
[2026-06-12 06:53:17,906.906 INFO    ] Launching Daemon at Fri Jun 12 06:53:17 IST 2026
[2026-06-12 06:53:17,918.918 INFO    ] ================================================
[2026-06-12 06:53:18,308.308 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 06:53:18
[2026-06-12 06:53:18,649.649 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 06:53:18,803.803 INFO    ] Initializing speech engine...
[2026-06-12 06:53:18,807.807 INFO    ] 2026-06-12 06:53:18
[2026-06-12 06:53:19,019.019 INFO    ] 2026-06-12 06:53:18
[2026-06-12 06:53:19,048.048 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 06:53:19,236.236 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 06:53:19,245.245 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 06:53:19,412.412 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 06:53:19,458.458 INFO    ] time= 12/06/2026 06:53:19
[2026-06-12 06:53:19,469.469 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 06:53:19,475.475 INFO    ] Checking for existing commands in stream...
[2026-06-12 06:53:19,543.543 INFO    ] No existing commands found in stream
[2026-06-12 06:53:24,567.567 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 06:53:24,571.571 INFO    ] Waiting 0.38 seconds before fallback handling...
[2026-06-12 06:53:25,326.326 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 06:53:25,327.327 INFO    ] Checking for system updates...
[2026-06-12 06:53:25,350.350 INFO    ] 200
[2026-06-12 06:53:25,351.351 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:53:25,384.384 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 06:53:25,386.386 INFO    ] No update needed
[2026-06-12 06:53:25,387.387 INFO    ] Checking for camera pi updates...
[2026-06-12 06:53:25,409.409 INFO    ] 200
[2026-06-12 06:53:25,411.411 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:53:25,435.435 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 06:53:25,480.480 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 06:53:25,482.482 INFO    ] No camera update needed
[2026-06-12 06:53:25,483.483 INFO    ] Script finished. Safe exiting...
[2026-06-12 06:53:25,485.485 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 06:53:25,488.488 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 06:53:25,491.491 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 06:53:27,530.530 INFO    ] ================================================
[2026-06-12 06:53:27,547.547 INFO    ] Launching Daemon at Fri Jun 12 06:53:27 IST 2026
[2026-06-12 06:53:27,559.559 INFO    ] ================================================
[2026-06-12 06:53:27,932.932 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 06:53:27
[2026-06-12 06:53:28,273.273 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 06:53:28,427.427 INFO    ] Initializing speech engine...
[2026-06-12 06:53:28,432.432 INFO    ] 2026-06-12 06:53:28
[2026-06-12 06:53:28,640.640 INFO    ] 2026-06-12 06:53:28
[2026-06-12 06:53:28,668.668 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 06:53:28,853.853 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 06:53:28,863.863 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 06:53:28,992.992 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 06:53:29,060.060 INFO    ] time= 12/06/2026 06:53:28
[2026-06-12 06:53:29,084.084 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 06:53:29,090.090 INFO    ] Checking for existing commands in stream...
[2026-06-12 06:53:29,181.181 INFO    ] No existing commands found in stream
[2026-06-12 06:53:34,196.196 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 06:53:34,199.199 INFO    ] Waiting 3.28 seconds before fallback handling...
[2026-06-12 06:53:37,866.866 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 06:53:37,868.868 INFO    ] Checking for system updates...
[2026-06-12 06:53:37,889.889 INFO    ] 200
[2026-06-12 06:53:37,891.891 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:53:37,922.922 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 06:53:37,923.923 INFO    ] No update needed
[2026-06-12 06:53:37,925.925 INFO    ] Checking for camera pi updates...
[2026-06-12 06:53:37,944.944 INFO    ] 200
[2026-06-12 06:53:37,946.946 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:53:37,972.972 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 06:53:38,007.007 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 06:53:38,009.009 INFO    ] No camera update needed
[2026-06-12 06:53:38,011.011 INFO    ] Script finished. Safe exiting...
[2026-06-12 06:53:38,012.012 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 06:53:38,015.015 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 06:53:38,018.018 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 06:53:40,057.057 INFO    ] ================================================
[2026-06-12 06:53:40,072.072 INFO    ] Launching Daemon at Fri Jun 12 06:53:40 IST 2026
[2026-06-12 06:53:40,083.083 INFO    ] ================================================
[2026-06-12 06:53:40,416.416 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 06:53:40
[2026-06-12 06:53:40,726.726 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 06:53:40,869.869 INFO    ] Initializing speech engine...
[2026-06-12 06:53:40,874.874 INFO    ] 2026-06-12 06:53:40
[2026-06-12 06:53:41,080.080 INFO    ] 2026-06-12 06:53:41
[2026-06-12 06:53:41,109.109 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 06:53:41,295.295 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 06:53:41,299.299 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 06:53:41,437.437 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 06:53:41,491.491 INFO    ] time= 12/06/2026 06:53:41
[2026-06-12 06:53:41,526.526 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 06:53:41,532.532 INFO    ] Checking for existing commands in stream...
[2026-06-12 06:53:41,603.603 INFO    ] No existing commands found in stream
[2026-06-12 06:53:46,614.614 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 06:53:46,616.616 INFO    ] Waiting 0.90 seconds before fallback handling...
[2026-06-12 06:53:47,876.876 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 06:53:47,878.878 INFO    ] Checking for system updates...
[2026-06-12 06:53:47,899.899 INFO    ] 200
[2026-06-12 06:53:47,900.900 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:53:47,930.930 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 06:53:47,932.932 INFO    ] No update needed
[2026-06-12 06:53:47,933.933 INFO    ] Checking for camera pi updates...
[2026-06-12 06:53:47,953.953 INFO    ] 200
[2026-06-12 06:53:47,954.954 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:53:47,977.977 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 06:53:48,017.017 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 06:53:48,018.018 INFO    ] No camera update needed
[2026-06-12 06:53:48,019.019 INFO    ] Script finished. Safe exiting...
[2026-06-12 06:53:48,021.021 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 06:53:48,024.024 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 06:53:48,026.026 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 06:53:50,069.069 INFO    ] ================================================
[2026-06-12 06:53:50,085.085 INFO    ] Launching Daemon at Fri Jun 12 06:53:50 IST 2026
[2026-06-12 06:53:50,096.096 INFO    ] ================================================
[2026-06-12 06:53:50,433.433 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 06:53:50
[2026-06-12 06:53:50,749.749 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 06:53:50,893.893 INFO    ] Initializing speech engine...
[2026-06-12 06:53:50,898.898 INFO    ] 2026-06-12 06:53:50
[2026-06-12 06:53:51,103.103 INFO    ] 2026-06-12 06:53:51
[2026-06-12 06:53:51,131.131 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 06:53:51,314.314 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 06:53:51,323.323 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 06:53:51,453.453 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 06:53:51,519.519 INFO    ] time= 12/06/2026 06:53:51
[2026-06-12 06:53:51,543.543 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 06:53:51,549.549 INFO    ] Checking for existing commands in stream...
[2026-06-12 06:53:51,615.615 INFO    ] No existing commands found in stream
[2026-06-12 06:53:56,624.624 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 06:53:56,627.627 INFO    ] Waiting 2.50 seconds before fallback handling...
[2026-06-12 06:53:59,518.518 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 06:53:59,520.520 INFO    ] Checking for system updates...
[2026-06-12 06:53:59,543.543 INFO    ] 200
[2026-06-12 06:53:59,545.545 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:53:59,578.578 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 06:53:59,579.579 INFO    ] No update needed
[2026-06-12 06:53:59,581.581 INFO    ] Checking for camera pi updates...
[2026-06-12 06:53:59,602.602 INFO    ] 200
[2026-06-12 06:53:59,604.604 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:53:59,630.630 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 06:53:59,668.668 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 06:53:59,669.669 INFO    ] No camera update needed
[2026-06-12 06:53:59,671.671 INFO    ] Script finished. Safe exiting...
[2026-06-12 06:53:59,672.672 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 06:53:59,676.676 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 06:53:59,679.679 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 06:54:01,741.741 INFO    ] ================================================
[2026-06-12 06:54:01,786.786 INFO    ] Launching Daemon at Fri Jun 12 06:54:01 IST 2026
[2026-06-12 06:54:01,802.802 INFO    ] ================================================
[2026-06-12 06:54:02,208.208 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 06:54:02
[2026-06-12 06:54:02,576.576 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 06:54:02,740.740 INFO    ] Initializing speech engine...
[2026-06-12 06:54:02,748.748 INFO    ] 2026-06-12 06:54:02
[2026-06-12 06:54:02,974.974 INFO    ] 2026-06-12 06:54:02
[2026-06-12 06:54:03,003.003 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 06:54:03,188.188 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 06:54:03,191.191 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 06:54:03,329.329 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 06:54:03,393.393 INFO    ] time= 12/06/2026 06:54:03
[2026-06-12 06:54:03,422.422 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 06:54:03,428.428 INFO    ] Checking for existing commands in stream...
[2026-06-12 06:54:03,496.496 INFO    ] No existing commands found in stream
[2026-06-12 06:54:08,510.510 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 06:54:08,513.513 INFO    ] Waiting 3.82 seconds before fallback handling...
[2026-06-12 06:54:12,677.677 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 06:54:12,678.678 INFO    ] Checking for system updates...
[2026-06-12 06:54:12,699.699 INFO    ] 200
[2026-06-12 06:54:12,700.700 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:54:12,730.730 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 06:54:12,732.732 INFO    ] No update needed
[2026-06-12 06:54:12,733.733 INFO    ] Checking for camera pi updates...
[2026-06-12 06:54:12,754.754 INFO    ] 200
[2026-06-12 06:54:12,755.755 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:54:12,780.780 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 06:54:12,821.821 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 06:54:12,823.823 INFO    ] No camera update needed
[2026-06-12 06:54:12,824.824 INFO    ] Script finished. Safe exiting...
[2026-06-12 06:54:12,825.825 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 06:54:12,828.828 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 06:54:12,831.831 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 06:54:14,869.869 INFO    ] ================================================
[2026-06-12 06:54:14,885.885 INFO    ] Launching Daemon at Fri Jun 12 06:54:14 IST 2026
[2026-06-12 06:54:14,896.896 INFO    ] ================================================
[2026-06-12 06:54:15,249.249 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 06:54:15
[2026-06-12 06:54:15,590.590 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 06:54:15,744.744 INFO    ] Initializing speech engine...
[2026-06-12 06:54:15,749.749 INFO    ] 2026-06-12 06:54:15
[2026-06-12 06:54:15,962.962 INFO    ] 2026-06-12 06:54:15
[2026-06-12 06:54:15,992.992 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 06:54:16,178.178 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 06:54:16,191.191 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 06:54:16,320.320 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 06:54:16,386.386 INFO    ] time= 12/06/2026 06:54:16
[2026-06-12 06:54:16,415.415 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 06:54:16,417.417 INFO    ] Checking for existing commands in stream...
[2026-06-12 06:54:16,489.489 INFO    ] No existing commands found in stream
[2026-06-12 06:54:21,504.504 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 06:54:21,507.507 INFO    ] Waiting 3.21 seconds before fallback handling...
[2026-06-12 06:54:25,084.084 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 06:54:25,086.086 INFO    ] Checking for system updates...
[2026-06-12 06:54:25,107.107 INFO    ] 200
[2026-06-12 06:54:25,109.109 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:54:25,140.140 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 06:54:25,142.142 INFO    ] No update needed
[2026-06-12 06:54:25,143.143 INFO    ] Checking for camera pi updates...
[2026-06-12 06:54:25,163.163 INFO    ] 200
[2026-06-12 06:54:25,165.165 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:54:25,190.190 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 06:54:25,230.230 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 06:54:25,232.232 INFO    ] No camera update needed
[2026-06-12 06:54:25,233.233 INFO    ] Script finished. Safe exiting...
[2026-06-12 06:54:25,234.234 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 06:54:25,237.237 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 06:54:25,240.240 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 06:54:27,279.279 INFO    ] ================================================
[2026-06-12 06:54:27,295.295 INFO    ] Launching Daemon at Fri Jun 12 06:54:27 IST 2026
[2026-06-12 06:54:27,307.307 INFO    ] ================================================
[2026-06-12 06:54:27,633.633 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 06:54:27
[2026-06-12 06:54:27,958.958 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 06:54:28,112.112 INFO    ] Initializing speech engine...
[2026-06-12 06:54:28,116.116 INFO    ] 2026-06-12 06:54:28
[2026-06-12 06:54:28,328.328 INFO    ] 2026-06-12 06:54:28
[2026-06-12 06:54:28,357.357 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 06:54:28,497.497 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 06:54:28,546.546 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 06:54:28,681.681 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 06:54:28,743.743 INFO    ] time= 12/06/2026 06:54:28
[2026-06-12 06:54:28,776.776 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 06:54:28,783.783 INFO    ] Checking for existing commands in stream...
[2026-06-12 06:54:28,850.850 INFO    ] No existing commands found in stream
[2026-06-12 06:54:33,860.860 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 06:54:33,863.863 INFO    ] Waiting 0.98 seconds before fallback handling...
[2026-06-12 06:54:35,145.145 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 06:54:35,147.147 INFO    ] Checking for system updates...
[2026-06-12 06:54:35,168.168 INFO    ] 200
[2026-06-12 06:54:35,169.169 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:54:35,203.203 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 06:54:35,204.204 INFO    ] No update needed
[2026-06-12 06:54:35,206.206 INFO    ] Checking for camera pi updates...
[2026-06-12 06:54:35,228.228 INFO    ] 200
[2026-06-12 06:54:35,230.230 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:54:35,273.273 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 06:54:35,316.316 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 06:54:35,319.319 INFO    ] No camera update needed
[2026-06-12 06:54:35,322.322 INFO    ] Script finished. Safe exiting...
[2026-06-12 06:54:35,325.325 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 06:54:35,330.330 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 06:54:35,335.335 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 06:54:37,362.362 INFO    ] ================================================
[2026-06-12 06:54:37,372.372 INFO    ] Launching Daemon at Fri Jun 12 06:54:37 IST 2026
[2026-06-12 06:54:37,378.378 INFO    ] ================================================
[2026-06-12 06:54:37,703.703 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 06:54:37
[2026-06-12 06:54:38,016.016 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 06:54:38,153.153 INFO    ] Initializing speech engine...
[2026-06-12 06:54:38,156.156 INFO    ] 2026-06-12 06:54:38
[2026-06-12 06:54:38,383.383 INFO    ] 2026-06-12 06:54:38
[2026-06-12 06:54:38,419.419 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 06:54:38,554.554 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 06:54:38,594.594 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 06:54:38,708.708 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 06:54:38,709.709 INFO    ] time= 12/06/2026 06:54:38
[2026-06-12 06:54:38,741.741 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 06:54:38,766.766 INFO    ] Checking for existing commands in stream...
[2026-06-12 06:54:38,859.859 INFO    ] No existing commands found in stream
[2026-06-12 06:54:43,872.872 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 06:54:43,874.874 INFO    ] Waiting 0.40 seconds before fallback handling...
[2026-06-12 06:54:44,665.665 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 06:54:44,667.667 INFO    ] Checking for system updates...
[2026-06-12 06:54:44,688.688 INFO    ] 200
[2026-06-12 06:54:44,689.689 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:54:44,720.720 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 06:54:44,721.721 INFO    ] No update needed
[2026-06-12 06:54:44,723.723 INFO    ] Checking for camera pi updates...
[2026-06-12 06:54:44,742.742 INFO    ] 200
[2026-06-12 06:54:44,744.744 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:54:44,768.768 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 06:54:44,813.813 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 06:54:44,814.814 INFO    ] No camera update needed
[2026-06-12 06:54:44,816.816 INFO    ] Script finished. Safe exiting...
[2026-06-12 06:54:44,817.817 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 06:54:44,820.820 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 06:54:44,823.823 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 06:54:46,861.861 INFO    ] ================================================
[2026-06-12 06:54:46,877.877 INFO    ] Launching Daemon at Fri Jun 12 06:54:46 IST 2026
[2026-06-12 06:54:46,888.888 INFO    ] ================================================
[2026-06-12 06:54:47,234.234 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 06:54:47
[2026-06-12 06:54:47,551.551 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 06:54:47,681.681 INFO    ] Initializing speech engine...
[2026-06-12 06:54:47,690.690 INFO    ] 2026-06-12 06:54:47
[2026-06-12 06:54:47,902.902 INFO    ] 2026-06-12 06:54:47
[2026-06-12 06:54:47,930.930 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 06:54:48,057.057 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 06:54:48,115.115 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 06:54:48,244.244 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 06:54:48,305.305 INFO    ] time= 12/06/2026 06:54:48
[2026-06-12 06:54:48,334.334 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 06:54:48,345.345 INFO    ] Checking for existing commands in stream...
[2026-06-12 06:54:48,416.416 INFO    ] No existing commands found in stream
[2026-06-12 06:54:53,424.424 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 06:54:53,427.427 INFO    ] Waiting 0.07 seconds before fallback handling...
[2026-06-12 06:54:53,868.868 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 06:54:53,870.870 INFO    ] Checking for system updates...
[2026-06-12 06:54:53,892.892 INFO    ] 200
[2026-06-12 06:54:53,894.894 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:54:53,927.927 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 06:54:53,929.929 INFO    ] No update needed
[2026-06-12 06:54:53,931.931 INFO    ] Checking for camera pi updates...
[2026-06-12 06:54:53,951.951 INFO    ] 200
[2026-06-12 06:54:53,952.952 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:54:53,976.976 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 06:54:54,013.013 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 06:54:54,014.014 INFO    ] No camera update needed
[2026-06-12 06:54:54,016.016 INFO    ] Script finished. Safe exiting...
[2026-06-12 06:54:54,017.017 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 06:54:54,021.021 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 06:54:54,024.024 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 06:54:56,066.066 INFO    ] ================================================
[2026-06-12 06:54:56,082.082 INFO    ] Launching Daemon at Fri Jun 12 06:54:56 IST 2026
[2026-06-12 06:54:56,093.093 INFO    ] ================================================
[2026-06-12 06:54:56,421.421 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 06:54:56
[2026-06-12 06:54:56,739.739 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 06:54:56,877.877 INFO    ] Initializing speech engine...
[2026-06-12 06:54:56,888.888 INFO    ] 2026-06-12 06:54:56
[2026-06-12 06:54:57,093.093 INFO    ] 2026-06-12 06:54:57
[2026-06-12 06:54:57,121.121 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 06:54:57,304.304 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 06:54:57,308.308 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 06:54:57,440.440 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 06:54:57,492.492 INFO    ] time= 12/06/2026 06:54:57
[2026-06-12 06:54:57,532.532 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 06:54:57,537.537 INFO    ] Checking for existing commands in stream...
[2026-06-12 06:54:57,608.608 INFO    ] No existing commands found in stream
[2026-06-12 06:55:02,616.616 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 06:55:02,618.618 INFO    ] Waiting 2.92 seconds before fallback handling...
[2026-06-12 06:55:05,916.916 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 06:55:05,918.918 INFO    ] Checking for system updates...
[2026-06-12 06:55:05,939.939 INFO    ] 200
[2026-06-12 06:55:05,941.941 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:55:05,971.971 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 06:55:05,972.972 INFO    ] No update needed
[2026-06-12 06:55:05,974.974 INFO    ] Checking for camera pi updates...
[2026-06-12 06:55:05,994.994 INFO    ] 200
[2026-06-12 06:55:05,995.995 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:55:06,019.019 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 06:55:06,055.055 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 06:55:06,057.057 INFO    ] No camera update needed
[2026-06-12 06:55:06,058.058 INFO    ] Script finished. Safe exiting...
[2026-06-12 06:55:06,059.059 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 06:55:06,063.063 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 06:55:06,066.066 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 06:55:08,104.104 INFO    ] ================================================
[2026-06-12 06:55:08,121.121 INFO    ] Launching Daemon at Fri Jun 12 06:55:08 IST 2026
[2026-06-12 06:55:08,133.133 INFO    ] ================================================
[2026-06-12 06:55:08,471.471 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 06:55:08
[2026-06-12 06:55:08,790.790 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 06:55:08,934.934 INFO    ] Initializing speech engine...
[2026-06-12 06:55:08,939.939 INFO    ] 2026-06-12 06:55:08
[2026-06-12 06:55:09,142.142 INFO    ] 2026-06-12 06:55:09
[2026-06-12 06:55:09,171.171 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 06:55:09,354.354 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 06:55:09,364.364 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 06:55:09,494.494 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 06:55:09,548.548 INFO    ] time= 12/06/2026 06:55:09
[2026-06-12 06:55:09,583.583 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 06:55:09,588.588 INFO    ] Checking for existing commands in stream...
[2026-06-12 06:55:09,659.659 INFO    ] No existing commands found in stream
[2026-06-12 06:55:14,673.673 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 06:55:14,676.676 INFO    ] Waiting 1.32 seconds before fallback handling...
[2026-06-12 06:55:16,322.322 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 06:55:16,323.323 INFO    ] Checking for system updates...
[2026-06-12 06:55:16,345.345 INFO    ] 200
[2026-06-12 06:55:16,347.347 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:55:16,380.380 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 06:55:16,382.382 INFO    ] No update needed
[2026-06-12 06:55:16,383.383 INFO    ] Checking for camera pi updates...
[2026-06-12 06:55:16,407.407 INFO    ] 200
[2026-06-12 06:55:16,409.409 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:55:16,434.434 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 06:55:16,472.472 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 06:55:16,473.473 INFO    ] No camera update needed
[2026-06-12 06:55:16,475.475 INFO    ] Script finished. Safe exiting...
[2026-06-12 06:55:16,476.476 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 06:55:16,479.479 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 06:55:16,482.482 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 06:55:18,522.522 INFO    ] ================================================
[2026-06-12 06:55:18,538.538 INFO    ] Launching Daemon at Fri Jun 12 06:55:18 IST 2026
[2026-06-12 06:55:18,549.549 INFO    ] ================================================
[2026-06-12 06:55:18,920.920 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 06:55:18
[2026-06-12 06:55:19,265.265 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 06:55:19,420.420 INFO    ] Initializing speech engine...
[2026-06-12 06:55:19,424.424 INFO    ] 2026-06-12 06:55:19
[2026-06-12 06:55:19,630.630 INFO    ] 2026-06-12 06:55:19
[2026-06-12 06:55:19,660.660 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 06:55:19,843.843 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 06:55:19,853.853 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 06:55:19,998.998 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 06:55:20,052.052 INFO    ] time= 12/06/2026 06:55:20
[2026-06-12 06:55:20,073.073 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 06:55:20,080.080 INFO    ] Checking for existing commands in stream...
[2026-06-12 06:55:20,146.146 INFO    ] No existing commands found in stream
[2026-06-12 06:55:25,155.155 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 06:55:25,158.158 INFO    ] Waiting 3.36 seconds before fallback handling...
[2026-06-12 06:55:28,904.904 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 06:55:28,905.905 INFO    ] Checking for system updates...
[2026-06-12 06:55:28,927.927 INFO    ] 200
[2026-06-12 06:55:28,929.929 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:55:28,963.963 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 06:55:28,964.964 INFO    ] No update needed
[2026-06-12 06:55:28,966.966 INFO    ] Checking for camera pi updates...
[2026-06-12 06:55:28,987.987 INFO    ] 200
[2026-06-12 06:55:28,988.988 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:55:29,012.012 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 06:55:29,048.048 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 06:55:29,050.050 INFO    ] No camera update needed
[2026-06-12 06:55:29,052.052 INFO    ] Script finished. Safe exiting...
[2026-06-12 06:55:29,053.053 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 06:55:29,056.056 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 06:55:29,059.059 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 06:55:31,100.100 INFO    ] ================================================
[2026-06-12 06:55:31,116.116 INFO    ] Launching Daemon at Fri Jun 12 06:55:31 IST 2026
[2026-06-12 06:55:31,127.127 INFO    ] ================================================
[2026-06-12 06:55:31,485.485 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 06:55:31
[2026-06-12 06:55:31,796.796 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 06:55:31,934.934 INFO    ] Initializing speech engine...
[2026-06-12 06:55:31,942.942 INFO    ] 2026-06-12 06:55:31
[2026-06-12 06:55:32,168.168 INFO    ] 2026-06-12 06:55:32
[2026-06-12 06:55:32,195.195 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 06:55:32,365.365 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 06:55:32,396.396 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 06:55:32,545.545 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 06:55:32,612.612 INFO    ] time= 12/06/2026 06:55:32
[2026-06-12 06:55:32,651.651 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 06:55:32,658.658 INFO    ] Checking for existing commands in stream...
[2026-06-12 06:55:32,728.728 INFO    ] No existing commands found in stream
[2026-06-12 06:55:37,743.743 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 06:55:37,745.745 INFO    ] Waiting 2.99 seconds before fallback handling...
[2026-06-12 06:55:41,105.105 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 06:55:41,106.106 INFO    ] Checking for system updates...
[2026-06-12 06:55:41,126.126 INFO    ] 200
[2026-06-12 06:55:41,128.128 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:55:41,161.161 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 06:55:41,162.162 INFO    ] No update needed
[2026-06-12 06:55:41,163.163 INFO    ] Checking for camera pi updates...
[2026-06-12 06:55:41,182.182 INFO    ] 200
[2026-06-12 06:55:41,184.184 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:55:41,208.208 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 06:55:41,243.243 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 06:55:41,245.245 INFO    ] No camera update needed
[2026-06-12 06:55:41,246.246 INFO    ] Script finished. Safe exiting...
[2026-06-12 06:55:41,247.247 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 06:55:41,250.250 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 06:55:41,253.253 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 06:55:43,292.292 INFO    ] ================================================
[2026-06-12 06:55:43,307.307 INFO    ] Launching Daemon at Fri Jun 12 06:55:43 IST 2026
[2026-06-12 06:55:43,318.318 INFO    ] ================================================
[2026-06-12 06:55:43,650.650 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 06:55:43
[2026-06-12 06:55:43,960.960 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 06:55:44,091.091 INFO    ] Initializing speech engine...
[2026-06-12 06:55:44,095.095 INFO    ] 2026-06-12 06:55:44
[2026-06-12 06:55:44,313.313 INFO    ] 2026-06-12 06:55:44
[2026-06-12 06:55:44,342.342 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 06:55:44,527.527 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 06:55:44,531.531 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 06:55:44,668.668 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 06:55:44,724.724 INFO    ] time= 12/06/2026 06:55:44
[2026-06-12 06:55:44,765.765 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 06:55:44,777.777 INFO    ] Checking for existing commands in stream...
[2026-06-12 06:55:44,859.859 INFO    ] No existing commands found in stream
[2026-06-12 06:55:49,883.883 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 06:55:49,885.885 INFO    ] Waiting 2.77 seconds before fallback handling...
[2026-06-12 06:55:53,012.012 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 06:55:53,014.014 INFO    ] Checking for system updates...
[2026-06-12 06:55:53,034.034 INFO    ] 200
[2026-06-12 06:55:53,035.035 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:55:53,066.066 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 06:55:53,068.068 INFO    ] No update needed
[2026-06-12 06:55:53,069.069 INFO    ] Checking for camera pi updates...
[2026-06-12 06:55:53,090.090 INFO    ] 200
[2026-06-12 06:55:53,091.091 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:55:53,114.114 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 06:55:53,137.137 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 06:55:53,138.138 INFO    ] No camera update needed
[2026-06-12 06:55:53,140.140 INFO    ] Script finished. Safe exiting...
[2026-06-12 06:55:53,141.141 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 06:55:53,144.144 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 06:55:53,146.146 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 06:55:55,185.185 INFO    ] ================================================
[2026-06-12 06:55:55,200.200 INFO    ] Launching Daemon at Fri Jun 12 06:55:55 IST 2026
[2026-06-12 06:55:55,211.211 INFO    ] ================================================
[2026-06-12 06:55:55,599.599 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 06:55:55
[2026-06-12 06:55:55,948.948 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 06:55:56,105.105 INFO    ] Initializing speech engine...
[2026-06-12 06:55:56,111.111 INFO    ] 2026-06-12 06:55:56
[2026-06-12 06:55:56,319.319 INFO    ] 2026-06-12 06:55:56
[2026-06-12 06:55:56,350.350 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 06:55:56,534.534 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 06:55:56,538.538 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 06:55:56,675.675 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 06:55:56,735.735 INFO    ] time= 12/06/2026 06:55:56
[2026-06-12 06:55:56,767.767 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 06:55:56,773.773 INFO    ] Checking for existing commands in stream...
[2026-06-12 06:55:56,844.844 INFO    ] No existing commands found in stream
[2026-06-12 06:56:01,853.853 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 06:56:01,855.855 INFO    ] Waiting 0.93 seconds before fallback handling...
[2026-06-12 06:56:03,123.123 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 06:56:03,125.125 INFO    ] Checking for system updates...
[2026-06-12 06:56:03,146.146 INFO    ] 200
[2026-06-12 06:56:03,147.147 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:56:03,180.180 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 06:56:03,182.182 INFO    ] No update needed
[2026-06-12 06:56:03,183.183 INFO    ] Checking for camera pi updates...
[2026-06-12 06:56:03,203.203 INFO    ] 200
[2026-06-12 06:56:03,204.204 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:56:03,230.230 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 06:56:03,267.267 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 06:56:03,268.268 INFO    ] No camera update needed
[2026-06-12 06:56:03,270.270 INFO    ] Script finished. Safe exiting...
[2026-06-12 06:56:03,271.271 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 06:56:03,274.274 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 06:56:03,277.277 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 06:56:05,316.316 INFO    ] ================================================
[2026-06-12 06:56:05,331.331 INFO    ] Launching Daemon at Fri Jun 12 06:56:05 IST 2026
[2026-06-12 06:56:05,342.342 INFO    ] ================================================
[2026-06-12 06:56:05,690.690 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 06:56:05
[2026-06-12 06:56:06,005.005 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 06:56:06,148.148 INFO    ] Initializing speech engine...
[2026-06-12 06:56:06,153.153 INFO    ] 2026-06-12 06:56:06
[2026-06-12 06:56:06,356.356 INFO    ] 2026-06-12 06:56:06
[2026-06-12 06:56:06,385.385 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 06:56:06,568.568 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 06:56:06,577.577 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 06:56:06,703.703 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 06:56:06,749.749 INFO    ] time= 12/06/2026 06:56:06
[2026-06-12 06:56:06,796.796 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 06:56:06,798.798 INFO    ] Checking for existing commands in stream...
[2026-06-12 06:56:06,869.869 INFO    ] No existing commands found in stream
[2026-06-12 06:56:11,883.883 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 06:56:11,886.886 INFO    ] Waiting 0.63 seconds before fallback handling...
[2026-06-12 06:56:12,893.893 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 06:56:12,895.895 INFO    ] Checking for system updates...
[2026-06-12 06:56:12,915.915 INFO    ] 200
[2026-06-12 06:56:12,917.917 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:56:12,949.949 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 06:56:12,951.951 INFO    ] No update needed
[2026-06-12 06:56:12,952.952 INFO    ] Checking for camera pi updates...
[2026-06-12 06:56:12,971.971 INFO    ] 200
[2026-06-12 06:56:12,973.973 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:56:12,996.996 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 06:56:13,043.043 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 06:56:13,044.044 INFO    ] No camera update needed
[2026-06-12 06:56:13,046.046 INFO    ] Script finished. Safe exiting...
[2026-06-12 06:56:13,047.047 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 06:56:13,050.050 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 06:56:13,053.053 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 06:56:15,093.093 INFO    ] ================================================
[2026-06-12 06:56:15,108.108 INFO    ] Launching Daemon at Fri Jun 12 06:56:15 IST 2026
[2026-06-12 06:56:15,119.119 INFO    ] ================================================
[2026-06-12 06:56:15,458.458 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 06:56:15
[2026-06-12 06:56:15,771.771 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 06:56:15,913.913 INFO    ] Initializing speech engine...
[2026-06-12 06:56:15,917.917 INFO    ] 2026-06-12 06:56:15
[2026-06-12 06:56:16,121.121 INFO    ] 2026-06-12 06:56:16
[2026-06-12 06:56:16,150.150 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 06:56:16,332.332 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 06:56:16,336.336 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 06:56:16,471.471 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 06:56:16,538.538 INFO    ] time= 12/06/2026 06:56:16
[2026-06-12 06:56:16,562.562 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 06:56:16,568.568 INFO    ] Checking for existing commands in stream...
[2026-06-12 06:56:16,635.635 INFO    ] No existing commands found in stream
[2026-06-12 06:56:21,644.644 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 06:56:21,647.647 INFO    ] Waiting 1.22 seconds before fallback handling...
[2026-06-12 06:56:24,045.045 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 06:56:24,047.047 INFO    ] Checking for system updates...
[2026-06-12 06:56:24,084.084 INFO    ] 200
[2026-06-12 06:56:24,086.086 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:56:24,147.147 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 06:56:24,150.150 INFO    ] No update needed
[2026-06-12 06:56:24,152.152 INFO    ] Checking for camera pi updates...
[2026-06-12 06:56:24,171.171 INFO    ] 200
[2026-06-12 06:56:24,172.172 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:56:24,195.195 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 06:56:24,238.238 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 06:56:24,240.240 INFO    ] No camera update needed
[2026-06-12 06:56:24,241.241 INFO    ] Script finished. Safe exiting...
[2026-06-12 06:56:24,242.242 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 06:56:24,245.245 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 06:56:24,248.248 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 06:56:26,286.286 INFO    ] ================================================
[2026-06-12 06:56:26,301.301 INFO    ] Launching Daemon at Fri Jun 12 06:56:26 IST 2026
[2026-06-12 06:56:26,312.312 INFO    ] ================================================
[2026-06-12 06:56:26,675.675 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 06:56:26
[2026-06-12 06:56:26,995.995 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 06:56:27,134.134 INFO    ] Initializing speech engine...
[2026-06-12 06:56:27,142.142 INFO    ] 2026-06-12 06:56:27
[2026-06-12 06:56:27,369.369 INFO    ] 2026-06-12 06:56:27
[2026-06-12 06:56:27,400.400 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 06:56:27,599.599 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 06:56:27,603.603 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 06:56:27,744.744 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 06:56:27,800.800 INFO    ] time= 12/06/2026 06:56:27
[2026-06-12 06:56:27,850.850 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 06:56:27,852.852 INFO    ] Checking for existing commands in stream...
[2026-06-12 06:56:27,928.928 INFO    ] No existing commands found in stream
[2026-06-12 06:56:32,938.938 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 06:56:32,940.940 INFO    ] Waiting 0.40 seconds before fallback handling...
[2026-06-12 06:56:33,750.750 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 06:56:33,751.751 INFO    ] Checking for system updates...
[2026-06-12 06:56:33,772.772 INFO    ] 200
[2026-06-12 06:56:33,773.773 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:56:33,804.804 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 06:56:33,805.805 INFO    ] No update needed
[2026-06-12 06:56:33,806.806 INFO    ] Checking for camera pi updates...
[2026-06-12 06:56:33,828.828 INFO    ] 200
[2026-06-12 06:56:33,829.829 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:56:33,853.853 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 06:56:33,994.994 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 06:56:33,995.995 INFO    ] No camera update needed
[2026-06-12 06:56:33,997.997 INFO    ] Script finished. Safe exiting...
[2026-06-12 06:56:33,998.998 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 06:56:34,001.001 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 06:56:34,004.004 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 06:56:36,042.042 INFO    ] ================================================
[2026-06-12 06:56:36,057.057 INFO    ] Launching Daemon at Fri Jun 12 06:56:36 IST 2026
[2026-06-12 06:56:36,068.068 INFO    ] ================================================
[2026-06-12 06:56:36,395.395 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 06:56:36
[2026-06-12 06:56:36,710.710 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 06:56:36,841.841 INFO    ] Initializing speech engine...
[2026-06-12 06:56:36,849.849 INFO    ] 2026-06-12 06:56:36
[2026-06-12 06:56:37,063.063 INFO    ] 2026-06-12 06:56:37
[2026-06-12 06:56:37,093.093 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 06:56:37,281.281 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 06:56:37,289.289 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 06:56:37,420.420 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 06:56:37,479.479 INFO    ] time= 12/06/2026 06:56:37
[2026-06-12 06:56:37,513.513 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 06:56:37,519.519 INFO    ] Checking for existing commands in stream...
[2026-06-12 06:56:37,587.587 INFO    ] No existing commands found in stream
[2026-06-12 06:56:42,596.596 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 06:56:42,598.598 INFO    ] Waiting 3.05 seconds before fallback handling...
[2026-06-12 06:56:46,002.002 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 06:56:46,004.004 INFO    ] Checking for system updates...
[2026-06-12 06:56:46,024.024 INFO    ] 200
[2026-06-12 06:56:46,025.025 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:56:46,058.058 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 06:56:46,059.059 INFO    ] No update needed
[2026-06-12 06:56:46,061.061 INFO    ] Checking for camera pi updates...
[2026-06-12 06:56:46,082.082 INFO    ] 200
[2026-06-12 06:56:46,083.083 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:56:46,106.106 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 06:56:46,147.147 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 06:56:46,150.150 INFO    ] No camera update needed
[2026-06-12 06:56:46,152.152 INFO    ] Script finished. Safe exiting...
[2026-06-12 06:56:46,154.154 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 06:56:46,156.156 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 06:56:46,159.159 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 06:56:48,199.199 INFO    ] ================================================
[2026-06-12 06:56:48,214.214 INFO    ] Launching Daemon at Fri Jun 12 06:56:48 IST 2026
[2026-06-12 06:56:48,225.225 INFO    ] ================================================
[2026-06-12 06:56:48,565.565 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 06:56:48
[2026-06-12 06:56:48,882.882 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 06:56:49,016.016 INFO    ] Initializing speech engine...
[2026-06-12 06:56:49,020.020 INFO    ] 2026-06-12 06:56:49
[2026-06-12 06:56:49,224.224 INFO    ] 2026-06-12 06:56:49
[2026-06-12 06:56:49,258.258 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 06:56:49,415.415 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 06:56:49,482.482 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 06:56:49,627.627 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 06:56:49,690.690 INFO    ] time= 12/06/2026 06:56:49
[2026-06-12 06:56:49,728.728 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 06:56:49,731.731 INFO    ] Checking for existing commands in stream...
[2026-06-12 06:56:49,835.835 INFO    ] No existing commands found in stream
[2026-06-12 06:56:54,842.842 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 06:56:54,845.845 INFO    ] Waiting 0.11 seconds before fallback handling...
[2026-06-12 06:56:55,314.314 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 06:56:55,315.315 INFO    ] Checking for system updates...
[2026-06-12 06:56:55,336.336 INFO    ] 200
[2026-06-12 06:56:55,338.338 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:56:55,368.368 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 06:56:55,370.370 INFO    ] No update needed
[2026-06-12 06:56:55,371.371 INFO    ] Checking for camera pi updates...
[2026-06-12 06:56:55,392.392 INFO    ] 200
[2026-06-12 06:56:55,394.394 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:56:55,417.417 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 06:56:55,452.452 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 06:56:55,454.454 INFO    ] No camera update needed
[2026-06-12 06:56:55,455.455 INFO    ] Script finished. Safe exiting...
[2026-06-12 06:56:55,456.456 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 06:56:55,459.459 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 06:56:55,462.462 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 06:56:57,503.503 INFO    ] ================================================
[2026-06-12 06:56:57,518.518 INFO    ] Launching Daemon at Fri Jun 12 06:56:57 IST 2026
[2026-06-12 06:56:57,529.529 INFO    ] ================================================
[2026-06-12 06:56:57,887.887 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 06:56:57
[2026-06-12 06:56:58,201.201 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 06:56:58,331.331 INFO    ] Initializing speech engine...
[2026-06-12 06:56:58,335.335 INFO    ] 2026-06-12 06:56:58
[2026-06-12 06:56:58,554.554 INFO    ] 2026-06-12 06:56:58
[2026-06-12 06:56:58,583.583 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 06:56:58,768.768 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 06:56:58,777.777 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 06:56:58,908.908 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 06:56:58,975.975 INFO    ] time= 12/06/2026 06:56:58
[2026-06-12 06:56:59,000.000 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 06:56:59,002.002 INFO    ] Checking for existing commands in stream...
[2026-06-12 06:56:59,097.097 INFO    ] No existing commands found in stream
[2026-06-12 06:57:04,106.106 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 06:57:04,109.109 INFO    ] Waiting 1.41 seconds before fallback handling...
[2026-06-12 06:57:05,904.904 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 06:57:05,906.906 INFO    ] Checking for system updates...
[2026-06-12 06:57:05,927.927 INFO    ] 200
[2026-06-12 06:57:05,928.928 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:57:05,959.959 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 06:57:05,960.960 INFO    ] No update needed
[2026-06-12 06:57:05,962.962 INFO    ] Checking for camera pi updates...
[2026-06-12 06:57:05,981.981 INFO    ] 200
[2026-06-12 06:57:05,983.983 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:57:06,006.006 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 06:57:06,052.052 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 06:57:06,053.053 INFO    ] No camera update needed
[2026-06-12 06:57:06,055.055 INFO    ] Script finished. Safe exiting...
[2026-06-12 06:57:06,056.056 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 06:57:06,059.059 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 06:57:06,063.063 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 06:57:08,103.103 INFO    ] ================================================
[2026-06-12 06:57:08,118.118 INFO    ] Launching Daemon at Fri Jun 12 06:57:08 IST 2026
[2026-06-12 06:57:08,129.129 INFO    ] ================================================
[2026-06-12 06:57:08,494.494 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 06:57:08
[2026-06-12 06:57:08,807.807 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 06:57:08,950.950 INFO    ] Initializing speech engine...
[2026-06-12 06:57:08,955.955 INFO    ] 2026-06-12 06:57:08
[2026-06-12 06:57:09,161.161 INFO    ] 2026-06-12 06:57:09
[2026-06-12 06:57:09,189.189 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 06:57:09,375.375 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 06:57:09,379.379 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 06:57:09,519.519 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 06:57:09,587.587 INFO    ] time= 12/06/2026 06:57:09
[2026-06-12 06:57:09,612.612 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 06:57:09,618.618 INFO    ] Checking for existing commands in stream...
[2026-06-12 06:57:09,686.686 INFO    ] No existing commands found in stream
[2026-06-12 06:57:14,695.695 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 06:57:14,697.697 INFO    ] Waiting 2.29 seconds before fallback handling...
[2026-06-12 06:57:17,360.360 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 06:57:17,362.362 INFO    ] Checking for system updates...
[2026-06-12 06:57:17,383.383 INFO    ] 200
[2026-06-12 06:57:17,384.384 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:57:17,416.416 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 06:57:17,418.418 INFO    ] No update needed
[2026-06-12 06:57:17,421.421 INFO    ] Checking for camera pi updates...
[2026-06-12 06:57:17,441.441 INFO    ] 200
[2026-06-12 06:57:17,443.443 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:57:17,466.466 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 06:57:17,501.501 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 06:57:17,503.503 INFO    ] No camera update needed
[2026-06-12 06:57:17,504.504 INFO    ] Script finished. Safe exiting...
[2026-06-12 06:57:17,505.505 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 06:57:17,508.508 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 06:57:17,511.511 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 06:57:19,552.552 INFO    ] ================================================
[2026-06-12 06:57:19,567.567 INFO    ] Launching Daemon at Fri Jun 12 06:57:19 IST 2026
[2026-06-12 06:57:19,578.578 INFO    ] ================================================
[2026-06-12 06:57:19,910.910 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 06:57:19
[2026-06-12 06:57:20,232.232 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 06:57:20,363.363 INFO    ] Initializing speech engine...
[2026-06-12 06:57:20,376.376 INFO    ] 2026-06-12 06:57:20
[2026-06-12 06:57:20,582.582 INFO    ] 2026-06-12 06:57:20
[2026-06-12 06:57:20,611.611 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 06:57:20,793.793 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 06:57:20,796.796 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 06:57:20,924.924 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 06:57:20,979.979 INFO    ] time= 12/06/2026 06:57:20
[2026-06-12 06:57:21,018.018 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 06:57:21,023.023 INFO    ] Checking for existing commands in stream...
[2026-06-12 06:57:21,091.091 INFO    ] No existing commands found in stream
[2026-06-12 06:57:26,100.100 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 06:57:26,103.103 INFO    ] Waiting 0.68 seconds before fallback handling...
[2026-06-12 06:57:27,151.151 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 06:57:27,153.153 INFO    ] Checking for system updates...
[2026-06-12 06:57:27,173.173 INFO    ] 200
[2026-06-12 06:57:27,175.175 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:57:27,208.208 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 06:57:27,210.210 INFO    ] No update needed
[2026-06-12 06:57:27,211.211 INFO    ] Checking for camera pi updates...
[2026-06-12 06:57:27,233.233 INFO    ] 200
[2026-06-12 06:57:27,235.235 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:57:27,258.258 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 06:57:27,299.299 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 06:57:27,301.301 INFO    ] No camera update needed
[2026-06-12 06:57:27,302.302 INFO    ] Script finished. Safe exiting...
[2026-06-12 06:57:27,304.304 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 06:57:27,307.307 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 06:57:27,310.310 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 06:57:29,348.348 INFO    ] ================================================
[2026-06-12 06:57:29,363.363 INFO    ] Launching Daemon at Fri Jun 12 06:57:29 IST 2026
[2026-06-12 06:57:29,374.374 INFO    ] ================================================
[2026-06-12 06:57:29,718.718 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 06:57:29
[2026-06-12 06:57:30,037.037 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 06:57:30,179.179 INFO    ] Initializing speech engine...
[2026-06-12 06:57:30,187.187 INFO    ] 2026-06-12 06:57:30
[2026-06-12 06:57:30,407.407 INFO    ] 2026-06-12 06:57:30
[2026-06-12 06:57:30,438.438 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 06:57:30,637.637 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 06:57:30,640.640 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 06:57:30,782.782 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 06:57:30,839.839 INFO    ] time= 12/06/2026 06:57:30
[2026-06-12 06:57:30,880.880 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 06:57:30,891.891 INFO    ] Checking for existing commands in stream...
[2026-06-12 06:57:30,994.994 INFO    ] No existing commands found in stream
[2026-06-12 06:57:36,008.008 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 06:57:36,011.011 INFO    ] Waiting 1.86 seconds before fallback handling...
[2026-06-12 06:57:38,238.238 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 06:57:38,240.240 INFO    ] Checking for system updates...
[2026-06-12 06:57:38,261.261 INFO    ] 200
[2026-06-12 06:57:38,262.262 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:57:38,295.295 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 06:57:38,296.296 INFO    ] No update needed
[2026-06-12 06:57:38,298.298 INFO    ] Checking for camera pi updates...
[2026-06-12 06:57:38,318.318 INFO    ] 200
[2026-06-12 06:57:38,319.319 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:57:38,342.342 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 06:57:38,402.402 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 06:57:38,403.403 INFO    ] No camera update needed
[2026-06-12 06:57:38,405.405 INFO    ] Script finished. Safe exiting...
[2026-06-12 06:57:38,406.406 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 06:57:38,409.409 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 06:57:38,412.412 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 06:57:40,453.453 INFO    ] ================================================
[2026-06-12 06:57:40,469.469 INFO    ] Launching Daemon at Fri Jun 12 06:57:40 IST 2026
[2026-06-12 06:57:40,480.480 INFO    ] ================================================
[2026-06-12 06:57:40,860.860 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 06:57:40
[2026-06-12 06:57:41,203.203 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 06:57:41,355.355 INFO    ] Initializing speech engine...
[2026-06-12 06:57:41,361.361 INFO    ] 2026-06-12 06:57:41
[2026-06-12 06:57:41,575.575 INFO    ] 2026-06-12 06:57:41
[2026-06-12 06:57:41,604.604 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 06:57:41,789.789 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 06:57:41,793.793 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 06:57:41,930.930 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 06:57:41,987.987 INFO    ] time= 12/06/2026 06:57:41
[2026-06-12 06:57:42,021.021 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 06:57:42,027.027 INFO    ] Checking for existing commands in stream...
[2026-06-12 06:57:42,123.123 INFO    ] No existing commands found in stream
[2026-06-12 06:57:47,132.132 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 06:57:47,136.136 INFO    ] Waiting 0.94 seconds before fallback handling...
[2026-06-12 06:57:48,442.442 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 06:57:48,443.443 INFO    ] Checking for system updates...
[2026-06-12 06:57:48,464.464 INFO    ] 200
[2026-06-12 06:57:48,466.466 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:57:48,496.496 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 06:57:48,497.497 INFO    ] No update needed
[2026-06-12 06:57:48,499.499 INFO    ] Checking for camera pi updates...
[2026-06-12 06:57:48,520.520 INFO    ] 200
[2026-06-12 06:57:48,522.522 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:57:48,545.545 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 06:57:48,584.584 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 06:57:48,586.586 INFO    ] No camera update needed
[2026-06-12 06:57:48,587.587 INFO    ] Script finished. Safe exiting...
[2026-06-12 06:57:48,589.589 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 06:57:48,592.592 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 06:57:48,595.595 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 06:57:50,634.634 INFO    ] ================================================
[2026-06-12 06:57:50,650.650 INFO    ] Launching Daemon at Fri Jun 12 06:57:50 IST 2026
[2026-06-12 06:57:50,661.661 INFO    ] ================================================
[2026-06-12 06:57:51,006.006 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 06:57:51
[2026-06-12 06:57:51,351.351 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 06:57:51,507.507 INFO    ] Initializing speech engine...
[2026-06-12 06:57:51,512.512 INFO    ] 2026-06-12 06:57:51
[2026-06-12 06:57:51,717.717 INFO    ] 2026-06-12 06:57:51
[2026-06-12 06:57:51,746.746 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 06:57:51,930.930 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 06:57:51,938.938 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 06:57:52,085.085 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 06:57:52,136.136 INFO    ] time= 12/06/2026 06:57:52
[2026-06-12 06:57:52,160.160 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 06:57:52,167.167 INFO    ] Checking for existing commands in stream...
[2026-06-12 06:57:52,234.234 INFO    ] No existing commands found in stream
[2026-06-12 06:57:57,259.259 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 06:57:57,262.262 INFO    ] Waiting 0.91 seconds before fallback handling...
[2026-06-12 06:57:58,568.568 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 06:57:58,569.569 INFO    ] Checking for system updates...
[2026-06-12 06:57:58,591.591 INFO    ] 200
[2026-06-12 06:57:58,593.593 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:57:58,623.623 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 06:57:58,625.625 INFO    ] No update needed
[2026-06-12 06:57:58,626.626 INFO    ] Checking for camera pi updates...
[2026-06-12 06:57:58,647.647 INFO    ] 200
[2026-06-12 06:57:58,648.648 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:57:58,671.671 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 06:57:58,716.716 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 06:57:58,717.717 INFO    ] No camera update needed
[2026-06-12 06:57:58,718.718 INFO    ] Script finished. Safe exiting...
[2026-06-12 06:57:58,720.720 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 06:57:58,724.724 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 06:57:58,727.727 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 06:58:00,765.765 INFO    ] ================================================
[2026-06-12 06:58:00,782.782 INFO    ] Launching Daemon at Fri Jun 12 06:58:00 IST 2026
[2026-06-12 06:58:00,794.794 INFO    ] ================================================
[2026-06-12 06:58:01,121.121 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 06:58:01
[2026-06-12 06:58:01,433.433 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 06:58:01,566.566 INFO    ] Initializing speech engine...
[2026-06-12 06:58:01,571.571 INFO    ] 2026-06-12 06:58:01
[2026-06-12 06:58:01,769.769 INFO    ] 2026-06-12 06:58:01
[2026-06-12 06:58:01,806.806 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 06:58:02,016.016 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 06:58:02,021.021 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 06:58:02,192.192 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 06:58:02,197.197 INFO    ] time= 12/06/2026 06:58:02
[2026-06-12 06:58:02,210.210 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 06:58:02,230.230 INFO    ] Checking for existing commands in stream...
[2026-06-12 06:58:02,339.339 INFO    ] No existing commands found in stream
[2026-06-12 06:58:07,369.369 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 06:58:07,372.372 INFO    ] Waiting 3.18 seconds before fallback handling...
[2026-06-12 06:58:10,929.929 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 06:58:10,931.931 INFO    ] Checking for system updates...
[2026-06-12 06:58:10,953.953 INFO    ] 200
[2026-06-12 06:58:10,954.954 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:58:10,986.986 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 06:58:10,988.988 INFO    ] No update needed
[2026-06-12 06:58:10,989.989 INFO    ] Checking for camera pi updates...
[2026-06-12 06:58:11,009.009 INFO    ] 200
[2026-06-12 06:58:11,010.010 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:58:11,033.033 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 06:58:11,073.073 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 06:58:11,075.075 INFO    ] No camera update needed
[2026-06-12 06:58:11,076.076 INFO    ] Script finished. Safe exiting...
[2026-06-12 06:58:11,077.077 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 06:58:11,080.080 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 06:58:11,083.083 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 06:58:13,115.115 INFO    ] ================================================
[2026-06-12 06:58:13,132.132 INFO    ] Launching Daemon at Fri Jun 12 06:58:13 IST 2026
[2026-06-12 06:58:13,142.142 INFO    ] ================================================
[2026-06-12 06:58:13,474.474 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 06:58:13
[2026-06-12 06:58:13,786.786 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 06:58:13,932.932 INFO    ] Initializing speech engine...
[2026-06-12 06:58:13,937.937 INFO    ] 2026-06-12 06:58:13
[2026-06-12 06:58:14,146.146 INFO    ] 2026-06-12 06:58:14
[2026-06-12 06:58:14,175.175 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 06:58:14,361.361 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 06:58:14,365.365 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 06:58:14,504.504 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 06:58:14,572.572 INFO    ] time= 12/06/2026 06:58:14
[2026-06-12 06:58:14,596.596 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 06:58:14,602.602 INFO    ] Checking for existing commands in stream...
[2026-06-12 06:58:14,670.670 INFO    ] No existing commands found in stream
[2026-06-12 06:58:19,679.679 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 06:58:19,682.682 INFO    ] Waiting 3.52 seconds before fallback handling...
[2026-06-12 06:58:23,569.569 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 06:58:23,571.571 INFO    ] Checking for system updates...
[2026-06-12 06:58:23,595.595 INFO    ] 200
[2026-06-12 06:58:23,597.597 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:58:23,630.630 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 06:58:23,632.632 INFO    ] No update needed
[2026-06-12 06:58:23,633.633 INFO    ] Checking for camera pi updates...
[2026-06-12 06:58:23,654.654 INFO    ] 200
[2026-06-12 06:58:23,655.655 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:58:23,681.681 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 06:58:23,724.724 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 06:58:23,725.725 INFO    ] No camera update needed
[2026-06-12 06:58:23,727.727 INFO    ] Script finished. Safe exiting...
[2026-06-12 06:58:23,728.728 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 06:58:23,731.731 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 06:58:23,734.734 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 06:58:25,774.774 INFO    ] ================================================
[2026-06-12 06:58:25,791.791 INFO    ] Launching Daemon at Fri Jun 12 06:58:25 IST 2026
[2026-06-12 06:58:25,802.802 INFO    ] ================================================
[2026-06-12 06:58:26,139.139 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 06:58:26
[2026-06-12 06:58:26,451.451 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 06:58:26,588.588 INFO    ] Initializing speech engine...
[2026-06-12 06:58:26,598.598 INFO    ] 2026-06-12 06:58:26
[2026-06-12 06:58:26,804.804 INFO    ] 2026-06-12 06:58:26
[2026-06-12 06:58:26,832.832 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 06:58:26,956.956 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 06:58:27,020.020 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 06:58:27,160.160 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 06:58:27,228.228 INFO    ] time= 12/06/2026 06:58:27
[2026-06-12 06:58:27,252.252 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 06:58:27,259.259 INFO    ] Checking for existing commands in stream...
[2026-06-12 06:58:27,326.326 INFO    ] No existing commands found in stream
[2026-06-12 06:58:32,334.334 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 06:58:32,335.335 INFO    ] Waiting 2.70 seconds before fallback handling...
[2026-06-12 06:58:35,371.371 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 06:58:35,372.372 INFO    ] Checking for system updates...
[2026-06-12 06:58:35,392.392 INFO    ] 200
[2026-06-12 06:58:35,394.394 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:58:35,424.424 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 06:58:35,425.425 INFO    ] No update needed
[2026-06-12 06:58:35,427.427 INFO    ] Checking for camera pi updates...
[2026-06-12 06:58:35,446.446 INFO    ] 200
[2026-06-12 06:58:35,447.447 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:58:35,470.470 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 06:58:35,617.617 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 06:58:35,618.618 INFO    ] No camera update needed
[2026-06-12 06:58:35,620.620 INFO    ] Script finished. Safe exiting...
[2026-06-12 06:58:35,622.622 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 06:58:35,625.625 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 06:58:35,628.628 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 06:58:37,667.667 INFO    ] ================================================
[2026-06-12 06:58:37,683.683 INFO    ] Launching Daemon at Fri Jun 12 06:58:37 IST 2026
[2026-06-12 06:58:37,694.694 INFO    ] ================================================
[2026-06-12 06:58:38,062.062 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 06:58:38
[2026-06-12 06:58:38,401.401 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 06:58:38,557.557 INFO    ] Initializing speech engine...
[2026-06-12 06:58:38,563.563 INFO    ] 2026-06-12 06:58:38
[2026-06-12 06:58:38,773.773 INFO    ] 2026-06-12 06:58:38
[2026-06-12 06:58:38,803.803 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 06:58:38,991.991 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 06:58:39,001.001 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 06:58:39,132.132 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 06:58:39,201.201 INFO    ] time= 12/06/2026 06:58:39
[2026-06-12 06:58:39,225.225 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 06:58:39,236.236 INFO    ] Checking for existing commands in stream...
[2026-06-12 06:58:39,304.304 INFO    ] No existing commands found in stream
[2026-06-12 06:58:44,313.313 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 06:58:44,317.317 INFO    ] Waiting 3.86 seconds before fallback handling...
[2026-06-12 06:58:48,571.571 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 06:58:48,573.573 INFO    ] Checking for system updates...
[2026-06-12 06:58:48,594.594 INFO    ] 200
[2026-06-12 06:58:48,596.596 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:58:48,626.626 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 06:58:48,628.628 INFO    ] No update needed
[2026-06-12 06:58:48,629.629 INFO    ] Checking for camera pi updates...
[2026-06-12 06:58:48,649.649 INFO    ] 200
[2026-06-12 06:58:48,650.650 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:58:48,674.674 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 06:58:48,715.715 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 06:58:48,716.716 INFO    ] No camera update needed
[2026-06-12 06:58:48,718.718 INFO    ] Script finished. Safe exiting...
[2026-06-12 06:58:48,719.719 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 06:58:48,723.723 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 06:58:48,726.726 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 06:58:50,764.764 INFO    ] ================================================
[2026-06-12 06:58:50,779.779 INFO    ] Launching Daemon at Fri Jun 12 06:58:50 IST 2026
[2026-06-12 06:58:50,790.790 INFO    ] ================================================
[2026-06-12 06:58:51,166.166 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 06:58:51
[2026-06-12 06:58:51,488.488 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 06:58:51,618.618 INFO    ] Initializing speech engine...
[2026-06-12 06:58:51,627.627 INFO    ] 2026-06-12 06:58:51
[2026-06-12 06:58:51,842.842 INFO    ] 2026-06-12 06:58:51
[2026-06-12 06:58:51,872.872 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 06:58:52,057.057 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 06:58:52,067.067 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 06:58:52,191.191 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 06:58:52,252.252 INFO    ] time= 12/06/2026 06:58:52
[2026-06-12 06:58:52,282.282 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 06:58:52,293.293 INFO    ] Checking for existing commands in stream...
[2026-06-12 06:58:52,364.364 INFO    ] No existing commands found in stream
[2026-06-12 06:58:57,374.374 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 06:58:57,377.377 INFO    ] Waiting 1.55 seconds before fallback handling...
[2026-06-12 06:58:59,279.279 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 06:58:59,280.280 INFO    ] Checking for system updates...
[2026-06-12 06:58:59,301.301 INFO    ] 200
[2026-06-12 06:58:59,303.303 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:58:59,333.333 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 06:58:59,335.335 INFO    ] No update needed
[2026-06-12 06:58:59,336.336 INFO    ] Checking for camera pi updates...
[2026-06-12 06:58:59,355.355 INFO    ] 200
[2026-06-12 06:58:59,357.357 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:58:59,382.382 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 06:58:59,418.418 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 06:58:59,419.419 INFO    ] No camera update needed
[2026-06-12 06:58:59,421.421 INFO    ] Script finished. Safe exiting...
[2026-06-12 06:58:59,422.422 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 06:58:59,425.425 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 06:58:59,428.428 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 06:59:01,468.468 INFO    ] ================================================
[2026-06-12 06:59:01,484.484 INFO    ] Launching Daemon at Fri Jun 12 06:59:01 IST 2026
[2026-06-12 06:59:01,494.494 INFO    ] ================================================
[2026-06-12 06:59:01,822.822 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 06:59:01
[2026-06-12 06:59:02,242.242 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 06:59:02,417.417 INFO    ] Initializing speech engine...
[2026-06-12 06:59:02,422.422 INFO    ] 2026-06-12 06:59:02
[2026-06-12 06:59:02,644.644 INFO    ] 2026-06-12 06:59:02
[2026-06-12 06:59:02,701.701 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 06:59:02,847.847 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 06:59:02,854.854 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 06:59:02,984.984 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 06:59:03,003.003 INFO    ] time= 12/06/2026 06:59:02
[2026-06-12 06:59:03,008.008 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 06:59:03,012.012 INFO    ] Checking for existing commands in stream...
[2026-06-12 06:59:03,128.128 INFO    ] No existing commands found in stream
[2026-06-12 06:59:08,141.141 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 06:59:08,144.144 INFO    ] Waiting 0.56 seconds before fallback handling...
[2026-06-12 06:59:09,077.077 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 06:59:09,079.079 INFO    ] Checking for system updates...
[2026-06-12 06:59:09,100.100 INFO    ] 200
[2026-06-12 06:59:09,101.101 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:59:09,132.132 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 06:59:09,133.133 INFO    ] No update needed
[2026-06-12 06:59:09,135.135 INFO    ] Checking for camera pi updates...
[2026-06-12 06:59:09,154.154 INFO    ] 200
[2026-06-12 06:59:09,156.156 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:59:09,179.179 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 06:59:09,215.215 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 06:59:09,216.216 INFO    ] No camera update needed
[2026-06-12 06:59:09,218.218 INFO    ] Script finished. Safe exiting...
[2026-06-12 06:59:09,219.219 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 06:59:09,222.222 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 06:59:09,225.225 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 06:59:11,264.264 INFO    ] ================================================
[2026-06-12 06:59:11,280.280 INFO    ] Launching Daemon at Fri Jun 12 06:59:11 IST 2026
[2026-06-12 06:59:11,291.291 INFO    ] ================================================
[2026-06-12 06:59:11,652.652 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 06:59:11
[2026-06-12 06:59:11,968.968 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 06:59:12,101.101 INFO    ] Initializing speech engine...
[2026-06-12 06:59:12,114.114 INFO    ] 2026-06-12 06:59:12
[2026-06-12 06:59:12,319.319 INFO    ] 2026-06-12 06:59:12
[2026-06-12 06:59:12,349.349 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 06:59:12,486.486 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 06:59:12,535.535 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 06:59:12,669.669 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 06:59:12,735.735 INFO    ] time= 12/06/2026 06:59:12
[2026-06-12 06:59:12,763.763 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 06:59:12,769.769 INFO    ] Checking for existing commands in stream...
[2026-06-12 06:59:12,836.836 INFO    ] No existing commands found in stream
[2026-06-12 06:59:17,845.845 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 06:59:17,848.848 INFO    ] Waiting 0.58 seconds before fallback handling...
[2026-06-12 06:59:18,811.811 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 06:59:18,813.813 INFO    ] Checking for system updates...
[2026-06-12 06:59:18,833.833 INFO    ] 200
[2026-06-12 06:59:18,835.835 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:59:18,865.865 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 06:59:18,866.866 INFO    ] No update needed
[2026-06-12 06:59:18,868.868 INFO    ] Checking for camera pi updates...
[2026-06-12 06:59:18,888.888 INFO    ] 200
[2026-06-12 06:59:18,889.889 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:59:18,912.912 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 06:59:18,952.952 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 06:59:18,953.953 INFO    ] No camera update needed
[2026-06-12 06:59:18,955.955 INFO    ] Script finished. Safe exiting...
[2026-06-12 06:59:18,956.956 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 06:59:18,959.959 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 06:59:18,962.962 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 06:59:21,002.002 INFO    ] ================================================
[2026-06-12 06:59:21,018.018 INFO    ] Launching Daemon at Fri Jun 12 06:59:21 IST 2026
[2026-06-12 06:59:21,030.030 INFO    ] ================================================
[2026-06-12 06:59:21,404.404 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 06:59:21
[2026-06-12 06:59:21,744.744 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 06:59:21,899.899 INFO    ] Initializing speech engine...
[2026-06-12 06:59:21,903.903 INFO    ] 2026-06-12 06:59:21
[2026-06-12 06:59:22,113.113 INFO    ] 2026-06-12 06:59:22
[2026-06-12 06:59:22,143.143 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 06:59:22,330.330 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 06:59:22,339.339 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 06:59:22,491.491 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 06:59:22,541.541 INFO    ] time= 12/06/2026 06:59:22
[2026-06-12 06:59:22,563.563 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 06:59:22,570.570 INFO    ] Checking for existing commands in stream...
[2026-06-12 06:59:22,638.638 INFO    ] No existing commands found in stream
[2026-06-12 06:59:27,647.647 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 06:59:27,651.651 INFO    ] Waiting 0.01 seconds before fallback handling...
[2026-06-12 06:59:28,050.050 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 06:59:28,052.052 INFO    ] Checking for system updates...
[2026-06-12 06:59:28,073.073 INFO    ] 200
[2026-06-12 06:59:28,074.074 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:59:28,104.104 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 06:59:28,106.106 INFO    ] No update needed
[2026-06-12 06:59:28,107.107 INFO    ] Checking for camera pi updates...
[2026-06-12 06:59:28,128.128 INFO    ] 200
[2026-06-12 06:59:28,130.130 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:59:28,156.156 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 06:59:28,197.197 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 06:59:28,198.198 INFO    ] No camera update needed
[2026-06-12 06:59:28,200.200 INFO    ] Script finished. Safe exiting...
[2026-06-12 06:59:28,201.201 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 06:59:28,205.205 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 06:59:28,208.208 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 06:59:30,247.247 INFO    ] ================================================
[2026-06-12 06:59:30,263.263 INFO    ] Launching Daemon at Fri Jun 12 06:59:30 IST 2026
[2026-06-12 06:59:30,274.274 INFO    ] ================================================
[2026-06-12 06:59:30,624.624 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 06:59:30
[2026-06-12 06:59:30,935.935 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 06:59:31,076.076 INFO    ] Initializing speech engine...
[2026-06-12 06:59:31,086.086 INFO    ] 2026-06-12 06:59:31
[2026-06-12 06:59:31,305.305 INFO    ] 2026-06-12 06:59:31
[2026-06-12 06:59:31,334.334 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 06:59:31,485.485 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 06:59:31,523.523 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 06:59:31,664.664 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 06:59:31,733.733 INFO    ] time= 12/06/2026 06:59:31
[2026-06-12 06:59:31,757.757 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 06:59:31,759.759 INFO    ] Checking for existing commands in stream...
[2026-06-12 06:59:31,832.832 INFO    ] No existing commands found in stream
[2026-06-12 06:59:36,841.841 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 06:59:36,844.844 INFO    ] Waiting 2.68 seconds before fallback handling...
[2026-06-12 06:59:39,932.932 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 06:59:39,933.933 INFO    ] Checking for system updates...
[2026-06-12 06:59:39,954.954 INFO    ] 200
[2026-06-12 06:59:39,956.956 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:59:39,987.987 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 06:59:39,988.988 INFO    ] No update needed
[2026-06-12 06:59:39,990.990 INFO    ] Checking for camera pi updates...
[2026-06-12 06:59:40,010.010 INFO    ] 200
[2026-06-12 06:59:40,011.011 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:59:40,035.035 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 06:59:40,073.073 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 06:59:40,074.074 INFO    ] No camera update needed
[2026-06-12 06:59:40,076.076 INFO    ] Script finished. Safe exiting...
[2026-06-12 06:59:40,077.077 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 06:59:40,080.080 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 06:59:40,083.083 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 06:59:42,122.122 INFO    ] ================================================
[2026-06-12 06:59:42,137.137 INFO    ] Launching Daemon at Fri Jun 12 06:59:42 IST 2026
[2026-06-12 06:59:42,148.148 INFO    ] ================================================
[2026-06-12 06:59:42,487.487 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 06:59:42
[2026-06-12 06:59:42,799.799 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 06:59:42,935.935 INFO    ] Initializing speech engine...
[2026-06-12 06:59:42,946.946 INFO    ] 2026-06-12 06:59:42
[2026-06-12 06:59:43,149.149 INFO    ] 2026-06-12 06:59:43
[2026-06-12 06:59:43,178.178 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 06:59:43,360.360 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 06:59:43,364.364 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 06:59:43,494.494 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 06:59:43,555.555 INFO    ] time= 12/06/2026 06:59:43
[2026-06-12 06:59:43,592.592 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 06:59:43,594.594 INFO    ] Checking for existing commands in stream...
[2026-06-12 06:59:43,665.665 INFO    ] No existing commands found in stream
[2026-06-12 06:59:48,689.689 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 06:59:48,692.692 INFO    ] Waiting 0.85 seconds before fallback handling...
[2026-06-12 06:59:49,858.858 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 06:59:49,860.860 INFO    ] Checking for system updates...
[2026-06-12 06:59:49,881.881 INFO    ] 200
[2026-06-12 06:59:49,882.882 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:59:49,912.912 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 06:59:49,914.914 INFO    ] No update needed
[2026-06-12 06:59:49,915.915 INFO    ] Checking for camera pi updates...
[2026-06-12 06:59:49,934.934 INFO    ] 200
[2026-06-12 06:59:49,935.935 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:59:49,959.959 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 06:59:50,004.004 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 06:59:50,005.005 INFO    ] No camera update needed
[2026-06-12 06:59:50,006.006 INFO    ] Script finished. Safe exiting...
[2026-06-12 06:59:50,008.008 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 06:59:50,011.011 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 06:59:50,014.014 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 06:59:52,053.053 INFO    ] ================================================
[2026-06-12 06:59:52,069.069 INFO    ] Launching Daemon at Fri Jun 12 06:59:52 IST 2026
[2026-06-12 06:59:52,080.080 INFO    ] ================================================
[2026-06-12 06:59:52,452.452 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 06:59:52
[2026-06-12 06:59:52,792.792 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 06:59:52,942.942 INFO    ] Initializing speech engine...
[2026-06-12 06:59:52,948.948 INFO    ] 2026-06-12 06:59:52
[2026-06-12 06:59:53,154.154 INFO    ] 2026-06-12 06:59:53
[2026-06-12 06:59:53,184.184 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 06:59:53,306.306 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 06:59:53,368.368 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 06:59:53,505.505 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 06:59:53,572.572 INFO    ] time= 12/06/2026 06:59:53
[2026-06-12 06:59:53,596.596 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 06:59:53,602.602 INFO    ] Checking for existing commands in stream...
[2026-06-12 06:59:53,668.668 INFO    ] No existing commands found in stream
[2026-06-12 06:59:58,693.693 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 06:59:58,696.696 INFO    ] Waiting 0.47 seconds before fallback handling...
[2026-06-12 06:59:59,570.570 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 06:59:59,571.571 INFO    ] Checking for system updates...
[2026-06-12 06:59:59,592.592 INFO    ] 200
[2026-06-12 06:59:59,593.593 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:59:59,623.623 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 06:59:59,624.624 INFO    ] No update needed
[2026-06-12 06:59:59,626.626 INFO    ] Checking for camera pi updates...
[2026-06-12 06:59:59,647.647 INFO    ] 200
[2026-06-12 06:59:59,649.649 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 06:59:59,675.675 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 06:59:59,714.714 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 06:59:59,716.716 INFO    ] No camera update needed
[2026-06-12 06:59:59,717.717 INFO    ] Script finished. Safe exiting...
[2026-06-12 06:59:59,718.718 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 06:59:59,721.721 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 06:59:59,724.724 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 07:00:01,786.786 INFO    ] ================================================
[2026-06-12 07:00:01,812.812 INFO    ] Launching Daemon at Fri Jun 12 07:00:01 IST 2026
[2026-06-12 07:00:01,851.851 INFO    ] ================================================
[2026-06-12 07:00:02,837.837 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 07:00:02
[2026-06-12 07:00:03,825.825 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 07:00:04,149.149 INFO    ] Initializing speech engine...
[2026-06-12 07:00:04,152.152 INFO    ] 2026-06-12 07:00:04
[2026-06-12 07:00:04,345.345 INFO    ] 2026-06-12 07:00:04
[2026-06-12 07:00:04,385.385 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 07:00:04,534.534 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 07:00:04,598.598 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 07:00:04,739.739 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 07:00:04,807.807 INFO    ] time= 12/06/2026 07:00:04
[2026-06-12 07:00:04,836.836 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 07:00:04,842.842 INFO    ] Checking for existing commands in stream...
[2026-06-12 07:00:04,911.911 INFO    ] No existing commands found in stream
[2026-06-12 07:00:09,935.935 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 07:00:09,939.939 INFO    ] Waiting 2.17 seconds before fallback handling...
[2026-06-12 07:00:12,465.465 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 07:00:12,467.467 INFO    ] Checking for system updates...
[2026-06-12 07:00:12,490.490 INFO    ] 200
[2026-06-12 07:00:12,491.491 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:00:12,525.525 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 07:00:12,526.526 INFO    ] No update needed
[2026-06-12 07:00:12,527.527 INFO    ] Checking for camera pi updates...
[2026-06-12 07:00:12,555.555 INFO    ] 200
[2026-06-12 07:00:12,556.556 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:00:12,580.580 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 07:00:12,627.627 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 07:00:12,629.629 INFO    ] No camera update needed
[2026-06-12 07:00:12,630.630 INFO    ] Script finished. Safe exiting...
[2026-06-12 07:00:12,631.631 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 07:00:12,634.634 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 07:00:12,637.637 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 07:00:14,676.676 INFO    ] ================================================
[2026-06-12 07:00:14,692.692 INFO    ] Launching Daemon at Fri Jun 12 07:00:14 IST 2026
[2026-06-12 07:00:14,702.702 INFO    ] ================================================
[2026-06-12 07:00:15,054.054 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 07:00:15
[2026-06-12 07:00:15,366.366 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 07:00:15,496.496 INFO    ] Initializing speech engine...
[2026-06-12 07:00:15,501.501 INFO    ] 2026-06-12 07:00:15
[2026-06-12 07:00:15,720.720 INFO    ] 2026-06-12 07:00:15
[2026-06-12 07:00:15,750.750 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 07:00:15,934.934 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 07:00:15,944.944 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 07:00:16,071.071 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 07:00:16,134.134 INFO    ] time= 12/06/2026 07:00:16
[2026-06-12 07:00:16,167.167 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 07:00:16,168.168 INFO    ] Checking for existing commands in stream...
[2026-06-12 07:00:16,240.240 INFO    ] No existing commands found in stream
[2026-06-12 07:00:21,250.250 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 07:00:21,253.253 INFO    ] Waiting 2.64 seconds before fallback handling...
[2026-06-12 07:00:24,218.218 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 07:00:24,219.219 INFO    ] Checking for system updates...
[2026-06-12 07:00:24,240.240 INFO    ] 200
[2026-06-12 07:00:24,241.241 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:00:24,274.274 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 07:00:24,276.276 INFO    ] No update needed
[2026-06-12 07:00:24,277.277 INFO    ] Checking for camera pi updates...
[2026-06-12 07:00:24,297.297 INFO    ] 200
[2026-06-12 07:00:24,298.298 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:00:24,323.323 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 07:00:24,358.358 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 07:00:24,360.360 INFO    ] No camera update needed
[2026-06-12 07:00:24,361.361 INFO    ] Script finished. Safe exiting...
[2026-06-12 07:00:24,362.362 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 07:00:24,365.365 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 07:00:24,368.368 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 07:00:26,408.408 INFO    ] ================================================
[2026-06-12 07:00:26,424.424 INFO    ] Launching Daemon at Fri Jun 12 07:00:26 IST 2026
[2026-06-12 07:00:26,435.435 INFO    ] ================================================
[2026-06-12 07:00:26,792.792 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 07:00:26
[2026-06-12 07:00:27,133.133 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 07:00:27,281.281 INFO    ] Initializing speech engine...
[2026-06-12 07:00:27,291.291 INFO    ] 2026-06-12 07:00:27
[2026-06-12 07:00:27,505.505 INFO    ] 2026-06-12 07:00:27
[2026-06-12 07:00:27,534.534 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 07:00:27,723.723 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 07:00:27,734.734 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 07:00:27,876.876 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 07:00:27,934.934 INFO    ] time= 12/06/2026 07:00:27
[2026-06-12 07:00:27,959.959 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 07:00:27,966.966 INFO    ] Checking for existing commands in stream...
[2026-06-12 07:00:28,034.034 INFO    ] No existing commands found in stream
[2026-06-12 07:00:33,049.049 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 07:00:33,052.052 INFO    ] Waiting 2.98 seconds before fallback handling...
[2026-06-12 07:00:36,419.419 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 07:00:36,421.421 INFO    ] Checking for system updates...
[2026-06-12 07:00:36,442.442 INFO    ] 200
[2026-06-12 07:00:36,444.444 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:00:36,474.474 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 07:00:36,476.476 INFO    ] No update needed
[2026-06-12 07:00:36,477.477 INFO    ] Checking for camera pi updates...
[2026-06-12 07:00:36,497.497 INFO    ] 200
[2026-06-12 07:00:36,498.498 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:00:36,522.522 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 07:00:36,660.660 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 07:00:36,662.662 INFO    ] No camera update needed
[2026-06-12 07:00:36,663.663 INFO    ] Script finished. Safe exiting...
[2026-06-12 07:00:36,665.665 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 07:00:36,668.668 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 07:00:36,671.671 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 07:00:38,712.712 INFO    ] ================================================
[2026-06-12 07:00:38,729.729 INFO    ] Launching Daemon at Fri Jun 12 07:00:38 IST 2026
[2026-06-12 07:00:38,740.740 INFO    ] ================================================
[2026-06-12 07:00:39,063.063 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 07:00:39
[2026-06-12 07:00:39,374.374 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 07:00:39,505.505 INFO    ] Initializing speech engine...
[2026-06-12 07:00:39,508.508 INFO    ] 2026-06-12 07:00:39
[2026-06-12 07:00:39,726.726 INFO    ] 2026-06-12 07:00:39
[2026-06-12 07:00:39,756.756 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 07:00:39,941.941 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 07:00:39,945.945 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 07:00:40,075.075 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 07:00:40,136.136 INFO    ] time= 12/06/2026 07:00:40
[2026-06-12 07:00:40,166.166 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 07:00:40,177.177 INFO    ] Checking for existing commands in stream...
[2026-06-12 07:00:40,248.248 INFO    ] No existing commands found in stream
[2026-06-12 07:00:45,258.258 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 07:00:45,261.261 INFO    ] Waiting 3.89 seconds before fallback handling...
[2026-06-12 07:00:49,564.564 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 07:00:49,566.566 INFO    ] Checking for system updates...
[2026-06-12 07:00:49,586.586 INFO    ] 200
[2026-06-12 07:00:49,588.588 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:00:49,621.621 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 07:00:49,622.622 INFO    ] No update needed
[2026-06-12 07:00:49,624.624 INFO    ] Checking for camera pi updates...
[2026-06-12 07:00:49,646.646 INFO    ] 200
[2026-06-12 07:00:49,647.647 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:00:49,673.673 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 07:00:49,801.801 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 07:00:49,802.802 INFO    ] No camera update needed
[2026-06-12 07:00:49,803.803 INFO    ] Script finished. Safe exiting...
[2026-06-12 07:00:49,805.805 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 07:00:49,808.808 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 07:00:49,811.811 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 07:00:51,851.851 INFO    ] ================================================
[2026-06-12 07:00:51,867.867 INFO    ] Launching Daemon at Fri Jun 12 07:00:51 IST 2026
[2026-06-12 07:00:51,878.878 INFO    ] ================================================
[2026-06-12 07:00:52,248.248 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 07:00:52
[2026-06-12 07:00:52,587.587 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 07:00:52,738.738 INFO    ] Initializing speech engine...
[2026-06-12 07:00:52,744.744 INFO    ] 2026-06-12 07:00:52
[2026-06-12 07:00:52,955.955 INFO    ] 2026-06-12 07:00:52
[2026-06-12 07:00:52,983.983 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 07:00:53,168.168 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 07:00:53,177.177 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 07:00:53,307.307 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 07:00:53,375.375 INFO    ] time= 12/06/2026 07:00:53
[2026-06-12 07:00:53,399.399 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 07:00:53,406.406 INFO    ] Checking for existing commands in stream...
[2026-06-12 07:00:53,472.472 INFO    ] No existing commands found in stream
[2026-06-12 07:00:58,487.487 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 07:00:58,491.491 INFO    ] Waiting 3.90 seconds before fallback handling...
[2026-06-12 07:01:02,710.710 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 07:01:02,712.712 INFO    ] Checking for system updates...
[2026-06-12 07:01:02,734.734 INFO    ] 200
[2026-06-12 07:01:02,735.735 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:01:02,769.769 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 07:01:02,771.771 INFO    ] No update needed
[2026-06-12 07:01:02,772.772 INFO    ] Checking for camera pi updates...
[2026-06-12 07:01:02,797.797 INFO    ] 200
[2026-06-12 07:01:02,799.799 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:01:02,824.824 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 07:01:02,861.861 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 07:01:02,862.862 INFO    ] No camera update needed
[2026-06-12 07:01:02,864.864 INFO    ] Script finished. Safe exiting...
[2026-06-12 07:01:02,865.865 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 07:01:02,868.868 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 07:01:02,872.872 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 07:01:04,912.912 INFO    ] ================================================
[2026-06-12 07:01:04,927.927 INFO    ] Launching Daemon at Fri Jun 12 07:01:04 IST 2026
[2026-06-12 07:01:04,938.938 INFO    ] ================================================
[2026-06-12 07:01:05,258.258 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 07:01:05
[2026-06-12 07:01:05,572.572 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 07:01:05,739.739 INFO    ] Initializing speech engine...
[2026-06-12 07:01:05,746.746 INFO    ] 2026-06-12 07:01:05
[2026-06-12 07:01:05,938.938 INFO    ] 2026-06-12 07:01:05
[2026-06-12 07:01:05,966.966 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 07:01:06,148.148 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 07:01:06,177.177 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 07:01:06,319.319 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 07:01:06,382.382 INFO    ] time= 12/06/2026 07:01:06
[2026-06-12 07:01:06,409.409 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 07:01:06,416.416 INFO    ] Checking for existing commands in stream...
[2026-06-12 07:01:06,483.483 INFO    ] No existing commands found in stream
[2026-06-12 07:01:11,497.497 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 07:01:11,501.501 INFO    ] Waiting 0.76 seconds before fallback handling...
[2026-06-12 07:01:12,657.657 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 07:01:12,659.659 INFO    ] Checking for system updates...
[2026-06-12 07:01:12,680.680 INFO    ] 200
[2026-06-12 07:01:12,682.682 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:01:12,712.712 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 07:01:12,714.714 INFO    ] No update needed
[2026-06-12 07:01:12,716.716 INFO    ] Checking for camera pi updates...
[2026-06-12 07:01:12,743.743 INFO    ] 200
[2026-06-12 07:01:12,745.745 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:01:12,774.774 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 07:01:12,812.812 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 07:01:12,813.813 INFO    ] No camera update needed
[2026-06-12 07:01:12,815.815 INFO    ] Script finished. Safe exiting...
[2026-06-12 07:01:12,816.816 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 07:01:12,819.819 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 07:01:12,822.822 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 07:01:14,861.861 INFO    ] ================================================
[2026-06-12 07:01:14,873.873 INFO    ] Launching Daemon at Fri Jun 12 07:01:14 IST 2026
[2026-06-12 07:01:14,879.879 INFO    ] ================================================
[2026-06-12 07:01:15,178.178 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 07:01:15
[2026-06-12 07:01:15,490.490 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 07:01:15,622.622 INFO    ] Initializing speech engine...
[2026-06-12 07:01:15,626.626 INFO    ] 2026-06-12 07:01:15
[2026-06-12 07:01:15,843.843 INFO    ] 2026-06-12 07:01:15
[2026-06-12 07:01:15,873.873 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 07:01:16,062.062 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 07:01:16,065.065 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 07:01:16,195.195 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 07:01:16,262.262 INFO    ] time= 12/06/2026 07:01:16
[2026-06-12 07:01:16,295.295 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 07:01:16,301.301 INFO    ] Checking for existing commands in stream...
[2026-06-12 07:01:16,367.367 INFO    ] No existing commands found in stream
[2026-06-12 07:01:21,378.378 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 07:01:21,381.381 INFO    ] Waiting 3.26 seconds before fallback handling...
[2026-06-12 07:01:24,985.985 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 07:01:24,986.986 INFO    ] Checking for system updates...
[2026-06-12 07:01:25,008.008 INFO    ] 200
[2026-06-12 07:01:25,010.010 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:01:25,040.040 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 07:01:25,041.041 INFO    ] No update needed
[2026-06-12 07:01:25,042.042 INFO    ] Checking for camera pi updates...
[2026-06-12 07:01:25,063.063 INFO    ] 200
[2026-06-12 07:01:25,064.064 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:01:25,089.089 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 07:01:25,124.124 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 07:01:25,125.125 INFO    ] No camera update needed
[2026-06-12 07:01:25,127.127 INFO    ] Script finished. Safe exiting...
[2026-06-12 07:01:25,128.128 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 07:01:25,131.131 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 07:01:25,134.134 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 07:01:27,172.172 INFO    ] ================================================
[2026-06-12 07:01:27,188.188 INFO    ] Launching Daemon at Fri Jun 12 07:01:27 IST 2026
[2026-06-12 07:01:27,199.199 INFO    ] ================================================
[2026-06-12 07:01:27,574.574 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 07:01:27
[2026-06-12 07:01:27,914.914 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 07:01:28,069.069 INFO    ] Initializing speech engine...
[2026-06-12 07:01:28,073.073 INFO    ] 2026-06-12 07:01:28
[2026-06-12 07:01:28,277.277 INFO    ] 2026-06-12 07:01:28
[2026-06-12 07:01:28,306.306 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 07:01:28,490.490 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 07:01:28,499.499 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 07:01:28,632.632 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 07:01:28,696.696 INFO    ] time= 12/06/2026 07:01:28
[2026-06-12 07:01:28,723.723 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 07:01:28,729.729 INFO    ] Checking for existing commands in stream...
[2026-06-12 07:01:28,796.796 INFO    ] No existing commands found in stream
[2026-06-12 07:01:33,806.806 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 07:01:33,809.809 INFO    ] Waiting 1.10 seconds before fallback handling...
[2026-06-12 07:01:35,277.277 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 07:01:35,278.278 INFO    ] Checking for system updates...
[2026-06-12 07:01:35,299.299 INFO    ] 200
[2026-06-12 07:01:35,301.301 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:01:35,333.333 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 07:01:35,335.335 INFO    ] No update needed
[2026-06-12 07:01:35,336.336 INFO    ] Checking for camera pi updates...
[2026-06-12 07:01:35,355.355 INFO    ] 200
[2026-06-12 07:01:35,357.357 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:01:35,380.380 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 07:01:35,414.414 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 07:01:35,416.416 INFO    ] No camera update needed
[2026-06-12 07:01:35,417.417 INFO    ] Script finished. Safe exiting...
[2026-06-12 07:01:35,418.418 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 07:01:35,421.421 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 07:01:35,424.424 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 07:01:37,465.465 INFO    ] ================================================
[2026-06-12 07:01:37,481.481 INFO    ] Launching Daemon at Fri Jun 12 07:01:37 IST 2026
[2026-06-12 07:01:37,492.492 INFO    ] ================================================
[2026-06-12 07:01:37,839.839 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 07:01:37
[2026-06-12 07:01:38,155.155 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 07:01:38,293.293 INFO    ] Initializing speech engine...
[2026-06-12 07:01:38,306.306 INFO    ] 2026-06-12 07:01:38
[2026-06-12 07:01:38,508.508 INFO    ] 2026-06-12 07:01:38
[2026-06-12 07:01:38,537.537 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 07:01:38,694.694 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 07:01:38,732.732 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 07:01:38,904.904 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 07:01:38,930.930 INFO    ] time= 12/06/2026 07:01:38
[2026-06-12 07:01:38,983.983 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 07:01:39,005.005 INFO    ] Checking for existing commands in stream...
[2026-06-12 07:01:39,077.077 INFO    ] No existing commands found in stream
[2026-06-12 07:01:44,091.091 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 07:01:44,094.094 INFO    ] Waiting 2.69 seconds before fallback handling...
[2026-06-12 07:01:47,166.166 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 07:01:47,168.168 INFO    ] Checking for system updates...
[2026-06-12 07:01:47,189.189 INFO    ] 200
[2026-06-12 07:01:47,190.190 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:01:47,220.220 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 07:01:47,221.221 INFO    ] No update needed
[2026-06-12 07:01:47,223.223 INFO    ] Checking for camera pi updates...
[2026-06-12 07:01:47,242.242 INFO    ] 200
[2026-06-12 07:01:47,244.244 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:01:47,269.269 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 07:01:47,305.305 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 07:01:47,307.307 INFO    ] No camera update needed
[2026-06-12 07:01:47,308.308 INFO    ] Script finished. Safe exiting...
[2026-06-12 07:01:47,309.309 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 07:01:47,312.312 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 07:01:47,315.315 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 07:01:49,353.353 INFO    ] ================================================
[2026-06-12 07:01:49,368.368 INFO    ] Launching Daemon at Fri Jun 12 07:01:49 IST 2026
[2026-06-12 07:01:49,379.379 INFO    ] ================================================
[2026-06-12 07:01:49,713.713 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 07:01:49
[2026-06-12 07:01:50,029.029 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 07:01:50,167.167 INFO    ] Initializing speech engine...
[2026-06-12 07:01:50,177.177 INFO    ] 2026-06-12 07:01:50
[2026-06-12 07:01:50,381.381 INFO    ] 2026-06-12 07:01:50
[2026-06-12 07:01:50,411.411 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 07:01:50,596.596 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 07:01:50,605.605 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 07:01:50,735.735 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 07:01:50,799.799 INFO    ] time= 12/06/2026 07:01:50
[2026-06-12 07:01:50,825.825 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 07:01:50,832.832 INFO    ] Checking for existing commands in stream...
[2026-06-12 07:01:50,923.923 INFO    ] No existing commands found in stream
[2026-06-12 07:01:55,937.937 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 07:01:55,940.940 INFO    ] Waiting 3.19 seconds before fallback handling...
[2026-06-12 07:01:59,532.532 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 07:01:59,534.534 INFO    ] Checking for system updates...
[2026-06-12 07:01:59,554.554 INFO    ] 200
[2026-06-12 07:01:59,556.556 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:01:59,588.588 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 07:01:59,590.590 INFO    ] No update needed
[2026-06-12 07:01:59,591.591 INFO    ] Checking for camera pi updates...
[2026-06-12 07:01:59,611.611 INFO    ] 200
[2026-06-12 07:01:59,612.612 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:01:59,637.637 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 07:01:59,673.673 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 07:01:59,674.674 INFO    ] No camera update needed
[2026-06-12 07:01:59,675.675 INFO    ] Script finished. Safe exiting...
[2026-06-12 07:01:59,677.677 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 07:01:59,680.680 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 07:01:59,683.683 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 07:02:01,735.735 INFO    ] ================================================
[2026-06-12 07:02:01,756.756 INFO    ] Launching Daemon at Fri Jun 12 07:02:01 IST 2026
[2026-06-12 07:02:01,775.775 INFO    ] ================================================
[2026-06-12 07:02:02,227.227 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 07:02:02
[2026-06-12 07:02:02,637.637 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 07:02:02,780.780 INFO    ] Initializing speech engine...
[2026-06-12 07:02:02,795.795 INFO    ] 2026-06-12 07:02:02
[2026-06-12 07:02:03,003.003 INFO    ] 2026-06-12 07:02:02
[2026-06-12 07:02:03,033.033 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 07:02:03,215.215 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 07:02:03,219.219 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 07:02:03,352.352 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 07:02:03,419.419 INFO    ] time= 12/06/2026 07:02:03
[2026-06-12 07:02:03,446.446 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 07:02:03,453.453 INFO    ] Checking for existing commands in stream...
[2026-06-12 07:02:03,520.520 INFO    ] No existing commands found in stream
[2026-06-12 07:02:08,528.528 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 07:02:08,531.531 INFO    ] Waiting 2.66 seconds before fallback handling...
[2026-06-12 07:02:11,569.569 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 07:02:11,570.570 INFO    ] Checking for system updates...
[2026-06-12 07:02:11,592.592 INFO    ] 200
[2026-06-12 07:02:11,594.594 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:02:11,624.624 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 07:02:11,625.625 INFO    ] No update needed
[2026-06-12 07:02:11,627.627 INFO    ] Checking for camera pi updates...
[2026-06-12 07:02:11,646.646 INFO    ] 200
[2026-06-12 07:02:11,648.648 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:02:11,671.671 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 07:02:11,694.694 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 07:02:11,696.696 INFO    ] No camera update needed
[2026-06-12 07:02:11,697.697 INFO    ] Script finished. Safe exiting...
[2026-06-12 07:02:11,698.698 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 07:02:11,701.701 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 07:02:11,704.704 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 07:02:13,743.743 INFO    ] ================================================
[2026-06-12 07:02:13,759.759 INFO    ] Launching Daemon at Fri Jun 12 07:02:13 IST 2026
[2026-06-12 07:02:13,774.774 INFO    ] ================================================
[2026-06-12 07:02:14,115.115 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 07:02:14
[2026-06-12 07:02:14,427.427 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 07:02:14,558.558 INFO    ] Initializing speech engine...
[2026-06-12 07:02:14,563.563 INFO    ] 2026-06-12 07:02:14
[2026-06-12 07:02:14,794.794 INFO    ] 2026-06-12 07:02:14
[2026-06-12 07:02:14,824.824 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 07:02:15,024.024 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 07:02:15,027.027 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 07:02:15,167.167 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 07:02:15,228.228 INFO    ] time= 12/06/2026 07:02:15
[2026-06-12 07:02:15,269.269 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 07:02:15,280.280 INFO    ] Checking for existing commands in stream...
[2026-06-12 07:02:15,351.351 INFO    ] No existing commands found in stream
[2026-06-12 07:02:20,362.362 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 07:02:20,364.364 INFO    ] Waiting 1.83 seconds before fallback handling...
[2026-06-12 07:02:22,527.527 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 07:02:22,528.528 INFO    ] Checking for system updates...
[2026-06-12 07:02:22,549.549 INFO    ] 200
[2026-06-12 07:02:22,550.550 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:02:22,580.580 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 07:02:22,582.582 INFO    ] No update needed
[2026-06-12 07:02:22,584.584 INFO    ] Checking for camera pi updates...
[2026-06-12 07:02:22,604.604 INFO    ] 200
[2026-06-12 07:02:22,606.606 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:02:22,630.630 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 07:02:22,679.679 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 07:02:22,681.681 INFO    ] No camera update needed
[2026-06-12 07:02:22,682.682 INFO    ] Script finished. Safe exiting...
[2026-06-12 07:02:22,683.683 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 07:02:22,686.686 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 07:02:22,689.689 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 07:02:24,727.727 INFO    ] ================================================
[2026-06-12 07:02:24,742.742 INFO    ] Launching Daemon at Fri Jun 12 07:02:24 IST 2026
[2026-06-12 07:02:24,753.753 INFO    ] ================================================
[2026-06-12 07:02:25,137.137 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 07:02:25
[2026-06-12 07:02:25,478.478 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 07:02:25,631.631 INFO    ] Initializing speech engine...
[2026-06-12 07:02:25,636.636 INFO    ] 2026-06-12 07:02:25
[2026-06-12 07:02:25,842.842 INFO    ] 2026-06-12 07:02:25
[2026-06-12 07:02:25,871.871 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 07:02:26,055.055 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 07:02:26,064.064 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 07:02:26,191.191 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 07:02:26,258.258 INFO    ] time= 12/06/2026 07:02:26
[2026-06-12 07:02:26,285.285 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 07:02:26,292.292 INFO    ] Checking for existing commands in stream...
[2026-06-12 07:02:26,382.382 INFO    ] No existing commands found in stream
[2026-06-12 07:02:31,392.392 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 07:02:31,395.395 INFO    ] Waiting 3.89 seconds before fallback handling...
[2026-06-12 07:02:35,684.684 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 07:02:35,687.687 INFO    ] Checking for system updates...
[2026-06-12 07:02:35,727.727 INFO    ] 200
[2026-06-12 07:02:35,729.729 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:02:35,782.782 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 07:02:35,784.784 INFO    ] No update needed
[2026-06-12 07:02:35,786.786 INFO    ] Checking for camera pi updates...
[2026-06-12 07:02:35,808.808 INFO    ] 200
[2026-06-12 07:02:35,810.810 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:02:35,834.834 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 07:02:35,861.861 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 07:02:35,863.863 INFO    ] No camera update needed
[2026-06-12 07:02:35,864.864 INFO    ] Script finished. Safe exiting...
[2026-06-12 07:02:35,865.865 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 07:02:35,868.868 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 07:02:35,871.871 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 07:02:37,909.909 INFO    ] ================================================
[2026-06-12 07:02:37,925.925 INFO    ] Launching Daemon at Fri Jun 12 07:02:37 IST 2026
[2026-06-12 07:02:37,936.936 INFO    ] ================================================
[2026-06-12 07:02:38,291.291 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 07:02:38
[2026-06-12 07:02:38,606.606 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 07:02:38,750.750 INFO    ] Initializing speech engine...
[2026-06-12 07:02:38,755.755 INFO    ] 2026-06-12 07:02:38
[2026-06-12 07:02:38,958.958 INFO    ] 2026-06-12 07:02:38
[2026-06-12 07:02:38,986.986 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 07:02:39,173.173 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 07:02:39,182.182 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 07:02:39,310.310 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 07:02:39,377.377 INFO    ] time= 12/06/2026 07:02:39
[2026-06-12 07:02:39,401.401 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 07:02:39,407.407 INFO    ] Checking for existing commands in stream...
[2026-06-12 07:02:39,497.497 INFO    ] No existing commands found in stream
[2026-06-12 07:02:44,506.506 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 07:02:44,509.509 INFO    ] Waiting 0.84 seconds before fallback handling...
[2026-06-12 07:02:45,727.727 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 07:02:45,729.729 INFO    ] Checking for system updates...
[2026-06-12 07:02:45,750.750 INFO    ] 200
[2026-06-12 07:02:45,751.751 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:02:45,784.784 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 07:02:45,785.785 INFO    ] No update needed
[2026-06-12 07:02:45,787.787 INFO    ] Checking for camera pi updates...
[2026-06-12 07:02:45,806.806 INFO    ] 200
[2026-06-12 07:02:45,807.807 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:02:45,833.833 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 07:02:45,968.968 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 07:02:45,969.969 INFO    ] No camera update needed
[2026-06-12 07:02:45,971.971 INFO    ] Script finished. Safe exiting...
[2026-06-12 07:02:45,972.972 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 07:02:45,975.975 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 07:02:45,978.978 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 07:02:48,017.017 INFO    ] ================================================
[2026-06-12 07:02:48,034.034 INFO    ] Launching Daemon at Fri Jun 12 07:02:48 IST 2026
[2026-06-12 07:02:48,045.045 INFO    ] ================================================
[2026-06-12 07:02:48,422.422 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 07:02:48
[2026-06-12 07:02:48,767.767 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 07:02:48,930.930 INFO    ] Initializing speech engine...
[2026-06-12 07:02:48,937.937 INFO    ] 2026-06-12 07:02:48
[2026-06-12 07:02:49,161.161 INFO    ] 2026-06-12 07:02:49
[2026-06-12 07:02:49,197.197 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 07:02:49,377.377 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 07:02:49,391.391 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 07:02:49,527.527 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 07:02:49,586.586 INFO    ] time= 12/06/2026 07:02:49
[2026-06-12 07:02:49,622.622 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 07:02:49,624.624 INFO    ] Checking for existing commands in stream...
[2026-06-12 07:02:49,693.693 INFO    ] No existing commands found in stream
[2026-06-12 07:02:54,704.704 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 07:02:54,706.706 INFO    ] Waiting 3.92 seconds before fallback handling...
[2026-06-12 07:02:58,998.998 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 07:02:58,999.999 INFO    ] Checking for system updates...
[2026-06-12 07:02:59,035.035 INFO    ] 200
[2026-06-12 07:02:59,037.037 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:02:59,067.067 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 07:02:59,068.068 INFO    ] No update needed
[2026-06-12 07:02:59,070.070 INFO    ] Checking for camera pi updates...
[2026-06-12 07:02:59,090.090 INFO    ] 200
[2026-06-12 07:02:59,091.091 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:02:59,118.118 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 07:02:59,157.157 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 07:02:59,159.159 INFO    ] No camera update needed
[2026-06-12 07:02:59,160.160 INFO    ] Script finished. Safe exiting...
[2026-06-12 07:02:59,162.162 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 07:02:59,165.165 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 07:02:59,167.167 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 07:03:01,206.206 INFO    ] ================================================
[2026-06-12 07:03:01,222.222 INFO    ] Launching Daemon at Fri Jun 12 07:03:01 IST 2026
[2026-06-12 07:03:01,232.232 INFO    ] ================================================
[2026-06-12 07:03:01,568.568 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 07:03:01
[2026-06-12 07:03:01,883.883 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 07:03:02,186.186 INFO    ] Initializing speech engine...
[2026-06-12 07:03:02,212.212 INFO    ] 2026-06-12 07:03:02
[2026-06-12 07:03:02,485.485 INFO    ] 2026-06-12 07:03:02
[2026-06-12 07:03:02,505.505 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 07:03:02,684.684 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 07:03:02,745.745 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 07:03:02,885.885 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 07:03:02,887.887 INFO    ] time= 12/06/2026 07:03:02
[2026-06-12 07:03:02,888.888 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 07:03:02,922.922 INFO    ] Checking for existing commands in stream...
[2026-06-12 07:03:02,994.994 INFO    ] No existing commands found in stream
[2026-06-12 07:03:08,004.004 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 07:03:08,007.007 INFO    ] Waiting 0.27 seconds before fallback handling...
[2026-06-12 07:03:08,668.668 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 07:03:08,669.669 INFO    ] Checking for system updates...
[2026-06-12 07:03:08,691.691 INFO    ] 200
[2026-06-12 07:03:08,692.692 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:03:08,728.728 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 07:03:08,730.730 INFO    ] No update needed
[2026-06-12 07:03:08,731.731 INFO    ] Checking for camera pi updates...
[2026-06-12 07:03:08,752.752 INFO    ] 200
[2026-06-12 07:03:08,753.753 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:03:08,776.776 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 07:03:08,812.812 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 07:03:08,813.813 INFO    ] No camera update needed
[2026-06-12 07:03:08,815.815 INFO    ] Script finished. Safe exiting...
[2026-06-12 07:03:08,816.816 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 07:03:08,819.819 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 07:03:08,822.822 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 07:03:10,860.860 INFO    ] ================================================
[2026-06-12 07:03:10,876.876 INFO    ] Launching Daemon at Fri Jun 12 07:03:10 IST 2026
[2026-06-12 07:03:10,887.887 INFO    ] ================================================
[2026-06-12 07:03:11,256.256 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 07:03:11
[2026-06-12 07:03:11,597.597 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 07:03:11,731.731 INFO    ] Initializing speech engine...
[2026-06-12 07:03:11,743.743 INFO    ] 2026-06-12 07:03:11
[2026-06-12 07:03:11,951.951 INFO    ] 2026-06-12 07:03:11
[2026-06-12 07:03:11,979.979 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 07:03:12,163.163 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 07:03:12,171.171 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 07:03:12,300.300 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 07:03:12,364.364 INFO    ] time= 12/06/2026 07:03:12
[2026-06-12 07:03:12,391.391 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 07:03:12,398.398 INFO    ] Checking for existing commands in stream...
[2026-06-12 07:03:12,464.464 INFO    ] No existing commands found in stream
[2026-06-12 07:03:17,473.473 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 07:03:17,476.476 INFO    ] Waiting 1.38 seconds before fallback handling...
[2026-06-12 07:03:19,217.217 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 07:03:19,219.219 INFO    ] Checking for system updates...
[2026-06-12 07:03:19,241.241 INFO    ] 200
[2026-06-12 07:03:19,242.242 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:03:19,273.273 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 07:03:19,274.274 INFO    ] No update needed
[2026-06-12 07:03:19,275.275 INFO    ] Checking for camera pi updates...
[2026-06-12 07:03:19,297.297 INFO    ] 200
[2026-06-12 07:03:19,298.298 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:03:19,323.323 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 07:03:19,364.364 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 07:03:19,365.365 INFO    ] No camera update needed
[2026-06-12 07:03:19,366.366 INFO    ] Script finished. Safe exiting...
[2026-06-12 07:03:19,368.368 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 07:03:19,371.371 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 07:03:19,374.374 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 07:03:21,413.413 INFO    ] ================================================
[2026-06-12 07:03:21,429.429 INFO    ] Launching Daemon at Fri Jun 12 07:03:21 IST 2026
[2026-06-12 07:03:21,440.440 INFO    ] ================================================
[2026-06-12 07:03:21,829.829 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 07:03:21
[2026-06-12 07:03:22,165.165 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 07:03:22,316.316 INFO    ] Initializing speech engine...
[2026-06-12 07:03:22,322.322 INFO    ] 2026-06-12 07:03:22
[2026-06-12 07:03:22,533.533 INFO    ] 2026-06-12 07:03:22
[2026-06-12 07:03:22,563.563 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 07:03:22,748.748 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 07:03:22,757.757 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 07:03:22,885.885 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 07:03:22,948.948 INFO    ] time= 12/06/2026 07:03:22
[2026-06-12 07:03:22,982.982 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 07:03:22,988.988 INFO    ] Checking for existing commands in stream...
[2026-06-12 07:03:23,056.056 INFO    ] No existing commands found in stream
[2026-06-12 07:03:28,071.071 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 07:03:28,074.074 INFO    ] Waiting 2.79 seconds before fallback handling...
[2026-06-12 07:03:31,259.259 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 07:03:31,260.260 INFO    ] Checking for system updates...
[2026-06-12 07:03:31,282.282 INFO    ] 200
[2026-06-12 07:03:31,284.284 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:03:31,316.316 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 07:03:31,318.318 INFO    ] No update needed
[2026-06-12 07:03:31,319.319 INFO    ] Checking for camera pi updates...
[2026-06-12 07:03:31,340.340 INFO    ] 200
[2026-06-12 07:03:31,341.341 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:03:31,366.366 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 07:03:31,390.390 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 07:03:31,392.392 INFO    ] No camera update needed
[2026-06-12 07:03:31,393.393 INFO    ] Script finished. Safe exiting...
[2026-06-12 07:03:31,395.395 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 07:03:31,398.398 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 07:03:31,401.401 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 07:03:33,432.432 INFO    ] ================================================
[2026-06-12 07:03:33,449.449 INFO    ] Launching Daemon at Fri Jun 12 07:03:33 IST 2026
[2026-06-12 07:03:33,460.460 INFO    ] ================================================
[2026-06-12 07:03:33,800.800 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 07:03:33
[2026-06-12 07:03:34,118.118 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 07:03:34,261.261 INFO    ] Initializing speech engine...
[2026-06-12 07:03:34,267.267 INFO    ] 2026-06-12 07:03:34
[2026-06-12 07:03:34,471.471 INFO    ] 2026-06-12 07:03:34
[2026-06-12 07:03:34,499.499 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 07:03:34,683.683 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 07:03:34,692.692 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 07:03:34,823.823 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 07:03:34,891.891 INFO    ] time= 12/06/2026 07:03:34
[2026-06-12 07:03:34,914.914 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 07:03:34,920.920 INFO    ] Checking for existing commands in stream...
[2026-06-12 07:03:34,987.987 INFO    ] No existing commands found in stream
[2026-06-12 07:03:39,996.996 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 07:03:39,999.999 INFO    ] Waiting 3.86 seconds before fallback handling...
[2026-06-12 07:03:44,228.228 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 07:03:44,230.230 INFO    ] Checking for system updates...
[2026-06-12 07:03:44,252.252 INFO    ] 200
[2026-06-12 07:03:44,254.254 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:03:44,286.286 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 07:03:44,288.288 INFO    ] No update needed
[2026-06-12 07:03:44,289.289 INFO    ] Checking for camera pi updates...
[2026-06-12 07:03:44,310.310 INFO    ] 200
[2026-06-12 07:03:44,312.312 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:03:44,337.337 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 07:03:44,374.374 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 07:03:44,375.375 INFO    ] No camera update needed
[2026-06-12 07:03:44,377.377 INFO    ] Script finished. Safe exiting...
[2026-06-12 07:03:44,378.378 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 07:03:44,382.382 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 07:03:44,385.385 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 07:03:46,424.424 INFO    ] ================================================
[2026-06-12 07:03:46,439.439 INFO    ] Launching Daemon at Fri Jun 12 07:03:46 IST 2026
[2026-06-12 07:03:46,449.449 INFO    ] ================================================
[2026-06-12 07:03:46,820.820 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 07:03:46
[2026-06-12 07:03:47,136.136 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 07:03:47,273.273 INFO    ] Initializing speech engine...
[2026-06-12 07:03:47,287.287 INFO    ] 2026-06-12 07:03:47
[2026-06-12 07:03:47,505.505 INFO    ] 2026-06-12 07:03:47
[2026-06-12 07:03:47,535.535 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 07:03:47,655.655 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 07:03:47,656.656 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 07:03:47,755.755 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 07:03:47,756.756 INFO    ] time= 12/06/2026 07:03:47
[2026-06-12 07:03:47,757.757 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 07:03:47,759.759 INFO    ] Checking for existing commands in stream...
[2026-06-12 07:03:47,833.833 INFO    ] No existing commands found in stream
[2026-06-12 07:03:52,867.867 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 07:03:52,870.870 INFO    ] Waiting 1.38 seconds before fallback handling...
[2026-06-12 07:03:54,627.627 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 07:03:54,628.628 INFO    ] Checking for system updates...
[2026-06-12 07:03:54,650.650 INFO    ] 200
[2026-06-12 07:03:54,651.651 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:03:54,682.682 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 07:03:54,683.683 INFO    ] No update needed
[2026-06-12 07:03:54,685.685 INFO    ] Checking for camera pi updates...
[2026-06-12 07:03:54,705.705 INFO    ] 200
[2026-06-12 07:03:54,706.706 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:03:54,731.731 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 07:03:54,768.768 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 07:03:54,769.769 INFO    ] No camera update needed
[2026-06-12 07:03:54,771.771 INFO    ] Script finished. Safe exiting...
[2026-06-12 07:03:54,772.772 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 07:03:54,775.775 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 07:03:54,778.778 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 07:03:56,818.818 INFO    ] ================================================
[2026-06-12 07:03:56,847.847 INFO    ] Launching Daemon at Fri Jun 12 07:03:56 IST 2026
[2026-06-12 07:03:56,858.858 INFO    ] ================================================
[2026-06-12 07:03:57,204.204 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 07:03:57
[2026-06-12 07:03:57,541.541 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 07:03:57,692.692 INFO    ] Initializing speech engine...
[2026-06-12 07:03:57,698.698 INFO    ] 2026-06-12 07:03:57
[2026-06-12 07:03:57,904.904 INFO    ] 2026-06-12 07:03:57
[2026-06-12 07:03:57,933.933 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 07:03:58,118.118 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 07:03:58,128.128 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 07:03:58,264.264 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 07:03:58,327.327 INFO    ] time= 12/06/2026 07:03:58
[2026-06-12 07:03:58,351.351 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 07:03:58,357.357 INFO    ] Checking for existing commands in stream...
[2026-06-12 07:03:58,431.431 INFO    ] No existing commands found in stream
[2026-06-12 07:04:03,459.459 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 07:04:03,462.462 INFO    ] Waiting 1.20 seconds before fallback handling...
[2026-06-12 07:04:05,018.018 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 07:04:05,020.020 INFO    ] Checking for system updates...
[2026-06-12 07:04:05,041.041 INFO    ] 200
[2026-06-12 07:04:05,043.043 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:04:05,073.073 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 07:04:05,074.074 INFO    ] No update needed
[2026-06-12 07:04:05,076.076 INFO    ] Checking for camera pi updates...
[2026-06-12 07:04:05,096.096 INFO    ] 200
[2026-06-12 07:04:05,098.098 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:04:05,122.122 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 07:04:05,158.158 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 07:04:05,159.159 INFO    ] No camera update needed
[2026-06-12 07:04:05,161.161 INFO    ] Script finished. Safe exiting...
[2026-06-12 07:04:05,162.162 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 07:04:05,165.165 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 07:04:05,168.168 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 07:04:07,206.206 INFO    ] ================================================
[2026-06-12 07:04:07,222.222 INFO    ] Launching Daemon at Fri Jun 12 07:04:07 IST 2026
[2026-06-12 07:04:07,233.233 INFO    ] ================================================
[2026-06-12 07:04:07,574.574 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 07:04:07
[2026-06-12 07:04:07,885.885 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 07:04:08,016.016 INFO    ] Initializing speech engine...
[2026-06-12 07:04:08,019.019 INFO    ] 2026-06-12 07:04:08
[2026-06-12 07:04:08,239.239 INFO    ] 2026-06-12 07:04:08
[2026-06-12 07:04:08,267.267 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 07:04:08,453.453 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 07:04:08,462.462 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 07:04:08,589.589 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 07:04:08,651.651 INFO    ] time= 12/06/2026 07:04:08
[2026-06-12 07:04:08,684.684 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 07:04:08,686.686 INFO    ] Checking for existing commands in stream...
[2026-06-12 07:04:08,758.758 INFO    ] No existing commands found in stream
[2026-06-12 07:04:13,767.767 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 07:04:13,770.770 INFO    ] Waiting 3.25 seconds before fallback handling...
[2026-06-12 07:04:17,398.398 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 07:04:17,400.400 INFO    ] Checking for system updates...
[2026-06-12 07:04:17,422.422 INFO    ] 200
[2026-06-12 07:04:17,423.423 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:04:17,455.455 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 07:04:17,457.457 INFO    ] No update needed
[2026-06-12 07:04:17,458.458 INFO    ] Checking for camera pi updates...
[2026-06-12 07:04:17,477.477 INFO    ] 200
[2026-06-12 07:04:17,479.479 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:04:17,502.502 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 07:04:17,536.536 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 07:04:17,538.538 INFO    ] No camera update needed
[2026-06-12 07:04:17,539.539 INFO    ] Script finished. Safe exiting...
[2026-06-12 07:04:17,541.541 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 07:04:17,544.544 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 07:04:17,546.546 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 07:04:19,585.585 INFO    ] ================================================
[2026-06-12 07:04:19,601.601 INFO    ] Launching Daemon at Fri Jun 12 07:04:19 IST 2026
[2026-06-12 07:04:19,612.612 INFO    ] ================================================
[2026-06-12 07:04:19,959.959 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 07:04:19
[2026-06-12 07:04:20,272.272 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 07:04:20,402.402 INFO    ] Initializing speech engine...
[2026-06-12 07:04:20,406.406 INFO    ] 2026-06-12 07:04:20
[2026-06-12 07:04:20,622.622 INFO    ] 2026-06-12 07:04:20
[2026-06-12 07:04:20,651.651 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 07:04:20,835.835 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 07:04:20,838.838 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 07:04:20,974.974 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 07:04:21,033.033 INFO    ] time= 12/06/2026 07:04:20
[2026-06-12 07:04:21,066.066 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 07:04:21,072.072 INFO    ] Checking for existing commands in stream...
[2026-06-12 07:04:21,163.163 INFO    ] No existing commands found in stream
[2026-06-12 07:04:26,172.172 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 07:04:26,175.175 INFO    ] Waiting 2.28 seconds before fallback handling...
[2026-06-12 07:04:28,826.826 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 07:04:28,827.827 INFO    ] Checking for system updates...
[2026-06-12 07:04:28,849.849 INFO    ] 200
[2026-06-12 07:04:28,851.851 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:04:28,881.881 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 07:04:28,882.882 INFO    ] No update needed
[2026-06-12 07:04:28,883.883 INFO    ] Checking for camera pi updates...
[2026-06-12 07:04:28,905.905 INFO    ] 200
[2026-06-12 07:04:28,906.906 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:04:28,930.930 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 07:04:28,966.966 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 07:04:28,967.967 INFO    ] No camera update needed
[2026-06-12 07:04:28,968.968 INFO    ] Script finished. Safe exiting...
[2026-06-12 07:04:28,969.969 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 07:04:28,973.973 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 07:04:28,975.975 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 07:04:31,013.013 INFO    ] ================================================
[2026-06-12 07:04:31,028.028 INFO    ] Launching Daemon at Fri Jun 12 07:04:31 IST 2026
[2026-06-12 07:04:31,039.039 INFO    ] ================================================
[2026-06-12 07:04:31,435.435 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 07:04:31
[2026-06-12 07:04:31,803.803 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 07:04:31,954.954 INFO    ] Initializing speech engine...
[2026-06-12 07:04:31,958.958 INFO    ] 2026-06-12 07:04:31
[2026-06-12 07:04:32,199.199 INFO    ] 2026-06-12 07:04:32
[2026-06-12 07:04:32,231.231 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 07:04:32,429.429 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 07:04:32,434.434 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 07:04:32,574.574 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 07:04:32,625.625 INFO    ] time= 12/06/2026 07:04:32
[2026-06-12 07:04:32,671.671 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 07:04:32,683.683 INFO    ] Checking for existing commands in stream...
[2026-06-12 07:04:32,760.760 INFO    ] No existing commands found in stream
[2026-06-12 07:04:37,779.779 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 07:04:37,782.782 INFO    ] Waiting 1.92 seconds before fallback handling...
[2026-06-12 07:04:40,088.088 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 07:04:40,089.089 INFO    ] Checking for system updates...
[2026-06-12 07:04:40,110.110 INFO    ] 200
[2026-06-12 07:04:40,112.112 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:04:40,149.149 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 07:04:40,150.150 INFO    ] No update needed
[2026-06-12 07:04:40,152.152 INFO    ] Checking for camera pi updates...
[2026-06-12 07:04:40,172.172 INFO    ] 200
[2026-06-12 07:04:40,173.173 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:04:40,197.197 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 07:04:40,236.236 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 07:04:40,237.237 INFO    ] No camera update needed
[2026-06-12 07:04:40,238.238 INFO    ] Script finished. Safe exiting...
[2026-06-12 07:04:40,240.240 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 07:04:40,243.243 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 07:04:40,246.246 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 07:04:42,271.271 INFO    ] ================================================
[2026-06-12 07:04:42,281.281 INFO    ] Launching Daemon at Fri Jun 12 07:04:42 IST 2026
[2026-06-12 07:04:42,287.287 INFO    ] ================================================
[2026-06-12 07:04:42,632.632 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 07:04:42
[2026-06-12 07:04:42,995.995 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 07:04:43,139.139 INFO    ] Initializing speech engine...
[2026-06-12 07:04:43,144.144 INFO    ] 2026-06-12 07:04:43
[2026-06-12 07:04:43,347.347 INFO    ] 2026-06-12 07:04:43
[2026-06-12 07:04:43,394.394 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 07:04:43,561.561 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 07:04:43,604.604 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 07:04:43,757.757 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 07:04:43,787.787 INFO    ] time= 12/06/2026 07:04:43
[2026-06-12 07:04:43,851.851 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 07:04:43,884.884 INFO    ] Checking for existing commands in stream...
[2026-06-12 07:04:43,970.970 INFO    ] No existing commands found in stream
[2026-06-12 07:04:49,002.002 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 07:04:49,005.005 INFO    ] Waiting 0.06 seconds before fallback handling...
[2026-06-12 07:04:49,436.436 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 07:04:49,437.437 INFO    ] Checking for system updates...
[2026-06-12 07:04:49,459.459 INFO    ] 200
[2026-06-12 07:04:49,460.460 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:04:49,493.493 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 07:04:49,494.494 INFO    ] No update needed
[2026-06-12 07:04:49,496.496 INFO    ] Checking for camera pi updates...
[2026-06-12 07:04:49,515.515 INFO    ] 200
[2026-06-12 07:04:49,517.517 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:04:49,540.540 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 07:04:49,680.680 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 07:04:49,682.682 INFO    ] No camera update needed
[2026-06-12 07:04:49,683.683 INFO    ] Script finished. Safe exiting...
[2026-06-12 07:04:49,684.684 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 07:04:49,688.688 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 07:04:49,691.691 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 07:04:51,730.730 INFO    ] ================================================
[2026-06-12 07:04:51,746.746 INFO    ] Launching Daemon at Fri Jun 12 07:04:51 IST 2026
[2026-06-12 07:04:51,757.757 INFO    ] ================================================
[2026-06-12 07:04:52,096.096 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 07:04:52
[2026-06-12 07:04:52,408.408 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 07:04:52,551.551 INFO    ] Initializing speech engine...
[2026-06-12 07:04:52,556.556 INFO    ] 2026-06-12 07:04:52
[2026-06-12 07:04:52,758.758 INFO    ] 2026-06-12 07:04:52
[2026-06-12 07:04:52,787.787 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 07:04:52,972.972 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 07:04:52,981.981 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 07:04:53,121.121 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 07:04:53,178.178 INFO    ] time= 12/06/2026 07:04:53
[2026-06-12 07:04:53,203.203 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 07:04:53,208.208 INFO    ] Checking for existing commands in stream...
[2026-06-12 07:04:53,276.276 INFO    ] No existing commands found in stream
[2026-06-12 07:04:58,290.290 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 07:04:58,292.292 INFO    ] Waiting 1.08 seconds before fallback handling...
[2026-06-12 07:04:59,716.716 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 07:04:59,718.718 INFO    ] Checking for system updates...
[2026-06-12 07:04:59,738.738 INFO    ] 200
[2026-06-12 07:04:59,740.740 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:04:59,770.770 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 07:04:59,772.772 INFO    ] No update needed
[2026-06-12 07:04:59,773.773 INFO    ] Checking for camera pi updates...
[2026-06-12 07:04:59,793.793 INFO    ] 200
[2026-06-12 07:04:59,795.795 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:04:59,820.820 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 07:04:59,857.857 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 07:04:59,858.858 INFO    ] No camera update needed
[2026-06-12 07:04:59,859.859 INFO    ] Script finished. Safe exiting...
[2026-06-12 07:04:59,861.861 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 07:04:59,864.864 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 07:04:59,866.866 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 07:05:01,900.900 INFO    ] ================================================
[2026-06-12 07:05:01,913.913 INFO    ] Launching Daemon at Fri Jun 12 07:05:01 IST 2026
[2026-06-12 07:05:01,924.924 INFO    ] ================================================
[2026-06-12 07:05:02,298.298 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 07:05:02
[2026-06-12 07:05:02,695.695 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 07:05:02,847.847 INFO    ] Initializing speech engine...
[2026-06-12 07:05:02,854.854 INFO    ] 2026-06-12 07:05:02
[2026-06-12 07:05:03,065.065 INFO    ] 2026-06-12 07:05:03
[2026-06-12 07:05:03,094.094 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 07:05:03,280.280 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 07:05:03,291.291 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 07:05:03,428.428 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 07:05:03,491.491 INFO    ] time= 12/06/2026 07:05:03
[2026-06-12 07:05:03,515.515 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 07:05:03,522.522 INFO    ] Checking for existing commands in stream...
[2026-06-12 07:05:03,589.589 INFO    ] No existing commands found in stream
[2026-06-12 07:05:08,599.599 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 07:05:08,602.602 INFO    ] Waiting 1.91 seconds before fallback handling...
[2026-06-12 07:05:10,927.927 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 07:05:10,929.929 INFO    ] Checking for system updates...
[2026-06-12 07:05:10,950.950 INFO    ] 200
[2026-06-12 07:05:10,952.952 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:05:10,983.983 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 07:05:10,984.984 INFO    ] No update needed
[2026-06-12 07:05:10,986.986 INFO    ] Checking for camera pi updates...
[2026-06-12 07:05:11,005.005 INFO    ] 200
[2026-06-12 07:05:11,007.007 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:05:11,030.030 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 07:05:11,065.065 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 07:05:11,067.067 INFO    ] No camera update needed
[2026-06-12 07:05:11,068.068 INFO    ] Script finished. Safe exiting...
[2026-06-12 07:05:11,069.069 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 07:05:11,073.073 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 07:05:11,076.076 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 07:05:13,114.114 INFO    ] ================================================
[2026-06-12 07:05:13,129.129 INFO    ] Launching Daemon at Fri Jun 12 07:05:13 IST 2026
[2026-06-12 07:05:13,140.140 INFO    ] ================================================
[2026-06-12 07:05:13,518.518 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 07:05:13
[2026-06-12 07:05:13,856.856 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 07:05:13,988.988 INFO    ] Initializing speech engine...
[2026-06-12 07:05:14,003.003 INFO    ] 2026-06-12 07:05:13
[2026-06-12 07:05:14,209.209 INFO    ] 2026-06-12 07:05:14
[2026-06-12 07:05:14,239.239 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 07:05:14,425.425 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 07:05:14,434.434 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 07:05:14,559.559 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 07:05:14,620.620 INFO    ] time= 12/06/2026 07:05:14
[2026-06-12 07:05:14,658.658 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 07:05:14,665.665 INFO    ] Checking for existing commands in stream...
[2026-06-12 07:05:14,782.782 INFO    ] No existing commands found in stream
[2026-06-12 07:05:19,791.791 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 07:05:19,794.794 INFO    ] Waiting 2.94 seconds before fallback handling...
[2026-06-12 07:05:23,085.085 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 07:05:23,087.087 INFO    ] Checking for system updates...
[2026-06-12 07:05:23,107.107 INFO    ] 200
[2026-06-12 07:05:23,108.108 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:05:23,139.139 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 07:05:23,141.141 INFO    ] No update needed
[2026-06-12 07:05:23,142.142 INFO    ] Checking for camera pi updates...
[2026-06-12 07:05:23,161.161 INFO    ] 200
[2026-06-12 07:05:23,163.163 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:05:23,186.186 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 07:05:23,222.222 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 07:05:23,224.224 INFO    ] No camera update needed
[2026-06-12 07:05:23,225.225 INFO    ] Script finished. Safe exiting...
[2026-06-12 07:05:23,226.226 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 07:05:23,229.229 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 07:05:23,232.232 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 07:05:25,271.271 INFO    ] ================================================
[2026-06-12 07:05:25,287.287 INFO    ] Launching Daemon at Fri Jun 12 07:05:25 IST 2026
[2026-06-12 07:05:25,298.298 INFO    ] ================================================
[2026-06-12 07:05:25,626.626 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 07:05:25
[2026-06-12 07:05:25,937.937 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 07:05:26,069.069 INFO    ] Initializing speech engine...
[2026-06-12 07:05:26,083.083 INFO    ] 2026-06-12 07:05:26
[2026-06-12 07:05:26,289.289 INFO    ] 2026-06-12 07:05:26
[2026-06-12 07:05:26,318.318 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 07:05:26,504.504 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 07:05:26,513.513 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 07:05:26,644.644 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 07:05:26,708.708 INFO    ] time= 12/06/2026 07:05:26
[2026-06-12 07:05:26,736.736 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 07:05:26,742.742 INFO    ] Checking for existing commands in stream...
[2026-06-12 07:05:26,833.833 INFO    ] No existing commands found in stream
[2026-06-12 07:05:31,841.841 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 07:05:31,843.843 INFO    ] Waiting 3.75 seconds before fallback handling...
[2026-06-12 07:05:35,957.957 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 07:05:35,958.958 INFO    ] Checking for system updates...
[2026-06-12 07:05:35,978.978 INFO    ] 200
[2026-06-12 07:05:35,980.980 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:05:36,010.010 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 07:05:36,011.011 INFO    ] No update needed
[2026-06-12 07:05:36,012.012 INFO    ] Checking for camera pi updates...
[2026-06-12 07:05:36,034.034 INFO    ] 200
[2026-06-12 07:05:36,035.035 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:05:36,059.059 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 07:05:36,097.097 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 07:05:36,099.099 INFO    ] No camera update needed
[2026-06-12 07:05:36,100.100 INFO    ] Script finished. Safe exiting...
[2026-06-12 07:05:36,101.101 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 07:05:36,104.104 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 07:05:36,107.107 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 07:05:38,147.147 INFO    ] ================================================
[2026-06-12 07:05:38,163.163 INFO    ] Launching Daemon at Fri Jun 12 07:05:38 IST 2026
[2026-06-12 07:05:38,173.173 INFO    ] ================================================
[2026-06-12 07:05:38,510.510 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 07:05:38
[2026-06-12 07:05:38,821.821 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 07:05:38,952.952 INFO    ] Initializing speech engine...
[2026-06-12 07:05:38,959.959 INFO    ] 2026-06-12 07:05:38
[2026-06-12 07:05:39,172.172 INFO    ] 2026-06-12 07:05:39
[2026-06-12 07:05:39,201.201 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 07:05:39,385.385 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 07:05:39,389.389 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 07:05:39,547.547 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 07:05:39,595.595 INFO    ] time= 12/06/2026 07:05:39
[2026-06-12 07:05:39,617.617 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 07:05:39,624.624 INFO    ] Checking for existing commands in stream...
[2026-06-12 07:05:39,691.691 INFO    ] No existing commands found in stream
[2026-06-12 07:05:44,700.700 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 07:05:44,702.702 INFO    ] Waiting 1.65 seconds before fallback handling...
[2026-06-12 07:05:46,758.758 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 07:05:46,760.760 INFO    ] Checking for system updates...
[2026-06-12 07:05:46,782.782 INFO    ] 200
[2026-06-12 07:05:46,784.784 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:05:46,817.817 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 07:05:46,819.819 INFO    ] No update needed
[2026-06-12 07:05:46,820.820 INFO    ] Checking for camera pi updates...
[2026-06-12 07:05:46,840.840 INFO    ] 200
[2026-06-12 07:05:46,842.842 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:05:46,866.866 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 07:05:46,906.906 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 07:05:46,907.907 INFO    ] No camera update needed
[2026-06-12 07:05:46,909.909 INFO    ] Script finished. Safe exiting...
[2026-06-12 07:05:46,910.910 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 07:05:46,913.913 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 07:05:46,916.916 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 07:05:48,956.956 INFO    ] ================================================
[2026-06-12 07:05:48,971.971 INFO    ] Launching Daemon at Fri Jun 12 07:05:48 IST 2026
[2026-06-12 07:05:48,982.982 INFO    ] ================================================
[2026-06-12 07:05:49,345.345 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 07:05:49
[2026-06-12 07:05:49,655.655 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 07:05:49,786.786 INFO    ] Initializing speech engine...
[2026-06-12 07:05:49,789.789 INFO    ] 2026-06-12 07:05:49
[2026-06-12 07:05:50,009.009 INFO    ] 2026-06-12 07:05:49
[2026-06-12 07:05:50,037.037 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 07:05:50,223.223 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 07:05:50,232.232 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 07:05:50,364.364 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 07:05:50,431.431 INFO    ] time= 12/06/2026 07:05:50
[2026-06-12 07:05:50,455.455 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 07:05:50,457.457 INFO    ] Checking for existing commands in stream...
[2026-06-12 07:05:50,552.552 INFO    ] No existing commands found in stream
[2026-06-12 07:05:55,561.561 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 07:05:55,564.564 INFO    ] Waiting 1.40 seconds before fallback handling...
[2026-06-12 07:05:57,307.307 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 07:05:57,308.308 INFO    ] Checking for system updates...
[2026-06-12 07:05:57,330.330 INFO    ] 200
[2026-06-12 07:05:57,332.332 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:05:57,361.361 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 07:05:57,363.363 INFO    ] No update needed
[2026-06-12 07:05:57,364.364 INFO    ] Checking for camera pi updates...
[2026-06-12 07:05:57,384.384 INFO    ] 200
[2026-06-12 07:05:57,386.386 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:05:57,410.410 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 07:05:57,455.455 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 07:05:57,456.456 INFO    ] No camera update needed
[2026-06-12 07:05:57,458.458 INFO    ] Script finished. Safe exiting...
[2026-06-12 07:05:57,459.459 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 07:05:57,462.462 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 07:05:57,465.465 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 07:05:59,502.502 INFO    ] ================================================
[2026-06-12 07:05:59,518.518 INFO    ] Launching Daemon at Fri Jun 12 07:05:59 IST 2026
[2026-06-12 07:05:59,530.530 INFO    ] ================================================
[2026-06-12 07:05:59,898.898 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 07:05:59
[2026-06-12 07:06:00,211.211 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 07:06:00,344.344 INFO    ] Initializing speech engine...
[2026-06-12 07:06:00,349.349 INFO    ] 2026-06-12 07:06:00
[2026-06-12 07:06:00,577.577 INFO    ] 2026-06-12 07:06:00
[2026-06-12 07:06:00,608.608 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 07:06:00,806.806 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 07:06:00,809.809 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 07:06:00,949.949 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 07:06:01,006.006 INFO    ] time= 12/06/2026 07:06:00
[2026-06-12 07:06:01,035.035 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 07:06:01,057.057 INFO    ] Checking for existing commands in stream...
[2026-06-12 07:06:01,135.135 INFO    ] No existing commands found in stream
[2026-06-12 07:06:06,143.143 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 07:06:06,146.146 INFO    ] Waiting 3.96 seconds before fallback handling...
[2026-06-12 07:06:10,488.488 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 07:06:10,490.490 INFO    ] Checking for system updates...
[2026-06-12 07:06:10,511.511 INFO    ] 200
[2026-06-12 07:06:10,512.512 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:06:10,545.545 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 07:06:10,547.547 INFO    ] No update needed
[2026-06-12 07:06:10,548.548 INFO    ] Checking for camera pi updates...
[2026-06-12 07:06:10,571.571 INFO    ] 200
[2026-06-12 07:06:10,572.572 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:06:10,596.596 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 07:06:10,638.638 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 07:06:10,639.639 INFO    ] No camera update needed
[2026-06-12 07:06:10,641.641 INFO    ] Script finished. Safe exiting...
[2026-06-12 07:06:10,642.642 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 07:06:10,645.645 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 07:06:10,648.648 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 07:06:12,686.686 INFO    ] ================================================
[2026-06-12 07:06:12,703.703 INFO    ] Launching Daemon at Fri Jun 12 07:06:12 IST 2026
[2026-06-12 07:06:12,714.714 INFO    ] ================================================
[2026-06-12 07:06:13,079.079 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 07:06:13
[2026-06-12 07:06:13,391.391 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 07:06:13,522.522 INFO    ] Initializing speech engine...
[2026-06-12 07:06:13,530.530 INFO    ] 2026-06-12 07:06:13
[2026-06-12 07:06:13,743.743 INFO    ] 2026-06-12 07:06:13
[2026-06-12 07:06:13,773.773 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 07:06:13,958.958 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 07:06:13,968.968 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 07:06:14,115.115 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 07:06:14,168.168 INFO    ] time= 12/06/2026 07:06:14
[2026-06-12 07:06:14,191.191 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 07:06:14,197.197 INFO    ] Checking for existing commands in stream...
[2026-06-12 07:06:14,265.265 INFO    ] No existing commands found in stream
[2026-06-12 07:06:19,274.274 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 07:06:19,277.277 INFO    ] Waiting 3.62 seconds before fallback handling...
[2026-06-12 07:06:23,287.287 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 07:06:23,289.289 INFO    ] Checking for system updates...
[2026-06-12 07:06:23,309.309 INFO    ] 200
[2026-06-12 07:06:23,311.311 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:06:23,343.343 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 07:06:23,344.344 INFO    ] No update needed
[2026-06-12 07:06:23,345.345 INFO    ] Checking for camera pi updates...
[2026-06-12 07:06:23,367.367 INFO    ] 200
[2026-06-12 07:06:23,368.368 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:06:23,393.393 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 07:06:23,437.437 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 07:06:23,438.438 INFO    ] No camera update needed
[2026-06-12 07:06:23,439.439 INFO    ] Script finished. Safe exiting...
[2026-06-12 07:06:23,440.440 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 07:06:23,443.443 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 07:06:23,446.446 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 07:06:25,484.484 INFO    ] ================================================
[2026-06-12 07:06:25,500.500 INFO    ] Launching Daemon at Fri Jun 12 07:06:25 IST 2026
[2026-06-12 07:06:25,512.512 INFO    ] ================================================
[2026-06-12 07:06:25,878.878 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 07:06:25
[2026-06-12 07:06:26,194.194 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 07:06:26,325.325 INFO    ] Initializing speech engine...
[2026-06-12 07:06:26,332.332 INFO    ] 2026-06-12 07:06:26
[2026-06-12 07:06:26,551.551 INFO    ] 2026-06-12 07:06:26
[2026-06-12 07:06:26,580.580 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 07:06:26,766.766 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 07:06:26,775.775 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 07:06:26,900.900 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 07:06:26,965.965 INFO    ] time= 12/06/2026 07:06:26
[2026-06-12 07:06:27,000.000 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 07:06:27,006.006 INFO    ] Checking for existing commands in stream...
[2026-06-12 07:06:27,098.098 INFO    ] No existing commands found in stream
[2026-06-12 07:06:32,101.101 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 07:06:32,103.103 INFO    ] Waiting 3.28 seconds before fallback handling...
[2026-06-12 07:06:35,763.763 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 07:06:35,764.764 INFO    ] Checking for system updates...
[2026-06-12 07:06:35,786.786 INFO    ] 200
[2026-06-12 07:06:35,787.787 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:06:35,817.817 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 07:06:35,818.818 INFO    ] No update needed
[2026-06-12 07:06:35,820.820 INFO    ] Checking for camera pi updates...
[2026-06-12 07:06:35,840.840 INFO    ] 200
[2026-06-12 07:06:35,842.842 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:06:35,865.865 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 07:06:35,906.906 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 07:06:35,908.908 INFO    ] No camera update needed
[2026-06-12 07:06:35,909.909 INFO    ] Script finished. Safe exiting...
[2026-06-12 07:06:35,910.910 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 07:06:35,913.913 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 07:06:35,916.916 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 07:06:37,956.956 INFO    ] ================================================
[2026-06-12 07:06:37,979.979 INFO    ] Launching Daemon at Fri Jun 12 07:06:37 IST 2026
[2026-06-12 07:06:37,990.990 INFO    ] ================================================
[2026-06-12 07:06:38,348.348 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 07:06:38
[2026-06-12 07:06:38,685.685 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 07:06:38,834.834 INFO    ] Initializing speech engine...
[2026-06-12 07:06:38,840.840 INFO    ] 2026-06-12 07:06:38
[2026-06-12 07:06:39,048.048 INFO    ] 2026-06-12 07:06:39
[2026-06-12 07:06:39,077.077 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 07:06:39,261.261 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 07:06:39,271.271 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 07:06:39,412.412 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 07:06:39,469.469 INFO    ] time= 12/06/2026 07:06:39
[2026-06-12 07:06:39,492.492 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 07:06:39,499.499 INFO    ] Checking for existing commands in stream...
[2026-06-12 07:06:39,566.566 INFO    ] No existing commands found in stream
[2026-06-12 07:06:44,580.580 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 07:06:44,584.584 INFO    ] Waiting 2.20 seconds before fallback handling...
[2026-06-12 07:06:47,213.213 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 07:06:47,215.215 INFO    ] Checking for system updates...
[2026-06-12 07:06:47,238.238 INFO    ] 200
[2026-06-12 07:06:47,239.239 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:06:47,273.273 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 07:06:47,274.274 INFO    ] No update needed
[2026-06-12 07:06:47,275.275 INFO    ] Checking for camera pi updates...
[2026-06-12 07:06:47,295.295 INFO    ] 200
[2026-06-12 07:06:47,297.297 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:06:47,321.321 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 07:06:47,356.356 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 07:06:47,357.357 INFO    ] No camera update needed
[2026-06-12 07:06:47,358.358 INFO    ] Script finished. Safe exiting...
[2026-06-12 07:06:47,360.360 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 07:06:47,363.363 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 07:06:47,365.365 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 07:06:49,404.404 INFO    ] ================================================
[2026-06-12 07:06:49,420.420 INFO    ] Launching Daemon at Fri Jun 12 07:06:49 IST 2026
[2026-06-12 07:06:49,430.430 INFO    ] ================================================
[2026-06-12 07:06:49,803.803 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 07:06:49
[2026-06-12 07:06:50,140.140 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 07:06:50,278.278 INFO    ] Initializing speech engine...
[2026-06-12 07:06:50,287.287 INFO    ] 2026-06-12 07:06:50
[2026-06-12 07:06:50,501.501 INFO    ] 2026-06-12 07:06:50
[2026-06-12 07:06:50,531.531 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 07:06:50,715.715 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 07:06:50,724.724 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 07:06:50,869.869 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 07:06:50,923.923 INFO    ] time= 12/06/2026 07:06:50
[2026-06-12 07:06:50,945.945 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 07:06:50,951.951 INFO    ] Checking for existing commands in stream...
[2026-06-12 07:06:51,018.018 INFO    ] No existing commands found in stream
[2026-06-12 07:06:56,038.038 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 07:06:56,041.041 INFO    ] Waiting 3.49 seconds before fallback handling...
[2026-06-12 07:06:59,878.878 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 07:06:59,880.880 INFO    ] Checking for system updates...
[2026-06-12 07:06:59,903.903 INFO    ] 200
[2026-06-12 07:06:59,905.905 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:06:59,939.939 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 07:06:59,941.941 INFO    ] No update needed
[2026-06-12 07:06:59,942.942 INFO    ] Checking for camera pi updates...
[2026-06-12 07:06:59,966.966 INFO    ] 200
[2026-06-12 07:06:59,967.967 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:06:59,993.993 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 07:07:00,134.134 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 07:07:00,135.135 INFO    ] No camera update needed
[2026-06-12 07:07:00,137.137 INFO    ] Script finished. Safe exiting...
[2026-06-12 07:07:00,138.138 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 07:07:00,141.141 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 07:07:00,144.144 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 07:07:02,186.186 INFO    ] ================================================
[2026-06-12 07:07:02,203.203 INFO    ] Launching Daemon at Fri Jun 12 07:07:02 IST 2026
[2026-06-12 07:07:02,213.213 INFO    ] ================================================
[2026-06-12 07:07:02,585.585 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 07:07:02
[2026-06-12 07:07:02,954.954 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 07:07:03,118.118 INFO    ] Initializing speech engine...
[2026-06-12 07:07:03,128.128 INFO    ] 2026-06-12 07:07:03
[2026-06-12 07:07:03,354.354 INFO    ] 2026-06-12 07:07:03
[2026-06-12 07:07:03,382.382 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 07:07:03,509.509 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 07:07:03,567.567 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 07:07:03,698.698 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 07:07:03,748.748 INFO    ] time= 12/06/2026 07:07:03
[2026-06-12 07:07:03,788.788 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 07:07:03,798.798 INFO    ] Checking for existing commands in stream...
[2026-06-12 07:07:03,869.869 INFO    ] No existing commands found in stream
[2026-06-12 07:07:08,883.883 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 07:07:08,886.886 INFO    ] Waiting 1.83 seconds before fallback handling...
[2026-06-12 07:07:11,069.069 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 07:07:11,070.070 INFO    ] Checking for system updates...
[2026-06-12 07:07:11,092.092 INFO    ] 200
[2026-06-12 07:07:11,093.093 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:07:11,124.124 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 07:07:11,125.125 INFO    ] No update needed
[2026-06-12 07:07:11,127.127 INFO    ] Checking for camera pi updates...
[2026-06-12 07:07:11,148.148 INFO    ] 200
[2026-06-12 07:07:11,149.149 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:07:11,174.174 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 07:07:11,222.222 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 07:07:11,224.224 INFO    ] No camera update needed
[2026-06-12 07:07:11,225.225 INFO    ] Script finished. Safe exiting...
[2026-06-12 07:07:11,226.226 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 07:07:11,229.229 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 07:07:11,232.232 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 07:07:13,265.265 INFO    ] ================================================
[2026-06-12 07:07:13,278.278 INFO    ] Launching Daemon at Fri Jun 12 07:07:13 IST 2026
[2026-06-12 07:07:13,285.285 INFO    ] ================================================
[2026-06-12 07:07:13,613.613 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 07:07:13
[2026-06-12 07:07:13,929.929 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 07:07:14,073.073 INFO    ] Initializing speech engine...
[2026-06-12 07:07:14,079.079 INFO    ] 2026-06-12 07:07:14
[2026-06-12 07:07:14,283.283 INFO    ] 2026-06-12 07:07:14
[2026-06-12 07:07:14,312.312 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 07:07:14,494.494 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 07:07:14,498.498 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 07:07:14,632.632 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 07:07:14,698.698 INFO    ] time= 12/06/2026 07:07:14
[2026-06-12 07:07:14,724.724 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 07:07:14,731.731 INFO    ] Checking for existing commands in stream...
[2026-06-12 07:07:14,798.798 INFO    ] No existing commands found in stream
[2026-06-12 07:07:19,807.807 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 07:07:19,809.809 INFO    ] Waiting 0.48 seconds before fallback handling...
[2026-06-12 07:07:20,673.673 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 07:07:20,675.675 INFO    ] Checking for system updates...
[2026-06-12 07:07:20,695.695 INFO    ] 200
[2026-06-12 07:07:20,697.697 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:07:20,729.729 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 07:07:20,731.731 INFO    ] No update needed
[2026-06-12 07:07:20,732.732 INFO    ] Checking for camera pi updates...
[2026-06-12 07:07:20,753.753 INFO    ] 200
[2026-06-12 07:07:20,754.754 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:07:20,777.777 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 07:07:20,816.816 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 07:07:20,818.818 INFO    ] No camera update needed
[2026-06-12 07:07:20,819.819 INFO    ] Script finished. Safe exiting...
[2026-06-12 07:07:20,820.820 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 07:07:20,823.823 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 07:07:20,826.826 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 07:07:22,864.864 INFO    ] ================================================
[2026-06-12 07:07:22,879.879 INFO    ] Launching Daemon at Fri Jun 12 07:07:22 IST 2026
[2026-06-12 07:07:22,890.890 INFO    ] ================================================
[2026-06-12 07:07:23,257.257 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 07:07:23
[2026-06-12 07:07:23,573.573 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 07:07:23,715.715 INFO    ] Initializing speech engine...
[2026-06-12 07:07:23,721.721 INFO    ] 2026-06-12 07:07:23
[2026-06-12 07:07:23,925.925 INFO    ] 2026-06-12 07:07:23
[2026-06-12 07:07:23,954.954 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 07:07:24,137.137 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 07:07:24,146.146 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 07:07:24,275.275 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 07:07:24,341.341 INFO    ] time= 12/06/2026 07:07:24
[2026-06-12 07:07:24,368.368 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 07:07:24,374.374 INFO    ] Checking for existing commands in stream...
[2026-06-12 07:07:24,441.441 INFO    ] No existing commands found in stream
[2026-06-12 07:07:29,455.455 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 07:07:29,457.457 INFO    ] Waiting 1.95 seconds before fallback handling...
[2026-06-12 07:07:31,796.796 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 07:07:31,798.798 INFO    ] Checking for system updates...
[2026-06-12 07:07:31,819.819 INFO    ] 200
[2026-06-12 07:07:31,820.820 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:07:31,851.851 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 07:07:31,852.852 INFO    ] No update needed
[2026-06-12 07:07:31,853.853 INFO    ] Checking for camera pi updates...
[2026-06-12 07:07:31,874.874 INFO    ] 200
[2026-06-12 07:07:31,875.875 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:07:31,901.901 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 07:07:31,926.926 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 07:07:31,927.927 INFO    ] No camera update needed
[2026-06-12 07:07:31,928.928 INFO    ] Script finished. Safe exiting...
[2026-06-12 07:07:31,930.930 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 07:07:31,933.933 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 07:07:31,936.936 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 07:07:33,969.969 INFO    ] ================================================
[2026-06-12 07:07:33,985.985 INFO    ] Launching Daemon at Fri Jun 12 07:07:33 IST 2026
[2026-06-12 07:07:34,996.996 INFO    ] ================================================
[2026-06-12 07:07:34,337.337 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 07:07:34
[2026-06-12 07:07:34,649.649 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 07:07:34,786.786 INFO    ] Initializing speech engine...
[2026-06-12 07:07:34,797.797 INFO    ] 2026-06-12 07:07:34
[2026-06-12 07:07:35,001.001 INFO    ] 2026-06-12 07:07:34
[2026-06-12 07:07:35,030.030 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 07:07:35,214.214 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 07:07:35,224.224 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 07:07:35,368.368 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 07:07:35,421.421 INFO    ] time= 12/06/2026 07:07:35
[2026-06-12 07:07:35,444.444 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 07:07:35,450.450 INFO    ] Checking for existing commands in stream...
[2026-06-12 07:07:35,521.521 INFO    ] No existing commands found in stream
[2026-06-12 07:07:40,530.530 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 07:07:40,533.533 INFO    ] Waiting 2.66 seconds before fallback handling...
[2026-06-12 07:07:43,538.538 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 07:07:43,540.540 INFO    ] Checking for system updates...
[2026-06-12 07:07:43,562.562 INFO    ] 200
[2026-06-12 07:07:43,563.563 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:07:43,594.594 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 07:07:43,595.595 INFO    ] No update needed
[2026-06-12 07:07:43,596.596 INFO    ] Checking for camera pi updates...
[2026-06-12 07:07:43,616.616 INFO    ] 200
[2026-06-12 07:07:43,618.618 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:07:43,643.643 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 07:07:43,691.691 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 07:07:43,693.693 INFO    ] No camera update needed
[2026-06-12 07:07:43,694.694 INFO    ] Script finished. Safe exiting...
[2026-06-12 07:07:43,695.695 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 07:07:43,698.698 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 07:07:43,701.701 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 07:07:45,742.742 INFO    ] ================================================
[2026-06-12 07:07:45,757.757 INFO    ] Launching Daemon at Fri Jun 12 07:07:45 IST 2026
[2026-06-12 07:07:45,768.768 INFO    ] ================================================
[2026-06-12 07:07:46,111.111 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 07:07:46
[2026-06-12 07:07:46,423.423 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 07:07:46,552.552 INFO    ] Initializing speech engine...
[2026-06-12 07:07:46,556.556 INFO    ] 2026-06-12 07:07:46
[2026-06-12 07:07:46,771.771 INFO    ] 2026-06-12 07:07:46
[2026-06-12 07:07:46,800.800 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 07:07:46,983.983 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 07:07:46,987.987 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 07:07:47,120.120 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 07:07:47,182.182 INFO    ] time= 12/06/2026 07:07:47
[2026-06-12 07:07:47,214.214 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 07:07:47,216.216 INFO    ] Checking for existing commands in stream...
[2026-06-12 07:07:47,311.311 INFO    ] No existing commands found in stream
[2026-06-12 07:07:52,325.325 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 07:07:52,328.328 INFO    ] Waiting 1.51 seconds before fallback handling...
[2026-06-12 07:07:54,217.217 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 07:07:54,218.218 INFO    ] Checking for system updates...
[2026-06-12 07:07:54,240.240 INFO    ] 200
[2026-06-12 07:07:54,242.242 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:07:54,274.274 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 07:07:54,275.275 INFO    ] No update needed
[2026-06-12 07:07:54,276.276 INFO    ] Checking for camera pi updates...
[2026-06-12 07:07:54,295.295 INFO    ] 200
[2026-06-12 07:07:54,297.297 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:07:54,321.321 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 07:07:54,355.355 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 07:07:54,357.357 INFO    ] No camera update needed
[2026-06-12 07:07:54,358.358 INFO    ] Script finished. Safe exiting...
[2026-06-12 07:07:54,359.359 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 07:07:54,362.362 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 07:07:54,365.365 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 07:07:56,404.404 INFO    ] ================================================
[2026-06-12 07:07:56,420.420 INFO    ] Launching Daemon at Fri Jun 12 07:07:56 IST 2026
[2026-06-12 07:07:56,431.431 INFO    ] ================================================
[2026-06-12 07:07:56,805.805 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 07:07:56
[2026-06-12 07:07:57,140.140 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 07:07:57,291.291 INFO    ] Initializing speech engine...
[2026-06-12 07:07:57,296.296 INFO    ] 2026-06-12 07:07:57
[2026-06-12 07:07:57,505.505 INFO    ] 2026-06-12 07:07:57
[2026-06-12 07:07:57,535.535 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 07:07:57,721.721 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 07:07:57,732.732 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 07:07:57,863.863 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 07:07:57,923.923 INFO    ] time= 12/06/2026 07:07:57
[2026-06-12 07:07:57,955.955 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 07:07:57,962.962 INFO    ] Checking for existing commands in stream...
[2026-06-12 07:07:58,054.054 INFO    ] No existing commands found in stream
[2026-06-12 07:08:03,068.068 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 07:08:03,072.072 INFO    ] Waiting 0.42 seconds before fallback handling...
[2026-06-12 07:08:03,872.872 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 07:08:03,874.874 INFO    ] Checking for system updates...
[2026-06-12 07:08:03,899.899 INFO    ] 200
[2026-06-12 07:08:03,900.900 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:08:03,931.931 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 07:08:03,932.932 INFO    ] No update needed
[2026-06-12 07:08:03,933.933 INFO    ] Checking for camera pi updates...
[2026-06-12 07:08:03,953.953 INFO    ] 200
[2026-06-12 07:08:03,955.955 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:08:03,978.978 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 07:08:04,025.025 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 07:08:04,027.027 INFO    ] No camera update needed
[2026-06-12 07:08:04,028.028 INFO    ] Script finished. Safe exiting...
[2026-06-12 07:08:04,030.030 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 07:08:04,033.033 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 07:08:04,036.036 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 07:08:06,080.080 INFO    ] ================================================
[2026-06-12 07:08:06,095.095 INFO    ] Launching Daemon at Fri Jun 12 07:08:06 IST 2026
[2026-06-12 07:08:06,106.106 INFO    ] ================================================
[2026-06-12 07:08:06,501.501 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 07:08:06
[2026-06-12 07:08:06,835.835 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 07:08:06,987.987 INFO    ] Initializing speech engine...
[2026-06-12 07:08:06,993.993 INFO    ] 2026-06-12 07:08:06
[2026-06-12 07:08:07,204.204 INFO    ] 2026-06-12 07:08:07
[2026-06-12 07:08:07,233.233 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 07:08:07,367.367 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 07:08:07,420.420 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 07:08:07,557.557 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 07:08:07,618.618 INFO    ] time= 12/06/2026 07:08:07
[2026-06-12 07:08:07,643.643 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 07:08:07,653.653 INFO    ] Checking for existing commands in stream...
[2026-06-12 07:08:07,725.725 INFO    ] No existing commands found in stream
[2026-06-12 07:08:12,750.750 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 07:08:12,753.753 INFO    ] Waiting 3.44 seconds before fallback handling...
[2026-06-12 07:08:16,597.597 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 07:08:16,598.598 INFO    ] Checking for system updates...
[2026-06-12 07:08:16,622.622 INFO    ] 200
[2026-06-12 07:08:16,623.623 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:08:16,657.657 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 07:08:16,658.658 INFO    ] No update needed
[2026-06-12 07:08:16,659.659 INFO    ] Checking for camera pi updates...
[2026-06-12 07:08:16,682.682 INFO    ] 200
[2026-06-12 07:08:16,684.684 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:08:16,712.712 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 07:08:16,753.753 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 07:08:16,754.754 INFO    ] No camera update needed
[2026-06-12 07:08:16,756.756 INFO    ] Script finished. Safe exiting...
[2026-06-12 07:08:16,757.757 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 07:08:16,761.761 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 07:08:16,764.764 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 07:08:18,806.806 INFO    ] ================================================
[2026-06-12 07:08:18,822.822 INFO    ] Launching Daemon at Fri Jun 12 07:08:18 IST 2026
[2026-06-12 07:08:18,832.832 INFO    ] ================================================
[2026-06-12 07:08:19,168.168 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 07:08:19
[2026-06-12 07:08:19,483.483 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 07:08:19,613.613 INFO    ] Initializing speech engine...
[2026-06-12 07:08:19,617.617 INFO    ] 2026-06-12 07:08:19
[2026-06-12 07:08:19,834.834 INFO    ] 2026-06-12 07:08:19
[2026-06-12 07:08:19,864.864 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 07:08:20,050.050 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 07:08:20,059.059 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 07:08:20,197.197 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 07:08:20,259.259 INFO    ] time= 12/06/2026 07:08:20
[2026-06-12 07:08:20,284.284 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 07:08:20,291.291 INFO    ] Checking for existing commands in stream...
[2026-06-12 07:08:20,358.358 INFO    ] No existing commands found in stream
[2026-06-12 07:08:25,366.366 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 07:08:25,368.368 INFO    ] Waiting 0.47 seconds before fallback handling...
[2026-06-12 07:08:26,144.144 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 07:08:26,146.146 INFO    ] Checking for system updates...
[2026-06-12 07:08:26,166.166 INFO    ] 200
[2026-06-12 07:08:26,167.167 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:08:26,202.202 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 07:08:26,204.204 INFO    ] No update needed
[2026-06-12 07:08:26,205.205 INFO    ] Checking for camera pi updates...
[2026-06-12 07:08:26,242.242 INFO    ] 200
[2026-06-12 07:08:26,244.244 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:08:26,284.284 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 07:08:26,336.336 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 07:08:26,338.338 INFO    ] No camera update needed
[2026-06-12 07:08:26,339.339 INFO    ] Script finished. Safe exiting...
[2026-06-12 07:08:26,341.341 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 07:08:26,344.344 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 07:08:26,347.347 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 07:08:28,386.386 INFO    ] ================================================
[2026-06-12 07:08:28,401.401 INFO    ] Launching Daemon at Fri Jun 12 07:08:28 IST 2026
[2026-06-12 07:08:28,412.412 INFO    ] ================================================
[2026-06-12 07:08:28,761.761 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 07:08:28
[2026-06-12 07:08:29,076.076 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 07:08:29,222.222 INFO    ] Initializing speech engine...
[2026-06-12 07:08:29,227.227 INFO    ] 2026-06-12 07:08:29
[2026-06-12 07:08:29,429.429 INFO    ] 2026-06-12 07:08:29
[2026-06-12 07:08:29,458.458 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 07:08:29,642.642 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 07:08:29,652.652 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 07:08:29,777.777 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 07:08:29,843.843 INFO    ] time= 12/06/2026 07:08:29
[2026-06-12 07:08:29,870.870 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 07:08:29,876.876 INFO    ] Checking for existing commands in stream...
[2026-06-12 07:08:29,935.935 INFO    ] No existing commands found in stream
[2026-06-12 07:08:34,944.944 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 07:08:34,947.947 INFO    ] Waiting 3.97 seconds before fallback handling...
[2026-06-12 07:08:39,266.266 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 07:08:39,267.267 INFO    ] Checking for system updates...
[2026-06-12 07:08:39,289.289 INFO    ] 200
[2026-06-12 07:08:39,290.290 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:08:39,320.320 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 07:08:39,322.322 INFO    ] No update needed
[2026-06-12 07:08:39,323.323 INFO    ] Checking for camera pi updates...
[2026-06-12 07:08:39,344.344 INFO    ] 200
[2026-06-12 07:08:39,345.345 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:08:39,369.369 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 07:08:39,402.402 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 07:08:39,403.403 INFO    ] No camera update needed
[2026-06-12 07:08:39,405.405 INFO    ] Script finished. Safe exiting...
[2026-06-12 07:08:39,406.406 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 07:08:39,409.409 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 07:08:39,412.412 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 07:08:41,453.453 INFO    ] ================================================
[2026-06-12 07:08:41,468.468 INFO    ] Launching Daemon at Fri Jun 12 07:08:41 IST 2026
[2026-06-12 07:08:41,479.479 INFO    ] ================================================
[2026-06-12 07:08:41,843.843 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 07:08:41
[2026-06-12 07:08:42,157.157 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 07:08:42,287.287 INFO    ] Initializing speech engine...
[2026-06-12 07:08:42,292.292 INFO    ] 2026-06-12 07:08:42
[2026-06-12 07:08:42,511.511 INFO    ] 2026-06-12 07:08:42
[2026-06-12 07:08:42,540.540 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 07:08:42,725.725 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 07:08:42,729.729 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 07:08:42,882.882 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 07:08:42,935.935 INFO    ] time= 12/06/2026 07:08:42
[2026-06-12 07:08:42,958.958 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 07:08:42,965.965 INFO    ] Checking for existing commands in stream...
[2026-06-12 07:08:43,056.056 INFO    ] No existing commands found in stream
[2026-06-12 07:08:48,070.070 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 07:08:48,073.073 INFO    ] Waiting 3.51 seconds before fallback handling...
[2026-06-12 07:08:51,946.946 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 07:08:51,948.948 INFO    ] Checking for system updates...
[2026-06-12 07:08:51,971.971 INFO    ] 200
[2026-06-12 07:08:51,972.972 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:08:52,005.005 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 07:08:52,006.006 INFO    ] No update needed
[2026-06-12 07:08:52,008.008 INFO    ] Checking for camera pi updates...
[2026-06-12 07:08:52,029.029 INFO    ] 200
[2026-06-12 07:08:52,030.030 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:08:52,056.056 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 07:08:52,093.093 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 07:08:52,094.094 INFO    ] No camera update needed
[2026-06-12 07:08:52,096.096 INFO    ] Script finished. Safe exiting...
[2026-06-12 07:08:52,098.098 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 07:08:52,101.101 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 07:08:52,104.104 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 07:08:54,144.144 INFO    ] ================================================
[2026-06-12 07:08:54,159.159 INFO    ] Launching Daemon at Fri Jun 12 07:08:54 IST 2026
[2026-06-12 07:08:54,170.170 INFO    ] ================================================
[2026-06-12 07:08:54,522.522 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 07:08:54
[2026-06-12 07:08:54,836.836 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 07:08:54,979.979 INFO    ] Initializing speech engine...
[2026-06-12 07:08:54,984.984 INFO    ] 2026-06-12 07:08:54
[2026-06-12 07:08:55,190.190 INFO    ] 2026-06-12 07:08:55
[2026-06-12 07:08:55,221.221 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 07:08:55,342.342 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 07:08:55,404.404 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 07:08:55,539.539 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 07:08:55,556.556 INFO    ] time= 12/06/2026 07:08:55
[2026-06-12 07:08:55,558.558 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 07:08:55,559.559 INFO    ] Checking for existing commands in stream...
[2026-06-12 07:08:55,646.646 INFO    ] No existing commands found in stream
[2026-06-12 07:09:00,659.659 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 07:09:00,662.662 INFO    ] Waiting 1.25 seconds before fallback handling...
[2026-06-12 07:09:02,238.238 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 07:09:02,240.240 INFO    ] Checking for system updates...
[2026-06-12 07:09:02,267.267 INFO    ] 200
[2026-06-12 07:09:02,269.269 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:09:02,310.310 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 07:09:02,312.312 INFO    ] No update needed
[2026-06-12 07:09:02,314.314 INFO    ] Checking for camera pi updates...
[2026-06-12 07:09:02,343.343 INFO    ] 200
[2026-06-12 07:09:02,345.345 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:09:02,391.391 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 07:09:02,530.530 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 07:09:02,532.532 INFO    ] No camera update needed
[2026-06-12 07:09:02,533.533 INFO    ] Script finished. Safe exiting...
[2026-06-12 07:09:02,534.534 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 07:09:02,538.538 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 07:09:02,541.541 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 07:09:04,581.581 INFO    ] ================================================
[2026-06-12 07:09:04,596.596 INFO    ] Launching Daemon at Fri Jun 12 07:09:04 IST 2026
[2026-06-12 07:09:04,607.607 INFO    ] ================================================
[2026-06-12 07:09:04,960.960 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 07:09:04
[2026-06-12 07:09:05,275.275 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 07:09:05,406.406 INFO    ] Initializing speech engine...
[2026-06-12 07:09:05,410.410 INFO    ] 2026-06-12 07:09:05
[2026-06-12 07:09:05,629.629 INFO    ] 2026-06-12 07:09:05
[2026-06-12 07:09:05,658.658 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 07:09:05,805.805 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 07:09:05,806.806 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 07:09:05,915.915 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 07:09:05,916.916 INFO    ] time= 12/06/2026 07:09:05
[2026-06-12 07:09:05,918.918 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 07:09:05,919.919 INFO    ] Checking for existing commands in stream...
[2026-06-12 07:09:06,004.004 INFO    ] No existing commands found in stream
[2026-06-12 07:09:11,027.027 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 07:09:11,030.030 INFO    ] Waiting 2.85 seconds before fallback handling...
[2026-06-12 07:09:14,292.292 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 07:09:14,295.295 INFO    ] Checking for system updates...
[2026-06-12 07:09:14,331.331 INFO    ] 200
[2026-06-12 07:09:14,333.333 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:09:14,395.395 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 07:09:14,397.397 INFO    ] No update needed
[2026-06-12 07:09:14,400.400 INFO    ] Checking for camera pi updates...
[2026-06-12 07:09:14,429.429 INFO    ] 200
[2026-06-12 07:09:14,431.431 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:09:14,456.456 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 07:09:14,500.500 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 07:09:14,502.502 INFO    ] No camera update needed
[2026-06-12 07:09:14,503.503 INFO    ] Script finished. Safe exiting...
[2026-06-12 07:09:14,504.504 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 07:09:14,507.507 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 07:09:14,510.510 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 07:09:16,552.552 INFO    ] ================================================
[2026-06-12 07:09:16,568.568 INFO    ] Launching Daemon at Fri Jun 12 07:09:16 IST 2026
[2026-06-12 07:09:16,579.579 INFO    ] ================================================
[2026-06-12 07:09:16,925.925 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 07:09:16
[2026-06-12 07:09:17,241.241 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 07:09:17,395.395 INFO    ] Initializing speech engine...
[2026-06-12 07:09:17,401.401 INFO    ] 2026-06-12 07:09:17
[2026-06-12 07:09:17,612.612 INFO    ] 2026-06-12 07:09:17
[2026-06-12 07:09:17,640.640 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 07:09:17,829.829 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 07:09:17,839.839 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 07:09:17,971.971 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 07:09:18,040.040 INFO    ] time= 12/06/2026 07:09:17
[2026-06-12 07:09:18,065.065 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 07:09:18,072.072 INFO    ] Checking for existing commands in stream...
[2026-06-12 07:09:18,142.142 INFO    ] No existing commands found in stream
[2026-06-12 07:09:23,156.156 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 07:09:23,159.159 INFO    ] Waiting 2.12 seconds before fallback handling...
[2026-06-12 07:09:25,678.678 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 07:09:25,680.680 INFO    ] Checking for system updates...
[2026-06-12 07:09:25,701.701 INFO    ] 200
[2026-06-12 07:09:25,703.703 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:09:25,735.735 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 07:09:25,737.737 INFO    ] No update needed
[2026-06-12 07:09:25,738.738 INFO    ] Checking for camera pi updates...
[2026-06-12 07:09:25,758.758 INFO    ] 200
[2026-06-12 07:09:25,759.759 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:09:25,782.782 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 07:09:25,836.836 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 07:09:25,837.837 INFO    ] No camera update needed
[2026-06-12 07:09:25,839.839 INFO    ] Script finished. Safe exiting...
[2026-06-12 07:09:25,840.840 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 07:09:25,843.843 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 07:09:25,846.846 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 07:09:27,885.885 INFO    ] ================================================
[2026-06-12 07:09:27,901.901 INFO    ] Launching Daemon at Fri Jun 12 07:09:27 IST 2026
[2026-06-12 07:09:27,912.912 INFO    ] ================================================
[2026-06-12 07:09:28,274.274 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 07:09:28
[2026-06-12 07:09:28,616.616 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 07:09:28,768.768 INFO    ] Initializing speech engine...
[2026-06-12 07:09:28,774.774 INFO    ] 2026-06-12 07:09:28
[2026-06-12 07:09:28,986.986 INFO    ] 2026-06-12 07:09:28
[2026-06-12 07:09:29,015.015 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 07:09:29,201.201 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 07:09:29,211.211 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 07:09:29,354.354 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 07:09:29,413.413 INFO    ] time= 12/06/2026 07:09:29
[2026-06-12 07:09:29,436.436 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 07:09:29,443.443 INFO    ] Checking for existing commands in stream...
[2026-06-12 07:09:29,510.510 INFO    ] No existing commands found in stream
[2026-06-12 07:09:34,525.525 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 07:09:34,528.528 INFO    ] Waiting 0.68 seconds before fallback handling...
[2026-06-12 07:09:35,566.566 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 07:09:35,568.568 INFO    ] Checking for system updates...
[2026-06-12 07:09:35,589.589 INFO    ] 200
[2026-06-12 07:09:35,591.591 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:09:35,624.624 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 07:09:35,625.625 INFO    ] No update needed
[2026-06-12 07:09:35,627.627 INFO    ] Checking for camera pi updates...
[2026-06-12 07:09:35,650.650 INFO    ] 200
[2026-06-12 07:09:35,652.652 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:09:35,679.679 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 07:09:35,719.719 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 07:09:35,720.720 INFO    ] No camera update needed
[2026-06-12 07:09:35,722.722 INFO    ] Script finished. Safe exiting...
[2026-06-12 07:09:35,723.723 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 07:09:35,726.726 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 07:09:35,729.729 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 07:09:37,769.769 INFO    ] ================================================
[2026-06-12 07:09:37,785.785 INFO    ] Launching Daemon at Fri Jun 12 07:09:37 IST 2026
[2026-06-12 07:09:37,796.796 INFO    ] ================================================
[2026-06-12 07:09:38,149.149 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 07:09:38
[2026-06-12 07:09:38,467.467 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 07:09:38,603.603 INFO    ] Initializing speech engine...
[2026-06-12 07:09:38,611.611 INFO    ] 2026-06-12 07:09:38
[2026-06-12 07:09:38,839.839 INFO    ] 2026-06-12 07:09:38
[2026-06-12 07:09:38,871.871 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 07:09:39,072.072 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 07:09:39,076.076 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 07:09:39,232.232 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 07:09:39,296.296 INFO    ] time= 12/06/2026 07:09:39
[2026-06-12 07:09:39,322.322 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 07:09:39,328.328 INFO    ] Checking for existing commands in stream...
[2026-06-12 07:09:39,406.406 INFO    ] No existing commands found in stream
[2026-06-12 07:09:44,415.415 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 07:09:44,418.418 INFO    ] Waiting 0.66 seconds before fallback handling...
[2026-06-12 07:09:45,456.456 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 07:09:45,458.458 INFO    ] Checking for system updates...
[2026-06-12 07:09:45,481.481 INFO    ] 200
[2026-06-12 07:09:45,482.482 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:09:45,513.513 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 07:09:45,514.514 INFO    ] No update needed
[2026-06-12 07:09:45,516.516 INFO    ] Checking for camera pi updates...
[2026-06-12 07:09:45,537.537 INFO    ] 200
[2026-06-12 07:09:45,538.538 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:09:45,565.565 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 07:09:45,607.607 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 07:09:45,608.608 INFO    ] No camera update needed
[2026-06-12 07:09:45,610.610 INFO    ] Script finished. Safe exiting...
[2026-06-12 07:09:45,611.611 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 07:09:45,614.614 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 07:09:45,617.617 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 07:09:47,657.657 INFO    ] ================================================
[2026-06-12 07:09:47,672.672 INFO    ] Launching Daemon at Fri Jun 12 07:09:47 IST 2026
[2026-06-12 07:09:47,683.683 INFO    ] ================================================
[2026-06-12 07:09:48,040.040 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 07:09:48
[2026-06-12 07:09:48,361.361 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 07:09:48,513.513 INFO    ] Initializing speech engine...
[2026-06-12 07:09:48,517.517 INFO    ] 2026-06-12 07:09:48
[2026-06-12 07:09:48,732.732 INFO    ] 2026-06-12 07:09:48
[2026-06-12 07:09:48,763.763 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 07:09:48,961.961 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 07:09:48,966.966 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 07:09:49,107.107 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 07:09:49,148.148 INFO    ] time= 12/06/2026 07:09:49
[2026-06-12 07:09:49,192.192 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 07:09:49,216.216 INFO    ] Checking for existing commands in stream...
[2026-06-12 07:09:49,292.292 INFO    ] No existing commands found in stream
[2026-06-12 07:09:54,303.303 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 07:09:54,306.306 INFO    ] Waiting 3.83 seconds before fallback handling...
[2026-06-12 07:09:58,517.517 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 07:09:58,519.519 INFO    ] Checking for system updates...
[2026-06-12 07:09:58,541.541 INFO    ] 200
[2026-06-12 07:09:58,543.543 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:09:58,576.576 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 07:09:58,577.577 INFO    ] No update needed
[2026-06-12 07:09:58,579.579 INFO    ] Checking for camera pi updates...
[2026-06-12 07:09:58,600.600 INFO    ] 200
[2026-06-12 07:09:58,602.602 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:09:58,626.626 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 07:09:58,669.669 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 07:09:58,670.670 INFO    ] No camera update needed
[2026-06-12 07:09:58,672.672 INFO    ] Script finished. Safe exiting...
[2026-06-12 07:09:58,673.673 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 07:09:58,676.676 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 07:09:58,680.680 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 07:10:00,720.720 INFO    ] ================================================
[2026-06-12 07:10:00,735.735 INFO    ] Launching Daemon at Fri Jun 12 07:10:00 IST 2026
[2026-06-12 07:10:00,746.746 INFO    ] ================================================
[2026-06-12 07:10:01,105.105 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 07:10:01
[2026-06-12 07:10:01,423.423 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 07:10:01,560.560 INFO    ] Initializing speech engine...
[2026-06-12 07:10:01,563.563 INFO    ] 2026-06-12 07:10:01
[2026-06-12 07:10:01,780.780 INFO    ] 2026-06-12 07:10:01
[2026-06-12 07:10:01,818.818 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 07:10:02,066.066 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 07:10:02,087.087 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 07:10:02,244.244 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 07:10:02,283.283 INFO    ] time= 12/06/2026 07:10:02
[2026-06-12 07:10:02,285.285 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 07:10:02,301.301 INFO    ] Checking for existing commands in stream...
[2026-06-12 07:10:02,377.377 INFO    ] No existing commands found in stream
[2026-06-12 07:10:07,387.387 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 07:10:07,391.391 INFO    ] Waiting 0.19 seconds before fallback handling...
[2026-06-12 07:10:08,669.669 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 07:10:08,671.671 INFO    ] Checking for system updates...
[2026-06-12 07:10:08,692.692 INFO    ] 200
[2026-06-12 07:10:08,693.693 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:10:08,726.726 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 07:10:08,728.728 INFO    ] No update needed
[2026-06-12 07:10:08,729.729 INFO    ] Checking for camera pi updates...
[2026-06-12 07:10:08,752.752 INFO    ] 200
[2026-06-12 07:10:08,753.753 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:10:08,777.777 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 07:10:08,822.822 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 07:10:08,823.823 INFO    ] No camera update needed
[2026-06-12 07:10:08,825.825 INFO    ] Script finished. Safe exiting...
[2026-06-12 07:10:08,826.826 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 07:10:08,829.829 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 07:10:08,832.832 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 07:10:10,873.873 INFO    ] ================================================
[2026-06-12 07:10:10,888.888 INFO    ] Launching Daemon at Fri Jun 12 07:10:10 IST 2026
[2026-06-12 07:10:10,899.899 INFO    ] ================================================
[2026-06-12 07:10:11,240.240 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 07:10:11
[2026-06-12 07:10:11,551.551 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 07:10:11,680.680 INFO    ] Initializing speech engine...
[2026-06-12 07:10:11,685.685 INFO    ] 2026-06-12 07:10:11
[2026-06-12 07:10:11,902.902 INFO    ] 2026-06-12 07:10:11
[2026-06-12 07:10:11,932.932 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 07:10:12,117.117 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 07:10:12,121.121 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 07:10:12,258.258 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 07:10:12,317.317 INFO    ] time= 12/06/2026 07:10:12
[2026-06-12 07:10:12,350.350 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 07:10:12,357.357 INFO    ] Checking for existing commands in stream...
[2026-06-12 07:10:12,425.425 INFO    ] No existing commands found in stream
[2026-06-12 07:10:17,439.439 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 07:10:17,442.442 INFO    ] Waiting 3.68 seconds before fallback handling...
[2026-06-12 07:10:21,473.473 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 07:10:21,475.475 INFO    ] Checking for system updates...
[2026-06-12 07:10:21,495.495 INFO    ] 200
[2026-06-12 07:10:21,497.497 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:10:21,529.529 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 07:10:21,531.531 INFO    ] No update needed
[2026-06-12 07:10:21,532.532 INFO    ] Checking for camera pi updates...
[2026-06-12 07:10:21,553.553 INFO    ] 200
[2026-06-12 07:10:21,554.554 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:10:21,577.577 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 07:10:21,622.622 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 07:10:21,624.624 INFO    ] No camera update needed
[2026-06-12 07:10:21,625.625 INFO    ] Script finished. Safe exiting...
[2026-06-12 07:10:21,626.626 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 07:10:21,629.629 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 07:10:21,632.632 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 07:10:23,671.671 INFO    ] ================================================
[2026-06-12 07:10:23,686.686 INFO    ] Launching Daemon at Fri Jun 12 07:10:23 IST 2026
[2026-06-12 07:10:23,696.696 INFO    ] ================================================
[2026-06-12 07:10:24,031.031 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 07:10:24
[2026-06-12 07:10:24,347.347 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 07:10:24,485.485 INFO    ] Initializing speech engine...
[2026-06-12 07:10:24,495.495 INFO    ] 2026-06-12 07:10:24
[2026-06-12 07:10:24,699.699 INFO    ] 2026-06-12 07:10:24
[2026-06-12 07:10:24,728.728 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 07:10:24,909.909 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 07:10:24,913.913 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 07:10:25,045.045 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 07:10:25,097.097 INFO    ] time= 12/06/2026 07:10:25
[2026-06-12 07:10:25,136.136 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 07:10:25,141.141 INFO    ] Checking for existing commands in stream...
[2026-06-12 07:10:25,212.212 INFO    ] No existing commands found in stream
[2026-06-12 07:10:30,226.226 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 07:10:30,229.229 INFO    ] Waiting 2.36 seconds before fallback handling...
[2026-06-12 07:10:32,936.936 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 07:10:32,937.937 INFO    ] Checking for system updates...
[2026-06-12 07:10:32,958.958 INFO    ] 200
[2026-06-12 07:10:32,959.959 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:10:32,990.990 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 07:10:32,992.992 INFO    ] No update needed
[2026-06-12 07:10:32,993.993 INFO    ] Checking for camera pi updates...
[2026-06-12 07:10:33,014.014 INFO    ] 200
[2026-06-12 07:10:33,015.015 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:10:33,038.038 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 07:10:33,066.066 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 07:10:33,067.067 INFO    ] No camera update needed
[2026-06-12 07:10:33,069.069 INFO    ] Script finished. Safe exiting...
[2026-06-12 07:10:33,070.070 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 07:10:33,073.073 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 07:10:33,076.076 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 07:10:35,116.116 INFO    ] ================================================
[2026-06-12 07:10:35,132.132 INFO    ] Launching Daemon at Fri Jun 12 07:10:35 IST 2026
[2026-06-12 07:10:35,143.143 INFO    ] ================================================
[2026-06-12 07:10:35,496.496 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 07:10:35
[2026-06-12 07:10:35,835.835 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 07:10:35,987.987 INFO    ] Initializing speech engine...
[2026-06-12 07:10:35,993.993 INFO    ] 2026-06-12 07:10:35
[2026-06-12 07:10:36,205.205 INFO    ] 2026-06-12 07:10:36
[2026-06-12 07:10:36,234.234 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 07:10:36,421.421 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 07:10:36,431.431 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 07:10:36,585.585 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 07:10:36,640.640 INFO    ] time= 12/06/2026 07:10:36
[2026-06-12 07:10:36,657.657 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 07:10:36,663.663 INFO    ] Checking for existing commands in stream...
[2026-06-12 07:10:36,731.731 INFO    ] No existing commands found in stream
[2026-06-12 07:10:41,745.745 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 07:10:41,749.749 INFO    ] Waiting 2.57 seconds before fallback handling...
[2026-06-12 07:10:44,707.707 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 07:10:44,709.709 INFO    ] Checking for system updates...
[2026-06-12 07:10:44,730.730 INFO    ] 200
[2026-06-12 07:10:44,731.731 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:10:44,761.761 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 07:10:44,763.763 INFO    ] No update needed
[2026-06-12 07:10:44,764.764 INFO    ] Checking for camera pi updates...
[2026-06-12 07:10:44,787.787 INFO    ] 200
[2026-06-12 07:10:44,788.788 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:10:44,811.811 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 07:10:44,848.848 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 07:10:44,849.849 INFO    ] No camera update needed
[2026-06-12 07:10:44,851.851 INFO    ] Script finished. Safe exiting...
[2026-06-12 07:10:44,852.852 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 07:10:44,855.855 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 07:10:44,858.858 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 07:10:46,896.896 INFO    ] ================================================
[2026-06-12 07:10:46,911.911 INFO    ] Launching Daemon at Fri Jun 12 07:10:46 IST 2026
[2026-06-12 07:10:46,923.923 INFO    ] ================================================
[2026-06-12 07:10:47,281.281 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 07:10:47
[2026-06-12 07:10:47,595.595 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 07:10:47,739.739 INFO    ] Initializing speech engine...
[2026-06-12 07:10:47,744.744 INFO    ] 2026-06-12 07:10:47
[2026-06-12 07:10:47,950.950 INFO    ] 2026-06-12 07:10:47
[2026-06-12 07:10:47,978.978 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 07:10:48,165.165 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 07:10:48,174.174 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 07:10:48,307.307 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 07:10:48,374.374 INFO    ] time= 12/06/2026 07:10:48
[2026-06-12 07:10:48,398.398 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 07:10:48,405.405 INFO    ] Checking for existing commands in stream...
[2026-06-12 07:10:48,473.473 INFO    ] No existing commands found in stream
[2026-06-12 07:10:53,482.482 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 07:10:53,485.485 INFO    ] Waiting 0.15 seconds before fallback handling...
[2026-06-12 07:10:53,985.985 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 07:10:53,986.986 INFO    ] Checking for system updates...
[2026-06-12 07:10:54,008.008 INFO    ] 200
[2026-06-12 07:10:54,010.010 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:10:54,041.041 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 07:10:54,042.042 INFO    ] No update needed
[2026-06-12 07:10:54,043.043 INFO    ] Checking for camera pi updates...
[2026-06-12 07:10:54,066.066 INFO    ] 200
[2026-06-12 07:10:54,068.068 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:10:54,093.093 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 07:10:54,131.131 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 07:10:54,132.132 INFO    ] No camera update needed
[2026-06-12 07:10:54,134.134 INFO    ] Script finished. Safe exiting...
[2026-06-12 07:10:54,135.135 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 07:10:54,138.138 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 07:10:54,141.141 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 07:10:56,179.179 INFO    ] ================================================
[2026-06-12 07:10:56,195.195 INFO    ] Launching Daemon at Fri Jun 12 07:10:56 IST 2026
[2026-06-12 07:10:56,205.205 INFO    ] ================================================
[2026-06-12 07:10:56,578.578 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 07:10:56
[2026-06-12 07:10:56,918.918 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 07:10:57,073.073 INFO    ] Initializing speech engine...
[2026-06-12 07:10:57,077.077 INFO    ] 2026-06-12 07:10:57
[2026-06-12 07:10:57,288.288 INFO    ] 2026-06-12 07:10:57
[2026-06-12 07:10:57,316.316 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 07:10:57,466.466 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 07:10:57,467.467 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 07:10:57,629.629 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 07:10:57,658.658 INFO    ] time= 12/06/2026 07:10:57
[2026-06-12 07:10:57,728.728 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 07:10:57,752.752 INFO    ] Checking for existing commands in stream...
[2026-06-12 07:10:57,825.825 INFO    ] No existing commands found in stream
[2026-06-12 07:11:02,833.833 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 07:11:02,836.836 INFO    ] Waiting 0.36 seconds before fallback handling...
[2026-06-12 07:11:03,536.536 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 07:11:03,538.538 INFO    ] Checking for system updates...
[2026-06-12 07:11:03,560.560 INFO    ] 200
[2026-06-12 07:11:03,562.562 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:11:03,594.594 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 07:11:03,596.596 INFO    ] No update needed
[2026-06-12 07:11:03,597.597 INFO    ] Checking for camera pi updates...
[2026-06-12 07:11:03,617.617 INFO    ] 200
[2026-06-12 07:11:03,618.618 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:11:03,644.644 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 07:11:03,791.791 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 07:11:03,792.792 INFO    ] No camera update needed
[2026-06-12 07:11:03,793.793 INFO    ] Script finished. Safe exiting...
[2026-06-12 07:11:03,794.794 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 07:11:03,797.797 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 07:11:03,800.800 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 07:11:05,838.838 INFO    ] ================================================
[2026-06-12 07:11:05,853.853 INFO    ] Launching Daemon at Fri Jun 12 07:11:05 IST 2026
[2026-06-12 07:11:05,864.864 INFO    ] ================================================
[2026-06-12 07:11:06,233.233 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 07:11:06
[2026-06-12 07:11:06,550.550 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 07:11:06,690.690 INFO    ] Initializing speech engine...
[2026-06-12 07:11:06,703.703 INFO    ] 2026-06-12 07:11:06
[2026-06-12 07:11:06,923.923 INFO    ] 2026-06-12 07:11:06
[2026-06-12 07:11:06,954.954 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 07:11:07,088.088 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 07:11:07,146.146 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 07:11:07,299.299 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 07:11:07,351.351 INFO    ] time= 12/06/2026 07:11:07
[2026-06-12 07:11:07,385.385 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 07:11:07,409.409 INFO    ] Checking for existing commands in stream...
[2026-06-12 07:11:07,485.485 INFO    ] No existing commands found in stream
[2026-06-12 07:11:12,496.496 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 07:11:12,499.499 INFO    ] Waiting 2.91 seconds before fallback handling...
[2026-06-12 07:11:15,755.755 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 07:11:15,757.757 INFO    ] Checking for system updates...
[2026-06-12 07:11:15,778.778 INFO    ] 200
[2026-06-12 07:11:15,779.779 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:11:15,814.814 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 07:11:15,815.815 INFO    ] No update needed
[2026-06-12 07:11:15,817.817 INFO    ] Checking for camera pi updates...
[2026-06-12 07:11:15,837.837 INFO    ] 200
[2026-06-12 07:11:15,839.839 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:11:15,862.862 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 07:11:15,894.894 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 07:11:15,895.895 INFO    ] No camera update needed
[2026-06-12 07:11:15,896.896 INFO    ] Script finished. Safe exiting...
[2026-06-12 07:11:15,898.898 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 07:11:15,901.901 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 07:11:15,904.904 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 07:11:17,942.942 INFO    ] ================================================
[2026-06-12 07:11:17,957.957 INFO    ] Launching Daemon at Fri Jun 12 07:11:17 IST 2026
[2026-06-12 07:11:17,968.968 INFO    ] ================================================
[2026-06-12 07:11:18,321.321 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 07:11:18
[2026-06-12 07:11:18,638.638 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 07:11:18,777.777 INFO    ] Initializing speech engine...
[2026-06-12 07:11:18,787.787 INFO    ] 2026-06-12 07:11:18
[2026-06-12 07:11:18,991.991 INFO    ] 2026-06-12 07:11:18
[2026-06-12 07:11:19,021.021 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 07:11:19,204.204 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 07:11:19,207.207 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 07:11:19,344.344 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 07:11:19,411.411 INFO    ] time= 12/06/2026 07:11:19
[2026-06-12 07:11:19,434.434 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 07:11:19,441.441 INFO    ] Checking for existing commands in stream...
[2026-06-12 07:11:19,508.508 INFO    ] No existing commands found in stream
[2026-06-12 07:11:24,522.522 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 07:11:24,525.525 INFO    ] Waiting 2.38 seconds before fallback handling...
[2026-06-12 07:11:27,308.308 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 07:11:27,310.310 INFO    ] Checking for system updates...
[2026-06-12 07:11:27,331.331 INFO    ] 200
[2026-06-12 07:11:27,332.332 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:11:27,367.367 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 07:11:27,369.369 INFO    ] No update needed
[2026-06-12 07:11:27,370.370 INFO    ] Checking for camera pi updates...
[2026-06-12 07:11:27,391.391 INFO    ] 200
[2026-06-12 07:11:27,392.392 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:11:27,416.416 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 07:11:27,460.460 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 07:11:27,462.462 INFO    ] No camera update needed
[2026-06-12 07:11:27,463.463 INFO    ] Script finished. Safe exiting...
[2026-06-12 07:11:27,465.465 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 07:11:27,468.468 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 07:11:27,471.471 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 07:11:29,510.510 INFO    ] ================================================
[2026-06-12 07:11:29,525.525 INFO    ] Launching Daemon at Fri Jun 12 07:11:29 IST 2026
[2026-06-12 07:11:29,536.536 INFO    ] ================================================
[2026-06-12 07:11:29,899.899 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 07:11:29
[2026-06-12 07:11:30,214.214 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 07:11:30,346.346 INFO    ] Initializing speech engine...
[2026-06-12 07:11:30,350.350 INFO    ] 2026-06-12 07:11:30
[2026-06-12 07:11:30,568.568 INFO    ] 2026-06-12 07:11:30
[2026-06-12 07:11:30,596.596 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 07:11:30,781.781 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 07:11:30,785.785 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 07:11:30,921.921 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 07:11:30,991.991 INFO    ] time= 12/06/2026 07:11:30
[2026-06-12 07:11:31,016.016 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 07:11:31,022.022 INFO    ] Checking for existing commands in stream...
[2026-06-12 07:11:31,090.090 INFO    ] No existing commands found in stream
[2026-06-12 07:11:36,105.105 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 07:11:36,108.108 INFO    ] Waiting 3.87 seconds before fallback handling...
[2026-06-12 07:11:40,345.345 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 07:11:40,346.346 INFO    ] Checking for system updates...
[2026-06-12 07:11:40,367.367 INFO    ] 200
[2026-06-12 07:11:40,369.369 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:11:40,402.402 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 07:11:40,403.403 INFO    ] No update needed
[2026-06-12 07:11:40,405.405 INFO    ] Checking for camera pi updates...
[2026-06-12 07:11:40,425.425 INFO    ] 200
[2026-06-12 07:11:40,427.427 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:11:40,450.450 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 07:11:40,495.495 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 07:11:40,496.496 INFO    ] No camera update needed
[2026-06-12 07:11:40,497.497 INFO    ] Script finished. Safe exiting...
[2026-06-12 07:11:40,499.499 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 07:11:40,502.502 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 07:11:40,504.504 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 07:11:42,543.543 INFO    ] ================================================
[2026-06-12 07:11:42,557.557 INFO    ] Launching Daemon at Fri Jun 12 07:11:42 IST 2026
[2026-06-12 07:11:42,568.568 INFO    ] ================================================
[2026-06-12 07:11:42,933.933 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 07:11:42
[2026-06-12 07:11:43,243.243 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 07:11:43,373.373 INFO    ] Initializing speech engine...
[2026-06-12 07:11:43,377.377 INFO    ] 2026-06-12 07:11:43
[2026-06-12 07:11:43,596.596 INFO    ] 2026-06-12 07:11:43
[2026-06-12 07:11:43,625.625 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 07:11:43,811.811 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 07:11:43,815.815 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 07:11:43,946.946 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 07:11:44,007.007 INFO    ] time= 12/06/2026 07:11:43
[2026-06-12 07:11:44,042.042 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 07:11:44,048.048 INFO    ] Checking for existing commands in stream...
[2026-06-12 07:11:44,118.118 INFO    ] No existing commands found in stream
[2026-06-12 07:11:49,128.128 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 07:11:49,131.131 INFO    ] Waiting 0.02 seconds before fallback handling...
[2026-06-12 07:11:49,496.496 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 07:11:49,498.498 INFO    ] Checking for system updates...
[2026-06-12 07:11:49,521.521 INFO    ] 200
[2026-06-12 07:11:49,523.523 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:11:49,557.557 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 07:11:49,558.558 INFO    ] No update needed
[2026-06-12 07:11:49,560.560 INFO    ] Checking for camera pi updates...
[2026-06-12 07:11:49,582.582 INFO    ] 200
[2026-06-12 07:11:49,583.583 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:11:49,611.611 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 07:11:49,656.656 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 07:11:49,658.658 INFO    ] No camera update needed
[2026-06-12 07:11:49,659.659 INFO    ] Script finished. Safe exiting...
[2026-06-12 07:11:49,660.660 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 07:11:49,663.663 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 07:11:49,666.666 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 07:11:51,706.706 INFO    ] ================================================
[2026-06-12 07:11:51,721.721 INFO    ] Launching Daemon at Fri Jun 12 07:11:51 IST 2026
[2026-06-12 07:11:51,732.732 INFO    ] ================================================
[2026-06-12 07:11:52,064.064 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 07:11:52
[2026-06-12 07:11:52,377.377 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 07:11:52,520.520 INFO    ] Initializing speech engine...
[2026-06-12 07:11:52,525.525 INFO    ] 2026-06-12 07:11:52
[2026-06-12 07:11:52,731.731 INFO    ] 2026-06-12 07:11:52
[2026-06-12 07:11:52,760.760 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 07:11:52,945.945 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 07:11:52,955.955 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 07:11:53,107.107 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 07:11:53,155.155 INFO    ] time= 12/06/2026 07:11:53
[2026-06-12 07:11:53,178.178 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 07:11:53,185.185 INFO    ] Checking for existing commands in stream...
[2026-06-12 07:11:53,252.252 INFO    ] No existing commands found in stream
[2026-06-12 07:11:58,261.261 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 07:11:58,263.263 INFO    ] Waiting 3.74 seconds before fallback handling...
[2026-06-12 07:12:02,339.339 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 07:12:02,341.341 INFO    ] Checking for system updates...
[2026-06-12 07:12:02,366.366 INFO    ] 200
[2026-06-12 07:12:02,367.367 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:12:02,411.411 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 07:12:02,413.413 INFO    ] No update needed
[2026-06-12 07:12:02,415.415 INFO    ] Checking for camera pi updates...
[2026-06-12 07:12:02,440.440 INFO    ] 200
[2026-06-12 07:12:02,441.441 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:12:02,474.474 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 07:12:02,499.499 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 07:12:02,500.500 INFO    ] No camera update needed
[2026-06-12 07:12:02,501.501 INFO    ] Script finished. Safe exiting...
[2026-06-12 07:12:02,503.503 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 07:12:02,506.506 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 07:12:02,508.508 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 07:12:04,549.549 INFO    ] ================================================
[2026-06-12 07:12:04,565.565 INFO    ] Launching Daemon at Fri Jun 12 07:12:04 IST 2026
[2026-06-12 07:12:04,575.575 INFO    ] ================================================
[2026-06-12 07:12:04,926.926 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 07:12:04
[2026-06-12 07:12:05,245.245 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 07:12:05,383.383 INFO    ] Initializing speech engine...
[2026-06-12 07:12:05,393.393 INFO    ] 2026-06-12 07:12:05
[2026-06-12 07:12:05,598.598 INFO    ] 2026-06-12 07:12:05
[2026-06-12 07:12:05,627.627 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 07:12:05,823.823 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 07:12:05,833.833 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 07:12:05,963.963 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 07:12:06,030.030 INFO    ] time= 12/06/2026 07:12:05
[2026-06-12 07:12:06,054.054 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 07:12:06,060.060 INFO    ] Checking for existing commands in stream...
[2026-06-12 07:12:06,164.164 INFO    ] No existing commands found in stream
[2026-06-12 07:12:11,178.178 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 07:12:11,181.181 INFO    ] Waiting 2.32 seconds before fallback handling...
[2026-06-12 07:12:13,842.842 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 07:12:13,844.844 INFO    ] Checking for system updates...
[2026-06-12 07:12:13,866.866 INFO    ] 200
[2026-06-12 07:12:13,867.867 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:12:13,898.898 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 07:12:13,899.899 INFO    ] No update needed
[2026-06-12 07:12:13,901.901 INFO    ] Checking for camera pi updates...
[2026-06-12 07:12:13,922.922 INFO    ] 200
[2026-06-12 07:12:13,923.923 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:12:13,946.946 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 07:12:13,986.986 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 07:12:13,987.987 INFO    ] No camera update needed
[2026-06-12 07:12:13,989.989 INFO    ] Script finished. Safe exiting...
[2026-06-12 07:12:13,990.990 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 07:12:13,993.993 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 07:12:13,996.996 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 07:12:16,036.036 INFO    ] ================================================
[2026-06-12 07:12:16,052.052 INFO    ] Launching Daemon at Fri Jun 12 07:12:16 IST 2026
[2026-06-12 07:12:16,063.063 INFO    ] ================================================
[2026-06-12 07:12:16,399.399 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 07:12:16
[2026-06-12 07:12:16,710.710 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 07:12:16,841.841 INFO    ] Initializing speech engine...
[2026-06-12 07:12:16,844.844 INFO    ] 2026-06-12 07:12:16
[2026-06-12 07:12:17,063.063 INFO    ] 2026-06-12 07:12:17
[2026-06-12 07:12:17,092.092 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 07:12:17,225.225 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 07:12:17,279.279 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 07:12:17,418.418 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 07:12:17,486.486 INFO    ] time= 12/06/2026 07:12:17
[2026-06-12 07:12:17,510.510 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 07:12:17,512.512 INFO    ] Checking for existing commands in stream...
[2026-06-12 07:12:17,584.584 INFO    ] No existing commands found in stream
[2026-06-12 07:12:22,593.593 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 07:12:22,596.596 INFO    ] Waiting 2.85 seconds before fallback handling...
[2026-06-12 07:12:25,822.822 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 07:12:25,823.823 INFO    ] Checking for system updates...
[2026-06-12 07:12:25,845.845 INFO    ] 200
[2026-06-12 07:12:25,847.847 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:12:25,877.877 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 07:12:25,878.878 INFO    ] No update needed
[2026-06-12 07:12:25,880.880 INFO    ] Checking for camera pi updates...
[2026-06-12 07:12:25,901.901 INFO    ] 200
[2026-06-12 07:12:25,903.903 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:12:25,929.929 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 07:12:25,974.974 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 07:12:25,975.975 INFO    ] No camera update needed
[2026-06-12 07:12:25,977.977 INFO    ] Script finished. Safe exiting...
[2026-06-12 07:12:25,978.978 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 07:12:25,982.982 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 07:12:25,984.984 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 07:12:28,027.027 INFO    ] ================================================
[2026-06-12 07:12:28,044.044 INFO    ] Launching Daemon at Fri Jun 12 07:12:28 IST 2026
[2026-06-12 07:12:28,055.055 INFO    ] ================================================
[2026-06-12 07:12:28,416.416 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 07:12:28
[2026-06-12 07:12:28,728.728 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 07:12:28,858.858 INFO    ] Initializing speech engine...
[2026-06-12 07:12:28,866.866 INFO    ] 2026-06-12 07:12:28
[2026-06-12 07:12:29,085.085 INFO    ] 2026-06-12 07:12:29
[2026-06-12 07:12:29,113.113 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 07:12:29,255.255 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 07:12:29,300.300 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 07:12:29,439.439 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 07:12:29,506.506 INFO    ] time= 12/06/2026 07:12:29
[2026-06-12 07:12:29,530.530 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 07:12:29,537.537 INFO    ] Checking for existing commands in stream...
[2026-06-12 07:12:29,604.604 INFO    ] No existing commands found in stream
[2026-06-12 07:12:34,619.619 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 07:12:34,622.622 INFO    ] Waiting 0.26 seconds before fallback handling...
[2026-06-12 07:12:35,277.277 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 07:12:35,279.279 INFO    ] Checking for system updates...
[2026-06-12 07:12:35,300.300 INFO    ] 200
[2026-06-12 07:12:35,301.301 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:12:35,332.332 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 07:12:35,333.333 INFO    ] No update needed
[2026-06-12 07:12:35,335.335 INFO    ] Checking for camera pi updates...
[2026-06-12 07:12:35,356.356 INFO    ] 200
[2026-06-12 07:12:35,358.358 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:12:35,383.383 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 07:12:35,419.419 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 07:12:35,421.421 INFO    ] No camera update needed
[2026-06-12 07:12:35,422.422 INFO    ] Script finished. Safe exiting...
[2026-06-12 07:12:35,423.423 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 07:12:35,426.426 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 07:12:35,429.429 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 07:12:37,468.468 INFO    ] ================================================
[2026-06-12 07:12:37,483.483 INFO    ] Launching Daemon at Fri Jun 12 07:12:37 IST 2026
[2026-06-12 07:12:37,494.494 INFO    ] ================================================
[2026-06-12 07:12:37,836.836 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 07:12:37
[2026-06-12 07:12:38,152.152 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 07:12:38,283.283 INFO    ] Initializing speech engine...
[2026-06-12 07:12:38,287.287 INFO    ] 2026-06-12 07:12:38
[2026-06-12 07:12:38,503.503 INFO    ] 2026-06-12 07:12:38
[2026-06-12 07:12:38,532.532 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 07:12:38,670.670 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 07:12:38,717.717 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 07:12:38,855.855 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 07:12:38,919.919 INFO    ] time= 12/06/2026 07:12:38
[2026-06-12 07:12:38,947.947 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 07:12:38,953.953 INFO    ] Checking for existing commands in stream...
[2026-06-12 07:12:39,019.019 INFO    ] No existing commands found in stream
[2026-06-12 07:12:44,028.028 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 07:12:44,031.031 INFO    ] Waiting 0.90 seconds before fallback handling...
[2026-06-12 07:12:45,302.302 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 07:12:45,304.304 INFO    ] Checking for system updates...
[2026-06-12 07:12:45,326.326 INFO    ] 200
[2026-06-12 07:12:45,327.327 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:12:45,357.357 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 07:12:45,358.358 INFO    ] No update needed
[2026-06-12 07:12:45,360.360 INFO    ] Checking for camera pi updates...
[2026-06-12 07:12:45,381.381 INFO    ] 200
[2026-06-12 07:12:45,382.382 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:12:45,407.407 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 07:12:45,434.434 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 07:12:45,436.436 INFO    ] No camera update needed
[2026-06-12 07:12:45,437.437 INFO    ] Script finished. Safe exiting...
[2026-06-12 07:12:45,438.438 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 07:12:45,441.441 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 07:12:45,444.444 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 07:12:47,483.483 INFO    ] ================================================
[2026-06-12 07:12:47,498.498 INFO    ] Launching Daemon at Fri Jun 12 07:12:47 IST 2026
[2026-06-12 07:12:47,509.509 INFO    ] ================================================
[2026-06-12 07:12:47,845.845 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 07:12:47
[2026-06-12 07:12:48,155.155 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 07:12:48,297.297 INFO    ] Initializing speech engine...
[2026-06-12 07:12:48,303.303 INFO    ] 2026-06-12 07:12:48
[2026-06-12 07:12:48,508.508 INFO    ] 2026-06-12 07:12:48
[2026-06-12 07:12:48,537.537 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 07:12:48,723.723 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 07:12:48,727.727 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 07:12:48,857.857 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 07:12:48,914.914 INFO    ] time= 12/06/2026 07:12:48
[2026-06-12 07:12:48,950.950 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 07:12:48,961.961 INFO    ] Checking for existing commands in stream...
[2026-06-12 07:12:49,033.033 INFO    ] No existing commands found in stream
[2026-06-12 07:12:54,043.043 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 07:12:54,046.046 INFO    ] Waiting 1.33 seconds before fallback handling...
[2026-06-12 07:12:55,749.749 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 07:12:55,751.751 INFO    ] Checking for system updates...
[2026-06-12 07:12:55,773.773 INFO    ] 200
[2026-06-12 07:12:55,774.774 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:12:55,810.810 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 07:12:55,811.811 INFO    ] No update needed
[2026-06-12 07:12:55,813.813 INFO    ] Checking for camera pi updates...
[2026-06-12 07:12:55,835.835 INFO    ] 200
[2026-06-12 07:12:55,837.837 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:12:55,863.863 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 07:12:55,907.907 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 07:12:55,908.908 INFO    ] No camera update needed
[2026-06-12 07:12:55,910.910 INFO    ] Script finished. Safe exiting...
[2026-06-12 07:12:55,911.911 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 07:12:55,915.915 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 07:12:55,917.917 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 07:12:57,957.957 INFO    ] ================================================
[2026-06-12 07:12:57,973.973 INFO    ] Launching Daemon at Fri Jun 12 07:12:57 IST 2026
[2026-06-12 07:12:57,984.984 INFO    ] ================================================
[2026-06-12 07:12:58,316.316 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 07:12:58
[2026-06-12 07:12:58,633.633 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 07:12:58,765.765 INFO    ] Initializing speech engine...
[2026-06-12 07:12:58,778.778 INFO    ] 2026-06-12 07:12:58
[2026-06-12 07:12:58,984.984 INFO    ] 2026-06-12 07:12:58
[2026-06-12 07:12:59,014.014 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 07:12:59,140.140 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 07:12:59,197.197 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 07:12:59,328.328 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 07:12:59,389.389 INFO    ] time= 12/06/2026 07:12:59
[2026-06-12 07:12:59,423.423 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 07:12:59,428.428 INFO    ] Checking for existing commands in stream...
[2026-06-12 07:12:59,498.498 INFO    ] No existing commands found in stream
[2026-06-12 07:13:04,508.508 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 07:13:04,510.510 INFO    ] Waiting 2.37 seconds before fallback handling...
[2026-06-12 07:13:07,277.277 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 07:13:07,279.279 INFO    ] Checking for system updates...
[2026-06-12 07:13:07,301.301 INFO    ] 200
[2026-06-12 07:13:07,302.302 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:13:07,334.334 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 07:13:07,336.336 INFO    ] No update needed
[2026-06-12 07:13:07,337.337 INFO    ] Checking for camera pi updates...
[2026-06-12 07:13:07,357.357 INFO    ] 200
[2026-06-12 07:13:07,359.359 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:13:07,383.383 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 07:13:07,525.525 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 07:13:07,527.527 INFO    ] No camera update needed
[2026-06-12 07:13:07,528.528 INFO    ] Script finished. Safe exiting...
[2026-06-12 07:13:07,529.529 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 07:13:07,533.533 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 07:13:07,535.535 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 07:13:09,577.577 INFO    ] ================================================
[2026-06-12 07:13:09,592.592 INFO    ] Launching Daemon at Fri Jun 12 07:13:09 IST 2026
[2026-06-12 07:13:09,603.603 INFO    ] ================================================
[2026-06-12 07:13:09,963.963 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 07:13:09
[2026-06-12 07:13:10,276.276 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 07:13:10,410.410 INFO    ] Initializing speech engine...
[2026-06-12 07:13:10,418.418 INFO    ] 2026-06-12 07:13:10
[2026-06-12 07:13:10,641.641 INFO    ] 2026-06-12 07:13:10
[2026-06-12 07:13:10,672.672 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 07:13:10,869.869 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 07:13:10,873.873 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 07:13:11,012.012 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 07:13:11,058.058 INFO    ] time= 12/06/2026 07:13:11
[2026-06-12 07:13:11,096.096 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 07:13:11,119.119 INFO    ] Checking for existing commands in stream...
[2026-06-12 07:13:11,221.221 INFO    ] No existing commands found in stream
[2026-06-12 07:13:16,230.230 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 07:13:16,233.233 INFO    ] Waiting 0.86 seconds before fallback handling...
[2026-06-12 07:13:17,457.457 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 07:13:17,459.459 INFO    ] Checking for system updates...
[2026-06-12 07:13:17,479.479 INFO    ] 200
[2026-06-12 07:13:17,481.481 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:13:17,513.513 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 07:13:17,514.514 INFO    ] No update needed
[2026-06-12 07:13:17,516.516 INFO    ] Checking for camera pi updates...
[2026-06-12 07:13:17,536.536 INFO    ] 200
[2026-06-12 07:13:17,537.537 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:13:17,561.561 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 07:13:17,599.599 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 07:13:17,601.601 INFO    ] No camera update needed
[2026-06-12 07:13:17,602.602 INFO    ] Script finished. Safe exiting...
[2026-06-12 07:13:17,603.603 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 07:13:17,606.606 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 07:13:17,609.609 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 07:13:19,647.647 INFO    ] ================================================
[2026-06-12 07:13:19,662.662 INFO    ] Launching Daemon at Fri Jun 12 07:13:19 IST 2026
[2026-06-12 07:13:19,672.672 INFO    ] ================================================
[2026-06-12 07:13:20,054.054 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 07:13:20
[2026-06-12 07:13:20,391.391 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 07:13:20,537.537 INFO    ] Initializing speech engine...
[2026-06-12 07:13:20,547.547 INFO    ] 2026-06-12 07:13:20
[2026-06-12 07:13:20,758.758 INFO    ] 2026-06-12 07:13:20
[2026-06-12 07:13:20,787.787 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 07:13:20,974.974 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 07:13:20,978.978 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 07:13:21,127.127 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 07:13:21,185.185 INFO    ] time= 12/06/2026 07:13:21
[2026-06-12 07:13:21,208.208 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 07:13:21,215.215 INFO    ] Checking for existing commands in stream...
[2026-06-12 07:13:21,283.283 INFO    ] No existing commands found in stream
[2026-06-12 07:13:26,298.298 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 07:13:26,301.301 INFO    ] Waiting 1.46 seconds before fallback handling...
[2026-06-12 07:13:28,117.117 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 07:13:28,119.119 INFO    ] Checking for system updates...
[2026-06-12 07:13:28,143.143 INFO    ] 200
[2026-06-12 07:13:28,145.145 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:13:28,175.175 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 07:13:28,177.177 INFO    ] No update needed
[2026-06-12 07:13:28,178.178 INFO    ] Checking for camera pi updates...
[2026-06-12 07:13:28,203.203 INFO    ] 200
[2026-06-12 07:13:28,204.204 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:13:28,231.231 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 07:13:28,270.270 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 07:13:28,271.271 INFO    ] No camera update needed
[2026-06-12 07:13:28,273.273 INFO    ] Script finished. Safe exiting...
[2026-06-12 07:13:28,274.274 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 07:13:28,277.277 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 07:13:28,280.280 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 07:13:30,319.319 INFO    ] ================================================
[2026-06-12 07:13:30,334.334 INFO    ] Launching Daemon at Fri Jun 12 07:13:30 IST 2026
[2026-06-12 07:13:30,344.344 INFO    ] ================================================
[2026-06-12 07:13:30,728.728 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 07:13:30
[2026-06-12 07:13:31,062.062 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 07:13:31,212.212 INFO    ] Initializing speech engine...
[2026-06-12 07:13:31,218.218 INFO    ] 2026-06-12 07:13:31
[2026-06-12 07:13:31,423.423 INFO    ] 2026-06-12 07:13:31
[2026-06-12 07:13:31,452.452 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 07:13:31,634.634 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 07:13:31,644.644 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 07:13:31,773.773 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 07:13:31,838.838 INFO    ] time= 12/06/2026 07:13:31
[2026-06-12 07:13:31,865.865 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 07:13:31,873.873 INFO    ] Checking for existing commands in stream...
[2026-06-12 07:13:31,953.953 INFO    ] No existing commands found in stream
[2026-06-12 07:13:36,962.962 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 07:13:36,965.965 INFO    ] Waiting 1.74 seconds before fallback handling...
[2026-06-12 07:13:39,078.078 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 07:13:39,079.079 INFO    ] Checking for system updates...
[2026-06-12 07:13:39,101.101 INFO    ] 200
[2026-06-12 07:13:39,103.103 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:13:39,135.135 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 07:13:39,137.137 INFO    ] No update needed
[2026-06-12 07:13:39,138.138 INFO    ] Checking for camera pi updates...
[2026-06-12 07:13:39,162.162 INFO    ] 200
[2026-06-12 07:13:39,163.163 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:13:39,193.193 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 07:13:39,242.242 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 07:13:39,243.243 INFO    ] No camera update needed
[2026-06-12 07:13:39,244.244 INFO    ] Script finished. Safe exiting...
[2026-06-12 07:13:39,245.245 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 07:13:39,248.248 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 07:13:39,251.251 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 07:13:41,289.289 INFO    ] ================================================
[2026-06-12 07:13:41,304.304 INFO    ] Launching Daemon at Fri Jun 12 07:13:41 IST 2026
[2026-06-12 07:13:41,315.315 INFO    ] ================================================
[2026-06-12 07:13:41,664.664 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 07:13:41
[2026-06-12 07:13:41,980.980 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 07:13:42,109.109 INFO    ] Initializing speech engine...
[2026-06-12 07:13:42,114.114 INFO    ] 2026-06-12 07:13:42
[2026-06-12 07:13:42,329.329 INFO    ] 2026-06-12 07:13:42
[2026-06-12 07:13:42,358.358 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 07:13:42,541.541 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 07:13:42,545.545 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 07:13:42,677.677 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 07:13:42,734.734 INFO    ] time= 12/06/2026 07:13:42
[2026-06-12 07:13:42,771.771 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 07:13:42,773.773 INFO    ] Checking for existing commands in stream...
[2026-06-12 07:13:42,842.842 INFO    ] No existing commands found in stream
[2026-06-12 07:13:47,853.853 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 07:13:47,856.856 INFO    ] Waiting 3.69 seconds before fallback handling...
[2026-06-12 07:13:51,895.895 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 07:13:51,896.896 INFO    ] Checking for system updates...
[2026-06-12 07:13:51,918.918 INFO    ] 200
[2026-06-12 07:13:51,919.919 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:13:51,950.950 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 07:13:51,951.951 INFO    ] No update needed
[2026-06-12 07:13:51,952.952 INFO    ] Checking for camera pi updates...
[2026-06-12 07:13:51,974.974 INFO    ] 200
[2026-06-12 07:13:51,976.976 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:13:52,000.000 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 07:13:52,037.037 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 07:13:52,038.038 INFO    ] No camera update needed
[2026-06-12 07:13:52,040.040 INFO    ] Script finished. Safe exiting...
[2026-06-12 07:13:52,041.041 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 07:13:52,044.044 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 07:13:52,047.047 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 07:13:54,087.087 INFO    ] ================================================
[2026-06-12 07:13:54,102.102 INFO    ] Launching Daemon at Fri Jun 12 07:13:54 IST 2026
[2026-06-12 07:13:54,113.113 INFO    ] ================================================
[2026-06-12 07:13:54,474.474 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 07:13:54
[2026-06-12 07:13:54,786.786 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 07:13:54,919.919 INFO    ] Initializing speech engine...
[2026-06-12 07:13:54,923.923 INFO    ] 2026-06-12 07:13:54
[2026-06-12 07:13:55,151.151 INFO    ] 2026-06-12 07:13:55
[2026-06-12 07:13:55,182.182 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 07:13:55,379.379 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 07:13:55,382.382 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 07:13:55,521.521 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 07:13:55,583.583 INFO    ] time= 12/06/2026 07:13:55
[2026-06-12 07:13:55,617.617 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 07:13:55,628.628 INFO    ] Checking for existing commands in stream...
[2026-06-12 07:13:55,703.703 INFO    ] No existing commands found in stream
[2026-06-12 07:14:00,713.713 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 07:14:00,716.716 INFO    ] Waiting 1.61 seconds before fallback handling...
[2026-06-12 07:14:02,660.660 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 07:14:02,662.662 INFO    ] Checking for system updates...
[2026-06-12 07:14:02,686.686 INFO    ] 200
[2026-06-12 07:14:02,688.688 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:14:02,727.727 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 07:14:02,729.729 INFO    ] No update needed
[2026-06-12 07:14:02,731.731 INFO    ] Checking for camera pi updates...
[2026-06-12 07:14:02,754.754 INFO    ] 200
[2026-06-12 07:14:02,756.756 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:14:02,793.793 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 07:14:02,825.825 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 07:14:02,827.827 INFO    ] No camera update needed
[2026-06-12 07:14:02,830.830 INFO    ] Script finished. Safe exiting...
[2026-06-12 07:14:02,832.832 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 07:14:02,836.836 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 07:14:02,841.841 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 07:14:04,882.882 INFO    ] ================================================
[2026-06-12 07:14:04,897.897 INFO    ] Launching Daemon at Fri Jun 12 07:14:04 IST 2026
[2026-06-12 07:14:04,908.908 INFO    ] ================================================
[2026-06-12 07:14:05,271.271 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 07:14:05
[2026-06-12 07:14:05,607.607 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 07:14:05,758.758 INFO    ] Initializing speech engine...
[2026-06-12 07:14:05,764.764 INFO    ] 2026-06-12 07:14:05
[2026-06-12 07:14:05,974.974 INFO    ] 2026-06-12 07:14:05
[2026-06-12 07:14:06,003.003 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 07:14:06,195.195 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 07:14:06,213.213 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 07:14:06,365.365 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 07:14:06,408.408 INFO    ] time= 12/06/2026 07:14:06
[2026-06-12 07:14:06,430.430 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 07:14:06,436.436 INFO    ] Checking for existing commands in stream...
[2026-06-12 07:14:06,503.503 INFO    ] No existing commands found in stream
[2026-06-12 07:14:11,512.512 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 07:14:11,515.515 INFO    ] Waiting 0.47 seconds before fallback handling...
[2026-06-12 07:14:12,347.347 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 07:14:12,349.349 INFO    ] Checking for system updates...
[2026-06-12 07:14:12,371.371 INFO    ] 200
[2026-06-12 07:14:12,372.372 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:14:12,406.406 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 07:14:12,407.407 INFO    ] No update needed
[2026-06-12 07:14:12,409.409 INFO    ] Checking for camera pi updates...
[2026-06-12 07:14:12,429.429 INFO    ] 200
[2026-06-12 07:14:12,431.431 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:14:12,458.458 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 07:14:12,500.500 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 07:14:12,502.502 INFO    ] No camera update needed
[2026-06-12 07:14:12,503.503 INFO    ] Script finished. Safe exiting...
[2026-06-12 07:14:12,504.504 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 07:14:12,507.507 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 07:14:12,511.511 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 07:14:14,549.549 INFO    ] ================================================
[2026-06-12 07:14:14,564.564 INFO    ] Launching Daemon at Fri Jun 12 07:14:14 IST 2026
[2026-06-12 07:14:14,574.574 INFO    ] ================================================
[2026-06-12 07:14:14,939.939 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 07:14:14
[2026-06-12 07:14:15,255.255 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 07:14:15,393.393 INFO    ] Initializing speech engine...
[2026-06-12 07:14:15,403.403 INFO    ] 2026-06-12 07:14:15
[2026-06-12 07:14:15,608.608 INFO    ] 2026-06-12 07:14:15
[2026-06-12 07:14:15,636.636 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 07:14:15,818.818 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 07:14:15,828.828 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 07:14:15,950.950 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 07:14:16,011.011 INFO    ] time= 12/06/2026 07:14:15
[2026-06-12 07:14:16,048.048 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 07:14:16,050.050 INFO    ] Checking for existing commands in stream...
[2026-06-12 07:14:16,121.121 INFO    ] No existing commands found in stream
[2026-06-12 07:14:21,145.145 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 07:14:21,148.148 INFO    ] Waiting 0.18 seconds before fallback handling...
[2026-06-12 07:14:21,675.675 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 07:14:21,677.677 INFO    ] Checking for system updates...
[2026-06-12 07:14:21,697.697 INFO    ] 200
[2026-06-12 07:14:21,699.699 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:14:21,733.733 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 07:14:21,735.735 INFO    ] No update needed
[2026-06-12 07:14:21,736.736 INFO    ] Checking for camera pi updates...
[2026-06-12 07:14:21,756.756 INFO    ] 200
[2026-06-12 07:14:21,758.758 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:14:21,781.781 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 07:14:21,813.813 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 07:14:21,815.815 INFO    ] No camera update needed
[2026-06-12 07:14:21,816.816 INFO    ] Script finished. Safe exiting...
[2026-06-12 07:14:21,817.817 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 07:14:21,820.820 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 07:14:21,823.823 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 07:14:23,863.863 INFO    ] ================================================
[2026-06-12 07:14:23,878.878 INFO    ] Launching Daemon at Fri Jun 12 07:14:23 IST 2026
[2026-06-12 07:14:23,889.889 INFO    ] ================================================
[2026-06-12 07:14:24,251.251 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 07:14:24
[2026-06-12 07:14:24,563.563 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 07:14:24,693.693 INFO    ] Initializing speech engine...
[2026-06-12 07:14:24,696.696 INFO    ] 2026-06-12 07:14:24
[2026-06-12 07:14:24,912.912 INFO    ] 2026-06-12 07:14:24
[2026-06-12 07:14:24,941.941 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 07:14:25,125.125 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 07:14:25,134.134 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 07:14:25,268.268 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 07:14:25,330.330 INFO    ] time= 12/06/2026 07:14:25
[2026-06-12 07:14:25,353.353 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 07:14:25,360.360 INFO    ] Checking for existing commands in stream...
[2026-06-12 07:14:25,427.427 INFO    ] No existing commands found in stream
[2026-06-12 07:14:30,441.441 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 07:14:30,444.444 INFO    ] Waiting 0.72 seconds before fallback handling...
[2026-06-12 07:14:31,544.544 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 07:14:31,545.545 INFO    ] Checking for system updates...
[2026-06-12 07:14:31,567.567 INFO    ] 200
[2026-06-12 07:14:31,568.568 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:14:31,598.598 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 07:14:31,600.600 INFO    ] No update needed
[2026-06-12 07:14:31,601.601 INFO    ] Checking for camera pi updates...
[2026-06-12 07:14:31,620.620 INFO    ] 200
[2026-06-12 07:14:31,622.622 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:14:31,645.645 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 07:14:31,697.697 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 07:14:31,698.698 INFO    ] No camera update needed
[2026-06-12 07:14:31,700.700 INFO    ] Script finished. Safe exiting...
[2026-06-12 07:14:31,701.701 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 07:14:31,704.704 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 07:14:31,706.706 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 07:14:33,739.739 INFO    ] ================================================
[2026-06-12 07:14:33,754.754 INFO    ] Launching Daemon at Fri Jun 12 07:14:33 IST 2026
[2026-06-12 07:14:33,765.765 INFO    ] ================================================
[2026-06-12 07:14:34,144.144 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 07:14:34
[2026-06-12 07:14:34,484.484 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 07:14:34,638.638 INFO    ] Initializing speech engine...
[2026-06-12 07:14:34,644.644 INFO    ] 2026-06-12 07:14:34
[2026-06-12 07:14:34,850.850 INFO    ] 2026-06-12 07:14:34
[2026-06-12 07:14:34,879.879 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 07:14:35,064.064 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 07:14:35,074.074 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 07:14:35,203.203 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 07:14:35,269.269 INFO    ] time= 12/06/2026 07:14:35
[2026-06-12 07:14:35,294.294 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 07:14:35,300.300 INFO    ] Checking for existing commands in stream...
[2026-06-12 07:14:35,368.368 INFO    ] No existing commands found in stream
[2026-06-12 07:14:40,377.377 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 07:14:40,381.381 INFO    ] Waiting 2.28 seconds before fallback handling...
[2026-06-12 07:14:43,188.188 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 07:14:43,189.189 INFO    ] Checking for system updates...
[2026-06-12 07:14:43,212.212 INFO    ] 200
[2026-06-12 07:14:43,213.213 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:14:43,249.249 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 07:14:43,251.251 INFO    ] No update needed
[2026-06-12 07:14:43,252.252 INFO    ] Checking for camera pi updates...
[2026-06-12 07:14:43,275.275 INFO    ] 200
[2026-06-12 07:14:43,276.276 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:14:43,302.302 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 07:14:43,342.342 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 07:14:43,344.344 INFO    ] No camera update needed
[2026-06-12 07:14:43,345.345 INFO    ] Script finished. Safe exiting...
[2026-06-12 07:14:43,346.346 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 07:14:43,350.350 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 07:14:43,353.353 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 07:14:45,392.392 INFO    ] ================================================
[2026-06-12 07:14:45,407.407 INFO    ] Launching Daemon at Fri Jun 12 07:14:45 IST 2026
[2026-06-12 07:14:45,418.418 INFO    ] ================================================
[2026-06-12 07:14:45,801.801 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 07:14:45
[2026-06-12 07:14:46,139.139 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 07:14:46,279.279 INFO    ] Initializing speech engine...
[2026-06-12 07:14:46,292.292 INFO    ] 2026-06-12 07:14:46
[2026-06-12 07:14:46,506.506 INFO    ] 2026-06-12 07:14:46
[2026-06-12 07:14:46,536.536 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 07:14:46,660.660 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 07:14:46,723.723 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 07:14:46,858.858 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 07:14:46,914.914 INFO    ] time= 12/06/2026 07:14:46
[2026-06-12 07:14:46,958.958 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 07:14:46,964.964 INFO    ] Checking for existing commands in stream...
[2026-06-12 07:14:47,033.033 INFO    ] No existing commands found in stream
[2026-06-12 07:14:52,047.047 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 07:14:52,051.051 INFO    ] Waiting 1.74 seconds before fallback handling...
[2026-06-12 07:14:54,194.194 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 07:14:54,196.196 INFO    ] Checking for system updates...
[2026-06-12 07:14:54,220.220 INFO    ] 200
[2026-06-12 07:14:54,221.221 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:14:54,257.257 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 07:14:54,259.259 INFO    ] No update needed
[2026-06-12 07:14:54,260.260 INFO    ] Checking for camera pi updates...
[2026-06-12 07:14:54,284.284 INFO    ] 200
[2026-06-12 07:14:54,285.285 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:14:54,313.313 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 07:14:54,357.357 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 07:14:54,358.358 INFO    ] No camera update needed
[2026-06-12 07:14:54,360.360 INFO    ] Script finished. Safe exiting...
[2026-06-12 07:14:54,361.361 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 07:14:54,365.365 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 07:14:54,368.368 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 07:14:56,407.407 INFO    ] ================================================
[2026-06-12 07:14:56,422.422 INFO    ] Launching Daemon at Fri Jun 12 07:14:56 IST 2026
[2026-06-12 07:14:56,433.433 INFO    ] ================================================
[2026-06-12 07:14:56,798.798 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 07:14:56
[2026-06-12 07:14:57,136.136 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 07:14:57,283.283 INFO    ] Initializing speech engine...
[2026-06-12 07:14:57,293.293 INFO    ] 2026-06-12 07:14:57
[2026-06-12 07:14:57,503.503 INFO    ] 2026-06-12 07:14:57
[2026-06-12 07:14:57,531.531 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 07:14:57,716.716 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 07:14:57,726.726 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 07:14:57,852.852 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 07:14:57,918.918 INFO    ] time= 12/06/2026 07:14:57
[2026-06-12 07:14:57,946.946 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 07:14:57,952.952 INFO    ] Checking for existing commands in stream...
[2026-06-12 07:14:58,019.019 INFO    ] No existing commands found in stream
[2026-06-12 07:15:03,034.034 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 07:15:03,037.037 INFO    ] Waiting 2.54 seconds before fallback handling...
[2026-06-12 07:15:05,960.960 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 07:15:05,962.962 INFO    ] Checking for system updates...
[2026-06-12 07:15:05,983.983 INFO    ] 200
[2026-06-12 07:15:05,984.984 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:15:06,019.019 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 07:15:06,021.021 INFO    ] No update needed
[2026-06-12 07:15:06,022.022 INFO    ] Checking for camera pi updates...
[2026-06-12 07:15:06,043.043 INFO    ] 200
[2026-06-12 07:15:06,044.044 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:15:06,069.069 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 07:15:06,117.117 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 07:15:06,118.118 INFO    ] No camera update needed
[2026-06-12 07:15:06,119.119 INFO    ] Script finished. Safe exiting...
[2026-06-12 07:15:06,121.121 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 07:15:06,124.124 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 07:15:06,126.126 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 07:15:08,164.164 INFO    ] ================================================
[2026-06-12 07:15:08,180.180 INFO    ] Launching Daemon at Fri Jun 12 07:15:08 IST 2026
[2026-06-12 07:15:08,191.191 INFO    ] ================================================
[2026-06-12 07:15:08,519.519 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 07:15:08
[2026-06-12 07:15:08,829.829 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 07:15:08,959.959 INFO    ] Initializing speech engine...
[2026-06-12 07:15:08,964.964 INFO    ] 2026-06-12 07:15:08
[2026-06-12 07:15:09,181.181 INFO    ] 2026-06-12 07:15:09
[2026-06-12 07:15:09,211.211 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 07:15:09,396.396 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 07:15:09,405.405 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 07:15:09,579.579 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 07:15:09,620.620 INFO    ] time= 12/06/2026 07:15:09
[2026-06-12 07:15:09,635.635 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 07:15:09,637.637 INFO    ] Checking for existing commands in stream...
[2026-06-12 07:15:09,704.704 INFO    ] No existing commands found in stream
[2026-06-12 07:15:14,713.713 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 07:15:14,716.716 INFO    ] Waiting 3.02 seconds before fallback handling...
[2026-06-12 07:15:18,100.100 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 07:15:18,101.101 INFO    ] Checking for system updates...
[2026-06-12 07:15:18,123.123 INFO    ] 200
[2026-06-12 07:15:18,125.125 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:15:18,157.157 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 07:15:18,158.158 INFO    ] No update needed
[2026-06-12 07:15:18,160.160 INFO    ] Checking for camera pi updates...
[2026-06-12 07:15:18,181.181 INFO    ] 200
[2026-06-12 07:15:18,182.182 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:15:18,206.206 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 07:15:18,352.352 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 07:15:18,354.354 INFO    ] No camera update needed
[2026-06-12 07:15:18,355.355 INFO    ] Script finished. Safe exiting...
[2026-06-12 07:15:18,356.356 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 07:15:18,359.359 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 07:15:18,362.362 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 07:15:20,400.400 INFO    ] ================================================
[2026-06-12 07:15:20,415.415 INFO    ] Launching Daemon at Fri Jun 12 07:15:20 IST 2026
[2026-06-12 07:15:20,426.426 INFO    ] ================================================
[2026-06-12 07:15:20,774.774 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 07:15:20
[2026-06-12 07:15:21,110.110 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 07:15:21,262.262 INFO    ] Initializing speech engine...
[2026-06-12 07:15:21,267.267 INFO    ] 2026-06-12 07:15:21
[2026-06-12 07:15:21,478.478 INFO    ] 2026-06-12 07:15:21
[2026-06-12 07:15:21,507.507 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 07:15:21,693.693 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 07:15:21,703.703 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 07:15:21,835.835 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 07:15:21,894.894 INFO    ] time= 12/06/2026 07:15:21
[2026-06-12 07:15:21,927.927 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 07:15:21,934.934 INFO    ] Checking for existing commands in stream...
[2026-06-12 07:15:22,001.001 INFO    ] No existing commands found in stream
[2026-06-12 07:15:27,011.011 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 07:15:27,014.014 INFO    ] Waiting 1.28 seconds before fallback handling...
[2026-06-12 07:15:28,658.658 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 07:15:28,660.660 INFO    ] Checking for system updates...
[2026-06-12 07:15:28,683.683 INFO    ] 200
[2026-06-12 07:15:28,685.685 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:15:28,721.721 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 07:15:28,722.722 INFO    ] No update needed
[2026-06-12 07:15:28,724.724 INFO    ] Checking for camera pi updates...
[2026-06-12 07:15:28,745.745 INFO    ] 200
[2026-06-12 07:15:28,746.746 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:15:28,774.774 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 07:15:28,822.822 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 07:15:28,823.823 INFO    ] No camera update needed
[2026-06-12 07:15:28,825.825 INFO    ] Script finished. Safe exiting...
[2026-06-12 07:15:28,826.826 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 07:15:28,829.829 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 07:15:28,833.833 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 07:15:30,874.874 INFO    ] ================================================
[2026-06-12 07:15:30,891.891 INFO    ] Launching Daemon at Fri Jun 12 07:15:30 IST 2026
[2026-06-12 07:15:30,901.901 INFO    ] ================================================
[2026-06-12 07:15:31,225.225 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 07:15:31
[2026-06-12 07:15:31,549.549 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 07:15:31,697.697 INFO    ] Initializing speech engine...
[2026-06-12 07:15:31,705.705 INFO    ] 2026-06-12 07:15:31
[2026-06-12 07:15:31,941.941 INFO    ] 2026-06-12 07:15:31
[2026-06-12 07:15:31,973.973 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 07:15:32,106.106 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 07:15:32,166.166 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 07:15:32,318.318 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 07:15:32,381.381 INFO    ] time= 12/06/2026 07:15:32
[2026-06-12 07:15:32,414.414 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 07:15:32,421.421 INFO    ] Checking for existing commands in stream...
[2026-06-12 07:15:32,489.489 INFO    ] No existing commands found in stream
[2026-06-12 07:15:37,514.514 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 07:15:37,517.517 INFO    ] Waiting 0.96 seconds before fallback handling...
[2026-06-12 07:15:38,867.867 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 07:15:38,869.869 INFO    ] Checking for system updates...
[2026-06-12 07:15:38,893.893 INFO    ] 200
[2026-06-12 07:15:38,894.894 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:15:38,930.930 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 07:15:38,931.931 INFO    ] No update needed
[2026-06-12 07:15:38,933.933 INFO    ] Checking for camera pi updates...
[2026-06-12 07:15:38,957.957 INFO    ] 200
[2026-06-12 07:15:38,958.958 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:15:38,985.985 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 07:15:39,022.022 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 07:15:39,023.023 INFO    ] No camera update needed
[2026-06-12 07:15:39,025.025 INFO    ] Script finished. Safe exiting...
[2026-06-12 07:15:39,026.026 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 07:15:39,029.029 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 07:15:39,032.032 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 07:15:41,076.076 INFO    ] ================================================
[2026-06-12 07:15:41,091.091 INFO    ] Launching Daemon at Fri Jun 12 07:15:41 IST 2026
[2026-06-12 07:15:41,102.102 INFO    ] ================================================
[2026-06-12 07:15:41,456.456 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 07:15:41
[2026-06-12 07:15:41,797.797 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 07:15:41,948.948 INFO    ] Initializing speech engine...
[2026-06-12 07:15:41,954.954 INFO    ] 2026-06-12 07:15:41
[2026-06-12 07:15:42,164.164 INFO    ] 2026-06-12 07:15:42
[2026-06-12 07:15:42,193.193 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 07:15:42,378.378 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 07:15:42,388.388 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 07:15:42,540.540 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 07:15:42,595.595 INFO    ] time= 12/06/2026 07:15:42
[2026-06-12 07:15:42,611.611 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 07:15:42,618.618 INFO    ] Checking for existing commands in stream...
[2026-06-12 07:15:42,685.685 INFO    ] No existing commands found in stream
[2026-06-12 07:15:47,699.699 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 07:15:47,703.703 INFO    ] Waiting 0.39 seconds before fallback handling...
[2026-06-12 07:15:48,473.473 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 07:15:48,475.475 INFO    ] Checking for system updates...
[2026-06-12 07:15:48,496.496 INFO    ] 200
[2026-06-12 07:15:48,497.497 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:15:48,531.531 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 07:15:48,533.533 INFO    ] No update needed
[2026-06-12 07:15:48,534.534 INFO    ] Checking for camera pi updates...
[2026-06-12 07:15:48,558.558 INFO    ] 200
[2026-06-12 07:15:48,559.559 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:15:48,585.585 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 07:15:48,618.618 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 07:15:48,619.619 INFO    ] No camera update needed
[2026-06-12 07:15:48,621.621 INFO    ] Script finished. Safe exiting...
[2026-06-12 07:15:48,622.622 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 07:15:48,626.626 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 07:15:48,629.629 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 07:15:50,671.671 INFO    ] ================================================
[2026-06-12 07:15:50,687.687 INFO    ] Launching Daemon at Fri Jun 12 07:15:50 IST 2026
[2026-06-12 07:15:50,698.698 INFO    ] ================================================
[2026-06-12 07:15:51,048.048 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 07:15:51
[2026-06-12 07:15:51,384.384 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 07:15:51,536.536 INFO    ] Initializing speech engine...
[2026-06-12 07:15:51,542.542 INFO    ] 2026-06-12 07:15:51
[2026-06-12 07:15:51,753.753 INFO    ] 2026-06-12 07:15:51
[2026-06-12 07:15:51,783.783 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 07:15:51,969.969 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 07:15:51,979.979 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 07:15:52,107.107 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 07:15:52,176.176 INFO    ] time= 12/06/2026 07:15:52
[2026-06-12 07:15:52,200.200 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 07:15:52,207.207 INFO    ] Checking for existing commands in stream...
[2026-06-12 07:15:52,274.274 INFO    ] No existing commands found in stream
[2026-06-12 07:15:57,289.289 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 07:15:57,292.292 INFO    ] Waiting 2.61 seconds before fallback handling...
[2026-06-12 07:16:00,281.281 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 07:16:00,282.282 INFO    ] Checking for system updates...
[2026-06-12 07:16:00,306.306 INFO    ] 200
[2026-06-12 07:16:00,307.307 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:16:00,341.341 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 07:16:00,343.343 INFO    ] No update needed
[2026-06-12 07:16:00,344.344 INFO    ] Checking for camera pi updates...
[2026-06-12 07:16:00,367.367 INFO    ] 200
[2026-06-12 07:16:00,368.368 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:16:00,392.392 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 07:16:00,442.442 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 07:16:00,443.443 INFO    ] No camera update needed
[2026-06-12 07:16:00,445.445 INFO    ] Script finished. Safe exiting...
[2026-06-12 07:16:00,446.446 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 07:16:00,450.450 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 07:16:00,453.453 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 07:16:02,486.486 INFO    ] ================================================
[2026-06-12 07:16:02,498.498 INFO    ] Launching Daemon at Fri Jun 12 07:16:02 IST 2026
[2026-06-12 07:16:02,506.506 INFO    ] ================================================
[2026-06-12 07:16:02,835.835 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 07:16:02
[2026-06-12 07:16:03,146.146 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 07:16:03,278.278 INFO    ] Initializing speech engine...
[2026-06-12 07:16:03,282.282 INFO    ] 2026-06-12 07:16:03
[2026-06-12 07:16:03,509.509 INFO    ] 2026-06-12 07:16:03
[2026-06-12 07:16:03,539.539 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 07:16:03,671.671 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 07:16:03,729.729 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 07:16:03,885.885 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 07:16:03,933.933 INFO    ] time= 12/06/2026 07:16:03
[2026-06-12 07:16:03,968.968 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 07:16:03,985.985 INFO    ] Checking for existing commands in stream...
[2026-06-12 07:16:04,061.061 INFO    ] No existing commands found in stream
[2026-06-12 07:16:09,070.070 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 07:16:09,073.073 INFO    ] Waiting 1.02 seconds before fallback handling...
[2026-06-12 07:16:10,439.439 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 07:16:10,440.440 INFO    ] Checking for system updates...
[2026-06-12 07:16:10,461.461 INFO    ] 200
[2026-06-12 07:16:10,463.463 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:16:10,495.495 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 07:16:10,496.496 INFO    ] No update needed
[2026-06-12 07:16:10,498.498 INFO    ] Checking for camera pi updates...
[2026-06-12 07:16:10,517.517 INFO    ] 200
[2026-06-12 07:16:10,518.518 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:16:10,543.543 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 07:16:10,588.588 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 07:16:10,589.589 INFO    ] No camera update needed
[2026-06-12 07:16:10,591.591 INFO    ] Script finished. Safe exiting...
[2026-06-12 07:16:10,592.592 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 07:16:10,595.595 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 07:16:10,598.598 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 07:16:12,637.637 INFO    ] ================================================
[2026-06-12 07:16:12,652.652 INFO    ] Launching Daemon at Fri Jun 12 07:16:12 IST 2026
[2026-06-12 07:16:12,664.664 INFO    ] ================================================
[2026-06-12 07:16:13,005.005 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 07:16:13
[2026-06-12 07:16:13,316.316 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 07:16:13,458.458 INFO    ] Initializing speech engine...
[2026-06-12 07:16:13,468.468 INFO    ] 2026-06-12 07:16:13
[2026-06-12 07:16:13,674.674 INFO    ] 2026-06-12 07:16:13
[2026-06-12 07:16:13,702.702 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 07:16:13,889.889 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 07:16:13,898.898 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 07:16:14,031.031 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 07:16:14,095.095 INFO    ] time= 12/06/2026 07:16:14
[2026-06-12 07:16:14,123.123 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 07:16:14,129.129 INFO    ] Checking for existing commands in stream...
[2026-06-12 07:16:14,199.199 INFO    ] No existing commands found in stream
[2026-06-12 07:16:19,208.208 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 07:16:19,211.211 INFO    ] Waiting 1.32 seconds before fallback handling...
[2026-06-12 07:16:20,897.897 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 07:16:20,899.899 INFO    ] Checking for system updates...
[2026-06-12 07:16:20,920.920 INFO    ] 200
[2026-06-12 07:16:20,922.922 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:16:20,952.952 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 07:16:20,953.953 INFO    ] No update needed
[2026-06-12 07:16:20,954.954 INFO    ] Checking for camera pi updates...
[2026-06-12 07:16:20,975.975 INFO    ] 200
[2026-06-12 07:16:20,977.977 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:16:21,001.001 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 07:16:21,042.042 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 07:16:21,043.043 INFO    ] No camera update needed
[2026-06-12 07:16:21,045.045 INFO    ] Script finished. Safe exiting...
[2026-06-12 07:16:21,046.046 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 07:16:21,049.049 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 07:16:21,051.051 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 07:16:23,093.093 INFO    ] ================================================
[2026-06-12 07:16:23,109.109 INFO    ] Launching Daemon at Fri Jun 12 07:16:23 IST 2026
[2026-06-12 07:16:23,120.120 INFO    ] ================================================
[2026-06-12 07:16:23,494.494 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 07:16:23
[2026-06-12 07:16:23,827.827 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 07:16:23,977.977 INFO    ] Initializing speech engine...
[2026-06-12 07:16:23,983.983 INFO    ] 2026-06-12 07:16:23
[2026-06-12 07:16:24,189.189 INFO    ] 2026-06-12 07:16:24
[2026-06-12 07:16:24,218.218 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 07:16:24,343.343 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 07:16:24,407.407 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 07:16:24,539.539 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 07:16:24,600.600 INFO    ] time= 12/06/2026 07:16:24
[2026-06-12 07:16:24,638.638 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 07:16:24,640.640 INFO    ] Checking for existing commands in stream...
[2026-06-12 07:16:24,713.713 INFO    ] No existing commands found in stream
[2026-06-12 07:16:29,722.722 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 07:16:29,725.725 INFO    ] Waiting 1.16 seconds before fallback handling...
[2026-06-12 07:16:31,237.237 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 07:16:31,238.238 INFO    ] Checking for system updates...
[2026-06-12 07:16:31,261.261 INFO    ] 200
[2026-06-12 07:16:31,262.262 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:16:31,292.292 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 07:16:31,293.293 INFO    ] No update needed
[2026-06-12 07:16:31,294.294 INFO    ] Checking for camera pi updates...
[2026-06-12 07:16:31,314.314 INFO    ] 200
[2026-06-12 07:16:31,315.315 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:16:31,341.341 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 07:16:31,385.385 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 07:16:31,387.387 INFO    ] No camera update needed
[2026-06-12 07:16:31,388.388 INFO    ] Script finished. Safe exiting...
[2026-06-12 07:16:31,389.389 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 07:16:31,392.392 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 07:16:31,395.395 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 07:16:33,429.429 INFO    ] ================================================
[2026-06-12 07:16:33,444.444 INFO    ] Launching Daemon at Fri Jun 12 07:16:33 IST 2026
[2026-06-12 07:16:33,455.455 INFO    ] ================================================
[2026-06-12 07:16:33,821.821 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 07:16:33
[2026-06-12 07:16:34,158.158 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 07:16:34,310.310 INFO    ] Initializing speech engine...
[2026-06-12 07:16:34,315.315 INFO    ] 2026-06-12 07:16:34
[2026-06-12 07:16:34,526.526 INFO    ] 2026-06-12 07:16:34
[2026-06-12 07:16:34,555.555 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 07:16:34,743.743 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 07:16:34,752.752 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 07:16:34,905.905 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 07:16:34,955.955 INFO    ] time= 12/06/2026 07:16:34
[2026-06-12 07:16:34,976.976 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 07:16:34,983.983 INFO    ] Checking for existing commands in stream...
[2026-06-12 07:16:35,050.050 INFO    ] No existing commands found in stream
[2026-06-12 07:16:40,075.075 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 07:16:40,085.085 INFO    ] Waiting 1.12 seconds before fallback handling...
[2026-06-12 07:16:41,574.574 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 07:16:41,576.576 INFO    ] Checking for system updates...
[2026-06-12 07:16:41,598.598 INFO    ] 200
[2026-06-12 07:16:41,599.599 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:16:41,631.631 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 07:16:41,632.632 INFO    ] No update needed
[2026-06-12 07:16:41,634.634 INFO    ] Checking for camera pi updates...
[2026-06-12 07:16:41,655.655 INFO    ] 200
[2026-06-12 07:16:41,656.656 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:16:41,680.680 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 07:16:41,729.729 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 07:16:41,730.730 INFO    ] No camera update needed
[2026-06-12 07:16:41,732.732 INFO    ] Script finished. Safe exiting...
[2026-06-12 07:16:41,733.733 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 07:16:41,736.736 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 07:16:41,739.739 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 07:16:43,780.780 INFO    ] ================================================
[2026-06-12 07:16:43,796.796 INFO    ] Launching Daemon at Fri Jun 12 07:16:43 IST 2026
[2026-06-12 07:16:43,807.807 INFO    ] ================================================
[2026-06-12 07:16:44,157.157 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 07:16:44
[2026-06-12 07:16:44,492.492 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 07:16:44,632.632 INFO    ] Initializing speech engine...
[2026-06-12 07:16:44,640.640 INFO    ] 2026-06-12 07:16:44
[2026-06-12 07:16:44,857.857 INFO    ] 2026-06-12 07:16:44
[2026-06-12 07:16:44,903.903 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 07:16:45,076.076 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 07:16:45,100.100 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 07:16:45,237.237 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 07:16:45,286.286 INFO    ] time= 12/06/2026 07:16:45
[2026-06-12 07:16:45,309.309 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 07:16:45,315.315 INFO    ] Checking for existing commands in stream...
[2026-06-12 07:16:45,383.383 INFO    ] No existing commands found in stream
[2026-06-12 07:16:50,397.397 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 07:16:50,401.401 INFO    ] Waiting 0.01 seconds before fallback handling...
[2026-06-12 07:16:50,774.774 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 07:16:50,775.775 INFO    ] Checking for system updates...
[2026-06-12 07:16:50,796.796 INFO    ] 200
[2026-06-12 07:16:50,798.798 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:16:50,830.830 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 07:16:50,832.832 INFO    ] No update needed
[2026-06-12 07:16:50,834.834 INFO    ] Checking for camera pi updates...
[2026-06-12 07:16:50,853.853 INFO    ] 200
[2026-06-12 07:16:50,855.855 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:16:50,878.878 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 07:16:50,925.925 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 07:16:50,926.926 INFO    ] No camera update needed
[2026-06-12 07:16:50,928.928 INFO    ] Script finished. Safe exiting...
[2026-06-12 07:16:50,929.929 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 07:16:50,932.932 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 07:16:50,935.935 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 07:16:52,978.978 INFO    ] ================================================
[2026-06-12 07:16:52,993.993 INFO    ] Launching Daemon at Fri Jun 12 07:16:52 IST 2026
[2026-06-12 07:16:53,005.005 INFO    ] ================================================
[2026-06-12 07:16:53,363.363 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 07:16:53
[2026-06-12 07:16:53,696.696 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 07:16:53,832.832 INFO    ] Initializing speech engine...
[2026-06-12 07:16:53,846.846 INFO    ] 2026-06-12 07:16:53
[2026-06-12 07:16:54,063.063 INFO    ] 2026-06-12 07:16:54
[2026-06-12 07:16:54,092.092 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 07:16:54,274.274 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 07:16:54,284.284 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 07:16:54,413.413 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 07:16:54,477.477 INFO    ] time= 12/06/2026 07:16:54
[2026-06-12 07:16:54,504.504 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 07:16:54,506.506 INFO    ] Checking for existing commands in stream...
[2026-06-12 07:16:54,577.577 INFO    ] No existing commands found in stream
[2026-06-12 07:16:59,609.609 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 07:16:59,612.612 INFO    ] Waiting 1.24 seconds before fallback handling...
[2026-06-12 07:17:01,263.263 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 07:17:01,264.264 INFO    ] Checking for system updates...
[2026-06-12 07:17:01,285.285 INFO    ] 200
[2026-06-12 07:17:01,286.286 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:17:01,319.319 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 07:17:01,320.320 INFO    ] No update needed
[2026-06-12 07:17:01,322.322 INFO    ] Checking for camera pi updates...
[2026-06-12 07:17:01,341.341 INFO    ] 200
[2026-06-12 07:17:01,342.342 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:17:01,365.365 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 07:17:01,450.450 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 07:17:01,451.451 INFO    ] No camera update needed
[2026-06-12 07:17:01,453.453 INFO    ] Script finished. Safe exiting...
[2026-06-12 07:17:01,454.454 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 07:17:01,457.457 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 07:17:01,459.459 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 07:17:03,493.493 INFO    ] ================================================
[2026-06-12 07:17:03,509.509 INFO    ] Launching Daemon at Fri Jun 12 07:17:03 IST 2026
[2026-06-12 07:17:03,520.520 INFO    ] ================================================
[2026-06-12 07:17:03,865.865 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 07:17:03
[2026-06-12 07:17:04,203.203 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 07:17:04,343.343 INFO    ] Initializing speech engine...
[2026-06-12 07:17:04,355.355 INFO    ] 2026-06-12 07:17:04
[2026-06-12 07:17:04,567.567 INFO    ] 2026-06-12 07:17:04
[2026-06-12 07:17:04,596.596 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 07:17:04,742.742 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 07:17:04,785.785 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 07:17:04,919.919 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 07:17:04,984.984 INFO    ] time= 12/06/2026 07:17:04
[2026-06-12 07:17:05,013.013 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 07:17:05,019.019 INFO    ] Checking for existing commands in stream...
[2026-06-12 07:17:05,079.079 INFO    ] No existing commands found in stream
[2026-06-12 07:17:10,095.095 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 07:17:10,099.099 INFO    ] Waiting 1.31 seconds before fallback handling...
[2026-06-12 07:17:11,752.752 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 07:17:11,754.754 INFO    ] Checking for system updates...
[2026-06-12 07:17:11,775.775 INFO    ] 200
[2026-06-12 07:17:11,776.776 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:17:11,809.809 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 07:17:11,811.811 INFO    ] No update needed
[2026-06-12 07:17:11,812.812 INFO    ] Checking for camera pi updates...
[2026-06-12 07:17:11,835.835 INFO    ] 200
[2026-06-12 07:17:11,836.836 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:17:11,860.860 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 07:17:11,882.882 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 07:17:11,883.883 INFO    ] No camera update needed
[2026-06-12 07:17:11,885.885 INFO    ] Script finished. Safe exiting...
[2026-06-12 07:17:11,886.886 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 07:17:11,890.890 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 07:17:11,894.894 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 07:17:13,934.934 INFO    ] ================================================
[2026-06-12 07:17:13,950.950 INFO    ] Launching Daemon at Fri Jun 12 07:17:13 IST 2026
[2026-06-12 07:17:13,961.961 INFO    ] ================================================
[2026-06-12 07:17:14,351.351 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 07:17:14
[2026-06-12 07:17:14,693.693 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 07:17:14,849.849 INFO    ] Initializing speech engine...
[2026-06-12 07:17:14,856.856 INFO    ] 2026-06-12 07:17:14
[2026-06-12 07:17:15,065.065 INFO    ] 2026-06-12 07:17:15
[2026-06-12 07:17:15,094.094 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 07:17:15,277.277 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 07:17:15,287.287 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 07:17:15,439.439 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 07:17:15,501.501 INFO    ] time= 12/06/2026 07:17:15
[2026-06-12 07:17:15,513.513 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 07:17:15,520.520 INFO    ] Checking for existing commands in stream...
[2026-06-12 07:17:15,587.587 INFO    ] No existing commands found in stream
[2026-06-12 07:17:20,596.596 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 07:17:20,599.599 INFO    ] Waiting 0.20 seconds before fallback handling...
[2026-06-12 07:17:21,198.198 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 07:17:21,200.200 INFO    ] Checking for system updates...
[2026-06-12 07:17:21,221.221 INFO    ] 200
[2026-06-12 07:17:21,222.222 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:17:21,255.255 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 07:17:21,257.257 INFO    ] No update needed
[2026-06-12 07:17:21,258.258 INFO    ] Checking for camera pi updates...
[2026-06-12 07:17:21,279.279 INFO    ] 200
[2026-06-12 07:17:21,281.281 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:17:21,307.307 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 07:17:21,455.455 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 07:17:21,457.457 INFO    ] No camera update needed
[2026-06-12 07:17:21,458.458 INFO    ] Script finished. Safe exiting...
[2026-06-12 07:17:21,459.459 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 07:17:21,463.463 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 07:17:21,466.466 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 07:17:23,505.505 INFO    ] ================================================
[2026-06-12 07:17:23,521.521 INFO    ] Launching Daemon at Fri Jun 12 07:17:23 IST 2026
[2026-06-12 07:17:23,532.532 INFO    ] ================================================
[2026-06-12 07:17:23,930.930 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 07:17:23
[2026-06-12 07:17:24,274.274 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 07:17:24,423.423 INFO    ] Initializing speech engine...
[2026-06-12 07:17:24,428.428 INFO    ] 2026-06-12 07:17:24
[2026-06-12 07:17:24,647.647 INFO    ] 2026-06-12 07:17:24
[2026-06-12 07:17:24,706.706 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 07:17:24,918.918 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 07:17:24,928.928 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 07:17:25,064.064 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 07:17:25,120.120 INFO    ] time= 12/06/2026 07:17:25
[2026-06-12 07:17:25,122.122 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 07:17:25,123.123 INFO    ] Checking for existing commands in stream...
[2026-06-12 07:17:25,185.185 INFO    ] No existing commands found in stream
[2026-06-12 07:17:30,195.195 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 07:17:30,198.198 INFO    ] Waiting 1.57 seconds before fallback handling...
[2026-06-12 07:17:32,156.156 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 07:17:32,158.158 INFO    ] Checking for system updates...
[2026-06-12 07:17:32,183.183 INFO    ] 200
[2026-06-12 07:17:32,185.185 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:17:32,219.219 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 07:17:32,221.221 INFO    ] No update needed
[2026-06-12 07:17:32,222.222 INFO    ] Checking for camera pi updates...
[2026-06-12 07:17:32,243.243 INFO    ] 200
[2026-06-12 07:17:32,244.244 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:17:32,273.273 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 07:17:32,311.311 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 07:17:32,313.313 INFO    ] No camera update needed
[2026-06-12 07:17:32,315.315 INFO    ] Script finished. Safe exiting...
[2026-06-12 07:17:32,317.317 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 07:17:32,321.321 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 07:17:32,325.325 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 07:17:34,358.358 INFO    ] ================================================
[2026-06-12 07:17:34,374.374 INFO    ] Launching Daemon at Fri Jun 12 07:17:34 IST 2026
[2026-06-12 07:17:34,385.385 INFO    ] ================================================
[2026-06-12 07:17:34,756.756 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 07:17:34
[2026-06-12 07:17:35,100.100 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 07:17:35,237.237 INFO    ] Initializing speech engine...
[2026-06-12 07:17:35,247.247 INFO    ] 2026-06-12 07:17:35
[2026-06-12 07:17:35,451.451 INFO    ] 2026-06-12 07:17:35
[2026-06-12 07:17:35,481.481 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 07:17:35,607.607 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 07:17:35,665.665 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 07:17:35,795.795 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 07:17:35,856.856 INFO    ] time= 12/06/2026 07:17:35
[2026-06-12 07:17:35,892.892 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 07:17:35,894.894 INFO    ] Checking for existing commands in stream...
[2026-06-12 07:17:35,964.964 INFO    ] No existing commands found in stream
[2026-06-12 07:17:40,973.973 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 07:17:40,975.975 INFO    ] Waiting 2.81 seconds before fallback handling...
[2026-06-12 07:17:44,162.162 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 07:17:44,163.163 INFO    ] Checking for system updates...
[2026-06-12 07:17:44,184.184 INFO    ] 200
[2026-06-12 07:17:44,185.185 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:17:44,216.216 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 07:17:44,217.217 INFO    ] No update needed
[2026-06-12 07:17:44,218.218 INFO    ] Checking for camera pi updates...
[2026-06-12 07:17:44,240.240 INFO    ] 200
[2026-06-12 07:17:44,241.241 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:17:44,266.266 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 07:17:44,312.312 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 07:17:44,314.314 INFO    ] No camera update needed
[2026-06-12 07:17:44,315.315 INFO    ] Script finished. Safe exiting...
[2026-06-12 07:17:44,316.316 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 07:17:44,319.319 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 07:17:44,322.322 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 07:17:46,363.363 INFO    ] ================================================
[2026-06-12 07:17:46,378.378 INFO    ] Launching Daemon at Fri Jun 12 07:17:46 IST 2026
[2026-06-12 07:17:46,389.389 INFO    ] ================================================
[2026-06-12 07:17:46,747.747 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 07:17:46
[2026-06-12 07:17:47,062.062 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 07:17:47,196.196 INFO    ] Initializing speech engine...
[2026-06-12 07:17:47,200.200 INFO    ] 2026-06-12 07:17:47
[2026-06-12 07:17:47,394.394 INFO    ] 2026-06-12 07:17:47
[2026-06-12 07:17:47,440.440 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 07:17:47,599.599 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 07:17:47,662.662 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 07:17:47,815.815 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 07:17:47,883.883 INFO    ] time= 12/06/2026 07:17:47
[2026-06-12 07:17:47,918.918 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 07:17:47,920.920 INFO    ] Checking for existing commands in stream...
[2026-06-12 07:17:47,997.997 INFO    ] No existing commands found in stream
[2026-06-12 07:17:53,008.008 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 07:17:53,011.011 INFO    ] Waiting 2.50 seconds before fallback handling...
[2026-06-12 07:17:55,910.910 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 07:17:55,912.912 INFO    ] Checking for system updates...
[2026-06-12 07:17:55,934.934 INFO    ] 200
[2026-06-12 07:17:55,936.936 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:17:55,968.968 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 07:17:55,970.970 INFO    ] No update needed
[2026-06-12 07:17:55,971.971 INFO    ] Checking for camera pi updates...
[2026-06-12 07:17:55,993.993 INFO    ] 200
[2026-06-12 07:17:55,994.994 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:17:56,018.018 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 07:17:56,062.062 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 07:17:56,064.064 INFO    ] No camera update needed
[2026-06-12 07:17:56,065.065 INFO    ] Script finished. Safe exiting...
[2026-06-12 07:17:56,067.067 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 07:17:56,070.070 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 07:17:56,073.073 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 07:17:58,112.112 INFO    ] ================================================
[2026-06-12 07:17:58,128.128 INFO    ] Launching Daemon at Fri Jun 12 07:17:58 IST 2026
[2026-06-12 07:17:58,139.139 INFO    ] ================================================
[2026-06-12 07:17:58,495.495 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 07:17:58
[2026-06-12 07:17:58,815.815 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 07:17:58,954.954 INFO    ] Initializing speech engine...
[2026-06-12 07:17:58,967.967 INFO    ] 2026-06-12 07:17:58
[2026-06-12 07:17:59,187.187 INFO    ] 2026-06-12 07:17:59
[2026-06-12 07:17:59,220.220 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 07:17:59,355.355 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 07:17:59,418.418 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 07:17:59,565.565 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 07:17:59,612.612 INFO    ] time= 12/06/2026 07:17:59
[2026-06-12 07:17:59,651.651 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 07:17:59,675.675 INFO    ] Checking for existing commands in stream...
[2026-06-12 07:17:59,779.779 INFO    ] No existing commands found in stream
[2026-06-12 07:18:04,793.793 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 07:18:04,796.796 INFO    ] Waiting 0.02 seconds before fallback handling...
[2026-06-12 07:18:05,236.236 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 07:18:05,238.238 INFO    ] Checking for system updates...
[2026-06-12 07:18:05,261.261 INFO    ] 200
[2026-06-12 07:18:05,262.262 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:18:05,294.294 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 07:18:05,295.295 INFO    ] No update needed
[2026-06-12 07:18:05,297.297 INFO    ] Checking for camera pi updates...
[2026-06-12 07:18:05,317.317 INFO    ] 200
[2026-06-12 07:18:05,318.318 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:18:05,342.342 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 07:18:05,376.376 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 07:18:05,382.382 INFO    ] No camera update needed
[2026-06-12 07:18:05,384.384 INFO    ] Script finished. Safe exiting...
[2026-06-12 07:18:05,386.386 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 07:18:05,391.391 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 07:18:05,395.395 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 07:18:07,436.436 INFO    ] ================================================
[2026-06-12 07:18:07,451.451 INFO    ] Launching Daemon at Fri Jun 12 07:18:07 IST 2026
[2026-06-12 07:18:07,462.462 INFO    ] ================================================
[2026-06-12 07:18:07,808.808 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 07:18:07
[2026-06-12 07:18:08,124.124 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 07:18:08,256.256 INFO    ] Initializing speech engine...
[2026-06-12 07:18:08,260.260 INFO    ] 2026-06-12 07:18:08
[2026-06-12 07:18:08,455.455 INFO    ] 2026-06-12 07:18:08
[2026-06-12 07:18:08,500.500 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 07:18:08,662.662 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 07:18:08,710.710 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 07:18:08,883.883 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 07:18:08,939.939 INFO    ] time= 12/06/2026 07:18:08
[2026-06-12 07:18:08,970.970 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 07:18:08,988.988 INFO    ] Checking for existing commands in stream...
[2026-06-12 07:18:09,065.065 INFO    ] No existing commands found in stream
[2026-06-12 07:18:14,075.075 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 07:18:14,078.078 INFO    ] Waiting 0.73 seconds before fallback handling...
[2026-06-12 07:18:15,131.131 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 07:18:15,132.132 INFO    ] Checking for system updates...
[2026-06-12 07:18:15,154.154 INFO    ] 200
[2026-06-12 07:18:15,155.155 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:18:15,186.186 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 07:18:15,187.187 INFO    ] No update needed
[2026-06-12 07:18:15,188.188 INFO    ] Checking for camera pi updates...
[2026-06-12 07:18:15,208.208 INFO    ] 200
[2026-06-12 07:18:15,209.209 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:18:15,241.241 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 07:18:15,293.293 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 07:18:15,294.294 INFO    ] No camera update needed
[2026-06-12 07:18:15,295.295 INFO    ] Script finished. Safe exiting...
[2026-06-12 07:18:15,296.296 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 07:18:15,300.300 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 07:18:15,302.302 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 07:18:17,343.343 INFO    ] ================================================
[2026-06-12 07:18:17,360.360 INFO    ] Launching Daemon at Fri Jun 12 07:18:17 IST 2026
[2026-06-12 07:18:17,372.372 INFO    ] ================================================
[2026-06-12 07:18:17,743.743 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 07:18:17
[2026-06-12 07:18:18,085.085 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 07:18:18,241.241 INFO    ] Initializing speech engine...
[2026-06-12 07:18:18,245.245 INFO    ] 2026-06-12 07:18:18
[2026-06-12 07:18:18,457.457 INFO    ] 2026-06-12 07:18:18
[2026-06-12 07:18:18,486.486 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 07:18:18,673.673 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 07:18:18,676.676 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 07:18:18,814.814 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 07:18:18,883.883 INFO    ] time= 12/06/2026 07:18:18
[2026-06-12 07:18:18,907.907 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 07:18:18,914.914 INFO    ] Checking for existing commands in stream...
[2026-06-12 07:18:18,982.982 INFO    ] No existing commands found in stream
[2026-06-12 07:18:23,996.996 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 07:18:23,999.999 INFO    ] Waiting 2.36 seconds before fallback handling...
[2026-06-12 07:18:26,729.729 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 07:18:26,731.731 INFO    ] Checking for system updates...
[2026-06-12 07:18:26,752.752 INFO    ] 200
[2026-06-12 07:18:26,753.753 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:18:26,784.784 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 07:18:26,785.785 INFO    ] No update needed
[2026-06-12 07:18:26,787.787 INFO    ] Checking for camera pi updates...
[2026-06-12 07:18:26,807.807 INFO    ] 200
[2026-06-12 07:18:26,808.808 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:18:26,832.832 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 07:18:26,873.873 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 07:18:26,874.874 INFO    ] No camera update needed
[2026-06-12 07:18:26,876.876 INFO    ] Script finished. Safe exiting...
[2026-06-12 07:18:26,877.877 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 07:18:26,880.880 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 07:18:26,884.884 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 07:18:28,925.925 INFO    ] ================================================
[2026-06-12 07:18:28,941.941 INFO    ] Launching Daemon at Fri Jun 12 07:18:28 IST 2026
[2026-06-12 07:18:28,952.952 INFO    ] ================================================
[2026-06-12 07:18:29,310.310 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 07:18:29
[2026-06-12 07:18:29,624.624 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 07:18:29,772.772 INFO    ] Initializing speech engine...
[2026-06-12 07:18:29,779.779 INFO    ] 2026-06-12 07:18:29
[2026-06-12 07:18:29,996.996 INFO    ] 2026-06-12 07:18:29
[2026-06-12 07:18:30,027.027 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 07:18:30,162.162 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 07:18:30,220.220 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 07:18:30,335.335 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 07:18:30,337.337 INFO    ] time= 12/06/2026 07:18:30
[2026-06-12 07:18:30,338.338 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 07:18:30,339.339 INFO    ] Checking for existing commands in stream...
[2026-06-12 07:18:30,450.450 INFO    ] No existing commands found in stream
[2026-06-12 07:18:35,479.479 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 07:18:35,482.482 INFO    ] Waiting 1.36 seconds before fallback handling...
[2026-06-12 07:18:37,189.189 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 07:18:37,190.190 INFO    ] Checking for system updates...
[2026-06-12 07:18:37,211.211 INFO    ] 200
[2026-06-12 07:18:37,213.213 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:18:37,245.245 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 07:18:37,247.247 INFO    ] No update needed
[2026-06-12 07:18:37,248.248 INFO    ] Checking for camera pi updates...
[2026-06-12 07:18:37,270.270 INFO    ] 200
[2026-06-12 07:18:37,271.271 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:18:37,298.298 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 07:18:37,347.347 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 07:18:37,349.349 INFO    ] No camera update needed
[2026-06-12 07:18:37,350.350 INFO    ] Script finished. Safe exiting...
[2026-06-12 07:18:37,352.352 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 07:18:37,355.355 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 07:18:37,357.357 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 07:18:39,397.397 INFO    ] ================================================
[2026-06-12 07:18:39,413.413 INFO    ] Launching Daemon at Fri Jun 12 07:18:39 IST 2026
[2026-06-12 07:18:39,425.425 INFO    ] ================================================
[2026-06-12 07:18:39,766.766 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 07:18:39
[2026-06-12 07:18:40,082.082 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 07:18:40,213.213 INFO    ] Initializing speech engine...
[2026-06-12 07:18:40,217.217 INFO    ] 2026-06-12 07:18:40
[2026-06-12 07:18:40,434.434 INFO    ] 2026-06-12 07:18:40
[2026-06-12 07:18:40,464.464 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 07:18:40,646.646 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 07:18:40,655.655 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 07:18:40,784.784 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 07:18:40,848.848 INFO    ] time= 12/06/2026 07:18:40
[2026-06-12 07:18:40,875.875 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 07:18:40,876.876 INFO    ] Checking for existing commands in stream...
[2026-06-12 07:18:40,948.948 INFO    ] No existing commands found in stream
[2026-06-12 07:18:45,962.962 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 07:18:45,965.965 INFO    ] Waiting 2.31 seconds before fallback handling...
[2026-06-12 07:18:48,666.666 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 07:18:48,668.668 INFO    ] Checking for system updates...
[2026-06-12 07:18:48,689.689 INFO    ] 200
[2026-06-12 07:18:48,690.690 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:18:48,721.721 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 07:18:48,722.722 INFO    ] No update needed
[2026-06-12 07:18:48,724.724 INFO    ] Checking for camera pi updates...
[2026-06-12 07:18:48,743.743 INFO    ] 200
[2026-06-12 07:18:48,745.745 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:18:48,768.768 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 07:18:48,805.805 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 07:18:48,806.806 INFO    ] No camera update needed
[2026-06-12 07:18:48,807.807 INFO    ] Script finished. Safe exiting...
[2026-06-12 07:18:48,808.808 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 07:18:48,812.812 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 07:18:48,814.814 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 07:18:50,855.855 INFO    ] ================================================
[2026-06-12 07:18:50,870.870 INFO    ] Launching Daemon at Fri Jun 12 07:18:50 IST 2026
[2026-06-12 07:18:50,882.882 INFO    ] ================================================
[2026-06-12 07:18:51,240.240 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 07:18:51
[2026-06-12 07:18:51,582.582 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 07:18:51,725.725 INFO    ] Initializing speech engine...
[2026-06-12 07:18:51,738.738 INFO    ] 2026-06-12 07:18:51
[2026-06-12 07:18:51,953.953 INFO    ] 2026-06-12 07:18:51
[2026-06-12 07:18:51,982.982 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 07:18:52,172.172 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 07:18:52,182.182 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 07:18:52,335.335 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 07:18:52,385.385 INFO    ] time= 12/06/2026 07:18:52
[2026-06-12 07:18:52,408.408 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 07:18:52,415.415 INFO    ] Checking for existing commands in stream...
[2026-06-12 07:18:52,483.483 INFO    ] No existing commands found in stream
[2026-06-12 07:18:57,492.492 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 07:18:57,496.496 INFO    ] Waiting 2.35 seconds before fallback handling...
[2026-06-12 07:19:00,174.174 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 07:19:00,176.176 INFO    ] Checking for system updates...
[2026-06-12 07:19:00,197.197 INFO    ] 200
[2026-06-12 07:19:00,199.199 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:19:00,240.240 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 07:19:00,243.243 INFO    ] No update needed
[2026-06-12 07:19:00,246.246 INFO    ] Checking for camera pi updates...
[2026-06-12 07:19:00,281.281 INFO    ] 200
[2026-06-12 07:19:00,284.284 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:19:00,327.327 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 07:19:00,364.364 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 07:19:00,365.365 INFO    ] No camera update needed
[2026-06-12 07:19:00,366.366 INFO    ] Script finished. Safe exiting...
[2026-06-12 07:19:00,368.368 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 07:19:00,371.371 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 07:19:00,373.373 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 07:19:02,406.406 INFO    ] ================================================
[2026-06-12 07:19:02,415.415 INFO    ] Launching Daemon at Fri Jun 12 07:19:02 IST 2026
[2026-06-12 07:19:02,424.424 INFO    ] ================================================
[2026-06-12 07:19:02,736.736 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 07:19:02
[2026-06-12 07:19:03,049.049 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 07:19:03,181.181 INFO    ] Initializing speech engine...
[2026-06-12 07:19:03,186.186 INFO    ] 2026-06-12 07:19:03
[2026-06-12 07:19:03,377.377 INFO    ] 2026-06-12 07:19:03
[2026-06-12 07:19:03,423.423 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 07:19:03,585.585 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 07:19:03,623.623 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 07:19:03,799.799 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 07:19:03,821.821 INFO    ] time= 12/06/2026 07:19:03
[2026-06-12 07:19:03,884.884 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 07:19:03,910.910 INFO    ] Checking for existing commands in stream...
[2026-06-12 07:19:03,988.988 INFO    ] No existing commands found in stream
[2026-06-12 07:19:08,999.999 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 07:19:09,002.002 INFO    ] Waiting 2.66 seconds before fallback handling...
[2026-06-12 07:19:12,057.057 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 07:19:12,060.060 INFO    ] Checking for system updates...
[2026-06-12 07:19:12,096.096 INFO    ] 200
[2026-06-12 07:19:12,099.099 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:19:12,151.151 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 07:19:12,154.154 INFO    ] No update needed
[2026-06-12 07:19:12,157.157 INFO    ] Checking for camera pi updates...
[2026-06-12 07:19:12,192.192 INFO    ] 200
[2026-06-12 07:19:12,194.194 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:19:12,217.217 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 07:19:12,239.239 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 07:19:12,241.241 INFO    ] No camera update needed
[2026-06-12 07:19:12,242.242 INFO    ] Script finished. Safe exiting...
[2026-06-12 07:19:12,243.243 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 07:19:12,246.246 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 07:19:12,249.249 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 07:19:14,280.280 INFO    ] ================================================
[2026-06-12 07:19:14,288.288 INFO    ] Launching Daemon at Fri Jun 12 07:19:14 IST 2026
[2026-06-12 07:19:14,295.295 INFO    ] ================================================
[2026-06-12 07:19:14,605.605 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 07:19:14
[2026-06-12 07:19:14,952.952 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 07:19:15,100.100 INFO    ] Initializing speech engine...
[2026-06-12 07:19:15,110.110 INFO    ] 2026-06-12 07:19:15
[2026-06-12 07:19:15,322.322 INFO    ] 2026-06-12 07:19:15
[2026-06-12 07:19:15,351.351 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 07:19:15,538.538 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 07:19:15,549.549 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 07:19:15,738.738 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 07:19:15,773.773 INFO    ] time= 12/06/2026 07:19:15
[2026-06-12 07:19:15,779.779 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 07:19:15,781.781 INFO    ] Checking for existing commands in stream...
[2026-06-12 07:19:15,849.849 INFO    ] No existing commands found in stream
[2026-06-12 07:19:20,864.864 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 07:19:20,867.867 INFO    ] Waiting 1.53 seconds before fallback handling...
[2026-06-12 07:19:22,776.776 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 07:19:22,778.778 INFO    ] Checking for system updates...
[2026-06-12 07:19:22,799.799 INFO    ] 200
[2026-06-12 07:19:22,801.801 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:19:22,831.831 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 07:19:22,833.833 INFO    ] No update needed
[2026-06-12 07:19:22,834.834 INFO    ] Checking for camera pi updates...
[2026-06-12 07:19:22,855.855 INFO    ] 200
[2026-06-12 07:19:22,856.856 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:19:22,880.880 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 07:19:22,917.917 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 07:19:22,918.918 INFO    ] No camera update needed
[2026-06-12 07:19:22,920.920 INFO    ] Script finished. Safe exiting...
[2026-06-12 07:19:22,921.921 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 07:19:22,924.924 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 07:19:22,927.927 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 07:19:24,967.967 INFO    ] ================================================
[2026-06-12 07:19:24,983.983 INFO    ] Launching Daemon at Fri Jun 12 07:19:24 IST 2026
[2026-06-12 07:19:25,994.994 INFO    ] ================================================
[2026-06-12 07:19:25,321.321 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 07:19:25
[2026-06-12 07:19:25,639.639 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 07:19:25,784.784 INFO    ] Initializing speech engine...
[2026-06-12 07:19:25,789.789 INFO    ] 2026-06-12 07:19:25
[2026-06-12 07:19:25,993.993 INFO    ] 2026-06-12 07:19:25
[2026-06-12 07:19:26,023.023 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 07:19:26,205.205 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 07:19:26,209.209 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 07:19:26,338.338 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 07:19:26,393.393 INFO    ] time= 12/06/2026 07:19:26
[2026-06-12 07:19:26,433.433 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 07:19:26,442.442 INFO    ] Checking for existing commands in stream...
[2026-06-12 07:19:26,509.509 INFO    ] No existing commands found in stream
[2026-06-12 07:19:31,533.533 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 07:19:31,537.537 INFO    ] Waiting 1.25 seconds before fallback handling...
[2026-06-12 07:19:33,126.126 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 07:19:33,129.129 INFO    ] Checking for system updates...
[2026-06-12 07:19:33,170.170 INFO    ] 200
[2026-06-12 07:19:33,172.172 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:19:33,226.226 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 07:19:33,228.228 INFO    ] No update needed
[2026-06-12 07:19:33,231.231 INFO    ] Checking for camera pi updates...
[2026-06-12 07:19:33,265.265 INFO    ] 200
[2026-06-12 07:19:33,267.267 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:19:33,296.296 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 07:19:33,334.334 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 07:19:33,336.336 INFO    ] No camera update needed
[2026-06-12 07:19:33,337.337 INFO    ] Script finished. Safe exiting...
[2026-06-12 07:19:33,338.338 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 07:19:33,341.341 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 07:19:33,344.344 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 07:19:35,385.385 INFO    ] ================================================
[2026-06-12 07:19:35,401.401 INFO    ] Launching Daemon at Fri Jun 12 07:19:35 IST 2026
[2026-06-12 07:19:35,412.412 INFO    ] ================================================
[2026-06-12 07:19:35,736.736 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 07:19:35
[2026-06-12 07:19:36,047.047 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 07:19:36,185.185 INFO    ] Initializing speech engine...
[2026-06-12 07:19:36,195.195 INFO    ] 2026-06-12 07:19:36
[2026-06-12 07:19:36,400.400 INFO    ] 2026-06-12 07:19:36
[2026-06-12 07:19:36,430.430 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 07:19:36,615.615 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 07:19:36,618.618 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 07:19:36,757.757 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 07:19:36,821.821 INFO    ] time= 12/06/2026 07:19:36
[2026-06-12 07:19:36,850.850 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 07:19:36,856.856 INFO    ] Checking for existing commands in stream...
[2026-06-12 07:19:36,923.923 INFO    ] No existing commands found in stream
[2026-06-12 07:19:41,932.932 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 07:19:41,935.935 INFO    ] Waiting 2.94 seconds before fallback handling...
[2026-06-12 07:19:45,246.246 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 07:19:45,247.247 INFO    ] Checking for system updates...
[2026-06-12 07:19:45,268.268 INFO    ] 200
[2026-06-12 07:19:45,269.269 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:19:45,300.300 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 07:19:45,301.301 INFO    ] No update needed
[2026-06-12 07:19:45,303.303 INFO    ] Checking for camera pi updates...
[2026-06-12 07:19:45,322.322 INFO    ] 200
[2026-06-12 07:19:45,323.323 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:19:45,346.346 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 07:19:45,387.387 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 07:19:45,389.389 INFO    ] No camera update needed
[2026-06-12 07:19:45,390.390 INFO    ] Script finished. Safe exiting...
[2026-06-12 07:19:45,391.391 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 07:19:45,394.394 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 07:19:45,397.397 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 07:19:47,438.438 INFO    ] ================================================
[2026-06-12 07:19:47,456.456 INFO    ] Launching Daemon at Fri Jun 12 07:19:47 IST 2026
[2026-06-12 07:19:47,467.467 INFO    ] ================================================
[2026-06-12 07:19:47,844.844 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 07:19:47
[2026-06-12 07:19:48,189.189 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 07:19:48,332.332 INFO    ] Initializing speech engine...
[2026-06-12 07:19:48,347.347 INFO    ] 2026-06-12 07:19:48
[2026-06-12 07:19:48,556.556 INFO    ] 2026-06-12 07:19:48
[2026-06-12 07:19:48,584.584 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 07:19:48,767.767 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 07:19:48,771.771 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 07:19:48,923.923 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 07:19:48,976.976 INFO    ] time= 12/06/2026 07:19:48
[2026-06-12 07:19:48,998.998 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 07:19:49,005.005 INFO    ] Checking for existing commands in stream...
[2026-06-12 07:19:49,072.072 INFO    ] No existing commands found in stream
[2026-06-12 07:19:54,082.082 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 07:19:54,085.085 INFO    ] Waiting 0.08 seconds before fallback handling...
[2026-06-12 07:19:54,497.497 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 07:19:54,499.499 INFO    ] Checking for system updates...
[2026-06-12 07:19:54,520.520 INFO    ] 200
[2026-06-12 07:19:54,522.522 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:19:54,553.553 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 07:19:54,554.554 INFO    ] No update needed
[2026-06-12 07:19:54,556.556 INFO    ] Checking for camera pi updates...
[2026-06-12 07:19:54,575.575 INFO    ] 200
[2026-06-12 07:19:54,577.577 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:19:54,600.600 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 07:19:54,638.638 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 07:19:54,640.640 INFO    ] No camera update needed
[2026-06-12 07:19:54,641.641 INFO    ] Script finished. Safe exiting...
[2026-06-12 07:19:54,643.643 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 07:19:54,646.646 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 07:19:54,649.649 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 07:19:56,690.690 INFO    ] ================================================
[2026-06-12 07:19:56,706.706 INFO    ] Launching Daemon at Fri Jun 12 07:19:56 IST 2026
[2026-06-12 07:19:56,718.718 INFO    ] ================================================
[2026-06-12 07:19:57,091.091 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 07:19:57
[2026-06-12 07:19:57,432.432 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 07:19:57,585.585 INFO    ] Initializing speech engine...
[2026-06-12 07:19:57,591.591 INFO    ] 2026-06-12 07:19:57
[2026-06-12 07:19:57,802.802 INFO    ] 2026-06-12 07:19:57
[2026-06-12 07:19:57,831.831 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 07:19:58,018.018 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 07:19:58,021.021 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 07:19:58,165.165 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 07:19:58,228.228 INFO    ] time= 12/06/2026 07:19:58
[2026-06-12 07:19:58,252.252 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 07:19:58,259.259 INFO    ] Checking for existing commands in stream...
[2026-06-12 07:19:58,327.327 INFO    ] No existing commands found in stream
[2026-06-12 07:20:03,347.347 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 07:20:03,350.350 INFO    ] Waiting 0.23 seconds before fallback handling...
[2026-06-12 07:20:07,027.027 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 07:20:07,030.030 INFO    ] Checking for system updates...
[2026-06-12 07:20:07,068.068 INFO    ] 200
[2026-06-12 07:20:07,071.071 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:20:07,125.125 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 07:20:07,127.127 INFO    ] No update needed
[2026-06-12 07:20:07,130.130 INFO    ] Checking for camera pi updates...
[2026-06-12 07:20:07,154.154 INFO    ] 200
[2026-06-12 07:20:07,156.156 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:20:07,179.179 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 07:20:07,216.216 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 07:20:07,217.217 INFO    ] No camera update needed
[2026-06-12 07:20:07,218.218 INFO    ] Script finished. Safe exiting...
[2026-06-12 07:20:07,220.220 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 07:20:07,223.223 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 07:20:07,226.226 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 07:20:09,265.265 INFO    ] ================================================
[2026-06-12 07:20:09,280.280 INFO    ] Launching Daemon at Fri Jun 12 07:20:09 IST 2026
[2026-06-12 07:20:09,291.291 INFO    ] ================================================
[2026-06-12 07:20:09,671.671 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 07:20:09
[2026-06-12 07:20:10,014.014 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 07:20:10,167.167 INFO    ] Initializing speech engine...
[2026-06-12 07:20:10,172.172 INFO    ] 2026-06-12 07:20:10
[2026-06-12 07:20:10,384.384 INFO    ] 2026-06-12 07:20:10
[2026-06-12 07:20:10,414.414 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 07:20:10,537.537 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 07:20:10,601.601 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 07:20:10,747.747 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 07:20:10,810.810 INFO    ] time= 12/06/2026 07:20:10
[2026-06-12 07:20:10,964.964 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 07:20:10,968.968 INFO    ] Checking for existing commands in stream...
[2026-06-12 07:20:11,051.051 INFO    ] No existing commands found in stream
[2026-06-12 07:20:16,062.062 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 07:20:16,065.065 INFO    ] Waiting 1.14 seconds before fallback handling...
[2026-06-12 07:20:17,578.578 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 07:20:17,579.579 INFO    ] Checking for system updates...
[2026-06-12 07:20:17,601.601 INFO    ] 200
[2026-06-12 07:20:17,602.602 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:20:17,634.634 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 07:20:17,636.636 INFO    ] No update needed
[2026-06-12 07:20:17,637.637 INFO    ] Checking for camera pi updates...
[2026-06-12 07:20:17,656.656 INFO    ] 200
[2026-06-12 07:20:17,658.658 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:20:17,683.683 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 07:20:17,724.724 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 07:20:17,725.725 INFO    ] No camera update needed
[2026-06-12 07:20:17,726.726 INFO    ] Script finished. Safe exiting...
[2026-06-12 07:20:17,728.728 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 07:20:17,731.731 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 07:20:17,733.733 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 07:20:19,772.772 INFO    ] ================================================
[2026-06-12 07:20:19,787.787 INFO    ] Launching Daemon at Fri Jun 12 07:20:19 IST 2026
[2026-06-12 07:20:19,798.798 INFO    ] ================================================
[2026-06-12 07:20:20,153.153 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 07:20:20
[2026-06-12 07:20:20,464.464 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 07:20:20,594.594 INFO    ] Initializing speech engine...
[2026-06-12 07:20:20,598.598 INFO    ] 2026-06-12 07:20:20
[2026-06-12 07:20:20,817.817 INFO    ] 2026-06-12 07:20:20
[2026-06-12 07:20:20,846.846 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 07:20:21,033.033 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 07:20:21,036.036 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 07:20:21,167.167 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 07:20:21,228.228 INFO    ] time= 12/06/2026 07:20:21
[2026-06-12 07:20:21,264.264 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 07:20:21,269.269 INFO    ] Checking for existing commands in stream...
[2026-06-12 07:20:21,342.342 INFO    ] No existing commands found in stream
[2026-06-12 07:20:26,351.351 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 07:20:26,353.353 INFO    ] Waiting 1.61 seconds before fallback handling...
[2026-06-12 07:20:28,322.322 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 07:20:28,324.324 INFO    ] Checking for system updates...
[2026-06-12 07:20:28,347.347 INFO    ] 200
[2026-06-12 07:20:28,348.348 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:20:28,382.382 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 07:20:28,383.383 INFO    ] No update needed
[2026-06-12 07:20:28,384.384 INFO    ] Checking for camera pi updates...
[2026-06-12 07:20:28,404.404 INFO    ] 200
[2026-06-12 07:20:28,405.405 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:20:28,428.428 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 07:20:28,465.465 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 07:20:28,466.466 INFO    ] No camera update needed
[2026-06-12 07:20:28,468.468 INFO    ] Script finished. Safe exiting...
[2026-06-12 07:20:28,469.469 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 07:20:28,472.472 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 07:20:28,475.475 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 07:20:30,512.512 INFO    ] ================================================
[2026-06-12 07:20:30,528.528 INFO    ] Launching Daemon at Fri Jun 12 07:20:30 IST 2026
[2026-06-12 07:20:30,539.539 INFO    ] ================================================
[2026-06-12 07:20:30,882.882 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 07:20:30
[2026-06-12 07:20:31,196.196 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 07:20:31,335.335 INFO    ] Initializing speech engine...
[2026-06-12 07:20:31,345.345 INFO    ] 2026-06-12 07:20:31
[2026-06-12 07:20:31,552.552 INFO    ] 2026-06-12 07:20:31
[2026-06-12 07:20:31,581.581 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 07:20:31,768.768 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 07:20:31,776.776 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 07:20:31,931.931 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 07:20:31,997.997 INFO    ] time= 12/06/2026 07:20:31
[2026-06-12 07:20:32,023.023 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 07:20:32,031.031 INFO    ] Checking for existing commands in stream...
[2026-06-12 07:20:32,100.100 INFO    ] No existing commands found in stream
[2026-06-12 07:20:37,110.110 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 07:20:37,114.114 INFO    ] Waiting 2.92 seconds before fallback handling...
[2026-06-12 07:20:40,443.443 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 07:20:40,445.445 INFO    ] Checking for system updates...
[2026-06-12 07:20:40,466.466 INFO    ] 200
[2026-06-12 07:20:40,467.467 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:20:40,500.500 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 07:20:40,502.502 INFO    ] No update needed
[2026-06-12 07:20:40,503.503 INFO    ] Checking for camera pi updates...
[2026-06-12 07:20:40,525.525 INFO    ] 200
[2026-06-12 07:20:40,526.526 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:20:40,550.550 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 07:20:40,589.589 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 07:20:40,591.591 INFO    ] No camera update needed
[2026-06-12 07:20:40,592.592 INFO    ] Script finished. Safe exiting...
[2026-06-12 07:20:40,593.593 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 07:20:40,596.596 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 07:20:40,599.599 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 07:20:42,637.637 INFO    ] ================================================
[2026-06-12 07:20:42,653.653 INFO    ] Launching Daemon at Fri Jun 12 07:20:42 IST 2026
[2026-06-12 07:20:42,664.664 INFO    ] ================================================
[2026-06-12 07:20:43,020.020 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 07:20:43
[2026-06-12 07:20:43,338.338 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 07:20:43,482.482 INFO    ] Initializing speech engine...
[2026-06-12 07:20:43,487.487 INFO    ] 2026-06-12 07:20:43
[2026-06-12 07:20:43,691.691 INFO    ] 2026-06-12 07:20:43
[2026-06-12 07:20:43,721.721 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 07:20:43,905.905 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 07:20:43,914.914 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 07:20:44,042.042 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 07:20:44,112.112 INFO    ] time= 12/06/2026 07:20:44
[2026-06-12 07:20:44,136.136 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 07:20:44,143.143 INFO    ] Checking for existing commands in stream...
[2026-06-12 07:20:44,233.233 INFO    ] No existing commands found in stream
[2026-06-12 07:20:49,247.247 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 07:20:49,250.250 INFO    ] Waiting 3.78 seconds before fallback handling...
[2026-06-12 07:20:53,381.381 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 07:20:53,383.383 INFO    ] Checking for system updates...
[2026-06-12 07:20:53,407.407 INFO    ] 200
[2026-06-12 07:20:53,409.409 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:20:53,442.442 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 07:20:53,444.444 INFO    ] No update needed
[2026-06-12 07:20:53,446.446 INFO    ] Checking for camera pi updates...
[2026-06-12 07:20:53,468.468 INFO    ] 200
[2026-06-12 07:20:53,469.469 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:20:53,498.498 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 07:20:53,535.535 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 07:20:53,537.537 INFO    ] No camera update needed
[2026-06-12 07:20:53,539.539 INFO    ] Script finished. Safe exiting...
[2026-06-12 07:20:53,540.540 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 07:20:53,544.544 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 07:20:53,547.547 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 07:20:55,570.570 INFO    ] ================================================
[2026-06-12 07:20:55,579.579 INFO    ] Launching Daemon at Fri Jun 12 07:20:55 IST 2026
[2026-06-12 07:20:55,585.585 INFO    ] ================================================
[2026-06-12 07:20:55,921.921 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 07:20:55
[2026-06-12 07:20:56,274.274 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 07:20:56,403.403 INFO    ] Initializing speech engine...
[2026-06-12 07:20:56,417.417 INFO    ] 2026-06-12 07:20:56
[2026-06-12 07:20:56,622.622 INFO    ] 2026-06-12 07:20:56
[2026-06-12 07:20:56,651.651 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 07:20:56,832.832 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 07:20:56,836.836 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 07:20:56,970.970 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 07:20:57,037.037 INFO    ] time= 12/06/2026 07:20:56
[2026-06-12 07:20:57,061.061 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 07:20:57,062.062 INFO    ] Checking for existing commands in stream...
[2026-06-12 07:20:57,133.133 INFO    ] No existing commands found in stream
[2026-06-12 07:21:02,146.146 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 07:21:02,148.148 INFO    ] Waiting 2.32 seconds before fallback handling...
[2026-06-12 07:21:04,839.839 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 07:21:04,840.840 INFO    ] Checking for system updates...
[2026-06-12 07:21:04,861.861 INFO    ] 200
[2026-06-12 07:21:04,863.863 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:21:04,893.893 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 07:21:04,894.894 INFO    ] No update needed
[2026-06-12 07:21:04,895.895 INFO    ] Checking for camera pi updates...
[2026-06-12 07:21:04,916.916 INFO    ] 200
[2026-06-12 07:21:04,917.917 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:21:04,942.942 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 07:21:04,996.996 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 07:21:04,997.997 INFO    ] No camera update needed
[2026-06-12 07:21:04,998.998 INFO    ] Script finished. Safe exiting...
[2026-06-12 07:21:05,000.000 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 07:21:05,003.003 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 07:21:05,006.006 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 07:21:07,048.048 INFO    ] ================================================
[2026-06-12 07:21:07,063.063 INFO    ] Launching Daemon at Fri Jun 12 07:21:07 IST 2026
[2026-06-12 07:21:07,074.074 INFO    ] ================================================
[2026-06-12 07:21:07,440.440 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 07:21:07
[2026-06-12 07:21:07,780.780 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 07:21:07,935.935 INFO    ] Initializing speech engine...
[2026-06-12 07:21:07,939.939 INFO    ] 2026-06-12 07:21:07
[2026-06-12 07:21:08,150.150 INFO    ] 2026-06-12 07:21:08
[2026-06-12 07:21:08,180.180 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 07:21:08,368.368 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 07:21:08,379.379 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 07:21:08,517.517 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 07:21:08,582.582 INFO    ] time= 12/06/2026 07:21:08
[2026-06-12 07:21:08,606.606 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 07:21:08,612.612 INFO    ] Checking for existing commands in stream...
[2026-06-12 07:21:08,681.681 INFO    ] No existing commands found in stream
[2026-06-12 07:21:13,695.695 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 07:21:13,698.698 INFO    ] Waiting 3.06 seconds before fallback handling...
[2026-06-12 07:21:17,127.127 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 07:21:17,129.129 INFO    ] Checking for system updates...
[2026-06-12 07:21:17,150.150 INFO    ] 200
[2026-06-12 07:21:17,151.151 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:21:17,184.184 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 07:21:17,185.185 INFO    ] No update needed
[2026-06-12 07:21:17,187.187 INFO    ] Checking for camera pi updates...
[2026-06-12 07:21:17,207.207 INFO    ] 200
[2026-06-12 07:21:17,209.209 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:21:17,232.232 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 07:21:17,268.268 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 07:21:17,270.270 INFO    ] No camera update needed
[2026-06-12 07:21:17,271.271 INFO    ] Script finished. Safe exiting...
[2026-06-12 07:21:17,273.273 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 07:21:17,276.276 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 07:21:17,278.278 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 07:21:19,316.316 INFO    ] ================================================
[2026-06-12 07:21:19,332.332 INFO    ] Launching Daemon at Fri Jun 12 07:21:19 IST 2026
[2026-06-12 07:21:19,343.343 INFO    ] ================================================
[2026-06-12 07:21:19,698.698 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 07:21:19
[2026-06-12 07:21:20,016.016 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 07:21:20,150.150 INFO    ] Initializing speech engine...
[2026-06-12 07:21:20,155.155 INFO    ] 2026-06-12 07:21:20
[2026-06-12 07:21:20,360.360 INFO    ] 2026-06-12 07:21:20
[2026-06-12 07:21:20,392.392 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 07:21:20,551.551 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 07:21:20,591.591 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 07:21:20,770.770 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 07:21:20,818.818 INFO    ] time= 12/06/2026 07:21:20
[2026-06-12 07:21:20,858.858 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 07:21:20,876.876 INFO    ] Checking for existing commands in stream...
[2026-06-12 07:21:20,980.980 INFO    ] No existing commands found in stream
[2026-06-12 07:21:25,989.989 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 07:21:25,992.992 INFO    ] Waiting 1.74 seconds before fallback handling...
[2026-06-12 07:21:28,099.099 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 07:21:28,101.101 INFO    ] Checking for system updates...
[2026-06-12 07:21:28,122.122 INFO    ] 200
[2026-06-12 07:21:28,123.123 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:21:28,155.155 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 07:21:28,157.157 INFO    ] No update needed
[2026-06-12 07:21:28,158.158 INFO    ] Checking for camera pi updates...
[2026-06-12 07:21:28,179.179 INFO    ] 200
[2026-06-12 07:21:28,180.180 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:21:28,205.205 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 07:21:28,243.243 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 07:21:28,245.245 INFO    ] No camera update needed
[2026-06-12 07:21:28,246.246 INFO    ] Script finished. Safe exiting...
[2026-06-12 07:21:28,247.247 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 07:21:28,251.251 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 07:21:28,253.253 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 07:21:30,291.291 INFO    ] ================================================
[2026-06-12 07:21:30,306.306 INFO    ] Launching Daemon at Fri Jun 12 07:21:30 IST 2026
[2026-06-12 07:21:30,317.317 INFO    ] ================================================
[2026-06-12 07:21:30,682.682 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 07:21:30
[2026-06-12 07:21:31,032.032 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 07:21:31,162.162 INFO    ] Initializing speech engine...
[2026-06-12 07:21:31,169.169 INFO    ] 2026-06-12 07:21:31
[2026-06-12 07:21:31,394.394 INFO    ] 2026-06-12 07:21:31
[2026-06-12 07:21:31,425.425 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 07:21:31,618.618 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 07:21:31,629.629 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 07:21:31,790.790 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 07:21:31,858.858 INFO    ] time= 12/06/2026 07:21:31
[2026-06-12 07:21:31,869.869 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 07:21:31,876.876 INFO    ] Checking for existing commands in stream...
[2026-06-12 07:21:31,970.970 INFO    ] No existing commands found in stream
[2026-06-12 07:21:36,996.996 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 07:21:36,999.999 INFO    ] Waiting 2.61 seconds before fallback handling...
[2026-06-12 07:21:39,966.966 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 07:21:39,968.968 INFO    ] Checking for system updates...
[2026-06-12 07:21:39,991.991 INFO    ] 200
[2026-06-12 07:21:39,993.993 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:21:40,028.028 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 07:21:40,029.029 INFO    ] No update needed
[2026-06-12 07:21:40,031.031 INFO    ] Checking for camera pi updates...
[2026-06-12 07:21:40,052.052 INFO    ] 200
[2026-06-12 07:21:40,053.053 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:21:40,077.077 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 07:21:40,216.216 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 07:21:40,218.218 INFO    ] No camera update needed
[2026-06-12 07:21:40,219.219 INFO    ] Script finished. Safe exiting...
[2026-06-12 07:21:40,221.221 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 07:21:40,224.224 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 07:21:40,227.227 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 07:21:42,270.270 INFO    ] ================================================
[2026-06-12 07:21:42,286.286 INFO    ] Launching Daemon at Fri Jun 12 07:21:42 IST 2026
[2026-06-12 07:21:42,297.297 INFO    ] ================================================
[2026-06-12 07:21:42,627.627 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 07:21:42
[2026-06-12 07:21:42,940.940 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 07:21:43,069.069 INFO    ] Initializing speech engine...
[2026-06-12 07:21:43,073.073 INFO    ] 2026-06-12 07:21:43
[2026-06-12 07:21:43,288.288 INFO    ] 2026-06-12 07:21:43
[2026-06-12 07:21:43,317.317 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 07:21:43,502.502 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 07:21:43,510.510 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 07:21:43,640.640 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 07:21:43,704.704 INFO    ] time= 12/06/2026 07:21:43
[2026-06-12 07:21:43,733.733 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 07:21:43,740.740 INFO    ] Checking for existing commands in stream...
[2026-06-12 07:21:43,808.808 INFO    ] No existing commands found in stream
[2026-06-12 07:21:48,817.817 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 07:21:48,819.819 INFO    ] Waiting 3.29 seconds before fallback handling...
[2026-06-12 07:21:52,453.453 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 07:21:52,455.455 INFO    ] Checking for system updates...
[2026-06-12 07:21:52,477.477 INFO    ] 200
[2026-06-12 07:21:52,478.478 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:21:52,511.511 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 07:21:52,513.513 INFO    ] No update needed
[2026-06-12 07:21:52,514.514 INFO    ] Checking for camera pi updates...
[2026-06-12 07:21:52,536.536 INFO    ] 200
[2026-06-12 07:21:52,538.538 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:21:52,571.571 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 07:21:52,610.610 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 07:21:52,612.612 INFO    ] No camera update needed
[2026-06-12 07:21:52,613.613 INFO    ] Script finished. Safe exiting...
[2026-06-12 07:21:52,614.614 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 07:21:52,617.617 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 07:21:52,620.620 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 07:21:54,661.661 INFO    ] ================================================
[2026-06-12 07:21:54,676.676 INFO    ] Launching Daemon at Fri Jun 12 07:21:54 IST 2026
[2026-06-12 07:21:54,688.688 INFO    ] ================================================
[2026-06-12 07:21:55,043.043 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 07:21:55
[2026-06-12 07:21:55,379.379 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 07:21:55,521.521 INFO    ] Initializing speech engine...
[2026-06-12 07:21:55,526.526 INFO    ] 2026-06-12 07:21:55
[2026-06-12 07:21:55,728.728 INFO    ] 2026-06-12 07:21:55
[2026-06-12 07:21:55,757.757 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 07:21:55,953.953 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 07:21:55,967.967 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 07:21:56,137.137 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 07:21:56,168.168 INFO    ] time= 12/06/2026 07:21:56
[2026-06-12 07:21:56,174.174 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 07:21:56,180.180 INFO    ] Checking for existing commands in stream...
[2026-06-12 07:21:56,247.247 INFO    ] No existing commands found in stream
[2026-06-12 07:22:01,256.256 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 07:22:01,258.258 INFO    ] Waiting 1.05 seconds before fallback handling...
[2026-06-12 07:22:02,611.611 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 07:22:02,612.612 INFO    ] Checking for system updates...
[2026-06-12 07:22:02,633.633 INFO    ] 200
[2026-06-12 07:22:02,635.635 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:22:02,665.665 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 07:22:02,666.666 INFO    ] No update needed
[2026-06-12 07:22:02,667.667 INFO    ] Checking for camera pi updates...
[2026-06-12 07:22:02,687.687 INFO    ] 200
[2026-06-12 07:22:02,688.688 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:22:02,712.712 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 07:22:02,762.762 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 07:22:02,763.763 INFO    ] No camera update needed
[2026-06-12 07:22:02,765.765 INFO    ] Script finished. Safe exiting...
[2026-06-12 07:22:02,766.766 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 07:22:02,769.769 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 07:22:02,771.771 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 07:22:04,811.811 INFO    ] ================================================
[2026-06-12 07:22:04,826.826 INFO    ] Launching Daemon at Fri Jun 12 07:22:04 IST 2026
[2026-06-12 07:22:04,837.837 INFO    ] ================================================
[2026-06-12 07:22:05,190.190 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 07:22:05
[2026-06-12 07:22:05,526.526 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 07:22:05,678.678 INFO    ] Initializing speech engine...
[2026-06-12 07:22:05,683.683 INFO    ] 2026-06-12 07:22:05
[2026-06-12 07:22:05,899.899 INFO    ] 2026-06-12 07:22:05
[2026-06-12 07:22:05,928.928 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 07:22:06,110.110 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 07:22:06,120.120 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 07:22:06,242.242 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 07:22:06,303.303 INFO    ] time= 12/06/2026 07:22:06
[2026-06-12 07:22:06,337.337 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 07:22:06,342.342 INFO    ] Checking for existing commands in stream...
[2026-06-12 07:22:06,413.413 INFO    ] No existing commands found in stream
[2026-06-12 07:22:11,422.422 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 07:22:11,425.425 INFO    ] Waiting 3.37 seconds before fallback handling...
[2026-06-12 07:22:15,159.159 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 07:22:15,161.161 INFO    ] Checking for system updates...
[2026-06-12 07:22:15,182.182 INFO    ] 200
[2026-06-12 07:22:15,183.183 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:22:15,213.213 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 07:22:15,215.215 INFO    ] No update needed
[2026-06-12 07:22:15,216.216 INFO    ] Checking for camera pi updates...
[2026-06-12 07:22:15,235.235 INFO    ] 200
[2026-06-12 07:22:15,236.236 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:22:15,261.261 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 07:22:15,297.297 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 07:22:15,298.298 INFO    ] No camera update needed
[2026-06-12 07:22:15,300.300 INFO    ] Script finished. Safe exiting...
[2026-06-12 07:22:15,301.301 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 07:22:15,304.304 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 07:22:15,307.307 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 07:22:17,345.345 INFO    ] ================================================
[2026-06-12 07:22:17,360.360 INFO    ] Launching Daemon at Fri Jun 12 07:22:17 IST 2026
[2026-06-12 07:22:17,371.371 INFO    ] ================================================
[2026-06-12 07:22:17,735.735 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 07:22:17
[2026-06-12 07:22:18,046.046 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 07:22:18,178.178 INFO    ] Initializing speech engine...
[2026-06-12 07:22:18,182.182 INFO    ] 2026-06-12 07:22:18
[2026-06-12 07:22:18,410.410 INFO    ] 2026-06-12 07:22:18
[2026-06-12 07:22:18,440.440 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 07:22:18,644.644 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 07:22:18,648.648 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 07:22:18,784.784 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 07:22:18,851.851 INFO    ] time= 12/06/2026 07:22:18
[2026-06-12 07:22:18,874.874 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 07:22:18,881.881 INFO    ] Checking for existing commands in stream...
[2026-06-12 07:22:18,947.947 INFO    ] No existing commands found in stream
[2026-06-12 07:22:23,956.956 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 07:22:23,959.959 INFO    ] Waiting 0.38 seconds before fallback handling...
[2026-06-12 07:22:24,690.690 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 07:22:24,692.692 INFO    ] Checking for system updates...
[2026-06-12 07:22:24,713.713 INFO    ] 200
[2026-06-12 07:22:24,714.714 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:22:24,747.747 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 07:22:24,748.748 INFO    ] No update needed
[2026-06-12 07:22:24,749.749 INFO    ] Checking for camera pi updates...
[2026-06-12 07:22:24,769.769 INFO    ] 200
[2026-06-12 07:22:24,770.770 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:22:24,793.793 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 07:22:24,837.837 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 07:22:24,838.838 INFO    ] No camera update needed
[2026-06-12 07:22:24,840.840 INFO    ] Script finished. Safe exiting...
[2026-06-12 07:22:24,841.841 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 07:22:24,844.844 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 07:22:24,847.847 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 07:22:26,885.885 INFO    ] ================================================
[2026-06-12 07:22:26,900.900 INFO    ] Launching Daemon at Fri Jun 12 07:22:26 IST 2026
[2026-06-12 07:22:26,912.912 INFO    ] ================================================
[2026-06-12 07:22:27,270.270 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 07:22:27
[2026-06-12 07:22:27,580.580 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 07:22:27,709.709 INFO    ] Initializing speech engine...
[2026-06-12 07:22:27,713.713 INFO    ] 2026-06-12 07:22:27
[2026-06-12 07:22:27,930.930 INFO    ] 2026-06-12 07:22:27
[2026-06-12 07:22:27,958.958 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 07:22:28,140.140 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 07:22:28,143.143 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 07:22:28,278.278 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 07:22:28,337.337 INFO    ] time= 12/06/2026 07:22:28
[2026-06-12 07:22:28,369.369 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 07:22:28,375.375 INFO    ] Checking for existing commands in stream...
[2026-06-12 07:22:28,441.441 INFO    ] No existing commands found in stream
[2026-06-12 07:22:33,451.451 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 07:22:33,453.453 INFO    ] Waiting 3.13 seconds before fallback handling...
[2026-06-12 07:22:36,926.926 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 07:22:36,928.928 INFO    ] Checking for system updates...
[2026-06-12 07:22:36,949.949 INFO    ] 200
[2026-06-12 07:22:36,951.951 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:22:36,983.983 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 07:22:36,984.984 INFO    ] No update needed
[2026-06-12 07:22:36,986.986 INFO    ] Checking for camera pi updates...
[2026-06-12 07:22:37,005.005 INFO    ] 200
[2026-06-12 07:22:37,006.006 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:22:37,032.032 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 07:22:37,065.065 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 07:22:37,067.067 INFO    ] No camera update needed
[2026-06-12 07:22:37,068.068 INFO    ] Script finished. Safe exiting...
[2026-06-12 07:22:37,069.069 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 07:22:37,072.072 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 07:22:37,075.075 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 07:22:39,117.117 INFO    ] ================================================
[2026-06-12 07:22:39,132.132 INFO    ] Launching Daemon at Fri Jun 12 07:22:39 IST 2026
[2026-06-12 07:22:39,143.143 INFO    ] ================================================
[2026-06-12 07:22:39,467.467 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 07:22:39
[2026-06-12 07:22:39,778.778 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 07:22:39,921.921 INFO    ] Initializing speech engine...
[2026-06-12 07:22:39,925.925 INFO    ] 2026-06-12 07:22:39
[2026-06-12 07:22:40,132.132 INFO    ] 2026-06-12 07:22:40
[2026-06-12 07:22:40,162.162 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 07:22:40,316.316 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 07:22:40,317.317 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 07:22:40,479.479 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 07:22:40,515.515 INFO    ] time= 12/06/2026 07:22:40
[2026-06-12 07:22:40,558.558 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 07:22:40,579.579 INFO    ] Checking for existing commands in stream...
[2026-06-12 07:22:40,692.692 INFO    ] No existing commands found in stream
[2026-06-12 07:22:45,702.702 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 07:22:45,705.705 INFO    ] Waiting 1.32 seconds before fallback handling...
[2026-06-12 07:22:47,388.388 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 07:22:47,389.389 INFO    ] Checking for system updates...
[2026-06-12 07:22:47,410.410 INFO    ] 200
[2026-06-12 07:22:47,411.411 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:22:47,443.443 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 07:22:47,445.445 INFO    ] No update needed
[2026-06-12 07:22:47,446.446 INFO    ] Checking for camera pi updates...
[2026-06-12 07:22:47,465.465 INFO    ] 200
[2026-06-12 07:22:47,467.467 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:22:47,491.491 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 07:22:47,523.523 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 07:22:47,524.524 INFO    ] No camera update needed
[2026-06-12 07:22:47,526.526 INFO    ] Script finished. Safe exiting...
[2026-06-12 07:22:47,527.527 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 07:22:47,530.530 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 07:22:47,533.533 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 07:22:49,571.571 INFO    ] ================================================
[2026-06-12 07:22:49,586.586 INFO    ] Launching Daemon at Fri Jun 12 07:22:49 IST 2026
[2026-06-12 07:22:49,597.597 INFO    ] ================================================
[2026-06-12 07:22:49,928.928 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 07:22:49
[2026-06-12 07:22:50,240.240 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 07:22:50,375.375 INFO    ] Initializing speech engine...
[2026-06-12 07:22:50,378.378 INFO    ] 2026-06-12 07:22:50
[2026-06-12 07:22:50,598.598 INFO    ] 2026-06-12 07:22:50
[2026-06-12 07:22:50,626.626 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 07:22:50,917.917 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 07:22:50,949.949 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 07:22:51,115.115 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 07:22:51,118.118 INFO    ] time= 12/06/2026 07:22:51
[2026-06-12 07:22:51,144.144 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 07:22:51,146.146 INFO    ] Checking for existing commands in stream...
[2026-06-12 07:22:51,243.243 INFO    ] No existing commands found in stream
[2026-06-12 07:22:56,252.252 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 07:22:56,255.255 INFO    ] Waiting 0.54 seconds before fallback handling...
[2026-06-12 07:22:57,166.166 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 07:22:57,168.168 INFO    ] Checking for system updates...
[2026-06-12 07:22:57,190.190 INFO    ] 200
[2026-06-12 07:22:57,191.191 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:22:57,223.223 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 07:22:57,225.225 INFO    ] No update needed
[2026-06-12 07:22:57,226.226 INFO    ] Checking for camera pi updates...
[2026-06-12 07:22:57,246.246 INFO    ] 200
[2026-06-12 07:22:57,247.247 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:22:57,271.271 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 07:22:57,307.307 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 07:22:57,309.309 INFO    ] No camera update needed
[2026-06-12 07:22:57,310.310 INFO    ] Script finished. Safe exiting...
[2026-06-12 07:22:57,311.311 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 07:22:57,314.314 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 07:22:57,317.317 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 07:22:59,357.357 INFO    ] ================================================
[2026-06-12 07:22:59,372.372 INFO    ] Launching Daemon at Fri Jun 12 07:22:59 IST 2026
[2026-06-12 07:22:59,383.383 INFO    ] ================================================
[2026-06-12 07:22:59,726.726 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 07:22:59
[2026-06-12 07:23:00,038.038 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 07:23:00,180.180 INFO    ] Initializing speech engine...
[2026-06-12 07:23:00,185.185 INFO    ] 2026-06-12 07:23:00
[2026-06-12 07:23:00,388.388 INFO    ] 2026-06-12 07:23:00
[2026-06-12 07:23:00,417.417 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 07:23:00,601.601 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 07:23:00,609.609 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 07:23:00,738.738 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 07:23:00,797.797 INFO    ] time= 12/06/2026 07:23:00
[2026-06-12 07:23:00,829.829 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 07:23:00,835.835 INFO    ] Checking for existing commands in stream...
[2026-06-12 07:23:00,925.925 INFO    ] No existing commands found in stream
[2026-06-12 07:23:05,932.932 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 07:23:05,935.935 INFO    ] Waiting 3.99 seconds before fallback handling...
[2026-06-12 07:23:10,305.305 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 07:23:10,307.307 INFO    ] Checking for system updates...
[2026-06-12 07:23:10,328.328 INFO    ] 200
[2026-06-12 07:23:10,329.329 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:23:10,362.362 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 07:23:10,363.363 INFO    ] No update needed
[2026-06-12 07:23:10,364.364 INFO    ] Checking for camera pi updates...
[2026-06-12 07:23:10,384.384 INFO    ] 200
[2026-06-12 07:23:10,385.385 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:23:10,409.409 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 07:23:10,443.443 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 07:23:10,444.444 INFO    ] No camera update needed
[2026-06-12 07:23:10,445.445 INFO    ] Script finished. Safe exiting...
[2026-06-12 07:23:10,447.447 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 07:23:10,450.450 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 07:23:10,452.452 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 07:23:12,492.492 INFO    ] ================================================
[2026-06-12 07:23:12,507.507 INFO    ] Launching Daemon at Fri Jun 12 07:23:12 IST 2026
[2026-06-12 07:23:12,518.518 INFO    ] ================================================
[2026-06-12 07:23:12,872.872 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 07:23:12
[2026-06-12 07:23:13,191.191 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 07:23:13,334.334 INFO    ] Initializing speech engine...
[2026-06-12 07:23:13,340.340 INFO    ] 2026-06-12 07:23:13
[2026-06-12 07:23:13,541.541 INFO    ] 2026-06-12 07:23:13
[2026-06-12 07:23:13,571.571 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 07:23:13,829.829 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 07:23:13,881.881 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 07:23:14,046.046 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 07:23:14,050.050 INFO    ] time= 12/06/2026 07:23:14
[2026-06-12 07:23:14,052.052 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 07:23:14,077.077 INFO    ] Checking for existing commands in stream...
[2026-06-12 07:23:14,173.173 INFO    ] No existing commands found in stream
[2026-06-12 07:23:19,183.183 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 07:23:19,186.186 INFO    ] Waiting 2.30 seconds before fallback handling...
[2026-06-12 07:23:21,888.888 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 07:23:21,890.890 INFO    ] Checking for system updates...
[2026-06-12 07:23:21,911.911 INFO    ] 200
[2026-06-12 07:23:21,912.912 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:23:21,944.944 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 07:23:21,945.945 INFO    ] No update needed
[2026-06-12 07:23:21,947.947 INFO    ] Checking for camera pi updates...
[2026-06-12 07:23:21,967.967 INFO    ] 200
[2026-06-12 07:23:21,969.969 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:23:21,993.993 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 07:23:22,030.030 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 07:23:22,031.031 INFO    ] No camera update needed
[2026-06-12 07:23:22,033.033 INFO    ] Script finished. Safe exiting...
[2026-06-12 07:23:22,034.034 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 07:23:22,037.037 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 07:23:22,040.040 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 07:23:24,082.082 INFO    ] ================================================
[2026-06-12 07:23:24,097.097 INFO    ] Launching Daemon at Fri Jun 12 07:23:24 IST 2026
[2026-06-12 07:23:24,107.107 INFO    ] ================================================
[2026-06-12 07:23:24,473.473 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 07:23:24
[2026-06-12 07:23:24,812.812 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 07:23:24,956.956 INFO    ] Initializing speech engine...
[2026-06-12 07:23:24,963.963 INFO    ] 2026-06-12 07:23:24
[2026-06-12 07:23:25,175.175 INFO    ] 2026-06-12 07:23:25
[2026-06-12 07:23:25,204.204 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 07:23:25,387.387 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 07:23:25,391.391 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 07:23:25,526.526 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 07:23:25,595.595 INFO    ] time= 12/06/2026 07:23:25
[2026-06-12 07:23:25,620.620 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 07:23:25,622.622 INFO    ] Checking for existing commands in stream...
[2026-06-12 07:23:25,693.693 INFO    ] No existing commands found in stream
[2026-06-12 07:23:30,702.702 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 07:23:30,706.706 INFO    ] Waiting 3.91 seconds before fallback handling...
[2026-06-12 07:23:34,984.984 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 07:23:34,985.985 INFO    ] Checking for system updates...
[2026-06-12 07:23:35,007.007 INFO    ] 200
[2026-06-12 07:23:35,008.008 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:23:35,043.043 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 07:23:35,044.044 INFO    ] No update needed
[2026-06-12 07:23:35,045.045 INFO    ] Checking for camera pi updates...
[2026-06-12 07:23:35,066.066 INFO    ] 200
[2026-06-12 07:23:35,067.067 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:23:35,092.092 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 07:23:35,132.132 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 07:23:35,133.133 INFO    ] No camera update needed
[2026-06-12 07:23:35,134.134 INFO    ] Script finished. Safe exiting...
[2026-06-12 07:23:35,136.136 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 07:23:35,139.139 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 07:23:35,141.141 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 07:23:37,179.179 INFO    ] ================================================
[2026-06-12 07:23:37,197.197 INFO    ] Launching Daemon at Fri Jun 12 07:23:37 IST 2026
[2026-06-12 07:23:37,209.209 INFO    ] ================================================
[2026-06-12 07:23:37,562.562 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 07:23:37
[2026-06-12 07:23:37,879.879 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 07:23:38,023.023 INFO    ] Initializing speech engine...
[2026-06-12 07:23:38,029.029 INFO    ] 2026-06-12 07:23:38
[2026-06-12 07:23:38,232.232 INFO    ] 2026-06-12 07:23:38
[2026-06-12 07:23:38,260.260 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 07:23:38,445.445 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 07:23:38,448.448 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 07:23:38,584.584 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 07:23:38,651.651 INFO    ] time= 12/06/2026 07:23:38
[2026-06-12 07:23:38,675.675 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 07:23:38,682.682 INFO    ] Checking for existing commands in stream...
[2026-06-12 07:23:38,748.748 INFO    ] No existing commands found in stream
[2026-06-12 07:23:43,757.757 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 07:23:43,760.760 INFO    ] Waiting 1.28 seconds before fallback handling...
[2026-06-12 07:23:45,404.404 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 07:23:45,406.406 INFO    ] Checking for system updates...
[2026-06-12 07:23:45,427.427 INFO    ] 200
[2026-06-12 07:23:45,428.428 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:23:45,459.459 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 07:23:45,460.460 INFO    ] No update needed
[2026-06-12 07:23:45,461.461 INFO    ] Checking for camera pi updates...
[2026-06-12 07:23:45,482.482 INFO    ] 200
[2026-06-12 07:23:45,483.483 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:23:45,506.506 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 07:23:45,654.654 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 07:23:45,655.655 INFO    ] No camera update needed
[2026-06-12 07:23:45,656.656 INFO    ] Script finished. Safe exiting...
[2026-06-12 07:23:45,657.657 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 07:23:45,660.660 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 07:23:45,663.663 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 07:23:47,705.705 INFO    ] ================================================
[2026-06-12 07:23:47,720.720 INFO    ] Launching Daemon at Fri Jun 12 07:23:47 IST 2026
[2026-06-12 07:23:47,730.730 INFO    ] ================================================
[2026-06-12 07:23:48,112.112 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 07:23:48
[2026-06-12 07:23:48,423.423 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 07:23:48,554.554 INFO    ] Initializing speech engine...
[2026-06-12 07:23:48,567.567 INFO    ] 2026-06-12 07:23:48
[2026-06-12 07:23:48,776.776 INFO    ] 2026-06-12 07:23:48
[2026-06-12 07:23:48,805.805 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 07:23:48,992.992 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 07:23:49,001.001 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 07:23:49,133.133 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 07:23:49,192.192 INFO    ] time= 12/06/2026 07:23:49
[2026-06-12 07:23:49,225.225 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 07:23:49,232.232 INFO    ] Checking for existing commands in stream...
[2026-06-12 07:23:49,298.298 INFO    ] No existing commands found in stream
[2026-06-12 07:23:54,308.308 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 07:23:54,311.311 INFO    ] Waiting 2.40 seconds before fallback handling...
[2026-06-12 07:23:57,109.109 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 07:23:57,110.110 INFO    ] Checking for system updates...
[2026-06-12 07:23:57,131.131 INFO    ] 200
[2026-06-12 07:23:57,132.132 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:23:57,162.162 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 07:23:57,164.164 INFO    ] No update needed
[2026-06-12 07:23:57,165.165 INFO    ] Checking for camera pi updates...
[2026-06-12 07:23:57,185.185 INFO    ] 200
[2026-06-12 07:23:57,187.187 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:23:57,211.211 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 07:23:57,247.247 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 07:23:57,249.249 INFO    ] No camera update needed
[2026-06-12 07:23:57,250.250 INFO    ] Script finished. Safe exiting...
[2026-06-12 07:23:57,252.252 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 07:23:57,254.254 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 07:23:57,257.257 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 07:23:59,299.299 INFO    ] ================================================
[2026-06-12 07:23:59,314.314 INFO    ] Launching Daemon at Fri Jun 12 07:23:59 IST 2026
[2026-06-12 07:23:59,325.325 INFO    ] ================================================
[2026-06-12 07:23:59,680.680 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 07:23:59
[2026-06-12 07:23:59,991.991 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 07:24:00,122.122 INFO    ] Initializing speech engine...
[2026-06-12 07:24:00,129.129 INFO    ] 2026-06-12 07:24:00
[2026-06-12 07:24:00,343.343 INFO    ] 2026-06-12 07:24:00
[2026-06-12 07:24:00,373.373 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 07:24:00,559.559 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 07:24:00,569.569 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 07:24:00,701.701 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 07:24:00,769.769 INFO    ] time= 12/06/2026 07:24:00
[2026-06-12 07:24:00,793.793 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 07:24:00,799.799 INFO    ] Checking for existing commands in stream...
[2026-06-12 07:24:00,866.866 INFO    ] No existing commands found in stream
[2026-06-12 07:24:05,876.876 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 07:24:05,879.879 INFO    ] Waiting 3.07 seconds before fallback handling...
[2026-06-12 07:24:09,319.319 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 07:24:09,321.321 INFO    ] Checking for system updates...
[2026-06-12 07:24:09,342.342 INFO    ] 200
[2026-06-12 07:24:09,343.343 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:24:09,375.375 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 07:24:09,377.377 INFO    ] No update needed
[2026-06-12 07:24:09,378.378 INFO    ] Checking for camera pi updates...
[2026-06-12 07:24:09,398.398 INFO    ] 200
[2026-06-12 07:24:09,400.400 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:24:09,424.424 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 07:24:09,461.461 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 07:24:09,462.462 INFO    ] No camera update needed
[2026-06-12 07:24:09,463.463 INFO    ] Script finished. Safe exiting...
[2026-06-12 07:24:09,464.464 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 07:24:09,467.467 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 07:24:09,470.470 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 07:24:11,509.509 INFO    ] ================================================
[2026-06-12 07:24:11,525.525 INFO    ] Launching Daemon at Fri Jun 12 07:24:11 IST 2026
[2026-06-12 07:24:11,536.536 INFO    ] ================================================
[2026-06-12 07:24:11,868.868 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 07:24:11
[2026-06-12 07:24:12,181.181 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 07:24:12,311.311 INFO    ] Initializing speech engine...
[2026-06-12 07:24:12,319.319 INFO    ] 2026-06-12 07:24:12
[2026-06-12 07:24:12,530.530 INFO    ] 2026-06-12 07:24:12
[2026-06-12 07:24:12,558.558 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 07:24:12,680.680 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 07:24:12,741.741 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 07:24:12,878.878 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 07:24:12,942.942 INFO    ] time= 12/06/2026 07:24:12
[2026-06-12 07:24:12,969.969 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 07:24:12,976.976 INFO    ] Checking for existing commands in stream...
[2026-06-12 07:24:13,042.042 INFO    ] No existing commands found in stream
[2026-06-12 07:24:18,056.056 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 07:24:18,059.059 INFO    ] Waiting 0.59 seconds before fallback handling...
[2026-06-12 07:24:19,028.028 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 07:24:19,030.030 INFO    ] Checking for system updates...
[2026-06-12 07:24:19,051.051 INFO    ] 200
[2026-06-12 07:24:19,052.052 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:24:19,084.084 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 07:24:19,085.085 INFO    ] No update needed
[2026-06-12 07:24:19,087.087 INFO    ] Checking for camera pi updates...
[2026-06-12 07:24:19,106.106 INFO    ] 200
[2026-06-12 07:24:19,107.107 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:24:19,132.132 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 07:24:19,172.172 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 07:24:19,174.174 INFO    ] No camera update needed
[2026-06-12 07:24:19,175.175 INFO    ] Script finished. Safe exiting...
[2026-06-12 07:24:19,176.176 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 07:24:19,179.179 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 07:24:19,182.182 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 07:24:21,222.222 INFO    ] ================================================
[2026-06-12 07:24:21,238.238 INFO    ] Launching Daemon at Fri Jun 12 07:24:21 IST 2026
[2026-06-12 07:24:21,249.249 INFO    ] ================================================
[2026-06-12 07:24:21,599.599 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 07:24:21
[2026-06-12 07:24:21,911.911 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 07:24:22,043.043 INFO    ] Initializing speech engine...
[2026-06-12 07:24:22,051.051 INFO    ] 2026-06-12 07:24:22
[2026-06-12 07:24:22,265.265 INFO    ] 2026-06-12 07:24:22
[2026-06-12 07:24:22,294.294 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 07:24:22,479.479 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 07:24:22,483.483 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 07:24:22,614.614 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 07:24:22,675.675 INFO    ] time= 12/06/2026 07:24:22
[2026-06-12 07:24:22,710.710 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 07:24:22,715.715 INFO    ] Checking for existing commands in stream...
[2026-06-12 07:24:22,788.788 INFO    ] No existing commands found in stream
[2026-06-12 07:24:27,802.802 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 07:24:27,804.804 INFO    ] Waiting 2.43 seconds before fallback handling...
[2026-06-12 07:24:30,598.598 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 07:24:30,600.600 INFO    ] Checking for system updates...
[2026-06-12 07:24:30,621.621 INFO    ] 200
[2026-06-12 07:24:30,622.622 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:24:30,655.655 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 07:24:30,656.656 INFO    ] No update needed
[2026-06-12 07:24:30,658.658 INFO    ] Checking for camera pi updates...
[2026-06-12 07:24:30,681.681 INFO    ] 200
[2026-06-12 07:24:30,682.682 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:24:30,710.710 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 07:24:30,746.746 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 07:24:30,748.748 INFO    ] No camera update needed
[2026-06-12 07:24:30,749.749 INFO    ] Script finished. Safe exiting...
[2026-06-12 07:24:30,751.751 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 07:24:30,754.754 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 07:24:30,757.757 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 07:24:32,787.787 INFO    ] ================================================
[2026-06-12 07:24:32,796.796 INFO    ] Launching Daemon at Fri Jun 12 07:24:32 IST 2026
[2026-06-12 07:24:32,802.802 INFO    ] ================================================
[2026-06-12 07:24:33,154.154 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 07:24:33
[2026-06-12 07:24:33,471.471 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 07:24:33,610.610 INFO    ] Initializing speech engine...
[2026-06-12 07:24:33,619.619 INFO    ] 2026-06-12 07:24:33
[2026-06-12 07:24:33,823.823 INFO    ] 2026-06-12 07:24:33
[2026-06-12 07:24:33,852.852 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 07:24:34,036.036 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 07:24:34,046.046 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 07:24:34,184.184 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 07:24:34,240.240 INFO    ] time= 12/06/2026 07:24:34
[2026-06-12 07:24:34,263.263 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 07:24:34,270.270 INFO    ] Checking for existing commands in stream...
[2026-06-12 07:24:34,335.335 INFO    ] No existing commands found in stream
[2026-06-12 07:24:39,345.345 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 07:24:39,348.348 INFO    ] Waiting 3.56 seconds before fallback handling...
[2026-06-12 07:24:43,289.289 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 07:24:43,291.291 INFO    ] Checking for system updates...
[2026-06-12 07:24:43,313.313 INFO    ] 200
[2026-06-12 07:24:43,314.314 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:24:43,350.350 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 07:24:43,352.352 INFO    ] No update needed
[2026-06-12 07:24:43,353.353 INFO    ] Checking for camera pi updates...
[2026-06-12 07:24:43,381.381 INFO    ] 200
[2026-06-12 07:24:43,382.382 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:24:43,407.407 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 07:24:43,443.443 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 07:24:43,445.445 INFO    ] No camera update needed
[2026-06-12 07:24:43,446.446 INFO    ] Script finished. Safe exiting...
[2026-06-12 07:24:43,448.448 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 07:24:43,451.451 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 07:24:43,454.454 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 07:24:45,494.494 INFO    ] ================================================
[2026-06-12 07:24:45,509.509 INFO    ] Launching Daemon at Fri Jun 12 07:24:45 IST 2026
[2026-06-12 07:24:45,521.521 INFO    ] ================================================
[2026-06-12 07:24:45,886.886 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 07:24:45
[2026-06-12 07:24:46,225.225 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 07:24:46,378.378 INFO    ] Initializing speech engine...
[2026-06-12 07:24:46,383.383 INFO    ] 2026-06-12 07:24:46
[2026-06-12 07:24:46,594.594 INFO    ] 2026-06-12 07:24:46
[2026-06-12 07:24:46,623.623 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 07:24:46,810.810 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 07:24:46,819.819 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 07:24:46,955.955 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 07:24:47,018.018 INFO    ] time= 12/06/2026 07:24:46
[2026-06-12 07:24:47,043.043 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 07:24:47,049.049 INFO    ] Checking for existing commands in stream...
[2026-06-12 07:24:47,118.118 INFO    ] No existing commands found in stream
[2026-06-12 07:24:52,132.132 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 07:24:52,136.136 INFO    ] Waiting 3.94 seconds before fallback handling...
[2026-06-12 07:24:56,427.427 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 07:24:56,429.429 INFO    ] Checking for system updates...
[2026-06-12 07:24:56,451.451 INFO    ] 200
[2026-06-12 07:24:56,452.452 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:24:56,486.486 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 07:24:56,487.487 INFO    ] No update needed
[2026-06-12 07:24:56,488.488 INFO    ] Checking for camera pi updates...
[2026-06-12 07:24:56,509.509 INFO    ] 200
[2026-06-12 07:24:56,511.511 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:24:56,535.535 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 07:24:56,576.576 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 07:24:56,578.578 INFO    ] No camera update needed
[2026-06-12 07:24:56,579.579 INFO    ] Script finished. Safe exiting...
[2026-06-12 07:24:56,581.581 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 07:24:56,584.584 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 07:24:56,587.587 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 07:24:58,628.628 INFO    ] ================================================
[2026-06-12 07:24:58,644.644 INFO    ] Launching Daemon at Fri Jun 12 07:24:58 IST 2026
[2026-06-12 07:24:58,655.655 INFO    ] ================================================
[2026-06-12 07:24:58,986.986 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 07:24:58
[2026-06-12 07:24:59,297.297 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 07:24:59,434.434 INFO    ] Initializing speech engine...
[2026-06-12 07:24:59,443.443 INFO    ] 2026-06-12 07:24:59
[2026-06-12 07:24:59,648.648 INFO    ] 2026-06-12 07:24:59
[2026-06-12 07:24:59,676.676 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 07:24:59,859.859 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 07:24:59,862.862 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 07:24:59,991.991 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 07:25:00,036.036 INFO    ] time= 12/06/2026 07:24:59
[2026-06-12 07:25:00,081.081 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 07:25:00,091.091 INFO    ] Checking for existing commands in stream...
[2026-06-12 07:25:00,162.162 INFO    ] No existing commands found in stream
[2026-06-12 07:25:05,171.171 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 07:25:05,174.174 INFO    ] Waiting 2.01 seconds before fallback handling...
[2026-06-12 07:25:07,547.547 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 07:25:07,548.548 INFO    ] Checking for system updates...
[2026-06-12 07:25:07,569.569 INFO    ] 200
[2026-06-12 07:25:07,571.571 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:25:07,603.603 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 07:25:07,605.605 INFO    ] No update needed
[2026-06-12 07:25:07,606.606 INFO    ] Checking for camera pi updates...
[2026-06-12 07:25:07,627.627 INFO    ] 200
[2026-06-12 07:25:07,628.628 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:25:07,653.653 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 07:25:07,693.693 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 07:25:07,694.694 INFO    ] No camera update needed
[2026-06-12 07:25:07,695.695 INFO    ] Script finished. Safe exiting...
[2026-06-12 07:25:07,697.697 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 07:25:07,700.700 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 07:25:07,702.702 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 07:25:09,741.741 INFO    ] ================================================
[2026-06-12 07:25:09,758.758 INFO    ] Launching Daemon at Fri Jun 12 07:25:09 IST 2026
[2026-06-12 07:25:09,769.769 INFO    ] ================================================
[2026-06-12 07:25:10,108.108 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 07:25:10
[2026-06-12 07:25:10,420.420 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 07:25:10,550.550 INFO    ] Initializing speech engine...
[2026-06-12 07:25:10,555.555 INFO    ] 2026-06-12 07:25:10
[2026-06-12 07:25:10,774.774 INFO    ] 2026-06-12 07:25:10
[2026-06-12 07:25:10,803.803 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 07:25:10,990.990 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 07:25:10,999.999 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 07:25:11,131.131 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 07:25:11,190.190 INFO    ] time= 12/06/2026 07:25:11
[2026-06-12 07:25:11,223.223 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 07:25:11,230.230 INFO    ] Checking for existing commands in stream...
[2026-06-12 07:25:11,322.322 INFO    ] No existing commands found in stream
[2026-06-12 07:25:16,336.336 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 07:25:16,338.338 INFO    ] Waiting 0.24 seconds before fallback handling...
[2026-06-12 07:25:16,946.946 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 07:25:16,947.947 INFO    ] Checking for system updates...
[2026-06-12 07:25:16,969.969 INFO    ] 200
[2026-06-12 07:25:16,971.971 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:25:17,003.003 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 07:25:17,004.004 INFO    ] No update needed
[2026-06-12 07:25:17,006.006 INFO    ] Checking for camera pi updates...
[2026-06-12 07:25:17,026.026 INFO    ] 200
[2026-06-12 07:25:17,028.028 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:25:17,051.051 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 07:25:17,088.088 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 07:25:17,089.089 INFO    ] No camera update needed
[2026-06-12 07:25:17,091.091 INFO    ] Script finished. Safe exiting...
[2026-06-12 07:25:17,092.092 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 07:25:17,095.095 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 07:25:17,098.098 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 07:25:19,138.138 INFO    ] ================================================
[2026-06-12 07:25:19,154.154 INFO    ] Launching Daemon at Fri Jun 12 07:25:19 IST 2026
[2026-06-12 07:25:19,165.165 INFO    ] ================================================
[2026-06-12 07:25:19,494.494 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 07:25:19
[2026-06-12 07:25:19,807.807 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 07:25:19,949.949 INFO    ] Initializing speech engine...
[2026-06-12 07:25:19,955.955 INFO    ] 2026-06-12 07:25:19
[2026-06-12 07:25:20,158.158 INFO    ] 2026-06-12 07:25:20
[2026-06-12 07:25:20,186.186 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 07:25:20,370.370 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 07:25:20,379.379 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 07:25:20,508.508 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 07:25:20,567.567 INFO    ] time= 12/06/2026 07:25:20
[2026-06-12 07:25:20,599.599 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 07:25:20,601.601 INFO    ] Checking for existing commands in stream...
[2026-06-12 07:25:20,672.672 INFO    ] No existing commands found in stream
[2026-06-12 07:25:25,686.686 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 07:25:25,689.689 INFO    ] Waiting 3.11 seconds before fallback handling...
[2026-06-12 07:25:29,175.175 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 07:25:29,176.176 INFO    ] Checking for system updates...
[2026-06-12 07:25:29,197.197 INFO    ] 200
[2026-06-12 07:25:29,198.198 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:25:29,230.230 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 07:25:29,232.232 INFO    ] No update needed
[2026-06-12 07:25:29,233.233 INFO    ] Checking for camera pi updates...
[2026-06-12 07:25:29,252.252 INFO    ] 200
[2026-06-12 07:25:29,254.254 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:25:29,279.279 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 07:25:29,316.316 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 07:25:29,318.318 INFO    ] No camera update needed
[2026-06-12 07:25:29,319.319 INFO    ] Script finished. Safe exiting...
[2026-06-12 07:25:29,320.320 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 07:25:29,323.323 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 07:25:29,326.326 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 07:25:31,358.358 INFO    ] ================================================
[2026-06-12 07:25:31,368.368 INFO    ] Launching Daemon at Fri Jun 12 07:25:31 IST 2026
[2026-06-12 07:25:31,375.375 INFO    ] ================================================
[2026-06-12 07:25:31,712.712 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 07:25:31
[2026-06-12 07:25:32,047.047 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 07:25:32,189.189 INFO    ] Initializing speech engine...
[2026-06-12 07:25:32,194.194 INFO    ] 2026-06-12 07:25:32
[2026-06-12 07:25:32,400.400 INFO    ] 2026-06-12 07:25:32
[2026-06-12 07:25:32,429.429 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 07:25:32,551.551 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 07:25:32,604.604 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 07:25:32,749.749 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 07:25:32,805.805 INFO    ] time= 12/06/2026 07:25:32
[2026-06-12 07:25:32,834.834 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 07:25:32,844.844 INFO    ] Checking for existing commands in stream...
[2026-06-12 07:25:32,915.915 INFO    ] No existing commands found in stream
[2026-06-12 07:25:37,924.924 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 07:25:37,927.927 INFO    ] Waiting 2.89 seconds before fallback handling...
[2026-06-12 07:25:41,183.183 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 07:25:41,184.184 INFO    ] Checking for system updates...
[2026-06-12 07:25:41,206.206 INFO    ] 200
[2026-06-12 07:25:41,207.207 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:25:41,237.237 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 07:25:41,239.239 INFO    ] No update needed
[2026-06-12 07:25:41,240.240 INFO    ] Checking for camera pi updates...
[2026-06-12 07:25:41,263.263 INFO    ] 200
[2026-06-12 07:25:41,264.264 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:25:41,289.289 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 07:25:41,323.323 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 07:25:41,325.325 INFO    ] No camera update needed
[2026-06-12 07:25:41,326.326 INFO    ] Script finished. Safe exiting...
[2026-06-12 07:25:41,327.327 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 07:25:41,330.330 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 07:25:41,333.333 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 07:25:43,372.372 INFO    ] ================================================
[2026-06-12 07:25:43,388.388 INFO    ] Launching Daemon at Fri Jun 12 07:25:43 IST 2026
[2026-06-12 07:25:43,399.399 INFO    ] ================================================
[2026-06-12 07:25:43,756.756 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 07:25:43
[2026-06-12 07:25:44,069.069 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 07:25:44,212.212 INFO    ] Initializing speech engine...
[2026-06-12 07:25:44,216.216 INFO    ] 2026-06-12 07:25:44
[2026-06-12 07:25:44,420.420 INFO    ] 2026-06-12 07:25:44
[2026-06-12 07:25:44,448.448 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 07:25:44,632.632 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 07:25:44,641.641 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 07:25:44,787.787 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 07:25:44,838.838 INFO    ] time= 12/06/2026 07:25:44
[2026-06-12 07:25:44,861.861 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 07:25:44,868.868 INFO    ] Checking for existing commands in stream...
[2026-06-12 07:25:44,934.934 INFO    ] No existing commands found in stream
[2026-06-12 07:25:49,948.948 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 07:25:49,951.951 INFO    ] Waiting 2.32 seconds before fallback handling...
[2026-06-12 07:25:52,662.662 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 07:25:52,663.663 INFO    ] Checking for system updates...
[2026-06-12 07:25:52,684.684 INFO    ] 200
[2026-06-12 07:25:52,686.686 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:25:52,719.719 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 07:25:52,720.720 INFO    ] No update needed
[2026-06-12 07:25:52,721.721 INFO    ] Checking for camera pi updates...
[2026-06-12 07:25:52,743.743 INFO    ] 200
[2026-06-12 07:25:52,744.744 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:25:52,769.769 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 07:25:52,912.912 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 07:25:52,913.913 INFO    ] No camera update needed
[2026-06-12 07:25:52,914.914 INFO    ] Script finished. Safe exiting...
[2026-06-12 07:25:52,916.916 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 07:25:52,919.919 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 07:25:52,921.921 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 07:25:54,961.961 INFO    ] ================================================
[2026-06-12 07:25:54,977.977 INFO    ] Launching Daemon at Fri Jun 12 07:25:54 IST 2026
[2026-06-12 07:25:54,988.988 INFO    ] ================================================
[2026-06-12 07:25:55,319.319 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 07:25:55
[2026-06-12 07:25:55,631.631 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 07:25:55,761.761 INFO    ] Initializing speech engine...
[2026-06-12 07:25:55,766.766 INFO    ] 2026-06-12 07:25:55
[2026-06-12 07:25:55,984.984 INFO    ] 2026-06-12 07:25:55
[2026-06-12 07:25:56,014.014 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 07:25:56,202.202 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 07:25:56,211.211 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 07:25:56,344.344 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 07:25:56,413.413 INFO    ] time= 12/06/2026 07:25:56
[2026-06-12 07:25:56,437.437 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 07:25:56,444.444 INFO    ] Checking for existing commands in stream...
[2026-06-12 07:25:56,512.512 INFO    ] No existing commands found in stream
[2026-06-12 07:26:01,521.521 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 07:26:01,523.523 INFO    ] Waiting 1.81 seconds before fallback handling...
[2026-06-12 07:26:03,673.673 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 07:26:03,675.675 INFO    ] Checking for system updates...
[2026-06-12 07:26:03,696.696 INFO    ] 200
[2026-06-12 07:26:03,698.698 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:26:03,728.728 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 07:26:03,729.729 INFO    ] No update needed
[2026-06-12 07:26:03,730.730 INFO    ] Checking for camera pi updates...
[2026-06-12 07:26:03,750.750 INFO    ] 200
[2026-06-12 07:26:03,751.751 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:26:03,775.775 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 07:26:03,809.809 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 07:26:03,810.810 INFO    ] No camera update needed
[2026-06-12 07:26:03,811.811 INFO    ] Script finished. Safe exiting...
[2026-06-12 07:26:03,813.813 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 07:26:03,815.815 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 07:26:03,818.818 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 07:26:05,859.859 INFO    ] ================================================
[2026-06-12 07:26:05,875.875 INFO    ] Launching Daemon at Fri Jun 12 07:26:05 IST 2026
[2026-06-12 07:26:05,887.887 INFO    ] ================================================
[2026-06-12 07:26:06,228.228 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 07:26:06
[2026-06-12 07:26:06,540.540 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 07:26:06,673.673 INFO    ] Initializing speech engine...
[2026-06-12 07:26:06,677.677 INFO    ] 2026-06-12 07:26:06
[2026-06-12 07:26:06,907.907 INFO    ] 2026-06-12 07:26:06
[2026-06-12 07:26:06,938.938 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 07:26:07,071.071 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 07:26:07,114.114 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 07:26:07,289.289 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 07:26:07,353.353 INFO    ] time= 12/06/2026 07:26:07
[2026-06-12 07:26:07,387.387 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 07:26:07,394.394 INFO    ] Checking for existing commands in stream...
[2026-06-12 07:26:07,466.466 INFO    ] No existing commands found in stream
[2026-06-12 07:26:12,483.483 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 07:26:12,486.486 INFO    ] Waiting 0.17 seconds before fallback handling...
[2026-06-12 07:26:13,021.021 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 07:26:13,022.022 INFO    ] Checking for system updates...
[2026-06-12 07:26:13,043.043 INFO    ] 200
[2026-06-12 07:26:13,044.044 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:26:13,078.078 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 07:26:13,079.079 INFO    ] No update needed
[2026-06-12 07:26:13,080.080 INFO    ] Checking for camera pi updates...
[2026-06-12 07:26:13,101.101 INFO    ] 200
[2026-06-12 07:26:13,102.102 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:26:13,125.125 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 07:26:13,161.161 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 07:26:13,163.163 INFO    ] No camera update needed
[2026-06-12 07:26:13,164.164 INFO    ] Script finished. Safe exiting...
[2026-06-12 07:26:13,165.165 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 07:26:13,168.168 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 07:26:13,171.171 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 07:26:15,203.203 INFO    ] ================================================
[2026-06-12 07:26:15,214.214 INFO    ] Launching Daemon at Fri Jun 12 07:26:15 IST 2026
[2026-06-12 07:26:15,221.221 INFO    ] ================================================
[2026-06-12 07:26:15,552.552 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 07:26:15
[2026-06-12 07:26:15,913.913 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 07:26:16,046.046 INFO    ] Initializing speech engine...
[2026-06-12 07:26:16,054.054 INFO    ] 2026-06-12 07:26:16
[2026-06-12 07:26:16,268.268 INFO    ] 2026-06-12 07:26:16
[2026-06-12 07:26:16,297.297 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 07:26:16,484.484 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 07:26:16,487.487 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 07:26:16,618.618 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 07:26:16,673.673 INFO    ] time= 12/06/2026 07:26:16
[2026-06-12 07:26:16,714.714 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 07:26:16,720.720 INFO    ] Checking for existing commands in stream...
[2026-06-12 07:26:16,793.793 INFO    ] No existing commands found in stream
[2026-06-12 07:26:21,802.802 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 07:26:21,805.805 INFO    ] Waiting 1.84 seconds before fallback handling...
[2026-06-12 07:26:24,004.004 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 07:26:24,005.005 INFO    ] Checking for system updates...
[2026-06-12 07:26:24,026.026 INFO    ] 200
[2026-06-12 07:26:24,028.028 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:26:24,059.059 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 07:26:24,061.061 INFO    ] No update needed
[2026-06-12 07:26:24,062.062 INFO    ] Checking for camera pi updates...
[2026-06-12 07:26:24,083.083 INFO    ] 200
[2026-06-12 07:26:24,084.084 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:26:24,108.108 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 07:26:24,149.149 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 07:26:24,151.151 INFO    ] No camera update needed
[2026-06-12 07:26:24,152.152 INFO    ] Script finished. Safe exiting...
[2026-06-12 07:26:24,153.153 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 07:26:24,156.156 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 07:26:24,159.159 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 07:26:26,200.200 INFO    ] ================================================
[2026-06-12 07:26:26,216.216 INFO    ] Launching Daemon at Fri Jun 12 07:26:26 IST 2026
[2026-06-12 07:26:26,227.227 INFO    ] ================================================
[2026-06-12 07:26:26,558.558 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 07:26:26
[2026-06-12 07:26:26,874.874 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 07:26:27,004.004 INFO    ] Initializing speech engine...
[2026-06-12 07:26:27,012.012 INFO    ] 2026-06-12 07:26:27
[2026-06-12 07:26:27,223.223 INFO    ] 2026-06-12 07:26:27
[2026-06-12 07:26:27,252.252 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 07:26:27,409.409 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 07:26:27,437.437 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 07:26:27,573.573 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 07:26:27,631.631 INFO    ] time= 12/06/2026 07:26:27
[2026-06-12 07:26:27,664.664 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 07:26:27,681.681 INFO    ] Checking for existing commands in stream...
[2026-06-12 07:26:27,757.757 INFO    ] No existing commands found in stream
[2026-06-12 07:26:32,768.768 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 07:26:32,770.770 INFO    ] Waiting 1.75 seconds before fallback handling...
[2026-06-12 07:26:34,869.869 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 07:26:34,871.871 INFO    ] Checking for system updates...
[2026-06-12 07:26:34,891.891 INFO    ] 200
[2026-06-12 07:26:34,893.893 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:26:34,923.923 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 07:26:34,924.924 INFO    ] No update needed
[2026-06-12 07:26:34,926.926 INFO    ] Checking for camera pi updates...
[2026-06-12 07:26:34,946.946 INFO    ] 200
[2026-06-12 07:26:34,947.947 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:26:34,972.972 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 07:26:35,009.009 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 07:26:35,011.011 INFO    ] No camera update needed
[2026-06-12 07:26:35,012.012 INFO    ] Script finished. Safe exiting...
[2026-06-12 07:26:35,013.013 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 07:26:35,016.016 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 07:26:35,019.019 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 07:26:37,058.058 INFO    ] ================================================
[2026-06-12 07:26:37,074.074 INFO    ] Launching Daemon at Fri Jun 12 07:26:37 IST 2026
[2026-06-12 07:26:37,085.085 INFO    ] ================================================
[2026-06-12 07:26:37,455.455 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 07:26:37
[2026-06-12 07:26:37,773.773 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 07:26:37,907.907 INFO    ] Initializing speech engine...
[2026-06-12 07:26:37,912.912 INFO    ] 2026-06-12 07:26:37
[2026-06-12 07:26:38,142.142 INFO    ] 2026-06-12 07:26:38
[2026-06-12 07:26:38,172.172 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 07:26:38,305.305 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 07:26:38,357.357 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 07:26:38,513.513 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 07:26:38,571.571 INFO    ] time= 12/06/2026 07:26:38
[2026-06-12 07:26:38,604.604 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 07:26:38,622.622 INFO    ] Checking for existing commands in stream...
[2026-06-12 07:26:38,697.697 INFO    ] No existing commands found in stream
[2026-06-12 07:26:43,708.708 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 07:26:43,711.711 INFO    ] Waiting 3.92 seconds before fallback handling...
[2026-06-12 07:26:48,019.019 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 07:26:48,021.021 INFO    ] Checking for system updates...
[2026-06-12 07:26:48,042.042 INFO    ] 200
[2026-06-12 07:26:48,043.043 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:26:48,075.075 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 07:26:48,076.076 INFO    ] No update needed
[2026-06-12 07:26:48,078.078 INFO    ] Checking for camera pi updates...
[2026-06-12 07:26:48,099.099 INFO    ] 200
[2026-06-12 07:26:48,100.100 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:26:48,124.124 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 07:26:48,168.168 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 07:26:48,169.169 INFO    ] No camera update needed
[2026-06-12 07:26:48,171.171 INFO    ] Script finished. Safe exiting...
[2026-06-12 07:26:48,172.172 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 07:26:48,175.175 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 07:26:48,178.178 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 07:26:50,217.217 INFO    ] ================================================
[2026-06-12 07:26:50,233.233 INFO    ] Launching Daemon at Fri Jun 12 07:26:50 IST 2026
[2026-06-12 07:26:50,243.243 INFO    ] ================================================
[2026-06-12 07:26:50,619.619 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 07:26:50
[2026-06-12 07:26:50,959.959 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 07:26:51,100.100 INFO    ] Initializing speech engine...
[2026-06-12 07:26:51,113.113 INFO    ] 2026-06-12 07:26:51
[2026-06-12 07:26:51,327.327 INFO    ] 2026-06-12 07:26:51
[2026-06-12 07:26:51,357.357 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 07:26:51,543.543 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 07:26:51,547.547 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 07:26:51,686.686 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 07:26:51,751.751 INFO    ] time= 12/06/2026 07:26:51
[2026-06-12 07:26:51,778.778 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 07:26:51,785.785 INFO    ] Checking for existing commands in stream...
[2026-06-12 07:26:51,854.854 INFO    ] No existing commands found in stream
[2026-06-12 07:26:56,868.868 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 07:26:56,872.872 INFO    ] Waiting 3.45 seconds before fallback handling...
[2026-06-12 07:27:00,667.667 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 07:27:00,668.668 INFO    ] Checking for system updates...
[2026-06-12 07:27:00,690.690 INFO    ] 200
[2026-06-12 07:27:00,691.691 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:27:00,722.722 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 07:27:00,723.723 INFO    ] No update needed
[2026-06-12 07:27:00,724.724 INFO    ] Checking for camera pi updates...
[2026-06-12 07:27:00,744.744 INFO    ] 200
[2026-06-12 07:27:00,746.746 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:27:00,771.771 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 07:27:00,809.809 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 07:27:00,811.811 INFO    ] No camera update needed
[2026-06-12 07:27:00,812.812 INFO    ] Script finished. Safe exiting...
[2026-06-12 07:27:00,814.814 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 07:27:00,817.817 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 07:27:00,820.820 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 07:27:02,847.847 INFO    ] ================================================
[2026-06-12 07:27:02,856.856 INFO    ] Launching Daemon at Fri Jun 12 07:27:02 IST 2026
[2026-06-12 07:27:02,862.862 INFO    ] ================================================
[2026-06-12 07:27:03,211.211 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 07:27:03
[2026-06-12 07:27:03,525.525 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 07:27:03,659.659 INFO    ] Initializing speech engine...
[2026-06-12 07:27:03,664.664 INFO    ] 2026-06-12 07:27:03
[2026-06-12 07:27:03,894.894 INFO    ] 2026-06-12 07:27:03
[2026-06-12 07:27:03,924.924 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 07:27:04,057.057 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 07:27:04,090.090 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 07:27:04,241.241 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 07:27:04,270.270 INFO    ] time= 12/06/2026 07:27:04
[2026-06-12 07:27:04,311.311 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 07:27:04,355.355 INFO    ] Checking for existing commands in stream...
[2026-06-12 07:27:04,452.452 INFO    ] No existing commands found in stream
[2026-06-12 07:27:09,463.463 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 07:27:09,466.466 INFO    ] Waiting 0.16 seconds before fallback handling...
[2026-06-12 07:27:10,004.004 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 07:27:10,005.005 INFO    ] Checking for system updates...
[2026-06-12 07:27:10,025.025 INFO    ] 200
[2026-06-12 07:27:10,027.027 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:27:10,059.059 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 07:27:10,061.061 INFO    ] No update needed
[2026-06-12 07:27:10,062.062 INFO    ] Checking for camera pi updates...
[2026-06-12 07:27:10,082.082 INFO    ] 200
[2026-06-12 07:27:10,084.084 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:27:10,109.109 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 07:27:10,149.149 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 07:27:10,150.150 INFO    ] No camera update needed
[2026-06-12 07:27:10,151.151 INFO    ] Script finished. Safe exiting...
[2026-06-12 07:27:10,153.153 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 07:27:10,155.155 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 07:27:10,158.158 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 07:27:12,198.198 INFO    ] ================================================
[2026-06-12 07:27:12,213.213 INFO    ] Launching Daemon at Fri Jun 12 07:27:12 IST 2026
[2026-06-12 07:27:12,224.224 INFO    ] ================================================
[2026-06-12 07:27:12,556.556 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 07:27:12
[2026-06-12 07:27:12,873.873 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 07:27:13,006.006 INFO    ] Initializing speech engine...
[2026-06-12 07:27:13,012.012 INFO    ] 2026-06-12 07:27:13
[2026-06-12 07:27:13,241.241 INFO    ] 2026-06-12 07:27:13
[2026-06-12 07:27:13,271.271 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 07:27:13,404.404 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 07:27:13,471.471 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 07:27:13,613.613 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 07:27:13,670.670 INFO    ] time= 12/06/2026 07:27:13
[2026-06-12 07:27:13,710.710 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 07:27:13,721.721 INFO    ] Checking for existing commands in stream...
[2026-06-12 07:27:13,824.824 INFO    ] No existing commands found in stream
[2026-06-12 07:27:18,833.833 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 07:27:18,836.836 INFO    ] Waiting 2.53 seconds before fallback handling...
[2026-06-12 07:27:21,727.727 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 07:27:21,729.729 INFO    ] Checking for system updates...
[2026-06-12 07:27:21,750.750 INFO    ] 200
[2026-06-12 07:27:21,752.752 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:27:21,783.783 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 07:27:21,784.784 INFO    ] No update needed
[2026-06-12 07:27:21,785.785 INFO    ] Checking for camera pi updates...
[2026-06-12 07:27:21,805.805 INFO    ] 200
[2026-06-12 07:27:21,807.807 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:27:21,832.832 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 07:27:21,869.869 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 07:27:21,871.871 INFO    ] No camera update needed
[2026-06-12 07:27:21,873.873 INFO    ] Script finished. Safe exiting...
[2026-06-12 07:27:21,874.874 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 07:27:21,877.877 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 07:27:21,880.880 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 07:27:23,922.922 INFO    ] ================================================
[2026-06-12 07:27:23,937.937 INFO    ] Launching Daemon at Fri Jun 12 07:27:23 IST 2026
[2026-06-12 07:27:23,949.949 INFO    ] ================================================
[2026-06-12 07:27:24,281.281 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 07:27:24
[2026-06-12 07:27:24,599.599 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 07:27:24,736.736 INFO    ] Initializing speech engine...
[2026-06-12 07:27:24,744.744 INFO    ] 2026-06-12 07:27:24
[2026-06-12 07:27:24,950.950 INFO    ] 2026-06-12 07:27:24
[2026-06-12 07:27:24,979.979 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 07:27:25,100.100 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 07:27:25,149.149 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 07:27:25,301.301 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 07:27:25,368.368 INFO    ] time= 12/06/2026 07:27:25
[2026-06-12 07:27:25,392.392 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 07:27:25,394.394 INFO    ] Checking for existing commands in stream...
[2026-06-12 07:27:25,466.466 INFO    ] No existing commands found in stream
[2026-06-12 07:27:30,485.485 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 07:27:30,488.488 INFO    ] Waiting 2.75 seconds before fallback handling...
[2026-06-12 07:27:33,596.596 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 07:27:33,597.597 INFO    ] Checking for system updates...
[2026-06-12 07:27:33,618.618 INFO    ] 200
[2026-06-12 07:27:33,619.619 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:27:33,650.650 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 07:27:33,651.651 INFO    ] No update needed
[2026-06-12 07:27:33,653.653 INFO    ] Checking for camera pi updates...
[2026-06-12 07:27:33,673.673 INFO    ] 200
[2026-06-12 07:27:33,675.675 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:27:33,698.698 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 07:27:33,738.738 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 07:27:33,739.739 INFO    ] No camera update needed
[2026-06-12 07:27:33,740.740 INFO    ] Script finished. Safe exiting...
[2026-06-12 07:27:33,742.742 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 07:27:33,745.745 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 07:27:33,747.747 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 07:27:35,787.787 INFO    ] ================================================
[2026-06-12 07:27:35,802.802 INFO    ] Launching Daemon at Fri Jun 12 07:27:35 IST 2026
[2026-06-12 07:27:35,813.813 INFO    ] ================================================
[2026-06-12 07:27:36,184.184 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 07:27:36
[2026-06-12 07:27:36,524.524 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 07:27:36,675.675 INFO    ] Initializing speech engine...
[2026-06-12 07:27:36,681.681 INFO    ] 2026-06-12 07:27:36
[2026-06-12 07:27:36,889.889 INFO    ] 2026-06-12 07:27:36
[2026-06-12 07:27:36,918.918 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 07:27:37,101.101 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 07:27:37,104.104 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 07:27:37,240.240 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 07:27:37,308.308 INFO    ] time= 12/06/2026 07:27:37
[2026-06-12 07:27:37,332.332 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 07:27:37,338.338 INFO    ] Checking for existing commands in stream...
[2026-06-12 07:27:37,406.406 INFO    ] No existing commands found in stream
[2026-06-12 07:27:42,420.420 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 07:27:42,424.424 INFO    ] Waiting 3.23 seconds before fallback handling...
[2026-06-12 07:27:46,004.004 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 07:27:46,006.006 INFO    ] Checking for system updates...
[2026-06-12 07:27:46,027.027 INFO    ] 200
[2026-06-12 07:27:46,028.028 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:27:46,060.060 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 07:27:46,062.062 INFO    ] No update needed
[2026-06-12 07:27:46,063.063 INFO    ] Checking for camera pi updates...
[2026-06-12 07:27:46,084.084 INFO    ] 200
[2026-06-12 07:27:46,085.085 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:27:46,110.110 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 07:27:46,150.150 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 07:27:46,151.151 INFO    ] No camera update needed
[2026-06-12 07:27:46,152.152 INFO    ] Script finished. Safe exiting...
[2026-06-12 07:27:46,153.153 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 07:27:46,156.156 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 07:27:46,159.159 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 07:27:48,198.198 INFO    ] ================================================
[2026-06-12 07:27:48,213.213 INFO    ] Launching Daemon at Fri Jun 12 07:27:48 IST 2026
[2026-06-12 07:27:48,224.224 INFO    ] ================================================
[2026-06-12 07:27:48,559.559 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 07:27:48
[2026-06-12 07:27:48,875.875 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 07:27:49,018.018 INFO    ] Initializing speech engine...
[2026-06-12 07:27:49,023.023 INFO    ] 2026-06-12 07:27:49
[2026-06-12 07:27:49,225.225 INFO    ] 2026-06-12 07:27:49
[2026-06-12 07:27:49,253.253 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 07:27:49,436.436 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 07:27:49,439.439 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 07:27:49,575.575 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 07:27:49,642.642 INFO    ] time= 12/06/2026 07:27:49
[2026-06-12 07:27:49,665.665 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 07:27:49,671.671 INFO    ] Checking for existing commands in stream...
[2026-06-12 07:27:49,736.736 INFO    ] No existing commands found in stream
[2026-06-12 07:27:54,746.746 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 07:27:54,749.749 INFO    ] Waiting 3.89 seconds before fallback handling...
[2026-06-12 07:27:58,992.992 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 07:27:58,994.994 INFO    ] Checking for system updates...
[2026-06-12 07:27:59,015.015 INFO    ] 200
[2026-06-12 07:27:59,016.016 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:27:59,047.047 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 07:27:59,049.049 INFO    ] No update needed
[2026-06-12 07:27:59,050.050 INFO    ] Checking for camera pi updates...
[2026-06-12 07:27:59,069.069 INFO    ] 200
[2026-06-12 07:27:59,071.071 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:27:59,094.094 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 07:27:59,233.233 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 07:27:59,234.234 INFO    ] No camera update needed
[2026-06-12 07:27:59,236.236 INFO    ] Script finished. Safe exiting...
[2026-06-12 07:27:59,237.237 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 07:27:59,240.240 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 07:27:59,242.242 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 07:28:01,281.281 INFO    ] ================================================
[2026-06-12 07:28:01,296.296 INFO    ] Launching Daemon at Fri Jun 12 07:28:01 IST 2026
[2026-06-12 07:28:01,306.306 INFO    ] ================================================
[2026-06-12 07:28:01,640.640 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 07:28:01
[2026-06-12 07:28:02,044.044 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 07:28:02,209.209 INFO    ] Initializing speech engine...
[2026-06-12 07:28:02,214.214 INFO    ] 2026-06-12 07:28:02
[2026-06-12 07:28:02,471.471 INFO    ] 2026-06-12 07:28:02
[2026-06-12 07:28:02,514.514 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 07:28:02,737.737 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 07:28:02,755.755 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 07:28:02,922.922 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 07:28:02,988.988 INFO    ] time= 12/06/2026 07:28:02
[2026-06-12 07:28:03,015.015 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 07:28:03,021.021 INFO    ] Checking for existing commands in stream...
[2026-06-12 07:28:03,084.084 INFO    ] No existing commands found in stream
[2026-06-12 07:28:08,093.093 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 07:28:08,106.106 INFO    ] Waiting 1.14 seconds before fallback handling...
[2026-06-12 07:28:09,614.614 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 07:28:09,615.615 INFO    ] Checking for system updates...
[2026-06-12 07:28:09,637.637 INFO    ] 200
[2026-06-12 07:28:09,639.639 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:28:09,671.671 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 07:28:09,672.672 INFO    ] No update needed
[2026-06-12 07:28:09,674.674 INFO    ] Checking for camera pi updates...
[2026-06-12 07:28:09,693.693 INFO    ] 200
[2026-06-12 07:28:09,694.694 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:28:09,717.717 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 07:28:09,753.753 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 07:28:09,755.755 INFO    ] No camera update needed
[2026-06-12 07:28:09,756.756 INFO    ] Script finished. Safe exiting...
[2026-06-12 07:28:09,757.757 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 07:28:09,760.760 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 07:28:09,763.763 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 07:28:11,801.801 INFO    ] ================================================
[2026-06-12 07:28:11,816.816 INFO    ] Launching Daemon at Fri Jun 12 07:28:11 IST 2026
[2026-06-12 07:28:11,827.827 INFO    ] ================================================
[2026-06-12 07:28:12,195.195 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 07:28:12
[2026-06-12 07:28:12,512.512 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 07:28:12,656.656 INFO    ] Initializing speech engine...
[2026-06-12 07:28:12,661.661 INFO    ] 2026-06-12 07:28:12
[2026-06-12 07:28:12,865.865 INFO    ] 2026-06-12 07:28:12
[2026-06-12 07:28:12,900.900 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 07:28:13,100.100 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 07:28:13,105.105 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 07:28:13,283.283 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 07:28:13,307.307 INFO    ] time= 12/06/2026 07:28:13
[2026-06-12 07:28:13,312.312 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 07:28:13,314.314 INFO    ] Checking for existing commands in stream...
[2026-06-12 07:28:13,381.381 INFO    ] No existing commands found in stream
[2026-06-12 07:28:18,396.396 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 07:28:18,399.399 INFO    ] Waiting 2.51 seconds before fallback handling...
[2026-06-12 07:28:21,282.282 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 07:28:21,284.284 INFO    ] Checking for system updates...
[2026-06-12 07:28:21,306.306 INFO    ] 200
[2026-06-12 07:28:21,307.307 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:28:21,339.339 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 07:28:21,341.341 INFO    ] No update needed
[2026-06-12 07:28:21,342.342 INFO    ] Checking for camera pi updates...
[2026-06-12 07:28:21,363.363 INFO    ] 200
[2026-06-12 07:28:21,364.364 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:28:21,389.389 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 07:28:21,423.423 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 07:28:21,425.425 INFO    ] No camera update needed
[2026-06-12 07:28:21,426.426 INFO    ] Script finished. Safe exiting...
[2026-06-12 07:28:21,427.427 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 07:28:21,430.430 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 07:28:21,433.433 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 07:28:23,472.472 INFO    ] ================================================
[2026-06-12 07:28:23,488.488 INFO    ] Launching Daemon at Fri Jun 12 07:28:23 IST 2026
[2026-06-12 07:28:23,498.498 INFO    ] ================================================
[2026-06-12 07:28:23,830.830 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 07:28:23
[2026-06-12 07:28:24,142.142 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 07:28:24,273.273 INFO    ] Initializing speech engine...
[2026-06-12 07:28:24,281.281 INFO    ] 2026-06-12 07:28:24
[2026-06-12 07:28:24,495.495 INFO    ] 2026-06-12 07:28:24
[2026-06-12 07:28:24,524.524 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 07:28:24,712.712 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 07:28:24,721.721 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 07:28:24,844.844 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 07:28:24,904.904 INFO    ] time= 12/06/2026 07:28:24
[2026-06-12 07:28:24,929.929 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 07:28:24,945.945 INFO    ] Checking for existing commands in stream...
[2026-06-12 07:28:25,020.020 INFO    ] No existing commands found in stream
[2026-06-12 07:28:30,029.029 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 07:28:30,032.032 INFO    ] Waiting 3.26 seconds before fallback handling...
[2026-06-12 07:28:33,720.720 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 07:28:33,721.721 INFO    ] Checking for system updates...
[2026-06-12 07:28:33,742.742 INFO    ] 200
[2026-06-12 07:28:33,743.743 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:28:33,776.776 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 07:28:33,777.777 INFO    ] No update needed
[2026-06-12 07:28:33,779.779 INFO    ] Checking for camera pi updates...
[2026-06-12 07:28:33,798.798 INFO    ] 200
[2026-06-12 07:28:33,799.799 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:28:33,822.822 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 07:28:33,857.857 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 07:28:33,858.858 INFO    ] No camera update needed
[2026-06-12 07:28:33,859.859 INFO    ] Script finished. Safe exiting...
[2026-06-12 07:28:33,861.861 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 07:28:33,864.864 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 07:28:33,866.866 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 07:28:35,906.906 INFO    ] ================================================
[2026-06-12 07:28:35,921.921 INFO    ] Launching Daemon at Fri Jun 12 07:28:35 IST 2026
[2026-06-12 07:28:35,933.933 INFO    ] ================================================
[2026-06-12 07:28:36,262.262 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 07:28:36
[2026-06-12 07:28:36,576.576 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 07:28:36,706.706 INFO    ] Initializing speech engine...
[2026-06-12 07:28:36,711.711 INFO    ] 2026-06-12 07:28:36
[2026-06-12 07:28:36,929.929 INFO    ] 2026-06-12 07:28:36
[2026-06-12 07:28:36,959.959 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 07:28:37,145.145 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 07:28:37,154.154 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 07:28:37,283.283 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 07:28:37,344.344 INFO    ] time= 12/06/2026 07:28:37
[2026-06-12 07:28:37,374.374 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 07:28:37,380.380 INFO    ] Checking for existing commands in stream...
[2026-06-12 07:28:37,452.452 INFO    ] No existing commands found in stream
[2026-06-12 07:28:42,466.466 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 07:28:42,469.469 INFO    ] Waiting 0.04 seconds before fallback handling...
[2026-06-12 07:28:42,874.874 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 07:28:42,875.875 INFO    ] Checking for system updates...
[2026-06-12 07:28:42,896.896 INFO    ] 200
[2026-06-12 07:28:42,897.897 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:28:42,931.931 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 07:28:42,932.932 INFO    ] No update needed
[2026-06-12 07:28:42,933.933 INFO    ] Checking for camera pi updates...
[2026-06-12 07:28:42,953.953 INFO    ] 200
[2026-06-12 07:28:42,955.955 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:28:42,978.978 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 07:28:43,037.037 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 07:28:43,038.038 INFO    ] No camera update needed
[2026-06-12 07:28:43,040.040 INFO    ] Script finished. Safe exiting...
[2026-06-12 07:28:43,041.041 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 07:28:43,044.044 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 07:28:43,047.047 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 07:28:45,085.085 INFO    ] ================================================
[2026-06-12 07:28:45,101.101 INFO    ] Launching Daemon at Fri Jun 12 07:28:45 IST 2026
[2026-06-12 07:28:45,112.112 INFO    ] ================================================
[2026-06-12 07:28:45,440.440 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 07:28:45
[2026-06-12 07:28:45,753.753 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 07:28:45,884.884 INFO    ] Initializing speech engine...
[2026-06-12 07:28:45,892.892 INFO    ] 2026-06-12 07:28:45
[2026-06-12 07:28:46,107.107 INFO    ] 2026-06-12 07:28:46
[2026-06-12 07:28:46,136.136 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 07:28:46,276.276 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 07:28:46,325.325 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 07:28:46,465.465 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 07:28:46,532.532 INFO    ] time= 12/06/2026 07:28:46
[2026-06-12 07:28:46,556.556 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 07:28:46,563.563 INFO    ] Checking for existing commands in stream...
[2026-06-12 07:28:46,631.631 INFO    ] No existing commands found in stream
[2026-06-12 07:28:51,640.640 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 07:28:51,643.643 INFO    ] Waiting 1.51 seconds before fallback handling...
[2026-06-12 07:28:53,553.553 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 07:28:53,554.554 INFO    ] Checking for system updates...
[2026-06-12 07:28:53,576.576 INFO    ] 200
[2026-06-12 07:28:53,577.577 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:28:53,610.610 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 07:28:53,611.611 INFO    ] No update needed
[2026-06-12 07:28:53,612.612 INFO    ] Checking for camera pi updates...
[2026-06-12 07:28:53,633.633 INFO    ] 200
[2026-06-12 07:28:53,634.634 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:28:53,659.659 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 07:28:53,695.695 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 07:28:53,696.696 INFO    ] No camera update needed
[2026-06-12 07:28:53,697.697 INFO    ] Script finished. Safe exiting...
[2026-06-12 07:28:53,699.699 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 07:28:53,702.702 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 07:28:53,704.704 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 07:28:55,743.743 INFO    ] ================================================
[2026-06-12 07:28:55,759.759 INFO    ] Launching Daemon at Fri Jun 12 07:28:55 IST 2026
[2026-06-12 07:28:55,769.769 INFO    ] ================================================
[2026-06-12 07:28:56,101.101 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 07:28:56
[2026-06-12 07:28:56,413.413 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 07:28:56,544.544 INFO    ] Initializing speech engine...
[2026-06-12 07:28:56,558.558 INFO    ] 2026-06-12 07:28:56
[2026-06-12 07:28:56,768.768 INFO    ] 2026-06-12 07:28:56
[2026-06-12 07:28:56,796.796 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 07:28:56,983.983 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 07:28:56,986.986 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 07:28:57,120.120 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 07:28:57,183.183 INFO    ] time= 12/06/2026 07:28:57
[2026-06-12 07:28:57,217.217 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 07:28:57,219.219 INFO    ] Checking for existing commands in stream...
[2026-06-12 07:28:57,315.315 INFO    ] No existing commands found in stream
[2026-06-12 07:29:02,328.328 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 07:29:02,330.330 INFO    ] Waiting 1.51 seconds before fallback handling...
[2026-06-12 07:29:04,211.211 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 07:29:04,212.212 INFO    ] Checking for system updates...
[2026-06-12 07:29:04,234.234 INFO    ] 200
[2026-06-12 07:29:04,235.235 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:29:04,266.266 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 07:29:04,267.267 INFO    ] No update needed
[2026-06-12 07:29:04,268.268 INFO    ] Checking for camera pi updates...
[2026-06-12 07:29:04,288.288 INFO    ] 200
[2026-06-12 07:29:04,289.289 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:29:04,313.313 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 07:29:04,348.348 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 07:29:04,350.350 INFO    ] No camera update needed
[2026-06-12 07:29:04,351.351 INFO    ] Script finished. Safe exiting...
[2026-06-12 07:29:04,352.352 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 07:29:04,355.355 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 07:29:04,358.358 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 07:29:06,399.399 INFO    ] ================================================
[2026-06-12 07:29:06,417.417 INFO    ] Launching Daemon at Fri Jun 12 07:29:06 IST 2026
[2026-06-12 07:29:06,427.427 INFO    ] ================================================
[2026-06-12 07:29:06,771.771 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 07:29:06
[2026-06-12 07:29:07,086.086 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 07:29:07,224.224 INFO    ] Initializing speech engine...
[2026-06-12 07:29:07,233.233 INFO    ] 2026-06-12 07:29:07
[2026-06-12 07:29:07,436.436 INFO    ] 2026-06-12 07:29:07
[2026-06-12 07:29:07,465.465 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 07:29:07,649.649 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 07:29:07,658.658 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 07:29:07,780.780 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 07:29:07,841.841 INFO    ] time= 12/06/2026 07:29:07
[2026-06-12 07:29:07,870.870 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 07:29:07,880.880 INFO    ] Checking for existing commands in stream...
[2026-06-12 07:29:07,974.974 INFO    ] No existing commands found in stream
[2026-06-12 07:29:12,983.983 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 07:29:12,986.986 INFO    ] Waiting 2.65 seconds before fallback handling...
[2026-06-12 07:29:15,992.992 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 07:29:15,994.994 INFO    ] Checking for system updates...
[2026-06-12 07:29:16,016.016 INFO    ] 200
[2026-06-12 07:29:16,018.018 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:29:16,050.050 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 07:29:16,052.052 INFO    ] No update needed
[2026-06-12 07:29:16,053.053 INFO    ] Checking for camera pi updates...
[2026-06-12 07:29:16,072.072 INFO    ] 200
[2026-06-12 07:29:16,074.074 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:29:16,097.097 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 07:29:16,134.134 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 07:29:16,136.136 INFO    ] No camera update needed
[2026-06-12 07:29:16,137.137 INFO    ] Script finished. Safe exiting...
[2026-06-12 07:29:16,138.138 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 07:29:16,141.141 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 07:29:16,144.144 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 07:29:18,184.184 INFO    ] ================================================
[2026-06-12 07:29:18,199.199 INFO    ] Launching Daemon at Fri Jun 12 07:29:18 IST 2026
[2026-06-12 07:29:18,210.210 INFO    ] ================================================
[2026-06-12 07:29:18,548.548 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 07:29:18
[2026-06-12 07:29:18,860.860 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 07:29:18,990.990 INFO    ] Initializing speech engine...
[2026-06-12 07:29:19,003.003 INFO    ] 2026-06-12 07:29:18
[2026-06-12 07:29:19,209.209 INFO    ] 2026-06-12 07:29:19
[2026-06-12 07:29:19,238.238 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 07:29:19,420.420 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 07:29:19,424.424 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 07:29:19,574.574 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 07:29:19,627.627 INFO    ] time= 12/06/2026 07:29:19
[2026-06-12 07:29:19,650.650 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 07:29:19,657.657 INFO    ] Checking for existing commands in stream...
[2026-06-12 07:29:19,723.723 INFO    ] No existing commands found in stream
[2026-06-12 07:29:24,742.742 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 07:29:24,745.745 INFO    ] Waiting 0.19 seconds before fallback handling...
[2026-06-12 07:29:25,299.299 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 07:29:25,301.301 INFO    ] Checking for system updates...
[2026-06-12 07:29:25,324.324 INFO    ] 200
[2026-06-12 07:29:25,326.326 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:29:25,361.361 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 07:29:25,362.362 INFO    ] No update needed
[2026-06-12 07:29:25,364.364 INFO    ] Checking for camera pi updates...
[2026-06-12 07:29:25,387.387 INFO    ] 200
[2026-06-12 07:29:25,389.389 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:29:25,416.416 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 07:29:25,457.457 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 07:29:25,459.459 INFO    ] No camera update needed
[2026-06-12 07:29:25,460.460 INFO    ] Script finished. Safe exiting...
[2026-06-12 07:29:25,462.462 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 07:29:25,465.465 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 07:29:25,468.468 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 07:29:27,507.507 INFO    ] ================================================
[2026-06-12 07:29:27,522.522 INFO    ] Launching Daemon at Fri Jun 12 07:29:27 IST 2026
[2026-06-12 07:29:27,533.533 INFO    ] ================================================
[2026-06-12 07:29:27,893.893 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 07:29:27
[2026-06-12 07:29:28,219.219 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 07:29:28,350.350 INFO    ] Initializing speech engine...
[2026-06-12 07:29:28,357.357 INFO    ] 2026-06-12 07:29:28
[2026-06-12 07:29:28,569.569 INFO    ] 2026-06-12 07:29:28
[2026-06-12 07:29:28,598.598 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 07:29:28,781.781 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 07:29:28,785.785 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 07:29:28,916.916 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 07:29:28,984.984 INFO    ] time= 12/06/2026 07:29:28
[2026-06-12 07:29:29,011.011 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 07:29:29,018.018 INFO    ] Checking for existing commands in stream...
[2026-06-12 07:29:29,085.085 INFO    ] No existing commands found in stream
[2026-06-12 07:29:34,099.099 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 07:29:34,102.102 INFO    ] Waiting 3.02 seconds before fallback handling...
[2026-06-12 07:29:37,489.489 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 07:29:37,491.491 INFO    ] Checking for system updates...
[2026-06-12 07:29:37,511.511 INFO    ] 200
[2026-06-12 07:29:37,513.513 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:29:37,543.543 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 07:29:37,545.545 INFO    ] No update needed
[2026-06-12 07:29:37,546.546 INFO    ] Checking for camera pi updates...
[2026-06-12 07:29:37,565.565 INFO    ] 200
[2026-06-12 07:29:37,567.567 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:29:37,590.590 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 07:29:37,630.630 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 07:29:37,631.631 INFO    ] No camera update needed
[2026-06-12 07:29:37,633.633 INFO    ] Script finished. Safe exiting...
[2026-06-12 07:29:37,634.634 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 07:29:37,637.637 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 07:29:37,640.640 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 07:29:39,678.678 INFO    ] ================================================
[2026-06-12 07:29:39,693.693 INFO    ] Launching Daemon at Fri Jun 12 07:29:39 IST 2026
[2026-06-12 07:29:39,703.703 INFO    ] ================================================
[2026-06-12 07:29:40,058.058 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 07:29:40
[2026-06-12 07:29:40,368.368 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 07:29:40,498.498 INFO    ] Initializing speech engine...
[2026-06-12 07:29:40,503.503 INFO    ] 2026-06-12 07:29:40
[2026-06-12 07:29:40,721.721 INFO    ] 2026-06-12 07:29:40
[2026-06-12 07:29:40,750.750 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 07:29:40,934.934 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 07:29:40,944.944 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 07:29:41,070.070 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 07:29:41,128.128 INFO    ] time= 12/06/2026 07:29:41
[2026-06-12 07:29:41,157.157 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 07:29:41,167.167 INFO    ] Checking for existing commands in stream...
[2026-06-12 07:29:41,239.239 INFO    ] No existing commands found in stream
[2026-06-12 07:29:46,248.248 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 07:29:46,251.251 INFO    ] Waiting 0.39 seconds before fallback handling...
[2026-06-12 07:29:47,019.019 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 07:29:47,021.021 INFO    ] Checking for system updates...
[2026-06-12 07:29:47,044.044 INFO    ] 200
[2026-06-12 07:29:47,045.045 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:29:47,078.078 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 07:29:47,079.079 INFO    ] No update needed
[2026-06-12 07:29:47,081.081 INFO    ] Checking for camera pi updates...
[2026-06-12 07:29:47,101.101 INFO    ] 200
[2026-06-12 07:29:47,102.102 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:29:47,126.126 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 07:29:47,159.159 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 07:29:47,161.161 INFO    ] No camera update needed
[2026-06-12 07:29:47,162.162 INFO    ] Script finished. Safe exiting...
[2026-06-12 07:29:47,164.164 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 07:29:47,167.167 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 07:29:47,170.170 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 07:29:49,208.208 INFO    ] ================================================
[2026-06-12 07:29:49,223.223 INFO    ] Launching Daemon at Fri Jun 12 07:29:49 IST 2026
[2026-06-12 07:29:49,234.234 INFO    ] ================================================
[2026-06-12 07:29:49,593.593 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 07:29:49
[2026-06-12 07:29:49,935.935 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 07:29:50,086.086 INFO    ] Initializing speech engine...
[2026-06-12 07:29:50,092.092 INFO    ] 2026-06-12 07:29:50
[2026-06-12 07:29:50,304.304 INFO    ] 2026-06-12 07:29:50
[2026-06-12 07:29:50,332.332 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 07:29:50,517.517 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 07:29:50,526.526 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 07:29:50,666.666 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 07:29:50,724.724 INFO    ] time= 12/06/2026 07:29:50
[2026-06-12 07:29:50,747.747 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 07:29:50,753.753 INFO    ] Checking for existing commands in stream...
[2026-06-12 07:29:50,820.820 INFO    ] No existing commands found in stream
[2026-06-12 07:29:55,829.829 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 07:29:55,833.833 INFO    ] Waiting 2.03 seconds before fallback handling...
[2026-06-12 07:29:58,229.229 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 07:29:58,230.230 INFO    ] Checking for system updates...
[2026-06-12 07:29:58,254.254 INFO    ] 200
[2026-06-12 07:29:58,255.255 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:29:58,296.296 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 07:29:58,297.297 INFO    ] No update needed
[2026-06-12 07:29:58,299.299 INFO    ] Checking for camera pi updates...
[2026-06-12 07:29:58,320.320 INFO    ] 200
[2026-06-12 07:29:58,321.321 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:29:58,346.346 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 07:29:58,383.383 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 07:29:58,384.384 INFO    ] No camera update needed
[2026-06-12 07:29:58,386.386 INFO    ] Script finished. Safe exiting...
[2026-06-12 07:29:58,387.387 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 07:29:58,390.390 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 07:29:58,393.393 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 07:30:00,432.432 INFO    ] ================================================
[2026-06-12 07:30:00,447.447 INFO    ] Launching Daemon at Fri Jun 12 07:30:00 IST 2026
[2026-06-12 07:30:00,458.458 INFO    ] ================================================
[2026-06-12 07:30:00,817.817 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 07:30:00
[2026-06-12 07:30:01,160.160 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 07:30:01,305.305 INFO    ] Initializing speech engine...
[2026-06-12 07:30:01,316.316 INFO    ] 2026-06-12 07:30:01
[2026-06-12 07:30:01,532.532 INFO    ] 2026-06-12 07:30:01
[2026-06-12 07:30:01,576.576 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 07:30:01,770.770 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 07:30:01,772.772 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 07:30:01,925.925 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 07:30:01,929.929 INFO    ] time= 12/06/2026 07:30:01
[2026-06-12 07:30:01,932.932 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 07:30:01,936.936 INFO    ] Checking for existing commands in stream...
[2026-06-12 07:30:02,018.018 INFO    ] No existing commands found in stream
[2026-06-12 07:30:07,028.028 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 07:30:07,032.032 INFO    ] Waiting 2.62 seconds before fallback handling...
[2026-06-12 07:30:09,998.998 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 07:30:09,999.999 INFO    ] Checking for system updates...
[2026-06-12 07:30:10,022.022 INFO    ] 200
[2026-06-12 07:30:10,023.023 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:30:10,057.057 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 07:30:10,058.058 INFO    ] No update needed
[2026-06-12 07:30:10,059.059 INFO    ] Checking for camera pi updates...
[2026-06-12 07:30:10,081.081 INFO    ] 200
[2026-06-12 07:30:10,083.083 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:30:10,107.107 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 07:30:10,145.145 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 07:30:10,147.147 INFO    ] No camera update needed
[2026-06-12 07:30:10,148.148 INFO    ] Script finished. Safe exiting...
[2026-06-12 07:30:10,150.150 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 07:30:10,157.157 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 07:30:10,160.160 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 07:30:12,200.200 INFO    ] ================================================
[2026-06-12 07:30:12,215.215 INFO    ] Launching Daemon at Fri Jun 12 07:30:12 IST 2026
[2026-06-12 07:30:12,226.226 INFO    ] ================================================
[2026-06-12 07:30:12,596.596 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 07:30:12
[2026-06-12 07:30:12,913.913 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 07:30:13,047.047 INFO    ] Initializing speech engine...
[2026-06-12 07:30:13,054.054 INFO    ] 2026-06-12 07:30:13
[2026-06-12 07:30:13,267.267 INFO    ] 2026-06-12 07:30:13
[2026-06-12 07:30:13,296.296 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 07:30:13,482.482 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 07:30:13,492.492 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 07:30:13,633.633 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 07:30:13,690.690 INFO    ] time= 12/06/2026 07:30:13
[2026-06-12 07:30:13,714.714 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 07:30:13,721.721 INFO    ] Checking for existing commands in stream...
[2026-06-12 07:30:13,788.788 INFO    ] No existing commands found in stream
[2026-06-12 07:30:18,802.802 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 07:30:18,805.805 INFO    ] Waiting 1.64 seconds before fallback handling...
[2026-06-12 07:30:20,827.827 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 07:30:20,829.829 INFO    ] Checking for system updates...
[2026-06-12 07:30:20,850.850 INFO    ] 200
[2026-06-12 07:30:20,852.852 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:30:20,882.882 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 07:30:20,884.884 INFO    ] No update needed
[2026-06-12 07:30:20,885.885 INFO    ] Checking for camera pi updates...
[2026-06-12 07:30:20,905.905 INFO    ] 200
[2026-06-12 07:30:20,906.906 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:30:20,930.930 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 07:30:20,966.966 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 07:30:20,968.968 INFO    ] No camera update needed
[2026-06-12 07:30:20,969.969 INFO    ] Script finished. Safe exiting...
[2026-06-12 07:30:20,970.970 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 07:30:20,974.974 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 07:30:20,977.977 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 07:30:23,017.017 INFO    ] ================================================
[2026-06-12 07:30:23,032.032 INFO    ] Launching Daemon at Fri Jun 12 07:30:23 IST 2026
[2026-06-12 07:30:23,043.043 INFO    ] ================================================
[2026-06-12 07:30:23,363.363 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 07:30:23
[2026-06-12 07:30:23,676.676 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 07:30:23,822.822 INFO    ] Initializing speech engine...
[2026-06-12 07:30:23,828.828 INFO    ] 2026-06-12 07:30:23
[2026-06-12 07:30:24,034.034 INFO    ] 2026-06-12 07:30:24
[2026-06-12 07:30:24,062.062 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 07:30:24,248.248 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 07:30:24,252.252 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 07:30:24,386.386 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 07:30:24,447.447 INFO    ] time= 12/06/2026 07:30:24
[2026-06-12 07:30:24,481.481 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 07:30:24,482.482 INFO    ] Checking for existing commands in stream...
[2026-06-12 07:30:24,555.555 INFO    ] No existing commands found in stream
[2026-06-12 07:30:29,568.568 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 07:30:29,572.572 INFO    ] Waiting 1.82 seconds before fallback handling...
[2026-06-12 07:30:31,768.768 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 07:30:31,770.770 INFO    ] Checking for system updates...
[2026-06-12 07:30:31,795.795 INFO    ] 200
[2026-06-12 07:30:31,796.796 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:30:31,831.831 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 07:30:31,833.833 INFO    ] No update needed
[2026-06-12 07:30:31,834.834 INFO    ] Checking for camera pi updates...
[2026-06-12 07:30:31,855.855 INFO    ] 200
[2026-06-12 07:30:31,856.856 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:30:31,887.887 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 07:30:31,910.910 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 07:30:31,912.912 INFO    ] No camera update needed
[2026-06-12 07:30:31,913.913 INFO    ] Script finished. Safe exiting...
[2026-06-12 07:30:31,915.915 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 07:30:31,920.920 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 07:30:31,923.923 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 07:30:33,956.956 INFO    ] ================================================
[2026-06-12 07:30:33,971.971 INFO    ] Launching Daemon at Fri Jun 12 07:30:33 IST 2026
[2026-06-12 07:30:33,983.983 INFO    ] ================================================
[2026-06-12 07:30:34,335.335 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 07:30:34
[2026-06-12 07:30:34,649.649 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 07:30:34,780.780 INFO    ] Initializing speech engine...
[2026-06-12 07:30:34,785.785 INFO    ] 2026-06-12 07:30:34
[2026-06-12 07:30:35,003.003 INFO    ] 2026-06-12 07:30:34
[2026-06-12 07:30:35,032.032 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 07:30:35,216.216 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 07:30:35,226.226 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 07:30:35,357.357 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 07:30:35,422.422 INFO    ] time= 12/06/2026 07:30:35
[2026-06-12 07:30:35,450.450 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 07:30:35,456.456 INFO    ] Checking for existing commands in stream...
[2026-06-12 07:30:35,524.524 INFO    ] No existing commands found in stream
[2026-06-12 07:30:40,538.538 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 07:30:40,546.546 INFO    ] Waiting 0.03 seconds before fallback handling...
[2026-06-12 07:30:40,936.936 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 07:30:40,938.938 INFO    ] Checking for system updates...
[2026-06-12 07:30:40,959.959 INFO    ] 200
[2026-06-12 07:30:40,961.961 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:30:40,992.992 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 07:30:40,993.993 INFO    ] No update needed
[2026-06-12 07:30:40,995.995 INFO    ] Checking for camera pi updates...
[2026-06-12 07:30:41,015.015 INFO    ] 200
[2026-06-12 07:30:41,016.016 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:30:41,040.040 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 07:30:41,077.077 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 07:30:41,079.079 INFO    ] No camera update needed
[2026-06-12 07:30:41,080.080 INFO    ] Script finished. Safe exiting...
[2026-06-12 07:30:41,082.082 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 07:30:41,085.085 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 07:30:41,088.088 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 07:30:43,128.128 INFO    ] ================================================
[2026-06-12 07:30:43,143.143 INFO    ] Launching Daemon at Fri Jun 12 07:30:43 IST 2026
[2026-06-12 07:30:43,154.154 INFO    ] ================================================
[2026-06-12 07:30:43,518.518 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 07:30:43
[2026-06-12 07:30:43,832.832 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 07:30:43,964.964 INFO    ] Initializing speech engine...
[2026-06-12 07:30:43,969.969 INFO    ] 2026-06-12 07:30:43
[2026-06-12 07:30:44,188.188 INFO    ] 2026-06-12 07:30:44
[2026-06-12 07:30:44,218.218 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 07:30:44,405.405 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 07:30:44,408.408 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 07:30:44,539.539 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 07:30:44,605.605 INFO    ] time= 12/06/2026 07:30:44
[2026-06-12 07:30:44,639.639 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 07:30:44,641.641 INFO    ] Checking for existing commands in stream...
[2026-06-12 07:30:44,712.712 INFO    ] No existing commands found in stream
[2026-06-12 07:30:49,723.723 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 07:30:49,725.725 INFO    ] Waiting 2.51 seconds before fallback handling...
[2026-06-12 07:30:52,536.536 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 07:30:52,538.538 INFO    ] Checking for system updates...
[2026-06-12 07:30:52,619.619 INFO    ] 200
[2026-06-12 07:30:52,620.620 INFO    ] {"msg": "Status of machine", "state": "STATE_HEALTH_CHECK", "status": true}
[2026-06-12 07:30:52,622.622 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping update check
[2026-06-12 07:30:52,624.624 INFO    ] Checking for camera pi updates...
[2026-06-12 07:30:52,651.651 INFO    ] 200
[2026-06-12 07:30:52,652.652 INFO    ] {"msg": "Status of machine", "state": "STATE_HEALTH_CHECK", "status": true}
[2026-06-12 07:30:52,654.654 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping camera update check
[2026-06-12 07:30:52,656.656 INFO    ] Script finished. Safe exiting...
[2026-06-12 07:30:52,657.657 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 07:30:52,661.661 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 07:30:52,667.667 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 07:30:54,698.698 INFO    ] ================================================
[2026-06-12 07:30:54,714.714 INFO    ] Launching Daemon at Fri Jun 12 07:30:54 IST 2026
[2026-06-12 07:30:54,725.725 INFO    ] ================================================
[2026-06-12 07:30:55,091.091 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 07:30:55
[2026-06-12 07:30:55,407.407 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 07:30:55,551.551 INFO    ] Initializing speech engine...
[2026-06-12 07:30:55,556.556 INFO    ] 2026-06-12 07:30:55
[2026-06-12 07:30:55,761.761 INFO    ] 2026-06-12 07:30:55
[2026-06-12 07:30:55,789.789 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 07:30:55,975.975 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 07:30:55,984.984 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 07:30:56,113.113 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 07:30:56,177.177 INFO    ] time= 12/06/2026 07:30:56
[2026-06-12 07:30:56,205.205 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 07:30:56,211.211 INFO    ] Checking for existing commands in stream...
[2026-06-12 07:30:56,278.278 INFO    ] No existing commands found in stream
[2026-06-12 07:31:01,289.289 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 07:31:01,294.294 INFO    ] Waiting 2.49 seconds before fallback handling...
[2026-06-12 07:31:04,175.175 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 07:31:04,177.177 INFO    ] Checking for system updates...
[2026-06-12 07:31:04,199.199 INFO    ] 200
[2026-06-12 07:31:04,200.200 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:31:04,231.231 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 07:31:04,232.232 INFO    ] No update needed
[2026-06-12 07:31:04,233.233 INFO    ] Checking for camera pi updates...
[2026-06-12 07:31:04,255.255 INFO    ] 200
[2026-06-12 07:31:04,256.256 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:31:04,280.280 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 07:31:04,317.317 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 07:31:04,319.319 INFO    ] No camera update needed
[2026-06-12 07:31:04,320.320 INFO    ] Script finished. Safe exiting...
[2026-06-12 07:31:04,321.321 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 07:31:04,325.325 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 07:31:04,327.327 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 07:31:06,369.369 INFO    ] ================================================
[2026-06-12 07:31:06,384.384 INFO    ] Launching Daemon at Fri Jun 12 07:31:06 IST 2026
[2026-06-12 07:31:06,395.395 INFO    ] ================================================
[2026-06-12 07:31:06,727.727 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 07:31:06
[2026-06-12 07:31:07,043.043 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 07:31:07,174.174 INFO    ] Initializing speech engine...
[2026-06-12 07:31:07,179.179 INFO    ] 2026-06-12 07:31:07
[2026-06-12 07:31:07,393.393 INFO    ] 2026-06-12 07:31:07
[2026-06-12 07:31:07,422.422 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 07:31:07,638.638 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 07:31:07,642.642 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 07:31:07,787.787 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 07:31:07,855.855 INFO    ] time= 12/06/2026 07:31:07
[2026-06-12 07:31:07,885.885 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 07:31:07,891.891 INFO    ] Checking for existing commands in stream...
[2026-06-12 07:31:07,988.988 INFO    ] No existing commands found in stream
[2026-06-12 07:31:12,997.997 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 07:31:13,000.000 INFO    ] Waiting 0.51 seconds before fallback handling...
[2026-06-12 07:31:13,874.874 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 07:31:13,875.875 INFO    ] Checking for system updates...
[2026-06-12 07:31:13,896.896 INFO    ] 200
[2026-06-12 07:31:13,897.897 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:31:13,929.929 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 07:31:13,930.930 INFO    ] No update needed
[2026-06-12 07:31:13,932.932 INFO    ] Checking for camera pi updates...
[2026-06-12 07:31:13,951.951 INFO    ] 200
[2026-06-12 07:31:13,953.953 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:31:13,976.976 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 07:31:14,015.015 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 07:31:14,016.016 INFO    ] No camera update needed
[2026-06-12 07:31:14,018.018 INFO    ] Script finished. Safe exiting...
[2026-06-12 07:31:14,019.019 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 07:31:14,022.022 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 07:31:14,025.025 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 07:31:16,064.064 INFO    ] ================================================
[2026-06-12 07:31:16,080.080 INFO    ] Launching Daemon at Fri Jun 12 07:31:16 IST 2026
[2026-06-12 07:31:16,091.091 INFO    ] ================================================
[2026-06-12 07:31:16,417.417 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 07:31:16
[2026-06-12 07:31:16,728.728 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 07:31:16,873.873 INFO    ] Initializing speech engine...
[2026-06-12 07:31:16,877.877 INFO    ] 2026-06-12 07:31:16
[2026-06-12 07:31:17,082.082 INFO    ] 2026-06-12 07:31:17
[2026-06-12 07:31:17,112.112 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 07:31:17,298.298 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 07:31:17,301.301 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 07:31:17,436.436 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 07:31:17,507.507 INFO    ] time= 12/06/2026 07:31:17
[2026-06-12 07:31:17,532.532 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 07:31:17,538.538 INFO    ] Checking for existing commands in stream...
[2026-06-12 07:31:17,605.605 INFO    ] No existing commands found in stream
[2026-06-12 07:31:22,615.615 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 07:31:22,618.618 INFO    ] Waiting 0.15 seconds before fallback handling...
[2026-06-12 07:31:23,105.105 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 07:31:23,106.106 INFO    ] Checking for system updates...
[2026-06-12 07:31:23,127.127 INFO    ] 200
[2026-06-12 07:31:23,129.129 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:31:23,159.159 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 07:31:23,161.161 INFO    ] No update needed
[2026-06-12 07:31:23,163.163 INFO    ] Checking for camera pi updates...
[2026-06-12 07:31:23,182.182 INFO    ] 200
[2026-06-12 07:31:23,184.184 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:31:23,207.207 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 07:31:23,244.244 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 07:31:23,245.245 INFO    ] No camera update needed
[2026-06-12 07:31:23,247.247 INFO    ] Script finished. Safe exiting...
[2026-06-12 07:31:23,248.248 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 07:31:23,252.252 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 07:31:23,255.255 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 07:31:25,293.293 INFO    ] ================================================
[2026-06-12 07:31:25,309.309 INFO    ] Launching Daemon at Fri Jun 12 07:31:25 IST 2026
[2026-06-12 07:31:25,320.320 INFO    ] ================================================
[2026-06-12 07:31:25,669.669 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 07:31:25
[2026-06-12 07:31:25,989.989 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 07:31:26,128.128 INFO    ] Initializing speech engine...
[2026-06-12 07:31:26,141.141 INFO    ] 2026-06-12 07:31:26
[2026-06-12 07:31:26,364.364 INFO    ] 2026-06-12 07:31:26
[2026-06-12 07:31:26,396.396 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 07:31:26,530.530 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 07:31:26,598.598 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 07:31:26,742.742 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 07:31:26,794.794 INFO    ] time= 12/06/2026 07:31:26
[2026-06-12 07:31:26,840.840 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 07:31:26,852.852 INFO    ] Checking for existing commands in stream...
[2026-06-12 07:31:26,928.928 INFO    ] No existing commands found in stream
[2026-06-12 07:31:31,938.938 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 07:31:31,940.940 INFO    ] Waiting 2.89 seconds before fallback handling...
[2026-06-12 07:31:35,204.204 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 07:31:35,205.205 INFO    ] Checking for system updates...
[2026-06-12 07:31:35,226.226 INFO    ] 200
[2026-06-12 07:31:35,228.228 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:31:35,259.259 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 07:31:35,260.260 INFO    ] No update needed
[2026-06-12 07:31:35,262.262 INFO    ] Checking for camera pi updates...
[2026-06-12 07:31:35,282.282 INFO    ] 200
[2026-06-12 07:31:35,283.283 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:31:35,306.306 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 07:31:35,343.343 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 07:31:35,344.344 INFO    ] No camera update needed
[2026-06-12 07:31:35,345.345 INFO    ] Script finished. Safe exiting...
[2026-06-12 07:31:35,347.347 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 07:31:35,350.350 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 07:31:35,353.353 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 07:31:37,391.391 INFO    ] ================================================
[2026-06-12 07:31:37,406.406 INFO    ] Launching Daemon at Fri Jun 12 07:31:37 IST 2026
[2026-06-12 07:31:37,417.417 INFO    ] ================================================
[2026-06-12 07:31:37,782.782 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 07:31:37
[2026-06-12 07:31:38,098.098 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 07:31:38,240.240 INFO    ] Initializing speech engine...
[2026-06-12 07:31:38,246.246 INFO    ] 2026-06-12 07:31:38
[2026-06-12 07:31:38,452.452 INFO    ] 2026-06-12 07:31:38
[2026-06-12 07:31:38,480.480 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 07:31:38,667.667 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 07:31:38,670.670 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 07:31:38,810.810 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 07:31:38,865.865 INFO    ] time= 12/06/2026 07:31:38
[2026-06-12 07:31:38,895.895 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 07:31:38,905.905 INFO    ] Checking for existing commands in stream...
[2026-06-12 07:31:38,978.978 INFO    ] No existing commands found in stream
[2026-06-12 07:31:43,992.992 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 07:31:43,995.995 INFO    ] Waiting 2.17 seconds before fallback handling...
[2026-06-12 07:31:46,544.544 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 07:31:46,546.546 INFO    ] Checking for system updates...
[2026-06-12 07:31:46,568.568 INFO    ] 200
[2026-06-12 07:31:46,569.569 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:31:46,603.603 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 07:31:46,605.605 INFO    ] No update needed
[2026-06-12 07:31:46,606.606 INFO    ] Checking for camera pi updates...
[2026-06-12 07:31:46,626.626 INFO    ] 200
[2026-06-12 07:31:46,628.628 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:31:46,653.653 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 07:31:46,693.693 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 07:31:46,695.695 INFO    ] No camera update needed
[2026-06-12 07:31:46,696.696 INFO    ] Script finished. Safe exiting...
[2026-06-12 07:31:46,698.698 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 07:31:46,701.701 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 07:31:46,704.704 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 07:31:48,745.745 INFO    ] ================================================
[2026-06-12 07:31:48,761.761 INFO    ] Launching Daemon at Fri Jun 12 07:31:48 IST 2026
[2026-06-12 07:31:48,771.771 INFO    ] ================================================
[2026-06-12 07:31:49,159.159 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 07:31:49
[2026-06-12 07:31:49,503.503 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 07:31:49,644.644 INFO    ] Initializing speech engine...
[2026-06-12 07:31:49,658.658 INFO    ] 2026-06-12 07:31:49
[2026-06-12 07:31:49,870.870 INFO    ] 2026-06-12 07:31:49
[2026-06-12 07:31:49,898.898 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 07:31:50,082.082 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 07:31:50,093.093 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 07:31:50,222.222 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 07:31:50,290.290 INFO    ] time= 12/06/2026 07:31:50
[2026-06-12 07:31:50,313.313 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 07:31:50,319.319 INFO    ] Checking for existing commands in stream...
[2026-06-12 07:31:50,386.386 INFO    ] No existing commands found in stream
[2026-06-12 07:31:55,401.401 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 07:31:55,404.404 INFO    ] Waiting 3.06 seconds before fallback handling...
[2026-06-12 07:31:58,802.802 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 07:31:58,804.804 INFO    ] Checking for system updates...
[2026-06-12 07:31:58,827.827 INFO    ] 200
[2026-06-12 07:31:58,828.828 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:31:58,862.862 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 07:31:58,864.864 INFO    ] No update needed
[2026-06-12 07:31:58,865.865 INFO    ] Checking for camera pi updates...
[2026-06-12 07:31:58,890.890 INFO    ] 200
[2026-06-12 07:31:58,892.892 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:31:58,925.925 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 07:31:58,973.973 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 07:31:58,975.975 INFO    ] No camera update needed
[2026-06-12 07:31:58,976.976 INFO    ] Script finished. Safe exiting...
[2026-06-12 07:31:58,977.977 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 07:31:58,981.981 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 07:31:58,984.984 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 07:32:01,024.024 INFO    ] ================================================
[2026-06-12 07:32:01,039.039 INFO    ] Launching Daemon at Fri Jun 12 07:32:01 IST 2026
[2026-06-12 07:32:01,050.050 INFO    ] ================================================
[2026-06-12 07:32:01,390.390 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 07:32:01
[2026-06-12 07:32:01,834.834 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 07:32:02,027.027 INFO    ] Initializing speech engine...
[2026-06-12 07:32:02,043.043 INFO    ] 2026-06-12 07:32:02
[2026-06-12 07:32:02,297.297 INFO    ] 2026-06-12 07:32:02
[2026-06-12 07:32:02,333.333 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 07:32:02,495.495 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 07:32:02,537.537 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 07:32:02,674.674 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 07:32:02,729.729 INFO    ] time= 12/06/2026 07:32:02
[2026-06-12 07:32:02,764.764 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 07:32:02,774.774 INFO    ] Checking for existing commands in stream...
[2026-06-12 07:32:02,846.846 INFO    ] No existing commands found in stream
[2026-06-12 07:32:07,854.854 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 07:32:07,857.857 INFO    ] Waiting 1.71 seconds before fallback handling...
[2026-06-12 07:32:09,923.923 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 07:32:09,924.924 INFO    ] Checking for system updates...
[2026-06-12 07:32:09,945.945 INFO    ] 200
[2026-06-12 07:32:09,946.946 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:32:09,979.979 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 07:32:09,980.980 INFO    ] No update needed
[2026-06-12 07:32:09,981.981 INFO    ] Checking for camera pi updates...
[2026-06-12 07:32:10,001.001 INFO    ] 200
[2026-06-12 07:32:10,002.002 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:32:10,026.026 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 07:32:10,164.164 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 07:32:10,165.165 INFO    ] No camera update needed
[2026-06-12 07:32:10,167.167 INFO    ] Script finished. Safe exiting...
[2026-06-12 07:32:10,168.168 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 07:32:10,171.171 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 07:32:10,174.174 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 07:32:12,205.205 INFO    ] ================================================
[2026-06-12 07:32:12,215.215 INFO    ] Launching Daemon at Fri Jun 12 07:32:12 IST 2026
[2026-06-12 07:32:12,221.221 INFO    ] ================================================
[2026-06-12 07:32:12,551.551 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 07:32:12
[2026-06-12 07:32:12,906.906 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 07:32:13,083.083 INFO    ] Initializing speech engine...
[2026-06-12 07:32:13,087.087 INFO    ] 2026-06-12 07:32:13
[2026-06-12 07:32:13,295.295 INFO    ] 2026-06-12 07:32:13
[2026-06-12 07:32:13,323.323 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 07:32:13,509.509 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 07:32:13,520.520 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 07:32:13,668.668 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 07:32:13,723.723 INFO    ] time= 12/06/2026 07:32:13
[2026-06-12 07:32:13,740.740 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 07:32:13,746.746 INFO    ] Checking for existing commands in stream...
[2026-06-12 07:32:13,814.814 INFO    ] No existing commands found in stream
[2026-06-12 07:32:18,828.828 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 07:32:18,832.832 INFO    ] Waiting 0.18 seconds before fallback handling...
[2026-06-12 07:32:19,389.389 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 07:32:19,391.391 INFO    ] Checking for system updates...
[2026-06-12 07:32:19,412.412 INFO    ] 200
[2026-06-12 07:32:19,413.413 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:32:19,444.444 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 07:32:19,445.445 INFO    ] No update needed
[2026-06-12 07:32:19,447.447 INFO    ] Checking for camera pi updates...
[2026-06-12 07:32:19,467.467 INFO    ] 200
[2026-06-12 07:32:19,468.468 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:32:19,494.494 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 07:32:19,533.533 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 07:32:19,534.534 INFO    ] No camera update needed
[2026-06-12 07:32:19,535.535 INFO    ] Script finished. Safe exiting...
[2026-06-12 07:32:19,537.537 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 07:32:19,540.540 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 07:32:19,543.543 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 07:32:21,581.581 INFO    ] ================================================
[2026-06-12 07:32:21,596.596 INFO    ] Launching Daemon at Fri Jun 12 07:32:21 IST 2026
[2026-06-12 07:32:21,607.607 INFO    ] ================================================
[2026-06-12 07:32:21,969.969 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 07:32:21
[2026-06-12 07:32:22,287.287 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 07:32:22,432.432 INFO    ] Initializing speech engine...
[2026-06-12 07:32:22,437.437 INFO    ] 2026-06-12 07:32:22
[2026-06-12 07:32:22,643.643 INFO    ] 2026-06-12 07:32:22
[2026-06-12 07:32:22,672.672 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 07:32:22,795.795 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 07:32:22,845.845 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 07:32:23,000.000 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 07:32:23,068.068 INFO    ] time= 12/06/2026 07:32:23
[2026-06-12 07:32:23,095.095 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 07:32:23,102.102 INFO    ] Checking for existing commands in stream...
[2026-06-12 07:32:23,169.169 INFO    ] No existing commands found in stream
[2026-06-12 07:32:28,183.183 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 07:32:28,186.186 INFO    ] Waiting 2.99 seconds before fallback handling...
[2026-06-12 07:32:31,537.537 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 07:32:31,538.538 INFO    ] Checking for system updates...
[2026-06-12 07:32:31,564.564 INFO    ] 200
[2026-06-12 07:32:31,566.566 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:32:31,600.600 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 07:32:31,602.602 INFO    ] No update needed
[2026-06-12 07:32:31,604.604 INFO    ] Checking for camera pi updates...
[2026-06-12 07:32:31,626.626 INFO    ] 200
[2026-06-12 07:32:31,627.627 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:32:31,654.654 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 07:32:31,678.678 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 07:32:31,680.680 INFO    ] No camera update needed
[2026-06-12 07:32:31,681.681 INFO    ] Script finished. Safe exiting...
[2026-06-12 07:32:31,683.683 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 07:32:31,687.687 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 07:32:31,690.690 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 07:32:33,715.715 INFO    ] ================================================
[2026-06-12 07:32:33,724.724 INFO    ] Launching Daemon at Fri Jun 12 07:32:33 IST 2026
[2026-06-12 07:32:33,730.730 INFO    ] ================================================
[2026-06-12 07:32:34,081.081 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 07:32:34
[2026-06-12 07:32:34,393.393 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 07:32:34,546.546 INFO    ] Initializing speech engine...
[2026-06-12 07:32:34,549.549 INFO    ] 2026-06-12 07:32:34
[2026-06-12 07:32:34,768.768 INFO    ] 2026-06-12 07:32:34
[2026-06-12 07:32:34,800.800 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 07:32:34,937.937 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 07:32:35,005.005 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 07:32:35,150.150 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 07:32:35,206.206 INFO    ] time= 12/06/2026 07:32:35
[2026-06-12 07:32:35,253.253 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 07:32:35,259.259 INFO    ] Checking for existing commands in stream...
[2026-06-12 07:32:35,337.337 INFO    ] No existing commands found in stream
[2026-06-12 07:32:40,346.346 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 07:32:40,349.349 INFO    ] Waiting 0.41 seconds before fallback handling...
[2026-06-12 07:32:41,123.123 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 07:32:41,124.124 INFO    ] Checking for system updates...
[2026-06-12 07:32:41,146.146 INFO    ] 200
[2026-06-12 07:32:41,148.148 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:32:41,178.178 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 07:32:41,179.179 INFO    ] No update needed
[2026-06-12 07:32:41,181.181 INFO    ] Checking for camera pi updates...
[2026-06-12 07:32:41,200.200 INFO    ] 200
[2026-06-12 07:32:41,202.202 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:32:41,225.225 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 07:32:41,270.270 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 07:32:41,272.272 INFO    ] No camera update needed
[2026-06-12 07:32:41,273.273 INFO    ] Script finished. Safe exiting...
[2026-06-12 07:32:41,274.274 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 07:32:41,277.277 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 07:32:41,280.280 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 07:32:43,319.319 INFO    ] ================================================
[2026-06-12 07:32:43,335.335 INFO    ] Launching Daemon at Fri Jun 12 07:32:43 IST 2026
[2026-06-12 07:32:43,346.346 INFO    ] ================================================
[2026-06-12 07:32:43,726.726 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 07:32:43
[2026-06-12 07:32:44,067.067 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 07:32:44,222.222 INFO    ] Initializing speech engine...
[2026-06-12 07:32:44,225.225 INFO    ] 2026-06-12 07:32:44
[2026-06-12 07:32:44,433.433 INFO    ] 2026-06-12 07:32:44
[2026-06-12 07:32:44,462.462 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 07:32:44,646.646 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 07:32:44,656.656 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 07:32:44,786.786 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 07:32:44,854.854 INFO    ] time= 12/06/2026 07:32:44
[2026-06-12 07:32:44,878.878 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 07:32:44,884.884 INFO    ] Checking for existing commands in stream...
[2026-06-12 07:32:45,000.000 INFO    ] No existing commands found in stream
[2026-06-12 07:32:50,011.011 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 07:32:50,014.014 INFO    ] Waiting 0.80 seconds before fallback handling...
[2026-06-12 07:32:51,210.210 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 07:32:51,212.212 INFO    ] Checking for system updates...
[2026-06-12 07:32:51,233.233 INFO    ] 200
[2026-06-12 07:32:51,234.234 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:32:51,265.265 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 07:32:51,266.266 INFO    ] No update needed
[2026-06-12 07:32:51,267.267 INFO    ] Checking for camera pi updates...
[2026-06-12 07:32:51,287.287 INFO    ] 200
[2026-06-12 07:32:51,289.289 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:32:51,312.312 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 07:32:51,350.350 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 07:32:51,352.352 INFO    ] No camera update needed
[2026-06-12 07:32:51,353.353 INFO    ] Script finished. Safe exiting...
[2026-06-12 07:32:51,354.354 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 07:32:51,357.357 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 07:32:51,360.360 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 07:32:53,398.398 INFO    ] ================================================
[2026-06-12 07:32:53,413.413 INFO    ] Launching Daemon at Fri Jun 12 07:32:53 IST 2026
[2026-06-12 07:32:53,424.424 INFO    ] ================================================
[2026-06-12 07:32:53,792.792 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 07:32:53
[2026-06-12 07:32:54,105.105 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 07:32:54,247.247 INFO    ] Initializing speech engine...
[2026-06-12 07:32:54,255.255 INFO    ] 2026-06-12 07:32:54
[2026-06-12 07:32:54,476.476 INFO    ] 2026-06-12 07:32:54
[2026-06-12 07:32:54,506.506 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 07:32:54,705.705 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 07:32:54,709.709 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 07:32:54,859.859 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 07:32:54,928.928 INFO    ] time= 12/06/2026 07:32:54
[2026-06-12 07:32:54,954.954 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 07:32:54,961.961 INFO    ] Checking for existing commands in stream...
[2026-06-12 07:32:55,038.038 INFO    ] No existing commands found in stream
[2026-06-12 07:33:00,049.049 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 07:33:00,051.051 INFO    ] Waiting 3.58 seconds before fallback handling...
[2026-06-12 07:33:03,970.970 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 07:33:03,971.971 INFO    ] Checking for system updates...
[2026-06-12 07:33:03,992.992 INFO    ] 200
[2026-06-12 07:33:03,993.993 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:33:04,023.023 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 07:33:04,024.024 INFO    ] No update needed
[2026-06-12 07:33:04,026.026 INFO    ] Checking for camera pi updates...
[2026-06-12 07:33:04,046.046 INFO    ] 200
[2026-06-12 07:33:04,048.048 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:33:04,072.072 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 07:33:04,113.113 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 07:33:04,114.114 INFO    ] No camera update needed
[2026-06-12 07:33:04,119.119 INFO    ] Script finished. Safe exiting...
[2026-06-12 07:33:04,121.121 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 07:33:04,124.124 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 07:33:04,127.127 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 07:33:06,164.164 INFO    ] ================================================
[2026-06-12 07:33:06,187.187 INFO    ] Launching Daemon at Fri Jun 12 07:33:06 IST 2026
[2026-06-12 07:33:06,199.199 INFO    ] ================================================
[2026-06-12 07:33:06,589.589 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 07:33:06
[2026-06-12 07:33:06,931.931 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 07:33:07,083.083 INFO    ] Initializing speech engine...
[2026-06-12 07:33:07,089.089 INFO    ] 2026-06-12 07:33:07
[2026-06-12 07:33:07,296.296 INFO    ] 2026-06-12 07:33:07
[2026-06-12 07:33:07,325.325 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 07:33:07,509.509 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 07:33:07,513.513 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 07:33:07,675.675 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 07:33:07,719.719 INFO    ] time= 12/06/2026 07:33:07
[2026-06-12 07:33:07,741.741 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 07:33:07,747.747 INFO    ] Checking for existing commands in stream...
[2026-06-12 07:33:07,813.813 INFO    ] No existing commands found in stream
[2026-06-12 07:33:12,824.824 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 07:33:12,827.827 INFO    ] Waiting 2.34 seconds before fallback handling...
[2026-06-12 07:33:15,549.549 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 07:33:15,551.551 INFO    ] Checking for system updates...
[2026-06-12 07:33:15,572.572 INFO    ] 200
[2026-06-12 07:33:15,573.573 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:33:15,603.603 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 07:33:15,605.605 INFO    ] No update needed
[2026-06-12 07:33:15,606.606 INFO    ] Checking for camera pi updates...
[2026-06-12 07:33:15,626.626 INFO    ] 200
[2026-06-12 07:33:15,628.628 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:33:15,652.652 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 07:33:15,688.688 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 07:33:15,689.689 INFO    ] No camera update needed
[2026-06-12 07:33:15,691.691 INFO    ] Script finished. Safe exiting...
[2026-06-12 07:33:15,692.692 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 07:33:15,696.696 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 07:33:15,699.699 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 07:33:17,739.739 INFO    ] ================================================
[2026-06-12 07:33:17,755.755 INFO    ] Launching Daemon at Fri Jun 12 07:33:17 IST 2026
[2026-06-12 07:33:17,767.767 INFO    ] ================================================
[2026-06-12 07:33:18,119.119 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 07:33:18
[2026-06-12 07:33:18,459.459 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 07:33:18,611.611 INFO    ] Initializing speech engine...
[2026-06-12 07:33:18,617.617 INFO    ] 2026-06-12 07:33:18
[2026-06-12 07:33:18,827.827 INFO    ] 2026-06-12 07:33:18
[2026-06-12 07:33:18,857.857 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 07:33:19,045.045 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 07:33:19,056.056 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 07:33:19,213.213 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 07:33:19,273.273 INFO    ] time= 12/06/2026 07:33:19
[2026-06-12 07:33:19,317.317 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 07:33:19,336.336 INFO    ] Checking for existing commands in stream...
[2026-06-12 07:33:19,403.403 INFO    ] No existing commands found in stream
[2026-06-12 07:33:24,422.422 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 07:33:24,426.426 INFO    ] Waiting 3.72 seconds before fallback handling...
[2026-06-12 07:33:28,509.509 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 07:33:28,511.511 INFO    ] Checking for system updates...
[2026-06-12 07:33:28,532.532 INFO    ] 200
[2026-06-12 07:33:28,533.533 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:33:28,566.566 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 07:33:28,568.568 INFO    ] No update needed
[2026-06-12 07:33:28,569.569 INFO    ] Checking for camera pi updates...
[2026-06-12 07:33:28,589.589 INFO    ] 200
[2026-06-12 07:33:28,591.591 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:33:28,616.616 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 07:33:28,654.654 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 07:33:28,655.655 INFO    ] No camera update needed
[2026-06-12 07:33:28,657.657 INFO    ] Script finished. Safe exiting...
[2026-06-12 07:33:28,658.658 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 07:33:28,661.661 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 07:33:28,664.664 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 07:33:30,705.705 INFO    ] ================================================
[2026-06-12 07:33:30,721.721 INFO    ] Launching Daemon at Fri Jun 12 07:33:30 IST 2026
[2026-06-12 07:33:30,732.732 INFO    ] ================================================
[2026-06-12 07:33:31,099.099 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 07:33:31
[2026-06-12 07:33:31,412.412 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 07:33:31,542.542 INFO    ] Initializing speech engine...
[2026-06-12 07:33:31,547.547 INFO    ] 2026-06-12 07:33:31
[2026-06-12 07:33:31,761.761 INFO    ] 2026-06-12 07:33:31
[2026-06-12 07:33:31,790.790 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 07:33:31,941.941 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 07:33:31,992.992 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 07:33:32,143.143 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 07:33:32,230.230 INFO    ] time= 12/06/2026 07:33:32
[2026-06-12 07:33:32,241.241 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 07:33:32,257.257 INFO    ] Checking for existing commands in stream...
[2026-06-12 07:33:32,370.370 INFO    ] No existing commands found in stream
[2026-06-12 07:33:37,388.388 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 07:33:37,391.391 INFO    ] Waiting 1.22 seconds before fallback handling...
[2026-06-12 07:33:38,946.946 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 07:33:38,948.948 INFO    ] Checking for system updates...
[2026-06-12 07:33:38,968.968 INFO    ] 200
[2026-06-12 07:33:38,970.970 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:33:39,005.005 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 07:33:39,006.006 INFO    ] No update needed
[2026-06-12 07:33:39,007.007 INFO    ] Checking for camera pi updates...
[2026-06-12 07:33:39,027.027 INFO    ] 200
[2026-06-12 07:33:39,028.028 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:33:39,053.053 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 07:33:39,092.092 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 07:33:39,094.094 INFO    ] No camera update needed
[2026-06-12 07:33:39,095.095 INFO    ] Script finished. Safe exiting...
[2026-06-12 07:33:39,096.096 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 07:33:39,099.099 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 07:33:39,102.102 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 07:33:41,141.141 INFO    ] ================================================
[2026-06-12 07:33:41,158.158 INFO    ] Launching Daemon at Fri Jun 12 07:33:41 IST 2026
[2026-06-12 07:33:41,169.169 INFO    ] ================================================
[2026-06-12 07:33:41,518.518 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 07:33:41
[2026-06-12 07:33:41,858.858 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 07:33:41,999.999 INFO    ] Initializing speech engine...
[2026-06-12 07:33:42,007.007 INFO    ] 2026-06-12 07:33:42
[2026-06-12 07:33:42,226.226 INFO    ] 2026-06-12 07:33:42
[2026-06-12 07:33:42,256.256 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 07:33:42,442.442 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 07:33:42,452.452 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 07:33:42,584.584 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 07:33:42,651.651 INFO    ] time= 12/06/2026 07:33:42
[2026-06-12 07:33:42,676.676 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 07:33:42,678.678 INFO    ] Checking for existing commands in stream...
[2026-06-12 07:33:42,750.750 INFO    ] No existing commands found in stream
[2026-06-12 07:33:47,765.765 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 07:33:47,768.768 INFO    ] Waiting 1.92 seconds before fallback handling...
[2026-06-12 07:33:50,108.108 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 07:33:50,109.109 INFO    ] Checking for system updates...
[2026-06-12 07:33:50,132.132 INFO    ] 200
[2026-06-12 07:33:50,133.133 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:33:50,167.167 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 07:33:50,168.168 INFO    ] No update needed
[2026-06-12 07:33:50,170.170 INFO    ] Checking for camera pi updates...
[2026-06-12 07:33:50,190.190 INFO    ] 200
[2026-06-12 07:33:50,191.191 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:33:50,215.215 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 07:33:50,255.255 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 07:33:50,257.257 INFO    ] No camera update needed
[2026-06-12 07:33:50,258.258 INFO    ] Script finished. Safe exiting...
[2026-06-12 07:33:50,259.259 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 07:33:50,263.263 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 07:33:50,266.266 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 07:33:52,306.306 INFO    ] ================================================
[2026-06-12 07:33:52,322.322 INFO    ] Launching Daemon at Fri Jun 12 07:33:52 IST 2026
[2026-06-12 07:33:52,334.334 INFO    ] ================================================
[2026-06-12 07:33:52,656.656 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 07:33:52
[2026-06-12 07:33:52,969.969 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 07:33:53,108.108 INFO    ] Initializing speech engine...
[2026-06-12 07:33:53,118.118 INFO    ] 2026-06-12 07:33:53
[2026-06-12 07:33:53,322.322 INFO    ] 2026-06-12 07:33:53
[2026-06-12 07:33:53,349.349 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 07:33:53,531.531 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 07:33:53,535.535 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 07:33:53,669.669 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 07:33:53,734.734 INFO    ] time= 12/06/2026 07:33:53
[2026-06-12 07:33:53,760.760 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 07:33:53,766.766 INFO    ] Checking for existing commands in stream...
[2026-06-12 07:33:53,832.832 INFO    ] No existing commands found in stream
[2026-06-12 07:33:58,841.841 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 07:33:58,844.844 INFO    ] Waiting 1.86 seconds before fallback handling...
[2026-06-12 07:34:01,098.098 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 07:34:01,101.101 INFO    ] Checking for system updates...
[2026-06-12 07:34:01,141.141 INFO    ] 200
[2026-06-12 07:34:01,144.144 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:34:01,212.212 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 07:34:01,214.214 INFO    ] No update needed
[2026-06-12 07:34:01,216.216 INFO    ] Checking for camera pi updates...
[2026-06-12 07:34:01,264.264 INFO    ] 200
[2026-06-12 07:34:01,266.266 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:34:01,307.307 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 07:34:01,352.352 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 07:34:01,354.354 INFO    ] No camera update needed
[2026-06-12 07:34:01,355.355 INFO    ] Script finished. Safe exiting...
[2026-06-12 07:34:01,357.357 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 07:34:01,361.361 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 07:34:01,365.365 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 07:34:03,397.397 INFO    ] ================================================
[2026-06-12 07:34:03,413.413 INFO    ] Launching Daemon at Fri Jun 12 07:34:03 IST 2026
[2026-06-12 07:34:03,423.423 INFO    ] ================================================
[2026-06-12 07:34:03,789.789 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 07:34:03
[2026-06-12 07:34:04,135.135 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 07:34:04,292.292 INFO    ] Initializing speech engine...
[2026-06-12 07:34:04,300.300 INFO    ] 2026-06-12 07:34:04
[2026-06-12 07:34:04,505.505 INFO    ] 2026-06-12 07:34:04
[2026-06-12 07:34:04,534.534 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 07:34:04,718.718 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 07:34:04,727.727 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 07:34:04,857.857 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 07:34:04,926.926 INFO    ] time= 12/06/2026 07:34:04
[2026-06-12 07:34:04,949.949 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 07:34:04,956.956 INFO    ] Checking for existing commands in stream...
[2026-06-12 07:34:05,022.022 INFO    ] No existing commands found in stream
[2026-06-12 07:34:10,037.037 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 07:34:10,040.040 INFO    ] Waiting 0.26 seconds before fallback handling...
[2026-06-12 07:34:11,179.179 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 07:34:11,182.182 INFO    ] Checking for system updates...
[2026-06-12 07:34:11,225.225 INFO    ] 200
[2026-06-12 07:34:11,228.228 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:34:11,282.282 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 07:34:11,284.284 INFO    ] No update needed
[2026-06-12 07:34:11,285.285 INFO    ] Checking for camera pi updates...
[2026-06-12 07:34:11,306.306 INFO    ] 200
[2026-06-12 07:34:11,308.308 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:34:11,336.336 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 07:34:11,482.482 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 07:34:11,484.484 INFO    ] No camera update needed
[2026-06-12 07:34:11,485.485 INFO    ] Script finished. Safe exiting...
[2026-06-12 07:34:11,486.486 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 07:34:11,490.490 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 07:34:11,493.493 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 07:34:13,534.534 INFO    ] ================================================
[2026-06-12 07:34:13,550.550 INFO    ] Launching Daemon at Fri Jun 12 07:34:13 IST 2026
[2026-06-12 07:34:13,561.561 INFO    ] ================================================
[2026-06-12 07:34:13,884.884 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 07:34:13
[2026-06-12 07:34:14,197.197 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 07:34:14,328.328 INFO    ] Initializing speech engine...
[2026-06-12 07:34:14,338.338 INFO    ] 2026-06-12 07:34:14
[2026-06-12 07:34:14,555.555 INFO    ] 2026-06-12 07:34:14
[2026-06-12 07:34:14,585.585 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 07:34:14,771.771 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 07:34:14,781.781 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 07:34:14,915.915 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 07:34:14,978.978 INFO    ] time= 12/06/2026 07:34:14
[2026-06-12 07:34:15,002.002 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 07:34:15,008.008 INFO    ] Checking for existing commands in stream...
[2026-06-12 07:34:15,076.076 INFO    ] No existing commands found in stream
[2026-06-12 07:34:20,109.109 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 07:34:20,117.117 INFO    ] Waiting 0.44 seconds before fallback handling...
[2026-06-12 07:34:20,976.976 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 07:34:20,978.978 INFO    ] Checking for system updates...
[2026-06-12 07:34:20,999.999 INFO    ] 200
[2026-06-12 07:34:21,000.000 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:34:21,031.031 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 07:34:21,032.032 INFO    ] No update needed
[2026-06-12 07:34:21,034.034 INFO    ] Checking for camera pi updates...
[2026-06-12 07:34:21,053.053 INFO    ] 200
[2026-06-12 07:34:21,055.055 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:34:21,078.078 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 07:34:21,125.125 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 07:34:21,127.127 INFO    ] No camera update needed
[2026-06-12 07:34:21,128.128 INFO    ] Script finished. Safe exiting...
[2026-06-12 07:34:21,129.129 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 07:34:21,133.133 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 07:34:21,136.136 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 07:34:23,175.175 INFO    ] ================================================
[2026-06-12 07:34:23,191.191 INFO    ] Launching Daemon at Fri Jun 12 07:34:23 IST 2026
[2026-06-12 07:34:23,202.202 INFO    ] ================================================
[2026-06-12 07:34:23,581.581 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 07:34:23
[2026-06-12 07:34:23,923.923 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 07:34:24,080.080 INFO    ] Initializing speech engine...
[2026-06-12 07:34:24,086.086 INFO    ] 2026-06-12 07:34:24
[2026-06-12 07:34:24,292.292 INFO    ] 2026-06-12 07:34:24
[2026-06-12 07:34:24,321.321 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 07:34:24,475.475 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 07:34:24,477.477 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 07:34:24,633.633 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 07:34:24,661.661 INFO    ] time= 12/06/2026 07:34:24
[2026-06-12 07:34:24,728.728 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 07:34:24,752.752 INFO    ] Checking for existing commands in stream...
[2026-06-12 07:34:24,847.847 INFO    ] No existing commands found in stream
[2026-06-12 07:34:29,861.861 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 07:34:29,865.865 INFO    ] Waiting 1.23 seconds before fallback handling...
[2026-06-12 07:34:31,469.469 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 07:34:31,472.472 INFO    ] Checking for system updates...
[2026-06-12 07:34:31,499.499 INFO    ] 200
[2026-06-12 07:34:31,501.501 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:34:31,537.537 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 07:34:31,538.538 INFO    ] No update needed
[2026-06-12 07:34:31,540.540 INFO    ] Checking for camera pi updates...
[2026-06-12 07:34:31,565.565 INFO    ] 200
[2026-06-12 07:34:31,567.567 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:34:31,595.595 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 07:34:31,633.633 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 07:34:31,635.635 INFO    ] No camera update needed
[2026-06-12 07:34:31,636.636 INFO    ] Script finished. Safe exiting...
[2026-06-12 07:34:31,638.638 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 07:34:31,642.642 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 07:34:31,646.646 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 07:34:33,687.687 INFO    ] ================================================
[2026-06-12 07:34:33,703.703 INFO    ] Launching Daemon at Fri Jun 12 07:34:33 IST 2026
[2026-06-12 07:34:33,714.714 INFO    ] ================================================
[2026-06-12 07:34:34,093.093 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 07:34:34
[2026-06-12 07:34:34,438.438 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 07:34:34,594.594 INFO    ] Initializing speech engine...
[2026-06-12 07:34:34,599.599 INFO    ] 2026-06-12 07:34:34
[2026-06-12 07:34:34,808.808 INFO    ] 2026-06-12 07:34:34
[2026-06-12 07:34:34,839.839 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 07:34:35,025.025 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 07:34:35,035.035 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 07:34:35,189.189 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 07:34:35,238.238 INFO    ] time= 12/06/2026 07:34:35
[2026-06-12 07:34:35,261.261 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 07:34:35,268.268 INFO    ] Checking for existing commands in stream...
[2026-06-12 07:34:35,360.360 INFO    ] No existing commands found in stream
[2026-06-12 07:34:40,369.369 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 07:34:40,373.373 INFO    ] Waiting 2.08 seconds before fallback handling...
[2026-06-12 07:34:42,847.847 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 07:34:42,849.849 INFO    ] Checking for system updates...
[2026-06-12 07:34:42,870.870 INFO    ] 200
[2026-06-12 07:34:42,872.872 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:34:42,906.906 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 07:34:42,908.908 INFO    ] No update needed
[2026-06-12 07:34:42,909.909 INFO    ] Checking for camera pi updates...
[2026-06-12 07:34:42,928.928 INFO    ] 200
[2026-06-12 07:34:42,930.930 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:34:42,953.953 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 07:34:42,990.990 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 07:34:42,991.991 INFO    ] No camera update needed
[2026-06-12 07:34:42,993.993 INFO    ] Script finished. Safe exiting...
[2026-06-12 07:34:42,994.994 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 07:34:42,997.997 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 07:34:43,000.000 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 07:34:45,039.039 INFO    ] ================================================
[2026-06-12 07:34:45,054.054 INFO    ] Launching Daemon at Fri Jun 12 07:34:45 IST 2026
[2026-06-12 07:34:45,065.065 INFO    ] ================================================
[2026-06-12 07:34:45,390.390 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 07:34:45
[2026-06-12 07:34:45,704.704 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 07:34:45,834.834 INFO    ] Initializing speech engine...
[2026-06-12 07:34:45,839.839 INFO    ] 2026-06-12 07:34:45
[2026-06-12 07:34:46,059.059 INFO    ] 2026-06-12 07:34:46
[2026-06-12 07:34:46,088.088 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 07:34:46,275.275 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 07:34:46,283.283 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 07:34:46,411.411 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 07:34:46,473.473 INFO    ] time= 12/06/2026 07:34:46
[2026-06-12 07:34:46,506.506 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 07:34:46,508.508 INFO    ] Checking for existing commands in stream...
[2026-06-12 07:34:46,605.605 INFO    ] No existing commands found in stream
[2026-06-12 07:34:51,619.619 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 07:34:51,621.621 INFO    ] Waiting 2.47 seconds before fallback handling...
[2026-06-12 07:34:54,424.424 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 07:34:54,425.425 INFO    ] Checking for system updates...
[2026-06-12 07:34:54,447.447 INFO    ] 200
[2026-06-12 07:34:54,449.449 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:34:54,479.479 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 07:34:54,481.481 INFO    ] No update needed
[2026-06-12 07:34:54,482.482 INFO    ] Checking for camera pi updates...
[2026-06-12 07:34:54,505.505 INFO    ] 200
[2026-06-12 07:34:54,507.507 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:34:54,533.533 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 07:34:54,568.568 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 07:34:54,569.569 INFO    ] No camera update needed
[2026-06-12 07:34:54,571.571 INFO    ] Script finished. Safe exiting...
[2026-06-12 07:34:54,572.572 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 07:34:54,576.576 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 07:34:54,579.579 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 07:34:56,619.619 INFO    ] ================================================
[2026-06-12 07:34:56,635.635 INFO    ] Launching Daemon at Fri Jun 12 07:34:56 IST 2026
[2026-06-12 07:34:56,646.646 INFO    ] ================================================
[2026-06-12 07:34:56,999.999 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 07:34:56
[2026-06-12 07:34:57,309.309 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 07:34:57,450.450 INFO    ] Initializing speech engine...
[2026-06-12 07:34:57,455.455 INFO    ] 2026-06-12 07:34:57
[2026-06-12 07:34:57,658.658 INFO    ] 2026-06-12 07:34:57
[2026-06-12 07:34:57,687.687 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 07:34:57,871.871 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 07:34:57,881.881 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 07:34:58,008.008 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 07:34:58,076.076 INFO    ] time= 12/06/2026 07:34:58
[2026-06-12 07:34:58,100.100 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 07:34:58,106.106 INFO    ] Checking for existing commands in stream...
[2026-06-12 07:34:58,173.173 INFO    ] No existing commands found in stream
[2026-06-12 07:35:03,187.187 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 07:35:03,189.189 INFO    ] Waiting 1.72 seconds before fallback handling...
[2026-06-12 07:35:05,298.298 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 07:35:05,300.300 INFO    ] Checking for system updates...
[2026-06-12 07:35:05,320.320 INFO    ] 200
[2026-06-12 07:35:05,322.322 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:35:05,352.352 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 07:35:05,353.353 INFO    ] No update needed
[2026-06-12 07:35:05,355.355 INFO    ] Checking for camera pi updates...
[2026-06-12 07:35:05,374.374 INFO    ] 200
[2026-06-12 07:35:05,375.375 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:35:05,400.400 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 07:35:05,449.449 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 07:35:05,451.451 INFO    ] No camera update needed
[2026-06-12 07:35:05,452.452 INFO    ] Script finished. Safe exiting...
[2026-06-12 07:35:05,453.453 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 07:35:05,456.456 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 07:35:05,459.459 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 07:35:07,497.497 INFO    ] ================================================
[2026-06-12 07:35:07,513.513 INFO    ] Launching Daemon at Fri Jun 12 07:35:07 IST 2026
[2026-06-12 07:35:07,523.523 INFO    ] ================================================
[2026-06-12 07:35:07,890.890 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 07:35:07
[2026-06-12 07:35:08,203.203 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 07:35:08,336.336 INFO    ] Initializing speech engine...
[2026-06-12 07:35:08,341.341 INFO    ] 2026-06-12 07:35:08
[2026-06-12 07:35:08,535.535 INFO    ] 2026-06-12 07:35:08
[2026-06-12 07:35:08,580.580 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 07:35:08,742.742 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 07:35:08,790.790 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 07:35:08,914.914 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 07:35:08,915.915 INFO    ] time= 12/06/2026 07:35:08
[2026-06-12 07:35:08,917.917 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 07:35:08,918.918 INFO    ] Checking for existing commands in stream...
[2026-06-12 07:35:08,985.985 INFO    ] No existing commands found in stream
[2026-06-12 07:35:13,993.993 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 07:35:13,996.996 INFO    ] Waiting 2.52 seconds before fallback handling...
[2026-06-12 07:35:16,890.890 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 07:35:16,892.892 INFO    ] Checking for system updates...
[2026-06-12 07:35:16,914.914 INFO    ] 200
[2026-06-12 07:35:16,916.916 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:35:16,952.952 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 07:35:16,954.954 INFO    ] No update needed
[2026-06-12 07:35:16,955.955 INFO    ] Checking for camera pi updates...
[2026-06-12 07:35:16,977.977 INFO    ] 200
[2026-06-12 07:35:16,978.978 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:35:17,004.004 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 07:35:17,041.041 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 07:35:17,043.043 INFO    ] No camera update needed
[2026-06-12 07:35:17,044.044 INFO    ] Script finished. Safe exiting...
[2026-06-12 07:35:17,046.046 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 07:35:17,049.049 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 07:35:17,053.053 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 07:35:19,085.085 INFO    ] ================================================
[2026-06-12 07:35:19,100.100 INFO    ] Launching Daemon at Fri Jun 12 07:35:19 IST 2026
[2026-06-12 07:35:19,112.112 INFO    ] ================================================
[2026-06-12 07:35:19,459.459 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 07:35:19
[2026-06-12 07:35:19,780.780 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 07:35:19,924.924 INFO    ] Initializing speech engine...
[2026-06-12 07:35:19,929.929 INFO    ] 2026-06-12 07:35:19
[2026-06-12 07:35:20,134.134 INFO    ] 2026-06-12 07:35:20
[2026-06-12 07:35:20,162.162 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 07:35:20,346.346 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 07:35:20,355.355 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 07:35:20,484.484 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 07:35:20,543.543 INFO    ] time= 12/06/2026 07:35:20
[2026-06-12 07:35:20,576.576 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 07:35:20,582.582 INFO    ] Checking for existing commands in stream...
[2026-06-12 07:35:20,649.649 INFO    ] No existing commands found in stream
[2026-06-12 07:35:25,679.679 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 07:35:25,682.682 INFO    ] Waiting 2.75 seconds before fallback handling...
[2026-06-12 07:35:28,817.817 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 07:35:28,819.819 INFO    ] Checking for system updates...
[2026-06-12 07:35:28,840.840 INFO    ] 200
[2026-06-12 07:35:28,842.842 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:35:28,872.872 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 07:35:28,873.873 INFO    ] No update needed
[2026-06-12 07:35:28,874.874 INFO    ] Checking for camera pi updates...
[2026-06-12 07:35:28,894.894 INFO    ] 200
[2026-06-12 07:35:28,896.896 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:35:28,919.919 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 07:35:28,956.956 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 07:35:28,957.957 INFO    ] No camera update needed
[2026-06-12 07:35:28,958.958 INFO    ] Script finished. Safe exiting...
[2026-06-12 07:35:28,960.960 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 07:35:28,963.963 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 07:35:28,965.965 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 07:35:31,008.008 INFO    ] ================================================
[2026-06-12 07:35:31,024.024 INFO    ] Launching Daemon at Fri Jun 12 07:35:31 IST 2026
[2026-06-12 07:35:31,035.035 INFO    ] ================================================
[2026-06-12 07:35:31,397.397 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 07:35:31
[2026-06-12 07:35:31,738.738 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 07:35:31,889.889 INFO    ] Initializing speech engine...
[2026-06-12 07:35:31,899.899 INFO    ] 2026-06-12 07:35:31
[2026-06-12 07:35:32,109.109 INFO    ] 2026-06-12 07:35:32
[2026-06-12 07:35:32,157.157 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 07:35:32,312.312 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 07:35:32,365.365 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 07:35:32,515.515 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 07:35:32,579.579 INFO    ] time= 12/06/2026 07:35:32
[2026-06-12 07:35:32,607.607 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 07:35:32,613.613 INFO    ] Checking for existing commands in stream...
[2026-06-12 07:35:32,680.680 INFO    ] No existing commands found in stream
[2026-06-12 07:35:37,689.689 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 07:35:37,692.692 INFO    ] Waiting 2.83 seconds before fallback handling...
[2026-06-12 07:35:40,874.874 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 07:35:40,876.876 INFO    ] Checking for system updates...
[2026-06-12 07:35:40,898.898 INFO    ] 200
[2026-06-12 07:35:40,899.899 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:35:40,930.930 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 07:35:40,931.931 INFO    ] No update needed
[2026-06-12 07:35:40,932.932 INFO    ] Checking for camera pi updates...
[2026-06-12 07:35:40,952.952 INFO    ] 200
[2026-06-12 07:35:40,954.954 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:35:40,977.977 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 07:35:41,012.012 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 07:35:41,013.013 INFO    ] No camera update needed
[2026-06-12 07:35:41,015.015 INFO    ] Script finished. Safe exiting...
[2026-06-12 07:35:41,016.016 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 07:35:41,019.019 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 07:35:41,021.021 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 07:35:43,059.059 INFO    ] ================================================
[2026-06-12 07:35:43,075.075 INFO    ] Launching Daemon at Fri Jun 12 07:35:43 IST 2026
[2026-06-12 07:35:43,086.086 INFO    ] ================================================
[2026-06-12 07:35:43,444.444 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 07:35:43
[2026-06-12 07:35:43,756.756 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 07:35:43,899.899 INFO    ] Initializing speech engine...
[2026-06-12 07:35:43,904.904 INFO    ] 2026-06-12 07:35:43
[2026-06-12 07:35:44,107.107 INFO    ] 2026-06-12 07:35:44
[2026-06-12 07:35:44,136.136 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 07:35:44,320.320 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 07:35:44,330.330 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 07:35:44,454.454 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 07:35:44,516.516 INFO    ] time= 12/06/2026 07:35:44
[2026-06-12 07:35:44,549.549 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 07:35:44,551.551 INFO    ] Checking for existing commands in stream...
[2026-06-12 07:35:44,621.621 INFO    ] No existing commands found in stream
[2026-06-12 07:35:49,632.632 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 07:35:49,635.635 INFO    ] Waiting 2.94 seconds before fallback handling...
[2026-06-12 07:35:52,946.946 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 07:35:52,947.947 INFO    ] Checking for system updates...
[2026-06-12 07:35:52,969.969 INFO    ] 200
[2026-06-12 07:35:52,970.970 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:35:53,002.002 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 07:35:53,004.004 INFO    ] No update needed
[2026-06-12 07:35:53,005.005 INFO    ] Checking for camera pi updates...
[2026-06-12 07:35:53,025.025 INFO    ] 200
[2026-06-12 07:35:53,027.027 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:35:53,051.051 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 07:35:53,089.089 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 07:35:53,091.091 INFO    ] No camera update needed
[2026-06-12 07:35:53,092.092 INFO    ] Script finished. Safe exiting...
[2026-06-12 07:35:53,094.094 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 07:35:53,097.097 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 07:35:53,100.100 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 07:35:55,138.138 INFO    ] ================================================
[2026-06-12 07:35:55,153.153 INFO    ] Launching Daemon at Fri Jun 12 07:35:55 IST 2026
[2026-06-12 07:35:55,164.164 INFO    ] ================================================
[2026-06-12 07:35:55,502.502 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 07:35:55
[2026-06-12 07:35:55,814.814 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 07:35:55,946.946 INFO    ] Initializing speech engine...
[2026-06-12 07:35:55,958.958 INFO    ] 2026-06-12 07:35:55
[2026-06-12 07:35:56,164.164 INFO    ] 2026-06-12 07:35:56
[2026-06-12 07:35:56,193.193 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 07:35:56,326.326 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 07:35:56,379.379 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 07:35:56,521.521 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 07:35:56,583.583 INFO    ] time= 12/06/2026 07:35:56
[2026-06-12 07:35:56,607.607 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 07:35:56,614.614 INFO    ] Checking for existing commands in stream...
[2026-06-12 07:35:56,679.679 INFO    ] No existing commands found in stream
[2026-06-12 07:36:01,689.689 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 07:36:01,692.692 INFO    ] Waiting 0.81 seconds before fallback handling...
[2026-06-12 07:36:02,805.805 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 07:36:02,807.807 INFO    ] Checking for system updates...
[2026-06-12 07:36:02,827.827 INFO    ] 200
[2026-06-12 07:36:02,829.829 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:36:02,863.863 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 07:36:02,864.864 INFO    ] No update needed
[2026-06-12 07:36:02,866.866 INFO    ] Checking for camera pi updates...
[2026-06-12 07:36:02,886.886 INFO    ] 200
[2026-06-12 07:36:02,888.888 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:36:02,911.911 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 07:36:02,932.932 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 07:36:02,934.934 INFO    ] No camera update needed
[2026-06-12 07:36:02,935.935 INFO    ] Script finished. Safe exiting...
[2026-06-12 07:36:02,936.936 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 07:36:02,939.939 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 07:36:02,942.942 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 07:36:04,981.981 INFO    ] ================================================
[2026-06-12 07:36:05,996.996 INFO    ] Launching Daemon at Fri Jun 12 07:36:04 IST 2026
[2026-06-12 07:36:05,007.007 INFO    ] ================================================
[2026-06-12 07:36:05,368.368 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 07:36:05
[2026-06-12 07:36:05,688.688 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 07:36:05,829.829 INFO    ] Initializing speech engine...
[2026-06-12 07:36:05,834.834 INFO    ] 2026-06-12 07:36:05
[2026-06-12 07:36:06,032.032 INFO    ] 2026-06-12 07:36:06
[2026-06-12 07:36:06,074.074 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 07:36:06,252.252 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 07:36:06,304.304 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 07:36:06,448.448 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 07:36:06,505.505 INFO    ] time= 12/06/2026 07:36:06
[2026-06-12 07:36:06,533.533 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 07:36:06,557.557 INFO    ] Checking for existing commands in stream...
[2026-06-12 07:36:06,665.665 INFO    ] No existing commands found in stream
[2026-06-12 07:36:11,674.674 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 07:36:11,676.676 INFO    ] Waiting 0.41 seconds before fallback handling...
[2026-06-12 07:36:12,442.442 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 07:36:12,444.444 INFO    ] Checking for system updates...
[2026-06-12 07:36:12,465.465 INFO    ] 200
[2026-06-12 07:36:12,467.467 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:36:12,497.497 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 07:36:12,498.498 INFO    ] No update needed
[2026-06-12 07:36:12,500.500 INFO    ] Checking for camera pi updates...
[2026-06-12 07:36:12,520.520 INFO    ] 200
[2026-06-12 07:36:12,521.521 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:36:12,545.545 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 07:36:12,581.581 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 07:36:12,583.583 INFO    ] No camera update needed
[2026-06-12 07:36:12,584.584 INFO    ] Script finished. Safe exiting...
[2026-06-12 07:36:12,585.585 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 07:36:12,589.589 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 07:36:12,592.592 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 07:36:14,631.631 INFO    ] ================================================
[2026-06-12 07:36:14,647.647 INFO    ] Launching Daemon at Fri Jun 12 07:36:14 IST 2026
[2026-06-12 07:36:14,658.658 INFO    ] ================================================
[2026-06-12 07:36:14,995.995 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 07:36:14
[2026-06-12 07:36:15,339.339 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 07:36:15,490.490 INFO    ] Initializing speech engine...
[2026-06-12 07:36:15,495.495 INFO    ] 2026-06-12 07:36:15
[2026-06-12 07:36:15,702.702 INFO    ] 2026-06-12 07:36:15
[2026-06-12 07:36:15,732.732 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 07:36:15,918.918 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 07:36:15,928.928 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 07:36:16,053.053 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 07:36:16,115.115 INFO    ] time= 12/06/2026 07:36:16
[2026-06-12 07:36:16,147.147 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 07:36:16,153.153 INFO    ] Checking for existing commands in stream...
[2026-06-12 07:36:16,244.244 INFO    ] No existing commands found in stream
[2026-06-12 07:36:21,258.258 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 07:36:21,262.262 INFO    ] Waiting 1.14 seconds before fallback handling...
[2026-06-12 07:36:22,785.785 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 07:36:22,786.786 INFO    ] Checking for system updates...
[2026-06-12 07:36:22,808.808 INFO    ] 200
[2026-06-12 07:36:22,809.809 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:36:22,842.842 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 07:36:22,844.844 INFO    ] No update needed
[2026-06-12 07:36:22,845.845 INFO    ] Checking for camera pi updates...
[2026-06-12 07:36:22,868.868 INFO    ] 200
[2026-06-12 07:36:22,869.869 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:36:22,893.893 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 07:36:23,032.032 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 07:36:23,034.034 INFO    ] No camera update needed
[2026-06-12 07:36:23,035.035 INFO    ] Script finished. Safe exiting...
[2026-06-12 07:36:23,037.037 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 07:36:23,040.040 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 07:36:23,043.043 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 07:36:25,082.082 INFO    ] ================================================
[2026-06-12 07:36:25,098.098 INFO    ] Launching Daemon at Fri Jun 12 07:36:25 IST 2026
[2026-06-12 07:36:25,110.110 INFO    ] ================================================
[2026-06-12 07:36:25,457.457 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 07:36:25
[2026-06-12 07:36:25,797.797 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 07:36:25,945.945 INFO    ] Initializing speech engine...
[2026-06-12 07:36:25,953.953 INFO    ] 2026-06-12 07:36:25
[2026-06-12 07:36:26,167.167 INFO    ] 2026-06-12 07:36:26
[2026-06-12 07:36:26,196.196 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 07:36:26,383.383 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 07:36:26,392.392 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 07:36:26,545.545 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 07:36:26,594.594 INFO    ] time= 12/06/2026 07:36:26
[2026-06-12 07:36:26,617.617 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 07:36:26,623.623 INFO    ] Checking for existing commands in stream...
[2026-06-12 07:36:26,682.682 INFO    ] No existing commands found in stream
[2026-06-12 07:36:31,693.693 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 07:36:31,697.697 INFO    ] Waiting 1.55 seconds before fallback handling...
[2026-06-12 07:36:33,633.633 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 07:36:33,634.634 INFO    ] Checking for system updates...
[2026-06-12 07:36:33,655.655 INFO    ] 200
[2026-06-12 07:36:33,657.657 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:36:33,688.688 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 07:36:33,690.690 INFO    ] No update needed
[2026-06-12 07:36:33,691.691 INFO    ] Checking for camera pi updates...
[2026-06-12 07:36:33,712.712 INFO    ] 200
[2026-06-12 07:36:33,714.714 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:36:33,738.738 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 07:36:33,777.777 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 07:36:33,778.778 INFO    ] No camera update needed
[2026-06-12 07:36:33,780.780 INFO    ] Script finished. Safe exiting...
[2026-06-12 07:36:33,781.781 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 07:36:33,784.784 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 07:36:33,787.787 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 07:36:35,825.825 INFO    ] ================================================
[2026-06-12 07:36:35,841.841 INFO    ] Launching Daemon at Fri Jun 12 07:36:35 IST 2026
[2026-06-12 07:36:35,852.852 INFO    ] ================================================
[2026-06-12 07:36:36,198.198 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 07:36:36
[2026-06-12 07:36:36,539.539 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 07:36:36,681.681 INFO    ] Initializing speech engine...
[2026-06-12 07:36:36,683.683 INFO    ] 2026-06-12 07:36:36
[2026-06-12 07:36:36,906.906 INFO    ] 2026-06-12 07:36:36
[2026-06-12 07:36:36,937.937 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 07:36:37,122.122 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 07:36:37,126.126 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 07:36:37,260.260 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 07:36:37,332.332 INFO    ] time= 12/06/2026 07:36:37
[2026-06-12 07:36:37,356.356 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 07:36:37,363.363 INFO    ] Checking for existing commands in stream...
[2026-06-12 07:36:37,430.430 INFO    ] No existing commands found in stream
[2026-06-12 07:36:42,445.445 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 07:36:42,448.448 INFO    ] Waiting 3.38 seconds before fallback handling...
[2026-06-12 07:36:46,179.179 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 07:36:46,181.181 INFO    ] Checking for system updates...
[2026-06-12 07:36:46,202.202 INFO    ] 200
[2026-06-12 07:36:46,204.204 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:36:46,235.235 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 07:36:46,236.236 INFO    ] No update needed
[2026-06-12 07:36:46,238.238 INFO    ] Checking for camera pi updates...
[2026-06-12 07:36:46,257.257 INFO    ] 200
[2026-06-12 07:36:46,259.259 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:36:46,284.284 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 07:36:46,323.323 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 07:36:46,325.325 INFO    ] No camera update needed
[2026-06-12 07:36:46,326.326 INFO    ] Script finished. Safe exiting...
[2026-06-12 07:36:46,327.327 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 07:36:46,330.330 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 07:36:46,333.333 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 07:36:48,363.363 INFO    ] ================================================
[2026-06-12 07:36:48,371.371 INFO    ] Launching Daemon at Fri Jun 12 07:36:48 IST 2026
[2026-06-12 07:36:48,377.377 INFO    ] ================================================
[2026-06-12 07:36:48,757.757 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 07:36:48
[2026-06-12 07:36:49,098.098 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 07:36:49,251.251 INFO    ] Initializing speech engine...
[2026-06-12 07:36:49,257.257 INFO    ] 2026-06-12 07:36:49
[2026-06-12 07:36:49,466.466 INFO    ] 2026-06-12 07:36:49
[2026-06-12 07:36:49,495.495 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 07:36:49,629.629 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 07:36:49,683.683 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 07:36:49,821.821 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 07:36:49,870.870 INFO    ] time= 12/06/2026 07:36:49
[2026-06-12 07:36:49,914.914 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 07:36:49,921.921 INFO    ] Checking for existing commands in stream...
[2026-06-12 07:36:49,988.988 INFO    ] No existing commands found in stream
[2026-06-12 07:36:54,993.993 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 07:36:54,996.996 INFO    ] Waiting 2.65 seconds before fallback handling...
[2026-06-12 07:36:58,012.012 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 07:36:58,014.014 INFO    ] Checking for system updates...
[2026-06-12 07:36:58,036.036 INFO    ] 200
[2026-06-12 07:36:58,038.038 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:36:58,069.069 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 07:36:58,070.070 INFO    ] No update needed
[2026-06-12 07:36:58,071.071 INFO    ] Checking for camera pi updates...
[2026-06-12 07:36:58,093.093 INFO    ] 200
[2026-06-12 07:36:58,095.095 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:36:58,121.121 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 07:36:58,162.162 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 07:36:58,163.163 INFO    ] No camera update needed
[2026-06-12 07:36:58,165.165 INFO    ] Script finished. Safe exiting...
[2026-06-12 07:36:58,166.166 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 07:36:58,169.169 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 07:36:58,172.172 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 07:37:00,211.211 INFO    ] ================================================
[2026-06-12 07:37:00,226.226 INFO    ] Launching Daemon at Fri Jun 12 07:37:00 IST 2026
[2026-06-12 07:37:00,237.237 INFO    ] ================================================
[2026-06-12 07:37:00,609.609 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 07:37:00
[2026-06-12 07:37:00,921.921 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 07:37:01,054.054 INFO    ] Initializing speech engine...
[2026-06-12 07:37:01,058.058 INFO    ] 2026-06-12 07:37:01
[2026-06-12 07:37:01,287.287 INFO    ] 2026-06-12 07:37:01
[2026-06-12 07:37:01,318.318 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 07:37:01,451.451 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 07:37:01,494.494 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 07:37:01,662.662 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 07:37:01,719.719 INFO    ] time= 12/06/2026 07:37:01
[2026-06-12 07:37:01,789.789 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 07:37:01,806.806 INFO    ] Checking for existing commands in stream...
[2026-06-12 07:37:01,896.896 INFO    ] No existing commands found in stream
[2026-06-12 07:37:06,909.909 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 07:37:06,912.912 INFO    ] Waiting 3.17 seconds before fallback handling...
[2026-06-12 07:37:10,482.482 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 07:37:10,484.484 INFO    ] Checking for system updates...
[2026-06-12 07:37:10,505.505 INFO    ] 200
[2026-06-12 07:37:10,506.506 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:37:10,536.536 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 07:37:10,538.538 INFO    ] No update needed
[2026-06-12 07:37:10,539.539 INFO    ] Checking for camera pi updates...
[2026-06-12 07:37:10,559.559 INFO    ] 200
[2026-06-12 07:37:10,560.560 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:37:10,583.583 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 07:37:10,622.622 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 07:37:10,623.623 INFO    ] No camera update needed
[2026-06-12 07:37:10,625.625 INFO    ] Script finished. Safe exiting...
[2026-06-12 07:37:10,626.626 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 07:37:10,629.629 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 07:37:10,632.632 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 07:37:12,672.672 INFO    ] ================================================
[2026-06-12 07:37:12,687.687 INFO    ] Launching Daemon at Fri Jun 12 07:37:12 IST 2026
[2026-06-12 07:37:12,698.698 INFO    ] ================================================
[2026-06-12 07:37:13,088.088 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 07:37:13
[2026-06-12 07:37:13,430.430 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 07:37:13,583.583 INFO    ] Initializing speech engine...
[2026-06-12 07:37:13,589.589 INFO    ] 2026-06-12 07:37:13
[2026-06-12 07:37:13,796.796 INFO    ] 2026-06-12 07:37:13
[2026-06-12 07:37:13,825.825 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 07:37:14,009.009 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 07:37:14,020.020 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 07:37:14,175.175 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 07:37:14,219.219 INFO    ] time= 12/06/2026 07:37:14
[2026-06-12 07:37:14,240.240 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 07:37:14,247.247 INFO    ] Checking for existing commands in stream...
[2026-06-12 07:37:14,314.314 INFO    ] No existing commands found in stream
[2026-06-12 07:37:19,328.328 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 07:37:19,332.332 INFO    ] Waiting 1.28 seconds before fallback handling...
[2026-06-12 07:37:21,001.001 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 07:37:21,003.003 INFO    ] Checking for system updates...
[2026-06-12 07:37:21,024.024 INFO    ] 200
[2026-06-12 07:37:21,025.025 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:37:21,056.056 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 07:37:21,058.058 INFO    ] No update needed
[2026-06-12 07:37:21,059.059 INFO    ] Checking for camera pi updates...
[2026-06-12 07:37:21,080.080 INFO    ] 200
[2026-06-12 07:37:21,082.082 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:37:21,108.108 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 07:37:21,146.146 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 07:37:21,147.147 INFO    ] No camera update needed
[2026-06-12 07:37:21,149.149 INFO    ] Script finished. Safe exiting...
[2026-06-12 07:37:21,150.150 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 07:37:21,154.154 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 07:37:21,157.157 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 07:37:23,197.197 INFO    ] ================================================
[2026-06-12 07:37:23,212.212 INFO    ] Launching Daemon at Fri Jun 12 07:37:23 IST 2026
[2026-06-12 07:37:23,223.223 INFO    ] ================================================
[2026-06-12 07:37:23,606.606 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 07:37:23
[2026-06-12 07:37:23,948.948 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 07:37:24,101.101 INFO    ] Initializing speech engine...
[2026-06-12 07:37:24,107.107 INFO    ] 2026-06-12 07:37:24
[2026-06-12 07:37:24,315.315 INFO    ] 2026-06-12 07:37:24
[2026-06-12 07:37:24,344.344 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 07:37:24,529.529 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 07:37:24,538.538 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 07:37:24,694.694 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 07:37:24,738.738 INFO    ] time= 12/06/2026 07:37:24
[2026-06-12 07:37:24,764.764 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 07:37:24,766.766 INFO    ] Checking for existing commands in stream...
[2026-06-12 07:37:24,833.833 INFO    ] No existing commands found in stream
[2026-06-12 07:37:29,848.848 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 07:37:29,851.851 INFO    ] Waiting 0.51 seconds before fallback handling...
[2026-06-12 07:37:30,722.722 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 07:37:30,723.723 INFO    ] Checking for system updates...
[2026-06-12 07:37:30,744.744 INFO    ] 200
[2026-06-12 07:37:30,746.746 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:37:30,776.776 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 07:37:30,778.778 INFO    ] No update needed
[2026-06-12 07:37:30,779.779 INFO    ] Checking for camera pi updates...
[2026-06-12 07:37:30,799.799 INFO    ] 200
[2026-06-12 07:37:30,801.801 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:37:30,827.827 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 07:37:30,864.864 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 07:37:30,866.866 INFO    ] No camera update needed
[2026-06-12 07:37:30,867.867 INFO    ] Script finished. Safe exiting...
[2026-06-12 07:37:30,869.869 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 07:37:30,872.872 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 07:37:30,875.875 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 07:37:32,917.917 INFO    ] ================================================
[2026-06-12 07:37:32,933.933 INFO    ] Launching Daemon at Fri Jun 12 07:37:32 IST 2026
[2026-06-12 07:37:32,945.945 INFO    ] ================================================
[2026-06-12 07:37:33,292.292 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 07:37:33
[2026-06-12 07:37:33,606.606 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 07:37:33,739.739 INFO    ] Initializing speech engine...
[2026-06-12 07:37:33,743.743 INFO    ] 2026-06-12 07:37:33
[2026-06-12 07:37:33,935.935 INFO    ] 2026-06-12 07:37:33
[2026-06-12 07:37:33,980.980 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 07:37:34,140.140 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 07:37:34,184.184 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 07:37:34,354.354 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 07:37:34,406.406 INFO    ] time= 12/06/2026 07:37:34
[2026-06-12 07:37:34,441.441 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 07:37:34,465.465 INFO    ] Checking for existing commands in stream...
[2026-06-12 07:37:34,541.541 INFO    ] No existing commands found in stream
[2026-06-12 07:37:39,552.552 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 07:37:39,555.555 INFO    ] Waiting 3.44 seconds before fallback handling...
[2026-06-12 07:37:43,351.351 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 07:37:43,352.352 INFO    ] Checking for system updates...
[2026-06-12 07:37:43,373.373 INFO    ] 200
[2026-06-12 07:37:43,374.374 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:37:43,404.404 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 07:37:43,406.406 INFO    ] No update needed
[2026-06-12 07:37:43,407.407 INFO    ] Checking for camera pi updates...
[2026-06-12 07:37:43,429.429 INFO    ] 200
[2026-06-12 07:37:43,430.430 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:37:43,456.456 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 07:37:43,494.494 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 07:37:43,495.495 INFO    ] No camera update needed
[2026-06-12 07:37:43,497.497 INFO    ] Script finished. Safe exiting...
[2026-06-12 07:37:43,498.498 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 07:37:43,501.501 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 07:37:43,504.504 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 07:37:45,543.543 INFO    ] ================================================
[2026-06-12 07:37:45,559.559 INFO    ] Launching Daemon at Fri Jun 12 07:37:45 IST 2026
[2026-06-12 07:37:45,571.571 INFO    ] ================================================
[2026-06-12 07:37:45,946.946 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 07:37:45
[2026-06-12 07:37:46,291.291 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 07:37:46,446.446 INFO    ] Initializing speech engine...
[2026-06-12 07:37:46,452.452 INFO    ] 2026-06-12 07:37:46
[2026-06-12 07:37:46,660.660 INFO    ] 2026-06-12 07:37:46
[2026-06-12 07:37:46,689.689 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 07:37:46,873.873 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 07:37:46,883.883 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 07:37:47,014.014 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 07:37:47,078.078 INFO    ] time= 12/06/2026 07:37:47
[2026-06-12 07:37:47,106.106 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 07:37:47,113.113 INFO    ] Checking for existing commands in stream...
[2026-06-12 07:37:47,180.180 INFO    ] No existing commands found in stream
[2026-06-12 07:37:52,189.189 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 07:37:52,193.193 INFO    ] Waiting 2.69 seconds before fallback handling...
[2026-06-12 07:37:55,271.271 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 07:37:55,278.278 INFO    ] Checking for system updates...
[2026-06-12 07:37:55,306.306 INFO    ] 200
[2026-06-12 07:37:55,308.308 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:37:55,341.341 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 07:37:55,343.343 INFO    ] No update needed
[2026-06-12 07:37:55,344.344 INFO    ] Checking for camera pi updates...
[2026-06-12 07:37:55,364.364 INFO    ] 200
[2026-06-12 07:37:55,366.366 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:37:55,390.390 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 07:37:55,425.425 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 07:37:55,426.426 INFO    ] No camera update needed
[2026-06-12 07:37:55,428.428 INFO    ] Script finished. Safe exiting...
[2026-06-12 07:37:55,429.429 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 07:37:55,432.432 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 07:37:55,435.435 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 07:37:57,474.474 INFO    ] ================================================
[2026-06-12 07:37:57,489.489 INFO    ] Launching Daemon at Fri Jun 12 07:37:57 IST 2026
[2026-06-12 07:37:57,500.500 INFO    ] ================================================
[2026-06-12 07:37:57,842.842 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 07:37:57
[2026-06-12 07:37:58,155.155 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 07:37:58,287.287 INFO    ] Initializing speech engine...
[2026-06-12 07:37:58,292.292 INFO    ] 2026-06-12 07:37:58
[2026-06-12 07:37:58,503.503 INFO    ] 2026-06-12 07:37:58
[2026-06-12 07:37:58,532.532 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 07:37:58,692.692 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 07:37:58,756.756 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 07:37:58,909.909 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 07:37:58,972.972 INFO    ] time= 12/06/2026 07:37:58
[2026-06-12 07:37:58,997.997 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 07:37:59,015.015 INFO    ] Checking for existing commands in stream...
[2026-06-12 07:37:59,092.092 INFO    ] No existing commands found in stream
[2026-06-12 07:38:04,102.102 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 07:38:04,105.105 INFO    ] Waiting 3.78 seconds before fallback handling...
[2026-06-12 07:38:08,249.249 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 07:38:08,251.251 INFO    ] Checking for system updates...
[2026-06-12 07:38:08,271.271 INFO    ] 200
[2026-06-12 07:38:08,273.273 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:38:08,303.303 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 07:38:08,304.304 INFO    ] No update needed
[2026-06-12 07:38:08,305.305 INFO    ] Checking for camera pi updates...
[2026-06-12 07:38:08,325.325 INFO    ] 200
[2026-06-12 07:38:08,326.326 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:38:08,352.352 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 07:38:08,384.384 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 07:38:08,386.386 INFO    ] No camera update needed
[2026-06-12 07:38:08,387.387 INFO    ] Script finished. Safe exiting...
[2026-06-12 07:38:08,388.388 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 07:38:08,392.392 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 07:38:08,394.394 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 07:38:10,434.434 INFO    ] ================================================
[2026-06-12 07:38:10,450.450 INFO    ] Launching Daemon at Fri Jun 12 07:38:10 IST 2026
[2026-06-12 07:38:10,461.461 INFO    ] ================================================
[2026-06-12 07:38:10,838.838 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 07:38:10
[2026-06-12 07:38:11,152.152 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 07:38:11,298.298 INFO    ] Initializing speech engine...
[2026-06-12 07:38:11,302.302 INFO    ] 2026-06-12 07:38:11
[2026-06-12 07:38:11,506.506 INFO    ] 2026-06-12 07:38:11
[2026-06-12 07:38:11,534.534 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 07:38:11,720.720 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 07:38:11,724.724 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 07:38:11,860.860 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 07:38:11,919.919 INFO    ] time= 12/06/2026 07:38:11
[2026-06-12 07:38:11,952.952 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 07:38:11,954.954 INFO    ] Checking for existing commands in stream...
[2026-06-12 07:38:12,026.026 INFO    ] No existing commands found in stream
[2026-06-12 07:38:17,040.040 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 07:38:17,043.043 INFO    ] Waiting 2.93 seconds before fallback handling...
[2026-06-12 07:38:20,289.289 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 07:38:20,290.290 INFO    ] Checking for system updates...
[2026-06-12 07:38:20,311.311 INFO    ] 200
[2026-06-12 07:38:20,312.312 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:38:20,345.345 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 07:38:20,346.346 INFO    ] No update needed
[2026-06-12 07:38:20,348.348 INFO    ] Checking for camera pi updates...
[2026-06-12 07:38:20,370.370 INFO    ] 200
[2026-06-12 07:38:20,371.371 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:38:20,401.401 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 07:38:20,442.442 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 07:38:20,444.444 INFO    ] No camera update needed
[2026-06-12 07:38:20,447.447 INFO    ] Script finished. Safe exiting...
[2026-06-12 07:38:20,449.449 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 07:38:20,455.455 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 07:38:20,460.460 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 07:38:22,485.485 INFO    ] ================================================
[2026-06-12 07:38:22,495.495 INFO    ] Launching Daemon at Fri Jun 12 07:38:22 IST 2026
[2026-06-12 07:38:22,504.504 INFO    ] ================================================
[2026-06-12 07:38:22,886.886 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 07:38:22
[2026-06-12 07:38:23,217.217 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 07:38:23,366.366 INFO    ] Initializing speech engine...
[2026-06-12 07:38:23,372.372 INFO    ] 2026-06-12 07:38:23
[2026-06-12 07:38:23,591.591 INFO    ] 2026-06-12 07:38:23
[2026-06-12 07:38:23,622.622 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 07:38:23,756.756 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 07:38:23,764.764 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 07:38:23,897.897 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 07:38:23,899.899 INFO    ] time= 12/06/2026 07:38:23
[2026-06-12 07:38:23,920.920 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 07:38:23,971.971 INFO    ] Checking for existing commands in stream...
[2026-06-12 07:38:24,069.069 INFO    ] No existing commands found in stream
[2026-06-12 07:38:29,079.079 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 07:38:29,082.082 INFO    ] Waiting 0.91 seconds before fallback handling...
[2026-06-12 07:38:30,408.408 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 07:38:30,411.411 INFO    ] Checking for system updates...
[2026-06-12 07:38:30,434.434 INFO    ] 200
[2026-06-12 07:38:30,435.435 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:38:30,466.466 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 07:38:30,468.468 INFO    ] No update needed
[2026-06-12 07:38:30,469.469 INFO    ] Checking for camera pi updates...
[2026-06-12 07:38:30,489.489 INFO    ] 200
[2026-06-12 07:38:30,491.491 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:38:30,514.514 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 07:38:30,655.655 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 07:38:30,657.657 INFO    ] No camera update needed
[2026-06-12 07:38:30,658.658 INFO    ] Script finished. Safe exiting...
[2026-06-12 07:38:30,660.660 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 07:38:30,663.663 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 07:38:30,666.666 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 07:38:32,700.700 INFO    ] ================================================
[2026-06-12 07:38:32,710.710 INFO    ] Launching Daemon at Fri Jun 12 07:38:32 IST 2026
[2026-06-12 07:38:32,716.716 INFO    ] ================================================
[2026-06-12 07:38:33,064.064 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 07:38:33
[2026-06-12 07:38:33,405.405 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 07:38:33,556.556 INFO    ] Initializing speech engine...
[2026-06-12 07:38:33,561.561 INFO    ] 2026-06-12 07:38:33
[2026-06-12 07:38:33,771.771 INFO    ] 2026-06-12 07:38:33
[2026-06-12 07:38:33,801.801 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 07:38:33,987.987 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 07:38:33,997.997 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 07:38:34,129.129 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 07:38:34,194.194 INFO    ] time= 12/06/2026 07:38:34
[2026-06-12 07:38:34,223.223 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 07:38:34,229.229 INFO    ] Checking for existing commands in stream...
[2026-06-12 07:38:34,297.297 INFO    ] No existing commands found in stream
[2026-06-12 07:38:39,306.306 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 07:38:39,310.310 INFO    ] Waiting 3.34 seconds before fallback handling...
[2026-06-12 07:38:43,031.031 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 07:38:43,033.033 INFO    ] Checking for system updates...
[2026-06-12 07:38:43,054.054 INFO    ] 200
[2026-06-12 07:38:43,055.055 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:38:43,085.085 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 07:38:43,087.087 INFO    ] No update needed
[2026-06-12 07:38:43,088.088 INFO    ] Checking for camera pi updates...
[2026-06-12 07:38:43,108.108 INFO    ] 200
[2026-06-12 07:38:43,110.110 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:38:43,133.133 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 07:38:43,169.169 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 07:38:43,170.170 INFO    ] No camera update needed
[2026-06-12 07:38:43,172.172 INFO    ] Script finished. Safe exiting...
[2026-06-12 07:38:43,173.173 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 07:38:43,177.177 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 07:38:43,180.180 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 07:38:45,220.220 INFO    ] ================================================
[2026-06-12 07:38:45,235.235 INFO    ] Launching Daemon at Fri Jun 12 07:38:45 IST 2026
[2026-06-12 07:38:45,246.246 INFO    ] ================================================
[2026-06-12 07:38:45,615.615 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 07:38:45
[2026-06-12 07:38:45,932.932 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 07:38:46,071.071 INFO    ] Initializing speech engine...
[2026-06-12 07:38:46,081.081 INFO    ] 2026-06-12 07:38:46
[2026-06-12 07:38:46,290.290 INFO    ] 2026-06-12 07:38:46
[2026-06-12 07:38:46,318.318 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 07:38:46,502.502 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 07:38:46,512.512 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 07:38:46,645.645 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 07:38:46,704.704 INFO    ] time= 12/06/2026 07:38:46
[2026-06-12 07:38:46,737.737 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 07:38:46,743.743 INFO    ] Checking for existing commands in stream...
[2026-06-12 07:38:46,810.810 INFO    ] No existing commands found in stream
[2026-06-12 07:38:51,823.823 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 07:38:51,824.824 INFO    ] Waiting 0.80 seconds before fallback handling...
[2026-06-12 07:38:53,000.000 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 07:38:53,001.001 INFO    ] Checking for system updates...
[2026-06-12 07:38:53,022.022 INFO    ] 200
[2026-06-12 07:38:53,023.023 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:38:53,056.056 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 07:38:53,057.057 INFO    ] No update needed
[2026-06-12 07:38:53,059.059 INFO    ] Checking for camera pi updates...
[2026-06-12 07:38:53,078.078 INFO    ] 200
[2026-06-12 07:38:53,080.080 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:38:53,103.103 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 07:38:53,142.142 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 07:38:53,144.144 INFO    ] No camera update needed
[2026-06-12 07:38:53,145.145 INFO    ] Script finished. Safe exiting...
[2026-06-12 07:38:53,146.146 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 07:38:53,149.149 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 07:38:53,152.152 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 07:38:55,191.191 INFO    ] ================================================
[2026-06-12 07:38:55,206.206 INFO    ] Launching Daemon at Fri Jun 12 07:38:55 IST 2026
[2026-06-12 07:38:55,216.216 INFO    ] ================================================
[2026-06-12 07:38:55,570.570 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 07:38:55
[2026-06-12 07:38:55,910.910 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 07:38:56,063.063 INFO    ] Initializing speech engine...
[2026-06-12 07:38:56,068.068 INFO    ] 2026-06-12 07:38:56
[2026-06-12 07:38:56,279.279 INFO    ] 2026-06-12 07:38:56
[2026-06-12 07:38:56,308.308 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 07:38:56,496.496 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 07:38:56,506.506 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 07:38:56,688.688 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 07:38:56,726.726 INFO    ] time= 12/06/2026 07:38:56
[2026-06-12 07:38:56,733.733 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 07:38:56,735.735 INFO    ] Checking for existing commands in stream...
[2026-06-12 07:38:56,802.802 INFO    ] No existing commands found in stream
[2026-06-12 07:39:01,816.816 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 07:39:01,818.818 INFO    ] Waiting 3.63 seconds before fallback handling...
[2026-06-12 07:39:05,818.818 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 07:39:05,820.820 INFO    ] Checking for system updates...
[2026-06-12 07:39:05,841.841 INFO    ] 200
[2026-06-12 07:39:05,842.842 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:39:05,873.873 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 07:39:05,874.874 INFO    ] No update needed
[2026-06-12 07:39:05,875.875 INFO    ] Checking for camera pi updates...
[2026-06-12 07:39:05,897.897 INFO    ] 200
[2026-06-12 07:39:05,898.898 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:39:05,921.921 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 07:39:05,957.957 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 07:39:05,959.959 INFO    ] No camera update needed
[2026-06-12 07:39:05,960.960 INFO    ] Script finished. Safe exiting...
[2026-06-12 07:39:05,962.962 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 07:39:05,964.964 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 07:39:05,967.967 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 07:39:08,005.005 INFO    ] ================================================
[2026-06-12 07:39:08,021.021 INFO    ] Launching Daemon at Fri Jun 12 07:39:08 IST 2026
[2026-06-12 07:39:08,032.032 INFO    ] ================================================
[2026-06-12 07:39:08,402.402 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 07:39:08
[2026-06-12 07:39:08,722.722 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 07:39:08,855.855 INFO    ] Initializing speech engine...
[2026-06-12 07:39:08,858.858 INFO    ] 2026-06-12 07:39:08
[2026-06-12 07:39:09,080.080 INFO    ] 2026-06-12 07:39:09
[2026-06-12 07:39:09,109.109 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 07:39:09,294.294 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 07:39:09,304.304 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 07:39:09,429.429 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 07:39:09,485.485 INFO    ] time= 12/06/2026 07:39:09
[2026-06-12 07:39:09,520.520 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 07:39:09,530.530 INFO    ] Checking for existing commands in stream...
[2026-06-12 07:39:09,600.600 INFO    ] No existing commands found in stream
[2026-06-12 07:39:14,611.611 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 07:39:14,614.614 INFO    ] Waiting 2.76 seconds before fallback handling...
[2026-06-12 07:39:17,754.754 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 07:39:17,755.755 INFO    ] Checking for system updates...
[2026-06-12 07:39:17,776.776 INFO    ] 200
[2026-06-12 07:39:17,778.778 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:39:17,810.810 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 07:39:17,812.812 INFO    ] No update needed
[2026-06-12 07:39:17,813.813 INFO    ] Checking for camera pi updates...
[2026-06-12 07:39:17,832.832 INFO    ] 200
[2026-06-12 07:39:17,834.834 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:39:17,861.861 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 07:39:17,897.897 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 07:39:17,898.898 INFO    ] No camera update needed
[2026-06-12 07:39:17,900.900 INFO    ] Script finished. Safe exiting...
[2026-06-12 07:39:17,901.901 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 07:39:17,904.904 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 07:39:17,907.907 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 07:39:19,947.947 INFO    ] ================================================
[2026-06-12 07:39:19,963.963 INFO    ] Launching Daemon at Fri Jun 12 07:39:19 IST 2026
[2026-06-12 07:39:19,974.974 INFO    ] ================================================
[2026-06-12 07:39:20,312.312 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 07:39:20
[2026-06-12 07:39:20,631.631 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 07:39:20,769.769 INFO    ] Initializing speech engine...
[2026-06-12 07:39:20,779.779 INFO    ] 2026-06-12 07:39:20
[2026-06-12 07:39:20,986.986 INFO    ] 2026-06-12 07:39:20
[2026-06-12 07:39:21,015.015 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 07:39:21,201.201 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 07:39:21,211.211 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 07:39:21,355.355 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 07:39:21,408.408 INFO    ] time= 12/06/2026 07:39:21
[2026-06-12 07:39:21,431.431 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 07:39:21,437.437 INFO    ] Checking for existing commands in stream...
[2026-06-12 07:39:21,502.502 INFO    ] No existing commands found in stream
[2026-06-12 07:39:26,512.512 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 07:39:26,515.515 INFO    ] Waiting 2.59 seconds before fallback handling...
[2026-06-12 07:39:30,130.130 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 07:39:30,132.132 INFO    ] Checking for system updates...
[2026-06-12 07:39:30,173.173 INFO    ] 200
[2026-06-12 07:39:30,176.176 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:39:30,221.221 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 07:39:30,223.223 INFO    ] No update needed
[2026-06-12 07:39:30,224.224 INFO    ] Checking for camera pi updates...
[2026-06-12 07:39:30,246.246 INFO    ] 200
[2026-06-12 07:39:30,247.247 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:39:30,272.272 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 07:39:30,324.324 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 07:39:30,325.325 INFO    ] No camera update needed
[2026-06-12 07:39:30,326.326 INFO    ] Script finished. Safe exiting...
[2026-06-12 07:39:30,327.327 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 07:39:30,331.331 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 07:39:30,333.333 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 07:39:32,374.374 INFO    ] ================================================
[2026-06-12 07:39:32,390.390 INFO    ] Launching Daemon at Fri Jun 12 07:39:32 IST 2026
[2026-06-12 07:39:32,401.401 INFO    ] ================================================
[2026-06-12 07:39:32,726.726 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 07:39:32
[2026-06-12 07:39:33,039.039 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 07:39:33,185.185 INFO    ] Initializing speech engine...
[2026-06-12 07:39:33,190.190 INFO    ] 2026-06-12 07:39:33
[2026-06-12 07:39:33,391.391 INFO    ] 2026-06-12 07:39:33
[2026-06-12 07:39:33,421.421 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 07:39:33,604.604 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 07:39:33,613.613 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 07:39:33,742.742 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 07:39:33,809.809 INFO    ] time= 12/06/2026 07:39:33
[2026-06-12 07:39:33,833.833 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 07:39:33,839.839 INFO    ] Checking for existing commands in stream...
[2026-06-12 07:39:33,905.905 INFO    ] No existing commands found in stream
[2026-06-12 07:39:38,919.919 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 07:39:38,922.922 INFO    ] Waiting 2.14 seconds before fallback handling...
[2026-06-12 07:39:41,480.480 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 07:39:41,482.482 INFO    ] Checking for system updates...
[2026-06-12 07:39:41,504.504 INFO    ] 200
[2026-06-12 07:39:41,506.506 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:39:41,536.536 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 07:39:41,538.538 INFO    ] No update needed
[2026-06-12 07:39:41,539.539 INFO    ] Checking for camera pi updates...
[2026-06-12 07:39:41,559.559 INFO    ] 200
[2026-06-12 07:39:41,561.561 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:39:41,585.585 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 07:39:41,623.623 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 07:39:41,624.624 INFO    ] No camera update needed
[2026-06-12 07:39:41,626.626 INFO    ] Script finished. Safe exiting...
[2026-06-12 07:39:41,627.627 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 07:39:41,631.631 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 07:39:41,634.634 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 07:39:43,674.674 INFO    ] ================================================
[2026-06-12 07:39:43,690.690 INFO    ] Launching Daemon at Fri Jun 12 07:39:43 IST 2026
[2026-06-12 07:39:43,701.701 INFO    ] ================================================
[2026-06-12 07:39:44,080.080 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 07:39:44
[2026-06-12 07:39:44,420.420 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 07:39:44,566.566 INFO    ] Initializing speech engine...
[2026-06-12 07:39:44,576.576 INFO    ] 2026-06-12 07:39:44
[2026-06-12 07:39:44,784.784 INFO    ] 2026-06-12 07:39:44
[2026-06-12 07:39:44,813.813 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 07:39:44,996.996 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 07:39:45,006.006 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 07:39:45,146.146 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 07:39:45,203.203 INFO    ] time= 12/06/2026 07:39:45
[2026-06-12 07:39:45,226.226 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 07:39:45,233.233 INFO    ] Checking for existing commands in stream...
[2026-06-12 07:39:45,300.300 INFO    ] No existing commands found in stream
[2026-06-12 07:39:50,308.308 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 07:39:50,310.310 INFO    ] Waiting 2.25 seconds before fallback handling...
[2026-06-12 07:39:52,950.950 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 07:39:52,951.951 INFO    ] Checking for system updates...
[2026-06-12 07:39:52,973.973 INFO    ] 200
[2026-06-12 07:39:52,974.974 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:39:53,004.004 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 07:39:53,006.006 INFO    ] No update needed
[2026-06-12 07:39:53,007.007 INFO    ] Checking for camera pi updates...
[2026-06-12 07:39:53,027.027 INFO    ] 200
[2026-06-12 07:39:53,028.028 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:39:53,052.052 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 07:39:53,088.088 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 07:39:53,090.090 INFO    ] No camera update needed
[2026-06-12 07:39:53,092.092 INFO    ] Script finished. Safe exiting...
[2026-06-12 07:39:53,093.093 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 07:39:53,096.096 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 07:39:53,099.099 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 07:39:55,140.140 INFO    ] ================================================
[2026-06-12 07:39:55,155.155 INFO    ] Launching Daemon at Fri Jun 12 07:39:55 IST 2026
[2026-06-12 07:39:55,167.167 INFO    ] ================================================
[2026-06-12 07:39:55,502.502 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 07:39:55
[2026-06-12 07:39:55,815.815 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 07:39:55,958.958 INFO    ] Initializing speech engine...
[2026-06-12 07:39:55,963.963 INFO    ] 2026-06-12 07:39:55
[2026-06-12 07:39:56,169.169 INFO    ] 2026-06-12 07:39:56
[2026-06-12 07:39:56,197.197 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 07:39:56,321.321 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 07:39:56,384.384 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 07:39:56,517.517 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 07:39:56,568.568 INFO    ] time= 12/06/2026 07:39:56
[2026-06-12 07:39:56,617.617 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 07:39:56,619.619 INFO    ] Checking for existing commands in stream...
[2026-06-12 07:39:56,691.691 INFO    ] No existing commands found in stream
[2026-06-12 07:40:01,700.700 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 07:40:01,703.703 INFO    ] Waiting 0.28 seconds before fallback handling...
[2026-06-12 07:40:02,353.353 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 07:40:02,356.356 INFO    ] Checking for system updates...
[2026-06-12 07:40:02,395.395 INFO    ] 200
[2026-06-12 07:40:02,399.399 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:40:02,472.472 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 07:40:02,475.475 INFO    ] No update needed
[2026-06-12 07:40:02,479.479 INFO    ] Checking for camera pi updates...
[2026-06-12 07:40:02,512.512 INFO    ] 200
[2026-06-12 07:40:02,514.514 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:40:02,550.550 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 07:40:02,574.574 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 07:40:02,575.575 INFO    ] No camera update needed
[2026-06-12 07:40:02,577.577 INFO    ] Script finished. Safe exiting...
[2026-06-12 07:40:02,578.578 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 07:40:02,581.581 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 07:40:02,584.584 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 07:40:04,617.617 INFO    ] ================================================
[2026-06-12 07:40:04,633.633 INFO    ] Launching Daemon at Fri Jun 12 07:40:04 IST 2026
[2026-06-12 07:40:04,645.645 INFO    ] ================================================
[2026-06-12 07:40:05,017.017 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 07:40:05
[2026-06-12 07:40:05,327.327 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 07:40:05,459.459 INFO    ] Initializing speech engine...
[2026-06-12 07:40:05,472.472 INFO    ] 2026-06-12 07:40:05
[2026-06-12 07:40:05,689.689 INFO    ] 2026-06-12 07:40:05
[2026-06-12 07:40:05,724.724 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 07:40:05,866.866 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 07:40:05,928.928 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 07:40:06,085.085 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 07:40:06,133.133 INFO    ] time= 12/06/2026 07:40:06
[2026-06-12 07:40:06,154.154 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 07:40:06,161.161 INFO    ] Checking for existing commands in stream...
[2026-06-12 07:40:06,227.227 INFO    ] No existing commands found in stream
[2026-06-12 07:40:11,241.241 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 07:40:11,244.244 INFO    ] Waiting 1.72 seconds before fallback handling...
[2026-06-12 07:40:13,396.396 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 07:40:13,397.397 INFO    ] Checking for system updates...
[2026-06-12 07:40:13,419.419 INFO    ] 200
[2026-06-12 07:40:13,420.420 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:40:13,451.451 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 07:40:13,452.452 INFO    ] No update needed
[2026-06-12 07:40:13,454.454 INFO    ] Checking for camera pi updates...
[2026-06-12 07:40:13,473.473 INFO    ] 200
[2026-06-12 07:40:13,474.474 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:40:13,497.497 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 07:40:13,532.532 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 07:40:13,534.534 INFO    ] No camera update needed
[2026-06-12 07:40:13,535.535 INFO    ] Script finished. Safe exiting...
[2026-06-12 07:40:13,536.536 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 07:40:13,539.539 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 07:40:13,542.542 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 07:40:15,582.582 INFO    ] ================================================
[2026-06-12 07:40:15,597.597 INFO    ] Launching Daemon at Fri Jun 12 07:40:15 IST 2026
[2026-06-12 07:40:15,608.608 INFO    ] ================================================
[2026-06-12 07:40:15,943.943 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 07:40:15
[2026-06-12 07:40:16,256.256 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 07:40:16,387.387 INFO    ] Initializing speech engine...
[2026-06-12 07:40:16,392.392 INFO    ] 2026-06-12 07:40:16
[2026-06-12 07:40:16,611.611 INFO    ] 2026-06-12 07:40:16
[2026-06-12 07:40:16,639.639 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 07:40:16,826.826 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 07:40:16,834.834 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 07:40:16,981.981 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 07:40:17,034.034 INFO    ] time= 12/06/2026 07:40:16
[2026-06-12 07:40:17,058.058 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 07:40:17,064.064 INFO    ] Checking for existing commands in stream...
[2026-06-12 07:40:17,131.131 INFO    ] No existing commands found in stream
[2026-06-12 07:40:22,140.140 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 07:40:22,143.143 INFO    ] Waiting 0.50 seconds before fallback handling...
[2026-06-12 07:40:23,032.032 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 07:40:23,033.033 INFO    ] Checking for system updates...
[2026-06-12 07:40:23,054.054 INFO    ] 200
[2026-06-12 07:40:23,056.056 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:40:23,091.091 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 07:40:23,092.092 INFO    ] No update needed
[2026-06-12 07:40:23,094.094 INFO    ] Checking for camera pi updates...
[2026-06-12 07:40:23,113.113 INFO    ] 200
[2026-06-12 07:40:23,114.114 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:40:23,137.137 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 07:40:23,174.174 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 07:40:23,175.175 INFO    ] No camera update needed
[2026-06-12 07:40:23,176.176 INFO    ] Script finished. Safe exiting...
[2026-06-12 07:40:23,178.178 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 07:40:23,181.181 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 07:40:23,183.183 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 07:40:25,223.223 INFO    ] ================================================
[2026-06-12 07:40:25,239.239 INFO    ] Launching Daemon at Fri Jun 12 07:40:25 IST 2026
[2026-06-12 07:40:25,249.249 INFO    ] ================================================
[2026-06-12 07:40:25,608.608 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 07:40:25
[2026-06-12 07:40:25,921.921 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 07:40:26,058.058 INFO    ] Initializing speech engine...
[2026-06-12 07:40:26,067.067 INFO    ] 2026-06-12 07:40:26
[2026-06-12 07:40:26,276.276 INFO    ] 2026-06-12 07:40:26
[2026-06-12 07:40:26,305.305 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 07:40:26,492.492 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 07:40:26,495.495 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 07:40:26,634.634 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 07:40:26,701.701 INFO    ] time= 12/06/2026 07:40:26
[2026-06-12 07:40:26,725.725 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 07:40:26,732.732 INFO    ] Checking for existing commands in stream...
[2026-06-12 07:40:26,799.799 INFO    ] No existing commands found in stream
[2026-06-12 07:40:31,807.807 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 07:40:31,809.809 INFO    ] Waiting 2.70 seconds before fallback handling...
[2026-06-12 07:40:34,876.876 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 07:40:34,877.877 INFO    ] Checking for system updates...
[2026-06-12 07:40:34,899.899 INFO    ] 200
[2026-06-12 07:40:34,901.901 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:40:34,931.931 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 07:40:34,933.933 INFO    ] No update needed
[2026-06-12 07:40:34,934.934 INFO    ] Checking for camera pi updates...
[2026-06-12 07:40:34,953.953 INFO    ] 200
[2026-06-12 07:40:34,955.955 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:40:34,978.978 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 07:40:35,118.118 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 07:40:35,120.120 INFO    ] No camera update needed
[2026-06-12 07:40:35,121.121 INFO    ] Script finished. Safe exiting...
[2026-06-12 07:40:35,122.122 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 07:40:35,125.125 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 07:40:35,128.128 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 07:40:37,168.168 INFO    ] ================================================
[2026-06-12 07:40:37,184.184 INFO    ] Launching Daemon at Fri Jun 12 07:40:37 IST 2026
[2026-06-12 07:40:37,194.194 INFO    ] ================================================
[2026-06-12 07:40:37,553.553 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 07:40:37
[2026-06-12 07:40:37,864.864 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 07:40:37,995.995 INFO    ] Initializing speech engine...
[2026-06-12 07:40:37,998.998 INFO    ] 2026-06-12 07:40:37
[2026-06-12 07:40:38,217.217 INFO    ] 2026-06-12 07:40:38
[2026-06-12 07:40:38,245.245 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 07:40:38,432.432 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 07:40:38,442.442 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 07:40:38,567.567 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 07:40:38,617.617 INFO    ] time= 12/06/2026 07:40:38
[2026-06-12 07:40:38,658.658 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 07:40:38,669.669 INFO    ] Checking for existing commands in stream...
[2026-06-12 07:40:38,741.741 INFO    ] No existing commands found in stream
[2026-06-12 07:40:43,751.751 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 07:40:43,753.753 INFO    ] Waiting 3.60 seconds before fallback handling...
[2026-06-12 07:40:47,747.747 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 07:40:47,748.748 INFO    ] Checking for system updates...
[2026-06-12 07:40:47,770.770 INFO    ] 200
[2026-06-12 07:40:47,772.772 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:40:47,805.805 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 07:40:47,806.806 INFO    ] No update needed
[2026-06-12 07:40:47,807.807 INFO    ] Checking for camera pi updates...
[2026-06-12 07:40:47,827.827 INFO    ] 200
[2026-06-12 07:40:47,828.828 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:40:47,851.851 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 07:40:47,886.886 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 07:40:47,887.887 INFO    ] No camera update needed
[2026-06-12 07:40:47,889.889 INFO    ] Script finished. Safe exiting...
[2026-06-12 07:40:47,890.890 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 07:40:47,893.893 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 07:40:47,896.896 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 07:40:49,934.934 INFO    ] ================================================
[2026-06-12 07:40:49,949.949 INFO    ] Launching Daemon at Fri Jun 12 07:40:49 IST 2026
[2026-06-12 07:40:49,960.960 INFO    ] ================================================
[2026-06-12 07:40:50,303.303 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 07:40:50
[2026-06-12 07:40:50,617.617 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 07:40:50,760.760 INFO    ] Initializing speech engine...
[2026-06-12 07:40:50,766.766 INFO    ] 2026-06-12 07:40:50
[2026-06-12 07:40:50,952.952 INFO    ] 2026-06-12 07:40:50
[2026-06-12 07:40:50,981.981 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 07:40:51,126.126 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 07:40:51,184.184 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 07:40:51,334.334 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 07:40:51,395.395 INFO    ] time= 12/06/2026 07:40:51
[2026-06-12 07:40:51,418.418 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 07:40:51,425.425 INFO    ] Checking for existing commands in stream...
[2026-06-12 07:40:51,490.490 INFO    ] No existing commands found in stream
[2026-06-12 07:40:56,500.500 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 07:40:56,503.503 INFO    ] Waiting 1.69 seconds before fallback handling...
[2026-06-12 07:40:58,577.577 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 07:40:58,578.578 INFO    ] Checking for system updates...
[2026-06-12 07:40:58,599.599 INFO    ] 200
[2026-06-12 07:40:58,601.601 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:40:58,630.630 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 07:40:58,632.632 INFO    ] No update needed
[2026-06-12 07:40:58,633.633 INFO    ] Checking for camera pi updates...
[2026-06-12 07:40:58,654.654 INFO    ] 200
[2026-06-12 07:40:58,655.655 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:40:58,678.678 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 07:40:58,720.720 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 07:40:58,721.721 INFO    ] No camera update needed
[2026-06-12 07:40:58,722.722 INFO    ] Script finished. Safe exiting...
[2026-06-12 07:40:58,723.723 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 07:40:58,726.726 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 07:40:58,729.729 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 07:41:00,769.769 INFO    ] ================================================
[2026-06-12 07:41:00,785.785 INFO    ] Launching Daemon at Fri Jun 12 07:41:00 IST 2026
[2026-06-12 07:41:00,796.796 INFO    ] ================================================
[2026-06-12 07:41:01,134.134 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 07:41:01
[2026-06-12 07:41:01,451.451 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 07:41:01,581.581 INFO    ] Initializing speech engine...
[2026-06-12 07:41:01,586.586 INFO    ] 2026-06-12 07:41:01
[2026-06-12 07:41:01,803.803 INFO    ] 2026-06-12 07:41:01
[2026-06-12 07:41:01,832.832 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 07:41:01,992.992 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 07:41:02,003.003 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 07:41:02,120.120 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 07:41:02,142.142 INFO    ] time= 12/06/2026 07:41:02
[2026-06-12 07:41:02,144.144 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 07:41:02,148.148 INFO    ] Checking for existing commands in stream...
[2026-06-12 07:41:02,249.249 INFO    ] No existing commands found in stream
[2026-06-12 07:41:07,278.278 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 07:41:07,282.282 INFO    ] Waiting 0.55 seconds before fallback handling...
[2026-06-12 07:41:08,225.225 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 07:41:08,227.227 INFO    ] Checking for system updates...
[2026-06-12 07:41:08,248.248 INFO    ] 200
[2026-06-12 07:41:08,249.249 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:41:08,282.282 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 07:41:08,283.283 INFO    ] No update needed
[2026-06-12 07:41:08,285.285 INFO    ] Checking for camera pi updates...
[2026-06-12 07:41:08,307.307 INFO    ] 200
[2026-06-12 07:41:08,308.308 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:41:08,334.334 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 07:41:08,366.366 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 07:41:08,367.367 INFO    ] No camera update needed
[2026-06-12 07:41:08,369.369 INFO    ] Script finished. Safe exiting...
[2026-06-12 07:41:08,370.370 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 07:41:08,373.373 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 07:41:08,376.376 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 07:41:10,414.414 INFO    ] ================================================
[2026-06-12 07:41:10,429.429 INFO    ] Launching Daemon at Fri Jun 12 07:41:10 IST 2026
[2026-06-12 07:41:10,440.440 INFO    ] ================================================
[2026-06-12 07:41:10,763.763 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 07:41:10
[2026-06-12 07:41:11,076.076 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 07:41:11,206.206 INFO    ] Initializing speech engine...
[2026-06-12 07:41:11,211.211 INFO    ] 2026-06-12 07:41:11
[2026-06-12 07:41:11,431.431 INFO    ] 2026-06-12 07:41:11
[2026-06-12 07:41:11,459.459 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 07:41:11,646.646 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 07:41:11,650.650 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 07:41:11,785.785 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 07:41:11,820.820 INFO    ] time= 12/06/2026 07:41:11
[2026-06-12 07:41:11,865.865 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 07:41:11,887.887 INFO    ] Checking for existing commands in stream...
[2026-06-12 07:41:11,958.958 INFO    ] No existing commands found in stream
[2026-06-12 07:41:16,969.969 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 07:41:16,972.972 INFO    ] Waiting 1.75 seconds before fallback handling...
[2026-06-12 07:41:19,065.065 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 07:41:19,067.067 INFO    ] Checking for system updates...
[2026-06-12 07:41:19,088.088 INFO    ] 200
[2026-06-12 07:41:19,090.090 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:41:19,120.120 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 07:41:19,122.122 INFO    ] No update needed
[2026-06-12 07:41:19,123.123 INFO    ] Checking for camera pi updates...
[2026-06-12 07:41:19,143.143 INFO    ] 200
[2026-06-12 07:41:19,144.144 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:41:19,169.169 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 07:41:19,203.203 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 07:41:19,204.204 INFO    ] No camera update needed
[2026-06-12 07:41:19,205.205 INFO    ] Script finished. Safe exiting...
[2026-06-12 07:41:19,206.206 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 07:41:19,209.209 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 07:41:19,212.212 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 07:41:21,251.251 INFO    ] ================================================
[2026-06-12 07:41:21,266.266 INFO    ] Launching Daemon at Fri Jun 12 07:41:21 IST 2026
[2026-06-12 07:41:21,277.277 INFO    ] ================================================
[2026-06-12 07:41:21,631.631 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 07:41:21
[2026-06-12 07:41:21,953.953 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 07:41:22,097.097 INFO    ] Initializing speech engine...
[2026-06-12 07:41:22,103.103 INFO    ] 2026-06-12 07:41:22
[2026-06-12 07:41:22,306.306 INFO    ] 2026-06-12 07:41:22
[2026-06-12 07:41:22,335.335 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 07:41:22,457.457 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 07:41:22,519.519 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 07:41:22,663.663 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 07:41:22,725.725 INFO    ] time= 12/06/2026 07:41:22
[2026-06-12 07:41:22,748.748 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 07:41:22,755.755 INFO    ] Checking for existing commands in stream...
[2026-06-12 07:41:22,822.822 INFO    ] No existing commands found in stream
[2026-06-12 07:41:27,831.831 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 07:41:27,834.834 INFO    ] Waiting 0.62 seconds before fallback handling...
[2026-06-12 07:41:28,857.857 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 07:41:28,858.858 INFO    ] Checking for system updates...
[2026-06-12 07:41:28,879.879 INFO    ] 200
[2026-06-12 07:41:28,881.881 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:41:28,911.911 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 07:41:28,912.912 INFO    ] No update needed
[2026-06-12 07:41:28,914.914 INFO    ] Checking for camera pi updates...
[2026-06-12 07:41:28,933.933 INFO    ] 200
[2026-06-12 07:41:28,935.935 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:41:28,962.962 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 07:41:29,005.005 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 07:41:29,006.006 INFO    ] No camera update needed
[2026-06-12 07:41:29,007.007 INFO    ] Script finished. Safe exiting...
[2026-06-12 07:41:29,008.008 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 07:41:29,011.011 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 07:41:29,014.014 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 07:41:31,053.053 INFO    ] ================================================
[2026-06-12 07:41:31,068.068 INFO    ] Launching Daemon at Fri Jun 12 07:41:31 IST 2026
[2026-06-12 07:41:31,095.095 INFO    ] ================================================
[2026-06-12 07:41:31,455.455 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 07:41:31
[2026-06-12 07:41:31,772.772 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 07:41:31,923.923 INFO    ] Initializing speech engine...
[2026-06-12 07:41:31,941.941 INFO    ] 2026-06-12 07:41:31
[2026-06-12 07:41:32,171.171 INFO    ] 2026-06-12 07:41:32
[2026-06-12 07:41:32,202.202 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 07:41:32,339.339 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 07:41:32,388.388 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 07:41:32,585.585 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 07:41:32,631.631 INFO    ] time= 12/06/2026 07:41:32
[2026-06-12 07:41:32,653.653 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 07:41:32,660.660 INFO    ] Checking for existing commands in stream...
[2026-06-12 07:41:32,728.728 INFO    ] No existing commands found in stream
[2026-06-12 07:41:37,740.740 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 07:41:37,743.743 INFO    ] Waiting 0.42 seconds before fallback handling...
[2026-06-12 07:41:38,545.545 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 07:41:38,546.546 INFO    ] Checking for system updates...
[2026-06-12 07:41:38,567.567 INFO    ] 200
[2026-06-12 07:41:38,569.569 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:41:38,602.602 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 07:41:38,603.603 INFO    ] No update needed
[2026-06-12 07:41:38,604.604 INFO    ] Checking for camera pi updates...
[2026-06-12 07:41:38,624.624 INFO    ] 200
[2026-06-12 07:41:38,626.626 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:41:38,653.653 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 07:41:38,690.690 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 07:41:38,692.692 INFO    ] No camera update needed
[2026-06-12 07:41:38,693.693 INFO    ] Script finished. Safe exiting...
[2026-06-12 07:41:38,694.694 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 07:41:38,697.697 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 07:41:38,700.700 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 07:41:40,739.739 INFO    ] ================================================
[2026-06-12 07:41:40,754.754 INFO    ] Launching Daemon at Fri Jun 12 07:41:40 IST 2026
[2026-06-12 07:41:40,765.765 INFO    ] ================================================
[2026-06-12 07:41:41,120.120 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 07:41:41
[2026-06-12 07:41:41,437.437 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 07:41:41,580.580 INFO    ] Initializing speech engine...
[2026-06-12 07:41:41,585.585 INFO    ] 2026-06-12 07:41:41
[2026-06-12 07:41:41,790.790 INFO    ] 2026-06-12 07:41:41
[2026-06-12 07:41:41,818.818 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 07:41:41,950.950 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 07:41:42,003.003 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 07:41:42,137.137 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 07:41:42,206.206 INFO    ] time= 12/06/2026 07:41:42
[2026-06-12 07:41:42,230.230 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 07:41:42,237.237 INFO    ] Checking for existing commands in stream...
[2026-06-12 07:41:42,303.303 INFO    ] No existing commands found in stream
[2026-06-12 07:41:47,317.317 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 07:41:47,320.320 INFO    ] Waiting 0.43 seconds before fallback handling...
[2026-06-12 07:41:48,144.144 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 07:41:48,145.145 INFO    ] Checking for system updates...
[2026-06-12 07:41:48,167.167 INFO    ] 200
[2026-06-12 07:41:48,168.168 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:41:48,200.200 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 07:41:48,202.202 INFO    ] No update needed
[2026-06-12 07:41:48,203.203 INFO    ] Checking for camera pi updates...
[2026-06-12 07:41:48,223.223 INFO    ] 200
[2026-06-12 07:41:48,225.225 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:41:48,251.251 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 07:41:48,285.285 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 07:41:48,286.286 INFO    ] No camera update needed
[2026-06-12 07:41:48,288.288 INFO    ] Script finished. Safe exiting...
[2026-06-12 07:41:48,289.289 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 07:41:48,293.293 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 07:41:48,295.295 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 07:41:50,335.335 INFO    ] ================================================
[2026-06-12 07:41:50,350.350 INFO    ] Launching Daemon at Fri Jun 12 07:41:50 IST 2026
[2026-06-12 07:41:50,361.361 INFO    ] ================================================
[2026-06-12 07:41:50,726.726 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 07:41:50
[2026-06-12 07:41:51,036.036 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 07:41:51,168.168 INFO    ] Initializing speech engine...
[2026-06-12 07:41:51,181.181 INFO    ] 2026-06-12 07:41:51
[2026-06-12 07:41:51,386.386 INFO    ] 2026-06-12 07:41:51
[2026-06-12 07:41:51,414.414 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 07:41:51,596.596 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 07:41:51,600.600 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 07:41:51,728.728 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 07:41:51,779.779 INFO    ] time= 12/06/2026 07:41:51
[2026-06-12 07:41:51,824.824 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 07:41:51,829.829 INFO    ] Checking for existing commands in stream...
[2026-06-12 07:41:51,900.900 INFO    ] No existing commands found in stream
[2026-06-12 07:41:56,909.909 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 07:41:56,912.912 INFO    ] Waiting 1.02 seconds before fallback handling...
[2026-06-12 07:41:58,304.304 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 07:41:58,305.305 INFO    ] Checking for system updates...
[2026-06-12 07:41:58,326.326 INFO    ] 200
[2026-06-12 07:41:58,328.328 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:41:58,358.358 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 07:41:58,360.360 INFO    ] No update needed
[2026-06-12 07:41:58,361.361 INFO    ] Checking for camera pi updates...
[2026-06-12 07:41:58,381.381 INFO    ] 200
[2026-06-12 07:41:58,382.382 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:41:58,406.406 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 07:41:58,445.445 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 07:41:58,446.446 INFO    ] No camera update needed
[2026-06-12 07:41:58,448.448 INFO    ] Script finished. Safe exiting...
[2026-06-12 07:41:58,449.449 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 07:41:58,452.452 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 07:41:58,455.455 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 07:42:00,497.497 INFO    ] ================================================
[2026-06-12 07:42:00,512.512 INFO    ] Launching Daemon at Fri Jun 12 07:42:00 IST 2026
[2026-06-12 07:42:00,523.523 INFO    ] ================================================
[2026-06-12 07:42:00,888.888 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 07:42:00
[2026-06-12 07:42:01,263.263 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 07:42:01,482.482 INFO    ] Initializing speech engine...
[2026-06-12 07:42:01,491.491 INFO    ] 2026-06-12 07:42:01
[2026-06-12 07:42:01,726.726 INFO    ] 2026-06-12 07:42:01
[2026-06-12 07:42:01,762.762 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 07:42:01,918.918 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 07:42:01,963.963 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 07:42:02,120.120 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 07:42:02,162.162 INFO    ] time= 12/06/2026 07:42:02
[2026-06-12 07:42:02,223.223 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 07:42:02,247.247 INFO    ] Checking for existing commands in stream...
[2026-06-12 07:42:02,321.321 INFO    ] No existing commands found in stream
[2026-06-12 07:42:07,331.331 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 07:42:07,333.333 INFO    ] Waiting 2.98 seconds before fallback handling...
[2026-06-12 07:42:10,674.674 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 07:42:10,676.676 INFO    ] Checking for system updates...
[2026-06-12 07:42:10,697.697 INFO    ] 200
[2026-06-12 07:42:10,698.698 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:42:10,728.728 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 07:42:10,730.730 INFO    ] No update needed
[2026-06-12 07:42:10,731.731 INFO    ] Checking for camera pi updates...
[2026-06-12 07:42:10,753.753 INFO    ] 200
[2026-06-12 07:42:10,754.754 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:42:10,779.779 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 07:42:10,818.818 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 07:42:10,820.820 INFO    ] No camera update needed
[2026-06-12 07:42:10,821.821 INFO    ] Script finished. Safe exiting...
[2026-06-12 07:42:10,823.823 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 07:42:10,826.826 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 07:42:10,828.828 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 07:42:12,866.866 INFO    ] ================================================
[2026-06-12 07:42:12,882.882 INFO    ] Launching Daemon at Fri Jun 12 07:42:12 IST 2026
[2026-06-12 07:42:12,893.893 INFO    ] ================================================
[2026-06-12 07:42:13,285.285 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 07:42:13
[2026-06-12 07:42:13,620.620 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 07:42:13,773.773 INFO    ] Initializing speech engine...
[2026-06-12 07:42:13,778.778 INFO    ] 2026-06-12 07:42:13
[2026-06-12 07:42:13,987.987 INFO    ] 2026-06-12 07:42:13
[2026-06-12 07:42:14,016.016 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 07:42:14,202.202 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 07:42:14,206.206 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 07:42:14,345.345 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 07:42:14,413.413 INFO    ] time= 12/06/2026 07:42:14
[2026-06-12 07:42:14,438.438 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 07:42:14,444.444 INFO    ] Checking for existing commands in stream...
[2026-06-12 07:42:14,513.513 INFO    ] No existing commands found in stream
[2026-06-12 07:42:19,527.527 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 07:42:19,530.530 INFO    ] Waiting 1.33 seconds before fallback handling...
[2026-06-12 07:42:21,236.236 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 07:42:21,237.237 INFO    ] Checking for system updates...
[2026-06-12 07:42:21,258.258 INFO    ] 200
[2026-06-12 07:42:21,260.260 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:42:21,293.293 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 07:42:21,301.301 INFO    ] No update needed
[2026-06-12 07:42:21,303.303 INFO    ] Checking for camera pi updates...
[2026-06-12 07:42:21,330.330 INFO    ] 200
[2026-06-12 07:42:21,332.332 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:42:21,357.357 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 07:42:21,401.401 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 07:42:21,403.403 INFO    ] No camera update needed
[2026-06-12 07:42:21,404.404 INFO    ] Script finished. Safe exiting...
[2026-06-12 07:42:21,406.406 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 07:42:21,409.409 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 07:42:21,412.412 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 07:42:23,452.452 INFO    ] ================================================
[2026-06-12 07:42:23,467.467 INFO    ] Launching Daemon at Fri Jun 12 07:42:23 IST 2026
[2026-06-12 07:42:23,478.478 INFO    ] ================================================
[2026-06-12 07:42:23,833.833 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 07:42:23
[2026-06-12 07:42:24,152.152 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 07:42:24,284.284 INFO    ] Initializing speech engine...
[2026-06-12 07:42:24,287.287 INFO    ] 2026-06-12 07:42:24
[2026-06-12 07:42:24,503.503 INFO    ] 2026-06-12 07:42:24
[2026-06-12 07:42:24,532.532 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 07:42:24,716.716 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 07:42:24,725.725 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 07:42:24,852.852 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 07:42:24,918.918 INFO    ] time= 12/06/2026 07:42:24
[2026-06-12 07:42:24,945.945 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 07:42:24,951.951 INFO    ] Checking for existing commands in stream...
[2026-06-12 07:42:25,042.042 INFO    ] No existing commands found in stream
[2026-06-12 07:42:30,051.051 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 07:42:30,054.054 INFO    ] Waiting 1.97 seconds before fallback handling...
[2026-06-12 07:42:32,324.324 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 07:42:32,326.326 INFO    ] Checking for system updates...
[2026-06-12 07:42:32,346.346 INFO    ] 200
[2026-06-12 07:42:32,347.347 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:42:32,377.377 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 07:42:32,379.379 INFO    ] No update needed
[2026-06-12 07:42:32,380.380 INFO    ] Checking for camera pi updates...
[2026-06-12 07:42:32,399.399 INFO    ] 200
[2026-06-12 07:42:32,401.401 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:42:32,426.426 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 07:42:32,447.447 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 07:42:32,448.448 INFO    ] No camera update needed
[2026-06-12 07:42:32,450.450 INFO    ] Script finished. Safe exiting...
[2026-06-12 07:42:32,451.451 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 07:42:32,454.454 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 07:42:32,457.457 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 07:42:34,496.496 INFO    ] ================================================
[2026-06-12 07:42:34,512.512 INFO    ] Launching Daemon at Fri Jun 12 07:42:34 IST 2026
[2026-06-12 07:42:34,523.523 INFO    ] ================================================
[2026-06-12 07:42:34,874.874 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 07:42:34
[2026-06-12 07:42:35,192.192 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 07:42:35,337.337 INFO    ] Initializing speech engine...
[2026-06-12 07:42:35,342.342 INFO    ] 2026-06-12 07:42:35
[2026-06-12 07:42:35,546.546 INFO    ] 2026-06-12 07:42:35
[2026-06-12 07:42:35,575.575 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 07:42:35,758.758 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 07:42:35,762.762 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 07:42:35,898.898 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 07:42:35,963.963 INFO    ] time= 12/06/2026 07:42:35
[2026-06-12 07:42:35,990.990 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 07:42:35,991.991 INFO    ] Checking for existing commands in stream...
[2026-06-12 07:42:36,063.063 INFO    ] No existing commands found in stream
[2026-06-12 07:42:41,072.072 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 07:42:41,075.075 INFO    ] Waiting 0.71 seconds before fallback handling...
[2026-06-12 07:42:42,152.152 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 07:42:42,154.154 INFO    ] Checking for system updates...
[2026-06-12 07:42:42,174.174 INFO    ] 200
[2026-06-12 07:42:42,176.176 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:42:42,207.207 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 07:42:42,208.208 INFO    ] No update needed
[2026-06-12 07:42:42,210.210 INFO    ] Checking for camera pi updates...
[2026-06-12 07:42:42,230.230 INFO    ] 200
[2026-06-12 07:42:42,232.232 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:42:42,256.256 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 07:42:42,408.408 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 07:42:42,410.410 INFO    ] No camera update needed
[2026-06-12 07:42:42,411.411 INFO    ] Script finished. Safe exiting...
[2026-06-12 07:42:42,412.412 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 07:42:42,415.415 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 07:42:42,418.418 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 07:42:44,460.460 INFO    ] ================================================
[2026-06-12 07:42:44,475.475 INFO    ] Launching Daemon at Fri Jun 12 07:42:44 IST 2026
[2026-06-12 07:42:44,486.486 INFO    ] ================================================
[2026-06-12 07:42:44,837.837 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 07:42:44
[2026-06-12 07:42:45,168.168 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 07:42:45,319.319 INFO    ] Initializing speech engine...
[2026-06-12 07:42:45,323.323 INFO    ] 2026-06-12 07:42:45
[2026-06-12 07:42:45,528.528 INFO    ] 2026-06-12 07:42:45
[2026-06-12 07:42:45,558.558 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 07:42:45,742.742 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 07:42:45,751.751 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 07:42:45,890.890 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 07:42:45,947.947 INFO    ] time= 12/06/2026 07:42:45
[2026-06-12 07:42:45,971.971 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 07:42:45,977.977 INFO    ] Checking for existing commands in stream...
[2026-06-12 07:42:46,044.044 INFO    ] No existing commands found in stream
[2026-06-12 07:42:51,058.058 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 07:42:51,062.062 INFO    ] Waiting 0.47 seconds before fallback handling...
[2026-06-12 07:42:51,934.934 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 07:42:51,935.935 INFO    ] Checking for system updates...
[2026-06-12 07:42:51,957.957 INFO    ] 200
[2026-06-12 07:42:51,959.959 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:42:51,989.989 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 07:42:51,991.991 INFO    ] No update needed
[2026-06-12 07:42:51,992.992 INFO    ] Checking for camera pi updates...
[2026-06-12 07:42:52,014.014 INFO    ] 200
[2026-06-12 07:42:52,015.015 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:42:52,041.041 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 07:42:52,082.082 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 07:42:52,083.083 INFO    ] No camera update needed
[2026-06-12 07:42:52,084.084 INFO    ] Script finished. Safe exiting...
[2026-06-12 07:42:52,086.086 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 07:42:52,089.089 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 07:42:52,092.092 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 07:42:54,130.130 INFO    ] ================================================
[2026-06-12 07:42:54,145.145 INFO    ] Launching Daemon at Fri Jun 12 07:42:54 IST 2026
[2026-06-12 07:42:54,155.155 INFO    ] ================================================
[2026-06-12 07:42:54,513.513 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 07:42:54
[2026-06-12 07:42:54,828.828 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 07:42:54,965.965 INFO    ] Initializing speech engine...
[2026-06-12 07:42:54,975.975 INFO    ] 2026-06-12 07:42:54
[2026-06-12 07:42:55,179.179 INFO    ] 2026-06-12 07:42:55
[2026-06-12 07:42:55,206.206 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 07:42:55,390.390 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 07:42:55,399.399 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 07:42:55,555.555 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 07:42:55,599.599 INFO    ] time= 12/06/2026 07:42:55
[2026-06-12 07:42:55,620.620 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 07:42:55,627.627 INFO    ] Checking for existing commands in stream...
[2026-06-12 07:42:55,693.693 INFO    ] No existing commands found in stream
[2026-06-12 07:43:00,707.707 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 07:43:00,710.710 INFO    ] Waiting 2.60 seconds before fallback handling...
[2026-06-12 07:43:03,656.656 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 07:43:03,657.657 INFO    ] Checking for system updates...
[2026-06-12 07:43:03,678.678 INFO    ] 200
[2026-06-12 07:43:03,679.679 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:43:03,710.710 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 07:43:03,711.711 INFO    ] No update needed
[2026-06-12 07:43:03,713.713 INFO    ] Checking for camera pi updates...
[2026-06-12 07:43:03,733.733 INFO    ] 200
[2026-06-12 07:43:03,734.734 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:43:03,758.758 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 07:43:03,794.794 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 07:43:03,796.796 INFO    ] No camera update needed
[2026-06-12 07:43:03,797.797 INFO    ] Script finished. Safe exiting...
[2026-06-12 07:43:03,798.798 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 07:43:03,801.801 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 07:43:03,804.804 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 07:43:05,842.842 INFO    ] ================================================
[2026-06-12 07:43:05,857.857 INFO    ] Launching Daemon at Fri Jun 12 07:43:05 IST 2026
[2026-06-12 07:43:05,868.868 INFO    ] ================================================
[2026-06-12 07:43:06,199.199 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 07:43:06
[2026-06-12 07:43:06,516.516 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 07:43:06,654.654 INFO    ] Initializing speech engine...
[2026-06-12 07:43:06,665.665 INFO    ] 2026-06-12 07:43:06
[2026-06-12 07:43:06,868.868 INFO    ] 2026-06-12 07:43:06
[2026-06-12 07:43:06,896.896 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 07:43:07,034.034 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 07:43:07,083.083 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 07:43:07,213.213 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 07:43:07,263.263 INFO    ] time= 12/06/2026 07:43:07
[2026-06-12 07:43:07,303.303 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 07:43:07,314.314 INFO    ] Checking for existing commands in stream...
[2026-06-12 07:43:07,385.385 INFO    ] No existing commands found in stream
[2026-06-12 07:43:12,394.394 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 07:43:12,397.397 INFO    ] Waiting 0.63 seconds before fallback handling...
[2026-06-12 07:43:13,415.415 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 07:43:13,416.416 INFO    ] Checking for system updates...
[2026-06-12 07:43:13,437.437 INFO    ] 200
[2026-06-12 07:43:13,438.438 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:43:13,470.470 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 07:43:13,472.472 INFO    ] No update needed
[2026-06-12 07:43:13,473.473 INFO    ] Checking for camera pi updates...
[2026-06-12 07:43:13,493.493 INFO    ] 200
[2026-06-12 07:43:13,494.494 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:43:13,519.519 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 07:43:13,562.562 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 07:43:13,564.564 INFO    ] No camera update needed
[2026-06-12 07:43:13,565.565 INFO    ] Script finished. Safe exiting...
[2026-06-12 07:43:13,566.566 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 07:43:13,569.569 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 07:43:13,572.572 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 07:43:15,612.612 INFO    ] ================================================
[2026-06-12 07:43:15,627.627 INFO    ] Launching Daemon at Fri Jun 12 07:43:15 IST 2026
[2026-06-12 07:43:15,638.638 INFO    ] ================================================
[2026-06-12 07:43:15,972.972 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 07:43:15
[2026-06-12 07:43:16,288.288 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 07:43:16,426.426 INFO    ] Initializing speech engine...
[2026-06-12 07:43:16,434.434 INFO    ] 2026-06-12 07:43:16
[2026-06-12 07:43:16,642.642 INFO    ] 2026-06-12 07:43:16
[2026-06-12 07:43:16,672.672 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 07:43:16,869.869 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 07:43:16,873.873 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 07:43:17,014.014 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 07:43:17,067.067 INFO    ] time= 12/06/2026 07:43:17
[2026-06-12 07:43:17,106.106 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 07:43:17,117.117 INFO    ] Checking for existing commands in stream...
[2026-06-12 07:43:17,219.219 INFO    ] No existing commands found in stream
[2026-06-12 07:43:22,228.228 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 07:43:22,231.231 INFO    ] Waiting 1.35 seconds before fallback handling...
[2026-06-12 07:43:23,963.963 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 07:43:23,964.964 INFO    ] Checking for system updates...
[2026-06-12 07:43:23,985.985 INFO    ] 200
[2026-06-12 07:43:23,987.987 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:43:24,020.020 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 07:43:24,022.022 INFO    ] No update needed
[2026-06-12 07:43:24,023.023 INFO    ] Checking for camera pi updates...
[2026-06-12 07:43:24,042.042 INFO    ] 200
[2026-06-12 07:43:24,044.044 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:43:24,071.071 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 07:43:24,106.106 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 07:43:24,107.107 INFO    ] No camera update needed
[2026-06-12 07:43:24,108.108 INFO    ] Script finished. Safe exiting...
[2026-06-12 07:43:24,109.109 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 07:43:24,113.113 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 07:43:24,115.115 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 07:43:26,155.155 INFO    ] ================================================
[2026-06-12 07:43:26,171.171 INFO    ] Launching Daemon at Fri Jun 12 07:43:26 IST 2026
[2026-06-12 07:43:26,182.182 INFO    ] ================================================
[2026-06-12 07:43:26,521.521 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 07:43:26
[2026-06-12 07:43:26,841.841 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 07:43:26,979.979 INFO    ] Initializing speech engine...
[2026-06-12 07:43:26,989.989 INFO    ] 2026-06-12 07:43:26
[2026-06-12 07:43:27,194.194 INFO    ] 2026-06-12 07:43:27
[2026-06-12 07:43:27,222.222 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 07:43:27,404.404 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 07:43:27,408.408 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 07:43:27,536.536 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 07:43:27,592.592 INFO    ] time= 12/06/2026 07:43:27
[2026-06-12 07:43:27,626.626 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 07:43:27,636.636 INFO    ] Checking for existing commands in stream...
[2026-06-12 07:43:27,709.709 INFO    ] No existing commands found in stream
[2026-06-12 07:43:32,718.718 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 07:43:32,721.721 INFO    ] Waiting 1.38 seconds before fallback handling...
[2026-06-12 07:43:34,472.472 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 07:43:34,474.474 INFO    ] Checking for system updates...
[2026-06-12 07:43:34,495.495 INFO    ] 200
[2026-06-12 07:43:34,496.496 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:43:34,526.526 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 07:43:34,528.528 INFO    ] No update needed
[2026-06-12 07:43:34,529.529 INFO    ] Checking for camera pi updates...
[2026-06-12 07:43:34,549.549 INFO    ] 200
[2026-06-12 07:43:34,550.550 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:43:34,575.575 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 07:43:34,614.614 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 07:43:34,616.616 INFO    ] No camera update needed
[2026-06-12 07:43:34,617.617 INFO    ] Script finished. Safe exiting...
[2026-06-12 07:43:34,618.618 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 07:43:34,621.621 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 07:43:34,624.624 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 07:43:36,663.663 INFO    ] ================================================
[2026-06-12 07:43:36,679.679 INFO    ] Launching Daemon at Fri Jun 12 07:43:36 IST 2026
[2026-06-12 07:43:36,691.691 INFO    ] ================================================
[2026-06-12 07:43:37,037.037 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 07:43:37
[2026-06-12 07:43:37,351.351 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 07:43:37,485.485 INFO    ] Initializing speech engine...
[2026-06-12 07:43:37,488.488 INFO    ] 2026-06-12 07:43:37
[2026-06-12 07:43:37,716.716 INFO    ] 2026-06-12 07:43:37
[2026-06-12 07:43:37,745.745 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 07:43:37,940.940 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 07:43:37,944.944 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 07:43:38,087.087 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 07:43:38,148.148 INFO    ] time= 12/06/2026 07:43:38
[2026-06-12 07:43:38,181.181 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 07:43:38,187.187 INFO    ] Checking for existing commands in stream...
[2026-06-12 07:43:38,262.262 INFO    ] No existing commands found in stream
[2026-06-12 07:43:43,273.273 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 07:43:43,275.275 INFO    ] Waiting 3.16 seconds before fallback handling...
[2026-06-12 07:43:46,821.821 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 07:43:46,823.823 INFO    ] Checking for system updates...
[2026-06-12 07:43:46,845.845 INFO    ] 200
[2026-06-12 07:43:46,846.846 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:43:46,881.881 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 07:43:46,882.882 INFO    ] No update needed
[2026-06-12 07:43:46,884.884 INFO    ] Checking for camera pi updates...
[2026-06-12 07:43:46,904.904 INFO    ] 200
[2026-06-12 07:43:46,906.906 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:43:46,933.933 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 07:43:46,973.973 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 07:43:46,974.974 INFO    ] No camera update needed
[2026-06-12 07:43:46,976.976 INFO    ] Script finished. Safe exiting...
[2026-06-12 07:43:46,977.977 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 07:43:46,980.980 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 07:43:46,983.983 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 07:43:49,022.022 INFO    ] ================================================
[2026-06-12 07:43:49,038.038 INFO    ] Launching Daemon at Fri Jun 12 07:43:49 IST 2026
[2026-06-12 07:43:49,050.050 INFO    ] ================================================
[2026-06-12 07:43:49,399.399 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 07:43:49
[2026-06-12 07:43:49,716.716 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 07:43:49,847.847 INFO    ] Initializing speech engine...
[2026-06-12 07:43:49,851.851 INFO    ] 2026-06-12 07:43:49
[2026-06-12 07:43:50,071.071 INFO    ] 2026-06-12 07:43:50
[2026-06-12 07:43:50,099.099 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 07:43:50,227.227 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 07:43:50,285.285 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 07:43:50,423.423 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 07:43:50,491.491 INFO    ] time= 12/06/2026 07:43:50
[2026-06-12 07:43:50,515.515 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 07:43:50,522.522 INFO    ] Checking for existing commands in stream...
[2026-06-12 07:43:50,588.588 INFO    ] No existing commands found in stream
[2026-06-12 07:43:55,597.597 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 07:43:55,600.600 INFO    ] Waiting 0.67 seconds before fallback handling...
[2026-06-12 07:43:56,622.622 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 07:43:56,623.623 INFO    ] Checking for system updates...
[2026-06-12 07:43:56,645.645 INFO    ] 200
[2026-06-12 07:43:56,646.646 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:43:56,680.680 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 07:43:56,682.682 INFO    ] No update needed
[2026-06-12 07:43:56,683.683 INFO    ] Checking for camera pi updates...
[2026-06-12 07:43:56,705.705 INFO    ] 200
[2026-06-12 07:43:56,706.706 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:43:56,729.729 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 07:43:56,774.774 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 07:43:56,775.775 INFO    ] No camera update needed
[2026-06-12 07:43:56,777.777 INFO    ] Script finished. Safe exiting...
[2026-06-12 07:43:56,778.778 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 07:43:56,781.781 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 07:43:56,784.784 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 07:43:58,824.824 INFO    ] ================================================
[2026-06-12 07:43:58,840.840 INFO    ] Launching Daemon at Fri Jun 12 07:43:58 IST 2026
[2026-06-12 07:43:58,851.851 INFO    ] ================================================
[2026-06-12 07:43:59,181.181 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 07:43:59
[2026-06-12 07:43:59,493.493 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 07:43:59,624.624 INFO    ] Initializing speech engine...
[2026-06-12 07:43:59,632.632 INFO    ] 2026-06-12 07:43:59
[2026-06-12 07:43:59,845.845 INFO    ] 2026-06-12 07:43:59
[2026-06-12 07:43:59,874.874 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 07:44:00,059.059 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 07:44:00,068.068 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 07:44:00,216.216 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 07:44:00,269.269 INFO    ] time= 12/06/2026 07:44:00
[2026-06-12 07:44:00,292.292 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 07:44:00,298.298 INFO    ] Checking for existing commands in stream...
[2026-06-12 07:44:00,365.365 INFO    ] No existing commands found in stream
[2026-06-12 07:44:05,374.374 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 07:44:05,377.377 INFO    ] Waiting 1.85 seconds before fallback handling...
[2026-06-12 07:44:07,591.591 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 07:44:07,593.593 INFO    ] Checking for system updates...
[2026-06-12 07:44:07,613.613 INFO    ] 200
[2026-06-12 07:44:07,615.615 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:44:07,647.647 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 07:44:07,648.648 INFO    ] No update needed
[2026-06-12 07:44:07,650.650 INFO    ] Checking for camera pi updates...
[2026-06-12 07:44:07,670.670 INFO    ] 200
[2026-06-12 07:44:07,671.671 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:44:07,694.694 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 07:44:07,734.734 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 07:44:07,735.735 INFO    ] No camera update needed
[2026-06-12 07:44:07,736.736 INFO    ] Script finished. Safe exiting...
[2026-06-12 07:44:07,737.737 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 07:44:07,740.740 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 07:44:07,743.743 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 07:44:09,781.781 INFO    ] ================================================
[2026-06-12 07:44:09,796.796 INFO    ] Launching Daemon at Fri Jun 12 07:44:09 IST 2026
[2026-06-12 07:44:09,807.807 INFO    ] ================================================
[2026-06-12 07:44:10,174.174 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 07:44:10
[2026-06-12 07:44:10,506.506 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 07:44:10,658.658 INFO    ] Initializing speech engine...
[2026-06-12 07:44:10,662.662 INFO    ] 2026-06-12 07:44:10
[2026-06-12 07:44:10,870.870 INFO    ] 2026-06-12 07:44:10
[2026-06-12 07:44:10,899.899 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 07:44:11,060.060 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 07:44:11,090.090 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 07:44:11,244.244 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 07:44:11,299.299 INFO    ] time= 12/06/2026 07:44:11
[2026-06-12 07:44:11,321.321 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 07:44:11,328.328 INFO    ] Checking for existing commands in stream...
[2026-06-12 07:44:11,395.395 INFO    ] No existing commands found in stream
[2026-06-12 07:44:16,405.405 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 07:44:16,408.408 INFO    ] Waiting 0.50 seconds before fallback handling...
[2026-06-12 07:44:17,293.293 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 07:44:17,294.294 INFO    ] Checking for system updates...
[2026-06-12 07:44:17,315.315 INFO    ] 200
[2026-06-12 07:44:17,317.317 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:44:17,351.351 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 07:44:17,352.352 INFO    ] No update needed
[2026-06-12 07:44:17,354.354 INFO    ] Checking for camera pi updates...
[2026-06-12 07:44:17,373.373 INFO    ] 200
[2026-06-12 07:44:17,375.375 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:44:17,399.399 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 07:44:17,439.439 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 07:44:17,440.440 INFO    ] No camera update needed
[2026-06-12 07:44:17,442.442 INFO    ] Script finished. Safe exiting...
[2026-06-12 07:44:17,443.443 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 07:44:17,446.446 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 07:44:17,449.449 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 07:44:19,489.489 INFO    ] ================================================
[2026-06-12 07:44:19,504.504 INFO    ] Launching Daemon at Fri Jun 12 07:44:19 IST 2026
[2026-06-12 07:44:19,514.514 INFO    ] ================================================
[2026-06-12 07:44:19,855.855 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 07:44:19
[2026-06-12 07:44:20,171.171 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 07:44:20,303.303 INFO    ] Initializing speech engine...
[2026-06-12 07:44:20,308.308 INFO    ] 2026-06-12 07:44:20
[2026-06-12 07:44:20,535.535 INFO    ] 2026-06-12 07:44:20
[2026-06-12 07:44:20,566.566 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 07:44:20,706.706 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 07:44:20,763.763 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 07:44:20,920.920 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 07:44:20,981.981 INFO    ] time= 12/06/2026 07:44:20
[2026-06-12 07:44:21,006.006 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 07:44:21,013.013 INFO    ] Checking for existing commands in stream...
[2026-06-12 07:44:21,109.109 INFO    ] No existing commands found in stream
[2026-06-12 07:44:26,118.118 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 07:44:26,120.120 INFO    ] Waiting 3.19 seconds before fallback handling...
[2026-06-12 07:44:29,670.670 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 07:44:29,671.671 INFO    ] Checking for system updates...
[2026-06-12 07:44:29,693.693 INFO    ] 200
[2026-06-12 07:44:29,694.694 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:44:29,724.724 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 07:44:29,726.726 INFO    ] No update needed
[2026-06-12 07:44:29,727.727 INFO    ] Checking for camera pi updates...
[2026-06-12 07:44:29,746.746 INFO    ] 200
[2026-06-12 07:44:29,748.748 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:44:29,773.773 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 07:44:29,819.819 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 07:44:29,820.820 INFO    ] No camera update needed
[2026-06-12 07:44:29,822.822 INFO    ] Script finished. Safe exiting...
[2026-06-12 07:44:29,823.823 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 07:44:29,826.826 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 07:44:29,829.829 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 07:44:31,863.863 INFO    ] ================================================
[2026-06-12 07:44:31,873.873 INFO    ] Launching Daemon at Fri Jun 12 07:44:31 IST 2026
[2026-06-12 07:44:31,879.879 INFO    ] ================================================
[2026-06-12 07:44:32,236.236 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 07:44:32
[2026-06-12 07:44:32,588.588 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 07:44:32,731.731 INFO    ] Initializing speech engine...
[2026-06-12 07:44:32,736.736 INFO    ] 2026-06-12 07:44:32
[2026-06-12 07:44:32,941.941 INFO    ] 2026-06-12 07:44:32
[2026-06-12 07:44:32,977.977 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 07:44:33,158.158 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 07:44:33,166.166 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 07:44:33,293.293 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 07:44:33,356.356 INFO    ] time= 12/06/2026 07:44:33
[2026-06-12 07:44:33,389.389 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 07:44:33,391.391 INFO    ] Checking for existing commands in stream...
[2026-06-12 07:44:33,461.461 INFO    ] No existing commands found in stream
[2026-06-12 07:44:38,471.471 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 07:44:38,474.474 INFO    ] Waiting 1.60 seconds before fallback handling...
[2026-06-12 07:44:40,430.430 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 07:44:40,432.432 INFO    ] Checking for system updates...
[2026-06-12 07:44:40,452.452 INFO    ] 200
[2026-06-12 07:44:40,454.454 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:44:40,484.484 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 07:44:40,485.485 INFO    ] No update needed
[2026-06-12 07:44:40,487.487 INFO    ] Checking for camera pi updates...
[2026-06-12 07:44:40,506.506 INFO    ] 200
[2026-06-12 07:44:40,508.508 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:44:40,532.532 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 07:44:40,573.573 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 07:44:40,574.574 INFO    ] No camera update needed
[2026-06-12 07:44:40,575.575 INFO    ] Script finished. Safe exiting...
[2026-06-12 07:44:40,577.577 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 07:44:40,580.580 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 07:44:40,583.583 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 07:44:42,621.621 INFO    ] ================================================
[2026-06-12 07:44:42,636.636 INFO    ] Launching Daemon at Fri Jun 12 07:44:42 IST 2026
[2026-06-12 07:44:42,646.646 INFO    ] ================================================
[2026-06-12 07:44:42,990.990 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 07:44:42
[2026-06-12 07:44:43,301.301 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 07:44:43,433.433 INFO    ] Initializing speech engine...
[2026-06-12 07:44:43,441.441 INFO    ] 2026-06-12 07:44:43
[2026-06-12 07:44:43,659.659 INFO    ] 2026-06-12 07:44:43
[2026-06-12 07:44:43,688.688 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 07:44:43,878.878 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 07:44:43,887.887 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 07:44:44,029.029 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 07:44:44,087.087 INFO    ] time= 12/06/2026 07:44:44
[2026-06-12 07:44:44,111.111 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 07:44:44,117.117 INFO    ] Checking for existing commands in stream...
[2026-06-12 07:44:44,185.185 INFO    ] No existing commands found in stream
[2026-06-12 07:44:49,205.205 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 07:44:49,208.208 INFO    ] Waiting 3.36 seconds before fallback handling...
[2026-06-12 07:44:53,480.480 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 07:44:53,483.483 INFO    ] Checking for system updates...
[2026-06-12 07:44:53,523.523 INFO    ] 200
[2026-06-12 07:44:53,526.526 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:44:53,559.559 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 07:44:53,560.560 INFO    ] No update needed
[2026-06-12 07:44:53,562.562 INFO    ] Checking for camera pi updates...
[2026-06-12 07:44:53,581.581 INFO    ] 200
[2026-06-12 07:44:53,583.583 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:44:53,606.606 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 07:44:53,744.744 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 07:44:53,746.746 INFO    ] No camera update needed
[2026-06-12 07:44:53,747.747 INFO    ] Script finished. Safe exiting...
[2026-06-12 07:44:53,748.748 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 07:44:53,752.752 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 07:44:53,755.755 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 07:44:55,793.793 INFO    ] ================================================
[2026-06-12 07:44:55,808.808 INFO    ] Launching Daemon at Fri Jun 12 07:44:55 IST 2026
[2026-06-12 07:44:55,819.819 INFO    ] ================================================
[2026-06-12 07:44:56,181.181 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 07:44:56
[2026-06-12 07:44:56,493.493 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 07:44:56,622.622 INFO    ] Initializing speech engine...
[2026-06-12 07:44:56,627.627 INFO    ] 2026-06-12 07:44:56
[2026-06-12 07:44:56,846.846 INFO    ] 2026-06-12 07:44:56
[2026-06-12 07:44:56,874.874 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 07:44:57,061.061 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 07:44:57,064.064 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 07:44:57,201.201 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 07:44:57,260.260 INFO    ] time= 12/06/2026 07:44:57
[2026-06-12 07:44:57,294.294 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 07:44:57,300.300 INFO    ] Checking for existing commands in stream...
[2026-06-12 07:44:57,368.368 INFO    ] No existing commands found in stream
[2026-06-12 07:45:02,387.387 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 07:45:02,389.389 INFO    ] Waiting 0.09 seconds before fallback handling...
[2026-06-12 07:45:02,830.830 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 07:45:02,833.833 INFO    ] Checking for system updates...
[2026-06-12 07:45:02,865.865 INFO    ] 200
[2026-06-12 07:45:02,867.867 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:45:02,914.914 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 07:45:02,915.915 INFO    ] No update needed
[2026-06-12 07:45:02,920.920 INFO    ] Checking for camera pi updates...
[2026-06-12 07:45:02,940.940 INFO    ] 200
[2026-06-12 07:45:02,941.941 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:45:02,973.973 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 07:45:03,000.000 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 07:45:03,001.001 INFO    ] No camera update needed
[2026-06-12 07:45:03,002.002 INFO    ] Script finished. Safe exiting...
[2026-06-12 07:45:03,004.004 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 07:45:03,006.006 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 07:45:03,009.009 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 07:45:05,053.053 INFO    ] ================================================
[2026-06-12 07:45:05,068.068 INFO    ] Launching Daemon at Fri Jun 12 07:45:05 IST 2026
[2026-06-12 07:45:05,079.079 INFO    ] ================================================
[2026-06-12 07:45:05,430.430 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 07:45:05
[2026-06-12 07:45:05,741.741 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 07:45:05,872.872 INFO    ] Initializing speech engine...
[2026-06-12 07:45:05,875.875 INFO    ] 2026-06-12 07:45:05
[2026-06-12 07:45:06,093.093 INFO    ] 2026-06-12 07:45:06
[2026-06-12 07:45:06,122.122 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 07:45:06,276.276 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 07:45:06,323.323 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 07:45:06,460.460 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 07:45:06,527.527 INFO    ] time= 12/06/2026 07:45:06
[2026-06-12 07:45:06,551.551 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 07:45:06,557.557 INFO    ] Checking for existing commands in stream...
[2026-06-12 07:45:06,623.623 INFO    ] No existing commands found in stream
[2026-06-12 07:45:11,634.634 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 07:45:11,637.637 INFO    ] Waiting 1.06 seconds before fallback handling...
[2026-06-12 07:45:13,052.052 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 07:45:13,054.054 INFO    ] Checking for system updates...
[2026-06-12 07:45:13,076.076 INFO    ] 200
[2026-06-12 07:45:13,077.077 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:45:13,107.107 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 07:45:13,109.109 INFO    ] No update needed
[2026-06-12 07:45:13,110.110 INFO    ] Checking for camera pi updates...
[2026-06-12 07:45:13,130.130 INFO    ] 200
[2026-06-12 07:45:13,131.131 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:45:13,155.155 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 07:45:13,195.195 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 07:45:13,196.196 INFO    ] No camera update needed
[2026-06-12 07:45:13,198.198 INFO    ] Script finished. Safe exiting...
[2026-06-12 07:45:13,199.199 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 07:45:13,202.202 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 07:45:13,205.205 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 07:45:15,243.243 INFO    ] ================================================
[2026-06-12 07:45:15,258.258 INFO    ] Launching Daemon at Fri Jun 12 07:45:15 IST 2026
[2026-06-12 07:45:15,269.269 INFO    ] ================================================
[2026-06-12 07:45:15,615.615 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 07:45:15
[2026-06-12 07:45:15,951.951 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 07:45:16,089.089 INFO    ] Initializing speech engine...
[2026-06-12 07:45:16,103.103 INFO    ] 2026-06-12 07:45:16
[2026-06-12 07:45:16,315.315 INFO    ] 2026-06-12 07:45:16
[2026-06-12 07:45:16,345.345 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 07:45:16,532.532 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 07:45:16,542.542 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 07:45:16,674.674 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 07:45:16,742.742 INFO    ] time= 12/06/2026 07:45:16
[2026-06-12 07:45:16,767.767 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 07:45:16,773.773 INFO    ] Checking for existing commands in stream...
[2026-06-12 07:45:16,841.841 INFO    ] No existing commands found in stream
[2026-06-12 07:45:21,855.855 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 07:45:21,859.859 INFO    ] Waiting 2.29 seconds before fallback handling...
[2026-06-12 07:45:24,559.559 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 07:45:24,560.560 INFO    ] Checking for system updates...
[2026-06-12 07:45:24,581.581 INFO    ] 200
[2026-06-12 07:45:24,582.582 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:45:24,615.615 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 07:45:24,616.616 INFO    ] No update needed
[2026-06-12 07:45:24,617.617 INFO    ] Checking for camera pi updates...
[2026-06-12 07:45:24,640.640 INFO    ] 200
[2026-06-12 07:45:24,642.642 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:45:24,665.665 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 07:45:24,707.707 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 07:45:24,708.708 INFO    ] No camera update needed
[2026-06-12 07:45:24,710.710 INFO    ] Script finished. Safe exiting...
[2026-06-12 07:45:24,711.711 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 07:45:24,714.714 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 07:45:24,717.717 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 07:45:26,755.755 INFO    ] ================================================
[2026-06-12 07:45:26,770.770 INFO    ] Launching Daemon at Fri Jun 12 07:45:26 IST 2026
[2026-06-12 07:45:26,781.781 INFO    ] ================================================
[2026-06-12 07:45:27,106.106 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 07:45:27
[2026-06-12 07:45:27,417.417 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 07:45:27,559.559 INFO    ] Initializing speech engine...
[2026-06-12 07:45:27,564.564 INFO    ] 2026-06-12 07:45:27
[2026-06-12 07:45:27,769.769 INFO    ] 2026-06-12 07:45:27
[2026-06-12 07:45:27,798.798 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 07:45:27,984.984 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 07:45:27,988.988 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 07:45:28,124.124 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 07:45:28,184.184 INFO    ] time= 12/06/2026 07:45:28
[2026-06-12 07:45:28,218.218 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 07:45:28,224.224 INFO    ] Checking for existing commands in stream...
[2026-06-12 07:45:28,290.290 INFO    ] No existing commands found in stream
[2026-06-12 07:45:33,301.301 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 07:45:33,304.304 INFO    ] Waiting 3.22 seconds before fallback handling...
[2026-06-12 07:45:36,898.898 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 07:45:36,900.900 INFO    ] Checking for system updates...
[2026-06-12 07:45:36,921.921 INFO    ] 200
[2026-06-12 07:45:36,922.922 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:45:36,957.957 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 07:45:36,958.958 INFO    ] No update needed
[2026-06-12 07:45:36,959.959 INFO    ] Checking for camera pi updates...
[2026-06-12 07:45:36,978.978 INFO    ] 200
[2026-06-12 07:45:36,980.980 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:45:37,006.006 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 07:45:37,047.047 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 07:45:37,048.048 INFO    ] No camera update needed
[2026-06-12 07:45:37,049.049 INFO    ] Script finished. Safe exiting...
[2026-06-12 07:45:37,051.051 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 07:45:37,054.054 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 07:45:37,056.056 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 07:45:39,096.096 INFO    ] ================================================
[2026-06-12 07:45:39,111.111 INFO    ] Launching Daemon at Fri Jun 12 07:45:39 IST 2026
[2026-06-12 07:45:39,122.122 INFO    ] ================================================
[2026-06-12 07:45:39,448.448 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 07:45:39
[2026-06-12 07:45:39,759.759 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 07:45:39,902.902 INFO    ] Initializing speech engine...
[2026-06-12 07:45:39,907.907 INFO    ] 2026-06-12 07:45:39
[2026-06-12 07:45:40,114.114 INFO    ] 2026-06-12 07:45:40
[2026-06-12 07:45:40,142.142 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 07:45:40,329.329 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 07:45:40,338.338 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 07:45:40,467.467 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 07:45:40,529.529 INFO    ] time= 12/06/2026 07:45:40
[2026-06-12 07:45:40,563.563 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 07:45:40,565.565 INFO    ] Checking for existing commands in stream...
[2026-06-12 07:45:40,661.661 INFO    ] No existing commands found in stream
[2026-06-12 07:45:45,670.670 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 07:45:45,673.673 INFO    ] Waiting 2.62 seconds before fallback handling...
[2026-06-12 07:45:49,025.025 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 07:45:49,027.027 INFO    ] Checking for system updates...
[2026-06-12 07:45:49,047.047 INFO    ] 200
[2026-06-12 07:45:49,049.049 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:45:49,082.082 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 07:45:49,083.083 INFO    ] No update needed
[2026-06-12 07:45:49,085.085 INFO    ] Checking for camera pi updates...
[2026-06-12 07:45:49,109.109 INFO    ] 200
[2026-06-12 07:45:49,110.110 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:45:49,149.149 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 07:45:49,200.200 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 07:45:49,203.203 INFO    ] No camera update needed
[2026-06-12 07:45:49,206.206 INFO    ] Script finished. Safe exiting...
[2026-06-12 07:45:49,208.208 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 07:45:49,214.214 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 07:45:49,220.220 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 07:45:51,261.261 INFO    ] ================================================
[2026-06-12 07:45:51,282.282 INFO    ] Launching Daemon at Fri Jun 12 07:45:51 IST 2026
[2026-06-12 07:45:51,292.292 INFO    ] ================================================
[2026-06-12 07:45:51,650.650 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 07:45:51
[2026-06-12 07:45:51,986.986 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 07:45:52,138.138 INFO    ] Initializing speech engine...
[2026-06-12 07:45:52,143.143 INFO    ] 2026-06-12 07:45:52
[2026-06-12 07:45:52,351.351 INFO    ] 2026-06-12 07:45:52
[2026-06-12 07:45:52,380.380 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 07:45:52,563.563 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 07:45:52,572.572 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 07:45:52,707.707 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 07:45:52,769.769 INFO    ] time= 12/06/2026 07:45:52
[2026-06-12 07:45:52,792.792 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 07:45:52,799.799 INFO    ] Checking for existing commands in stream...
[2026-06-12 07:45:52,865.865 INFO    ] No existing commands found in stream
[2026-06-12 07:45:57,875.875 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 07:45:57,878.878 INFO    ] Waiting 2.08 seconds before fallback handling...
[2026-06-12 07:46:00,355.355 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 07:46:00,356.356 INFO    ] Checking for system updates...
[2026-06-12 07:46:00,378.378 INFO    ] 200
[2026-06-12 07:46:00,379.379 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:46:00,410.410 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 07:46:00,412.412 INFO    ] No update needed
[2026-06-12 07:46:00,413.413 INFO    ] Checking for camera pi updates...
[2026-06-12 07:46:00,433.433 INFO    ] 200
[2026-06-12 07:46:00,434.434 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:46:00,459.459 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 07:46:00,501.501 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 07:46:00,502.502 INFO    ] No camera update needed
[2026-06-12 07:46:00,504.504 INFO    ] Script finished. Safe exiting...
[2026-06-12 07:46:00,505.505 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 07:46:00,509.509 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 07:46:00,512.512 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 07:46:02,541.541 INFO    ] ================================================
[2026-06-12 07:46:02,550.550 INFO    ] Launching Daemon at Fri Jun 12 07:46:02 IST 2026
[2026-06-12 07:46:02,556.556 INFO    ] ================================================
[2026-06-12 07:46:02,936.936 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 07:46:02
[2026-06-12 07:46:03,277.277 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 07:46:03,430.430 INFO    ] Initializing speech engine...
[2026-06-12 07:46:03,435.435 INFO    ] 2026-06-12 07:46:03
[2026-06-12 07:46:03,644.644 INFO    ] 2026-06-12 07:46:03
[2026-06-12 07:46:03,673.673 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 07:46:03,810.810 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 07:46:03,858.858 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 07:46:03,996.996 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 07:46:04,060.060 INFO    ] time= 12/06/2026 07:46:04
[2026-06-12 07:46:04,087.087 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 07:46:04,094.094 INFO    ] Checking for existing commands in stream...
[2026-06-12 07:46:04,159.159 INFO    ] No existing commands found in stream
[2026-06-12 07:46:09,170.170 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 07:46:09,174.174 INFO    ] Waiting 3.34 seconds before fallback handling...
[2026-06-12 07:46:12,870.870 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 07:46:12,871.871 INFO    ] Checking for system updates...
[2026-06-12 07:46:12,895.895 INFO    ] 200
[2026-06-12 07:46:12,896.896 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:46:12,929.929 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 07:46:12,931.931 INFO    ] No update needed
[2026-06-12 07:46:12,932.932 INFO    ] Checking for camera pi updates...
[2026-06-12 07:46:12,953.953 INFO    ] 200
[2026-06-12 07:46:12,954.954 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:46:12,980.980 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 07:46:13,044.044 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 07:46:13,046.046 INFO    ] No camera update needed
[2026-06-12 07:46:13,047.047 INFO    ] Script finished. Safe exiting...
[2026-06-12 07:46:13,048.048 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 07:46:13,052.052 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 07:46:13,055.055 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 07:46:15,095.095 INFO    ] ================================================
[2026-06-12 07:46:15,111.111 INFO    ] Launching Daemon at Fri Jun 12 07:46:15 IST 2026
[2026-06-12 07:46:15,121.121 INFO    ] ================================================
[2026-06-12 07:46:15,511.511 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 07:46:15
[2026-06-12 07:46:15,854.854 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 07:46:16,007.007 INFO    ] Initializing speech engine...
[2026-06-12 07:46:16,013.013 INFO    ] 2026-06-12 07:46:16
[2026-06-12 07:46:16,222.222 INFO    ] 2026-06-12 07:46:16
[2026-06-12 07:46:16,252.252 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 07:46:16,437.437 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 07:46:16,447.447 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 07:46:16,596.596 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 07:46:16,645.645 INFO    ] time= 12/06/2026 07:46:16
[2026-06-12 07:46:16,667.667 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 07:46:16,673.673 INFO    ] Checking for existing commands in stream...
[2026-06-12 07:46:16,741.741 INFO    ] No existing commands found in stream
[2026-06-12 07:46:21,761.761 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 07:46:21,764.764 INFO    ] Waiting 1.44 seconds before fallback handling...
[2026-06-12 07:46:23,588.588 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 07:46:23,589.589 INFO    ] Checking for system updates...
[2026-06-12 07:46:23,612.612 INFO    ] 200
[2026-06-12 07:46:23,614.614 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:46:23,647.647 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 07:46:23,649.649 INFO    ] No update needed
[2026-06-12 07:46:23,650.650 INFO    ] Checking for camera pi updates...
[2026-06-12 07:46:23,669.669 INFO    ] 200
[2026-06-12 07:46:23,671.671 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:46:23,694.694 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 07:46:23,733.733 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 07:46:23,735.735 INFO    ] No camera update needed
[2026-06-12 07:46:23,736.736 INFO    ] Script finished. Safe exiting...
[2026-06-12 07:46:23,737.737 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 07:46:23,740.740 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 07:46:23,743.743 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 07:46:25,781.781 INFO    ] ================================================
[2026-06-12 07:46:25,796.796 INFO    ] Launching Daemon at Fri Jun 12 07:46:25 IST 2026
[2026-06-12 07:46:25,807.807 INFO    ] ================================================
[2026-06-12 07:46:26,151.151 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 07:46:26
[2026-06-12 07:46:26,462.462 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 07:46:26,595.595 INFO    ] Initializing speech engine...
[2026-06-12 07:46:26,600.600 INFO    ] 2026-06-12 07:46:26
[2026-06-12 07:46:26,804.804 INFO    ] 2026-06-12 07:46:26
[2026-06-12 07:46:26,842.842 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 07:46:26,997.997 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 07:46:27,065.065 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 07:46:27,215.215 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 07:46:27,288.288 INFO    ] time= 12/06/2026 07:46:27
[2026-06-12 07:46:27,314.314 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 07:46:27,321.321 INFO    ] Checking for existing commands in stream...
[2026-06-12 07:46:27,391.391 INFO    ] No existing commands found in stream
[2026-06-12 07:46:32,400.400 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 07:46:32,402.402 INFO    ] Waiting 0.70 seconds before fallback handling...
[2026-06-12 07:46:33,476.476 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 07:46:33,477.477 INFO    ] Checking for system updates...
[2026-06-12 07:46:33,498.498 INFO    ] 200
[2026-06-12 07:46:33,499.499 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:46:33,529.529 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 07:46:33,531.531 INFO    ] No update needed
[2026-06-12 07:46:33,532.532 INFO    ] Checking for camera pi updates...
[2026-06-12 07:46:33,553.553 INFO    ] 200
[2026-06-12 07:46:33,555.555 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:46:33,579.579 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 07:46:33,625.625 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 07:46:33,627.627 INFO    ] No camera update needed
[2026-06-12 07:46:33,628.628 INFO    ] Script finished. Safe exiting...
[2026-06-12 07:46:33,629.629 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 07:46:33,632.632 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 07:46:33,635.635 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 07:46:35,675.675 INFO    ] ================================================
[2026-06-12 07:46:35,691.691 INFO    ] Launching Daemon at Fri Jun 12 07:46:35 IST 2026
[2026-06-12 07:46:35,701.701 INFO    ] ================================================
[2026-06-12 07:46:36,038.038 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 07:46:36
[2026-06-12 07:46:36,348.348 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 07:46:36,492.492 INFO    ] Initializing speech engine...
[2026-06-12 07:46:36,495.495 INFO    ] 2026-06-12 07:46:36
[2026-06-12 07:46:36,699.699 INFO    ] 2026-06-12 07:46:36
[2026-06-12 07:46:36,728.728 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 07:46:36,915.915 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 07:46:36,918.918 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 07:46:37,052.052 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 07:46:37,104.104 INFO    ] time= 12/06/2026 07:46:37
[2026-06-12 07:46:37,148.148 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 07:46:37,150.150 INFO    ] Checking for existing commands in stream...
[2026-06-12 07:46:37,251.251 INFO    ] No existing commands found in stream
[2026-06-12 07:46:42,261.261 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 07:46:42,264.264 INFO    ] Waiting 1.07 seconds before fallback handling...
[2026-06-12 07:46:43,718.718 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 07:46:43,719.719 INFO    ] Checking for system updates...
[2026-06-12 07:46:43,740.740 INFO    ] 200
[2026-06-12 07:46:43,741.741 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:46:43,774.774 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 07:46:43,775.775 INFO    ] No update needed
[2026-06-12 07:46:43,777.777 INFO    ] Checking for camera pi updates...
[2026-06-12 07:46:43,796.796 INFO    ] 200
[2026-06-12 07:46:43,797.797 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:46:43,823.823 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 07:46:43,868.868 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 07:46:43,870.870 INFO    ] No camera update needed
[2026-06-12 07:46:43,871.871 INFO    ] Script finished. Safe exiting...
[2026-06-12 07:46:43,872.872 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 07:46:43,875.875 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 07:46:43,878.878 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 07:46:45,919.919 INFO    ] ================================================
[2026-06-12 07:46:45,934.934 INFO    ] Launching Daemon at Fri Jun 12 07:46:45 IST 2026
[2026-06-12 07:46:45,945.945 INFO    ] ================================================
[2026-06-12 07:46:46,287.287 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 07:46:46
[2026-06-12 07:46:46,605.605 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 07:46:46,741.741 INFO    ] Initializing speech engine...
[2026-06-12 07:46:46,749.749 INFO    ] 2026-06-12 07:46:46
[2026-06-12 07:46:46,976.976 INFO    ] 2026-06-12 07:46:46
[2026-06-12 07:46:47,007.007 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 07:46:47,209.209 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 07:46:47,213.213 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 07:46:47,357.357 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 07:46:47,413.413 INFO    ] time= 12/06/2026 07:46:47
[2026-06-12 07:46:47,443.443 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 07:46:47,466.466 INFO    ] Checking for existing commands in stream...
[2026-06-12 07:46:47,544.544 INFO    ] No existing commands found in stream
[2026-06-12 07:46:52,553.553 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 07:46:52,556.556 INFO    ] Waiting 3.83 seconds before fallback handling...
[2026-06-12 07:46:56,767.767 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 07:46:56,769.769 INFO    ] Checking for system updates...
[2026-06-12 07:46:56,790.790 INFO    ] 200
[2026-06-12 07:46:56,792.792 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:46:56,825.825 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 07:46:56,826.826 INFO    ] No update needed
[2026-06-12 07:46:56,828.828 INFO    ] Checking for camera pi updates...
[2026-06-12 07:46:56,852.852 INFO    ] 200
[2026-06-12 07:46:56,853.853 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:46:56,879.879 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 07:46:57,032.032 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 07:46:57,034.034 INFO    ] No camera update needed
[2026-06-12 07:46:57,035.035 INFO    ] Script finished. Safe exiting...
[2026-06-12 07:46:57,037.037 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 07:46:57,040.040 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 07:46:57,043.043 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 07:46:59,084.084 INFO    ] ================================================
[2026-06-12 07:46:59,099.099 INFO    ] Launching Daemon at Fri Jun 12 07:46:59 IST 2026
[2026-06-12 07:46:59,111.111 INFO    ] ================================================
[2026-06-12 07:46:59,463.463 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 07:46:59
[2026-06-12 07:46:59,803.803 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 07:46:59,944.944 INFO    ] Initializing speech engine...
[2026-06-12 07:46:59,959.959 INFO    ] 2026-06-12 07:46:59
[2026-06-12 07:47:00,168.168 INFO    ] 2026-06-12 07:47:00
[2026-06-12 07:47:00,197.197 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 07:47:00,380.380 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 07:47:00,389.389 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 07:47:00,517.517 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 07:47:00,573.573 INFO    ] time= 12/06/2026 07:47:00
[2026-06-12 07:47:00,607.607 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 07:47:00,612.612 INFO    ] Checking for existing commands in stream...
[2026-06-12 07:47:00,707.707 INFO    ] No existing commands found in stream
[2026-06-12 07:47:05,723.723 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 07:47:05,727.727 INFO    ] Waiting 1.48 seconds before fallback handling...
[2026-06-12 07:47:07,598.598 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 07:47:07,600.600 INFO    ] Checking for system updates...
[2026-06-12 07:47:07,623.623 INFO    ] 200
[2026-06-12 07:47:07,624.624 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:47:07,658.658 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 07:47:07,659.659 INFO    ] No update needed
[2026-06-12 07:47:07,661.661 INFO    ] Checking for camera pi updates...
[2026-06-12 07:47:07,681.681 INFO    ] 200
[2026-06-12 07:47:07,682.682 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:47:07,708.708 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 07:47:07,750.750 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 07:47:07,752.752 INFO    ] No camera update needed
[2026-06-12 07:47:07,753.753 INFO    ] Script finished. Safe exiting...
[2026-06-12 07:47:07,755.755 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 07:47:07,758.758 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 07:47:07,761.761 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 07:47:09,800.800 INFO    ] ================================================
[2026-06-12 07:47:09,815.815 INFO    ] Launching Daemon at Fri Jun 12 07:47:09 IST 2026
[2026-06-12 07:47:09,826.826 INFO    ] ================================================
[2026-06-12 07:47:10,159.159 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 07:47:10
[2026-06-12 07:47:10,476.476 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 07:47:10,620.620 INFO    ] Initializing speech engine...
[2026-06-12 07:47:10,626.626 INFO    ] 2026-06-12 07:47:10
[2026-06-12 07:47:10,829.829 INFO    ] 2026-06-12 07:47:10
[2026-06-12 07:47:10,857.857 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 07:47:11,041.041 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 07:47:11,050.050 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 07:47:11,180.180 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 07:47:11,247.247 INFO    ] time= 12/06/2026 07:47:11
[2026-06-12 07:47:11,272.272 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 07:47:11,278.278 INFO    ] Checking for existing commands in stream...
[2026-06-12 07:47:11,344.344 INFO    ] No existing commands found in stream
[2026-06-12 07:47:16,352.352 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 07:47:16,355.355 INFO    ] Waiting 1.78 seconds before fallback handling...
[2026-06-12 07:47:18,497.497 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 07:47:18,499.499 INFO    ] Checking for system updates...
[2026-06-12 07:47:18,520.520 INFO    ] 200
[2026-06-12 07:47:18,522.522 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:47:18,558.558 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 07:47:18,559.559 INFO    ] No update needed
[2026-06-12 07:47:18,560.560 INFO    ] Checking for camera pi updates...
[2026-06-12 07:47:18,582.582 INFO    ] 200
[2026-06-12 07:47:18,584.584 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:47:18,609.609 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 07:47:18,646.646 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 07:47:18,647.647 INFO    ] No camera update needed
[2026-06-12 07:47:18,649.649 INFO    ] Script finished. Safe exiting...
[2026-06-12 07:47:18,650.650 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 07:47:18,653.653 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 07:47:18,656.656 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 07:47:20,698.698 INFO    ] ================================================
[2026-06-12 07:47:20,714.714 INFO    ] Launching Daemon at Fri Jun 12 07:47:20 IST 2026
[2026-06-12 07:47:20,725.725 INFO    ] ================================================
[2026-06-12 07:47:21,102.102 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 07:47:21
[2026-06-12 07:47:21,420.420 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 07:47:21,555.555 INFO    ] Initializing speech engine...
[2026-06-12 07:47:21,560.560 INFO    ] 2026-06-12 07:47:21
[2026-06-12 07:47:21,771.771 INFO    ] 2026-06-12 07:47:21
[2026-06-12 07:47:21,801.801 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 07:47:21,959.959 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 07:47:22,022.022 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 07:47:22,180.180 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 07:47:22,252.252 INFO    ] time= 12/06/2026 07:47:22
[2026-06-12 07:47:22,274.274 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 07:47:22,280.280 INFO    ] Checking for existing commands in stream...
[2026-06-12 07:47:22,357.357 INFO    ] No existing commands found in stream
[2026-06-12 07:47:27,368.368 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 07:47:27,371.371 INFO    ] Waiting 0.43 seconds before fallback handling...
[2026-06-12 07:47:28,186.186 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 07:47:28,188.188 INFO    ] Checking for system updates...
[2026-06-12 07:47:28,209.209 INFO    ] 200
[2026-06-12 07:47:28,211.211 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:47:28,241.241 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 07:47:28,243.243 INFO    ] No update needed
[2026-06-12 07:47:28,244.244 INFO    ] Checking for camera pi updates...
[2026-06-12 07:47:28,264.264 INFO    ] 200
[2026-06-12 07:47:28,266.266 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:47:28,289.289 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 07:47:28,330.330 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 07:47:28,331.331 INFO    ] No camera update needed
[2026-06-12 07:47:28,333.333 INFO    ] Script finished. Safe exiting...
[2026-06-12 07:47:28,334.334 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 07:47:28,338.338 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 07:47:28,341.341 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 07:47:30,382.382 INFO    ] ================================================
[2026-06-12 07:47:30,397.397 INFO    ] Launching Daemon at Fri Jun 12 07:47:30 IST 2026
[2026-06-12 07:47:30,408.408 INFO    ] ================================================
[2026-06-12 07:47:30,758.758 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 07:47:30
[2026-06-12 07:47:31,111.111 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 07:47:31,246.246 INFO    ] Initializing speech engine...
[2026-06-12 07:47:31,258.258 INFO    ] 2026-06-12 07:47:31
[2026-06-12 07:47:31,471.471 INFO    ] 2026-06-12 07:47:31
[2026-06-12 07:47:31,499.499 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 07:47:31,689.689 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 07:47:31,703.703 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 07:47:31,871.871 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 07:47:31,931.931 INFO    ] time= 12/06/2026 07:47:31
[2026-06-12 07:47:31,953.953 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 07:47:31,955.955 INFO    ] Checking for existing commands in stream...
[2026-06-12 07:47:32,024.024 INFO    ] No existing commands found in stream
[2026-06-12 07:47:37,048.048 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 07:47:37,051.051 INFO    ] Waiting 1.68 seconds before fallback handling...
[2026-06-12 07:47:39,107.107 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 07:47:39,108.108 INFO    ] Checking for system updates...
[2026-06-12 07:47:39,129.129 INFO    ] 200
[2026-06-12 07:47:39,131.131 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:47:39,161.161 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 07:47:39,162.162 INFO    ] No update needed
[2026-06-12 07:47:39,164.164 INFO    ] Checking for camera pi updates...
[2026-06-12 07:47:39,184.184 INFO    ] 200
[2026-06-12 07:47:39,186.186 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:47:39,209.209 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 07:47:39,248.248 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 07:47:39,249.249 INFO    ] No camera update needed
[2026-06-12 07:47:39,251.251 INFO    ] Script finished. Safe exiting...
[2026-06-12 07:47:39,252.252 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 07:47:39,255.255 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 07:47:39,258.258 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 07:47:41,296.296 INFO    ] ================================================
[2026-06-12 07:47:41,311.311 INFO    ] Launching Daemon at Fri Jun 12 07:47:41 IST 2026
[2026-06-12 07:47:41,322.322 INFO    ] ================================================
[2026-06-12 07:47:41,651.651 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 07:47:41
[2026-06-12 07:47:41,962.962 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 07:47:42,093.093 INFO    ] Initializing speech engine...
[2026-06-12 07:47:42,101.101 INFO    ] 2026-06-12 07:47:42
[2026-06-12 07:47:42,316.316 INFO    ] 2026-06-12 07:47:42
[2026-06-12 07:47:42,344.344 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 07:47:42,531.531 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 07:47:42,534.534 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 07:47:42,666.666 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 07:47:42,722.722 INFO    ] time= 12/06/2026 07:47:42
[2026-06-12 07:47:42,757.757 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 07:47:42,767.767 INFO    ] Checking for existing commands in stream...
[2026-06-12 07:47:42,840.840 INFO    ] No existing commands found in stream
[2026-06-12 07:47:47,849.849 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 07:47:47,852.852 INFO    ] Waiting 1.59 seconds before fallback handling...
[2026-06-12 07:47:49,825.825 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 07:47:49,826.826 INFO    ] Checking for system updates...
[2026-06-12 07:47:49,848.848 INFO    ] 200
[2026-06-12 07:47:49,850.850 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:47:49,883.883 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 07:47:49,884.884 INFO    ] No update needed
[2026-06-12 07:47:49,885.885 INFO    ] Checking for camera pi updates...
[2026-06-12 07:47:49,905.905 INFO    ] 200
[2026-06-12 07:47:49,906.906 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:47:49,931.931 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 07:47:49,980.980 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 07:47:49,981.981 INFO    ] No camera update needed
[2026-06-12 07:47:49,982.982 INFO    ] Script finished. Safe exiting...
[2026-06-12 07:47:49,984.984 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 07:47:49,987.987 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 07:47:49,989.989 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 07:47:52,020.020 INFO    ] ================================================
[2026-06-12 07:47:52,036.036 INFO    ] Launching Daemon at Fri Jun 12 07:47:52 IST 2026
[2026-06-12 07:47:52,047.047 INFO    ] ================================================
[2026-06-12 07:47:52,391.391 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 07:47:52
[2026-06-12 07:47:52,715.715 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 07:47:52,858.858 INFO    ] Initializing speech engine...
[2026-06-12 07:47:52,870.870 INFO    ] 2026-06-12 07:47:52
[2026-06-12 07:47:53,068.068 INFO    ] 2026-06-12 07:47:53
[2026-06-12 07:47:53,097.097 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 07:47:53,223.223 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 07:47:53,281.281 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 07:47:53,424.424 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 07:47:53,487.487 INFO    ] time= 12/06/2026 07:47:53
[2026-06-12 07:47:53,510.510 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 07:47:53,516.516 INFO    ] Checking for existing commands in stream...
[2026-06-12 07:47:53,581.581 INFO    ] No existing commands found in stream
[2026-06-12 07:47:58,592.592 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 07:47:58,600.600 INFO    ] Waiting 0.89 seconds before fallback handling...
[2026-06-12 07:47:59,852.852 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 07:47:59,853.853 INFO    ] Checking for system updates...
[2026-06-12 07:47:59,874.874 INFO    ] 200
[2026-06-12 07:47:59,875.875 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:47:59,908.908 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 07:47:59,910.910 INFO    ] No update needed
[2026-06-12 07:47:59,911.911 INFO    ] Checking for camera pi updates...
[2026-06-12 07:47:59,935.935 INFO    ] 200
[2026-06-12 07:47:59,936.936 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:47:59,964.964 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 07:48:00,009.009 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 07:48:00,011.011 INFO    ] No camera update needed
[2026-06-12 07:48:00,012.012 INFO    ] Script finished. Safe exiting...
[2026-06-12 07:48:00,013.013 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 07:48:00,017.017 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 07:48:00,020.020 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 07:48:02,055.055 INFO    ] ================================================
[2026-06-12 07:48:02,069.069 INFO    ] Launching Daemon at Fri Jun 12 07:48:02 IST 2026
[2026-06-12 07:48:02,081.081 INFO    ] ================================================
[2026-06-12 07:48:02,533.533 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 07:48:02
[2026-06-12 07:48:02,908.908 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 07:48:03,055.055 INFO    ] Initializing speech engine...
[2026-06-12 07:48:03,065.065 INFO    ] 2026-06-12 07:48:03
[2026-06-12 07:48:03,274.274 INFO    ] 2026-06-12 07:48:03
[2026-06-12 07:48:03,303.303 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 07:48:03,435.435 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 07:48:03,489.489 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 07:48:03,627.627 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 07:48:03,694.694 INFO    ] time= 12/06/2026 07:48:03
[2026-06-12 07:48:03,718.718 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 07:48:03,725.725 INFO    ] Checking for existing commands in stream...
[2026-06-12 07:48:03,791.791 INFO    ] No existing commands found in stream
[2026-06-12 07:48:08,805.805 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 07:48:08,809.809 INFO    ] Waiting 1.10 seconds before fallback handling...
[2026-06-12 07:48:10,316.316 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 07:48:10,318.318 INFO    ] Checking for system updates...
[2026-06-12 07:48:10,338.338 INFO    ] 200
[2026-06-12 07:48:10,340.340 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:48:10,373.373 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 07:48:10,374.374 INFO    ] No update needed
[2026-06-12 07:48:10,376.376 INFO    ] Checking for camera pi updates...
[2026-06-12 07:48:10,399.399 INFO    ] 200
[2026-06-12 07:48:10,400.400 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:48:10,428.428 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 07:48:10,472.472 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 07:48:10,473.473 INFO    ] No camera update needed
[2026-06-12 07:48:10,474.474 INFO    ] Script finished. Safe exiting...
[2026-06-12 07:48:10,476.476 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 07:48:10,479.479 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 07:48:10,482.482 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 07:48:12,521.521 INFO    ] ================================================
[2026-06-12 07:48:12,536.536 INFO    ] Launching Daemon at Fri Jun 12 07:48:12 IST 2026
[2026-06-12 07:48:12,547.547 INFO    ] ================================================
[2026-06-12 07:48:12,901.901 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 07:48:12
[2026-06-12 07:48:13,213.213 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 07:48:13,343.343 INFO    ] Initializing speech engine...
[2026-06-12 07:48:13,347.347 INFO    ] 2026-06-12 07:48:13
[2026-06-12 07:48:13,565.565 INFO    ] 2026-06-12 07:48:13
[2026-06-12 07:48:13,594.594 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 07:48:13,719.719 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 07:48:13,782.782 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 07:48:13,922.922 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 07:48:13,981.981 INFO    ] time= 12/06/2026 07:48:13
[2026-06-12 07:48:14,014.014 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 07:48:14,020.020 INFO    ] Checking for existing commands in stream...
[2026-06-12 07:48:14,089.089 INFO    ] No existing commands found in stream
[2026-06-12 07:48:19,098.098 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 07:48:19,101.101 INFO    ] Waiting 0.60 seconds before fallback handling...
[2026-06-12 07:48:20,065.065 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 07:48:20,066.066 INFO    ] Checking for system updates...
[2026-06-12 07:48:20,086.086 INFO    ] 200
[2026-06-12 07:48:20,088.088 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:48:20,119.119 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 07:48:20,121.121 INFO    ] No update needed
[2026-06-12 07:48:20,122.122 INFO    ] Checking for camera pi updates...
[2026-06-12 07:48:20,141.141 INFO    ] 200
[2026-06-12 07:48:20,143.143 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:48:20,169.169 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 07:48:20,206.206 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 07:48:20,207.207 INFO    ] No camera update needed
[2026-06-12 07:48:20,208.208 INFO    ] Script finished. Safe exiting...
[2026-06-12 07:48:20,210.210 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 07:48:20,213.213 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 07:48:20,215.215 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 07:48:22,255.255 INFO    ] ================================================
[2026-06-12 07:48:22,271.271 INFO    ] Launching Daemon at Fri Jun 12 07:48:22 IST 2026
[2026-06-12 07:48:22,281.281 INFO    ] ================================================
[2026-06-12 07:48:22,628.628 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 07:48:22
[2026-06-12 07:48:22,947.947 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 07:48:23,106.106 INFO    ] Initializing speech engine...
[2026-06-12 07:48:23,112.112 INFO    ] 2026-06-12 07:48:23
[2026-06-12 07:48:23,314.314 INFO    ] 2026-06-12 07:48:23
[2026-06-12 07:48:23,344.344 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 07:48:23,532.532 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 07:48:23,541.541 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 07:48:23,664.664 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 07:48:23,725.725 INFO    ] time= 12/06/2026 07:48:23
[2026-06-12 07:48:23,763.763 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 07:48:23,765.765 INFO    ] Checking for existing commands in stream...
[2026-06-12 07:48:23,834.834 INFO    ] No existing commands found in stream
[2026-06-12 07:48:28,845.845 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 07:48:28,848.848 INFO    ] Waiting 3.30 seconds before fallback handling...
[2026-06-12 07:48:32,496.496 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 07:48:32,497.497 INFO    ] Checking for system updates...
[2026-06-12 07:48:32,518.518 INFO    ] 200
[2026-06-12 07:48:32,519.519 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:48:32,553.553 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 07:48:32,554.554 INFO    ] No update needed
[2026-06-12 07:48:32,555.555 INFO    ] Checking for camera pi updates...
[2026-06-12 07:48:32,576.576 INFO    ] 200
[2026-06-12 07:48:32,577.577 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:48:32,600.600 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 07:48:32,640.640 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 07:48:32,641.641 INFO    ] No camera update needed
[2026-06-12 07:48:32,643.643 INFO    ] Script finished. Safe exiting...
[2026-06-12 07:48:32,644.644 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 07:48:32,647.647 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 07:48:32,649.649 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 07:48:34,691.691 INFO    ] ================================================
[2026-06-12 07:48:34,706.706 INFO    ] Launching Daemon at Fri Jun 12 07:48:34 IST 2026
[2026-06-12 07:48:34,717.717 INFO    ] ================================================
[2026-06-12 07:48:35,066.066 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 07:48:35
[2026-06-12 07:48:35,376.376 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 07:48:35,520.520 INFO    ] Initializing speech engine...
[2026-06-12 07:48:35,526.526 INFO    ] 2026-06-12 07:48:35
[2026-06-12 07:48:35,731.731 INFO    ] 2026-06-12 07:48:35
[2026-06-12 07:48:35,761.761 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 07:48:35,946.946 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 07:48:35,950.950 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 07:48:36,080.080 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 07:48:36,126.126 INFO    ] time= 12/06/2026 07:48:36
[2026-06-12 07:48:36,172.172 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 07:48:36,182.182 INFO    ] Checking for existing commands in stream...
[2026-06-12 07:48:36,254.254 INFO    ] No existing commands found in stream
[2026-06-12 07:48:41,263.263 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 07:48:41,266.266 INFO    ] Waiting 2.53 seconds before fallback handling...
[2026-06-12 07:48:44,146.146 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 07:48:44,148.148 INFO    ] Checking for system updates...
[2026-06-12 07:48:44,169.169 INFO    ] 200
[2026-06-12 07:48:44,171.171 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:48:44,203.203 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 07:48:44,205.205 INFO    ] No update needed
[2026-06-12 07:48:44,206.206 INFO    ] Checking for camera pi updates...
[2026-06-12 07:48:44,229.229 INFO    ] 200
[2026-06-12 07:48:44,231.231 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:48:44,257.257 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 07:48:44,295.295 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 07:48:44,296.296 INFO    ] No camera update needed
[2026-06-12 07:48:44,298.298 INFO    ] Script finished. Safe exiting...
[2026-06-12 07:48:44,299.299 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 07:48:44,303.303 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 07:48:44,306.306 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 07:48:46,345.345 INFO    ] ================================================
[2026-06-12 07:48:46,362.362 INFO    ] Launching Daemon at Fri Jun 12 07:48:46 IST 2026
[2026-06-12 07:48:46,373.373 INFO    ] ================================================
[2026-06-12 07:48:46,747.747 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 07:48:46
[2026-06-12 07:48:47,082.082 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 07:48:47,226.226 INFO    ] Initializing speech engine...
[2026-06-12 07:48:47,237.237 INFO    ] 2026-06-12 07:48:47
[2026-06-12 07:48:47,447.447 INFO    ] 2026-06-12 07:48:47
[2026-06-12 07:48:47,476.476 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 07:48:47,663.663 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 07:48:47,666.666 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 07:48:47,816.816 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 07:48:47,874.874 INFO    ] time= 12/06/2026 07:48:47
[2026-06-12 07:48:47,898.898 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 07:48:47,905.905 INFO    ] Checking for existing commands in stream...
[2026-06-12 07:48:47,972.972 INFO    ] No existing commands found in stream
[2026-06-12 07:48:52,982.982 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 07:48:52,985.985 INFO    ] Waiting 1.73 seconds before fallback handling...
[2026-06-12 07:48:55,087.087 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 07:48:55,088.088 INFO    ] Checking for system updates...
[2026-06-12 07:48:55,110.110 INFO    ] 200
[2026-06-12 07:48:55,111.111 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:48:55,144.144 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 07:48:55,146.146 INFO    ] No update needed
[2026-06-12 07:48:55,147.147 INFO    ] Checking for camera pi updates...
[2026-06-12 07:48:55,167.167 INFO    ] 200
[2026-06-12 07:48:55,169.169 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:48:55,195.195 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 07:48:55,234.234 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 07:48:55,236.236 INFO    ] No camera update needed
[2026-06-12 07:48:55,237.237 INFO    ] Script finished. Safe exiting...
[2026-06-12 07:48:55,238.238 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 07:48:55,242.242 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 07:48:55,245.245 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 07:48:57,283.283 INFO    ] ================================================
[2026-06-12 07:48:57,299.299 INFO    ] Launching Daemon at Fri Jun 12 07:48:57 IST 2026
[2026-06-12 07:48:57,310.310 INFO    ] ================================================
[2026-06-12 07:48:57,673.673 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 07:48:57
[2026-06-12 07:48:57,994.994 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 07:48:58,148.148 INFO    ] Initializing speech engine...
[2026-06-12 07:48:58,153.153 INFO    ] 2026-06-12 07:48:58
[2026-06-12 07:48:58,360.360 INFO    ] 2026-06-12 07:48:58
[2026-06-12 07:48:58,390.390 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 07:48:58,576.576 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 07:48:58,585.585 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 07:48:58,717.717 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 07:48:58,785.785 INFO    ] time= 12/06/2026 07:48:58
[2026-06-12 07:48:58,810.810 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 07:48:58,812.812 INFO    ] Checking for existing commands in stream...
[2026-06-12 07:48:58,908.908 INFO    ] No existing commands found in stream
[2026-06-12 07:49:03,923.923 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 07:49:03,926.926 INFO    ] Waiting 1.23 seconds before fallback handling...
[2026-06-12 07:49:05,514.514 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 07:49:05,516.516 INFO    ] Checking for system updates...
[2026-06-12 07:49:05,537.537 INFO    ] 200
[2026-06-12 07:49:05,538.538 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:49:05,571.571 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 07:49:05,572.572 INFO    ] No update needed
[2026-06-12 07:49:05,573.573 INFO    ] Checking for camera pi updates...
[2026-06-12 07:49:05,594.594 INFO    ] 200
[2026-06-12 07:49:05,596.596 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:49:05,619.619 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 07:49:05,663.663 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 07:49:05,664.664 INFO    ] No camera update needed
[2026-06-12 07:49:05,666.666 INFO    ] Script finished. Safe exiting...
[2026-06-12 07:49:05,667.667 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 07:49:05,670.670 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 07:49:05,672.672 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 07:49:07,711.711 INFO    ] ================================================
[2026-06-12 07:49:07,726.726 INFO    ] Launching Daemon at Fri Jun 12 07:49:07 IST 2026
[2026-06-12 07:49:07,737.737 INFO    ] ================================================
[2026-06-12 07:49:08,112.112 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 07:49:08
[2026-06-12 07:49:08,448.448 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 07:49:08,598.598 INFO    ] Initializing speech engine...
[2026-06-12 07:49:08,604.604 INFO    ] 2026-06-12 07:49:08
[2026-06-12 07:49:08,811.811 INFO    ] 2026-06-12 07:49:08
[2026-06-12 07:49:08,840.840 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 07:49:09,024.024 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 07:49:09,034.034 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 07:49:09,177.177 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 07:49:09,230.230 INFO    ] time= 12/06/2026 07:49:09
[2026-06-12 07:49:09,254.254 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 07:49:09,259.259 INFO    ] Checking for existing commands in stream...
[2026-06-12 07:49:09,327.327 INFO    ] No existing commands found in stream
[2026-06-12 07:49:14,341.341 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 07:49:14,344.344 INFO    ] Waiting 1.73 seconds before fallback handling...
[2026-06-12 07:49:16,455.455 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 07:49:16,456.456 INFO    ] Checking for system updates...
[2026-06-12 07:49:16,478.478 INFO    ] 200
[2026-06-12 07:49:16,480.480 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:49:16,512.512 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 07:49:16,514.514 INFO    ] No update needed
[2026-06-12 07:49:16,515.515 INFO    ] Checking for camera pi updates...
[2026-06-12 07:49:16,534.534 INFO    ] 200
[2026-06-12 07:49:16,535.535 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:49:16,559.559 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 07:49:16,594.594 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 07:49:16,595.595 INFO    ] No camera update needed
[2026-06-12 07:49:16,596.596 INFO    ] Script finished. Safe exiting...
[2026-06-12 07:49:16,598.598 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 07:49:16,601.601 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 07:49:16,604.604 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 07:49:18,642.642 INFO    ] ================================================
[2026-06-12 07:49:18,657.657 INFO    ] Launching Daemon at Fri Jun 12 07:49:18 IST 2026
[2026-06-12 07:49:18,668.668 INFO    ] ================================================
[2026-06-12 07:49:18,995.995 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 07:49:18
[2026-06-12 07:49:19,307.307 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 07:49:19,438.438 INFO    ] Initializing speech engine...
[2026-06-12 07:49:19,442.442 INFO    ] 2026-06-12 07:49:19
[2026-06-12 07:49:19,660.660 INFO    ] 2026-06-12 07:49:19
[2026-06-12 07:49:19,689.689 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 07:49:19,819.819 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 07:49:19,877.877 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 07:49:20,010.010 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 07:49:20,066.066 INFO    ] time= 12/06/2026 07:49:20
[2026-06-12 07:49:20,101.101 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 07:49:20,112.112 INFO    ] Checking for existing commands in stream...
[2026-06-12 07:49:20,184.184 INFO    ] No existing commands found in stream
[2026-06-12 07:49:25,193.193 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 07:49:25,196.196 INFO    ] Waiting 2.80 seconds before fallback handling...
[2026-06-12 07:49:28,363.363 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 07:49:28,365.365 INFO    ] Checking for system updates...
[2026-06-12 07:49:28,385.385 INFO    ] 200
[2026-06-12 07:49:28,386.386 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:49:28,419.419 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 07:49:28,420.420 INFO    ] No update needed
[2026-06-12 07:49:28,421.421 INFO    ] Checking for camera pi updates...
[2026-06-12 07:49:28,442.442 INFO    ] 200
[2026-06-12 07:49:28,444.444 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:49:28,469.469 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 07:49:28,516.516 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 07:49:28,517.517 INFO    ] No camera update needed
[2026-06-12 07:49:28,518.518 INFO    ] Script finished. Safe exiting...
[2026-06-12 07:49:28,520.520 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 07:49:28,523.523 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 07:49:28,526.526 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 07:49:30,566.566 INFO    ] ================================================
[2026-06-12 07:49:30,586.586 INFO    ] Launching Daemon at Fri Jun 12 07:49:30 IST 2026
[2026-06-12 07:49:30,597.597 INFO    ] ================================================
[2026-06-12 07:49:30,972.972 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 07:49:30
[2026-06-12 07:49:31,311.311 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 07:49:31,456.456 INFO    ] Initializing speech engine...
[2026-06-12 07:49:31,466.466 INFO    ] 2026-06-12 07:49:31
[2026-06-12 07:49:31,674.674 INFO    ] 2026-06-12 07:49:31
[2026-06-12 07:49:31,704.704 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 07:49:31,887.887 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 07:49:31,897.897 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 07:49:32,028.028 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 07:49:32,099.099 INFO    ] time= 12/06/2026 07:49:32
[2026-06-12 07:49:32,132.132 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 07:49:32,139.139 INFO    ] Checking for existing commands in stream...
[2026-06-12 07:49:32,209.209 INFO    ] No existing commands found in stream
[2026-06-12 07:49:37,223.223 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 07:49:37,227.227 INFO    ] Waiting 3.49 seconds before fallback handling...
[2026-06-12 07:49:41,085.085 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 07:49:41,087.087 INFO    ] Checking for system updates...
[2026-06-12 07:49:41,111.111 INFO    ] 200
[2026-06-12 07:49:41,113.113 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:49:41,150.150 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 07:49:41,152.152 INFO    ] No update needed
[2026-06-12 07:49:41,154.154 INFO    ] Checking for camera pi updates...
[2026-06-12 07:49:41,176.176 INFO    ] 200
[2026-06-12 07:49:41,177.177 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:49:41,209.209 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 07:49:41,248.248 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 07:49:41,251.251 INFO    ] No camera update needed
[2026-06-12 07:49:41,253.253 INFO    ] Script finished. Safe exiting...
[2026-06-12 07:49:41,255.255 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 07:49:41,260.260 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 07:49:41,264.264 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 07:49:43,299.299 INFO    ] ================================================
[2026-06-12 07:49:43,314.314 INFO    ] Launching Daemon at Fri Jun 12 07:49:43 IST 2026
[2026-06-12 07:49:43,325.325 INFO    ] ================================================
[2026-06-12 07:49:43,686.686 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 07:49:43
[2026-06-12 07:49:44,022.022 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 07:49:44,176.176 INFO    ] Initializing speech engine...
[2026-06-12 07:49:44,181.181 INFO    ] 2026-06-12 07:49:44
[2026-06-12 07:49:44,389.389 INFO    ] 2026-06-12 07:49:44
[2026-06-12 07:49:44,419.419 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 07:49:44,604.604 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 07:49:44,608.608 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 07:49:44,755.755 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 07:49:44,815.815 INFO    ] time= 12/06/2026 07:49:44
[2026-06-12 07:49:44,837.837 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 07:49:44,843.843 INFO    ] Checking for existing commands in stream...
[2026-06-12 07:49:44,911.911 INFO    ] No existing commands found in stream
[2026-06-12 07:49:49,931.931 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 07:49:49,934.934 INFO    ] Waiting 0.08 seconds before fallback handling...
[2026-06-12 07:49:50,362.362 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 07:49:50,363.363 INFO    ] Checking for system updates...
[2026-06-12 07:49:50,384.384 INFO    ] 200
[2026-06-12 07:49:50,386.386 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:49:50,416.416 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 07:49:50,418.418 INFO    ] No update needed
[2026-06-12 07:49:50,419.419 INFO    ] Checking for camera pi updates...
[2026-06-12 07:49:50,438.438 INFO    ] 200
[2026-06-12 07:49:50,440.440 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:49:50,463.463 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 07:49:50,502.502 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 07:49:50,504.504 INFO    ] No camera update needed
[2026-06-12 07:49:50,505.505 INFO    ] Script finished. Safe exiting...
[2026-06-12 07:49:50,506.506 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 07:49:50,509.509 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 07:49:50,512.512 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 07:49:52,551.551 INFO    ] ================================================
[2026-06-12 07:49:52,566.566 INFO    ] Launching Daemon at Fri Jun 12 07:49:52 IST 2026
[2026-06-12 07:49:52,577.577 INFO    ] ================================================
[2026-06-12 07:49:52,962.962 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 07:49:52
[2026-06-12 07:49:53,297.297 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 07:49:53,447.447 INFO    ] Initializing speech engine...
[2026-06-12 07:49:53,453.453 INFO    ] 2026-06-12 07:49:53
[2026-06-12 07:49:53,659.659 INFO    ] 2026-06-12 07:49:53
[2026-06-12 07:49:53,689.689 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 07:49:53,874.874 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 07:49:53,884.884 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 07:49:54,018.018 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 07:49:54,079.079 INFO    ] time= 12/06/2026 07:49:54
[2026-06-12 07:49:54,104.104 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 07:49:54,110.110 INFO    ] Checking for existing commands in stream...
[2026-06-12 07:49:54,177.177 INFO    ] No existing commands found in stream
[2026-06-12 07:49:59,192.192 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 07:49:59,195.195 INFO    ] Waiting 3.52 seconds before fallback handling...
[2026-06-12 07:50:05,847.847 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 07:50:05,850.850 INFO    ] Checking for system updates...
[2026-06-12 07:50:05,888.888 INFO    ] 200
[2026-06-12 07:50:05,890.890 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:50:05,945.945 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 07:50:05,947.947 INFO    ] No update needed
[2026-06-12 07:50:05,950.950 INFO    ] Checking for camera pi updates...
[2026-06-12 07:50:05,976.976 INFO    ] 200
[2026-06-12 07:50:05,977.977 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:50:06,002.002 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 07:50:06,037.037 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 07:50:06,039.039 INFO    ] No camera update needed
[2026-06-12 07:50:06,040.040 INFO    ] Script finished. Safe exiting...
[2026-06-12 07:50:06,042.042 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 07:50:06,045.045 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 07:50:06,048.048 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 07:50:08,086.086 INFO    ] ================================================
[2026-06-12 07:50:08,101.101 INFO    ] Launching Daemon at Fri Jun 12 07:50:08 IST 2026
[2026-06-12 07:50:08,112.112 INFO    ] ================================================
[2026-06-12 07:50:08,471.471 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 07:50:08
[2026-06-12 07:50:08,784.784 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 07:50:08,918.918 INFO    ] Initializing speech engine...
[2026-06-12 07:50:08,930.930 INFO    ] 2026-06-12 07:50:08
[2026-06-12 07:50:09,141.141 INFO    ] 2026-06-12 07:50:09
[2026-06-12 07:50:09,169.169 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 07:50:09,358.358 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 07:50:09,368.368 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 07:50:09,497.497 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 07:50:09,554.554 INFO    ] time= 12/06/2026 07:50:09
[2026-06-12 07:50:09,579.579 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 07:50:09,595.595 INFO    ] Checking for existing commands in stream...
[2026-06-12 07:50:09,668.668 INFO    ] No existing commands found in stream
[2026-06-12 07:50:14,683.683 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 07:50:14,685.685 INFO    ] Waiting 0.84 seconds before fallback handling...
[2026-06-12 07:50:16,540.540 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 07:50:16,543.543 INFO    ] Checking for system updates...
[2026-06-12 07:50:16,580.580 INFO    ] 200
[2026-06-12 07:50:16,582.582 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:50:16,641.641 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 07:50:16,643.643 INFO    ] No update needed
[2026-06-12 07:50:16,646.646 INFO    ] Checking for camera pi updates...
[2026-06-12 07:50:16,683.683 INFO    ] 200
[2026-06-12 07:50:16,686.686 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:50:16,720.720 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 07:50:16,756.756 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 07:50:16,757.757 INFO    ] No camera update needed
[2026-06-12 07:50:16,758.758 INFO    ] Script finished. Safe exiting...
[2026-06-12 07:50:16,759.759 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 07:50:16,762.762 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 07:50:16,765.765 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 07:50:18,796.796 INFO    ] ================================================
[2026-06-12 07:50:18,804.804 INFO    ] Launching Daemon at Fri Jun 12 07:50:18 IST 2026
[2026-06-12 07:50:18,810.810 INFO    ] ================================================
[2026-06-12 07:50:19,160.160 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 07:50:19
[2026-06-12 07:50:19,473.473 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 07:50:19,606.606 INFO    ] Initializing speech engine...
[2026-06-12 07:50:19,615.615 INFO    ] 2026-06-12 07:50:19
[2026-06-12 07:50:19,837.837 INFO    ] 2026-06-12 07:50:19
[2026-06-12 07:50:19,868.868 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 07:50:19,999.999 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 07:50:20,027.027 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 07:50:20,186.186 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 07:50:20,211.211 INFO    ] time= 12/06/2026 07:50:20
[2026-06-12 07:50:20,262.262 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 07:50:20,307.307 INFO    ] Checking for existing commands in stream...
[2026-06-12 07:50:20,418.418 INFO    ] No existing commands found in stream
[2026-06-12 07:50:25,427.427 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 07:50:25,430.430 INFO    ] Waiting 3.02 seconds before fallback handling...
[2026-06-12 07:50:28,825.825 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 07:50:28,827.827 INFO    ] Checking for system updates...
[2026-06-12 07:50:28,848.848 INFO    ] 200
[2026-06-12 07:50:28,850.850 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:50:28,882.882 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 07:50:28,883.883 INFO    ] No update needed
[2026-06-12 07:50:28,885.885 INFO    ] Checking for camera pi updates...
[2026-06-12 07:50:28,905.905 INFO    ] 200
[2026-06-12 07:50:28,906.906 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:50:28,929.929 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 07:50:28,974.974 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 07:50:28,975.975 INFO    ] No camera update needed
[2026-06-12 07:50:28,976.976 INFO    ] Script finished. Safe exiting...
[2026-06-12 07:50:28,977.977 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 07:50:28,980.980 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 07:50:28,983.983 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 07:50:31,023.023 INFO    ] ================================================
[2026-06-12 07:50:31,038.038 INFO    ] Launching Daemon at Fri Jun 12 07:50:31 IST 2026
[2026-06-12 07:50:31,049.049 INFO    ] ================================================
[2026-06-12 07:50:31,428.428 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 07:50:31
[2026-06-12 07:50:31,798.798 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 07:50:31,966.966 INFO    ] Initializing speech engine...
[2026-06-12 07:50:31,972.972 INFO    ] 2026-06-12 07:50:31
[2026-06-12 07:50:32,185.185 INFO    ] 2026-06-12 07:50:32
[2026-06-12 07:50:32,217.217 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 07:50:32,404.404 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 07:50:32,407.407 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 07:50:32,545.545 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 07:50:32,597.597 INFO    ] time= 12/06/2026 07:50:32
[2026-06-12 07:50:32,599.599 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 07:50:32,615.615 INFO    ] Checking for existing commands in stream...
[2026-06-12 07:50:32,686.686 INFO    ] No existing commands found in stream
[2026-06-12 07:50:37,695.695 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 07:50:37,698.698 INFO    ] Waiting 2.70 seconds before fallback handling...
[2026-06-12 07:50:46,961.961 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 07:50:46,963.963 INFO    ] Checking for system updates...
[2026-06-12 07:50:46,999.999 INFO    ] 200
[2026-06-12 07:50:47,002.002 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:50:47,055.055 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 07:50:47,057.057 INFO    ] No update needed
[2026-06-12 07:50:47,058.058 INFO    ] Checking for camera pi updates...
[2026-06-12 07:50:47,078.078 INFO    ] 200
[2026-06-12 07:50:47,080.080 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:50:47,103.103 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 07:50:47,139.139 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 07:50:47,141.141 INFO    ] No camera update needed
[2026-06-12 07:50:47,142.142 INFO    ] Script finished. Safe exiting...
[2026-06-12 07:50:47,143.143 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 07:50:47,146.146 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 07:50:47,149.149 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 07:50:49,188.188 INFO    ] ================================================
[2026-06-12 07:50:49,204.204 INFO    ] Launching Daemon at Fri Jun 12 07:50:49 IST 2026
[2026-06-12 07:50:49,214.214 INFO    ] ================================================
[2026-06-12 07:50:49,558.558 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 07:50:49
[2026-06-12 07:50:49,874.874 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 07:50:50,007.007 INFO    ] Initializing speech engine...
[2026-06-12 07:50:50,020.020 INFO    ] 2026-06-12 07:50:50
[2026-06-12 07:50:50,226.226 INFO    ] 2026-06-12 07:50:50
[2026-06-12 07:50:50,254.254 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 07:50:50,439.439 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 07:50:50,449.449 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 07:50:50,572.572 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 07:50:50,635.635 INFO    ] time= 12/06/2026 07:50:50
[2026-06-12 07:50:50,667.667 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 07:50:50,674.674 INFO    ] Checking for existing commands in stream...
[2026-06-12 07:50:50,740.740 INFO    ] No existing commands found in stream
[2026-06-12 07:50:55,754.754 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 07:50:55,757.757 INFO    ] Waiting 1.12 seconds before fallback handling...
[2026-06-12 07:50:57,245.245 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 07:50:57,247.247 INFO    ] Checking for system updates...
[2026-06-12 07:50:57,269.269 INFO    ] 200
[2026-06-12 07:50:57,270.270 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:50:57,303.303 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 07:50:57,304.304 INFO    ] No update needed
[2026-06-12 07:50:57,305.305 INFO    ] Checking for camera pi updates...
[2026-06-12 07:50:57,325.325 INFO    ] 200
[2026-06-12 07:50:57,326.326 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:50:57,349.349 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 07:50:57,397.397 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 07:50:57,399.399 INFO    ] No camera update needed
[2026-06-12 07:50:57,400.400 INFO    ] Script finished. Safe exiting...
[2026-06-12 07:50:57,401.401 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 07:50:57,404.404 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 07:50:57,407.407 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 07:50:59,445.445 INFO    ] ================================================
[2026-06-12 07:50:59,461.461 INFO    ] Launching Daemon at Fri Jun 12 07:50:59 IST 2026
[2026-06-12 07:50:59,471.471 INFO    ] ================================================
[2026-06-12 07:50:59,805.805 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 07:50:59
[2026-06-12 07:51:00,117.117 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 07:51:00,254.254 INFO    ] Initializing speech engine...
[2026-06-12 07:51:00,265.265 INFO    ] 2026-06-12 07:51:00
[2026-06-12 07:51:00,470.470 INFO    ] 2026-06-12 07:51:00
[2026-06-12 07:51:00,499.499 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 07:51:00,685.685 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 07:51:00,688.688 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 07:51:00,819.819 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 07:51:00,875.875 INFO    ] time= 12/06/2026 07:51:00
[2026-06-12 07:51:00,911.911 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 07:51:00,921.921 INFO    ] Checking for existing commands in stream...
[2026-06-12 07:51:00,994.994 INFO    ] No existing commands found in stream
[2026-06-12 07:51:06,002.002 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 07:51:06,005.005 INFO    ] Waiting 1.94 seconds before fallback handling...
[2026-06-12 07:51:08,320.320 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 07:51:08,321.321 INFO    ] Checking for system updates...
[2026-06-12 07:51:08,343.343 INFO    ] 200
[2026-06-12 07:51:08,345.345 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:51:08,377.377 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 07:51:08,379.379 INFO    ] No update needed
[2026-06-12 07:51:08,380.380 INFO    ] Checking for camera pi updates...
[2026-06-12 07:51:08,400.400 INFO    ] 200
[2026-06-12 07:51:08,401.401 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:51:08,425.425 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 07:51:08,562.562 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 07:51:08,564.564 INFO    ] No camera update needed
[2026-06-12 07:51:08,565.565 INFO    ] Script finished. Safe exiting...
[2026-06-12 07:51:08,566.566 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 07:51:08,569.569 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 07:51:08,572.572 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 07:51:10,615.615 INFO    ] ================================================
[2026-06-12 07:51:10,630.630 INFO    ] Launching Daemon at Fri Jun 12 07:51:10 IST 2026
[2026-06-12 07:51:10,641.641 INFO    ] ================================================
[2026-06-12 07:51:11,011.011 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 07:51:11
[2026-06-12 07:51:11,350.350 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 07:51:11,502.502 INFO    ] Initializing speech engine...
[2026-06-12 07:51:11,506.506 INFO    ] 2026-06-12 07:51:11
[2026-06-12 07:51:11,712.712 INFO    ] 2026-06-12 07:51:11
[2026-06-12 07:51:11,741.741 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 07:51:11,925.925 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 07:51:11,934.934 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 07:51:12,063.063 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 07:51:12,127.127 INFO    ] time= 12/06/2026 07:51:12
[2026-06-12 07:51:12,154.154 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 07:51:12,155.155 INFO    ] Checking for existing commands in stream...
[2026-06-12 07:51:12,250.250 INFO    ] No existing commands found in stream
[2026-06-12 07:51:17,264.264 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 07:51:17,267.267 INFO    ] Waiting 0.38 seconds before fallback handling...
[2026-06-12 07:51:18,022.022 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 07:51:18,024.024 INFO    ] Checking for system updates...
[2026-06-12 07:51:18,044.044 INFO    ] 200
[2026-06-12 07:51:18,046.046 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:51:18,080.080 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 07:51:18,081.081 INFO    ] No update needed
[2026-06-12 07:51:18,083.083 INFO    ] Checking for camera pi updates...
[2026-06-12 07:51:18,102.102 INFO    ] 200
[2026-06-12 07:51:18,103.103 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:51:18,126.126 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 07:51:18,167.167 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 07:51:18,168.168 INFO    ] No camera update needed
[2026-06-12 07:51:18,170.170 INFO    ] Script finished. Safe exiting...
[2026-06-12 07:51:18,171.171 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 07:51:18,174.174 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 07:51:18,177.177 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 07:51:20,214.214 INFO    ] ================================================
[2026-06-12 07:51:20,229.229 INFO    ] Launching Daemon at Fri Jun 12 07:51:20 IST 2026
[2026-06-12 07:51:20,240.240 INFO    ] ================================================
[2026-06-12 07:51:20,570.570 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 07:51:20
[2026-06-12 07:51:20,882.882 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 07:51:21,014.014 INFO    ] Initializing speech engine...
[2026-06-12 07:51:21,022.022 INFO    ] 2026-06-12 07:51:21
[2026-06-12 07:51:21,235.235 INFO    ] 2026-06-12 07:51:21
[2026-06-12 07:51:21,265.265 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 07:51:21,451.451 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 07:51:21,455.455 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 07:51:21,593.593 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 07:51:21,662.662 INFO    ] time= 12/06/2026 07:51:21
[2026-06-12 07:51:21,686.686 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 07:51:21,687.687 INFO    ] Checking for existing commands in stream...
[2026-06-12 07:51:21,758.758 INFO    ] No existing commands found in stream
[2026-06-12 07:51:26,769.769 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 07:51:26,772.772 INFO    ] Waiting 1.80 seconds before fallback handling...
[2026-06-12 07:51:28,971.971 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 07:51:28,974.974 INFO    ] Checking for system updates...
[2026-06-12 07:51:29,015.015 INFO    ] 200
[2026-06-12 07:51:29,017.017 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:51:29,069.069 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 07:51:29,072.072 INFO    ] No update needed
[2026-06-12 07:51:29,074.074 INFO    ] Checking for camera pi updates...
[2026-06-12 07:51:29,105.105 INFO    ] 200
[2026-06-12 07:51:29,106.106 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:51:29,130.130 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 07:51:29,166.166 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 07:51:29,167.167 INFO    ] No camera update needed
[2026-06-12 07:51:29,168.168 INFO    ] Script finished. Safe exiting...
[2026-06-12 07:51:29,170.170 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 07:51:29,173.173 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 07:51:29,175.175 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 07:51:31,213.213 INFO    ] ================================================
[2026-06-12 07:51:31,229.229 INFO    ] Launching Daemon at Fri Jun 12 07:51:31 IST 2026
[2026-06-12 07:51:31,239.239 INFO    ] ================================================
[2026-06-12 07:51:31,597.597 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 07:51:31
[2026-06-12 07:51:31,969.969 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 07:51:32,144.144 INFO    ] Initializing speech engine...
[2026-06-12 07:51:32,150.150 INFO    ] 2026-06-12 07:51:32
[2026-06-12 07:51:32,352.352 INFO    ] 2026-06-12 07:51:32
[2026-06-12 07:51:32,390.390 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 07:51:32,605.605 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 07:51:32,609.609 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 07:51:32,763.763 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 07:51:32,816.816 INFO    ] time= 12/06/2026 07:51:32
[2026-06-12 07:51:32,839.839 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 07:51:32,846.846 INFO    ] Checking for existing commands in stream...
[2026-06-12 07:51:32,919.919 INFO    ] No existing commands found in stream
[2026-06-12 07:51:37,947.947 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 07:51:37,950.950 INFO    ] Waiting 1.01 seconds before fallback handling...
[2026-06-12 07:51:39,328.328 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 07:51:39,329.329 INFO    ] Checking for system updates...
[2026-06-12 07:51:39,353.353 INFO    ] 200
[2026-06-12 07:51:39,354.354 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:51:39,390.390 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 07:51:39,392.392 INFO    ] No update needed
[2026-06-12 07:51:39,393.393 INFO    ] Checking for camera pi updates...
[2026-06-12 07:51:39,417.417 INFO    ] 200
[2026-06-12 07:51:39,418.418 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:51:39,444.444 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 07:51:39,477.477 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 07:51:39,478.478 INFO    ] No camera update needed
[2026-06-12 07:51:39,480.480 INFO    ] Script finished. Safe exiting...
[2026-06-12 07:51:39,481.481 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 07:51:39,485.485 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 07:51:39,488.488 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 07:51:41,526.526 INFO    ] ================================================
[2026-06-12 07:51:41,542.542 INFO    ] Launching Daemon at Fri Jun 12 07:51:41 IST 2026
[2026-06-12 07:51:41,553.553 INFO    ] ================================================
[2026-06-12 07:51:41,894.894 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 07:51:41
[2026-06-12 07:51:42,211.211 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 07:51:42,344.344 INFO    ] Initializing speech engine...
[2026-06-12 07:51:42,356.356 INFO    ] 2026-06-12 07:51:42
[2026-06-12 07:51:42,564.564 INFO    ] 2026-06-12 07:51:42
[2026-06-12 07:51:42,593.593 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 07:51:42,777.777 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 07:51:42,780.780 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 07:51:42,921.921 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 07:51:42,979.979 INFO    ] time= 12/06/2026 07:51:42
[2026-06-12 07:51:43,007.007 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 07:51:43,013.013 INFO    ] Checking for existing commands in stream...
[2026-06-12 07:51:43,080.080 INFO    ] No existing commands found in stream
[2026-06-12 07:51:48,089.089 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 07:51:48,092.092 INFO    ] Waiting 3.88 seconds before fallback handling...
[2026-06-12 07:51:52,360.360 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 07:51:52,362.362 INFO    ] Checking for system updates...
[2026-06-12 07:51:52,384.384 INFO    ] 200
[2026-06-12 07:51:52,386.386 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:51:52,418.418 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 07:51:52,420.420 INFO    ] No update needed
[2026-06-12 07:51:52,421.421 INFO    ] Checking for camera pi updates...
[2026-06-12 07:51:52,442.442 INFO    ] 200
[2026-06-12 07:51:52,443.443 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:51:52,467.467 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 07:51:52,513.513 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 07:51:52,515.515 INFO    ] No camera update needed
[2026-06-12 07:51:52,516.516 INFO    ] Script finished. Safe exiting...
[2026-06-12 07:51:52,517.517 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 07:51:52,520.520 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 07:51:52,523.523 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 07:51:54,566.566 INFO    ] ================================================
[2026-06-12 07:51:54,582.582 INFO    ] Launching Daemon at Fri Jun 12 07:51:54 IST 2026
[2026-06-12 07:51:54,592.592 INFO    ] ================================================
[2026-06-12 07:51:54,948.948 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 07:51:54
[2026-06-12 07:51:55,262.262 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 07:51:55,394.394 INFO    ] Initializing speech engine...
[2026-06-12 07:51:55,398.398 INFO    ] 2026-06-12 07:51:55
[2026-06-12 07:51:55,609.609 INFO    ] 2026-06-12 07:51:55
[2026-06-12 07:51:55,637.637 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 07:51:55,795.795 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 07:51:55,862.862 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 07:51:56,012.012 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 07:51:56,076.076 INFO    ] time= 12/06/2026 07:51:56
[2026-06-12 07:51:56,111.111 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 07:51:56,118.118 INFO    ] Checking for existing commands in stream...
[2026-06-12 07:51:56,188.188 INFO    ] No existing commands found in stream
[2026-06-12 07:52:01,199.199 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 07:52:01,203.203 INFO    ] Waiting 1.72 seconds before fallback handling...
[2026-06-12 07:52:03,243.243 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 07:52:03,245.245 INFO    ] Checking for system updates...
[2026-06-12 07:52:03,265.265 INFO    ] 200
[2026-06-12 07:52:03,267.267 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:52:03,297.297 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 07:52:03,298.298 INFO    ] No update needed
[2026-06-12 07:52:03,300.300 INFO    ] Checking for camera pi updates...
[2026-06-12 07:52:03,319.319 INFO    ] 200
[2026-06-12 07:52:03,321.321 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:52:03,346.346 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 07:52:03,388.388 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 07:52:03,390.390 INFO    ] No camera update needed
[2026-06-12 07:52:03,391.391 INFO    ] Script finished. Safe exiting...
[2026-06-12 07:52:03,393.393 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 07:52:03,396.396 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 07:52:03,399.399 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 07:52:05,437.437 INFO    ] ================================================
[2026-06-12 07:52:05,452.452 INFO    ] Launching Daemon at Fri Jun 12 07:52:05 IST 2026
[2026-06-12 07:52:05,463.463 INFO    ] ================================================
[2026-06-12 07:52:05,791.791 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 07:52:05
[2026-06-12 07:52:06,124.124 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 07:52:06,275.275 INFO    ] Initializing speech engine...
[2026-06-12 07:52:06,280.280 INFO    ] 2026-06-12 07:52:06
[2026-06-12 07:52:06,471.471 INFO    ] 2026-06-12 07:52:06
[2026-06-12 07:52:06,506.506 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 07:52:06,652.652 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 07:52:06,715.715 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 07:52:06,873.873 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 07:52:06,921.921 INFO    ] time= 12/06/2026 07:52:06
[2026-06-12 07:52:06,942.942 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 07:52:06,949.949 INFO    ] Checking for existing commands in stream...
[2026-06-12 07:52:07,015.015 INFO    ] No existing commands found in stream
[2026-06-12 07:52:12,024.024 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 07:52:12,028.028 INFO    ] Waiting 2.16 seconds before fallback handling...
[2026-06-12 07:52:14,546.546 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 07:52:14,548.548 INFO    ] Checking for system updates...
[2026-06-12 07:52:14,570.570 INFO    ] 200
[2026-06-12 07:52:14,572.572 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:52:14,602.602 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 07:52:14,603.603 INFO    ] No update needed
[2026-06-12 07:52:14,604.604 INFO    ] Checking for camera pi updates...
[2026-06-12 07:52:14,624.624 INFO    ] 200
[2026-06-12 07:52:14,625.625 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:52:14,648.648 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 07:52:14,680.680 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 07:52:14,681.681 INFO    ] No camera update needed
[2026-06-12 07:52:14,683.683 INFO    ] Script finished. Safe exiting...
[2026-06-12 07:52:14,684.684 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 07:52:14,687.687 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 07:52:14,689.689 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 07:52:16,730.730 INFO    ] ================================================
[2026-06-12 07:52:16,748.748 INFO    ] Launching Daemon at Fri Jun 12 07:52:16 IST 2026
[2026-06-12 07:52:16,762.762 INFO    ] ================================================
[2026-06-12 07:52:17,102.102 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 07:52:17
[2026-06-12 07:52:17,420.420 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 07:52:17,551.551 INFO    ] Initializing speech engine...
[2026-06-12 07:52:17,556.556 INFO    ] 2026-06-12 07:52:17
[2026-06-12 07:52:17,774.774 INFO    ] 2026-06-12 07:52:17
[2026-06-12 07:52:17,803.803 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 07:52:17,986.986 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 07:52:17,990.990 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 07:52:18,137.137 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 07:52:18,195.195 INFO    ] time= 12/06/2026 07:52:18
[2026-06-12 07:52:18,218.218 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 07:52:18,224.224 INFO    ] Checking for existing commands in stream...
[2026-06-12 07:52:18,291.291 INFO    ] No existing commands found in stream
[2026-06-12 07:52:23,305.305 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 07:52:23,308.308 INFO    ] Waiting 1.23 seconds before fallback handling...
[2026-06-12 07:52:24,904.904 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 07:52:24,905.905 INFO    ] Checking for system updates...
[2026-06-12 07:52:24,927.927 INFO    ] 200
[2026-06-12 07:52:24,928.928 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:52:24,961.961 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 07:52:24,963.963 INFO    ] No update needed
[2026-06-12 07:52:24,964.964 INFO    ] Checking for camera pi updates...
[2026-06-12 07:52:24,983.983 INFO    ] 200
[2026-06-12 07:52:24,985.985 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:52:25,010.010 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 07:52:25,050.050 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 07:52:25,051.051 INFO    ] No camera update needed
[2026-06-12 07:52:25,053.053 INFO    ] Script finished. Safe exiting...
[2026-06-12 07:52:25,054.054 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 07:52:25,057.057 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 07:52:25,060.060 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 07:52:27,100.100 INFO    ] ================================================
[2026-06-12 07:52:27,115.115 INFO    ] Launching Daemon at Fri Jun 12 07:52:27 IST 2026
[2026-06-12 07:52:27,126.126 INFO    ] ================================================
[2026-06-12 07:52:27,494.494 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 07:52:27
[2026-06-12 07:52:27,807.807 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 07:52:27,950.950 INFO    ] Initializing speech engine...
[2026-06-12 07:52:27,955.955 INFO    ] 2026-06-12 07:52:27
[2026-06-12 07:52:28,159.159 INFO    ] 2026-06-12 07:52:28
[2026-06-12 07:52:28,188.188 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 07:52:28,376.376 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 07:52:28,384.384 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 07:52:28,517.517 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 07:52:28,584.584 INFO    ] time= 12/06/2026 07:52:28
[2026-06-12 07:52:28,609.609 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 07:52:28,610.610 INFO    ] Checking for existing commands in stream...
[2026-06-12 07:52:28,683.683 INFO    ] No existing commands found in stream
[2026-06-12 07:52:33,707.707 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 07:52:33,710.710 INFO    ] Waiting 1.14 seconds before fallback handling...
[2026-06-12 07:52:35,211.211 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 07:52:35,213.213 INFO    ] Checking for system updates...
[2026-06-12 07:52:35,234.234 INFO    ] 200
[2026-06-12 07:52:35,235.235 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:52:35,265.265 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 07:52:35,267.267 INFO    ] No update needed
[2026-06-12 07:52:35,268.268 INFO    ] Checking for camera pi updates...
[2026-06-12 07:52:35,288.288 INFO    ] 200
[2026-06-12 07:52:35,290.290 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:52:35,314.314 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 07:52:35,359.359 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 07:52:35,361.361 INFO    ] No camera update needed
[2026-06-12 07:52:35,362.362 INFO    ] Script finished. Safe exiting...
[2026-06-12 07:52:35,364.364 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 07:52:35,367.367 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 07:52:35,370.370 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 07:52:37,409.409 INFO    ] ================================================
[2026-06-12 07:52:37,424.424 INFO    ] Launching Daemon at Fri Jun 12 07:52:37 IST 2026
[2026-06-12 07:52:37,435.435 INFO    ] ================================================
[2026-06-12 07:52:37,801.801 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 07:52:37
[2026-06-12 07:52:38,115.115 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 07:52:38,245.245 INFO    ] Initializing speech engine...
[2026-06-12 07:52:38,249.249 INFO    ] 2026-06-12 07:52:38
[2026-06-12 07:52:38,443.443 INFO    ] 2026-06-12 07:52:38
[2026-06-12 07:52:38,488.488 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 07:52:38,648.648 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 07:52:38,703.703 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 07:52:38,862.862 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 07:52:38,911.911 INFO    ] time= 12/06/2026 07:52:38
[2026-06-12 07:52:38,951.951 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 07:52:38,975.975 INFO    ] Checking for existing commands in stream...
[2026-06-12 07:52:39,051.051 INFO    ] No existing commands found in stream
[2026-06-12 07:52:44,061.061 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 07:52:44,063.063 INFO    ] Waiting 3.99 seconds before fallback handling...
[2026-06-12 07:52:48,459.459 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 07:52:48,462.462 INFO    ] Checking for system updates...
[2026-06-12 07:52:48,499.499 INFO    ] 200
[2026-06-12 07:52:48,501.501 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:52:48,563.563 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 07:52:48,566.566 INFO    ] No update needed
[2026-06-12 07:52:48,568.568 INFO    ] Checking for camera pi updates...
[2026-06-12 07:52:48,602.602 INFO    ] 200
[2026-06-12 07:52:48,605.605 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:52:48,629.629 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 07:52:48,669.669 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 07:52:48,670.670 INFO    ] No camera update needed
[2026-06-12 07:52:48,672.672 INFO    ] Script finished. Safe exiting...
[2026-06-12 07:52:48,673.673 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 07:52:48,676.676 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 07:52:48,679.679 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 07:52:50,717.717 INFO    ] ================================================
[2026-06-12 07:52:50,732.732 INFO    ] Launching Daemon at Fri Jun 12 07:52:50 IST 2026
[2026-06-12 07:52:50,743.743 INFO    ] ================================================
[2026-06-12 07:52:51,117.117 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 07:52:51
[2026-06-12 07:52:51,433.433 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 07:52:51,565.565 INFO    ] Initializing speech engine...
[2026-06-12 07:52:51,573.573 INFO    ] 2026-06-12 07:52:51
[2026-06-12 07:52:51,790.790 INFO    ] 2026-06-12 07:52:51
[2026-06-12 07:52:51,818.818 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 07:52:52,001.001 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 07:52:52,011.011 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 07:52:52,128.128 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 07:52:52,130.130 INFO    ] time= 12/06/2026 07:52:52
[2026-06-12 07:52:52,163.163 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 07:52:52,219.219 INFO    ] Checking for existing commands in stream...
[2026-06-12 07:52:52,320.320 INFO    ] No existing commands found in stream
[2026-06-12 07:52:57,331.331 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 07:52:57,334.334 INFO    ] Waiting 2.68 seconds before fallback handling...
[2026-06-12 07:53:00,386.386 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 07:53:00,388.388 INFO    ] Checking for system updates...
[2026-06-12 07:53:00,410.410 INFO    ] 200
[2026-06-12 07:53:00,412.412 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:53:00,444.444 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 07:53:00,445.445 INFO    ] No update needed
[2026-06-12 07:53:00,447.447 INFO    ] Checking for camera pi updates...
[2026-06-12 07:53:00,475.475 INFO    ] 200
[2026-06-12 07:53:00,476.476 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:53:00,501.501 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 07:53:00,538.538 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 07:53:00,539.539 INFO    ] No camera update needed
[2026-06-12 07:53:00,541.541 INFO    ] Script finished. Safe exiting...
[2026-06-12 07:53:00,542.542 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 07:53:00,546.546 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 07:53:00,549.549 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 07:53:02,577.577 INFO    ] ================================================
[2026-06-12 07:53:02,586.586 INFO    ] Launching Daemon at Fri Jun 12 07:53:02 IST 2026
[2026-06-12 07:53:02,598.598 INFO    ] ================================================
[2026-06-12 07:53:02,942.942 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 07:53:02
[2026-06-12 07:53:03,259.259 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 07:53:03,403.403 INFO    ] Initializing speech engine...
[2026-06-12 07:53:03,408.408 INFO    ] 2026-06-12 07:53:03
[2026-06-12 07:53:03,611.611 INFO    ] 2026-06-12 07:53:03
[2026-06-12 07:53:03,639.639 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 07:53:03,823.823 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 07:53:03,832.832 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 07:53:03,967.967 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 07:53:04,028.028 INFO    ] time= 12/06/2026 07:53:03
[2026-06-12 07:53:04,052.052 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 07:53:04,059.059 INFO    ] Checking for existing commands in stream...
[2026-06-12 07:53:04,149.149 INFO    ] No existing commands found in stream
[2026-06-12 07:53:09,158.158 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 07:53:09,161.161 INFO    ] Waiting 0.11 seconds before fallback handling...
[2026-06-12 07:53:09,608.608 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 07:53:09,609.609 INFO    ] Checking for system updates...
[2026-06-12 07:53:09,630.630 INFO    ] 200
[2026-06-12 07:53:09,632.632 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:53:09,662.662 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 07:53:09,664.664 INFO    ] No update needed
[2026-06-12 07:53:09,665.665 INFO    ] Checking for camera pi updates...
[2026-06-12 07:53:09,687.687 INFO    ] 200
[2026-06-12 07:53:09,688.688 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:53:09,714.714 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 07:53:09,751.751 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 07:53:09,752.752 INFO    ] No camera update needed
[2026-06-12 07:53:09,753.753 INFO    ] Script finished. Safe exiting...
[2026-06-12 07:53:09,755.755 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 07:53:09,758.758 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 07:53:09,761.761 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 07:53:11,799.799 INFO    ] ================================================
[2026-06-12 07:53:11,814.814 INFO    ] Launching Daemon at Fri Jun 12 07:53:11 IST 2026
[2026-06-12 07:53:11,825.825 INFO    ] ================================================
[2026-06-12 07:53:12,156.156 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 07:53:12
[2026-06-12 07:53:12,472.472 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 07:53:12,606.606 INFO    ] Initializing speech engine...
[2026-06-12 07:53:12,610.610 INFO    ] 2026-06-12 07:53:12
[2026-06-12 07:53:12,814.814 INFO    ] 2026-06-12 07:53:12
[2026-06-12 07:53:12,849.849 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 07:53:13,006.006 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 07:53:13,039.039 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 07:53:13,216.216 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 07:53:13,268.268 INFO    ] time= 12/06/2026 07:53:13
[2026-06-12 07:53:13,301.301 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 07:53:13,325.325 INFO    ] Checking for existing commands in stream...
[2026-06-12 07:53:13,428.428 INFO    ] No existing commands found in stream
[2026-06-12 07:53:18,438.438 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 07:53:18,441.441 INFO    ] Waiting 3.94 seconds before fallback handling...
[2026-06-12 07:53:22,741.741 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 07:53:22,743.743 INFO    ] Checking for system updates...
[2026-06-12 07:53:22,766.766 INFO    ] 200
[2026-06-12 07:53:22,768.768 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:53:22,801.801 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 07:53:22,802.802 INFO    ] No update needed
[2026-06-12 07:53:22,804.804 INFO    ] Checking for camera pi updates...
[2026-06-12 07:53:22,825.825 INFO    ] 200
[2026-06-12 07:53:22,826.826 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:53:22,851.851 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 07:53:22,990.990 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 07:53:22,991.991 INFO    ] No camera update needed
[2026-06-12 07:53:22,993.993 INFO    ] Script finished. Safe exiting...
[2026-06-12 07:53:22,994.994 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 07:53:22,998.998 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 07:53:23,001.001 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 07:53:25,040.040 INFO    ] ================================================
[2026-06-12 07:53:25,056.056 INFO    ] Launching Daemon at Fri Jun 12 07:53:25 IST 2026
[2026-06-12 07:53:25,066.066 INFO    ] ================================================
[2026-06-12 07:53:25,392.392 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 07:53:25
[2026-06-12 07:53:25,704.704 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 07:53:25,838.838 INFO    ] Initializing speech engine...
[2026-06-12 07:53:25,842.842 INFO    ] 2026-06-12 07:53:25
[2026-06-12 07:53:26,071.071 INFO    ] 2026-06-12 07:53:26
[2026-06-12 07:53:26,100.100 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 07:53:26,296.296 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 07:53:26,305.305 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 07:53:26,443.443 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 07:53:26,506.506 INFO    ] time= 12/06/2026 07:53:26
[2026-06-12 07:53:26,546.546 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 07:53:26,552.552 INFO    ] Checking for existing commands in stream...
[2026-06-12 07:53:26,630.630 INFO    ] No existing commands found in stream
[2026-06-12 07:53:31,638.638 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 07:53:31,640.640 INFO    ] Waiting 1.28 seconds before fallback handling...
[2026-06-12 07:53:33,282.282 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 07:53:33,283.283 INFO    ] Checking for system updates...
[2026-06-12 07:53:33,304.304 INFO    ] 200
[2026-06-12 07:53:33,306.306 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:53:33,339.339 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 07:53:33,340.340 INFO    ] No update needed
[2026-06-12 07:53:33,342.342 INFO    ] Checking for camera pi updates...
[2026-06-12 07:53:33,363.363 INFO    ] 200
[2026-06-12 07:53:33,365.365 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:53:33,388.388 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 07:53:33,424.424 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 07:53:33,425.425 INFO    ] No camera update needed
[2026-06-12 07:53:33,427.427 INFO    ] Script finished. Safe exiting...
[2026-06-12 07:53:33,428.428 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 07:53:33,432.432 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 07:53:33,435.435 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 07:53:35,475.475 INFO    ] ================================================
[2026-06-12 07:53:35,491.491 INFO    ] Launching Daemon at Fri Jun 12 07:53:35 IST 2026
[2026-06-12 07:53:35,502.502 INFO    ] ================================================
[2026-06-12 07:53:35,878.878 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 07:53:35
[2026-06-12 07:53:36,219.219 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 07:53:36,368.368 INFO    ] Initializing speech engine...
[2026-06-12 07:53:36,378.378 INFO    ] 2026-06-12 07:53:36
[2026-06-12 07:53:36,589.589 INFO    ] 2026-06-12 07:53:36
[2026-06-12 07:53:36,619.619 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 07:53:36,807.807 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 07:53:36,811.811 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 07:53:36,955.955 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 07:53:37,018.018 INFO    ] time= 12/06/2026 07:53:36
[2026-06-12 07:53:37,043.043 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 07:53:37,049.049 INFO    ] Checking for existing commands in stream...
[2026-06-12 07:53:37,118.118 INFO    ] No existing commands found in stream
[2026-06-12 07:53:42,132.132 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 07:53:42,135.135 INFO    ] Waiting 3.46 seconds before fallback handling...
[2026-06-12 07:53:45,967.967 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 07:53:45,968.968 INFO    ] Checking for system updates...
[2026-06-12 07:53:45,990.990 INFO    ] 200
[2026-06-12 07:53:45,991.991 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:53:46,022.022 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 07:53:46,023.023 INFO    ] No update needed
[2026-06-12 07:53:46,025.025 INFO    ] Checking for camera pi updates...
[2026-06-12 07:53:46,046.046 INFO    ] 200
[2026-06-12 07:53:46,047.047 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:53:46,073.073 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 07:53:46,120.120 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 07:53:46,121.121 INFO    ] No camera update needed
[2026-06-12 07:53:46,123.123 INFO    ] Script finished. Safe exiting...
[2026-06-12 07:53:46,124.124 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 07:53:46,127.127 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 07:53:46,131.131 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 07:53:48,170.170 INFO    ] ================================================
[2026-06-12 07:53:48,186.186 INFO    ] Launching Daemon at Fri Jun 12 07:53:48 IST 2026
[2026-06-12 07:53:48,197.197 INFO    ] ================================================
[2026-06-12 07:53:48,529.529 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 07:53:48
[2026-06-12 07:53:48,849.849 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 07:53:48,995.995 INFO    ] Initializing speech engine...
[2026-06-12 07:53:49,000.000 INFO    ] 2026-06-12 07:53:48
[2026-06-12 07:53:49,206.206 INFO    ] 2026-06-12 07:53:49
[2026-06-12 07:53:49,236.236 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 07:53:49,419.419 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 07:53:49,429.429 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 07:53:49,558.558 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 07:53:49,624.624 INFO    ] time= 12/06/2026 07:53:49
[2026-06-12 07:53:49,651.651 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 07:53:49,653.653 INFO    ] Checking for existing commands in stream...
[2026-06-12 07:53:49,750.750 INFO    ] No existing commands found in stream
[2026-06-12 07:53:54,764.764 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 07:53:54,767.767 INFO    ] Waiting 0.99 seconds before fallback handling...
[2026-06-12 07:53:56,124.124 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 07:53:56,126.126 INFO    ] Checking for system updates...
[2026-06-12 07:53:56,148.148 INFO    ] 200
[2026-06-12 07:53:56,149.149 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:53:56,181.181 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 07:53:56,183.183 INFO    ] No update needed
[2026-06-12 07:53:56,184.184 INFO    ] Checking for camera pi updates...
[2026-06-12 07:53:56,204.204 INFO    ] 200
[2026-06-12 07:53:56,205.205 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:53:56,230.230 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 07:53:56,278.278 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 07:53:56,279.279 INFO    ] No camera update needed
[2026-06-12 07:53:56,281.281 INFO    ] Script finished. Safe exiting...
[2026-06-12 07:53:56,282.282 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 07:53:56,285.285 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 07:53:56,288.288 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 07:53:58,326.326 INFO    ] ================================================
[2026-06-12 07:53:58,341.341 INFO    ] Launching Daemon at Fri Jun 12 07:53:58 IST 2026
[2026-06-12 07:53:58,352.352 INFO    ] ================================================
[2026-06-12 07:53:58,707.707 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 07:53:58
[2026-06-12 07:53:59,017.017 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 07:53:59,149.149 INFO    ] Initializing speech engine...
[2026-06-12 07:53:59,154.154 INFO    ] 2026-06-12 07:53:59
[2026-06-12 07:53:59,372.372 INFO    ] 2026-06-12 07:53:59
[2026-06-12 07:53:59,401.401 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 07:53:59,588.588 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 07:53:59,596.596 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 07:53:59,743.743 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 07:53:59,797.797 INFO    ] time= 12/06/2026 07:53:59
[2026-06-12 07:53:59,820.820 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 07:53:59,826.826 INFO    ] Checking for existing commands in stream...
[2026-06-12 07:53:59,894.894 INFO    ] No existing commands found in stream
[2026-06-12 07:54:04,903.903 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 07:54:04,912.912 INFO    ] Waiting 2.79 seconds before fallback handling...
[2026-06-12 07:54:08,062.062 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 07:54:08,063.063 INFO    ] Checking for system updates...
[2026-06-12 07:54:08,084.084 INFO    ] 200
[2026-06-12 07:54:08,085.085 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:54:08,117.117 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 07:54:08,118.118 INFO    ] No update needed
[2026-06-12 07:54:08,120.120 INFO    ] Checking for camera pi updates...
[2026-06-12 07:54:08,141.141 INFO    ] 200
[2026-06-12 07:54:08,143.143 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:54:08,166.166 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 07:54:08,190.190 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 07:54:08,191.191 INFO    ] No camera update needed
[2026-06-12 07:54:08,193.193 INFO    ] Script finished. Safe exiting...
[2026-06-12 07:54:08,194.194 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 07:54:08,197.197 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 07:54:08,200.200 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 07:54:10,239.239 INFO    ] ================================================
[2026-06-12 07:54:10,255.255 INFO    ] Launching Daemon at Fri Jun 12 07:54:10 IST 2026
[2026-06-12 07:54:10,266.266 INFO    ] ================================================
[2026-06-12 07:54:10,628.628 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 07:54:10
[2026-06-12 07:54:10,944.944 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 07:54:11,093.093 INFO    ] Initializing speech engine...
[2026-06-12 07:54:11,098.098 INFO    ] 2026-06-12 07:54:11
[2026-06-12 07:54:11,318.318 INFO    ] 2026-06-12 07:54:11
[2026-06-12 07:54:11,349.349 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 07:54:11,546.546 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 07:54:11,550.550 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 07:54:11,685.685 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 07:54:11,742.742 INFO    ] time= 12/06/2026 07:54:11
[2026-06-12 07:54:11,781.781 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 07:54:11,783.783 INFO    ] Checking for existing commands in stream...
[2026-06-12 07:54:11,854.854 INFO    ] No existing commands found in stream
[2026-06-12 07:54:16,862.862 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 07:54:16,864.864 INFO    ] Waiting 2.69 seconds before fallback handling...
[2026-06-12 07:54:19,933.933 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 07:54:19,934.934 INFO    ] Checking for system updates...
[2026-06-12 07:54:19,958.958 INFO    ] 200
[2026-06-12 07:54:19,959.959 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:54:19,992.992 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 07:54:19,994.994 INFO    ] No update needed
[2026-06-12 07:54:19,995.995 INFO    ] Checking for camera pi updates...
[2026-06-12 07:54:20,015.015 INFO    ] 200
[2026-06-12 07:54:20,017.017 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:54:20,042.042 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 07:54:20,094.094 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 07:54:20,095.095 INFO    ] No camera update needed
[2026-06-12 07:54:20,097.097 INFO    ] Script finished. Safe exiting...
[2026-06-12 07:54:20,098.098 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 07:54:20,101.101 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 07:54:20,104.104 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 07:54:22,144.144 INFO    ] ================================================
[2026-06-12 07:54:22,159.159 INFO    ] Launching Daemon at Fri Jun 12 07:54:22 IST 2026
[2026-06-12 07:54:22,170.170 INFO    ] ================================================
[2026-06-12 07:54:22,546.546 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 07:54:22
[2026-06-12 07:54:22,862.862 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 07:54:22,994.994 INFO    ] Initializing speech engine...
[2026-06-12 07:54:23,002.002 INFO    ] 2026-06-12 07:54:22
[2026-06-12 07:54:23,214.214 INFO    ] 2026-06-12 07:54:23
[2026-06-12 07:54:23,243.243 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 07:54:23,425.425 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 07:54:23,435.435 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 07:54:23,564.564 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 07:54:23,623.623 INFO    ] time= 12/06/2026 07:54:23
[2026-06-12 07:54:23,654.654 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 07:54:23,661.661 INFO    ] Checking for existing commands in stream...
[2026-06-12 07:54:23,726.726 INFO    ] No existing commands found in stream
[2026-06-12 07:54:28,737.737 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 07:54:28,740.740 INFO    ] Waiting 0.05 seconds before fallback handling...
[2026-06-12 07:54:29,133.133 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 07:54:29,135.135 INFO    ] Checking for system updates...
[2026-06-12 07:54:29,156.156 INFO    ] 200
[2026-06-12 07:54:29,157.157 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:54:29,188.188 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 07:54:29,189.189 INFO    ] No update needed
[2026-06-12 07:54:29,191.191 INFO    ] Checking for camera pi updates...
[2026-06-12 07:54:29,211.211 INFO    ] 200
[2026-06-12 07:54:29,212.212 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:54:29,237.237 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 07:54:29,273.273 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 07:54:29,275.275 INFO    ] No camera update needed
[2026-06-12 07:54:29,276.276 INFO    ] Script finished. Safe exiting...
[2026-06-12 07:54:29,277.277 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 07:54:29,281.281 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 07:54:29,284.284 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 07:54:31,322.322 INFO    ] ================================================
[2026-06-12 07:54:31,339.339 INFO    ] Launching Daemon at Fri Jun 12 07:54:31 IST 2026
[2026-06-12 07:54:31,352.352 INFO    ] ================================================
[2026-06-12 07:54:31,690.690 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 07:54:31
[2026-06-12 07:54:32,031.031 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 07:54:32,178.178 INFO    ] Initializing speech engine...
[2026-06-12 07:54:32,190.190 INFO    ] 2026-06-12 07:54:32
[2026-06-12 07:54:32,398.398 INFO    ] 2026-06-12 07:54:32
[2026-06-12 07:54:32,428.428 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 07:54:32,616.616 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 07:54:32,624.624 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 07:54:32,756.756 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 07:54:32,824.824 INFO    ] time= 12/06/2026 07:54:32
[2026-06-12 07:54:32,848.848 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 07:54:32,855.855 INFO    ] Checking for existing commands in stream...
[2026-06-12 07:54:32,922.922 INFO    ] No existing commands found in stream
[2026-06-12 07:54:37,931.931 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 07:54:37,934.934 INFO    ] Waiting 2.64 seconds before fallback handling...
[2026-06-12 07:54:40,956.956 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 07:54:40,957.957 INFO    ] Checking for system updates...
[2026-06-12 07:54:40,978.978 INFO    ] 200
[2026-06-12 07:54:40,979.979 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:54:41,013.013 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 07:54:41,015.015 INFO    ] No update needed
[2026-06-12 07:54:41,016.016 INFO    ] Checking for camera pi updates...
[2026-06-12 07:54:41,035.035 INFO    ] 200
[2026-06-12 07:54:41,037.037 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:54:41,062.062 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 07:54:41,100.100 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 07:54:41,101.101 INFO    ] No camera update needed
[2026-06-12 07:54:41,103.103 INFO    ] Script finished. Safe exiting...
[2026-06-12 07:54:41,104.104 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 07:54:41,107.107 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 07:54:41,110.110 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 07:54:43,151.151 INFO    ] ================================================
[2026-06-12 07:54:43,166.166 INFO    ] Launching Daemon at Fri Jun 12 07:54:43 IST 2026
[2026-06-12 07:54:43,178.178 INFO    ] ================================================
[2026-06-12 07:54:43,554.554 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 07:54:43
[2026-06-12 07:54:43,869.869 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 07:54:44,008.008 INFO    ] Initializing speech engine...
[2026-06-12 07:54:44,018.018 INFO    ] 2026-06-12 07:54:44
[2026-06-12 07:54:44,220.220 INFO    ] 2026-06-12 07:54:44
[2026-06-12 07:54:44,250.250 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 07:54:44,413.413 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 07:54:44,436.436 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 07:54:44,571.571 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 07:54:44,630.630 INFO    ] time= 12/06/2026 07:54:44
[2026-06-12 07:54:44,662.662 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 07:54:44,664.664 INFO    ] Checking for existing commands in stream...
[2026-06-12 07:54:44,734.734 INFO    ] No existing commands found in stream
[2026-06-12 07:54:49,748.748 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 07:54:49,751.751 INFO    ] Waiting 0.94 seconds before fallback handling...
[2026-06-12 07:54:51,051.051 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 07:54:51,052.052 INFO    ] Checking for system updates...
[2026-06-12 07:54:51,095.095 INFO    ] 200
[2026-06-12 07:54:51,098.098 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:54:51,139.139 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 07:54:51,141.141 INFO    ] No update needed
[2026-06-12 07:54:51,143.143 INFO    ] Checking for camera pi updates...
[2026-06-12 07:54:51,167.167 INFO    ] 200
[2026-06-12 07:54:51,169.169 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:54:51,205.205 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 07:54:51,245.245 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 07:54:51,246.246 INFO    ] No camera update needed
[2026-06-12 07:54:51,248.248 INFO    ] Script finished. Safe exiting...
[2026-06-12 07:54:51,249.249 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 07:54:51,253.253 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 07:54:51,256.256 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 07:54:53,294.294 INFO    ] ================================================
[2026-06-12 07:54:53,309.309 INFO    ] Launching Daemon at Fri Jun 12 07:54:53 IST 2026
[2026-06-12 07:54:53,320.320 INFO    ] ================================================
[2026-06-12 07:54:53,681.681 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 07:54:53
[2026-06-12 07:54:54,016.016 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 07:54:54,167.167 INFO    ] Initializing speech engine...
[2026-06-12 07:54:54,173.173 INFO    ] 2026-06-12 07:54:54
[2026-06-12 07:54:54,382.382 INFO    ] 2026-06-12 07:54:54
[2026-06-12 07:54:54,411.411 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 07:54:54,599.599 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 07:54:54,609.609 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 07:54:54,788.788 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 07:54:54,830.830 INFO    ] time= 12/06/2026 07:54:54
[2026-06-12 07:54:54,837.837 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 07:54:54,844.844 INFO    ] Checking for existing commands in stream...
[2026-06-12 07:54:54,912.912 INFO    ] No existing commands found in stream
[2026-06-12 07:54:59,921.921 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 07:54:59,924.924 INFO    ] Waiting 2.08 seconds before fallback handling...
[2026-06-12 07:55:02,333.333 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 07:55:02,336.336 INFO    ] Checking for system updates...
[2026-06-12 07:55:02,368.368 INFO    ] 200
[2026-06-12 07:55:02,370.370 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:55:02,417.417 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 07:55:02,419.419 INFO    ] No update needed
[2026-06-12 07:55:02,421.421 INFO    ] Checking for camera pi updates...
[2026-06-12 07:55:02,455.455 INFO    ] 200
[2026-06-12 07:55:02,457.457 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:55:02,481.481 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 07:55:02,505.505 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 07:55:02,507.507 INFO    ] No camera update needed
[2026-06-12 07:55:02,508.508 INFO    ] Script finished. Safe exiting...
[2026-06-12 07:55:02,510.510 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 07:55:02,515.515 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 07:55:02,518.518 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 07:55:04,557.557 INFO    ] ================================================
[2026-06-12 07:55:04,573.573 INFO    ] Launching Daemon at Fri Jun 12 07:55:04 IST 2026
[2026-06-12 07:55:04,584.584 INFO    ] ================================================
[2026-06-12 07:55:04,937.937 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 07:55:04
[2026-06-12 07:55:05,271.271 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 07:55:05,422.422 INFO    ] Initializing speech engine...
[2026-06-12 07:55:05,427.427 INFO    ] 2026-06-12 07:55:05
[2026-06-12 07:55:05,632.632 INFO    ] 2026-06-12 07:55:05
[2026-06-12 07:55:05,661.661 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 07:55:05,857.857 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 07:55:05,867.867 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 07:55:05,996.996 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 07:55:06,062.062 INFO    ] time= 12/06/2026 07:55:06
[2026-06-12 07:55:06,086.086 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 07:55:06,093.093 INFO    ] Checking for existing commands in stream...
[2026-06-12 07:55:06,160.160 INFO    ] No existing commands found in stream
[2026-06-12 07:55:11,169.169 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 07:55:11,172.172 INFO    ] Waiting 0.30 seconds before fallback handling...
[2026-06-12 07:55:11,821.821 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 07:55:11,823.823 INFO    ] Checking for system updates...
[2026-06-12 07:55:11,844.844 INFO    ] 200
[2026-06-12 07:55:11,845.845 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:55:11,877.877 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 07:55:11,878.878 INFO    ] No update needed
[2026-06-12 07:55:11,880.880 INFO    ] Checking for camera pi updates...
[2026-06-12 07:55:11,902.902 INFO    ] 200
[2026-06-12 07:55:11,903.903 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:55:11,926.926 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 07:55:11,947.947 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 07:55:11,949.949 INFO    ] No camera update needed
[2026-06-12 07:55:11,950.950 INFO    ] Script finished. Safe exiting...
[2026-06-12 07:55:11,951.951 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 07:55:11,954.954 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 07:55:11,957.957 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 07:55:14,995.995 INFO    ] ================================================
[2026-06-12 07:55:14,010.010 INFO    ] Launching Daemon at Fri Jun 12 07:55:14 IST 2026
[2026-06-12 07:55:14,021.021 INFO    ] ================================================
[2026-06-12 07:55:14,344.344 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 07:55:14
[2026-06-12 07:55:14,657.657 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 07:55:14,799.799 INFO    ] Initializing speech engine...
[2026-06-12 07:55:14,804.804 INFO    ] 2026-06-12 07:55:14
[2026-06-12 07:55:15,007.007 INFO    ] 2026-06-12 07:55:14
[2026-06-12 07:55:15,035.035 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 07:55:15,208.208 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 07:55:15,221.221 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 07:55:15,357.357 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 07:55:15,421.421 INFO    ] time= 12/06/2026 07:55:15
[2026-06-12 07:55:15,448.448 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 07:55:15,455.455 INFO    ] Checking for existing commands in stream...
[2026-06-12 07:55:15,521.521 INFO    ] No existing commands found in stream
[2026-06-12 07:55:20,530.530 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 07:55:20,533.533 INFO    ] Waiting 1.32 seconds before fallback handling...
[2026-06-12 07:55:22,226.226 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 07:55:22,227.227 INFO    ] Checking for system updates...
[2026-06-12 07:55:22,248.248 INFO    ] 200
[2026-06-12 07:55:22,249.249 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:55:22,284.284 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 07:55:22,285.285 INFO    ] No update needed
[2026-06-12 07:55:22,287.287 INFO    ] Checking for camera pi updates...
[2026-06-12 07:55:22,307.307 INFO    ] 200
[2026-06-12 07:55:22,308.308 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:55:22,333.333 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 07:55:22,377.377 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 07:55:22,378.378 INFO    ] No camera update needed
[2026-06-12 07:55:22,380.380 INFO    ] Script finished. Safe exiting...
[2026-06-12 07:55:22,381.381 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 07:55:22,384.384 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 07:55:22,387.387 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 07:55:24,428.428 INFO    ] ================================================
[2026-06-12 07:55:24,447.447 INFO    ] Launching Daemon at Fri Jun 12 07:55:24 IST 2026
[2026-06-12 07:55:24,457.457 INFO    ] ================================================
[2026-06-12 07:55:24,792.792 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 07:55:24
[2026-06-12 07:55:25,106.106 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 07:55:25,249.249 INFO    ] Initializing speech engine...
[2026-06-12 07:55:25,254.254 INFO    ] 2026-06-12 07:55:25
[2026-06-12 07:55:25,457.457 INFO    ] 2026-06-12 07:55:25
[2026-06-12 07:55:25,484.484 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 07:55:25,668.668 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 07:55:25,677.677 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 07:55:25,805.805 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 07:55:25,861.861 INFO    ] time= 12/06/2026 07:55:25
[2026-06-12 07:55:25,895.895 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 07:55:25,900.900 INFO    ] Checking for existing commands in stream...
[2026-06-12 07:55:25,972.972 INFO    ] No existing commands found in stream
[2026-06-12 07:55:30,981.981 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 07:55:30,984.984 INFO    ] Waiting 2.86 seconds before fallback handling...
[2026-06-12 07:55:34,267.267 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 07:55:34,268.268 INFO    ] Checking for system updates...
[2026-06-12 07:55:34,289.289 INFO    ] 200
[2026-06-12 07:55:34,290.290 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:55:34,320.320 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 07:55:34,321.321 INFO    ] No update needed
[2026-06-12 07:55:34,323.323 INFO    ] Checking for camera pi updates...
[2026-06-12 07:55:34,343.343 INFO    ] 200
[2026-06-12 07:55:34,344.344 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:55:34,369.369 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 07:55:34,406.406 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 07:55:34,407.407 INFO    ] No camera update needed
[2026-06-12 07:55:34,408.408 INFO    ] Script finished. Safe exiting...
[2026-06-12 07:55:34,410.410 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 07:55:34,413.413 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 07:55:34,415.415 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 07:55:36,456.456 INFO    ] ================================================
[2026-06-12 07:55:36,472.472 INFO    ] Launching Daemon at Fri Jun 12 07:55:36 IST 2026
[2026-06-12 07:55:36,483.483 INFO    ] ================================================
[2026-06-12 07:55:36,852.852 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 07:55:36
[2026-06-12 07:55:37,168.168 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 07:55:37,310.310 INFO    ] Initializing speech engine...
[2026-06-12 07:55:37,318.318 INFO    ] 2026-06-12 07:55:37
[2026-06-12 07:55:37,534.534 INFO    ] 2026-06-12 07:55:37
[2026-06-12 07:55:37,565.565 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 07:55:37,761.761 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 07:55:37,765.765 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 07:55:37,917.917 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 07:55:37,976.976 INFO    ] time= 12/06/2026 07:55:37
[2026-06-12 07:55:38,008.008 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 07:55:38,010.010 INFO    ] Checking for existing commands in stream...
[2026-06-12 07:55:38,084.084 INFO    ] No existing commands found in stream
[2026-06-12 07:55:43,095.095 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 07:55:43,098.098 INFO    ] Waiting 3.67 seconds before fallback handling...
[2026-06-12 07:55:47,155.155 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 07:55:47,156.156 INFO    ] Checking for system updates...
[2026-06-12 07:55:47,178.178 INFO    ] 200
[2026-06-12 07:55:47,180.180 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:55:47,213.213 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 07:55:47,214.214 INFO    ] No update needed
[2026-06-12 07:55:47,216.216 INFO    ] Checking for camera pi updates...
[2026-06-12 07:55:47,236.236 INFO    ] 200
[2026-06-12 07:55:47,238.238 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:55:47,264.264 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 07:55:47,304.304 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 07:55:47,305.305 INFO    ] No camera update needed
[2026-06-12 07:55:47,307.307 INFO    ] Script finished. Safe exiting...
[2026-06-12 07:55:47,308.308 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 07:55:47,311.311 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 07:55:47,314.314 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 07:55:49,354.354 INFO    ] ================================================
[2026-06-12 07:55:49,369.369 INFO    ] Launching Daemon at Fri Jun 12 07:55:49 IST 2026
[2026-06-12 07:55:49,380.380 INFO    ] ================================================
[2026-06-12 07:55:49,722.722 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 07:55:49
[2026-06-12 07:55:50,036.036 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 07:55:50,172.172 INFO    ] Initializing speech engine...
[2026-06-12 07:55:50,184.184 INFO    ] 2026-06-12 07:55:50
[2026-06-12 07:55:50,401.401 INFO    ] 2026-06-12 07:55:50
[2026-06-12 07:55:50,432.432 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 07:55:50,627.627 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 07:55:50,630.630 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 07:55:50,772.772 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 07:55:50,824.824 INFO    ] time= 12/06/2026 07:55:50
[2026-06-12 07:55:50,863.863 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 07:55:50,875.875 INFO    ] Checking for existing commands in stream...
[2026-06-12 07:55:50,976.976 INFO    ] No existing commands found in stream
[2026-06-12 07:55:55,985.985 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 07:55:55,987.987 INFO    ] Waiting 1.61 seconds before fallback handling...
[2026-06-12 07:55:57,971.971 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 07:55:57,972.972 INFO    ] Checking for system updates...
[2026-06-12 07:55:57,993.993 INFO    ] 200
[2026-06-12 07:55:57,994.994 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:55:58,025.025 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 07:55:58,026.026 INFO    ] No update needed
[2026-06-12 07:55:58,027.027 INFO    ] Checking for camera pi updates...
[2026-06-12 07:55:58,048.048 INFO    ] 200
[2026-06-12 07:55:58,049.049 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:55:58,077.077 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 07:55:58,113.113 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 07:55:58,114.114 INFO    ] No camera update needed
[2026-06-12 07:55:58,115.115 INFO    ] Script finished. Safe exiting...
[2026-06-12 07:55:58,117.117 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 07:55:58,120.120 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 07:55:58,123.123 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 07:56:00,162.162 INFO    ] ================================================
[2026-06-12 07:56:00,177.177 INFO    ] Launching Daemon at Fri Jun 12 07:56:00 IST 2026
[2026-06-12 07:56:00,187.187 INFO    ] ================================================
[2026-06-12 07:56:00,562.562 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 07:56:00
[2026-06-12 07:56:00,878.878 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 07:56:01,022.022 INFO    ] Initializing speech engine...
[2026-06-12 07:56:01,028.028 INFO    ] 2026-06-12 07:56:01
[2026-06-12 07:56:01,232.232 INFO    ] 2026-06-12 07:56:01
[2026-06-12 07:56:01,261.261 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 07:56:01,444.444 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 07:56:01,453.453 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 07:56:01,581.581 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 07:56:01,640.640 INFO    ] time= 12/06/2026 07:56:01
[2026-06-12 07:56:01,672.672 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 07:56:01,678.678 INFO    ] Checking for existing commands in stream...
[2026-06-12 07:56:01,745.745 INFO    ] No existing commands found in stream
[2026-06-12 07:56:06,764.764 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 07:56:06,767.767 INFO    ] Waiting 3.91 seconds before fallback handling...
[2026-06-12 07:56:11,044.044 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 07:56:11,046.046 INFO    ] Checking for system updates...
[2026-06-12 07:56:11,067.067 INFO    ] 200
[2026-06-12 07:56:11,068.068 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:56:11,100.100 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 07:56:11,101.101 INFO    ] No update needed
[2026-06-12 07:56:11,103.103 INFO    ] Checking for camera pi updates...
[2026-06-12 07:56:11,123.123 INFO    ] 200
[2026-06-12 07:56:11,124.124 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:56:11,147.147 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 07:56:11,193.193 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 07:56:11,194.194 INFO    ] No camera update needed
[2026-06-12 07:56:11,196.196 INFO    ] Script finished. Safe exiting...
[2026-06-12 07:56:11,197.197 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 07:56:11,200.200 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 07:56:11,203.203 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 07:56:13,242.242 INFO    ] ================================================
[2026-06-12 07:56:13,257.257 INFO    ] Launching Daemon at Fri Jun 12 07:56:13 IST 2026
[2026-06-12 07:56:13,268.268 INFO    ] ================================================
[2026-06-12 07:56:13,619.619 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 07:56:13
[2026-06-12 07:56:13,954.954 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 07:56:14,099.099 INFO    ] Initializing speech engine...
[2026-06-12 07:56:14,110.110 INFO    ] 2026-06-12 07:56:14
[2026-06-12 07:56:14,321.321 INFO    ] 2026-06-12 07:56:14
[2026-06-12 07:56:14,350.350 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 07:56:14,538.538 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 07:56:14,548.548 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 07:56:14,701.701 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 07:56:14,756.756 INFO    ] time= 12/06/2026 07:56:14
[2026-06-12 07:56:14,773.773 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 07:56:14,779.779 INFO    ] Checking for existing commands in stream...
[2026-06-12 07:56:14,871.871 INFO    ] No existing commands found in stream
[2026-06-12 07:56:19,885.885 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 07:56:19,888.888 INFO    ] Waiting 1.55 seconds before fallback handling...
[2026-06-12 07:56:21,833.833 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 07:56:21,835.835 INFO    ] Checking for system updates...
[2026-06-12 07:56:21,856.856 INFO    ] 200
[2026-06-12 07:56:21,857.857 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:56:21,890.890 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 07:56:21,892.892 INFO    ] No update needed
[2026-06-12 07:56:21,893.893 INFO    ] Checking for camera pi updates...
[2026-06-12 07:56:21,913.913 INFO    ] 200
[2026-06-12 07:56:21,915.915 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:56:21,938.938 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 07:56:21,975.975 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 07:56:21,976.976 INFO    ] No camera update needed
[2026-06-12 07:56:21,978.978 INFO    ] Script finished. Safe exiting...
[2026-06-12 07:56:21,979.979 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 07:56:21,983.983 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 07:56:21,986.986 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 07:56:24,024.024 INFO    ] ================================================
[2026-06-12 07:56:24,039.039 INFO    ] Launching Daemon at Fri Jun 12 07:56:24 IST 2026
[2026-06-12 07:56:24,049.049 INFO    ] ================================================
[2026-06-12 07:56:24,416.416 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 07:56:24
[2026-06-12 07:56:24,729.729 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 07:56:24,862.862 INFO    ] Initializing speech engine...
[2026-06-12 07:56:24,870.870 INFO    ] 2026-06-12 07:56:24
[2026-06-12 07:56:25,093.093 INFO    ] 2026-06-12 07:56:25
[2026-06-12 07:56:25,123.123 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 07:56:25,254.254 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 07:56:25,321.321 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 07:56:25,465.465 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 07:56:25,523.523 INFO    ] time= 12/06/2026 07:56:25
[2026-06-12 07:56:25,556.556 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 07:56:25,567.567 INFO    ] Checking for existing commands in stream...
[2026-06-12 07:56:25,644.644 INFO    ] No existing commands found in stream
[2026-06-12 07:56:30,653.653 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 07:56:30,668.668 INFO    ] Waiting 0.23 seconds before fallback handling...
[2026-06-12 07:56:31,276.276 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 07:56:31,278.278 INFO    ] Checking for system updates...
[2026-06-12 07:56:31,299.299 INFO    ] 200
[2026-06-12 07:56:31,300.300 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:56:31,333.333 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 07:56:31,334.334 INFO    ] No update needed
[2026-06-12 07:56:31,335.335 INFO    ] Checking for camera pi updates...
[2026-06-12 07:56:31,355.355 INFO    ] 200
[2026-06-12 07:56:31,357.357 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:56:31,381.381 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 07:56:31,411.411 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 07:56:31,413.413 INFO    ] No camera update needed
[2026-06-12 07:56:31,414.414 INFO    ] Script finished. Safe exiting...
[2026-06-12 07:56:31,415.415 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 07:56:31,418.418 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 07:56:31,421.421 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 07:56:33,454.454 INFO    ] ================================================
[2026-06-12 07:56:33,470.470 INFO    ] Launching Daemon at Fri Jun 12 07:56:33 IST 2026
[2026-06-12 07:56:33,480.480 INFO    ] ================================================
[2026-06-12 07:56:33,853.853 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 07:56:33
[2026-06-12 07:56:34,171.171 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 07:56:34,305.305 INFO    ] Initializing speech engine...
[2026-06-12 07:56:34,317.317 INFO    ] 2026-06-12 07:56:34
[2026-06-12 07:56:34,527.527 INFO    ] 2026-06-12 07:56:34
[2026-06-12 07:56:34,556.556 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 07:56:34,743.743 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 07:56:34,752.752 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 07:56:34,898.898 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 07:56:34,951.951 INFO    ] time= 12/06/2026 07:56:34
[2026-06-12 07:56:34,975.975 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 07:56:34,981.981 INFO    ] Checking for existing commands in stream...
[2026-06-12 07:56:35,048.048 INFO    ] No existing commands found in stream
[2026-06-12 07:56:40,062.062 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 07:56:40,065.065 INFO    ] Waiting 3.91 seconds before fallback handling...
[2026-06-12 07:56:44,307.307 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 07:56:44,308.308 INFO    ] Checking for system updates...
[2026-06-12 07:56:44,329.329 INFO    ] 200
[2026-06-12 07:56:44,330.330 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:56:44,361.361 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 07:56:44,362.362 INFO    ] No update needed
[2026-06-12 07:56:44,363.363 INFO    ] Checking for camera pi updates...
[2026-06-12 07:56:44,384.384 INFO    ] 200
[2026-06-12 07:56:44,385.385 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:56:44,410.410 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 07:56:44,452.452 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 07:56:44,453.453 INFO    ] No camera update needed
[2026-06-12 07:56:44,455.455 INFO    ] Script finished. Safe exiting...
[2026-06-12 07:56:44,456.456 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 07:56:44,459.459 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 07:56:44,462.462 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 07:56:46,501.501 INFO    ] ================================================
[2026-06-12 07:56:46,517.517 INFO    ] Launching Daemon at Fri Jun 12 07:56:46 IST 2026
[2026-06-12 07:56:46,528.528 INFO    ] ================================================
[2026-06-12 07:56:46,888.888 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 07:56:46
[2026-06-12 07:56:47,198.198 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 07:56:47,340.340 INFO    ] Initializing speech engine...
[2026-06-12 07:56:47,344.344 INFO    ] 2026-06-12 07:56:47
[2026-06-12 07:56:47,547.547 INFO    ] 2026-06-12 07:56:47
[2026-06-12 07:56:47,576.576 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 07:56:47,757.757 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 07:56:47,766.766 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 07:56:47,919.919 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 07:56:47,970.970 INFO    ] time= 12/06/2026 07:56:47
[2026-06-12 07:56:47,986.986 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 07:56:47,992.992 INFO    ] Checking for existing commands in stream...
[2026-06-12 07:56:48,057.057 INFO    ] No existing commands found in stream
[2026-06-12 07:56:53,066.066 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 07:56:53,069.069 INFO    ] Waiting 2.03 seconds before fallback handling...
[2026-06-12 07:56:55,480.480 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 07:56:55,481.481 INFO    ] Checking for system updates...
[2026-06-12 07:56:55,503.503 INFO    ] 200
[2026-06-12 07:56:55,505.505 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:56:55,537.537 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 07:56:55,539.539 INFO    ] No update needed
[2026-06-12 07:56:55,540.540 INFO    ] Checking for camera pi updates...
[2026-06-12 07:56:55,560.560 INFO    ] 200
[2026-06-12 07:56:55,562.562 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:56:55,585.585 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 07:56:55,623.623 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 07:56:55,625.625 INFO    ] No camera update needed
[2026-06-12 07:56:55,626.626 INFO    ] Script finished. Safe exiting...
[2026-06-12 07:56:55,627.627 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 07:56:55,631.631 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 07:56:55,634.634 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 07:56:57,673.673 INFO    ] ================================================
[2026-06-12 07:56:57,688.688 INFO    ] Launching Daemon at Fri Jun 12 07:56:57 IST 2026
[2026-06-12 07:56:57,699.699 INFO    ] ================================================
[2026-06-12 07:56:58,056.056 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 07:56:58
[2026-06-12 07:56:58,367.367 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 07:56:58,504.504 INFO    ] Initializing speech engine...
[2026-06-12 07:56:58,513.513 INFO    ] 2026-06-12 07:56:58
[2026-06-12 07:56:58,716.716 INFO    ] 2026-06-12 07:56:58
[2026-06-12 07:56:58,746.746 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 07:56:58,868.868 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 07:56:58,932.932 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 07:56:59,069.069 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 07:56:59,133.133 INFO    ] time= 12/06/2026 07:56:59
[2026-06-12 07:56:59,161.161 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 07:56:59,162.162 INFO    ] Checking for existing commands in stream...
[2026-06-12 07:56:59,232.232 INFO    ] No existing commands found in stream
[2026-06-12 07:57:04,242.242 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 07:57:04,245.245 INFO    ] Waiting 1.97 seconds before fallback handling...
[2026-06-12 07:57:06,600.600 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 07:57:06,602.602 INFO    ] Checking for system updates...
[2026-06-12 07:57:06,623.623 INFO    ] 200
[2026-06-12 07:57:06,625.625 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:57:06,656.656 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 07:57:06,658.658 INFO    ] No update needed
[2026-06-12 07:57:06,659.659 INFO    ] Checking for camera pi updates...
[2026-06-12 07:57:06,679.679 INFO    ] 200
[2026-06-12 07:57:06,681.681 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:57:06,704.704 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 07:57:06,738.738 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 07:57:06,739.739 INFO    ] No camera update needed
[2026-06-12 07:57:06,741.741 INFO    ] Script finished. Safe exiting...
[2026-06-12 07:57:06,742.742 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 07:57:06,746.746 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 07:57:06,749.749 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 07:57:08,788.788 INFO    ] ================================================
[2026-06-12 07:57:08,803.803 INFO    ] Launching Daemon at Fri Jun 12 07:57:08 IST 2026
[2026-06-12 07:57:08,815.815 INFO    ] ================================================
[2026-06-12 07:57:09,160.160 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 07:57:09
[2026-06-12 07:57:09,471.471 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 07:57:09,603.603 INFO    ] Initializing speech engine...
[2026-06-12 07:57:09,610.610 INFO    ] 2026-06-12 07:57:09
[2026-06-12 07:57:09,821.821 INFO    ] 2026-06-12 07:57:09
[2026-06-12 07:57:09,851.851 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 07:57:10,034.034 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 07:57:10,038.038 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 07:57:10,195.195 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 07:57:10,249.249 INFO    ] time= 12/06/2026 07:57:10
[2026-06-12 07:57:10,265.265 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 07:57:10,271.271 INFO    ] Checking for existing commands in stream...
[2026-06-12 07:57:10,339.339 INFO    ] No existing commands found in stream
[2026-06-12 07:57:15,348.348 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 07:57:15,351.351 INFO    ] Waiting 1.46 seconds before fallback handling...
[2026-06-12 07:57:17,184.184 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 07:57:17,186.186 INFO    ] Checking for system updates...
[2026-06-12 07:57:17,206.206 INFO    ] 200
[2026-06-12 07:57:17,208.208 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:57:17,242.242 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 07:57:17,243.243 INFO    ] No update needed
[2026-06-12 07:57:17,244.244 INFO    ] Checking for camera pi updates...
[2026-06-12 07:57:17,265.265 INFO    ] 200
[2026-06-12 07:57:17,266.266 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:57:17,289.289 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 07:57:17,325.325 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 07:57:17,326.326 INFO    ] No camera update needed
[2026-06-12 07:57:17,327.327 INFO    ] Script finished. Safe exiting...
[2026-06-12 07:57:17,328.328 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 07:57:17,332.332 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 07:57:17,334.334 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 07:57:19,373.373 INFO    ] ================================================
[2026-06-12 07:57:19,390.390 INFO    ] Launching Daemon at Fri Jun 12 07:57:19 IST 2026
[2026-06-12 07:57:19,401.401 INFO    ] ================================================
[2026-06-12 07:57:19,747.747 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 07:57:19
[2026-06-12 07:57:20,061.061 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 07:57:20,193.193 INFO    ] Initializing speech engine...
[2026-06-12 07:57:20,202.202 INFO    ] 2026-06-12 07:57:20
[2026-06-12 07:57:20,423.423 INFO    ] 2026-06-12 07:57:20
[2026-06-12 07:57:20,454.454 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 07:57:20,647.647 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 07:57:20,652.652 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 07:57:20,789.789 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 07:57:20,840.840 INFO    ] time= 12/06/2026 07:57:20
[2026-06-12 07:57:20,889.889 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 07:57:20,895.895 INFO    ] Checking for existing commands in stream...
[2026-06-12 07:57:20,971.971 INFO    ] No existing commands found in stream
[2026-06-12 07:57:25,980.980 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 07:57:25,983.983 INFO    ] Waiting 3.60 seconds before fallback handling...
[2026-06-12 07:57:29,960.960 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 07:57:29,962.962 INFO    ] Checking for system updates...
[2026-06-12 07:57:29,983.983 INFO    ] 200
[2026-06-12 07:57:29,984.984 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:57:30,015.015 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 07:57:30,016.016 INFO    ] No update needed
[2026-06-12 07:57:30,018.018 INFO    ] Checking for camera pi updates...
[2026-06-12 07:57:30,038.038 INFO    ] 200
[2026-06-12 07:57:30,039.039 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:57:30,063.063 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 07:57:30,106.106 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 07:57:30,108.108 INFO    ] No camera update needed
[2026-06-12 07:57:30,109.109 INFO    ] Script finished. Safe exiting...
[2026-06-12 07:57:30,111.111 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 07:57:30,114.114 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 07:57:30,117.117 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 07:57:32,157.157 INFO    ] ================================================
[2026-06-12 07:57:32,173.173 INFO    ] Launching Daemon at Fri Jun 12 07:57:32 IST 2026
[2026-06-12 07:57:32,184.184 INFO    ] ================================================
[2026-06-12 07:57:32,534.534 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 07:57:32
[2026-06-12 07:57:32,868.868 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 07:57:33,020.020 INFO    ] Initializing speech engine...
[2026-06-12 07:57:33,024.024 INFO    ] 2026-06-12 07:57:33
[2026-06-12 07:57:33,229.229 INFO    ] 2026-06-12 07:57:33
[2026-06-12 07:57:33,258.258 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 07:57:33,443.443 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 07:57:33,453.453 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 07:57:33,592.592 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 07:57:33,650.650 INFO    ] time= 12/06/2026 07:57:33
[2026-06-12 07:57:33,672.672 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 07:57:33,679.679 INFO    ] Checking for existing commands in stream...
[2026-06-12 07:57:33,746.746 INFO    ] No existing commands found in stream
[2026-06-12 07:57:38,761.761 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 07:57:38,764.764 INFO    ] Waiting 1.99 seconds before fallback handling...
[2026-06-12 07:57:41,117.117 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 07:57:41,118.118 INFO    ] Checking for system updates...
[2026-06-12 07:57:41,139.139 INFO    ] 200
[2026-06-12 07:57:41,141.141 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:57:41,173.173 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 07:57:41,175.175 INFO    ] No update needed
[2026-06-12 07:57:41,176.176 INFO    ] Checking for camera pi updates...
[2026-06-12 07:57:41,199.199 INFO    ] 200
[2026-06-12 07:57:41,201.201 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:57:41,228.228 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 07:57:41,373.373 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 07:57:41,375.375 INFO    ] No camera update needed
[2026-06-12 07:57:41,376.376 INFO    ] Script finished. Safe exiting...
[2026-06-12 07:57:41,377.377 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 07:57:41,381.381 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 07:57:41,384.384 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 07:57:43,423.423 INFO    ] ================================================
[2026-06-12 07:57:43,439.439 INFO    ] Launching Daemon at Fri Jun 12 07:57:43 IST 2026
[2026-06-12 07:57:43,451.451 INFO    ] ================================================
[2026-06-12 07:57:43,789.789 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 07:57:43
[2026-06-12 07:57:44,106.106 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 07:57:44,254.254 INFO    ] Initializing speech engine...
[2026-06-12 07:57:44,260.260 INFO    ] 2026-06-12 07:57:44
[2026-06-12 07:57:44,473.473 INFO    ] 2026-06-12 07:57:44
[2026-06-12 07:57:44,504.504 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 07:57:44,698.698 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 07:57:44,702.702 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 07:57:44,838.838 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 07:57:44,889.889 INFO    ] time= 12/06/2026 07:57:44
[2026-06-12 07:57:44,922.922 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 07:57:44,944.944 INFO    ] Checking for existing commands in stream...
[2026-06-12 07:57:45,022.022 INFO    ] No existing commands found in stream
[2026-06-12 07:57:50,031.031 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 07:57:50,039.039 INFO    ] Waiting 3.98 seconds before fallback handling...
[2026-06-12 07:57:54,439.439 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 07:57:54,441.441 INFO    ] Checking for system updates...
[2026-06-12 07:57:54,462.462 INFO    ] 200
[2026-06-12 07:57:54,463.463 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:57:54,494.494 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 07:57:54,495.495 INFO    ] No update needed
[2026-06-12 07:57:54,496.496 INFO    ] Checking for camera pi updates...
[2026-06-12 07:57:54,518.518 INFO    ] 200
[2026-06-12 07:57:54,519.519 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:57:54,546.546 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 07:57:54,589.589 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 07:57:54,590.590 INFO    ] No camera update needed
[2026-06-12 07:57:54,592.592 INFO    ] Script finished. Safe exiting...
[2026-06-12 07:57:54,593.593 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 07:57:54,596.596 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 07:57:54,599.599 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 07:57:56,638.638 INFO    ] ================================================
[2026-06-12 07:57:56,653.653 INFO    ] Launching Daemon at Fri Jun 12 07:57:56 IST 2026
[2026-06-12 07:57:56,665.665 INFO    ] ================================================
[2026-06-12 07:57:57,013.013 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 07:57:57
[2026-06-12 07:57:57,346.346 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 07:57:57,495.495 INFO    ] Initializing speech engine...
[2026-06-12 07:57:57,501.501 INFO    ] 2026-06-12 07:57:57
[2026-06-12 07:57:57,708.708 INFO    ] 2026-06-12 07:57:57
[2026-06-12 07:57:57,736.736 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 07:57:57,919.919 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 07:57:57,929.929 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 07:57:58,070.070 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 07:57:58,127.127 INFO    ] time= 12/06/2026 07:57:58
[2026-06-12 07:57:58,150.150 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 07:57:58,157.157 INFO    ] Checking for existing commands in stream...
[2026-06-12 07:57:58,222.222 INFO    ] No existing commands found in stream
[2026-06-12 07:58:03,232.232 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 07:58:03,235.235 INFO    ] Waiting 3.74 seconds before fallback handling...
[2026-06-12 07:58:07,351.351 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 07:58:07,352.352 INFO    ] Checking for system updates...
[2026-06-12 07:58:07,377.377 INFO    ] 200
[2026-06-12 07:58:07,379.379 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:58:07,409.409 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 07:58:07,411.411 INFO    ] No update needed
[2026-06-12 07:58:07,412.412 INFO    ] Checking for camera pi updates...
[2026-06-12 07:58:07,432.432 INFO    ] 200
[2026-06-12 07:58:07,433.433 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:58:07,458.458 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 07:58:07,496.496 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 07:58:07,497.497 INFO    ] No camera update needed
[2026-06-12 07:58:07,499.499 INFO    ] Script finished. Safe exiting...
[2026-06-12 07:58:07,500.500 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 07:58:07,503.503 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 07:58:07,506.506 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 07:58:09,545.545 INFO    ] ================================================
[2026-06-12 07:58:09,561.561 INFO    ] Launching Daemon at Fri Jun 12 07:58:09 IST 2026
[2026-06-12 07:58:09,572.572 INFO    ] ================================================
[2026-06-12 07:58:09,961.961 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 07:58:09
[2026-06-12 07:58:10,291.291 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 07:58:10,439.439 INFO    ] Initializing speech engine...
[2026-06-12 07:58:10,445.445 INFO    ] 2026-06-12 07:58:10
[2026-06-12 07:58:10,650.650 INFO    ] 2026-06-12 07:58:10
[2026-06-12 07:58:10,680.680 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 07:58:10,864.864 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 07:58:10,868.868 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 07:58:11,007.007 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 07:58:11,071.071 INFO    ] time= 12/06/2026 07:58:11
[2026-06-12 07:58:11,099.099 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 07:58:11,105.105 INFO    ] Checking for existing commands in stream...
[2026-06-12 07:58:11,172.172 INFO    ] No existing commands found in stream
[2026-06-12 07:58:16,182.182 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 07:58:16,185.185 INFO    ] Waiting 0.28 seconds before fallback handling...
[2026-06-12 07:58:16,842.842 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 07:58:16,843.843 INFO    ] Checking for system updates...
[2026-06-12 07:58:16,866.866 INFO    ] 200
[2026-06-12 07:58:16,867.867 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:58:16,902.902 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 07:58:16,903.903 INFO    ] No update needed
[2026-06-12 07:58:16,905.905 INFO    ] Checking for camera pi updates...
[2026-06-12 07:58:16,928.928 INFO    ] 200
[2026-06-12 07:58:16,930.930 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:58:16,953.953 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 07:58:16,989.989 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 07:58:16,991.991 INFO    ] No camera update needed
[2026-06-12 07:58:16,992.992 INFO    ] Script finished. Safe exiting...
[2026-06-12 07:58:16,994.994 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 07:58:16,997.997 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 07:58:17,000.000 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 07:58:19,038.038 INFO    ] ================================================
[2026-06-12 07:58:19,054.054 INFO    ] Launching Daemon at Fri Jun 12 07:58:19 IST 2026
[2026-06-12 07:58:19,065.065 INFO    ] ================================================
[2026-06-12 07:58:19,435.435 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 07:58:19
[2026-06-12 07:58:19,764.764 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 07:58:19,906.906 INFO    ] Initializing speech engine...
[2026-06-12 07:58:19,916.916 INFO    ] 2026-06-12 07:58:19
[2026-06-12 07:58:20,128.128 INFO    ] 2026-06-12 07:58:20
[2026-06-12 07:58:20,157.157 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 07:58:20,339.339 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 07:58:20,343.343 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 07:58:20,483.483 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 07:58:20,517.517 INFO    ] time= 12/06/2026 07:58:20
[2026-06-12 07:58:20,518.518 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 07:58:20,519.519 INFO    ] Checking for existing commands in stream...
[2026-06-12 07:58:20,642.642 INFO    ] No existing commands found in stream
[2026-06-12 07:58:25,653.653 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 07:58:25,662.662 INFO    ] Waiting 0.03 seconds before fallback handling...
[2026-06-12 07:58:26,043.043 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 07:58:26,045.045 INFO    ] Checking for system updates...
[2026-06-12 07:58:26,067.067 INFO    ] 200
[2026-06-12 07:58:26,069.069 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:58:26,102.102 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 07:58:26,103.103 INFO    ] No update needed
[2026-06-12 07:58:26,104.104 INFO    ] Checking for camera pi updates...
[2026-06-12 07:58:26,124.124 INFO    ] 200
[2026-06-12 07:58:26,126.126 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:58:26,150.150 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 07:58:26,189.189 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 07:58:26,191.191 INFO    ] No camera update needed
[2026-06-12 07:58:26,192.192 INFO    ] Script finished. Safe exiting...
[2026-06-12 07:58:26,194.194 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 07:58:26,197.197 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 07:58:26,200.200 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 07:58:28,239.239 INFO    ] ================================================
[2026-06-12 07:58:28,254.254 INFO    ] Launching Daemon at Fri Jun 12 07:58:28 IST 2026
[2026-06-12 07:58:28,266.266 INFO    ] ================================================
[2026-06-12 07:58:28,595.595 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 07:58:28
[2026-06-12 07:58:28,906.906 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 07:58:29,042.042 INFO    ] Initializing speech engine...
[2026-06-12 07:58:29,047.047 INFO    ] 2026-06-12 07:58:29
[2026-06-12 07:58:29,264.264 INFO    ] 2026-06-12 07:58:29
[2026-06-12 07:58:29,293.293 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 07:58:29,477.477 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 07:58:29,486.486 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 07:58:29,616.616 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 07:58:29,670.670 INFO    ] time= 12/06/2026 07:58:29
[2026-06-12 07:58:29,704.704 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 07:58:29,709.709 INFO    ] Checking for existing commands in stream...
[2026-06-12 07:58:29,805.805 INFO    ] No existing commands found in stream
[2026-06-12 07:58:34,814.814 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 07:58:34,817.817 INFO    ] Waiting 1.50 seconds before fallback handling...
[2026-06-12 07:58:36,693.693 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 07:58:36,695.695 INFO    ] Checking for system updates...
[2026-06-12 07:58:36,784.784 INFO    ] 200
[2026-06-12 07:58:36,785.785 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:58:36,815.815 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 07:58:36,816.816 INFO    ] No update needed
[2026-06-12 07:58:36,817.817 INFO    ] Checking for camera pi updates...
[2026-06-12 07:58:36,839.839 INFO    ] 200
[2026-06-12 07:58:36,840.840 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:58:36,866.866 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 07:58:36,889.889 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 07:58:36,891.891 INFO    ] No camera update needed
[2026-06-12 07:58:36,892.892 INFO    ] Script finished. Safe exiting...
[2026-06-12 07:58:36,893.893 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 07:58:36,896.896 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 07:58:36,899.899 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 07:58:38,938.938 INFO    ] ================================================
[2026-06-12 07:58:38,953.953 INFO    ] Launching Daemon at Fri Jun 12 07:58:38 IST 2026
[2026-06-12 07:58:38,964.964 INFO    ] ================================================
[2026-06-12 07:58:39,293.293 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 07:58:39
[2026-06-12 07:58:39,605.605 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 07:58:39,734.734 INFO    ] Initializing speech engine...
[2026-06-12 07:58:39,739.739 INFO    ] 2026-06-12 07:58:39
[2026-06-12 07:58:39,956.956 INFO    ] 2026-06-12 07:58:39
[2026-06-12 07:58:39,984.984 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 07:58:40,158.158 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 07:58:40,173.173 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 07:58:40,308.308 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 07:58:40,370.370 INFO    ] time= 12/06/2026 07:58:40
[2026-06-12 07:58:40,403.403 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 07:58:40,409.409 INFO    ] Checking for existing commands in stream...
[2026-06-12 07:58:40,477.477 INFO    ] No existing commands found in stream
[2026-06-12 07:58:45,486.486 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 07:58:45,488.488 INFO    ] Waiting 2.76 seconds before fallback handling...
[2026-06-12 07:58:48,597.597 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 07:58:48,598.598 INFO    ] Checking for system updates...
[2026-06-12 07:58:48,620.620 INFO    ] 200
[2026-06-12 07:58:48,621.621 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:58:48,652.652 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 07:58:48,653.653 INFO    ] No update needed
[2026-06-12 07:58:48,654.654 INFO    ] Checking for camera pi updates...
[2026-06-12 07:58:48,674.674 INFO    ] 200
[2026-06-12 07:58:48,675.675 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:58:48,699.699 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 07:58:48,734.734 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 07:58:48,736.736 INFO    ] No camera update needed
[2026-06-12 07:58:48,737.737 INFO    ] Script finished. Safe exiting...
[2026-06-12 07:58:48,738.738 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 07:58:48,741.741 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 07:58:48,744.744 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 07:58:50,783.783 INFO    ] ================================================
[2026-06-12 07:58:50,800.800 INFO    ] Launching Daemon at Fri Jun 12 07:58:50 IST 2026
[2026-06-12 07:58:50,811.811 INFO    ] ================================================
[2026-06-12 07:58:51,193.193 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 07:58:51
[2026-06-12 07:58:51,509.509 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 07:58:51,644.644 INFO    ] Initializing speech engine...
[2026-06-12 07:58:51,652.652 INFO    ] 2026-06-12 07:58:51
[2026-06-12 07:58:51,873.873 INFO    ] 2026-06-12 07:58:51
[2026-06-12 07:58:51,904.904 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 07:58:52,098.098 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 07:58:52,102.102 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 07:58:52,237.237 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 07:58:52,299.299 INFO    ] time= 12/06/2026 07:58:52
[2026-06-12 07:58:52,341.341 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 07:58:52,343.343 INFO    ] Checking for existing commands in stream...
[2026-06-12 07:58:52,418.418 INFO    ] No existing commands found in stream
[2026-06-12 07:58:57,432.432 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 07:58:57,435.435 INFO    ] Waiting 1.82 seconds before fallback handling...
[2026-06-12 07:58:59,615.615 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 07:58:59,617.617 INFO    ] Checking for system updates...
[2026-06-12 07:58:59,638.638 INFO    ] 200
[2026-06-12 07:58:59,640.640 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:58:59,673.673 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 07:58:59,674.674 INFO    ] No update needed
[2026-06-12 07:58:59,676.676 INFO    ] Checking for camera pi updates...
[2026-06-12 07:58:59,698.698 INFO    ] 200
[2026-06-12 07:58:59,699.699 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:58:59,723.723 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 07:58:59,759.759 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 07:58:59,760.760 INFO    ] No camera update needed
[2026-06-12 07:58:59,762.762 INFO    ] Script finished. Safe exiting...
[2026-06-12 07:58:59,763.763 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 07:58:59,766.766 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 07:58:59,769.769 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 07:59:01,802.802 INFO    ] ================================================
[2026-06-12 07:59:01,813.813 INFO    ] Launching Daemon at Fri Jun 12 07:59:01 IST 2026
[2026-06-12 07:59:01,821.821 INFO    ] ================================================
[2026-06-12 07:59:02,183.183 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 07:59:02
[2026-06-12 07:59:02,557.557 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 07:59:02,699.699 INFO    ] Initializing speech engine...
[2026-06-12 07:59:02,712.712 INFO    ] 2026-06-12 07:59:02
[2026-06-12 07:59:02,919.919 INFO    ] 2026-06-12 07:59:02
[2026-06-12 07:59:02,949.949 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 07:59:03,136.136 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 07:59:03,144.144 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 07:59:03,268.268 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 07:59:03,334.334 INFO    ] time= 12/06/2026 07:59:03
[2026-06-12 07:59:03,367.367 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 07:59:03,369.369 INFO    ] Checking for existing commands in stream...
[2026-06-12 07:59:03,442.442 INFO    ] No existing commands found in stream
[2026-06-12 07:59:08,451.451 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 07:59:08,454.454 INFO    ] Waiting 3.08 seconds before fallback handling...
[2026-06-12 07:59:11,900.900 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 07:59:11,901.901 INFO    ] Checking for system updates...
[2026-06-12 07:59:11,922.922 INFO    ] 200
[2026-06-12 07:59:11,923.923 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:59:11,953.953 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 07:59:11,954.954 INFO    ] No update needed
[2026-06-12 07:59:11,955.955 INFO    ] Checking for camera pi updates...
[2026-06-12 07:59:11,975.975 INFO    ] 200
[2026-06-12 07:59:11,976.976 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:59:11,999.999 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 07:59:12,026.026 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 07:59:12,027.027 INFO    ] No camera update needed
[2026-06-12 07:59:12,028.028 INFO    ] Script finished. Safe exiting...
[2026-06-12 07:59:12,030.030 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 07:59:12,033.033 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 07:59:12,035.035 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 07:59:14,080.080 INFO    ] ================================================
[2026-06-12 07:59:14,096.096 INFO    ] Launching Daemon at Fri Jun 12 07:59:14 IST 2026
[2026-06-12 07:59:14,108.108 INFO    ] ================================================
[2026-06-12 07:59:14,432.432 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 07:59:14
[2026-06-12 07:59:14,744.744 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 07:59:14,884.884 INFO    ] Initializing speech engine...
[2026-06-12 07:59:14,890.890 INFO    ] 2026-06-12 07:59:14
[2026-06-12 07:59:15,091.091 INFO    ] 2026-06-12 07:59:15
[2026-06-12 07:59:15,120.120 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 07:59:15,290.290 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 07:59:15,292.292 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 07:59:15,438.438 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 07:59:15,486.486 INFO    ] time= 12/06/2026 07:59:15
[2026-06-12 07:59:15,524.524 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 07:59:15,535.535 INFO    ] Checking for existing commands in stream...
[2026-06-12 07:59:15,606.606 INFO    ] No existing commands found in stream
[2026-06-12 07:59:20,615.615 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 07:59:20,618.618 INFO    ] Waiting 3.04 seconds before fallback handling...
[2026-06-12 07:59:23,989.989 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 07:59:23,991.991 INFO    ] Checking for system updates...
[2026-06-12 07:59:24,012.012 INFO    ] 200
[2026-06-12 07:59:24,013.013 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:59:24,043.043 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 07:59:24,044.044 INFO    ] No update needed
[2026-06-12 07:59:24,046.046 INFO    ] Checking for camera pi updates...
[2026-06-12 07:59:24,066.066 INFO    ] 200
[2026-06-12 07:59:24,068.068 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:59:24,091.091 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 07:59:24,128.128 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 07:59:24,129.129 INFO    ] No camera update needed
[2026-06-12 07:59:24,130.130 INFO    ] Script finished. Safe exiting...
[2026-06-12 07:59:24,132.132 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 07:59:24,135.135 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 07:59:24,137.137 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 07:59:26,176.176 INFO    ] ================================================
[2026-06-12 07:59:26,192.192 INFO    ] Launching Daemon at Fri Jun 12 07:59:26 IST 2026
[2026-06-12 07:59:26,203.203 INFO    ] ================================================
[2026-06-12 07:59:26,535.535 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 07:59:26
[2026-06-12 07:59:26,847.847 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 07:59:26,989.989 INFO    ] Initializing speech engine...
[2026-06-12 07:59:26,994.994 INFO    ] 2026-06-12 07:59:26
[2026-06-12 07:59:27,197.197 INFO    ] 2026-06-12 07:59:27
[2026-06-12 07:59:27,225.225 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 07:59:27,409.409 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 07:59:27,418.418 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 07:59:27,569.569 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 07:59:27,618.618 INFO    ] time= 12/06/2026 07:59:27
[2026-06-12 07:59:27,640.640 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 07:59:27,646.646 INFO    ] Checking for existing commands in stream...
[2026-06-12 07:59:27,713.713 INFO    ] No existing commands found in stream
[2026-06-12 07:59:32,722.722 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 07:59:32,725.725 INFO    ] Waiting 1.91 seconds before fallback handling...
[2026-06-12 07:59:35,002.002 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 07:59:35,004.004 INFO    ] Checking for system updates...
[2026-06-12 07:59:35,025.025 INFO    ] 200
[2026-06-12 07:59:35,027.027 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:59:35,057.057 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 07:59:35,058.058 INFO    ] No update needed
[2026-06-12 07:59:35,060.060 INFO    ] Checking for camera pi updates...
[2026-06-12 07:59:35,081.081 INFO    ] 200
[2026-06-12 07:59:35,083.083 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:59:35,107.107 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 07:59:35,148.148 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 07:59:35,149.149 INFO    ] No camera update needed
[2026-06-12 07:59:35,151.151 INFO    ] Script finished. Safe exiting...
[2026-06-12 07:59:35,152.152 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 07:59:35,155.155 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 07:59:35,157.157 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 07:59:37,196.196 INFO    ] ================================================
[2026-06-12 07:59:37,212.212 INFO    ] Launching Daemon at Fri Jun 12 07:59:37 IST 2026
[2026-06-12 07:59:37,223.223 INFO    ] ================================================
[2026-06-12 07:59:37,560.560 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 07:59:37
[2026-06-12 07:59:37,875.875 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 07:59:38,018.018 INFO    ] Initializing speech engine...
[2026-06-12 07:59:38,023.023 INFO    ] 2026-06-12 07:59:38
[2026-06-12 07:59:38,226.226 INFO    ] 2026-06-12 07:59:38
[2026-06-12 07:59:38,254.254 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 07:59:38,438.438 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 07:59:38,447.447 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 07:59:38,575.575 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 07:59:38,634.634 INFO    ] time= 12/06/2026 07:59:38
[2026-06-12 07:59:38,666.666 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 07:59:38,672.672 INFO    ] Checking for existing commands in stream...
[2026-06-12 07:59:38,740.740 INFO    ] No existing commands found in stream
[2026-06-12 07:59:43,749.749 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 07:59:43,752.752 INFO    ] Waiting 3.35 seconds before fallback handling...
[2026-06-12 07:59:47,481.481 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 07:59:47,482.482 INFO    ] Checking for system updates...
[2026-06-12 07:59:47,503.503 INFO    ] 200
[2026-06-12 07:59:47,505.505 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:59:47,535.535 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 07:59:47,536.536 INFO    ] No update needed
[2026-06-12 07:59:47,537.537 INFO    ] Checking for camera pi updates...
[2026-06-12 07:59:47,557.557 INFO    ] 200
[2026-06-12 07:59:47,558.558 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:59:47,582.582 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 07:59:47,722.722 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 07:59:47,723.723 INFO    ] No camera update needed
[2026-06-12 07:59:47,724.724 INFO    ] Script finished. Safe exiting...
[2026-06-12 07:59:47,726.726 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 07:59:47,729.729 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 07:59:47,732.732 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 07:59:49,771.771 INFO    ] ================================================
[2026-06-12 07:59:49,786.786 INFO    ] Launching Daemon at Fri Jun 12 07:59:49 IST 2026
[2026-06-12 07:59:49,797.797 INFO    ] ================================================
[2026-06-12 07:59:50,130.130 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 07:59:50
[2026-06-12 07:59:50,441.441 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 07:59:50,583.583 INFO    ] Initializing speech engine...
[2026-06-12 07:59:50,588.588 INFO    ] 2026-06-12 07:59:50
[2026-06-12 07:59:50,794.794 INFO    ] 2026-06-12 07:59:50
[2026-06-12 07:59:50,822.822 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 07:59:51,007.007 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 07:59:51,015.015 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 07:59:51,145.145 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 07:59:51,209.209 INFO    ] time= 12/06/2026 07:59:51
[2026-06-12 07:59:51,237.237 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 07:59:51,244.244 INFO    ] Checking for existing commands in stream...
[2026-06-12 07:59:51,334.334 INFO    ] No existing commands found in stream
[2026-06-12 07:59:56,343.343 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 07:59:56,347.347 INFO    ] Waiting 0.64 seconds before fallback handling...
[2026-06-12 07:59:57,354.354 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 07:59:57,355.355 INFO    ] Checking for system updates...
[2026-06-12 07:59:57,376.376 INFO    ] 200
[2026-06-12 07:59:57,377.377 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:59:57,409.409 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 07:59:57,411.411 INFO    ] No update needed
[2026-06-12 07:59:57,412.412 INFO    ] Checking for camera pi updates...
[2026-06-12 07:59:57,431.431 INFO    ] 200
[2026-06-12 07:59:57,432.432 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 07:59:57,456.456 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 07:59:57,490.490 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 07:59:57,491.491 INFO    ] No camera update needed
[2026-06-12 07:59:57,493.493 INFO    ] Script finished. Safe exiting...
[2026-06-12 07:59:57,494.494 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 07:59:57,497.497 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 07:59:57,499.499 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 07:59:59,540.540 INFO    ] ================================================
[2026-06-12 07:59:59,556.556 INFO    ] Launching Daemon at Fri Jun 12 07:59:59 IST 2026
[2026-06-12 07:59:59,567.567 INFO    ] ================================================
[2026-06-12 07:59:59,915.915 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 07:59:59
[2026-06-12 08:00:00,228.228 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 08:00:00,387.387 INFO    ] Initializing speech engine...
[2026-06-12 08:00:00,393.393 INFO    ] 2026-06-12 08:00:00
[2026-06-12 08:00:00,636.636 INFO    ] 2026-06-12 08:00:00
[2026-06-12 08:00:00,666.666 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 08:00:00,824.824 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 08:00:00,852.852 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 08:00:00,984.984 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 08:00:01,045.045 INFO    ] time= 12/06/2026 08:00:00
[2026-06-12 08:00:01,074.074 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 08:00:01,084.084 INFO    ] Checking for existing commands in stream...
[2026-06-12 08:00:01,157.157 INFO    ] No existing commands found in stream
[2026-06-12 08:00:06,166.166 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 08:00:06,168.168 INFO    ] Waiting 2.84 seconds before fallback handling...
[2026-06-12 08:00:09,609.609 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 08:00:09,611.611 INFO    ] Checking for system updates...
[2026-06-12 08:00:09,632.632 INFO    ] 200
[2026-06-12 08:00:09,633.633 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:00:09,663.663 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 08:00:09,664.664 INFO    ] No update needed
[2026-06-12 08:00:09,665.665 INFO    ] Checking for camera pi updates...
[2026-06-12 08:00:09,687.687 INFO    ] 200
[2026-06-12 08:00:09,688.688 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:00:09,714.714 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 08:00:09,754.754 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 08:00:09,755.755 INFO    ] No camera update needed
[2026-06-12 08:00:09,756.756 INFO    ] Script finished. Safe exiting...
[2026-06-12 08:00:09,757.757 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 08:00:09,761.761 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 08:00:09,763.763 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 08:00:11,803.803 INFO    ] ================================================
[2026-06-12 08:00:11,820.820 INFO    ] Launching Daemon at Fri Jun 12 08:00:11 IST 2026
[2026-06-12 08:00:11,831.831 INFO    ] ================================================
[2026-06-12 08:00:12,169.169 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 08:00:12
[2026-06-12 08:00:12,489.489 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 08:00:12,634.634 INFO    ] Initializing speech engine...
[2026-06-12 08:00:12,638.638 INFO    ] 2026-06-12 08:00:12
[2026-06-12 08:00:12,842.842 INFO    ] 2026-06-12 08:00:12
[2026-06-12 08:00:12,872.872 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 08:00:13,054.054 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 08:00:13,063.063 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 08:00:13,200.200 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 08:00:13,261.261 INFO    ] time= 12/06/2026 08:00:13
[2026-06-12 08:00:13,285.285 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 08:00:13,292.292 INFO    ] Checking for existing commands in stream...
[2026-06-12 08:00:13,358.358 INFO    ] No existing commands found in stream
[2026-06-12 08:00:18,367.367 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 08:00:18,369.369 INFO    ] Waiting 3.66 seconds before fallback handling...
[2026-06-12 08:00:22,419.419 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 08:00:22,421.421 INFO    ] Checking for system updates...
[2026-06-12 08:00:22,443.443 INFO    ] 200
[2026-06-12 08:00:22,444.444 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:00:22,477.477 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 08:00:22,478.478 INFO    ] No update needed
[2026-06-12 08:00:22,479.479 INFO    ] Checking for camera pi updates...
[2026-06-12 08:00:22,499.499 INFO    ] 200
[2026-06-12 08:00:22,501.501 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:00:22,525.525 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 08:00:22,562.562 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 08:00:22,564.564 INFO    ] No camera update needed
[2026-06-12 08:00:22,565.565 INFO    ] Script finished. Safe exiting...
[2026-06-12 08:00:22,566.566 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 08:00:22,569.569 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 08:00:22,572.572 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 08:00:24,611.611 INFO    ] ================================================
[2026-06-12 08:00:24,627.627 INFO    ] Launching Daemon at Fri Jun 12 08:00:24 IST 2026
[2026-06-12 08:00:24,638.638 INFO    ] ================================================
[2026-06-12 08:00:24,977.977 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 08:00:24
[2026-06-12 08:00:25,289.289 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 08:00:25,424.424 INFO    ] Initializing speech engine...
[2026-06-12 08:00:25,432.432 INFO    ] 2026-06-12 08:00:25
[2026-06-12 08:00:25,631.631 INFO    ] 2026-06-12 08:00:25
[2026-06-12 08:00:25,663.663 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 08:00:25,823.823 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 08:00:25,855.855 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 08:00:26,012.012 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 08:00:26,037.037 INFO    ] time= 12/06/2026 08:00:26
[2026-06-12 08:00:26,088.088 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 08:00:26,128.128 INFO    ] Checking for existing commands in stream...
[2026-06-12 08:00:26,221.221 INFO    ] No existing commands found in stream
[2026-06-12 08:00:31,230.230 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 08:00:31,234.234 INFO    ] Waiting 0.65 seconds before fallback handling...
[2026-06-12 08:00:32,262.262 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 08:00:32,263.263 INFO    ] Checking for system updates...
[2026-06-12 08:00:32,286.286 INFO    ] 200
[2026-06-12 08:00:32,288.288 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:00:32,331.331 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 08:00:32,333.333 INFO    ] No update needed
[2026-06-12 08:00:32,334.334 INFO    ] Checking for camera pi updates...
[2026-06-12 08:00:32,358.358 INFO    ] 200
[2026-06-12 08:00:32,360.360 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:00:32,386.386 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 08:00:32,414.414 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 08:00:32,416.416 INFO    ] No camera update needed
[2026-06-12 08:00:32,418.418 INFO    ] Script finished. Safe exiting...
[2026-06-12 08:00:32,419.419 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 08:00:32,423.423 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 08:00:32,427.427 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 08:00:34,461.461 INFO    ] ================================================
[2026-06-12 08:00:34,477.477 INFO    ] Launching Daemon at Fri Jun 12 08:00:34 IST 2026
[2026-06-12 08:00:34,489.489 INFO    ] ================================================
[2026-06-12 08:00:34,879.879 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 08:00:34
[2026-06-12 08:00:35,217.217 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 08:00:35,373.373 INFO    ] Initializing speech engine...
[2026-06-12 08:00:35,379.379 INFO    ] 2026-06-12 08:00:35
[2026-06-12 08:00:35,591.591 INFO    ] 2026-06-12 08:00:35
[2026-06-12 08:00:35,620.620 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 08:00:35,804.804 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 08:00:35,813.813 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 08:00:35,935.935 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 08:00:35,981.981 INFO    ] time= 12/06/2026 08:00:35
[2026-06-12 08:00:36,033.033 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 08:00:36,040.040 INFO    ] Checking for existing commands in stream...
[2026-06-12 08:00:36,130.130 INFO    ] No existing commands found in stream
[2026-06-12 08:00:41,140.140 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 08:00:41,143.143 INFO    ] Waiting 3.73 seconds before fallback handling...
[2026-06-12 08:00:45,231.231 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 08:00:45,233.233 INFO    ] Checking for system updates...
[2026-06-12 08:00:45,254.254 INFO    ] 200
[2026-06-12 08:00:45,256.256 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:00:45,287.287 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 08:00:45,288.288 INFO    ] No update needed
[2026-06-12 08:00:45,289.289 INFO    ] Checking for camera pi updates...
[2026-06-12 08:00:45,309.309 INFO    ] 200
[2026-06-12 08:00:45,311.311 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:00:45,335.335 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 08:00:45,376.376 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 08:00:45,378.378 INFO    ] No camera update needed
[2026-06-12 08:00:45,379.379 INFO    ] Script finished. Safe exiting...
[2026-06-12 08:00:45,381.381 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 08:00:45,384.384 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 08:00:45,387.387 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 08:00:47,427.427 INFO    ] ================================================
[2026-06-12 08:00:47,442.442 INFO    ] Launching Daemon at Fri Jun 12 08:00:47 IST 2026
[2026-06-12 08:00:47,453.453 INFO    ] ================================================
[2026-06-12 08:00:47,797.797 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 08:00:47
[2026-06-12 08:00:48,137.137 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 08:00:48,283.283 INFO    ] Initializing speech engine...
[2026-06-12 08:00:48,291.291 INFO    ] 2026-06-12 08:00:48
[2026-06-12 08:00:48,503.503 INFO    ] 2026-06-12 08:00:48
[2026-06-12 08:00:48,532.532 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 08:00:48,659.659 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 08:00:48,717.717 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 08:00:48,856.856 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 08:00:48,923.923 INFO    ] time= 12/06/2026 08:00:48
[2026-06-12 08:00:48,947.947 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 08:00:48,954.954 INFO    ] Checking for existing commands in stream...
[2026-06-12 08:00:49,021.021 INFO    ] No existing commands found in stream
[2026-06-12 08:00:54,036.036 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 08:00:54,039.039 INFO    ] Waiting 3.69 seconds before fallback handling...
[2026-06-12 08:00:58,100.100 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 08:00:58,102.102 INFO    ] Checking for system updates...
[2026-06-12 08:00:58,124.124 INFO    ] 200
[2026-06-12 08:00:58,125.125 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:00:58,155.155 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 08:00:58,156.156 INFO    ] No update needed
[2026-06-12 08:00:58,158.158 INFO    ] Checking for camera pi updates...
[2026-06-12 08:00:58,181.181 INFO    ] 200
[2026-06-12 08:00:58,182.182 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:00:58,205.205 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 08:00:58,245.245 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 08:00:58,247.247 INFO    ] No camera update needed
[2026-06-12 08:00:58,248.248 INFO    ] Script finished. Safe exiting...
[2026-06-12 08:00:58,249.249 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 08:00:58,253.253 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 08:00:58,255.255 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 08:01:00,294.294 INFO    ] ================================================
[2026-06-12 08:01:00,309.309 INFO    ] Launching Daemon at Fri Jun 12 08:01:00 IST 2026
[2026-06-12 08:01:00,320.320 INFO    ] ================================================
[2026-06-12 08:01:00,684.684 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 08:01:00
[2026-06-12 08:01:01,019.019 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 08:01:01,164.164 INFO    ] Initializing speech engine...
[2026-06-12 08:01:01,174.174 INFO    ] 2026-06-12 08:01:01
[2026-06-12 08:01:01,383.383 INFO    ] 2026-06-12 08:01:01
[2026-06-12 08:01:01,411.411 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 08:01:01,596.596 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 08:01:01,605.605 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 08:01:01,727.727 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 08:01:01,810.810 INFO    ] time= 12/06/2026 08:01:01
[2026-06-12 08:01:01,813.813 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 08:01:01,836.836 INFO    ] Checking for existing commands in stream...
[2026-06-12 08:01:01,945.945 INFO    ] No existing commands found in stream
[2026-06-12 08:01:06,975.975 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 08:01:06,985.985 INFO    ] Waiting 3.90 seconds before fallback handling...
[2026-06-12 08:01:11,281.281 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 08:01:11,283.283 INFO    ] Checking for system updates...
[2026-06-12 08:01:11,303.303 INFO    ] 200
[2026-06-12 08:01:11,305.305 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:01:11,338.338 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 08:01:11,339.339 INFO    ] No update needed
[2026-06-12 08:01:11,341.341 INFO    ] Checking for camera pi updates...
[2026-06-12 08:01:11,360.360 INFO    ] 200
[2026-06-12 08:01:11,362.362 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:01:11,385.385 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 08:01:11,421.421 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 08:01:11,422.422 INFO    ] No camera update needed
[2026-06-12 08:01:11,423.423 INFO    ] Script finished. Safe exiting...
[2026-06-12 08:01:11,425.425 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 08:01:11,428.428 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 08:01:11,431.431 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 08:01:13,470.470 INFO    ] ================================================
[2026-06-12 08:01:13,486.486 INFO    ] Launching Daemon at Fri Jun 12 08:01:13 IST 2026
[2026-06-12 08:01:13,497.497 INFO    ] ================================================
[2026-06-12 08:01:13,850.850 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 08:01:13
[2026-06-12 08:01:14,162.162 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 08:01:14,293.293 INFO    ] Initializing speech engine...
[2026-06-12 08:01:14,301.301 INFO    ] 2026-06-12 08:01:14
[2026-06-12 08:01:14,516.516 INFO    ] 2026-06-12 08:01:14
[2026-06-12 08:01:14,546.546 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 08:01:14,731.731 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 08:01:14,735.735 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 08:01:14,866.866 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 08:01:14,927.927 INFO    ] time= 12/06/2026 08:01:14
[2026-06-12 08:01:14,934.934 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 08:01:14,965.965 INFO    ] Checking for existing commands in stream...
[2026-06-12 08:01:15,041.041 INFO    ] No existing commands found in stream
[2026-06-12 08:01:20,050.050 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 08:01:20,053.053 INFO    ] Waiting 1.21 seconds before fallback handling...
[2026-06-12 08:01:21,625.625 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 08:01:21,627.627 INFO    ] Checking for system updates...
[2026-06-12 08:01:21,647.647 INFO    ] 200
[2026-06-12 08:01:21,649.649 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:01:21,681.681 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 08:01:21,683.683 INFO    ] No update needed
[2026-06-12 08:01:21,684.684 INFO    ] Checking for camera pi updates...
[2026-06-12 08:01:21,703.703 INFO    ] 200
[2026-06-12 08:01:21,705.705 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:01:21,729.729 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 08:01:21,768.768 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 08:01:21,769.769 INFO    ] No camera update needed
[2026-06-12 08:01:21,771.771 INFO    ] Script finished. Safe exiting...
[2026-06-12 08:01:21,772.772 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 08:01:21,775.775 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 08:01:21,777.777 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 08:01:23,816.816 INFO    ] ================================================
[2026-06-12 08:01:23,831.831 INFO    ] Launching Daemon at Fri Jun 12 08:01:23 IST 2026
[2026-06-12 08:01:23,842.842 INFO    ] ================================================
[2026-06-12 08:01:24,225.225 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 08:01:24
[2026-06-12 08:01:24,561.561 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 08:01:24,710.710 INFO    ] Initializing speech engine...
[2026-06-12 08:01:24,716.716 INFO    ] 2026-06-12 08:01:24
[2026-06-12 08:01:24,923.923 INFO    ] 2026-06-12 08:01:24
[2026-06-12 08:01:24,952.952 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 08:01:25,134.134 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 08:01:25,144.144 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 08:01:25,294.294 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 08:01:25,349.349 INFO    ] time= 12/06/2026 08:01:25
[2026-06-12 08:01:25,365.365 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 08:01:25,372.372 INFO    ] Checking for existing commands in stream...
[2026-06-12 08:01:25,438.438 INFO    ] No existing commands found in stream
[2026-06-12 08:01:30,462.462 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 08:01:30,466.466 INFO    ] Waiting 1.50 seconds before fallback handling...
[2026-06-12 08:01:32,306.306 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 08:01:32,308.308 INFO    ] Checking for system updates...
[2026-06-12 08:01:32,331.331 INFO    ] 200
[2026-06-12 08:01:32,333.333 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:01:32,371.371 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 08:01:32,373.373 INFO    ] No update needed
[2026-06-12 08:01:32,375.375 INFO    ] Checking for camera pi updates...
[2026-06-12 08:01:32,400.400 INFO    ] 200
[2026-06-12 08:01:32,401.401 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:01:32,428.428 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 08:01:32,451.451 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 08:01:32,452.452 INFO    ] No camera update needed
[2026-06-12 08:01:32,454.454 INFO    ] Script finished. Safe exiting...
[2026-06-12 08:01:32,455.455 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 08:01:32,459.459 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 08:01:32,462.462 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 08:01:34,501.501 INFO    ] ================================================
[2026-06-12 08:01:34,516.516 INFO    ] Launching Daemon at Fri Jun 12 08:01:34 IST 2026
[2026-06-12 08:01:34,528.528 INFO    ] ================================================
[2026-06-12 08:01:34,895.895 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 08:01:34
[2026-06-12 08:01:35,207.207 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 08:01:35,352.352 INFO    ] Initializing speech engine...
[2026-06-12 08:01:35,356.356 INFO    ] 2026-06-12 08:01:35
[2026-06-12 08:01:35,566.566 INFO    ] 2026-06-12 08:01:35
[2026-06-12 08:01:35,595.595 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 08:01:35,781.781 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 08:01:35,795.795 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 08:01:35,936.936 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 08:01:36,005.005 INFO    ] time= 12/06/2026 08:01:35
[2026-06-12 08:01:36,029.029 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 08:01:36,031.031 INFO    ] Checking for existing commands in stream...
[2026-06-12 08:01:36,163.163 INFO    ] No existing commands found in stream
[2026-06-12 08:01:41,172.172 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 08:01:41,173.173 INFO    ] Waiting 1.00 seconds before fallback handling...
[2026-06-12 08:01:42,475.475 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 08:01:42,476.476 INFO    ] Checking for system updates...
[2026-06-12 08:01:42,500.500 INFO    ] 200
[2026-06-12 08:01:42,501.501 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:01:42,538.538 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 08:01:42,540.540 INFO    ] No update needed
[2026-06-12 08:01:42,542.542 INFO    ] Checking for camera pi updates...
[2026-06-12 08:01:42,563.563 INFO    ] 200
[2026-06-12 08:01:42,565.565 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:01:42,592.592 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 08:01:42,641.641 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 08:01:42,643.643 INFO    ] No camera update needed
[2026-06-12 08:01:42,644.644 INFO    ] Script finished. Safe exiting...
[2026-06-12 08:01:42,645.645 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 08:01:42,648.648 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 08:01:42,651.651 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 08:01:44,682.682 INFO    ] ================================================
[2026-06-12 08:01:44,690.690 INFO    ] Launching Daemon at Fri Jun 12 08:01:44 IST 2026
[2026-06-12 08:01:44,696.696 INFO    ] ================================================
[2026-06-12 08:01:45,049.049 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 08:01:45
[2026-06-12 08:01:45,363.363 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 08:01:45,496.496 INFO    ] Initializing speech engine...
[2026-06-12 08:01:45,504.504 INFO    ] 2026-06-12 08:01:45
[2026-06-12 08:01:45,719.719 INFO    ] 2026-06-12 08:01:45
[2026-06-12 08:01:45,748.748 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 08:01:45,883.883 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 08:01:45,921.921 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 08:01:46,092.092 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 08:01:46,155.155 INFO    ] time= 12/06/2026 08:01:46
[2026-06-12 08:01:46,184.184 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 08:01:46,201.201 INFO    ] Checking for existing commands in stream...
[2026-06-12 08:01:46,330.330 INFO    ] No existing commands found in stream
[2026-06-12 08:01:51,341.341 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 08:01:51,344.344 INFO    ] Waiting 1.14 seconds before fallback handling...
[2026-06-12 08:01:52,858.858 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 08:01:52,859.859 INFO    ] Checking for system updates...
[2026-06-12 08:01:52,880.880 INFO    ] 200
[2026-06-12 08:01:52,882.882 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:01:52,914.914 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 08:01:52,916.916 INFO    ] No update needed
[2026-06-12 08:01:52,917.917 INFO    ] Checking for camera pi updates...
[2026-06-12 08:01:52,940.940 INFO    ] 200
[2026-06-12 08:01:52,941.941 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:01:52,965.965 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 08:01:53,113.113 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 08:01:53,114.114 INFO    ] No camera update needed
[2026-06-12 08:01:53,116.116 INFO    ] Script finished. Safe exiting...
[2026-06-12 08:01:53,117.117 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 08:01:53,120.120 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 08:01:53,123.123 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 08:01:55,162.162 INFO    ] ================================================
[2026-06-12 08:01:55,179.179 INFO    ] Launching Daemon at Fri Jun 12 08:01:55 IST 2026
[2026-06-12 08:01:55,189.189 INFO    ] ================================================
[2026-06-12 08:01:55,573.573 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 08:01:55
[2026-06-12 08:01:55,912.912 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 08:01:56,050.050 INFO    ] Initializing speech engine...
[2026-06-12 08:01:56,063.063 INFO    ] 2026-06-12 08:01:56
[2026-06-12 08:01:56,275.275 INFO    ] 2026-06-12 08:01:56
[2026-06-12 08:01:56,303.303 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 08:01:56,486.486 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 08:01:56,490.490 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 08:01:56,626.626 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 08:01:56,690.690 INFO    ] time= 12/06/2026 08:01:56
[2026-06-12 08:01:56,709.709 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 08:01:56,720.720 INFO    ] Checking for existing commands in stream...
[2026-06-12 08:01:56,790.790 INFO    ] No existing commands found in stream
[2026-06-12 08:02:01,800.800 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 08:02:01,803.803 INFO    ] Waiting 3.05 seconds before fallback handling...
[2026-06-12 08:02:05,228.228 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 08:02:05,229.229 INFO    ] Checking for system updates...
[2026-06-12 08:02:05,251.251 INFO    ] 200
[2026-06-12 08:02:05,253.253 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:02:05,284.284 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 08:02:05,285.285 INFO    ] No update needed
[2026-06-12 08:02:05,286.286 INFO    ] Checking for camera pi updates...
[2026-06-12 08:02:05,306.306 INFO    ] 200
[2026-06-12 08:02:05,307.307 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:02:05,331.331 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 08:02:05,367.367 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 08:02:05,369.369 INFO    ] No camera update needed
[2026-06-12 08:02:05,370.370 INFO    ] Script finished. Safe exiting...
[2026-06-12 08:02:05,371.371 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 08:02:05,375.375 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 08:02:05,378.378 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 08:02:07,417.417 INFO    ] ================================================
[2026-06-12 08:02:07,433.433 INFO    ] Launching Daemon at Fri Jun 12 08:02:07 IST 2026
[2026-06-12 08:02:07,444.444 INFO    ] ================================================
[2026-06-12 08:02:07,779.779 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 08:02:07
[2026-06-12 08:02:08,090.090 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 08:02:08,224.224 INFO    ] Initializing speech engine...
[2026-06-12 08:02:08,232.232 INFO    ] 2026-06-12 08:02:08
[2026-06-12 08:02:08,454.454 INFO    ] 2026-06-12 08:02:08
[2026-06-12 08:02:08,484.484 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 08:02:08,620.620 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 08:02:08,682.682 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 08:02:08,815.815 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 08:02:08,873.873 INFO    ] time= 12/06/2026 08:02:08
[2026-06-12 08:02:08,907.907 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 08:02:08,912.912 INFO    ] Checking for existing commands in stream...
[2026-06-12 08:02:08,983.983 INFO    ] No existing commands found in stream
[2026-06-12 08:02:13,992.992 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 08:02:13,995.995 INFO    ] Waiting 2.03 seconds before fallback handling...
[2026-06-12 08:02:16,399.399 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 08:02:16,400.400 INFO    ] Checking for system updates...
[2026-06-12 08:02:16,421.421 INFO    ] 200
[2026-06-12 08:02:16,423.423 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:02:16,453.453 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 08:02:16,454.454 INFO    ] No update needed
[2026-06-12 08:02:16,456.456 INFO    ] Checking for camera pi updates...
[2026-06-12 08:02:16,476.476 INFO    ] 200
[2026-06-12 08:02:16,477.477 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:02:16,501.501 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 08:02:16,539.539 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 08:02:16,541.541 INFO    ] No camera update needed
[2026-06-12 08:02:16,542.542 INFO    ] Script finished. Safe exiting...
[2026-06-12 08:02:16,543.543 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 08:02:16,546.546 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 08:02:16,548.548 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 08:02:18,586.586 INFO    ] ================================================
[2026-06-12 08:02:18,602.602 INFO    ] Launching Daemon at Fri Jun 12 08:02:18 IST 2026
[2026-06-12 08:02:18,613.613 INFO    ] ================================================
[2026-06-12 08:02:18,950.950 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 08:02:18
[2026-06-12 08:02:19,265.265 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 08:02:19,408.408 INFO    ] Initializing speech engine...
[2026-06-12 08:02:19,413.413 INFO    ] 2026-06-12 08:02:19
[2026-06-12 08:02:19,616.616 INFO    ] 2026-06-12 08:02:19
[2026-06-12 08:02:19,644.644 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 08:02:19,828.828 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 08:02:19,836.836 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 08:02:19,966.966 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 08:02:20,030.030 INFO    ] time= 12/06/2026 08:02:19
[2026-06-12 08:02:20,057.057 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 08:02:20,063.063 INFO    ] Checking for existing commands in stream...
[2026-06-12 08:02:20,128.128 INFO    ] No existing commands found in stream
[2026-06-12 08:02:25,138.138 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 08:02:25,141.141 INFO    ] Waiting 2.51 seconds before fallback handling...
[2026-06-12 08:02:28,026.026 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 08:02:28,027.027 INFO    ] Checking for system updates...
[2026-06-12 08:02:28,048.048 INFO    ] 200
[2026-06-12 08:02:28,050.050 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:02:28,081.081 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 08:02:28,082.082 INFO    ] No update needed
[2026-06-12 08:02:28,083.083 INFO    ] Checking for camera pi updates...
[2026-06-12 08:02:28,103.103 INFO    ] 200
[2026-06-12 08:02:28,105.105 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:02:28,129.129 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 08:02:28,164.164 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 08:02:28,166.166 INFO    ] No camera update needed
[2026-06-12 08:02:28,167.167 INFO    ] Script finished. Safe exiting...
[2026-06-12 08:02:28,168.168 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 08:02:28,172.172 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 08:02:28,175.175 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 08:02:30,215.215 INFO    ] ================================================
[2026-06-12 08:02:30,230.230 INFO    ] Launching Daemon at Fri Jun 12 08:02:30 IST 2026
[2026-06-12 08:02:30,241.241 INFO    ] ================================================
[2026-06-12 08:02:30,599.599 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 08:02:30
[2026-06-12 08:02:30,917.917 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 08:02:31,062.062 INFO    ] Initializing speech engine...
[2026-06-12 08:02:31,075.075 INFO    ] 2026-06-12 08:02:31
[2026-06-12 08:02:31,305.305 INFO    ] 2026-06-12 08:02:31
[2026-06-12 08:02:31,336.336 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 08:02:31,513.513 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 08:02:31,551.551 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 08:02:31,707.707 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 08:02:31,769.769 INFO    ] time= 12/06/2026 08:02:31
[2026-06-12 08:02:31,795.795 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 08:02:31,874.874 INFO    ] Checking for existing commands in stream...
[2026-06-12 08:02:31,935.935 INFO    ] No existing commands found in stream
[2026-06-12 08:02:36,944.944 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 08:02:36,948.948 INFO    ] Waiting 3.08 seconds before fallback handling...
[2026-06-12 08:02:40,403.403 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 08:02:40,404.404 INFO    ] Checking for system updates...
[2026-06-12 08:02:40,425.425 INFO    ] 200
[2026-06-12 08:02:40,426.426 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:02:40,456.456 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 08:02:40,457.457 INFO    ] No update needed
[2026-06-12 08:02:40,458.458 INFO    ] Checking for camera pi updates...
[2026-06-12 08:02:40,478.478 INFO    ] 200
[2026-06-12 08:02:40,480.480 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:02:40,505.505 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 08:02:40,546.546 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 08:02:40,548.548 INFO    ] No camera update needed
[2026-06-12 08:02:40,549.549 INFO    ] Script finished. Safe exiting...
[2026-06-12 08:02:40,551.551 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 08:02:40,554.554 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 08:02:40,557.557 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 08:02:42,595.595 INFO    ] ================================================
[2026-06-12 08:02:42,610.610 INFO    ] Launching Daemon at Fri Jun 12 08:02:42 IST 2026
[2026-06-12 08:02:42,621.621 INFO    ] ================================================
[2026-06-12 08:02:42,987.987 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 08:02:42
[2026-06-12 08:02:43,299.299 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 08:02:43,439.439 INFO    ] Initializing speech engine...
[2026-06-12 08:02:43,449.449 INFO    ] 2026-06-12 08:02:43
[2026-06-12 08:02:43,667.667 INFO    ] 2026-06-12 08:02:43
[2026-06-12 08:02:43,698.698 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 08:02:43,895.895 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 08:02:43,898.898 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 08:02:44,034.034 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 08:02:44,095.095 INFO    ] time= 12/06/2026 08:02:44
[2026-06-12 08:02:44,135.135 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 08:02:44,141.141 INFO    ] Checking for existing commands in stream...
[2026-06-12 08:02:44,209.209 INFO    ] No existing commands found in stream
[2026-06-12 08:02:49,218.218 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 08:02:49,221.221 INFO    ] Waiting 0.83 seconds before fallback handling...
[2026-06-12 08:02:50,445.445 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 08:02:50,447.447 INFO    ] Checking for system updates...
[2026-06-12 08:02:50,468.468 INFO    ] 200
[2026-06-12 08:02:50,469.469 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:02:50,501.501 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 08:02:50,502.502 INFO    ] No update needed
[2026-06-12 08:02:50,504.504 INFO    ] Checking for camera pi updates...
[2026-06-12 08:02:50,523.523 INFO    ] 200
[2026-06-12 08:02:50,524.524 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:02:50,551.551 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 08:02:50,587.587 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 08:02:50,588.588 INFO    ] No camera update needed
[2026-06-12 08:02:50,590.590 INFO    ] Script finished. Safe exiting...
[2026-06-12 08:02:50,591.591 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 08:02:50,594.594 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 08:02:50,597.597 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 08:02:52,635.635 INFO    ] ================================================
[2026-06-12 08:02:52,650.650 INFO    ] Launching Daemon at Fri Jun 12 08:02:52 IST 2026
[2026-06-12 08:02:52,661.661 INFO    ] ================================================
[2026-06-12 08:02:53,020.020 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 08:02:53
[2026-06-12 08:02:53,333.333 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 08:02:53,465.465 INFO    ] Initializing speech engine...
[2026-06-12 08:02:53,474.474 INFO    ] 2026-06-12 08:02:53
[2026-06-12 08:02:53,696.696 INFO    ] 2026-06-12 08:02:53
[2026-06-12 08:02:53,726.726 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 08:02:53,908.908 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 08:02:53,925.925 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 08:02:54,068.068 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 08:02:54,126.126 INFO    ] time= 12/06/2026 08:02:54
[2026-06-12 08:02:54,160.160 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 08:02:54,172.172 INFO    ] Checking for existing commands in stream...
[2026-06-12 08:02:54,248.248 INFO    ] No existing commands found in stream
[2026-06-12 08:02:59,257.257 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 08:02:59,260.260 INFO    ] Waiting 2.96 seconds before fallback handling...
[2026-06-12 08:03:02,543.543 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 08:03:02,544.544 INFO    ] Checking for system updates...
[2026-06-12 08:03:02,565.565 INFO    ] 200
[2026-06-12 08:03:02,566.566 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:03:02,599.599 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 08:03:02,600.600 INFO    ] No update needed
[2026-06-12 08:03:02,601.601 INFO    ] Checking for camera pi updates...
[2026-06-12 08:03:02,621.621 INFO    ] 200
[2026-06-12 08:03:02,622.622 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:03:02,645.645 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 08:03:02,669.669 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 08:03:02,670.670 INFO    ] No camera update needed
[2026-06-12 08:03:02,672.672 INFO    ] Script finished. Safe exiting...
[2026-06-12 08:03:02,673.673 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 08:03:02,676.676 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 08:03:02,678.678 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 08:03:04,717.717 INFO    ] ================================================
[2026-06-12 08:03:04,732.732 INFO    ] Launching Daemon at Fri Jun 12 08:03:04 IST 2026
[2026-06-12 08:03:04,743.743 INFO    ] ================================================
[2026-06-12 08:03:05,100.100 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 08:03:05
[2026-06-12 08:03:05,439.439 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 08:03:05,572.572 INFO    ] Initializing speech engine...
[2026-06-12 08:03:05,575.575 INFO    ] 2026-06-12 08:03:05
[2026-06-12 08:03:05,806.806 INFO    ] 2026-06-12 08:03:05
[2026-06-12 08:03:05,837.837 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 08:03:05,971.971 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 08:03:06,013.013 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 08:03:06,177.177 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 08:03:06,235.235 INFO    ] time= 12/06/2026 08:03:06
[2026-06-12 08:03:06,263.263 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 08:03:06,285.285 INFO    ] Checking for existing commands in stream...
[2026-06-12 08:03:06,361.361 INFO    ] No existing commands found in stream
[2026-06-12 08:03:11,371.371 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 08:03:11,374.374 INFO    ] Waiting 1.83 seconds before fallback handling...
[2026-06-12 08:03:13,593.593 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 08:03:13,595.595 INFO    ] Checking for system updates...
[2026-06-12 08:03:13,615.615 INFO    ] 200
[2026-06-12 08:03:13,617.617 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:03:13,648.648 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 08:03:13,650.650 INFO    ] No update needed
[2026-06-12 08:03:13,651.651 INFO    ] Checking for camera pi updates...
[2026-06-12 08:03:13,671.671 INFO    ] 200
[2026-06-12 08:03:13,672.672 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:03:13,699.699 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 08:03:13,737.737 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 08:03:13,739.739 INFO    ] No camera update needed
[2026-06-12 08:03:13,740.740 INFO    ] Script finished. Safe exiting...
[2026-06-12 08:03:13,741.741 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 08:03:13,744.744 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 08:03:13,747.747 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 08:03:15,786.786 INFO    ] ================================================
[2026-06-12 08:03:15,801.801 INFO    ] Launching Daemon at Fri Jun 12 08:03:15 IST 2026
[2026-06-12 08:03:15,812.812 INFO    ] ================================================
[2026-06-12 08:03:16,171.171 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 08:03:16
[2026-06-12 08:03:16,487.487 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 08:03:16,634.634 INFO    ] Initializing speech engine...
[2026-06-12 08:03:16,639.639 INFO    ] 2026-06-12 08:03:16
[2026-06-12 08:03:16,840.840 INFO    ] 2026-06-12 08:03:16
[2026-06-12 08:03:16,870.870 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 08:03:17,056.056 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 08:03:17,065.065 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 08:03:17,194.194 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 08:03:17,262.262 INFO    ] time= 12/06/2026 08:03:17
[2026-06-12 08:03:17,291.291 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 08:03:17,297.297 INFO    ] Checking for existing commands in stream...
[2026-06-12 08:03:17,364.364 INFO    ] No existing commands found in stream
[2026-06-12 08:03:22,373.373 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 08:03:22,376.376 INFO    ] Waiting 2.23 seconds before fallback handling...
[2026-06-12 08:03:24,978.978 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 08:03:24,980.980 INFO    ] Checking for system updates...
[2026-06-12 08:03:25,002.002 INFO    ] 200
[2026-06-12 08:03:25,003.003 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:03:25,033.033 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 08:03:25,035.035 INFO    ] No update needed
[2026-06-12 08:03:25,036.036 INFO    ] Checking for camera pi updates...
[2026-06-12 08:03:25,055.055 INFO    ] 200
[2026-06-12 08:03:25,056.056 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:03:25,080.080 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 08:03:25,126.126 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 08:03:25,127.127 INFO    ] No camera update needed
[2026-06-12 08:03:25,129.129 INFO    ] Script finished. Safe exiting...
[2026-06-12 08:03:25,130.130 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 08:03:25,133.133 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 08:03:25,136.136 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 08:03:27,175.175 INFO    ] ================================================
[2026-06-12 08:03:27,190.190 INFO    ] Launching Daemon at Fri Jun 12 08:03:27 IST 2026
[2026-06-12 08:03:27,201.201 INFO    ] ================================================
[2026-06-12 08:03:27,533.533 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 08:03:27
[2026-06-12 08:03:27,849.849 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 08:03:27,980.980 INFO    ] Initializing speech engine...
[2026-06-12 08:03:27,983.983 INFO    ] 2026-06-12 08:03:27
[2026-06-12 08:03:28,199.199 INFO    ] 2026-06-12 08:03:28
[2026-06-12 08:03:28,228.228 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 08:03:28,412.412 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 08:03:28,421.421 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 08:03:28,556.556 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 08:03:28,618.618 INFO    ] time= 12/06/2026 08:03:28
[2026-06-12 08:03:28,642.642 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 08:03:28,648.648 INFO    ] Checking for existing commands in stream...
[2026-06-12 08:03:28,715.715 INFO    ] No existing commands found in stream
[2026-06-12 08:03:33,729.729 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 08:03:33,732.732 INFO    ] Waiting 2.62 seconds before fallback handling...
[2026-06-12 08:03:36,735.735 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 08:03:36,737.737 INFO    ] Checking for system updates...
[2026-06-12 08:03:36,757.757 INFO    ] 200
[2026-06-12 08:03:36,759.759 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:03:36,789.789 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 08:03:36,790.790 INFO    ] No update needed
[2026-06-12 08:03:36,792.792 INFO    ] Checking for camera pi updates...
[2026-06-12 08:03:36,813.813 INFO    ] 200
[2026-06-12 08:03:36,814.814 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:03:36,837.837 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 08:03:36,873.873 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 08:03:36,875.875 INFO    ] No camera update needed
[2026-06-12 08:03:36,876.876 INFO    ] Script finished. Safe exiting...
[2026-06-12 08:03:36,877.877 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 08:03:36,880.880 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 08:03:36,887.887 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 08:03:38,925.925 INFO    ] ================================================
[2026-06-12 08:03:38,941.941 INFO    ] Launching Daemon at Fri Jun 12 08:03:38 IST 2026
[2026-06-12 08:03:38,952.952 INFO    ] ================================================
[2026-06-12 08:03:39,325.325 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 08:03:39
[2026-06-12 08:03:39,641.641 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 08:03:39,772.772 INFO    ] Initializing speech engine...
[2026-06-12 08:03:39,780.780 INFO    ] 2026-06-12 08:03:39
[2026-06-12 08:03:39,992.992 INFO    ] 2026-06-12 08:03:39
[2026-06-12 08:03:40,021.021 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 08:03:40,204.204 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 08:03:40,214.214 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 08:03:40,354.354 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 08:03:40,411.411 INFO    ] time= 12/06/2026 08:03:40
[2026-06-12 08:03:40,435.435 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 08:03:40,442.442 INFO    ] Checking for existing commands in stream...
[2026-06-12 08:03:40,508.508 INFO    ] No existing commands found in stream
[2026-06-12 08:03:45,517.517 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 08:03:45,520.520 INFO    ] Waiting 3.95 seconds before fallback handling...
[2026-06-12 08:03:49,858.858 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 08:03:49,859.859 INFO    ] Checking for system updates...
[2026-06-12 08:03:49,881.881 INFO    ] 200
[2026-06-12 08:03:49,882.882 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:03:49,915.915 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 08:03:49,916.916 INFO    ] No update needed
[2026-06-12 08:03:49,917.917 INFO    ] Checking for camera pi updates...
[2026-06-12 08:03:49,937.937 INFO    ] 200
[2026-06-12 08:03:49,938.938 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:03:49,962.962 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 08:03:50,001.001 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 08:03:50,002.002 INFO    ] No camera update needed
[2026-06-12 08:03:50,004.004 INFO    ] Script finished. Safe exiting...
[2026-06-12 08:03:50,005.005 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 08:03:50,008.008 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 08:03:50,011.011 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 08:03:52,052.052 INFO    ] ================================================
[2026-06-12 08:03:52,068.068 INFO    ] Launching Daemon at Fri Jun 12 08:03:52 IST 2026
[2026-06-12 08:03:52,079.079 INFO    ] ================================================
[2026-06-12 08:03:52,433.433 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 08:03:52
[2026-06-12 08:03:52,750.750 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 08:03:52,883.883 INFO    ] Initializing speech engine...
[2026-06-12 08:03:52,891.891 INFO    ] 2026-06-12 08:03:52
[2026-06-12 08:03:53,103.103 INFO    ] 2026-06-12 08:03:53
[2026-06-12 08:03:53,132.132 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 08:03:53,315.315 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 08:03:53,325.325 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 08:03:53,461.461 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 08:03:53,523.523 INFO    ] time= 12/06/2026 08:03:53
[2026-06-12 08:03:53,547.547 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 08:03:53,549.549 INFO    ] Checking for existing commands in stream...
[2026-06-12 08:03:53,620.620 INFO    ] No existing commands found in stream
[2026-06-12 08:03:58,629.629 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 08:03:58,632.632 INFO    ] Waiting 2.25 seconds before fallback handling...
[2026-06-12 08:04:01,250.250 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 08:04:01,251.251 INFO    ] Checking for system updates...
[2026-06-12 08:04:01,272.272 INFO    ] 200
[2026-06-12 08:04:01,273.273 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:04:01,305.305 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 08:04:01,307.307 INFO    ] No update needed
[2026-06-12 08:04:01,308.308 INFO    ] Checking for camera pi updates...
[2026-06-12 08:04:01,328.328 INFO    ] 200
[2026-06-12 08:04:01,329.329 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:04:01,357.357 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 08:04:01,499.499 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 08:04:01,502.502 INFO    ] No camera update needed
[2026-06-12 08:04:01,504.504 INFO    ] Script finished. Safe exiting...
[2026-06-12 08:04:01,507.507 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 08:04:01,512.512 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 08:04:01,518.518 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 08:04:03,551.551 INFO    ] ================================================
[2026-06-12 08:04:03,566.566 INFO    ] Launching Daemon at Fri Jun 12 08:04:03 IST 2026
[2026-06-12 08:04:03,577.577 INFO    ] ================================================
[2026-06-12 08:04:03,952.952 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 08:04:03
[2026-06-12 08:04:04,285.285 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 08:04:04,436.436 INFO    ] Initializing speech engine...
[2026-06-12 08:04:04,441.441 INFO    ] 2026-06-12 08:04:04
[2026-06-12 08:04:04,651.651 INFO    ] 2026-06-12 08:04:04
[2026-06-12 08:04:04,681.681 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 08:04:04,804.804 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 08:04:04,867.867 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 08:04:05,007.007 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 08:04:05,075.075 INFO    ] time= 12/06/2026 08:04:05
[2026-06-12 08:04:05,099.099 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 08:04:05,106.106 INFO    ] Checking for existing commands in stream...
[2026-06-12 08:04:05,173.173 INFO    ] No existing commands found in stream
[2026-06-12 08:04:10,188.188 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 08:04:10,191.191 INFO    ] Waiting 3.90 seconds before fallback handling...
[2026-06-12 08:04:14,489.489 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 08:04:14,491.491 INFO    ] Checking for system updates...
[2026-06-12 08:04:14,512.512 INFO    ] 200
[2026-06-12 08:04:14,514.514 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:04:14,544.544 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 08:04:14,545.545 INFO    ] No update needed
[2026-06-12 08:04:14,547.547 INFO    ] Checking for camera pi updates...
[2026-06-12 08:04:14,569.569 INFO    ] 200
[2026-06-12 08:04:14,570.570 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:04:14,593.593 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 08:04:14,635.635 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 08:04:14,637.637 INFO    ] No camera update needed
[2026-06-12 08:04:14,638.638 INFO    ] Script finished. Safe exiting...
[2026-06-12 08:04:14,639.639 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 08:04:14,642.642 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 08:04:14,645.645 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 08:04:16,683.683 INFO    ] ================================================
[2026-06-12 08:04:16,699.699 INFO    ] Launching Daemon at Fri Jun 12 08:04:16 IST 2026
[2026-06-12 08:04:16,709.709 INFO    ] ================================================
[2026-06-12 08:04:17,077.077 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 08:04:17
[2026-06-12 08:04:17,417.417 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 08:04:17,570.570 INFO    ] Initializing speech engine...
[2026-06-12 08:04:17,576.576 INFO    ] 2026-06-12 08:04:17
[2026-06-12 08:04:17,787.787 INFO    ] 2026-06-12 08:04:17
[2026-06-12 08:04:17,816.816 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 08:04:18,004.004 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 08:04:18,007.007 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 08:04:18,146.146 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 08:04:18,205.205 INFO    ] time= 12/06/2026 08:04:18
[2026-06-12 08:04:18,239.239 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 08:04:18,246.246 INFO    ] Checking for existing commands in stream...
[2026-06-12 08:04:18,338.338 INFO    ] No existing commands found in stream
[2026-06-12 08:04:23,348.348 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 08:04:23,351.351 INFO    ] Waiting 1.24 seconds before fallback handling...
[2026-06-12 08:04:24,961.961 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 08:04:24,962.962 INFO    ] Checking for system updates...
[2026-06-12 08:04:24,983.983 INFO    ] 200
[2026-06-12 08:04:24,985.985 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:04:25,020.020 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 08:04:25,022.022 INFO    ] No update needed
[2026-06-12 08:04:25,023.023 INFO    ] Checking for camera pi updates...
[2026-06-12 08:04:25,043.043 INFO    ] 200
[2026-06-12 08:04:25,044.044 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:04:25,069.069 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 08:04:25,105.105 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 08:04:25,106.106 INFO    ] No camera update needed
[2026-06-12 08:04:25,108.108 INFO    ] Script finished. Safe exiting...
[2026-06-12 08:04:25,109.109 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 08:04:25,112.112 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 08:04:25,115.115 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 08:04:27,155.155 INFO    ] ================================================
[2026-06-12 08:04:27,170.170 INFO    ] Launching Daemon at Fri Jun 12 08:04:27 IST 2026
[2026-06-12 08:04:27,181.181 INFO    ] ================================================
[2026-06-12 08:04:27,543.543 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 08:04:27
[2026-06-12 08:04:27,882.882 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 08:04:28,035.035 INFO    ] Initializing speech engine...
[2026-06-12 08:04:28,040.040 INFO    ] 2026-06-12 08:04:28
[2026-06-12 08:04:28,251.251 INFO    ] 2026-06-12 08:04:28
[2026-06-12 08:04:28,280.280 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 08:04:28,468.468 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 08:04:28,477.477 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 08:04:28,626.626 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 08:04:28,680.680 INFO    ] time= 12/06/2026 08:04:28
[2026-06-12 08:04:28,702.702 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 08:04:28,709.709 INFO    ] Checking for existing commands in stream...
[2026-06-12 08:04:28,777.777 INFO    ] No existing commands found in stream
[2026-06-12 08:04:33,810.810 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 08:04:33,813.813 INFO    ] Waiting 0.79 seconds before fallback handling...
[2026-06-12 08:04:34,992.992 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 08:04:34,993.993 INFO    ] Checking for system updates...
[2026-06-12 08:04:35,015.015 INFO    ] 200
[2026-06-12 08:04:35,017.017 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:04:35,048.048 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 08:04:35,049.049 INFO    ] No update needed
[2026-06-12 08:04:35,051.051 INFO    ] Checking for camera pi updates...
[2026-06-12 08:04:35,071.071 INFO    ] 200
[2026-06-12 08:04:35,072.072 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:04:35,096.096 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 08:04:35,132.132 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 08:04:35,133.133 INFO    ] No camera update needed
[2026-06-12 08:04:35,135.135 INFO    ] Script finished. Safe exiting...
[2026-06-12 08:04:35,136.136 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 08:04:35,140.140 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 08:04:35,143.143 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 08:04:37,183.183 INFO    ] ================================================
[2026-06-12 08:04:37,198.198 INFO    ] Launching Daemon at Fri Jun 12 08:04:37 IST 2026
[2026-06-12 08:04:37,209.209 INFO    ] ================================================
[2026-06-12 08:04:37,573.573 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 08:04:37
[2026-06-12 08:04:37,890.890 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 08:04:38,022.022 INFO    ] Initializing speech engine...
[2026-06-12 08:04:38,025.025 INFO    ] 2026-06-12 08:04:38
[2026-06-12 08:04:38,243.243 INFO    ] 2026-06-12 08:04:38
[2026-06-12 08:04:38,272.272 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 08:04:38,454.454 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 08:04:38,464.464 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 08:04:38,589.589 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 08:04:38,651.651 INFO    ] time= 12/06/2026 08:04:38
[2026-06-12 08:04:38,682.682 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 08:04:38,688.688 INFO    ] Checking for existing commands in stream...
[2026-06-12 08:04:38,755.755 INFO    ] No existing commands found in stream
[2026-06-12 08:04:43,764.764 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 08:04:43,767.767 INFO    ] Waiting 3.38 seconds before fallback handling...
[2026-06-12 08:04:47,562.562 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 08:04:47,565.565 INFO    ] Checking for system updates...
[2026-06-12 08:04:47,602.602 INFO    ] 200
[2026-06-12 08:04:47,605.605 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:04:47,664.664 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 08:04:47,667.667 INFO    ] No update needed
[2026-06-12 08:04:47,669.669 INFO    ] Checking for camera pi updates...
[2026-06-12 08:04:47,698.698 INFO    ] 200
[2026-06-12 08:04:47,699.699 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:04:47,723.723 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 08:04:47,759.759 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 08:04:47,761.761 INFO    ] No camera update needed
[2026-06-12 08:04:47,762.762 INFO    ] Script finished. Safe exiting...
[2026-06-12 08:04:47,764.764 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 08:04:47,767.767 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 08:04:47,769.769 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 08:04:49,809.809 INFO    ] ================================================
[2026-06-12 08:04:49,824.824 INFO    ] Launching Daemon at Fri Jun 12 08:04:49 IST 2026
[2026-06-12 08:04:49,835.835 INFO    ] ================================================
[2026-06-12 08:04:50,212.212 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 08:04:50
[2026-06-12 08:04:50,530.530 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 08:04:50,662.662 INFO    ] Initializing speech engine...
[2026-06-12 08:04:50,670.670 INFO    ] 2026-06-12 08:04:50
[2026-06-12 08:04:50,883.883 INFO    ] 2026-06-12 08:04:50
[2026-06-12 08:04:50,913.913 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 08:04:51,096.096 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 08:04:51,100.100 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 08:04:51,236.236 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 08:04:51,300.300 INFO    ] time= 12/06/2026 08:04:51
[2026-06-12 08:04:51,327.327 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 08:04:51,334.334 INFO    ] Checking for existing commands in stream...
[2026-06-12 08:04:51,402.402 INFO    ] No existing commands found in stream
[2026-06-12 08:04:56,410.410 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 08:04:56,411.411 INFO    ] Waiting 1.76 seconds before fallback handling...
[2026-06-12 08:04:58,553.553 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 08:04:58,555.555 INFO    ] Checking for system updates...
[2026-06-12 08:04:58,577.577 INFO    ] 200
[2026-06-12 08:04:58,578.578 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:04:58,612.612 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 08:04:58,613.613 INFO    ] No update needed
[2026-06-12 08:04:58,614.614 INFO    ] Checking for camera pi updates...
[2026-06-12 08:04:58,635.635 INFO    ] 200
[2026-06-12 08:04:58,636.636 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:04:58,660.660 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 08:04:58,696.696 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 08:04:58,698.698 INFO    ] No camera update needed
[2026-06-12 08:04:58,699.699 INFO    ] Script finished. Safe exiting...
[2026-06-12 08:04:58,700.700 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 08:04:58,703.703 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 08:04:58,706.706 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 08:05:00,747.747 INFO    ] ================================================
[2026-06-12 08:05:00,762.762 INFO    ] Launching Daemon at Fri Jun 12 08:05:00 IST 2026
[2026-06-12 08:05:00,773.773 INFO    ] ================================================
[2026-06-12 08:05:01,097.097 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 08:05:01
[2026-06-12 08:05:01,410.410 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 08:05:01,573.573 INFO    ] Initializing speech engine...
[2026-06-12 08:05:01,584.584 INFO    ] 2026-06-12 08:05:01
[2026-06-12 08:05:01,889.889 INFO    ] 2026-06-12 08:05:01
[2026-06-12 08:05:01,934.934 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 08:05:02,084.084 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 08:05:02,086.086 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 08:05:02,257.257 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 08:05:02,262.262 INFO    ] time= 12/06/2026 08:05:02
[2026-06-12 08:05:02,275.275 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 08:05:02,293.293 INFO    ] Checking for existing commands in stream...
[2026-06-12 08:05:02,408.408 INFO    ] No existing commands found in stream
[2026-06-12 08:05:07,424.424 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 08:05:07,427.427 INFO    ] Waiting 3.67 seconds before fallback handling...
[2026-06-12 08:05:11,497.497 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 08:05:11,499.499 INFO    ] Checking for system updates...
[2026-06-12 08:05:11,520.520 INFO    ] 200
[2026-06-12 08:05:11,522.522 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:05:11,552.552 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 08:05:11,554.554 INFO    ] No update needed
[2026-06-12 08:05:11,555.555 INFO    ] Checking for camera pi updates...
[2026-06-12 08:05:11,574.574 INFO    ] 200
[2026-06-12 08:05:11,576.576 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:05:11,598.598 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 08:05:11,660.660 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 08:05:11,661.661 INFO    ] No camera update needed
[2026-06-12 08:05:11,663.663 INFO    ] Script finished. Safe exiting...
[2026-06-12 08:05:11,664.664 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 08:05:11,667.667 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 08:05:11,670.670 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 08:05:13,710.710 INFO    ] ================================================
[2026-06-12 08:05:13,725.725 INFO    ] Launching Daemon at Fri Jun 12 08:05:13 IST 2026
[2026-06-12 08:05:13,736.736 INFO    ] ================================================
[2026-06-12 08:05:14,096.096 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 08:05:14
[2026-06-12 08:05:14,419.419 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 08:05:14,573.573 INFO    ] Initializing speech engine...
[2026-06-12 08:05:14,578.578 INFO    ] 2026-06-12 08:05:14
[2026-06-12 08:05:14,790.790 INFO    ] 2026-06-12 08:05:14
[2026-06-12 08:05:14,819.819 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 08:05:14,960.960 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 08:05:15,008.008 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 08:05:15,154.154 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 08:05:15,217.217 INFO    ] time= 12/06/2026 08:05:15
[2026-06-12 08:05:15,242.242 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 08:05:15,248.248 INFO    ] Checking for existing commands in stream...
[2026-06-12 08:05:15,340.340 INFO    ] No existing commands found in stream
[2026-06-12 08:05:20,349.349 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 08:05:20,353.353 INFO    ] Waiting 3.73 seconds before fallback handling...
[2026-06-12 08:05:24,425.425 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 08:05:24,427.427 INFO    ] Checking for system updates...
[2026-06-12 08:05:24,451.451 INFO    ] 200
[2026-06-12 08:05:24,452.452 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:05:24,486.486 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 08:05:24,488.488 INFO    ] No update needed
[2026-06-12 08:05:24,489.489 INFO    ] Checking for camera pi updates...
[2026-06-12 08:05:24,511.511 INFO    ] 200
[2026-06-12 08:05:24,513.513 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:05:24,538.538 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 08:05:24,584.584 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 08:05:24,585.585 INFO    ] No camera update needed
[2026-06-12 08:05:24,587.587 INFO    ] Script finished. Safe exiting...
[2026-06-12 08:05:24,588.588 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 08:05:24,592.592 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 08:05:24,595.595 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 08:05:26,634.634 INFO    ] ================================================
[2026-06-12 08:05:26,650.650 INFO    ] Launching Daemon at Fri Jun 12 08:05:26 IST 2026
[2026-06-12 08:05:26,660.660 INFO    ] ================================================
[2026-06-12 08:05:26,995.995 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 08:05:26
[2026-06-12 08:05:27,314.314 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 08:05:27,450.450 INFO    ] Initializing speech engine...
[2026-06-12 08:05:27,455.455 INFO    ] 2026-06-12 08:05:27
[2026-06-12 08:05:27,660.660 INFO    ] 2026-06-12 08:05:27
[2026-06-12 08:05:27,695.695 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 08:05:27,854.854 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 08:05:27,902.902 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 08:05:28,066.066 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 08:05:28,088.088 INFO    ] time= 12/06/2026 08:05:28
[2026-06-12 08:05:28,151.151 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 08:05:28,177.177 INFO    ] Checking for existing commands in stream...
[2026-06-12 08:05:28,254.254 INFO    ] No existing commands found in stream
[2026-06-12 08:05:33,265.265 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 08:05:33,268.268 INFO    ] Waiting 0.89 seconds before fallback handling...
[2026-06-12 08:05:34,507.507 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 08:05:34,509.509 INFO    ] Checking for system updates...
[2026-06-12 08:05:34,530.530 INFO    ] 200
[2026-06-12 08:05:34,531.531 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:05:34,562.562 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 08:05:34,563.563 INFO    ] No update needed
[2026-06-12 08:05:34,564.564 INFO    ] Checking for camera pi updates...
[2026-06-12 08:05:34,584.584 INFO    ] 200
[2026-06-12 08:05:34,586.586 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:05:34,609.609 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 08:05:34,649.649 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 08:05:34,651.651 INFO    ] No camera update needed
[2026-06-12 08:05:34,652.652 INFO    ] Script finished. Safe exiting...
[2026-06-12 08:05:34,654.654 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 08:05:34,656.656 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 08:05:34,659.659 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 08:05:36,697.697 INFO    ] ================================================
[2026-06-12 08:05:36,713.713 INFO    ] Launching Daemon at Fri Jun 12 08:05:36 IST 2026
[2026-06-12 08:05:36,735.735 INFO    ] ================================================
[2026-06-12 08:05:37,078.078 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 08:05:37
[2026-06-12 08:05:37,390.390 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 08:05:37,520.520 INFO    ] Initializing speech engine...
[2026-06-12 08:05:37,524.524 INFO    ] 2026-06-12 08:05:37
[2026-06-12 08:05:37,740.740 INFO    ] 2026-06-12 08:05:37
[2026-06-12 08:05:37,769.769 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 08:05:37,892.892 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 08:05:37,958.958 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 08:05:38,089.089 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 08:05:38,150.150 INFO    ] time= 12/06/2026 08:05:38
[2026-06-12 08:05:38,184.184 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 08:05:38,189.189 INFO    ] Checking for existing commands in stream...
[2026-06-12 08:05:38,261.261 INFO    ] No existing commands found in stream
[2026-06-12 08:05:43,275.275 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 08:05:43,278.278 INFO    ] Waiting 1.64 seconds before fallback handling...
[2026-06-12 08:05:45,286.286 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 08:05:45,288.288 INFO    ] Checking for system updates...
[2026-06-12 08:05:45,309.309 INFO    ] 200
[2026-06-12 08:05:45,310.310 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:05:45,343.343 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 08:05:45,345.345 INFO    ] No update needed
[2026-06-12 08:05:45,346.346 INFO    ] Checking for camera pi updates...
[2026-06-12 08:05:45,366.366 INFO    ] 200
[2026-06-12 08:05:45,367.367 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:05:45,391.391 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 08:05:45,425.425 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 08:05:45,426.426 INFO    ] No camera update needed
[2026-06-12 08:05:45,427.427 INFO    ] Script finished. Safe exiting...
[2026-06-12 08:05:45,429.429 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 08:05:45,432.432 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 08:05:45,434.434 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 08:05:47,476.476 INFO    ] ================================================
[2026-06-12 08:05:47,491.491 INFO    ] Launching Daemon at Fri Jun 12 08:05:47 IST 2026
[2026-06-12 08:05:47,503.503 INFO    ] ================================================
[2026-06-12 08:05:47,824.824 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 08:05:47
[2026-06-12 08:05:48,135.135 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 08:05:48,268.268 INFO    ] Initializing speech engine...
[2026-06-12 08:05:48,273.273 INFO    ] 2026-06-12 08:05:48
[2026-06-12 08:05:48,464.464 INFO    ] 2026-06-12 08:05:48
[2026-06-12 08:05:48,510.510 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 08:05:48,671.671 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 08:05:48,709.709 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 08:05:48,885.885 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 08:05:48,922.922 INFO    ] time= 12/06/2026 08:05:48
[2026-06-12 08:05:48,969.969 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 08:05:48,996.996 INFO    ] Checking for existing commands in stream...
[2026-06-12 08:05:49,073.073 INFO    ] No existing commands found in stream
[2026-06-12 08:05:54,083.083 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 08:05:54,086.086 INFO    ] Waiting 2.29 seconds before fallback handling...
[2026-06-12 08:05:56,749.749 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 08:05:56,751.751 INFO    ] Checking for system updates...
[2026-06-12 08:05:56,771.771 INFO    ] 200
[2026-06-12 08:05:56,773.773 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:05:56,807.807 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 08:05:56,808.808 INFO    ] No update needed
[2026-06-12 08:05:56,810.810 INFO    ] Checking for camera pi updates...
[2026-06-12 08:05:56,835.835 INFO    ] 200
[2026-06-12 08:05:56,837.837 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:05:56,860.860 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 08:05:56,906.906 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 08:05:56,907.907 INFO    ] No camera update needed
[2026-06-12 08:05:56,908.908 INFO    ] Script finished. Safe exiting...
[2026-06-12 08:05:56,910.910 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 08:05:56,913.913 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 08:05:56,915.915 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 08:05:58,954.954 INFO    ] ================================================
[2026-06-12 08:05:58,969.969 INFO    ] Launching Daemon at Fri Jun 12 08:05:58 IST 2026
[2026-06-12 08:05:58,980.980 INFO    ] ================================================
[2026-06-12 08:05:59,327.327 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 08:05:59
[2026-06-12 08:05:59,639.639 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 08:05:59,776.776 INFO    ] Initializing speech engine...
[2026-06-12 08:05:59,784.784 INFO    ] 2026-06-12 08:05:59
[2026-06-12 08:05:59,991.991 INFO    ] 2026-06-12 08:05:59
[2026-06-12 08:06:00,021.021 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 08:06:00,206.206 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 08:06:00,216.216 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 08:06:00,345.345 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 08:06:00,406.406 INFO    ] time= 12/06/2026 08:06:00
[2026-06-12 08:06:00,440.440 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 08:06:00,441.441 INFO    ] Checking for existing commands in stream...
[2026-06-12 08:06:00,514.514 INFO    ] No existing commands found in stream
[2026-06-12 08:06:05,522.522 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 08:06:05,525.525 INFO    ] Waiting 1.19 seconds before fallback handling...
[2026-06-12 08:06:07,084.084 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 08:06:07,086.086 INFO    ] Checking for system updates...
[2026-06-12 08:06:07,106.106 INFO    ] 200
[2026-06-12 08:06:07,108.108 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:06:07,138.138 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 08:06:07,139.139 INFO    ] No update needed
[2026-06-12 08:06:07,141.141 INFO    ] Checking for camera pi updates...
[2026-06-12 08:06:07,162.162 INFO    ] 200
[2026-06-12 08:06:07,163.163 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:06:07,188.188 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 08:06:07,229.229 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 08:06:07,231.231 INFO    ] No camera update needed
[2026-06-12 08:06:07,232.232 INFO    ] Script finished. Safe exiting...
[2026-06-12 08:06:07,234.234 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 08:06:07,236.236 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 08:06:07,239.239 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 08:06:09,277.277 INFO    ] ================================================
[2026-06-12 08:06:09,293.293 INFO    ] Launching Daemon at Fri Jun 12 08:06:09 IST 2026
[2026-06-12 08:06:09,304.304 INFO    ] ================================================
[2026-06-12 08:06:09,655.655 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 08:06:09
[2026-06-12 08:06:09,972.972 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 08:06:10,115.115 INFO    ] Initializing speech engine...
[2026-06-12 08:06:10,120.120 INFO    ] 2026-06-12 08:06:10
[2026-06-12 08:06:10,325.325 INFO    ] 2026-06-12 08:06:10
[2026-06-12 08:06:10,353.353 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 08:06:10,537.537 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 08:06:10,546.546 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 08:06:10,695.695 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 08:06:10,743.743 INFO    ] time= 12/06/2026 08:06:10
[2026-06-12 08:06:10,765.765 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 08:06:10,771.771 INFO    ] Checking for existing commands in stream...
[2026-06-12 08:06:10,861.861 INFO    ] No existing commands found in stream
[2026-06-12 08:06:15,875.875 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 08:06:15,878.878 INFO    ] Waiting 3.92 seconds before fallback handling...
[2026-06-12 08:06:20,174.174 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 08:06:20,175.175 INFO    ] Checking for system updates...
[2026-06-12 08:06:20,198.198 INFO    ] 200
[2026-06-12 08:06:20,199.199 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:06:20,230.230 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 08:06:20,231.231 INFO    ] No update needed
[2026-06-12 08:06:20,233.233 INFO    ] Checking for camera pi updates...
[2026-06-12 08:06:20,252.252 INFO    ] 200
[2026-06-12 08:06:20,254.254 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:06:20,277.277 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 08:06:20,314.314 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 08:06:20,315.315 INFO    ] No camera update needed
[2026-06-12 08:06:20,316.316 INFO    ] Script finished. Safe exiting...
[2026-06-12 08:06:20,318.318 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 08:06:20,321.321 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 08:06:20,324.324 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 08:06:22,364.364 INFO    ] ================================================
[2026-06-12 08:06:22,380.380 INFO    ] Launching Daemon at Fri Jun 12 08:06:22 IST 2026
[2026-06-12 08:06:22,390.390 INFO    ] ================================================
[2026-06-12 08:06:22,748.748 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 08:06:22
[2026-06-12 08:06:23,094.094 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 08:06:23,250.250 INFO    ] Initializing speech engine...
[2026-06-12 08:06:23,254.254 INFO    ] 2026-06-12 08:06:23
[2026-06-12 08:06:23,466.466 INFO    ] 2026-06-12 08:06:23
[2026-06-12 08:06:23,495.495 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 08:06:23,684.684 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 08:06:23,696.696 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 08:06:23,841.841 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 08:06:23,895.895 INFO    ] time= 12/06/2026 08:06:23
[2026-06-12 08:06:23,919.919 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 08:06:23,924.924 INFO    ] Checking for existing commands in stream...
[2026-06-12 08:06:23,992.992 INFO    ] No existing commands found in stream
[2026-06-12 08:06:29,022.022 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 08:06:29,026.026 INFO    ] Waiting 1.15 seconds before fallback handling...
[2026-06-12 08:06:30,586.586 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 08:06:30,588.588 INFO    ] Checking for system updates...
[2026-06-12 08:06:30,609.609 INFO    ] 200
[2026-06-12 08:06:30,611.611 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:06:30,641.641 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 08:06:30,642.642 INFO    ] No update needed
[2026-06-12 08:06:30,644.644 INFO    ] Checking for camera pi updates...
[2026-06-12 08:06:30,665.665 INFO    ] 200
[2026-06-12 08:06:30,667.667 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:06:30,693.693 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 08:06:30,733.733 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 08:06:30,735.735 INFO    ] No camera update needed
[2026-06-12 08:06:30,736.736 INFO    ] Script finished. Safe exiting...
[2026-06-12 08:06:30,737.737 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 08:06:30,740.740 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 08:06:30,743.743 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 08:06:32,774.774 INFO    ] ================================================
[2026-06-12 08:06:32,782.782 INFO    ] Launching Daemon at Fri Jun 12 08:06:32 IST 2026
[2026-06-12 08:06:32,788.788 INFO    ] ================================================
[2026-06-12 08:06:33,144.144 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 08:06:33
[2026-06-12 08:06:33,457.457 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 08:06:33,587.587 INFO    ] Initializing speech engine...
[2026-06-12 08:06:33,591.591 INFO    ] 2026-06-12 08:06:33
[2026-06-12 08:06:33,811.811 INFO    ] 2026-06-12 08:06:33
[2026-06-12 08:06:33,839.839 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 08:06:34,025.025 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 08:06:34,035.035 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 08:06:34,159.159 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 08:06:34,214.214 INFO    ] time= 12/06/2026 08:06:34
[2026-06-12 08:06:34,258.258 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 08:06:34,260.260 INFO    ] Checking for existing commands in stream...
[2026-06-12 08:06:34,332.332 INFO    ] No existing commands found in stream
[2026-06-12 08:06:39,341.341 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 08:06:39,344.344 INFO    ] Waiting 1.88 seconds before fallback handling...
[2026-06-12 08:06:41,591.591 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 08:06:41,593.593 INFO    ] Checking for system updates...
[2026-06-12 08:06:41,615.615 INFO    ] 200
[2026-06-12 08:06:41,617.617 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:06:41,647.647 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 08:06:41,648.648 INFO    ] No update needed
[2026-06-12 08:06:41,650.650 INFO    ] Checking for camera pi updates...
[2026-06-12 08:06:41,669.669 INFO    ] 200
[2026-06-12 08:06:41,671.671 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:06:41,696.696 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 08:06:41,741.741 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 08:06:41,742.742 INFO    ] No camera update needed
[2026-06-12 08:06:41,744.744 INFO    ] Script finished. Safe exiting...
[2026-06-12 08:06:41,745.745 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 08:06:41,748.748 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 08:06:41,751.751 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 08:06:43,788.788 INFO    ] ================================================
[2026-06-12 08:06:43,803.803 INFO    ] Launching Daemon at Fri Jun 12 08:06:43 IST 2026
[2026-06-12 08:06:43,814.814 INFO    ] ================================================
[2026-06-12 08:06:44,160.160 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 08:06:44
[2026-06-12 08:06:44,511.511 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 08:06:44,658.658 INFO    ] Initializing speech engine...
[2026-06-12 08:06:44,661.661 INFO    ] 2026-06-12 08:06:44
[2026-06-12 08:06:44,881.881 INFO    ] 2026-06-12 08:06:44
[2026-06-12 08:06:44,912.912 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 08:06:45,087.087 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 08:06:45,116.116 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 08:06:45,264.264 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 08:06:45,322.322 INFO    ] time= 12/06/2026 08:06:45
[2026-06-12 08:06:45,359.359 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 08:06:45,371.371 INFO    ] Checking for existing commands in stream...
[2026-06-12 08:06:45,449.449 INFO    ] No existing commands found in stream
[2026-06-12 08:06:50,458.458 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 08:06:50,461.461 INFO    ] Waiting 3.31 seconds before fallback handling...
[2026-06-12 08:06:54,124.124 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 08:06:54,125.125 INFO    ] Checking for system updates...
[2026-06-12 08:06:54,148.148 INFO    ] 200
[2026-06-12 08:06:54,149.149 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:06:54,182.182 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 08:06:54,184.184 INFO    ] No update needed
[2026-06-12 08:06:54,185.185 INFO    ] Checking for camera pi updates...
[2026-06-12 08:06:54,206.206 INFO    ] 200
[2026-06-12 08:06:54,207.207 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:06:54,231.231 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 08:06:54,266.266 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 08:06:54,268.268 INFO    ] No camera update needed
[2026-06-12 08:06:54,269.269 INFO    ] Script finished. Safe exiting...
[2026-06-12 08:06:54,271.271 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 08:06:54,274.274 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 08:06:54,276.276 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 08:06:56,306.306 INFO    ] ================================================
[2026-06-12 08:06:56,315.315 INFO    ] Launching Daemon at Fri Jun 12 08:06:56 IST 2026
[2026-06-12 08:06:56,321.321 INFO    ] ================================================
[2026-06-12 08:06:56,656.656 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 08:06:56
[2026-06-12 08:06:57,000.000 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 08:06:57,158.158 INFO    ] Initializing speech engine...
[2026-06-12 08:06:57,164.164 INFO    ] 2026-06-12 08:06:57
[2026-06-12 08:06:57,365.365 INFO    ] 2026-06-12 08:06:57
[2026-06-12 08:06:57,393.393 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 08:06:57,576.576 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 08:06:57,586.586 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 08:06:57,709.709 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 08:06:57,770.770 INFO    ] time= 12/06/2026 08:06:57
[2026-06-12 08:06:57,807.807 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 08:06:57,814.814 INFO    ] Checking for existing commands in stream...
[2026-06-12 08:06:57,881.881 INFO    ] No existing commands found in stream
[2026-06-12 08:07:02,895.895 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 08:07:02,898.898 INFO    ] Waiting 0.47 seconds before fallback handling...
[2026-06-12 08:07:03,725.725 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 08:07:03,726.726 INFO    ] Checking for system updates...
[2026-06-12 08:07:03,751.751 INFO    ] 200
[2026-06-12 08:07:03,752.752 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:07:03,785.785 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 08:07:03,786.786 INFO    ] No update needed
[2026-06-12 08:07:03,787.787 INFO    ] Checking for camera pi updates...
[2026-06-12 08:07:03,808.808 INFO    ] 200
[2026-06-12 08:07:03,810.810 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:07:03,833.833 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 08:07:03,866.866 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 08:07:03,867.867 INFO    ] No camera update needed
[2026-06-12 08:07:03,869.869 INFO    ] Script finished. Safe exiting...
[2026-06-12 08:07:03,870.870 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 08:07:03,873.873 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 08:07:03,876.876 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 08:07:05,915.915 INFO    ] ================================================
[2026-06-12 08:07:05,930.930 INFO    ] Launching Daemon at Fri Jun 12 08:07:05 IST 2026
[2026-06-12 08:07:05,941.941 INFO    ] ================================================
[2026-06-12 08:07:06,262.262 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 08:07:06
[2026-06-12 08:07:06,576.576 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 08:07:06,706.706 INFO    ] Initializing speech engine...
[2026-06-12 08:07:06,710.710 INFO    ] 2026-06-12 08:07:06
[2026-06-12 08:07:06,931.931 INFO    ] 2026-06-12 08:07:06
[2026-06-12 08:07:06,960.960 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 08:07:07,146.146 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 08:07:07,149.149 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 08:07:07,287.287 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 08:07:07,356.356 INFO    ] time= 12/06/2026 08:07:07
[2026-06-12 08:07:07,380.380 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 08:07:07,387.387 INFO    ] Checking for existing commands in stream...
[2026-06-12 08:07:07,455.455 INFO    ] No existing commands found in stream
[2026-06-12 08:07:12,487.487 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 08:07:12,490.490 INFO    ] Waiting 3.86 seconds before fallback handling...
[2026-06-12 08:07:16,703.703 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 08:07:16,705.705 INFO    ] Checking for system updates...
[2026-06-12 08:07:16,727.727 INFO    ] 200
[2026-06-12 08:07:16,728.728 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:07:16,761.761 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 08:07:16,763.763 INFO    ] No update needed
[2026-06-12 08:07:16,764.764 INFO    ] Checking for camera pi updates...
[2026-06-12 08:07:16,785.785 INFO    ] 200
[2026-06-12 08:07:16,786.786 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:07:16,811.811 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 08:07:16,851.851 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 08:07:16,853.853 INFO    ] No camera update needed
[2026-06-12 08:07:16,854.854 INFO    ] Script finished. Safe exiting...
[2026-06-12 08:07:16,855.855 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 08:07:16,858.858 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 08:07:16,861.861 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 08:07:18,900.900 INFO    ] ================================================
[2026-06-12 08:07:18,915.915 INFO    ] Launching Daemon at Fri Jun 12 08:07:18 IST 2026
[2026-06-12 08:07:18,926.926 INFO    ] ================================================
[2026-06-12 08:07:19,302.302 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 08:07:19
[2026-06-12 08:07:19,646.646 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 08:07:19,800.800 INFO    ] Initializing speech engine...
[2026-06-12 08:07:19,804.804 INFO    ] 2026-06-12 08:07:19
[2026-06-12 08:07:20,012.012 INFO    ] 2026-06-12 08:07:19
[2026-06-12 08:07:20,042.042 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 08:07:20,228.228 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 08:07:20,232.232 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 08:07:20,369.369 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 08:07:20,439.439 INFO    ] time= 12/06/2026 08:07:20
[2026-06-12 08:07:20,462.462 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 08:07:20,468.468 INFO    ] Checking for existing commands in stream...
[2026-06-12 08:07:20,537.537 INFO    ] No existing commands found in stream
[2026-06-12 08:07:25,551.551 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 08:07:25,555.555 INFO    ] Waiting 2.01 seconds before fallback handling...
[2026-06-12 08:07:27,934.934 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 08:07:27,936.936 INFO    ] Checking for system updates...
[2026-06-12 08:07:27,957.957 INFO    ] 200
[2026-06-12 08:07:27,958.958 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:07:27,988.988 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 08:07:27,990.990 INFO    ] No update needed
[2026-06-12 08:07:27,991.991 INFO    ] Checking for camera pi updates...
[2026-06-12 08:07:28,011.011 INFO    ] 200
[2026-06-12 08:07:28,012.012 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:07:28,037.037 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 08:07:28,077.077 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 08:07:28,078.078 INFO    ] No camera update needed
[2026-06-12 08:07:28,079.079 INFO    ] Script finished. Safe exiting...
[2026-06-12 08:07:28,081.081 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 08:07:28,084.084 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 08:07:28,087.087 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 08:07:30,126.126 INFO    ] ================================================
[2026-06-12 08:07:30,141.141 INFO    ] Launching Daemon at Fri Jun 12 08:07:30 IST 2026
[2026-06-12 08:07:30,152.152 INFO    ] ================================================
[2026-06-12 08:07:30,503.503 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 08:07:30
[2026-06-12 08:07:30,818.818 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 08:07:30,960.960 INFO    ] Initializing speech engine...
[2026-06-12 08:07:30,966.966 INFO    ] 2026-06-12 08:07:30
[2026-06-12 08:07:31,168.168 INFO    ] 2026-06-12 08:07:31
[2026-06-12 08:07:31,197.197 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 08:07:31,355.355 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 08:07:31,401.401 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 08:07:31,552.552 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 08:07:31,624.624 INFO    ] time= 12/06/2026 08:07:31
[2026-06-12 08:07:31,650.650 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 08:07:31,657.657 INFO    ] Checking for existing commands in stream...
[2026-06-12 08:07:31,750.750 INFO    ] No existing commands found in stream
[2026-06-12 08:07:36,769.769 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 08:07:36,772.772 INFO    ] Waiting 0.47 seconds before fallback handling...
[2026-06-12 08:07:37,595.595 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 08:07:37,596.596 INFO    ] Checking for system updates...
[2026-06-12 08:07:37,619.619 INFO    ] 200
[2026-06-12 08:07:37,620.620 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:07:37,653.653 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 08:07:37,654.654 INFO    ] No update needed
[2026-06-12 08:07:37,656.656 INFO    ] Checking for camera pi updates...
[2026-06-12 08:07:37,676.676 INFO    ] 200
[2026-06-12 08:07:37,678.678 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:07:37,703.703 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 08:07:37,740.740 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 08:07:37,742.742 INFO    ] No camera update needed
[2026-06-12 08:07:37,743.743 INFO    ] Script finished. Safe exiting...
[2026-06-12 08:07:37,744.744 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 08:07:37,747.747 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 08:07:37,750.750 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 08:07:39,789.789 INFO    ] ================================================
[2026-06-12 08:07:39,804.804 INFO    ] Launching Daemon at Fri Jun 12 08:07:39 IST 2026
[2026-06-12 08:07:39,815.815 INFO    ] ================================================
[2026-06-12 08:07:40,170.170 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 08:07:40
[2026-06-12 08:07:40,513.513 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 08:07:40,662.662 INFO    ] Initializing speech engine...
[2026-06-12 08:07:40,670.670 INFO    ] 2026-06-12 08:07:40
[2026-06-12 08:07:40,885.885 INFO    ] 2026-06-12 08:07:40
[2026-06-12 08:07:40,915.915 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 08:07:41,104.104 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 08:07:41,114.114 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 08:07:41,266.266 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 08:07:41,327.327 INFO    ] time= 12/06/2026 08:07:41
[2026-06-12 08:07:41,338.338 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 08:07:41,344.344 INFO    ] Checking for existing commands in stream...
[2026-06-12 08:07:41,413.413 INFO    ] No existing commands found in stream
[2026-06-12 08:07:46,427.427 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 08:07:46,431.431 INFO    ] Waiting 3.01 seconds before fallback handling...
[2026-06-12 08:07:49,808.808 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 08:07:49,809.809 INFO    ] Checking for system updates...
[2026-06-12 08:07:49,831.831 INFO    ] 200
[2026-06-12 08:07:49,832.832 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:07:49,866.866 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 08:07:49,867.867 INFO    ] No update needed
[2026-06-12 08:07:49,869.869 INFO    ] Checking for camera pi updates...
[2026-06-12 08:07:49,890.890 INFO    ] 200
[2026-06-12 08:07:49,892.892 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:07:49,919.919 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 08:07:49,961.961 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 08:07:49,962.962 INFO    ] No camera update needed
[2026-06-12 08:07:49,964.964 INFO    ] Script finished. Safe exiting...
[2026-06-12 08:07:49,965.965 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 08:07:49,969.969 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 08:07:49,972.972 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 08:07:52,011.011 INFO    ] ================================================
[2026-06-12 08:07:52,026.026 INFO    ] Launching Daemon at Fri Jun 12 08:07:52 IST 2026
[2026-06-12 08:07:52,038.038 INFO    ] ================================================
[2026-06-12 08:07:52,373.373 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 08:07:52
[2026-06-12 08:07:52,687.687 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 08:07:52,819.819 INFO    ] Initializing speech engine...
[2026-06-12 08:07:52,822.822 INFO    ] 2026-06-12 08:07:52
[2026-06-12 08:07:53,041.041 INFO    ] 2026-06-12 08:07:53
[2026-06-12 08:07:53,071.071 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 08:07:53,256.256 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 08:07:53,265.265 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 08:07:53,413.413 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 08:07:53,467.467 INFO    ] time= 12/06/2026 08:07:53
[2026-06-12 08:07:53,489.489 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 08:07:53,495.495 INFO    ] Checking for existing commands in stream...
[2026-06-12 08:07:53,562.562 INFO    ] No existing commands found in stream
[2026-06-12 08:07:58,576.576 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 08:07:58,579.579 INFO    ] Waiting 1.94 seconds before fallback handling...
[2026-06-12 08:08:00,916.916 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 08:08:00,918.918 INFO    ] Checking for system updates...
[2026-06-12 08:08:00,941.941 INFO    ] 200
[2026-06-12 08:08:00,942.942 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:08:00,973.973 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 08:08:00,974.974 INFO    ] No update needed
[2026-06-12 08:08:00,976.976 INFO    ] Checking for camera pi updates...
[2026-06-12 08:08:00,995.995 INFO    ] 200
[2026-06-12 08:08:00,997.997 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:08:01,020.020 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 08:08:01,063.063 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 08:08:01,064.064 INFO    ] No camera update needed
[2026-06-12 08:08:01,066.066 INFO    ] Script finished. Safe exiting...
[2026-06-12 08:08:01,067.067 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 08:08:01,070.070 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 08:08:01,073.073 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 08:08:03,110.110 INFO    ] ================================================
[2026-06-12 08:08:03,126.126 INFO    ] Launching Daemon at Fri Jun 12 08:08:03 IST 2026
[2026-06-12 08:08:03,137.137 INFO    ] ================================================
[2026-06-12 08:08:03,504.504 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 08:08:03
[2026-06-12 08:08:03,846.846 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 08:08:03,997.997 INFO    ] Initializing speech engine...
[2026-06-12 08:08:04,012.012 INFO    ] 2026-06-12 08:08:04
[2026-06-12 08:08:04,230.230 INFO    ] 2026-06-12 08:08:04
[2026-06-12 08:08:04,261.261 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 08:08:04,409.409 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 08:08:04,462.462 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 08:08:04,607.607 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 08:08:04,670.670 INFO    ] time= 12/06/2026 08:08:04
[2026-06-12 08:08:04,710.710 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 08:08:04,712.712 INFO    ] Checking for existing commands in stream...
[2026-06-12 08:08:04,816.816 INFO    ] No existing commands found in stream
[2026-06-12 08:08:09,825.825 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 08:08:09,828.828 INFO    ] Waiting 3.03 seconds before fallback handling...
[2026-06-12 08:08:13,236.236 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 08:08:13,237.237 INFO    ] Checking for system updates...
[2026-06-12 08:08:13,258.258 INFO    ] 200
[2026-06-12 08:08:13,260.260 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:08:13,290.290 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 08:08:13,292.292 INFO    ] No update needed
[2026-06-12 08:08:13,293.293 INFO    ] Checking for camera pi updates...
[2026-06-12 08:08:13,313.313 INFO    ] 200
[2026-06-12 08:08:13,314.314 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:08:13,339.339 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 08:08:13,479.479 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 08:08:13,481.481 INFO    ] No camera update needed
[2026-06-12 08:08:13,482.482 INFO    ] Script finished. Safe exiting...
[2026-06-12 08:08:13,484.484 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 08:08:13,487.487 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 08:08:13,490.490 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 08:08:15,533.533 INFO    ] ================================================
[2026-06-12 08:08:15,548.548 INFO    ] Launching Daemon at Fri Jun 12 08:08:15 IST 2026
[2026-06-12 08:08:15,559.559 INFO    ] ================================================
[2026-06-12 08:08:15,932.932 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 08:08:15
[2026-06-12 08:08:16,273.273 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 08:08:16,427.427 INFO    ] Initializing speech engine...
[2026-06-12 08:08:16,431.431 INFO    ] 2026-06-12 08:08:16
[2026-06-12 08:08:16,639.639 INFO    ] 2026-06-12 08:08:16
[2026-06-12 08:08:16,669.669 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 08:08:16,854.854 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 08:08:16,863.863 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 08:08:16,992.992 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 08:08:17,060.060 INFO    ] time= 12/06/2026 08:08:17
[2026-06-12 08:08:17,084.084 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 08:08:17,090.090 INFO    ] Checking for existing commands in stream...
[2026-06-12 08:08:17,158.158 INFO    ] No existing commands found in stream
[2026-06-12 08:08:22,167.167 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 08:08:22,171.171 INFO    ] Waiting 0.01 seconds before fallback handling...
[2026-06-12 08:08:22,568.568 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 08:08:22,570.570 INFO    ] Checking for system updates...
[2026-06-12 08:08:22,591.591 INFO    ] 200
[2026-06-12 08:08:22,593.593 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:08:22,628.628 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 08:08:22,629.629 INFO    ] No update needed
[2026-06-12 08:08:22,630.630 INFO    ] Checking for camera pi updates...
[2026-06-12 08:08:22,650.650 INFO    ] 200
[2026-06-12 08:08:22,651.651 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:08:22,678.678 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 08:08:22,717.717 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 08:08:22,718.718 INFO    ] No camera update needed
[2026-06-12 08:08:22,720.720 INFO    ] Script finished. Safe exiting...
[2026-06-12 08:08:22,721.721 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 08:08:22,724.724 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 08:08:22,727.727 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 08:08:24,769.769 INFO    ] ================================================
[2026-06-12 08:08:24,785.785 INFO    ] Launching Daemon at Fri Jun 12 08:08:24 IST 2026
[2026-06-12 08:08:24,796.796 INFO    ] ================================================
[2026-06-12 08:08:25,160.160 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 08:08:25
[2026-06-12 08:08:25,471.471 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 08:08:25,603.603 INFO    ] Initializing speech engine...
[2026-06-12 08:08:25,606.606 INFO    ] 2026-06-12 08:08:25
[2026-06-12 08:08:25,825.825 INFO    ] 2026-06-12 08:08:25
[2026-06-12 08:08:25,853.853 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 08:08:26,039.039 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 08:08:26,043.043 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 08:08:26,197.197 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 08:08:26,252.252 INFO    ] time= 12/06/2026 08:08:26
[2026-06-12 08:08:26,274.274 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 08:08:26,281.281 INFO    ] Checking for existing commands in stream...
[2026-06-12 08:08:26,373.373 INFO    ] No existing commands found in stream
[2026-06-12 08:08:31,390.390 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 08:08:31,393.393 INFO    ] Waiting 3.91 seconds before fallback handling...
[2026-06-12 08:08:35,678.678 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 08:08:35,679.679 INFO    ] Checking for system updates...
[2026-06-12 08:08:35,701.701 INFO    ] 200
[2026-06-12 08:08:35,702.702 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:08:35,732.732 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 08:08:35,733.733 INFO    ] No update needed
[2026-06-12 08:08:35,735.735 INFO    ] Checking for camera pi updates...
[2026-06-12 08:08:35,754.754 INFO    ] 200
[2026-06-12 08:08:35,755.755 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:08:35,781.781 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 08:08:35,821.821 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 08:08:35,822.822 INFO    ] No camera update needed
[2026-06-12 08:08:35,824.824 INFO    ] Script finished. Safe exiting...
[2026-06-12 08:08:35,825.825 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 08:08:35,828.828 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 08:08:35,831.831 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 08:08:37,871.871 INFO    ] ================================================
[2026-06-12 08:08:37,887.887 INFO    ] Launching Daemon at Fri Jun 12 08:08:37 IST 2026
[2026-06-12 08:08:37,899.899 INFO    ] ================================================
[2026-06-12 08:08:38,263.263 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 08:08:38
[2026-06-12 08:08:38,580.580 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 08:08:38,713.713 INFO    ] Initializing speech engine...
[2026-06-12 08:08:38,718.718 INFO    ] 2026-06-12 08:08:38
[2026-06-12 08:08:38,950.950 INFO    ] 2026-06-12 08:08:38
[2026-06-12 08:08:38,981.981 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 08:08:39,182.182 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 08:08:39,185.185 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 08:08:39,335.335 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 08:08:39,389.389 INFO    ] time= 12/06/2026 08:08:39
[2026-06-12 08:08:39,424.424 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 08:08:39,436.436 INFO    ] Checking for existing commands in stream...
[2026-06-12 08:08:39,512.512 INFO    ] No existing commands found in stream
[2026-06-12 08:08:44,523.523 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 08:08:44,526.526 INFO    ] Waiting 0.25 seconds before fallback handling...
[2026-06-12 08:08:45,161.161 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 08:08:45,162.162 INFO    ] Checking for system updates...
[2026-06-12 08:08:45,182.182 INFO    ] 200
[2026-06-12 08:08:45,184.184 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:08:45,214.214 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 08:08:45,215.215 INFO    ] No update needed
[2026-06-12 08:08:45,216.216 INFO    ] Checking for camera pi updates...
[2026-06-12 08:08:45,238.238 INFO    ] 200
[2026-06-12 08:08:45,239.239 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:08:45,267.267 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 08:08:45,306.306 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 08:08:45,307.307 INFO    ] No camera update needed
[2026-06-12 08:08:45,309.309 INFO    ] Script finished. Safe exiting...
[2026-06-12 08:08:45,310.310 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 08:08:45,313.313 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 08:08:45,316.316 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 08:08:47,355.355 INFO    ] ================================================
[2026-06-12 08:08:47,371.371 INFO    ] Launching Daemon at Fri Jun 12 08:08:47 IST 2026
[2026-06-12 08:08:47,383.383 INFO    ] ================================================
[2026-06-12 08:08:47,740.740 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 08:08:47
[2026-06-12 08:08:48,052.052 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 08:08:48,184.184 INFO    ] Initializing speech engine...
[2026-06-12 08:08:48,189.189 INFO    ] 2026-06-12 08:08:48
[2026-06-12 08:08:48,421.421 INFO    ] 2026-06-12 08:08:48
[2026-06-12 08:08:48,452.452 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 08:08:48,651.651 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 08:08:48,655.655 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 08:08:48,796.796 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 08:08:48,812.812 INFO    ] time= 12/06/2026 08:08:48
[2026-06-12 08:08:48,878.878 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 08:08:48,904.904 INFO    ] Checking for existing commands in stream...
[2026-06-12 08:08:48,981.981 INFO    ] No existing commands found in stream
[2026-06-12 08:08:53,991.991 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 08:08:53,994.994 INFO    ] Waiting 2.66 seconds before fallback handling...
[2026-06-12 08:08:57,021.021 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 08:08:57,023.023 INFO    ] Checking for system updates...
[2026-06-12 08:08:57,043.043 INFO    ] 200
[2026-06-12 08:08:57,045.045 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:08:57,075.075 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 08:08:57,076.076 INFO    ] No update needed
[2026-06-12 08:08:57,077.077 INFO    ] Checking for camera pi updates...
[2026-06-12 08:08:57,096.096 INFO    ] 200
[2026-06-12 08:08:57,098.098 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:08:57,121.121 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 08:08:57,157.157 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 08:08:57,159.159 INFO    ] No camera update needed
[2026-06-12 08:08:57,160.160 INFO    ] Script finished. Safe exiting...
[2026-06-12 08:08:57,161.161 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 08:08:57,164.164 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 08:08:57,167.167 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 08:08:59,206.206 INFO    ] ================================================
[2026-06-12 08:08:59,223.223 INFO    ] Launching Daemon at Fri Jun 12 08:08:59 IST 2026
[2026-06-12 08:08:59,234.234 INFO    ] ================================================
[2026-06-12 08:08:59,555.555 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 08:08:59
[2026-06-12 08:08:59,867.867 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 08:09:00,003.003 INFO    ] Initializing speech engine...
[2026-06-12 08:09:00,016.016 INFO    ] 2026-06-12 08:09:00
[2026-06-12 08:09:00,219.219 INFO    ] 2026-06-12 08:09:00
[2026-06-12 08:09:00,247.247 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 08:09:00,416.416 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 08:09:00,417.417 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 08:09:00,578.578 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 08:09:00,635.635 INFO    ] time= 12/06/2026 08:09:00
[2026-06-12 08:09:00,675.675 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 08:09:00,687.687 INFO    ] Checking for existing commands in stream...
[2026-06-12 08:09:00,811.811 INFO    ] No existing commands found in stream
[2026-06-12 08:09:05,822.822 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 08:09:05,825.825 INFO    ] Waiting 2.87 seconds before fallback handling...
[2026-06-12 08:09:09,071.071 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 08:09:09,073.073 INFO    ] Checking for system updates...
[2026-06-12 08:09:09,093.093 INFO    ] 200
[2026-06-12 08:09:09,094.094 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:09:09,127.127 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 08:09:09,128.128 INFO    ] No update needed
[2026-06-12 08:09:09,129.129 INFO    ] Checking for camera pi updates...
[2026-06-12 08:09:09,149.149 INFO    ] 200
[2026-06-12 08:09:09,150.150 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:09:09,174.174 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 08:09:09,210.210 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 08:09:09,212.212 INFO    ] No camera update needed
[2026-06-12 08:09:09,213.213 INFO    ] Script finished. Safe exiting...
[2026-06-12 08:09:09,214.214 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 08:09:09,217.217 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 08:09:09,220.220 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 08:09:11,260.260 INFO    ] ================================================
[2026-06-12 08:09:11,276.276 INFO    ] Launching Daemon at Fri Jun 12 08:09:11 IST 2026
[2026-06-12 08:09:11,288.288 INFO    ] ================================================
[2026-06-12 08:09:11,626.626 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 08:09:11
[2026-06-12 08:09:11,943.943 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 08:09:12,076.076 INFO    ] Initializing speech engine...
[2026-06-12 08:09:12,089.089 INFO    ] 2026-06-12 08:09:12
[2026-06-12 08:09:12,295.295 INFO    ] 2026-06-12 08:09:12
[2026-06-12 08:09:12,324.324 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 08:09:12,508.508 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 08:09:12,518.518 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 08:09:12,648.648 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 08:09:12,715.715 INFO    ] time= 12/06/2026 08:09:12
[2026-06-12 08:09:12,739.739 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 08:09:12,745.745 INFO    ] Checking for existing commands in stream...
[2026-06-12 08:09:12,811.811 INFO    ] No existing commands found in stream
[2026-06-12 08:09:17,821.821 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 08:09:17,824.824 INFO    ] Waiting 2.54 seconds before fallback handling...
[2026-06-12 08:09:20,737.737 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 08:09:20,739.739 INFO    ] Checking for system updates...
[2026-06-12 08:09:20,759.759 INFO    ] 200
[2026-06-12 08:09:20,761.761 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:09:20,791.791 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 08:09:20,792.792 INFO    ] No update needed
[2026-06-12 08:09:20,793.793 INFO    ] Checking for camera pi updates...
[2026-06-12 08:09:20,814.814 INFO    ] 200
[2026-06-12 08:09:20,816.816 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:09:20,841.841 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 08:09:20,879.879 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 08:09:20,880.880 INFO    ] No camera update needed
[2026-06-12 08:09:20,881.881 INFO    ] Script finished. Safe exiting...
[2026-06-12 08:09:20,883.883 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 08:09:20,886.886 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 08:09:20,888.888 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 08:09:22,926.926 INFO    ] ================================================
[2026-06-12 08:09:22,947.947 INFO    ] Launching Daemon at Fri Jun 12 08:09:22 IST 2026
[2026-06-12 08:09:22,958.958 INFO    ] ================================================
[2026-06-12 08:09:23,311.311 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 08:09:23
[2026-06-12 08:09:23,623.623 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 08:09:23,754.754 INFO    ] Initializing speech engine...
[2026-06-12 08:09:23,762.762 INFO    ] 2026-06-12 08:09:23
[2026-06-12 08:09:23,976.976 INFO    ] 2026-06-12 08:09:23
[2026-06-12 08:09:24,005.005 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 08:09:24,192.192 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 08:09:24,195.195 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 08:09:24,333.333 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 08:09:24,402.402 INFO    ] time= 12/06/2026 08:09:24
[2026-06-12 08:09:24,425.425 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 08:09:24,431.431 INFO    ] Checking for existing commands in stream...
[2026-06-12 08:09:24,497.497 INFO    ] No existing commands found in stream
[2026-06-12 08:09:29,508.508 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 08:09:29,511.511 INFO    ] Waiting 3.05 seconds before fallback handling...
[2026-06-12 08:09:32,903.903 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 08:09:32,905.905 INFO    ] Checking for system updates...
[2026-06-12 08:09:32,925.925 INFO    ] 200
[2026-06-12 08:09:32,926.926 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:09:32,959.959 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 08:09:32,960.960 INFO    ] No update needed
[2026-06-12 08:09:32,962.962 INFO    ] Checking for camera pi updates...
[2026-06-12 08:09:32,983.983 INFO    ] 200
[2026-06-12 08:09:32,985.985 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:09:33,008.008 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 08:09:33,030.030 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 08:09:33,032.032 INFO    ] No camera update needed
[2026-06-12 08:09:33,033.033 INFO    ] Script finished. Safe exiting...
[2026-06-12 08:09:33,034.034 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 08:09:33,037.037 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 08:09:33,040.040 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 08:09:35,080.080 INFO    ] ================================================
[2026-06-12 08:09:35,095.095 INFO    ] Launching Daemon at Fri Jun 12 08:09:35 IST 2026
[2026-06-12 08:09:35,107.107 INFO    ] ================================================
[2026-06-12 08:09:35,437.437 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 08:09:35
[2026-06-12 08:09:35,749.749 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 08:09:35,882.882 INFO    ] Initializing speech engine...
[2026-06-12 08:09:35,887.887 INFO    ] 2026-06-12 08:09:35
[2026-06-12 08:09:36,112.112 INFO    ] 2026-06-12 08:09:36
[2026-06-12 08:09:36,131.131 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 08:09:36,289.289 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 08:09:36,333.333 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 08:09:36,506.506 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 08:09:36,563.563 INFO    ] time= 12/06/2026 08:09:36
[2026-06-12 08:09:36,598.598 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 08:09:36,616.616 INFO    ] Checking for existing commands in stream...
[2026-06-12 08:09:36,692.692 INFO    ] No existing commands found in stream
[2026-06-12 08:09:41,703.703 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 08:09:41,705.705 INFO    ] Waiting 2.82 seconds before fallback handling...
[2026-06-12 08:09:44,880.880 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 08:09:44,881.881 INFO    ] Checking for system updates...
[2026-06-12 08:09:44,902.902 INFO    ] 200
[2026-06-12 08:09:44,904.904 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:09:44,935.935 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 08:09:44,936.936 INFO    ] No update needed
[2026-06-12 08:09:44,937.937 INFO    ] Checking for camera pi updates...
[2026-06-12 08:09:44,957.957 INFO    ] 200
[2026-06-12 08:09:44,958.958 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:09:44,982.982 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 08:09:45,018.018 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 08:09:45,020.020 INFO    ] No camera update needed
[2026-06-12 08:09:45,021.021 INFO    ] Script finished. Safe exiting...
[2026-06-12 08:09:45,022.022 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 08:09:45,025.025 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 08:09:45,028.028 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 08:09:47,067.067 INFO    ] ================================================
[2026-06-12 08:09:47,088.088 INFO    ] Launching Daemon at Fri Jun 12 08:09:47 IST 2026
[2026-06-12 08:09:47,099.099 INFO    ] ================================================
[2026-06-12 08:09:47,456.456 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 08:09:47
[2026-06-12 08:09:47,804.804 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 08:09:47,955.955 INFO    ] Initializing speech engine...
[2026-06-12 08:09:47,961.961 INFO    ] 2026-06-12 08:09:47
[2026-06-12 08:09:48,168.168 INFO    ] 2026-06-12 08:09:48
[2026-06-12 08:09:48,197.197 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 08:09:48,381.381 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 08:09:48,391.391 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 08:09:48,526.526 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 08:09:48,589.589 INFO    ] time= 12/06/2026 08:09:48
[2026-06-12 08:09:48,612.612 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 08:09:48,619.619 INFO    ] Checking for existing commands in stream...
[2026-06-12 08:09:48,686.686 INFO    ] No existing commands found in stream
[2026-06-12 08:09:53,711.711 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 08:09:53,714.714 INFO    ] Waiting 2.47 seconds before fallback handling...
[2026-06-12 08:09:56,554.554 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 08:09:56,555.555 INFO    ] Checking for system updates...
[2026-06-12 08:09:56,578.578 INFO    ] 200
[2026-06-12 08:09:56,579.579 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:09:56,611.611 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 08:09:56,612.612 INFO    ] No update needed
[2026-06-12 08:09:56,613.613 INFO    ] Checking for camera pi updates...
[2026-06-12 08:09:56,633.633 INFO    ] 200
[2026-06-12 08:09:56,635.635 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:09:56,660.660 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 08:09:56,701.701 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 08:09:56,702.702 INFO    ] No camera update needed
[2026-06-12 08:09:56,704.704 INFO    ] Script finished. Safe exiting...
[2026-06-12 08:09:56,705.705 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 08:09:56,708.708 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 08:09:56,712.712 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 08:09:58,750.750 INFO    ] ================================================
[2026-06-12 08:09:58,765.765 INFO    ] Launching Daemon at Fri Jun 12 08:09:58 IST 2026
[2026-06-12 08:09:58,776.776 INFO    ] ================================================
[2026-06-12 08:09:59,142.142 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 08:09:59
[2026-06-12 08:09:59,480.480 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 08:09:59,634.634 INFO    ] Initializing speech engine...
[2026-06-12 08:09:59,639.639 INFO    ] 2026-06-12 08:09:59
[2026-06-12 08:09:59,845.845 INFO    ] 2026-06-12 08:09:59
[2026-06-12 08:09:59,874.874 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 08:10:00,003.003 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 08:10:00,061.061 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 08:10:00,205.205 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 08:10:00,267.267 INFO    ] time= 12/06/2026 08:10:00
[2026-06-12 08:10:00,291.291 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 08:10:00,297.297 INFO    ] Checking for existing commands in stream...
[2026-06-12 08:10:00,364.364 INFO    ] No existing commands found in stream
[2026-06-12 08:10:05,378.378 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 08:10:05,382.382 INFO    ] Waiting 1.38 seconds before fallback handling...
[2026-06-12 08:10:08,424.424 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 08:10:08,426.426 INFO    ] Checking for system updates...
[2026-06-12 08:10:08,448.448 INFO    ] 200
[2026-06-12 08:10:08,450.450 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:10:08,483.483 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 08:10:08,485.485 INFO    ] No update needed
[2026-06-12 08:10:08,486.486 INFO    ] Checking for camera pi updates...
[2026-06-12 08:10:08,506.506 INFO    ] 200
[2026-06-12 08:10:08,508.508 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:10:08,531.531 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 08:10:08,573.573 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 08:10:08,574.574 INFO    ] No camera update needed
[2026-06-12 08:10:08,576.576 INFO    ] Script finished. Safe exiting...
[2026-06-12 08:10:08,578.578 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 08:10:08,582.582 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 08:10:08,585.585 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 08:10:10,624.624 INFO    ] ================================================
[2026-06-12 08:10:10,639.639 INFO    ] Launching Daemon at Fri Jun 12 08:10:10 IST 2026
[2026-06-12 08:10:10,650.650 INFO    ] ================================================
[2026-06-12 08:10:11,026.026 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 08:10:11
[2026-06-12 08:10:11,343.343 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 08:10:11,475.475 INFO    ] Initializing speech engine...
[2026-06-12 08:10:11,478.478 INFO    ] 2026-06-12 08:10:11
[2026-06-12 08:10:11,695.695 INFO    ] 2026-06-12 08:10:11
[2026-06-12 08:10:11,724.724 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 08:10:11,910.910 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 08:10:11,919.919 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 08:10:12,049.049 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 08:10:12,113.113 INFO    ] time= 12/06/2026 08:10:12
[2026-06-12 08:10:12,141.141 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 08:10:12,148.148 INFO    ] Checking for existing commands in stream...
[2026-06-12 08:10:12,215.215 INFO    ] No existing commands found in stream
[2026-06-12 08:10:17,229.229 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 08:10:17,232.232 INFO    ] Waiting 1.05 seconds before fallback handling...
[2026-06-12 08:10:18,656.656 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 08:10:18,658.658 INFO    ] Checking for system updates...
[2026-06-12 08:10:18,678.678 INFO    ] 200
[2026-06-12 08:10:18,680.680 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:10:18,710.710 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 08:10:18,712.712 INFO    ] No update needed
[2026-06-12 08:10:18,713.713 INFO    ] Checking for camera pi updates...
[2026-06-12 08:10:18,732.732 INFO    ] 200
[2026-06-12 08:10:18,734.734 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:10:18,759.759 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 08:10:18,903.903 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 08:10:18,905.905 INFO    ] No camera update needed
[2026-06-12 08:10:18,906.906 INFO    ] Script finished. Safe exiting...
[2026-06-12 08:10:18,907.907 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 08:10:18,910.910 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 08:10:18,913.913 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 08:10:20,952.952 INFO    ] ================================================
[2026-06-12 08:10:20,967.967 INFO    ] Launching Daemon at Fri Jun 12 08:10:20 IST 2026
[2026-06-12 08:10:20,978.978 INFO    ] ================================================
[2026-06-12 08:10:21,364.364 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 08:10:21
[2026-06-12 08:10:21,680.680 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 08:10:21,818.818 INFO    ] Initializing speech engine...
[2026-06-12 08:10:21,826.826 INFO    ] 2026-06-12 08:10:21
[2026-06-12 08:10:22,032.032 INFO    ] 2026-06-12 08:10:22
[2026-06-12 08:10:22,062.062 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 08:10:22,245.245 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 08:10:22,249.249 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 08:10:22,405.405 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 08:10:22,465.465 INFO    ] time= 12/06/2026 08:10:22
[2026-06-12 08:10:22,476.476 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 08:10:22,482.482 INFO    ] Checking for existing commands in stream...
[2026-06-12 08:10:22,547.547 INFO    ] No existing commands found in stream
[2026-06-12 08:10:27,558.558 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 08:10:27,561.561 INFO    ] Waiting 0.59 seconds before fallback handling...
[2026-06-12 08:10:28,558.558 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 08:10:28,559.559 INFO    ] Checking for system updates...
[2026-06-12 08:10:28,581.581 INFO    ] 200
[2026-06-12 08:10:28,582.582 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:10:28,615.615 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 08:10:28,616.616 INFO    ] No update needed
[2026-06-12 08:10:28,618.618 INFO    ] Checking for camera pi updates...
[2026-06-12 08:10:28,637.637 INFO    ] 200
[2026-06-12 08:10:28,639.639 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:10:28,664.664 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 08:10:28,699.699 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 08:10:28,701.701 INFO    ] No camera update needed
[2026-06-12 08:10:28,702.702 INFO    ] Script finished. Safe exiting...
[2026-06-12 08:10:28,704.704 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 08:10:28,707.707 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 08:10:28,710.710 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 08:10:30,748.748 INFO    ] ================================================
[2026-06-12 08:10:30,764.764 INFO    ] Launching Daemon at Fri Jun 12 08:10:30 IST 2026
[2026-06-12 08:10:30,775.775 INFO    ] ================================================
[2026-06-12 08:10:31,118.118 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 08:10:31
[2026-06-12 08:10:31,438.438 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 08:10:31,576.576 INFO    ] Initializing speech engine...
[2026-06-12 08:10:31,590.590 INFO    ] 2026-06-12 08:10:31
[2026-06-12 08:10:31,810.810 INFO    ] 2026-06-12 08:10:31
[2026-06-12 08:10:31,844.844 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 08:10:32,004.004 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 08:10:32,062.062 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 08:10:32,220.220 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 08:10:32,280.280 INFO    ] time= 12/06/2026 08:10:32
[2026-06-12 08:10:32,315.315 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 08:10:32,342.342 INFO    ] Checking for existing commands in stream...
[2026-06-12 08:10:32,422.422 INFO    ] No existing commands found in stream
[2026-06-12 08:10:37,433.433 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 08:10:37,436.436 INFO    ] Waiting 2.15 seconds before fallback handling...
[2026-06-12 08:10:39,937.937 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 08:10:39,938.938 INFO    ] Checking for system updates...
[2026-06-12 08:10:39,960.960 INFO    ] 200
[2026-06-12 08:10:39,962.962 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:10:39,992.992 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 08:10:39,994.994 INFO    ] No update needed
[2026-06-12 08:10:39,995.995 INFO    ] Checking for camera pi updates...
[2026-06-12 08:10:40,016.016 INFO    ] 200
[2026-06-12 08:10:40,018.018 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:10:40,043.043 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 08:10:40,081.081 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 08:10:40,083.083 INFO    ] No camera update needed
[2026-06-12 08:10:40,084.084 INFO    ] Script finished. Safe exiting...
[2026-06-12 08:10:40,085.085 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 08:10:40,088.088 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 08:10:40,091.091 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 08:10:42,129.129 INFO    ] ================================================
[2026-06-12 08:10:42,144.144 INFO    ] Launching Daemon at Fri Jun 12 08:10:42 IST 2026
[2026-06-12 08:10:42,155.155 INFO    ] ================================================
[2026-06-12 08:10:42,478.478 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 08:10:42
[2026-06-12 08:10:42,788.788 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 08:10:42,931.931 INFO    ] Initializing speech engine...
[2026-06-12 08:10:42,937.937 INFO    ] 2026-06-12 08:10:42
[2026-06-12 08:10:43,144.144 INFO    ] 2026-06-12 08:10:43
[2026-06-12 08:10:43,172.172 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 08:10:43,356.356 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 08:10:43,366.366 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 08:10:43,490.490 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 08:10:43,545.545 INFO    ] time= 12/06/2026 08:10:43
[2026-06-12 08:10:43,588.588 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 08:10:43,590.590 INFO    ] Checking for existing commands in stream...
[2026-06-12 08:10:43,662.662 INFO    ] No existing commands found in stream
[2026-06-12 08:10:48,676.676 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 08:10:48,680.680 INFO    ] Waiting 0.14 seconds before fallback handling...
[2026-06-12 08:10:49,190.190 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 08:10:49,192.192 INFO    ] Checking for system updates...
[2026-06-12 08:10:49,213.213 INFO    ] 200
[2026-06-12 08:10:49,214.214 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:10:49,247.247 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 08:10:49,248.248 INFO    ] No update needed
[2026-06-12 08:10:49,250.250 INFO    ] Checking for camera pi updates...
[2026-06-12 08:10:49,269.269 INFO    ] 200
[2026-06-12 08:10:49,270.270 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:10:49,294.294 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 08:10:49,339.339 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 08:10:49,340.340 INFO    ] No camera update needed
[2026-06-12 08:10:49,341.341 INFO    ] Script finished. Safe exiting...
[2026-06-12 08:10:49,343.343 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 08:10:49,345.345 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 08:10:49,348.348 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 08:10:51,388.388 INFO    ] ================================================
[2026-06-12 08:10:51,403.403 INFO    ] Launching Daemon at Fri Jun 12 08:10:51 IST 2026
[2026-06-12 08:10:51,414.414 INFO    ] ================================================
[2026-06-12 08:10:51,777.777 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 08:10:51
[2026-06-12 08:10:52,120.120 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 08:10:52,259.259 INFO    ] Initializing speech engine...
[2026-06-12 08:10:52,273.273 INFO    ] 2026-06-12 08:10:52
[2026-06-12 08:10:52,491.491 INFO    ] 2026-06-12 08:10:52
[2026-06-12 08:10:52,521.521 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 08:10:52,707.707 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 08:10:52,716.716 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 08:10:52,872.872 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 08:10:52,922.922 INFO    ] time= 12/06/2026 08:10:52
[2026-06-12 08:10:52,938.938 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 08:10:52,945.945 INFO    ] Checking for existing commands in stream...
[2026-06-12 08:10:53,012.012 INFO    ] No existing commands found in stream
[2026-06-12 08:10:58,022.022 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 08:10:58,026.026 INFO    ] Waiting 3.89 seconds before fallback handling...
[2026-06-12 08:11:02,291.291 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 08:11:02,293.293 INFO    ] Checking for system updates...
[2026-06-12 08:11:02,314.314 INFO    ] 200
[2026-06-12 08:11:02,316.316 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:11:02,357.357 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 08:11:02,358.358 INFO    ] No update needed
[2026-06-12 08:11:02,359.359 INFO    ] Checking for camera pi updates...
[2026-06-12 08:11:02,379.379 INFO    ] 200
[2026-06-12 08:11:02,380.380 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:11:02,408.408 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 08:11:02,435.435 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 08:11:02,437.437 INFO    ] No camera update needed
[2026-06-12 08:11:02,438.438 INFO    ] Script finished. Safe exiting...
[2026-06-12 08:11:02,439.439 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 08:11:02,442.442 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 08:11:02,445.445 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 08:11:04,484.484 INFO    ] ================================================
[2026-06-12 08:11:04,500.500 INFO    ] Launching Daemon at Fri Jun 12 08:11:04 IST 2026
[2026-06-12 08:11:04,511.511 INFO    ] ================================================
[2026-06-12 08:11:04,860.860 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 08:11:04
[2026-06-12 08:11:05,199.199 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 08:11:05,343.343 INFO    ] Initializing speech engine...
[2026-06-12 08:11:05,348.348 INFO    ] 2026-06-12 08:11:05
[2026-06-12 08:11:05,584.584 INFO    ] 2026-06-12 08:11:05
[2026-06-12 08:11:05,614.614 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 08:11:05,812.812 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 08:11:05,815.815 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 08:11:05,955.955 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 08:11:06,006.006 INFO    ] time= 12/06/2026 08:11:05
[2026-06-12 08:11:06,040.040 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 08:11:06,063.063 INFO    ] Checking for existing commands in stream...
[2026-06-12 08:11:06,139.139 INFO    ] No existing commands found in stream
[2026-06-12 08:11:11,149.149 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 08:11:11,152.152 INFO    ] Waiting 1.72 seconds before fallback handling...
[2026-06-12 08:11:13,289.289 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 08:11:13,290.290 INFO    ] Checking for system updates...
[2026-06-12 08:11:13,313.313 INFO    ] 200
[2026-06-12 08:11:13,315.315 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:11:13,348.348 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 08:11:13,349.349 INFO    ] No update needed
[2026-06-12 08:11:13,351.351 INFO    ] Checking for camera pi updates...
[2026-06-12 08:11:13,373.373 INFO    ] 200
[2026-06-12 08:11:13,374.374 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:11:13,398.398 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 08:11:13,438.438 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 08:11:13,440.440 INFO    ] No camera update needed
[2026-06-12 08:11:13,441.441 INFO    ] Script finished. Safe exiting...
[2026-06-12 08:11:13,442.442 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 08:11:13,445.445 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 08:11:13,448.448 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 08:11:15,486.486 INFO    ] ================================================
[2026-06-12 08:11:15,502.502 INFO    ] Launching Daemon at Fri Jun 12 08:11:15 IST 2026
[2026-06-12 08:11:15,513.513 INFO    ] ================================================
[2026-06-12 08:11:15,873.873 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 08:11:15
[2026-06-12 08:11:16,215.215 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 08:11:16,371.371 INFO    ] Initializing speech engine...
[2026-06-12 08:11:16,385.385 INFO    ] 2026-06-12 08:11:16
[2026-06-12 08:11:16,596.596 INFO    ] 2026-06-12 08:11:16
[2026-06-12 08:11:16,628.628 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 08:11:16,777.777 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 08:11:16,832.832 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 08:11:16,976.976 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 08:11:17,042.042 INFO    ] time= 12/06/2026 08:11:16
[2026-06-12 08:11:17,067.067 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 08:11:17,085.085 INFO    ] Checking for existing commands in stream...
[2026-06-12 08:11:17,161.161 INFO    ] No existing commands found in stream
[2026-06-12 08:11:22,172.172 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 08:11:22,175.175 INFO    ] Waiting 1.86 seconds before fallback handling...
[2026-06-12 08:11:24,399.399 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 08:11:24,401.401 INFO    ] Checking for system updates...
[2026-06-12 08:11:24,422.422 INFO    ] 200
[2026-06-12 08:11:24,423.423 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:11:24,454.454 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 08:11:24,455.455 INFO    ] No update needed
[2026-06-12 08:11:24,457.457 INFO    ] Checking for camera pi updates...
[2026-06-12 08:11:24,476.476 INFO    ] 200
[2026-06-12 08:11:24,478.478 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:11:24,513.513 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 08:11:24,559.559 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 08:11:24,560.560 INFO    ] No camera update needed
[2026-06-12 08:11:24,562.562 INFO    ] Script finished. Safe exiting...
[2026-06-12 08:11:24,563.563 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 08:11:24,566.566 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 08:11:24,569.569 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 08:11:26,612.612 INFO    ] ================================================
[2026-06-12 08:11:26,627.627 INFO    ] Launching Daemon at Fri Jun 12 08:11:26 IST 2026
[2026-06-12 08:11:26,638.638 INFO    ] ================================================
[2026-06-12 08:11:27,009.009 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 08:11:27
[2026-06-12 08:11:27,351.351 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 08:11:27,502.502 INFO    ] Initializing speech engine...
[2026-06-12 08:11:27,508.508 INFO    ] 2026-06-12 08:11:27
[2026-06-12 08:11:27,716.716 INFO    ] 2026-06-12 08:11:27
[2026-06-12 08:11:27,745.745 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 08:11:27,931.931 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 08:11:27,941.941 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 08:11:28,069.069 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 08:11:28,137.137 INFO    ] time= 12/06/2026 08:11:28
[2026-06-12 08:11:28,162.162 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 08:11:28,168.168 INFO    ] Checking for existing commands in stream...
[2026-06-12 08:11:28,235.235 INFO    ] No existing commands found in stream
[2026-06-12 08:11:33,260.260 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 08:11:33,263.263 INFO    ] Waiting 2.84 seconds before fallback handling...
[2026-06-12 08:11:36,491.491 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 08:11:36,493.493 INFO    ] Checking for system updates...
[2026-06-12 08:11:36,515.515 INFO    ] 200
[2026-06-12 08:11:36,516.516 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:11:36,546.546 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 08:11:36,548.548 INFO    ] No update needed
[2026-06-12 08:11:36,549.549 INFO    ] Checking for camera pi updates...
[2026-06-12 08:11:36,571.571 INFO    ] 200
[2026-06-12 08:11:36,572.572 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:11:36,597.597 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 08:11:36,645.645 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 08:11:36,647.647 INFO    ] No camera update needed
[2026-06-12 08:11:36,648.648 INFO    ] Script finished. Safe exiting...
[2026-06-12 08:11:36,649.649 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 08:11:36,652.652 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 08:11:36,655.655 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 08:11:38,693.693 INFO    ] ================================================
[2026-06-12 08:11:38,708.708 INFO    ] Launching Daemon at Fri Jun 12 08:11:38 IST 2026
[2026-06-12 08:11:38,719.719 INFO    ] ================================================
[2026-06-12 08:11:39,071.071 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 08:11:39
[2026-06-12 08:11:39,384.384 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 08:11:39,515.515 INFO    ] Initializing speech engine...
[2026-06-12 08:11:39,529.529 INFO    ] 2026-06-12 08:11:39
[2026-06-12 08:11:39,732.732 INFO    ] 2026-06-12 08:11:39
[2026-06-12 08:11:39,761.761 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 08:11:39,944.944 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 08:11:39,952.952 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 08:11:40,075.075 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 08:11:40,126.126 INFO    ] time= 12/06/2026 08:11:40
[2026-06-12 08:11:40,170.170 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 08:11:40,175.175 INFO    ] Checking for existing commands in stream...
[2026-06-12 08:11:40,269.269 INFO    ] No existing commands found in stream
[2026-06-12 08:11:45,283.283 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 08:11:45,286.286 INFO    ] Waiting 1.33 seconds before fallback handling...
[2026-06-12 08:11:46,982.982 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 08:11:46,983.983 INFO    ] Checking for system updates...
[2026-06-12 08:11:47,004.004 INFO    ] 200
[2026-06-12 08:11:47,006.006 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:11:47,036.036 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 08:11:47,038.038 INFO    ] No update needed
[2026-06-12 08:11:47,039.039 INFO    ] Checking for camera pi updates...
[2026-06-12 08:11:47,059.059 INFO    ] 200
[2026-06-12 08:11:47,061.061 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:11:47,086.086 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 08:11:47,124.124 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 08:11:47,125.125 INFO    ] No camera update needed
[2026-06-12 08:11:47,127.127 INFO    ] Script finished. Safe exiting...
[2026-06-12 08:11:47,128.128 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 08:11:47,132.132 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 08:11:47,135.135 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 08:11:49,173.173 INFO    ] ================================================
[2026-06-12 08:11:49,188.188 INFO    ] Launching Daemon at Fri Jun 12 08:11:49 IST 2026
[2026-06-12 08:11:49,199.199 INFO    ] ================================================
[2026-06-12 08:11:49,562.562 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 08:11:49
[2026-06-12 08:11:49,906.906 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 08:11:50,062.062 INFO    ] Initializing speech engine...
[2026-06-12 08:11:50,068.068 INFO    ] 2026-06-12 08:11:50
[2026-06-12 08:11:50,279.279 INFO    ] 2026-06-12 08:11:50
[2026-06-12 08:11:50,309.309 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 08:11:50,495.495 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 08:11:50,499.499 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 08:11:50,637.637 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 08:11:50,706.706 INFO    ] time= 12/06/2026 08:11:50
[2026-06-12 08:11:50,731.731 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 08:11:50,737.737 INFO    ] Checking for existing commands in stream...
[2026-06-12 08:11:50,805.805 INFO    ] No existing commands found in stream
[2026-06-12 08:11:55,820.820 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 08:11:55,823.823 INFO    ] Waiting 0.44 seconds before fallback handling...
[2026-06-12 08:11:56,680.680 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 08:11:56,682.682 INFO    ] Checking for system updates...
[2026-06-12 08:11:56,705.705 INFO    ] 200
[2026-06-12 08:11:56,707.707 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:11:56,741.741 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 08:11:56,742.742 INFO    ] No update needed
[2026-06-12 08:11:56,743.743 INFO    ] Checking for camera pi updates...
[2026-06-12 08:11:56,763.763 INFO    ] 200
[2026-06-12 08:11:56,765.765 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:11:56,788.788 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 08:11:56,827.827 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 08:11:56,828.828 INFO    ] No camera update needed
[2026-06-12 08:11:56,830.830 INFO    ] Script finished. Safe exiting...
[2026-06-12 08:11:56,831.831 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 08:11:56,834.834 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 08:11:56,837.837 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 08:11:58,876.876 INFO    ] ================================================
[2026-06-12 08:11:58,891.891 INFO    ] Launching Daemon at Fri Jun 12 08:11:58 IST 2026
[2026-06-12 08:11:58,902.902 INFO    ] ================================================
[2026-06-12 08:11:59,232.232 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 08:11:59
[2026-06-12 08:11:59,549.549 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 08:11:59,696.696 INFO    ] Initializing speech engine...
[2026-06-12 08:11:59,701.701 INFO    ] 2026-06-12 08:11:59
[2026-06-12 08:11:59,903.903 INFO    ] 2026-06-12 08:11:59
[2026-06-12 08:11:59,933.933 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 08:12:00,120.120 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 08:12:00,130.130 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 08:12:00,281.281 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 08:12:00,336.336 INFO    ] time= 12/06/2026 08:12:00
[2026-06-12 08:12:00,353.353 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 08:12:00,358.358 INFO    ] Checking for existing commands in stream...
[2026-06-12 08:12:00,426.426 INFO    ] No existing commands found in stream
[2026-06-12 08:12:05,441.441 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 08:12:05,443.443 INFO    ] Waiting 1.82 seconds before fallback handling...
[2026-06-12 08:12:07,638.638 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 08:12:07,640.640 INFO    ] Checking for system updates...
[2026-06-12 08:12:07,661.661 INFO    ] 200
[2026-06-12 08:12:07,662.662 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:12:07,697.697 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 08:12:07,699.699 INFO    ] No update needed
[2026-06-12 08:12:07,700.700 INFO    ] Checking for camera pi updates...
[2026-06-12 08:12:07,721.721 INFO    ] 200
[2026-06-12 08:12:07,722.722 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:12:07,745.745 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 08:12:07,781.781 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 08:12:07,783.783 INFO    ] No camera update needed
[2026-06-12 08:12:07,784.784 INFO    ] Script finished. Safe exiting...
[2026-06-12 08:12:07,785.785 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 08:12:07,788.788 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 08:12:07,791.791 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 08:12:09,831.831 INFO    ] ================================================
[2026-06-12 08:12:09,846.846 INFO    ] Launching Daemon at Fri Jun 12 08:12:09 IST 2026
[2026-06-12 08:12:09,857.857 INFO    ] ================================================
[2026-06-12 08:12:10,197.197 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 08:12:10
[2026-06-12 08:12:10,509.509 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 08:12:10,652.652 INFO    ] Initializing speech engine...
[2026-06-12 08:12:10,657.657 INFO    ] 2026-06-12 08:12:10
[2026-06-12 08:12:10,861.861 INFO    ] 2026-06-12 08:12:10
[2026-06-12 08:12:10,889.889 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 08:12:11,072.072 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 08:12:11,075.075 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 08:12:11,203.203 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 08:12:11,259.259 INFO    ] time= 12/06/2026 08:12:11
[2026-06-12 08:12:11,298.298 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 08:12:11,303.303 INFO    ] Checking for existing commands in stream...
[2026-06-12 08:12:11,375.375 INFO    ] No existing commands found in stream
[2026-06-12 08:12:16,407.407 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 08:12:16,410.410 INFO    ] Waiting 1.86 seconds before fallback handling...
[2026-06-12 08:12:18,622.622 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 08:12:18,624.624 INFO    ] Checking for system updates...
[2026-06-12 08:12:18,644.644 INFO    ] 200
[2026-06-12 08:12:18,645.645 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:12:18,675.675 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 08:12:18,676.676 INFO    ] No update needed
[2026-06-12 08:12:18,677.677 INFO    ] Checking for camera pi updates...
[2026-06-12 08:12:18,698.698 INFO    ] 200
[2026-06-12 08:12:18,699.699 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:12:18,724.724 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 08:12:18,769.769 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 08:12:18,771.771 INFO    ] No camera update needed
[2026-06-12 08:12:18,772.772 INFO    ] Script finished. Safe exiting...
[2026-06-12 08:12:18,773.773 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 08:12:18,776.776 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 08:12:18,779.779 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 08:12:20,819.819 INFO    ] ================================================
[2026-06-12 08:12:20,834.834 INFO    ] Launching Daemon at Fri Jun 12 08:12:20 IST 2026
[2026-06-12 08:12:20,846.846 INFO    ] ================================================
[2026-06-12 08:12:21,193.193 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 08:12:21
[2026-06-12 08:12:21,503.503 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 08:12:21,634.634 INFO    ] Initializing speech engine...
[2026-06-12 08:12:21,637.637 INFO    ] 2026-06-12 08:12:21
[2026-06-12 08:12:21,833.833 INFO    ] 2026-06-12 08:12:21
[2026-06-12 08:12:21,873.873 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 08:12:22,028.028 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 08:12:22,091.091 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 08:12:22,241.241 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 08:12:22,297.297 INFO    ] time= 12/06/2026 08:12:22
[2026-06-12 08:12:22,325.325 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 08:12:22,342.342 INFO    ] Checking for existing commands in stream...
[2026-06-12 08:12:22,417.417 INFO    ] No existing commands found in stream
[2026-06-12 08:12:27,428.428 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 08:12:27,431.431 INFO    ] Waiting 1.67 seconds before fallback handling...
[2026-06-12 08:12:29,446.446 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 08:12:29,448.448 INFO    ] Checking for system updates...
[2026-06-12 08:12:29,469.469 INFO    ] 200
[2026-06-12 08:12:29,471.471 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:12:29,501.501 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 08:12:29,502.502 INFO    ] No update needed
[2026-06-12 08:12:29,504.504 INFO    ] Checking for camera pi updates...
[2026-06-12 08:12:29,523.523 INFO    ] 200
[2026-06-12 08:12:29,525.525 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:12:29,549.549 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 08:12:29,677.677 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 08:12:29,679.679 INFO    ] No camera update needed
[2026-06-12 08:12:29,680.680 INFO    ] Script finished. Safe exiting...
[2026-06-12 08:12:29,682.682 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 08:12:29,685.685 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 08:12:29,688.688 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 08:12:31,721.721 INFO    ] ================================================
[2026-06-12 08:12:31,731.731 INFO    ] Launching Daemon at Fri Jun 12 08:12:31 IST 2026
[2026-06-12 08:12:31,737.737 INFO    ] ================================================
[2026-06-12 08:12:32,068.068 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 08:12:32
[2026-06-12 08:12:32,409.409 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 08:12:32,552.552 INFO    ] Initializing speech engine...
[2026-06-12 08:12:32,557.557 INFO    ] 2026-06-12 08:12:32
[2026-06-12 08:12:32,759.759 INFO    ] 2026-06-12 08:12:32
[2026-06-12 08:12:32,788.788 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 08:12:32,974.974 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 08:12:32,984.984 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 08:12:33,114.114 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 08:12:33,179.179 INFO    ] time= 12/06/2026 08:12:33
[2026-06-12 08:12:33,211.211 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 08:12:33,217.217 INFO    ] Checking for existing commands in stream...
[2026-06-12 08:12:33,284.284 INFO    ] No existing commands found in stream
[2026-06-12 08:12:38,293.293 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 08:12:38,295.295 INFO    ] Waiting 1.45 seconds before fallback handling...
[2026-06-12 08:12:40,084.084 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 08:12:40,085.085 INFO    ] Checking for system updates...
[2026-06-12 08:12:40,106.106 INFO    ] 200
[2026-06-12 08:12:40,107.107 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:12:40,139.139 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 08:12:40,141.141 INFO    ] No update needed
[2026-06-12 08:12:40,142.142 INFO    ] Checking for camera pi updates...
[2026-06-12 08:12:40,164.164 INFO    ] 200
[2026-06-12 08:12:40,165.165 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:12:40,190.190 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 08:12:40,226.226 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 08:12:40,227.227 INFO    ] No camera update needed
[2026-06-12 08:12:40,229.229 INFO    ] Script finished. Safe exiting...
[2026-06-12 08:12:40,230.230 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 08:12:40,233.233 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 08:12:40,236.236 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 08:12:42,277.277 INFO    ] ================================================
[2026-06-12 08:12:42,292.292 INFO    ] Launching Daemon at Fri Jun 12 08:12:42 IST 2026
[2026-06-12 08:12:42,303.303 INFO    ] ================================================
[2026-06-12 08:12:42,673.673 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 08:12:42
[2026-06-12 08:12:42,991.991 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 08:12:43,122.122 INFO    ] Initializing speech engine...
[2026-06-12 08:12:43,125.125 INFO    ] 2026-06-12 08:12:43
[2026-06-12 08:12:43,344.344 INFO    ] 2026-06-12 08:12:43
[2026-06-12 08:12:43,374.374 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 08:12:43,558.558 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 08:12:43,567.567 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 08:12:43,702.702 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 08:12:43,760.760 INFO    ] time= 12/06/2026 08:12:43
[2026-06-12 08:12:43,794.794 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 08:12:43,800.800 INFO    ] Checking for existing commands in stream...
[2026-06-12 08:12:43,867.867 INFO    ] No existing commands found in stream
[2026-06-12 08:12:48,876.876 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 08:12:48,879.879 INFO    ] Waiting 0.77 seconds before fallback handling...
[2026-06-12 08:12:50,025.025 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 08:12:50,027.027 INFO    ] Checking for system updates...
[2026-06-12 08:12:50,049.049 INFO    ] 200
[2026-06-12 08:12:50,050.050 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:12:50,082.082 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 08:12:50,083.083 INFO    ] No update needed
[2026-06-12 08:12:50,084.084 INFO    ] Checking for camera pi updates...
[2026-06-12 08:12:50,103.103 INFO    ] 200
[2026-06-12 08:12:50,105.105 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:12:50,129.129 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 08:12:50,170.170 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 08:12:50,171.171 INFO    ] No camera update needed
[2026-06-12 08:12:50,172.172 INFO    ] Script finished. Safe exiting...
[2026-06-12 08:12:50,174.174 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 08:12:50,177.177 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 08:12:50,179.179 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 08:12:52,218.218 INFO    ] ================================================
[2026-06-12 08:12:52,234.234 INFO    ] Launching Daemon at Fri Jun 12 08:12:52 IST 2026
[2026-06-12 08:12:52,244.244 INFO    ] ================================================
[2026-06-12 08:12:52,610.610 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 08:12:52
[2026-06-12 08:12:52,921.921 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 08:12:53,052.052 INFO    ] Initializing speech engine...
[2026-06-12 08:12:53,060.060 INFO    ] 2026-06-12 08:12:53
[2026-06-12 08:12:53,272.272 INFO    ] 2026-06-12 08:12:53
[2026-06-12 08:12:53,300.300 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 08:12:53,486.486 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 08:12:53,490.490 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 08:12:53,627.627 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 08:12:53,691.691 INFO    ] time= 12/06/2026 08:12:53
[2026-06-12 08:12:53,720.720 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 08:12:53,726.726 INFO    ] Checking for existing commands in stream...
[2026-06-12 08:12:53,794.794 INFO    ] No existing commands found in stream
[2026-06-12 08:12:58,803.803 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 08:12:58,806.806 INFO    ] Waiting 1.22 seconds before fallback handling...
[2026-06-12 08:13:00,387.387 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 08:13:00,388.388 INFO    ] Checking for system updates...
[2026-06-12 08:13:00,410.410 INFO    ] 200
[2026-06-12 08:13:00,412.412 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:13:00,445.445 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 08:13:00,446.446 INFO    ] No update needed
[2026-06-12 08:13:00,448.448 INFO    ] Checking for camera pi updates...
[2026-06-12 08:13:00,468.468 INFO    ] 200
[2026-06-12 08:13:00,470.470 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:13:00,495.495 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 08:13:00,532.532 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 08:13:00,534.534 INFO    ] No camera update needed
[2026-06-12 08:13:00,535.535 INFO    ] Script finished. Safe exiting...
[2026-06-12 08:13:00,536.536 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 08:13:00,540.540 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 08:13:00,543.543 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 08:13:02,575.575 INFO    ] ================================================
[2026-06-12 08:13:02,584.584 INFO    ] Launching Daemon at Fri Jun 12 08:13:02 IST 2026
[2026-06-12 08:13:02,591.591 INFO    ] ================================================
[2026-06-12 08:13:02,898.898 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 08:13:02
[2026-06-12 08:13:03,211.211 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 08:13:03,345.345 INFO    ] Initializing speech engine...
[2026-06-12 08:13:03,354.354 INFO    ] 2026-06-12 08:13:03
[2026-06-12 08:13:03,575.575 INFO    ] 2026-06-12 08:13:03
[2026-06-12 08:13:03,606.606 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 08:13:03,740.740 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 08:13:03,798.798 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 08:13:03,954.954 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 08:13:04,020.020 INFO    ] time= 12/06/2026 08:13:03
[2026-06-12 08:13:04,054.054 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 08:13:04,061.061 INFO    ] Checking for existing commands in stream...
[2026-06-12 08:13:04,132.132 INFO    ] No existing commands found in stream
[2026-06-12 08:13:09,141.141 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 08:13:09,144.144 INFO    ] Waiting 2.55 seconds before fallback handling...
[2026-06-12 08:13:12,054.054 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 08:13:12,056.056 INFO    ] Checking for system updates...
[2026-06-12 08:13:12,076.076 INFO    ] 200
[2026-06-12 08:13:12,077.077 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:13:12,107.107 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 08:13:12,109.109 INFO    ] No update needed
[2026-06-12 08:13:12,110.110 INFO    ] Checking for camera pi updates...
[2026-06-12 08:13:12,130.130 INFO    ] 200
[2026-06-12 08:13:12,132.132 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:13:12,154.154 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 08:13:12,181.181 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 08:13:12,183.183 INFO    ] No camera update needed
[2026-06-12 08:13:12,184.184 INFO    ] Script finished. Safe exiting...
[2026-06-12 08:13:12,185.185 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 08:13:12,188.188 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 08:13:12,191.191 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 08:13:14,229.229 INFO    ] ================================================
[2026-06-12 08:13:14,249.249 INFO    ] Launching Daemon at Fri Jun 12 08:13:14 IST 2026
[2026-06-12 08:13:14,260.260 INFO    ] ================================================
[2026-06-12 08:13:14,641.641 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 08:13:14
[2026-06-12 08:13:14,978.978 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 08:13:15,130.130 INFO    ] Initializing speech engine...
[2026-06-12 08:13:15,137.137 INFO    ] 2026-06-12 08:13:15
[2026-06-12 08:13:15,345.345 INFO    ] 2026-06-12 08:13:15
[2026-06-12 08:13:15,375.375 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 08:13:15,561.561 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 08:13:15,565.565 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 08:13:15,700.700 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 08:13:15,753.753 INFO    ] time= 12/06/2026 08:13:15
[2026-06-12 08:13:15,797.797 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 08:13:15,804.804 INFO    ] Checking for existing commands in stream...
[2026-06-12 08:13:15,872.872 INFO    ] No existing commands found in stream
[2026-06-12 08:13:20,886.886 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 08:13:20,889.889 INFO    ] Waiting 2.25 seconds before fallback handling...
[2026-06-12 08:13:23,521.521 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 08:13:23,523.523 INFO    ] Checking for system updates...
[2026-06-12 08:13:23,544.544 INFO    ] 200
[2026-06-12 08:13:23,545.545 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:13:23,575.575 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 08:13:23,577.577 INFO    ] No update needed
[2026-06-12 08:13:23,578.578 INFO    ] Checking for camera pi updates...
[2026-06-12 08:13:23,599.599 INFO    ] 200
[2026-06-12 08:13:23,601.601 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:13:23,627.627 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 08:13:23,665.665 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 08:13:23,666.666 INFO    ] No camera update needed
[2026-06-12 08:13:23,668.668 INFO    ] Script finished. Safe exiting...
[2026-06-12 08:13:23,669.669 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 08:13:23,672.672 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 08:13:23,675.675 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 08:13:25,714.714 INFO    ] ================================================
[2026-06-12 08:13:25,729.729 INFO    ] Launching Daemon at Fri Jun 12 08:13:25 IST 2026
[2026-06-12 08:13:25,740.740 INFO    ] ================================================
[2026-06-12 08:13:26,098.098 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 08:13:26
[2026-06-12 08:13:26,419.419 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 08:13:26,557.557 INFO    ] Initializing speech engine...
[2026-06-12 08:13:26,567.567 INFO    ] 2026-06-12 08:13:26
[2026-06-12 08:13:26,771.771 INFO    ] 2026-06-12 08:13:26
[2026-06-12 08:13:26,800.800 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 08:13:26,983.983 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 08:13:26,992.992 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 08:13:27,120.120 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 08:13:27,181.181 INFO    ] time= 12/06/2026 08:13:27
[2026-06-12 08:13:27,213.213 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 08:13:27,219.219 INFO    ] Checking for existing commands in stream...
[2026-06-12 08:13:27,309.309 INFO    ] No existing commands found in stream
[2026-06-12 08:13:32,321.321 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 08:13:32,323.323 INFO    ] Waiting 1.94 seconds before fallback handling...
[2026-06-12 08:13:34,647.647 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 08:13:34,648.648 INFO    ] Checking for system updates...
[2026-06-12 08:13:34,669.669 INFO    ] 200
[2026-06-12 08:13:34,671.671 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:13:34,705.705 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 08:13:34,706.706 INFO    ] No update needed
[2026-06-12 08:13:34,707.707 INFO    ] Checking for camera pi updates...
[2026-06-12 08:13:34,727.727 INFO    ] 200
[2026-06-12 08:13:34,728.728 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:13:34,752.752 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 08:13:34,798.798 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 08:13:34,800.800 INFO    ] No camera update needed
[2026-06-12 08:13:34,801.801 INFO    ] Script finished. Safe exiting...
[2026-06-12 08:13:34,802.802 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 08:13:34,805.805 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 08:13:34,808.808 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 08:13:36,848.848 INFO    ] ================================================
[2026-06-12 08:13:36,864.864 INFO    ] Launching Daemon at Fri Jun 12 08:13:36 IST 2026
[2026-06-12 08:13:36,876.876 INFO    ] ================================================
[2026-06-12 08:13:37,252.252 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 08:13:37
[2026-06-12 08:13:37,585.585 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 08:13:37,734.734 INFO    ] Initializing speech engine...
[2026-06-12 08:13:37,740.740 INFO    ] 2026-06-12 08:13:37
[2026-06-12 08:13:37,950.950 INFO    ] 2026-06-12 08:13:37
[2026-06-12 08:13:37,978.978 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 08:13:38,166.166 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 08:13:38,176.176 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 08:13:38,322.322 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 08:13:38,376.376 INFO    ] time= 12/06/2026 08:13:38
[2026-06-12 08:13:38,398.398 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 08:13:38,405.405 INFO    ] Checking for existing commands in stream...
[2026-06-12 08:13:38,472.472 INFO    ] No existing commands found in stream
[2026-06-12 08:13:43,481.481 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 08:13:43,485.485 INFO    ] Waiting 1.49 seconds before fallback handling...
[2026-06-12 08:13:45,337.337 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 08:13:45,338.338 INFO    ] Checking for system updates...
[2026-06-12 08:13:45,359.359 INFO    ] 200
[2026-06-12 08:13:45,361.361 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:13:45,391.391 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 08:13:45,392.392 INFO    ] No update needed
[2026-06-12 08:13:45,393.393 INFO    ] Checking for camera pi updates...
[2026-06-12 08:13:45,415.415 INFO    ] 200
[2026-06-12 08:13:45,416.416 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:13:45,441.441 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 08:13:45,478.478 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 08:13:45,479.479 INFO    ] No camera update needed
[2026-06-12 08:13:45,480.480 INFO    ] Script finished. Safe exiting...
[2026-06-12 08:13:45,482.482 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 08:13:45,484.484 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 08:13:45,487.487 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 08:13:47,519.519 INFO    ] ================================================
[2026-06-12 08:13:47,535.535 INFO    ] Launching Daemon at Fri Jun 12 08:13:47 IST 2026
[2026-06-12 08:13:47,546.546 INFO    ] ================================================
[2026-06-12 08:13:47,924.924 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 08:13:47
[2026-06-12 08:13:48,257.257 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 08:13:48,407.407 INFO    ] Initializing speech engine...
[2026-06-12 08:13:48,412.412 INFO    ] 2026-06-12 08:13:48
[2026-06-12 08:13:48,621.621 INFO    ] 2026-06-12 08:13:48
[2026-06-12 08:13:48,651.651 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 08:13:48,837.837 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 08:13:48,847.847 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 08:13:48,979.979 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 08:13:49,043.043 INFO    ] time= 12/06/2026 08:13:48
[2026-06-12 08:13:49,071.071 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 08:13:49,078.078 INFO    ] Checking for existing commands in stream...
[2026-06-12 08:13:49,145.145 INFO    ] No existing commands found in stream
[2026-06-12 08:13:54,155.155 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 08:13:54,158.158 INFO    ] Waiting 0.53 seconds before fallback handling...
[2026-06-12 08:13:55,037.037 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 08:13:55,039.039 INFO    ] Checking for system updates...
[2026-06-12 08:13:55,060.060 INFO    ] 200
[2026-06-12 08:13:55,061.061 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:13:55,093.093 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 08:13:55,095.095 INFO    ] No update needed
[2026-06-12 08:13:55,096.096 INFO    ] Checking for camera pi updates...
[2026-06-12 08:13:55,117.117 INFO    ] 200
[2026-06-12 08:13:55,119.119 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:13:55,145.145 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 08:13:55,179.179 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 08:13:55,181.181 INFO    ] No camera update needed
[2026-06-12 08:13:55,182.182 INFO    ] Script finished. Safe exiting...
[2026-06-12 08:13:55,184.184 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 08:13:55,187.187 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 08:13:55,190.190 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 08:13:57,229.229 INFO    ] ================================================
[2026-06-12 08:13:57,245.245 INFO    ] Launching Daemon at Fri Jun 12 08:13:57 IST 2026
[2026-06-12 08:13:57,255.255 INFO    ] ================================================
[2026-06-12 08:13:57,598.598 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 08:13:57
[2026-06-12 08:13:57,933.933 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 08:13:58,082.082 INFO    ] Initializing speech engine...
[2026-06-12 08:13:58,088.088 INFO    ] 2026-06-12 08:13:58
[2026-06-12 08:13:58,298.298 INFO    ] 2026-06-12 08:13:58
[2026-06-12 08:13:58,327.327 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 08:13:58,514.514 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 08:13:58,523.523 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 08:13:58,652.652 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 08:13:58,708.708 INFO    ] time= 12/06/2026 08:13:58
[2026-06-12 08:13:58,746.746 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 08:13:58,748.748 INFO    ] Checking for existing commands in stream...
[2026-06-12 08:13:58,844.844 INFO    ] No existing commands found in stream
[2026-06-12 08:14:03,878.878 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 08:14:03,882.882 INFO    ] Waiting 3.52 seconds before fallback handling...
[2026-06-12 08:14:07,800.800 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 08:14:07,801.801 INFO    ] Checking for system updates...
[2026-06-12 08:14:07,823.823 INFO    ] 200
[2026-06-12 08:14:07,825.825 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:14:07,857.857 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 08:14:07,859.859 INFO    ] No update needed
[2026-06-12 08:14:07,860.860 INFO    ] Checking for camera pi updates...
[2026-06-12 08:14:07,880.880 INFO    ] 200
[2026-06-12 08:14:07,881.881 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:14:07,906.906 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 08:14:07,943.943 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 08:14:07,944.944 INFO    ] No camera update needed
[2026-06-12 08:14:07,946.946 INFO    ] Script finished. Safe exiting...
[2026-06-12 08:14:07,947.947 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 08:14:07,950.950 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 08:14:07,953.953 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 08:14:09,992.992 INFO    ] ================================================
[2026-06-12 08:14:10,008.008 INFO    ] Launching Daemon at Fri Jun 12 08:14:10 IST 2026
[2026-06-12 08:14:10,019.019 INFO    ] ================================================
[2026-06-12 08:14:10,650.650 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 08:14:10
[2026-06-12 08:14:10,964.964 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 08:14:11,099.099 INFO    ] Initializing speech engine...
[2026-06-12 08:14:11,108.108 INFO    ] 2026-06-12 08:14:11
[2026-06-12 08:14:11,330.330 INFO    ] 2026-06-12 08:14:11
[2026-06-12 08:14:11,359.359 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 08:14:11,492.492 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 08:14:11,530.530 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 08:14:11,701.701 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 08:14:11,758.758 INFO    ] time= 12/06/2026 08:14:11
[2026-06-12 08:14:11,797.797 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 08:14:11,809.809 INFO    ] Checking for existing commands in stream...
[2026-06-12 08:14:11,883.883 INFO    ] No existing commands found in stream
[2026-06-12 08:14:16,894.894 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 08:14:16,896.896 INFO    ] Waiting 2.10 seconds before fallback handling...
[2026-06-12 08:14:19,358.358 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 08:14:19,360.360 INFO    ] Checking for system updates...
[2026-06-12 08:14:19,380.380 INFO    ] 200
[2026-06-12 08:14:19,382.382 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:14:19,412.412 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 08:14:19,413.413 INFO    ] No update needed
[2026-06-12 08:14:19,414.414 INFO    ] Checking for camera pi updates...
[2026-06-12 08:14:19,434.434 INFO    ] 200
[2026-06-12 08:14:19,436.436 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:14:19,460.460 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 08:14:19,509.509 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 08:14:19,510.510 INFO    ] No camera update needed
[2026-06-12 08:14:19,512.512 INFO    ] Script finished. Safe exiting...
[2026-06-12 08:14:19,513.513 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 08:14:19,516.516 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 08:14:19,519.519 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 08:14:21,558.558 INFO    ] ================================================
[2026-06-12 08:14:21,574.574 INFO    ] Launching Daemon at Fri Jun 12 08:14:21 IST 2026
[2026-06-12 08:14:21,585.585 INFO    ] ================================================
[2026-06-12 08:14:21,949.949 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 08:14:21
[2026-06-12 08:14:22,283.283 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 08:14:22,436.436 INFO    ] Initializing speech engine...
[2026-06-12 08:14:22,440.440 INFO    ] 2026-06-12 08:14:22
[2026-06-12 08:14:22,648.648 INFO    ] 2026-06-12 08:14:22
[2026-06-12 08:14:22,677.677 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 08:14:22,812.812 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 08:14:22,866.866 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 08:14:23,005.005 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 08:14:23,064.064 INFO    ] time= 12/06/2026 08:14:23
[2026-06-12 08:14:23,097.097 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 08:14:23,104.104 INFO    ] Checking for existing commands in stream...
[2026-06-12 08:14:23,172.172 INFO    ] No existing commands found in stream
[2026-06-12 08:14:28,186.186 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 08:14:28,189.189 INFO    ] Waiting 0.63 seconds before fallback handling...
[2026-06-12 08:14:29,210.210 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 08:14:29,212.212 INFO    ] Checking for system updates...
[2026-06-12 08:14:29,233.233 INFO    ] 200
[2026-06-12 08:14:29,234.234 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:14:29,266.266 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 08:14:29,268.268 INFO    ] No update needed
[2026-06-12 08:14:29,269.269 INFO    ] Checking for camera pi updates...
[2026-06-12 08:14:29,289.289 INFO    ] 200
[2026-06-12 08:14:29,291.291 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:14:29,314.314 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 08:14:29,360.360 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 08:14:29,362.362 INFO    ] No camera update needed
[2026-06-12 08:14:29,363.363 INFO    ] Script finished. Safe exiting...
[2026-06-12 08:14:29,365.365 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 08:14:29,368.368 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 08:14:29,371.371 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 08:14:31,409.409 INFO    ] ================================================
[2026-06-12 08:14:31,425.425 INFO    ] Launching Daemon at Fri Jun 12 08:14:31 IST 2026
[2026-06-12 08:14:31,436.436 INFO    ] ================================================
[2026-06-12 08:14:31,765.765 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 08:14:31
[2026-06-12 08:14:32,107.107 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 08:14:32,269.269 INFO    ] Initializing speech engine...
[2026-06-12 08:14:32,275.275 INFO    ] 2026-06-12 08:14:32
[2026-06-12 08:14:32,496.496 INFO    ] 2026-06-12 08:14:32
[2026-06-12 08:14:32,529.529 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 08:14:32,658.658 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 08:14:32,721.721 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 08:14:32,853.853 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 08:14:32,904.904 INFO    ] time= 12/06/2026 08:14:32
[2026-06-12 08:14:32,944.944 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 08:14:32,954.954 INFO    ] Checking for existing commands in stream...
[2026-06-12 08:14:33,025.025 INFO    ] No existing commands found in stream
[2026-06-12 08:14:38,032.032 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 08:14:38,035.035 INFO    ] Waiting 1.43 seconds before fallback handling...
[2026-06-12 08:14:39,809.809 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 08:14:39,811.811 INFO    ] Checking for system updates...
[2026-06-12 08:14:39,832.832 INFO    ] 200
[2026-06-12 08:14:39,833.833 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:14:39,865.865 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 08:14:39,867.867 INFO    ] No update needed
[2026-06-12 08:14:39,868.868 INFO    ] Checking for camera pi updates...
[2026-06-12 08:14:39,887.887 INFO    ] 200
[2026-06-12 08:14:39,888.888 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:14:39,912.912 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 08:14:39,949.949 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 08:14:39,951.951 INFO    ] No camera update needed
[2026-06-12 08:14:39,952.952 INFO    ] Script finished. Safe exiting...
[2026-06-12 08:14:39,953.953 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 08:14:39,956.956 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 08:14:39,959.959 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 08:14:42,998.998 INFO    ] ================================================
[2026-06-12 08:14:42,014.014 INFO    ] Launching Daemon at Fri Jun 12 08:14:42 IST 2026
[2026-06-12 08:14:42,024.024 INFO    ] ================================================
[2026-06-12 08:14:42,382.382 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 08:14:42
[2026-06-12 08:14:42,693.693 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 08:14:42,823.823 INFO    ] Initializing speech engine...
[2026-06-12 08:14:42,840.840 INFO    ] 2026-06-12 08:14:42
[2026-06-12 08:14:43,042.042 INFO    ] 2026-06-12 08:14:43
[2026-06-12 08:14:43,071.071 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 08:14:43,253.253 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 08:14:43,256.256 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 08:14:43,397.397 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 08:14:43,458.458 INFO    ] time= 12/06/2026 08:14:43
[2026-06-12 08:14:43,482.482 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 08:14:43,488.488 INFO    ] Checking for existing commands in stream...
[2026-06-12 08:14:43,555.555 INFO    ] No existing commands found in stream
[2026-06-12 08:14:48,564.564 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 08:14:48,566.566 INFO    ] Waiting 3.67 seconds before fallback handling...
[2026-06-12 08:14:52,630.630 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 08:14:52,632.632 INFO    ] Checking for system updates...
[2026-06-12 08:14:52,652.652 INFO    ] 200
[2026-06-12 08:14:52,654.654 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:14:52,685.685 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 08:14:52,686.686 INFO    ] No update needed
[2026-06-12 08:14:52,687.687 INFO    ] Checking for camera pi updates...
[2026-06-12 08:14:52,707.707 INFO    ] 200
[2026-06-12 08:14:52,708.708 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:14:52,732.732 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 08:14:52,776.776 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 08:14:52,778.778 INFO    ] No camera update needed
[2026-06-12 08:14:52,779.779 INFO    ] Script finished. Safe exiting...
[2026-06-12 08:14:52,781.781 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 08:14:52,784.784 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 08:14:52,787.787 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 08:14:54,827.827 INFO    ] ================================================
[2026-06-12 08:14:54,843.843 INFO    ] Launching Daemon at Fri Jun 12 08:14:54 IST 2026
[2026-06-12 08:14:54,854.854 INFO    ] ================================================
[2026-06-12 08:14:55,195.195 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 08:14:55
[2026-06-12 08:14:55,512.512 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 08:14:55,644.644 INFO    ] Initializing speech engine...
[2026-06-12 08:14:55,648.648 INFO    ] 2026-06-12 08:14:55
[2026-06-12 08:14:55,840.840 INFO    ] 2026-06-12 08:14:55
[2026-06-12 08:14:55,884.884 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 08:14:56,042.042 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 08:14:56,094.094 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 08:14:56,251.251 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 08:14:56,308.308 INFO    ] time= 12/06/2026 08:14:56
[2026-06-12 08:14:56,348.348 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 08:14:56,359.359 INFO    ] Checking for existing commands in stream...
[2026-06-12 08:14:56,436.436 INFO    ] No existing commands found in stream
[2026-06-12 08:15:01,455.455 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 08:15:01,458.458 INFO    ] Waiting 1.45 seconds before fallback handling...
[2026-06-12 08:15:03,271.271 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 08:15:03,272.272 INFO    ] Checking for system updates...
[2026-06-12 08:15:03,293.293 INFO    ] 200
[2026-06-12 08:15:03,295.295 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:15:03,335.335 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 08:15:03,336.336 INFO    ] No update needed
[2026-06-12 08:15:03,337.337 INFO    ] Checking for camera pi updates...
[2026-06-12 08:15:03,359.359 INFO    ] 200
[2026-06-12 08:15:03,360.360 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:15:03,385.385 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 08:15:03,420.420 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 08:15:03,421.421 INFO    ] No camera update needed
[2026-06-12 08:15:03,423.423 INFO    ] Script finished. Safe exiting...
[2026-06-12 08:15:03,424.424 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 08:15:03,427.427 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 08:15:03,429.429 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 08:15:05,471.471 INFO    ] ================================================
[2026-06-12 08:15:05,487.487 INFO    ] Launching Daemon at Fri Jun 12 08:15:05 IST 2026
[2026-06-12 08:15:05,499.499 INFO    ] ================================================
[2026-06-12 08:15:05,874.874 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 08:15:05
[2026-06-12 08:15:06,211.211 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 08:15:06,363.363 INFO    ] Initializing speech engine...
[2026-06-12 08:15:06,369.369 INFO    ] 2026-06-12 08:15:06
[2026-06-12 08:15:06,590.590 INFO    ] 2026-06-12 08:15:06
[2026-06-12 08:15:06,619.619 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 08:15:06,801.801 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 08:15:06,804.804 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 08:15:06,940.940 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 08:15:07,003.003 INFO    ] time= 12/06/2026 08:15:06
[2026-06-12 08:15:07,036.036 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 08:15:07,042.042 INFO    ] Checking for existing commands in stream...
[2026-06-12 08:15:07,110.110 INFO    ] No existing commands found in stream
[2026-06-12 08:15:12,125.125 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 08:15:12,128.128 INFO    ] Waiting 3.49 seconds before fallback handling...
[2026-06-12 08:15:15,983.983 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 08:15:15,985.985 INFO    ] Checking for system updates...
[2026-06-12 08:15:16,007.007 INFO    ] 200
[2026-06-12 08:15:16,009.009 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:15:16,039.039 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 08:15:16,041.041 INFO    ] No update needed
[2026-06-12 08:15:16,042.042 INFO    ] Checking for camera pi updates...
[2026-06-12 08:15:16,062.062 INFO    ] 200
[2026-06-12 08:15:16,063.063 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:15:16,087.087 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 08:15:16,122.122 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 08:15:16,123.123 INFO    ] No camera update needed
[2026-06-12 08:15:16,125.125 INFO    ] Script finished. Safe exiting...
[2026-06-12 08:15:16,126.126 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 08:15:16,129.129 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 08:15:16,133.133 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 08:15:18,173.173 INFO    ] ================================================
[2026-06-12 08:15:18,189.189 INFO    ] Launching Daemon at Fri Jun 12 08:15:18 IST 2026
[2026-06-12 08:15:18,201.201 INFO    ] ================================================
[2026-06-12 08:15:18,571.571 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 08:15:18
[2026-06-12 08:15:18,909.909 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 08:15:19,065.065 INFO    ] Initializing speech engine...
[2026-06-12 08:15:19,069.069 INFO    ] 2026-06-12 08:15:19
[2026-06-12 08:15:19,278.278 INFO    ] 2026-06-12 08:15:19
[2026-06-12 08:15:19,307.307 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 08:15:19,495.495 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 08:15:19,506.506 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 08:15:19,639.639 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 08:15:19,703.703 INFO    ] time= 12/06/2026 08:15:19
[2026-06-12 08:15:19,732.732 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 08:15:19,739.739 INFO    ] Checking for existing commands in stream...
[2026-06-12 08:15:19,807.807 INFO    ] No existing commands found in stream
[2026-06-12 08:15:24,817.817 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 08:15:24,820.820 INFO    ] Waiting 1.82 seconds before fallback handling...
[2026-06-12 08:15:27,013.013 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 08:15:27,014.014 INFO    ] Checking for system updates...
[2026-06-12 08:15:27,035.035 INFO    ] 200
[2026-06-12 08:15:27,036.036 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:15:27,069.069 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 08:15:27,071.071 INFO    ] No update needed
[2026-06-12 08:15:27,072.072 INFO    ] Checking for camera pi updates...
[2026-06-12 08:15:27,094.094 INFO    ] 200
[2026-06-12 08:15:27,095.095 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:15:27,119.119 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 08:15:27,160.160 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 08:15:27,162.162 INFO    ] No camera update needed
[2026-06-12 08:15:27,163.163 INFO    ] Script finished. Safe exiting...
[2026-06-12 08:15:27,164.164 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 08:15:27,167.167 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 08:15:27,171.171 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 08:15:29,211.211 INFO    ] ================================================
[2026-06-12 08:15:29,227.227 INFO    ] Launching Daemon at Fri Jun 12 08:15:29 IST 2026
[2026-06-12 08:15:29,237.237 INFO    ] ================================================
[2026-06-12 08:15:29,609.609 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 08:15:29
[2026-06-12 08:15:29,947.947 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 08:15:30,093.093 INFO    ] Initializing speech engine...
[2026-06-12 08:15:30,104.104 INFO    ] 2026-06-12 08:15:30
[2026-06-12 08:15:30,315.315 INFO    ] 2026-06-12 08:15:30
[2026-06-12 08:15:30,343.343 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 08:15:30,528.528 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 08:15:30,538.538 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 08:15:30,669.669 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 08:15:30,738.738 INFO    ] time= 12/06/2026 08:15:30
[2026-06-12 08:15:30,761.761 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 08:15:30,768.768 INFO    ] Checking for existing commands in stream...
[2026-06-12 08:15:30,835.835 INFO    ] No existing commands found in stream
[2026-06-12 08:15:35,849.849 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 08:15:35,853.853 INFO    ] Waiting 0.66 seconds before fallback handling...
[2026-06-12 08:15:36,904.904 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 08:15:36,906.906 INFO    ] Checking for system updates...
[2026-06-12 08:15:36,926.926 INFO    ] 200
[2026-06-12 08:15:36,928.928 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:15:36,963.963 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 08:15:36,965.965 INFO    ] No update needed
[2026-06-12 08:15:36,966.966 INFO    ] Checking for camera pi updates...
[2026-06-12 08:15:36,985.985 INFO    ] 200
[2026-06-12 08:15:36,987.987 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:15:37,012.012 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 08:15:37,049.049 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 08:15:37,050.050 INFO    ] No camera update needed
[2026-06-12 08:15:37,051.051 INFO    ] Script finished. Safe exiting...
[2026-06-12 08:15:37,053.053 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 08:15:37,055.055 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 08:15:37,058.058 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 08:15:39,097.097 INFO    ] ================================================
[2026-06-12 08:15:39,113.113 INFO    ] Launching Daemon at Fri Jun 12 08:15:39 IST 2026
[2026-06-12 08:15:39,124.124 INFO    ] ================================================
[2026-06-12 08:15:39,508.508 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 08:15:39
[2026-06-12 08:15:39,849.849 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 08:15:39,995.995 INFO    ] Initializing speech engine...
[2026-06-12 08:15:40,006.006 INFO    ] 2026-06-12 08:15:39
[2026-06-12 08:15:40,217.217 INFO    ] 2026-06-12 08:15:40
[2026-06-12 08:15:40,247.247 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 08:15:40,435.435 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 08:15:40,445.445 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 08:15:40,576.576 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 08:15:40,641.641 INFO    ] time= 12/06/2026 08:15:40
[2026-06-12 08:15:40,669.669 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 08:15:40,676.676 INFO    ] Checking for existing commands in stream...
[2026-06-12 08:15:40,768.768 INFO    ] No existing commands found in stream
[2026-06-12 08:15:45,783.783 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 08:15:45,786.786 INFO    ] Waiting 1.94 seconds before fallback handling...
[2026-06-12 08:15:48,079.079 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 08:15:48,081.081 INFO    ] Checking for system updates...
[2026-06-12 08:15:48,102.102 INFO    ] 200
[2026-06-12 08:15:48,103.103 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:15:48,133.133 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 08:15:48,135.135 INFO    ] No update needed
[2026-06-12 08:15:48,136.136 INFO    ] Checking for camera pi updates...
[2026-06-12 08:15:48,156.156 INFO    ] 200
[2026-06-12 08:15:48,157.157 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:15:48,181.181 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 08:15:48,220.220 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 08:15:48,222.222 INFO    ] No camera update needed
[2026-06-12 08:15:48,223.223 INFO    ] Script finished. Safe exiting...
[2026-06-12 08:15:48,225.225 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 08:15:48,228.228 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 08:15:48,231.231 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 08:15:50,272.272 INFO    ] ================================================
[2026-06-12 08:15:50,287.287 INFO    ] Launching Daemon at Fri Jun 12 08:15:50 IST 2026
[2026-06-12 08:15:50,297.297 INFO    ] ================================================
[2026-06-12 08:15:50,622.622 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 08:15:50
[2026-06-12 08:15:50,935.935 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 08:15:51,063.063 INFO    ] Initializing speech engine...
[2026-06-12 08:15:51,068.068 INFO    ] 2026-06-12 08:15:51
[2026-06-12 08:15:51,284.284 INFO    ] 2026-06-12 08:15:51
[2026-06-12 08:15:51,313.313 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 08:15:51,496.496 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 08:15:51,505.505 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 08:15:51,627.627 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 08:15:51,683.683 INFO    ] time= 12/06/2026 08:15:51
[2026-06-12 08:15:51,722.722 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 08:15:51,727.727 INFO    ] Checking for existing commands in stream...
[2026-06-12 08:15:51,799.799 INFO    ] No existing commands found in stream
[2026-06-12 08:15:56,813.813 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 08:15:56,816.816 INFO    ] Waiting 1.16 seconds before fallback handling...
[2026-06-12 08:15:58,306.306 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 08:15:58,307.307 INFO    ] Checking for system updates...
[2026-06-12 08:15:58,327.327 INFO    ] 200
[2026-06-12 08:15:58,328.328 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:15:58,358.358 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 08:15:58,360.360 INFO    ] No update needed
[2026-06-12 08:15:58,361.361 INFO    ] Checking for camera pi updates...
[2026-06-12 08:15:58,384.384 INFO    ] 200
[2026-06-12 08:15:58,385.385 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:15:58,408.408 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 08:15:58,446.446 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 08:15:58,447.447 INFO    ] No camera update needed
[2026-06-12 08:15:58,449.449 INFO    ] Script finished. Safe exiting...
[2026-06-12 08:15:58,450.450 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 08:15:58,453.453 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 08:15:58,456.456 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 08:16:00,496.496 INFO    ] ================================================
[2026-06-12 08:16:00,511.511 INFO    ] Launching Daemon at Fri Jun 12 08:16:00 IST 2026
[2026-06-12 08:16:00,522.522 INFO    ] ================================================
[2026-06-12 08:16:00,856.856 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 08:16:00
[2026-06-12 08:16:01,173.173 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 08:16:01,307.307 INFO    ] Initializing speech engine...
[2026-06-12 08:16:01,312.312 INFO    ] 2026-06-12 08:16:01
[2026-06-12 08:16:01,549.549 INFO    ] 2026-06-12 08:16:01
[2026-06-12 08:16:01,584.584 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 08:16:01,751.751 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 08:16:01,754.754 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 08:16:01,921.921 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 08:16:01,945.945 INFO    ] time= 12/06/2026 08:16:01
[2026-06-12 08:16:01,952.952 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 08:16:01,958.958 INFO    ] Checking for existing commands in stream...
[2026-06-12 08:16:02,090.090 INFO    ] No existing commands found in stream
[2026-06-12 08:16:07,125.125 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 08:16:07,128.128 INFO    ] Waiting 3.21 seconds before fallback handling...
[2026-06-12 08:16:10,694.694 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 08:16:10,695.695 INFO    ] Checking for system updates...
[2026-06-12 08:16:10,717.717 INFO    ] 200
[2026-06-12 08:16:10,718.718 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:16:10,748.748 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 08:16:10,750.750 INFO    ] No update needed
[2026-06-12 08:16:10,751.751 INFO    ] Checking for camera pi updates...
[2026-06-12 08:16:10,770.770 INFO    ] 200
[2026-06-12 08:16:10,772.772 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:16:10,797.797 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 08:16:10,835.835 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 08:16:10,836.836 INFO    ] No camera update needed
[2026-06-12 08:16:10,837.837 INFO    ] Script finished. Safe exiting...
[2026-06-12 08:16:10,838.838 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 08:16:10,842.842 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 08:16:10,844.844 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 08:16:12,884.884 INFO    ] ================================================
[2026-06-12 08:16:12,899.899 INFO    ] Launching Daemon at Fri Jun 12 08:16:12 IST 2026
[2026-06-12 08:16:12,910.910 INFO    ] ================================================
[2026-06-12 08:16:13,273.273 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 08:16:13
[2026-06-12 08:16:13,584.584 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 08:16:13,714.714 INFO    ] Initializing speech engine...
[2026-06-12 08:16:13,718.718 INFO    ] 2026-06-12 08:16:13
[2026-06-12 08:16:13,936.936 INFO    ] 2026-06-12 08:16:13
[2026-06-12 08:16:13,964.964 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 08:16:14,089.089 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 08:16:14,152.152 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 08:16:14,286.286 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 08:16:14,352.352 INFO    ] time= 12/06/2026 08:16:14
[2026-06-12 08:16:14,385.385 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 08:16:14,392.392 INFO    ] Checking for existing commands in stream...
[2026-06-12 08:16:14,460.460 INFO    ] No existing commands found in stream
[2026-06-12 08:16:19,469.469 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 08:16:19,472.472 INFO    ] Waiting 2.69 seconds before fallback handling...
[2026-06-12 08:16:22,535.535 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 08:16:22,536.536 INFO    ] Checking for system updates...
[2026-06-12 08:16:22,557.557 INFO    ] 200
[2026-06-12 08:16:22,559.559 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:16:22,589.589 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 08:16:22,591.591 INFO    ] No update needed
[2026-06-12 08:16:22,592.592 INFO    ] Checking for camera pi updates...
[2026-06-12 08:16:22,611.611 INFO    ] 200
[2026-06-12 08:16:22,613.613 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:16:22,638.638 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 08:16:22,675.675 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 08:16:22,677.677 INFO    ] No camera update needed
[2026-06-12 08:16:22,678.678 INFO    ] Script finished. Safe exiting...
[2026-06-12 08:16:22,679.679 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 08:16:22,682.682 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 08:16:22,685.685 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 08:16:24,728.728 INFO    ] ================================================
[2026-06-12 08:16:24,743.743 INFO    ] Launching Daemon at Fri Jun 12 08:16:24 IST 2026
[2026-06-12 08:16:24,754.754 INFO    ] ================================================
[2026-06-12 08:16:25,109.109 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 08:16:25
[2026-06-12 08:16:25,448.448 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 08:16:25,602.602 INFO    ] Initializing speech engine...
[2026-06-12 08:16:25,605.605 INFO    ] 2026-06-12 08:16:25
[2026-06-12 08:16:25,814.814 INFO    ] 2026-06-12 08:16:25
[2026-06-12 08:16:25,843.843 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 08:16:26,026.026 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 08:16:26,030.030 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 08:16:26,164.164 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 08:16:26,220.220 INFO    ] time= 12/06/2026 08:16:26
[2026-06-12 08:16:26,258.258 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 08:16:26,264.264 INFO    ] Checking for existing commands in stream...
[2026-06-12 08:16:26,332.332 INFO    ] No existing commands found in stream
[2026-06-12 08:16:31,352.352 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 08:16:31,355.355 INFO    ] Waiting 2.55 seconds before fallback handling...
[2026-06-12 08:16:34,244.244 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 08:16:34,247.247 INFO    ] Checking for system updates...
[2026-06-12 08:16:34,288.288 INFO    ] 200
[2026-06-12 08:16:34,291.291 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:16:34,336.336 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 08:16:34,337.337 INFO    ] No update needed
[2026-06-12 08:16:34,339.339 INFO    ] Checking for camera pi updates...
[2026-06-12 08:16:34,359.359 INFO    ] 200
[2026-06-12 08:16:34,361.361 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:16:34,386.386 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 08:16:34,436.436 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 08:16:34,437.437 INFO    ] No camera update needed
[2026-06-12 08:16:34,438.438 INFO    ] Script finished. Safe exiting...
[2026-06-12 08:16:34,440.440 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 08:16:34,443.443 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 08:16:34,446.446 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 08:16:36,486.486 INFO    ] ================================================
[2026-06-12 08:16:36,502.502 INFO    ] Launching Daemon at Fri Jun 12 08:16:36 IST 2026
[2026-06-12 08:16:36,512.512 INFO    ] ================================================
[2026-06-12 08:16:36,865.865 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 08:16:36
[2026-06-12 08:16:37,182.182 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 08:16:37,313.313 INFO    ] Initializing speech engine...
[2026-06-12 08:16:37,321.321 INFO    ] 2026-06-12 08:16:37
[2026-06-12 08:16:37,533.533 INFO    ] 2026-06-12 08:16:37
[2026-06-12 08:16:37,561.561 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 08:16:37,743.743 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 08:16:37,753.753 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 08:16:37,881.881 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 08:16:37,948.948 INFO    ] time= 12/06/2026 08:16:37
[2026-06-12 08:16:37,972.972 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 08:16:37,978.978 INFO    ] Checking for existing commands in stream...
[2026-06-12 08:16:38,045.045 INFO    ] No existing commands found in stream
[2026-06-12 08:16:43,060.060 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 08:16:43,062.062 INFO    ] Waiting 2.37 seconds before fallback handling...
[2026-06-12 08:16:45,797.797 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 08:16:45,798.798 INFO    ] Checking for system updates...
[2026-06-12 08:16:45,819.819 INFO    ] 200
[2026-06-12 08:16:45,821.821 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:16:45,851.851 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 08:16:45,853.853 INFO    ] No update needed
[2026-06-12 08:16:45,854.854 INFO    ] Checking for camera pi updates...
[2026-06-12 08:16:45,875.875 INFO    ] 200
[2026-06-12 08:16:45,876.876 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:16:45,900.900 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 08:16:46,052.052 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 08:16:46,053.053 INFO    ] No camera update needed
[2026-06-12 08:16:46,054.054 INFO    ] Script finished. Safe exiting...
[2026-06-12 08:16:46,056.056 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 08:16:46,059.059 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 08:16:46,062.062 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 08:16:48,101.101 INFO    ] ================================================
[2026-06-12 08:16:48,116.116 INFO    ] Launching Daemon at Fri Jun 12 08:16:48 IST 2026
[2026-06-12 08:16:48,127.127 INFO    ] ================================================
[2026-06-12 08:16:48,462.462 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 08:16:48
[2026-06-12 08:16:48,779.779 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 08:16:48,922.922 INFO    ] Initializing speech engine...
[2026-06-12 08:16:48,927.927 INFO    ] 2026-06-12 08:16:48
[2026-06-12 08:16:49,132.132 INFO    ] 2026-06-12 08:16:49
[2026-06-12 08:16:49,161.161 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 08:16:49,283.283 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 08:16:49,345.345 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 08:16:49,476.476 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 08:16:49,532.532 INFO    ] time= 12/06/2026 08:16:49
[2026-06-12 08:16:49,575.575 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 08:16:49,577.577 INFO    ] Checking for existing commands in stream...
[2026-06-12 08:16:49,649.649 INFO    ] No existing commands found in stream
[2026-06-12 08:16:54,663.663 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 08:16:54,666.666 INFO    ] Waiting 1.88 seconds before fallback handling...
[2026-06-12 08:16:56,908.908 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 08:16:56,909.909 INFO    ] Checking for system updates...
[2026-06-12 08:16:56,930.930 INFO    ] 200
[2026-06-12 08:16:56,932.932 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:16:56,962.962 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 08:16:56,964.964 INFO    ] No update needed
[2026-06-12 08:16:56,965.965 INFO    ] Checking for camera pi updates...
[2026-06-12 08:16:56,985.985 INFO    ] 200
[2026-06-12 08:16:56,986.986 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:16:57,011.011 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 08:16:57,046.046 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 08:16:57,047.047 INFO    ] No camera update needed
[2026-06-12 08:16:57,049.049 INFO    ] Script finished. Safe exiting...
[2026-06-12 08:16:57,050.050 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 08:16:57,053.053 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 08:16:57,056.056 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 08:16:59,094.094 INFO    ] ================================================
[2026-06-12 08:16:59,109.109 INFO    ] Launching Daemon at Fri Jun 12 08:16:59 IST 2026
[2026-06-12 08:16:59,120.120 INFO    ] ================================================
[2026-06-12 08:16:59,465.465 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 08:16:59
[2026-06-12 08:16:59,779.779 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 08:16:59,918.918 INFO    ] Initializing speech engine...
[2026-06-12 08:16:59,928.928 INFO    ] 2026-06-12 08:16:59
[2026-06-12 08:17:00,131.131 INFO    ] 2026-06-12 08:17:00
[2026-06-12 08:17:00,161.161 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 08:17:00,341.341 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 08:17:00,342.342 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 08:17:00,491.491 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 08:17:00,542.542 INFO    ] time= 12/06/2026 08:17:00
[2026-06-12 08:17:00,588.588 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 08:17:00,600.600 INFO    ] Checking for existing commands in stream...
[2026-06-12 08:17:00,697.697 INFO    ] No existing commands found in stream
[2026-06-12 08:17:05,722.722 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 08:17:05,725.725 INFO    ] Waiting 3.56 seconds before fallback handling...
[2026-06-12 08:17:09,665.665 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 08:17:09,667.667 INFO    ] Checking for system updates...
[2026-06-12 08:17:09,688.688 INFO    ] 200
[2026-06-12 08:17:09,689.689 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:17:09,722.722 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 08:17:09,723.723 INFO    ] No update needed
[2026-06-12 08:17:09,725.725 INFO    ] Checking for camera pi updates...
[2026-06-12 08:17:09,746.746 INFO    ] 200
[2026-06-12 08:17:09,747.747 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:17:09,773.773 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 08:17:09,810.810 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 08:17:09,811.811 INFO    ] No camera update needed
[2026-06-12 08:17:09,813.813 INFO    ] Script finished. Safe exiting...
[2026-06-12 08:17:09,814.814 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 08:17:09,817.817 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 08:17:09,820.820 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 08:17:11,860.860 INFO    ] ================================================
[2026-06-12 08:17:11,876.876 INFO    ] Launching Daemon at Fri Jun 12 08:17:11 IST 2026
[2026-06-12 08:17:11,887.887 INFO    ] ================================================
[2026-06-12 08:17:12,281.281 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 08:17:12
[2026-06-12 08:17:12,622.622 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 08:17:12,763.763 INFO    ] Initializing speech engine...
[2026-06-12 08:17:12,770.770 INFO    ] 2026-06-12 08:17:12
[2026-06-12 08:17:12,990.990 INFO    ] 2026-06-12 08:17:12
[2026-06-12 08:17:13,020.020 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 08:17:13,208.208 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 08:17:13,217.217 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 08:17:13,376.376 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 08:17:13,421.421 INFO    ] time= 12/06/2026 08:17:13
[2026-06-12 08:17:13,443.443 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 08:17:13,450.450 INFO    ] Checking for existing commands in stream...
[2026-06-12 08:17:13,518.518 INFO    ] No existing commands found in stream
[2026-06-12 08:17:18,527.527 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 08:17:18,531.531 INFO    ] Waiting 1.31 seconds before fallback handling...
[2026-06-12 08:17:21,407.407 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 08:17:21,410.410 INFO    ] Checking for system updates...
[2026-06-12 08:17:21,446.446 INFO    ] 200
[2026-06-12 08:17:21,448.448 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:17:21,511.511 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 08:17:21,514.514 INFO    ] No update needed
[2026-06-12 08:17:21,516.516 INFO    ] Checking for camera pi updates...
[2026-06-12 08:17:21,546.546 INFO    ] 200
[2026-06-12 08:17:21,548.548 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:17:21,571.571 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 08:17:21,607.607 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 08:17:21,609.609 INFO    ] No camera update needed
[2026-06-12 08:17:21,610.610 INFO    ] Script finished. Safe exiting...
[2026-06-12 08:17:21,611.611 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 08:17:21,614.614 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 08:17:21,617.617 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 08:17:23,655.655 INFO    ] ================================================
[2026-06-12 08:17:23,671.671 INFO    ] Launching Daemon at Fri Jun 12 08:17:23 IST 2026
[2026-06-12 08:17:23,682.682 INFO    ] ================================================
[2026-06-12 08:17:24,013.013 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 08:17:24
[2026-06-12 08:17:24,325.325 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 08:17:24,474.474 INFO    ] Initializing speech engine...
[2026-06-12 08:17:24,477.477 INFO    ] 2026-06-12 08:17:24
[2026-06-12 08:17:24,681.681 INFO    ] 2026-06-12 08:17:24
[2026-06-12 08:17:24,709.709 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 08:17:24,897.897 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 08:17:24,906.906 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 08:17:25,059.059 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 08:17:25,109.109 INFO    ] time= 12/06/2026 08:17:25
[2026-06-12 08:17:25,132.132 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 08:17:25,138.138 INFO    ] Checking for existing commands in stream...
[2026-06-12 08:17:25,206.206 INFO    ] No existing commands found in stream
[2026-06-12 08:17:30,215.215 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 08:17:30,218.218 INFO    ] Waiting 0.26 seconds before fallback handling...
[2026-06-12 08:17:30,864.864 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 08:17:30,866.866 INFO    ] Checking for system updates...
[2026-06-12 08:17:30,887.887 INFO    ] 200
[2026-06-12 08:17:30,888.888 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:17:30,918.918 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 08:17:30,920.920 INFO    ] No update needed
[2026-06-12 08:17:30,922.922 INFO    ] Checking for camera pi updates...
[2026-06-12 08:17:30,942.942 INFO    ] 200
[2026-06-12 08:17:30,943.943 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:17:30,966.966 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 08:17:31,005.005 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 08:17:31,007.007 INFO    ] No camera update needed
[2026-06-12 08:17:31,008.008 INFO    ] Script finished. Safe exiting...
[2026-06-12 08:17:31,010.010 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 08:17:31,013.013 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 08:17:31,016.016 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 08:17:33,040.040 INFO    ] ================================================
[2026-06-12 08:17:33,048.048 INFO    ] Launching Daemon at Fri Jun 12 08:17:33 IST 2026
[2026-06-12 08:17:33,055.055 INFO    ] ================================================
[2026-06-12 08:17:33,354.354 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 08:17:33
[2026-06-12 08:17:33,725.725 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 08:17:33,877.877 INFO    ] Initializing speech engine...
[2026-06-12 08:17:33,883.883 INFO    ] 2026-06-12 08:17:33
[2026-06-12 08:17:34,091.091 INFO    ] 2026-06-12 08:17:34
[2026-06-12 08:17:34,121.121 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 08:17:34,296.296 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 08:17:34,346.346 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 08:17:34,503.503 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 08:17:34,572.572 INFO    ] time= 12/06/2026 08:17:34
[2026-06-12 08:17:34,596.596 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 08:17:34,602.602 INFO    ] Checking for existing commands in stream...
[2026-06-12 08:17:34,670.670 INFO    ] No existing commands found in stream
[2026-06-12 08:17:39,685.685 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 08:17:39,688.688 INFO    ] Waiting 0.42 seconds before fallback handling...
[2026-06-12 08:17:40,504.504 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 08:17:40,507.507 INFO    ] Checking for system updates...
[2026-06-12 08:17:40,542.542 INFO    ] 200
[2026-06-12 08:17:40,545.545 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:17:40,598.598 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 08:17:40,600.600 INFO    ] No update needed
[2026-06-12 08:17:40,603.603 INFO    ] Checking for camera pi updates...
[2026-06-12 08:17:40,636.636 INFO    ] 200
[2026-06-12 08:17:40,639.639 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:17:40,668.668 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 08:17:40,706.706 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 08:17:40,708.708 INFO    ] No camera update needed
[2026-06-12 08:17:40,709.709 INFO    ] Script finished. Safe exiting...
[2026-06-12 08:17:40,710.710 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 08:17:40,713.713 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 08:17:40,716.716 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 08:17:42,754.754 INFO    ] ================================================
[2026-06-12 08:17:42,769.769 INFO    ] Launching Daemon at Fri Jun 12 08:17:42 IST 2026
[2026-06-12 08:17:42,780.780 INFO    ] ================================================
[2026-06-12 08:17:43,141.141 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 08:17:43
[2026-06-12 08:17:43,479.479 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 08:17:43,626.626 INFO    ] Initializing speech engine...
[2026-06-12 08:17:43,637.637 INFO    ] 2026-06-12 08:17:43
[2026-06-12 08:17:43,847.847 INFO    ] 2026-06-12 08:17:43
[2026-06-12 08:17:43,876.876 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 08:17:44,063.063 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 08:17:44,067.067 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 08:17:44,225.225 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 08:17:44,275.275 INFO    ] time= 12/06/2026 08:17:44
[2026-06-12 08:17:44,297.297 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 08:17:44,304.304 INFO    ] Checking for existing commands in stream...
[2026-06-12 08:17:44,371.371 INFO    ] No existing commands found in stream
[2026-06-12 08:17:49,395.395 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 08:17:49,399.399 INFO    ] Waiting 2.43 seconds before fallback handling...
[2026-06-12 08:17:52,228.228 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 08:17:52,230.230 INFO    ] Checking for system updates...
[2026-06-12 08:17:52,251.251 INFO    ] 200
[2026-06-12 08:17:52,252.252 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:17:52,286.286 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 08:17:52,288.288 INFO    ] No update needed
[2026-06-12 08:17:52,289.289 INFO    ] Checking for camera pi updates...
[2026-06-12 08:17:52,309.309 INFO    ] 200
[2026-06-12 08:17:52,311.311 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:17:52,334.334 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 08:17:52,376.376 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 08:17:52,377.377 INFO    ] No camera update needed
[2026-06-12 08:17:52,378.378 INFO    ] Script finished. Safe exiting...
[2026-06-12 08:17:52,380.380 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 08:17:52,383.383 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 08:17:52,385.385 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 08:17:54,424.424 INFO    ] ================================================
[2026-06-12 08:17:54,439.439 INFO    ] Launching Daemon at Fri Jun 12 08:17:54 IST 2026
[2026-06-12 08:17:54,450.450 INFO    ] ================================================
[2026-06-12 08:17:54,806.806 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 08:17:54
[2026-06-12 08:17:55,118.118 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 08:17:55,254.254 INFO    ] Initializing speech engine...
[2026-06-12 08:17:55,268.268 INFO    ] 2026-06-12 08:17:55
[2026-06-12 08:17:55,486.486 INFO    ] 2026-06-12 08:17:55
[2026-06-12 08:17:55,510.510 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 08:17:55,714.714 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 08:17:55,718.718 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 08:17:55,858.858 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 08:17:55,914.914 INFO    ] time= 12/06/2026 08:17:55
[2026-06-12 08:17:55,954.954 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 08:17:55,965.965 INFO    ] Checking for existing commands in stream...
[2026-06-12 08:17:56,041.041 INFO    ] No existing commands found in stream
[2026-06-12 08:18:01,051.051 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 08:18:01,054.054 INFO    ] Waiting 3.41 seconds before fallback handling...
[2026-06-12 08:18:04,810.810 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 08:18:04,811.811 INFO    ] Checking for system updates...
[2026-06-12 08:18:04,832.832 INFO    ] 200
[2026-06-12 08:18:04,833.833 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:18:04,863.863 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 08:18:04,864.864 INFO    ] No update needed
[2026-06-12 08:18:04,865.865 INFO    ] Checking for camera pi updates...
[2026-06-12 08:18:04,888.888 INFO    ] 200
[2026-06-12 08:18:04,889.889 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:18:04,915.915 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 08:18:04,950.950 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 08:18:04,952.952 INFO    ] No camera update needed
[2026-06-12 08:18:04,953.953 INFO    ] Script finished. Safe exiting...
[2026-06-12 08:18:04,954.954 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 08:18:04,957.957 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 08:18:04,960.960 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 08:18:07,999.999 INFO    ] ================================================
[2026-06-12 08:18:07,014.014 INFO    ] Launching Daemon at Fri Jun 12 08:18:07 IST 2026
[2026-06-12 08:18:07,025.025 INFO    ] ================================================
[2026-06-12 08:18:07,355.355 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 08:18:07
[2026-06-12 08:18:07,673.673 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 08:18:07,805.805 INFO    ] Initializing speech engine...
[2026-06-12 08:18:07,813.813 INFO    ] 2026-06-12 08:18:07
[2026-06-12 08:18:08,026.026 INFO    ] 2026-06-12 08:18:08
[2026-06-12 08:18:08,055.055 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 08:18:08,239.239 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 08:18:08,248.248 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 08:18:08,397.397 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 08:18:08,445.445 INFO    ] time= 12/06/2026 08:18:08
[2026-06-12 08:18:08,467.467 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 08:18:08,473.473 INFO    ] Checking for existing commands in stream...
[2026-06-12 08:18:08,540.540 INFO    ] No existing commands found in stream
[2026-06-12 08:18:13,554.554 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 08:18:13,557.557 INFO    ] Waiting 0.87 seconds before fallback handling...
[2026-06-12 08:18:14,822.822 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 08:18:14,824.824 INFO    ] Checking for system updates...
[2026-06-12 08:18:14,844.844 INFO    ] 200
[2026-06-12 08:18:14,846.846 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:18:14,878.878 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 08:18:14,879.879 INFO    ] No update needed
[2026-06-12 08:18:14,881.881 INFO    ] Checking for camera pi updates...
[2026-06-12 08:18:14,901.901 INFO    ] 200
[2026-06-12 08:18:14,903.903 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:18:14,926.926 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 08:18:14,963.963 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 08:18:14,964.964 INFO    ] No camera update needed
[2026-06-12 08:18:14,966.966 INFO    ] Script finished. Safe exiting...
[2026-06-12 08:18:14,967.967 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 08:18:14,970.970 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 08:18:14,973.973 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 08:18:17,013.013 INFO    ] ================================================
[2026-06-12 08:18:17,028.028 INFO    ] Launching Daemon at Fri Jun 12 08:18:17 IST 2026
[2026-06-12 08:18:17,039.039 INFO    ] ================================================
[2026-06-12 08:18:17,410.410 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 08:18:17
[2026-06-12 08:18:17,729.729 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 08:18:17,862.862 INFO    ] Initializing speech engine...
[2026-06-12 08:18:17,870.870 INFO    ] 2026-06-12 08:18:17
[2026-06-12 08:18:18,084.084 INFO    ] 2026-06-12 08:18:18
[2026-06-12 08:18:18,112.112 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 08:18:18,295.295 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 08:18:18,298.298 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 08:18:18,427.427 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 08:18:18,487.487 INFO    ] time= 12/06/2026 08:18:18
[2026-06-12 08:18:18,516.516 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 08:18:18,527.527 INFO    ] Checking for existing commands in stream...
[2026-06-12 08:18:18,597.597 INFO    ] No existing commands found in stream
[2026-06-12 08:18:23,607.607 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 08:18:23,609.609 INFO    ] Waiting 2.86 seconds before fallback handling...
[2026-06-12 08:18:26,799.799 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 08:18:26,800.800 INFO    ] Checking for system updates...
[2026-06-12 08:18:26,821.821 INFO    ] 200
[2026-06-12 08:18:26,823.823 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:18:26,856.856 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 08:18:26,857.857 INFO    ] No update needed
[2026-06-12 08:18:26,859.859 INFO    ] Checking for camera pi updates...
[2026-06-12 08:18:26,879.879 INFO    ] 200
[2026-06-12 08:18:26,881.881 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:18:26,904.904 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 08:18:26,940.940 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 08:18:26,942.942 INFO    ] No camera update needed
[2026-06-12 08:18:26,943.943 INFO    ] Script finished. Safe exiting...
[2026-06-12 08:18:26,945.945 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 08:18:26,948.948 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 08:18:26,951.951 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 08:18:28,983.983 INFO    ] ================================================
[2026-06-12 08:18:28,991.991 INFO    ] Launching Daemon at Fri Jun 12 08:18:28 IST 2026
[2026-06-12 08:18:29,997.997 INFO    ] ================================================
[2026-06-12 08:18:29,373.373 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 08:18:29
[2026-06-12 08:18:29,711.711 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 08:18:29,862.862 INFO    ] Initializing speech engine...
[2026-06-12 08:18:29,867.867 INFO    ] 2026-06-12 08:18:29
[2026-06-12 08:18:30,076.076 INFO    ] 2026-06-12 08:18:30
[2026-06-12 08:18:30,105.105 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 08:18:30,295.295 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 08:18:30,305.305 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 08:18:30,430.430 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 08:18:30,486.486 INFO    ] time= 12/06/2026 08:18:30
[2026-06-12 08:18:30,526.526 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 08:18:30,531.531 INFO    ] Checking for existing commands in stream...
[2026-06-12 08:18:30,637.637 INFO    ] No existing commands found in stream
[2026-06-12 08:18:35,646.646 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 08:18:35,648.648 INFO    ] Waiting 3.30 seconds before fallback handling...
[2026-06-12 08:18:39,313.313 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 08:18:39,315.315 INFO    ] Checking for system updates...
[2026-06-12 08:18:39,335.335 INFO    ] 200
[2026-06-12 08:18:39,337.337 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:18:39,369.369 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 08:18:39,371.371 INFO    ] No update needed
[2026-06-12 08:18:39,372.372 INFO    ] Checking for camera pi updates...
[2026-06-12 08:18:39,393.393 INFO    ] 200
[2026-06-12 08:18:39,394.394 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:18:39,417.417 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 08:18:39,457.457 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 08:18:39,458.458 INFO    ] No camera update needed
[2026-06-12 08:18:39,459.459 INFO    ] Script finished. Safe exiting...
[2026-06-12 08:18:39,461.461 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 08:18:39,464.464 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 08:18:39,466.466 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 08:18:41,508.508 INFO    ] ================================================
[2026-06-12 08:18:41,523.523 INFO    ] Launching Daemon at Fri Jun 12 08:18:41 IST 2026
[2026-06-12 08:18:41,534.534 INFO    ] ================================================
[2026-06-12 08:18:41,905.905 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 08:18:41
[2026-06-12 08:18:42,241.241 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 08:18:42,395.395 INFO    ] Initializing speech engine...
[2026-06-12 08:18:42,406.406 INFO    ] 2026-06-12 08:18:42
[2026-06-12 08:18:42,607.607 INFO    ] 2026-06-12 08:18:42
[2026-06-12 08:18:42,636.636 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 08:18:42,770.770 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 08:18:42,823.823 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 08:18:42,961.961 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 08:18:43,025.025 INFO    ] time= 12/06/2026 08:18:42
[2026-06-12 08:18:43,052.052 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 08:18:43,059.059 INFO    ] Checking for existing commands in stream...
[2026-06-12 08:18:43,127.127 INFO    ] No existing commands found in stream
[2026-06-12 08:18:48,151.151 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 08:18:48,154.154 INFO    ] Waiting 0.62 seconds before fallback handling...
[2026-06-12 08:18:49,142.142 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 08:18:49,144.144 INFO    ] Checking for system updates...
[2026-06-12 08:18:49,166.166 INFO    ] 200
[2026-06-12 08:18:49,168.168 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:18:49,203.203 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 08:18:49,204.204 INFO    ] No update needed
[2026-06-12 08:18:49,206.206 INFO    ] Checking for camera pi updates...
[2026-06-12 08:18:49,225.225 INFO    ] 200
[2026-06-12 08:18:49,227.227 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:18:49,250.250 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 08:18:49,390.390 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 08:18:49,391.391 INFO    ] No camera update needed
[2026-06-12 08:18:49,393.393 INFO    ] Script finished. Safe exiting...
[2026-06-12 08:18:49,394.394 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 08:18:49,397.397 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 08:18:49,400.400 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 08:18:51,439.439 INFO    ] ================================================
[2026-06-12 08:18:51,455.455 INFO    ] Launching Daemon at Fri Jun 12 08:18:51 IST 2026
[2026-06-12 08:18:51,465.465 INFO    ] ================================================
[2026-06-12 08:18:51,806.806 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 08:18:51
[2026-06-12 08:18:52,122.122 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 08:18:52,253.253 INFO    ] Initializing speech engine...
[2026-06-12 08:18:52,258.258 INFO    ] 2026-06-12 08:18:52
[2026-06-12 08:18:52,475.475 INFO    ] 2026-06-12 08:18:52
[2026-06-12 08:18:52,504.504 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 08:18:52,689.689 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 08:18:52,699.699 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 08:18:52,829.829 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 08:18:52,896.896 INFO    ] time= 12/06/2026 08:18:52
[2026-06-12 08:18:52,920.920 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 08:18:52,926.926 INFO    ] Checking for existing commands in stream...
[2026-06-12 08:18:53,006.006 INFO    ] No existing commands found in stream
[2026-06-12 08:18:58,015.015 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 08:18:58,018.018 INFO    ] Waiting 3.27 seconds before fallback handling...
[2026-06-12 08:19:01,646.646 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 08:19:01,648.648 INFO    ] Checking for system updates...
[2026-06-12 08:19:01,680.680 INFO    ] 200
[2026-06-12 08:19:01,683.683 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:19:01,724.724 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 08:19:01,727.727 INFO    ] No update needed
[2026-06-12 08:19:01,729.729 INFO    ] Checking for camera pi updates...
[2026-06-12 08:19:01,757.757 INFO    ] 200
[2026-06-12 08:19:01,759.759 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:19:01,795.795 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 08:19:01,826.826 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 08:19:01,828.828 INFO    ] No camera update needed
[2026-06-12 08:19:01,830.830 INFO    ] Script finished. Safe exiting...
[2026-06-12 08:19:01,832.832 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 08:19:01,837.837 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 08:19:01,841.841 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 08:19:03,884.884 INFO    ] ================================================
[2026-06-12 08:19:03,900.900 INFO    ] Launching Daemon at Fri Jun 12 08:19:03 IST 2026
[2026-06-12 08:19:03,911.911 INFO    ] ================================================
[2026-06-12 08:19:04,284.284 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 08:19:04
[2026-06-12 08:19:04,601.601 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 08:19:04,744.744 INFO    ] Initializing speech engine...
[2026-06-12 08:19:04,749.749 INFO    ] 2026-06-12 08:19:04
[2026-06-12 08:19:04,952.952 INFO    ] 2026-06-12 08:19:04
[2026-06-12 08:19:04,981.981 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 08:19:05,165.165 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 08:19:05,175.175 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 08:19:05,314.314 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 08:19:05,377.377 INFO    ] time= 12/06/2026 08:19:05
[2026-06-12 08:19:05,407.407 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 08:19:05,415.415 INFO    ] Checking for existing commands in stream...
[2026-06-12 08:19:05,481.481 INFO    ] No existing commands found in stream
[2026-06-12 08:19:10,492.492 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 08:19:10,496.496 INFO    ] Waiting 1.61 seconds before fallback handling...
[2026-06-12 08:19:12,507.507 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 08:19:12,509.509 INFO    ] Checking for system updates...
[2026-06-12 08:19:12,530.530 INFO    ] 200
[2026-06-12 08:19:12,532.532 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:19:12,562.562 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 08:19:12,564.564 INFO    ] No update needed
[2026-06-12 08:19:12,565.565 INFO    ] Checking for camera pi updates...
[2026-06-12 08:19:12,584.584 INFO    ] 200
[2026-06-12 08:19:12,586.586 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:19:12,609.609 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 08:19:12,648.648 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 08:19:12,649.649 INFO    ] No camera update needed
[2026-06-12 08:19:12,651.651 INFO    ] Script finished. Safe exiting...
[2026-06-12 08:19:12,652.652 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 08:19:12,655.655 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 08:19:12,658.658 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 08:19:14,698.698 INFO    ] ================================================
[2026-06-12 08:19:14,715.715 INFO    ] Launching Daemon at Fri Jun 12 08:19:14 IST 2026
[2026-06-12 08:19:14,727.727 INFO    ] ================================================
[2026-06-12 08:19:15,064.064 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 08:19:15
[2026-06-12 08:19:15,375.375 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 08:19:15,519.519 INFO    ] Initializing speech engine...
[2026-06-12 08:19:15,524.524 INFO    ] 2026-06-12 08:19:15
[2026-06-12 08:19:15,726.726 INFO    ] 2026-06-12 08:19:15
[2026-06-12 08:19:15,754.754 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 08:19:15,940.940 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 08:19:15,943.943 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 08:19:16,078.078 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 08:19:16,145.145 INFO    ] time= 12/06/2026 08:19:16
[2026-06-12 08:19:16,174.174 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 08:19:16,180.180 INFO    ] Checking for existing commands in stream...
[2026-06-12 08:19:16,273.273 INFO    ] No existing commands found in stream
[2026-06-12 08:19:21,286.286 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 08:19:21,288.288 INFO    ] Waiting 0.02 seconds before fallback handling...
[2026-06-12 08:19:21,676.676 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 08:19:21,677.677 INFO    ] Checking for system updates...
[2026-06-12 08:19:21,698.698 INFO    ] 200
[2026-06-12 08:19:21,699.699 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:19:21,729.729 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 08:19:21,731.731 INFO    ] No update needed
[2026-06-12 08:19:21,732.732 INFO    ] Checking for camera pi updates...
[2026-06-12 08:19:21,753.753 INFO    ] 200
[2026-06-12 08:19:21,754.754 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:19:21,777.777 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 08:19:21,809.809 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 08:19:21,811.811 INFO    ] No camera update needed
[2026-06-12 08:19:21,812.812 INFO    ] Script finished. Safe exiting...
[2026-06-12 08:19:21,813.813 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 08:19:21,816.816 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 08:19:21,819.819 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 08:19:23,858.858 INFO    ] ================================================
[2026-06-12 08:19:23,873.873 INFO    ] Launching Daemon at Fri Jun 12 08:19:23 IST 2026
[2026-06-12 08:19:23,885.885 INFO    ] ================================================
[2026-06-12 08:19:24,227.227 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 08:19:24
[2026-06-12 08:19:24,543.543 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 08:19:24,678.678 INFO    ] Initializing speech engine...
[2026-06-12 08:19:24,681.681 INFO    ] 2026-06-12 08:19:24
[2026-06-12 08:19:24,900.900 INFO    ] 2026-06-12 08:19:24
[2026-06-12 08:19:24,929.929 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 08:19:25,115.115 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 08:19:25,119.119 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 08:19:25,250.250 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 08:19:25,306.306 INFO    ] time= 12/06/2026 08:19:25
[2026-06-12 08:19:25,346.346 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 08:19:25,352.352 INFO    ] Checking for existing commands in stream...
[2026-06-12 08:19:25,423.423 INFO    ] No existing commands found in stream
[2026-06-12 08:19:30,433.433 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 08:19:30,436.436 INFO    ] Waiting 1.30 seconds before fallback handling...
[2026-06-12 08:19:32,057.057 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 08:19:32,059.059 INFO    ] Checking for system updates...
[2026-06-12 08:19:32,080.080 INFO    ] 200
[2026-06-12 08:19:32,081.081 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:19:32,112.112 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 08:19:32,113.113 INFO    ] No update needed
[2026-06-12 08:19:32,114.114 INFO    ] Checking for camera pi updates...
[2026-06-12 08:19:32,148.148 INFO    ] 200
[2026-06-12 08:19:32,150.150 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:19:32,193.193 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 08:19:32,222.222 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 08:19:32,224.224 INFO    ] No camera update needed
[2026-06-12 08:19:32,225.225 INFO    ] Script finished. Safe exiting...
[2026-06-12 08:19:32,226.226 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 08:19:32,229.229 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 08:19:32,232.232 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 08:19:34,272.272 INFO    ] ================================================
[2026-06-12 08:19:34,290.290 INFO    ] Launching Daemon at Fri Jun 12 08:19:34 IST 2026
[2026-06-12 08:19:34,301.301 INFO    ] ================================================
[2026-06-12 08:19:34,671.671 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 08:19:34
[2026-06-12 08:19:35,009.009 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 08:19:35,156.156 INFO    ] Initializing speech engine...
[2026-06-12 08:19:35,166.166 INFO    ] 2026-06-12 08:19:35
[2026-06-12 08:19:35,376.376 INFO    ] 2026-06-12 08:19:35
[2026-06-12 08:19:35,405.405 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 08:19:35,546.546 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 08:19:35,721.721 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 08:19:35,891.891 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 08:19:35,894.894 INFO    ] time= 12/06/2026 08:19:35
[2026-06-12 08:19:35,920.920 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 08:19:35,922.922 INFO    ] Checking for existing commands in stream...
[2026-06-12 08:19:36,019.019 INFO    ] No existing commands found in stream
[2026-06-12 08:19:41,030.030 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 08:19:41,033.033 INFO    ] Waiting 2.19 seconds before fallback handling...
[2026-06-12 08:19:43,616.616 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 08:19:43,618.618 INFO    ] Checking for system updates...
[2026-06-12 08:19:43,641.641 INFO    ] 200
[2026-06-12 08:19:43,642.642 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:19:43,672.672 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 08:19:43,673.673 INFO    ] No update needed
[2026-06-12 08:19:43,675.675 INFO    ] Checking for camera pi updates...
[2026-06-12 08:19:43,694.694 INFO    ] 200
[2026-06-12 08:19:43,695.695 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:19:43,718.718 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 08:19:43,754.754 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 08:19:43,756.756 INFO    ] No camera update needed
[2026-06-12 08:19:43,757.757 INFO    ] Script finished. Safe exiting...
[2026-06-12 08:19:43,758.758 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 08:19:43,761.761 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 08:19:43,764.764 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 08:19:45,802.802 INFO    ] ================================================
[2026-06-12 08:19:45,817.817 INFO    ] Launching Daemon at Fri Jun 12 08:19:45 IST 2026
[2026-06-12 08:19:45,828.828 INFO    ] ================================================
[2026-06-12 08:19:46,181.181 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 08:19:46
[2026-06-12 08:19:46,521.521 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 08:19:46,661.661 INFO    ] Initializing speech engine...
[2026-06-12 08:19:46,675.675 INFO    ] 2026-06-12 08:19:46
[2026-06-12 08:19:46,888.888 INFO    ] 2026-06-12 08:19:46
[2026-06-12 08:19:46,919.919 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 08:19:47,107.107 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 08:19:47,118.118 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 08:19:47,264.264 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 08:19:47,320.320 INFO    ] time= 12/06/2026 08:19:47
[2026-06-12 08:19:47,342.342 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 08:19:47,348.348 INFO    ] Checking for existing commands in stream...
[2026-06-12 08:19:47,416.416 INFO    ] No existing commands found in stream
[2026-06-12 08:19:52,426.426 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 08:19:52,429.429 INFO    ] Waiting 0.30 seconds before fallback handling...
[2026-06-12 08:19:53,106.106 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 08:19:53,108.108 INFO    ] Checking for system updates...
[2026-06-12 08:19:53,129.129 INFO    ] 200
[2026-06-12 08:19:53,131.131 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:19:53,161.161 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 08:19:53,162.162 INFO    ] No update needed
[2026-06-12 08:19:53,164.164 INFO    ] Checking for camera pi updates...
[2026-06-12 08:19:53,185.185 INFO    ] 200
[2026-06-12 08:19:53,186.186 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:19:53,209.209 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 08:19:53,246.246 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 08:19:53,247.247 INFO    ] No camera update needed
[2026-06-12 08:19:53,249.249 INFO    ] Script finished. Safe exiting...
[2026-06-12 08:19:53,250.250 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 08:19:53,253.253 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 08:19:53,256.256 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 08:19:55,295.295 INFO    ] ================================================
[2026-06-12 08:19:55,311.311 INFO    ] Launching Daemon at Fri Jun 12 08:19:55 IST 2026
[2026-06-12 08:19:55,321.321 INFO    ] ================================================
[2026-06-12 08:19:55,653.653 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 08:19:55
[2026-06-12 08:19:55,965.965 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 08:19:56,094.094 INFO    ] Initializing speech engine...
[2026-06-12 08:19:56,097.097 INFO    ] 2026-06-12 08:19:56
[2026-06-12 08:19:56,316.316 INFO    ] 2026-06-12 08:19:56
[2026-06-12 08:19:56,344.344 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 08:19:56,529.529 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 08:19:56,538.538 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 08:19:56,666.666 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 08:19:56,717.717 INFO    ] time= 12/06/2026 08:19:56
[2026-06-12 08:19:56,752.752 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 08:19:56,763.763 INFO    ] Checking for existing commands in stream...
[2026-06-12 08:19:56,835.835 INFO    ] No existing commands found in stream
[2026-06-12 08:20:01,842.842 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 08:20:01,844.844 INFO    ] Waiting 1.61 seconds before fallback handling...
[2026-06-12 08:20:06,815.815 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 08:20:06,817.817 INFO    ] Checking for system updates...
[2026-06-12 08:20:06,854.854 INFO    ] 200
[2026-06-12 08:20:06,857.857 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:20:06,913.913 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 08:20:06,916.916 INFO    ] No update needed
[2026-06-12 08:20:06,918.918 INFO    ] Checking for camera pi updates...
[2026-06-12 08:20:06,955.955 INFO    ] 200
[2026-06-12 08:20:06,958.958 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:20:06,986.986 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 08:20:07,029.029 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 08:20:07,031.031 INFO    ] No camera update needed
[2026-06-12 08:20:07,032.032 INFO    ] Script finished. Safe exiting...
[2026-06-12 08:20:07,034.034 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 08:20:07,037.037 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 08:20:07,039.039 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 08:20:09,078.078 INFO    ] ================================================
[2026-06-12 08:20:09,093.093 INFO    ] Launching Daemon at Fri Jun 12 08:20:09 IST 2026
[2026-06-12 08:20:09,104.104 INFO    ] ================================================
[2026-06-12 08:20:09,477.477 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 08:20:09
[2026-06-12 08:20:09,798.798 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 08:20:09,938.938 INFO    ] Initializing speech engine...
[2026-06-12 08:20:09,949.949 INFO    ] 2026-06-12 08:20:09
[2026-06-12 08:20:10,153.153 INFO    ] 2026-06-12 08:20:10
[2026-06-12 08:20:10,182.182 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 08:20:10,314.314 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 08:20:10,365.365 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 08:20:10,501.501 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 08:20:10,563.563 INFO    ] time= 12/06/2026 08:20:10
[2026-06-12 08:20:10,588.588 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 08:20:10,604.604 INFO    ] Checking for existing commands in stream...
[2026-06-12 08:20:10,677.677 INFO    ] No existing commands found in stream
[2026-06-12 08:20:15,691.691 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 08:20:15,699.699 INFO    ] Waiting 2.33 seconds before fallback handling...
[2026-06-12 08:20:18,387.387 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 08:20:18,388.388 INFO    ] Checking for system updates...
[2026-06-12 08:20:18,409.409 INFO    ] 200
[2026-06-12 08:20:18,411.411 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:20:18,441.441 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 08:20:18,443.443 INFO    ] No update needed
[2026-06-12 08:20:18,444.444 INFO    ] Checking for camera pi updates...
[2026-06-12 08:20:18,465.465 INFO    ] 200
[2026-06-12 08:20:18,466.466 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:20:18,491.491 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 08:20:18,527.527 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 08:20:18,529.529 INFO    ] No camera update needed
[2026-06-12 08:20:18,530.530 INFO    ] Script finished. Safe exiting...
[2026-06-12 08:20:18,532.532 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 08:20:18,535.535 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 08:20:18,538.538 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 08:20:20,578.578 INFO    ] ================================================
[2026-06-12 08:20:20,593.593 INFO    ] Launching Daemon at Fri Jun 12 08:20:20 IST 2026
[2026-06-12 08:20:20,604.604 INFO    ] ================================================
[2026-06-12 08:20:20,966.966 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 08:20:20
[2026-06-12 08:20:21,296.296 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 08:20:21,429.429 INFO    ] Initializing speech engine...
[2026-06-12 08:20:21,434.434 INFO    ] 2026-06-12 08:20:21
[2026-06-12 08:20:21,631.631 INFO    ] 2026-06-12 08:20:21
[2026-06-12 08:20:21,678.678 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 08:20:21,832.832 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 08:20:21,872.872 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 08:20:22,042.042 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 08:20:22,084.084 INFO    ] time= 12/06/2026 08:20:22
[2026-06-12 08:20:22,127.127 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 08:20:22,150.150 INFO    ] Checking for existing commands in stream...
[2026-06-12 08:20:22,225.225 INFO    ] No existing commands found in stream
[2026-06-12 08:20:27,235.235 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 08:20:27,238.238 INFO    ] Waiting 0.85 seconds before fallback handling...
[2026-06-12 08:20:28,408.408 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 08:20:28,409.409 INFO    ] Checking for system updates...
[2026-06-12 08:20:28,430.430 INFO    ] 200
[2026-06-12 08:20:28,432.432 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:20:28,464.464 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 08:20:28,465.465 INFO    ] No update needed
[2026-06-12 08:20:28,466.466 INFO    ] Checking for camera pi updates...
[2026-06-12 08:20:28,485.485 INFO    ] 200
[2026-06-12 08:20:28,487.487 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:20:28,512.512 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 08:20:28,546.546 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 08:20:28,547.547 INFO    ] No camera update needed
[2026-06-12 08:20:28,548.548 INFO    ] Script finished. Safe exiting...
[2026-06-12 08:20:28,549.549 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 08:20:28,552.552 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 08:20:28,555.555 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 08:20:30,594.594 INFO    ] ================================================
[2026-06-12 08:20:30,609.609 INFO    ] Launching Daemon at Fri Jun 12 08:20:30 IST 2026
[2026-06-12 08:20:30,620.620 INFO    ] ================================================
[2026-06-12 08:20:30,993.993 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 08:20:30
[2026-06-12 08:20:31,309.309 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 08:20:31,448.448 INFO    ] Initializing speech engine...
[2026-06-12 08:20:31,458.458 INFO    ] 2026-06-12 08:20:31
[2026-06-12 08:20:31,676.676 INFO    ] 2026-06-12 08:20:31
[2026-06-12 08:20:31,706.706 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 08:20:31,900.900 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 08:20:31,912.912 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 08:20:32,073.073 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 08:20:32,127.127 INFO    ] time= 12/06/2026 08:20:32
[2026-06-12 08:20:32,157.157 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 08:20:32,170.170 INFO    ] Checking for existing commands in stream...
[2026-06-12 08:20:32,253.253 INFO    ] No existing commands found in stream
[2026-06-12 08:20:37,280.280 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 08:20:37,284.284 INFO    ] Waiting 3.97 seconds before fallback handling...
[2026-06-12 08:20:41,646.646 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 08:20:41,648.648 INFO    ] Checking for system updates...
[2026-06-12 08:20:41,669.669 INFO    ] 200
[2026-06-12 08:20:41,671.671 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:20:41,701.701 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 08:20:41,703.703 INFO    ] No update needed
[2026-06-12 08:20:41,704.704 INFO    ] Checking for camera pi updates...
[2026-06-12 08:20:41,723.723 INFO    ] 200
[2026-06-12 08:20:41,725.725 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:20:41,748.748 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 08:20:41,784.784 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 08:20:41,785.785 INFO    ] No camera update needed
[2026-06-12 08:20:41,786.786 INFO    ] Script finished. Safe exiting...
[2026-06-12 08:20:41,788.788 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 08:20:41,791.791 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 08:20:41,794.794 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 08:20:43,834.834 INFO    ] ================================================
[2026-06-12 08:20:43,850.850 INFO    ] Launching Daemon at Fri Jun 12 08:20:43 IST 2026
[2026-06-12 08:20:43,861.861 INFO    ] ================================================
[2026-06-12 08:20:44,225.225 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 08:20:44
[2026-06-12 08:20:44,535.535 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 08:20:44,677.677 INFO    ] Initializing speech engine...
[2026-06-12 08:20:44,682.682 INFO    ] 2026-06-12 08:20:44
[2026-06-12 08:20:44,890.890 INFO    ] 2026-06-12 08:20:44
[2026-06-12 08:20:44,920.920 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 08:20:45,093.093 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 08:20:45,121.121 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 08:20:45,261.261 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 08:20:45,322.322 INFO    ] time= 12/06/2026 08:20:45
[2026-06-12 08:20:45,356.356 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 08:20:45,367.367 INFO    ] Checking for existing commands in stream...
[2026-06-12 08:20:45,469.469 INFO    ] No existing commands found in stream
[2026-06-12 08:20:50,478.478 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 08:20:50,481.481 INFO    ] Waiting 3.47 seconds before fallback handling...
[2026-06-12 08:20:54,349.349 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 08:20:54,351.351 INFO    ] Checking for system updates...
[2026-06-12 08:20:54,372.372 INFO    ] 200
[2026-06-12 08:20:54,373.373 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:20:54,403.403 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 08:20:54,405.405 INFO    ] No update needed
[2026-06-12 08:20:54,406.406 INFO    ] Checking for camera pi updates...
[2026-06-12 08:20:54,425.425 INFO    ] 200
[2026-06-12 08:20:54,427.427 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:20:54,452.452 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 08:20:54,598.598 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 08:20:54,599.599 INFO    ] No camera update needed
[2026-06-12 08:20:54,601.601 INFO    ] Script finished. Safe exiting...
[2026-06-12 08:20:54,602.602 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 08:20:54,605.605 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 08:20:54,608.608 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 08:20:56,647.647 INFO    ] ================================================
[2026-06-12 08:20:56,663.663 INFO    ] Launching Daemon at Fri Jun 12 08:20:56 IST 2026
[2026-06-12 08:20:56,674.674 INFO    ] ================================================
[2026-06-12 08:20:57,042.042 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 08:20:57
[2026-06-12 08:20:57,357.357 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 08:20:57,503.503 INFO    ] Initializing speech engine...
[2026-06-12 08:20:57,508.508 INFO    ] 2026-06-12 08:20:57
[2026-06-12 08:20:57,723.723 INFO    ] 2026-06-12 08:20:57
[2026-06-12 08:20:57,754.754 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 08:20:57,950.950 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 08:20:57,953.953 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 08:20:58,101.101 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 08:20:58,160.160 INFO    ] time= 12/06/2026 08:20:58
[2026-06-12 08:20:58,189.189 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 08:20:58,200.200 INFO    ] Checking for existing commands in stream...
[2026-06-12 08:20:58,301.301 INFO    ] No existing commands found in stream
[2026-06-12 08:21:03,314.314 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 08:21:03,316.316 INFO    ] Waiting 0.74 seconds before fallback handling...
[2026-06-12 08:21:04,380.380 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 08:21:04,382.382 INFO    ] Checking for system updates...
[2026-06-12 08:21:04,402.402 INFO    ] 200
[2026-06-12 08:21:04,404.404 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:21:04,436.436 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 08:21:04,438.438 INFO    ] No update needed
[2026-06-12 08:21:04,439.439 INFO    ] Checking for camera pi updates...
[2026-06-12 08:21:04,458.458 INFO    ] 200
[2026-06-12 08:21:04,460.460 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:21:04,484.484 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 08:21:04,523.523 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 08:21:04,524.524 INFO    ] No camera update needed
[2026-06-12 08:21:04,526.526 INFO    ] Script finished. Safe exiting...
[2026-06-12 08:21:04,527.527 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 08:21:04,530.530 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 08:21:04,533.533 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 08:21:06,572.572 INFO    ] ================================================
[2026-06-12 08:21:06,587.587 INFO    ] Launching Daemon at Fri Jun 12 08:21:06 IST 2026
[2026-06-12 08:21:06,598.598 INFO    ] ================================================
[2026-06-12 08:21:06,964.964 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 08:21:06
[2026-06-12 08:21:07,275.275 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 08:21:07,408.408 INFO    ] Initializing speech engine...
[2026-06-12 08:21:07,413.413 INFO    ] 2026-06-12 08:21:07
[2026-06-12 08:21:07,641.641 INFO    ] 2026-06-12 08:21:07
[2026-06-12 08:21:07,671.671 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 08:21:07,872.872 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 08:21:07,875.875 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 08:21:08,014.014 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 08:21:08,071.071 INFO    ] time= 12/06/2026 08:21:08
[2026-06-12 08:21:08,099.099 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 08:21:08,123.123 INFO    ] Checking for existing commands in stream...
[2026-06-12 08:21:08,198.198 INFO    ] No existing commands found in stream
[2026-06-12 08:21:13,209.209 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 08:21:13,212.212 INFO    ] Waiting 2.37 seconds before fallback handling...
[2026-06-12 08:21:15,963.963 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 08:21:15,965.965 INFO    ] Checking for system updates...
[2026-06-12 08:21:15,989.989 INFO    ] 200
[2026-06-12 08:21:15,991.991 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:21:16,021.021 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 08:21:16,022.022 INFO    ] No update needed
[2026-06-12 08:21:16,023.023 INFO    ] Checking for camera pi updates...
[2026-06-12 08:21:16,043.043 INFO    ] 200
[2026-06-12 08:21:16,044.044 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:21:16,067.067 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 08:21:16,104.104 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 08:21:16,105.105 INFO    ] No camera update needed
[2026-06-12 08:21:16,106.106 INFO    ] Script finished. Safe exiting...
[2026-06-12 08:21:16,110.110 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 08:21:16,113.113 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 08:21:16,116.116 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 08:21:18,154.154 INFO    ] ================================================
[2026-06-12 08:21:18,170.170 INFO    ] Launching Daemon at Fri Jun 12 08:21:18 IST 2026
[2026-06-12 08:21:18,180.180 INFO    ] ================================================
[2026-06-12 08:21:18,551.551 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 08:21:18
[2026-06-12 08:21:18,870.870 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 08:21:19,005.005 INFO    ] Initializing speech engine...
[2026-06-12 08:21:19,009.009 INFO    ] 2026-06-12 08:21:19
[2026-06-12 08:21:19,220.220 INFO    ] 2026-06-12 08:21:19
[2026-06-12 08:21:19,248.248 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 08:21:19,404.404 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 08:21:19,448.448 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 08:21:19,614.614 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 08:21:19,657.657 INFO    ] time= 12/06/2026 08:21:19
[2026-06-12 08:21:19,700.700 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 08:21:19,724.724 INFO    ] Checking for existing commands in stream...
[2026-06-12 08:21:19,802.802 INFO    ] No existing commands found in stream
[2026-06-12 08:21:24,816.816 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 08:21:24,819.819 INFO    ] Waiting 0.32 seconds before fallback handling...
[2026-06-12 08:21:25,468.468 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 08:21:25,470.470 INFO    ] Checking for system updates...
[2026-06-12 08:21:25,496.496 INFO    ] 200
[2026-06-12 08:21:25,498.498 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:21:25,528.528 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 08:21:25,529.529 INFO    ] No update needed
[2026-06-12 08:21:25,531.531 INFO    ] Checking for camera pi updates...
[2026-06-12 08:21:25,552.552 INFO    ] 200
[2026-06-12 08:21:25,553.553 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:21:25,576.576 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 08:21:25,619.619 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 08:21:25,621.621 INFO    ] No camera update needed
[2026-06-12 08:21:25,622.622 INFO    ] Script finished. Safe exiting...
[2026-06-12 08:21:25,623.623 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 08:21:25,627.627 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 08:21:25,630.630 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 08:21:27,668.668 INFO    ] ================================================
[2026-06-12 08:21:27,683.683 INFO    ] Launching Daemon at Fri Jun 12 08:21:27 IST 2026
[2026-06-12 08:21:27,694.694 INFO    ] ================================================
[2026-06-12 08:21:28,059.059 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 08:21:28
[2026-06-12 08:21:28,372.372 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 08:21:28,504.504 INFO    ] Initializing speech engine...
[2026-06-12 08:21:28,508.508 INFO    ] 2026-06-12 08:21:28
[2026-06-12 08:21:28,727.727 INFO    ] 2026-06-12 08:21:28
[2026-06-12 08:21:28,757.757 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 08:21:28,944.944 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 08:21:28,947.947 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 08:21:29,079.079 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 08:21:29,135.135 INFO    ] time= 12/06/2026 08:21:29
[2026-06-12 08:21:29,165.165 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 08:21:29,181.181 INFO    ] Checking for existing commands in stream...
[2026-06-12 08:21:29,254.254 INFO    ] No existing commands found in stream
[2026-06-12 08:21:34,263.263 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 08:21:34,266.266 INFO    ] Waiting 1.72 seconds before fallback handling...
[2026-06-12 08:21:36,360.360 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 08:21:36,362.362 INFO    ] Checking for system updates...
[2026-06-12 08:21:36,382.382 INFO    ] 200
[2026-06-12 08:21:36,384.384 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:21:36,414.414 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 08:21:36,415.415 INFO    ] No update needed
[2026-06-12 08:21:36,417.417 INFO    ] Checking for camera pi updates...
[2026-06-12 08:21:36,436.436 INFO    ] 200
[2026-06-12 08:21:36,437.437 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:21:36,461.461 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 08:21:36,500.500 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 08:21:36,501.501 INFO    ] No camera update needed
[2026-06-12 08:21:36,502.502 INFO    ] Script finished. Safe exiting...
[2026-06-12 08:21:36,504.504 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 08:21:36,507.507 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 08:21:36,509.509 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 08:21:38,549.549 INFO    ] ================================================
[2026-06-12 08:21:38,565.565 INFO    ] Launching Daemon at Fri Jun 12 08:21:38 IST 2026
[2026-06-12 08:21:38,576.576 INFO    ] ================================================
[2026-06-12 08:21:38,940.940 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 08:21:38
[2026-06-12 08:21:39,252.252 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 08:21:39,384.384 INFO    ] Initializing speech engine...
[2026-06-12 08:21:39,396.396 INFO    ] 2026-06-12 08:21:39
[2026-06-12 08:21:39,602.602 INFO    ] 2026-06-12 08:21:39
[2026-06-12 08:21:39,631.631 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 08:21:39,752.752 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 08:21:39,815.815 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 08:21:39,953.953 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 08:21:40,017.017 INFO    ] time= 12/06/2026 08:21:39
[2026-06-12 08:21:40,044.044 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 08:21:40,046.046 INFO    ] Checking for existing commands in stream...
[2026-06-12 08:21:40,116.116 INFO    ] No existing commands found in stream
[2026-06-12 08:21:45,126.126 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 08:21:45,129.129 INFO    ] Waiting 1.01 seconds before fallback handling...
[2026-06-12 08:21:46,501.501 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 08:21:46,502.502 INFO    ] Checking for system updates...
[2026-06-12 08:21:46,523.523 INFO    ] 200
[2026-06-12 08:21:46,524.524 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:21:46,558.558 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 08:21:46,560.560 INFO    ] No update needed
[2026-06-12 08:21:46,561.561 INFO    ] Checking for camera pi updates...
[2026-06-12 08:21:46,582.582 INFO    ] 200
[2026-06-12 08:21:46,583.583 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:21:46,607.607 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 08:21:46,642.642 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 08:21:46,643.643 INFO    ] No camera update needed
[2026-06-12 08:21:46,644.644 INFO    ] Script finished. Safe exiting...
[2026-06-12 08:21:46,646.646 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 08:21:46,648.648 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 08:21:46,651.651 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 08:21:48,691.691 INFO    ] ================================================
[2026-06-12 08:21:48,707.707 INFO    ] Launching Daemon at Fri Jun 12 08:21:48 IST 2026
[2026-06-12 08:21:48,717.717 INFO    ] ================================================
[2026-06-12 08:21:49,082.082 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 08:21:49
[2026-06-12 08:21:49,395.395 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 08:21:49,527.527 INFO    ] Initializing speech engine...
[2026-06-12 08:21:49,541.541 INFO    ] 2026-06-12 08:21:49
[2026-06-12 08:21:49,745.745 INFO    ] 2026-06-12 08:21:49
[2026-06-12 08:21:49,775.775 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 08:21:49,962.962 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 08:21:49,966.966 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 08:21:50,102.102 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 08:21:50,169.169 INFO    ] time= 12/06/2026 08:21:50
[2026-06-12 08:21:50,185.185 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 08:21:50,186.186 INFO    ] Checking for existing commands in stream...
[2026-06-12 08:21:50,247.247 INFO    ] No existing commands found in stream
[2026-06-12 08:21:55,256.256 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 08:21:55,259.259 INFO    ] Waiting 1.98 seconds before fallback handling...
[2026-06-12 08:21:57,581.581 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 08:21:57,583.583 INFO    ] Checking for system updates...
[2026-06-12 08:21:57,604.604 INFO    ] 200
[2026-06-12 08:21:57,605.605 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:21:57,637.637 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 08:21:57,638.638 INFO    ] No update needed
[2026-06-12 08:21:57,640.640 INFO    ] Checking for camera pi updates...
[2026-06-12 08:21:57,660.660 INFO    ] 200
[2026-06-12 08:21:57,662.662 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:21:57,685.685 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 08:21:57,725.725 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 08:21:57,727.727 INFO    ] No camera update needed
[2026-06-12 08:21:57,728.728 INFO    ] Script finished. Safe exiting...
[2026-06-12 08:21:57,729.729 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 08:21:57,732.732 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 08:21:57,735.735 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 08:21:59,773.773 INFO    ] ================================================
[2026-06-12 08:21:59,788.788 INFO    ] Launching Daemon at Fri Jun 12 08:21:59 IST 2026
[2026-06-12 08:21:59,799.799 INFO    ] ================================================
[2026-06-12 08:22:00,157.157 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 08:22:00
[2026-06-12 08:22:00,473.473 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 08:22:00,608.608 INFO    ] Initializing speech engine...
[2026-06-12 08:22:00,612.612 INFO    ] 2026-06-12 08:22:00
[2026-06-12 08:22:00,831.831 INFO    ] 2026-06-12 08:22:00
[2026-06-12 08:22:00,860.860 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 08:22:01,046.046 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 08:22:01,050.050 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 08:22:01,179.179 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 08:22:01,216.216 INFO    ] time= 12/06/2026 08:22:01
[2026-06-12 08:22:01,224.224 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 08:22:01,237.237 INFO    ] Checking for existing commands in stream...
[2026-06-12 08:22:01,299.299 INFO    ] No existing commands found in stream
[2026-06-12 08:22:06,314.314 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 08:22:06,317.317 INFO    ] Waiting 1.76 seconds before fallback handling...
[2026-06-12 08:22:08,466.466 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 08:22:08,467.467 INFO    ] Checking for system updates...
[2026-06-12 08:22:08,488.488 INFO    ] 200
[2026-06-12 08:22:08,489.489 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:22:08,519.519 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 08:22:08,521.521 INFO    ] No update needed
[2026-06-12 08:22:08,522.522 INFO    ] Checking for camera pi updates...
[2026-06-12 08:22:08,541.541 INFO    ] 200
[2026-06-12 08:22:08,543.543 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:22:08,567.567 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 08:22:08,602.602 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 08:22:08,603.603 INFO    ] No camera update needed
[2026-06-12 08:22:08,604.604 INFO    ] Script finished. Safe exiting...
[2026-06-12 08:22:08,605.605 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 08:22:08,608.608 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 08:22:08,611.611 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 08:22:10,652.652 INFO    ] ================================================
[2026-06-12 08:22:10,668.668 INFO    ] Launching Daemon at Fri Jun 12 08:22:10 IST 2026
[2026-06-12 08:22:10,679.679 INFO    ] ================================================
[2026-06-12 08:22:11,030.030 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 08:22:11
[2026-06-12 08:22:11,349.349 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 08:22:11,489.489 INFO    ] Initializing speech engine...
[2026-06-12 08:22:11,498.498 INFO    ] 2026-06-12 08:22:11
[2026-06-12 08:22:11,702.702 INFO    ] 2026-06-12 08:22:11
[2026-06-12 08:22:11,732.732 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 08:22:11,896.896 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 08:22:11,919.919 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 08:22:12,056.056 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 08:22:12,110.110 INFO    ] time= 12/06/2026 08:22:12
[2026-06-12 08:22:12,139.139 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 08:22:12,149.149 INFO    ] Checking for existing commands in stream...
[2026-06-12 08:22:12,220.220 INFO    ] No existing commands found in stream
[2026-06-12 08:22:17,229.229 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 08:22:17,232.232 INFO    ] Waiting 2.48 seconds before fallback handling...
[2026-06-12 08:22:20,122.122 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 08:22:20,124.124 INFO    ] Checking for system updates...
[2026-06-12 08:22:20,145.145 INFO    ] 200
[2026-06-12 08:22:20,146.146 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:22:20,176.176 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 08:22:20,178.178 INFO    ] No update needed
[2026-06-12 08:22:20,179.179 INFO    ] Checking for camera pi updates...
[2026-06-12 08:22:20,199.199 INFO    ] 200
[2026-06-12 08:22:20,201.201 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:22:20,226.226 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 08:22:20,261.261 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 08:22:20,263.263 INFO    ] No camera update needed
[2026-06-12 08:22:20,264.264 INFO    ] Script finished. Safe exiting...
[2026-06-12 08:22:20,266.266 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 08:22:20,269.269 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 08:22:20,272.272 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 08:22:22,312.312 INFO    ] ================================================
[2026-06-12 08:22:22,328.328 INFO    ] Launching Daemon at Fri Jun 12 08:22:22 IST 2026
[2026-06-12 08:22:22,339.339 INFO    ] ================================================
[2026-06-12 08:22:22,725.725 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 08:22:22
[2026-06-12 08:22:23,063.063 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 08:22:23,214.214 INFO    ] Initializing speech engine...
[2026-06-12 08:22:23,220.220 INFO    ] 2026-06-12 08:22:23
[2026-06-12 08:22:23,427.427 INFO    ] 2026-06-12 08:22:23
[2026-06-12 08:22:23,456.456 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 08:22:23,640.640 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 08:22:23,649.649 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 08:22:23,799.799 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 08:22:23,848.848 INFO    ] time= 12/06/2026 08:22:23
[2026-06-12 08:22:23,874.874 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 08:22:23,876.876 INFO    ] Checking for existing commands in stream...
[2026-06-12 08:22:23,967.967 INFO    ] No existing commands found in stream
[2026-06-12 08:22:28,991.991 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 08:22:28,994.994 INFO    ] Waiting 2.47 seconds before fallback handling...
[2026-06-12 08:22:31,766.766 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 08:22:31,768.768 INFO    ] Checking for system updates...
[2026-06-12 08:22:31,792.792 INFO    ] 200
[2026-06-12 08:22:31,794.794 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:22:31,837.837 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 08:22:31,839.839 INFO    ] No update needed
[2026-06-12 08:22:31,841.841 INFO    ] Checking for camera pi updates...
[2026-06-12 08:22:31,863.863 INFO    ] 200
[2026-06-12 08:22:31,865.865 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:22:31,892.892 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 08:22:31,922.922 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 08:22:31,924.924 INFO    ] No camera update needed
[2026-06-12 08:22:31,926.926 INFO    ] Script finished. Safe exiting...
[2026-06-12 08:22:31,927.927 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 08:22:31,931.931 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 08:22:31,935.935 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 08:22:33,975.975 INFO    ] ================================================
[2026-06-12 08:22:33,990.990 INFO    ] Launching Daemon at Fri Jun 12 08:22:33 IST 2026
[2026-06-12 08:22:34,011.011 INFO    ] ================================================
[2026-06-12 08:22:34,340.340 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 08:22:34
[2026-06-12 08:22:34,655.655 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 08:22:34,799.799 INFO    ] Initializing speech engine...
[2026-06-12 08:22:34,804.804 INFO    ] 2026-06-12 08:22:34
[2026-06-12 08:22:35,008.008 INFO    ] 2026-06-12 08:22:34
[2026-06-12 08:22:35,035.035 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 08:22:35,218.218 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 08:22:35,227.227 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 08:22:35,356.356 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 08:22:35,416.416 INFO    ] time= 12/06/2026 08:22:35
[2026-06-12 08:22:35,448.448 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 08:22:35,454.454 INFO    ] Checking for existing commands in stream...
[2026-06-12 08:22:35,521.521 INFO    ] No existing commands found in stream
[2026-06-12 08:22:40,535.535 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 08:22:40,538.538 INFO    ] Waiting 2.51 seconds before fallback handling...
[2026-06-12 08:22:43,499.499 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 08:22:43,501.501 INFO    ] Checking for system updates...
[2026-06-12 08:22:43,522.522 INFO    ] 200
[2026-06-12 08:22:43,524.524 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:22:43,554.554 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 08:22:43,556.556 INFO    ] No update needed
[2026-06-12 08:22:43,557.557 INFO    ] Checking for camera pi updates...
[2026-06-12 08:22:43,577.577 INFO    ] 200
[2026-06-12 08:22:43,578.578 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:22:43,603.603 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 08:22:43,625.625 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 08:22:43,626.626 INFO    ] No camera update needed
[2026-06-12 08:22:43,628.628 INFO    ] Script finished. Safe exiting...
[2026-06-12 08:22:43,629.629 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 08:22:43,632.632 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 08:22:43,635.635 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 08:22:45,675.675 INFO    ] ================================================
[2026-06-12 08:22:45,691.691 INFO    ] Launching Daemon at Fri Jun 12 08:22:45 IST 2026
[2026-06-12 08:22:45,701.701 INFO    ] ================================================
[2026-06-12 08:22:46,061.061 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 08:22:46
[2026-06-12 08:22:46,376.376 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 08:22:46,519.519 INFO    ] Initializing speech engine...
[2026-06-12 08:22:46,524.524 INFO    ] 2026-06-12 08:22:46
[2026-06-12 08:22:46,729.729 INFO    ] 2026-06-12 08:22:46
[2026-06-12 08:22:46,759.759 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 08:22:46,945.945 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 08:22:46,948.948 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 08:22:47,086.086 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 08:22:47,150.150 INFO    ] time= 12/06/2026 08:22:47
[2026-06-12 08:22:47,179.179 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 08:22:47,185.185 INFO    ] Checking for existing commands in stream...
[2026-06-12 08:22:47,253.253 INFO    ] No existing commands found in stream
[2026-06-12 08:22:52,267.267 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 08:22:52,270.270 INFO    ] Waiting 2.91 seconds before fallback handling...
[2026-06-12 08:22:55,624.624 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 08:22:55,626.626 INFO    ] Checking for system updates...
[2026-06-12 08:22:55,647.647 INFO    ] 200
[2026-06-12 08:22:55,648.648 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:22:55,681.681 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 08:22:55,682.682 INFO    ] No update needed
[2026-06-12 08:22:55,684.684 INFO    ] Checking for camera pi updates...
[2026-06-12 08:22:55,703.703 INFO    ] 200
[2026-06-12 08:22:55,704.704 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:22:55,728.728 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 08:22:55,864.864 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 08:22:55,866.866 INFO    ] No camera update needed
[2026-06-12 08:22:55,867.867 INFO    ] Script finished. Safe exiting...
[2026-06-12 08:22:55,868.868 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 08:22:55,871.871 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 08:22:55,874.874 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 08:22:57,913.913 INFO    ] ================================================
[2026-06-12 08:22:57,928.928 INFO    ] Launching Daemon at Fri Jun 12 08:22:57 IST 2026
[2026-06-12 08:22:57,939.939 INFO    ] ================================================
[2026-06-12 08:22:58,274.274 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 08:22:58
[2026-06-12 08:22:58,597.597 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 08:22:58,732.732 INFO    ] Initializing speech engine...
[2026-06-12 08:22:58,736.736 INFO    ] 2026-06-12 08:22:58
[2026-06-12 08:22:58,968.968 INFO    ] 2026-06-12 08:22:58
[2026-06-12 08:22:58,998.998 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 08:22:59,284.284 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 08:22:59,338.338 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 08:22:59,519.519 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 08:22:59,523.523 INFO    ] time= 12/06/2026 08:22:59
[2026-06-12 08:22:59,525.525 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 08:22:59,553.553 INFO    ] Checking for existing commands in stream...
[2026-06-12 08:22:59,657.657 INFO    ] No existing commands found in stream
[2026-06-12 08:23:04,667.667 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 08:23:04,670.670 INFO    ] Waiting 0.23 seconds before fallback handling...
[2026-06-12 08:23:05,267.267 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 08:23:05,269.269 INFO    ] Checking for system updates...
[2026-06-12 08:23:05,290.290 INFO    ] 200
[2026-06-12 08:23:05,291.291 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:23:05,322.322 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 08:23:05,324.324 INFO    ] No update needed
[2026-06-12 08:23:05,325.325 INFO    ] Checking for camera pi updates...
[2026-06-12 08:23:05,345.345 INFO    ] 200
[2026-06-12 08:23:05,346.346 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:23:05,372.372 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 08:23:05,418.418 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 08:23:05,420.420 INFO    ] No camera update needed
[2026-06-12 08:23:05,421.421 INFO    ] Script finished. Safe exiting...
[2026-06-12 08:23:05,423.423 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 08:23:05,426.426 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 08:23:05,429.429 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 08:23:07,469.469 INFO    ] ================================================
[2026-06-12 08:23:07,485.485 INFO    ] Launching Daemon at Fri Jun 12 08:23:07 IST 2026
[2026-06-12 08:23:07,496.496 INFO    ] ================================================
[2026-06-12 08:23:07,833.833 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 08:23:07
[2026-06-12 08:23:08,145.145 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 08:23:08,278.278 INFO    ] Initializing speech engine...
[2026-06-12 08:23:08,282.282 INFO    ] 2026-06-12 08:23:08
[2026-06-12 08:23:08,512.512 INFO    ] 2026-06-12 08:23:08
[2026-06-12 08:23:08,542.542 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 08:23:08,739.739 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 08:23:08,743.743 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 08:23:08,883.883 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 08:23:08,934.934 INFO    ] time= 12/06/2026 08:23:08
[2026-06-12 08:23:08,979.979 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 08:23:08,991.991 INFO    ] Checking for existing commands in stream...
[2026-06-12 08:23:09,066.066 INFO    ] No existing commands found in stream
[2026-06-12 08:23:14,077.077 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 08:23:14,079.079 INFO    ] Waiting 1.46 seconds before fallback handling...
[2026-06-12 08:23:15,903.903 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 08:23:15,904.904 INFO    ] Checking for system updates...
[2026-06-12 08:23:15,925.925 INFO    ] 200
[2026-06-12 08:23:15,927.927 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:23:15,957.957 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 08:23:15,958.958 INFO    ] No update needed
[2026-06-12 08:23:15,959.959 INFO    ] Checking for camera pi updates...
[2026-06-12 08:23:15,979.979 INFO    ] 200
[2026-06-12 08:23:15,980.980 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:23:16,005.005 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 08:23:16,044.044 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 08:23:16,045.045 INFO    ] No camera update needed
[2026-06-12 08:23:16,047.047 INFO    ] Script finished. Safe exiting...
[2026-06-12 08:23:16,048.048 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 08:23:16,051.051 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 08:23:16,054.054 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 08:23:18,093.093 INFO    ] ================================================
[2026-06-12 08:23:18,108.108 INFO    ] Launching Daemon at Fri Jun 12 08:23:18 IST 2026
[2026-06-12 08:23:18,119.119 INFO    ] ================================================
[2026-06-12 08:23:18,485.485 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 08:23:18
[2026-06-12 08:23:18,804.804 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 08:23:18,948.948 INFO    ] Initializing speech engine...
[2026-06-12 08:23:18,953.953 INFO    ] 2026-06-12 08:23:18
[2026-06-12 08:23:19,157.157 INFO    ] 2026-06-12 08:23:19
[2026-06-12 08:23:19,187.187 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 08:23:19,518.518 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 08:23:19,571.571 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 08:23:19,717.717 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 08:23:19,720.720 INFO    ] time= 12/06/2026 08:23:19
[2026-06-12 08:23:19,722.722 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 08:23:19,725.725 INFO    ] Checking for existing commands in stream...
[2026-06-12 08:23:19,789.789 INFO    ] No existing commands found in stream
[2026-06-12 08:23:24,798.798 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 08:23:24,800.800 INFO    ] Waiting 3.08 seconds before fallback handling...
[2026-06-12 08:23:28,256.256 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 08:23:28,257.257 INFO    ] Checking for system updates...
[2026-06-12 08:23:28,278.278 INFO    ] 200
[2026-06-12 08:23:28,279.279 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:23:28,312.312 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 08:23:28,314.314 INFO    ] No update needed
[2026-06-12 08:23:28,315.315 INFO    ] Checking for camera pi updates...
[2026-06-12 08:23:28,334.334 INFO    ] 200
[2026-06-12 08:23:28,336.336 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:23:28,361.361 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 08:23:28,397.397 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 08:23:28,398.398 INFO    ] No camera update needed
[2026-06-12 08:23:28,400.400 INFO    ] Script finished. Safe exiting...
[2026-06-12 08:23:28,401.401 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 08:23:28,405.405 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 08:23:28,408.408 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 08:23:30,449.449 INFO    ] ================================================
[2026-06-12 08:23:30,464.464 INFO    ] Launching Daemon at Fri Jun 12 08:23:30 IST 2026
[2026-06-12 08:23:30,475.475 INFO    ] ================================================
[2026-06-12 08:23:30,856.856 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 08:23:30
[2026-06-12 08:23:31,196.196 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 08:23:31,348.348 INFO    ] Initializing speech engine...
[2026-06-12 08:23:31,354.354 INFO    ] 2026-06-12 08:23:31
[2026-06-12 08:23:31,570.570 INFO    ] 2026-06-12 08:23:31
[2026-06-12 08:23:31,602.602 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 08:23:31,797.797 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 08:23:31,808.808 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 08:23:31,957.957 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 08:23:32,041.041 INFO    ] time= 12/06/2026 08:23:31
[2026-06-12 08:23:32,053.053 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 08:23:32,056.056 INFO    ] Checking for existing commands in stream...
[2026-06-12 08:23:32,149.149 INFO    ] No existing commands found in stream
[2026-06-12 08:23:37,164.164 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 08:23:37,167.167 INFO    ] Waiting 0.25 seconds before fallback handling...
[2026-06-12 08:23:37,765.765 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 08:23:37,766.766 INFO    ] Checking for system updates...
[2026-06-12 08:23:37,789.789 INFO    ] 200
[2026-06-12 08:23:37,791.791 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:23:37,822.822 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 08:23:37,823.823 INFO    ] No update needed
[2026-06-12 08:23:37,825.825 INFO    ] Checking for camera pi updates...
[2026-06-12 08:23:37,845.845 INFO    ] 200
[2026-06-12 08:23:37,846.846 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:23:37,870.870 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 08:23:37,911.911 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 08:23:37,912.912 INFO    ] No camera update needed
[2026-06-12 08:23:37,914.914 INFO    ] Script finished. Safe exiting...
[2026-06-12 08:23:37,915.915 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 08:23:37,919.919 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 08:23:37,922.922 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 08:23:39,960.960 INFO    ] ================================================
[2026-06-12 08:23:39,975.975 INFO    ] Launching Daemon at Fri Jun 12 08:23:39 IST 2026
[2026-06-12 08:23:39,987.987 INFO    ] ================================================
[2026-06-12 08:23:40,329.329 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 08:23:40
[2026-06-12 08:23:40,640.640 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 08:23:40,773.773 INFO    ] Initializing speech engine...
[2026-06-12 08:23:40,778.778 INFO    ] 2026-06-12 08:23:40
[2026-06-12 08:23:40,989.989 INFO    ] 2026-06-12 08:23:40
[2026-06-12 08:23:41,018.018 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 08:23:41,176.176 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 08:23:41,215.215 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 08:23:41,389.389 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 08:23:41,422.422 INFO    ] time= 12/06/2026 08:23:41
[2026-06-12 08:23:41,473.473 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 08:23:41,500.500 INFO    ] Checking for existing commands in stream...
[2026-06-12 08:23:41,579.579 INFO    ] No existing commands found in stream
[2026-06-12 08:23:46,588.588 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 08:23:46,595.595 INFO    ] Waiting 1.02 seconds before fallback handling...
[2026-06-12 08:23:47,985.985 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 08:23:47,987.987 INFO    ] Checking for system updates...
[2026-06-12 08:23:48,008.008 INFO    ] 200
[2026-06-12 08:23:48,009.009 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:23:48,040.040 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 08:23:48,041.041 INFO    ] No update needed
[2026-06-12 08:23:48,043.043 INFO    ] Checking for camera pi updates...
[2026-06-12 08:23:48,065.065 INFO    ] 200
[2026-06-12 08:23:48,066.066 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:23:48,091.091 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 08:23:48,127.127 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 08:23:48,129.129 INFO    ] No camera update needed
[2026-06-12 08:23:48,130.130 INFO    ] Script finished. Safe exiting...
[2026-06-12 08:23:48,132.132 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 08:23:48,135.135 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 08:23:48,138.138 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 08:23:50,177.177 INFO    ] ================================================
[2026-06-12 08:23:50,193.193 INFO    ] Launching Daemon at Fri Jun 12 08:23:50 IST 2026
[2026-06-12 08:23:50,203.203 INFO    ] ================================================
[2026-06-12 08:23:50,577.577 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 08:23:50
[2026-06-12 08:23:50,919.919 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 08:23:51,073.073 INFO    ] Initializing speech engine...
[2026-06-12 08:23:51,078.078 INFO    ] 2026-06-12 08:23:51
[2026-06-12 08:23:51,285.285 INFO    ] 2026-06-12 08:23:51
[2026-06-12 08:23:51,315.315 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 08:23:51,498.498 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 08:23:51,508.508 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 08:23:51,637.637 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 08:23:51,704.704 INFO    ] time= 12/06/2026 08:23:51
[2026-06-12 08:23:51,727.727 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 08:23:51,734.734 INFO    ] Checking for existing commands in stream...
[2026-06-12 08:23:51,824.824 INFO    ] No existing commands found in stream
[2026-06-12 08:23:56,838.838 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 08:23:56,842.842 INFO    ] Waiting 3.60 seconds before fallback handling...
[2026-06-12 08:24:00,826.826 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 08:24:00,828.828 INFO    ] Checking for system updates...
[2026-06-12 08:24:00,849.849 INFO    ] 200
[2026-06-12 08:24:00,850.850 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:24:00,885.885 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 08:24:00,886.886 INFO    ] No update needed
[2026-06-12 08:24:00,888.888 INFO    ] Checking for camera pi updates...
[2026-06-12 08:24:00,909.909 INFO    ] 200
[2026-06-12 08:24:00,911.911 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:24:00,934.934 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 08:24:00,971.971 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 08:24:00,972.972 INFO    ] No camera update needed
[2026-06-12 08:24:00,974.974 INFO    ] Script finished. Safe exiting...
[2026-06-12 08:24:00,975.975 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 08:24:00,978.978 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 08:24:00,981.981 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 08:24:03,006.006 INFO    ] ================================================
[2026-06-12 08:24:03,015.015 INFO    ] Launching Daemon at Fri Jun 12 08:24:03 IST 2026
[2026-06-12 08:24:03,021.021 INFO    ] ================================================
[2026-06-12 08:24:03,378.378 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 08:24:03
[2026-06-12 08:24:03,696.696 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 08:24:03,840.840 INFO    ] Initializing speech engine...
[2026-06-12 08:24:03,845.845 INFO    ] 2026-06-12 08:24:03
[2026-06-12 08:24:04,048.048 INFO    ] 2026-06-12 08:24:04
[2026-06-12 08:24:04,076.076 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 08:24:04,198.198 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 08:24:04,261.261 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 08:24:04,398.398 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 08:24:04,464.464 INFO    ] time= 12/06/2026 08:24:04
[2026-06-12 08:24:04,489.489 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 08:24:04,495.495 INFO    ] Checking for existing commands in stream...
[2026-06-12 08:24:04,562.562 INFO    ] No existing commands found in stream
[2026-06-12 08:24:09,571.571 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 08:24:09,573.573 INFO    ] Waiting 1.61 seconds before fallback handling...
[2026-06-12 08:24:11,571.571 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 08:24:11,572.572 INFO    ] Checking for system updates...
[2026-06-12 08:24:11,593.593 INFO    ] 200
[2026-06-12 08:24:11,594.594 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:24:11,625.625 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 08:24:11,627.627 INFO    ] No update needed
[2026-06-12 08:24:11,628.628 INFO    ] Checking for camera pi updates...
[2026-06-12 08:24:11,648.648 INFO    ] 200
[2026-06-12 08:24:11,649.649 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:24:11,674.674 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 08:24:11,714.714 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 08:24:11,715.715 INFO    ] No camera update needed
[2026-06-12 08:24:11,716.716 INFO    ] Script finished. Safe exiting...
[2026-06-12 08:24:11,718.718 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 08:24:11,721.721 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 08:24:11,724.724 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 08:24:13,761.761 INFO    ] ================================================
[2026-06-12 08:24:13,776.776 INFO    ] Launching Daemon at Fri Jun 12 08:24:13 IST 2026
[2026-06-12 08:24:13,787.787 INFO    ] ================================================
[2026-06-12 08:24:14,120.120 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 08:24:14
[2026-06-12 08:24:14,430.430 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 08:24:14,570.570 INFO    ] Initializing speech engine...
[2026-06-12 08:24:14,578.578 INFO    ] 2026-06-12 08:24:14
[2026-06-12 08:24:14,797.797 INFO    ] 2026-06-12 08:24:14
[2026-06-12 08:24:14,828.828 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 08:24:15,017.017 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 08:24:15,028.028 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 08:24:15,175.175 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 08:24:15,229.229 INFO    ] time= 12/06/2026 08:24:15
[2026-06-12 08:24:15,253.253 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 08:24:15,259.259 INFO    ] Checking for existing commands in stream...
[2026-06-12 08:24:15,328.328 INFO    ] No existing commands found in stream
[2026-06-12 08:24:20,353.353 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 08:24:20,356.356 INFO    ] Waiting 3.79 seconds before fallback handling...
[2026-06-12 08:24:24,535.535 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 08:24:24,537.537 INFO    ] Checking for system updates...
[2026-06-12 08:24:24,558.558 INFO    ] 200
[2026-06-12 08:24:24,559.559 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:24:24,590.590 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 08:24:24,592.592 INFO    ] No update needed
[2026-06-12 08:24:24,594.594 INFO    ] Checking for camera pi updates...
[2026-06-12 08:24:24,616.616 INFO    ] 200
[2026-06-12 08:24:24,617.617 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:24:24,654.654 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 08:24:24,703.703 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 08:24:24,704.704 INFO    ] No camera update needed
[2026-06-12 08:24:24,706.706 INFO    ] Script finished. Safe exiting...
[2026-06-12 08:24:24,707.707 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 08:24:24,711.711 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 08:24:24,714.714 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 08:24:26,753.753 INFO    ] ================================================
[2026-06-12 08:24:26,769.769 INFO    ] Launching Daemon at Fri Jun 12 08:24:26 IST 2026
[2026-06-12 08:24:26,779.779 INFO    ] ================================================
[2026-06-12 08:24:27,135.135 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 08:24:27
[2026-06-12 08:24:27,447.447 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 08:24:27,577.577 INFO    ] Initializing speech engine...
[2026-06-12 08:24:27,582.582 INFO    ] 2026-06-12 08:24:27
[2026-06-12 08:24:27,801.801 INFO    ] 2026-06-12 08:24:27
[2026-06-12 08:24:27,829.829 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 08:24:28,015.015 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 08:24:28,024.024 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 08:24:28,156.156 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 08:24:28,223.223 INFO    ] time= 12/06/2026 08:24:28
[2026-06-12 08:24:28,248.248 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 08:24:28,254.254 INFO    ] Checking for existing commands in stream...
[2026-06-12 08:24:28,321.321 INFO    ] No existing commands found in stream
[2026-06-12 08:24:33,330.330 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 08:24:33,333.333 INFO    ] Waiting 1.03 seconds before fallback handling...
[2026-06-12 08:24:34,711.711 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 08:24:34,712.712 INFO    ] Checking for system updates...
[2026-06-12 08:24:34,733.733 INFO    ] 200
[2026-06-12 08:24:34,734.734 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:24:34,764.764 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 08:24:34,765.765 INFO    ] No update needed
[2026-06-12 08:24:34,767.767 INFO    ] Checking for camera pi updates...
[2026-06-12 08:24:34,786.786 INFO    ] 200
[2026-06-12 08:24:34,787.787 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:24:34,811.811 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 08:24:34,850.850 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 08:24:34,851.851 INFO    ] No camera update needed
[2026-06-12 08:24:34,853.853 INFO    ] Script finished. Safe exiting...
[2026-06-12 08:24:34,854.854 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 08:24:34,857.857 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 08:24:34,859.859 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 08:24:36,902.902 INFO    ] ================================================
[2026-06-12 08:24:36,917.917 INFO    ] Launching Daemon at Fri Jun 12 08:24:36 IST 2026
[2026-06-12 08:24:36,928.928 INFO    ] ================================================
[2026-06-12 08:24:37,268.268 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 08:24:37
[2026-06-12 08:24:37,585.585 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 08:24:37,729.729 INFO    ] Initializing speech engine...
[2026-06-12 08:24:37,734.734 INFO    ] 2026-06-12 08:24:37
[2026-06-12 08:24:37,937.937 INFO    ] 2026-06-12 08:24:37
[2026-06-12 08:24:37,966.966 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 08:24:38,150.150 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 08:24:38,160.160 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 08:24:38,286.286 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 08:24:38,354.354 INFO    ] time= 12/06/2026 08:24:38
[2026-06-12 08:24:38,381.381 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 08:24:38,388.388 INFO    ] Checking for existing commands in stream...
[2026-06-12 08:24:38,454.454 INFO    ] No existing commands found in stream
[2026-06-12 08:24:43,468.468 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 08:24:43,471.471 INFO    ] Waiting 3.60 seconds before fallback handling...
[2026-06-12 08:24:47,438.438 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 08:24:47,440.440 INFO    ] Checking for system updates...
[2026-06-12 08:24:47,461.461 INFO    ] 200
[2026-06-12 08:24:47,462.462 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:24:47,493.493 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 08:24:47,494.494 INFO    ] No update needed
[2026-06-12 08:24:47,495.495 INFO    ] Checking for camera pi updates...
[2026-06-12 08:24:47,514.514 INFO    ] 200
[2026-06-12 08:24:47,516.516 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:24:47,541.541 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 08:24:47,581.581 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 08:24:47,583.583 INFO    ] No camera update needed
[2026-06-12 08:24:47,584.584 INFO    ] Script finished. Safe exiting...
[2026-06-12 08:24:47,585.585 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 08:24:47,588.588 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 08:24:47,591.591 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 08:24:49,629.629 INFO    ] ================================================
[2026-06-12 08:24:49,645.645 INFO    ] Launching Daemon at Fri Jun 12 08:24:49 IST 2026
[2026-06-12 08:24:49,656.656 INFO    ] ================================================
[2026-06-12 08:24:49,998.998 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 08:24:49
[2026-06-12 08:24:50,315.315 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 08:24:50,457.457 INFO    ] Initializing speech engine...
[2026-06-12 08:24:50,466.466 INFO    ] 2026-06-12 08:24:50
[2026-06-12 08:24:50,686.686 INFO    ] 2026-06-12 08:24:50
[2026-06-12 08:24:50,718.718 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 08:24:50,915.915 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 08:24:50,921.921 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 08:24:51,062.062 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 08:24:51,113.113 INFO    ] time= 12/06/2026 08:24:51
[2026-06-12 08:24:51,159.159 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 08:24:51,170.170 INFO    ] Checking for existing commands in stream...
[2026-06-12 08:24:51,273.273 INFO    ] No existing commands found in stream
[2026-06-12 08:24:56,282.282 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 08:24:56,285.285 INFO    ] Waiting 1.41 seconds before fallback handling...
[2026-06-12 08:24:58,051.051 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 08:24:58,053.053 INFO    ] Checking for system updates...
[2026-06-12 08:24:58,073.073 INFO    ] 200
[2026-06-12 08:24:58,078.078 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:24:58,108.108 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 08:24:58,109.109 INFO    ] No update needed
[2026-06-12 08:24:58,111.111 INFO    ] Checking for camera pi updates...
[2026-06-12 08:24:58,145.145 INFO    ] 200
[2026-06-12 08:24:58,146.146 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:24:58,171.171 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 08:24:58,312.312 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 08:24:58,314.314 INFO    ] No camera update needed
[2026-06-12 08:24:58,315.315 INFO    ] Script finished. Safe exiting...
[2026-06-12 08:24:58,316.316 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 08:24:58,319.319 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 08:24:58,322.322 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 08:25:00,362.362 INFO    ] ================================================
[2026-06-12 08:25:00,377.377 INFO    ] Launching Daemon at Fri Jun 12 08:25:00 IST 2026
[2026-06-12 08:25:00,388.388 INFO    ] ================================================
[2026-06-12 08:25:00,751.751 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 08:25:00
[2026-06-12 08:25:01,094.094 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 08:25:01,241.241 INFO    ] Initializing speech engine...
[2026-06-12 08:25:01,252.252 INFO    ] 2026-06-12 08:25:01
[2026-06-12 08:25:01,461.461 INFO    ] 2026-06-12 08:25:01
[2026-06-12 08:25:01,489.489 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 08:25:01,675.675 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 08:25:01,684.684 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 08:25:01,834.834 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 08:25:01,839.839 INFO    ] time= 12/06/2026 08:25:01
[2026-06-12 08:25:01,858.858 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 08:25:01,861.861 INFO    ] Checking for existing commands in stream...
[2026-06-12 08:25:01,969.969 INFO    ] No existing commands found in stream
[2026-06-12 08:25:06,985.985 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 08:25:06,988.988 INFO    ] Waiting 3.34 seconds before fallback handling...
[2026-06-12 08:25:10,683.683 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 08:25:10,684.684 INFO    ] Checking for system updates...
[2026-06-12 08:25:10,705.705 INFO    ] 200
[2026-06-12 08:25:10,706.706 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:25:10,739.739 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 08:25:10,741.741 INFO    ] No update needed
[2026-06-12 08:25:10,742.742 INFO    ] Checking for camera pi updates...
[2026-06-12 08:25:10,763.763 INFO    ] 200
[2026-06-12 08:25:10,764.764 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:25:10,787.787 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 08:25:10,827.827 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 08:25:10,828.828 INFO    ] No camera update needed
[2026-06-12 08:25:10,830.830 INFO    ] Script finished. Safe exiting...
[2026-06-12 08:25:10,831.831 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 08:25:10,834.834 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 08:25:10,837.837 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 08:25:12,875.875 INFO    ] ================================================
[2026-06-12 08:25:12,891.891 INFO    ] Launching Daemon at Fri Jun 12 08:25:12 IST 2026
[2026-06-12 08:25:12,902.902 INFO    ] ================================================
[2026-06-12 08:25:13,246.246 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 08:25:13
[2026-06-12 08:25:13,560.560 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 08:25:13,693.693 INFO    ] Initializing speech engine...
[2026-06-12 08:25:13,698.698 INFO    ] 2026-06-12 08:25:13
[2026-06-12 08:25:13,901.901 INFO    ] 2026-06-12 08:25:13
[2026-06-12 08:25:13,935.935 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 08:25:14,094.094 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 08:25:14,137.137 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 08:25:14,305.305 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 08:25:14,353.353 INFO    ] time= 12/06/2026 08:25:14
[2026-06-12 08:25:14,391.391 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 08:25:14,415.415 INFO    ] Checking for existing commands in stream...
[2026-06-12 08:25:14,493.493 INFO    ] No existing commands found in stream
[2026-06-12 08:25:19,502.502 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 08:25:19,505.505 INFO    ] Waiting 2.46 seconds before fallback handling...
[2026-06-12 08:25:22,338.338 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 08:25:22,339.339 INFO    ] Checking for system updates...
[2026-06-12 08:25:22,360.360 INFO    ] 200
[2026-06-12 08:25:22,362.362 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:25:22,395.395 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 08:25:22,396.396 INFO    ] No update needed
[2026-06-12 08:25:22,398.398 INFO    ] Checking for camera pi updates...
[2026-06-12 08:25:22,420.420 INFO    ] 200
[2026-06-12 08:25:22,422.422 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:25:22,445.445 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 08:25:22,485.485 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 08:25:22,486.486 INFO    ] No camera update needed
[2026-06-12 08:25:22,488.488 INFO    ] Script finished. Safe exiting...
[2026-06-12 08:25:22,489.489 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 08:25:22,492.492 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 08:25:22,495.495 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 08:25:24,534.534 INFO    ] ================================================
[2026-06-12 08:25:24,550.550 INFO    ] Launching Daemon at Fri Jun 12 08:25:24 IST 2026
[2026-06-12 08:25:24,560.560 INFO    ] ================================================
[2026-06-12 08:25:24,928.928 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 08:25:24
[2026-06-12 08:25:25,273.273 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 08:25:25,426.426 INFO    ] Initializing speech engine...
[2026-06-12 08:25:25,432.432 INFO    ] 2026-06-12 08:25:25
[2026-06-12 08:25:25,646.646 INFO    ] 2026-06-12 08:25:25
[2026-06-12 08:25:25,676.676 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 08:25:25,865.865 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 08:25:25,875.875 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 08:25:26,022.022 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 08:25:26,076.076 INFO    ] time= 12/06/2026 08:25:26
[2026-06-12 08:25:26,098.098 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 08:25:26,105.105 INFO    ] Checking for existing commands in stream...
[2026-06-12 08:25:26,173.173 INFO    ] No existing commands found in stream
[2026-06-12 08:25:31,188.188 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 08:25:31,191.191 INFO    ] Waiting 1.57 seconds before fallback handling...
[2026-06-12 08:25:33,121.121 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 08:25:33,123.123 INFO    ] Checking for system updates...
[2026-06-12 08:25:33,146.146 INFO    ] 200
[2026-06-12 08:25:33,147.147 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:25:33,180.180 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 08:25:33,182.182 INFO    ] No update needed
[2026-06-12 08:25:33,183.183 INFO    ] Checking for camera pi updates...
[2026-06-12 08:25:33,203.203 INFO    ] 200
[2026-06-12 08:25:33,205.205 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:25:33,230.230 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 08:25:33,251.251 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 08:25:33,253.253 INFO    ] No camera update needed
[2026-06-12 08:25:33,254.254 INFO    ] Script finished. Safe exiting...
[2026-06-12 08:25:33,255.255 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 08:25:33,258.258 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 08:25:33,261.261 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 08:25:35,301.301 INFO    ] ================================================
[2026-06-12 08:25:35,316.316 INFO    ] Launching Daemon at Fri Jun 12 08:25:35 IST 2026
[2026-06-12 08:25:35,327.327 INFO    ] ================================================
[2026-06-12 08:25:35,712.712 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 08:25:35
[2026-06-12 08:25:36,055.055 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 08:25:36,209.209 INFO    ] Initializing speech engine...
[2026-06-12 08:25:36,214.214 INFO    ] 2026-06-12 08:25:36
[2026-06-12 08:25:36,420.420 INFO    ] 2026-06-12 08:25:36
[2026-06-12 08:25:36,450.450 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 08:25:36,634.634 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 08:25:36,644.644 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 08:25:36,803.803 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 08:25:36,842.842 INFO    ] time= 12/06/2026 08:25:36
[2026-06-12 08:25:36,863.863 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 08:25:36,870.870 INFO    ] Checking for existing commands in stream...
[2026-06-12 08:25:36,960.960 INFO    ] No existing commands found in stream
[2026-06-12 08:25:41,969.969 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 08:25:41,973.973 INFO    ] Waiting 3.17 seconds before fallback handling...
[2026-06-12 08:25:45,536.536 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 08:25:45,537.537 INFO    ] Checking for system updates...
[2026-06-12 08:25:45,559.559 INFO    ] 200
[2026-06-12 08:25:45,560.560 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:25:45,591.591 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 08:25:45,593.593 INFO    ] No update needed
[2026-06-12 08:25:45,594.594 INFO    ] Checking for camera pi updates...
[2026-06-12 08:25:45,615.615 INFO    ] 200
[2026-06-12 08:25:45,617.617 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:25:45,644.644 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 08:25:45,682.682 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 08:25:45,683.683 INFO    ] No camera update needed
[2026-06-12 08:25:45,685.685 INFO    ] Script finished. Safe exiting...
[2026-06-12 08:25:45,686.686 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 08:25:45,689.689 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 08:25:45,692.692 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 08:25:47,733.733 INFO    ] ================================================
[2026-06-12 08:25:47,748.748 INFO    ] Launching Daemon at Fri Jun 12 08:25:47 IST 2026
[2026-06-12 08:25:47,759.759 INFO    ] ================================================
[2026-06-12 08:25:48,128.128 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 08:25:48
[2026-06-12 08:25:48,446.446 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 08:25:48,585.585 INFO    ] Initializing speech engine...
[2026-06-12 08:25:48,595.595 INFO    ] 2026-06-12 08:25:48
[2026-06-12 08:25:48,798.798 INFO    ] 2026-06-12 08:25:48
[2026-06-12 08:25:48,826.826 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 08:25:49,009.009 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 08:25:49,018.018 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 08:25:49,147.147 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 08:25:49,206.206 INFO    ] time= 12/06/2026 08:25:49
[2026-06-12 08:25:49,237.237 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 08:25:49,243.243 INFO    ] Checking for existing commands in stream...
[2026-06-12 08:25:49,333.333 INFO    ] No existing commands found in stream
[2026-06-12 08:25:54,347.347 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 08:25:54,350.350 INFO    ] Waiting 0.33 seconds before fallback handling...
[2026-06-12 08:25:55,064.064 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 08:25:55,066.066 INFO    ] Checking for system updates...
[2026-06-12 08:25:55,086.086 INFO    ] 200
[2026-06-12 08:25:55,087.087 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:25:55,118.118 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 08:25:55,119.119 INFO    ] No update needed
[2026-06-12 08:25:55,121.121 INFO    ] Checking for camera pi updates...
[2026-06-12 08:25:55,141.141 INFO    ] 200
[2026-06-12 08:25:55,142.142 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:25:55,165.165 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 08:25:55,201.201 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 08:25:55,203.203 INFO    ] No camera update needed
[2026-06-12 08:25:55,204.204 INFO    ] Script finished. Safe exiting...
[2026-06-12 08:25:55,205.205 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 08:25:55,208.208 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 08:25:55,211.211 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 08:25:57,252.252 INFO    ] ================================================
[2026-06-12 08:25:57,268.268 INFO    ] Launching Daemon at Fri Jun 12 08:25:57 IST 2026
[2026-06-12 08:25:57,279.279 INFO    ] ================================================
[2026-06-12 08:25:57,636.636 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 08:25:57
[2026-06-12 08:25:57,953.953 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 08:25:58,086.086 INFO    ] Initializing speech engine...
[2026-06-12 08:25:58,090.090 INFO    ] 2026-06-12 08:25:58
[2026-06-12 08:25:58,321.321 INFO    ] 2026-06-12 08:25:58
[2026-06-12 08:25:58,352.352 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 08:25:58,554.554 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 08:25:58,563.563 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 08:25:58,698.698 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 08:25:58,753.753 INFO    ] time= 12/06/2026 08:25:58
[2026-06-12 08:25:58,801.801 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 08:25:58,808.808 INFO    ] Checking for existing commands in stream...
[2026-06-12 08:25:58,884.884 INFO    ] No existing commands found in stream
[2026-06-12 08:26:03,894.894 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 08:26:03,897.897 INFO    ] Waiting 1.21 seconds before fallback handling...
[2026-06-12 08:26:05,446.446 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 08:26:05,448.448 INFO    ] Checking for system updates...
[2026-06-12 08:26:05,468.468 INFO    ] 200
[2026-06-12 08:26:05,470.470 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:26:05,500.500 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 08:26:05,501.501 INFO    ] No update needed
[2026-06-12 08:26:05,503.503 INFO    ] Checking for camera pi updates...
[2026-06-12 08:26:05,523.523 INFO    ] 200
[2026-06-12 08:26:05,525.525 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:26:05,548.548 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 08:26:05,590.590 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 08:26:05,592.592 INFO    ] No camera update needed
[2026-06-12 08:26:05,593.593 INFO    ] Script finished. Safe exiting...
[2026-06-12 08:26:05,594.594 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 08:26:05,597.597 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 08:26:05,600.600 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 08:26:07,638.638 INFO    ] ================================================
[2026-06-12 08:26:07,654.654 INFO    ] Launching Daemon at Fri Jun 12 08:26:07 IST 2026
[2026-06-12 08:26:07,666.666 INFO    ] ================================================
[2026-06-12 08:26:08,052.052 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 08:26:08
[2026-06-12 08:26:08,391.391 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 08:26:08,529.529 INFO    ] Initializing speech engine...
[2026-06-12 08:26:08,537.537 INFO    ] 2026-06-12 08:26:08
[2026-06-12 08:26:08,755.755 INFO    ] 2026-06-12 08:26:08
[2026-06-12 08:26:08,784.784 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 08:26:08,916.916 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 08:26:08,969.969 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 08:26:09,099.099 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 08:26:09,150.150 INFO    ] time= 12/06/2026 08:26:09
[2026-06-12 08:26:09,197.197 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 08:26:09,203.203 INFO    ] Checking for existing commands in stream...
[2026-06-12 08:26:09,270.270 INFO    ] No existing commands found in stream
[2026-06-12 08:26:14,284.284 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 08:26:14,287.287 INFO    ] Waiting 1.67 seconds before fallback handling...
[2026-06-12 08:26:16,355.355 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 08:26:16,356.356 INFO    ] Checking for system updates...
[2026-06-12 08:26:16,378.378 INFO    ] 200
[2026-06-12 08:26:16,379.379 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:26:16,412.412 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 08:26:16,413.413 INFO    ] No update needed
[2026-06-12 08:26:16,414.414 INFO    ] Checking for camera pi updates...
[2026-06-12 08:26:16,435.435 INFO    ] 200
[2026-06-12 08:26:16,437.437 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:26:16,461.461 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 08:26:16,497.497 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 08:26:16,498.498 INFO    ] No camera update needed
[2026-06-12 08:26:16,500.500 INFO    ] Script finished. Safe exiting...
[2026-06-12 08:26:16,501.501 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 08:26:16,504.504 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 08:26:16,507.507 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 08:26:18,547.547 INFO    ] ================================================
[2026-06-12 08:26:18,562.562 INFO    ] Launching Daemon at Fri Jun 12 08:26:18 IST 2026
[2026-06-12 08:26:18,573.573 INFO    ] ================================================
[2026-06-12 08:26:18,906.906 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 08:26:18
[2026-06-12 08:26:19,218.218 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 08:26:19,352.352 INFO    ] Initializing speech engine...
[2026-06-12 08:26:19,360.360 INFO    ] 2026-06-12 08:26:19
[2026-06-12 08:26:19,586.586 INFO    ] 2026-06-12 08:26:19
[2026-06-12 08:26:19,617.617 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 08:26:19,749.749 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 08:26:19,816.816 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 08:26:19,953.953 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 08:26:20,020.020 INFO    ] time= 12/06/2026 08:26:19
[2026-06-12 08:26:20,044.044 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 08:26:20,050.050 INFO    ] Checking for existing commands in stream...
[2026-06-12 08:26:20,117.117 INFO    ] No existing commands found in stream
[2026-06-12 08:26:25,126.126 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 08:26:25,128.128 INFO    ] Waiting 1.14 seconds before fallback handling...
[2026-06-12 08:26:26,641.641 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 08:26:26,642.642 INFO    ] Checking for system updates...
[2026-06-12 08:26:26,663.663 INFO    ] 200
[2026-06-12 08:26:26,664.664 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:26:26,695.695 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 08:26:26,696.696 INFO    ] No update needed
[2026-06-12 08:26:26,697.697 INFO    ] Checking for camera pi updates...
[2026-06-12 08:26:26,718.718 INFO    ] 200
[2026-06-12 08:26:26,719.719 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:26:26,742.742 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 08:26:26,781.781 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 08:26:26,782.782 INFO    ] No camera update needed
[2026-06-12 08:26:26,783.783 INFO    ] Script finished. Safe exiting...
[2026-06-12 08:26:26,785.785 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 08:26:26,789.789 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 08:26:26,792.792 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 08:26:28,831.831 INFO    ] ================================================
[2026-06-12 08:26:28,847.847 INFO    ] Launching Daemon at Fri Jun 12 08:26:28 IST 2026
[2026-06-12 08:26:28,858.858 INFO    ] ================================================
[2026-06-12 08:26:29,213.213 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 08:26:29
[2026-06-12 08:26:29,531.531 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 08:26:29,675.675 INFO    ] Initializing speech engine...
[2026-06-12 08:26:29,682.682 INFO    ] 2026-06-12 08:26:29
[2026-06-12 08:26:29,883.883 INFO    ] 2026-06-12 08:26:29
[2026-06-12 08:26:29,912.912 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 08:26:30,097.097 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 08:26:30,106.106 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 08:26:30,234.234 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 08:26:30,293.293 INFO    ] time= 12/06/2026 08:26:30
[2026-06-12 08:26:30,325.325 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 08:26:30,327.327 INFO    ] Checking for existing commands in stream...
[2026-06-12 08:26:30,398.398 INFO    ] No existing commands found in stream
[2026-06-12 08:26:35,407.407 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 08:26:35,410.410 INFO    ] Waiting 1.71 seconds before fallback handling...
[2026-06-12 08:26:37,519.519 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 08:26:37,522.522 INFO    ] Checking for system updates...
[2026-06-12 08:26:37,562.562 INFO    ] 200
[2026-06-12 08:26:37,565.565 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:26:37,621.621 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 08:26:37,624.624 INFO    ] No update needed
[2026-06-12 08:26:37,626.626 INFO    ] Checking for camera pi updates...
[2026-06-12 08:26:37,654.654 INFO    ] 200
[2026-06-12 08:26:37,655.655 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:26:37,683.683 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 08:26:37,718.718 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 08:26:37,719.719 INFO    ] No camera update needed
[2026-06-12 08:26:37,721.721 INFO    ] Script finished. Safe exiting...
[2026-06-12 08:26:37,722.722 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 08:26:37,725.725 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 08:26:37,727.727 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 08:26:39,768.768 INFO    ] ================================================
[2026-06-12 08:26:39,784.784 INFO    ] Launching Daemon at Fri Jun 12 08:26:39 IST 2026
[2026-06-12 08:26:39,796.796 INFO    ] ================================================
[2026-06-12 08:26:40,139.139 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 08:26:40
[2026-06-12 08:26:40,450.450 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 08:26:40,581.581 INFO    ] Initializing speech engine...
[2026-06-12 08:26:40,589.589 INFO    ] 2026-06-12 08:26:40
[2026-06-12 08:26:40,804.804 INFO    ] 2026-06-12 08:26:40
[2026-06-12 08:26:40,833.833 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 08:26:41,020.020 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 08:26:41,029.029 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 08:26:41,158.158 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 08:26:41,216.216 INFO    ] time= 12/06/2026 08:26:41
[2026-06-12 08:26:41,247.247 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 08:26:41,257.257 INFO    ] Checking for existing commands in stream...
[2026-06-12 08:26:41,354.354 INFO    ] No existing commands found in stream
[2026-06-12 08:26:46,362.362 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 08:26:46,365.365 INFO    ] Waiting 2.53 seconds before fallback handling...
[2026-06-12 08:26:49,281.281 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 08:26:49,283.283 INFO    ] Checking for system updates...
[2026-06-12 08:26:49,304.304 INFO    ] 200
[2026-06-12 08:26:49,305.305 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:26:49,336.336 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 08:26:49,338.338 INFO    ] No update needed
[2026-06-12 08:26:49,339.339 INFO    ] Checking for camera pi updates...
[2026-06-12 08:26:49,359.359 INFO    ] 200
[2026-06-12 08:26:49,361.361 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:26:49,386.386 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 08:26:49,428.428 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 08:26:49,429.429 INFO    ] No camera update needed
[2026-06-12 08:26:49,431.431 INFO    ] Script finished. Safe exiting...
[2026-06-12 08:26:49,432.432 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 08:26:49,436.436 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 08:26:49,438.438 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 08:26:51,479.479 INFO    ] ================================================
[2026-06-12 08:26:51,494.494 INFO    ] Launching Daemon at Fri Jun 12 08:26:51 IST 2026
[2026-06-12 08:26:51,505.505 INFO    ] ================================================
[2026-06-12 08:26:51,863.863 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 08:26:51
[2026-06-12 08:26:52,176.176 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 08:26:52,306.306 INFO    ] Initializing speech engine...
[2026-06-12 08:26:52,323.323 INFO    ] 2026-06-12 08:26:52
[2026-06-12 08:26:52,532.532 INFO    ] 2026-06-12 08:26:52
[2026-06-12 08:26:52,561.561 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 08:26:52,746.746 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 08:26:52,750.750 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 08:26:52,888.888 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 08:26:52,952.952 INFO    ] time= 12/06/2026 08:26:52
[2026-06-12 08:26:52,981.981 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 08:26:52,987.987 INFO    ] Checking for existing commands in stream...
[2026-06-12 08:26:53,056.056 INFO    ] No existing commands found in stream
[2026-06-12 08:26:58,064.064 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 08:26:58,065.065 INFO    ] Waiting 3.19 seconds before fallback handling...
[2026-06-12 08:27:01,631.631 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 08:27:01,633.633 INFO    ] Checking for system updates...
[2026-06-12 08:27:01,676.676 INFO    ] 200
[2026-06-12 08:27:01,678.678 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:27:01,724.724 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 08:27:01,726.726 INFO    ] No update needed
[2026-06-12 08:27:01,728.728 INFO    ] Checking for camera pi updates...
[2026-06-12 08:27:01,754.754 INFO    ] 200
[2026-06-12 08:27:01,756.756 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:27:01,788.788 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 08:27:01,926.926 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 08:27:01,928.928 INFO    ] No camera update needed
[2026-06-12 08:27:01,930.930 INFO    ] Script finished. Safe exiting...
[2026-06-12 08:27:01,932.932 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 08:27:01,936.936 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 08:27:01,940.940 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 08:27:03,982.982 INFO    ] ================================================
[2026-06-12 08:27:04,998.998 INFO    ] Launching Daemon at Fri Jun 12 08:27:03 IST 2026
[2026-06-12 08:27:04,010.010 INFO    ] ================================================
[2026-06-12 08:27:04,364.364 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 08:27:04
[2026-06-12 08:27:04,705.705 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 08:27:04,858.858 INFO    ] Initializing speech engine...
[2026-06-12 08:27:04,865.865 INFO    ] 2026-06-12 08:27:04
[2026-06-12 08:27:05,070.070 INFO    ] 2026-06-12 08:27:05
[2026-06-12 08:27:05,100.100 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 08:27:05,284.284 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 08:27:05,294.294 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 08:27:05,421.421 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 08:27:05,492.492 INFO    ] time= 12/06/2026 08:27:05
[2026-06-12 08:27:05,516.516 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 08:27:05,523.523 INFO    ] Checking for existing commands in stream...
[2026-06-12 08:27:05,596.596 INFO    ] No existing commands found in stream
[2026-06-12 08:27:10,630.630 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 08:27:10,633.633 INFO    ] Waiting 0.47 seconds before fallback handling...
[2026-06-12 08:27:11,490.490 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 08:27:11,491.491 INFO    ] Checking for system updates...
[2026-06-12 08:27:11,512.512 INFO    ] 200
[2026-06-12 08:27:11,513.513 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:27:11,544.544 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 08:27:11,545.545 INFO    ] No update needed
[2026-06-12 08:27:11,546.546 INFO    ] Checking for camera pi updates...
[2026-06-12 08:27:11,565.565 INFO    ] 200
[2026-06-12 08:27:11,567.567 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:27:11,592.592 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 08:27:11,627.627 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 08:27:11,628.628 INFO    ] No camera update needed
[2026-06-12 08:27:11,630.630 INFO    ] Script finished. Safe exiting...
[2026-06-12 08:27:11,631.631 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 08:27:11,634.634 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 08:27:11,637.637 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 08:27:13,675.675 INFO    ] ================================================
[2026-06-12 08:27:13,692.692 INFO    ] Launching Daemon at Fri Jun 12 08:27:13 IST 2026
[2026-06-12 08:27:13,704.704 INFO    ] ================================================
[2026-06-12 08:27:14,055.055 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 08:27:14
[2026-06-12 08:27:14,395.395 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 08:27:14,551.551 INFO    ] Initializing speech engine...
[2026-06-12 08:27:14,555.555 INFO    ] 2026-06-12 08:27:14
[2026-06-12 08:27:14,764.764 INFO    ] 2026-06-12 08:27:14
[2026-06-12 08:27:14,793.793 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 08:27:14,980.980 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 08:27:14,990.990 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 08:27:15,126.126 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 08:27:15,190.190 INFO    ] time= 12/06/2026 08:27:15
[2026-06-12 08:27:15,213.213 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 08:27:15,220.220 INFO    ] Checking for existing commands in stream...
[2026-06-12 08:27:15,312.312 INFO    ] No existing commands found in stream
[2026-06-12 08:27:20,320.320 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 08:27:20,323.323 INFO    ] Waiting 1.07 seconds before fallback handling...
[2026-06-12 08:27:21,781.781 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 08:27:21,783.783 INFO    ] Checking for system updates...
[2026-06-12 08:27:21,804.804 INFO    ] 200
[2026-06-12 08:27:21,805.805 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:27:21,836.836 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 08:27:21,838.838 INFO    ] No update needed
[2026-06-12 08:27:21,839.839 INFO    ] Checking for camera pi updates...
[2026-06-12 08:27:21,859.859 INFO    ] 200
[2026-06-12 08:27:21,861.861 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:27:21,884.884 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 08:27:21,919.919 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 08:27:21,920.920 INFO    ] No camera update needed
[2026-06-12 08:27:21,922.922 INFO    ] Script finished. Safe exiting...
[2026-06-12 08:27:21,923.923 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 08:27:21,927.927 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 08:27:21,930.930 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 08:27:23,969.969 INFO    ] ================================================
[2026-06-12 08:27:23,985.985 INFO    ] Launching Daemon at Fri Jun 12 08:27:23 IST 2026
[2026-06-12 08:27:24,997.997 INFO    ] ================================================
[2026-06-12 08:27:24,370.370 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 08:27:24
[2026-06-12 08:27:24,685.685 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 08:27:24,817.817 INFO    ] Initializing speech engine...
[2026-06-12 08:27:24,831.831 INFO    ] 2026-06-12 08:27:24
[2026-06-12 08:27:25,036.036 INFO    ] 2026-06-12 08:27:25
[2026-06-12 08:27:25,065.065 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 08:27:25,248.248 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 08:27:25,252.252 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 08:27:25,387.387 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 08:27:25,446.446 INFO    ] time= 12/06/2026 08:27:25
[2026-06-12 08:27:25,479.479 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 08:27:25,481.481 INFO    ] Checking for existing commands in stream...
[2026-06-12 08:27:25,552.552 INFO    ] No existing commands found in stream
[2026-06-12 08:27:30,561.561 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 08:27:30,563.563 INFO    ] Waiting 1.67 seconds before fallback handling...
[2026-06-12 08:27:32,545.545 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 08:27:32,547.547 INFO    ] Checking for system updates...
[2026-06-12 08:27:32,570.570 INFO    ] 200
[2026-06-12 08:27:32,571.571 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:27:32,605.605 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 08:27:32,607.607 INFO    ] No update needed
[2026-06-12 08:27:32,608.608 INFO    ] Checking for camera pi updates...
[2026-06-12 08:27:32,630.630 INFO    ] 200
[2026-06-12 08:27:32,631.631 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:27:32,656.656 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 08:27:32,680.680 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 08:27:32,682.682 INFO    ] No camera update needed
[2026-06-12 08:27:32,683.683 INFO    ] Script finished. Safe exiting...
[2026-06-12 08:27:32,684.684 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 08:27:32,688.688 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 08:27:32,691.691 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 08:27:34,730.730 INFO    ] ================================================
[2026-06-12 08:27:34,746.746 INFO    ] Launching Daemon at Fri Jun 12 08:27:34 IST 2026
[2026-06-12 08:27:34,758.758 INFO    ] ================================================
[2026-06-12 08:27:35,136.136 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 08:27:35
[2026-06-12 08:27:35,482.482 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 08:27:35,634.634 INFO    ] Initializing speech engine...
[2026-06-12 08:27:35,640.640 INFO    ] 2026-06-12 08:27:35
[2026-06-12 08:27:35,848.848 INFO    ] 2026-06-12 08:27:35
[2026-06-12 08:27:35,877.877 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 08:27:36,060.060 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 08:27:36,070.070 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 08:27:36,194.194 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 08:27:36,250.250 INFO    ] time= 12/06/2026 08:27:36
[2026-06-12 08:27:36,292.292 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 08:27:36,299.299 INFO    ] Checking for existing commands in stream...
[2026-06-12 08:27:36,390.390 INFO    ] No existing commands found in stream
[2026-06-12 08:27:41,414.414 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 08:27:41,418.418 INFO    ] Waiting 0.09 seconds before fallback handling...
[2026-06-12 08:27:41,852.852 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 08:27:41,853.853 INFO    ] Checking for system updates...
[2026-06-12 08:27:41,874.874 INFO    ] 200
[2026-06-12 08:27:41,876.876 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:27:41,907.907 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 08:27:41,908.908 INFO    ] No update needed
[2026-06-12 08:27:41,909.909 INFO    ] Checking for camera pi updates...
[2026-06-12 08:27:41,931.931 INFO    ] 200
[2026-06-12 08:27:41,932.932 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:27:41,956.956 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 08:27:41,995.995 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 08:27:41,996.996 INFO    ] No camera update needed
[2026-06-12 08:27:41,997.997 INFO    ] Script finished. Safe exiting...
[2026-06-12 08:27:41,999.999 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 08:27:42,002.002 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 08:27:42,005.005 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 08:27:44,046.046 INFO    ] ================================================
[2026-06-12 08:27:44,062.062 INFO    ] Launching Daemon at Fri Jun 12 08:27:44 IST 2026
[2026-06-12 08:27:44,073.073 INFO    ] ================================================
[2026-06-12 08:27:44,415.415 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 08:27:44
[2026-06-12 08:27:44,733.733 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 08:27:44,865.865 INFO    ] Initializing speech engine...
[2026-06-12 08:27:44,878.878 INFO    ] 2026-06-12 08:27:44
[2026-06-12 08:27:45,086.086 INFO    ] 2026-06-12 08:27:45
[2026-06-12 08:27:45,116.116 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 08:27:45,299.299 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 08:27:45,308.308 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 08:27:45,435.435 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 08:27:45,497.497 INFO    ] time= 12/06/2026 08:27:45
[2026-06-12 08:27:45,529.529 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 08:27:45,531.531 INFO    ] Checking for existing commands in stream...
[2026-06-12 08:27:45,603.603 INFO    ] No existing commands found in stream
[2026-06-12 08:27:50,612.612 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 08:27:50,615.615 INFO    ] Waiting 2.48 seconds before fallback handling...
[2026-06-12 08:27:53,481.481 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 08:27:53,482.482 INFO    ] Checking for system updates...
[2026-06-12 08:27:53,504.504 INFO    ] 200
[2026-06-12 08:27:53,505.505 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:27:53,537.537 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 08:27:53,539.539 INFO    ] No update needed
[2026-06-12 08:27:53,540.540 INFO    ] Checking for camera pi updates...
[2026-06-12 08:27:53,560.560 INFO    ] 200
[2026-06-12 08:27:53,562.562 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:27:53,585.585 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 08:27:53,624.624 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 08:27:53,625.625 INFO    ] No camera update needed
[2026-06-12 08:27:53,626.626 INFO    ] Script finished. Safe exiting...
[2026-06-12 08:27:53,628.628 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 08:27:53,631.631 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 08:27:53,634.634 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 08:27:55,675.675 INFO    ] ================================================
[2026-06-12 08:27:55,690.690 INFO    ] Launching Daemon at Fri Jun 12 08:27:55 IST 2026
[2026-06-12 08:27:55,702.702 INFO    ] ================================================
[2026-06-12 08:27:56,073.073 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 08:27:56
[2026-06-12 08:27:56,416.416 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 08:27:56,570.570 INFO    ] Initializing speech engine...
[2026-06-12 08:27:56,575.575 INFO    ] 2026-06-12 08:27:56
[2026-06-12 08:27:56,787.787 INFO    ] 2026-06-12 08:27:56
[2026-06-12 08:27:56,816.816 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 08:27:57,002.002 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 08:27:57,005.005 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 08:27:57,140.140 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 08:27:57,202.202 INFO    ] time= 12/06/2026 08:27:57
[2026-06-12 08:27:57,236.236 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 08:27:57,242.242 INFO    ] Checking for existing commands in stream...
[2026-06-12 08:27:57,310.310 INFO    ] No existing commands found in stream
[2026-06-12 08:28:02,323.323 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 08:28:02,326.326 INFO    ] Waiting 3.00 seconds before fallback handling...
[2026-06-12 08:28:06,548.548 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 08:28:06,551.551 INFO    ] Checking for system updates...
[2026-06-12 08:28:06,588.588 INFO    ] 200
[2026-06-12 08:28:06,591.591 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:28:06,648.648 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 08:28:06,651.651 INFO    ] No update needed
[2026-06-12 08:28:06,653.653 INFO    ] Checking for camera pi updates...
[2026-06-12 08:28:06,688.688 INFO    ] 200
[2026-06-12 08:28:06,691.691 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:28:06,736.736 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 08:28:06,774.774 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 08:28:06,775.775 INFO    ] No camera update needed
[2026-06-12 08:28:06,777.777 INFO    ] Script finished. Safe exiting...
[2026-06-12 08:28:06,778.778 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 08:28:06,781.781 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 08:28:06,784.784 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 08:28:08,823.823 INFO    ] ================================================
[2026-06-12 08:28:08,839.839 INFO    ] Launching Daemon at Fri Jun 12 08:28:08 IST 2026
[2026-06-12 08:28:08,850.850 INFO    ] ================================================
[2026-06-12 08:28:09,194.194 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 08:28:09
[2026-06-12 08:28:09,506.506 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 08:28:09,643.643 INFO    ] Initializing speech engine...
[2026-06-12 08:28:09,652.652 INFO    ] 2026-06-12 08:28:09
[2026-06-12 08:28:09,837.837 INFO    ] 2026-06-12 08:28:09
[2026-06-12 08:28:09,863.863 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 08:28:10,009.009 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 08:28:10,072.072 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 08:28:10,217.217 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 08:28:10,218.218 INFO    ] time= 12/06/2026 08:28:10
[2026-06-12 08:28:10,220.220 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 08:28:10,285.285 INFO    ] Checking for existing commands in stream...
[2026-06-12 08:28:10,385.385 INFO    ] No existing commands found in stream
[2026-06-12 08:28:15,395.395 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 08:28:15,398.398 INFO    ] Waiting 0.48 seconds before fallback handling...
[2026-06-12 08:28:16,282.282 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 08:28:16,283.283 INFO    ] Checking for system updates...
[2026-06-12 08:28:16,304.304 INFO    ] 200
[2026-06-12 08:28:16,305.305 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:28:16,338.338 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 08:28:16,340.340 INFO    ] No update needed
[2026-06-12 08:28:16,342.342 INFO    ] Checking for camera pi updates...
[2026-06-12 08:28:16,361.361 INFO    ] 200
[2026-06-12 08:28:16,363.363 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:28:16,388.388 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 08:28:16,424.424 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 08:28:16,425.425 INFO    ] No camera update needed
[2026-06-12 08:28:16,427.427 INFO    ] Script finished. Safe exiting...
[2026-06-12 08:28:16,428.428 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 08:28:16,432.432 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 08:28:16,435.435 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 08:28:18,476.476 INFO    ] ================================================
[2026-06-12 08:28:18,492.492 INFO    ] Launching Daemon at Fri Jun 12 08:28:18 IST 2026
[2026-06-12 08:28:18,503.503 INFO    ] ================================================
[2026-06-12 08:28:18,874.874 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 08:28:18
[2026-06-12 08:28:19,189.189 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 08:28:19,320.320 INFO    ] Initializing speech engine...
[2026-06-12 08:28:19,324.324 INFO    ] 2026-06-12 08:28:19
[2026-06-12 08:28:19,542.542 INFO    ] 2026-06-12 08:28:19
[2026-06-12 08:28:19,571.571 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 08:28:19,754.754 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 08:28:19,757.757 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 08:28:19,887.887 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 08:28:19,947.947 INFO    ] time= 12/06/2026 08:28:19
[2026-06-12 08:28:19,984.984 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 08:28:19,986.986 INFO    ] Checking for existing commands in stream...
[2026-06-12 08:28:20,056.056 INFO    ] No existing commands found in stream
[2026-06-12 08:28:25,066.066 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 08:28:25,069.069 INFO    ] Waiting 0.59 seconds before fallback handling...
[2026-06-12 08:28:26,021.021 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 08:28:26,022.022 INFO    ] Checking for system updates...
[2026-06-12 08:28:26,044.044 INFO    ] 200
[2026-06-12 08:28:26,045.045 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:28:26,076.076 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 08:28:26,077.077 INFO    ] No update needed
[2026-06-12 08:28:26,078.078 INFO    ] Checking for camera pi updates...
[2026-06-12 08:28:26,098.098 INFO    ] 200
[2026-06-12 08:28:26,100.100 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:28:26,125.125 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 08:28:26,164.164 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 08:28:26,166.166 INFO    ] No camera update needed
[2026-06-12 08:28:26,167.167 INFO    ] Script finished. Safe exiting...
[2026-06-12 08:28:26,169.169 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 08:28:26,172.172 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 08:28:26,175.175 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 08:28:28,214.214 INFO    ] ================================================
[2026-06-12 08:28:28,231.231 INFO    ] Launching Daemon at Fri Jun 12 08:28:28 IST 2026
[2026-06-12 08:28:28,242.242 INFO    ] ================================================
[2026-06-12 08:28:28,576.576 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 08:28:28
[2026-06-12 08:28:28,892.892 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 08:28:29,024.024 INFO    ] Initializing speech engine...
[2026-06-12 08:28:29,032.032 INFO    ] 2026-06-12 08:28:29
[2026-06-12 08:28:29,245.245 INFO    ] 2026-06-12 08:28:29
[2026-06-12 08:28:29,273.273 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 08:28:29,456.456 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 08:28:29,467.467 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 08:28:29,589.589 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 08:28:29,639.639 INFO    ] time= 12/06/2026 08:28:29
[2026-06-12 08:28:29,683.683 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 08:28:29,688.688 INFO    ] Checking for existing commands in stream...
[2026-06-12 08:28:29,782.782 INFO    ] No existing commands found in stream
[2026-06-12 08:28:34,791.791 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 08:28:34,794.794 INFO    ] Waiting 2.81 seconds before fallback handling...
[2026-06-12 08:28:37,971.971 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 08:28:37,972.972 INFO    ] Checking for system updates...
[2026-06-12 08:28:37,993.993 INFO    ] 200
[2026-06-12 08:28:37,994.994 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:28:38,026.026 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 08:28:38,027.027 INFO    ] No update needed
[2026-06-12 08:28:38,029.029 INFO    ] Checking for camera pi updates...
[2026-06-12 08:28:38,049.049 INFO    ] 200
[2026-06-12 08:28:38,051.051 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:28:38,076.076 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 08:28:38,111.111 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 08:28:38,112.112 INFO    ] No camera update needed
[2026-06-12 08:28:38,114.114 INFO    ] Script finished. Safe exiting...
[2026-06-12 08:28:38,115.115 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 08:28:38,118.118 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 08:28:38,120.120 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 08:28:40,159.159 INFO    ] ================================================
[2026-06-12 08:28:40,175.175 INFO    ] Launching Daemon at Fri Jun 12 08:28:40 IST 2026
[2026-06-12 08:28:40,186.186 INFO    ] ================================================
[2026-06-12 08:28:40,545.545 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 08:28:40
[2026-06-12 08:28:40,863.863 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 08:28:40,994.994 INFO    ] Initializing speech engine...
[2026-06-12 08:28:41,002.002 INFO    ] 2026-06-12 08:28:40
[2026-06-12 08:28:41,217.217 INFO    ] 2026-06-12 08:28:41
[2026-06-12 08:28:41,246.246 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 08:28:41,428.428 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 08:28:41,437.437 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 08:28:41,567.567 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 08:28:41,625.625 INFO    ] time= 12/06/2026 08:28:41
[2026-06-12 08:28:41,658.658 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 08:28:41,664.664 INFO    ] Checking for existing commands in stream...
[2026-06-12 08:28:41,730.730 INFO    ] No existing commands found in stream
[2026-06-12 08:28:46,744.744 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 08:28:46,747.747 INFO    ] Waiting 2.35 seconds before fallback handling...
[2026-06-12 08:28:49,481.481 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 08:28:49,482.482 INFO    ] Checking for system updates...
[2026-06-12 08:28:49,505.505 INFO    ] 200
[2026-06-12 08:28:49,507.507 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:28:49,537.537 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 08:28:49,538.538 INFO    ] No update needed
[2026-06-12 08:28:49,539.539 INFO    ] Checking for camera pi updates...
[2026-06-12 08:28:49,560.560 INFO    ] 200
[2026-06-12 08:28:49,561.561 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:28:49,585.585 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 08:28:49,622.622 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 08:28:49,623.623 INFO    ] No camera update needed
[2026-06-12 08:28:49,625.625 INFO    ] Script finished. Safe exiting...
[2026-06-12 08:28:49,626.626 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 08:28:49,629.629 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 08:28:49,632.632 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 08:28:51,672.672 INFO    ] ================================================
[2026-06-12 08:28:51,687.687 INFO    ] Launching Daemon at Fri Jun 12 08:28:51 IST 2026
[2026-06-12 08:28:51,698.698 INFO    ] ================================================
[2026-06-12 08:28:52,041.041 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 08:28:52
[2026-06-12 08:28:52,353.353 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 08:28:52,483.483 INFO    ] Initializing speech engine...
[2026-06-12 08:28:52,487.487 INFO    ] 2026-06-12 08:28:52
[2026-06-12 08:28:52,706.706 INFO    ] 2026-06-12 08:28:52
[2026-06-12 08:28:52,735.735 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 08:28:52,921.921 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 08:28:52,924.924 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 08:28:53,061.061 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 08:28:53,125.125 INFO    ] time= 12/06/2026 08:28:53
[2026-06-12 08:28:53,154.154 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 08:28:53,156.156 INFO    ] Checking for existing commands in stream...
[2026-06-12 08:28:53,228.228 INFO    ] No existing commands found in stream
[2026-06-12 08:28:58,242.242 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 08:28:58,245.245 INFO    ] Waiting 3.64 seconds before fallback handling...
[2026-06-12 08:29:02,230.230 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 08:29:02,232.232 INFO    ] Checking for system updates...
[2026-06-12 08:29:02,263.263 INFO    ] 200
[2026-06-12 08:29:02,265.265 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:29:02,312.312 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 08:29:02,314.314 INFO    ] No update needed
[2026-06-12 08:29:02,315.315 INFO    ] Checking for camera pi updates...
[2026-06-12 08:29:02,343.343 INFO    ] 200
[2026-06-12 08:29:02,344.344 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:29:02,373.373 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 08:29:02,395.395 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 08:29:02,397.397 INFO    ] No camera update needed
[2026-06-12 08:29:02,399.399 INFO    ] Script finished. Safe exiting...
[2026-06-12 08:29:02,401.401 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 08:29:02,405.405 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 08:29:02,409.409 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 08:29:04,450.450 INFO    ] ================================================
[2026-06-12 08:29:04,466.466 INFO    ] Launching Daemon at Fri Jun 12 08:29:04 IST 2026
[2026-06-12 08:29:04,477.477 INFO    ] ================================================
[2026-06-12 08:29:04,845.845 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 08:29:04
[2026-06-12 08:29:05,162.162 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 08:29:05,310.310 INFO    ] Initializing speech engine...
[2026-06-12 08:29:05,315.315 INFO    ] 2026-06-12 08:29:05
[2026-06-12 08:29:05,523.523 INFO    ] 2026-06-12 08:29:05
[2026-06-12 08:29:05,552.552 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 08:29:05,736.736 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 08:29:05,745.745 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 08:29:05,885.885 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 08:29:05,943.943 INFO    ] time= 12/06/2026 08:29:05
[2026-06-12 08:29:05,965.965 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 08:29:05,973.973 INFO    ] Checking for existing commands in stream...
[2026-06-12 08:29:06,035.035 INFO    ] No existing commands found in stream
[2026-06-12 08:29:11,043.043 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 08:29:11,046.046 INFO    ] Waiting 3.96 seconds before fallback handling...
[2026-06-12 08:29:15,386.386 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 08:29:15,388.388 INFO    ] Checking for system updates...
[2026-06-12 08:29:15,408.408 INFO    ] 200
[2026-06-12 08:29:15,410.410 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:29:15,442.442 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 08:29:15,443.443 INFO    ] No update needed
[2026-06-12 08:29:15,444.444 INFO    ] Checking for camera pi updates...
[2026-06-12 08:29:15,465.465 INFO    ] 200
[2026-06-12 08:29:15,467.467 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:29:15,490.490 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 08:29:15,630.630 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 08:29:15,631.631 INFO    ] No camera update needed
[2026-06-12 08:29:15,633.633 INFO    ] Script finished. Safe exiting...
[2026-06-12 08:29:15,634.634 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 08:29:15,637.637 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 08:29:15,639.639 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 08:29:17,680.680 INFO    ] ================================================
[2026-06-12 08:29:17,697.697 INFO    ] Launching Daemon at Fri Jun 12 08:29:17 IST 2026
[2026-06-12 08:29:17,708.708 INFO    ] ================================================
[2026-06-12 08:29:18,076.076 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 08:29:18
[2026-06-12 08:29:18,388.388 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 08:29:18,529.529 INFO    ] Initializing speech engine...
[2026-06-12 08:29:18,534.534 INFO    ] 2026-06-12 08:29:18
[2026-06-12 08:29:18,736.736 INFO    ] 2026-06-12 08:29:18
[2026-06-12 08:29:18,766.766 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 08:29:18,948.948 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 08:29:18,957.957 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 08:29:19,101.101 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 08:29:19,153.153 INFO    ] time= 12/06/2026 08:29:19
[2026-06-12 08:29:19,175.175 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 08:29:19,182.182 INFO    ] Checking for existing commands in stream...
[2026-06-12 08:29:19,248.248 INFO    ] No existing commands found in stream
[2026-06-12 08:29:24,257.257 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 08:29:24,259.259 INFO    ] Waiting 1.21 seconds before fallback handling...
[2026-06-12 08:29:25,872.872 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 08:29:25,873.873 INFO    ] Checking for system updates...
[2026-06-12 08:29:25,894.894 INFO    ] 200
[2026-06-12 08:29:25,896.896 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:29:25,929.929 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 08:29:25,930.930 INFO    ] No update needed
[2026-06-12 08:29:25,932.932 INFO    ] Checking for camera pi updates...
[2026-06-12 08:29:25,954.954 INFO    ] 200
[2026-06-12 08:29:25,956.956 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:29:25,981.981 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 08:29:26,018.018 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 08:29:26,020.020 INFO    ] No camera update needed
[2026-06-12 08:29:26,021.021 INFO    ] Script finished. Safe exiting...
[2026-06-12 08:29:26,023.023 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 08:29:26,026.026 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 08:29:26,029.029 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 08:29:28,067.067 INFO    ] ================================================
[2026-06-12 08:29:28,083.083 INFO    ] Launching Daemon at Fri Jun 12 08:29:28 IST 2026
[2026-06-12 08:29:28,093.093 INFO    ] ================================================
[2026-06-12 08:29:28,450.450 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 08:29:28
[2026-06-12 08:29:28,761.761 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 08:29:28,890.890 INFO    ] Initializing speech engine...
[2026-06-12 08:29:28,894.894 INFO    ] 2026-06-12 08:29:28
[2026-06-12 08:29:29,108.108 INFO    ] 2026-06-12 08:29:29
[2026-06-12 08:29:29,137.137 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 08:29:29,320.320 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 08:29:29,329.329 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 08:29:29,474.474 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 08:29:29,527.527 INFO    ] time= 12/06/2026 08:29:29
[2026-06-12 08:29:29,549.549 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 08:29:29,556.556 INFO    ] Checking for existing commands in stream...
[2026-06-12 08:29:29,621.621 INFO    ] No existing commands found in stream
[2026-06-12 08:29:34,632.632 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 08:29:34,634.634 INFO    ] Waiting 3.84 seconds before fallback handling...
[2026-06-12 08:29:38,849.849 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 08:29:38,851.851 INFO    ] Checking for system updates...
[2026-06-12 08:29:38,872.872 INFO    ] 200
[2026-06-12 08:29:38,873.873 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:29:38,903.903 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 08:29:38,904.904 INFO    ] No update needed
[2026-06-12 08:29:38,905.905 INFO    ] Checking for camera pi updates...
[2026-06-12 08:29:38,927.927 INFO    ] 200
[2026-06-12 08:29:38,928.928 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:29:38,953.953 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 08:29:38,988.988 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 08:29:38,990.990 INFO    ] No camera update needed
[2026-06-12 08:29:38,991.991 INFO    ] Script finished. Safe exiting...
[2026-06-12 08:29:38,992.992 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 08:29:38,995.995 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 08:29:38,998.998 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 08:29:41,036.036 INFO    ] ================================================
[2026-06-12 08:29:41,051.051 INFO    ] Launching Daemon at Fri Jun 12 08:29:41 IST 2026
[2026-06-12 08:29:41,063.063 INFO    ] ================================================
[2026-06-12 08:29:41,406.406 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 08:29:41
[2026-06-12 08:29:41,742.742 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 08:29:41,891.891 INFO    ] Initializing speech engine...
[2026-06-12 08:29:41,897.897 INFO    ] 2026-06-12 08:29:41
[2026-06-12 08:29:42,103.103 INFO    ] 2026-06-12 08:29:42
[2026-06-12 08:29:42,131.131 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 08:29:42,315.315 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 08:29:42,324.324 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 08:29:42,453.453 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 08:29:42,517.517 INFO    ] time= 12/06/2026 08:29:42
[2026-06-12 08:29:42,543.543 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 08:29:42,550.550 INFO    ] Checking for existing commands in stream...
[2026-06-12 08:29:42,616.616 INFO    ] No existing commands found in stream
[2026-06-12 08:29:47,631.631 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 08:29:47,635.635 INFO    ] Waiting 1.66 seconds before fallback handling...
[2026-06-12 08:29:49,657.657 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 08:29:49,658.658 INFO    ] Checking for system updates...
[2026-06-12 08:29:49,680.680 INFO    ] 200
[2026-06-12 08:29:49,682.682 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:29:49,715.715 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 08:29:49,716.716 INFO    ] No update needed
[2026-06-12 08:29:49,717.717 INFO    ] Checking for camera pi updates...
[2026-06-12 08:29:49,738.738 INFO    ] 200
[2026-06-12 08:29:49,740.740 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:29:49,765.765 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 08:29:49,801.801 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 08:29:49,803.803 INFO    ] No camera update needed
[2026-06-12 08:29:49,804.804 INFO    ] Script finished. Safe exiting...
[2026-06-12 08:29:49,805.805 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 08:29:49,809.809 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 08:29:49,812.812 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 08:29:51,851.851 INFO    ] ================================================
[2026-06-12 08:29:51,866.866 INFO    ] Launching Daemon at Fri Jun 12 08:29:51 IST 2026
[2026-06-12 08:29:51,877.877 INFO    ] ================================================
[2026-06-12 08:29:52,235.235 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 08:29:52
[2026-06-12 08:29:52,547.547 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 08:29:52,678.678 INFO    ] Initializing speech engine...
[2026-06-12 08:29:52,695.695 INFO    ] 2026-06-12 08:29:52
[2026-06-12 08:29:52,912.912 INFO    ] 2026-06-12 08:29:52
[2026-06-12 08:29:52,943.943 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 08:29:53,140.140 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 08:29:53,144.144 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 08:29:53,287.287 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 08:29:53,338.338 INFO    ] time= 12/06/2026 08:29:53
[2026-06-12 08:29:53,371.371 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 08:29:53,388.388 INFO    ] Checking for existing commands in stream...
[2026-06-12 08:29:53,464.464 INFO    ] No existing commands found in stream
[2026-06-12 08:29:58,473.473 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 08:29:58,476.476 INFO    ] Waiting 0.36 seconds before fallback handling...
[2026-06-12 08:29:59,255.255 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 08:29:59,256.256 INFO    ] Checking for system updates...
[2026-06-12 08:29:59,279.279 INFO    ] 200
[2026-06-12 08:29:59,280.280 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:29:59,313.313 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 08:29:59,315.315 INFO    ] No update needed
[2026-06-12 08:29:59,316.316 INFO    ] Checking for camera pi updates...
[2026-06-12 08:29:59,337.337 INFO    ] 200
[2026-06-12 08:29:59,338.338 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:29:59,364.364 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 08:29:59,400.400 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 08:29:59,402.402 INFO    ] No camera update needed
[2026-06-12 08:29:59,403.403 INFO    ] Script finished. Safe exiting...
[2026-06-12 08:29:59,405.405 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 08:29:59,408.408 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 08:29:59,411.411 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 08:30:01,466.466 INFO    ] ================================================
[2026-06-12 08:30:01,521.521 INFO    ] Launching Daemon at Fri Jun 12 08:30:01 IST 2026
[2026-06-12 08:30:01,546.546 INFO    ] ================================================
[2026-06-12 08:30:02,117.117 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 08:30:02
[2026-06-12 08:30:02,513.513 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 08:30:02,665.665 INFO    ] Initializing speech engine...
[2026-06-12 08:30:02,670.670 INFO    ] 2026-06-12 08:30:02
[2026-06-12 08:30:02,898.898 INFO    ] 2026-06-12 08:30:02
[2026-06-12 08:30:02,929.929 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 08:30:03,123.123 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 08:30:03,129.129 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 08:30:03,268.268 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 08:30:03,325.325 INFO    ] time= 12/06/2026 08:30:03
[2026-06-12 08:30:03,369.369 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 08:30:03,375.375 INFO    ] Checking for existing commands in stream...
[2026-06-12 08:30:03,452.452 INFO    ] No existing commands found in stream
[2026-06-12 08:30:08,466.466 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 08:30:08,469.469 INFO    ] Waiting 0.72 seconds before fallback handling...
[2026-06-12 08:30:09,568.568 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 08:30:09,569.569 INFO    ] Checking for system updates...
[2026-06-12 08:30:09,593.593 INFO    ] 200
[2026-06-12 08:30:09,595.595 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:30:09,628.628 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 08:30:09,630.630 INFO    ] No update needed
[2026-06-12 08:30:09,632.632 INFO    ] Checking for camera pi updates...
[2026-06-12 08:30:09,663.663 INFO    ] 200
[2026-06-12 08:30:09,665.665 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:30:09,695.695 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 08:30:09,734.734 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 08:30:09,735.735 INFO    ] No camera update needed
[2026-06-12 08:30:09,737.737 INFO    ] Script finished. Safe exiting...
[2026-06-12 08:30:09,738.738 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 08:30:09,741.741 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 08:30:09,744.744 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 08:30:11,775.775 INFO    ] ================================================
[2026-06-12 08:30:11,784.784 INFO    ] Launching Daemon at Fri Jun 12 08:30:11 IST 2026
[2026-06-12 08:30:11,791.791 INFO    ] ================================================
[2026-06-12 08:30:12,107.107 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 08:30:12
[2026-06-12 08:30:12,439.439 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 08:30:12,586.586 INFO    ] Initializing speech engine...
[2026-06-12 08:30:12,595.595 INFO    ] 2026-06-12 08:30:12
[2026-06-12 08:30:12,822.822 INFO    ] 2026-06-12 08:30:12
[2026-06-12 08:30:12,852.852 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 08:30:12,986.986 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 08:30:13,040.040 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 08:30:13,179.179 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 08:30:13,244.244 INFO    ] time= 12/06/2026 08:30:13
[2026-06-12 08:30:13,287.287 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 08:30:13,292.292 INFO    ] Checking for existing commands in stream...
[2026-06-12 08:30:13,360.360 INFO    ] No existing commands found in stream
[2026-06-12 08:30:18,366.366 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 08:30:18,370.370 INFO    ] Waiting 1.44 seconds before fallback handling...
[2026-06-12 08:30:20,186.186 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 08:30:20,188.188 INFO    ] Checking for system updates...
[2026-06-12 08:30:20,208.208 INFO    ] 200
[2026-06-12 08:30:20,210.210 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:30:20,242.242 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 08:30:20,244.244 INFO    ] No update needed
[2026-06-12 08:30:20,245.245 INFO    ] Checking for camera pi updates...
[2026-06-12 08:30:20,265.265 INFO    ] 200
[2026-06-12 08:30:20,266.266 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:30:20,290.290 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 08:30:20,330.330 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 08:30:20,331.331 INFO    ] No camera update needed
[2026-06-12 08:30:20,332.332 INFO    ] Script finished. Safe exiting...
[2026-06-12 08:30:20,334.334 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 08:30:20,337.337 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 08:30:20,339.339 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 08:30:22,380.380 INFO    ] ================================================
[2026-06-12 08:30:22,396.396 INFO    ] Launching Daemon at Fri Jun 12 08:30:22 IST 2026
[2026-06-12 08:30:22,406.406 INFO    ] ================================================
[2026-06-12 08:30:22,734.734 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 08:30:22
[2026-06-12 08:30:23,046.046 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 08:30:23,190.190 INFO    ] Initializing speech engine...
[2026-06-12 08:30:23,195.195 INFO    ] 2026-06-12 08:30:23
[2026-06-12 08:30:23,401.401 INFO    ] 2026-06-12 08:30:23
[2026-06-12 08:30:23,430.430 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 08:30:23,569.569 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 08:30:23,617.617 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 08:30:23,729.729 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 08:30:23,753.753 INFO    ] time= 12/06/2026 08:30:23
[2026-06-12 08:30:23,809.809 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 08:30:23,844.844 INFO    ] Checking for existing commands in stream...
[2026-06-12 08:30:23,925.925 INFO    ] No existing commands found in stream
[2026-06-12 08:30:28,935.935 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 08:30:28,938.938 INFO    ] Waiting 0.13 seconds before fallback handling...
[2026-06-12 08:30:29,408.408 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 08:30:29,410.410 INFO    ] Checking for system updates...
[2026-06-12 08:30:29,431.431 INFO    ] 200
[2026-06-12 08:30:29,432.432 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:30:29,462.462 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 08:30:29,464.464 INFO    ] No update needed
[2026-06-12 08:30:29,465.465 INFO    ] Checking for camera pi updates...
[2026-06-12 08:30:29,485.485 INFO    ] 200
[2026-06-12 08:30:29,487.487 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:30:29,510.510 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 08:30:29,547.547 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 08:30:29,548.548 INFO    ] No camera update needed
[2026-06-12 08:30:29,550.550 INFO    ] Script finished. Safe exiting...
[2026-06-12 08:30:29,551.551 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 08:30:29,554.554 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 08:30:29,557.557 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 08:30:31,589.589 INFO    ] ================================================
[2026-06-12 08:30:31,599.599 INFO    ] Launching Daemon at Fri Jun 12 08:30:31 IST 2026
[2026-06-12 08:30:31,606.606 INFO    ] ================================================
[2026-06-12 08:30:31,943.943 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 08:30:31
[2026-06-12 08:30:32,272.272 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 08:30:32,404.404 INFO    ] Initializing speech engine...
[2026-06-12 08:30:32,411.411 INFO    ] 2026-06-12 08:30:32
[2026-06-12 08:30:32,625.625 INFO    ] 2026-06-12 08:30:32
[2026-06-12 08:30:32,654.654 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 08:30:32,836.836 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 08:30:32,846.846 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 08:30:32,993.993 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 08:30:33,047.047 INFO    ] time= 12/06/2026 08:30:33
[2026-06-12 08:30:33,068.068 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 08:30:33,075.075 INFO    ] Checking for existing commands in stream...
[2026-06-12 08:30:33,141.141 INFO    ] No existing commands found in stream
[2026-06-12 08:30:38,149.149 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 08:30:38,151.151 INFO    ] Waiting 1.03 seconds before fallback handling...
[2026-06-12 08:30:39,518.518 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 08:30:39,520.520 INFO    ] Checking for system updates...
[2026-06-12 08:30:39,540.540 INFO    ] 200
[2026-06-12 08:30:39,542.542 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:30:39,572.572 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 08:30:39,573.573 INFO    ] No update needed
[2026-06-12 08:30:39,575.575 INFO    ] Checking for camera pi updates...
[2026-06-12 08:30:39,594.594 INFO    ] 200
[2026-06-12 08:30:39,596.596 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:30:39,619.619 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 08:30:39,660.660 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 08:30:39,662.662 INFO    ] No camera update needed
[2026-06-12 08:30:39,663.663 INFO    ] Script finished. Safe exiting...
[2026-06-12 08:30:39,664.664 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 08:30:39,667.667 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 08:30:39,670.670 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 08:30:41,711.711 INFO    ] ================================================
[2026-06-12 08:30:41,726.726 INFO    ] Launching Daemon at Fri Jun 12 08:30:41 IST 2026
[2026-06-12 08:30:41,736.736 INFO    ] ================================================
[2026-06-12 08:30:42,123.123 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 08:30:42
[2026-06-12 08:30:42,457.457 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 08:30:42,608.608 INFO    ] Initializing speech engine...
[2026-06-12 08:30:42,614.614 INFO    ] 2026-06-12 08:30:42
[2026-06-12 08:30:42,821.821 INFO    ] 2026-06-12 08:30:42
[2026-06-12 08:30:42,850.850 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 08:30:42,978.978 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 08:30:43,037.037 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 08:30:43,175.175 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 08:30:43,239.239 INFO    ] time= 12/06/2026 08:30:43
[2026-06-12 08:30:43,267.267 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 08:30:43,274.274 INFO    ] Checking for existing commands in stream...
[2026-06-12 08:30:43,340.340 INFO    ] No existing commands found in stream
[2026-06-12 08:30:48,350.350 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 08:30:48,353.353 INFO    ] Waiting 1.65 seconds before fallback handling...
[2026-06-12 08:30:50,376.376 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 08:30:50,378.378 INFO    ] Checking for system updates...
[2026-06-12 08:30:50,399.399 INFO    ] 200
[2026-06-12 08:30:50,400.400 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:30:50,432.432 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 08:30:50,434.434 INFO    ] No update needed
[2026-06-12 08:30:50,435.435 INFO    ] Checking for camera pi updates...
[2026-06-12 08:30:50,454.454 INFO    ] 200
[2026-06-12 08:30:50,455.455 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:30:50,481.481 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 08:30:50,520.520 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 08:30:50,522.522 INFO    ] No camera update needed
[2026-06-12 08:30:50,523.523 INFO    ] Script finished. Safe exiting...
[2026-06-12 08:30:50,524.524 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 08:30:50,527.527 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 08:30:50,529.529 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 08:30:52,568.568 INFO    ] ================================================
[2026-06-12 08:30:52,590.590 INFO    ] Launching Daemon at Fri Jun 12 08:30:52 IST 2026
[2026-06-12 08:30:52,601.601 INFO    ] ================================================
[2026-06-12 08:30:52,972.972 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 08:30:52
[2026-06-12 08:30:53,285.285 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 08:30:53,423.423 INFO    ] Initializing speech engine...
[2026-06-12 08:30:53,434.434 INFO    ] 2026-06-12 08:30:53
[2026-06-12 08:30:53,638.638 INFO    ] 2026-06-12 08:30:53
[2026-06-12 08:30:53,667.667 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 08:30:53,855.855 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 08:30:53,864.864 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 08:30:54,005.005 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 08:30:54,064.064 INFO    ] time= 12/06/2026 08:30:54
[2026-06-12 08:30:54,086.086 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 08:30:54,092.092 INFO    ] Checking for existing commands in stream...
[2026-06-12 08:30:54,160.160 INFO    ] No existing commands found in stream
[2026-06-12 08:30:59,169.169 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 08:30:59,172.172 INFO    ] Waiting 1.21 seconds before fallback handling...
[2026-06-12 08:31:00,713.713 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 08:31:00,715.715 INFO    ] Checking for system updates...
[2026-06-12 08:31:00,735.735 INFO    ] 200
[2026-06-12 08:31:00,737.737 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:31:00,769.769 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 08:31:00,770.770 INFO    ] No update needed
[2026-06-12 08:31:00,772.772 INFO    ] Checking for camera pi updates...
[2026-06-12 08:31:00,791.791 INFO    ] 200
[2026-06-12 08:31:00,793.793 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:31:00,815.815 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 08:31:00,852.852 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 08:31:00,853.853 INFO    ] No camera update needed
[2026-06-12 08:31:00,854.854 INFO    ] Script finished. Safe exiting...
[2026-06-12 08:31:00,856.856 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 08:31:00,858.858 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 08:31:00,861.861 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 08:31:02,893.893 INFO    ] ================================================
[2026-06-12 08:31:02,901.901 INFO    ] Launching Daemon at Fri Jun 12 08:31:02 IST 2026
[2026-06-12 08:31:02,907.907 INFO    ] ================================================
[2026-06-12 08:31:03,211.211 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 08:31:03
[2026-06-12 08:31:03,532.532 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 08:31:03,665.665 INFO    ] Initializing speech engine...
[2026-06-12 08:31:03,680.680 INFO    ] 2026-06-12 08:31:03
[2026-06-12 08:31:03,884.884 INFO    ] 2026-06-12 08:31:03
[2026-06-12 08:31:03,911.911 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 08:31:04,080.080 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 08:31:04,085.085 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 08:31:04,234.234 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 08:31:04,280.280 INFO    ] time= 12/06/2026 08:31:04
[2026-06-12 08:31:04,330.330 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 08:31:04,374.374 INFO    ] Checking for existing commands in stream...
[2026-06-12 08:31:04,449.449 INFO    ] No existing commands found in stream
[2026-06-12 08:31:09,458.458 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 08:31:09,467.467 INFO    ] Waiting 2.93 seconds before fallback handling...
[2026-06-12 08:31:12,721.721 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 08:31:12,723.723 INFO    ] Checking for system updates...
[2026-06-12 08:31:12,743.743 INFO    ] 200
[2026-06-12 08:31:12,745.745 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:31:12,775.775 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 08:31:12,776.776 INFO    ] No update needed
[2026-06-12 08:31:12,777.777 INFO    ] Checking for camera pi updates...
[2026-06-12 08:31:12,797.797 INFO    ] 200
[2026-06-12 08:31:12,798.798 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:31:12,821.821 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 08:31:12,855.855 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 08:31:12,856.856 INFO    ] No camera update needed
[2026-06-12 08:31:12,857.857 INFO    ] Script finished. Safe exiting...
[2026-06-12 08:31:12,859.859 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 08:31:12,862.862 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 08:31:12,865.865 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 08:31:14,906.906 INFO    ] ================================================
[2026-06-12 08:31:14,922.922 INFO    ] Launching Daemon at Fri Jun 12 08:31:14 IST 2026
[2026-06-12 08:31:14,933.933 INFO    ] ================================================
[2026-06-12 08:31:15,276.276 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 08:31:15
[2026-06-12 08:31:15,591.591 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 08:31:15,723.723 INFO    ] Initializing speech engine...
[2026-06-12 08:31:15,727.727 INFO    ] 2026-06-12 08:31:15
[2026-06-12 08:31:15,954.954 INFO    ] 2026-06-12 08:31:15
[2026-06-12 08:31:15,984.984 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 08:31:16,179.179 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 08:31:16,183.183 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 08:31:16,328.328 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 08:31:16,393.393 INFO    ] time= 12/06/2026 08:31:16
[2026-06-12 08:31:16,425.425 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 08:31:16,427.427 INFO    ] Checking for existing commands in stream...
[2026-06-12 08:31:16,501.501 INFO    ] No existing commands found in stream
[2026-06-12 08:31:21,512.512 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 08:31:21,515.515 INFO    ] Waiting 1.17 seconds before fallback handling...
[2026-06-12 08:31:23,043.043 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 08:31:23,044.044 INFO    ] Checking for system updates...
[2026-06-12 08:31:23,066.066 INFO    ] 200
[2026-06-12 08:31:23,067.067 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:31:23,097.097 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 08:31:23,099.099 INFO    ] No update needed
[2026-06-12 08:31:23,100.100 INFO    ] Checking for camera pi updates...
[2026-06-12 08:31:23,120.120 INFO    ] 200
[2026-06-12 08:31:23,121.121 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:31:23,147.147 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 08:31:23,292.292 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 08:31:23,293.293 INFO    ] No camera update needed
[2026-06-12 08:31:23,295.295 INFO    ] Script finished. Safe exiting...
[2026-06-12 08:31:23,296.296 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 08:31:23,299.299 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 08:31:23,302.302 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 08:31:25,340.340 INFO    ] ================================================
[2026-06-12 08:31:25,356.356 INFO    ] Launching Daemon at Fri Jun 12 08:31:25 IST 2026
[2026-06-12 08:31:25,366.366 INFO    ] ================================================
[2026-06-12 08:31:25,751.751 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 08:31:25
[2026-06-12 08:31:26,082.082 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 08:31:26,225.225 INFO    ] Initializing speech engine...
[2026-06-12 08:31:26,237.237 INFO    ] 2026-06-12 08:31:26
[2026-06-12 08:31:26,446.446 INFO    ] 2026-06-12 08:31:26
[2026-06-12 08:31:26,475.475 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 08:31:26,658.658 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 08:31:26,668.668 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 08:31:26,808.808 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 08:31:26,866.866 INFO    ] time= 12/06/2026 08:31:26
[2026-06-12 08:31:26,889.889 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 08:31:26,895.895 INFO    ] Checking for existing commands in stream...
[2026-06-12 08:31:26,961.961 INFO    ] No existing commands found in stream
[2026-06-12 08:31:31,971.971 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 08:31:31,973.973 INFO    ] Waiting 3.06 seconds before fallback handling...
[2026-06-12 08:31:35,418.418 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 08:31:35,420.420 INFO    ] Checking for system updates...
[2026-06-12 08:31:35,442.442 INFO    ] 200
[2026-06-12 08:31:35,443.443 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:31:35,475.475 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 08:31:35,476.476 INFO    ] No update needed
[2026-06-12 08:31:35,478.478 INFO    ] Checking for camera pi updates...
[2026-06-12 08:31:35,497.497 INFO    ] 200
[2026-06-12 08:31:35,499.499 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:31:35,525.525 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 08:31:35,569.569 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 08:31:35,571.571 INFO    ] No camera update needed
[2026-06-12 08:31:35,573.573 INFO    ] Script finished. Safe exiting...
[2026-06-12 08:31:35,574.574 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 08:31:35,577.577 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 08:31:35,580.580 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 08:31:37,619.619 INFO    ] ================================================
[2026-06-12 08:31:37,634.634 INFO    ] Launching Daemon at Fri Jun 12 08:31:37 IST 2026
[2026-06-12 08:31:37,644.644 INFO    ] ================================================
[2026-06-12 08:31:38,011.011 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 08:31:38
[2026-06-12 08:31:38,343.343 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 08:31:38,487.487 INFO    ] Initializing speech engine...
[2026-06-12 08:31:38,494.494 INFO    ] 2026-06-12 08:31:38
[2026-06-12 08:31:38,709.709 INFO    ] 2026-06-12 08:31:38
[2026-06-12 08:31:38,739.739 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 08:31:38,922.922 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 08:31:38,931.931 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 08:31:39,060.060 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 08:31:39,124.124 INFO    ] time= 12/06/2026 08:31:39
[2026-06-12 08:31:39,151.151 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 08:31:39,153.153 INFO    ] Checking for existing commands in stream...
[2026-06-12 08:31:39,225.225 INFO    ] No existing commands found in stream
[2026-06-12 08:31:44,239.239 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 08:31:44,243.243 INFO    ] Waiting 3.46 seconds before fallback handling...
[2026-06-12 08:31:47,996.996 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 08:31:47,998.998 INFO    ] Checking for system updates...
[2026-06-12 08:31:48,018.018 INFO    ] 200
[2026-06-12 08:31:48,020.020 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:31:48,050.050 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 08:31:48,052.052 INFO    ] No update needed
[2026-06-12 08:31:48,053.053 INFO    ] Checking for camera pi updates...
[2026-06-12 08:31:48,073.073 INFO    ] 200
[2026-06-12 08:31:48,074.074 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:31:48,106.106 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 08:31:48,151.151 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 08:31:48,154.154 INFO    ] No camera update needed
[2026-06-12 08:31:48,156.156 INFO    ] Script finished. Safe exiting...
[2026-06-12 08:31:48,159.159 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 08:31:48,165.165 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 08:31:48,171.171 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 08:31:50,210.210 INFO    ] ================================================
[2026-06-12 08:31:50,225.225 INFO    ] Launching Daemon at Fri Jun 12 08:31:50 IST 2026
[2026-06-12 08:31:50,236.236 INFO    ] ================================================
[2026-06-12 08:31:50,582.582 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 08:31:50
[2026-06-12 08:31:50,914.914 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 08:31:51,052.052 INFO    ] Initializing speech engine...
[2026-06-12 08:31:51,065.065 INFO    ] 2026-06-12 08:31:51
[2026-06-12 08:31:51,279.279 INFO    ] 2026-06-12 08:31:51
[2026-06-12 08:31:51,308.308 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 08:31:51,494.494 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 08:31:51,505.505 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 08:31:51,688.688 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 08:31:51,726.726 INFO    ] time= 12/06/2026 08:31:51
[2026-06-12 08:31:51,733.733 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 08:31:51,735.735 INFO    ] Checking for existing commands in stream...
[2026-06-12 08:31:51,802.802 INFO    ] No existing commands found in stream
[2026-06-12 08:31:56,816.816 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 08:31:56,819.819 INFO    ] Waiting 2.19 seconds before fallback handling...
[2026-06-12 08:31:59,386.386 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 08:31:59,387.387 INFO    ] Checking for system updates...
[2026-06-12 08:31:59,408.408 INFO    ] 200
[2026-06-12 08:31:59,410.410 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:31:59,440.440 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 08:31:59,442.442 INFO    ] No update needed
[2026-06-12 08:31:59,443.443 INFO    ] Checking for camera pi updates...
[2026-06-12 08:31:59,463.463 INFO    ] 200
[2026-06-12 08:31:59,464.464 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:31:59,488.488 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 08:31:59,526.526 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 08:31:59,527.527 INFO    ] No camera update needed
[2026-06-12 08:31:59,529.529 INFO    ] Script finished. Safe exiting...
[2026-06-12 08:31:59,530.530 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 08:31:59,533.533 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 08:31:59,536.536 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 08:32:01,575.575 INFO    ] ================================================
[2026-06-12 08:32:01,590.590 INFO    ] Launching Daemon at Fri Jun 12 08:32:01 IST 2026
[2026-06-12 08:32:01,601.601 INFO    ] ================================================
[2026-06-12 08:32:01,997.997 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 08:32:01
[2026-06-12 08:32:02,396.396 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 08:32:02,558.558 INFO    ] Initializing speech engine...
[2026-06-12 08:32:02,567.567 INFO    ] 2026-06-12 08:32:02
[2026-06-12 08:32:02,824.824 INFO    ] 2026-06-12 08:32:02
[2026-06-12 08:32:02,857.857 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 08:32:02,999.999 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 08:32:03,055.055 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 08:32:03,199.199 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 08:32:03,257.257 INFO    ] time= 12/06/2026 08:32:03
[2026-06-12 08:32:03,292.292 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 08:32:03,297.297 INFO    ] Checking for existing commands in stream...
[2026-06-12 08:32:03,369.369 INFO    ] No existing commands found in stream
[2026-06-12 08:32:08,383.383 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 08:32:08,386.386 INFO    ] Waiting 1.86 seconds before fallback handling...
[2026-06-12 08:32:10,591.591 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 08:32:10,592.592 INFO    ] Checking for system updates...
[2026-06-12 08:32:10,614.614 INFO    ] 200
[2026-06-12 08:32:10,615.615 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:32:10,645.645 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 08:32:10,646.646 INFO    ] No update needed
[2026-06-12 08:32:10,647.647 INFO    ] Checking for camera pi updates...
[2026-06-12 08:32:10,666.666 INFO    ] 200
[2026-06-12 08:32:10,668.668 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:32:10,691.691 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 08:32:10,738.738 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 08:32:10,739.739 INFO    ] No camera update needed
[2026-06-12 08:32:10,740.740 INFO    ] Script finished. Safe exiting...
[2026-06-12 08:32:10,742.742 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 08:32:10,746.746 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 08:32:10,748.748 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 08:32:12,788.788 INFO    ] ================================================
[2026-06-12 08:32:12,804.804 INFO    ] Launching Daemon at Fri Jun 12 08:32:12 IST 2026
[2026-06-12 08:32:12,815.815 INFO    ] ================================================
[2026-06-12 08:32:13,157.157 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 08:32:13
[2026-06-12 08:32:13,474.474 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 08:32:13,620.620 INFO    ] Initializing speech engine...
[2026-06-12 08:32:13,625.625 INFO    ] 2026-06-12 08:32:13
[2026-06-12 08:32:13,829.829 INFO    ] 2026-06-12 08:32:13
[2026-06-12 08:32:13,857.857 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 08:32:14,040.040 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 08:32:14,044.044 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 08:32:14,172.172 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 08:32:14,227.227 INFO    ] time= 12/06/2026 08:32:14
[2026-06-12 08:32:14,269.269 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 08:32:14,272.272 INFO    ] Checking for existing commands in stream...
[2026-06-12 08:32:14,341.341 INFO    ] No existing commands found in stream
[2026-06-12 08:32:19,352.352 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 08:32:19,355.355 INFO    ] Waiting 2.54 seconds before fallback handling...
[2026-06-12 08:32:22,221.221 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 08:32:22,222.222 INFO    ] Checking for system updates...
[2026-06-12 08:32:22,243.243 INFO    ] 200
[2026-06-12 08:32:22,244.244 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:32:22,274.274 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 08:32:22,275.275 INFO    ] No update needed
[2026-06-12 08:32:22,277.277 INFO    ] Checking for camera pi updates...
[2026-06-12 08:32:22,296.296 INFO    ] 200
[2026-06-12 08:32:22,297.297 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:32:22,322.322 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 08:32:22,358.358 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 08:32:22,360.360 INFO    ] No camera update needed
[2026-06-12 08:32:22,361.361 INFO    ] Script finished. Safe exiting...
[2026-06-12 08:32:22,363.363 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 08:32:22,365.365 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 08:32:22,369.369 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 08:32:24,411.411 INFO    ] ================================================
[2026-06-12 08:32:24,427.427 INFO    ] Launching Daemon at Fri Jun 12 08:32:24 IST 2026
[2026-06-12 08:32:24,438.438 INFO    ] ================================================
[2026-06-12 08:32:24,784.784 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 08:32:24
[2026-06-12 08:32:25,121.121 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 08:32:25,262.262 INFO    ] Initializing speech engine...
[2026-06-12 08:32:25,274.274 INFO    ] 2026-06-12 08:32:25
[2026-06-12 08:32:25,484.484 INFO    ] 2026-06-12 08:32:25
[2026-06-12 08:32:25,513.513 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 08:32:25,698.698 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 08:32:25,708.708 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 08:32:25,858.858 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 08:32:25,907.907 INFO    ] time= 12/06/2026 08:32:25
[2026-06-12 08:32:25,928.928 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 08:32:25,935.935 INFO    ] Checking for existing commands in stream...
[2026-06-12 08:32:26,002.002 INFO    ] No existing commands found in stream
[2026-06-12 08:32:31,016.016 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 08:32:31,020.020 INFO    ] Waiting 0.03 seconds before fallback handling...
[2026-06-12 08:32:31,386.386 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 08:32:31,388.388 INFO    ] Checking for system updates...
[2026-06-12 08:32:31,409.409 INFO    ] 200
[2026-06-12 08:32:31,411.411 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:32:31,442.442 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 08:32:31,443.443 INFO    ] No update needed
[2026-06-12 08:32:31,445.445 INFO    ] Checking for camera pi updates...
[2026-06-12 08:32:31,465.465 INFO    ] 200
[2026-06-12 08:32:31,467.467 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:32:31,490.490 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 08:32:31,521.521 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 08:32:31,522.522 INFO    ] No camera update needed
[2026-06-12 08:32:31,524.524 INFO    ] Script finished. Safe exiting...
[2026-06-12 08:32:31,525.525 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 08:32:31,528.528 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 08:32:31,532.532 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 08:32:33,564.564 INFO    ] ================================================
[2026-06-12 08:32:33,581.581 INFO    ] Launching Daemon at Fri Jun 12 08:32:33 IST 2026
[2026-06-12 08:32:33,605.605 INFO    ] ================================================
[2026-06-12 08:32:33,969.969 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 08:32:33
[2026-06-12 08:32:34,281.281 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 08:32:34,413.413 INFO    ] Initializing speech engine...
[2026-06-12 08:32:34,426.426 INFO    ] 2026-06-12 08:32:34
[2026-06-12 08:32:34,634.634 INFO    ] 2026-06-12 08:32:34
[2026-06-12 08:32:34,662.662 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 08:32:34,798.798 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 08:32:34,853.853 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 08:32:34,991.991 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 08:32:35,055.055 INFO    ] time= 12/06/2026 08:32:34
[2026-06-12 08:32:35,083.083 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 08:32:35,089.089 INFO    ] Checking for existing commands in stream...
[2026-06-12 08:32:35,156.156 INFO    ] No existing commands found in stream
[2026-06-12 08:32:40,165.165 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 08:32:40,167.167 INFO    ] Waiting 1.85 seconds before fallback handling...
[2026-06-12 08:32:42,368.368 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 08:32:42,369.369 INFO    ] Checking for system updates...
[2026-06-12 08:32:42,390.390 INFO    ] 200
[2026-06-12 08:32:42,391.391 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:32:42,424.424 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 08:32:42,425.425 INFO    ] No update needed
[2026-06-12 08:32:42,426.426 INFO    ] Checking for camera pi updates...
[2026-06-12 08:32:42,446.446 INFO    ] 200
[2026-06-12 08:32:42,447.447 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:32:42,470.470 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 08:32:42,508.508 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 08:32:42,510.510 INFO    ] No camera update needed
[2026-06-12 08:32:42,511.511 INFO    ] Script finished. Safe exiting...
[2026-06-12 08:32:42,512.512 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 08:32:42,515.515 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 08:32:42,518.518 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 08:32:44,559.559 INFO    ] ================================================
[2026-06-12 08:32:44,575.575 INFO    ] Launching Daemon at Fri Jun 12 08:32:44 IST 2026
[2026-06-12 08:32:44,586.586 INFO    ] ================================================
[2026-06-12 08:32:44,952.952 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 08:32:44
[2026-06-12 08:32:45,268.268 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 08:32:45,403.403 INFO    ] Initializing speech engine...
[2026-06-12 08:32:45,407.407 INFO    ] 2026-06-12 08:32:45
[2026-06-12 08:32:45,636.636 INFO    ] 2026-06-12 08:32:45
[2026-06-12 08:32:45,667.667 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 08:32:45,798.798 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 08:32:45,842.842 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 08:32:46,012.012 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 08:32:46,064.064 INFO    ] time= 12/06/2026 08:32:46
[2026-06-12 08:32:46,109.109 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 08:32:46,115.115 INFO    ] Checking for existing commands in stream...
[2026-06-12 08:32:46,193.193 INFO    ] No existing commands found in stream
[2026-06-12 08:32:51,202.202 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 08:32:51,204.204 INFO    ] Waiting 2.03 seconds before fallback handling...
[2026-06-12 08:32:53,587.587 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 08:32:53,588.588 INFO    ] Checking for system updates...
[2026-06-12 08:32:53,609.609 INFO    ] 200
[2026-06-12 08:32:53,611.611 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:32:53,644.644 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 08:32:53,645.645 INFO    ] No update needed
[2026-06-12 08:32:53,647.647 INFO    ] Checking for camera pi updates...
[2026-06-12 08:32:53,669.669 INFO    ] 200
[2026-06-12 08:32:53,671.671 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:32:53,699.699 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 08:32:53,741.741 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 08:32:53,742.742 INFO    ] No camera update needed
[2026-06-12 08:32:53,743.743 INFO    ] Script finished. Safe exiting...
[2026-06-12 08:32:53,745.745 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 08:32:53,748.748 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 08:32:53,751.751 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 08:32:55,790.790 INFO    ] ================================================
[2026-06-12 08:32:55,805.805 INFO    ] Launching Daemon at Fri Jun 12 08:32:55 IST 2026
[2026-06-12 08:32:55,815.815 INFO    ] ================================================
[2026-06-12 08:32:56,173.173 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 08:32:56
[2026-06-12 08:32:56,490.490 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 08:32:56,622.622 INFO    ] Initializing speech engine...
[2026-06-12 08:32:56,630.630 INFO    ] 2026-06-12 08:32:56
[2026-06-12 08:32:56,844.844 INFO    ] 2026-06-12 08:32:56
[2026-06-12 08:32:56,873.873 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 08:32:57,056.056 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 08:32:57,065.065 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 08:32:57,197.197 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 08:32:57,264.264 INFO    ] time= 12/06/2026 08:32:57
[2026-06-12 08:32:57,288.288 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 08:32:57,294.294 INFO    ] Checking for existing commands in stream...
[2026-06-12 08:32:57,362.362 INFO    ] No existing commands found in stream
[2026-06-12 08:33:02,371.371 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 08:33:02,373.373 INFO    ] Waiting 1.79 seconds before fallback handling...
[2026-06-12 08:33:04,518.518 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 08:33:04,520.520 INFO    ] Checking for system updates...
[2026-06-12 08:33:04,541.541 INFO    ] 200
[2026-06-12 08:33:04,542.542 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:33:04,574.574 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 08:33:04,575.575 INFO    ] No update needed
[2026-06-12 08:33:04,577.577 INFO    ] Checking for camera pi updates...
[2026-06-12 08:33:04,596.596 INFO    ] 200
[2026-06-12 08:33:04,597.597 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:33:04,621.621 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 08:33:04,659.659 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 08:33:04,661.661 INFO    ] No camera update needed
[2026-06-12 08:33:04,662.662 INFO    ] Script finished. Safe exiting...
[2026-06-12 08:33:04,663.663 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 08:33:04,666.666 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 08:33:04,669.669 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 08:33:06,709.709 INFO    ] ================================================
[2026-06-12 08:33:06,725.725 INFO    ] Launching Daemon at Fri Jun 12 08:33:06 IST 2026
[2026-06-12 08:33:06,735.735 INFO    ] ================================================
[2026-06-12 08:33:07,086.086 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 08:33:07
[2026-06-12 08:33:07,419.419 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 08:33:07,568.568 INFO    ] Initializing speech engine...
[2026-06-12 08:33:07,573.573 INFO    ] 2026-06-12 08:33:07
[2026-06-12 08:33:07,784.784 INFO    ] 2026-06-12 08:33:07
[2026-06-12 08:33:07,813.813 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 08:33:07,999.999 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 08:33:08,009.009 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 08:33:08,146.146 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 08:33:08,209.209 INFO    ] time= 12/06/2026 08:33:08
[2026-06-12 08:33:08,234.234 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 08:33:08,240.240 INFO    ] Checking for existing commands in stream...
[2026-06-12 08:33:08,308.308 INFO    ] No existing commands found in stream
[2026-06-12 08:33:13,318.318 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 08:33:13,321.321 INFO    ] Waiting 3.36 seconds before fallback handling...
[2026-06-12 08:33:17,064.064 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 08:33:17,066.066 INFO    ] Checking for system updates...
[2026-06-12 08:33:17,089.089 INFO    ] 200
[2026-06-12 08:33:17,090.090 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:33:17,123.123 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 08:33:17,125.125 INFO    ] No update needed
[2026-06-12 08:33:17,126.126 INFO    ] Checking for camera pi updates...
[2026-06-12 08:33:17,146.146 INFO    ] 200
[2026-06-12 08:33:17,147.147 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:33:17,171.171 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 08:33:17,207.207 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 08:33:17,209.209 INFO    ] No camera update needed
[2026-06-12 08:33:17,210.210 INFO    ] Script finished. Safe exiting...
[2026-06-12 08:33:17,212.212 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 08:33:17,215.215 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 08:33:17,218.218 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 08:33:19,256.256 INFO    ] ================================================
[2026-06-12 08:33:19,271.271 INFO    ] Launching Daemon at Fri Jun 12 08:33:19 IST 2026
[2026-06-12 08:33:19,282.282 INFO    ] ================================================
[2026-06-12 08:33:19,603.603 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 08:33:19
[2026-06-12 08:33:19,914.914 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 08:33:20,055.055 INFO    ] Initializing speech engine...
[2026-06-12 08:33:20,066.066 INFO    ] 2026-06-12 08:33:20
[2026-06-12 08:33:20,280.280 INFO    ] 2026-06-12 08:33:20
[2026-06-12 08:33:20,310.310 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 08:33:20,496.496 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 08:33:20,497.497 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 08:33:20,655.655 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 08:33:20,718.718 INFO    ] time= 12/06/2026 08:33:20
[2026-06-12 08:33:20,742.742 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 08:33:20,748.748 INFO    ] Checking for existing commands in stream...
[2026-06-12 08:33:20,817.817 INFO    ] No existing commands found in stream
[2026-06-12 08:33:25,826.826 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 08:33:25,828.828 INFO    ] Waiting 3.54 seconds before fallback handling...
[2026-06-12 08:33:30,133.133 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 08:33:30,134.134 INFO    ] Checking for system updates...
[2026-06-12 08:33:30,155.155 INFO    ] 200
[2026-06-12 08:33:30,156.156 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:33:30,188.188 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 08:33:30,189.189 INFO    ] No update needed
[2026-06-12 08:33:30,191.191 INFO    ] Checking for camera pi updates...
[2026-06-12 08:33:30,212.212 INFO    ] 200
[2026-06-12 08:33:30,214.214 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:33:30,240.240 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 08:33:30,383.383 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 08:33:30,385.385 INFO    ] No camera update needed
[2026-06-12 08:33:30,388.388 INFO    ] Script finished. Safe exiting...
[2026-06-12 08:33:30,390.390 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 08:33:30,395.395 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 08:33:30,400.400 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 08:33:32,441.441 INFO    ] ================================================
[2026-06-12 08:33:32,456.456 INFO    ] Launching Daemon at Fri Jun 12 08:33:32 IST 2026
[2026-06-12 08:33:32,467.467 INFO    ] ================================================
[2026-06-12 08:33:32,796.796 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 08:33:32
[2026-06-12 08:33:33,107.107 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 08:33:33,251.251 INFO    ] Initializing speech engine...
[2026-06-12 08:33:33,255.255 INFO    ] 2026-06-12 08:33:33
[2026-06-12 08:33:33,462.462 INFO    ] 2026-06-12 08:33:33
[2026-06-12 08:33:33,491.491 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 08:33:33,677.677 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 08:33:33,681.681 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 08:33:33,813.813 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 08:33:33,858.858 INFO    ] time= 12/06/2026 08:33:33
[2026-06-12 08:33:33,899.899 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 08:33:33,914.914 INFO    ] Checking for existing commands in stream...
[2026-06-12 08:33:33,985.985 INFO    ] No existing commands found in stream
[2026-06-12 08:33:38,996.996 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 08:33:38,998.998 INFO    ] Waiting 1.60 seconds before fallback handling...
[2026-06-12 08:33:41,372.372 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 08:33:41,373.373 INFO    ] Checking for system updates...
[2026-06-12 08:33:41,394.394 INFO    ] 200
[2026-06-12 08:33:41,395.395 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:33:41,430.430 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 08:33:41,431.431 INFO    ] No update needed
[2026-06-12 08:33:41,432.432 INFO    ] Checking for camera pi updates...
[2026-06-12 08:33:41,452.452 INFO    ] 200
[2026-06-12 08:33:41,453.453 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:33:41,478.478 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 08:33:41,513.513 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 08:33:41,514.514 INFO    ] No camera update needed
[2026-06-12 08:33:41,515.515 INFO    ] Script finished. Safe exiting...
[2026-06-12 08:33:41,517.517 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 08:33:41,519.519 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 08:33:41,522.522 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 08:33:43,560.560 INFO    ] ================================================
[2026-06-12 08:33:43,575.575 INFO    ] Launching Daemon at Fri Jun 12 08:33:43 IST 2026
[2026-06-12 08:33:43,586.586 INFO    ] ================================================
[2026-06-12 08:33:43,933.933 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 08:33:43
[2026-06-12 08:33:44,249.249 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 08:33:44,392.392 INFO    ] Initializing speech engine...
[2026-06-12 08:33:44,398.398 INFO    ] 2026-06-12 08:33:44
[2026-06-12 08:33:44,600.600 INFO    ] 2026-06-12 08:33:44
[2026-06-12 08:33:44,630.630 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 08:33:44,813.813 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 08:33:44,823.823 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 08:33:44,952.952 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 08:33:45,011.011 INFO    ] time= 12/06/2026 08:33:44
[2026-06-12 08:33:45,043.043 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 08:33:45,049.049 INFO    ] Checking for existing commands in stream...
[2026-06-12 08:33:45,116.116 INFO    ] No existing commands found in stream
[2026-06-12 08:33:50,130.130 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 08:33:50,133.133 INFO    ] Waiting 3.00 seconds before fallback handling...
[2026-06-12 08:33:53,525.525 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 08:33:53,526.526 INFO    ] Checking for system updates...
[2026-06-12 08:33:53,547.547 INFO    ] 200
[2026-06-12 08:33:53,548.548 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:33:53,578.578 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 08:33:53,580.580 INFO    ] No update needed
[2026-06-12 08:33:53,581.581 INFO    ] Checking for camera pi updates...
[2026-06-12 08:33:53,601.601 INFO    ] 200
[2026-06-12 08:33:53,602.602 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:33:53,625.625 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 08:33:53,673.673 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 08:33:53,674.674 INFO    ] No camera update needed
[2026-06-12 08:33:53,676.676 INFO    ] Script finished. Safe exiting...
[2026-06-12 08:33:53,677.677 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 08:33:53,680.680 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 08:33:53,683.683 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 08:33:55,722.722 INFO    ] ================================================
[2026-06-12 08:33:55,737.737 INFO    ] Launching Daemon at Fri Jun 12 08:33:55 IST 2026
[2026-06-12 08:33:55,748.748 INFO    ] ================================================
[2026-06-12 08:33:56,092.092 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 08:33:56
[2026-06-12 08:33:56,403.403 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 08:33:56,546.546 INFO    ] Initializing speech engine...
[2026-06-12 08:33:56,552.552 INFO    ] 2026-06-12 08:33:56
[2026-06-12 08:33:56,758.758 INFO    ] 2026-06-12 08:33:56
[2026-06-12 08:33:56,788.788 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 08:33:56,974.974 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 08:33:56,983.983 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 08:33:57,114.114 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 08:33:57,182.182 INFO    ] time= 12/06/2026 08:33:57
[2026-06-12 08:33:57,206.206 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 08:33:57,212.212 INFO    ] Checking for existing commands in stream...
[2026-06-12 08:33:57,279.279 INFO    ] No existing commands found in stream
[2026-06-12 08:34:02,292.292 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 08:34:02,294.294 INFO    ] Waiting 1.51 seconds before fallback handling...
[2026-06-12 08:34:04,158.158 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 08:34:04,159.159 INFO    ] Checking for system updates...
[2026-06-12 08:34:04,181.181 INFO    ] 200
[2026-06-12 08:34:04,182.182 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:34:04,212.212 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 08:34:04,214.214 INFO    ] No update needed
[2026-06-12 08:34:04,215.215 INFO    ] Checking for camera pi updates...
[2026-06-12 08:34:04,236.236 INFO    ] 200
[2026-06-12 08:34:04,237.237 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:34:04,262.262 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 08:34:04,298.298 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 08:34:04,299.299 INFO    ] No camera update needed
[2026-06-12 08:34:04,301.301 INFO    ] Script finished. Safe exiting...
[2026-06-12 08:34:04,302.302 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 08:34:04,305.305 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 08:34:04,308.308 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 08:34:06,345.345 INFO    ] ================================================
[2026-06-12 08:34:06,360.360 INFO    ] Launching Daemon at Fri Jun 12 08:34:06 IST 2026
[2026-06-12 08:34:06,371.371 INFO    ] ================================================
[2026-06-12 08:34:06,720.720 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 08:34:06
[2026-06-12 08:34:07,031.031 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 08:34:07,162.162 INFO    ] Initializing speech engine...
[2026-06-12 08:34:07,175.175 INFO    ] 2026-06-12 08:34:07
[2026-06-12 08:34:07,384.384 INFO    ] 2026-06-12 08:34:07
[2026-06-12 08:34:07,413.413 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 08:34:07,537.537 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 08:34:07,600.600 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 08:34:07,739.739 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 08:34:07,807.807 INFO    ] time= 12/06/2026 08:34:07
[2026-06-12 08:34:07,832.832 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 08:34:07,838.838 INFO    ] Checking for existing commands in stream...
[2026-06-12 08:34:07,906.906 INFO    ] No existing commands found in stream
[2026-06-12 08:34:12,915.915 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 08:34:12,917.917 INFO    ] Waiting 2.17 seconds before fallback handling...
[2026-06-12 08:34:15,472.472 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 08:34:15,474.474 INFO    ] Checking for system updates...
[2026-06-12 08:34:15,495.495 INFO    ] 200
[2026-06-12 08:34:15,496.496 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:34:15,526.526 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 08:34:15,528.528 INFO    ] No update needed
[2026-06-12 08:34:15,529.529 INFO    ] Checking for camera pi updates...
[2026-06-12 08:34:15,549.549 INFO    ] 200
[2026-06-12 08:34:15,551.551 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:34:15,575.575 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 08:34:15,609.609 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 08:34:15,610.610 INFO    ] No camera update needed
[2026-06-12 08:34:15,612.612 INFO    ] Script finished. Safe exiting...
[2026-06-12 08:34:15,613.613 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 08:34:15,616.616 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 08:34:15,619.619 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 08:34:17,662.662 INFO    ] ================================================
[2026-06-12 08:34:17,677.677 INFO    ] Launching Daemon at Fri Jun 12 08:34:17 IST 2026
[2026-06-12 08:34:17,688.688 INFO    ] ================================================
[2026-06-12 08:34:18,010.010 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 08:34:18
[2026-06-12 08:34:18,321.321 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 08:34:18,453.453 INFO    ] Initializing speech engine...
[2026-06-12 08:34:18,460.460 INFO    ] 2026-06-12 08:34:18
[2026-06-12 08:34:18,674.674 INFO    ] 2026-06-12 08:34:18
[2026-06-12 08:34:18,703.703 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 08:34:18,887.887 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 08:34:18,891.891 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 08:34:19,030.030 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 08:34:19,098.098 INFO    ] time= 12/06/2026 08:34:19
[2026-06-12 08:34:19,122.122 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 08:34:19,128.128 INFO    ] Checking for existing commands in stream...
[2026-06-12 08:34:19,194.194 INFO    ] No existing commands found in stream
[2026-06-12 08:34:24,204.204 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 08:34:24,207.207 INFO    ] Waiting 2.02 seconds before fallback handling...
[2026-06-12 08:34:26,595.595 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 08:34:26,596.596 INFO    ] Checking for system updates...
[2026-06-12 08:34:26,618.618 INFO    ] 200
[2026-06-12 08:34:26,619.619 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:34:26,649.649 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 08:34:26,651.651 INFO    ] No update needed
[2026-06-12 08:34:26,652.652 INFO    ] Checking for camera pi updates...
[2026-06-12 08:34:26,673.673 INFO    ] 200
[2026-06-12 08:34:26,674.674 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:34:26,697.697 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 08:34:26,737.737 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 08:34:26,739.739 INFO    ] No camera update needed
[2026-06-12 08:34:26,740.740 INFO    ] Script finished. Safe exiting...
[2026-06-12 08:34:26,741.741 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 08:34:26,744.744 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 08:34:26,747.747 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 08:34:28,789.789 INFO    ] ================================================
[2026-06-12 08:34:28,804.804 INFO    ] Launching Daemon at Fri Jun 12 08:34:28 IST 2026
[2026-06-12 08:34:28,815.815 INFO    ] ================================================
[2026-06-12 08:34:29,208.208 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 08:34:29
[2026-06-12 08:34:29,532.532 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 08:34:29,668.668 INFO    ] Initializing speech engine...
[2026-06-12 08:34:29,678.678 INFO    ] 2026-06-12 08:34:29
[2026-06-12 08:34:29,882.882 INFO    ] 2026-06-12 08:34:29
[2026-06-12 08:34:29,911.911 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 08:34:30,094.094 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 08:34:30,098.098 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 08:34:30,225.225 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 08:34:30,281.281 INFO    ] time= 12/06/2026 08:34:30
[2026-06-12 08:34:30,315.315 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 08:34:30,325.325 INFO    ] Checking for existing commands in stream...
[2026-06-12 08:34:30,395.395 INFO    ] No existing commands found in stream
[2026-06-12 08:34:35,405.405 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 08:34:35,408.408 INFO    ] Waiting 1.62 seconds before fallback handling...
[2026-06-12 08:34:37,375.375 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 08:34:37,377.377 INFO    ] Checking for system updates...
[2026-06-12 08:34:37,399.399 INFO    ] 200
[2026-06-12 08:34:37,400.400 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:34:37,432.432 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 08:34:37,434.434 INFO    ] No update needed
[2026-06-12 08:34:37,435.435 INFO    ] Checking for camera pi updates...
[2026-06-12 08:34:37,454.454 INFO    ] 200
[2026-06-12 08:34:37,455.455 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:34:37,478.478 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 08:34:37,515.515 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 08:34:37,516.516 INFO    ] No camera update needed
[2026-06-12 08:34:37,517.517 INFO    ] Script finished. Safe exiting...
[2026-06-12 08:34:37,518.518 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 08:34:37,521.521 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 08:34:37,524.524 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 08:34:39,562.562 INFO    ] ================================================
[2026-06-12 08:34:39,577.577 INFO    ] Launching Daemon at Fri Jun 12 08:34:39 IST 2026
[2026-06-12 08:34:39,587.587 INFO    ] ================================================
[2026-06-12 08:34:39,937.937 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 08:34:39
[2026-06-12 08:34:40,248.248 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 08:34:40,381.381 INFO    ] Initializing speech engine...
[2026-06-12 08:34:40,385.385 INFO    ] 2026-06-12 08:34:40
[2026-06-12 08:34:40,615.615 INFO    ] 2026-06-12 08:34:40
[2026-06-12 08:34:40,646.646 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 08:34:40,835.835 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 08:34:40,838.838 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 08:34:40,969.969 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 08:34:41,031.031 INFO    ] time= 12/06/2026 08:34:40
[2026-06-12 08:34:41,063.063 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 08:34:41,069.069 INFO    ] Checking for existing commands in stream...
[2026-06-12 08:34:41,136.136 INFO    ] No existing commands found in stream
[2026-06-12 08:34:46,145.145 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 08:34:46,148.148 INFO    ] Waiting 0.06 seconds before fallback handling...
[2026-06-12 08:34:46,569.569 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 08:34:46,570.570 INFO    ] Checking for system updates...
[2026-06-12 08:34:46,592.592 INFO    ] 200
[2026-06-12 08:34:46,593.593 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:34:46,626.626 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 08:34:46,627.627 INFO    ] No update needed
[2026-06-12 08:34:46,629.629 INFO    ] Checking for camera pi updates...
[2026-06-12 08:34:46,648.648 INFO    ] 200
[2026-06-12 08:34:46,649.649 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:34:46,674.674 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 08:34:46,714.714 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 08:34:46,715.715 INFO    ] No camera update needed
[2026-06-12 08:34:46,716.716 INFO    ] Script finished. Safe exiting...
[2026-06-12 08:34:46,717.717 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 08:34:46,720.720 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 08:34:46,723.723 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 08:34:48,762.762 INFO    ] ================================================
[2026-06-12 08:34:48,777.777 INFO    ] Launching Daemon at Fri Jun 12 08:34:48 IST 2026
[2026-06-12 08:34:48,788.788 INFO    ] ================================================
[2026-06-12 08:34:49,178.178 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 08:34:49
[2026-06-12 08:34:49,490.490 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 08:34:49,632.632 INFO    ] Initializing speech engine...
[2026-06-12 08:34:49,638.638 INFO    ] 2026-06-12 08:34:49
[2026-06-12 08:34:49,842.842 INFO    ] 2026-06-12 08:34:49
[2026-06-12 08:34:49,870.870 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 08:34:50,053.053 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 08:34:50,056.056 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 08:34:50,203.203 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 08:34:50,259.259 INFO    ] time= 12/06/2026 08:34:50
[2026-06-12 08:34:50,283.283 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 08:34:50,290.290 INFO    ] Checking for existing commands in stream...
[2026-06-12 08:34:50,360.360 INFO    ] No existing commands found in stream
[2026-06-12 08:34:55,374.374 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 08:34:55,377.377 INFO    ] Waiting 2.86 seconds before fallback handling...
[2026-06-12 08:34:58,625.625 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 08:34:58,626.626 INFO    ] Checking for system updates...
[2026-06-12 08:34:58,650.650 INFO    ] 200
[2026-06-12 08:34:58,651.651 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:34:58,684.684 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 08:34:58,686.686 INFO    ] No update needed
[2026-06-12 08:34:58,687.687 INFO    ] Checking for camera pi updates...
[2026-06-12 08:34:58,707.707 INFO    ] 200
[2026-06-12 08:34:58,708.708 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:34:58,736.736 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 08:34:58,775.775 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 08:34:58,777.777 INFO    ] No camera update needed
[2026-06-12 08:34:58,778.778 INFO    ] Script finished. Safe exiting...
[2026-06-12 08:34:58,779.779 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 08:34:58,782.782 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 08:34:58,785.785 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 08:35:00,823.823 INFO    ] ================================================
[2026-06-12 08:35:00,838.838 INFO    ] Launching Daemon at Fri Jun 12 08:35:00 IST 2026
[2026-06-12 08:35:00,849.849 INFO    ] ================================================
[2026-06-12 08:35:01,178.178 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 08:35:01
[2026-06-12 08:35:01,517.517 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 08:35:01,659.659 INFO    ] Initializing speech engine...
[2026-06-12 08:35:01,673.673 INFO    ] 2026-06-12 08:35:01
[2026-06-12 08:35:02,051.051 INFO    ] 2026-06-12 08:35:02
[2026-06-12 08:35:02,081.081 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 08:35:02,226.226 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 08:35:02,228.228 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 08:35:02,360.360 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 08:35:02,419.419 INFO    ] time= 12/06/2026 08:35:02
[2026-06-12 08:35:02,433.433 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 08:35:02,438.438 INFO    ] Checking for existing commands in stream...
[2026-06-12 08:35:02,532.532 INFO    ] No existing commands found in stream
[2026-06-12 08:35:07,572.572 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 08:35:07,575.575 INFO    ] Waiting 2.28 seconds before fallback handling...
[2026-06-12 08:35:10,272.272 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 08:35:10,273.273 INFO    ] Checking for system updates...
[2026-06-12 08:35:10,295.295 INFO    ] 200
[2026-06-12 08:35:10,296.296 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:35:10,329.329 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 08:35:10,330.330 INFO    ] No update needed
[2026-06-12 08:35:10,332.332 INFO    ] Checking for camera pi updates...
[2026-06-12 08:35:10,351.351 INFO    ] 200
[2026-06-12 08:35:10,352.352 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:35:10,377.377 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 08:35:10,414.414 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 08:35:10,415.415 INFO    ] No camera update needed
[2026-06-12 08:35:10,416.416 INFO    ] Script finished. Safe exiting...
[2026-06-12 08:35:10,418.418 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 08:35:10,421.421 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 08:35:10,423.423 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 08:35:12,461.461 INFO    ] ================================================
[2026-06-12 08:35:12,477.477 INFO    ] Launching Daemon at Fri Jun 12 08:35:12 IST 2026
[2026-06-12 08:35:12,488.488 INFO    ] ================================================
[2026-06-12 08:35:12,832.832 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 08:35:12
[2026-06-12 08:35:13,172.172 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 08:35:13,343.343 INFO    ] Initializing speech engine...
[2026-06-12 08:35:13,356.356 INFO    ] 2026-06-12 08:35:13
[2026-06-12 08:35:13,575.575 INFO    ] 2026-06-12 08:35:13
[2026-06-12 08:35:13,605.605 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 08:35:13,789.789 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 08:35:13,798.798 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 08:35:13,925.925 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 08:35:13,987.987 INFO    ] time= 12/06/2026 08:35:13
[2026-06-12 08:35:14,020.020 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 08:35:14,027.027 INFO    ] Checking for existing commands in stream...
[2026-06-12 08:35:14,117.117 INFO    ] No existing commands found in stream
[2026-06-12 08:35:19,121.121 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 08:35:19,123.123 INFO    ] Waiting 3.70 seconds before fallback handling...
[2026-06-12 08:35:23,191.191 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 08:35:23,192.192 INFO    ] Checking for system updates...
[2026-06-12 08:35:23,214.214 INFO    ] 200
[2026-06-12 08:35:23,216.216 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:35:23,246.246 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 08:35:23,248.248 INFO    ] No update needed
[2026-06-12 08:35:23,249.249 INFO    ] Checking for camera pi updates...
[2026-06-12 08:35:23,269.269 INFO    ] 200
[2026-06-12 08:35:23,271.271 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:35:23,296.296 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 08:35:23,331.331 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 08:35:23,332.332 INFO    ] No camera update needed
[2026-06-12 08:35:23,334.334 INFO    ] Script finished. Safe exiting...
[2026-06-12 08:35:23,335.335 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 08:35:23,338.338 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 08:35:23,341.341 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 08:35:25,381.381 INFO    ] ================================================
[2026-06-12 08:35:25,397.397 INFO    ] Launching Daemon at Fri Jun 12 08:35:25 IST 2026
[2026-06-12 08:35:25,407.407 INFO    ] ================================================
[2026-06-12 08:35:25,748.748 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 08:35:25
[2026-06-12 08:35:26,064.064 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 08:35:26,196.196 INFO    ] Initializing speech engine...
[2026-06-12 08:35:26,199.199 INFO    ] 2026-06-12 08:35:26
[2026-06-12 08:35:26,419.419 INFO    ] 2026-06-12 08:35:26
[2026-06-12 08:35:26,447.447 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 08:35:26,630.630 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 08:35:26,640.640 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 08:35:26,761.761 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 08:35:26,806.806 INFO    ] time= 12/06/2026 08:35:26
[2026-06-12 08:35:26,851.851 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 08:35:26,861.861 INFO    ] Checking for existing commands in stream...
[2026-06-12 08:35:26,932.932 INFO    ] No existing commands found in stream
[2026-06-12 08:35:31,941.941 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 08:35:31,945.945 INFO    ] Waiting 0.66 seconds before fallback handling...
[2026-06-12 08:35:32,949.949 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 08:35:32,951.951 INFO    ] Checking for system updates...
[2026-06-12 08:35:32,989.989 INFO    ] 200
[2026-06-12 08:35:32,993.993 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:35:33,046.046 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 08:35:33,049.049 INFO    ] No update needed
[2026-06-12 08:35:33,052.052 INFO    ] Checking for camera pi updates...
[2026-06-12 08:35:33,087.087 INFO    ] 200
[2026-06-12 08:35:33,090.090 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:35:33,138.138 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 08:35:33,179.179 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 08:35:33,182.182 INFO    ] No camera update needed
[2026-06-12 08:35:33,185.185 INFO    ] Script finished. Safe exiting...
[2026-06-12 08:35:33,188.188 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 08:35:33,193.193 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 08:35:33,196.196 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 08:35:35,234.234 INFO    ] ================================================
[2026-06-12 08:35:35,254.254 INFO    ] Launching Daemon at Fri Jun 12 08:35:35 IST 2026
[2026-06-12 08:35:35,265.265 INFO    ] ================================================
[2026-06-12 08:35:35,599.599 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 08:35:35
[2026-06-12 08:35:35,911.911 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 08:35:36,044.044 INFO    ] Initializing speech engine...
[2026-06-12 08:35:36,056.056 INFO    ] 2026-06-12 08:35:36
[2026-06-12 08:35:36,261.261 INFO    ] 2026-06-12 08:35:36
[2026-06-12 08:35:36,291.291 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 08:35:36,474.474 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 08:35:36,478.478 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 08:35:36,614.614 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 08:35:36,679.679 INFO    ] time= 12/06/2026 08:35:36
[2026-06-12 08:35:36,706.706 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 08:35:36,708.708 INFO    ] Checking for existing commands in stream...
[2026-06-12 08:35:36,780.780 INFO    ] No existing commands found in stream
[2026-06-12 08:35:41,789.789 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 08:35:41,792.792 INFO    ] Waiting 0.12 seconds before fallback handling...
[2026-06-12 08:35:42,279.279 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 08:35:42,281.281 INFO    ] Checking for system updates...
[2026-06-12 08:35:42,302.302 INFO    ] 200
[2026-06-12 08:35:42,304.304 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:35:42,334.334 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 08:35:42,335.335 INFO    ] No update needed
[2026-06-12 08:35:42,336.336 INFO    ] Checking for camera pi updates...
[2026-06-12 08:35:42,357.357 INFO    ] 200
[2026-06-12 08:35:42,358.358 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:35:42,383.383 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 08:35:42,422.422 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 08:35:42,424.424 INFO    ] No camera update needed
[2026-06-12 08:35:42,425.425 INFO    ] Script finished. Safe exiting...
[2026-06-12 08:35:42,426.426 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 08:35:42,429.429 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 08:35:42,432.432 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 08:35:44,473.473 INFO    ] ================================================
[2026-06-12 08:35:44,488.488 INFO    ] Launching Daemon at Fri Jun 12 08:35:44 IST 2026
[2026-06-12 08:35:44,499.499 INFO    ] ================================================
[2026-06-12 08:35:44,839.839 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 08:35:44
[2026-06-12 08:35:45,154.154 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 08:35:45,284.284 INFO    ] Initializing speech engine...
[2026-06-12 08:35:45,289.289 INFO    ] 2026-06-12 08:35:45
[2026-06-12 08:35:45,508.508 INFO    ] 2026-06-12 08:35:45
[2026-06-12 08:35:45,537.537 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 08:35:45,725.725 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 08:35:45,733.733 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 08:35:45,857.857 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 08:35:45,903.903 INFO    ] time= 12/06/2026 08:35:45
[2026-06-12 08:35:45,937.937 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 08:35:45,959.959 INFO    ] Checking for existing commands in stream...
[2026-06-12 08:35:46,032.032 INFO    ] No existing commands found in stream
[2026-06-12 08:35:51,041.041 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 08:35:51,043.043 INFO    ] Waiting 1.62 seconds before fallback handling...
[2026-06-12 08:35:53,028.028 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 08:35:53,030.030 INFO    ] Checking for system updates...
[2026-06-12 08:35:53,050.050 INFO    ] 200
[2026-06-12 08:35:53,052.052 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:35:53,083.083 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 08:35:53,084.084 INFO    ] No update needed
[2026-06-12 08:35:53,085.085 INFO    ] Checking for camera pi updates...
[2026-06-12 08:35:53,105.105 INFO    ] 200
[2026-06-12 08:35:53,106.106 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:35:53,131.131 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 08:35:53,172.172 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 08:35:53,173.173 INFO    ] No camera update needed
[2026-06-12 08:35:53,174.174 INFO    ] Script finished. Safe exiting...
[2026-06-12 08:35:53,175.175 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 08:35:53,178.178 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 08:35:53,181.181 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 08:35:55,220.220 INFO    ] ================================================
[2026-06-12 08:35:55,235.235 INFO    ] Launching Daemon at Fri Jun 12 08:35:55 IST 2026
[2026-06-12 08:35:55,246.246 INFO    ] ================================================
[2026-06-12 08:35:55,619.619 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 08:35:55
[2026-06-12 08:35:55,958.958 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 08:35:56,097.097 INFO    ] Initializing speech engine...
[2026-06-12 08:35:56,110.110 INFO    ] 2026-06-12 08:35:56
[2026-06-12 08:35:56,322.322 INFO    ] 2026-06-12 08:35:56
[2026-06-12 08:35:56,351.351 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 08:35:56,536.536 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 08:35:56,545.545 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 08:35:56,690.690 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 08:35:56,744.744 INFO    ] time= 12/06/2026 08:35:56
[2026-06-12 08:35:56,766.766 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 08:35:56,773.773 INFO    ] Checking for existing commands in stream...
[2026-06-12 08:35:56,840.840 INFO    ] No existing commands found in stream
[2026-06-12 08:36:01,851.851 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 08:36:01,853.853 INFO    ] Waiting 0.66 seconds before fallback handling...
[2026-06-12 08:36:02,869.869 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 08:36:02,871.871 INFO    ] Checking for system updates...
[2026-06-12 08:36:02,892.892 INFO    ] 200
[2026-06-12 08:36:02,893.893 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:36:02,927.927 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 08:36:02,928.928 INFO    ] No update needed
[2026-06-12 08:36:02,930.930 INFO    ] Checking for camera pi updates...
[2026-06-12 08:36:02,949.949 INFO    ] 200
[2026-06-12 08:36:02,951.951 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:36:02,975.975 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 08:36:02,997.997 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 08:36:02,998.998 INFO    ] No camera update needed
[2026-06-12 08:36:03,000.000 INFO    ] Script finished. Safe exiting...
[2026-06-12 08:36:03,001.001 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 08:36:03,004.004 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 08:36:03,007.007 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 08:36:05,047.047 INFO    ] ================================================
[2026-06-12 08:36:05,062.062 INFO    ] Launching Daemon at Fri Jun 12 08:36:05 IST 2026
[2026-06-12 08:36:05,074.074 INFO    ] ================================================
[2026-06-12 08:36:05,423.423 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 08:36:05
[2026-06-12 08:36:05,740.740 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 08:36:05,879.879 INFO    ] Initializing speech engine...
[2026-06-12 08:36:05,889.889 INFO    ] 2026-06-12 08:36:05
[2026-06-12 08:36:06,094.094 INFO    ] 2026-06-12 08:36:06
[2026-06-12 08:36:06,111.111 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 08:36:06,255.255 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 08:36:06,303.303 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 08:36:06,463.463 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 08:36:06,520.520 INFO    ] time= 12/06/2026 08:36:06
[2026-06-12 08:36:06,565.565 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 08:36:06,571.571 INFO    ] Checking for existing commands in stream...
[2026-06-12 08:36:06,675.675 INFO    ] No existing commands found in stream
[2026-06-12 08:36:11,682.682 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 08:36:11,685.685 INFO    ] Waiting 0.43 seconds before fallback handling...
[2026-06-12 08:36:12,498.498 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 08:36:12,500.500 INFO    ] Checking for system updates...
[2026-06-12 08:36:12,521.521 INFO    ] 200
[2026-06-12 08:36:12,522.522 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:36:12,555.555 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 08:36:12,556.556 INFO    ] No update needed
[2026-06-12 08:36:12,558.558 INFO    ] Checking for camera pi updates...
[2026-06-12 08:36:12,578.578 INFO    ] 200
[2026-06-12 08:36:12,580.580 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:36:12,603.603 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 08:36:12,646.646 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 08:36:12,647.647 INFO    ] No camera update needed
[2026-06-12 08:36:12,649.649 INFO    ] Script finished. Safe exiting...
[2026-06-12 08:36:12,650.650 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 08:36:12,653.653 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 08:36:12,656.656 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 08:36:14,695.695 INFO    ] ================================================
[2026-06-12 08:36:14,711.711 INFO    ] Launching Daemon at Fri Jun 12 08:36:14 IST 2026
[2026-06-12 08:36:14,722.722 INFO    ] ================================================
[2026-06-12 08:36:15,098.098 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 08:36:15
[2026-06-12 08:36:15,438.438 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 08:36:15,590.590 INFO    ] Initializing speech engine...
[2026-06-12 08:36:15,596.596 INFO    ] 2026-06-12 08:36:15
[2026-06-12 08:36:15,807.807 INFO    ] 2026-06-12 08:36:15
[2026-06-12 08:36:15,836.836 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 08:36:16,026.026 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 08:36:16,035.035 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 08:36:16,168.168 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 08:36:16,238.238 INFO    ] time= 12/06/2026 08:36:16
[2026-06-12 08:36:16,263.263 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 08:36:16,269.269 INFO    ] Checking for existing commands in stream...
[2026-06-12 08:36:16,339.339 INFO    ] No existing commands found in stream
[2026-06-12 08:36:21,353.353 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 08:36:21,357.357 INFO    ] Waiting 2.40 seconds before fallback handling...
[2026-06-12 08:36:24,110.110 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 08:36:24,112.112 INFO    ] Checking for system updates...
[2026-06-12 08:36:24,133.133 INFO    ] 200
[2026-06-12 08:36:24,135.135 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:36:24,169.169 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 08:36:24,171.171 INFO    ] No update needed
[2026-06-12 08:36:24,172.172 INFO    ] Checking for camera pi updates...
[2026-06-12 08:36:24,192.192 INFO    ] 200
[2026-06-12 08:36:24,194.194 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:36:24,219.219 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 08:36:24,255.255 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 08:36:24,257.257 INFO    ] No camera update needed
[2026-06-12 08:36:24,258.258 INFO    ] Script finished. Safe exiting...
[2026-06-12 08:36:24,259.259 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 08:36:24,262.262 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 08:36:24,265.265 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 08:36:26,303.303 INFO    ] ================================================
[2026-06-12 08:36:26,319.319 INFO    ] Launching Daemon at Fri Jun 12 08:36:26 IST 2026
[2026-06-12 08:36:26,331.331 INFO    ] ================================================
[2026-06-12 08:36:26,681.681 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 08:36:26
[2026-06-12 08:36:26,994.994 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 08:36:27,140.140 INFO    ] Initializing speech engine...
[2026-06-12 08:36:27,146.146 INFO    ] 2026-06-12 08:36:27
[2026-06-12 08:36:27,362.362 INFO    ] 2026-06-12 08:36:27
[2026-06-12 08:36:27,392.392 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 08:36:27,591.591 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 08:36:27,595.595 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 08:36:27,742.742 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 08:36:27,798.798 INFO    ] time= 12/06/2026 08:36:27
[2026-06-12 08:36:27,838.838 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 08:36:27,845.845 INFO    ] Checking for existing commands in stream...
[2026-06-12 08:36:27,948.948 INFO    ] No existing commands found in stream
[2026-06-12 08:36:32,957.957 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 08:36:32,960.960 INFO    ] Waiting 1.38 seconds before fallback handling...
[2026-06-12 08:36:34,726.726 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 08:36:34,728.728 INFO    ] Checking for system updates...
[2026-06-12 08:36:34,751.751 INFO    ] 200
[2026-06-12 08:36:34,753.753 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:36:34,789.789 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 08:36:34,791.791 INFO    ] No update needed
[2026-06-12 08:36:34,792.792 INFO    ] Checking for camera pi updates...
[2026-06-12 08:36:34,811.811 INFO    ] 200
[2026-06-12 08:36:34,813.813 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:36:34,836.836 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 08:36:34,876.876 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 08:36:34,878.878 INFO    ] No camera update needed
[2026-06-12 08:36:34,879.879 INFO    ] Script finished. Safe exiting...
[2026-06-12 08:36:34,880.880 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 08:36:34,883.883 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 08:36:34,886.886 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 08:36:36,925.925 INFO    ] ================================================
[2026-06-12 08:36:36,941.941 INFO    ] Launching Daemon at Fri Jun 12 08:36:36 IST 2026
[2026-06-12 08:36:36,953.953 INFO    ] ================================================
[2026-06-12 08:36:37,295.295 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 08:36:37
[2026-06-12 08:36:37,611.611 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 08:36:37,749.749 INFO    ] Initializing speech engine...
[2026-06-12 08:36:37,758.758 INFO    ] 2026-06-12 08:36:37
[2026-06-12 08:36:37,963.963 INFO    ] 2026-06-12 08:36:37
[2026-06-12 08:36:37,991.991 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 08:36:38,174.174 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 08:36:38,183.183 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 08:36:38,313.313 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 08:36:38,377.377 INFO    ] time= 12/06/2026 08:36:38
[2026-06-12 08:36:38,403.403 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 08:36:38,409.409 INFO    ] Checking for existing commands in stream...
[2026-06-12 08:36:38,476.476 INFO    ] No existing commands found in stream
[2026-06-12 08:36:43,485.485 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 08:36:43,488.488 INFO    ] Waiting 0.24 seconds before fallback handling...
[2026-06-12 08:36:44,113.113 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 08:36:44,114.114 INFO    ] Checking for system updates...
[2026-06-12 08:36:44,135.135 INFO    ] 200
[2026-06-12 08:36:44,137.137 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:36:44,167.167 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 08:36:44,169.169 INFO    ] No update needed
[2026-06-12 08:36:44,170.170 INFO    ] Checking for camera pi updates...
[2026-06-12 08:36:44,191.191 INFO    ] 200
[2026-06-12 08:36:44,192.192 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:36:44,220.220 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 08:36:44,256.256 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 08:36:44,257.257 INFO    ] No camera update needed
[2026-06-12 08:36:44,259.259 INFO    ] Script finished. Safe exiting...
[2026-06-12 08:36:44,260.260 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 08:36:44,264.264 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 08:36:44,267.267 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 08:36:46,309.309 INFO    ] ================================================
[2026-06-12 08:36:46,325.325 INFO    ] Launching Daemon at Fri Jun 12 08:36:46 IST 2026
[2026-06-12 08:36:46,336.336 INFO    ] ================================================
[2026-06-12 08:36:46,679.679 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 08:36:46
[2026-06-12 08:36:46,996.996 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 08:36:47,141.141 INFO    ] Initializing speech engine...
[2026-06-12 08:36:47,146.146 INFO    ] 2026-06-12 08:36:47
[2026-06-12 08:36:47,350.350 INFO    ] 2026-06-12 08:36:47
[2026-06-12 08:36:47,378.378 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 08:36:47,501.501 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 08:36:47,565.565 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 08:36:47,703.703 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 08:36:47,770.770 INFO    ] time= 12/06/2026 08:36:47
[2026-06-12 08:36:47,794.794 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 08:36:47,800.800 INFO    ] Checking for existing commands in stream...
[2026-06-12 08:36:47,867.867 INFO    ] No existing commands found in stream
[2026-06-12 08:36:52,876.876 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 08:36:52,879.879 INFO    ] Waiting 0.85 seconds before fallback handling...
[2026-06-12 08:36:54,102.102 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 08:36:54,104.104 INFO    ] Checking for system updates...
[2026-06-12 08:36:54,124.124 INFO    ] 200
[2026-06-12 08:36:54,125.125 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:36:54,156.156 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 08:36:54,157.157 INFO    ] No update needed
[2026-06-12 08:36:54,158.158 INFO    ] Checking for camera pi updates...
[2026-06-12 08:36:54,180.180 INFO    ] 200
[2026-06-12 08:36:54,182.182 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:36:54,205.205 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 08:36:54,242.242 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 08:36:54,243.243 INFO    ] No camera update needed
[2026-06-12 08:36:54,245.245 INFO    ] Script finished. Safe exiting...
[2026-06-12 08:36:54,246.246 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 08:36:54,249.249 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 08:36:54,252.252 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 08:36:56,292.292 INFO    ] ================================================
[2026-06-12 08:36:56,308.308 INFO    ] Launching Daemon at Fri Jun 12 08:36:56 IST 2026
[2026-06-12 08:36:56,319.319 INFO    ] ================================================
[2026-06-12 08:36:56,690.690 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 08:36:56
[2026-06-12 08:36:57,030.030 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 08:36:57,182.182 INFO    ] Initializing speech engine...
[2026-06-12 08:36:57,187.187 INFO    ] 2026-06-12 08:36:57
[2026-06-12 08:36:57,398.398 INFO    ] 2026-06-12 08:36:57
[2026-06-12 08:36:57,427.427 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 08:36:57,614.614 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 08:36:57,624.624 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 08:36:57,760.760 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 08:36:57,824.824 INFO    ] time= 12/06/2026 08:36:57
[2026-06-12 08:36:57,848.848 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 08:36:57,854.854 INFO    ] Checking for existing commands in stream...
[2026-06-12 08:36:57,947.947 INFO    ] No existing commands found in stream
[2026-06-12 08:37:02,980.980 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 08:37:02,989.989 INFO    ] Waiting 1.20 seconds before fallback handling...
[2026-06-12 08:37:04,571.571 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 08:37:04,573.573 INFO    ] Checking for system updates...
[2026-06-12 08:37:04,595.595 INFO    ] 200
[2026-06-12 08:37:04,597.597 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:37:04,629.629 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 08:37:04,631.631 INFO    ] No update needed
[2026-06-12 08:37:04,633.633 INFO    ] Checking for camera pi updates...
[2026-06-12 08:37:04,652.652 INFO    ] 200
[2026-06-12 08:37:04,654.654 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:37:04,679.679 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 08:37:04,720.720 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 08:37:04,722.722 INFO    ] No camera update needed
[2026-06-12 08:37:04,723.723 INFO    ] Script finished. Safe exiting...
[2026-06-12 08:37:04,724.724 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 08:37:04,728.728 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 08:37:04,731.731 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 08:37:06,769.769 INFO    ] ================================================
[2026-06-12 08:37:06,786.786 INFO    ] Launching Daemon at Fri Jun 12 08:37:06 IST 2026
[2026-06-12 08:37:06,797.797 INFO    ] ================================================
[2026-06-12 08:37:07,124.124 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 08:37:07
[2026-06-12 08:37:07,435.435 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 08:37:07,565.565 INFO    ] Initializing speech engine...
[2026-06-12 08:37:07,569.569 INFO    ] 2026-06-12 08:37:07
[2026-06-12 08:37:07,785.785 INFO    ] 2026-06-12 08:37:07
[2026-06-12 08:37:07,813.813 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 08:37:08,022.022 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 08:37:08,032.032 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 08:37:08,163.163 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 08:37:08,230.230 INFO    ] time= 12/06/2026 08:37:08
[2026-06-12 08:37:08,255.255 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 08:37:08,261.261 INFO    ] Checking for existing commands in stream...
[2026-06-12 08:37:08,328.328 INFO    ] No existing commands found in stream
[2026-06-12 08:37:13,342.342 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 08:37:13,345.345 INFO    ] Waiting 2.86 seconds before fallback handling...
[2026-06-12 08:37:16,602.602 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 08:37:16,604.604 INFO    ] Checking for system updates...
[2026-06-12 08:37:16,624.624 INFO    ] 200
[2026-06-12 08:37:16,626.626 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:37:16,658.658 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 08:37:16,660.660 INFO    ] No update needed
[2026-06-12 08:37:16,662.662 INFO    ] Checking for camera pi updates...
[2026-06-12 08:37:16,682.682 INFO    ] 200
[2026-06-12 08:37:16,683.683 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:37:16,708.708 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 08:37:16,754.754 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 08:37:16,755.755 INFO    ] No camera update needed
[2026-06-12 08:37:16,757.757 INFO    ] Script finished. Safe exiting...
[2026-06-12 08:37:16,758.758 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 08:37:16,761.761 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 08:37:16,764.764 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 08:37:18,803.803 INFO    ] ================================================
[2026-06-12 08:37:18,819.819 INFO    ] Launching Daemon at Fri Jun 12 08:37:18 IST 2026
[2026-06-12 08:37:18,830.830 INFO    ] ================================================
[2026-06-12 08:37:19,182.182 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 08:37:19
[2026-06-12 08:37:19,520.520 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 08:37:19,651.651 INFO    ] Initializing speech engine...
[2026-06-12 08:37:19,655.655 INFO    ] 2026-06-12 08:37:19
[2026-06-12 08:37:19,871.871 INFO    ] 2026-06-12 08:37:19
[2026-06-12 08:37:19,899.899 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 08:37:20,047.047 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 08:37:20,105.105 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 08:37:20,250.250 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 08:37:20,308.308 INFO    ] time= 12/06/2026 08:37:20
[2026-06-12 08:37:20,354.354 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 08:37:20,356.356 INFO    ] Checking for existing commands in stream...
[2026-06-12 08:37:20,431.431 INFO    ] No existing commands found in stream
[2026-06-12 08:37:25,442.442 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 08:37:25,445.445 INFO    ] Waiting 0.06 seconds before fallback handling...
[2026-06-12 08:37:25,901.901 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 08:37:25,902.902 INFO    ] Checking for system updates...
[2026-06-12 08:37:25,924.924 INFO    ] 200
[2026-06-12 08:37:25,925.925 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:37:25,956.956 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 08:37:25,957.957 INFO    ] No update needed
[2026-06-12 08:37:25,958.958 INFO    ] Checking for camera pi updates...
[2026-06-12 08:37:25,978.978 INFO    ] 200
[2026-06-12 08:37:25,979.979 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:37:26,004.004 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 08:37:26,043.043 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 08:37:26,044.044 INFO    ] No camera update needed
[2026-06-12 08:37:26,046.046 INFO    ] Script finished. Safe exiting...
[2026-06-12 08:37:26,047.047 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 08:37:26,050.050 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 08:37:26,053.053 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 08:37:28,083.083 INFO    ] ================================================
[2026-06-12 08:37:28,092.092 INFO    ] Launching Daemon at Fri Jun 12 08:37:28 IST 2026
[2026-06-12 08:37:28,098.098 INFO    ] ================================================
[2026-06-12 08:37:28,448.448 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 08:37:28
[2026-06-12 08:37:28,761.761 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 08:37:28,894.894 INFO    ] Initializing speech engine...
[2026-06-12 08:37:28,898.898 INFO    ] 2026-06-12 08:37:28
[2026-06-12 08:37:29,095.095 INFO    ] 2026-06-12 08:37:29
[2026-06-12 08:37:29,137.137 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 08:37:29,360.360 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 08:37:29,364.364 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 08:37:29,504.504 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 08:37:29,558.558 INFO    ] time= 12/06/2026 08:37:29
[2026-06-12 08:37:29,609.609 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 08:37:29,615.615 INFO    ] Checking for existing commands in stream...
[2026-06-12 08:37:29,718.718 INFO    ] No existing commands found in stream
[2026-06-12 08:37:34,732.732 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 08:37:34,735.735 INFO    ] Waiting 0.04 seconds before fallback handling...
[2026-06-12 08:37:35,117.117 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 08:37:35,119.119 INFO    ] Checking for system updates...
[2026-06-12 08:37:35,140.140 INFO    ] 200
[2026-06-12 08:37:35,142.142 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:37:35,172.172 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 08:37:35,174.174 INFO    ] No update needed
[2026-06-12 08:37:35,175.175 INFO    ] Checking for camera pi updates...
[2026-06-12 08:37:35,194.194 INFO    ] 200
[2026-06-12 08:37:35,196.196 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:37:35,219.219 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 08:37:35,359.359 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 08:37:35,361.361 INFO    ] No camera update needed
[2026-06-12 08:37:35,362.362 INFO    ] Script finished. Safe exiting...
[2026-06-12 08:37:35,363.363 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 08:37:35,366.366 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 08:37:35,369.369 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 08:37:37,407.407 INFO    ] ================================================
[2026-06-12 08:37:37,423.423 INFO    ] Launching Daemon at Fri Jun 12 08:37:37 IST 2026
[2026-06-12 08:37:37,434.434 INFO    ] ================================================
[2026-06-12 08:37:37,755.755 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 08:37:37
[2026-06-12 08:37:38,066.066 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 08:37:38,209.209 INFO    ] Initializing speech engine...
[2026-06-12 08:37:38,214.214 INFO    ] 2026-06-12 08:37:38
[2026-06-12 08:37:38,416.416 INFO    ] 2026-06-12 08:37:38
[2026-06-12 08:37:38,444.444 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 08:37:38,626.626 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 08:37:38,630.630 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 08:37:38,757.757 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 08:37:38,818.818 INFO    ] time= 12/06/2026 08:37:38
[2026-06-12 08:37:38,851.851 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 08:37:38,856.856 INFO    ] Checking for existing commands in stream...
[2026-06-12 08:37:38,927.927 INFO    ] No existing commands found in stream
[2026-06-12 08:37:43,936.936 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 08:37:43,939.939 INFO    ] Waiting 2.92 seconds before fallback handling...
[2026-06-12 08:37:47,209.209 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 08:37:47,211.211 INFO    ] Checking for system updates...
[2026-06-12 08:37:47,232.232 INFO    ] 200
[2026-06-12 08:37:47,233.233 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:37:47,263.263 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 08:37:47,265.265 INFO    ] No update needed
[2026-06-12 08:37:47,266.266 INFO    ] Checking for camera pi updates...
[2026-06-12 08:37:47,286.286 INFO    ] 200
[2026-06-12 08:37:47,287.287 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:37:47,312.312 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 08:37:47,352.352 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 08:37:47,354.354 INFO    ] No camera update needed
[2026-06-12 08:37:47,355.355 INFO    ] Script finished. Safe exiting...
[2026-06-12 08:37:47,356.356 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 08:37:47,359.359 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 08:37:47,362.362 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 08:37:49,393.393 INFO    ] ================================================
[2026-06-12 08:37:49,401.401 INFO    ] Launching Daemon at Fri Jun 12 08:37:49 IST 2026
[2026-06-12 08:37:49,407.407 INFO    ] ================================================
[2026-06-12 08:37:49,747.747 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 08:37:49
[2026-06-12 08:37:50,091.091 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 08:37:50,243.243 INFO    ] Initializing speech engine...
[2026-06-12 08:37:50,248.248 INFO    ] 2026-06-12 08:37:50
[2026-06-12 08:37:50,460.460 INFO    ] 2026-06-12 08:37:50
[2026-06-12 08:37:50,489.489 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 08:37:50,619.619 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 08:37:50,679.679 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 08:37:50,820.820 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 08:37:50,884.884 INFO    ] time= 12/06/2026 08:37:50
[2026-06-12 08:37:50,914.914 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 08:37:50,920.920 INFO    ] Checking for existing commands in stream...
[2026-06-12 08:37:50,988.988 INFO    ] No existing commands found in stream
[2026-06-12 08:37:55,998.998 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 08:37:56,001.001 INFO    ] Waiting 1.53 seconds before fallback handling...
[2026-06-12 08:37:57,920.920 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 08:37:57,922.922 INFO    ] Checking for system updates...
[2026-06-12 08:37:57,945.945 INFO    ] 200
[2026-06-12 08:37:57,947.947 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:37:57,983.983 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 08:37:57,985.985 INFO    ] No update needed
[2026-06-12 08:37:57,987.987 INFO    ] Checking for camera pi updates...
[2026-06-12 08:37:58,010.010 INFO    ] 200
[2026-06-12 08:37:58,011.011 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:37:58,040.040 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 08:37:58,079.079 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 08:37:58,081.081 INFO    ] No camera update needed
[2026-06-12 08:37:58,082.082 INFO    ] Script finished. Safe exiting...
[2026-06-12 08:37:58,083.083 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 08:37:58,087.087 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 08:37:58,090.090 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 08:38:00,128.128 INFO    ] ================================================
[2026-06-12 08:38:00,143.143 INFO    ] Launching Daemon at Fri Jun 12 08:38:00 IST 2026
[2026-06-12 08:38:00,154.154 INFO    ] ================================================
[2026-06-12 08:38:00,490.490 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 08:38:00
[2026-06-12 08:38:00,801.801 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 08:38:00,932.932 INFO    ] Initializing speech engine...
[2026-06-12 08:38:00,940.940 INFO    ] 2026-06-12 08:38:00
[2026-06-12 08:38:01,150.150 INFO    ] 2026-06-12 08:38:01
[2026-06-12 08:38:01,179.179 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 08:38:01,363.363 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 08:38:01,372.372 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 08:38:01,514.514 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 08:38:01,541.541 INFO    ] time= 12/06/2026 08:38:01
[2026-06-12 08:38:01,544.544 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 08:38:01,570.570 INFO    ] Checking for existing commands in stream...
[2026-06-12 08:38:01,637.637 INFO    ] No existing commands found in stream
[2026-06-12 08:38:06,646.646 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 08:38:06,648.648 INFO    ] Waiting 3.97 seconds before fallback handling...
[2026-06-12 08:38:10,966.966 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 08:38:10,968.968 INFO    ] Checking for system updates...
[2026-06-12 08:38:10,989.989 INFO    ] 200
[2026-06-12 08:38:10,990.990 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:38:11,020.020 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 08:38:11,022.022 INFO    ] No update needed
[2026-06-12 08:38:11,023.023 INFO    ] Checking for camera pi updates...
[2026-06-12 08:38:11,044.044 INFO    ] 200
[2026-06-12 08:38:11,045.045 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:38:11,068.068 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 08:38:11,102.102 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 08:38:11,103.103 INFO    ] No camera update needed
[2026-06-12 08:38:11,105.105 INFO    ] Script finished. Safe exiting...
[2026-06-12 08:38:11,106.106 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 08:38:11,109.109 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 08:38:11,112.112 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 08:38:13,151.151 INFO    ] ================================================
[2026-06-12 08:38:13,167.167 INFO    ] Launching Daemon at Fri Jun 12 08:38:13 IST 2026
[2026-06-12 08:38:13,178.178 INFO    ] ================================================
[2026-06-12 08:38:13,564.564 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 08:38:13
[2026-06-12 08:38:13,907.907 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 08:38:14,063.063 INFO    ] Initializing speech engine...
[2026-06-12 08:38:14,066.066 INFO    ] 2026-06-12 08:38:14
[2026-06-12 08:38:14,274.274 INFO    ] 2026-06-12 08:38:14
[2026-06-12 08:38:14,302.302 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 08:38:14,485.485 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 08:38:14,495.495 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 08:38:14,644.644 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 08:38:14,692.692 INFO    ] time= 12/06/2026 08:38:14
[2026-06-12 08:38:14,714.714 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 08:38:14,720.720 INFO    ] Checking for existing commands in stream...
[2026-06-12 08:38:14,787.787 INFO    ] No existing commands found in stream
[2026-06-12 08:38:19,801.801 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 08:38:19,805.805 INFO    ] Waiting 2.42 seconds before fallback handling...
[2026-06-12 08:38:22,597.597 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 08:38:22,599.599 INFO    ] Checking for system updates...
[2026-06-12 08:38:22,620.620 INFO    ] 200
[2026-06-12 08:38:22,622.622 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:38:22,655.655 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 08:38:22,657.657 INFO    ] No update needed
[2026-06-12 08:38:22,658.658 INFO    ] Checking for camera pi updates...
[2026-06-12 08:38:22,680.680 INFO    ] 200
[2026-06-12 08:38:22,682.682 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:38:22,706.706 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 08:38:22,746.746 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 08:38:22,747.747 INFO    ] No camera update needed
[2026-06-12 08:38:22,749.749 INFO    ] Script finished. Safe exiting...
[2026-06-12 08:38:22,750.750 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 08:38:22,754.754 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 08:38:22,757.757 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 08:38:24,799.799 INFO    ] ================================================
[2026-06-12 08:38:24,815.815 INFO    ] Launching Daemon at Fri Jun 12 08:38:24 IST 2026
[2026-06-12 08:38:24,826.826 INFO    ] ================================================
[2026-06-12 08:38:25,180.180 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 08:38:25
[2026-06-12 08:38:25,497.497 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 08:38:25,642.642 INFO    ] Initializing speech engine...
[2026-06-12 08:38:25,646.646 INFO    ] 2026-06-12 08:38:25
[2026-06-12 08:38:25,852.852 INFO    ] 2026-06-12 08:38:25
[2026-06-12 08:38:25,880.880 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 08:38:26,064.064 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 08:38:26,073.073 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 08:38:26,196.196 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 08:38:26,252.252 INFO    ] time= 12/06/2026 08:38:26
[2026-06-12 08:38:26,295.295 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 08:38:26,301.301 INFO    ] Checking for existing commands in stream...
[2026-06-12 08:38:26,391.391 INFO    ] No existing commands found in stream
[2026-06-12 08:38:31,405.405 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 08:38:31,408.408 INFO    ] Waiting 1.43 seconds before fallback handling...
[2026-06-12 08:38:33,186.186 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 08:38:33,188.188 INFO    ] Checking for system updates...
[2026-06-12 08:38:33,209.209 INFO    ] 200
[2026-06-12 08:38:33,210.210 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:38:33,246.246 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 08:38:33,247.247 INFO    ] No update needed
[2026-06-12 08:38:33,248.248 INFO    ] Checking for camera pi updates...
[2026-06-12 08:38:33,269.269 INFO    ] 200
[2026-06-12 08:38:33,271.271 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:38:33,296.296 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 08:38:33,317.317 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 08:38:33,318.318 INFO    ] No camera update needed
[2026-06-12 08:38:33,320.320 INFO    ] Script finished. Safe exiting...
[2026-06-12 08:38:33,321.321 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 08:38:33,324.324 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 08:38:33,327.327 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 08:38:35,367.367 INFO    ] ================================================
[2026-06-12 08:38:35,383.383 INFO    ] Launching Daemon at Fri Jun 12 08:38:35 IST 2026
[2026-06-12 08:38:35,394.394 INFO    ] ================================================
[2026-06-12 08:38:35,759.759 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 08:38:35
[2026-06-12 08:38:36,071.071 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 08:38:36,205.205 INFO    ] Initializing speech engine...
[2026-06-12 08:38:36,208.208 INFO    ] 2026-06-12 08:38:36
[2026-06-12 08:38:36,412.412 INFO    ] 2026-06-12 08:38:36
[2026-06-12 08:38:36,444.444 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 08:38:36,670.670 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 08:38:36,676.676 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 08:38:36,817.817 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 08:38:36,868.868 INFO    ] time= 12/06/2026 08:38:36
[2026-06-12 08:38:36,903.903 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 08:38:36,927.927 INFO    ] Checking for existing commands in stream...
[2026-06-12 08:38:37,003.003 INFO    ] No existing commands found in stream
[2026-06-12 08:38:42,012.012 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 08:38:42,015.015 INFO    ] Waiting 3.26 seconds before fallback handling...
[2026-06-12 08:38:45,642.642 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 08:38:45,644.644 INFO    ] Checking for system updates...
[2026-06-12 08:38:45,664.664 INFO    ] 200
[2026-06-12 08:38:45,666.666 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:38:45,699.699 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 08:38:45,700.700 INFO    ] No update needed
[2026-06-12 08:38:45,702.702 INFO    ] Checking for camera pi updates...
[2026-06-12 08:38:45,721.721 INFO    ] 200
[2026-06-12 08:38:45,722.722 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:38:45,746.746 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 08:38:45,781.781 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 08:38:45,783.783 INFO    ] No camera update needed
[2026-06-12 08:38:45,784.784 INFO    ] Script finished. Safe exiting...
[2026-06-12 08:38:45,785.785 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 08:38:45,788.788 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 08:38:45,791.791 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 08:38:47,831.831 INFO    ] ================================================
[2026-06-12 08:38:47,847.847 INFO    ] Launching Daemon at Fri Jun 12 08:38:47 IST 2026
[2026-06-12 08:38:47,859.859 INFO    ] ================================================
[2026-06-12 08:38:48,235.235 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 08:38:48
[2026-06-12 08:38:48,578.578 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 08:38:48,724.724 INFO    ] Initializing speech engine...
[2026-06-12 08:38:48,735.735 INFO    ] 2026-06-12 08:38:48
[2026-06-12 08:38:48,944.944 INFO    ] 2026-06-12 08:38:48
[2026-06-12 08:38:48,973.973 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 08:38:49,100.100 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 08:38:49,158.158 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 08:38:49,296.296 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 08:38:49,362.362 INFO    ] time= 12/06/2026 08:38:49
[2026-06-12 08:38:49,386.386 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 08:38:49,393.393 INFO    ] Checking for existing commands in stream...
[2026-06-12 08:38:49,460.460 INFO    ] No existing commands found in stream
[2026-06-12 08:38:54,484.484 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 08:38:54,488.488 INFO    ] Waiting 3.67 seconds before fallback handling...
[2026-06-12 08:38:58,624.624 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 08:38:58,625.625 INFO    ] Checking for system updates...
[2026-06-12 08:38:58,646.646 INFO    ] 200
[2026-06-12 08:38:58,648.648 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:38:58,683.683 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 08:38:58,684.684 INFO    ] No update needed
[2026-06-12 08:38:58,686.686 INFO    ] Checking for camera pi updates...
[2026-06-12 08:38:58,706.706 INFO    ] 200
[2026-06-12 08:38:58,708.708 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:38:58,733.733 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 08:38:58,773.773 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 08:38:58,774.774 INFO    ] No camera update needed
[2026-06-12 08:38:58,775.775 INFO    ] Script finished. Safe exiting...
[2026-06-12 08:38:58,777.777 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 08:38:58,780.780 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 08:38:58,782.782 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 08:39:00,821.821 INFO    ] ================================================
[2026-06-12 08:39:00,838.838 INFO    ] Launching Daemon at Fri Jun 12 08:39:00 IST 2026
[2026-06-12 08:39:00,849.849 INFO    ] ================================================
[2026-06-12 08:39:01,218.218 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 08:39:01
[2026-06-12 08:39:01,560.560 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 08:39:01,713.713 INFO    ] Initializing speech engine...
[2026-06-12 08:39:01,718.718 INFO    ] 2026-06-12 08:39:01
[2026-06-12 08:39:02,079.079 INFO    ] 2026-06-12 08:39:02
[2026-06-12 08:39:02,111.111 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 08:39:02,261.261 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 08:39:02,304.304 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 08:39:02,492.492 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 08:39:02,553.553 INFO    ] time= 12/06/2026 08:39:02
[2026-06-12 08:39:02,579.579 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 08:39:02,598.598 INFO    ] Checking for existing commands in stream...
[2026-06-12 08:39:02,684.684 INFO    ] No existing commands found in stream
[2026-06-12 08:39:07,695.695 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 08:39:07,698.698 INFO    ] Waiting 2.51 seconds before fallback handling...
[2026-06-12 08:39:10,615.615 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 08:39:10,616.616 INFO    ] Checking for system updates...
[2026-06-12 08:39:10,637.637 INFO    ] 200
[2026-06-12 08:39:10,639.639 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:39:10,671.671 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 08:39:10,672.672 INFO    ] No update needed
[2026-06-12 08:39:10,673.673 INFO    ] Checking for camera pi updates...
[2026-06-12 08:39:10,695.695 INFO    ] 200
[2026-06-12 08:39:10,697.697 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:39:10,722.722 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 08:39:10,757.757 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 08:39:10,758.758 INFO    ] No camera update needed
[2026-06-12 08:39:10,760.760 INFO    ] Script finished. Safe exiting...
[2026-06-12 08:39:10,761.761 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 08:39:10,764.764 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 08:39:10,767.767 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 08:39:12,806.806 INFO    ] ================================================
[2026-06-12 08:39:12,822.822 INFO    ] Launching Daemon at Fri Jun 12 08:39:12 IST 2026
[2026-06-12 08:39:12,834.834 INFO    ] ================================================
[2026-06-12 08:39:13,195.195 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 08:39:13
[2026-06-12 08:39:13,506.506 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 08:39:13,636.636 INFO    ] Initializing speech engine...
[2026-06-12 08:39:13,639.639 INFO    ] 2026-06-12 08:39:13
[2026-06-12 08:39:13,834.834 INFO    ] 2026-06-12 08:39:13
[2026-06-12 08:39:13,879.879 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 08:39:14,049.049 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 08:39:14,107.107 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 08:39:14,251.251 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 08:39:14,308.308 INFO    ] time= 12/06/2026 08:39:14
[2026-06-12 08:39:14,338.338 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 08:39:14,348.348 INFO    ] Checking for existing commands in stream...
[2026-06-12 08:39:14,419.419 INFO    ] No existing commands found in stream
[2026-06-12 08:39:19,429.429 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 08:39:19,432.432 INFO    ] Waiting 2.72 seconds before fallback handling...
[2026-06-12 08:39:22,545.545 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 08:39:22,547.547 INFO    ] Checking for system updates...
[2026-06-12 08:39:22,569.569 INFO    ] 200
[2026-06-12 08:39:22,571.571 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:39:22,601.601 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 08:39:22,603.603 INFO    ] No update needed
[2026-06-12 08:39:22,604.604 INFO    ] Checking for camera pi updates...
[2026-06-12 08:39:22,623.623 INFO    ] 200
[2026-06-12 08:39:22,625.625 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:39:22,649.649 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 08:39:22,686.686 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 08:39:22,688.688 INFO    ] No camera update needed
[2026-06-12 08:39:22,689.689 INFO    ] Script finished. Safe exiting...
[2026-06-12 08:39:22,691.691 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 08:39:22,694.694 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 08:39:22,697.697 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 08:39:24,735.735 INFO    ] ================================================
[2026-06-12 08:39:24,751.751 INFO    ] Launching Daemon at Fri Jun 12 08:39:24 IST 2026
[2026-06-12 08:39:24,763.763 INFO    ] ================================================
[2026-06-12 08:39:25,099.099 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 08:39:25
[2026-06-12 08:39:25,440.440 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 08:39:25,591.591 INFO    ] Initializing speech engine...
[2026-06-12 08:39:25,597.597 INFO    ] 2026-06-12 08:39:25
[2026-06-12 08:39:25,806.806 INFO    ] 2026-06-12 08:39:25
[2026-06-12 08:39:25,836.836 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 08:39:25,979.979 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 08:39:26,023.023 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 08:39:26,160.160 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 08:39:26,227.227 INFO    ] time= 12/06/2026 08:39:26
[2026-06-12 08:39:26,251.251 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 08:39:26,258.258 INFO    ] Checking for existing commands in stream...
[2026-06-12 08:39:26,326.326 INFO    ] No existing commands found in stream
[2026-06-12 08:39:31,335.335 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 08:39:31,338.338 INFO    ] Waiting 1.00 seconds before fallback handling...
[2026-06-12 08:39:32,690.690 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 08:39:32,693.693 INFO    ] Checking for system updates...
[2026-06-12 08:39:32,730.730 INFO    ] 200
[2026-06-12 08:39:32,733.733 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:39:32,795.795 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 08:39:32,798.798 INFO    ] No update needed
[2026-06-12 08:39:32,801.801 INFO    ] Checking for camera pi updates...
[2026-06-12 08:39:32,838.838 INFO    ] 200
[2026-06-12 08:39:32,841.841 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:39:32,868.868 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 08:39:32,905.905 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 08:39:32,907.907 INFO    ] No camera update needed
[2026-06-12 08:39:32,908.908 INFO    ] Script finished. Safe exiting...
[2026-06-12 08:39:32,909.909 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 08:39:32,913.913 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 08:39:32,916.916 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 08:39:34,956.956 INFO    ] ================================================
[2026-06-12 08:39:34,972.972 INFO    ] Launching Daemon at Fri Jun 12 08:39:34 IST 2026
[2026-06-12 08:39:34,983.983 INFO    ] ================================================
[2026-06-12 08:39:35,337.337 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 08:39:35
[2026-06-12 08:39:35,651.651 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 08:39:35,781.781 INFO    ] Initializing speech engine...
[2026-06-12 08:39:35,785.785 INFO    ] 2026-06-12 08:39:35
[2026-06-12 08:39:36,000.000 INFO    ] 2026-06-12 08:39:35
[2026-06-12 08:39:36,028.028 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 08:39:36,181.181 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 08:39:36,234.234 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 08:39:36,392.392 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 08:39:36,414.414 INFO    ] time= 12/06/2026 08:39:36
[2026-06-12 08:39:36,476.476 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 08:39:36,502.502 INFO    ] Checking for existing commands in stream...
[2026-06-12 08:39:36,579.579 INFO    ] No existing commands found in stream
[2026-06-12 08:39:41,589.589 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 08:39:41,592.592 INFO    ] Waiting 2.04 seconds before fallback handling...
[2026-06-12 08:39:44,002.002 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 08:39:44,003.003 INFO    ] Checking for system updates...
[2026-06-12 08:39:44,025.025 INFO    ] 200
[2026-06-12 08:39:44,026.026 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:39:44,059.059 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 08:39:44,060.060 INFO    ] No update needed
[2026-06-12 08:39:44,062.062 INFO    ] Checking for camera pi updates...
[2026-06-12 08:39:44,082.082 INFO    ] 200
[2026-06-12 08:39:44,084.084 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:39:44,107.107 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 08:39:44,244.244 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 08:39:44,246.246 INFO    ] No camera update needed
[2026-06-12 08:39:44,247.247 INFO    ] Script finished. Safe exiting...
[2026-06-12 08:39:44,248.248 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 08:39:44,251.251 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 08:39:44,254.254 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 08:39:46,293.293 INFO    ] ================================================
[2026-06-12 08:39:46,309.309 INFO    ] Launching Daemon at Fri Jun 12 08:39:46 IST 2026
[2026-06-12 08:39:46,320.320 INFO    ] ================================================
[2026-06-12 08:39:46,673.673 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 08:39:46
[2026-06-12 08:39:46,984.984 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 08:39:47,118.118 INFO    ] Initializing speech engine...
[2026-06-12 08:39:47,127.127 INFO    ] 2026-06-12 08:39:47
[2026-06-12 08:39:47,351.351 INFO    ] 2026-06-12 08:39:47
[2026-06-12 08:39:47,382.382 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 08:39:47,518.518 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 08:39:47,587.587 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 08:39:47,731.731 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 08:39:47,797.797 INFO    ] time= 12/06/2026 08:39:47
[2026-06-12 08:39:47,838.838 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 08:39:47,845.845 INFO    ] Checking for existing commands in stream...
[2026-06-12 08:39:47,921.921 INFO    ] No existing commands found in stream
[2026-06-12 08:39:52,935.935 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 08:39:52,937.937 INFO    ] Waiting 3.22 seconds before fallback handling...
[2026-06-12 08:39:56,531.531 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 08:39:56,532.532 INFO    ] Checking for system updates...
[2026-06-12 08:39:56,553.553 INFO    ] 200
[2026-06-12 08:39:56,555.555 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:39:56,584.584 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 08:39:56,586.586 INFO    ] No update needed
[2026-06-12 08:39:56,587.587 INFO    ] Checking for camera pi updates...
[2026-06-12 08:39:56,606.606 INFO    ] 200
[2026-06-12 08:39:56,608.608 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:39:56,631.631 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 08:39:56,667.667 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 08:39:56,668.668 INFO    ] No camera update needed
[2026-06-12 08:39:56,669.669 INFO    ] Script finished. Safe exiting...
[2026-06-12 08:39:56,671.671 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 08:39:56,674.674 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 08:39:56,677.677 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 08:39:58,716.716 INFO    ] ================================================
[2026-06-12 08:39:58,732.732 INFO    ] Launching Daemon at Fri Jun 12 08:39:58 IST 2026
[2026-06-12 08:39:58,743.743 INFO    ] ================================================
[2026-06-12 08:39:59,113.113 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 08:39:59
[2026-06-12 08:39:59,429.429 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 08:39:59,566.566 INFO    ] Initializing speech engine...
[2026-06-12 08:39:59,575.575 INFO    ] 2026-06-12 08:39:59
[2026-06-12 08:39:59,779.779 INFO    ] 2026-06-12 08:39:59
[2026-06-12 08:39:59,807.807 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 08:39:59,989.989 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 08:39:59,999.999 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 08:40:00,128.128 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 08:40:00,192.192 INFO    ] time= 12/06/2026 08:40:00
[2026-06-12 08:40:00,217.217 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 08:40:00,224.224 INFO    ] Checking for existing commands in stream...
[2026-06-12 08:40:00,290.290 INFO    ] No existing commands found in stream
[2026-06-12 08:40:05,299.299 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 08:40:05,302.302 INFO    ] Waiting 2.40 seconds before fallback handling...
[2026-06-12 08:40:08,507.507 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 08:40:08,509.509 INFO    ] Checking for system updates...
[2026-06-12 08:40:08,531.531 INFO    ] 200
[2026-06-12 08:40:08,532.532 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:40:08,562.562 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 08:40:08,564.564 INFO    ] No update needed
[2026-06-12 08:40:08,565.565 INFO    ] Checking for camera pi updates...
[2026-06-12 08:40:08,584.584 INFO    ] 200
[2026-06-12 08:40:08,586.586 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:40:08,623.623 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 08:40:08,663.663 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 08:40:08,666.666 INFO    ] No camera update needed
[2026-06-12 08:40:08,668.668 INFO    ] Script finished. Safe exiting...
[2026-06-12 08:40:08,670.670 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 08:40:08,676.676 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 08:40:08,681.681 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 08:40:10,722.722 INFO    ] ================================================
[2026-06-12 08:40:10,739.739 INFO    ] Launching Daemon at Fri Jun 12 08:40:10 IST 2026
[2026-06-12 08:40:10,750.750 INFO    ] ================================================
[2026-06-12 08:40:11,082.082 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 08:40:11
[2026-06-12 08:40:11,395.395 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 08:40:11,527.527 INFO    ] Initializing speech engine...
[2026-06-12 08:40:11,530.530 INFO    ] 2026-06-12 08:40:11
[2026-06-12 08:40:11,751.751 INFO    ] 2026-06-12 08:40:11
[2026-06-12 08:40:11,780.780 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 08:40:11,967.967 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 08:40:11,970.970 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 08:40:12,106.106 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 08:40:12,176.176 INFO    ] time= 12/06/2026 08:40:12
[2026-06-12 08:40:12,201.201 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 08:40:12,207.207 INFO    ] Checking for existing commands in stream...
[2026-06-12 08:40:12,275.275 INFO    ] No existing commands found in stream
[2026-06-12 08:40:17,289.289 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 08:40:17,292.292 INFO    ] Waiting 1.68 seconds before fallback handling...
[2026-06-12 08:40:19,394.394 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 08:40:19,396.396 INFO    ] Checking for system updates...
[2026-06-12 08:40:19,418.418 INFO    ] 200
[2026-06-12 08:40:19,419.419 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:40:19,452.452 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 08:40:19,454.454 INFO    ] No update needed
[2026-06-12 08:40:19,455.455 INFO    ] Checking for camera pi updates...
[2026-06-12 08:40:19,474.474 INFO    ] 200
[2026-06-12 08:40:19,475.475 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:40:19,498.498 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 08:40:19,543.543 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 08:40:19,545.545 INFO    ] No camera update needed
[2026-06-12 08:40:19,546.546 INFO    ] Script finished. Safe exiting...
[2026-06-12 08:40:19,547.547 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 08:40:19,550.550 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 08:40:19,553.553 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 08:40:21,594.594 INFO    ] ================================================
[2026-06-12 08:40:21,610.610 INFO    ] Launching Daemon at Fri Jun 12 08:40:21 IST 2026
[2026-06-12 08:40:21,621.621 INFO    ] ================================================
[2026-06-12 08:40:22,012.012 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 08:40:22
[2026-06-12 08:40:22,358.358 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 08:40:22,512.512 INFO    ] Initializing speech engine...
[2026-06-12 08:40:22,518.518 INFO    ] 2026-06-12 08:40:22
[2026-06-12 08:40:22,728.728 INFO    ] 2026-06-12 08:40:22
[2026-06-12 08:40:22,757.757 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 08:40:22,941.941 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 08:40:22,950.950 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 08:40:23,097.097 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 08:40:23,149.149 INFO    ] time= 12/06/2026 08:40:23
[2026-06-12 08:40:23,173.173 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 08:40:23,180.180 INFO    ] Checking for existing commands in stream...
[2026-06-12 08:40:23,247.247 INFO    ] No existing commands found in stream
[2026-06-12 08:40:28,261.261 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 08:40:28,265.265 INFO    ] Waiting 1.97 seconds before fallback handling...
[2026-06-12 08:40:30,609.609 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 08:40:30,615.615 INFO    ] Checking for system updates...
[2026-06-12 08:40:30,656.656 INFO    ] 200
[2026-06-12 08:40:30,658.658 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:40:30,688.688 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 08:40:30,690.690 INFO    ] No update needed
[2026-06-12 08:40:30,691.691 INFO    ] Checking for camera pi updates...
[2026-06-12 08:40:30,711.711 INFO    ] 200
[2026-06-12 08:40:30,712.712 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:40:30,738.738 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 08:40:30,777.777 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 08:40:30,778.778 INFO    ] No camera update needed
[2026-06-12 08:40:30,780.780 INFO    ] Script finished. Safe exiting...
[2026-06-12 08:40:30,781.781 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 08:40:30,784.784 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 08:40:30,787.787 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 08:40:32,820.820 INFO    ] ================================================
[2026-06-12 08:40:32,836.836 INFO    ] Launching Daemon at Fri Jun 12 08:40:32 IST 2026
[2026-06-12 08:40:32,848.848 INFO    ] ================================================
[2026-06-12 08:40:33,211.211 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 08:40:33
[2026-06-12 08:40:33,551.551 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 08:40:33,707.707 INFO    ] Initializing speech engine...
[2026-06-12 08:40:33,713.713 INFO    ] 2026-06-12 08:40:33
[2026-06-12 08:40:33,923.923 INFO    ] 2026-06-12 08:40:33
[2026-06-12 08:40:33,953.953 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 08:40:34,140.140 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 08:40:34,150.150 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 08:40:34,281.281 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 08:40:34,350.350 INFO    ] time= 12/06/2026 08:40:34
[2026-06-12 08:40:34,375.375 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 08:40:34,381.381 INFO    ] Checking for existing commands in stream...
[2026-06-12 08:40:34,449.449 INFO    ] No existing commands found in stream
[2026-06-12 08:40:39,459.459 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 08:40:39,462.462 INFO    ] Waiting 2.85 seconds before fallback handling...
[2026-06-12 08:40:42,667.667 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 08:40:42,668.668 INFO    ] Checking for system updates...
[2026-06-12 08:40:42,691.691 INFO    ] 200
[2026-06-12 08:40:42,692.692 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:40:42,728.728 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 08:40:42,730.730 INFO    ] No update needed
[2026-06-12 08:40:42,732.732 INFO    ] Checking for camera pi updates...
[2026-06-12 08:40:42,754.754 INFO    ] 200
[2026-06-12 08:40:42,755.755 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:40:42,780.780 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 08:40:42,821.821 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 08:40:42,823.823 INFO    ] No camera update needed
[2026-06-12 08:40:42,824.824 INFO    ] Script finished. Safe exiting...
[2026-06-12 08:40:42,825.825 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 08:40:42,829.829 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 08:40:42,832.832 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 08:40:44,874.874 INFO    ] ================================================
[2026-06-12 08:40:44,889.889 INFO    ] Launching Daemon at Fri Jun 12 08:40:44 IST 2026
[2026-06-12 08:40:44,900.900 INFO    ] ================================================
[2026-06-12 08:40:45,245.245 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 08:40:45
[2026-06-12 08:40:45,585.585 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 08:40:45,739.739 INFO    ] Initializing speech engine...
[2026-06-12 08:40:45,745.745 INFO    ] 2026-06-12 08:40:45
[2026-06-12 08:40:45,952.952 INFO    ] 2026-06-12 08:40:45
[2026-06-12 08:40:45,981.981 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 08:40:46,165.165 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 08:40:46,176.176 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 08:40:46,318.318 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 08:40:46,377.377 INFO    ] time= 12/06/2026 08:40:46
[2026-06-12 08:40:46,398.398 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 08:40:46,400.400 INFO    ] Checking for existing commands in stream...
[2026-06-12 08:40:46,467.467 INFO    ] No existing commands found in stream
[2026-06-12 08:40:51,492.492 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 08:40:51,495.495 INFO    ] Waiting 1.60 seconds before fallback handling...
[2026-06-12 08:40:53,477.477 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 08:40:53,479.479 INFO    ] Checking for system updates...
[2026-06-12 08:40:53,500.500 INFO    ] 200
[2026-06-12 08:40:53,501.501 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:40:53,535.535 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 08:40:53,537.537 INFO    ] No update needed
[2026-06-12 08:40:53,538.538 INFO    ] Checking for camera pi updates...
[2026-06-12 08:40:53,562.562 INFO    ] 200
[2026-06-12 08:40:53,564.564 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:40:53,590.590 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 08:40:53,631.631 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 08:40:53,633.633 INFO    ] No camera update needed
[2026-06-12 08:40:53,634.634 INFO    ] Script finished. Safe exiting...
[2026-06-12 08:40:53,636.636 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 08:40:53,639.639 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 08:40:53,642.642 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 08:40:55,682.682 INFO    ] ================================================
[2026-06-12 08:40:55,697.697 INFO    ] Launching Daemon at Fri Jun 12 08:40:55 IST 2026
[2026-06-12 08:40:55,709.709 INFO    ] ================================================
[2026-06-12 08:40:56,092.092 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 08:40:56
[2026-06-12 08:40:56,465.465 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 08:40:56,635.635 INFO    ] Initializing speech engine...
[2026-06-12 08:40:56,647.647 INFO    ] 2026-06-12 08:40:56
[2026-06-12 08:40:56,879.879 INFO    ] 2026-06-12 08:40:56
[2026-06-12 08:40:56,912.912 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 08:40:57,065.065 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 08:40:57,122.122 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 08:40:57,267.267 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 08:40:57,318.318 INFO    ] time= 12/06/2026 08:40:57
[2026-06-12 08:40:57,353.353 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 08:40:57,376.376 INFO    ] Checking for existing commands in stream...
[2026-06-12 08:40:57,454.454 INFO    ] No existing commands found in stream
[2026-06-12 08:41:02,461.461 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 08:41:02,463.463 INFO    ] Waiting 2.18 seconds before fallback handling...
[2026-06-12 08:41:04,971.971 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 08:41:04,973.973 INFO    ] Checking for system updates...
[2026-06-12 08:41:04,995.995 INFO    ] 200
[2026-06-12 08:41:04,997.997 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:41:05,030.030 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 08:41:05,031.031 INFO    ] No update needed
[2026-06-12 08:41:05,032.032 INFO    ] Checking for camera pi updates...
[2026-06-12 08:41:05,052.052 INFO    ] 200
[2026-06-12 08:41:05,053.053 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:41:05,077.077 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 08:41:05,118.118 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 08:41:05,120.120 INFO    ] No camera update needed
[2026-06-12 08:41:05,121.121 INFO    ] Script finished. Safe exiting...
[2026-06-12 08:41:05,123.123 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 08:41:05,126.126 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 08:41:05,129.129 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 08:41:07,168.168 INFO    ] ================================================
[2026-06-12 08:41:07,184.184 INFO    ] Launching Daemon at Fri Jun 12 08:41:07 IST 2026
[2026-06-12 08:41:07,195.195 INFO    ] ================================================
[2026-06-12 08:41:07,549.549 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 08:41:07
[2026-06-12 08:41:07,868.868 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 08:41:08,012.012 INFO    ] Initializing speech engine...
[2026-06-12 08:41:08,016.016 INFO    ] 2026-06-12 08:41:08
[2026-06-12 08:41:08,222.222 INFO    ] 2026-06-12 08:41:08
[2026-06-12 08:41:08,250.250 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 08:41:08,434.434 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 08:41:08,443.443 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 08:41:08,578.578 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 08:41:08,639.639 INFO    ] time= 12/06/2026 08:41:08
[2026-06-12 08:41:08,663.663 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 08:41:08,670.670 INFO    ] Checking for existing commands in stream...
[2026-06-12 08:41:08,735.735 INFO    ] No existing commands found in stream
[2026-06-12 08:41:13,746.746 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 08:41:13,748.748 INFO    ] Waiting 1.06 seconds before fallback handling...
[2026-06-12 08:41:15,202.202 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 08:41:15,203.203 INFO    ] Checking for system updates...
[2026-06-12 08:41:15,226.226 INFO    ] 200
[2026-06-12 08:41:15,227.227 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:41:15,257.257 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 08:41:15,259.259 INFO    ] No update needed
[2026-06-12 08:41:15,261.261 INFO    ] Checking for camera pi updates...
[2026-06-12 08:41:15,282.282 INFO    ] 200
[2026-06-12 08:41:15,283.283 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:41:15,308.308 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 08:41:15,347.347 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 08:41:15,348.348 INFO    ] No camera update needed
[2026-06-12 08:41:15,349.349 INFO    ] Script finished. Safe exiting...
[2026-06-12 08:41:15,351.351 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 08:41:15,354.354 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 08:41:15,357.357 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 08:41:17,398.398 INFO    ] ================================================
[2026-06-12 08:41:17,413.413 INFO    ] Launching Daemon at Fri Jun 12 08:41:17 IST 2026
[2026-06-12 08:41:17,425.425 INFO    ] ================================================
[2026-06-12 08:41:17,772.772 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 08:41:17
[2026-06-12 08:41:18,084.084 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 08:41:18,217.217 INFO    ] Initializing speech engine...
[2026-06-12 08:41:18,231.231 INFO    ] 2026-06-12 08:41:18
[2026-06-12 08:41:18,438.438 INFO    ] 2026-06-12 08:41:18
[2026-06-12 08:41:18,467.467 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 08:41:18,653.653 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 08:41:18,662.662 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 08:41:18,786.786 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 08:41:18,842.842 INFO    ] time= 12/06/2026 08:41:18
[2026-06-12 08:41:18,878.878 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 08:41:18,888.888 INFO    ] Checking for existing commands in stream...
[2026-06-12 08:41:18,960.960 INFO    ] No existing commands found in stream
[2026-06-12 08:41:23,971.971 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 08:41:23,974.974 INFO    ] Waiting 0.79 seconds before fallback handling...
[2026-06-12 08:41:25,113.113 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 08:41:25,115.115 INFO    ] Checking for system updates...
[2026-06-12 08:41:25,135.135 INFO    ] 200
[2026-06-12 08:41:25,137.137 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:41:25,167.167 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 08:41:25,169.169 INFO    ] No update needed
[2026-06-12 08:41:25,170.170 INFO    ] Checking for camera pi updates...
[2026-06-12 08:41:25,191.191 INFO    ] 200
[2026-06-12 08:41:25,192.192 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:41:25,217.217 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 08:41:25,253.253 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 08:41:25,254.254 INFO    ] No camera update needed
[2026-06-12 08:41:25,256.256 INFO    ] Script finished. Safe exiting...
[2026-06-12 08:41:25,257.257 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 08:41:25,260.260 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 08:41:25,263.263 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 08:41:27,305.305 INFO    ] ================================================
[2026-06-12 08:41:27,321.321 INFO    ] Launching Daemon at Fri Jun 12 08:41:27 IST 2026
[2026-06-12 08:41:27,333.333 INFO    ] ================================================
[2026-06-12 08:41:27,702.702 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 08:41:27
[2026-06-12 08:41:28,018.018 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 08:41:28,162.162 INFO    ] Initializing speech engine...
[2026-06-12 08:41:28,167.167 INFO    ] 2026-06-12 08:41:28
[2026-06-12 08:41:28,371.371 INFO    ] 2026-06-12 08:41:28
[2026-06-12 08:41:28,399.399 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 08:41:28,584.584 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 08:41:28,593.593 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 08:41:28,738.738 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 08:41:28,789.789 INFO    ] time= 12/06/2026 08:41:28
[2026-06-12 08:41:28,813.813 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 08:41:28,814.814 INFO    ] Checking for existing commands in stream...
[2026-06-12 08:41:28,885.885 INFO    ] No existing commands found in stream
[2026-06-12 08:41:33,890.890 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 08:41:33,893.893 INFO    ] Waiting 0.81 seconds before fallback handling...
[2026-06-12 08:41:35,063.063 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 08:41:35,065.065 INFO    ] Checking for system updates...
[2026-06-12 08:41:35,086.086 INFO    ] 200
[2026-06-12 08:41:35,087.087 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:41:35,118.118 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 08:41:35,120.120 INFO    ] No update needed
[2026-06-12 08:41:35,122.122 INFO    ] Checking for camera pi updates...
[2026-06-12 08:41:35,142.142 INFO    ] 200
[2026-06-12 08:41:35,143.143 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:41:35,167.167 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 08:41:35,207.207 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 08:41:35,208.208 INFO    ] No camera update needed
[2026-06-12 08:41:35,210.210 INFO    ] Script finished. Safe exiting...
[2026-06-12 08:41:35,211.211 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 08:41:35,214.214 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 08:41:35,217.217 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 08:41:37,257.257 INFO    ] ================================================
[2026-06-12 08:41:37,273.273 INFO    ] Launching Daemon at Fri Jun 12 08:41:37 IST 2026
[2026-06-12 08:41:37,284.284 INFO    ] ================================================
[2026-06-12 08:41:37,635.635 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 08:41:37
[2026-06-12 08:41:37,953.953 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 08:41:38,086.086 INFO    ] Initializing speech engine...
[2026-06-12 08:41:38,094.094 INFO    ] 2026-06-12 08:41:38
[2026-06-12 08:41:38,307.307 INFO    ] 2026-06-12 08:41:38
[2026-06-12 08:41:38,336.336 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 08:41:38,519.519 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 08:41:38,529.529 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 08:41:38,659.659 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 08:41:38,723.723 INFO    ] time= 12/06/2026 08:41:38
[2026-06-12 08:41:38,750.750 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 08:41:38,752.752 INFO    ] Checking for existing commands in stream...
[2026-06-12 08:41:38,824.824 INFO    ] No existing commands found in stream
[2026-06-12 08:41:43,833.833 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 08:41:43,836.836 INFO    ] Waiting 1.92 seconds before fallback handling...
[2026-06-12 08:41:46,154.154 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 08:41:46,165.165 INFO    ] Checking for system updates...
[2026-06-12 08:41:46,188.188 INFO    ] 200
[2026-06-12 08:41:46,189.189 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:41:46,229.229 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 08:41:46,231.231 INFO    ] No update needed
[2026-06-12 08:41:46,232.232 INFO    ] Checking for camera pi updates...
[2026-06-12 08:41:46,255.255 INFO    ] 200
[2026-06-12 08:41:46,256.256 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:41:46,282.282 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 08:41:46,320.320 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 08:41:46,321.321 INFO    ] No camera update needed
[2026-06-12 08:41:46,323.323 INFO    ] Script finished. Safe exiting...
[2026-06-12 08:41:46,324.324 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 08:41:46,328.328 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 08:41:46,331.331 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 08:41:48,372.372 INFO    ] ================================================
[2026-06-12 08:41:48,387.387 INFO    ] Launching Daemon at Fri Jun 12 08:41:48 IST 2026
[2026-06-12 08:41:48,399.399 INFO    ] ================================================
[2026-06-12 08:41:48,755.755 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 08:41:48
[2026-06-12 08:41:49,073.073 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 08:41:49,207.207 INFO    ] Initializing speech engine...
[2026-06-12 08:41:49,212.212 INFO    ] 2026-06-12 08:41:49
[2026-06-12 08:41:49,407.407 INFO    ] 2026-06-12 08:41:49
[2026-06-12 08:41:49,453.453 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 08:41:49,616.616 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 08:41:49,653.653 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 08:41:49,797.797 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 08:41:49,833.833 INFO    ] time= 12/06/2026 08:41:49
[2026-06-12 08:41:49,879.879 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 08:41:49,919.919 INFO    ] Checking for existing commands in stream...
[2026-06-12 08:41:50,019.019 INFO    ] No existing commands found in stream
[2026-06-12 08:41:55,029.029 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 08:41:55,032.032 INFO    ] Waiting 1.24 seconds before fallback handling...
[2026-06-12 08:41:56,612.612 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 08:41:56,613.613 INFO    ] Checking for system updates...
[2026-06-12 08:41:56,635.635 INFO    ] 200
[2026-06-12 08:41:56,636.636 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:41:56,667.667 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 08:41:56,668.668 INFO    ] No update needed
[2026-06-12 08:41:56,670.670 INFO    ] Checking for camera pi updates...
[2026-06-12 08:41:56,690.690 INFO    ] 200
[2026-06-12 08:41:56,692.692 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:41:56,717.717 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 08:41:56,856.856 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 08:41:56,858.858 INFO    ] No camera update needed
[2026-06-12 08:41:56,859.859 INFO    ] Script finished. Safe exiting...
[2026-06-12 08:41:56,861.861 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 08:41:56,864.864 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 08:41:56,867.867 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 08:41:58,906.906 INFO    ] ================================================
[2026-06-12 08:41:58,922.922 INFO    ] Launching Daemon at Fri Jun 12 08:41:58 IST 2026
[2026-06-12 08:41:58,933.933 INFO    ] ================================================
[2026-06-12 08:41:59,279.279 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 08:41:59
[2026-06-12 08:41:59,591.591 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 08:41:59,723.723 INFO    ] Initializing speech engine...
[2026-06-12 08:41:59,731.731 INFO    ] 2026-06-12 08:41:59
[2026-06-12 08:41:59,947.947 INFO    ] 2026-06-12 08:41:59
[2026-06-12 08:41:59,975.975 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 08:42:00,099.099 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 08:42:00,162.162 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 08:42:00,300.300 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 08:42:00,361.361 INFO    ] time= 12/06/2026 08:42:00
[2026-06-12 08:42:00,395.395 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 08:42:00,401.401 INFO    ] Checking for existing commands in stream...
[2026-06-12 08:42:00,469.469 INFO    ] No existing commands found in stream
[2026-06-12 08:42:05,478.478 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 08:42:05,481.481 INFO    ] Waiting 2.20 seconds before fallback handling...
[2026-06-12 08:42:08,050.050 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 08:42:08,051.051 INFO    ] Checking for system updates...
[2026-06-12 08:42:08,072.072 INFO    ] 200
[2026-06-12 08:42:08,073.073 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:42:08,106.106 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 08:42:08,107.107 INFO    ] No update needed
[2026-06-12 08:42:08,109.109 INFO    ] Checking for camera pi updates...
[2026-06-12 08:42:08,128.128 INFO    ] 200
[2026-06-12 08:42:08,129.129 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:42:08,155.155 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 08:42:08,193.193 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 08:42:08,195.195 INFO    ] No camera update needed
[2026-06-12 08:42:08,196.196 INFO    ] Script finished. Safe exiting...
[2026-06-12 08:42:08,197.197 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 08:42:08,201.201 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 08:42:08,204.204 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 08:42:10,248.248 INFO    ] ================================================
[2026-06-12 08:42:10,264.264 INFO    ] Launching Daemon at Fri Jun 12 08:42:10 IST 2026
[2026-06-12 08:42:10,276.276 INFO    ] ================================================
[2026-06-12 08:42:10,633.633 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 08:42:10
[2026-06-12 08:42:10,950.950 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 08:42:11,085.085 INFO    ] Initializing speech engine...
[2026-06-12 08:42:11,090.090 INFO    ] 2026-06-12 08:42:11
[2026-06-12 08:42:11,302.302 INFO    ] 2026-06-12 08:42:11
[2026-06-12 08:42:11,356.356 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 08:42:11,547.547 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 08:42:11,561.561 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 08:42:11,704.704 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 08:42:11,756.756 INFO    ] time= 12/06/2026 08:42:11
[2026-06-12 08:42:11,796.796 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 08:42:11,814.814 INFO    ] Checking for existing commands in stream...
[2026-06-12 08:42:11,893.893 INFO    ] No existing commands found in stream
[2026-06-12 08:42:16,902.902 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 08:42:16,905.905 INFO    ] Waiting 3.67 seconds before fallback handling...
[2026-06-12 08:42:20,930.930 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 08:42:20,932.932 INFO    ] Checking for system updates...
[2026-06-12 08:42:20,954.954 INFO    ] 200
[2026-06-12 08:42:20,955.955 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:42:20,985.985 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 08:42:20,987.987 INFO    ] No update needed
[2026-06-12 08:42:20,988.988 INFO    ] Checking for camera pi updates...
[2026-06-12 08:42:21,009.009 INFO    ] 200
[2026-06-12 08:42:21,011.011 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:42:21,036.036 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 08:42:21,073.073 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 08:42:21,074.074 INFO    ] No camera update needed
[2026-06-12 08:42:21,076.076 INFO    ] Script finished. Safe exiting...
[2026-06-12 08:42:21,077.077 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 08:42:21,080.080 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 08:42:21,083.083 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 08:42:23,122.122 INFO    ] ================================================
[2026-06-12 08:42:23,138.138 INFO    ] Launching Daemon at Fri Jun 12 08:42:23 IST 2026
[2026-06-12 08:42:23,149.149 INFO    ] ================================================
[2026-06-12 08:42:23,493.493 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 08:42:23
[2026-06-12 08:42:23,804.804 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 08:42:23,938.938 INFO    ] Initializing speech engine...
[2026-06-12 08:42:23,942.942 INFO    ] 2026-06-12 08:42:23
[2026-06-12 08:42:24,136.136 INFO    ] 2026-06-12 08:42:24
[2026-06-12 08:42:24,181.181 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 08:42:24,343.343 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 08:42:24,382.382 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 08:42:24,558.558 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 08:42:24,606.606 INFO    ] time= 12/06/2026 08:42:24
[2026-06-12 08:42:24,645.645 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 08:42:24,669.669 INFO    ] Checking for existing commands in stream...
[2026-06-12 08:42:24,747.747 INFO    ] No existing commands found in stream
[2026-06-12 08:42:29,758.758 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 08:42:29,761.761 INFO    ] Waiting 0.78 seconds before fallback handling...
[2026-06-12 08:42:30,910.910 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 08:42:30,912.912 INFO    ] Checking for system updates...
[2026-06-12 08:42:30,932.932 INFO    ] 200
[2026-06-12 08:42:30,934.934 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:42:30,964.964 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 08:42:30,965.965 INFO    ] No update needed
[2026-06-12 08:42:30,966.966 INFO    ] Checking for camera pi updates...
[2026-06-12 08:42:30,988.988 INFO    ] 200
[2026-06-12 08:42:30,989.989 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:42:31,014.014 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 08:42:31,055.055 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 08:42:31,056.056 INFO    ] No camera update needed
[2026-06-12 08:42:31,058.058 INFO    ] Script finished. Safe exiting...
[2026-06-12 08:42:31,059.059 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 08:42:31,063.063 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 08:42:31,066.066 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 08:42:33,090.090 INFO    ] ================================================
[2026-06-12 08:42:33,099.099 INFO    ] Launching Daemon at Fri Jun 12 08:42:33 IST 2026
[2026-06-12 08:42:33,105.105 INFO    ] ================================================
[2026-06-12 08:42:33,411.411 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 08:42:33
[2026-06-12 08:42:33,729.729 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 08:42:33,873.873 INFO    ] Initializing speech engine...
[2026-06-12 08:42:33,878.878 INFO    ] 2026-06-12 08:42:33
[2026-06-12 08:42:34,083.083 INFO    ] 2026-06-12 08:42:34
[2026-06-12 08:42:34,111.111 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 08:42:34,295.295 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 08:42:34,305.305 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 08:42:34,427.427 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 08:42:34,483.483 INFO    ] time= 12/06/2026 08:42:34
[2026-06-12 08:42:34,523.523 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 08:42:34,528.528 INFO    ] Checking for existing commands in stream...
[2026-06-12 08:42:34,599.599 INFO    ] No existing commands found in stream
[2026-06-12 08:42:39,609.609 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 08:42:39,612.612 INFO    ] Waiting 1.38 seconds before fallback handling...
[2026-06-12 08:42:41,366.366 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 08:42:41,368.368 INFO    ] Checking for system updates...
[2026-06-12 08:42:41,388.388 INFO    ] 200
[2026-06-12 08:42:41,390.390 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:42:41,434.434 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 08:42:41,435.435 INFO    ] No update needed
[2026-06-12 08:42:41,436.436 INFO    ] Checking for camera pi updates...
[2026-06-12 08:42:41,456.456 INFO    ] 200
[2026-06-12 08:42:41,457.457 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:42:41,481.481 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 08:42:41,519.519 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 08:42:41,521.521 INFO    ] No camera update needed
[2026-06-12 08:42:41,522.522 INFO    ] Script finished. Safe exiting...
[2026-06-12 08:42:41,523.523 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 08:42:41,526.526 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 08:42:41,529.529 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 08:42:43,571.571 INFO    ] ================================================
[2026-06-12 08:42:43,587.587 INFO    ] Launching Daemon at Fri Jun 12 08:42:43 IST 2026
[2026-06-12 08:42:43,599.599 INFO    ] ================================================
[2026-06-12 08:42:43,977.977 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 08:42:43
[2026-06-12 08:42:44,322.322 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 08:42:44,479.479 INFO    ] Initializing speech engine...
[2026-06-12 08:42:44,484.484 INFO    ] 2026-06-12 08:42:44
[2026-06-12 08:42:44,690.690 INFO    ] 2026-06-12 08:42:44
[2026-06-12 08:42:44,720.720 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 08:42:44,904.904 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 08:42:44,908.908 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 08:42:45,065.065 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 08:42:45,119.119 INFO    ] time= 12/06/2026 08:42:45
[2026-06-12 08:42:45,135.135 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 08:42:45,142.142 INFO    ] Checking for existing commands in stream...
[2026-06-12 08:42:45,208.208 INFO    ] No existing commands found in stream
[2026-06-12 08:42:50,223.223 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 08:42:50,226.226 INFO    ] Waiting 0.24 seconds before fallback handling...
[2026-06-12 08:42:50,839.839 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 08:42:50,841.841 INFO    ] Checking for system updates...
[2026-06-12 08:42:50,863.863 INFO    ] 200
[2026-06-12 08:42:50,865.865 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:42:50,898.898 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 08:42:50,899.899 INFO    ] No update needed
[2026-06-12 08:42:50,900.900 INFO    ] Checking for camera pi updates...
[2026-06-12 08:42:50,920.920 INFO    ] 200
[2026-06-12 08:42:50,921.921 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:42:50,946.946 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 08:42:50,983.983 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 08:42:50,985.985 INFO    ] No camera update needed
[2026-06-12 08:42:50,986.986 INFO    ] Script finished. Safe exiting...
[2026-06-12 08:42:50,987.987 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 08:42:50,990.990 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 08:42:50,993.993 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 08:42:53,032.032 INFO    ] ================================================
[2026-06-12 08:42:53,048.048 INFO    ] Launching Daemon at Fri Jun 12 08:42:53 IST 2026
[2026-06-12 08:42:53,059.059 INFO    ] ================================================
[2026-06-12 08:42:53,440.440 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 08:42:53
[2026-06-12 08:42:53,759.759 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 08:42:53,904.904 INFO    ] Initializing speech engine...
[2026-06-12 08:42:53,908.908 INFO    ] 2026-06-12 08:42:53
[2026-06-12 08:42:54,114.114 INFO    ] 2026-06-12 08:42:54
[2026-06-12 08:42:54,143.143 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 08:42:54,326.326 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 08:42:54,335.335 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 08:42:54,465.465 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 08:42:54,532.532 INFO    ] time= 12/06/2026 08:42:54
[2026-06-12 08:42:54,556.556 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 08:42:54,562.562 INFO    ] Checking for existing commands in stream...
[2026-06-12 08:42:54,629.629 INFO    ] No existing commands found in stream
[2026-06-12 08:42:59,643.643 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 08:42:59,646.646 INFO    ] Waiting 0.16 seconds before fallback handling...
[2026-06-12 08:43:00,163.163 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 08:43:00,164.164 INFO    ] Checking for system updates...
[2026-06-12 08:43:00,187.187 INFO    ] 200
[2026-06-12 08:43:00,188.188 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:43:00,219.219 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 08:43:00,221.221 INFO    ] No update needed
[2026-06-12 08:43:00,222.222 INFO    ] Checking for camera pi updates...
[2026-06-12 08:43:00,242.242 INFO    ] 200
[2026-06-12 08:43:00,244.244 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:43:00,269.269 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 08:43:00,305.305 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 08:43:00,307.307 INFO    ] No camera update needed
[2026-06-12 08:43:00,308.308 INFO    ] Script finished. Safe exiting...
[2026-06-12 08:43:00,309.309 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 08:43:00,313.313 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 08:43:00,315.315 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 08:43:02,342.342 INFO    ] ================================================
[2026-06-12 08:43:02,351.351 INFO    ] Launching Daemon at Fri Jun 12 08:43:02 IST 2026
[2026-06-12 08:43:02,358.358 INFO    ] ================================================
[2026-06-12 08:43:02,711.711 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 08:43:02
[2026-06-12 08:43:03,029.029 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 08:43:03,165.165 INFO    ] Initializing speech engine...
[2026-06-12 08:43:03,169.169 INFO    ] 2026-06-12 08:43:03
[2026-06-12 08:43:03,380.380 INFO    ] 2026-06-12 08:43:03
[2026-06-12 08:43:03,409.409 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 08:43:03,568.568 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 08:43:03,587.587 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 08:43:03,756.756 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 08:43:03,786.786 INFO    ] time= 12/06/2026 08:43:03
[2026-06-12 08:43:03,847.847 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 08:43:03,893.893 INFO    ] Checking for existing commands in stream...
[2026-06-12 08:43:03,971.971 INFO    ] No existing commands found in stream
[2026-06-12 08:43:08,982.982 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 08:43:08,985.985 INFO    ] Waiting 3.77 seconds before fallback handling...
[2026-06-12 08:43:13,121.121 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 08:43:13,122.122 INFO    ] Checking for system updates...
[2026-06-12 08:43:13,143.143 INFO    ] 200
[2026-06-12 08:43:13,144.144 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:43:13,182.182 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 08:43:13,183.183 INFO    ] No update needed
[2026-06-12 08:43:13,184.184 INFO    ] Checking for camera pi updates...
[2026-06-12 08:43:13,203.203 INFO    ] 200
[2026-06-12 08:43:13,205.205 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:43:13,230.230 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 08:43:13,269.269 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 08:43:13,271.271 INFO    ] No camera update needed
[2026-06-12 08:43:13,272.272 INFO    ] Script finished. Safe exiting...
[2026-06-12 08:43:13,273.273 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 08:43:13,276.276 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 08:43:13,279.279 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 08:43:15,319.319 INFO    ] ================================================
[2026-06-12 08:43:15,335.335 INFO    ] Launching Daemon at Fri Jun 12 08:43:15 IST 2026
[2026-06-12 08:43:15,346.346 INFO    ] ================================================
[2026-06-12 08:43:15,712.712 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 08:43:15
[2026-06-12 08:43:16,025.025 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 08:43:16,168.168 INFO    ] Initializing speech engine...
[2026-06-12 08:43:16,173.173 INFO    ] 2026-06-12 08:43:16
[2026-06-12 08:43:16,378.378 INFO    ] 2026-06-12 08:43:16
[2026-06-12 08:43:16,408.408 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 08:43:16,596.596 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 08:43:16,606.606 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 08:43:16,729.729 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 08:43:16,785.785 INFO    ] time= 12/06/2026 08:43:16
[2026-06-12 08:43:16,826.826 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 08:43:16,831.831 INFO    ] Checking for existing commands in stream...
[2026-06-12 08:43:16,902.902 INFO    ] No existing commands found in stream
[2026-06-12 08:43:21,912.912 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 08:43:21,915.915 INFO    ] Waiting 1.80 seconds before fallback handling...
[2026-06-12 08:43:24,077.077 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 08:43:24,078.078 INFO    ] Checking for system updates...
[2026-06-12 08:43:24,100.100 INFO    ] 200
[2026-06-12 08:43:24,102.102 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:43:24,132.132 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 08:43:24,133.133 INFO    ] No update needed
[2026-06-12 08:43:24,135.135 INFO    ] Checking for camera pi updates...
[2026-06-12 08:43:24,155.155 INFO    ] 200
[2026-06-12 08:43:24,157.157 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:43:24,182.182 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 08:43:24,219.219 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 08:43:24,221.221 INFO    ] No camera update needed
[2026-06-12 08:43:24,222.222 INFO    ] Script finished. Safe exiting...
[2026-06-12 08:43:24,223.223 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 08:43:24,226.226 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 08:43:24,229.229 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 08:43:26,267.267 INFO    ] ================================================
[2026-06-12 08:43:26,283.283 INFO    ] Launching Daemon at Fri Jun 12 08:43:26 IST 2026
[2026-06-12 08:43:26,293.293 INFO    ] ================================================
[2026-06-12 08:43:26,675.675 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 08:43:26
[2026-06-12 08:43:26,989.989 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 08:43:27,125.125 INFO    ] Initializing speech engine...
[2026-06-12 08:43:27,133.133 INFO    ] 2026-06-12 08:43:27
[2026-06-12 08:43:27,334.334 INFO    ] 2026-06-12 08:43:27
[2026-06-12 08:43:27,369.369 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 08:43:27,530.530 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 08:43:27,594.594 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 08:43:27,750.750 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 08:43:27,801.801 INFO    ] time= 12/06/2026 08:43:27
[2026-06-12 08:43:27,838.838 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 08:43:27,862.862 INFO    ] Checking for existing commands in stream...
[2026-06-12 08:43:27,940.940 INFO    ] No existing commands found in stream
[2026-06-12 08:43:32,951.951 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 08:43:32,954.954 INFO    ] Waiting 3.20 seconds before fallback handling...
[2026-06-12 08:43:36,532.532 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 08:43:36,533.533 INFO    ] Checking for system updates...
[2026-06-12 08:43:36,554.554 INFO    ] 200
[2026-06-12 08:43:36,555.555 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:43:36,586.586 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 08:43:36,587.587 INFO    ] No update needed
[2026-06-12 08:43:36,589.589 INFO    ] Checking for camera pi updates...
[2026-06-12 08:43:36,610.610 INFO    ] 200
[2026-06-12 08:43:36,611.611 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:43:36,636.636 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 08:43:36,678.678 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 08:43:36,679.679 INFO    ] No camera update needed
[2026-06-12 08:43:36,681.681 INFO    ] Script finished. Safe exiting...
[2026-06-12 08:43:36,682.682 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 08:43:36,685.685 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 08:43:36,688.688 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 08:43:38,726.726 INFO    ] ================================================
[2026-06-12 08:43:38,742.742 INFO    ] Launching Daemon at Fri Jun 12 08:43:38 IST 2026
[2026-06-12 08:43:38,752.752 INFO    ] ================================================
[2026-06-12 08:43:39,138.138 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 08:43:39
[2026-06-12 08:43:39,482.482 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 08:43:39,637.637 INFO    ] Initializing speech engine...
[2026-06-12 08:43:39,643.643 INFO    ] 2026-06-12 08:43:39
[2026-06-12 08:43:39,854.854 INFO    ] 2026-06-12 08:43:39
[2026-06-12 08:43:39,883.883 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 08:43:40,033.033 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 08:43:40,034.034 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 08:43:40,165.165 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 08:43:40,222.222 INFO    ] time= 12/06/2026 08:43:40
[2026-06-12 08:43:40,249.249 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 08:43:40,306.306 INFO    ] Checking for existing commands in stream...
[2026-06-12 08:43:40,407.407 INFO    ] No existing commands found in stream
[2026-06-12 08:43:45,418.418 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 08:43:45,421.421 INFO    ] Waiting 1.31 seconds before fallback handling...
[2026-06-12 08:43:47,077.077 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 08:43:47,078.078 INFO    ] Checking for system updates...
[2026-06-12 08:43:47,099.099 INFO    ] 200
[2026-06-12 08:43:47,101.101 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:43:47,131.131 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 08:43:47,133.133 INFO    ] No update needed
[2026-06-12 08:43:47,134.134 INFO    ] Checking for camera pi updates...
[2026-06-12 08:43:47,155.155 INFO    ] 200
[2026-06-12 08:43:47,157.157 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:43:47,185.185 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 08:43:47,222.222 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 08:43:47,223.223 INFO    ] No camera update needed
[2026-06-12 08:43:47,225.225 INFO    ] Script finished. Safe exiting...
[2026-06-12 08:43:47,226.226 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 08:43:47,229.229 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 08:43:47,233.233 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 08:43:49,272.272 INFO    ] ================================================
[2026-06-12 08:43:49,287.287 INFO    ] Launching Daemon at Fri Jun 12 08:43:49 IST 2026
[2026-06-12 08:43:49,298.298 INFO    ] ================================================
[2026-06-12 08:43:49,648.648 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 08:43:49
[2026-06-12 08:43:49,967.967 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 08:43:50,110.110 INFO    ] Initializing speech engine...
[2026-06-12 08:43:50,123.123 INFO    ] 2026-06-12 08:43:50
[2026-06-12 08:43:50,317.317 INFO    ] 2026-06-12 08:43:50
[2026-06-12 08:43:50,346.346 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 08:43:50,530.530 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 08:43:50,533.533 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 08:43:50,669.669 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 08:43:50,736.736 INFO    ] time= 12/06/2026 08:43:50
[2026-06-12 08:43:50,760.760 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 08:43:50,762.762 INFO    ] Checking for existing commands in stream...
[2026-06-12 08:43:50,833.833 INFO    ] No existing commands found in stream
[2026-06-12 08:43:55,842.842 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 08:43:55,845.845 INFO    ] Waiting 2.62 seconds before fallback handling...
[2026-06-12 08:43:58,831.831 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 08:43:58,832.832 INFO    ] Checking for system updates...
[2026-06-12 08:43:58,855.855 INFO    ] 200
[2026-06-12 08:43:58,857.857 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:43:58,895.895 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 08:43:58,897.897 INFO    ] No update needed
[2026-06-12 08:43:58,898.898 INFO    ] Checking for camera pi updates...
[2026-06-12 08:43:58,921.921 INFO    ] 200
[2026-06-12 08:43:58,922.922 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:43:58,948.948 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 08:43:59,093.093 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 08:43:59,094.094 INFO    ] No camera update needed
[2026-06-12 08:43:59,096.096 INFO    ] Script finished. Safe exiting...
[2026-06-12 08:43:59,097.097 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 08:43:59,101.101 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 08:43:59,104.104 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 08:44:01,142.142 INFO    ] ================================================
[2026-06-12 08:44:01,158.158 INFO    ] Launching Daemon at Fri Jun 12 08:44:01 IST 2026
[2026-06-12 08:44:01,170.170 INFO    ] ================================================
[2026-06-12 08:44:01,629.629 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 08:44:01
[2026-06-12 08:44:01,997.997 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 08:44:02,178.178 INFO    ] Initializing speech engine...
[2026-06-12 08:44:02,188.188 INFO    ] 2026-06-12 08:44:02
[2026-06-12 08:44:02,387.387 INFO    ] 2026-06-12 08:44:02
[2026-06-12 08:44:02,440.440 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 08:44:02,567.567 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 08:44:02,603.603 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 08:44:02,762.762 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 08:44:02,808.808 INFO    ] time= 12/06/2026 08:44:02
[2026-06-12 08:44:02,830.830 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 08:44:02,894.894 INFO    ] Checking for existing commands in stream...
[2026-06-12 08:44:03,005.005 INFO    ] No existing commands found in stream
[2026-06-12 08:44:08,016.016 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 08:44:08,019.019 INFO    ] Waiting 3.40 seconds before fallback handling...
[2026-06-12 08:44:11,775.775 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 08:44:11,776.776 INFO    ] Checking for system updates...
[2026-06-12 08:44:11,797.797 INFO    ] 200
[2026-06-12 08:44:11,798.798 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:44:11,831.831 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 08:44:11,833.833 INFO    ] No update needed
[2026-06-12 08:44:11,834.834 INFO    ] Checking for camera pi updates...
[2026-06-12 08:44:11,855.855 INFO    ] 200
[2026-06-12 08:44:11,856.856 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:44:11,880.880 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 08:44:11,901.901 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 08:44:11,902.902 INFO    ] No camera update needed
[2026-06-12 08:44:11,903.903 INFO    ] Script finished. Safe exiting...
[2026-06-12 08:44:11,905.905 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 08:44:11,908.908 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 08:44:11,911.911 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 08:44:13,951.951 INFO    ] ================================================
[2026-06-12 08:44:13,966.966 INFO    ] Launching Daemon at Fri Jun 12 08:44:13 IST 2026
[2026-06-12 08:44:13,976.976 INFO    ] ================================================
[2026-06-12 08:44:14,335.335 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 08:44:14
[2026-06-12 08:44:14,646.646 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 08:44:14,787.787 INFO    ] Initializing speech engine...
[2026-06-12 08:44:14,791.791 INFO    ] 2026-06-12 08:44:14
[2026-06-12 08:44:14,994.994 INFO    ] 2026-06-12 08:44:14
[2026-06-12 08:44:15,023.023 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 08:44:15,204.204 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 08:44:15,214.214 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 08:44:15,359.359 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 08:44:15,411.411 INFO    ] time= 12/06/2026 08:44:15
[2026-06-12 08:44:15,433.433 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 08:44:15,439.439 INFO    ] Checking for existing commands in stream...
[2026-06-12 08:44:15,506.506 INFO    ] No existing commands found in stream
[2026-06-12 08:44:20,515.515 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 08:44:20,517.517 INFO    ] Waiting 3.03 seconds before fallback handling...
[2026-06-12 08:44:23,935.935 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 08:44:23,936.936 INFO    ] Checking for system updates...
[2026-06-12 08:44:23,957.957 INFO    ] 200
[2026-06-12 08:44:23,958.958 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:44:23,991.991 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 08:44:23,992.992 INFO    ] No update needed
[2026-06-12 08:44:23,993.993 INFO    ] Checking for camera pi updates...
[2026-06-12 08:44:24,014.014 INFO    ] 200
[2026-06-12 08:44:24,015.015 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:44:24,039.039 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 08:44:24,073.073 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 08:44:24,074.074 INFO    ] No camera update needed
[2026-06-12 08:44:24,076.076 INFO    ] Script finished. Safe exiting...
[2026-06-12 08:44:24,077.077 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 08:44:24,080.080 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 08:44:24,083.083 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 08:44:26,123.123 INFO    ] ================================================
[2026-06-12 08:44:26,139.139 INFO    ] Launching Daemon at Fri Jun 12 08:44:26 IST 2026
[2026-06-12 08:44:26,151.151 INFO    ] ================================================
[2026-06-12 08:44:26,533.533 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 08:44:26
[2026-06-12 08:44:26,847.847 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 08:44:26,990.990 INFO    ] Initializing speech engine...
[2026-06-12 08:44:26,995.995 INFO    ] 2026-06-12 08:44:26
[2026-06-12 08:44:27,198.198 INFO    ] 2026-06-12 08:44:27
[2026-06-12 08:44:27,227.227 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 08:44:27,409.409 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 08:44:27,419.419 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 08:44:27,557.557 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 08:44:27,614.614 INFO    ] time= 12/06/2026 08:44:27
[2026-06-12 08:44:27,637.637 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 08:44:27,643.643 INFO    ] Checking for existing commands in stream...
[2026-06-12 08:44:27,708.708 INFO    ] No existing commands found in stream
[2026-06-12 08:44:32,719.719 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 08:44:32,722.722 INFO    ] Waiting 1.28 seconds before fallback handling...
[2026-06-12 08:44:34,367.367 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 08:44:34,369.369 INFO    ] Checking for system updates...
[2026-06-12 08:44:34,391.391 INFO    ] 200
[2026-06-12 08:44:34,392.392 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:44:34,422.422 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 08:44:34,424.424 INFO    ] No update needed
[2026-06-12 08:44:34,425.425 INFO    ] Checking for camera pi updates...
[2026-06-12 08:44:34,445.445 INFO    ] 200
[2026-06-12 08:44:34,446.446 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:44:34,471.471 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 08:44:34,508.508 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 08:44:34,510.510 INFO    ] No camera update needed
[2026-06-12 08:44:34,511.511 INFO    ] Script finished. Safe exiting...
[2026-06-12 08:44:34,513.513 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 08:44:34,516.516 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 08:44:34,518.518 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 08:44:36,557.557 INFO    ] ================================================
[2026-06-12 08:44:36,573.573 INFO    ] Launching Daemon at Fri Jun 12 08:44:36 IST 2026
[2026-06-12 08:44:36,584.584 INFO    ] ================================================
[2026-06-12 08:44:36,931.931 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 08:44:36
[2026-06-12 08:44:37,242.242 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 08:44:37,374.374 INFO    ] Initializing speech engine...
[2026-06-12 08:44:37,379.379 INFO    ] 2026-06-12 08:44:37
[2026-06-12 08:44:37,589.589 INFO    ] 2026-06-12 08:44:37
[2026-06-12 08:44:37,618.618 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 08:44:37,778.778 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 08:44:37,781.781 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 08:44:37,925.925 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 08:44:37,975.975 INFO    ] time= 12/06/2026 08:44:37
[2026-06-12 08:44:38,000.000 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 08:44:38,052.052 INFO    ] Checking for existing commands in stream...
[2026-06-12 08:44:38,189.189 INFO    ] No existing commands found in stream
[2026-06-12 08:44:43,200.200 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 08:44:43,203.203 INFO    ] Waiting 3.67 seconds before fallback handling...
[2026-06-12 08:44:47,228.228 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 08:44:47,230.230 INFO    ] Checking for system updates...
[2026-06-12 08:44:47,251.251 INFO    ] 200
[2026-06-12 08:44:47,253.253 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:44:47,284.284 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 08:44:47,285.285 INFO    ] No update needed
[2026-06-12 08:44:47,287.287 INFO    ] Checking for camera pi updates...
[2026-06-12 08:44:47,308.308 INFO    ] 200
[2026-06-12 08:44:47,310.310 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:44:47,338.338 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 08:44:47,374.374 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 08:44:47,376.376 INFO    ] No camera update needed
[2026-06-12 08:44:47,377.377 INFO    ] Script finished. Safe exiting...
[2026-06-12 08:44:47,379.379 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 08:44:47,382.382 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 08:44:47,385.385 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 08:44:49,424.424 INFO    ] ================================================
[2026-06-12 08:44:49,440.440 INFO    ] Launching Daemon at Fri Jun 12 08:44:49 IST 2026
[2026-06-12 08:44:49,450.450 INFO    ] ================================================
[2026-06-12 08:44:49,794.794 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 08:44:49
[2026-06-12 08:44:50,113.113 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 08:44:50,245.245 INFO    ] Initializing speech engine...
[2026-06-12 08:44:50,258.258 INFO    ] 2026-06-12 08:44:50
[2026-06-12 08:44:50,466.466 INFO    ] 2026-06-12 08:44:50
[2026-06-12 08:44:50,494.494 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 08:44:50,676.676 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 08:44:50,686.686 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 08:44:50,815.815 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 08:44:50,869.869 INFO    ] time= 12/06/2026 08:44:50
[2026-06-12 08:44:50,898.898 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 08:44:50,908.908 INFO    ] Checking for existing commands in stream...
[2026-06-12 08:44:50,978.978 INFO    ] No existing commands found in stream
[2026-06-12 08:44:55,989.989 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 08:44:55,992.992 INFO    ] Waiting 1.59 seconds before fallback handling...
[2026-06-12 08:44:57,938.938 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 08:44:57,940.940 INFO    ] Checking for system updates...
[2026-06-12 08:44:57,962.962 INFO    ] 200
[2026-06-12 08:44:57,964.964 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:44:57,996.996 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 08:44:57,998.998 INFO    ] No update needed
[2026-06-12 08:44:57,999.999 INFO    ] Checking for camera pi updates...
[2026-06-12 08:44:58,020.020 INFO    ] 200
[2026-06-12 08:44:58,021.021 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:44:58,046.046 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 08:44:58,094.094 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 08:44:58,096.096 INFO    ] No camera update needed
[2026-06-12 08:44:58,097.097 INFO    ] Script finished. Safe exiting...
[2026-06-12 08:44:58,098.098 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 08:44:58,101.101 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 08:44:58,104.104 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 08:45:00,143.143 INFO    ] ================================================
[2026-06-12 08:45:00,158.158 INFO    ] Launching Daemon at Fri Jun 12 08:45:00 IST 2026
[2026-06-12 08:45:00,169.169 INFO    ] ================================================
[2026-06-12 08:45:00,553.553 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 08:45:00
[2026-06-12 08:45:00,902.902 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 08:45:01,056.056 INFO    ] Initializing speech engine...
[2026-06-12 08:45:01,062.062 INFO    ] 2026-06-12 08:45:01
[2026-06-12 08:45:01,274.274 INFO    ] 2026-06-12 08:45:01
[2026-06-12 08:45:01,303.303 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 08:45:01,493.493 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 08:45:01,497.497 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 08:45:01,618.618 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 08:45:01,632.632 INFO    ] time= 12/06/2026 08:45:01
[2026-06-12 08:45:01,637.637 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 08:45:01,647.647 INFO    ] Checking for existing commands in stream...
[2026-06-12 08:45:01,733.733 INFO    ] No existing commands found in stream
[2026-06-12 08:45:06,759.759 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 08:45:06,763.763 INFO    ] Waiting 3.24 seconds before fallback handling...
[2026-06-12 08:45:10,373.373 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 08:45:10,375.375 INFO    ] Checking for system updates...
[2026-06-12 08:45:10,397.397 INFO    ] 200
[2026-06-12 08:45:10,399.399 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:45:10,435.435 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 08:45:10,437.437 INFO    ] No update needed
[2026-06-12 08:45:10,438.438 INFO    ] Checking for camera pi updates...
[2026-06-12 08:45:10,461.461 INFO    ] 200
[2026-06-12 08:45:10,462.462 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:45:10,486.486 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 08:45:10,526.526 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 08:45:10,528.528 INFO    ] No camera update needed
[2026-06-12 08:45:10,529.529 INFO    ] Script finished. Safe exiting...
[2026-06-12 08:45:10,531.531 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 08:45:10,534.534 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 08:45:10,537.537 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 08:45:12,578.578 INFO    ] ================================================
[2026-06-12 08:45:12,594.594 INFO    ] Launching Daemon at Fri Jun 12 08:45:12 IST 2026
[2026-06-12 08:45:12,605.605 INFO    ] ================================================
[2026-06-12 08:45:12,959.959 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 08:45:12
[2026-06-12 08:45:13,270.270 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 08:45:13,402.402 INFO    ] Initializing speech engine...
[2026-06-12 08:45:13,415.415 INFO    ] 2026-06-12 08:45:13
[2026-06-12 08:45:13,624.624 INFO    ] 2026-06-12 08:45:13
[2026-06-12 08:45:13,653.653 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 08:45:13,839.839 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 08:45:13,849.849 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 08:45:13,973.973 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 08:45:14,039.039 INFO    ] time= 12/06/2026 08:45:13
[2026-06-12 08:45:14,072.072 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 08:45:14,074.074 INFO    ] Checking for existing commands in stream...
[2026-06-12 08:45:14,146.146 INFO    ] No existing commands found in stream
[2026-06-12 08:45:19,160.160 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 08:45:19,163.163 INFO    ] Waiting 3.03 seconds before fallback handling...
[2026-06-12 08:45:22,491.491 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 08:45:22,494.494 INFO    ] Checking for system updates...
[2026-06-12 08:45:22,554.554 INFO    ] 200
[2026-06-12 08:45:22,557.557 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:45:22,613.613 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 08:45:22,614.614 INFO    ] No update needed
[2026-06-12 08:45:22,616.616 INFO    ] Checking for camera pi updates...
[2026-06-12 08:45:22,641.641 INFO    ] 200
[2026-06-12 08:45:22,643.643 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:45:22,672.672 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 08:45:22,708.708 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 08:45:22,710.710 INFO    ] No camera update needed
[2026-06-12 08:45:22,711.711 INFO    ] Script finished. Safe exiting...
[2026-06-12 08:45:22,713.713 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 08:45:22,716.716 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 08:45:22,720.720 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 08:45:24,752.752 INFO    ] ================================================
[2026-06-12 08:45:24,769.769 INFO    ] Launching Daemon at Fri Jun 12 08:45:24 IST 2026
[2026-06-12 08:45:24,780.780 INFO    ] ================================================
[2026-06-12 08:45:25,161.161 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 08:45:25
[2026-06-12 08:45:25,506.506 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 08:45:25,651.651 INFO    ] Initializing speech engine...
[2026-06-12 08:45:25,656.656 INFO    ] 2026-06-12 08:45:25
[2026-06-12 08:45:25,873.873 INFO    ] 2026-06-12 08:45:25
[2026-06-12 08:45:25,905.905 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 08:45:26,048.048 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 08:45:26,094.094 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 08:45:26,240.240 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 08:45:26,269.269 INFO    ] time= 12/06/2026 08:45:26
[2026-06-12 08:45:26,321.321 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 08:45:26,356.356 INFO    ] Checking for existing commands in stream...
[2026-06-12 08:45:26,481.481 INFO    ] No existing commands found in stream
[2026-06-12 08:45:31,490.490 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 08:45:31,493.493 INFO    ] Waiting 1.44 seconds before fallback handling...
[2026-06-12 08:45:33,246.246 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 08:45:33,248.248 INFO    ] Checking for system updates...
[2026-06-12 08:45:33,270.270 INFO    ] 200
[2026-06-12 08:45:33,271.271 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:45:33,302.302 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 08:45:33,303.303 INFO    ] No update needed
[2026-06-12 08:45:33,304.304 INFO    ] Checking for camera pi updates...
[2026-06-12 08:45:33,324.324 INFO    ] 200
[2026-06-12 08:45:33,325.325 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:45:33,351.351 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 08:45:33,391.391 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 08:45:33,394.394 INFO    ] No camera update needed
[2026-06-12 08:45:33,396.396 INFO    ] Script finished. Safe exiting...
[2026-06-12 08:45:33,398.398 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 08:45:33,404.404 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 08:45:33,409.409 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 08:45:35,451.451 INFO    ] ================================================
[2026-06-12 08:45:35,467.467 INFO    ] Launching Daemon at Fri Jun 12 08:45:35 IST 2026
[2026-06-12 08:45:35,478.478 INFO    ] ================================================
[2026-06-12 08:45:35,808.808 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 08:45:35
[2026-06-12 08:45:36,120.120 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 08:45:36,249.249 INFO    ] Initializing speech engine...
[2026-06-12 08:45:36,254.254 INFO    ] 2026-06-12 08:45:36
[2026-06-12 08:45:36,470.470 INFO    ] 2026-06-12 08:45:36
[2026-06-12 08:45:36,499.499 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 08:45:36,631.631 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 08:45:36,684.684 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 08:45:36,823.823 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 08:45:36,890.890 INFO    ] time= 12/06/2026 08:45:36
[2026-06-12 08:45:36,914.914 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 08:45:36,920.920 INFO    ] Checking for existing commands in stream...
[2026-06-12 08:45:36,986.986 INFO    ] No existing commands found in stream
[2026-06-12 08:45:41,996.996 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 08:45:41,999.999 INFO    ] Waiting 0.58 seconds before fallback handling...
[2026-06-12 08:45:42,931.931 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 08:45:42,932.932 INFO    ] Checking for system updates...
[2026-06-12 08:45:42,953.953 INFO    ] 200
[2026-06-12 08:45:42,955.955 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:45:42,987.987 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 08:45:42,989.989 INFO    ] No update needed
[2026-06-12 08:45:42,990.990 INFO    ] Checking for camera pi updates...
[2026-06-12 08:45:43,011.011 INFO    ] 200
[2026-06-12 08:45:43,013.013 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:45:43,036.036 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 08:45:43,075.075 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 08:45:43,076.076 INFO    ] No camera update needed
[2026-06-12 08:45:43,077.077 INFO    ] Script finished. Safe exiting...
[2026-06-12 08:45:43,079.079 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 08:45:43,082.082 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 08:45:43,085.085 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 08:45:45,126.126 INFO    ] ================================================
[2026-06-12 08:45:45,143.143 INFO    ] Launching Daemon at Fri Jun 12 08:45:45 IST 2026
[2026-06-12 08:45:45,154.154 INFO    ] ================================================
[2026-06-12 08:45:45,500.500 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 08:45:45
[2026-06-12 08:45:45,812.812 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 08:45:45,957.957 INFO    ] Initializing speech engine...
[2026-06-12 08:45:45,962.962 INFO    ] 2026-06-12 08:45:45
[2026-06-12 08:45:46,168.168 INFO    ] 2026-06-12 08:45:46
[2026-06-12 08:45:46,197.197 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 08:45:46,386.386 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 08:45:46,389.389 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 08:45:46,518.518 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 08:45:46,573.573 INFO    ] time= 12/06/2026 08:45:46
[2026-06-12 08:45:46,613.613 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 08:45:46,618.618 INFO    ] Checking for existing commands in stream...
[2026-06-12 08:45:46,709.709 INFO    ] No existing commands found in stream
[2026-06-12 08:45:51,722.722 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 08:45:51,725.725 INFO    ] Waiting 1.28 seconds before fallback handling...
[2026-06-12 08:45:53,373.373 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 08:45:53,375.375 INFO    ] Checking for system updates...
[2026-06-12 08:45:53,397.397 INFO    ] 200
[2026-06-12 08:45:53,398.398 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:45:53,428.428 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 08:45:53,429.429 INFO    ] No update needed
[2026-06-12 08:45:53,431.431 INFO    ] Checking for camera pi updates...
[2026-06-12 08:45:53,450.450 INFO    ] 200
[2026-06-12 08:45:53,452.452 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:45:53,477.477 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 08:45:53,521.521 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 08:45:53,522.522 INFO    ] No camera update needed
[2026-06-12 08:45:53,524.524 INFO    ] Script finished. Safe exiting...
[2026-06-12 08:45:53,525.525 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 08:45:53,528.528 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 08:45:53,531.531 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 08:45:55,575.575 INFO    ] ================================================
[2026-06-12 08:45:55,591.591 INFO    ] Launching Daemon at Fri Jun 12 08:45:55 IST 2026
[2026-06-12 08:45:55,601.601 INFO    ] ================================================
[2026-06-12 08:45:55,940.940 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 08:45:55
[2026-06-12 08:45:56,286.286 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 08:45:56,433.433 INFO    ] Initializing speech engine...
[2026-06-12 08:45:56,444.444 INFO    ] 2026-06-12 08:45:56
[2026-06-12 08:45:56,655.655 INFO    ] 2026-06-12 08:45:56
[2026-06-12 08:45:56,684.684 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 08:45:56,870.870 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 08:45:56,879.879 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 08:45:57,026.026 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 08:45:57,080.080 INFO    ] time= 12/06/2026 08:45:57
[2026-06-12 08:45:57,102.102 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 08:45:57,109.109 INFO    ] Checking for existing commands in stream...
[2026-06-12 08:45:57,177.177 INFO    ] No existing commands found in stream
[2026-06-12 08:46:02,191.191 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 08:46:02,193.193 INFO    ] Waiting 2.25 seconds before fallback handling...
[2026-06-12 08:46:04,793.793 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 08:46:04,795.795 INFO    ] Checking for system updates...
[2026-06-12 08:46:04,815.815 INFO    ] 200
[2026-06-12 08:46:04,817.817 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:46:04,849.849 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 08:46:04,851.851 INFO    ] No update needed
[2026-06-12 08:46:04,852.852 INFO    ] Checking for camera pi updates...
[2026-06-12 08:46:04,873.873 INFO    ] 200
[2026-06-12 08:46:04,874.874 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:46:04,898.898 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 08:46:04,943.943 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 08:46:04,945.945 INFO    ] No camera update needed
[2026-06-12 08:46:04,946.946 INFO    ] Script finished. Safe exiting...
[2026-06-12 08:46:04,947.947 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 08:46:04,951.951 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 08:46:04,954.954 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 08:46:06,993.993 INFO    ] ================================================
[2026-06-12 08:46:07,008.008 INFO    ] Launching Daemon at Fri Jun 12 08:46:07 IST 2026
[2026-06-12 08:46:07,019.019 INFO    ] ================================================
[2026-06-12 08:46:07,346.346 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 08:46:07
[2026-06-12 08:46:07,669.669 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 08:46:07,821.821 INFO    ] Initializing speech engine...
[2026-06-12 08:46:07,826.826 INFO    ] 2026-06-12 08:46:07
[2026-06-12 08:46:08,035.035 INFO    ] 2026-06-12 08:46:08
[2026-06-12 08:46:08,063.063 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 08:46:08,247.247 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 08:46:08,257.257 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 08:46:08,380.380 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 08:46:08,446.446 INFO    ] time= 12/06/2026 08:46:08
[2026-06-12 08:46:08,479.479 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 08:46:08,485.485 INFO    ] Checking for existing commands in stream...
[2026-06-12 08:46:08,552.552 INFO    ] No existing commands found in stream
[2026-06-12 08:46:13,572.572 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 08:46:13,575.575 INFO    ] Waiting 3.92 seconds before fallback handling...
[2026-06-12 08:46:17,878.878 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 08:46:17,880.880 INFO    ] Checking for system updates...
[2026-06-12 08:46:17,902.902 INFO    ] 200
[2026-06-12 08:46:17,904.904 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:46:17,939.939 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 08:46:17,941.941 INFO    ] No update needed
[2026-06-12 08:46:17,942.942 INFO    ] Checking for camera pi updates...
[2026-06-12 08:46:17,965.965 INFO    ] 200
[2026-06-12 08:46:17,966.966 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:46:17,990.990 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 08:46:18,027.027 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 08:46:18,029.029 INFO    ] No camera update needed
[2026-06-12 08:46:18,030.030 INFO    ] Script finished. Safe exiting...
[2026-06-12 08:46:18,032.032 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 08:46:18,035.035 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 08:46:18,038.038 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 08:46:20,077.077 INFO    ] ================================================
[2026-06-12 08:46:20,093.093 INFO    ] Launching Daemon at Fri Jun 12 08:46:20 IST 2026
[2026-06-12 08:46:20,104.104 INFO    ] ================================================
[2026-06-12 08:46:20,439.439 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 08:46:20
[2026-06-12 08:46:20,750.750 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 08:46:20,881.881 INFO    ] Initializing speech engine...
[2026-06-12 08:46:20,886.886 INFO    ] 2026-06-12 08:46:20
[2026-06-12 08:46:21,104.104 INFO    ] 2026-06-12 08:46:21
[2026-06-12 08:46:21,134.134 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 08:46:21,319.319 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 08:46:21,328.328 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 08:46:21,469.469 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 08:46:21,526.526 INFO    ] time= 12/06/2026 08:46:21
[2026-06-12 08:46:21,550.550 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 08:46:21,556.556 INFO    ] Checking for existing commands in stream...
[2026-06-12 08:46:21,622.622 INFO    ] No existing commands found in stream
[2026-06-12 08:46:26,633.633 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 08:46:26,635.635 INFO    ] Waiting 2.76 seconds before fallback handling...
[2026-06-12 08:46:29,769.769 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 08:46:29,771.771 INFO    ] Checking for system updates...
[2026-06-12 08:46:29,793.793 INFO    ] 200
[2026-06-12 08:46:29,794.794 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:46:29,825.825 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 08:46:29,827.827 INFO    ] No update needed
[2026-06-12 08:46:29,828.828 INFO    ] Checking for camera pi updates...
[2026-06-12 08:46:29,849.849 INFO    ] 200
[2026-06-12 08:46:29,851.851 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:46:29,878.878 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 08:46:29,919.919 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 08:46:29,921.921 INFO    ] No camera update needed
[2026-06-12 08:46:29,922.922 INFO    ] Script finished. Safe exiting...
[2026-06-12 08:46:29,924.924 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 08:46:29,927.927 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 08:46:29,930.930 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 08:46:31,962.962 INFO    ] ================================================
[2026-06-12 08:46:31,970.970 INFO    ] Launching Daemon at Fri Jun 12 08:46:31 IST 2026
[2026-06-12 08:46:31,977.977 INFO    ] ================================================
[2026-06-12 08:46:32,325.325 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 08:46:32
[2026-06-12 08:46:32,640.640 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 08:46:32,770.770 INFO    ] Initializing speech engine...
[2026-06-12 08:46:32,774.774 INFO    ] 2026-06-12 08:46:32
[2026-06-12 08:46:32,992.992 INFO    ] 2026-06-12 08:46:32
[2026-06-12 08:46:33,021.021 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 08:46:33,204.204 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 08:46:33,212.212 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 08:46:33,319.319 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 08:46:33,340.340 INFO    ] time= 12/06/2026 08:46:33
[2026-06-12 08:46:33,396.396 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 08:46:33,437.437 INFO    ] Checking for existing commands in stream...
[2026-06-12 08:46:33,509.509 INFO    ] No existing commands found in stream
[2026-06-12 08:46:38,518.518 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 08:46:38,521.521 INFO    ] Waiting 2.22 seconds before fallback handling...
[2026-06-12 08:46:41,108.108 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 08:46:41,110.110 INFO    ] Checking for system updates...
[2026-06-12 08:46:41,132.132 INFO    ] 200
[2026-06-12 08:46:41,134.134 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:46:41,166.166 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 08:46:41,168.168 INFO    ] No update needed
[2026-06-12 08:46:41,169.169 INFO    ] Checking for camera pi updates...
[2026-06-12 08:46:41,190.190 INFO    ] 200
[2026-06-12 08:46:41,192.192 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:46:41,220.220 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 08:46:41,255.255 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 08:46:41,256.256 INFO    ] No camera update needed
[2026-06-12 08:46:41,258.258 INFO    ] Script finished. Safe exiting...
[2026-06-12 08:46:41,259.259 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 08:46:41,263.263 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 08:46:41,266.266 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 08:46:43,299.299 INFO    ] ================================================
[2026-06-12 08:46:43,309.309 INFO    ] Launching Daemon at Fri Jun 12 08:46:43 IST 2026
[2026-06-12 08:46:43,316.316 INFO    ] ================================================
[2026-06-12 08:46:43,646.646 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 08:46:43
[2026-06-12 08:46:43,980.980 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 08:46:44,132.132 INFO    ] Initializing speech engine...
[2026-06-12 08:46:44,141.141 INFO    ] 2026-06-12 08:46:44
[2026-06-12 08:46:44,333.333 INFO    ] 2026-06-12 08:46:44
[2026-06-12 08:46:44,380.380 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 08:46:44,546.546 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 08:46:44,586.586 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 08:46:44,758.758 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 08:46:44,790.790 INFO    ] time= 12/06/2026 08:46:44
[2026-06-12 08:46:44,838.838 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 08:46:44,865.865 INFO    ] Checking for existing commands in stream...
[2026-06-12 08:46:44,969.969 INFO    ] No existing commands found in stream
[2026-06-12 08:46:49,979.979 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 08:46:49,982.982 INFO    ] Waiting 1.98 seconds before fallback handling...
[2026-06-12 08:46:52,344.344 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 08:46:52,346.346 INFO    ] Checking for system updates...
[2026-06-12 08:46:52,368.368 INFO    ] 200
[2026-06-12 08:46:52,369.369 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:46:52,404.404 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 08:46:52,405.405 INFO    ] No update needed
[2026-06-12 08:46:52,407.407 INFO    ] Checking for camera pi updates...
[2026-06-12 08:46:52,428.428 INFO    ] 200
[2026-06-12 08:46:52,429.429 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:46:52,457.457 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 08:46:52,496.496 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 08:46:52,497.497 INFO    ] No camera update needed
[2026-06-12 08:46:52,499.499 INFO    ] Script finished. Safe exiting...
[2026-06-12 08:46:52,500.500 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 08:46:52,503.503 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 08:46:52,506.506 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 08:46:54,537.537 INFO    ] ================================================
[2026-06-12 08:46:54,545.545 INFO    ] Launching Daemon at Fri Jun 12 08:46:54 IST 2026
[2026-06-12 08:46:54,551.551 INFO    ] ================================================
[2026-06-12 08:46:54,910.910 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 08:46:54
[2026-06-12 08:46:55,244.244 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 08:46:55,379.379 INFO    ] Initializing speech engine...
[2026-06-12 08:46:55,392.392 INFO    ] 2026-06-12 08:46:55
[2026-06-12 08:46:55,603.603 INFO    ] 2026-06-12 08:46:55
[2026-06-12 08:46:55,632.632 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 08:46:55,758.758 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 08:46:55,821.821 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 08:46:55,952.952 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 08:46:56,008.008 INFO    ] time= 12/06/2026 08:46:55
[2026-06-12 08:46:56,047.047 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 08:46:56,053.053 INFO    ] Checking for existing commands in stream...
[2026-06-12 08:46:56,125.125 INFO    ] No existing commands found in stream
[2026-06-12 08:47:01,136.136 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 08:47:01,139.139 INFO    ] Waiting 2.92 seconds before fallback handling...
[2026-06-12 08:47:04,404.404 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 08:47:04,406.406 INFO    ] Checking for system updates...
[2026-06-12 08:47:04,426.426 INFO    ] 200
[2026-06-12 08:47:04,428.428 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:47:04,458.458 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 08:47:04,460.460 INFO    ] No update needed
[2026-06-12 08:47:04,461.461 INFO    ] Checking for camera pi updates...
[2026-06-12 08:47:04,482.482 INFO    ] 200
[2026-06-12 08:47:04,483.483 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:47:04,508.508 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 08:47:04,553.553 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 08:47:04,555.555 INFO    ] No camera update needed
[2026-06-12 08:47:04,556.556 INFO    ] Script finished. Safe exiting...
[2026-06-12 08:47:04,557.557 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 08:47:04,560.560 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 08:47:04,563.563 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 08:47:06,604.604 INFO    ] ================================================
[2026-06-12 08:47:06,619.619 INFO    ] Launching Daemon at Fri Jun 12 08:47:06 IST 2026
[2026-06-12 08:47:06,630.630 INFO    ] ================================================
[2026-06-12 08:47:06,976.976 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 08:47:06
[2026-06-12 08:47:07,293.293 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 08:47:07,428.428 INFO    ] Initializing speech engine...
[2026-06-12 08:47:07,433.433 INFO    ] 2026-06-12 08:47:07
[2026-06-12 08:47:07,627.627 INFO    ] 2026-06-12 08:47:07
[2026-06-12 08:47:07,673.673 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 08:47:07,837.837 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 08:47:07,905.905 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 08:47:08,051.051 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 08:47:08,113.113 INFO    ] time= 12/06/2026 08:47:08
[2026-06-12 08:47:08,155.155 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 08:47:08,161.161 INFO    ] Checking for existing commands in stream...
[2026-06-12 08:47:08,267.267 INFO    ] No existing commands found in stream
[2026-06-12 08:47:13,281.281 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 08:47:13,284.284 INFO    ] Waiting 1.75 seconds before fallback handling...
[2026-06-12 08:47:15,409.409 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 08:47:15,411.411 INFO    ] Checking for system updates...
[2026-06-12 08:47:15,432.432 INFO    ] 200
[2026-06-12 08:47:15,433.433 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:47:15,466.466 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 08:47:15,467.467 INFO    ] No update needed
[2026-06-12 08:47:15,469.469 INFO    ] Checking for camera pi updates...
[2026-06-12 08:47:15,488.488 INFO    ] 200
[2026-06-12 08:47:15,489.489 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:47:15,513.513 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 08:47:15,540.540 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 08:47:15,542.542 INFO    ] No camera update needed
[2026-06-12 08:47:15,543.543 INFO    ] Script finished. Safe exiting...
[2026-06-12 08:47:15,544.544 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 08:47:15,547.547 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 08:47:15,550.550 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 08:47:17,590.590 INFO    ] ================================================
[2026-06-12 08:47:17,606.606 INFO    ] Launching Daemon at Fri Jun 12 08:47:17 IST 2026
[2026-06-12 08:47:17,617.617 INFO    ] ================================================
[2026-06-12 08:47:17,954.954 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 08:47:17
[2026-06-12 08:47:18,273.273 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 08:47:18,409.409 INFO    ] Initializing speech engine...
[2026-06-12 08:47:18,413.413 INFO    ] 2026-06-12 08:47:18
[2026-06-12 08:47:18,607.607 INFO    ] 2026-06-12 08:47:18
[2026-06-12 08:47:18,655.655 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 08:47:18,818.818 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 08:47:18,876.876 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 08:47:19,033.033 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 08:47:19,074.074 INFO    ] time= 12/06/2026 08:47:19
[2026-06-12 08:47:19,126.126 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 08:47:19,144.144 INFO    ] Checking for existing commands in stream...
[2026-06-12 08:47:19,224.224 INFO    ] No existing commands found in stream
[2026-06-12 08:47:24,238.238 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 08:47:24,241.241 INFO    ] Waiting 1.54 seconds before fallback handling...
[2026-06-12 08:47:26,155.155 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 08:47:26,157.157 INFO    ] Checking for system updates...
[2026-06-12 08:47:26,178.178 INFO    ] 200
[2026-06-12 08:47:26,179.179 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:47:26,213.213 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 08:47:26,214.214 INFO    ] No update needed
[2026-06-12 08:47:26,216.216 INFO    ] Checking for camera pi updates...
[2026-06-12 08:47:26,235.235 INFO    ] 200
[2026-06-12 08:47:26,236.236 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:47:26,259.259 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 08:47:26,303.303 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 08:47:26,304.304 INFO    ] No camera update needed
[2026-06-12 08:47:26,305.305 INFO    ] Script finished. Safe exiting...
[2026-06-12 08:47:26,306.306 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 08:47:26,309.309 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 08:47:26,313.313 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 08:47:28,352.352 INFO    ] ================================================
[2026-06-12 08:47:28,368.368 INFO    ] Launching Daemon at Fri Jun 12 08:47:28 IST 2026
[2026-06-12 08:47:28,379.379 INFO    ] ================================================
[2026-06-12 08:47:28,727.727 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 08:47:28
[2026-06-12 08:47:29,041.041 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 08:47:29,172.172 INFO    ] Initializing speech engine...
[2026-06-12 08:47:29,184.184 INFO    ] 2026-06-12 08:47:29
[2026-06-12 08:47:29,392.392 INFO    ] 2026-06-12 08:47:29
[2026-06-12 08:47:29,421.421 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 08:47:29,604.604 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 08:47:29,608.608 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 08:47:29,808.808 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 08:47:29,833.833 INFO    ] time= 12/06/2026 08:47:29
[2026-06-12 08:47:29,839.839 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 08:47:29,841.841 INFO    ] Checking for existing commands in stream...
[2026-06-12 08:47:29,908.908 INFO    ] No existing commands found in stream
[2026-06-12 08:47:34,922.922 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 08:47:34,924.924 INFO    ] Waiting 0.89 seconds before fallback handling...
[2026-06-12 08:47:36,175.175 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 08:47:36,176.176 INFO    ] Checking for system updates...
[2026-06-12 08:47:36,197.197 INFO    ] 200
[2026-06-12 08:47:36,198.198 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:47:36,230.230 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 08:47:36,231.231 INFO    ] No update needed
[2026-06-12 08:47:36,233.233 INFO    ] Checking for camera pi updates...
[2026-06-12 08:47:36,252.252 INFO    ] 200
[2026-06-12 08:47:36,254.254 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:47:36,279.279 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 08:47:36,319.319 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 08:47:36,320.320 INFO    ] No camera update needed
[2026-06-12 08:47:36,322.322 INFO    ] Script finished. Safe exiting...
[2026-06-12 08:47:36,323.323 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 08:47:36,326.326 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 08:47:36,329.329 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 08:47:38,368.368 INFO    ] ================================================
[2026-06-12 08:47:38,383.383 INFO    ] Launching Daemon at Fri Jun 12 08:47:38 IST 2026
[2026-06-12 08:47:38,394.394 INFO    ] ================================================
[2026-06-12 08:47:38,764.764 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 08:47:38
[2026-06-12 08:47:39,077.077 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 08:47:39,220.220 INFO    ] Initializing speech engine...
[2026-06-12 08:47:39,226.226 INFO    ] 2026-06-12 08:47:39
[2026-06-12 08:47:39,431.431 INFO    ] 2026-06-12 08:47:39
[2026-06-12 08:47:39,459.459 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 08:47:39,644.644 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 08:47:39,654.654 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 08:47:39,810.810 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 08:47:39,866.866 INFO    ] time= 12/06/2026 08:47:39
[2026-06-12 08:47:39,876.876 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 08:47:39,883.883 INFO    ] Checking for existing commands in stream...
[2026-06-12 08:47:39,950.950 INFO    ] No existing commands found in stream
[2026-06-12 08:47:44,959.959 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 08:47:44,962.962 INFO    ] Waiting 0.43 seconds before fallback handling...
[2026-06-12 08:47:45,771.771 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 08:47:45,772.772 INFO    ] Checking for system updates...
[2026-06-12 08:47:45,793.793 INFO    ] 200
[2026-06-12 08:47:45,795.795 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:47:45,826.826 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 08:47:45,828.828 INFO    ] No update needed
[2026-06-12 08:47:45,829.829 INFO    ] Checking for camera pi updates...
[2026-06-12 08:47:45,850.850 INFO    ] 200
[2026-06-12 08:47:45,852.852 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:47:45,875.875 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 08:47:45,921.921 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 08:47:45,922.922 INFO    ] No camera update needed
[2026-06-12 08:47:45,923.923 INFO    ] Script finished. Safe exiting...
[2026-06-12 08:47:45,925.925 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 08:47:45,928.928 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 08:47:45,931.931 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 08:47:47,971.971 INFO    ] ================================================
[2026-06-12 08:47:47,986.986 INFO    ] Launching Daemon at Fri Jun 12 08:47:47 IST 2026
[2026-06-12 08:47:48,997.997 INFO    ] ================================================
[2026-06-12 08:47:48,334.334 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 08:47:48
[2026-06-12 08:47:48,646.646 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 08:47:48,778.778 INFO    ] Initializing speech engine...
[2026-06-12 08:47:48,793.793 INFO    ] 2026-06-12 08:47:48
[2026-06-12 08:47:48,996.996 INFO    ] 2026-06-12 08:47:48
[2026-06-12 08:47:49,025.025 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 08:47:49,207.207 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 08:47:49,210.210 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 08:47:49,346.346 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 08:47:49,410.410 INFO    ] time= 12/06/2026 08:47:49
[2026-06-12 08:47:49,436.436 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 08:47:49,438.438 INFO    ] Checking for existing commands in stream...
[2026-06-12 08:47:49,510.510 INFO    ] No existing commands found in stream
[2026-06-12 08:47:54,519.519 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 08:47:54,522.522 INFO    ] Waiting 3.26 seconds before fallback handling...
[2026-06-12 08:47:58,151.151 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 08:47:58,153.153 INFO    ] Checking for system updates...
[2026-06-12 08:47:58,174.174 INFO    ] 200
[2026-06-12 08:47:58,176.176 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:47:58,206.206 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 08:47:58,208.208 INFO    ] No update needed
[2026-06-12 08:47:58,209.209 INFO    ] Checking for camera pi updates...
[2026-06-12 08:47:58,231.231 INFO    ] 200
[2026-06-12 08:47:58,233.233 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:47:58,259.259 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 08:47:58,298.298 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 08:47:58,299.299 INFO    ] No camera update needed
[2026-06-12 08:47:58,301.301 INFO    ] Script finished. Safe exiting...
[2026-06-12 08:47:58,302.302 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 08:47:58,305.305 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 08:47:58,308.308 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 08:48:00,347.347 INFO    ] ================================================
[2026-06-12 08:48:00,362.362 INFO    ] Launching Daemon at Fri Jun 12 08:48:00 IST 2026
[2026-06-12 08:48:00,373.373 INFO    ] ================================================
[2026-06-12 08:48:00,707.707 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 08:48:00
[2026-06-12 08:48:01,018.018 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 08:48:01,161.161 INFO    ] Initializing speech engine...
[2026-06-12 08:48:01,166.166 INFO    ] 2026-06-12 08:48:01
[2026-06-12 08:48:01,370.370 INFO    ] 2026-06-12 08:48:01
[2026-06-12 08:48:01,398.398 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 08:48:01,596.596 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 08:48:01,598.598 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 08:48:01,729.729 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 08:48:01,746.746 INFO    ] time= 12/06/2026 08:48:01
[2026-06-12 08:48:01,748.748 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 08:48:01,750.750 INFO    ] Checking for existing commands in stream...
[2026-06-12 08:48:01,814.814 INFO    ] No existing commands found in stream
[2026-06-12 08:48:06,823.823 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 08:48:06,826.826 INFO    ] Waiting 3.16 seconds before fallback handling...
[2026-06-12 08:48:10,355.355 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 08:48:10,357.357 INFO    ] Checking for system updates...
[2026-06-12 08:48:10,377.377 INFO    ] 200
[2026-06-12 08:48:10,379.379 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:48:10,409.409 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 08:48:10,411.411 INFO    ] No update needed
[2026-06-12 08:48:10,412.412 INFO    ] Checking for camera pi updates...
[2026-06-12 08:48:10,433.433 INFO    ] 200
[2026-06-12 08:48:10,434.434 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:48:10,459.459 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 08:48:10,605.605 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 08:48:10,606.606 INFO    ] No camera update needed
[2026-06-12 08:48:10,608.608 INFO    ] Script finished. Safe exiting...
[2026-06-12 08:48:10,609.609 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 08:48:10,612.612 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 08:48:10,615.615 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 08:48:12,653.653 INFO    ] ================================================
[2026-06-12 08:48:12,668.668 INFO    ] Launching Daemon at Fri Jun 12 08:48:12 IST 2026
[2026-06-12 08:48:12,679.679 INFO    ] ================================================
[2026-06-12 08:48:13,033.033 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 08:48:13
[2026-06-12 08:48:13,349.349 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 08:48:13,480.480 INFO    ] Initializing speech engine...
[2026-06-12 08:48:13,489.489 INFO    ] 2026-06-12 08:48:13
[2026-06-12 08:48:13,701.701 INFO    ] 2026-06-12 08:48:13
[2026-06-12 08:48:13,730.730 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 08:48:13,867.867 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 08:48:13,914.914 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 08:48:14,068.068 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 08:48:14,120.120 INFO    ] time= 12/06/2026 08:48:14
[2026-06-12 08:48:14,142.142 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 08:48:14,149.149 INFO    ] Checking for existing commands in stream...
[2026-06-12 08:48:14,215.215 INFO    ] No existing commands found in stream
[2026-06-12 08:48:19,224.224 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 08:48:19,227.227 INFO    ] Waiting 2.02 seconds before fallback handling...
[2026-06-12 08:48:21,598.598 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 08:48:21,600.600 INFO    ] Checking for system updates...
[2026-06-12 08:48:21,621.621 INFO    ] 200
[2026-06-12 08:48:21,622.622 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:48:21,655.655 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 08:48:21,657.657 INFO    ] No update needed
[2026-06-12 08:48:21,658.658 INFO    ] Checking for camera pi updates...
[2026-06-12 08:48:21,678.678 INFO    ] 200
[2026-06-12 08:48:21,679.679 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:48:21,704.704 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 08:48:21,750.750 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 08:48:21,752.752 INFO    ] No camera update needed
[2026-06-12 08:48:21,753.753 INFO    ] Script finished. Safe exiting...
[2026-06-12 08:48:21,754.754 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 08:48:21,757.757 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 08:48:21,760.760 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 08:48:23,799.799 INFO    ] ================================================
[2026-06-12 08:48:23,815.815 INFO    ] Launching Daemon at Fri Jun 12 08:48:23 IST 2026
[2026-06-12 08:48:23,826.826 INFO    ] ================================================
[2026-06-12 08:48:24,166.166 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 08:48:24
[2026-06-12 08:48:24,477.477 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 08:48:24,606.606 INFO    ] Initializing speech engine...
[2026-06-12 08:48:24,611.611 INFO    ] 2026-06-12 08:48:24
[2026-06-12 08:48:24,828.828 INFO    ] 2026-06-12 08:48:24
[2026-06-12 08:48:24,856.856 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 08:48:25,038.038 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 08:48:25,042.042 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 08:48:25,189.189 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 08:48:25,246.246 INFO    ] time= 12/06/2026 08:48:25
[2026-06-12 08:48:25,270.270 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 08:48:25,276.276 INFO    ] Checking for existing commands in stream...
[2026-06-12 08:48:25,343.343 INFO    ] No existing commands found in stream
[2026-06-12 08:48:30,358.358 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 08:48:30,361.361 INFO    ] Waiting 2.13 seconds before fallback handling...
[2026-06-12 08:48:32,839.839 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 08:48:32,841.841 INFO    ] Checking for system updates...
[2026-06-12 08:48:32,862.862 INFO    ] 200
[2026-06-12 08:48:32,863.863 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:48:32,893.893 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 08:48:32,894.894 INFO    ] No update needed
[2026-06-12 08:48:32,896.896 INFO    ] Checking for camera pi updates...
[2026-06-12 08:48:32,917.917 INFO    ] 200
[2026-06-12 08:48:32,918.918 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:48:32,943.943 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 08:48:32,994.994 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 08:48:32,995.995 INFO    ] No camera update needed
[2026-06-12 08:48:32,996.996 INFO    ] Script finished. Safe exiting...
[2026-06-12 08:48:32,998.998 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 08:48:33,001.001 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 08:48:33,004.004 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 08:48:35,044.044 INFO    ] ================================================
[2026-06-12 08:48:35,060.060 INFO    ] Launching Daemon at Fri Jun 12 08:48:35 IST 2026
[2026-06-12 08:48:35,071.071 INFO    ] ================================================
[2026-06-12 08:48:35,434.434 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 08:48:35
[2026-06-12 08:48:35,758.758 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 08:48:35,900.900 INFO    ] Initializing speech engine...
[2026-06-12 08:48:35,905.905 INFO    ] 2026-06-12 08:48:35
[2026-06-12 08:48:36,109.109 INFO    ] 2026-06-12 08:48:36
[2026-06-12 08:48:36,137.137 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 08:48:36,319.319 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 08:48:36,329.329 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 08:48:36,458.458 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 08:48:36,524.524 INFO    ] time= 12/06/2026 08:48:36
[2026-06-12 08:48:36,549.549 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 08:48:36,555.555 INFO    ] Checking for existing commands in stream...
[2026-06-12 08:48:36,621.621 INFO    ] No existing commands found in stream
[2026-06-12 08:48:41,641.641 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 08:48:41,643.643 INFO    ] Waiting 0.52 seconds before fallback handling...
[2026-06-12 08:48:42,539.539 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 08:48:42,541.541 INFO    ] Checking for system updates...
[2026-06-12 08:48:42,562.562 INFO    ] 200
[2026-06-12 08:48:42,564.564 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:48:42,594.594 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 08:48:42,596.596 INFO    ] No update needed
[2026-06-12 08:48:42,597.597 INFO    ] Checking for camera pi updates...
[2026-06-12 08:48:42,617.617 INFO    ] 200
[2026-06-12 08:48:42,619.619 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:48:42,647.647 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 08:48:42,687.687 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 08:48:42,689.689 INFO    ] No camera update needed
[2026-06-12 08:48:42,690.690 INFO    ] Script finished. Safe exiting...
[2026-06-12 08:48:42,691.691 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 08:48:42,694.694 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 08:48:42,697.697 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 08:48:44,737.737 INFO    ] ================================================
[2026-06-12 08:48:44,752.752 INFO    ] Launching Daemon at Fri Jun 12 08:48:44 IST 2026
[2026-06-12 08:48:44,763.763 INFO    ] ================================================
[2026-06-12 08:48:45,145.145 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 08:48:45
[2026-06-12 08:48:45,466.466 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 08:48:45,651.651 INFO    ] Initializing speech engine...
[2026-06-12 08:48:45,659.659 INFO    ] 2026-06-12 08:48:45
[2026-06-12 08:48:45,868.868 INFO    ] 2026-06-12 08:48:45
[2026-06-12 08:48:45,898.898 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 08:48:46,083.083 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 08:48:46,086.086 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 08:48:46,223.223 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 08:48:46,291.291 INFO    ] time= 12/06/2026 08:48:46
[2026-06-12 08:48:46,315.315 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 08:48:46,321.321 INFO    ] Checking for existing commands in stream...
[2026-06-12 08:48:46,388.388 INFO    ] No existing commands found in stream
[2026-06-12 08:48:51,398.398 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 08:48:51,401.401 INFO    ] Waiting 3.33 seconds before fallback handling...
[2026-06-12 08:48:55,090.090 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 08:48:55,092.092 INFO    ] Checking for system updates...
[2026-06-12 08:48:55,112.112 INFO    ] 200
[2026-06-12 08:48:55,114.114 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:48:55,144.144 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 08:48:55,145.145 INFO    ] No update needed
[2026-06-12 08:48:55,147.147 INFO    ] Checking for camera pi updates...
[2026-06-12 08:48:55,169.169 INFO    ] 200
[2026-06-12 08:48:55,170.170 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:48:55,193.193 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 08:48:55,234.234 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 08:48:55,235.235 INFO    ] No camera update needed
[2026-06-12 08:48:55,237.237 INFO    ] Script finished. Safe exiting...
[2026-06-12 08:48:55,238.238 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 08:48:55,241.241 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 08:48:55,244.244 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 08:48:57,283.283 INFO    ] ================================================
[2026-06-12 08:48:57,298.298 INFO    ] Launching Daemon at Fri Jun 12 08:48:57 IST 2026
[2026-06-12 08:48:57,310.310 INFO    ] ================================================
[2026-06-12 08:48:57,663.663 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 08:48:57
[2026-06-12 08:48:57,977.977 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 08:48:58,119.119 INFO    ] Initializing speech engine...
[2026-06-12 08:48:58,125.125 INFO    ] 2026-06-12 08:48:58
[2026-06-12 08:48:58,329.329 INFO    ] 2026-06-12 08:48:58
[2026-06-12 08:48:58,357.357 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 08:48:58,491.491 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 08:48:58,544.544 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 08:48:58,683.683 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 08:48:58,750.750 INFO    ] time= 12/06/2026 08:48:58
[2026-06-12 08:48:58,774.774 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 08:48:58,780.780 INFO    ] Checking for existing commands in stream...
[2026-06-12 08:48:58,847.847 INFO    ] No existing commands found in stream
[2026-06-12 08:49:03,856.856 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 08:49:03,859.859 INFO    ] Waiting 1.78 seconds before fallback handling...
[2026-06-12 08:49:06,000.000 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 08:49:06,002.002 INFO    ] Checking for system updates...
[2026-06-12 08:49:06,023.023 INFO    ] 200
[2026-06-12 08:49:06,025.025 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:49:06,056.056 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 08:49:06,057.057 INFO    ] No update needed
[2026-06-12 08:49:06,058.058 INFO    ] Checking for camera pi updates...
[2026-06-12 08:49:06,078.078 INFO    ] 200
[2026-06-12 08:49:06,079.079 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:49:06,103.103 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 08:49:06,138.138 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 08:49:06,139.139 INFO    ] No camera update needed
[2026-06-12 08:49:06,140.140 INFO    ] Script finished. Safe exiting...
[2026-06-12 08:49:06,142.142 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 08:49:06,145.145 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 08:49:06,147.147 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 08:49:08,188.188 INFO    ] ================================================
[2026-06-12 08:49:08,204.204 INFO    ] Launching Daemon at Fri Jun 12 08:49:08 IST 2026
[2026-06-12 08:49:08,215.215 INFO    ] ================================================
[2026-06-12 08:49:08,574.574 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 08:49:08
[2026-06-12 08:49:08,884.884 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 08:49:09,027.027 INFO    ] Initializing speech engine...
[2026-06-12 08:49:09,032.032 INFO    ] 2026-06-12 08:49:09
[2026-06-12 08:49:09,240.240 INFO    ] 2026-06-12 08:49:09
[2026-06-12 08:49:09,269.269 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 08:49:09,454.454 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 08:49:09,464.464 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 08:49:09,592.592 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 08:49:09,634.634 INFO    ] time= 12/06/2026 08:49:09
[2026-06-12 08:49:09,635.635 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 08:49:09,637.637 INFO    ] Checking for existing commands in stream...
[2026-06-12 08:49:09,770.770 INFO    ] No existing commands found in stream
[2026-06-12 08:49:14,779.779 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 08:49:14,782.782 INFO    ] Waiting 3.53 seconds before fallback handling...
[2026-06-12 08:49:18,661.661 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 08:49:18,663.663 INFO    ] Checking for system updates...
[2026-06-12 08:49:18,683.683 INFO    ] 200
[2026-06-12 08:49:18,685.685 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:49:18,717.717 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 08:49:18,719.719 INFO    ] No update needed
[2026-06-12 08:49:18,720.720 INFO    ] Checking for camera pi updates...
[2026-06-12 08:49:18,741.741 INFO    ] 200
[2026-06-12 08:49:18,743.743 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:49:18,767.767 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 08:49:18,811.811 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 08:49:18,813.813 INFO    ] No camera update needed
[2026-06-12 08:49:18,814.814 INFO    ] Script finished. Safe exiting...
[2026-06-12 08:49:18,815.815 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 08:49:18,818.818 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 08:49:18,821.821 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 08:49:20,860.860 INFO    ] ================================================
[2026-06-12 08:49:20,877.877 INFO    ] Launching Daemon at Fri Jun 12 08:49:20 IST 2026
[2026-06-12 08:49:20,888.888 INFO    ] ================================================
[2026-06-12 08:49:21,244.244 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 08:49:21
[2026-06-12 08:49:21,564.564 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 08:49:21,704.704 INFO    ] Initializing speech engine...
[2026-06-12 08:49:21,714.714 INFO    ] 2026-06-12 08:49:21
[2026-06-12 08:49:21,919.919 INFO    ] 2026-06-12 08:49:21
[2026-06-12 08:49:21,947.947 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 08:49:22,070.070 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 08:49:22,133.133 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 08:49:22,267.267 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 08:49:22,330.330 INFO    ] time= 12/06/2026 08:49:22
[2026-06-12 08:49:22,362.362 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 08:49:22,364.364 INFO    ] Checking for existing commands in stream...
[2026-06-12 08:49:22,435.435 INFO    ] No existing commands found in stream
[2026-06-12 08:49:27,449.449 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 08:49:27,452.452 INFO    ] Waiting 2.42 seconds before fallback handling...
[2026-06-12 08:49:30,203.203 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 08:49:30,205.205 INFO    ] Checking for system updates...
[2026-06-12 08:49:30,226.226 INFO    ] 200
[2026-06-12 08:49:30,227.227 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:49:30,259.259 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 08:49:30,260.260 INFO    ] No update needed
[2026-06-12 08:49:30,261.261 INFO    ] Checking for camera pi updates...
[2026-06-12 08:49:30,281.281 INFO    ] 200
[2026-06-12 08:49:30,282.282 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:49:30,306.306 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 08:49:30,350.350 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 08:49:30,351.351 INFO    ] No camera update needed
[2026-06-12 08:49:30,352.352 INFO    ] Script finished. Safe exiting...
[2026-06-12 08:49:30,354.354 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 08:49:30,357.357 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 08:49:30,360.360 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 08:49:32,393.393 INFO    ] ================================================
[2026-06-12 08:49:32,403.403 INFO    ] Launching Daemon at Fri Jun 12 08:49:32 IST 2026
[2026-06-12 08:49:32,409.409 INFO    ] ================================================
[2026-06-12 08:49:32,740.740 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 08:49:32
[2026-06-12 08:49:33,065.065 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 08:49:33,201.201 INFO    ] Initializing speech engine...
[2026-06-12 08:49:33,206.206 INFO    ] 2026-06-12 08:49:33
[2026-06-12 08:49:33,397.397 INFO    ] 2026-06-12 08:49:33
[2026-06-12 08:49:33,442.442 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 08:49:33,605.605 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 08:49:33,648.648 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 08:49:33,818.818 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 08:49:33,827.827 INFO    ] time= 12/06/2026 08:49:33
[2026-06-12 08:49:33,883.883 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 08:49:33,928.928 INFO    ] Checking for existing commands in stream...
[2026-06-12 08:49:34,007.007 INFO    ] No existing commands found in stream
[2026-06-12 08:49:39,016.016 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 08:49:39,019.019 INFO    ] Waiting 2.51 seconds before fallback handling...
[2026-06-12 08:49:42,668.668 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 08:49:42,671.671 INFO    ] Checking for system updates...
[2026-06-12 08:49:42,709.709 INFO    ] 200
[2026-06-12 08:49:42,712.712 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:49:42,754.754 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 08:49:42,756.756 INFO    ] No update needed
[2026-06-12 08:49:42,757.757 INFO    ] Checking for camera pi updates...
[2026-06-12 08:49:42,779.779 INFO    ] 200
[2026-06-12 08:49:42,780.780 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:49:42,804.804 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 08:49:42,852.852 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 08:49:42,853.853 INFO    ] No camera update needed
[2026-06-12 08:49:42,854.854 INFO    ] Script finished. Safe exiting...
[2026-06-12 08:49:42,856.856 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 08:49:42,859.859 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 08:49:42,862.862 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 08:49:44,901.901 INFO    ] ================================================
[2026-06-12 08:49:44,917.917 INFO    ] Launching Daemon at Fri Jun 12 08:49:44 IST 2026
[2026-06-12 08:49:44,929.929 INFO    ] ================================================
[2026-06-12 08:49:45,327.327 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 08:49:45
[2026-06-12 08:49:45,671.671 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 08:49:45,827.827 INFO    ] Initializing speech engine...
[2026-06-12 08:49:45,831.831 INFO    ] 2026-06-12 08:49:45
[2026-06-12 08:49:46,039.039 INFO    ] 2026-06-12 08:49:46
[2026-06-12 08:49:46,068.068 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 08:49:46,253.253 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 08:49:46,263.263 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 08:49:46,393.393 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 08:49:46,461.461 INFO    ] time= 12/06/2026 08:49:46
[2026-06-12 08:49:46,485.485 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 08:49:46,492.492 INFO    ] Checking for existing commands in stream...
[2026-06-12 08:49:46,559.559 INFO    ] No existing commands found in stream
[2026-06-12 08:49:51,578.578 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 08:49:51,582.582 INFO    ] Waiting 0.23 seconds before fallback handling...
[2026-06-12 08:49:52,177.177 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 08:49:52,178.178 INFO    ] Checking for system updates...
[2026-06-12 08:49:52,201.201 INFO    ] 200
[2026-06-12 08:49:52,203.203 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:49:52,236.236 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 08:49:52,238.238 INFO    ] No update needed
[2026-06-12 08:49:52,239.239 INFO    ] Checking for camera pi updates...
[2026-06-12 08:49:52,261.261 INFO    ] 200
[2026-06-12 08:49:52,262.262 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:49:52,290.290 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 08:49:52,340.340 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 08:49:52,341.341 INFO    ] No camera update needed
[2026-06-12 08:49:52,343.343 INFO    ] Script finished. Safe exiting...
[2026-06-12 08:49:52,344.344 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 08:49:52,347.347 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 08:49:52,351.351 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 08:49:54,391.391 INFO    ] ================================================
[2026-06-12 08:49:54,408.408 INFO    ] Launching Daemon at Fri Jun 12 08:49:54 IST 2026
[2026-06-12 08:49:54,419.419 INFO    ] ================================================
[2026-06-12 08:49:54,774.774 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 08:49:54
[2026-06-12 08:49:55,118.118 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 08:49:55,271.271 INFO    ] Initializing speech engine...
[2026-06-12 08:49:55,277.277 INFO    ] 2026-06-12 08:49:55
[2026-06-12 08:49:55,485.485 INFO    ] 2026-06-12 08:49:55
[2026-06-12 08:49:55,514.514 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 08:49:55,698.698 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 08:49:55,708.708 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 08:49:55,838.838 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 08:49:55,907.907 INFO    ] time= 12/06/2026 08:49:55
[2026-06-12 08:49:55,931.931 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 08:49:55,937.937 INFO    ] Checking for existing commands in stream...
[2026-06-12 08:49:56,028.028 INFO    ] No existing commands found in stream
[2026-06-12 08:50:01,052.052 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 08:50:01,056.056 INFO    ] Waiting 1.90 seconds before fallback handling...
[2026-06-12 08:50:05,189.189 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 08:50:05,192.192 INFO    ] Checking for system updates...
[2026-06-12 08:50:05,229.229 INFO    ] 200
[2026-06-12 08:50:05,231.231 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:50:05,285.285 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 08:50:05,287.287 INFO    ] No update needed
[2026-06-12 08:50:05,289.289 INFO    ] Checking for camera pi updates...
[2026-06-12 08:50:05,318.318 INFO    ] 200
[2026-06-12 08:50:05,320.320 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:50:05,343.343 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 08:50:05,379.379 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 08:50:05,380.380 INFO    ] No camera update needed
[2026-06-12 08:50:05,382.382 INFO    ] Script finished. Safe exiting...
[2026-06-12 08:50:05,383.383 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 08:50:05,386.386 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 08:50:05,389.389 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 08:50:07,431.431 INFO    ] ================================================
[2026-06-12 08:50:07,447.447 INFO    ] Launching Daemon at Fri Jun 12 08:50:07 IST 2026
[2026-06-12 08:50:07,458.458 INFO    ] ================================================
[2026-06-12 08:50:07,834.834 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 08:50:07
[2026-06-12 08:50:08,177.177 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 08:50:08,333.333 INFO    ] Initializing speech engine...
[2026-06-12 08:50:08,337.337 INFO    ] 2026-06-12 08:50:08
[2026-06-12 08:50:08,544.544 INFO    ] 2026-06-12 08:50:08
[2026-06-12 08:50:08,573.573 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 08:50:08,757.757 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 08:50:08,767.767 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 08:50:08,890.890 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 08:50:08,951.951 INFO    ] time= 12/06/2026 08:50:08
[2026-06-12 08:50:08,988.988 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 08:50:08,995.995 INFO    ] Checking for existing commands in stream...
[2026-06-12 08:50:09,087.087 INFO    ] No existing commands found in stream
[2026-06-12 08:50:14,102.102 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 08:50:14,105.105 INFO    ] Waiting 3.29 seconds before fallback handling...
[2026-06-12 08:50:17,782.782 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 08:50:17,784.784 INFO    ] Checking for system updates...
[2026-06-12 08:50:17,805.805 INFO    ] 200
[2026-06-12 08:50:17,807.807 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:50:17,840.840 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 08:50:17,842.842 INFO    ] No update needed
[2026-06-12 08:50:17,843.843 INFO    ] Checking for camera pi updates...
[2026-06-12 08:50:17,864.864 INFO    ] 200
[2026-06-12 08:50:17,866.866 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:50:17,890.890 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 08:50:18,037.037 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 08:50:18,039.039 INFO    ] No camera update needed
[2026-06-12 08:50:18,041.041 INFO    ] Script finished. Safe exiting...
[2026-06-12 08:50:18,042.042 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 08:50:18,045.045 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 08:50:18,048.048 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 08:50:20,088.088 INFO    ] ================================================
[2026-06-12 08:50:20,104.104 INFO    ] Launching Daemon at Fri Jun 12 08:50:20 IST 2026
[2026-06-12 08:50:20,115.115 INFO    ] ================================================
[2026-06-12 08:50:20,483.483 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 08:50:20
[2026-06-12 08:50:20,827.827 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 08:50:20,976.976 INFO    ] Initializing speech engine...
[2026-06-12 08:50:20,986.986 INFO    ] 2026-06-12 08:50:20
[2026-06-12 08:50:21,198.198 INFO    ] 2026-06-12 08:50:21
[2026-06-12 08:50:21,227.227 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 08:50:21,414.414 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 08:50:21,418.418 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 08:50:21,549.549 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 08:50:21,610.610 INFO    ] time= 12/06/2026 08:50:21
[2026-06-12 08:50:21,649.649 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 08:50:21,651.651 INFO    ] Checking for existing commands in stream...
[2026-06-12 08:50:21,724.724 INFO    ] No existing commands found in stream
[2026-06-12 08:50:26,739.739 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 08:50:26,742.742 INFO    ] Waiting 0.94 seconds before fallback handling...
[2026-06-12 08:50:28,066.066 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 08:50:28,067.067 INFO    ] Checking for system updates...
[2026-06-12 08:50:28,088.088 INFO    ] 200
[2026-06-12 08:50:28,090.090 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:50:28,132.132 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 08:50:28,138.138 INFO    ] No update needed
[2026-06-12 08:50:28,140.140 INFO    ] Checking for camera pi updates...
[2026-06-12 08:50:28,167.167 INFO    ] 200
[2026-06-12 08:50:28,169.169 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:50:28,198.198 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 08:50:28,241.241 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 08:50:28,243.243 INFO    ] No camera update needed
[2026-06-12 08:50:28,244.244 INFO    ] Script finished. Safe exiting...
[2026-06-12 08:50:28,246.246 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 08:50:28,250.250 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 08:50:28,253.253 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 08:50:30,288.288 INFO    ] ================================================
[2026-06-12 08:50:30,304.304 INFO    ] Launching Daemon at Fri Jun 12 08:50:30 IST 2026
[2026-06-12 08:50:30,314.314 INFO    ] ================================================
[2026-06-12 08:50:30,678.678 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 08:50:30
[2026-06-12 08:50:31,020.020 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 08:50:31,172.172 INFO    ] Initializing speech engine...
[2026-06-12 08:50:31,178.178 INFO    ] 2026-06-12 08:50:31
[2026-06-12 08:50:31,387.387 INFO    ] 2026-06-12 08:50:31
[2026-06-12 08:50:31,416.416 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 08:50:31,599.599 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 08:50:31,609.609 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 08:50:31,741.741 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 08:50:31,809.809 INFO    ] time= 12/06/2026 08:50:31
[2026-06-12 08:50:31,833.833 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 08:50:31,839.839 INFO    ] Checking for existing commands in stream...
[2026-06-12 08:50:31,907.907 INFO    ] No existing commands found in stream
[2026-06-12 08:50:36,921.921 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 08:50:36,924.924 INFO    ] Waiting 2.59 seconds before fallback handling...
[2026-06-12 08:50:39,895.895 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 08:50:39,896.896 INFO    ] Checking for system updates...
[2026-06-12 08:50:39,917.917 INFO    ] 200
[2026-06-12 08:50:39,919.919 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:50:39,949.949 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 08:50:39,951.951 INFO    ] No update needed
[2026-06-12 08:50:39,952.952 INFO    ] Checking for camera pi updates...
[2026-06-12 08:50:39,972.972 INFO    ] 200
[2026-06-12 08:50:39,974.974 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:50:39,998.998 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 08:50:40,042.042 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 08:50:40,044.044 INFO    ] No camera update needed
[2026-06-12 08:50:40,045.045 INFO    ] Script finished. Safe exiting...
[2026-06-12 08:50:40,046.046 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 08:50:40,050.050 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 08:50:40,053.053 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 08:50:42,092.092 INFO    ] ================================================
[2026-06-12 08:50:42,108.108 INFO    ] Launching Daemon at Fri Jun 12 08:50:42 IST 2026
[2026-06-12 08:50:42,119.119 INFO    ] ================================================
[2026-06-12 08:50:42,470.470 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 08:50:42
[2026-06-12 08:50:42,784.784 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 08:50:42,917.917 INFO    ] Initializing speech engine...
[2026-06-12 08:50:42,922.922 INFO    ] 2026-06-12 08:50:42
[2026-06-12 08:50:43,113.113 INFO    ] 2026-06-12 08:50:43
[2026-06-12 08:50:43,159.159 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 08:50:43,319.319 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 08:50:43,359.359 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 08:50:43,507.507 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 08:50:43,537.537 INFO    ] time= 12/06/2026 08:50:43
[2026-06-12 08:50:43,593.593 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 08:50:43,634.634 INFO    ] Checking for existing commands in stream...
[2026-06-12 08:50:43,720.720 INFO    ] No existing commands found in stream
[2026-06-12 08:50:48,731.731 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 08:50:48,734.734 INFO    ] Waiting 0.20 seconds before fallback handling...
[2026-06-12 08:50:49,273.273 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 08:50:49,275.275 INFO    ] Checking for system updates...
[2026-06-12 08:50:49,297.297 INFO    ] 200
[2026-06-12 08:50:49,298.298 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:50:49,331.331 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 08:50:49,332.332 INFO    ] No update needed
[2026-06-12 08:50:49,334.334 INFO    ] Checking for camera pi updates...
[2026-06-12 08:50:49,353.353 INFO    ] 200
[2026-06-12 08:50:49,354.354 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:50:49,380.380 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 08:50:49,418.418 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 08:50:49,420.420 INFO    ] No camera update needed
[2026-06-12 08:50:49,421.421 INFO    ] Script finished. Safe exiting...
[2026-06-12 08:50:49,422.422 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 08:50:49,425.425 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 08:50:49,428.428 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 08:50:51,468.468 INFO    ] ================================================
[2026-06-12 08:50:51,484.484 INFO    ] Launching Daemon at Fri Jun 12 08:50:51 IST 2026
[2026-06-12 08:50:51,495.495 INFO    ] ================================================
[2026-06-12 08:50:51,844.844 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 08:50:51
[2026-06-12 08:50:52,188.188 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 08:50:52,342.342 INFO    ] Initializing speech engine...
[2026-06-12 08:50:52,348.348 INFO    ] 2026-06-12 08:50:52
[2026-06-12 08:50:52,561.561 INFO    ] 2026-06-12 08:50:52
[2026-06-12 08:50:52,591.591 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 08:50:52,780.780 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 08:50:52,790.790 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 08:50:52,916.916 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 08:50:52,982.982 INFO    ] time= 12/06/2026 08:50:52
[2026-06-12 08:50:53,017.017 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 08:50:53,024.024 INFO    ] Checking for existing commands in stream...
[2026-06-12 08:50:53,093.093 INFO    ] No existing commands found in stream
[2026-06-12 08:50:58,103.103 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 08:50:58,106.106 INFO    ] Waiting 3.07 seconds before fallback handling...
[2026-06-12 08:51:01,562.562 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 08:51:01,564.564 INFO    ] Checking for system updates...
[2026-06-12 08:51:01,593.593 INFO    ] 200
[2026-06-12 08:51:01,595.595 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:51:01,663.663 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 08:51:01,666.666 INFO    ] No update needed
[2026-06-12 08:51:01,668.668 INFO    ] Checking for camera pi updates...
[2026-06-12 08:51:01,703.703 INFO    ] 200
[2026-06-12 08:51:01,704.704 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:51:01,736.736 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 08:51:01,775.775 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 08:51:01,776.776 INFO    ] No camera update needed
[2026-06-12 08:51:01,778.778 INFO    ] Script finished. Safe exiting...
[2026-06-12 08:51:01,780.780 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 08:51:01,784.784 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 08:51:01,788.788 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 08:51:03,828.828 INFO    ] ================================================
[2026-06-12 08:51:03,843.843 INFO    ] Launching Daemon at Fri Jun 12 08:51:03 IST 2026
[2026-06-12 08:51:03,854.854 INFO    ] ================================================
[2026-06-12 08:51:04,265.265 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 08:51:04
[2026-06-12 08:51:04,605.605 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 08:51:04,761.761 INFO    ] Initializing speech engine...
[2026-06-12 08:51:04,766.766 INFO    ] 2026-06-12 08:51:04
[2026-06-12 08:51:04,972.972 INFO    ] 2026-06-12 08:51:04
[2026-06-12 08:51:05,001.001 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 08:51:05,186.186 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 08:51:05,195.195 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 08:51:05,322.322 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 08:51:05,388.388 INFO    ] time= 12/06/2026 08:51:05
[2026-06-12 08:51:05,416.416 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 08:51:05,423.423 INFO    ] Checking for existing commands in stream...
[2026-06-12 08:51:05,513.513 INFO    ] No existing commands found in stream
[2026-06-12 08:51:10,532.532 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 08:51:10,535.535 INFO    ] Waiting 3.95 seconds before fallback handling...
[2026-06-12 08:51:14,880.880 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 08:51:14,882.882 INFO    ] Checking for system updates...
[2026-06-12 08:51:14,903.903 INFO    ] 200
[2026-06-12 08:51:14,904.904 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:51:14,936.936 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 08:51:14,937.937 INFO    ] No update needed
[2026-06-12 08:51:14,939.939 INFO    ] Checking for camera pi updates...
[2026-06-12 08:51:14,959.959 INFO    ] 200
[2026-06-12 08:51:14,961.961 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:51:14,987.987 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 08:51:15,023.023 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 08:51:15,024.024 INFO    ] No camera update needed
[2026-06-12 08:51:15,026.026 INFO    ] Script finished. Safe exiting...
[2026-06-12 08:51:15,027.027 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 08:51:15,030.030 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 08:51:15,034.034 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 08:51:17,074.074 INFO    ] ================================================
[2026-06-12 08:51:17,089.089 INFO    ] Launching Daemon at Fri Jun 12 08:51:17 IST 2026
[2026-06-12 08:51:17,100.100 INFO    ] ================================================
[2026-06-12 08:51:17,440.440 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 08:51:17
[2026-06-12 08:51:17,755.755 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 08:51:17,886.886 INFO    ] Initializing speech engine...
[2026-06-12 08:51:17,899.899 INFO    ] 2026-06-12 08:51:17
[2026-06-12 08:51:18,107.107 INFO    ] 2026-06-12 08:51:18
[2026-06-12 08:51:18,135.135 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 08:51:18,318.318 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 08:51:18,327.327 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 08:51:18,434.434 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 08:51:18,435.435 INFO    ] time= 12/06/2026 08:51:18
[2026-06-12 08:51:18,437.437 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 08:51:18,438.438 INFO    ] Checking for existing commands in stream...
[2026-06-12 08:51:18,504.504 INFO    ] No existing commands found in stream
[2026-06-12 08:51:23,512.512 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 08:51:23,515.515 INFO    ] Waiting 1.45 seconds before fallback handling...
[2026-06-12 08:51:25,377.377 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 08:51:25,378.378 INFO    ] Checking for system updates...
[2026-06-12 08:51:25,400.400 INFO    ] 200
[2026-06-12 08:51:25,401.401 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:51:25,431.431 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 08:51:25,433.433 INFO    ] No update needed
[2026-06-12 08:51:25,434.434 INFO    ] Checking for camera pi updates...
[2026-06-12 08:51:25,453.453 INFO    ] 200
[2026-06-12 08:51:25,455.455 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:51:25,478.478 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 08:51:25,514.514 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 08:51:25,516.516 INFO    ] No camera update needed
[2026-06-12 08:51:25,517.517 INFO    ] Script finished. Safe exiting...
[2026-06-12 08:51:25,518.518 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 08:51:25,521.521 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 08:51:25,524.524 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 08:51:27,564.564 INFO    ] ================================================
[2026-06-12 08:51:27,580.580 INFO    ] Launching Daemon at Fri Jun 12 08:51:27 IST 2026
[2026-06-12 08:51:27,591.591 INFO    ] ================================================
[2026-06-12 08:51:27,913.913 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 08:51:27
[2026-06-12 08:51:28,229.229 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 08:51:28,362.362 INFO    ] Initializing speech engine...
[2026-06-12 08:51:28,375.375 INFO    ] 2026-06-12 08:51:28
[2026-06-12 08:51:28,585.585 INFO    ] 2026-06-12 08:51:28
[2026-06-12 08:51:28,614.614 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 08:51:28,789.789 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 08:51:28,804.804 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 08:51:28,933.933 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 08:51:28,984.984 INFO    ] time= 12/06/2026 08:51:28
[2026-06-12 08:51:29,029.029 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 08:51:29,034.034 INFO    ] Checking for existing commands in stream...
[2026-06-12 08:51:29,130.130 INFO    ] No existing commands found in stream
[2026-06-12 08:51:34,144.144 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 08:51:34,147.147 INFO    ] Waiting 2.73 seconds before fallback handling...
[2026-06-12 08:51:37,252.252 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 08:51:37,254.254 INFO    ] Checking for system updates...
[2026-06-12 08:51:37,274.274 INFO    ] 200
[2026-06-12 08:51:37,276.276 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:51:37,306.306 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 08:51:37,307.307 INFO    ] No update needed
[2026-06-12 08:51:37,309.309 INFO    ] Checking for camera pi updates...
[2026-06-12 08:51:37,331.331 INFO    ] 200
[2026-06-12 08:51:37,332.332 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:51:37,355.355 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 08:51:37,395.395 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 08:51:37,397.397 INFO    ] No camera update needed
[2026-06-12 08:51:37,398.398 INFO    ] Script finished. Safe exiting...
[2026-06-12 08:51:37,399.399 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 08:51:37,402.402 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 08:51:37,405.405 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 08:51:39,445.445 INFO    ] ================================================
[2026-06-12 08:51:39,460.460 INFO    ] Launching Daemon at Fri Jun 12 08:51:39 IST 2026
[2026-06-12 08:51:39,471.471 INFO    ] ================================================
[2026-06-12 08:51:39,799.799 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 08:51:39
[2026-06-12 08:51:40,140.140 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 08:51:40,293.293 INFO    ] Initializing speech engine...
[2026-06-12 08:51:40,304.304 INFO    ] 2026-06-12 08:51:40
[2026-06-12 08:51:40,512.512 INFO    ] 2026-06-12 08:51:40
[2026-06-12 08:51:40,540.540 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 08:51:40,726.726 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 08:51:40,736.736 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 08:51:40,891.891 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 08:51:40,941.941 INFO    ] time= 12/06/2026 08:51:40
[2026-06-12 08:51:40,956.956 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 08:51:40,963.963 INFO    ] Checking for existing commands in stream...
[2026-06-12 08:51:41,031.031 INFO    ] No existing commands found in stream
[2026-06-12 08:51:46,045.045 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 08:51:46,048.048 INFO    ] Waiting 1.50 seconds before fallback handling...
[2026-06-12 08:51:47,903.903 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 08:51:47,905.905 INFO    ] Checking for system updates...
[2026-06-12 08:51:47,926.926 INFO    ] 200
[2026-06-12 08:51:47,928.928 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:51:47,959.959 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 08:51:47,961.961 INFO    ] No update needed
[2026-06-12 08:51:47,962.962 INFO    ] Checking for camera pi updates...
[2026-06-12 08:51:47,984.984 INFO    ] 200
[2026-06-12 08:51:47,986.986 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:51:48,011.011 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 08:51:48,051.051 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 08:51:48,053.053 INFO    ] No camera update needed
[2026-06-12 08:51:48,054.054 INFO    ] Script finished. Safe exiting...
[2026-06-12 08:51:48,056.056 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 08:51:48,059.059 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 08:51:48,062.062 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 08:51:50,105.105 INFO    ] ================================================
[2026-06-12 08:51:50,123.123 INFO    ] Launching Daemon at Fri Jun 12 08:51:50 IST 2026
[2026-06-12 08:51:50,134.134 INFO    ] ================================================
[2026-06-12 08:51:50,471.471 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 08:51:50
[2026-06-12 08:51:50,818.818 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 08:51:50,971.971 INFO    ] Initializing speech engine...
[2026-06-12 08:51:50,977.977 INFO    ] 2026-06-12 08:51:50
[2026-06-12 08:51:51,188.188 INFO    ] 2026-06-12 08:51:51
[2026-06-12 08:51:51,218.218 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 08:51:51,406.406 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 08:51:51,417.417 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 08:51:51,586.586 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 08:51:51,638.638 INFO    ] time= 12/06/2026 08:51:51
[2026-06-12 08:51:51,649.649 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 08:51:51,651.651 INFO    ] Checking for existing commands in stream...
[2026-06-12 08:51:51,743.743 INFO    ] No existing commands found in stream
[2026-06-12 08:51:56,758.758 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 08:51:56,762.762 INFO    ] Waiting 2.68 seconds before fallback handling...
[2026-06-12 08:51:59,843.843 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 08:51:59,845.845 INFO    ] Checking for system updates...
[2026-06-12 08:51:59,866.866 INFO    ] 200
[2026-06-12 08:51:59,868.868 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:51:59,898.898 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 08:51:59,900.900 INFO    ] No update needed
[2026-06-12 08:51:59,902.902 INFO    ] Checking for camera pi updates...
[2026-06-12 08:51:59,921.921 INFO    ] 200
[2026-06-12 08:51:59,923.923 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:51:59,946.946 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 08:51:59,979.979 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 08:51:59,981.981 INFO    ] No camera update needed
[2026-06-12 08:51:59,982.982 INFO    ] Script finished. Safe exiting...
[2026-06-12 08:51:59,983.983 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 08:51:59,987.987 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 08:51:59,990.990 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 08:52:02,023.023 INFO    ] ================================================
[2026-06-12 08:52:02,034.034 INFO    ] Launching Daemon at Fri Jun 12 08:52:02 IST 2026
[2026-06-12 08:52:02,045.045 INFO    ] ================================================
[2026-06-12 08:52:02,402.402 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 08:52:02
[2026-06-12 08:52:02,774.774 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 08:52:02,924.924 INFO    ] Initializing speech engine...
[2026-06-12 08:52:02,929.929 INFO    ] 2026-06-12 08:52:02
[2026-06-12 08:52:03,134.134 INFO    ] 2026-06-12 08:52:03
[2026-06-12 08:52:03,163.163 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 08:52:03,345.345 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 08:52:03,355.355 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 08:52:03,506.506 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 08:52:03,555.555 INFO    ] time= 12/06/2026 08:52:03
[2026-06-12 08:52:03,576.576 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 08:52:03,636.636 INFO    ] Checking for existing commands in stream...
[2026-06-12 08:52:03,715.715 INFO    ] No existing commands found in stream
[2026-06-12 08:52:08,721.721 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 08:52:08,723.723 INFO    ] Waiting 1.90 seconds before fallback handling...
[2026-06-12 08:52:11,048.048 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 08:52:11,049.049 INFO    ] Checking for system updates...
[2026-06-12 08:52:11,070.070 INFO    ] 200
[2026-06-12 08:52:11,072.072 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:52:11,102.102 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 08:52:11,104.104 INFO    ] No update needed
[2026-06-12 08:52:11,105.105 INFO    ] Checking for camera pi updates...
[2026-06-12 08:52:11,124.124 INFO    ] 200
[2026-06-12 08:52:11,126.126 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:52:11,151.151 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 08:52:11,186.186 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 08:52:11,188.188 INFO    ] No camera update needed
[2026-06-12 08:52:11,189.189 INFO    ] Script finished. Safe exiting...
[2026-06-12 08:52:11,190.190 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 08:52:11,193.193 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 08:52:11,196.196 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 08:52:13,239.239 INFO    ] ================================================
[2026-06-12 08:52:13,256.256 INFO    ] Launching Daemon at Fri Jun 12 08:52:13 IST 2026
[2026-06-12 08:52:13,267.267 INFO    ] ================================================
[2026-06-12 08:52:13,597.597 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 08:52:13
[2026-06-12 08:52:13,912.912 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 08:52:14,043.043 INFO    ] Initializing speech engine...
[2026-06-12 08:52:14,057.057 INFO    ] 2026-06-12 08:52:14
[2026-06-12 08:52:14,265.265 INFO    ] 2026-06-12 08:52:14
[2026-06-12 08:52:14,294.294 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 08:52:14,479.479 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 08:52:14,488.488 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 08:52:14,638.638 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 08:52:14,688.688 INFO    ] time= 12/06/2026 08:52:14
[2026-06-12 08:52:14,708.708 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 08:52:14,715.715 INFO    ] Checking for existing commands in stream...
[2026-06-12 08:52:14,781.781 INFO    ] No existing commands found in stream
[2026-06-12 08:52:19,792.792 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 08:52:19,795.795 INFO    ] Waiting 3.80 seconds before fallback handling...
[2026-06-12 08:52:23,978.978 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 08:52:23,980.980 INFO    ] Checking for system updates...
[2026-06-12 08:52:24,000.000 INFO    ] 200
[2026-06-12 08:52:24,002.002 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:52:24,032.032 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 08:52:24,034.034 INFO    ] No update needed
[2026-06-12 08:52:24,035.035 INFO    ] Checking for camera pi updates...
[2026-06-12 08:52:24,054.054 INFO    ] 200
[2026-06-12 08:52:24,055.055 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:52:24,080.080 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 08:52:24,208.208 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 08:52:24,209.209 INFO    ] No camera update needed
[2026-06-12 08:52:24,211.211 INFO    ] Script finished. Safe exiting...
[2026-06-12 08:52:24,212.212 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 08:52:24,215.215 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 08:52:24,217.217 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 08:52:26,255.255 INFO    ] ================================================
[2026-06-12 08:52:26,271.271 INFO    ] Launching Daemon at Fri Jun 12 08:52:26 IST 2026
[2026-06-12 08:52:26,282.282 INFO    ] ================================================
[2026-06-12 08:52:26,638.638 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 08:52:26
[2026-06-12 08:52:26,955.955 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 08:52:27,099.099 INFO    ] Initializing speech engine...
[2026-06-12 08:52:27,105.105 INFO    ] 2026-06-12 08:52:27
[2026-06-12 08:52:27,309.309 INFO    ] 2026-06-12 08:52:27
[2026-06-12 08:52:27,337.337 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 08:52:27,522.522 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 08:52:27,532.532 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 08:52:27,671.671 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 08:52:27,730.730 INFO    ] time= 12/06/2026 08:52:27
[2026-06-12 08:52:27,751.751 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 08:52:27,757.757 INFO    ] Checking for existing commands in stream...
[2026-06-12 08:52:27,848.848 INFO    ] No existing commands found in stream
[2026-06-12 08:52:32,862.862 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 08:52:32,865.865 INFO    ] Waiting 2.20 seconds before fallback handling...
[2026-06-12 08:52:35,423.423 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 08:52:35,424.424 INFO    ] Checking for system updates...
[2026-06-12 08:52:35,445.445 INFO    ] 200
[2026-06-12 08:52:35,446.446 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:52:35,476.476 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 08:52:35,477.477 INFO    ] No update needed
[2026-06-12 08:52:35,478.478 INFO    ] Checking for camera pi updates...
[2026-06-12 08:52:35,498.498 INFO    ] 200
[2026-06-12 08:52:35,499.499 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:52:35,524.524 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 08:52:35,560.560 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 08:52:35,561.561 INFO    ] No camera update needed
[2026-06-12 08:52:35,563.563 INFO    ] Script finished. Safe exiting...
[2026-06-12 08:52:35,564.564 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 08:52:35,567.567 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 08:52:35,569.569 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 08:52:37,607.607 INFO    ] ================================================
[2026-06-12 08:52:37,623.623 INFO    ] Launching Daemon at Fri Jun 12 08:52:37 IST 2026
[2026-06-12 08:52:37,634.634 INFO    ] ================================================
[2026-06-12 08:52:37,976.976 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 08:52:37
[2026-06-12 08:52:38,289.289 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 08:52:38,432.432 INFO    ] Initializing speech engine...
[2026-06-12 08:52:38,437.437 INFO    ] 2026-06-12 08:52:38
[2026-06-12 08:52:38,640.640 INFO    ] 2026-06-12 08:52:38
[2026-06-12 08:52:38,670.670 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 08:52:38,875.875 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 08:52:38,879.879 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 08:52:39,018.018 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 08:52:39,088.088 INFO    ] time= 12/06/2026 08:52:39
[2026-06-12 08:52:39,118.118 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 08:52:39,125.125 INFO    ] Checking for existing commands in stream...
[2026-06-12 08:52:39,198.198 INFO    ] No existing commands found in stream
[2026-06-12 08:52:44,207.207 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 08:52:44,210.210 INFO    ] Waiting 1.36 seconds before fallback handling...
[2026-06-12 08:52:45,960.960 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 08:52:45,961.961 INFO    ] Checking for system updates...
[2026-06-12 08:52:45,982.982 INFO    ] 200
[2026-06-12 08:52:45,984.984 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:52:46,014.014 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 08:52:46,015.015 INFO    ] No update needed
[2026-06-12 08:52:46,016.016 INFO    ] Checking for camera pi updates...
[2026-06-12 08:52:46,037.037 INFO    ] 200
[2026-06-12 08:52:46,039.039 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:52:46,064.064 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 08:52:46,103.103 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 08:52:46,105.105 INFO    ] No camera update needed
[2026-06-12 08:52:46,106.106 INFO    ] Script finished. Safe exiting...
[2026-06-12 08:52:46,107.107 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 08:52:46,110.110 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 08:52:46,113.113 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 08:52:48,151.151 INFO    ] ================================================
[2026-06-12 08:52:48,167.167 INFO    ] Launching Daemon at Fri Jun 12 08:52:48 IST 2026
[2026-06-12 08:52:48,178.178 INFO    ] ================================================
[2026-06-12 08:52:48,510.510 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 08:52:48
[2026-06-12 08:52:48,826.826 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 08:52:48,956.956 INFO    ] Initializing speech engine...
[2026-06-12 08:52:48,960.960 INFO    ] 2026-06-12 08:52:48
[2026-06-12 08:52:49,179.179 INFO    ] 2026-06-12 08:52:49
[2026-06-12 08:52:49,207.207 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 08:52:49,394.394 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 08:52:49,398.398 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 08:52:49,556.556 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 08:52:49,606.606 INFO    ] time= 12/06/2026 08:52:49
[2026-06-12 08:52:49,628.628 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 08:52:49,634.634 INFO    ] Checking for existing commands in stream...
[2026-06-12 08:52:49,702.702 INFO    ] No existing commands found in stream
[2026-06-12 08:52:54,711.711 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 08:52:54,714.714 INFO    ] Waiting 3.57 seconds before fallback handling...
[2026-06-12 08:52:58,704.704 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 08:52:58,706.706 INFO    ] Checking for system updates...
[2026-06-12 08:52:58,727.727 INFO    ] 200
[2026-06-12 08:52:58,729.729 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:52:58,773.773 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 08:52:58,774.774 INFO    ] No update needed
[2026-06-12 08:52:58,776.776 INFO    ] Checking for camera pi updates...
[2026-06-12 08:52:58,798.798 INFO    ] 200
[2026-06-12 08:52:58,800.800 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:52:58,828.828 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 08:52:58,868.868 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 08:52:58,870.870 INFO    ] No camera update needed
[2026-06-12 08:52:58,871.871 INFO    ] Script finished. Safe exiting...
[2026-06-12 08:52:58,873.873 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 08:52:58,876.876 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 08:52:58,879.879 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 08:53:00,920.920 INFO    ] ================================================
[2026-06-12 08:53:00,936.936 INFO    ] Launching Daemon at Fri Jun 12 08:53:00 IST 2026
[2026-06-12 08:53:00,947.947 INFO    ] ================================================
[2026-06-12 08:53:01,315.315 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 08:53:01
[2026-06-12 08:53:01,627.627 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 08:53:01,771.771 INFO    ] Initializing speech engine...
[2026-06-12 08:53:01,776.776 INFO    ] 2026-06-12 08:53:01
[2026-06-12 08:53:01,993.993 INFO    ] 2026-06-12 08:53:01
[2026-06-12 08:53:02,024.024 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 08:53:02,219.219 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 08:53:02,227.227 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 08:53:02,365.365 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 08:53:02,373.373 INFO    ] time= 12/06/2026 08:53:02
[2026-06-12 08:53:02,435.435 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 08:53:02,499.499 INFO    ] Checking for existing commands in stream...
[2026-06-12 08:53:02,573.573 INFO    ] No existing commands found in stream
[2026-06-12 08:53:07,583.583 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 08:53:07,587.587 INFO    ] Waiting 3.69 seconds before fallback handling...
[2026-06-12 08:53:11,650.650 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 08:53:11,651.651 INFO    ] Checking for system updates...
[2026-06-12 08:53:11,672.672 INFO    ] 200
[2026-06-12 08:53:11,674.674 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:53:11,708.708 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 08:53:11,709.709 INFO    ] No update needed
[2026-06-12 08:53:11,711.711 INFO    ] Checking for camera pi updates...
[2026-06-12 08:53:11,733.733 INFO    ] 200
[2026-06-12 08:53:11,734.734 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:53:11,760.760 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 08:53:11,806.806 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 08:53:11,808.808 INFO    ] No camera update needed
[2026-06-12 08:53:11,809.809 INFO    ] Script finished. Safe exiting...
[2026-06-12 08:53:11,810.810 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 08:53:11,814.814 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 08:53:11,817.817 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 08:53:13,858.858 INFO    ] ================================================
[2026-06-12 08:53:13,873.873 INFO    ] Launching Daemon at Fri Jun 12 08:53:13 IST 2026
[2026-06-12 08:53:13,884.884 INFO    ] ================================================
[2026-06-12 08:53:14,220.220 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 08:53:14
[2026-06-12 08:53:14,530.530 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 08:53:14,689.689 INFO    ] Initializing speech engine...
[2026-06-12 08:53:14,693.693 INFO    ] 2026-06-12 08:53:14
[2026-06-12 08:53:14,894.894 INFO    ] 2026-06-12 08:53:14
[2026-06-12 08:53:14,923.923 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 08:53:15,107.107 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 08:53:15,117.117 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 08:53:15,308.308 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 08:53:15,334.334 INFO    ] time= 12/06/2026 08:53:15
[2026-06-12 08:53:15,339.339 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 08:53:15,341.341 INFO    ] Checking for existing commands in stream...
[2026-06-12 08:53:15,408.408 INFO    ] No existing commands found in stream
[2026-06-12 08:53:20,423.423 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 08:53:20,426.426 INFO    ] Waiting 3.68 seconds before fallback handling...
[2026-06-12 08:53:24,510.510 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 08:53:24,511.511 INFO    ] Checking for system updates...
[2026-06-12 08:53:24,532.532 INFO    ] 200
[2026-06-12 08:53:24,534.534 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:53:24,567.567 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 08:53:24,568.568 INFO    ] No update needed
[2026-06-12 08:53:24,569.569 INFO    ] Checking for camera pi updates...
[2026-06-12 08:53:24,590.590 INFO    ] 200
[2026-06-12 08:53:24,592.592 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:53:24,615.615 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 08:53:24,652.652 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 08:53:24,653.653 INFO    ] No camera update needed
[2026-06-12 08:53:24,654.654 INFO    ] Script finished. Safe exiting...
[2026-06-12 08:53:24,655.655 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 08:53:24,658.658 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 08:53:24,661.661 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 08:53:26,700.700 INFO    ] ================================================
[2026-06-12 08:53:26,716.716 INFO    ] Launching Daemon at Fri Jun 12 08:53:26 IST 2026
[2026-06-12 08:53:26,727.727 INFO    ] ================================================
[2026-06-12 08:53:27,114.114 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 08:53:27
[2026-06-12 08:53:27,456.456 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 08:53:27,597.597 INFO    ] Initializing speech engine...
[2026-06-12 08:53:27,610.610 INFO    ] 2026-06-12 08:53:27
[2026-06-12 08:53:27,822.822 INFO    ] 2026-06-12 08:53:27
[2026-06-12 08:53:27,852.852 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 08:53:28,036.036 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 08:53:28,039.039 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 08:53:28,186.186 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 08:53:28,244.244 INFO    ] time= 12/06/2026 08:53:28
[2026-06-12 08:53:28,267.267 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 08:53:28,273.273 INFO    ] Checking for existing commands in stream...
[2026-06-12 08:53:28,339.339 INFO    ] No existing commands found in stream
[2026-06-12 08:53:33,348.348 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 08:53:33,351.351 INFO    ] Waiting 0.29 seconds before fallback handling...
[2026-06-12 08:53:34,007.007 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 08:53:34,008.008 INFO    ] Checking for system updates...
[2026-06-12 08:53:34,031.031 INFO    ] 200
[2026-06-12 08:53:34,032.032 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:53:34,062.062 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 08:53:34,064.064 INFO    ] No update needed
[2026-06-12 08:53:34,065.065 INFO    ] Checking for camera pi updates...
[2026-06-12 08:53:34,086.086 INFO    ] 200
[2026-06-12 08:53:34,087.087 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:53:34,110.110 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 08:53:34,145.145 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 08:53:34,147.147 INFO    ] No camera update needed
[2026-06-12 08:53:34,148.148 INFO    ] Script finished. Safe exiting...
[2026-06-12 08:53:34,149.149 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 08:53:34,152.152 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 08:53:34,155.155 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 08:53:36,193.193 INFO    ] ================================================
[2026-06-12 08:53:36,209.209 INFO    ] Launching Daemon at Fri Jun 12 08:53:36 IST 2026
[2026-06-12 08:53:36,220.220 INFO    ] ================================================
[2026-06-12 08:53:36,600.600 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 08:53:36
[2026-06-12 08:53:36,942.942 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 08:53:37,093.093 INFO    ] Initializing speech engine...
[2026-06-12 08:53:37,099.099 INFO    ] 2026-06-12 08:53:37
[2026-06-12 08:53:37,308.308 INFO    ] 2026-06-12 08:53:37
[2026-06-12 08:53:37,337.337 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 08:53:37,521.521 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 08:53:37,532.532 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 08:53:37,716.716 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 08:53:37,748.748 INFO    ] time= 12/06/2026 08:53:37
[2026-06-12 08:53:37,754.754 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 08:53:37,757.757 INFO    ] Checking for existing commands in stream...
[2026-06-12 08:53:37,823.823 INFO    ] No existing commands found in stream
[2026-06-12 08:53:42,853.853 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 08:53:42,856.856 INFO    ] Waiting 0.90 seconds before fallback handling...
[2026-06-12 08:53:44,158.158 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 08:53:44,160.160 INFO    ] Checking for system updates...
[2026-06-12 08:53:44,181.181 INFO    ] 200
[2026-06-12 08:53:44,182.182 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:53:44,212.212 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 08:53:44,214.214 INFO    ] No update needed
[2026-06-12 08:53:44,215.215 INFO    ] Checking for camera pi updates...
[2026-06-12 08:53:44,236.236 INFO    ] 200
[2026-06-12 08:53:44,238.238 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:53:44,261.261 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 08:53:44,297.297 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 08:53:44,298.298 INFO    ] No camera update needed
[2026-06-12 08:53:44,300.300 INFO    ] Script finished. Safe exiting...
[2026-06-12 08:53:44,301.301 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 08:53:44,304.304 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 08:53:44,307.307 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 08:53:46,345.345 INFO    ] ================================================
[2026-06-12 08:53:46,360.360 INFO    ] Launching Daemon at Fri Jun 12 08:53:46 IST 2026
[2026-06-12 08:53:46,371.371 INFO    ] ================================================
[2026-06-12 08:53:46,731.731 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 08:53:46
[2026-06-12 08:53:47,075.075 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 08:53:47,228.228 INFO    ] Initializing speech engine...
[2026-06-12 08:53:47,234.234 INFO    ] 2026-06-12 08:53:47
[2026-06-12 08:53:47,443.443 INFO    ] 2026-06-12 08:53:47
[2026-06-12 08:53:47,473.473 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 08:53:47,657.657 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 08:53:47,666.666 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 08:53:47,823.823 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 08:53:47,872.872 INFO    ] time= 12/06/2026 08:53:47
[2026-06-12 08:53:47,893.893 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 08:53:47,895.895 INFO    ] Checking for existing commands in stream...
[2026-06-12 08:53:47,985.985 INFO    ] No existing commands found in stream
[2026-06-12 08:53:53,000.000 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 08:53:53,004.004 INFO    ] Waiting 1.30 seconds before fallback handling...
[2026-06-12 08:53:59,736.736 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 08:53:59,737.737 INFO    ] Checking for system updates...
[2026-06-12 08:53:59,760.760 INFO    ] 200
[2026-06-12 08:53:59,762.762 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:53:59,795.795 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 08:53:59,796.796 INFO    ] No update needed
[2026-06-12 08:53:59,798.798 INFO    ] Checking for camera pi updates...
[2026-06-12 08:53:59,820.820 INFO    ] 200
[2026-06-12 08:53:59,822.822 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:53:59,845.845 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 08:53:59,882.882 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 08:53:59,884.884 INFO    ] No camera update needed
[2026-06-12 08:53:59,885.885 INFO    ] Script finished. Safe exiting...
[2026-06-12 08:53:59,886.886 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 08:53:59,890.890 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 08:53:59,893.893 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 08:54:01,926.926 INFO    ] ================================================
[2026-06-12 08:54:01,940.940 INFO    ] Launching Daemon at Fri Jun 12 08:54:01 IST 2026
[2026-06-12 08:54:01,947.947 INFO    ] ================================================
[2026-06-12 08:54:02,336.336 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 08:54:02
[2026-06-12 08:54:02,685.685 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 08:54:02,838.838 INFO    ] Initializing speech engine...
[2026-06-12 08:54:02,843.843 INFO    ] 2026-06-12 08:54:02
[2026-06-12 08:54:03,054.054 INFO    ] 2026-06-12 08:54:03
[2026-06-12 08:54:03,084.084 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 08:54:03,270.270 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 08:54:03,281.281 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 08:54:03,428.428 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 08:54:03,484.484 INFO    ] time= 12/06/2026 08:54:03
[2026-06-12 08:54:03,510.510 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 08:54:03,512.512 INFO    ] Checking for existing commands in stream...
[2026-06-12 08:54:03,604.604 INFO    ] No existing commands found in stream
[2026-06-12 08:54:08,613.613 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 08:54:08,616.616 INFO    ] Waiting 0.02 seconds before fallback handling...
[2026-06-12 08:54:09,011.011 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 08:54:09,012.012 INFO    ] Checking for system updates...
[2026-06-12 08:54:09,041.041 INFO    ] 200
[2026-06-12 08:54:09,043.043 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:54:09,076.076 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 08:54:09,078.078 INFO    ] No update needed
[2026-06-12 08:54:09,079.079 INFO    ] Checking for camera pi updates...
[2026-06-12 08:54:09,100.100 INFO    ] 200
[2026-06-12 08:54:09,102.102 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:54:09,129.129 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 08:54:09,165.165 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 08:54:09,167.167 INFO    ] No camera update needed
[2026-06-12 08:54:09,168.168 INFO    ] Script finished. Safe exiting...
[2026-06-12 08:54:09,170.170 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 08:54:09,173.173 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 08:54:09,176.176 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 08:54:11,218.218 INFO    ] ================================================
[2026-06-12 08:54:11,233.233 INFO    ] Launching Daemon at Fri Jun 12 08:54:11 IST 2026
[2026-06-12 08:54:11,244.244 INFO    ] ================================================
[2026-06-12 08:54:11,585.585 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 08:54:11
[2026-06-12 08:54:11,895.895 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 08:54:12,037.037 INFO    ] Initializing speech engine...
[2026-06-12 08:54:12,042.042 INFO    ] 2026-06-12 08:54:12
[2026-06-12 08:54:12,247.247 INFO    ] 2026-06-12 08:54:12
[2026-06-12 08:54:12,277.277 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 08:54:12,462.462 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 08:54:12,466.466 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 08:54:12,603.603 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 08:54:12,667.667 INFO    ] time= 12/06/2026 08:54:12
[2026-06-12 08:54:12,696.696 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 08:54:12,702.702 INFO    ] Checking for existing commands in stream...
[2026-06-12 08:54:12,770.770 INFO    ] No existing commands found in stream
[2026-06-12 08:54:17,779.779 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 08:54:17,782.782 INFO    ] Waiting 3.76 seconds before fallback handling...
[2026-06-12 08:54:21,888.888 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 08:54:21,890.890 INFO    ] Checking for system updates...
[2026-06-12 08:54:21,912.912 INFO    ] 200
[2026-06-12 08:54:21,916.916 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:54:21,950.950 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 08:54:21,951.951 INFO    ] No update needed
[2026-06-12 08:54:21,953.953 INFO    ] Checking for camera pi updates...
[2026-06-12 08:54:21,973.973 INFO    ] 200
[2026-06-12 08:54:21,975.975 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:54:21,998.998 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 08:54:22,024.024 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 08:54:22,026.026 INFO    ] No camera update needed
[2026-06-12 08:54:22,027.027 INFO    ] Script finished. Safe exiting...
[2026-06-12 08:54:22,028.028 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 08:54:22,031.031 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 08:54:22,034.034 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 08:54:24,076.076 INFO    ] ================================================
[2026-06-12 08:54:24,096.096 INFO    ] Launching Daemon at Fri Jun 12 08:54:24 IST 2026
[2026-06-12 08:54:24,106.106 INFO    ] ================================================
[2026-06-12 08:54:24,460.460 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 08:54:24
[2026-06-12 08:54:24,776.776 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 08:54:24,910.910 INFO    ] Initializing speech engine...
[2026-06-12 08:54:24,915.915 INFO    ] 2026-06-12 08:54:24
[2026-06-12 08:54:25,147.147 INFO    ] 2026-06-12 08:54:25
[2026-06-12 08:54:25,179.179 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 08:54:25,324.324 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 08:54:25,382.382 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 08:54:25,525.525 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 08:54:25,582.582 INFO    ] time= 12/06/2026 08:54:25
[2026-06-12 08:54:25,617.617 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 08:54:25,635.635 INFO    ] Checking for existing commands in stream...
[2026-06-12 08:54:25,711.711 INFO    ] No existing commands found in stream
[2026-06-12 08:54:30,722.722 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 08:54:30,724.724 INFO    ] Waiting 3.80 seconds before fallback handling...
[2026-06-12 08:54:34,888.888 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 08:54:34,889.889 INFO    ] Checking for system updates...
[2026-06-12 08:54:34,910.910 INFO    ] 200
[2026-06-12 08:54:34,912.912 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:54:34,942.942 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 08:54:34,944.944 INFO    ] No update needed
[2026-06-12 08:54:34,945.945 INFO    ] Checking for camera pi updates...
[2026-06-12 08:54:34,966.966 INFO    ] 200
[2026-06-12 08:54:34,967.967 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:54:34,990.990 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 08:54:35,032.032 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 08:54:35,033.033 INFO    ] No camera update needed
[2026-06-12 08:54:35,035.035 INFO    ] Script finished. Safe exiting...
[2026-06-12 08:54:35,036.036 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 08:54:35,039.039 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 08:54:35,042.042 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 08:54:37,079.079 INFO    ] ================================================
[2026-06-12 08:54:37,095.095 INFO    ] Launching Daemon at Fri Jun 12 08:54:37 IST 2026
[2026-06-12 08:54:37,105.105 INFO    ] ================================================
[2026-06-12 08:54:37,431.431 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 08:54:37
[2026-06-12 08:54:37,744.744 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 08:54:37,873.873 INFO    ] Initializing speech engine...
[2026-06-12 08:54:37,877.877 INFO    ] 2026-06-12 08:54:37
[2026-06-12 08:54:38,096.096 INFO    ] 2026-06-12 08:54:38
[2026-06-12 08:54:38,125.125 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 08:54:38,310.310 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 08:54:38,318.318 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 08:54:38,466.466 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 08:54:38,519.519 INFO    ] time= 12/06/2026 08:54:38
[2026-06-12 08:54:38,542.542 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 08:54:38,548.548 INFO    ] Checking for existing commands in stream...
[2026-06-12 08:54:38,613.613 INFO    ] No existing commands found in stream
[2026-06-12 08:54:43,624.624 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 08:54:43,626.626 INFO    ] Waiting 0.82 seconds before fallback handling...
[2026-06-12 08:54:44,850.850 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 08:54:44,852.852 INFO    ] Checking for system updates...
[2026-06-12 08:54:44,873.873 INFO    ] 200
[2026-06-12 08:54:44,874.874 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:54:44,907.907 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 08:54:44,908.908 INFO    ] No update needed
[2026-06-12 08:54:44,910.910 INFO    ] Checking for camera pi updates...
[2026-06-12 08:54:44,929.929 INFO    ] 200
[2026-06-12 08:54:44,931.931 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:54:44,954.954 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 08:54:44,995.995 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 08:54:44,996.996 INFO    ] No camera update needed
[2026-06-12 08:54:44,997.997 INFO    ] Script finished. Safe exiting...
[2026-06-12 08:54:44,999.999 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 08:54:45,002.002 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 08:54:45,004.004 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 08:54:47,043.043 INFO    ] ================================================
[2026-06-12 08:54:47,058.058 INFO    ] Launching Daemon at Fri Jun 12 08:54:47 IST 2026
[2026-06-12 08:54:47,070.070 INFO    ] ================================================
[2026-06-12 08:54:47,416.416 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 08:54:47
[2026-06-12 08:54:47,741.741 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 08:54:47,896.896 INFO    ] Initializing speech engine...
[2026-06-12 08:54:47,899.899 INFO    ] 2026-06-12 08:54:47
[2026-06-12 08:54:48,105.105 INFO    ] 2026-06-12 08:54:48
[2026-06-12 08:54:48,135.135 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 08:54:48,319.319 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 08:54:48,324.324 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 08:54:48,477.477 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 08:54:48,530.530 INFO    ] time= 12/06/2026 08:54:48
[2026-06-12 08:54:48,552.552 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 08:54:48,559.559 INFO    ] Checking for existing commands in stream...
[2026-06-12 08:54:48,626.626 INFO    ] No existing commands found in stream
[2026-06-12 08:54:53,641.641 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 08:54:53,644.644 INFO    ] Waiting 1.16 seconds before fallback handling...
[2026-06-12 08:54:55,217.217 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 08:54:55,218.218 INFO    ] Checking for system updates...
[2026-06-12 08:54:55,241.241 INFO    ] 200
[2026-06-12 08:54:55,243.243 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:54:55,278.278 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 08:54:55,280.280 INFO    ] No update needed
[2026-06-12 08:54:55,281.281 INFO    ] Checking for camera pi updates...
[2026-06-12 08:54:55,304.304 INFO    ] 200
[2026-06-12 08:54:55,305.305 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:54:55,331.331 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 08:54:55,372.372 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 08:54:55,374.374 INFO    ] No camera update needed
[2026-06-12 08:54:55,375.375 INFO    ] Script finished. Safe exiting...
[2026-06-12 08:54:55,377.377 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 08:54:55,380.380 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 08:54:55,383.383 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 08:54:57,422.422 INFO    ] ================================================
[2026-06-12 08:54:57,437.437 INFO    ] Launching Daemon at Fri Jun 12 08:54:57 IST 2026
[2026-06-12 08:54:57,448.448 INFO    ] ================================================
[2026-06-12 08:54:57,814.814 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 08:54:57
[2026-06-12 08:54:58,130.130 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 08:54:58,273.273 INFO    ] Initializing speech engine...
[2026-06-12 08:54:58,279.279 INFO    ] 2026-06-12 08:54:58
[2026-06-12 08:54:58,481.481 INFO    ] 2026-06-12 08:54:58
[2026-06-12 08:54:58,510.510 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 08:54:58,695.695 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 08:54:58,705.705 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 08:54:58,853.853 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 08:54:58,900.900 INFO    ] time= 12/06/2026 08:54:58
[2026-06-12 08:54:58,923.923 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 08:54:58,930.930 INFO    ] Checking for existing commands in stream...
[2026-06-12 08:54:58,995.995 INFO    ] No existing commands found in stream
[2026-06-12 08:55:04,005.005 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 08:55:04,008.008 INFO    ] Waiting 1.23 seconds before fallback handling...
[2026-06-12 08:55:06,319.319 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 08:55:06,322.322 INFO    ] Checking for system updates...
[2026-06-12 08:55:06,359.359 INFO    ] 200
[2026-06-12 08:55:06,362.362 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:55:06,413.413 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 08:55:06,415.415 INFO    ] No update needed
[2026-06-12 08:55:06,416.416 INFO    ] Checking for camera pi updates...
[2026-06-12 08:55:06,435.435 INFO    ] 200
[2026-06-12 08:55:06,437.437 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:55:06,460.460 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 08:55:06,500.500 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 08:55:06,501.501 INFO    ] No camera update needed
[2026-06-12 08:55:06,503.503 INFO    ] Script finished. Safe exiting...
[2026-06-12 08:55:06,504.504 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 08:55:06,507.507 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 08:55:06,509.509 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 08:55:08,549.549 INFO    ] ================================================
[2026-06-12 08:55:08,564.564 INFO    ] Launching Daemon at Fri Jun 12 08:55:08 IST 2026
[2026-06-12 08:55:08,575.575 INFO    ] ================================================
[2026-06-12 08:55:08,930.930 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 08:55:08
[2026-06-12 08:55:09,243.243 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 08:55:09,384.384 INFO    ] Initializing speech engine...
[2026-06-12 08:55:09,392.392 INFO    ] 2026-06-12 08:55:09
[2026-06-12 08:55:09,612.612 INFO    ] 2026-06-12 08:55:09
[2026-06-12 08:55:09,642.642 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 08:55:09,830.830 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 08:55:09,839.839 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 08:55:09,968.968 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 08:55:10,030.030 INFO    ] time= 12/06/2026 08:55:09
[2026-06-12 08:55:10,061.061 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 08:55:10,063.063 INFO    ] Checking for existing commands in stream...
[2026-06-12 08:55:10,128.128 INFO    ] No existing commands found in stream
[2026-06-12 08:55:15,143.143 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 08:55:15,146.146 INFO    ] Waiting 0.72 seconds before fallback handling...
[2026-06-12 08:55:16,293.293 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 08:55:16,294.294 INFO    ] Checking for system updates...
[2026-06-12 08:55:16,315.315 INFO    ] 200
[2026-06-12 08:55:16,317.317 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:55:16,351.351 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 08:55:16,352.352 INFO    ] No update needed
[2026-06-12 08:55:16,354.354 INFO    ] Checking for camera pi updates...
[2026-06-12 08:55:16,375.375 INFO    ] 200
[2026-06-12 08:55:16,377.377 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:55:16,405.405 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 08:55:16,438.438 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 08:55:16,440.440 INFO    ] No camera update needed
[2026-06-12 08:55:16,441.441 INFO    ] Script finished. Safe exiting...
[2026-06-12 08:55:16,442.442 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 08:55:16,445.445 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 08:55:16,448.448 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 08:55:18,486.486 INFO    ] ================================================
[2026-06-12 08:55:18,504.504 INFO    ] Launching Daemon at Fri Jun 12 08:55:18 IST 2026
[2026-06-12 08:55:18,515.515 INFO    ] ================================================
[2026-06-12 08:55:18,889.889 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 08:55:18
[2026-06-12 08:55:19,229.229 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 08:55:19,382.382 INFO    ] Initializing speech engine...
[2026-06-12 08:55:19,387.387 INFO    ] 2026-06-12 08:55:19
[2026-06-12 08:55:19,598.598 INFO    ] 2026-06-12 08:55:19
[2026-06-12 08:55:19,626.626 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 08:55:19,818.818 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 08:55:19,828.828 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 08:55:19,965.965 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 08:55:20,029.029 INFO    ] time= 12/06/2026 08:55:19
[2026-06-12 08:55:20,053.053 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 08:55:20,060.060 INFO    ] Checking for existing commands in stream...
[2026-06-12 08:55:20,131.131 INFO    ] No existing commands found in stream
[2026-06-12 08:55:25,141.141 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 08:55:25,144.144 INFO    ] Waiting 3.38 seconds before fallback handling...
[2026-06-12 08:55:28,911.911 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 08:55:28,913.913 INFO    ] Checking for system updates...
[2026-06-12 08:55:28,936.936 INFO    ] 200
[2026-06-12 08:55:28,937.937 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:55:28,973.973 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 08:55:28,974.974 INFO    ] No update needed
[2026-06-12 08:55:28,976.976 INFO    ] Checking for camera pi updates...
[2026-06-12 08:55:28,998.998 INFO    ] 200
[2026-06-12 08:55:28,999.999 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:55:29,025.025 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 08:55:29,062.062 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 08:55:29,063.063 INFO    ] No camera update needed
[2026-06-12 08:55:29,064.064 INFO    ] Script finished. Safe exiting...
[2026-06-12 08:55:29,066.066 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 08:55:29,069.069 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 08:55:29,072.072 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 08:55:31,110.110 INFO    ] ================================================
[2026-06-12 08:55:31,125.125 INFO    ] Launching Daemon at Fri Jun 12 08:55:31 IST 2026
[2026-06-12 08:55:31,136.136 INFO    ] ================================================
[2026-06-12 08:55:31,467.467 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 08:55:31
[2026-06-12 08:55:31,798.798 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 08:55:31,946.946 INFO    ] Initializing speech engine...
[2026-06-12 08:55:31,955.955 INFO    ] 2026-06-12 08:55:31
[2026-06-12 08:55:32,153.153 INFO    ] 2026-06-12 08:55:32
[2026-06-12 08:55:32,201.201 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 08:55:32,372.372 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 08:55:32,402.402 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 08:55:32,569.569 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 08:55:32,626.626 INFO    ] time= 12/06/2026 08:55:32
[2026-06-12 08:55:32,667.667 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 08:55:32,669.669 INFO    ] Checking for existing commands in stream...
[2026-06-12 08:55:32,763.763 INFO    ] No existing commands found in stream
[2026-06-12 08:55:37,772.772 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 08:55:37,775.775 INFO    ] Waiting 2.45 seconds before fallback handling...
[2026-06-12 08:55:40,621.621 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 08:55:40,622.622 INFO    ] Checking for system updates...
[2026-06-12 08:55:40,644.644 INFO    ] 200
[2026-06-12 08:55:40,645.645 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:55:40,678.678 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 08:55:40,679.679 INFO    ] No update needed
[2026-06-12 08:55:40,681.681 INFO    ] Checking for camera pi updates...
[2026-06-12 08:55:40,700.700 INFO    ] 200
[2026-06-12 08:55:40,702.702 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:55:40,724.724 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 08:55:40,768.768 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 08:55:40,770.770 INFO    ] No camera update needed
[2026-06-12 08:55:40,771.771 INFO    ] Script finished. Safe exiting...
[2026-06-12 08:55:40,772.772 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 08:55:40,775.775 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 08:55:40,778.778 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 08:55:42,816.816 INFO    ] ================================================
[2026-06-12 08:55:42,831.831 INFO    ] Launching Daemon at Fri Jun 12 08:55:42 IST 2026
[2026-06-12 08:55:42,842.842 INFO    ] ================================================
[2026-06-12 08:55:43,184.184 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 08:55:43
[2026-06-12 08:55:43,496.496 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 08:55:43,627.627 INFO    ] Initializing speech engine...
[2026-06-12 08:55:43,635.635 INFO    ] 2026-06-12 08:55:43
[2026-06-12 08:55:43,849.849 INFO    ] 2026-06-12 08:55:43
[2026-06-12 08:55:43,878.878 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 08:55:44,065.065 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 08:55:44,068.068 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 08:55:44,200.200 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 08:55:44,261.261 INFO    ] time= 12/06/2026 08:55:44
[2026-06-12 08:55:44,291.291 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 08:55:44,302.302 INFO    ] Checking for existing commands in stream...
[2026-06-12 08:55:44,374.374 INFO    ] No existing commands found in stream
[2026-06-12 08:55:49,383.383 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 08:55:49,386.386 INFO    ] Waiting 3.59 seconds before fallback handling...
[2026-06-12 08:55:53,377.377 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 08:55:53,378.378 INFO    ] Checking for system updates...
[2026-06-12 08:55:53,401.401 INFO    ] 200
[2026-06-12 08:55:53,403.403 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:55:53,433.433 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 08:55:53,435.435 INFO    ] No update needed
[2026-06-12 08:55:53,436.436 INFO    ] Checking for camera pi updates...
[2026-06-12 08:55:53,456.456 INFO    ] 200
[2026-06-12 08:55:53,458.458 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:55:53,483.483 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 08:55:53,524.524 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 08:55:53,525.525 INFO    ] No camera update needed
[2026-06-12 08:55:53,527.527 INFO    ] Script finished. Safe exiting...
[2026-06-12 08:55:53,528.528 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 08:55:53,531.531 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 08:55:53,534.534 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 08:55:55,573.573 INFO    ] ================================================
[2026-06-12 08:55:55,588.588 INFO    ] Launching Daemon at Fri Jun 12 08:55:55 IST 2026
[2026-06-12 08:55:55,599.599 INFO    ] ================================================
[2026-06-12 08:55:55,930.930 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 08:55:55
[2026-06-12 08:55:56,242.242 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 08:55:56,374.374 INFO    ] Initializing speech engine...
[2026-06-12 08:55:56,386.386 INFO    ] 2026-06-12 08:55:56
[2026-06-12 08:55:56,592.592 INFO    ] 2026-06-12 08:55:56
[2026-06-12 08:55:56,620.620 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 08:55:56,803.803 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 08:55:56,806.806 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 08:55:56,954.954 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 08:55:57,012.012 INFO    ] time= 12/06/2026 08:55:56
[2026-06-12 08:55:57,034.034 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 08:55:57,040.040 INFO    ] Checking for existing commands in stream...
[2026-06-12 08:55:57,106.106 INFO    ] No existing commands found in stream
[2026-06-12 08:56:02,111.111 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 08:56:02,113.113 INFO    ] Waiting 2.80 seconds before fallback handling...
[2026-06-12 08:56:05,302.302 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 08:56:05,304.304 INFO    ] Checking for system updates...
[2026-06-12 08:56:05,326.326 INFO    ] 200
[2026-06-12 08:56:05,327.327 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:56:05,357.357 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 08:56:05,358.358 INFO    ] No update needed
[2026-06-12 08:56:05,360.360 INFO    ] Checking for camera pi updates...
[2026-06-12 08:56:05,380.380 INFO    ] 200
[2026-06-12 08:56:05,382.382 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:56:05,409.409 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 08:56:05,457.457 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 08:56:05,459.459 INFO    ] No camera update needed
[2026-06-12 08:56:05,460.460 INFO    ] Script finished. Safe exiting...
[2026-06-12 08:56:05,461.461 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 08:56:05,464.464 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 08:56:05,467.467 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 08:56:07,505.505 INFO    ] ================================================
[2026-06-12 08:56:07,520.520 INFO    ] Launching Daemon at Fri Jun 12 08:56:07 IST 2026
[2026-06-12 08:56:07,531.531 INFO    ] ================================================
[2026-06-12 08:56:07,899.899 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 08:56:07
[2026-06-12 08:56:08,216.216 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 08:56:08,359.359 INFO    ] Initializing speech engine...
[2026-06-12 08:56:08,365.365 INFO    ] 2026-06-12 08:56:08
[2026-06-12 08:56:08,568.568 INFO    ] 2026-06-12 08:56:08
[2026-06-12 08:56:08,596.596 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 08:56:08,778.778 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 08:56:08,782.782 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 08:56:08,932.932 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 08:56:08,986.986 INFO    ] time= 12/06/2026 08:56:08
[2026-06-12 08:56:09,007.007 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 08:56:09,014.014 INFO    ] Checking for existing commands in stream...
[2026-06-12 08:56:09,080.080 INFO    ] No existing commands found in stream
[2026-06-12 08:56:14,089.089 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 08:56:14,092.092 INFO    ] Waiting 2.38 seconds before fallback handling...
[2026-06-12 08:56:16,880.880 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 08:56:16,882.882 INFO    ] Checking for system updates...
[2026-06-12 08:56:16,903.903 INFO    ] 200
[2026-06-12 08:56:16,905.905 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:56:16,935.935 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 08:56:16,936.936 INFO    ] No update needed
[2026-06-12 08:56:16,937.937 INFO    ] Checking for camera pi updates...
[2026-06-12 08:56:16,957.957 INFO    ] 200
[2026-06-12 08:56:16,958.958 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:56:16,983.983 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 08:56:17,021.021 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 08:56:17,023.023 INFO    ] No camera update needed
[2026-06-12 08:56:17,024.024 INFO    ] Script finished. Safe exiting...
[2026-06-12 08:56:17,025.025 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 08:56:17,028.028 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 08:56:17,031.031 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 08:56:19,070.070 INFO    ] ================================================
[2026-06-12 08:56:19,086.086 INFO    ] Launching Daemon at Fri Jun 12 08:56:19 IST 2026
[2026-06-12 08:56:19,096.096 INFO    ] ================================================
[2026-06-12 08:56:19,439.439 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 08:56:19
[2026-06-12 08:56:19,765.765 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 08:56:19,896.896 INFO    ] Initializing speech engine...
[2026-06-12 08:56:19,901.901 INFO    ] 2026-06-12 08:56:19
[2026-06-12 08:56:20,117.117 INFO    ] 2026-06-12 08:56:20
[2026-06-12 08:56:20,146.146 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 08:56:20,331.331 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 08:56:20,339.339 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 08:56:20,494.494 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 08:56:20,537.537 INFO    ] time= 12/06/2026 08:56:20
[2026-06-12 08:56:20,559.559 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 08:56:20,565.565 INFO    ] Checking for existing commands in stream...
[2026-06-12 08:56:20,632.632 INFO    ] No existing commands found in stream
[2026-06-12 08:56:25,646.646 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 08:56:25,649.649 INFO    ] Waiting 3.92 seconds before fallback handling...
[2026-06-12 08:56:29,934.934 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 08:56:29,936.936 INFO    ] Checking for system updates...
[2026-06-12 08:56:29,957.957 INFO    ] 200
[2026-06-12 08:56:29,958.958 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:56:29,989.989 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 08:56:29,991.991 INFO    ] No update needed
[2026-06-12 08:56:29,992.992 INFO    ] Checking for camera pi updates...
[2026-06-12 08:56:30,013.013 INFO    ] 200
[2026-06-12 08:56:30,014.014 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:56:30,042.042 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 08:56:30,077.077 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 08:56:30,079.079 INFO    ] No camera update needed
[2026-06-12 08:56:30,081.081 INFO    ] Script finished. Safe exiting...
[2026-06-12 08:56:30,082.082 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 08:56:30,085.085 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 08:56:30,088.088 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 08:56:32,121.121 INFO    ] ================================================
[2026-06-12 08:56:32,131.131 INFO    ] Launching Daemon at Fri Jun 12 08:56:32 IST 2026
[2026-06-12 08:56:32,138.138 INFO    ] ================================================
[2026-06-12 08:56:32,466.466 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 08:56:32
[2026-06-12 08:56:32,814.814 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 08:56:32,948.948 INFO    ] Initializing speech engine...
[2026-06-12 08:56:32,956.956 INFO    ] 2026-06-12 08:56:32
[2026-06-12 08:56:33,175.175 INFO    ] 2026-06-12 08:56:33
[2026-06-12 08:56:33,205.205 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 08:56:33,391.391 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 08:56:33,395.395 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 08:56:33,554.554 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 08:56:33,604.604 INFO    ] time= 12/06/2026 08:56:33
[2026-06-12 08:56:33,625.625 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 08:56:33,632.632 INFO    ] Checking for existing commands in stream...
[2026-06-12 08:56:33,700.700 INFO    ] No existing commands found in stream
[2026-06-12 08:56:38,709.709 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 08:56:38,712.712 INFO    ] Waiting 2.59 seconds before fallback handling...
[2026-06-12 08:56:41,692.692 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 08:56:41,693.693 INFO    ] Checking for system updates...
[2026-06-12 08:56:41,715.715 INFO    ] 200
[2026-06-12 08:56:41,716.716 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:56:41,748.748 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 08:56:41,750.750 INFO    ] No update needed
[2026-06-12 08:56:41,751.751 INFO    ] Checking for camera pi updates...
[2026-06-12 08:56:41,772.772 INFO    ] 200
[2026-06-12 08:56:41,773.773 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:56:41,798.798 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 08:56:41,936.936 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 08:56:41,937.937 INFO    ] No camera update needed
[2026-06-12 08:56:41,938.938 INFO    ] Script finished. Safe exiting...
[2026-06-12 08:56:41,940.940 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 08:56:41,943.943 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 08:56:41,945.945 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 08:56:43,985.985 INFO    ] ================================================
[2026-06-12 08:56:44,001.001 INFO    ] Launching Daemon at Fri Jun 12 08:56:43 IST 2026
[2026-06-12 08:56:44,012.012 INFO    ] ================================================
[2026-06-12 08:56:44,337.337 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 08:56:44
[2026-06-12 08:56:44,654.654 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 08:56:44,805.805 INFO    ] Initializing speech engine...
[2026-06-12 08:56:44,811.811 INFO    ] 2026-06-12 08:56:44
[2026-06-12 08:56:45,020.020 INFO    ] 2026-06-12 08:56:45
[2026-06-12 08:56:45,049.049 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 08:56:45,235.235 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 08:56:45,239.239 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 08:56:45,378.378 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 08:56:45,446.446 INFO    ] time= 12/06/2026 08:56:45
[2026-06-12 08:56:45,470.470 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 08:56:45,477.477 INFO    ] Checking for existing commands in stream...
[2026-06-12 08:56:45,568.568 INFO    ] No existing commands found in stream
[2026-06-12 08:56:50,577.577 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 08:56:50,580.580 INFO    ] Waiting 2.26 seconds before fallback handling...
[2026-06-12 08:56:53,244.244 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 08:56:53,245.245 INFO    ] Checking for system updates...
[2026-06-12 08:56:53,266.266 INFO    ] 200
[2026-06-12 08:56:53,268.268 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:56:53,298.298 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 08:56:53,300.300 INFO    ] No update needed
[2026-06-12 08:56:53,301.301 INFO    ] Checking for camera pi updates...
[2026-06-12 08:56:53,322.322 INFO    ] 200
[2026-06-12 08:56:53,323.323 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:56:53,349.349 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 08:56:53,390.390 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 08:56:53,391.391 INFO    ] No camera update needed
[2026-06-12 08:56:53,393.393 INFO    ] Script finished. Safe exiting...
[2026-06-12 08:56:53,394.394 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 08:56:53,397.397 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 08:56:53,400.400 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 08:56:55,439.439 INFO    ] ================================================
[2026-06-12 08:56:55,454.454 INFO    ] Launching Daemon at Fri Jun 12 08:56:55 IST 2026
[2026-06-12 08:56:55,464.464 INFO    ] ================================================
[2026-06-12 08:56:55,811.811 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 08:56:55
[2026-06-12 08:56:56,146.146 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 08:56:56,297.297 INFO    ] Initializing speech engine...
[2026-06-12 08:56:56,305.305 INFO    ] 2026-06-12 08:56:56
[2026-06-12 08:56:56,506.506 INFO    ] 2026-06-12 08:56:56
[2026-06-12 08:56:56,535.535 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 08:56:56,718.718 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 08:56:56,728.728 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 08:56:56,872.872 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 08:56:56,925.925 INFO    ] time= 12/06/2026 08:56:56
[2026-06-12 08:56:56,948.948 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 08:56:56,954.954 INFO    ] Checking for existing commands in stream...
[2026-06-12 08:56:57,021.021 INFO    ] No existing commands found in stream
[2026-06-12 08:57:02,052.052 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 08:57:02,054.054 INFO    ] Waiting 2.46 seconds before fallback handling...
[2026-06-12 08:57:04,884.884 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 08:57:04,886.886 INFO    ] Checking for system updates...
[2026-06-12 08:57:04,906.906 INFO    ] 200
[2026-06-12 08:57:04,908.908 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:57:04,940.940 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 08:57:04,942.942 INFO    ] No update needed
[2026-06-12 08:57:04,943.943 INFO    ] Checking for camera pi updates...
[2026-06-12 08:57:04,962.962 INFO    ] 200
[2026-06-12 08:57:04,964.964 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:57:04,988.988 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 08:57:05,037.037 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 08:57:05,038.038 INFO    ] No camera update needed
[2026-06-12 08:57:05,040.040 INFO    ] Script finished. Safe exiting...
[2026-06-12 08:57:05,041.041 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 08:57:05,044.044 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 08:57:05,047.047 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 08:57:07,085.085 INFO    ] ================================================
[2026-06-12 08:57:07,101.101 INFO    ] Launching Daemon at Fri Jun 12 08:57:07 IST 2026
[2026-06-12 08:57:07,112.112 INFO    ] ================================================
[2026-06-12 08:57:07,463.463 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 08:57:07
[2026-06-12 08:57:07,775.775 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 08:57:07,918.918 INFO    ] Initializing speech engine...
[2026-06-12 08:57:07,922.922 INFO    ] 2026-06-12 08:57:07
[2026-06-12 08:57:08,132.132 INFO    ] 2026-06-12 08:57:08
[2026-06-12 08:57:08,160.160 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 08:57:08,354.354 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 08:57:08,371.371 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 08:57:08,497.497 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 08:57:08,556.556 INFO    ] time= 12/06/2026 08:57:08
[2026-06-12 08:57:08,579.579 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 08:57:08,584.584 INFO    ] Checking for existing commands in stream...
[2026-06-12 08:57:08,652.652 INFO    ] No existing commands found in stream
[2026-06-12 08:57:13,666.666 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 08:57:13,669.669 INFO    ] Waiting 1.32 seconds before fallback handling...
[2026-06-12 08:57:15,389.389 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 08:57:15,391.391 INFO    ] Checking for system updates...
[2026-06-12 08:57:15,413.413 INFO    ] 200
[2026-06-12 08:57:15,414.414 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:57:15,446.446 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 08:57:15,447.447 INFO    ] No update needed
[2026-06-12 08:57:15,449.449 INFO    ] Checking for camera pi updates...
[2026-06-12 08:57:15,469.469 INFO    ] 200
[2026-06-12 08:57:15,471.471 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:57:15,495.495 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 08:57:15,537.537 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 08:57:15,538.538 INFO    ] No camera update needed
[2026-06-12 08:57:15,540.540 INFO    ] Script finished. Safe exiting...
[2026-06-12 08:57:15,541.541 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 08:57:15,544.544 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 08:57:15,547.547 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 08:57:17,585.585 INFO    ] ================================================
[2026-06-12 08:57:17,601.601 INFO    ] Launching Daemon at Fri Jun 12 08:57:17 IST 2026
[2026-06-12 08:57:17,612.612 INFO    ] ================================================
[2026-06-12 08:57:17,968.968 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 08:57:17
[2026-06-12 08:57:18,304.304 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 08:57:18,454.454 INFO    ] Initializing speech engine...
[2026-06-12 08:57:18,460.460 INFO    ] 2026-06-12 08:57:18
[2026-06-12 08:57:18,667.667 INFO    ] 2026-06-12 08:57:18
[2026-06-12 08:57:18,696.696 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 08:57:18,884.884 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 08:57:18,888.888 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 08:57:19,041.041 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 08:57:19,094.094 INFO    ] time= 12/06/2026 08:57:19
[2026-06-12 08:57:19,116.116 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 08:57:19,123.123 INFO    ] Checking for existing commands in stream...
[2026-06-12 08:57:19,185.185 INFO    ] No existing commands found in stream
[2026-06-12 08:57:24,194.194 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 08:57:24,198.198 INFO    ] Waiting 1.56 seconds before fallback handling...
[2026-06-12 08:57:26,186.186 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 08:57:26,188.188 INFO    ] Checking for system updates...
[2026-06-12 08:57:26,208.208 INFO    ] 200
[2026-06-12 08:57:26,210.210 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:57:26,243.243 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 08:57:26,244.244 INFO    ] No update needed
[2026-06-12 08:57:26,245.245 INFO    ] Checking for camera pi updates...
[2026-06-12 08:57:26,265.265 INFO    ] 200
[2026-06-12 08:57:26,266.266 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:57:26,291.291 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 08:57:26,330.330 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 08:57:26,331.331 INFO    ] No camera update needed
[2026-06-12 08:57:26,332.332 INFO    ] Script finished. Safe exiting...
[2026-06-12 08:57:26,334.334 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 08:57:26,336.336 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 08:57:26,339.339 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 08:57:28,377.377 INFO    ] ================================================
[2026-06-12 08:57:28,394.394 INFO    ] Launching Daemon at Fri Jun 12 08:57:28 IST 2026
[2026-06-12 08:57:28,404.404 INFO    ] ================================================
[2026-06-12 08:57:28,765.765 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 08:57:28
[2026-06-12 08:57:29,081.081 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 08:57:29,214.214 INFO    ] Initializing speech engine...
[2026-06-12 08:57:29,227.227 INFO    ] 2026-06-12 08:57:29
[2026-06-12 08:57:29,433.433 INFO    ] 2026-06-12 08:57:29
[2026-06-12 08:57:29,461.461 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 08:57:29,651.651 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 08:57:29,654.654 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 08:57:29,794.794 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 08:57:29,850.850 INFO    ] time= 12/06/2026 08:57:29
[2026-06-12 08:57:29,885.885 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 08:57:29,902.902 INFO    ] Checking for existing commands in stream...
[2026-06-12 08:57:30,020.020 INFO    ] No existing commands found in stream
[2026-06-12 08:57:35,033.033 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 08:57:35,036.036 INFO    ] Waiting 0.62 seconds before fallback handling...
[2026-06-12 08:57:36,063.063 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 08:57:36,065.065 INFO    ] Checking for system updates...
[2026-06-12 08:57:36,087.087 INFO    ] 200
[2026-06-12 08:57:36,088.088 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:57:36,118.118 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 08:57:36,120.120 INFO    ] No update needed
[2026-06-12 08:57:36,121.121 INFO    ] Checking for camera pi updates...
[2026-06-12 08:57:36,142.142 INFO    ] 200
[2026-06-12 08:57:36,143.143 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:57:36,166.166 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 08:57:36,204.204 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 08:57:36,205.205 INFO    ] No camera update needed
[2026-06-12 08:57:36,206.206 INFO    ] Script finished. Safe exiting...
[2026-06-12 08:57:36,208.208 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 08:57:36,211.211 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 08:57:36,214.214 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 08:57:38,252.252 INFO    ] ================================================
[2026-06-12 08:57:38,267.267 INFO    ] Launching Daemon at Fri Jun 12 08:57:38 IST 2026
[2026-06-12 08:57:38,278.278 INFO    ] ================================================
[2026-06-12 08:57:38,619.619 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 08:57:38
[2026-06-12 08:57:38,936.936 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 08:57:39,080.080 INFO    ] Initializing speech engine...
[2026-06-12 08:57:39,084.084 INFO    ] 2026-06-12 08:57:39
[2026-06-12 08:57:39,288.288 INFO    ] 2026-06-12 08:57:39
[2026-06-12 08:57:39,318.318 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 08:57:39,502.502 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 08:57:39,512.512 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 08:57:39,650.650 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 08:57:39,707.707 INFO    ] time= 12/06/2026 08:57:39
[2026-06-12 08:57:39,731.731 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 08:57:39,737.737 INFO    ] Checking for existing commands in stream...
[2026-06-12 08:57:39,804.804 INFO    ] No existing commands found in stream
[2026-06-12 08:57:44,818.818 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 08:57:44,821.821 INFO    ] Waiting 1.86 seconds before fallback handling...
[2026-06-12 08:57:47,060.060 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 08:57:47,061.061 INFO    ] Checking for system updates...
[2026-06-12 08:57:47,083.083 INFO    ] 200
[2026-06-12 08:57:47,084.084 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:57:47,116.116 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 08:57:47,118.118 INFO    ] No update needed
[2026-06-12 08:57:47,119.119 INFO    ] Checking for camera pi updates...
[2026-06-12 08:57:47,139.139 INFO    ] 200
[2026-06-12 08:57:47,141.141 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:57:47,165.165 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 08:57:47,201.201 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 08:57:47,203.203 INFO    ] No camera update needed
[2026-06-12 08:57:47,204.204 INFO    ] Script finished. Safe exiting...
[2026-06-12 08:57:47,205.205 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 08:57:47,208.208 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 08:57:47,211.211 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 08:57:49,256.256 INFO    ] ================================================
[2026-06-12 08:57:49,272.272 INFO    ] Launching Daemon at Fri Jun 12 08:57:49 IST 2026
[2026-06-12 08:57:49,283.283 INFO    ] ================================================
[2026-06-12 08:57:49,649.649 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 08:57:49
[2026-06-12 08:57:49,962.962 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 08:57:50,092.092 INFO    ] Initializing speech engine...
[2026-06-12 08:57:50,097.097 INFO    ] 2026-06-12 08:57:50
[2026-06-12 08:57:50,315.315 INFO    ] 2026-06-12 08:57:50
[2026-06-12 08:57:50,345.345 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 08:57:50,532.532 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 08:57:50,540.540 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 08:57:50,677.677 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 08:57:50,740.740 INFO    ] time= 12/06/2026 08:57:50
[2026-06-12 08:57:50,764.764 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 08:57:50,771.771 INFO    ] Checking for existing commands in stream...
[2026-06-12 08:57:50,838.838 INFO    ] No existing commands found in stream
[2026-06-12 08:57:55,847.847 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 08:57:55,850.850 INFO    ] Waiting 1.81 seconds before fallback handling...
[2026-06-12 08:57:57,999.999 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 08:57:58,001.001 INFO    ] Checking for system updates...
[2026-06-12 08:57:58,022.022 INFO    ] 200
[2026-06-12 08:57:58,023.023 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:57:58,055.055 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 08:57:58,056.056 INFO    ] No update needed
[2026-06-12 08:57:58,058.058 INFO    ] Checking for camera pi updates...
[2026-06-12 08:57:58,078.078 INFO    ] 200
[2026-06-12 08:57:58,079.079 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:57:58,102.102 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 08:57:58,143.143 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 08:57:58,144.144 INFO    ] No camera update needed
[2026-06-12 08:57:58,145.145 INFO    ] Script finished. Safe exiting...
[2026-06-12 08:57:58,147.147 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 08:57:58,149.149 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 08:57:58,152.152 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 08:58:00,191.191 INFO    ] ================================================
[2026-06-12 08:58:00,206.206 INFO    ] Launching Daemon at Fri Jun 12 08:58:00 IST 2026
[2026-06-12 08:58:00,217.217 INFO    ] ================================================
[2026-06-12 08:58:00,552.552 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 08:58:00
[2026-06-12 08:58:00,873.873 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 08:58:01,007.007 INFO    ] Initializing speech engine...
[2026-06-12 08:58:01,012.012 INFO    ] 2026-06-12 08:58:01
[2026-06-12 08:58:01,253.253 INFO    ] 2026-06-12 08:58:01
[2026-06-12 08:58:01,317.317 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 08:58:01,480.480 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 08:58:01,498.498 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 08:58:01,649.649 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 08:58:01,656.656 INFO    ] time= 12/06/2026 08:58:01
[2026-06-12 08:58:01,665.665 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 08:58:01,725.725 INFO    ] Checking for existing commands in stream...
[2026-06-12 08:58:01,869.869 INFO    ] No existing commands found in stream
[2026-06-12 08:58:06,902.902 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 08:58:06,904.904 INFO    ] Waiting 3.77 seconds before fallback handling...
[2026-06-12 08:58:11,031.031 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 08:58:11,032.032 INFO    ] Checking for system updates...
[2026-06-12 08:58:11,052.052 INFO    ] 200
[2026-06-12 08:58:11,054.054 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:58:11,086.086 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 08:58:11,087.087 INFO    ] No update needed
[2026-06-12 08:58:11,089.089 INFO    ] Checking for camera pi updates...
[2026-06-12 08:58:11,108.108 INFO    ] 200
[2026-06-12 08:58:11,109.109 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:58:11,134.134 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 08:58:11,158.158 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 08:58:11,160.160 INFO    ] No camera update needed
[2026-06-12 08:58:11,161.161 INFO    ] Script finished. Safe exiting...
[2026-06-12 08:58:11,162.162 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 08:58:11,165.165 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 08:58:11,168.168 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 08:58:13,209.209 INFO    ] ================================================
[2026-06-12 08:58:13,225.225 INFO    ] Launching Daemon at Fri Jun 12 08:58:13 IST 2026
[2026-06-12 08:58:13,236.236 INFO    ] ================================================
[2026-06-12 08:58:13,603.603 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 08:58:13
[2026-06-12 08:58:13,914.914 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 08:58:14,045.045 INFO    ] Initializing speech engine...
[2026-06-12 08:58:14,053.053 INFO    ] 2026-06-12 08:58:14
[2026-06-12 08:58:14,266.266 INFO    ] 2026-06-12 08:58:14
[2026-06-12 08:58:14,295.295 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 08:58:14,482.482 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 08:58:14,491.491 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 08:58:14,637.637 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 08:58:14,691.691 INFO    ] time= 12/06/2026 08:58:14
[2026-06-12 08:58:14,714.714 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 08:58:14,720.720 INFO    ] Checking for existing commands in stream...
[2026-06-12 08:58:14,787.787 INFO    ] No existing commands found in stream
[2026-06-12 08:58:19,796.796 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 08:58:19,799.799 INFO    ] Waiting 3.16 seconds before fallback handling...
[2026-06-12 08:58:23,341.341 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 08:58:23,342.342 INFO    ] Checking for system updates...
[2026-06-12 08:58:23,364.364 INFO    ] 200
[2026-06-12 08:58:23,366.366 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:58:23,401.401 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 08:58:23,402.402 INFO    ] No update needed
[2026-06-12 08:58:23,403.403 INFO    ] Checking for camera pi updates...
[2026-06-12 08:58:23,426.426 INFO    ] 200
[2026-06-12 08:58:23,428.428 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:58:23,455.455 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 08:58:23,502.502 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 08:58:23,503.503 INFO    ] No camera update needed
[2026-06-12 08:58:23,505.505 INFO    ] Script finished. Safe exiting...
[2026-06-12 08:58:23,506.506 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 08:58:23,509.509 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 08:58:23,513.513 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 08:58:25,552.552 INFO    ] ================================================
[2026-06-12 08:58:25,568.568 INFO    ] Launching Daemon at Fri Jun 12 08:58:25 IST 2026
[2026-06-12 08:58:25,580.580 INFO    ] ================================================
[2026-06-12 08:58:25,933.933 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 08:58:25
[2026-06-12 08:58:26,248.248 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 08:58:26,385.385 INFO    ] Initializing speech engine...
[2026-06-12 08:58:26,395.395 INFO    ] 2026-06-12 08:58:26
[2026-06-12 08:58:26,599.599 INFO    ] 2026-06-12 08:58:26
[2026-06-12 08:58:26,627.627 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 08:58:26,811.811 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 08:58:26,819.819 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 08:58:26,944.944 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 08:58:27,006.006 INFO    ] time= 12/06/2026 08:58:26
[2026-06-12 08:58:27,038.038 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 08:58:27,044.044 INFO    ] Checking for existing commands in stream...
[2026-06-12 08:58:27,134.134 INFO    ] No existing commands found in stream
[2026-06-12 08:58:32,143.143 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 08:58:32,146.146 INFO    ] Waiting 3.16 seconds before fallback handling...
[2026-06-12 08:58:35,717.717 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 08:58:35,718.718 INFO    ] Checking for system updates...
[2026-06-12 08:58:35,740.740 INFO    ] 200
[2026-06-12 08:58:35,741.741 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:58:35,774.774 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 08:58:35,775.775 INFO    ] No update needed
[2026-06-12 08:58:35,776.776 INFO    ] Checking for camera pi updates...
[2026-06-12 08:58:35,795.795 INFO    ] 200
[2026-06-12 08:58:35,797.797 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:58:35,822.822 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 08:58:35,854.854 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 08:58:35,856.856 INFO    ] No camera update needed
[2026-06-12 08:58:35,857.857 INFO    ] Script finished. Safe exiting...
[2026-06-12 08:58:35,858.858 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 08:58:35,861.861 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 08:58:35,864.864 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 08:58:37,904.904 INFO    ] ================================================
[2026-06-12 08:58:37,920.920 INFO    ] Launching Daemon at Fri Jun 12 08:58:37 IST 2026
[2026-06-12 08:58:37,931.931 INFO    ] ================================================
[2026-06-12 08:58:38,256.256 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 08:58:38
[2026-06-12 08:58:38,575.575 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 08:58:38,712.712 INFO    ] Initializing speech engine...
[2026-06-12 08:58:38,726.726 INFO    ] 2026-06-12 08:58:38
[2026-06-12 08:58:38,944.944 INFO    ] 2026-06-12 08:58:38
[2026-06-12 08:58:38,974.974 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 08:58:39,171.171 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 08:58:39,174.174 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 08:58:39,319.319 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 08:58:39,374.374 INFO    ] time= 12/06/2026 08:58:39
[2026-06-12 08:58:39,417.417 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 08:58:39,420.420 INFO    ] Checking for existing commands in stream...
[2026-06-12 08:58:39,496.496 INFO    ] No existing commands found in stream
[2026-06-12 08:58:44,505.505 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 08:58:44,508.508 INFO    ] Waiting 1.95 seconds before fallback handling...
[2026-06-12 08:58:46,852.852 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 08:58:46,854.854 INFO    ] Checking for system updates...
[2026-06-12 08:58:46,875.875 INFO    ] 200
[2026-06-12 08:58:46,877.877 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:58:46,906.906 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 08:58:46,908.908 INFO    ] No update needed
[2026-06-12 08:58:46,909.909 INFO    ] Checking for camera pi updates...
[2026-06-12 08:58:46,930.930 INFO    ] 200
[2026-06-12 08:58:46,931.931 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:58:46,954.954 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 08:58:47,094.094 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 08:58:47,096.096 INFO    ] No camera update needed
[2026-06-12 08:58:47,097.097 INFO    ] Script finished. Safe exiting...
[2026-06-12 08:58:47,098.098 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 08:58:47,101.101 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 08:58:47,104.104 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 08:58:49,143.143 INFO    ] ================================================
[2026-06-12 08:58:49,159.159 INFO    ] Launching Daemon at Fri Jun 12 08:58:49 IST 2026
[2026-06-12 08:58:49,170.170 INFO    ] ================================================
[2026-06-12 08:58:49,510.510 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 08:58:49
[2026-06-12 08:58:49,830.830 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 08:58:49,966.966 INFO    ] Initializing speech engine...
[2026-06-12 08:58:49,970.970 INFO    ] 2026-06-12 08:58:49
[2026-06-12 08:58:50,201.201 INFO    ] 2026-06-12 08:58:50
[2026-06-12 08:58:50,232.232 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 08:58:50,427.427 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 08:58:50,434.434 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 08:58:50,573.573 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 08:58:50,629.629 INFO    ] time= 12/06/2026 08:58:50
[2026-06-12 08:58:50,658.658 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 08:58:50,681.681 INFO    ] Checking for existing commands in stream...
[2026-06-12 08:58:50,756.756 INFO    ] No existing commands found in stream
[2026-06-12 08:58:55,766.766 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 08:58:55,769.769 INFO    ] Waiting 0.35 seconds before fallback handling...
[2026-06-12 08:58:56,492.492 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 08:58:56,494.494 INFO    ] Checking for system updates...
[2026-06-12 08:58:56,516.516 INFO    ] 200
[2026-06-12 08:58:56,517.517 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:58:56,551.551 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 08:58:56,553.553 INFO    ] No update needed
[2026-06-12 08:58:56,554.554 INFO    ] Checking for camera pi updates...
[2026-06-12 08:58:56,577.577 INFO    ] 200
[2026-06-12 08:58:56,579.579 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:58:56,604.604 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 08:58:56,641.641 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 08:58:56,643.643 INFO    ] No camera update needed
[2026-06-12 08:58:56,644.644 INFO    ] Script finished. Safe exiting...
[2026-06-12 08:58:56,646.646 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 08:58:56,649.649 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 08:58:56,652.652 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 08:58:58,692.692 INFO    ] ================================================
[2026-06-12 08:58:58,707.707 INFO    ] Launching Daemon at Fri Jun 12 08:58:58 IST 2026
[2026-06-12 08:58:58,718.718 INFO    ] ================================================
[2026-06-12 08:58:59,106.106 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 08:58:59
[2026-06-12 08:58:59,441.441 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 08:58:59,593.593 INFO    ] Initializing speech engine...
[2026-06-12 08:58:59,599.599 INFO    ] 2026-06-12 08:58:59
[2026-06-12 08:58:59,805.805 INFO    ] 2026-06-12 08:58:59
[2026-06-12 08:58:59,833.833 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 08:59:00,019.019 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 08:59:00,029.029 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 08:59:00,174.174 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 08:59:00,227.227 INFO    ] time= 12/06/2026 08:59:00
[2026-06-12 08:59:00,255.255 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 08:59:00,257.257 INFO    ] Checking for existing commands in stream...
[2026-06-12 08:59:00,323.323 INFO    ] No existing commands found in stream
[2026-06-12 08:59:05,338.338 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 08:59:05,341.341 INFO    ] Waiting 0.63 seconds before fallback handling...
[2026-06-12 08:59:06,377.377 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 08:59:06,378.378 INFO    ] Checking for system updates...
[2026-06-12 08:59:06,401.401 INFO    ] 200
[2026-06-12 08:59:06,402.402 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:59:06,435.435 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 08:59:06,436.436 INFO    ] No update needed
[2026-06-12 08:59:06,438.438 INFO    ] Checking for camera pi updates...
[2026-06-12 08:59:06,461.461 INFO    ] 200
[2026-06-12 08:59:06,462.462 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:59:06,488.488 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 08:59:06,529.529 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 08:59:06,531.531 INFO    ] No camera update needed
[2026-06-12 08:59:06,532.532 INFO    ] Script finished. Safe exiting...
[2026-06-12 08:59:06,533.533 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 08:59:06,536.536 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 08:59:06,539.539 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 08:59:08,578.578 INFO    ] ================================================
[2026-06-12 08:59:08,594.594 INFO    ] Launching Daemon at Fri Jun 12 08:59:08 IST 2026
[2026-06-12 08:59:08,606.606 INFO    ] ================================================
[2026-06-12 08:59:08,973.973 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 08:59:08
[2026-06-12 08:59:09,283.283 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 08:59:09,413.413 INFO    ] Initializing speech engine...
[2026-06-12 08:59:09,422.422 INFO    ] 2026-06-12 08:59:09
[2026-06-12 08:59:09,634.634 INFO    ] 2026-06-12 08:59:09
[2026-06-12 08:59:09,663.663 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 08:59:09,848.848 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 08:59:09,857.857 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 08:59:10,002.002 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 08:59:10,056.056 INFO    ] time= 12/06/2026 08:59:10
[2026-06-12 08:59:10,078.078 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 08:59:10,085.085 INFO    ] Checking for existing commands in stream...
[2026-06-12 08:59:10,152.152 INFO    ] No existing commands found in stream
[2026-06-12 08:59:15,166.166 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 08:59:15,168.168 INFO    ] Waiting 3.37 seconds before fallback handling...
[2026-06-12 08:59:18,933.933 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 08:59:18,934.934 INFO    ] Checking for system updates...
[2026-06-12 08:59:18,955.955 INFO    ] 200
[2026-06-12 08:59:18,957.957 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:59:18,989.989 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 08:59:18,991.991 INFO    ] No update needed
[2026-06-12 08:59:18,992.992 INFO    ] Checking for camera pi updates...
[2026-06-12 08:59:19,014.014 INFO    ] 200
[2026-06-12 08:59:19,015.015 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:59:19,041.041 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 08:59:19,075.075 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 08:59:19,076.076 INFO    ] No camera update needed
[2026-06-12 08:59:19,078.078 INFO    ] Script finished. Safe exiting...
[2026-06-12 08:59:19,079.079 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 08:59:19,082.082 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 08:59:19,085.085 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 08:59:21,125.125 INFO    ] ================================================
[2026-06-12 08:59:21,141.141 INFO    ] Launching Daemon at Fri Jun 12 08:59:21 IST 2026
[2026-06-12 08:59:21,152.152 INFO    ] ================================================
[2026-06-12 08:59:21,504.504 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 08:59:21
[2026-06-12 08:59:21,816.816 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 08:59:21,964.964 INFO    ] Initializing speech engine...
[2026-06-12 08:59:21,969.969 INFO    ] 2026-06-12 08:59:21
[2026-06-12 08:59:22,183.183 INFO    ] 2026-06-12 08:59:22
[2026-06-12 08:59:22,214.214 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 08:59:22,409.409 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 08:59:22,420.420 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 08:59:22,551.551 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 08:59:22,602.602 INFO    ] time= 12/06/2026 08:59:22
[2026-06-12 08:59:22,641.641 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 08:59:22,658.658 INFO    ] Checking for existing commands in stream...
[2026-06-12 08:59:22,734.734 INFO    ] No existing commands found in stream
[2026-06-12 08:59:27,748.748 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 08:59:27,751.751 INFO    ] Waiting 2.08 seconds before fallback handling...
[2026-06-12 08:59:30,208.208 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 08:59:30,209.209 INFO    ] Checking for system updates...
[2026-06-12 08:59:30,231.231 INFO    ] 200
[2026-06-12 08:59:30,232.232 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:59:30,262.262 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 08:59:30,265.265 INFO    ] No update needed
[2026-06-12 08:59:30,269.269 INFO    ] Checking for camera pi updates...
[2026-06-12 08:59:30,294.294 INFO    ] 200
[2026-06-12 08:59:30,296.296 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:59:30,320.320 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 08:59:30,366.366 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 08:59:30,367.367 INFO    ] No camera update needed
[2026-06-12 08:59:30,368.368 INFO    ] Script finished. Safe exiting...
[2026-06-12 08:59:30,370.370 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 08:59:30,373.373 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 08:59:30,376.376 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 08:59:32,413.413 INFO    ] ================================================
[2026-06-12 08:59:32,429.429 INFO    ] Launching Daemon at Fri Jun 12 08:59:32 IST 2026
[2026-06-12 08:59:32,440.440 INFO    ] ================================================
[2026-06-12 08:59:32,771.771 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 08:59:32
[2026-06-12 08:59:33,088.088 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 08:59:33,231.231 INFO    ] Initializing speech engine...
[2026-06-12 08:59:33,236.236 INFO    ] 2026-06-12 08:59:33
[2026-06-12 08:59:33,439.439 INFO    ] 2026-06-12 08:59:33
[2026-06-12 08:59:33,468.468 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 08:59:33,654.654 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 08:59:33,663.663 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 08:59:33,839.839 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 08:59:33,873.873 INFO    ] time= 12/06/2026 08:59:33
[2026-06-12 08:59:33,875.875 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 08:59:33,876.876 INFO    ] Checking for existing commands in stream...
[2026-06-12 08:59:33,949.949 INFO    ] No existing commands found in stream
[2026-06-12 08:59:38,962.962 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 08:59:38,965.965 INFO    ] Waiting 1.41 seconds before fallback handling...
[2026-06-12 08:59:40,766.766 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 08:59:40,767.767 INFO    ] Checking for system updates...
[2026-06-12 08:59:40,788.788 INFO    ] 200
[2026-06-12 08:59:40,789.789 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:59:40,821.821 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 08:59:40,822.822 INFO    ] No update needed
[2026-06-12 08:59:40,823.823 INFO    ] Checking for camera pi updates...
[2026-06-12 08:59:40,843.843 INFO    ] 200
[2026-06-12 08:59:40,845.845 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:59:40,869.869 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 08:59:40,916.916 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 08:59:40,918.918 INFO    ] No camera update needed
[2026-06-12 08:59:40,919.919 INFO    ] Script finished. Safe exiting...
[2026-06-12 08:59:40,920.920 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 08:59:40,923.923 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 08:59:40,926.926 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 08:59:42,965.965 INFO    ] ================================================
[2026-06-12 08:59:42,981.981 INFO    ] Launching Daemon at Fri Jun 12 08:59:42 IST 2026
[2026-06-12 08:59:42,992.992 INFO    ] ================================================
[2026-06-12 08:59:43,317.317 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 08:59:43
[2026-06-12 08:59:43,629.629 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 08:59:43,759.759 INFO    ] Initializing speech engine...
[2026-06-12 08:59:43,764.764 INFO    ] 2026-06-12 08:59:43
[2026-06-12 08:59:43,981.981 INFO    ] 2026-06-12 08:59:43
[2026-06-12 08:59:44,011.011 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 08:59:44,196.196 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 08:59:44,206.206 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 08:59:44,332.332 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 08:59:44,394.394 INFO    ] time= 12/06/2026 08:59:44
[2026-06-12 08:59:44,427.427 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 08:59:44,429.429 INFO    ] Checking for existing commands in stream...
[2026-06-12 08:59:44,525.525 INFO    ] No existing commands found in stream
[2026-06-12 08:59:49,539.539 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 08:59:49,542.542 INFO    ] Waiting 2.37 seconds before fallback handling...
[2026-06-12 08:59:52,281.281 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 08:59:52,282.282 INFO    ] Checking for system updates...
[2026-06-12 08:59:52,303.303 INFO    ] 200
[2026-06-12 08:59:52,304.304 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:59:52,334.334 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 08:59:52,336.336 INFO    ] No update needed
[2026-06-12 08:59:52,337.337 INFO    ] Checking for camera pi updates...
[2026-06-12 08:59:52,358.358 INFO    ] 200
[2026-06-12 08:59:52,359.359 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 08:59:52,385.385 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 08:59:52,423.423 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 08:59:52,425.425 INFO    ] No camera update needed
[2026-06-12 08:59:52,426.426 INFO    ] Script finished. Safe exiting...
[2026-06-12 08:59:52,427.427 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 08:59:52,431.431 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 08:59:52,434.434 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 08:59:54,472.472 INFO    ] ================================================
[2026-06-12 08:59:54,488.488 INFO    ] Launching Daemon at Fri Jun 12 08:59:54 IST 2026
[2026-06-12 08:59:54,499.499 INFO    ] ================================================
[2026-06-12 08:59:54,861.861 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 08:59:54
[2026-06-12 08:59:55,176.176 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 08:59:55,313.313 INFO    ] Initializing speech engine...
[2026-06-12 08:59:55,325.325 INFO    ] 2026-06-12 08:59:55
[2026-06-12 08:59:55,546.546 INFO    ] 2026-06-12 08:59:55
[2026-06-12 08:59:55,575.575 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 08:59:55,769.769 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 08:59:55,773.773 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 08:59:55,911.911 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 08:59:55,963.963 INFO    ] time= 12/06/2026 08:59:55
[2026-06-12 08:59:56,000.000 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 08:59:56,018.018 INFO    ] Checking for existing commands in stream...
[2026-06-12 08:59:56,091.091 INFO    ] No existing commands found in stream
[2026-06-12 09:00:01,102.102 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 09:00:01,105.105 INFO    ] Waiting 0.90 seconds before fallback handling...
[2026-06-12 09:00:02,634.634 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 09:00:02,636.636 INFO    ] Checking for system updates...
[2026-06-12 09:00:02,723.723 INFO    ] 200
[2026-06-12 09:00:02,725.725 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:00:02,962.962 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 09:00:02,964.964 INFO    ] No update needed
[2026-06-12 09:00:02,966.966 INFO    ] Checking for camera pi updates...
[2026-06-12 09:00:03,062.062 INFO    ] 200
[2026-06-12 09:00:03,064.064 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:00:03,216.216 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 09:00:03,364.364 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 09:00:03,367.367 INFO    ] No camera update needed
[2026-06-12 09:00:03,369.369 INFO    ] Script finished. Safe exiting...
[2026-06-12 09:00:03,374.374 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 09:00:03,379.379 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 09:00:03,394.394 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 09:00:05,429.429 INFO    ] ================================================
[2026-06-12 09:00:05,445.445 INFO    ] Launching Daemon at Fri Jun 12 09:00:05 IST 2026
[2026-06-12 09:00:05,456.456 INFO    ] ================================================
[2026-06-12 09:00:05,790.790 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 09:00:05
[2026-06-12 09:00:06,102.102 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 09:00:06,245.245 INFO    ] Initializing speech engine...
[2026-06-12 09:00:06,251.251 INFO    ] 2026-06-12 09:00:06
[2026-06-12 09:00:06,460.460 INFO    ] 2026-06-12 09:00:06
[2026-06-12 09:00:06,489.489 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 09:00:06,613.613 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 09:00:06,678.678 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 09:00:06,818.818 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 09:00:06,887.887 INFO    ] time= 12/06/2026 09:00:06
[2026-06-12 09:00:06,912.912 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 09:00:06,918.918 INFO    ] Checking for existing commands in stream...
[2026-06-12 09:00:06,987.987 INFO    ] No existing commands found in stream
[2026-06-12 09:00:11,995.995 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 09:00:11,998.998 INFO    ] Waiting 0.07 seconds before fallback handling...
[2026-06-12 09:00:12,406.406 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 09:00:12,407.407 INFO    ] Checking for system updates...
[2026-06-12 09:00:12,429.429 INFO    ] 200
[2026-06-12 09:00:12,431.431 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:00:12,462.462 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 09:00:12,463.463 INFO    ] No update needed
[2026-06-12 09:00:12,464.464 INFO    ] Checking for camera pi updates...
[2026-06-12 09:00:12,484.484 INFO    ] 200
[2026-06-12 09:00:12,485.485 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:00:12,508.508 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 09:00:12,556.556 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 09:00:12,557.557 INFO    ] No camera update needed
[2026-06-12 09:00:12,558.558 INFO    ] Script finished. Safe exiting...
[2026-06-12 09:00:12,559.559 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 09:00:12,563.563 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 09:00:12,565.565 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 09:00:14,606.606 INFO    ] ================================================
[2026-06-12 09:00:14,621.621 INFO    ] Launching Daemon at Fri Jun 12 09:00:14 IST 2026
[2026-06-12 09:00:14,631.631 INFO    ] ================================================
[2026-06-12 09:00:14,999.999 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 09:00:14
[2026-06-12 09:00:15,317.317 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 09:00:15,462.462 INFO    ] Initializing speech engine...
[2026-06-12 09:00:15,468.468 INFO    ] 2026-06-12 09:00:15
[2026-06-12 09:00:15,656.656 INFO    ] 2026-06-12 09:00:15
[2026-06-12 09:00:15,686.686 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 09:00:15,892.892 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 09:00:15,901.901 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 09:00:16,008.008 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 09:00:16,030.030 INFO    ] time= 12/06/2026 09:00:16
[2026-06-12 09:00:16,071.071 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 09:00:16,115.115 INFO    ] Checking for existing commands in stream...
[2026-06-12 09:00:16,226.226 INFO    ] No existing commands found in stream
[2026-06-12 09:00:21,239.239 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 09:00:21,242.242 INFO    ] Waiting 2.81 seconds before fallback handling...
[2026-06-12 09:00:24,472.472 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 09:00:24,473.473 INFO    ] Checking for system updates...
[2026-06-12 09:00:24,493.493 INFO    ] 200
[2026-06-12 09:00:24,495.495 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:00:24,525.525 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 09:00:24,526.526 INFO    ] No update needed
[2026-06-12 09:00:24,527.527 INFO    ] Checking for camera pi updates...
[2026-06-12 09:00:24,547.547 INFO    ] 200
[2026-06-12 09:00:24,548.548 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:00:24,576.576 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 09:00:24,611.611 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 09:00:24,613.613 INFO    ] No camera update needed
[2026-06-12 09:00:24,614.614 INFO    ] Script finished. Safe exiting...
[2026-06-12 09:00:24,615.615 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 09:00:24,618.618 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 09:00:24,621.621 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 09:00:26,659.659 INFO    ] ================================================
[2026-06-12 09:00:26,675.675 INFO    ] Launching Daemon at Fri Jun 12 09:00:26 IST 2026
[2026-06-12 09:00:26,685.685 INFO    ] ================================================
[2026-06-12 09:00:27,021.021 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 09:00:27
[2026-06-12 09:00:27,337.337 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 09:00:27,476.476 INFO    ] Initializing speech engine...
[2026-06-12 09:00:27,487.487 INFO    ] 2026-06-12 09:00:27
[2026-06-12 09:00:27,691.691 INFO    ] 2026-06-12 09:00:27
[2026-06-12 09:00:27,719.719 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 09:00:27,901.901 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 09:00:27,905.905 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 09:00:28,091.091 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 09:00:28,128.128 INFO    ] time= 12/06/2026 09:00:28
[2026-06-12 09:00:28,130.130 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 09:00:28,136.136 INFO    ] Checking for existing commands in stream...
[2026-06-12 09:00:28,202.202 INFO    ] No existing commands found in stream
[2026-06-12 09:00:33,215.215 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 09:00:33,217.217 INFO    ] Waiting 2.56 seconds before fallback handling...
[2026-06-12 09:00:36,174.174 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 09:00:36,176.176 INFO    ] Checking for system updates...
[2026-06-12 09:00:36,196.196 INFO    ] 200
[2026-06-12 09:00:36,197.197 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:00:36,232.232 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 09:00:36,233.233 INFO    ] No update needed
[2026-06-12 09:00:36,234.234 INFO    ] Checking for camera pi updates...
[2026-06-12 09:00:36,254.254 INFO    ] 200
[2026-06-12 09:00:36,255.255 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:00:36,278.278 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 09:00:36,316.316 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 09:00:36,318.318 INFO    ] No camera update needed
[2026-06-12 09:00:36,319.319 INFO    ] Script finished. Safe exiting...
[2026-06-12 09:00:36,320.320 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 09:00:36,323.323 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 09:00:36,326.326 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 09:00:38,366.366 INFO    ] ================================================
[2026-06-12 09:00:38,381.381 INFO    ] Launching Daemon at Fri Jun 12 09:00:38 IST 2026
[2026-06-12 09:00:38,393.393 INFO    ] ================================================
[2026-06-12 09:00:38,744.744 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 09:00:38
[2026-06-12 09:00:39,056.056 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 09:00:39,190.190 INFO    ] Initializing speech engine...
[2026-06-12 09:00:39,199.199 INFO    ] 2026-06-12 09:00:39
[2026-06-12 09:00:39,421.421 INFO    ] 2026-06-12 09:00:39
[2026-06-12 09:00:39,451.451 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 09:00:39,649.649 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 09:00:39,652.652 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 09:00:39,791.791 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 09:00:39,842.842 INFO    ] time= 12/06/2026 09:00:39
[2026-06-12 09:00:39,887.887 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 09:00:39,900.900 INFO    ] Checking for existing commands in stream...
[2026-06-12 09:00:39,977.977 INFO    ] No existing commands found in stream
[2026-06-12 09:00:44,991.991 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 09:00:44,994.994 INFO    ] Waiting 3.52 seconds before fallback handling...
[2026-06-12 09:00:48,872.872 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 09:00:48,873.873 INFO    ] Checking for system updates...
[2026-06-12 09:00:48,895.895 INFO    ] 200
[2026-06-12 09:00:48,897.897 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:00:48,929.929 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 09:00:48,930.930 INFO    ] No update needed
[2026-06-12 09:00:48,932.932 INFO    ] Checking for camera pi updates...
[2026-06-12 09:00:48,951.951 INFO    ] 200
[2026-06-12 09:00:48,952.952 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:00:48,975.975 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 09:00:49,120.120 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 09:00:49,122.122 INFO    ] No camera update needed
[2026-06-12 09:00:49,123.123 INFO    ] Script finished. Safe exiting...
[2026-06-12 09:00:49,124.124 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 09:00:49,127.127 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 09:00:49,130.130 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 09:00:51,168.168 INFO    ] ================================================
[2026-06-12 09:00:51,183.183 INFO    ] Launching Daemon at Fri Jun 12 09:00:51 IST 2026
[2026-06-12 09:00:51,193.193 INFO    ] ================================================
[2026-06-12 09:00:51,547.547 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 09:00:51
[2026-06-12 09:00:51,858.858 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 09:00:52,002.002 INFO    ] Initializing speech engine...
[2026-06-12 09:00:52,006.006 INFO    ] 2026-06-12 09:00:52
[2026-06-12 09:00:52,212.212 INFO    ] 2026-06-12 09:00:52
[2026-06-12 09:00:52,241.241 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 09:00:52,425.425 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 09:00:52,429.429 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 09:00:52,583.583 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 09:00:52,636.636 INFO    ] time= 12/06/2026 09:00:52
[2026-06-12 09:00:52,659.659 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 09:00:52,665.665 INFO    ] Checking for existing commands in stream...
[2026-06-12 09:00:52,732.732 INFO    ] No existing commands found in stream
[2026-06-12 09:00:57,741.741 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 09:00:57,744.744 INFO    ] Waiting 1.99 seconds before fallback handling...
[2026-06-12 09:01:00,103.103 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 09:01:00,104.104 INFO    ] Checking for system updates...
[2026-06-12 09:01:00,125.125 INFO    ] 200
[2026-06-12 09:01:00,127.127 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:01:00,157.157 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 09:01:00,158.158 INFO    ] No update needed
[2026-06-12 09:01:00,159.159 INFO    ] Checking for camera pi updates...
[2026-06-12 09:01:00,179.179 INFO    ] 200
[2026-06-12 09:01:00,181.181 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:01:00,205.205 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 09:01:00,249.249 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 09:01:00,251.251 INFO    ] No camera update needed
[2026-06-12 09:01:00,252.252 INFO    ] Script finished. Safe exiting...
[2026-06-12 09:01:00,254.254 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 09:01:00,257.257 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 09:01:00,260.260 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 09:01:02,294.294 INFO    ] ================================================
[2026-06-12 09:01:02,305.305 INFO    ] Launching Daemon at Fri Jun 12 09:01:02 IST 2026
[2026-06-12 09:01:02,313.313 INFO    ] ================================================
[2026-06-12 09:01:02,701.701 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 09:01:02
[2026-06-12 09:01:03,045.045 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 09:01:03,197.197 INFO    ] Initializing speech engine...
[2026-06-12 09:01:03,201.201 INFO    ] 2026-06-12 09:01:03
[2026-06-12 09:01:03,406.406 INFO    ] 2026-06-12 09:01:03
[2026-06-12 09:01:03,436.436 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 09:01:03,575.575 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 09:01:03,624.624 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 09:01:03,762.762 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 09:01:03,821.821 INFO    ] time= 12/06/2026 09:01:03
[2026-06-12 09:01:03,854.854 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 09:01:03,861.861 INFO    ] Checking for existing commands in stream...
[2026-06-12 09:01:03,928.928 INFO    ] No existing commands found in stream
[2026-06-12 09:01:08,953.953 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 09:01:08,956.956 INFO    ] Waiting 0.04 seconds before fallback handling...
[2026-06-12 09:01:09,333.333 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 09:01:09,335.335 INFO    ] Checking for system updates...
[2026-06-12 09:01:09,356.356 INFO    ] 200
[2026-06-12 09:01:09,357.357 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:01:09,388.388 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 09:01:09,389.389 INFO    ] No update needed
[2026-06-12 09:01:09,391.391 INFO    ] Checking for camera pi updates...
[2026-06-12 09:01:09,411.411 INFO    ] 200
[2026-06-12 09:01:09,412.412 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:01:09,436.436 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 09:01:09,476.476 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 09:01:09,477.477 INFO    ] No camera update needed
[2026-06-12 09:01:09,479.479 INFO    ] Script finished. Safe exiting...
[2026-06-12 09:01:09,480.480 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 09:01:09,484.484 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 09:01:09,486.486 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 09:01:11,526.526 INFO    ] ================================================
[2026-06-12 09:01:11,542.542 INFO    ] Launching Daemon at Fri Jun 12 09:01:11 IST 2026
[2026-06-12 09:01:11,552.552 INFO    ] ================================================
[2026-06-12 09:01:11,919.919 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 09:01:11
[2026-06-12 09:01:12,235.235 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 09:01:12,378.378 INFO    ] Initializing speech engine...
[2026-06-12 09:01:12,383.383 INFO    ] 2026-06-12 09:01:12
[2026-06-12 09:01:12,589.589 INFO    ] 2026-06-12 09:01:12
[2026-06-12 09:01:12,617.617 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 09:01:12,740.740 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 09:01:12,802.802 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 09:01:12,932.932 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 09:01:12,993.993 INFO    ] time= 12/06/2026 09:01:12
[2026-06-12 09:01:13,030.030 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 09:01:13,032.032 INFO    ] Checking for existing commands in stream...
[2026-06-12 09:01:13,102.102 INFO    ] No existing commands found in stream
[2026-06-12 09:01:18,112.112 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 09:01:18,115.115 INFO    ] Waiting 1.10 seconds before fallback handling...
[2026-06-12 09:01:19,569.569 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 09:01:19,571.571 INFO    ] Checking for system updates...
[2026-06-12 09:01:19,592.592 INFO    ] 200
[2026-06-12 09:01:19,594.594 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:01:19,623.623 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 09:01:19,625.625 INFO    ] No update needed
[2026-06-12 09:01:19,626.626 INFO    ] Checking for camera pi updates...
[2026-06-12 09:01:19,645.645 INFO    ] 200
[2026-06-12 09:01:19,647.647 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:01:19,670.670 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 09:01:19,705.705 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 09:01:19,707.707 INFO    ] No camera update needed
[2026-06-12 09:01:19,709.709 INFO    ] Script finished. Safe exiting...
[2026-06-12 09:01:19,710.710 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 09:01:19,713.713 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 09:01:19,716.716 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 09:01:21,756.756 INFO    ] ================================================
[2026-06-12 09:01:21,772.772 INFO    ] Launching Daemon at Fri Jun 12 09:01:21 IST 2026
[2026-06-12 09:01:21,782.782 INFO    ] ================================================
[2026-06-12 09:01:22,108.108 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 09:01:22
[2026-06-12 09:01:22,426.426 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 09:01:22,570.570 INFO    ] Initializing speech engine...
[2026-06-12 09:01:22,575.575 INFO    ] 2026-06-12 09:01:22
[2026-06-12 09:01:22,779.779 INFO    ] 2026-06-12 09:01:22
[2026-06-12 09:01:22,809.809 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 09:01:22,994.994 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 09:01:23,004.004 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 09:01:23,127.127 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 09:01:23,189.189 INFO    ] time= 12/06/2026 09:01:23
[2026-06-12 09:01:23,226.226 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 09:01:23,233.233 INFO    ] Checking for existing commands in stream...
[2026-06-12 09:01:23,300.300 INFO    ] No existing commands found in stream
[2026-06-12 09:01:28,309.309 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 09:01:28,312.312 INFO    ] Waiting 0.98 seconds before fallback handling...
[2026-06-12 09:01:29,659.659 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 09:01:29,660.660 INFO    ] Checking for system updates...
[2026-06-12 09:01:29,681.681 INFO    ] 200
[2026-06-12 09:01:29,682.682 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:01:29,712.712 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 09:01:29,714.714 INFO    ] No update needed
[2026-06-12 09:01:29,715.715 INFO    ] Checking for camera pi updates...
[2026-06-12 09:01:29,735.735 INFO    ] 200
[2026-06-12 09:01:29,736.736 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:01:29,761.761 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 09:01:29,805.805 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 09:01:29,806.806 INFO    ] No camera update needed
[2026-06-12 09:01:29,807.807 INFO    ] Script finished. Safe exiting...
[2026-06-12 09:01:29,809.809 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 09:01:29,812.812 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 09:01:29,815.815 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 09:01:31,856.856 INFO    ] ================================================
[2026-06-12 09:01:31,873.873 INFO    ] Launching Daemon at Fri Jun 12 09:01:31 IST 2026
[2026-06-12 09:01:31,885.885 INFO    ] ================================================
[2026-06-12 09:01:32,243.243 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 09:01:32
[2026-06-12 09:01:32,583.583 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 09:01:32,718.718 INFO    ] Initializing speech engine...
[2026-06-12 09:01:32,726.726 INFO    ] 2026-06-12 09:01:32
[2026-06-12 09:01:32,936.936 INFO    ] 2026-06-12 09:01:32
[2026-06-12 09:01:32,966.966 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 09:01:33,133.133 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 09:01:33,159.159 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 09:01:33,290.290 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 09:01:33,351.351 INFO    ] time= 12/06/2026 09:01:33
[2026-06-12 09:01:33,391.391 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 09:01:33,398.398 INFO    ] Checking for existing commands in stream...
[2026-06-12 09:01:33,466.466 INFO    ] No existing commands found in stream
[2026-06-12 09:01:38,480.480 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 09:01:38,483.483 INFO    ] Waiting 2.73 seconds before fallback handling...
[2026-06-12 09:01:41,576.576 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 09:01:41,577.577 INFO    ] Checking for system updates...
[2026-06-12 09:01:41,598.598 INFO    ] 200
[2026-06-12 09:01:41,599.599 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:01:41,630.630 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 09:01:41,631.631 INFO    ] No update needed
[2026-06-12 09:01:41,633.633 INFO    ] Checking for camera pi updates...
[2026-06-12 09:01:41,653.653 INFO    ] 200
[2026-06-12 09:01:41,654.654 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:01:41,678.678 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 09:01:41,714.714 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 09:01:41,716.716 INFO    ] No camera update needed
[2026-06-12 09:01:41,717.717 INFO    ] Script finished. Safe exiting...
[2026-06-12 09:01:41,718.718 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 09:01:41,722.722 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 09:01:41,725.725 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 09:01:43,764.764 INFO    ] ================================================
[2026-06-12 09:01:43,780.780 INFO    ] Launching Daemon at Fri Jun 12 09:01:43 IST 2026
[2026-06-12 09:01:43,791.791 INFO    ] ================================================
[2026-06-12 09:01:44,120.120 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 09:01:44
[2026-06-12 09:01:44,434.434 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 09:01:44,566.566 INFO    ] Initializing speech engine...
[2026-06-12 09:01:44,574.574 INFO    ] 2026-06-12 09:01:44
[2026-06-12 09:01:44,789.789 INFO    ] 2026-06-12 09:01:44
[2026-06-12 09:01:44,819.819 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 09:01:45,006.006 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 09:01:45,015.015 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 09:01:45,148.148 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 09:01:45,217.217 INFO    ] time= 12/06/2026 09:01:45
[2026-06-12 09:01:45,241.241 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 09:01:45,247.247 INFO    ] Checking for existing commands in stream...
[2026-06-12 09:01:45,314.314 INFO    ] No existing commands found in stream
[2026-06-12 09:01:50,325.325 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 09:01:50,328.328 INFO    ] Waiting 1.88 seconds before fallback handling...
[2026-06-12 09:01:52,577.577 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 09:01:52,579.579 INFO    ] Checking for system updates...
[2026-06-12 09:01:52,601.601 INFO    ] 200
[2026-06-12 09:01:52,602.602 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:01:52,634.634 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 09:01:52,635.635 INFO    ] No update needed
[2026-06-12 09:01:52,637.637 INFO    ] Checking for camera pi updates...
[2026-06-12 09:01:52,656.656 INFO    ] 200
[2026-06-12 09:01:52,657.657 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:01:52,683.683 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 09:01:52,725.725 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 09:01:52,726.726 INFO    ] No camera update needed
[2026-06-12 09:01:52,727.727 INFO    ] Script finished. Safe exiting...
[2026-06-12 09:01:52,728.728 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 09:01:52,732.732 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 09:01:52,734.734 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 09:01:54,774.774 INFO    ] ================================================
[2026-06-12 09:01:54,789.789 INFO    ] Launching Daemon at Fri Jun 12 09:01:54 IST 2026
[2026-06-12 09:01:54,800.800 INFO    ] ================================================
[2026-06-12 09:01:55,160.160 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 09:01:55
[2026-06-12 09:01:55,476.476 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 09:01:55,612.612 INFO    ] Initializing speech engine...
[2026-06-12 09:01:55,626.626 INFO    ] 2026-06-12 09:01:55
[2026-06-12 09:01:55,845.845 INFO    ] 2026-06-12 09:01:55
[2026-06-12 09:01:55,875.875 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 09:01:56,073.073 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 09:01:56,077.077 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 09:01:56,216.216 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 09:01:56,257.257 INFO    ] time= 12/06/2026 09:01:56
[2026-06-12 09:01:56,300.300 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 09:01:56,323.323 INFO    ] Checking for existing commands in stream...
[2026-06-12 09:01:56,398.398 INFO    ] No existing commands found in stream
[2026-06-12 09:02:01,409.409 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 09:02:01,412.412 INFO    ] Waiting 1.16 seconds before fallback handling...
[2026-06-12 09:02:02,967.967 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 09:02:02,969.969 INFO    ] Checking for system updates...
[2026-06-12 09:02:02,990.990 INFO    ] 200
[2026-06-12 09:02:02,992.992 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:02:03,033.033 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 09:02:03,034.034 INFO    ] No update needed
[2026-06-12 09:02:03,036.036 INFO    ] Checking for camera pi updates...
[2026-06-12 09:02:03,059.059 INFO    ] 200
[2026-06-12 09:02:03,061.061 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:02:03,084.084 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 09:02:03,133.133 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 09:02:03,134.134 INFO    ] No camera update needed
[2026-06-12 09:02:03,136.136 INFO    ] Script finished. Safe exiting...
[2026-06-12 09:02:03,137.137 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 09:02:03,140.140 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 09:02:03,143.143 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 09:02:05,183.183 INFO    ] ================================================
[2026-06-12 09:02:05,199.199 INFO    ] Launching Daemon at Fri Jun 12 09:02:05 IST 2026
[2026-06-12 09:02:05,210.210 INFO    ] ================================================
[2026-06-12 09:02:05,581.581 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 09:02:05
[2026-06-12 09:02:05,897.897 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 09:02:06,042.042 INFO    ] Initializing speech engine...
[2026-06-12 09:02:06,051.051 INFO    ] 2026-06-12 09:02:06
[2026-06-12 09:02:06,273.273 INFO    ] 2026-06-12 09:02:06
[2026-06-12 09:02:06,301.301 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 09:02:06,483.483 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 09:02:06,493.493 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 09:02:06,614.614 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 09:02:06,686.686 INFO    ] time= 12/06/2026 09:02:06
[2026-06-12 09:02:06,713.713 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 09:02:06,719.719 INFO    ] Checking for existing commands in stream...
[2026-06-12 09:02:06,786.786 INFO    ] No existing commands found in stream
[2026-06-12 09:02:11,795.795 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 09:02:11,797.797 INFO    ] Waiting 2.69 seconds before fallback handling...
[2026-06-12 09:02:14,854.854 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 09:02:14,856.856 INFO    ] Checking for system updates...
[2026-06-12 09:02:14,877.877 INFO    ] 200
[2026-06-12 09:02:14,878.878 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:02:14,909.909 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 09:02:14,911.911 INFO    ] No update needed
[2026-06-12 09:02:14,912.912 INFO    ] Checking for camera pi updates...
[2026-06-12 09:02:14,932.932 INFO    ] 200
[2026-06-12 09:02:14,933.933 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:02:14,956.956 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 09:02:14,992.992 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 09:02:14,993.993 INFO    ] No camera update needed
[2026-06-12 09:02:14,995.995 INFO    ] Script finished. Safe exiting...
[2026-06-12 09:02:14,996.996 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 09:02:14,999.999 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 09:02:15,001.001 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 09:02:17,041.041 INFO    ] ================================================
[2026-06-12 09:02:17,063.063 INFO    ] Launching Daemon at Fri Jun 12 09:02:17 IST 2026
[2026-06-12 09:02:17,074.074 INFO    ] ================================================
[2026-06-12 09:02:17,412.412 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 09:02:17
[2026-06-12 09:02:17,729.729 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 09:02:17,862.862 INFO    ] Initializing speech engine...
[2026-06-12 09:02:17,875.875 INFO    ] 2026-06-12 09:02:17
[2026-06-12 09:02:18,084.084 INFO    ] 2026-06-12 09:02:18
[2026-06-12 09:02:18,112.112 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 09:02:18,297.297 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 09:02:18,307.307 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 09:02:18,432.432 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 09:02:18,490.490 INFO    ] time= 12/06/2026 09:02:18
[2026-06-12 09:02:18,528.528 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 09:02:18,534.534 INFO    ] Checking for existing commands in stream...
[2026-06-12 09:02:18,599.599 INFO    ] No existing commands found in stream
[2026-06-12 09:02:23,610.610 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 09:02:23,613.613 INFO    ] Waiting 2.23 seconds before fallback handling...
[2026-06-12 09:02:26,228.228 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 09:02:26,229.229 INFO    ] Checking for system updates...
[2026-06-12 09:02:26,251.251 INFO    ] 200
[2026-06-12 09:02:26,252.252 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:02:26,283.283 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 09:02:26,284.284 INFO    ] No update needed
[2026-06-12 09:02:26,285.285 INFO    ] Checking for camera pi updates...
[2026-06-12 09:02:26,304.304 INFO    ] 200
[2026-06-12 09:02:26,306.306 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:02:26,329.329 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 09:02:26,365.365 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 09:02:26,367.367 INFO    ] No camera update needed
[2026-06-12 09:02:26,368.368 INFO    ] Script finished. Safe exiting...
[2026-06-12 09:02:26,369.369 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 09:02:26,372.372 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 09:02:26,375.375 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 09:02:28,414.414 INFO    ] ================================================
[2026-06-12 09:02:28,428.428 INFO    ] Launching Daemon at Fri Jun 12 09:02:28 IST 2026
[2026-06-12 09:02:28,439.439 INFO    ] ================================================
[2026-06-12 09:02:28,793.793 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 09:02:28
[2026-06-12 09:02:29,128.128 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 09:02:29,279.279 INFO    ] Initializing speech engine...
[2026-06-12 09:02:29,284.284 INFO    ] 2026-06-12 09:02:29
[2026-06-12 09:02:29,492.492 INFO    ] 2026-06-12 09:02:29
[2026-06-12 09:02:29,521.521 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 09:02:29,706.706 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 09:02:29,716.716 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 09:02:29,850.850 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 09:02:29,912.912 INFO    ] time= 12/06/2026 09:02:29
[2026-06-12 09:02:29,937.937 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 09:02:29,943.943 INFO    ] Checking for existing commands in stream...
[2026-06-12 09:02:30,011.011 INFO    ] No existing commands found in stream
[2026-06-12 09:02:35,025.025 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 09:02:35,029.029 INFO    ] Waiting 0.68 seconds before fallback handling...
[2026-06-12 09:02:36,068.068 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 09:02:36,070.070 INFO    ] Checking for system updates...
[2026-06-12 09:02:36,091.091 INFO    ] 200
[2026-06-12 09:02:36,092.092 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:02:36,123.123 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 09:02:36,124.124 INFO    ] No update needed
[2026-06-12 09:02:36,126.126 INFO    ] Checking for camera pi updates...
[2026-06-12 09:02:36,146.146 INFO    ] 200
[2026-06-12 09:02:36,148.148 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:02:36,174.174 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 09:02:36,210.210 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 09:02:36,211.211 INFO    ] No camera update needed
[2026-06-12 09:02:36,213.213 INFO    ] Script finished. Safe exiting...
[2026-06-12 09:02:36,214.214 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 09:02:36,217.217 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 09:02:36,221.221 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 09:02:38,261.261 INFO    ] ================================================
[2026-06-12 09:02:38,276.276 INFO    ] Launching Daemon at Fri Jun 12 09:02:38 IST 2026
[2026-06-12 09:02:38,287.287 INFO    ] ================================================
[2026-06-12 09:02:38,648.648 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 09:02:38
[2026-06-12 09:02:38,964.964 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 09:02:39,094.094 INFO    ] Initializing speech engine...
[2026-06-12 09:02:39,096.096 INFO    ] 2026-06-12 09:02:39
[2026-06-12 09:02:39,315.315 INFO    ] 2026-06-12 09:02:39
[2026-06-12 09:02:39,344.344 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 09:02:39,529.529 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 09:02:39,537.537 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 09:02:39,660.660 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 09:02:39,720.720 INFO    ] time= 12/06/2026 09:02:39
[2026-06-12 09:02:39,754.754 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 09:02:39,759.759 INFO    ] Checking for existing commands in stream...
[2026-06-12 09:02:39,831.831 INFO    ] No existing commands found in stream
[2026-06-12 09:02:44,845.845 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 09:02:44,848.848 INFO    ] Waiting 0.65 seconds before fallback handling...
[2026-06-12 09:02:45,886.886 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 09:02:45,888.888 INFO    ] Checking for system updates...
[2026-06-12 09:02:45,909.909 INFO    ] 200
[2026-06-12 09:02:45,912.912 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:02:45,943.943 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 09:02:45,944.944 INFO    ] No update needed
[2026-06-12 09:02:45,945.945 INFO    ] Checking for camera pi updates...
[2026-06-12 09:02:45,965.965 INFO    ] 200
[2026-06-12 09:02:45,967.967 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:02:45,991.991 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 09:02:46,037.037 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 09:02:46,039.039 INFO    ] No camera update needed
[2026-06-12 09:02:46,040.040 INFO    ] Script finished. Safe exiting...
[2026-06-12 09:02:46,042.042 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 09:02:46,045.045 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 09:02:46,048.048 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 09:02:48,087.087 INFO    ] ================================================
[2026-06-12 09:02:48,103.103 INFO    ] Launching Daemon at Fri Jun 12 09:02:48 IST 2026
[2026-06-12 09:02:48,114.114 INFO    ] ================================================
[2026-06-12 09:02:48,472.472 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 09:02:48
[2026-06-12 09:02:48,787.787 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 09:02:48,928.928 INFO    ] Initializing speech engine...
[2026-06-12 09:02:48,933.933 INFO    ] 2026-06-12 09:02:48
[2026-06-12 09:02:49,136.136 INFO    ] 2026-06-12 09:02:49
[2026-06-12 09:02:49,164.164 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 09:02:49,347.347 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 09:02:49,356.356 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 09:02:49,481.481 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 09:02:49,544.544 INFO    ] time= 12/06/2026 09:02:49
[2026-06-12 09:02:49,576.576 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 09:02:49,582.582 INFO    ] Checking for existing commands in stream...
[2026-06-12 09:02:49,647.647 INFO    ] No existing commands found in stream
[2026-06-12 09:02:54,658.658 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 09:02:54,661.661 INFO    ] Waiting 1.25 seconds before fallback handling...
[2026-06-12 09:02:56,285.285 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 09:02:56,287.287 INFO    ] Checking for system updates...
[2026-06-12 09:02:56,309.309 INFO    ] 200
[2026-06-12 09:02:56,310.310 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:02:56,343.343 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 09:02:56,344.344 INFO    ] No update needed
[2026-06-12 09:02:56,345.345 INFO    ] Checking for camera pi updates...
[2026-06-12 09:02:56,364.364 INFO    ] 200
[2026-06-12 09:02:56,366.366 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:02:56,389.389 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 09:02:56,527.527 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 09:02:56,529.529 INFO    ] No camera update needed
[2026-06-12 09:02:56,530.530 INFO    ] Script finished. Safe exiting...
[2026-06-12 09:02:56,531.531 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 09:02:56,534.534 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 09:02:56,537.537 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 09:02:58,576.576 INFO    ] ================================================
[2026-06-12 09:02:58,591.591 INFO    ] Launching Daemon at Fri Jun 12 09:02:58 IST 2026
[2026-06-12 09:02:58,603.603 INFO    ] ================================================
[2026-06-12 09:02:58,938.938 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 09:02:58
[2026-06-12 09:02:59,249.249 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 09:02:59,385.385 INFO    ] Initializing speech engine...
[2026-06-12 09:02:59,395.395 INFO    ] 2026-06-12 09:02:59
[2026-06-12 09:02:59,598.598 INFO    ] 2026-06-12 09:02:59
[2026-06-12 09:02:59,627.627 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 09:02:59,759.759 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 09:02:59,812.812 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 09:02:59,954.954 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 09:03:00,016.016 INFO    ] time= 12/06/2026 09:02:59
[2026-06-12 09:03:00,040.040 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 09:03:00,046.046 INFO    ] Checking for existing commands in stream...
[2026-06-12 09:03:00,112.112 INFO    ] No existing commands found in stream
[2026-06-12 09:03:05,121.121 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 09:03:05,124.124 INFO    ] Waiting 2.34 seconds before fallback handling...
[2026-06-12 09:03:07,829.829 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 09:03:07,830.830 INFO    ] Checking for system updates...
[2026-06-12 09:03:07,851.851 INFO    ] 200
[2026-06-12 09:03:07,852.852 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:03:07,884.884 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 09:03:07,885.885 INFO    ] No update needed
[2026-06-12 09:03:07,887.887 INFO    ] Checking for camera pi updates...
[2026-06-12 09:03:07,906.906 INFO    ] 200
[2026-06-12 09:03:07,907.907 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:03:07,930.930 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 09:03:07,971.971 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 09:03:07,972.972 INFO    ] No camera update needed
[2026-06-12 09:03:07,974.974 INFO    ] Script finished. Safe exiting...
[2026-06-12 09:03:07,975.975 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 09:03:07,978.978 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 09:03:07,980.980 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 09:03:10,019.019 INFO    ] ================================================
[2026-06-12 09:03:10,035.035 INFO    ] Launching Daemon at Fri Jun 12 09:03:10 IST 2026
[2026-06-12 09:03:10,046.046 INFO    ] ================================================
[2026-06-12 09:03:10,411.411 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 09:03:10
[2026-06-12 09:03:10,723.723 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 09:03:10,855.855 INFO    ] Initializing speech engine...
[2026-06-12 09:03:10,858.858 INFO    ] 2026-06-12 09:03:10
[2026-06-12 09:03:11,086.086 INFO    ] 2026-06-12 09:03:11
[2026-06-12 09:03:11,116.116 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 09:03:11,312.312 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 09:03:11,316.316 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 09:03:11,453.453 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 09:03:11,515.515 INFO    ] time= 12/06/2026 09:03:11
[2026-06-12 09:03:11,542.542 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 09:03:11,559.559 INFO    ] Checking for existing commands in stream...
[2026-06-12 09:03:11,633.633 INFO    ] No existing commands found in stream
[2026-06-12 09:03:16,644.644 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 09:03:16,651.651 INFO    ] Waiting 3.41 seconds before fallback handling...
[2026-06-12 09:03:20,447.447 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 09:03:20,449.449 INFO    ] Checking for system updates...
[2026-06-12 09:03:20,470.470 INFO    ] 200
[2026-06-12 09:03:20,471.471 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:03:20,502.502 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 09:03:20,503.503 INFO    ] No update needed
[2026-06-12 09:03:20,504.504 INFO    ] Checking for camera pi updates...
[2026-06-12 09:03:20,524.524 INFO    ] 200
[2026-06-12 09:03:20,525.525 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:03:20,548.548 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 09:03:20,591.591 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 09:03:20,592.592 INFO    ] No camera update needed
[2026-06-12 09:03:20,593.593 INFO    ] Script finished. Safe exiting...
[2026-06-12 09:03:20,595.595 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 09:03:20,598.598 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 09:03:20,600.600 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 09:03:22,631.631 INFO    ] ================================================
[2026-06-12 09:03:22,640.640 INFO    ] Launching Daemon at Fri Jun 12 09:03:22 IST 2026
[2026-06-12 09:03:22,646.646 INFO    ] ================================================
[2026-06-12 09:03:22,993.993 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 09:03:22
[2026-06-12 09:03:23,304.304 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 09:03:23,437.437 INFO    ] Initializing speech engine...
[2026-06-12 09:03:23,441.441 INFO    ] 2026-06-12 09:03:23
[2026-06-12 09:03:23,668.668 INFO    ] 2026-06-12 09:03:23
[2026-06-12 09:03:23,698.698 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 09:03:23,893.893 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 09:03:23,904.904 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 09:03:24,034.034 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 09:03:24,090.090 INFO    ] time= 12/06/2026 09:03:24
[2026-06-12 09:03:24,118.118 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 09:03:24,140.140 INFO    ] Checking for existing commands in stream...
[2026-06-12 09:03:24,215.215 INFO    ] No existing commands found in stream
[2026-06-12 09:03:29,226.226 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 09:03:29,228.228 INFO    ] Waiting 2.95 seconds before fallback handling...
[2026-06-12 09:03:32,545.545 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 09:03:32,546.546 INFO    ] Checking for system updates...
[2026-06-12 09:03:32,568.568 INFO    ] 200
[2026-06-12 09:03:32,570.570 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:03:32,600.600 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 09:03:32,601.601 INFO    ] No update needed
[2026-06-12 09:03:32,603.603 INFO    ] Checking for camera pi updates...
[2026-06-12 09:03:32,622.622 INFO    ] 200
[2026-06-12 09:03:32,623.623 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:03:32,647.647 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 09:03:32,671.671 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 09:03:32,672.672 INFO    ] No camera update needed
[2026-06-12 09:03:32,673.673 INFO    ] Script finished. Safe exiting...
[2026-06-12 09:03:32,674.674 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 09:03:32,677.677 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 09:03:32,680.680 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 09:03:34,711.711 INFO    ] ================================================
[2026-06-12 09:03:34,719.719 INFO    ] Launching Daemon at Fri Jun 12 09:03:34 IST 2026
[2026-06-12 09:03:34,725.725 INFO    ] ================================================
[2026-06-12 09:03:35,081.081 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 09:03:35
[2026-06-12 09:03:35,398.398 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 09:03:35,541.541 INFO    ] Initializing speech engine...
[2026-06-12 09:03:35,546.546 INFO    ] 2026-06-12 09:03:35
[2026-06-12 09:03:35,750.750 INFO    ] 2026-06-12 09:03:35
[2026-06-12 09:03:35,779.779 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 09:03:35,961.961 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 09:03:35,965.965 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 09:03:36,100.100 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 09:03:36,154.154 INFO    ] time= 12/06/2026 09:03:36
[2026-06-12 09:03:36,183.183 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 09:03:36,193.193 INFO    ] Checking for existing commands in stream...
[2026-06-12 09:03:36,265.265 INFO    ] No existing commands found in stream
[2026-06-12 09:03:41,284.284 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 09:03:41,287.287 INFO    ] Waiting 0.58 seconds before fallback handling...
[2026-06-12 09:03:42,211.211 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 09:03:42,213.213 INFO    ] Checking for system updates...
[2026-06-12 09:03:42,233.233 INFO    ] 200
[2026-06-12 09:03:42,235.235 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:03:42,265.265 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 09:03:42,267.267 INFO    ] No update needed
[2026-06-12 09:03:42,268.268 INFO    ] Checking for camera pi updates...
[2026-06-12 09:03:42,288.288 INFO    ] 200
[2026-06-12 09:03:42,290.290 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:03:42,315.315 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 09:03:42,348.348 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 09:03:42,350.350 INFO    ] No camera update needed
[2026-06-12 09:03:42,351.351 INFO    ] Script finished. Safe exiting...
[2026-06-12 09:03:42,352.352 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 09:03:42,355.355 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 09:03:42,358.358 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 09:03:44,397.397 INFO    ] ================================================
[2026-06-12 09:03:44,412.412 INFO    ] Launching Daemon at Fri Jun 12 09:03:44 IST 2026
[2026-06-12 09:03:44,423.423 INFO    ] ================================================
[2026-06-12 09:03:44,770.770 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 09:03:44
[2026-06-12 09:03:45,086.086 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 09:03:45,231.231 INFO    ] Initializing speech engine...
[2026-06-12 09:03:45,237.237 INFO    ] 2026-06-12 09:03:45
[2026-06-12 09:03:45,442.442 INFO    ] 2026-06-12 09:03:45
[2026-06-12 09:03:45,469.469 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 09:03:45,676.676 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 09:03:45,681.681 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 09:03:45,813.813 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 09:03:45,861.861 INFO    ] time= 12/06/2026 09:03:45
[2026-06-12 09:03:45,884.884 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 09:03:45,889.889 INFO    ] Checking for existing commands in stream...
[2026-06-12 09:03:45,957.957 INFO    ] No existing commands found in stream
[2026-06-12 09:03:50,971.971 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 09:03:50,974.974 INFO    ] Waiting 0.81 seconds before fallback handling...
[2026-06-12 09:03:52,119.119 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 09:03:52,120.120 INFO    ] Checking for system updates...
[2026-06-12 09:03:52,141.141 INFO    ] 200
[2026-06-12 09:03:52,142.142 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:03:52,177.177 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 09:03:52,178.178 INFO    ] No update needed
[2026-06-12 09:03:52,180.180 INFO    ] Checking for camera pi updates...
[2026-06-12 09:03:52,200.200 INFO    ] 200
[2026-06-12 09:03:52,202.202 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:03:52,227.227 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 09:03:52,263.263 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 09:03:52,264.264 INFO    ] No camera update needed
[2026-06-12 09:03:52,265.265 INFO    ] Script finished. Safe exiting...
[2026-06-12 09:03:52,267.267 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 09:03:52,270.270 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 09:03:52,273.273 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 09:03:54,312.312 INFO    ] ================================================
[2026-06-12 09:03:54,329.329 INFO    ] Launching Daemon at Fri Jun 12 09:03:54 IST 2026
[2026-06-12 09:03:54,340.340 INFO    ] ================================================
[2026-06-12 09:03:54,701.701 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 09:03:54
[2026-06-12 09:03:55,033.033 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 09:03:55,184.184 INFO    ] Initializing speech engine...
[2026-06-12 09:03:55,190.190 INFO    ] 2026-06-12 09:03:55
[2026-06-12 09:03:55,394.394 INFO    ] 2026-06-12 09:03:55
[2026-06-12 09:03:55,423.423 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 09:03:55,607.607 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 09:03:55,616.616 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 09:03:55,752.752 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 09:03:55,813.813 INFO    ] time= 12/06/2026 09:03:55
[2026-06-12 09:03:55,837.837 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 09:03:55,843.843 INFO    ] Checking for existing commands in stream...
[2026-06-12 09:03:55,910.910 INFO    ] No existing commands found in stream
[2026-06-12 09:04:00,924.924 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 09:04:00,927.927 INFO    ] Waiting 1.87 seconds before fallback handling...
[2026-06-12 09:04:03,169.169 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 09:04:03,171.171 INFO    ] Checking for system updates...
[2026-06-12 09:04:03,192.192 INFO    ] 200
[2026-06-12 09:04:03,193.193 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:04:03,223.223 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 09:04:03,225.225 INFO    ] No update needed
[2026-06-12 09:04:03,226.226 INFO    ] Checking for camera pi updates...
[2026-06-12 09:04:03,247.247 INFO    ] 200
[2026-06-12 09:04:03,249.249 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:04:03,274.274 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 09:04:03,312.312 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 09:04:03,313.313 INFO    ] No camera update needed
[2026-06-12 09:04:03,315.315 INFO    ] Script finished. Safe exiting...
[2026-06-12 09:04:03,316.316 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 09:04:03,319.319 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 09:04:03,322.322 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 09:04:05,365.365 INFO    ] ================================================
[2026-06-12 09:04:05,382.382 INFO    ] Launching Daemon at Fri Jun 12 09:04:05 IST 2026
[2026-06-12 09:04:05,395.395 INFO    ] ================================================
[2026-06-12 09:04:05,748.748 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 09:04:05
[2026-06-12 09:04:06,063.063 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 09:04:06,196.196 INFO    ] Initializing speech engine...
[2026-06-12 09:04:06,204.204 INFO    ] 2026-06-12 09:04:06
[2026-06-12 09:04:06,418.418 INFO    ] 2026-06-12 09:04:06
[2026-06-12 09:04:06,447.447 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 09:04:06,633.633 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 09:04:06,643.643 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 09:04:06,764.764 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 09:04:06,830.830 INFO    ] time= 12/06/2026 09:04:06
[2026-06-12 09:04:06,862.862 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 09:04:06,869.869 INFO    ] Checking for existing commands in stream...
[2026-06-12 09:04:06,936.936 INFO    ] No existing commands found in stream
[2026-06-12 09:04:11,950.950 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 09:04:11,953.953 INFO    ] Waiting 0.10 seconds before fallback handling...
[2026-06-12 09:04:12,402.402 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 09:04:12,403.403 INFO    ] Checking for system updates...
[2026-06-12 09:04:12,424.424 INFO    ] 200
[2026-06-12 09:04:12,425.425 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:04:12,460.460 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 09:04:12,461.461 INFO    ] No update needed
[2026-06-12 09:04:12,462.462 INFO    ] Checking for camera pi updates...
[2026-06-12 09:04:12,482.482 INFO    ] 200
[2026-06-12 09:04:12,483.483 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:04:12,508.508 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 09:04:12,552.552 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 09:04:12,553.553 INFO    ] No camera update needed
[2026-06-12 09:04:12,554.554 INFO    ] Script finished. Safe exiting...
[2026-06-12 09:04:12,555.555 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 09:04:12,558.558 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 09:04:12,561.561 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 09:04:14,602.602 INFO    ] ================================================
[2026-06-12 09:04:14,617.617 INFO    ] Launching Daemon at Fri Jun 12 09:04:14 IST 2026
[2026-06-12 09:04:14,628.628 INFO    ] ================================================
[2026-06-12 09:04:14,969.969 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 09:04:14
[2026-06-12 09:04:15,304.304 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 09:04:15,449.449 INFO    ] Initializing speech engine...
[2026-06-12 09:04:15,460.460 INFO    ] 2026-06-12 09:04:15
[2026-06-12 09:04:15,670.670 INFO    ] 2026-06-12 09:04:15
[2026-06-12 09:04:15,699.699 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 09:04:15,884.884 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 09:04:15,889.889 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 09:04:16,024.024 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 09:04:16,081.081 INFO    ] time= 12/06/2026 09:04:16
[2026-06-12 09:04:16,121.121 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 09:04:16,123.123 INFO    ] Checking for existing commands in stream...
[2026-06-12 09:04:16,195.195 INFO    ] No existing commands found in stream
[2026-06-12 09:04:21,205.205 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 09:04:21,208.208 INFO    ] Waiting 0.17 seconds before fallback handling...
[2026-06-12 09:04:21,725.725 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 09:04:21,726.726 INFO    ] Checking for system updates...
[2026-06-12 09:04:21,747.747 INFO    ] 200
[2026-06-12 09:04:21,748.748 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:04:21,780.780 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 09:04:21,782.782 INFO    ] No update needed
[2026-06-12 09:04:21,783.783 INFO    ] Checking for camera pi updates...
[2026-06-12 09:04:21,803.803 INFO    ] 200
[2026-06-12 09:04:21,805.805 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:04:21,829.829 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 09:04:21,868.868 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 09:04:21,870.870 INFO    ] No camera update needed
[2026-06-12 09:04:21,871.871 INFO    ] Script finished. Safe exiting...
[2026-06-12 09:04:21,872.872 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 09:04:21,875.875 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 09:04:21,878.878 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 09:04:23,916.916 INFO    ] ================================================
[2026-06-12 09:04:23,932.932 INFO    ] Launching Daemon at Fri Jun 12 09:04:23 IST 2026
[2026-06-12 09:04:23,943.943 INFO    ] ================================================
[2026-06-12 09:04:24,276.276 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 09:04:24
[2026-06-12 09:04:24,590.590 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 09:04:24,723.723 INFO    ] Initializing speech engine...
[2026-06-12 09:04:24,731.731 INFO    ] 2026-06-12 09:04:24
[2026-06-12 09:04:24,955.955 INFO    ] 2026-06-12 09:04:24
[2026-06-12 09:04:24,985.985 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 09:04:25,181.181 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 09:04:25,184.184 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 09:04:25,324.324 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 09:04:25,380.380 INFO    ] time= 12/06/2026 09:04:25
[2026-06-12 09:04:25,407.407 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 09:04:25,430.430 INFO    ] Checking for existing commands in stream...
[2026-06-12 09:04:25,505.505 INFO    ] No existing commands found in stream
[2026-06-12 09:04:30,515.515 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 09:04:30,518.518 INFO    ] Waiting 1.31 seconds before fallback handling...
[2026-06-12 09:04:32,146.146 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 09:04:32,148.148 INFO    ] Checking for system updates...
[2026-06-12 09:04:32,169.169 INFO    ] 200
[2026-06-12 09:04:32,170.170 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:04:32,200.200 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 09:04:32,201.201 INFO    ] No update needed
[2026-06-12 09:04:32,203.203 INFO    ] Checking for camera pi updates...
[2026-06-12 09:04:32,222.222 INFO    ] 200
[2026-06-12 09:04:32,223.223 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:04:32,246.246 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 09:04:32,291.291 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 09:04:32,294.294 INFO    ] No camera update needed
[2026-06-12 09:04:32,296.296 INFO    ] Script finished. Safe exiting...
[2026-06-12 09:04:32,298.298 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 09:04:32,303.303 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 09:04:32,308.308 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 09:04:34,348.348 INFO    ] ================================================
[2026-06-12 09:04:34,364.364 INFO    ] Launching Daemon at Fri Jun 12 09:04:34 IST 2026
[2026-06-12 09:04:34,375.375 INFO    ] ================================================
[2026-06-12 09:04:34,718.718 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 09:04:34
[2026-06-12 09:04:35,030.030 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 09:04:35,161.161 INFO    ] Initializing speech engine...
[2026-06-12 09:04:35,169.169 INFO    ] 2026-06-12 09:04:35
[2026-06-12 09:04:35,386.386 INFO    ] 2026-06-12 09:04:35
[2026-06-12 09:04:35,416.416 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 09:04:35,546.546 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 09:04:35,590.590 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 09:04:35,755.755 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 09:04:35,813.813 INFO    ] time= 12/06/2026 09:04:35
[2026-06-12 09:04:35,852.852 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 09:04:35,863.863 INFO    ] Checking for existing commands in stream...
[2026-06-12 09:04:35,938.938 INFO    ] No existing commands found in stream
[2026-06-12 09:04:40,948.948 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 09:04:40,951.951 INFO    ] Waiting 1.08 seconds before fallback handling...
[2026-06-12 09:04:42,389.389 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 09:04:42,390.390 INFO    ] Checking for system updates...
[2026-06-12 09:04:42,415.415 INFO    ] 200
[2026-06-12 09:04:42,417.417 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:04:42,447.447 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 09:04:42,448.448 INFO    ] No update needed
[2026-06-12 09:04:42,449.449 INFO    ] Checking for camera pi updates...
[2026-06-12 09:04:42,470.470 INFO    ] 200
[2026-06-12 09:04:42,471.471 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:04:42,494.494 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 09:04:42,538.538 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 09:04:42,540.540 INFO    ] No camera update needed
[2026-06-12 09:04:42,541.541 INFO    ] Script finished. Safe exiting...
[2026-06-12 09:04:42,542.542 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 09:04:42,545.545 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 09:04:42,548.548 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 09:04:44,588.588 INFO    ] ================================================
[2026-06-12 09:04:44,603.603 INFO    ] Launching Daemon at Fri Jun 12 09:04:44 IST 2026
[2026-06-12 09:04:44,615.615 INFO    ] ================================================
[2026-06-12 09:04:44,966.966 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 09:04:44
[2026-06-12 09:04:45,279.279 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 09:04:45,412.412 INFO    ] Initializing speech engine...
[2026-06-12 09:04:45,417.417 INFO    ] 2026-06-12 09:04:45
[2026-06-12 09:04:45,644.644 INFO    ] 2026-06-12 09:04:45
[2026-06-12 09:04:45,675.675 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 09:04:45,869.869 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 09:04:45,873.873 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 09:04:46,010.010 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 09:04:46,036.036 INFO    ] time= 12/06/2026 09:04:46
[2026-06-12 09:04:46,092.092 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 09:04:46,116.116 INFO    ] Checking for existing commands in stream...
[2026-06-12 09:04:46,191.191 INFO    ] No existing commands found in stream
[2026-06-12 09:04:51,201.201 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 09:04:51,202.202 INFO    ] Waiting 1.07 seconds before fallback handling...
[2026-06-12 09:04:52,614.614 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 09:04:52,616.616 INFO    ] Checking for system updates...
[2026-06-12 09:04:52,637.637 INFO    ] 200
[2026-06-12 09:04:52,639.639 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:04:52,671.671 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 09:04:52,673.673 INFO    ] No update needed
[2026-06-12 09:04:52,674.674 INFO    ] Checking for camera pi updates...
[2026-06-12 09:04:52,694.694 INFO    ] 200
[2026-06-12 09:04:52,695.695 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:04:52,718.718 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 09:04:52,769.769 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 09:04:52,770.770 INFO    ] No camera update needed
[2026-06-12 09:04:52,771.771 INFO    ] Script finished. Safe exiting...
[2026-06-12 09:04:52,773.773 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 09:04:52,776.776 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 09:04:52,778.778 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 09:04:54,818.818 INFO    ] ================================================
[2026-06-12 09:04:54,834.834 INFO    ] Launching Daemon at Fri Jun 12 09:04:54 IST 2026
[2026-06-12 09:04:54,845.845 INFO    ] ================================================
[2026-06-12 09:04:55,199.199 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 09:04:55
[2026-06-12 09:04:55,510.510 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 09:04:55,643.643 INFO    ] Initializing speech engine...
[2026-06-12 09:04:55,651.651 INFO    ] 2026-06-12 09:04:55
[2026-06-12 09:04:55,873.873 INFO    ] 2026-06-12 09:04:55
[2026-06-12 09:04:55,903.903 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 09:04:56,033.033 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 09:04:56,091.091 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 09:04:56,241.241 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 09:04:56,302.302 INFO    ] time= 12/06/2026 09:04:56
[2026-06-12 09:04:56,330.330 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 09:04:56,347.347 INFO    ] Checking for existing commands in stream...
[2026-06-12 09:04:56,423.423 INFO    ] No existing commands found in stream
[2026-06-12 09:05:01,432.432 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 09:05:01,435.435 INFO    ] Waiting 2.16 seconds before fallback handling...
[2026-06-12 09:05:03,907.907 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 09:05:03,908.908 INFO    ] Checking for system updates...
[2026-06-12 09:05:03,930.930 INFO    ] 200
[2026-06-12 09:05:03,931.931 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:05:03,961.961 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 09:05:03,962.962 INFO    ] No update needed
[2026-06-12 09:05:03,964.964 INFO    ] Checking for camera pi updates...
[2026-06-12 09:05:03,985.985 INFO    ] 200
[2026-06-12 09:05:03,986.986 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:05:04,009.009 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 09:05:04,046.046 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 09:05:04,047.047 INFO    ] No camera update needed
[2026-06-12 09:05:04,048.048 INFO    ] Script finished. Safe exiting...
[2026-06-12 09:05:04,050.050 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 09:05:04,053.053 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 09:05:04,055.055 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 09:05:06,096.096 INFO    ] ================================================
[2026-06-12 09:05:06,112.112 INFO    ] Launching Daemon at Fri Jun 12 09:05:06 IST 2026
[2026-06-12 09:05:06,124.124 INFO    ] ================================================
[2026-06-12 09:05:06,452.452 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 09:05:06
[2026-06-12 09:05:06,766.766 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 09:05:06,910.910 INFO    ] Initializing speech engine...
[2026-06-12 09:05:06,915.915 INFO    ] 2026-06-12 09:05:06
[2026-06-12 09:05:07,123.123 INFO    ] 2026-06-12 09:05:07
[2026-06-12 09:05:07,151.151 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 09:05:07,338.338 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 09:05:07,342.342 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 09:05:07,473.473 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 09:05:07,529.529 INFO    ] time= 12/06/2026 09:05:07
[2026-06-12 09:05:07,573.573 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 09:05:07,575.575 INFO    ] Checking for existing commands in stream...
[2026-06-12 09:05:07,648.648 INFO    ] No existing commands found in stream
[2026-06-12 09:05:12,662.662 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 09:05:12,665.665 INFO    ] Waiting 0.76 seconds before fallback handling...
[2026-06-12 09:05:13,771.771 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 09:05:13,773.773 INFO    ] Checking for system updates...
[2026-06-12 09:05:13,794.794 INFO    ] 200
[2026-06-12 09:05:13,796.796 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:05:13,828.828 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 09:05:13,830.830 INFO    ] No update needed
[2026-06-12 09:05:13,831.831 INFO    ] Checking for camera pi updates...
[2026-06-12 09:05:13,852.852 INFO    ] 200
[2026-06-12 09:05:13,853.853 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:05:13,876.876 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 09:05:13,926.926 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 09:05:13,927.927 INFO    ] No camera update needed
[2026-06-12 09:05:13,929.929 INFO    ] Script finished. Safe exiting...
[2026-06-12 09:05:13,930.930 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 09:05:13,933.933 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 09:05:13,936.936 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 09:05:15,975.975 INFO    ] ================================================
[2026-06-12 09:05:15,991.991 INFO    ] Launching Daemon at Fri Jun 12 09:05:15 IST 2026
[2026-06-12 09:05:16,002.002 INFO    ] ================================================
[2026-06-12 09:05:16,336.336 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 09:05:16
[2026-06-12 09:05:16,652.652 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 09:05:16,797.797 INFO    ] Initializing speech engine...
[2026-06-12 09:05:16,802.802 INFO    ] 2026-06-12 09:05:16
[2026-06-12 09:05:17,006.006 INFO    ] 2026-06-12 09:05:16
[2026-06-12 09:05:17,034.034 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 09:05:17,218.218 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 09:05:17,227.227 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 09:05:17,354.354 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 09:05:17,411.411 INFO    ] time= 12/06/2026 09:05:17
[2026-06-12 09:05:17,446.446 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 09:05:17,451.451 INFO    ] Checking for existing commands in stream...
[2026-06-12 09:05:17,523.523 INFO    ] No existing commands found in stream
[2026-06-12 09:05:22,537.537 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 09:05:22,539.539 INFO    ] Waiting 2.58 seconds before fallback handling...
[2026-06-12 09:05:25,462.462 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 09:05:25,463.463 INFO    ] Checking for system updates...
[2026-06-12 09:05:25,484.484 INFO    ] 200
[2026-06-12 09:05:25,486.486 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:05:25,518.518 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 09:05:25,519.519 INFO    ] No update needed
[2026-06-12 09:05:25,520.520 INFO    ] Checking for camera pi updates...
[2026-06-12 09:05:25,541.541 INFO    ] 200
[2026-06-12 09:05:25,542.542 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:05:25,565.565 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 09:05:25,603.603 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 09:05:25,604.604 INFO    ] No camera update needed
[2026-06-12 09:05:25,605.605 INFO    ] Script finished. Safe exiting...
[2026-06-12 09:05:25,607.607 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 09:05:25,610.610 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 09:05:25,612.612 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 09:05:27,652.652 INFO    ] ================================================
[2026-06-12 09:05:27,668.668 INFO    ] Launching Daemon at Fri Jun 12 09:05:27 IST 2026
[2026-06-12 09:05:27,679.679 INFO    ] ================================================
[2026-06-12 09:05:28,046.046 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 09:05:28
[2026-06-12 09:05:28,378.378 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 09:05:28,527.527 INFO    ] Initializing speech engine...
[2026-06-12 09:05:28,533.533 INFO    ] 2026-06-12 09:05:28
[2026-06-12 09:05:28,741.741 INFO    ] 2026-06-12 09:05:28
[2026-06-12 09:05:28,768.768 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 09:05:28,892.892 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 09:05:28,955.955 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 09:05:29,085.085 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 09:05:29,141.141 INFO    ] time= 12/06/2026 09:05:29
[2026-06-12 09:05:29,175.175 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 09:05:29,190.190 INFO    ] Checking for existing commands in stream...
[2026-06-12 09:05:29,257.257 INFO    ] No existing commands found in stream
[2026-06-12 09:05:34,272.272 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 09:05:34,275.275 INFO    ] Waiting 2.65 seconds before fallback handling...
[2026-06-12 09:05:37,293.293 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 09:05:37,294.294 INFO    ] Checking for system updates...
[2026-06-12 09:05:37,316.316 INFO    ] 200
[2026-06-12 09:05:37,317.317 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:05:37,347.347 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 09:05:37,349.349 INFO    ] No update needed
[2026-06-12 09:05:37,351.351 INFO    ] Checking for camera pi updates...
[2026-06-12 09:05:37,370.370 INFO    ] 200
[2026-06-12 09:05:37,372.372 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:05:37,395.395 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 09:05:37,440.440 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 09:05:37,441.441 INFO    ] No camera update needed
[2026-06-12 09:05:37,443.443 INFO    ] Script finished. Safe exiting...
[2026-06-12 09:05:37,444.444 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 09:05:37,447.447 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 09:05:37,450.450 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 09:05:39,489.489 INFO    ] ================================================
[2026-06-12 09:05:39,512.512 INFO    ] Launching Daemon at Fri Jun 12 09:05:39 IST 2026
[2026-06-12 09:05:39,523.523 INFO    ] ================================================
[2026-06-12 09:05:39,891.891 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 09:05:39
[2026-06-12 09:05:40,225.225 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 09:05:40,376.376 INFO    ] Initializing speech engine...
[2026-06-12 09:05:40,382.382 INFO    ] 2026-06-12 09:05:40
[2026-06-12 09:05:40,591.591 INFO    ] 2026-06-12 09:05:40
[2026-06-12 09:05:40,619.619 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 09:05:40,807.807 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 09:05:40,817.817 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 09:05:40,949.949 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 09:05:41,017.017 INFO    ] time= 12/06/2026 09:05:40
[2026-06-12 09:05:41,041.041 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 09:05:41,048.048 INFO    ] Checking for existing commands in stream...
[2026-06-12 09:05:41,116.116 INFO    ] No existing commands found in stream
[2026-06-12 09:05:46,131.131 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 09:05:46,134.134 INFO    ] Waiting 3.45 seconds before fallback handling...
[2026-06-12 09:05:50,716.716 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 09:05:50,719.719 INFO    ] Checking for system updates...
[2026-06-12 09:05:50,759.759 INFO    ] 200
[2026-06-12 09:05:50,762.762 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:05:50,803.803 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 09:05:50,804.804 INFO    ] No update needed
[2026-06-12 09:05:50,805.805 INFO    ] Checking for camera pi updates...
[2026-06-12 09:05:50,828.828 INFO    ] 200
[2026-06-12 09:05:50,829.829 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:05:50,853.853 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 09:05:50,893.893 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 09:05:50,894.894 INFO    ] No camera update needed
[2026-06-12 09:05:50,896.896 INFO    ] Script finished. Safe exiting...
[2026-06-12 09:05:50,897.897 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 09:05:50,900.900 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 09:05:50,903.903 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 09:05:52,941.941 INFO    ] ================================================
[2026-06-12 09:05:52,956.956 INFO    ] Launching Daemon at Fri Jun 12 09:05:52 IST 2026
[2026-06-12 09:05:52,967.967 INFO    ] ================================================
[2026-06-12 09:05:53,302.302 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 09:05:53
[2026-06-12 09:05:53,618.618 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 09:05:53,751.751 INFO    ] Initializing speech engine...
[2026-06-12 09:05:53,756.756 INFO    ] 2026-06-12 09:05:53
[2026-06-12 09:05:53,983.983 INFO    ] 2026-06-12 09:05:53
[2026-06-12 09:05:54,014.014 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 09:05:54,207.207 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 09:05:54,211.211 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 09:05:54,347.347 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 09:05:54,403.403 INFO    ] time= 12/06/2026 09:05:54
[2026-06-12 09:05:54,447.447 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 09:05:54,453.453 INFO    ] Checking for existing commands in stream...
[2026-06-12 09:05:54,527.527 INFO    ] No existing commands found in stream
[2026-06-12 09:05:59,538.538 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 09:05:59,542.542 INFO    ] Waiting 2.21 seconds before fallback handling...
[2026-06-12 09:06:02,130.130 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 09:06:02,133.133 INFO    ] Checking for system updates...
[2026-06-12 09:06:02,159.159 INFO    ] 200
[2026-06-12 09:06:02,161.161 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:06:02,205.205 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 09:06:02,208.208 INFO    ] No update needed
[2026-06-12 09:06:02,210.210 INFO    ] Checking for camera pi updates...
[2026-06-12 09:06:02,244.244 INFO    ] 200
[2026-06-12 09:06:02,247.247 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:06:02,281.281 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 09:06:02,304.304 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 09:06:02,306.306 INFO    ] No camera update needed
[2026-06-12 09:06:02,308.308 INFO    ] Script finished. Safe exiting...
[2026-06-12 09:06:02,309.309 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 09:06:02,314.314 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 09:06:02,317.317 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 09:06:04,358.358 INFO    ] ================================================
[2026-06-12 09:06:04,374.374 INFO    ] Launching Daemon at Fri Jun 12 09:06:04 IST 2026
[2026-06-12 09:06:04,385.385 INFO    ] ================================================
[2026-06-12 09:06:04,749.749 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 09:06:04
[2026-06-12 09:06:05,061.061 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 09:06:05,199.199 INFO    ] Initializing speech engine...
[2026-06-12 09:06:05,209.209 INFO    ] 2026-06-12 09:06:05
[2026-06-12 09:06:05,414.414 INFO    ] 2026-06-12 09:06:05
[2026-06-12 09:06:05,443.443 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 09:06:05,629.629 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 09:06:05,638.638 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 09:06:05,762.762 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 09:06:05,808.808 INFO    ] time= 12/06/2026 09:06:05
[2026-06-12 09:06:05,854.854 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 09:06:05,864.864 INFO    ] Checking for existing commands in stream...
[2026-06-12 09:06:05,964.964 INFO    ] No existing commands found in stream
[2026-06-12 09:06:10,982.982 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 09:06:10,985.985 INFO    ] Waiting 3.70 seconds before fallback handling...
[2026-06-12 09:06:15,002.002 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 09:06:15,004.004 INFO    ] Checking for system updates...
[2026-06-12 09:06:15,025.025 INFO    ] 200
[2026-06-12 09:06:15,026.026 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:06:15,059.059 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 09:06:15,060.060 INFO    ] No update needed
[2026-06-12 09:06:15,062.062 INFO    ] Checking for camera pi updates...
[2026-06-12 09:06:15,082.082 INFO    ] 200
[2026-06-12 09:06:15,084.084 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:06:15,107.107 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 09:06:15,150.150 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 09:06:15,151.151 INFO    ] No camera update needed
[2026-06-12 09:06:15,153.153 INFO    ] Script finished. Safe exiting...
[2026-06-12 09:06:15,154.154 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 09:06:15,157.157 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 09:06:15,160.160 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 09:06:17,191.191 INFO    ] ================================================
[2026-06-12 09:06:17,199.199 INFO    ] Launching Daemon at Fri Jun 12 09:06:17 IST 2026
[2026-06-12 09:06:17,206.206 INFO    ] ================================================
[2026-06-12 09:06:17,521.521 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 09:06:17
[2026-06-12 09:06:17,834.834 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 09:06:17,975.975 INFO    ] Initializing speech engine...
[2026-06-12 09:06:17,984.984 INFO    ] 2026-06-12 09:06:17
[2026-06-12 09:06:18,198.198 INFO    ] 2026-06-12 09:06:18
[2026-06-12 09:06:18,227.227 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 09:06:18,355.355 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 09:06:18,413.413 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 09:06:18,634.634 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 09:06:18,644.644 INFO    ] time= 12/06/2026 09:06:18
[2026-06-12 09:06:18,646.646 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 09:06:18,648.648 INFO    ] Checking for existing commands in stream...
[2026-06-12 09:06:18,714.714 INFO    ] No existing commands found in stream
[2026-06-12 09:06:23,728.728 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 09:06:23,732.732 INFO    ] Waiting 0.62 seconds before fallback handling...
[2026-06-12 09:06:24,712.712 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 09:06:24,714.714 INFO    ] Checking for system updates...
[2026-06-12 09:06:24,736.736 INFO    ] 200
[2026-06-12 09:06:24,737.737 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:06:24,772.772 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 09:06:24,774.774 INFO    ] No update needed
[2026-06-12 09:06:24,775.775 INFO    ] Checking for camera pi updates...
[2026-06-12 09:06:24,801.801 INFO    ] 200
[2026-06-12 09:06:24,802.802 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:06:24,827.827 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 09:06:24,862.862 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 09:06:24,864.864 INFO    ] No camera update needed
[2026-06-12 09:06:24,865.865 INFO    ] Script finished. Safe exiting...
[2026-06-12 09:06:24,866.866 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 09:06:24,870.870 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 09:06:24,873.873 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 09:06:26,905.905 INFO    ] ================================================
[2026-06-12 09:06:26,920.920 INFO    ] Launching Daemon at Fri Jun 12 09:06:26 IST 2026
[2026-06-12 09:06:26,931.931 INFO    ] ================================================
[2026-06-12 09:06:27,262.262 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 09:06:27
[2026-06-12 09:06:27,884.884 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 09:06:28,026.026 INFO    ] Initializing speech engine...
[2026-06-12 09:06:28,030.030 INFO    ] 2026-06-12 09:06:28
[2026-06-12 09:06:28,247.247 INFO    ] 2026-06-12 09:06:28
[2026-06-12 09:06:28,277.277 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 09:06:28,464.464 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 09:06:28,467.467 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 09:06:28,604.604 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 09:06:28,658.658 INFO    ] time= 12/06/2026 09:06:28
[2026-06-12 09:06:28,688.688 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 09:06:28,699.699 INFO    ] Checking for existing commands in stream...
[2026-06-12 09:06:28,794.794 INFO    ] No existing commands found in stream
[2026-06-12 09:06:33,803.803 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 09:06:33,806.806 INFO    ] Waiting 0.78 seconds before fallback handling...
[2026-06-12 09:06:34,923.923 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 09:06:34,924.924 INFO    ] Checking for system updates...
[2026-06-12 09:06:34,945.945 INFO    ] 200
[2026-06-12 09:06:34,946.946 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:06:34,978.978 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 09:06:34,980.980 INFO    ] No update needed
[2026-06-12 09:06:34,981.981 INFO    ] Checking for camera pi updates...
[2026-06-12 09:06:35,000.000 INFO    ] 200
[2026-06-12 09:06:35,001.001 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:06:35,027.027 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 09:06:35,064.064 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 09:06:35,066.066 INFO    ] No camera update needed
[2026-06-12 09:06:35,067.067 INFO    ] Script finished. Safe exiting...
[2026-06-12 09:06:35,068.068 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 09:06:35,071.071 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 09:06:35,074.074 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 09:06:37,113.113 INFO    ] ================================================
[2026-06-12 09:06:37,129.129 INFO    ] Launching Daemon at Fri Jun 12 09:06:37 IST 2026
[2026-06-12 09:06:37,141.141 INFO    ] ================================================
[2026-06-12 09:06:37,485.485 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 09:06:37
[2026-06-12 09:06:37,801.801 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 09:06:37,932.932 INFO    ] Initializing speech engine...
[2026-06-12 09:06:37,936.936 INFO    ] 2026-06-12 09:06:37
[2026-06-12 09:06:38,157.157 INFO    ] 2026-06-12 09:06:38
[2026-06-12 09:06:38,185.185 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 09:06:38,309.309 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 09:06:38,373.373 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 09:06:38,506.506 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 09:06:38,566.566 INFO    ] time= 12/06/2026 09:06:38
[2026-06-12 09:06:38,602.602 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 09:06:38,608.608 INFO    ] Checking for existing commands in stream...
[2026-06-12 09:06:38,680.680 INFO    ] No existing commands found in stream
[2026-06-12 09:06:43,689.689 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 09:06:43,692.692 INFO    ] Waiting 2.41 seconds before fallback handling...
[2026-06-12 09:06:46,479.479 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 09:06:46,481.481 INFO    ] Checking for system updates...
[2026-06-12 09:06:46,501.501 INFO    ] 200
[2026-06-12 09:06:46,503.503 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:06:46,533.533 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 09:06:46,535.535 INFO    ] No update needed
[2026-06-12 09:06:46,536.536 INFO    ] Checking for camera pi updates...
[2026-06-12 09:06:46,555.555 INFO    ] 200
[2026-06-12 09:06:46,557.557 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:06:46,580.580 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 09:06:46,615.615 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 09:06:46,617.617 INFO    ] No camera update needed
[2026-06-12 09:06:46,618.618 INFO    ] Script finished. Safe exiting...
[2026-06-12 09:06:46,619.619 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 09:06:46,622.622 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 09:06:46,625.625 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 09:06:48,668.668 INFO    ] ================================================
[2026-06-12 09:06:48,683.683 INFO    ] Launching Daemon at Fri Jun 12 09:06:48 IST 2026
[2026-06-12 09:06:48,694.694 INFO    ] ================================================
[2026-06-12 09:06:49,038.038 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 09:06:49
[2026-06-12 09:06:49,353.353 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 09:06:49,489.489 INFO    ] Initializing speech engine...
[2026-06-12 09:06:49,502.502 INFO    ] 2026-06-12 09:06:49
[2026-06-12 09:06:49,721.721 INFO    ] 2026-06-12 09:06:49
[2026-06-12 09:06:49,752.752 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 09:06:49,950.950 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 09:06:49,953.953 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 09:06:50,094.094 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 09:06:50,150.150 INFO    ] time= 12/06/2026 09:06:50
[2026-06-12 09:06:50,179.179 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 09:06:50,202.202 INFO    ] Checking for existing commands in stream...
[2026-06-12 09:06:50,278.278 INFO    ] No existing commands found in stream
[2026-06-12 09:06:55,288.288 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 09:06:55,291.291 INFO    ] Waiting 3.25 seconds before fallback handling...
[2026-06-12 09:06:58,883.883 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 09:06:58,884.884 INFO    ] Checking for system updates...
[2026-06-12 09:06:58,906.906 INFO    ] 200
[2026-06-12 09:06:58,907.907 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:06:58,938.938 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 09:06:58,939.939 INFO    ] No update needed
[2026-06-12 09:06:58,940.940 INFO    ] Checking for camera pi updates...
[2026-06-12 09:06:58,960.960 INFO    ] 200
[2026-06-12 09:06:58,961.961 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:06:58,984.984 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 09:06:59,029.029 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 09:06:59,031.031 INFO    ] No camera update needed
[2026-06-12 09:06:59,032.032 INFO    ] Script finished. Safe exiting...
[2026-06-12 09:06:59,033.033 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 09:06:59,036.036 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 09:06:59,039.039 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 09:07:01,078.078 INFO    ] ================================================
[2026-06-12 09:07:01,093.093 INFO    ] Launching Daemon at Fri Jun 12 09:07:01 IST 2026
[2026-06-12 09:07:01,105.105 INFO    ] ================================================
[2026-06-12 09:07:01,446.446 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 09:07:01
[2026-06-12 09:07:01,758.758 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 09:07:01,887.887 INFO    ] Initializing speech engine...
[2026-06-12 09:07:01,892.892 INFO    ] 2026-06-12 09:07:01
[2026-06-12 09:07:02,101.101 INFO    ] 2026-06-12 09:07:02
[2026-06-12 09:07:02,135.135 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 09:07:02,311.311 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 09:07:02,313.313 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 09:07:02,452.452 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 09:07:02,486.486 INFO    ] time= 12/06/2026 09:07:02
[2026-06-12 09:07:02,535.535 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 09:07:02,548.548 INFO    ] Checking for existing commands in stream...
[2026-06-12 09:07:02,688.688 INFO    ] No existing commands found in stream
[2026-06-12 09:07:07,714.714 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 09:07:07,716.716 INFO    ] Waiting 2.88 seconds before fallback handling...
[2026-06-12 09:07:10,938.938 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 09:07:10,939.939 INFO    ] Checking for system updates...
[2026-06-12 09:07:10,960.960 INFO    ] 200
[2026-06-12 09:07:10,962.962 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:07:10,995.995 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 09:07:10,996.996 INFO    ] No update needed
[2026-06-12 09:07:10,997.997 INFO    ] Checking for camera pi updates...
[2026-06-12 09:07:11,019.019 INFO    ] 200
[2026-06-12 09:07:11,021.021 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:07:11,045.045 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 09:07:11,183.183 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 09:07:11,185.185 INFO    ] No camera update needed
[2026-06-12 09:07:11,196.196 INFO    ] Script finished. Safe exiting...
[2026-06-12 09:07:11,197.197 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 09:07:11,200.200 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 09:07:11,204.204 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 09:07:13,243.243 INFO    ] ================================================
[2026-06-12 09:07:13,258.258 INFO    ] Launching Daemon at Fri Jun 12 09:07:13 IST 2026
[2026-06-12 09:07:13,269.269 INFO    ] ================================================
[2026-06-12 09:07:13,620.620 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 09:07:13
[2026-06-12 09:07:13,937.937 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 09:07:14,077.077 INFO    ] Initializing speech engine...
[2026-06-12 09:07:14,087.087 INFO    ] 2026-06-12 09:07:14
[2026-06-12 09:07:14,294.294 INFO    ] 2026-06-12 09:07:14
[2026-06-12 09:07:14,322.322 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 09:07:14,507.507 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 09:07:14,519.519 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 09:07:14,646.646 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 09:07:14,715.715 INFO    ] time= 12/06/2026 09:07:14
[2026-06-12 09:07:14,739.739 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 09:07:14,745.745 INFO    ] Checking for existing commands in stream...
[2026-06-12 09:07:14,812.812 INFO    ] No existing commands found in stream
[2026-06-12 09:07:19,820.820 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 09:07:19,822.822 INFO    ] Waiting 2.65 seconds before fallback handling...
[2026-06-12 09:07:22,783.783 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 09:07:22,784.784 INFO    ] Checking for system updates...
[2026-06-12 09:07:22,806.806 INFO    ] 200
[2026-06-12 09:07:22,808.808 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:07:22,838.838 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 09:07:22,839.839 INFO    ] No update needed
[2026-06-12 09:07:22,841.841 INFO    ] Checking for camera pi updates...
[2026-06-12 09:07:22,862.862 INFO    ] 200
[2026-06-12 09:07:22,863.863 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:07:22,887.887 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 09:07:22,924.924 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 09:07:22,925.925 INFO    ] No camera update needed
[2026-06-12 09:07:22,926.926 INFO    ] Script finished. Safe exiting...
[2026-06-12 09:07:22,928.928 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 09:07:22,932.932 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 09:07:22,935.935 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 09:07:24,975.975 INFO    ] ================================================
[2026-06-12 09:07:24,991.991 INFO    ] Launching Daemon at Fri Jun 12 09:07:24 IST 2026
[2026-06-12 09:07:25,002.002 INFO    ] ================================================
[2026-06-12 09:07:25,373.373 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 09:07:25
[2026-06-12 09:07:25,686.686 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 09:07:25,829.829 INFO    ] Initializing speech engine...
[2026-06-12 09:07:25,833.833 INFO    ] 2026-06-12 09:07:25
[2026-06-12 09:07:26,038.038 INFO    ] 2026-06-12 09:07:26
[2026-06-12 09:07:26,066.066 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 09:07:26,250.250 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 09:07:26,259.259 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 09:07:26,389.389 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 09:07:26,447.447 INFO    ] time= 12/06/2026 09:07:26
[2026-06-12 09:07:26,480.480 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 09:07:26,486.486 INFO    ] Checking for existing commands in stream...
[2026-06-12 09:07:26,577.577 INFO    ] No existing commands found in stream
[2026-06-12 09:07:31,591.591 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 09:07:31,594.594 INFO    ] Waiting 2.20 seconds before fallback handling...
[2026-06-12 09:07:34,165.165 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 09:07:34,166.166 INFO    ] Checking for system updates...
[2026-06-12 09:07:34,187.187 INFO    ] 200
[2026-06-12 09:07:34,188.188 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:07:34,221.221 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 09:07:34,222.222 INFO    ] No update needed
[2026-06-12 09:07:34,223.223 INFO    ] Checking for camera pi updates...
[2026-06-12 09:07:34,243.243 INFO    ] 200
[2026-06-12 09:07:34,244.244 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:07:34,269.269 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 09:07:34,303.303 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 09:07:34,304.304 INFO    ] No camera update needed
[2026-06-12 09:07:34,305.305 INFO    ] Script finished. Safe exiting...
[2026-06-12 09:07:34,307.307 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 09:07:34,309.309 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 09:07:34,312.312 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 09:07:36,353.353 INFO    ] ================================================
[2026-06-12 09:07:36,368.368 INFO    ] Launching Daemon at Fri Jun 12 09:07:36 IST 2026
[2026-06-12 09:07:36,379.379 INFO    ] ================================================
[2026-06-12 09:07:36,710.710 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 09:07:36
[2026-06-12 09:07:37,025.025 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 09:07:37,168.168 INFO    ] Initializing speech engine...
[2026-06-12 09:07:37,172.172 INFO    ] 2026-06-12 09:07:37
[2026-06-12 09:07:37,380.380 INFO    ] 2026-06-12 09:07:37
[2026-06-12 09:07:37,409.409 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 09:07:37,532.532 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 09:07:37,576.576 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 09:07:37,741.741 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 09:07:37,809.809 INFO    ] time= 12/06/2026 09:07:37
[2026-06-12 09:07:37,834.834 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 09:07:37,840.840 INFO    ] Checking for existing commands in stream...
[2026-06-12 09:07:37,933.933 INFO    ] No existing commands found in stream
[2026-06-12 09:07:42,942.942 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 09:07:42,944.944 INFO    ] Waiting 1.04 seconds before fallback handling...
[2026-06-12 09:07:44,329.329 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 09:07:44,330.330 INFO    ] Checking for system updates...
[2026-06-12 09:07:44,352.352 INFO    ] 200
[2026-06-12 09:07:44,353.353 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:07:44,383.383 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 09:07:44,384.384 INFO    ] No update needed
[2026-06-12 09:07:44,386.386 INFO    ] Checking for camera pi updates...
[2026-06-12 09:07:44,405.405 INFO    ] 200
[2026-06-12 09:07:44,406.406 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:07:44,431.431 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 09:07:44,469.469 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 09:07:44,471.471 INFO    ] No camera update needed
[2026-06-12 09:07:44,472.472 INFO    ] Script finished. Safe exiting...
[2026-06-12 09:07:44,473.473 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 09:07:44,476.476 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 09:07:44,479.479 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 09:07:46,519.519 INFO    ] ================================================
[2026-06-12 09:07:46,536.536 INFO    ] Launching Daemon at Fri Jun 12 09:07:46 IST 2026
[2026-06-12 09:07:46,547.547 INFO    ] ================================================
[2026-06-12 09:07:46,918.918 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 09:07:46
[2026-06-12 09:07:47,234.234 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 09:07:47,368.368 INFO    ] Initializing speech engine...
[2026-06-12 09:07:47,372.372 INFO    ] 2026-06-12 09:07:47
[2026-06-12 09:07:47,575.575 INFO    ] 2026-06-12 09:07:47
[2026-06-12 09:07:47,607.607 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 09:07:47,772.772 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 09:07:47,836.836 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 09:07:47,977.977 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 09:07:48,034.034 INFO    ] time= 12/06/2026 09:07:47
[2026-06-12 09:07:48,079.079 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 09:07:48,086.086 INFO    ] Checking for existing commands in stream...
[2026-06-12 09:07:48,189.189 INFO    ] No existing commands found in stream
[2026-06-12 09:07:53,199.199 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 09:07:53,202.202 INFO    ] Waiting 3.09 seconds before fallback handling...
[2026-06-12 09:07:56,653.653 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 09:07:56,654.654 INFO    ] Checking for system updates...
[2026-06-12 09:07:56,675.675 INFO    ] 200
[2026-06-12 09:07:56,676.676 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:07:56,711.711 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 09:07:56,712.712 INFO    ] No update needed
[2026-06-12 09:07:56,714.714 INFO    ] Checking for camera pi updates...
[2026-06-12 09:07:56,734.734 INFO    ] 200
[2026-06-12 09:07:56,735.735 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:07:56,760.760 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 09:07:56,795.795 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 09:07:56,796.796 INFO    ] No camera update needed
[2026-06-12 09:07:56,798.798 INFO    ] Script finished. Safe exiting...
[2026-06-12 09:07:56,799.799 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 09:07:56,802.802 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 09:07:56,805.805 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 09:07:58,845.845 INFO    ] ================================================
[2026-06-12 09:07:58,861.861 INFO    ] Launching Daemon at Fri Jun 12 09:07:58 IST 2026
[2026-06-12 09:07:58,872.872 INFO    ] ================================================
[2026-06-12 09:07:59,262.262 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 09:07:59
[2026-06-12 09:07:59,601.601 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 09:07:59,743.743 INFO    ] Initializing speech engine...
[2026-06-12 09:07:59,750.750 INFO    ] 2026-06-12 09:07:59
[2026-06-12 09:07:59,968.968 INFO    ] 2026-06-12 09:07:59
[2026-06-12 09:07:59,998.998 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 09:08:00,186.186 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 09:08:00,195.195 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 09:08:00,327.327 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 09:08:00,391.391 INFO    ] time= 12/06/2026 09:08:00
[2026-06-12 09:08:00,420.420 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 09:08:00,427.427 INFO    ] Checking for existing commands in stream...
[2026-06-12 09:08:00,518.518 INFO    ] No existing commands found in stream
[2026-06-12 09:08:05,533.533 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 09:08:05,536.536 INFO    ] Waiting 3.66 seconds before fallback handling...
[2026-06-12 09:08:09,567.567 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 09:08:09,568.568 INFO    ] Checking for system updates...
[2026-06-12 09:08:09,589.589 INFO    ] 200
[2026-06-12 09:08:09,591.591 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:08:09,621.621 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 09:08:09,622.622 INFO    ] No update needed
[2026-06-12 09:08:09,624.624 INFO    ] Checking for camera pi updates...
[2026-06-12 09:08:09,643.643 INFO    ] 200
[2026-06-12 09:08:09,644.644 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:08:09,667.667 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 09:08:09,703.703 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 09:08:09,704.704 INFO    ] No camera update needed
[2026-06-12 09:08:09,705.705 INFO    ] Script finished. Safe exiting...
[2026-06-12 09:08:09,707.707 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 09:08:09,709.709 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 09:08:09,712.712 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 09:08:11,751.751 INFO    ] ================================================
[2026-06-12 09:08:11,766.766 INFO    ] Launching Daemon at Fri Jun 12 09:08:11 IST 2026
[2026-06-12 09:08:11,777.777 INFO    ] ================================================
[2026-06-12 09:08:12,114.114 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 09:08:12
[2026-06-12 09:08:12,432.432 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 09:08:12,576.576 INFO    ] Initializing speech engine...
[2026-06-12 09:08:12,581.581 INFO    ] 2026-06-12 09:08:12
[2026-06-12 09:08:12,784.784 INFO    ] 2026-06-12 09:08:12
[2026-06-12 09:08:12,812.812 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 09:08:12,998.998 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 09:08:13,007.007 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 09:08:13,136.136 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 09:08:13,195.195 INFO    ] time= 12/06/2026 09:08:13
[2026-06-12 09:08:13,227.227 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 09:08:13,234.234 INFO    ] Checking for existing commands in stream...
[2026-06-12 09:08:13,300.300 INFO    ] No existing commands found in stream
[2026-06-12 09:08:18,320.320 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 09:08:18,341.341 INFO    ] Waiting 0.31 seconds before fallback handling...
[2026-06-12 09:08:19,012.012 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 09:08:19,013.013 INFO    ] Checking for system updates...
[2026-06-12 09:08:19,035.035 INFO    ] 200
[2026-06-12 09:08:19,036.036 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:08:19,070.070 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 09:08:19,071.071 INFO    ] No update needed
[2026-06-12 09:08:19,072.072 INFO    ] Checking for camera pi updates...
[2026-06-12 09:08:19,092.092 INFO    ] 200
[2026-06-12 09:08:19,093.093 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:08:19,118.118 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 09:08:19,154.154 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 09:08:19,156.156 INFO    ] No camera update needed
[2026-06-12 09:08:19,157.157 INFO    ] Script finished. Safe exiting...
[2026-06-12 09:08:19,158.158 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 09:08:19,161.161 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 09:08:19,166.166 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 09:08:21,198.198 INFO    ] ================================================
[2026-06-12 09:08:21,214.214 INFO    ] Launching Daemon at Fri Jun 12 09:08:21 IST 2026
[2026-06-12 09:08:21,224.224 INFO    ] ================================================
[2026-06-12 09:08:21,565.565 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 09:08:21
[2026-06-12 09:08:21,885.885 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 09:08:22,028.028 INFO    ] Initializing speech engine...
[2026-06-12 09:08:22,037.037 INFO    ] 2026-06-12 09:08:22
[2026-06-12 09:08:22,258.258 INFO    ] 2026-06-12 09:08:22
[2026-06-12 09:08:22,290.290 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 09:08:22,459.459 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 09:08:22,576.576 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 09:08:22,735.735 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 09:08:22,985.985 INFO    ] time= 12/06/2026 09:08:22
[2026-06-12 09:08:22,988.988 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 09:08:22,991.991 INFO    ] Checking for existing commands in stream...
[2026-06-12 09:08:23,130.130 INFO    ] No existing commands found in stream
[2026-06-12 09:08:28,144.144 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 09:08:28,147.147 INFO    ] Waiting 2.98 seconds before fallback handling...
[2026-06-12 09:08:31,530.530 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 09:08:31,532.532 INFO    ] Checking for system updates...
[2026-06-12 09:08:31,558.558 INFO    ] 200
[2026-06-12 09:08:31,559.559 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:08:31,595.595 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 09:08:31,597.597 INFO    ] No update needed
[2026-06-12 09:08:31,598.598 INFO    ] Checking for camera pi updates...
[2026-06-12 09:08:31,624.624 INFO    ] 200
[2026-06-12 09:08:31,626.626 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:08:31,659.659 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 09:08:31,685.685 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 09:08:31,687.687 INFO    ] No camera update needed
[2026-06-12 09:08:31,688.688 INFO    ] Script finished. Safe exiting...
[2026-06-12 09:08:31,690.690 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 09:08:31,694.694 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 09:08:31,697.697 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 09:08:33,737.737 INFO    ] ================================================
[2026-06-12 09:08:33,752.752 INFO    ] Launching Daemon at Fri Jun 12 09:08:33 IST 2026
[2026-06-12 09:08:33,764.764 INFO    ] ================================================
[2026-06-12 09:08:34,137.137 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 09:08:34
[2026-06-12 09:08:34,475.475 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 09:08:34,626.626 INFO    ] Initializing speech engine...
[2026-06-12 09:08:34,632.632 INFO    ] 2026-06-12 09:08:34
[2026-06-12 09:08:34,841.841 INFO    ] 2026-06-12 09:08:34
[2026-06-12 09:08:34,869.869 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 09:08:35,055.055 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 09:08:35,064.064 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 09:08:35,193.193 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 09:08:35,251.251 INFO    ] time= 12/06/2026 09:08:35
[2026-06-12 09:08:35,289.289 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 09:08:35,295.295 INFO    ] Checking for existing commands in stream...
[2026-06-12 09:08:35,363.363 INFO    ] No existing commands found in stream
[2026-06-12 09:08:40,377.377 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 09:08:40,381.381 INFO    ] Waiting 0.95 seconds before fallback handling...
[2026-06-12 09:08:41,705.705 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 09:08:41,706.706 INFO    ] Checking for system updates...
[2026-06-12 09:08:41,727.727 INFO    ] 200
[2026-06-12 09:08:41,729.729 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:08:41,763.763 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 09:08:41,764.764 INFO    ] No update needed
[2026-06-12 09:08:41,765.765 INFO    ] Checking for camera pi updates...
[2026-06-12 09:08:41,785.785 INFO    ] 200
[2026-06-12 09:08:41,787.787 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:08:41,812.812 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 09:08:41,851.851 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 09:08:41,852.852 INFO    ] No camera update needed
[2026-06-12 09:08:41,854.854 INFO    ] Script finished. Safe exiting...
[2026-06-12 09:08:41,855.855 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 09:08:41,858.858 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 09:08:41,861.861 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 09:08:43,901.901 INFO    ] ================================================
[2026-06-12 09:08:43,916.916 INFO    ] Launching Daemon at Fri Jun 12 09:08:43 IST 2026
[2026-06-12 09:08:43,928.928 INFO    ] ================================================
[2026-06-12 09:08:44,289.289 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 09:08:44
[2026-06-12 09:08:44,627.627 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 09:08:44,779.779 INFO    ] Initializing speech engine...
[2026-06-12 09:08:44,785.785 INFO    ] 2026-06-12 09:08:44
[2026-06-12 09:08:44,997.997 INFO    ] 2026-06-12 09:08:44
[2026-06-12 09:08:45,026.026 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 09:08:45,212.212 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 09:08:45,216.216 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 09:08:45,347.347 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 09:08:45,408.408 INFO    ] time= 12/06/2026 09:08:45
[2026-06-12 09:08:45,440.440 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 09:08:45,455.455 INFO    ] Checking for existing commands in stream...
[2026-06-12 09:08:45,524.524 INFO    ] No existing commands found in stream
[2026-06-12 09:08:50,533.533 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 09:08:50,536.536 INFO    ] Waiting 0.28 seconds before fallback handling...
[2026-06-12 09:08:51,206.206 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 09:08:51,208.208 INFO    ] Checking for system updates...
[2026-06-12 09:08:51,230.230 INFO    ] 200
[2026-06-12 09:08:51,232.232 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:08:51,265.265 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 09:08:51,266.266 INFO    ] No update needed
[2026-06-12 09:08:51,267.267 INFO    ] Checking for camera pi updates...
[2026-06-12 09:08:51,291.291 INFO    ] 200
[2026-06-12 09:08:51,292.292 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:08:51,316.316 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 09:08:51,356.356 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 09:08:51,358.358 INFO    ] No camera update needed
[2026-06-12 09:08:51,359.359 INFO    ] Script finished. Safe exiting...
[2026-06-12 09:08:51,361.361 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 09:08:51,364.364 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 09:08:51,367.367 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 09:08:53,405.405 INFO    ] ================================================
[2026-06-12 09:08:53,421.421 INFO    ] Launching Daemon at Fri Jun 12 09:08:53 IST 2026
[2026-06-12 09:08:53,433.433 INFO    ] ================================================
[2026-06-12 09:08:53,806.806 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 09:08:53
[2026-06-12 09:08:54,144.144 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 09:08:54,297.297 INFO    ] Initializing speech engine...
[2026-06-12 09:08:54,301.301 INFO    ] 2026-06-12 09:08:54
[2026-06-12 09:08:54,508.508 INFO    ] 2026-06-12 09:08:54
[2026-06-12 09:08:54,537.537 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 09:08:54,664.664 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 09:08:54,722.722 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 09:08:54,859.859 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 09:08:54,926.926 INFO    ] time= 12/06/2026 09:08:54
[2026-06-12 09:08:54,951.951 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 09:08:54,957.957 INFO    ] Checking for existing commands in stream...
[2026-06-12 09:08:55,047.047 INFO    ] No existing commands found in stream
[2026-06-12 09:09:00,062.062 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 09:09:00,065.065 INFO    ] Waiting 2.60 seconds before fallback handling...
[2026-06-12 09:09:02,990.990 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 09:09:02,993.993 INFO    ] Checking for system updates...
[2026-06-12 09:09:03,030.030 INFO    ] 200
[2026-06-12 09:09:03,033.033 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:09:03,088.088 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 09:09:03,091.091 INFO    ] No update needed
[2026-06-12 09:09:03,094.094 INFO    ] Checking for camera pi updates...
[2026-06-12 09:09:03,128.128 INFO    ] 200
[2026-06-12 09:09:03,131.131 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:09:03,188.188 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 09:09:03,214.214 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 09:09:03,216.216 INFO    ] No camera update needed
[2026-06-12 09:09:03,218.218 INFO    ] Script finished. Safe exiting...
[2026-06-12 09:09:03,220.220 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 09:09:03,223.223 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 09:09:03,226.226 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 09:09:05,264.264 INFO    ] ================================================
[2026-06-12 09:09:05,279.279 INFO    ] Launching Daemon at Fri Jun 12 09:09:05 IST 2026
[2026-06-12 09:09:05,290.290 INFO    ] ================================================
[2026-06-12 09:09:05,696.696 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 09:09:05
[2026-06-12 09:09:06,034.034 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 09:09:06,186.186 INFO    ] Initializing speech engine...
[2026-06-12 09:09:06,192.192 INFO    ] 2026-06-12 09:09:06
[2026-06-12 09:09:06,402.402 INFO    ] 2026-06-12 09:09:06
[2026-06-12 09:09:06,431.431 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 09:09:06,617.617 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 09:09:06,621.621 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 09:09:06,765.765 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 09:09:06,828.828 INFO    ] time= 12/06/2026 09:09:06
[2026-06-12 09:09:06,853.853 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 09:09:06,859.859 INFO    ] Checking for existing commands in stream...
[2026-06-12 09:09:06,928.928 INFO    ] No existing commands found in stream
[2026-06-12 09:09:11,937.937 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 09:09:11,940.940 INFO    ] Waiting 0.45 seconds before fallback handling...
[2026-06-12 09:09:12,759.759 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 09:09:12,761.761 INFO    ] Checking for system updates...
[2026-06-12 09:09:12,782.782 INFO    ] 200
[2026-06-12 09:09:12,783.783 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:09:12,816.816 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 09:09:12,817.817 INFO    ] No update needed
[2026-06-12 09:09:12,818.818 INFO    ] Checking for camera pi updates...
[2026-06-12 09:09:12,840.840 INFO    ] 200
[2026-06-12 09:09:12,842.842 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:09:12,865.865 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 09:09:12,894.894 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 09:09:12,895.895 INFO    ] No camera update needed
[2026-06-12 09:09:12,896.896 INFO    ] Script finished. Safe exiting...
[2026-06-12 09:09:12,898.898 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 09:09:12,901.901 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 09:09:12,903.903 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 09:09:14,942.942 INFO    ] ================================================
[2026-06-12 09:09:14,957.957 INFO    ] Launching Daemon at Fri Jun 12 09:09:14 IST 2026
[2026-06-12 09:09:14,967.967 INFO    ] ================================================
[2026-06-12 09:09:15,291.291 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 09:09:15
[2026-06-12 09:09:15,602.602 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 09:09:15,732.732 INFO    ] Initializing speech engine...
[2026-06-12 09:09:15,737.737 INFO    ] 2026-06-12 09:09:15
[2026-06-12 09:09:15,954.954 INFO    ] 2026-06-12 09:09:15
[2026-06-12 09:09:15,983.983 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 09:09:16,168.168 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 09:09:16,171.171 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 09:09:16,305.305 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 09:09:16,363.363 INFO    ] time= 12/06/2026 09:09:16
[2026-06-12 09:09:16,401.401 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 09:09:16,407.407 INFO    ] Checking for existing commands in stream...
[2026-06-12 09:09:16,475.475 INFO    ] No existing commands found in stream
[2026-06-12 09:09:21,484.484 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 09:09:21,487.487 INFO    ] Waiting 0.92 seconds before fallback handling...
[2026-06-12 09:09:22,748.748 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 09:09:22,750.750 INFO    ] Checking for system updates...
[2026-06-12 09:09:22,772.772 INFO    ] 200
[2026-06-12 09:09:22,773.773 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:09:22,803.803 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 09:09:22,804.804 INFO    ] No update needed
[2026-06-12 09:09:22,806.806 INFO    ] Checking for camera pi updates...
[2026-06-12 09:09:22,826.826 INFO    ] 200
[2026-06-12 09:09:22,828.828 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:09:22,853.853 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 09:09:22,993.993 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 09:09:22,995.995 INFO    ] No camera update needed
[2026-06-12 09:09:22,996.996 INFO    ] Script finished. Safe exiting...
[2026-06-12 09:09:22,998.998 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 09:09:23,001.001 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 09:09:23,004.004 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 09:09:25,049.049 INFO    ] ================================================
[2026-06-12 09:09:25,064.064 INFO    ] Launching Daemon at Fri Jun 12 09:09:25 IST 2026
[2026-06-12 09:09:25,075.075 INFO    ] ================================================
[2026-06-12 09:09:25,425.425 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 09:09:25
[2026-06-12 09:09:25,737.737 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 09:09:25,880.880 INFO    ] Initializing speech engine...
[2026-06-12 09:09:25,884.884 INFO    ] 2026-06-12 09:09:25
[2026-06-12 09:09:26,089.089 INFO    ] 2026-06-12 09:09:26
[2026-06-12 09:09:26,118.118 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 09:09:26,303.303 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 09:09:26,307.307 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 09:09:26,446.446 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 09:09:26,513.513 INFO    ] time= 12/06/2026 09:09:26
[2026-06-12 09:09:26,538.538 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 09:09:26,544.544 INFO    ] Checking for existing commands in stream...
[2026-06-12 09:09:26,637.637 INFO    ] No existing commands found in stream
[2026-06-12 09:09:31,651.651 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 09:09:31,655.655 INFO    ] Waiting 2.52 seconds before fallback handling...
[2026-06-12 09:09:34,553.553 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 09:09:34,554.554 INFO    ] Checking for system updates...
[2026-06-12 09:09:34,575.575 INFO    ] 200
[2026-06-12 09:09:34,577.577 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:09:34,607.607 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 09:09:34,608.608 INFO    ] No update needed
[2026-06-12 09:09:34,610.610 INFO    ] Checking for camera pi updates...
[2026-06-12 09:09:34,630.630 INFO    ] 200
[2026-06-12 09:09:34,631.631 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:09:34,655.655 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 09:09:34,688.688 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 09:09:34,690.690 INFO    ] No camera update needed
[2026-06-12 09:09:34,691.691 INFO    ] Script finished. Safe exiting...
[2026-06-12 09:09:34,692.692 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 09:09:34,696.696 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 09:09:34,699.699 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 09:09:36,738.738 INFO    ] ================================================
[2026-06-12 09:09:36,754.754 INFO    ] Launching Daemon at Fri Jun 12 09:09:36 IST 2026
[2026-06-12 09:09:36,765.765 INFO    ] ================================================
[2026-06-12 09:09:37,110.110 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 09:09:37
[2026-06-12 09:09:37,420.420 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 09:09:37,552.552 INFO    ] Initializing speech engine...
[2026-06-12 09:09:37,557.557 INFO    ] 2026-06-12 09:09:37
[2026-06-12 09:09:37,786.786 INFO    ] 2026-06-12 09:09:37
[2026-06-12 09:09:37,817.817 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 09:09:37,959.959 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 09:09:38,016.016 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 09:09:38,157.157 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 09:09:38,208.208 INFO    ] time= 12/06/2026 09:09:38
[2026-06-12 09:09:38,242.242 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 09:09:38,264.264 INFO    ] Checking for existing commands in stream...
[2026-06-12 09:09:38,351.351 INFO    ] No existing commands found in stream
[2026-06-12 09:09:43,360.360 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 09:09:43,363.363 INFO    ] Waiting 0.33 seconds before fallback handling...
[2026-06-12 09:09:44,060.060 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 09:09:44,062.062 INFO    ] Checking for system updates...
[2026-06-12 09:09:44,083.083 INFO    ] 200
[2026-06-12 09:09:44,084.084 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:09:44,114.114 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 09:09:44,116.116 INFO    ] No update needed
[2026-06-12 09:09:44,117.117 INFO    ] Checking for camera pi updates...
[2026-06-12 09:09:44,137.137 INFO    ] 200
[2026-06-12 09:09:44,138.138 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:09:44,162.162 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 09:09:44,200.200 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 09:09:44,202.202 INFO    ] No camera update needed
[2026-06-12 09:09:44,203.203 INFO    ] Script finished. Safe exiting...
[2026-06-12 09:09:44,204.204 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 09:09:44,208.208 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 09:09:44,211.211 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 09:09:46,251.251 INFO    ] ================================================
[2026-06-12 09:09:46,266.266 INFO    ] Launching Daemon at Fri Jun 12 09:09:46 IST 2026
[2026-06-12 09:09:46,278.278 INFO    ] ================================================
[2026-06-12 09:09:46,623.623 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 09:09:46
[2026-06-12 09:09:46,942.942 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 09:09:47,095.095 INFO    ] Initializing speech engine...
[2026-06-12 09:09:47,101.101 INFO    ] 2026-06-12 09:09:47
[2026-06-12 09:09:47,312.312 INFO    ] 2026-06-12 09:09:47
[2026-06-12 09:09:47,342.342 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 09:09:47,529.529 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 09:09:47,533.533 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 09:09:47,678.678 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 09:09:47,741.741 INFO    ] time= 12/06/2026 09:09:47
[2026-06-12 09:09:47,766.766 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 09:09:47,772.772 INFO    ] Checking for existing commands in stream...
[2026-06-12 09:09:47,840.840 INFO    ] No existing commands found in stream
[2026-06-12 09:09:52,849.849 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 09:09:52,853.853 INFO    ] Waiting 1.22 seconds before fallback handling...
[2026-06-12 09:09:54,446.446 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 09:09:54,448.448 INFO    ] Checking for system updates...
[2026-06-12 09:09:54,468.468 INFO    ] 200
[2026-06-12 09:09:54,470.470 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:09:54,504.504 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 09:09:54,506.506 INFO    ] No update needed
[2026-06-12 09:09:54,507.507 INFO    ] Checking for camera pi updates...
[2026-06-12 09:09:54,529.529 INFO    ] 200
[2026-06-12 09:09:54,531.531 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:09:54,554.554 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 09:09:54,592.592 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 09:09:54,594.594 INFO    ] No camera update needed
[2026-06-12 09:09:54,595.595 INFO    ] Script finished. Safe exiting...
[2026-06-12 09:09:54,596.596 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 09:09:54,600.600 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 09:09:54,603.603 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 09:09:56,642.642 INFO    ] ================================================
[2026-06-12 09:09:56,657.657 INFO    ] Launching Daemon at Fri Jun 12 09:09:56 IST 2026
[2026-06-12 09:09:56,668.668 INFO    ] ================================================
[2026-06-12 09:09:57,043.043 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 09:09:57
[2026-06-12 09:09:57,384.384 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 09:09:57,535.535 INFO    ] Initializing speech engine...
[2026-06-12 09:09:57,540.540 INFO    ] 2026-06-12 09:09:57
[2026-06-12 09:09:57,749.749 INFO    ] 2026-06-12 09:09:57
[2026-06-12 09:09:57,778.778 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 09:09:57,963.963 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 09:09:57,966.966 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 09:09:58,104.104 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 09:09:58,172.172 INFO    ] time= 12/06/2026 09:09:58
[2026-06-12 09:09:58,195.195 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 09:09:58,202.202 INFO    ] Checking for existing commands in stream...
[2026-06-12 09:09:58,269.269 INFO    ] No existing commands found in stream
[2026-06-12 09:10:03,288.288 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 09:10:03,291.291 INFO    ] Waiting 1.35 seconds before fallback handling...
[2026-06-12 09:10:08,373.373 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 09:10:08,376.376 INFO    ] Checking for system updates...
[2026-06-12 09:10:08,417.417 INFO    ] 200
[2026-06-12 09:10:08,422.422 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:10:08,487.487 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 09:10:08,490.490 INFO    ] No update needed
[2026-06-12 09:10:08,492.492 INFO    ] Checking for camera pi updates...
[2026-06-12 09:10:08,516.516 INFO    ] 200
[2026-06-12 09:10:08,517.517 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:10:08,540.540 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 09:10:08,576.576 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 09:10:08,577.577 INFO    ] No camera update needed
[2026-06-12 09:10:08,579.579 INFO    ] Script finished. Safe exiting...
[2026-06-12 09:10:08,580.580 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 09:10:08,583.583 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 09:10:08,586.586 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 09:10:10,626.626 INFO    ] ================================================
[2026-06-12 09:10:10,643.643 INFO    ] Launching Daemon at Fri Jun 12 09:10:10 IST 2026
[2026-06-12 09:10:10,654.654 INFO    ] ================================================
[2026-06-12 09:10:11,026.026 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 09:10:11
[2026-06-12 09:10:11,340.340 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 09:10:11,471.471 INFO    ] Initializing speech engine...
[2026-06-12 09:10:11,479.479 INFO    ] 2026-06-12 09:10:11
[2026-06-12 09:10:11,695.695 INFO    ] 2026-06-12 09:10:11
[2026-06-12 09:10:11,723.723 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 09:10:11,909.909 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 09:10:11,913.913 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 09:10:12,051.051 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 09:10:12,118.118 INFO    ] time= 12/06/2026 09:10:12
[2026-06-12 09:10:12,142.142 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 09:10:12,149.149 INFO    ] Checking for existing commands in stream...
[2026-06-12 09:10:12,240.240 INFO    ] No existing commands found in stream
[2026-06-12 09:10:17,249.249 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 09:10:17,252.252 INFO    ] Waiting 2.58 seconds before fallback handling...
[2026-06-12 09:10:20,187.187 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 09:10:20,189.189 INFO    ] Checking for system updates...
[2026-06-12 09:10:20,209.209 INFO    ] 200
[2026-06-12 09:10:20,211.211 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:10:20,241.241 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 09:10:20,242.242 INFO    ] No update needed
[2026-06-12 09:10:20,244.244 INFO    ] Checking for camera pi updates...
[2026-06-12 09:10:20,263.263 INFO    ] 200
[2026-06-12 09:10:20,265.265 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:10:20,290.290 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 09:10:20,334.334 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 09:10:20,336.336 INFO    ] No camera update needed
[2026-06-12 09:10:20,337.337 INFO    ] Script finished. Safe exiting...
[2026-06-12 09:10:20,339.339 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 09:10:20,342.342 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 09:10:20,345.345 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 09:10:22,386.386 INFO    ] ================================================
[2026-06-12 09:10:22,402.402 INFO    ] Launching Daemon at Fri Jun 12 09:10:22 IST 2026
[2026-06-12 09:10:22,413.413 INFO    ] ================================================
[2026-06-12 09:10:22,747.747 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 09:10:22
[2026-06-12 09:10:23,071.071 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 09:10:23,222.222 INFO    ] Initializing speech engine...
[2026-06-12 09:10:23,227.227 INFO    ] 2026-06-12 09:10:23
[2026-06-12 09:10:23,436.436 INFO    ] 2026-06-12 09:10:23
[2026-06-12 09:10:23,465.465 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 09:10:23,650.650 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 09:10:23,653.653 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 09:10:23,786.786 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 09:10:23,843.843 INFO    ] time= 12/06/2026 09:10:23
[2026-06-12 09:10:23,881.881 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 09:10:23,883.883 INFO    ] Checking for existing commands in stream...
[2026-06-12 09:10:23,954.954 INFO    ] No existing commands found in stream
[2026-06-12 09:10:28,968.968 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 09:10:28,972.972 INFO    ] Waiting 2.49 seconds before fallback handling...
[2026-06-12 09:10:31,852.852 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 09:10:31,854.854 INFO    ] Checking for system updates...
[2026-06-12 09:10:31,877.877 INFO    ] 200
[2026-06-12 09:10:31,879.879 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:10:31,916.916 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 09:10:31,917.917 INFO    ] No update needed
[2026-06-12 09:10:31,919.919 INFO    ] Checking for camera pi updates...
[2026-06-12 09:10:31,942.942 INFO    ] 200
[2026-06-12 09:10:31,944.944 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:10:31,972.972 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 09:10:32,018.018 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 09:10:32,020.020 INFO    ] No camera update needed
[2026-06-12 09:10:32,021.021 INFO    ] Script finished. Safe exiting...
[2026-06-12 09:10:32,023.023 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 09:10:32,026.026 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 09:10:32,030.030 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 09:10:34,061.061 INFO    ] ================================================
[2026-06-12 09:10:34,078.078 INFO    ] Launching Daemon at Fri Jun 12 09:10:34 IST 2026
[2026-06-12 09:10:34,089.089 INFO    ] ================================================
[2026-06-12 09:10:34,456.456 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 09:10:34
[2026-06-12 09:10:34,774.774 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 09:10:34,922.922 INFO    ] Initializing speech engine...
[2026-06-12 09:10:34,927.927 INFO    ] 2026-06-12 09:10:34
[2026-06-12 09:10:35,143.143 INFO    ] 2026-06-12 09:10:35
[2026-06-12 09:10:35,174.174 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 09:10:35,346.346 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 09:10:35,374.374 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 09:10:35,513.513 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 09:10:35,569.569 INFO    ] time= 12/06/2026 09:10:35
[2026-06-12 09:10:35,602.602 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 09:10:35,619.619 INFO    ] Checking for existing commands in stream...
[2026-06-12 09:10:35,696.696 INFO    ] No existing commands found in stream
[2026-06-12 09:10:40,705.705 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 09:10:40,708.708 INFO    ] Waiting 2.75 seconds before fallback handling...
[2026-06-12 09:10:43,812.812 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 09:10:43,814.814 INFO    ] Checking for system updates...
[2026-06-12 09:10:43,835.835 INFO    ] 200
[2026-06-12 09:10:43,836.836 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:10:43,869.869 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 09:10:43,870.870 INFO    ] No update needed
[2026-06-12 09:10:43,872.872 INFO    ] Checking for camera pi updates...
[2026-06-12 09:10:43,892.892 INFO    ] 200
[2026-06-12 09:10:43,894.894 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:10:43,917.917 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 09:10:43,959.959 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 09:10:43,960.960 INFO    ] No camera update needed
[2026-06-12 09:10:43,962.962 INFO    ] Script finished. Safe exiting...
[2026-06-12 09:10:43,963.963 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 09:10:43,966.966 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 09:10:43,969.969 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 09:10:46,007.007 INFO    ] ================================================
[2026-06-12 09:10:46,022.022 INFO    ] Launching Daemon at Fri Jun 12 09:10:46 IST 2026
[2026-06-12 09:10:46,033.033 INFO    ] ================================================
[2026-06-12 09:10:46,373.373 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 09:10:46
[2026-06-12 09:10:46,685.685 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 09:10:46,818.818 INFO    ] Initializing speech engine...
[2026-06-12 09:10:46,831.831 INFO    ] 2026-06-12 09:10:46
[2026-06-12 09:10:47,038.038 INFO    ] 2026-06-12 09:10:47
[2026-06-12 09:10:47,068.068 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 09:10:47,253.253 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 09:10:47,257.257 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 09:10:47,392.392 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 09:10:47,448.448 INFO    ] time= 12/06/2026 09:10:47
[2026-06-12 09:10:47,487.487 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 09:10:47,489.489 INFO    ] Checking for existing commands in stream...
[2026-06-12 09:10:47,561.561 INFO    ] No existing commands found in stream
[2026-06-12 09:10:52,571.571 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 09:10:52,574.574 INFO    ] Waiting 0.67 seconds before fallback handling...
[2026-06-12 09:10:53,602.602 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 09:10:53,603.603 INFO    ] Checking for system updates...
[2026-06-12 09:10:53,629.629 INFO    ] 200
[2026-06-12 09:10:53,630.630 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:10:53,662.662 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 09:10:53,664.664 INFO    ] No update needed
[2026-06-12 09:10:53,665.665 INFO    ] Checking for camera pi updates...
[2026-06-12 09:10:53,685.685 INFO    ] 200
[2026-06-12 09:10:53,687.687 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:10:53,710.710 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 09:10:53,747.747 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 09:10:53,748.748 INFO    ] No camera update needed
[2026-06-12 09:10:53,750.750 INFO    ] Script finished. Safe exiting...
[2026-06-12 09:10:53,751.751 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 09:10:53,755.755 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 09:10:53,758.758 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 09:10:55,798.798 INFO    ] ================================================
[2026-06-12 09:10:55,813.813 INFO    ] Launching Daemon at Fri Jun 12 09:10:55 IST 2026
[2026-06-12 09:10:55,824.824 INFO    ] ================================================
[2026-06-12 09:10:56,217.217 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 09:10:56
[2026-06-12 09:10:56,554.554 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 09:10:56,706.706 INFO    ] Initializing speech engine...
[2026-06-12 09:10:56,712.712 INFO    ] 2026-06-12 09:10:56
[2026-06-12 09:10:56,918.918 INFO    ] 2026-06-12 09:10:56
[2026-06-12 09:10:56,947.947 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 09:10:57,131.131 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 09:10:57,135.135 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 09:10:57,282.282 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 09:10:57,339.339 INFO    ] time= 12/06/2026 09:10:57
[2026-06-12 09:10:57,363.363 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 09:10:57,365.365 INFO    ] Checking for existing commands in stream...
[2026-06-12 09:10:57,437.437 INFO    ] No existing commands found in stream
[2026-06-12 09:11:02,445.445 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 09:11:02,446.446 INFO    ] Waiting 2.60 seconds before fallback handling...
[2026-06-12 09:11:05,420.420 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 09:11:05,422.422 INFO    ] Checking for system updates...
[2026-06-12 09:11:05,443.443 INFO    ] 200
[2026-06-12 09:11:05,445.445 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:11:05,476.476 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 09:11:05,477.477 INFO    ] No update needed
[2026-06-12 09:11:05,479.479 INFO    ] Checking for camera pi updates...
[2026-06-12 09:11:05,499.499 INFO    ] 200
[2026-06-12 09:11:05,500.500 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:11:05,525.525 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 09:11:05,729.729 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 09:11:05,731.731 INFO    ] No camera update needed
[2026-06-12 09:11:05,732.732 INFO    ] Script finished. Safe exiting...
[2026-06-12 09:11:05,733.733 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 09:11:05,736.736 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 09:11:05,739.739 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 09:11:07,777.777 INFO    ] ================================================
[2026-06-12 09:11:07,793.793 INFO    ] Launching Daemon at Fri Jun 12 09:11:07 IST 2026
[2026-06-12 09:11:07,803.803 INFO    ] ================================================
[2026-06-12 09:11:08,197.197 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 09:11:08
[2026-06-12 09:11:08,533.533 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 09:11:08,683.683 INFO    ] Initializing speech engine...
[2026-06-12 09:11:08,689.689 INFO    ] 2026-06-12 09:11:08
[2026-06-12 09:11:08,893.893 INFO    ] 2026-06-12 09:11:08
[2026-06-12 09:11:08,921.921 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 09:11:09,104.104 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 09:11:09,108.108 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 09:11:09,243.243 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 09:11:09,302.302 INFO    ] time= 12/06/2026 09:11:09
[2026-06-12 09:11:09,334.334 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 09:11:09,340.340 INFO    ] Checking for existing commands in stream...
[2026-06-12 09:11:09,407.407 INFO    ] No existing commands found in stream
[2026-06-12 09:11:14,416.416 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 09:11:14,419.419 INFO    ] Waiting 0.51 seconds before fallback handling...
[2026-06-12 09:11:16,531.531 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 09:11:16,534.534 INFO    ] Checking for system updates...
[2026-06-12 09:11:16,569.569 INFO    ] 200
[2026-06-12 09:11:16,572.572 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:11:16,631.631 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 09:11:16,633.633 INFO    ] No update needed
[2026-06-12 09:11:16,634.634 INFO    ] Checking for camera pi updates...
[2026-06-12 09:11:16,654.654 INFO    ] 200
[2026-06-12 09:11:16,655.655 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:11:16,679.679 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 09:11:16,716.716 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 09:11:16,717.717 INFO    ] No camera update needed
[2026-06-12 09:11:16,719.719 INFO    ] Script finished. Safe exiting...
[2026-06-12 09:11:16,720.720 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 09:11:16,724.724 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 09:11:16,726.726 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 09:11:18,767.767 INFO    ] ================================================
[2026-06-12 09:11:18,782.782 INFO    ] Launching Daemon at Fri Jun 12 09:11:18 IST 2026
[2026-06-12 09:11:18,794.794 INFO    ] ================================================
[2026-06-12 09:11:19,155.155 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 09:11:19
[2026-06-12 09:11:19,466.466 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 09:11:19,599.599 INFO    ] Initializing speech engine...
[2026-06-12 09:11:19,609.609 INFO    ] 2026-06-12 09:11:19
[2026-06-12 09:11:19,835.835 INFO    ] 2026-06-12 09:11:19
[2026-06-12 09:11:19,865.865 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 09:11:20,001.001 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 09:11:20,064.064 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 09:11:20,211.211 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 09:11:20,269.269 INFO    ] time= 12/06/2026 09:11:20
[2026-06-12 09:11:20,309.309 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 09:11:20,321.321 INFO    ] Checking for existing commands in stream...
[2026-06-12 09:11:20,397.397 INFO    ] No existing commands found in stream
[2026-06-12 09:11:25,408.408 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 09:11:25,411.411 INFO    ] Waiting 0.28 seconds before fallback handling...
[2026-06-12 09:11:26,091.091 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 09:11:26,093.093 INFO    ] Checking for system updates...
[2026-06-12 09:11:26,114.114 INFO    ] 200
[2026-06-12 09:11:26,115.115 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:11:26,147.147 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 09:11:26,148.148 INFO    ] No update needed
[2026-06-12 09:11:26,149.149 INFO    ] Checking for camera pi updates...
[2026-06-12 09:11:26,169.169 INFO    ] 200
[2026-06-12 09:11:26,170.170 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:11:26,195.195 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 09:11:26,333.333 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 09:11:26,334.334 INFO    ] No camera update needed
[2026-06-12 09:11:26,336.336 INFO    ] Script finished. Safe exiting...
[2026-06-12 09:11:26,337.337 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 09:11:26,340.340 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 09:11:26,343.343 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 09:11:28,382.382 INFO    ] ================================================
[2026-06-12 09:11:28,397.397 INFO    ] Launching Daemon at Fri Jun 12 09:11:28 IST 2026
[2026-06-12 09:11:28,409.409 INFO    ] ================================================
[2026-06-12 09:11:28,752.752 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 09:11:28
[2026-06-12 09:11:29,066.066 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 09:11:29,197.197 INFO    ] Initializing speech engine...
[2026-06-12 09:11:29,201.201 INFO    ] 2026-06-12 09:11:29
[2026-06-12 09:11:29,417.417 INFO    ] 2026-06-12 09:11:29
[2026-06-12 09:11:29,445.445 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 09:11:29,577.577 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 09:11:29,630.630 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 09:11:29,760.760 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 09:11:29,810.810 INFO    ] time= 12/06/2026 09:11:29
[2026-06-12 09:11:29,855.855 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 09:11:29,860.860 INFO    ] Checking for existing commands in stream...
[2026-06-12 09:11:29,929.929 INFO    ] No existing commands found in stream
[2026-06-12 09:11:34,940.940 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 09:11:34,943.943 INFO    ] Waiting 3.05 seconds before fallback handling...
[2026-06-12 09:11:38,367.367 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 09:11:38,369.369 INFO    ] Checking for system updates...
[2026-06-12 09:11:38,390.390 INFO    ] 200
[2026-06-12 09:11:38,391.391 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:11:38,424.424 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 09:11:38,425.425 INFO    ] No update needed
[2026-06-12 09:11:38,426.426 INFO    ] Checking for camera pi updates...
[2026-06-12 09:11:38,446.446 INFO    ] 200
[2026-06-12 09:11:38,447.447 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:11:38,470.470 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 09:11:38,515.515 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 09:11:38,516.516 INFO    ] No camera update needed
[2026-06-12 09:11:38,517.517 INFO    ] Script finished. Safe exiting...
[2026-06-12 09:11:38,519.519 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 09:11:38,522.522 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 09:11:38,525.525 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 09:11:40,564.564 INFO    ] ================================================
[2026-06-12 09:11:40,581.581 INFO    ] Launching Daemon at Fri Jun 12 09:11:40 IST 2026
[2026-06-12 09:11:40,591.591 INFO    ] ================================================
[2026-06-12 09:11:40,947.947 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 09:11:40
[2026-06-12 09:11:41,289.289 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 09:11:41,444.444 INFO    ] Initializing speech engine...
[2026-06-12 09:11:41,449.449 INFO    ] 2026-06-12 09:11:41
[2026-06-12 09:11:41,657.657 INFO    ] 2026-06-12 09:11:41
[2026-06-12 09:11:41,685.685 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 09:11:41,871.871 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 09:11:41,880.880 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 09:11:42,007.007 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 09:11:42,074.074 INFO    ] time= 12/06/2026 09:11:42
[2026-06-12 09:11:42,101.101 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 09:11:42,108.108 INFO    ] Checking for existing commands in stream...
[2026-06-12 09:11:42,174.174 INFO    ] No existing commands found in stream
[2026-06-12 09:11:47,194.194 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 09:11:47,197.197 INFO    ] Waiting 3.93 seconds before fallback handling...
[2026-06-12 09:11:51,518.518 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 09:11:51,520.520 INFO    ] Checking for system updates...
[2026-06-12 09:11:51,541.541 INFO    ] 200
[2026-06-12 09:11:51,543.543 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:11:51,573.573 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 09:11:51,575.575 INFO    ] No update needed
[2026-06-12 09:11:51,576.576 INFO    ] Checking for camera pi updates...
[2026-06-12 09:11:51,598.598 INFO    ] 200
[2026-06-12 09:11:51,599.599 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:11:51,624.624 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 09:11:51,662.662 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 09:11:51,663.663 INFO    ] No camera update needed
[2026-06-12 09:11:51,665.665 INFO    ] Script finished. Safe exiting...
[2026-06-12 09:11:51,666.666 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 09:11:51,669.669 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 09:11:51,673.673 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 09:11:53,714.714 INFO    ] ================================================
[2026-06-12 09:11:53,730.730 INFO    ] Launching Daemon at Fri Jun 12 09:11:53 IST 2026
[2026-06-12 09:11:53,741.741 INFO    ] ================================================
[2026-06-12 09:11:54,089.089 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 09:11:54
[2026-06-12 09:11:54,430.430 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 09:11:54,584.584 INFO    ] Initializing speech engine...
[2026-06-12 09:11:54,588.588 INFO    ] 2026-06-12 09:11:54
[2026-06-12 09:11:54,796.796 INFO    ] 2026-06-12 09:11:54
[2026-06-12 09:11:54,825.825 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 09:11:55,009.009 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 09:11:55,019.019 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 09:11:55,142.142 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 09:11:55,198.198 INFO    ] time= 12/06/2026 09:11:55
[2026-06-12 09:11:55,232.232 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 09:11:55,247.247 INFO    ] Checking for existing commands in stream...
[2026-06-12 09:11:55,338.338 INFO    ] No existing commands found in stream
[2026-06-12 09:12:00,353.353 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 09:12:00,356.356 INFO    ] Waiting 2.74 seconds before fallback handling...
[2026-06-12 09:12:03,477.477 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 09:12:03,479.479 INFO    ] Checking for system updates...
[2026-06-12 09:12:03,500.500 INFO    ] 200
[2026-06-12 09:12:03,502.502 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:12:03,532.532 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 09:12:03,533.533 INFO    ] No update needed
[2026-06-12 09:12:03,535.535 INFO    ] Checking for camera pi updates...
[2026-06-12 09:12:03,556.556 INFO    ] 200
[2026-06-12 09:12:03,557.557 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:12:03,582.582 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 09:12:03,616.616 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 09:12:03,618.618 INFO    ] No camera update needed
[2026-06-12 09:12:03,619.619 INFO    ] Script finished. Safe exiting...
[2026-06-12 09:12:03,621.621 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 09:12:03,624.624 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 09:12:03,626.626 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 09:12:05,665.665 INFO    ] ================================================
[2026-06-12 09:12:05,681.681 INFO    ] Launching Daemon at Fri Jun 12 09:12:05 IST 2026
[2026-06-12 09:12:05,692.692 INFO    ] ================================================
[2026-06-12 09:12:06,048.048 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 09:12:06
[2026-06-12 09:12:06,386.386 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 09:12:06,536.536 INFO    ] Initializing speech engine...
[2026-06-12 09:12:06,542.542 INFO    ] 2026-06-12 09:12:06
[2026-06-12 09:12:06,749.749 INFO    ] 2026-06-12 09:12:06
[2026-06-12 09:12:06,778.778 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 09:12:06,961.961 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 09:12:06,971.971 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 09:12:07,100.100 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 09:12:07,166.166 INFO    ] time= 12/06/2026 09:12:07
[2026-06-12 09:12:07,191.191 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 09:12:07,197.197 INFO    ] Checking for existing commands in stream...
[2026-06-12 09:12:07,263.263 INFO    ] No existing commands found in stream
[2026-06-12 09:12:12,293.293 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 09:12:12,296.296 INFO    ] Waiting 1.28 seconds before fallback handling...
[2026-06-12 09:12:13,929.929 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 09:12:13,931.931 INFO    ] Checking for system updates...
[2026-06-12 09:12:13,953.953 INFO    ] 200
[2026-06-12 09:12:13,955.955 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:12:13,985.985 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 09:12:13,986.986 INFO    ] No update needed
[2026-06-12 09:12:13,987.987 INFO    ] Checking for camera pi updates...
[2026-06-12 09:12:14,008.008 INFO    ] 200
[2026-06-12 09:12:14,010.010 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:12:14,035.035 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 09:12:14,080.080 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 09:12:14,081.081 INFO    ] No camera update needed
[2026-06-12 09:12:14,083.083 INFO    ] Script finished. Safe exiting...
[2026-06-12 09:12:14,084.084 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 09:12:14,087.087 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 09:12:14,089.089 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 09:12:16,128.128 INFO    ] ================================================
[2026-06-12 09:12:16,144.144 INFO    ] Launching Daemon at Fri Jun 12 09:12:16 IST 2026
[2026-06-12 09:12:16,154.154 INFO    ] ================================================
[2026-06-12 09:12:16,492.492 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 09:12:16
[2026-06-12 09:12:16,803.803 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 09:12:16,933.933 INFO    ] Initializing speech engine...
[2026-06-12 09:12:16,936.936 INFO    ] 2026-06-12 09:12:16
[2026-06-12 09:12:17,152.152 INFO    ] 2026-06-12 09:12:17
[2026-06-12 09:12:17,181.181 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 09:12:17,364.364 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 09:12:17,383.383 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 09:12:17,508.508 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 09:12:17,570.570 INFO    ] time= 12/06/2026 09:12:17
[2026-06-12 09:12:17,594.594 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 09:12:17,600.600 INFO    ] Checking for existing commands in stream...
[2026-06-12 09:12:17,667.667 INFO    ] No existing commands found in stream
[2026-06-12 09:12:22,675.675 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 09:12:22,683.683 INFO    ] Waiting 1.65 seconds before fallback handling...
[2026-06-12 09:12:24,705.705 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 09:12:24,707.707 INFO    ] Checking for system updates...
[2026-06-12 09:12:24,727.727 INFO    ] 200
[2026-06-12 09:12:24,729.729 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:12:24,759.759 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 09:12:24,760.760 INFO    ] No update needed
[2026-06-12 09:12:24,762.762 INFO    ] Checking for camera pi updates...
[2026-06-12 09:12:24,781.781 INFO    ] 200
[2026-06-12 09:12:24,782.782 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:12:24,807.807 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 09:12:24,848.848 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 09:12:24,850.850 INFO    ] No camera update needed
[2026-06-12 09:12:24,851.851 INFO    ] Script finished. Safe exiting...
[2026-06-12 09:12:24,852.852 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 09:12:24,855.855 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 09:12:24,858.858 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 09:12:26,898.898 INFO    ] ================================================
[2026-06-12 09:12:26,913.913 INFO    ] Launching Daemon at Fri Jun 12 09:12:26 IST 2026
[2026-06-12 09:12:26,924.924 INFO    ] ================================================
[2026-06-12 09:12:27,278.278 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 09:12:27
[2026-06-12 09:12:27,589.589 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 09:12:27,730.730 INFO    ] Initializing speech engine...
[2026-06-12 09:12:27,735.735 INFO    ] 2026-06-12 09:12:27
[2026-06-12 09:12:27,943.943 INFO    ] 2026-06-12 09:12:27
[2026-06-12 09:12:27,973.973 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 09:12:28,135.135 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 09:12:28,173.173 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 09:12:28,320.320 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 09:12:28,388.388 INFO    ] time= 12/06/2026 09:12:28
[2026-06-12 09:12:28,416.416 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 09:12:28,423.423 INFO    ] Checking for existing commands in stream...
[2026-06-12 09:12:28,493.493 INFO    ] No existing commands found in stream
[2026-06-12 09:12:33,504.504 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 09:12:33,507.507 INFO    ] Waiting 3.33 seconds before fallback handling...
[2026-06-12 09:12:37,201.201 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 09:12:37,203.203 INFO    ] Checking for system updates...
[2026-06-12 09:12:37,225.225 INFO    ] 200
[2026-06-12 09:12:37,226.226 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:12:37,256.256 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 09:12:37,257.257 INFO    ] No update needed
[2026-06-12 09:12:37,259.259 INFO    ] Checking for camera pi updates...
[2026-06-12 09:12:37,278.278 INFO    ] 200
[2026-06-12 09:12:37,279.279 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:12:37,304.304 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 09:12:37,338.338 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 09:12:37,339.339 INFO    ] No camera update needed
[2026-06-12 09:12:37,341.341 INFO    ] Script finished. Safe exiting...
[2026-06-12 09:12:37,342.342 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 09:12:37,345.345 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 09:12:37,348.348 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 09:12:39,386.386 INFO    ] ================================================
[2026-06-12 09:12:39,402.402 INFO    ] Launching Daemon at Fri Jun 12 09:12:39 IST 2026
[2026-06-12 09:12:39,413.413 INFO    ] ================================================
[2026-06-12 09:12:39,791.791 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 09:12:39
[2026-06-12 09:12:40,131.131 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 09:12:40,284.284 INFO    ] Initializing speech engine...
[2026-06-12 09:12:40,288.288 INFO    ] 2026-06-12 09:12:40
[2026-06-12 09:12:40,495.495 INFO    ] 2026-06-12 09:12:40
[2026-06-12 09:12:40,524.524 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 09:12:40,708.708 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 09:12:40,717.717 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 09:12:40,856.856 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 09:12:40,914.914 INFO    ] time= 12/06/2026 09:12:40
[2026-06-12 09:12:40,936.936 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 09:12:40,943.943 INFO    ] Checking for existing commands in stream...
[2026-06-12 09:12:41,033.033 INFO    ] No existing commands found in stream
[2026-06-12 09:12:46,047.047 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 09:12:46,051.051 INFO    ] Waiting 0.85 seconds before fallback handling...
[2026-06-12 09:12:47,259.259 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 09:12:47,261.261 INFO    ] Checking for system updates...
[2026-06-12 09:12:47,282.282 INFO    ] 200
[2026-06-12 09:12:47,284.284 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:12:47,318.318 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 09:12:47,319.319 INFO    ] No update needed
[2026-06-12 09:12:47,321.321 INFO    ] Checking for camera pi updates...
[2026-06-12 09:12:47,341.341 INFO    ] 200
[2026-06-12 09:12:47,342.342 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:12:47,365.365 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 09:12:47,406.406 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 09:12:47,408.408 INFO    ] No camera update needed
[2026-06-12 09:12:47,409.409 INFO    ] Script finished. Safe exiting...
[2026-06-12 09:12:47,411.411 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 09:12:47,414.414 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 09:12:47,417.417 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 09:12:49,456.456 INFO    ] ================================================
[2026-06-12 09:12:49,472.472 INFO    ] Launching Daemon at Fri Jun 12 09:12:49 IST 2026
[2026-06-12 09:12:49,482.482 INFO    ] ================================================
[2026-06-12 09:12:49,817.817 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 09:12:49
[2026-06-12 09:12:50,139.139 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 09:12:50,274.274 INFO    ] Initializing speech engine...
[2026-06-12 09:12:50,279.279 INFO    ] 2026-06-12 09:12:50
[2026-06-12 09:12:50,509.509 INFO    ] 2026-06-12 09:12:50
[2026-06-12 09:12:50,540.540 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 09:12:50,738.738 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 09:12:50,743.743 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 09:12:50,892.892 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 09:12:50,961.961 INFO    ] time= 12/06/2026 09:12:50
[2026-06-12 09:12:50,990.990 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 09:12:50,997.997 INFO    ] Checking for existing commands in stream...
[2026-06-12 09:12:51,067.067 INFO    ] No existing commands found in stream
[2026-06-12 09:12:56,078.078 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 09:12:56,081.081 INFO    ] Waiting 0.45 seconds before fallback handling...
[2026-06-12 09:12:56,903.903 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 09:12:56,905.905 INFO    ] Checking for system updates...
[2026-06-12 09:12:56,927.927 INFO    ] 200
[2026-06-12 09:12:56,928.928 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:12:56,959.959 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 09:12:56,961.961 INFO    ] No update needed
[2026-06-12 09:12:56,962.962 INFO    ] Checking for camera pi updates...
[2026-06-12 09:12:56,982.982 INFO    ] 200
[2026-06-12 09:12:56,983.983 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:12:57,008.008 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 09:12:57,052.052 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 09:12:57,053.053 INFO    ] No camera update needed
[2026-06-12 09:12:57,055.055 INFO    ] Script finished. Safe exiting...
[2026-06-12 09:12:57,056.056 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 09:12:57,059.059 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 09:12:57,062.062 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 09:12:59,101.101 INFO    ] ================================================
[2026-06-12 09:12:59,116.116 INFO    ] Launching Daemon at Fri Jun 12 09:12:59 IST 2026
[2026-06-12 09:12:59,127.127 INFO    ] ================================================
[2026-06-12 09:12:59,454.454 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 09:12:59
[2026-06-12 09:12:59,766.766 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 09:12:59,903.903 INFO    ] Initializing speech engine...
[2026-06-12 09:12:59,913.913 INFO    ] 2026-06-12 09:12:59
[2026-06-12 09:13:00,117.117 INFO    ] 2026-06-12 09:13:00
[2026-06-12 09:13:00,145.145 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 09:13:00,330.330 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 09:13:00,337.337 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 09:13:00,465.465 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 09:13:00,526.526 INFO    ] time= 12/06/2026 09:13:00
[2026-06-12 09:13:00,559.559 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 09:13:00,560.560 INFO    ] Checking for existing commands in stream...
[2026-06-12 09:13:00,656.656 INFO    ] No existing commands found in stream
[2026-06-12 09:13:05,662.662 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 09:13:05,665.665 INFO    ] Waiting 0.19 seconds before fallback handling...
[2026-06-12 09:13:06,195.195 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 09:13:06,196.196 INFO    ] Checking for system updates...
[2026-06-12 09:13:06,218.218 INFO    ] 200
[2026-06-12 09:13:06,219.219 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:13:06,252.252 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 09:13:06,253.253 INFO    ] No update needed
[2026-06-12 09:13:06,254.254 INFO    ] Checking for camera pi updates...
[2026-06-12 09:13:06,274.274 INFO    ] 200
[2026-06-12 09:13:06,275.275 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:13:06,298.298 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 09:13:06,331.331 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 09:13:06,333.333 INFO    ] No camera update needed
[2026-06-12 09:13:06,334.334 INFO    ] Script finished. Safe exiting...
[2026-06-12 09:13:06,335.335 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 09:13:06,338.338 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 09:13:06,341.341 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 09:13:08,381.381 INFO    ] ================================================
[2026-06-12 09:13:08,397.397 INFO    ] Launching Daemon at Fri Jun 12 09:13:08 IST 2026
[2026-06-12 09:13:08,407.407 INFO    ] ================================================
[2026-06-12 09:13:08,742.742 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 09:13:08
[2026-06-12 09:13:09,055.055 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 09:13:09,193.193 INFO    ] Initializing speech engine...
[2026-06-12 09:13:09,202.202 INFO    ] 2026-06-12 09:13:09
[2026-06-12 09:13:09,410.410 INFO    ] 2026-06-12 09:13:09
[2026-06-12 09:13:09,439.439 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 09:13:09,624.624 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 09:13:09,627.627 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 09:13:09,758.758 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 09:13:09,819.819 INFO    ] time= 12/06/2026 09:13:09
[2026-06-12 09:13:09,849.849 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 09:13:09,859.859 INFO    ] Checking for existing commands in stream...
[2026-06-12 09:13:09,932.932 INFO    ] No existing commands found in stream
[2026-06-12 09:13:14,941.941 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 09:13:14,943.943 INFO    ] Waiting 0.37 seconds before fallback handling...
[2026-06-12 09:13:15,662.662 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 09:13:15,663.663 INFO    ] Checking for system updates...
[2026-06-12 09:13:15,684.684 INFO    ] 200
[2026-06-12 09:13:15,686.686 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:13:15,719.719 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 09:13:15,720.720 INFO    ] No update needed
[2026-06-12 09:13:15,722.722 INFO    ] Checking for camera pi updates...
[2026-06-12 09:13:15,742.742 INFO    ] 200
[2026-06-12 09:13:15,744.744 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:13:15,767.767 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 09:13:15,803.803 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 09:13:15,805.805 INFO    ] No camera update needed
[2026-06-12 09:13:15,806.806 INFO    ] Script finished. Safe exiting...
[2026-06-12 09:13:15,808.808 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 09:13:15,811.811 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 09:13:15,814.814 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 09:13:17,853.853 INFO    ] ================================================
[2026-06-12 09:13:17,869.869 INFO    ] Launching Daemon at Fri Jun 12 09:13:17 IST 2026
[2026-06-12 09:13:17,880.880 INFO    ] ================================================
[2026-06-12 09:13:18,231.231 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 09:13:18
[2026-06-12 09:13:18,546.546 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 09:13:18,684.684 INFO    ] Initializing speech engine...
[2026-06-12 09:13:18,698.698 INFO    ] 2026-06-12 09:13:18
[2026-06-12 09:13:18,916.916 INFO    ] 2026-06-12 09:13:18
[2026-06-12 09:13:18,946.946 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 09:13:19,084.084 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 09:13:19,146.146 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 09:13:19,288.288 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 09:13:19,351.351 INFO    ] time= 12/06/2026 09:13:19
[2026-06-12 09:13:19,385.385 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 09:13:19,397.397 INFO    ] Checking for existing commands in stream...
[2026-06-12 09:13:19,472.472 INFO    ] No existing commands found in stream
[2026-06-12 09:13:24,482.482 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 09:13:24,490.490 INFO    ] Waiting 0.26 seconds before fallback handling...
[2026-06-12 09:13:25,093.093 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 09:13:25,095.095 INFO    ] Checking for system updates...
[2026-06-12 09:13:25,116.116 INFO    ] 200
[2026-06-12 09:13:25,117.117 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:13:25,148.148 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 09:13:25,149.149 INFO    ] No update needed
[2026-06-12 09:13:25,151.151 INFO    ] Checking for camera pi updates...
[2026-06-12 09:13:25,171.171 INFO    ] 200
[2026-06-12 09:13:25,172.172 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:13:25,198.198 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 09:13:25,244.244 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 09:13:25,245.245 INFO    ] No camera update needed
[2026-06-12 09:13:25,247.247 INFO    ] Script finished. Safe exiting...
[2026-06-12 09:13:25,249.249 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 09:13:25,252.252 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 09:13:25,255.255 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 09:13:27,296.296 INFO    ] ================================================
[2026-06-12 09:13:27,311.311 INFO    ] Launching Daemon at Fri Jun 12 09:13:27 IST 2026
[2026-06-12 09:13:27,321.321 INFO    ] ================================================
[2026-06-12 09:13:27,644.644 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 09:13:27
[2026-06-12 09:13:27,961.961 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 09:13:28,104.104 INFO    ] Initializing speech engine...
[2026-06-12 09:13:28,109.109 INFO    ] 2026-06-12 09:13:28
[2026-06-12 09:13:28,313.313 INFO    ] 2026-06-12 09:13:28
[2026-06-12 09:13:28,341.341 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 09:13:28,524.524 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 09:13:28,528.528 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 09:13:28,663.663 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 09:13:28,719.719 INFO    ] time= 12/06/2026 09:13:28
[2026-06-12 09:13:28,757.757 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 09:13:28,763.763 INFO    ] Checking for existing commands in stream...
[2026-06-12 09:13:28,830.830 INFO    ] No existing commands found in stream
[2026-06-12 09:13:33,839.839 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 09:13:33,842.842 INFO    ] Waiting 0.83 seconds before fallback handling...
[2026-06-12 09:13:35,046.046 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 09:13:35,047.047 INFO    ] Checking for system updates...
[2026-06-12 09:13:35,068.068 INFO    ] 200
[2026-06-12 09:13:35,069.069 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:13:35,102.102 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 09:13:35,103.103 INFO    ] No update needed
[2026-06-12 09:13:35,104.104 INFO    ] Checking for camera pi updates...
[2026-06-12 09:13:35,125.125 INFO    ] 200
[2026-06-12 09:13:35,126.126 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:13:35,150.150 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 09:13:35,193.193 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 09:13:35,194.194 INFO    ] No camera update needed
[2026-06-12 09:13:35,196.196 INFO    ] Script finished. Safe exiting...
[2026-06-12 09:13:35,197.197 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 09:13:35,200.200 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 09:13:35,203.203 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 09:13:37,243.243 INFO    ] ================================================
[2026-06-12 09:13:37,258.258 INFO    ] Launching Daemon at Fri Jun 12 09:13:37 IST 2026
[2026-06-12 09:13:37,268.268 INFO    ] ================================================
[2026-06-12 09:13:37,599.599 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 09:13:37
[2026-06-12 09:13:37,910.910 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 09:13:38,042.042 INFO    ] Initializing speech engine...
[2026-06-12 09:13:38,045.045 INFO    ] 2026-06-12 09:13:38
[2026-06-12 09:13:38,260.260 INFO    ] 2026-06-12 09:13:38
[2026-06-12 09:13:38,288.288 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 09:13:38,460.460 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 09:13:38,508.508 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 09:13:38,649.649 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 09:13:38,696.696 INFO    ] time= 12/06/2026 09:13:38
[2026-06-12 09:13:38,735.735 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 09:13:38,757.757 INFO    ] Checking for existing commands in stream...
[2026-06-12 09:13:38,834.834 INFO    ] No existing commands found in stream
[2026-06-12 09:13:43,845.845 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 09:13:43,848.848 INFO    ] Waiting 3.30 seconds before fallback handling...
[2026-06-12 09:13:47,535.535 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 09:13:47,536.536 INFO    ] Checking for system updates...
[2026-06-12 09:13:47,557.557 INFO    ] 200
[2026-06-12 09:13:47,559.559 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:13:47,589.589 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 09:13:47,591.591 INFO    ] No update needed
[2026-06-12 09:13:47,592.592 INFO    ] Checking for camera pi updates...
[2026-06-12 09:13:47,612.612 INFO    ] 200
[2026-06-12 09:13:47,613.613 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:13:47,637.637 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 09:13:47,672.672 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 09:13:47,674.674 INFO    ] No camera update needed
[2026-06-12 09:13:47,675.675 INFO    ] Script finished. Safe exiting...
[2026-06-12 09:13:47,677.677 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 09:13:47,680.680 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 09:13:47,683.683 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 09:13:49,722.722 INFO    ] ================================================
[2026-06-12 09:13:49,737.737 INFO    ] Launching Daemon at Fri Jun 12 09:13:49 IST 2026
[2026-06-12 09:13:49,748.748 INFO    ] ================================================
[2026-06-12 09:13:50,098.098 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 09:13:50
[2026-06-12 09:13:50,414.414 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 09:13:50,547.547 INFO    ] Initializing speech engine...
[2026-06-12 09:13:50,557.557 INFO    ] 2026-06-12 09:13:50
[2026-06-12 09:13:50,783.783 INFO    ] 2026-06-12 09:13:50
[2026-06-12 09:13:50,813.813 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 09:13:51,012.012 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 09:13:51,016.016 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 09:13:51,160.160 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 09:13:51,223.223 INFO    ] time= 12/06/2026 09:13:51
[2026-06-12 09:13:51,258.258 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 09:13:51,265.265 INFO    ] Checking for existing commands in stream...
[2026-06-12 09:13:51,340.340 INFO    ] No existing commands found in stream
[2026-06-12 09:13:56,351.351 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 09:13:56,354.354 INFO    ] Waiting 0.54 seconds before fallback handling...
[2026-06-12 09:13:57,246.246 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 09:13:57,247.247 INFO    ] Checking for system updates...
[2026-06-12 09:13:57,268.268 INFO    ] 200
[2026-06-12 09:13:57,269.269 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:13:57,300.300 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 09:13:57,302.302 INFO    ] No update needed
[2026-06-12 09:13:57,303.303 INFO    ] Checking for camera pi updates...
[2026-06-12 09:13:57,322.322 INFO    ] 200
[2026-06-12 09:13:57,324.324 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:13:57,347.347 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 09:13:57,382.382 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 09:13:57,384.384 INFO    ] No camera update needed
[2026-06-12 09:13:57,385.385 INFO    ] Script finished. Safe exiting...
[2026-06-12 09:13:57,386.386 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 09:13:57,389.389 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 09:13:57,392.392 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 09:13:59,430.430 INFO    ] ================================================
[2026-06-12 09:13:59,445.445 INFO    ] Launching Daemon at Fri Jun 12 09:13:59 IST 2026
[2026-06-12 09:13:59,458.458 INFO    ] ================================================
[2026-06-12 09:13:59,802.802 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 09:13:59
[2026-06-12 09:14:00,118.118 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 09:14:00,256.256 INFO    ] Initializing speech engine...
[2026-06-12 09:14:00,265.265 INFO    ] 2026-06-12 09:14:00
[2026-06-12 09:14:00,470.470 INFO    ] 2026-06-12 09:14:00
[2026-06-12 09:14:00,497.497 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 09:14:00,681.681 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 09:14:00,691.691 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 09:14:00,820.820 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 09:14:00,886.886 INFO    ] time= 12/06/2026 09:14:00
[2026-06-12 09:14:00,910.910 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 09:14:00,916.916 INFO    ] Checking for existing commands in stream...
[2026-06-12 09:14:00,983.983 INFO    ] No existing commands found in stream
[2026-06-12 09:14:05,992.992 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 09:14:05,994.994 INFO    ] Waiting 0.39 seconds before fallback handling...
[2026-06-12 09:14:06,785.785 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 09:14:06,787.787 INFO    ] Checking for system updates...
[2026-06-12 09:14:06,809.809 INFO    ] 200
[2026-06-12 09:14:06,810.810 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:14:06,843.843 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 09:14:06,844.844 INFO    ] No update needed
[2026-06-12 09:14:06,846.846 INFO    ] Checking for camera pi updates...
[2026-06-12 09:14:06,865.865 INFO    ] 200
[2026-06-12 09:14:06,866.866 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:14:06,889.889 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 09:14:06,913.913 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 09:14:06,915.915 INFO    ] No camera update needed
[2026-06-12 09:14:06,916.916 INFO    ] Script finished. Safe exiting...
[2026-06-12 09:14:06,917.917 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 09:14:06,920.920 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 09:14:06,923.923 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 09:14:08,963.963 INFO    ] ================================================
[2026-06-12 09:14:08,979.979 INFO    ] Launching Daemon at Fri Jun 12 09:14:08 IST 2026
[2026-06-12 09:14:08,990.990 INFO    ] ================================================
[2026-06-12 09:14:09,340.340 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 09:14:09
[2026-06-12 09:14:09,682.682 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 09:14:09,876.876 INFO    ] Initializing speech engine...
[2026-06-12 09:14:09,887.887 INFO    ] 2026-06-12 09:14:09
[2026-06-12 09:14:10,097.097 INFO    ] 2026-06-12 09:14:10
[2026-06-12 09:14:10,127.127 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 09:14:10,311.311 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 09:14:10,315.315 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 09:14:10,467.467 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 09:14:10,519.519 INFO    ] time= 12/06/2026 09:14:10
[2026-06-12 09:14:10,543.543 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 09:14:10,549.549 INFO    ] Checking for existing commands in stream...
[2026-06-12 09:14:10,616.616 INFO    ] No existing commands found in stream
[2026-06-12 09:14:15,636.636 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 09:14:15,639.639 INFO    ] Waiting 0.33 seconds before fallback handling...
[2026-06-12 09:14:16,368.368 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 09:14:16,370.370 INFO    ] Checking for system updates...
[2026-06-12 09:14:16,391.391 INFO    ] 200
[2026-06-12 09:14:16,392.392 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:14:16,422.422 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 09:14:16,423.423 INFO    ] No update needed
[2026-06-12 09:14:16,425.425 INFO    ] Checking for camera pi updates...
[2026-06-12 09:14:16,444.444 INFO    ] 200
[2026-06-12 09:14:16,445.445 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:14:16,468.468 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 09:14:16,509.509 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 09:14:16,510.510 INFO    ] No camera update needed
[2026-06-12 09:14:16,512.512 INFO    ] Script finished. Safe exiting...
[2026-06-12 09:14:16,513.513 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 09:14:16,516.516 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 09:14:16,518.518 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 09:14:18,556.556 INFO    ] ================================================
[2026-06-12 09:14:18,572.572 INFO    ] Launching Daemon at Fri Jun 12 09:14:18 IST 2026
[2026-06-12 09:14:18,583.583 INFO    ] ================================================
[2026-06-12 09:14:18,940.940 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 09:14:18
[2026-06-12 09:14:19,259.259 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 09:14:19,391.391 INFO    ] Initializing speech engine...
[2026-06-12 09:14:19,399.399 INFO    ] 2026-06-12 09:14:19
[2026-06-12 09:14:19,614.614 INFO    ] 2026-06-12 09:14:19
[2026-06-12 09:14:19,642.642 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 09:14:19,826.826 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 09:14:19,835.835 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 09:14:19,966.966 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 09:14:20,019.019 INFO    ] time= 12/06/2026 09:14:19
[2026-06-12 09:14:20,054.054 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 09:14:20,059.059 INFO    ] Checking for existing commands in stream...
[2026-06-12 09:14:20,130.130 INFO    ] No existing commands found in stream
[2026-06-12 09:14:25,139.139 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 09:14:25,142.142 INFO    ] Waiting 3.63 seconds before fallback handling...
[2026-06-12 09:14:29,156.156 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 09:14:29,158.158 INFO    ] Checking for system updates...
[2026-06-12 09:14:29,179.179 INFO    ] 200
[2026-06-12 09:14:29,180.180 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:14:29,213.213 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 09:14:29,214.214 INFO    ] No update needed
[2026-06-12 09:14:29,216.216 INFO    ] Checking for camera pi updates...
[2026-06-12 09:14:29,235.235 INFO    ] 200
[2026-06-12 09:14:29,237.237 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:14:29,261.261 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 09:14:29,301.301 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 09:14:29,302.302 INFO    ] No camera update needed
[2026-06-12 09:14:29,303.303 INFO    ] Script finished. Safe exiting...
[2026-06-12 09:14:29,305.305 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 09:14:29,308.308 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 09:14:29,311.311 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 09:14:31,349.349 INFO    ] ================================================
[2026-06-12 09:14:31,364.364 INFO    ] Launching Daemon at Fri Jun 12 09:14:31 IST 2026
[2026-06-12 09:14:31,376.376 INFO    ] ================================================
[2026-06-12 09:14:31,749.749 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 09:14:31
[2026-06-12 09:14:32,099.099 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 09:14:32,245.245 INFO    ] Initializing speech engine...
[2026-06-12 09:14:32,254.254 INFO    ] 2026-06-12 09:14:32
[2026-06-12 09:14:32,488.488 INFO    ] 2026-06-12 09:14:32
[2026-06-12 09:14:32,521.521 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 09:14:32,659.659 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 09:14:32,707.707 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 09:14:32,841.841 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 09:14:32,898.898 INFO    ] time= 12/06/2026 09:14:32
[2026-06-12 09:14:32,935.935 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 09:14:32,942.942 INFO    ] Checking for existing commands in stream...
[2026-06-12 09:14:33,007.007 INFO    ] No existing commands found in stream
[2026-06-12 09:14:38,012.012 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 09:14:38,015.015 INFO    ] Waiting 3.67 seconds before fallback handling...
[2026-06-12 09:14:42,058.058 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 09:14:42,060.060 INFO    ] Checking for system updates...
[2026-06-12 09:14:42,080.080 INFO    ] 200
[2026-06-12 09:14:42,082.082 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:14:42,116.116 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 09:14:42,118.118 INFO    ] No update needed
[2026-06-12 09:14:42,119.119 INFO    ] Checking for camera pi updates...
[2026-06-12 09:14:42,140.140 INFO    ] 200
[2026-06-12 09:14:42,141.141 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:14:42,164.164 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 09:14:42,210.210 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 09:14:42,211.211 INFO    ] No camera update needed
[2026-06-12 09:14:42,213.213 INFO    ] Script finished. Safe exiting...
[2026-06-12 09:14:42,214.214 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 09:14:42,217.217 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 09:14:42,219.219 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 09:14:44,258.258 INFO    ] ================================================
[2026-06-12 09:14:44,274.274 INFO    ] Launching Daemon at Fri Jun 12 09:14:44 IST 2026
[2026-06-12 09:14:44,286.286 INFO    ] ================================================
[2026-06-12 09:14:44,656.656 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 09:14:44
[2026-06-12 09:14:44,995.995 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 09:14:45,149.149 INFO    ] Initializing speech engine...
[2026-06-12 09:14:45,153.153 INFO    ] 2026-06-12 09:14:45
[2026-06-12 09:14:45,362.362 INFO    ] 2026-06-12 09:14:45
[2026-06-12 09:14:45,391.391 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 09:14:45,575.575 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 09:14:45,585.585 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 09:14:45,709.709 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 09:14:45,780.780 INFO    ] time= 12/06/2026 09:14:45
[2026-06-12 09:14:45,804.804 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 09:14:45,810.810 INFO    ] Checking for existing commands in stream...
[2026-06-12 09:14:45,877.877 INFO    ] No existing commands found in stream
[2026-06-12 09:14:50,892.892 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 09:14:50,895.895 INFO    ] Waiting 3.91 seconds before fallback handling...
[2026-06-12 09:14:55,203.203 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 09:14:55,204.204 INFO    ] Checking for system updates...
[2026-06-12 09:14:55,227.227 INFO    ] 200
[2026-06-12 09:14:55,228.228 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:14:55,261.261 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 09:14:55,262.262 INFO    ] No update needed
[2026-06-12 09:14:55,264.264 INFO    ] Checking for camera pi updates...
[2026-06-12 09:14:55,283.283 INFO    ] 200
[2026-06-12 09:14:55,285.285 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:14:55,310.310 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 09:14:55,355.355 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 09:14:55,357.357 INFO    ] No camera update needed
[2026-06-12 09:14:55,358.358 INFO    ] Script finished. Safe exiting...
[2026-06-12 09:14:55,360.360 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 09:14:55,363.363 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 09:14:55,366.366 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 09:14:57,407.407 INFO    ] ================================================
[2026-06-12 09:14:57,423.423 INFO    ] Launching Daemon at Fri Jun 12 09:14:57 IST 2026
[2026-06-12 09:14:57,434.434 INFO    ] ================================================
[2026-06-12 09:14:57,767.767 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 09:14:57
[2026-06-12 09:14:58,081.081 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 09:14:58,223.223 INFO    ] Initializing speech engine...
[2026-06-12 09:14:58,228.228 INFO    ] 2026-06-12 09:14:58
[2026-06-12 09:14:58,432.432 INFO    ] 2026-06-12 09:14:58
[2026-06-12 09:14:58,461.461 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 09:14:58,646.646 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 09:14:58,655.655 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 09:14:58,784.784 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 09:14:58,851.851 INFO    ] time= 12/06/2026 09:14:58
[2026-06-12 09:14:58,875.875 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 09:14:58,881.881 INFO    ] Checking for existing commands in stream...
[2026-06-12 09:14:58,996.996 INFO    ] No existing commands found in stream
[2026-06-12 09:15:04,006.006 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 09:15:04,009.009 INFO    ] Waiting 0.48 seconds before fallback handling...
[2026-06-12 09:15:04,839.839 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 09:15:04,841.841 INFO    ] Checking for system updates...
[2026-06-12 09:15:04,863.863 INFO    ] 200
[2026-06-12 09:15:04,864.864 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:15:04,895.895 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 09:15:04,896.896 INFO    ] No update needed
[2026-06-12 09:15:04,897.897 INFO    ] Checking for camera pi updates...
[2026-06-12 09:15:04,919.919 INFO    ] 200
[2026-06-12 09:15:04,920.920 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:15:04,946.946 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 09:15:04,984.984 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 09:15:04,985.985 INFO    ] No camera update needed
[2026-06-12 09:15:04,987.987 INFO    ] Script finished. Safe exiting...
[2026-06-12 09:15:04,988.988 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 09:15:04,991.991 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 09:15:04,994.994 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 09:15:07,033.033 INFO    ] ================================================
[2026-06-12 09:15:07,049.049 INFO    ] Launching Daemon at Fri Jun 12 09:15:07 IST 2026
[2026-06-12 09:15:07,060.060 INFO    ] ================================================
[2026-06-12 09:15:07,422.422 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 09:15:07
[2026-06-12 09:15:07,770.770 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 09:15:07,923.923 INFO    ] Initializing speech engine...
[2026-06-12 09:15:07,927.927 INFO    ] 2026-06-12 09:15:07
[2026-06-12 09:15:08,138.138 INFO    ] 2026-06-12 09:15:08
[2026-06-12 09:15:08,166.166 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 09:15:08,349.349 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 09:15:08,360.360 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 09:15:08,496.496 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 09:15:08,558.558 INFO    ] time= 12/06/2026 09:15:08
[2026-06-12 09:15:08,582.582 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 09:15:08,588.588 INFO    ] Checking for existing commands in stream...
[2026-06-12 09:15:08,655.655 INFO    ] No existing commands found in stream
[2026-06-12 09:15:13,664.664 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 09:15:13,668.668 INFO    ] Waiting 2.11 seconds before fallback handling...
[2026-06-12 09:15:16,129.129 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 09:15:16,131.131 INFO    ] Checking for system updates...
[2026-06-12 09:15:16,152.152 INFO    ] 200
[2026-06-12 09:15:16,153.153 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:15:16,184.184 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 09:15:16,186.186 INFO    ] No update needed
[2026-06-12 09:15:16,187.187 INFO    ] Checking for camera pi updates...
[2026-06-12 09:15:16,208.208 INFO    ] 200
[2026-06-12 09:15:16,210.210 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:15:16,233.233 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 09:15:16,284.284 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 09:15:16,286.286 INFO    ] No camera update needed
[2026-06-12 09:15:16,287.287 INFO    ] Script finished. Safe exiting...
[2026-06-12 09:15:16,288.288 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 09:15:16,292.292 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 09:15:16,295.295 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 09:15:18,335.335 INFO    ] ================================================
[2026-06-12 09:15:18,351.351 INFO    ] Launching Daemon at Fri Jun 12 09:15:18 IST 2026
[2026-06-12 09:15:18,362.362 INFO    ] ================================================
[2026-06-12 09:15:18,735.735 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 09:15:18
[2026-06-12 09:15:19,083.083 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 09:15:19,236.236 INFO    ] Initializing speech engine...
[2026-06-12 09:15:19,241.241 INFO    ] 2026-06-12 09:15:19
[2026-06-12 09:15:19,450.450 INFO    ] 2026-06-12 09:15:19
[2026-06-12 09:15:19,479.479 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 09:15:19,662.662 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 09:15:19,674.674 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 09:15:19,813.813 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 09:15:19,871.871 INFO    ] time= 12/06/2026 09:15:19
[2026-06-12 09:15:19,894.894 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 09:15:19,900.900 INFO    ] Checking for existing commands in stream...
[2026-06-12 09:15:19,967.967 INFO    ] No existing commands found in stream
[2026-06-12 09:15:24,982.982 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 09:15:24,985.985 INFO    ] Waiting 2.35 seconds before fallback handling...
[2026-06-12 09:15:27,676.676 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 09:15:27,678.678 INFO    ] Checking for system updates...
[2026-06-12 09:15:27,701.701 INFO    ] 200
[2026-06-12 09:15:27,702.702 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:15:27,735.735 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 09:15:27,736.736 INFO    ] No update needed
[2026-06-12 09:15:27,738.738 INFO    ] Checking for camera pi updates...
[2026-06-12 09:15:27,757.757 INFO    ] 200
[2026-06-12 09:15:27,758.758 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:15:27,782.782 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 09:15:27,820.820 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 09:15:27,821.821 INFO    ] No camera update needed
[2026-06-12 09:15:27,823.823 INFO    ] Script finished. Safe exiting...
[2026-06-12 09:15:27,824.824 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 09:15:27,827.827 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 09:15:27,829.829 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 09:15:29,869.869 INFO    ] ================================================
[2026-06-12 09:15:29,885.885 INFO    ] Launching Daemon at Fri Jun 12 09:15:29 IST 2026
[2026-06-12 09:15:29,896.896 INFO    ] ================================================
[2026-06-12 09:15:30,222.222 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 09:15:30
[2026-06-12 09:15:30,534.534 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 09:15:30,666.666 INFO    ] Initializing speech engine...
[2026-06-12 09:15:30,670.670 INFO    ] 2026-06-12 09:15:30
[2026-06-12 09:15:30,885.885 INFO    ] 2026-06-12 09:15:30
[2026-06-12 09:15:30,911.911 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 09:15:31,115.115 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 09:15:31,125.125 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 09:15:31,250.250 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 09:15:31,312.312 INFO    ] time= 12/06/2026 09:15:31
[2026-06-12 09:15:31,344.344 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 09:15:31,346.346 INFO    ] Checking for existing commands in stream...
[2026-06-12 09:15:31,417.417 INFO    ] No existing commands found in stream
[2026-06-12 09:15:36,426.426 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 09:15:36,428.428 INFO    ] Waiting 2.66 seconds before fallback handling...
[2026-06-12 09:15:39,447.447 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 09:15:39,449.449 INFO    ] Checking for system updates...
[2026-06-12 09:15:39,471.471 INFO    ] 200
[2026-06-12 09:15:39,472.472 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:15:39,505.505 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 09:15:39,506.506 INFO    ] No update needed
[2026-06-12 09:15:39,507.507 INFO    ] Checking for camera pi updates...
[2026-06-12 09:15:39,527.527 INFO    ] 200
[2026-06-12 09:15:39,528.528 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:15:39,551.551 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 09:15:39,696.696 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 09:15:39,697.697 INFO    ] No camera update needed
[2026-06-12 09:15:39,698.698 INFO    ] Script finished. Safe exiting...
[2026-06-12 09:15:39,700.700 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 09:15:39,703.703 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 09:15:39,705.705 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 09:15:41,745.745 INFO    ] ================================================
[2026-06-12 09:15:41,761.761 INFO    ] Launching Daemon at Fri Jun 12 09:15:41 IST 2026
[2026-06-12 09:15:41,772.772 INFO    ] ================================================
[2026-06-12 09:15:42,106.106 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 09:15:42
[2026-06-12 09:15:42,423.423 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 09:15:42,553.553 INFO    ] Initializing speech engine...
[2026-06-12 09:15:42,562.562 INFO    ] 2026-06-12 09:15:42
[2026-06-12 09:15:42,774.774 INFO    ] 2026-06-12 09:15:42
[2026-06-12 09:15:42,803.803 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 09:15:42,936.936 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 09:15:42,989.989 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 09:15:43,120.120 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 09:15:43,181.181 INFO    ] time= 12/06/2026 09:15:43
[2026-06-12 09:15:43,216.216 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 09:15:43,221.221 INFO    ] Checking for existing commands in stream...
[2026-06-12 09:15:43,293.293 INFO    ] No existing commands found in stream
[2026-06-12 09:15:48,302.302 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 09:15:48,305.305 INFO    ] Waiting 3.91 seconds before fallback handling...
[2026-06-12 09:15:52,575.575 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 09:15:52,577.577 INFO    ] Checking for system updates...
[2026-06-12 09:15:52,598.598 INFO    ] 200
[2026-06-12 09:15:52,599.599 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:15:52,630.630 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 09:15:52,632.632 INFO    ] No update needed
[2026-06-12 09:15:52,633.633 INFO    ] Checking for camera pi updates...
[2026-06-12 09:15:52,653.653 INFO    ] 200
[2026-06-12 09:15:52,654.654 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:15:52,679.679 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 09:15:52,719.719 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 09:15:52,720.720 INFO    ] No camera update needed
[2026-06-12 09:15:52,722.722 INFO    ] Script finished. Safe exiting...
[2026-06-12 09:15:52,723.723 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 09:15:52,726.726 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 09:15:52,729.729 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 09:15:54,777.777 INFO    ] ================================================
[2026-06-12 09:15:54,793.793 INFO    ] Launching Daemon at Fri Jun 12 09:15:54 IST 2026
[2026-06-12 09:15:54,803.803 INFO    ] ================================================
[2026-06-12 09:15:55,159.159 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 09:15:55
[2026-06-12 09:15:55,471.471 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 09:15:55,609.609 INFO    ] Initializing speech engine...
[2026-06-12 09:15:55,619.619 INFO    ] 2026-06-12 09:15:55
[2026-06-12 09:15:55,822.822 INFO    ] 2026-06-12 09:15:55
[2026-06-12 09:15:55,851.851 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 09:15:56,035.035 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 09:15:56,045.045 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 09:15:56,176.176 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 09:15:56,230.230 INFO    ] time= 12/06/2026 09:15:56
[2026-06-12 09:15:56,265.265 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 09:15:56,270.270 INFO    ] Checking for existing commands in stream...
[2026-06-12 09:15:56,340.340 INFO    ] No existing commands found in stream
[2026-06-12 09:16:01,351.351 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 09:16:01,354.354 INFO    ] Waiting 0.85 seconds before fallback handling...
[2026-06-12 09:16:02,525.525 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 09:16:02,527.527 INFO    ] Checking for system updates...
[2026-06-12 09:16:02,549.549 INFO    ] 200
[2026-06-12 09:16:02,550.550 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:16:02,590.590 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 09:16:02,592.592 INFO    ] No update needed
[2026-06-12 09:16:02,593.593 INFO    ] Checking for camera pi updates...
[2026-06-12 09:16:02,612.612 INFO    ] 200
[2026-06-12 09:16:02,614.614 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:16:02,637.637 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 09:16:02,658.658 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 09:16:02,659.659 INFO    ] No camera update needed
[2026-06-12 09:16:02,660.660 INFO    ] Script finished. Safe exiting...
[2026-06-12 09:16:02,662.662 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 09:16:02,665.665 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 09:16:02,667.667 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 09:16:04,711.711 INFO    ] ================================================
[2026-06-12 09:16:04,726.726 INFO    ] Launching Daemon at Fri Jun 12 09:16:04 IST 2026
[2026-06-12 09:16:04,737.737 INFO    ] ================================================
[2026-06-12 09:16:05,111.111 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 09:16:05
[2026-06-12 09:16:05,454.454 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 09:16:05,616.616 INFO    ] Initializing speech engine...
[2026-06-12 09:16:05,624.624 INFO    ] 2026-06-12 09:16:05
[2026-06-12 09:16:05,837.837 INFO    ] 2026-06-12 09:16:05
[2026-06-12 09:16:05,866.866 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 09:16:06,053.053 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 09:16:06,056.056 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 09:16:06,192.192 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 09:16:06,255.255 INFO    ] time= 12/06/2026 09:16:06
[2026-06-12 09:16:06,288.288 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 09:16:06,294.294 INFO    ] Checking for existing commands in stream...
[2026-06-12 09:16:06,361.361 INFO    ] No existing commands found in stream
[2026-06-12 09:16:11,394.394 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 09:16:11,402.402 INFO    ] Waiting 3.01 seconds before fallback handling...
[2026-06-12 09:16:14,784.784 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 09:16:14,786.786 INFO    ] Checking for system updates...
[2026-06-12 09:16:14,808.808 INFO    ] 200
[2026-06-12 09:16:14,809.809 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:16:14,843.843 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 09:16:14,844.844 INFO    ] No update needed
[2026-06-12 09:16:14,846.846 INFO    ] Checking for camera pi updates...
[2026-06-12 09:16:14,867.867 INFO    ] 200
[2026-06-12 09:16:14,868.868 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:16:14,891.891 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 09:16:14,927.927 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 09:16:14,929.929 INFO    ] No camera update needed
[2026-06-12 09:16:14,930.930 INFO    ] Script finished. Safe exiting...
[2026-06-12 09:16:14,931.931 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 09:16:14,934.934 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 09:16:14,937.937 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 09:16:16,978.978 INFO    ] ================================================
[2026-06-12 09:16:16,994.994 INFO    ] Launching Daemon at Fri Jun 12 09:16:16 IST 2026
[2026-06-12 09:16:17,005.005 INFO    ] ================================================
[2026-06-12 09:16:17,339.339 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 09:16:17
[2026-06-12 09:16:17,655.655 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 09:16:17,794.794 INFO    ] Initializing speech engine...
[2026-06-12 09:16:17,804.804 INFO    ] 2026-06-12 09:16:17
[2026-06-12 09:16:18,008.008 INFO    ] 2026-06-12 09:16:17
[2026-06-12 09:16:18,037.037 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 09:16:18,160.160 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 09:16:18,213.213 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 09:16:18,364.364 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 09:16:18,432.432 INFO    ] time= 12/06/2026 09:16:18
[2026-06-12 09:16:18,456.456 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 09:16:18,463.463 INFO    ] Checking for existing commands in stream...
[2026-06-12 09:16:18,531.531 INFO    ] No existing commands found in stream
[2026-06-12 09:16:23,546.546 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 09:16:23,549.549 INFO    ] Waiting 2.66 seconds before fallback handling...
[2026-06-12 09:16:26,582.582 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 09:16:26,584.584 INFO    ] Checking for system updates...
[2026-06-12 09:16:26,604.604 INFO    ] 200
[2026-06-12 09:16:26,605.605 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:16:26,639.639 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 09:16:26,640.640 INFO    ] No update needed
[2026-06-12 09:16:26,642.642 INFO    ] Checking for camera pi updates...
[2026-06-12 09:16:26,661.661 INFO    ] 200
[2026-06-12 09:16:26,662.662 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:16:26,685.685 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 09:16:26,726.726 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 09:16:26,727.727 INFO    ] No camera update needed
[2026-06-12 09:16:26,729.729 INFO    ] Script finished. Safe exiting...
[2026-06-12 09:16:26,730.730 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 09:16:26,733.733 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 09:16:26,736.736 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 09:16:28,775.775 INFO    ] ================================================
[2026-06-12 09:16:28,791.791 INFO    ] Launching Daemon at Fri Jun 12 09:16:28 IST 2026
[2026-06-12 09:16:28,803.803 INFO    ] ================================================
[2026-06-12 09:16:29,158.158 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 09:16:29
[2026-06-12 09:16:29,475.475 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 09:16:29,609.609 INFO    ] Initializing speech engine...
[2026-06-12 09:16:29,613.613 INFO    ] 2026-06-12 09:16:29
[2026-06-12 09:16:29,808.808 INFO    ] 2026-06-12 09:16:29
[2026-06-12 09:16:29,857.857 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 09:16:30,018.018 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 09:16:30,051.051 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 09:16:30,211.211 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 09:16:30,236.236 INFO    ] time= 12/06/2026 09:16:30
[2026-06-12 09:16:30,293.293 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 09:16:30,335.335 INFO    ] Checking for existing commands in stream...
[2026-06-12 09:16:30,422.422 INFO    ] No existing commands found in stream
[2026-06-12 09:16:35,433.433 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 09:16:35,436.436 INFO    ] Waiting 0.19 seconds before fallback handling...
[2026-06-12 09:16:36,108.108 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 09:16:36,110.110 INFO    ] Checking for system updates...
[2026-06-12 09:16:36,132.132 INFO    ] 200
[2026-06-12 09:16:36,133.133 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:16:36,167.167 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 09:16:36,168.168 INFO    ] No update needed
[2026-06-12 09:16:36,169.169 INFO    ] Checking for camera pi updates...
[2026-06-12 09:16:36,189.189 INFO    ] 200
[2026-06-12 09:16:36,190.190 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:16:36,213.213 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 09:16:36,261.261 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 09:16:36,262.262 INFO    ] No camera update needed
[2026-06-12 09:16:36,263.263 INFO    ] Script finished. Safe exiting...
[2026-06-12 09:16:36,264.264 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 09:16:36,267.267 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 09:16:36,270.270 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 09:16:38,310.310 INFO    ] ================================================
[2026-06-12 09:16:38,327.327 INFO    ] Launching Daemon at Fri Jun 12 09:16:38 IST 2026
[2026-06-12 09:16:38,338.338 INFO    ] ================================================
[2026-06-12 09:16:38,667.667 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 09:16:38
[2026-06-12 09:16:38,978.978 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 09:16:39,107.107 INFO    ] Initializing speech engine...
[2026-06-12 09:16:39,112.112 INFO    ] 2026-06-12 09:16:39
[2026-06-12 09:16:39,330.330 INFO    ] 2026-06-12 09:16:39
[2026-06-12 09:16:39,358.358 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 09:16:39,546.546 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 09:16:39,550.550 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 09:16:39,687.687 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 09:16:39,751.751 INFO    ] time= 12/06/2026 09:16:39
[2026-06-12 09:16:39,779.779 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 09:16:39,785.785 INFO    ] Checking for existing commands in stream...
[2026-06-12 09:16:39,853.853 INFO    ] No existing commands found in stream
[2026-06-12 09:16:44,867.867 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 09:16:44,870.870 INFO    ] Waiting 0.96 seconds before fallback handling...
[2026-06-12 09:16:46,216.216 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 09:16:46,218.218 INFO    ] Checking for system updates...
[2026-06-12 09:16:46,239.239 INFO    ] 200
[2026-06-12 09:16:46,240.240 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:16:46,274.274 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 09:16:46,275.275 INFO    ] No update needed
[2026-06-12 09:16:46,277.277 INFO    ] Checking for camera pi updates...
[2026-06-12 09:16:46,300.300 INFO    ] 200
[2026-06-12 09:16:46,302.302 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:16:46,327.327 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 09:16:46,365.365 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 09:16:46,366.366 INFO    ] No camera update needed
[2026-06-12 09:16:46,368.368 INFO    ] Script finished. Safe exiting...
[2026-06-12 09:16:46,369.369 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 09:16:46,373.373 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 09:16:46,376.376 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 09:16:48,416.416 INFO    ] ================================================
[2026-06-12 09:16:48,432.432 INFO    ] Launching Daemon at Fri Jun 12 09:16:48 IST 2026
[2026-06-12 09:16:48,443.443 INFO    ] ================================================
[2026-06-12 09:16:48,775.775 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 09:16:48
[2026-06-12 09:16:49,090.090 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 09:16:49,223.223 INFO    ] Initializing speech engine...
[2026-06-12 09:16:49,227.227 INFO    ] 2026-06-12 09:16:49
[2026-06-12 09:16:49,420.420 INFO    ] 2026-06-12 09:16:49
[2026-06-12 09:16:49,466.466 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 09:16:49,629.629 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 09:16:49,672.672 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 09:16:49,825.825 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 09:16:49,845.845 INFO    ] time= 12/06/2026 09:16:49
[2026-06-12 09:16:49,897.897 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 09:16:49,932.932 INFO    ] Checking for existing commands in stream...
[2026-06-12 09:16:50,030.030 INFO    ] No existing commands found in stream
[2026-06-12 09:16:55,041.041 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 09:16:55,049.049 INFO    ] Waiting 2.31 seconds before fallback handling...
[2026-06-12 09:16:57,712.712 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 09:16:57,714.714 INFO    ] Checking for system updates...
[2026-06-12 09:16:57,735.735 INFO    ] 200
[2026-06-12 09:16:57,736.736 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:16:57,769.769 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 09:16:57,771.771 INFO    ] No update needed
[2026-06-12 09:16:57,772.772 INFO    ] Checking for camera pi updates...
[2026-06-12 09:16:57,792.792 INFO    ] 200
[2026-06-12 09:16:57,793.793 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:16:57,816.816 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 09:16:57,856.856 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 09:16:57,858.858 INFO    ] No camera update needed
[2026-06-12 09:16:57,859.859 INFO    ] Script finished. Safe exiting...
[2026-06-12 09:16:57,860.860 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 09:16:57,863.863 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 09:16:57,866.866 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 09:16:59,904.904 INFO    ] ================================================
[2026-06-12 09:16:59,922.922 INFO    ] Launching Daemon at Fri Jun 12 09:16:59 IST 2026
[2026-06-12 09:16:59,933.933 INFO    ] ================================================
[2026-06-12 09:17:00,284.284 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 09:17:00
[2026-06-12 09:17:00,597.597 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 09:17:00,734.734 INFO    ] Initializing speech engine...
[2026-06-12 09:17:00,743.743 INFO    ] 2026-06-12 09:17:00
[2026-06-12 09:17:00,948.948 INFO    ] 2026-06-12 09:17:00
[2026-06-12 09:17:00,976.976 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 09:17:01,159.159 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 09:17:01,162.162 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 09:17:01,298.298 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 09:17:01,366.366 INFO    ] time= 12/06/2026 09:17:01
[2026-06-12 09:17:01,389.389 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 09:17:01,396.396 INFO    ] Checking for existing commands in stream...
[2026-06-12 09:17:01,462.462 INFO    ] No existing commands found in stream
[2026-06-12 09:17:06,493.493 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 09:17:06,495.495 INFO    ] Waiting 3.71 seconds before fallback handling...
[2026-06-12 09:17:10,572.572 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 09:17:10,574.574 INFO    ] Checking for system updates...
[2026-06-12 09:17:10,594.594 INFO    ] 200
[2026-06-12 09:17:10,595.595 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:17:10,625.625 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 09:17:10,626.626 INFO    ] No update needed
[2026-06-12 09:17:10,628.628 INFO    ] Checking for camera pi updates...
[2026-06-12 09:17:10,647.647 INFO    ] 200
[2026-06-12 09:17:10,648.648 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:17:10,673.673 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 09:17:10,712.712 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 09:17:10,714.714 INFO    ] No camera update needed
[2026-06-12 09:17:10,715.715 INFO    ] Script finished. Safe exiting...
[2026-06-12 09:17:10,716.716 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 09:17:10,719.719 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 09:17:10,722.722 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 09:17:12,761.761 INFO    ] ================================================
[2026-06-12 09:17:12,777.777 INFO    ] Launching Daemon at Fri Jun 12 09:17:12 IST 2026
[2026-06-12 09:17:12,789.789 INFO    ] ================================================
[2026-06-12 09:17:13,114.114 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 09:17:13
[2026-06-12 09:17:13,429.429 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 09:17:13,565.565 INFO    ] Initializing speech engine...
[2026-06-12 09:17:13,577.577 INFO    ] 2026-06-12 09:17:13
[2026-06-12 09:17:13,786.786 INFO    ] 2026-06-12 09:17:13
[2026-06-12 09:17:13,815.815 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 09:17:14,001.001 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 09:17:14,010.010 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 09:17:14,135.135 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 09:17:14,185.185 INFO    ] time= 12/06/2026 09:17:14
[2026-06-12 09:17:14,226.226 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 09:17:14,236.236 INFO    ] Checking for existing commands in stream...
[2026-06-12 09:17:14,308.308 INFO    ] No existing commands found in stream
[2026-06-12 09:17:19,317.317 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 09:17:19,320.320 INFO    ] Waiting 2.28 seconds before fallback handling...
[2026-06-12 09:17:21,964.964 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 09:17:21,965.965 INFO    ] Checking for system updates...
[2026-06-12 09:17:21,987.987 INFO    ] 200
[2026-06-12 09:17:21,988.988 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:17:22,018.018 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 09:17:22,019.019 INFO    ] No update needed
[2026-06-12 09:17:22,021.021 INFO    ] Checking for camera pi updates...
[2026-06-12 09:17:22,044.044 INFO    ] 200
[2026-06-12 09:17:22,045.045 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:17:22,070.070 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 09:17:22,092.092 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 09:17:22,093.093 INFO    ] No camera update needed
[2026-06-12 09:17:22,094.094 INFO    ] Script finished. Safe exiting...
[2026-06-12 09:17:22,095.095 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 09:17:22,098.098 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 09:17:22,101.101 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 09:17:24,141.141 INFO    ] ================================================
[2026-06-12 09:17:24,157.157 INFO    ] Launching Daemon at Fri Jun 12 09:17:24 IST 2026
[2026-06-12 09:17:24,168.168 INFO    ] ================================================
[2026-06-12 09:17:24,519.519 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 09:17:24
[2026-06-12 09:17:24,831.831 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 09:17:24,961.961 INFO    ] Initializing speech engine...
[2026-06-12 09:17:24,965.965 INFO    ] 2026-06-12 09:17:24
[2026-06-12 09:17:25,182.182 INFO    ] 2026-06-12 09:17:25
[2026-06-12 09:17:25,217.217 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 09:17:25,396.396 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 09:17:25,406.406 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 09:17:25,531.531 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 09:17:25,599.599 INFO    ] time= 12/06/2026 09:17:25
[2026-06-12 09:17:25,626.626 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 09:17:25,628.628 INFO    ] Checking for existing commands in stream...
[2026-06-12 09:17:25,699.699 INFO    ] No existing commands found in stream
[2026-06-12 09:17:30,708.708 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 09:17:30,711.711 INFO    ] Waiting 0.36 seconds before fallback handling...
[2026-06-12 09:17:31,422.422 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 09:17:31,424.424 INFO    ] Checking for system updates...
[2026-06-12 09:17:31,445.445 INFO    ] 200
[2026-06-12 09:17:31,446.446 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:17:31,477.477 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 09:17:31,478.478 INFO    ] No update needed
[2026-06-12 09:17:31,480.480 INFO    ] Checking for camera pi updates...
[2026-06-12 09:17:31,501.501 INFO    ] 200
[2026-06-12 09:17:31,503.503 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:17:31,527.527 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 09:17:31,577.577 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 09:17:31,579.579 INFO    ] No camera update needed
[2026-06-12 09:17:31,583.583 INFO    ] Script finished. Safe exiting...
[2026-06-12 09:17:31,584.584 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 09:17:31,588.588 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 09:17:31,591.591 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 09:17:33,623.623 INFO    ] ================================================
[2026-06-12 09:17:33,638.638 INFO    ] Launching Daemon at Fri Jun 12 09:17:33 IST 2026
[2026-06-12 09:17:33,649.649 INFO    ] ================================================
[2026-06-12 09:17:33,990.990 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 09:17:33
[2026-06-12 09:17:34,300.300 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 09:17:34,430.430 INFO    ] Initializing speech engine...
[2026-06-12 09:17:34,438.438 INFO    ] 2026-06-12 09:17:34
[2026-06-12 09:17:34,652.652 INFO    ] 2026-06-12 09:17:34
[2026-06-12 09:17:34,680.680 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 09:17:34,865.865 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 09:17:34,869.869 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 09:17:35,003.003 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 09:17:35,070.070 INFO    ] time= 12/06/2026 09:17:35
[2026-06-12 09:17:35,098.098 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 09:17:35,104.104 INFO    ] Checking for existing commands in stream...
[2026-06-12 09:17:35,172.172 INFO    ] No existing commands found in stream
[2026-06-12 09:17:40,181.181 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 09:17:40,184.184 INFO    ] Waiting 2.63 seconds before fallback handling...
[2026-06-12 09:17:43,202.202 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 09:17:43,203.203 INFO    ] Checking for system updates...
[2026-06-12 09:17:43,226.226 INFO    ] 200
[2026-06-12 09:17:43,227.227 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:17:43,258.258 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 09:17:43,259.259 INFO    ] No update needed
[2026-06-12 09:17:43,260.260 INFO    ] Checking for camera pi updates...
[2026-06-12 09:17:43,280.280 INFO    ] 200
[2026-06-12 09:17:43,281.281 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:17:43,304.304 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 09:17:43,443.443 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 09:17:43,445.445 INFO    ] No camera update needed
[2026-06-12 09:17:43,446.446 INFO    ] Script finished. Safe exiting...
[2026-06-12 09:17:43,447.447 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 09:17:43,450.450 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 09:17:43,453.453 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 09:17:45,491.491 INFO    ] ================================================
[2026-06-12 09:17:45,506.506 INFO    ] Launching Daemon at Fri Jun 12 09:17:45 IST 2026
[2026-06-12 09:17:45,517.517 INFO    ] ================================================
[2026-06-12 09:17:45,854.854 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 09:17:45
[2026-06-12 09:17:46,168.168 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 09:17:46,302.302 INFO    ] Initializing speech engine...
[2026-06-12 09:17:46,314.314 INFO    ] 2026-06-12 09:17:46
[2026-06-12 09:17:46,523.523 INFO    ] 2026-06-12 09:17:46
[2026-06-12 09:17:46,553.553 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 09:17:46,739.739 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 09:17:46,743.743 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 09:17:46,883.883 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 09:17:46,951.951 INFO    ] time= 12/06/2026 09:17:46
[2026-06-12 09:17:46,975.975 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 09:17:46,977.977 INFO    ] Checking for existing commands in stream...
[2026-06-12 09:17:47,050.050 INFO    ] No existing commands found in stream
[2026-06-12 09:17:52,059.059 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 09:17:52,062.062 INFO    ] Waiting 1.50 seconds before fallback handling...
[2026-06-12 09:17:53,961.961 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 09:17:53,963.963 INFO    ] Checking for system updates...
[2026-06-12 09:17:53,984.984 INFO    ] 200
[2026-06-12 09:17:53,985.985 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:17:54,018.018 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 09:17:54,020.020 INFO    ] No update needed
[2026-06-12 09:17:54,021.021 INFO    ] Checking for camera pi updates...
[2026-06-12 09:17:54,042.042 INFO    ] 200
[2026-06-12 09:17:54,043.043 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:17:54,069.069 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 09:17:54,105.105 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 09:17:54,107.107 INFO    ] No camera update needed
[2026-06-12 09:17:54,108.108 INFO    ] Script finished. Safe exiting...
[2026-06-12 09:17:54,109.109 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 09:17:54,113.113 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 09:17:54,116.116 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 09:17:56,156.156 INFO    ] ================================================
[2026-06-12 09:17:56,171.171 INFO    ] Launching Daemon at Fri Jun 12 09:17:56 IST 2026
[2026-06-12 09:17:56,182.182 INFO    ] ================================================
[2026-06-12 09:17:56,542.542 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 09:17:56
[2026-06-12 09:17:56,854.854 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 09:17:56,997.997 INFO    ] Initializing speech engine...
[2026-06-12 09:17:57,002.002 INFO    ] 2026-06-12 09:17:56
[2026-06-12 09:17:57,205.205 INFO    ] 2026-06-12 09:17:57
[2026-06-12 09:17:57,234.234 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 09:17:57,417.417 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 09:17:57,427.427 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 09:17:57,556.556 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 09:17:57,610.610 INFO    ] time= 12/06/2026 09:17:57
[2026-06-12 09:17:57,644.644 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 09:17:57,649.649 INFO    ] Checking for existing commands in stream...
[2026-06-12 09:17:57,719.719 INFO    ] No existing commands found in stream
[2026-06-12 09:18:02,730.730 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 09:18:02,733.733 INFO    ] Waiting 3.24 seconds before fallback handling...
[2026-06-12 09:18:06,359.359 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 09:18:06,360.360 INFO    ] Checking for system updates...
[2026-06-12 09:18:06,381.381 INFO    ] 200
[2026-06-12 09:18:06,382.382 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:18:06,415.415 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 09:18:06,416.416 INFO    ] No update needed
[2026-06-12 09:18:06,417.417 INFO    ] Checking for camera pi updates...
[2026-06-12 09:18:06,436.436 INFO    ] 200
[2026-06-12 09:18:06,438.438 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:18:06,461.461 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 09:18:06,506.506 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 09:18:06,507.507 INFO    ] No camera update needed
[2026-06-12 09:18:06,509.509 INFO    ] Script finished. Safe exiting...
[2026-06-12 09:18:06,510.510 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 09:18:06,513.513 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 09:18:06,516.516 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 09:18:08,554.554 INFO    ] ================================================
[2026-06-12 09:18:08,569.569 INFO    ] Launching Daemon at Fri Jun 12 09:18:08 IST 2026
[2026-06-12 09:18:08,580.580 INFO    ] ================================================
[2026-06-12 09:18:08,914.914 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 09:18:08
[2026-06-12 09:18:09,225.225 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 09:18:09,367.367 INFO    ] Initializing speech engine...
[2026-06-12 09:18:09,372.372 INFO    ] 2026-06-12 09:18:09
[2026-06-12 09:18:09,575.575 INFO    ] 2026-06-12 09:18:09
[2026-06-12 09:18:09,603.603 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 09:18:09,786.786 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 09:18:09,789.789 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 09:18:09,920.920 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 09:18:09,982.982 INFO    ] time= 12/06/2026 09:18:09
[2026-06-12 09:18:10,014.014 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 09:18:10,016.016 INFO    ] Checking for existing commands in stream...
[2026-06-12 09:18:10,087.087 INFO    ] No existing commands found in stream
[2026-06-12 09:18:15,096.096 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 09:18:15,098.098 INFO    ] Waiting 0.07 seconds before fallback handling...
[2026-06-12 09:18:15,520.520 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 09:18:15,522.522 INFO    ] Checking for system updates...
[2026-06-12 09:18:15,542.542 INFO    ] 200
[2026-06-12 09:18:15,544.544 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:18:15,577.577 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 09:18:15,578.578 INFO    ] No update needed
[2026-06-12 09:18:15,580.580 INFO    ] Checking for camera pi updates...
[2026-06-12 09:18:15,599.599 INFO    ] 200
[2026-06-12 09:18:15,601.601 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:18:15,624.624 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 09:18:15,658.658 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 09:18:15,659.659 INFO    ] No camera update needed
[2026-06-12 09:18:15,660.660 INFO    ] Script finished. Safe exiting...
[2026-06-12 09:18:15,662.662 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 09:18:15,665.665 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 09:18:15,667.667 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 09:18:17,706.706 INFO    ] ================================================
[2026-06-12 09:18:17,721.721 INFO    ] Launching Daemon at Fri Jun 12 09:18:17 IST 2026
[2026-06-12 09:18:17,732.732 INFO    ] ================================================
[2026-06-12 09:18:18,095.095 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 09:18:18
[2026-06-12 09:18:18,408.408 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 09:18:18,539.539 INFO    ] Initializing speech engine...
[2026-06-12 09:18:18,543.543 INFO    ] 2026-06-12 09:18:18
[2026-06-12 09:18:18,761.761 INFO    ] 2026-06-12 09:18:18
[2026-06-12 09:18:18,791.791 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 09:18:18,975.975 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 09:18:18,978.978 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 09:18:19,115.115 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 09:18:19,174.174 INFO    ] time= 12/06/2026 09:18:19
[2026-06-12 09:18:19,207.207 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 09:18:19,213.213 INFO    ] Checking for existing commands in stream...
[2026-06-12 09:18:19,305.305 INFO    ] No existing commands found in stream
[2026-06-12 09:18:24,311.311 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 09:18:24,313.313 INFO    ] Waiting 1.09 seconds before fallback handling...
[2026-06-12 09:18:25,749.749 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 09:18:25,751.751 INFO    ] Checking for system updates...
[2026-06-12 09:18:25,772.772 INFO    ] 200
[2026-06-12 09:18:25,773.773 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:18:25,804.804 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 09:18:25,805.805 INFO    ] No update needed
[2026-06-12 09:18:25,807.807 INFO    ] Checking for camera pi updates...
[2026-06-12 09:18:25,826.826 INFO    ] 200
[2026-06-12 09:18:25,828.828 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:18:25,853.853 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 09:18:25,898.898 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 09:18:25,900.900 INFO    ] No camera update needed
[2026-06-12 09:18:25,901.901 INFO    ] Script finished. Safe exiting...
[2026-06-12 09:18:25,902.902 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 09:18:25,906.906 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 09:18:25,909.909 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 09:18:27,956.956 INFO    ] ================================================
[2026-06-12 09:18:27,971.971 INFO    ] Launching Daemon at Fri Jun 12 09:18:27 IST 2026
[2026-06-12 09:18:27,982.982 INFO    ] ================================================
[2026-06-12 09:18:28,357.357 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 09:18:28
[2026-06-12 09:18:28,692.692 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 09:18:28,840.840 INFO    ] Initializing speech engine...
[2026-06-12 09:18:28,846.846 INFO    ] 2026-06-12 09:18:28
[2026-06-12 09:18:29,053.053 INFO    ] 2026-06-12 09:18:29
[2026-06-12 09:18:29,082.082 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 09:18:29,266.266 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 09:18:29,275.275 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 09:18:29,401.401 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 09:18:29,454.454 INFO    ] time= 12/06/2026 09:18:29
[2026-06-12 09:18:29,496.496 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 09:18:29,502.502 INFO    ] Checking for existing commands in stream...
[2026-06-12 09:18:29,569.569 INFO    ] No existing commands found in stream
[2026-06-12 09:18:34,583.583 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 09:18:34,586.586 INFO    ] Waiting 1.41 seconds before fallback handling...
[2026-06-12 09:18:36,370.370 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 09:18:36,371.371 INFO    ] Checking for system updates...
[2026-06-12 09:18:36,396.396 INFO    ] 200
[2026-06-12 09:18:36,397.397 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:18:36,428.428 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 09:18:36,430.430 INFO    ] No update needed
[2026-06-12 09:18:36,431.431 INFO    ] Checking for camera pi updates...
[2026-06-12 09:18:36,451.451 INFO    ] 200
[2026-06-12 09:18:36,452.452 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:18:36,477.477 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 09:18:36,499.499 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 09:18:36,501.501 INFO    ] No camera update needed
[2026-06-12 09:18:36,502.502 INFO    ] Script finished. Safe exiting...
[2026-06-12 09:18:36,503.503 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 09:18:36,506.506 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 09:18:36,509.509 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 09:18:38,549.549 INFO    ] ================================================
[2026-06-12 09:18:38,568.568 INFO    ] Launching Daemon at Fri Jun 12 09:18:38 IST 2026
[2026-06-12 09:18:38,579.579 INFO    ] ================================================
[2026-06-12 09:18:38,942.942 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 09:18:38
[2026-06-12 09:18:39,268.268 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 09:18:39,406.406 INFO    ] Initializing speech engine...
[2026-06-12 09:18:39,416.416 INFO    ] 2026-06-12 09:18:39
[2026-06-12 09:18:39,625.625 INFO    ] 2026-06-12 09:18:39
[2026-06-12 09:18:39,653.653 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 09:18:39,835.835 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 09:18:39,845.845 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 09:18:39,967.967 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 09:18:40,023.023 INFO    ] time= 12/06/2026 09:18:39
[2026-06-12 09:18:40,062.062 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 09:18:40,067.067 INFO    ] Checking for existing commands in stream...
[2026-06-12 09:18:40,138.138 INFO    ] No existing commands found in stream
[2026-06-12 09:18:45,157.157 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 09:18:45,159.159 INFO    ] Waiting 2.47 seconds before fallback handling...
[2026-06-12 09:18:47,949.949 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 09:18:47,951.951 INFO    ] Checking for system updates...
[2026-06-12 09:18:47,972.972 INFO    ] 200
[2026-06-12 09:18:47,974.974 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:18:48,006.006 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 09:18:48,007.007 INFO    ] No update needed
[2026-06-12 09:18:48,008.008 INFO    ] Checking for camera pi updates...
[2026-06-12 09:18:48,028.028 INFO    ] 200
[2026-06-12 09:18:48,029.029 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:18:48,052.052 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 09:18:48,099.099 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 09:18:48,101.101 INFO    ] No camera update needed
[2026-06-12 09:18:48,102.102 INFO    ] Script finished. Safe exiting...
[2026-06-12 09:18:48,103.103 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 09:18:48,106.106 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 09:18:48,109.109 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 09:18:50,147.147 INFO    ] ================================================
[2026-06-12 09:18:50,163.163 INFO    ] Launching Daemon at Fri Jun 12 09:18:50 IST 2026
[2026-06-12 09:18:50,174.174 INFO    ] ================================================
[2026-06-12 09:18:50,534.534 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 09:18:50
[2026-06-12 09:18:50,845.845 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 09:18:50,988.988 INFO    ] Initializing speech engine...
[2026-06-12 09:18:50,993.993 INFO    ] 2026-06-12 09:18:50
[2026-06-12 09:18:51,196.196 INFO    ] 2026-06-12 09:18:51
[2026-06-12 09:18:51,226.226 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 09:18:51,408.408 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 09:18:51,417.417 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 09:18:51,546.546 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 09:18:51,605.605 INFO    ] time= 12/06/2026 09:18:51
[2026-06-12 09:18:51,637.637 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 09:18:51,639.639 INFO    ] Checking for existing commands in stream...
[2026-06-12 09:18:51,709.709 INFO    ] No existing commands found in stream
[2026-06-12 09:18:56,724.724 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 09:18:56,726.726 INFO    ] Waiting 1.83 seconds before fallback handling...
[2026-06-12 09:18:58,920.920 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 09:18:58,922.922 INFO    ] Checking for system updates...
[2026-06-12 09:18:58,944.944 INFO    ] 200
[2026-06-12 09:18:58,945.945 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:18:58,978.978 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 09:18:58,979.979 INFO    ] No update needed
[2026-06-12 09:18:58,981.981 INFO    ] Checking for camera pi updates...
[2026-06-12 09:18:59,001.001 INFO    ] 200
[2026-06-12 09:18:59,002.002 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:18:59,026.026 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 09:18:59,068.068 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 09:18:59,069.069 INFO    ] No camera update needed
[2026-06-12 09:18:59,071.071 INFO    ] Script finished. Safe exiting...
[2026-06-12 09:18:59,072.072 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 09:18:59,075.075 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 09:18:59,078.078 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 09:19:01,118.118 INFO    ] ================================================
[2026-06-12 09:19:01,134.134 INFO    ] Launching Daemon at Fri Jun 12 09:19:01 IST 2026
[2026-06-12 09:19:01,145.145 INFO    ] ================================================
[2026-06-12 09:19:01,608.608 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 09:19:01
[2026-06-12 09:19:01,974.974 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 09:19:02,157.157 INFO    ] Initializing speech engine...
[2026-06-12 09:19:02,169.169 INFO    ] 2026-06-12 09:19:02
[2026-06-12 09:19:02,375.375 INFO    ] 2026-06-12 09:19:02
[2026-06-12 09:19:02,421.421 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 09:19:02,553.553 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 09:19:02,587.587 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 09:19:02,703.703 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 09:19:02,704.704 INFO    ] time= 12/06/2026 09:19:02
[2026-06-12 09:19:02,706.706 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 09:19:02,707.707 INFO    ] Checking for existing commands in stream...
[2026-06-12 09:19:02,766.766 INFO    ] No existing commands found in stream
[2026-06-12 09:19:07,775.775 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 09:19:07,778.778 INFO    ] Waiting 0.46 seconds before fallback handling...
[2026-06-12 09:19:08,600.600 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 09:19:08,602.602 INFO    ] Checking for system updates...
[2026-06-12 09:19:08,623.623 INFO    ] 200
[2026-06-12 09:19:08,625.625 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:19:08,659.659 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 09:19:08,661.661 INFO    ] No update needed
[2026-06-12 09:19:08,662.662 INFO    ] Checking for camera pi updates...
[2026-06-12 09:19:08,682.682 INFO    ] 200
[2026-06-12 09:19:08,683.683 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:19:08,706.706 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 09:19:08,742.742 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 09:19:08,744.744 INFO    ] No camera update needed
[2026-06-12 09:19:08,745.745 INFO    ] Script finished. Safe exiting...
[2026-06-12 09:19:08,746.746 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 09:19:08,749.749 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 09:19:08,752.752 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 09:19:10,792.792 INFO    ] ================================================
[2026-06-12 09:19:10,807.807 INFO    ] Launching Daemon at Fri Jun 12 09:19:10 IST 2026
[2026-06-12 09:19:10,818.818 INFO    ] ================================================
[2026-06-12 09:19:11,169.169 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 09:19:11
[2026-06-12 09:19:11,506.506 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 09:19:11,656.656 INFO    ] Initializing speech engine...
[2026-06-12 09:19:11,662.662 INFO    ] 2026-06-12 09:19:11
[2026-06-12 09:19:11,869.869 INFO    ] 2026-06-12 09:19:11
[2026-06-12 09:19:11,898.898 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 09:19:12,031.031 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 09:19:12,085.085 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 09:19:12,222.222 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 09:19:12,291.291 INFO    ] time= 12/06/2026 09:19:12
[2026-06-12 09:19:12,315.315 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 09:19:12,322.322 INFO    ] Checking for existing commands in stream...
[2026-06-12 09:19:12,388.388 INFO    ] No existing commands found in stream
[2026-06-12 09:19:17,398.398 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 09:19:17,401.401 INFO    ] Waiting 1.90 seconds before fallback handling...
[2026-06-12 09:19:19,678.678 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 09:19:19,679.679 INFO    ] Checking for system updates...
[2026-06-12 09:19:19,701.701 INFO    ] 200
[2026-06-12 09:19:19,702.702 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:19:19,733.733 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 09:19:19,734.734 INFO    ] No update needed
[2026-06-12 09:19:19,735.735 INFO    ] Checking for camera pi updates...
[2026-06-12 09:19:19,755.755 INFO    ] 200
[2026-06-12 09:19:19,757.757 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:19:19,780.780 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 09:19:19,825.825 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 09:19:19,827.827 INFO    ] No camera update needed
[2026-06-12 09:19:19,828.828 INFO    ] Script finished. Safe exiting...
[2026-06-12 09:19:19,830.830 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 09:19:19,833.833 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 09:19:19,836.836 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 09:19:21,875.875 INFO    ] ================================================
[2026-06-12 09:19:21,890.890 INFO    ] Launching Daemon at Fri Jun 12 09:19:21 IST 2026
[2026-06-12 09:19:21,901.901 INFO    ] ================================================
[2026-06-12 09:19:22,224.224 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 09:19:22
[2026-06-12 09:19:22,540.540 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 09:19:22,671.671 INFO    ] Initializing speech engine...
[2026-06-12 09:19:22,679.679 INFO    ] 2026-06-12 09:19:22
[2026-06-12 09:19:22,891.891 INFO    ] 2026-06-12 09:19:22
[2026-06-12 09:19:22,920.920 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 09:19:23,106.106 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 09:19:23,109.109 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 09:19:23,245.245 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 09:19:23,312.312 INFO    ] time= 12/06/2026 09:19:23
[2026-06-12 09:19:23,336.336 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 09:19:23,342.342 INFO    ] Checking for existing commands in stream...
[2026-06-12 09:19:23,409.409 INFO    ] No existing commands found in stream
[2026-06-12 09:19:28,434.434 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 09:19:28,436.436 INFO    ] Waiting 2.59 seconds before fallback handling...
[2026-06-12 09:19:31,402.402 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 09:19:31,404.404 INFO    ] Checking for system updates...
[2026-06-12 09:19:31,429.429 INFO    ] 200
[2026-06-12 09:19:31,431.431 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:19:31,466.466 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 09:19:31,468.468 INFO    ] No update needed
[2026-06-12 09:19:31,470.470 INFO    ] Checking for camera pi updates...
[2026-06-12 09:19:31,496.496 INFO    ] 200
[2026-06-12 09:19:31,498.498 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:19:31,525.525 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 09:19:31,560.560 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 09:19:31,562.562 INFO    ] No camera update needed
[2026-06-12 09:19:31,564.564 INFO    ] Script finished. Safe exiting...
[2026-06-12 09:19:31,565.565 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 09:19:31,569.569 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 09:19:31,573.573 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 09:19:33,605.605 INFO    ] ================================================
[2026-06-12 09:19:33,620.620 INFO    ] Launching Daemon at Fri Jun 12 09:19:33 IST 2026
[2026-06-12 09:19:33,630.630 INFO    ] ================================================
[2026-06-12 09:19:33,979.979 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 09:19:33
[2026-06-12 09:19:34,296.296 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 09:19:34,439.439 INFO    ] Initializing speech engine...
[2026-06-12 09:19:34,447.447 INFO    ] 2026-06-12 09:19:34
[2026-06-12 09:19:34,664.664 INFO    ] 2026-06-12 09:19:34
[2026-06-12 09:19:34,696.696 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 09:19:34,894.894 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 09:19:34,903.903 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 09:19:35,036.036 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 09:19:35,088.088 INFO    ] time= 12/06/2026 09:19:35
[2026-06-12 09:19:35,122.122 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 09:19:35,145.145 INFO    ] Checking for existing commands in stream...
[2026-06-12 09:19:35,222.222 INFO    ] No existing commands found in stream
[2026-06-12 09:19:40,236.236 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 09:19:40,238.238 INFO    ] Waiting 1.54 seconds before fallback handling...
[2026-06-12 09:19:42,129.129 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 09:19:42,131.131 INFO    ] Checking for system updates...
[2026-06-12 09:19:42,152.152 INFO    ] 200
[2026-06-12 09:19:42,154.154 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:19:42,186.186 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 09:19:42,188.188 INFO    ] No update needed
[2026-06-12 09:19:42,189.189 INFO    ] Checking for camera pi updates...
[2026-06-12 09:19:42,212.212 INFO    ] 200
[2026-06-12 09:19:42,214.214 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:19:42,239.239 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 09:19:42,289.289 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 09:19:42,291.291 INFO    ] No camera update needed
[2026-06-12 09:19:42,292.292 INFO    ] Script finished. Safe exiting...
[2026-06-12 09:19:42,293.293 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 09:19:42,297.297 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 09:19:42,300.300 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 09:19:44,339.339 INFO    ] ================================================
[2026-06-12 09:19:44,354.354 INFO    ] Launching Daemon at Fri Jun 12 09:19:44 IST 2026
[2026-06-12 09:19:44,365.365 INFO    ] ================================================
[2026-06-12 09:19:44,759.759 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 09:19:44
[2026-06-12 09:19:45,097.097 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 09:19:45,249.249 INFO    ] Initializing speech engine...
[2026-06-12 09:19:45,254.254 INFO    ] 2026-06-12 09:19:45
[2026-06-12 09:19:45,462.462 INFO    ] 2026-06-12 09:19:45
[2026-06-12 09:19:45,490.490 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 09:19:45,676.676 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 09:19:45,685.685 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 09:19:45,813.813 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 09:19:45,875.875 INFO    ] time= 12/06/2026 09:19:45
[2026-06-12 09:19:45,907.907 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 09:19:45,914.914 INFO    ] Checking for existing commands in stream...
[2026-06-12 09:19:46,005.005 INFO    ] No existing commands found in stream
[2026-06-12 09:19:51,019.019 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 09:19:51,028.028 INFO    ] Waiting 0.51 seconds before fallback handling...
[2026-06-12 09:19:51,903.903 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 09:19:51,905.905 INFO    ] Checking for system updates...
[2026-06-12 09:19:51,927.927 INFO    ] 200
[2026-06-12 09:19:51,929.929 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:19:51,961.961 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 09:19:51,962.962 INFO    ] No update needed
[2026-06-12 09:19:51,964.964 INFO    ] Checking for camera pi updates...
[2026-06-12 09:19:51,984.984 INFO    ] 200
[2026-06-12 09:19:51,985.985 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:19:52,009.009 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 09:19:52,147.147 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 09:19:52,149.149 INFO    ] No camera update needed
[2026-06-12 09:19:52,150.150 INFO    ] Script finished. Safe exiting...
[2026-06-12 09:19:52,152.152 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 09:19:52,155.155 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 09:19:52,158.158 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 09:19:54,199.199 INFO    ] ================================================
[2026-06-12 09:19:54,215.215 INFO    ] Launching Daemon at Fri Jun 12 09:19:54 IST 2026
[2026-06-12 09:19:54,226.226 INFO    ] ================================================
[2026-06-12 09:19:54,572.572 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 09:19:54
[2026-06-12 09:19:54,888.888 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 09:19:55,020.020 INFO    ] Initializing speech engine...
[2026-06-12 09:19:55,024.024 INFO    ] 2026-06-12 09:19:55
[2026-06-12 09:19:55,241.241 INFO    ] 2026-06-12 09:19:55
[2026-06-12 09:19:55,269.269 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 09:19:55,486.486 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 09:19:55,490.490 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 09:19:55,631.631 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 09:19:55,687.687 INFO    ] time= 12/06/2026 09:19:55
[2026-06-12 09:19:55,727.727 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 09:19:55,739.739 INFO    ] Checking for existing commands in stream...
[2026-06-12 09:19:55,814.814 INFO    ] No existing commands found in stream
[2026-06-12 09:20:00,822.822 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 09:20:00,825.825 INFO    ] Waiting 3.44 seconds before fallback handling...
[2026-06-12 09:20:08,545.545 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 09:20:08,548.548 INFO    ] Checking for system updates...
[2026-06-12 09:20:08,583.583 INFO    ] 200
[2026-06-12 09:20:08,586.586 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:20:08,630.630 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 09:20:08,631.631 INFO    ] No update needed
[2026-06-12 09:20:08,633.633 INFO    ] Checking for camera pi updates...
[2026-06-12 09:20:08,653.653 INFO    ] 200
[2026-06-12 09:20:08,655.655 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:20:08,678.678 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 09:20:08,700.700 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 09:20:08,701.701 INFO    ] No camera update needed
[2026-06-12 09:20:08,703.703 INFO    ] Script finished. Safe exiting...
[2026-06-12 09:20:08,704.704 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 09:20:08,707.707 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 09:20:08,709.709 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 09:20:10,748.748 INFO    ] ================================================
[2026-06-12 09:20:10,763.763 INFO    ] Launching Daemon at Fri Jun 12 09:20:10 IST 2026
[2026-06-12 09:20:10,774.774 INFO    ] ================================================
[2026-06-12 09:20:11,119.119 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 09:20:11
[2026-06-12 09:20:11,430.430 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 09:20:11,561.561 INFO    ] Initializing speech engine...
[2026-06-12 09:20:11,569.569 INFO    ] 2026-06-12 09:20:11
[2026-06-12 09:20:11,785.785 INFO    ] 2026-06-12 09:20:11
[2026-06-12 09:20:11,813.813 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 09:20:12,000.000 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 09:20:12,004.004 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 09:20:12,134.134 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 09:20:12,200.200 INFO    ] time= 12/06/2026 09:20:12
[2026-06-12 09:20:12,234.234 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 09:20:12,241.241 INFO    ] Checking for existing commands in stream...
[2026-06-12 09:20:12,309.309 INFO    ] No existing commands found in stream
[2026-06-12 09:20:17,318.318 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 09:20:17,321.321 INFO    ] Waiting 1.41 seconds before fallback handling...
[2026-06-12 09:20:19,077.077 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 09:20:19,079.079 INFO    ] Checking for system updates...
[2026-06-12 09:20:19,100.100 INFO    ] 200
[2026-06-12 09:20:19,101.101 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:20:19,131.131 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 09:20:19,132.132 INFO    ] No update needed
[2026-06-12 09:20:19,134.134 INFO    ] Checking for camera pi updates...
[2026-06-12 09:20:19,153.153 INFO    ] 200
[2026-06-12 09:20:19,154.154 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:20:19,177.177 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 09:20:19,216.216 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 09:20:19,217.217 INFO    ] No camera update needed
[2026-06-12 09:20:19,219.219 INFO    ] Script finished. Safe exiting...
[2026-06-12 09:20:19,220.220 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 09:20:19,223.223 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 09:20:19,226.226 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 09:20:21,263.263 INFO    ] ================================================
[2026-06-12 09:20:21,278.278 INFO    ] Launching Daemon at Fri Jun 12 09:20:21 IST 2026
[2026-06-12 09:20:21,289.289 INFO    ] ================================================
[2026-06-12 09:20:21,634.634 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 09:20:21
[2026-06-12 09:20:21,951.951 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 09:20:22,084.084 INFO    ] Initializing speech engine...
[2026-06-12 09:20:22,092.092 INFO    ] 2026-06-12 09:20:22
[2026-06-12 09:20:22,306.306 INFO    ] 2026-06-12 09:20:22
[2026-06-12 09:20:22,334.334 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 09:20:22,518.518 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 09:20:22,522.522 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 09:20:22,656.656 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 09:20:22,722.722 INFO    ] time= 12/06/2026 09:20:22
[2026-06-12 09:20:22,749.749 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 09:20:22,755.755 INFO    ] Checking for existing commands in stream...
[2026-06-12 09:20:22,821.821 INFO    ] No existing commands found in stream
[2026-06-12 09:20:27,832.832 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 09:20:27,834.834 INFO    ] Waiting 0.68 seconds before fallback handling...
[2026-06-12 09:20:28,867.867 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 09:20:28,869.869 INFO    ] Checking for system updates...
[2026-06-12 09:20:28,891.891 INFO    ] 200
[2026-06-12 09:20:28,892.892 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:20:28,922.922 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 09:20:28,924.924 INFO    ] No update needed
[2026-06-12 09:20:28,925.925 INFO    ] Checking for camera pi updates...
[2026-06-12 09:20:28,944.944 INFO    ] 200
[2026-06-12 09:20:28,945.945 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:20:28,971.971 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 09:20:29,011.011 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 09:20:29,012.012 INFO    ] No camera update needed
[2026-06-12 09:20:29,013.013 INFO    ] Script finished. Safe exiting...
[2026-06-12 09:20:29,015.015 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 09:20:29,018.018 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 09:20:29,020.020 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 09:20:31,060.060 INFO    ] ================================================
[2026-06-12 09:20:31,076.076 INFO    ] Launching Daemon at Fri Jun 12 09:20:31 IST 2026
[2026-06-12 09:20:31,087.087 INFO    ] ================================================
[2026-06-12 09:20:31,413.413 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 09:20:31
[2026-06-12 09:20:31,726.726 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 09:20:31,894.894 INFO    ] Initializing speech engine...
[2026-06-12 09:20:31,899.899 INFO    ] 2026-06-12 09:20:31
[2026-06-12 09:20:32,126.126 INFO    ] 2026-06-12 09:20:32
[2026-06-12 09:20:32,157.157 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 09:20:32,291.291 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 09:20:32,355.355 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 09:20:32,518.518 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 09:20:32,586.586 INFO    ] time= 12/06/2026 09:20:32
[2026-06-12 09:20:32,610.610 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 09:20:32,616.616 INFO    ] Checking for existing commands in stream...
[2026-06-12 09:20:32,708.708 INFO    ] No existing commands found in stream
[2026-06-12 09:20:37,723.723 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 09:20:37,726.726 INFO    ] Waiting 0.65 seconds before fallback handling...
[2026-06-12 09:20:38,767.767 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 09:20:38,768.768 INFO    ] Checking for system updates...
[2026-06-12 09:20:38,791.791 INFO    ] 200
[2026-06-12 09:20:38,792.792 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:20:38,826.826 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 09:20:38,827.827 INFO    ] No update needed
[2026-06-12 09:20:38,828.828 INFO    ] Checking for camera pi updates...
[2026-06-12 09:20:38,853.853 INFO    ] 200
[2026-06-12 09:20:38,855.855 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:20:38,880.880 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 09:20:38,920.920 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 09:20:38,921.921 INFO    ] No camera update needed
[2026-06-12 09:20:38,922.922 INFO    ] Script finished. Safe exiting...
[2026-06-12 09:20:38,924.924 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 09:20:38,926.926 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 09:20:38,929.929 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 09:20:40,967.967 INFO    ] ================================================
[2026-06-12 09:20:40,983.983 INFO    ] Launching Daemon at Fri Jun 12 09:20:40 IST 2026
[2026-06-12 09:20:40,994.994 INFO    ] ================================================
[2026-06-12 09:20:41,333.333 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 09:20:41
[2026-06-12 09:20:41,649.649 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 09:20:41,787.787 INFO    ] Initializing speech engine...
[2026-06-12 09:20:41,795.795 INFO    ] 2026-06-12 09:20:41
[2026-06-12 09:20:42,002.002 INFO    ] 2026-06-12 09:20:41
[2026-06-12 09:20:42,030.030 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 09:20:42,213.213 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 09:20:42,217.217 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 09:20:42,353.353 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 09:20:42,419.419 INFO    ] time= 12/06/2026 09:20:42
[2026-06-12 09:20:42,444.444 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 09:20:42,445.445 INFO    ] Checking for existing commands in stream...
[2026-06-12 09:20:42,517.517 INFO    ] No existing commands found in stream
[2026-06-12 09:20:47,531.531 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 09:20:47,534.534 INFO    ] Waiting 2.63 seconds before fallback handling...
[2026-06-12 09:20:50,517.517 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 09:20:50,519.519 INFO    ] Checking for system updates...
[2026-06-12 09:20:50,540.540 INFO    ] 200
[2026-06-12 09:20:50,541.541 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:20:50,572.572 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 09:20:50,573.573 INFO    ] No update needed
[2026-06-12 09:20:50,574.574 INFO    ] Checking for camera pi updates...
[2026-06-12 09:20:50,594.594 INFO    ] 200
[2026-06-12 09:20:50,595.595 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:20:50,619.619 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 09:20:50,662.662 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 09:20:50,664.664 INFO    ] No camera update needed
[2026-06-12 09:20:50,665.665 INFO    ] Script finished. Safe exiting...
[2026-06-12 09:20:50,667.667 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 09:20:50,670.670 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 09:20:50,673.673 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 09:20:52,713.713 INFO    ] ================================================
[2026-06-12 09:20:52,728.728 INFO    ] Launching Daemon at Fri Jun 12 09:20:52 IST 2026
[2026-06-12 09:20:52,739.739 INFO    ] ================================================
[2026-06-12 09:20:53,131.131 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 09:20:53
[2026-06-12 09:20:53,468.468 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 09:20:53,618.618 INFO    ] Initializing speech engine...
[2026-06-12 09:20:53,623.623 INFO    ] 2026-06-12 09:20:53
[2026-06-12 09:20:53,832.832 INFO    ] 2026-06-12 09:20:53
[2026-06-12 09:20:53,862.862 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 09:20:54,043.043 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 09:20:54,054.054 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 09:20:54,182.182 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 09:20:54,241.241 INFO    ] time= 12/06/2026 09:20:54
[2026-06-12 09:20:54,273.273 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 09:20:54,280.280 INFO    ] Checking for existing commands in stream...
[2026-06-12 09:20:54,346.346 INFO    ] No existing commands found in stream
[2026-06-12 09:20:59,361.361 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 09:20:59,364.364 INFO    ] Waiting 0.22 seconds before fallback handling...
[2026-06-12 09:20:59,947.947 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 09:20:59,949.949 INFO    ] Checking for system updates...
[2026-06-12 09:20:59,970.970 INFO    ] 200
[2026-06-12 09:20:59,971.971 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:21:00,004.004 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 09:21:00,005.005 INFO    ] No update needed
[2026-06-12 09:21:00,006.006 INFO    ] Checking for camera pi updates...
[2026-06-12 09:21:00,026.026 INFO    ] 200
[2026-06-12 09:21:00,027.027 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:21:00,050.050 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 09:21:00,086.086 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 09:21:00,087.087 INFO    ] No camera update needed
[2026-06-12 09:21:00,088.088 INFO    ] Script finished. Safe exiting...
[2026-06-12 09:21:00,090.090 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 09:21:00,093.093 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 09:21:00,095.095 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 09:21:02,153.153 INFO    ] ================================================
[2026-06-12 09:21:02,161.161 INFO    ] Launching Daemon at Fri Jun 12 09:21:02 IST 2026
[2026-06-12 09:21:02,167.167 INFO    ] ================================================
[2026-06-12 09:21:02,473.473 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 09:21:02
[2026-06-12 09:21:02,785.785 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 09:21:02,919.919 INFO    ] Initializing speech engine...
[2026-06-12 09:21:02,923.923 INFO    ] 2026-06-12 09:21:02
[2026-06-12 09:21:03,150.150 INFO    ] 2026-06-12 09:21:03
[2026-06-12 09:21:03,181.181 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 09:21:03,313.313 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 09:21:03,327.327 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 09:21:03,477.477 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 09:21:03,526.526 INFO    ] time= 12/06/2026 09:21:03
[2026-06-12 09:21:03,572.572 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 09:21:03,611.611 INFO    ] Checking for existing commands in stream...
[2026-06-12 09:21:03,707.707 INFO    ] No existing commands found in stream
[2026-06-12 09:21:08,716.716 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 09:21:08,719.719 INFO    ] Waiting 0.35 seconds before fallback handling...
[2026-06-12 09:21:09,446.446 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 09:21:09,447.447 INFO    ] Checking for system updates...
[2026-06-12 09:21:09,468.468 INFO    ] 200
[2026-06-12 09:21:09,469.469 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:21:09,501.501 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 09:21:09,503.503 INFO    ] No update needed
[2026-06-12 09:21:09,504.504 INFO    ] Checking for camera pi updates...
[2026-06-12 09:21:09,524.524 INFO    ] 200
[2026-06-12 09:21:09,526.526 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:21:09,549.549 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 09:21:09,589.589 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 09:21:09,591.591 INFO    ] No camera update needed
[2026-06-12 09:21:09,592.592 INFO    ] Script finished. Safe exiting...
[2026-06-12 09:21:09,593.593 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 09:21:09,596.596 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 09:21:09,599.599 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 09:21:11,637.637 INFO    ] ================================================
[2026-06-12 09:21:11,653.653 INFO    ] Launching Daemon at Fri Jun 12 09:21:11 IST 2026
[2026-06-12 09:21:11,663.663 INFO    ] ================================================
[2026-06-12 09:21:12,024.024 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 09:21:12
[2026-06-12 09:21:12,335.335 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 09:21:12,478.478 INFO    ] Initializing speech engine...
[2026-06-12 09:21:12,482.482 INFO    ] 2026-06-12 09:21:12
[2026-06-12 09:21:12,688.688 INFO    ] 2026-06-12 09:21:12
[2026-06-12 09:21:12,717.717 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 09:21:12,901.901 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 09:21:12,909.909 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 09:21:13,043.043 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 09:21:13,107.107 INFO    ] time= 12/06/2026 09:21:13
[2026-06-12 09:21:13,133.133 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 09:21:13,140.140 INFO    ] Checking for existing commands in stream...
[2026-06-12 09:21:13,207.207 INFO    ] No existing commands found in stream
[2026-06-12 09:21:18,221.221 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 09:21:18,224.224 INFO    ] Waiting 2.28 seconds before fallback handling...
[2026-06-12 09:21:20,836.836 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 09:21:20,838.838 INFO    ] Checking for system updates...
[2026-06-12 09:21:20,859.859 INFO    ] 200
[2026-06-12 09:21:20,860.860 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:21:20,893.893 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 09:21:20,894.894 INFO    ] No update needed
[2026-06-12 09:21:20,896.896 INFO    ] Checking for camera pi updates...
[2026-06-12 09:21:20,915.915 INFO    ] 200
[2026-06-12 09:21:20,916.916 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:21:20,939.939 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 09:21:20,977.977 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 09:21:20,978.978 INFO    ] No camera update needed
[2026-06-12 09:21:20,980.980 INFO    ] Script finished. Safe exiting...
[2026-06-12 09:21:20,981.981 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 09:21:20,984.984 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 09:21:20,987.987 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 09:21:23,027.027 INFO    ] ================================================
[2026-06-12 09:21:23,042.042 INFO    ] Launching Daemon at Fri Jun 12 09:21:23 IST 2026
[2026-06-12 09:21:23,053.053 INFO    ] ================================================
[2026-06-12 09:21:23,426.426 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 09:21:23
[2026-06-12 09:21:23,760.760 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 09:21:23,899.899 INFO    ] Initializing speech engine...
[2026-06-12 09:21:23,912.912 INFO    ] 2026-06-12 09:21:23
[2026-06-12 09:21:24,123.123 INFO    ] 2026-06-12 09:21:24
[2026-06-12 09:21:24,152.152 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 09:21:24,339.339 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 09:21:24,343.343 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 09:21:24,497.497 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 09:21:24,550.550 INFO    ] time= 12/06/2026 09:21:24
[2026-06-12 09:21:24,574.574 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 09:21:24,581.581 INFO    ] Checking for existing commands in stream...
[2026-06-12 09:21:24,673.673 INFO    ] No existing commands found in stream
[2026-06-12 09:21:29,681.681 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 09:21:29,683.683 INFO    ] Waiting 2.98 seconds before fallback handling...
[2026-06-12 09:21:33,053.053 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 09:21:33,055.055 INFO    ] Checking for system updates...
[2026-06-12 09:21:33,077.077 INFO    ] 200
[2026-06-12 09:21:33,078.078 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:21:33,113.113 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 09:21:33,115.115 INFO    ] No update needed
[2026-06-12 09:21:33,116.116 INFO    ] Checking for camera pi updates...
[2026-06-12 09:21:33,138.138 INFO    ] 200
[2026-06-12 09:21:33,140.140 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:21:33,163.163 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 09:21:33,200.200 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 09:21:33,201.201 INFO    ] No camera update needed
[2026-06-12 09:21:33,203.203 INFO    ] Script finished. Safe exiting...
[2026-06-12 09:21:33,204.204 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 09:21:33,207.207 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 09:21:33,210.210 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 09:21:35,249.249 INFO    ] ================================================
[2026-06-12 09:21:35,264.264 INFO    ] Launching Daemon at Fri Jun 12 09:21:35 IST 2026
[2026-06-12 09:21:35,275.275 INFO    ] ================================================
[2026-06-12 09:21:35,636.636 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 09:21:35
[2026-06-12 09:21:35,950.950 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 09:21:36,083.083 INFO    ] Initializing speech engine...
[2026-06-12 09:21:36,088.088 INFO    ] 2026-06-12 09:21:36
[2026-06-12 09:21:36,281.281 INFO    ] 2026-06-12 09:21:36
[2026-06-12 09:21:36,325.325 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 09:21:36,484.484 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 09:21:36,534.534 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 09:21:36,698.698 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 09:21:36,750.750 INFO    ] time= 12/06/2026 09:21:36
[2026-06-12 09:21:36,785.785 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 09:21:36,808.808 INFO    ] Checking for existing commands in stream...
[2026-06-12 09:21:36,886.886 INFO    ] No existing commands found in stream
[2026-06-12 09:21:41,895.895 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 09:21:41,898.898 INFO    ] Waiting 1.73 seconds before fallback handling...
[2026-06-12 09:21:43,987.987 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 09:21:43,989.989 INFO    ] Checking for system updates...
[2026-06-12 09:21:44,011.011 INFO    ] 200
[2026-06-12 09:21:44,013.013 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:21:44,049.049 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 09:21:44,050.050 INFO    ] No update needed
[2026-06-12 09:21:44,052.052 INFO    ] Checking for camera pi updates...
[2026-06-12 09:21:44,074.074 INFO    ] 200
[2026-06-12 09:21:44,075.075 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:21:44,100.100 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 09:21:44,139.139 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 09:21:44,141.141 INFO    ] No camera update needed
[2026-06-12 09:21:44,142.142 INFO    ] Script finished. Safe exiting...
[2026-06-12 09:21:44,143.143 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 09:21:44,146.146 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 09:21:44,149.149 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 09:21:46,188.188 INFO    ] ================================================
[2026-06-12 09:21:46,204.204 INFO    ] Launching Daemon at Fri Jun 12 09:21:46 IST 2026
[2026-06-12 09:21:46,218.218 INFO    ] ================================================
[2026-06-12 09:21:46,555.555 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 09:21:46
[2026-06-12 09:21:46,871.871 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 09:21:47,006.006 INFO    ] Initializing speech engine...
[2026-06-12 09:21:47,016.016 INFO    ] 2026-06-12 09:21:47
[2026-06-12 09:21:47,243.243 INFO    ] 2026-06-12 09:21:47
[2026-06-12 09:21:47,274.274 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 09:21:47,408.408 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 09:21:47,466.466 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 09:21:47,620.620 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 09:21:47,666.666 INFO    ] time= 12/06/2026 09:21:47
[2026-06-12 09:21:47,705.705 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 09:21:47,728.728 INFO    ] Checking for existing commands in stream...
[2026-06-12 09:21:47,832.832 INFO    ] No existing commands found in stream
[2026-06-12 09:21:52,852.852 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 09:21:52,855.855 INFO    ] Waiting 0.92 seconds before fallback handling...
[2026-06-12 09:21:54,117.117 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 09:21:54,119.119 INFO    ] Checking for system updates...
[2026-06-12 09:21:54,139.139 INFO    ] 200
[2026-06-12 09:21:54,141.141 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:21:54,171.171 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 09:21:54,173.173 INFO    ] No update needed
[2026-06-12 09:21:54,174.174 INFO    ] Checking for camera pi updates...
[2026-06-12 09:21:54,194.194 INFO    ] 200
[2026-06-12 09:21:54,195.195 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:21:54,219.219 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 09:21:54,362.362 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 09:21:54,364.364 INFO    ] No camera update needed
[2026-06-12 09:21:54,365.365 INFO    ] Script finished. Safe exiting...
[2026-06-12 09:21:54,366.366 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 09:21:54,369.369 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 09:21:54,372.372 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 09:21:56,410.410 INFO    ] ================================================
[2026-06-12 09:21:56,425.425 INFO    ] Launching Daemon at Fri Jun 12 09:21:56 IST 2026
[2026-06-12 09:21:56,436.436 INFO    ] ================================================
[2026-06-12 09:21:56,805.805 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 09:21:56
[2026-06-12 09:21:57,118.118 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 09:21:57,248.248 INFO    ] Initializing speech engine...
[2026-06-12 09:21:57,253.253 INFO    ] 2026-06-12 09:21:57
[2026-06-12 09:21:57,472.472 INFO    ] 2026-06-12 09:21:57
[2026-06-12 09:21:57,502.502 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 09:21:57,688.688 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 09:21:57,692.692 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 09:21:57,824.824 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 09:21:57,886.886 INFO    ] time= 12/06/2026 09:21:57
[2026-06-12 09:21:57,919.919 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 09:21:57,925.925 INFO    ] Checking for existing commands in stream...
[2026-06-12 09:21:57,992.992 INFO    ] No existing commands found in stream
[2026-06-12 09:22:03,001.001 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 09:22:03,010.010 INFO    ] Waiting 0.81 seconds before fallback handling...
[2026-06-12 09:22:04,181.181 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 09:22:04,183.183 INFO    ] Checking for system updates...
[2026-06-12 09:22:04,204.204 INFO    ] 200
[2026-06-12 09:22:04,205.205 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:22:04,235.235 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 09:22:04,237.237 INFO    ] No update needed
[2026-06-12 09:22:04,238.238 INFO    ] Checking for camera pi updates...
[2026-06-12 09:22:04,258.258 INFO    ] 200
[2026-06-12 09:22:04,260.260 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:22:04,285.285 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 09:22:04,320.320 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 09:22:04,322.322 INFO    ] No camera update needed
[2026-06-12 09:22:04,323.323 INFO    ] Script finished. Safe exiting...
[2026-06-12 09:22:04,324.324 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 09:22:04,328.328 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 09:22:04,331.331 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 09:22:06,372.372 INFO    ] ================================================
[2026-06-12 09:22:06,392.392 INFO    ] Launching Daemon at Fri Jun 12 09:22:06 IST 2026
[2026-06-12 09:22:06,403.403 INFO    ] ================================================
[2026-06-12 09:22:06,791.791 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 09:22:06
[2026-06-12 09:22:07,128.128 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 09:22:07,279.279 INFO    ] Initializing speech engine...
[2026-06-12 09:22:07,284.284 INFO    ] 2026-06-12 09:22:07
[2026-06-12 09:22:07,494.494 INFO    ] 2026-06-12 09:22:07
[2026-06-12 09:22:07,524.524 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 09:22:07,709.709 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 09:22:07,718.718 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 09:22:07,869.869 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 09:22:07,923.923 INFO    ] time= 12/06/2026 09:22:07
[2026-06-12 09:22:07,945.945 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 09:22:07,952.952 INFO    ] Checking for existing commands in stream...
[2026-06-12 09:22:08,018.018 INFO    ] No existing commands found in stream
[2026-06-12 09:22:13,029.029 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 09:22:13,033.033 INFO    ] Waiting 3.09 seconds before fallback handling...
[2026-06-12 09:22:16,506.506 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 09:22:16,507.507 INFO    ] Checking for system updates...
[2026-06-12 09:22:16,530.530 INFO    ] 200
[2026-06-12 09:22:16,531.531 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:22:16,562.562 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 09:22:16,563.563 INFO    ] No update needed
[2026-06-12 09:22:16,565.565 INFO    ] Checking for camera pi updates...
[2026-06-12 09:22:16,585.585 INFO    ] 200
[2026-06-12 09:22:16,587.587 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:22:16,613.613 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 09:22:16,653.653 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 09:22:16,654.654 INFO    ] No camera update needed
[2026-06-12 09:22:16,655.655 INFO    ] Script finished. Safe exiting...
[2026-06-12 09:22:16,657.657 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 09:22:16,660.660 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 09:22:16,663.663 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 09:22:18,702.702 INFO    ] ================================================
[2026-06-12 09:22:18,717.717 INFO    ] Launching Daemon at Fri Jun 12 09:22:18 IST 2026
[2026-06-12 09:22:18,728.728 INFO    ] ================================================
[2026-06-12 09:22:19,091.091 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 09:22:19
[2026-06-12 09:22:19,402.402 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 09:22:19,543.543 INFO    ] Initializing speech engine...
[2026-06-12 09:22:19,548.548 INFO    ] 2026-06-12 09:22:19
[2026-06-12 09:22:19,765.765 INFO    ] 2026-06-12 09:22:19
[2026-06-12 09:22:19,794.794 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 09:22:19,978.978 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 09:22:19,988.988 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 09:22:20,129.129 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 09:22:20,188.188 INFO    ] time= 12/06/2026 09:22:20
[2026-06-12 09:22:20,210.210 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 09:22:20,216.216 INFO    ] Checking for existing commands in stream...
[2026-06-12 09:22:20,283.283 INFO    ] No existing commands found in stream
[2026-06-12 09:22:25,292.292 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 09:22:25,295.295 INFO    ] Waiting 2.12 seconds before fallback handling...
[2026-06-12 09:22:27,769.769 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 09:22:27,775.775 INFO    ] Checking for system updates...
[2026-06-12 09:22:27,796.796 INFO    ] 200
[2026-06-12 09:22:27,797.797 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:22:27,830.830 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 09:22:27,831.831 INFO    ] No update needed
[2026-06-12 09:22:27,832.832 INFO    ] Checking for camera pi updates...
[2026-06-12 09:22:27,852.852 INFO    ] 200
[2026-06-12 09:22:27,853.853 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:22:27,876.876 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 09:22:27,917.917 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 09:22:27,919.919 INFO    ] No camera update needed
[2026-06-12 09:22:27,920.920 INFO    ] Script finished. Safe exiting...
[2026-06-12 09:22:27,922.922 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 09:22:27,924.924 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 09:22:27,927.927 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 09:22:29,967.967 INFO    ] ================================================
[2026-06-12 09:22:29,983.983 INFO    ] Launching Daemon at Fri Jun 12 09:22:29 IST 2026
[2026-06-12 09:22:29,993.993 INFO    ] ================================================
[2026-06-12 09:22:30,348.348 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 09:22:30
[2026-06-12 09:22:30,660.660 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 09:22:30,792.792 INFO    ] Initializing speech engine...
[2026-06-12 09:22:30,797.797 INFO    ] 2026-06-12 09:22:30
[2026-06-12 09:22:31,026.026 INFO    ] 2026-06-12 09:22:30
[2026-06-12 09:22:31,057.057 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 09:22:31,252.252 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 09:22:31,259.259 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 09:22:31,437.437 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 09:22:31,493.493 INFO    ] time= 12/06/2026 09:22:31
[2026-06-12 09:22:31,522.522 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 09:22:31,530.530 INFO    ] Checking for existing commands in stream...
[2026-06-12 09:22:31,610.610 INFO    ] No existing commands found in stream
[2026-06-12 09:22:36,619.619 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 09:22:36,622.622 INFO    ] Waiting 3.62 seconds before fallback handling...
[2026-06-12 09:22:40,641.641 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 09:22:40,643.643 INFO    ] Checking for system updates...
[2026-06-12 09:22:40,680.680 INFO    ] 200
[2026-06-12 09:22:40,682.682 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:22:40,740.740 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 09:22:40,743.743 INFO    ] No update needed
[2026-06-12 09:22:40,745.745 INFO    ] Checking for camera pi updates...
[2026-06-12 09:22:40,780.780 INFO    ] 200
[2026-06-12 09:22:40,781.781 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:22:40,806.806 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 09:22:40,854.854 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 09:22:40,855.855 INFO    ] No camera update needed
[2026-06-12 09:22:40,856.856 INFO    ] Script finished. Safe exiting...
[2026-06-12 09:22:40,858.858 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 09:22:40,861.861 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 09:22:40,864.864 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 09:22:42,903.903 INFO    ] ================================================
[2026-06-12 09:22:42,918.918 INFO    ] Launching Daemon at Fri Jun 12 09:22:42 IST 2026
[2026-06-12 09:22:42,930.930 INFO    ] ================================================
[2026-06-12 09:22:43,287.287 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 09:22:43
[2026-06-12 09:22:43,603.603 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 09:22:43,745.745 INFO    ] Initializing speech engine...
[2026-06-12 09:22:43,751.751 INFO    ] 2026-06-12 09:22:43
[2026-06-12 09:22:43,954.954 INFO    ] 2026-06-12 09:22:43
[2026-06-12 09:22:43,982.982 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 09:22:44,168.168 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 09:22:44,169.169 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 09:22:44,308.308 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 09:22:44,366.366 INFO    ] time= 12/06/2026 09:22:44
[2026-06-12 09:22:44,394.394 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 09:22:44,404.404 INFO    ] Checking for existing commands in stream...
[2026-06-12 09:22:44,476.476 INFO    ] No existing commands found in stream
[2026-06-12 09:22:49,485.485 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 09:22:49,487.487 INFO    ] Waiting 1.02 seconds before fallback handling...
[2026-06-12 09:22:50,857.857 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 09:22:50,858.858 INFO    ] Checking for system updates...
[2026-06-12 09:22:50,879.879 INFO    ] 200
[2026-06-12 09:22:50,880.880 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:22:50,913.913 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 09:22:50,914.914 INFO    ] No update needed
[2026-06-12 09:22:50,915.915 INFO    ] Checking for camera pi updates...
[2026-06-12 09:22:50,935.935 INFO    ] 200
[2026-06-12 09:22:50,937.937 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:22:50,960.960 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 09:22:50,995.995 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 09:22:50,996.996 INFO    ] No camera update needed
[2026-06-12 09:22:50,998.998 INFO    ] Script finished. Safe exiting...
[2026-06-12 09:22:50,999.999 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 09:22:51,002.002 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 09:22:51,005.005 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 09:22:53,047.047 INFO    ] ================================================
[2026-06-12 09:22:53,063.063 INFO    ] Launching Daemon at Fri Jun 12 09:22:53 IST 2026
[2026-06-12 09:22:53,074.074 INFO    ] ================================================
[2026-06-12 09:22:53,400.400 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 09:22:53
[2026-06-12 09:22:53,711.711 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 09:22:53,839.839 INFO    ] Initializing speech engine...
[2026-06-12 09:22:53,844.844 INFO    ] 2026-06-12 09:22:53
[2026-06-12 09:22:54,059.059 INFO    ] 2026-06-12 09:22:54
[2026-06-12 09:22:54,089.089 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 09:22:54,270.270 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 09:22:54,273.273 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 09:22:54,401.401 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 09:22:54,467.467 INFO    ] time= 12/06/2026 09:22:54
[2026-06-12 09:22:54,498.498 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 09:22:54,505.505 INFO    ] Checking for existing commands in stream...
[2026-06-12 09:22:54,572.572 INFO    ] No existing commands found in stream
[2026-06-12 09:22:59,601.601 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 09:22:59,604.604 INFO    ] Waiting 1.63 seconds before fallback handling...
[2026-06-12 09:23:01,617.617 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 09:23:01,620.620 INFO    ] Checking for system updates...
[2026-06-12 09:23:01,654.654 INFO    ] 200
[2026-06-12 09:23:01,656.656 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:23:01,733.733 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 09:23:01,736.736 INFO    ] No update needed
[2026-06-12 09:23:01,739.739 INFO    ] Checking for camera pi updates...
[2026-06-12 09:23:01,774.774 INFO    ] 200
[2026-06-12 09:23:01,777.777 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:23:01,809.809 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 09:23:01,847.847 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 09:23:01,849.849 INFO    ] No camera update needed
[2026-06-12 09:23:01,851.851 INFO    ] Script finished. Safe exiting...
[2026-06-12 09:23:01,852.852 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 09:23:01,856.856 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 09:23:01,860.860 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 09:23:03,901.901 INFO    ] ================================================
[2026-06-12 09:23:03,917.917 INFO    ] Launching Daemon at Fri Jun 12 09:23:03 IST 2026
[2026-06-12 09:23:03,928.928 INFO    ] ================================================
[2026-06-12 09:23:04,279.279 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 09:23:04
[2026-06-12 09:23:04,611.611 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 09:23:04,754.754 INFO    ] Initializing speech engine...
[2026-06-12 09:23:04,765.765 INFO    ] 2026-06-12 09:23:04
[2026-06-12 09:23:04,972.972 INFO    ] 2026-06-12 09:23:04
[2026-06-12 09:23:05,001.001 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 09:23:05,401.401 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 09:23:05,408.408 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 09:23:05,527.527 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 09:23:05,529.529 INFO    ] time= 12/06/2026 09:23:05
[2026-06-12 09:23:05,532.532 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 09:23:05,535.535 INFO    ] Checking for existing commands in stream...
[2026-06-12 09:23:05,612.612 INFO    ] No existing commands found in stream
[2026-06-12 09:23:10,622.622 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 09:23:10,625.625 INFO    ] Waiting 1.80 seconds before fallback handling...
[2026-06-12 09:23:12,798.798 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 09:23:12,799.799 INFO    ] Checking for system updates...
[2026-06-12 09:23:12,821.821 INFO    ] 200
[2026-06-12 09:23:12,822.822 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:23:12,856.856 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 09:23:12,857.857 INFO    ] No update needed
[2026-06-12 09:23:12,858.858 INFO    ] Checking for camera pi updates...
[2026-06-12 09:23:12,877.877 INFO    ] 200
[2026-06-12 09:23:12,879.879 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:23:12,903.903 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 09:23:12,940.940 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 09:23:12,941.941 INFO    ] No camera update needed
[2026-06-12 09:23:12,943.943 INFO    ] Script finished. Safe exiting...
[2026-06-12 09:23:12,944.944 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 09:23:12,947.947 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 09:23:12,950.950 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 09:23:14,989.989 INFO    ] ================================================
[2026-06-12 09:23:15,005.005 INFO    ] Launching Daemon at Fri Jun 12 09:23:14 IST 2026
[2026-06-12 09:23:15,016.016 INFO    ] ================================================
[2026-06-12 09:23:15,361.361 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 09:23:15
[2026-06-12 09:23:15,678.678 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 09:23:15,816.816 INFO    ] Initializing speech engine...
[2026-06-12 09:23:15,829.829 INFO    ] 2026-06-12 09:23:15
[2026-06-12 09:23:16,045.045 INFO    ] 2026-06-12 09:23:16
[2026-06-12 09:23:16,076.076 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 09:23:16,218.218 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 09:23:16,274.274 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 09:23:16,420.420 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 09:23:16,478.478 INFO    ] time= 12/06/2026 09:23:16
[2026-06-12 09:23:16,521.521 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 09:23:16,523.523 INFO    ] Checking for existing commands in stream...
[2026-06-12 09:23:16,624.624 INFO    ] No existing commands found in stream
[2026-06-12 09:23:21,634.634 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 09:23:21,636.636 INFO    ] Waiting 0.78 seconds before fallback handling...
[2026-06-12 09:23:22,796.796 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 09:23:22,798.798 INFO    ] Checking for system updates...
[2026-06-12 09:23:22,841.841 INFO    ] 200
[2026-06-12 09:23:22,844.844 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:23:22,897.897 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 09:23:22,900.900 INFO    ] No update needed
[2026-06-12 09:23:22,903.903 INFO    ] Checking for camera pi updates...
[2026-06-12 09:23:22,940.940 INFO    ] 200
[2026-06-12 09:23:22,942.942 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:23:22,968.968 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 09:23:23,003.003 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 09:23:23,005.005 INFO    ] No camera update needed
[2026-06-12 09:23:23,006.006 INFO    ] Script finished. Safe exiting...
[2026-06-12 09:23:23,007.007 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 09:23:23,010.010 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 09:23:23,013.013 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 09:23:25,052.052 INFO    ] ================================================
[2026-06-12 09:23:25,068.068 INFO    ] Launching Daemon at Fri Jun 12 09:23:25 IST 2026
[2026-06-12 09:23:25,079.079 INFO    ] ================================================
[2026-06-12 09:23:25,431.431 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 09:23:25
[2026-06-12 09:23:25,763.763 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 09:23:25,907.907 INFO    ] Initializing speech engine...
[2026-06-12 09:23:25,917.917 INFO    ] 2026-06-12 09:23:25
[2026-06-12 09:23:26,128.128 INFO    ] 2026-06-12 09:23:26
[2026-06-12 09:23:26,158.158 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 09:23:26,525.525 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 09:23:26,568.568 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 09:23:26,672.672 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 09:23:26,674.674 INFO    ] time= 12/06/2026 09:23:26
[2026-06-12 09:23:26,675.675 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 09:23:26,701.701 INFO    ] Checking for existing commands in stream...
[2026-06-12 09:23:26,774.774 INFO    ] No existing commands found in stream
[2026-06-12 09:23:31,781.781 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 09:23:31,783.783 INFO    ] Waiting 2.54 seconds before fallback handling...
[2026-06-12 09:23:34,710.710 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 09:23:34,712.712 INFO    ] Checking for system updates...
[2026-06-12 09:23:34,733.733 INFO    ] 200
[2026-06-12 09:23:34,734.734 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:23:34,764.764 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 09:23:34,766.766 INFO    ] No update needed
[2026-06-12 09:23:34,767.767 INFO    ] Checking for camera pi updates...
[2026-06-12 09:23:34,787.787 INFO    ] 200
[2026-06-12 09:23:34,788.788 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:23:34,812.812 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 09:23:34,852.852 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 09:23:34,853.853 INFO    ] No camera update needed
[2026-06-12 09:23:34,855.855 INFO    ] Script finished. Safe exiting...
[2026-06-12 09:23:34,857.857 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 09:23:34,861.861 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 09:23:34,864.864 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 09:23:36,903.903 INFO    ] ================================================
[2026-06-12 09:23:36,919.919 INFO    ] Launching Daemon at Fri Jun 12 09:23:36 IST 2026
[2026-06-12 09:23:36,930.930 INFO    ] ================================================
[2026-06-12 09:23:37,276.276 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 09:23:37
[2026-06-12 09:23:37,594.594 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 09:23:37,728.728 INFO    ] Initializing speech engine...
[2026-06-12 09:23:37,733.733 INFO    ] 2026-06-12 09:23:37
[2026-06-12 09:23:37,964.964 INFO    ] 2026-06-12 09:23:37
[2026-06-12 09:23:37,994.994 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 09:23:38,127.127 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 09:23:38,194.194 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 09:23:38,335.335 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 09:23:38,392.392 INFO    ] time= 12/06/2026 09:23:38
[2026-06-12 09:23:38,433.433 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 09:23:38,444.444 INFO    ] Checking for existing commands in stream...
[2026-06-12 09:23:38,520.520 INFO    ] No existing commands found in stream
[2026-06-12 09:23:43,531.531 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 09:23:43,533.533 INFO    ] Waiting 3.50 seconds before fallback handling...
[2026-06-12 09:23:47,419.419 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 09:23:47,421.421 INFO    ] Checking for system updates...
[2026-06-12 09:23:47,442.442 INFO    ] 200
[2026-06-12 09:23:47,443.443 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:23:47,474.474 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 09:23:47,475.475 INFO    ] No update needed
[2026-06-12 09:23:47,476.476 INFO    ] Checking for camera pi updates...
[2026-06-12 09:23:47,497.497 INFO    ] 200
[2026-06-12 09:23:47,499.499 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:23:47,525.525 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 09:23:47,562.562 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 09:23:47,563.563 INFO    ] No camera update needed
[2026-06-12 09:23:47,565.565 INFO    ] Script finished. Safe exiting...
[2026-06-12 09:23:47,566.566 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 09:23:47,569.569 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 09:23:47,572.572 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 09:23:49,612.612 INFO    ] ================================================
[2026-06-12 09:23:49,628.628 INFO    ] Launching Daemon at Fri Jun 12 09:23:49 IST 2026
[2026-06-12 09:23:49,640.640 INFO    ] ================================================
[2026-06-12 09:23:49,964.964 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 09:23:49
[2026-06-12 09:23:50,274.274 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 09:23:50,405.405 INFO    ] Initializing speech engine...
[2026-06-12 09:23:50,413.413 INFO    ] 2026-06-12 09:23:50
[2026-06-12 09:23:50,627.627 INFO    ] 2026-06-12 09:23:50
[2026-06-12 09:23:50,656.656 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 09:23:50,842.842 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 09:23:50,850.850 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 09:23:50,978.978 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 09:23:51,036.036 INFO    ] time= 12/06/2026 09:23:50
[2026-06-12 09:23:51,060.060 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 09:23:51,076.076 INFO    ] Checking for existing commands in stream...
[2026-06-12 09:23:51,149.149 INFO    ] No existing commands found in stream
[2026-06-12 09:23:56,158.158 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 09:23:56,161.161 INFO    ] Waiting 1.31 seconds before fallback handling...
[2026-06-12 09:23:57,848.848 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 09:23:57,850.850 INFO    ] Checking for system updates...
[2026-06-12 09:23:57,871.871 INFO    ] 200
[2026-06-12 09:23:57,872.872 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:23:57,904.904 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 09:23:57,905.905 INFO    ] No update needed
[2026-06-12 09:23:57,906.906 INFO    ] Checking for camera pi updates...
[2026-06-12 09:23:57,929.929 INFO    ] 200
[2026-06-12 09:23:57,930.930 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:23:57,955.955 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 09:23:58,093.093 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 09:23:58,094.094 INFO    ] No camera update needed
[2026-06-12 09:23:58,095.095 INFO    ] Script finished. Safe exiting...
[2026-06-12 09:23:58,096.096 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 09:23:58,099.099 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 09:23:58,102.102 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 09:24:00,142.142 INFO    ] ================================================
[2026-06-12 09:24:00,158.158 INFO    ] Launching Daemon at Fri Jun 12 09:24:00 IST 2026
[2026-06-12 09:24:00,169.169 INFO    ] ================================================
[2026-06-12 09:24:00,518.518 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 09:24:00
[2026-06-12 09:24:00,834.834 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 09:24:00,981.981 INFO    ] Initializing speech engine...
[2026-06-12 09:24:00,986.986 INFO    ] 2026-06-12 09:24:00
[2026-06-12 09:24:01,188.188 INFO    ] 2026-06-12 09:24:01
[2026-06-12 09:24:01,217.217 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 09:24:01,400.400 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 09:24:01,403.403 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 09:24:01,569.569 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 09:24:01,608.608 INFO    ] time= 12/06/2026 09:24:01
[2026-06-12 09:24:01,629.629 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 09:24:01,635.635 INFO    ] Checking for existing commands in stream...
[2026-06-12 09:24:01,702.702 INFO    ] No existing commands found in stream
[2026-06-12 09:24:06,712.712 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 09:24:06,714.714 INFO    ] Waiting 3.08 seconds before fallback handling...
[2026-06-12 09:24:10,150.150 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 09:24:10,152.152 INFO    ] Checking for system updates...
[2026-06-12 09:24:10,172.172 INFO    ] 200
[2026-06-12 09:24:10,174.174 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:24:10,204.204 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 09:24:10,205.205 INFO    ] No update needed
[2026-06-12 09:24:10,207.207 INFO    ] Checking for camera pi updates...
[2026-06-12 09:24:10,226.226 INFO    ] 200
[2026-06-12 09:24:10,227.227 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:24:10,252.252 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 09:24:10,289.289 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 09:24:10,291.291 INFO    ] No camera update needed
[2026-06-12 09:24:10,292.292 INFO    ] Script finished. Safe exiting...
[2026-06-12 09:24:10,293.293 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 09:24:10,296.296 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 09:24:10,299.299 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 09:24:12,338.338 INFO    ] ================================================
[2026-06-12 09:24:12,353.353 INFO    ] Launching Daemon at Fri Jun 12 09:24:12 IST 2026
[2026-06-12 09:24:12,364.364 INFO    ] ================================================
[2026-06-12 09:24:12,706.706 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 09:24:12
[2026-06-12 09:24:13,031.031 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 09:24:13,181.181 INFO    ] Initializing speech engine...
[2026-06-12 09:24:13,187.187 INFO    ] 2026-06-12 09:24:13
[2026-06-12 09:24:13,394.394 INFO    ] 2026-06-12 09:24:13
[2026-06-12 09:24:13,424.424 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 09:24:13,608.608 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 09:24:13,621.621 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 09:24:13,769.769 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 09:24:13,817.817 INFO    ] time= 12/06/2026 09:24:13
[2026-06-12 09:24:13,840.840 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 09:24:13,847.847 INFO    ] Checking for existing commands in stream...
[2026-06-12 09:24:13,913.913 INFO    ] No existing commands found in stream
[2026-06-12 09:24:18,928.928 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 09:24:19,391.391 INFO    ] Waiting 1.32 seconds before fallback handling...
[2026-06-12 09:24:21,059.059 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 09:24:21,061.061 INFO    ] Checking for system updates...
[2026-06-12 09:24:21,082.082 INFO    ] 200
[2026-06-12 09:24:21,083.083 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:24:21,116.116 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 09:24:21,117.117 INFO    ] No update needed
[2026-06-12 09:24:21,119.119 INFO    ] Checking for camera pi updates...
[2026-06-12 09:24:21,140.140 INFO    ] 200
[2026-06-12 09:24:21,141.141 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:24:21,166.166 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 09:24:21,216.216 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 09:24:21,217.217 INFO    ] No camera update needed
[2026-06-12 09:24:21,219.219 INFO    ] Script finished. Safe exiting...
[2026-06-12 09:24:21,220.220 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 09:24:21,223.223 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 09:24:21,226.226 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 09:24:23,265.265 INFO    ] ================================================
[2026-06-12 09:24:23,281.281 INFO    ] Launching Daemon at Fri Jun 12 09:24:23 IST 2026
[2026-06-12 09:24:23,293.293 INFO    ] ================================================
[2026-06-12 09:24:23,643.643 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 09:24:23
[2026-06-12 09:24:23,955.955 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 09:24:24,097.097 INFO    ] Initializing speech engine...
[2026-06-12 09:24:24,103.103 INFO    ] 2026-06-12 09:24:24
[2026-06-12 09:24:24,306.306 INFO    ] 2026-06-12 09:24:24
[2026-06-12 09:24:24,334.334 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 09:24:24,456.456 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 09:24:24,518.518 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 09:24:24,649.649 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 09:24:24,705.705 INFO    ] time= 12/06/2026 09:24:24
[2026-06-12 09:24:24,744.744 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 09:24:24,749.749 INFO    ] Checking for existing commands in stream...
[2026-06-12 09:24:24,821.821 INFO    ] No existing commands found in stream
[2026-06-12 09:24:29,835.835 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 09:24:29,838.838 INFO    ] Waiting 1.94 seconds before fallback handling...
[2026-06-12 09:24:32,130.130 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 09:24:32,132.132 INFO    ] Checking for system updates...
[2026-06-12 09:24:32,159.159 INFO    ] 200
[2026-06-12 09:24:32,160.160 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:24:32,195.195 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 09:24:32,196.196 INFO    ] No update needed
[2026-06-12 09:24:32,198.198 INFO    ] Checking for camera pi updates...
[2026-06-12 09:24:32,220.220 INFO    ] 200
[2026-06-12 09:24:32,221.221 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:24:32,247.247 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 09:24:32,276.276 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 09:24:32,278.278 INFO    ] No camera update needed
[2026-06-12 09:24:32,279.279 INFO    ] Script finished. Safe exiting...
[2026-06-12 09:24:32,280.280 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 09:24:32,284.284 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 09:24:32,287.287 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 09:24:34,327.327 INFO    ] ================================================
[2026-06-12 09:24:34,343.343 INFO    ] Launching Daemon at Fri Jun 12 09:24:34 IST 2026
[2026-06-12 09:24:34,354.354 INFO    ] ================================================
[2026-06-12 09:24:34,722.722 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 09:24:34
[2026-06-12 09:24:35,062.062 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 09:24:35,225.225 INFO    ] Initializing speech engine...
[2026-06-12 09:24:35,229.229 INFO    ] 2026-06-12 09:24:35
[2026-06-12 09:24:35,432.432 INFO    ] 2026-06-12 09:24:35
[2026-06-12 09:24:35,463.463 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 09:24:35,590.590 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 09:24:35,654.654 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 09:24:35,794.794 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 09:24:35,853.853 INFO    ] time= 12/06/2026 09:24:35
[2026-06-12 09:24:35,886.886 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 09:24:35,893.893 INFO    ] Checking for existing commands in stream...
[2026-06-12 09:24:35,959.959 INFO    ] No existing commands found in stream
[2026-06-12 09:24:40,969.969 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 09:24:40,972.972 INFO    ] Waiting 0.57 seconds before fallback handling...
[2026-06-12 09:24:41,918.918 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 09:24:41,919.919 INFO    ] Checking for system updates...
[2026-06-12 09:24:41,947.947 INFO    ] 200
[2026-06-12 09:24:41,949.949 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:24:41,979.979 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 09:24:41,980.980 INFO    ] No update needed
[2026-06-12 09:24:41,982.982 INFO    ] Checking for camera pi updates...
[2026-06-12 09:24:42,001.001 INFO    ] 200
[2026-06-12 09:24:42,002.002 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:24:42,026.026 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 09:24:42,063.063 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 09:24:42,064.064 INFO    ] No camera update needed
[2026-06-12 09:24:42,065.065 INFO    ] Script finished. Safe exiting...
[2026-06-12 09:24:42,067.067 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 09:24:42,069.069 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 09:24:42,072.072 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 09:24:44,112.112 INFO    ] ================================================
[2026-06-12 09:24:44,128.128 INFO    ] Launching Daemon at Fri Jun 12 09:24:44 IST 2026
[2026-06-12 09:24:44,139.139 INFO    ] ================================================
[2026-06-12 09:24:44,496.496 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 09:24:44
[2026-06-12 09:24:44,807.807 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 09:24:44,936.936 INFO    ] Initializing speech engine...
[2026-06-12 09:24:44,945.945 INFO    ] 2026-06-12 09:24:44
[2026-06-12 09:24:45,166.166 INFO    ] 2026-06-12 09:24:45
[2026-06-12 09:24:45,195.195 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 09:24:45,379.379 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 09:24:45,383.383 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 09:24:45,522.522 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 09:24:45,581.581 INFO    ] time= 12/06/2026 09:24:45
[2026-06-12 09:24:45,616.616 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 09:24:45,622.622 INFO    ] Checking for existing commands in stream...
[2026-06-12 09:24:45,689.689 INFO    ] No existing commands found in stream
[2026-06-12 09:24:50,700.700 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 09:24:50,703.703 INFO    ] Waiting 0.77 seconds before fallback handling...
[2026-06-12 09:24:51,844.844 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 09:24:51,846.846 INFO    ] Checking for system updates...
[2026-06-12 09:24:51,867.867 INFO    ] 200
[2026-06-12 09:24:51,869.869 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:24:51,902.902 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 09:24:51,903.903 INFO    ] No update needed
[2026-06-12 09:24:51,905.905 INFO    ] Checking for camera pi updates...
[2026-06-12 09:24:51,924.924 INFO    ] 200
[2026-06-12 09:24:51,926.926 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:24:51,949.949 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 09:24:51,983.983 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 09:24:51,984.984 INFO    ] No camera update needed
[2026-06-12 09:24:51,986.986 INFO    ] Script finished. Safe exiting...
[2026-06-12 09:24:51,987.987 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 09:24:51,990.990 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 09:24:51,993.993 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 09:24:54,034.034 INFO    ] ================================================
[2026-06-12 09:24:54,050.050 INFO    ] Launching Daemon at Fri Jun 12 09:24:54 IST 2026
[2026-06-12 09:24:54,061.061 INFO    ] ================================================
[2026-06-12 09:24:54,451.451 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 09:24:54
[2026-06-12 09:24:54,785.785 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 09:24:54,939.939 INFO    ] Initializing speech engine...
[2026-06-12 09:24:54,943.943 INFO    ] 2026-06-12 09:24:54
[2026-06-12 09:24:55,152.152 INFO    ] 2026-06-12 09:24:55
[2026-06-12 09:24:55,181.181 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 09:24:55,369.369 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 09:24:55,378.378 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 09:24:55,510.510 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 09:24:55,579.579 INFO    ] time= 12/06/2026 09:24:55
[2026-06-12 09:24:55,604.604 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 09:24:55,610.610 INFO    ] Checking for existing commands in stream...
[2026-06-12 09:24:55,678.678 INFO    ] No existing commands found in stream
[2026-06-12 09:25:00,691.691 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 09:25:00,693.693 INFO    ] Waiting 0.73 seconds before fallback handling...
[2026-06-12 09:25:01,948.948 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 09:25:01,950.950 INFO    ] Checking for system updates...
[2026-06-12 09:25:01,988.988 INFO    ] 200
[2026-06-12 09:25:01,991.991 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:25:02,105.105 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 09:25:02,108.108 INFO    ] No update needed
[2026-06-12 09:25:02,114.114 INFO    ] Checking for camera pi updates...
[2026-06-12 09:25:02,174.174 INFO    ] 200
[2026-06-12 09:25:02,176.176 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:25:02,262.262 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 09:25:02,301.301 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 09:25:02,304.304 INFO    ] No camera update needed
[2026-06-12 09:25:02,305.305 INFO    ] Script finished. Safe exiting...
[2026-06-12 09:25:02,308.308 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 09:25:02,315.315 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 09:25:02,325.325 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 09:25:04,358.358 INFO    ] ================================================
[2026-06-12 09:25:04,373.373 INFO    ] Launching Daemon at Fri Jun 12 09:25:04 IST 2026
[2026-06-12 09:25:04,384.384 INFO    ] ================================================
[2026-06-12 09:25:04,749.749 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 09:25:04
[2026-06-12 09:25:05,065.065 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 09:25:05,204.204 INFO    ] Initializing speech engine...
[2026-06-12 09:25:05,212.212 INFO    ] 2026-06-12 09:25:05
[2026-06-12 09:25:05,434.434 INFO    ] 2026-06-12 09:25:05
[2026-06-12 09:25:05,465.465 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 09:25:05,658.658 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 09:25:05,662.662 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 09:25:05,804.804 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 09:25:05,861.861 INFO    ] time= 12/06/2026 09:25:05
[2026-06-12 09:25:05,904.904 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 09:25:05,906.906 INFO    ] Checking for existing commands in stream...
[2026-06-12 09:25:05,982.982 INFO    ] No existing commands found in stream
[2026-06-12 09:25:11,001.001 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 09:25:11,004.004 INFO    ] Waiting 0.63 seconds before fallback handling...
[2026-06-12 09:25:12,033.033 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 09:25:12,034.034 INFO    ] Checking for system updates...
[2026-06-12 09:25:12,056.056 INFO    ] 200
[2026-06-12 09:25:12,057.057 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:25:12,089.089 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 09:25:12,091.091 INFO    ] No update needed
[2026-06-12 09:25:12,092.092 INFO    ] Checking for camera pi updates...
[2026-06-12 09:25:12,116.116 INFO    ] 200
[2026-06-12 09:25:12,117.117 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:25:12,140.140 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 09:25:12,164.164 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 09:25:12,165.165 INFO    ] No camera update needed
[2026-06-12 09:25:12,167.167 INFO    ] Script finished. Safe exiting...
[2026-06-12 09:25:12,168.168 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 09:25:12,171.171 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 09:25:12,174.174 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 09:25:14,212.212 INFO    ] ================================================
[2026-06-12 09:25:14,228.228 INFO    ] Launching Daemon at Fri Jun 12 09:25:14 IST 2026
[2026-06-12 09:25:14,239.239 INFO    ] ================================================
[2026-06-12 09:25:14,623.623 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 09:25:14
[2026-06-12 09:25:14,956.956 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 09:25:15,106.106 INFO    ] Initializing speech engine...
[2026-06-12 09:25:15,112.112 INFO    ] 2026-06-12 09:25:15
[2026-06-12 09:25:15,320.320 INFO    ] 2026-06-12 09:25:15
[2026-06-12 09:25:15,349.349 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 09:25:15,535.535 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 09:25:15,538.538 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 09:25:15,673.673 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 09:25:15,736.736 INFO    ] time= 12/06/2026 09:25:15
[2026-06-12 09:25:15,769.769 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 09:25:15,776.776 INFO    ] Checking for existing commands in stream...
[2026-06-12 09:25:15,844.844 INFO    ] No existing commands found in stream
[2026-06-12 09:25:20,868.868 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 09:25:20,872.872 INFO    ] Waiting 3.49 seconds before fallback handling...
[2026-06-12 09:25:24,710.710 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 09:25:24,711.711 INFO    ] Checking for system updates...
[2026-06-12 09:25:24,732.732 INFO    ] 200
[2026-06-12 09:25:24,733.733 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:25:24,765.765 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 09:25:24,766.766 INFO    ] No update needed
[2026-06-12 09:25:24,768.768 INFO    ] Checking for camera pi updates...
[2026-06-12 09:25:24,788.788 INFO    ] 200
[2026-06-12 09:25:24,789.789 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:25:24,814.814 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 09:25:24,854.854 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 09:25:24,856.856 INFO    ] No camera update needed
[2026-06-12 09:25:24,857.857 INFO    ] Script finished. Safe exiting...
[2026-06-12 09:25:24,858.858 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 09:25:24,861.861 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 09:25:24,864.864 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 09:25:26,902.902 INFO    ] ================================================
[2026-06-12 09:25:26,918.918 INFO    ] Launching Daemon at Fri Jun 12 09:25:26 IST 2026
[2026-06-12 09:25:26,929.929 INFO    ] ================================================
[2026-06-12 09:25:27,275.275 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 09:25:27
[2026-06-12 09:25:27,593.593 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 09:25:27,727.727 INFO    ] Initializing speech engine...
[2026-06-12 09:25:27,732.732 INFO    ] 2026-06-12 09:25:27
[2026-06-12 09:25:27,960.960 INFO    ] 2026-06-12 09:25:27
[2026-06-12 09:25:27,991.991 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 09:25:28,184.184 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 09:25:28,189.189 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 09:25:28,328.328 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 09:25:28,379.379 INFO    ] time= 12/06/2026 09:25:28
[2026-06-12 09:25:28,417.417 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 09:25:28,434.434 INFO    ] Checking for existing commands in stream...
[2026-06-12 09:25:28,509.509 INFO    ] No existing commands found in stream
[2026-06-12 09:25:33,520.520 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 09:25:33,523.523 INFO    ] Waiting 2.77 seconds before fallback handling...
[2026-06-12 09:25:36,648.648 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 09:25:36,650.650 INFO    ] Checking for system updates...
[2026-06-12 09:25:36,671.671 INFO    ] 200
[2026-06-12 09:25:36,672.672 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:25:36,703.703 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 09:25:36,704.704 INFO    ] No update needed
[2026-06-12 09:25:36,705.705 INFO    ] Checking for camera pi updates...
[2026-06-12 09:25:36,725.725 INFO    ] 200
[2026-06-12 09:25:36,727.727 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:25:36,752.752 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 09:25:36,797.797 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 09:25:36,799.799 INFO    ] No camera update needed
[2026-06-12 09:25:36,800.800 INFO    ] Script finished. Safe exiting...
[2026-06-12 09:25:36,801.801 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 09:25:36,804.804 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 09:25:36,807.807 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 09:25:38,846.846 INFO    ] ================================================
[2026-06-12 09:25:38,861.861 INFO    ] Launching Daemon at Fri Jun 12 09:25:38 IST 2026
[2026-06-12 09:25:38,872.872 INFO    ] ================================================
[2026-06-12 09:25:39,210.210 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 09:25:39
[2026-06-12 09:25:39,521.521 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 09:25:39,654.654 INFO    ] Initializing speech engine...
[2026-06-12 09:25:39,658.658 INFO    ] 2026-06-12 09:25:39
[2026-06-12 09:25:39,884.884 INFO    ] 2026-06-12 09:25:39
[2026-06-12 09:25:39,915.915 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 09:25:40,112.112 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 09:25:40,115.115 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 09:25:40,257.257 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 09:25:40,314.314 INFO    ] time= 12/06/2026 09:25:40
[2026-06-12 09:25:40,354.354 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 09:25:40,360.360 INFO    ] Checking for existing commands in stream...
[2026-06-12 09:25:40,434.434 INFO    ] No existing commands found in stream
[2026-06-12 09:25:45,445.445 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 09:25:45,448.448 INFO    ] Waiting 2.79 seconds before fallback handling...
[2026-06-12 09:25:48,616.616 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 09:25:48,617.617 INFO    ] Checking for system updates...
[2026-06-12 09:25:48,638.638 INFO    ] 200
[2026-06-12 09:25:48,639.639 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:25:48,674.674 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 09:25:48,675.675 INFO    ] No update needed
[2026-06-12 09:25:48,677.677 INFO    ] Checking for camera pi updates...
[2026-06-12 09:25:48,696.696 INFO    ] 200
[2026-06-12 09:25:48,697.697 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:25:48,721.721 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 09:25:48,763.763 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 09:25:48,764.764 INFO    ] No camera update needed
[2026-06-12 09:25:48,765.765 INFO    ] Script finished. Safe exiting...
[2026-06-12 09:25:48,766.766 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 09:25:48,769.769 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 09:25:48,772.772 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 09:25:50,811.811 INFO    ] ================================================
[2026-06-12 09:25:50,826.826 INFO    ] Launching Daemon at Fri Jun 12 09:25:50 IST 2026
[2026-06-12 09:25:50,836.836 INFO    ] ================================================
[2026-06-12 09:25:51,208.208 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 09:25:51
[2026-06-12 09:25:51,540.540 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 09:25:51,691.691 INFO    ] Initializing speech engine...
[2026-06-12 09:25:51,696.696 INFO    ] 2026-06-12 09:25:51
[2026-06-12 09:25:51,905.905 INFO    ] 2026-06-12 09:25:51
[2026-06-12 09:25:51,934.934 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 09:25:52,122.122 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 09:25:52,132.132 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 09:25:52,264.264 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 09:25:52,332.332 INFO    ] time= 12/06/2026 09:25:52
[2026-06-12 09:25:52,357.357 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 09:25:52,363.363 INFO    ] Checking for existing commands in stream...
[2026-06-12 09:25:52,430.430 INFO    ] No existing commands found in stream
[2026-06-12 09:25:57,440.440 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 09:25:57,443.443 INFO    ] Waiting 1.13 seconds before fallback handling...
[2026-06-12 09:25:58,921.921 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 09:25:58,923.923 INFO    ] Checking for system updates...
[2026-06-12 09:25:58,947.947 INFO    ] 200
[2026-06-12 09:25:58,949.949 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:25:58,981.981 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 09:25:58,983.983 INFO    ] No update needed
[2026-06-12 09:25:58,984.984 INFO    ] Checking for camera pi updates...
[2026-06-12 09:25:59,005.005 INFO    ] 200
[2026-06-12 09:25:59,007.007 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:25:59,032.032 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 09:25:59,072.072 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 09:25:59,073.073 INFO    ] No camera update needed
[2026-06-12 09:25:59,075.075 INFO    ] Script finished. Safe exiting...
[2026-06-12 09:25:59,076.076 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 09:25:59,079.079 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 09:25:59,082.082 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 09:26:01,121.121 INFO    ] ================================================
[2026-06-12 09:26:01,136.136 INFO    ] Launching Daemon at Fri Jun 12 09:26:01 IST 2026
[2026-06-12 09:26:01,147.147 INFO    ] ================================================
[2026-06-12 09:26:01,587.587 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 09:26:01
[2026-06-12 09:26:01,954.954 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 09:26:02,115.115 INFO    ] Initializing speech engine...
[2026-06-12 09:26:02,120.120 INFO    ] 2026-06-12 09:26:02
[2026-06-12 09:26:02,355.355 INFO    ] 2026-06-12 09:26:02
[2026-06-12 09:26:02,398.398 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 09:26:02,533.533 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 09:26:02,597.597 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 09:26:02,742.742 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 09:26:02,805.805 INFO    ] time= 12/06/2026 09:26:02
[2026-06-12 09:26:02,829.829 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 09:26:02,836.836 INFO    ] Checking for existing commands in stream...
[2026-06-12 09:26:02,904.904 INFO    ] No existing commands found in stream
[2026-06-12 09:26:07,913.913 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 09:26:07,916.916 INFO    ] Waiting 3.36 seconds before fallback handling...
[2026-06-12 09:26:11,650.650 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 09:26:11,652.652 INFO    ] Checking for system updates...
[2026-06-12 09:26:11,673.673 INFO    ] 200
[2026-06-12 09:26:11,674.674 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:26:11,706.706 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 09:26:11,708.708 INFO    ] No update needed
[2026-06-12 09:26:11,709.709 INFO    ] Checking for camera pi updates...
[2026-06-12 09:26:11,730.730 INFO    ] 200
[2026-06-12 09:26:11,732.732 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:26:11,756.756 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 09:26:11,786.786 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 09:26:11,787.787 INFO    ] No camera update needed
[2026-06-12 09:26:11,789.789 INFO    ] Script finished. Safe exiting...
[2026-06-12 09:26:11,790.790 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 09:26:11,794.794 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 09:26:11,797.797 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 09:26:13,836.836 INFO    ] ================================================
[2026-06-12 09:26:13,852.852 INFO    ] Launching Daemon at Fri Jun 12 09:26:13 IST 2026
[2026-06-12 09:26:13,862.862 INFO    ] ================================================
[2026-06-12 09:26:14,214.214 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 09:26:14
[2026-06-12 09:26:14,530.530 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 09:26:14,661.661 INFO    ] Initializing speech engine...
[2026-06-12 09:26:14,664.664 INFO    ] 2026-06-12 09:26:14
[2026-06-12 09:26:14,880.880 INFO    ] 2026-06-12 09:26:14
[2026-06-12 09:26:14,909.909 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 09:26:15,046.046 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 09:26:15,094.094 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 09:26:15,231.231 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 09:26:15,297.297 INFO    ] time= 12/06/2026 09:26:15
[2026-06-12 09:26:15,321.321 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 09:26:15,327.327 INFO    ] Checking for existing commands in stream...
[2026-06-12 09:26:15,393.393 INFO    ] No existing commands found in stream
[2026-06-12 09:26:20,399.399 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 09:26:20,402.402 INFO    ] Waiting 3.01 seconds before fallback handling...
[2026-06-12 09:26:23,797.797 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 09:26:23,799.799 INFO    ] Checking for system updates...
[2026-06-12 09:26:23,820.820 INFO    ] 200
[2026-06-12 09:26:23,821.821 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:26:23,851.851 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 09:26:23,853.853 INFO    ] No update needed
[2026-06-12 09:26:23,854.854 INFO    ] Checking for camera pi updates...
[2026-06-12 09:26:23,874.874 INFO    ] 200
[2026-06-12 09:26:23,875.875 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:26:23,899.899 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 09:26:23,940.940 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 09:26:23,942.942 INFO    ] No camera update needed
[2026-06-12 09:26:23,943.943 INFO    ] Script finished. Safe exiting...
[2026-06-12 09:26:23,944.944 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 09:26:23,947.947 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 09:26:23,950.950 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 09:26:25,988.988 INFO    ] ================================================
[2026-06-12 09:26:26,004.004 INFO    ] Launching Daemon at Fri Jun 12 09:26:25 IST 2026
[2026-06-12 09:26:26,015.015 INFO    ] ================================================
[2026-06-12 09:26:26,371.371 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 09:26:26
[2026-06-12 09:26:26,703.703 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 09:26:26,840.840 INFO    ] Initializing speech engine...
[2026-06-12 09:26:26,848.848 INFO    ] 2026-06-12 09:26:26
[2026-06-12 09:26:27,062.062 INFO    ] 2026-06-12 09:26:27
[2026-06-12 09:26:27,092.092 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 09:26:27,273.273 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 09:26:27,283.283 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 09:26:27,412.412 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 09:26:27,479.479 INFO    ] time= 12/06/2026 09:26:27
[2026-06-12 09:26:27,503.503 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 09:26:27,509.509 INFO    ] Checking for existing commands in stream...
[2026-06-12 09:26:27,576.576 INFO    ] No existing commands found in stream
[2026-06-12 09:26:32,600.600 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 09:26:32,604.604 INFO    ] Waiting 1.78 seconds before fallback handling...
[2026-06-12 09:26:34,786.786 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 09:26:34,787.787 INFO    ] Checking for system updates...
[2026-06-12 09:26:34,810.810 INFO    ] 200
[2026-06-12 09:26:34,812.812 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:26:34,845.845 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 09:26:34,846.846 INFO    ] No update needed
[2026-06-12 09:26:34,848.848 INFO    ] Checking for camera pi updates...
[2026-06-12 09:26:34,867.867 INFO    ] 200
[2026-06-12 09:26:34,869.869 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:26:34,894.894 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 09:26:34,940.940 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 09:26:34,942.942 INFO    ] No camera update needed
[2026-06-12 09:26:34,943.943 INFO    ] Script finished. Safe exiting...
[2026-06-12 09:26:34,944.944 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 09:26:34,947.947 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 09:26:34,950.950 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 09:26:36,990.990 INFO    ] ================================================
[2026-06-12 09:26:37,005.005 INFO    ] Launching Daemon at Fri Jun 12 09:26:36 IST 2026
[2026-06-12 09:26:37,016.016 INFO    ] ================================================
[2026-06-12 09:26:37,379.379 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 09:26:37
[2026-06-12 09:26:37,696.696 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 09:26:37,840.840 INFO    ] Initializing speech engine...
[2026-06-12 09:26:37,844.844 INFO    ] 2026-06-12 09:26:37
[2026-06-12 09:26:38,049.049 INFO    ] 2026-06-12 09:26:38
[2026-06-12 09:26:38,077.077 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 09:26:38,259.259 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 09:26:38,263.263 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 09:26:38,392.392 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 09:26:38,452.452 INFO    ] time= 12/06/2026 09:26:38
[2026-06-12 09:26:38,476.476 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 09:26:38,492.492 INFO    ] Checking for existing commands in stream...
[2026-06-12 09:26:38,564.564 INFO    ] No existing commands found in stream
[2026-06-12 09:26:43,573.573 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 09:26:43,575.575 INFO    ] Waiting 1.94 seconds before fallback handling...
[2026-06-12 09:26:45,877.877 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 09:26:45,879.879 INFO    ] Checking for system updates...
[2026-06-12 09:26:45,900.900 INFO    ] 200
[2026-06-12 09:26:45,902.902 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:26:45,931.931 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 09:26:45,933.933 INFO    ] No update needed
[2026-06-12 09:26:45,934.934 INFO    ] Checking for camera pi updates...
[2026-06-12 09:26:45,954.954 INFO    ] 200
[2026-06-12 09:26:45,956.956 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:26:45,980.980 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 09:26:46,015.015 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 09:26:46,017.017 INFO    ] No camera update needed
[2026-06-12 09:26:46,018.018 INFO    ] Script finished. Safe exiting...
[2026-06-12 09:26:46,019.019 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 09:26:46,022.022 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 09:26:46,025.025 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 09:26:48,064.064 INFO    ] ================================================
[2026-06-12 09:26:48,079.079 INFO    ] Launching Daemon at Fri Jun 12 09:26:48 IST 2026
[2026-06-12 09:26:48,089.089 INFO    ] ================================================
[2026-06-12 09:26:48,434.434 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 09:26:48
[2026-06-12 09:26:48,767.767 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 09:26:48,917.917 INFO    ] Initializing speech engine...
[2026-06-12 09:26:48,923.923 INFO    ] 2026-06-12 09:26:48
[2026-06-12 09:26:49,131.131 INFO    ] 2026-06-12 09:26:49
[2026-06-12 09:26:49,161.161 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 09:26:49,347.347 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 09:26:49,356.356 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 09:26:49,485.485 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 09:26:49,547.547 INFO    ] time= 12/06/2026 09:26:49
[2026-06-12 09:26:49,581.581 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 09:26:49,587.587 INFO    ] Checking for existing commands in stream...
[2026-06-12 09:26:49,705.705 INFO    ] No existing commands found in stream
[2026-06-12 09:26:54,715.715 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 09:26:54,718.718 INFO    ] Waiting 1.66 seconds before fallback handling...
[2026-06-12 09:26:56,780.780 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 09:26:56,782.782 INFO    ] Checking for system updates...
[2026-06-12 09:26:56,803.803 INFO    ] 200
[2026-06-12 09:26:56,804.804 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:26:56,834.834 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 09:26:56,836.836 INFO    ] No update needed
[2026-06-12 09:26:56,837.837 INFO    ] Checking for camera pi updates...
[2026-06-12 09:26:56,857.857 INFO    ] 200
[2026-06-12 09:26:56,858.858 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:26:56,883.883 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 09:26:56,924.924 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 09:26:56,925.925 INFO    ] No camera update needed
[2026-06-12 09:26:56,927.927 INFO    ] Script finished. Safe exiting...
[2026-06-12 09:26:56,928.928 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 09:26:56,931.931 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 09:26:56,934.934 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 09:26:58,972.972 INFO    ] ================================================
[2026-06-12 09:26:58,987.987 INFO    ] Launching Daemon at Fri Jun 12 09:26:58 IST 2026
[2026-06-12 09:26:59,998.998 INFO    ] ================================================
[2026-06-12 09:26:59,351.351 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 09:26:59
[2026-06-12 09:26:59,671.671 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 09:26:59,806.806 INFO    ] Initializing speech engine...
[2026-06-12 09:26:59,811.811 INFO    ] 2026-06-12 09:26:59
[2026-06-12 09:27:00,039.039 INFO    ] 2026-06-12 09:27:00
[2026-06-12 09:27:00,070.070 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 09:27:00,202.202 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 09:27:00,245.245 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 09:27:00,411.411 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 09:27:00,473.473 INFO    ] time= 12/06/2026 09:27:00
[2026-06-12 09:27:00,502.502 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 09:27:00,520.520 INFO    ] Checking for existing commands in stream...
[2026-06-12 09:27:00,597.597 INFO    ] No existing commands found in stream
[2026-06-12 09:27:05,602.602 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 09:27:05,605.605 INFO    ] Waiting 1.55 seconds before fallback handling...
[2026-06-12 09:27:07,494.494 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 09:27:07,495.495 INFO    ] Checking for system updates...
[2026-06-12 09:27:07,515.515 INFO    ] 200
[2026-06-12 09:27:07,517.517 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:27:07,560.560 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 09:27:07,561.561 INFO    ] No update needed
[2026-06-12 09:27:07,563.563 INFO    ] Checking for camera pi updates...
[2026-06-12 09:27:07,582.582 INFO    ] 200
[2026-06-12 09:27:07,583.583 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:27:07,607.607 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 09:27:07,641.641 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 09:27:07,642.642 INFO    ] No camera update needed
[2026-06-12 09:27:07,643.643 INFO    ] Script finished. Safe exiting...
[2026-06-12 09:27:07,644.644 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 09:27:07,647.647 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 09:27:07,650.650 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 09:27:09,689.689 INFO    ] ================================================
[2026-06-12 09:27:09,704.704 INFO    ] Launching Daemon at Fri Jun 12 09:27:09 IST 2026
[2026-06-12 09:27:09,715.715 INFO    ] ================================================
[2026-06-12 09:27:10,065.065 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 09:27:10
[2026-06-12 09:27:10,377.377 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 09:27:10,519.519 INFO    ] Initializing speech engine...
[2026-06-12 09:27:10,524.524 INFO    ] 2026-06-12 09:27:10
[2026-06-12 09:27:10,726.726 INFO    ] 2026-06-12 09:27:10
[2026-06-12 09:27:10,755.755 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 09:27:10,939.939 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 09:27:10,948.948 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 09:27:11,077.077 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 09:27:11,131.131 INFO    ] time= 12/06/2026 09:27:11
[2026-06-12 09:27:11,165.165 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 09:27:11,170.170 INFO    ] Checking for existing commands in stream...
[2026-06-12 09:27:11,242.242 INFO    ] No existing commands found in stream
[2026-06-12 09:27:16,256.256 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 09:27:16,259.259 INFO    ] Waiting 2.64 seconds before fallback handling...
[2026-06-12 09:27:21,339.339 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 09:27:21,342.342 INFO    ] Checking for system updates...
[2026-06-12 09:27:21,378.378 INFO    ] 200
[2026-06-12 09:27:21,381.381 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:27:21,427.427 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 09:27:21,429.429 INFO    ] No update needed
[2026-06-12 09:27:21,430.430 INFO    ] Checking for camera pi updates...
[2026-06-12 09:27:21,453.453 INFO    ] 200
[2026-06-12 09:27:21,455.455 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:27:21,481.481 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 09:27:21,515.515 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 09:27:21,516.516 INFO    ] No camera update needed
[2026-06-12 09:27:21,518.518 INFO    ] Script finished. Safe exiting...
[2026-06-12 09:27:21,519.519 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 09:27:21,523.523 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 09:27:21,526.526 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 09:27:23,564.564 INFO    ] ================================================
[2026-06-12 09:27:23,579.579 INFO    ] Launching Daemon at Fri Jun 12 09:27:23 IST 2026
[2026-06-12 09:27:23,590.590 INFO    ] ================================================
[2026-06-12 09:27:23,924.924 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 09:27:23
[2026-06-12 09:27:24,237.237 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 09:27:24,375.375 INFO    ] Initializing speech engine...
[2026-06-12 09:27:24,385.385 INFO    ] 2026-06-12 09:27:24
[2026-06-12 09:27:24,589.589 INFO    ] 2026-06-12 09:27:24
[2026-06-12 09:27:24,618.618 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 09:27:24,803.803 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 09:27:24,812.812 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 09:27:24,936.936 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 09:27:24,991.991 INFO    ] time= 12/06/2026 09:27:24
[2026-06-12 09:27:25,031.031 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 09:27:25,036.036 INFO    ] Checking for existing commands in stream...
[2026-06-12 09:27:25,109.109 INFO    ] No existing commands found in stream
[2026-06-12 09:27:30,118.118 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 09:27:30,121.121 INFO    ] Waiting 0.99 seconds before fallback handling...
[2026-06-12 09:27:31,467.467 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 09:27:31,469.469 INFO    ] Checking for system updates...
[2026-06-12 09:27:31,489.489 INFO    ] 200
[2026-06-12 09:27:31,491.491 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:27:31,523.523 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 09:27:31,525.525 INFO    ] No update needed
[2026-06-12 09:27:31,526.526 INFO    ] Checking for camera pi updates...
[2026-06-12 09:27:31,545.545 INFO    ] 200
[2026-06-12 09:27:31,547.547 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:27:31,571.571 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 09:27:31,617.617 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 09:27:31,618.618 INFO    ] No camera update needed
[2026-06-12 09:27:31,620.620 INFO    ] Script finished. Safe exiting...
[2026-06-12 09:27:31,621.621 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 09:27:31,624.624 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 09:27:31,627.627 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 09:27:33,658.658 INFO    ] ================================================
[2026-06-12 09:27:33,673.673 INFO    ] Launching Daemon at Fri Jun 12 09:27:33 IST 2026
[2026-06-12 09:27:33,685.685 INFO    ] ================================================
[2026-06-12 09:27:34,053.053 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 09:27:34
[2026-06-12 09:27:34,387.387 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 09:27:34,538.538 INFO    ] Initializing speech engine...
[2026-06-12 09:27:34,543.543 INFO    ] 2026-06-12 09:27:34
[2026-06-12 09:27:34,751.751 INFO    ] 2026-06-12 09:27:34
[2026-06-12 09:27:34,781.781 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 09:27:34,965.965 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 09:27:34,975.975 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 09:27:35,107.107 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 09:27:35,171.171 INFO    ] time= 12/06/2026 09:27:35
[2026-06-12 09:27:35,199.199 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 09:27:35,206.206 INFO    ] Checking for existing commands in stream...
[2026-06-12 09:27:35,297.297 INFO    ] No existing commands found in stream
[2026-06-12 09:27:40,306.306 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 09:27:40,309.309 INFO    ] Waiting 0.54 seconds before fallback handling...
[2026-06-12 09:27:41,223.223 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 09:27:41,225.225 INFO    ] Checking for system updates...
[2026-06-12 09:27:41,246.246 INFO    ] 200
[2026-06-12 09:27:41,247.247 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:27:41,282.282 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 09:27:41,283.283 INFO    ] No update needed
[2026-06-12 09:27:41,285.285 INFO    ] Checking for camera pi updates...
[2026-06-12 09:27:41,304.304 INFO    ] 200
[2026-06-12 09:27:41,306.306 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:27:41,329.329 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 09:27:41,370.370 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 09:27:41,372.372 INFO    ] No camera update needed
[2026-06-12 09:27:41,373.373 INFO    ] Script finished. Safe exiting...
[2026-06-12 09:27:41,374.374 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 09:27:41,378.378 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 09:27:41,381.381 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 09:27:43,420.420 INFO    ] ================================================
[2026-06-12 09:27:43,436.436 INFO    ] Launching Daemon at Fri Jun 12 09:27:43 IST 2026
[2026-06-12 09:27:43,447.447 INFO    ] ================================================
[2026-06-12 09:27:43,781.781 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 09:27:43
[2026-06-12 09:27:44,092.092 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 09:27:44,223.223 INFO    ] Initializing speech engine...
[2026-06-12 09:27:44,230.230 INFO    ] 2026-06-12 09:27:44
[2026-06-12 09:27:44,444.444 INFO    ] 2026-06-12 09:27:44
[2026-06-12 09:27:44,472.472 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 09:27:44,657.657 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 09:27:44,661.661 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 09:27:44,799.799 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 09:27:44,865.865 INFO    ] time= 12/06/2026 09:27:44
[2026-06-12 09:27:44,890.890 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 09:27:44,896.896 INFO    ] Checking for existing commands in stream...
[2026-06-12 09:27:44,963.963 INFO    ] No existing commands found in stream
[2026-06-12 09:27:49,972.972 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 09:27:49,975.975 INFO    ] Waiting 2.81 seconds before fallback handling...
[2026-06-12 09:27:53,172.172 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 09:27:53,174.174 INFO    ] Checking for system updates...
[2026-06-12 09:27:53,195.195 INFO    ] 200
[2026-06-12 09:27:53,197.197 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:27:53,227.227 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 09:27:53,228.228 INFO    ] No update needed
[2026-06-12 09:27:53,230.230 INFO    ] Checking for camera pi updates...
[2026-06-12 09:27:53,251.251 INFO    ] 200
[2026-06-12 09:27:53,252.252 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:27:53,279.279 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 09:27:53,316.316 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 09:27:53,318.318 INFO    ] No camera update needed
[2026-06-12 09:27:53,319.319 INFO    ] Script finished. Safe exiting...
[2026-06-12 09:27:53,321.321 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 09:27:53,324.324 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 09:27:53,327.327 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 09:27:55,365.365 INFO    ] ================================================
[2026-06-12 09:27:55,381.381 INFO    ] Launching Daemon at Fri Jun 12 09:27:55 IST 2026
[2026-06-12 09:27:55,391.391 INFO    ] ================================================
[2026-06-12 09:27:55,736.736 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 09:27:55
[2026-06-12 09:27:56,074.074 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 09:27:56,227.227 INFO    ] Initializing speech engine...
[2026-06-12 09:27:56,231.231 INFO    ] 2026-06-12 09:27:56
[2026-06-12 09:27:56,436.436 INFO    ] 2026-06-12 09:27:56
[2026-06-12 09:27:56,465.465 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 09:27:56,649.649 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 09:27:56,660.660 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 09:27:56,787.787 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 09:27:56,855.855 INFO    ] time= 12/06/2026 09:27:56
[2026-06-12 09:27:56,880.880 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 09:27:56,886.886 INFO    ] Checking for existing commands in stream...
[2026-06-12 09:27:56,953.953 INFO    ] No existing commands found in stream
[2026-06-12 09:28:01,977.977 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 09:28:01,980.980 INFO    ] Waiting 1.79 seconds before fallback handling...
[2026-06-12 09:28:04,122.122 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 09:28:04,124.124 INFO    ] Checking for system updates...
[2026-06-12 09:28:04,145.145 INFO    ] 200
[2026-06-12 09:28:04,146.146 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:28:04,176.176 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 09:28:04,178.178 INFO    ] No update needed
[2026-06-12 09:28:04,179.179 INFO    ] Checking for camera pi updates...
[2026-06-12 09:28:04,200.200 INFO    ] 200
[2026-06-12 09:28:04,201.201 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:28:04,225.225 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 09:28:04,269.269 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 09:28:04,271.271 INFO    ] No camera update needed
[2026-06-12 09:28:04,272.272 INFO    ] Script finished. Safe exiting...
[2026-06-12 09:28:04,277.277 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 09:28:04,281.281 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 09:28:04,283.283 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 09:28:06,322.322 INFO    ] ================================================
[2026-06-12 09:28:06,338.338 INFO    ] Launching Daemon at Fri Jun 12 09:28:06 IST 2026
[2026-06-12 09:28:06,349.349 INFO    ] ================================================
[2026-06-12 09:28:06,706.706 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 09:28:06
[2026-06-12 09:28:07,018.018 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 09:28:07,165.165 INFO    ] Initializing speech engine...
[2026-06-12 09:28:07,171.171 INFO    ] 2026-06-12 09:28:07
[2026-06-12 09:28:07,368.368 INFO    ] 2026-06-12 09:28:07
[2026-06-12 09:28:07,396.396 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 09:28:07,580.580 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 09:28:07,588.588 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 09:28:07,718.718 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 09:28:07,786.786 INFO    ] time= 12/06/2026 09:28:07
[2026-06-12 09:28:07,809.809 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 09:28:07,815.815 INFO    ] Checking for existing commands in stream...
[2026-06-12 09:28:07,881.881 INFO    ] No existing commands found in stream
[2026-06-12 09:28:12,891.891 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 09:28:12,894.894 INFO    ] Waiting 1.18 seconds before fallback handling...
[2026-06-12 09:28:14,462.462 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 09:28:14,463.463 INFO    ] Checking for system updates...
[2026-06-12 09:28:14,485.485 INFO    ] 200
[2026-06-12 09:28:14,486.486 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:28:14,518.518 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 09:28:14,519.519 INFO    ] No update needed
[2026-06-12 09:28:14,521.521 INFO    ] Checking for camera pi updates...
[2026-06-12 09:28:14,540.540 INFO    ] 200
[2026-06-12 09:28:14,542.542 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:28:14,565.565 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 09:28:14,707.707 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 09:28:14,709.709 INFO    ] No camera update needed
[2026-06-12 09:28:14,710.710 INFO    ] Script finished. Safe exiting...
[2026-06-12 09:28:14,712.712 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 09:28:14,715.715 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 09:28:14,718.718 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 09:28:16,758.758 INFO    ] ================================================
[2026-06-12 09:28:16,773.773 INFO    ] Launching Daemon at Fri Jun 12 09:28:16 IST 2026
[2026-06-12 09:28:16,784.784 INFO    ] ================================================
[2026-06-12 09:28:17,126.126 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 09:28:17
[2026-06-12 09:28:17,441.441 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 09:28:17,579.579 INFO    ] Initializing speech engine...
[2026-06-12 09:28:17,588.588 INFO    ] 2026-06-12 09:28:17
[2026-06-12 09:28:17,814.814 INFO    ] 2026-06-12 09:28:17
[2026-06-12 09:28:17,838.838 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 09:28:18,013.013 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 09:28:18,022.022 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 09:28:18,146.146 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 09:28:18,207.207 INFO    ] time= 12/06/2026 09:28:18
[2026-06-12 09:28:18,246.246 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 09:28:18,252.252 INFO    ] Checking for existing commands in stream...
[2026-06-12 09:28:18,320.320 INFO    ] No existing commands found in stream
[2026-06-12 09:28:23,334.334 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 09:28:23,337.337 INFO    ] Waiting 2.70 seconds before fallback handling...
[2026-06-12 09:28:26,404.404 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 09:28:26,405.405 INFO    ] Checking for system updates...
[2026-06-12 09:28:26,426.426 INFO    ] 200
[2026-06-12 09:28:26,427.427 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:28:26,459.459 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 09:28:26,460.460 INFO    ] No update needed
[2026-06-12 09:28:26,462.462 INFO    ] Checking for camera pi updates...
[2026-06-12 09:28:26,482.482 INFO    ] 200
[2026-06-12 09:28:26,483.483 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:28:26,506.506 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 09:28:26,539.539 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 09:28:26,541.541 INFO    ] No camera update needed
[2026-06-12 09:28:26,542.542 INFO    ] Script finished. Safe exiting...
[2026-06-12 09:28:26,543.543 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 09:28:26,546.546 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 09:28:26,549.549 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 09:28:28,587.587 INFO    ] ================================================
[2026-06-12 09:28:28,604.604 INFO    ] Launching Daemon at Fri Jun 12 09:28:28 IST 2026
[2026-06-12 09:28:28,615.615 INFO    ] ================================================
[2026-06-12 09:28:28,959.959 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 09:28:28
[2026-06-12 09:28:29,273.273 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 09:28:29,404.404 INFO    ] Initializing speech engine...
[2026-06-12 09:28:29,412.412 INFO    ] 2026-06-12 09:28:29
[2026-06-12 09:28:29,622.622 INFO    ] 2026-06-12 09:28:29
[2026-06-12 09:28:29,652.652 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 09:28:29,835.835 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 09:28:29,845.845 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 09:28:29,974.974 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 09:28:30,038.038 INFO    ] time= 12/06/2026 09:28:29
[2026-06-12 09:28:30,066.066 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 09:28:30,072.072 INFO    ] Checking for existing commands in stream...
[2026-06-12 09:28:30,137.137 INFO    ] No existing commands found in stream
[2026-06-12 09:28:35,148.148 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 09:28:35,151.151 INFO    ] Waiting 3.96 seconds before fallback handling...
[2026-06-12 09:28:39,474.474 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 09:28:39,475.475 INFO    ] Checking for system updates...
[2026-06-12 09:28:39,496.496 INFO    ] 200
[2026-06-12 09:28:39,497.497 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:28:39,528.528 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 09:28:39,529.529 INFO    ] No update needed
[2026-06-12 09:28:39,530.530 INFO    ] Checking for camera pi updates...
[2026-06-12 09:28:39,549.549 INFO    ] 200
[2026-06-12 09:28:39,551.551 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:28:39,574.574 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 09:28:39,609.609 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 09:28:39,610.610 INFO    ] No camera update needed
[2026-06-12 09:28:39,611.611 INFO    ] Script finished. Safe exiting...
[2026-06-12 09:28:39,613.613 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 09:28:39,615.615 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 09:28:39,618.618 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 09:28:41,657.657 INFO    ] ================================================
[2026-06-12 09:28:41,673.673 INFO    ] Launching Daemon at Fri Jun 12 09:28:41 IST 2026
[2026-06-12 09:28:41,683.683 INFO    ] ================================================
[2026-06-12 09:28:42,054.054 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 09:28:42
[2026-06-12 09:28:42,387.387 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 09:28:42,534.534 INFO    ] Initializing speech engine...
[2026-06-12 09:28:42,540.540 INFO    ] 2026-06-12 09:28:42
[2026-06-12 09:28:42,746.746 INFO    ] 2026-06-12 09:28:42
[2026-06-12 09:28:42,776.776 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 09:28:42,959.959 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 09:28:42,970.970 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 09:28:43,108.108 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 09:28:43,170.170 INFO    ] time= 12/06/2026 09:28:43
[2026-06-12 09:28:43,195.195 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 09:28:43,201.201 INFO    ] Checking for existing commands in stream...
[2026-06-12 09:28:43,269.269 INFO    ] No existing commands found in stream
[2026-06-12 09:28:48,294.294 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 09:28:48,297.297 INFO    ] Waiting 3.68 seconds before fallback handling...
[2026-06-12 09:28:52,324.324 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 09:28:52,325.325 INFO    ] Checking for system updates...
[2026-06-12 09:28:52,346.346 INFO    ] 200
[2026-06-12 09:28:52,347.347 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:28:52,380.380 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 09:28:52,381.381 INFO    ] No update needed
[2026-06-12 09:28:52,382.382 INFO    ] Checking for camera pi updates...
[2026-06-12 09:28:52,402.402 INFO    ] 200
[2026-06-12 09:28:52,404.404 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:28:52,429.429 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 09:28:52,464.464 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 09:28:52,466.466 INFO    ] No camera update needed
[2026-06-12 09:28:52,467.467 INFO    ] Script finished. Safe exiting...
[2026-06-12 09:28:52,468.468 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 09:28:52,471.471 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 09:28:52,474.474 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 09:28:54,513.513 INFO    ] ================================================
[2026-06-12 09:28:54,527.527 INFO    ] Launching Daemon at Fri Jun 12 09:28:54 IST 2026
[2026-06-12 09:28:54,538.538 INFO    ] ================================================
[2026-06-12 09:28:54,907.907 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 09:28:54
[2026-06-12 09:28:55,239.239 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 09:28:55,383.383 INFO    ] Initializing speech engine...
[2026-06-12 09:28:55,392.392 INFO    ] 2026-06-12 09:28:55
[2026-06-12 09:28:55,602.602 INFO    ] 2026-06-12 09:28:55
[2026-06-12 09:28:55,632.632 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 09:28:55,818.818 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 09:28:55,827.827 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 09:28:55,958.958 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 09:28:56,018.018 INFO    ] time= 12/06/2026 09:28:55
[2026-06-12 09:28:56,051.051 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 09:28:56,057.057 INFO    ] Checking for existing commands in stream...
[2026-06-12 09:28:56,125.125 INFO    ] No existing commands found in stream
[2026-06-12 09:29:01,135.135 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 09:29:01,138.138 INFO    ] Waiting 3.56 seconds before fallback handling...
[2026-06-12 09:29:05,056.056 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 09:29:05,057.057 INFO    ] Checking for system updates...
[2026-06-12 09:29:05,080.080 INFO    ] 200
[2026-06-12 09:29:05,081.081 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:29:05,113.113 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 09:29:05,115.115 INFO    ] No update needed
[2026-06-12 09:29:05,116.116 INFO    ] Checking for camera pi updates...
[2026-06-12 09:29:05,135.135 INFO    ] 200
[2026-06-12 09:29:05,136.136 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:29:05,162.162 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 09:29:05,196.196 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 09:29:05,198.198 INFO    ] No camera update needed
[2026-06-12 09:29:05,199.199 INFO    ] Script finished. Safe exiting...
[2026-06-12 09:29:05,200.200 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 09:29:05,203.203 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 09:29:05,206.206 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 09:29:07,244.244 INFO    ] ================================================
[2026-06-12 09:29:07,259.259 INFO    ] Launching Daemon at Fri Jun 12 09:29:07 IST 2026
[2026-06-12 09:29:07,270.270 INFO    ] ================================================
[2026-06-12 09:29:07,620.620 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 09:29:07
[2026-06-12 09:29:07,935.935 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 09:29:08,070.070 INFO    ] Initializing speech engine...
[2026-06-12 09:29:08,083.083 INFO    ] 2026-06-12 09:29:08
[2026-06-12 09:29:08,292.292 INFO    ] 2026-06-12 09:29:08
[2026-06-12 09:29:08,320.320 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 09:29:08,507.507 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 09:29:08,517.517 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 09:29:08,646.646 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 09:29:08,712.712 INFO    ] time= 12/06/2026 09:29:08
[2026-06-12 09:29:08,742.742 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 09:29:08,748.748 INFO    ] Checking for existing commands in stream...
[2026-06-12 09:29:08,815.815 INFO    ] No existing commands found in stream
[2026-06-12 09:29:13,824.824 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 09:29:13,827.827 INFO    ] Waiting 3.62 seconds before fallback handling...
[2026-06-12 09:29:17,812.812 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 09:29:17,814.814 INFO    ] Checking for system updates...
[2026-06-12 09:29:17,834.834 INFO    ] 200
[2026-06-12 09:29:17,835.835 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:29:17,866.866 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 09:29:17,867.867 INFO    ] No update needed
[2026-06-12 09:29:17,868.868 INFO    ] Checking for camera pi updates...
[2026-06-12 09:29:17,888.888 INFO    ] 200
[2026-06-12 09:29:17,889.889 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:29:17,914.914 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 09:29:17,951.951 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 09:29:17,952.952 INFO    ] No camera update needed
[2026-06-12 09:29:17,954.954 INFO    ] Script finished. Safe exiting...
[2026-06-12 09:29:17,955.955 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 09:29:17,958.958 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 09:29:17,960.960 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 09:29:20,000.000 INFO    ] ================================================
[2026-06-12 09:29:20,015.015 INFO    ] Launching Daemon at Fri Jun 12 09:29:20 IST 2026
[2026-06-12 09:29:20,026.026 INFO    ] ================================================
[2026-06-12 09:29:20,357.357 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 09:29:20
[2026-06-12 09:29:20,673.673 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 09:29:20,804.804 INFO    ] Initializing speech engine...
[2026-06-12 09:29:20,812.812 INFO    ] 2026-06-12 09:29:20
[2026-06-12 09:29:21,024.024 INFO    ] 2026-06-12 09:29:21
[2026-06-12 09:29:21,053.053 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 09:29:21,237.237 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 09:29:21,241.241 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 09:29:21,373.373 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 09:29:21,429.429 INFO    ] time= 12/06/2026 09:29:21
[2026-06-12 09:29:21,469.469 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 09:29:21,474.474 INFO    ] Checking for existing commands in stream...
[2026-06-12 09:29:21,546.546 INFO    ] No existing commands found in stream
[2026-06-12 09:29:26,555.555 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 09:29:26,558.558 INFO    ] Waiting 2.73 seconds before fallback handling...
[2026-06-12 09:29:29,644.644 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 09:29:29,646.646 INFO    ] Checking for system updates...
[2026-06-12 09:29:29,667.667 INFO    ] 200
[2026-06-12 09:29:29,668.668 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:29:29,704.704 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 09:29:29,706.706 INFO    ] No update needed
[2026-06-12 09:29:29,707.707 INFO    ] Checking for camera pi updates...
[2026-06-12 09:29:29,727.727 INFO    ] 200
[2026-06-12 09:29:29,729.729 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:29:29,752.752 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 09:29:29,792.792 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 09:29:29,793.793 INFO    ] No camera update needed
[2026-06-12 09:29:29,794.794 INFO    ] Script finished. Safe exiting...
[2026-06-12 09:29:29,795.795 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 09:29:29,798.798 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 09:29:29,801.801 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 09:29:31,841.841 INFO    ] ================================================
[2026-06-12 09:29:31,856.856 INFO    ] Launching Daemon at Fri Jun 12 09:29:31 IST 2026
[2026-06-12 09:29:31,867.867 INFO    ] ================================================
[2026-06-12 09:29:32,248.248 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 09:29:32
[2026-06-12 09:29:32,615.615 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 09:29:32,787.787 INFO    ] Initializing speech engine...
[2026-06-12 09:29:32,793.793 INFO    ] 2026-06-12 09:29:32
[2026-06-12 09:29:33,002.002 INFO    ] 2026-06-12 09:29:32
[2026-06-12 09:29:33,031.031 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 09:29:33,217.217 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 09:29:33,231.231 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 09:29:33,375.375 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 09:29:33,430.430 INFO    ] time= 12/06/2026 09:29:33
[2026-06-12 09:29:33,452.452 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 09:29:33,458.458 INFO    ] Checking for existing commands in stream...
[2026-06-12 09:29:33,526.526 INFO    ] No existing commands found in stream
[2026-06-12 09:29:38,540.540 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 09:29:38,543.543 INFO    ] Waiting 3.08 seconds before fallback handling...
[2026-06-12 09:29:41,965.965 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 09:29:41,966.966 INFO    ] Checking for system updates...
[2026-06-12 09:29:41,987.987 INFO    ] 200
[2026-06-12 09:29:41,989.989 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:29:42,021.021 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 09:29:42,023.023 INFO    ] No update needed
[2026-06-12 09:29:42,024.024 INFO    ] Checking for camera pi updates...
[2026-06-12 09:29:42,047.047 INFO    ] 200
[2026-06-12 09:29:42,048.048 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:29:42,074.074 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 09:29:42,111.111 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 09:29:42,112.112 INFO    ] No camera update needed
[2026-06-12 09:29:42,114.114 INFO    ] Script finished. Safe exiting...
[2026-06-12 09:29:42,115.115 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 09:29:42,118.118 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 09:29:42,121.121 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 09:29:44,159.159 INFO    ] ================================================
[2026-06-12 09:29:44,175.175 INFO    ] Launching Daemon at Fri Jun 12 09:29:44 IST 2026
[2026-06-12 09:29:44,186.186 INFO    ] ================================================
[2026-06-12 09:29:44,536.536 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 09:29:44
[2026-06-12 09:29:44,854.854 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 09:29:44,985.985 INFO    ] Initializing speech engine...
[2026-06-12 09:29:44,993.993 INFO    ] 2026-06-12 09:29:44
[2026-06-12 09:29:45,206.206 INFO    ] 2026-06-12 09:29:45
[2026-06-12 09:29:45,235.235 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 09:29:45,422.422 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 09:29:45,425.425 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 09:29:45,555.555 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 09:29:45,611.611 INFO    ] time= 12/06/2026 09:29:45
[2026-06-12 09:29:45,647.647 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 09:29:45,657.657 INFO    ] Checking for existing commands in stream...
[2026-06-12 09:29:45,729.729 INFO    ] No existing commands found in stream
[2026-06-12 09:29:50,748.748 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 09:29:50,752.752 INFO    ] Waiting 3.49 seconds before fallback handling...
[2026-06-12 09:29:54,586.586 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 09:29:54,588.588 INFO    ] Checking for system updates...
[2026-06-12 09:29:54,609.609 INFO    ] 200
[2026-06-12 09:29:54,610.610 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:29:54,641.641 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 09:29:54,643.643 INFO    ] No update needed
[2026-06-12 09:29:54,644.644 INFO    ] Checking for camera pi updates...
[2026-06-12 09:29:54,664.664 INFO    ] 200
[2026-06-12 09:29:54,666.666 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:29:54,689.689 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 09:29:54,722.722 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 09:29:54,723.723 INFO    ] No camera update needed
[2026-06-12 09:29:54,725.725 INFO    ] Script finished. Safe exiting...
[2026-06-12 09:29:54,726.726 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 09:29:54,729.729 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 09:29:54,732.732 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 09:29:56,772.772 INFO    ] ================================================
[2026-06-12 09:29:56,787.787 INFO    ] Launching Daemon at Fri Jun 12 09:29:56 IST 2026
[2026-06-12 09:29:56,797.797 INFO    ] ================================================
[2026-06-12 09:29:57,146.146 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 09:29:57
[2026-06-12 09:29:57,461.461 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 09:29:57,593.593 INFO    ] Initializing speech engine...
[2026-06-12 09:29:57,601.601 INFO    ] 2026-06-12 09:29:57
[2026-06-12 09:29:57,812.812 INFO    ] 2026-06-12 09:29:57
[2026-06-12 09:29:57,840.840 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 09:29:58,023.023 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 09:29:58,026.026 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 09:29:58,155.155 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 09:29:58,216.216 INFO    ] time= 12/06/2026 09:29:58
[2026-06-12 09:29:58,250.250 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 09:29:58,255.255 INFO    ] Checking for existing commands in stream...
[2026-06-12 09:29:58,331.331 INFO    ] No existing commands found in stream
[2026-06-12 09:30:03,339.339 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 09:30:03,341.341 INFO    ] Waiting 3.49 seconds before fallback handling...
[2026-06-12 09:30:08,427.427 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 09:30:08,430.430 INFO    ] Checking for system updates...
[2026-06-12 09:30:08,466.466 INFO    ] 200
[2026-06-12 09:30:08,469.469 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:30:08,522.522 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 09:30:08,525.525 INFO    ] No update needed
[2026-06-12 09:30:08,527.527 INFO    ] Checking for camera pi updates...
[2026-06-12 09:30:08,559.559 INFO    ] 200
[2026-06-12 09:30:08,561.561 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:30:08,585.585 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 09:30:08,622.622 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 09:30:08,624.624 INFO    ] No camera update needed
[2026-06-12 09:30:08,625.625 INFO    ] Script finished. Safe exiting...
[2026-06-12 09:30:08,626.626 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 09:30:08,629.629 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 09:30:08,632.632 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 09:30:10,671.671 INFO    ] ================================================
[2026-06-12 09:30:10,686.686 INFO    ] Launching Daemon at Fri Jun 12 09:30:10 IST 2026
[2026-06-12 09:30:10,696.696 INFO    ] ================================================
[2026-06-12 09:30:11,033.033 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 09:30:11
[2026-06-12 09:30:11,349.349 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 09:30:11,493.493 INFO    ] Initializing speech engine...
[2026-06-12 09:30:11,498.498 INFO    ] 2026-06-12 09:30:11
[2026-06-12 09:30:11,701.701 INFO    ] 2026-06-12 09:30:11
[2026-06-12 09:30:11,731.731 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 09:30:11,853.853 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 09:30:11,916.916 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 09:30:12,050.050 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 09:30:12,113.113 INFO    ] time= 12/06/2026 09:30:12
[2026-06-12 09:30:12,145.145 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 09:30:12,152.152 INFO    ] Checking for existing commands in stream...
[2026-06-12 09:30:12,219.219 INFO    ] No existing commands found in stream
[2026-06-12 09:30:17,228.228 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 09:30:17,231.231 INFO    ] Waiting 0.12 seconds before fallback handling...
[2026-06-12 09:30:17,700.700 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 09:30:17,702.702 INFO    ] Checking for system updates...
[2026-06-12 09:30:17,722.722 INFO    ] 200
[2026-06-12 09:30:17,723.723 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:30:17,754.754 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 09:30:17,755.755 INFO    ] No update needed
[2026-06-12 09:30:17,756.756 INFO    ] Checking for camera pi updates...
[2026-06-12 09:30:17,776.776 INFO    ] 200
[2026-06-12 09:30:17,777.777 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:30:17,801.801 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 09:30:17,948.948 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 09:30:17,949.949 INFO    ] No camera update needed
[2026-06-12 09:30:17,951.951 INFO    ] Script finished. Safe exiting...
[2026-06-12 09:30:17,953.953 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 09:30:17,955.955 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 09:30:17,958.958 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 09:30:20,996.996 INFO    ] ================================================
[2026-06-12 09:30:20,011.011 INFO    ] Launching Daemon at Fri Jun 12 09:30:20 IST 2026
[2026-06-12 09:30:20,022.022 INFO    ] ================================================
[2026-06-12 09:30:20,360.360 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 09:30:20
[2026-06-12 09:30:20,691.691 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 09:30:20,829.829 INFO    ] Initializing speech engine...
[2026-06-12 09:30:20,842.842 INFO    ] 2026-06-12 09:30:20
[2026-06-12 09:30:21,051.051 INFO    ] 2026-06-12 09:30:21
[2026-06-12 09:30:21,080.080 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 09:30:21,264.264 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 09:30:21,274.274 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 09:30:21,404.404 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 09:30:21,472.472 INFO    ] time= 12/06/2026 09:30:21
[2026-06-12 09:30:21,496.496 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 09:30:21,503.503 INFO    ] Checking for existing commands in stream...
[2026-06-12 09:30:21,570.570 INFO    ] No existing commands found in stream
[2026-06-12 09:30:26,580.580 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 09:30:26,583.583 INFO    ] Waiting 3.03 seconds before fallback handling...
[2026-06-12 09:30:29,976.976 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 09:30:29,978.978 INFO    ] Checking for system updates...
[2026-06-12 09:30:29,998.998 INFO    ] 200
[2026-06-12 09:30:29,999.999 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:30:30,033.033 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 09:30:30,034.034 INFO    ] No update needed
[2026-06-12 09:30:30,035.035 INFO    ] Checking for camera pi updates...
[2026-06-12 09:30:30,054.054 INFO    ] 200
[2026-06-12 09:30:30,056.056 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:30:30,079.079 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 09:30:30,114.114 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 09:30:30,116.116 INFO    ] No camera update needed
[2026-06-12 09:30:30,117.117 INFO    ] Script finished. Safe exiting...
[2026-06-12 09:30:30,118.118 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 09:30:30,121.121 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 09:30:30,124.124 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 09:30:32,154.154 INFO    ] ================================================
[2026-06-12 09:30:32,163.163 INFO    ] Launching Daemon at Fri Jun 12 09:30:32 IST 2026
[2026-06-12 09:30:32,169.169 INFO    ] ================================================
[2026-06-12 09:30:32,475.475 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 09:30:32
[2026-06-12 09:30:32,786.786 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 09:30:32,929.929 INFO    ] Initializing speech engine...
[2026-06-12 09:30:32,934.934 INFO    ] 2026-06-12 09:30:32
[2026-06-12 09:30:33,136.136 INFO    ] 2026-06-12 09:30:33
[2026-06-12 09:30:33,165.165 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 09:30:33,348.348 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 09:30:33,352.352 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 09:30:33,488.488 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 09:30:33,552.552 INFO    ] time= 12/06/2026 09:30:33
[2026-06-12 09:30:33,579.579 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 09:30:33,585.585 INFO    ] Checking for existing commands in stream...
[2026-06-12 09:30:33,652.652 INFO    ] No existing commands found in stream
[2026-06-12 09:30:38,666.666 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 09:30:38,675.675 INFO    ] Waiting 2.84 seconds before fallback handling...
[2026-06-12 09:30:41,877.877 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 09:30:41,878.878 INFO    ] Checking for system updates...
[2026-06-12 09:30:41,903.903 INFO    ] 200
[2026-06-12 09:30:41,904.904 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:30:41,935.935 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 09:30:41,936.936 INFO    ] No update needed
[2026-06-12 09:30:41,938.938 INFO    ] Checking for camera pi updates...
[2026-06-12 09:30:41,957.957 INFO    ] 200
[2026-06-12 09:30:41,959.959 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:30:41,984.984 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 09:30:42,018.018 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 09:30:42,020.020 INFO    ] No camera update needed
[2026-06-12 09:30:42,021.021 INFO    ] Script finished. Safe exiting...
[2026-06-12 09:30:42,023.023 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 09:30:42,025.025 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 09:30:42,028.028 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 09:30:44,062.062 INFO    ] ================================================
[2026-06-12 09:30:44,070.070 INFO    ] Launching Daemon at Fri Jun 12 09:30:44 IST 2026
[2026-06-12 09:30:44,076.076 INFO    ] ================================================
[2026-06-12 09:30:44,448.448 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 09:30:44
[2026-06-12 09:30:44,776.776 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 09:30:44,919.919 INFO    ] Initializing speech engine...
[2026-06-12 09:30:44,929.929 INFO    ] 2026-06-12 09:30:44
[2026-06-12 09:30:45,136.136 INFO    ] 2026-06-12 09:30:45
[2026-06-12 09:30:45,165.165 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 09:30:45,347.347 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 09:30:45,357.357 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 09:30:45,507.507 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 09:30:45,562.562 INFO    ] time= 12/06/2026 09:30:45
[2026-06-12 09:30:45,582.582 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 09:30:45,584.584 INFO    ] Checking for existing commands in stream...
[2026-06-12 09:30:45,650.650 INFO    ] No existing commands found in stream
[2026-06-12 09:30:50,675.675 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 09:30:50,678.678 INFO    ] Waiting 2.66 seconds before fallback handling...
[2026-06-12 09:30:53,718.718 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 09:30:53,719.719 INFO    ] Checking for system updates...
[2026-06-12 09:30:53,740.740 INFO    ] 200
[2026-06-12 09:30:53,741.741 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:30:53,772.772 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 09:30:53,773.773 INFO    ] No update needed
[2026-06-12 09:30:53,774.774 INFO    ] Checking for camera pi updates...
[2026-06-12 09:30:53,794.794 INFO    ] 200
[2026-06-12 09:30:53,796.796 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:30:53,819.819 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 09:30:53,858.858 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 09:30:53,859.859 INFO    ] No camera update needed
[2026-06-12 09:30:53,861.861 INFO    ] Script finished. Safe exiting...
[2026-06-12 09:30:53,862.862 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 09:30:53,865.865 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 09:30:53,868.868 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 09:30:55,906.906 INFO    ] ================================================
[2026-06-12 09:30:55,921.921 INFO    ] Launching Daemon at Fri Jun 12 09:30:55 IST 2026
[2026-06-12 09:30:55,932.932 INFO    ] ================================================
[2026-06-12 09:30:56,279.279 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 09:30:56
[2026-06-12 09:30:56,591.591 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 09:30:56,724.724 INFO    ] Initializing speech engine...
[2026-06-12 09:30:56,727.727 INFO    ] 2026-06-12 09:30:56
[2026-06-12 09:30:56,953.953 INFO    ] 2026-06-12 09:30:56
[2026-06-12 09:30:56,983.983 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 09:30:57,181.181 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 09:30:57,184.184 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 09:30:57,321.321 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 09:30:57,372.372 INFO    ] time= 12/06/2026 09:30:57
[2026-06-12 09:30:57,404.404 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 09:30:57,426.426 INFO    ] Checking for existing commands in stream...
[2026-06-12 09:30:57,504.504 INFO    ] No existing commands found in stream
[2026-06-12 09:31:02,511.511 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 09:31:02,513.513 INFO    ] Waiting 2.33 seconds before fallback handling...
[2026-06-12 09:31:05,198.198 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 09:31:05,200.200 INFO    ] Checking for system updates...
[2026-06-12 09:31:05,220.220 INFO    ] 200
[2026-06-12 09:31:05,222.222 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:31:05,252.252 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 09:31:05,253.253 INFO    ] No update needed
[2026-06-12 09:31:05,254.254 INFO    ] Checking for camera pi updates...
[2026-06-12 09:31:05,277.277 INFO    ] 200
[2026-06-12 09:31:05,278.278 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:31:05,301.301 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 09:31:05,337.337 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 09:31:05,338.338 INFO    ] No camera update needed
[2026-06-12 09:31:05,339.339 INFO    ] Script finished. Safe exiting...
[2026-06-12 09:31:05,341.341 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 09:31:05,344.344 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 09:31:05,346.346 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 09:31:07,385.385 INFO    ] ================================================
[2026-06-12 09:31:07,405.405 INFO    ] Launching Daemon at Fri Jun 12 09:31:07 IST 2026
[2026-06-12 09:31:07,416.416 INFO    ] ================================================
[2026-06-12 09:31:07,760.760 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 09:31:07
[2026-06-12 09:31:08,078.078 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 09:31:08,222.222 INFO    ] Initializing speech engine...
[2026-06-12 09:31:08,227.227 INFO    ] 2026-06-12 09:31:08
[2026-06-12 09:31:08,431.431 INFO    ] 2026-06-12 09:31:08
[2026-06-12 09:31:08,460.460 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 09:31:08,615.615 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 09:31:08,616.616 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 09:31:08,727.727 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 09:31:08,728.728 INFO    ] time= 12/06/2026 09:31:08
[2026-06-12 09:31:08,730.730 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 09:31:08,763.763 INFO    ] Checking for existing commands in stream...
[2026-06-12 09:31:08,879.879 INFO    ] No existing commands found in stream
[2026-06-12 09:31:13,896.896 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 09:31:13,899.899 INFO    ] Waiting 1.88 seconds before fallback handling...
[2026-06-12 09:31:16,167.167 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 09:31:16,169.169 INFO    ] Checking for system updates...
[2026-06-12 09:31:16,190.190 INFO    ] 200
[2026-06-12 09:31:16,191.191 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:31:16,223.223 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 09:31:16,224.224 INFO    ] No update needed
[2026-06-12 09:31:16,226.226 INFO    ] Checking for camera pi updates...
[2026-06-12 09:31:16,246.246 INFO    ] 200
[2026-06-12 09:31:16,247.247 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:31:16,270.270 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 09:31:16,305.305 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 09:31:16,306.306 INFO    ] No camera update needed
[2026-06-12 09:31:16,307.307 INFO    ] Script finished. Safe exiting...
[2026-06-12 09:31:16,308.308 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 09:31:16,311.311 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 09:31:16,314.314 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 09:31:18,353.353 INFO    ] ================================================
[2026-06-12 09:31:18,368.368 INFO    ] Launching Daemon at Fri Jun 12 09:31:18 IST 2026
[2026-06-12 09:31:18,378.378 INFO    ] ================================================
[2026-06-12 09:31:18,738.738 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 09:31:18
[2026-06-12 09:31:19,049.049 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 09:31:19,187.187 INFO    ] Initializing speech engine...
[2026-06-12 09:31:19,195.195 INFO    ] 2026-06-12 09:31:19
[2026-06-12 09:31:19,404.404 INFO    ] 2026-06-12 09:31:19
[2026-06-12 09:31:19,434.434 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 09:31:19,620.620 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 09:31:19,628.628 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 09:31:19,752.752 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 09:31:19,819.819 INFO    ] time= 12/06/2026 09:31:19
[2026-06-12 09:31:19,852.852 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 09:31:19,858.858 INFO    ] Checking for existing commands in stream...
[2026-06-12 09:31:19,950.950 INFO    ] No existing commands found in stream
[2026-06-12 09:31:24,959.959 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 09:31:24,962.962 INFO    ] Waiting 0.69 seconds before fallback handling...
[2026-06-12 09:31:26,027.027 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 09:31:26,028.028 INFO    ] Checking for system updates...
[2026-06-12 09:31:26,050.050 INFO    ] 200
[2026-06-12 09:31:26,052.052 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:31:26,084.084 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 09:31:26,086.086 INFO    ] No update needed
[2026-06-12 09:31:26,087.087 INFO    ] Checking for camera pi updates...
[2026-06-12 09:31:26,109.109 INFO    ] 200
[2026-06-12 09:31:26,111.111 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:31:26,135.135 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 09:31:26,174.174 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 09:31:26,176.176 INFO    ] No camera update needed
[2026-06-12 09:31:26,177.177 INFO    ] Script finished. Safe exiting...
[2026-06-12 09:31:26,179.179 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 09:31:26,182.182 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 09:31:26,185.185 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 09:31:28,217.217 INFO    ] ================================================
[2026-06-12 09:31:28,232.232 INFO    ] Launching Daemon at Fri Jun 12 09:31:28 IST 2026
[2026-06-12 09:31:28,243.243 INFO    ] ================================================
[2026-06-12 09:31:28,583.583 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 09:31:28
[2026-06-12 09:31:28,905.905 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 09:31:29,074.074 INFO    ] Initializing speech engine...
[2026-06-12 09:31:29,084.084 INFO    ] 2026-06-12 09:31:29
[2026-06-12 09:31:29,306.306 INFO    ] 2026-06-12 09:31:29
[2026-06-12 09:31:29,334.334 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 09:31:29,456.456 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 09:31:29,519.519 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 09:31:29,654.654 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 09:31:29,712.712 INFO    ] time= 12/06/2026 09:31:29
[2026-06-12 09:31:29,741.741 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 09:31:29,751.751 INFO    ] Checking for existing commands in stream...
[2026-06-12 09:31:29,821.821 INFO    ] No existing commands found in stream
[2026-06-12 09:31:34,832.832 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 09:31:34,835.835 INFO    ] Waiting 3.93 seconds before fallback handling...
[2026-06-12 09:31:39,128.128 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 09:31:39,129.129 INFO    ] Checking for system updates...
[2026-06-12 09:31:39,150.150 INFO    ] 200
[2026-06-12 09:31:39,151.151 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:31:39,184.184 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 09:31:39,185.185 INFO    ] No update needed
[2026-06-12 09:31:39,186.186 INFO    ] Checking for camera pi updates...
[2026-06-12 09:31:39,206.206 INFO    ] 200
[2026-06-12 09:31:39,208.208 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:31:39,231.231 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 09:31:39,276.276 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 09:31:39,277.277 INFO    ] No camera update needed
[2026-06-12 09:31:39,279.279 INFO    ] Script finished. Safe exiting...
[2026-06-12 09:31:39,280.280 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 09:31:39,283.283 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 09:31:39,286.286 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 09:31:41,324.324 INFO    ] ================================================
[2026-06-12 09:31:41,339.339 INFO    ] Launching Daemon at Fri Jun 12 09:31:41 IST 2026
[2026-06-12 09:31:41,349.349 INFO    ] ================================================
[2026-06-12 09:31:41,712.712 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 09:31:41
[2026-06-12 09:31:42,023.023 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 09:31:42,154.154 INFO    ] Initializing speech engine...
[2026-06-12 09:31:42,162.162 INFO    ] 2026-06-12 09:31:42
[2026-06-12 09:31:42,375.375 INFO    ] 2026-06-12 09:31:42
[2026-06-12 09:31:42,404.404 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 09:31:42,527.527 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 09:31:42,591.591 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 09:31:42,728.728 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 09:31:42,795.795 INFO    ] time= 12/06/2026 09:31:42
[2026-06-12 09:31:42,824.824 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 09:31:42,830.830 INFO    ] Checking for existing commands in stream...
[2026-06-12 09:31:42,898.898 INFO    ] No existing commands found in stream
[2026-06-12 09:31:47,907.907 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 09:31:47,910.910 INFO    ] Waiting 1.47 seconds before fallback handling...
[2026-06-12 09:31:49,760.760 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 09:31:49,762.762 INFO    ] Checking for system updates...
[2026-06-12 09:31:49,784.784 INFO    ] 200
[2026-06-12 09:31:49,786.786 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:31:49,821.821 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 09:31:49,822.822 INFO    ] No update needed
[2026-06-12 09:31:49,824.824 INFO    ] Checking for camera pi updates...
[2026-06-12 09:31:49,844.844 INFO    ] 200
[2026-06-12 09:31:49,845.845 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:31:49,869.869 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 09:31:49,907.907 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 09:31:49,909.909 INFO    ] No camera update needed
[2026-06-12 09:31:49,910.910 INFO    ] Script finished. Safe exiting...
[2026-06-12 09:31:49,911.911 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 09:31:49,915.915 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 09:31:49,918.918 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 09:31:51,957.957 INFO    ] ================================================
[2026-06-12 09:31:51,973.973 INFO    ] Launching Daemon at Fri Jun 12 09:31:51 IST 2026
[2026-06-12 09:31:51,983.983 INFO    ] ================================================
[2026-06-12 09:31:52,330.330 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 09:31:52
[2026-06-12 09:31:52,642.642 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 09:31:52,773.773 INFO    ] Initializing speech engine...
[2026-06-12 09:31:52,776.776 INFO    ] 2026-06-12 09:31:52
[2026-06-12 09:31:52,994.994 INFO    ] 2026-06-12 09:31:52
[2026-06-12 09:31:53,024.024 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 09:31:53,209.209 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 09:31:53,213.213 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 09:31:53,356.356 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 09:31:53,419.419 INFO    ] time= 12/06/2026 09:31:53
[2026-06-12 09:31:53,443.443 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 09:31:53,449.449 INFO    ] Checking for existing commands in stream...
[2026-06-12 09:31:53,517.517 INFO    ] No existing commands found in stream
[2026-06-12 09:31:58,526.526 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 09:31:58,529.529 INFO    ] Waiting 2.62 seconds before fallback handling...
[2026-06-12 09:32:01,477.477 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 09:32:01,479.479 INFO    ] Checking for system updates...
[2026-06-12 09:32:01,508.508 INFO    ] 200
[2026-06-12 09:32:01,510.510 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:32:01,554.554 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 09:32:01,556.556 INFO    ] No update needed
[2026-06-12 09:32:01,558.558 INFO    ] Checking for camera pi updates...
[2026-06-12 09:32:01,582.582 INFO    ] 200
[2026-06-12 09:32:01,584.584 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:32:01,613.613 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 09:32:01,658.658 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 09:32:01,661.661 INFO    ] No camera update needed
[2026-06-12 09:32:01,662.662 INFO    ] Script finished. Safe exiting...
[2026-06-12 09:32:01,664.664 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 09:32:01,669.669 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 09:32:01,673.673 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 09:32:03,712.712 INFO    ] ================================================
[2026-06-12 09:32:03,727.727 INFO    ] Launching Daemon at Fri Jun 12 09:32:03 IST 2026
[2026-06-12 09:32:03,737.737 INFO    ] ================================================
[2026-06-12 09:32:04,099.099 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 09:32:04
[2026-06-12 09:32:04,432.432 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 09:32:04,577.577 INFO    ] Initializing speech engine...
[2026-06-12 09:32:04,587.587 INFO    ] 2026-06-12 09:32:04
[2026-06-12 09:32:04,796.796 INFO    ] 2026-06-12 09:32:04
[2026-06-12 09:32:04,824.824 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 09:32:05,009.009 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 09:32:05,018.018 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 09:32:05,149.149 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 09:32:05,208.208 INFO    ] time= 12/06/2026 09:32:05
[2026-06-12 09:32:05,258.258 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 09:32:05,265.265 INFO    ] Checking for existing commands in stream...
[2026-06-12 09:32:05,333.333 INFO    ] No existing commands found in stream
[2026-06-12 09:32:10,342.342 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 09:32:10,345.345 INFO    ] Waiting 0.69 seconds before fallback handling...
[2026-06-12 09:32:11,429.429 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 09:32:11,431.431 INFO    ] Checking for system updates...
[2026-06-12 09:32:11,453.453 INFO    ] 200
[2026-06-12 09:32:11,454.454 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:32:11,487.487 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 09:32:11,489.489 INFO    ] No update needed
[2026-06-12 09:32:11,490.490 INFO    ] Checking for camera pi updates...
[2026-06-12 09:32:11,510.510 INFO    ] 200
[2026-06-12 09:32:11,512.512 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:32:11,535.535 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 09:32:11,572.572 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 09:32:11,573.573 INFO    ] No camera update needed
[2026-06-12 09:32:11,575.575 INFO    ] Script finished. Safe exiting...
[2026-06-12 09:32:11,576.576 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 09:32:11,579.579 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 09:32:11,582.582 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 09:32:13,623.623 INFO    ] ================================================
[2026-06-12 09:32:13,639.639 INFO    ] Launching Daemon at Fri Jun 12 09:32:13 IST 2026
[2026-06-12 09:32:13,650.650 INFO    ] ================================================
[2026-06-12 09:32:14,003.003 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 09:32:14
[2026-06-12 09:32:14,321.321 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 09:32:14,465.465 INFO    ] Initializing speech engine...
[2026-06-12 09:32:14,469.469 INFO    ] 2026-06-12 09:32:14
[2026-06-12 09:32:14,673.673 INFO    ] 2026-06-12 09:32:14
[2026-06-12 09:32:14,702.702 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 09:32:14,884.884 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 09:32:14,888.888 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 09:32:15,024.024 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 09:32:15,089.089 INFO    ] time= 12/06/2026 09:32:15
[2026-06-12 09:32:15,114.114 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 09:32:15,120.120 INFO    ] Checking for existing commands in stream...
[2026-06-12 09:32:15,187.187 INFO    ] No existing commands found in stream
[2026-06-12 09:32:20,196.196 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 09:32:20,198.198 INFO    ] Waiting 2.33 seconds before fallback handling...
[2026-06-12 09:32:22,923.923 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 09:32:22,926.926 INFO    ] Checking for system updates...
[2026-06-12 09:32:22,962.962 INFO    ] 200
[2026-06-12 09:32:22,965.965 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:32:23,018.018 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 09:32:23,021.021 INFO    ] No update needed
[2026-06-12 09:32:23,023.023 INFO    ] Checking for camera pi updates...
[2026-06-12 09:32:23,059.059 INFO    ] 200
[2026-06-12 09:32:23,062.062 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:32:23,093.093 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 09:32:23,232.232 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 09:32:23,233.233 INFO    ] No camera update needed
[2026-06-12 09:32:23,235.235 INFO    ] Script finished. Safe exiting...
[2026-06-12 09:32:23,236.236 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 09:32:23,239.239 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 09:32:23,242.242 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 09:32:25,274.274 INFO    ] ================================================
[2026-06-12 09:32:25,295.295 INFO    ] Launching Daemon at Fri Jun 12 09:32:25 IST 2026
[2026-06-12 09:32:25,306.306 INFO    ] ================================================
[2026-06-12 09:32:25,632.632 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 09:32:25
[2026-06-12 09:32:25,946.946 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 09:32:26,089.089 INFO    ] Initializing speech engine...
[2026-06-12 09:32:26,095.095 INFO    ] 2026-06-12 09:32:26
[2026-06-12 09:32:26,298.298 INFO    ] 2026-06-12 09:32:26
[2026-06-12 09:32:26,326.326 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 09:32:26,508.508 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 09:32:26,512.512 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 09:32:26,647.647 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 09:32:26,714.714 INFO    ] time= 12/06/2026 09:32:26
[2026-06-12 09:32:26,738.738 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 09:32:26,744.744 INFO    ] Checking for existing commands in stream...
[2026-06-12 09:32:26,810.810 INFO    ] No existing commands found in stream
[2026-06-12 09:32:31,821.821 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 09:32:31,823.823 INFO    ] Waiting 0.59 seconds before fallback handling...
[2026-06-12 09:32:32,778.778 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 09:32:32,779.779 INFO    ] Checking for system updates...
[2026-06-12 09:32:32,800.800 INFO    ] 200
[2026-06-12 09:32:32,802.802 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:32:32,832.832 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 09:32:32,833.833 INFO    ] No update needed
[2026-06-12 09:32:32,835.835 INFO    ] Checking for camera pi updates...
[2026-06-12 09:32:32,854.854 INFO    ] 200
[2026-06-12 09:32:32,855.855 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:32:32,881.881 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 09:32:32,906.906 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 09:32:32,907.907 INFO    ] No camera update needed
[2026-06-12 09:32:32,908.908 INFO    ] Script finished. Safe exiting...
[2026-06-12 09:32:32,909.909 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 09:32:32,913.913 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 09:32:32,915.915 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 09:32:34,957.957 INFO    ] ================================================
[2026-06-12 09:32:34,973.973 INFO    ] Launching Daemon at Fri Jun 12 09:32:34 IST 2026
[2026-06-12 09:32:34,983.983 INFO    ] ================================================
[2026-06-12 09:32:35,333.333 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 09:32:35
[2026-06-12 09:32:35,642.642 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 09:32:35,773.773 INFO    ] Initializing speech engine...
[2026-06-12 09:32:35,776.776 INFO    ] 2026-06-12 09:32:35
[2026-06-12 09:32:35,995.995 INFO    ] 2026-06-12 09:32:35
[2026-06-12 09:32:36,024.024 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 09:32:36,147.147 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 09:32:36,210.210 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 09:32:36,349.349 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 09:32:36,416.416 INFO    ] time= 12/06/2026 09:32:36
[2026-06-12 09:32:36,440.440 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 09:32:36,447.447 INFO    ] Checking for existing commands in stream...
[2026-06-12 09:32:36,514.514 INFO    ] No existing commands found in stream
[2026-06-12 09:32:41,523.523 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 09:32:41,531.531 INFO    ] Waiting 1.92 seconds before fallback handling...
[2026-06-12 09:32:46,204.204 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 09:32:46,205.205 INFO    ] Checking for system updates...
[2026-06-12 09:32:46,226.226 INFO    ] 200
[2026-06-12 09:32:46,227.227 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:32:46,258.258 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 09:32:46,259.259 INFO    ] No update needed
[2026-06-12 09:32:46,260.260 INFO    ] Checking for camera pi updates...
[2026-06-12 09:32:46,283.283 INFO    ] 200
[2026-06-12 09:32:46,284.284 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:32:46,309.309 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 09:32:46,353.353 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 09:32:46,354.354 INFO    ] No camera update needed
[2026-06-12 09:32:46,355.355 INFO    ] Script finished. Safe exiting...
[2026-06-12 09:32:46,357.357 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 09:32:46,359.359 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 09:32:46,362.362 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 09:32:48,400.400 INFO    ] ================================================
[2026-06-12 09:32:48,415.415 INFO    ] Launching Daemon at Fri Jun 12 09:32:48 IST 2026
[2026-06-12 09:32:48,426.426 INFO    ] ================================================
[2026-06-12 09:32:48,764.764 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 09:32:48
[2026-06-12 09:32:49,077.077 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 09:32:49,212.212 INFO    ] Initializing speech engine...
[2026-06-12 09:32:49,227.227 INFO    ] 2026-06-12 09:32:49
[2026-06-12 09:32:49,443.443 INFO    ] 2026-06-12 09:32:49
[2026-06-12 09:32:49,473.473 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 09:32:49,603.603 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 09:32:49,647.647 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 09:32:49,815.815 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 09:32:49,862.862 INFO    ] time= 12/06/2026 09:32:49
[2026-06-12 09:32:49,906.906 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 09:32:49,917.917 INFO    ] Checking for existing commands in stream...
[2026-06-12 09:32:50,020.020 INFO    ] No existing commands found in stream
[2026-06-12 09:32:55,044.044 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 09:32:55,046.046 INFO    ] Waiting 0.93 seconds before fallback handling...
[2026-06-12 09:32:56,383.383 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 09:32:56,385.385 INFO    ] Checking for system updates...
[2026-06-12 09:32:56,406.406 INFO    ] 200
[2026-06-12 09:32:56,407.407 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:32:56,439.439 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 09:32:56,441.441 INFO    ] No update needed
[2026-06-12 09:32:56,442.442 INFO    ] Checking for camera pi updates...
[2026-06-12 09:32:56,461.461 INFO    ] 200
[2026-06-12 09:32:56,463.463 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:32:56,487.487 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 09:32:56,530.530 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 09:32:56,532.532 INFO    ] No camera update needed
[2026-06-12 09:32:56,533.533 INFO    ] Script finished. Safe exiting...
[2026-06-12 09:32:56,534.534 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 09:32:56,537.537 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 09:32:56,539.539 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 09:32:58,578.578 INFO    ] ================================================
[2026-06-12 09:32:58,593.593 INFO    ] Launching Daemon at Fri Jun 12 09:32:58 IST 2026
[2026-06-12 09:32:58,607.607 INFO    ] ================================================
[2026-06-12 09:32:58,932.932 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 09:32:58
[2026-06-12 09:32:59,248.248 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 09:32:59,380.380 INFO    ] Initializing speech engine...
[2026-06-12 09:32:59,385.385 INFO    ] 2026-06-12 09:32:59
[2026-06-12 09:32:59,611.611 INFO    ] 2026-06-12 09:32:59
[2026-06-12 09:32:59,642.642 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 09:32:59,783.783 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 09:32:59,820.820 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 09:32:59,970.970 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 09:33:00,031.031 INFO    ] time= 12/06/2026 09:32:59
[2026-06-12 09:33:00,068.068 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 09:33:00,075.075 INFO    ] Checking for existing commands in stream...
[2026-06-12 09:33:00,142.142 INFO    ] No existing commands found in stream
[2026-06-12 09:33:05,155.155 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 09:33:05,158.158 INFO    ] Waiting 0.58 seconds before fallback handling...
[2026-06-12 09:33:06,079.079 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 09:33:06,080.080 INFO    ] Checking for system updates...
[2026-06-12 09:33:06,101.101 INFO    ] 200
[2026-06-12 09:33:06,102.102 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:33:06,153.153 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 09:33:06,154.154 INFO    ] No update needed
[2026-06-12 09:33:06,155.155 INFO    ] Checking for camera pi updates...
[2026-06-12 09:33:06,174.174 INFO    ] 200
[2026-06-12 09:33:06,176.176 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:33:06,199.199 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 09:33:06,236.236 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 09:33:06,237.237 INFO    ] No camera update needed
[2026-06-12 09:33:06,239.239 INFO    ] Script finished. Safe exiting...
[2026-06-12 09:33:06,240.240 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 09:33:06,243.243 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 09:33:06,246.246 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 09:33:08,284.284 INFO    ] ================================================
[2026-06-12 09:33:08,299.299 INFO    ] Launching Daemon at Fri Jun 12 09:33:08 IST 2026
[2026-06-12 09:33:08,309.309 INFO    ] ================================================
[2026-06-12 09:33:08,656.656 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 09:33:08
[2026-06-12 09:33:08,968.968 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 09:33:09,103.103 INFO    ] Initializing speech engine...
[2026-06-12 09:33:09,112.112 INFO    ] 2026-06-12 09:33:09
[2026-06-12 09:33:09,332.332 INFO    ] 2026-06-12 09:33:09
[2026-06-12 09:33:09,362.362 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 09:33:09,495.495 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 09:33:09,548.548 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 09:33:09,700.700 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 09:33:09,762.762 INFO    ] time= 12/06/2026 09:33:09
[2026-06-12 09:33:09,801.801 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 09:33:09,807.807 INFO    ] Checking for existing commands in stream...
[2026-06-12 09:33:09,883.883 INFO    ] No existing commands found in stream
[2026-06-12 09:33:14,893.893 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 09:33:14,896.896 INFO    ] Waiting 3.00 seconds before fallback handling...
[2026-06-12 09:33:18,246.246 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 09:33:18,247.247 INFO    ] Checking for system updates...
[2026-06-12 09:33:18,268.268 INFO    ] 200
[2026-06-12 09:33:18,269.269 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:33:18,301.301 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 09:33:18,302.302 INFO    ] No update needed
[2026-06-12 09:33:18,303.303 INFO    ] Checking for camera pi updates...
[2026-06-12 09:33:18,323.323 INFO    ] 200
[2026-06-12 09:33:18,324.324 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:33:18,349.349 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 09:33:18,390.390 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 09:33:18,391.391 INFO    ] No camera update needed
[2026-06-12 09:33:18,393.393 INFO    ] Script finished. Safe exiting...
[2026-06-12 09:33:18,394.394 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 09:33:18,397.397 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 09:33:18,399.399 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 09:33:20,438.438 INFO    ] ================================================
[2026-06-12 09:33:20,453.453 INFO    ] Launching Daemon at Fri Jun 12 09:33:20 IST 2026
[2026-06-12 09:33:20,464.464 INFO    ] ================================================
[2026-06-12 09:33:20,829.829 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 09:33:20
[2026-06-12 09:33:21,140.140 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 09:33:21,282.282 INFO    ] Initializing speech engine...
[2026-06-12 09:33:21,287.287 INFO    ] 2026-06-12 09:33:21
[2026-06-12 09:33:21,489.489 INFO    ] 2026-06-12 09:33:21
[2026-06-12 09:33:21,518.518 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 09:33:21,702.702 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 09:33:21,712.712 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 09:33:21,837.837 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 09:33:21,898.898 INFO    ] time= 12/06/2026 09:33:21
[2026-06-12 09:33:21,930.930 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 09:33:21,932.932 INFO    ] Checking for existing commands in stream...
[2026-06-12 09:33:22,003.003 INFO    ] No existing commands found in stream
[2026-06-12 09:33:27,012.012 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 09:33:27,015.015 INFO    ] Waiting 0.03 seconds before fallback handling...
[2026-06-12 09:33:27,405.405 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 09:33:27,407.407 INFO    ] Checking for system updates...
[2026-06-12 09:33:27,429.429 INFO    ] 200
[2026-06-12 09:33:27,430.430 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:33:27,460.460 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 09:33:27,464.464 INFO    ] No update needed
[2026-06-12 09:33:27,466.466 INFO    ] Checking for camera pi updates...
[2026-06-12 09:33:27,486.486 INFO    ] 200
[2026-06-12 09:33:27,488.488 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:33:27,515.515 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 09:33:27,551.551 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 09:33:27,553.553 INFO    ] No camera update needed
[2026-06-12 09:33:27,554.554 INFO    ] Script finished. Safe exiting...
[2026-06-12 09:33:27,555.555 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 09:33:27,558.558 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 09:33:27,561.561 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 09:33:29,592.592 INFO    ] ================================================
[2026-06-12 09:33:29,607.607 INFO    ] Launching Daemon at Fri Jun 12 09:33:29 IST 2026
[2026-06-12 09:33:29,618.618 INFO    ] ================================================
[2026-06-12 09:33:29,943.943 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 09:33:29
[2026-06-12 09:33:30,253.253 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 09:33:30,383.383 INFO    ] Initializing speech engine...
[2026-06-12 09:33:30,397.397 INFO    ] 2026-06-12 09:33:30
[2026-06-12 09:33:30,602.602 INFO    ] 2026-06-12 09:33:30
[2026-06-12 09:33:30,630.630 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 09:33:30,811.811 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 09:33:30,815.815 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 09:33:30,945.945 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 09:33:31,013.013 INFO    ] time= 12/06/2026 09:33:30
[2026-06-12 09:33:31,039.039 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 09:33:31,041.041 INFO    ] Checking for existing commands in stream...
[2026-06-12 09:33:31,112.112 INFO    ] No existing commands found in stream
[2026-06-12 09:33:36,121.121 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 09:33:36,124.124 INFO    ] Waiting 1.67 seconds before fallback handling...
[2026-06-12 09:33:38,146.146 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 09:33:38,147.147 INFO    ] Checking for system updates...
[2026-06-12 09:33:38,168.168 INFO    ] 200
[2026-06-12 09:33:38,169.169 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:33:38,200.200 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 09:33:38,201.201 INFO    ] No update needed
[2026-06-12 09:33:38,203.203 INFO    ] Checking for camera pi updates...
[2026-06-12 09:33:38,222.222 INFO    ] 200
[2026-06-12 09:33:38,224.224 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:33:38,247.247 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 09:33:38,283.283 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 09:33:38,284.284 INFO    ] No camera update needed
[2026-06-12 09:33:38,286.286 INFO    ] Script finished. Safe exiting...
[2026-06-12 09:33:38,287.287 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 09:33:38,293.293 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 09:33:38,295.295 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 09:33:40,334.334 INFO    ] ================================================
[2026-06-12 09:33:40,349.349 INFO    ] Launching Daemon at Fri Jun 12 09:33:40 IST 2026
[2026-06-12 09:33:40,360.360 INFO    ] ================================================
[2026-06-12 09:33:40,734.734 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 09:33:40
[2026-06-12 09:33:41,051.051 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 09:33:41,184.184 INFO    ] Initializing speech engine...
[2026-06-12 09:33:41,197.197 INFO    ] 2026-06-12 09:33:41
[2026-06-12 09:33:41,405.405 INFO    ] 2026-06-12 09:33:41
[2026-06-12 09:33:41,433.433 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 09:33:41,615.615 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 09:33:41,619.619 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 09:33:41,747.747 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 09:33:41,808.808 INFO    ] time= 12/06/2026 09:33:41
[2026-06-12 09:33:41,843.843 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 09:33:41,848.848 INFO    ] Checking for existing commands in stream...
[2026-06-12 09:33:41,919.919 INFO    ] No existing commands found in stream
[2026-06-12 09:33:46,928.928 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 09:33:46,931.931 INFO    ] Waiting 0.80 seconds before fallback handling...
[2026-06-12 09:33:48,081.081 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 09:33:48,082.082 INFO    ] Checking for system updates...
[2026-06-12 09:33:48,104.104 INFO    ] 200
[2026-06-12 09:33:48,105.105 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:33:48,137.137 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 09:33:48,138.138 INFO    ] No update needed
[2026-06-12 09:33:48,140.140 INFO    ] Checking for camera pi updates...
[2026-06-12 09:33:48,160.160 INFO    ] 200
[2026-06-12 09:33:48,161.161 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:33:48,186.186 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 09:33:48,227.227 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 09:33:48,228.228 INFO    ] No camera update needed
[2026-06-12 09:33:48,230.230 INFO    ] Script finished. Safe exiting...
[2026-06-12 09:33:48,231.231 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 09:33:48,234.234 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 09:33:48,237.237 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 09:33:50,277.277 INFO    ] ================================================
[2026-06-12 09:33:50,293.293 INFO    ] Launching Daemon at Fri Jun 12 09:33:50 IST 2026
[2026-06-12 09:33:50,304.304 INFO    ] ================================================
[2026-06-12 09:33:50,644.644 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 09:33:50
[2026-06-12 09:33:50,955.955 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 09:33:51,088.088 INFO    ] Initializing speech engine...
[2026-06-12 09:33:51,096.096 INFO    ] 2026-06-12 09:33:51
[2026-06-12 09:33:51,316.316 INFO    ] 2026-06-12 09:33:51
[2026-06-12 09:33:51,347.347 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 09:33:51,477.477 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 09:33:51,532.532 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 09:33:51,686.686 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 09:33:51,737.737 INFO    ] time= 12/06/2026 09:33:51
[2026-06-12 09:33:51,781.781 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 09:33:51,792.792 INFO    ] Checking for existing commands in stream...
[2026-06-12 09:33:51,865.865 INFO    ] No existing commands found in stream
[2026-06-12 09:33:56,875.875 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 09:33:56,878.878 INFO    ] Waiting 1.63 seconds before fallback handling...
[2026-06-12 09:33:58,866.866 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 09:33:58,868.868 INFO    ] Checking for system updates...
[2026-06-12 09:33:58,889.889 INFO    ] 200
[2026-06-12 09:33:58,890.890 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:33:58,922.922 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 09:33:58,924.924 INFO    ] No update needed
[2026-06-12 09:33:58,925.925 INFO    ] Checking for camera pi updates...
[2026-06-12 09:33:58,946.946 INFO    ] 200
[2026-06-12 09:33:58,947.947 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:33:58,971.971 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 09:33:59,010.010 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 09:33:59,012.012 INFO    ] No camera update needed
[2026-06-12 09:33:59,013.013 INFO    ] Script finished. Safe exiting...
[2026-06-12 09:33:59,014.014 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 09:33:59,017.017 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 09:33:59,020.020 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 09:34:01,059.059 INFO    ] ================================================
[2026-06-12 09:34:01,074.074 INFO    ] Launching Daemon at Fri Jun 12 09:34:01 IST 2026
[2026-06-12 09:34:01,085.085 INFO    ] ================================================
[2026-06-12 09:34:01,452.452 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 09:34:01
[2026-06-12 09:34:01,859.859 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 09:34:02,025.025 INFO    ] Initializing speech engine...
[2026-06-12 09:34:02,030.030 INFO    ] 2026-06-12 09:34:02
[2026-06-12 09:34:02,282.282 INFO    ] 2026-06-12 09:34:02
[2026-06-12 09:34:02,313.313 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 09:34:02,450.450 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 09:34:02,454.454 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 09:34:02,576.576 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 09:34:02,595.595 INFO    ] time= 12/06/2026 09:34:02
[2026-06-12 09:34:02,600.600 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 09:34:02,652.652 INFO    ] Checking for existing commands in stream...
[2026-06-12 09:34:02,777.777 INFO    ] No existing commands found in stream
[2026-06-12 09:34:07,794.794 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 09:34:07,797.797 INFO    ] Waiting 1.91 seconds before fallback handling...
[2026-06-12 09:34:10,088.088 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 09:34:10,089.089 INFO    ] Checking for system updates...
[2026-06-12 09:34:10,110.110 INFO    ] 200
[2026-06-12 09:34:10,112.112 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:34:10,144.144 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 09:34:10,145.145 INFO    ] No update needed
[2026-06-12 09:34:10,147.147 INFO    ] Checking for camera pi updates...
[2026-06-12 09:34:10,166.166 INFO    ] 200
[2026-06-12 09:34:10,167.167 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:34:10,191.191 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 09:34:10,237.237 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 09:34:10,238.238 INFO    ] No camera update needed
[2026-06-12 09:34:10,240.240 INFO    ] Script finished. Safe exiting...
[2026-06-12 09:34:10,241.241 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 09:34:10,244.244 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 09:34:10,247.247 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 09:34:12,285.285 INFO    ] ================================================
[2026-06-12 09:34:12,301.301 INFO    ] Launching Daemon at Fri Jun 12 09:34:12 IST 2026
[2026-06-12 09:34:12,311.311 INFO    ] ================================================
[2026-06-12 09:34:12,688.688 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 09:34:12
[2026-06-12 09:34:13,005.005 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 09:34:13,140.140 INFO    ] Initializing speech engine...
[2026-06-12 09:34:13,148.148 INFO    ] 2026-06-12 09:34:13
[2026-06-12 09:34:13,375.375 INFO    ] 2026-06-12 09:34:13
[2026-06-12 09:34:13,406.406 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 09:34:13,601.601 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 09:34:13,605.605 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 09:34:13,747.747 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 09:34:13,809.809 INFO    ] time= 12/06/2026 09:34:13
[2026-06-12 09:34:13,833.833 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 09:34:13,840.840 INFO    ] Checking for existing commands in stream...
[2026-06-12 09:34:13,905.905 INFO    ] No existing commands found in stream
[2026-06-12 09:34:18,915.915 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 09:34:18,918.918 INFO    ] Waiting 3.77 seconds before fallback handling...
[2026-06-12 09:34:23,035.035 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 09:34:23,036.036 INFO    ] Checking for system updates...
[2026-06-12 09:34:23,057.057 INFO    ] 200
[2026-06-12 09:34:23,058.058 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:34:23,089.089 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 09:34:23,090.090 INFO    ] No update needed
[2026-06-12 09:34:23,092.092 INFO    ] Checking for camera pi updates...
[2026-06-12 09:34:23,113.113 INFO    ] 200
[2026-06-12 09:34:23,114.114 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:34:23,137.137 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 09:34:23,177.177 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 09:34:23,178.178 INFO    ] No camera update needed
[2026-06-12 09:34:23,179.179 INFO    ] Script finished. Safe exiting...
[2026-06-12 09:34:23,181.181 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 09:34:23,184.184 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 09:34:23,186.186 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 09:34:25,217.217 INFO    ] ================================================
[2026-06-12 09:34:25,226.226 INFO    ] Launching Daemon at Fri Jun 12 09:34:25 IST 2026
[2026-06-12 09:34:25,232.232 INFO    ] ================================================
[2026-06-12 09:34:25,582.582 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 09:34:25
[2026-06-12 09:34:25,893.893 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 09:34:26,023.023 INFO    ] Initializing speech engine...
[2026-06-12 09:34:26,033.033 INFO    ] 2026-06-12 09:34:26
[2026-06-12 09:34:26,246.246 INFO    ] 2026-06-12 09:34:26
[2026-06-12 09:34:26,274.274 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 09:34:26,459.459 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 09:34:26,462.462 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 09:34:26,592.592 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 09:34:26,648.648 INFO    ] time= 12/06/2026 09:34:26
[2026-06-12 09:34:26,691.691 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 09:34:26,693.693 INFO    ] Checking for existing commands in stream...
[2026-06-12 09:34:26,765.765 INFO    ] No existing commands found in stream
[2026-06-12 09:34:31,772.772 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 09:34:31,775.775 INFO    ] Waiting 0.84 seconds before fallback handling...
[2026-06-12 09:34:32,983.983 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 09:34:32,984.984 INFO    ] Checking for system updates...
[2026-06-12 09:34:33,005.005 INFO    ] 200
[2026-06-12 09:34:33,006.006 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:34:33,036.036 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 09:34:33,038.038 INFO    ] No update needed
[2026-06-12 09:34:33,039.039 INFO    ] Checking for camera pi updates...
[2026-06-12 09:34:33,058.058 INFO    ] 200
[2026-06-12 09:34:33,059.059 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:34:33,085.085 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 09:34:33,120.120 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 09:34:33,122.122 INFO    ] No camera update needed
[2026-06-12 09:34:33,123.123 INFO    ] Script finished. Safe exiting...
[2026-06-12 09:34:33,124.124 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 09:34:33,127.127 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 09:34:33,130.130 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 09:34:35,169.169 INFO    ] ================================================
[2026-06-12 09:34:35,184.184 INFO    ] Launching Daemon at Fri Jun 12 09:34:35 IST 2026
[2026-06-12 09:34:35,195.195 INFO    ] ================================================
[2026-06-12 09:34:35,540.540 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 09:34:35
[2026-06-12 09:34:35,879.879 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 09:34:36,030.030 INFO    ] Initializing speech engine...
[2026-06-12 09:34:36,034.034 INFO    ] 2026-06-12 09:34:36
[2026-06-12 09:34:36,246.246 INFO    ] 2026-06-12 09:34:36
[2026-06-12 09:34:36,274.274 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 09:34:36,459.459 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 09:34:36,469.469 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 09:34:36,604.604 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 09:34:36,667.667 INFO    ] time= 12/06/2026 09:34:36
[2026-06-12 09:34:36,692.692 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 09:34:36,698.698 INFO    ] Checking for existing commands in stream...
[2026-06-12 09:34:36,766.766 INFO    ] No existing commands found in stream
[2026-06-12 09:34:41,780.780 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 09:34:41,783.783 INFO    ] Waiting 2.27 seconds before fallback handling...
[2026-06-12 09:34:44,463.463 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 09:34:44,464.464 INFO    ] Checking for system updates...
[2026-06-12 09:34:44,485.485 INFO    ] 200
[2026-06-12 09:34:44,487.487 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:34:44,517.517 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 09:34:44,519.519 INFO    ] No update needed
[2026-06-12 09:34:44,520.520 INFO    ] Checking for camera pi updates...
[2026-06-12 09:34:44,540.540 INFO    ] 200
[2026-06-12 09:34:44,541.541 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:34:44,565.565 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 09:34:44,602.602 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 09:34:44,603.603 INFO    ] No camera update needed
[2026-06-12 09:34:44,604.604 INFO    ] Script finished. Safe exiting...
[2026-06-12 09:34:44,606.606 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 09:34:44,609.609 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 09:34:44,612.612 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 09:34:46,651.651 INFO    ] ================================================
[2026-06-12 09:34:46,667.667 INFO    ] Launching Daemon at Fri Jun 12 09:34:46 IST 2026
[2026-06-12 09:34:46,677.677 INFO    ] ================================================
[2026-06-12 09:34:47,026.026 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 09:34:47
[2026-06-12 09:34:47,338.338 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 09:34:47,468.468 INFO    ] Initializing speech engine...
[2026-06-12 09:34:47,473.473 INFO    ] 2026-06-12 09:34:47
[2026-06-12 09:34:47,692.692 INFO    ] 2026-06-12 09:34:47
[2026-06-12 09:34:47,721.721 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 09:34:47,906.906 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 09:34:47,910.910 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 09:34:48,046.046 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 09:34:48,112.112 INFO    ] time= 12/06/2026 09:34:48
[2026-06-12 09:34:48,141.141 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 09:34:48,147.147 INFO    ] Checking for existing commands in stream...
[2026-06-12 09:34:48,240.240 INFO    ] No existing commands found in stream
[2026-06-12 09:34:53,254.254 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 09:34:53,256.256 INFO    ] Waiting 2.15 seconds before fallback handling...
[2026-06-12 09:34:55,784.784 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 09:34:55,786.786 INFO    ] Checking for system updates...
[2026-06-12 09:34:55,806.806 INFO    ] 200
[2026-06-12 09:34:55,807.807 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:34:55,842.842 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 09:34:55,844.844 INFO    ] No update needed
[2026-06-12 09:34:55,845.845 INFO    ] Checking for camera pi updates...
[2026-06-12 09:34:55,864.864 INFO    ] 200
[2026-06-12 09:34:55,866.866 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:34:55,889.889 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 09:34:55,925.925 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 09:34:55,927.927 INFO    ] No camera update needed
[2026-06-12 09:34:55,928.928 INFO    ] Script finished. Safe exiting...
[2026-06-12 09:34:55,929.929 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 09:34:55,932.932 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 09:34:55,935.935 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 09:34:57,975.975 INFO    ] ================================================
[2026-06-12 09:34:57,991.991 INFO    ] Launching Daemon at Fri Jun 12 09:34:57 IST 2026
[2026-06-12 09:34:58,002.002 INFO    ] ================================================
[2026-06-12 09:34:58,343.343 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 09:34:58
[2026-06-12 09:34:58,655.655 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 09:34:58,787.787 INFO    ] Initializing speech engine...
[2026-06-12 09:34:58,791.791 INFO    ] 2026-06-12 09:34:58
[2026-06-12 09:34:58,981.981 INFO    ] 2026-06-12 09:34:58
[2026-06-12 09:34:59,026.026 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 09:34:59,148.148 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 09:34:59,152.152 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 09:34:59,270.270 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 09:34:59,286.286 INFO    ] time= 12/06/2026 09:34:59
[2026-06-12 09:34:59,291.291 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 09:34:59,295.295 INFO    ] Checking for existing commands in stream...
[2026-06-12 09:34:59,403.403 INFO    ] No existing commands found in stream
[2026-06-12 09:35:04,425.425 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 09:35:04,428.428 INFO    ] Waiting 2.46 seconds before fallback handling...
[2026-06-12 09:35:07,252.252 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 09:35:07,254.254 INFO    ] Checking for system updates...
[2026-06-12 09:35:07,274.274 INFO    ] 200
[2026-06-12 09:35:07,275.275 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:35:07,306.306 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 09:35:07,307.307 INFO    ] No update needed
[2026-06-12 09:35:07,309.309 INFO    ] Checking for camera pi updates...
[2026-06-12 09:35:07,328.328 INFO    ] 200
[2026-06-12 09:35:07,330.330 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:35:07,353.353 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 09:35:07,394.394 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 09:35:07,395.395 INFO    ] No camera update needed
[2026-06-12 09:35:07,396.396 INFO    ] Script finished. Safe exiting...
[2026-06-12 09:35:07,398.398 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 09:35:07,401.401 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 09:35:07,403.403 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 09:35:09,442.442 INFO    ] ================================================
[2026-06-12 09:35:09,468.468 INFO    ] Launching Daemon at Fri Jun 12 09:35:09 IST 2026
[2026-06-12 09:35:09,479.479 INFO    ] ================================================
[2026-06-12 09:35:09,871.871 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 09:35:09
[2026-06-12 09:35:10,210.210 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 09:35:10,363.363 INFO    ] Initializing speech engine...
[2026-06-12 09:35:10,367.367 INFO    ] 2026-06-12 09:35:10
[2026-06-12 09:35:10,575.575 INFO    ] 2026-06-12 09:35:10
[2026-06-12 09:35:10,604.604 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 09:35:10,788.788 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 09:35:10,797.797 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 09:35:10,938.938 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 09:35:10,996.996 INFO    ] time= 12/06/2026 09:35:10
[2026-06-12 09:35:11,018.018 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 09:35:11,025.025 INFO    ] Checking for existing commands in stream...
[2026-06-12 09:35:11,092.092 INFO    ] No existing commands found in stream
[2026-06-12 09:35:16,112.112 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 09:35:16,115.115 INFO    ] Waiting 0.89 seconds before fallback handling...
[2026-06-12 09:35:17,333.333 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 09:35:17,335.335 INFO    ] Checking for system updates...
[2026-06-12 09:35:17,356.356 INFO    ] 200
[2026-06-12 09:35:17,357.357 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:35:17,392.392 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 09:35:17,394.394 INFO    ] No update needed
[2026-06-12 09:35:17,395.395 INFO    ] Checking for camera pi updates...
[2026-06-12 09:35:17,414.414 INFO    ] 200
[2026-06-12 09:35:17,416.416 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:35:17,441.441 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 09:35:17,488.488 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 09:35:17,489.489 INFO    ] No camera update needed
[2026-06-12 09:35:17,491.491 INFO    ] Script finished. Safe exiting...
[2026-06-12 09:35:17,492.492 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 09:35:17,495.495 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 09:35:17,498.498 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 09:35:19,537.537 INFO    ] ================================================
[2026-06-12 09:35:19,553.553 INFO    ] Launching Daemon at Fri Jun 12 09:35:19 IST 2026
[2026-06-12 09:35:19,565.565 INFO    ] ================================================
[2026-06-12 09:35:19,918.918 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 09:35:19
[2026-06-12 09:35:20,257.257 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 09:35:20,395.395 INFO    ] Initializing speech engine...
[2026-06-12 09:35:20,409.409 INFO    ] 2026-06-12 09:35:20
[2026-06-12 09:35:20,621.621 INFO    ] 2026-06-12 09:35:20
[2026-06-12 09:35:20,649.649 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 09:35:20,793.793 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 09:35:20,837.837 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 09:35:20,979.979 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 09:35:21,042.042 INFO    ] time= 12/06/2026 09:35:20
[2026-06-12 09:35:21,064.064 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 09:35:21,071.071 INFO    ] Checking for existing commands in stream...
[2026-06-12 09:35:21,138.138 INFO    ] No existing commands found in stream
[2026-06-12 09:35:26,147.147 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 09:35:26,150.150 INFO    ] Waiting 0.63 seconds before fallback handling...
[2026-06-12 09:35:27,142.142 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 09:35:27,144.144 INFO    ] Checking for system updates...
[2026-06-12 09:35:27,164.164 INFO    ] 200
[2026-06-12 09:35:27,166.166 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:35:27,196.196 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 09:35:27,197.197 INFO    ] No update needed
[2026-06-12 09:35:27,198.198 INFO    ] Checking for camera pi updates...
[2026-06-12 09:35:27,219.219 INFO    ] 200
[2026-06-12 09:35:27,220.220 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:35:27,243.243 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 09:35:27,284.284 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 09:35:27,285.285 INFO    ] No camera update needed
[2026-06-12 09:35:27,287.287 INFO    ] Script finished. Safe exiting...
[2026-06-12 09:35:27,288.288 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 09:35:27,291.291 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 09:35:27,294.294 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 09:35:29,332.332 INFO    ] ================================================
[2026-06-12 09:35:29,355.355 INFO    ] Launching Daemon at Fri Jun 12 09:35:29 IST 2026
[2026-06-12 09:35:29,367.367 INFO    ] ================================================
[2026-06-12 09:35:29,696.696 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 09:35:29
[2026-06-12 09:35:30,013.013 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 09:35:30,145.145 INFO    ] Initializing speech engine...
[2026-06-12 09:35:30,153.153 INFO    ] 2026-06-12 09:35:30
[2026-06-12 09:35:30,365.365 INFO    ] 2026-06-12 09:35:30
[2026-06-12 09:35:30,395.395 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 09:35:30,577.577 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 09:35:30,587.587 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 09:35:30,712.712 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 09:35:30,769.769 INFO    ] time= 12/06/2026 09:35:30
[2026-06-12 09:35:30,798.798 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 09:35:30,812.812 INFO    ] Checking for existing commands in stream...
[2026-06-12 09:35:30,879.879 INFO    ] No existing commands found in stream
[2026-06-12 09:35:35,903.903 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 09:35:35,906.906 INFO    ] Waiting 2.22 seconds before fallback handling...
[2026-06-12 09:35:38,512.512 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 09:35:38,514.514 INFO    ] Checking for system updates...
[2026-06-12 09:35:38,535.535 INFO    ] 200
[2026-06-12 09:35:38,536.536 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:35:38,566.566 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 09:35:38,567.567 INFO    ] No update needed
[2026-06-12 09:35:38,568.568 INFO    ] Checking for camera pi updates...
[2026-06-12 09:35:38,589.589 INFO    ] 200
[2026-06-12 09:35:38,591.591 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:35:38,614.614 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 09:35:38,653.653 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 09:35:38,654.654 INFO    ] No camera update needed
[2026-06-12 09:35:38,656.656 INFO    ] Script finished. Safe exiting...
[2026-06-12 09:35:38,657.657 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 09:35:38,660.660 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 09:35:38,663.663 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 09:35:40,701.701 INFO    ] ================================================
[2026-06-12 09:35:40,718.718 INFO    ] Launching Daemon at Fri Jun 12 09:35:40 IST 2026
[2026-06-12 09:35:40,729.729 INFO    ] ================================================
[2026-06-12 09:35:41,054.054 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 09:35:41
[2026-06-12 09:35:41,366.366 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 09:35:41,505.505 INFO    ] Initializing speech engine...
[2026-06-12 09:35:41,516.516 INFO    ] 2026-06-12 09:35:41
[2026-06-12 09:35:41,721.721 INFO    ] 2026-06-12 09:35:41
[2026-06-12 09:35:41,751.751 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 09:35:41,937.937 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 09:35:41,941.941 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 09:35:42,085.085 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 09:35:42,149.149 INFO    ] time= 12/06/2026 09:35:42
[2026-06-12 09:35:42,172.172 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 09:35:42,178.178 INFO    ] Checking for existing commands in stream...
[2026-06-12 09:35:42,247.247 INFO    ] No existing commands found in stream
[2026-06-12 09:35:47,256.256 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 09:35:47,259.259 INFO    ] Waiting 0.35 seconds before fallback handling...
[2026-06-12 09:35:47,994.994 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 09:35:47,996.996 INFO    ] Checking for system updates...
[2026-06-12 09:35:48,017.017 INFO    ] 200
[2026-06-12 09:35:48,018.018 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:35:48,051.051 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 09:35:48,052.052 INFO    ] No update needed
[2026-06-12 09:35:48,053.053 INFO    ] Checking for camera pi updates...
[2026-06-12 09:35:48,074.074 INFO    ] 200
[2026-06-12 09:35:48,075.075 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:35:48,099.099 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 09:35:48,141.141 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 09:35:48,142.142 INFO    ] No camera update needed
[2026-06-12 09:35:48,144.144 INFO    ] Script finished. Safe exiting...
[2026-06-12 09:35:48,145.145 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 09:35:48,149.149 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 09:35:48,152.152 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 09:35:50,195.195 INFO    ] ================================================
[2026-06-12 09:35:50,211.211 INFO    ] Launching Daemon at Fri Jun 12 09:35:50 IST 2026
[2026-06-12 09:35:50,223.223 INFO    ] ================================================
[2026-06-12 09:35:50,579.579 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 09:35:50
[2026-06-12 09:35:50,924.924 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 09:35:51,078.078 INFO    ] Initializing speech engine...
[2026-06-12 09:35:51,082.082 INFO    ] 2026-06-12 09:35:51
[2026-06-12 09:35:51,284.284 INFO    ] 2026-06-12 09:35:51
[2026-06-12 09:35:51,313.313 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 09:35:51,437.437 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 09:35:51,500.500 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 09:35:51,633.633 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 09:35:51,679.679 INFO    ] time= 12/06/2026 09:35:51
[2026-06-12 09:35:51,714.714 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 09:35:51,735.735 INFO    ] Checking for existing commands in stream...
[2026-06-12 09:35:51,807.807 INFO    ] No existing commands found in stream
[2026-06-12 09:35:56,817.817 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 09:35:56,819.819 INFO    ] Waiting 3.26 seconds before fallback handling...
[2026-06-12 09:36:00,451.451 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 09:36:00,455.455 INFO    ] Checking for system updates...
[2026-06-12 09:36:00,491.491 INFO    ] 200
[2026-06-12 09:36:00,494.494 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:36:00,549.549 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 09:36:00,553.553 INFO    ] No update needed
[2026-06-12 09:36:00,555.555 INFO    ] Checking for camera pi updates...
[2026-06-12 09:36:00,589.589 INFO    ] 200
[2026-06-12 09:36:00,592.592 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:36:00,633.633 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 09:36:00,677.677 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 09:36:00,679.679 INFO    ] No camera update needed
[2026-06-12 09:36:00,682.682 INFO    ] Script finished. Safe exiting...
[2026-06-12 09:36:00,684.684 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 09:36:00,689.689 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 09:36:00,692.692 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 09:36:02,716.716 INFO    ] ================================================
[2026-06-12 09:36:02,725.725 INFO    ] Launching Daemon at Fri Jun 12 09:36:02 IST 2026
[2026-06-12 09:36:02,731.731 INFO    ] ================================================
[2026-06-12 09:36:03,081.081 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 09:36:03
[2026-06-12 09:36:03,392.392 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 09:36:03,522.522 INFO    ] Initializing speech engine...
[2026-06-12 09:36:03,526.526 INFO    ] 2026-06-12 09:36:03
[2026-06-12 09:36:03,745.745 INFO    ] 2026-06-12 09:36:03
[2026-06-12 09:36:03,774.774 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 09:36:03,899.899 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 09:36:03,962.962 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 09:36:04,094.094 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 09:36:04,150.150 INFO    ] time= 12/06/2026 09:36:04
[2026-06-12 09:36:04,193.193 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 09:36:04,195.195 INFO    ] Checking for existing commands in stream...
[2026-06-12 09:36:04,268.268 INFO    ] No existing commands found in stream
[2026-06-12 09:36:09,277.277 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 09:36:09,280.280 INFO    ] Waiting 1.55 seconds before fallback handling...
[2026-06-12 09:36:11,201.201 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 09:36:11,203.203 INFO    ] Checking for system updates...
[2026-06-12 09:36:11,223.223 INFO    ] 200
[2026-06-12 09:36:11,225.225 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:36:11,255.255 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 09:36:11,257.257 INFO    ] No update needed
[2026-06-12 09:36:11,258.258 INFO    ] Checking for camera pi updates...
[2026-06-12 09:36:11,279.279 INFO    ] 200
[2026-06-12 09:36:11,280.280 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:36:11,304.304 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 09:36:11,340.340 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 09:36:11,341.341 INFO    ] No camera update needed
[2026-06-12 09:36:11,343.343 INFO    ] Script finished. Safe exiting...
[2026-06-12 09:36:11,344.344 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 09:36:11,347.347 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 09:36:11,350.350 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 09:36:13,388.388 INFO    ] ================================================
[2026-06-12 09:36:13,403.403 INFO    ] Launching Daemon at Fri Jun 12 09:36:13 IST 2026
[2026-06-12 09:36:13,414.414 INFO    ] ================================================
[2026-06-12 09:36:13,779.779 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 09:36:13
[2026-06-12 09:36:14,093.093 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 09:36:14,235.235 INFO    ] Initializing speech engine...
[2026-06-12 09:36:14,240.240 INFO    ] 2026-06-12 09:36:14
[2026-06-12 09:36:14,444.444 INFO    ] 2026-06-12 09:36:14
[2026-06-12 09:36:14,474.474 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 09:36:14,659.659 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 09:36:14,663.663 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 09:36:14,794.794 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 09:36:14,844.844 INFO    ] time= 12/06/2026 09:36:14
[2026-06-12 09:36:14,889.889 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 09:36:14,965.965 INFO    ] Checking for existing commands in stream...
[2026-06-12 09:36:15,026.026 INFO    ] No existing commands found in stream
[2026-06-12 09:36:20,036.036 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 09:36:20,038.038 INFO    ] Waiting 2.94 seconds before fallback handling...
[2026-06-12 09:36:23,336.336 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 09:36:23,338.338 INFO    ] Checking for system updates...
[2026-06-12 09:36:23,358.358 INFO    ] 200
[2026-06-12 09:36:23,360.360 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:36:23,393.393 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 09:36:23,395.395 INFO    ] No update needed
[2026-06-12 09:36:23,396.396 INFO    ] Checking for camera pi updates...
[2026-06-12 09:36:23,415.415 INFO    ] 200
[2026-06-12 09:36:23,416.416 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:36:23,442.442 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 09:36:23,488.488 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 09:36:23,490.490 INFO    ] No camera update needed
[2026-06-12 09:36:23,491.491 INFO    ] Script finished. Safe exiting...
[2026-06-12 09:36:23,492.492 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 09:36:23,495.495 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 09:36:23,498.498 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 09:36:25,540.540 INFO    ] ================================================
[2026-06-12 09:36:25,555.555 INFO    ] Launching Daemon at Fri Jun 12 09:36:25 IST 2026
[2026-06-12 09:36:25,566.566 INFO    ] ================================================
[2026-06-12 09:36:25,936.936 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 09:36:25
[2026-06-12 09:36:26,252.252 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 09:36:26,395.395 INFO    ] Initializing speech engine...
[2026-06-12 09:36:26,401.401 INFO    ] 2026-06-12 09:36:26
[2026-06-12 09:36:26,604.604 INFO    ] 2026-06-12 09:36:26
[2026-06-12 09:36:26,633.633 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 09:36:26,817.817 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 09:36:26,820.820 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 09:36:26,953.953 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 09:36:27,015.015 INFO    ] time= 12/06/2026 09:36:26
[2026-06-12 09:36:27,048.048 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 09:36:27,050.050 INFO    ] Checking for existing commands in stream...
[2026-06-12 09:36:27,122.122 INFO    ] No existing commands found in stream
[2026-06-12 09:36:32,131.131 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 09:36:32,134.134 INFO    ] Waiting 0.28 seconds before fallback handling...
[2026-06-12 09:36:32,761.761 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 09:36:32,763.763 INFO    ] Checking for system updates...
[2026-06-12 09:36:32,785.785 INFO    ] 200
[2026-06-12 09:36:32,786.786 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:36:32,818.818 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 09:36:32,820.820 INFO    ] No update needed
[2026-06-12 09:36:32,821.821 INFO    ] Checking for camera pi updates...
[2026-06-12 09:36:32,843.843 INFO    ] 200
[2026-06-12 09:36:32,844.844 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:36:32,869.869 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 09:36:32,893.893 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 09:36:32,894.894 INFO    ] No camera update needed
[2026-06-12 09:36:32,895.895 INFO    ] Script finished. Safe exiting...
[2026-06-12 09:36:32,896.896 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 09:36:32,899.899 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 09:36:32,902.902 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 09:36:34,942.942 INFO    ] ================================================
[2026-06-12 09:36:34,957.957 INFO    ] Launching Daemon at Fri Jun 12 09:36:34 IST 2026
[2026-06-12 09:36:34,968.968 INFO    ] ================================================
[2026-06-12 09:36:35,367.367 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 09:36:35
[2026-06-12 09:36:35,704.704 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 09:36:35,859.859 INFO    ] Initializing speech engine...
[2026-06-12 09:36:35,865.865 INFO    ] 2026-06-12 09:36:35
[2026-06-12 09:36:36,068.068 INFO    ] 2026-06-12 09:36:36
[2026-06-12 09:36:36,098.098 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 09:36:36,279.279 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 09:36:36,289.289 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 09:36:36,418.418 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 09:36:36,485.485 INFO    ] time= 12/06/2026 09:36:36
[2026-06-12 09:36:36,509.509 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 09:36:36,516.516 INFO    ] Checking for existing commands in stream...
[2026-06-12 09:36:36,583.583 INFO    ] No existing commands found in stream
[2026-06-12 09:36:41,597.597 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 09:36:41,600.600 INFO    ] Waiting 2.21 seconds before fallback handling...
[2026-06-12 09:36:44,202.202 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 09:36:44,204.204 INFO    ] Checking for system updates...
[2026-06-12 09:36:44,225.225 INFO    ] 200
[2026-06-12 09:36:44,227.227 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:36:44,260.260 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 09:36:44,261.261 INFO    ] No update needed
[2026-06-12 09:36:44,262.262 INFO    ] Checking for camera pi updates...
[2026-06-12 09:36:44,283.283 INFO    ] 200
[2026-06-12 09:36:44,285.285 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:36:44,310.310 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 09:36:44,450.450 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 09:36:44,452.452 INFO    ] No camera update needed
[2026-06-12 09:36:44,453.453 INFO    ] Script finished. Safe exiting...
[2026-06-12 09:36:44,454.454 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 09:36:44,457.457 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 09:36:44,460.460 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 09:36:46,500.500 INFO    ] ================================================
[2026-06-12 09:36:46,515.515 INFO    ] Launching Daemon at Fri Jun 12 09:36:46 IST 2026
[2026-06-12 09:36:46,526.526 INFO    ] ================================================
[2026-06-12 09:36:46,871.871 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 09:36:46
[2026-06-12 09:36:47,183.183 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 09:36:47,313.313 INFO    ] Initializing speech engine...
[2026-06-12 09:36:47,321.321 INFO    ] 2026-06-12 09:36:47
[2026-06-12 09:36:47,535.535 INFO    ] 2026-06-12 09:36:47
[2026-06-12 09:36:47,564.564 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 09:36:47,688.688 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 09:36:47,752.752 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 09:36:47,890.890 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 09:36:47,949.949 INFO    ] time= 12/06/2026 09:36:47
[2026-06-12 09:36:47,983.983 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 09:36:47,989.989 INFO    ] Checking for existing commands in stream...
[2026-06-12 09:36:48,056.056 INFO    ] No existing commands found in stream
[2026-06-12 09:36:53,065.065 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 09:36:53,068.068 INFO    ] Waiting 1.85 seconds before fallback handling...
[2026-06-12 09:36:55,262.262 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 09:36:55,264.264 INFO    ] Checking for system updates...
[2026-06-12 09:36:55,285.285 INFO    ] 200
[2026-06-12 09:36:55,287.287 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:36:55,317.317 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 09:36:55,319.319 INFO    ] No update needed
[2026-06-12 09:36:55,320.320 INFO    ] Checking for camera pi updates...
[2026-06-12 09:36:55,343.343 INFO    ] 200
[2026-06-12 09:36:55,344.344 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:36:55,367.367 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 09:36:55,395.395 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 09:36:55,397.397 INFO    ] No camera update needed
[2026-06-12 09:36:55,398.398 INFO    ] Script finished. Safe exiting...
[2026-06-12 09:36:55,399.399 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 09:36:55,402.402 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 09:36:55,405.405 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 09:36:57,445.445 INFO    ] ================================================
[2026-06-12 09:36:57,461.461 INFO    ] Launching Daemon at Fri Jun 12 09:36:57 IST 2026
[2026-06-12 09:36:57,471.471 INFO    ] ================================================
[2026-06-12 09:36:57,819.819 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 09:36:57
[2026-06-12 09:36:58,135.135 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 09:36:58,272.272 INFO    ] Initializing speech engine...
[2026-06-12 09:36:58,281.281 INFO    ] 2026-06-12 09:36:58
[2026-06-12 09:36:58,486.486 INFO    ] 2026-06-12 09:36:58
[2026-06-12 09:36:58,514.514 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 09:36:58,698.698 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 09:36:58,707.707 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 09:36:58,833.833 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 09:36:58,904.904 INFO    ] time= 12/06/2026 09:36:58
[2026-06-12 09:36:58,928.928 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 09:36:58,934.934 INFO    ] Checking for existing commands in stream...
[2026-06-12 09:36:59,001.001 INFO    ] No existing commands found in stream
[2026-06-12 09:37:04,010.010 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 09:37:04,013.013 INFO    ] Waiting 0.73 seconds before fallback handling...
[2026-06-12 09:37:05,096.096 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 09:37:05,103.103 INFO    ] Checking for system updates...
[2026-06-12 09:37:05,127.127 INFO    ] 200
[2026-06-12 09:37:05,129.129 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:37:05,161.161 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 09:37:05,163.163 INFO    ] No update needed
[2026-06-12 09:37:05,164.164 INFO    ] Checking for camera pi updates...
[2026-06-12 09:37:05,185.185 INFO    ] 200
[2026-06-12 09:37:05,187.187 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:37:05,211.211 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 09:37:05,250.250 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 09:37:05,252.252 INFO    ] No camera update needed
[2026-06-12 09:37:05,253.253 INFO    ] Script finished. Safe exiting...
[2026-06-12 09:37:05,254.254 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 09:37:05,257.257 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 09:37:05,260.260 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 09:37:07,299.299 INFO    ] ================================================
[2026-06-12 09:37:07,315.315 INFO    ] Launching Daemon at Fri Jun 12 09:37:07 IST 2026
[2026-06-12 09:37:07,326.326 INFO    ] ================================================
[2026-06-12 09:37:07,662.662 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 09:37:07
[2026-06-12 09:37:08,002.002 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 09:37:08,155.155 INFO    ] Initializing speech engine...
[2026-06-12 09:37:08,160.160 INFO    ] 2026-06-12 09:37:08
[2026-06-12 09:37:08,366.366 INFO    ] 2026-06-12 09:37:08
[2026-06-12 09:37:08,395.395 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 09:37:08,579.579 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 09:37:08,589.589 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 09:37:08,716.716 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 09:37:08,786.786 INFO    ] time= 12/06/2026 09:37:08
[2026-06-12 09:37:08,811.811 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 09:37:08,817.817 INFO    ] Checking for existing commands in stream...
[2026-06-12 09:37:08,883.883 INFO    ] No existing commands found in stream
[2026-06-12 09:37:13,898.898 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 09:37:13,902.902 INFO    ] Waiting 2.18 seconds before fallback handling...
[2026-06-12 09:37:16,471.471 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 09:37:16,473.473 INFO    ] Checking for system updates...
[2026-06-12 09:37:16,495.495 INFO    ] 200
[2026-06-12 09:37:16,497.497 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:37:16,530.530 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 09:37:16,532.532 INFO    ] No update needed
[2026-06-12 09:37:16,533.533 INFO    ] Checking for camera pi updates...
[2026-06-12 09:37:16,554.554 INFO    ] 200
[2026-06-12 09:37:16,556.556 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:37:16,582.582 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 09:37:16,623.623 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 09:37:16,624.624 INFO    ] No camera update needed
[2026-06-12 09:37:16,625.625 INFO    ] Script finished. Safe exiting...
[2026-06-12 09:37:16,627.627 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 09:37:16,630.630 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 09:37:16,633.633 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 09:37:18,676.676 INFO    ] ================================================
[2026-06-12 09:37:18,692.692 INFO    ] Launching Daemon at Fri Jun 12 09:37:18 IST 2026
[2026-06-12 09:37:18,703.703 INFO    ] ================================================
[2026-06-12 09:37:19,061.061 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 09:37:19
[2026-06-12 09:37:19,388.388 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 09:37:19,532.532 INFO    ] Initializing speech engine...
[2026-06-12 09:37:19,536.536 INFO    ] 2026-06-12 09:37:19
[2026-06-12 09:37:19,763.763 INFO    ] 2026-06-12 09:37:19
[2026-06-12 09:37:19,793.793 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 09:37:19,924.924 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 09:37:19,968.968 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 09:37:20,135.135 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 09:37:20,183.183 INFO    ] time= 12/06/2026 09:37:20
[2026-06-12 09:37:20,223.223 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 09:37:20,246.246 INFO    ] Checking for existing commands in stream...
[2026-06-12 09:37:20,320.320 INFO    ] No existing commands found in stream
[2026-06-12 09:37:25,331.331 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 09:37:25,333.333 INFO    ] Waiting 0.19 seconds before fallback handling...
[2026-06-12 09:37:25,870.870 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 09:37:25,871.871 INFO    ] Checking for system updates...
[2026-06-12 09:37:25,892.892 INFO    ] 200
[2026-06-12 09:37:25,893.893 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:37:25,924.924 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 09:37:25,925.925 INFO    ] No update needed
[2026-06-12 09:37:25,927.927 INFO    ] Checking for camera pi updates...
[2026-06-12 09:37:25,947.947 INFO    ] 200
[2026-06-12 09:37:25,949.949 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:37:25,972.972 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 09:37:26,007.007 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 09:37:26,008.008 INFO    ] No camera update needed
[2026-06-12 09:37:26,010.010 INFO    ] Script finished. Safe exiting...
[2026-06-12 09:37:26,011.011 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 09:37:26,014.014 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 09:37:26,017.017 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 09:37:28,055.055 INFO    ] ================================================
[2026-06-12 09:37:28,071.071 INFO    ] Launching Daemon at Fri Jun 12 09:37:28 IST 2026
[2026-06-12 09:37:28,083.083 INFO    ] ================================================
[2026-06-12 09:37:28,413.413 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 09:37:28
[2026-06-12 09:37:28,727.727 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 09:37:28,870.870 INFO    ] Initializing speech engine...
[2026-06-12 09:37:28,876.876 INFO    ] 2026-06-12 09:37:28
[2026-06-12 09:37:29,081.081 INFO    ] 2026-06-12 09:37:29
[2026-06-12 09:37:29,110.110 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 09:37:29,297.297 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 09:37:29,301.301 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 09:37:29,433.433 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 09:37:29,489.489 INFO    ] time= 12/06/2026 09:37:29
[2026-06-12 09:37:29,524.524 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 09:37:29,535.535 INFO    ] Checking for existing commands in stream...
[2026-06-12 09:37:29,607.607 INFO    ] No existing commands found in stream
[2026-06-12 09:37:34,616.616 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 09:37:34,619.619 INFO    ] Waiting 0.09 seconds before fallback handling...
[2026-06-12 09:37:35,062.062 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 09:37:35,064.064 INFO    ] Checking for system updates...
[2026-06-12 09:37:35,086.086 INFO    ] 200
[2026-06-12 09:37:35,087.087 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:37:35,120.120 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 09:37:35,121.121 INFO    ] No update needed
[2026-06-12 09:37:35,122.122 INFO    ] Checking for camera pi updates...
[2026-06-12 09:37:35,143.143 INFO    ] 200
[2026-06-12 09:37:35,144.144 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:37:35,167.167 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 09:37:35,212.212 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 09:37:35,220.220 INFO    ] No camera update needed
[2026-06-12 09:37:35,222.222 INFO    ] Script finished. Safe exiting...
[2026-06-12 09:37:35,223.223 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 09:37:35,227.227 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 09:37:35,230.230 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 09:37:37,268.268 INFO    ] ================================================
[2026-06-12 09:37:37,284.284 INFO    ] Launching Daemon at Fri Jun 12 09:37:37 IST 2026
[2026-06-12 09:37:37,295.295 INFO    ] ================================================
[2026-06-12 09:37:37,643.643 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 09:37:37
[2026-06-12 09:37:37,983.983 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 09:37:38,138.138 INFO    ] Initializing speech engine...
[2026-06-12 09:37:38,143.143 INFO    ] 2026-06-12 09:37:38
[2026-06-12 09:37:38,349.349 INFO    ] 2026-06-12 09:37:38
[2026-06-12 09:37:38,379.379 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 09:37:38,562.562 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 09:37:38,571.571 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 09:37:38,737.737 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 09:37:38,789.789 INFO    ] time= 12/06/2026 09:37:38
[2026-06-12 09:37:38,796.796 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 09:37:38,798.798 INFO    ] Checking for existing commands in stream...
[2026-06-12 09:37:38,867.867 INFO    ] No existing commands found in stream
[2026-06-12 09:37:43,881.881 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 09:37:43,884.884 INFO    ] Waiting 2.89 seconds before fallback handling...
[2026-06-12 09:37:47,162.162 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 09:37:47,163.163 INFO    ] Checking for system updates...
[2026-06-12 09:37:47,184.184 INFO    ] 200
[2026-06-12 09:37:47,186.186 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:37:47,221.221 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 09:37:47,222.222 INFO    ] No update needed
[2026-06-12 09:37:47,224.224 INFO    ] Checking for camera pi updates...
[2026-06-12 09:37:47,244.244 INFO    ] 200
[2026-06-12 09:37:47,246.246 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:37:47,269.269 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 09:37:47,316.316 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 09:37:47,318.318 INFO    ] No camera update needed
[2026-06-12 09:37:47,319.319 INFO    ] Script finished. Safe exiting...
[2026-06-12 09:37:47,320.320 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 09:37:47,323.323 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 09:37:47,326.326 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 09:37:49,364.364 INFO    ] ================================================
[2026-06-12 09:37:49,380.380 INFO    ] Launching Daemon at Fri Jun 12 09:37:49 IST 2026
[2026-06-12 09:37:49,391.391 INFO    ] ================================================
[2026-06-12 09:37:49,782.782 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 09:37:49
[2026-06-12 09:37:50,093.093 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 09:37:50,235.235 INFO    ] Initializing speech engine...
[2026-06-12 09:37:50,239.239 INFO    ] 2026-06-12 09:37:50
[2026-06-12 09:37:50,450.450 INFO    ] 2026-06-12 09:37:50
[2026-06-12 09:37:50,479.479 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 09:37:50,662.662 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 09:37:50,671.671 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 09:37:50,801.801 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 09:37:50,868.868 INFO    ] time= 12/06/2026 09:37:50
[2026-06-12 09:37:50,892.892 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 09:37:50,901.901 INFO    ] Checking for existing commands in stream...
[2026-06-12 09:37:50,968.968 INFO    ] No existing commands found in stream
[2026-06-12 09:37:55,977.977 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 09:37:55,980.980 INFO    ] Waiting 1.44 seconds before fallback handling...
[2026-06-12 09:37:57,792.792 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 09:37:57,794.794 INFO    ] Checking for system updates...
[2026-06-12 09:37:57,814.814 INFO    ] 200
[2026-06-12 09:37:57,815.815 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:37:57,850.850 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 09:37:57,851.851 INFO    ] No update needed
[2026-06-12 09:37:57,852.852 INFO    ] Checking for camera pi updates...
[2026-06-12 09:37:57,873.873 INFO    ] 200
[2026-06-12 09:37:57,874.874 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:37:57,897.897 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 09:37:57,930.930 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 09:37:57,932.932 INFO    ] No camera update needed
[2026-06-12 09:37:57,933.933 INFO    ] Script finished. Safe exiting...
[2026-06-12 09:37:57,934.934 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 09:37:57,937.937 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 09:37:57,940.940 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 09:37:59,979.979 INFO    ] ================================================
[2026-06-12 09:38:00,995.995 INFO    ] Launching Daemon at Fri Jun 12 09:37:59 IST 2026
[2026-06-12 09:38:00,007.007 INFO    ] ================================================
[2026-06-12 09:38:00,357.357 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 09:38:00
[2026-06-12 09:38:00,674.674 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 09:38:00,818.818 INFO    ] Initializing speech engine...
[2026-06-12 09:38:00,823.823 INFO    ] 2026-06-12 09:38:00
[2026-06-12 09:38:01,028.028 INFO    ] 2026-06-12 09:38:01
[2026-06-12 09:38:01,056.056 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 09:38:01,239.239 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 09:38:01,248.248 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 09:38:01,398.398 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 09:38:01,445.445 INFO    ] time= 12/06/2026 09:38:01
[2026-06-12 09:38:01,479.479 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 09:38:01,482.482 INFO    ] Checking for existing commands in stream...
[2026-06-12 09:38:01,577.577 INFO    ] No existing commands found in stream
[2026-06-12 09:38:06,592.592 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 09:38:06,595.595 INFO    ] Waiting 3.56 seconds before fallback handling...
[2026-06-12 09:38:11,256.256 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 09:38:11,258.258 INFO    ] Checking for system updates...
[2026-06-12 09:38:11,299.299 INFO    ] 200
[2026-06-12 09:38:11,302.302 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:38:11,357.357 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 09:38:11,359.359 INFO    ] No update needed
[2026-06-12 09:38:11,360.360 INFO    ] Checking for camera pi updates...
[2026-06-12 09:38:11,381.381 INFO    ] 200
[2026-06-12 09:38:11,382.382 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:38:11,407.407 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 09:38:11,447.447 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 09:38:11,449.449 INFO    ] No camera update needed
[2026-06-12 09:38:11,450.450 INFO    ] Script finished. Safe exiting...
[2026-06-12 09:38:11,451.451 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 09:38:11,454.454 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 09:38:11,457.457 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 09:38:13,495.495 INFO    ] ================================================
[2026-06-12 09:38:13,511.511 INFO    ] Launching Daemon at Fri Jun 12 09:38:13 IST 2026
[2026-06-12 09:38:13,522.522 INFO    ] ================================================
[2026-06-12 09:38:13,858.858 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 09:38:13
[2026-06-12 09:38:14,173.173 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 09:38:14,305.305 INFO    ] Initializing speech engine...
[2026-06-12 09:38:14,312.312 INFO    ] 2026-06-12 09:38:14
[2026-06-12 09:38:14,528.528 INFO    ] 2026-06-12 09:38:14
[2026-06-12 09:38:14,556.556 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 09:38:14,743.743 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 09:38:14,746.746 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 09:38:14,881.881 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 09:38:14,933.933 INFO    ] time= 12/06/2026 09:38:14
[2026-06-12 09:38:14,978.978 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 09:38:14,980.980 INFO    ] Checking for existing commands in stream...
[2026-06-12 09:38:15,052.052 INFO    ] No existing commands found in stream
[2026-06-12 09:38:20,061.061 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 09:38:20,064.064 INFO    ] Waiting 3.33 seconds before fallback handling...
[2026-06-12 09:38:23,756.756 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 09:38:23,758.758 INFO    ] Checking for system updates...
[2026-06-12 09:38:23,783.783 INFO    ] 200
[2026-06-12 09:38:23,785.785 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:38:23,817.817 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 09:38:23,819.819 INFO    ] No update needed
[2026-06-12 09:38:23,820.820 INFO    ] Checking for camera pi updates...
[2026-06-12 09:38:23,843.843 INFO    ] 200
[2026-06-12 09:38:23,844.844 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:38:23,870.870 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 09:38:23,906.906 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 09:38:23,908.908 INFO    ] No camera update needed
[2026-06-12 09:38:23,909.909 INFO    ] Script finished. Safe exiting...
[2026-06-12 09:38:23,911.911 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 09:38:23,914.914 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 09:38:23,917.917 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 09:38:25,955.955 INFO    ] ================================================
[2026-06-12 09:38:25,971.971 INFO    ] Launching Daemon at Fri Jun 12 09:38:25 IST 2026
[2026-06-12 09:38:25,982.982 INFO    ] ================================================
[2026-06-12 09:38:26,369.369 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 09:38:26
[2026-06-12 09:38:26,712.712 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 09:38:26,866.866 INFO    ] Initializing speech engine...
[2026-06-12 09:38:26,871.871 INFO    ] 2026-06-12 09:38:26
[2026-06-12 09:38:27,082.082 INFO    ] 2026-06-12 09:38:27
[2026-06-12 09:38:27,113.113 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 09:38:27,299.299 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 09:38:27,309.309 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 09:38:27,444.444 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 09:38:27,503.503 INFO    ] time= 12/06/2026 09:38:27
[2026-06-12 09:38:27,536.536 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 09:38:27,543.543 INFO    ] Checking for existing commands in stream...
[2026-06-12 09:38:27,611.611 INFO    ] No existing commands found in stream
[2026-06-12 09:38:32,629.629 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 09:38:32,631.631 INFO    ] Waiting 0.97 seconds before fallback handling...
[2026-06-12 09:38:33,959.959 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 09:38:33,961.961 INFO    ] Checking for system updates...
[2026-06-12 09:38:33,983.983 INFO    ] 200
[2026-06-12 09:38:33,985.985 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:38:34,029.029 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 09:38:34,030.030 INFO    ] No update needed
[2026-06-12 09:38:34,032.032 INFO    ] Checking for camera pi updates...
[2026-06-12 09:38:34,053.053 INFO    ] 200
[2026-06-12 09:38:34,054.054 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:38:34,081.081 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 09:38:34,118.118 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 09:38:34,120.120 INFO    ] No camera update needed
[2026-06-12 09:38:34,121.121 INFO    ] Script finished. Safe exiting...
[2026-06-12 09:38:34,123.123 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 09:38:34,126.126 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 09:38:34,129.129 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 09:38:36,168.168 INFO    ] ================================================
[2026-06-12 09:38:36,184.184 INFO    ] Launching Daemon at Fri Jun 12 09:38:36 IST 2026
[2026-06-12 09:38:36,196.196 INFO    ] ================================================
[2026-06-12 09:38:36,574.574 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 09:38:36
[2026-06-12 09:38:36,889.889 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 09:38:37,025.025 INFO    ] Initializing speech engine...
[2026-06-12 09:38:37,039.039 INFO    ] 2026-06-12 09:38:37
[2026-06-12 09:38:37,243.243 INFO    ] 2026-06-12 09:38:37
[2026-06-12 09:38:37,272.272 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 09:38:37,456.456 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 09:38:37,460.460 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 09:38:37,596.596 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 09:38:37,664.664 INFO    ] time= 12/06/2026 09:38:37
[2026-06-12 09:38:37,688.688 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 09:38:37,694.694 INFO    ] Checking for existing commands in stream...
[2026-06-12 09:38:37,759.759 INFO    ] No existing commands found in stream
[2026-06-12 09:38:42,770.770 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 09:38:42,773.773 INFO    ] Waiting 2.32 seconds before fallback handling...
[2026-06-12 09:38:45,500.500 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 09:38:45,502.502 INFO    ] Checking for system updates...
[2026-06-12 09:38:45,537.537 INFO    ] 200
[2026-06-12 09:38:45,538.538 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:38:45,574.574 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 09:38:45,575.575 INFO    ] No update needed
[2026-06-12 09:38:45,577.577 INFO    ] Checking for camera pi updates...
[2026-06-12 09:38:45,601.601 INFO    ] 200
[2026-06-12 09:38:45,602.602 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:38:45,628.628 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 09:38:45,676.676 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 09:38:45,677.677 INFO    ] No camera update needed
[2026-06-12 09:38:45,679.679 INFO    ] Script finished. Safe exiting...
[2026-06-12 09:38:45,680.680 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 09:38:45,684.684 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 09:38:45,687.687 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 09:38:47,726.726 INFO    ] ================================================
[2026-06-12 09:38:47,742.742 INFO    ] Launching Daemon at Fri Jun 12 09:38:47 IST 2026
[2026-06-12 09:38:47,753.753 INFO    ] ================================================
[2026-06-12 09:38:48,125.125 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 09:38:48
[2026-06-12 09:38:48,441.441 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 09:38:48,573.573 INFO    ] Initializing speech engine...
[2026-06-12 09:38:48,581.581 INFO    ] 2026-06-12 09:38:48
[2026-06-12 09:38:48,793.793 INFO    ] 2026-06-12 09:38:48
[2026-06-12 09:38:48,823.823 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 09:38:48,945.945 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 09:38:49,009.009 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 09:38:49,147.147 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 09:38:49,215.215 INFO    ] time= 12/06/2026 09:38:49
[2026-06-12 09:38:49,239.239 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 09:38:49,246.246 INFO    ] Checking for existing commands in stream...
[2026-06-12 09:38:49,311.311 INFO    ] No existing commands found in stream
[2026-06-12 09:38:54,321.321 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 09:38:54,324.324 INFO    ] Waiting 1.58 seconds before fallback handling...
[2026-06-12 09:38:56,261.261 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 09:38:56,263.263 INFO    ] Checking for system updates...
[2026-06-12 09:38:56,284.284 INFO    ] 200
[2026-06-12 09:38:56,285.285 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:38:56,315.315 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 09:38:56,317.317 INFO    ] No update needed
[2026-06-12 09:38:56,318.318 INFO    ] Checking for camera pi updates...
[2026-06-12 09:38:56,337.337 INFO    ] 200
[2026-06-12 09:38:56,338.338 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:38:56,363.363 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 09:38:56,502.502 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 09:38:56,504.504 INFO    ] No camera update needed
[2026-06-12 09:38:56,505.505 INFO    ] Script finished. Safe exiting...
[2026-06-12 09:38:56,506.506 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 09:38:56,509.509 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 09:38:56,512.512 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 09:38:58,551.551 INFO    ] ================================================
[2026-06-12 09:38:58,567.567 INFO    ] Launching Daemon at Fri Jun 12 09:38:58 IST 2026
[2026-06-12 09:38:58,579.579 INFO    ] ================================================
[2026-06-12 09:38:58,915.915 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 09:38:58
[2026-06-12 09:38:59,226.226 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 09:38:59,364.364 INFO    ] Initializing speech engine...
[2026-06-12 09:38:59,374.374 INFO    ] 2026-06-12 09:38:59
[2026-06-12 09:38:59,578.578 INFO    ] 2026-06-12 09:38:59
[2026-06-12 09:38:59,608.608 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 09:38:59,791.791 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 09:38:59,795.795 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 09:38:59,930.930 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 09:38:59,997.997 INFO    ] time= 12/06/2026 09:38:59
[2026-06-12 09:39:00,021.021 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 09:39:00,027.027 INFO    ] Checking for existing commands in stream...
[2026-06-12 09:39:00,092.092 INFO    ] No existing commands found in stream
[2026-06-12 09:39:05,102.102 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 09:39:05,105.105 INFO    ] Waiting 1.66 seconds before fallback handling...
[2026-06-12 09:39:07,130.130 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 09:39:07,132.132 INFO    ] Checking for system updates...
[2026-06-12 09:39:07,152.152 INFO    ] 200
[2026-06-12 09:39:07,153.153 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:39:07,186.186 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 09:39:07,187.187 INFO    ] No update needed
[2026-06-12 09:39:07,188.188 INFO    ] Checking for camera pi updates...
[2026-06-12 09:39:07,207.207 INFO    ] 200
[2026-06-12 09:39:07,209.209 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:39:07,233.233 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 09:39:07,278.278 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 09:39:07,280.280 INFO    ] No camera update needed
[2026-06-12 09:39:07,281.281 INFO    ] Script finished. Safe exiting...
[2026-06-12 09:39:07,282.282 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 09:39:07,285.285 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 09:39:07,288.288 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 09:39:09,328.328 INFO    ] ================================================
[2026-06-12 09:39:09,344.344 INFO    ] Launching Daemon at Fri Jun 12 09:39:09 IST 2026
[2026-06-12 09:39:09,355.355 INFO    ] ================================================
[2026-06-12 09:39:09,731.731 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 09:39:09
[2026-06-12 09:39:10,066.066 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 09:39:10,215.215 INFO    ] Initializing speech engine...
[2026-06-12 09:39:10,220.220 INFO    ] 2026-06-12 09:39:10
[2026-06-12 09:39:10,429.429 INFO    ] 2026-06-12 09:39:10
[2026-06-12 09:39:10,457.457 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 09:39:10,642.642 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 09:39:10,651.651 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 09:39:10,774.774 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 09:39:10,830.830 INFO    ] time= 12/06/2026 09:39:10
[2026-06-12 09:39:10,872.872 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 09:39:10,879.879 INFO    ] Checking for existing commands in stream...
[2026-06-12 09:39:10,945.945 INFO    ] No existing commands found in stream
[2026-06-12 09:39:15,969.969 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 09:39:15,973.973 INFO    ] Waiting 2.23 seconds before fallback handling...
[2026-06-12 09:39:18,582.582 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 09:39:18,584.584 INFO    ] Checking for system updates...
[2026-06-12 09:39:18,606.606 INFO    ] 200
[2026-06-12 09:39:18,607.607 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:39:18,640.640 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 09:39:18,642.642 INFO    ] No update needed
[2026-06-12 09:39:18,643.643 INFO    ] Checking for camera pi updates...
[2026-06-12 09:39:18,664.664 INFO    ] 200
[2026-06-12 09:39:18,665.665 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:39:18,692.692 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 09:39:18,731.731 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 09:39:18,733.733 INFO    ] No camera update needed
[2026-06-12 09:39:18,734.734 INFO    ] Script finished. Safe exiting...
[2026-06-12 09:39:18,736.736 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 09:39:18,739.739 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 09:39:18,742.742 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 09:39:20,781.781 INFO    ] ================================================
[2026-06-12 09:39:20,797.797 INFO    ] Launching Daemon at Fri Jun 12 09:39:20 IST 2026
[2026-06-12 09:39:20,808.808 INFO    ] ================================================
[2026-06-12 09:39:21,199.199 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 09:39:21
[2026-06-12 09:39:21,533.533 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 09:39:21,684.684 INFO    ] Initializing speech engine...
[2026-06-12 09:39:21,690.690 INFO    ] 2026-06-12 09:39:21
[2026-06-12 09:39:21,897.897 INFO    ] 2026-06-12 09:39:21
[2026-06-12 09:39:21,926.926 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 09:39:22,066.066 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 09:39:22,115.115 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 09:39:22,251.251 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 09:39:22,308.308 INFO    ] time= 12/06/2026 09:39:22
[2026-06-12 09:39:22,347.347 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 09:39:22,354.354 INFO    ] Checking for existing commands in stream...
[2026-06-12 09:39:22,421.421 INFO    ] No existing commands found in stream
[2026-06-12 09:39:27,431.431 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 09:39:27,434.434 INFO    ] Waiting 1.55 seconds before fallback handling...
[2026-06-12 09:39:29,338.338 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 09:39:29,340.340 INFO    ] Checking for system updates...
[2026-06-12 09:39:29,361.361 INFO    ] 200
[2026-06-12 09:39:29,363.363 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:39:29,393.393 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 09:39:29,394.394 INFO    ] No update needed
[2026-06-12 09:39:29,395.395 INFO    ] Checking for camera pi updates...
[2026-06-12 09:39:29,416.416 INFO    ] 200
[2026-06-12 09:39:29,417.417 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:39:29,445.445 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 09:39:29,485.485 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 09:39:29,487.487 INFO    ] No camera update needed
[2026-06-12 09:39:29,488.488 INFO    ] Script finished. Safe exiting...
[2026-06-12 09:39:29,490.490 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 09:39:29,493.493 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 09:39:29,496.496 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 09:39:31,536.536 INFO    ] ================================================
[2026-06-12 09:39:31,551.551 INFO    ] Launching Daemon at Fri Jun 12 09:39:31 IST 2026
[2026-06-12 09:39:31,562.562 INFO    ] ================================================
[2026-06-12 09:39:31,943.943 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 09:39:31
[2026-06-12 09:39:32,287.287 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 09:39:32,435.435 INFO    ] Initializing speech engine...
[2026-06-12 09:39:32,449.449 INFO    ] 2026-06-12 09:39:32
[2026-06-12 09:39:32,649.649 INFO    ] 2026-06-12 09:39:32
[2026-06-12 09:39:32,689.689 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 09:39:32,875.875 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 09:39:32,912.912 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 09:39:33,055.055 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 09:39:33,128.128 INFO    ] time= 12/06/2026 09:39:33
[2026-06-12 09:39:33,156.156 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 09:39:33,163.163 INFO    ] Checking for existing commands in stream...
[2026-06-12 09:39:33,234.234 INFO    ] No existing commands found in stream
[2026-06-12 09:39:38,253.253 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 09:39:38,256.256 INFO    ] Waiting 2.67 seconds before fallback handling...
[2026-06-12 09:39:41,293.293 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 09:39:41,295.295 INFO    ] Checking for system updates...
[2026-06-12 09:39:41,316.316 INFO    ] 200
[2026-06-12 09:39:41,317.317 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:39:41,348.348 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 09:39:41,349.349 INFO    ] No update needed
[2026-06-12 09:39:41,351.351 INFO    ] Checking for camera pi updates...
[2026-06-12 09:39:41,371.371 INFO    ] 200
[2026-06-12 09:39:41,372.372 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:39:41,395.395 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 09:39:41,430.430 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 09:39:41,432.432 INFO    ] No camera update needed
[2026-06-12 09:39:41,433.433 INFO    ] Script finished. Safe exiting...
[2026-06-12 09:39:41,434.434 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 09:39:41,437.437 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 09:39:41,440.440 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 09:39:43,479.479 INFO    ] ================================================
[2026-06-12 09:39:43,494.494 INFO    ] Launching Daemon at Fri Jun 12 09:39:43 IST 2026
[2026-06-12 09:39:43,506.506 INFO    ] ================================================
[2026-06-12 09:39:43,836.836 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 09:39:43
[2026-06-12 09:39:44,153.153 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 09:39:44,286.286 INFO    ] Initializing speech engine...
[2026-06-12 09:39:44,298.298 INFO    ] 2026-06-12 09:39:44
[2026-06-12 09:39:44,505.505 INFO    ] 2026-06-12 09:39:44
[2026-06-12 09:39:44,535.535 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 09:39:44,718.718 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 09:39:44,729.729 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 09:39:44,852.852 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 09:39:44,912.912 INFO    ] time= 12/06/2026 09:39:44
[2026-06-12 09:39:44,942.942 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 09:39:44,952.952 INFO    ] Checking for existing commands in stream...
[2026-06-12 09:39:45,022.022 INFO    ] No existing commands found in stream
[2026-06-12 09:39:50,032.032 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 09:39:50,034.034 INFO    ] Waiting 3.88 seconds before fallback handling...
[2026-06-12 09:39:54,310.310 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 09:39:54,312.312 INFO    ] Checking for system updates...
[2026-06-12 09:39:54,336.336 INFO    ] 200
[2026-06-12 09:39:54,337.337 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:39:54,370.370 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 09:39:54,372.372 INFO    ] No update needed
[2026-06-12 09:39:54,373.373 INFO    ] Checking for camera pi updates...
[2026-06-12 09:39:54,394.394 INFO    ] 200
[2026-06-12 09:39:54,395.395 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:39:54,422.422 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 09:39:54,459.459 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 09:39:54,460.460 INFO    ] No camera update needed
[2026-06-12 09:39:54,462.462 INFO    ] Script finished. Safe exiting...
[2026-06-12 09:39:54,463.463 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 09:39:54,466.466 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 09:39:54,469.469 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 09:39:56,509.509 INFO    ] ================================================
[2026-06-12 09:39:56,526.526 INFO    ] Launching Daemon at Fri Jun 12 09:39:56 IST 2026
[2026-06-12 09:39:56,537.537 INFO    ] ================================================
[2026-06-12 09:39:56,901.901 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 09:39:56
[2026-06-12 09:39:57,234.234 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 09:39:57,387.387 INFO    ] Initializing speech engine...
[2026-06-12 09:39:57,391.391 INFO    ] 2026-06-12 09:39:57
[2026-06-12 09:39:57,597.597 INFO    ] 2026-06-12 09:39:57
[2026-06-12 09:39:57,627.627 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 09:39:57,810.810 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 09:39:57,821.821 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 09:39:57,950.950 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 09:39:58,018.018 INFO    ] time= 12/06/2026 09:39:57
[2026-06-12 09:39:58,042.042 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 09:39:58,049.049 INFO    ] Checking for existing commands in stream...
[2026-06-12 09:39:58,116.116 INFO    ] No existing commands found in stream
[2026-06-12 09:40:03,130.130 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 09:40:03,133.133 INFO    ] Waiting 0.86 seconds before fallback handling...
[2026-06-12 09:40:07,411.411 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 09:40:07,414.414 INFO    ] Checking for system updates...
[2026-06-12 09:40:07,450.450 INFO    ] 200
[2026-06-12 09:40:07,453.453 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:40:07,506.506 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 09:40:07,509.509 INFO    ] No update needed
[2026-06-12 09:40:07,511.511 INFO    ] Checking for camera pi updates...
[2026-06-12 09:40:07,549.549 INFO    ] 200
[2026-06-12 09:40:07,551.551 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:40:07,575.575 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 09:40:07,613.613 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 09:40:07,615.615 INFO    ] No camera update needed
[2026-06-12 09:40:07,616.616 INFO    ] Script finished. Safe exiting...
[2026-06-12 09:40:07,618.618 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 09:40:07,621.621 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 09:40:07,624.624 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 09:40:09,663.663 INFO    ] ================================================
[2026-06-12 09:40:09,679.679 INFO    ] Launching Daemon at Fri Jun 12 09:40:09 IST 2026
[2026-06-12 09:40:09,690.690 INFO    ] ================================================
[2026-06-12 09:40:10,024.024 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 09:40:10
[2026-06-12 09:40:10,339.339 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 09:40:10,472.472 INFO    ] Initializing speech engine...
[2026-06-12 09:40:10,480.480 INFO    ] 2026-06-12 09:40:10
[2026-06-12 09:40:10,690.690 INFO    ] 2026-06-12 09:40:10
[2026-06-12 09:40:10,720.720 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 09:40:10,878.878 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 09:40:10,907.907 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 09:40:11,043.043 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 09:40:11,109.109 INFO    ] time= 12/06/2026 09:40:11
[2026-06-12 09:40:11,133.133 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 09:40:11,140.140 INFO    ] Checking for existing commands in stream...
[2026-06-12 09:40:11,230.230 INFO    ] No existing commands found in stream
[2026-06-12 09:40:16,239.239 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 09:40:16,242.242 INFO    ] Waiting 2.77 seconds before fallback handling...
[2026-06-12 09:40:19,451.451 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 09:40:19,452.452 INFO    ] Checking for system updates...
[2026-06-12 09:40:19,473.473 INFO    ] 200
[2026-06-12 09:40:19,475.475 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:40:19,507.507 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 09:40:19,508.508 INFO    ] No update needed
[2026-06-12 09:40:19,509.509 INFO    ] Checking for camera pi updates...
[2026-06-12 09:40:19,529.529 INFO    ] 200
[2026-06-12 09:40:19,530.530 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:40:19,553.553 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 09:40:19,591.591 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 09:40:19,593.593 INFO    ] No camera update needed
[2026-06-12 09:40:19,594.594 INFO    ] Script finished. Safe exiting...
[2026-06-12 09:40:19,595.595 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 09:40:19,598.598 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 09:40:19,601.601 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 09:40:21,643.643 INFO    ] ================================================
[2026-06-12 09:40:21,660.660 INFO    ] Launching Daemon at Fri Jun 12 09:40:21 IST 2026
[2026-06-12 09:40:21,672.672 INFO    ] ================================================
[2026-06-12 09:40:22,036.036 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 09:40:22
[2026-06-12 09:40:22,367.367 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 09:40:22,517.517 INFO    ] Initializing speech engine...
[2026-06-12 09:40:22,523.523 INFO    ] 2026-06-12 09:40:22
[2026-06-12 09:40:22,728.728 INFO    ] 2026-06-12 09:40:22
[2026-06-12 09:40:22,757.757 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 09:40:22,940.940 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 09:40:22,944.944 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 09:40:23,100.100 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 09:40:23,149.149 INFO    ] time= 12/06/2026 09:40:23
[2026-06-12 09:40:23,170.170 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 09:40:23,176.176 INFO    ] Checking for existing commands in stream...
[2026-06-12 09:40:23,243.243 INFO    ] No existing commands found in stream
[2026-06-12 09:40:28,258.258 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 09:40:28,261.261 INFO    ] Waiting 2.60 seconds before fallback handling...
[2026-06-12 09:40:31,231.231 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 09:40:31,232.232 INFO    ] Checking for system updates...
[2026-06-12 09:40:31,255.255 INFO    ] 200
[2026-06-12 09:40:31,256.256 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:40:31,293.293 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 09:40:31,294.294 INFO    ] No update needed
[2026-06-12 09:40:31,296.296 INFO    ] Checking for camera pi updates...
[2026-06-12 09:40:31,316.316 INFO    ] 200
[2026-06-12 09:40:31,317.317 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:40:31,342.342 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 09:40:31,383.383 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 09:40:31,385.385 INFO    ] No camera update needed
[2026-06-12 09:40:31,386.386 INFO    ] Script finished. Safe exiting...
[2026-06-12 09:40:31,387.387 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 09:40:31,391.391 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 09:40:31,394.394 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 09:40:33,418.418 INFO    ] ================================================
[2026-06-12 09:40:33,427.427 INFO    ] Launching Daemon at Fri Jun 12 09:40:33 IST 2026
[2026-06-12 09:40:33,433.433 INFO    ] ================================================
[2026-06-12 09:40:33,732.732 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 09:40:33
[2026-06-12 09:40:34,044.044 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 09:40:34,173.173 INFO    ] Initializing speech engine...
[2026-06-12 09:40:34,177.177 INFO    ] 2026-06-12 09:40:34
[2026-06-12 09:40:34,396.396 INFO    ] 2026-06-12 09:40:34
[2026-06-12 09:40:34,425.425 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 09:40:34,549.549 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 09:40:34,613.613 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 09:40:34,753.753 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 09:40:34,820.820 INFO    ] time= 12/06/2026 09:40:34
[2026-06-12 09:40:34,845.845 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 09:40:34,851.851 INFO    ] Checking for existing commands in stream...
[2026-06-12 09:40:34,920.920 INFO    ] No existing commands found in stream
[2026-06-12 09:40:39,952.952 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 09:40:39,955.955 INFO    ] Waiting 0.41 seconds before fallback handling...
[2026-06-12 09:40:40,742.742 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 09:40:40,743.743 INFO    ] Checking for system updates...
[2026-06-12 09:40:40,765.765 INFO    ] 200
[2026-06-12 09:40:40,766.766 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:40:40,796.796 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 09:40:40,797.797 INFO    ] No update needed
[2026-06-12 09:40:40,799.799 INFO    ] Checking for camera pi updates...
[2026-06-12 09:40:40,820.820 INFO    ] 200
[2026-06-12 09:40:40,822.822 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:40:40,845.845 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 09:40:40,882.882 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 09:40:40,883.883 INFO    ] No camera update needed
[2026-06-12 09:40:40,884.884 INFO    ] Script finished. Safe exiting...
[2026-06-12 09:40:40,885.885 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 09:40:40,888.888 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 09:40:40,891.891 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 09:40:42,929.929 INFO    ] ================================================
[2026-06-12 09:40:42,945.945 INFO    ] Launching Daemon at Fri Jun 12 09:40:42 IST 2026
[2026-06-12 09:40:42,957.957 INFO    ] ================================================
[2026-06-12 09:40:43,301.301 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 09:40:43
[2026-06-12 09:40:43,617.617 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 09:40:43,760.760 INFO    ] Initializing speech engine...
[2026-06-12 09:40:43,766.766 INFO    ] 2026-06-12 09:40:43
[2026-06-12 09:40:43,967.967 INFO    ] 2026-06-12 09:40:43
[2026-06-12 09:40:43,995.995 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 09:40:44,182.182 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 09:40:44,185.185 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 09:40:44,321.321 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 09:40:44,385.385 INFO    ] time= 12/06/2026 09:40:44
[2026-06-12 09:40:44,411.411 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 09:40:44,417.417 INFO    ] Checking for existing commands in stream...
[2026-06-12 09:40:44,484.484 INFO    ] No existing commands found in stream
[2026-06-12 09:40:49,498.498 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 09:40:49,501.501 INFO    ] Waiting 0.30 seconds before fallback handling...
[2026-06-12 09:40:50,172.172 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 09:40:50,174.174 INFO    ] Checking for system updates...
[2026-06-12 09:40:50,194.194 INFO    ] 200
[2026-06-12 09:40:50,196.196 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:40:50,228.228 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 09:40:50,229.229 INFO    ] No update needed
[2026-06-12 09:40:50,231.231 INFO    ] Checking for camera pi updates...
[2026-06-12 09:40:50,251.251 INFO    ] 200
[2026-06-12 09:40:50,253.253 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:40:50,276.276 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 09:40:50,309.309 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 09:40:50,311.311 INFO    ] No camera update needed
[2026-06-12 09:40:50,312.312 INFO    ] Script finished. Safe exiting...
[2026-06-12 09:40:50,313.313 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 09:40:50,316.316 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 09:40:50,319.319 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 09:40:52,357.357 INFO    ] ================================================
[2026-06-12 09:40:52,373.373 INFO    ] Launching Daemon at Fri Jun 12 09:40:52 IST 2026
[2026-06-12 09:40:52,384.384 INFO    ] ================================================
[2026-06-12 09:40:52,738.738 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 09:40:52
[2026-06-12 09:40:53,052.052 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 09:40:53,183.183 INFO    ] Initializing speech engine...
[2026-06-12 09:40:53,190.190 INFO    ] 2026-06-12 09:40:53
[2026-06-12 09:40:53,400.400 INFO    ] 2026-06-12 09:40:53
[2026-06-12 09:40:53,429.429 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 09:40:53,612.612 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 09:40:53,615.615 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 09:40:53,751.751 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 09:40:53,815.815 INFO    ] time= 12/06/2026 09:40:53
[2026-06-12 09:40:53,842.842 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 09:40:53,848.848 INFO    ] Checking for existing commands in stream...
[2026-06-12 09:40:53,916.916 INFO    ] No existing commands found in stream
[2026-06-12 09:40:58,930.930 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 09:40:58,933.933 INFO    ] Waiting 0.45 seconds before fallback handling...
[2026-06-12 09:40:59,728.728 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 09:40:59,730.730 INFO    ] Checking for system updates...
[2026-06-12 09:40:59,752.752 INFO    ] 200
[2026-06-12 09:40:59,754.754 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:40:59,786.786 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 09:40:59,787.787 INFO    ] No update needed
[2026-06-12 09:40:59,788.788 INFO    ] Checking for camera pi updates...
[2026-06-12 09:40:59,808.808 INFO    ] 200
[2026-06-12 09:40:59,809.809 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:40:59,833.833 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 09:40:59,975.975 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 09:40:59,977.977 INFO    ] No camera update needed
[2026-06-12 09:40:59,978.978 INFO    ] Script finished. Safe exiting...
[2026-06-12 09:40:59,979.979 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 09:40:59,983.983 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 09:40:59,986.986 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 09:41:02,018.018 INFO    ] ================================================
[2026-06-12 09:41:02,029.029 INFO    ] Launching Daemon at Fri Jun 12 09:41:02 IST 2026
[2026-06-12 09:41:02,037.037 INFO    ] ================================================
[2026-06-12 09:41:02,404.404 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 09:41:02
[2026-06-12 09:41:02,757.757 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 09:41:02,907.907 INFO    ] Initializing speech engine...
[2026-06-12 09:41:02,913.913 INFO    ] 2026-06-12 09:41:02
[2026-06-12 09:41:03,119.119 INFO    ] 2026-06-12 09:41:03
[2026-06-12 09:41:03,149.149 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 09:41:03,335.335 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 09:41:03,339.339 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 09:41:03,476.476 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 09:41:03,542.542 INFO    ] time= 12/06/2026 09:41:03
[2026-06-12 09:41:03,571.571 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 09:41:03,578.578 INFO    ] Checking for existing commands in stream...
[2026-06-12 09:41:03,645.645 INFO    ] No existing commands found in stream
[2026-06-12 09:41:08,655.655 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 09:41:08,658.658 INFO    ] Waiting 1.41 seconds before fallback handling...
[2026-06-12 09:41:10,450.450 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 09:41:10,451.451 INFO    ] Checking for system updates...
[2026-06-12 09:41:10,472.472 INFO    ] 200
[2026-06-12 09:41:10,474.474 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:41:10,506.506 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 09:41:10,508.508 INFO    ] No update needed
[2026-06-12 09:41:10,509.509 INFO    ] Checking for camera pi updates...
[2026-06-12 09:41:10,528.528 INFO    ] 200
[2026-06-12 09:41:10,530.530 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:41:10,553.553 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 09:41:10,594.594 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 09:41:10,596.596 INFO    ] No camera update needed
[2026-06-12 09:41:10,597.597 INFO    ] Script finished. Safe exiting...
[2026-06-12 09:41:10,599.599 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 09:41:10,602.602 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 09:41:10,605.605 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 09:41:12,644.644 INFO    ] ================================================
[2026-06-12 09:41:12,660.660 INFO    ] Launching Daemon at Fri Jun 12 09:41:12 IST 2026
[2026-06-12 09:41:12,671.671 INFO    ] ================================================
[2026-06-12 09:41:13,037.037 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 09:41:13
[2026-06-12 09:41:13,350.350 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 09:41:13,482.482 INFO    ] Initializing speech engine...
[2026-06-12 09:41:13,489.489 INFO    ] 2026-06-12 09:41:13
[2026-06-12 09:41:13,703.703 INFO    ] 2026-06-12 09:41:13
[2026-06-12 09:41:13,732.732 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 09:41:13,918.918 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 09:41:13,927.927 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 09:41:14,053.053 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 09:41:14,104.104 INFO    ] time= 12/06/2026 09:41:14
[2026-06-12 09:41:14,145.145 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 09:41:14,155.155 INFO    ] Checking for existing commands in stream...
[2026-06-12 09:41:14,252.252 INFO    ] No existing commands found in stream
[2026-06-12 09:41:19,261.261 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 09:41:19,264.264 INFO    ] Waiting 2.96 seconds before fallback handling...
[2026-06-12 09:41:22,578.578 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 09:41:22,579.579 INFO    ] Checking for system updates...
[2026-06-12 09:41:22,601.601 INFO    ] 200
[2026-06-12 09:41:22,603.603 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:41:22,635.635 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 09:41:22,637.637 INFO    ] No update needed
[2026-06-12 09:41:22,638.638 INFO    ] Checking for camera pi updates...
[2026-06-12 09:41:22,661.661 INFO    ] 200
[2026-06-12 09:41:22,662.662 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:41:22,686.686 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 09:41:22,726.726 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 09:41:22,727.727 INFO    ] No camera update needed
[2026-06-12 09:41:22,729.729 INFO    ] Script finished. Safe exiting...
[2026-06-12 09:41:22,730.730 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 09:41:22,733.733 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 09:41:22,736.736 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 09:41:24,777.777 INFO    ] ================================================
[2026-06-12 09:41:24,793.793 INFO    ] Launching Daemon at Fri Jun 12 09:41:24 IST 2026
[2026-06-12 09:41:24,804.804 INFO    ] ================================================
[2026-06-12 09:41:25,130.130 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 09:41:25
[2026-06-12 09:41:25,444.444 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 09:41:25,574.574 INFO    ] Initializing speech engine...
[2026-06-12 09:41:25,577.577 INFO    ] 2026-06-12 09:41:25
[2026-06-12 09:41:25,792.792 INFO    ] 2026-06-12 09:41:25
[2026-06-12 09:41:25,821.821 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 09:41:26,003.003 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 09:41:26,013.013 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 09:41:26,135.135 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 09:41:26,160.160 INFO    ] time= 12/06/2026 09:41:26
[2026-06-12 09:41:26,173.173 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 09:41:26,174.174 INFO    ] Checking for existing commands in stream...
[2026-06-12 09:41:26,241.241 INFO    ] No existing commands found in stream
[2026-06-12 09:41:31,254.254 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 09:41:31,257.257 INFO    ] Waiting 1.31 seconds before fallback handling...
[2026-06-12 09:41:32,929.929 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 09:41:32,931.931 INFO    ] Checking for system updates...
[2026-06-12 09:41:32,952.952 INFO    ] 200
[2026-06-12 09:41:32,954.954 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:41:32,984.984 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 09:41:32,985.985 INFO    ] No update needed
[2026-06-12 09:41:32,986.986 INFO    ] Checking for camera pi updates...
[2026-06-12 09:41:33,006.006 INFO    ] 200
[2026-06-12 09:41:33,007.007 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:41:33,032.032 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 09:41:33,074.074 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 09:41:33,075.075 INFO    ] No camera update needed
[2026-06-12 09:41:33,076.076 INFO    ] Script finished. Safe exiting...
[2026-06-12 09:41:33,077.077 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 09:41:33,080.080 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 09:41:33,083.083 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 09:41:35,123.123 INFO    ] ================================================
[2026-06-12 09:41:35,140.140 INFO    ] Launching Daemon at Fri Jun 12 09:41:35 IST 2026
[2026-06-12 09:41:35,152.152 INFO    ] ================================================
[2026-06-12 09:41:35,521.521 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 09:41:35
[2026-06-12 09:41:35,858.858 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 09:41:36,009.009 INFO    ] Initializing speech engine...
[2026-06-12 09:41:36,015.015 INFO    ] 2026-06-12 09:41:36
[2026-06-12 09:41:36,225.225 INFO    ] 2026-06-12 09:41:36
[2026-06-12 09:41:36,255.255 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 09:41:36,441.441 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 09:41:36,451.451 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 09:41:36,575.575 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 09:41:36,641.641 INFO    ] time= 12/06/2026 09:41:36
[2026-06-12 09:41:36,674.674 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 09:41:36,676.676 INFO    ] Checking for existing commands in stream...
[2026-06-12 09:41:36,749.749 INFO    ] No existing commands found in stream
[2026-06-12 09:41:41,758.758 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 09:41:41,761.761 INFO    ] Waiting 1.49 seconds before fallback handling...
[2026-06-12 09:41:43,598.598 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 09:41:43,599.599 INFO    ] Checking for system updates...
[2026-06-12 09:41:43,621.621 INFO    ] 200
[2026-06-12 09:41:43,623.623 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:41:43,653.653 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 09:41:43,655.655 INFO    ] No update needed
[2026-06-12 09:41:43,656.656 INFO    ] Checking for camera pi updates...
[2026-06-12 09:41:43,676.676 INFO    ] 200
[2026-06-12 09:41:43,677.677 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:41:43,701.701 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 09:41:43,746.746 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 09:41:43,748.748 INFO    ] No camera update needed
[2026-06-12 09:41:43,749.749 INFO    ] Script finished. Safe exiting...
[2026-06-12 09:41:43,751.751 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 09:41:43,754.754 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 09:41:43,757.757 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 09:41:45,796.796 INFO    ] ================================================
[2026-06-12 09:41:45,811.811 INFO    ] Launching Daemon at Fri Jun 12 09:41:45 IST 2026
[2026-06-12 09:41:45,822.822 INFO    ] ================================================
[2026-06-12 09:41:46,210.210 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 09:41:46
[2026-06-12 09:41:46,548.548 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 09:41:46,689.689 INFO    ] Initializing speech engine...
[2026-06-12 09:41:46,703.703 INFO    ] 2026-06-12 09:41:46
[2026-06-12 09:41:46,914.914 INFO    ] 2026-06-12 09:41:46
[2026-06-12 09:41:46,943.943 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 09:41:47,077.077 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 09:41:47,079.079 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 09:41:47,216.216 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 09:41:47,268.268 INFO    ] time= 12/06/2026 09:41:47
[2026-06-12 09:41:47,329.329 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 09:41:47,369.369 INFO    ] Checking for existing commands in stream...
[2026-06-12 09:41:47,486.486 INFO    ] No existing commands found in stream
[2026-06-12 09:41:52,497.497 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 09:41:52,500.500 INFO    ] Waiting 3.25 seconds before fallback handling...
[2026-06-12 09:41:56,147.147 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 09:41:56,149.149 INFO    ] Checking for system updates...
[2026-06-12 09:41:56,170.170 INFO    ] 200
[2026-06-12 09:41:56,172.172 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:41:56,203.203 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 09:41:56,204.204 INFO    ] No update needed
[2026-06-12 09:41:56,206.206 INFO    ] Checking for camera pi updates...
[2026-06-12 09:41:56,226.226 INFO    ] 200
[2026-06-12 09:41:56,228.228 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:41:56,251.251 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 09:41:56,289.289 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 09:41:56,290.290 INFO    ] No camera update needed
[2026-06-12 09:41:56,292.292 INFO    ] Script finished. Safe exiting...
[2026-06-12 09:41:56,293.293 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 09:41:56,296.296 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 09:41:56,298.298 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 09:41:58,342.342 INFO    ] ================================================
[2026-06-12 09:41:58,358.358 INFO    ] Launching Daemon at Fri Jun 12 09:41:58 IST 2026
[2026-06-12 09:41:58,369.369 INFO    ] ================================================
[2026-06-12 09:41:58,703.703 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 09:41:58
[2026-06-12 09:41:59,020.020 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 09:41:59,154.154 INFO    ] Initializing speech engine...
[2026-06-12 09:41:59,158.158 INFO    ] 2026-06-12 09:41:59
[2026-06-12 09:41:59,388.388 INFO    ] 2026-06-12 09:41:59
[2026-06-12 09:41:59,419.419 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 09:41:59,616.616 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 09:41:59,621.621 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 09:41:59,763.763 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 09:41:59,821.821 INFO    ] time= 12/06/2026 09:41:59
[2026-06-12 09:41:59,860.860 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 09:41:59,872.872 INFO    ] Checking for existing commands in stream...
[2026-06-12 09:41:59,942.942 INFO    ] No existing commands found in stream
[2026-06-12 09:42:04,953.953 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 09:42:04,955.955 INFO    ] Waiting 1.85 seconds before fallback handling...
[2026-06-12 09:42:07,180.180 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 09:42:07,182.182 INFO    ] Checking for system updates...
[2026-06-12 09:42:07,204.204 INFO    ] 200
[2026-06-12 09:42:07,205.205 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:42:07,235.235 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 09:42:07,237.237 INFO    ] No update needed
[2026-06-12 09:42:07,238.238 INFO    ] Checking for camera pi updates...
[2026-06-12 09:42:07,259.259 INFO    ] 200
[2026-06-12 09:42:07,260.260 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:42:07,285.285 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 09:42:07,321.321 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 09:42:07,322.322 INFO    ] No camera update needed
[2026-06-12 09:42:07,323.323 INFO    ] Script finished. Safe exiting...
[2026-06-12 09:42:07,325.325 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 09:42:07,328.328 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 09:42:07,330.330 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 09:42:09,373.373 INFO    ] ================================================
[2026-06-12 09:42:09,388.388 INFO    ] Launching Daemon at Fri Jun 12 09:42:09 IST 2026
[2026-06-12 09:42:09,399.399 INFO    ] ================================================
[2026-06-12 09:42:09,764.764 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 09:42:09
[2026-06-12 09:42:10,081.081 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 09:42:10,225.225 INFO    ] Initializing speech engine...
[2026-06-12 09:42:10,230.230 INFO    ] 2026-06-12 09:42:10
[2026-06-12 09:42:10,434.434 INFO    ] 2026-06-12 09:42:10
[2026-06-12 09:42:10,464.464 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 09:42:10,650.650 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 09:42:10,653.653 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 09:42:10,784.784 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 09:42:10,845.845 INFO    ] time= 12/06/2026 09:42:10
[2026-06-12 09:42:10,875.875 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 09:42:10,885.885 INFO    ] Checking for existing commands in stream...
[2026-06-12 09:42:10,956.956 INFO    ] No existing commands found in stream
[2026-06-12 09:42:15,967.967 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 09:42:15,970.970 INFO    ] Waiting 1.10 seconds before fallback handling...
[2026-06-12 09:42:17,430.430 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 09:42:17,432.432 INFO    ] Checking for system updates...
[2026-06-12 09:42:17,452.452 INFO    ] 200
[2026-06-12 09:42:17,453.453 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:42:17,483.483 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 09:42:17,485.485 INFO    ] No update needed
[2026-06-12 09:42:17,486.486 INFO    ] Checking for camera pi updates...
[2026-06-12 09:42:17,505.505 INFO    ] 200
[2026-06-12 09:42:17,506.506 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:42:17,532.532 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 09:42:17,572.572 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 09:42:17,574.574 INFO    ] No camera update needed
[2026-06-12 09:42:17,575.575 INFO    ] Script finished. Safe exiting...
[2026-06-12 09:42:17,576.576 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 09:42:17,579.579 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 09:42:17,582.582 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 09:42:19,622.622 INFO    ] ================================================
[2026-06-12 09:42:19,639.639 INFO    ] Launching Daemon at Fri Jun 12 09:42:19 IST 2026
[2026-06-12 09:42:19,650.650 INFO    ] ================================================
[2026-06-12 09:42:20,032.032 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 09:42:20
[2026-06-12 09:42:20,369.369 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 09:42:20,520.520 INFO    ] Initializing speech engine...
[2026-06-12 09:42:20,526.526 INFO    ] 2026-06-12 09:42:20
[2026-06-12 09:42:20,733.733 INFO    ] 2026-06-12 09:42:20
[2026-06-12 09:42:20,763.763 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 09:42:20,946.946 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 09:42:20,956.956 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 09:42:21,085.085 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 09:42:21,149.149 INFO    ] time= 12/06/2026 09:42:21
[2026-06-12 09:42:21,176.176 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 09:42:21,182.182 INFO    ] Checking for existing commands in stream...
[2026-06-12 09:42:21,273.273 INFO    ] No existing commands found in stream
[2026-06-12 09:42:26,287.287 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 09:42:26,291.291 INFO    ] Waiting 0.53 seconds before fallback handling...
[2026-06-12 09:42:27,158.158 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 09:42:27,160.160 INFO    ] Checking for system updates...
[2026-06-12 09:42:27,181.181 INFO    ] 200
[2026-06-12 09:42:27,183.183 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:42:27,215.215 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 09:42:27,217.217 INFO    ] No update needed
[2026-06-12 09:42:27,218.218 INFO    ] Checking for camera pi updates...
[2026-06-12 09:42:27,240.240 INFO    ] 200
[2026-06-12 09:42:27,241.241 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:42:27,265.265 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 09:42:27,303.303 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 09:42:27,304.304 INFO    ] No camera update needed
[2026-06-12 09:42:27,306.306 INFO    ] Script finished. Safe exiting...
[2026-06-12 09:42:27,307.307 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 09:42:27,310.310 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 09:42:27,313.313 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 09:42:29,353.353 INFO    ] ================================================
[2026-06-12 09:42:29,369.369 INFO    ] Launching Daemon at Fri Jun 12 09:42:29 IST 2026
[2026-06-12 09:42:29,380.380 INFO    ] ================================================
[2026-06-12 09:42:29,716.716 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 09:42:29
[2026-06-12 09:42:30,034.034 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 09:42:30,167.167 INFO    ] Initializing speech engine...
[2026-06-12 09:42:30,174.174 INFO    ] 2026-06-12 09:42:30
[2026-06-12 09:42:30,386.386 INFO    ] 2026-06-12 09:42:30
[2026-06-12 09:42:30,414.414 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 09:42:30,596.596 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 09:42:30,606.606 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 09:42:30,728.728 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 09:42:30,789.789 INFO    ] time= 12/06/2026 09:42:30
[2026-06-12 09:42:30,818.818 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 09:42:30,828.828 INFO    ] Checking for existing commands in stream...
[2026-06-12 09:42:30,899.899 INFO    ] No existing commands found in stream
[2026-06-12 09:42:35,908.908 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 09:42:35,911.911 INFO    ] Waiting 3.84 seconds before fallback handling...
[2026-06-12 09:42:40,129.129 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 09:42:40,131.131 INFO    ] Checking for system updates...
[2026-06-12 09:42:40,153.153 INFO    ] 200
[2026-06-12 09:42:40,154.154 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:42:40,187.187 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 09:42:40,188.188 INFO    ] No update needed
[2026-06-12 09:42:40,189.189 INFO    ] Checking for camera pi updates...
[2026-06-12 09:42:40,221.221 INFO    ] 200
[2026-06-12 09:42:40,222.222 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:42:40,247.247 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 09:42:40,285.285 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 09:42:40,286.286 INFO    ] No camera update needed
[2026-06-12 09:42:40,288.288 INFO    ] Script finished. Safe exiting...
[2026-06-12 09:42:40,289.289 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 09:42:40,292.292 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 09:42:40,295.295 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 09:42:42,334.334 INFO    ] ================================================
[2026-06-12 09:42:42,349.349 INFO    ] Launching Daemon at Fri Jun 12 09:42:42 IST 2026
[2026-06-12 09:42:42,360.360 INFO    ] ================================================
[2026-06-12 09:42:42,709.709 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 09:42:42
[2026-06-12 09:42:43,044.044 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 09:42:43,196.196 INFO    ] Initializing speech engine...
[2026-06-12 09:42:43,202.202 INFO    ] 2026-06-12 09:42:43
[2026-06-12 09:42:43,405.405 INFO    ] 2026-06-12 09:42:43
[2026-06-12 09:42:43,433.433 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 09:42:43,566.566 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 09:42:43,619.619 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 09:42:43,754.754 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 09:42:43,816.816 INFO    ] time= 12/06/2026 09:42:43
[2026-06-12 09:42:43,848.848 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 09:42:43,850.850 INFO    ] Checking for existing commands in stream...
[2026-06-12 09:42:43,922.922 INFO    ] No existing commands found in stream
[2026-06-12 09:42:48,951.951 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 09:42:48,954.954 INFO    ] Waiting 0.01 seconds before fallback handling...
[2026-06-12 09:42:49,307.307 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 09:42:49,308.308 INFO    ] Checking for system updates...
[2026-06-12 09:42:49,329.329 INFO    ] 200
[2026-06-12 09:42:49,331.331 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:42:49,361.361 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 09:42:49,362.362 INFO    ] No update needed
[2026-06-12 09:42:49,363.363 INFO    ] Checking for camera pi updates...
[2026-06-12 09:42:49,382.382 INFO    ] 200
[2026-06-12 09:42:49,384.384 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:42:49,407.407 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 09:42:49,445.445 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 09:42:49,447.447 INFO    ] No camera update needed
[2026-06-12 09:42:49,448.448 INFO    ] Script finished. Safe exiting...
[2026-06-12 09:42:49,449.449 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 09:42:49,452.452 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 09:42:49,455.455 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 09:42:51,494.494 INFO    ] ================================================
[2026-06-12 09:42:51,510.510 INFO    ] Launching Daemon at Fri Jun 12 09:42:51 IST 2026
[2026-06-12 09:42:51,522.522 INFO    ] ================================================
[2026-06-12 09:42:51,862.862 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 09:42:51
[2026-06-12 09:42:52,175.175 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 09:42:52,304.304 INFO    ] Initializing speech engine...
[2026-06-12 09:42:52,307.307 INFO    ] 2026-06-12 09:42:52
[2026-06-12 09:42:52,523.523 INFO    ] 2026-06-12 09:42:52
[2026-06-12 09:42:52,552.552 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 09:42:52,735.735 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 09:42:52,744.744 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 09:42:52,871.871 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 09:42:52,922.922 INFO    ] time= 12/06/2026 09:42:52
[2026-06-12 09:42:52,956.956 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 09:42:52,966.966 INFO    ] Checking for existing commands in stream...
[2026-06-12 09:42:53,037.037 INFO    ] No existing commands found in stream
[2026-06-12 09:42:58,046.046 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 09:42:58,049.049 INFO    ] Waiting 0.06 seconds before fallback handling...
[2026-06-12 09:42:58,470.470 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 09:42:58,471.471 INFO    ] Checking for system updates...
[2026-06-12 09:42:58,492.492 INFO    ] 200
[2026-06-12 09:42:58,494.494 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:42:58,524.524 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 09:42:58,526.526 INFO    ] No update needed
[2026-06-12 09:42:58,527.527 INFO    ] Checking for camera pi updates...
[2026-06-12 09:42:58,547.547 INFO    ] 200
[2026-06-12 09:42:58,549.549 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:42:58,572.572 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 09:42:58,607.607 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 09:42:58,609.609 INFO    ] No camera update needed
[2026-06-12 09:42:58,611.611 INFO    ] Script finished. Safe exiting...
[2026-06-12 09:42:58,612.612 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 09:42:58,615.615 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 09:42:58,618.618 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 09:43:00,658.658 INFO    ] ================================================
[2026-06-12 09:43:00,673.673 INFO    ] Launching Daemon at Fri Jun 12 09:43:00 IST 2026
[2026-06-12 09:43:00,684.684 INFO    ] ================================================
[2026-06-12 09:43:01,046.046 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 09:43:01
[2026-06-12 09:43:01,358.358 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 09:43:01,494.494 INFO    ] Initializing speech engine...
[2026-06-12 09:43:01,504.504 INFO    ] 2026-06-12 09:43:01
[2026-06-12 09:43:01,708.708 INFO    ] 2026-06-12 09:43:01
[2026-06-12 09:43:01,736.736 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 09:43:01,923.923 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 09:43:01,947.947 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 09:43:02,088.088 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 09:43:02,091.091 INFO    ] time= 12/06/2026 09:43:02
[2026-06-12 09:43:02,094.094 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 09:43:02,101.101 INFO    ] Checking for existing commands in stream...
[2026-06-12 09:43:02,257.257 INFO    ] No existing commands found in stream
[2026-06-12 09:43:07,303.303 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 09:43:07,306.306 INFO    ] Waiting 2.29 seconds before fallback handling...
[2026-06-12 09:43:09,938.938 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 09:43:09,939.939 INFO    ] Checking for system updates...
[2026-06-12 09:43:09,961.961 INFO    ] 200
[2026-06-12 09:43:09,963.963 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:43:09,993.993 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 09:43:09,995.995 INFO    ] No update needed
[2026-06-12 09:43:09,996.996 INFO    ] Checking for camera pi updates...
[2026-06-12 09:43:10,017.017 INFO    ] 200
[2026-06-12 09:43:10,018.018 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:43:10,044.044 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 09:43:10,085.085 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 09:43:10,086.086 INFO    ] No camera update needed
[2026-06-12 09:43:10,088.088 INFO    ] Script finished. Safe exiting...
[2026-06-12 09:43:10,089.089 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 09:43:10,092.092 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 09:43:10,095.095 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 09:43:12,135.135 INFO    ] ================================================
[2026-06-12 09:43:12,150.150 INFO    ] Launching Daemon at Fri Jun 12 09:43:12 IST 2026
[2026-06-12 09:43:12,161.161 INFO    ] ================================================
[2026-06-12 09:43:12,518.518 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 09:43:12
[2026-06-12 09:43:12,829.829 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 09:43:12,965.965 INFO    ] Initializing speech engine...
[2026-06-12 09:43:12,975.975 INFO    ] 2026-06-12 09:43:12
[2026-06-12 09:43:13,179.179 INFO    ] 2026-06-12 09:43:13
[2026-06-12 09:43:13,207.207 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 09:43:13,390.390 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 09:43:13,393.393 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 09:43:13,526.526 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 09:43:13,592.592 INFO    ] time= 12/06/2026 09:43:13
[2026-06-12 09:43:13,618.618 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 09:43:13,625.625 INFO    ] Checking for existing commands in stream...
[2026-06-12 09:43:13,691.691 INFO    ] No existing commands found in stream
[2026-06-12 09:43:18,700.700 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 09:43:18,703.703 INFO    ] Waiting 0.94 seconds before fallback handling...
[2026-06-12 09:43:20,009.009 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 09:43:20,010.010 INFO    ] Checking for system updates...
[2026-06-12 09:43:20,031.031 INFO    ] 200
[2026-06-12 09:43:20,033.033 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:43:20,062.062 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 09:43:20,064.064 INFO    ] No update needed
[2026-06-12 09:43:20,065.065 INFO    ] Checking for camera pi updates...
[2026-06-12 09:43:20,086.086 INFO    ] 200
[2026-06-12 09:43:20,088.088 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:43:20,113.113 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 09:43:20,154.154 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 09:43:20,155.155 INFO    ] No camera update needed
[2026-06-12 09:43:20,156.156 INFO    ] Script finished. Safe exiting...
[2026-06-12 09:43:20,157.157 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 09:43:20,160.160 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 09:43:20,163.163 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 09:43:22,194.194 INFO    ] ================================================
[2026-06-12 09:43:22,209.209 INFO    ] Launching Daemon at Fri Jun 12 09:43:22 IST 2026
[2026-06-12 09:43:22,220.220 INFO    ] ================================================
[2026-06-12 09:43:22,571.571 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 09:43:22
[2026-06-12 09:43:22,906.906 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 09:43:23,045.045 INFO    ] Initializing speech engine...
[2026-06-12 09:43:23,052.052 INFO    ] 2026-06-12 09:43:23
[2026-06-12 09:43:23,262.262 INFO    ] 2026-06-12 09:43:23
[2026-06-12 09:43:23,291.291 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 09:43:23,477.477 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 09:43:23,481.481 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 09:43:23,616.616 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 09:43:23,672.672 INFO    ] time= 12/06/2026 09:43:23
[2026-06-12 09:43:23,711.711 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 09:43:23,717.717 INFO    ] Checking for existing commands in stream...
[2026-06-12 09:43:23,785.785 INFO    ] No existing commands found in stream
[2026-06-12 09:43:28,794.794 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 09:43:28,797.797 INFO    ] Waiting 1.64 seconds before fallback handling...
[2026-06-12 09:43:32,187.187 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 09:43:32,189.189 INFO    ] Checking for system updates...
[2026-06-12 09:43:32,213.213 INFO    ] 200
[2026-06-12 09:43:32,215.215 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:43:32,249.249 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 09:43:32,251.251 INFO    ] No update needed
[2026-06-12 09:43:32,253.253 INFO    ] Checking for camera pi updates...
[2026-06-12 09:43:32,275.275 INFO    ] 200
[2026-06-12 09:43:32,277.277 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:43:32,306.306 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 09:43:32,336.336 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 09:43:32,339.339 INFO    ] No camera update needed
[2026-06-12 09:43:32,343.343 INFO    ] Script finished. Safe exiting...
[2026-06-12 09:43:32,347.347 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 09:43:32,354.354 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 09:43:32,362.362 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 09:43:34,404.404 INFO    ] ================================================
[2026-06-12 09:43:34,419.419 INFO    ] Launching Daemon at Fri Jun 12 09:43:34 IST 2026
[2026-06-12 09:43:34,430.430 INFO    ] ================================================
[2026-06-12 09:43:34,770.770 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 09:43:34
[2026-06-12 09:43:35,089.089 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 09:43:35,220.220 INFO    ] Initializing speech engine...
[2026-06-12 09:43:35,224.224 INFO    ] 2026-06-12 09:43:35
[2026-06-12 09:43:35,440.440 INFO    ] 2026-06-12 09:43:35
[2026-06-12 09:43:35,469.469 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 09:43:35,653.653 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 09:43:35,662.662 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 09:43:35,793.793 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 09:43:35,859.859 INFO    ] time= 12/06/2026 09:43:35
[2026-06-12 09:43:35,883.883 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 09:43:35,890.890 INFO    ] Checking for existing commands in stream...
[2026-06-12 09:43:35,980.980 INFO    ] No existing commands found in stream
[2026-06-12 09:43:40,989.989 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 09:43:40,992.992 INFO    ] Waiting 2.00 seconds before fallback handling...
[2026-06-12 09:43:43,369.369 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 09:43:43,371.371 INFO    ] Checking for system updates...
[2026-06-12 09:43:43,392.392 INFO    ] 200
[2026-06-12 09:43:43,393.393 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:43:43,426.426 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 09:43:43,427.427 INFO    ] No update needed
[2026-06-12 09:43:43,428.428 INFO    ] Checking for camera pi updates...
[2026-06-12 09:43:43,447.447 INFO    ] 200
[2026-06-12 09:43:43,449.449 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:43:43,472.472 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 09:43:43,508.508 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 09:43:43,510.510 INFO    ] No camera update needed
[2026-06-12 09:43:43,511.511 INFO    ] Script finished. Safe exiting...
[2026-06-12 09:43:43,512.512 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 09:43:43,515.515 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 09:43:43,518.518 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 09:43:45,559.559 INFO    ] ================================================
[2026-06-12 09:43:45,575.575 INFO    ] Launching Daemon at Fri Jun 12 09:43:45 IST 2026
[2026-06-12 09:43:45,586.586 INFO    ] ================================================
[2026-06-12 09:43:45,972.972 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 09:43:45
[2026-06-12 09:43:46,310.310 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 09:43:46,451.451 INFO    ] Initializing speech engine...
[2026-06-12 09:43:46,464.464 INFO    ] 2026-06-12 09:43:46
[2026-06-12 09:43:46,677.677 INFO    ] 2026-06-12 09:43:46
[2026-06-12 09:43:46,708.708 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 09:43:46,896.896 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 09:43:46,906.906 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 09:43:47,032.032 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 09:43:47,094.094 INFO    ] time= 12/06/2026 09:43:47
[2026-06-12 09:43:47,133.133 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 09:43:47,140.140 INFO    ] Checking for existing commands in stream...
[2026-06-12 09:43:47,208.208 INFO    ] No existing commands found in stream
[2026-06-12 09:43:52,217.217 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 09:43:52,221.221 INFO    ] Waiting 0.99 seconds before fallback handling...
[2026-06-12 09:43:53,590.590 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 09:43:53,591.591 INFO    ] Checking for system updates...
[2026-06-12 09:43:53,614.614 INFO    ] 200
[2026-06-12 09:43:53,615.615 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:43:53,650.650 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 09:43:53,652.652 INFO    ] No update needed
[2026-06-12 09:43:53,653.653 INFO    ] Checking for camera pi updates...
[2026-06-12 09:43:53,674.674 INFO    ] 200
[2026-06-12 09:43:53,676.676 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:43:53,701.701 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 09:43:53,738.738 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 09:43:53,740.740 INFO    ] No camera update needed
[2026-06-12 09:43:53,741.741 INFO    ] Script finished. Safe exiting...
[2026-06-12 09:43:53,743.743 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 09:43:53,746.746 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 09:43:53,749.749 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 09:43:55,787.787 INFO    ] ================================================
[2026-06-12 09:43:55,803.803 INFO    ] Launching Daemon at Fri Jun 12 09:43:55 IST 2026
[2026-06-12 09:43:55,814.814 INFO    ] ================================================
[2026-06-12 09:43:56,161.161 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 09:43:56
[2026-06-12 09:43:56,498.498 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 09:43:56,648.648 INFO    ] Initializing speech engine...
[2026-06-12 09:43:56,653.653 INFO    ] 2026-06-12 09:43:56
[2026-06-12 09:43:56,861.861 INFO    ] 2026-06-12 09:43:56
[2026-06-12 09:43:56,891.891 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 09:43:57,078.078 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 09:43:57,082.082 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 09:43:57,227.227 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 09:43:57,297.297 INFO    ] time= 12/06/2026 09:43:57
[2026-06-12 09:43:57,320.320 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 09:43:57,357.357 INFO    ] Checking for existing commands in stream...
[2026-06-12 09:43:57,463.463 INFO    ] No existing commands found in stream
[2026-06-12 09:44:02,477.477 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 09:44:02,478.478 INFO    ] Waiting 3.85 seconds before fallback handling...
[2026-06-12 09:44:06,720.720 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 09:44:06,721.721 INFO    ] Checking for system updates...
[2026-06-12 09:44:06,742.742 INFO    ] 200
[2026-06-12 09:44:06,744.744 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:44:06,775.775 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 09:44:06,776.776 INFO    ] No update needed
[2026-06-12 09:44:06,778.778 INFO    ] Checking for camera pi updates...
[2026-06-12 09:44:06,799.799 INFO    ] 200
[2026-06-12 09:44:06,800.800 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:44:06,826.826 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 09:44:06,860.860 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 09:44:06,861.861 INFO    ] No camera update needed
[2026-06-12 09:44:06,863.863 INFO    ] Script finished. Safe exiting...
[2026-06-12 09:44:06,864.864 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 09:44:06,867.867 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 09:44:06,870.870 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 09:44:08,910.910 INFO    ] ================================================
[2026-06-12 09:44:08,925.925 INFO    ] Launching Daemon at Fri Jun 12 09:44:08 IST 2026
[2026-06-12 09:44:08,936.936 INFO    ] ================================================
[2026-06-12 09:44:09,304.304 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 09:44:09
[2026-06-12 09:44:09,643.643 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 09:44:09,795.795 INFO    ] Initializing speech engine...
[2026-06-12 09:44:09,801.801 INFO    ] 2026-06-12 09:44:09
[2026-06-12 09:44:10,012.012 INFO    ] 2026-06-12 09:44:09
[2026-06-12 09:44:10,041.041 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 09:44:10,228.228 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 09:44:10,240.240 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 09:44:10,384.384 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 09:44:10,445.445 INFO    ] time= 12/06/2026 09:44:10
[2026-06-12 09:44:10,462.462 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 09:44:10,468.468 INFO    ] Checking for existing commands in stream...
[2026-06-12 09:44:10,535.535 INFO    ] No existing commands found in stream
[2026-06-12 09:44:15,550.550 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 09:44:15,559.559 INFO    ] Waiting 3.33 seconds before fallback handling...
[2026-06-12 09:44:19,280.280 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 09:44:19,281.281 INFO    ] Checking for system updates...
[2026-06-12 09:44:19,304.304 INFO    ] 200
[2026-06-12 09:44:19,305.305 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:44:19,338.338 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 09:44:19,340.340 INFO    ] No update needed
[2026-06-12 09:44:19,341.341 INFO    ] Checking for camera pi updates...
[2026-06-12 09:44:19,361.361 INFO    ] 200
[2026-06-12 09:44:19,363.363 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:44:19,388.388 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 09:44:19,431.431 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 09:44:19,432.432 INFO    ] No camera update needed
[2026-06-12 09:44:19,434.434 INFO    ] Script finished. Safe exiting...
[2026-06-12 09:44:19,435.435 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 09:44:19,438.438 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 09:44:19,441.441 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 09:44:21,479.479 INFO    ] ================================================
[2026-06-12 09:44:21,494.494 INFO    ] Launching Daemon at Fri Jun 12 09:44:21 IST 2026
[2026-06-12 09:44:21,505.505 INFO    ] ================================================
[2026-06-12 09:44:21,835.835 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 09:44:21
[2026-06-12 09:44:22,147.147 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 09:44:22,291.291 INFO    ] Initializing speech engine...
[2026-06-12 09:44:22,296.296 INFO    ] 2026-06-12 09:44:22
[2026-06-12 09:44:22,500.500 INFO    ] 2026-06-12 09:44:22
[2026-06-12 09:44:22,530.530 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 09:44:22,717.717 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 09:44:22,725.725 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 09:44:22,850.850 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 09:44:22,910.910 INFO    ] time= 12/06/2026 09:44:22
[2026-06-12 09:44:22,946.946 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 09:44:22,951.951 INFO    ] Checking for existing commands in stream...
[2026-06-12 09:44:23,024.024 INFO    ] No existing commands found in stream
[2026-06-12 09:44:28,033.033 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 09:44:28,035.035 INFO    ] Waiting 2.17 seconds before fallback handling...
[2026-06-12 09:44:30,540.540 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 09:44:30,541.541 INFO    ] Checking for system updates...
[2026-06-12 09:44:30,562.562 INFO    ] 200
[2026-06-12 09:44:30,564.564 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:44:30,594.594 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 09:44:30,595.595 INFO    ] No update needed
[2026-06-12 09:44:30,597.597 INFO    ] Checking for camera pi updates...
[2026-06-12 09:44:30,618.618 INFO    ] 200
[2026-06-12 09:44:30,620.620 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:44:30,646.646 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 09:44:30,680.680 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 09:44:30,682.682 INFO    ] No camera update needed
[2026-06-12 09:44:30,683.683 INFO    ] Script finished. Safe exiting...
[2026-06-12 09:44:30,684.684 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 09:44:30,688.688 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 09:44:30,691.691 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 09:44:32,715.715 INFO    ] ================================================
[2026-06-12 09:44:32,724.724 INFO    ] Launching Daemon at Fri Jun 12 09:44:32 IST 2026
[2026-06-12 09:44:32,730.730 INFO    ] ================================================
[2026-06-12 09:44:33,109.109 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 09:44:33
[2026-06-12 09:44:33,449.449 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 09:44:33,600.600 INFO    ] Initializing speech engine...
[2026-06-12 09:44:33,605.605 INFO    ] 2026-06-12 09:44:33
[2026-06-12 09:44:33,813.813 INFO    ] 2026-06-12 09:44:33
[2026-06-12 09:44:33,844.844 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 09:44:34,029.029 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 09:44:34,039.039 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 09:44:34,174.174 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 09:44:34,238.238 INFO    ] time= 12/06/2026 09:44:34
[2026-06-12 09:44:34,266.266 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 09:44:34,269.269 INFO    ] Checking for existing commands in stream...
[2026-06-12 09:44:34,336.336 INFO    ] No existing commands found in stream
[2026-06-12 09:44:39,350.350 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 09:44:39,353.353 INFO    ] Waiting 0.80 seconds before fallback handling...
[2026-06-12 09:44:40,983.983 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 09:44:40,985.985 INFO    ] Checking for system updates...
[2026-06-12 09:44:41,006.006 INFO    ] 200
[2026-06-12 09:44:41,007.007 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:44:41,064.064 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 09:44:41,067.067 INFO    ] No update needed
[2026-06-12 09:44:41,069.069 INFO    ] Checking for camera pi updates...
[2026-06-12 09:44:41,103.103 INFO    ] 200
[2026-06-12 09:44:41,106.106 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:44:41,131.131 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 09:44:41,167.167 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 09:44:41,169.169 INFO    ] No camera update needed
[2026-06-12 09:44:41,170.170 INFO    ] Script finished. Safe exiting...
[2026-06-12 09:44:41,171.171 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 09:44:41,174.174 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 09:44:41,177.177 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 09:44:43,215.215 INFO    ] ================================================
[2026-06-12 09:44:43,231.231 INFO    ] Launching Daemon at Fri Jun 12 09:44:43 IST 2026
[2026-06-12 09:44:43,241.241 INFO    ] ================================================
[2026-06-12 09:44:43,594.594 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 09:44:43
[2026-06-12 09:44:43,935.935 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 09:44:44,085.085 INFO    ] Initializing speech engine...
[2026-06-12 09:44:44,091.091 INFO    ] 2026-06-12 09:44:44
[2026-06-12 09:44:44,300.300 INFO    ] 2026-06-12 09:44:44
[2026-06-12 09:44:44,329.329 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 09:44:44,503.503 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 09:44:44,517.517 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 09:44:44,660.660 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 09:44:44,722.722 INFO    ] time= 12/06/2026 09:44:44
[2026-06-12 09:44:44,746.746 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 09:44:44,753.753 INFO    ] Checking for existing commands in stream...
[2026-06-12 09:44:44,819.819 INFO    ] No existing commands found in stream
[2026-06-12 09:44:49,834.834 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 09:44:49,837.837 INFO    ] Waiting 0.12 seconds before fallback handling...
[2026-06-12 09:44:50,324.324 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 09:44:50,325.325 INFO    ] Checking for system updates...
[2026-06-12 09:44:50,348.348 INFO    ] 200
[2026-06-12 09:44:50,350.350 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:44:50,386.386 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 09:44:50,387.387 INFO    ] No update needed
[2026-06-12 09:44:50,388.388 INFO    ] Checking for camera pi updates...
[2026-06-12 09:44:50,411.411 INFO    ] 200
[2026-06-12 09:44:50,412.412 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:44:50,436.436 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 09:44:50,475.475 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 09:44:50,477.477 INFO    ] No camera update needed
[2026-06-12 09:44:50,478.478 INFO    ] Script finished. Safe exiting...
[2026-06-12 09:44:50,480.480 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 09:44:50,483.483 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 09:44:50,486.486 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 09:44:52,528.528 INFO    ] ================================================
[2026-06-12 09:44:52,544.544 INFO    ] Launching Daemon at Fri Jun 12 09:44:52 IST 2026
[2026-06-12 09:44:52,555.555 INFO    ] ================================================
[2026-06-12 09:44:52,880.880 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 09:44:52
[2026-06-12 09:44:53,194.194 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 09:44:53,337.337 INFO    ] Initializing speech engine...
[2026-06-12 09:44:53,341.341 INFO    ] 2026-06-12 09:44:53
[2026-06-12 09:44:53,543.543 INFO    ] 2026-06-12 09:44:53
[2026-06-12 09:44:53,572.572 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 09:44:53,756.756 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 09:44:53,765.765 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 09:44:53,894.894 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 09:44:53,960.960 INFO    ] time= 12/06/2026 09:44:53
[2026-06-12 09:44:53,984.984 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 09:44:53,990.990 INFO    ] Checking for existing commands in stream...
[2026-06-12 09:44:54,058.058 INFO    ] No existing commands found in stream
[2026-06-12 09:44:59,067.067 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 09:44:59,069.069 INFO    ] Waiting 1.92 seconds before fallback handling...
[2026-06-12 09:45:01,385.385 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 09:45:01,388.388 INFO    ] Checking for system updates...
[2026-06-12 09:45:01,426.426 INFO    ] 200
[2026-06-12 09:45:01,429.429 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:45:01,597.597 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 09:45:01,600.600 INFO    ] No update needed
[2026-06-12 09:45:01,603.603 INFO    ] Checking for camera pi updates...
[2026-06-12 09:45:01,722.722 INFO    ] 200
[2026-06-12 09:45:01,725.725 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:45:01,812.812 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 09:45:01,858.858 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 09:45:01,860.860 INFO    ] No camera update needed
[2026-06-12 09:45:01,862.862 INFO    ] Script finished. Safe exiting...
[2026-06-12 09:45:01,865.865 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 09:45:01,875.875 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 09:45:01,881.881 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 09:45:03,918.918 INFO    ] ================================================
[2026-06-12 09:45:03,933.933 INFO    ] Launching Daemon at Fri Jun 12 09:45:03 IST 2026
[2026-06-12 09:45:03,945.945 INFO    ] ================================================
[2026-06-12 09:45:04,306.306 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 09:45:04
[2026-06-12 09:45:04,617.617 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 09:45:04,757.757 INFO    ] Initializing speech engine...
[2026-06-12 09:45:04,765.765 INFO    ] 2026-06-12 09:45:04
[2026-06-12 09:45:04,982.982 INFO    ] 2026-06-12 09:45:04
[2026-06-12 09:45:05,013.013 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 09:45:05,144.144 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 09:45:05,211.211 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 09:45:05,351.351 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 09:45:05,402.402 INFO    ] time= 12/06/2026 09:45:05
[2026-06-12 09:45:05,440.440 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 09:45:05,457.457 INFO    ] Checking for existing commands in stream...
[2026-06-12 09:45:05,534.534 INFO    ] No existing commands found in stream
[2026-06-12 09:45:10,543.543 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 09:45:10,546.546 INFO    ] Waiting 1.86 seconds before fallback handling...
[2026-06-12 09:45:12,770.770 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 09:45:12,771.771 INFO    ] Checking for system updates...
[2026-06-12 09:45:12,792.792 INFO    ] 200
[2026-06-12 09:45:12,793.793 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:45:12,823.823 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 09:45:12,825.825 INFO    ] No update needed
[2026-06-12 09:45:12,826.826 INFO    ] Checking for camera pi updates...
[2026-06-12 09:45:12,846.846 INFO    ] 200
[2026-06-12 09:45:12,848.848 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:45:12,872.872 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 09:45:13,010.010 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 09:45:13,012.012 INFO    ] No camera update needed
[2026-06-12 09:45:13,013.013 INFO    ] Script finished. Safe exiting...
[2026-06-12 09:45:13,014.014 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 09:45:13,017.017 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 09:45:13,020.020 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 09:45:15,059.059 INFO    ] ================================================
[2026-06-12 09:45:15,075.075 INFO    ] Launching Daemon at Fri Jun 12 09:45:15 IST 2026
[2026-06-12 09:45:15,085.085 INFO    ] ================================================
[2026-06-12 09:45:15,417.417 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 09:45:15
[2026-06-12 09:45:15,733.733 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 09:45:15,877.877 INFO    ] Initializing speech engine...
[2026-06-12 09:45:15,882.882 INFO    ] 2026-06-12 09:45:15
[2026-06-12 09:45:16,086.086 INFO    ] 2026-06-12 09:45:16
[2026-06-12 09:45:16,114.114 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 09:45:16,296.296 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 09:45:16,300.300 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 09:45:16,429.429 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 09:45:16,485.485 INFO    ] time= 12/06/2026 09:45:16
[2026-06-12 09:45:16,524.524 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 09:45:16,529.529 INFO    ] Checking for existing commands in stream...
[2026-06-12 09:45:16,598.598 INFO    ] No existing commands found in stream
[2026-06-12 09:45:21,609.609 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 09:45:21,612.612 INFO    ] Waiting 3.55 seconds before fallback handling...
[2026-06-12 09:45:25,523.523 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 09:45:25,524.524 INFO    ] Checking for system updates...
[2026-06-12 09:45:25,545.545 INFO    ] 200
[2026-06-12 09:45:25,547.547 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:45:25,583.583 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 09:45:25,584.584 INFO    ] No update needed
[2026-06-12 09:45:25,585.585 INFO    ] Checking for camera pi updates...
[2026-06-12 09:45:25,605.605 INFO    ] 200
[2026-06-12 09:45:25,607.607 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:45:25,632.632 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 09:45:25,671.671 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 09:45:25,672.672 INFO    ] No camera update needed
[2026-06-12 09:45:25,674.674 INFO    ] Script finished. Safe exiting...
[2026-06-12 09:45:25,675.675 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 09:45:25,678.678 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 09:45:25,681.681 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 09:45:27,722.722 INFO    ] ================================================
[2026-06-12 09:45:27,737.737 INFO    ] Launching Daemon at Fri Jun 12 09:45:27 IST 2026
[2026-06-12 09:45:27,749.749 INFO    ] ================================================
[2026-06-12 09:45:28,104.104 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 09:45:28
[2026-06-12 09:45:28,418.418 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 09:45:28,560.560 INFO    ] Initializing speech engine...
[2026-06-12 09:45:28,565.565 INFO    ] 2026-06-12 09:45:28
[2026-06-12 09:45:28,767.767 INFO    ] 2026-06-12 09:45:28
[2026-06-12 09:45:28,795.795 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 09:45:28,916.916 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 09:45:28,979.979 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 09:45:29,112.112 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 09:45:29,170.170 INFO    ] time= 12/06/2026 09:45:29
[2026-06-12 09:45:29,203.203 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 09:45:29,208.208 INFO    ] Checking for existing commands in stream...
[2026-06-12 09:45:29,279.279 INFO    ] No existing commands found in stream
[2026-06-12 09:45:34,288.288 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 09:45:34,291.291 INFO    ] Waiting 2.49 seconds before fallback handling...
[2026-06-12 09:45:37,151.151 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 09:45:37,152.152 INFO    ] Checking for system updates...
[2026-06-12 09:45:37,173.173 INFO    ] 200
[2026-06-12 09:45:37,174.174 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:45:37,205.205 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 09:45:37,206.206 INFO    ] No update needed
[2026-06-12 09:45:37,207.207 INFO    ] Checking for camera pi updates...
[2026-06-12 09:45:37,234.234 INFO    ] 200
[2026-06-12 09:45:37,235.235 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:45:37,261.261 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 09:45:37,300.300 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 09:45:37,302.302 INFO    ] No camera update needed
[2026-06-12 09:45:37,303.303 INFO    ] Script finished. Safe exiting...
[2026-06-12 09:45:37,304.304 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 09:45:37,307.307 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 09:45:37,310.310 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 09:45:39,350.350 INFO    ] ================================================
[2026-06-12 09:45:39,366.366 INFO    ] Launching Daemon at Fri Jun 12 09:45:39 IST 2026
[2026-06-12 09:45:39,378.378 INFO    ] ================================================
[2026-06-12 09:45:39,726.726 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 09:45:39
[2026-06-12 09:45:40,064.064 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 09:45:40,215.215 INFO    ] Initializing speech engine...
[2026-06-12 09:45:40,221.221 INFO    ] 2026-06-12 09:45:40
[2026-06-12 09:45:40,428.428 INFO    ] 2026-06-12 09:45:40
[2026-06-12 09:45:40,459.459 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 09:45:40,643.643 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 09:45:40,647.647 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 09:45:40,789.789 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 09:45:40,852.852 INFO    ] time= 12/06/2026 09:45:40
[2026-06-12 09:45:40,876.876 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 09:45:40,882.882 INFO    ] Checking for existing commands in stream...
[2026-06-12 09:45:40,949.949 INFO    ] No existing commands found in stream
[2026-06-12 09:45:45,963.963 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 09:45:45,966.966 INFO    ] Waiting 0.09 seconds before fallback handling...
[2026-06-12 09:45:46,406.406 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 09:45:46,408.408 INFO    ] Checking for system updates...
[2026-06-12 09:45:46,429.429 INFO    ] 200
[2026-06-12 09:45:46,431.431 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:45:46,463.463 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 09:45:46,465.465 INFO    ] No update needed
[2026-06-12 09:45:46,466.466 INFO    ] Checking for camera pi updates...
[2026-06-12 09:45:46,488.488 INFO    ] 200
[2026-06-12 09:45:46,490.490 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:45:46,515.515 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 09:45:46,552.552 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 09:45:46,553.553 INFO    ] No camera update needed
[2026-06-12 09:45:46,555.555 INFO    ] Script finished. Safe exiting...
[2026-06-12 09:45:46,556.556 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 09:45:46,559.559 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 09:45:46,563.563 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 09:45:48,603.603 INFO    ] ================================================
[2026-06-12 09:45:48,619.619 INFO    ] Launching Daemon at Fri Jun 12 09:45:48 IST 2026
[2026-06-12 09:45:48,631.631 INFO    ] ================================================
[2026-06-12 09:45:49,010.010 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 09:45:49
[2026-06-12 09:45:49,344.344 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 09:45:49,496.496 INFO    ] Initializing speech engine...
[2026-06-12 09:45:49,501.501 INFO    ] 2026-06-12 09:45:49
[2026-06-12 09:45:49,708.708 INFO    ] 2026-06-12 09:45:49
[2026-06-12 09:45:49,738.738 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 09:45:49,921.921 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 09:45:49,931.931 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 09:45:50,077.077 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 09:45:50,129.129 INFO    ] time= 12/06/2026 09:45:50
[2026-06-12 09:45:50,152.152 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 09:45:50,159.159 INFO    ] Checking for existing commands in stream...
[2026-06-12 09:45:50,226.226 INFO    ] No existing commands found in stream
[2026-06-12 09:45:55,245.245 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 09:45:55,248.248 INFO    ] Waiting 1.79 seconds before fallback handling...
[2026-06-12 09:45:57,435.435 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 09:45:57,437.437 INFO    ] Checking for system updates...
[2026-06-12 09:45:57,458.458 INFO    ] 200
[2026-06-12 09:45:57,460.460 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:45:57,491.491 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 09:45:57,492.492 INFO    ] No update needed
[2026-06-12 09:45:57,494.494 INFO    ] Checking for camera pi updates...
[2026-06-12 09:45:57,514.514 INFO    ] 200
[2026-06-12 09:45:57,516.516 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:45:57,541.541 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 09:45:57,584.584 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 09:45:57,586.586 INFO    ] No camera update needed
[2026-06-12 09:45:57,587.587 INFO    ] Script finished. Safe exiting...
[2026-06-12 09:45:57,588.588 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 09:45:57,592.592 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 09:45:57,595.595 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 09:45:59,634.634 INFO    ] ================================================
[2026-06-12 09:45:59,653.653 INFO    ] Launching Daemon at Fri Jun 12 09:45:59 IST 2026
[2026-06-12 09:45:59,665.665 INFO    ] ================================================
[2026-06-12 09:45:59,995.995 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 09:45:59
[2026-06-12 09:46:00,306.306 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 09:46:00,443.443 INFO    ] Initializing speech engine...
[2026-06-12 09:46:00,451.451 INFO    ] 2026-06-12 09:46:00
[2026-06-12 09:46:00,658.658 INFO    ] 2026-06-12 09:46:00
[2026-06-12 09:46:00,686.686 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 09:46:00,818.818 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 09:46:00,871.871 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 09:46:01,008.008 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 09:46:01,072.072 INFO    ] time= 12/06/2026 09:46:01
[2026-06-12 09:46:01,099.099 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 09:46:01,105.105 INFO    ] Checking for existing commands in stream...
[2026-06-12 09:46:01,172.172 INFO    ] No existing commands found in stream
[2026-06-12 09:46:06,181.181 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 09:46:06,184.184 INFO    ] Waiting 2.65 seconds before fallback handling...
[2026-06-12 09:46:09,211.211 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 09:46:09,212.212 INFO    ] Checking for system updates...
[2026-06-12 09:46:09,233.233 INFO    ] 200
[2026-06-12 09:46:09,234.234 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:46:09,267.267 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 09:46:09,269.269 INFO    ] No update needed
[2026-06-12 09:46:09,270.270 INFO    ] Checking for camera pi updates...
[2026-06-12 09:46:09,290.290 INFO    ] 200
[2026-06-12 09:46:09,292.292 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:46:09,315.315 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 09:46:09,351.351 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 09:46:09,352.352 INFO    ] No camera update needed
[2026-06-12 09:46:09,353.353 INFO    ] Script finished. Safe exiting...
[2026-06-12 09:46:09,354.354 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 09:46:09,357.357 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 09:46:09,360.360 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 09:46:11,400.400 INFO    ] ================================================
[2026-06-12 09:46:11,417.417 INFO    ] Launching Daemon at Fri Jun 12 09:46:11 IST 2026
[2026-06-12 09:46:11,428.428 INFO    ] ================================================
[2026-06-12 09:46:11,793.793 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 09:46:11
[2026-06-12 09:46:12,131.131 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 09:46:12,282.282 INFO    ] Initializing speech engine...
[2026-06-12 09:46:12,288.288 INFO    ] 2026-06-12 09:46:12
[2026-06-12 09:46:12,498.498 INFO    ] 2026-06-12 09:46:12
[2026-06-12 09:46:12,526.526 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 09:46:12,708.708 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 09:46:12,718.718 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 09:46:12,847.847 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 09:46:12,914.914 INFO    ] time= 12/06/2026 09:46:12
[2026-06-12 09:46:12,938.938 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 09:46:12,944.944 INFO    ] Checking for existing commands in stream...
[2026-06-12 09:46:13,011.011 INFO    ] No existing commands found in stream
[2026-06-12 09:46:18,024.024 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 09:46:18,026.026 INFO    ] Waiting 2.83 seconds before fallback handling...
[2026-06-12 09:46:21,153.153 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 09:46:21,155.155 INFO    ] Checking for system updates...
[2026-06-12 09:46:21,180.180 INFO    ] 200
[2026-06-12 09:46:21,182.182 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:46:21,220.220 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 09:46:21,221.221 INFO    ] No update needed
[2026-06-12 09:46:21,222.222 INFO    ] Checking for camera pi updates...
[2026-06-12 09:46:21,242.242 INFO    ] 200
[2026-06-12 09:46:21,243.243 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:46:21,267.267 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 09:46:21,315.315 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 09:46:21,317.317 INFO    ] No camera update needed
[2026-06-12 09:46:21,318.318 INFO    ] Script finished. Safe exiting...
[2026-06-12 09:46:21,319.319 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 09:46:21,322.322 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 09:46:21,325.325 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 09:46:23,364.364 INFO    ] ================================================
[2026-06-12 09:46:23,380.380 INFO    ] Launching Daemon at Fri Jun 12 09:46:23 IST 2026
[2026-06-12 09:46:23,392.392 INFO    ] ================================================
[2026-06-12 09:46:23,758.758 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 09:46:23
[2026-06-12 09:46:24,069.069 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 09:46:24,212.212 INFO    ] Initializing speech engine...
[2026-06-12 09:46:24,217.217 INFO    ] 2026-06-12 09:46:24
[2026-06-12 09:46:24,419.419 INFO    ] 2026-06-12 09:46:24
[2026-06-12 09:46:24,448.448 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 09:46:24,632.632 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 09:46:24,641.641 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 09:46:24,769.769 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 09:46:24,834.834 INFO    ] time= 12/06/2026 09:46:24
[2026-06-12 09:46:24,861.861 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 09:46:24,862.862 INFO    ] Checking for existing commands in stream...
[2026-06-12 09:46:24,934.934 INFO    ] No existing commands found in stream
[2026-06-12 09:46:29,948.948 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 09:46:29,951.951 INFO    ] Waiting 0.08 seconds before fallback handling...
[2026-06-12 09:46:30,365.365 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 09:46:30,366.366 INFO    ] Checking for system updates...
[2026-06-12 09:46:30,387.387 INFO    ] 200
[2026-06-12 09:46:30,388.388 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:46:30,419.419 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 09:46:30,420.420 INFO    ] No update needed
[2026-06-12 09:46:30,422.422 INFO    ] Checking for camera pi updates...
[2026-06-12 09:46:30,441.441 INFO    ] 200
[2026-06-12 09:46:30,443.443 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:46:30,465.465 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 09:46:30,502.502 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 09:46:30,503.503 INFO    ] No camera update needed
[2026-06-12 09:46:30,505.505 INFO    ] Script finished. Safe exiting...
[2026-06-12 09:46:30,506.506 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 09:46:30,509.509 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 09:46:30,512.512 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 09:46:32,544.544 INFO    ] ================================================
[2026-06-12 09:46:32,555.555 INFO    ] Launching Daemon at Fri Jun 12 09:46:32 IST 2026
[2026-06-12 09:46:32,561.561 INFO    ] ================================================
[2026-06-12 09:46:32,963.963 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 09:46:32
[2026-06-12 09:46:33,302.302 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 09:46:33,454.454 INFO    ] Initializing speech engine...
[2026-06-12 09:46:33,460.460 INFO    ] 2026-06-12 09:46:33
[2026-06-12 09:46:33,667.667 INFO    ] 2026-06-12 09:46:33
[2026-06-12 09:46:33,696.696 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 09:46:33,879.879 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 09:46:33,889.889 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 09:46:34,019.019 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 09:46:34,078.078 INFO    ] time= 12/06/2026 09:46:34
[2026-06-12 09:46:34,110.110 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 09:46:34,117.117 INFO    ] Checking for existing commands in stream...
[2026-06-12 09:46:34,184.184 INFO    ] No existing commands found in stream
[2026-06-12 09:46:39,199.199 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 09:46:39,202.202 INFO    ] Waiting 2.11 seconds before fallback handling...
[2026-06-12 09:46:41,689.689 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 09:46:41,690.690 INFO    ] Checking for system updates...
[2026-06-12 09:46:41,713.713 INFO    ] 200
[2026-06-12 09:46:41,714.714 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:46:41,753.753 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 09:46:41,754.754 INFO    ] No update needed
[2026-06-12 09:46:41,755.755 INFO    ] Checking for camera pi updates...
[2026-06-12 09:46:41,778.778 INFO    ] 200
[2026-06-12 09:46:41,779.779 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:46:41,803.803 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 09:46:41,836.836 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 09:46:41,838.838 INFO    ] No camera update needed
[2026-06-12 09:46:41,839.839 INFO    ] Script finished. Safe exiting...
[2026-06-12 09:46:41,841.841 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 09:46:41,844.844 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 09:46:41,847.847 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 09:46:43,889.889 INFO    ] ================================================
[2026-06-12 09:46:43,905.905 INFO    ] Launching Daemon at Fri Jun 12 09:46:43 IST 2026
[2026-06-12 09:46:43,917.917 INFO    ] ================================================
[2026-06-12 09:46:44,242.242 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 09:46:44
[2026-06-12 09:46:44,553.553 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 09:46:44,685.685 INFO    ] Initializing speech engine...
[2026-06-12 09:46:44,693.693 INFO    ] 2026-06-12 09:46:44
[2026-06-12 09:46:44,907.907 INFO    ] 2026-06-12 09:46:44
[2026-06-12 09:46:44,939.939 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 09:46:45,126.126 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 09:46:45,135.135 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 09:46:45,263.263 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 09:46:45,319.319 INFO    ] time= 12/06/2026 09:46:45
[2026-06-12 09:46:45,336.336 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 09:46:45,337.337 INFO    ] Checking for existing commands in stream...
[2026-06-12 09:46:45,430.430 INFO    ] No existing commands found in stream
[2026-06-12 09:46:50,441.441 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 09:46:50,444.444 INFO    ] Waiting 1.24 seconds before fallback handling...
[2026-06-12 09:46:52,051.051 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 09:46:52,053.053 INFO    ] Checking for system updates...
[2026-06-12 09:46:52,074.074 INFO    ] 200
[2026-06-12 09:46:52,075.075 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:46:52,108.108 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 09:46:52,110.110 INFO    ] No update needed
[2026-06-12 09:46:52,111.111 INFO    ] Checking for camera pi updates...
[2026-06-12 09:46:52,135.135 INFO    ] 200
[2026-06-12 09:46:52,136.136 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:46:52,163.163 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 09:46:52,205.205 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 09:46:52,207.207 INFO    ] No camera update needed
[2026-06-12 09:46:52,208.208 INFO    ] Script finished. Safe exiting...
[2026-06-12 09:46:52,210.210 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 09:46:52,213.213 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 09:46:52,216.216 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 09:46:54,257.257 INFO    ] ================================================
[2026-06-12 09:46:54,273.273 INFO    ] Launching Daemon at Fri Jun 12 09:46:54 IST 2026
[2026-06-12 09:46:54,284.284 INFO    ] ================================================
[2026-06-12 09:46:54,632.632 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 09:46:54
[2026-06-12 09:46:54,973.973 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 09:46:55,125.125 INFO    ] Initializing speech engine...
[2026-06-12 09:46:55,130.130 INFO    ] 2026-06-12 09:46:55
[2026-06-12 09:46:55,340.340 INFO    ] 2026-06-12 09:46:55
[2026-06-12 09:46:55,369.369 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 09:46:55,555.555 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 09:46:55,564.564 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 09:46:55,693.693 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 09:46:55,759.759 INFO    ] time= 12/06/2026 09:46:55
[2026-06-12 09:46:55,788.788 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 09:46:55,794.794 INFO    ] Checking for existing commands in stream...
[2026-06-12 09:46:55,862.862 INFO    ] No existing commands found in stream
[2026-06-12 09:47:00,877.877 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 09:47:00,880.880 INFO    ] Waiting 3.12 seconds before fallback handling...
[2026-06-12 09:47:04,362.362 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 09:47:04,364.364 INFO    ] Checking for system updates...
[2026-06-12 09:47:04,385.385 INFO    ] 200
[2026-06-12 09:47:04,386.386 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:47:04,417.417 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 09:47:04,419.419 INFO    ] No update needed
[2026-06-12 09:47:04,421.421 INFO    ] Checking for camera pi updates...
[2026-06-12 09:47:04,440.440 INFO    ] 200
[2026-06-12 09:47:04,442.442 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:47:04,466.466 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 09:47:04,504.504 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 09:47:04,505.505 INFO    ] No camera update needed
[2026-06-12 09:47:04,507.507 INFO    ] Script finished. Safe exiting...
[2026-06-12 09:47:04,508.508 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 09:47:04,511.511 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 09:47:04,514.514 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 09:47:06,555.555 INFO    ] ================================================
[2026-06-12 09:47:06,571.571 INFO    ] Launching Daemon at Fri Jun 12 09:47:06 IST 2026
[2026-06-12 09:47:06,582.582 INFO    ] ================================================
[2026-06-12 09:47:06,918.918 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 09:47:06
[2026-06-12 09:47:07,228.228 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 09:47:07,361.361 INFO    ] Initializing speech engine...
[2026-06-12 09:47:07,370.370 INFO    ] 2026-06-12 09:47:07
[2026-06-12 09:47:07,592.592 INFO    ] 2026-06-12 09:47:07
[2026-06-12 09:47:07,623.623 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 09:47:07,791.791 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 09:47:07,823.823 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 09:47:07,961.961 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 09:47:08,022.022 INFO    ] time= 12/06/2026 09:47:07
[2026-06-12 09:47:08,057.057 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 09:47:08,062.062 INFO    ] Checking for existing commands in stream...
[2026-06-12 09:47:08,133.133 INFO    ] No existing commands found in stream
[2026-06-12 09:47:13,147.147 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 09:47:13,150.150 INFO    ] Waiting 1.75 seconds before fallback handling...
[2026-06-12 09:47:15,250.250 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 09:47:15,252.252 INFO    ] Checking for system updates...
[2026-06-12 09:47:15,274.274 INFO    ] 200
[2026-06-12 09:47:15,275.275 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:47:15,309.309 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 09:47:15,311.311 INFO    ] No update needed
[2026-06-12 09:47:15,312.312 INFO    ] Checking for camera pi updates...
[2026-06-12 09:47:15,332.332 INFO    ] 200
[2026-06-12 09:47:15,333.333 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:47:15,358.358 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 09:47:15,500.500 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 09:47:15,502.502 INFO    ] No camera update needed
[2026-06-12 09:47:15,503.503 INFO    ] Script finished. Safe exiting...
[2026-06-12 09:47:15,504.504 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 09:47:15,507.507 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 09:47:15,511.511 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 09:47:17,550.550 INFO    ] ================================================
[2026-06-12 09:47:17,566.566 INFO    ] Launching Daemon at Fri Jun 12 09:47:17 IST 2026
[2026-06-12 09:47:17,577.577 INFO    ] ================================================
[2026-06-12 09:47:17,944.944 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 09:47:17
[2026-06-12 09:47:18,256.256 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 09:47:18,387.387 INFO    ] Initializing speech engine...
[2026-06-12 09:47:18,391.391 INFO    ] 2026-06-12 09:47:18
[2026-06-12 09:47:18,594.594 INFO    ] 2026-06-12 09:47:18
[2026-06-12 09:47:18,629.629 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 09:47:18,786.786 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 09:47:18,839.839 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 09:47:18,994.994 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 09:47:19,052.052 INFO    ] time= 12/06/2026 09:47:19
[2026-06-12 09:47:19,086.086 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 09:47:19,103.103 INFO    ] Checking for existing commands in stream...
[2026-06-12 09:47:19,179.179 INFO    ] No existing commands found in stream
[2026-06-12 09:47:24,189.189 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 09:47:24,192.192 INFO    ] Waiting 1.88 seconds before fallback handling...
[2026-06-12 09:47:26,441.441 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 09:47:26,442.442 INFO    ] Checking for system updates...
[2026-06-12 09:47:26,463.463 INFO    ] 200
[2026-06-12 09:47:26,464.464 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:47:26,497.497 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 09:47:26,498.498 INFO    ] No update needed
[2026-06-12 09:47:26,500.500 INFO    ] Checking for camera pi updates...
[2026-06-12 09:47:26,520.520 INFO    ] 200
[2026-06-12 09:47:26,521.521 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:47:26,545.545 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 09:47:26,586.586 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 09:47:26,588.588 INFO    ] No camera update needed
[2026-06-12 09:47:26,589.589 INFO    ] Script finished. Safe exiting...
[2026-06-12 09:47:26,591.591 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 09:47:26,594.594 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 09:47:26,597.597 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 09:47:28,637.637 INFO    ] ================================================
[2026-06-12 09:47:28,654.654 INFO    ] Launching Daemon at Fri Jun 12 09:47:28 IST 2026
[2026-06-12 09:47:28,665.665 INFO    ] ================================================
[2026-06-12 09:47:29,000.000 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 09:47:28
[2026-06-12 09:47:29,311.311 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 09:47:29,443.443 INFO    ] Initializing speech engine...
[2026-06-12 09:47:29,446.446 INFO    ] 2026-06-12 09:47:29
[2026-06-12 09:47:29,656.656 INFO    ] 2026-06-12 09:47:29
[2026-06-12 09:47:29,685.685 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 09:47:29,843.843 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 09:47:29,886.886 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 09:47:30,053.053 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 09:47:30,105.105 INFO    ] time= 12/06/2026 09:47:30
[2026-06-12 09:47:30,138.138 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 09:47:30,161.161 INFO    ] Checking for existing commands in stream...
[2026-06-12 09:47:30,239.239 INFO    ] No existing commands found in stream
[2026-06-12 09:47:35,248.248 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 09:47:35,251.251 INFO    ] Waiting 1.17 seconds before fallback handling...
[2026-06-12 09:47:36,769.769 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 09:47:36,770.770 INFO    ] Checking for system updates...
[2026-06-12 09:47:36,793.793 INFO    ] 200
[2026-06-12 09:47:36,794.794 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:47:36,824.824 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 09:47:36,826.826 INFO    ] No update needed
[2026-06-12 09:47:36,827.827 INFO    ] Checking for camera pi updates...
[2026-06-12 09:47:36,846.846 INFO    ] 200
[2026-06-12 09:47:36,848.848 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:47:36,871.871 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 09:47:36,920.920 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 09:47:36,922.922 INFO    ] No camera update needed
[2026-06-12 09:47:36,923.923 INFO    ] Script finished. Safe exiting...
[2026-06-12 09:47:36,924.924 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 09:47:36,927.927 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 09:47:36,930.930 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 09:47:38,968.968 INFO    ] ================================================
[2026-06-12 09:47:38,984.984 INFO    ] Launching Daemon at Fri Jun 12 09:47:38 IST 2026
[2026-06-12 09:47:39,995.995 INFO    ] ================================================
[2026-06-12 09:47:39,353.353 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 09:47:39
[2026-06-12 09:47:39,691.691 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 09:47:39,841.841 INFO    ] Initializing speech engine...
[2026-06-12 09:47:39,846.846 INFO    ] 2026-06-12 09:47:39
[2026-06-12 09:47:40,053.053 INFO    ] 2026-06-12 09:47:40
[2026-06-12 09:47:40,082.082 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 09:47:40,265.265 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 09:47:40,268.268 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 09:47:40,397.397 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 09:47:40,458.458 INFO    ] time= 12/06/2026 09:47:40
[2026-06-12 09:47:40,495.495 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 09:47:40,501.501 INFO    ] Checking for existing commands in stream...
[2026-06-12 09:47:40,568.568 INFO    ] No existing commands found in stream
[2026-06-12 09:47:45,583.583 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 09:47:45,586.586 INFO    ] Waiting 0.28 seconds before fallback handling...
[2026-06-12 09:47:46,221.221 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 09:47:46,223.223 INFO    ] Checking for system updates...
[2026-06-12 09:47:46,244.244 INFO    ] 200
[2026-06-12 09:47:46,245.245 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:47:46,280.280 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 09:47:46,281.281 INFO    ] No update needed
[2026-06-12 09:47:46,282.282 INFO    ] Checking for camera pi updates...
[2026-06-12 09:47:46,302.302 INFO    ] 200
[2026-06-12 09:47:46,303.303 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:47:46,326.326 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 09:47:46,365.365 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 09:47:46,367.367 INFO    ] No camera update needed
[2026-06-12 09:47:46,368.368 INFO    ] Script finished. Safe exiting...
[2026-06-12 09:47:46,369.369 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 09:47:46,372.372 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 09:47:46,375.375 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 09:47:48,414.414 INFO    ] ================================================
[2026-06-12 09:47:48,430.430 INFO    ] Launching Daemon at Fri Jun 12 09:47:48 IST 2026
[2026-06-12 09:47:48,442.442 INFO    ] ================================================
[2026-06-12 09:47:48,775.775 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 09:47:48
[2026-06-12 09:47:49,089.089 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 09:47:49,224.224 INFO    ] Initializing speech engine...
[2026-06-12 09:47:49,229.229 INFO    ] 2026-06-12 09:47:49
[2026-06-12 09:47:49,458.458 INFO    ] 2026-06-12 09:47:49
[2026-06-12 09:47:49,489.489 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 09:47:49,688.688 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 09:47:49,691.691 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 09:47:49,831.831 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 09:47:49,883.883 INFO    ] time= 12/06/2026 09:47:49
[2026-06-12 09:47:49,917.917 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 09:47:49,940.940 INFO    ] Checking for existing commands in stream...
[2026-06-12 09:47:50,016.016 INFO    ] No existing commands found in stream
[2026-06-12 09:47:55,026.026 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 09:47:55,029.029 INFO    ] Waiting 1.01 seconds before fallback handling...
[2026-06-12 09:47:56,378.378 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 09:47:56,380.380 INFO    ] Checking for system updates...
[2026-06-12 09:47:56,401.401 INFO    ] 200
[2026-06-12 09:47:56,402.402 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:47:56,434.434 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 09:47:56,436.436 INFO    ] No update needed
[2026-06-12 09:47:56,437.437 INFO    ] Checking for camera pi updates...
[2026-06-12 09:47:56,458.458 INFO    ] 200
[2026-06-12 09:47:56,459.459 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:47:56,482.482 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 09:47:56,523.523 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 09:47:56,525.525 INFO    ] No camera update needed
[2026-06-12 09:47:56,526.526 INFO    ] Script finished. Safe exiting...
[2026-06-12 09:47:56,527.527 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 09:47:56,530.530 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 09:47:56,533.533 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 09:47:58,572.572 INFO    ] ================================================
[2026-06-12 09:47:58,588.588 INFO    ] Launching Daemon at Fri Jun 12 09:47:58 IST 2026
[2026-06-12 09:47:58,599.599 INFO    ] ================================================
[2026-06-12 09:47:58,953.953 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 09:47:58
[2026-06-12 09:47:59,291.291 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 09:47:59,443.443 INFO    ] Initializing speech engine...
[2026-06-12 09:47:59,448.448 INFO    ] 2026-06-12 09:47:59
[2026-06-12 09:47:59,657.657 INFO    ] 2026-06-12 09:47:59
[2026-06-12 09:47:59,686.686 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 09:47:59,870.870 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 09:47:59,879.879 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 09:48:00,026.026 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 09:48:00,079.079 INFO    ] time= 12/06/2026 09:48:00
[2026-06-12 09:48:00,101.101 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 09:48:00,107.107 INFO    ] Checking for existing commands in stream...
[2026-06-12 09:48:00,197.197 INFO    ] No existing commands found in stream
[2026-06-12 09:48:05,206.206 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 09:48:05,209.209 INFO    ] Waiting 2.07 seconds before fallback handling...
[2026-06-12 09:48:07,641.641 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 09:48:07,643.643 INFO    ] Checking for system updates...
[2026-06-12 09:48:07,665.665 INFO    ] 200
[2026-06-12 09:48:07,666.666 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:48:07,701.701 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 09:48:07,703.703 INFO    ] No update needed
[2026-06-12 09:48:07,704.704 INFO    ] Checking for camera pi updates...
[2026-06-12 09:48:07,727.727 INFO    ] 200
[2026-06-12 09:48:07,728.728 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:48:07,752.752 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 09:48:07,787.787 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 09:48:07,789.789 INFO    ] No camera update needed
[2026-06-12 09:48:07,791.791 INFO    ] Script finished. Safe exiting...
[2026-06-12 09:48:07,792.792 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 09:48:07,795.795 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 09:48:07,798.798 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 09:48:09,836.836 INFO    ] ================================================
[2026-06-12 09:48:09,852.852 INFO    ] Launching Daemon at Fri Jun 12 09:48:09 IST 2026
[2026-06-12 09:48:09,864.864 INFO    ] ================================================
[2026-06-12 09:48:10,244.244 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 09:48:10
[2026-06-12 09:48:10,585.585 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 09:48:10,740.740 INFO    ] Initializing speech engine...
[2026-06-12 09:48:10,746.746 INFO    ] 2026-06-12 09:48:10
[2026-06-12 09:48:10,957.957 INFO    ] 2026-06-12 09:48:10
[2026-06-12 09:48:10,986.986 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 09:48:11,172.172 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 09:48:11,176.176 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 09:48:11,320.320 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 09:48:11,384.384 INFO    ] time= 12/06/2026 09:48:11
[2026-06-12 09:48:11,408.408 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 09:48:11,415.415 INFO    ] Checking for existing commands in stream...
[2026-06-12 09:48:11,506.506 INFO    ] No existing commands found in stream
[2026-06-12 09:48:16,521.521 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 09:48:16,524.524 INFO    ] Waiting 3.71 seconds before fallback handling...
[2026-06-12 09:48:20,592.592 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 09:48:20,593.593 INFO    ] Checking for system updates...
[2026-06-12 09:48:20,614.614 INFO    ] 200
[2026-06-12 09:48:20,616.616 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:48:20,646.646 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 09:48:20,647.647 INFO    ] No update needed
[2026-06-12 09:48:20,649.649 INFO    ] Checking for camera pi updates...
[2026-06-12 09:48:20,669.669 INFO    ] 200
[2026-06-12 09:48:20,670.670 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:48:20,694.694 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 09:48:20,732.732 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 09:48:20,733.733 INFO    ] No camera update needed
[2026-06-12 09:48:20,734.734 INFO    ] Script finished. Safe exiting...
[2026-06-12 09:48:20,736.736 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 09:48:20,739.739 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 09:48:20,742.742 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 09:48:22,781.781 INFO    ] ================================================
[2026-06-12 09:48:22,797.797 INFO    ] Launching Daemon at Fri Jun 12 09:48:22 IST 2026
[2026-06-12 09:48:22,808.808 INFO    ] ================================================
[2026-06-12 09:48:23,164.164 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 09:48:23
[2026-06-12 09:48:23,475.475 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 09:48:23,612.612 INFO    ] Initializing speech engine...
[2026-06-12 09:48:23,622.622 INFO    ] 2026-06-12 09:48:23
[2026-06-12 09:48:23,825.825 INFO    ] 2026-06-12 09:48:23
[2026-06-12 09:48:23,853.853 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 09:48:24,010.010 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 09:48:24,039.039 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 09:48:24,170.170 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 09:48:24,227.227 INFO    ] time= 12/06/2026 09:48:24
[2026-06-12 09:48:24,261.261 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 09:48:24,270.270 INFO    ] Checking for existing commands in stream...
[2026-06-12 09:48:24,337.337 INFO    ] No existing commands found in stream
[2026-06-12 09:48:29,345.345 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 09:48:29,348.348 INFO    ] Waiting 3.43 seconds before fallback handling...
[2026-06-12 09:48:33,150.150 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 09:48:33,151.151 INFO    ] Checking for system updates...
[2026-06-12 09:48:33,171.171 INFO    ] 200
[2026-06-12 09:48:33,173.173 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:48:33,212.212 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 09:48:33,213.213 INFO    ] No update needed
[2026-06-12 09:48:33,214.214 INFO    ] Checking for camera pi updates...
[2026-06-12 09:48:33,241.241 INFO    ] 200
[2026-06-12 09:48:33,242.242 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:48:33,267.267 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 09:48:33,291.291 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 09:48:33,292.292 INFO    ] No camera update needed
[2026-06-12 09:48:33,294.294 INFO    ] Script finished. Safe exiting...
[2026-06-12 09:48:33,295.295 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 09:48:33,298.298 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 09:48:33,301.301 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 09:48:35,341.341 INFO    ] ================================================
[2026-06-12 09:48:35,357.357 INFO    ] Launching Daemon at Fri Jun 12 09:48:35 IST 2026
[2026-06-12 09:48:35,368.368 INFO    ] ================================================
[2026-06-12 09:48:35,743.743 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 09:48:35
[2026-06-12 09:48:36,062.062 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 09:48:36,205.205 INFO    ] Initializing speech engine...
[2026-06-12 09:48:36,210.210 INFO    ] 2026-06-12 09:48:36
[2026-06-12 09:48:36,413.413 INFO    ] 2026-06-12 09:48:36
[2026-06-12 09:48:36,442.442 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 09:48:36,564.564 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 09:48:36,626.626 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 09:48:36,767.767 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 09:48:36,837.837 INFO    ] time= 12/06/2026 09:48:36
[2026-06-12 09:48:36,860.860 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 09:48:36,867.867 INFO    ] Checking for existing commands in stream...
[2026-06-12 09:48:36,934.934 INFO    ] No existing commands found in stream
[2026-06-12 09:48:41,943.943 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 09:48:41,946.946 INFO    ] Waiting 0.41 seconds before fallback handling...
[2026-06-12 09:48:42,713.713 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 09:48:42,714.714 INFO    ] Checking for system updates...
[2026-06-12 09:48:42,736.736 INFO    ] 200
[2026-06-12 09:48:42,738.738 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:48:42,769.769 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 09:48:42,770.770 INFO    ] No update needed
[2026-06-12 09:48:42,772.772 INFO    ] Checking for camera pi updates...
[2026-06-12 09:48:42,792.792 INFO    ] 200
[2026-06-12 09:48:42,793.793 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:48:42,821.821 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 09:48:42,867.867 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 09:48:42,868.868 INFO    ] No camera update needed
[2026-06-12 09:48:42,870.870 INFO    ] Script finished. Safe exiting...
[2026-06-12 09:48:42,871.871 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 09:48:42,875.875 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 09:48:42,878.878 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 09:48:44,919.919 INFO    ] ================================================
[2026-06-12 09:48:44,934.934 INFO    ] Launching Daemon at Fri Jun 12 09:48:44 IST 2026
[2026-06-12 09:48:44,945.945 INFO    ] ================================================
[2026-06-12 09:48:45,304.304 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 09:48:45
[2026-06-12 09:48:45,622.622 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 09:48:45,753.753 INFO    ] Initializing speech engine...
[2026-06-12 09:48:45,761.761 INFO    ] 2026-06-12 09:48:45
[2026-06-12 09:48:45,971.971 INFO    ] 2026-06-12 09:48:45
[2026-06-12 09:48:46,001.001 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 09:48:46,183.183 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 09:48:46,193.193 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 09:48:46,319.319 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 09:48:46,381.381 INFO    ] time= 12/06/2026 09:48:46
[2026-06-12 09:48:46,413.413 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 09:48:46,420.420 INFO    ] Checking for existing commands in stream...
[2026-06-12 09:48:46,488.488 INFO    ] No existing commands found in stream
[2026-06-12 09:48:51,497.497 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 09:48:51,500.500 INFO    ] Waiting 0.71 seconds before fallback handling...
[2026-06-12 09:48:52,560.560 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 09:48:52,562.562 INFO    ] Checking for system updates...
[2026-06-12 09:48:52,582.582 INFO    ] 200
[2026-06-12 09:48:52,583.583 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:48:52,614.614 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 09:48:52,615.615 INFO    ] No update needed
[2026-06-12 09:48:52,617.617 INFO    ] Checking for camera pi updates...
[2026-06-12 09:48:52,636.636 INFO    ] 200
[2026-06-12 09:48:52,637.637 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:48:52,663.663 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 09:48:52,703.703 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 09:48:52,705.705 INFO    ] No camera update needed
[2026-06-12 09:48:52,706.706 INFO    ] Script finished. Safe exiting...
[2026-06-12 09:48:52,707.707 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 09:48:52,711.711 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 09:48:52,713.713 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 09:48:54,754.754 INFO    ] ================================================
[2026-06-12 09:48:54,771.771 INFO    ] Launching Daemon at Fri Jun 12 09:48:54 IST 2026
[2026-06-12 09:48:54,781.781 INFO    ] ================================================
[2026-06-12 09:48:55,126.126 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 09:48:55
[2026-06-12 09:48:55,438.438 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 09:48:55,580.580 INFO    ] Initializing speech engine...
[2026-06-12 09:48:55,585.585 INFO    ] 2026-06-12 09:48:55
[2026-06-12 09:48:55,788.788 INFO    ] 2026-06-12 09:48:55
[2026-06-12 09:48:55,817.817 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 09:48:56,000.000 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 09:48:56,010.010 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 09:48:56,149.149 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 09:48:56,205.205 INFO    ] time= 12/06/2026 09:48:56
[2026-06-12 09:48:56,229.229 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 09:48:56,235.235 INFO    ] Checking for existing commands in stream...
[2026-06-12 09:48:56,301.301 INFO    ] No existing commands found in stream
[2026-06-12 09:49:01,315.315 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 09:49:01,318.318 INFO    ] Waiting 1.00 seconds before fallback handling...
[2026-06-12 09:49:02,618.618 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 09:49:02,620.620 INFO    ] Checking for system updates...
[2026-06-12 09:49:02,642.642 INFO    ] 200
[2026-06-12 09:49:02,643.643 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:49:02,673.673 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 09:49:02,675.675 INFO    ] No update needed
[2026-06-12 09:49:02,676.676 INFO    ] Checking for camera pi updates...
[2026-06-12 09:49:02,695.695 INFO    ] 200
[2026-06-12 09:49:02,696.696 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:49:02,722.722 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 09:49:02,746.746 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 09:49:02,747.747 INFO    ] No camera update needed
[2026-06-12 09:49:02,749.749 INFO    ] Script finished. Safe exiting...
[2026-06-12 09:49:02,750.750 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 09:49:02,753.753 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 09:49:02,756.756 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 09:49:04,789.789 INFO    ] ================================================
[2026-06-12 09:49:04,804.804 INFO    ] Launching Daemon at Fri Jun 12 09:49:04 IST 2026
[2026-06-12 09:49:04,815.815 INFO    ] ================================================
[2026-06-12 09:49:05,172.172 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 09:49:05
[2026-06-12 09:49:05,513.513 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 09:49:05,690.690 INFO    ] Initializing speech engine...
[2026-06-12 09:49:05,695.695 INFO    ] 2026-06-12 09:49:05
[2026-06-12 09:49:05,905.905 INFO    ] 2026-06-12 09:49:05
[2026-06-12 09:49:05,935.935 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 09:49:06,120.120 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 09:49:06,130.130 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 09:49:06,270.270 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 09:49:06,328.328 INFO    ] time= 12/06/2026 09:49:06
[2026-06-12 09:49:06,351.351 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 09:49:06,358.358 INFO    ] Checking for existing commands in stream...
[2026-06-12 09:49:06,425.425 INFO    ] No existing commands found in stream
[2026-06-12 09:49:11,439.439 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 09:49:11,443.443 INFO    ] Waiting 3.28 seconds before fallback handling...
[2026-06-12 09:49:15,104.104 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 09:49:15,106.106 INFO    ] Checking for system updates...
[2026-06-12 09:49:15,127.127 INFO    ] 200
[2026-06-12 09:49:15,128.128 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:49:15,160.160 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 09:49:15,162.162 INFO    ] No update needed
[2026-06-12 09:49:15,163.163 INFO    ] Checking for camera pi updates...
[2026-06-12 09:49:15,184.184 INFO    ] 200
[2026-06-12 09:49:15,186.186 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:49:15,211.211 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 09:49:15,251.251 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 09:49:15,252.252 INFO    ] No camera update needed
[2026-06-12 09:49:15,253.253 INFO    ] Script finished. Safe exiting...
[2026-06-12 09:49:15,254.254 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 09:49:15,257.257 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 09:49:15,260.260 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 09:49:17,298.298 INFO    ] ================================================
[2026-06-12 09:49:17,314.314 INFO    ] Launching Daemon at Fri Jun 12 09:49:17 IST 2026
[2026-06-12 09:49:17,325.325 INFO    ] ================================================
[2026-06-12 09:49:17,685.685 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 09:49:17
[2026-06-12 09:49:18,026.026 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 09:49:18,172.172 INFO    ] Initializing speech engine...
[2026-06-12 09:49:18,183.183 INFO    ] 2026-06-12 09:49:18
[2026-06-12 09:49:18,391.391 INFO    ] 2026-06-12 09:49:18
[2026-06-12 09:49:18,420.420 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 09:49:18,605.605 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 09:49:18,615.615 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 09:49:18,743.743 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 09:49:18,810.810 INFO    ] time= 12/06/2026 09:49:18
[2026-06-12 09:49:18,834.834 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 09:49:18,841.841 INFO    ] Checking for existing commands in stream...
[2026-06-12 09:49:18,931.931 INFO    ] No existing commands found in stream
[2026-06-12 09:49:23,946.946 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 09:49:23,949.949 INFO    ] Waiting 3.72 seconds before fallback handling...
[2026-06-12 09:49:28,062.062 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 09:49:28,064.064 INFO    ] Checking for system updates...
[2026-06-12 09:49:28,085.085 INFO    ] 200
[2026-06-12 09:49:28,086.086 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:49:28,122.122 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 09:49:28,123.123 INFO    ] No update needed
[2026-06-12 09:49:28,124.124 INFO    ] Checking for camera pi updates...
[2026-06-12 09:49:28,145.145 INFO    ] 200
[2026-06-12 09:49:28,147.147 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:49:28,170.170 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 09:49:28,309.309 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 09:49:28,311.311 INFO    ] No camera update needed
[2026-06-12 09:49:28,312.312 INFO    ] Script finished. Safe exiting...
[2026-06-12 09:49:28,313.313 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 09:49:28,316.316 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 09:49:28,319.319 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 09:49:30,357.357 INFO    ] ================================================
[2026-06-12 09:49:30,372.372 INFO    ] Launching Daemon at Fri Jun 12 09:49:30 IST 2026
[2026-06-12 09:49:30,383.383 INFO    ] ================================================
[2026-06-12 09:49:30,748.748 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 09:49:30
[2026-06-12 09:49:31,061.061 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 09:49:31,194.194 INFO    ] Initializing speech engine...
[2026-06-12 09:49:31,198.198 INFO    ] 2026-06-12 09:49:31
[2026-06-12 09:49:31,392.392 INFO    ] 2026-06-12 09:49:31
[2026-06-12 09:49:31,437.437 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 09:49:31,555.555 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 09:49:31,568.568 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 09:49:31,692.692 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 09:49:31,702.702 INFO    ] time= 12/06/2026 09:49:31
[2026-06-12 09:49:31,708.708 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 09:49:31,726.726 INFO    ] Checking for existing commands in stream...
[2026-06-12 09:49:31,821.821 INFO    ] No existing commands found in stream
[2026-06-12 09:49:36,851.851 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 09:49:36,854.854 INFO    ] Waiting 3.22 seconds before fallback handling...
[2026-06-12 09:49:40,422.422 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 09:49:40,423.423 INFO    ] Checking for system updates...
[2026-06-12 09:49:40,444.444 INFO    ] 200
[2026-06-12 09:49:40,445.445 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:49:40,478.478 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 09:49:40,480.480 INFO    ] No update needed
[2026-06-12 09:49:40,481.481 INFO    ] Checking for camera pi updates...
[2026-06-12 09:49:40,501.501 INFO    ] 200
[2026-06-12 09:49:40,502.502 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:49:40,525.525 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 09:49:40,566.566 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 09:49:40,567.567 INFO    ] No camera update needed
[2026-06-12 09:49:40,569.569 INFO    ] Script finished. Safe exiting...
[2026-06-12 09:49:40,570.570 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 09:49:40,573.573 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 09:49:40,576.576 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 09:49:42,614.614 INFO    ] ================================================
[2026-06-12 09:49:42,630.630 INFO    ] Launching Daemon at Fri Jun 12 09:49:42 IST 2026
[2026-06-12 09:49:42,641.641 INFO    ] ================================================
[2026-06-12 09:49:42,989.989 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 09:49:42
[2026-06-12 09:49:43,334.334 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 09:49:43,490.490 INFO    ] Initializing speech engine...
[2026-06-12 09:49:43,495.495 INFO    ] 2026-06-12 09:49:43
[2026-06-12 09:49:43,704.704 INFO    ] 2026-06-12 09:49:43
[2026-06-12 09:49:43,733.733 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 09:49:43,918.918 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 09:49:43,929.929 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 09:49:44,057.057 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 09:49:44,117.117 INFO    ] time= 12/06/2026 09:49:44
[2026-06-12 09:49:44,149.149 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 09:49:44,156.156 INFO    ] Checking for existing commands in stream...
[2026-06-12 09:49:44,224.224 INFO    ] No existing commands found in stream
[2026-06-12 09:49:49,239.239 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 09:49:49,242.242 INFO    ] Waiting 0.83 seconds before fallback handling...
[2026-06-12 09:49:50,487.487 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 09:49:50,489.489 INFO    ] Checking for system updates...
[2026-06-12 09:49:50,510.510 INFO    ] 200
[2026-06-12 09:49:50,512.512 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:49:50,543.543 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 09:49:50,544.544 INFO    ] No update needed
[2026-06-12 09:49:50,545.545 INFO    ] Checking for camera pi updates...
[2026-06-12 09:49:50,567.567 INFO    ] 200
[2026-06-12 09:49:50,569.569 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:49:50,592.592 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 09:49:50,628.628 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 09:49:50,630.630 INFO    ] No camera update needed
[2026-06-12 09:49:50,631.631 INFO    ] Script finished. Safe exiting...
[2026-06-12 09:49:50,632.632 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 09:49:50,635.635 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 09:49:50,638.638 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 09:49:52,678.678 INFO    ] ================================================
[2026-06-12 09:49:52,693.693 INFO    ] Launching Daemon at Fri Jun 12 09:49:52 IST 2026
[2026-06-12 09:49:52,704.704 INFO    ] ================================================
[2026-06-12 09:49:53,035.035 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 09:49:53
[2026-06-12 09:49:53,346.346 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 09:49:53,489.489 INFO    ] Initializing speech engine...
[2026-06-12 09:49:53,495.495 INFO    ] 2026-06-12 09:49:53
[2026-06-12 09:49:53,708.708 INFO    ] 2026-06-12 09:49:53
[2026-06-12 09:49:53,738.738 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 09:49:53,872.872 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 09:49:53,921.921 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 09:49:54,084.084 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 09:49:54,107.107 INFO    ] time= 12/06/2026 09:49:54
[2026-06-12 09:49:54,165.165 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 09:49:54,195.195 INFO    ] Checking for existing commands in stream...
[2026-06-12 09:49:54,271.271 INFO    ] No existing commands found in stream
[2026-06-12 09:49:59,282.282 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 09:49:59,285.285 INFO    ] Waiting 3.66 seconds before fallback handling...
[2026-06-12 09:50:05,634.634 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 09:50:05,637.637 INFO    ] Checking for system updates...
[2026-06-12 09:50:05,673.673 INFO    ] 200
[2026-06-12 09:50:05,676.676 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:50:05,729.729 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 09:50:05,732.732 INFO    ] No update needed
[2026-06-12 09:50:05,734.734 INFO    ] Checking for camera pi updates...
[2026-06-12 09:50:05,769.769 INFO    ] 200
[2026-06-12 09:50:05,772.772 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:50:05,818.818 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 09:50:05,839.839 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 09:50:05,841.841 INFO    ] No camera update needed
[2026-06-12 09:50:05,842.842 INFO    ] Script finished. Safe exiting...
[2026-06-12 09:50:05,843.843 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 09:50:05,846.846 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 09:50:05,849.849 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 09:50:07,892.892 INFO    ] ================================================
[2026-06-12 09:50:07,908.908 INFO    ] Launching Daemon at Fri Jun 12 09:50:07 IST 2026
[2026-06-12 09:50:07,919.919 INFO    ] ================================================
[2026-06-12 09:50:08,283.283 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 09:50:08
[2026-06-12 09:50:08,596.596 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 09:50:08,729.729 INFO    ] Initializing speech engine...
[2026-06-12 09:50:08,733.733 INFO    ] 2026-06-12 09:50:08
[2026-06-12 09:50:08,952.952 INFO    ] 2026-06-12 09:50:08
[2026-06-12 09:50:08,982.982 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 09:50:09,166.166 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 09:50:09,169.169 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 09:50:09,304.304 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 09:50:09,361.361 INFO    ] time= 12/06/2026 09:50:09
[2026-06-12 09:50:09,396.396 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 09:50:09,401.401 INFO    ] Checking for existing commands in stream...
[2026-06-12 09:50:09,476.476 INFO    ] No existing commands found in stream
[2026-06-12 09:50:14,490.490 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 09:50:14,493.493 INFO    ] Waiting 1.91 seconds before fallback handling...
[2026-06-12 09:50:16,773.773 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 09:50:16,775.775 INFO    ] Checking for system updates...
[2026-06-12 09:50:16,795.795 INFO    ] 200
[2026-06-12 09:50:16,797.797 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:50:16,829.829 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 09:50:16,831.831 INFO    ] No update needed
[2026-06-12 09:50:16,832.832 INFO    ] Checking for camera pi updates...
[2026-06-12 09:50:16,852.852 INFO    ] 200
[2026-06-12 09:50:16,853.853 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:50:16,878.878 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 09:50:16,916.916 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 09:50:16,917.917 INFO    ] No camera update needed
[2026-06-12 09:50:16,919.919 INFO    ] Script finished. Safe exiting...
[2026-06-12 09:50:16,920.920 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 09:50:16,923.923 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 09:50:16,926.926 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 09:50:18,966.966 INFO    ] ================================================
[2026-06-12 09:50:18,982.982 INFO    ] Launching Daemon at Fri Jun 12 09:50:18 IST 2026
[2026-06-12 09:50:18,993.993 INFO    ] ================================================
[2026-06-12 09:50:19,328.328 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 09:50:19
[2026-06-12 09:50:19,640.640 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 09:50:19,770.770 INFO    ] Initializing speech engine...
[2026-06-12 09:50:19,774.774 INFO    ] 2026-06-12 09:50:19
[2026-06-12 09:50:19,995.995 INFO    ] 2026-06-12 09:50:19
[2026-06-12 09:50:20,024.024 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 09:50:20,209.209 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 09:50:20,213.213 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 09:50:20,361.361 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 09:50:20,425.425 INFO    ] time= 12/06/2026 09:50:20
[2026-06-12 09:50:20,460.460 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 09:50:20,467.467 INFO    ] Checking for existing commands in stream...
[2026-06-12 09:50:20,565.565 INFO    ] No existing commands found in stream
[2026-06-12 09:50:25,574.574 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 09:50:25,576.576 INFO    ] Waiting 0.24 seconds before fallback handling...
[2026-06-12 09:50:26,206.206 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 09:50:26,208.208 INFO    ] Checking for system updates...
[2026-06-12 09:50:26,228.228 INFO    ] 200
[2026-06-12 09:50:26,230.230 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:50:26,264.264 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 09:50:26,265.265 INFO    ] No update needed
[2026-06-12 09:50:26,267.267 INFO    ] Checking for camera pi updates...
[2026-06-12 09:50:26,286.286 INFO    ] 200
[2026-06-12 09:50:26,287.287 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:50:26,311.311 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 09:50:26,342.342 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 09:50:26,343.343 INFO    ] No camera update needed
[2026-06-12 09:50:26,345.345 INFO    ] Script finished. Safe exiting...
[2026-06-12 09:50:26,346.346 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 09:50:26,349.349 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 09:50:26,352.352 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 09:50:28,383.383 INFO    ] ================================================
[2026-06-12 09:50:28,392.392 INFO    ] Launching Daemon at Fri Jun 12 09:50:28 IST 2026
[2026-06-12 09:50:28,398.398 INFO    ] ================================================
[2026-06-12 09:50:28,746.746 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 09:50:28
[2026-06-12 09:50:29,064.064 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 09:50:29,194.194 INFO    ] Initializing speech engine...
[2026-06-12 09:50:29,202.202 INFO    ] 2026-06-12 09:50:29
[2026-06-12 09:50:29,414.414 INFO    ] 2026-06-12 09:50:29
[2026-06-12 09:50:29,442.442 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 09:50:29,570.570 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 09:50:29,629.629 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 09:50:29,767.767 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 09:50:29,835.835 INFO    ] time= 12/06/2026 09:50:29
[2026-06-12 09:50:29,859.859 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 09:50:29,865.865 INFO    ] Checking for existing commands in stream...
[2026-06-12 09:50:29,932.932 INFO    ] No existing commands found in stream
[2026-06-12 09:50:34,941.941 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 09:50:34,944.944 INFO    ] Waiting 3.76 seconds before fallback handling...
[2026-06-12 09:50:39,082.082 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 09:50:39,084.084 INFO    ] Checking for system updates...
[2026-06-12 09:50:39,104.104 INFO    ] 200
[2026-06-12 09:50:39,105.105 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:50:39,138.138 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 09:50:39,139.139 INFO    ] No update needed
[2026-06-12 09:50:39,140.140 INFO    ] Checking for camera pi updates...
[2026-06-12 09:50:39,160.160 INFO    ] 200
[2026-06-12 09:50:39,161.161 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:50:39,184.184 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 09:50:39,224.224 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 09:50:39,225.225 INFO    ] No camera update needed
[2026-06-12 09:50:39,227.227 INFO    ] Script finished. Safe exiting...
[2026-06-12 09:50:39,228.228 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 09:50:39,231.231 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 09:50:39,234.234 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 09:50:41,274.274 INFO    ] ================================================
[2026-06-12 09:50:41,290.290 INFO    ] Launching Daemon at Fri Jun 12 09:50:41 IST 2026
[2026-06-12 09:50:41,301.301 INFO    ] ================================================
[2026-06-12 09:50:41,626.626 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 09:50:41
[2026-06-12 09:50:41,950.950 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 09:50:42,105.105 INFO    ] Initializing speech engine...
[2026-06-12 09:50:42,109.109 INFO    ] 2026-06-12 09:50:42
[2026-06-12 09:50:42,317.317 INFO    ] 2026-06-12 09:50:42
[2026-06-12 09:50:42,347.347 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 09:50:42,532.532 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 09:50:42,536.536 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 09:50:42,679.679 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 09:50:42,742.742 INFO    ] time= 12/06/2026 09:50:42
[2026-06-12 09:50:42,766.766 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 09:50:42,773.773 INFO    ] Checking for existing commands in stream...
[2026-06-12 09:50:42,840.840 INFO    ] No existing commands found in stream
[2026-06-12 09:50:47,855.855 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 09:50:47,858.858 INFO    ] Waiting 2.56 seconds before fallback handling...
[2026-06-12 09:50:50,783.783 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 09:50:50,784.784 INFO    ] Checking for system updates...
[2026-06-12 09:50:50,805.805 INFO    ] 200
[2026-06-12 09:50:50,807.807 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:50:50,839.839 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 09:50:50,840.840 INFO    ] No update needed
[2026-06-12 09:50:50,842.842 INFO    ] Checking for camera pi updates...
[2026-06-12 09:50:50,861.861 INFO    ] 200
[2026-06-12 09:50:50,862.862 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:50:50,887.887 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 09:50:50,924.924 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 09:50:50,926.926 INFO    ] No camera update needed
[2026-06-12 09:50:50,927.927 INFO    ] Script finished. Safe exiting...
[2026-06-12 09:50:50,928.928 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 09:50:50,931.931 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 09:50:50,934.934 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 09:50:52,973.973 INFO    ] ================================================
[2026-06-12 09:50:52,988.988 INFO    ] Launching Daemon at Fri Jun 12 09:50:52 IST 2026
[2026-06-12 09:50:53,999.999 INFO    ] ================================================
[2026-06-12 09:50:53,359.359 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 09:50:53
[2026-06-12 09:50:53,699.699 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 09:50:53,851.851 INFO    ] Initializing speech engine...
[2026-06-12 09:50:53,857.857 INFO    ] 2026-06-12 09:50:53
[2026-06-12 09:50:54,066.066 INFO    ] 2026-06-12 09:50:54
[2026-06-12 09:50:54,095.095 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 09:50:54,278.278 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 09:50:54,287.287 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 09:50:54,437.437 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 09:50:54,484.484 INFO    ] time= 12/06/2026 09:50:54
[2026-06-12 09:50:54,506.506 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 09:50:54,513.513 INFO    ] Checking for existing commands in stream...
[2026-06-12 09:50:54,579.579 INFO    ] No existing commands found in stream
[2026-06-12 09:50:59,588.588 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 09:50:59,592.592 INFO    ] Waiting 1.30 seconds before fallback handling...
[2026-06-12 09:51:01,243.243 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 09:51:01,246.246 INFO    ] Checking for system updates...
[2026-06-12 09:51:01,289.289 INFO    ] 200
[2026-06-12 09:51:01,291.291 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:51:01,348.348 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 09:51:01,351.351 INFO    ] No update needed
[2026-06-12 09:51:01,355.355 INFO    ] Checking for camera pi updates...
[2026-06-12 09:51:01,387.387 INFO    ] 200
[2026-06-12 09:51:01,389.389 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:51:01,442.442 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 09:51:01,487.487 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 09:51:01,490.490 INFO    ] No camera update needed
[2026-06-12 09:51:01,493.493 INFO    ] Script finished. Safe exiting...
[2026-06-12 09:51:01,495.495 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 09:51:01,501.501 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 09:51:01,505.505 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 09:51:03,544.544 INFO    ] ================================================
[2026-06-12 09:51:03,561.561 INFO    ] Launching Daemon at Fri Jun 12 09:51:03 IST 2026
[2026-06-12 09:51:03,572.572 INFO    ] ================================================
[2026-06-12 09:51:03,915.915 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 09:51:03
[2026-06-12 09:51:04,232.232 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 09:51:04,371.371 INFO    ] Initializing speech engine...
[2026-06-12 09:51:04,382.382 INFO    ] 2026-06-12 09:51:04
[2026-06-12 09:51:04,584.584 INFO    ] 2026-06-12 09:51:04
[2026-06-12 09:51:04,613.613 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 09:51:04,796.796 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 09:51:04,799.799 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 09:51:04,935.935 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 09:51:05,002.002 INFO    ] time= 12/06/2026 09:51:04
[2026-06-12 09:51:05,025.025 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 09:51:05,032.032 INFO    ] Checking for existing commands in stream...
[2026-06-12 09:51:05,096.096 INFO    ] No existing commands found in stream
[2026-06-12 09:51:10,101.101 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 09:51:10,103.103 INFO    ] Waiting 2.43 seconds before fallback handling...
[2026-06-12 09:51:12,912.912 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 09:51:12,914.914 INFO    ] Checking for system updates...
[2026-06-12 09:51:12,935.935 INFO    ] 200
[2026-06-12 09:51:12,936.936 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:51:12,967.967 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 09:51:12,969.969 INFO    ] No update needed
[2026-06-12 09:51:12,970.970 INFO    ] Checking for camera pi updates...
[2026-06-12 09:51:12,990.990 INFO    ] 200
[2026-06-12 09:51:12,991.991 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:51:13,017.017 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 09:51:13,055.055 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 09:51:13,056.056 INFO    ] No camera update needed
[2026-06-12 09:51:13,058.058 INFO    ] Script finished. Safe exiting...
[2026-06-12 09:51:13,059.059 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 09:51:13,063.063 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 09:51:13,066.066 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 09:51:15,104.104 INFO    ] ================================================
[2026-06-12 09:51:15,120.120 INFO    ] Launching Daemon at Fri Jun 12 09:51:15 IST 2026
[2026-06-12 09:51:15,131.131 INFO    ] ================================================
[2026-06-12 09:51:15,483.483 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 09:51:15
[2026-06-12 09:51:15,824.824 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 09:51:15,953.953 INFO    ] Initializing speech engine...
[2026-06-12 09:51:15,958.958 INFO    ] 2026-06-12 09:51:15
[2026-06-12 09:51:16,175.175 INFO    ] 2026-06-12 09:51:16
[2026-06-12 09:51:16,202.202 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 09:51:16,385.385 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 09:51:16,388.388 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 09:51:16,544.544 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 09:51:16,598.598 INFO    ] time= 12/06/2026 09:51:16
[2026-06-12 09:51:16,614.614 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 09:51:16,620.620 INFO    ] Checking for existing commands in stream...
[2026-06-12 09:51:16,685.685 INFO    ] No existing commands found in stream
[2026-06-12 09:51:21,696.696 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 09:51:21,698.698 INFO    ] Waiting 0.04 seconds before fallback handling...
[2026-06-12 09:51:22,082.082 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 09:51:22,084.084 INFO    ] Checking for system updates...
[2026-06-12 09:51:22,105.105 INFO    ] 200
[2026-06-12 09:51:22,106.106 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:51:22,136.136 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 09:51:22,138.138 INFO    ] No update needed
[2026-06-12 09:51:22,139.139 INFO    ] Checking for camera pi updates...
[2026-06-12 09:51:22,160.160 INFO    ] 200
[2026-06-12 09:51:22,161.161 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:51:22,184.184 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 09:51:22,233.233 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 09:51:22,234.234 INFO    ] No camera update needed
[2026-06-12 09:51:22,235.235 INFO    ] Script finished. Safe exiting...
[2026-06-12 09:51:22,237.237 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 09:51:22,239.239 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 09:51:22,242.242 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 09:51:24,282.282 INFO    ] ================================================
[2026-06-12 09:51:24,297.297 INFO    ] Launching Daemon at Fri Jun 12 09:51:24 IST 2026
[2026-06-12 09:51:24,308.308 INFO    ] ================================================
[2026-06-12 09:51:24,639.639 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 09:51:24
[2026-06-12 09:51:24,950.950 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 09:51:25,080.080 INFO    ] Initializing speech engine...
[2026-06-12 09:51:25,088.088 INFO    ] 2026-06-12 09:51:25
[2026-06-12 09:51:25,298.298 INFO    ] 2026-06-12 09:51:25
[2026-06-12 09:51:25,327.327 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 09:51:25,509.509 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 09:51:25,513.513 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 09:51:25,648.648 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 09:51:25,707.707 INFO    ] time= 12/06/2026 09:51:25
[2026-06-12 09:51:25,738.738 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 09:51:25,740.740 INFO    ] Checking for existing commands in stream...
[2026-06-12 09:51:25,811.811 INFO    ] No existing commands found in stream
[2026-06-12 09:51:30,820.820 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 09:51:30,823.823 INFO    ] Waiting 1.52 seconds before fallback handling...
[2026-06-12 09:51:32,697.697 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 09:51:32,698.698 INFO    ] Checking for system updates...
[2026-06-12 09:51:32,720.720 INFO    ] 200
[2026-06-12 09:51:32,721.721 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:51:32,752.752 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 09:51:32,753.753 INFO    ] No update needed
[2026-06-12 09:51:32,755.755 INFO    ] Checking for camera pi updates...
[2026-06-12 09:51:32,775.775 INFO    ] 200
[2026-06-12 09:51:32,777.777 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:51:32,801.801 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 09:51:32,925.925 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 09:51:32,926.926 INFO    ] No camera update needed
[2026-06-12 09:51:32,928.928 INFO    ] Script finished. Safe exiting...
[2026-06-12 09:51:32,929.929 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 09:51:32,932.932 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 09:51:32,935.935 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 09:51:34,974.974 INFO    ] ================================================
[2026-06-12 09:51:34,989.989 INFO    ] Launching Daemon at Fri Jun 12 09:51:34 IST 2026
[2026-06-12 09:51:35,000.000 INFO    ] ================================================
[2026-06-12 09:51:35,348.348 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 09:51:35
[2026-06-12 09:51:35,687.687 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 09:51:35,834.834 INFO    ] Initializing speech engine...
[2026-06-12 09:51:35,843.843 INFO    ] 2026-06-12 09:51:35
[2026-06-12 09:51:36,036.036 INFO    ] 2026-06-12 09:51:36
[2026-06-12 09:51:36,067.067 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 09:51:36,225.225 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 09:51:36,278.278 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 09:51:36,416.416 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 09:51:36,418.418 INFO    ] time= 12/06/2026 09:51:36
[2026-06-12 09:51:36,420.420 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 09:51:36,483.483 INFO    ] Checking for existing commands in stream...
[2026-06-12 09:51:36,583.583 INFO    ] No existing commands found in stream
[2026-06-12 09:51:41,594.594 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 09:51:41,598.598 INFO    ] Waiting 3.07 seconds before fallback handling...
[2026-06-12 09:51:45,061.061 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 09:51:45,063.063 INFO    ] Checking for system updates...
[2026-06-12 09:51:45,084.084 INFO    ] 200
[2026-06-12 09:51:45,085.085 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:51:45,116.116 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 09:51:45,117.117 INFO    ] No update needed
[2026-06-12 09:51:45,119.119 INFO    ] Checking for camera pi updates...
[2026-06-12 09:51:45,138.138 INFO    ] 200
[2026-06-12 09:51:45,140.140 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:51:45,164.164 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 09:51:45,208.208 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 09:51:45,210.210 INFO    ] No camera update needed
[2026-06-12 09:51:45,212.212 INFO    ] Script finished. Safe exiting...
[2026-06-12 09:51:45,213.213 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 09:51:45,216.216 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 09:51:45,219.219 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 09:51:47,258.258 INFO    ] ================================================
[2026-06-12 09:51:47,273.273 INFO    ] Launching Daemon at Fri Jun 12 09:51:47 IST 2026
[2026-06-12 09:51:47,285.285 INFO    ] ================================================
[2026-06-12 09:51:47,616.616 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 09:51:47
[2026-06-12 09:51:47,932.932 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 09:51:48,064.064 INFO    ] Initializing speech engine...
[2026-06-12 09:51:48,072.072 INFO    ] 2026-06-12 09:51:48
[2026-06-12 09:51:48,282.282 INFO    ] 2026-06-12 09:51:48
[2026-06-12 09:51:48,312.312 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 09:51:48,494.494 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 09:51:48,505.505 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 09:51:48,629.629 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 09:51:48,695.695 INFO    ] time= 12/06/2026 09:51:48
[2026-06-12 09:51:48,721.721 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 09:51:48,728.728 INFO    ] Checking for existing commands in stream...
[2026-06-12 09:51:48,819.819 INFO    ] No existing commands found in stream
[2026-06-12 09:51:53,828.828 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 09:51:53,831.831 INFO    ] Waiting 1.95 seconds before fallback handling...
[2026-06-12 09:51:56,153.153 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 09:51:56,155.155 INFO    ] Checking for system updates...
[2026-06-12 09:51:56,177.177 INFO    ] 200
[2026-06-12 09:51:56,178.178 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:51:56,208.208 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 09:51:56,210.210 INFO    ] No update needed
[2026-06-12 09:51:56,211.211 INFO    ] Checking for camera pi updates...
[2026-06-12 09:51:56,231.231 INFO    ] 200
[2026-06-12 09:51:56,232.232 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:51:56,259.259 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 09:51:56,294.294 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 09:51:56,296.296 INFO    ] No camera update needed
[2026-06-12 09:51:56,297.297 INFO    ] Script finished. Safe exiting...
[2026-06-12 09:51:56,298.298 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 09:51:56,301.301 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 09:51:56,304.304 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 09:51:58,342.342 INFO    ] ================================================
[2026-06-12 09:51:58,358.358 INFO    ] Launching Daemon at Fri Jun 12 09:51:58 IST 2026
[2026-06-12 09:51:58,369.369 INFO    ] ================================================
[2026-06-12 09:51:58,716.716 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 09:51:58
[2026-06-12 09:51:59,033.033 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 09:51:59,169.169 INFO    ] Initializing speech engine...
[2026-06-12 09:51:59,181.181 INFO    ] 2026-06-12 09:51:59
[2026-06-12 09:51:59,389.389 INFO    ] 2026-06-12 09:51:59
[2026-06-12 09:51:59,418.418 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 09:51:59,601.601 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 09:51:59,610.610 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 09:51:59,736.736 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 09:51:59,798.798 INFO    ] time= 12/06/2026 09:51:59
[2026-06-12 09:51:59,830.830 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 09:51:59,832.832 INFO    ] Checking for existing commands in stream...
[2026-06-12 09:51:59,904.904 INFO    ] No existing commands found in stream
[2026-06-12 09:52:04,918.918 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 09:52:04,921.921 INFO    ] Waiting 1.44 seconds before fallback handling...
[2026-06-12 09:52:06,728.728 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 09:52:06,730.730 INFO    ] Checking for system updates...
[2026-06-12 09:52:06,752.752 INFO    ] 200
[2026-06-12 09:52:06,753.753 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:52:06,786.786 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 09:52:06,787.787 INFO    ] No update needed
[2026-06-12 09:52:06,788.788 INFO    ] Checking for camera pi updates...
[2026-06-12 09:52:06,809.809 INFO    ] 200
[2026-06-12 09:52:06,811.811 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:52:06,835.835 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 09:52:06,874.874 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 09:52:06,875.875 INFO    ] No camera update needed
[2026-06-12 09:52:06,877.877 INFO    ] Script finished. Safe exiting...
[2026-06-12 09:52:06,878.878 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 09:52:06,881.881 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 09:52:06,884.884 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 09:52:08,922.922 INFO    ] ================================================
[2026-06-12 09:52:08,937.937 INFO    ] Launching Daemon at Fri Jun 12 09:52:08 IST 2026
[2026-06-12 09:52:08,948.948 INFO    ] ================================================
[2026-06-12 09:52:09,305.305 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 09:52:09
[2026-06-12 09:52:09,615.615 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 09:52:09,747.747 INFO    ] Initializing speech engine...
[2026-06-12 09:52:09,760.760 INFO    ] 2026-06-12 09:52:09
[2026-06-12 09:52:09,966.966 INFO    ] 2026-06-12 09:52:09
[2026-06-12 09:52:09,995.995 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 09:52:10,181.181 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 09:52:10,184.184 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 09:52:10,373.373 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 09:52:10,411.411 INFO    ] time= 12/06/2026 09:52:10
[2026-06-12 09:52:10,413.413 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 09:52:10,420.420 INFO    ] Checking for existing commands in stream...
[2026-06-12 09:52:10,487.487 INFO    ] No existing commands found in stream
[2026-06-12 09:52:15,496.496 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 09:52:15,499.499 INFO    ] Waiting 3.22 seconds before fallback handling...
[2026-06-12 09:52:19,073.073 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 09:52:19,074.074 INFO    ] Checking for system updates...
[2026-06-12 09:52:19,095.095 INFO    ] 200
[2026-06-12 09:52:19,096.096 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:52:19,126.126 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 09:52:19,127.127 INFO    ] No update needed
[2026-06-12 09:52:19,128.128 INFO    ] Checking for camera pi updates...
[2026-06-12 09:52:19,150.150 INFO    ] 200
[2026-06-12 09:52:19,151.151 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:52:19,178.178 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 09:52:19,223.223 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 09:52:19,224.224 INFO    ] No camera update needed
[2026-06-12 09:52:19,225.225 INFO    ] Script finished. Safe exiting...
[2026-06-12 09:52:19,227.227 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 09:52:19,230.230 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 09:52:19,232.232 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 09:52:21,270.270 INFO    ] ================================================
[2026-06-12 09:52:21,286.286 INFO    ] Launching Daemon at Fri Jun 12 09:52:21 IST 2026
[2026-06-12 09:52:21,298.298 INFO    ] ================================================
[2026-06-12 09:52:21,632.632 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 09:52:21
[2026-06-12 09:52:21,955.955 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 09:52:22,095.095 INFO    ] Initializing speech engine...
[2026-06-12 09:52:22,103.103 INFO    ] 2026-06-12 09:52:22
[2026-06-12 09:52:22,324.324 INFO    ] 2026-06-12 09:52:22
[2026-06-12 09:52:22,354.354 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 09:52:22,550.550 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 09:52:22,554.554 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 09:52:22,701.701 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 09:52:22,770.770 INFO    ] time= 12/06/2026 09:52:22
[2026-06-12 09:52:22,797.797 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 09:52:22,799.799 INFO    ] Checking for existing commands in stream...
[2026-06-12 09:52:22,901.901 INFO    ] No existing commands found in stream
[2026-06-12 09:52:27,909.909 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 09:52:27,912.912 INFO    ] Waiting 0.46 seconds before fallback handling...
[2026-06-12 09:52:28,778.778 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 09:52:28,780.780 INFO    ] Checking for system updates...
[2026-06-12 09:52:28,803.803 INFO    ] 200
[2026-06-12 09:52:28,805.805 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:52:28,837.837 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 09:52:28,839.839 INFO    ] No update needed
[2026-06-12 09:52:28,840.840 INFO    ] Checking for camera pi updates...
[2026-06-12 09:52:28,862.862 INFO    ] 200
[2026-06-12 09:52:28,863.863 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:52:28,888.888 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 09:52:28,917.917 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 09:52:28,918.918 INFO    ] No camera update needed
[2026-06-12 09:52:28,920.920 INFO    ] Script finished. Safe exiting...
[2026-06-12 09:52:28,921.921 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 09:52:28,924.924 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 09:52:28,927.927 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 09:52:30,966.966 INFO    ] ================================================
[2026-06-12 09:52:30,981.981 INFO    ] Launching Daemon at Fri Jun 12 09:52:30 IST 2026
[2026-06-12 09:52:30,993.993 INFO    ] ================================================
[2026-06-12 09:52:31,369.369 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 09:52:31
[2026-06-12 09:52:31,712.712 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 09:52:31,872.872 INFO    ] Initializing speech engine...
[2026-06-12 09:52:31,888.888 INFO    ] 2026-06-12 09:52:31
[2026-06-12 09:52:32,083.083 INFO    ] 2026-06-12 09:52:32
[2026-06-12 09:52:32,136.136 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 09:52:32,241.241 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 09:52:32,244.244 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 09:52:32,372.372 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 09:52:32,382.382 INFO    ] time= 12/06/2026 09:52:32
[2026-06-12 09:52:32,388.388 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 09:52:32,402.402 INFO    ] Checking for existing commands in stream...
[2026-06-12 09:52:32,480.480 INFO    ] No existing commands found in stream
[2026-06-12 09:52:37,515.515 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 09:52:37,517.517 INFO    ] Waiting 2.63 seconds before fallback handling...
[2026-06-12 09:52:40,549.549 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 09:52:40,551.551 INFO    ] Checking for system updates...
[2026-06-12 09:52:40,572.572 INFO    ] 200
[2026-06-12 09:52:40,574.574 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:52:40,606.606 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 09:52:40,607.607 INFO    ] No update needed
[2026-06-12 09:52:40,609.609 INFO    ] Checking for camera pi updates...
[2026-06-12 09:52:40,629.629 INFO    ] 200
[2026-06-12 09:52:40,631.631 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:52:40,655.655 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 09:52:40,696.696 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 09:52:40,698.698 INFO    ] No camera update needed
[2026-06-12 09:52:40,699.699 INFO    ] Script finished. Safe exiting...
[2026-06-12 09:52:40,700.700 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 09:52:40,703.703 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 09:52:40,706.706 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 09:52:42,745.745 INFO    ] ================================================
[2026-06-12 09:52:42,761.761 INFO    ] Launching Daemon at Fri Jun 12 09:52:42 IST 2026
[2026-06-12 09:52:42,772.772 INFO    ] ================================================
[2026-06-12 09:52:43,141.141 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 09:52:43
[2026-06-12 09:52:43,478.478 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 09:52:43,627.627 INFO    ] Initializing speech engine...
[2026-06-12 09:52:43,632.632 INFO    ] 2026-06-12 09:52:43
[2026-06-12 09:52:43,840.840 INFO    ] 2026-06-12 09:52:43
[2026-06-12 09:52:43,868.868 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 09:52:44,052.052 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 09:52:44,062.062 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 09:52:44,198.198 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 09:52:44,274.274 INFO    ] time= 12/06/2026 09:52:44
[2026-06-12 09:52:44,288.288 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 09:52:44,290.290 INFO    ] Checking for existing commands in stream...
[2026-06-12 09:52:44,357.357 INFO    ] No existing commands found in stream
[2026-06-12 09:52:49,372.372 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 09:52:49,375.375 INFO    ] Waiting 2.80 seconds before fallback handling...
[2026-06-12 09:52:52,545.545 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 09:52:52,547.547 INFO    ] Checking for system updates...
[2026-06-12 09:52:52,568.568 INFO    ] 200
[2026-06-12 09:52:52,569.569 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:52:52,599.599 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 09:52:52,601.601 INFO    ] No update needed
[2026-06-12 09:52:52,602.602 INFO    ] Checking for camera pi updates...
[2026-06-12 09:52:52,623.623 INFO    ] 200
[2026-06-12 09:52:52,624.624 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:52:52,648.648 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 09:52:52,675.675 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 09:52:52,676.676 INFO    ] No camera update needed
[2026-06-12 09:52:52,678.678 INFO    ] Script finished. Safe exiting...
[2026-06-12 09:52:52,679.679 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 09:52:52,682.682 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 09:52:52,685.685 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 09:52:54,722.722 INFO    ] ================================================
[2026-06-12 09:52:54,738.738 INFO    ] Launching Daemon at Fri Jun 12 09:52:54 IST 2026
[2026-06-12 09:52:54,749.749 INFO    ] ================================================
[2026-06-12 09:52:55,098.098 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 09:52:55
[2026-06-12 09:52:55,415.415 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 09:52:55,559.559 INFO    ] Initializing speech engine...
[2026-06-12 09:52:55,564.564 INFO    ] 2026-06-12 09:52:55
[2026-06-12 09:52:55,767.767 INFO    ] 2026-06-12 09:52:55
[2026-06-12 09:52:55,795.795 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 09:52:55,978.978 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 09:52:55,988.988 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 09:52:56,117.117 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 09:52:56,171.171 INFO    ] time= 12/06/2026 09:52:56
[2026-06-12 09:52:56,205.205 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 09:52:56,210.210 INFO    ] Checking for existing commands in stream...
[2026-06-12 09:52:56,305.305 INFO    ] No existing commands found in stream
[2026-06-12 09:53:01,319.319 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 09:53:01,322.322 INFO    ] Waiting 2.56 seconds before fallback handling...
[2026-06-12 09:53:04,237.237 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 09:53:04,239.239 INFO    ] Checking for system updates...
[2026-06-12 09:53:04,260.260 INFO    ] 200
[2026-06-12 09:53:04,262.262 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:53:04,292.292 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 09:53:04,293.293 INFO    ] No update needed
[2026-06-12 09:53:04,294.294 INFO    ] Checking for camera pi updates...
[2026-06-12 09:53:04,314.314 INFO    ] 200
[2026-06-12 09:53:04,315.315 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:53:04,354.354 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 09:53:04,376.376 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 09:53:04,378.378 INFO    ] No camera update needed
[2026-06-12 09:53:04,379.379 INFO    ] Script finished. Safe exiting...
[2026-06-12 09:53:04,380.380 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 09:53:04,383.383 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 09:53:04,386.386 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 09:53:06,426.426 INFO    ] ================================================
[2026-06-12 09:53:06,441.441 INFO    ] Launching Daemon at Fri Jun 12 09:53:06 IST 2026
[2026-06-12 09:53:06,453.453 INFO    ] ================================================
[2026-06-12 09:53:06,833.833 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 09:53:06
[2026-06-12 09:53:07,146.146 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 09:53:07,276.276 INFO    ] Initializing speech engine...
[2026-06-12 09:53:07,280.280 INFO    ] 2026-06-12 09:53:07
[2026-06-12 09:53:07,503.503 INFO    ] 2026-06-12 09:53:07
[2026-06-12 09:53:07,533.533 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 09:53:07,712.712 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 09:53:07,736.736 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 09:53:07,881.881 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 09:53:07,933.933 INFO    ] time= 12/06/2026 09:53:07
[2026-06-12 09:53:07,979.979 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 09:53:07,985.985 INFO    ] Checking for existing commands in stream...
[2026-06-12 09:53:08,060.060 INFO    ] No existing commands found in stream
[2026-06-12 09:53:13,071.071 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 09:53:13,074.074 INFO    ] Waiting 2.98 seconds before fallback handling...
[2026-06-12 09:53:16,405.405 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 09:53:16,406.406 INFO    ] Checking for system updates...
[2026-06-12 09:53:16,428.428 INFO    ] 200
[2026-06-12 09:53:16,429.429 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:53:16,462.462 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 09:53:16,463.463 INFO    ] No update needed
[2026-06-12 09:53:16,464.464 INFO    ] Checking for camera pi updates...
[2026-06-12 09:53:16,485.485 INFO    ] 200
[2026-06-12 09:53:16,486.486 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:53:16,509.509 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 09:53:16,536.536 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 09:53:16,538.538 INFO    ] No camera update needed
[2026-06-12 09:53:16,539.539 INFO    ] Script finished. Safe exiting...
[2026-06-12 09:53:16,540.540 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 09:53:16,543.543 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 09:53:16,546.546 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 09:53:18,584.584 INFO    ] ================================================
[2026-06-12 09:53:18,600.600 INFO    ] Launching Daemon at Fri Jun 12 09:53:18 IST 2026
[2026-06-12 09:53:18,611.611 INFO    ] ================================================
[2026-06-12 09:53:18,996.996 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 09:53:18
[2026-06-12 09:53:19,334.334 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 09:53:19,487.487 INFO    ] Initializing speech engine...
[2026-06-12 09:53:19,492.492 INFO    ] 2026-06-12 09:53:19
[2026-06-12 09:53:19,697.697 INFO    ] 2026-06-12 09:53:19
[2026-06-12 09:53:19,726.726 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 09:53:19,910.910 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 09:53:19,920.920 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 09:53:20,043.043 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 09:53:20,110.110 INFO    ] time= 12/06/2026 09:53:20
[2026-06-12 09:53:20,143.143 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 09:53:20,149.149 INFO    ] Checking for existing commands in stream...
[2026-06-12 09:53:20,240.240 INFO    ] No existing commands found in stream
[2026-06-12 09:53:25,254.254 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 09:53:25,257.257 INFO    ] Waiting 3.53 seconds before fallback handling...
[2026-06-12 09:53:29,146.146 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 09:53:29,147.147 INFO    ] Checking for system updates...
[2026-06-12 09:53:29,170.170 INFO    ] 200
[2026-06-12 09:53:29,171.171 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:53:29,204.204 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 09:53:29,206.206 INFO    ] No update needed
[2026-06-12 09:53:29,208.208 INFO    ] Checking for camera pi updates...
[2026-06-12 09:53:29,232.232 INFO    ] 200
[2026-06-12 09:53:29,234.234 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:53:29,263.263 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 09:53:29,988.988 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 09:53:29,990.990 INFO    ] No camera update needed
[2026-06-12 09:53:29,992.992 INFO    ] Script finished. Safe exiting...
[2026-06-12 09:53:29,994.994 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 09:53:29,997.997 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 09:53:30,001.001 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 09:53:32,029.029 INFO    ] ================================================
[2026-06-12 09:53:32,044.044 INFO    ] Launching Daemon at Fri Jun 12 09:53:32 IST 2026
[2026-06-12 09:53:32,055.055 INFO    ] ================================================
[2026-06-12 09:53:32,425.425 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 09:53:32
[2026-06-12 09:53:32,753.753 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 09:53:32,894.894 INFO    ] Initializing speech engine...
[2026-06-12 09:53:32,903.903 INFO    ] 2026-06-12 09:53:32
[2026-06-12 09:53:33,094.094 INFO    ] 2026-06-12 09:53:33
[2026-06-12 09:53:33,156.156 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 09:53:33,304.304 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 09:53:33,368.368 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 09:53:33,503.503 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 09:53:33,564.564 INFO    ] time= 12/06/2026 09:53:33
[2026-06-12 09:53:33,597.597 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 09:53:33,603.603 INFO    ] Checking for existing commands in stream...
[2026-06-12 09:53:33,694.694 INFO    ] No existing commands found in stream
[2026-06-12 09:53:38,703.703 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 09:53:38,706.706 INFO    ] Waiting 3.49 seconds before fallback handling...
[2026-06-12 09:53:42,567.567 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 09:53:42,569.569 INFO    ] Checking for system updates...
[2026-06-12 09:53:42,591.591 INFO    ] 200
[2026-06-12 09:53:42,592.592 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:53:42,622.622 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 09:53:42,623.623 INFO    ] No update needed
[2026-06-12 09:53:42,625.625 INFO    ] Checking for camera pi updates...
[2026-06-12 09:53:42,644.644 INFO    ] 200
[2026-06-12 09:53:42,645.645 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:53:42,668.668 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 09:53:42,813.813 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 09:53:42,815.815 INFO    ] No camera update needed
[2026-06-12 09:53:42,816.816 INFO    ] Script finished. Safe exiting...
[2026-06-12 09:53:42,817.817 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 09:53:42,821.821 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 09:53:42,823.823 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 09:53:44,861.861 INFO    ] ================================================
[2026-06-12 09:53:44,877.877 INFO    ] Launching Daemon at Fri Jun 12 09:53:44 IST 2026
[2026-06-12 09:53:44,888.888 INFO    ] ================================================
[2026-06-12 09:53:45,265.265 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 09:53:45
[2026-06-12 09:53:45,603.603 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 09:53:45,756.756 INFO    ] Initializing speech engine...
[2026-06-12 09:53:45,762.762 INFO    ] 2026-06-12 09:53:45
[2026-06-12 09:53:45,973.973 INFO    ] 2026-06-12 09:53:45
[2026-06-12 09:53:46,003.003 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 09:53:46,189.189 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 09:53:46,199.199 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 09:53:46,337.337 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 09:53:46,404.404 INFO    ] time= 12/06/2026 09:53:46
[2026-06-12 09:53:46,428.428 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 09:53:46,435.435 INFO    ] Checking for existing commands in stream...
[2026-06-12 09:53:46,502.502 INFO    ] No existing commands found in stream
[2026-06-12 09:53:51,512.512 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 09:53:51,515.515 INFO    ] Waiting 2.76 seconds before fallback handling...
[2026-06-12 09:53:54,609.609 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 09:53:54,611.611 INFO    ] Checking for system updates...
[2026-06-12 09:53:54,633.633 INFO    ] 200
[2026-06-12 09:53:54,634.634 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:53:54,667.667 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 09:53:54,668.668 INFO    ] No update needed
[2026-06-12 09:53:54,669.669 INFO    ] Checking for camera pi updates...
[2026-06-12 09:53:54,691.691 INFO    ] 200
[2026-06-12 09:53:54,693.693 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:53:54,720.720 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 09:53:54,743.743 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 09:53:54,744.744 INFO    ] No camera update needed
[2026-06-12 09:53:54,746.746 INFO    ] Script finished. Safe exiting...
[2026-06-12 09:53:54,747.747 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 09:53:54,750.750 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 09:53:54,753.753 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 09:53:56,793.793 INFO    ] ================================================
[2026-06-12 09:53:56,808.808 INFO    ] Launching Daemon at Fri Jun 12 09:53:56 IST 2026
[2026-06-12 09:53:56,818.818 INFO    ] ================================================
[2026-06-12 09:53:57,180.180 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 09:53:57
[2026-06-12 09:53:57,491.491 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 09:53:57,622.622 INFO    ] Initializing speech engine...
[2026-06-12 09:53:57,629.629 INFO    ] 2026-06-12 09:53:57
[2026-06-12 09:53:57,842.842 INFO    ] 2026-06-12 09:53:57
[2026-06-12 09:53:57,869.869 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 09:53:58,052.052 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 09:53:58,056.056 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 09:53:58,187.187 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 09:53:58,249.249 INFO    ] time= 12/06/2026 09:53:58
[2026-06-12 09:53:58,281.281 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 09:53:58,283.283 INFO    ] Checking for existing commands in stream...
[2026-06-12 09:53:58,353.353 INFO    ] No existing commands found in stream
[2026-06-12 09:54:03,362.362 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 09:54:03,364.364 INFO    ] Waiting 0.12 seconds before fallback handling...
[2026-06-12 09:54:03,834.834 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 09:54:03,836.836 INFO    ] Checking for system updates...
[2026-06-12 09:54:03,856.856 INFO    ] 200
[2026-06-12 09:54:03,857.857 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:54:03,890.890 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 09:54:03,891.891 INFO    ] No update needed
[2026-06-12 09:54:03,893.893 INFO    ] Checking for camera pi updates...
[2026-06-12 09:54:03,912.912 INFO    ] 200
[2026-06-12 09:54:03,913.913 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:54:03,938.938 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 09:54:03,962.962 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 09:54:03,963.963 INFO    ] No camera update needed
[2026-06-12 09:54:03,964.964 INFO    ] Script finished. Safe exiting...
[2026-06-12 09:54:03,966.966 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 09:54:03,968.968 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 09:54:03,971.971 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 09:54:06,012.012 INFO    ] ================================================
[2026-06-12 09:54:06,030.030 INFO    ] Launching Daemon at Fri Jun 12 09:54:06 IST 2026
[2026-06-12 09:54:06,042.042 INFO    ] ================================================
[2026-06-12 09:54:06,403.403 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 09:54:06
[2026-06-12 09:54:06,715.715 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 09:54:06,859.859 INFO    ] Initializing speech engine...
[2026-06-12 09:54:06,864.864 INFO    ] 2026-06-12 09:54:06
[2026-06-12 09:54:07,066.066 INFO    ] 2026-06-12 09:54:07
[2026-06-12 09:54:07,095.095 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 09:54:07,278.278 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 09:54:07,281.281 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 09:54:07,417.417 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 09:54:07,481.481 INFO    ] time= 12/06/2026 09:54:07
[2026-06-12 09:54:07,509.509 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 09:54:07,515.515 INFO    ] Checking for existing commands in stream...
[2026-06-12 09:54:07,582.582 INFO    ] No existing commands found in stream
[2026-06-12 09:54:08,845.845 INFO    ] Received new command: ID=1781238248708-0
[2026-06-12 09:54:08,847.847 INFO    ] process_and_cleanup_command: msg_id=1781238248708-0
[2026-06-12 09:54:08,848.848 INFO    ] is_command_expired: timestamp=2026-06-12T04:24:08.473Z, expiry=30s
[2026-06-12 09:54:08,926.926 INFO    ] Command removed from stream: 1781238248708-0. returning for processing...
[2026-06-12 09:54:08,928.928 INFO    ] ***** get_valid_command
[2026-06-12 09:54:08,929.929 INFO    ] {'data': '{"request_id":"start-order-1781238248473-i7dup5u62","orderId":"TM09202301260612095221397","is_vending":false}', 'source': 'webapp', 'timeout': '10', 'timestamp': '2026-06-12T04:24:08.473Z', 'command': 'start-order'}
[2026-06-12 09:54:08,931.931 INFO    ] ***** Parsed command data: {'orderId': 'TM09202301260612095221397', 'is_vending': False, 'request_id': 'start-order-1781238248473-i7dup5u62'}
[2026-06-12 09:54:08,932.932 INFO    ] Handling start order...
[2026-06-12 09:54:08,933.933 INFO    ] handle_start_order_command
[2026-06-12 09:54:08,936.936 INFO    ] _send_start_order_success: request_id=start-order-1781238248473-i7dup5u62, order_id=TM09202301260612095221397
[2026-06-12 09:54:08,938.938 INFO    ] [_send_start_order_success] Adding message to stream: machine:TM09202301
[2026-06-12 09:54:08,991.991 INFO    ] [_send_start_order_success] Message added to stream with ID: 1781238249007-0
[2026-06-12 09:54:08,994.994 INFO    ] ✅ Start-order command succeeded - order locked, waiting for process-order command
[2026-06-12 09:54:08,996.996 INFO    ] Checking for system updates...
[2026-06-12 09:54:09,037.037 INFO    ] 200
[2026-06-12 09:54:09,039.039 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:54:09,092.092 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 09:54:09,094.094 INFO    ] No update needed
[2026-06-12 09:54:09,097.097 INFO    ] Checking for camera pi updates...
[2026-06-12 09:54:09,130.130 INFO    ] 200
[2026-06-12 09:54:09,133.133 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:54:09,170.170 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 09:54:09,196.196 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 09:54:09,198.198 INFO    ] No camera update needed
[2026-06-12 09:54:09,199.199 INFO    ] Script finished. Safe exiting...
[2026-06-12 09:54:09,201.201 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 09:54:09,204.204 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 09:54:09,206.206 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 09:54:11,244.244 INFO    ] ================================================
[2026-06-12 09:54:11,259.259 INFO    ] Launching Daemon at Fri Jun 12 09:54:11 IST 2026
[2026-06-12 09:54:11,269.269 INFO    ] ================================================
[2026-06-12 09:54:11,608.608 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 09:54:11
[2026-06-12 09:54:11,918.918 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 09:54:12,048.048 INFO    ] Initializing speech engine...
[2026-06-12 09:54:12,056.056 INFO    ] 2026-06-12 09:54:12
[2026-06-12 09:54:12,267.267 INFO    ] 2026-06-12 09:54:12
[2026-06-12 09:54:12,295.295 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 09:54:12,479.479 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 09:54:12,482.482 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 09:54:12,631.631 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 09:54:12,635.635 INFO    ] time= 12/06/2026 09:54:12
[2026-06-12 09:54:12,637.637 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 09:54:12,638.638 INFO    ] Checking for existing commands in stream...
[2026-06-12 09:54:12,721.721 INFO    ] Found 2 existing command(s) in stream
[2026-06-12 09:54:12,723.723 INFO    ] Checking historical command: ID=1781238249007-0
[2026-06-12 09:54:12,729.729 INFO    ] process_and_cleanup_command: msg_id=1781238249007-0
[2026-06-12 09:54:12,731.731 INFO    ] is_command_expired: timestamp=2026-06-12T04:24:08.937382Z, expiry=30s
[2026-06-12 09:54:12,816.816 INFO    ] Command removed from stream: 1781238249007-0. returning for processing...
[2026-06-12 09:54:12,820.820 INFO    ] ***** get_valid_command
[2026-06-12 09:54:12,847.847 INFO    ] {'metadata_request_id': 'start-order-1781238248473-i7dup5u62', 'status': 'success', 'timestamp': '2026-06-12T04:24:08.937382Z', 'message_type': 'command_response', 'message': 'start-order success', 'imei': 'TM09202301', 'metadata_order_id': 'TM09202301260612095221397'}
[2026-06-12 09:54:12,849.849 INFO    ] Checking historical command: ID=1781238250837-0
[2026-06-12 09:54:12,855.855 INFO    ] process_and_cleanup_command: msg_id=1781238250837-0
[2026-06-12 09:54:12,879.879 INFO    ] is_command_expired: timestamp=2026-06-12T04:24:10.594Z, expiry=30s
[2026-06-12 09:54:12,959.959 INFO    ] Command removed from stream: 1781238250837-0. returning for processing...
[2026-06-12 09:54:12,962.962 INFO    ] ***** get_valid_command
[2026-06-12 09:54:12,966.966 INFO    ] {'timestamp': '2026-06-12T04:24:10.594Z', 'source': 'webapp', 'timeout': '60', 'command': 'process-order', 'data': '{"request_id":"process-order-1781238250593-nv3abnx2o","orderId":"TM09202301260612095221397","is_vending":false,"accessCode":"28101812"}'}
[2026-06-12 09:54:12,969.969 INFO    ] ***** Parsed command data: {'request_id': 'process-order-1781238250593-nv3abnx2o', 'is_vending': False, 'accessCode': '28101812', 'orderId': 'TM09202301260612095221397'}
[2026-06-12 09:54:12,975.975 INFO    ] Handling process order...
[2026-06-12 09:54:12,978.978 INFO    ] Processing process-order command...
[2026-06-12 09:54:12,982.982 INFO    ] 🔍 Lock file Order ID: TM09202301260612095221397, TS: 2026-06-12 09:54:08
[2026-06-12 09:54:12,992.992 INFO    ] ✅ Order lock valid for TM09202301260612095221397
[2026-06-12 09:54:12,995.995 INFO    ] Received access code in process-order, skipping PHP API call
[2026-06-12 09:54:12,998.998 INFO    ] processing access code 28101812 for order TM09202301260612095221397
[2026-06-12 09:54:13,002.002 INFO    ] 🔍 Lock file Order ID: TM09202301260612095221397, TS: 2026-06-12 09:54:08
[2026-06-12 09:54:13,005.005 INFO    ] ✅ Order lock valid for TM09202301260612095221397
[2026-06-12 09:54:13,008.008 INFO    ] 2026-06-12 09:54:13
[2026-06-12 09:54:13,035.035 INFO    ] 200
[2026-06-12 09:54:13,039.039 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:54:13,042.042 INFO    ] 28101812
[2026-06-12 09:54:13,044.044 INFO    ] 2026-06-12 09:54:13
[2026-06-12 09:54:13,047.047 INFO    ] session id :921120955
[2026-06-12 09:54:13,051.051 INFO    ] http://localhost:5000/v2/getOrderByAccessCode?access_code=28101812&imei=TM09202301&session_id=921120955
[2026-06-12 09:54:13,737.737 INFO    ] 200
[2026-06-12 09:54:13,738.738 INFO    ] {"rstatus": true, "msg": "Order Data", "status": true, "data": {"mobile": "9566277404", "order_id": "TM09202301260612095221397", "bill_amount": "10", "invoice_bill": "10", "access_code": "28101812", "proposed_sku_json": [{"door_id": "1", "name": "McVities Coconut Cookies 66gm", "tray_id": "21", "unit_price": 10, "offer_id": "", "qty": 1, "image_url": "https://images.tinymart.in/product/4500680-2380.jpg", "offer_desc": "", "sku_total": 10, "mrp": "10", "skuid": "4500680"}]}}
[2026-06-12 09:54:13,741.741 INFO    ] 10
[2026-06-12 09:54:13,785.785 INFO    ] TM09202301260612095221397
[2026-06-12 09:54:13,815.815 INFO    ] 9566277404
[2026-06-12 09:54:13,826.826 INFO    ] 2026-06-12 09:54:13
[2026-06-12 09:54:13,832.832 INFO    ] Door Opening for user mobile ending with  seven four zero four 
[2026-06-12 09:54:13,835.835 INFO    ] Door Opening for user mobile ending with  seven four zero four 
[2026-06-12 09:54:13,843.843 INFO    ] eef122009776b7ca64c074ca38b0d9ed
[2026-06-12 09:54:13,852.852 INFO    ] 2026-06-12 09:54:13
[2026-06-12 09:54:13,854.854 INFO    ] creating audio file
[2026-06-12 09:54:13,888.888 INFO    ] Calling gTTS API with 60s timeout...
[2026-06-12 09:54:14,713.713 INFO    ] gTTS API call completed successfully
[2026-06-12 09:54:15,378.378 INFO    ] 2026-06-12 09:54:15
[2026-06-12 09:54:15,380.380 INFO    ] playing audio file
[2026-06-12 09:54:15,390.390 INFO    ] 2026-06-12 09:54:15
[2026-06-12 09:54:15,392.392 INFO    ] 2026-06-12 09:54:15
[2026-06-12 09:54:15,394.394 INFO    ] publish_status: order_id=TM09202301260612095221397
[2026-06-12 09:54:15,395.395 INFO    ] [publish_status] Adding message to stream: order:TM09202301260612095221397
[2026-06-12 09:54:15,486.486 INFO    ] [publish_status] Message added to stream with ID: 1781238255503-0
[2026-06-12 09:54:15,488.488 INFO    ] Published to order:TM09202301260612095221397: {'timestamp': '2026-06-12T04:24:15.393032Z', 'server_status': 'order-started', 'server_response': '{"rstatus": true, "status": true, "data": {"order_id": "TM09202301260612095221397", "bill_amount": "10", "access_code": "28101812", "invoice_bill": "10", "proposed_sku_json": [{"sku_total": 10, "door_id": "1", "mrp": "10", "unit_price": 10, "tray_id": "21", "qty": 1, "image_url": "https://images.tinymart.in/product/4500680-2380.jpg", "skuid": "4500680", "offer_desc": "", "offer_id": "", "name": "McVities Coconut Cookies 66gm"}], "mobile": "9566277404"}, "msg": "Order Data"}', 'order_id': 'TM09202301260612095221397'} (ID: 1781238255503-0)
[2026-06-12 09:54:15,832.832 INFO    ] {'server_status': 'order-started', 'server_response': {'rstatus': True, 'status': True, 'data': {'order_id': 'TM09202301260612095221397', 'bill_amount': '10', 'access_code': '28101812', 'invoice_bill': '10', 'proposed_sku_json': [{'sku_total': 10, 'door_id': '1', 'mrp': '10', 'unit_price': 10, 'tray_id': '21', 'qty': 1, 'image_url': 'https://images.tinymart.in/product/4500680-2380.jpg', 'skuid': '4500680', 'offer_desc': '', 'offer_id': '', 'name': 'McVities Coconut Cookies 66gm'}], 'mobile': '9566277404'}, 'msg': 'Order Data'}, 'order_id': 'TM09202301260612095221397'}
[2026-06-12 09:54:15,834.834 INFO    ] 200
[2026-06-12 09:54:15,835.835 INFO    ] {"data":{"server_status":"order-started","server_response":{"rstatus":true,"status":true,"data":{"order_id":"TM09202301260612095221397","bill_amount":"10","access_code":"28101812","invoice_bill":"10","proposed_sku_json":[{"sku_total":10,"door_id":"1","mrp":"10","unit_price":10,"tray_id":"21","qty":1,"image_url":"https:\/\/images.tinymart.in\/product\/4500680-2380.jpg","skuid":"4500680","offer_desc":"","offer_id":"","name":"McVities Coconut Cookies 66gm"}],"mobile":"9566277404"},"msg":"Order Data"},"order_id":"TM09202301260612095221397"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-12 09:54:15,836.836 INFO    ] {'data': {'server_status': 'order-started', 'server_response': {'rstatus': True, 'msg': 'Order Data', 'data': {'order_id': 'TM09202301260612095221397', 'bill_amount': '10', 'access_code': '28101812', 'invoice_bill': '10', 'proposed_sku_json': [{'door_id': '1', 'unit_price': 10, 'offer_id': '', 'mrp': '10', 'tray_id': '21', 'qty': 1, 'image_url': 'https://images.tinymart.in/product/4500680-2380.jpg', 'skuid': '4500680', 'offer_desc': '', 'sku_total': 10, 'name': 'McVities Coconut Cookies 66gm'}], 'mobile': '9566277404'}, 'status': True}, 'order_id': 'TM09202301260612095221397'}, 'response': {'msg': 'order updated successfully', 'code': 'ORDER_EXISTS', 'data': 'order updated successfully', 'status': True}}
[2026-06-12 09:54:15,838.838 INFO    ] 2026-06-12 09:54:15
[2026-06-12 09:54:15,864.864 INFO    ] 200
[2026-06-12 09:54:15,866.866 INFO    ] True
[2026-06-12 09:54:15,954.954 INFO    ] 200
[2026-06-12 09:54:15,956.956 INFO    ] {"rstatus": false, "error": {"umessage": "In Progress", "code": 20001, "tmessage": "In Progress", "data": {}}, "SectionSKU": {"skus": [], "Header": "Thank you for bearing with us :)"}, "SectionMain": {"Header": "Processing Order"}, "SectionStatus": {"UI_Header": "", "Note": "", "Header": " Your order is under process  ", "SubHeader": "Please wait while we process your order"}, "voiceNote": "Please Wait", "status": "False"}
[2026-06-12 09:54:15,958.958 INFO    ] {'SectionStatus': {'SubHeader': 'Please wait while we process your order', 'UI_Header': '', 'Header': ' Your order is under process  ', 'Note': ''}, 'voiceNote': 'Please Wait', 'status': 'False', 'SectionSKU': {'Header': 'Thank you for bearing with us :)', 'skus': []}, 'rstatus': False, 'SectionMain': {'Header': 'Processing Order'}, 'error': {'tmessage': 'In Progress', 'umessage': 'In Progress', 'code': 20001, 'data': {}}}
[2026-06-12 09:54:15,960.960 INFO    ] *** process_order ***
[2026-06-12 09:54:17,211.211 INFO    ] 200
[2026-06-12 09:54:17,213.213 INFO    ] {"rstatus": false, "error": {"umessage": "In Progress", "code": 20001, "tmessage": "In Progress", "data": {}}, "SectionSKU": {"skus": [], "Header": "Thank you for bearing with us :)"}, "SectionMain": {"Header": "Processing Order"}, "SectionStatus": {"UI_Header": "", "Note": "", "Header": " Your order is under process  ", "SubHeader": "Please wait while we process your order"}, "voiceNote": "Please Wait", "status": "False"}
[2026-06-12 09:54:17,219.219 INFO    ] {'SectionStatus': {'SubHeader': 'Please wait while we process your order', 'UI_Header': '', 'Header': ' Your order is under process  ', 'Note': ''}, 'voiceNote': 'Please Wait', 'status': 'False', 'SectionSKU': {'Header': 'Thank you for bearing with us :)', 'skus': []}, 'rstatus': False, 'SectionMain': {'Header': 'Processing Order'}, 'error': {'tmessage': 'In Progress', 'umessage': 'In Progress', 'code': 20001, 'data': {}}}
[2026-06-12 09:54:17,221.221 INFO    ] *** process_order ***
[2026-06-12 09:54:18,429.429 INFO    ] 200
[2026-06-12 09:54:18,431.431 INFO    ] {"rstatus": false, "error": {"umessage": "In Progress", "code": 20001, "tmessage": "In Progress", "data": {}}, "SectionSKU": {"skus": [], "Header": "Thank you for bearing with us :)"}, "SectionMain": {"Header": "Processing Order"}, "SectionStatus": {"UI_Header": "", "Note": "", "Header": " Your order is under process  ", "SubHeader": "Please wait while we process your order"}, "voiceNote": "Please Wait", "status": "False"}
[2026-06-12 09:54:18,433.433 INFO    ] {'SectionStatus': {'SubHeader': 'Please wait while we process your order', 'UI_Header': '', 'Header': ' Your order is under process  ', 'Note': ''}, 'voiceNote': 'Please Wait', 'status': 'False', 'SectionSKU': {'Header': 'Thank you for bearing with us :)', 'skus': []}, 'rstatus': False, 'SectionMain': {'Header': 'Processing Order'}, 'error': {'tmessage': 'In Progress', 'umessage': 'In Progress', 'code': 20001, 'data': {}}}
[2026-06-12 09:54:18,435.435 INFO    ] *** process_order ***
[2026-06-12 09:54:19,588.588 INFO    ] 200
[2026-06-12 09:54:19,590.590 INFO    ] {"rstatus": true, "SectionSKU": {"skus": [], "Header": "Thank you for bearing with us :)"}, "SectionMain": {"Header": "Processing Order"}, "SectionStatus": {"UI_Header": "", "Note": "", "Header": " Your order is under process  ", "SubHeader": "Please wait while we process your order"}, "delay": 0, "voiceNote": "Please Wait", "status": "True"}
[2026-06-12 09:54:19,592.592 INFO    ] {'SectionStatus': {'SubHeader': 'Please wait while we process your order', 'UI_Header': '', 'Header': ' Your order is under process  ', 'Note': ''}, 'voiceNote': 'Please Wait', 'delay': 0, 'status': 'True', 'SectionSKU': {'Header': 'Thank you for bearing with us :)', 'skus': []}, 'rstatus': True, 'SectionMain': {'Header': 'Processing Order'}}
[2026-06-12 09:54:19,593.593 INFO    ] *** process_order ***
[2026-06-12 09:54:19,595.595 INFO    ] publish_status: order_id=TM09202301260612095221397
[2026-06-12 09:54:19,596.596 INFO    ] [publish_status] Adding message to stream: order:TM09202301260612095221397
[2026-06-12 09:54:19,680.680 INFO    ] [publish_status] Message added to stream with ID: 1781238259689-0
[2026-06-12 09:54:19,681.681 INFO    ] Published to order:TM09202301260612095221397: {'server_status': 'doorOpened', 'server_response': '{"SectionStatus": {"SubHeader": "You can pull the door now.", "UI_Header": "", "Header": " Your order is under process  ", "Note": ""}, "voiceNote": "Door is open...", "delay": 0, "status": "True", "SectionSKU": {"Header": "Thank you for bearing with us :)", "skus": []}, "rstatus": true, "SectionMain": {"Header": "Processing Order"}}', 'order_id': 'TM09202301260612095221397'} (ID: 1781238259689-0)
[2026-06-12 09:54:20,732.732 INFO    ] 2026-06-12 09:54:20
[2026-06-12 09:54:20,735.735 INFO    ] publish_status: order_id=TM09202301260612095221397
[2026-06-12 09:54:20,738.738 INFO    ] [publish_status] Adding message to stream: order:TM09202301260612095221397
[2026-06-12 09:54:20,810.810 INFO    ] [publish_status] Message added to stream with ID: 1781238260826-0
[2026-06-12 09:54:20,814.814 INFO    ] Published to order:TM09202301260612095221397: {'timestamp': '2026-06-12T04:24:20.733552Z', 'server_status': 'processOrder', 'server_response': '{"SectionStatus": {"SubHeader": "Please wait while we process your order", "UI_Header": "", "Header": " Your order is under process  ", "Note": ""}, "voiceNote": "Please Wait", "delay": 0, "status": "True", "SectionSKU": {"Header": "Thank you for bearing with us :)", "skus": []}, "rstatus": true, "SectionMain": {"Header": "Processing Order"}}', 'order_id': 'TM09202301260612095221397'} (ID: 1781238260826-0)
[2026-06-12 09:54:21,284.284 INFO    ] {'server_status': 'processOrder', 'server_response': {'SectionStatus': {'SubHeader': 'Please wait while we process your order', 'UI_Header': '', 'Header': ' Your order is under process  ', 'Note': ''}, 'voiceNote': 'Please Wait', 'delay': 0, 'status': 'True', 'SectionSKU': {'Header': 'Thank you for bearing with us :)', 'skus': []}, 'rstatus': True, 'SectionMain': {'Header': 'Processing Order'}}, 'order_id': 'TM09202301260612095221397'}
[2026-06-12 09:54:21,285.285 INFO    ] 200
[2026-06-12 09:54:21,286.286 INFO    ] {"data":{"server_status":"processOrder","server_response":{"SectionStatus":{"SubHeader":"Please wait while we process your order","UI_Header":"","Header":" Your order is under process  ","Note":""},"voiceNote":"Please Wait","delay":0,"status":"true","SectionSKU":{"Header":"Thank you for bearing with us :)","skus":[]},"rstatus":true,"SectionMain":{"Header":"Processing Order"}},"order_id":"TM09202301260612095221397"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-12 09:54:21,288.288 INFO    ] {'data': {'server_status': 'processOrder', 'server_response': {'SectionStatus': {'SubHeader': 'Please wait while we process your order', 'UI_Header': '', 'Header': ' Your order is under process  ', 'Note': ''}, 'voiceNote': 'Please Wait', 'delay': 0, 'status': 'true', 'SectionSKU': {'Header': 'Thank you for bearing with us :)', 'skus': []}, 'rstatus': True, 'SectionMain': {'Header': 'Processing Order'}}, 'order_id': 'TM09202301260612095221397'}, 'response': {'msg': 'order updated successfully', 'code': 'ORDER_EXISTS', 'data': 'order updated successfully', 'status': True}}
[2026-06-12 09:54:21,290.290 INFO    ] 2026-06-12 09:54:21
[2026-06-12 09:54:21,292.292 INFO    ] None
[2026-06-12 09:54:21,293.293 INFO    ] Opening Door now
[2026-06-12 09:54:21,295.295 INFO    ] Opening Door now
[2026-06-12 09:54:21,296.296 INFO    ] 08e5d1063504bf393c26f0bfa436e9f9
[2026-06-12 09:54:21,298.298 INFO    ] 2026-06-12 09:54:21
[2026-06-12 09:54:21,300.300 INFO    ] playing audio file
[2026-06-12 09:54:21,312.312 INFO    ] 2026-06-12 09:54:21
[2026-06-12 09:54:21,314.314 INFO    ] 2026-06-12 09:54:21
[2026-06-12 09:54:24,347.347 INFO    ] 200
[2026-06-12 09:54:24,349.349 INFO    ] {"rstatus": false, "error": {"umessage": "In Progress", "code": 20001, "tmessage": "In Progress", "data": {}}, "SectionSKU": {"skus": [{"name": "McVities Coconut Cookies 66gm", "qty": 1}], "Header": "Pick the below items from the door"}, "SectionMain": {"Header": "Door Open"}, "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"}, "voiceNote": "Door 1 is open now", "status": "False"}
[2026-06-12 09:54:24,351.351 INFO    ] {'SectionStatus': {'SubHeader': 'Please Pick the Products and close the door', 'UI_Header': 'DOOR 1\nIS \nOPEN \nNOW', 'Header': 'Please Close Door 1', 'Note': 'Please Close the door after picking up products'}, 'voiceNote': 'Door 1 is open now', 'status': 'False', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'McVities Coconut Cookies 66gm'}]}, 'rstatus': False, 'SectionMain': {'Header': 'Door Open'}, 'error': {'tmessage': 'In Progress', 'umessage': 'In Progress', 'code': 20001, 'data': {}}}
[2026-06-12 09:54:27,590.590 INFO    ] 200
[2026-06-12 09:54:27,592.592 INFO    ] {"rstatus": false, "error": {"umessage": "In Progress", "code": 20001, "tmessage": "In Progress", "data": {}}, "SectionSKU": {"skus": [{"name": "McVities Coconut Cookies 66gm", "qty": 1}], "Header": "Pick the below items from the door"}, "SectionMain": {"Header": "Door Open"}, "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"}, "voiceNote": "Please close door 1", "status": "False"}
[2026-06-12 09:54:27,594.594 INFO    ] {'SectionStatus': {'SubHeader': 'Please Pick the Products and close the door', 'UI_Header': 'DOOR 1\nIS \nOPEN \nNOW', 'Header': 'Please Close Door 1', 'Note': 'Please Close the door after picking up products'}, 'voiceNote': 'Please close door 1', 'status': 'False', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'McVities Coconut Cookies 66gm'}]}, 'rstatus': False, 'SectionMain': {'Header': 'Door Open'}, 'error': {'tmessage': 'In Progress', 'umessage': 'In Progress', 'code': 20001, 'data': {}}}
[2026-06-12 09:54:30,631.631 INFO    ] 200
[2026-06-12 09:54:30,633.633 INFO    ] {"rstatus": false, "error": {"umessage": "In Progress", "code": 20001, "tmessage": "In Progress", "data": {}}, "SectionSKU": {"skus": [{"name": "McVities Coconut Cookies 66gm", "qty": 1}], "Header": "Pick the below items from the door"}, "SectionMain": {"Header": "Door Open"}, "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"}, "voiceNote": "Please close door 1", "status": "False"}
[2026-06-12 09:54:30,635.635 INFO    ] Please close door 1
[2026-06-12 09:54:30,637.637 INFO    ] Please close door 1
[2026-06-12 09:54:30,639.639 INFO    ] 787c302d53ab591e55c034b99c7aadd2
[2026-06-12 09:54:30,641.641 INFO    ] 2026-06-12 09:54:30
[2026-06-12 09:54:30,642.642 INFO    ] playing audio file
[2026-06-12 09:54:30,654.654 INFO    ] 2026-06-12 09:54:30
[2026-06-12 09:54:30,657.657 INFO    ] publish_status: order_id=TM09202301260612095221397
[2026-06-12 09:54:30,659.659 INFO    ] [publish_status] Adding message to stream: order:TM09202301260612095221397
[2026-06-12 09:54:30,723.723 INFO    ] [publish_status] Message added to stream with ID: 1781238270741-0
[2026-06-12 09:54:30,724.724 INFO    ] Published to order:TM09202301260612095221397: {'timestamp': '2026-06-12T04:24:30.655937Z', 'server_status': 'OrderStatus', 'server_response': '{"SectionStatus": {"SubHeader": "Please Pick the Products and close the door", "UI_Header": "DOOR 1\\nIS \\nOPEN \\nNOW", "Header": "Please Close Door 1", "Note": "Please Close the door after picking up products"}, "voiceNote": "Please close door 1", "status": "False", "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "McVities Coconut Cookies 66gm"}]}, "rstatus": false, "SectionMain": {"Header": "Door Open"}, "error": {"tmessage": "In Progress", "umessage": "In Progress", "code": 20001, "data": {}}}', 'order_id': 'TM09202301260612095221397'} (ID: 1781238270741-0)
[2026-06-12 09:54:31,161.161 INFO    ] {'server_status': 'OrderStatus', 'server_response': {'SectionStatus': {'SubHeader': 'Please Pick the Products and close the door', 'UI_Header': 'DOOR 1\nIS \nOPEN \nNOW', 'Header': 'Please Close Door 1', 'Note': 'Please Close the door after picking up products'}, 'voiceNote': 'Please close door 1', 'status': 'False', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'McVities Coconut Cookies 66gm'}]}, 'rstatus': False, 'SectionMain': {'Header': 'Door Open'}, 'error': {'tmessage': 'In Progress', 'umessage': 'In Progress', 'code': 20001, 'data': {}}}, 'order_id': 'TM09202301260612095221397'}
[2026-06-12 09:54:31,164.164 INFO    ] 200
[2026-06-12 09:54:31,167.167 INFO    ] {"data":{"server_status":"OrderStatus","server_response":{"SectionStatus":{"SubHeader":"Please Pick the Products and close the door","UI_Header":"DOOR 1\nIS \nOPEN \nNOW","Header":"Please Close Door 1","Note":"Please Close the door after picking up products"},"voiceNote":"Please close door 1","status":"false","SectionSKU":{"Header":"Pick the below items from the door","skus":[{"qty":1,"name":"McVities Coconut Cookies 66gm"}]},"rstatus":false,"SectionMain":{"Header":"Door Open"},"error":{"tmessage":"In Progress","umessage":"In Progress","code":20001,"data":[]}},"order_id":"TM09202301260612095221397"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-12 09:54:31,171.171 INFO    ] {'data': {'server_status': 'OrderStatus', 'server_response': {'SectionStatus': {'SubHeader': 'Please Pick the Products and close the door', 'UI_Header': 'DOOR 1\nIS \nOPEN \nNOW', 'Header': 'Please Close Door 1', 'Note': 'Please Close the door after picking up products'}, 'voiceNote': 'Please close door 1', 'status': 'false', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'McVities Coconut Cookies 66gm'}]}, 'rstatus': False, 'SectionMain': {'Header': 'Door Open'}, 'error': {'tmessage': 'In Progress', 'umessage': 'In Progress', 'code': 20001, 'data': []}}, 'order_id': 'TM09202301260612095221397'}, 'response': {'msg': 'order updated successfully', 'code': 'ORDER_EXISTS', 'data': 'order updated successfully', 'status': True}}
[2026-06-12 09:54:31,174.174 INFO    ] {'SectionStatus': {'SubHeader': 'Please Pick the Products and close the door', 'UI_Header': 'DOOR 1\nIS \nOPEN \nNOW', 'Header': 'Please Close Door 1', 'Note': 'Please Close the door after picking up products'}, 'voiceNote': 'Please close door 1', 'status': 'False', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'McVities Coconut Cookies 66gm'}]}, 'rstatus': False, 'SectionMain': {'Header': 'Door Open'}, 'error': {'tmessage': 'In Progress', 'umessage': 'In Progress', 'code': 20001, 'data': {}}}
[2026-06-12 09:54:34,228.228 INFO    ] 200
[2026-06-12 09:54:34,231.231 INFO    ] {"rstatus": false, "error": {"umessage": "In Progress", "code": 20001, "tmessage": "In Progress", "data": {}}, "SectionSKU": {"skus": [{"name": "McVities Coconut Cookies 66gm", "qty": 1}], "Header": "Pick the below items from the door"}, "SectionMain": {"Header": "Door Open"}, "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"}, "voiceNote": "Please close door 1", "status": "False"}
[2026-06-12 09:54:34,234.234 INFO    ] {'SectionStatus': {'SubHeader': 'Please Pick the Products and close the door', 'UI_Header': 'DOOR 1\nIS \nOPEN \nNOW', 'Header': 'Please Close Door 1', 'Note': 'Please Close the door after picking up products'}, 'voiceNote': 'Please close door 1', 'status': 'False', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'McVities Coconut Cookies 66gm'}]}, 'rstatus': False, 'SectionMain': {'Header': 'Door Open'}, 'error': {'tmessage': 'In Progress', 'umessage': 'In Progress', 'code': 20001, 'data': {}}}
[2026-06-12 09:54:37,279.279 INFO    ] 200
[2026-06-12 09:54:37,281.281 INFO    ] {"rstatus": true, "SectionSKU": {"skus": [], "Header": "If you like us, tell others... else tell us"}, "SectionMain": {"Header": "Door Closed"}, "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, "voiceNote": "Transaction Completed", "status": "True"}
[2026-06-12 09:54:37,283.283 INFO    ] {'SectionStatus': {'SubHeader': 'Please wait for invoice to generate', 'UI_Header': '', 'Header': ' Order is complete ', 'Note': 'If any due amount, clear at https://go.tinymart.in'}, 'voiceNote': 'Transaction Completed', 'delay': 100, 'status': 'True', 'SectionSKU': {'Header': 'If you like us, tell others... else tell us', 'skus': []}, 'rstatus': True, 'SectionMain': {'Header': 'Door Closed'}}
[2026-06-12 09:54:37,285.285 INFO    ] 2026-06-12 09:54:37
[2026-06-12 09:54:37,286.286 INFO    ] Order Completed 
[2026-06-12 09:54:37,287.287 INFO    ] Order Completed 
[2026-06-12 09:54:37,289.289 INFO    ] 193c8a8cf3bf490ccfe0b23598544a83
[2026-06-12 09:54:37,290.290 INFO    ] 2026-06-12 09:54:37
[2026-06-12 09:54:37,292.292 INFO    ] playing audio file
[2026-06-12 09:54:37,302.302 INFO    ] 2026-06-12 09:54:37
[2026-06-12 09:54:37,304.304 INFO    ] {'SectionStatus': {'SubHeader': 'Please wait for invoice to generate', 'UI_Header': '', 'Header': ' Order is complete ', 'Note': 'If any due amount, clear at https://go.tinymart.in'}, 'voiceNote': 'Transaction Completed', 'delay': 100, 'status': 'True', 'SectionSKU': {'Header': 'If you like us, tell others... else tell us', 'skus': []}, 'rstatus': True, 'SectionMain': {'Header': 'Door Closed'}}
[2026-06-12 09:54:37,306.306 INFO    ] 2026-06-12 09:54:37
[2026-06-12 09:54:37,656.656 INFO    ] 200
[2026-06-12 09:54:37,658.658 INFO    ] {"rstatus": true, "skus": [{"door_id": "", "sku_total": 10, "unit_price": "10", "offer_id": "", "tray_id": "15", "image_url": "https://images.tinymart.in/product/4500696-244.webp", "mrp": "10", "name": "McVities Cashew almond  Cookies 58gm per peice", "qty": 1, "skuid": "4500696"}], "res": true, "anomaly": 0, "imei": "TM09202301", "orderId": "TM09202301260612095221397", "userId": "9566277404", "bill_amount": 10, "cart_offer_desc": "", "total_amount": 10, "order_status": ""}
[2026-06-12 09:54:37,659.659 INFO    ] {'userId': '9566277404', 'anomaly': 0, 'bill_amount': 10, 'res': True, 'order_status': '', 'orderId': 'TM09202301260612095221397', 'rstatus': True, 'imei': 'TM09202301', 'skus': [{'name': 'McVities Cashew almond  Cookies 58gm per peice', 'door_id': '', 'unit_price': '10', 'sku_total': 10, 'tray_id': '15', 'qty': 1, 'image_url': 'https://images.tinymart.in/product/4500696-244.webp', 'skuid': '4500696', 'offer_id': '', 'mrp': '10'}], 'cart_offer_desc': '', 'total_amount': 10}
[2026-06-12 09:54:37,662.662 INFO    ] {'userId': '9566277404', 'anomaly': 0, 'bill_amount': 10, 'res': True, 'order_status': '', 'orderId': 'TM09202301260612095221397', 'rstatus': True, 'imei': 'TM09202301', 'skus': [{'name': 'McVities Cashew almond  Cookies 58gm per peice', 'door_id': '', 'unit_price': '10', 'sku_total': 10, 'tray_id': '15', 'qty': 1, 'image_url': 'https://images.tinymart.in/product/4500696-244.webp', 'skuid': '4500696', 'offer_id': '', 'mrp': '10'}], 'cart_offer_desc': '', 'total_amount': 10}
[2026-06-12 09:54:37,664.664 INFO    ] 2026-06-12 09:54:37
[2026-06-12 09:54:37,665.665 INFO    ] 2026-06-12 09:54:37
[2026-06-12 09:54:37,667.667 INFO    ] 10
[2026-06-12 09:54:37,668.668 INFO    ] 2026-06-12 09:54:37
[2026-06-12 09:54:37,669.669 INFO    ] 2026-06-12 09:54:37
[2026-06-12 09:54:37,671.671 INFO    ]  Your Bill Amount is 10
[2026-06-12 09:54:37,672.672 INFO    ]  Your Bill Amount is 10
[2026-06-12 09:54:37,674.674 INFO    ] 85bfbe5b6a8f89327a526d08bc1ad1da
[2026-06-12 09:54:37,676.676 INFO    ] 2026-06-12 09:54:37
[2026-06-12 09:54:37,677.677 INFO    ] playing audio file
[2026-06-12 09:54:37,688.688 INFO    ] 2026-06-12 09:54:37
[2026-06-12 09:54:37,689.689 INFO    ] 2026-06-12 09:54:37
[2026-06-12 09:54:37,692.692 INFO    ] publish_status: order_id=TM09202301260612095221397
[2026-06-12 09:54:37,694.694 INFO    ] [publish_status] Adding message to stream: order:TM09202301260612095221397
[2026-06-12 09:54:37,753.753 INFO    ] [publish_status] Message added to stream with ID: 1781238277771-0
[2026-06-12 09:54:37,755.755 INFO    ] Published to order:TM09202301260612095221397: {'timestamp': '2026-06-12T04:24:37.690986Z', 'server_status': 'invoiceOrder', 'server_response': '{"userId": "9566277404", "anomaly": 0, "bill_amount": 10, "res": true, "order_status": "", "orderId": "TM09202301260612095221397", "rstatus": true, "imei": "TM09202301", "skus": [{"name": "McVities Cashew almond  Cookies 58gm per peice", "door_id": "", "unit_price": "10", "sku_total": 10, "tray_id": "15", "qty": 1, "image_url": "https://images.tinymart.in/product/4500696-244.webp", "skuid": "4500696", "offer_id": "", "mrp": "10"}], "cart_offer_desc": "", "total_amount": 10}', 'order_id': 'TM09202301260612095221397'} (ID: 1781238277771-0)
[2026-06-12 09:54:38,610.610 INFO    ] {'server_status': 'invoiceOrder', 'server_response': {'userId': '9566277404', 'anomaly': 0, 'bill_amount': 10, 'res': True, 'order_status': '', 'orderId': 'TM09202301260612095221397', 'rstatus': True, 'imei': 'TM09202301', 'skus': [{'name': 'McVities Cashew almond  Cookies 58gm per peice', 'door_id': '', 'unit_price': '10', 'sku_total': 10, 'tray_id': '15', 'qty': 1, 'image_url': 'https://images.tinymart.in/product/4500696-244.webp', 'skuid': '4500696', 'offer_id': '', 'mrp': '10'}], 'cart_offer_desc': '', 'total_amount': 10}, 'order_id': 'TM09202301260612095221397'}
[2026-06-12 09:54:38,612.612 INFO    ] 200
[2026-06-12 09:54:38,613.613 INFO    ] {"data":{"server_status":"invoiceOrder","server_response":{"userId":"9566277404","anomaly":0,"bill_amount":10,"res":true,"order_status":"","orderId":"TM09202301260612095221397","rstatus":true,"imei":"TM09202301","skus":[{"name":"McVities Cashew almond  Cookies 58gm per peice","door_id":"","unit_price":"10","sku_total":10,"tray_id":"15","qty":1,"image_url":"https:\/\/images.tinymart.in\/product\/4500696-244.webp","skuid":"4500696","offer_id":"","mrp":"10"}],"cart_offer_desc":"","total_amount":10},"order_id":"TM09202301260612095221397"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-12 09:54:38,615.615 INFO    ] {'data': {'server_status': 'invoiceOrder', 'server_response': {'imei': 'TM09202301', 'userId': '9566277404', 'bill_amount': 10, 'res': True, 'order_status': '', 'orderId': 'TM09202301260612095221397', 'rstatus': True, 'anomaly': 0, 'skus': [{'door_id': '', 'mrp': '10', 'unit_price': '10', 'offer_id': '', 'sku_total': 10, 'qty': 1, 'image_url': 'https://images.tinymart.in/product/4500696-244.webp', 'skuid': '4500696', 'tray_id': '15', 'name': 'McVities Cashew almond  Cookies 58gm per peice'}], 'cart_offer_desc': '', 'total_amount': 10}, 'order_id': 'TM09202301260612095221397'}, 'response': {'msg': 'order updated successfully', 'code': 'ORDER_EXISTS', 'data': 'order updated successfully', 'status': True}}
[2026-06-12 09:54:38,616.616 INFO    ] {'data': {'server_status': 'invoiceOrder', 'server_response': {'imei': 'TM09202301', 'userId': '9566277404', 'bill_amount': 10, 'res': True, 'order_status': '', 'orderId': 'TM09202301260612095221397', 'rstatus': True, 'anomaly': 0, 'skus': [{'door_id': '', 'mrp': '10', 'unit_price': '10', 'offer_id': '', 'sku_total': 10, 'qty': 1, 'image_url': 'https://images.tinymart.in/product/4500696-244.webp', 'skuid': '4500696', 'tray_id': '15', 'name': 'McVities Cashew almond  Cookies 58gm per peice'}], 'cart_offer_desc': '', 'total_amount': 10}, 'order_id': 'TM09202301260612095221397'}, 'response': {'msg': 'order updated successfully', 'code': 'ORDER_EXISTS', 'data': 'order updated successfully', 'status': True}}
[2026-06-12 09:54:38,618.618 INFO    ] 2026-06-12 09:54:38
[2026-06-12 09:54:39,464.464 INFO    ] 200
[2026-06-12 09:54:39,465.465 INFO    ] {"tray_sync": ["no_entry", "no_entry", "no_entry", "no_entry", "no_entry", "no_entry"], "orders_data": [], "orders_synced": [], "status": true, "order_items_synced": [], "tray_synced": ["no_entry", "no_entry", "no_entry", "no_entry", "no_entry", "no_entry", "no_entry", "no_entry", "no_entry", "no_entry", "no_entry", "no_entry", "no_entry", "no_entry", "no_entry", "no_entry", "no_entry", "no_entry", "no_entry", "no_entry", "no_entry", "no_entry", "no_entry", "no_entry", "no_entry", "no_entry", "no_entry"], "orders_data_synced": [], "orders": [], "order_items": []}
[2026-06-12 09:54:39,468.468 INFO    ] 2026-06-12 09:54:39
[2026-06-12 09:54:39,528.528 INFO    ] 200
[2026-06-12 09:54:39,529.529 INFO    ] True
[2026-06-12 09:54:39,531.531 INFO    ] cleanup_start_order_file_after_processing: order_id=TM09202301260612095221397
[2026-06-12 09:54:39,533.533 INFO    ] start order file deleted
[2026-06-12 09:54:39,534.534 INFO    ] Checking for system updates...
[2026-06-12 09:54:39,554.554 INFO    ] 200
[2026-06-12 09:54:39,556.556 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:54:39,586.586 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 09:54:39,588.588 INFO    ] No update needed
[2026-06-12 09:54:39,589.589 INFO    ] Checking for camera pi updates...
[2026-06-12 09:54:39,610.610 INFO    ] 200
[2026-06-12 09:54:39,612.612 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:54:39,637.637 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 09:54:39,664.664 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 09:54:39,665.665 INFO    ] No camera update needed
[2026-06-12 09:54:39,667.667 INFO    ] Script finished. Safe exiting...
[2026-06-12 09:54:39,668.668 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 09:54:39,671.671 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 09:54:39,674.674 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 09:54:41,716.716 INFO    ] ================================================
[2026-06-12 09:54:41,731.731 INFO    ] Launching Daemon at Fri Jun 12 09:54:41 IST 2026
[2026-06-12 09:54:41,742.742 INFO    ] ================================================
[2026-06-12 09:54:42,104.104 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 09:54:42
[2026-06-12 09:54:42,417.417 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 09:54:42,563.563 INFO    ] Initializing speech engine...
[2026-06-12 09:54:42,568.568 INFO    ] 2026-06-12 09:54:42
[2026-06-12 09:54:42,770.770 INFO    ] 2026-06-12 09:54:42
[2026-06-12 09:54:42,798.798 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 09:54:42,914.914 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 09:54:42,915.915 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 09:54:43,019.019 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 09:54:43,062.062 INFO    ] time= 12/06/2026 09:54:43
[2026-06-12 09:54:43,093.093 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 09:54:43,130.130 INFO    ] Checking for existing commands in stream...
[2026-06-12 09:54:43,221.221 INFO    ] No existing commands found in stream
[2026-06-12 09:54:48,233.233 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 09:54:48,236.236 INFO    ] Waiting 2.96 seconds before fallback handling...
[2026-06-12 09:54:51,569.569 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 09:54:51,570.570 INFO    ] Checking for system updates...
[2026-06-12 09:54:51,592.592 INFO    ] 200
[2026-06-12 09:54:51,593.593 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:54:51,625.625 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 09:54:51,627.627 INFO    ] No update needed
[2026-06-12 09:54:51,628.628 INFO    ] Checking for camera pi updates...
[2026-06-12 09:54:51,648.648 INFO    ] 200
[2026-06-12 09:54:51,649.649 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:54:51,672.672 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 09:54:51,712.712 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 09:54:51,713.713 INFO    ] No camera update needed
[2026-06-12 09:54:51,715.715 INFO    ] Script finished. Safe exiting...
[2026-06-12 09:54:51,716.716 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 09:54:51,719.719 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 09:54:51,722.722 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 09:54:53,761.761 INFO    ] ================================================
[2026-06-12 09:54:53,776.776 INFO    ] Launching Daemon at Fri Jun 12 09:54:53 IST 2026
[2026-06-12 09:54:53,787.787 INFO    ] ================================================
[2026-06-12 09:54:54,143.143 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 09:54:54
[2026-06-12 09:54:54,483.483 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 09:54:54,624.624 INFO    ] Initializing speech engine...
[2026-06-12 09:54:54,638.638 INFO    ] 2026-06-12 09:54:54
[2026-06-12 09:54:54,853.853 INFO    ] 2026-06-12 09:54:54
[2026-06-12 09:54:54,883.883 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 09:54:55,049.049 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 09:54:55,075.075 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 09:54:55,207.207 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 09:54:55,268.268 INFO    ] time= 12/06/2026 09:54:55
[2026-06-12 09:54:55,304.304 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 09:54:55,310.310 INFO    ] Checking for existing commands in stream...
[2026-06-12 09:54:55,382.382 INFO    ] No existing commands found in stream
[2026-06-12 09:55:00,392.392 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 09:55:00,395.395 INFO    ] Waiting 2.35 seconds before fallback handling...
[2026-06-12 09:55:03,116.116 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 09:55:03,118.118 INFO    ] Checking for system updates...
[2026-06-12 09:55:03,139.139 INFO    ] 200
[2026-06-12 09:55:03,140.140 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:55:03,174.174 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 09:55:03,175.175 INFO    ] No update needed
[2026-06-12 09:55:03,177.177 INFO    ] Checking for camera pi updates...
[2026-06-12 09:55:03,198.198 INFO    ] 200
[2026-06-12 09:55:03,200.200 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:55:03,228.228 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 09:55:03,268.268 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 09:55:03,270.270 INFO    ] No camera update needed
[2026-06-12 09:55:03,271.271 INFO    ] Script finished. Safe exiting...
[2026-06-12 09:55:03,273.273 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 09:55:03,276.276 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 09:55:03,279.279 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 09:55:05,320.320 INFO    ] ================================================
[2026-06-12 09:55:05,338.338 INFO    ] Launching Daemon at Fri Jun 12 09:55:05 IST 2026
[2026-06-12 09:55:05,352.352 INFO    ] ================================================
[2026-06-12 09:55:05,735.735 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 09:55:05
[2026-06-12 09:55:06,075.075 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 09:55:06,226.226 INFO    ] Initializing speech engine...
[2026-06-12 09:55:06,232.232 INFO    ] 2026-06-12 09:55:06
[2026-06-12 09:55:06,439.439 INFO    ] 2026-06-12 09:55:06
[2026-06-12 09:55:06,468.468 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 09:55:06,610.610 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 09:55:06,658.658 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 09:55:06,811.811 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 09:55:06,865.865 INFO    ] time= 12/06/2026 09:55:06
[2026-06-12 09:55:06,887.887 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 09:55:06,893.893 INFO    ] Checking for existing commands in stream...
[2026-06-12 09:55:06,963.963 INFO    ] No existing commands found in stream
[2026-06-12 09:55:11,978.978 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 09:55:11,981.981 INFO    ] Waiting 0.08 seconds before fallback handling...
[2026-06-12 09:55:12,386.386 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 09:55:12,387.387 INFO    ] Checking for system updates...
[2026-06-12 09:55:12,408.408 INFO    ] 200
[2026-06-12 09:55:12,410.410 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:55:12,440.440 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 09:55:12,442.442 INFO    ] No update needed
[2026-06-12 09:55:12,443.443 INFO    ] Checking for camera pi updates...
[2026-06-12 09:55:12,463.463 INFO    ] 200
[2026-06-12 09:55:12,464.464 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:55:12,488.488 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 09:55:12,513.513 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 09:55:12,515.515 INFO    ] No camera update needed
[2026-06-12 09:55:12,516.516 INFO    ] Script finished. Safe exiting...
[2026-06-12 09:55:12,517.517 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 09:55:12,521.521 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 09:55:12,524.524 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 09:55:14,563.563 INFO    ] ================================================
[2026-06-12 09:55:14,579.579 INFO    ] Launching Daemon at Fri Jun 12 09:55:14 IST 2026
[2026-06-12 09:55:14,590.590 INFO    ] ================================================
[2026-06-12 09:55:14,948.948 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 09:55:14
[2026-06-12 09:55:15,289.289 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 09:55:15,442.442 INFO    ] Initializing speech engine...
[2026-06-12 09:55:15,447.447 INFO    ] 2026-06-12 09:55:15
[2026-06-12 09:55:15,659.659 INFO    ] 2026-06-12 09:55:15
[2026-06-12 09:55:15,688.688 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 09:55:15,828.828 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 09:55:15,876.876 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 09:55:16,016.016 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 09:55:16,085.085 INFO    ] time= 12/06/2026 09:55:16
[2026-06-12 09:55:16,108.108 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 09:55:16,115.115 INFO    ] Checking for existing commands in stream...
[2026-06-12 09:55:16,184.184 INFO    ] No existing commands found in stream
[2026-06-12 09:55:21,198.198 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 09:55:21,201.201 INFO    ] Waiting 0.84 seconds before fallback handling...
[2026-06-12 09:55:22,411.411 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 09:55:22,413.413 INFO    ] Checking for system updates...
[2026-06-12 09:55:22,434.434 INFO    ] 200
[2026-06-12 09:55:22,435.435 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:55:22,471.471 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 09:55:22,472.472 INFO    ] No update needed
[2026-06-12 09:55:22,474.474 INFO    ] Checking for camera pi updates...
[2026-06-12 09:55:22,495.495 INFO    ] 200
[2026-06-12 09:55:22,496.496 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:55:22,523.523 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 09:55:22,557.557 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 09:55:22,559.559 INFO    ] No camera update needed
[2026-06-12 09:55:22,561.561 INFO    ] Script finished. Safe exiting...
[2026-06-12 09:55:22,563.563 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 09:55:22,566.566 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 09:55:22,569.569 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 09:55:24,608.608 INFO    ] ================================================
[2026-06-12 09:55:24,623.623 INFO    ] Launching Daemon at Fri Jun 12 09:55:24 IST 2026
[2026-06-12 09:55:24,634.634 INFO    ] ================================================
[2026-06-12 09:55:25,022.022 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 09:55:25
[2026-06-12 09:55:25,363.363 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 09:55:25,517.517 INFO    ] Initializing speech engine...
[2026-06-12 09:55:25,521.521 INFO    ] 2026-06-12 09:55:25
[2026-06-12 09:55:25,728.728 INFO    ] 2026-06-12 09:55:25
[2026-06-12 09:55:25,757.757 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 09:55:25,944.944 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 09:55:25,953.953 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 09:55:26,088.088 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 09:55:26,150.150 INFO    ] time= 12/06/2026 09:55:26
[2026-06-12 09:55:26,175.175 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 09:55:26,182.182 INFO    ] Checking for existing commands in stream...
[2026-06-12 09:55:26,273.273 INFO    ] No existing commands found in stream
[2026-06-12 09:55:31,282.282 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 09:55:31,286.286 INFO    ] Waiting 1.67 seconds before fallback handling...
[2026-06-12 09:55:33,329.329 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 09:55:33,331.331 INFO    ] Checking for system updates...
[2026-06-12 09:55:33,352.352 INFO    ] 200
[2026-06-12 09:55:33,354.354 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:55:33,387.387 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 09:55:33,389.389 INFO    ] No update needed
[2026-06-12 09:55:33,390.390 INFO    ] Checking for camera pi updates...
[2026-06-12 09:55:33,413.413 INFO    ] 200
[2026-06-12 09:55:33,415.415 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:55:33,440.440 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 09:55:33,471.471 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 09:55:33,472.472 INFO    ] No camera update needed
[2026-06-12 09:55:33,474.474 INFO    ] Script finished. Safe exiting...
[2026-06-12 09:55:33,475.475 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 09:55:33,479.479 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 09:55:33,482.482 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 09:55:35,523.523 INFO    ] ================================================
[2026-06-12 09:55:35,538.538 INFO    ] Launching Daemon at Fri Jun 12 09:55:35 IST 2026
[2026-06-12 09:55:35,549.549 INFO    ] ================================================
[2026-06-12 09:55:35,864.864 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 09:55:35
[2026-06-12 09:55:36,176.176 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 09:55:36,305.305 INFO    ] Initializing speech engine...
[2026-06-12 09:55:36,310.310 INFO    ] 2026-06-12 09:55:36
[2026-06-12 09:55:36,530.530 INFO    ] 2026-06-12 09:55:36
[2026-06-12 09:55:36,558.558 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 09:55:36,743.743 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 09:55:36,747.747 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 09:55:36,876.876 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 09:55:36,937.937 INFO    ] time= 12/06/2026 09:55:36
[2026-06-12 09:55:36,972.972 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 09:55:36,977.977 INFO    ] Checking for existing commands in stream...
[2026-06-12 09:55:37,049.049 INFO    ] Found 1 existing command(s) in stream
[2026-06-12 09:55:37,052.052 INFO    ] Checking historical command: ID=1781238334078-0
[2026-06-12 09:55:37,078.078 INFO    ] process_and_cleanup_command: msg_id=1781238334078-0
[2026-06-12 09:55:37,080.080 INFO    ] is_command_expired: timestamp=2026-06-12T04:25:33.415Z, expiry=30s
[2026-06-12 09:55:37,190.190 INFO    ] Command removed from stream: 1781238334078-0. returning for processing...
[2026-06-12 09:55:37,193.193 INFO    ] ***** get_valid_command
[2026-06-12 09:55:37,196.196 INFO    ] {'data': '{"request_id":"start-order-1781238333415-7ctsn38nt","orderId":"TM09202301260612095451342","is_vending":false}', 'timeout': '10', 'command': 'start-order', 'timestamp': '2026-06-12T04:25:33.415Z', 'source': 'webapp'}
[2026-06-12 09:55:37,201.201 INFO    ] ***** Parsed command data: {'orderId': 'TM09202301260612095451342', 'request_id': 'start-order-1781238333415-7ctsn38nt', 'is_vending': False}
[2026-06-12 09:55:37,205.205 INFO    ] Handling start order...
[2026-06-12 09:55:37,208.208 INFO    ] handle_start_order_command
[2026-06-12 09:55:37,233.233 INFO    ] _send_start_order_success: request_id=start-order-1781238333415-7ctsn38nt, order_id=TM09202301260612095451342
[2026-06-12 09:55:37,237.237 INFO    ] [_send_start_order_success] Adding message to stream: machine:TM09202301
[2026-06-12 09:55:37,310.310 INFO    ] [_send_start_order_success] Message added to stream with ID: 1781238337316-0
[2026-06-12 09:55:37,314.314 INFO    ] ✅ Start-order command succeeded - order locked, waiting for process-order command
[2026-06-12 09:55:37,318.318 INFO    ] Checking for system updates...
[2026-06-12 09:55:37,388.388 INFO    ] 200
[2026-06-12 09:55:37,392.392 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:55:37,446.446 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 09:55:37,449.449 INFO    ] No update needed
[2026-06-12 09:55:37,452.452 INFO    ] Checking for camera pi updates...
[2026-06-12 09:55:37,527.527 INFO    ] 200
[2026-06-12 09:55:37,530.530 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:55:37,558.558 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 09:55:37,589.589 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 09:55:37,592.592 INFO    ] No camera update needed
[2026-06-12 09:55:37,595.595 INFO    ] Script finished. Safe exiting...
[2026-06-12 09:55:37,598.598 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 09:55:37,603.603 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 09:55:37,609.609 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-06-12 09:55:37,616.616 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 09:55:39,648.648 INFO    ] ================================================
[2026-06-12 09:55:39,663.663 INFO    ] Launching Daemon at Fri Jun 12 09:55:39 IST 2026
[2026-06-12 09:55:39,674.674 INFO    ] ================================================
[2026-06-12 09:55:40,041.041 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 09:55:40
[2026-06-12 09:55:40,380.380 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 09:55:40,521.521 INFO    ] Initializing speech engine...
[2026-06-12 09:55:40,534.534 INFO    ] 2026-06-12 09:55:40
[2026-06-12 09:55:40,748.748 INFO    ] 2026-06-12 09:55:40
[2026-06-12 09:55:40,778.778 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 09:55:40,965.965 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 09:55:40,975.975 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 09:55:41,102.102 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 09:55:41,159.159 INFO    ] time= 12/06/2026 09:55:41
[2026-06-12 09:55:41,198.198 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 09:55:41,205.205 INFO    ] Checking for existing commands in stream...
[2026-06-12 09:55:41,297.297 INFO    ] Found 2 existing command(s) in stream
[2026-06-12 09:55:41,325.325 INFO    ] Checking historical command: ID=1781238337316-0
[2026-06-12 09:55:41,327.327 INFO    ] process_and_cleanup_command: msg_id=1781238337316-0
[2026-06-12 09:55:41,330.330 INFO    ] is_command_expired: timestamp=2026-06-12T04:25:37.234274Z, expiry=30s
[2026-06-12 09:55:41,415.415 INFO    ] Command removed from stream: 1781238337316-0. returning for processing...
[2026-06-12 09:55:41,419.419 INFO    ] ***** get_valid_command
[2026-06-12 09:55:41,423.423 INFO    ] {'message_type': 'command_response', 'metadata_request_id': 'start-order-1781238333415-7ctsn38nt', 'metadata_order_id': 'TM09202301260612095451342', 'timestamp': '2026-06-12T04:25:37.234274Z', 'status': 'success', 'imei': 'TM09202301', 'message': 'start-order success'}
[2026-06-12 09:55:41,428.428 INFO    ] Checking historical command: ID=1781238338498-0
[2026-06-12 09:55:41,432.432 INFO    ] process_and_cleanup_command: msg_id=1781238338498-0
[2026-06-12 09:55:41,435.435 INFO    ] is_command_expired: timestamp=2026-06-12T04:25:37.695Z, expiry=30s
[2026-06-12 09:55:41,491.491 INFO    ] Command removed from stream: 1781238338498-0. returning for processing...
[2026-06-12 09:55:41,495.495 INFO    ] ***** get_valid_command
[2026-06-12 09:55:41,499.499 INFO    ] {'source': 'webapp', 'command': 'process-order', 'data': '{"request_id":"process-order-1781238337695-clvbpz9nm","orderId":"TM09202301260612095451342","is_vending":false,"accessCode":"99492644"}', 'timestamp': '2026-06-12T04:25:37.695Z', 'timeout': '60'}
[2026-06-12 09:55:41,502.502 INFO    ] ***** Parsed command data: {'accessCode': '99492644', 'orderId': 'TM09202301260612095451342', 'is_vending': False, 'request_id': 'process-order-1781238337695-clvbpz9nm'}
[2026-06-12 09:55:41,506.506 INFO    ] Handling process order...
[2026-06-12 09:55:41,509.509 INFO    ] Processing process-order command...
[2026-06-12 09:55:41,514.514 INFO    ] 🔍 Lock file Order ID: TM09202301260612095451342, TS: 2026-06-12 09:55:37
[2026-06-12 09:55:41,523.523 INFO    ] ✅ Order lock valid for TM09202301260612095451342
[2026-06-12 09:55:41,528.528 INFO    ] Received access code in process-order, skipping PHP API call
[2026-06-12 09:55:41,533.533 INFO    ] processing access code 99492644 for order TM09202301260612095451342
[2026-06-12 09:55:41,538.538 INFO    ] 🔍 Lock file Order ID: TM09202301260612095451342, TS: 2026-06-12 09:55:37
[2026-06-12 09:55:41,543.543 INFO    ] ✅ Order lock valid for TM09202301260612095451342
[2026-06-12 09:55:41,548.548 INFO    ] 2026-06-12 09:55:41
[2026-06-12 09:55:41,581.581 INFO    ] 200
[2026-06-12 09:55:41,586.586 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:55:41,588.588 INFO    ] 99492644
[2026-06-12 09:55:41,590.590 INFO    ] 2026-06-12 09:55:41
[2026-06-12 09:55:41,638.638 INFO    ] session id :385606260
[2026-06-12 09:55:41,652.652 INFO    ] http://localhost:5000/v2/getOrderByAccessCode?access_code=99492644&imei=TM09202301&session_id=385606260
[2026-06-12 09:55:42,995.995 INFO    ] 200
[2026-06-12 09:55:42,997.997 INFO    ] {"rstatus": true, "msg": "Order Data", "status": true, "data": {"mobile": "7981211315", "order_id": "TM09202301260612095451342", "bill_amount": "20", "invoice_bill": "20", "access_code": "99492644", "proposed_sku_json": [{"door_id": "2", "name": "Heritage A1 Spiced Butter Milk180ml", "tray_id": "43", "unit_price": 20, "offer_id": "", "qty": 1, "image_url": "https://images.tinymart.in/product/4500499-5719.webp", "offer_desc": "", "sku_total": 20, "mrp": "20", "skuid": "4500499"}]}}
[2026-06-12 09:55:42,999.999 INFO    ] 20
[2026-06-12 09:55:43,000.000 INFO    ] TM09202301260612095451342
[2026-06-12 09:55:43,001.001 INFO    ] 7981211315
[2026-06-12 09:55:43,003.003 INFO    ] 2026-06-12 09:55:43
[2026-06-12 09:55:43,005.005 INFO    ] Door Opening for user mobile ending with  one three one five 
[2026-06-12 09:55:43,007.007 INFO    ] Door Opening for user mobile ending with  one three one five 
[2026-06-12 09:55:43,008.008 INFO    ] cf0b638940e30b39a5dc6cc5f48b994d
[2026-06-12 09:55:43,010.010 INFO    ] 2026-06-12 09:55:43
[2026-06-12 09:55:43,011.011 INFO    ] creating audio file
[2026-06-12 09:55:43,050.050 INFO    ] Calling gTTS API with 60s timeout...
[2026-06-12 09:55:43,701.701 INFO    ] gTTS API call completed successfully
[2026-06-12 09:55:44,358.358 INFO    ] 2026-06-12 09:55:44
[2026-06-12 09:55:44,360.360 INFO    ] playing audio file
[2026-06-12 09:55:44,371.371 INFO    ] 2026-06-12 09:55:44
[2026-06-12 09:55:44,372.372 INFO    ] 2026-06-12 09:55:44
[2026-06-12 09:55:44,375.375 INFO    ] publish_status: order_id=TM09202301260612095451342
[2026-06-12 09:55:44,377.377 INFO    ] [publish_status] Adding message to stream: order:TM09202301260612095451342
[2026-06-12 09:55:44,466.466 INFO    ] [publish_status] Message added to stream with ID: 1781238344481-0
[2026-06-12 09:55:44,467.467 INFO    ] Published to order:TM09202301260612095451342: {'order_id': 'TM09202301260612095451342', 'server_response': '{"msg": "Order Data", "status": true, "data": {"order_id": "TM09202301260612095451342", "mobile": "7981211315", "bill_amount": "20", "invoice_bill": "20", "access_code": "99492644", "proposed_sku_json": [{"mrp": "20", "tray_id": "43", "image_url": "https://images.tinymart.in/product/4500499-5719.webp", "qty": 1, "sku_total": 20, "offer_desc": "", "offer_id": "", "skuid": "4500499", "door_id": "2", "name": "Heritage A1 Spiced Butter Milk180ml", "unit_price": 20}]}, "rstatus": true}', 'timestamp': '2026-06-12T04:25:44.373908Z', 'server_status': 'order-started'} (ID: 1781238344481-0)
[2026-06-12 09:55:44,824.824 INFO    ] {'order_id': 'TM09202301260612095451342', 'server_response': {'msg': 'Order Data', 'status': True, 'data': {'order_id': 'TM09202301260612095451342', 'mobile': '7981211315', 'bill_amount': '20', 'invoice_bill': '20', 'access_code': '99492644', 'proposed_sku_json': [{'mrp': '20', 'tray_id': '43', 'image_url': 'https://images.tinymart.in/product/4500499-5719.webp', 'qty': 1, 'sku_total': 20, 'offer_desc': '', 'offer_id': '', 'skuid': '4500499', 'door_id': '2', 'name': 'Heritage A1 Spiced Butter Milk180ml', 'unit_price': 20}]}, 'rstatus': True}, 'server_status': 'order-started'}
[2026-06-12 09:55:44,826.826 INFO    ] 200
[2026-06-12 09:55:44,828.828 INFO    ] {"data":{"order_id":"TM09202301260612095451342","server_response":{"msg":"Order Data","status":true,"data":{"order_id":"TM09202301260612095451342","mobile":"7981211315","bill_amount":"20","invoice_bill":"20","access_code":"99492644","proposed_sku_json":[{"mrp":"20","tray_id":"43","image_url":"https:\/\/images.tinymart.in\/product\/4500499-5719.webp","qty":1,"sku_total":20,"offer_desc":"","offer_id":"","skuid":"4500499","door_id":"2","name":"Heritage A1 Spiced Butter Milk180ml","unit_price":20}]},"rstatus":true},"server_status":"order-started"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-12 09:55:44,829.829 INFO    ] {'response': {'code': 'ORDER_EXISTS', 'data': 'order updated successfully', 'msg': 'order updated successfully', 'status': True}, 'data': {'order_id': 'TM09202301260612095451342', 'server_response': {'msg': 'Order Data', 'rstatus': True, 'data': {'order_id': 'TM09202301260612095451342', 'mobile': '7981211315', 'bill_amount': '20', 'invoice_bill': '20', 'access_code': '99492644', 'proposed_sku_json': [{'unit_price': 20, 'tray_id': '43', 'offer_id': '', 'qty': 1, 'sku_total': 20, 'offer_desc': '', 'mrp': '20', 'skuid': '4500499', 'door_id': '2', 'image_url': 'https://images.tinymart.in/product/4500499-5719.webp', 'name': 'Heritage A1 Spiced Butter Milk180ml'}]}, 'status': True}, 'server_status': 'order-started'}}
[2026-06-12 09:55:44,831.831 INFO    ] 2026-06-12 09:55:44
[2026-06-12 09:55:44,856.856 INFO    ] 200
[2026-06-12 09:55:44,858.858 INFO    ] True
[2026-06-12 09:55:44,971.971 INFO    ] 200
[2026-06-12 09:55:44,972.972 INFO    ] {"rstatus": false, "error": {"umessage": "In Progress", "code": 20001, "tmessage": "In Progress", "data": {}}, "SectionSKU": {"skus": [], "Header": "Thank you for bearing with us :)"}, "SectionMain": {"Header": "Processing Order"}, "SectionStatus": {"UI_Header": "", "Note": "", "Header": " Your order is under process  ", "SubHeader": "Please wait while we process your order"}, "voiceNote": "Please Wait", "status": "False"}
[2026-06-12 09:55:44,974.974 INFO    ] {'error': {'umessage': 'In Progress', 'data': {}, 'code': 20001, 'tmessage': 'In Progress'}, 'SectionMain': {'Header': 'Processing Order'}, 'SectionSKU': {'skus': [], 'Header': 'Thank you for bearing with us :)'}, 'rstatus': False, 'voiceNote': 'Please Wait', 'status': 'False', 'SectionStatus': {'SubHeader': 'Please wait while we process your order', 'UI_Header': '', 'Header': ' Your order is under process  ', 'Note': ''}}
[2026-06-12 09:55:44,976.976 INFO    ] *** process_order ***
[2026-06-12 09:55:46,245.245 INFO    ] 200
[2026-06-12 09:55:46,247.247 INFO    ] {"rstatus": false, "error": {"umessage": "In Progress", "code": 20001, "tmessage": "In Progress", "data": {}}, "SectionSKU": {"skus": [], "Header": "Thank you for bearing with us :)"}, "SectionMain": {"Header": "Processing Order"}, "SectionStatus": {"UI_Header": "", "Note": "", "Header": " Your order is under process  ", "SubHeader": "Please wait while we process your order"}, "voiceNote": "Please Wait", "status": "False"}
[2026-06-12 09:55:46,248.248 INFO    ] {'error': {'umessage': 'In Progress', 'data': {}, 'code': 20001, 'tmessage': 'In Progress'}, 'SectionMain': {'Header': 'Processing Order'}, 'SectionSKU': {'skus': [], 'Header': 'Thank you for bearing with us :)'}, 'rstatus': False, 'voiceNote': 'Please Wait', 'status': 'False', 'SectionStatus': {'SubHeader': 'Please wait while we process your order', 'UI_Header': '', 'Header': ' Your order is under process  ', 'Note': ''}}
[2026-06-12 09:55:46,250.250 INFO    ] *** process_order ***
[2026-06-12 09:55:47,520.520 INFO    ] 200
[2026-06-12 09:55:47,522.522 INFO    ] {"rstatus": false, "error": {"umessage": "In Progress", "code": 20001, "tmessage": "In Progress", "data": {}}, "SectionSKU": {"skus": [], "Header": "Thank you for bearing with us :)"}, "SectionMain": {"Header": "Processing Order"}, "SectionStatus": {"UI_Header": "", "Note": "", "Header": " Your order is under process  ", "SubHeader": "Please wait while we process your order"}, "voiceNote": "Please Wait", "status": "False"}
[2026-06-12 09:55:47,524.524 INFO    ] {'error': {'umessage': 'In Progress', 'data': {}, 'code': 20001, 'tmessage': 'In Progress'}, 'SectionMain': {'Header': 'Processing Order'}, 'SectionSKU': {'skus': [], 'Header': 'Thank you for bearing with us :)'}, 'rstatus': False, 'voiceNote': 'Please Wait', 'status': 'False', 'SectionStatus': {'SubHeader': 'Please wait while we process your order', 'UI_Header': '', 'Header': ' Your order is under process  ', 'Note': ''}}
[2026-06-12 09:55:47,525.525 INFO    ] *** process_order ***
[2026-06-12 09:55:48,782.782 INFO    ] 200
[2026-06-12 09:55:48,783.783 INFO    ] {"rstatus": true, "SectionSKU": {"skus": [], "Header": "Thank you for bearing with us :)"}, "SectionMain": {"Header": "Processing Order"}, "SectionStatus": {"UI_Header": "", "Note": "", "Header": " Your order is under process  ", "SubHeader": "Please wait while we process your order"}, "delay": 0, "voiceNote": "Please Wait", "status": "True"}
[2026-06-12 09:55:48,785.785 INFO    ] {'delay': 0, 'SectionMain': {'Header': 'Processing Order'}, 'SectionSKU': {'skus': [], 'Header': 'Thank you for bearing with us :)'}, 'rstatus': True, 'voiceNote': 'Please Wait', 'status': 'True', 'SectionStatus': {'SubHeader': 'Please wait while we process your order', 'UI_Header': '', 'Header': ' Your order is under process  ', 'Note': ''}}
[2026-06-12 09:55:48,786.786 INFO    ] *** process_order ***
[2026-06-12 09:55:48,787.787 INFO    ] publish_status: order_id=TM09202301260612095451342
[2026-06-12 09:55:48,789.789 INFO    ] [publish_status] Adding message to stream: order:TM09202301260612095451342
[2026-06-12 09:55:48,873.873 INFO    ] [publish_status] Message added to stream with ID: 1781238348889-0
[2026-06-12 09:55:48,874.874 INFO    ] Published to order:TM09202301260612095451342: {'order_id': 'TM09202301260612095451342', 'server_response': '{"delay": 0, "SectionMain": {"Header": "Processing Order"}, "SectionSKU": {"skus": [], "Header": "Thank you for bearing with us :)"}, "rstatus": true, "voiceNote": "Door is open...", "SectionStatus": {"SubHeader": "You can pull the door now.", "UI_Header": "", "Header": " Your order is under process  ", "Note": ""}, "status": "True"}', 'server_status': 'doorOpened'} (ID: 1781238348889-0)
[2026-06-12 09:55:49,920.920 INFO    ] 2026-06-12 09:55:49
[2026-06-12 09:55:49,923.923 INFO    ] publish_status: order_id=TM09202301260612095451342
[2026-06-12 09:55:49,932.932 INFO    ] [publish_status] Adding message to stream: order:TM09202301260612095451342
[2026-06-12 09:55:50,022.022 INFO    ] [publish_status] Message added to stream with ID: 1781238350036-0
[2026-06-12 09:55:50,024.024 INFO    ] Published to order:TM09202301260612095451342: {'order_id': 'TM09202301260612095451342', 'server_response': '{"delay": 0, "SectionMain": {"Header": "Processing Order"}, "SectionSKU": {"skus": [], "Header": "Thank you for bearing with us :)"}, "rstatus": true, "voiceNote": "Please Wait", "status": "True", "SectionStatus": {"SubHeader": "Please wait while we process your order", "UI_Header": "", "Header": " Your order is under process  ", "Note": ""}}', 'timestamp': '2026-06-12T04:25:49.921871Z', 'server_status': 'processOrder'} (ID: 1781238350036-0)
[2026-06-12 09:55:50,424.424 INFO    ] {'order_id': 'TM09202301260612095451342', 'server_response': {'delay': 0, 'SectionMain': {'Header': 'Processing Order'}, 'SectionSKU': {'skus': [], 'Header': 'Thank you for bearing with us :)'}, 'rstatus': True, 'voiceNote': 'Please Wait', 'status': 'True', 'SectionStatus': {'SubHeader': 'Please wait while we process your order', 'UI_Header': '', 'Header': ' Your order is under process  ', 'Note': ''}}, 'server_status': 'processOrder'}
[2026-06-12 09:55:50,426.426 INFO    ] 200
[2026-06-12 09:55:50,427.427 INFO    ] {"data":{"order_id":"TM09202301260612095451342","server_response":{"delay":0,"SectionMain":{"Header":"Processing Order"},"SectionSKU":{"skus":[],"Header":"Thank you for bearing with us :)"},"rstatus":true,"voiceNote":"Please Wait","status":"true","SectionStatus":{"SubHeader":"Please wait while we process your order","UI_Header":"","Header":" Your order is under process  ","Note":""}},"server_status":"processOrder"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-12 09:55:50,429.429 INFO    ] {'response': {'code': 'ORDER_EXISTS', 'data': 'order updated successfully', 'msg': 'order updated successfully', 'status': True}, 'data': {'order_id': 'TM09202301260612095451342', 'server_response': {'delay': 0, 'SectionMain': {'Header': 'Processing Order'}, 'SectionSKU': {'skus': [], 'Header': 'Thank you for bearing with us :)'}, 'rstatus': True, 'voiceNote': 'Please Wait', 'SectionStatus': {'SubHeader': 'Please wait while we process your order', 'UI_Header': '', 'Note': '', 'Header': ' Your order is under process  '}, 'status': 'true'}, 'server_status': 'processOrder'}}
[2026-06-12 09:55:50,431.431 INFO    ] 2026-06-12 09:55:50
[2026-06-12 09:55:50,433.433 INFO    ] None
[2026-06-12 09:55:50,435.435 INFO    ] Opening Door now
[2026-06-12 09:55:50,437.437 INFO    ] Opening Door now
[2026-06-12 09:55:50,438.438 INFO    ] 08e5d1063504bf393c26f0bfa436e9f9
[2026-06-12 09:55:50,441.441 INFO    ] 2026-06-12 09:55:50
[2026-06-12 09:55:50,442.442 INFO    ] playing audio file
[2026-06-12 09:55:50,454.454 INFO    ] 2026-06-12 09:55:50
[2026-06-12 09:55:50,456.456 INFO    ] 2026-06-12 09:55:50
[2026-06-12 09:55:53,520.520 INFO    ] 200
[2026-06-12 09:55:53,522.522 INFO    ] {"rstatus": false, "error": {"umessage": "In Progress", "code": 20001, "tmessage": "In Progress", "data": {}}, "SectionSKU": {"skus": [{"name": "Heritage A1 Spiced Butter Milk180ml", "qty": 1}], "Header": "Pick the below items from the door"}, "SectionMain": {"Header": "Door Open"}, "SectionStatus": {"UI_Header": "DOOR 2\nIS \nOPEN \nNOW", "Note": "Please Close the door after picking up products", "Header": "Please Close Door 2", "SubHeader": "Please Pick the Products and close the door"}, "voiceNote": "Door 2 is open now", "status": "False"}
[2026-06-12 09:55:53,523.523 INFO    ] {'error': {'umessage': 'In Progress', 'data': {}, 'code': 20001, 'tmessage': 'In Progress'}, 'SectionMain': {'Header': 'Door Open'}, 'SectionSKU': {'skus': [{'qty': 1, 'name': 'Heritage A1 Spiced Butter Milk180ml'}], 'Header': 'Pick the below items from the door'}, 'rstatus': False, 'voiceNote': 'Door 2 is open now', 'status': 'False', 'SectionStatus': {'SubHeader': 'Please Pick the Products and close the door', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'Header': 'Please Close Door 2', 'Note': 'Please Close the door after picking up products'}}
[2026-06-12 09:55:56,700.700 INFO    ] 200
[2026-06-12 09:55:56,702.702 INFO    ] {"rstatus": false, "error": {"umessage": "In Progress", "code": 20001, "tmessage": "In Progress", "data": {}}, "SectionSKU": {"skus": [{"name": "Heritage A1 Spiced Butter Milk180ml", "qty": 1}], "Header": "Pick the below items from the door"}, "SectionMain": {"Header": "Door Open"}, "SectionStatus": {"UI_Header": "DOOR 2\nIS \nOPEN \nNOW", "Note": "Please Close the door after picking up products", "Header": "Please Close Door 2", "SubHeader": "Please Pick the Products and close the door"}, "voiceNote": "Please close door 2", "status": "False"}
[2026-06-12 09:55:56,704.704 INFO    ] {'error': {'umessage': 'In Progress', 'data': {}, 'code': 20001, 'tmessage': 'In Progress'}, 'SectionMain': {'Header': 'Door Open'}, 'SectionSKU': {'skus': [{'qty': 1, 'name': 'Heritage A1 Spiced Butter Milk180ml'}], 'Header': 'Pick the below items from the door'}, 'rstatus': False, 'voiceNote': 'Please close door 2', 'status': 'False', 'SectionStatus': {'SubHeader': 'Please Pick the Products and close the door', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'Header': 'Please Close Door 2', 'Note': 'Please Close the door after picking up products'}}
[2026-06-12 09:55:59,938.938 INFO    ] 200
[2026-06-12 09:55:59,940.940 INFO    ] {"rstatus": false, "error": {"umessage": "In Progress", "code": 20001, "tmessage": "In Progress", "data": {}}, "SectionSKU": {"skus": [{"name": "Heritage A1 Spiced Butter Milk180ml", "qty": 1}], "Header": "Pick the below items from the door"}, "SectionMain": {"Header": "Door Open"}, "SectionStatus": {"UI_Header": "DOOR 2\nIS \nOPEN \nNOW", "Note": "Please Close the door after picking up products", "Header": "Please Close Door 2", "SubHeader": "Please Pick the Products and close the door"}, "voiceNote": "Please close door 2", "status": "False"}
[2026-06-12 09:55:59,951.951 INFO    ] Please close door 2
[2026-06-12 09:55:59,953.953 INFO    ] Please close door 2
[2026-06-12 09:55:59,954.954 INFO    ] 758e46684c76e887a5f58d4738034bed
[2026-06-12 09:55:59,956.956 INFO    ] 2026-06-12 09:55:59
[2026-06-12 09:55:59,957.957 INFO    ] playing audio file
[2026-06-12 09:55:59,968.968 INFO    ] 2026-06-12 09:55:59
[2026-06-12 09:55:59,971.971 INFO    ] publish_status: order_id=TM09202301260612095451342
[2026-06-12 09:55:59,972.972 INFO    ] [publish_status] Adding message to stream: order:TM09202301260612095451342
[2026-06-12 09:56:00,055.055 INFO    ] [publish_status] Message added to stream with ID: 1781238360070-0
[2026-06-12 09:56:00,057.057 INFO    ] Published to order:TM09202301260612095451342: {'order_id': 'TM09202301260612095451342', 'server_response': '{"error": {"umessage": "In Progress", "data": {}, "code": 20001, "tmessage": "In Progress"}, "SectionMain": {"Header": "Door Open"}, "SectionSKU": {"skus": [{"qty": 1, "name": "Heritage A1 Spiced Butter Milk180ml"}], "Header": "Pick the below items from the door"}, "rstatus": false, "voiceNote": "Please close door 2", "status": "False", "SectionStatus": {"SubHeader": "Please Pick the Products and close the door", "UI_Header": "DOOR 2\\nIS \\nOPEN \\nNOW", "Header": "Please Close Door 2", "Note": "Please Close the door after picking up products"}}', 'timestamp': '2026-06-12T04:25:59.969843Z', 'server_status': 'OrderStatus'} (ID: 1781238360070-0)
[2026-06-12 09:56:00,440.440 INFO    ] {'order_id': 'TM09202301260612095451342', 'server_response': {'error': {'umessage': 'In Progress', 'data': {}, 'code': 20001, 'tmessage': 'In Progress'}, 'SectionMain': {'Header': 'Door Open'}, 'SectionSKU': {'skus': [{'qty': 1, 'name': 'Heritage A1 Spiced Butter Milk180ml'}], 'Header': 'Pick the below items from the door'}, 'rstatus': False, 'voiceNote': 'Please close door 2', 'status': 'False', 'SectionStatus': {'SubHeader': 'Please Pick the Products and close the door', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'Header': 'Please Close Door 2', 'Note': 'Please Close the door after picking up products'}}, 'server_status': 'OrderStatus'}
[2026-06-12 09:56:00,441.441 INFO    ] 200
[2026-06-12 09:56:00,443.443 INFO    ] {"data":{"order_id":"TM09202301260612095451342","server_response":{"error":{"umessage":"In Progress","data":[],"code":20001,"tmessage":"In Progress"},"SectionMain":{"Header":"Door Open"},"SectionSKU":{"skus":[{"qty":1,"name":"Heritage A1 Spiced Butter Milk180ml"}],"Header":"Pick the below items from the door"},"rstatus":false,"voiceNote":"Please close door 2","status":"false","SectionStatus":{"SubHeader":"Please Pick the Products and close the door","UI_Header":"DOOR 2\nIS \nOPEN \nNOW","Header":"Please Close Door 2","Note":"Please Close the door after picking up products"}},"server_status":"OrderStatus"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-12 09:56:00,445.445 INFO    ] {'response': {'code': 'ORDER_EXISTS', 'data': 'order updated successfully', 'msg': 'order updated successfully', 'status': True}, 'data': {'order_id': 'TM09202301260612095451342', 'server_response': {'error': {'umessage': 'In Progress', 'data': [], 'code': 20001, 'tmessage': 'In Progress'}, 'SectionMain': {'Header': 'Door Open'}, 'SectionSKU': {'skus': [{'name': 'Heritage A1 Spiced Butter Milk180ml', 'qty': 1}], 'Header': 'Pick the below items from the door'}, 'rstatus': False, 'voiceNote': 'Please close door 2', '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'}, 'status': 'false'}, 'server_status': 'OrderStatus'}}
[2026-06-12 09:56:00,446.446 INFO    ] {'error': {'umessage': 'In Progress', 'data': {}, 'code': 20001, 'tmessage': 'In Progress'}, 'SectionMain': {'Header': 'Door Open'}, 'SectionSKU': {'skus': [{'qty': 1, 'name': 'Heritage A1 Spiced Butter Milk180ml'}], 'Header': 'Pick the below items from the door'}, 'rstatus': False, 'voiceNote': 'Please close door 2', 'status': 'False', 'SectionStatus': {'SubHeader': 'Please Pick the Products and close the door', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'Header': 'Please Close Door 2', 'Note': 'Please Close the door after picking up products'}}
[2026-06-12 09:56:03,483.483 INFO    ] 200
[2026-06-12 09:56:03,484.484 INFO    ] {"rstatus": true, "SectionSKU": {"skus": [], "Header": "If you like us, tell others... else tell us"}, "SectionMain": {"Header": "Door Closed"}, "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, "voiceNote": "Transaction Completed", "status": "True"}
[2026-06-12 09:56:03,486.486 INFO    ] {'delay': 100, 'SectionMain': {'Header': 'Door Closed'}, 'SectionSKU': {'skus': [], 'Header': 'If you like us, tell others... else tell us'}, 'rstatus': True, 'voiceNote': 'Transaction Completed', 'status': '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'}}
[2026-06-12 09:56:03,488.488 INFO    ] 2026-06-12 09:56:03
[2026-06-12 09:56:03,489.489 INFO    ] Order Completed 
[2026-06-12 09:56:03,491.491 INFO    ] Order Completed 
[2026-06-12 09:56:03,492.492 INFO    ] 193c8a8cf3bf490ccfe0b23598544a83
[2026-06-12 09:56:03,494.494 INFO    ] 2026-06-12 09:56:03
[2026-06-12 09:56:03,496.496 INFO    ] playing audio file
[2026-06-12 09:56:03,507.507 INFO    ] 2026-06-12 09:56:03
[2026-06-12 09:56:03,508.508 INFO    ] {'delay': 100, 'SectionMain': {'Header': 'Door Closed'}, 'SectionSKU': {'skus': [], 'Header': 'If you like us, tell others... else tell us'}, 'rstatus': True, 'voiceNote': 'Transaction Completed', 'status': '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'}}
[2026-06-12 09:56:03,510.510 INFO    ] 2026-06-12 09:56:03
[2026-06-12 09:56:04,791.791 INFO    ] 200
[2026-06-12 09:56:04,793.793 INFO    ] {"rstatus": true, "orderId": "TM09202301260612095451342", "logic": "WBL", "anomaly": 0, "res": "True", "total_amount": 20.0, "skus": [{"door_id": "", "sku_total": 20.0, "skuid": "4500499", "mrp": "20", "tray_id": "43", "image_url": "https://images.tinymart.in/product/4500499-5719.webp", "name": "Heritage A1 Spiced Butter Milk180ml per peice", "qty": 1, "unit_price": "20"}]}
[2026-06-12 09:56:04,795.795 INFO    ] {'skus': [{'unit_price': '20', 'skuid': '4500499', 'image_url': 'https://images.tinymart.in/product/4500499-5719.webp', 'qty': 1, 'mrp': '20', 'sku_total': 20.0, 'door_id': '', 'tray_id': '43', 'name': 'Heritage A1 Spiced Butter Milk180ml per peice'}], 'logic': 'WBL', 'rstatus': True, 'orderId': 'TM09202301260612095451342', 'anomaly': 0, 'total_amount': 20.0, 'res': 'True'}
[2026-06-12 09:56:04,796.796 INFO    ] {'skus': [{'unit_price': '20', 'skuid': '4500499', 'image_url': 'https://images.tinymart.in/product/4500499-5719.webp', 'qty': 1, 'mrp': '20', 'sku_total': 20.0, 'door_id': '', 'tray_id': '43', 'name': 'Heritage A1 Spiced Butter Milk180ml per peice'}], 'logic': 'WBL', 'rstatus': True, 'orderId': 'TM09202301260612095451342', 'anomaly': 0, 'total_amount': 20.0, 'res': 'True'}
[2026-06-12 09:56:04,798.798 INFO    ] 2026-06-12 09:56:04
[2026-06-12 09:56:04,800.800 INFO    ] 2026-06-12 09:56:04
[2026-06-12 09:56:04,801.801 INFO    ] 20
[2026-06-12 09:56:04,803.803 INFO    ] 2026-06-12 09:56:04
[2026-06-12 09:56:04,804.804 INFO    ] 2026-06-12 09:56:04
[2026-06-12 09:56:04,806.806 INFO    ]  Your Bill Amount is 20
[2026-06-12 09:56:04,807.807 INFO    ]  Your Bill Amount is 20
[2026-06-12 09:56:04,809.809 INFO    ] 69e7720cf62ffa67ab0522541575e508
[2026-06-12 09:56:04,810.810 INFO    ] 2026-06-12 09:56:04
[2026-06-12 09:56:04,812.812 INFO    ] playing audio file
[2026-06-12 09:56:04,824.824 INFO    ] 2026-06-12 09:56:04
[2026-06-12 09:56:04,826.826 INFO    ] 2026-06-12 09:56:04
[2026-06-12 09:56:04,828.828 INFO    ] publish_status: order_id=TM09202301260612095451342
[2026-06-12 09:56:04,830.830 INFO    ] [publish_status] Adding message to stream: order:TM09202301260612095451342
[2026-06-12 09:56:04,924.924 INFO    ] [publish_status] Message added to stream with ID: 1781238364940-0
[2026-06-12 09:56:04,925.925 INFO    ] Published to order:TM09202301260612095451342: {'order_id': 'TM09202301260612095451342', 'server_response': '{"skus": [{"unit_price": "20", "skuid": "4500499", "image_url": "https://images.tinymart.in/product/4500499-5719.webp", "qty": 1, "mrp": "20", "sku_total": 20.0, "door_id": "", "tray_id": "43", "name": "Heritage A1 Spiced Butter Milk180ml per peice"}], "logic": "WBL", "rstatus": true, "orderId": "TM09202301260612095451342", "anomaly": 0, "total_amount": 20.0, "res": "True"}', 'timestamp': '2026-06-12T04:26:04.827319Z', 'server_status': 'invoiceOrder'} (ID: 1781238364940-0)
[2026-06-12 09:56:05,410.410 INFO    ] {'order_id': 'TM09202301260612095451342', 'server_response': {'skus': [{'unit_price': '20', 'skuid': '4500499', 'image_url': 'https://images.tinymart.in/product/4500499-5719.webp', 'qty': 1, 'mrp': '20', 'sku_total': 20.0, 'door_id': '', 'tray_id': '43', 'name': 'Heritage A1 Spiced Butter Milk180ml per peice'}], 'logic': 'WBL', 'rstatus': True, 'orderId': 'TM09202301260612095451342', 'anomaly': 0, 'total_amount': 20.0, 'res': 'True'}, 'server_status': 'invoiceOrder'}
[2026-06-12 09:56:05,412.412 INFO    ] 200
[2026-06-12 09:56:05,413.413 INFO    ] {"data":{"order_id":"TM09202301260612095451342","server_response":{"skus":[{"unit_price":"20","skuid":"4500499","image_url":"https:\/\/images.tinymart.in\/product\/4500499-5719.webp","qty":1,"mrp":"20","sku_total":20,"door_id":"","tray_id":"43","name":"Heritage A1 Spiced Butter Milk180ml per peice"}],"logic":"WBL","rstatus":true,"orderId":"TM09202301260612095451342","anomaly":0,"total_amount":20,"res":"true"},"server_status":"invoiceOrder"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-12 09:56:05,415.415 INFO    ] {'response': {'code': 'ORDER_EXISTS', 'data': 'order updated successfully', 'msg': 'order updated successfully', 'status': True}, 'data': {'order_id': 'TM09202301260612095451342', 'server_response': {'orderId': 'TM09202301260612095451342', 'res': 'true', 'rstatus': True, 'skus': [{'skuid': '4500499', 'name': 'Heritage A1 Spiced Butter Milk180ml per peice', 'qty': 1, 'sku_total': 20, 'tray_id': '43', 'mrp': '20', 'unit_price': '20', 'image_url': 'https://images.tinymart.in/product/4500499-5719.webp', 'door_id': ''}], 'anomaly': 0, 'total_amount': 20, 'logic': 'WBL'}, 'server_status': 'invoiceOrder'}}
[2026-06-12 09:56:05,417.417 INFO    ] {'response': {'code': 'ORDER_EXISTS', 'data': 'order updated successfully', 'msg': 'order updated successfully', 'status': True}, 'data': {'order_id': 'TM09202301260612095451342', 'server_response': {'orderId': 'TM09202301260612095451342', 'res': 'true', 'rstatus': True, 'skus': [{'skuid': '4500499', 'name': 'Heritage A1 Spiced Butter Milk180ml per peice', 'qty': 1, 'sku_total': 20, 'tray_id': '43', 'mrp': '20', 'unit_price': '20', 'image_url': 'https://images.tinymart.in/product/4500499-5719.webp', 'door_id': ''}], 'anomaly': 0, 'total_amount': 20, 'logic': 'WBL'}, 'server_status': 'invoiceOrder'}}
[2026-06-12 09:56:05,419.419 INFO    ] 2026-06-12 09:56:05
[2026-06-12 09:56:08,039.039 INFO    ] 200
[2026-06-12 09:56:08,042.042 INFO    ] {"tray_sync": ["TM09202301260612095451342", "TM09202301260612095451342", "TM09202301260612095451342", "TM09202301260612095451342", "TM09202301260612095451342", "TM09202301260612095451342"], "orders_data": [], "orders_synced": [], "status": true, "order_items_synced": ["TM09202301260612095451342_0"], "tray_synced": ["TM09202301260612095451342", "TM09202301260612095451342", "TM09202301260612095451342", "TM09202301260612095451342", "TM09202301260612095451342", "TM09202301260612095451342", "TM09202301260612095451342", "TM09202301260612095451342", "TM09202301260612095451342", "TM09202301260612095451342", "TM09202301260612095451342", "TM09202301260612095451342", "TM09202301260612095451342", "TM09202301260612095451342", "TM09202301260612095451342", "TM09202301260612095451342", "TM09202301260612095451342", "TM09202301260612095451342", "TM09202301260612095451342", "TM09202301260612095451342", "TM09202301260612095451342", "TM09202301260612095451342", "TM09202301260612095451342", "TM09202301260612095451342", "TM09202301260612095451342", "TM09202301260612095451342", "TM09202301260612095451342"], "orders_data_synced": [], "orders": [], "order_items": []}
[2026-06-12 09:56:08,045.045 INFO    ] 2026-06-12 09:56:08
[2026-06-12 09:56:08,144.144 INFO    ] 200
[2026-06-12 09:56:08,145.145 INFO    ] True
[2026-06-12 09:56:08,146.146 INFO    ] cleanup_start_order_file_after_processing: order_id=TM09202301260612095451342
[2026-06-12 09:56:08,148.148 INFO    ] start order file deleted
[2026-06-12 09:56:08,149.149 INFO    ] Checking for system updates...
[2026-06-12 09:56:08,169.169 INFO    ] 200
[2026-06-12 09:56:08,170.170 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:56:08,201.201 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 09:56:08,202.202 INFO    ] No update needed
[2026-06-12 09:56:08,204.204 INFO    ] Checking for camera pi updates...
[2026-06-12 09:56:08,223.223 INFO    ] 200
[2026-06-12 09:56:08,224.224 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:56:08,247.247 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 09:56:08,292.292 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 09:56:08,293.293 INFO    ] No camera update needed
[2026-06-12 09:56:08,294.294 INFO    ] Script finished. Safe exiting...
[2026-06-12 09:56:08,296.296 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 09:56:08,299.299 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 09:56:08,301.301 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 09:56:10,341.341 INFO    ] ================================================
[2026-06-12 09:56:10,356.356 INFO    ] Launching Daemon at Fri Jun 12 09:56:10 IST 2026
[2026-06-12 09:56:10,367.367 INFO    ] ================================================
[2026-06-12 09:56:10,735.735 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 09:56:10
[2026-06-12 09:56:11,073.073 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 09:56:11,225.225 INFO    ] Initializing speech engine...
[2026-06-12 09:56:11,230.230 INFO    ] 2026-06-12 09:56:11
[2026-06-12 09:56:11,441.441 INFO    ] 2026-06-12 09:56:11
[2026-06-12 09:56:11,473.473 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 09:56:11,660.660 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 09:56:11,664.664 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 09:56:11,823.823 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 09:56:11,875.875 INFO    ] time= 12/06/2026 09:56:11
[2026-06-12 09:56:11,901.901 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 09:56:11,903.903 INFO    ] Checking for existing commands in stream...
[2026-06-12 09:56:11,970.970 INFO    ] No existing commands found in stream
[2026-06-12 09:56:16,979.979 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 09:56:16,983.983 INFO    ] Waiting 0.05 seconds before fallback handling...
[2026-06-12 09:56:17,386.386 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 09:56:17,387.387 INFO    ] Checking for system updates...
[2026-06-12 09:56:17,408.408 INFO    ] 200
[2026-06-12 09:56:17,410.410 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:56:17,442.442 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 09:56:17,444.444 INFO    ] No update needed
[2026-06-12 09:56:17,445.445 INFO    ] Checking for camera pi updates...
[2026-06-12 09:56:17,465.465 INFO    ] 200
[2026-06-12 09:56:17,467.467 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:56:17,491.491 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 09:56:17,526.526 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 09:56:17,528.528 INFO    ] No camera update needed
[2026-06-12 09:56:17,529.529 INFO    ] Script finished. Safe exiting...
[2026-06-12 09:56:17,531.531 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 09:56:17,534.534 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 09:56:17,537.537 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 09:56:19,575.575 INFO    ] ================================================
[2026-06-12 09:56:19,591.591 INFO    ] Launching Daemon at Fri Jun 12 09:56:19 IST 2026
[2026-06-12 09:56:19,602.602 INFO    ] ================================================
[2026-06-12 09:56:19,951.951 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 09:56:19
[2026-06-12 09:56:20,294.294 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 09:56:20,450.450 INFO    ] Initializing speech engine...
[2026-06-12 09:56:20,455.455 INFO    ] 2026-06-12 09:56:20
[2026-06-12 09:56:20,663.663 INFO    ] 2026-06-12 09:56:20
[2026-06-12 09:56:20,693.693 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 09:56:20,876.876 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 09:56:20,886.886 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 09:56:21,017.017 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 09:56:21,084.084 INFO    ] time= 12/06/2026 09:56:21
[2026-06-12 09:56:21,109.109 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 09:56:21,115.115 INFO    ] Checking for existing commands in stream...
[2026-06-12 09:56:21,181.181 INFO    ] No existing commands found in stream
[2026-06-12 09:56:26,192.192 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 09:56:26,197.197 INFO    ] Waiting 1.86 seconds before fallback handling...
[2026-06-12 09:56:28,419.419 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 09:56:28,421.421 INFO    ] Checking for system updates...
[2026-06-12 09:56:28,441.441 INFO    ] 200
[2026-06-12 09:56:28,443.443 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:56:28,473.473 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 09:56:28,474.474 INFO    ] No update needed
[2026-06-12 09:56:28,475.475 INFO    ] Checking for camera pi updates...
[2026-06-12 09:56:28,496.496 INFO    ] 200
[2026-06-12 09:56:28,497.497 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:56:28,523.523 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 09:56:28,560.560 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 09:56:28,561.561 INFO    ] No camera update needed
[2026-06-12 09:56:28,563.563 INFO    ] Script finished. Safe exiting...
[2026-06-12 09:56:28,564.564 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 09:56:28,567.567 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 09:56:28,569.569 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 09:56:30,608.608 INFO    ] ================================================
[2026-06-12 09:56:30,624.624 INFO    ] Launching Daemon at Fri Jun 12 09:56:30 IST 2026
[2026-06-12 09:56:30,635.635 INFO    ] ================================================
[2026-06-12 09:56:31,009.009 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 09:56:31
[2026-06-12 09:56:31,350.350 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 09:56:31,524.524 INFO    ] Initializing speech engine...
[2026-06-12 09:56:31,529.529 INFO    ] 2026-06-12 09:56:31
[2026-06-12 09:56:31,746.746 INFO    ] 2026-06-12 09:56:31
[2026-06-12 09:56:31,776.776 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 09:56:31,974.974 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 09:56:31,978.978 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 09:56:32,114.114 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 09:56:32,182.182 INFO    ] time= 12/06/2026 09:56:32
[2026-06-12 09:56:32,220.220 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 09:56:32,226.226 INFO    ] Checking for existing commands in stream...
[2026-06-12 09:56:32,294.294 INFO    ] No existing commands found in stream
[2026-06-12 09:56:37,304.304 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 09:56:37,307.307 INFO    ] Waiting 0.84 seconds before fallback handling...
[2026-06-12 09:56:38,517.517 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 09:56:38,519.519 INFO    ] Checking for system updates...
[2026-06-12 09:56:38,540.540 INFO    ] 200
[2026-06-12 09:56:38,541.541 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:56:38,571.571 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 09:56:38,573.573 INFO    ] No update needed
[2026-06-12 09:56:38,574.574 INFO    ] Checking for camera pi updates...
[2026-06-12 09:56:38,593.593 INFO    ] 200
[2026-06-12 09:56:38,594.594 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:56:38,620.620 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 09:56:38,661.661 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 09:56:38,662.662 INFO    ] No camera update needed
[2026-06-12 09:56:38,663.663 INFO    ] Script finished. Safe exiting...
[2026-06-12 09:56:38,665.665 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 09:56:38,667.667 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 09:56:38,670.670 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 09:56:40,710.710 INFO    ] ================================================
[2026-06-12 09:56:40,725.725 INFO    ] Launching Daemon at Fri Jun 12 09:56:40 IST 2026
[2026-06-12 09:56:40,736.736 INFO    ] ================================================
[2026-06-12 09:56:41,088.088 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 09:56:41
[2026-06-12 09:56:41,404.404 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 09:56:41,536.536 INFO    ] Initializing speech engine...
[2026-06-12 09:56:41,539.539 INFO    ] 2026-06-12 09:56:41
[2026-06-12 09:56:41,757.757 INFO    ] 2026-06-12 09:56:41
[2026-06-12 09:56:41,785.785 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 09:56:41,908.908 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 09:56:41,975.975 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 09:56:42,120.120 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 09:56:42,166.166 INFO    ] time= 12/06/2026 09:56:42
[2026-06-12 09:56:42,206.206 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 09:56:42,230.230 INFO    ] Checking for existing commands in stream...
[2026-06-12 09:56:42,359.359 INFO    ] No existing commands found in stream
[2026-06-12 09:56:47,370.370 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 09:56:47,373.373 INFO    ] Waiting 2.34 seconds before fallback handling...
[2026-06-12 09:56:50,121.121 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 09:56:50,122.122 INFO    ] Checking for system updates...
[2026-06-12 09:56:50,143.143 INFO    ] 200
[2026-06-12 09:56:50,145.145 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:56:50,175.175 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 09:56:50,177.177 INFO    ] No update needed
[2026-06-12 09:56:50,178.178 INFO    ] Checking for camera pi updates...
[2026-06-12 09:56:50,197.197 INFO    ] 200
[2026-06-12 09:56:50,199.199 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:56:50,222.222 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 09:56:50,263.263 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 09:56:50,264.264 INFO    ] No camera update needed
[2026-06-12 09:56:50,265.265 INFO    ] Script finished. Safe exiting...
[2026-06-12 09:56:50,266.266 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 09:56:50,269.269 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 09:56:50,272.272 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 09:56:52,313.313 INFO    ] ================================================
[2026-06-12 09:56:52,327.327 INFO    ] Launching Daemon at Fri Jun 12 09:56:52 IST 2026
[2026-06-12 09:56:52,338.338 INFO    ] ================================================
[2026-06-12 09:56:52,701.701 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 09:56:52
[2026-06-12 09:56:53,014.014 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 09:56:53,146.146 INFO    ] Initializing speech engine...
[2026-06-12 09:56:53,150.150 INFO    ] 2026-06-12 09:56:53
[2026-06-12 09:56:53,342.342 INFO    ] 2026-06-12 09:56:53
[2026-06-12 09:56:53,388.388 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 09:56:53,548.548 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 09:56:53,593.593 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 09:56:53,763.763 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 09:56:53,796.796 INFO    ] time= 12/06/2026 09:56:53
[2026-06-12 09:56:53,850.850 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 09:56:53,874.874 INFO    ] Checking for existing commands in stream...
[2026-06-12 09:56:53,951.951 INFO    ] No existing commands found in stream
[2026-06-12 09:56:58,962.962 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 09:56:58,964.964 INFO    ] Waiting 2.51 seconds before fallback handling...
[2026-06-12 09:57:01,935.935 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 09:57:01,937.937 INFO    ] Checking for system updates...
[2026-06-12 09:57:01,963.963 INFO    ] 200
[2026-06-12 09:57:01,965.965 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:57:02,008.008 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 09:57:02,010.010 INFO    ] No update needed
[2026-06-12 09:57:02,012.012 INFO    ] Checking for camera pi updates...
[2026-06-12 09:57:02,041.041 INFO    ] 200
[2026-06-12 09:57:02,043.043 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:57:02,086.086 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 09:57:02,113.113 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 09:57:02,115.115 INFO    ] No camera update needed
[2026-06-12 09:57:02,117.117 INFO    ] Script finished. Safe exiting...
[2026-06-12 09:57:02,118.118 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 09:57:02,123.123 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 09:57:02,127.127 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 09:57:04,166.166 INFO    ] ================================================
[2026-06-12 09:57:04,181.181 INFO    ] Launching Daemon at Fri Jun 12 09:57:04 IST 2026
[2026-06-12 09:57:04,192.192 INFO    ] ================================================
[2026-06-12 09:57:04,514.514 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 09:57:04
[2026-06-12 09:57:04,829.829 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 09:57:04,972.972 INFO    ] Initializing speech engine...
[2026-06-12 09:57:04,977.977 INFO    ] 2026-06-12 09:57:04
[2026-06-12 09:57:05,181.181 INFO    ] 2026-06-12 09:57:05
[2026-06-12 09:57:05,208.208 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 09:57:05,346.346 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 09:57:05,394.394 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 09:57:05,528.528 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 09:57:05,585.585 INFO    ] time= 12/06/2026 09:57:05
[2026-06-12 09:57:05,614.614 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 09:57:05,624.624 INFO    ] Checking for existing commands in stream...
[2026-06-12 09:57:05,695.695 INFO    ] No existing commands found in stream
[2026-06-12 09:57:10,704.704 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 09:57:10,707.707 INFO    ] Waiting 2.64 seconds before fallback handling...
[2026-06-12 09:57:13,718.718 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 09:57:13,719.719 INFO    ] Checking for system updates...
[2026-06-12 09:57:13,741.741 INFO    ] 200
[2026-06-12 09:57:13,743.743 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:57:13,775.775 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 09:57:13,777.777 INFO    ] No update needed
[2026-06-12 09:57:13,778.778 INFO    ] Checking for camera pi updates...
[2026-06-12 09:57:13,798.798 INFO    ] 200
[2026-06-12 09:57:13,799.799 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:57:13,822.822 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 09:57:13,862.862 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 09:57:13,863.863 INFO    ] No camera update needed
[2026-06-12 09:57:13,865.865 INFO    ] Script finished. Safe exiting...
[2026-06-12 09:57:13,866.866 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 09:57:13,869.869 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 09:57:13,871.871 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 09:57:15,911.911 INFO    ] ================================================
[2026-06-12 09:57:15,927.927 INFO    ] Launching Daemon at Fri Jun 12 09:57:15 IST 2026
[2026-06-12 09:57:15,938.938 INFO    ] ================================================
[2026-06-12 09:57:16,305.305 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 09:57:16
[2026-06-12 09:57:16,651.651 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 09:57:16,799.799 INFO    ] Initializing speech engine...
[2026-06-12 09:57:16,809.809 INFO    ] 2026-06-12 09:57:16
[2026-06-12 09:57:17,024.024 INFO    ] 2026-06-12 09:57:17
[2026-06-12 09:57:17,055.055 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 09:57:17,244.244 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 09:57:17,253.253 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 09:57:17,382.382 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 09:57:17,445.445 INFO    ] time= 12/06/2026 09:57:17
[2026-06-12 09:57:17,480.480 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 09:57:17,486.486 INFO    ] Checking for existing commands in stream...
[2026-06-12 09:57:17,555.555 INFO    ] No existing commands found in stream
[2026-06-12 09:57:22,569.569 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 09:57:22,573.573 INFO    ] Waiting 1.00 seconds before fallback handling...
[2026-06-12 09:57:23,949.949 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 09:57:23,951.951 INFO    ] Checking for system updates...
[2026-06-12 09:57:23,972.972 INFO    ] 200
[2026-06-12 09:57:23,974.974 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:57:24,004.004 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 09:57:24,006.006 INFO    ] No update needed
[2026-06-12 09:57:24,007.007 INFO    ] Checking for camera pi updates...
[2026-06-12 09:57:24,027.027 INFO    ] 200
[2026-06-12 09:57:24,029.029 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:57:24,056.056 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 09:57:24,092.092 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 09:57:24,094.094 INFO    ] No camera update needed
[2026-06-12 09:57:24,095.095 INFO    ] Script finished. Safe exiting...
[2026-06-12 09:57:24,096.096 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 09:57:24,100.100 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 09:57:24,103.103 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 09:57:26,142.142 INFO    ] ================================================
[2026-06-12 09:57:26,157.157 INFO    ] Launching Daemon at Fri Jun 12 09:57:26 IST 2026
[2026-06-12 09:57:26,168.168 INFO    ] ================================================
[2026-06-12 09:57:26,545.545 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 09:57:26
[2026-06-12 09:57:26,885.885 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 09:57:27,038.038 INFO    ] Initializing speech engine...
[2026-06-12 09:57:27,043.043 INFO    ] 2026-06-12 09:57:27
[2026-06-12 09:57:27,255.255 INFO    ] 2026-06-12 09:57:27
[2026-06-12 09:57:27,284.284 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 09:57:27,471.471 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 09:57:27,481.481 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 09:57:27,609.609 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 09:57:27,679.679 INFO    ] time= 12/06/2026 09:57:27
[2026-06-12 09:57:27,704.704 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 09:57:27,710.710 INFO    ] Checking for existing commands in stream...
[2026-06-12 09:57:27,778.778 INFO    ] No existing commands found in stream
[2026-06-12 09:57:32,792.792 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 09:57:32,796.796 INFO    ] Waiting 2.10 seconds before fallback handling...
[2026-06-12 09:57:35,274.274 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 09:57:35,276.276 INFO    ] Checking for system updates...
[2026-06-12 09:57:35,298.298 INFO    ] 200
[2026-06-12 09:57:35,300.300 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:57:35,336.336 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 09:57:35,337.337 INFO    ] No update needed
[2026-06-12 09:57:35,339.339 INFO    ] Checking for camera pi updates...
[2026-06-12 09:57:35,362.362 INFO    ] 200
[2026-06-12 09:57:35,364.364 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:57:35,390.390 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 09:57:35,428.428 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 09:57:35,430.430 INFO    ] No camera update needed
[2026-06-12 09:57:35,432.432 INFO    ] Script finished. Safe exiting...
[2026-06-12 09:57:35,433.433 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 09:57:35,436.436 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 09:57:35,439.439 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 09:57:37,478.478 INFO    ] ================================================
[2026-06-12 09:57:37,493.493 INFO    ] Launching Daemon at Fri Jun 12 09:57:37 IST 2026
[2026-06-12 09:57:37,504.504 INFO    ] ================================================
[2026-06-12 09:57:37,890.890 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 09:57:37
[2026-06-12 09:57:38,238.238 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 09:57:38,387.387 INFO    ] Initializing speech engine...
[2026-06-12 09:57:38,392.392 INFO    ] 2026-06-12 09:57:38
[2026-06-12 09:57:38,611.611 INFO    ] 2026-06-12 09:57:38
[2026-06-12 09:57:38,659.659 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 09:57:38,870.870 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 09:57:38,873.873 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 09:57:39,002.002 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 09:57:39,058.058 INFO    ] time= 12/06/2026 09:57:39
[2026-06-12 09:57:39,099.099 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 09:57:39,104.104 INFO    ] Checking for existing commands in stream...
[2026-06-12 09:57:39,176.176 INFO    ] No existing commands found in stream
[2026-06-12 09:57:44,185.185 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 09:57:44,188.188 INFO    ] Waiting 1.24 seconds before fallback handling...
[2026-06-12 09:57:45,809.809 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 09:57:45,811.811 INFO    ] Checking for system updates...
[2026-06-12 09:57:45,832.832 INFO    ] 200
[2026-06-12 09:57:45,833.833 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:57:45,866.866 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 09:57:45,868.868 INFO    ] No update needed
[2026-06-12 09:57:45,869.869 INFO    ] Checking for camera pi updates...
[2026-06-12 09:57:45,889.889 INFO    ] 200
[2026-06-12 09:57:45,891.891 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:57:45,914.914 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 09:57:45,957.957 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 09:57:45,959.959 INFO    ] No camera update needed
[2026-06-12 09:57:45,960.960 INFO    ] Script finished. Safe exiting...
[2026-06-12 09:57:45,962.962 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 09:57:45,965.965 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 09:57:45,968.968 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 09:57:48,006.006 INFO    ] ================================================
[2026-06-12 09:57:48,023.023 INFO    ] Launching Daemon at Fri Jun 12 09:57:48 IST 2026
[2026-06-12 09:57:48,034.034 INFO    ] ================================================
[2026-06-12 09:57:48,359.359 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 09:57:48
[2026-06-12 09:57:48,669.669 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 09:57:48,806.806 INFO    ] Initializing speech engine...
[2026-06-12 09:57:48,816.816 INFO    ] 2026-06-12 09:57:48
[2026-06-12 09:57:49,023.023 INFO    ] 2026-06-12 09:57:49
[2026-06-12 09:57:49,053.053 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 09:57:49,237.237 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 09:57:49,241.241 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 09:57:49,378.378 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 09:57:49,445.445 INFO    ] time= 12/06/2026 09:57:49
[2026-06-12 09:57:49,469.469 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 09:57:49,475.475 INFO    ] Checking for existing commands in stream...
[2026-06-12 09:57:49,542.542 INFO    ] No existing commands found in stream
[2026-06-12 09:57:54,551.551 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 09:57:54,554.554 INFO    ] Waiting 1.74 seconds before fallback handling...
[2026-06-12 09:57:56,667.667 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 09:57:56,669.669 INFO    ] Checking for system updates...
[2026-06-12 09:57:56,690.690 INFO    ] 200
[2026-06-12 09:57:56,692.692 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:57:56,722.722 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 09:57:56,724.724 INFO    ] No update needed
[2026-06-12 09:57:56,725.725 INFO    ] Checking for camera pi updates...
[2026-06-12 09:57:56,746.746 INFO    ] 200
[2026-06-12 09:57:56,748.748 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:57:56,772.772 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 09:57:56,916.916 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 09:57:56,917.917 INFO    ] No camera update needed
[2026-06-12 09:57:56,919.919 INFO    ] Script finished. Safe exiting...
[2026-06-12 09:57:56,920.920 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 09:57:56,923.923 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 09:57:56,926.926 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 09:57:58,967.967 INFO    ] ================================================
[2026-06-12 09:57:58,983.983 INFO    ] Launching Daemon at Fri Jun 12 09:57:58 IST 2026
[2026-06-12 09:57:58,993.993 INFO    ] ================================================
[2026-06-12 09:57:59,322.322 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 09:57:59
[2026-06-12 09:57:59,635.635 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 09:57:59,778.778 INFO    ] Initializing speech engine...
[2026-06-12 09:57:59,783.783 INFO    ] 2026-06-12 09:57:59
[2026-06-12 09:57:59,986.986 INFO    ] 2026-06-12 09:57:59
[2026-06-12 09:58:00,015.015 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 09:58:00,203.203 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 09:58:00,206.206 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 09:58:00,340.340 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 09:58:00,392.392 INFO    ] time= 12/06/2026 09:58:00
[2026-06-12 09:58:00,427.427 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 09:58:00,437.437 INFO    ] Checking for existing commands in stream...
[2026-06-12 09:58:00,533.533 INFO    ] No existing commands found in stream
[2026-06-12 09:58:05,542.542 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 09:58:05,544.544 INFO    ] Waiting 1.39 seconds before fallback handling...
[2026-06-12 09:58:07,307.307 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 09:58:07,308.308 INFO    ] Checking for system updates...
[2026-06-12 09:58:07,329.329 INFO    ] 200
[2026-06-12 09:58:07,330.330 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:58:07,366.366 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 09:58:07,367.367 INFO    ] No update needed
[2026-06-12 09:58:07,369.369 INFO    ] Checking for camera pi updates...
[2026-06-12 09:58:07,388.388 INFO    ] 200
[2026-06-12 09:58:07,390.390 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:58:07,413.413 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 09:58:07,451.451 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 09:58:07,452.452 INFO    ] No camera update needed
[2026-06-12 09:58:07,454.454 INFO    ] Script finished. Safe exiting...
[2026-06-12 09:58:07,455.455 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 09:58:07,458.458 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 09:58:07,460.460 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 09:58:09,500.500 INFO    ] ================================================
[2026-06-12 09:58:09,516.516 INFO    ] Launching Daemon at Fri Jun 12 09:58:09 IST 2026
[2026-06-12 09:58:09,527.527 INFO    ] ================================================
[2026-06-12 09:58:09,882.882 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 09:58:09
[2026-06-12 09:58:10,194.194 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 09:58:10,328.328 INFO    ] Initializing speech engine...
[2026-06-12 09:58:10,331.331 INFO    ] 2026-06-12 09:58:10
[2026-06-12 09:58:10,563.563 INFO    ] 2026-06-12 09:58:10
[2026-06-12 09:58:10,593.593 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 09:58:10,724.724 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 09:58:10,787.787 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 09:58:10,945.945 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 09:58:11,009.009 INFO    ] time= 12/06/2026 09:58:10
[2026-06-12 09:58:11,044.044 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 09:58:11,046.046 INFO    ] Checking for existing commands in stream...
[2026-06-12 09:58:11,123.123 INFO    ] No existing commands found in stream
[2026-06-12 09:58:16,132.132 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 09:58:16,135.135 INFO    ] Waiting 1.94 seconds before fallback handling...
[2026-06-12 09:58:18,468.468 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 09:58:18,469.469 INFO    ] Checking for system updates...
[2026-06-12 09:58:18,490.490 INFO    ] 200
[2026-06-12 09:58:18,492.492 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:58:18,523.523 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 09:58:18,524.524 INFO    ] No update needed
[2026-06-12 09:58:18,525.525 INFO    ] Checking for camera pi updates...
[2026-06-12 09:58:18,545.545 INFO    ] 200
[2026-06-12 09:58:18,546.546 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:58:18,570.570 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 09:58:18,591.591 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 09:58:18,593.593 INFO    ] No camera update needed
[2026-06-12 09:58:18,594.594 INFO    ] Script finished. Safe exiting...
[2026-06-12 09:58:18,595.595 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 09:58:18,598.598 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 09:58:18,601.601 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 09:58:20,641.641 INFO    ] ================================================
[2026-06-12 09:58:20,657.657 INFO    ] Launching Daemon at Fri Jun 12 09:58:20 IST 2026
[2026-06-12 09:58:20,668.668 INFO    ] ================================================
[2026-06-12 09:58:20,989.989 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 09:58:20
[2026-06-12 09:58:21,301.301 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 09:58:21,436.436 INFO    ] Initializing speech engine...
[2026-06-12 09:58:21,444.444 INFO    ] 2026-06-12 09:58:21
[2026-06-12 09:58:21,668.668 INFO    ] 2026-06-12 09:58:21
[2026-06-12 09:58:21,699.699 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 09:58:21,897.897 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 09:58:21,907.907 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 09:58:22,045.045 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 09:58:22,101.101 INFO    ] time= 12/06/2026 09:58:22
[2026-06-12 09:58:22,145.145 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 09:58:22,147.147 INFO    ] Checking for existing commands in stream...
[2026-06-12 09:58:22,222.222 INFO    ] No existing commands found in stream
[2026-06-12 09:58:27,233.233 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 09:58:27,236.236 INFO    ] Waiting 1.67 seconds before fallback handling...
[2026-06-12 09:58:29,259.259 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 09:58:29,261.261 INFO    ] Checking for system updates...
[2026-06-12 09:58:29,282.282 INFO    ] 200
[2026-06-12 09:58:29,283.283 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:58:29,314.314 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 09:58:29,315.315 INFO    ] No update needed
[2026-06-12 09:58:29,317.317 INFO    ] Checking for camera pi updates...
[2026-06-12 09:58:29,337.337 INFO    ] 200
[2026-06-12 09:58:29,338.338 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:58:29,364.364 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 09:58:29,404.404 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 09:58:29,405.405 INFO    ] No camera update needed
[2026-06-12 09:58:29,406.406 INFO    ] Script finished. Safe exiting...
[2026-06-12 09:58:29,407.407 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 09:58:29,411.411 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 09:58:29,413.413 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 09:58:31,456.456 INFO    ] ================================================
[2026-06-12 09:58:31,472.472 INFO    ] Launching Daemon at Fri Jun 12 09:58:31 IST 2026
[2026-06-12 09:58:31,484.484 INFO    ] ================================================
[2026-06-12 09:58:31,816.816 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 09:58:31
[2026-06-12 09:58:32,165.165 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 09:58:32,328.328 INFO    ] Initializing speech engine...
[2026-06-12 09:58:32,338.338 INFO    ] 2026-06-12 09:58:32
[2026-06-12 09:58:32,535.535 INFO    ] 2026-06-12 09:58:32
[2026-06-12 09:58:32,589.589 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 09:58:32,715.715 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 09:58:32,751.751 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 09:58:32,906.906 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 09:58:32,954.954 INFO    ] time= 12/06/2026 09:58:32
[2026-06-12 09:58:32,975.975 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 09:58:33,039.039 INFO    ] Checking for existing commands in stream...
[2026-06-12 09:58:33,148.148 INFO    ] No existing commands found in stream
[2026-06-12 09:58:38,159.159 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 09:58:38,162.162 INFO    ] Waiting 2.60 seconds before fallback handling...
[2026-06-12 09:58:41,120.120 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 09:58:41,121.121 INFO    ] Checking for system updates...
[2026-06-12 09:58:41,143.143 INFO    ] 200
[2026-06-12 09:58:41,144.144 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:58:41,177.177 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 09:58:41,178.178 INFO    ] No update needed
[2026-06-12 09:58:41,180.180 INFO    ] Checking for camera pi updates...
[2026-06-12 09:58:41,201.201 INFO    ] 200
[2026-06-12 09:58:41,203.203 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:58:41,227.227 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 09:58:41,268.268 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 09:58:41,270.270 INFO    ] No camera update needed
[2026-06-12 09:58:41,271.271 INFO    ] Script finished. Safe exiting...
[2026-06-12 09:58:41,272.272 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 09:58:41,276.276 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 09:58:41,279.279 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 09:58:43,319.319 INFO    ] ================================================
[2026-06-12 09:58:43,334.334 INFO    ] Launching Daemon at Fri Jun 12 09:58:43 IST 2026
[2026-06-12 09:58:43,346.346 INFO    ] ================================================
[2026-06-12 09:58:43,703.703 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 09:58:43
[2026-06-12 09:58:44,039.039 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 09:58:44,178.178 INFO    ] Initializing speech engine...
[2026-06-12 09:58:44,186.186 INFO    ] 2026-06-12 09:58:44
[2026-06-12 09:58:44,407.407 INFO    ] 2026-06-12 09:58:44
[2026-06-12 09:58:44,437.437 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 09:58:44,621.621 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 09:58:44,624.624 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 09:58:44,766.766 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 09:58:44,828.828 INFO    ] time= 12/06/2026 09:58:44
[2026-06-12 09:58:44,852.852 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 09:58:44,859.859 INFO    ] Checking for existing commands in stream...
[2026-06-12 09:58:44,926.926 INFO    ] No existing commands found in stream
[2026-06-12 09:58:49,935.935 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 09:58:49,939.939 INFO    ] Waiting 0.43 seconds before fallback handling...
[2026-06-12 09:58:50,710.710 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 09:58:50,712.712 INFO    ] Checking for system updates...
[2026-06-12 09:58:50,733.733 INFO    ] 200
[2026-06-12 09:58:50,734.734 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:58:50,765.765 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 09:58:50,766.766 INFO    ] No update needed
[2026-06-12 09:58:50,768.768 INFO    ] Checking for camera pi updates...
[2026-06-12 09:58:50,787.787 INFO    ] 200
[2026-06-12 09:58:50,789.789 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:58:50,813.813 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 09:58:50,853.853 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 09:58:50,855.855 INFO    ] No camera update needed
[2026-06-12 09:58:50,856.856 INFO    ] Script finished. Safe exiting...
[2026-06-12 09:58:50,858.858 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 09:58:50,861.861 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 09:58:50,864.864 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 09:58:52,903.903 INFO    ] ================================================
[2026-06-12 09:58:52,919.919 INFO    ] Launching Daemon at Fri Jun 12 09:58:52 IST 2026
[2026-06-12 09:58:52,930.930 INFO    ] ================================================
[2026-06-12 09:58:53,268.268 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 09:58:53
[2026-06-12 09:58:53,580.580 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 09:58:53,712.712 INFO    ] Initializing speech engine...
[2026-06-12 09:58:53,715.715 INFO    ] 2026-06-12 09:58:53
[2026-06-12 09:58:53,932.932 INFO    ] 2026-06-12 09:58:53
[2026-06-12 09:58:53,962.962 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 09:58:54,146.146 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 09:58:54,150.150 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 09:58:54,284.284 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 09:58:54,347.347 INFO    ] time= 12/06/2026 09:58:54
[2026-06-12 09:58:54,380.380 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 09:58:54,386.386 INFO    ] Checking for existing commands in stream...
[2026-06-12 09:58:54,454.454 INFO    ] No existing commands found in stream
[2026-06-12 09:58:59,463.463 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 09:58:59,466.466 INFO    ] Waiting 2.58 seconds before fallback handling...
[2026-06-12 09:59:02,331.331 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 09:59:02,332.332 INFO    ] Checking for system updates...
[2026-06-12 09:59:02,353.353 INFO    ] 200
[2026-06-12 09:59:02,354.354 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:59:02,385.385 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 09:59:02,386.386 INFO    ] No update needed
[2026-06-12 09:59:02,387.387 INFO    ] Checking for camera pi updates...
[2026-06-12 09:59:02,409.409 INFO    ] 200
[2026-06-12 09:59:02,410.410 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:59:02,435.435 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 09:59:02,459.459 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 09:59:02,461.461 INFO    ] No camera update needed
[2026-06-12 09:59:02,463.463 INFO    ] Script finished. Safe exiting...
[2026-06-12 09:59:02,464.464 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 09:59:02,467.467 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 09:59:02,470.470 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 09:59:04,512.512 INFO    ] ================================================
[2026-06-12 09:59:04,527.527 INFO    ] Launching Daemon at Fri Jun 12 09:59:04 IST 2026
[2026-06-12 09:59:04,539.539 INFO    ] ================================================
[2026-06-12 09:59:04,907.907 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 09:59:04
[2026-06-12 09:59:05,237.237 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 09:59:05,371.371 INFO    ] Initializing speech engine...
[2026-06-12 09:59:05,374.374 INFO    ] 2026-06-12 09:59:05
[2026-06-12 09:59:05,604.604 INFO    ] 2026-06-12 09:59:05
[2026-06-12 09:59:05,635.635 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 09:59:05,768.768 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 09:59:05,830.830 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 09:59:05,978.978 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 09:59:06,054.054 INFO    ] time= 12/06/2026 09:59:05
[2026-06-12 09:59:06,086.086 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 09:59:06,088.088 INFO    ] Checking for existing commands in stream...
[2026-06-12 09:59:06,166.166 INFO    ] No existing commands found in stream
[2026-06-12 09:59:11,200.200 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 09:59:11,203.203 INFO    ] Waiting 0.69 seconds before fallback handling...
[2026-06-12 09:59:12,260.260 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 09:59:12,261.261 INFO    ] Checking for system updates...
[2026-06-12 09:59:12,282.282 INFO    ] 200
[2026-06-12 09:59:12,283.283 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:59:12,316.316 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 09:59:12,317.317 INFO    ] No update needed
[2026-06-12 09:59:12,318.318 INFO    ] Checking for camera pi updates...
[2026-06-12 09:59:12,340.340 INFO    ] 200
[2026-06-12 09:59:12,342.342 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:59:12,365.365 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 09:59:12,386.386 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 09:59:12,387.387 INFO    ] No camera update needed
[2026-06-12 09:59:12,388.388 INFO    ] Script finished. Safe exiting...
[2026-06-12 09:59:12,390.390 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 09:59:12,393.393 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 09:59:12,395.395 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 09:59:14,435.435 INFO    ] ================================================
[2026-06-12 09:59:14,451.451 INFO    ] Launching Daemon at Fri Jun 12 09:59:14 IST 2026
[2026-06-12 09:59:14,463.463 INFO    ] ================================================
[2026-06-12 09:59:14,824.824 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 09:59:14
[2026-06-12 09:59:15,140.140 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 09:59:15,273.273 INFO    ] Initializing speech engine...
[2026-06-12 09:59:15,278.278 INFO    ] 2026-06-12 09:59:15
[2026-06-12 09:59:15,510.510 INFO    ] 2026-06-12 09:59:15
[2026-06-12 09:59:15,541.541 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 09:59:15,710.710 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 09:59:15,742.742 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 09:59:15,883.883 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 09:59:15,955.955 INFO    ] time= 12/06/2026 09:59:15
[2026-06-12 09:59:15,989.989 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 09:59:15,991.991 INFO    ] Checking for existing commands in stream...
[2026-06-12 09:59:16,070.070 INFO    ] No existing commands found in stream
[2026-06-12 09:59:21,079.079 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 09:59:21,082.082 INFO    ] Waiting 3.31 seconds before fallback handling...
[2026-06-12 09:59:24,752.752 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 09:59:24,753.753 INFO    ] Checking for system updates...
[2026-06-12 09:59:24,774.774 INFO    ] 200
[2026-06-12 09:59:24,775.775 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:59:24,806.806 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 09:59:24,807.807 INFO    ] No update needed
[2026-06-12 09:59:24,808.808 INFO    ] Checking for camera pi updates...
[2026-06-12 09:59:24,828.828 INFO    ] 200
[2026-06-12 09:59:24,830.830 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:59:24,853.853 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 09:59:24,889.889 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 09:59:24,890.890 INFO    ] No camera update needed
[2026-06-12 09:59:24,892.892 INFO    ] Script finished. Safe exiting...
[2026-06-12 09:59:24,893.893 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 09:59:24,896.896 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 09:59:24,899.899 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 09:59:26,940.940 INFO    ] ================================================
[2026-06-12 09:59:26,955.955 INFO    ] Launching Daemon at Fri Jun 12 09:59:26 IST 2026
[2026-06-12 09:59:26,967.967 INFO    ] ================================================
[2026-06-12 09:59:27,313.313 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 09:59:27
[2026-06-12 09:59:27,652.652 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 09:59:27,803.803 INFO    ] Initializing speech engine...
[2026-06-12 09:59:27,808.808 INFO    ] 2026-06-12 09:59:27
[2026-06-12 09:59:28,015.015 INFO    ] 2026-06-12 09:59:27
[2026-06-12 09:59:28,045.045 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 09:59:28,229.229 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 09:59:28,239.239 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 09:59:28,367.367 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 09:59:28,433.433 INFO    ] time= 12/06/2026 09:59:28
[2026-06-12 09:59:28,461.461 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 09:59:28,468.468 INFO    ] Checking for existing commands in stream...
[2026-06-12 09:59:28,535.535 INFO    ] No existing commands found in stream
[2026-06-12 09:59:33,549.549 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 09:59:33,553.553 INFO    ] Waiting 3.40 seconds before fallback handling...
[2026-06-12 09:59:37,342.342 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 09:59:37,343.343 INFO    ] Checking for system updates...
[2026-06-12 09:59:37,364.364 INFO    ] 200
[2026-06-12 09:59:37,366.366 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:59:37,396.396 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 09:59:37,397.397 INFO    ] No update needed
[2026-06-12 09:59:37,399.399 INFO    ] Checking for camera pi updates...
[2026-06-12 09:59:37,419.419 INFO    ] 200
[2026-06-12 09:59:37,421.421 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:59:37,444.444 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 09:59:37,490.490 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 09:59:37,492.492 INFO    ] No camera update needed
[2026-06-12 09:59:37,493.493 INFO    ] Script finished. Safe exiting...
[2026-06-12 09:59:37,494.494 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 09:59:37,498.498 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 09:59:37,501.501 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 09:59:39,540.540 INFO    ] ================================================
[2026-06-12 09:59:39,562.562 INFO    ] Launching Daemon at Fri Jun 12 09:59:39 IST 2026
[2026-06-12 09:59:39,574.574 INFO    ] ================================================
[2026-06-12 09:59:39,939.939 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 09:59:39
[2026-06-12 09:59:40,251.251 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 09:59:40,382.382 INFO    ] Initializing speech engine...
[2026-06-12 09:59:40,390.390 INFO    ] 2026-06-12 09:59:40
[2026-06-12 09:59:40,607.607 INFO    ] 2026-06-12 09:59:40
[2026-06-12 09:59:40,635.635 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 09:59:40,826.826 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 09:59:40,830.830 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 09:59:40,960.960 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 09:59:41,016.016 INFO    ] time= 12/06/2026 09:59:40
[2026-06-12 09:59:41,051.051 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 09:59:41,062.062 INFO    ] Checking for existing commands in stream...
[2026-06-12 09:59:41,133.133 INFO    ] No existing commands found in stream
[2026-06-12 09:59:46,143.143 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 09:59:46,146.146 INFO    ] Waiting 3.17 seconds before fallback handling...
[2026-06-12 09:59:49,720.720 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 09:59:49,722.722 INFO    ] Checking for system updates...
[2026-06-12 09:59:49,742.742 INFO    ] 200
[2026-06-12 09:59:49,744.744 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:59:49,774.774 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 09:59:49,775.775 INFO    ] No update needed
[2026-06-12 09:59:49,776.776 INFO    ] Checking for camera pi updates...
[2026-06-12 09:59:49,796.796 INFO    ] 200
[2026-06-12 09:59:49,797.797 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 09:59:49,821.821 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 09:59:49,856.856 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 09:59:49,858.858 INFO    ] No camera update needed
[2026-06-12 09:59:49,859.859 INFO    ] Script finished. Safe exiting...
[2026-06-12 09:59:49,860.860 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 09:59:49,863.863 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 09:59:49,866.866 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 09:59:51,905.905 INFO    ] ================================================
[2026-06-12 09:59:51,921.921 INFO    ] Launching Daemon at Fri Jun 12 09:59:51 IST 2026
[2026-06-12 09:59:51,933.933 INFO    ] ================================================
[2026-06-12 09:59:52,327.327 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 09:59:52
[2026-06-12 09:59:52,638.638 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 09:59:52,781.781 INFO    ] Initializing speech engine...
[2026-06-12 09:59:52,783.783 INFO    ] 2026-06-12 09:59:52
[2026-06-12 09:59:53,005.005 INFO    ] 2026-06-12 09:59:52
[2026-06-12 09:59:53,036.036 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 09:59:53,186.186 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 09:59:53,240.240 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 09:59:53,384.384 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 09:59:53,426.426 INFO    ] time= 12/06/2026 09:59:53
[2026-06-12 09:59:53,470.470 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 09:59:53,494.494 INFO    ] Checking for existing commands in stream...
[2026-06-12 09:59:53,571.571 INFO    ] No existing commands found in stream
[2026-06-12 09:59:58,581.581 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 09:59:58,584.584 INFO    ] Waiting 3.93 seconds before fallback handling...
[2026-06-12 10:00:02,953.953 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 10:00:02,961.961 INFO    ] Checking for system updates...
[2026-06-12 10:00:03,021.021 INFO    ] 200
[2026-06-12 10:00:03,023.023 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:00:03,166.166 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 10:00:03,169.169 INFO    ] No update needed
[2026-06-12 10:00:03,171.171 INFO    ] Checking for camera pi updates...
[2026-06-12 10:00:03,234.234 INFO    ] 200
[2026-06-12 10:00:03,236.236 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:00:03,369.369 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 10:00:03,640.640 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 10:00:03,642.642 INFO    ] No camera update needed
[2026-06-12 10:00:03,644.644 INFO    ] Script finished. Safe exiting...
[2026-06-12 10:00:03,647.647 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 10:00:03,663.663 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 10:00:03,674.674 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 10:00:05,713.713 INFO    ] ================================================
[2026-06-12 10:00:05,729.729 INFO    ] Launching Daemon at Fri Jun 12 10:00:05 IST 2026
[2026-06-12 10:00:05,742.742 INFO    ] ================================================
[2026-06-12 10:00:06,073.073 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 10:00:06
[2026-06-12 10:00:06,388.388 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 10:00:06,524.524 INFO    ] Initializing speech engine...
[2026-06-12 10:00:06,528.528 INFO    ] 2026-06-12 10:00:06
[2026-06-12 10:00:06,759.759 INFO    ] 2026-06-12 10:00:06
[2026-06-12 10:00:06,790.790 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 10:00:06,924.924 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 10:00:06,977.977 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 10:00:07,135.135 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 10:00:07,168.168 INFO    ] time= 12/06/2026 10:00:07
[2026-06-12 10:00:07,232.232 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 10:00:07,258.258 INFO    ] Checking for existing commands in stream...
[2026-06-12 10:00:07,362.362 INFO    ] No existing commands found in stream
[2026-06-12 10:00:12,376.376 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 10:00:12,379.379 INFO    ] Waiting 0.45 seconds before fallback handling...
[2026-06-12 10:00:13,202.202 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 10:00:13,203.203 INFO    ] Checking for system updates...
[2026-06-12 10:00:13,224.224 INFO    ] 200
[2026-06-12 10:00:13,225.225 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:00:13,259.259 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 10:00:13,261.261 INFO    ] No update needed
[2026-06-12 10:00:13,262.262 INFO    ] Checking for camera pi updates...
[2026-06-12 10:00:13,282.282 INFO    ] 200
[2026-06-12 10:00:13,283.283 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:00:13,306.306 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 10:00:13,351.351 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 10:00:13,352.352 INFO    ] No camera update needed
[2026-06-12 10:00:13,354.354 INFO    ] Script finished. Safe exiting...
[2026-06-12 10:00:13,355.355 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 10:00:13,358.358 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 10:00:13,360.360 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 10:00:15,400.400 INFO    ] ================================================
[2026-06-12 10:00:15,416.416 INFO    ] Launching Daemon at Fri Jun 12 10:00:15 IST 2026
[2026-06-12 10:00:15,428.428 INFO    ] ================================================
[2026-06-12 10:00:15,785.785 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 10:00:15
[2026-06-12 10:00:16,126.126 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 10:00:16,267.267 INFO    ] Initializing speech engine...
[2026-06-12 10:00:16,269.269 INFO    ] 2026-06-12 10:00:16
[2026-06-12 10:00:16,491.491 INFO    ] 2026-06-12 10:00:16
[2026-06-12 10:00:16,522.522 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 10:00:16,656.656 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 10:00:16,710.710 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 10:00:16,845.845 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 10:00:16,913.913 INFO    ] time= 12/06/2026 10:00:16
[2026-06-12 10:00:16,940.940 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 10:00:16,947.947 INFO    ] Checking for existing commands in stream...
[2026-06-12 10:00:17,014.014 INFO    ] No existing commands found in stream
[2026-06-12 10:00:22,024.024 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 10:00:22,027.027 INFO    ] Waiting 3.16 seconds before fallback handling...
[2026-06-12 10:00:25,571.571 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 10:00:25,573.573 INFO    ] Checking for system updates...
[2026-06-12 10:00:25,594.594 INFO    ] 200
[2026-06-12 10:00:25,595.595 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:00:25,626.626 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 10:00:25,628.628 INFO    ] No update needed
[2026-06-12 10:00:25,629.629 INFO    ] Checking for camera pi updates...
[2026-06-12 10:00:25,650.650 INFO    ] 200
[2026-06-12 10:00:25,651.651 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:00:25,675.675 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 10:00:25,713.713 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 10:00:25,714.714 INFO    ] No camera update needed
[2026-06-12 10:00:25,715.715 INFO    ] Script finished. Safe exiting...
[2026-06-12 10:00:25,716.716 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 10:00:25,719.719 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 10:00:25,722.722 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 10:00:27,763.763 INFO    ] ================================================
[2026-06-12 10:00:27,778.778 INFO    ] Launching Daemon at Fri Jun 12 10:00:27 IST 2026
[2026-06-12 10:00:27,789.789 INFO    ] ================================================
[2026-06-12 10:00:28,162.162 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 10:00:28
[2026-06-12 10:00:28,497.497 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 10:00:28,648.648 INFO    ] Initializing speech engine...
[2026-06-12 10:00:28,654.654 INFO    ] 2026-06-12 10:00:28
[2026-06-12 10:00:28,867.867 INFO    ] 2026-06-12 10:00:28
[2026-06-12 10:00:28,896.896 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 10:00:29,036.036 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 10:00:29,085.085 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 10:00:29,225.225 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 10:00:29,296.296 INFO    ] time= 12/06/2026 10:00:29
[2026-06-12 10:00:29,321.321 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 10:00:29,327.327 INFO    ] Checking for existing commands in stream...
[2026-06-12 10:00:29,393.393 INFO    ] No existing commands found in stream
[2026-06-12 10:00:34,404.404 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 10:00:34,407.407 INFO    ] Waiting 1.59 seconds before fallback handling...
[2026-06-12 10:00:36,381.381 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 10:00:36,383.383 INFO    ] Checking for system updates...
[2026-06-12 10:00:36,403.403 INFO    ] 200
[2026-06-12 10:00:36,405.405 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:00:36,435.435 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 10:00:36,437.437 INFO    ] No update needed
[2026-06-12 10:00:36,438.438 INFO    ] Checking for camera pi updates...
[2026-06-12 10:00:36,458.458 INFO    ] 200
[2026-06-12 10:00:36,459.459 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:00:36,484.484 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 10:00:36,517.517 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 10:00:36,518.518 INFO    ] No camera update needed
[2026-06-12 10:00:36,519.519 INFO    ] Script finished. Safe exiting...
[2026-06-12 10:00:36,521.521 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 10:00:36,524.524 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 10:00:36,527.527 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 10:00:38,568.568 INFO    ] ================================================
[2026-06-12 10:00:38,584.584 INFO    ] Launching Daemon at Fri Jun 12 10:00:38 IST 2026
[2026-06-12 10:00:38,595.595 INFO    ] ================================================
[2026-06-12 10:00:38,935.935 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 10:00:38
[2026-06-12 10:00:39,270.270 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 10:00:39,409.409 INFO    ] Initializing speech engine...
[2026-06-12 10:00:39,423.423 INFO    ] 2026-06-12 10:00:39
[2026-06-12 10:00:39,635.635 INFO    ] 2026-06-12 10:00:39
[2026-06-12 10:00:39,665.665 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 10:00:39,851.851 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 10:00:39,855.855 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 10:00:39,993.993 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 10:00:40,061.061 INFO    ] time= 12/06/2026 10:00:40
[2026-06-12 10:00:40,085.085 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 10:00:40,092.092 INFO    ] Checking for existing commands in stream...
[2026-06-12 10:00:40,159.159 INFO    ] No existing commands found in stream
[2026-06-12 10:00:45,168.168 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 10:00:45,172.172 INFO    ] Waiting 2.90 seconds before fallback handling...
[2026-06-12 10:00:48,444.444 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 10:00:48,446.446 INFO    ] Checking for system updates...
[2026-06-12 10:00:48,467.467 INFO    ] 200
[2026-06-12 10:00:48,468.468 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:00:48,498.498 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 10:00:48,500.500 INFO    ] No update needed
[2026-06-12 10:00:48,501.501 INFO    ] Checking for camera pi updates...
[2026-06-12 10:00:48,524.524 INFO    ] 200
[2026-06-12 10:00:48,526.526 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:00:48,549.549 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 10:00:48,582.582 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 10:00:48,584.584 INFO    ] No camera update needed
[2026-06-12 10:00:48,585.585 INFO    ] Script finished. Safe exiting...
[2026-06-12 10:00:48,586.586 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 10:00:48,589.589 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 10:00:48,592.592 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 10:00:50,631.631 INFO    ] ================================================
[2026-06-12 10:00:50,647.647 INFO    ] Launching Daemon at Fri Jun 12 10:00:50 IST 2026
[2026-06-12 10:00:50,659.659 INFO    ] ================================================
[2026-06-12 10:00:50,997.997 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 10:00:50
[2026-06-12 10:00:51,307.307 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 10:00:51,435.435 INFO    ] Initializing speech engine...
[2026-06-12 10:00:51,440.440 INFO    ] 2026-06-12 10:00:51
[2026-06-12 10:00:51,655.655 INFO    ] 2026-06-12 10:00:51
[2026-06-12 10:00:51,684.684 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 10:00:51,867.867 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 10:00:51,892.892 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 10:00:52,023.023 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 10:00:52,075.075 INFO    ] time= 12/06/2026 10:00:52
[2026-06-12 10:00:52,099.099 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 10:00:52,104.104 INFO    ] Checking for existing commands in stream...
[2026-06-12 10:00:52,170.170 INFO    ] No existing commands found in stream
[2026-06-12 10:00:57,181.181 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 10:00:57,193.193 INFO    ] Waiting 2.70 seconds before fallback handling...
[2026-06-12 10:01:00,281.281 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 10:01:00,283.283 INFO    ] Checking for system updates...
[2026-06-12 10:01:00,303.303 INFO    ] 200
[2026-06-12 10:01:00,305.305 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:01:00,337.337 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 10:01:00,339.339 INFO    ] No update needed
[2026-06-12 10:01:00,340.340 INFO    ] Checking for camera pi updates...
[2026-06-12 10:01:00,359.359 INFO    ] 200
[2026-06-12 10:01:00,361.361 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:01:00,384.384 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 10:01:00,430.430 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 10:01:00,431.431 INFO    ] No camera update needed
[2026-06-12 10:01:00,432.432 INFO    ] Script finished. Safe exiting...
[2026-06-12 10:01:00,434.434 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 10:01:00,436.436 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 10:01:00,439.439 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 10:01:02,467.467 INFO    ] ================================================
[2026-06-12 10:01:02,477.477 INFO    ] Launching Daemon at Fri Jun 12 10:01:02 IST 2026
[2026-06-12 10:01:02,483.483 INFO    ] ================================================
[2026-06-12 10:01:02,831.831 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 10:01:02
[2026-06-12 10:01:03,142.142 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 10:01:03,273.273 INFO    ] Initializing speech engine...
[2026-06-12 10:01:03,286.286 INFO    ] 2026-06-12 10:01:03
[2026-06-12 10:01:03,491.491 INFO    ] 2026-06-12 10:01:03
[2026-06-12 10:01:03,520.520 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 10:01:03,704.704 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 10:01:03,707.707 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 10:01:03,840.840 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 10:01:03,898.898 INFO    ] time= 12/06/2026 10:01:03
[2026-06-12 10:01:03,935.935 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 10:01:03,941.941 INFO    ] Checking for existing commands in stream...
[2026-06-12 10:01:04,008.008 INFO    ] No existing commands found in stream
[2026-06-12 10:01:09,016.016 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 10:01:09,018.018 INFO    ] Waiting 0.08 seconds before fallback handling...
[2026-06-12 10:01:09,392.392 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 10:01:09,393.393 INFO    ] Checking for system updates...
[2026-06-12 10:01:09,414.414 INFO    ] 200
[2026-06-12 10:01:09,415.415 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:01:09,448.448 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 10:01:09,449.449 INFO    ] No update needed
[2026-06-12 10:01:09,450.450 INFO    ] Checking for camera pi updates...
[2026-06-12 10:01:09,470.470 INFO    ] 200
[2026-06-12 10:01:09,471.471 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:01:09,495.495 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 10:01:09,517.517 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 10:01:09,519.519 INFO    ] No camera update needed
[2026-06-12 10:01:09,520.520 INFO    ] Script finished. Safe exiting...
[2026-06-12 10:01:09,521.521 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 10:01:09,524.524 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 10:01:09,529.529 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 10:01:11,559.559 INFO    ] ================================================
[2026-06-12 10:01:11,568.568 INFO    ] Launching Daemon at Fri Jun 12 10:01:11 IST 2026
[2026-06-12 10:01:11,575.575 INFO    ] ================================================
[2026-06-12 10:01:11,899.899 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 10:01:11
[2026-06-12 10:01:12,221.221 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 10:01:12,370.370 INFO    ] Initializing speech engine...
[2026-06-12 10:01:12,375.375 INFO    ] 2026-06-12 10:01:12
[2026-06-12 10:01:12,582.582 INFO    ] 2026-06-12 10:01:12
[2026-06-12 10:01:12,632.632 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 10:01:12,802.802 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 10:01:12,860.860 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 10:01:13,090.090 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 10:01:13,117.117 INFO    ] time= 12/06/2026 10:01:13
[2026-06-12 10:01:13,123.123 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 10:01:13,124.124 INFO    ] Checking for existing commands in stream...
[2026-06-12 10:01:13,196.196 INFO    ] No existing commands found in stream
[2026-06-12 10:01:18,207.207 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 10:01:18,209.209 INFO    ] Waiting 3.12 seconds before fallback handling...
[2026-06-12 10:01:21,756.756 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 10:01:21,759.759 INFO    ] Checking for system updates...
[2026-06-12 10:01:21,795.795 INFO    ] 200
[2026-06-12 10:01:21,798.798 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:01:21,853.853 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 10:01:21,855.855 INFO    ] No update needed
[2026-06-12 10:01:21,857.857 INFO    ] Checking for camera pi updates...
[2026-06-12 10:01:21,892.892 INFO    ] 200
[2026-06-12 10:01:21,894.894 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:01:21,935.935 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 10:01:21,975.975 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 10:01:21,977.977 INFO    ] No camera update needed
[2026-06-12 10:01:21,978.978 INFO    ] Script finished. Safe exiting...
[2026-06-12 10:01:21,979.979 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 10:01:21,982.982 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 10:01:21,985.985 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 10:01:24,023.023 INFO    ] ================================================
[2026-06-12 10:01:24,039.039 INFO    ] Launching Daemon at Fri Jun 12 10:01:24 IST 2026
[2026-06-12 10:01:24,050.050 INFO    ] ================================================
[2026-06-12 10:01:24,392.392 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 10:01:24
[2026-06-12 10:01:24,711.711 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 10:01:24,855.855 INFO    ] Initializing speech engine...
[2026-06-12 10:01:24,861.861 INFO    ] 2026-06-12 10:01:24
[2026-06-12 10:01:25,066.066 INFO    ] 2026-06-12 10:01:25
[2026-06-12 10:01:25,094.094 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 10:01:25,277.277 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 10:01:25,286.286 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 10:01:25,422.422 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 10:01:25,484.484 INFO    ] time= 12/06/2026 10:01:25
[2026-06-12 10:01:25,508.508 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 10:01:25,514.514 INFO    ] Checking for existing commands in stream...
[2026-06-12 10:01:25,604.604 INFO    ] No existing commands found in stream
[2026-06-12 10:01:30,612.612 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 10:01:30,615.615 INFO    ] Waiting 2.12 seconds before fallback handling...
[2026-06-12 10:01:33,142.142 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 10:01:33,145.145 INFO    ] Checking for system updates...
[2026-06-12 10:01:33,182.182 INFO    ] 200
[2026-06-12 10:01:33,185.185 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:01:33,238.238 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 10:01:33,241.241 INFO    ] No update needed
[2026-06-12 10:01:33,243.243 INFO    ] Checking for camera pi updates...
[2026-06-12 10:01:33,275.275 INFO    ] 200
[2026-06-12 10:01:33,276.276 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:01:33,301.301 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 10:01:33,325.325 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 10:01:33,326.326 INFO    ] No camera update needed
[2026-06-12 10:01:33,327.327 INFO    ] Script finished. Safe exiting...
[2026-06-12 10:01:33,329.329 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 10:01:33,332.332 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 10:01:33,335.335 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 10:01:35,373.373 INFO    ] ================================================
[2026-06-12 10:01:35,388.388 INFO    ] Launching Daemon at Fri Jun 12 10:01:35 IST 2026
[2026-06-12 10:01:35,400.400 INFO    ] ================================================
[2026-06-12 10:01:35,731.731 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 10:01:35
[2026-06-12 10:01:36,043.043 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 10:01:36,174.174 INFO    ] Initializing speech engine...
[2026-06-12 10:01:36,178.178 INFO    ] 2026-06-12 10:01:36
[2026-06-12 10:01:36,383.383 INFO    ] 2026-06-12 10:01:36
[2026-06-12 10:01:36,417.417 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 10:01:36,577.577 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 10:01:36,625.625 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 10:01:36,787.787 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 10:01:36,848.848 INFO    ] time= 12/06/2026 10:01:36
[2026-06-12 10:01:36,882.882 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 10:01:36,884.884 INFO    ] Checking for existing commands in stream...
[2026-06-12 10:01:36,958.958 INFO    ] No existing commands found in stream
[2026-06-12 10:01:41,967.967 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 10:01:41,970.970 INFO    ] Waiting 0.91 seconds before fallback handling...
[2026-06-12 10:01:43,263.263 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 10:01:43,264.264 INFO    ] Checking for system updates...
[2026-06-12 10:01:43,286.286 INFO    ] 200
[2026-06-12 10:01:43,288.288 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:01:43,318.318 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 10:01:43,320.320 INFO    ] No update needed
[2026-06-12 10:01:43,321.321 INFO    ] Checking for camera pi updates...
[2026-06-12 10:01:43,342.342 INFO    ] 200
[2026-06-12 10:01:43,344.344 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:01:43,367.367 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 10:01:43,403.403 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 10:01:43,405.405 INFO    ] No camera update needed
[2026-06-12 10:01:43,406.406 INFO    ] Script finished. Safe exiting...
[2026-06-12 10:01:43,407.407 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 10:01:43,410.410 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 10:01:43,413.413 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 10:01:45,453.453 INFO    ] ================================================
[2026-06-12 10:01:45,468.468 INFO    ] Launching Daemon at Fri Jun 12 10:01:45 IST 2026
[2026-06-12 10:01:45,479.479 INFO    ] ================================================
[2026-06-12 10:01:45,865.865 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 10:01:45
[2026-06-12 10:01:46,205.205 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 10:01:46,360.360 INFO    ] Initializing speech engine...
[2026-06-12 10:01:46,365.365 INFO    ] 2026-06-12 10:01:46
[2026-06-12 10:01:46,573.573 INFO    ] 2026-06-12 10:01:46
[2026-06-12 10:01:46,602.602 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 10:01:46,785.785 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 10:01:46,795.795 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 10:01:46,925.925 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 10:01:46,979.979 INFO    ] time= 12/06/2026 10:01:46
[2026-06-12 10:01:47,013.013 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 10:01:47,018.018 INFO    ] Checking for existing commands in stream...
[2026-06-12 10:01:47,088.088 INFO    ] No existing commands found in stream
[2026-06-12 10:01:52,100.100 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 10:01:52,103.103 INFO    ] Waiting 3.36 seconds before fallback handling...
[2026-06-12 10:01:55,812.812 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 10:01:55,814.814 INFO    ] Checking for system updates...
[2026-06-12 10:01:55,838.838 INFO    ] 200
[2026-06-12 10:01:55,839.839 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:01:55,870.870 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 10:01:55,872.872 INFO    ] No update needed
[2026-06-12 10:01:55,876.876 INFO    ] Checking for camera pi updates...
[2026-06-12 10:01:55,896.896 INFO    ] 200
[2026-06-12 10:01:55,897.897 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:01:55,920.920 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 10:01:55,967.967 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 10:01:55,969.969 INFO    ] No camera update needed
[2026-06-12 10:01:55,970.970 INFO    ] Script finished. Safe exiting...
[2026-06-12 10:01:55,971.971 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 10:01:55,974.974 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 10:01:55,977.977 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 10:01:58,017.017 INFO    ] ================================================
[2026-06-12 10:01:58,032.032 INFO    ] Launching Daemon at Fri Jun 12 10:01:58 IST 2026
[2026-06-12 10:01:58,044.044 INFO    ] ================================================
[2026-06-12 10:01:58,386.386 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 10:01:58
[2026-06-12 10:01:58,697.697 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 10:01:58,841.841 INFO    ] Initializing speech engine...
[2026-06-12 10:01:58,847.847 INFO    ] 2026-06-12 10:01:58
[2026-06-12 10:01:59,050.050 INFO    ] 2026-06-12 10:01:59
[2026-06-12 10:01:59,080.080 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 10:01:59,265.265 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 10:01:59,275.275 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 10:01:59,407.407 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 10:01:59,474.474 INFO    ] time= 12/06/2026 10:01:59
[2026-06-12 10:01:59,499.499 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 10:01:59,505.505 INFO    ] Checking for existing commands in stream...
[2026-06-12 10:01:59,596.596 INFO    ] No existing commands found in stream
[2026-06-12 10:02:04,605.605 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 10:02:04,608.608 INFO    ] Waiting 2.87 seconds before fallback handling...
[2026-06-12 10:02:07,841.841 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 10:02:07,843.843 INFO    ] Checking for system updates...
[2026-06-12 10:02:07,865.865 INFO    ] 200
[2026-06-12 10:02:07,867.867 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:02:07,900.900 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 10:02:07,901.901 INFO    ] No update needed
[2026-06-12 10:02:07,903.903 INFO    ] Checking for camera pi updates...
[2026-06-12 10:02:07,926.926 INFO    ] 200
[2026-06-12 10:02:07,928.928 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:02:07,951.951 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 10:02:08,089.089 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 10:02:08,091.091 INFO    ] No camera update needed
[2026-06-12 10:02:08,092.092 INFO    ] Script finished. Safe exiting...
[2026-06-12 10:02:08,094.094 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 10:02:08,097.097 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 10:02:08,100.100 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 10:02:10,143.143 INFO    ] ================================================
[2026-06-12 10:02:10,158.158 INFO    ] Launching Daemon at Fri Jun 12 10:02:10 IST 2026
[2026-06-12 10:02:10,170.170 INFO    ] ================================================
[2026-06-12 10:02:10,529.529 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 10:02:10
[2026-06-12 10:02:10,846.846 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 10:02:10,989.989 INFO    ] Initializing speech engine...
[2026-06-12 10:02:10,994.994 INFO    ] 2026-06-12 10:02:10
[2026-06-12 10:02:11,198.198 INFO    ] 2026-06-12 10:02:11
[2026-06-12 10:02:11,226.226 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 10:02:11,408.408 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 10:02:11,418.418 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 10:02:11,545.545 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 10:02:11,606.606 INFO    ] time= 12/06/2026 10:02:11
[2026-06-12 10:02:11,638.638 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 10:02:11,644.644 INFO    ] Checking for existing commands in stream...
[2026-06-12 10:02:11,712.712 INFO    ] No existing commands found in stream
[2026-06-12 10:02:16,722.722 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 10:02:16,725.725 INFO    ] Waiting 0.24 seconds before fallback handling...
[2026-06-12 10:02:17,341.341 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 10:02:17,342.342 INFO    ] Checking for system updates...
[2026-06-12 10:02:17,363.363 INFO    ] 200
[2026-06-12 10:02:17,365.365 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:02:17,395.395 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 10:02:17,396.396 INFO    ] No update needed
[2026-06-12 10:02:17,397.397 INFO    ] Checking for camera pi updates...
[2026-06-12 10:02:17,417.417 INFO    ] 200
[2026-06-12 10:02:17,418.418 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:02:17,444.444 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 10:02:17,485.485 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 10:02:17,486.486 INFO    ] No camera update needed
[2026-06-12 10:02:17,488.488 INFO    ] Script finished. Safe exiting...
[2026-06-12 10:02:17,489.489 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 10:02:17,492.492 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 10:02:17,495.495 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 10:02:19,534.534 INFO    ] ================================================
[2026-06-12 10:02:19,555.555 INFO    ] Launching Daemon at Fri Jun 12 10:02:19 IST 2026
[2026-06-12 10:02:19,567.567 INFO    ] ================================================
[2026-06-12 10:02:19,928.928 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 10:02:19
[2026-06-12 10:02:20,244.244 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 10:02:20,389.389 INFO    ] Initializing speech engine...
[2026-06-12 10:02:20,394.394 INFO    ] 2026-06-12 10:02:20
[2026-06-12 10:02:20,598.598 INFO    ] 2026-06-12 10:02:20
[2026-06-12 10:02:20,626.626 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 10:02:20,810.810 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 10:02:20,819.819 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 10:02:20,954.954 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 10:02:21,016.016 INFO    ] time= 12/06/2026 10:02:20
[2026-06-12 10:02:21,039.039 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 10:02:21,045.045 INFO    ] Checking for existing commands in stream...
[2026-06-12 10:02:21,136.136 INFO    ] No existing commands found in stream
[2026-06-12 10:02:26,150.150 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 10:02:26,153.153 INFO    ] Waiting 0.62 seconds before fallback handling...
[2026-06-12 10:02:27,138.138 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 10:02:27,139.139 INFO    ] Checking for system updates...
[2026-06-12 10:02:27,161.161 INFO    ] 200
[2026-06-12 10:02:27,162.162 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:02:27,193.193 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 10:02:27,194.194 INFO    ] No update needed
[2026-06-12 10:02:27,195.195 INFO    ] Checking for camera pi updates...
[2026-06-12 10:02:27,215.215 INFO    ] 200
[2026-06-12 10:02:27,216.216 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:02:27,239.239 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 10:02:27,275.275 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 10:02:27,277.277 INFO    ] No camera update needed
[2026-06-12 10:02:27,278.278 INFO    ] Script finished. Safe exiting...
[2026-06-12 10:02:27,279.279 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 10:02:27,282.282 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 10:02:27,285.285 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 10:02:29,326.326 INFO    ] ================================================
[2026-06-12 10:02:29,342.342 INFO    ] Launching Daemon at Fri Jun 12 10:02:29 IST 2026
[2026-06-12 10:02:29,353.353 INFO    ] ================================================
[2026-06-12 10:02:29,685.685 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 10:02:29
[2026-06-12 10:02:29,999.999 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 10:02:30,141.141 INFO    ] Initializing speech engine...
[2026-06-12 10:02:30,146.146 INFO    ] 2026-06-12 10:02:30
[2026-06-12 10:02:30,349.349 INFO    ] 2026-06-12 10:02:30
[2026-06-12 10:02:30,377.377 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 10:02:30,560.560 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 10:02:30,569.569 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 10:02:30,698.698 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 10:02:30,765.765 INFO    ] time= 12/06/2026 10:02:30
[2026-06-12 10:02:30,790.790 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 10:02:30,796.796 INFO    ] Checking for existing commands in stream...
[2026-06-12 10:02:30,886.886 INFO    ] No existing commands found in stream
[2026-06-12 10:02:35,894.894 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 10:02:35,897.897 INFO    ] Waiting 0.12 seconds before fallback handling...
[2026-06-12 10:02:36,341.341 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 10:02:36,343.343 INFO    ] Checking for system updates...
[2026-06-12 10:02:36,364.364 INFO    ] 200
[2026-06-12 10:02:36,365.365 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:02:36,398.398 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 10:02:36,399.399 INFO    ] No update needed
[2026-06-12 10:02:36,401.401 INFO    ] Checking for camera pi updates...
[2026-06-12 10:02:36,420.420 INFO    ] 200
[2026-06-12 10:02:36,422.422 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:02:36,445.445 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 10:02:36,478.478 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 10:02:36,479.479 INFO    ] No camera update needed
[2026-06-12 10:02:36,480.480 INFO    ] Script finished. Safe exiting...
[2026-06-12 10:02:36,482.482 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 10:02:36,485.485 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 10:02:36,487.487 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 10:02:38,526.526 INFO    ] ================================================
[2026-06-12 10:02:38,542.542 INFO    ] Launching Daemon at Fri Jun 12 10:02:38 IST 2026
[2026-06-12 10:02:38,554.554 INFO    ] ================================================
[2026-06-12 10:02:38,927.927 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 10:02:38
[2026-06-12 10:02:39,240.240 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 10:02:39,383.383 INFO    ] Initializing speech engine...
[2026-06-12 10:02:39,388.388 INFO    ] 2026-06-12 10:02:39
[2026-06-12 10:02:39,591.591 INFO    ] 2026-06-12 10:02:39
[2026-06-12 10:02:39,619.619 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 10:02:39,802.802 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 10:02:39,805.805 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 10:02:39,937.937 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 10:02:39,995.995 INFO    ] time= 12/06/2026 10:02:39
[2026-06-12 10:02:40,031.031 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 10:02:40,033.033 INFO    ] Checking for existing commands in stream...
[2026-06-12 10:02:40,105.105 INFO    ] No existing commands found in stream
[2026-06-12 10:02:45,129.129 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 10:02:45,132.132 INFO    ] Waiting 0.38 seconds before fallback handling...
[2026-06-12 10:02:45,883.883 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 10:02:45,884.884 INFO    ] Checking for system updates...
[2026-06-12 10:02:45,905.905 INFO    ] 200
[2026-06-12 10:02:45,906.906 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:02:45,939.939 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 10:02:45,941.941 INFO    ] No update needed
[2026-06-12 10:02:45,942.942 INFO    ] Checking for camera pi updates...
[2026-06-12 10:02:45,962.962 INFO    ] 200
[2026-06-12 10:02:45,963.963 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:02:45,987.987 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 10:02:46,033.033 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 10:02:46,034.034 INFO    ] No camera update needed
[2026-06-12 10:02:46,035.035 INFO    ] Script finished. Safe exiting...
[2026-06-12 10:02:46,036.036 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 10:02:46,039.039 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 10:02:46,042.042 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 10:02:48,081.081 INFO    ] ================================================
[2026-06-12 10:02:48,097.097 INFO    ] Launching Daemon at Fri Jun 12 10:02:48 IST 2026
[2026-06-12 10:02:48,108.108 INFO    ] ================================================
[2026-06-12 10:02:48,443.443 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 10:02:48
[2026-06-12 10:02:48,764.764 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 10:02:48,923.923 INFO    ] Initializing speech engine...
[2026-06-12 10:02:48,926.926 INFO    ] 2026-06-12 10:02:48
[2026-06-12 10:02:49,131.131 INFO    ] 2026-06-12 10:02:49
[2026-06-12 10:02:49,162.162 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 10:02:49,346.346 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 10:02:49,355.355 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 10:02:49,477.477 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 10:02:49,532.532 INFO    ] time= 12/06/2026 10:02:49
[2026-06-12 10:02:49,575.575 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 10:02:49,582.582 INFO    ] Checking for existing commands in stream...
[2026-06-12 10:02:49,648.648 INFO    ] No existing commands found in stream
[2026-06-12 10:02:54,668.668 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 10:02:54,672.672 INFO    ] Waiting 1.23 seconds before fallback handling...
[2026-06-12 10:02:56,269.269 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 10:02:56,270.270 INFO    ] Checking for system updates...
[2026-06-12 10:02:56,291.291 INFO    ] 200
[2026-06-12 10:02:56,292.292 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:02:56,323.323 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 10:02:56,324.324 INFO    ] No update needed
[2026-06-12 10:02:56,326.326 INFO    ] Checking for camera pi updates...
[2026-06-12 10:02:56,345.345 INFO    ] 200
[2026-06-12 10:02:56,346.346 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:02:56,371.371 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 10:02:56,411.411 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 10:02:56,412.412 INFO    ] No camera update needed
[2026-06-12 10:02:56,413.413 INFO    ] Script finished. Safe exiting...
[2026-06-12 10:02:56,415.415 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 10:02:56,417.417 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 10:02:56,420.420 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 10:02:58,459.459 INFO    ] ================================================
[2026-06-12 10:02:58,475.475 INFO    ] Launching Daemon at Fri Jun 12 10:02:58 IST 2026
[2026-06-12 10:02:58,487.487 INFO    ] ================================================
[2026-06-12 10:02:58,816.816 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 10:02:58
[2026-06-12 10:02:59,126.126 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 10:02:59,268.268 INFO    ] Initializing speech engine...
[2026-06-12 10:02:59,273.273 INFO    ] 2026-06-12 10:02:59
[2026-06-12 10:02:59,476.476 INFO    ] 2026-06-12 10:02:59
[2026-06-12 10:02:59,504.504 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 10:02:59,688.688 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 10:02:59,696.696 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 10:02:59,818.818 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 10:02:59,874.874 INFO    ] time= 12/06/2026 10:02:59
[2026-06-12 10:02:59,902.902 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 10:02:59,918.918 INFO    ] Checking for existing commands in stream...
[2026-06-12 10:02:59,988.988 INFO    ] No existing commands found in stream
[2026-06-12 10:03:04,998.998 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 10:03:05,001.001 INFO    ] Waiting 0.63 seconds before fallback handling...
[2026-06-12 10:03:06,002.002 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 10:03:06,004.004 INFO    ] Checking for system updates...
[2026-06-12 10:03:06,024.024 INFO    ] 200
[2026-06-12 10:03:06,026.026 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:03:06,058.058 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 10:03:06,060.060 INFO    ] No update needed
[2026-06-12 10:03:06,061.061 INFO    ] Checking for camera pi updates...
[2026-06-12 10:03:06,084.084 INFO    ] 200
[2026-06-12 10:03:06,085.085 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:03:06,113.113 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 10:03:06,150.150 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 10:03:06,151.151 INFO    ] No camera update needed
[2026-06-12 10:03:06,153.153 INFO    ] Script finished. Safe exiting...
[2026-06-12 10:03:06,154.154 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 10:03:06,157.157 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 10:03:06,160.160 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 10:03:08,202.202 INFO    ] ================================================
[2026-06-12 10:03:08,218.218 INFO    ] Launching Daemon at Fri Jun 12 10:03:08 IST 2026
[2026-06-12 10:03:08,228.228 INFO    ] ================================================
[2026-06-12 10:03:08,558.558 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 10:03:08
[2026-06-12 10:03:08,870.870 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 10:03:09,000.000 INFO    ] Initializing speech engine...
[2026-06-12 10:03:09,004.004 INFO    ] 2026-06-12 10:03:09
[2026-06-12 10:03:09,222.222 INFO    ] 2026-06-12 10:03:09
[2026-06-12 10:03:09,252.252 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 10:03:09,438.438 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 10:03:09,448.448 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 10:03:09,596.596 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 10:03:09,649.649 INFO    ] time= 12/06/2026 10:03:09
[2026-06-12 10:03:09,672.672 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 10:03:09,679.679 INFO    ] Checking for existing commands in stream...
[2026-06-12 10:03:09,747.747 INFO    ] No existing commands found in stream
[2026-06-12 10:03:14,755.755 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 10:03:14,758.758 INFO    ] Waiting 2.87 seconds before fallback handling...
[2026-06-12 10:03:18,024.024 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 10:03:18,026.026 INFO    ] Checking for system updates...
[2026-06-12 10:03:18,047.047 INFO    ] 200
[2026-06-12 10:03:18,048.048 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:03:18,079.079 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 10:03:18,080.080 INFO    ] No update needed
[2026-06-12 10:03:18,082.082 INFO    ] Checking for camera pi updates...
[2026-06-12 10:03:18,101.101 INFO    ] 200
[2026-06-12 10:03:18,103.103 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:03:18,126.126 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 10:03:18,163.163 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 10:03:18,164.164 INFO    ] No camera update needed
[2026-06-12 10:03:18,166.166 INFO    ] Script finished. Safe exiting...
[2026-06-12 10:03:18,167.167 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 10:03:18,171.171 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 10:03:18,173.173 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 10:03:20,213.213 INFO    ] ================================================
[2026-06-12 10:03:20,228.228 INFO    ] Launching Daemon at Fri Jun 12 10:03:20 IST 2026
[2026-06-12 10:03:20,240.240 INFO    ] ================================================
[2026-06-12 10:03:20,578.578 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 10:03:20
[2026-06-12 10:03:20,888.888 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 10:03:21,026.026 INFO    ] Initializing speech engine...
[2026-06-12 10:03:21,036.036 INFO    ] 2026-06-12 10:03:21
[2026-06-12 10:03:21,251.251 INFO    ] 2026-06-12 10:03:21
[2026-06-12 10:03:21,282.282 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 10:03:21,470.470 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 10:03:21,473.473 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 10:03:21,611.611 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 10:03:21,678.678 INFO    ] time= 12/06/2026 10:03:21
[2026-06-12 10:03:21,702.702 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 10:03:21,708.708 INFO    ] Checking for existing commands in stream...
[2026-06-12 10:03:21,776.776 INFO    ] No existing commands found in stream
[2026-06-12 10:03:26,785.785 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 10:03:26,789.789 INFO    ] Waiting 3.69 seconds before fallback handling...
[2026-06-12 10:03:30,825.825 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 10:03:30,826.826 INFO    ] Checking for system updates...
[2026-06-12 10:03:30,847.847 INFO    ] 200
[2026-06-12 10:03:30,849.849 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:03:30,879.879 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 10:03:30,881.881 INFO    ] No update needed
[2026-06-12 10:03:30,883.883 INFO    ] Checking for camera pi updates...
[2026-06-12 10:03:30,911.911 INFO    ] 200
[2026-06-12 10:03:30,913.913 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:03:30,936.936 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 10:03:30,972.972 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 10:03:30,974.974 INFO    ] No camera update needed
[2026-06-12 10:03:30,976.976 INFO    ] Script finished. Safe exiting...
[2026-06-12 10:03:30,977.977 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 10:03:30,980.980 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 10:03:30,983.983 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 10:03:33,017.017 INFO    ] ================================================
[2026-06-12 10:03:33,034.034 INFO    ] Launching Daemon at Fri Jun 12 10:03:33 IST 2026
[2026-06-12 10:03:33,046.046 INFO    ] ================================================
[2026-06-12 10:03:33,421.421 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 10:03:33
[2026-06-12 10:03:33,738.738 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 10:03:33,882.882 INFO    ] Initializing speech engine...
[2026-06-12 10:03:33,887.887 INFO    ] 2026-06-12 10:03:33
[2026-06-12 10:03:34,091.091 INFO    ] 2026-06-12 10:03:34
[2026-06-12 10:03:34,121.121 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 10:03:34,256.256 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 10:03:34,308.308 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 10:03:34,440.440 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 10:03:34,501.501 INFO    ] time= 12/06/2026 10:03:34
[2026-06-12 10:03:34,541.541 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 10:03:34,547.547 INFO    ] Checking for existing commands in stream...
[2026-06-12 10:03:34,638.638 INFO    ] No existing commands found in stream
[2026-06-12 10:03:39,647.647 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 10:03:39,650.650 INFO    ] Waiting 2.24 seconds before fallback handling...
[2026-06-12 10:03:42,254.254 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 10:03:42,255.255 INFO    ] Checking for system updates...
[2026-06-12 10:03:42,276.276 INFO    ] 200
[2026-06-12 10:03:42,277.277 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:03:42,309.309 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 10:03:42,311.311 INFO    ] No update needed
[2026-06-12 10:03:42,312.312 INFO    ] Checking for camera pi updates...
[2026-06-12 10:03:42,333.333 INFO    ] 200
[2026-06-12 10:03:42,334.334 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:03:42,358.358 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 10:03:42,396.396 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 10:03:42,398.398 INFO    ] No camera update needed
[2026-06-12 10:03:42,399.399 INFO    ] Script finished. Safe exiting...
[2026-06-12 10:03:42,400.400 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 10:03:42,403.403 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 10:03:42,406.406 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 10:03:44,445.445 INFO    ] ================================================
[2026-06-12 10:03:44,461.461 INFO    ] Launching Daemon at Fri Jun 12 10:03:44 IST 2026
[2026-06-12 10:03:44,472.472 INFO    ] ================================================
[2026-06-12 10:03:44,815.815 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 10:03:44
[2026-06-12 10:03:45,130.130 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 10:03:45,262.262 INFO    ] Initializing speech engine...
[2026-06-12 10:03:45,270.270 INFO    ] 2026-06-12 10:03:45
[2026-06-12 10:03:45,484.484 INFO    ] 2026-06-12 10:03:45
[2026-06-12 10:03:45,514.514 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 10:03:45,606.606 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 10:03:45,639.639 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 10:03:45,791.791 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 10:03:45,840.840 INFO    ] time= 12/06/2026 10:03:45
[2026-06-12 10:03:45,885.885 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 10:03:45,921.921 INFO    ] Checking for existing commands in stream...
[2026-06-12 10:03:46,014.014 INFO    ] No existing commands found in stream
[2026-06-12 10:03:51,028.028 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 10:03:51,031.031 INFO    ] Waiting 2.78 seconds before fallback handling...
[2026-06-12 10:03:54,155.155 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 10:03:54,156.156 INFO    ] Checking for system updates...
[2026-06-12 10:03:54,177.177 INFO    ] 200
[2026-06-12 10:03:54,178.178 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:03:54,210.210 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 10:03:54,212.212 INFO    ] No update needed
[2026-06-12 10:03:54,213.213 INFO    ] Checking for camera pi updates...
[2026-06-12 10:03:54,232.232 INFO    ] 200
[2026-06-12 10:03:54,233.233 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:03:54,257.257 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 10:03:54,294.294 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 10:03:54,295.295 INFO    ] No camera update needed
[2026-06-12 10:03:54,296.296 INFO    ] Script finished. Safe exiting...
[2026-06-12 10:03:54,297.297 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 10:03:54,300.300 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 10:03:54,303.303 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 10:03:56,342.342 INFO    ] ================================================
[2026-06-12 10:03:56,358.358 INFO    ] Launching Daemon at Fri Jun 12 10:03:56 IST 2026
[2026-06-12 10:03:56,369.369 INFO    ] ================================================
[2026-06-12 10:03:56,716.716 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 10:03:56
[2026-06-12 10:03:57,035.035 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 10:03:57,175.175 INFO    ] Initializing speech engine...
[2026-06-12 10:03:57,185.185 INFO    ] 2026-06-12 10:03:57
[2026-06-12 10:03:57,392.392 INFO    ] 2026-06-12 10:03:57
[2026-06-12 10:03:57,420.420 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 10:03:57,631.631 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 10:03:57,635.635 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 10:03:57,766.766 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 10:03:57,816.816 INFO    ] time= 12/06/2026 10:03:57
[2026-06-12 10:03:57,838.838 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 10:03:57,844.844 INFO    ] Checking for existing commands in stream...
[2026-06-12 10:03:57,912.912 INFO    ] No existing commands found in stream
[2026-06-12 10:04:02,920.920 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 10:04:02,921.921 INFO    ] Waiting 1.18 seconds before fallback handling...
[2026-06-12 10:04:04,456.456 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 10:04:04,457.457 INFO    ] Checking for system updates...
[2026-06-12 10:04:04,479.479 INFO    ] 200
[2026-06-12 10:04:04,480.480 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:04:04,511.511 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 10:04:04,512.512 INFO    ] No update needed
[2026-06-12 10:04:04,513.513 INFO    ] Checking for camera pi updates...
[2026-06-12 10:04:04,534.534 INFO    ] 200
[2026-06-12 10:04:04,535.535 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:04:04,559.559 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 10:04:04,593.593 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 10:04:04,594.594 INFO    ] No camera update needed
[2026-06-12 10:04:04,596.596 INFO    ] Script finished. Safe exiting...
[2026-06-12 10:04:04,598.598 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 10:04:04,601.601 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 10:04:04,604.604 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 10:04:06,643.643 INFO    ] ================================================
[2026-06-12 10:04:06,659.659 INFO    ] Launching Daemon at Fri Jun 12 10:04:06 IST 2026
[2026-06-12 10:04:06,670.670 INFO    ] ================================================
[2026-06-12 10:04:07,036.036 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 10:04:07
[2026-06-12 10:04:07,369.369 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 10:04:07,519.519 INFO    ] Initializing speech engine...
[2026-06-12 10:04:07,524.524 INFO    ] 2026-06-12 10:04:07
[2026-06-12 10:04:07,735.735 INFO    ] 2026-06-12 10:04:07
[2026-06-12 10:04:07,764.764 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 10:04:07,888.888 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 10:04:07,951.951 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 10:04:08,156.156 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 10:04:08,181.181 INFO    ] time= 12/06/2026 10:04:08
[2026-06-12 10:04:08,187.187 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 10:04:08,189.189 INFO    ] Checking for existing commands in stream...
[2026-06-12 10:04:08,256.256 INFO    ] No existing commands found in stream
[2026-06-12 10:04:13,270.270 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 10:04:13,273.273 INFO    ] Waiting 1.03 seconds before fallback handling...
[2026-06-12 10:04:14,663.663 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 10:04:14,664.664 INFO    ] Checking for system updates...
[2026-06-12 10:04:14,686.686 INFO    ] 200
[2026-06-12 10:04:14,688.688 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:04:14,732.732 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 10:04:14,733.733 INFO    ] No update needed
[2026-06-12 10:04:14,734.734 INFO    ] Checking for camera pi updates...
[2026-06-12 10:04:14,754.754 INFO    ] 200
[2026-06-12 10:04:14,755.755 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:04:14,779.779 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 10:04:14,915.915 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 10:04:14,917.917 INFO    ] No camera update needed
[2026-06-12 10:04:14,918.918 INFO    ] Script finished. Safe exiting...
[2026-06-12 10:04:14,920.920 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 10:04:14,923.923 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 10:04:14,926.926 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 10:04:16,964.964 INFO    ] ================================================
[2026-06-12 10:04:16,980.980 INFO    ] Launching Daemon at Fri Jun 12 10:04:16 IST 2026
[2026-06-12 10:04:16,992.992 INFO    ] ================================================
[2026-06-12 10:04:17,348.348 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 10:04:17
[2026-06-12 10:04:17,664.664 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 10:04:17,807.807 INFO    ] Initializing speech engine...
[2026-06-12 10:04:17,812.812 INFO    ] 2026-06-12 10:04:17
[2026-06-12 10:04:18,019.019 INFO    ] 2026-06-12 10:04:18
[2026-06-12 10:04:18,048.048 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 10:04:18,186.186 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 10:04:18,233.233 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 10:04:18,457.457 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 10:04:18,462.462 INFO    ] time= 12/06/2026 10:04:18
[2026-06-12 10:04:18,464.464 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 10:04:18,466.466 INFO    ] Checking for existing commands in stream...
[2026-06-12 10:04:18,533.533 INFO    ] No existing commands found in stream
[2026-06-12 10:04:23,547.547 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 10:04:23,550.550 INFO    ] Waiting 0.17 seconds before fallback handling...
[2026-06-12 10:04:24,066.066 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 10:04:24,068.068 INFO    ] Checking for system updates...
[2026-06-12 10:04:24,088.088 INFO    ] 200
[2026-06-12 10:04:24,090.090 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:04:24,127.127 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 10:04:24,128.128 INFO    ] No update needed
[2026-06-12 10:04:24,130.130 INFO    ] Checking for camera pi updates...
[2026-06-12 10:04:24,149.149 INFO    ] 200
[2026-06-12 10:04:24,151.151 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:04:24,174.174 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 10:04:24,207.207 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 10:04:24,208.208 INFO    ] No camera update needed
[2026-06-12 10:04:24,209.209 INFO    ] Script finished. Safe exiting...
[2026-06-12 10:04:24,211.211 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 10:04:24,214.214 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 10:04:24,217.217 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 10:04:26,259.259 INFO    ] ================================================
[2026-06-12 10:04:26,274.274 INFO    ] Launching Daemon at Fri Jun 12 10:04:26 IST 2026
[2026-06-12 10:04:26,285.285 INFO    ] ================================================
[2026-06-12 10:04:26,646.646 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 10:04:26
[2026-06-12 10:04:26,981.981 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 10:04:27,135.135 INFO    ] Initializing speech engine...
[2026-06-12 10:04:27,140.140 INFO    ] 2026-06-12 10:04:27
[2026-06-12 10:04:27,351.351 INFO    ] 2026-06-12 10:04:27
[2026-06-12 10:04:27,381.381 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 10:04:27,510.510 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 10:04:27,569.569 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 10:04:27,706.706 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 10:04:27,774.774 INFO    ] time= 12/06/2026 10:04:27
[2026-06-12 10:04:27,802.802 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 10:04:27,808.808 INFO    ] Checking for existing commands in stream...
[2026-06-12 10:04:27,875.875 INFO    ] No existing commands found in stream
[2026-06-12 10:04:32,885.885 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 10:04:32,888.888 INFO    ] Waiting 3.16 seconds before fallback handling...
[2026-06-12 10:04:36,398.398 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 10:04:36,400.400 INFO    ] Checking for system updates...
[2026-06-12 10:04:36,422.422 INFO    ] 200
[2026-06-12 10:04:36,424.424 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:04:36,457.457 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 10:04:36,458.458 INFO    ] No update needed
[2026-06-12 10:04:36,459.459 INFO    ] Checking for camera pi updates...
[2026-06-12 10:04:36,479.479 INFO    ] 200
[2026-06-12 10:04:36,481.481 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:04:36,515.515 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 10:04:36,558.558 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 10:04:36,560.560 INFO    ] No camera update needed
[2026-06-12 10:04:36,561.561 INFO    ] Script finished. Safe exiting...
[2026-06-12 10:04:36,563.563 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 10:04:36,566.566 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 10:04:36,569.569 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 10:04:38,607.607 INFO    ] ================================================
[2026-06-12 10:04:38,623.623 INFO    ] Launching Daemon at Fri Jun 12 10:04:38 IST 2026
[2026-06-12 10:04:38,635.635 INFO    ] ================================================
[2026-06-12 10:04:38,972.972 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 10:04:38
[2026-06-12 10:04:39,289.289 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 10:04:39,422.422 INFO    ] Initializing speech engine...
[2026-06-12 10:04:39,427.427 INFO    ] 2026-06-12 10:04:39
[2026-06-12 10:04:39,656.656 INFO    ] 2026-06-12 10:04:39
[2026-06-12 10:04:39,680.680 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 10:04:39,887.887 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 10:04:39,897.897 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 10:04:40,033.033 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 10:04:40,086.086 INFO    ] time= 12/06/2026 10:04:40
[2026-06-12 10:04:40,125.125 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 10:04:40,136.136 INFO    ] Checking for existing commands in stream...
[2026-06-12 10:04:40,213.213 INFO    ] No existing commands found in stream
[2026-06-12 10:04:45,223.223 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 10:04:45,226.226 INFO    ] Waiting 1.17 seconds before fallback handling...
[2026-06-12 10:04:46,766.766 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 10:04:46,768.768 INFO    ] Checking for system updates...
[2026-06-12 10:04:46,789.789 INFO    ] 200
[2026-06-12 10:04:46,791.791 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:04:46,821.821 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 10:04:46,822.822 INFO    ] No update needed
[2026-06-12 10:04:46,823.823 INFO    ] Checking for camera pi updates...
[2026-06-12 10:04:46,845.845 INFO    ] 200
[2026-06-12 10:04:46,846.846 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:04:46,870.870 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 10:04:46,909.909 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 10:04:46,910.910 INFO    ] No camera update needed
[2026-06-12 10:04:46,911.911 INFO    ] Script finished. Safe exiting...
[2026-06-12 10:04:46,913.913 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 10:04:46,915.915 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 10:04:46,918.918 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 10:04:48,958.958 INFO    ] ================================================
[2026-06-12 10:04:48,974.974 INFO    ] Launching Daemon at Fri Jun 12 10:04:48 IST 2026
[2026-06-12 10:04:48,985.985 INFO    ] ================================================
[2026-06-12 10:04:49,322.322 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 10:04:49
[2026-06-12 10:04:49,635.635 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 10:04:49,779.779 INFO    ] Initializing speech engine...
[2026-06-12 10:04:49,784.784 INFO    ] 2026-06-12 10:04:49
[2026-06-12 10:04:49,988.988 INFO    ] 2026-06-12 10:04:49
[2026-06-12 10:04:50,017.017 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 10:04:50,203.203 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 10:04:50,206.206 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 10:04:50,337.337 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 10:04:50,398.398 INFO    ] time= 12/06/2026 10:04:50
[2026-06-12 10:04:50,428.428 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 10:04:50,438.438 INFO    ] Checking for existing commands in stream...
[2026-06-12 10:04:50,508.508 INFO    ] No existing commands found in stream
[2026-06-12 10:04:55,519.519 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 10:04:55,522.522 INFO    ] Waiting 2.63 seconds before fallback handling...
[2026-06-12 10:04:58,505.505 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 10:04:58,506.506 INFO    ] Checking for system updates...
[2026-06-12 10:04:58,527.527 INFO    ] 200
[2026-06-12 10:04:58,528.528 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:04:58,558.558 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 10:04:58,559.559 INFO    ] No update needed
[2026-06-12 10:04:58,561.561 INFO    ] Checking for camera pi updates...
[2026-06-12 10:04:58,581.581 INFO    ] 200
[2026-06-12 10:04:58,582.582 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:04:58,607.607 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 10:04:58,644.644 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 10:04:58,645.645 INFO    ] No camera update needed
[2026-06-12 10:04:58,647.647 INFO    ] Script finished. Safe exiting...
[2026-06-12 10:04:58,648.648 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 10:04:58,651.651 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 10:04:58,654.654 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 10:05:00,692.692 INFO    ] ================================================
[2026-06-12 10:05:00,707.707 INFO    ] Launching Daemon at Fri Jun 12 10:05:00 IST 2026
[2026-06-12 10:05:00,718.718 INFO    ] ================================================
[2026-06-12 10:05:01,043.043 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 10:05:01
[2026-06-12 10:05:01,571.571 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 10:05:01,736.736 INFO    ] Initializing speech engine...
[2026-06-12 10:05:01,742.742 INFO    ] 2026-06-12 10:05:01
[2026-06-12 10:05:01,999.999 INFO    ] 2026-06-12 10:05:01
[2026-06-12 10:05:02,032.032 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 10:05:02,185.185 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 10:05:02,228.228 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 10:05:02,402.402 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 10:05:02,476.476 INFO    ] time= 12/06/2026 10:05:02
[2026-06-12 10:05:02,501.501 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 10:05:02,508.508 INFO    ] Checking for existing commands in stream...
[2026-06-12 10:05:02,575.575 INFO    ] No existing commands found in stream
[2026-06-12 10:05:07,584.584 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 10:05:07,587.587 INFO    ] Waiting 1.97 seconds before fallback handling...
[2026-06-12 10:05:11,455.455 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 10:05:11,457.457 INFO    ] Checking for system updates...
[2026-06-12 10:05:11,494.494 INFO    ] 200
[2026-06-12 10:05:11,496.496 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:05:11,559.559 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 10:05:11,562.562 INFO    ] No update needed
[2026-06-12 10:05:11,564.564 INFO    ] Checking for camera pi updates...
[2026-06-12 10:05:11,591.591 INFO    ] 200
[2026-06-12 10:05:11,592.592 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:05:11,615.615 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 10:05:11,653.653 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 10:05:11,654.654 INFO    ] No camera update needed
[2026-06-12 10:05:11,656.656 INFO    ] Script finished. Safe exiting...
[2026-06-12 10:05:11,657.657 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 10:05:11,660.660 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 10:05:11,663.663 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 10:05:13,702.702 INFO    ] ================================================
[2026-06-12 10:05:13,717.717 INFO    ] Launching Daemon at Fri Jun 12 10:05:13 IST 2026
[2026-06-12 10:05:13,728.728 INFO    ] ================================================
[2026-06-12 10:05:14,100.100 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 10:05:14
[2026-06-12 10:05:14,411.411 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 10:05:14,540.540 INFO    ] Initializing speech engine...
[2026-06-12 10:05:14,544.544 INFO    ] 2026-06-12 10:05:14
[2026-06-12 10:05:14,758.758 INFO    ] 2026-06-12 10:05:14
[2026-06-12 10:05:14,788.788 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 10:05:14,970.970 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 10:05:14,974.974 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 10:05:15,102.102 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 10:05:15,153.153 INFO    ] time= 12/06/2026 10:05:15
[2026-06-12 10:05:15,193.193 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 10:05:15,203.203 INFO    ] Checking for existing commands in stream...
[2026-06-12 10:05:15,272.272 INFO    ] No existing commands found in stream
[2026-06-12 10:05:20,283.283 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 10:05:20,285.285 INFO    ] Waiting 0.88 seconds before fallback handling...
[2026-06-12 10:05:21,541.541 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 10:05:21,543.543 INFO    ] Checking for system updates...
[2026-06-12 10:05:21,563.563 INFO    ] 200
[2026-06-12 10:05:21,565.565 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:05:21,598.598 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 10:05:21,599.599 INFO    ] No update needed
[2026-06-12 10:05:21,601.601 INFO    ] Checking for camera pi updates...
[2026-06-12 10:05:21,621.621 INFO    ] 200
[2026-06-12 10:05:21,623.623 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:05:21,650.650 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 10:05:21,693.693 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 10:05:21,695.695 INFO    ] No camera update needed
[2026-06-12 10:05:21,696.696 INFO    ] Script finished. Safe exiting...
[2026-06-12 10:05:21,697.697 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 10:05:21,701.701 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 10:05:21,704.704 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 10:05:23,742.742 INFO    ] ================================================
[2026-06-12 10:05:23,757.757 INFO    ] Launching Daemon at Fri Jun 12 10:05:23 IST 2026
[2026-06-12 10:05:23,768.768 INFO    ] ================================================
[2026-06-12 10:05:24,098.098 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 10:05:24
[2026-06-12 10:05:24,409.409 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 10:05:24,540.540 INFO    ] Initializing speech engine...
[2026-06-12 10:05:24,547.547 INFO    ] 2026-06-12 10:05:24
[2026-06-12 10:05:24,758.758 INFO    ] 2026-06-12 10:05:24
[2026-06-12 10:05:24,787.787 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 10:05:24,971.971 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 10:05:24,979.979 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 10:05:25,101.101 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 10:05:25,162.162 INFO    ] time= 12/06/2026 10:05:25
[2026-06-12 10:05:25,192.192 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 10:05:25,202.202 INFO    ] Checking for existing commands in stream...
[2026-06-12 10:05:25,274.274 INFO    ] No existing commands found in stream
[2026-06-12 10:05:30,283.283 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 10:05:30,286.286 INFO    ] Waiting 3.28 seconds before fallback handling...
[2026-06-12 10:05:33,946.946 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 10:05:33,948.948 INFO    ] Checking for system updates...
[2026-06-12 10:05:33,969.969 INFO    ] 200
[2026-06-12 10:05:33,970.970 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:05:34,002.002 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 10:05:34,004.004 INFO    ] No update needed
[2026-06-12 10:05:34,005.005 INFO    ] Checking for camera pi updates...
[2026-06-12 10:05:34,024.024 INFO    ] 200
[2026-06-12 10:05:34,025.025 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:05:34,048.048 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 10:05:34,083.083 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 10:05:34,084.084 INFO    ] No camera update needed
[2026-06-12 10:05:34,086.086 INFO    ] Script finished. Safe exiting...
[2026-06-12 10:05:34,087.087 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 10:05:34,090.090 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 10:05:34,093.093 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 10:05:36,132.132 INFO    ] ================================================
[2026-06-12 10:05:36,147.147 INFO    ] Launching Daemon at Fri Jun 12 10:05:36 IST 2026
[2026-06-12 10:05:36,158.158 INFO    ] ================================================
[2026-06-12 10:05:36,520.520 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 10:05:36
[2026-06-12 10:05:36,835.835 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 10:05:36,968.968 INFO    ] Initializing speech engine...
[2026-06-12 10:05:36,972.972 INFO    ] 2026-06-12 10:05:36
[2026-06-12 10:05:37,199.199 INFO    ] 2026-06-12 10:05:37
[2026-06-12 10:05:37,230.230 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 10:05:37,362.362 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 10:05:37,405.405 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 10:05:37,569.569 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 10:05:37,632.632 INFO    ] time= 12/06/2026 10:05:37
[2026-06-12 10:05:37,666.666 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 10:05:37,677.677 INFO    ] Checking for existing commands in stream...
[2026-06-12 10:05:37,778.778 INFO    ] No existing commands found in stream
[2026-06-12 10:05:42,787.787 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 10:05:42,795.795 INFO    ] Waiting 1.35 seconds before fallback handling...
[2026-06-12 10:05:44,536.536 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 10:05:44,538.538 INFO    ] Checking for system updates...
[2026-06-12 10:05:44,559.559 INFO    ] 200
[2026-06-12 10:05:44,561.561 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:05:44,592.592 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 10:05:44,593.593 INFO    ] No update needed
[2026-06-12 10:05:44,594.594 INFO    ] Checking for camera pi updates...
[2026-06-12 10:05:44,614.614 INFO    ] 200
[2026-06-12 10:05:44,615.615 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:05:44,639.639 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 10:05:44,674.674 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 10:05:44,675.675 INFO    ] No camera update needed
[2026-06-12 10:05:44,676.676 INFO    ] Script finished. Safe exiting...
[2026-06-12 10:05:44,678.678 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 10:05:44,681.681 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 10:05:44,684.684 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 10:05:46,724.724 INFO    ] ================================================
[2026-06-12 10:05:46,739.739 INFO    ] Launching Daemon at Fri Jun 12 10:05:46 IST 2026
[2026-06-12 10:05:46,749.749 INFO    ] ================================================
[2026-06-12 10:05:47,114.114 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 10:05:47
[2026-06-12 10:05:47,430.430 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 10:05:47,559.559 INFO    ] Initializing speech engine...
[2026-06-12 10:05:47,561.561 INFO    ] 2026-06-12 10:05:47
[2026-06-12 10:05:47,787.787 INFO    ] 2026-06-12 10:05:47
[2026-06-12 10:05:47,821.821 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 10:05:48,000.000 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 10:05:48,009.009 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 10:05:48,138.138 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 10:05:48,197.197 INFO    ] time= 12/06/2026 10:05:48
[2026-06-12 10:05:48,229.229 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 10:05:48,236.236 INFO    ] Checking for existing commands in stream...
[2026-06-12 10:05:48,302.302 INFO    ] No existing commands found in stream
[2026-06-12 10:05:53,312.312 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 10:05:53,315.315 INFO    ] Waiting 1.41 seconds before fallback handling...
[2026-06-12 10:05:55,106.106 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 10:05:55,108.108 INFO    ] Checking for system updates...
[2026-06-12 10:05:55,129.129 INFO    ] 200
[2026-06-12 10:05:55,130.130 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:05:55,160.160 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 10:05:55,162.162 INFO    ] No update needed
[2026-06-12 10:05:55,163.163 INFO    ] Checking for camera pi updates...
[2026-06-12 10:05:55,183.183 INFO    ] 200
[2026-06-12 10:05:55,184.184 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:05:55,208.208 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 10:05:55,251.251 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 10:05:55,252.252 INFO    ] No camera update needed
[2026-06-12 10:05:55,253.253 INFO    ] Script finished. Safe exiting...
[2026-06-12 10:05:55,255.255 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 10:05:55,258.258 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 10:05:55,261.261 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 10:05:57,299.299 INFO    ] ================================================
[2026-06-12 10:05:57,314.314 INFO    ] Launching Daemon at Fri Jun 12 10:05:57 IST 2026
[2026-06-12 10:05:57,325.325 INFO    ] ================================================
[2026-06-12 10:05:57,685.685 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 10:05:57
[2026-06-12 10:05:57,995.995 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 10:05:58,127.127 INFO    ] Initializing speech engine...
[2026-06-12 10:05:58,132.132 INFO    ] 2026-06-12 10:05:58
[2026-06-12 10:05:58,358.358 INFO    ] 2026-06-12 10:05:58
[2026-06-12 10:05:58,389.389 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 10:05:58,591.591 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 10:05:58,600.600 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 10:05:58,732.732 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 10:05:58,784.784 INFO    ] time= 12/06/2026 10:05:58
[2026-06-12 10:05:58,817.817 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 10:05:58,839.839 INFO    ] Checking for existing commands in stream...
[2026-06-12 10:05:58,918.918 INFO    ] No existing commands found in stream
[2026-06-12 10:06:03,929.929 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 10:06:03,932.932 INFO    ] Waiting 0.53 seconds before fallback handling...
[2026-06-12 10:06:04,820.820 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 10:06:04,821.821 INFO    ] Checking for system updates...
[2026-06-12 10:06:04,841.841 INFO    ] 200
[2026-06-12 10:06:04,843.843 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:06:04,873.873 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 10:06:04,874.874 INFO    ] No update needed
[2026-06-12 10:06:04,876.876 INFO    ] Checking for camera pi updates...
[2026-06-12 10:06:04,895.895 INFO    ] 200
[2026-06-12 10:06:04,896.896 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:06:04,919.919 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 10:06:04,978.978 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 10:06:04,980.980 INFO    ] No camera update needed
[2026-06-12 10:06:04,981.981 INFO    ] Script finished. Safe exiting...
[2026-06-12 10:06:04,982.982 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 10:06:04,985.985 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 10:06:04,988.988 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 10:06:07,027.027 INFO    ] ================================================
[2026-06-12 10:06:07,042.042 INFO    ] Launching Daemon at Fri Jun 12 10:06:07 IST 2026
[2026-06-12 10:06:07,053.053 INFO    ] ================================================
[2026-06-12 10:06:07,390.390 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 10:06:07
[2026-06-12 10:06:07,701.701 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 10:06:07,834.834 INFO    ] Initializing speech engine...
[2026-06-12 10:06:07,842.842 INFO    ] 2026-06-12 10:06:07
[2026-06-12 10:06:08,063.063 INFO    ] 2026-06-12 10:06:08
[2026-06-12 10:06:08,093.093 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 10:06:08,279.279 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 10:06:08,283.283 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 10:06:08,420.420 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 10:06:08,479.479 INFO    ] time= 12/06/2026 10:06:08
[2026-06-12 10:06:08,513.513 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 10:06:08,515.515 INFO    ] Checking for existing commands in stream...
[2026-06-12 10:06:08,587.587 INFO    ] No existing commands found in stream
[2026-06-12 10:06:13,596.596 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 10:06:13,599.599 INFO    ] Waiting 1.18 seconds before fallback handling...
[2026-06-12 10:06:15,126.126 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 10:06:15,127.127 INFO    ] Checking for system updates...
[2026-06-12 10:06:15,148.148 INFO    ] 200
[2026-06-12 10:06:15,150.150 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:06:15,180.180 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 10:06:15,181.181 INFO    ] No update needed
[2026-06-12 10:06:15,182.182 INFO    ] Checking for camera pi updates...
[2026-06-12 10:06:15,202.202 INFO    ] 200
[2026-06-12 10:06:15,203.203 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:06:15,226.226 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 10:06:15,264.264 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 10:06:15,265.265 INFO    ] No camera update needed
[2026-06-12 10:06:15,266.266 INFO    ] Script finished. Safe exiting...
[2026-06-12 10:06:15,268.268 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 10:06:15,271.271 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 10:06:15,273.273 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 10:06:17,311.311 INFO    ] ================================================
[2026-06-12 10:06:17,327.327 INFO    ] Launching Daemon at Fri Jun 12 10:06:17 IST 2026
[2026-06-12 10:06:17,338.338 INFO    ] ================================================
[2026-06-12 10:06:17,688.688 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 10:06:17
[2026-06-12 10:06:18,004.004 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 10:06:18,136.136 INFO    ] Initializing speech engine...
[2026-06-12 10:06:18,144.144 INFO    ] 2026-06-12 10:06:18
[2026-06-12 10:06:18,357.357 INFO    ] 2026-06-12 10:06:18
[2026-06-12 10:06:18,385.385 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 10:06:18,568.568 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 10:06:18,577.577 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 10:06:18,706.706 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 10:06:18,770.770 INFO    ] time= 12/06/2026 10:06:18
[2026-06-12 10:06:18,796.796 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 10:06:18,798.798 INFO    ] Checking for existing commands in stream...
[2026-06-12 10:06:18,868.868 INFO    ] No existing commands found in stream
[2026-06-12 10:06:23,879.879 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 10:06:23,882.882 INFO    ] Waiting 0.63 seconds before fallback handling...
[2026-06-12 10:06:24,854.854 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 10:06:24,856.856 INFO    ] Checking for system updates...
[2026-06-12 10:06:24,877.877 INFO    ] 200
[2026-06-12 10:06:24,878.878 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:06:24,913.913 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 10:06:24,914.914 INFO    ] No update needed
[2026-06-12 10:06:24,915.915 INFO    ] Checking for camera pi updates...
[2026-06-12 10:06:24,940.940 INFO    ] 200
[2026-06-12 10:06:24,941.941 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:06:24,967.967 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 10:06:25,112.112 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 10:06:25,113.113 INFO    ] No camera update needed
[2026-06-12 10:06:25,114.114 INFO    ] Script finished. Safe exiting...
[2026-06-12 10:06:25,116.116 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 10:06:25,119.119 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 10:06:25,121.121 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 10:06:27,161.161 INFO    ] ================================================
[2026-06-12 10:06:27,178.178 INFO    ] Launching Daemon at Fri Jun 12 10:06:27 IST 2026
[2026-06-12 10:06:27,189.189 INFO    ] ================================================
[2026-06-12 10:06:27,534.534 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 10:06:27
[2026-06-12 10:06:27,851.851 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 10:06:27,984.984 INFO    ] Initializing speech engine...
[2026-06-12 10:06:27,996.996 INFO    ] 2026-06-12 10:06:27
[2026-06-12 10:06:28,203.203 INFO    ] 2026-06-12 10:06:28
[2026-06-12 10:06:28,231.231 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 10:06:28,414.414 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 10:06:28,423.423 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 10:06:28,545.545 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 10:06:28,596.596 INFO    ] time= 12/06/2026 10:06:28
[2026-06-12 10:06:28,624.624 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 10:06:28,645.645 INFO    ] Checking for existing commands in stream...
[2026-06-12 10:06:28,716.716 INFO    ] No existing commands found in stream
[2026-06-12 10:06:33,725.725 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 10:06:33,728.728 INFO    ] Waiting 3.68 seconds before fallback handling...
[2026-06-12 10:06:37,754.754 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 10:06:37,755.755 INFO    ] Checking for system updates...
[2026-06-12 10:06:37,776.776 INFO    ] 200
[2026-06-12 10:06:37,777.777 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:06:37,807.807 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 10:06:37,809.809 INFO    ] No update needed
[2026-06-12 10:06:37,810.810 INFO    ] Checking for camera pi updates...
[2026-06-12 10:06:37,829.829 INFO    ] 200
[2026-06-12 10:06:37,831.831 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:06:37,854.854 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 10:06:37,886.886 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 10:06:37,888.888 INFO    ] No camera update needed
[2026-06-12 10:06:37,889.889 INFO    ] Script finished. Safe exiting...
[2026-06-12 10:06:37,890.890 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 10:06:37,893.893 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 10:06:37,896.896 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 10:06:39,936.936 INFO    ] ================================================
[2026-06-12 10:06:39,952.952 INFO    ] Launching Daemon at Fri Jun 12 10:06:39 IST 2026
[2026-06-12 10:06:39,963.963 INFO    ] ================================================
[2026-06-12 10:06:40,318.318 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 10:06:40
[2026-06-12 10:06:40,635.635 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 10:06:40,773.773 INFO    ] Initializing speech engine...
[2026-06-12 10:06:40,782.782 INFO    ] 2026-06-12 10:06:40
[2026-06-12 10:06:40,987.987 INFO    ] 2026-06-12 10:06:40
[2026-06-12 10:06:41,017.017 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 10:06:41,200.200 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 10:06:41,203.203 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 10:06:41,332.332 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 10:06:41,393.393 INFO    ] time= 12/06/2026 10:06:41
[2026-06-12 10:06:41,430.430 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 10:06:41,437.437 INFO    ] Checking for existing commands in stream...
[2026-06-12 10:06:41,504.504 INFO    ] No existing commands found in stream
[2026-06-12 10:06:46,513.513 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 10:06:46,516.516 INFO    ] Waiting 1.52 seconds before fallback handling...
[2026-06-12 10:06:48,357.357 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 10:06:48,359.359 INFO    ] Checking for system updates...
[2026-06-12 10:06:48,380.380 INFO    ] 200
[2026-06-12 10:06:48,382.382 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:06:48,413.413 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 10:06:48,414.414 INFO    ] No update needed
[2026-06-12 10:06:48,415.415 INFO    ] Checking for camera pi updates...
[2026-06-12 10:06:48,435.435 INFO    ] 200
[2026-06-12 10:06:48,437.437 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:06:48,460.460 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 10:06:48,500.500 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 10:06:48,502.502 INFO    ] No camera update needed
[2026-06-12 10:06:48,503.503 INFO    ] Script finished. Safe exiting...
[2026-06-12 10:06:48,505.505 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 10:06:48,508.508 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 10:06:48,511.511 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 10:06:50,551.551 INFO    ] ================================================
[2026-06-12 10:06:50,567.567 INFO    ] Launching Daemon at Fri Jun 12 10:06:50 IST 2026
[2026-06-12 10:06:50,578.578 INFO    ] ================================================
[2026-06-12 10:06:50,930.930 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 10:06:50
[2026-06-12 10:06:51,241.241 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 10:06:51,374.374 INFO    ] Initializing speech engine...
[2026-06-12 10:06:51,377.377 INFO    ] 2026-06-12 10:06:51
[2026-06-12 10:06:51,603.603 INFO    ] 2026-06-12 10:06:51
[2026-06-12 10:06:51,634.634 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 10:06:51,762.762 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 10:06:51,830.830 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 10:06:51,968.968 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 10:06:52,019.019 INFO    ] time= 12/06/2026 10:06:51
[2026-06-12 10:06:52,057.057 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 10:06:52,073.073 INFO    ] Checking for existing commands in stream...
[2026-06-12 10:06:52,147.147 INFO    ] No existing commands found in stream
[2026-06-12 10:06:57,157.157 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 10:06:57,160.160 INFO    ] Waiting 0.72 seconds before fallback handling...
[2026-06-12 10:06:58,265.265 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 10:06:58,267.267 INFO    ] Checking for system updates...
[2026-06-12 10:06:58,290.290 INFO    ] 200
[2026-06-12 10:06:58,291.291 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:06:58,322.322 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 10:06:58,323.323 INFO    ] No update needed
[2026-06-12 10:06:58,325.325 INFO    ] Checking for camera pi updates...
[2026-06-12 10:06:58,347.347 INFO    ] 200
[2026-06-12 10:06:58,349.349 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:06:58,372.372 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 10:06:58,413.413 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 10:06:58,414.414 INFO    ] No camera update needed
[2026-06-12 10:06:58,416.416 INFO    ] Script finished. Safe exiting...
[2026-06-12 10:06:58,417.417 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 10:06:58,420.420 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 10:06:58,423.423 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 10:07:00,452.452 INFO    ] ================================================
[2026-06-12 10:07:00,461.461 INFO    ] Launching Daemon at Fri Jun 12 10:07:00 IST 2026
[2026-06-12 10:07:00,466.466 INFO    ] ================================================
[2026-06-12 10:07:00,813.813 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 10:07:00
[2026-06-12 10:07:01,126.126 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 10:07:01,258.258 INFO    ] Initializing speech engine...
[2026-06-12 10:07:01,262.262 INFO    ] 2026-06-12 10:07:01
[2026-06-12 10:07:01,490.490 INFO    ] 2026-06-12 10:07:01
[2026-06-12 10:07:01,521.521 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 10:07:01,657.657 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 10:07:01,719.719 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 10:07:01,831.831 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 10:07:01,834.834 INFO    ] time= 12/06/2026 10:07:01
[2026-06-12 10:07:01,837.837 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 10:07:01,839.839 INFO    ] Checking for existing commands in stream...
[2026-06-12 10:07:01,912.912 INFO    ] No existing commands found in stream
[2026-06-12 10:07:06,921.921 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 10:07:06,924.924 INFO    ] Waiting 1.91 seconds before fallback handling...
[2026-06-12 10:07:09,201.201 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 10:07:09,203.203 INFO    ] Checking for system updates...
[2026-06-12 10:07:09,223.223 INFO    ] 200
[2026-06-12 10:07:09,224.224 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:07:09,254.254 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 10:07:09,256.256 INFO    ] No update needed
[2026-06-12 10:07:09,257.257 INFO    ] Checking for camera pi updates...
[2026-06-12 10:07:09,276.276 INFO    ] 200
[2026-06-12 10:07:09,278.278 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:07:09,301.301 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 10:07:09,342.342 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 10:07:09,343.343 INFO    ] No camera update needed
[2026-06-12 10:07:09,345.345 INFO    ] Script finished. Safe exiting...
[2026-06-12 10:07:09,346.346 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 10:07:09,349.349 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 10:07:09,352.352 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 10:07:11,389.389 INFO    ] ================================================
[2026-06-12 10:07:11,405.405 INFO    ] Launching Daemon at Fri Jun 12 10:07:11 IST 2026
[2026-06-12 10:07:11,415.415 INFO    ] ================================================
[2026-06-12 10:07:11,779.779 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 10:07:11
[2026-06-12 10:07:12,090.090 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 10:07:12,218.218 INFO    ] Initializing speech engine...
[2026-06-12 10:07:12,222.222 INFO    ] 2026-06-12 10:07:12
[2026-06-12 10:07:12,438.438 INFO    ] 2026-06-12 10:07:12
[2026-06-12 10:07:12,466.466 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 10:07:12,649.649 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 10:07:12,652.652 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 10:07:12,793.793 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 10:07:12,856.856 INFO    ] time= 12/06/2026 10:07:12
[2026-06-12 10:07:12,880.880 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 10:07:12,886.886 INFO    ] Checking for existing commands in stream...
[2026-06-12 10:07:12,952.952 INFO    ] No existing commands found in stream
[2026-06-12 10:07:17,961.961 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 10:07:17,964.964 INFO    ] Waiting 1.34 seconds before fallback handling...
[2026-06-12 10:07:19,668.668 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 10:07:19,670.670 INFO    ] Checking for system updates...
[2026-06-12 10:07:19,690.690 INFO    ] 200
[2026-06-12 10:07:19,692.692 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:07:19,721.721 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 10:07:19,723.723 INFO    ] No update needed
[2026-06-12 10:07:19,724.724 INFO    ] Checking for camera pi updates...
[2026-06-12 10:07:19,746.746 INFO    ] 200
[2026-06-12 10:07:19,747.747 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:07:19,770.770 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 10:07:19,807.807 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 10:07:19,808.808 INFO    ] No camera update needed
[2026-06-12 10:07:19,810.810 INFO    ] Script finished. Safe exiting...
[2026-06-12 10:07:19,811.811 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 10:07:19,814.814 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 10:07:19,817.817 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 10:07:21,856.856 INFO    ] ================================================
[2026-06-12 10:07:21,871.871 INFO    ] Launching Daemon at Fri Jun 12 10:07:21 IST 2026
[2026-06-12 10:07:21,882.882 INFO    ] ================================================
[2026-06-12 10:07:22,248.248 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 10:07:22
[2026-06-12 10:07:22,565.565 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 10:07:22,706.706 INFO    ] Initializing speech engine...
[2026-06-12 10:07:22,719.719 INFO    ] 2026-06-12 10:07:22
[2026-06-12 10:07:22,938.938 INFO    ] 2026-06-12 10:07:22
[2026-06-12 10:07:22,968.968 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 10:07:23,164.164 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 10:07:23,168.168 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 10:07:23,314.314 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 10:07:23,383.383 INFO    ] time= 12/06/2026 10:07:23
[2026-06-12 10:07:23,410.410 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 10:07:23,416.416 INFO    ] Checking for existing commands in stream...
[2026-06-12 10:07:23,488.488 INFO    ] No existing commands found in stream
[2026-06-12 10:07:28,501.501 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 10:07:28,504.504 INFO    ] Waiting 1.14 seconds before fallback handling...
[2026-06-12 10:07:30,007.007 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 10:07:30,009.009 INFO    ] Checking for system updates...
[2026-06-12 10:07:30,031.031 INFO    ] 200
[2026-06-12 10:07:30,033.033 INFO    ] {"msg": "Status of machine", "state": "STATE_HEALTH_CHECK", "status": true}
[2026-06-12 10:07:30,034.034 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping update check
[2026-06-12 10:07:30,036.036 INFO    ] Checking for camera pi updates...
[2026-06-12 10:07:30,061.061 INFO    ] 200
[2026-06-12 10:07:30,068.068 INFO    ] {"msg": "Status of machine", "state": "STATE_HEALTH_CHECK", "status": true}
[2026-06-12 10:07:30,070.070 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping camera update check
[2026-06-12 10:07:30,072.072 INFO    ] Script finished. Safe exiting...
[2026-06-12 10:07:30,074.074 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 10:07:30,077.077 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 10:07:30,080.080 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 10:07:32,104.104 INFO    ] ================================================
[2026-06-12 10:07:32,114.114 INFO    ] Launching Daemon at Fri Jun 12 10:07:32 IST 2026
[2026-06-12 10:07:32,121.121 INFO    ] ================================================
[2026-06-12 10:07:32,488.488 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 10:07:32
[2026-06-12 10:07:32,874.874 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 10:07:33,027.027 INFO    ] Initializing speech engine...
[2026-06-12 10:07:33,039.039 INFO    ] 2026-06-12 10:07:33
[2026-06-12 10:07:33,266.266 INFO    ] 2026-06-12 10:07:33
[2026-06-12 10:07:33,296.296 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 10:07:33,436.436 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 10:07:33,494.494 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 10:07:33,624.624 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 10:07:33,625.625 INFO    ] time= 12/06/2026 10:07:33
[2026-06-12 10:07:33,627.627 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 10:07:33,628.628 INFO    ] Checking for existing commands in stream...
[2026-06-12 10:07:33,696.696 INFO    ] No existing commands found in stream
[2026-06-12 10:07:38,705.705 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 10:07:38,708.708 INFO    ] Waiting 0.07 seconds before fallback handling...
[2026-06-12 10:07:39,124.124 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 10:07:39,126.126 INFO    ] Checking for system updates...
[2026-06-12 10:07:39,147.147 INFO    ] 200
[2026-06-12 10:07:39,148.148 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:07:39,178.178 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 10:07:39,179.179 INFO    ] No update needed
[2026-06-12 10:07:39,181.181 INFO    ] Checking for camera pi updates...
[2026-06-12 10:07:39,200.200 INFO    ] 200
[2026-06-12 10:07:39,202.202 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:07:39,224.224 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 10:07:39,269.269 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 10:07:39,270.270 INFO    ] No camera update needed
[2026-06-12 10:07:39,272.272 INFO    ] Script finished. Safe exiting...
[2026-06-12 10:07:39,273.273 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 10:07:39,276.276 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 10:07:39,278.278 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 10:07:41,319.319 INFO    ] ================================================
[2026-06-12 10:07:41,335.335 INFO    ] Launching Daemon at Fri Jun 12 10:07:41 IST 2026
[2026-06-12 10:07:41,347.347 INFO    ] ================================================
[2026-06-12 10:07:41,680.680 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 10:07:41
[2026-06-12 10:07:41,996.996 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 10:07:42,138.138 INFO    ] Initializing speech engine...
[2026-06-12 10:07:42,143.143 INFO    ] 2026-06-12 10:07:42
[2026-06-12 10:07:42,348.348 INFO    ] 2026-06-12 10:07:42
[2026-06-12 10:07:42,377.377 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 10:07:42,560.560 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 10:07:42,570.570 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 10:07:42,691.691 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 10:07:42,757.757 INFO    ] time= 12/06/2026 10:07:42
[2026-06-12 10:07:42,788.788 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 10:07:42,790.790 INFO    ] Checking for existing commands in stream...
[2026-06-12 10:07:42,885.885 INFO    ] No existing commands found in stream
[2026-06-12 10:07:47,894.894 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 10:07:47,897.897 INFO    ] Waiting 1.85 seconds before fallback handling...
[2026-06-12 10:07:50,101.101 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 10:07:50,103.103 INFO    ] Checking for system updates...
[2026-06-12 10:07:50,124.124 INFO    ] 200
[2026-06-12 10:07:50,125.125 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:07:50,159.159 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 10:07:50,161.161 INFO    ] No update needed
[2026-06-12 10:07:50,162.162 INFO    ] Checking for camera pi updates...
[2026-06-12 10:07:50,183.183 INFO    ] 200
[2026-06-12 10:07:50,184.184 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:07:50,207.207 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 10:07:50,246.246 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 10:07:50,247.247 INFO    ] No camera update needed
[2026-06-12 10:07:50,249.249 INFO    ] Script finished. Safe exiting...
[2026-06-12 10:07:50,250.250 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 10:07:50,253.253 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 10:07:50,256.256 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 10:07:52,295.295 INFO    ] ================================================
[2026-06-12 10:07:52,311.311 INFO    ] Launching Daemon at Fri Jun 12 10:07:52 IST 2026
[2026-06-12 10:07:52,321.321 INFO    ] ================================================
[2026-06-12 10:07:52,650.650 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 10:07:52
[2026-06-12 10:07:52,961.961 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 10:07:53,092.092 INFO    ] Initializing speech engine...
[2026-06-12 10:07:53,100.100 INFO    ] 2026-06-12 10:07:53
[2026-06-12 10:07:53,311.311 INFO    ] 2026-06-12 10:07:53
[2026-06-12 10:07:53,339.339 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 10:07:53,522.522 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 10:07:53,532.532 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 10:07:53,666.666 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 10:07:53,728.728 INFO    ] time= 12/06/2026 10:07:53
[2026-06-12 10:07:53,751.751 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 10:07:53,757.757 INFO    ] Checking for existing commands in stream...
[2026-06-12 10:07:53,823.823 INFO    ] No existing commands found in stream
[2026-06-12 10:07:58,832.832 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 10:07:58,835.835 INFO    ] Waiting 0.24 seconds before fallback handling...
[2026-06-12 10:07:59,471.471 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 10:07:59,473.473 INFO    ] Checking for system updates...
[2026-06-12 10:07:59,508.508 INFO    ] 200
[2026-06-12 10:07:59,511.511 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:07:59,565.565 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 10:07:59,567.567 INFO    ] No update needed
[2026-06-12 10:07:59,569.569 INFO    ] Checking for camera pi updates...
[2026-06-12 10:07:59,602.602 INFO    ] 200
[2026-06-12 10:07:59,603.603 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:07:59,626.626 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 10:07:59,667.667 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 10:07:59,669.669 INFO    ] No camera update needed
[2026-06-12 10:07:59,670.670 INFO    ] Script finished. Safe exiting...
[2026-06-12 10:07:59,671.671 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 10:07:59,674.674 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 10:07:59,677.677 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 10:08:01,710.710 INFO    ] ================================================
[2026-06-12 10:08:01,723.723 INFO    ] Launching Daemon at Fri Jun 12 10:08:01 IST 2026
[2026-06-12 10:08:01,733.733 INFO    ] ================================================
[2026-06-12 10:08:02,119.119 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 10:08:02
[2026-06-12 10:08:02,456.456 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 10:08:02,598.598 INFO    ] Initializing speech engine...
[2026-06-12 10:08:02,604.604 INFO    ] 2026-06-12 10:08:02
[2026-06-12 10:08:02,806.806 INFO    ] 2026-06-12 10:08:02
[2026-06-12 10:08:02,836.836 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 10:08:02,958.958 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 10:08:03,021.021 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 10:08:03,159.159 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 10:08:03,220.220 INFO    ] time= 12/06/2026 10:08:03
[2026-06-12 10:08:03,253.253 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 10:08:03,259.259 INFO    ] Checking for existing commands in stream...
[2026-06-12 10:08:03,327.327 INFO    ] No existing commands found in stream
[2026-06-12 10:08:08,336.336 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 10:08:08,338.338 INFO    ] Waiting 0.71 seconds before fallback handling...
[2026-06-12 10:08:09,408.408 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 10:08:09,409.409 INFO    ] Checking for system updates...
[2026-06-12 10:08:09,430.430 INFO    ] 200
[2026-06-12 10:08:09,432.432 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:08:09,462.462 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 10:08:09,463.463 INFO    ] No update needed
[2026-06-12 10:08:09,464.464 INFO    ] Checking for camera pi updates...
[2026-06-12 10:08:09,483.483 INFO    ] 200
[2026-06-12 10:08:09,485.485 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:08:09,507.507 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 10:08:09,547.547 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 10:08:09,548.548 INFO    ] No camera update needed
[2026-06-12 10:08:09,549.549 INFO    ] Script finished. Safe exiting...
[2026-06-12 10:08:09,551.551 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 10:08:09,554.554 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 10:08:09,556.556 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 10:08:11,596.596 INFO    ] ================================================
[2026-06-12 10:08:11,611.611 INFO    ] Launching Daemon at Fri Jun 12 10:08:11 IST 2026
[2026-06-12 10:08:11,622.622 INFO    ] ================================================
[2026-06-12 10:08:11,997.997 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 10:08:11
[2026-06-12 10:08:12,313.313 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 10:08:12,456.456 INFO    ] Initializing speech engine...
[2026-06-12 10:08:12,461.461 INFO    ] 2026-06-12 10:08:12
[2026-06-12 10:08:12,664.664 INFO    ] 2026-06-12 10:08:12
[2026-06-12 10:08:12,693.693 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 10:08:12,874.874 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 10:08:12,878.878 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 10:08:13,006.006 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 10:08:13,069.069 INFO    ] time= 12/06/2026 10:08:13
[2026-06-12 10:08:13,101.101 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 10:08:13,110.110 INFO    ] Checking for existing commands in stream...
[2026-06-12 10:08:13,175.175 INFO    ] No existing commands found in stream
[2026-06-12 10:08:18,186.186 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 10:08:18,189.189 INFO    ] Waiting 2.87 seconds before fallback handling...
[2026-06-12 10:08:21,413.413 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 10:08:21,414.414 INFO    ] Checking for system updates...
[2026-06-12 10:08:21,435.435 INFO    ] 200
[2026-06-12 10:08:21,436.436 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:08:21,469.469 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 10:08:21,470.470 INFO    ] No update needed
[2026-06-12 10:08:21,472.472 INFO    ] Checking for camera pi updates...
[2026-06-12 10:08:21,492.492 INFO    ] 200
[2026-06-12 10:08:21,493.493 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:08:21,516.516 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 10:08:21,552.552 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 10:08:21,554.554 INFO    ] No camera update needed
[2026-06-12 10:08:21,555.555 INFO    ] Script finished. Safe exiting...
[2026-06-12 10:08:21,556.556 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 10:08:21,560.560 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 10:08:21,563.563 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 10:08:23,603.603 INFO    ] ================================================
[2026-06-12 10:08:23,619.619 INFO    ] Launching Daemon at Fri Jun 12 10:08:23 IST 2026
[2026-06-12 10:08:23,630.630 INFO    ] ================================================
[2026-06-12 10:08:23,997.997 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 10:08:23
[2026-06-12 10:08:24,315.315 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 10:08:24,448.448 INFO    ] Initializing speech engine...
[2026-06-12 10:08:24,453.453 INFO    ] 2026-06-12 10:08:24
[2026-06-12 10:08:24,669.669 INFO    ] 2026-06-12 10:08:24
[2026-06-12 10:08:24,697.697 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 10:08:24,881.881 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 10:08:24,885.885 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 10:08:25,017.017 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 10:08:25,079.079 INFO    ] time= 12/06/2026 10:08:25
[2026-06-12 10:08:25,111.111 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 10:08:25,118.118 INFO    ] Checking for existing commands in stream...
[2026-06-12 10:08:25,232.232 INFO    ] No existing commands found in stream
[2026-06-12 10:08:30,242.242 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 10:08:30,245.245 INFO    ] Waiting 2.41 seconds before fallback handling...
[2026-06-12 10:08:32,950.950 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 10:08:32,951.951 INFO    ] Checking for system updates...
[2026-06-12 10:08:32,981.981 INFO    ] 200
[2026-06-12 10:08:32,984.984 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:08:33,036.036 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 10:08:33,038.038 INFO    ] No update needed
[2026-06-12 10:08:33,041.041 INFO    ] Checking for camera pi updates...
[2026-06-12 10:08:33,069.069 INFO    ] 200
[2026-06-12 10:08:33,070.070 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:08:33,093.093 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 10:08:33,130.130 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 10:08:33,131.131 INFO    ] No camera update needed
[2026-06-12 10:08:33,133.133 INFO    ] Script finished. Safe exiting...
[2026-06-12 10:08:33,134.134 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 10:08:33,137.137 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 10:08:33,140.140 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 10:08:35,180.180 INFO    ] ================================================
[2026-06-12 10:08:35,196.196 INFO    ] Launching Daemon at Fri Jun 12 10:08:35 IST 2026
[2026-06-12 10:08:35,207.207 INFO    ] ================================================
[2026-06-12 10:08:35,564.564 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 10:08:35
[2026-06-12 10:08:35,875.875 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 10:08:36,009.009 INFO    ] Initializing speech engine...
[2026-06-12 10:08:36,022.022 INFO    ] 2026-06-12 10:08:36
[2026-06-12 10:08:36,238.238 INFO    ] 2026-06-12 10:08:36
[2026-06-12 10:08:36,269.269 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 10:08:36,399.399 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 10:08:36,462.462 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 10:08:36,606.606 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 10:08:36,674.674 INFO    ] time= 12/06/2026 10:08:36
[2026-06-12 10:08:36,696.696 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 10:08:36,713.713 INFO    ] Checking for existing commands in stream...
[2026-06-12 10:08:36,789.789 INFO    ] No existing commands found in stream
[2026-06-12 10:08:41,798.798 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 10:08:41,801.801 INFO    ] Waiting 2.11 seconds before fallback handling...
[2026-06-12 10:08:44,258.258 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 10:08:44,259.259 INFO    ] Checking for system updates...
[2026-06-12 10:08:44,280.280 INFO    ] 200
[2026-06-12 10:08:44,281.281 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:08:44,312.312 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 10:08:44,313.313 INFO    ] No update needed
[2026-06-12 10:08:44,314.314 INFO    ] Checking for camera pi updates...
[2026-06-12 10:08:44,334.334 INFO    ] 200
[2026-06-12 10:08:44,335.335 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:08:44,358.358 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 10:08:44,398.398 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 10:08:44,399.399 INFO    ] No camera update needed
[2026-06-12 10:08:44,401.401 INFO    ] Script finished. Safe exiting...
[2026-06-12 10:08:44,402.402 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 10:08:44,405.405 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 10:08:44,408.408 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 10:08:46,447.447 INFO    ] ================================================
[2026-06-12 10:08:46,462.462 INFO    ] Launching Daemon at Fri Jun 12 10:08:46 IST 2026
[2026-06-12 10:08:46,474.474 INFO    ] ================================================
[2026-06-12 10:08:46,836.836 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 10:08:46
[2026-06-12 10:08:47,150.150 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 10:08:47,289.289 INFO    ] Initializing speech engine...
[2026-06-12 10:08:47,299.299 INFO    ] 2026-06-12 10:08:47
[2026-06-12 10:08:47,505.505 INFO    ] 2026-06-12 10:08:47
[2026-06-12 10:08:47,534.534 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 10:08:47,657.657 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 10:08:47,721.721 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 10:08:47,853.853 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 10:08:47,914.914 INFO    ] time= 12/06/2026 10:08:47
[2026-06-12 10:08:47,952.952 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 10:08:47,954.954 INFO    ] Checking for existing commands in stream...
[2026-06-12 10:08:48,024.024 INFO    ] No existing commands found in stream
[2026-06-12 10:08:53,035.035 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 10:08:53,038.038 INFO    ] Waiting 1.18 seconds before fallback handling...
[2026-06-12 10:08:54,587.587 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 10:08:54,588.588 INFO    ] Checking for system updates...
[2026-06-12 10:08:54,609.609 INFO    ] 200
[2026-06-12 10:08:54,610.610 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:08:54,640.640 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 10:08:54,642.642 INFO    ] No update needed
[2026-06-12 10:08:54,643.643 INFO    ] Checking for camera pi updates...
[2026-06-12 10:08:54,662.662 INFO    ] 200
[2026-06-12 10:08:54,664.664 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:08:54,687.687 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 10:08:54,727.727 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 10:08:54,728.728 INFO    ] No camera update needed
[2026-06-12 10:08:54,729.729 INFO    ] Script finished. Safe exiting...
[2026-06-12 10:08:54,731.731 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 10:08:54,733.733 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 10:08:54,736.736 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 10:08:56,775.775 INFO    ] ================================================
[2026-06-12 10:08:56,792.792 INFO    ] Launching Daemon at Fri Jun 12 10:08:56 IST 2026
[2026-06-12 10:08:56,803.803 INFO    ] ================================================
[2026-06-12 10:08:57,124.124 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 10:08:57
[2026-06-12 10:08:57,436.436 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 10:08:57,577.577 INFO    ] Initializing speech engine...
[2026-06-12 10:08:57,582.582 INFO    ] 2026-06-12 10:08:57
[2026-06-12 10:08:57,787.787 INFO    ] 2026-06-12 10:08:57
[2026-06-12 10:08:57,816.816 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 10:08:58,000.000 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 10:08:58,008.008 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 10:08:58,139.139 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 10:08:58,200.200 INFO    ] time= 12/06/2026 10:08:58
[2026-06-12 10:08:58,232.232 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 10:08:58,238.238 INFO    ] Checking for existing commands in stream...
[2026-06-12 10:08:58,328.328 INFO    ] No existing commands found in stream
[2026-06-12 10:09:03,342.342 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 10:09:03,345.345 INFO    ] Waiting 3.93 seconds before fallback handling...
[2026-06-12 10:09:07,643.643 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 10:09:07,645.645 INFO    ] Checking for system updates...
[2026-06-12 10:09:07,666.666 INFO    ] 200
[2026-06-12 10:09:07,668.668 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:09:07,698.698 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 10:09:07,699.699 INFO    ] No update needed
[2026-06-12 10:09:07,701.701 INFO    ] Checking for camera pi updates...
[2026-06-12 10:09:07,721.721 INFO    ] 200
[2026-06-12 10:09:07,722.722 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:09:07,745.745 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 10:09:07,778.778 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 10:09:07,779.779 INFO    ] No camera update needed
[2026-06-12 10:09:07,781.781 INFO    ] Script finished. Safe exiting...
[2026-06-12 10:09:07,782.782 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 10:09:07,785.785 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 10:09:07,788.788 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 10:09:09,826.826 INFO    ] ================================================
[2026-06-12 10:09:09,842.842 INFO    ] Launching Daemon at Fri Jun 12 10:09:09 IST 2026
[2026-06-12 10:09:09,854.854 INFO    ] ================================================
[2026-06-12 10:09:10,222.222 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 10:09:10
[2026-06-12 10:09:10,557.557 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 10:09:10,696.696 INFO    ] Initializing speech engine...
[2026-06-12 10:09:10,709.709 INFO    ] 2026-06-12 10:09:10
[2026-06-12 10:09:10,913.913 INFO    ] 2026-06-12 10:09:10
[2026-06-12 10:09:10,948.948 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 10:09:11,133.133 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 10:09:11,137.137 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 10:09:11,300.300 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 10:09:11,350.350 INFO    ] time= 12/06/2026 10:09:11
[2026-06-12 10:09:11,366.366 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 10:09:11,372.372 INFO    ] Checking for existing commands in stream...
[2026-06-12 10:09:11,440.440 INFO    ] No existing commands found in stream
[2026-06-12 10:09:16,450.450 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 10:09:16,453.453 INFO    ] Waiting 0.51 seconds before fallback handling...
[2026-06-12 10:09:17,322.322 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 10:09:17,324.324 INFO    ] Checking for system updates...
[2026-06-12 10:09:17,346.346 INFO    ] 200
[2026-06-12 10:09:17,347.347 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:09:17,377.377 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 10:09:17,379.379 INFO    ] No update needed
[2026-06-12 10:09:17,380.380 INFO    ] Checking for camera pi updates...
[2026-06-12 10:09:17,400.400 INFO    ] 200
[2026-06-12 10:09:17,402.402 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:09:17,425.425 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 10:09:17,476.476 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 10:09:17,478.478 INFO    ] No camera update needed
[2026-06-12 10:09:17,479.479 INFO    ] Script finished. Safe exiting...
[2026-06-12 10:09:17,480.480 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 10:09:17,484.484 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 10:09:17,487.487 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 10:09:19,525.525 INFO    ] ================================================
[2026-06-12 10:09:19,541.541 INFO    ] Launching Daemon at Fri Jun 12 10:09:19 IST 2026
[2026-06-12 10:09:19,553.553 INFO    ] ================================================
[2026-06-12 10:09:19,933.933 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 10:09:19
[2026-06-12 10:09:20,267.267 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 10:09:20,417.417 INFO    ] Initializing speech engine...
[2026-06-12 10:09:20,423.423 INFO    ] 2026-06-12 10:09:20
[2026-06-12 10:09:20,629.629 INFO    ] 2026-06-12 10:09:20
[2026-06-12 10:09:20,659.659 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 10:09:20,844.844 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 10:09:20,853.853 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 10:09:20,999.999 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 10:09:21,050.050 INFO    ] time= 12/06/2026 10:09:21
[2026-06-12 10:09:21,073.073 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 10:09:21,080.080 INFO    ] Checking for existing commands in stream...
[2026-06-12 10:09:21,170.170 INFO    ] No existing commands found in stream
[2026-06-12 10:09:26,184.184 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 10:09:26,187.187 INFO    ] Waiting 1.43 seconds before fallback handling...
[2026-06-12 10:09:27,986.986 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 10:09:27,987.987 INFO    ] Checking for system updates...
[2026-06-12 10:09:28,008.008 INFO    ] 200
[2026-06-12 10:09:28,010.010 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:09:28,040.040 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 10:09:28,042.042 INFO    ] No update needed
[2026-06-12 10:09:28,043.043 INFO    ] Checking for camera pi updates...
[2026-06-12 10:09:28,062.062 INFO    ] 200
[2026-06-12 10:09:28,064.064 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:09:28,088.088 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 10:09:28,129.129 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 10:09:28,131.131 INFO    ] No camera update needed
[2026-06-12 10:09:28,132.132 INFO    ] Script finished. Safe exiting...
[2026-06-12 10:09:28,133.133 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 10:09:28,137.137 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 10:09:28,140.140 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 10:09:30,179.179 INFO    ] ================================================
[2026-06-12 10:09:30,194.194 INFO    ] Launching Daemon at Fri Jun 12 10:09:30 IST 2026
[2026-06-12 10:09:30,205.205 INFO    ] ================================================
[2026-06-12 10:09:30,586.586 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 10:09:30
[2026-06-12 10:09:30,920.920 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 10:09:31,072.072 INFO    ] Initializing speech engine...
[2026-06-12 10:09:31,076.076 INFO    ] 2026-06-12 10:09:31
[2026-06-12 10:09:31,282.282 INFO    ] 2026-06-12 10:09:31
[2026-06-12 10:09:31,311.311 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 10:09:31,512.512 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 10:09:31,523.523 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 10:09:31,667.667 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 10:09:31,743.743 INFO    ] time= 12/06/2026 10:09:31
[2026-06-12 10:09:31,766.766 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 10:09:31,769.769 INFO    ] Checking for existing commands in stream...
[2026-06-12 10:09:31,863.863 INFO    ] No existing commands found in stream
[2026-06-12 10:09:36,872.872 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 10:09:36,875.875 INFO    ] Waiting 2.02 seconds before fallback handling...
[2026-06-12 10:09:39,293.293 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 10:09:39,294.294 INFO    ] Checking for system updates...
[2026-06-12 10:09:39,315.315 INFO    ] 200
[2026-06-12 10:09:39,317.317 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:09:39,347.347 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 10:09:39,348.348 INFO    ] No update needed
[2026-06-12 10:09:39,350.350 INFO    ] Checking for camera pi updates...
[2026-06-12 10:09:39,369.369 INFO    ] 200
[2026-06-12 10:09:39,371.371 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:09:39,394.394 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 10:09:39,431.431 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 10:09:39,432.432 INFO    ] No camera update needed
[2026-06-12 10:09:39,434.434 INFO    ] Script finished. Safe exiting...
[2026-06-12 10:09:39,435.435 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 10:09:39,438.438 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 10:09:39,442.442 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 10:09:41,482.482 INFO    ] ================================================
[2026-06-12 10:09:41,498.498 INFO    ] Launching Daemon at Fri Jun 12 10:09:41 IST 2026
[2026-06-12 10:09:41,509.509 INFO    ] ================================================
[2026-06-12 10:09:41,843.843 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 10:09:41
[2026-06-12 10:09:42,153.153 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 10:09:42,284.284 INFO    ] Initializing speech engine...
[2026-06-12 10:09:42,287.287 INFO    ] 2026-06-12 10:09:42
[2026-06-12 10:09:42,505.505 INFO    ] 2026-06-12 10:09:42
[2026-06-12 10:09:42,533.533 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 10:09:42,657.657 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 10:09:42,721.721 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 10:09:42,857.857 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 10:09:42,919.919 INFO    ] time= 12/06/2026 10:09:42
[2026-06-12 10:09:42,953.953 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 10:09:42,959.959 INFO    ] Checking for existing commands in stream...
[2026-06-12 10:09:43,027.027 INFO    ] No existing commands found in stream
[2026-06-12 10:09:48,059.059 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 10:09:48,062.062 INFO    ] Waiting 1.88 seconds before fallback handling...
[2026-06-12 10:09:50,307.307 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 10:09:50,308.308 INFO    ] Checking for system updates...
[2026-06-12 10:09:50,329.329 INFO    ] 200
[2026-06-12 10:09:50,330.330 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:09:50,360.360 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 10:09:50,361.361 INFO    ] No update needed
[2026-06-12 10:09:50,363.363 INFO    ] Checking for camera pi updates...
[2026-06-12 10:09:50,382.382 INFO    ] 200
[2026-06-12 10:09:50,383.383 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:09:50,406.406 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 10:09:50,446.446 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 10:09:50,447.447 INFO    ] No camera update needed
[2026-06-12 10:09:50,449.449 INFO    ] Script finished. Safe exiting...
[2026-06-12 10:09:50,450.450 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 10:09:50,453.453 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 10:09:50,456.456 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 10:09:52,496.496 INFO    ] ================================================
[2026-06-12 10:09:52,512.512 INFO    ] Launching Daemon at Fri Jun 12 10:09:52 IST 2026
[2026-06-12 10:09:52,522.522 INFO    ] ================================================
[2026-06-12 10:09:52,904.904 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 10:09:52
[2026-06-12 10:09:53,239.239 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 10:09:53,389.389 INFO    ] Initializing speech engine...
[2026-06-12 10:09:53,395.395 INFO    ] 2026-06-12 10:09:53
[2026-06-12 10:09:53,605.605 INFO    ] 2026-06-12 10:09:53
[2026-06-12 10:09:53,634.634 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 10:09:53,819.819 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 10:09:53,823.823 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 10:09:53,977.977 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 10:09:54,031.031 INFO    ] time= 12/06/2026 10:09:53
[2026-06-12 10:09:54,053.053 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 10:09:54,060.060 INFO    ] Checking for existing commands in stream...
[2026-06-12 10:09:54,129.129 INFO    ] No existing commands found in stream
[2026-06-12 10:09:59,143.143 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 10:09:59,146.146 INFO    ] Waiting 0.72 seconds before fallback handling...
[2026-06-12 10:10:00,215.215 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 10:10:00,216.216 INFO    ] Checking for system updates...
[2026-06-12 10:10:00,238.238 INFO    ] 200
[2026-06-12 10:10:00,239.239 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:10:00,270.270 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 10:10:00,272.272 INFO    ] No update needed
[2026-06-12 10:10:00,273.273 INFO    ] Checking for camera pi updates...
[2026-06-12 10:10:00,292.292 INFO    ] 200
[2026-06-12 10:10:00,294.294 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:10:00,317.317 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 10:10:00,352.352 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 10:10:00,354.354 INFO    ] No camera update needed
[2026-06-12 10:10:00,355.355 INFO    ] Script finished. Safe exiting...
[2026-06-12 10:10:00,357.357 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 10:10:00,360.360 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 10:10:00,363.363 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 10:10:02,399.399 INFO    ] ================================================
[2026-06-12 10:10:02,416.416 INFO    ] Launching Daemon at Fri Jun 12 10:10:02 IST 2026
[2026-06-12 10:10:02,427.427 INFO    ] ================================================
[2026-06-12 10:10:02,822.822 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 10:10:02
[2026-06-12 10:10:03,147.147 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 10:10:03,289.289 INFO    ] Initializing speech engine...
[2026-06-12 10:10:03,293.293 INFO    ] 2026-06-12 10:10:03
[2026-06-12 10:10:03,496.496 INFO    ] 2026-06-12 10:10:03
[2026-06-12 10:10:03,525.525 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 10:10:03,707.707 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 10:10:03,711.711 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 10:10:03,868.868 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 10:10:03,916.916 INFO    ] time= 12/06/2026 10:10:03
[2026-06-12 10:10:03,938.938 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 10:10:03,944.944 INFO    ] Checking for existing commands in stream...
[2026-06-12 10:10:04,012.012 INFO    ] No existing commands found in stream
[2026-06-12 10:10:09,021.021 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 10:10:09,023.023 INFO    ] Waiting 2.86 seconds before fallback handling...
[2026-06-12 10:10:12,207.207 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 10:10:12,208.208 INFO    ] Checking for system updates...
[2026-06-12 10:10:12,229.229 INFO    ] 200
[2026-06-12 10:10:12,230.230 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:10:12,263.263 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 10:10:12,264.264 INFO    ] No update needed
[2026-06-12 10:10:12,265.265 INFO    ] Checking for camera pi updates...
[2026-06-12 10:10:12,285.285 INFO    ] 200
[2026-06-12 10:10:12,286.286 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:10:12,309.309 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 10:10:12,335.335 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 10:10:12,337.337 INFO    ] No camera update needed
[2026-06-12 10:10:12,338.338 INFO    ] Script finished. Safe exiting...
[2026-06-12 10:10:12,339.339 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 10:10:12,342.342 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 10:10:12,345.345 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 10:10:14,383.383 INFO    ] ================================================
[2026-06-12 10:10:14,399.399 INFO    ] Launching Daemon at Fri Jun 12 10:10:14 IST 2026
[2026-06-12 10:10:14,410.410 INFO    ] ================================================
[2026-06-12 10:10:14,758.758 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 10:10:14
[2026-06-12 10:10:15,095.095 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 10:10:15,247.247 INFO    ] Initializing speech engine...
[2026-06-12 10:10:15,251.251 INFO    ] 2026-06-12 10:10:15
[2026-06-12 10:10:15,457.457 INFO    ] 2026-06-12 10:10:15
[2026-06-12 10:10:15,486.486 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 10:10:15,624.624 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 10:10:15,672.672 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 10:10:15,875.875 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 10:10:15,899.899 INFO    ] time= 12/06/2026 10:10:15
[2026-06-12 10:10:15,905.905 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 10:10:15,907.907 INFO    ] Checking for existing commands in stream...
[2026-06-12 10:10:15,973.973 INFO    ] No existing commands found in stream
[2026-06-12 10:10:20,988.988 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 10:10:20,991.991 INFO    ] Waiting 2.07 seconds before fallback handling...
[2026-06-12 10:10:23,370.370 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 10:10:23,372.372 INFO    ] Checking for system updates...
[2026-06-12 10:10:23,393.393 INFO    ] 200
[2026-06-12 10:10:23,394.394 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:10:23,426.426 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 10:10:23,428.428 INFO    ] No update needed
[2026-06-12 10:10:23,429.429 INFO    ] Checking for camera pi updates...
[2026-06-12 10:10:23,448.448 INFO    ] 200
[2026-06-12 10:10:23,449.449 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:10:23,473.473 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 10:10:23,509.509 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 10:10:23,510.510 INFO    ] No camera update needed
[2026-06-12 10:10:23,511.511 INFO    ] Script finished. Safe exiting...
[2026-06-12 10:10:23,513.513 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 10:10:23,515.515 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 10:10:23,518.518 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 10:10:25,556.556 INFO    ] ================================================
[2026-06-12 10:10:25,572.572 INFO    ] Launching Daemon at Fri Jun 12 10:10:25 IST 2026
[2026-06-12 10:10:25,583.583 INFO    ] ================================================
[2026-06-12 10:10:25,935.935 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 10:10:25
[2026-06-12 10:10:26,269.269 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 10:10:26,402.402 INFO    ] Initializing speech engine...
[2026-06-12 10:10:26,407.407 INFO    ] 2026-06-12 10:10:26
[2026-06-12 10:10:26,636.636 INFO    ] 2026-06-12 10:10:26
[2026-06-12 10:10:26,666.666 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 10:10:26,798.798 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 10:10:26,846.846 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 10:10:27,005.005 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 10:10:27,072.072 INFO    ] time= 12/06/2026 10:10:27
[2026-06-12 10:10:27,111.111 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 10:10:27,113.113 INFO    ] Checking for existing commands in stream...
[2026-06-12 10:10:27,188.188 INFO    ] No existing commands found in stream
[2026-06-12 10:10:32,198.198 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 10:10:32,200.200 INFO    ] Waiting 2.10 seconds before fallback handling...
[2026-06-12 10:10:34,632.632 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 10:10:34,633.633 INFO    ] Checking for system updates...
[2026-06-12 10:10:34,654.654 INFO    ] 200
[2026-06-12 10:10:34,655.655 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:10:34,690.690 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 10:10:34,691.691 INFO    ] No update needed
[2026-06-12 10:10:34,693.693 INFO    ] Checking for camera pi updates...
[2026-06-12 10:10:34,713.713 INFO    ] 200
[2026-06-12 10:10:34,714.714 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:10:34,738.738 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 10:10:34,771.771 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 10:10:34,772.772 INFO    ] No camera update needed
[2026-06-12 10:10:34,773.773 INFO    ] Script finished. Safe exiting...
[2026-06-12 10:10:34,775.775 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 10:10:34,778.778 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 10:10:34,780.780 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 10:10:36,820.820 INFO    ] ================================================
[2026-06-12 10:10:36,836.836 INFO    ] Launching Daemon at Fri Jun 12 10:10:36 IST 2026
[2026-06-12 10:10:36,847.847 INFO    ] ================================================
[2026-06-12 10:10:37,172.172 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 10:10:37
[2026-06-12 10:10:37,483.483 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 10:10:37,616.616 INFO    ] Initializing speech engine...
[2026-06-12 10:10:37,621.621 INFO    ] 2026-06-12 10:10:37
[2026-06-12 10:10:37,839.839 INFO    ] 2026-06-12 10:10:37
[2026-06-12 10:10:37,867.867 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 10:10:38,054.054 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 10:10:38,057.057 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 10:10:38,187.187 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 10:10:38,243.243 INFO    ] time= 12/06/2026 10:10:38
[2026-06-12 10:10:38,283.283 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 10:10:38,288.288 INFO    ] Checking for existing commands in stream...
[2026-06-12 10:10:38,361.361 INFO    ] No existing commands found in stream
[2026-06-12 10:10:43,370.370 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 10:10:43,373.373 INFO    ] Waiting 2.63 seconds before fallback handling...
[2026-06-12 10:10:46,348.348 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 10:10:46,350.350 INFO    ] Checking for system updates...
[2026-06-12 10:10:46,371.371 INFO    ] 200
[2026-06-12 10:10:46,372.372 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:10:46,403.403 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 10:10:46,405.405 INFO    ] No update needed
[2026-06-12 10:10:46,406.406 INFO    ] Checking for camera pi updates...
[2026-06-12 10:10:46,426.426 INFO    ] 200
[2026-06-12 10:10:46,427.427 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:10:46,451.451 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 10:10:46,599.599 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 10:10:46,601.601 INFO    ] No camera update needed
[2026-06-12 10:10:46,602.602 INFO    ] Script finished. Safe exiting...
[2026-06-12 10:10:46,604.604 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 10:10:46,607.607 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 10:10:46,610.610 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 10:10:48,650.650 INFO    ] ================================================
[2026-06-12 10:10:48,666.666 INFO    ] Launching Daemon at Fri Jun 12 10:10:48 IST 2026
[2026-06-12 10:10:48,677.677 INFO    ] ================================================
[2026-06-12 10:10:49,040.040 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 10:10:49
[2026-06-12 10:10:49,358.358 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 10:10:49,494.494 INFO    ] Initializing speech engine...
[2026-06-12 10:10:49,501.501 INFO    ] 2026-06-12 10:10:49
[2026-06-12 10:10:49,725.725 INFO    ] 2026-06-12 10:10:49
[2026-06-12 10:10:49,756.756 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 10:10:49,887.887 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 10:10:49,945.945 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 10:10:50,094.094 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 10:10:50,156.156 INFO    ] time= 12/06/2026 10:10:50
[2026-06-12 10:10:50,190.190 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 10:10:50,201.201 INFO    ] Checking for existing commands in stream...
[2026-06-12 10:10:50,277.277 INFO    ] No existing commands found in stream
[2026-06-12 10:10:55,286.286 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 10:10:55,289.289 INFO    ] Waiting 3.53 seconds before fallback handling...
[2026-06-12 10:10:59,169.169 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 10:10:59,171.171 INFO    ] Checking for system updates...
[2026-06-12 10:10:59,191.191 INFO    ] 200
[2026-06-12 10:10:59,193.193 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:10:59,223.223 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 10:10:59,224.224 INFO    ] No update needed
[2026-06-12 10:10:59,225.225 INFO    ] Checking for camera pi updates...
[2026-06-12 10:10:59,246.246 INFO    ] 200
[2026-06-12 10:10:59,247.247 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:10:59,270.270 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 10:10:59,308.308 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 10:10:59,310.310 INFO    ] No camera update needed
[2026-06-12 10:10:59,311.311 INFO    ] Script finished. Safe exiting...
[2026-06-12 10:10:59,312.312 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 10:10:59,315.315 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 10:10:59,318.318 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 10:11:01,357.357 INFO    ] ================================================
[2026-06-12 10:11:01,373.373 INFO    ] Launching Daemon at Fri Jun 12 10:11:01 IST 2026
[2026-06-12 10:11:01,385.385 INFO    ] ================================================
[2026-06-12 10:11:01,748.748 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 10:11:01
[2026-06-12 10:11:02,113.113 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 10:11:02,266.266 INFO    ] Initializing speech engine...
[2026-06-12 10:11:02,272.272 INFO    ] 2026-06-12 10:11:02
[2026-06-12 10:11:02,490.490 INFO    ] 2026-06-12 10:11:02
[2026-06-12 10:11:02,520.520 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 10:11:02,651.651 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 10:11:02,690.690 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 10:11:02,834.834 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 10:11:02,870.870 INFO    ] time= 12/06/2026 10:11:02
[2026-06-12 10:11:02,924.924 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 10:11:02,967.967 INFO    ] Checking for existing commands in stream...
[2026-06-12 10:11:03,042.042 INFO    ] No existing commands found in stream
[2026-06-12 10:11:08,053.053 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 10:11:08,056.056 INFO    ] Waiting 1.39 seconds before fallback handling...
[2026-06-12 10:11:09,798.798 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 10:11:09,799.799 INFO    ] Checking for system updates...
[2026-06-12 10:11:09,821.821 INFO    ] 200
[2026-06-12 10:11:09,822.822 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:11:09,854.854 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 10:11:09,856.856 INFO    ] No update needed
[2026-06-12 10:11:09,857.857 INFO    ] Checking for camera pi updates...
[2026-06-12 10:11:09,876.876 INFO    ] 200
[2026-06-12 10:11:09,877.877 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:11:09,901.901 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 10:11:09,940.940 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 10:11:09,941.941 INFO    ] No camera update needed
[2026-06-12 10:11:09,942.942 INFO    ] Script finished. Safe exiting...
[2026-06-12 10:11:09,944.944 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 10:11:09,946.946 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 10:11:09,949.949 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 10:11:11,987.987 INFO    ] ================================================
[2026-06-12 10:11:12,003.003 INFO    ] Launching Daemon at Fri Jun 12 10:11:11 IST 2026
[2026-06-12 10:11:12,015.015 INFO    ] ================================================
[2026-06-12 10:11:12,364.364 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 10:11:12
[2026-06-12 10:11:12,700.700 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 10:11:12,854.854 INFO    ] Initializing speech engine...
[2026-06-12 10:11:12,859.859 INFO    ] 2026-06-12 10:11:12
[2026-06-12 10:11:13,066.066 INFO    ] 2026-06-12 10:11:13
[2026-06-12 10:11:13,095.095 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 10:11:13,281.281 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 10:11:13,284.284 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 10:11:13,423.423 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 10:11:13,491.491 INFO    ] time= 12/06/2026 10:11:13
[2026-06-12 10:11:13,519.519 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 10:11:13,525.525 INFO    ] Checking for existing commands in stream...
[2026-06-12 10:11:13,591.591 INFO    ] No existing commands found in stream
[2026-06-12 10:11:18,602.602 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 10:11:18,604.604 INFO    ] Waiting 0.72 seconds before fallback handling...
[2026-06-12 10:11:19,659.659 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 10:11:19,660.660 INFO    ] Checking for system updates...
[2026-06-12 10:11:19,681.681 INFO    ] 200
[2026-06-12 10:11:19,683.683 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:11:19,713.713 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 10:11:19,715.715 INFO    ] No update needed
[2026-06-12 10:11:19,716.716 INFO    ] Checking for camera pi updates...
[2026-06-12 10:11:19,737.737 INFO    ] 200
[2026-06-12 10:11:19,739.739 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:11:19,765.765 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 10:11:19,804.804 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 10:11:19,805.805 INFO    ] No camera update needed
[2026-06-12 10:11:19,807.807 INFO    ] Script finished. Safe exiting...
[2026-06-12 10:11:19,808.808 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 10:11:19,811.811 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 10:11:19,814.814 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 10:11:21,845.845 INFO    ] ================================================
[2026-06-12 10:11:21,859.859 INFO    ] Launching Daemon at Fri Jun 12 10:11:21 IST 2026
[2026-06-12 10:11:21,866.866 INFO    ] ================================================
[2026-06-12 10:11:22,200.200 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 10:11:22
[2026-06-12 10:11:22,537.537 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 10:11:22,676.676 INFO    ] Initializing speech engine...
[2026-06-12 10:11:22,684.684 INFO    ] 2026-06-12 10:11:22
[2026-06-12 10:11:22,901.901 INFO    ] 2026-06-12 10:11:22
[2026-06-12 10:11:22,931.931 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 10:11:23,056.056 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 10:11:23,120.120 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 10:11:23,253.253 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 10:11:23,309.309 INFO    ] time= 12/06/2026 10:11:23
[2026-06-12 10:11:23,352.352 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 10:11:23,355.355 INFO    ] Checking for existing commands in stream...
[2026-06-12 10:11:23,427.427 INFO    ] No existing commands found in stream
[2026-06-12 10:11:28,437.437 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 10:11:28,440.440 INFO    ] Waiting 1.58 seconds before fallback handling...
[2026-06-12 10:11:30,365.365 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 10:11:30,366.366 INFO    ] Checking for system updates...
[2026-06-12 10:11:30,387.387 INFO    ] 200
[2026-06-12 10:11:30,388.388 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:11:30,421.421 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 10:11:30,422.422 INFO    ] No update needed
[2026-06-12 10:11:30,423.423 INFO    ] Checking for camera pi updates...
[2026-06-12 10:11:30,449.449 INFO    ] 200
[2026-06-12 10:11:30,451.451 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:11:30,476.476 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 10:11:30,525.525 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 10:11:30,527.527 INFO    ] No camera update needed
[2026-06-12 10:11:30,528.528 INFO    ] Script finished. Safe exiting...
[2026-06-12 10:11:30,530.530 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 10:11:30,533.533 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 10:11:30,536.536 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 10:11:32,569.569 INFO    ] ================================================
[2026-06-12 10:11:32,584.584 INFO    ] Launching Daemon at Fri Jun 12 10:11:32 IST 2026
[2026-06-12 10:11:32,596.596 INFO    ] ================================================
[2026-06-12 10:11:32,984.984 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 10:11:32
[2026-06-12 10:11:33,319.319 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 10:11:33,469.469 INFO    ] Initializing speech engine...
[2026-06-12 10:11:33,475.475 INFO    ] 2026-06-12 10:11:33
[2026-06-12 10:11:33,683.683 INFO    ] 2026-06-12 10:11:33
[2026-06-12 10:11:33,712.712 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 10:11:33,853.853 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 10:11:33,902.902 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 10:11:34,036.036 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 10:11:34,092.092 INFO    ] time= 12/06/2026 10:11:34
[2026-06-12 10:11:34,137.137 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 10:11:34,143.143 INFO    ] Checking for existing commands in stream...
[2026-06-12 10:11:34,212.212 INFO    ] No existing commands found in stream
[2026-06-12 10:11:39,226.226 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 10:11:39,229.229 INFO    ] Waiting 1.38 seconds before fallback handling...
[2026-06-12 10:11:40,956.956 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 10:11:40,957.957 INFO    ] Checking for system updates...
[2026-06-12 10:11:40,978.978 INFO    ] 200
[2026-06-12 10:11:40,980.980 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:11:41,012.012 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 10:11:41,014.014 INFO    ] No update needed
[2026-06-12 10:11:41,015.015 INFO    ] Checking for camera pi updates...
[2026-06-12 10:11:41,036.036 INFO    ] 200
[2026-06-12 10:11:41,037.037 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:11:41,063.063 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 10:11:41,102.102 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 10:11:41,104.104 INFO    ] No camera update needed
[2026-06-12 10:11:41,105.105 INFO    ] Script finished. Safe exiting...
[2026-06-12 10:11:41,107.107 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 10:11:41,110.110 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 10:11:41,113.113 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 10:11:43,152.152 INFO    ] ================================================
[2026-06-12 10:11:43,168.168 INFO    ] Launching Daemon at Fri Jun 12 10:11:43 IST 2026
[2026-06-12 10:11:43,179.179 INFO    ] ================================================
[2026-06-12 10:11:43,551.551 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 10:11:43
[2026-06-12 10:11:43,886.886 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 10:11:44,036.036 INFO    ] Initializing speech engine...
[2026-06-12 10:11:44,042.042 INFO    ] 2026-06-12 10:11:44
[2026-06-12 10:11:44,251.251 INFO    ] 2026-06-12 10:11:44
[2026-06-12 10:11:44,280.280 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 10:11:44,414.414 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 10:11:44,468.468 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 10:11:44,607.607 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 10:11:44,668.668 INFO    ] time= 12/06/2026 10:11:44
[2026-06-12 10:11:44,702.702 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 10:11:44,708.708 INFO    ] Checking for existing commands in stream...
[2026-06-12 10:11:44,774.774 INFO    ] No existing commands found in stream
[2026-06-12 10:11:49,785.785 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 10:11:49,788.788 INFO    ] Waiting 0.32 seconds before fallback handling...
[2026-06-12 10:11:50,421.421 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 10:11:50,423.423 INFO    ] Checking for system updates...
[2026-06-12 10:11:50,443.443 INFO    ] 200
[2026-06-12 10:11:50,445.445 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:11:50,475.475 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 10:11:50,476.476 INFO    ] No update needed
[2026-06-12 10:11:50,478.478 INFO    ] Checking for camera pi updates...
[2026-06-12 10:11:50,498.498 INFO    ] 200
[2026-06-12 10:11:50,499.499 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:11:50,523.523 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 10:11:50,561.561 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 10:11:50,563.563 INFO    ] No camera update needed
[2026-06-12 10:11:50,564.564 INFO    ] Script finished. Safe exiting...
[2026-06-12 10:11:50,566.566 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 10:11:50,569.569 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 10:11:50,572.572 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 10:11:52,610.610 INFO    ] ================================================
[2026-06-12 10:11:52,626.626 INFO    ] Launching Daemon at Fri Jun 12 10:11:52 IST 2026
[2026-06-12 10:11:52,637.637 INFO    ] ================================================
[2026-06-12 10:11:52,967.967 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 10:11:52
[2026-06-12 10:11:53,284.284 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 10:11:53,426.426 INFO    ] Initializing speech engine...
[2026-06-12 10:11:53,434.434 INFO    ] 2026-06-12 10:11:53
[2026-06-12 10:11:53,652.652 INFO    ] 2026-06-12 10:11:53
[2026-06-12 10:11:53,683.683 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 10:11:53,815.815 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 10:11:53,857.857 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 10:11:54,099.099 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 10:11:54,126.126 INFO    ] time= 12/06/2026 10:11:54
[2026-06-12 10:11:54,132.132 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 10:11:54,134.134 INFO    ] Checking for existing commands in stream...
[2026-06-12 10:11:54,204.204 INFO    ] No existing commands found in stream
[2026-06-12 10:11:59,214.214 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 10:11:59,217.217 INFO    ] Waiting 0.62 seconds before fallback handling...
[2026-06-12 10:12:00,160.160 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 10:12:00,162.162 INFO    ] Checking for system updates...
[2026-06-12 10:12:00,182.182 INFO    ] 200
[2026-06-12 10:12:00,184.184 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:12:00,213.213 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 10:12:00,215.215 INFO    ] No update needed
[2026-06-12 10:12:00,216.216 INFO    ] Checking for camera pi updates...
[2026-06-12 10:12:00,237.237 INFO    ] 200
[2026-06-12 10:12:00,238.238 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:12:00,261.261 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 10:12:00,307.307 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 10:12:00,309.309 INFO    ] No camera update needed
[2026-06-12 10:12:00,310.310 INFO    ] Script finished. Safe exiting...
[2026-06-12 10:12:00,311.311 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 10:12:00,314.314 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 10:12:00,317.317 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 10:12:02,347.347 INFO    ] ================================================
[2026-06-12 10:12:02,355.355 INFO    ] Launching Daemon at Fri Jun 12 10:12:02 IST 2026
[2026-06-12 10:12:02,361.361 INFO    ] ================================================
[2026-06-12 10:12:02,679.679 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 10:12:02
[2026-06-12 10:12:02,995.995 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 10:12:03,133.133 INFO    ] Initializing speech engine...
[2026-06-12 10:12:03,144.144 INFO    ] 2026-06-12 10:12:03
[2026-06-12 10:12:03,346.346 INFO    ] 2026-06-12 10:12:03
[2026-06-12 10:12:03,376.376 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 10:12:03,497.497 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 10:12:03,541.541 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 10:12:03,692.692 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 10:12:03,744.744 INFO    ] time= 12/06/2026 10:12:03
[2026-06-12 10:12:03,783.783 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 10:12:03,794.794 INFO    ] Checking for existing commands in stream...
[2026-06-12 10:12:03,864.864 INFO    ] No existing commands found in stream
[2026-06-12 10:12:08,874.874 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 10:12:08,877.877 INFO    ] Waiting 3.51 seconds before fallback handling...
[2026-06-12 10:12:12,718.718 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 10:12:12,719.719 INFO    ] Checking for system updates...
[2026-06-12 10:12:12,740.740 INFO    ] 200
[2026-06-12 10:12:12,742.742 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:12:12,774.774 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 10:12:12,776.776 INFO    ] No update needed
[2026-06-12 10:12:12,777.777 INFO    ] Checking for camera pi updates...
[2026-06-12 10:12:12,796.796 INFO    ] 200
[2026-06-12 10:12:12,797.797 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:12:12,820.820 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 10:12:12,867.867 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 10:12:12,868.868 INFO    ] No camera update needed
[2026-06-12 10:12:12,870.870 INFO    ] Script finished. Safe exiting...
[2026-06-12 10:12:12,871.871 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 10:12:12,874.874 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 10:12:12,877.877 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 10:12:14,916.916 INFO    ] ================================================
[2026-06-12 10:12:14,932.932 INFO    ] Launching Daemon at Fri Jun 12 10:12:14 IST 2026
[2026-06-12 10:12:14,943.943 INFO    ] ================================================
[2026-06-12 10:12:15,270.270 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 10:12:15
[2026-06-12 10:12:15,582.582 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 10:12:15,712.712 INFO    ] Initializing speech engine...
[2026-06-12 10:12:15,716.716 INFO    ] 2026-06-12 10:12:15
[2026-06-12 10:12:15,934.934 INFO    ] 2026-06-12 10:12:15
[2026-06-12 10:12:15,963.963 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 10:12:16,085.085 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 10:12:16,135.135 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 10:12:16,291.291 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 10:12:16,350.350 INFO    ] time= 12/06/2026 10:12:16
[2026-06-12 10:12:16,383.383 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 10:12:16,385.385 INFO    ] Checking for existing commands in stream...
[2026-06-12 10:12:16,456.456 INFO    ] No existing commands found in stream
[2026-06-12 10:12:21,462.462 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 10:12:21,465.465 INFO    ] Waiting 3.39 seconds before fallback handling...
[2026-06-12 10:12:25,148.148 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 10:12:25,149.149 INFO    ] Checking for system updates...
[2026-06-12 10:12:25,171.171 INFO    ] 200
[2026-06-12 10:12:25,172.172 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:12:25,203.203 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 10:12:25,205.205 INFO    ] No update needed
[2026-06-12 10:12:25,206.206 INFO    ] Checking for camera pi updates...
[2026-06-12 10:12:25,226.226 INFO    ] 200
[2026-06-12 10:12:25,227.227 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:12:25,252.252 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 10:12:25,294.294 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 10:12:25,295.295 INFO    ] No camera update needed
[2026-06-12 10:12:25,297.297 INFO    ] Script finished. Safe exiting...
[2026-06-12 10:12:25,298.298 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 10:12:25,302.302 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 10:12:25,305.305 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 10:12:27,344.344 INFO    ] ================================================
[2026-06-12 10:12:27,361.361 INFO    ] Launching Daemon at Fri Jun 12 10:12:27 IST 2026
[2026-06-12 10:12:27,374.374 INFO    ] ================================================
[2026-06-12 10:12:27,708.708 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 10:12:27
[2026-06-12 10:12:28,027.027 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 10:12:28,171.171 INFO    ] Initializing speech engine...
[2026-06-12 10:12:28,179.179 INFO    ] 2026-06-12 10:12:28
[2026-06-12 10:12:28,398.398 INFO    ] 2026-06-12 10:12:28
[2026-06-12 10:12:28,429.429 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 10:12:28,533.533 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 10:12:28,566.566 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 10:12:28,720.720 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 10:12:28,762.762 INFO    ] time= 12/06/2026 10:12:28
[2026-06-12 10:12:28,780.780 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 10:12:28,842.842 INFO    ] Checking for existing commands in stream...
[2026-06-12 10:12:28,961.961 INFO    ] No existing commands found in stream
[2026-06-12 10:12:33,972.972 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 10:12:33,975.975 INFO    ] Waiting 2.20 seconds before fallback handling...
[2026-06-12 10:12:36,495.495 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 10:12:36,496.496 INFO    ] Checking for system updates...
[2026-06-12 10:12:36,517.517 INFO    ] 200
[2026-06-12 10:12:36,518.518 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:12:36,551.551 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 10:12:36,552.552 INFO    ] No update needed
[2026-06-12 10:12:36,553.553 INFO    ] Checking for camera pi updates...
[2026-06-12 10:12:36,572.572 INFO    ] 200
[2026-06-12 10:12:36,574.574 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:12:36,599.599 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 10:12:36,639.639 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 10:12:36,641.641 INFO    ] No camera update needed
[2026-06-12 10:12:36,642.642 INFO    ] Script finished. Safe exiting...
[2026-06-12 10:12:36,644.644 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 10:12:36,646.646 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 10:12:36,649.649 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 10:12:38,687.687 INFO    ] ================================================
[2026-06-12 10:12:38,703.703 INFO    ] Launching Daemon at Fri Jun 12 10:12:38 IST 2026
[2026-06-12 10:12:38,713.713 INFO    ] ================================================
[2026-06-12 10:12:39,042.042 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 10:12:39
[2026-06-12 10:12:39,352.352 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 10:12:39,480.480 INFO    ] Initializing speech engine...
[2026-06-12 10:12:39,485.485 INFO    ] 2026-06-12 10:12:39
[2026-06-12 10:12:39,701.701 INFO    ] 2026-06-12 10:12:39
[2026-06-12 10:12:39,730.730 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 10:12:39,851.851 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 10:12:39,890.890 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 10:12:40,044.044 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 10:12:40,095.095 INFO    ] time= 12/06/2026 10:12:40
[2026-06-12 10:12:40,129.129 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 10:12:40,144.144 INFO    ] Checking for existing commands in stream...
[2026-06-12 10:12:40,218.218 INFO    ] No existing commands found in stream
[2026-06-12 10:12:45,229.229 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 10:12:45,232.232 INFO    ] Waiting 2.05 seconds before fallback handling...
[2026-06-12 10:12:47,652.652 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 10:12:47,654.654 INFO    ] Checking for system updates...
[2026-06-12 10:12:47,674.674 INFO    ] 200
[2026-06-12 10:12:47,676.676 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:12:47,707.707 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 10:12:47,708.708 INFO    ] No update needed
[2026-06-12 10:12:47,710.710 INFO    ] Checking for camera pi updates...
[2026-06-12 10:12:47,731.731 INFO    ] 200
[2026-06-12 10:12:47,732.732 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:12:47,758.758 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 10:12:47,805.805 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 10:12:47,806.806 INFO    ] No camera update needed
[2026-06-12 10:12:47,808.808 INFO    ] Script finished. Safe exiting...
[2026-06-12 10:12:47,809.809 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 10:12:47,813.813 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 10:12:47,816.816 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 10:12:49,859.859 INFO    ] ================================================
[2026-06-12 10:12:49,875.875 INFO    ] Launching Daemon at Fri Jun 12 10:12:49 IST 2026
[2026-06-12 10:12:49,886.886 INFO    ] ================================================
[2026-06-12 10:12:50,227.227 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 10:12:50
[2026-06-12 10:12:50,542.542 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 10:12:50,676.676 INFO    ] Initializing speech engine...
[2026-06-12 10:12:50,681.681 INFO    ] 2026-06-12 10:12:50
[2026-06-12 10:12:50,911.911 INFO    ] 2026-06-12 10:12:50
[2026-06-12 10:12:50,942.942 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 10:12:51,038.038 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 10:12:51,041.041 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 10:12:51,218.218 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 10:12:51,257.257 INFO    ] time= 12/06/2026 10:12:51
[2026-06-12 10:12:51,294.294 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 10:12:51,347.347 INFO    ] Checking for existing commands in stream...
[2026-06-12 10:12:51,469.469 INFO    ] No existing commands found in stream
[2026-06-12 10:12:56,480.480 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 10:12:56,483.483 INFO    ] Waiting 2.31 seconds before fallback handling...
[2026-06-12 10:12:59,123.123 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 10:12:59,124.124 INFO    ] Checking for system updates...
[2026-06-12 10:12:59,145.145 INFO    ] 200
[2026-06-12 10:12:59,146.146 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:12:59,176.176 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 10:12:59,177.177 INFO    ] No update needed
[2026-06-12 10:12:59,178.178 INFO    ] Checking for camera pi updates...
[2026-06-12 10:12:59,198.198 INFO    ] 200
[2026-06-12 10:12:59,200.200 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:12:59,223.223 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 10:12:59,362.362 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 10:12:59,363.363 INFO    ] No camera update needed
[2026-06-12 10:12:59,364.364 INFO    ] Script finished. Safe exiting...
[2026-06-12 10:12:59,366.366 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 10:12:59,368.368 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 10:12:59,371.371 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 10:13:01,410.410 INFO    ] ================================================
[2026-06-12 10:13:01,426.426 INFO    ] Launching Daemon at Fri Jun 12 10:13:01 IST 2026
[2026-06-12 10:13:01,437.437 INFO    ] ================================================
[2026-06-12 10:13:01,867.867 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 10:13:01
[2026-06-12 10:13:02,252.252 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 10:13:02,418.418 INFO    ] Initializing speech engine...
[2026-06-12 10:13:02,421.421 INFO    ] 2026-06-12 10:13:02
[2026-06-12 10:13:02,629.629 INFO    ] 2026-06-12 10:13:02
[2026-06-12 10:13:02,675.675 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 10:13:02,835.835 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 10:13:02,893.893 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 10:13:03,022.022 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 10:13:03,083.083 INFO    ] time= 12/06/2026 10:13:03
[2026-06-12 10:13:03,120.120 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 10:13:03,122.122 INFO    ] Checking for existing commands in stream...
[2026-06-12 10:13:03,217.217 INFO    ] No existing commands found in stream
[2026-06-12 10:13:08,231.231 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 10:13:08,234.234 INFO    ] Waiting 0.82 seconds before fallback handling...
[2026-06-12 10:13:09,421.421 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 10:13:09,423.423 INFO    ] Checking for system updates...
[2026-06-12 10:13:09,444.444 INFO    ] 200
[2026-06-12 10:13:09,446.446 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:13:09,476.476 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 10:13:09,478.478 INFO    ] No update needed
[2026-06-12 10:13:09,479.479 INFO    ] Checking for camera pi updates...
[2026-06-12 10:13:09,500.500 INFO    ] 200
[2026-06-12 10:13:09,501.501 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:13:09,526.526 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 10:13:09,566.566 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 10:13:09,568.568 INFO    ] No camera update needed
[2026-06-12 10:13:09,569.569 INFO    ] Script finished. Safe exiting...
[2026-06-12 10:13:09,570.570 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 10:13:09,573.573 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 10:13:09,576.576 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 10:13:11,614.614 INFO    ] ================================================
[2026-06-12 10:13:11,630.630 INFO    ] Launching Daemon at Fri Jun 12 10:13:11 IST 2026
[2026-06-12 10:13:11,641.641 INFO    ] ================================================
[2026-06-12 10:13:12,029.029 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 10:13:12
[2026-06-12 10:13:12,366.366 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 10:13:12,517.517 INFO    ] Initializing speech engine...
[2026-06-12 10:13:12,522.522 INFO    ] 2026-06-12 10:13:12
[2026-06-12 10:13:12,730.730 INFO    ] 2026-06-12 10:13:12
[2026-06-12 10:13:12,759.759 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 10:13:12,882.882 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 10:13:12,945.945 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 10:13:13,089.089 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 10:13:13,152.152 INFO    ] time= 12/06/2026 10:13:13
[2026-06-12 10:13:13,175.175 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 10:13:13,182.182 INFO    ] Checking for existing commands in stream...
[2026-06-12 10:13:13,249.249 INFO    ] No existing commands found in stream
[2026-06-12 10:13:18,258.258 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 10:13:18,262.262 INFO    ] Waiting 2.62 seconds before fallback handling...
[2026-06-12 10:13:21,221.221 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 10:13:21,222.222 INFO    ] Checking for system updates...
[2026-06-12 10:13:21,243.243 INFO    ] 200
[2026-06-12 10:13:21,245.245 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:13:21,277.277 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 10:13:21,279.279 INFO    ] No update needed
[2026-06-12 10:13:21,280.280 INFO    ] Checking for camera pi updates...
[2026-06-12 10:13:21,302.302 INFO    ] 200
[2026-06-12 10:13:21,304.304 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:13:21,329.329 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 10:13:21,369.369 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 10:13:21,371.371 INFO    ] No camera update needed
[2026-06-12 10:13:21,372.372 INFO    ] Script finished. Safe exiting...
[2026-06-12 10:13:21,373.373 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 10:13:21,377.377 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 10:13:21,380.380 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 10:13:23,419.419 INFO    ] ================================================
[2026-06-12 10:13:23,435.435 INFO    ] Launching Daemon at Fri Jun 12 10:13:23 IST 2026
[2026-06-12 10:13:23,446.446 INFO    ] ================================================
[2026-06-12 10:13:23,816.816 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 10:13:23
[2026-06-12 10:13:24,133.133 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 10:13:24,278.278 INFO    ] Initializing speech engine...
[2026-06-12 10:13:24,283.283 INFO    ] 2026-06-12 10:13:24
[2026-06-12 10:13:24,487.487 INFO    ] 2026-06-12 10:13:24
[2026-06-12 10:13:24,515.515 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 10:13:24,637.637 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 10:13:24,700.700 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 10:13:24,838.838 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 10:13:24,899.899 INFO    ] time= 12/06/2026 10:13:24
[2026-06-12 10:13:24,930.930 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 10:13:24,936.936 INFO    ] Checking for existing commands in stream...
[2026-06-12 10:13:25,002.002 INFO    ] No existing commands found in stream
[2026-06-12 10:13:30,012.012 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 10:13:30,015.015 INFO    ] Waiting 1.37 seconds before fallback handling...
[2026-06-12 10:13:31,693.693 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 10:13:31,694.694 INFO    ] Checking for system updates...
[2026-06-12 10:13:31,721.721 INFO    ] 200
[2026-06-12 10:13:31,722.722 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:13:31,757.757 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 10:13:31,759.759 INFO    ] No update needed
[2026-06-12 10:13:31,761.761 INFO    ] Checking for camera pi updates...
[2026-06-12 10:13:31,783.783 INFO    ] 200
[2026-06-12 10:13:31,784.784 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:13:31,813.813 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 10:13:31,854.854 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 10:13:31,856.856 INFO    ] No camera update needed
[2026-06-12 10:13:31,857.857 INFO    ] Script finished. Safe exiting...
[2026-06-12 10:13:31,859.859 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 10:13:31,863.863 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 10:13:31,866.866 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 10:13:33,898.898 INFO    ] ================================================
[2026-06-12 10:13:33,915.915 INFO    ] Launching Daemon at Fri Jun 12 10:13:33 IST 2026
[2026-06-12 10:13:33,926.926 INFO    ] ================================================
[2026-06-12 10:13:34,270.270 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 10:13:34
[2026-06-12 10:13:34,586.586 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 10:13:34,730.730 INFO    ] Initializing speech engine...
[2026-06-12 10:13:34,734.734 INFO    ] 2026-06-12 10:13:34
[2026-06-12 10:13:34,940.940 INFO    ] 2026-06-12 10:13:34
[2026-06-12 10:13:34,968.968 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 10:13:35,150.150 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 10:13:35,154.154 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 10:13:35,282.282 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 10:13:35,338.338 INFO    ] time= 12/06/2026 10:13:35
[2026-06-12 10:13:35,379.379 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 10:13:35,381.381 INFO    ] Checking for existing commands in stream...
[2026-06-12 10:13:35,452.452 INFO    ] No existing commands found in stream
[2026-06-12 10:13:40,461.461 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 10:13:40,464.464 INFO    ] Waiting 2.89 seconds before fallback handling...
[2026-06-12 10:13:43,715.715 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 10:13:43,717.717 INFO    ] Checking for system updates...
[2026-06-12 10:13:43,738.738 INFO    ] 200
[2026-06-12 10:13:43,739.739 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:13:43,772.772 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 10:13:43,773.773 INFO    ] No update needed
[2026-06-12 10:13:43,775.775 INFO    ] Checking for camera pi updates...
[2026-06-12 10:13:43,797.797 INFO    ] 200
[2026-06-12 10:13:43,798.798 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:13:43,823.823 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 10:13:43,870.870 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 10:13:43,871.871 INFO    ] No camera update needed
[2026-06-12 10:13:43,873.873 INFO    ] Script finished. Safe exiting...
[2026-06-12 10:13:43,874.874 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 10:13:43,877.877 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 10:13:43,880.880 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 10:13:45,920.920 INFO    ] ================================================
[2026-06-12 10:13:45,936.936 INFO    ] Launching Daemon at Fri Jun 12 10:13:45 IST 2026
[2026-06-12 10:13:45,946.946 INFO    ] ================================================
[2026-06-12 10:13:46,297.297 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 10:13:46
[2026-06-12 10:13:46,611.611 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 10:13:46,748.748 INFO    ] Initializing speech engine...
[2026-06-12 10:13:46,762.762 INFO    ] 2026-06-12 10:13:46
[2026-06-12 10:13:46,980.980 INFO    ] 2026-06-12 10:13:46
[2026-06-12 10:13:47,011.011 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 10:13:47,143.143 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 10:13:47,196.196 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 10:13:47,351.351 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 10:13:47,403.403 INFO    ] time= 12/06/2026 10:13:47
[2026-06-12 10:13:47,436.436 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 10:13:47,459.459 INFO    ] Checking for existing commands in stream...
[2026-06-12 10:13:47,535.535 INFO    ] No existing commands found in stream
[2026-06-12 10:13:52,545.545 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 10:13:52,548.548 INFO    ] Waiting 3.46 seconds before fallback handling...
[2026-06-12 10:13:56,363.363 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 10:13:56,365.365 INFO    ] Checking for system updates...
[2026-06-12 10:13:56,385.385 INFO    ] 200
[2026-06-12 10:13:56,387.387 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:13:56,416.416 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 10:13:56,417.417 INFO    ] No update needed
[2026-06-12 10:13:56,419.419 INFO    ] Checking for camera pi updates...
[2026-06-12 10:13:56,439.439 INFO    ] 200
[2026-06-12 10:13:56,441.441 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:13:56,464.464 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 10:13:56,500.500 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 10:13:56,501.501 INFO    ] No camera update needed
[2026-06-12 10:13:56,502.502 INFO    ] Script finished. Safe exiting...
[2026-06-12 10:13:56,504.504 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 10:13:56,507.507 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 10:13:56,509.509 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 10:13:58,548.548 INFO    ] ================================================
[2026-06-12 10:13:58,564.564 INFO    ] Launching Daemon at Fri Jun 12 10:13:58 IST 2026
[2026-06-12 10:13:58,575.575 INFO    ] ================================================
[2026-06-12 10:13:58,943.943 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 10:13:58
[2026-06-12 10:13:59,280.280 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 10:13:59,426.426 INFO    ] Initializing speech engine...
[2026-06-12 10:13:59,435.435 INFO    ] 2026-06-12 10:13:59
[2026-06-12 10:13:59,646.646 INFO    ] 2026-06-12 10:13:59
[2026-06-12 10:13:59,675.675 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 10:13:59,798.798 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 10:13:59,861.861 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 10:14:00,020.020 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 10:14:00,069.069 INFO    ] time= 12/06/2026 10:14:00
[2026-06-12 10:14:00,091.091 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 10:14:00,097.097 INFO    ] Checking for existing commands in stream...
[2026-06-12 10:14:00,164.164 INFO    ] No existing commands found in stream
[2026-06-12 10:14:05,173.173 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 10:14:05,176.176 INFO    ] Waiting 3.20 seconds before fallback handling...
[2026-06-12 10:14:08,725.725 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 10:14:08,727.727 INFO    ] Checking for system updates...
[2026-06-12 10:14:08,747.747 INFO    ] 200
[2026-06-12 10:14:08,749.749 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:14:08,779.779 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 10:14:08,781.781 INFO    ] No update needed
[2026-06-12 10:14:08,782.782 INFO    ] Checking for camera pi updates...
[2026-06-12 10:14:08,803.803 INFO    ] 200
[2026-06-12 10:14:08,805.805 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:14:08,831.831 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 10:14:08,867.867 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 10:14:08,868.868 INFO    ] No camera update needed
[2026-06-12 10:14:08,870.870 INFO    ] Script finished. Safe exiting...
[2026-06-12 10:14:08,871.871 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 10:14:08,874.874 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 10:14:08,877.877 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 10:14:10,916.916 INFO    ] ================================================
[2026-06-12 10:14:10,932.932 INFO    ] Launching Daemon at Fri Jun 12 10:14:10 IST 2026
[2026-06-12 10:14:10,942.942 INFO    ] ================================================
[2026-06-12 10:14:11,299.299 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 10:14:11
[2026-06-12 10:14:11,613.613 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 10:14:11,745.745 INFO    ] Initializing speech engine...
[2026-06-12 10:14:11,748.748 INFO    ] 2026-06-12 10:14:11
[2026-06-12 10:14:11,977.977 INFO    ] 2026-06-12 10:14:11
[2026-06-12 10:14:12,007.007 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 10:14:12,139.139 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 10:14:12,171.171 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 10:14:12,344.344 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 10:14:12,371.371 INFO    ] time= 12/06/2026 10:14:12
[2026-06-12 10:14:12,427.427 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 10:14:12,452.452 INFO    ] Checking for existing commands in stream...
[2026-06-12 10:14:12,527.527 INFO    ] No existing commands found in stream
[2026-06-12 10:14:17,538.538 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 10:14:17,541.541 INFO    ] Waiting 2.20 seconds before fallback handling...
[2026-06-12 10:14:20,094.094 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 10:14:20,095.095 INFO    ] Checking for system updates...
[2026-06-12 10:14:20,124.124 INFO    ] 200
[2026-06-12 10:14:20,126.126 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:14:20,158.158 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 10:14:20,159.159 INFO    ] No update needed
[2026-06-12 10:14:20,161.161 INFO    ] Checking for camera pi updates...
[2026-06-12 10:14:20,182.182 INFO    ] 200
[2026-06-12 10:14:20,183.183 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:14:20,210.210 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 10:14:20,250.250 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 10:14:20,252.252 INFO    ] No camera update needed
[2026-06-12 10:14:20,253.253 INFO    ] Script finished. Safe exiting...
[2026-06-12 10:14:20,254.254 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 10:14:20,258.258 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 10:14:20,261.261 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 10:14:22,299.299 INFO    ] ================================================
[2026-06-12 10:14:22,315.315 INFO    ] Launching Daemon at Fri Jun 12 10:14:22 IST 2026
[2026-06-12 10:14:22,326.326 INFO    ] ================================================
[2026-06-12 10:14:22,680.680 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 10:14:22
[2026-06-12 10:14:22,991.991 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 10:14:23,122.122 INFO    ] Initializing speech engine...
[2026-06-12 10:14:23,131.131 INFO    ] 2026-06-12 10:14:23
[2026-06-12 10:14:23,353.353 INFO    ] 2026-06-12 10:14:23
[2026-06-12 10:14:23,383.383 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 10:14:23,514.514 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 10:14:23,566.566 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 10:14:23,723.723 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 10:14:23,786.786 INFO    ] time= 12/06/2026 10:14:23
[2026-06-12 10:14:23,809.809 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 10:14:23,826.826 INFO    ] Checking for existing commands in stream...
[2026-06-12 10:14:23,902.902 INFO    ] No existing commands found in stream
[2026-06-12 10:14:28,911.911 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 10:14:28,914.914 INFO    ] Waiting 2.23 seconds before fallback handling...
[2026-06-12 10:14:31,466.466 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 10:14:31,468.468 INFO    ] Checking for system updates...
[2026-06-12 10:14:31,488.488 INFO    ] 200
[2026-06-12 10:14:31,490.490 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:14:31,522.522 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 10:14:31,523.523 INFO    ] No update needed
[2026-06-12 10:14:31,524.524 INFO    ] Checking for camera pi updates...
[2026-06-12 10:14:31,544.544 INFO    ] 200
[2026-06-12 10:14:31,545.545 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:14:31,568.568 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 10:14:31,591.591 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 10:14:31,592.592 INFO    ] No camera update needed
[2026-06-12 10:14:31,594.594 INFO    ] Script finished. Safe exiting...
[2026-06-12 10:14:31,595.595 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 10:14:31,598.598 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 10:14:31,601.601 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 10:14:33,634.634 INFO    ] ================================================
[2026-06-12 10:14:33,654.654 INFO    ] Launching Daemon at Fri Jun 12 10:14:33 IST 2026
[2026-06-12 10:14:33,665.665 INFO    ] ================================================
[2026-06-12 10:14:34,036.036 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 10:14:34
[2026-06-12 10:14:34,353.353 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 10:14:34,489.489 INFO    ] Initializing speech engine...
[2026-06-12 10:14:34,492.492 INFO    ] 2026-06-12 10:14:34
[2026-06-12 10:14:34,719.719 INFO    ] 2026-06-12 10:14:34
[2026-06-12 10:14:34,749.749 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 10:14:34,844.844 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 10:14:34,849.849 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 10:14:35,033.033 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 10:14:35,061.061 INFO    ] time= 12/06/2026 10:14:35
[2026-06-12 10:14:35,094.094 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 10:14:35,141.141 INFO    ] Checking for existing commands in stream...
[2026-06-12 10:14:35,271.271 INFO    ] No existing commands found in stream
[2026-06-12 10:14:40,282.282 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 10:14:40,284.284 INFO    ] Waiting 0.63 seconds before fallback handling...
[2026-06-12 10:14:41,272.272 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 10:14:41,274.274 INFO    ] Checking for system updates...
[2026-06-12 10:14:41,295.295 INFO    ] 200
[2026-06-12 10:14:41,296.296 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:14:41,326.326 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 10:14:41,327.327 INFO    ] No update needed
[2026-06-12 10:14:41,329.329 INFO    ] Checking for camera pi updates...
[2026-06-12 10:14:41,348.348 INFO    ] 200
[2026-06-12 10:14:41,349.349 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:14:41,375.375 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 10:14:41,410.410 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 10:14:41,412.412 INFO    ] No camera update needed
[2026-06-12 10:14:41,413.413 INFO    ] Script finished. Safe exiting...
[2026-06-12 10:14:41,414.414 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 10:14:41,417.417 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 10:14:41,420.420 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 10:14:43,459.459 INFO    ] ================================================
[2026-06-12 10:14:43,475.475 INFO    ] Launching Daemon at Fri Jun 12 10:14:43 IST 2026
[2026-06-12 10:14:43,486.486 INFO    ] ================================================
[2026-06-12 10:14:43,817.817 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 10:14:43
[2026-06-12 10:14:44,129.129 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 10:14:44,266.266 INFO    ] Initializing speech engine...
[2026-06-12 10:14:44,274.274 INFO    ] 2026-06-12 10:14:44
[2026-06-12 10:14:44,484.484 INFO    ] 2026-06-12 10:14:44
[2026-06-12 10:14:44,513.513 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 10:14:44,639.639 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 10:14:44,703.703 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 10:14:44,837.837 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 10:14:44,894.894 INFO    ] time= 12/06/2026 10:14:44
[2026-06-12 10:14:44,938.938 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 10:14:44,940.940 INFO    ] Checking for existing commands in stream...
[2026-06-12 10:14:45,012.012 INFO    ] No existing commands found in stream
[2026-06-12 10:14:50,022.022 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 10:14:50,025.025 INFO    ] Waiting 1.19 seconds before fallback handling...
[2026-06-12 10:14:51,554.554 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 10:14:51,555.555 INFO    ] Checking for system updates...
[2026-06-12 10:14:51,576.576 INFO    ] 200
[2026-06-12 10:14:51,577.577 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:14:51,607.607 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 10:14:51,608.608 INFO    ] No update needed
[2026-06-12 10:14:51,609.609 INFO    ] Checking for camera pi updates...
[2026-06-12 10:14:51,629.629 INFO    ] 200
[2026-06-12 10:14:51,631.631 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:14:51,655.655 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 10:14:51,694.694 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 10:14:51,695.695 INFO    ] No camera update needed
[2026-06-12 10:14:51,696.696 INFO    ] Script finished. Safe exiting...
[2026-06-12 10:14:51,697.697 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 10:14:51,701.701 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 10:14:51,703.703 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 10:14:53,743.743 INFO    ] ================================================
[2026-06-12 10:14:53,758.758 INFO    ] Launching Daemon at Fri Jun 12 10:14:53 IST 2026
[2026-06-12 10:14:53,769.769 INFO    ] ================================================
[2026-06-12 10:14:54,138.138 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 10:14:54
[2026-06-12 10:14:54,456.456 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 10:14:54,601.601 INFO    ] Initializing speech engine...
[2026-06-12 10:14:54,606.606 INFO    ] 2026-06-12 10:14:54
[2026-06-12 10:14:54,810.810 INFO    ] 2026-06-12 10:14:54
[2026-06-12 10:14:54,840.840 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 10:14:55,024.024 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 10:14:55,028.028 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 10:14:55,179.179 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 10:14:55,234.234 INFO    ] time= 12/06/2026 10:14:55
[2026-06-12 10:14:55,255.255 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 10:14:55,262.262 INFO    ] Checking for existing commands in stream...
[2026-06-12 10:14:55,327.327 INFO    ] No existing commands found in stream
[2026-06-12 10:15:00,338.338 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 10:15:00,341.341 INFO    ] Waiting 3.89 seconds before fallback handling...
[2026-06-12 10:15:04,589.589 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 10:15:04,591.591 INFO    ] Checking for system updates...
[2026-06-12 10:15:04,612.612 INFO    ] 200
[2026-06-12 10:15:04,613.613 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:15:04,646.646 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 10:15:04,647.647 INFO    ] No update needed
[2026-06-12 10:15:04,648.648 INFO    ] Checking for camera pi updates...
[2026-06-12 10:15:04,669.669 INFO    ] 200
[2026-06-12 10:15:04,670.670 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:15:04,694.694 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 10:15:04,730.730 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 10:15:04,732.732 INFO    ] No camera update needed
[2026-06-12 10:15:04,733.733 INFO    ] Script finished. Safe exiting...
[2026-06-12 10:15:04,734.734 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 10:15:04,738.738 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 10:15:04,741.741 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 10:15:06,779.779 INFO    ] ================================================
[2026-06-12 10:15:06,794.794 INFO    ] Launching Daemon at Fri Jun 12 10:15:06 IST 2026
[2026-06-12 10:15:06,805.805 INFO    ] ================================================
[2026-06-12 10:15:07,163.163 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 10:15:07
[2026-06-12 10:15:07,480.480 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 10:15:07,618.618 INFO    ] Initializing speech engine...
[2026-06-12 10:15:07,628.628 INFO    ] 2026-06-12 10:15:07
[2026-06-12 10:15:07,833.833 INFO    ] 2026-06-12 10:15:07
[2026-06-12 10:15:07,862.862 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 10:15:07,983.983 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 10:15:08,041.041 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 10:15:08,176.176 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 10:15:08,228.228 INFO    ] time= 12/06/2026 10:15:08
[2026-06-12 10:15:08,272.272 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 10:15:08,277.277 INFO    ] Checking for existing commands in stream...
[2026-06-12 10:15:08,348.348 INFO    ] No existing commands found in stream
[2026-06-12 10:15:13,358.358 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 10:15:13,361.361 INFO    ] Waiting 1.80 seconds before fallback handling...
[2026-06-12 10:15:15,514.514 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 10:15:15,515.515 INFO    ] Checking for system updates...
[2026-06-12 10:15:15,537.537 INFO    ] 200
[2026-06-12 10:15:15,539.539 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:15:15,569.569 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 10:15:15,570.570 INFO    ] No update needed
[2026-06-12 10:15:15,572.572 INFO    ] Checking for camera pi updates...
[2026-06-12 10:15:15,591.591 INFO    ] 200
[2026-06-12 10:15:15,593.593 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:15:15,616.616 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 10:15:15,661.661 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 10:15:15,663.663 INFO    ] No camera update needed
[2026-06-12 10:15:15,664.664 INFO    ] Script finished. Safe exiting...
[2026-06-12 10:15:15,665.665 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 10:15:15,668.668 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 10:15:15,671.671 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 10:15:17,709.709 INFO    ] ================================================
[2026-06-12 10:15:17,724.724 INFO    ] Launching Daemon at Fri Jun 12 10:15:17 IST 2026
[2026-06-12 10:15:17,737.737 INFO    ] ================================================
[2026-06-12 10:15:18,086.086 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 10:15:18
[2026-06-12 10:15:18,403.403 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 10:15:18,534.534 INFO    ] Initializing speech engine...
[2026-06-12 10:15:18,538.538 INFO    ] 2026-06-12 10:15:18
[2026-06-12 10:15:18,754.754 INFO    ] 2026-06-12 10:15:18
[2026-06-12 10:15:18,783.783 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 10:15:18,905.905 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 10:15:18,968.968 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 10:15:19,106.106 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 10:15:19,173.173 INFO    ] time= 12/06/2026 10:15:19
[2026-06-12 10:15:19,197.197 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 10:15:19,203.203 INFO    ] Checking for existing commands in stream...
[2026-06-12 10:15:19,268.268 INFO    ] No existing commands found in stream
[2026-06-12 10:15:24,279.279 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 10:15:24,282.282 INFO    ] Waiting 3.00 seconds before fallback handling...
[2026-06-12 10:15:27,619.619 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 10:15:27,621.621 INFO    ] Checking for system updates...
[2026-06-12 10:15:27,643.643 INFO    ] 200
[2026-06-12 10:15:27,645.645 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:15:27,677.677 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 10:15:27,679.679 INFO    ] No update needed
[2026-06-12 10:15:27,680.680 INFO    ] Checking for camera pi updates...
[2026-06-12 10:15:27,701.701 INFO    ] 200
[2026-06-12 10:15:27,703.703 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:15:27,729.729 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 10:15:27,762.762 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 10:15:27,763.763 INFO    ] No camera update needed
[2026-06-12 10:15:27,765.765 INFO    ] Script finished. Safe exiting...
[2026-06-12 10:15:27,766.766 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 10:15:27,769.769 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 10:15:27,772.772 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 10:15:29,812.812 INFO    ] ================================================
[2026-06-12 10:15:29,827.827 INFO    ] Launching Daemon at Fri Jun 12 10:15:29 IST 2026
[2026-06-12 10:15:29,838.838 INFO    ] ================================================
[2026-06-12 10:15:30,211.211 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 10:15:30
[2026-06-12 10:15:30,544.544 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 10:15:30,697.697 INFO    ] Initializing speech engine...
[2026-06-12 10:15:30,705.705 INFO    ] 2026-06-12 10:15:30
[2026-06-12 10:15:30,905.905 INFO    ] 2026-06-12 10:15:30
[2026-06-12 10:15:30,934.934 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 10:15:31,066.066 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 10:15:31,125.125 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 10:15:31,255.255 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 10:15:31,311.311 INFO    ] time= 12/06/2026 10:15:31
[2026-06-12 10:15:31,355.355 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 10:15:31,357.357 INFO    ] Checking for existing commands in stream...
[2026-06-12 10:15:31,418.418 INFO    ] No existing commands found in stream
[2026-06-12 10:15:36,427.427 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 10:15:36,430.430 INFO    ] Waiting 2.01 seconds before fallback handling...
[2026-06-12 10:15:38,810.810 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 10:15:38,812.812 INFO    ] Checking for system updates...
[2026-06-12 10:15:38,834.834 INFO    ] 200
[2026-06-12 10:15:38,836.836 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:15:38,866.866 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 10:15:38,867.867 INFO    ] No update needed
[2026-06-12 10:15:38,868.868 INFO    ] Checking for camera pi updates...
[2026-06-12 10:15:38,888.888 INFO    ] 200
[2026-06-12 10:15:38,889.889 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:15:38,913.913 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 10:15:38,949.949 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 10:15:38,951.951 INFO    ] No camera update needed
[2026-06-12 10:15:38,952.952 INFO    ] Script finished. Safe exiting...
[2026-06-12 10:15:38,953.953 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 10:15:38,956.956 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 10:15:38,959.959 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 10:15:41,998.998 INFO    ] ================================================
[2026-06-12 10:15:41,013.013 INFO    ] Launching Daemon at Fri Jun 12 10:15:41 IST 2026
[2026-06-12 10:15:41,024.024 INFO    ] ================================================
[2026-06-12 10:15:41,378.378 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 10:15:41
[2026-06-12 10:15:41,708.708 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 10:15:41,864.864 INFO    ] Initializing speech engine...
[2026-06-12 10:15:41,870.870 INFO    ] 2026-06-12 10:15:41
[2026-06-12 10:15:42,070.070 INFO    ] 2026-06-12 10:15:42
[2026-06-12 10:15:42,100.100 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 10:15:42,224.224 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 10:15:42,288.288 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 10:15:42,428.428 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 10:15:42,492.492 INFO    ] time= 12/06/2026 10:15:42
[2026-06-12 10:15:42,521.521 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 10:15:42,528.528 INFO    ] Checking for existing commands in stream...
[2026-06-12 10:15:42,595.595 INFO    ] No existing commands found in stream
[2026-06-12 10:15:47,604.604 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 10:15:47,612.612 INFO    ] Waiting 3.53 seconds before fallback handling...
[2026-06-12 10:15:51,478.478 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 10:15:51,480.480 INFO    ] Checking for system updates...
[2026-06-12 10:15:51,503.503 INFO    ] 200
[2026-06-12 10:15:51,504.504 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:15:51,537.537 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 10:15:51,539.539 INFO    ] No update needed
[2026-06-12 10:15:51,541.541 INFO    ] Checking for camera pi updates...
[2026-06-12 10:15:51,561.561 INFO    ] 200
[2026-06-12 10:15:51,562.562 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:15:51,587.587 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 10:15:51,621.621 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 10:15:51,623.623 INFO    ] No camera update needed
[2026-06-12 10:15:51,624.624 INFO    ] Script finished. Safe exiting...
[2026-06-12 10:15:51,625.625 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 10:15:51,628.628 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 10:15:51,631.631 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 10:15:53,669.669 INFO    ] ================================================
[2026-06-12 10:15:53,685.685 INFO    ] Launching Daemon at Fri Jun 12 10:15:53 IST 2026
[2026-06-12 10:15:53,695.695 INFO    ] ================================================
[2026-06-12 10:15:54,051.051 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 10:15:54
[2026-06-12 10:15:54,367.367 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 10:15:54,515.515 INFO    ] Initializing speech engine...
[2026-06-12 10:15:54,520.520 INFO    ] 2026-06-12 10:15:54
[2026-06-12 10:15:54,733.733 INFO    ] 2026-06-12 10:15:54
[2026-06-12 10:15:54,764.764 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 10:15:54,950.950 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 10:15:54,962.962 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 10:15:55,099.099 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 10:15:55,151.151 INFO    ] time= 12/06/2026 10:15:55
[2026-06-12 10:15:55,184.184 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 10:15:55,206.206 INFO    ] Checking for existing commands in stream...
[2026-06-12 10:15:55,281.281 INFO    ] No existing commands found in stream
[2026-06-12 10:16:00,291.291 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 10:16:00,293.293 INFO    ] Waiting 0.86 seconds before fallback handling...
[2026-06-12 10:16:03,023.023 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 10:16:03,026.026 INFO    ] Checking for system updates...
[2026-06-12 10:16:03,062.062 INFO    ] 200
[2026-06-12 10:16:03,064.064 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:16:03,120.120 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 10:16:03,121.121 INFO    ] No update needed
[2026-06-12 10:16:03,122.122 INFO    ] Checking for camera pi updates...
[2026-06-12 10:16:03,142.142 INFO    ] 200
[2026-06-12 10:16:03,144.144 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:16:03,169.169 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 10:16:03,207.207 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 10:16:03,209.209 INFO    ] No camera update needed
[2026-06-12 10:16:03,210.210 INFO    ] Script finished. Safe exiting...
[2026-06-12 10:16:03,211.211 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 10:16:03,214.214 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 10:16:03,217.217 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 10:16:05,255.255 INFO    ] ================================================
[2026-06-12 10:16:05,270.270 INFO    ] Launching Daemon at Fri Jun 12 10:16:05 IST 2026
[2026-06-12 10:16:05,281.281 INFO    ] ================================================
[2026-06-12 10:16:05,641.641 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 10:16:05
[2026-06-12 10:16:05,965.965 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 10:16:06,094.094 INFO    ] Initializing speech engine...
[2026-06-12 10:16:06,097.097 INFO    ] 2026-06-12 10:16:06
[2026-06-12 10:16:06,324.324 INFO    ] 2026-06-12 10:16:06
[2026-06-12 10:16:06,354.354 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 10:16:06,483.483 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 10:16:06,526.526 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 10:16:06,687.687 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 10:16:06,734.734 INFO    ] time= 12/06/2026 10:16:06
[2026-06-12 10:16:06,770.770 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 10:16:06,793.793 INFO    ] Checking for existing commands in stream...
[2026-06-12 10:16:06,868.868 INFO    ] No existing commands found in stream
[2026-06-12 10:16:11,877.877 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 10:16:11,880.880 INFO    ] Waiting 3.59 seconds before fallback handling...
[2026-06-12 10:16:15,861.861 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 10:16:15,863.863 INFO    ] Checking for system updates...
[2026-06-12 10:16:15,883.883 INFO    ] 200
[2026-06-12 10:16:15,885.885 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:16:15,915.915 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 10:16:15,916.916 INFO    ] No update needed
[2026-06-12 10:16:15,917.917 INFO    ] Checking for camera pi updates...
[2026-06-12 10:16:15,938.938 INFO    ] 200
[2026-06-12 10:16:15,940.940 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:16:15,963.963 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 10:16:16,013.013 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 10:16:16,014.014 INFO    ] No camera update needed
[2026-06-12 10:16:16,015.015 INFO    ] Script finished. Safe exiting...
[2026-06-12 10:16:16,017.017 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 10:16:16,020.020 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 10:16:16,023.023 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 10:16:18,061.061 INFO    ] ================================================
[2026-06-12 10:16:18,076.076 INFO    ] Launching Daemon at Fri Jun 12 10:16:18 IST 2026
[2026-06-12 10:16:18,086.086 INFO    ] ================================================
[2026-06-12 10:16:18,421.421 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 10:16:18
[2026-06-12 10:16:18,736.736 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 10:16:18,877.877 INFO    ] Initializing speech engine...
[2026-06-12 10:16:18,888.888 INFO    ] 2026-06-12 10:16:18
[2026-06-12 10:16:19,102.102 INFO    ] 2026-06-12 10:16:19
[2026-06-12 10:16:19,131.131 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 10:16:19,259.259 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 10:16:19,278.278 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 10:16:19,418.418 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 10:16:19,469.469 INFO    ] time= 12/06/2026 10:16:19
[2026-06-12 10:16:19,530.530 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 10:16:19,564.564 INFO    ] Checking for existing commands in stream...
[2026-06-12 10:16:19,647.647 INFO    ] No existing commands found in stream
[2026-06-12 10:16:24,657.657 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 10:16:24,660.660 INFO    ] Waiting 0.32 seconds before fallback handling...
[2026-06-12 10:16:25,342.342 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 10:16:25,344.344 INFO    ] Checking for system updates...
[2026-06-12 10:16:25,366.366 INFO    ] 200
[2026-06-12 10:16:25,367.367 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:16:25,397.397 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 10:16:25,398.398 INFO    ] No update needed
[2026-06-12 10:16:25,399.399 INFO    ] Checking for camera pi updates...
[2026-06-12 10:16:25,419.419 INFO    ] 200
[2026-06-12 10:16:25,420.420 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:16:25,445.445 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 10:16:25,484.484 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 10:16:25,486.486 INFO    ] No camera update needed
[2026-06-12 10:16:25,487.487 INFO    ] Script finished. Safe exiting...
[2026-06-12 10:16:25,488.488 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 10:16:25,491.491 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 10:16:25,494.494 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 10:16:27,532.532 INFO    ] ================================================
[2026-06-12 10:16:27,547.547 INFO    ] Launching Daemon at Fri Jun 12 10:16:27 IST 2026
[2026-06-12 10:16:27,561.561 INFO    ] ================================================
[2026-06-12 10:16:27,892.892 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 10:16:27
[2026-06-12 10:16:28,207.207 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 10:16:28,348.348 INFO    ] Initializing speech engine...
[2026-06-12 10:16:28,358.358 INFO    ] 2026-06-12 10:16:28
[2026-06-12 10:16:28,570.570 INFO    ] 2026-06-12 10:16:28
[2026-06-12 10:16:28,601.601 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 10:16:28,730.730 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 10:16:28,772.772 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 10:16:28,940.940 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 10:16:29,009.009 INFO    ] time= 12/06/2026 10:16:28
[2026-06-12 10:16:29,035.035 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 10:16:29,042.042 INFO    ] Checking for existing commands in stream...
[2026-06-12 10:16:29,112.112 INFO    ] No existing commands found in stream
[2026-06-12 10:16:34,121.121 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 10:16:34,124.124 INFO    ] Waiting 0.53 seconds before fallback handling...
[2026-06-12 10:16:34,976.976 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 10:16:34,977.977 INFO    ] Checking for system updates...
[2026-06-12 10:16:34,999.999 INFO    ] 200
[2026-06-12 10:16:35,000.000 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:16:35,030.030 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 10:16:35,032.032 INFO    ] No update needed
[2026-06-12 10:16:35,033.033 INFO    ] Checking for camera pi updates...
[2026-06-12 10:16:35,053.053 INFO    ] 200
[2026-06-12 10:16:35,054.054 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:16:35,079.079 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 10:16:35,125.125 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 10:16:35,126.126 INFO    ] No camera update needed
[2026-06-12 10:16:35,127.127 INFO    ] Script finished. Safe exiting...
[2026-06-12 10:16:35,128.128 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 10:16:35,132.132 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 10:16:35,134.134 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 10:16:37,173.173 INFO    ] ================================================
[2026-06-12 10:16:37,188.188 INFO    ] Launching Daemon at Fri Jun 12 10:16:37 IST 2026
[2026-06-12 10:16:37,199.199 INFO    ] ================================================
[2026-06-12 10:16:37,532.532 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 10:16:37
[2026-06-12 10:16:37,842.842 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 10:16:37,973.973 INFO    ] Initializing speech engine...
[2026-06-12 10:16:37,981.981 INFO    ] 2026-06-12 10:16:37
[2026-06-12 10:16:38,193.193 INFO    ] 2026-06-12 10:16:38
[2026-06-12 10:16:38,222.222 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 10:16:38,407.407 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 10:16:38,411.411 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 10:16:38,542.542 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 10:16:38,603.603 INFO    ] time= 12/06/2026 10:16:38
[2026-06-12 10:16:38,641.641 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 10:16:38,643.643 INFO    ] Checking for existing commands in stream...
[2026-06-12 10:16:38,740.740 INFO    ] No existing commands found in stream
[2026-06-12 10:16:43,749.749 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 10:16:43,752.752 INFO    ] Waiting 3.26 seconds before fallback handling...
[2026-06-12 10:16:47,361.361 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 10:16:47,362.362 INFO    ] Checking for system updates...
[2026-06-12 10:16:47,383.383 INFO    ] 200
[2026-06-12 10:16:47,384.384 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:16:47,415.415 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 10:16:47,416.416 INFO    ] No update needed
[2026-06-12 10:16:47,418.418 INFO    ] Checking for camera pi updates...
[2026-06-12 10:16:47,437.437 INFO    ] 200
[2026-06-12 10:16:47,439.439 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:16:47,463.463 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 10:16:47,503.503 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 10:16:47,505.505 INFO    ] No camera update needed
[2026-06-12 10:16:47,506.506 INFO    ] Script finished. Safe exiting...
[2026-06-12 10:16:47,507.507 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 10:16:47,511.511 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 10:16:47,513.513 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 10:16:49,552.552 INFO    ] ================================================
[2026-06-12 10:16:49,567.567 INFO    ] Launching Daemon at Fri Jun 12 10:16:49 IST 2026
[2026-06-12 10:16:49,578.578 INFO    ] ================================================
[2026-06-12 10:16:49,920.920 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 10:16:49
[2026-06-12 10:16:50,234.234 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 10:16:50,378.378 INFO    ] Initializing speech engine...
[2026-06-12 10:16:50,383.383 INFO    ] 2026-06-12 10:16:50
[2026-06-12 10:16:50,586.586 INFO    ] 2026-06-12 10:16:50
[2026-06-12 10:16:50,613.613 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 10:16:50,803.803 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 10:16:50,812.812 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 10:16:50,960.960 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 10:16:51,019.019 INFO    ] time= 12/06/2026 10:16:50
[2026-06-12 10:16:51,044.044 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 10:16:51,046.046 INFO    ] Checking for existing commands in stream...
[2026-06-12 10:16:51,160.160 INFO    ] No existing commands found in stream
[2026-06-12 10:16:56,173.173 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 10:16:56,176.176 INFO    ] Waiting 1.95 seconds before fallback handling...
[2026-06-12 10:16:58,475.475 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 10:16:58,477.477 INFO    ] Checking for system updates...
[2026-06-12 10:16:58,497.497 INFO    ] 200
[2026-06-12 10:16:58,499.499 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:16:58,531.531 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 10:16:58,532.532 INFO    ] No update needed
[2026-06-12 10:16:58,533.533 INFO    ] Checking for camera pi updates...
[2026-06-12 10:16:58,552.552 INFO    ] 200
[2026-06-12 10:16:58,554.554 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:16:58,577.577 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 10:16:58,622.622 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 10:16:58,624.624 INFO    ] No camera update needed
[2026-06-12 10:16:58,625.625 INFO    ] Script finished. Safe exiting...
[2026-06-12 10:16:58,626.626 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 10:16:58,629.629 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 10:16:58,632.632 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 10:17:00,671.671 INFO    ] ================================================
[2026-06-12 10:17:00,687.687 INFO    ] Launching Daemon at Fri Jun 12 10:17:00 IST 2026
[2026-06-12 10:17:00,698.698 INFO    ] ================================================
[2026-06-12 10:17:01,062.062 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 10:17:01
[2026-06-12 10:17:01,393.393 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 10:17:01,537.537 INFO    ] Initializing speech engine...
[2026-06-12 10:17:01,548.548 INFO    ] 2026-06-12 10:17:01
[2026-06-12 10:17:01,758.758 INFO    ] 2026-06-12 10:17:01
[2026-06-12 10:17:01,787.787 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 10:17:01,925.925 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 10:17:01,927.927 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 10:17:02,033.033 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 10:17:02,036.036 INFO    ] time= 12/06/2026 10:17:02
[2026-06-12 10:17:02,038.038 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 10:17:02,041.041 INFO    ] Checking for existing commands in stream...
[2026-06-12 10:17:02,085.085 INFO    ] No existing commands found in stream
[2026-06-12 10:17:07,096.096 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 10:17:07,099.099 INFO    ] Waiting 2.71 seconds before fallback handling...
[2026-06-12 10:17:10,179.179 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 10:17:10,181.181 INFO    ] Checking for system updates...
[2026-06-12 10:17:10,201.201 INFO    ] 200
[2026-06-12 10:17:10,203.203 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:17:10,235.235 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 10:17:10,236.236 INFO    ] No update needed
[2026-06-12 10:17:10,237.237 INFO    ] Checking for camera pi updates...
[2026-06-12 10:17:10,259.259 INFO    ] 200
[2026-06-12 10:17:10,260.260 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:17:10,286.286 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 10:17:10,429.429 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 10:17:10,431.431 INFO    ] No camera update needed
[2026-06-12 10:17:10,432.432 INFO    ] Script finished. Safe exiting...
[2026-06-12 10:17:10,433.433 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 10:17:10,436.436 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 10:17:10,439.439 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 10:17:12,480.480 INFO    ] ================================================
[2026-06-12 10:17:12,495.495 INFO    ] Launching Daemon at Fri Jun 12 10:17:12 IST 2026
[2026-06-12 10:17:12,507.507 INFO    ] ================================================
[2026-06-12 10:17:12,842.842 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 10:17:12
[2026-06-12 10:17:13,153.153 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 10:17:13,286.286 INFO    ] Initializing speech engine...
[2026-06-12 10:17:13,290.290 INFO    ] 2026-06-12 10:17:13
[2026-06-12 10:17:13,514.514 INFO    ] 2026-06-12 10:17:13
[2026-06-12 10:17:13,545.545 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 10:17:13,674.674 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 10:17:13,732.732 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 10:17:13,877.877 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 10:17:13,924.924 INFO    ] time= 12/06/2026 10:17:13
[2026-06-12 10:17:13,959.959 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 10:17:13,983.983 INFO    ] Checking for existing commands in stream...
[2026-06-12 10:17:14,057.057 INFO    ] No existing commands found in stream
[2026-06-12 10:17:19,067.067 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 10:17:19,070.070 INFO    ] Waiting 3.69 seconds before fallback handling...
[2026-06-12 10:17:23,127.127 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 10:17:23,128.128 INFO    ] Checking for system updates...
[2026-06-12 10:17:23,149.149 INFO    ] 200
[2026-06-12 10:17:23,150.150 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:17:23,180.180 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 10:17:23,182.182 INFO    ] No update needed
[2026-06-12 10:17:23,183.183 INFO    ] Checking for camera pi updates...
[2026-06-12 10:17:23,203.203 INFO    ] 200
[2026-06-12 10:17:23,205.205 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:17:23,228.228 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 10:17:23,266.266 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 10:17:23,268.268 INFO    ] No camera update needed
[2026-06-12 10:17:23,269.269 INFO    ] Script finished. Safe exiting...
[2026-06-12 10:17:23,270.270 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 10:17:23,273.273 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 10:17:23,276.276 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 10:17:25,314.314 INFO    ] ================================================
[2026-06-12 10:17:25,331.331 INFO    ] Launching Daemon at Fri Jun 12 10:17:25 IST 2026
[2026-06-12 10:17:25,342.342 INFO    ] ================================================
[2026-06-12 10:17:25,692.692 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 10:17:25
[2026-06-12 10:17:26,022.022 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 10:17:26,159.159 INFO    ] Initializing speech engine...
[2026-06-12 10:17:26,172.172 INFO    ] 2026-06-12 10:17:26
[2026-06-12 10:17:26,381.381 INFO    ] 2026-06-12 10:17:26
[2026-06-12 10:17:26,413.413 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 10:17:26,596.596 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 10:17:26,606.606 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 10:17:26,728.728 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 10:17:26,789.789 INFO    ] time= 12/06/2026 10:17:26
[2026-06-12 10:17:26,827.827 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 10:17:26,833.833 INFO    ] Checking for existing commands in stream...
[2026-06-12 10:17:26,929.929 INFO    ] No existing commands found in stream
[2026-06-12 10:17:31,938.938 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 10:17:31,942.942 INFO    ] Waiting 3.83 seconds before fallback handling...
[2026-06-12 10:17:36,183.183 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 10:17:36,184.184 INFO    ] Checking for system updates...
[2026-06-12 10:17:36,206.206 INFO    ] 200
[2026-06-12 10:17:36,208.208 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:17:36,240.240 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 10:17:36,241.241 INFO    ] No update needed
[2026-06-12 10:17:36,243.243 INFO    ] Checking for camera pi updates...
[2026-06-12 10:17:36,262.262 INFO    ] 200
[2026-06-12 10:17:36,264.264 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:17:36,288.288 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 10:17:36,334.334 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 10:17:36,336.336 INFO    ] No camera update needed
[2026-06-12 10:17:36,337.337 INFO    ] Script finished. Safe exiting...
[2026-06-12 10:17:36,338.338 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 10:17:36,342.342 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 10:17:36,345.345 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 10:17:38,384.384 INFO    ] ================================================
[2026-06-12 10:17:38,399.399 INFO    ] Launching Daemon at Fri Jun 12 10:17:38 IST 2026
[2026-06-12 10:17:38,410.410 INFO    ] ================================================
[2026-06-12 10:17:38,744.744 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 10:17:38
[2026-06-12 10:17:39,061.061 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 10:17:39,209.209 INFO    ] Initializing speech engine...
[2026-06-12 10:17:39,214.214 INFO    ] 2026-06-12 10:17:39
[2026-06-12 10:17:39,426.426 INFO    ] 2026-06-12 10:17:39
[2026-06-12 10:17:39,457.457 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 10:17:39,651.651 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 10:17:39,654.654 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 10:17:39,790.790 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 10:17:39,847.847 INFO    ] time= 12/06/2026 10:17:39
[2026-06-12 10:17:39,885.885 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 10:17:39,896.896 INFO    ] Checking for existing commands in stream...
[2026-06-12 10:17:39,971.971 INFO    ] No existing commands found in stream
[2026-06-12 10:17:44,980.980 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 10:17:44,983.983 INFO    ] Waiting 1.93 seconds before fallback handling...
[2026-06-12 10:17:47,311.311 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 10:17:47,312.312 INFO    ] Checking for system updates...
[2026-06-12 10:17:47,334.334 INFO    ] 200
[2026-06-12 10:17:47,335.335 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:17:47,368.368 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 10:17:47,369.369 INFO    ] No update needed
[2026-06-12 10:17:47,371.371 INFO    ] Checking for camera pi updates...
[2026-06-12 10:17:47,390.390 INFO    ] 200
[2026-06-12 10:17:47,392.392 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:17:47,416.416 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 10:17:47,454.454 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 10:17:47,455.455 INFO    ] No camera update needed
[2026-06-12 10:17:47,457.457 INFO    ] Script finished. Safe exiting...
[2026-06-12 10:17:47,458.458 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 10:17:47,461.461 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 10:17:47,464.464 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 10:17:49,503.503 INFO    ] ================================================
[2026-06-12 10:17:49,518.518 INFO    ] Launching Daemon at Fri Jun 12 10:17:49 IST 2026
[2026-06-12 10:17:49,529.529 INFO    ] ================================================
[2026-06-12 10:17:49,876.876 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 10:17:49
[2026-06-12 10:17:50,186.186 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 10:17:50,316.316 INFO    ] Initializing speech engine...
[2026-06-12 10:17:50,324.324 INFO    ] 2026-06-12 10:17:50
[2026-06-12 10:17:50,537.537 INFO    ] 2026-06-12 10:17:50
[2026-06-12 10:17:50,566.566 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 10:17:50,751.751 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 10:17:50,754.754 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 10:17:50,888.888 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 10:17:50,940.940 INFO    ] time= 12/06/2026 10:17:50
[2026-06-12 10:17:50,975.975 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 10:17:50,985.985 INFO    ] Checking for existing commands in stream...
[2026-06-12 10:17:51,057.057 INFO    ] No existing commands found in stream
[2026-06-12 10:17:56,067.067 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 10:17:56,076.076 INFO    ] Waiting 2.00 seconds before fallback handling...
[2026-06-12 10:17:58,453.453 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 10:17:58,454.454 INFO    ] Checking for system updates...
[2026-06-12 10:17:58,475.475 INFO    ] 200
[2026-06-12 10:17:58,476.476 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:17:58,509.509 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 10:17:58,511.511 INFO    ] No update needed
[2026-06-12 10:17:58,512.512 INFO    ] Checking for camera pi updates...
[2026-06-12 10:17:58,534.534 INFO    ] 200
[2026-06-12 10:17:58,535.535 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:17:58,559.559 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 10:17:58,602.602 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 10:17:58,604.604 INFO    ] No camera update needed
[2026-06-12 10:17:58,605.605 INFO    ] Script finished. Safe exiting...
[2026-06-12 10:17:58,606.606 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 10:17:58,609.609 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 10:17:58,612.612 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 10:18:00,651.651 INFO    ] ================================================
[2026-06-12 10:18:00,667.667 INFO    ] Launching Daemon at Fri Jun 12 10:18:00 IST 2026
[2026-06-12 10:18:00,678.678 INFO    ] ================================================
[2026-06-12 10:18:01,037.037 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 10:18:01
[2026-06-12 10:18:01,512.512 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 10:18:01,690.690 INFO    ] Initializing speech engine...
[2026-06-12 10:18:01,703.703 INFO    ] 2026-06-12 10:18:01
[2026-06-12 10:18:01,949.949 INFO    ] 2026-06-12 10:18:01
[2026-06-12 10:18:01,985.985 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 10:18:02,127.127 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 10:18:02,172.172 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 10:18:02,334.334 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 10:18:02,385.385 INFO    ] time= 12/06/2026 10:18:02
[2026-06-12 10:18:02,425.425 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 10:18:02,436.436 INFO    ] Checking for existing commands in stream...
[2026-06-12 10:18:02,506.506 INFO    ] No existing commands found in stream
[2026-06-12 10:18:07,517.517 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 10:18:07,519.519 INFO    ] Waiting 0.57 seconds before fallback handling...
[2026-06-12 10:18:08,422.422 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 10:18:08,423.423 INFO    ] Checking for system updates...
[2026-06-12 10:18:08,444.444 INFO    ] 200
[2026-06-12 10:18:08,445.445 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:18:08,475.475 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 10:18:08,477.477 INFO    ] No update needed
[2026-06-12 10:18:08,478.478 INFO    ] Checking for camera pi updates...
[2026-06-12 10:18:08,500.500 INFO    ] 200
[2026-06-12 10:18:08,501.501 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:18:08,525.525 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 10:18:08,559.559 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 10:18:08,561.561 INFO    ] No camera update needed
[2026-06-12 10:18:08,562.562 INFO    ] Script finished. Safe exiting...
[2026-06-12 10:18:08,563.563 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 10:18:08,566.566 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 10:18:08,569.569 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 10:18:10,608.608 INFO    ] ================================================
[2026-06-12 10:18:10,624.624 INFO    ] Launching Daemon at Fri Jun 12 10:18:10 IST 2026
[2026-06-12 10:18:10,635.635 INFO    ] ================================================
[2026-06-12 10:18:10,994.994 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 10:18:10
[2026-06-12 10:18:11,311.311 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 10:18:11,446.446 INFO    ] Initializing speech engine...
[2026-06-12 10:18:11,454.454 INFO    ] 2026-06-12 10:18:11
[2026-06-12 10:18:11,675.675 INFO    ] 2026-06-12 10:18:11
[2026-06-12 10:18:11,705.705 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 10:18:11,909.909 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 10:18:11,924.924 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 10:18:12,066.066 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 10:18:12,119.119 INFO    ] time= 12/06/2026 10:18:12
[2026-06-12 10:18:12,142.142 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 10:18:12,148.148 INFO    ] Checking for existing commands in stream...
[2026-06-12 10:18:12,219.219 INFO    ] No existing commands found in stream
[2026-06-12 10:18:17,228.228 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 10:18:17,231.231 INFO    ] Waiting 3.31 seconds before fallback handling...
[2026-06-12 10:18:20,869.869 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 10:18:20,871.871 INFO    ] Checking for system updates...
[2026-06-12 10:18:20,891.891 INFO    ] 200
[2026-06-12 10:18:20,893.893 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:18:20,924.924 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 10:18:20,926.926 INFO    ] No update needed
[2026-06-12 10:18:20,927.927 INFO    ] Checking for camera pi updates...
[2026-06-12 10:18:20,948.948 INFO    ] 200
[2026-06-12 10:18:20,949.949 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:18:20,972.972 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 10:18:21,012.012 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 10:18:21,013.013 INFO    ] No camera update needed
[2026-06-12 10:18:21,015.015 INFO    ] Script finished. Safe exiting...
[2026-06-12 10:18:21,016.016 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 10:18:21,019.019 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 10:18:21,022.022 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 10:18:23,061.061 INFO    ] ================================================
[2026-06-12 10:18:23,076.076 INFO    ] Launching Daemon at Fri Jun 12 10:18:23 IST 2026
[2026-06-12 10:18:23,087.087 INFO    ] ================================================
[2026-06-12 10:18:23,444.444 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 10:18:23
[2026-06-12 10:18:23,774.774 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 10:18:23,911.911 INFO    ] Initializing speech engine...
[2026-06-12 10:18:23,925.925 INFO    ] 2026-06-12 10:18:23
[2026-06-12 10:18:24,138.138 INFO    ] 2026-06-12 10:18:24
[2026-06-12 10:18:24,167.167 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 10:18:24,355.355 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 10:18:24,365.365 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 10:18:24,494.494 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 10:18:24,558.558 INFO    ] time= 12/06/2026 10:18:24
[2026-06-12 10:18:24,587.587 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 10:18:24,594.594 INFO    ] Checking for existing commands in stream...
[2026-06-12 10:18:24,662.662 INFO    ] No existing commands found in stream
[2026-06-12 10:18:29,676.676 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 10:18:29,680.680 INFO    ] Waiting 0.43 seconds before fallback handling...
[2026-06-12 10:18:30,460.460 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 10:18:30,462.462 INFO    ] Checking for system updates...
[2026-06-12 10:18:30,483.483 INFO    ] 200
[2026-06-12 10:18:30,484.484 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:18:30,514.514 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 10:18:30,516.516 INFO    ] No update needed
[2026-06-12 10:18:30,517.517 INFO    ] Checking for camera pi updates...
[2026-06-12 10:18:30,538.538 INFO    ] 200
[2026-06-12 10:18:30,539.539 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:18:30,567.567 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 10:18:30,605.605 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 10:18:30,606.606 INFO    ] No camera update needed
[2026-06-12 10:18:30,607.607 INFO    ] Script finished. Safe exiting...
[2026-06-12 10:18:30,609.609 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 10:18:30,612.612 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 10:18:30,615.615 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 10:18:32,648.648 INFO    ] ================================================
[2026-06-12 10:18:32,663.663 INFO    ] Launching Daemon at Fri Jun 12 10:18:32 IST 2026
[2026-06-12 10:18:32,674.674 INFO    ] ================================================
[2026-06-12 10:18:33,003.003 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 10:18:33
[2026-06-12 10:18:33,319.319 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 10:18:33,466.466 INFO    ] Initializing speech engine...
[2026-06-12 10:18:33,471.471 INFO    ] 2026-06-12 10:18:33
[2026-06-12 10:18:33,683.683 INFO    ] 2026-06-12 10:18:33
[2026-06-12 10:18:33,714.714 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 10:18:33,908.908 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 10:18:33,912.912 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 10:18:34,048.048 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 10:18:34,109.109 INFO    ] time= 12/06/2026 10:18:34
[2026-06-12 10:18:34,142.142 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 10:18:34,154.154 INFO    ] Checking for existing commands in stream...
[2026-06-12 10:18:34,230.230 INFO    ] No existing commands found in stream
[2026-06-12 10:18:39,239.239 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 10:18:39,242.242 INFO    ] Waiting 0.68 seconds before fallback handling...
[2026-06-12 10:18:40,309.309 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 10:18:40,311.311 INFO    ] Checking for system updates...
[2026-06-12 10:18:40,332.332 INFO    ] 200
[2026-06-12 10:18:40,334.334 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:18:40,365.365 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 10:18:40,367.367 INFO    ] No update needed
[2026-06-12 10:18:40,368.368 INFO    ] Checking for camera pi updates...
[2026-06-12 10:18:40,390.390 INFO    ] 200
[2026-06-12 10:18:40,392.392 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:18:40,415.415 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 10:18:40,456.456 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 10:18:40,458.458 INFO    ] No camera update needed
[2026-06-12 10:18:40,459.459 INFO    ] Script finished. Safe exiting...
[2026-06-12 10:18:40,461.461 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 10:18:40,464.464 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 10:18:40,467.467 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 10:18:42,506.506 INFO    ] ================================================
[2026-06-12 10:18:42,522.522 INFO    ] Launching Daemon at Fri Jun 12 10:18:42 IST 2026
[2026-06-12 10:18:42,532.532 INFO    ] ================================================
[2026-06-12 10:18:42,869.869 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 10:18:42
[2026-06-12 10:18:43,199.199 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 10:18:43,335.335 INFO    ] Initializing speech engine...
[2026-06-12 10:18:43,343.343 INFO    ] 2026-06-12 10:18:43
[2026-06-12 10:18:43,562.562 INFO    ] 2026-06-12 10:18:43
[2026-06-12 10:18:43,591.591 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 10:18:43,719.719 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 10:18:43,781.781 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 10:18:43,919.919 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 10:18:43,987.987 INFO    ] time= 12/06/2026 10:18:43
[2026-06-12 10:18:44,012.012 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 10:18:44,018.018 INFO    ] Checking for existing commands in stream...
[2026-06-12 10:18:44,085.085 INFO    ] No existing commands found in stream
[2026-06-12 10:18:49,114.114 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 10:18:49,117.117 INFO    ] Waiting 2.95 seconds before fallback handling...
[2026-06-12 10:18:52,460.460 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 10:18:52,462.462 INFO    ] Checking for system updates...
[2026-06-12 10:18:52,482.482 INFO    ] 200
[2026-06-12 10:18:52,484.484 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:18:52,514.514 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 10:18:52,516.516 INFO    ] No update needed
[2026-06-12 10:18:52,517.517 INFO    ] Checking for camera pi updates...
[2026-06-12 10:18:52,536.536 INFO    ] 200
[2026-06-12 10:18:52,538.538 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:18:52,562.562 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 10:18:52,607.607 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 10:18:52,608.608 INFO    ] No camera update needed
[2026-06-12 10:18:52,610.610 INFO    ] Script finished. Safe exiting...
[2026-06-12 10:18:52,611.611 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 10:18:52,614.614 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 10:18:52,617.617 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 10:18:54,657.657 INFO    ] ================================================
[2026-06-12 10:18:54,672.672 INFO    ] Launching Daemon at Fri Jun 12 10:18:54 IST 2026
[2026-06-12 10:18:54,682.682 INFO    ] ================================================
[2026-06-12 10:18:54,995.995 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 10:18:54
[2026-06-12 10:18:55,305.305 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 10:18:55,448.448 INFO    ] Initializing speech engine...
[2026-06-12 10:18:55,452.452 INFO    ] 2026-06-12 10:18:55
[2026-06-12 10:18:55,654.654 INFO    ] 2026-06-12 10:18:55
[2026-06-12 10:18:55,683.683 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 10:18:55,867.867 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 10:18:55,871.871 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 10:18:56,001.001 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 10:18:56,057.057 INFO    ] time= 12/06/2026 10:18:56
[2026-06-12 10:18:56,100.100 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 10:18:56,106.106 INFO    ] Checking for existing commands in stream...
[2026-06-12 10:18:56,213.213 INFO    ] No existing commands found in stream
[2026-06-12 10:19:01,224.224 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 10:19:01,227.227 INFO    ] Waiting 1.43 seconds before fallback handling...
[2026-06-12 10:19:02,943.943 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 10:19:02,945.945 INFO    ] Checking for system updates...
[2026-06-12 10:19:02,982.982 INFO    ] 200
[2026-06-12 10:19:02,984.984 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:19:03,042.042 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 10:19:03,044.044 INFO    ] No update needed
[2026-06-12 10:19:03,047.047 INFO    ] Checking for camera pi updates...
[2026-06-12 10:19:03,083.083 INFO    ] 200
[2026-06-12 10:19:03,085.085 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:19:03,116.116 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 10:19:03,156.156 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 10:19:03,157.157 INFO    ] No camera update needed
[2026-06-12 10:19:03,158.158 INFO    ] Script finished. Safe exiting...
[2026-06-12 10:19:03,159.159 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 10:19:03,162.162 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 10:19:03,165.165 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 10:19:05,204.204 INFO    ] ================================================
[2026-06-12 10:19:05,219.219 INFO    ] Launching Daemon at Fri Jun 12 10:19:05 IST 2026
[2026-06-12 10:19:05,230.230 INFO    ] ================================================
[2026-06-12 10:19:05,578.578 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 10:19:05
[2026-06-12 10:19:05,889.889 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 10:19:06,031.031 INFO    ] Initializing speech engine...
[2026-06-12 10:19:06,036.036 INFO    ] 2026-06-12 10:19:06
[2026-06-12 10:19:06,242.242 INFO    ] 2026-06-12 10:19:06
[2026-06-12 10:19:06,271.271 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 10:19:06,456.456 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 10:19:06,459.459 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 10:19:06,596.596 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 10:19:06,624.624 INFO    ] time= 12/06/2026 10:19:06
[2026-06-12 10:19:06,626.626 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 10:19:06,627.627 INFO    ] Checking for existing commands in stream...
[2026-06-12 10:19:06,685.685 INFO    ] No existing commands found in stream
[2026-06-12 10:19:11,694.694 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 10:19:11,696.696 INFO    ] Waiting 0.80 seconds before fallback handling...
[2026-06-12 10:19:12,846.846 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 10:19:12,848.848 INFO    ] Checking for system updates...
[2026-06-12 10:19:12,869.869 INFO    ] 200
[2026-06-12 10:19:12,870.870 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:19:12,900.900 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 10:19:12,902.902 INFO    ] No update needed
[2026-06-12 10:19:12,903.903 INFO    ] Checking for camera pi updates...
[2026-06-12 10:19:12,922.922 INFO    ] 200
[2026-06-12 10:19:12,924.924 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:19:12,947.947 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 10:19:13,088.088 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 10:19:13,089.089 INFO    ] No camera update needed
[2026-06-12 10:19:13,091.091 INFO    ] Script finished. Safe exiting...
[2026-06-12 10:19:13,092.092 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 10:19:13,095.095 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 10:19:13,097.097 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 10:19:15,136.136 INFO    ] ================================================
[2026-06-12 10:19:15,153.153 INFO    ] Launching Daemon at Fri Jun 12 10:19:15 IST 2026
[2026-06-12 10:19:15,164.164 INFO    ] ================================================
[2026-06-12 10:19:15,504.504 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 10:19:15
[2026-06-12 10:19:15,816.816 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 10:19:15,949.949 INFO    ] Initializing speech engine...
[2026-06-12 10:19:15,962.962 INFO    ] 2026-06-12 10:19:15
[2026-06-12 10:19:16,170.170 INFO    ] 2026-06-12 10:19:16
[2026-06-12 10:19:16,200.200 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 10:19:16,315.315 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 10:19:16,316.316 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 10:19:16,471.471 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 10:19:16,521.521 INFO    ] time= 12/06/2026 10:19:16
[2026-06-12 10:19:16,587.587 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 10:19:16,619.619 INFO    ] Checking for existing commands in stream...
[2026-06-12 10:19:16,715.715 INFO    ] No existing commands found in stream
[2026-06-12 10:19:21,729.729 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 10:19:21,732.732 INFO    ] Waiting 0.37 seconds before fallback handling...
[2026-06-12 10:19:22,456.456 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 10:19:22,457.457 INFO    ] Checking for system updates...
[2026-06-12 10:19:22,478.478 INFO    ] 200
[2026-06-12 10:19:22,480.480 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:19:22,511.511 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 10:19:22,513.513 INFO    ] No update needed
[2026-06-12 10:19:22,514.514 INFO    ] Checking for camera pi updates...
[2026-06-12 10:19:22,533.533 INFO    ] 200
[2026-06-12 10:19:22,535.535 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:19:22,558.558 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 10:19:22,592.592 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 10:19:22,594.594 INFO    ] No camera update needed
[2026-06-12 10:19:22,595.595 INFO    ] Script finished. Safe exiting...
[2026-06-12 10:19:22,596.596 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 10:19:22,599.599 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 10:19:22,602.602 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 10:19:24,642.642 INFO    ] ================================================
[2026-06-12 10:19:24,658.658 INFO    ] Launching Daemon at Fri Jun 12 10:19:24 IST 2026
[2026-06-12 10:19:24,675.675 INFO    ] ================================================
[2026-06-12 10:19:25,019.019 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 10:19:25
[2026-06-12 10:19:25,329.329 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 10:19:25,458.458 INFO    ] Initializing speech engine...
[2026-06-12 10:19:25,463.463 INFO    ] 2026-06-12 10:19:25
[2026-06-12 10:19:25,680.680 INFO    ] 2026-06-12 10:19:25
[2026-06-12 10:19:25,710.710 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 10:19:25,893.893 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 10:19:25,897.897 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 10:19:26,030.030 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 10:19:26,097.097 INFO    ] time= 12/06/2026 10:19:26
[2026-06-12 10:19:26,125.125 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 10:19:26,131.131 INFO    ] Checking for existing commands in stream...
[2026-06-12 10:19:26,198.198 INFO    ] No existing commands found in stream
[2026-06-12 10:19:31,207.207 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 10:19:31,210.210 INFO    ] Waiting 1.10 seconds before fallback handling...
[2026-06-12 10:19:32,645.645 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 10:19:32,646.646 INFO    ] Checking for system updates...
[2026-06-12 10:19:32,667.667 INFO    ] 200
[2026-06-12 10:19:32,669.669 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:19:32,701.701 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 10:19:32,703.703 INFO    ] No update needed
[2026-06-12 10:19:32,704.704 INFO    ] Checking for camera pi updates...
[2026-06-12 10:19:32,724.724 INFO    ] 200
[2026-06-12 10:19:32,725.725 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:19:32,748.748 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 10:19:32,780.780 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 10:19:32,782.782 INFO    ] No camera update needed
[2026-06-12 10:19:32,783.783 INFO    ] Script finished. Safe exiting...
[2026-06-12 10:19:32,784.784 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 10:19:32,787.787 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 10:19:32,790.790 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 10:19:34,828.828 INFO    ] ================================================
[2026-06-12 10:19:34,843.843 INFO    ] Launching Daemon at Fri Jun 12 10:19:34 IST 2026
[2026-06-12 10:19:34,854.854 INFO    ] ================================================
[2026-06-12 10:19:35,207.207 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 10:19:35
[2026-06-12 10:19:35,522.522 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 10:19:35,655.655 INFO    ] Initializing speech engine...
[2026-06-12 10:19:35,659.659 INFO    ] 2026-06-12 10:19:35
[2026-06-12 10:19:35,885.885 INFO    ] 2026-06-12 10:19:35
[2026-06-12 10:19:35,916.916 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 10:19:36,109.109 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 10:19:36,118.118 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 10:19:36,249.249 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 10:19:36,305.305 INFO    ] time= 12/06/2026 10:19:36
[2026-06-12 10:19:36,344.344 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 10:19:36,355.355 INFO    ] Checking for existing commands in stream...
[2026-06-12 10:19:36,429.429 INFO    ] No existing commands found in stream
[2026-06-12 10:19:41,440.440 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 10:19:41,443.443 INFO    ] Waiting 2.45 seconds before fallback handling...
[2026-06-12 10:19:44,253.253 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 10:19:44,254.254 INFO    ] Checking for system updates...
[2026-06-12 10:19:44,275.275 INFO    ] 200
[2026-06-12 10:19:44,276.276 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:19:44,307.307 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 10:19:44,308.308 INFO    ] No update needed
[2026-06-12 10:19:44,309.309 INFO    ] Checking for camera pi updates...
[2026-06-12 10:19:44,328.328 INFO    ] 200
[2026-06-12 10:19:44,329.329 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:19:44,355.355 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 10:19:44,376.376 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 10:19:44,377.377 INFO    ] No camera update needed
[2026-06-12 10:19:44,378.378 INFO    ] Script finished. Safe exiting...
[2026-06-12 10:19:44,380.380 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 10:19:44,383.383 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 10:19:44,385.385 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 10:19:46,426.426 INFO    ] ================================================
[2026-06-12 10:19:46,441.441 INFO    ] Launching Daemon at Fri Jun 12 10:19:46 IST 2026
[2026-06-12 10:19:46,452.452 INFO    ] ================================================
[2026-06-12 10:19:46,786.786 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 10:19:46
[2026-06-12 10:19:47,103.103 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 10:19:47,237.237 INFO    ] Initializing speech engine...
[2026-06-12 10:19:47,242.242 INFO    ] 2026-06-12 10:19:47
[2026-06-12 10:19:47,468.468 INFO    ] 2026-06-12 10:19:47
[2026-06-12 10:19:47,498.498 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 10:19:47,693.693 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 10:19:47,697.697 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 10:19:47,833.833 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 10:19:47,890.890 INFO    ] time= 12/06/2026 10:19:47
[2026-06-12 10:19:47,928.928 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 10:19:47,939.939 INFO    ] Checking for existing commands in stream...
[2026-06-12 10:19:48,013.013 INFO    ] No existing commands found in stream
[2026-06-12 10:19:53,023.023 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 10:19:53,026.026 INFO    ] Waiting 0.72 seconds before fallback handling...
[2026-06-12 10:19:54,123.123 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 10:19:54,125.125 INFO    ] Checking for system updates...
[2026-06-12 10:19:54,146.146 INFO    ] 200
[2026-06-12 10:19:54,147.147 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:19:54,177.177 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 10:19:54,179.179 INFO    ] No update needed
[2026-06-12 10:19:54,180.180 INFO    ] Checking for camera pi updates...
[2026-06-12 10:19:54,201.201 INFO    ] 200
[2026-06-12 10:19:54,202.202 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:19:54,229.229 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 10:19:54,265.265 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 10:19:54,266.266 INFO    ] No camera update needed
[2026-06-12 10:19:54,268.268 INFO    ] Script finished. Safe exiting...
[2026-06-12 10:19:54,269.269 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 10:19:54,272.272 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 10:19:54,275.275 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 10:19:56,305.305 INFO    ] ================================================
[2026-06-12 10:19:56,314.314 INFO    ] Launching Daemon at Fri Jun 12 10:19:56 IST 2026
[2026-06-12 10:19:56,320.320 INFO    ] ================================================
[2026-06-12 10:19:56,669.669 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 10:19:56
[2026-06-12 10:19:56,982.982 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 10:19:57,114.114 INFO    ] Initializing speech engine...
[2026-06-12 10:19:57,126.126 INFO    ] 2026-06-12 10:19:57
[2026-06-12 10:19:57,335.335 INFO    ] 2026-06-12 10:19:57
[2026-06-12 10:19:57,365.365 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 10:19:57,551.551 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 10:19:57,559.559 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 10:19:57,687.687 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 10:19:57,750.750 INFO    ] time= 12/06/2026 10:19:57
[2026-06-12 10:19:57,783.783 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 10:19:57,790.790 INFO    ] Checking for existing commands in stream...
[2026-06-12 10:19:57,906.906 INFO    ] No existing commands found in stream
[2026-06-12 10:20:02,915.915 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 10:20:02,917.917 INFO    ] Waiting 2.52 seconds before fallback handling...
[2026-06-12 10:20:07,649.649 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 10:20:07,651.651 INFO    ] Checking for system updates...
[2026-06-12 10:20:07,687.687 INFO    ] 200
[2026-06-12 10:20:07,690.690 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:20:07,722.722 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 10:20:07,723.723 INFO    ] No update needed
[2026-06-12 10:20:07,724.724 INFO    ] Checking for camera pi updates...
[2026-06-12 10:20:07,747.747 INFO    ] 200
[2026-06-12 10:20:07,748.748 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:20:07,771.771 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 10:20:07,817.817 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 10:20:07,818.818 INFO    ] No camera update needed
[2026-06-12 10:20:07,820.820 INFO    ] Script finished. Safe exiting...
[2026-06-12 10:20:07,821.821 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 10:20:07,824.824 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 10:20:07,827.827 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 10:20:09,859.859 INFO    ] ================================================
[2026-06-12 10:20:09,868.868 INFO    ] Launching Daemon at Fri Jun 12 10:20:09 IST 2026
[2026-06-12 10:20:09,874.874 INFO    ] ================================================
[2026-06-12 10:20:10,198.198 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 10:20:10
[2026-06-12 10:20:10,523.523 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 10:20:10,659.659 INFO    ] Initializing speech engine...
[2026-06-12 10:20:10,663.663 INFO    ] 2026-06-12 10:20:10
[2026-06-12 10:20:10,901.901 INFO    ] 2026-06-12 10:20:10
[2026-06-12 10:20:10,933.933 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 10:20:11,072.072 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 10:20:11,134.134 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 10:20:11,352.352 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 10:20:11,377.377 INFO    ] time= 12/06/2026 10:20:11
[2026-06-12 10:20:11,383.383 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 10:20:11,385.385 INFO    ] Checking for existing commands in stream...
[2026-06-12 10:20:11,451.451 INFO    ] No existing commands found in stream
[2026-06-12 10:20:16,461.461 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 10:20:16,464.464 INFO    ] Waiting 3.65 seconds before fallback handling...
[2026-06-12 10:20:20,466.466 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 10:20:20,467.467 INFO    ] Checking for system updates...
[2026-06-12 10:20:20,489.489 INFO    ] 200
[2026-06-12 10:20:20,490.490 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:20:20,522.522 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 10:20:20,524.524 INFO    ] No update needed
[2026-06-12 10:20:20,525.525 INFO    ] Checking for camera pi updates...
[2026-06-12 10:20:20,545.545 INFO    ] 200
[2026-06-12 10:20:20,546.546 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:20:20,569.569 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 10:20:20,609.609 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 10:20:20,611.611 INFO    ] No camera update needed
[2026-06-12 10:20:20,612.612 INFO    ] Script finished. Safe exiting...
[2026-06-12 10:20:20,613.613 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 10:20:20,616.616 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 10:20:20,619.619 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 10:20:22,657.657 INFO    ] ================================================
[2026-06-12 10:20:22,672.672 INFO    ] Launching Daemon at Fri Jun 12 10:20:22 IST 2026
[2026-06-12 10:20:22,682.682 INFO    ] ================================================
[2026-06-12 10:20:23,029.029 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 10:20:23
[2026-06-12 10:20:23,341.341 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 10:20:23,472.472 INFO    ] Initializing speech engine...
[2026-06-12 10:20:23,480.480 INFO    ] 2026-06-12 10:20:23
[2026-06-12 10:20:23,696.696 INFO    ] 2026-06-12 10:20:23
[2026-06-12 10:20:23,724.724 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 10:20:23,848.848 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 10:20:23,912.912 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 10:20:24,048.048 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 10:20:24,111.111 INFO    ] time= 12/06/2026 10:20:24
[2026-06-12 10:20:24,144.144 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 10:20:24,146.146 INFO    ] Checking for existing commands in stream...
[2026-06-12 10:20:24,217.217 INFO    ] No existing commands found in stream
[2026-06-12 10:20:29,227.227 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 10:20:29,230.230 INFO    ] Waiting 1.46 seconds before fallback handling...
[2026-06-12 10:20:31,086.086 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 10:20:31,088.088 INFO    ] Checking for system updates...
[2026-06-12 10:20:31,125.125 INFO    ] 200
[2026-06-12 10:20:31,127.127 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:20:31,181.181 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 10:20:31,183.183 INFO    ] No update needed
[2026-06-12 10:20:31,186.186 INFO    ] Checking for camera pi updates...
[2026-06-12 10:20:31,220.220 INFO    ] 200
[2026-06-12 10:20:31,222.222 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:20:31,245.245 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 10:20:31,283.283 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 10:20:31,285.285 INFO    ] No camera update needed
[2026-06-12 10:20:31,286.286 INFO    ] Script finished. Safe exiting...
[2026-06-12 10:20:31,287.287 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 10:20:31,291.291 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 10:20:31,293.293 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 10:20:33,326.326 INFO    ] ================================================
[2026-06-12 10:20:33,341.341 INFO    ] Launching Daemon at Fri Jun 12 10:20:33 IST 2026
[2026-06-12 10:20:33,352.352 INFO    ] ================================================
[2026-06-12 10:20:33,712.712 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 10:20:33
[2026-06-12 10:20:34,024.024 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 10:20:34,167.167 INFO    ] Initializing speech engine...
[2026-06-12 10:20:34,172.172 INFO    ] 2026-06-12 10:20:34
[2026-06-12 10:20:34,375.375 INFO    ] 2026-06-12 10:20:34
[2026-06-12 10:20:34,404.404 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 10:20:34,525.525 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 10:20:34,587.587 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 10:20:34,724.724 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 10:20:34,787.787 INFO    ] time= 12/06/2026 10:20:34
[2026-06-12 10:20:34,813.813 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 10:20:34,820.820 INFO    ] Checking for existing commands in stream...
[2026-06-12 10:20:34,886.886 INFO    ] No existing commands found in stream
[2026-06-12 10:20:39,895.895 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 10:20:39,897.897 INFO    ] Waiting 2.53 seconds before fallback handling...
[2026-06-12 10:20:42,790.790 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 10:20:42,792.792 INFO    ] Checking for system updates...
[2026-06-12 10:20:42,813.813 INFO    ] 200
[2026-06-12 10:20:42,814.814 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:20:42,845.845 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 10:20:42,846.846 INFO    ] No update needed
[2026-06-12 10:20:42,848.848 INFO    ] Checking for camera pi updates...
[2026-06-12 10:20:42,867.867 INFO    ] 200
[2026-06-12 10:20:42,869.869 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:20:42,892.892 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 10:20:42,936.936 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 10:20:42,937.937 INFO    ] No camera update needed
[2026-06-12 10:20:42,938.938 INFO    ] Script finished. Safe exiting...
[2026-06-12 10:20:42,940.940 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 10:20:42,943.943 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 10:20:42,945.945 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 10:20:44,987.987 INFO    ] ================================================
[2026-06-12 10:20:45,002.002 INFO    ] Launching Daemon at Fri Jun 12 10:20:44 IST 2026
[2026-06-12 10:20:45,013.013 INFO    ] ================================================
[2026-06-12 10:20:45,372.372 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 10:20:45
[2026-06-12 10:20:45,696.696 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 10:20:45,833.833 INFO    ] Initializing speech engine...
[2026-06-12 10:20:45,842.842 INFO    ] 2026-06-12 10:20:45
[2026-06-12 10:20:46,045.045 INFO    ] 2026-06-12 10:20:46
[2026-06-12 10:20:46,074.074 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 10:20:46,256.256 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 10:20:46,266.266 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 10:20:46,392.392 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 10:20:46,461.461 INFO    ] time= 12/06/2026 10:20:46
[2026-06-12 10:20:46,487.487 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 10:20:46,493.493 INFO    ] Checking for existing commands in stream...
[2026-06-12 10:20:46,560.560 INFO    ] No existing commands found in stream
[2026-06-12 10:20:51,574.574 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 10:20:51,577.577 INFO    ] Waiting 2.69 seconds before fallback handling...
[2026-06-12 10:20:54,617.617 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 10:20:54,618.618 INFO    ] Checking for system updates...
[2026-06-12 10:20:54,638.638 INFO    ] 200
[2026-06-12 10:20:54,640.640 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:20:54,672.672 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 10:20:54,674.674 INFO    ] No update needed
[2026-06-12 10:20:54,675.675 INFO    ] Checking for camera pi updates...
[2026-06-12 10:20:54,694.694 INFO    ] 200
[2026-06-12 10:20:54,696.696 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:20:54,719.719 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 10:20:54,754.754 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 10:20:54,756.756 INFO    ] No camera update needed
[2026-06-12 10:20:54,757.757 INFO    ] Script finished. Safe exiting...
[2026-06-12 10:20:54,758.758 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 10:20:54,761.761 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 10:20:54,764.764 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 10:20:56,803.803 INFO    ] ================================================
[2026-06-12 10:20:56,819.819 INFO    ] Launching Daemon at Fri Jun 12 10:20:56 IST 2026
[2026-06-12 10:20:56,829.829 INFO    ] ================================================
[2026-06-12 10:20:57,185.185 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 10:20:57
[2026-06-12 10:20:57,499.499 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 10:20:57,631.631 INFO    ] Initializing speech engine...
[2026-06-12 10:20:57,636.636 INFO    ] 2026-06-12 10:20:57
[2026-06-12 10:20:57,862.862 INFO    ] 2026-06-12 10:20:57
[2026-06-12 10:20:57,893.893 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 10:20:58,023.023 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 10:20:58,081.081 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 10:20:58,229.229 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 10:20:58,291.291 INFO    ] time= 12/06/2026 10:20:58
[2026-06-12 10:20:58,330.330 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 10:20:58,336.336 INFO    ] Checking for existing commands in stream...
[2026-06-12 10:20:58,412.412 INFO    ] No existing commands found in stream
[2026-06-12 10:21:03,421.421 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 10:21:03,424.424 INFO    ] Waiting 1.48 seconds before fallback handling...
[2026-06-12 10:21:05,281.281 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 10:21:05,283.283 INFO    ] Checking for system updates...
[2026-06-12 10:21:05,304.304 INFO    ] 200
[2026-06-12 10:21:05,305.305 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:21:05,338.338 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 10:21:05,339.339 INFO    ] No update needed
[2026-06-12 10:21:05,341.341 INFO    ] Checking for camera pi updates...
[2026-06-12 10:21:05,360.360 INFO    ] 200
[2026-06-12 10:21:05,361.361 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:21:05,385.385 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 10:21:05,418.418 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 10:21:05,420.420 INFO    ] No camera update needed
[2026-06-12 10:21:05,421.421 INFO    ] Script finished. Safe exiting...
[2026-06-12 10:21:05,422.422 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 10:21:05,425.425 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 10:21:05,428.428 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 10:21:07,467.467 INFO    ] ================================================
[2026-06-12 10:21:07,482.482 INFO    ] Launching Daemon at Fri Jun 12 10:21:07 IST 2026
[2026-06-12 10:21:07,493.493 INFO    ] ================================================
[2026-06-12 10:21:07,832.832 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 10:21:07
[2026-06-12 10:21:08,147.147 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 10:21:08,276.276 INFO    ] Initializing speech engine...
[2026-06-12 10:21:08,281.281 INFO    ] 2026-06-12 10:21:08
[2026-06-12 10:21:08,499.499 INFO    ] 2026-06-12 10:21:08
[2026-06-12 10:21:08,527.527 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 10:21:08,651.651 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 10:21:08,714.714 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 10:21:08,854.854 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 10:21:08,922.922 INFO    ] time= 12/06/2026 10:21:08
[2026-06-12 10:21:08,947.947 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 10:21:08,953.953 INFO    ] Checking for existing commands in stream...
[2026-06-12 10:21:09,020.020 INFO    ] No existing commands found in stream
[2026-06-12 10:21:14,030.030 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 10:21:14,033.033 INFO    ] Waiting 2.20 seconds before fallback handling...
[2026-06-12 10:21:16,601.601 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 10:21:16,604.604 INFO    ] Checking for system updates...
[2026-06-12 10:21:16,642.642 INFO    ] 200
[2026-06-12 10:21:16,645.645 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:21:16,702.702 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 10:21:16,704.704 INFO    ] No update needed
[2026-06-12 10:21:16,705.705 INFO    ] Checking for camera pi updates...
[2026-06-12 10:21:16,725.725 INFO    ] 200
[2026-06-12 10:21:16,727.727 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:21:16,758.758 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 10:21:16,904.904 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 10:21:16,906.906 INFO    ] No camera update needed
[2026-06-12 10:21:16,907.907 INFO    ] Script finished. Safe exiting...
[2026-06-12 10:21:16,909.909 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 10:21:16,912.912 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 10:21:16,915.915 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 10:21:18,956.956 INFO    ] ================================================
[2026-06-12 10:21:18,971.971 INFO    ] Launching Daemon at Fri Jun 12 10:21:18 IST 2026
[2026-06-12 10:21:18,982.982 INFO    ] ================================================
[2026-06-12 10:21:19,337.337 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 10:21:19
[2026-06-12 10:21:19,657.657 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 10:21:19,797.797 INFO    ] Initializing speech engine...
[2026-06-12 10:21:19,807.807 INFO    ] 2026-06-12 10:21:19
[2026-06-12 10:21:20,013.013 INFO    ] 2026-06-12 10:21:19
[2026-06-12 10:21:20,041.041 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 10:21:20,165.165 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 10:21:20,218.218 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 10:21:20,364.364 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 10:21:20,426.426 INFO    ] time= 12/06/2026 10:21:20
[2026-06-12 10:21:20,459.459 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 10:21:20,466.466 INFO    ] Checking for existing commands in stream...
[2026-06-12 10:21:20,532.532 INFO    ] No existing commands found in stream
[2026-06-12 10:21:25,543.543 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 10:21:25,546.546 INFO    ] Waiting 0.94 seconds before fallback handling...
[2026-06-12 10:21:27,214.214 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 10:21:27,215.215 INFO    ] Checking for system updates...
[2026-06-12 10:21:27,236.236 INFO    ] 200
[2026-06-12 10:21:27,237.237 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:21:27,268.268 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 10:21:27,270.270 INFO    ] No update needed
[2026-06-12 10:21:27,271.271 INFO    ] Checking for camera pi updates...
[2026-06-12 10:21:27,293.293 INFO    ] 200
[2026-06-12 10:21:27,295.295 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:21:27,322.322 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 10:21:27,359.359 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 10:21:27,361.361 INFO    ] No camera update needed
[2026-06-12 10:21:27,362.362 INFO    ] Script finished. Safe exiting...
[2026-06-12 10:21:27,363.363 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 10:21:27,366.366 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 10:21:27,369.369 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 10:21:29,409.409 INFO    ] ================================================
[2026-06-12 10:21:29,425.425 INFO    ] Launching Daemon at Fri Jun 12 10:21:29 IST 2026
[2026-06-12 10:21:29,437.437 INFO    ] ================================================
[2026-06-12 10:21:29,765.765 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 10:21:29
[2026-06-12 10:21:30,084.084 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 10:21:30,217.217 INFO    ] Initializing speech engine...
[2026-06-12 10:21:30,230.230 INFO    ] 2026-06-12 10:21:30
[2026-06-12 10:21:30,439.439 INFO    ] 2026-06-12 10:21:30
[2026-06-12 10:21:30,467.467 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 10:21:30,652.652 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 10:21:30,661.661 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 10:21:30,783.783 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 10:21:30,844.844 INFO    ] time= 12/06/2026 10:21:30
[2026-06-12 10:21:30,882.882 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 10:21:30,884.884 INFO    ] Checking for existing commands in stream...
[2026-06-12 10:21:30,979.979 INFO    ] No existing commands found in stream
[2026-06-12 10:21:35,993.993 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 10:21:35,996.996 INFO    ] Waiting 1.12 seconds before fallback handling...
[2026-06-12 10:21:37,479.479 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 10:21:37,480.480 INFO    ] Checking for system updates...
[2026-06-12 10:21:37,501.501 INFO    ] 200
[2026-06-12 10:21:37,503.503 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:21:37,535.535 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 10:21:37,537.537 INFO    ] No update needed
[2026-06-12 10:21:37,538.538 INFO    ] Checking for camera pi updates...
[2026-06-12 10:21:37,557.557 INFO    ] 200
[2026-06-12 10:21:37,558.558 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:21:37,583.583 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 10:21:37,628.628 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 10:21:37,629.629 INFO    ] No camera update needed
[2026-06-12 10:21:37,631.631 INFO    ] Script finished. Safe exiting...
[2026-06-12 10:21:37,632.632 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 10:21:37,635.635 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 10:21:37,638.638 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 10:21:39,676.676 INFO    ] ================================================
[2026-06-12 10:21:39,693.693 INFO    ] Launching Daemon at Fri Jun 12 10:21:39 IST 2026
[2026-06-12 10:21:39,704.704 INFO    ] ================================================
[2026-06-12 10:21:40,060.060 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 10:21:40
[2026-06-12 10:21:40,377.377 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 10:21:40,510.510 INFO    ] Initializing speech engine...
[2026-06-12 10:21:40,523.523 INFO    ] 2026-06-12 10:21:40
[2026-06-12 10:21:40,730.730 INFO    ] 2026-06-12 10:21:40
[2026-06-12 10:21:40,758.758 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 10:21:40,940.940 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 10:21:40,944.944 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 10:21:41,079.079 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 10:21:41,145.145 INFO    ] time= 12/06/2026 10:21:41
[2026-06-12 10:21:41,170.170 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 10:21:41,176.176 INFO    ] Checking for existing commands in stream...
[2026-06-12 10:21:41,243.243 INFO    ] No existing commands found in stream
[2026-06-12 10:21:46,257.257 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 10:21:46,260.260 INFO    ] Waiting 3.56 seconds before fallback handling...
[2026-06-12 10:21:50,153.153 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 10:21:50,155.155 INFO    ] Checking for system updates...
[2026-06-12 10:21:50,176.176 INFO    ] 200
[2026-06-12 10:21:50,178.178 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:21:50,209.209 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 10:21:50,211.211 INFO    ] No update needed
[2026-06-12 10:21:50,212.212 INFO    ] Checking for camera pi updates...
[2026-06-12 10:21:50,232.232 INFO    ] 200
[2026-06-12 10:21:50,233.233 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:21:50,257.257 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 10:21:50,297.297 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 10:21:50,298.298 INFO    ] No camera update needed
[2026-06-12 10:21:50,300.300 INFO    ] Script finished. Safe exiting...
[2026-06-12 10:21:50,301.301 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 10:21:50,305.305 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 10:21:50,307.307 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 10:21:52,348.348 INFO    ] ================================================
[2026-06-12 10:21:52,364.364 INFO    ] Launching Daemon at Fri Jun 12 10:21:52 IST 2026
[2026-06-12 10:21:52,375.375 INFO    ] ================================================
[2026-06-12 10:21:52,699.699 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 10:21:52
[2026-06-12 10:21:53,012.012 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 10:21:53,144.144 INFO    ] Initializing speech engine...
[2026-06-12 10:21:53,152.152 INFO    ] 2026-06-12 10:21:53
[2026-06-12 10:21:53,366.366 INFO    ] 2026-06-12 10:21:53
[2026-06-12 10:21:53,396.396 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 10:21:53,580.580 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 10:21:53,584.584 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 10:21:53,717.717 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 10:21:53,780.780 INFO    ] time= 12/06/2026 10:21:53
[2026-06-12 10:21:53,813.813 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 10:21:53,819.819 INFO    ] Checking for existing commands in stream...
[2026-06-12 10:21:53,885.885 INFO    ] No existing commands found in stream
[2026-06-12 10:21:58,895.895 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 10:21:58,898.898 INFO    ] Waiting 2.68 seconds before fallback handling...
[2026-06-12 10:22:01,914.914 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 10:22:01,916.916 INFO    ] Checking for system updates...
[2026-06-12 10:22:01,955.955 INFO    ] 200
[2026-06-12 10:22:01,957.957 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:22:01,997.997 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 10:22:01,999.999 INFO    ] No update needed
[2026-06-12 10:22:02,001.001 INFO    ] Checking for camera pi updates...
[2026-06-12 10:22:02,027.027 INFO    ] 200
[2026-06-12 10:22:02,028.028 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:22:02,060.060 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 10:22:02,084.084 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 10:22:02,086.086 INFO    ] No camera update needed
[2026-06-12 10:22:02,088.088 INFO    ] Script finished. Safe exiting...
[2026-06-12 10:22:02,092.092 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 10:22:02,096.096 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 10:22:02,101.101 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 10:22:04,143.143 INFO    ] ================================================
[2026-06-12 10:22:04,159.159 INFO    ] Launching Daemon at Fri Jun 12 10:22:04 IST 2026
[2026-06-12 10:22:04,170.170 INFO    ] ================================================
[2026-06-12 10:22:04,533.533 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 10:22:04
[2026-06-12 10:22:04,852.852 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 10:22:04,986.986 INFO    ] Initializing speech engine...
[2026-06-12 10:22:04,990.990 INFO    ] 2026-06-12 10:22:04
[2026-06-12 10:22:05,222.222 INFO    ] 2026-06-12 10:22:05
[2026-06-12 10:22:05,252.252 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 10:22:05,442.442 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 10:22:05,461.461 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 10:22:05,569.569 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 10:22:05,599.599 INFO    ] time= 12/06/2026 10:22:05
[2026-06-12 10:22:05,660.660 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 10:22:05,694.694 INFO    ] Checking for existing commands in stream...
[2026-06-12 10:22:05,768.768 INFO    ] Found 1 existing command(s) in stream
[2026-06-12 10:22:05,771.771 INFO    ] Checking historical command: ID=1781239922727-0
[2026-06-12 10:22:05,796.796 INFO    ] process_and_cleanup_command: msg_id=1781239922727-0
[2026-06-12 10:22:05,798.798 INFO    ] is_command_expired: timestamp=2026-06-12T04:52:02.757Z, expiry=30s
[2026-06-12 10:22:05,907.907 INFO    ] Command removed from stream: 1781239922727-0. returning for processing...
[2026-06-12 10:22:05,910.910 INFO    ] ***** get_valid_command
[2026-06-12 10:22:05,913.913 INFO    ] {'source': 'webapp', 'data': '{"request_id":"start-order-1781239922757-0y82ltkon","orderId":"TM09202301260612102107160","is_vending":false}', 'timeout': '10', 'command': 'start-order', 'timestamp': '2026-06-12T04:52:02.757Z'}
[2026-06-12 10:22:05,918.918 INFO    ] ***** Parsed command data: {'orderId': 'TM09202301260612102107160', 'request_id': 'start-order-1781239922757-0y82ltkon', 'is_vending': False}
[2026-06-12 10:22:05,921.921 INFO    ] Handling start order...
[2026-06-12 10:22:05,924.924 INFO    ] handle_start_order_command
[2026-06-12 10:22:05,931.931 INFO    ] _send_start_order_success: request_id=start-order-1781239922757-0y82ltkon, order_id=TM09202301260612102107160
[2026-06-12 10:22:05,934.934 INFO    ] [_send_start_order_success] Adding message to stream: machine:TM09202301
[2026-06-12 10:22:05,989.989 INFO    ] [_send_start_order_success] Message added to stream with ID: 1781239926138-0
[2026-06-12 10:22:05,991.991 INFO    ] ✅ Start-order command succeeded - order locked, waiting for process-order command
[2026-06-12 10:22:05,994.994 INFO    ] Checking for system updates...
[2026-06-12 10:22:06,024.024 INFO    ] 200
[2026-06-12 10:22:06,028.028 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:22:06,061.061 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 10:22:06,063.063 INFO    ] No update needed
[2026-06-12 10:22:06,065.065 INFO    ] Checking for camera pi updates...
[2026-06-12 10:22:06,132.132 INFO    ] 200
[2026-06-12 10:22:06,135.135 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:22:06,170.170 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 10:22:06,269.269 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 10:22:06,272.272 INFO    ] No camera update needed
[2026-06-12 10:22:06,275.275 INFO    ] Script finished. Safe exiting...
[2026-06-12 10:22:06,279.279 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 10:22:06,286.286 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 10:22:06,292.292 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-06-12 10:22:06,298.298 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 10:22:08,341.341 INFO    ] ================================================
[2026-06-12 10:22:08,356.356 INFO    ] Launching Daemon at Fri Jun 12 10:22:08 IST 2026
[2026-06-12 10:22:08,368.368 INFO    ] ================================================
[2026-06-12 10:22:08,720.720 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 10:22:08
[2026-06-12 10:22:09,033.033 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 10:22:09,168.168 INFO    ] Initializing speech engine...
[2026-06-12 10:22:09,172.172 INFO    ] 2026-06-12 10:22:09
[2026-06-12 10:22:09,402.402 INFO    ] 2026-06-12 10:22:09
[2026-06-12 10:22:09,433.433 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 10:22:09,606.606 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 10:22:09,634.634 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 10:22:09,778.778 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 10:22:09,840.840 INFO    ] time= 12/06/2026 10:22:09
[2026-06-12 10:22:09,875.875 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 10:22:09,881.881 INFO    ] Checking for existing commands in stream...
[2026-06-12 10:22:09,958.958 INFO    ] Found 2 existing command(s) in stream
[2026-06-12 10:22:09,961.961 INFO    ] Checking historical command: ID=1781239926138-0
[2026-06-12 10:22:09,963.963 INFO    ] process_and_cleanup_command: msg_id=1781239926138-0
[2026-06-12 10:22:09,990.990 INFO    ] is_command_expired: timestamp=2026-06-12T04:52:05.932623Z, expiry=30s
[2026-06-12 10:22:10,107.107 INFO    ] Command removed from stream: 1781239926138-0. returning for processing...
[2026-06-12 10:22:10,111.111 INFO    ] ***** get_valid_command
[2026-06-12 10:22:10,113.113 INFO    ] {'message': 'start-order success', 'message_type': 'command_response', 'imei': 'TM09202301', 'metadata_request_id': 'start-order-1781239922757-0y82ltkon', 'timestamp': '2026-06-12T04:52:05.932623Z', 'metadata_order_id': 'TM09202301260612102107160', 'status': 'success'}
[2026-06-12 10:22:10,118.118 INFO    ] Checking historical command: ID=1781239929267-0
[2026-06-12 10:22:10,124.124 INFO    ] process_and_cleanup_command: msg_id=1781239929267-0
[2026-06-12 10:22:10,127.127 INFO    ] is_command_expired: timestamp=2026-06-12T04:52:09.315Z, expiry=30s
[2026-06-12 10:22:10,185.185 INFO    ] Command removed from stream: 1781239929267-0. returning for processing...
[2026-06-12 10:22:10,188.188 INFO    ] ***** get_valid_command
[2026-06-12 10:22:10,191.191 INFO    ] {'data': '{"request_id":"process-order-1781239929315-owhnpleyr","orderId":"TM09202301260612102107160","is_vending":false,"accessCode":"20218266"}', 'timestamp': '2026-06-12T04:52:09.315Z', 'timeout': '60', 'command': 'process-order', 'source': 'webapp'}
[2026-06-12 10:22:10,195.195 INFO    ] ***** Parsed command data: {'accessCode': '20218266', 'orderId': 'TM09202301260612102107160', 'is_vending': False, 'request_id': 'process-order-1781239929315-owhnpleyr'}
[2026-06-12 10:22:10,198.198 INFO    ] Handling process order...
[2026-06-12 10:22:10,201.201 INFO    ] Processing process-order command...
[2026-06-12 10:22:10,204.204 INFO    ] 🔍 Lock file Order ID: TM09202301260612102107160, TS: 2026-06-12 10:22:05
[2026-06-12 10:22:10,214.214 INFO    ] ✅ Order lock valid for TM09202301260612102107160
[2026-06-12 10:22:10,218.218 INFO    ] Received access code in process-order, skipping PHP API call
[2026-06-12 10:22:10,223.223 INFO    ] processing access code 20218266 for order TM09202301260612102107160
[2026-06-12 10:22:10,228.228 INFO    ] 🔍 Lock file Order ID: TM09202301260612102107160, TS: 2026-06-12 10:22:05
[2026-06-12 10:22:10,233.233 INFO    ] ✅ Order lock valid for TM09202301260612102107160
[2026-06-12 10:22:10,237.237 INFO    ] 2026-06-12 10:22:10
[2026-06-12 10:22:10,266.266 INFO    ] 200
[2026-06-12 10:22:10,270.270 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:22:10,275.275 INFO    ] 20218266
[2026-06-12 10:22:10,278.278 INFO    ] 2026-06-12 10:22:10
[2026-06-12 10:22:10,282.282 INFO    ] session id :555081568
[2026-06-12 10:22:10,286.286 INFO    ] http://localhost:5000/v2/getOrderByAccessCode?access_code=20218266&imei=TM09202301&session_id=555081568
[2026-06-12 10:22:11,005.005 INFO    ] 200
[2026-06-12 10:22:11,038.038 INFO    ] {"rstatus": true, "msg": "Order Data", "status": true, "data": {"mobile": "8082591218", "order_id": "TM09202301260612102107160", "bill_amount": "20", "invoice_bill": "20", "access_code": "20218266", "proposed_sku_json": [{"door_id": "1", "name": "Max protein 7 grain Protein Gochujang 30gm", "tray_id": "24", "unit_price": 20, "offer_id": "", "qty": 1, "image_url": "https://images.tinymart.in/product/4500693-9518.webp", "offer_desc": "", "sku_total": 20, "mrp": "20", "skuid": "4500693"}]}}
[2026-06-12 10:22:11,047.047 INFO    ] 20
[2026-06-12 10:22:11,053.053 INFO    ] TM09202301260612102107160
[2026-06-12 10:22:11,063.063 INFO    ] 8082591218
[2026-06-12 10:22:11,067.067 INFO    ] 2026-06-12 10:22:11
[2026-06-12 10:22:11,072.072 INFO    ] Door Opening for user mobile ending with  one two one eight 
[2026-06-12 10:22:11,076.076 INFO    ] Door Opening for user mobile ending with  one two one eight 
[2026-06-12 10:22:11,078.078 INFO    ] f7efeceb531fd0a74888c86c09201975
[2026-06-12 10:22:11,079.079 INFO    ] 2026-06-12 10:22:11
[2026-06-12 10:22:11,081.081 INFO    ] creating audio file
[2026-06-12 10:22:11,117.117 INFO    ] Calling gTTS API with 60s timeout...
[2026-06-12 10:22:11,576.576 INFO    ] gTTS API call completed successfully
[2026-06-12 10:22:12,212.212 INFO    ] 2026-06-12 10:22:12
[2026-06-12 10:22:12,213.213 INFO    ] playing audio file
[2026-06-12 10:22:12,223.223 INFO    ] 2026-06-12 10:22:12
[2026-06-12 10:22:12,225.225 INFO    ] 2026-06-12 10:22:12
[2026-06-12 10:22:12,227.227 INFO    ] publish_status: order_id=TM09202301260612102107160
[2026-06-12 10:22:12,229.229 INFO    ] [publish_status] Adding message to stream: order:TM09202301260612102107160
[2026-06-12 10:22:12,291.291 INFO    ] [publish_status] Message added to stream with ID: 1781239932441-0
[2026-06-12 10:22:12,292.292 INFO    ] Published to order:TM09202301260612102107160: {'server_status': 'order-started', 'order_id': 'TM09202301260612102107160', 'timestamp': '2026-06-12T04:52:12.226524Z', 'server_response': '{"data": {"order_id": "TM09202301260612102107160", "mobile": "8082591218", "invoice_bill": "20", "access_code": "20218266", "bill_amount": "20", "proposed_sku_json": [{"door_id": "1", "tray_id": "24", "qty": 1, "mrp": "20", "offer_desc": "", "unit_price": 20, "image_url": "https://images.tinymart.in/product/4500693-9518.webp", "name": "Max protein 7 grain Protein Gochujang 30gm", "skuid": "4500693", "offer_id": "", "sku_total": 20}]}, "rstatus": true, "msg": "Order Data", "status": true}'} (ID: 1781239932441-0)
[2026-06-12 10:22:12,649.649 INFO    ] {'server_status': 'order-started', 'order_id': 'TM09202301260612102107160', 'server_response': {'data': {'order_id': 'TM09202301260612102107160', 'mobile': '8082591218', 'invoice_bill': '20', 'access_code': '20218266', 'bill_amount': '20', 'proposed_sku_json': [{'door_id': '1', 'tray_id': '24', 'qty': 1, 'mrp': '20', 'offer_desc': '', 'unit_price': 20, 'image_url': 'https://images.tinymart.in/product/4500693-9518.webp', 'name': 'Max protein 7 grain Protein Gochujang 30gm', 'skuid': '4500693', 'offer_id': '', 'sku_total': 20}]}, 'rstatus': True, 'msg': 'Order Data', 'status': True}}
[2026-06-12 10:22:12,651.651 INFO    ] 200
[2026-06-12 10:22:12,652.652 INFO    ] {"data":{"server_status":"order-started","order_id":"TM09202301260612102107160","server_response":{"data":{"order_id":"TM09202301260612102107160","mobile":"8082591218","invoice_bill":"20","access_code":"20218266","bill_amount":"20","proposed_sku_json":[{"door_id":"1","tray_id":"24","qty":1,"mrp":"20","offer_desc":"","unit_price":20,"image_url":"https:\/\/images.tinymart.in\/product\/4500693-9518.webp","name":"Max protein 7 grain Protein Gochujang 30gm","skuid":"4500693","offer_id":"","sku_total":20}]},"rstatus":true,"msg":"Order Data","status":true}},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-12 10:22:12,654.654 INFO    ] {'data': {'server_status': 'order-started', 'order_id': 'TM09202301260612102107160', 'server_response': {'data': {'order_id': 'TM09202301260612102107160', 'mobile': '8082591218', 'bill_amount': '20', 'invoice_bill': '20', 'access_code': '20218266', 'proposed_sku_json': [{'door_id': '1', 'tray_id': '24', 'qty': 1, 'name': 'Max protein 7 grain Protein Gochujang 30gm', 'mrp': '20', 'unit_price': 20, 'image_url': 'https://images.tinymart.in/product/4500693-9518.webp', 'offer_desc': '', 'skuid': '4500693', 'offer_id': '', 'sku_total': 20}]}, 'rstatus': True, 'msg': 'Order Data', 'status': True}}, 'response': {'code': 'ORDER_EXISTS', 'data': 'order updated successfully', 'status': True, 'msg': 'order updated successfully'}}
[2026-06-12 10:22:12,655.655 INFO    ] 2026-06-12 10:22:12
[2026-06-12 10:22:12,680.680 INFO    ] 200
[2026-06-12 10:22:12,682.682 INFO    ] True
[2026-06-12 10:22:12,803.803 INFO    ] 200
[2026-06-12 10:22:12,806.806 INFO    ] {"rstatus": false, "error": {"umessage": "In Progress", "code": 20001, "tmessage": "In Progress", "data": {}}, "SectionSKU": {"skus": [], "Header": "Thank you for bearing with us :)"}, "SectionMain": {"Header": "Processing Order"}, "SectionStatus": {"UI_Header": "", "Note": "", "Header": " Your order is under process  ", "SubHeader": "Please wait while we process your order"}, "voiceNote": "Please Wait", "status": "False"}
[2026-06-12 10:22:12,809.809 INFO    ] {'error': {'code': 20001, 'data': {}, 'tmessage': 'In Progress', 'umessage': 'In Progress'}, 'status': 'False', 'SectionStatus': {'UI_Header': '', 'Note': '', 'Header': ' Your order is under process  ', 'SubHeader': 'Please wait while we process your order'}, 'voiceNote': 'Please Wait', 'SectionSKU': {'Header': 'Thank you for bearing with us :)', 'skus': []}, 'rstatus': False, 'SectionMain': {'Header': 'Processing Order'}}
[2026-06-12 10:22:12,813.813 INFO    ] *** process_order ***
[2026-06-12 10:22:14,002.002 INFO    ] 200
[2026-06-12 10:22:14,003.003 INFO    ] {"rstatus": true, "SectionSKU": {"skus": [], "Header": "Thank you for bearing with us :)"}, "SectionMain": {"Header": "Processing Order"}, "SectionStatus": {"UI_Header": "", "Note": "", "Header": " Your order is under process  ", "SubHeader": "Please wait while we process your order"}, "delay": 0, "voiceNote": "Please Wait", "status": "True"}
[2026-06-12 10:22:14,005.005 INFO    ] {'voiceNote': 'Please Wait', 'status': 'True', 'SectionStatus': {'UI_Header': '', 'Note': '', 'Header': ' Your order is under process  ', 'SubHeader': 'Please wait while we process your order'}, 'delay': 0, 'SectionSKU': {'Header': 'Thank you for bearing with us :)', 'skus': []}, 'rstatus': True, 'SectionMain': {'Header': 'Processing Order'}}
[2026-06-12 10:22:14,006.006 INFO    ] *** process_order ***
[2026-06-12 10:22:14,008.008 INFO    ] publish_status: order_id=TM09202301260612102107160
[2026-06-12 10:22:14,009.009 INFO    ] [publish_status] Adding message to stream: order:TM09202301260612102107160
[2026-06-12 10:22:14,089.089 INFO    ] [publish_status] Message added to stream with ID: 1781239934239-0
[2026-06-12 10:22:14,090.090 INFO    ] Published to order:TM09202301260612102107160: {'server_status': 'doorOpened', 'order_id': 'TM09202301260612102107160', 'server_response': '{"voiceNote": "Door is open...", "status": "True", "SectionStatus": {"Header": " Your order is under process  ", "Note": "", "UI_Header": "", "SubHeader": "You can pull the door now."}, "delay": 0, "SectionSKU": {"Header": "Thank you for bearing with us :)", "skus": []}, "rstatus": true, "SectionMain": {"Header": "Processing Order"}}'} (ID: 1781239934239-0)
[2026-06-12 10:22:15,137.137 INFO    ] 2026-06-12 10:22:15
[2026-06-12 10:22:15,139.139 INFO    ] publish_status: order_id=TM09202301260612102107160
[2026-06-12 10:22:15,142.142 INFO    ] [publish_status] Adding message to stream: order:TM09202301260612102107160
[2026-06-12 10:22:15,198.198 INFO    ] [publish_status] Message added to stream with ID: 1781239935348-0
[2026-06-12 10:22:15,201.201 INFO    ] Published to order:TM09202301260612102107160: {'server_status': 'processOrder', 'order_id': 'TM09202301260612102107160', 'timestamp': '2026-06-12T04:52:15.138197Z', 'server_response': '{"voiceNote": "Please Wait", "status": "True", "SectionStatus": {"UI_Header": "", "Note": "", "Header": " Your order is under process  ", "SubHeader": "Please wait while we process your order"}, "delay": 0, "SectionSKU": {"Header": "Thank you for bearing with us :)", "skus": []}, "rstatus": true, "SectionMain": {"Header": "Processing Order"}}'} (ID: 1781239935348-0)
[2026-06-12 10:22:15,331.331 INFO    ] {'server_status': 'processOrder', 'order_id': 'TM09202301260612102107160', 'server_response': {'voiceNote': 'Please Wait', 'status': 'True', 'SectionStatus': {'UI_Header': '', 'Note': '', 'Header': ' Your order is under process  ', 'SubHeader': 'Please wait while we process your order'}, 'delay': 0, 'SectionSKU': {'Header': 'Thank you for bearing with us :)', 'skus': []}, 'rstatus': True, 'SectionMain': {'Header': 'Processing Order'}}}
[2026-06-12 10:22:15,334.334 INFO    ] 200
[2026-06-12 10:22:15,336.336 INFO    ] {"data":{"server_status":"processOrder","order_id":"TM09202301260612102107160","server_response":{"voiceNote":"Please Wait","status":"true","SectionStatus":{"UI_Header":"","Note":"","Header":" Your order is under process  ","SubHeader":"Please wait while we process your order"},"delay":0,"SectionSKU":{"Header":"Thank you for bearing with us :)","skus":[]},"rstatus":true,"SectionMain":{"Header":"Processing Order"}}},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-12 10:22:15,339.339 INFO    ] {'data': {'server_status': 'processOrder', 'order_id': 'TM09202301260612102107160', 'server_response': {'voiceNote': 'Please Wait', 'status': 'true', 'SectionStatus': {'UI_Header': '', 'Note': '', 'Header': ' Your order is under process  ', 'SubHeader': 'Please wait while we process your order'}, 'delay': 0, 'SectionSKU': {'Header': 'Thank you for bearing with us :)', 'skus': []}, 'rstatus': True, 'SectionMain': {'Header': 'Processing Order'}}}, 'response': {'code': 'ORDER_EXISTS', 'data': 'order updated successfully', 'status': True, 'msg': 'order updated successfully'}}
[2026-06-12 10:22:15,343.343 INFO    ] 2026-06-12 10:22:15
[2026-06-12 10:22:15,345.345 INFO    ] None
[2026-06-12 10:22:15,348.348 INFO    ] Opening Door now
[2026-06-12 10:22:15,351.351 INFO    ] Opening Door now
[2026-06-12 10:22:15,353.353 INFO    ] 08e5d1063504bf393c26f0bfa436e9f9
[2026-06-12 10:22:15,356.356 INFO    ] 2026-06-12 10:22:15
[2026-06-12 10:22:15,358.358 INFO    ] playing audio file
[2026-06-12 10:22:15,374.374 INFO    ] 2026-06-12 10:22:15
[2026-06-12 10:22:15,376.376 INFO    ] 2026-06-12 10:22:15
[2026-06-12 10:22:18,411.411 INFO    ] 200
[2026-06-12 10:22:18,412.412 INFO    ] {"rstatus": false, "error": {"umessage": "In Progress", "code": 20001, "tmessage": "In Progress", "data": {}}, "SectionSKU": {"skus": [{"name": "Max protein 7 grain Protein Gochujang 30gm", "qty": 1}], "Header": "Pick the below items from the door"}, "SectionMain": {"Header": "Door Open"}, "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"}, "voiceNote": "Door 1 is open now", "status": "False"}
[2026-06-12 10:22:18,414.414 INFO    ] {'error': {'code': 20001, 'data': {}, 'tmessage': 'In Progress', 'umessage': 'In Progress'}, 'status': 'False', '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'}, 'voiceNote': 'Door 1 is open now', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'Max protein 7 grain Protein Gochujang 30gm'}]}, 'rstatus': False, 'SectionMain': {'Header': 'Door Open'}}
[2026-06-12 10:22:21,449.449 INFO    ] 200
[2026-06-12 10:22:21,451.451 INFO    ] {"rstatus": false, "error": {"umessage": "In Progress", "code": 20001, "tmessage": "In Progress", "data": {}}, "SectionSKU": {"skus": [{"name": "Max protein 7 grain Protein Gochujang 30gm", "qty": 1}], "Header": "Pick the below items from the door"}, "SectionMain": {"Header": "Door Open"}, "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"}, "voiceNote": "Please close door 1", "status": "False"}
[2026-06-12 10:22:21,453.453 INFO    ] {'error': {'code': 20001, 'data': {}, 'tmessage': 'In Progress', 'umessage': 'In Progress'}, 'status': 'False', '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'}, 'voiceNote': 'Please close door 1', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'Max protein 7 grain Protein Gochujang 30gm'}]}, 'rstatus': False, 'SectionMain': {'Header': 'Door Open'}}
[2026-06-12 10:22:24,490.490 INFO    ] 200
[2026-06-12 10:22:24,492.492 INFO    ] {"rstatus": false, "error": {"umessage": "In Progress", "code": 20001, "tmessage": "In Progress", "data": {}}, "SectionSKU": {"skus": [{"name": "Max protein 7 grain Protein Gochujang 30gm", "qty": 1}], "Header": "Pick the below items from the door"}, "SectionMain": {"Header": "Door Open"}, "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"}, "voiceNote": "Please close door 1", "status": "False"}
[2026-06-12 10:22:24,493.493 INFO    ] Please close door 1
[2026-06-12 10:22:24,495.495 INFO    ] Please close door 1
[2026-06-12 10:22:24,496.496 INFO    ] 787c302d53ab591e55c034b99c7aadd2
[2026-06-12 10:22:24,497.497 INFO    ] 2026-06-12 10:22:24
[2026-06-12 10:22:24,498.498 INFO    ] playing audio file
[2026-06-12 10:22:24,509.509 INFO    ] 2026-06-12 10:22:24
[2026-06-12 10:22:24,512.512 INFO    ] publish_status: order_id=TM09202301260612102107160
[2026-06-12 10:22:24,514.514 INFO    ] [publish_status] Adding message to stream: order:TM09202301260612102107160
[2026-06-12 10:22:24,596.596 INFO    ] [publish_status] Message added to stream with ID: 1781239944748-0
[2026-06-12 10:22:24,598.598 INFO    ] Published to order:TM09202301260612102107160: {'server_status': 'OrderStatus', 'order_id': 'TM09202301260612102107160', 'timestamp': '2026-06-12T04:52:24.511097Z', 'server_response': '{"error": {"code": 20001, "data": {}, "tmessage": "In Progress", "umessage": "In Progress"}, "status": "False", "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"}, "voiceNote": "Please close door 1", "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "Max protein 7 grain Protein Gochujang 30gm"}]}, "rstatus": false, "SectionMain": {"Header": "Door Open"}}'} (ID: 1781239944748-0)
[2026-06-12 10:22:24,987.987 INFO    ] {'server_status': 'OrderStatus', 'order_id': 'TM09202301260612102107160', 'server_response': {'error': {'code': 20001, 'data': {}, 'tmessage': 'In Progress', 'umessage': 'In Progress'}, 'status': 'False', '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'}, 'voiceNote': 'Please close door 1', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'Max protein 7 grain Protein Gochujang 30gm'}]}, 'rstatus': False, 'SectionMain': {'Header': 'Door Open'}}}
[2026-06-12 10:22:24,988.988 INFO    ] 200
[2026-06-12 10:22:24,990.990 INFO    ] {"data":{"server_status":"OrderStatus","order_id":"TM09202301260612102107160","server_response":{"error":{"code":20001,"data":[],"tmessage":"In Progress","umessage":"In Progress"},"status":"false","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"},"voiceNote":"Please close door 1","SectionSKU":{"Header":"Pick the below items from the door","skus":[{"qty":1,"name":"Max protein 7 grain Protein Gochujang 30gm"}]},"rstatus":false,"SectionMain":{"Header":"Door Open"}}},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-12 10:22:24,992.992 INFO    ] {'data': {'server_status': 'OrderStatus', 'order_id': 'TM09202301260612102107160', 'server_response': {'error': {'code': 20001, 'data': [], 'tmessage': 'In Progress', 'umessage': 'In Progress'}, 'status': 'false', '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': 'Max protein 7 grain Protein Gochujang 30gm'}]}, 'voiceNote': 'Please close door 1', 'SectionMain': {'Header': 'Door Open'}}}, 'response': {'code': 'ORDER_EXISTS', 'data': 'order updated successfully', 'status': True, 'msg': 'order updated successfully'}}
[2026-06-12 10:22:24,993.993 INFO    ] {'error': {'code': 20001, 'data': {}, 'tmessage': 'In Progress', 'umessage': 'In Progress'}, 'status': 'False', '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'}, 'voiceNote': 'Please close door 1', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'Max protein 7 grain Protein Gochujang 30gm'}]}, 'rstatus': False, 'SectionMain': {'Header': 'Door Open'}}
[2026-06-12 10:22:28,026.026 INFO    ] 200
[2026-06-12 10:22:28,027.027 INFO    ] {"rstatus": false, "error": {"umessage": "In Progress", "code": 20001, "tmessage": "In Progress", "data": {}}, "SectionSKU": {"skus": [{"name": "Max protein 7 grain Protein Gochujang 30gm", "qty": 1}], "Header": "Pick the below items from the door"}, "SectionMain": {"Header": "Door Close"}, "SectionStatus": {"UI_Header": "DOOR 1\nIS \nCLOSED \nNOW", "Note": "If any due amount, clear at https://go.tinymart.in", "Header": "Door 1 is closed now", "SubHeader": "Please wait for invoice to generate"}, "delay": 1000, "voiceNote": "Door 1 is closed now", "status": "False"}
[2026-06-12 10:22:28,029.029 INFO    ] {'error': {'code': 20001, 'data': {}, 'tmessage': 'In Progress', 'umessage': 'In Progress'}, 'status': 'False', 'SectionStatus': {'UI_Header': 'DOOR 1\nIS \nCLOSED \nNOW', 'Note': 'If any due amount, clear at https://go.tinymart.in', 'Header': 'Door 1 is closed now', 'SubHeader': 'Please wait for invoice to generate'}, 'voiceNote': 'Door 1 is closed now', 'delay': 1000, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'Max protein 7 grain Protein Gochujang 30gm'}]}, 'rstatus': False, 'SectionMain': {'Header': 'Door Close'}}
[2026-06-12 10:22:31,092.092 INFO    ] 200
[2026-06-12 10:22:31,095.095 INFO    ] {"rstatus": true, "SectionSKU": {"skus": [], "Header": "If you like us, tell others... else tell us"}, "SectionMain": {"Header": "Door Closed"}, "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, "voiceNote": "Transaction Completed", "status": "True"}
[2026-06-12 10:22:31,098.098 INFO    ] {'voiceNote': 'Transaction Completed', 'status': 'True', 'SectionStatus': {'UI_Header': '', 'Note': 'If any due amount, clear at https://go.tinymart.in', 'Header': ' Order is complete ', 'SubHeader': 'Please wait for invoice to generate'}, 'delay': 100, 'SectionSKU': {'Header': 'If you like us, tell others... else tell us', 'skus': []}, 'rstatus': True, 'SectionMain': {'Header': 'Door Closed'}}
[2026-06-12 10:22:31,102.102 INFO    ] 2026-06-12 10:22:31
[2026-06-12 10:22:31,104.104 INFO    ] Order Completed 
[2026-06-12 10:22:31,107.107 INFO    ] Order Completed 
[2026-06-12 10:22:31,110.110 INFO    ] 193c8a8cf3bf490ccfe0b23598544a83
[2026-06-12 10:22:31,113.113 INFO    ] 2026-06-12 10:22:31
[2026-06-12 10:22:31,116.116 INFO    ] playing audio file
[2026-06-12 10:22:31,135.135 INFO    ] 2026-06-12 10:22:31
[2026-06-12 10:22:31,138.138 INFO    ] {'voiceNote': 'Transaction Completed', 'status': 'True', 'SectionStatus': {'UI_Header': '', 'Note': 'If any due amount, clear at https://go.tinymart.in', 'Header': ' Order is complete ', 'SubHeader': 'Please wait for invoice to generate'}, 'delay': 100, 'SectionSKU': {'Header': 'If you like us, tell others... else tell us', 'skus': []}, 'rstatus': True, 'SectionMain': {'Header': 'Door Closed'}}
[2026-06-12 10:22:31,142.142 INFO    ] 2026-06-12 10:22:31
[2026-06-12 10:22:31,512.512 INFO    ] 200
[2026-06-12 10:22:31,514.514 INFO    ] {"rstatus": true, "orderId": "TM09202301260612102107160", "logic": "WBL", "anomaly": 0, "res": "True", "total_amount": 20.0, "skus": [{"door_id": "", "sku_total": 20.0, "skuid": "4500693", "mrp": "20", "tray_id": "24", "image_url": "https://images.tinymart.in/product/4500693-9518.webp", "name": "Max protein 7 grain Protein Gochujang 30gm per peice", "qty": 1, "unit_price": "20"}]}
[2026-06-12 10:22:31,516.516 INFO    ] {'orderId': 'TM09202301260612102107160', 'logic': 'WBL', 'res': 'True', 'total_amount': 20.0, 'anomaly': 0, 'rstatus': True, 'skus': [{'door_id': '', 'tray_id': '24', 'image_url': 'https://images.tinymart.in/product/4500693-9518.webp', 'mrp': '20', 'unit_price': '20', 'qty': 1, 'name': 'Max protein 7 grain Protein Gochujang 30gm per peice', 'skuid': '4500693', 'sku_total': 20.0}]}
[2026-06-12 10:22:31,518.518 INFO    ] {'orderId': 'TM09202301260612102107160', 'logic': 'WBL', 'res': 'True', 'total_amount': 20.0, 'anomaly': 0, 'rstatus': True, 'skus': [{'door_id': '', 'tray_id': '24', 'image_url': 'https://images.tinymart.in/product/4500693-9518.webp', 'mrp': '20', 'unit_price': '20', 'qty': 1, 'name': 'Max protein 7 grain Protein Gochujang 30gm per peice', 'skuid': '4500693', 'sku_total': 20.0}]}
[2026-06-12 10:22:31,526.526 INFO    ] 2026-06-12 10:22:31
[2026-06-12 10:22:31,528.528 INFO    ] 2026-06-12 10:22:31
[2026-06-12 10:22:31,530.530 INFO    ] 20
[2026-06-12 10:22:31,532.532 INFO    ] 2026-06-12 10:22:31
[2026-06-12 10:22:31,534.534 INFO    ] 2026-06-12 10:22:31
[2026-06-12 10:22:31,536.536 INFO    ]  Your Bill Amount is 20
[2026-06-12 10:22:31,537.537 INFO    ]  Your Bill Amount is 20
[2026-06-12 10:22:31,540.540 INFO    ] 69e7720cf62ffa67ab0522541575e508
[2026-06-12 10:22:31,542.542 INFO    ] 2026-06-12 10:22:31
[2026-06-12 10:22:31,543.543 INFO    ] playing audio file
[2026-06-12 10:22:31,555.555 INFO    ] 2026-06-12 10:22:31
[2026-06-12 10:22:31,557.557 INFO    ] 2026-06-12 10:22:31
[2026-06-12 10:22:31,559.559 INFO    ] publish_status: order_id=TM09202301260612102107160
[2026-06-12 10:22:31,561.561 INFO    ] [publish_status] Adding message to stream: order:TM09202301260612102107160
[2026-06-12 10:22:31,617.617 INFO    ] [publish_status] Message added to stream with ID: 1781239951769-0
[2026-06-12 10:22:31,618.618 INFO    ] Published to order:TM09202301260612102107160: {'server_status': 'invoiceOrder', 'order_id': 'TM09202301260612102107160', 'timestamp': '2026-06-12T04:52:31.558045Z', 'server_response': '{"orderId": "TM09202301260612102107160", "logic": "WBL", "res": "True", "total_amount": 20.0, "anomaly": 0, "rstatus": true, "skus": [{"door_id": "", "tray_id": "24", "image_url": "https://images.tinymart.in/product/4500693-9518.webp", "mrp": "20", "unit_price": "20", "qty": 1, "name": "Max protein 7 grain Protein Gochujang 30gm per peice", "skuid": "4500693", "sku_total": 20.0}]}'} (ID: 1781239951769-0)
[2026-06-12 10:22:32,283.283 INFO    ] {'server_status': 'invoiceOrder', 'order_id': 'TM09202301260612102107160', 'server_response': {'orderId': 'TM09202301260612102107160', 'logic': 'WBL', 'res': 'True', 'total_amount': 20.0, 'anomaly': 0, 'rstatus': True, 'skus': [{'door_id': '', 'tray_id': '24', 'image_url': 'https://images.tinymart.in/product/4500693-9518.webp', 'mrp': '20', 'unit_price': '20', 'qty': 1, 'name': 'Max protein 7 grain Protein Gochujang 30gm per peice', 'skuid': '4500693', 'sku_total': 20.0}]}}
[2026-06-12 10:22:32,285.285 INFO    ] 200
[2026-06-12 10:22:32,286.286 INFO    ] {"data":{"server_status":"invoiceOrder","order_id":"TM09202301260612102107160","server_response":{"orderId":"TM09202301260612102107160","logic":"WBL","res":"true","total_amount":20,"anomaly":0,"rstatus":true,"skus":[{"door_id":"","tray_id":"24","image_url":"https:\/\/images.tinymart.in\/product\/4500693-9518.webp","mrp":"20","unit_price":"20","qty":1,"name":"Max protein 7 grain Protein Gochujang 30gm per peice","skuid":"4500693","sku_total":20}]}},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-12 10:22:32,288.288 INFO    ] {'data': {'server_status': 'invoiceOrder', 'order_id': 'TM09202301260612102107160', 'server_response': {'orderId': 'TM09202301260612102107160', 'logic': 'WBL', 'anomaly': 0, 'total_amount': 20, 'rstatus': True, 'res': 'true', 'skus': [{'door_id': '', 'tray_id': '24', 'image_url': 'https://images.tinymart.in/product/4500693-9518.webp', 'mrp': '20', 'unit_price': '20', 'name': 'Max protein 7 grain Protein Gochujang 30gm per peice', 'skuid': '4500693', 'qty': 1, 'sku_total': 20}]}}, 'response': {'code': 'ORDER_EXISTS', 'data': 'order updated successfully', 'status': True, 'msg': 'order updated successfully'}}
[2026-06-12 10:22:32,290.290 INFO    ] {'data': {'server_status': 'invoiceOrder', 'order_id': 'TM09202301260612102107160', 'server_response': {'orderId': 'TM09202301260612102107160', 'logic': 'WBL', 'anomaly': 0, 'total_amount': 20, 'rstatus': True, 'res': 'true', 'skus': [{'door_id': '', 'tray_id': '24', 'image_url': 'https://images.tinymart.in/product/4500693-9518.webp', 'mrp': '20', 'unit_price': '20', 'name': 'Max protein 7 grain Protein Gochujang 30gm per peice', 'skuid': '4500693', 'qty': 1, 'sku_total': 20}]}}, 'response': {'code': 'ORDER_EXISTS', 'data': 'order updated successfully', 'status': True, 'msg': 'order updated successfully'}}
[2026-06-12 10:22:32,291.291 INFO    ] 2026-06-12 10:22:32
[2026-06-12 10:22:34,576.576 INFO    ] 200
[2026-06-12 10:22:34,580.580 INFO    ] {"tray_sync": ["TM09202301260612102107160", "TM09202301260612102107160", "TM09202301260612102107160", "TM09202301260612102107160", "TM09202301260612102107160", "TM09202301260612102107160"], "orders_data": [], "orders_synced": [], "status": true, "order_items_synced": ["TM09202301260612102107160_0"], "tray_synced": ["TM09202301260612102107160", "TM09202301260612102107160", "TM09202301260612102107160", "TM09202301260612102107160", "TM09202301260612102107160", "TM09202301260612102107160", "TM09202301260612102107160", "TM09202301260612102107160", "TM09202301260612102107160", "TM09202301260612102107160", "TM09202301260612102107160", "TM09202301260612102107160", "TM09202301260612102107160", "TM09202301260612102107160", "TM09202301260612102107160", "TM09202301260612102107160", "TM09202301260612102107160", "TM09202301260612102107160", "TM09202301260612102107160", "TM09202301260612102107160", "TM09202301260612102107160", "TM09202301260612102107160", "TM09202301260612102107160", "TM09202301260612102107160", "TM09202301260612102107160", "TM09202301260612102107160", "TM09202301260612102107160"], "orders_data_synced": [], "orders": [], "order_items": []}
[2026-06-12 10:22:34,584.584 INFO    ] 2026-06-12 10:22:34
[2026-06-12 10:22:34,671.671 INFO    ] 200
[2026-06-12 10:22:34,673.673 INFO    ] True
[2026-06-12 10:22:34,674.674 INFO    ] cleanup_start_order_file_after_processing: order_id=TM09202301260612102107160
[2026-06-12 10:22:34,676.676 INFO    ] start order file deleted
[2026-06-12 10:22:34,678.678 INFO    ] Checking for system updates...
[2026-06-12 10:22:34,699.699 INFO    ] 200
[2026-06-12 10:22:34,701.701 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:22:34,732.732 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 10:22:34,733.733 INFO    ] No update needed
[2026-06-12 10:22:34,735.735 INFO    ] Checking for camera pi updates...
[2026-06-12 10:22:34,754.754 INFO    ] 200
[2026-06-12 10:22:34,756.756 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:22:34,781.781 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 10:22:34,826.826 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 10:22:34,828.828 INFO    ] No camera update needed
[2026-06-12 10:22:34,829.829 INFO    ] Script finished. Safe exiting...
[2026-06-12 10:22:34,831.831 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 10:22:34,835.835 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 10:22:34,838.838 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 10:22:36,878.878 INFO    ] ================================================
[2026-06-12 10:22:36,894.894 INFO    ] Launching Daemon at Fri Jun 12 10:22:36 IST 2026
[2026-06-12 10:22:36,906.906 INFO    ] ================================================
[2026-06-12 10:22:37,266.266 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 10:22:37
[2026-06-12 10:22:37,594.594 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 10:22:37,724.724 INFO    ] Initializing speech engine...
[2026-06-12 10:22:37,729.729 INFO    ] 2026-06-12 10:22:37
[2026-06-12 10:22:37,952.952 INFO    ] 2026-06-12 10:22:37
[2026-06-12 10:22:37,981.981 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 10:22:38,166.166 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 10:22:38,175.175 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 10:22:38,301.301 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 10:22:38,356.356 INFO    ] time= 12/06/2026 10:22:38
[2026-06-12 10:22:38,399.399 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 10:22:38,406.406 INFO    ] Checking for existing commands in stream...
[2026-06-12 10:22:38,474.474 INFO    ] No existing commands found in stream
[2026-06-12 10:22:43,483.483 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 10:22:43,486.486 INFO    ] Waiting 2.01 seconds before fallback handling...
[2026-06-12 10:22:45,861.861 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 10:22:45,863.863 INFO    ] Checking for system updates...
[2026-06-12 10:22:45,883.883 INFO    ] 200
[2026-06-12 10:22:45,885.885 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:22:45,916.916 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 10:22:45,918.918 INFO    ] No update needed
[2026-06-12 10:22:45,919.919 INFO    ] Checking for camera pi updates...
[2026-06-12 10:22:45,939.939 INFO    ] 200
[2026-06-12 10:22:45,940.940 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:22:45,965.965 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 10:22:46,006.006 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 10:22:46,007.007 INFO    ] No camera update needed
[2026-06-12 10:22:46,008.008 INFO    ] Script finished. Safe exiting...
[2026-06-12 10:22:46,010.010 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 10:22:46,013.013 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 10:22:46,015.015 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 10:22:48,055.055 INFO    ] ================================================
[2026-06-12 10:22:48,070.070 INFO    ] Launching Daemon at Fri Jun 12 10:22:48 IST 2026
[2026-06-12 10:22:48,082.082 INFO    ] ================================================
[2026-06-12 10:22:48,448.448 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 10:22:48
[2026-06-12 10:22:48,796.796 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 10:22:48,962.962 INFO    ] Initializing speech engine...
[2026-06-12 10:22:48,967.967 INFO    ] 2026-06-12 10:22:48
[2026-06-12 10:22:49,176.176 INFO    ] 2026-06-12 10:22:49
[2026-06-12 10:22:49,205.205 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 10:22:49,390.390 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 10:22:49,394.394 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 10:22:49,524.524 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 10:22:49,585.585 INFO    ] time= 12/06/2026 10:22:49
[2026-06-12 10:22:49,619.619 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 10:22:49,629.629 INFO    ] Checking for existing commands in stream...
[2026-06-12 10:22:49,719.719 INFO    ] No existing commands found in stream
[2026-06-12 10:22:54,734.734 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 10:22:54,737.737 INFO    ] Waiting 2.65 seconds before fallback handling...
[2026-06-12 10:22:57,740.740 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 10:22:57,742.742 INFO    ] Checking for system updates...
[2026-06-12 10:22:57,763.763 INFO    ] 200
[2026-06-12 10:22:57,764.764 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:22:57,794.794 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 10:22:57,796.796 INFO    ] No update needed
[2026-06-12 10:22:57,797.797 INFO    ] Checking for camera pi updates...
[2026-06-12 10:22:57,817.817 INFO    ] 200
[2026-06-12 10:22:57,818.818 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:22:57,842.842 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 10:22:57,884.884 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 10:22:57,885.885 INFO    ] No camera update needed
[2026-06-12 10:22:57,887.887 INFO    ] Script finished. Safe exiting...
[2026-06-12 10:22:57,888.888 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 10:22:57,892.892 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 10:22:57,895.895 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 10:22:59,935.935 INFO    ] ================================================
[2026-06-12 10:22:59,953.953 INFO    ] Launching Daemon at Fri Jun 12 10:22:59 IST 2026
[2026-06-12 10:22:59,964.964 INFO    ] ================================================
[2026-06-12 10:23:00,333.333 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 10:23:00
[2026-06-12 10:23:00,648.648 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 10:23:00,793.793 INFO    ] Initializing speech engine...
[2026-06-12 10:23:00,798.798 INFO    ] 2026-06-12 10:23:00
[2026-06-12 10:23:01,002.002 INFO    ] 2026-06-12 10:23:00
[2026-06-12 10:23:01,030.030 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 10:23:01,166.166 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 10:23:01,219.219 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 10:23:01,348.348 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 10:23:01,419.419 INFO    ] time= 12/06/2026 10:23:01
[2026-06-12 10:23:01,446.446 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 10:23:01,453.453 INFO    ] Checking for existing commands in stream...
[2026-06-12 10:23:01,548.548 INFO    ] No existing commands found in stream
[2026-06-12 10:23:06,562.562 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 10:23:06,564.564 INFO    ] Waiting 3.61 seconds before fallback handling...
[2026-06-12 10:23:10,584.584 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 10:23:10,587.587 INFO    ] Checking for system updates...
[2026-06-12 10:23:10,628.628 INFO    ] 200
[2026-06-12 10:23:10,630.630 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:23:10,691.691 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 10:23:10,694.694 INFO    ] No update needed
[2026-06-12 10:23:10,696.696 INFO    ] Checking for camera pi updates...
[2026-06-12 10:23:10,723.723 INFO    ] 200
[2026-06-12 10:23:10,724.724 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:23:10,747.747 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 10:23:10,786.786 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 10:23:10,787.787 INFO    ] No camera update needed
[2026-06-12 10:23:10,793.793 INFO    ] Script finished. Safe exiting...
[2026-06-12 10:23:10,794.794 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 10:23:10,797.797 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 10:23:10,800.800 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 10:23:12,839.839 INFO    ] ================================================
[2026-06-12 10:23:12,854.854 INFO    ] Launching Daemon at Fri Jun 12 10:23:12 IST 2026
[2026-06-12 10:23:12,865.865 INFO    ] ================================================
[2026-06-12 10:23:13,223.223 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 10:23:13
[2026-06-12 10:23:13,542.542 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 10:23:13,674.674 INFO    ] Initializing speech engine...
[2026-06-12 10:23:13,682.682 INFO    ] 2026-06-12 10:23:13
[2026-06-12 10:23:13,893.893 INFO    ] 2026-06-12 10:23:13
[2026-06-12 10:23:13,922.922 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 10:23:14,229.229 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 10:23:14,295.295 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 10:23:14,422.422 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 10:23:14,424.424 INFO    ] time= 12/06/2026 10:23:14
[2026-06-12 10:23:14,451.451 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 10:23:14,453.453 INFO    ] Checking for existing commands in stream...
[2026-06-12 10:23:14,525.525 INFO    ] No existing commands found in stream
[2026-06-12 10:23:19,535.535 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 10:23:19,537.537 INFO    ] Waiting 2.01 seconds before fallback handling...
[2026-06-12 10:23:21,928.928 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 10:23:21,930.930 INFO    ] Checking for system updates...
[2026-06-12 10:23:21,951.951 INFO    ] 200
[2026-06-12 10:23:21,952.952 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:23:21,982.982 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 10:23:21,984.984 INFO    ] No update needed
[2026-06-12 10:23:21,985.985 INFO    ] Checking for camera pi updates...
[2026-06-12 10:23:22,005.005 INFO    ] 200
[2026-06-12 10:23:22,006.006 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:23:22,029.029 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 10:23:22,169.169 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 10:23:22,175.175 INFO    ] No camera update needed
[2026-06-12 10:23:22,177.177 INFO    ] Script finished. Safe exiting...
[2026-06-12 10:23:22,178.178 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 10:23:22,188.188 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 10:23:22,191.191 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 10:23:24,231.231 INFO    ] ================================================
[2026-06-12 10:23:24,246.246 INFO    ] Launching Daemon at Fri Jun 12 10:23:24 IST 2026
[2026-06-12 10:23:24,258.258 INFO    ] ================================================
[2026-06-12 10:23:24,600.600 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 10:23:24
[2026-06-12 10:23:24,916.916 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 10:23:25,053.053 INFO    ] Initializing speech engine...
[2026-06-12 10:23:25,066.066 INFO    ] 2026-06-12 10:23:25
[2026-06-12 10:23:25,286.286 INFO    ] 2026-06-12 10:23:25
[2026-06-12 10:23:25,317.317 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 10:23:25,450.450 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 10:23:25,493.493 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 10:23:25,661.661 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 10:23:25,703.703 INFO    ] time= 12/06/2026 10:23:25
[2026-06-12 10:23:25,745.745 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 10:23:25,769.769 INFO    ] Checking for existing commands in stream...
[2026-06-12 10:23:25,845.845 INFO    ] No existing commands found in stream
[2026-06-12 10:23:30,852.852 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 10:23:30,855.855 INFO    ] Waiting 1.97 seconds before fallback handling...
[2026-06-12 10:23:33,187.187 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 10:23:33,188.188 INFO    ] Checking for system updates...
[2026-06-12 10:23:33,209.209 INFO    ] 200
[2026-06-12 10:23:33,211.211 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:23:33,242.242 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 10:23:33,244.244 INFO    ] No update needed
[2026-06-12 10:23:33,245.245 INFO    ] Checking for camera pi updates...
[2026-06-12 10:23:33,266.266 INFO    ] 200
[2026-06-12 10:23:33,267.267 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:23:33,291.291 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 10:23:33,333.333 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 10:23:33,334.334 INFO    ] No camera update needed
[2026-06-12 10:23:33,336.336 INFO    ] Script finished. Safe exiting...
[2026-06-12 10:23:33,337.337 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 10:23:33,340.340 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 10:23:33,343.343 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 10:23:35,381.381 INFO    ] ================================================
[2026-06-12 10:23:35,396.396 INFO    ] Launching Daemon at Fri Jun 12 10:23:35 IST 2026
[2026-06-12 10:23:35,408.408 INFO    ] ================================================
[2026-06-12 10:23:35,758.758 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 10:23:35
[2026-06-12 10:23:36,076.076 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 10:23:36,213.213 INFO    ] Initializing speech engine...
[2026-06-12 10:23:36,222.222 INFO    ] 2026-06-12 10:23:36
[2026-06-12 10:23:36,436.436 INFO    ] 2026-06-12 10:23:36
[2026-06-12 10:23:36,465.465 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 10:23:36,688.688 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 10:23:36,698.698 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 10:23:36,835.835 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 10:23:36,892.892 INFO    ] time= 12/06/2026 10:23:36
[2026-06-12 10:23:36,939.939 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 10:23:36,946.946 INFO    ] Checking for existing commands in stream...
[2026-06-12 10:23:37,051.051 INFO    ] No existing commands found in stream
[2026-06-12 10:23:42,060.060 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 10:23:42,063.063 INFO    ] Waiting 2.81 seconds before fallback handling...
[2026-06-12 10:23:45,254.254 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 10:23:45,256.256 INFO    ] Checking for system updates...
[2026-06-12 10:23:45,278.278 INFO    ] 200
[2026-06-12 10:23:45,279.279 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:23:45,313.313 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 10:23:45,314.314 INFO    ] No update needed
[2026-06-12 10:23:45,316.316 INFO    ] Checking for camera pi updates...
[2026-06-12 10:23:45,337.337 INFO    ] 200
[2026-06-12 10:23:45,338.338 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:23:45,362.362 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 10:23:45,399.399 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 10:23:45,401.401 INFO    ] No camera update needed
[2026-06-12 10:23:45,402.402 INFO    ] Script finished. Safe exiting...
[2026-06-12 10:23:45,403.403 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 10:23:45,406.406 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 10:23:45,409.409 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 10:23:47,448.448 INFO    ] ================================================
[2026-06-12 10:23:47,463.463 INFO    ] Launching Daemon at Fri Jun 12 10:23:47 IST 2026
[2026-06-12 10:23:47,474.474 INFO    ] ================================================
[2026-06-12 10:23:47,810.810 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 10:23:47
[2026-06-12 10:23:48,129.129 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 10:23:48,276.276 INFO    ] Initializing speech engine...
[2026-06-12 10:23:48,280.280 INFO    ] 2026-06-12 10:23:48
[2026-06-12 10:23:48,483.483 INFO    ] 2026-06-12 10:23:48
[2026-06-12 10:23:48,511.511 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 10:23:48,633.633 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 10:23:48,695.695 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 10:23:48,826.826 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 10:23:48,877.877 INFO    ] time= 12/06/2026 10:23:48
[2026-06-12 10:23:48,911.911 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 10:23:48,927.927 INFO    ] Checking for existing commands in stream...
[2026-06-12 10:23:48,998.998 INFO    ] No existing commands found in stream
[2026-06-12 10:23:54,007.007 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 10:23:54,015.015 INFO    ] Waiting 0.93 seconds before fallback handling...
[2026-06-12 10:23:55,318.318 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 10:23:55,319.319 INFO    ] Checking for system updates...
[2026-06-12 10:23:55,341.341 INFO    ] 200
[2026-06-12 10:23:55,342.342 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:23:55,373.373 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 10:23:55,375.375 INFO    ] No update needed
[2026-06-12 10:23:55,376.376 INFO    ] Checking for camera pi updates...
[2026-06-12 10:23:55,396.396 INFO    ] 200
[2026-06-12 10:23:55,397.397 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:23:55,421.421 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 10:23:55,460.460 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 10:23:55,461.461 INFO    ] No camera update needed
[2026-06-12 10:23:55,463.463 INFO    ] Script finished. Safe exiting...
[2026-06-12 10:23:55,464.464 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 10:23:55,467.467 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 10:23:55,471.471 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 10:23:57,512.512 INFO    ] ================================================
[2026-06-12 10:23:57,527.527 INFO    ] Launching Daemon at Fri Jun 12 10:23:57 IST 2026
[2026-06-12 10:23:57,539.539 INFO    ] ================================================
[2026-06-12 10:23:57,888.888 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 10:23:57
[2026-06-12 10:23:58,204.204 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 10:23:58,347.347 INFO    ] Initializing speech engine...
[2026-06-12 10:23:58,353.353 INFO    ] 2026-06-12 10:23:58
[2026-06-12 10:23:58,556.556 INFO    ] 2026-06-12 10:23:58
[2026-06-12 10:23:58,585.585 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 10:23:58,766.766 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 10:23:58,769.769 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 10:23:58,915.915 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 10:23:58,971.971 INFO    ] time= 12/06/2026 10:23:58
[2026-06-12 10:23:58,994.994 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 10:23:59,001.001 INFO    ] Checking for existing commands in stream...
[2026-06-12 10:23:59,091.091 INFO    ] No existing commands found in stream
[2026-06-12 10:24:04,100.100 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 10:24:04,109.109 INFO    ] Waiting 1.21 seconds before fallback handling...
[2026-06-12 10:24:05,655.655 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 10:24:05,657.657 INFO    ] Checking for system updates...
[2026-06-12 10:24:05,677.677 INFO    ] 200
[2026-06-12 10:24:05,679.679 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:24:05,712.712 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 10:24:05,713.713 INFO    ] No update needed
[2026-06-12 10:24:05,714.714 INFO    ] Checking for camera pi updates...
[2026-06-12 10:24:05,734.734 INFO    ] 200
[2026-06-12 10:24:05,735.735 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:24:05,759.759 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 10:24:05,799.799 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 10:24:05,800.800 INFO    ] No camera update needed
[2026-06-12 10:24:05,802.802 INFO    ] Script finished. Safe exiting...
[2026-06-12 10:24:05,803.803 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 10:24:05,806.806 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 10:24:05,808.808 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 10:24:07,848.848 INFO    ] ================================================
[2026-06-12 10:24:07,864.864 INFO    ] Launching Daemon at Fri Jun 12 10:24:07 IST 2026
[2026-06-12 10:24:07,874.874 INFO    ] ================================================
[2026-06-12 10:24:08,249.249 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 10:24:08
[2026-06-12 10:24:08,565.565 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 10:24:08,708.708 INFO    ] Initializing speech engine...
[2026-06-12 10:24:08,714.714 INFO    ] 2026-06-12 10:24:08
[2026-06-12 10:24:08,916.916 INFO    ] 2026-06-12 10:24:08
[2026-06-12 10:24:08,945.945 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 10:24:09,127.127 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 10:24:09,140.140 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 10:24:09,287.287 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 10:24:09,334.334 INFO    ] time= 12/06/2026 10:24:09
[2026-06-12 10:24:09,357.357 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 10:24:09,363.363 INFO    ] Checking for existing commands in stream...
[2026-06-12 10:24:09,429.429 INFO    ] No existing commands found in stream
[2026-06-12 10:24:14,438.438 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 10:24:14,446.446 INFO    ] Waiting 2.91 seconds before fallback handling...
[2026-06-12 10:24:18,632.632 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 10:24:18,635.635 INFO    ] Checking for system updates...
[2026-06-12 10:24:18,675.675 INFO    ] 200
[2026-06-12 10:24:18,698.698 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:24:18,758.758 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 10:24:18,761.761 INFO    ] No update needed
[2026-06-12 10:24:18,763.763 INFO    ] Checking for camera pi updates...
[2026-06-12 10:24:18,790.790 INFO    ] 200
[2026-06-12 10:24:18,792.792 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:24:18,815.815 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 10:24:18,852.852 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 10:24:18,853.853 INFO    ] No camera update needed
[2026-06-12 10:24:18,854.854 INFO    ] Script finished. Safe exiting...
[2026-06-12 10:24:18,856.856 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 10:24:18,859.859 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 10:24:18,862.862 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 10:24:20,901.901 INFO    ] ================================================
[2026-06-12 10:24:20,916.916 INFO    ] Launching Daemon at Fri Jun 12 10:24:20 IST 2026
[2026-06-12 10:24:20,927.927 INFO    ] ================================================
[2026-06-12 10:24:21,280.280 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 10:24:21
[2026-06-12 10:24:21,596.596 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 10:24:21,741.741 INFO    ] Initializing speech engine...
[2026-06-12 10:24:21,746.746 INFO    ] 2026-06-12 10:24:21
[2026-06-12 10:24:21,948.948 INFO    ] 2026-06-12 10:24:21
[2026-06-12 10:24:21,978.978 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 10:24:22,162.162 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 10:24:22,171.171 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 10:24:22,310.310 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 10:24:22,367.367 INFO    ] time= 12/06/2026 10:24:22
[2026-06-12 10:24:22,391.391 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 10:24:22,398.398 INFO    ] Checking for existing commands in stream...
[2026-06-12 10:24:22,489.489 INFO    ] No existing commands found in stream
[2026-06-12 10:24:27,503.503 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 10:24:27,506.506 INFO    ] Waiting 2.88 seconds before fallback handling...
[2026-06-12 10:24:30,766.766 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 10:24:30,768.768 INFO    ] Checking for system updates...
[2026-06-12 10:24:30,789.789 INFO    ] 200
[2026-06-12 10:24:30,791.791 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:24:30,821.821 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 10:24:30,823.823 INFO    ] No update needed
[2026-06-12 10:24:30,824.824 INFO    ] Checking for camera pi updates...
[2026-06-12 10:24:30,844.844 INFO    ] 200
[2026-06-12 10:24:30,845.845 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:24:30,869.869 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 10:24:30,905.905 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 10:24:30,906.906 INFO    ] No camera update needed
[2026-06-12 10:24:30,907.907 INFO    ] Script finished. Safe exiting...
[2026-06-12 10:24:30,909.909 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 10:24:30,912.912 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 10:24:30,914.914 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 10:24:32,950.950 INFO    ] ================================================
[2026-06-12 10:24:32,958.958 INFO    ] Launching Daemon at Fri Jun 12 10:24:32 IST 2026
[2026-06-12 10:24:32,964.964 INFO    ] ================================================
[2026-06-12 10:24:33,287.287 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 10:24:33
[2026-06-12 10:24:33,622.622 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 10:24:33,762.762 INFO    ] Initializing speech engine...
[2026-06-12 10:24:33,769.769 INFO    ] 2026-06-12 10:24:33
[2026-06-12 10:24:33,985.985 INFO    ] 2026-06-12 10:24:33
[2026-06-12 10:24:34,013.013 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 10:24:34,195.195 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 10:24:34,199.199 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 10:24:34,335.335 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 10:24:34,401.401 INFO    ] time= 12/06/2026 10:24:34
[2026-06-12 10:24:34,426.426 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 10:24:34,432.432 INFO    ] Checking for existing commands in stream...
[2026-06-12 10:24:34,499.499 INFO    ] No existing commands found in stream
[2026-06-12 10:24:39,508.508 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 10:24:39,512.512 INFO    ] Waiting 3.74 seconds before fallback handling...
[2026-06-12 10:24:43,601.601 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 10:24:43,603.603 INFO    ] Checking for system updates...
[2026-06-12 10:24:43,625.625 INFO    ] 200
[2026-06-12 10:24:43,626.626 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:24:43,656.656 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 10:24:43,658.658 INFO    ] No update needed
[2026-06-12 10:24:43,659.659 INFO    ] Checking for camera pi updates...
[2026-06-12 10:24:43,681.681 INFO    ] 200
[2026-06-12 10:24:43,682.682 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:24:43,707.707 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 10:24:43,744.744 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 10:24:43,746.746 INFO    ] No camera update needed
[2026-06-12 10:24:43,747.747 INFO    ] Script finished. Safe exiting...
[2026-06-12 10:24:43,748.748 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 10:24:43,751.751 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 10:24:43,754.754 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 10:24:45,784.784 INFO    ] ================================================
[2026-06-12 10:24:45,792.792 INFO    ] Launching Daemon at Fri Jun 12 10:24:45 IST 2026
[2026-06-12 10:24:45,802.802 INFO    ] ================================================
[2026-06-12 10:24:46,106.106 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 10:24:46
[2026-06-12 10:24:46,418.418 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 10:24:46,549.549 INFO    ] Initializing speech engine...
[2026-06-12 10:24:46,553.553 INFO    ] 2026-06-12 10:24:46
[2026-06-12 10:24:46,776.776 INFO    ] 2026-06-12 10:24:46
[2026-06-12 10:24:46,804.804 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 10:24:46,991.991 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 10:24:46,994.994 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 10:24:47,133.133 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 10:24:47,186.186 INFO    ] time= 12/06/2026 10:24:47
[2026-06-12 10:24:47,222.222 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 10:24:47,227.227 INFO    ] Checking for existing commands in stream...
[2026-06-12 10:24:47,299.299 INFO    ] No existing commands found in stream
[2026-06-12 10:24:52,308.308 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 10:24:52,311.311 INFO    ] Waiting 2.29 seconds before fallback handling...
[2026-06-12 10:24:54,962.962 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 10:24:54,963.963 INFO    ] Checking for system updates...
[2026-06-12 10:24:54,985.985 INFO    ] 200
[2026-06-12 10:24:54,986.986 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:24:55,017.017 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 10:24:55,019.019 INFO    ] No update needed
[2026-06-12 10:24:55,021.021 INFO    ] Checking for camera pi updates...
[2026-06-12 10:24:55,040.040 INFO    ] 200
[2026-06-12 10:24:55,042.042 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:24:55,065.065 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 10:24:55,105.105 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 10:24:55,106.106 INFO    ] No camera update needed
[2026-06-12 10:24:55,108.108 INFO    ] Script finished. Safe exiting...
[2026-06-12 10:24:55,109.109 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 10:24:55,112.112 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 10:24:55,115.115 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 10:24:57,156.156 INFO    ] ================================================
[2026-06-12 10:24:57,171.171 INFO    ] Launching Daemon at Fri Jun 12 10:24:57 IST 2026
[2026-06-12 10:24:57,182.182 INFO    ] ================================================
[2026-06-12 10:24:57,510.510 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 10:24:57
[2026-06-12 10:24:57,823.823 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 10:24:57,953.953 INFO    ] Initializing speech engine...
[2026-06-12 10:24:57,961.961 INFO    ] 2026-06-12 10:24:57
[2026-06-12 10:24:58,176.176 INFO    ] 2026-06-12 10:24:58
[2026-06-12 10:24:58,204.204 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 10:24:58,390.390 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 10:24:58,393.393 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 10:24:58,529.529 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 10:24:58,595.595 INFO    ] time= 12/06/2026 10:24:58
[2026-06-12 10:24:58,624.624 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 10:24:58,630.630 INFO    ] Checking for existing commands in stream...
[2026-06-12 10:24:58,697.697 INFO    ] No existing commands found in stream
[2026-06-12 10:25:03,707.707 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 10:25:03,710.710 INFO    ] Waiting 2.88 seconds before fallback handling...
[2026-06-12 10:25:06,963.963 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 10:25:06,964.964 INFO    ] Checking for system updates...
[2026-06-12 10:25:06,987.987 INFO    ] 200
[2026-06-12 10:25:06,988.988 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:25:07,018.018 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 10:25:07,019.019 INFO    ] No update needed
[2026-06-12 10:25:07,021.021 INFO    ] Checking for camera pi updates...
[2026-06-12 10:25:07,042.042 INFO    ] 200
[2026-06-12 10:25:07,044.044 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:25:07,068.068 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 10:25:07,105.105 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 10:25:07,107.107 INFO    ] No camera update needed
[2026-06-12 10:25:07,108.108 INFO    ] Script finished. Safe exiting...
[2026-06-12 10:25:07,109.109 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 10:25:07,112.112 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 10:25:07,115.115 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 10:25:09,153.153 INFO    ] ================================================
[2026-06-12 10:25:09,168.168 INFO    ] Launching Daemon at Fri Jun 12 10:25:09 IST 2026
[2026-06-12 10:25:09,179.179 INFO    ] ================================================
[2026-06-12 10:25:09,523.523 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 10:25:09
[2026-06-12 10:25:09,834.834 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 10:25:09,976.976 INFO    ] Initializing speech engine...
[2026-06-12 10:25:09,986.986 INFO    ] 2026-06-12 10:25:09
[2026-06-12 10:25:10,203.203 INFO    ] 2026-06-12 10:25:10
[2026-06-12 10:25:10,234.234 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 10:25:10,378.378 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 10:25:10,436.436 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 10:25:10,580.580 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 10:25:10,616.616 INFO    ] time= 12/06/2026 10:25:10
[2026-06-12 10:25:10,666.666 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 10:25:10,690.690 INFO    ] Checking for existing commands in stream...
[2026-06-12 10:25:10,766.766 INFO    ] No existing commands found in stream
[2026-06-12 10:25:15,776.776 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 10:25:15,779.779 INFO    ] Waiting 1.44 seconds before fallback handling...
[2026-06-12 10:25:17,550.550 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 10:25:17,551.551 INFO    ] Checking for system updates...
[2026-06-12 10:25:17,573.573 INFO    ] 200
[2026-06-12 10:25:17,577.577 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:25:17,615.615 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 10:25:17,616.616 INFO    ] No update needed
[2026-06-12 10:25:17,617.617 INFO    ] Checking for camera pi updates...
[2026-06-12 10:25:17,637.637 INFO    ] 200
[2026-06-12 10:25:17,638.638 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:25:17,661.661 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 10:25:17,698.698 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 10:25:17,699.699 INFO    ] No camera update needed
[2026-06-12 10:25:17,701.701 INFO    ] Script finished. Safe exiting...
[2026-06-12 10:25:17,702.702 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 10:25:17,705.705 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 10:25:17,708.708 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 10:25:19,745.745 INFO    ] ================================================
[2026-06-12 10:25:19,761.761 INFO    ] Launching Daemon at Fri Jun 12 10:25:19 IST 2026
[2026-06-12 10:25:19,772.772 INFO    ] ================================================
[2026-06-12 10:25:20,138.138 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 10:25:20
[2026-06-12 10:25:20,450.450 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 10:25:20,581.581 INFO    ] Initializing speech engine...
[2026-06-12 10:25:20,585.585 INFO    ] 2026-06-12 10:25:20
[2026-06-12 10:25:20,800.800 INFO    ] 2026-06-12 10:25:20
[2026-06-12 10:25:20,829.829 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 10:25:21,013.013 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 10:25:21,022.022 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 10:25:21,152.152 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 10:25:21,216.216 INFO    ] time= 12/06/2026 10:25:21
[2026-06-12 10:25:21,243.243 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 10:25:21,249.249 INFO    ] Checking for existing commands in stream...
[2026-06-12 10:25:21,316.316 INFO    ] No existing commands found in stream
[2026-06-12 10:25:26,325.325 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 10:25:26,328.328 INFO    ] Waiting 0.10 seconds before fallback handling...
[2026-06-12 10:25:26,768.768 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 10:25:26,770.770 INFO    ] Checking for system updates...
[2026-06-12 10:25:26,791.791 INFO    ] 200
[2026-06-12 10:25:26,792.792 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:25:26,822.822 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 10:25:26,824.824 INFO    ] No update needed
[2026-06-12 10:25:26,825.825 INFO    ] Checking for camera pi updates...
[2026-06-12 10:25:26,845.845 INFO    ] 200
[2026-06-12 10:25:26,847.847 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:25:26,870.870 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 10:25:27,021.021 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 10:25:27,023.023 INFO    ] No camera update needed
[2026-06-12 10:25:27,024.024 INFO    ] Script finished. Safe exiting...
[2026-06-12 10:25:27,025.025 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 10:25:27,028.028 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 10:25:27,031.031 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 10:25:29,069.069 INFO    ] ================================================
[2026-06-12 10:25:29,084.084 INFO    ] Launching Daemon at Fri Jun 12 10:25:29 IST 2026
[2026-06-12 10:25:29,095.095 INFO    ] ================================================
[2026-06-12 10:25:29,446.446 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 10:25:29
[2026-06-12 10:25:29,764.764 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 10:25:29,898.898 INFO    ] Initializing speech engine...
[2026-06-12 10:25:29,904.904 INFO    ] 2026-06-12 10:25:29
[2026-06-12 10:25:30,096.096 INFO    ] 2026-06-12 10:25:30
[2026-06-12 10:25:30,141.141 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 10:25:30,301.301 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 10:25:30,302.302 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 10:25:30,402.402 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 10:25:30,403.403 INFO    ] time= 12/06/2026 10:25:30
[2026-06-12 10:25:30,405.405 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 10:25:30,406.406 INFO    ] Checking for existing commands in stream...
[2026-06-12 10:25:30,453.453 INFO    ] No existing commands found in stream
[2026-06-12 10:25:35,462.462 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 10:25:35,465.465 INFO    ] Waiting 0.21 seconds before fallback handling...
[2026-06-12 10:25:36,041.041 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 10:25:36,043.043 INFO    ] Checking for system updates...
[2026-06-12 10:25:36,065.065 INFO    ] 200
[2026-06-12 10:25:36,066.066 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:25:36,099.099 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 10:25:36,100.100 INFO    ] No update needed
[2026-06-12 10:25:36,102.102 INFO    ] Checking for camera pi updates...
[2026-06-12 10:25:36,121.121 INFO    ] 200
[2026-06-12 10:25:36,123.123 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:25:36,147.147 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 10:25:36,187.187 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 10:25:36,188.188 INFO    ] No camera update needed
[2026-06-12 10:25:36,189.189 INFO    ] Script finished. Safe exiting...
[2026-06-12 10:25:36,191.191 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 10:25:36,194.194 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 10:25:36,197.197 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 10:25:38,234.234 INFO    ] ================================================
[2026-06-12 10:25:38,250.250 INFO    ] Launching Daemon at Fri Jun 12 10:25:38 IST 2026
[2026-06-12 10:25:38,260.260 INFO    ] ================================================
[2026-06-12 10:25:38,585.585 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 10:25:38
[2026-06-12 10:25:38,895.895 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 10:25:39,025.025 INFO    ] Initializing speech engine...
[2026-06-12 10:25:39,029.029 INFO    ] 2026-06-12 10:25:39
[2026-06-12 10:25:39,247.247 INFO    ] 2026-06-12 10:25:39
[2026-06-12 10:25:39,276.276 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 10:25:39,400.400 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 10:25:39,453.453 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 10:25:39,600.600 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 10:25:39,657.657 INFO    ] time= 12/06/2026 10:25:39
[2026-06-12 10:25:39,698.698 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 10:25:39,700.700 INFO    ] Checking for existing commands in stream...
[2026-06-12 10:25:39,772.772 INFO    ] No existing commands found in stream
[2026-06-12 10:25:44,782.782 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 10:25:44,785.785 INFO    ] Waiting 0.24 seconds before fallback handling...
[2026-06-12 10:25:45,377.377 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 10:25:45,379.379 INFO    ] Checking for system updates...
[2026-06-12 10:25:45,399.399 INFO    ] 200
[2026-06-12 10:25:45,401.401 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:25:45,431.431 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 10:25:45,433.433 INFO    ] No update needed
[2026-06-12 10:25:45,434.434 INFO    ] Checking for camera pi updates...
[2026-06-12 10:25:45,454.454 INFO    ] 200
[2026-06-12 10:25:45,456.456 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:25:45,479.479 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 10:25:45,515.515 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 10:25:45,516.516 INFO    ] No camera update needed
[2026-06-12 10:25:45,517.517 INFO    ] Script finished. Safe exiting...
[2026-06-12 10:25:45,518.518 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 10:25:45,522.522 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 10:25:45,524.524 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 10:25:47,564.564 INFO    ] ================================================
[2026-06-12 10:25:47,579.579 INFO    ] Launching Daemon at Fri Jun 12 10:25:47 IST 2026
[2026-06-12 10:25:47,590.590 INFO    ] ================================================
[2026-06-12 10:25:47,933.933 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 10:25:47
[2026-06-12 10:25:48,244.244 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 10:25:48,375.375 INFO    ] Initializing speech engine...
[2026-06-12 10:25:48,378.378 INFO    ] 2026-06-12 10:25:48
[2026-06-12 10:25:48,593.593 INFO    ] 2026-06-12 10:25:48
[2026-06-12 10:25:48,621.621 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 10:25:48,774.774 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 10:25:48,807.807 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 10:25:48,935.935 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 10:25:48,996.996 INFO    ] time= 12/06/2026 10:25:48
[2026-06-12 10:25:49,030.030 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 10:25:49,035.035 INFO    ] Checking for existing commands in stream...
[2026-06-12 10:25:49,105.105 INFO    ] No existing commands found in stream
[2026-06-12 10:25:54,114.114 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 10:25:54,117.117 INFO    ] Waiting 3.23 seconds before fallback handling...
[2026-06-12 10:25:57,718.718 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 10:25:57,719.719 INFO    ] Checking for system updates...
[2026-06-12 10:25:57,740.740 INFO    ] 200
[2026-06-12 10:25:57,742.742 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:25:57,774.774 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 10:25:57,776.776 INFO    ] No update needed
[2026-06-12 10:25:57,781.781 INFO    ] Checking for camera pi updates...
[2026-06-12 10:25:57,807.807 INFO    ] 200
[2026-06-12 10:25:57,809.809 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:25:57,834.834 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 10:25:57,875.875 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 10:25:57,876.876 INFO    ] No camera update needed
[2026-06-12 10:25:57,878.878 INFO    ] Script finished. Safe exiting...
[2026-06-12 10:25:57,879.879 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 10:25:57,883.883 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 10:25:57,886.886 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 10:25:59,924.924 INFO    ] ================================================
[2026-06-12 10:25:59,939.939 INFO    ] Launching Daemon at Fri Jun 12 10:25:59 IST 2026
[2026-06-12 10:25:59,949.949 INFO    ] ================================================
[2026-06-12 10:26:00,293.293 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 10:26:00
[2026-06-12 10:26:00,606.606 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 10:26:00,750.750 INFO    ] Initializing speech engine...
[2026-06-12 10:26:00,754.754 INFO    ] 2026-06-12 10:26:00
[2026-06-12 10:26:00,960.960 INFO    ] 2026-06-12 10:26:00
[2026-06-12 10:26:00,989.989 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 10:26:01,112.112 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 10:26:01,151.151 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 10:26:01,309.309 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 10:26:01,378.378 INFO    ] time= 12/06/2026 10:26:01
[2026-06-12 10:26:01,391.391 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 10:26:01,394.394 INFO    ] Checking for existing commands in stream...
[2026-06-12 10:26:01,459.459 INFO    ] No existing commands found in stream
[2026-06-12 10:26:06,469.469 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 10:26:06,471.471 INFO    ] Waiting 3.87 seconds before fallback handling...
[2026-06-12 10:26:10,696.696 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 10:26:10,697.697 INFO    ] Checking for system updates...
[2026-06-12 10:26:10,718.718 INFO    ] 200
[2026-06-12 10:26:10,720.720 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:26:10,753.753 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 10:26:10,754.754 INFO    ] No update needed
[2026-06-12 10:26:10,756.756 INFO    ] Checking for camera pi updates...
[2026-06-12 10:26:10,776.776 INFO    ] 200
[2026-06-12 10:26:10,777.777 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:26:10,804.804 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 10:26:10,846.846 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 10:26:10,847.847 INFO    ] No camera update needed
[2026-06-12 10:26:10,848.848 INFO    ] Script finished. Safe exiting...
[2026-06-12 10:26:10,850.850 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 10:26:10,853.853 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 10:26:10,856.856 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 10:26:12,896.896 INFO    ] ================================================
[2026-06-12 10:26:12,911.911 INFO    ] Launching Daemon at Fri Jun 12 10:26:12 IST 2026
[2026-06-12 10:26:12,922.922 INFO    ] ================================================
[2026-06-12 10:26:13,250.250 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 10:26:13
[2026-06-12 10:26:13,560.560 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 10:26:13,691.691 INFO    ] Initializing speech engine...
[2026-06-12 10:26:13,699.699 INFO    ] 2026-06-12 10:26:13
[2026-06-12 10:26:13,912.912 INFO    ] 2026-06-12 10:26:13
[2026-06-12 10:26:13,940.940 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 10:26:14,124.124 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 10:26:14,133.133 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 10:26:14,261.261 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 10:26:14,328.328 INFO    ] time= 12/06/2026 10:26:14
[2026-06-12 10:26:14,352.352 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 10:26:14,358.358 INFO    ] Checking for existing commands in stream...
[2026-06-12 10:26:14,425.425 INFO    ] No existing commands found in stream
[2026-06-12 10:26:19,438.438 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 10:26:19,441.441 INFO    ] Waiting 0.29 seconds before fallback handling...
[2026-06-12 10:26:20,094.094 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 10:26:20,096.096 INFO    ] Checking for system updates...
[2026-06-12 10:26:20,116.116 INFO    ] 200
[2026-06-12 10:26:20,117.117 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:26:20,150.150 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 10:26:20,152.152 INFO    ] No update needed
[2026-06-12 10:26:20,153.153 INFO    ] Checking for camera pi updates...
[2026-06-12 10:26:20,172.172 INFO    ] 200
[2026-06-12 10:26:20,173.173 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:26:20,198.198 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 10:26:20,234.234 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 10:26:20,236.236 INFO    ] No camera update needed
[2026-06-12 10:26:20,237.237 INFO    ] Script finished. Safe exiting...
[2026-06-12 10:26:20,238.238 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 10:26:20,241.241 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 10:26:20,244.244 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 10:26:22,282.282 INFO    ] ================================================
[2026-06-12 10:26:22,297.297 INFO    ] Launching Daemon at Fri Jun 12 10:26:22 IST 2026
[2026-06-12 10:26:22,308.308 INFO    ] ================================================
[2026-06-12 10:26:22,634.634 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 10:26:22
[2026-06-12 10:26:22,947.947 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 10:26:23,089.089 INFO    ] Initializing speech engine...
[2026-06-12 10:26:23,095.095 INFO    ] 2026-06-12 10:26:23
[2026-06-12 10:26:23,300.300 INFO    ] 2026-06-12 10:26:23
[2026-06-12 10:26:23,329.329 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 10:26:23,514.514 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 10:26:23,518.518 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 10:26:23,656.656 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 10:26:23,710.710 INFO    ] time= 12/06/2026 10:26:23
[2026-06-12 10:26:23,745.745 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 10:26:23,751.751 INFO    ] Checking for existing commands in stream...
[2026-06-12 10:26:23,821.821 INFO    ] No existing commands found in stream
[2026-06-12 10:26:28,832.832 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 10:26:28,835.835 INFO    ] Waiting 3.49 seconds before fallback handling...
[2026-06-12 10:26:32,665.665 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 10:26:32,667.667 INFO    ] Checking for system updates...
[2026-06-12 10:26:32,687.687 INFO    ] 200
[2026-06-12 10:26:32,689.689 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:26:32,721.721 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 10:26:32,722.722 INFO    ] No update needed
[2026-06-12 10:26:32,723.723 INFO    ] Checking for camera pi updates...
[2026-06-12 10:26:32,742.742 INFO    ] 200
[2026-06-12 10:26:32,744.744 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:26:32,769.769 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 10:26:32,807.807 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 10:26:32,808.808 INFO    ] No camera update needed
[2026-06-12 10:26:32,810.810 INFO    ] Script finished. Safe exiting...
[2026-06-12 10:26:32,811.811 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 10:26:32,814.814 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 10:26:32,816.816 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 10:26:34,856.856 INFO    ] ================================================
[2026-06-12 10:26:34,873.873 INFO    ] Launching Daemon at Fri Jun 12 10:26:34 IST 2026
[2026-06-12 10:26:34,884.884 INFO    ] ================================================
[2026-06-12 10:26:35,239.239 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 10:26:35
[2026-06-12 10:26:35,551.551 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 10:26:35,681.681 INFO    ] Initializing speech engine...
[2026-06-12 10:26:35,685.685 INFO    ] 2026-06-12 10:26:35
[2026-06-12 10:26:35,903.903 INFO    ] 2026-06-12 10:26:35
[2026-06-12 10:26:35,932.932 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 10:26:36,117.117 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 10:26:36,121.121 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 10:26:36,258.258 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 10:26:36,317.317 INFO    ] time= 12/06/2026 10:26:36
[2026-06-12 10:26:36,350.350 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 10:26:36,352.352 INFO    ] Checking for existing commands in stream...
[2026-06-12 10:26:36,425.425 INFO    ] No existing commands found in stream
[2026-06-12 10:26:41,439.439 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 10:26:41,442.442 INFO    ] Waiting 3.80 seconds before fallback handling...
[2026-06-12 10:26:45,584.584 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 10:26:45,586.586 INFO    ] Checking for system updates...
[2026-06-12 10:26:45,606.606 INFO    ] 200
[2026-06-12 10:26:45,608.608 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:26:45,640.640 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 10:26:45,641.641 INFO    ] No update needed
[2026-06-12 10:26:45,643.643 INFO    ] Checking for camera pi updates...
[2026-06-12 10:26:45,662.662 INFO    ] 200
[2026-06-12 10:26:45,663.663 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:26:45,687.687 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 10:26:45,730.730 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 10:26:45,731.731 INFO    ] No camera update needed
[2026-06-12 10:26:45,732.732 INFO    ] Script finished. Safe exiting...
[2026-06-12 10:26:45,733.733 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 10:26:45,736.736 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 10:26:45,739.739 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 10:26:47,780.780 INFO    ] ================================================
[2026-06-12 10:26:47,796.796 INFO    ] Launching Daemon at Fri Jun 12 10:26:47 IST 2026
[2026-06-12 10:26:47,806.806 INFO    ] ================================================
[2026-06-12 10:26:48,151.151 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 10:26:48
[2026-06-12 10:26:48,467.467 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 10:26:48,614.614 INFO    ] Initializing speech engine...
[2026-06-12 10:26:48,618.618 INFO    ] 2026-06-12 10:26:48
[2026-06-12 10:26:48,806.806 INFO    ] 2026-06-12 10:26:48
[2026-06-12 10:26:48,832.832 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 10:26:48,989.989 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 10:26:49,052.052 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 10:26:49,198.198 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 10:26:49,250.250 INFO    ] time= 12/06/2026 10:26:49
[2026-06-12 10:26:49,295.295 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 10:26:49,307.307 INFO    ] Checking for existing commands in stream...
[2026-06-12 10:26:49,382.382 INFO    ] No existing commands found in stream
[2026-06-12 10:26:54,393.393 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 10:26:54,396.396 INFO    ] Waiting 0.01 seconds before fallback handling...
[2026-06-12 10:26:54,780.780 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 10:26:54,782.782 INFO    ] Checking for system updates...
[2026-06-12 10:26:54,804.804 INFO    ] 200
[2026-06-12 10:26:54,805.805 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:26:54,838.838 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 10:26:54,839.839 INFO    ] No update needed
[2026-06-12 10:26:54,841.841 INFO    ] Checking for camera pi updates...
[2026-06-12 10:26:54,862.862 INFO    ] 200
[2026-06-12 10:26:54,864.864 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:26:54,889.889 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 10:26:54,934.934 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 10:26:54,936.936 INFO    ] No camera update needed
[2026-06-12 10:26:54,937.937 INFO    ] Script finished. Safe exiting...
[2026-06-12 10:26:54,938.938 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 10:26:54,942.942 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 10:26:54,945.945 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 10:26:56,984.984 INFO    ] ================================================
[2026-06-12 10:26:57,001.001 INFO    ] Launching Daemon at Fri Jun 12 10:26:56 IST 2026
[2026-06-12 10:26:57,011.011 INFO    ] ================================================
[2026-06-12 10:26:57,361.361 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 10:26:57
[2026-06-12 10:26:57,699.699 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 10:26:57,838.838 INFO    ] Initializing speech engine...
[2026-06-12 10:26:57,846.846 INFO    ] 2026-06-12 10:26:57
[2026-06-12 10:26:58,064.064 INFO    ] 2026-06-12 10:26:58
[2026-06-12 10:26:58,093.093 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 10:26:58,228.228 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 10:26:58,282.282 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 10:26:58,419.419 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 10:26:58,487.487 INFO    ] time= 12/06/2026 10:26:58
[2026-06-12 10:26:58,510.510 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 10:26:58,517.517 INFO    ] Checking for existing commands in stream...
[2026-06-12 10:26:58,583.583 INFO    ] No existing commands found in stream
[2026-06-12 10:27:03,603.603 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 10:27:03,606.606 INFO    ] Waiting 2.75 seconds before fallback handling...
[2026-06-12 10:27:06,734.734 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 10:27:06,736.736 INFO    ] Checking for system updates...
[2026-06-12 10:27:06,757.757 INFO    ] 200
[2026-06-12 10:27:06,758.758 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:27:06,792.792 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 10:27:06,793.793 INFO    ] No update needed
[2026-06-12 10:27:06,795.795 INFO    ] Checking for camera pi updates...
[2026-06-12 10:27:06,818.818 INFO    ] 200
[2026-06-12 10:27:06,820.820 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:27:06,847.847 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 10:27:06,888.888 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 10:27:06,889.889 INFO    ] No camera update needed
[2026-06-12 10:27:06,891.891 INFO    ] Script finished. Safe exiting...
[2026-06-12 10:27:06,892.892 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 10:27:06,895.895 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 10:27:06,898.898 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 10:27:08,938.938 INFO    ] ================================================
[2026-06-12 10:27:08,954.954 INFO    ] Launching Daemon at Fri Jun 12 10:27:08 IST 2026
[2026-06-12 10:27:08,965.965 INFO    ] ================================================
[2026-06-12 10:27:09,296.296 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 10:27:09
[2026-06-12 10:27:09,613.613 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 10:27:09,748.748 INFO    ] Initializing speech engine...
[2026-06-12 10:27:09,753.753 INFO    ] 2026-06-12 10:27:09
[2026-06-12 10:27:09,983.983 INFO    ] 2026-06-12 10:27:09
[2026-06-12 10:27:10,014.014 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 10:27:10,148.148 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 10:27:10,206.206 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 10:27:10,362.362 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 10:27:10,425.425 INFO    ] time= 12/06/2026 10:27:10
[2026-06-12 10:27:10,455.455 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 10:27:10,466.466 INFO    ] Checking for existing commands in stream...
[2026-06-12 10:27:10,569.569 INFO    ] No existing commands found in stream
[2026-06-12 10:27:15,578.578 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 10:27:15,581.581 INFO    ] Waiting 1.55 seconds before fallback handling...
[2026-06-12 10:27:17,515.515 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 10:27:17,516.516 INFO    ] Checking for system updates...
[2026-06-12 10:27:17,538.538 INFO    ] 200
[2026-06-12 10:27:17,539.539 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:27:17,572.572 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 10:27:17,573.573 INFO    ] No update needed
[2026-06-12 10:27:17,574.574 INFO    ] Checking for camera pi updates...
[2026-06-12 10:27:17,594.594 INFO    ] 200
[2026-06-12 10:27:17,596.596 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:27:17,619.619 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 10:27:17,656.656 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 10:27:17,657.657 INFO    ] No camera update needed
[2026-06-12 10:27:17,658.658 INFO    ] Script finished. Safe exiting...
[2026-06-12 10:27:17,660.660 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 10:27:17,663.663 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 10:27:17,665.665 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 10:27:19,705.705 INFO    ] ================================================
[2026-06-12 10:27:19,720.720 INFO    ] Launching Daemon at Fri Jun 12 10:27:19 IST 2026
[2026-06-12 10:27:19,731.731 INFO    ] ================================================
[2026-06-12 10:27:20,050.050 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 10:27:20
[2026-06-12 10:27:20,359.359 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 10:27:20,497.497 INFO    ] Initializing speech engine...
[2026-06-12 10:27:20,507.507 INFO    ] 2026-06-12 10:27:20
[2026-06-12 10:27:20,714.714 INFO    ] 2026-06-12 10:27:20
[2026-06-12 10:27:20,743.743 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 10:27:20,866.866 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 10:27:20,929.929 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 10:27:21,064.064 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 10:27:21,121.121 INFO    ] time= 12/06/2026 10:27:21
[2026-06-12 10:27:21,159.159 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 10:27:21,165.165 INFO    ] Checking for existing commands in stream...
[2026-06-12 10:27:21,233.233 INFO    ] No existing commands found in stream
[2026-06-12 10:27:26,242.242 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 10:27:26,245.245 INFO    ] Waiting 0.55 seconds before fallback handling...
[2026-06-12 10:27:27,183.183 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 10:27:27,185.185 INFO    ] Checking for system updates...
[2026-06-12 10:27:27,206.206 INFO    ] 200
[2026-06-12 10:27:27,207.207 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:27:27,240.240 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 10:27:27,242.242 INFO    ] No update needed
[2026-06-12 10:27:27,243.243 INFO    ] Checking for camera pi updates...
[2026-06-12 10:27:27,266.266 INFO    ] 200
[2026-06-12 10:27:27,267.267 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:27:27,293.293 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 10:27:27,330.330 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 10:27:27,331.331 INFO    ] No camera update needed
[2026-06-12 10:27:27,333.333 INFO    ] Script finished. Safe exiting...
[2026-06-12 10:27:27,334.334 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 10:27:27,337.337 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 10:27:27,341.341 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 10:27:29,381.381 INFO    ] ================================================
[2026-06-12 10:27:29,397.397 INFO    ] Launching Daemon at Fri Jun 12 10:27:29 IST 2026
[2026-06-12 10:27:29,407.407 INFO    ] ================================================
[2026-06-12 10:27:29,743.743 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 10:27:29
[2026-06-12 10:27:30,060.060 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 10:27:30,204.204 INFO    ] Initializing speech engine...
[2026-06-12 10:27:30,209.209 INFO    ] 2026-06-12 10:27:30
[2026-06-12 10:27:30,414.414 INFO    ] 2026-06-12 10:27:30
[2026-06-12 10:27:30,442.442 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 10:27:30,627.627 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 10:27:30,631.631 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 10:27:30,765.765 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 10:27:30,829.829 INFO    ] time= 12/06/2026 10:27:30
[2026-06-12 10:27:30,857.857 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 10:27:30,863.863 INFO    ] Checking for existing commands in stream...
[2026-06-12 10:27:30,953.953 INFO    ] No existing commands found in stream
[2026-06-12 10:27:35,962.962 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 10:27:35,965.965 INFO    ] Waiting 2.71 seconds before fallback handling...
[2026-06-12 10:27:39,020.020 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 10:27:39,022.022 INFO    ] Checking for system updates...
[2026-06-12 10:27:39,042.042 INFO    ] 200
[2026-06-12 10:27:39,043.043 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:27:39,074.074 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 10:27:39,075.075 INFO    ] No update needed
[2026-06-12 10:27:39,077.077 INFO    ] Checking for camera pi updates...
[2026-06-12 10:27:39,100.100 INFO    ] 200
[2026-06-12 10:27:39,101.101 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:27:39,126.126 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 10:27:39,161.161 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 10:27:39,163.163 INFO    ] No camera update needed
[2026-06-12 10:27:39,164.164 INFO    ] Script finished. Safe exiting...
[2026-06-12 10:27:39,165.165 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 10:27:39,168.168 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 10:27:39,171.171 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 10:27:41,210.210 INFO    ] ================================================
[2026-06-12 10:27:41,224.224 INFO    ] Launching Daemon at Fri Jun 12 10:27:41 IST 2026
[2026-06-12 10:27:41,235.235 INFO    ] ================================================
[2026-06-12 10:27:41,579.579 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 10:27:41
[2026-06-12 10:27:41,896.896 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 10:27:42,034.034 INFO    ] Initializing speech engine...
[2026-06-12 10:27:42,044.044 INFO    ] 2026-06-12 10:27:42
[2026-06-12 10:27:42,249.249 INFO    ] 2026-06-12 10:27:42
[2026-06-12 10:27:42,277.277 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 10:27:42,459.459 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 10:27:42,468.468 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 10:27:42,591.591 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 10:27:42,646.646 INFO    ] time= 12/06/2026 10:27:42
[2026-06-12 10:27:42,688.688 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 10:27:42,695.695 INFO    ] Checking for existing commands in stream...
[2026-06-12 10:27:42,762.762 INFO    ] No existing commands found in stream
[2026-06-12 10:27:47,771.771 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 10:27:47,774.774 INFO    ] Waiting 2.64 seconds before fallback handling...
[2026-06-12 10:27:50,772.772 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 10:27:50,774.774 INFO    ] Checking for system updates...
[2026-06-12 10:27:50,796.796 INFO    ] 200
[2026-06-12 10:27:50,798.798 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:27:50,833.833 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 10:27:50,834.834 INFO    ] No update needed
[2026-06-12 10:27:50,836.836 INFO    ] Checking for camera pi updates...
[2026-06-12 10:27:50,856.856 INFO    ] 200
[2026-06-12 10:27:50,858.858 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:27:50,883.883 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 10:27:50,923.923 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 10:27:50,924.924 INFO    ] No camera update needed
[2026-06-12 10:27:50,925.925 INFO    ] Script finished. Safe exiting...
[2026-06-12 10:27:50,927.927 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 10:27:50,929.929 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 10:27:50,932.932 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 10:27:52,973.973 INFO    ] ================================================
[2026-06-12 10:27:52,989.989 INFO    ] Launching Daemon at Fri Jun 12 10:27:52 IST 2026
[2026-06-12 10:27:53,000.000 INFO    ] ================================================
[2026-06-12 10:27:53,407.407 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 10:27:53
[2026-06-12 10:27:53,745.745 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 10:27:53,896.896 INFO    ] Initializing speech engine...
[2026-06-12 10:27:53,902.902 INFO    ] 2026-06-12 10:27:53
[2026-06-12 10:27:54,109.109 INFO    ] 2026-06-12 10:27:54
[2026-06-12 10:27:54,138.138 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 10:27:54,321.321 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 10:27:54,325.325 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 10:27:54,458.458 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 10:27:54,526.526 INFO    ] time= 12/06/2026 10:27:54
[2026-06-12 10:27:54,553.553 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 10:27:54,560.560 INFO    ] Checking for existing commands in stream...
[2026-06-12 10:27:54,627.627 INFO    ] No existing commands found in stream
[2026-06-12 10:27:59,642.642 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 10:27:59,645.645 INFO    ] Waiting 2.76 seconds before fallback handling...
[2026-06-12 10:28:02,732.732 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 10:28:02,734.734 INFO    ] Checking for system updates...
[2026-06-12 10:28:02,758.758 INFO    ] 200
[2026-06-12 10:28:02,759.759 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:28:02,795.795 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 10:28:02,797.797 INFO    ] No update needed
[2026-06-12 10:28:02,798.798 INFO    ] Checking for camera pi updates...
[2026-06-12 10:28:02,820.820 INFO    ] 200
[2026-06-12 10:28:02,822.822 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:28:02,848.848 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 10:28:02,899.899 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 10:28:02,901.901 INFO    ] No camera update needed
[2026-06-12 10:28:02,902.902 INFO    ] Script finished. Safe exiting...
[2026-06-12 10:28:02,904.904 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 10:28:02,907.907 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 10:28:02,910.910 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 10:28:04,949.949 INFO    ] ================================================
[2026-06-12 10:28:04,964.964 INFO    ] Launching Daemon at Fri Jun 12 10:28:04 IST 2026
[2026-06-12 10:28:04,976.976 INFO    ] ================================================
[2026-06-12 10:28:05,330.330 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 10:28:05
[2026-06-12 10:28:05,646.646 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 10:28:05,791.791 INFO    ] Initializing speech engine...
[2026-06-12 10:28:05,795.795 INFO    ] 2026-06-12 10:28:05
[2026-06-12 10:28:06,011.011 INFO    ] 2026-06-12 10:28:05
[2026-06-12 10:28:06,041.041 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 10:28:06,223.223 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 10:28:06,226.226 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 10:28:06,363.363 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 10:28:06,429.429 INFO    ] time= 12/06/2026 10:28:06
[2026-06-12 10:28:06,453.453 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 10:28:06,459.459 INFO    ] Checking for existing commands in stream...
[2026-06-12 10:28:06,526.526 INFO    ] No existing commands found in stream
[2026-06-12 10:28:11,535.535 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 10:28:11,538.538 INFO    ] Waiting 1.94 seconds before fallback handling...
[2026-06-12 10:28:13,800.800 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 10:28:13,801.801 INFO    ] Checking for system updates...
[2026-06-12 10:28:13,823.823 INFO    ] 200
[2026-06-12 10:28:13,824.824 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:28:13,857.857 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 10:28:13,858.858 INFO    ] No update needed
[2026-06-12 10:28:13,859.859 INFO    ] Checking for camera pi updates...
[2026-06-12 10:28:13,880.880 INFO    ] 200
[2026-06-12 10:28:13,885.885 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:28:13,910.910 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 10:28:13,952.952 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 10:28:13,954.954 INFO    ] No camera update needed
[2026-06-12 10:28:13,955.955 INFO    ] Script finished. Safe exiting...
[2026-06-12 10:28:13,956.956 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 10:28:13,959.959 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 10:28:13,962.962 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 10:28:16,002.002 INFO    ] ================================================
[2026-06-12 10:28:16,017.017 INFO    ] Launching Daemon at Fri Jun 12 10:28:16 IST 2026
[2026-06-12 10:28:16,028.028 INFO    ] ================================================
[2026-06-12 10:28:16,383.383 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 10:28:16
[2026-06-12 10:28:16,718.718 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 10:28:16,871.871 INFO    ] Initializing speech engine...
[2026-06-12 10:28:16,875.875 INFO    ] 2026-06-12 10:28:16
[2026-06-12 10:28:17,083.083 INFO    ] 2026-06-12 10:28:17
[2026-06-12 10:28:17,114.114 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 10:28:17,297.297 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 10:28:17,307.307 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 10:28:17,486.486 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 10:28:17,523.523 INFO    ] time= 12/06/2026 10:28:17
[2026-06-12 10:28:17,530.530 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 10:28:17,532.532 INFO    ] Checking for existing commands in stream...
[2026-06-12 10:28:17,598.598 INFO    ] No existing commands found in stream
[2026-06-12 10:28:22,623.623 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 10:28:22,631.631 INFO    ] Waiting 1.37 seconds before fallback handling...
[2026-06-12 10:28:24,380.380 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 10:28:24,382.382 INFO    ] Checking for system updates...
[2026-06-12 10:28:24,404.404 INFO    ] 200
[2026-06-12 10:28:24,405.405 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:28:24,441.441 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 10:28:24,442.442 INFO    ] No update needed
[2026-06-12 10:28:24,444.444 INFO    ] Checking for camera pi updates...
[2026-06-12 10:28:24,467.467 INFO    ] 200
[2026-06-12 10:28:24,469.469 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:28:24,494.494 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 10:28:24,532.532 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 10:28:24,533.533 INFO    ] No camera update needed
[2026-06-12 10:28:24,535.535 INFO    ] Script finished. Safe exiting...
[2026-06-12 10:28:24,536.536 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 10:28:24,540.540 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 10:28:24,543.543 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 10:28:26,581.581 INFO    ] ================================================
[2026-06-12 10:28:26,596.596 INFO    ] Launching Daemon at Fri Jun 12 10:28:26 IST 2026
[2026-06-12 10:28:26,607.607 INFO    ] ================================================
[2026-06-12 10:28:26,938.938 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 10:28:26
[2026-06-12 10:28:27,254.254 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 10:28:27,392.392 INFO    ] Initializing speech engine...
[2026-06-12 10:28:27,401.401 INFO    ] 2026-06-12 10:28:27
[2026-06-12 10:28:27,605.605 INFO    ] 2026-06-12 10:28:27
[2026-06-12 10:28:27,634.634 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 10:28:27,816.816 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 10:28:27,826.826 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 10:28:27,953.953 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 10:28:28,019.019 INFO    ] time= 12/06/2026 10:28:27
[2026-06-12 10:28:28,045.045 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 10:28:28,047.047 INFO    ] Checking for existing commands in stream...
[2026-06-12 10:28:28,119.119 INFO    ] No existing commands found in stream
[2026-06-12 10:28:33,133.133 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 10:28:33,136.136 INFO    ] Waiting 2.19 seconds before fallback handling...
[2026-06-12 10:28:35,688.688 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 10:28:35,690.690 INFO    ] Checking for system updates...
[2026-06-12 10:28:35,711.711 INFO    ] 200
[2026-06-12 10:28:35,712.712 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:28:35,747.747 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 10:28:35,749.749 INFO    ] No update needed
[2026-06-12 10:28:35,750.750 INFO    ] Checking for camera pi updates...
[2026-06-12 10:28:35,769.769 INFO    ] 200
[2026-06-12 10:28:35,771.771 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:28:35,794.794 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 10:28:35,835.835 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 10:28:35,836.836 INFO    ] No camera update needed
[2026-06-12 10:28:35,838.838 INFO    ] Script finished. Safe exiting...
[2026-06-12 10:28:35,839.839 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 10:28:35,842.842 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 10:28:35,845.845 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 10:28:37,884.884 INFO    ] ================================================
[2026-06-12 10:28:37,899.899 INFO    ] Launching Daemon at Fri Jun 12 10:28:37 IST 2026
[2026-06-12 10:28:37,910.910 INFO    ] ================================================
[2026-06-12 10:28:38,254.254 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 10:28:38
[2026-06-12 10:28:38,566.566 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 10:28:38,709.709 INFO    ] Initializing speech engine...
[2026-06-12 10:28:38,714.714 INFO    ] 2026-06-12 10:28:38
[2026-06-12 10:28:38,919.919 INFO    ] 2026-06-12 10:28:38
[2026-06-12 10:28:38,948.948 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 10:28:39,133.133 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 10:28:39,144.144 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 10:28:39,267.267 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 10:28:39,333.333 INFO    ] time= 12/06/2026 10:28:39
[2026-06-12 10:28:39,367.367 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 10:28:39,373.373 INFO    ] Checking for existing commands in stream...
[2026-06-12 10:28:39,465.465 INFO    ] No existing commands found in stream
[2026-06-12 10:28:44,474.474 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 10:28:44,477.477 INFO    ] Waiting 2.01 seconds before fallback handling...
[2026-06-12 10:28:46,837.837 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 10:28:46,839.839 INFO    ] Checking for system updates...
[2026-06-12 10:28:46,860.860 INFO    ] 200
[2026-06-12 10:28:46,861.861 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:28:46,894.894 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 10:28:46,895.895 INFO    ] No update needed
[2026-06-12 10:28:46,897.897 INFO    ] Checking for camera pi updates...
[2026-06-12 10:28:46,919.919 INFO    ] 200
[2026-06-12 10:28:46,920.920 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:28:46,948.948 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 10:28:46,988.988 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 10:28:46,990.990 INFO    ] No camera update needed
[2026-06-12 10:28:46,991.991 INFO    ] Script finished. Safe exiting...
[2026-06-12 10:28:46,993.993 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 10:28:46,996.996 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 10:28:46,999.999 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 10:28:49,039.039 INFO    ] ================================================
[2026-06-12 10:28:49,054.054 INFO    ] Launching Daemon at Fri Jun 12 10:28:49 IST 2026
[2026-06-12 10:28:49,065.065 INFO    ] ================================================
[2026-06-12 10:28:49,421.421 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 10:28:49
[2026-06-12 10:28:49,757.757 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 10:28:49,910.910 INFO    ] Initializing speech engine...
[2026-06-12 10:28:49,915.915 INFO    ] 2026-06-12 10:28:49
[2026-06-12 10:28:50,119.119 INFO    ] 2026-06-12 10:28:50
[2026-06-12 10:28:50,149.149 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 10:28:50,330.330 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 10:28:50,340.340 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 10:28:50,467.467 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 10:28:50,524.524 INFO    ] time= 12/06/2026 10:28:50
[2026-06-12 10:28:50,560.560 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 10:28:50,567.567 INFO    ] Checking for existing commands in stream...
[2026-06-12 10:28:50,657.657 INFO    ] No existing commands found in stream
[2026-06-12 10:28:55,671.671 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 10:28:55,675.675 INFO    ] Waiting 3.57 seconds before fallback handling...
[2026-06-12 10:28:59,554.554 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 10:28:59,556.556 INFO    ] Checking for system updates...
[2026-06-12 10:28:59,578.578 INFO    ] 200
[2026-06-12 10:28:59,580.580 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:28:59,615.615 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 10:28:59,617.617 INFO    ] No update needed
[2026-06-12 10:28:59,618.618 INFO    ] Checking for camera pi updates...
[2026-06-12 10:28:59,642.642 INFO    ] 200
[2026-06-12 10:28:59,644.644 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:28:59,667.667 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 10:28:59,705.705 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 10:28:59,707.707 INFO    ] No camera update needed
[2026-06-12 10:28:59,708.708 INFO    ] Script finished. Safe exiting...
[2026-06-12 10:28:59,710.710 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 10:28:59,713.713 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 10:28:59,716.716 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 10:29:01,750.750 INFO    ] ================================================
[2026-06-12 10:29:01,763.763 INFO    ] Launching Daemon at Fri Jun 12 10:29:01 IST 2026
[2026-06-12 10:29:01,773.773 INFO    ] ================================================
[2026-06-12 10:29:02,170.170 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 10:29:02
[2026-06-12 10:29:02,508.508 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 10:29:02,654.654 INFO    ] Initializing speech engine...
[2026-06-12 10:29:02,664.664 INFO    ] 2026-06-12 10:29:02
[2026-06-12 10:29:02,876.876 INFO    ] 2026-06-12 10:29:02
[2026-06-12 10:29:02,905.905 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 10:29:03,029.029 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 10:29:03,093.093 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 10:29:03,226.226 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 10:29:03,297.297 INFO    ] time= 12/06/2026 10:29:03
[2026-06-12 10:29:03,326.326 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 10:29:03,332.332 INFO    ] Checking for existing commands in stream...
[2026-06-12 10:29:03,400.400 INFO    ] No existing commands found in stream
[2026-06-12 10:29:08,409.409 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 10:29:08,413.413 INFO    ] Waiting 2.28 seconds before fallback handling...
[2026-06-12 10:29:11,068.068 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 10:29:11,070.070 INFO    ] Checking for system updates...
[2026-06-12 10:29:11,092.092 INFO    ] 200
[2026-06-12 10:29:11,094.094 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:29:11,124.124 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 10:29:11,126.126 INFO    ] No update needed
[2026-06-12 10:29:11,127.127 INFO    ] Checking for camera pi updates...
[2026-06-12 10:29:11,146.146 INFO    ] 200
[2026-06-12 10:29:11,148.148 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:29:11,173.173 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 10:29:11,220.220 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 10:29:11,222.222 INFO    ] No camera update needed
[2026-06-12 10:29:11,223.223 INFO    ] Script finished. Safe exiting...
[2026-06-12 10:29:11,225.225 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 10:29:11,228.228 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 10:29:11,231.231 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 10:29:13,272.272 INFO    ] ================================================
[2026-06-12 10:29:13,287.287 INFO    ] Launching Daemon at Fri Jun 12 10:29:13 IST 2026
[2026-06-12 10:29:13,298.298 INFO    ] ================================================
[2026-06-12 10:29:13,646.646 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 10:29:13
[2026-06-12 10:29:13,985.985 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 10:29:14,136.136 INFO    ] Initializing speech engine...
[2026-06-12 10:29:14,142.142 INFO    ] 2026-06-12 10:29:14
[2026-06-12 10:29:14,350.350 INFO    ] 2026-06-12 10:29:14
[2026-06-12 10:29:14,379.379 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 10:29:14,564.564 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 10:29:14,574.574 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 10:29:14,698.698 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 10:29:14,756.756 INFO    ] time= 12/06/2026 10:29:14
[2026-06-12 10:29:14,793.793 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 10:29:14,800.800 INFO    ] Checking for existing commands in stream...
[2026-06-12 10:29:14,890.890 INFO    ] No existing commands found in stream
[2026-06-12 10:29:19,900.900 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 10:29:19,903.903 INFO    ] Waiting 0.09 seconds before fallback handling...
[2026-06-12 10:29:20,348.348 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 10:29:20,349.349 INFO    ] Checking for system updates...
[2026-06-12 10:29:20,370.370 INFO    ] 200
[2026-06-12 10:29:20,372.372 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:29:20,405.405 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 10:29:20,406.406 INFO    ] No update needed
[2026-06-12 10:29:20,408.408 INFO    ] Checking for camera pi updates...
[2026-06-12 10:29:20,430.430 INFO    ] 200
[2026-06-12 10:29:20,431.431 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:29:20,457.457 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 10:29:20,493.493 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 10:29:20,494.494 INFO    ] No camera update needed
[2026-06-12 10:29:20,496.496 INFO    ] Script finished. Safe exiting...
[2026-06-12 10:29:20,497.497 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 10:29:20,500.500 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 10:29:20,503.503 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 10:29:22,543.543 INFO    ] ================================================
[2026-06-12 10:29:22,559.559 INFO    ] Launching Daemon at Fri Jun 12 10:29:22 IST 2026
[2026-06-12 10:29:22,570.570 INFO    ] ================================================
[2026-06-12 10:29:22,926.926 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 10:29:22
[2026-06-12 10:29:23,264.264 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 10:29:23,402.402 INFO    ] Initializing speech engine...
[2026-06-12 10:29:23,410.410 INFO    ] 2026-06-12 10:29:23
[2026-06-12 10:29:23,626.626 INFO    ] 2026-06-12 10:29:23
[2026-06-12 10:29:23,655.655 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 10:29:23,838.838 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 10:29:23,847.847 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 10:29:23,998.998 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 10:29:24,046.046 INFO    ] time= 12/06/2026 10:29:24
[2026-06-12 10:29:24,068.068 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 10:29:24,074.074 INFO    ] Checking for existing commands in stream...
[2026-06-12 10:29:24,141.141 INFO    ] No existing commands found in stream
[2026-06-12 10:29:29,156.156 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 10:29:29,159.159 INFO    ] Waiting 3.47 seconds before fallback handling...
[2026-06-12 10:29:33,038.038 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 10:29:33,040.040 INFO    ] Checking for system updates...
[2026-06-12 10:29:33,062.062 INFO    ] 200
[2026-06-12 10:29:33,064.064 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:29:33,097.097 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 10:29:33,098.098 INFO    ] No update needed
[2026-06-12 10:29:33,100.100 INFO    ] Checking for camera pi updates...
[2026-06-12 10:29:33,120.120 INFO    ] 200
[2026-06-12 10:29:33,121.121 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:29:33,145.145 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 10:29:33,292.292 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 10:29:33,294.294 INFO    ] No camera update needed
[2026-06-12 10:29:33,295.295 INFO    ] Script finished. Safe exiting...
[2026-06-12 10:29:33,296.296 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 10:29:33,300.300 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 10:29:33,303.303 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 10:29:35,345.345 INFO    ] ================================================
[2026-06-12 10:29:35,361.361 INFO    ] Launching Daemon at Fri Jun 12 10:29:35 IST 2026
[2026-06-12 10:29:35,372.372 INFO    ] ================================================
[2026-06-12 10:29:35,733.733 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 10:29:35
[2026-06-12 10:29:36,073.073 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 10:29:36,224.224 INFO    ] Initializing speech engine...
[2026-06-12 10:29:36,230.230 INFO    ] 2026-06-12 10:29:36
[2026-06-12 10:29:36,436.436 INFO    ] 2026-06-12 10:29:36
[2026-06-12 10:29:36,468.468 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 10:29:36,656.656 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 10:29:36,665.665 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 10:29:36,796.796 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 10:29:36,865.865 INFO    ] time= 12/06/2026 10:29:36
[2026-06-12 10:29:36,890.890 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 10:29:36,897.897 INFO    ] Checking for existing commands in stream...
[2026-06-12 10:29:36,965.965 INFO    ] No existing commands found in stream
[2026-06-12 10:29:41,974.974 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 10:29:41,977.977 INFO    ] Waiting 3.90 seconds before fallback handling...
[2026-06-12 10:29:46,248.248 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 10:29:46,249.249 INFO    ] Checking for system updates...
[2026-06-12 10:29:46,270.270 INFO    ] 200
[2026-06-12 10:29:46,272.272 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:29:46,302.302 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 10:29:46,303.303 INFO    ] No update needed
[2026-06-12 10:29:46,305.305 INFO    ] Checking for camera pi updates...
[2026-06-12 10:29:46,324.324 INFO    ] 200
[2026-06-12 10:29:46,325.325 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:29:46,348.348 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 10:29:46,395.395 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 10:29:46,396.396 INFO    ] No camera update needed
[2026-06-12 10:29:46,397.397 INFO    ] Script finished. Safe exiting...
[2026-06-12 10:29:46,398.398 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 10:29:46,401.401 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 10:29:46,404.404 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 10:29:48,434.434 INFO    ] ================================================
[2026-06-12 10:29:48,443.443 INFO    ] Launching Daemon at Fri Jun 12 10:29:48 IST 2026
[2026-06-12 10:29:48,449.449 INFO    ] ================================================
[2026-06-12 10:29:48,755.755 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 10:29:48
[2026-06-12 10:29:49,068.068 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 10:29:49,199.199 INFO    ] Initializing speech engine...
[2026-06-12 10:29:49,203.203 INFO    ] 2026-06-12 10:29:49
[2026-06-12 10:29:49,421.421 INFO    ] 2026-06-12 10:29:49
[2026-06-12 10:29:49,450.450 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 10:29:49,574.574 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 10:29:49,627.627 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 10:29:49,777.777 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 10:29:49,836.836 INFO    ] time= 12/06/2026 10:29:49
[2026-06-12 10:29:49,869.869 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 10:29:49,876.876 INFO    ] Checking for existing commands in stream...
[2026-06-12 10:29:49,943.943 INFO    ] No existing commands found in stream
[2026-06-12 10:29:54,952.952 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 10:29:54,955.955 INFO    ] Waiting 2.36 seconds before fallback handling...
[2026-06-12 10:29:57,664.664 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 10:29:57,665.665 INFO    ] Checking for system updates...
[2026-06-12 10:29:57,686.686 INFO    ] 200
[2026-06-12 10:29:57,688.688 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:29:57,718.718 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 10:29:57,720.720 INFO    ] No update needed
[2026-06-12 10:29:57,721.721 INFO    ] Checking for camera pi updates...
[2026-06-12 10:29:57,742.742 INFO    ] 200
[2026-06-12 10:29:57,743.743 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:29:57,769.769 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 10:29:57,809.809 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 10:29:57,811.811 INFO    ] No camera update needed
[2026-06-12 10:29:57,812.812 INFO    ] Script finished. Safe exiting...
[2026-06-12 10:29:57,814.814 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 10:29:57,817.817 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 10:29:57,820.820 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 10:29:59,859.859 INFO    ] ================================================
[2026-06-12 10:29:59,875.875 INFO    ] Launching Daemon at Fri Jun 12 10:29:59 IST 2026
[2026-06-12 10:29:59,886.886 INFO    ] ================================================
[2026-06-12 10:30:00,257.257 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 10:30:00
[2026-06-12 10:30:00,572.572 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 10:30:00,715.715 INFO    ] Initializing speech engine...
[2026-06-12 10:30:00,720.720 INFO    ] 2026-06-12 10:30:00
[2026-06-12 10:30:00,926.926 INFO    ] 2026-06-12 10:30:00
[2026-06-12 10:30:00,953.953 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 10:30:01,137.137 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 10:30:01,147.147 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 10:30:01,308.308 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 10:30:01,323.323 INFO    ] time= 12/06/2026 10:30:01
[2026-06-12 10:30:01,326.326 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 10:30:01,328.328 INFO    ] Checking for existing commands in stream...
[2026-06-12 10:30:01,430.430 INFO    ] No existing commands found in stream
[2026-06-12 10:30:06,440.440 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 10:30:06,443.443 INFO    ] Waiting 0.19 seconds before fallback handling...
[2026-06-12 10:30:08,375.375 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 10:30:08,377.377 INFO    ] Checking for system updates...
[2026-06-12 10:30:08,425.425 INFO    ] 200
[2026-06-12 10:30:08,428.428 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:30:08,477.477 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 10:30:08,479.479 INFO    ] No update needed
[2026-06-12 10:30:08,480.480 INFO    ] Checking for camera pi updates...
[2026-06-12 10:30:08,504.504 INFO    ] 200
[2026-06-12 10:30:08,505.505 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:30:08,533.533 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 10:30:08,570.570 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 10:30:08,572.572 INFO    ] No camera update needed
[2026-06-12 10:30:08,574.574 INFO    ] Script finished. Safe exiting...
[2026-06-12 10:30:08,575.575 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 10:30:08,579.579 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 10:30:08,583.583 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 10:30:10,623.623 INFO    ] ================================================
[2026-06-12 10:30:10,638.638 INFO    ] Launching Daemon at Fri Jun 12 10:30:10 IST 2026
[2026-06-12 10:30:10,649.649 INFO    ] ================================================
[2026-06-12 10:30:11,011.011 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 10:30:11
[2026-06-12 10:30:11,325.325 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 10:30:11,467.467 INFO    ] Initializing speech engine...
[2026-06-12 10:30:11,475.475 INFO    ] 2026-06-12 10:30:11
[2026-06-12 10:30:11,693.693 INFO    ] 2026-06-12 10:30:11
[2026-06-12 10:30:11,723.723 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 10:30:11,855.855 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 10:30:11,900.900 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 10:30:12,066.066 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 10:30:12,113.113 INFO    ] time= 12/06/2026 10:30:12
[2026-06-12 10:30:12,158.158 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 10:30:12,175.175 INFO    ] Checking for existing commands in stream...
[2026-06-12 10:30:12,253.253 INFO    ] No existing commands found in stream
[2026-06-12 10:30:17,262.262 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 10:30:17,265.265 INFO    ] Waiting 1.94 seconds before fallback handling...
[2026-06-12 10:30:19,555.555 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 10:30:19,557.557 INFO    ] Checking for system updates...
[2026-06-12 10:30:19,577.577 INFO    ] 200
[2026-06-12 10:30:19,579.579 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:30:19,610.610 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 10:30:19,611.611 INFO    ] No update needed
[2026-06-12 10:30:19,613.613 INFO    ] Checking for camera pi updates...
[2026-06-12 10:30:19,632.632 INFO    ] 200
[2026-06-12 10:30:19,633.633 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:30:19,658.658 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 10:30:19,694.694 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 10:30:19,695.695 INFO    ] No camera update needed
[2026-06-12 10:30:19,696.696 INFO    ] Script finished. Safe exiting...
[2026-06-12 10:30:19,697.697 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 10:30:19,700.700 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 10:30:19,703.703 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 10:30:21,743.743 INFO    ] ================================================
[2026-06-12 10:30:21,758.758 INFO    ] Launching Daemon at Fri Jun 12 10:30:21 IST 2026
[2026-06-12 10:30:21,769.769 INFO    ] ================================================
[2026-06-12 10:30:22,119.119 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 10:30:22
[2026-06-12 10:30:22,437.437 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 10:30:22,583.583 INFO    ] Initializing speech engine...
[2026-06-12 10:30:22,587.587 INFO    ] 2026-06-12 10:30:22
[2026-06-12 10:30:22,793.793 INFO    ] 2026-06-12 10:30:22
[2026-06-12 10:30:22,822.822 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 10:30:22,944.944 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 10:30:23,002.002 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 10:30:23,144.144 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 10:30:23,208.208 INFO    ] time= 12/06/2026 10:30:23
[2026-06-12 10:30:23,235.235 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 10:30:23,241.241 INFO    ] Checking for existing commands in stream...
[2026-06-12 10:30:23,308.308 INFO    ] No existing commands found in stream
[2026-06-12 10:30:28,317.317 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 10:30:28,320.320 INFO    ] Waiting 0.23 seconds before fallback handling...
[2026-06-12 10:30:28,924.924 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 10:30:28,925.925 INFO    ] Checking for system updates...
[2026-06-12 10:30:28,946.946 INFO    ] 200
[2026-06-12 10:30:28,948.948 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:30:28,978.978 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 10:30:28,979.979 INFO    ] No update needed
[2026-06-12 10:30:28,980.980 INFO    ] Checking for camera pi updates...
[2026-06-12 10:30:29,002.002 INFO    ] 200
[2026-06-12 10:30:29,004.004 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:30:29,028.028 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 10:30:29,074.074 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 10:30:29,075.075 INFO    ] No camera update needed
[2026-06-12 10:30:29,076.076 INFO    ] Script finished. Safe exiting...
[2026-06-12 10:30:29,077.077 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 10:30:29,080.080 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 10:30:29,083.083 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 10:30:31,123.123 INFO    ] ================================================
[2026-06-12 10:30:31,138.138 INFO    ] Launching Daemon at Fri Jun 12 10:30:31 IST 2026
[2026-06-12 10:30:31,149.149 INFO    ] ================================================
[2026-06-12 10:30:31,504.504 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 10:30:31
[2026-06-12 10:30:31,851.851 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 10:30:32,007.007 INFO    ] Initializing speech engine...
[2026-06-12 10:30:32,013.013 INFO    ] 2026-06-12 10:30:32
[2026-06-12 10:30:32,239.239 INFO    ] 2026-06-12 10:30:32
[2026-06-12 10:30:32,268.268 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 10:30:32,391.391 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 10:30:32,454.454 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 10:30:32,591.591 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 10:30:32,650.650 INFO    ] time= 12/06/2026 10:30:32
[2026-06-12 10:30:32,682.682 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 10:30:32,688.688 INFO    ] Checking for existing commands in stream...
[2026-06-12 10:30:32,756.756 INFO    ] No existing commands found in stream
[2026-06-12 10:30:37,764.764 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 10:30:37,767.767 INFO    ] Waiting 3.41 seconds before fallback handling...
[2026-06-12 10:30:41,554.554 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 10:30:41,555.555 INFO    ] Checking for system updates...
[2026-06-12 10:30:41,576.576 INFO    ] 200
[2026-06-12 10:30:41,577.577 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:30:41,610.610 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 10:30:41,611.611 INFO    ] No update needed
[2026-06-12 10:30:41,613.613 INFO    ] Checking for camera pi updates...
[2026-06-12 10:30:41,633.633 INFO    ] 200
[2026-06-12 10:30:41,635.635 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:30:41,658.658 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 10:30:41,694.694 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 10:30:41,696.696 INFO    ] No camera update needed
[2026-06-12 10:30:41,697.697 INFO    ] Script finished. Safe exiting...
[2026-06-12 10:30:41,698.698 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 10:30:41,701.701 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 10:30:41,704.704 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 10:30:43,744.744 INFO    ] ================================================
[2026-06-12 10:30:43,759.759 INFO    ] Launching Daemon at Fri Jun 12 10:30:43 IST 2026
[2026-06-12 10:30:43,770.770 INFO    ] ================================================
[2026-06-12 10:30:44,161.161 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 10:30:44
[2026-06-12 10:30:44,504.504 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 10:30:44,657.657 INFO    ] Initializing speech engine...
[2026-06-12 10:30:44,662.662 INFO    ] 2026-06-12 10:30:44
[2026-06-12 10:30:44,872.872 INFO    ] 2026-06-12 10:30:44
[2026-06-12 10:30:44,902.902 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 10:30:45,089.089 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 10:30:45,094.094 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 10:30:45,233.233 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 10:30:45,301.301 INFO    ] time= 12/06/2026 10:30:45
[2026-06-12 10:30:45,326.326 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 10:30:45,332.332 INFO    ] Checking for existing commands in stream...
[2026-06-12 10:30:45,400.400 INFO    ] No existing commands found in stream
[2026-06-12 10:30:50,420.420 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 10:30:50,423.423 INFO    ] Waiting 0.07 seconds before fallback handling...
[2026-06-12 10:30:50,827.827 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 10:30:50,828.828 INFO    ] Checking for system updates...
[2026-06-12 10:30:50,850.850 INFO    ] 200
[2026-06-12 10:30:50,851.851 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:30:50,882.882 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 10:30:50,884.884 INFO    ] No update needed
[2026-06-12 10:30:50,885.885 INFO    ] Checking for camera pi updates...
[2026-06-12 10:30:50,906.906 INFO    ] 200
[2026-06-12 10:30:50,907.907 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:30:50,930.930 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 10:30:50,979.979 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 10:30:50,981.981 INFO    ] No camera update needed
[2026-06-12 10:30:50,982.982 INFO    ] Script finished. Safe exiting...
[2026-06-12 10:30:50,984.984 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 10:30:50,987.987 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 10:30:50,990.990 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 10:30:53,031.031 INFO    ] ================================================
[2026-06-12 10:30:53,046.046 INFO    ] Launching Daemon at Fri Jun 12 10:30:53 IST 2026
[2026-06-12 10:30:53,058.058 INFO    ] ================================================
[2026-06-12 10:30:53,423.423 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 10:30:53
[2026-06-12 10:30:53,741.741 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 10:30:53,875.875 INFO    ] Initializing speech engine...
[2026-06-12 10:30:53,879.879 INFO    ] 2026-06-12 10:30:53
[2026-06-12 10:30:54,079.079 INFO    ] 2026-06-12 10:30:54
[2026-06-12 10:30:54,120.120 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 10:30:54,278.278 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 10:30:54,341.341 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 10:30:54,488.488 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 10:30:54,556.556 INFO    ] time= 12/06/2026 10:30:54
[2026-06-12 10:30:54,591.591 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 10:30:54,597.597 INFO    ] Checking for existing commands in stream...
[2026-06-12 10:30:54,674.674 INFO    ] No existing commands found in stream
[2026-06-12 10:30:59,685.685 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 10:30:59,688.688 INFO    ] Waiting 0.08 seconds before fallback handling...
[2026-06-12 10:31:00,093.093 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 10:31:00,094.094 INFO    ] Checking for system updates...
[2026-06-12 10:31:00,117.117 INFO    ] 200
[2026-06-12 10:31:00,118.118 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:31:00,151.151 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 10:31:00,152.152 INFO    ] No update needed
[2026-06-12 10:31:00,153.153 INFO    ] Checking for camera pi updates...
[2026-06-12 10:31:00,173.173 INFO    ] 200
[2026-06-12 10:31:00,174.174 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:31:00,197.197 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 10:31:00,241.241 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 10:31:00,242.242 INFO    ] No camera update needed
[2026-06-12 10:31:00,243.243 INFO    ] Script finished. Safe exiting...
[2026-06-12 10:31:00,245.245 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 10:31:00,248.248 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 10:31:00,250.250 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 10:31:02,277.277 INFO    ] ================================================
[2026-06-12 10:31:02,286.286 INFO    ] Launching Daemon at Fri Jun 12 10:31:02 IST 2026
[2026-06-12 10:31:02,292.292 INFO    ] ================================================
[2026-06-12 10:31:02,593.593 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 10:31:02
[2026-06-12 10:31:02,904.904 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 10:31:03,047.047 INFO    ] Initializing speech engine...
[2026-06-12 10:31:03,053.053 INFO    ] 2026-06-12 10:31:03
[2026-06-12 10:31:03,260.260 INFO    ] 2026-06-12 10:31:03
[2026-06-12 10:31:03,288.288 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 10:31:03,476.476 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 10:31:03,486.486 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 10:31:03,615.615 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 10:31:03,683.683 INFO    ] time= 12/06/2026 10:31:03
[2026-06-12 10:31:03,708.708 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 10:31:03,713.713 INFO    ] Checking for existing commands in stream...
[2026-06-12 10:31:03,782.782 INFO    ] No existing commands found in stream
[2026-06-12 10:31:08,791.791 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 10:31:08,793.793 INFO    ] Waiting 1.80 seconds before fallback handling...
[2026-06-12 10:31:10,971.971 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 10:31:10,972.972 INFO    ] Checking for system updates...
[2026-06-12 10:31:10,994.994 INFO    ] 200
[2026-06-12 10:31:10,995.995 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:31:11,027.027 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 10:31:11,028.028 INFO    ] No update needed
[2026-06-12 10:31:11,030.030 INFO    ] Checking for camera pi updates...
[2026-06-12 10:31:11,049.049 INFO    ] 200
[2026-06-12 10:31:11,051.051 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:31:11,074.074 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 10:31:11,111.111 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 10:31:11,112.112 INFO    ] No camera update needed
[2026-06-12 10:31:11,113.113 INFO    ] Script finished. Safe exiting...
[2026-06-12 10:31:11,115.115 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 10:31:11,117.117 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 10:31:11,120.120 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 10:31:13,161.161 INFO    ] ================================================
[2026-06-12 10:31:13,176.176 INFO    ] Launching Daemon at Fri Jun 12 10:31:13 IST 2026
[2026-06-12 10:31:13,187.187 INFO    ] ================================================
[2026-06-12 10:31:13,525.525 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 10:31:13
[2026-06-12 10:31:13,836.836 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 10:31:13,979.979 INFO    ] Initializing speech engine...
[2026-06-12 10:31:13,985.985 INFO    ] 2026-06-12 10:31:13
[2026-06-12 10:31:14,194.194 INFO    ] 2026-06-12 10:31:14
[2026-06-12 10:31:14,222.222 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 10:31:14,410.410 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 10:31:14,419.419 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 10:31:14,544.544 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 10:31:14,595.595 INFO    ] time= 12/06/2026 10:31:14
[2026-06-12 10:31:14,630.630 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 10:31:14,646.646 INFO    ] Checking for existing commands in stream...
[2026-06-12 10:31:14,717.717 INFO    ] No existing commands found in stream
[2026-06-12 10:31:19,727.727 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 10:31:19,730.730 INFO    ] Waiting 0.65 seconds before fallback handling...
[2026-06-12 10:31:20,772.772 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 10:31:20,773.773 INFO    ] Checking for system updates...
[2026-06-12 10:31:20,795.795 INFO    ] 200
[2026-06-12 10:31:20,796.796 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:31:20,827.827 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 10:31:20,828.828 INFO    ] No update needed
[2026-06-12 10:31:20,829.829 INFO    ] Checking for camera pi updates...
[2026-06-12 10:31:20,849.849 INFO    ] 200
[2026-06-12 10:31:20,851.851 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:31:20,875.875 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 10:31:20,912.912 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 10:31:20,913.913 INFO    ] No camera update needed
[2026-06-12 10:31:20,915.915 INFO    ] Script finished. Safe exiting...
[2026-06-12 10:31:20,916.916 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 10:31:20,919.919 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 10:31:20,923.923 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 10:31:22,963.963 INFO    ] ================================================
[2026-06-12 10:31:22,978.978 INFO    ] Launching Daemon at Fri Jun 12 10:31:22 IST 2026
[2026-06-12 10:31:22,989.989 INFO    ] ================================================
[2026-06-12 10:31:23,337.337 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 10:31:23
[2026-06-12 10:31:23,650.650 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 10:31:23,783.783 INFO    ] Initializing speech engine...
[2026-06-12 10:31:23,788.788 INFO    ] 2026-06-12 10:31:23
[2026-06-12 10:31:24,016.016 INFO    ] 2026-06-12 10:31:23
[2026-06-12 10:31:24,049.049 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 10:31:24,245.245 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 10:31:24,249.249 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 10:31:24,389.389 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 10:31:24,440.440 INFO    ] time= 12/06/2026 10:31:24
[2026-06-12 10:31:24,485.485 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 10:31:24,501.501 INFO    ] Checking for existing commands in stream...
[2026-06-12 10:31:24,572.572 INFO    ] No existing commands found in stream
[2026-06-12 10:31:29,582.582 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 10:31:29,585.585 INFO    ] Waiting 1.27 seconds before fallback handling...
[2026-06-12 10:31:31,213.213 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 10:31:31,215.215 INFO    ] Checking for system updates...
[2026-06-12 10:31:31,243.243 INFO    ] 200
[2026-06-12 10:31:31,245.245 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:31:31,280.280 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 10:31:31,282.282 INFO    ] No update needed
[2026-06-12 10:31:31,283.283 INFO    ] Checking for camera pi updates...
[2026-06-12 10:31:31,305.305 INFO    ] 200
[2026-06-12 10:31:31,307.307 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:31:31,335.335 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 10:31:31,360.360 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 10:31:31,362.362 INFO    ] No camera update needed
[2026-06-12 10:31:31,363.363 INFO    ] Script finished. Safe exiting...
[2026-06-12 10:31:31,365.365 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 10:31:31,369.369 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 10:31:31,372.372 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 10:31:33,404.404 INFO    ] ================================================
[2026-06-12 10:31:33,419.419 INFO    ] Launching Daemon at Fri Jun 12 10:31:33 IST 2026
[2026-06-12 10:31:33,431.431 INFO    ] ================================================
[2026-06-12 10:31:33,775.775 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 10:31:33
[2026-06-12 10:31:34,089.089 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 10:31:34,222.222 INFO    ] Initializing speech engine...
[2026-06-12 10:31:34,227.227 INFO    ] 2026-06-12 10:31:34
[2026-06-12 10:31:34,457.457 INFO    ] 2026-06-12 10:31:34
[2026-06-12 10:31:34,487.487 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 10:31:34,618.618 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 10:31:34,662.662 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 10:31:34,833.833 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 10:31:34,885.885 INFO    ] time= 12/06/2026 10:31:34
[2026-06-12 10:31:34,925.925 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 10:31:34,937.937 INFO    ] Checking for existing commands in stream...
[2026-06-12 10:31:35,014.014 INFO    ] No existing commands found in stream
[2026-06-12 10:31:40,023.023 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 10:31:40,026.026 INFO    ] Waiting 0.58 seconds before fallback handling...
[2026-06-12 10:31:40,966.966 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 10:31:40,968.968 INFO    ] Checking for system updates...
[2026-06-12 10:31:40,989.989 INFO    ] 200
[2026-06-12 10:31:40,990.990 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:31:41,023.023 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 10:31:41,025.025 INFO    ] No update needed
[2026-06-12 10:31:41,026.026 INFO    ] Checking for camera pi updates...
[2026-06-12 10:31:41,048.048 INFO    ] 200
[2026-06-12 10:31:41,050.050 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:31:41,074.074 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 10:31:41,222.222 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 10:31:41,224.224 INFO    ] No camera update needed
[2026-06-12 10:31:41,225.225 INFO    ] Script finished. Safe exiting...
[2026-06-12 10:31:41,227.227 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 10:31:41,230.230 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 10:31:41,233.233 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 10:31:43,273.273 INFO    ] ================================================
[2026-06-12 10:31:43,289.289 INFO    ] Launching Daemon at Fri Jun 12 10:31:43 IST 2026
[2026-06-12 10:31:43,301.301 INFO    ] ================================================
[2026-06-12 10:31:43,628.628 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 10:31:43
[2026-06-12 10:31:43,940.940 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 10:31:44,073.073 INFO    ] Initializing speech engine...
[2026-06-12 10:31:44,088.088 INFO    ] 2026-06-12 10:31:44
[2026-06-12 10:31:44,302.302 INFO    ] 2026-06-12 10:31:44
[2026-06-12 10:31:44,332.332 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 10:31:44,455.455 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 10:31:44,518.518 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 10:31:44,650.650 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 10:31:44,701.701 INFO    ] time= 12/06/2026 10:31:44
[2026-06-12 10:31:44,741.741 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 10:31:44,756.756 INFO    ] Checking for existing commands in stream...
[2026-06-12 10:31:44,823.823 INFO    ] No existing commands found in stream
[2026-06-12 10:31:49,838.838 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 10:31:49,841.841 INFO    ] Waiting 1.48 seconds before fallback handling...
[2026-06-12 10:31:51,679.679 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 10:31:51,680.680 INFO    ] Checking for system updates...
[2026-06-12 10:31:51,701.701 INFO    ] 200
[2026-06-12 10:31:51,703.703 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:31:51,733.733 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 10:31:51,734.734 INFO    ] No update needed
[2026-06-12 10:31:51,736.736 INFO    ] Checking for camera pi updates...
[2026-06-12 10:31:51,755.755 INFO    ] 200
[2026-06-12 10:31:51,756.756 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:31:51,783.783 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 10:31:51,824.824 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 10:31:51,825.825 INFO    ] No camera update needed
[2026-06-12 10:31:51,827.827 INFO    ] Script finished. Safe exiting...
[2026-06-12 10:31:51,828.828 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 10:31:51,831.831 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 10:31:51,834.834 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 10:31:53,873.873 INFO    ] ================================================
[2026-06-12 10:31:53,889.889 INFO    ] Launching Daemon at Fri Jun 12 10:31:53 IST 2026
[2026-06-12 10:31:53,900.900 INFO    ] ================================================
[2026-06-12 10:31:54,267.267 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 10:31:54
[2026-06-12 10:31:54,602.602 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 10:31:54,753.753 INFO    ] Initializing speech engine...
[2026-06-12 10:31:54,758.758 INFO    ] 2026-06-12 10:31:54
[2026-06-12 10:31:54,966.966 INFO    ] 2026-06-12 10:31:54
[2026-06-12 10:31:54,995.995 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 10:31:55,178.178 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 10:31:55,187.187 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 10:31:55,318.318 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 10:31:55,384.384 INFO    ] time= 12/06/2026 10:31:55
[2026-06-12 10:31:55,408.408 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 10:31:55,414.414 INFO    ] Checking for existing commands in stream...
[2026-06-12 10:31:55,481.481 INFO    ] No existing commands found in stream
[2026-06-12 10:32:00,495.495 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 10:32:00,499.499 INFO    ] Waiting 1.26 seconds before fallback handling...
[2026-06-12 10:32:02,114.114 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 10:32:02,116.116 INFO    ] Checking for system updates...
[2026-06-12 10:32:02,139.139 INFO    ] 200
[2026-06-12 10:32:02,141.141 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:32:02,180.180 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 10:32:02,182.182 INFO    ] No update needed
[2026-06-12 10:32:02,184.184 INFO    ] Checking for camera pi updates...
[2026-06-12 10:32:02,206.206 INFO    ] 200
[2026-06-12 10:32:02,207.207 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:32:02,235.235 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 10:32:02,259.259 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 10:32:02,260.260 INFO    ] No camera update needed
[2026-06-12 10:32:02,262.262 INFO    ] Script finished. Safe exiting...
[2026-06-12 10:32:02,263.263 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 10:32:02,266.266 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 10:32:02,268.268 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 10:32:04,308.308 INFO    ] ================================================
[2026-06-12 10:32:04,324.324 INFO    ] Launching Daemon at Fri Jun 12 10:32:04 IST 2026
[2026-06-12 10:32:04,335.335 INFO    ] ================================================
[2026-06-12 10:32:04,669.669 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 10:32:04
[2026-06-12 10:32:04,981.981 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 10:32:05,111.111 INFO    ] Initializing speech engine...
[2026-06-12 10:32:05,115.115 INFO    ] 2026-06-12 10:32:05
[2026-06-12 10:32:05,332.332 INFO    ] 2026-06-12 10:32:05
[2026-06-12 10:32:05,360.360 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 10:32:05,555.555 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 10:32:05,559.559 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 10:32:05,696.696 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 10:32:05,763.763 INFO    ] time= 12/06/2026 10:32:05
[2026-06-12 10:32:05,786.786 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 10:32:05,793.793 INFO    ] Checking for existing commands in stream...
[2026-06-12 10:32:05,860.860 INFO    ] No existing commands found in stream
[2026-06-12 10:32:10,874.874 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 10:32:10,877.877 INFO    ] Waiting 1.27 seconds before fallback handling...
[2026-06-12 10:32:13,666.666 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 10:32:13,668.668 INFO    ] Checking for system updates...
[2026-06-12 10:32:13,704.704 INFO    ] 200
[2026-06-12 10:32:13,707.707 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:32:13,765.765 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 10:32:13,767.767 INFO    ] No update needed
[2026-06-12 10:32:13,769.769 INFO    ] Checking for camera pi updates...
[2026-06-12 10:32:13,802.802 INFO    ] 200
[2026-06-12 10:32:13,805.805 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:32:13,828.828 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 10:32:13,864.864 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 10:32:13,866.866 INFO    ] No camera update needed
[2026-06-12 10:32:13,867.867 INFO    ] Script finished. Safe exiting...
[2026-06-12 10:32:13,868.868 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 10:32:13,871.871 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 10:32:13,874.874 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 10:32:15,913.913 INFO    ] ================================================
[2026-06-12 10:32:15,929.929 INFO    ] Launching Daemon at Fri Jun 12 10:32:15 IST 2026
[2026-06-12 10:32:15,940.940 INFO    ] ================================================
[2026-06-12 10:32:16,269.269 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 10:32:16
[2026-06-12 10:32:16,581.581 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 10:32:16,711.711 INFO    ] Initializing speech engine...
[2026-06-12 10:32:16,715.715 INFO    ] 2026-06-12 10:32:16
[2026-06-12 10:32:16,932.932 INFO    ] 2026-06-12 10:32:16
[2026-06-12 10:32:16,960.960 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 10:32:17,144.144 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 10:32:17,152.152 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 10:32:17,274.274 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 10:32:17,330.330 INFO    ] time= 12/06/2026 10:32:17
[2026-06-12 10:32:17,353.353 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 10:32:17,374.374 INFO    ] Checking for existing commands in stream...
[2026-06-12 10:32:17,446.446 INFO    ] No existing commands found in stream
[2026-06-12 10:32:22,454.454 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 10:32:22,457.457 INFO    ] Waiting 2.80 seconds before fallback handling...
[2026-06-12 10:32:25,686.686 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 10:32:25,687.687 INFO    ] Checking for system updates...
[2026-06-12 10:32:25,708.708 INFO    ] 200
[2026-06-12 10:32:25,709.709 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:32:25,741.741 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 10:32:25,743.743 INFO    ] No update needed
[2026-06-12 10:32:25,744.744 INFO    ] Checking for camera pi updates...
[2026-06-12 10:32:25,765.765 INFO    ] 200
[2026-06-12 10:32:25,766.766 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:32:25,792.792 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 10:32:25,829.829 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 10:32:25,831.831 INFO    ] No camera update needed
[2026-06-12 10:32:25,832.832 INFO    ] Script finished. Safe exiting...
[2026-06-12 10:32:25,833.833 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 10:32:25,837.837 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 10:32:25,840.840 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 10:32:27,878.878 INFO    ] ================================================
[2026-06-12 10:32:27,893.893 INFO    ] Launching Daemon at Fri Jun 12 10:32:27 IST 2026
[2026-06-12 10:32:27,904.904 INFO    ] ================================================
[2026-06-12 10:32:28,252.252 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 10:32:28
[2026-06-12 10:32:28,568.568 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 10:32:28,712.712 INFO    ] Initializing speech engine...
[2026-06-12 10:32:28,717.717 INFO    ] 2026-06-12 10:32:28
[2026-06-12 10:32:28,922.922 INFO    ] 2026-06-12 10:32:28
[2026-06-12 10:32:28,950.950 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 10:32:29,133.133 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 10:32:29,137.137 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 10:32:29,270.270 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 10:32:29,327.327 INFO    ] time= 12/06/2026 10:32:29
[2026-06-12 10:32:29,364.364 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 10:32:29,371.371 INFO    ] Checking for existing commands in stream...
[2026-06-12 10:32:29,438.438 INFO    ] No existing commands found in stream
[2026-06-12 10:32:34,452.452 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 10:32:34,455.455 INFO    ] Waiting 0.18 seconds before fallback handling...
[2026-06-12 10:32:34,976.976 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 10:32:34,978.978 INFO    ] Checking for system updates...
[2026-06-12 10:32:34,998.998 INFO    ] 200
[2026-06-12 10:32:35,000.000 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:32:35,032.032 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 10:32:35,033.033 INFO    ] No update needed
[2026-06-12 10:32:35,035.035 INFO    ] Checking for camera pi updates...
[2026-06-12 10:32:35,054.054 INFO    ] 200
[2026-06-12 10:32:35,055.055 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:32:35,081.081 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 10:32:35,117.117 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 10:32:35,119.119 INFO    ] No camera update needed
[2026-06-12 10:32:35,120.120 INFO    ] Script finished. Safe exiting...
[2026-06-12 10:32:35,121.121 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 10:32:35,124.124 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 10:32:35,127.127 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 10:32:37,166.166 INFO    ] ================================================
[2026-06-12 10:32:37,181.181 INFO    ] Launching Daemon at Fri Jun 12 10:32:37 IST 2026
[2026-06-12 10:32:37,192.192 INFO    ] ================================================
[2026-06-12 10:32:37,531.531 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 10:32:37
[2026-06-12 10:32:37,842.842 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 10:32:37,973.973 INFO    ] Initializing speech engine...
[2026-06-12 10:32:37,980.980 INFO    ] 2026-06-12 10:32:37
[2026-06-12 10:32:38,193.193 INFO    ] 2026-06-12 10:32:38
[2026-06-12 10:32:38,222.222 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 10:32:38,405.405 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 10:32:38,414.414 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 10:32:38,543.543 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 10:32:38,609.609 INFO    ] time= 12/06/2026 10:32:38
[2026-06-12 10:32:38,633.633 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 10:32:38,639.639 INFO    ] Checking for existing commands in stream...
[2026-06-12 10:32:38,705.705 INFO    ] No existing commands found in stream
[2026-06-12 10:32:43,714.714 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 10:32:43,717.717 INFO    ] Waiting 2.31 seconds before fallback handling...
[2026-06-12 10:32:46,348.348 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 10:32:46,350.350 INFO    ] Checking for system updates...
[2026-06-12 10:32:46,393.393 INFO    ] 200
[2026-06-12 10:32:46,395.395 INFO    ] {"msg": "Status of machine", "state": "STATE_HEALTH_CHECK", "status": true}
[2026-06-12 10:32:46,396.396 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping update check
[2026-06-12 10:32:46,398.398 INFO    ] Checking for camera pi updates...
[2026-06-12 10:32:46,423.423 INFO    ] 200
[2026-06-12 10:32:46,424.424 INFO    ] {"msg": "Status of machine", "state": "STATE_HEALTH_CHECK", "status": true}
[2026-06-12 10:32:46,426.426 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping camera update check
[2026-06-12 10:32:46,427.427 INFO    ] Script finished. Safe exiting...
[2026-06-12 10:32:46,428.428 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 10:32:46,432.432 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 10:32:46,434.434 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 10:32:48,458.458 INFO    ] ================================================
[2026-06-12 10:32:48,467.467 INFO    ] Launching Daemon at Fri Jun 12 10:32:48 IST 2026
[2026-06-12 10:32:48,474.474 INFO    ] ================================================
[2026-06-12 10:32:48,785.785 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 10:32:48
[2026-06-12 10:32:49,106.106 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 10:32:49,261.261 INFO    ] Initializing speech engine...
[2026-06-12 10:32:49,275.275 INFO    ] 2026-06-12 10:32:49
[2026-06-12 10:32:49,490.490 INFO    ] 2026-06-12 10:32:49
[2026-06-12 10:32:49,518.518 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 10:32:49,702.702 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 10:32:49,712.712 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 10:32:49,848.848 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 10:32:49,910.910 INFO    ] time= 12/06/2026 10:32:49
[2026-06-12 10:32:49,934.934 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 10:32:49,940.940 INFO    ] Checking for existing commands in stream...
[2026-06-12 10:32:50,007.007 INFO    ] No existing commands found in stream
[2026-06-12 10:32:55,022.022 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 10:32:55,025.025 INFO    ] Waiting 0.80 seconds before fallback handling...
[2026-06-12 10:32:56,219.219 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 10:32:56,221.221 INFO    ] Checking for system updates...
[2026-06-12 10:32:56,242.242 INFO    ] 200
[2026-06-12 10:32:56,243.243 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:32:56,274.274 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 10:32:56,275.275 INFO    ] No update needed
[2026-06-12 10:32:56,277.277 INFO    ] Checking for camera pi updates...
[2026-06-12 10:32:56,297.297 INFO    ] 200
[2026-06-12 10:32:56,298.298 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:32:56,323.323 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 10:32:56,361.361 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 10:32:56,362.362 INFO    ] No camera update needed
[2026-06-12 10:32:56,364.364 INFO    ] Script finished. Safe exiting...
[2026-06-12 10:32:56,365.365 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 10:32:56,368.368 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 10:32:56,371.371 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 10:32:58,411.411 INFO    ] ================================================
[2026-06-12 10:32:58,426.426 INFO    ] Launching Daemon at Fri Jun 12 10:32:58 IST 2026
[2026-06-12 10:32:58,437.437 INFO    ] ================================================
[2026-06-12 10:32:58,791.791 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 10:32:58
[2026-06-12 10:32:59,108.108 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 10:32:59,251.251 INFO    ] Initializing speech engine...
[2026-06-12 10:32:59,256.256 INFO    ] 2026-06-12 10:32:59
[2026-06-12 10:32:59,461.461 INFO    ] 2026-06-12 10:32:59
[2026-06-12 10:32:59,489.489 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 10:32:59,673.673 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 10:32:59,682.682 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 10:32:59,811.811 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 10:32:59,870.870 INFO    ] time= 12/06/2026 10:32:59
[2026-06-12 10:32:59,901.901 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 10:32:59,908.908 INFO    ] Checking for existing commands in stream...
[2026-06-12 10:32:59,975.975 INFO    ] No existing commands found in stream
[2026-06-12 10:33:04,989.989 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 10:33:04,992.992 INFO    ] Waiting 3.09 seconds before fallback handling...
[2026-06-12 10:33:08,448.448 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 10:33:08,449.449 INFO    ] Checking for system updates...
[2026-06-12 10:33:08,471.471 INFO    ] 200
[2026-06-12 10:33:08,473.473 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:33:08,506.506 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 10:33:08,508.508 INFO    ] No update needed
[2026-06-12 10:33:08,509.509 INFO    ] Checking for camera pi updates...
[2026-06-12 10:33:08,529.529 INFO    ] 200
[2026-06-12 10:33:08,531.531 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:33:08,558.558 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 10:33:08,603.603 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 10:33:08,604.604 INFO    ] No camera update needed
[2026-06-12 10:33:08,605.605 INFO    ] Script finished. Safe exiting...
[2026-06-12 10:33:08,607.607 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 10:33:08,610.610 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 10:33:08,613.613 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 10:33:10,652.652 INFO    ] ================================================
[2026-06-12 10:33:10,667.667 INFO    ] Launching Daemon at Fri Jun 12 10:33:10 IST 2026
[2026-06-12 10:33:10,678.678 INFO    ] ================================================
[2026-06-12 10:33:11,041.041 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 10:33:11
[2026-06-12 10:33:11,352.352 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 10:33:11,484.484 INFO    ] Initializing speech engine...
[2026-06-12 10:33:11,491.491 INFO    ] 2026-06-12 10:33:11
[2026-06-12 10:33:11,707.707 INFO    ] 2026-06-12 10:33:11
[2026-06-12 10:33:11,736.736 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 10:33:11,922.922 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 10:33:11,925.925 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 10:33:12,059.059 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 10:33:12,121.121 INFO    ] time= 12/06/2026 10:33:12
[2026-06-12 10:33:12,156.156 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 10:33:12,163.163 INFO    ] Checking for existing commands in stream...
[2026-06-12 10:33:12,230.230 INFO    ] No existing commands found in stream
[2026-06-12 10:33:17,239.239 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 10:33:17,241.241 INFO    ] Waiting 0.20 seconds before fallback handling...
[2026-06-12 10:33:17,786.786 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 10:33:17,787.787 INFO    ] Checking for system updates...
[2026-06-12 10:33:17,809.809 INFO    ] 200
[2026-06-12 10:33:17,811.811 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:33:17,843.843 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 10:33:17,844.844 INFO    ] No update needed
[2026-06-12 10:33:17,845.845 INFO    ] Checking for camera pi updates...
[2026-06-12 10:33:17,866.866 INFO    ] 200
[2026-06-12 10:33:17,867.867 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:33:17,890.890 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 10:33:17,932.932 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 10:33:17,934.934 INFO    ] No camera update needed
[2026-06-12 10:33:17,935.935 INFO    ] Script finished. Safe exiting...
[2026-06-12 10:33:17,936.936 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 10:33:17,939.939 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 10:33:17,942.942 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 10:33:19,982.982 INFO    ] ================================================
[2026-06-12 10:33:20,997.997 INFO    ] Launching Daemon at Fri Jun 12 10:33:19 IST 2026
[2026-06-12 10:33:20,008.008 INFO    ] ================================================
[2026-06-12 10:33:20,394.394 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 10:33:20
[2026-06-12 10:33:20,728.728 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 10:33:20,877.877 INFO    ] Initializing speech engine...
[2026-06-12 10:33:20,883.883 INFO    ] 2026-06-12 10:33:20
[2026-06-12 10:33:21,087.087 INFO    ] 2026-06-12 10:33:21
[2026-06-12 10:33:21,118.118 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 10:33:21,275.275 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 10:33:21,304.304 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 10:33:21,447.447 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 10:33:21,509.509 INFO    ] time= 12/06/2026 10:33:21
[2026-06-12 10:33:21,532.532 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 10:33:21,539.539 INFO    ] Checking for existing commands in stream...
[2026-06-12 10:33:21,606.606 INFO    ] No existing commands found in stream
[2026-06-12 10:33:26,615.615 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 10:33:26,618.618 INFO    ] Waiting 3.22 seconds before fallback handling...
[2026-06-12 10:33:30,195.195 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 10:33:30,197.197 INFO    ] Checking for system updates...
[2026-06-12 10:33:30,218.218 INFO    ] 200
[2026-06-12 10:33:30,220.220 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:33:30,250.250 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 10:33:30,251.251 INFO    ] No update needed
[2026-06-12 10:33:30,253.253 INFO    ] Checking for camera pi updates...
[2026-06-12 10:33:30,275.275 INFO    ] 200
[2026-06-12 10:33:30,277.277 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:33:30,300.300 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 10:33:30,336.336 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 10:33:30,338.338 INFO    ] No camera update needed
[2026-06-12 10:33:30,339.339 INFO    ] Script finished. Safe exiting...
[2026-06-12 10:33:30,340.340 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 10:33:30,343.343 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 10:33:30,346.346 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 10:33:32,376.376 INFO    ] ================================================
[2026-06-12 10:33:32,385.385 INFO    ] Launching Daemon at Fri Jun 12 10:33:32 IST 2026
[2026-06-12 10:33:32,391.391 INFO    ] ================================================
[2026-06-12 10:33:32,739.739 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 10:33:32
[2026-06-12 10:33:33,051.051 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 10:33:33,181.181 INFO    ] Initializing speech engine...
[2026-06-12 10:33:33,189.189 INFO    ] 2026-06-12 10:33:33
[2026-06-12 10:33:33,399.399 INFO    ] 2026-06-12 10:33:33
[2026-06-12 10:33:33,428.428 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 10:33:33,610.610 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 10:33:33,614.614 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 10:33:33,749.749 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 10:33:33,808.808 INFO    ] time= 12/06/2026 10:33:33
[2026-06-12 10:33:33,839.839 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 10:33:33,846.846 INFO    ] Checking for existing commands in stream...
[2026-06-12 10:33:33,911.911 INFO    ] No existing commands found in stream
[2026-06-12 10:33:38,921.921 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 10:33:38,924.924 INFO    ] Waiting 2.89 seconds before fallback handling...
[2026-06-12 10:33:42,156.156 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 10:33:42,157.157 INFO    ] Checking for system updates...
[2026-06-12 10:33:42,178.178 INFO    ] 200
[2026-06-12 10:33:42,180.180 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:33:42,213.213 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 10:33:42,215.215 INFO    ] No update needed
[2026-06-12 10:33:42,216.216 INFO    ] Checking for camera pi updates...
[2026-06-12 10:33:42,239.239 INFO    ] 200
[2026-06-12 10:33:42,241.241 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:33:42,264.264 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 10:33:42,303.303 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 10:33:42,305.305 INFO    ] No camera update needed
[2026-06-12 10:33:42,306.306 INFO    ] Script finished. Safe exiting...
[2026-06-12 10:33:42,308.308 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 10:33:42,311.311 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 10:33:42,314.314 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 10:33:44,354.354 INFO    ] ================================================
[2026-06-12 10:33:44,369.369 INFO    ] Launching Daemon at Fri Jun 12 10:33:44 IST 2026
[2026-06-12 10:33:44,379.379 INFO    ] ================================================
[2026-06-12 10:33:44,763.763 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 10:33:44
[2026-06-12 10:33:45,080.080 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 10:33:45,224.224 INFO    ] Initializing speech engine...
[2026-06-12 10:33:45,229.229 INFO    ] 2026-06-12 10:33:45
[2026-06-12 10:33:45,437.437 INFO    ] 2026-06-12 10:33:45
[2026-06-12 10:33:45,465.465 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 10:33:45,647.647 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 10:33:45,650.650 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 10:33:45,785.785 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 10:33:45,852.852 INFO    ] time= 12/06/2026 10:33:45
[2026-06-12 10:33:45,876.876 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 10:33:45,882.882 INFO    ] Checking for existing commands in stream...
[2026-06-12 10:33:45,949.949 INFO    ] No existing commands found in stream
[2026-06-12 10:33:50,963.963 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 10:33:50,965.965 INFO    ] Waiting 2.32 seconds before fallback handling...
[2026-06-12 10:33:53,778.778 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 10:33:53,780.780 INFO    ] Checking for system updates...
[2026-06-12 10:33:53,802.802 INFO    ] 200
[2026-06-12 10:33:53,803.803 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:33:53,836.836 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 10:33:53,837.837 INFO    ] No update needed
[2026-06-12 10:33:53,838.838 INFO    ] Checking for camera pi updates...
[2026-06-12 10:33:53,860.860 INFO    ] 200
[2026-06-12 10:33:53,861.861 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:33:53,887.887 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 10:33:54,028.028 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 10:33:54,029.029 INFO    ] No camera update needed
[2026-06-12 10:33:54,031.031 INFO    ] Script finished. Safe exiting...
[2026-06-12 10:33:54,032.032 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 10:33:54,035.035 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 10:33:54,038.038 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 10:33:56,079.079 INFO    ] ================================================
[2026-06-12 10:33:56,094.094 INFO    ] Launching Daemon at Fri Jun 12 10:33:56 IST 2026
[2026-06-12 10:33:56,105.105 INFO    ] ================================================
[2026-06-12 10:33:56,465.465 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 10:33:56
[2026-06-12 10:33:56,782.782 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 10:33:56,928.928 INFO    ] Initializing speech engine...
[2026-06-12 10:33:56,933.933 INFO    ] 2026-06-12 10:33:56
[2026-06-12 10:33:57,134.134 INFO    ] 2026-06-12 10:33:57
[2026-06-12 10:33:57,162.162 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 10:33:57,346.346 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 10:33:57,355.355 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 10:33:57,484.484 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 10:33:57,548.548 INFO    ] time= 12/06/2026 10:33:57
[2026-06-12 10:33:57,575.575 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 10:33:57,582.582 INFO    ] Checking for existing commands in stream...
[2026-06-12 10:33:57,648.648 INFO    ] No existing commands found in stream
[2026-06-12 10:34:02,662.662 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 10:34:02,664.664 INFO    ] Waiting 1.94 seconds before fallback handling...
[2026-06-12 10:34:04,946.946 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 10:34:04,947.947 INFO    ] Checking for system updates...
[2026-06-12 10:34:04,968.968 INFO    ] 200
[2026-06-12 10:34:04,969.969 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:34:04,999.999 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 10:34:05,001.001 INFO    ] No update needed
[2026-06-12 10:34:05,002.002 INFO    ] Checking for camera pi updates...
[2026-06-12 10:34:05,021.021 INFO    ] 200
[2026-06-12 10:34:05,023.023 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:34:05,046.046 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 10:34:05,088.088 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 10:34:05,090.090 INFO    ] No camera update needed
[2026-06-12 10:34:05,091.091 INFO    ] Script finished. Safe exiting...
[2026-06-12 10:34:05,092.092 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 10:34:05,095.095 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 10:34:05,098.098 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 10:34:07,137.137 INFO    ] ================================================
[2026-06-12 10:34:07,152.152 INFO    ] Launching Daemon at Fri Jun 12 10:34:07 IST 2026
[2026-06-12 10:34:07,163.163 INFO    ] ================================================
[2026-06-12 10:34:07,525.525 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 10:34:07
[2026-06-12 10:34:07,843.843 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 10:34:07,976.976 INFO    ] Initializing speech engine...
[2026-06-12 10:34:07,979.979 INFO    ] 2026-06-12 10:34:07
[2026-06-12 10:34:08,172.172 INFO    ] 2026-06-12 10:34:08
[2026-06-12 10:34:08,218.218 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 10:34:08,380.380 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 10:34:08,412.412 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 10:34:08,568.568 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 10:34:08,600.600 INFO    ] time= 12/06/2026 10:34:08
[2026-06-12 10:34:08,659.659 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 10:34:08,690.690 INFO    ] Checking for existing commands in stream...
[2026-06-12 10:34:08,773.773 INFO    ] No existing commands found in stream
[2026-06-12 10:34:13,782.782 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 10:34:13,784.784 INFO    ] Waiting 3.33 seconds before fallback handling...
[2026-06-12 10:34:17,485.485 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 10:34:17,486.486 INFO    ] Checking for system updates...
[2026-06-12 10:34:17,507.507 INFO    ] 200
[2026-06-12 10:34:17,508.508 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:34:17,543.543 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 10:34:17,544.544 INFO    ] No update needed
[2026-06-12 10:34:17,546.546 INFO    ] Checking for camera pi updates...
[2026-06-12 10:34:17,565.565 INFO    ] 200
[2026-06-12 10:34:17,566.566 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:34:17,594.594 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 10:34:17,631.631 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 10:34:17,632.632 INFO    ] No camera update needed
[2026-06-12 10:34:17,633.633 INFO    ] Script finished. Safe exiting...
[2026-06-12 10:34:17,635.635 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 10:34:17,638.638 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 10:34:17,640.640 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 10:34:19,679.679 INFO    ] ================================================
[2026-06-12 10:34:19,694.694 INFO    ] Launching Daemon at Fri Jun 12 10:34:19 IST 2026
[2026-06-12 10:34:19,705.705 INFO    ] ================================================
[2026-06-12 10:34:20,054.054 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 10:34:20
[2026-06-12 10:34:20,367.367 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 10:34:20,504.504 INFO    ] Initializing speech engine...
[2026-06-12 10:34:20,514.514 INFO    ] 2026-06-12 10:34:20
[2026-06-12 10:34:20,717.717 INFO    ] 2026-06-12 10:34:20
[2026-06-12 10:34:20,747.747 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 10:34:20,929.929 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 10:34:20,932.932 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 10:34:21,067.067 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 10:34:21,131.131 INFO    ] time= 12/06/2026 10:34:21
[2026-06-12 10:34:21,157.157 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 10:34:21,164.164 INFO    ] Checking for existing commands in stream...
[2026-06-12 10:34:21,230.230 INFO    ] No existing commands found in stream
[2026-06-12 10:34:26,239.239 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 10:34:26,242.242 INFO    ] Waiting 2.74 seconds before fallback handling...
[2026-06-12 10:34:29,307.307 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 10:34:29,310.310 INFO    ] Checking for system updates...
[2026-06-12 10:34:29,349.349 INFO    ] 200
[2026-06-12 10:34:29,352.352 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:34:29,400.400 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 10:34:29,401.401 INFO    ] No update needed
[2026-06-12 10:34:29,402.402 INFO    ] Checking for camera pi updates...
[2026-06-12 10:34:29,422.422 INFO    ] 200
[2026-06-12 10:34:29,423.423 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:34:29,449.449 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 10:34:29,496.496 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 10:34:29,498.498 INFO    ] No camera update needed
[2026-06-12 10:34:29,499.499 INFO    ] Script finished. Safe exiting...
[2026-06-12 10:34:29,500.500 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 10:34:29,503.503 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 10:34:29,506.506 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 10:34:31,546.546 INFO    ] ================================================
[2026-06-12 10:34:31,564.564 INFO    ] Launching Daemon at Fri Jun 12 10:34:31 IST 2026
[2026-06-12 10:34:31,575.575 INFO    ] ================================================
[2026-06-12 10:34:31,943.943 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 10:34:31
[2026-06-12 10:34:32,282.282 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 10:34:32,439.439 INFO    ] Initializing speech engine...
[2026-06-12 10:34:32,445.445 INFO    ] 2026-06-12 10:34:32
[2026-06-12 10:34:32,669.669 INFO    ] 2026-06-12 10:34:32
[2026-06-12 10:34:32,698.698 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 10:34:32,836.836 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 10:34:32,883.883 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 10:34:33,017.017 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 10:34:33,080.080 INFO    ] time= 12/06/2026 10:34:33
[2026-06-12 10:34:33,112.112 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 10:34:33,118.118 INFO    ] Checking for existing commands in stream...
[2026-06-12 10:34:33,184.184 INFO    ] No existing commands found in stream
[2026-06-12 10:34:38,198.198 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 10:34:38,201.201 INFO    ] Waiting 1.77 seconds before fallback handling...
[2026-06-12 10:34:40,336.336 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 10:34:40,337.337 INFO    ] Checking for system updates...
[2026-06-12 10:34:40,358.358 INFO    ] 200
[2026-06-12 10:34:40,359.359 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:34:40,389.389 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 10:34:40,391.391 INFO    ] No update needed
[2026-06-12 10:34:40,392.392 INFO    ] Checking for camera pi updates...
[2026-06-12 10:34:40,412.412 INFO    ] 200
[2026-06-12 10:34:40,413.413 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:34:40,440.440 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 10:34:40,480.480 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 10:34:40,481.481 INFO    ] No camera update needed
[2026-06-12 10:34:40,482.482 INFO    ] Script finished. Safe exiting...
[2026-06-12 10:34:40,484.484 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 10:34:40,487.487 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 10:34:40,489.489 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 10:34:42,530.530 INFO    ] ================================================
[2026-06-12 10:34:42,545.545 INFO    ] Launching Daemon at Fri Jun 12 10:34:42 IST 2026
[2026-06-12 10:34:42,556.556 INFO    ] ================================================
[2026-06-12 10:34:42,902.902 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 10:34:42
[2026-06-12 10:34:43,213.213 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 10:34:43,346.346 INFO    ] Initializing speech engine...
[2026-06-12 10:34:43,356.356 INFO    ] 2026-06-12 10:34:43
[2026-06-12 10:34:43,580.580 INFO    ] 2026-06-12 10:34:43
[2026-06-12 10:34:43,609.609 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 10:34:43,808.808 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 10:34:43,812.812 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 10:34:43,952.952 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 10:34:44,009.009 INFO    ] time= 12/06/2026 10:34:43
[2026-06-12 10:34:44,043.043 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 10:34:44,061.061 INFO    ] Checking for existing commands in stream...
[2026-06-12 10:34:44,136.136 INFO    ] No existing commands found in stream
[2026-06-12 10:34:49,147.147 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 10:34:49,149.149 INFO    ] Waiting 3.71 seconds before fallback handling...
[2026-06-12 10:34:53,238.238 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 10:34:53,240.240 INFO    ] Checking for system updates...
[2026-06-12 10:34:53,261.261 INFO    ] 200
[2026-06-12 10:34:53,263.263 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:34:53,295.295 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 10:34:53,296.296 INFO    ] No update needed
[2026-06-12 10:34:53,297.297 INFO    ] Checking for camera pi updates...
[2026-06-12 10:34:53,318.318 INFO    ] 200
[2026-06-12 10:34:53,319.319 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:34:53,343.343 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 10:34:53,382.382 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 10:34:53,383.383 INFO    ] No camera update needed
[2026-06-12 10:34:53,384.384 INFO    ] Script finished. Safe exiting...
[2026-06-12 10:34:53,386.386 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 10:34:53,389.389 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 10:34:53,391.391 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 10:34:55,425.425 INFO    ] ================================================
[2026-06-12 10:34:55,441.441 INFO    ] Launching Daemon at Fri Jun 12 10:34:55 IST 2026
[2026-06-12 10:34:55,447.447 INFO    ] ================================================
[2026-06-12 10:34:55,772.772 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 10:34:55
[2026-06-12 10:34:56,088.088 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 10:34:56,231.231 INFO    ] Initializing speech engine...
[2026-06-12 10:34:56,236.236 INFO    ] 2026-06-12 10:34:56
[2026-06-12 10:34:56,434.434 INFO    ] 2026-06-12 10:34:56
[2026-06-12 10:34:56,480.480 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 10:34:56,733.733 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 10:34:56,739.739 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 10:34:56,888.888 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 10:34:56,928.928 INFO    ] time= 12/06/2026 10:34:56
[2026-06-12 10:34:56,952.952 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 10:34:56,959.959 INFO    ] Checking for existing commands in stream...
[2026-06-12 10:34:57,054.054 INFO    ] No existing commands found in stream
[2026-06-12 10:35:02,069.069 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 10:35:02,080.080 INFO    ] Waiting 1.25 seconds before fallback handling...
[2026-06-12 10:35:03,669.669 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 10:35:03,672.672 INFO    ] Checking for system updates...
[2026-06-12 10:35:03,709.709 INFO    ] 200
[2026-06-12 10:35:03,712.712 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:35:03,763.763 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 10:35:03,765.765 INFO    ] No update needed
[2026-06-12 10:35:03,766.766 INFO    ] Checking for camera pi updates...
[2026-06-12 10:35:03,786.786 INFO    ] 200
[2026-06-12 10:35:03,788.788 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:35:03,813.813 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 10:35:03,849.849 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 10:35:03,851.851 INFO    ] No camera update needed
[2026-06-12 10:35:03,853.853 INFO    ] Script finished. Safe exiting...
[2026-06-12 10:35:03,854.854 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 10:35:03,857.857 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 10:35:03,860.860 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 10:35:05,901.901 INFO    ] ================================================
[2026-06-12 10:35:05,916.916 INFO    ] Launching Daemon at Fri Jun 12 10:35:05 IST 2026
[2026-06-12 10:35:05,927.927 INFO    ] ================================================
[2026-06-12 10:35:06,301.301 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 10:35:06
[2026-06-12 10:35:06,613.613 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 10:35:06,743.743 INFO    ] Initializing speech engine...
[2026-06-12 10:35:06,751.751 INFO    ] 2026-06-12 10:35:06
[2026-06-12 10:35:06,964.964 INFO    ] 2026-06-12 10:35:06
[2026-06-12 10:35:06,992.992 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 10:35:07,115.115 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 10:35:07,154.154 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 10:35:07,313.313 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 10:35:07,344.344 INFO    ] time= 12/06/2026 10:35:07
[2026-06-12 10:35:07,391.391 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 10:35:07,415.415 INFO    ] Checking for existing commands in stream...
[2026-06-12 10:35:07,486.486 INFO    ] No existing commands found in stream
[2026-06-12 10:35:08,480.480 INFO    ] Received new command: ID=1781240708670-0
[2026-06-12 10:35:08,481.481 INFO    ] process_and_cleanup_command: msg_id=1781240708670-0
[2026-06-12 10:35:08,482.482 INFO    ] is_command_expired: timestamp=2026-06-12T05:05:08.479Z, expiry=30s
[2026-06-12 10:35:08,580.580 INFO    ] Command removed from stream: 1781240708670-0. returning for processing...
[2026-06-12 10:35:08,582.582 INFO    ] ***** get_valid_command
[2026-06-12 10:35:08,583.583 INFO    ] {'source': 'webapp', 'data': '{"request_id":"start-order-1781240708479-708i0scf2","orderId":"TM09202301260612103407260","is_vending":false}', 'command': 'start-order', 'timestamp': '2026-06-12T05:05:08.479Z', 'timeout': '10'}
[2026-06-12 10:35:08,584.584 INFO    ] ***** Parsed command data: {'request_id': 'start-order-1781240708479-708i0scf2', 'is_vending': False, 'orderId': 'TM09202301260612103407260'}
[2026-06-12 10:35:08,585.585 INFO    ] Handling start order...
[2026-06-12 10:35:08,587.587 INFO    ] handle_start_order_command
[2026-06-12 10:35:08,590.590 INFO    ] _send_start_order_success: request_id=start-order-1781240708479-708i0scf2, order_id=TM09202301260612103407260
[2026-06-12 10:35:08,591.591 INFO    ] [_send_start_order_success] Adding message to stream: machine:TM09202301
[2026-06-12 10:35:08,653.653 INFO    ] [_send_start_order_success] Message added to stream with ID: 1781240708845-0
[2026-06-12 10:35:08,655.655 INFO    ] ✅ Start-order command succeeded - order locked, waiting for process-order command
[2026-06-12 10:35:08,656.656 INFO    ] Checking for system updates...
[2026-06-12 10:35:08,680.680 INFO    ] 200
[2026-06-12 10:35:08,681.681 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:35:08,714.714 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 10:35:08,716.716 INFO    ] No update needed
[2026-06-12 10:35:08,717.717 INFO    ] Checking for camera pi updates...
[2026-06-12 10:35:08,741.741 INFO    ] 200
[2026-06-12 10:35:08,742.742 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:35:08,769.769 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 10:35:08,798.798 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 10:35:08,799.799 INFO    ] No camera update needed
[2026-06-12 10:35:08,801.801 INFO    ] Script finished. Safe exiting...
[2026-06-12 10:35:08,802.802 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 10:35:08,805.805 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 10:35:08,808.808 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 10:35:10,849.849 INFO    ] ================================================
[2026-06-12 10:35:10,865.865 INFO    ] Launching Daemon at Fri Jun 12 10:35:10 IST 2026
[2026-06-12 10:35:10,875.875 INFO    ] ================================================
[2026-06-12 10:35:11,210.210 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 10:35:11
[2026-06-12 10:35:11,522.522 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 10:35:11,653.653 INFO    ] Initializing speech engine...
[2026-06-12 10:35:11,660.660 INFO    ] 2026-06-12 10:35:11
[2026-06-12 10:35:11,874.874 INFO    ] 2026-06-12 10:35:11
[2026-06-12 10:35:11,902.902 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 10:35:12,024.024 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 10:35:12,089.089 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 10:35:12,224.224 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 10:35:12,286.286 INFO    ] time= 12/06/2026 10:35:12
[2026-06-12 10:35:12,316.316 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 10:35:12,322.322 INFO    ] Checking for existing commands in stream...
[2026-06-12 10:35:12,395.395 INFO    ] Found 2 existing command(s) in stream
[2026-06-12 10:35:12,397.397 INFO    ] Checking historical command: ID=1781240708845-0
[2026-06-12 10:35:12,422.422 INFO    ] process_and_cleanup_command: msg_id=1781240708845-0
[2026-06-12 10:35:12,424.424 INFO    ] is_command_expired: timestamp=2026-06-12T05:05:08.590845Z, expiry=30s
[2026-06-12 10:35:12,537.537 INFO    ] Command removed from stream: 1781240708845-0. returning for processing...
[2026-06-12 10:35:12,540.540 INFO    ] ***** get_valid_command
[2026-06-12 10:35:12,544.544 INFO    ] {'timestamp': '2026-06-12T05:05:08.590845Z', 'imei': 'TM09202301', 'message_type': 'command_response', 'metadata_order_id': 'TM09202301260612103407260', 'status': 'success', 'message': 'start-order success', 'metadata_request_id': 'start-order-1781240708479-708i0scf2'}
[2026-06-12 10:35:12,548.548 INFO    ] Checking historical command: ID=1781240710177-0
[2026-06-12 10:35:12,551.551 INFO    ] process_and_cleanup_command: msg_id=1781240710177-0
[2026-06-12 10:35:12,554.554 INFO    ] is_command_expired: timestamp=2026-06-12T05:05:09.980Z, expiry=30s
[2026-06-12 10:35:12,588.588 INFO    ] Command removed from stream: 1781240710177-0. returning for processing...
[2026-06-12 10:35:12,591.591 INFO    ] ***** get_valid_command
[2026-06-12 10:35:12,593.593 INFO    ] {'timeout': '60', 'command': 'process-order', 'timestamp': '2026-06-12T05:05:09.980Z', 'data': '{"request_id":"process-order-1781240709980-wcgm2htqk","orderId":"TM09202301260612103407260","is_vending":false,"accessCode":"95712590"}', 'source': 'webapp'}
[2026-06-12 10:35:12,596.596 INFO    ] ***** Parsed command data: {'request_id': 'process-order-1781240709980-wcgm2htqk', 'orderId': 'TM09202301260612103407260', 'accessCode': '95712590', 'is_vending': False}
[2026-06-12 10:35:12,599.599 INFO    ] Handling process order...
[2026-06-12 10:35:12,602.602 INFO    ] Processing process-order command...
[2026-06-12 10:35:12,605.605 INFO    ] 🔍 Lock file Order ID: TM09202301260612103407260, TS: 2026-06-12 10:35:08
[2026-06-12 10:35:12,614.614 INFO    ] ✅ Order lock valid for TM09202301260612103407260
[2026-06-12 10:35:12,617.617 INFO    ] Received access code in process-order, skipping PHP API call
[2026-06-12 10:35:12,620.620 INFO    ] processing access code 95712590 for order TM09202301260612103407260
[2026-06-12 10:35:12,623.623 INFO    ] 🔍 Lock file Order ID: TM09202301260612103407260, TS: 2026-06-12 10:35:08
[2026-06-12 10:35:12,627.627 INFO    ] ✅ Order lock valid for TM09202301260612103407260
[2026-06-12 10:35:12,629.629 INFO    ] 2026-06-12 10:35:12
[2026-06-12 10:35:12,659.659 INFO    ] 200
[2026-06-12 10:35:12,663.663 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:35:12,667.667 INFO    ] 95712590
[2026-06-12 10:35:12,671.671 INFO    ] 2026-06-12 10:35:12
[2026-06-12 10:35:12,675.675 INFO    ] session id :842269358
[2026-06-12 10:35:12,679.679 INFO    ] http://localhost:5000/v2/getOrderByAccessCode?access_code=95712590&imei=TM09202301&session_id=842269358
[2026-06-12 10:35:13,398.398 INFO    ] 200
[2026-06-12 10:35:13,403.403 INFO    ] {"rstatus": true, "msg": "Order Data", "status": true, "data": {"mobile": "9344125882", "order_id": "TM09202301260612103407260", "bill_amount": "40", "invoice_bill": "40", "access_code": "95712590", "proposed_sku_json": [{"door_id": "2", "name": "Rite Bite Sports Bar 40gm", "tray_id": "38", "unit_price": 40, "offer_id": "", "qty": 1, "image_url": "https://images.tinymart.in/product/4500669-3919.webp", "offer_desc": "", "sku_total": 40, "mrp": "40", "skuid": "4500669"}]}}
[2026-06-12 10:35:13,413.413 INFO    ] 40
[2026-06-12 10:35:13,419.419 INFO    ] TM09202301260612103407260
[2026-06-12 10:35:13,426.426 INFO    ] 9344125882
[2026-06-12 10:35:13,432.432 INFO    ] 2026-06-12 10:35:13
[2026-06-12 10:35:13,437.437 INFO    ] Door Opening for user mobile ending with  five eight eight two 
[2026-06-12 10:35:13,439.439 INFO    ] Door Opening for user mobile ending with  five eight eight two 
[2026-06-12 10:35:13,440.440 INFO    ] 0995be5bb18e193afac4ba24f604f224
[2026-06-12 10:35:13,442.442 INFO    ] 2026-06-12 10:35:13
[2026-06-12 10:35:13,443.443 INFO    ] creating audio file
[2026-06-12 10:35:13,478.478 INFO    ] Calling gTTS API with 60s timeout...
[2026-06-12 10:35:13,969.969 INFO    ] gTTS API call completed successfully
[2026-06-12 10:35:14,634.634 INFO    ] 2026-06-12 10:35:14
[2026-06-12 10:35:14,635.635 INFO    ] playing audio file
[2026-06-12 10:35:14,645.645 INFO    ] 2026-06-12 10:35:14
[2026-06-12 10:35:14,647.647 INFO    ] 2026-06-12 10:35:14
[2026-06-12 10:35:14,649.649 INFO    ] publish_status: order_id=TM09202301260612103407260
[2026-06-12 10:35:14,651.651 INFO    ] [publish_status] Adding message to stream: order:TM09202301260612103407260
[2026-06-12 10:35:14,706.706 INFO    ] [publish_status] Message added to stream with ID: 1781240714900-0
[2026-06-12 10:35:14,707.707 INFO    ] Published to order:TM09202301260612103407260: {'server_response': '{"rstatus": true, "msg": "Order Data", "data": {"mobile": "9344125882", "access_code": "95712590", "order_id": "TM09202301260612103407260", "bill_amount": "40", "invoice_bill": "40", "proposed_sku_json": [{"skuid": "4500669", "sku_total": 40, "mrp": "40", "door_id": "2", "offer_desc": "", "offer_id": "", "tray_id": "38", "name": "Rite Bite Sports Bar 40gm", "unit_price": 40, "qty": 1, "image_url": "https://images.tinymart.in/product/4500669-3919.webp"}]}, "status": true}', 'server_status': 'order-started', 'timestamp': '2026-06-12T05:05:14.648571Z', 'order_id': 'TM09202301260612103407260'} (ID: 1781240714900-0)
[2026-06-12 10:35:15,016.016 INFO    ] {'server_response': {'rstatus': True, 'msg': 'Order Data', 'data': {'mobile': '9344125882', 'access_code': '95712590', 'order_id': 'TM09202301260612103407260', 'bill_amount': '40', 'invoice_bill': '40', 'proposed_sku_json': [{'skuid': '4500669', 'sku_total': 40, 'mrp': '40', 'door_id': '2', 'offer_desc': '', 'offer_id': '', 'tray_id': '38', 'name': 'Rite Bite Sports Bar 40gm', 'unit_price': 40, 'qty': 1, 'image_url': 'https://images.tinymart.in/product/4500669-3919.webp'}]}, 'status': True}, 'server_status': 'order-started', 'order_id': 'TM09202301260612103407260'}
[2026-06-12 10:35:15,017.017 INFO    ] 200
[2026-06-12 10:35:15,018.018 INFO    ] {"data":{"server_response":{"rstatus":true,"msg":"Order Data","data":{"mobile":"9344125882","access_code":"95712590","order_id":"TM09202301260612103407260","bill_amount":"40","invoice_bill":"40","proposed_sku_json":[{"skuid":"4500669","sku_total":40,"mrp":"40","door_id":"2","offer_desc":"","offer_id":"","tray_id":"38","name":"Rite Bite Sports Bar 40gm","unit_price":40,"qty":1,"image_url":"https:\/\/images.tinymart.in\/product\/4500669-3919.webp"}]},"status":true},"server_status":"order-started","order_id":"TM09202301260612103407260"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-12 10:35:15,020.020 INFO    ] {'data': {'server_response': {'rstatus': True, 'msg': 'Order Data', 'data': {'mobile': '9344125882', 'access_code': '95712590', 'order_id': 'TM09202301260612103407260', 'bill_amount': '40', 'invoice_bill': '40', 'proposed_sku_json': [{'skuid': '4500669', 'sku_total': 40, 'mrp': '40', 'door_id': '2', 'tray_id': '38', 'offer_id': '', 'name': 'Rite Bite Sports Bar 40gm', 'qty': 1, 'unit_price': 40, 'offer_desc': '', 'image_url': 'https://images.tinymart.in/product/4500669-3919.webp'}]}, 'status': True}, 'server_status': 'order-started', 'order_id': 'TM09202301260612103407260'}, 'response': {'msg': 'order updated successfully', 'data': 'order updated successfully', 'status': True, 'code': 'ORDER_EXISTS'}}
[2026-06-12 10:35:15,022.022 INFO    ] 2026-06-12 10:35:15
[2026-06-12 10:35:15,048.048 INFO    ] 200
[2026-06-12 10:35:15,050.050 INFO    ] True
[2026-06-12 10:35:15,134.134 INFO    ] 200
[2026-06-12 10:35:15,136.136 INFO    ] {"rstatus": false, "error": {"umessage": "In Progress", "code": 20001, "tmessage": "In Progress", "data": {}}, "SectionSKU": {"skus": [], "Header": "Thank you for bearing with us :)"}, "SectionMain": {"Header": "Processing Order"}, "SectionStatus": {"UI_Header": "", "Note": "", "Header": " Your order is under process  ", "SubHeader": "Please wait while we process your order"}, "voiceNote": "Please Wait", "status": "False"}
[2026-06-12 10:35:15,137.137 INFO    ] {'rstatus': False, 'voiceNote': 'Please Wait', 'SectionStatus': {'Note': '', 'SubHeader': 'Please wait while we process your order', 'UI_Header': '', 'Header': ' Your order is under process  '}, 'error': {'umessage': 'In Progress', 'tmessage': 'In Progress', 'data': {}, 'code': 20001}, 'SectionSKU': {'Header': 'Thank you for bearing with us :)', 'skus': []}, 'SectionMain': {'Header': 'Processing Order'}, 'status': 'False'}
[2026-06-12 10:35:15,138.138 INFO    ] *** process_order ***
[2026-06-12 10:35:16,275.275 INFO    ] 200
[2026-06-12 10:35:16,277.277 INFO    ] {"rstatus": true, "SectionSKU": {"skus": [], "Header": "Thank you for bearing with us :)"}, "SectionMain": {"Header": "Processing Order"}, "SectionStatus": {"UI_Header": "", "Note": "", "Header": " Your order is under process  ", "SubHeader": "Please wait while we process your order"}, "delay": 0, "voiceNote": "Please Wait", "status": "True"}
[2026-06-12 10:35:16,278.278 INFO    ] {'rstatus': True, 'voiceNote': 'Please Wait', 'SectionStatus': {'Note': '', 'SubHeader': 'Please wait while we process your order', 'UI_Header': '', 'Header': ' Your order is under process  '}, 'SectionSKU': {'Header': 'Thank you for bearing with us :)', 'skus': []}, 'SectionMain': {'Header': 'Processing Order'}, 'status': 'True', 'delay': 0}
[2026-06-12 10:35:16,280.280 INFO    ] *** process_order ***
[2026-06-12 10:35:16,281.281 INFO    ] publish_status: order_id=TM09202301260612103407260
[2026-06-12 10:35:16,282.282 INFO    ] [publish_status] Adding message to stream: order:TM09202301260612103407260
[2026-06-12 10:35:16,351.351 INFO    ] [publish_status] Message added to stream with ID: 1781240716544-0
[2026-06-12 10:35:16,353.353 INFO    ] Published to order:TM09202301260612103407260: {'server_response': '{"rstatus": true, "voiceNote": "Door is open...", "SectionStatus": {"Note": "", "SubHeader": "You can pull the door now.", "UI_Header": "", "Header": " Your order is under process  "}, "SectionSKU": {"skus": [], "Header": "Thank you for bearing with us :)"}, "SectionMain": {"Header": "Processing Order"}, "status": "True", "delay": 0}', 'server_status': 'doorOpened', 'order_id': 'TM09202301260612103407260'} (ID: 1781240716544-0)
[2026-06-12 10:35:17,477.477 INFO    ] 2026-06-12 10:35:17
[2026-06-12 10:35:17,480.480 INFO    ] publish_status: order_id=TM09202301260612103407260
[2026-06-12 10:35:17,483.483 INFO    ] [publish_status] Adding message to stream: order:TM09202301260612103407260
[2026-06-12 10:35:17,554.554 INFO    ] [publish_status] Message added to stream with ID: 1781240717747-0
[2026-06-12 10:35:17,555.555 INFO    ] Published to order:TM09202301260612103407260: {'server_response': '{"rstatus": true, "voiceNote": "Please Wait", "SectionStatus": {"Note": "", "SubHeader": "Please wait while we process your order", "UI_Header": "", "Header": " Your order is under process  "}, "SectionSKU": {"Header": "Thank you for bearing with us :)", "skus": []}, "SectionMain": {"Header": "Processing Order"}, "status": "True", "delay": 0}', 'server_status': 'processOrder', 'timestamp': '2026-06-12T05:05:17.478602Z', 'order_id': 'TM09202301260612103407260'} (ID: 1781240717747-0)
[2026-06-12 10:35:17,694.694 INFO    ] {'server_response': {'rstatus': True, 'voiceNote': 'Please Wait', 'SectionStatus': {'Note': '', 'SubHeader': 'Please wait while we process your order', 'UI_Header': '', 'Header': ' Your order is under process  '}, 'SectionSKU': {'Header': 'Thank you for bearing with us :)', 'skus': []}, 'SectionMain': {'Header': 'Processing Order'}, 'status': 'True', 'delay': 0}, 'server_status': 'processOrder', 'order_id': 'TM09202301260612103407260'}
[2026-06-12 10:35:17,696.696 INFO    ] 200
[2026-06-12 10:35:17,697.697 INFO    ] {"data":{"server_response":{"rstatus":true,"voiceNote":"Please Wait","SectionStatus":{"Note":"","SubHeader":"Please wait while we process your order","UI_Header":"","Header":" Your order is under process  "},"SectionSKU":{"Header":"Thank you for bearing with us :)","skus":[]},"SectionMain":{"Header":"Processing Order"},"status":"true","delay":0},"server_status":"processOrder","order_id":"TM09202301260612103407260"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-12 10:35:17,698.698 INFO    ] {'data': {'server_response': {'rstatus': True, 'voiceNote': 'Please Wait', 'SectionStatus': {'Note': '', 'SubHeader': 'Please wait while we process your order', 'UI_Header': '', 'Header': ' Your order is under process  '}, 'SectionSKU': {'skus': [], 'Header': 'Thank you for bearing with us :)'}, 'SectionMain': {'Header': 'Processing Order'}, 'status': 'true', 'delay': 0}, 'server_status': 'processOrder', 'order_id': 'TM09202301260612103407260'}, 'response': {'msg': 'order updated successfully', 'data': 'order updated successfully', 'status': True, 'code': 'ORDER_EXISTS'}}
[2026-06-12 10:35:17,700.700 INFO    ] 2026-06-12 10:35:17
[2026-06-12 10:35:17,701.701 INFO    ] None
[2026-06-12 10:35:17,703.703 INFO    ] Opening Door now
[2026-06-12 10:35:17,704.704 INFO    ] Opening Door now
[2026-06-12 10:35:17,706.706 INFO    ] 08e5d1063504bf393c26f0bfa436e9f9
[2026-06-12 10:35:17,707.707 INFO    ] 2026-06-12 10:35:17
[2026-06-12 10:35:17,709.709 INFO    ] playing audio file
[2026-06-12 10:35:17,720.720 INFO    ] 2026-06-12 10:35:17
[2026-06-12 10:35:17,721.721 INFO    ] 2026-06-12 10:35:17
[2026-06-12 10:35:20,923.923 INFO    ] 200
[2026-06-12 10:35:20,924.924 INFO    ] {"rstatus": false, "error": {"umessage": "In Progress", "code": 20001, "tmessage": "In Progress", "data": {}}, "SectionSKU": {"skus": [{"name": "Rite Bite Sports Bar 40gm", "qty": 1}], "Header": "Pick the below items from the door"}, "SectionMain": {"Header": "Door Open"}, "SectionStatus": {"UI_Header": "DOOR 2\nIS \nOPEN \nNOW", "Note": "Please Close the door after picking up products", "Header": "Please Close Door 2", "SubHeader": "Please Pick the Products and close the door"}, "voiceNote": "Door 2 is open now", "status": "False"}
[2026-06-12 10:35:20,926.926 INFO    ] {'rstatus': False, 'voiceNote': 'Door 2 is open now', 'SectionStatus': {'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', 'Header': 'Please Close Door 2'}, 'error': {'umessage': 'In Progress', 'tmessage': 'In Progress', 'data': {}, 'code': 20001}, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'Rite Bite Sports Bar 40gm', 'qty': 1}]}, 'SectionMain': {'Header': 'Door Open'}, 'status': 'False'}
[2026-06-12 10:35:23,972.972 INFO    ] 200
[2026-06-12 10:35:23,973.973 INFO    ] {"rstatus": false, "error": {"umessage": "In Progress", "code": 20001, "tmessage": "In Progress", "data": {}}, "SectionSKU": {"skus": [{"name": "Rite Bite Sports Bar 40gm", "qty": 1}], "Header": "Pick the below items from the door"}, "SectionMain": {"Header": "Door Open"}, "SectionStatus": {"UI_Header": "DOOR 2\nIS \nOPEN \nNOW", "Note": "Please Close the door after picking up products", "Header": "Please Close Door 2", "SubHeader": "Please Pick the Products and close the door"}, "voiceNote": "Please close door 2", "status": "False"}
[2026-06-12 10:35:23,974.974 INFO    ] {'rstatus': False, 'voiceNote': 'Please close door 2', 'SectionStatus': {'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', 'Header': 'Please Close Door 2'}, 'error': {'umessage': 'In Progress', 'tmessage': 'In Progress', 'data': {}, 'code': 20001}, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'Rite Bite Sports Bar 40gm', 'qty': 1}]}, 'SectionMain': {'Header': 'Door Open'}, 'status': 'False'}
[2026-06-12 10:35:27,038.038 INFO    ] 200
[2026-06-12 10:35:27,040.040 INFO    ] {"rstatus": false, "error": {"umessage": "In Progress", "code": 20001, "tmessage": "In Progress", "data": {}}, "SectionSKU": {"skus": [{"name": "Rite Bite Sports Bar 40gm", "qty": 1}], "Header": "Pick the below items from the door"}, "SectionMain": {"Header": "Door Open"}, "SectionStatus": {"UI_Header": "DOOR 2\nIS \nOPEN \nNOW", "Note": "Please Close the door after picking up products", "Header": "Please Close Door 2", "SubHeader": "Please Pick the Products and close the door"}, "voiceNote": "Please close door 2", "status": "False"}
[2026-06-12 10:35:27,042.042 INFO    ] Please close door 2
[2026-06-12 10:35:27,044.044 INFO    ] Please close door 2
[2026-06-12 10:35:27,045.045 INFO    ] 758e46684c76e887a5f58d4738034bed
[2026-06-12 10:35:27,047.047 INFO    ] 2026-06-12 10:35:27
[2026-06-12 10:35:27,048.048 INFO    ] playing audio file
[2026-06-12 10:35:27,059.059 INFO    ] 2026-06-12 10:35:27
[2026-06-12 10:35:27,061.061 INFO    ] publish_status: order_id=TM09202301260612103407260
[2026-06-12 10:35:27,063.063 INFO    ] [publish_status] Adding message to stream: order:TM09202301260612103407260
[2026-06-12 10:35:27,118.118 INFO    ] [publish_status] Message added to stream with ID: 1781240727311-0
[2026-06-12 10:35:27,120.120 INFO    ] Published to order:TM09202301260612103407260: {'server_response': '{"rstatus": false, "voiceNote": "Please close door 2", "SectionStatus": {"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", "Header": "Please Close Door 2"}, "error": {"umessage": "In Progress", "tmessage": "In Progress", "data": {}, "code": 20001}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"name": "Rite Bite Sports Bar 40gm", "qty": 1}]}, "SectionMain": {"Header": "Door Open"}, "status": "False"}', 'server_status': 'OrderStatus', 'timestamp': '2026-06-12T05:05:27.060312Z', 'order_id': 'TM09202301260612103407260'} (ID: 1781240727311-0)
[2026-06-12 10:35:27,495.495 INFO    ] {'server_response': {'rstatus': False, 'voiceNote': 'Please close door 2', 'SectionStatus': {'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', 'Header': 'Please Close Door 2'}, 'error': {'umessage': 'In Progress', 'tmessage': 'In Progress', 'data': {}, 'code': 20001}, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'Rite Bite Sports Bar 40gm', 'qty': 1}]}, 'SectionMain': {'Header': 'Door Open'}, 'status': 'False'}, 'server_status': 'OrderStatus', 'order_id': 'TM09202301260612103407260'}
[2026-06-12 10:35:27,497.497 INFO    ] 200
[2026-06-12 10:35:27,499.499 INFO    ] {"data":{"server_response":{"rstatus":false,"voiceNote":"Please close door 2","SectionStatus":{"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","Header":"Please Close Door 2"},"error":{"umessage":"In Progress","tmessage":"In Progress","data":[],"code":20001},"SectionSKU":{"Header":"Pick the below items from the door","skus":[{"name":"Rite Bite Sports Bar 40gm","qty":1}]},"SectionMain":{"Header":"Door Open"},"status":"false"},"server_status":"OrderStatus","order_id":"TM09202301260612103407260"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-12 10:35:27,501.501 INFO    ] {'data': {'server_response': {'rstatus': False, 'voiceNote': 'Please close door 2', 'SectionStatus': {'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', 'Header': 'Please Close Door 2'}, 'error': {'umessage': 'In Progress', 'code': 20001, 'data': [], 'tmessage': 'In Progress'}, 'SectionSKU': {'skus': [{'name': 'Rite Bite Sports Bar 40gm', 'qty': 1}], 'Header': 'Pick the below items from the door'}, 'SectionMain': {'Header': 'Door Open'}, 'status': 'false'}, 'server_status': 'OrderStatus', 'order_id': 'TM09202301260612103407260'}, 'response': {'msg': 'order updated successfully', 'data': 'order updated successfully', 'status': True, 'code': 'ORDER_EXISTS'}}
[2026-06-12 10:35:27,503.503 INFO    ] {'rstatus': False, 'voiceNote': 'Please close door 2', 'SectionStatus': {'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', 'Header': 'Please Close Door 2'}, 'error': {'umessage': 'In Progress', 'tmessage': 'In Progress', 'data': {}, 'code': 20001}, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'Rite Bite Sports Bar 40gm', 'qty': 1}]}, 'SectionMain': {'Header': 'Door Open'}, 'status': 'False'}
[2026-06-12 10:35:30,548.548 INFO    ] 200
[2026-06-12 10:35:30,551.551 INFO    ] {"rstatus": true, "SectionSKU": {"skus": [], "Header": "If you like us, tell others... else tell us"}, "SectionMain": {"Header": "Door Closed"}, "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, "voiceNote": "Transaction Completed", "status": "True"}
[2026-06-12 10:35:30,552.552 INFO    ] {'rstatus': True, 'voiceNote': 'Transaction Completed', '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 '}, 'SectionSKU': {'Header': 'If you like us, tell others... else tell us', 'skus': []}, 'SectionMain': {'Header': 'Door Closed'}, 'status': 'True', 'delay': 100}
[2026-06-12 10:35:30,554.554 INFO    ] 2026-06-12 10:35:30
[2026-06-12 10:35:30,556.556 INFO    ] Order Completed 
[2026-06-12 10:35:30,558.558 INFO    ] Order Completed 
[2026-06-12 10:35:30,559.559 INFO    ] 193c8a8cf3bf490ccfe0b23598544a83
[2026-06-12 10:35:30,561.561 INFO    ] 2026-06-12 10:35:30
[2026-06-12 10:35:30,563.563 INFO    ] playing audio file
[2026-06-12 10:35:30,575.575 INFO    ] 2026-06-12 10:35:30
[2026-06-12 10:35:30,578.578 INFO    ] {'rstatus': True, 'voiceNote': 'Transaction Completed', '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 '}, 'SectionSKU': {'Header': 'If you like us, tell others... else tell us', 'skus': []}, 'SectionMain': {'Header': 'Door Closed'}, 'status': 'True', 'delay': 100}
[2026-06-12 10:35:30,580.580 INFO    ] 2026-06-12 10:35:30
[2026-06-12 10:35:32,166.166 INFO    ] 200
[2026-06-12 10:35:32,169.169 INFO    ] {"rstatus": true, "orderId": "TM09202301260612103407260", "logic": "WBL", "anomaly": 0, "res": "True", "total_amount": 40.0, "skus": [{"door_id": "", "sku_total": 40.0, "skuid": "4500669", "mrp": "40", "tray_id": "38", "image_url": "https://images.tinymart.in/product/4500669-3919.webp", "name": "Rite Bite Sports Bar 40gm per peice", "qty": 1, "unit_price": "40"}]}
[2026-06-12 10:35:32,172.172 INFO    ] {'rstatus': True, 'total_amount': 40.0, 'anomaly': 0, 'skus': [{'skuid': '4500669', 'sku_total': 40.0, 'mrp': '40', 'door_id': '', 'tray_id': '38', 'name': 'Rite Bite Sports Bar 40gm per peice', 'unit_price': '40', 'qty': 1, 'image_url': 'https://images.tinymart.in/product/4500669-3919.webp'}], 'res': 'True', 'orderId': 'TM09202301260612103407260', 'logic': 'WBL'}
[2026-06-12 10:35:32,174.174 INFO    ] {'rstatus': True, 'total_amount': 40.0, 'anomaly': 0, 'skus': [{'skuid': '4500669', 'sku_total': 40.0, 'mrp': '40', 'door_id': '', 'tray_id': '38', 'name': 'Rite Bite Sports Bar 40gm per peice', 'unit_price': '40', 'qty': 1, 'image_url': 'https://images.tinymart.in/product/4500669-3919.webp'}], 'res': 'True', 'orderId': 'TM09202301260612103407260', 'logic': 'WBL'}
[2026-06-12 10:35:32,176.176 INFO    ] 2026-06-12 10:35:32
[2026-06-12 10:35:32,178.178 INFO    ] 2026-06-12 10:35:32
[2026-06-12 10:35:32,180.180 INFO    ] 40
[2026-06-12 10:35:32,183.183 INFO    ] 2026-06-12 10:35:32
[2026-06-12 10:35:32,184.184 INFO    ] 2026-06-12 10:35:32
[2026-06-12 10:35:32,185.185 INFO    ]  Your Bill Amount is 40
[2026-06-12 10:35:32,187.187 INFO    ]  Your Bill Amount is 40
[2026-06-12 10:35:32,188.188 INFO    ] 88965e4060b051d18121185ac205626e
[2026-06-12 10:35:32,190.190 INFO    ] 2026-06-12 10:35:32
[2026-06-12 10:35:32,191.191 INFO    ] playing audio file
[2026-06-12 10:35:32,202.202 INFO    ] 2026-06-12 10:35:32
[2026-06-12 10:35:32,204.204 INFO    ] 2026-06-12 10:35:32
[2026-06-12 10:35:32,207.207 INFO    ] publish_status: order_id=TM09202301260612103407260
[2026-06-12 10:35:32,208.208 INFO    ] [publish_status] Adding message to stream: order:TM09202301260612103407260
[2026-06-12 10:35:32,256.256 INFO    ] [publish_status] Message added to stream with ID: 1781240732450-0
[2026-06-12 10:35:32,258.258 INFO    ] Published to order:TM09202301260612103407260: {'server_response': '{"rstatus": true, "total_amount": 40.0, "anomaly": 0, "skus": [{"skuid": "4500669", "sku_total": 40.0, "mrp": "40", "door_id": "", "tray_id": "38", "name": "Rite Bite Sports Bar 40gm per peice", "unit_price": "40", "qty": 1, "image_url": "https://images.tinymart.in/product/4500669-3919.webp"}], "res": "True", "orderId": "TM09202301260612103407260", "logic": "WBL"}', 'server_status': 'invoiceOrder', 'timestamp': '2026-06-12T05:05:32.205724Z', 'order_id': 'TM09202301260612103407260'} (ID: 1781240732450-0)
[2026-06-12 10:35:32,693.693 INFO    ] {'server_response': {'rstatus': True, 'total_amount': 40.0, 'anomaly': 0, 'skus': [{'skuid': '4500669', 'sku_total': 40.0, 'mrp': '40', 'door_id': '', 'tray_id': '38', 'name': 'Rite Bite Sports Bar 40gm per peice', 'unit_price': '40', 'qty': 1, 'image_url': 'https://images.tinymart.in/product/4500669-3919.webp'}], 'res': 'True', 'orderId': 'TM09202301260612103407260', 'logic': 'WBL'}, 'server_status': 'invoiceOrder', 'order_id': 'TM09202301260612103407260'}
[2026-06-12 10:35:32,695.695 INFO    ] 200
[2026-06-12 10:35:32,696.696 INFO    ] {"data":{"server_response":{"rstatus":true,"total_amount":40,"anomaly":0,"skus":[{"skuid":"4500669","sku_total":40,"mrp":"40","door_id":"","tray_id":"38","name":"Rite Bite Sports Bar 40gm per peice","unit_price":"40","qty":1,"image_url":"https:\/\/images.tinymart.in\/product\/4500669-3919.webp"}],"res":"true","orderId":"TM09202301260612103407260","logic":"WBL"},"server_status":"invoiceOrder","order_id":"TM09202301260612103407260"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-12 10:35:32,698.698 INFO    ] {'data': {'server_response': {'rstatus': True, 'total_amount': 40, 'anomaly': 0, 'skus': [{'skuid': '4500669', 'sku_total': 40, 'mrp': '40', 'door_id': '', 'tray_id': '38', 'name': 'Rite Bite Sports Bar 40gm per peice', 'unit_price': '40', 'qty': 1, 'image_url': 'https://images.tinymart.in/product/4500669-3919.webp'}], 'res': 'true', 'orderId': 'TM09202301260612103407260', 'logic': 'WBL'}, 'server_status': 'invoiceOrder', 'order_id': 'TM09202301260612103407260'}, 'response': {'msg': 'order updated successfully', 'data': 'order updated successfully', 'status': True, 'code': 'ORDER_EXISTS'}}
[2026-06-12 10:35:32,700.700 INFO    ] {'data': {'server_response': {'rstatus': True, 'total_amount': 40, 'anomaly': 0, 'skus': [{'skuid': '4500669', 'sku_total': 40, 'mrp': '40', 'door_id': '', 'tray_id': '38', 'name': 'Rite Bite Sports Bar 40gm per peice', 'unit_price': '40', 'qty': 1, 'image_url': 'https://images.tinymart.in/product/4500669-3919.webp'}], 'res': 'true', 'orderId': 'TM09202301260612103407260', 'logic': 'WBL'}, 'server_status': 'invoiceOrder', 'order_id': 'TM09202301260612103407260'}, 'response': {'msg': 'order updated successfully', 'data': 'order updated successfully', 'status': True, 'code': 'ORDER_EXISTS'}}
[2026-06-12 10:35:32,702.702 INFO    ] 2026-06-12 10:35:32
[2026-06-12 10:35:34,036.036 INFO    ] 200
[2026-06-12 10:35:34,040.040 INFO    ] {"tray_sync": ["TM09202301260612103407260", "TM09202301260612103407260", "TM09202301260612103407260", "TM09202301260612103407260", "TM09202301260612103407260", "TM09202301260612103407260"], "orders_data": [], "orders_synced": [], "status": true, "order_items_synced": ["TM09202301260612103407260_0"], "tray_synced": ["TM09202301260612103407260", "TM09202301260612103407260", "TM09202301260612103407260", "TM09202301260612103407260", "TM09202301260612103407260", "TM09202301260612103407260", "TM09202301260612103407260", "TM09202301260612103407260", "TM09202301260612103407260", "TM09202301260612103407260", "TM09202301260612103407260", "TM09202301260612103407260", "TM09202301260612103407260", "TM09202301260612103407260", "TM09202301260612103407260", "TM09202301260612103407260", "TM09202301260612103407260", "TM09202301260612103407260", "TM09202301260612103407260", "TM09202301260612103407260", "TM09202301260612103407260", "TM09202301260612103407260", "TM09202301260612103407260", "TM09202301260612103407260", "TM09202301260612103407260", "TM09202301260612103407260", "TM09202301260612103407260"], "orders_data_synced": [], "orders": [], "order_items": []}
[2026-06-12 10:35:34,044.044 INFO    ] 2026-06-12 10:35:34
[2026-06-12 10:35:34,156.156 INFO    ] 200
[2026-06-12 10:35:34,157.157 INFO    ] True
[2026-06-12 10:35:34,159.159 INFO    ] cleanup_start_order_file_after_processing: order_id=TM09202301260612103407260
[2026-06-12 10:35:34,161.161 INFO    ] start order file deleted
[2026-06-12 10:35:34,163.163 INFO    ] Checking for system updates...
[2026-06-12 10:35:34,185.185 INFO    ] 200
[2026-06-12 10:35:34,186.186 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:35:34,222.222 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 10:35:34,224.224 INFO    ] No update needed
[2026-06-12 10:35:34,225.225 INFO    ] Checking for camera pi updates...
[2026-06-12 10:35:34,248.248 INFO    ] 200
[2026-06-12 10:35:34,249.249 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:35:34,279.279 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 10:35:34,334.334 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 10:35:34,335.335 INFO    ] No camera update needed
[2026-06-12 10:35:34,337.337 INFO    ] Script finished. Safe exiting...
[2026-06-12 10:35:34,339.339 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 10:35:34,343.343 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 10:35:34,347.347 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 10:35:36,387.387 INFO    ] ================================================
[2026-06-12 10:35:36,403.403 INFO    ] Launching Daemon at Fri Jun 12 10:35:36 IST 2026
[2026-06-12 10:35:36,413.413 INFO    ] ================================================
[2026-06-12 10:35:36,774.774 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 10:35:36
[2026-06-12 10:35:37,086.086 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 10:35:37,233.233 INFO    ] Initializing speech engine...
[2026-06-12 10:35:37,239.239 INFO    ] 2026-06-12 10:35:37
[2026-06-12 10:35:37,456.456 INFO    ] 2026-06-12 10:35:37
[2026-06-12 10:35:37,487.487 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 10:35:37,583.583 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 10:35:37,586.586 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 10:35:37,694.694 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 10:35:37,704.704 INFO    ] time= 12/06/2026 10:35:37
[2026-06-12 10:35:37,710.710 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 10:35:37,724.724 INFO    ] Checking for existing commands in stream...
[2026-06-12 10:35:37,813.813 INFO    ] No existing commands found in stream
[2026-06-12 10:35:42,848.848 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 10:35:42,851.851 INFO    ] Waiting 0.95 seconds before fallback handling...
[2026-06-12 10:35:44,170.170 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 10:35:44,171.171 INFO    ] Checking for system updates...
[2026-06-12 10:35:44,194.194 INFO    ] 200
[2026-06-12 10:35:44,195.195 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:35:44,229.229 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 10:35:44,230.230 INFO    ] No update needed
[2026-06-12 10:35:44,232.232 INFO    ] Checking for camera pi updates...
[2026-06-12 10:35:44,252.252 INFO    ] 200
[2026-06-12 10:35:44,253.253 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:35:44,276.276 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 10:35:44,319.319 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 10:35:44,321.321 INFO    ] No camera update needed
[2026-06-12 10:35:44,322.322 INFO    ] Script finished. Safe exiting...
[2026-06-12 10:35:44,324.324 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 10:35:44,327.327 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 10:35:44,330.330 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 10:35:46,369.369 INFO    ] ================================================
[2026-06-12 10:35:46,385.385 INFO    ] Launching Daemon at Fri Jun 12 10:35:46 IST 2026
[2026-06-12 10:35:46,396.396 INFO    ] ================================================
[2026-06-12 10:35:46,749.749 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 10:35:46
[2026-06-12 10:35:47,087.087 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 10:35:47,240.240 INFO    ] Initializing speech engine...
[2026-06-12 10:35:47,246.246 INFO    ] 2026-06-12 10:35:47
[2026-06-12 10:35:47,455.455 INFO    ] 2026-06-12 10:35:47
[2026-06-12 10:35:47,485.485 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 10:35:47,609.609 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 10:35:47,673.673 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 10:35:47,806.806 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 10:35:47,862.862 INFO    ] time= 12/06/2026 10:35:47
[2026-06-12 10:35:47,902.902 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 10:35:47,908.908 INFO    ] Checking for existing commands in stream...
[2026-06-12 10:35:47,980.980 INFO    ] No existing commands found in stream
[2026-06-12 10:35:52,995.995 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 10:35:52,998.998 INFO    ] Waiting 2.33 seconds before fallback handling...
[2026-06-12 10:35:55,711.711 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 10:35:55,713.713 INFO    ] Checking for system updates...
[2026-06-12 10:35:55,735.735 INFO    ] 200
[2026-06-12 10:35:55,736.736 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:35:55,768.768 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 10:35:55,769.769 INFO    ] No update needed
[2026-06-12 10:35:55,771.771 INFO    ] Checking for camera pi updates...
[2026-06-12 10:35:55,791.791 INFO    ] 200
[2026-06-12 10:35:55,792.792 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:35:55,816.816 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 10:35:55,960.960 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 10:35:55,961.961 INFO    ] No camera update needed
[2026-06-12 10:35:55,963.963 INFO    ] Script finished. Safe exiting...
[2026-06-12 10:35:55,964.964 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 10:35:55,967.967 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 10:35:55,971.971 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 10:35:58,011.011 INFO    ] ================================================
[2026-06-12 10:35:58,027.027 INFO    ] Launching Daemon at Fri Jun 12 10:35:58 IST 2026
[2026-06-12 10:35:58,038.038 INFO    ] ================================================
[2026-06-12 10:35:58,364.364 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 10:35:58
[2026-06-12 10:35:58,675.675 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 10:35:58,818.818 INFO    ] Initializing speech engine...
[2026-06-12 10:35:58,823.823 INFO    ] 2026-06-12 10:35:58
[2026-06-12 10:35:59,027.027 INFO    ] 2026-06-12 10:35:59
[2026-06-12 10:35:59,056.056 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 10:35:59,242.242 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 10:35:59,245.245 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 10:35:59,376.376 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 10:35:59,442.442 INFO    ] time= 12/06/2026 10:35:59
[2026-06-12 10:35:59,476.476 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 10:35:59,482.482 INFO    ] Checking for existing commands in stream...
[2026-06-12 10:35:59,548.548 INFO    ] No existing commands found in stream
[2026-06-12 10:36:04,559.559 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 10:36:04,562.562 INFO    ] Waiting 2.50 seconds before fallback handling...
[2026-06-12 10:36:07,434.434 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 10:36:07,435.435 INFO    ] Checking for system updates...
[2026-06-12 10:36:07,456.456 INFO    ] 200
[2026-06-12 10:36:07,458.458 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:36:07,491.491 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 10:36:07,492.492 INFO    ] No update needed
[2026-06-12 10:36:07,494.494 INFO    ] Checking for camera pi updates...
[2026-06-12 10:36:07,515.515 INFO    ] 200
[2026-06-12 10:36:07,516.516 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:36:07,543.543 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 10:36:07,582.582 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 10:36:07,584.584 INFO    ] No camera update needed
[2026-06-12 10:36:07,585.585 INFO    ] Script finished. Safe exiting...
[2026-06-12 10:36:07,586.586 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 10:36:07,589.589 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 10:36:07,593.593 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 10:36:09,632.632 INFO    ] ================================================
[2026-06-12 10:36:09,649.649 INFO    ] Launching Daemon at Fri Jun 12 10:36:09 IST 2026
[2026-06-12 10:36:09,660.660 INFO    ] ================================================
[2026-06-12 10:36:09,990.990 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 10:36:09
[2026-06-12 10:36:10,307.307 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 10:36:10,458.458 INFO    ] Initializing speech engine...
[2026-06-12 10:36:10,464.464 INFO    ] 2026-06-12 10:36:10
[2026-06-12 10:36:10,673.673 INFO    ] 2026-06-12 10:36:10
[2026-06-12 10:36:10,702.702 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 10:36:10,889.889 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 10:36:10,899.899 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 10:36:11,047.047 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 10:36:11,108.108 INFO    ] time= 12/06/2026 10:36:11
[2026-06-12 10:36:11,129.129 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 10:36:11,131.131 INFO    ] Checking for existing commands in stream...
[2026-06-12 10:36:11,199.199 INFO    ] No existing commands found in stream
[2026-06-12 10:36:16,214.214 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 10:36:16,217.217 INFO    ] Waiting 3.60 seconds before fallback handling...
[2026-06-12 10:36:20,188.188 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 10:36:20,190.190 INFO    ] Checking for system updates...
[2026-06-12 10:36:20,211.211 INFO    ] 200
[2026-06-12 10:36:20,213.213 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:36:20,245.245 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 10:36:20,247.247 INFO    ] No update needed
[2026-06-12 10:36:20,248.248 INFO    ] Checking for camera pi updates...
[2026-06-12 10:36:20,269.269 INFO    ] 200
[2026-06-12 10:36:20,271.271 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:36:20,296.296 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 10:36:20,334.334 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 10:36:20,335.335 INFO    ] No camera update needed
[2026-06-12 10:36:20,337.337 INFO    ] Script finished. Safe exiting...
[2026-06-12 10:36:20,338.338 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 10:36:20,341.341 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 10:36:20,345.345 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 10:36:22,383.383 INFO    ] ================================================
[2026-06-12 10:36:22,398.398 INFO    ] Launching Daemon at Fri Jun 12 10:36:22 IST 2026
[2026-06-12 10:36:22,409.409 INFO    ] ================================================
[2026-06-12 10:36:22,780.780 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 10:36:22
[2026-06-12 10:36:23,099.099 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 10:36:23,243.243 INFO    ] Initializing speech engine...
[2026-06-12 10:36:23,248.248 INFO    ] 2026-06-12 10:36:23
[2026-06-12 10:36:23,453.453 INFO    ] 2026-06-12 10:36:23
[2026-06-12 10:36:23,482.482 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 10:36:23,664.664 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 10:36:23,668.668 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 10:36:23,803.803 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 10:36:23,862.862 INFO    ] time= 12/06/2026 10:36:23
[2026-06-12 10:36:23,894.894 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 10:36:23,900.900 INFO    ] Checking for existing commands in stream...
[2026-06-12 10:36:23,967.967 INFO    ] No existing commands found in stream
[2026-06-12 10:36:28,976.976 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 10:36:28,979.979 INFO    ] Waiting 3.75 seconds before fallback handling...
[2026-06-12 10:36:33,069.069 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 10:36:33,071.071 INFO    ] Checking for system updates...
[2026-06-12 10:36:33,092.092 INFO    ] 200
[2026-06-12 10:36:33,093.093 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:36:33,123.123 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 10:36:33,124.124 INFO    ] No update needed
[2026-06-12 10:36:33,126.126 INFO    ] Checking for camera pi updates...
[2026-06-12 10:36:33,145.145 INFO    ] 200
[2026-06-12 10:36:33,146.146 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:36:33,171.171 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 10:36:33,203.203 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 10:36:33,205.205 INFO    ] No camera update needed
[2026-06-12 10:36:33,206.206 INFO    ] Script finished. Safe exiting...
[2026-06-12 10:36:33,207.207 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 10:36:33,210.210 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 10:36:33,213.213 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 10:36:35,255.255 INFO    ] ================================================
[2026-06-12 10:36:35,270.270 INFO    ] Launching Daemon at Fri Jun 12 10:36:35 IST 2026
[2026-06-12 10:36:35,281.281 INFO    ] ================================================
[2026-06-12 10:36:35,617.617 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 10:36:35
[2026-06-12 10:36:35,933.933 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 10:36:36,065.065 INFO    ] Initializing speech engine...
[2026-06-12 10:36:36,072.072 INFO    ] 2026-06-12 10:36:36
[2026-06-12 10:36:36,284.284 INFO    ] 2026-06-12 10:36:36
[2026-06-12 10:36:36,313.313 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 10:36:36,495.495 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 10:36:36,505.505 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 10:36:36,632.632 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 10:36:36,699.699 INFO    ] time= 12/06/2026 10:36:36
[2026-06-12 10:36:36,726.726 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 10:36:36,732.732 INFO    ] Checking for existing commands in stream...
[2026-06-12 10:36:36,799.799 INFO    ] No existing commands found in stream
[2026-06-12 10:36:41,813.813 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 10:36:41,816.816 INFO    ] Waiting 3.85 seconds before fallback handling...
[2026-06-12 10:36:46,048.048 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 10:36:46,049.049 INFO    ] Checking for system updates...
[2026-06-12 10:36:46,070.070 INFO    ] 200
[2026-06-12 10:36:46,071.071 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:36:46,101.101 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 10:36:46,103.103 INFO    ] No update needed
[2026-06-12 10:36:46,104.104 INFO    ] Checking for camera pi updates...
[2026-06-12 10:36:46,123.123 INFO    ] 200
[2026-06-12 10:36:46,125.125 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:36:46,150.150 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 10:36:46,189.189 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 10:36:46,191.191 INFO    ] No camera update needed
[2026-06-12 10:36:46,192.192 INFO    ] Script finished. Safe exiting...
[2026-06-12 10:36:46,193.193 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 10:36:46,196.196 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 10:36:46,199.199 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 10:36:48,239.239 INFO    ] ================================================
[2026-06-12 10:36:48,254.254 INFO    ] Launching Daemon at Fri Jun 12 10:36:48 IST 2026
[2026-06-12 10:36:48,265.265 INFO    ] ================================================
[2026-06-12 10:36:48,613.613 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 10:36:48
[2026-06-12 10:36:48,929.929 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 10:36:49,073.073 INFO    ] Initializing speech engine...
[2026-06-12 10:36:49,078.078 INFO    ] 2026-06-12 10:36:49
[2026-06-12 10:36:49,281.281 INFO    ] 2026-06-12 10:36:49
[2026-06-12 10:36:49,309.309 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 10:36:49,495.495 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 10:36:49,504.504 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 10:36:49,660.660 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 10:36:49,704.704 INFO    ] time= 12/06/2026 10:36:49
[2026-06-12 10:36:49,725.725 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 10:36:49,732.732 INFO    ] Checking for existing commands in stream...
[2026-06-12 10:36:49,798.798 INFO    ] No existing commands found in stream
[2026-06-12 10:36:54,807.807 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 10:36:54,810.810 INFO    ] Waiting 3.30 seconds before fallback handling...
[2026-06-12 10:36:58,457.457 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 10:36:58,459.459 INFO    ] Checking for system updates...
[2026-06-12 10:36:58,479.479 INFO    ] 200
[2026-06-12 10:36:58,481.481 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:36:58,511.511 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 10:36:58,512.512 INFO    ] No update needed
[2026-06-12 10:36:58,514.514 INFO    ] Checking for camera pi updates...
[2026-06-12 10:36:58,533.533 INFO    ] 200
[2026-06-12 10:36:58,534.534 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:36:58,557.557 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 10:36:58,608.608 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 10:36:58,610.610 INFO    ] No camera update needed
[2026-06-12 10:36:58,611.611 INFO    ] Script finished. Safe exiting...
[2026-06-12 10:36:58,612.612 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 10:36:58,615.615 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 10:36:58,618.618 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 10:37:00,659.659 INFO    ] ================================================
[2026-06-12 10:37:00,675.675 INFO    ] Launching Daemon at Fri Jun 12 10:37:00 IST 2026
[2026-06-12 10:37:00,685.685 INFO    ] ================================================
[2026-06-12 10:37:01,050.050 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 10:37:01
[2026-06-12 10:37:01,360.360 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 10:37:01,582.582 INFO    ] Initializing speech engine...
[2026-06-12 10:37:01,585.585 INFO    ] 2026-06-12 10:37:01
[2026-06-12 10:37:01,808.808 INFO    ] 2026-06-12 10:37:01
[2026-06-12 10:37:01,855.855 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 10:37:02,030.030 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 10:37:02,089.089 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 10:37:02,245.245 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 10:37:02,323.323 INFO    ] time= 12/06/2026 10:37:02
[2026-06-12 10:37:02,361.361 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 10:37:02,368.368 INFO    ] Checking for existing commands in stream...
[2026-06-12 10:37:02,451.451 INFO    ] No existing commands found in stream
[2026-06-12 10:37:07,461.461 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 10:37:07,464.464 INFO    ] Waiting 3.25 seconds before fallback handling...
[2026-06-12 10:37:11,075.075 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 10:37:11,077.077 INFO    ] Checking for system updates...
[2026-06-12 10:37:11,098.098 INFO    ] 200
[2026-06-12 10:37:11,099.099 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:37:11,132.132 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 10:37:11,133.133 INFO    ] No update needed
[2026-06-12 10:37:11,135.135 INFO    ] Checking for camera pi updates...
[2026-06-12 10:37:11,154.154 INFO    ] 200
[2026-06-12 10:37:11,155.155 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:37:11,178.178 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 10:37:11,214.214 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 10:37:11,216.216 INFO    ] No camera update needed
[2026-06-12 10:37:11,217.217 INFO    ] Script finished. Safe exiting...
[2026-06-12 10:37:11,218.218 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 10:37:11,221.221 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 10:37:11,224.224 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 10:37:13,263.263 INFO    ] ================================================
[2026-06-12 10:37:13,278.278 INFO    ] Launching Daemon at Fri Jun 12 10:37:13 IST 2026
[2026-06-12 10:37:13,289.289 INFO    ] ================================================
[2026-06-12 10:37:13,654.654 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 10:37:13
[2026-06-12 10:37:13,969.969 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 10:37:14,102.102 INFO    ] Initializing speech engine...
[2026-06-12 10:37:14,107.107 INFO    ] 2026-06-12 10:37:14
[2026-06-12 10:37:14,334.334 INFO    ] 2026-06-12 10:37:14
[2026-06-12 10:37:14,365.365 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 10:37:14,560.560 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 10:37:14,564.564 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 10:37:14,715.715 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 10:37:14,781.781 INFO    ] time= 12/06/2026 10:37:14
[2026-06-12 10:37:14,806.806 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 10:37:14,813.813 INFO    ] Checking for existing commands in stream...
[2026-06-12 10:37:14,882.882 INFO    ] No existing commands found in stream
[2026-06-12 10:37:19,892.892 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 10:37:19,894.894 INFO    ] Waiting 2.04 seconds before fallback handling...
[2026-06-12 10:37:22,277.277 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 10:37:22,278.278 INFO    ] Checking for system updates...
[2026-06-12 10:37:22,299.299 INFO    ] 200
[2026-06-12 10:37:22,300.300 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:37:22,330.330 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 10:37:22,332.332 INFO    ] No update needed
[2026-06-12 10:37:22,333.333 INFO    ] Checking for camera pi updates...
[2026-06-12 10:37:22,353.353 INFO    ] 200
[2026-06-12 10:37:22,354.354 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:37:22,377.377 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 10:37:22,424.424 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 10:37:22,425.425 INFO    ] No camera update needed
[2026-06-12 10:37:22,427.427 INFO    ] Script finished. Safe exiting...
[2026-06-12 10:37:22,428.428 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 10:37:22,431.431 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 10:37:22,434.434 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 10:37:24,473.473 INFO    ] ================================================
[2026-06-12 10:37:24,489.489 INFO    ] Launching Daemon at Fri Jun 12 10:37:24 IST 2026
[2026-06-12 10:37:24,500.500 INFO    ] ================================================
[2026-06-12 10:37:24,853.853 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 10:37:24
[2026-06-12 10:37:25,187.187 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 10:37:25,339.339 INFO    ] Initializing speech engine...
[2026-06-12 10:37:25,345.345 INFO    ] 2026-06-12 10:37:25
[2026-06-12 10:37:25,554.554 INFO    ] 2026-06-12 10:37:25
[2026-06-12 10:37:25,583.583 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 10:37:25,769.769 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 10:37:25,779.779 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 10:37:25,915.915 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 10:37:25,981.981 INFO    ] time= 12/06/2026 10:37:25
[2026-06-12 10:37:26,023.023 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 10:37:26,032.032 INFO    ] Checking for existing commands in stream...
[2026-06-12 10:37:26,126.126 INFO    ] No existing commands found in stream
[2026-06-12 10:37:31,137.137 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 10:37:31,140.140 INFO    ] Waiting 2.57 seconds before fallback handling...
[2026-06-12 10:37:35,254.254 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 10:37:35,257.257 INFO    ] Checking for system updates...
[2026-06-12 10:37:35,296.296 INFO    ] 200
[2026-06-12 10:37:35,298.298 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:37:35,331.331 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 10:37:35,332.332 INFO    ] No update needed
[2026-06-12 10:37:35,334.334 INFO    ] Checking for camera pi updates...
[2026-06-12 10:37:35,355.355 INFO    ] 200
[2026-06-12 10:37:35,356.356 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:37:35,379.379 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 10:37:35,414.414 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 10:37:35,416.416 INFO    ] No camera update needed
[2026-06-12 10:37:35,417.417 INFO    ] Script finished. Safe exiting...
[2026-06-12 10:37:35,418.418 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 10:37:35,422.422 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 10:37:35,425.425 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 10:37:37,463.463 INFO    ] ================================================
[2026-06-12 10:37:37,479.479 INFO    ] Launching Daemon at Fri Jun 12 10:37:37 IST 2026
[2026-06-12 10:37:37,490.490 INFO    ] ================================================
[2026-06-12 10:37:37,825.825 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 10:37:37
[2026-06-12 10:37:38,140.140 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 10:37:38,274.274 INFO    ] Initializing speech engine...
[2026-06-12 10:37:38,283.283 INFO    ] 2026-06-12 10:37:38
[2026-06-12 10:37:38,506.506 INFO    ] 2026-06-12 10:37:38
[2026-06-12 10:37:38,537.537 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 10:37:38,731.731 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 10:37:38,735.735 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 10:37:38,873.873 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 10:37:38,930.930 INFO    ] time= 12/06/2026 10:37:38
[2026-06-12 10:37:38,957.957 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 10:37:38,979.979 INFO    ] Checking for existing commands in stream...
[2026-06-12 10:37:39,053.053 INFO    ] No existing commands found in stream
[2026-06-12 10:37:44,063.063 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 10:37:44,065.065 INFO    ] Waiting 2.73 seconds before fallback handling...
[2026-06-12 10:37:47,203.203 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 10:37:47,205.205 INFO    ] Checking for system updates...
[2026-06-12 10:37:47,226.226 INFO    ] 200
[2026-06-12 10:37:47,227.227 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:37:47,257.257 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 10:37:47,259.259 INFO    ] No update needed
[2026-06-12 10:37:47,260.260 INFO    ] Checking for camera pi updates...
[2026-06-12 10:37:47,280.280 INFO    ] 200
[2026-06-12 10:37:47,281.281 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:37:47,305.305 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 10:37:47,341.341 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 10:37:47,342.342 INFO    ] No camera update needed
[2026-06-12 10:37:47,344.344 INFO    ] Script finished. Safe exiting...
[2026-06-12 10:37:47,345.345 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 10:37:47,348.348 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 10:37:47,351.351 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 10:37:49,390.390 INFO    ] ================================================
[2026-06-12 10:37:49,405.405 INFO    ] Launching Daemon at Fri Jun 12 10:37:49 IST 2026
[2026-06-12 10:37:49,417.417 INFO    ] ================================================
[2026-06-12 10:37:49,800.800 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 10:37:49
[2026-06-12 10:37:50,135.135 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 10:37:50,286.286 INFO    ] Initializing speech engine...
[2026-06-12 10:37:50,292.292 INFO    ] 2026-06-12 10:37:50
[2026-06-12 10:37:50,498.498 INFO    ] 2026-06-12 10:37:50
[2026-06-12 10:37:50,528.528 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 10:37:50,712.712 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 10:37:50,722.722 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 10:37:50,851.851 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 10:37:50,902.902 INFO    ] time= 12/06/2026 10:37:50
[2026-06-12 10:37:50,947.947 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 10:37:50,953.953 INFO    ] Checking for existing commands in stream...
[2026-06-12 10:37:51,026.026 INFO    ] No existing commands found in stream
[2026-06-12 10:37:56,040.040 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 10:37:56,044.044 INFO    ] Waiting 3.22 seconds before fallback handling...
[2026-06-12 10:37:59,763.763 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 10:37:59,764.764 INFO    ] Checking for system updates...
[2026-06-12 10:37:59,785.785 INFO    ] 200
[2026-06-12 10:37:59,786.786 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:37:59,817.817 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 10:37:59,818.818 INFO    ] No update needed
[2026-06-12 10:37:59,820.820 INFO    ] Checking for camera pi updates...
[2026-06-12 10:37:59,841.841 INFO    ] 200
[2026-06-12 10:37:59,842.842 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:37:59,869.869 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 10:38:00,008.008 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 10:38:00,010.010 INFO    ] No camera update needed
[2026-06-12 10:38:00,011.011 INFO    ] Script finished. Safe exiting...
[2026-06-12 10:38:00,012.012 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 10:38:00,016.016 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 10:38:00,019.019 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 10:38:02,056.056 INFO    ] ================================================
[2026-06-12 10:38:02,068.068 INFO    ] Launching Daemon at Fri Jun 12 10:38:02 IST 2026
[2026-06-12 10:38:02,081.081 INFO    ] ================================================
[2026-06-12 10:38:02,430.430 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 10:38:02
[2026-06-12 10:38:02,792.792 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 10:38:02,932.932 INFO    ] Initializing speech engine...
[2026-06-12 10:38:02,935.935 INFO    ] 2026-06-12 10:38:02
[2026-06-12 10:38:03,161.161 INFO    ] 2026-06-12 10:38:03
[2026-06-12 10:38:03,189.189 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 10:38:03,314.314 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 10:38:03,377.377 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 10:38:03,513.513 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 10:38:03,577.577 INFO    ] time= 12/06/2026 10:38:03
[2026-06-12 10:38:03,604.604 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 10:38:03,610.610 INFO    ] Checking for existing commands in stream...
[2026-06-12 10:38:03,677.677 INFO    ] No existing commands found in stream
[2026-06-12 10:38:08,686.686 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 10:38:08,689.689 INFO    ] Waiting 0.75 seconds before fallback handling...
[2026-06-12 10:38:10,400.400 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 10:38:10,403.403 INFO    ] Checking for system updates...
[2026-06-12 10:38:10,439.439 INFO    ] 200
[2026-06-12 10:38:10,442.442 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:38:10,499.499 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 10:38:10,501.501 INFO    ] No update needed
[2026-06-12 10:38:10,504.504 INFO    ] Checking for camera pi updates...
[2026-06-12 10:38:10,527.527 INFO    ] 200
[2026-06-12 10:38:10,529.529 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:38:10,552.552 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 10:38:10,592.592 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 10:38:10,593.593 INFO    ] No camera update needed
[2026-06-12 10:38:10,595.595 INFO    ] Script finished. Safe exiting...
[2026-06-12 10:38:10,596.596 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 10:38:10,599.599 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 10:38:10,602.602 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 10:38:12,640.640 INFO    ] ================================================
[2026-06-12 10:38:12,656.656 INFO    ] Launching Daemon at Fri Jun 12 10:38:12 IST 2026
[2026-06-12 10:38:12,667.667 INFO    ] ================================================
[2026-06-12 10:38:13,026.026 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 10:38:13
[2026-06-12 10:38:13,338.338 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 10:38:13,481.481 INFO    ] Initializing speech engine...
[2026-06-12 10:38:13,486.486 INFO    ] 2026-06-12 10:38:13
[2026-06-12 10:38:13,694.694 INFO    ] 2026-06-12 10:38:13
[2026-06-12 10:38:13,724.724 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 10:38:13,909.909 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 10:38:13,919.919 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 10:38:14,044.044 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 10:38:14,090.090 INFO    ] time= 12/06/2026 10:38:14
[2026-06-12 10:38:14,126.126 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 10:38:14,147.147 INFO    ] Checking for existing commands in stream...
[2026-06-12 10:38:14,221.221 INFO    ] No existing commands found in stream
[2026-06-12 10:38:19,230.230 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 10:38:19,233.233 INFO    ] Waiting 0.21 seconds before fallback handling...
[2026-06-12 10:38:21,313.313 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 10:38:21,316.316 INFO    ] Checking for system updates...
[2026-06-12 10:38:21,353.353 INFO    ] 200
[2026-06-12 10:38:21,356.356 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:38:21,410.410 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 10:38:21,413.413 INFO    ] No update needed
[2026-06-12 10:38:21,415.415 INFO    ] Checking for camera pi updates...
[2026-06-12 10:38:21,450.450 INFO    ] 200
[2026-06-12 10:38:21,453.453 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:38:21,476.476 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 10:38:21,516.516 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 10:38:21,518.518 INFO    ] No camera update needed
[2026-06-12 10:38:21,519.519 INFO    ] Script finished. Safe exiting...
[2026-06-12 10:38:21,521.521 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 10:38:21,524.524 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 10:38:21,527.527 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 10:38:23,567.567 INFO    ] ================================================
[2026-06-12 10:38:23,583.583 INFO    ] Launching Daemon at Fri Jun 12 10:38:23 IST 2026
[2026-06-12 10:38:23,595.595 INFO    ] ================================================
[2026-06-12 10:38:23,950.950 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 10:38:23
[2026-06-12 10:38:24,261.261 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 10:38:24,389.389 INFO    ] Initializing speech engine...
[2026-06-12 10:38:24,394.394 INFO    ] 2026-06-12 10:38:24
[2026-06-12 10:38:24,616.616 INFO    ] 2026-06-12 10:38:24
[2026-06-12 10:38:24,645.645 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 10:38:24,783.783 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 10:38:24,831.831 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 10:38:24,964.964 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 10:38:25,025.025 INFO    ] time= 12/06/2026 10:38:24
[2026-06-12 10:38:25,059.059 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 10:38:25,064.064 INFO    ] Checking for existing commands in stream...
[2026-06-12 10:38:25,135.135 INFO    ] No existing commands found in stream
[2026-06-12 10:38:30,144.144 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 10:38:30,146.146 INFO    ] Waiting 0.15 seconds before fallback handling...
[2026-06-12 10:38:30,647.647 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 10:38:30,648.648 INFO    ] Checking for system updates...
[2026-06-12 10:38:30,670.670 INFO    ] 200
[2026-06-12 10:38:30,671.671 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:38:30,704.704 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 10:38:30,705.705 INFO    ] No update needed
[2026-06-12 10:38:30,706.706 INFO    ] Checking for camera pi updates...
[2026-06-12 10:38:30,726.726 INFO    ] 200
[2026-06-12 10:38:30,727.727 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:38:30,752.752 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 10:38:30,790.790 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 10:38:30,791.791 INFO    ] No camera update needed
[2026-06-12 10:38:30,793.793 INFO    ] Script finished. Safe exiting...
[2026-06-12 10:38:30,794.794 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 10:38:30,797.797 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 10:38:30,799.799 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 10:38:32,841.841 INFO    ] ================================================
[2026-06-12 10:38:32,857.857 INFO    ] Launching Daemon at Fri Jun 12 10:38:32 IST 2026
[2026-06-12 10:38:32,868.868 INFO    ] ================================================
[2026-06-12 10:38:33,226.226 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 10:38:33
[2026-06-12 10:38:33,562.562 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 10:38:33,706.706 INFO    ] Initializing speech engine...
[2026-06-12 10:38:33,715.715 INFO    ] 2026-06-12 10:38:33
[2026-06-12 10:38:33,924.924 INFO    ] 2026-06-12 10:38:33
[2026-06-12 10:38:33,953.953 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 10:38:34,136.136 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 10:38:34,146.146 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 10:38:34,286.286 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 10:38:34,344.344 INFO    ] time= 12/06/2026 10:38:34
[2026-06-12 10:38:34,367.367 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 10:38:34,373.373 INFO    ] Checking for existing commands in stream...
[2026-06-12 10:38:34,440.440 INFO    ] No existing commands found in stream
[2026-06-12 10:38:39,454.454 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 10:38:39,458.458 INFO    ] Waiting 2.80 seconds before fallback handling...
[2026-06-12 10:38:42,646.646 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 10:38:42,648.648 INFO    ] Checking for system updates...
[2026-06-12 10:38:42,670.670 INFO    ] 200
[2026-06-12 10:38:42,671.671 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:38:42,704.704 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 10:38:42,706.706 INFO    ] No update needed
[2026-06-12 10:38:42,707.707 INFO    ] Checking for camera pi updates...
[2026-06-12 10:38:42,728.728 INFO    ] 200
[2026-06-12 10:38:42,729.729 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:38:42,754.754 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 10:38:42,793.793 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 10:38:42,795.795 INFO    ] No camera update needed
[2026-06-12 10:38:42,796.796 INFO    ] Script finished. Safe exiting...
[2026-06-12 10:38:42,798.798 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 10:38:42,801.801 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 10:38:42,804.804 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 10:38:44,844.844 INFO    ] ================================================
[2026-06-12 10:38:44,860.860 INFO    ] Launching Daemon at Fri Jun 12 10:38:44 IST 2026
[2026-06-12 10:38:44,871.871 INFO    ] ================================================
[2026-06-12 10:38:45,206.206 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 10:38:45
[2026-06-12 10:38:45,521.521 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 10:38:45,652.652 INFO    ] Initializing speech engine...
[2026-06-12 10:38:45,660.660 INFO    ] 2026-06-12 10:38:45
[2026-06-12 10:38:45,870.870 INFO    ] 2026-06-12 10:38:45
[2026-06-12 10:38:45,900.900 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 10:38:46,084.084 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 10:38:46,094.094 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 10:38:46,224.224 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 10:38:46,288.288 INFO    ] time= 12/06/2026 10:38:46
[2026-06-12 10:38:46,315.315 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 10:38:46,317.317 INFO    ] Checking for existing commands in stream...
[2026-06-12 10:38:46,389.389 INFO    ] No existing commands found in stream
[2026-06-12 10:38:51,399.399 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 10:38:51,402.402 INFO    ] Waiting 0.55 seconds before fallback handling...
[2026-06-12 10:38:52,354.354 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 10:38:52,355.355 INFO    ] Checking for system updates...
[2026-06-12 10:38:52,376.376 INFO    ] 200
[2026-06-12 10:38:52,378.378 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:38:52,409.409 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 10:38:52,410.410 INFO    ] No update needed
[2026-06-12 10:38:52,412.412 INFO    ] Checking for camera pi updates...
[2026-06-12 10:38:52,432.432 INFO    ] 200
[2026-06-12 10:38:52,433.433 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:38:52,456.456 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 10:38:52,493.493 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 10:38:52,494.494 INFO    ] No camera update needed
[2026-06-12 10:38:52,496.496 INFO    ] Script finished. Safe exiting...
[2026-06-12 10:38:52,497.497 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 10:38:52,500.500 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 10:38:52,503.503 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 10:38:54,543.543 INFO    ] ================================================
[2026-06-12 10:38:54,559.559 INFO    ] Launching Daemon at Fri Jun 12 10:38:54 IST 2026
[2026-06-12 10:38:54,571.571 INFO    ] ================================================
[2026-06-12 10:38:54,938.938 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 10:38:54
[2026-06-12 10:38:55,275.275 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 10:38:55,427.427 INFO    ] Initializing speech engine...
[2026-06-12 10:38:55,432.432 INFO    ] 2026-06-12 10:38:55
[2026-06-12 10:38:55,637.637 INFO    ] 2026-06-12 10:38:55
[2026-06-12 10:38:55,666.666 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 10:38:55,799.799 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 10:38:55,852.852 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 10:38:55,990.990 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 10:38:56,050.050 INFO    ] time= 12/06/2026 10:38:55
[2026-06-12 10:38:56,084.084 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 10:38:56,089.089 INFO    ] Checking for existing commands in stream...
[2026-06-12 10:38:56,157.157 INFO    ] No existing commands found in stream
[2026-06-12 10:39:01,172.172 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 10:39:01,176.176 INFO    ] Waiting 0.19 seconds before fallback handling...
[2026-06-12 10:39:01,675.675 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 10:39:01,677.677 INFO    ] Checking for system updates...
[2026-06-12 10:39:01,703.703 INFO    ] 200
[2026-06-12 10:39:01,705.705 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:39:01,744.744 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 10:39:01,745.745 INFO    ] No update needed
[2026-06-12 10:39:01,747.747 INFO    ] Checking for camera pi updates...
[2026-06-12 10:39:01,777.777 INFO    ] 200
[2026-06-12 10:39:01,779.779 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:39:01,820.820 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 10:39:01,853.853 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 10:39:01,854.854 INFO    ] No camera update needed
[2026-06-12 10:39:01,857.857 INFO    ] Script finished. Safe exiting...
[2026-06-12 10:39:01,859.859 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 10:39:01,866.866 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 10:39:01,871.871 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 10:39:03,912.912 INFO    ] ================================================
[2026-06-12 10:39:03,927.927 INFO    ] Launching Daemon at Fri Jun 12 10:39:03 IST 2026
[2026-06-12 10:39:03,938.938 INFO    ] ================================================
[2026-06-12 10:39:04,276.276 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 10:39:04
[2026-06-12 10:39:04,587.587 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 10:39:04,729.729 INFO    ] Initializing speech engine...
[2026-06-12 10:39:04,734.734 INFO    ] 2026-06-12 10:39:04
[2026-06-12 10:39:04,938.938 INFO    ] 2026-06-12 10:39:04
[2026-06-12 10:39:04,966.966 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 10:39:05,089.089 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 10:39:05,137.137 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 10:39:05,297.297 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 10:39:05,324.324 INFO    ] time= 12/06/2026 10:39:05
[2026-06-12 10:39:05,376.376 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 10:39:05,399.399 INFO    ] Checking for existing commands in stream...
[2026-06-12 10:39:05,494.494 INFO    ] No existing commands found in stream
[2026-06-12 10:39:10,508.508 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 10:39:10,511.511 INFO    ] Waiting 1.85 seconds before fallback handling...
[2026-06-12 10:39:12,727.727 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 10:39:12,728.728 INFO    ] Checking for system updates...
[2026-06-12 10:39:12,749.749 INFO    ] 200
[2026-06-12 10:39:12,751.751 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:39:12,783.783 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 10:39:12,784.784 INFO    ] No update needed
[2026-06-12 10:39:12,785.785 INFO    ] Checking for camera pi updates...
[2026-06-12 10:39:12,805.805 INFO    ] 200
[2026-06-12 10:39:12,806.806 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:39:12,830.830 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 10:39:12,871.871 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 10:39:12,873.873 INFO    ] No camera update needed
[2026-06-12 10:39:12,874.874 INFO    ] Script finished. Safe exiting...
[2026-06-12 10:39:12,875.875 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 10:39:12,878.878 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 10:39:12,881.881 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 10:39:14,921.921 INFO    ] ================================================
[2026-06-12 10:39:14,937.937 INFO    ] Launching Daemon at Fri Jun 12 10:39:14 IST 2026
[2026-06-12 10:39:14,949.949 INFO    ] ================================================
[2026-06-12 10:39:15,322.322 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 10:39:15
[2026-06-12 10:39:15,639.639 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 10:39:15,781.781 INFO    ] Initializing speech engine...
[2026-06-12 10:39:15,786.786 INFO    ] 2026-06-12 10:39:15
[2026-06-12 10:39:15,990.990 INFO    ] 2026-06-12 10:39:15
[2026-06-12 10:39:16,019.019 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 10:39:16,202.202 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 10:39:16,212.212 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 10:39:16,340.340 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 10:39:16,404.404 INFO    ] time= 12/06/2026 10:39:16
[2026-06-12 10:39:16,431.431 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 10:39:16,438.438 INFO    ] Checking for existing commands in stream...
[2026-06-12 10:39:16,504.504 INFO    ] No existing commands found in stream
[2026-06-12 10:39:21,514.514 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 10:39:21,522.522 INFO    ] Waiting 3.89 seconds before fallback handling...
[2026-06-12 10:39:26,058.058 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 10:39:26,059.059 INFO    ] Checking for system updates...
[2026-06-12 10:39:26,080.080 INFO    ] 200
[2026-06-12 10:39:26,081.081 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:39:26,111.111 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 10:39:26,112.112 INFO    ] No update needed
[2026-06-12 10:39:26,114.114 INFO    ] Checking for camera pi updates...
[2026-06-12 10:39:26,133.133 INFO    ] 200
[2026-06-12 10:39:26,134.134 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:39:26,157.157 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 10:39:26,198.198 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 10:39:26,199.199 INFO    ] No camera update needed
[2026-06-12 10:39:26,200.200 INFO    ] Script finished. Safe exiting...
[2026-06-12 10:39:26,202.202 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 10:39:26,205.205 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 10:39:26,207.207 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 10:39:28,250.250 INFO    ] ================================================
[2026-06-12 10:39:28,266.266 INFO    ] Launching Daemon at Fri Jun 12 10:39:28 IST 2026
[2026-06-12 10:39:28,277.277 INFO    ] ================================================
[2026-06-12 10:39:28,651.651 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 10:39:28
[2026-06-12 10:39:28,995.995 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 10:39:29,147.147 INFO    ] Initializing speech engine...
[2026-06-12 10:39:29,152.152 INFO    ] 2026-06-12 10:39:29
[2026-06-12 10:39:29,361.361 INFO    ] 2026-06-12 10:39:29
[2026-06-12 10:39:29,390.390 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 10:39:29,578.578 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 10:39:29,589.589 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 10:39:29,732.732 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 10:39:29,785.785 INFO    ] time= 12/06/2026 10:39:29
[2026-06-12 10:39:29,808.808 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 10:39:29,814.814 INFO    ] Checking for existing commands in stream...
[2026-06-12 10:39:29,882.882 INFO    ] No existing commands found in stream
[2026-06-12 10:39:34,902.902 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 10:39:34,905.905 INFO    ] Waiting 0.66 seconds before fallback handling...
[2026-06-12 10:39:35,927.927 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 10:39:35,928.928 INFO    ] Checking for system updates...
[2026-06-12 10:39:35,950.950 INFO    ] 200
[2026-06-12 10:39:35,951.951 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:39:35,982.982 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 10:39:35,983.983 INFO    ] No update needed
[2026-06-12 10:39:35,984.984 INFO    ] Checking for camera pi updates...
[2026-06-12 10:39:36,005.005 INFO    ] 200
[2026-06-12 10:39:36,006.006 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:39:36,031.031 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 10:39:36,067.067 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 10:39:36,068.068 INFO    ] No camera update needed
[2026-06-12 10:39:36,069.069 INFO    ] Script finished. Safe exiting...
[2026-06-12 10:39:36,071.071 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 10:39:36,074.074 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 10:39:36,077.077 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 10:39:38,116.116 INFO    ] ================================================
[2026-06-12 10:39:38,132.132 INFO    ] Launching Daemon at Fri Jun 12 10:39:38 IST 2026
[2026-06-12 10:39:38,143.143 INFO    ] ================================================
[2026-06-12 10:39:38,505.505 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 10:39:38
[2026-06-12 10:39:38,822.822 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 10:39:38,955.955 INFO    ] Initializing speech engine...
[2026-06-12 10:39:38,963.963 INFO    ] 2026-06-12 10:39:38
[2026-06-12 10:39:39,175.175 INFO    ] 2026-06-12 10:39:39
[2026-06-12 10:39:39,203.203 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 10:39:39,388.388 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 10:39:39,392.392 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 10:39:39,521.521 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 10:39:39,577.577 INFO    ] time= 12/06/2026 10:39:39
[2026-06-12 10:39:39,611.611 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 10:39:39,621.621 INFO    ] Checking for existing commands in stream...
[2026-06-12 10:39:39,693.693 INFO    ] No existing commands found in stream
[2026-06-12 10:39:44,707.707 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 10:39:44,710.710 INFO    ] Waiting 2.01 seconds before fallback handling...
[2026-06-12 10:39:47,019.019 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 10:39:47,020.020 INFO    ] Checking for system updates...
[2026-06-12 10:39:47,041.041 INFO    ] 200
[2026-06-12 10:39:47,042.042 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:39:47,075.075 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 10:39:47,076.076 INFO    ] No update needed
[2026-06-12 10:39:47,077.077 INFO    ] Checking for camera pi updates...
[2026-06-12 10:39:47,096.096 INFO    ] 200
[2026-06-12 10:39:47,098.098 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:39:47,122.122 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 10:39:47,146.146 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 10:39:47,147.147 INFO    ] No camera update needed
[2026-06-12 10:39:47,149.149 INFO    ] Script finished. Safe exiting...
[2026-06-12 10:39:47,150.150 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 10:39:47,153.153 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 10:39:47,156.156 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 10:39:49,194.194 INFO    ] ================================================
[2026-06-12 10:39:49,210.210 INFO    ] Launching Daemon at Fri Jun 12 10:39:49 IST 2026
[2026-06-12 10:39:49,221.221 INFO    ] ================================================
[2026-06-12 10:39:49,556.556 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 10:39:49
[2026-06-12 10:39:49,869.869 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 10:39:50,013.013 INFO    ] Initializing speech engine...
[2026-06-12 10:39:50,019.019 INFO    ] 2026-06-12 10:39:50
[2026-06-12 10:39:50,225.225 INFO    ] 2026-06-12 10:39:50
[2026-06-12 10:39:50,253.253 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 10:39:50,380.380 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 10:39:50,438.438 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 10:39:50,569.569 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 10:39:50,625.625 INFO    ] time= 12/06/2026 10:39:50
[2026-06-12 10:39:50,665.665 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 10:39:50,670.670 INFO    ] Checking for existing commands in stream...
[2026-06-12 10:39:50,739.739 INFO    ] No existing commands found in stream
[2026-06-12 10:39:55,750.750 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 10:39:55,753.753 INFO    ] Waiting 0.73 seconds before fallback handling...
[2026-06-12 10:39:56,835.835 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 10:39:56,837.837 INFO    ] Checking for system updates...
[2026-06-12 10:39:56,857.857 INFO    ] 200
[2026-06-12 10:39:56,858.858 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:39:56,891.891 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 10:39:56,892.892 INFO    ] No update needed
[2026-06-12 10:39:56,893.893 INFO    ] Checking for camera pi updates...
[2026-06-12 10:39:56,913.913 INFO    ] 200
[2026-06-12 10:39:56,914.914 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:39:56,953.953 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 10:39:56,987.987 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 10:39:56,988.988 INFO    ] No camera update needed
[2026-06-12 10:39:56,990.990 INFO    ] Script finished. Safe exiting...
[2026-06-12 10:39:56,991.991 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 10:39:56,994.994 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 10:39:56,997.997 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 10:39:59,036.036 INFO    ] ================================================
[2026-06-12 10:39:59,051.051 INFO    ] Launching Daemon at Fri Jun 12 10:39:59 IST 2026
[2026-06-12 10:39:59,062.062 INFO    ] ================================================
[2026-06-12 10:39:59,423.423 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 10:39:59
[2026-06-12 10:39:59,741.741 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 10:39:59,873.873 INFO    ] Initializing speech engine...
[2026-06-12 10:39:59,876.876 INFO    ] 2026-06-12 10:39:59
[2026-06-12 10:40:00,096.096 INFO    ] 2026-06-12 10:40:00
[2026-06-12 10:40:00,124.124 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 10:40:00,246.246 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 10:40:00,309.309 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 10:40:00,444.444 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 10:40:00,506.506 INFO    ] time= 12/06/2026 10:40:00
[2026-06-12 10:40:00,538.538 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 10:40:00,545.545 INFO    ] Checking for existing commands in stream...
[2026-06-12 10:40:00,612.612 INFO    ] No existing commands found in stream
[2026-06-12 10:40:05,621.621 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 10:40:05,624.624 INFO    ] Waiting 3.72 seconds before fallback handling...
[2026-06-12 10:40:11,722.722 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 10:40:11,724.724 INFO    ] Checking for system updates...
[2026-06-12 10:40:11,761.761 INFO    ] 200
[2026-06-12 10:40:11,763.763 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:40:11,824.824 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 10:40:11,826.826 INFO    ] No update needed
[2026-06-12 10:40:11,829.829 INFO    ] Checking for camera pi updates...
[2026-06-12 10:40:11,863.863 INFO    ] 200
[2026-06-12 10:40:11,865.865 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:40:11,897.897 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 10:40:11,921.921 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 10:40:11,922.922 INFO    ] No camera update needed
[2026-06-12 10:40:11,923.923 INFO    ] Script finished. Safe exiting...
[2026-06-12 10:40:11,924.924 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 10:40:11,928.928 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 10:40:11,931.931 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 10:40:13,972.972 INFO    ] ================================================
[2026-06-12 10:40:13,987.987 INFO    ] Launching Daemon at Fri Jun 12 10:40:13 IST 2026
[2026-06-12 10:40:14,998.998 INFO    ] ================================================
[2026-06-12 10:40:14,330.330 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 10:40:14
[2026-06-12 10:40:14,643.643 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 10:40:14,772.772 INFO    ] Initializing speech engine...
[2026-06-12 10:40:14,777.777 INFO    ] 2026-06-12 10:40:14
[2026-06-12 10:40:14,996.996 INFO    ] 2026-06-12 10:40:14
[2026-06-12 10:40:15,024.024 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 10:40:15,190.190 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 10:40:15,215.215 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 10:40:15,350.350 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 10:40:15,416.416 INFO    ] time= 12/06/2026 10:40:15
[2026-06-12 10:40:15,445.445 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 10:40:15,452.452 INFO    ] Checking for existing commands in stream...
[2026-06-12 10:40:15,569.569 INFO    ] No existing commands found in stream
[2026-06-12 10:40:20,578.578 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 10:40:20,581.581 INFO    ] Waiting 0.95 seconds before fallback handling...
[2026-06-12 10:40:22,028.028 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 10:40:22,030.030 INFO    ] Checking for system updates...
[2026-06-12 10:40:22,050.050 INFO    ] 200
[2026-06-12 10:40:22,052.052 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:40:22,082.082 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 10:40:22,083.083 INFO    ] No update needed
[2026-06-12 10:40:22,085.085 INFO    ] Checking for camera pi updates...
[2026-06-12 10:40:22,104.104 INFO    ] 200
[2026-06-12 10:40:22,105.105 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:40:22,130.130 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 10:40:22,170.170 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 10:40:22,172.172 INFO    ] No camera update needed
[2026-06-12 10:40:22,173.173 INFO    ] Script finished. Safe exiting...
[2026-06-12 10:40:22,174.174 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 10:40:22,177.177 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 10:40:22,180.180 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 10:40:24,218.218 INFO    ] ================================================
[2026-06-12 10:40:24,233.233 INFO    ] Launching Daemon at Fri Jun 12 10:40:24 IST 2026
[2026-06-12 10:40:24,244.244 INFO    ] ================================================
[2026-06-12 10:40:24,592.592 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 10:40:24
[2026-06-12 10:40:24,908.908 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 10:40:25,048.048 INFO    ] Initializing speech engine...
[2026-06-12 10:40:25,061.061 INFO    ] 2026-06-12 10:40:25
[2026-06-12 10:40:25,273.273 INFO    ] 2026-06-12 10:40:25
[2026-06-12 10:40:25,302.302 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 10:40:25,487.487 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 10:40:25,491.491 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 10:40:25,627.627 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 10:40:25,694.694 INFO    ] time= 12/06/2026 10:40:25
[2026-06-12 10:40:25,717.717 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 10:40:25,724.724 INFO    ] Checking for existing commands in stream...
[2026-06-12 10:40:25,791.791 INFO    ] No existing commands found in stream
[2026-06-12 10:40:30,815.815 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 10:40:30,818.818 INFO    ] Waiting 2.77 seconds before fallback handling...
[2026-06-12 10:40:33,955.955 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 10:40:33,956.956 INFO    ] Checking for system updates...
[2026-06-12 10:40:33,977.977 INFO    ] 200
[2026-06-12 10:40:33,978.978 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:40:34,008.008 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 10:40:34,009.009 INFO    ] No update needed
[2026-06-12 10:40:34,011.011 INFO    ] Checking for camera pi updates...
[2026-06-12 10:40:34,032.032 INFO    ] 200
[2026-06-12 10:40:34,033.033 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:40:34,056.056 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 10:40:34,091.091 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 10:40:34,093.093 INFO    ] No camera update needed
[2026-06-12 10:40:34,094.094 INFO    ] Script finished. Safe exiting...
[2026-06-12 10:40:34,095.095 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 10:40:34,098.098 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 10:40:34,101.101 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 10:40:36,141.141 INFO    ] ================================================
[2026-06-12 10:40:36,156.156 INFO    ] Launching Daemon at Fri Jun 12 10:40:36 IST 2026
[2026-06-12 10:40:36,167.167 INFO    ] ================================================
[2026-06-12 10:40:36,540.540 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 10:40:36
[2026-06-12 10:40:36,877.877 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 10:40:37,028.028 INFO    ] Initializing speech engine...
[2026-06-12 10:40:37,034.034 INFO    ] 2026-06-12 10:40:37
[2026-06-12 10:40:37,244.244 INFO    ] 2026-06-12 10:40:37
[2026-06-12 10:40:37,273.273 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 10:40:37,461.461 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 10:40:37,471.471 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 10:40:37,602.602 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 10:40:37,668.668 INFO    ] time= 12/06/2026 10:40:37
[2026-06-12 10:40:37,697.697 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 10:40:37,704.704 INFO    ] Checking for existing commands in stream...
[2026-06-12 10:40:37,771.771 INFO    ] No existing commands found in stream
[2026-06-12 10:40:42,796.796 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 10:40:42,800.800 INFO    ] Waiting 3.55 seconds before fallback handling...
[2026-06-12 10:40:46,725.725 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 10:40:46,726.726 INFO    ] Checking for system updates...
[2026-06-12 10:40:46,749.749 INFO    ] 200
[2026-06-12 10:40:46,750.750 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:40:46,783.783 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 10:40:46,784.784 INFO    ] No update needed
[2026-06-12 10:40:46,786.786 INFO    ] Checking for camera pi updates...
[2026-06-12 10:40:46,807.807 INFO    ] 200
[2026-06-12 10:40:46,809.809 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:40:46,833.833 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 10:40:46,870.870 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 10:40:46,872.872 INFO    ] No camera update needed
[2026-06-12 10:40:46,873.873 INFO    ] Script finished. Safe exiting...
[2026-06-12 10:40:46,875.875 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 10:40:46,878.878 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 10:40:46,881.881 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 10:40:48,920.920 INFO    ] ================================================
[2026-06-12 10:40:48,936.936 INFO    ] Launching Daemon at Fri Jun 12 10:40:48 IST 2026
[2026-06-12 10:40:48,947.947 INFO    ] ================================================
[2026-06-12 10:40:49,331.331 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 10:40:49
[2026-06-12 10:40:49,668.668 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 10:40:49,820.820 INFO    ] Initializing speech engine...
[2026-06-12 10:40:49,827.827 INFO    ] 2026-06-12 10:40:49
[2026-06-12 10:40:50,035.035 INFO    ] 2026-06-12 10:40:50
[2026-06-12 10:40:50,064.064 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 10:40:50,248.248 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 10:40:50,257.257 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 10:40:50,387.387 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 10:40:50,452.452 INFO    ] time= 12/06/2026 10:40:50
[2026-06-12 10:40:50,480.480 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 10:40:50,486.486 INFO    ] Checking for existing commands in stream...
[2026-06-12 10:40:50,553.553 INFO    ] No existing commands found in stream
[2026-06-12 10:40:55,568.568 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 10:40:55,571.571 INFO    ] Waiting 3.54 seconds before fallback handling...
[2026-06-12 10:40:59,457.457 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 10:40:59,459.459 INFO    ] Checking for system updates...
[2026-06-12 10:40:59,482.482 INFO    ] 200
[2026-06-12 10:40:59,483.483 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:40:59,516.516 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 10:40:59,517.517 INFO    ] No update needed
[2026-06-12 10:40:59,519.519 INFO    ] Checking for camera pi updates...
[2026-06-12 10:40:59,539.539 INFO    ] 200
[2026-06-12 10:40:59,541.541 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:40:59,564.564 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 10:40:59,604.604 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 10:40:59,605.605 INFO    ] No camera update needed
[2026-06-12 10:40:59,607.607 INFO    ] Script finished. Safe exiting...
[2026-06-12 10:40:59,608.608 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 10:40:59,611.611 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 10:40:59,614.614 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 10:41:01,654.654 INFO    ] ================================================
[2026-06-12 10:41:01,669.669 INFO    ] Launching Daemon at Fri Jun 12 10:41:01 IST 2026
[2026-06-12 10:41:01,679.679 INFO    ] ================================================
[2026-06-12 10:41:02,110.110 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 10:41:02
[2026-06-12 10:41:02,485.485 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 10:41:02,656.656 INFO    ] Initializing speech engine...
[2026-06-12 10:41:02,668.668 INFO    ] 2026-06-12 10:41:02
[2026-06-12 10:41:02,916.916 INFO    ] 2026-06-12 10:41:02
[2026-06-12 10:41:02,946.946 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 10:41:03,073.073 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 10:41:03,136.136 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 10:41:03,265.265 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 10:41:03,320.320 INFO    ] time= 12/06/2026 10:41:03
[2026-06-12 10:41:03,355.355 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 10:41:03,365.365 INFO    ] Checking for existing commands in stream...
[2026-06-12 10:41:03,434.434 INFO    ] No existing commands found in stream
[2026-06-12 10:41:08,444.444 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 10:41:08,447.447 INFO    ] Waiting 2.16 seconds before fallback handling...
[2026-06-12 10:41:10,993.993 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 10:41:10,994.994 INFO    ] Checking for system updates...
[2026-06-12 10:41:11,015.015 INFO    ] 200
[2026-06-12 10:41:11,016.016 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:41:11,050.050 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 10:41:11,051.051 INFO    ] No update needed
[2026-06-12 10:41:11,052.052 INFO    ] Checking for camera pi updates...
[2026-06-12 10:41:11,072.072 INFO    ] 200
[2026-06-12 10:41:11,073.073 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:41:11,098.098 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 10:41:11,141.141 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 10:41:11,142.142 INFO    ] No camera update needed
[2026-06-12 10:41:11,144.144 INFO    ] Script finished. Safe exiting...
[2026-06-12 10:41:11,145.145 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 10:41:11,148.148 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 10:41:11,151.151 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 10:41:13,191.191 INFO    ] ================================================
[2026-06-12 10:41:13,206.206 INFO    ] Launching Daemon at Fri Jun 12 10:41:13 IST 2026
[2026-06-12 10:41:13,217.217 INFO    ] ================================================
[2026-06-12 10:41:13,561.561 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 10:41:13
[2026-06-12 10:41:13,874.874 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 10:41:14,011.011 INFO    ] Initializing speech engine...
[2026-06-12 10:41:14,021.021 INFO    ] 2026-06-12 10:41:14
[2026-06-12 10:41:14,225.225 INFO    ] 2026-06-12 10:41:14
[2026-06-12 10:41:14,254.254 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 10:41:14,375.375 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 10:41:14,438.438 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 10:41:14,573.573 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 10:41:14,589.589 INFO    ] time= 12/06/2026 10:41:14
[2026-06-12 10:41:14,647.647 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 10:41:14,682.682 INFO    ] Checking for existing commands in stream...
[2026-06-12 10:41:14,759.759 INFO    ] No existing commands found in stream
[2026-06-12 10:41:19,771.771 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 10:41:19,773.773 INFO    ] Waiting 2.21 seconds before fallback handling...
[2026-06-12 10:41:22,343.343 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 10:41:22,345.345 INFO    ] Checking for system updates...
[2026-06-12 10:41:22,365.365 INFO    ] 200
[2026-06-12 10:41:22,367.367 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:41:22,396.396 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 10:41:22,398.398 INFO    ] No update needed
[2026-06-12 10:41:22,399.399 INFO    ] Checking for camera pi updates...
[2026-06-12 10:41:22,418.418 INFO    ] 200
[2026-06-12 10:41:22,420.420 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:41:22,444.444 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 10:41:22,482.482 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 10:41:22,483.483 INFO    ] No camera update needed
[2026-06-12 10:41:22,485.485 INFO    ] Script finished. Safe exiting...
[2026-06-12 10:41:22,486.486 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 10:41:22,489.489 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 10:41:22,493.493 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 10:41:24,532.532 INFO    ] ================================================
[2026-06-12 10:41:24,547.547 INFO    ] Launching Daemon at Fri Jun 12 10:41:24 IST 2026
[2026-06-12 10:41:24,558.558 INFO    ] ================================================
[2026-06-12 10:41:24,886.886 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 10:41:24
[2026-06-12 10:41:25,199.199 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 10:41:25,333.333 INFO    ] Initializing speech engine...
[2026-06-12 10:41:25,338.338 INFO    ] 2026-06-12 10:41:25
[2026-06-12 10:41:25,569.569 INFO    ] 2026-06-12 10:41:25
[2026-06-12 10:41:25,600.600 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 10:41:25,799.799 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 10:41:25,803.803 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 10:41:25,944.944 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 10:41:25,980.980 INFO    ] time= 12/06/2026 10:41:25
[2026-06-12 10:41:26,029.029 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 10:41:26,053.053 INFO    ] Checking for existing commands in stream...
[2026-06-12 10:41:26,131.131 INFO    ] No existing commands found in stream
[2026-06-12 10:41:31,141.141 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 10:41:31,143.143 INFO    ] Waiting 3.79 seconds before fallback handling...
[2026-06-12 10:41:35,282.282 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 10:41:35,284.284 INFO    ] Checking for system updates...
[2026-06-12 10:41:35,304.304 INFO    ] 200
[2026-06-12 10:41:35,305.305 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:41:35,336.336 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 10:41:35,337.337 INFO    ] No update needed
[2026-06-12 10:41:35,338.338 INFO    ] Checking for camera pi updates...
[2026-06-12 10:41:35,357.357 INFO    ] 200
[2026-06-12 10:41:35,359.359 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:41:35,383.383 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 10:41:35,425.425 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 10:41:35,426.426 INFO    ] No camera update needed
[2026-06-12 10:41:35,427.427 INFO    ] Script finished. Safe exiting...
[2026-06-12 10:41:35,428.428 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 10:41:35,431.431 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 10:41:35,434.434 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 10:41:37,473.473 INFO    ] ================================================
[2026-06-12 10:41:37,489.489 INFO    ] Launching Daemon at Fri Jun 12 10:41:37 IST 2026
[2026-06-12 10:41:37,500.500 INFO    ] ================================================
[2026-06-12 10:41:37,873.873 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 10:41:37
[2026-06-12 10:41:38,213.213 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 10:41:38,355.355 INFO    ] Initializing speech engine...
[2026-06-12 10:41:38,368.368 INFO    ] 2026-06-12 10:41:38
[2026-06-12 10:41:38,583.583 INFO    ] 2026-06-12 10:41:38
[2026-06-12 10:41:38,612.612 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 10:41:38,795.795 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 10:41:38,802.802 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 10:41:38,939.939 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 10:41:39,008.008 INFO    ] time= 12/06/2026 10:41:38
[2026-06-12 10:41:39,032.032 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 10:41:39,039.039 INFO    ] Checking for existing commands in stream...
[2026-06-12 10:41:39,157.157 INFO    ] No existing commands found in stream
[2026-06-12 10:41:44,168.168 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 10:41:44,171.171 INFO    ] Waiting 1.16 seconds before fallback handling...
[2026-06-12 10:41:45,670.670 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 10:41:45,672.672 INFO    ] Checking for system updates...
[2026-06-12 10:41:45,693.693 INFO    ] 200
[2026-06-12 10:41:45,694.694 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:41:45,727.727 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 10:41:45,729.729 INFO    ] No update needed
[2026-06-12 10:41:45,730.730 INFO    ] Checking for camera pi updates...
[2026-06-12 10:41:45,752.752 INFO    ] 200
[2026-06-12 10:41:45,754.754 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:41:45,780.780 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 10:41:45,817.817 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 10:41:45,818.818 INFO    ] No camera update needed
[2026-06-12 10:41:45,820.820 INFO    ] Script finished. Safe exiting...
[2026-06-12 10:41:45,821.821 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 10:41:45,825.825 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 10:41:45,828.828 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 10:41:47,866.866 INFO    ] ================================================
[2026-06-12 10:41:47,882.882 INFO    ] Launching Daemon at Fri Jun 12 10:41:47 IST 2026
[2026-06-12 10:41:47,893.893 INFO    ] ================================================
[2026-06-12 10:41:48,233.233 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 10:41:48
[2026-06-12 10:41:48,550.550 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 10:41:48,681.681 INFO    ] Initializing speech engine...
[2026-06-12 10:41:48,686.686 INFO    ] 2026-06-12 10:41:48
[2026-06-12 10:41:48,903.903 INFO    ] 2026-06-12 10:41:48
[2026-06-12 10:41:48,931.931 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 10:41:49,115.115 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 10:41:49,119.119 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 10:41:49,252.252 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 10:41:49,318.318 INFO    ] time= 12/06/2026 10:41:49
[2026-06-12 10:41:49,345.345 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 10:41:49,351.351 INFO    ] Checking for existing commands in stream...
[2026-06-12 10:41:49,419.419 INFO    ] No existing commands found in stream
[2026-06-12 10:41:54,428.428 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 10:41:54,431.431 INFO    ] Waiting 2.42 seconds before fallback handling...
[2026-06-12 10:41:57,203.203 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 10:41:57,205.205 INFO    ] Checking for system updates...
[2026-06-12 10:41:57,227.227 INFO    ] 200
[2026-06-12 10:41:57,229.229 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:41:57,263.263 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 10:41:57,264.264 INFO    ] No update needed
[2026-06-12 10:41:57,266.266 INFO    ] Checking for camera pi updates...
[2026-06-12 10:41:57,288.288 INFO    ] 200
[2026-06-12 10:41:57,289.289 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:41:57,314.314 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 10:41:57,352.352 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 10:41:57,353.353 INFO    ] No camera update needed
[2026-06-12 10:41:57,355.355 INFO    ] Script finished. Safe exiting...
[2026-06-12 10:41:57,356.356 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 10:41:57,359.359 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 10:41:57,362.362 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 10:41:59,402.402 INFO    ] ================================================
[2026-06-12 10:41:59,417.417 INFO    ] Launching Daemon at Fri Jun 12 10:41:59 IST 2026
[2026-06-12 10:41:59,428.428 INFO    ] ================================================
[2026-06-12 10:41:59,792.792 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 10:41:59
[2026-06-12 10:42:00,103.103 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 10:42:00,233.233 INFO    ] Initializing speech engine...
[2026-06-12 10:42:00,237.237 INFO    ] 2026-06-12 10:42:00
[2026-06-12 10:42:00,452.452 INFO    ] 2026-06-12 10:42:00
[2026-06-12 10:42:00,481.481 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 10:42:00,664.664 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 10:42:00,667.667 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 10:42:00,796.796 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 10:42:00,846.846 INFO    ] time= 12/06/2026 10:42:00
[2026-06-12 10:42:00,891.891 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 10:42:00,896.896 INFO    ] Checking for existing commands in stream...
[2026-06-12 10:42:00,967.967 INFO    ] No existing commands found in stream
[2026-06-12 10:42:05,976.976 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 10:42:05,979.979 INFO    ] Waiting 0.34 seconds before fallback handling...
[2026-06-12 10:42:06,678.678 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 10:42:06,680.680 INFO    ] Checking for system updates...
[2026-06-12 10:42:06,700.700 INFO    ] 200
[2026-06-12 10:42:06,702.702 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:42:06,734.734 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 10:42:06,735.735 INFO    ] No update needed
[2026-06-12 10:42:06,737.737 INFO    ] Checking for camera pi updates...
[2026-06-12 10:42:06,756.756 INFO    ] 200
[2026-06-12 10:42:06,757.757 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:42:06,780.780 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 10:42:06,920.920 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 10:42:06,921.921 INFO    ] No camera update needed
[2026-06-12 10:42:06,923.923 INFO    ] Script finished. Safe exiting...
[2026-06-12 10:42:06,924.924 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 10:42:06,927.927 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 10:42:06,929.929 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 10:42:08,968.968 INFO    ] ================================================
[2026-06-12 10:42:08,983.983 INFO    ] Launching Daemon at Fri Jun 12 10:42:08 IST 2026
[2026-06-12 10:42:08,994.994 INFO    ] ================================================
[2026-06-12 10:42:09,339.339 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 10:42:09
[2026-06-12 10:42:09,652.652 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 10:42:09,794.794 INFO    ] Initializing speech engine...
[2026-06-12 10:42:09,799.799 INFO    ] 2026-06-12 10:42:09
[2026-06-12 10:42:10,003.003 INFO    ] 2026-06-12 10:42:09
[2026-06-12 10:42:10,032.032 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 10:42:10,215.215 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 10:42:10,225.225 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 10:42:10,355.355 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 10:42:10,419.419 INFO    ] time= 12/06/2026 10:42:10
[2026-06-12 10:42:10,446.446 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 10:42:10,453.453 INFO    ] Checking for existing commands in stream...
[2026-06-12 10:42:10,520.520 INFO    ] No existing commands found in stream
[2026-06-12 10:42:15,535.535 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 10:42:15,537.537 INFO    ] Waiting 0.92 seconds before fallback handling...
[2026-06-12 10:42:16,796.796 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 10:42:16,797.797 INFO    ] Checking for system updates...
[2026-06-12 10:42:16,818.818 INFO    ] 200
[2026-06-12 10:42:16,820.820 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:42:16,865.865 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 10:42:16,867.867 INFO    ] No update needed
[2026-06-12 10:42:16,868.868 INFO    ] Checking for camera pi updates...
[2026-06-12 10:42:16,887.887 INFO    ] 200
[2026-06-12 10:42:16,888.888 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:42:16,913.913 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 10:42:16,949.949 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 10:42:16,950.950 INFO    ] No camera update needed
[2026-06-12 10:42:16,951.951 INFO    ] Script finished. Safe exiting...
[2026-06-12 10:42:16,953.953 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 10:42:16,956.956 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 10:42:16,958.958 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 10:42:19,997.997 INFO    ] ================================================
[2026-06-12 10:42:19,013.013 INFO    ] Launching Daemon at Fri Jun 12 10:42:19 IST 2026
[2026-06-12 10:42:19,023.023 INFO    ] ================================================
[2026-06-12 10:42:19,386.386 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 10:42:19
[2026-06-12 10:42:19,701.701 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 10:42:19,833.833 INFO    ] Initializing speech engine...
[2026-06-12 10:42:19,841.841 INFO    ] 2026-06-12 10:42:19
[2026-06-12 10:42:20,064.064 INFO    ] 2026-06-12 10:42:20
[2026-06-12 10:42:20,092.092 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 10:42:20,719.719 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 10:42:20,722.722 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 10:42:20,843.843 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 10:42:20,869.869 INFO    ] time= 12/06/2026 10:42:20
[2026-06-12 10:42:20,871.871 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 10:42:20,897.897 INFO    ] Checking for existing commands in stream...
[2026-06-12 10:42:20,966.966 INFO    ] No existing commands found in stream
[2026-06-12 10:42:25,977.977 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 10:42:25,980.980 INFO    ] Waiting 1.94 seconds before fallback handling...
[2026-06-12 10:42:28,275.275 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 10:42:28,277.277 INFO    ] Checking for system updates...
[2026-06-12 10:42:28,299.299 INFO    ] 200
[2026-06-12 10:42:28,301.301 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:42:28,331.331 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 10:42:28,333.333 INFO    ] No update needed
[2026-06-12 10:42:28,334.334 INFO    ] Checking for camera pi updates...
[2026-06-12 10:42:28,354.354 INFO    ] 200
[2026-06-12 10:42:28,355.355 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:42:28,380.380 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 10:42:28,416.416 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 10:42:28,418.418 INFO    ] No camera update needed
[2026-06-12 10:42:28,419.419 INFO    ] Script finished. Safe exiting...
[2026-06-12 10:42:28,420.420 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 10:42:28,424.424 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 10:42:28,427.427 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 10:42:30,466.466 INFO    ] ================================================
[2026-06-12 10:42:30,481.481 INFO    ] Launching Daemon at Fri Jun 12 10:42:30 IST 2026
[2026-06-12 10:42:30,492.492 INFO    ] ================================================
[2026-06-12 10:42:30,829.829 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 10:42:30
[2026-06-12 10:42:31,141.141 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 10:42:31,300.300 INFO    ] Initializing speech engine...
[2026-06-12 10:42:31,307.307 INFO    ] 2026-06-12 10:42:31
[2026-06-12 10:42:31,525.525 INFO    ] 2026-06-12 10:42:31
[2026-06-12 10:42:31,558.558 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 10:42:31,712.712 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 10:42:31,757.757 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 10:42:31,891.891 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 10:42:31,977.977 INFO    ] time= 12/06/2026 10:42:31
[2026-06-12 10:42:32,001.001 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 10:42:32,008.008 INFO    ] Checking for existing commands in stream...
[2026-06-12 10:42:32,081.081 INFO    ] No existing commands found in stream
[2026-06-12 10:42:37,096.096 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 10:42:37,099.099 INFO    ] Waiting 1.20 seconds before fallback handling...
[2026-06-12 10:42:38,694.694 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 10:42:38,696.696 INFO    ] Checking for system updates...
[2026-06-12 10:42:38,717.717 INFO    ] 200
[2026-06-12 10:42:38,718.718 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:42:38,751.751 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 10:42:38,753.753 INFO    ] No update needed
[2026-06-12 10:42:38,754.754 INFO    ] Checking for camera pi updates...
[2026-06-12 10:42:38,778.778 INFO    ] 200
[2026-06-12 10:42:38,779.779 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:42:38,803.803 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 10:42:38,842.842 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 10:42:38,843.843 INFO    ] No camera update needed
[2026-06-12 10:42:38,845.845 INFO    ] Script finished. Safe exiting...
[2026-06-12 10:42:38,846.846 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 10:42:38,849.849 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 10:42:38,852.852 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 10:42:40,894.894 INFO    ] ================================================
[2026-06-12 10:42:40,909.909 INFO    ] Launching Daemon at Fri Jun 12 10:42:40 IST 2026
[2026-06-12 10:42:40,919.919 INFO    ] ================================================
[2026-06-12 10:42:41,278.278 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 10:42:41
[2026-06-12 10:42:41,589.589 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 10:42:41,720.720 INFO    ] Initializing speech engine...
[2026-06-12 10:42:41,723.723 INFO    ] 2026-06-12 10:42:41
[2026-06-12 10:42:41,941.941 INFO    ] 2026-06-12 10:42:41
[2026-06-12 10:42:41,971.971 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 10:42:42,156.156 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 10:42:42,160.160 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 10:42:42,291.291 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 10:42:42,357.357 INFO    ] time= 12/06/2026 10:42:42
[2026-06-12 10:42:42,390.390 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 10:42:42,397.397 INFO    ] Checking for existing commands in stream...
[2026-06-12 10:42:42,488.488 INFO    ] No existing commands found in stream
[2026-06-12 10:42:47,502.502 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 10:42:47,505.505 INFO    ] Waiting 3.00 seconds before fallback handling...
[2026-06-12 10:42:50,868.868 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 10:42:50,870.870 INFO    ] Checking for system updates...
[2026-06-12 10:42:50,891.891 INFO    ] 200
[2026-06-12 10:42:50,892.892 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:42:50,925.925 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 10:42:50,926.926 INFO    ] No update needed
[2026-06-12 10:42:50,927.927 INFO    ] Checking for camera pi updates...
[2026-06-12 10:42:50,948.948 INFO    ] 200
[2026-06-12 10:42:50,949.949 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:42:50,972.972 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 10:42:51,009.009 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 10:42:51,010.010 INFO    ] No camera update needed
[2026-06-12 10:42:51,012.012 INFO    ] Script finished. Safe exiting...
[2026-06-12 10:42:51,013.013 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 10:42:51,016.016 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 10:42:51,019.019 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 10:42:53,057.057 INFO    ] ================================================
[2026-06-12 10:42:53,072.072 INFO    ] Launching Daemon at Fri Jun 12 10:42:53 IST 2026
[2026-06-12 10:42:53,082.082 INFO    ] ================================================
[2026-06-12 10:42:53,448.448 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 10:42:53
[2026-06-12 10:42:53,789.789 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 10:42:53,936.936 INFO    ] Initializing speech engine...
[2026-06-12 10:42:53,947.947 INFO    ] 2026-06-12 10:42:53
[2026-06-12 10:42:54,156.156 INFO    ] 2026-06-12 10:42:54
[2026-06-12 10:42:54,185.185 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 10:42:54,327.327 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 10:42:54,329.329 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 10:42:54,479.479 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 10:42:54,518.518 INFO    ] time= 12/06/2026 10:42:54
[2026-06-12 10:42:54,586.586 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 10:42:54,624.624 INFO    ] Checking for existing commands in stream...
[2026-06-12 10:42:54,722.722 INFO    ] No existing commands found in stream
[2026-06-12 10:42:59,733.733 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 10:42:59,736.736 INFO    ] Waiting 1.52 seconds before fallback handling...
[2026-06-12 10:43:02,347.347 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 10:43:02,350.350 INFO    ] Checking for system updates...
[2026-06-12 10:43:02,371.371 INFO    ] 200
[2026-06-12 10:43:02,373.373 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:43:02,404.404 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 10:43:02,405.405 INFO    ] No update needed
[2026-06-12 10:43:02,407.407 INFO    ] Checking for camera pi updates...
[2026-06-12 10:43:02,431.431 INFO    ] 200
[2026-06-12 10:43:02,433.433 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:43:02,463.463 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 10:43:02,487.487 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 10:43:02,489.489 INFO    ] No camera update needed
[2026-06-12 10:43:02,490.490 INFO    ] Script finished. Safe exiting...
[2026-06-12 10:43:02,492.492 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 10:43:02,495.495 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 10:43:02,498.498 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 10:43:04,539.539 INFO    ] ================================================
[2026-06-12 10:43:04,554.554 INFO    ] Launching Daemon at Fri Jun 12 10:43:04 IST 2026
[2026-06-12 10:43:04,565.565 INFO    ] ================================================
[2026-06-12 10:43:04,928.928 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 10:43:04
[2026-06-12 10:43:05,243.243 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 10:43:05,373.373 INFO    ] Initializing speech engine...
[2026-06-12 10:43:05,381.381 INFO    ] 2026-06-12 10:43:05
[2026-06-12 10:43:05,572.572 INFO    ] 2026-06-12 10:43:05
[2026-06-12 10:43:05,614.614 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 10:43:05,761.761 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 10:43:05,823.823 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 10:43:05,960.960 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 10:43:06,023.023 INFO    ] time= 12/06/2026 10:43:05
[2026-06-12 10:43:06,056.056 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 10:43:06,063.063 INFO    ] Checking for existing commands in stream...
[2026-06-12 10:43:06,132.132 INFO    ] No existing commands found in stream
[2026-06-12 10:43:11,146.146 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 10:43:11,149.149 INFO    ] Waiting 0.73 seconds before fallback handling...
[2026-06-12 10:43:12,289.289 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 10:43:12,291.291 INFO    ] Checking for system updates...
[2026-06-12 10:43:12,313.313 INFO    ] 200
[2026-06-12 10:43:12,314.314 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:43:12,346.346 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 10:43:12,347.347 INFO    ] No update needed
[2026-06-12 10:43:12,349.349 INFO    ] Checking for camera pi updates...
[2026-06-12 10:43:12,370.370 INFO    ] 200
[2026-06-12 10:43:12,371.371 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:43:12,395.395 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 10:43:12,417.417 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 10:43:12,419.419 INFO    ] No camera update needed
[2026-06-12 10:43:12,420.420 INFO    ] Script finished. Safe exiting...
[2026-06-12 10:43:12,422.422 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 10:43:12,425.425 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 10:43:12,428.428 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 10:43:14,469.469 INFO    ] ================================================
[2026-06-12 10:43:14,484.484 INFO    ] Launching Daemon at Fri Jun 12 10:43:14 IST 2026
[2026-06-12 10:43:14,495.495 INFO    ] ================================================
[2026-06-12 10:43:14,893.893 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 10:43:14
[2026-06-12 10:43:15,233.233 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 10:43:15,385.385 INFO    ] Initializing speech engine...
[2026-06-12 10:43:15,390.390 INFO    ] 2026-06-12 10:43:15
[2026-06-12 10:43:15,602.602 INFO    ] 2026-06-12 10:43:15
[2026-06-12 10:43:15,632.632 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 10:43:15,817.817 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 10:43:15,827.827 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 10:43:15,955.955 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 10:43:16,026.026 INFO    ] time= 12/06/2026 10:43:15
[2026-06-12 10:43:16,051.051 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 10:43:16,058.058 INFO    ] Checking for existing commands in stream...
[2026-06-12 10:43:16,125.125 INFO    ] No existing commands found in stream
[2026-06-12 10:43:21,135.135 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 10:43:21,138.138 INFO    ] Waiting 3.01 seconds before fallback handling...
[2026-06-12 10:43:24,523.523 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 10:43:24,524.524 INFO    ] Checking for system updates...
[2026-06-12 10:43:24,548.548 INFO    ] 200
[2026-06-12 10:43:24,549.549 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:43:24,585.585 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 10:43:24,586.586 INFO    ] No update needed
[2026-06-12 10:43:24,588.588 INFO    ] Checking for camera pi updates...
[2026-06-12 10:43:24,612.612 INFO    ] 200
[2026-06-12 10:43:24,613.613 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:43:24,641.641 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 10:43:24,679.679 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 10:43:24,681.681 INFO    ] No camera update needed
[2026-06-12 10:43:24,683.683 INFO    ] Script finished. Safe exiting...
[2026-06-12 10:43:24,684.684 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 10:43:24,687.687 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 10:43:24,690.690 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 10:43:26,733.733 INFO    ] ================================================
[2026-06-12 10:43:26,749.749 INFO    ] Launching Daemon at Fri Jun 12 10:43:26 IST 2026
[2026-06-12 10:43:26,761.761 INFO    ] ================================================
[2026-06-12 10:43:27,147.147 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 10:43:27
[2026-06-12 10:43:27,469.469 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 10:43:27,604.604 INFO    ] Initializing speech engine...
[2026-06-12 10:43:27,609.609 INFO    ] 2026-06-12 10:43:27
[2026-06-12 10:43:27,823.823 INFO    ] 2026-06-12 10:43:27
[2026-06-12 10:43:27,852.852 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 10:43:28,037.037 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 10:43:28,041.041 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 10:43:28,169.169 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 10:43:28,230.230 INFO    ] time= 12/06/2026 10:43:28
[2026-06-12 10:43:28,264.264 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 10:43:28,269.269 INFO    ] Checking for existing commands in stream...
[2026-06-12 10:43:28,340.340 INFO    ] No existing commands found in stream
[2026-06-12 10:43:33,349.349 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 10:43:33,352.352 INFO    ] Waiting 1.55 seconds before fallback handling...
[2026-06-12 10:43:35,226.226 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 10:43:35,228.228 INFO    ] Checking for system updates...
[2026-06-12 10:43:35,249.249 INFO    ] 200
[2026-06-12 10:43:35,250.250 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:43:35,280.280 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 10:43:35,282.282 INFO    ] No update needed
[2026-06-12 10:43:35,283.283 INFO    ] Checking for camera pi updates...
[2026-06-12 10:43:35,302.302 INFO    ] 200
[2026-06-12 10:43:35,304.304 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:43:35,327.327 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 10:43:35,364.364 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 10:43:35,366.366 INFO    ] No camera update needed
[2026-06-12 10:43:35,367.367 INFO    ] Script finished. Safe exiting...
[2026-06-12 10:43:35,368.368 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 10:43:35,371.371 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 10:43:35,374.374 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 10:43:37,414.414 INFO    ] ================================================
[2026-06-12 10:43:37,430.430 INFO    ] Launching Daemon at Fri Jun 12 10:43:37 IST 2026
[2026-06-12 10:43:37,441.441 INFO    ] ================================================
[2026-06-12 10:43:37,793.793 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 10:43:37
[2026-06-12 10:43:38,106.106 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 10:43:38,238.238 INFO    ] Initializing speech engine...
[2026-06-12 10:43:38,243.243 INFO    ] 2026-06-12 10:43:38
[2026-06-12 10:43:38,462.462 INFO    ] 2026-06-12 10:43:38
[2026-06-12 10:43:38,492.492 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 10:43:38,679.679 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 10:43:38,682.682 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 10:43:38,821.821 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 10:43:38,886.886 INFO    ] time= 12/06/2026 10:43:38
[2026-06-12 10:43:38,915.915 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 10:43:38,917.917 INFO    ] Checking for existing commands in stream...
[2026-06-12 10:43:38,990.990 INFO    ] No existing commands found in stream
[2026-06-12 10:43:43,999.999 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 10:43:44,002.002 INFO    ] Waiting 3.73 seconds before fallback handling...
[2026-06-12 10:43:48,136.136 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 10:43:48,138.138 INFO    ] Checking for system updates...
[2026-06-12 10:43:48,158.158 INFO    ] 200
[2026-06-12 10:43:48,159.159 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:43:48,190.190 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 10:43:48,191.191 INFO    ] No update needed
[2026-06-12 10:43:48,193.193 INFO    ] Checking for camera pi updates...
[2026-06-12 10:43:48,212.212 INFO    ] 200
[2026-06-12 10:43:48,214.214 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:43:48,238.238 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 10:43:48,275.275 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 10:43:48,276.276 INFO    ] No camera update needed
[2026-06-12 10:43:48,277.277 INFO    ] Script finished. Safe exiting...
[2026-06-12 10:43:48,279.279 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 10:43:48,282.282 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 10:43:48,284.284 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 10:43:50,322.322 INFO    ] ================================================
[2026-06-12 10:43:50,338.338 INFO    ] Launching Daemon at Fri Jun 12 10:43:50 IST 2026
[2026-06-12 10:43:50,348.348 INFO    ] ================================================
[2026-06-12 10:43:50,734.734 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 10:43:50
[2026-06-12 10:43:51,077.077 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 10:43:51,230.230 INFO    ] Initializing speech engine...
[2026-06-12 10:43:51,235.235 INFO    ] 2026-06-12 10:43:51
[2026-06-12 10:43:51,443.443 INFO    ] 2026-06-12 10:43:51
[2026-06-12 10:43:51,472.472 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 10:43:51,656.656 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 10:43:51,666.666 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 10:43:51,794.794 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 10:43:51,859.859 INFO    ] time= 12/06/2026 10:43:51
[2026-06-12 10:43:51,886.886 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 10:43:51,892.892 INFO    ] Checking for existing commands in stream...
[2026-06-12 10:43:51,958.958 INFO    ] No existing commands found in stream
[2026-06-12 10:43:56,973.973 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 10:43:56,977.977 INFO    ] Waiting 0.56 seconds before fallback handling...
[2026-06-12 10:43:57,893.893 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 10:43:57,894.894 INFO    ] Checking for system updates...
[2026-06-12 10:43:57,915.915 INFO    ] 200
[2026-06-12 10:43:57,916.916 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:43:57,946.946 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 10:43:57,948.948 INFO    ] No update needed
[2026-06-12 10:43:57,949.949 INFO    ] Checking for camera pi updates...
[2026-06-12 10:43:57,970.970 INFO    ] 200
[2026-06-12 10:43:57,971.971 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:43:57,996.996 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 10:43:58,032.032 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 10:43:58,033.033 INFO    ] No camera update needed
[2026-06-12 10:43:58,035.035 INFO    ] Script finished. Safe exiting...
[2026-06-12 10:43:58,036.036 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 10:43:58,039.039 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 10:43:58,042.042 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 10:44:00,080.080 INFO    ] ================================================
[2026-06-12 10:44:00,095.095 INFO    ] Launching Daemon at Fri Jun 12 10:44:00 IST 2026
[2026-06-12 10:44:00,106.106 INFO    ] ================================================
[2026-06-12 10:44:00,448.448 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 10:44:00
[2026-06-12 10:44:00,765.765 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 10:44:00,905.905 INFO    ] Initializing speech engine...
[2026-06-12 10:44:00,915.915 INFO    ] 2026-06-12 10:44:00
[2026-06-12 10:44:01,121.121 INFO    ] 2026-06-12 10:44:01
[2026-06-12 10:44:01,150.150 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 10:44:01,335.335 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 10:44:01,344.344 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 10:44:01,490.490 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 10:44:01,572.572 INFO    ] time= 12/06/2026 10:44:01
[2026-06-12 10:44:01,575.575 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 10:44:01,583.583 INFO    ] Checking for existing commands in stream...
[2026-06-12 10:44:01,648.648 INFO    ] No existing commands found in stream
[2026-06-12 10:44:06,658.658 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 10:44:06,662.662 INFO    ] Waiting 3.06 seconds before fallback handling...
[2026-06-12 10:44:10,099.099 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 10:44:10,101.101 INFO    ] Checking for system updates...
[2026-06-12 10:44:10,124.124 INFO    ] 200
[2026-06-12 10:44:10,125.125 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:44:10,155.155 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 10:44:10,157.157 INFO    ] No update needed
[2026-06-12 10:44:10,158.158 INFO    ] Checking for camera pi updates...
[2026-06-12 10:44:10,177.177 INFO    ] 200
[2026-06-12 10:44:10,179.179 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:44:10,202.202 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 10:44:10,340.340 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 10:44:10,341.341 INFO    ] No camera update needed
[2026-06-12 10:44:10,343.343 INFO    ] Script finished. Safe exiting...
[2026-06-12 10:44:10,344.344 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 10:44:10,347.347 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 10:44:10,350.350 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 10:44:12,390.390 INFO    ] ================================================
[2026-06-12 10:44:12,405.405 INFO    ] Launching Daemon at Fri Jun 12 10:44:12 IST 2026
[2026-06-12 10:44:12,416.416 INFO    ] ================================================
[2026-06-12 10:44:12,759.759 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 10:44:12
[2026-06-12 10:44:13,072.072 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 10:44:13,202.202 INFO    ] Initializing speech engine...
[2026-06-12 10:44:13,210.210 INFO    ] 2026-06-12 10:44:13
[2026-06-12 10:44:13,420.420 INFO    ] 2026-06-12 10:44:13
[2026-06-12 10:44:13,450.450 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 10:44:13,631.631 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 10:44:13,634.634 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 10:44:13,769.769 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 10:44:13,833.833 INFO    ] time= 12/06/2026 10:44:13
[2026-06-12 10:44:13,859.859 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 10:44:13,865.865 INFO    ] Checking for existing commands in stream...
[2026-06-12 10:44:13,932.932 INFO    ] No existing commands found in stream
[2026-06-12 10:44:18,941.941 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 10:44:18,944.944 INFO    ] Waiting 2.95 seconds before fallback handling...
[2026-06-12 10:44:22,269.269 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 10:44:22,271.271 INFO    ] Checking for system updates...
[2026-06-12 10:44:22,293.293 INFO    ] 200
[2026-06-12 10:44:22,294.294 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:44:22,327.327 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 10:44:22,328.328 INFO    ] No update needed
[2026-06-12 10:44:22,330.330 INFO    ] Checking for camera pi updates...
[2026-06-12 10:44:22,351.351 INFO    ] 200
[2026-06-12 10:44:22,352.352 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:44:22,385.385 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 10:44:22,417.417 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 10:44:22,419.419 INFO    ] No camera update needed
[2026-06-12 10:44:22,420.420 INFO    ] Script finished. Safe exiting...
[2026-06-12 10:44:22,421.421 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 10:44:22,424.424 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 10:44:22,427.427 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 10:44:24,465.465 INFO    ] ================================================
[2026-06-12 10:44:24,481.481 INFO    ] Launching Daemon at Fri Jun 12 10:44:24 IST 2026
[2026-06-12 10:44:24,491.491 INFO    ] ================================================
[2026-06-12 10:44:24,858.858 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 10:44:24
[2026-06-12 10:44:25,171.171 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 10:44:25,302.302 INFO    ] Initializing speech engine...
[2026-06-12 10:44:25,305.305 INFO    ] 2026-06-12 10:44:25
[2026-06-12 10:44:25,525.525 INFO    ] 2026-06-12 10:44:25
[2026-06-12 10:44:25,555.555 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 10:44:25,741.741 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 10:44:25,745.745 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 10:44:25,876.876 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 10:44:25,917.917 INFO    ] time= 12/06/2026 10:44:25
[2026-06-12 10:44:25,958.958 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 10:44:25,979.979 INFO    ] Checking for existing commands in stream...
[2026-06-12 10:44:26,052.052 INFO    ] No existing commands found in stream
[2026-06-12 10:44:31,081.081 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 10:44:31,084.084 INFO    ] Waiting 3.08 seconds before fallback handling...
[2026-06-12 10:44:34,515.515 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 10:44:34,517.517 INFO    ] Checking for system updates...
[2026-06-12 10:44:34,538.538 INFO    ] 200
[2026-06-12 10:44:34,540.540 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:44:34,572.572 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 10:44:34,574.574 INFO    ] No update needed
[2026-06-12 10:44:34,575.575 INFO    ] Checking for camera pi updates...
[2026-06-12 10:44:34,596.596 INFO    ] 200
[2026-06-12 10:44:34,597.597 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:44:34,622.622 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 10:44:34,664.664 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 10:44:34,665.665 INFO    ] No camera update needed
[2026-06-12 10:44:34,666.666 INFO    ] Script finished. Safe exiting...
[2026-06-12 10:44:34,668.668 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 10:44:34,671.671 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 10:44:34,673.673 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 10:44:36,713.713 INFO    ] ================================================
[2026-06-12 10:44:36,865.865 INFO    ] Launching Daemon at Fri Jun 12 10:44:36 IST 2026
[2026-06-12 10:44:36,876.876 INFO    ] ================================================
[2026-06-12 10:44:37,215.215 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 10:44:37
[2026-06-12 10:44:37,527.527 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 10:44:37,668.668 INFO    ] Initializing speech engine...
[2026-06-12 10:44:37,673.673 INFO    ] 2026-06-12 10:44:37
[2026-06-12 10:44:37,877.877 INFO    ] 2026-06-12 10:44:37
[2026-06-12 10:44:37,905.905 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 10:44:38,038.038 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 10:44:38,091.091 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 10:44:38,220.220 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 10:44:38,287.287 INFO    ] time= 12/06/2026 10:44:38
[2026-06-12 10:44:38,319.319 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 10:44:38,321.321 INFO    ] Checking for existing commands in stream...
[2026-06-12 10:44:38,390.390 INFO    ] No existing commands found in stream
[2026-06-12 10:44:43,401.401 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 10:44:43,404.404 INFO    ] Waiting 2.97 seconds before fallback handling...
[2026-06-12 10:44:46,713.713 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 10:44:46,714.714 INFO    ] Checking for system updates...
[2026-06-12 10:44:46,735.735 INFO    ] 200
[2026-06-12 10:44:46,737.737 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:44:46,772.772 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 10:44:46,773.773 INFO    ] No update needed
[2026-06-12 10:44:46,774.774 INFO    ] Checking for camera pi updates...
[2026-06-12 10:44:46,794.794 INFO    ] 200
[2026-06-12 10:44:46,795.795 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:44:46,818.818 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 10:44:46,862.862 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 10:44:46,863.863 INFO    ] No camera update needed
[2026-06-12 10:44:46,865.865 INFO    ] Script finished. Safe exiting...
[2026-06-12 10:44:46,866.866 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 10:44:46,869.869 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 10:44:46,872.872 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 10:44:48,909.909 INFO    ] ================================================
[2026-06-12 10:44:48,925.925 INFO    ] Launching Daemon at Fri Jun 12 10:44:48 IST 2026
[2026-06-12 10:44:48,936.936 INFO    ] ================================================
[2026-06-12 10:44:49,266.266 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 10:44:49
[2026-06-12 10:44:49,577.577 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 10:44:49,708.708 INFO    ] Initializing speech engine...
[2026-06-12 10:44:49,721.721 INFO    ] 2026-06-12 10:44:49
[2026-06-12 10:44:49,926.926 INFO    ] 2026-06-12 10:44:49
[2026-06-12 10:44:49,955.955 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 10:44:50,138.138 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 10:44:50,142.142 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 10:44:50,270.270 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 10:44:50,320.320 INFO    ] time= 12/06/2026 10:44:50
[2026-06-12 10:44:50,365.365 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 10:44:50,370.370 INFO    ] Checking for existing commands in stream...
[2026-06-12 10:44:50,441.441 INFO    ] No existing commands found in stream
[2026-06-12 10:44:55,450.450 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 10:44:55,453.453 INFO    ] Waiting 1.76 seconds before fallback handling...
[2026-06-12 10:44:57,580.580 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 10:44:57,582.582 INFO    ] Checking for system updates...
[2026-06-12 10:44:57,602.602 INFO    ] 200
[2026-06-12 10:44:57,604.604 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:44:57,637.637 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 10:44:57,638.638 INFO    ] No update needed
[2026-06-12 10:44:57,639.639 INFO    ] Checking for camera pi updates...
[2026-06-12 10:44:57,660.660 INFO    ] 200
[2026-06-12 10:44:57,661.661 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:44:57,684.684 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 10:44:57,719.719 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 10:44:57,720.720 INFO    ] No camera update needed
[2026-06-12 10:44:57,722.722 INFO    ] Script finished. Safe exiting...
[2026-06-12 10:44:57,723.723 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 10:44:57,726.726 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 10:44:57,729.729 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 10:44:59,771.771 INFO    ] ================================================
[2026-06-12 10:44:59,786.786 INFO    ] Launching Daemon at Fri Jun 12 10:44:59 IST 2026
[2026-06-12 10:44:59,797.797 INFO    ] ================================================
[2026-06-12 10:45:00,131.131 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 10:45:00
[2026-06-12 10:45:00,444.444 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 10:45:00,588.588 INFO    ] Initializing speech engine...
[2026-06-12 10:45:00,594.594 INFO    ] 2026-06-12 10:45:00
[2026-06-12 10:45:00,799.799 INFO    ] 2026-06-12 10:45:00
[2026-06-12 10:45:00,828.828 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 10:45:01,015.015 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 10:45:01,025.025 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 10:45:01,157.157 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 10:45:01,221.221 INFO    ] time= 12/06/2026 10:45:01
[2026-06-12 10:45:01,250.250 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 10:45:01,256.256 INFO    ] Checking for existing commands in stream...
[2026-06-12 10:45:01,325.325 INFO    ] No existing commands found in stream
[2026-06-12 10:45:06,332.332 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 10:45:06,335.335 INFO    ] Waiting 0.16 seconds before fallback handling...
[2026-06-12 10:45:06,824.824 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 10:45:06,825.825 INFO    ] Checking for system updates...
[2026-06-12 10:45:06,847.847 INFO    ] 200
[2026-06-12 10:45:06,849.849 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:45:06,879.879 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 10:45:06,880.880 INFO    ] No update needed
[2026-06-12 10:45:06,882.882 INFO    ] Checking for camera pi updates...
[2026-06-12 10:45:06,901.901 INFO    ] 200
[2026-06-12 10:45:06,903.903 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:45:06,928.928 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 10:45:06,965.965 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 10:45:06,966.966 INFO    ] No camera update needed
[2026-06-12 10:45:06,968.968 INFO    ] Script finished. Safe exiting...
[2026-06-12 10:45:06,969.969 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 10:45:06,972.972 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 10:45:06,975.975 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 10:45:09,014.014 INFO    ] ================================================
[2026-06-12 10:45:09,029.029 INFO    ] Launching Daemon at Fri Jun 12 10:45:09 IST 2026
[2026-06-12 10:45:09,039.039 INFO    ] ================================================
[2026-06-12 10:45:09,413.413 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 10:45:09
[2026-06-12 10:45:09,752.752 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 10:45:09,904.904 INFO    ] Initializing speech engine...
[2026-06-12 10:45:09,910.910 INFO    ] 2026-06-12 10:45:09
[2026-06-12 10:45:10,118.118 INFO    ] 2026-06-12 10:45:10
[2026-06-12 10:45:10,146.146 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 10:45:10,331.331 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 10:45:10,335.335 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 10:45:10,472.472 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 10:45:10,540.540 INFO    ] time= 12/06/2026 10:45:10
[2026-06-12 10:45:10,564.564 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 10:45:10,570.570 INFO    ] Checking for existing commands in stream...
[2026-06-12 10:45:10,637.637 INFO    ] No existing commands found in stream
[2026-06-12 10:45:15,652.652 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 10:45:15,655.655 INFO    ] Waiting 1.36 seconds before fallback handling...
[2026-06-12 10:45:17,386.386 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 10:45:17,387.387 INFO    ] Checking for system updates...
[2026-06-12 10:45:17,408.408 INFO    ] 200
[2026-06-12 10:45:17,410.410 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:45:17,443.443 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 10:45:17,444.444 INFO    ] No update needed
[2026-06-12 10:45:17,446.446 INFO    ] Checking for camera pi updates...
[2026-06-12 10:45:17,468.468 INFO    ] 200
[2026-06-12 10:45:17,469.469 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:45:17,496.496 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 10:45:17,533.533 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 10:45:17,534.534 INFO    ] No camera update needed
[2026-06-12 10:45:17,536.536 INFO    ] Script finished. Safe exiting...
[2026-06-12 10:45:17,537.537 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 10:45:17,540.540 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 10:45:17,543.543 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 10:45:19,586.586 INFO    ] ================================================
[2026-06-12 10:45:19,602.602 INFO    ] Launching Daemon at Fri Jun 12 10:45:19 IST 2026
[2026-06-12 10:45:19,613.613 INFO    ] ================================================
[2026-06-12 10:45:19,955.955 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 10:45:19
[2026-06-12 10:45:20,271.271 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 10:45:20,415.415 INFO    ] Initializing speech engine...
[2026-06-12 10:45:20,421.421 INFO    ] 2026-06-12 10:45:20
[2026-06-12 10:45:20,624.624 INFO    ] 2026-06-12 10:45:20
[2026-06-12 10:45:20,651.651 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 10:45:20,836.836 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 10:45:20,839.839 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 10:45:20,974.974 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 10:45:21,038.038 INFO    ] time= 12/06/2026 10:45:20
[2026-06-12 10:45:21,066.066 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 10:45:21,072.072 INFO    ] Checking for existing commands in stream...
[2026-06-12 10:45:21,139.139 INFO    ] No existing commands found in stream
[2026-06-12 10:45:26,154.154 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 10:45:26,157.157 INFO    ] Waiting 0.68 seconds before fallback handling...
[2026-06-12 10:45:27,177.177 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 10:45:27,191.191 INFO    ] Checking for system updates...
[2026-06-12 10:45:27,214.214 INFO    ] 200
[2026-06-12 10:45:27,215.215 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:45:27,248.248 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 10:45:27,250.250 INFO    ] No update needed
[2026-06-12 10:45:27,251.251 INFO    ] Checking for camera pi updates...
[2026-06-12 10:45:27,273.273 INFO    ] 200
[2026-06-12 10:45:27,274.274 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:45:27,299.299 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 10:45:27,339.339 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 10:45:27,341.341 INFO    ] No camera update needed
[2026-06-12 10:45:27,342.342 INFO    ] Script finished. Safe exiting...
[2026-06-12 10:45:27,344.344 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 10:45:27,347.347 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 10:45:27,349.349 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 10:45:29,387.387 INFO    ] ================================================
[2026-06-12 10:45:29,403.403 INFO    ] Launching Daemon at Fri Jun 12 10:45:29 IST 2026
[2026-06-12 10:45:29,414.414 INFO    ] ================================================
[2026-06-12 10:45:29,805.805 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 10:45:29
[2026-06-12 10:45:30,143.143 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 10:45:30,290.290 INFO    ] Initializing speech engine...
[2026-06-12 10:45:30,301.301 INFO    ] 2026-06-12 10:45:30
[2026-06-12 10:45:30,512.512 INFO    ] 2026-06-12 10:45:30
[2026-06-12 10:45:30,542.542 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 10:45:30,729.729 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 10:45:30,739.739 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 10:45:30,871.871 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 10:45:30,939.939 INFO    ] time= 12/06/2026 10:45:30
[2026-06-12 10:45:30,964.964 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 10:45:30,971.971 INFO    ] Checking for existing commands in stream...
[2026-06-12 10:45:31,039.039 INFO    ] No existing commands found in stream
[2026-06-12 10:45:36,053.053 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 10:45:36,056.056 INFO    ] Waiting 3.67 seconds before fallback handling...
[2026-06-12 10:45:40,124.124 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 10:45:40,125.125 INFO    ] Checking for system updates...
[2026-06-12 10:45:40,146.146 INFO    ] 200
[2026-06-12 10:45:40,148.148 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:45:40,178.178 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 10:45:40,180.180 INFO    ] No update needed
[2026-06-12 10:45:40,181.181 INFO    ] Checking for camera pi updates...
[2026-06-12 10:45:40,202.202 INFO    ] 200
[2026-06-12 10:45:40,203.203 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:45:40,226.226 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 10:45:40,263.263 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 10:45:40,264.264 INFO    ] No camera update needed
[2026-06-12 10:45:40,265.265 INFO    ] Script finished. Safe exiting...
[2026-06-12 10:45:40,267.267 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 10:45:40,269.269 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 10:45:40,272.272 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 10:45:42,311.311 INFO    ] ================================================
[2026-06-12 10:45:42,327.327 INFO    ] Launching Daemon at Fri Jun 12 10:45:42 IST 2026
[2026-06-12 10:45:42,338.338 INFO    ] ================================================
[2026-06-12 10:45:42,698.698 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 10:45:42
[2026-06-12 10:45:43,017.017 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 10:45:43,153.153 INFO    ] Initializing speech engine...
[2026-06-12 10:45:43,166.166 INFO    ] 2026-06-12 10:45:43
[2026-06-12 10:45:43,383.383 INFO    ] 2026-06-12 10:45:43
[2026-06-12 10:45:43,414.414 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 10:45:43,611.611 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 10:45:43,615.615 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 10:45:43,754.754 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 10:45:43,816.816 INFO    ] time= 12/06/2026 10:45:43
[2026-06-12 10:45:43,850.850 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 10:45:43,862.862 INFO    ] Checking for existing commands in stream...
[2026-06-12 10:45:43,936.936 INFO    ] No existing commands found in stream
[2026-06-12 10:45:48,947.947 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 10:45:48,949.949 INFO    ] Waiting 3.78 seconds before fallback handling...
[2026-06-12 10:45:53,085.085 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 10:45:53,087.087 INFO    ] Checking for system updates...
[2026-06-12 10:45:53,108.108 INFO    ] 200
[2026-06-12 10:45:53,110.110 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:45:53,143.143 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 10:45:53,144.144 INFO    ] No update needed
[2026-06-12 10:45:53,146.146 INFO    ] Checking for camera pi updates...
[2026-06-12 10:45:53,167.167 INFO    ] 200
[2026-06-12 10:45:53,169.169 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:45:53,194.194 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 10:45:53,239.239 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 10:45:53,240.240 INFO    ] No camera update needed
[2026-06-12 10:45:53,242.242 INFO    ] Script finished. Safe exiting...
[2026-06-12 10:45:53,243.243 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 10:45:53,246.246 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 10:45:53,249.249 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 10:45:55,289.289 INFO    ] ================================================
[2026-06-12 10:45:55,304.304 INFO    ] Launching Daemon at Fri Jun 12 10:45:55 IST 2026
[2026-06-12 10:45:55,315.315 INFO    ] ================================================
[2026-06-12 10:45:55,677.677 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 10:45:55
[2026-06-12 10:45:55,988.988 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 10:45:56,118.118 INFO    ] Initializing speech engine...
[2026-06-12 10:45:56,122.122 INFO    ] 2026-06-12 10:45:56
[2026-06-12 10:45:56,340.340 INFO    ] 2026-06-12 10:45:56
[2026-06-12 10:45:56,369.369 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 10:45:56,554.554 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 10:45:56,557.557 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 10:45:56,687.687 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 10:45:56,743.743 INFO    ] time= 12/06/2026 10:45:56
[2026-06-12 10:45:56,778.778 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 10:45:56,789.789 INFO    ] Checking for existing commands in stream...
[2026-06-12 10:45:56,859.859 INFO    ] No existing commands found in stream
[2026-06-12 10:46:01,869.869 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 10:46:01,872.872 INFO    ] Waiting 3.67 seconds before fallback handling...
[2026-06-12 10:46:05,950.950 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 10:46:05,952.952 INFO    ] Checking for system updates...
[2026-06-12 10:46:05,974.974 INFO    ] 200
[2026-06-12 10:46:05,975.975 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:46:06,010.010 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 10:46:06,012.012 INFO    ] No update needed
[2026-06-12 10:46:06,013.013 INFO    ] Checking for camera pi updates...
[2026-06-12 10:46:06,034.034 INFO    ] 200
[2026-06-12 10:46:06,035.035 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:46:06,063.063 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 10:46:06,103.103 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 10:46:06,104.104 INFO    ] No camera update needed
[2026-06-12 10:46:06,106.106 INFO    ] Script finished. Safe exiting...
[2026-06-12 10:46:06,107.107 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 10:46:06,110.110 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 10:46:06,113.113 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 10:46:08,154.154 INFO    ] ================================================
[2026-06-12 10:46:08,169.169 INFO    ] Launching Daemon at Fri Jun 12 10:46:08 IST 2026
[2026-06-12 10:46:08,180.180 INFO    ] ================================================
[2026-06-12 10:46:08,571.571 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 10:46:08
[2026-06-12 10:46:08,906.906 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 10:46:09,055.055 INFO    ] Initializing speech engine...
[2026-06-12 10:46:09,062.062 INFO    ] 2026-06-12 10:46:09
[2026-06-12 10:46:09,268.268 INFO    ] 2026-06-12 10:46:09
[2026-06-12 10:46:09,296.296 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 10:46:09,479.479 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 10:46:09,489.489 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 10:46:09,615.615 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 10:46:09,681.681 INFO    ] time= 12/06/2026 10:46:09
[2026-06-12 10:46:09,709.709 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 10:46:09,715.715 INFO    ] Checking for existing commands in stream...
[2026-06-12 10:46:09,782.782 INFO    ] No existing commands found in stream
[2026-06-12 10:46:14,796.796 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 10:46:14,799.799 INFO    ] Waiting 3.34 seconds before fallback handling...
[2026-06-12 10:46:18,492.492 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 10:46:18,494.494 INFO    ] Checking for system updates...
[2026-06-12 10:46:18,515.515 INFO    ] 200
[2026-06-12 10:46:18,516.516 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:46:18,548.548 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 10:46:18,550.550 INFO    ] No update needed
[2026-06-12 10:46:18,551.551 INFO    ] Checking for camera pi updates...
[2026-06-12 10:46:18,573.573 INFO    ] 200
[2026-06-12 10:46:18,575.575 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:46:18,598.598 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 10:46:18,737.737 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 10:46:18,739.739 INFO    ] No camera update needed
[2026-06-12 10:46:18,740.740 INFO    ] Script finished. Safe exiting...
[2026-06-12 10:46:18,742.742 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 10:46:18,745.745 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 10:46:18,748.748 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 10:46:20,790.790 INFO    ] ================================================
[2026-06-12 10:46:20,807.807 INFO    ] Launching Daemon at Fri Jun 12 10:46:20 IST 2026
[2026-06-12 10:46:20,818.818 INFO    ] ================================================
[2026-06-12 10:46:21,173.173 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 10:46:21
[2026-06-12 10:46:21,485.485 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 10:46:21,627.627 INFO    ] Initializing speech engine...
[2026-06-12 10:46:21,633.633 INFO    ] 2026-06-12 10:46:21
[2026-06-12 10:46:21,837.837 INFO    ] 2026-06-12 10:46:21
[2026-06-12 10:46:21,866.866 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 10:46:22,051.051 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 10:46:22,060.060 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 10:46:22,184.184 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 10:46:22,240.240 INFO    ] time= 12/06/2026 10:46:22
[2026-06-12 10:46:22,269.269 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 10:46:22,285.285 INFO    ] Checking for existing commands in stream...
[2026-06-12 10:46:22,357.357 INFO    ] No existing commands found in stream
[2026-06-12 10:46:27,367.367 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 10:46:27,370.370 INFO    ] Waiting 2.65 seconds before fallback handling...
[2026-06-12 10:46:30,382.382 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 10:46:30,383.383 INFO    ] Checking for system updates...
[2026-06-12 10:46:30,404.404 INFO    ] 200
[2026-06-12 10:46:30,405.405 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:46:30,435.435 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 10:46:30,436.436 INFO    ] No update needed
[2026-06-12 10:46:30,437.437 INFO    ] Checking for camera pi updates...
[2026-06-12 10:46:30,459.459 INFO    ] 200
[2026-06-12 10:46:30,460.460 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:46:30,485.485 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 10:46:30,518.518 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 10:46:30,519.519 INFO    ] No camera update needed
[2026-06-12 10:46:30,521.521 INFO    ] Script finished. Safe exiting...
[2026-06-12 10:46:30,522.522 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 10:46:30,525.525 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 10:46:30,527.527 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 10:46:32,568.568 INFO    ] ================================================
[2026-06-12 10:46:32,585.585 INFO    ] Launching Daemon at Fri Jun 12 10:46:32 IST 2026
[2026-06-12 10:46:32,596.596 INFO    ] ================================================
[2026-06-12 10:46:32,956.956 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 10:46:32
[2026-06-12 10:46:33,273.273 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 10:46:33,406.406 INFO    ] Initializing speech engine...
[2026-06-12 10:46:33,419.419 INFO    ] 2026-06-12 10:46:33
[2026-06-12 10:46:33,627.627 INFO    ] 2026-06-12 10:46:33
[2026-06-12 10:46:33,654.654 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 10:46:33,837.837 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 10:46:33,847.847 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 10:46:33,975.975 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 10:46:34,041.041 INFO    ] time= 12/06/2026 10:46:33
[2026-06-12 10:46:34,068.068 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 10:46:34,074.074 INFO    ] Checking for existing commands in stream...
[2026-06-12 10:46:34,141.141 INFO    ] No existing commands found in stream
[2026-06-12 10:46:39,151.151 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 10:46:39,153.153 INFO    ] Waiting 3.56 seconds before fallback handling...
[2026-06-12 10:46:43,099.099 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 10:46:43,100.100 INFO    ] Checking for system updates...
[2026-06-12 10:46:43,123.123 INFO    ] 200
[2026-06-12 10:46:43,124.124 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:46:43,159.159 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 10:46:43,161.161 INFO    ] No update needed
[2026-06-12 10:46:43,162.162 INFO    ] Checking for camera pi updates...
[2026-06-12 10:46:43,184.184 INFO    ] 200
[2026-06-12 10:46:43,185.185 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:46:43,211.211 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 10:46:43,248.248 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 10:46:43,249.249 INFO    ] No camera update needed
[2026-06-12 10:46:43,251.251 INFO    ] Script finished. Safe exiting...
[2026-06-12 10:46:43,252.252 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 10:46:43,255.255 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 10:46:43,258.258 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 10:46:45,300.300 INFO    ] ================================================
[2026-06-12 10:46:45,316.316 INFO    ] Launching Daemon at Fri Jun 12 10:46:45 IST 2026
[2026-06-12 10:46:45,327.327 INFO    ] ================================================
[2026-06-12 10:46:45,704.704 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 10:46:45
[2026-06-12 10:46:46,038.038 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 10:46:46,195.195 INFO    ] Initializing speech engine...
[2026-06-12 10:46:46,200.200 INFO    ] 2026-06-12 10:46:46
[2026-06-12 10:46:46,405.405 INFO    ] 2026-06-12 10:46:46
[2026-06-12 10:46:46,434.434 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 10:46:46,619.619 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 10:46:46,629.629 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 10:46:46,761.761 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 10:46:46,825.825 INFO    ] time= 12/06/2026 10:46:46
[2026-06-12 10:46:46,855.855 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 10:46:46,868.868 INFO    ] Checking for existing commands in stream...
[2026-06-12 10:46:46,976.976 INFO    ] No existing commands found in stream
[2026-06-12 10:46:51,986.986 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 10:46:51,990.990 INFO    ] Waiting 1.26 seconds before fallback handling...
[2026-06-12 10:46:53,636.636 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 10:46:53,638.638 INFO    ] Checking for system updates...
[2026-06-12 10:46:53,660.660 INFO    ] 200
[2026-06-12 10:46:53,662.662 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:46:53,695.695 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 10:46:53,697.697 INFO    ] No update needed
[2026-06-12 10:46:53,698.698 INFO    ] Checking for camera pi updates...
[2026-06-12 10:46:53,719.719 INFO    ] 200
[2026-06-12 10:46:53,721.721 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:46:53,744.744 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 10:46:53,781.781 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 10:46:53,782.782 INFO    ] No camera update needed
[2026-06-12 10:46:53,783.783 INFO    ] Script finished. Safe exiting...
[2026-06-12 10:46:53,785.785 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 10:46:53,788.788 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 10:46:53,791.791 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 10:46:55,832.832 INFO    ] ================================================
[2026-06-12 10:46:55,847.847 INFO    ] Launching Daemon at Fri Jun 12 10:46:55 IST 2026
[2026-06-12 10:46:55,858.858 INFO    ] ================================================
[2026-06-12 10:46:56,233.233 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 10:46:56
[2026-06-12 10:46:56,567.567 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 10:46:56,720.720 INFO    ] Initializing speech engine...
[2026-06-12 10:46:56,725.725 INFO    ] 2026-06-12 10:46:56
[2026-06-12 10:46:56,934.934 INFO    ] 2026-06-12 10:46:56
[2026-06-12 10:46:56,963.963 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 10:46:57,150.150 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 10:46:57,154.154 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 10:46:57,298.298 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 10:46:57,361.361 INFO    ] time= 12/06/2026 10:46:57
[2026-06-12 10:46:57,386.386 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 10:46:57,392.392 INFO    ] Checking for existing commands in stream...
[2026-06-12 10:46:57,460.460 INFO    ] No existing commands found in stream
[2026-06-12 10:47:02,472.472 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 10:47:02,474.474 INFO    ] Waiting 0.62 seconds before fallback handling...
[2026-06-12 10:47:03,489.489 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 10:47:03,490.490 INFO    ] Checking for system updates...
[2026-06-12 10:47:03,511.511 INFO    ] 200
[2026-06-12 10:47:03,513.513 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:47:03,545.545 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 10:47:03,547.547 INFO    ] No update needed
[2026-06-12 10:47:03,548.548 INFO    ] Checking for camera pi updates...
[2026-06-12 10:47:03,571.571 INFO    ] 200
[2026-06-12 10:47:03,573.573 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:47:03,597.597 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 10:47:03,642.642 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 10:47:03,643.643 INFO    ] No camera update needed
[2026-06-12 10:47:03,644.644 INFO    ] Script finished. Safe exiting...
[2026-06-12 10:47:03,646.646 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 10:47:03,649.649 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 10:47:03,652.652 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 10:47:05,691.691 INFO    ] ================================================
[2026-06-12 10:47:05,707.707 INFO    ] Launching Daemon at Fri Jun 12 10:47:05 IST 2026
[2026-06-12 10:47:05,718.718 INFO    ] ================================================
[2026-06-12 10:47:06,097.097 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 10:47:06
[2026-06-12 10:47:06,407.407 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 10:47:06,546.546 INFO    ] Initializing speech engine...
[2026-06-12 10:47:06,557.557 INFO    ] 2026-06-12 10:47:06
[2026-06-12 10:47:06,763.763 INFO    ] 2026-06-12 10:47:06
[2026-06-12 10:47:06,792.792 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 10:47:06,977.977 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 10:47:06,986.986 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 10:47:07,113.113 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 10:47:07,174.174 INFO    ] time= 12/06/2026 10:47:07
[2026-06-12 10:47:07,207.207 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 10:47:07,214.214 INFO    ] Checking for existing commands in stream...
[2026-06-12 10:47:07,279.279 INFO    ] No existing commands found in stream
[2026-06-12 10:47:12,290.290 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 10:47:12,293.293 INFO    ] Waiting 0.76 seconds before fallback handling...
[2026-06-12 10:47:13,410.410 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 10:47:13,411.411 INFO    ] Checking for system updates...
[2026-06-12 10:47:13,432.432 INFO    ] 200
[2026-06-12 10:47:13,434.434 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:47:13,464.464 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 10:47:13,465.465 INFO    ] No update needed
[2026-06-12 10:47:13,466.466 INFO    ] Checking for camera pi updates...
[2026-06-12 10:47:13,487.487 INFO    ] 200
[2026-06-12 10:47:13,489.489 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:47:13,515.515 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 10:47:13,559.559 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 10:47:13,560.560 INFO    ] No camera update needed
[2026-06-12 10:47:13,562.562 INFO    ] Script finished. Safe exiting...
[2026-06-12 10:47:13,563.563 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 10:47:13,567.567 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 10:47:13,569.569 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 10:47:15,609.609 INFO    ] ================================================
[2026-06-12 10:47:15,624.624 INFO    ] Launching Daemon at Fri Jun 12 10:47:15 IST 2026
[2026-06-12 10:47:15,635.635 INFO    ] ================================================
[2026-06-12 10:47:15,989.989 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 10:47:15
[2026-06-12 10:47:16,301.301 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 10:47:16,431.431 INFO    ] Initializing speech engine...
[2026-06-12 10:47:16,436.436 INFO    ] 2026-06-12 10:47:16
[2026-06-12 10:47:16,655.655 INFO    ] 2026-06-12 10:47:16
[2026-06-12 10:47:16,683.683 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 10:47:16,806.806 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 10:47:16,869.869 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 10:47:17,001.001 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 10:47:17,047.047 INFO    ] time= 12/06/2026 10:47:17
[2026-06-12 10:47:17,092.092 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 10:47:17,103.103 INFO    ] Checking for existing commands in stream...
[2026-06-12 10:47:17,175.175 INFO    ] No existing commands found in stream
[2026-06-12 10:47:22,189.189 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 10:47:22,192.192 INFO    ] Waiting 1.51 seconds before fallback handling...
[2026-06-12 10:47:24,056.056 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 10:47:24,058.058 INFO    ] Checking for system updates...
[2026-06-12 10:47:24,079.079 INFO    ] 200
[2026-06-12 10:47:24,080.080 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:47:24,112.112 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 10:47:24,114.114 INFO    ] No update needed
[2026-06-12 10:47:24,115.115 INFO    ] Checking for camera pi updates...
[2026-06-12 10:47:24,135.135 INFO    ] 200
[2026-06-12 10:47:24,136.136 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:47:24,159.159 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 10:47:24,204.204 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 10:47:24,206.206 INFO    ] No camera update needed
[2026-06-12 10:47:24,207.207 INFO    ] Script finished. Safe exiting...
[2026-06-12 10:47:24,208.208 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 10:47:24,211.211 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 10:47:24,214.214 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 10:47:26,245.245 INFO    ] ================================================
[2026-06-12 10:47:26,262.262 INFO    ] Launching Daemon at Fri Jun 12 10:47:26 IST 2026
[2026-06-12 10:47:26,273.273 INFO    ] ================================================
[2026-06-12 10:47:26,601.601 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 10:47:26
[2026-06-12 10:47:26,911.911 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 10:47:27,044.044 INFO    ] Initializing speech engine...
[2026-06-12 10:47:27,048.048 INFO    ] 2026-06-12 10:47:27
[2026-06-12 10:47:27,264.264 INFO    ] 2026-06-12 10:47:27
[2026-06-12 10:47:27,293.293 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 10:47:27,418.418 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 10:47:27,481.481 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 10:47:27,619.619 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 10:47:27,686.686 INFO    ] time= 12/06/2026 10:47:27
[2026-06-12 10:47:27,711.711 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 10:47:27,717.717 INFO    ] Checking for existing commands in stream...
[2026-06-12 10:47:27,784.784 INFO    ] No existing commands found in stream
[2026-06-12 10:47:32,793.793 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 10:47:32,796.796 INFO    ] Waiting 3.09 seconds before fallback handling...
[2026-06-12 10:47:36,210.210 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 10:47:36,213.213 INFO    ] Checking for system updates...
[2026-06-12 10:47:36,248.248 INFO    ] 200
[2026-06-12 10:47:36,251.251 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:47:36,309.309 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 10:47:36,312.312 INFO    ] No update needed
[2026-06-12 10:47:36,314.314 INFO    ] Checking for camera pi updates...
[2026-06-12 10:47:36,344.344 INFO    ] 200
[2026-06-12 10:47:36,345.345 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:47:36,371.371 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 10:47:36,410.410 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 10:47:36,411.411 INFO    ] No camera update needed
[2026-06-12 10:47:36,413.413 INFO    ] Script finished. Safe exiting...
[2026-06-12 10:47:36,414.414 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 10:47:36,417.417 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 10:47:36,419.419 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 10:47:38,459.459 INFO    ] ================================================
[2026-06-12 10:47:38,476.476 INFO    ] Launching Daemon at Fri Jun 12 10:47:38 IST 2026
[2026-06-12 10:47:38,487.487 INFO    ] ================================================
[2026-06-12 10:47:38,822.822 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 10:47:38
[2026-06-12 10:47:39,139.139 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 10:47:39,272.272 INFO    ] Initializing speech engine...
[2026-06-12 10:47:39,282.282 INFO    ] 2026-06-12 10:47:39
[2026-06-12 10:47:39,506.506 INFO    ] 2026-06-12 10:47:39
[2026-06-12 10:47:39,536.536 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 10:47:39,667.667 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 10:47:39,730.730 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 10:47:39,878.878 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 10:47:39,931.931 INFO    ] time= 12/06/2026 10:47:39
[2026-06-12 10:47:39,970.970 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 10:47:39,981.981 INFO    ] Checking for existing commands in stream...
[2026-06-12 10:47:40,057.057 INFO    ] No existing commands found in stream
[2026-06-12 10:47:45,066.066 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 10:47:45,069.069 INFO    ] Waiting 2.34 seconds before fallback handling...
[2026-06-12 10:47:47,755.755 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 10:47:47,757.757 INFO    ] Checking for system updates...
[2026-06-12 10:47:47,779.779 INFO    ] 200
[2026-06-12 10:47:47,780.780 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:47:47,815.815 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 10:47:47,816.816 INFO    ] No update needed
[2026-06-12 10:47:47,818.818 INFO    ] Checking for camera pi updates...
[2026-06-12 10:47:47,841.841 INFO    ] 200
[2026-06-12 10:47:47,842.842 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:47:47,866.866 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 10:47:47,906.906 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 10:47:47,907.907 INFO    ] No camera update needed
[2026-06-12 10:47:47,909.909 INFO    ] Script finished. Safe exiting...
[2026-06-12 10:47:47,910.910 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 10:47:47,914.914 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 10:47:47,916.916 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 10:47:49,956.956 INFO    ] ================================================
[2026-06-12 10:47:49,971.971 INFO    ] Launching Daemon at Fri Jun 12 10:47:49 IST 2026
[2026-06-12 10:47:49,983.983 INFO    ] ================================================
[2026-06-12 10:47:50,342.342 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 10:47:50
[2026-06-12 10:47:50,653.653 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 10:47:50,785.785 INFO    ] Initializing speech engine...
[2026-06-12 10:47:50,790.790 INFO    ] 2026-06-12 10:47:50
[2026-06-12 10:47:51,016.016 INFO    ] 2026-06-12 10:47:50
[2026-06-12 10:47:51,048.048 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 10:47:51,179.179 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 10:47:51,245.245 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 10:47:51,386.386 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 10:47:51,448.448 INFO    ] time= 12/06/2026 10:47:51
[2026-06-12 10:47:51,487.487 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 10:47:51,494.494 INFO    ] Checking for existing commands in stream...
[2026-06-12 10:47:51,596.596 INFO    ] No existing commands found in stream
[2026-06-12 10:47:56,604.604 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 10:47:56,607.607 INFO    ] Waiting 2.03 seconds before fallback handling...
[2026-06-12 10:47:58,988.988 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 10:47:58,990.990 INFO    ] Checking for system updates...
[2026-06-12 10:47:59,011.011 INFO    ] 200
[2026-06-12 10:47:59,012.012 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:47:59,043.043 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 10:47:59,044.044 INFO    ] No update needed
[2026-06-12 10:47:59,045.045 INFO    ] Checking for camera pi updates...
[2026-06-12 10:47:59,066.066 INFO    ] 200
[2026-06-12 10:47:59,067.067 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:47:59,090.090 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 10:47:59,130.130 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 10:47:59,131.131 INFO    ] No camera update needed
[2026-06-12 10:47:59,132.132 INFO    ] Script finished. Safe exiting...
[2026-06-12 10:47:59,134.134 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 10:47:59,136.136 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 10:47:59,139.139 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 10:48:01,178.178 INFO    ] ================================================
[2026-06-12 10:48:01,194.194 INFO    ] Launching Daemon at Fri Jun 12 10:48:01 IST 2026
[2026-06-12 10:48:01,205.205 INFO    ] ================================================
[2026-06-12 10:48:01,536.536 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 10:48:01
[2026-06-12 10:48:01,850.850 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 10:48:02,118.118 INFO    ] Initializing speech engine...
[2026-06-12 10:48:02,121.121 INFO    ] 2026-06-12 10:48:02
[2026-06-12 10:48:02,385.385 INFO    ] 2026-06-12 10:48:02
[2026-06-12 10:48:02,425.425 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 10:48:02,566.566 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 10:48:02,599.599 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 10:48:02,765.765 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 10:48:02,801.801 INFO    ] time= 12/06/2026 10:48:02
[2026-06-12 10:48:02,850.850 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 10:48:02,893.893 INFO    ] Checking for existing commands in stream...
[2026-06-12 10:48:02,993.993 INFO    ] No existing commands found in stream
[2026-06-12 10:48:08,003.003 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 10:48:08,006.006 INFO    ] Waiting 1.41 seconds before fallback handling...
[2026-06-12 10:48:09,790.790 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 10:48:09,792.792 INFO    ] Checking for system updates...
[2026-06-12 10:48:09,812.812 INFO    ] 200
[2026-06-12 10:48:09,813.813 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:48:09,845.845 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 10:48:09,847.847 INFO    ] No update needed
[2026-06-12 10:48:09,848.848 INFO    ] Checking for camera pi updates...
[2026-06-12 10:48:09,871.871 INFO    ] 200
[2026-06-12 10:48:09,872.872 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:48:09,896.896 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 10:48:09,941.941 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 10:48:09,943.943 INFO    ] No camera update needed
[2026-06-12 10:48:09,944.944 INFO    ] Script finished. Safe exiting...
[2026-06-12 10:48:09,945.945 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 10:48:09,948.948 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 10:48:09,951.951 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 10:48:11,993.993 INFO    ] ================================================
[2026-06-12 10:48:12,009.009 INFO    ] Launching Daemon at Fri Jun 12 10:48:12 IST 2026
[2026-06-12 10:48:12,019.019 INFO    ] ================================================
[2026-06-12 10:48:12,371.371 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 10:48:12
[2026-06-12 10:48:12,701.701 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 10:48:12,838.838 INFO    ] Initializing speech engine...
[2026-06-12 10:48:12,846.846 INFO    ] 2026-06-12 10:48:12
[2026-06-12 10:48:13,063.063 INFO    ] 2026-06-12 10:48:13
[2026-06-12 10:48:13,093.093 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 10:48:13,278.278 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 10:48:13,288.288 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 10:48:13,419.419 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 10:48:13,483.483 INFO    ] time= 12/06/2026 10:48:13
[2026-06-12 10:48:13,512.512 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 10:48:13,518.518 INFO    ] Checking for existing commands in stream...
[2026-06-12 10:48:13,584.584 INFO    ] No existing commands found in stream
[2026-06-12 10:48:18,595.595 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 10:48:18,598.598 INFO    ] Waiting 0.44 seconds before fallback handling...
[2026-06-12 10:48:19,379.379 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 10:48:19,381.381 INFO    ] Checking for system updates...
[2026-06-12 10:48:19,402.402 INFO    ] 200
[2026-06-12 10:48:19,403.403 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:48:19,433.433 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 10:48:19,435.435 INFO    ] No update needed
[2026-06-12 10:48:19,436.436 INFO    ] Checking for camera pi updates...
[2026-06-12 10:48:19,455.455 INFO    ] 200
[2026-06-12 10:48:19,457.457 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:48:19,480.480 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 10:48:19,526.526 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 10:48:19,528.528 INFO    ] No camera update needed
[2026-06-12 10:48:19,529.529 INFO    ] Script finished. Safe exiting...
[2026-06-12 10:48:19,531.531 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 10:48:19,534.534 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 10:48:19,537.537 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 10:48:21,576.576 INFO    ] ================================================
[2026-06-12 10:48:21,592.592 INFO    ] Launching Daemon at Fri Jun 12 10:48:21 IST 2026
[2026-06-12 10:48:21,602.602 INFO    ] ================================================
[2026-06-12 10:48:21,949.949 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 10:48:21
[2026-06-12 10:48:22,279.279 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 10:48:22,417.417 INFO    ] Initializing speech engine...
[2026-06-12 10:48:22,425.425 INFO    ] 2026-06-12 10:48:22
[2026-06-12 10:48:22,644.644 INFO    ] 2026-06-12 10:48:22
[2026-06-12 10:48:22,673.673 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 10:48:22,861.861 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 10:48:22,871.871 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 10:48:22,994.994 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 10:48:23,050.050 INFO    ] time= 12/06/2026 10:48:22
[2026-06-12 10:48:23,085.085 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 10:48:23,096.096 INFO    ] Checking for existing commands in stream...
[2026-06-12 10:48:23,168.168 INFO    ] No existing commands found in stream
[2026-06-12 10:48:28,178.178 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 10:48:28,181.181 INFO    ] Waiting 3.41 seconds before fallback handling...
[2026-06-12 10:48:32,002.002 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 10:48:32,003.003 INFO    ] Checking for system updates...
[2026-06-12 10:48:32,035.035 INFO    ] 200
[2026-06-12 10:48:32,037.037 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:48:32,071.071 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 10:48:32,073.073 INFO    ] No update needed
[2026-06-12 10:48:32,075.075 INFO    ] Checking for camera pi updates...
[2026-06-12 10:48:32,098.098 INFO    ] 200
[2026-06-12 10:48:32,100.100 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:48:32,131.131 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 10:48:32,168.168 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 10:48:32,170.170 INFO    ] No camera update needed
[2026-06-12 10:48:32,172.172 INFO    ] Script finished. Safe exiting...
[2026-06-12 10:48:32,174.174 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 10:48:32,178.178 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 10:48:32,182.182 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 10:48:34,214.214 INFO    ] ================================================
[2026-06-12 10:48:34,230.230 INFO    ] Launching Daemon at Fri Jun 12 10:48:34 IST 2026
[2026-06-12 10:48:34,241.241 INFO    ] ================================================
[2026-06-12 10:48:34,593.593 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 10:48:34
[2026-06-12 10:48:34,921.921 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 10:48:35,070.070 INFO    ] Initializing speech engine...
[2026-06-12 10:48:35,075.075 INFO    ] 2026-06-12 10:48:35
[2026-06-12 10:48:35,280.280 INFO    ] 2026-06-12 10:48:35
[2026-06-12 10:48:35,309.309 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 10:48:35,492.492 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 10:48:35,502.502 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 10:48:35,637.637 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 10:48:35,700.700 INFO    ] time= 12/06/2026 10:48:35
[2026-06-12 10:48:35,722.722 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 10:48:35,729.729 INFO    ] Checking for existing commands in stream...
[2026-06-12 10:48:35,796.796 INFO    ] No existing commands found in stream
[2026-06-12 10:48:40,821.821 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 10:48:40,824.824 INFO    ] Waiting 2.42 seconds before fallback handling...
[2026-06-12 10:48:43,610.610 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 10:48:43,612.612 INFO    ] Checking for system updates...
[2026-06-12 10:48:43,632.632 INFO    ] 200
[2026-06-12 10:48:43,634.634 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:48:43,666.666 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 10:48:43,667.667 INFO    ] No update needed
[2026-06-12 10:48:43,668.668 INFO    ] Checking for camera pi updates...
[2026-06-12 10:48:43,691.691 INFO    ] 200
[2026-06-12 10:48:43,693.693 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:48:43,718.718 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 10:48:43,756.756 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 10:48:43,758.758 INFO    ] No camera update needed
[2026-06-12 10:48:43,759.759 INFO    ] Script finished. Safe exiting...
[2026-06-12 10:48:43,760.760 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 10:48:43,764.764 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 10:48:43,766.766 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 10:48:45,806.806 INFO    ] ================================================
[2026-06-12 10:48:45,821.821 INFO    ] Launching Daemon at Fri Jun 12 10:48:45 IST 2026
[2026-06-12 10:48:45,833.833 INFO    ] ================================================
[2026-06-12 10:48:46,173.173 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 10:48:46
[2026-06-12 10:48:46,493.493 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 10:48:46,641.641 INFO    ] Initializing speech engine...
[2026-06-12 10:48:46,646.646 INFO    ] 2026-06-12 10:48:46
[2026-06-12 10:48:46,852.852 INFO    ] 2026-06-12 10:48:46
[2026-06-12 10:48:46,881.881 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 10:48:47,064.064 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 10:48:47,073.073 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 10:48:47,207.207 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 10:48:47,269.269 INFO    ] time= 12/06/2026 10:48:47
[2026-06-12 10:48:47,293.293 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 10:48:47,299.299 INFO    ] Checking for existing commands in stream...
[2026-06-12 10:48:47,367.367 INFO    ] No existing commands found in stream
[2026-06-12 10:48:52,391.391 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 10:48:52,394.394 INFO    ] Waiting 2.25 seconds before fallback handling...
[2026-06-12 10:48:55,016.016 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 10:48:55,017.017 INFO    ] Checking for system updates...
[2026-06-12 10:48:55,038.038 INFO    ] 200
[2026-06-12 10:48:55,039.039 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:48:55,069.069 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 10:48:55,071.071 INFO    ] No update needed
[2026-06-12 10:48:55,073.073 INFO    ] Checking for camera pi updates...
[2026-06-12 10:48:55,093.093 INFO    ] 200
[2026-06-12 10:48:55,095.095 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:48:55,118.118 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 10:48:55,158.158 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 10:48:55,159.159 INFO    ] No camera update needed
[2026-06-12 10:48:55,161.161 INFO    ] Script finished. Safe exiting...
[2026-06-12 10:48:55,162.162 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 10:48:55,165.165 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 10:48:55,168.168 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 10:48:57,207.207 INFO    ] ================================================
[2026-06-12 10:48:57,223.223 INFO    ] Launching Daemon at Fri Jun 12 10:48:57 IST 2026
[2026-06-12 10:48:57,234.234 INFO    ] ================================================
[2026-06-12 10:48:57,566.566 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 10:48:57
[2026-06-12 10:48:57,883.883 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 10:48:58,027.027 INFO    ] Initializing speech engine...
[2026-06-12 10:48:58,032.032 INFO    ] 2026-06-12 10:48:58
[2026-06-12 10:48:58,235.235 INFO    ] 2026-06-12 10:48:58
[2026-06-12 10:48:58,263.263 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 10:48:58,385.385 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 10:48:58,451.451 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 10:48:58,581.581 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 10:48:58,637.637 INFO    ] time= 12/06/2026 10:48:58
[2026-06-12 10:48:58,678.678 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 10:48:58,680.680 INFO    ] Checking for existing commands in stream...
[2026-06-12 10:48:58,752.752 INFO    ] No existing commands found in stream
[2026-06-12 10:49:03,766.766 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 10:49:03,768.768 INFO    ] Waiting 1.03 seconds before fallback handling...
[2026-06-12 10:49:05,195.195 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 10:49:05,198.198 INFO    ] Checking for system updates...
[2026-06-12 10:49:05,237.237 INFO    ] 200
[2026-06-12 10:49:05,242.242 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:49:05,315.315 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 10:49:05,318.318 INFO    ] No update needed
[2026-06-12 10:49:05,321.321 INFO    ] Checking for camera pi updates...
[2026-06-12 10:49:05,348.348 INFO    ] 200
[2026-06-12 10:49:05,349.349 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:49:05,372.372 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 10:49:05,419.419 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 10:49:05,421.421 INFO    ] No camera update needed
[2026-06-12 10:49:05,422.422 INFO    ] Script finished. Safe exiting...
[2026-06-12 10:49:05,423.423 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 10:49:05,426.426 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 10:49:05,429.429 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 10:49:07,467.467 INFO    ] ================================================
[2026-06-12 10:49:07,482.482 INFO    ] Launching Daemon at Fri Jun 12 10:49:07 IST 2026
[2026-06-12 10:49:07,494.494 INFO    ] ================================================
[2026-06-12 10:49:07,864.864 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 10:49:07
[2026-06-12 10:49:08,198.198 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 10:49:08,337.337 INFO    ] Initializing speech engine...
[2026-06-12 10:49:08,349.349 INFO    ] 2026-06-12 10:49:08
[2026-06-12 10:49:08,563.563 INFO    ] 2026-06-12 10:49:08
[2026-06-12 10:49:08,592.592 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 10:49:08,776.776 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 10:49:08,780.780 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 10:49:08,917.917 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 10:49:08,977.977 INFO    ] time= 12/06/2026 10:49:08
[2026-06-12 10:49:09,009.009 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 10:49:09,011.011 INFO    ] Checking for existing commands in stream...
[2026-06-12 10:49:09,084.084 INFO    ] No existing commands found in stream
[2026-06-12 10:49:14,098.098 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 10:49:14,102.102 INFO    ] Waiting 1.39 seconds before fallback handling...
[2026-06-12 10:49:15,880.880 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 10:49:15,882.882 INFO    ] Checking for system updates...
[2026-06-12 10:49:15,904.904 INFO    ] 200
[2026-06-12 10:49:15,906.906 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:49:15,941.941 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 10:49:15,943.943 INFO    ] No update needed
[2026-06-12 10:49:15,944.944 INFO    ] Checking for camera pi updates...
[2026-06-12 10:49:15,964.964 INFO    ] 200
[2026-06-12 10:49:15,966.966 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:49:15,989.989 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 10:49:16,028.028 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 10:49:16,029.029 INFO    ] No camera update needed
[2026-06-12 10:49:16,031.031 INFO    ] Script finished. Safe exiting...
[2026-06-12 10:49:16,032.032 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 10:49:16,035.035 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 10:49:16,038.038 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 10:49:18,077.077 INFO    ] ================================================
[2026-06-12 10:49:18,092.092 INFO    ] Launching Daemon at Fri Jun 12 10:49:18 IST 2026
[2026-06-12 10:49:18,103.103 INFO    ] ================================================
[2026-06-12 10:49:18,431.431 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 10:49:18
[2026-06-12 10:49:18,744.744 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 10:49:18,886.886 INFO    ] Initializing speech engine...
[2026-06-12 10:49:18,892.892 INFO    ] 2026-06-12 10:49:18
[2026-06-12 10:49:19,096.096 INFO    ] 2026-06-12 10:49:19
[2026-06-12 10:49:19,124.124 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 10:49:19,291.291 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 10:49:19,323.323 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 10:49:19,462.462 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 10:49:19,513.513 INFO    ] time= 12/06/2026 10:49:19
[2026-06-12 10:49:19,545.545 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 10:49:19,568.568 INFO    ] Checking for existing commands in stream...
[2026-06-12 10:49:19,642.642 INFO    ] No existing commands found in stream
[2026-06-12 10:49:24,653.653 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 10:49:24,656.656 INFO    ] Waiting 0.39 seconds before fallback handling...
[2026-06-12 10:49:25,410.410 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 10:49:25,411.411 INFO    ] Checking for system updates...
[2026-06-12 10:49:25,432.432 INFO    ] 200
[2026-06-12 10:49:25,433.433 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:49:25,463.463 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 10:49:25,464.464 INFO    ] No update needed
[2026-06-12 10:49:25,465.465 INFO    ] Checking for camera pi updates...
[2026-06-12 10:49:25,484.484 INFO    ] 200
[2026-06-12 10:49:25,486.486 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:49:25,509.509 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 10:49:25,550.550 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 10:49:25,552.552 INFO    ] No camera update needed
[2026-06-12 10:49:25,553.553 INFO    ] Script finished. Safe exiting...
[2026-06-12 10:49:25,554.554 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 10:49:25,557.557 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 10:49:25,560.560 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 10:49:27,598.598 INFO    ] ================================================
[2026-06-12 10:49:27,614.614 INFO    ] Launching Daemon at Fri Jun 12 10:49:27 IST 2026
[2026-06-12 10:49:27,624.624 INFO    ] ================================================
[2026-06-12 10:49:27,984.984 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 10:49:27
[2026-06-12 10:49:28,318.318 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 10:49:28,468.468 INFO    ] Initializing speech engine...
[2026-06-12 10:49:28,473.473 INFO    ] 2026-06-12 10:49:28
[2026-06-12 10:49:28,681.681 INFO    ] 2026-06-12 10:49:28
[2026-06-12 10:49:28,709.709 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 10:49:28,893.893 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 10:49:28,897.897 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 10:49:29,053.053 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 10:49:29,102.102 INFO    ] time= 12/06/2026 10:49:29
[2026-06-12 10:49:29,123.123 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 10:49:29,129.129 INFO    ] Checking for existing commands in stream...
[2026-06-12 10:49:29,197.197 INFO    ] No existing commands found in stream
[2026-06-12 10:49:34,212.212 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 10:49:34,215.215 INFO    ] Waiting 3.64 seconds before fallback handling...
[2026-06-12 10:49:38,225.225 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 10:49:38,227.227 INFO    ] Checking for system updates...
[2026-06-12 10:49:38,250.250 INFO    ] 200
[2026-06-12 10:49:38,251.251 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:49:38,284.284 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 10:49:38,286.286 INFO    ] No update needed
[2026-06-12 10:49:38,287.287 INFO    ] Checking for camera pi updates...
[2026-06-12 10:49:38,307.307 INFO    ] 200
[2026-06-12 10:49:38,308.308 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:49:38,333.333 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 10:49:38,378.378 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 10:49:38,380.380 INFO    ] No camera update needed
[2026-06-12 10:49:38,381.381 INFO    ] Script finished. Safe exiting...
[2026-06-12 10:49:38,383.383 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 10:49:38,386.386 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 10:49:38,389.389 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 10:49:40,427.427 INFO    ] ================================================
[2026-06-12 10:49:40,443.443 INFO    ] Launching Daemon at Fri Jun 12 10:49:40 IST 2026
[2026-06-12 10:49:40,454.454 INFO    ] ================================================
[2026-06-12 10:49:40,830.830 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 10:49:40
[2026-06-12 10:49:41,146.146 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 10:49:41,285.285 INFO    ] Initializing speech engine...
[2026-06-12 10:49:41,295.295 INFO    ] 2026-06-12 10:49:41
[2026-06-12 10:49:41,498.498 INFO    ] 2026-06-12 10:49:41
[2026-06-12 10:49:41,528.528 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 10:49:41,713.713 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 10:49:41,717.717 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 10:49:41,859.859 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 10:49:41,921.921 INFO    ] time= 12/06/2026 10:49:41
[2026-06-12 10:49:41,946.946 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 10:49:41,953.953 INFO    ] Checking for existing commands in stream...
[2026-06-12 10:49:42,021.021 INFO    ] No existing commands found in stream
[2026-06-12 10:49:47,031.031 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 10:49:47,034.034 INFO    ] Waiting 2.20 seconds before fallback handling...
[2026-06-12 10:49:49,615.615 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 10:49:49,617.617 INFO    ] Checking for system updates...
[2026-06-12 10:49:49,637.637 INFO    ] 200
[2026-06-12 10:49:49,639.639 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:49:49,669.669 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 10:49:49,671.671 INFO    ] No update needed
[2026-06-12 10:49:49,672.672 INFO    ] Checking for camera pi updates...
[2026-06-12 10:49:49,692.692 INFO    ] 200
[2026-06-12 10:49:49,693.693 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:49:49,716.716 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 10:49:49,757.757 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 10:49:49,758.758 INFO    ] No camera update needed
[2026-06-12 10:49:49,760.760 INFO    ] Script finished. Safe exiting...
[2026-06-12 10:49:49,761.761 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 10:49:49,764.764 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 10:49:49,767.767 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 10:49:51,805.805 INFO    ] ================================================
[2026-06-12 10:49:51,821.821 INFO    ] Launching Daemon at Fri Jun 12 10:49:51 IST 2026
[2026-06-12 10:49:51,832.832 INFO    ] ================================================
[2026-06-12 10:49:52,173.173 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 10:49:52
[2026-06-12 10:49:52,507.507 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 10:49:52,660.660 INFO    ] Initializing speech engine...
[2026-06-12 10:49:52,666.666 INFO    ] 2026-06-12 10:49:52
[2026-06-12 10:49:52,872.872 INFO    ] 2026-06-12 10:49:52
[2026-06-12 10:49:52,901.901 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 10:49:53,084.084 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 10:49:53,096.096 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 10:49:53,220.220 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 10:49:53,282.282 INFO    ] time= 12/06/2026 10:49:53
[2026-06-12 10:49:53,314.314 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 10:49:53,321.321 INFO    ] Checking for existing commands in stream...
[2026-06-12 10:49:53,387.387 INFO    ] No existing commands found in stream
[2026-06-12 10:49:58,402.402 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 10:49:58,405.405 INFO    ] Waiting 3.98 seconds before fallback handling...
[2026-06-12 10:50:03,026.026 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 10:50:03,028.028 INFO    ] Checking for system updates...
[2026-06-12 10:50:03,068.068 INFO    ] 200
[2026-06-12 10:50:03,071.071 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:50:03,124.124 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 10:50:03,126.126 INFO    ] No update needed
[2026-06-12 10:50:03,129.129 INFO    ] Checking for camera pi updates...
[2026-06-12 10:50:03,166.166 INFO    ] 200
[2026-06-12 10:50:03,168.168 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:50:03,208.208 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 10:50:03,234.234 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 10:50:03,235.235 INFO    ] No camera update needed
[2026-06-12 10:50:03,237.237 INFO    ] Script finished. Safe exiting...
[2026-06-12 10:50:03,238.238 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 10:50:03,241.241 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 10:50:03,244.244 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 10:50:05,282.282 INFO    ] ================================================
[2026-06-12 10:50:05,298.298 INFO    ] Launching Daemon at Fri Jun 12 10:50:05 IST 2026
[2026-06-12 10:50:05,310.310 INFO    ] ================================================
[2026-06-12 10:50:05,644.644 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 10:50:05
[2026-06-12 10:50:05,996.996 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 10:50:06,149.149 INFO    ] Initializing speech engine...
[2026-06-12 10:50:06,155.155 INFO    ] 2026-06-12 10:50:06
[2026-06-12 10:50:06,365.365 INFO    ] 2026-06-12 10:50:06
[2026-06-12 10:50:06,395.395 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 10:50:06,581.581 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 10:50:06,592.592 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 10:50:06,725.725 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 10:50:06,793.793 INFO    ] time= 12/06/2026 10:50:06
[2026-06-12 10:50:06,818.818 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 10:50:06,825.825 INFO    ] Checking for existing commands in stream...
[2026-06-12 10:50:06,892.892 INFO    ] No existing commands found in stream
[2026-06-12 10:50:11,902.902 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 10:50:11,905.905 INFO    ] Waiting 0.01 seconds before fallback handling...
[2026-06-12 10:50:12,297.297 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 10:50:12,298.298 INFO    ] Checking for system updates...
[2026-06-12 10:50:12,323.323 INFO    ] 200
[2026-06-12 10:50:12,325.325 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:50:12,356.356 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 10:50:12,357.357 INFO    ] No update needed
[2026-06-12 10:50:12,359.359 INFO    ] Checking for camera pi updates...
[2026-06-12 10:50:12,380.380 INFO    ] 200
[2026-06-12 10:50:12,382.382 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:50:12,406.406 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 10:50:12,431.431 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 10:50:12,432.432 INFO    ] No camera update needed
[2026-06-12 10:50:12,434.434 INFO    ] Script finished. Safe exiting...
[2026-06-12 10:50:12,435.435 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 10:50:12,439.439 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 10:50:12,442.442 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 10:50:14,473.473 INFO    ] ================================================
[2026-06-12 10:50:14,490.490 INFO    ] Launching Daemon at Fri Jun 12 10:50:14 IST 2026
[2026-06-12 10:50:14,501.501 INFO    ] ================================================
[2026-06-12 10:50:14,871.871 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 10:50:14
[2026-06-12 10:50:15,182.182 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 10:50:15,315.315 INFO    ] Initializing speech engine...
[2026-06-12 10:50:15,319.319 INFO    ] 2026-06-12 10:50:15
[2026-06-12 10:50:15,548.548 INFO    ] 2026-06-12 10:50:15
[2026-06-12 10:50:15,578.578 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 10:50:15,786.786 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 10:50:15,791.791 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 10:50:15,939.939 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 10:50:15,988.988 INFO    ] time= 12/06/2026 10:50:15
[2026-06-12 10:50:16,009.009 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 10:50:16,015.015 INFO    ] Checking for existing commands in stream...
[2026-06-12 10:50:16,082.082 INFO    ] No existing commands found in stream
[2026-06-12 10:50:21,091.091 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 10:50:21,094.094 INFO    ] Waiting 3.10 seconds before fallback handling...
[2026-06-12 10:50:24,548.548 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 10:50:24,550.550 INFO    ] Checking for system updates...
[2026-06-12 10:50:24,572.572 INFO    ] 200
[2026-06-12 10:50:24,573.573 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:50:24,603.603 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 10:50:24,605.605 INFO    ] No update needed
[2026-06-12 10:50:24,606.606 INFO    ] Checking for camera pi updates...
[2026-06-12 10:50:24,626.626 INFO    ] 200
[2026-06-12 10:50:24,627.627 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:50:24,652.652 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 10:50:24,689.689 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 10:50:24,691.691 INFO    ] No camera update needed
[2026-06-12 10:50:24,692.692 INFO    ] Script finished. Safe exiting...
[2026-06-12 10:50:24,693.693 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 10:50:24,696.696 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 10:50:24,699.699 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 10:50:26,740.740 INFO    ] ================================================
[2026-06-12 10:50:26,755.755 INFO    ] Launching Daemon at Fri Jun 12 10:50:26 IST 2026
[2026-06-12 10:50:26,767.767 INFO    ] ================================================
[2026-06-12 10:50:27,102.102 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 10:50:27
[2026-06-12 10:50:27,414.414 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 10:50:27,545.545 INFO    ] Initializing speech engine...
[2026-06-12 10:50:27,553.553 INFO    ] 2026-06-12 10:50:27
[2026-06-12 10:50:27,767.767 INFO    ] 2026-06-12 10:50:27
[2026-06-12 10:50:27,796.796 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 10:50:27,981.981 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 10:50:27,985.985 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 10:50:28,123.123 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 10:50:28,191.191 INFO    ] time= 12/06/2026 10:50:28
[2026-06-12 10:50:28,215.215 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 10:50:28,222.222 INFO    ] Checking for existing commands in stream...
[2026-06-12 10:50:28,313.313 INFO    ] No existing commands found in stream
[2026-06-12 10:50:33,326.326 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 10:50:33,327.327 INFO    ] Waiting 0.87 seconds before fallback handling...
[2026-06-12 10:50:34,570.570 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 10:50:34,572.572 INFO    ] Checking for system updates...
[2026-06-12 10:50:34,594.594 INFO    ] 200
[2026-06-12 10:50:34,596.596 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:50:34,629.629 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 10:50:34,631.631 INFO    ] No update needed
[2026-06-12 10:50:34,632.632 INFO    ] Checking for camera pi updates...
[2026-06-12 10:50:34,654.654 INFO    ] 200
[2026-06-12 10:50:34,655.655 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:50:34,681.681 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 10:50:34,819.819 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 10:50:34,821.821 INFO    ] No camera update needed
[2026-06-12 10:50:34,822.822 INFO    ] Script finished. Safe exiting...
[2026-06-12 10:50:34,823.823 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 10:50:34,827.827 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 10:50:34,829.829 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 10:50:36,870.870 INFO    ] ================================================
[2026-06-12 10:50:36,886.886 INFO    ] Launching Daemon at Fri Jun 12 10:50:36 IST 2026
[2026-06-12 10:50:36,897.897 INFO    ] ================================================
[2026-06-12 10:50:37,223.223 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 10:50:37
[2026-06-12 10:50:37,535.535 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 10:50:37,673.673 INFO    ] Initializing speech engine...
[2026-06-12 10:50:37,682.682 INFO    ] 2026-06-12 10:50:37
[2026-06-12 10:50:37,886.886 INFO    ] 2026-06-12 10:50:37
[2026-06-12 10:50:37,915.915 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 10:50:38,098.098 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 10:50:38,107.107 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 10:50:38,234.234 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 10:50:38,296.296 INFO    ] time= 12/06/2026 10:50:38
[2026-06-12 10:50:38,328.328 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 10:50:38,334.334 INFO    ] Checking for existing commands in stream...
[2026-06-12 10:50:38,401.401 INFO    ] No existing commands found in stream
[2026-06-12 10:50:43,410.410 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 10:50:43,413.413 INFO    ] Waiting 2.72 seconds before fallback handling...
[2026-06-12 10:50:46,491.491 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 10:50:46,493.493 INFO    ] Checking for system updates...
[2026-06-12 10:50:46,514.514 INFO    ] 200
[2026-06-12 10:50:46,515.515 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:50:46,546.546 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 10:50:46,547.547 INFO    ] No update needed
[2026-06-12 10:50:46,548.548 INFO    ] Checking for camera pi updates...
[2026-06-12 10:50:46,571.571 INFO    ] 200
[2026-06-12 10:50:46,573.573 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:50:46,596.596 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 10:50:46,643.643 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 10:50:46,645.645 INFO    ] No camera update needed
[2026-06-12 10:50:46,646.646 INFO    ] Script finished. Safe exiting...
[2026-06-12 10:50:46,647.647 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 10:50:46,651.651 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 10:50:46,654.654 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 10:50:48,697.697 INFO    ] ================================================
[2026-06-12 10:50:48,713.713 INFO    ] Launching Daemon at Fri Jun 12 10:50:48 IST 2026
[2026-06-12 10:50:48,725.725 INFO    ] ================================================
[2026-06-12 10:50:49,085.085 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 10:50:49
[2026-06-12 10:50:49,399.399 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 10:50:49,539.539 INFO    ] Initializing speech engine...
[2026-06-12 10:50:49,547.547 INFO    ] 2026-06-12 10:50:49
[2026-06-12 10:50:49,753.753 INFO    ] 2026-06-12 10:50:49
[2026-06-12 10:50:49,782.782 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 10:50:49,904.904 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 10:50:49,966.966 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 10:50:50,097.097 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 10:50:50,142.142 INFO    ] time= 12/06/2026 10:50:50
[2026-06-12 10:50:50,175.175 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 10:50:50,196.196 INFO    ] Checking for existing commands in stream...
[2026-06-12 10:50:50,268.268 INFO    ] No existing commands found in stream
[2026-06-12 10:50:55,277.277 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 10:50:55,280.280 INFO    ] Waiting 3.70 seconds before fallback handling...
[2026-06-12 10:50:59,372.372 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 10:50:59,374.374 INFO    ] Checking for system updates...
[2026-06-12 10:50:59,398.398 INFO    ] 200
[2026-06-12 10:50:59,399.399 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:50:59,432.432 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 10:50:59,434.434 INFO    ] No update needed
[2026-06-12 10:50:59,435.435 INFO    ] Checking for camera pi updates...
[2026-06-12 10:50:59,457.457 INFO    ] 200
[2026-06-12 10:50:59,459.459 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:50:59,484.484 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 10:50:59,520.520 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 10:50:59,523.523 INFO    ] No camera update needed
[2026-06-12 10:50:59,525.525 INFO    ] Script finished. Safe exiting...
[2026-06-12 10:50:59,527.527 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 10:50:59,531.531 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 10:50:59,534.534 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 10:51:01,574.574 INFO    ] ================================================
[2026-06-12 10:51:01,589.589 INFO    ] Launching Daemon at Fri Jun 12 10:51:01 IST 2026
[2026-06-12 10:51:01,601.601 INFO    ] ================================================
[2026-06-12 10:51:02,001.001 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 10:51:01
[2026-06-12 10:51:02,375.375 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 10:51:02,535.535 INFO    ] Initializing speech engine...
[2026-06-12 10:51:02,541.541 INFO    ] 2026-06-12 10:51:02
[2026-06-12 10:51:02,798.798 INFO    ] 2026-06-12 10:51:02
[2026-06-12 10:51:02,841.841 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 10:51:02,973.973 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 10:51:03,012.012 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 10:51:03,175.175 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 10:51:03,234.234 INFO    ] time= 12/06/2026 10:51:03
[2026-06-12 10:51:03,266.266 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 10:51:03,272.272 INFO    ] Checking for existing commands in stream...
[2026-06-12 10:51:03,363.363 INFO    ] No existing commands found in stream
[2026-06-12 10:51:08,372.372 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 10:51:08,374.374 INFO    ] Waiting 3.77 seconds before fallback handling...
[2026-06-12 10:51:12,504.504 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 10:51:12,506.506 INFO    ] Checking for system updates...
[2026-06-12 10:51:12,527.527 INFO    ] 200
[2026-06-12 10:51:12,528.528 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:51:12,562.562 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 10:51:12,564.564 INFO    ] No update needed
[2026-06-12 10:51:12,565.565 INFO    ] Checking for camera pi updates...
[2026-06-12 10:51:12,587.587 INFO    ] 200
[2026-06-12 10:51:12,588.588 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:51:12,612.612 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 10:51:12,652.652 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 10:51:12,654.654 INFO    ] No camera update needed
[2026-06-12 10:51:12,655.655 INFO    ] Script finished. Safe exiting...
[2026-06-12 10:51:12,657.657 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 10:51:12,660.660 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 10:51:12,663.663 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 10:51:14,705.705 INFO    ] ================================================
[2026-06-12 10:51:14,721.721 INFO    ] Launching Daemon at Fri Jun 12 10:51:14 IST 2026
[2026-06-12 10:51:14,737.737 INFO    ] ================================================
[2026-06-12 10:51:15,101.101 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 10:51:15
[2026-06-12 10:51:15,417.417 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 10:51:15,562.562 INFO    ] Initializing speech engine...
[2026-06-12 10:51:15,566.566 INFO    ] 2026-06-12 10:51:15
[2026-06-12 10:51:15,771.771 INFO    ] 2026-06-12 10:51:15
[2026-06-12 10:51:15,799.799 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 10:51:15,983.983 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 10:51:15,993.993 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 10:51:16,122.122 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 10:51:16,189.189 INFO    ] time= 12/06/2026 10:51:16
[2026-06-12 10:51:16,213.213 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 10:51:16,219.219 INFO    ] Checking for existing commands in stream...
[2026-06-12 10:51:16,286.286 INFO    ] No existing commands found in stream
[2026-06-12 10:51:21,311.311 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 10:51:21,314.314 INFO    ] Waiting 0.96 seconds before fallback handling...
[2026-06-12 10:51:22,635.635 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 10:51:22,636.636 INFO    ] Checking for system updates...
[2026-06-12 10:51:22,658.658 INFO    ] 200
[2026-06-12 10:51:22,659.659 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:51:22,692.692 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 10:51:22,694.694 INFO    ] No update needed
[2026-06-12 10:51:22,695.695 INFO    ] Checking for camera pi updates...
[2026-06-12 10:51:22,714.714 INFO    ] 200
[2026-06-12 10:51:22,715.715 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:51:22,740.740 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 10:51:22,779.779 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 10:51:22,780.780 INFO    ] No camera update needed
[2026-06-12 10:51:22,782.782 INFO    ] Script finished. Safe exiting...
[2026-06-12 10:51:22,783.783 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 10:51:22,786.786 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 10:51:22,789.789 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 10:51:24,828.828 INFO    ] ================================================
[2026-06-12 10:51:24,843.843 INFO    ] Launching Daemon at Fri Jun 12 10:51:24 IST 2026
[2026-06-12 10:51:24,854.854 INFO    ] ================================================
[2026-06-12 10:51:25,184.184 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 10:51:25
[2026-06-12 10:51:25,500.500 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 10:51:25,644.644 INFO    ] Initializing speech engine...
[2026-06-12 10:51:25,649.649 INFO    ] 2026-06-12 10:51:25
[2026-06-12 10:51:25,853.853 INFO    ] 2026-06-12 10:51:25
[2026-06-12 10:51:25,882.882 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 10:51:26,065.065 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 10:51:26,068.068 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 10:51:26,204.204 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 10:51:26,272.272 INFO    ] time= 12/06/2026 10:51:26
[2026-06-12 10:51:26,296.296 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 10:51:26,303.303 INFO    ] Checking for existing commands in stream...
[2026-06-12 10:51:26,370.370 INFO    ] No existing commands found in stream
[2026-06-12 10:51:31,392.392 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 10:51:31,395.395 INFO    ] Waiting 2.87 seconds before fallback handling...
[2026-06-12 10:51:34,606.606 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 10:51:34,608.608 INFO    ] Checking for system updates...
[2026-06-12 10:51:34,630.630 INFO    ] 200
[2026-06-12 10:51:34,631.631 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:51:34,671.671 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 10:51:34,673.673 INFO    ] No update needed
[2026-06-12 10:51:34,674.674 INFO    ] Checking for camera pi updates...
[2026-06-12 10:51:34,695.695 INFO    ] 200
[2026-06-12 10:51:34,696.696 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:51:34,720.720 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 10:51:34,765.765 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 10:51:34,766.766 INFO    ] No camera update needed
[2026-06-12 10:51:34,768.768 INFO    ] Script finished. Safe exiting...
[2026-06-12 10:51:34,769.769 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 10:51:34,772.772 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 10:51:34,776.776 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 10:51:36,814.814 INFO    ] ================================================
[2026-06-12 10:51:36,829.829 INFO    ] Launching Daemon at Fri Jun 12 10:51:36 IST 2026
[2026-06-12 10:51:36,841.841 INFO    ] ================================================
[2026-06-12 10:51:37,199.199 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 10:51:37
[2026-06-12 10:51:37,510.510 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 10:51:37,647.647 INFO    ] Initializing speech engine...
[2026-06-12 10:51:37,655.655 INFO    ] 2026-06-12 10:51:37
[2026-06-12 10:51:37,860.860 INFO    ] 2026-06-12 10:51:37
[2026-06-12 10:51:37,890.890 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 10:51:38,074.074 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 10:51:38,083.083 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 10:51:38,205.205 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 10:51:38,265.265 INFO    ] time= 12/06/2026 10:51:38
[2026-06-12 10:51:38,300.300 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 10:51:38,305.305 INFO    ] Checking for existing commands in stream...
[2026-06-12 10:51:38,376.376 INFO    ] No existing commands found in stream
[2026-06-12 10:51:43,390.390 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 10:51:43,393.393 INFO    ] Waiting 0.63 seconds before fallback handling...
[2026-06-12 10:51:44,376.376 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 10:51:44,378.378 INFO    ] Checking for system updates...
[2026-06-12 10:51:44,404.404 INFO    ] 200
[2026-06-12 10:51:44,405.405 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:51:44,438.438 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 10:51:44,440.440 INFO    ] No update needed
[2026-06-12 10:51:44,441.441 INFO    ] Checking for camera pi updates...
[2026-06-12 10:51:44,461.461 INFO    ] 200
[2026-06-12 10:51:44,463.463 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:51:44,486.486 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 10:51:44,528.528 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 10:51:44,529.529 INFO    ] No camera update needed
[2026-06-12 10:51:44,531.531 INFO    ] Script finished. Safe exiting...
[2026-06-12 10:51:44,532.532 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 10:51:44,536.536 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 10:51:44,539.539 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 10:51:46,579.579 INFO    ] ================================================
[2026-06-12 10:51:46,596.596 INFO    ] Launching Daemon at Fri Jun 12 10:51:46 IST 2026
[2026-06-12 10:51:46,608.608 INFO    ] ================================================
[2026-06-12 10:51:46,971.971 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 10:51:46
[2026-06-12 10:51:47,311.311 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 10:51:47,461.461 INFO    ] Initializing speech engine...
[2026-06-12 10:51:47,466.466 INFO    ] 2026-06-12 10:51:47
[2026-06-12 10:51:47,674.674 INFO    ] 2026-06-12 10:51:47
[2026-06-12 10:51:47,702.702 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 10:51:47,845.845 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 10:51:47,888.888 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 10:51:48,047.047 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 10:51:48,096.096 INFO    ] time= 12/06/2026 10:51:48
[2026-06-12 10:51:48,118.118 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 10:51:48,124.124 INFO    ] Checking for existing commands in stream...
[2026-06-12 10:51:48,191.191 INFO    ] No existing commands found in stream
[2026-06-12 10:51:53,205.205 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 10:51:53,208.208 INFO    ] Waiting 0.68 seconds before fallback handling...
[2026-06-12 10:51:54,276.276 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 10:51:54,277.277 INFO    ] Checking for system updates...
[2026-06-12 10:51:54,300.300 INFO    ] 200
[2026-06-12 10:51:54,301.301 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:51:54,334.334 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 10:51:54,336.336 INFO    ] No update needed
[2026-06-12 10:51:54,337.337 INFO    ] Checking for camera pi updates...
[2026-06-12 10:51:54,358.358 INFO    ] 200
[2026-06-12 10:51:54,360.360 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:51:54,387.387 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 10:51:54,427.427 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 10:51:54,428.428 INFO    ] No camera update needed
[2026-06-12 10:51:54,430.430 INFO    ] Script finished. Safe exiting...
[2026-06-12 10:51:54,431.431 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 10:51:54,435.435 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 10:51:54,438.438 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 10:51:56,475.475 INFO    ] ================================================
[2026-06-12 10:51:56,492.492 INFO    ] Launching Daemon at Fri Jun 12 10:51:56 IST 2026
[2026-06-12 10:51:56,503.503 INFO    ] ================================================
[2026-06-12 10:51:56,861.861 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 10:51:56
[2026-06-12 10:51:57,177.177 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 10:51:57,311.311 INFO    ] Initializing speech engine...
[2026-06-12 10:51:57,316.316 INFO    ] 2026-06-12 10:51:57
[2026-06-12 10:51:57,547.547 INFO    ] 2026-06-12 10:51:57
[2026-06-12 10:51:57,578.578 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 10:51:57,772.772 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 10:51:57,782.782 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 10:51:57,907.907 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 10:51:57,969.969 INFO    ] time= 12/06/2026 10:51:57
[2026-06-12 10:51:58,001.001 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 10:51:58,002.002 INFO    ] Checking for existing commands in stream...
[2026-06-12 10:51:58,074.074 INFO    ] No existing commands found in stream
[2026-06-12 10:52:03,083.083 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 10:52:03,086.086 INFO    ] Waiting 1.89 seconds before fallback handling...
[2026-06-12 10:52:05,343.343 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 10:52:05,345.345 INFO    ] Checking for system updates...
[2026-06-12 10:52:05,367.367 INFO    ] 200
[2026-06-12 10:52:05,368.368 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:52:05,401.401 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 10:52:05,402.402 INFO    ] No update needed
[2026-06-12 10:52:05,403.403 INFO    ] Checking for camera pi updates...
[2026-06-12 10:52:05,424.424 INFO    ] 200
[2026-06-12 10:52:05,425.425 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:52:05,448.448 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 10:52:05,488.488 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 10:52:05,490.490 INFO    ] No camera update needed
[2026-06-12 10:52:05,491.491 INFO    ] Script finished. Safe exiting...
[2026-06-12 10:52:05,492.492 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 10:52:05,495.495 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 10:52:05,498.498 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 10:52:07,537.537 INFO    ] ================================================
[2026-06-12 10:52:07,553.553 INFO    ] Launching Daemon at Fri Jun 12 10:52:07 IST 2026
[2026-06-12 10:52:07,564.564 INFO    ] ================================================
[2026-06-12 10:52:07,917.917 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 10:52:07
[2026-06-12 10:52:08,231.231 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 10:52:08,374.374 INFO    ] Initializing speech engine...
[2026-06-12 10:52:08,379.379 INFO    ] 2026-06-12 10:52:08
[2026-06-12 10:52:08,582.582 INFO    ] 2026-06-12 10:52:08
[2026-06-12 10:52:08,611.611 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 10:52:08,795.795 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 10:52:08,804.804 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 10:52:08,933.933 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 10:52:09,000.000 INFO    ] time= 12/06/2026 10:52:08
[2026-06-12 10:52:09,024.024 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 10:52:09,031.031 INFO    ] Checking for existing commands in stream...
[2026-06-12 10:52:09,121.121 INFO    ] No existing commands found in stream
[2026-06-12 10:52:14,130.130 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 10:52:14,133.133 INFO    ] Waiting 1.45 seconds before fallback handling...
[2026-06-12 10:52:15,953.953 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 10:52:15,955.955 INFO    ] Checking for system updates...
[2026-06-12 10:52:15,977.977 INFO    ] 200
[2026-06-12 10:52:15,978.978 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:52:16,011.011 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 10:52:16,012.012 INFO    ] No update needed
[2026-06-12 10:52:16,013.013 INFO    ] Checking for camera pi updates...
[2026-06-12 10:52:16,033.033 INFO    ] 200
[2026-06-12 10:52:16,035.035 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:52:16,058.058 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 10:52:16,097.097 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 10:52:16,098.098 INFO    ] No camera update needed
[2026-06-12 10:52:16,100.100 INFO    ] Script finished. Safe exiting...
[2026-06-12 10:52:16,101.101 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 10:52:16,104.104 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 10:52:16,107.107 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 10:52:18,137.137 INFO    ] ================================================
[2026-06-12 10:52:18,146.146 INFO    ] Launching Daemon at Fri Jun 12 10:52:18 IST 2026
[2026-06-12 10:52:18,152.152 INFO    ] ================================================
[2026-06-12 10:52:18,454.454 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 10:52:18
[2026-06-12 10:52:18,768.768 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 10:52:18,911.911 INFO    ] Initializing speech engine...
[2026-06-12 10:52:18,916.916 INFO    ] 2026-06-12 10:52:18
[2026-06-12 10:52:19,119.119 INFO    ] 2026-06-12 10:52:19
[2026-06-12 10:52:19,147.147 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 10:52:19,330.330 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 10:52:19,334.334 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 10:52:19,470.470 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 10:52:19,534.534 INFO    ] time= 12/06/2026 10:52:19
[2026-06-12 10:52:19,561.561 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 10:52:19,563.563 INFO    ] Checking for existing commands in stream...
[2026-06-12 10:52:19,636.636 INFO    ] No existing commands found in stream
[2026-06-12 10:52:24,645.645 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 10:52:24,648.648 INFO    ] Waiting 0.80 seconds before fallback handling...
[2026-06-12 10:52:25,840.840 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 10:52:25,842.842 INFO    ] Checking for system updates...
[2026-06-12 10:52:25,864.864 INFO    ] 200
[2026-06-12 10:52:25,866.866 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:52:25,901.901 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 10:52:25,903.903 INFO    ] No update needed
[2026-06-12 10:52:25,904.904 INFO    ] Checking for camera pi updates...
[2026-06-12 10:52:25,926.926 INFO    ] 200
[2026-06-12 10:52:25,928.928 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:52:25,953.953 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 10:52:25,993.993 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 10:52:25,994.994 INFO    ] No camera update needed
[2026-06-12 10:52:25,996.996 INFO    ] Script finished. Safe exiting...
[2026-06-12 10:52:25,997.997 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 10:52:26,001.001 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 10:52:26,004.004 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 10:52:28,043.043 INFO    ] ================================================
[2026-06-12 10:52:28,059.059 INFO    ] Launching Daemon at Fri Jun 12 10:52:28 IST 2026
[2026-06-12 10:52:28,070.070 INFO    ] ================================================
[2026-06-12 10:52:28,423.423 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 10:52:28
[2026-06-12 10:52:28,734.734 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 10:52:28,865.865 INFO    ] Initializing speech engine...
[2026-06-12 10:52:28,873.873 INFO    ] 2026-06-12 10:52:28
[2026-06-12 10:52:29,084.084 INFO    ] 2026-06-12 10:52:29
[2026-06-12 10:52:29,113.113 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 10:52:29,235.235 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 10:52:29,298.298 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 10:52:29,432.432 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 10:52:29,494.494 INFO    ] time= 12/06/2026 10:52:29
[2026-06-12 10:52:29,526.526 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 10:52:29,532.532 INFO    ] Checking for existing commands in stream...
[2026-06-12 10:52:29,599.599 INFO    ] No existing commands found in stream
[2026-06-12 10:52:34,608.608 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 10:52:34,611.611 INFO    ] Waiting 1.74 seconds before fallback handling...
[2026-06-12 10:52:36,702.702 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 10:52:36,703.703 INFO    ] Checking for system updates...
[2026-06-12 10:52:36,724.724 INFO    ] 200
[2026-06-12 10:52:36,725.725 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:52:36,755.755 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 10:52:36,757.757 INFO    ] No update needed
[2026-06-12 10:52:36,758.758 INFO    ] Checking for camera pi updates...
[2026-06-12 10:52:36,778.778 INFO    ] 200
[2026-06-12 10:52:36,780.780 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:52:36,805.805 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 10:52:36,949.949 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 10:52:36,950.950 INFO    ] No camera update needed
[2026-06-12 10:52:36,952.952 INFO    ] Script finished. Safe exiting...
[2026-06-12 10:52:36,953.953 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 10:52:36,956.956 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 10:52:36,958.958 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 10:52:39,001.001 INFO    ] ================================================
[2026-06-12 10:52:39,016.016 INFO    ] Launching Daemon at Fri Jun 12 10:52:39 IST 2026
[2026-06-12 10:52:39,027.027 INFO    ] ================================================
[2026-06-12 10:52:39,383.383 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 10:52:39
[2026-06-12 10:52:39,694.694 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 10:52:39,823.823 INFO    ] Initializing speech engine...
[2026-06-12 10:52:39,827.827 INFO    ] 2026-06-12 10:52:39
[2026-06-12 10:52:40,048.048 INFO    ] 2026-06-12 10:52:40
[2026-06-12 10:52:40,078.078 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 10:52:40,266.266 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 10:52:40,270.270 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 10:52:40,400.400 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 10:52:40,461.461 INFO    ] time= 12/06/2026 10:52:40
[2026-06-12 10:52:40,500.500 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 10:52:40,502.502 INFO    ] Checking for existing commands in stream...
[2026-06-12 10:52:40,598.598 INFO    ] No existing commands found in stream
[2026-06-12 10:52:45,607.607 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 10:52:45,610.610 INFO    ] Waiting 2.85 seconds before fallback handling...
[2026-06-12 10:52:48,814.814 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 10:52:48,816.816 INFO    ] Checking for system updates...
[2026-06-12 10:52:48,838.838 INFO    ] 200
[2026-06-12 10:52:48,839.839 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:52:48,872.872 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 10:52:48,873.873 INFO    ] No update needed
[2026-06-12 10:52:48,874.874 INFO    ] Checking for camera pi updates...
[2026-06-12 10:52:48,894.894 INFO    ] 200
[2026-06-12 10:52:48,896.896 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:52:48,921.921 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 10:52:48,967.967 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 10:52:48,968.968 INFO    ] No camera update needed
[2026-06-12 10:52:48,970.970 INFO    ] Script finished. Safe exiting...
[2026-06-12 10:52:48,971.971 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 10:52:48,974.974 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 10:52:48,977.977 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 10:52:51,016.016 INFO    ] ================================================
[2026-06-12 10:52:51,032.032 INFO    ] Launching Daemon at Fri Jun 12 10:52:51 IST 2026
[2026-06-12 10:52:51,043.043 INFO    ] ================================================
[2026-06-12 10:52:51,381.381 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 10:52:51
[2026-06-12 10:52:51,695.695 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 10:52:51,832.832 INFO    ] Initializing speech engine...
[2026-06-12 10:52:51,845.845 INFO    ] 2026-06-12 10:52:51
[2026-06-12 10:52:52,064.064 INFO    ] 2026-06-12 10:52:52
[2026-06-12 10:52:52,095.095 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 10:52:52,227.227 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 10:52:52,281.281 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 10:52:52,438.438 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 10:52:52,490.490 INFO    ] time= 12/06/2026 10:52:52
[2026-06-12 10:52:52,529.529 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 10:52:52,547.547 INFO    ] Checking for existing commands in stream...
[2026-06-12 10:52:52,623.623 INFO    ] No existing commands found in stream
[2026-06-12 10:52:57,633.633 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 10:52:57,636.636 INFO    ] Waiting 2.61 seconds before fallback handling...
[2026-06-12 10:53:00,625.625 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 10:53:00,626.626 INFO    ] Checking for system updates...
[2026-06-12 10:53:00,648.648 INFO    ] 200
[2026-06-12 10:53:00,650.650 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:53:00,681.681 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 10:53:00,682.682 INFO    ] No update needed
[2026-06-12 10:53:00,684.684 INFO    ] Checking for camera pi updates...
[2026-06-12 10:53:00,703.703 INFO    ] 200
[2026-06-12 10:53:00,705.705 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:53:00,730.730 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 10:53:00,766.766 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 10:53:00,768.768 INFO    ] No camera update needed
[2026-06-12 10:53:00,769.769 INFO    ] Script finished. Safe exiting...
[2026-06-12 10:53:00,771.771 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 10:53:00,774.774 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 10:53:00,777.777 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 10:53:02,812.812 INFO    ] ================================================
[2026-06-12 10:53:02,827.827 INFO    ] Launching Daemon at Fri Jun 12 10:53:02 IST 2026
[2026-06-12 10:53:02,838.838 INFO    ] ================================================
[2026-06-12 10:53:03,201.201 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 10:53:03
[2026-06-12 10:53:03,513.513 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 10:53:03,645.645 INFO    ] Initializing speech engine...
[2026-06-12 10:53:03,649.649 INFO    ] 2026-06-12 10:53:03
[2026-06-12 10:53:03,873.873 INFO    ] 2026-06-12 10:53:03
[2026-06-12 10:53:03,903.903 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 10:53:04,050.050 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 10:53:04,101.101 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 10:53:04,241.241 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 10:53:04,287.287 INFO    ] time= 12/06/2026 10:53:04
[2026-06-12 10:53:04,325.325 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 10:53:04,348.348 INFO    ] Checking for existing commands in stream...
[2026-06-12 10:53:04,423.423 INFO    ] No existing commands found in stream
[2026-06-12 10:53:09,434.434 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 10:53:09,436.436 INFO    ] Waiting 1.29 seconds before fallback handling...
[2026-06-12 10:53:11,078.078 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 10:53:11,080.080 INFO    ] Checking for system updates...
[2026-06-12 10:53:11,101.101 INFO    ] 200
[2026-06-12 10:53:11,102.102 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:53:11,134.134 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 10:53:11,135.135 INFO    ] No update needed
[2026-06-12 10:53:11,136.136 INFO    ] Checking for camera pi updates...
[2026-06-12 10:53:11,157.157 INFO    ] 200
[2026-06-12 10:53:11,158.158 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:53:11,182.182 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 10:53:11,219.219 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 10:53:11,220.220 INFO    ] No camera update needed
[2026-06-12 10:53:11,222.222 INFO    ] Script finished. Safe exiting...
[2026-06-12 10:53:11,223.223 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 10:53:11,226.226 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 10:53:11,229.229 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 10:53:13,268.268 INFO    ] ================================================
[2026-06-12 10:53:13,284.284 INFO    ] Launching Daemon at Fri Jun 12 10:53:13 IST 2026
[2026-06-12 10:53:13,295.295 INFO    ] ================================================
[2026-06-12 10:53:13,674.674 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 10:53:13
[2026-06-12 10:53:14,009.009 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 10:53:14,160.160 INFO    ] Initializing speech engine...
[2026-06-12 10:53:14,164.164 INFO    ] 2026-06-12 10:53:14
[2026-06-12 10:53:14,369.369 INFO    ] 2026-06-12 10:53:14
[2026-06-12 10:53:14,399.399 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 10:53:14,583.583 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 10:53:14,586.586 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 10:53:14,743.743 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 10:53:14,791.791 INFO    ] time= 12/06/2026 10:53:14
[2026-06-12 10:53:14,813.813 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 10:53:14,819.819 INFO    ] Checking for existing commands in stream...
[2026-06-12 10:53:14,911.911 INFO    ] No existing commands found in stream
[2026-06-12 10:53:19,925.925 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 10:53:19,928.928 INFO    ] Waiting 3.02 seconds before fallback handling...
[2026-06-12 10:53:23,346.346 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 10:53:23,347.347 INFO    ] Checking for system updates...
[2026-06-12 10:53:23,369.369 INFO    ] 200
[2026-06-12 10:53:23,371.371 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:53:23,401.401 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 10:53:23,403.403 INFO    ] No update needed
[2026-06-12 10:53:23,404.404 INFO    ] Checking for camera pi updates...
[2026-06-12 10:53:23,423.423 INFO    ] 200
[2026-06-12 10:53:23,425.425 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:53:23,451.451 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 10:53:23,488.488 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 10:53:23,490.490 INFO    ] No camera update needed
[2026-06-12 10:53:23,491.491 INFO    ] Script finished. Safe exiting...
[2026-06-12 10:53:23,493.493 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 10:53:23,496.496 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 10:53:23,499.499 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 10:53:25,539.539 INFO    ] ================================================
[2026-06-12 10:53:25,555.555 INFO    ] Launching Daemon at Fri Jun 12 10:53:25 IST 2026
[2026-06-12 10:53:25,566.566 INFO    ] ================================================
[2026-06-12 10:53:25,896.896 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 10:53:25
[2026-06-12 10:53:26,206.206 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 10:53:26,336.336 INFO    ] Initializing speech engine...
[2026-06-12 10:53:26,340.340 INFO    ] 2026-06-12 10:53:26
[2026-06-12 10:53:26,559.559 INFO    ] 2026-06-12 10:53:26
[2026-06-12 10:53:26,587.587 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 10:53:26,715.715 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 10:53:26,779.779 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 10:53:26,912.912 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 10:53:26,967.967 INFO    ] time= 12/06/2026 10:53:26
[2026-06-12 10:53:27,003.003 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 10:53:27,013.013 INFO    ] Checking for existing commands in stream...
[2026-06-12 10:53:27,088.088 INFO    ] No existing commands found in stream
[2026-06-12 10:53:32,096.096 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 10:53:32,098.098 INFO    ] Waiting 3.68 seconds before fallback handling...
[2026-06-12 10:53:36,150.150 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 10:53:36,152.152 INFO    ] Checking for system updates...
[2026-06-12 10:53:36,173.173 INFO    ] 200
[2026-06-12 10:53:36,174.174 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:53:36,206.206 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 10:53:36,207.207 INFO    ] No update needed
[2026-06-12 10:53:36,209.209 INFO    ] Checking for camera pi updates...
[2026-06-12 10:53:36,229.229 INFO    ] 200
[2026-06-12 10:53:36,230.230 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:53:36,254.254 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 10:53:36,291.291 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 10:53:36,293.293 INFO    ] No camera update needed
[2026-06-12 10:53:36,294.294 INFO    ] Script finished. Safe exiting...
[2026-06-12 10:53:36,295.295 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 10:53:36,298.298 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 10:53:36,301.301 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 10:53:38,341.341 INFO    ] ================================================
[2026-06-12 10:53:38,356.356 INFO    ] Launching Daemon at Fri Jun 12 10:53:38 IST 2026
[2026-06-12 10:53:38,367.367 INFO    ] ================================================
[2026-06-12 10:53:38,707.707 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 10:53:38
[2026-06-12 10:53:39,020.020 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 10:53:39,153.153 INFO    ] Initializing speech engine...
[2026-06-12 10:53:39,157.157 INFO    ] 2026-06-12 10:53:39
[2026-06-12 10:53:39,385.385 INFO    ] 2026-06-12 10:53:39
[2026-06-12 10:53:39,415.415 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 10:53:39,545.545 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 10:53:39,588.588 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 10:53:39,751.751 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 10:53:39,803.803 INFO    ] time= 12/06/2026 10:53:39
[2026-06-12 10:53:39,835.835 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 10:53:39,858.858 INFO    ] Checking for existing commands in stream...
[2026-06-12 10:53:39,933.933 INFO    ] No existing commands found in stream
[2026-06-12 10:53:40,707.707 INFO    ] Received new command: ID=1781241820555-0
[2026-06-12 10:53:40,711.711 INFO    ] process_and_cleanup_command: msg_id=1781241820555-0
[2026-06-12 10:53:40,717.717 INFO    ] is_command_expired: timestamp=2026-06-12T05:23:39.845Z, expiry=30s
[2026-06-12 10:53:40,799.799 INFO    ] Command removed from stream: 1781241820555-0. returning for processing...
[2026-06-12 10:53:40,810.810 INFO    ] ***** get_valid_command
[2026-06-12 10:53:40,853.853 INFO    ] {'command': 'start-order', 'timestamp': '2026-06-12T05:23:39.845Z', 'data': '{"request_id":"start-order-1781241819845-r41utsn21","orderId":"TM09202301260612105252357","is_vending":false}', 'source': 'webapp', 'timeout': '10'}
[2026-06-12 10:53:40,881.881 INFO    ] ***** Parsed command data: {'is_vending': False, 'request_id': 'start-order-1781241819845-r41utsn21', 'orderId': 'TM09202301260612105252357'}
[2026-06-12 10:53:40,891.891 INFO    ] Handling start order...
[2026-06-12 10:53:40,902.902 INFO    ] handle_start_order_command
[2026-06-12 10:53:40,911.911 INFO    ] _send_start_order_success: request_id=start-order-1781241819845-r41utsn21, order_id=TM09202301260612105252357
[2026-06-12 10:53:40,916.916 INFO    ] [_send_start_order_success] Adding message to stream: machine:TM09202301
[2026-06-12 10:53:40,970.970 INFO    ] [_send_start_order_success] Message added to stream with ID: 1781241820977-0
[2026-06-12 10:53:40,971.971 INFO    ] ✅ Start-order command succeeded - order locked, waiting for process-order command
[2026-06-12 10:53:40,973.973 INFO    ] Checking for system updates...
[2026-06-12 10:53:40,996.996 INFO    ] 200
[2026-06-12 10:53:40,997.997 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:53:41,027.027 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 10:53:41,029.029 INFO    ] No update needed
[2026-06-12 10:53:41,030.030 INFO    ] Checking for camera pi updates...
[2026-06-12 10:53:41,050.050 INFO    ] 200
[2026-06-12 10:53:41,052.052 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:53:41,076.076 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 10:53:41,116.116 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 10:53:41,117.117 INFO    ] No camera update needed
[2026-06-12 10:53:41,118.118 INFO    ] Script finished. Safe exiting...
[2026-06-12 10:53:41,119.119 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 10:53:41,122.122 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 10:53:41,125.125 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 10:53:43,163.163 INFO    ] ================================================
[2026-06-12 10:53:43,178.178 INFO    ] Launching Daemon at Fri Jun 12 10:53:43 IST 2026
[2026-06-12 10:53:43,189.189 INFO    ] ================================================
[2026-06-12 10:53:43,526.526 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 10:53:43
[2026-06-12 10:53:43,861.861 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 10:53:43,999.999 INFO    ] Initializing speech engine...
[2026-06-12 10:53:44,004.004 INFO    ] 2026-06-12 10:53:43
[2026-06-12 10:53:44,227.227 INFO    ] 2026-06-12 10:53:44
[2026-06-12 10:53:44,256.256 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 10:53:44,443.443 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 10:53:44,447.447 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 10:53:44,582.582 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 10:53:44,634.634 INFO    ] time= 12/06/2026 10:53:44
[2026-06-12 10:53:44,679.679 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 10:53:44,686.686 INFO    ] Checking for existing commands in stream...
[2026-06-12 10:53:44,748.748 INFO    ] Found 2 existing command(s) in stream
[2026-06-12 10:53:44,749.749 INFO    ] Checking historical command: ID=1781241820977-0
[2026-06-12 10:53:44,763.763 INFO    ] process_and_cleanup_command: msg_id=1781241820977-0
[2026-06-12 10:53:44,766.766 INFO    ] is_command_expired: timestamp=2026-06-12T05:23:40.913262Z, expiry=30s
[2026-06-12 10:53:44,901.901 INFO    ] Command removed from stream: 1781241820977-0. returning for processing...
[2026-06-12 10:53:44,904.904 INFO    ] ***** get_valid_command
[2026-06-12 10:53:44,907.907 INFO    ] {'status': 'success', 'metadata_request_id': 'start-order-1781241819845-r41utsn21', 'imei': 'TM09202301', 'message': 'start-order success', 'metadata_order_id': 'TM09202301260612105252357', 'message_type': 'command_response', 'timestamp': '2026-06-12T05:23:40.913262Z'}
[2026-06-12 10:53:44,912.912 INFO    ] Checking historical command: ID=1781241822894-0
[2026-06-12 10:53:44,916.916 INFO    ] process_and_cleanup_command: msg_id=1781241822894-0
[2026-06-12 10:53:44,919.919 INFO    ] is_command_expired: timestamp=2026-06-12T05:23:42.289Z, expiry=30s
[2026-06-12 10:53:44,983.983 INFO    ] Command removed from stream: 1781241822894-0. returning for processing...
[2026-06-12 10:53:44,987.987 INFO    ] ***** get_valid_command
[2026-06-12 10:53:44,993.993 INFO    ] {'source': 'webapp', 'command': 'process-order', 'timestamp': '2026-06-12T05:23:42.289Z', 'data': '{"request_id":"process-order-1781241822289-l2lrub4it","orderId":"TM09202301260612105252357","is_vending":false,"accessCode":"26496187"}', 'timeout': '60'}
[2026-06-12 10:53:44,998.998 INFO    ] ***** Parsed command data: {'accessCode': '26496187', 'request_id': 'process-order-1781241822289-l2lrub4it', 'orderId': 'TM09202301260612105252357', 'is_vending': False}
[2026-06-12 10:53:45,002.002 INFO    ] Handling process order...
[2026-06-12 10:53:45,007.007 INFO    ] Processing process-order command...
[2026-06-12 10:53:45,013.013 INFO    ] 🔍 Lock file Order ID: TM09202301260612105252357, TS: 2026-06-12 10:53:40
[2026-06-12 10:53:45,024.024 INFO    ] ✅ Order lock valid for TM09202301260612105252357
[2026-06-12 10:53:45,028.028 INFO    ] Received access code in process-order, skipping PHP API call
[2026-06-12 10:53:45,033.033 INFO    ] processing access code 26496187 for order TM09202301260612105252357
[2026-06-12 10:53:45,039.039 INFO    ] 🔍 Lock file Order ID: TM09202301260612105252357, TS: 2026-06-12 10:53:40
[2026-06-12 10:53:45,045.045 INFO    ] ✅ Order lock valid for TM09202301260612105252357
[2026-06-12 10:53:45,049.049 INFO    ] 2026-06-12 10:53:45
[2026-06-12 10:53:45,086.086 INFO    ] 200
[2026-06-12 10:53:45,088.088 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:53:45,131.131 INFO    ] 26496187
[2026-06-12 10:53:45,133.133 INFO    ] 2026-06-12 10:53:45
[2026-06-12 10:53:45,158.158 INFO    ] session id :654698957
[2026-06-12 10:53:45,184.184 INFO    ] http://localhost:5000/v2/getOrderByAccessCode?access_code=26496187&imei=TM09202301&session_id=654698957
[2026-06-12 10:53:48,925.925 INFO    ] 200
[2026-06-12 10:53:48,927.927 INFO    ] {"rstatus": true, "msg": "Order Data", "status": true, "data": {"mobile": "9502772861", "order_id": "TM09202301260612105252357", "bill_amount": "75", "invoice_bill": "75", "access_code": "26496187", "proposed_sku_json": [{"door_id": "2", "name": "NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g", "tray_id": "36", "unit_price": 20, "offer_id": "", "qty": 1, "image_url": "https://images.tinymart.in/product/185993-3509.webp", "offer_desc": "", "sku_total": 20, "mrp": "20", "skuid": "185993"}, {"door_id": "2", "name": "KITKAT Nestle 4 Finger Chocolate 38g", "tray_id": "37", "unit_price": 30, "offer_id": "", "qty": 1, "image_url": "https://images.tinymart.in/product/186084-5395.png", "offer_desc": "", "sku_total": 30, "mrp": "30", "skuid": "186084"}, {"door_id": "2", "name": "Paper boat Alphonso Mango 160ml", "tray_id": "31", "unit_price": 25, "offer_id": "", "qty": 1, "image_url": "https://images.tinymart.in/product/4500407-2060.jpg", "offer_desc": "", "sku_total": 25, "mrp": "25", "skuid": "4500407"}]}}
[2026-06-12 10:53:48,928.928 INFO    ] 75
[2026-06-12 10:53:48,930.930 INFO    ] TM09202301260612105252357
[2026-06-12 10:53:48,931.931 INFO    ] 9502772861
[2026-06-12 10:53:48,933.933 INFO    ] 2026-06-12 10:53:48
[2026-06-12 10:53:48,934.934 INFO    ] Door Opening for user mobile ending with  two eight six one 
[2026-06-12 10:53:48,935.935 INFO    ] Door Opening for user mobile ending with  two eight six one 
[2026-06-12 10:53:48,937.937 INFO    ] 8bd398e711ea425ba5423c74f6d99d12
[2026-06-12 10:53:48,938.938 INFO    ] 2026-06-12 10:53:48
[2026-06-12 10:53:48,940.940 INFO    ] playing audio file
[2026-06-12 10:53:48,950.950 INFO    ] 2026-06-12 10:53:48
[2026-06-12 10:53:48,952.952 INFO    ] 2026-06-12 10:53:48
[2026-06-12 10:53:48,954.954 INFO    ] publish_status: order_id=TM09202301260612105252357
[2026-06-12 10:53:48,956.956 INFO    ] [publish_status] Adding message to stream: order:TM09202301260612105252357
[2026-06-12 10:53:49,019.019 INFO    ] [publish_status] Message added to stream with ID: 1781241829024-0
[2026-06-12 10:53:49,020.020 INFO    ] Published to order:TM09202301260612105252357: {'server_status': 'order-started', 'order_id': 'TM09202301260612105252357', 'server_response': '{"status": true, "msg": "Order Data", "rstatus": true, "data": {"access_code": "26496187", "bill_amount": "75", "proposed_sku_json": [{"skuid": "185993", "tray_id": "36", "image_url": "https://images.tinymart.in/product/185993-3509.webp", "mrp": "20", "sku_total": 20, "door_id": "2", "name": "NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g", "offer_id": "", "qty": 1, "unit_price": 20, "offer_desc": ""}, {"skuid": "186084", "tray_id": "37", "image_url": "https://images.tinymart.in/product/186084-5395.png", "mrp": "30", "sku_total": 30, "door_id": "2", "name": "KITKAT Nestle 4 Finger Chocolate 38g", "offer_id": "", "qty": 1, "unit_price": 30, "offer_desc": ""}, {"skuid": "4500407", "tray_id": "31", "image_url": "https://images.tinymart.in/product/4500407-2060.jpg", "mrp": "25", "sku_total": 25, "door_id": "2", "name": "Paper boat Alphonso Mango 160ml", "offer_id": "", "qty": 1, "unit_price": 25, "offer_desc": ""}], "mobile": "9502772861", "order_id": "TM09202301260612105252357", "invoice_bill": "75"}}', 'timestamp': '2026-06-12T05:23:48.953474Z'} (ID: 1781241829024-0)
[2026-06-12 10:53:49,575.575 INFO    ] {'server_status': 'order-started', 'order_id': 'TM09202301260612105252357', 'server_response': {'status': True, 'msg': 'Order Data', 'rstatus': True, 'data': {'access_code': '26496187', 'bill_amount': '75', 'proposed_sku_json': [{'skuid': '185993', 'tray_id': '36', 'image_url': 'https://images.tinymart.in/product/185993-3509.webp', 'mrp': '20', 'sku_total': 20, 'door_id': '2', 'name': 'NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g', 'offer_id': '', 'qty': 1, 'unit_price': 20, 'offer_desc': ''}, {'skuid': '186084', 'tray_id': '37', 'image_url': 'https://images.tinymart.in/product/186084-5395.png', 'mrp': '30', 'sku_total': 30, 'door_id': '2', 'name': 'KITKAT Nestle 4 Finger Chocolate 38g', 'offer_id': '', 'qty': 1, 'unit_price': 30, 'offer_desc': ''}, {'skuid': '4500407', 'tray_id': '31', 'image_url': 'https://images.tinymart.in/product/4500407-2060.jpg', 'mrp': '25', 'sku_total': 25, 'door_id': '2', 'name': 'Paper boat Alphonso Mango 160ml', 'offer_id': '', 'qty': 1, 'unit_price': 25, 'offer_desc': ''}], 'mobile': '9502772861', 'order_id': 'TM09202301260612105252357', 'invoice_bill': '75'}}}
[2026-06-12 10:53:49,578.578 INFO    ] 200
[2026-06-12 10:53:49,580.580 INFO    ] {"data":{"server_status":"order-started","order_id":"TM09202301260612105252357","server_response":{"status":true,"msg":"Order Data","rstatus":true,"data":{"access_code":"26496187","bill_amount":"75","proposed_sku_json":[{"skuid":"185993","tray_id":"36","image_url":"https:\/\/images.tinymart.in\/product\/185993-3509.webp","mrp":"20","sku_total":20,"door_id":"2","name":"NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g","offer_id":"","qty":1,"unit_price":20,"offer_desc":""},{"skuid":"186084","tray_id":"37","image_url":"https:\/\/images.tinymart.in\/product\/186084-5395.png","mrp":"30","sku_total":30,"door_id":"2","name":"KITKAT Nestle 4 Finger Chocolate 38g","offer_id":"","qty":1,"unit_price":30,"offer_desc":""},{"skuid":"4500407","tray_id":"31","image_url":"https:\/\/images.tinymart.in\/product\/4500407-2060.jpg","mrp":"25","sku_total":25,"door_id":"2","name":"Paper boat Alphonso Mango 160ml","offer_id":"","qty":1,"unit_price":25,"offer_desc":""}],"mobile":"9502772861","order_id":"TM09202301260612105252357","invoice_bill":"75"}}},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-12 10:53:49,584.584 INFO    ] {'response': {'status': True, 'msg': 'order updated successfully', 'code': 'ORDER_EXISTS', 'data': 'order updated successfully'}, 'data': {'server_status': 'order-started', 'order_id': 'TM09202301260612105252357', 'server_response': {'status': True, 'rstatus': True, 'msg': 'Order Data', 'data': {'order_id': 'TM09202301260612105252357', 'bill_amount': '75', 'proposed_sku_json': [{'skuid': '185993', 'tray_id': '36', 'image_url': 'https://images.tinymart.in/product/185993-3509.webp', 'mrp': '20', 'offer_desc': '', 'door_id': '2', 'name': 'NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g', 'offer_id': '', 'qty': 1, 'unit_price': 20, 'sku_total': 20}, {'skuid': '186084', 'tray_id': '37', 'image_url': 'https://images.tinymart.in/product/186084-5395.png', 'mrp': '30', 'offer_desc': '', 'door_id': '2', 'name': 'KITKAT Nestle 4 Finger Chocolate 38g', 'offer_id': '', 'qty': 1, 'unit_price': 30, 'sku_total': 30}, {'skuid': '4500407', 'tray_id': '31', 'image_url': 'https://images.tinymart.in/product/4500407-2060.jpg', 'mrp': '25', 'offer_desc': '', 'door_id': '2', 'name': 'Paper boat Alphonso Mango 160ml', 'offer_id': '', 'qty': 1, 'unit_price': 25, 'sku_total': 25}], 'mobile': '9502772861', 'access_code': '26496187', 'invoice_bill': '75'}}}}
[2026-06-12 10:53:49,587.587 INFO    ] 2026-06-12 10:53:49
[2026-06-12 10:53:49,633.633 INFO    ] 200
[2026-06-12 10:53:49,636.636 INFO    ] True
[2026-06-12 10:53:49,777.777 INFO    ] 200
[2026-06-12 10:53:49,778.778 INFO    ] {"rstatus": false, "error": {"umessage": "In Progress", "code": 20001, "tmessage": "In Progress", "data": {}}, "SectionSKU": {"skus": [], "Header": "Thank you for bearing with us :)"}, "SectionMain": {"Header": "Processing Order"}, "SectionStatus": {"UI_Header": "", "Note": "", "Header": " Your order is under process  ", "SubHeader": "Please wait while we process your order"}, "voiceNote": "Please Wait", "status": "False"}
[2026-06-12 10:53:49,781.781 INFO    ] {'status': 'False', 'error': {'tmessage': 'In Progress', 'code': 20001, 'data': {}, 'umessage': 'In Progress'}, 'voiceNote': 'Please Wait', 'SectionStatus': {'Note': '', 'SubHeader': 'Please wait while we process your order', 'Header': ' Your order is under process  ', 'UI_Header': ''}, 'rstatus': False, 'SectionMain': {'Header': 'Processing Order'}, 'SectionSKU': {'skus': [], 'Header': 'Thank you for bearing with us :)'}}
[2026-06-12 10:53:49,782.782 INFO    ] *** process_order ***
[2026-06-12 10:53:50,932.932 INFO    ] 200
[2026-06-12 10:53:50,934.934 INFO    ] {"rstatus": true, "SectionSKU": {"skus": [], "Header": "Thank you for bearing with us :)"}, "SectionMain": {"Header": "Processing Order"}, "SectionStatus": {"UI_Header": "", "Note": "", "Header": " Your order is under process  ", "SubHeader": "Please wait while we process your order"}, "delay": 0, "voiceNote": "Please Wait", "status": "True"}
[2026-06-12 10:53:50,935.935 INFO    ] {'status': 'True', 'delay': 0, 'voiceNote': 'Please Wait', 'SectionStatus': {'Note': '', 'SubHeader': 'Please wait while we process your order', 'Header': ' Your order is under process  ', 'UI_Header': ''}, 'rstatus': True, 'SectionMain': {'Header': 'Processing Order'}, 'SectionSKU': {'skus': [], 'Header': 'Thank you for bearing with us :)'}}
[2026-06-12 10:53:50,936.936 INFO    ] *** process_order ***
[2026-06-12 10:53:50,938.938 INFO    ] publish_status: order_id=TM09202301260612105252357
[2026-06-12 10:53:50,939.939 INFO    ] [publish_status] Adding message to stream: order:TM09202301260612105252357
[2026-06-12 10:53:51,002.002 INFO    ] [publish_status] Message added to stream with ID: 1781241831009-0
[2026-06-12 10:53:51,004.004 INFO    ] Published to order:TM09202301260612105252357: {'server_status': 'doorOpened', 'order_id': 'TM09202301260612105252357', 'server_response': '{"status": "True", "rstatus": true, "voiceNote": "Door is open...", "SectionStatus": {"Note": "", "SubHeader": "You can pull the door now.", "Header": " Your order is under process  ", "UI_Header": ""}, "delay": 0, "SectionMain": {"Header": "Processing Order"}, "SectionSKU": {"skus": [], "Header": "Thank you for bearing with us :)"}}'} (ID: 1781241831009-0)
[2026-06-12 10:53:52,060.060 INFO    ] 2026-06-12 10:53:52
[2026-06-12 10:53:52,063.063 INFO    ] publish_status: order_id=TM09202301260612105252357
[2026-06-12 10:53:52,066.066 INFO    ] [publish_status] Adding message to stream: order:TM09202301260612105252357
[2026-06-12 10:53:52,143.143 INFO    ] [publish_status] Message added to stream with ID: 1781241832148-0
[2026-06-12 10:53:52,146.146 INFO    ] Published to order:TM09202301260612105252357: {'server_status': 'processOrder', 'order_id': 'TM09202301260612105252357', 'server_response': '{"status": "True", "delay": 0, "voiceNote": "Please Wait", "SectionStatus": {"Note": "", "SubHeader": "Please wait while we process your order", "Header": " Your order is under process  ", "UI_Header": ""}, "rstatus": true, "SectionMain": {"Header": "Processing Order"}, "SectionSKU": {"skus": [], "Header": "Thank you for bearing with us :)"}}', 'timestamp': '2026-06-12T05:23:52.061784Z'} (ID: 1781241832148-0)
[2026-06-12 10:53:52,288.288 INFO    ] {'server_status': 'processOrder', 'order_id': 'TM09202301260612105252357', 'server_response': {'status': 'True', 'delay': 0, 'voiceNote': 'Please Wait', 'SectionStatus': {'Note': '', 'SubHeader': 'Please wait while we process your order', 'Header': ' Your order is under process  ', 'UI_Header': ''}, 'rstatus': True, 'SectionMain': {'Header': 'Processing Order'}, 'SectionSKU': {'skus': [], 'Header': 'Thank you for bearing with us :)'}}}
[2026-06-12 10:53:52,290.290 INFO    ] 200
[2026-06-12 10:53:52,292.292 INFO    ] {"data":{"server_status":"processOrder","order_id":"TM09202301260612105252357","server_response":{"status":"true","delay":0,"voiceNote":"Please Wait","SectionStatus":{"Note":"","SubHeader":"Please wait while we process your order","Header":" Your order is under process  ","UI_Header":""},"rstatus":true,"SectionMain":{"Header":"Processing Order"},"SectionSKU":{"skus":[],"Header":"Thank you for bearing with us :)"}}},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-12 10:53:52,294.294 INFO    ] {'response': {'status': True, 'msg': 'order updated successfully', 'code': 'ORDER_EXISTS', 'data': 'order updated successfully'}, 'data': {'server_status': 'processOrder', 'order_id': 'TM09202301260612105252357', 'server_response': {'status': 'true', 'rstatus': True, 'voiceNote': 'Please Wait', 'SectionStatus': {'Note': '', 'SubHeader': 'Please wait while we process your order', 'Header': ' Your order is under process  ', 'UI_Header': ''}, 'delay': 0, 'SectionMain': {'Header': 'Processing Order'}, 'SectionSKU': {'skus': [], 'Header': 'Thank you for bearing with us :)'}}}}
[2026-06-12 10:53:52,295.295 INFO    ] 2026-06-12 10:53:52
[2026-06-12 10:53:52,297.297 INFO    ] None
[2026-06-12 10:53:52,298.298 INFO    ] Opening Door now
[2026-06-12 10:53:52,300.300 INFO    ] Opening Door now
[2026-06-12 10:53:52,301.301 INFO    ] 08e5d1063504bf393c26f0bfa436e9f9
[2026-06-12 10:53:52,303.303 INFO    ] 2026-06-12 10:53:52
[2026-06-12 10:53:52,305.305 INFO    ] playing audio file
[2026-06-12 10:53:52,315.315 INFO    ] 2026-06-12 10:53:52
[2026-06-12 10:53:52,317.317 INFO    ] 2026-06-12 10:53:52
[2026-06-12 10:53:55,563.563 INFO    ] 200
[2026-06-12 10:53:55,565.565 INFO    ] {"rstatus": false, "error": {"umessage": "In Progress", "code": 20001, "tmessage": "In Progress", "data": {}}, "SectionSKU": {"skus": [{"name": "NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g", "qty": 1}, {"name": "KITKAT Nestle 4 Finger Chocolate 38g", "qty": 1}, {"name": "Paper boat Alphonso Mango 160ml", "qty": 1}], "Header": "Pick the below items from the door"}, "SectionMain": {"Header": "Door Open"}, "SectionStatus": {"UI_Header": "DOOR 2\nIS \nOPEN \nNOW", "Note": "Please Close the door after picking up products", "Header": "Please Close Door 2", "SubHeader": "Please Pick the Products and close the door"}, "voiceNote": "Door 2 is open now", "status": "False"}
[2026-06-12 10:53:55,567.567 INFO    ] {'status': 'False', 'error': {'tmessage': 'In Progress', 'code': 20001, 'data': {}, 'umessage': 'In Progress'}, 'voiceNote': 'Door 2 is open now', 'SectionStatus': {'Note': 'Please Close the door after picking up products', 'SubHeader': 'Please Pick the Products and close the door', 'Header': 'Please Close Door 2', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW'}, 'rstatus': False, 'SectionMain': {'Header': 'Door Open'}, 'SectionSKU': {'skus': [{'name': 'NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g', 'qty': 1}, {'name': 'KITKAT Nestle 4 Finger Chocolate 38g', 'qty': 1}, {'name': 'Paper boat Alphonso Mango 160ml', 'qty': 1}], 'Header': 'Pick the below items from the door'}}
[2026-06-12 10:53:58,606.606 INFO    ] 200
[2026-06-12 10:53:58,608.608 INFO    ] {"rstatus": false, "error": {"umessage": "In Progress", "code": 20001, "tmessage": "In Progress", "data": {}}, "SectionSKU": {"skus": [{"name": "NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g", "qty": 1}, {"name": "KITKAT Nestle 4 Finger Chocolate 38g", "qty": 1}, {"name": "Paper boat Alphonso Mango 160ml", "qty": 1}], "Header": "Pick the below items from the door"}, "SectionMain": {"Header": "Door Open"}, "SectionStatus": {"UI_Header": "DOOR 2\nIS \nOPEN \nNOW", "Note": "Please Close the door after picking up products", "Header": "Please Close Door 2", "SubHeader": "Please Pick the Products and close the door"}, "voiceNote": "Please close door 2", "status": "False"}
[2026-06-12 10:53:58,609.609 INFO    ] {'status': 'False', 'error': {'tmessage': 'In Progress', 'code': 20001, 'data': {}, 'umessage': 'In Progress'}, 'voiceNote': 'Please close door 2', 'SectionStatus': {'Note': 'Please Close the door after picking up products', 'SubHeader': 'Please Pick the Products and close the door', 'Header': 'Please Close Door 2', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW'}, 'rstatus': False, 'SectionMain': {'Header': 'Door Open'}, 'SectionSKU': {'skus': [{'name': 'NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g', 'qty': 1}, {'name': 'KITKAT Nestle 4 Finger Chocolate 38g', 'qty': 1}, {'name': 'Paper boat Alphonso Mango 160ml', 'qty': 1}], 'Header': 'Pick the below items from the door'}}
[2026-06-12 10:54:01,911.911 INFO    ] 200
[2026-06-12 10:54:01,914.914 INFO    ] {"rstatus": false, "error": {"umessage": "In Progress", "code": 20001, "tmessage": "In Progress", "data": {}}, "SectionSKU": {"skus": [{"name": "NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g", "qty": 1}, {"name": "KITKAT Nestle 4 Finger Chocolate 38g", "qty": 1}, {"name": "Paper boat Alphonso Mango 160ml", "qty": 1}], "Header": "Pick the below items from the door"}, "SectionMain": {"Header": "Door Open"}, "SectionStatus": {"UI_Header": "DOOR 2\nIS \nOPEN \nNOW", "Note": "Please Close the door after picking up products", "Header": "Please Close Door 2", "SubHeader": "Please Pick the Products and close the door"}, "voiceNote": "Please close door 2", "status": "False"}
[2026-06-12 10:54:01,919.919 INFO    ] Please close door 2
[2026-06-12 10:54:01,923.923 INFO    ] Please close door 2
[2026-06-12 10:54:01,926.926 INFO    ] 758e46684c76e887a5f58d4738034bed
[2026-06-12 10:54:01,929.929 INFO    ] 2026-06-12 10:54:01
[2026-06-12 10:54:01,934.934 INFO    ] playing audio file
[2026-06-12 10:54:01,950.950 INFO    ] 2026-06-12 10:54:01
[2026-06-12 10:54:01,953.953 INFO    ] publish_status: order_id=TM09202301260612105252357
[2026-06-12 10:54:01,955.955 INFO    ] [publish_status] Adding message to stream: order:TM09202301260612105252357
[2026-06-12 10:54:02,041.041 INFO    ] [publish_status] Message added to stream with ID: 1781241842044-0
[2026-06-12 10:54:02,043.043 INFO    ] Published to order:TM09202301260612105252357: {'server_status': 'OrderStatus', 'order_id': 'TM09202301260612105252357', 'server_response': '{"status": "False", "error": {"tmessage": "In Progress", "code": 20001, "data": {}, "umessage": "In Progress"}, "voiceNote": "Please close door 2", "SectionStatus": {"Note": "Please Close the door after picking up products", "SubHeader": "Please Pick the Products and close the door", "Header": "Please Close Door 2", "UI_Header": "DOOR 2\\nIS \\nOPEN \\nNOW"}, "rstatus": false, "SectionMain": {"Header": "Door Open"}, "SectionSKU": {"skus": [{"name": "NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g", "qty": 1}, {"name": "KITKAT Nestle 4 Finger Chocolate 38g", "qty": 1}, {"name": "Paper boat Alphonso Mango 160ml", "qty": 1}], "Header": "Pick the below items from the door"}}', 'timestamp': '2026-06-12T05:24:01.951801Z'} (ID: 1781241842044-0)
[2026-06-12 10:54:02,441.441 INFO    ] {'server_status': 'OrderStatus', 'order_id': 'TM09202301260612105252357', 'server_response': {'status': 'False', 'error': {'tmessage': 'In Progress', 'code': 20001, 'data': {}, 'umessage': 'In Progress'}, 'voiceNote': 'Please close door 2', 'SectionStatus': {'Note': 'Please Close the door after picking up products', 'SubHeader': 'Please Pick the Products and close the door', 'Header': 'Please Close Door 2', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW'}, 'rstatus': False, 'SectionMain': {'Header': 'Door Open'}, 'SectionSKU': {'skus': [{'name': 'NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g', 'qty': 1}, {'name': 'KITKAT Nestle 4 Finger Chocolate 38g', 'qty': 1}, {'name': 'Paper boat Alphonso Mango 160ml', 'qty': 1}], 'Header': 'Pick the below items from the door'}}}
[2026-06-12 10:54:02,443.443 INFO    ] 200
[2026-06-12 10:54:02,445.445 INFO    ] {"data":{"server_status":"OrderStatus","order_id":"TM09202301260612105252357","server_response":{"status":"false","error":{"tmessage":"In Progress","code":20001,"data":[],"umessage":"In Progress"},"voiceNote":"Please close door 2","SectionStatus":{"Note":"Please Close the door after picking up products","SubHeader":"Please Pick the Products and close the door","Header":"Please Close Door 2","UI_Header":"DOOR 2\nIS \nOPEN \nNOW"},"rstatus":false,"SectionMain":{"Header":"Door Open"},"SectionSKU":{"skus":[{"name":"NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g","qty":1},{"name":"KITKAT Nestle 4 Finger Chocolate 38g","qty":1},{"name":"Paper boat Alphonso Mango 160ml","qty":1}],"Header":"Pick the below items from the door"}}},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-12 10:54:02,446.446 INFO    ] {'response': {'status': True, 'msg': 'order updated successfully', 'code': 'ORDER_EXISTS', 'data': 'order updated successfully'}, 'data': {'server_status': 'OrderStatus', 'order_id': 'TM09202301260612105252357', 'server_response': {'status': 'false', 'rstatus': False, 'voiceNote': 'Please close door 2', 'SectionStatus': {'Note': 'Please Close the door after picking up products', 'SubHeader': 'Please Pick the Products and close the door', 'Header': 'Please Close Door 2', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW'}, 'error': {'tmessage': 'In Progress', 'code': 20001, 'data': [], 'umessage': 'In Progress'}, 'SectionMain': {'Header': 'Door Open'}, 'SectionSKU': {'skus': [{'name': 'NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g', 'qty': 1}, {'name': 'KITKAT Nestle 4 Finger Chocolate 38g', 'qty': 1}, {'name': 'Paper boat Alphonso Mango 160ml', 'qty': 1}], 'Header': 'Pick the below items from the door'}}}}
[2026-06-12 10:54:02,448.448 INFO    ] {'status': 'False', 'error': {'tmessage': 'In Progress', 'code': 20001, 'data': {}, 'umessage': 'In Progress'}, 'voiceNote': 'Please close door 2', 'SectionStatus': {'Note': 'Please Close the door after picking up products', 'SubHeader': 'Please Pick the Products and close the door', 'Header': 'Please Close Door 2', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW'}, 'rstatus': False, 'SectionMain': {'Header': 'Door Open'}, 'SectionSKU': {'skus': [{'name': 'NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g', 'qty': 1}, {'name': 'KITKAT Nestle 4 Finger Chocolate 38g', 'qty': 1}, {'name': 'Paper boat Alphonso Mango 160ml', 'qty': 1}], 'Header': 'Pick the below items from the door'}}
[2026-06-12 10:54:05,478.478 INFO    ] 200
[2026-06-12 10:54:05,479.479 INFO    ] {"rstatus": false, "error": {"umessage": "In Progress", "code": 20001, "tmessage": "In Progress", "data": {}}, "SectionSKU": {"skus": [{"name": "NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g", "qty": 1}, {"name": "KITKAT Nestle 4 Finger Chocolate 38g", "qty": 1}, {"name": "Paper boat Alphonso Mango 160ml", "qty": 1}], "Header": "Pick the below items from the door"}, "SectionMain": {"Header": "Door Open"}, "SectionStatus": {"UI_Header": "DOOR 2\nIS \nOPEN \nNOW", "Note": "Please Close the door after picking up products", "Header": "Please Close Door 2", "SubHeader": "Please Pick the Products and close the door"}, "voiceNote": "Please close door 2", "status": "False"}
[2026-06-12 10:54:05,481.481 INFO    ] {'status': 'False', 'error': {'tmessage': 'In Progress', 'code': 20001, 'data': {}, 'umessage': 'In Progress'}, 'voiceNote': 'Please close door 2', 'SectionStatus': {'Note': 'Please Close the door after picking up products', 'SubHeader': 'Please Pick the Products and close the door', 'Header': 'Please Close Door 2', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW'}, 'rstatus': False, 'SectionMain': {'Header': 'Door Open'}, 'SectionSKU': {'skus': [{'name': 'NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g', 'qty': 1}, {'name': 'KITKAT Nestle 4 Finger Chocolate 38g', 'qty': 1}, {'name': 'Paper boat Alphonso Mango 160ml', 'qty': 1}], 'Header': 'Pick the below items from the door'}}
[2026-06-12 10:54:08,513.513 INFO    ] 200
[2026-06-12 10:54:08,515.515 INFO    ] {"rstatus": true, "SectionSKU": {"skus": [], "Header": "If you like us, tell others... else tell us"}, "SectionMain": {"Header": "Door Closed"}, "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, "voiceNote": "Transaction Completed", "status": "True"}
[2026-06-12 10:54:08,517.517 INFO    ] {'status': 'True', 'delay': 100, 'voiceNote': 'Transaction Completed', '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': ''}, 'rstatus': True, 'SectionMain': {'Header': 'Door Closed'}, 'SectionSKU': {'skus': [], 'Header': 'If you like us, tell others... else tell us'}}
[2026-06-12 10:54:08,518.518 INFO    ] 2026-06-12 10:54:08
[2026-06-12 10:54:08,520.520 INFO    ] Order Completed 
[2026-06-12 10:54:08,521.521 INFO    ] Order Completed 
[2026-06-12 10:54:08,523.523 INFO    ] 193c8a8cf3bf490ccfe0b23598544a83
[2026-06-12 10:54:08,525.525 INFO    ] 2026-06-12 10:54:08
[2026-06-12 10:54:08,526.526 INFO    ] playing audio file
[2026-06-12 10:54:08,537.537 INFO    ] 2026-06-12 10:54:08
[2026-06-12 10:54:08,539.539 INFO    ] {'status': 'True', 'delay': 100, 'voiceNote': 'Transaction Completed', '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': ''}, 'rstatus': True, 'SectionMain': {'Header': 'Door Closed'}, 'SectionSKU': {'skus': [], 'Header': 'If you like us, tell others... else tell us'}}
[2026-06-12 10:54:08,541.541 INFO    ] 2026-06-12 10:54:08
[2026-06-12 10:54:08,913.913 INFO    ] 200
[2026-06-12 10:54:08,914.914 INFO    ] {"rstatus": true, "orderId": "TM09202301260612105252357", "logic": "WBL", "anomaly": 0, "res": "True", "total_amount": 75.0, "skus": [{"door_id": "", "sku_total": 25.0, "skuid": "4500407", "mrp": "25", "tray_id": "31", "image_url": "https://images.tinymart.in/product/4500407-2060.jpg", "name": "Paper boat Alphonso Mango 160ml per peice", "qty": 1, "unit_price": "25"}, {"door_id": "", "sku_total": 20.0, "skuid": "185993", "mrp": "20", "tray_id": "36", "image_url": "https://images.tinymart.in/product/185993-3509.webp", "name": "NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g per peice", "qty": 1, "unit_price": "20"}, {"door_id": "", "sku_total": 30.0, "skuid": "186084", "mrp": "30", "tray_id": "37", "image_url": "https://images.tinymart.in/product/186084-5395.png", "name": "KITKAT Nestle 4 Finger Chocolate 38g per peice", "qty": 1, "unit_price": "30"}]}
[2026-06-12 10:54:08,916.916 INFO    ] {'skus': [{'skuid': '4500407', 'tray_id': '31', 'image_url': 'https://images.tinymart.in/product/4500407-2060.jpg', 'mrp': '25', 'door_id': '', 'name': 'Paper boat Alphonso Mango 160ml per peice', 'qty': 1, 'unit_price': '25', 'sku_total': 25.0}, {'skuid': '185993', 'tray_id': '36', 'image_url': 'https://images.tinymart.in/product/185993-3509.webp', 'mrp': '20', 'door_id': '', 'name': 'NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g per peice', 'qty': 1, 'unit_price': '20', 'sku_total': 20.0}, {'skuid': '186084', 'tray_id': '37', 'image_url': 'https://images.tinymart.in/product/186084-5395.png', 'mrp': '30', 'door_id': '', 'name': 'KITKAT Nestle 4 Finger Chocolate 38g per peice', 'qty': 1, 'unit_price': '30', 'sku_total': 30.0}], 'rstatus': True, 'logic': 'WBL', 'anomaly': 0, 'total_amount': 75.0, 'res': 'True', 'orderId': 'TM09202301260612105252357'}
[2026-06-12 10:54:08,917.917 INFO    ] {'skus': [{'skuid': '4500407', 'tray_id': '31', 'image_url': 'https://images.tinymart.in/product/4500407-2060.jpg', 'mrp': '25', 'door_id': '', 'name': 'Paper boat Alphonso Mango 160ml per peice', 'qty': 1, 'unit_price': '25', 'sku_total': 25.0}, {'skuid': '185993', 'tray_id': '36', 'image_url': 'https://images.tinymart.in/product/185993-3509.webp', 'mrp': '20', 'door_id': '', 'name': 'NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g per peice', 'qty': 1, 'unit_price': '20', 'sku_total': 20.0}, {'skuid': '186084', 'tray_id': '37', 'image_url': 'https://images.tinymart.in/product/186084-5395.png', 'mrp': '30', 'door_id': '', 'name': 'KITKAT Nestle 4 Finger Chocolate 38g per peice', 'qty': 1, 'unit_price': '30', 'sku_total': 30.0}], 'rstatus': True, 'logic': 'WBL', 'anomaly': 0, 'total_amount': 75.0, 'res': 'True', 'orderId': 'TM09202301260612105252357'}
[2026-06-12 10:54:08,919.919 INFO    ] 2026-06-12 10:54:08
[2026-06-12 10:54:08,920.920 INFO    ] 2026-06-12 10:54:08
[2026-06-12 10:54:08,921.921 INFO    ] 75
[2026-06-12 10:54:08,923.923 INFO    ] 2026-06-12 10:54:08
[2026-06-12 10:54:08,924.924 INFO    ] 2026-06-12 10:54:08
[2026-06-12 10:54:08,925.925 INFO    ]  Your Bill Amount is 75
[2026-06-12 10:54:08,927.927 INFO    ]  Your Bill Amount is 75
[2026-06-12 10:54:08,928.928 INFO    ] 13624e8d29f40a764776d3da89e75ae9
[2026-06-12 10:54:08,929.929 INFO    ] 2026-06-12 10:54:08
[2026-06-12 10:54:08,931.931 INFO    ] playing audio file
[2026-06-12 10:54:08,941.941 INFO    ] 2026-06-12 10:54:08
[2026-06-12 10:54:08,943.943 INFO    ] 2026-06-12 10:54:08
[2026-06-12 10:54:08,945.945 INFO    ] publish_status: order_id=TM09202301260612105252357
[2026-06-12 10:54:08,947.947 INFO    ] [publish_status] Adding message to stream: order:TM09202301260612105252357
[2026-06-12 10:54:09,007.007 INFO    ] [publish_status] Message added to stream with ID: 1781241849012-0
[2026-06-12 10:54:09,009.009 INFO    ] Published to order:TM09202301260612105252357: {'server_status': 'invoiceOrder', 'order_id': 'TM09202301260612105252357', 'server_response': '{"skus": [{"skuid": "4500407", "tray_id": "31", "image_url": "https://images.tinymart.in/product/4500407-2060.jpg", "mrp": "25", "door_id": "", "name": "Paper boat Alphonso Mango 160ml per peice", "qty": 1, "unit_price": "25", "sku_total": 25.0}, {"skuid": "185993", "tray_id": "36", "image_url": "https://images.tinymart.in/product/185993-3509.webp", "mrp": "20", "door_id": "", "name": "NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g per peice", "qty": 1, "unit_price": "20", "sku_total": 20.0}, {"skuid": "186084", "tray_id": "37", "image_url": "https://images.tinymart.in/product/186084-5395.png", "mrp": "30", "door_id": "", "name": "KITKAT Nestle 4 Finger Chocolate 38g per peice", "qty": 1, "unit_price": "30", "sku_total": 30.0}], "rstatus": true, "logic": "WBL", "anomaly": 0, "total_amount": 75.0, "res": "True", "orderId": "TM09202301260612105252357"}', 'timestamp': '2026-06-12T05:24:08.944301Z'} (ID: 1781241849012-0)
[2026-06-12 10:54:09,653.653 INFO    ] {'server_status': 'invoiceOrder', 'order_id': 'TM09202301260612105252357', 'server_response': {'skus': [{'skuid': '4500407', 'tray_id': '31', 'image_url': 'https://images.tinymart.in/product/4500407-2060.jpg', 'mrp': '25', 'door_id': '', 'name': 'Paper boat Alphonso Mango 160ml per peice', 'qty': 1, 'unit_price': '25', 'sku_total': 25.0}, {'skuid': '185993', 'tray_id': '36', 'image_url': 'https://images.tinymart.in/product/185993-3509.webp', 'mrp': '20', 'door_id': '', 'name': 'NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g per peice', 'qty': 1, 'unit_price': '20', 'sku_total': 20.0}, {'skuid': '186084', 'tray_id': '37', 'image_url': 'https://images.tinymart.in/product/186084-5395.png', 'mrp': '30', 'door_id': '', 'name': 'KITKAT Nestle 4 Finger Chocolate 38g per peice', 'qty': 1, 'unit_price': '30', 'sku_total': 30.0}], 'rstatus': True, 'logic': 'WBL', 'anomaly': 0, 'total_amount': 75.0, 'res': 'True', 'orderId': 'TM09202301260612105252357'}}
[2026-06-12 10:54:09,654.654 INFO    ] 200
[2026-06-12 10:54:09,655.655 INFO    ] {"data":{"server_status":"invoiceOrder","order_id":"TM09202301260612105252357","server_response":{"skus":[{"skuid":"4500407","tray_id":"31","image_url":"https:\/\/images.tinymart.in\/product\/4500407-2060.jpg","mrp":"25","door_id":"","name":"Paper boat Alphonso Mango 160ml per peice","qty":1,"unit_price":"25","sku_total":25},{"skuid":"185993","tray_id":"36","image_url":"https:\/\/images.tinymart.in\/product\/185993-3509.webp","mrp":"20","door_id":"","name":"NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g per peice","qty":1,"unit_price":"20","sku_total":20},{"skuid":"186084","tray_id":"37","image_url":"https:\/\/images.tinymart.in\/product\/186084-5395.png","mrp":"30","door_id":"","name":"KITKAT Nestle 4 Finger Chocolate 38g per peice","qty":1,"unit_price":"30","sku_total":30}],"rstatus":true,"logic":"WBL","anomaly":0,"total_amount":75,"res":"true","orderId":"TM09202301260612105252357"}},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-12 10:54:09,657.657 INFO    ] {'response': {'status': True, 'msg': 'order updated successfully', 'code': 'ORDER_EXISTS', 'data': 'order updated successfully'}, 'data': {'server_status': 'invoiceOrder', 'order_id': 'TM09202301260612105252357', 'server_response': {'total_amount': 75, 'logic': 'WBL', 'anomaly': 0, 'skus': [{'skuid': '4500407', 'tray_id': '31', 'image_url': 'https://images.tinymart.in/product/4500407-2060.jpg', 'mrp': '25', 'door_id': '', 'name': 'Paper boat Alphonso Mango 160ml per peice', 'qty': 1, 'unit_price': '25', 'sku_total': 25}, {'skuid': '185993', 'tray_id': '36', 'image_url': 'https://images.tinymart.in/product/185993-3509.webp', 'mrp': '20', 'door_id': '', 'name': 'NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g per peice', 'qty': 1, 'unit_price': '20', 'sku_total': 20}, {'skuid': '186084', 'tray_id': '37', 'image_url': 'https://images.tinymart.in/product/186084-5395.png', 'mrp': '30', 'door_id': '', 'name': 'KITKAT Nestle 4 Finger Chocolate 38g per peice', 'qty': 1, 'unit_price': '30', 'sku_total': 30}], 'res': 'true', 'orderId': 'TM09202301260612105252357', 'rstatus': True}}}
[2026-06-12 10:54:09,659.659 INFO    ] {'response': {'status': True, 'msg': 'order updated successfully', 'code': 'ORDER_EXISTS', 'data': 'order updated successfully'}, 'data': {'server_status': 'invoiceOrder', 'order_id': 'TM09202301260612105252357', 'server_response': {'total_amount': 75, 'logic': 'WBL', 'anomaly': 0, 'skus': [{'skuid': '4500407', 'tray_id': '31', 'image_url': 'https://images.tinymart.in/product/4500407-2060.jpg', 'mrp': '25', 'door_id': '', 'name': 'Paper boat Alphonso Mango 160ml per peice', 'qty': 1, 'unit_price': '25', 'sku_total': 25}, {'skuid': '185993', 'tray_id': '36', 'image_url': 'https://images.tinymart.in/product/185993-3509.webp', 'mrp': '20', 'door_id': '', 'name': 'NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g per peice', 'qty': 1, 'unit_price': '20', 'sku_total': 20}, {'skuid': '186084', 'tray_id': '37', 'image_url': 'https://images.tinymart.in/product/186084-5395.png', 'mrp': '30', 'door_id': '', 'name': 'KITKAT Nestle 4 Finger Chocolate 38g per peice', 'qty': 1, 'unit_price': '30', 'sku_total': 30}], 'res': 'true', 'orderId': 'TM09202301260612105252357', 'rstatus': True}}}
[2026-06-12 10:54:09,660.660 INFO    ] 2026-06-12 10:54:09
[2026-06-12 10:54:12,112.112 INFO    ] 200
[2026-06-12 10:54:12,114.114 INFO    ] {"tray_sync": ["TM09202301260612105252357", "TM09202301260612105252357", "TM09202301260612105252357", "TM09202301260612105252357", "TM09202301260612105252357", "TM09202301260612105252357"], "orders_data": [], "orders_synced": [], "status": false, "order_items_synced": ["TM09202301260612105252357_0", "TM09202301260612105252357_2"], "tray_synced": ["TM09202301260612105252357", "TM09202301260612105252357", "TM09202301260612105252357", "TM09202301260612105252357", "TM09202301260612105252357", "TM09202301260612105252357", "TM09202301260612105252357", "TM09202301260612105252357", "TM09202301260612105252357", "TM09202301260612105252357", "TM09202301260612105252357", "TM09202301260612105252357", "TM09202301260612105252357", "TM09202301260612105252357", "TM09202301260612105252357", "TM09202301260612105252357", "TM09202301260612105252357", "TM09202301260612105252357", "TM09202301260612105252357", "TM09202301260612105252357", "TM09202301260612105252357", "TM09202301260612105252357", "TM09202301260612105252357", "TM09202301260612105252357", "TM09202301260612105252357", "TM09202301260612105252357", "TM09202301260612105252357"], "orders_data_synced": [], "orders": [], "order_items": ["TM09202301260612105252357_1"]}
[2026-06-12 10:54:12,117.117 INFO    ] 2026-06-12 10:54:12
[2026-06-12 10:54:12,207.207 INFO    ] 200
[2026-06-12 10:54:12,208.208 INFO    ] True
[2026-06-12 10:54:12,209.209 INFO    ] cleanup_start_order_file_after_processing: order_id=TM09202301260612105252357
[2026-06-12 10:54:12,211.211 INFO    ] start order file deleted
[2026-06-12 10:54:12,213.213 INFO    ] Checking for system updates...
[2026-06-12 10:54:12,232.232 INFO    ] 200
[2026-06-12 10:54:12,233.233 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:54:12,264.264 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 10:54:12,265.265 INFO    ] No update needed
[2026-06-12 10:54:12,267.267 INFO    ] Checking for camera pi updates...
[2026-06-12 10:54:12,289.289 INFO    ] 200
[2026-06-12 10:54:12,290.290 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:54:12,315.315 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 10:54:12,350.350 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 10:54:12,351.351 INFO    ] No camera update needed
[2026-06-12 10:54:12,352.352 INFO    ] Script finished. Safe exiting...
[2026-06-12 10:54:12,354.354 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 10:54:12,357.357 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 10:54:12,359.359 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 10:54:14,392.392 INFO    ] ================================================
[2026-06-12 10:54:14,409.409 INFO    ] Launching Daemon at Fri Jun 12 10:54:14 IST 2026
[2026-06-12 10:54:14,421.421 INFO    ] ================================================
[2026-06-12 10:54:14,790.790 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 10:54:14
[2026-06-12 10:54:15,135.135 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 10:54:15,293.293 INFO    ] Initializing speech engine...
[2026-06-12 10:54:15,297.297 INFO    ] 2026-06-12 10:54:15
[2026-06-12 10:54:15,505.505 INFO    ] 2026-06-12 10:54:15
[2026-06-12 10:54:15,535.535 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 10:54:15,721.721 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 10:54:15,735.735 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 10:54:15,875.875 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 10:54:15,934.934 INFO    ] time= 12/06/2026 10:54:15
[2026-06-12 10:54:15,958.958 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 10:54:15,960.960 INFO    ] Checking for existing commands in stream...
[2026-06-12 10:54:16,031.031 INFO    ] Found 1 existing command(s) in stream
[2026-06-12 10:54:16,034.034 INFO    ] Checking historical command: ID=1781241853398-0
[2026-06-12 10:54:16,060.060 INFO    ] process_and_cleanup_command: msg_id=1781241853398-0
[2026-06-12 10:54:16,077.077 INFO    ] is_command_expired: timestamp=2026-06-12T05:24:13.293Z, expiry=30s
[2026-06-12 10:54:16,172.172 INFO    ] Command removed from stream: 1781241853398-0. returning for processing...
[2026-06-12 10:54:16,176.176 INFO    ] ***** get_valid_command
[2026-06-12 10:54:16,180.180 INFO    ] {'data': '{"request_id":"start-order-1781241853293-ffzg9l61g","orderId":"TM09202301260612105313133","is_vending":false}', 'timestamp': '2026-06-12T05:24:13.293Z', 'timeout': '10', 'command': 'start-order', 'source': 'webapp'}
[2026-06-12 10:54:16,185.185 INFO    ] ***** Parsed command data: {'request_id': 'start-order-1781241853293-ffzg9l61g', 'is_vending': False, 'orderId': 'TM09202301260612105313133'}
[2026-06-12 10:54:16,189.189 INFO    ] Handling start order...
[2026-06-12 10:54:16,193.193 INFO    ] handle_start_order_command
[2026-06-12 10:54:16,199.199 INFO    ] _send_start_order_success: request_id=start-order-1781241853293-ffzg9l61g, order_id=TM09202301260612105313133
[2026-06-12 10:54:16,203.203 INFO    ] [_send_start_order_success] Adding message to stream: machine:TM09202301
[2026-06-12 10:54:16,275.275 INFO    ] [_send_start_order_success] Message added to stream with ID: 1781241856270-0
[2026-06-12 10:54:16,280.280 INFO    ] ✅ Start-order command succeeded - order locked, waiting for process-order command
[2026-06-12 10:54:16,286.286 INFO    ] Checking for system updates...
[2026-06-12 10:54:16,372.372 INFO    ] 200
[2026-06-12 10:54:16,375.375 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:54:16,429.429 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 10:54:16,432.432 INFO    ] No update needed
[2026-06-12 10:54:16,435.435 INFO    ] Checking for camera pi updates...
[2026-06-12 10:54:16,510.510 INFO    ] 200
[2026-06-12 10:54:16,513.513 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:54:16,542.542 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 10:54:16,584.584 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 10:54:16,587.587 INFO    ] No camera update needed
[2026-06-12 10:54:16,589.589 INFO    ] Script finished. Safe exiting...
[2026-06-12 10:54:16,592.592 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 10:54:16,599.599 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 10:54:16,605.605 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-06-12 10:54:16,613.613 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 10:54:18,707.707 INFO    ] ================================================
[2026-06-12 10:54:18,723.723 INFO    ] Launching Daemon at Fri Jun 12 10:54:18 IST 2026
[2026-06-12 10:54:18,734.734 INFO    ] ================================================
[2026-06-12 10:54:19,086.086 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 10:54:19
[2026-06-12 10:54:19,399.399 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 10:54:19,528.528 INFO    ] Initializing speech engine...
[2026-06-12 10:54:19,533.533 INFO    ] 2026-06-12 10:54:19
[2026-06-12 10:54:19,752.752 INFO    ] 2026-06-12 10:54:19
[2026-06-12 10:54:19,781.781 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 10:54:19,970.970 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 10:54:19,973.973 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 10:54:20,112.112 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 10:54:20,170.170 INFO    ] time= 12/06/2026 10:54:20
[2026-06-12 10:54:20,202.202 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 10:54:20,204.204 INFO    ] Checking for existing commands in stream...
[2026-06-12 10:54:20,278.278 INFO    ] Found 2 existing command(s) in stream
[2026-06-12 10:54:20,280.280 INFO    ] Checking historical command: ID=1781241856270-0
[2026-06-12 10:54:20,306.306 INFO    ] process_and_cleanup_command: msg_id=1781241856270-0
[2026-06-12 10:54:20,312.312 INFO    ] is_command_expired: timestamp=2026-06-12T05:24:16.201131Z, expiry=30s
[2026-06-12 10:54:20,417.417 INFO    ] Command removed from stream: 1781241856270-0. returning for processing...
[2026-06-12 10:54:20,421.421 INFO    ] ***** get_valid_command
[2026-06-12 10:54:20,423.423 INFO    ] {'status': 'success', 'metadata_request_id': 'start-order-1781241853293-ffzg9l61g', 'imei': 'TM09202301', 'metadata_order_id': 'TM09202301260612105313133', 'message': 'start-order success', 'timestamp': '2026-06-12T05:24:16.201131Z', 'message_type': 'command_response'}
[2026-06-12 10:54:20,428.428 INFO    ] Checking historical command: ID=1781241857630-0
[2026-06-12 10:54:20,431.431 INFO    ] process_and_cleanup_command: msg_id=1781241857630-0
[2026-06-12 10:54:20,435.435 INFO    ] is_command_expired: timestamp=2026-06-12T05:24:17.458Z, expiry=30s
[2026-06-12 10:54:20,495.495 INFO    ] Command removed from stream: 1781241857630-0. returning for processing...
[2026-06-12 10:54:20,497.497 INFO    ] ***** get_valid_command
[2026-06-12 10:54:20,500.500 INFO    ] {'timeout': '60', 'timestamp': '2026-06-12T05:24:17.458Z', 'data': '{"request_id":"process-order-1781241857458-qkxvmjzrq","orderId":"TM09202301260612105313133","is_vending":false,"accessCode":"75561560"}', 'command': 'process-order', 'source': 'webapp'}
[2026-06-12 10:54:20,503.503 INFO    ] ***** Parsed command data: {'orderId': 'TM09202301260612105313133', 'accessCode': '75561560', 'request_id': 'process-order-1781241857458-qkxvmjzrq', 'is_vending': False}
[2026-06-12 10:54:20,507.507 INFO    ] Handling process order...
[2026-06-12 10:54:20,509.509 INFO    ] Processing process-order command...
[2026-06-12 10:54:20,514.514 INFO    ] 🔍 Lock file Order ID: TM09202301260612105313133, TS: 2026-06-12 10:54:16
[2026-06-12 10:54:20,524.524 INFO    ] ✅ Order lock valid for TM09202301260612105313133
[2026-06-12 10:54:20,528.528 INFO    ] Received access code in process-order, skipping PHP API call
[2026-06-12 10:54:20,532.532 INFO    ] processing access code 75561560 for order TM09202301260612105313133
[2026-06-12 10:54:20,536.536 INFO    ] 🔍 Lock file Order ID: TM09202301260612105313133, TS: 2026-06-12 10:54:16
[2026-06-12 10:54:20,540.540 INFO    ] ✅ Order lock valid for TM09202301260612105313133
[2026-06-12 10:54:20,544.544 INFO    ] 2026-06-12 10:54:20
[2026-06-12 10:54:20,573.573 INFO    ] 200
[2026-06-12 10:54:20,576.576 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:54:20,580.580 INFO    ] 75561560
[2026-06-12 10:54:20,584.584 INFO    ] 2026-06-12 10:54:20
[2026-06-12 10:54:20,588.588 INFO    ] session id :139404475
[2026-06-12 10:54:20,594.594 INFO    ] http://localhost:5000/v2/getOrderByAccessCode?access_code=75561560&imei=TM09202301&session_id=139404475
[2026-06-12 10:54:21,323.323 INFO    ] 200
[2026-06-12 10:54:21,354.354 INFO    ] {"rstatus": true, "msg": "Order Data", "status": true, "data": {"mobile": "7702591387", "order_id": "TM09202301260612105313133", "bill_amount": "30", "invoice_bill": "30", "access_code": "75561560", "proposed_sku_json": [{"door_id": "2", "name": "KITKAT Nestle 4 Finger Chocolate 38g", "tray_id": "37", "unit_price": 30, "offer_id": "", "qty": 1, "image_url": "https://images.tinymart.in/product/186084-5395.png", "offer_desc": "", "sku_total": 30, "mrp": "30", "skuid": "186084"}]}}
[2026-06-12 10:54:21,361.361 INFO    ] 30
[2026-06-12 10:54:21,371.371 INFO    ] TM09202301260612105313133
[2026-06-12 10:54:21,376.376 INFO    ] 7702591387
[2026-06-12 10:54:21,384.384 INFO    ] 2026-06-12 10:54:21
[2026-06-12 10:54:21,390.390 INFO    ] Door Opening for user mobile ending with  one three eight seven 
[2026-06-12 10:54:21,395.395 INFO    ] Door Opening for user mobile ending with  one three eight seven 
[2026-06-12 10:54:21,397.397 INFO    ] 916150d09b9c507fe306dee5a587ccb8
[2026-06-12 10:54:21,398.398 INFO    ] 2026-06-12 10:54:21
[2026-06-12 10:54:21,399.399 INFO    ] creating audio file
[2026-06-12 10:54:21,435.435 INFO    ] Calling gTTS API with 60s timeout...
[2026-06-12 10:54:22,066.066 INFO    ] gTTS API call completed successfully
[2026-06-12 10:54:22,771.771 INFO    ] 2026-06-12 10:54:22
[2026-06-12 10:54:22,773.773 INFO    ] playing audio file
[2026-06-12 10:54:22,783.783 INFO    ] 2026-06-12 10:54:22
[2026-06-12 10:54:22,785.785 INFO    ] 2026-06-12 10:54:22
[2026-06-12 10:54:22,787.787 INFO    ] publish_status: order_id=TM09202301260612105313133
[2026-06-12 10:54:22,789.789 INFO    ] [publish_status] Adding message to stream: order:TM09202301260612105313133
[2026-06-12 10:54:22,867.867 INFO    ] [publish_status] Message added to stream with ID: 1781241862869-0
[2026-06-12 10:54:22,868.868 INFO    ] Published to order:TM09202301260612105313133: {'order_id': 'TM09202301260612105313133', 'server_response': '{"rstatus": true, "msg": "Order Data", "data": {"mobile": "7702591387", "invoice_bill": "30", "access_code": "75561560", "order_id": "TM09202301260612105313133", "bill_amount": "30", "proposed_sku_json": [{"sku_total": 30, "door_id": "2", "qty": 1, "image_url": "https://images.tinymart.in/product/186084-5395.png", "mrp": "30", "skuid": "186084", "name": "KITKAT Nestle 4 Finger Chocolate 38g", "unit_price": 30, "offer_id": "", "offer_desc": "", "tray_id": "37"}]}, "status": true}', 'timestamp': '2026-06-12T05:24:22.786208Z', 'server_status': 'order-started'} (ID: 1781241862869-0)
[2026-06-12 10:54:23,209.209 INFO    ] {'order_id': 'TM09202301260612105313133', 'server_response': {'rstatus': True, 'msg': 'Order Data', 'data': {'mobile': '7702591387', 'invoice_bill': '30', 'access_code': '75561560', 'order_id': 'TM09202301260612105313133', 'bill_amount': '30', 'proposed_sku_json': [{'sku_total': 30, 'door_id': '2', 'qty': 1, 'image_url': 'https://images.tinymart.in/product/186084-5395.png', 'mrp': '30', 'skuid': '186084', 'name': 'KITKAT Nestle 4 Finger Chocolate 38g', 'unit_price': 30, 'offer_id': '', 'offer_desc': '', 'tray_id': '37'}]}, 'status': True}, 'server_status': 'order-started'}
[2026-06-12 10:54:23,212.212 INFO    ] 200
[2026-06-12 10:54:23,214.214 INFO    ] {"data":{"order_id":"TM09202301260612105313133","server_response":{"rstatus":true,"msg":"Order Data","data":{"mobile":"7702591387","invoice_bill":"30","access_code":"75561560","order_id":"TM09202301260612105313133","bill_amount":"30","proposed_sku_json":[{"sku_total":30,"door_id":"2","qty":1,"image_url":"https:\/\/images.tinymart.in\/product\/186084-5395.png","mrp":"30","skuid":"186084","name":"KITKAT Nestle 4 Finger Chocolate 38g","unit_price":30,"offer_id":"","offer_desc":"","tray_id":"37"}]},"status":true},"server_status":"order-started"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-12 10:54:23,217.217 INFO    ] {'response': {'msg': 'order updated successfully', 'data': 'order updated successfully', 'status': True, 'code': 'ORDER_EXISTS'}, 'data': {'order_id': 'TM09202301260612105313133', 'server_status': 'order-started', 'server_response': {'rstatus': True, 'msg': 'Order Data', 'data': {'mobile': '7702591387', 'invoice_bill': '30', 'access_code': '75561560', 'order_id': 'TM09202301260612105313133', 'bill_amount': '30', 'proposed_sku_json': [{'sku_total': 30, 'door_id': '2', 'unit_price': 30, 'mrp': '30', 'tray_id': '37', 'name': 'KITKAT Nestle 4 Finger Chocolate 38g', 'image_url': 'https://images.tinymart.in/product/186084-5395.png', 'qty': 1, 'skuid': '186084', 'offer_desc': '', 'offer_id': ''}]}, 'status': True}}}
[2026-06-12 10:54:23,220.220 INFO    ] 2026-06-12 10:54:23
[2026-06-12 10:54:23,272.272 INFO    ] 200
[2026-06-12 10:54:23,275.275 INFO    ] True
[2026-06-12 10:54:23,361.361 INFO    ] 200
[2026-06-12 10:54:23,363.363 INFO    ] {"rstatus": false, "error": {"umessage": "In Progress", "code": 20001, "tmessage": "In Progress", "data": {}}, "SectionSKU": {"skus": [], "Header": "Thank you for bearing with us :)"}, "SectionMain": {"Header": "Processing Order"}, "SectionStatus": {"UI_Header": "", "Note": "", "Header": " Your order is under process  ", "SubHeader": "Please wait while we process your order"}, "voiceNote": "Please Wait", "status": "False"}
[2026-06-12 10:54:23,366.366 INFO    ] {'SectionMain': {'Header': 'Processing Order'}, 'error': {'umessage': 'In Progress', 'data': {}, 'tmessage': 'In Progress', 'code': 20001}, 'voiceNote': 'Please Wait', 'rstatus': False, 'SectionSKU': {'Header': 'Thank you for bearing with us :)', 'skus': []}, 'SectionStatus': {'SubHeader': 'Please wait while we process your order', 'Note': '', 'Header': ' Your order is under process  ', 'UI_Header': ''}, 'status': 'False'}
[2026-06-12 10:54:23,367.367 INFO    ] *** process_order ***
[2026-06-12 10:54:24,531.531 INFO    ] 200
[2026-06-12 10:54:24,533.533 INFO    ] {"rstatus": true, "SectionSKU": {"skus": [], "Header": "Thank you for bearing with us :)"}, "SectionMain": {"Header": "Processing Order"}, "SectionStatus": {"UI_Header": "", "Note": "", "Header": " Your order is under process  ", "SubHeader": "Please wait while we process your order"}, "delay": 0, "voiceNote": "Please Wait", "status": "True"}
[2026-06-12 10:54:24,535.535 INFO    ] {'SectionMain': {'Header': 'Processing Order'}, 'delay': 0, 'voiceNote': 'Please Wait', 'rstatus': True, 'SectionSKU': {'Header': 'Thank you for bearing with us :)', 'skus': []}, 'SectionStatus': {'SubHeader': 'Please wait while we process your order', 'Note': '', 'Header': ' Your order is under process  ', 'UI_Header': ''}, 'status': 'True'}
[2026-06-12 10:54:24,536.536 INFO    ] *** process_order ***
[2026-06-12 10:54:24,538.538 INFO    ] publish_status: order_id=TM09202301260612105313133
[2026-06-12 10:54:24,539.539 INFO    ] [publish_status] Adding message to stream: order:TM09202301260612105313133
[2026-06-12 10:54:24,615.615 INFO    ] [publish_status] Message added to stream with ID: 1781241864618-0
[2026-06-12 10:54:24,616.616 INFO    ] Published to order:TM09202301260612105313133: {'order_id': 'TM09202301260612105313133', 'server_response': '{"SectionMain": {"Header": "Processing Order"}, "delay": 0, "voiceNote": "Door is open...", "rstatus": true, "SectionSKU": {"Header": "Thank you for bearing with us :)", "skus": []}, "SectionStatus": {"SubHeader": "You can pull the door now.", "Note": "", "Header": " Your order is under process  ", "UI_Header": ""}, "status": "True"}', 'server_status': 'doorOpened'} (ID: 1781241864618-0)
[2026-06-12 10:54:25,666.666 INFO    ] 2026-06-12 10:54:25
[2026-06-12 10:54:25,671.671 INFO    ] publish_status: order_id=TM09202301260612105313133
[2026-06-12 10:54:25,674.674 INFO    ] [publish_status] Adding message to stream: order:TM09202301260612105313133
[2026-06-12 10:54:25,757.757 INFO    ] [publish_status] Message added to stream with ID: 1781241865759-0
[2026-06-12 10:54:25,760.760 INFO    ] Published to order:TM09202301260612105313133: {'order_id': 'TM09202301260612105313133', 'server_response': '{"SectionMain": {"Header": "Processing Order"}, "delay": 0, "voiceNote": "Please Wait", "rstatus": true, "SectionSKU": {"Header": "Thank you for bearing with us :)", "skus": []}, "SectionStatus": {"SubHeader": "Please wait while we process your order", "Note": "", "Header": " Your order is under process  ", "UI_Header": ""}, "status": "True"}', 'timestamp': '2026-06-12T05:24:25.667987Z', 'server_status': 'processOrder'} (ID: 1781241865759-0)
[2026-06-12 10:54:25,881.881 INFO    ] {'order_id': 'TM09202301260612105313133', 'server_response': {'SectionMain': {'Header': 'Processing Order'}, 'delay': 0, 'voiceNote': 'Please Wait', 'rstatus': True, 'SectionSKU': {'Header': 'Thank you for bearing with us :)', 'skus': []}, 'SectionStatus': {'SubHeader': 'Please wait while we process your order', 'Note': '', 'Header': ' Your order is under process  ', 'UI_Header': ''}, 'status': 'True'}, 'server_status': 'processOrder'}
[2026-06-12 10:54:25,882.882 INFO    ] 200
[2026-06-12 10:54:25,884.884 INFO    ] {"data":{"order_id":"TM09202301260612105313133","server_response":{"SectionMain":{"Header":"Processing Order"},"delay":0,"voiceNote":"Please Wait","rstatus":true,"SectionSKU":{"Header":"Thank you for bearing with us :)","skus":[]},"SectionStatus":{"SubHeader":"Please wait while we process your order","Note":"","Header":" Your order is under process  ","UI_Header":""},"status":"true"},"server_status":"processOrder"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-12 10:54:25,885.885 INFO    ] {'response': {'msg': 'order updated successfully', 'data': 'order updated successfully', 'status': True, 'code': 'ORDER_EXISTS'}, 'data': {'order_id': 'TM09202301260612105313133', 'server_status': 'processOrder', 'server_response': {'SectionMain': {'Header': 'Processing Order'}, 'delay': 0, 'voiceNote': 'Please Wait', 'rstatus': True, 'SectionSKU': {'Header': 'Thank you for bearing with us :)', 'skus': []}, 'SectionStatus': {'SubHeader': 'Please wait while we process your order', 'Note': '', 'Header': ' Your order is under process  ', 'UI_Header': ''}, 'status': 'true'}}}
[2026-06-12 10:54:25,887.887 INFO    ] 2026-06-12 10:54:25
[2026-06-12 10:54:25,889.889 INFO    ] None
[2026-06-12 10:54:25,891.891 INFO    ] Opening Door now
[2026-06-12 10:54:25,892.892 INFO    ] Opening Door now
[2026-06-12 10:54:25,893.893 INFO    ] 08e5d1063504bf393c26f0bfa436e9f9
[2026-06-12 10:54:25,895.895 INFO    ] 2026-06-12 10:54:25
[2026-06-12 10:54:25,896.896 INFO    ] playing audio file
[2026-06-12 10:54:25,907.907 INFO    ] 2026-06-12 10:54:25
[2026-06-12 10:54:25,909.909 INFO    ] 2026-06-12 10:54:25
[2026-06-12 10:54:28,999.999 INFO    ] 200
[2026-06-12 10:54:29,001.001 INFO    ] {"rstatus": false, "error": {"umessage": "In Progress", "code": 20001, "tmessage": "In Progress", "data": {}}, "SectionSKU": {"skus": [{"name": "KITKAT Nestle 4 Finger Chocolate 38g", "qty": 1}], "Header": "Pick the below items from the door"}, "SectionMain": {"Header": "Door Open"}, "SectionStatus": {"UI_Header": "DOOR 2\nIS \nOPEN \nNOW", "Note": "Please Close the door after picking up products", "Header": "Please Close Door 2", "SubHeader": "Please Pick the Products and close the door"}, "voiceNote": "Door 2 is open now", "status": "False"}
[2026-06-12 10:54:29,003.003 INFO    ] {'SectionMain': {'Header': 'Door Open'}, 'error': {'umessage': 'In Progress', 'data': {}, 'tmessage': 'In Progress', 'code': 20001}, 'voiceNote': 'Door 2 is open now', 'rstatus': False, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'KITKAT Nestle 4 Finger Chocolate 38g', 'qty': 1}]}, 'SectionStatus': {'SubHeader': 'Please Pick the Products and close the door', 'Note': 'Please Close the door after picking up products', 'Header': 'Please Close Door 2', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW'}, 'status': 'False'}
[2026-06-12 10:54:32,044.044 INFO    ] 200
[2026-06-12 10:54:32,046.046 INFO    ] {"rstatus": false, "error": {"umessage": "In Progress", "code": 20001, "tmessage": "In Progress", "data": {}}, "SectionSKU": {"skus": [{"name": "KITKAT Nestle 4 Finger Chocolate 38g", "qty": 1}], "Header": "Pick the below items from the door"}, "SectionMain": {"Header": "Door Open"}, "SectionStatus": {"UI_Header": "DOOR 2\nIS \nOPEN \nNOW", "Note": "Please Close the door after picking up products", "Header": "Please Close Door 2", "SubHeader": "Please Pick the Products and close the door"}, "voiceNote": "Please close door 2", "status": "False"}
[2026-06-12 10:54:32,048.048 INFO    ] {'SectionMain': {'Header': 'Door Open'}, 'error': {'umessage': 'In Progress', 'data': {}, 'tmessage': 'In Progress', 'code': 20001}, 'voiceNote': 'Please close door 2', 'rstatus': False, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'KITKAT Nestle 4 Finger Chocolate 38g', 'qty': 1}]}, 'SectionStatus': {'SubHeader': 'Please Pick the Products and close the door', 'Note': 'Please Close the door after picking up products', 'Header': 'Please Close Door 2', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW'}, 'status': 'False'}
[2026-06-12 10:54:35,255.255 INFO    ] 200
[2026-06-12 10:54:35,257.257 INFO    ] {"rstatus": false, "error": {"umessage": "In Progress", "code": 20001, "tmessage": "In Progress", "data": {}}, "SectionSKU": {"skus": [{"name": "KITKAT Nestle 4 Finger Chocolate 38g", "qty": 1}], "Header": "Pick the below items from the door"}, "SectionMain": {"Header": "Door Open"}, "SectionStatus": {"UI_Header": "DOOR 2\nIS \nOPEN \nNOW", "Note": "Please Close the door after picking up products", "Header": "Please Close Door 2", "SubHeader": "Please Pick the Products and close the door"}, "voiceNote": "Please close door 2", "status": "False"}
[2026-06-12 10:54:35,259.259 INFO    ] Please close door 2
[2026-06-12 10:54:35,261.261 INFO    ] Please close door 2
[2026-06-12 10:54:35,262.262 INFO    ] 758e46684c76e887a5f58d4738034bed
[2026-06-12 10:54:35,264.264 INFO    ] 2026-06-12 10:54:35
[2026-06-12 10:54:35,266.266 INFO    ] playing audio file
[2026-06-12 10:54:35,278.278 INFO    ] 2026-06-12 10:54:35
[2026-06-12 10:54:35,280.280 INFO    ] publish_status: order_id=TM09202301260612105313133
[2026-06-12 10:54:35,283.283 INFO    ] [publish_status] Adding message to stream: order:TM09202301260612105313133
[2026-06-12 10:54:35,369.369 INFO    ] [publish_status] Message added to stream with ID: 1781241875370-0
[2026-06-12 10:54:35,371.371 INFO    ] Published to order:TM09202301260612105313133: {'order_id': 'TM09202301260612105313133', 'server_response': '{"SectionMain": {"Header": "Door Open"}, "error": {"umessage": "In Progress", "data": {}, "tmessage": "In Progress", "code": 20001}, "voiceNote": "Please close door 2", "rstatus": false, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"name": "KITKAT Nestle 4 Finger Chocolate 38g", "qty": 1}]}, "SectionStatus": {"SubHeader": "Please Pick the Products and close the door", "Note": "Please Close the door after picking up products", "Header": "Please Close Door 2", "UI_Header": "DOOR 2\\nIS \\nOPEN \\nNOW"}, "status": "False"}', 'timestamp': '2026-06-12T05:24:35.279195Z', 'server_status': 'OrderStatus'} (ID: 1781241875370-0)
[2026-06-12 10:54:35,777.777 INFO    ] {'order_id': 'TM09202301260612105313133', 'server_response': {'SectionMain': {'Header': 'Door Open'}, 'error': {'umessage': 'In Progress', 'data': {}, 'tmessage': 'In Progress', 'code': 20001}, 'voiceNote': 'Please close door 2', 'rstatus': False, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'KITKAT Nestle 4 Finger Chocolate 38g', 'qty': 1}]}, 'SectionStatus': {'SubHeader': 'Please Pick the Products and close the door', 'Note': 'Please Close the door after picking up products', 'Header': 'Please Close Door 2', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW'}, 'status': 'False'}, 'server_status': 'OrderStatus'}
[2026-06-12 10:54:35,779.779 INFO    ] 200
[2026-06-12 10:54:35,780.780 INFO    ] {"data":{"order_id":"TM09202301260612105313133","server_response":{"SectionMain":{"Header":"Door Open"},"error":{"umessage":"In Progress","data":[],"tmessage":"In Progress","code":20001},"voiceNote":"Please close door 2","rstatus":false,"SectionSKU":{"Header":"Pick the below items from the door","skus":[{"name":"KITKAT Nestle 4 Finger Chocolate 38g","qty":1}]},"SectionStatus":{"SubHeader":"Please Pick the Products and close the door","Note":"Please Close the door after picking up products","Header":"Please Close Door 2","UI_Header":"DOOR 2\nIS \nOPEN \nNOW"},"status":"false"},"server_status":"OrderStatus"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-12 10:54:35,782.782 INFO    ] {'response': {'msg': 'order updated successfully', 'data': 'order updated successfully', 'status': True, 'code': 'ORDER_EXISTS'}, 'data': {'order_id': 'TM09202301260612105313133', 'server_status': 'OrderStatus', 'server_response': {'SectionMain': {'Header': 'Door Open'}, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'KITKAT Nestle 4 Finger Chocolate 38g', 'qty': 1}]}, 'voiceNote': 'Please close door 2', 'rstatus': False, 'error': {'umessage': 'In Progress', 'data': [], 'tmessage': 'In Progress', 'code': 20001}, 'SectionStatus': {'SubHeader': 'Please Pick the Products and close the door', 'Note': 'Please Close the door after picking up products', 'Header': 'Please Close Door 2', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW'}, 'status': 'false'}}}
[2026-06-12 10:54:35,784.784 INFO    ] {'SectionMain': {'Header': 'Door Open'}, 'error': {'umessage': 'In Progress', 'data': {}, 'tmessage': 'In Progress', 'code': 20001}, 'voiceNote': 'Please close door 2', 'rstatus': False, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'KITKAT Nestle 4 Finger Chocolate 38g', 'qty': 1}]}, 'SectionStatus': {'SubHeader': 'Please Pick the Products and close the door', 'Note': 'Please Close the door after picking up products', 'Header': 'Please Close Door 2', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW'}, 'status': 'False'}
[2026-06-12 10:54:38,823.823 INFO    ] 200
[2026-06-12 10:54:38,824.824 INFO    ] {"rstatus": true, "SectionSKU": {"skus": [], "Header": "If you like us, tell others... else tell us"}, "SectionMain": {"Header": "Door Closed"}, "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, "voiceNote": "Transaction Completed", "status": "True"}
[2026-06-12 10:54:38,827.827 INFO    ] {'SectionMain': {'Header': 'Door Closed'}, 'delay': 100, 'voiceNote': 'Transaction Completed', 'rstatus': True, 'SectionSKU': {'Header': 'If you like us, tell others... else tell us', 'skus': []}, 'SectionStatus': {'SubHeader': 'Please wait for invoice to generate', 'Note': 'If any due amount, clear at https://go.tinymart.in', 'Header': ' Order is complete ', 'UI_Header': ''}, 'status': 'True'}
[2026-06-12 10:54:38,829.829 INFO    ] 2026-06-12 10:54:38
[2026-06-12 10:54:38,831.831 INFO    ] Order Completed 
[2026-06-12 10:54:38,832.832 INFO    ] Order Completed 
[2026-06-12 10:54:38,834.834 INFO    ] 193c8a8cf3bf490ccfe0b23598544a83
[2026-06-12 10:54:38,836.836 INFO    ] 2026-06-12 10:54:38
[2026-06-12 10:54:38,838.838 INFO    ] playing audio file
[2026-06-12 10:54:38,850.850 INFO    ] 2026-06-12 10:54:38
[2026-06-12 10:54:38,852.852 INFO    ] {'SectionMain': {'Header': 'Door Closed'}, 'delay': 100, 'voiceNote': 'Transaction Completed', 'rstatus': True, 'SectionSKU': {'Header': 'If you like us, tell others... else tell us', 'skus': []}, 'SectionStatus': {'SubHeader': 'Please wait for invoice to generate', 'Note': 'If any due amount, clear at https://go.tinymart.in', 'Header': ' Order is complete ', 'UI_Header': ''}, 'status': 'True'}
[2026-06-12 10:54:38,855.855 INFO    ] 2026-06-12 10:54:38
[2026-06-12 10:54:39,819.819 INFO    ] 200
[2026-06-12 10:54:39,821.821 INFO    ] {"rstatus": true, "orderId": "TM09202301260612105313133", "logic": "WBL", "anomaly": 0, "res": "True", "total_amount": 30.0, "skus": [{"door_id": "", "sku_total": 30.0, "skuid": "186084", "mrp": "30", "tray_id": "37", "image_url": "https://images.tinymart.in/product/186084-5395.png", "name": "KITKAT Nestle 4 Finger Chocolate 38g per peice", "qty": 1, "unit_price": "30"}]}
[2026-06-12 10:54:39,823.823 INFO    ] {'anomaly': 0, 'logic': 'WBL', 'rstatus': True, 'orderId': 'TM09202301260612105313133', 'total_amount': 30.0, 'res': 'True', 'skus': [{'sku_total': 30.0, 'door_id': '', 'unit_price': '30', 'mrp': '30', 'name': 'KITKAT Nestle 4 Finger Chocolate 38g per peice', 'image_url': 'https://images.tinymart.in/product/186084-5395.png', 'qty': 1, 'skuid': '186084', 'tray_id': '37'}]}
[2026-06-12 10:54:39,825.825 INFO    ] {'anomaly': 0, 'logic': 'WBL', 'rstatus': True, 'orderId': 'TM09202301260612105313133', 'total_amount': 30.0, 'res': 'True', 'skus': [{'sku_total': 30.0, 'door_id': '', 'unit_price': '30', 'mrp': '30', 'name': 'KITKAT Nestle 4 Finger Chocolate 38g per peice', 'image_url': 'https://images.tinymart.in/product/186084-5395.png', 'qty': 1, 'skuid': '186084', 'tray_id': '37'}]}
[2026-06-12 10:54:39,827.827 INFO    ] 2026-06-12 10:54:39
[2026-06-12 10:54:39,828.828 INFO    ] 2026-06-12 10:54:39
[2026-06-12 10:54:39,830.830 INFO    ] 30
[2026-06-12 10:54:39,831.831 INFO    ] 2026-06-12 10:54:39
[2026-06-12 10:54:39,833.833 INFO    ] 2026-06-12 10:54:39
[2026-06-12 10:54:39,834.834 INFO    ]  Your Bill Amount is 30
[2026-06-12 10:54:39,836.836 INFO    ]  Your Bill Amount is 30
[2026-06-12 10:54:39,837.837 INFO    ] 83d7bc98008395bac4df4c2fc2d248eb
[2026-06-12 10:54:39,839.839 INFO    ] 2026-06-12 10:54:39
[2026-06-12 10:54:39,840.840 INFO    ] playing audio file
[2026-06-12 10:54:39,851.851 INFO    ] 2026-06-12 10:54:39
[2026-06-12 10:54:39,853.853 INFO    ] 2026-06-12 10:54:39
[2026-06-12 10:54:39,856.856 INFO    ] publish_status: order_id=TM09202301260612105313133
[2026-06-12 10:54:39,857.857 INFO    ] [publish_status] Adding message to stream: order:TM09202301260612105313133
[2026-06-12 10:54:39,905.905 INFO    ] [publish_status] Message added to stream with ID: 1781241879907-0
[2026-06-12 10:54:39,907.907 INFO    ] Published to order:TM09202301260612105313133: {'order_id': 'TM09202301260612105313133', 'server_response': '{"anomaly": 0, "logic": "WBL", "rstatus": true, "orderId": "TM09202301260612105313133", "total_amount": 30.0, "res": "True", "skus": [{"sku_total": 30.0, "door_id": "", "unit_price": "30", "mrp": "30", "name": "KITKAT Nestle 4 Finger Chocolate 38g per peice", "image_url": "https://images.tinymart.in/product/186084-5395.png", "qty": 1, "skuid": "186084", "tray_id": "37"}]}', 'timestamp': '2026-06-12T05:24:39.854807Z', 'server_status': 'invoiceOrder'} (ID: 1781241879907-0)
[2026-06-12 10:54:45,664.664 INFO    ] {'order_id': 'TM09202301260612105313133', 'server_response': {'anomaly': 0, 'logic': 'WBL', 'rstatus': True, 'orderId': 'TM09202301260612105313133', 'total_amount': 30.0, 'res': 'True', 'skus': [{'sku_total': 30.0, 'door_id': '', 'unit_price': '30', 'mrp': '30', 'name': 'KITKAT Nestle 4 Finger Chocolate 38g per peice', 'image_url': 'https://images.tinymart.in/product/186084-5395.png', 'qty': 1, 'skuid': '186084', 'tray_id': '37'}]}, 'server_status': 'invoiceOrder'}
[2026-06-12 10:54:45,666.666 INFO    ] 200
[2026-06-12 10:54:45,667.667 INFO    ] {"data":{"order_id":"TM09202301260612105313133","server_response":{"anomaly":0,"logic":"WBL","rstatus":true,"orderId":"TM09202301260612105313133","total_amount":30,"res":"true","skus":[{"sku_total":30,"door_id":"","unit_price":"30","mrp":"30","name":"KITKAT Nestle 4 Finger Chocolate 38g per peice","image_url":"https:\/\/images.tinymart.in\/product\/186084-5395.png","qty":1,"skuid":"186084","tray_id":"37"}]},"server_status":"invoiceOrder"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-12 10:54:45,669.669 INFO    ] {'response': {'msg': 'order updated successfully', 'data': 'order updated successfully', 'status': True, 'code': 'ORDER_EXISTS'}, 'data': {'order_id': 'TM09202301260612105313133', 'server_status': 'invoiceOrder', 'server_response': {'anomaly': 0, 'logic': 'WBL', 'rstatus': True, 'orderId': 'TM09202301260612105313133', 'total_amount': 30, 'res': 'true', 'skus': [{'sku_total': 30, 'door_id': '', 'qty': 1, 'mrp': '30', 'tray_id': '37', 'name': 'KITKAT Nestle 4 Finger Chocolate 38g per peice', 'unit_price': '30', 'skuid': '186084', 'image_url': 'https://images.tinymart.in/product/186084-5395.png'}]}}}
[2026-06-12 10:54:45,671.671 INFO    ] {'response': {'msg': 'order updated successfully', 'data': 'order updated successfully', 'status': True, 'code': 'ORDER_EXISTS'}, 'data': {'order_id': 'TM09202301260612105313133', 'server_status': 'invoiceOrder', 'server_response': {'anomaly': 0, 'logic': 'WBL', 'rstatus': True, 'orderId': 'TM09202301260612105313133', 'total_amount': 30, 'res': 'true', 'skus': [{'sku_total': 30, 'door_id': '', 'qty': 1, 'mrp': '30', 'tray_id': '37', 'name': 'KITKAT Nestle 4 Finger Chocolate 38g per peice', 'unit_price': '30', 'skuid': '186084', 'image_url': 'https://images.tinymart.in/product/186084-5395.png'}]}}}
[2026-06-12 10:54:45,672.672 INFO    ] 2026-06-12 10:54:45
[2026-06-12 10:54:46,333.333 INFO    ] 200
[2026-06-12 10:54:46,335.335 INFO    ] {"tray_sync": ["no_entry", "no_entry", "no_entry", "no_entry", "no_entry", "no_entry"], "orders_data": [], "orders_synced": [], "status": true, "order_items_synced": [], "tray_synced": ["no_entry", "no_entry", "no_entry", "no_entry", "no_entry", "no_entry", "no_entry", "no_entry", "no_entry", "no_entry", "no_entry", "no_entry", "no_entry", "no_entry", "no_entry", "no_entry", "no_entry", "no_entry", "no_entry", "no_entry", "no_entry", "no_entry", "no_entry", "no_entry", "no_entry", "no_entry", "no_entry"], "orders_data_synced": [], "orders": [], "order_items": []}
[2026-06-12 10:54:46,336.336 INFO    ] 2026-06-12 10:54:46
[2026-06-12 10:54:46,401.401 INFO    ] 200
[2026-06-12 10:54:46,403.403 INFO    ] True
[2026-06-12 10:54:46,404.404 INFO    ] cleanup_start_order_file_after_processing: order_id=TM09202301260612105313133
[2026-06-12 10:54:46,406.406 INFO    ] start order file deleted
[2026-06-12 10:54:46,408.408 INFO    ] Checking for system updates...
[2026-06-12 10:54:46,432.432 INFO    ] 200
[2026-06-12 10:54:46,433.433 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:54:46,464.464 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 10:54:46,466.466 INFO    ] No update needed
[2026-06-12 10:54:46,467.467 INFO    ] Checking for camera pi updates...
[2026-06-12 10:54:46,488.488 INFO    ] 200
[2026-06-12 10:54:46,490.490 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:54:46,516.516 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 10:54:46,541.541 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 10:54:46,543.543 INFO    ] No camera update needed
[2026-06-12 10:54:46,544.544 INFO    ] Script finished. Safe exiting...
[2026-06-12 10:54:46,546.546 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 10:54:46,549.549 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 10:54:46,552.552 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 10:54:48,591.591 INFO    ] ================================================
[2026-06-12 10:54:48,607.607 INFO    ] Launching Daemon at Fri Jun 12 10:54:48 IST 2026
[2026-06-12 10:54:48,618.618 INFO    ] ================================================
[2026-06-12 10:54:48,965.965 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 10:54:48
[2026-06-12 10:54:49,304.304 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 10:54:49,457.457 INFO    ] Initializing speech engine...
[2026-06-12 10:54:49,462.462 INFO    ] 2026-06-12 10:54:49
[2026-06-12 10:54:49,674.674 INFO    ] 2026-06-12 10:54:49
[2026-06-12 10:54:49,728.728 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 10:54:49,880.880 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 10:54:49,957.957 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 10:54:50,126.126 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 10:54:50,160.160 INFO    ] time= 12/06/2026 10:54:50
[2026-06-12 10:54:50,208.208 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 10:54:50,242.242 INFO    ] Checking for existing commands in stream...
[2026-06-12 10:54:50,322.322 INFO    ] No existing commands found in stream
[2026-06-12 10:54:55,333.333 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 10:54:55,335.335 INFO    ] Waiting 3.51 seconds before fallback handling...
[2026-06-12 10:54:59,194.194 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 10:54:59,195.195 INFO    ] Checking for system updates...
[2026-06-12 10:54:59,216.216 INFO    ] 200
[2026-06-12 10:54:59,217.217 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:54:59,247.247 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 10:54:59,249.249 INFO    ] No update needed
[2026-06-12 10:54:59,250.250 INFO    ] Checking for camera pi updates...
[2026-06-12 10:54:59,270.270 INFO    ] 200
[2026-06-12 10:54:59,271.271 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:54:59,294.294 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 10:54:59,329.329 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 10:54:59,331.331 INFO    ] No camera update needed
[2026-06-12 10:54:59,332.332 INFO    ] Script finished. Safe exiting...
[2026-06-12 10:54:59,333.333 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 10:54:59,336.336 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 10:54:59,339.339 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 10:55:01,377.377 INFO    ] ================================================
[2026-06-12 10:55:01,392.392 INFO    ] Launching Daemon at Fri Jun 12 10:55:01 IST 2026
[2026-06-12 10:55:01,403.403 INFO    ] ================================================
[2026-06-12 10:55:01,749.749 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 10:55:01
[2026-06-12 10:55:02,225.225 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 10:55:02,406.406 INFO    ] Initializing speech engine...
[2026-06-12 10:55:02,415.415 INFO    ] 2026-06-12 10:55:02
[2026-06-12 10:55:02,709.709 INFO    ] 2026-06-12 10:55:02
[2026-06-12 10:55:02,774.774 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 10:55:02,934.934 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 10:55:02,943.943 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 10:55:03,115.115 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 10:55:03,157.157 INFO    ] time= 12/06/2026 10:55:03
[2026-06-12 10:55:03,178.178 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 10:55:03,185.185 INFO    ] Checking for existing commands in stream...
[2026-06-12 10:55:03,252.252 INFO    ] No existing commands found in stream
[2026-06-12 10:55:08,266.266 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 10:55:08,269.269 INFO    ] Waiting 3.59 seconds before fallback handling...
[2026-06-12 10:55:12,253.253 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 10:55:12,254.254 INFO    ] Checking for system updates...
[2026-06-12 10:55:12,275.275 INFO    ] 200
[2026-06-12 10:55:12,276.276 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:55:12,306.306 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 10:55:12,307.307 INFO    ] No update needed
[2026-06-12 10:55:12,309.309 INFO    ] Checking for camera pi updates...
[2026-06-12 10:55:12,328.328 INFO    ] 200
[2026-06-12 10:55:12,330.330 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:55:12,353.353 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 10:55:12,377.377 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 10:55:12,379.379 INFO    ] No camera update needed
[2026-06-12 10:55:12,380.380 INFO    ] Script finished. Safe exiting...
[2026-06-12 10:55:12,381.381 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 10:55:12,384.384 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 10:55:12,387.387 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 10:55:14,425.425 INFO    ] ================================================
[2026-06-12 10:55:14,440.440 INFO    ] Launching Daemon at Fri Jun 12 10:55:14 IST 2026
[2026-06-12 10:55:14,451.451 INFO    ] ================================================
[2026-06-12 10:55:14,813.813 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 10:55:14
[2026-06-12 10:55:15,127.127 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 10:55:15,263.263 INFO    ] Initializing speech engine...
[2026-06-12 10:55:15,271.271 INFO    ] 2026-06-12 10:55:15
[2026-06-12 10:55:15,477.477 INFO    ] 2026-06-12 10:55:15
[2026-06-12 10:55:15,505.505 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 10:55:15,688.688 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 10:55:15,698.698 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 10:55:15,848.848 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 10:55:15,896.896 INFO    ] time= 12/06/2026 10:55:15
[2026-06-12 10:55:15,918.918 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 10:55:15,924.924 INFO    ] Checking for existing commands in stream...
[2026-06-12 10:55:15,991.991 INFO    ] No existing commands found in stream
[2026-06-12 10:55:21,000.000 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 10:55:21,003.003 INFO    ] Waiting 3.14 seconds before fallback handling...
[2026-06-12 10:55:24,493.493 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 10:55:24,494.494 INFO    ] Checking for system updates...
[2026-06-12 10:55:24,515.515 INFO    ] 200
[2026-06-12 10:55:24,517.517 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:55:24,547.547 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 10:55:24,549.549 INFO    ] No update needed
[2026-06-12 10:55:24,550.550 INFO    ] Checking for camera pi updates...
[2026-06-12 10:55:24,570.570 INFO    ] 200
[2026-06-12 10:55:24,571.571 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:55:24,595.595 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 10:55:24,638.638 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 10:55:24,639.639 INFO    ] No camera update needed
[2026-06-12 10:55:24,640.640 INFO    ] Script finished. Safe exiting...
[2026-06-12 10:55:24,642.642 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 10:55:24,645.645 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 10:55:24,647.647 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 10:55:26,687.687 INFO    ] ================================================
[2026-06-12 10:55:26,702.702 INFO    ] Launching Daemon at Fri Jun 12 10:55:26 IST 2026
[2026-06-12 10:55:26,713.713 INFO    ] ================================================
[2026-06-12 10:55:27,065.065 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 10:55:27
[2026-06-12 10:55:27,380.380 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 10:55:27,510.510 INFO    ] Initializing speech engine...
[2026-06-12 10:55:27,518.518 INFO    ] 2026-06-12 10:55:27
[2026-06-12 10:55:27,729.729 INFO    ] 2026-06-12 10:55:27
[2026-06-12 10:55:27,759.759 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 10:55:27,942.942 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 10:55:27,952.952 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 10:55:28,079.079 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 10:55:28,132.132 INFO    ] time= 12/06/2026 10:55:28
[2026-06-12 10:55:28,175.175 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 10:55:28,177.177 INFO    ] Checking for existing commands in stream...
[2026-06-12 10:55:28,250.250 INFO    ] No existing commands found in stream
[2026-06-12 10:55:33,259.259 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 10:55:33,262.262 INFO    ] Waiting 1.61 seconds before fallback handling...
[2026-06-12 10:55:35,235.235 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 10:55:35,237.237 INFO    ] Checking for system updates...
[2026-06-12 10:55:35,257.257 INFO    ] 200
[2026-06-12 10:55:35,259.259 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:55:35,292.292 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 10:55:35,293.293 INFO    ] No update needed
[2026-06-12 10:55:35,294.294 INFO    ] Checking for camera pi updates...
[2026-06-12 10:55:35,314.314 INFO    ] 200
[2026-06-12 10:55:35,315.315 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:55:35,339.339 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 10:55:35,375.375 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 10:55:35,376.376 INFO    ] No camera update needed
[2026-06-12 10:55:35,377.377 INFO    ] Script finished. Safe exiting...
[2026-06-12 10:55:35,379.379 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 10:55:35,382.382 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 10:55:35,384.384 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 10:55:37,425.425 INFO    ] ================================================
[2026-06-12 10:55:37,440.440 INFO    ] Launching Daemon at Fri Jun 12 10:55:37 IST 2026
[2026-06-12 10:55:37,452.452 INFO    ] ================================================
[2026-06-12 10:55:37,822.822 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 10:55:37
[2026-06-12 10:55:38,167.167 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 10:55:38,319.319 INFO    ] Initializing speech engine...
[2026-06-12 10:55:38,325.325 INFO    ] 2026-06-12 10:55:38
[2026-06-12 10:55:38,533.533 INFO    ] 2026-06-12 10:55:38
[2026-06-12 10:55:38,562.562 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 10:55:38,746.746 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 10:55:38,756.756 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 10:55:38,885.885 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 10:55:38,939.939 INFO    ] time= 12/06/2026 10:55:38
[2026-06-12 10:55:38,976.976 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 10:55:38,979.979 INFO    ] Checking for existing commands in stream...
[2026-06-12 10:55:39,051.051 INFO    ] No existing commands found in stream
[2026-06-12 10:55:44,065.065 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 10:55:44,069.069 INFO    ] Waiting 3.20 seconds before fallback handling...
[2026-06-12 10:55:47,656.656 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 10:55:47,657.657 INFO    ] Checking for system updates...
[2026-06-12 10:55:47,678.678 INFO    ] 200
[2026-06-12 10:55:47,680.680 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:55:47,711.711 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 10:55:47,712.712 INFO    ] No update needed
[2026-06-12 10:55:47,713.713 INFO    ] Checking for camera pi updates...
[2026-06-12 10:55:47,733.733 INFO    ] 200
[2026-06-12 10:55:47,734.734 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:55:47,757.757 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 10:55:47,794.794 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 10:55:47,795.795 INFO    ] No camera update needed
[2026-06-12 10:55:47,797.797 INFO    ] Script finished. Safe exiting...
[2026-06-12 10:55:47,798.798 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 10:55:47,801.801 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 10:55:47,804.804 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 10:55:49,841.841 INFO    ] ================================================
[2026-06-12 10:55:49,856.856 INFO    ] Launching Daemon at Fri Jun 12 10:55:49 IST 2026
[2026-06-12 10:55:49,867.867 INFO    ] ================================================
[2026-06-12 10:55:50,228.228 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 10:55:50
[2026-06-12 10:55:50,539.539 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 10:55:50,671.671 INFO    ] Initializing speech engine...
[2026-06-12 10:55:50,678.678 INFO    ] 2026-06-12 10:55:50
[2026-06-12 10:55:50,892.892 INFO    ] 2026-06-12 10:55:50
[2026-06-12 10:55:50,922.922 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 10:55:51,060.060 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 10:55:51,114.114 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 10:55:51,254.254 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 10:55:51,312.312 INFO    ] time= 12/06/2026 10:55:51
[2026-06-12 10:55:51,347.347 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 10:55:51,348.348 INFO    ] Checking for existing commands in stream...
[2026-06-12 10:55:51,425.425 INFO    ] No existing commands found in stream
[2026-06-12 10:55:56,439.439 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 10:55:56,442.442 INFO    ] Waiting 0.07 seconds before fallback handling...
[2026-06-12 10:55:56,847.847 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 10:55:56,848.848 INFO    ] Checking for system updates...
[2026-06-12 10:55:56,869.869 INFO    ] 200
[2026-06-12 10:55:56,871.871 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:55:56,903.903 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 10:55:56,904.904 INFO    ] No update needed
[2026-06-12 10:55:56,906.906 INFO    ] Checking for camera pi updates...
[2026-06-12 10:55:56,925.925 INFO    ] 200
[2026-06-12 10:55:56,927.927 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:55:56,950.950 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 10:55:56,990.990 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 10:55:56,991.991 INFO    ] No camera update needed
[2026-06-12 10:55:56,993.993 INFO    ] Script finished. Safe exiting...
[2026-06-12 10:55:56,994.994 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 10:55:56,997.997 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 10:55:57,000.000 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 10:55:59,038.038 INFO    ] ================================================
[2026-06-12 10:55:59,053.053 INFO    ] Launching Daemon at Fri Jun 12 10:55:59 IST 2026
[2026-06-12 10:55:59,064.064 INFO    ] ================================================
[2026-06-12 10:55:59,422.422 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 10:55:59
[2026-06-12 10:55:59,738.738 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 10:55:59,886.886 INFO    ] Initializing speech engine...
[2026-06-12 10:55:59,893.893 INFO    ] 2026-06-12 10:55:59
[2026-06-12 10:56:00,090.090 INFO    ] 2026-06-12 10:56:00
[2026-06-12 10:56:00,118.118 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 10:56:00,301.301 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 10:56:00,309.309 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 10:56:00,437.437 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 10:56:00,504.504 INFO    ] time= 12/06/2026 10:56:00
[2026-06-12 10:56:00,528.528 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 10:56:00,534.534 INFO    ] Checking for existing commands in stream...
[2026-06-12 10:56:00,600.600 INFO    ] No existing commands found in stream
[2026-06-12 10:56:05,610.610 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 10:56:05,613.613 INFO    ] Waiting 2.33 seconds before fallback handling...
[2026-06-12 10:56:08,326.326 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 10:56:08,328.328 INFO    ] Checking for system updates...
[2026-06-12 10:56:08,349.349 INFO    ] 200
[2026-06-12 10:56:08,351.351 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:56:08,381.381 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 10:56:08,383.383 INFO    ] No update needed
[2026-06-12 10:56:08,384.384 INFO    ] Checking for camera pi updates...
[2026-06-12 10:56:08,403.403 INFO    ] 200
[2026-06-12 10:56:08,405.405 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:56:08,428.428 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 10:56:08,469.469 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 10:56:08,470.470 INFO    ] No camera update needed
[2026-06-12 10:56:08,472.472 INFO    ] Script finished. Safe exiting...
[2026-06-12 10:56:08,473.473 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 10:56:08,476.476 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 10:56:08,478.478 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 10:56:10,522.522 INFO    ] ================================================
[2026-06-12 10:56:10,537.537 INFO    ] Launching Daemon at Fri Jun 12 10:56:10 IST 2026
[2026-06-12 10:56:10,548.548 INFO    ] ================================================
[2026-06-12 10:56:10,923.923 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 10:56:10
[2026-06-12 10:56:11,268.268 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 10:56:11,429.429 INFO    ] Initializing speech engine...
[2026-06-12 10:56:11,434.434 INFO    ] 2026-06-12 10:56:11
[2026-06-12 10:56:11,644.644 INFO    ] 2026-06-12 10:56:11
[2026-06-12 10:56:11,673.673 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 10:56:11,827.827 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 10:56:11,828.828 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 10:56:11,981.981 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 10:56:12,009.009 INFO    ] time= 12/06/2026 10:56:11
[2026-06-12 10:56:12,074.074 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 10:56:12,103.103 INFO    ] Checking for existing commands in stream...
[2026-06-12 10:56:12,217.217 INFO    ] No existing commands found in stream
[2026-06-12 10:56:17,228.228 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 10:56:17,231.231 INFO    ] Waiting 2.61 seconds before fallback handling...
[2026-06-12 10:56:20,227.227 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 10:56:20,229.229 INFO    ] Checking for system updates...
[2026-06-12 10:56:20,251.251 INFO    ] 200
[2026-06-12 10:56:20,253.253 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:56:20,284.284 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 10:56:20,285.285 INFO    ] No update needed
[2026-06-12 10:56:20,287.287 INFO    ] Checking for camera pi updates...
[2026-06-12 10:56:20,306.306 INFO    ] 200
[2026-06-12 10:56:20,308.308 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:56:20,333.333 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 10:56:20,370.370 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 10:56:20,372.372 INFO    ] No camera update needed
[2026-06-12 10:56:20,373.373 INFO    ] Script finished. Safe exiting...
[2026-06-12 10:56:20,374.374 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 10:56:20,378.378 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 10:56:20,381.381 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 10:56:22,420.420 INFO    ] ================================================
[2026-06-12 10:56:22,435.435 INFO    ] Launching Daemon at Fri Jun 12 10:56:22 IST 2026
[2026-06-12 10:56:22,446.446 INFO    ] ================================================
[2026-06-12 10:56:22,784.784 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 10:56:22
[2026-06-12 10:56:23,097.097 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 10:56:23,235.235 INFO    ] Initializing speech engine...
[2026-06-12 10:56:23,245.245 INFO    ] 2026-06-12 10:56:23
[2026-06-12 10:56:23,452.452 INFO    ] 2026-06-12 10:56:23
[2026-06-12 10:56:23,480.480 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 10:56:23,666.666 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 10:56:23,675.675 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 10:56:23,803.803 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 10:56:23,871.871 INFO    ] time= 12/06/2026 10:56:23
[2026-06-12 10:56:23,899.899 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 10:56:23,901.901 INFO    ] Checking for existing commands in stream...
[2026-06-12 10:56:23,999.999 INFO    ] No existing commands found in stream
[2026-06-12 10:56:29,008.008 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 10:56:29,011.011 INFO    ] Waiting 0.14 seconds before fallback handling...
[2026-06-12 10:56:29,518.518 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 10:56:29,519.519 INFO    ] Checking for system updates...
[2026-06-12 10:56:29,541.541 INFO    ] 200
[2026-06-12 10:56:29,543.543 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:56:29,573.573 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 10:56:29,574.574 INFO    ] No update needed
[2026-06-12 10:56:29,576.576 INFO    ] Checking for camera pi updates...
[2026-06-12 10:56:29,597.597 INFO    ] 200
[2026-06-12 10:56:29,598.598 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:56:29,623.623 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 10:56:29,659.659 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 10:56:29,661.661 INFO    ] No camera update needed
[2026-06-12 10:56:29,663.663 INFO    ] Script finished. Safe exiting...
[2026-06-12 10:56:29,664.664 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 10:56:29,667.667 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 10:56:29,670.670 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 10:56:31,703.703 INFO    ] ================================================
[2026-06-12 10:56:31,713.713 INFO    ] Launching Daemon at Fri Jun 12 10:56:31 IST 2026
[2026-06-12 10:56:31,720.720 INFO    ] ================================================
[2026-06-12 10:56:32,044.044 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 10:56:32
[2026-06-12 10:56:32,363.363 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 10:56:32,495.495 INFO    ] Initializing speech engine...
[2026-06-12 10:56:32,503.503 INFO    ] 2026-06-12 10:56:32
[2026-06-12 10:56:32,717.717 INFO    ] 2026-06-12 10:56:32
[2026-06-12 10:56:32,746.746 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 10:56:32,933.933 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 10:56:32,942.942 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 10:56:33,074.074 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 10:56:33,138.138 INFO    ] time= 12/06/2026 10:56:33
[2026-06-12 10:56:33,167.167 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 10:56:33,174.174 INFO    ] Checking for existing commands in stream...
[2026-06-12 10:56:33,242.242 INFO    ] No existing commands found in stream
[2026-06-12 10:56:38,256.256 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 10:56:38,258.258 INFO    ] Waiting 2.93 seconds before fallback handling...
[2026-06-12 10:56:41,550.550 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 10:56:41,552.552 INFO    ] Checking for system updates...
[2026-06-12 10:56:41,572.572 INFO    ] 200
[2026-06-12 10:56:41,574.574 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:56:41,606.606 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 10:56:41,607.607 INFO    ] No update needed
[2026-06-12 10:56:41,609.609 INFO    ] Checking for camera pi updates...
[2026-06-12 10:56:41,628.628 INFO    ] 200
[2026-06-12 10:56:41,629.629 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:56:41,655.655 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 10:56:41,700.700 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 10:56:41,701.701 INFO    ] No camera update needed
[2026-06-12 10:56:41,703.703 INFO    ] Script finished. Safe exiting...
[2026-06-12 10:56:41,704.704 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 10:56:41,707.707 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 10:56:41,710.710 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 10:56:43,750.750 INFO    ] ================================================
[2026-06-12 10:56:43,765.765 INFO    ] Launching Daemon at Fri Jun 12 10:56:43 IST 2026
[2026-06-12 10:56:43,776.776 INFO    ] ================================================
[2026-06-12 10:56:44,128.128 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 10:56:44
[2026-06-12 10:56:44,470.470 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 10:56:44,615.615 INFO    ] Initializing speech engine...
[2026-06-12 10:56:44,625.625 INFO    ] 2026-06-12 10:56:44
[2026-06-12 10:56:44,835.835 INFO    ] 2026-06-12 10:56:44
[2026-06-12 10:56:44,865.865 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 10:56:45,051.051 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 10:56:45,062.062 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 10:56:45,195.195 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 10:56:45,262.262 INFO    ] time= 12/06/2026 10:56:45
[2026-06-12 10:56:45,287.287 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 10:56:45,289.289 INFO    ] Checking for existing commands in stream...
[2026-06-12 10:56:45,410.410 INFO    ] No existing commands found in stream
[2026-06-12 10:56:50,420.420 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 10:56:50,424.424 INFO    ] Waiting 0.94 seconds before fallback handling...
[2026-06-12 10:56:51,721.721 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 10:56:51,722.722 INFO    ] Checking for system updates...
[2026-06-12 10:56:51,745.745 INFO    ] 200
[2026-06-12 10:56:51,747.747 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:56:51,782.782 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 10:56:51,784.784 INFO    ] No update needed
[2026-06-12 10:56:51,785.785 INFO    ] Checking for camera pi updates...
[2026-06-12 10:56:51,809.809 INFO    ] 200
[2026-06-12 10:56:51,811.811 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:56:51,834.834 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 10:56:51,974.974 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 10:56:51,975.975 INFO    ] No camera update needed
[2026-06-12 10:56:51,977.977 INFO    ] Script finished. Safe exiting...
[2026-06-12 10:56:51,978.978 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 10:56:51,981.981 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 10:56:51,984.984 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 10:56:54,023.023 INFO    ] ================================================
[2026-06-12 10:56:54,039.039 INFO    ] Launching Daemon at Fri Jun 12 10:56:54 IST 2026
[2026-06-12 10:56:54,050.050 INFO    ] ================================================
[2026-06-12 10:56:54,444.444 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 10:56:54
[2026-06-12 10:56:54,784.784 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 10:56:54,938.938 INFO    ] Initializing speech engine...
[2026-06-12 10:56:54,942.942 INFO    ] 2026-06-12 10:56:54
[2026-06-12 10:56:55,148.148 INFO    ] 2026-06-12 10:56:55
[2026-06-12 10:56:55,179.179 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 10:56:55,361.361 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 10:56:55,365.365 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 10:56:55,507.507 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 10:56:55,565.565 INFO    ] time= 12/06/2026 10:56:55
[2026-06-12 10:56:55,593.593 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 10:56:55,599.599 INFO    ] Checking for existing commands in stream...
[2026-06-12 10:56:55,666.666 INFO    ] No existing commands found in stream
[2026-06-12 10:57:00,676.676 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 10:57:00,679.679 INFO    ] Waiting 2.56 seconds before fallback handling...
[2026-06-12 10:57:03,614.614 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 10:57:03,616.616 INFO    ] Checking for system updates...
[2026-06-12 10:57:03,637.637 INFO    ] 200
[2026-06-12 10:57:03,639.639 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:57:03,669.669 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 10:57:03,671.671 INFO    ] No update needed
[2026-06-12 10:57:03,672.672 INFO    ] Checking for camera pi updates...
[2026-06-12 10:57:03,692.692 INFO    ] 200
[2026-06-12 10:57:03,694.694 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:57:03,717.717 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 10:57:03,752.752 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 10:57:03,754.754 INFO    ] No camera update needed
[2026-06-12 10:57:03,755.755 INFO    ] Script finished. Safe exiting...
[2026-06-12 10:57:03,757.757 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 10:57:03,760.760 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 10:57:03,763.763 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 10:57:05,804.804 INFO    ] ================================================
[2026-06-12 10:57:05,820.820 INFO    ] Launching Daemon at Fri Jun 12 10:57:05 IST 2026
[2026-06-12 10:57:05,831.831 INFO    ] ================================================
[2026-06-12 10:57:06,202.202 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 10:57:06
[2026-06-12 10:57:06,513.513 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 10:57:06,648.648 INFO    ] Initializing speech engine...
[2026-06-12 10:57:06,651.651 INFO    ] 2026-06-12 10:57:06
[2026-06-12 10:57:06,845.845 INFO    ] 2026-06-12 10:57:06
[2026-06-12 10:57:06,892.892 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 10:57:07,050.050 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 10:57:07,089.089 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 10:57:07,234.234 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 10:57:07,269.269 INFO    ] time= 12/06/2026 10:57:07
[2026-06-12 10:57:07,320.320 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 10:57:07,367.367 INFO    ] Checking for existing commands in stream...
[2026-06-12 10:57:07,481.481 INFO    ] No existing commands found in stream
[2026-06-12 10:57:12,495.495 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 10:57:12,498.498 INFO    ] Waiting 3.98 seconds before fallback handling...
[2026-06-12 10:57:16,852.852 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 10:57:16,854.854 INFO    ] Checking for system updates...
[2026-06-12 10:57:16,876.876 INFO    ] 200
[2026-06-12 10:57:16,877.877 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:57:16,907.907 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 10:57:16,908.908 INFO    ] No update needed
[2026-06-12 10:57:16,910.910 INFO    ] Checking for camera pi updates...
[2026-06-12 10:57:16,930.930 INFO    ] 200
[2026-06-12 10:57:16,932.932 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:57:16,955.955 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 10:57:16,991.991 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 10:57:16,992.992 INFO    ] No camera update needed
[2026-06-12 10:57:16,994.994 INFO    ] Script finished. Safe exiting...
[2026-06-12 10:57:16,995.995 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 10:57:16,998.998 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 10:57:17,001.001 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 10:57:19,041.041 INFO    ] ================================================
[2026-06-12 10:57:19,057.057 INFO    ] Launching Daemon at Fri Jun 12 10:57:19 IST 2026
[2026-06-12 10:57:19,068.068 INFO    ] ================================================
[2026-06-12 10:57:19,402.402 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 10:57:19
[2026-06-12 10:57:19,713.713 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 10:57:19,844.844 INFO    ] Initializing speech engine...
[2026-06-12 10:57:19,847.847 INFO    ] 2026-06-12 10:57:19
[2026-06-12 10:57:20,063.063 INFO    ] 2026-06-12 10:57:20
[2026-06-12 10:57:20,092.092 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 10:57:20,276.276 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 10:57:20,286.286 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 10:57:20,415.415 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 10:57:20,484.484 INFO    ] time= 12/06/2026 10:57:20
[2026-06-12 10:57:20,508.508 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 10:57:20,515.515 INFO    ] Checking for existing commands in stream...
[2026-06-12 10:57:20,582.582 INFO    ] No existing commands found in stream
[2026-06-12 10:57:25,596.596 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 10:57:25,600.600 INFO    ] Waiting 0.04 seconds before fallback handling...
[2026-06-12 10:57:26,012.012 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 10:57:26,014.014 INFO    ] Checking for system updates...
[2026-06-12 10:57:26,037.037 INFO    ] 200
[2026-06-12 10:57:26,038.038 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:57:26,070.070 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 10:57:26,071.071 INFO    ] No update needed
[2026-06-12 10:57:26,073.073 INFO    ] Checking for camera pi updates...
[2026-06-12 10:57:26,093.093 INFO    ] 200
[2026-06-12 10:57:26,094.094 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:57:26,117.117 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 10:57:26,158.158 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 10:57:26,160.160 INFO    ] No camera update needed
[2026-06-12 10:57:26,161.161 INFO    ] Script finished. Safe exiting...
[2026-06-12 10:57:26,162.162 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 10:57:26,166.166 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 10:57:26,169.169 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 10:57:28,211.211 INFO    ] ================================================
[2026-06-12 10:57:28,226.226 INFO    ] Launching Daemon at Fri Jun 12 10:57:28 IST 2026
[2026-06-12 10:57:28,237.237 INFO    ] ================================================
[2026-06-12 10:57:28,612.612 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 10:57:28
[2026-06-12 10:57:28,929.929 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 10:57:29,098.098 INFO    ] Initializing speech engine...
[2026-06-12 10:57:29,107.107 INFO    ] 2026-06-12 10:57:29
[2026-06-12 10:57:29,327.327 INFO    ] 2026-06-12 10:57:29
[2026-06-12 10:57:29,355.355 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 10:57:29,539.539 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 10:57:29,548.548 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 10:57:29,675.675 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 10:57:29,741.741 INFO    ] time= 12/06/2026 10:57:29
[2026-06-12 10:57:29,768.768 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 10:57:29,775.775 INFO    ] Checking for existing commands in stream...
[2026-06-12 10:57:29,841.841 INFO    ] No existing commands found in stream
[2026-06-12 10:57:34,850.850 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 10:57:34,853.853 INFO    ] Waiting 0.74 seconds before fallback handling...
[2026-06-12 10:57:35,967.967 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 10:57:35,968.968 INFO    ] Checking for system updates...
[2026-06-12 10:57:35,989.989 INFO    ] 200
[2026-06-12 10:57:35,990.990 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:57:36,021.021 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 10:57:36,023.023 INFO    ] No update needed
[2026-06-12 10:57:36,024.024 INFO    ] Checking for camera pi updates...
[2026-06-12 10:57:36,043.043 INFO    ] 200
[2026-06-12 10:57:36,045.045 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:57:36,068.068 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 10:57:36,108.108 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 10:57:36,109.109 INFO    ] No camera update needed
[2026-06-12 10:57:36,111.111 INFO    ] Script finished. Safe exiting...
[2026-06-12 10:57:36,112.112 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 10:57:36,115.115 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 10:57:36,117.117 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 10:57:38,158.158 INFO    ] ================================================
[2026-06-12 10:57:38,174.174 INFO    ] Launching Daemon at Fri Jun 12 10:57:38 IST 2026
[2026-06-12 10:57:38,185.185 INFO    ] ================================================
[2026-06-12 10:57:38,523.523 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 10:57:38
[2026-06-12 10:57:38,839.839 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 10:57:38,982.982 INFO    ] Initializing speech engine...
[2026-06-12 10:57:38,987.987 INFO    ] 2026-06-12 10:57:38
[2026-06-12 10:57:39,190.190 INFO    ] 2026-06-12 10:57:39
[2026-06-12 10:57:39,218.218 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 10:57:39,404.404 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 10:57:39,411.411 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 10:57:39,557.557 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 10:57:39,609.609 INFO    ] time= 12/06/2026 10:57:39
[2026-06-12 10:57:39,632.632 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 10:57:39,639.639 INFO    ] Checking for existing commands in stream...
[2026-06-12 10:57:39,705.705 INFO    ] No existing commands found in stream
[2026-06-12 10:57:44,714.714 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 10:57:44,717.717 INFO    ] Waiting 1.40 seconds before fallback handling...
[2026-06-12 10:57:46,453.453 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 10:57:46,455.455 INFO    ] Checking for system updates...
[2026-06-12 10:57:46,475.475 INFO    ] 200
[2026-06-12 10:57:46,477.477 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:57:46,512.512 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 10:57:46,514.514 INFO    ] No update needed
[2026-06-12 10:57:46,515.515 INFO    ] Checking for camera pi updates...
[2026-06-12 10:57:46,535.535 INFO    ] 200
[2026-06-12 10:57:46,537.537 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:57:46,560.560 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 10:57:46,599.599 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 10:57:46,600.600 INFO    ] No camera update needed
[2026-06-12 10:57:46,601.601 INFO    ] Script finished. Safe exiting...
[2026-06-12 10:57:46,603.603 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 10:57:46,605.605 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 10:57:46,608.608 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 10:57:48,646.646 INFO    ] ================================================
[2026-06-12 10:57:48,662.662 INFO    ] Launching Daemon at Fri Jun 12 10:57:48 IST 2026
[2026-06-12 10:57:48,674.674 INFO    ] ================================================
[2026-06-12 10:57:49,017.017 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 10:57:49
[2026-06-12 10:57:49,329.329 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 10:57:49,465.465 INFO    ] Initializing speech engine...
[2026-06-12 10:57:49,473.473 INFO    ] 2026-06-12 10:57:49
[2026-06-12 10:57:49,677.677 INFO    ] 2026-06-12 10:57:49
[2026-06-12 10:57:49,706.706 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 10:57:49,863.863 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 10:57:49,913.913 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 10:57:50,077.077 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 10:57:50,125.125 INFO    ] time= 12/06/2026 10:57:50
[2026-06-12 10:57:50,164.164 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 10:57:50,187.187 INFO    ] Checking for existing commands in stream...
[2026-06-12 10:57:50,264.264 INFO    ] No existing commands found in stream
[2026-06-12 10:57:55,275.275 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 10:57:55,283.283 INFO    ] Waiting 0.71 seconds before fallback handling...
[2026-06-12 10:57:56,349.349 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 10:57:56,350.350 INFO    ] Checking for system updates...
[2026-06-12 10:57:56,373.373 INFO    ] 200
[2026-06-12 10:57:56,374.374 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:57:56,404.404 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 10:57:56,405.405 INFO    ] No update needed
[2026-06-12 10:57:56,407.407 INFO    ] Checking for camera pi updates...
[2026-06-12 10:57:56,426.426 INFO    ] 200
[2026-06-12 10:57:56,427.427 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:57:56,453.453 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 10:57:56,497.497 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 10:57:56,499.499 INFO    ] No camera update needed
[2026-06-12 10:57:56,500.500 INFO    ] Script finished. Safe exiting...
[2026-06-12 10:57:56,501.501 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 10:57:56,504.504 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 10:57:56,507.507 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 10:57:58,546.546 INFO    ] ================================================
[2026-06-12 10:57:58,562.562 INFO    ] Launching Daemon at Fri Jun 12 10:57:58 IST 2026
[2026-06-12 10:57:58,574.574 INFO    ] ================================================
[2026-06-12 10:57:58,917.917 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 10:57:58
[2026-06-12 10:57:59,228.228 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 10:57:59,358.358 INFO    ] Initializing speech engine...
[2026-06-12 10:57:59,361.361 INFO    ] 2026-06-12 10:57:59
[2026-06-12 10:57:59,578.578 INFO    ] 2026-06-12 10:57:59
[2026-06-12 10:57:59,607.607 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 10:57:59,755.755 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 10:57:59,756.756 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 10:57:59,906.906 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 10:57:59,934.934 INFO    ] time= 12/06/2026 10:57:59
[2026-06-12 10:57:59,998.998 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 10:58:00,025.025 INFO    ] Checking for existing commands in stream...
[2026-06-12 10:58:00,122.122 INFO    ] No existing commands found in stream
[2026-06-12 10:58:05,131.131 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 10:58:05,134.134 INFO    ] Waiting 1.31 seconds before fallback handling...
[2026-06-12 10:58:06,814.814 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 10:58:06,934.934 INFO    ] Checking for system updates...
[2026-06-12 10:58:06,956.956 INFO    ] 200
[2026-06-12 10:58:06,958.958 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:58:07,228.228 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 10:58:07,230.230 INFO    ] No update needed
[2026-06-12 10:58:07,231.231 INFO    ] Checking for camera pi updates...
[2026-06-12 10:58:07,253.253 INFO    ] 200
[2026-06-12 10:58:07,254.254 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:58:07,277.277 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 10:58:07,315.315 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 10:58:07,316.316 INFO    ] No camera update needed
[2026-06-12 10:58:07,318.318 INFO    ] Script finished. Safe exiting...
[2026-06-12 10:58:07,319.319 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 10:58:07,322.322 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 10:58:07,325.325 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 10:58:09,364.364 INFO    ] ================================================
[2026-06-12 10:58:09,381.381 INFO    ] Launching Daemon at Fri Jun 12 10:58:09 IST 2026
[2026-06-12 10:58:09,392.392 INFO    ] ================================================
[2026-06-12 10:58:09,732.732 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 10:58:09
[2026-06-12 10:58:10,043.043 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 10:58:10,172.172 INFO    ] Initializing speech engine...
[2026-06-12 10:58:10,177.177 INFO    ] 2026-06-12 10:58:10
[2026-06-12 10:58:10,395.395 INFO    ] 2026-06-12 10:58:10
[2026-06-12 10:58:10,424.424 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 10:58:10,563.563 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 10:58:10,612.612 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 10:58:10,757.757 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 10:58:10,819.819 INFO    ] time= 12/06/2026 10:58:10
[2026-06-12 10:58:10,843.843 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 10:58:10,849.849 INFO    ] Checking for existing commands in stream...
[2026-06-12 10:58:10,918.918 INFO    ] No existing commands found in stream
[2026-06-12 10:58:15,926.926 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 10:58:15,929.929 INFO    ] Waiting 1.61 seconds before fallback handling...
[2026-06-12 10:58:17,909.909 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 10:58:17,911.911 INFO    ] Checking for system updates...
[2026-06-12 10:58:17,933.933 INFO    ] 200
[2026-06-12 10:58:17,934.934 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:58:17,967.967 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 10:58:17,968.968 INFO    ] No update needed
[2026-06-12 10:58:17,970.970 INFO    ] Checking for camera pi updates...
[2026-06-12 10:58:17,989.989 INFO    ] 200
[2026-06-12 10:58:17,991.991 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:58:18,014.014 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 10:58:18,054.054 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 10:58:18,055.055 INFO    ] No camera update needed
[2026-06-12 10:58:18,056.056 INFO    ] Script finished. Safe exiting...
[2026-06-12 10:58:18,057.057 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 10:58:18,060.060 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 10:58:18,063.063 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 10:58:20,107.107 INFO    ] ================================================
[2026-06-12 10:58:20,123.123 INFO    ] Launching Daemon at Fri Jun 12 10:58:20 IST 2026
[2026-06-12 10:58:20,134.134 INFO    ] ================================================
[2026-06-12 10:58:20,457.457 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 10:58:20
[2026-06-12 10:58:20,769.769 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 10:58:20,900.900 INFO    ] Initializing speech engine...
[2026-06-12 10:58:20,904.904 INFO    ] 2026-06-12 10:58:20
[2026-06-12 10:58:21,097.097 INFO    ] 2026-06-12 10:58:21
[2026-06-12 10:58:21,143.143 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 10:58:21,300.300 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 10:58:21,340.340 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 10:58:21,482.482 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 10:58:21,517.517 INFO    ] time= 12/06/2026 10:58:21
[2026-06-12 10:58:21,563.563 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 10:58:21,608.608 INFO    ] Checking for existing commands in stream...
[2026-06-12 10:58:21,700.700 INFO    ] No existing commands found in stream
[2026-06-12 10:58:26,711.711 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 10:58:26,714.714 INFO    ] Waiting 2.27 seconds before fallback handling...
[2026-06-12 10:58:29,355.355 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 10:58:29,357.357 INFO    ] Checking for system updates...
[2026-06-12 10:58:29,378.378 INFO    ] 200
[2026-06-12 10:58:29,379.379 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:58:29,412.412 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 10:58:29,413.413 INFO    ] No update needed
[2026-06-12 10:58:29,415.415 INFO    ] Checking for camera pi updates...
[2026-06-12 10:58:29,434.434 INFO    ] 200
[2026-06-12 10:58:29,436.436 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:58:29,461.461 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 10:58:29,500.500 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 10:58:29,502.502 INFO    ] No camera update needed
[2026-06-12 10:58:29,503.503 INFO    ] Script finished. Safe exiting...
[2026-06-12 10:58:29,504.504 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 10:58:29,507.507 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 10:58:29,510.510 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 10:58:31,550.550 INFO    ] ================================================
[2026-06-12 10:58:31,566.566 INFO    ] Launching Daemon at Fri Jun 12 10:58:31 IST 2026
[2026-06-12 10:58:31,578.578 INFO    ] ================================================
[2026-06-12 10:58:31,956.956 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 10:58:31
[2026-06-12 10:58:32,311.311 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 10:58:32,477.477 INFO    ] Initializing speech engine...
[2026-06-12 10:58:32,480.480 INFO    ] 2026-06-12 10:58:32
[2026-06-12 10:58:32,689.689 INFO    ] 2026-06-12 10:58:32
[2026-06-12 10:58:32,718.718 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 10:58:32,898.898 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 10:58:32,908.908 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 10:58:33,033.033 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 10:58:33,090.090 INFO    ] time= 12/06/2026 10:58:33
[2026-06-12 10:58:33,127.127 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 10:58:33,129.129 INFO    ] Checking for existing commands in stream...
[2026-06-12 10:58:33,201.201 INFO    ] No existing commands found in stream
[2026-06-12 10:58:38,210.210 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 10:58:38,213.213 INFO    ] Waiting 1.29 seconds before fallback handling...
[2026-06-12 10:58:39,893.893 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 10:58:39,894.894 INFO    ] Checking for system updates...
[2026-06-12 10:58:39,915.915 INFO    ] 200
[2026-06-12 10:58:39,916.916 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:58:39,949.949 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 10:58:39,951.951 INFO    ] No update needed
[2026-06-12 10:58:39,952.952 INFO    ] Checking for camera pi updates...
[2026-06-12 10:58:39,972.972 INFO    ] 200
[2026-06-12 10:58:39,973.973 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:58:39,996.996 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 10:58:40,038.038 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 10:58:40,039.039 INFO    ] No camera update needed
[2026-06-12 10:58:40,041.041 INFO    ] Script finished. Safe exiting...
[2026-06-12 10:58:40,042.042 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 10:58:40,045.045 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 10:58:40,047.047 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 10:58:42,089.089 INFO    ] ================================================
[2026-06-12 10:58:42,105.105 INFO    ] Launching Daemon at Fri Jun 12 10:58:42 IST 2026
[2026-06-12 10:58:42,116.116 INFO    ] ================================================
[2026-06-12 10:58:42,497.497 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 10:58:42
[2026-06-12 10:58:42,839.839 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 10:58:42,993.993 INFO    ] Initializing speech engine...
[2026-06-12 10:58:42,998.998 INFO    ] 2026-06-12 10:58:42
[2026-06-12 10:58:43,210.210 INFO    ] 2026-06-12 10:58:43
[2026-06-12 10:58:43,240.240 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 10:58:43,428.428 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 10:58:43,438.438 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 10:58:43,567.567 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 10:58:43,635.635 INFO    ] time= 12/06/2026 10:58:43
[2026-06-12 10:58:43,660.660 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 10:58:43,667.667 INFO    ] Checking for existing commands in stream...
[2026-06-12 10:58:43,758.758 INFO    ] No existing commands found in stream
[2026-06-12 10:58:48,777.777 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 10:58:48,781.781 INFO    ] Waiting 1.01 seconds before fallback handling...
[2026-06-12 10:58:50,129.129 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 10:58:50,131.131 INFO    ] Checking for system updates...
[2026-06-12 10:58:50,152.152 INFO    ] 200
[2026-06-12 10:58:50,154.154 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:58:50,188.188 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 10:58:50,190.190 INFO    ] No update needed
[2026-06-12 10:58:50,191.191 INFO    ] Checking for camera pi updates...
[2026-06-12 10:58:50,213.213 INFO    ] 200
[2026-06-12 10:58:50,214.214 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:58:50,238.238 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 10:58:50,280.280 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 10:58:50,281.281 INFO    ] No camera update needed
[2026-06-12 10:58:50,283.283 INFO    ] Script finished. Safe exiting...
[2026-06-12 10:58:50,284.284 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 10:58:50,287.287 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 10:58:50,290.290 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 10:58:52,330.330 INFO    ] ================================================
[2026-06-12 10:58:52,346.346 INFO    ] Launching Daemon at Fri Jun 12 10:58:52 IST 2026
[2026-06-12 10:58:52,357.357 INFO    ] ================================================
[2026-06-12 10:58:52,718.718 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 10:58:52
[2026-06-12 10:58:53,061.061 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 10:58:53,217.217 INFO    ] Initializing speech engine...
[2026-06-12 10:58:53,224.224 INFO    ] 2026-06-12 10:58:53
[2026-06-12 10:58:53,428.428 INFO    ] 2026-06-12 10:58:53
[2026-06-12 10:58:53,457.457 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 10:58:53,642.642 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 10:58:53,653.653 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 10:58:53,777.777 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 10:58:53,841.841 INFO    ] time= 12/06/2026 10:58:53
[2026-06-12 10:58:53,873.873 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 10:58:53,880.880 INFO    ] Checking for existing commands in stream...
[2026-06-12 10:58:53,970.970 INFO    ] No existing commands found in stream
[2026-06-12 10:58:58,985.985 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 10:58:58,988.988 INFO    ] Waiting 3.51 seconds before fallback handling...
[2026-06-12 10:59:02,825.825 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 10:59:02,826.826 INFO    ] Checking for system updates...
[2026-06-12 10:59:02,848.848 INFO    ] 200
[2026-06-12 10:59:02,851.851 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:59:02,892.892 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 10:59:02,893.893 INFO    ] No update needed
[2026-06-12 10:59:02,895.895 INFO    ] Checking for camera pi updates...
[2026-06-12 10:59:02,919.919 INFO    ] 200
[2026-06-12 10:59:02,921.921 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:59:02,948.948 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 10:59:02,974.974 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 10:59:02,975.975 INFO    ] No camera update needed
[2026-06-12 10:59:02,977.977 INFO    ] Script finished. Safe exiting...
[2026-06-12 10:59:02,978.978 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 10:59:02,981.981 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 10:59:02,984.984 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 10:59:05,026.026 INFO    ] ================================================
[2026-06-12 10:59:05,041.041 INFO    ] Launching Daemon at Fri Jun 12 10:59:05 IST 2026
[2026-06-12 10:59:05,052.052 INFO    ] ================================================
[2026-06-12 10:59:05,391.391 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 10:59:05
[2026-06-12 10:59:05,706.706 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 10:59:05,851.851 INFO    ] Initializing speech engine...
[2026-06-12 10:59:05,856.856 INFO    ] 2026-06-12 10:59:05
[2026-06-12 10:59:06,072.072 INFO    ] 2026-06-12 10:59:06
[2026-06-12 10:59:06,106.106 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 10:59:06,295.295 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 10:59:06,305.305 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 10:59:06,443.443 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 10:59:06,507.507 INFO    ] time= 12/06/2026 10:59:06
[2026-06-12 10:59:06,531.531 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 10:59:06,538.538 INFO    ] Checking for existing commands in stream...
[2026-06-12 10:59:06,630.630 INFO    ] No existing commands found in stream
[2026-06-12 10:59:11,645.645 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 10:59:11,648.648 INFO    ] Waiting 2.97 seconds before fallback handling...
[2026-06-12 10:59:17,247.247 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 10:59:17,251.251 INFO    ] Checking for system updates...
[2026-06-12 10:59:17,290.290 INFO    ] 200
[2026-06-12 10:59:17,293.293 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:59:17,347.347 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 10:59:17,350.350 INFO    ] No update needed
[2026-06-12 10:59:17,353.353 INFO    ] Checking for camera pi updates...
[2026-06-12 10:59:17,388.388 INFO    ] 200
[2026-06-12 10:59:17,391.391 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:59:17,434.434 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 10:59:17,477.477 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 10:59:17,480.480 INFO    ] No camera update needed
[2026-06-12 10:59:17,483.483 INFO    ] Script finished. Safe exiting...
[2026-06-12 10:59:17,485.485 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 10:59:17,492.492 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 10:59:17,498.498 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 10:59:19,539.539 INFO    ] ================================================
[2026-06-12 10:59:19,556.556 INFO    ] Launching Daemon at Fri Jun 12 10:59:19 IST 2026
[2026-06-12 10:59:19,566.566 INFO    ] ================================================
[2026-06-12 10:59:19,894.894 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 10:59:19
[2026-06-12 10:59:20,206.206 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 10:59:20,339.339 INFO    ] Initializing speech engine...
[2026-06-12 10:59:20,353.353 INFO    ] 2026-06-12 10:59:20
[2026-06-12 10:59:20,561.561 INFO    ] 2026-06-12 10:59:20
[2026-06-12 10:59:20,590.590 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 10:59:20,776.776 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 10:59:20,780.780 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 10:59:20,910.910 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 10:59:20,966.966 INFO    ] time= 12/06/2026 10:59:20
[2026-06-12 10:59:21,001.001 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 10:59:21,012.012 INFO    ] Checking for existing commands in stream...
[2026-06-12 10:59:21,084.084 INFO    ] No existing commands found in stream
[2026-06-12 10:59:26,093.093 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 10:59:26,095.095 INFO    ] Waiting 0.74 seconds before fallback handling...
[2026-06-12 10:59:27,182.182 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 10:59:27,183.183 INFO    ] Checking for system updates...
[2026-06-12 10:59:27,204.204 INFO    ] 200
[2026-06-12 10:59:27,205.205 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:59:27,236.236 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 10:59:27,237.237 INFO    ] No update needed
[2026-06-12 10:59:27,239.239 INFO    ] Checking for camera pi updates...
[2026-06-12 10:59:27,267.267 INFO    ] 200
[2026-06-12 10:59:27,268.268 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:59:27,292.292 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 10:59:27,326.326 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 10:59:27,328.328 INFO    ] No camera update needed
[2026-06-12 10:59:27,329.329 INFO    ] Script finished. Safe exiting...
[2026-06-12 10:59:27,330.330 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 10:59:27,333.333 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 10:59:27,336.336 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 10:59:29,376.376 INFO    ] ================================================
[2026-06-12 10:59:29,391.391 INFO    ] Launching Daemon at Fri Jun 12 10:59:29 IST 2026
[2026-06-12 10:59:29,402.402 INFO    ] ================================================
[2026-06-12 10:59:29,731.731 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 10:59:29
[2026-06-12 10:59:30,052.052 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 10:59:30,196.196 INFO    ] Initializing speech engine...
[2026-06-12 10:59:30,201.201 INFO    ] 2026-06-12 10:59:30
[2026-06-12 10:59:30,404.404 INFO    ] 2026-06-12 10:59:30
[2026-06-12 10:59:30,433.433 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 10:59:30,617.617 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 10:59:30,627.627 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 10:59:30,750.750 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 10:59:30,815.815 INFO    ] time= 12/06/2026 10:59:30
[2026-06-12 10:59:30,845.845 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 10:59:30,850.850 INFO    ] Checking for existing commands in stream...
[2026-06-12 10:59:30,921.921 INFO    ] No existing commands found in stream
[2026-06-12 10:59:35,930.930 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 10:59:35,933.933 INFO    ] Waiting 1.25 seconds before fallback handling...
[2026-06-12 10:59:37,575.575 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 10:59:37,577.577 INFO    ] Checking for system updates...
[2026-06-12 10:59:37,598.598 INFO    ] 200
[2026-06-12 10:59:37,599.599 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:59:37,630.630 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 10:59:37,632.632 INFO    ] No update needed
[2026-06-12 10:59:37,633.633 INFO    ] Checking for camera pi updates...
[2026-06-12 10:59:37,653.653 INFO    ] 200
[2026-06-12 10:59:37,654.654 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:59:37,678.678 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 10:59:37,713.713 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 10:59:37,715.715 INFO    ] No camera update needed
[2026-06-12 10:59:37,716.716 INFO    ] Script finished. Safe exiting...
[2026-06-12 10:59:37,718.718 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 10:59:37,721.721 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 10:59:37,724.724 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 10:59:39,764.764 INFO    ] ================================================
[2026-06-12 10:59:39,779.779 INFO    ] Launching Daemon at Fri Jun 12 10:59:39 IST 2026
[2026-06-12 10:59:39,790.790 INFO    ] ================================================
[2026-06-12 10:59:40,137.137 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 10:59:40
[2026-06-12 10:59:40,456.456 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 10:59:40,592.592 INFO    ] Initializing speech engine...
[2026-06-12 10:59:40,595.595 INFO    ] 2026-06-12 10:59:40
[2026-06-12 10:59:40,792.792 INFO    ] 2026-06-12 10:59:40
[2026-06-12 10:59:40,838.838 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 10:59:40,997.997 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 10:59:41,041.041 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 10:59:41,168.168 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 10:59:41,185.185 INFO    ] time= 12/06/2026 10:59:41
[2026-06-12 10:59:41,212.212 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 10:59:41,278.278 INFO    ] Checking for existing commands in stream...
[2026-06-12 10:59:41,371.371 INFO    ] No existing commands found in stream
[2026-06-12 10:59:46,382.382 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 10:59:46,384.384 INFO    ] Waiting 1.78 seconds before fallback handling...
[2026-06-12 10:59:48,514.514 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 10:59:48,516.516 INFO    ] Checking for system updates...
[2026-06-12 10:59:48,537.537 INFO    ] 200
[2026-06-12 10:59:48,538.538 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:59:48,569.569 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 10:59:48,570.570 INFO    ] No update needed
[2026-06-12 10:59:48,572.572 INFO    ] Checking for camera pi updates...
[2026-06-12 10:59:48,592.592 INFO    ] 200
[2026-06-12 10:59:48,593.593 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 10:59:48,616.616 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 10:59:48,656.656 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 10:59:48,657.657 INFO    ] No camera update needed
[2026-06-12 10:59:48,658.658 INFO    ] Script finished. Safe exiting...
[2026-06-12 10:59:48,660.660 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 10:59:48,663.663 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 10:59:48,666.666 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 10:59:50,704.704 INFO    ] ================================================
[2026-06-12 10:59:50,720.720 INFO    ] Launching Daemon at Fri Jun 12 10:59:50 IST 2026
[2026-06-12 10:59:50,731.731 INFO    ] ================================================
[2026-06-12 10:59:51,095.095 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 10:59:51
[2026-06-12 10:59:51,411.411 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 10:59:51,550.550 INFO    ] Initializing speech engine...
[2026-06-12 10:59:51,560.560 INFO    ] 2026-06-12 10:59:51
[2026-06-12 10:59:51,764.764 INFO    ] 2026-06-12 10:59:51
[2026-06-12 10:59:51,792.792 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 10:59:51,976.976 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 10:59:51,986.986 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 10:59:52,113.113 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 10:59:52,167.167 INFO    ] time= 12/06/2026 10:59:52
[2026-06-12 10:59:52,200.200 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 10:59:52,205.205 INFO    ] Checking for existing commands in stream...
[2026-06-12 10:59:52,300.300 INFO    ] No existing commands found in stream
[2026-06-12 10:59:57,309.309 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 10:59:57,312.312 INFO    ] Waiting 3.79 seconds before fallback handling...
[2026-06-12 11:00:01,836.836 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 11:00:01,838.838 INFO    ] Checking for system updates...
[2026-06-12 11:00:01,966.966 INFO    ] 200
[2026-06-12 11:00:01,968.968 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:00:02,195.195 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 11:00:02,197.197 INFO    ] No update needed
[2026-06-12 11:00:02,199.199 INFO    ] Checking for camera pi updates...
[2026-06-12 11:00:02,282.282 INFO    ] 200
[2026-06-12 11:00:02,284.284 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:00:02,472.472 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 11:00:02,668.668 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 11:00:02,671.671 INFO    ] No camera update needed
[2026-06-12 11:00:02,674.674 INFO    ] Script finished. Safe exiting...
[2026-06-12 11:00:02,676.676 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 11:00:02,702.702 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 11:00:02,708.708 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 11:00:04,758.758 INFO    ] ================================================
[2026-06-12 11:00:04,774.774 INFO    ] Launching Daemon at Fri Jun 12 11:00:04 IST 2026
[2026-06-12 11:00:04,786.786 INFO    ] ================================================
[2026-06-12 11:00:05,144.144 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 11:00:05
[2026-06-12 11:00:05,457.457 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 11:00:05,601.601 INFO    ] Initializing speech engine...
[2026-06-12 11:00:05,607.607 INFO    ] 2026-06-12 11:00:05
[2026-06-12 11:00:05,811.811 INFO    ] 2026-06-12 11:00:05
[2026-06-12 11:00:05,839.839 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 11:00:05,970.970 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 11:00:06,030.030 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 11:00:06,168.168 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 11:00:06,234.234 INFO    ] time= 12/06/2026 11:00:06
[2026-06-12 11:00:06,263.263 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 11:00:06,265.265 INFO    ] Checking for existing commands in stream...
[2026-06-12 11:00:06,354.354 INFO    ] No existing commands found in stream
[2026-06-12 11:00:11,366.366 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 11:00:11,369.369 INFO    ] Waiting 3.88 seconds before fallback handling...
[2026-06-12 11:00:15,597.597 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 11:00:15,599.599 INFO    ] Checking for system updates...
[2026-06-12 11:00:15,620.620 INFO    ] 200
[2026-06-12 11:00:15,621.621 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:00:15,655.655 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 11:00:15,656.656 INFO    ] No update needed
[2026-06-12 11:00:15,657.657 INFO    ] Checking for camera pi updates...
[2026-06-12 11:00:15,677.677 INFO    ] 200
[2026-06-12 11:00:15,678.678 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:00:15,703.703 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 11:00:15,740.740 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 11:00:15,742.742 INFO    ] No camera update needed
[2026-06-12 11:00:15,743.743 INFO    ] Script finished. Safe exiting...
[2026-06-12 11:00:15,744.744 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 11:00:15,747.747 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 11:00:15,750.750 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 11:00:17,790.790 INFO    ] ================================================
[2026-06-12 11:00:17,806.806 INFO    ] Launching Daemon at Fri Jun 12 11:00:17 IST 2026
[2026-06-12 11:00:17,817.817 INFO    ] ================================================
[2026-06-12 11:00:18,182.182 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 11:00:18
[2026-06-12 11:00:18,495.495 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 11:00:18,638.638 INFO    ] Initializing speech engine...
[2026-06-12 11:00:18,644.644 INFO    ] 2026-06-12 11:00:18
[2026-06-12 11:00:18,849.849 INFO    ] 2026-06-12 11:00:18
[2026-06-12 11:00:18,879.879 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 11:00:19,066.066 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 11:00:19,075.075 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 11:00:19,201.201 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 11:00:19,262.262 INFO    ] time= 12/06/2026 11:00:19
[2026-06-12 11:00:19,293.293 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 11:00:19,305.305 INFO    ] Checking for existing commands in stream...
[2026-06-12 11:00:19,403.403 INFO    ] No existing commands found in stream
[2026-06-12 11:00:24,427.427 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 11:00:24,429.429 INFO    ] Waiting 2.21 seconds before fallback handling...
[2026-06-12 11:00:27,020.020 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 11:00:27,022.022 INFO    ] Checking for system updates...
[2026-06-12 11:00:27,042.042 INFO    ] 200
[2026-06-12 11:00:27,044.044 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:00:27,074.074 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 11:00:27,075.075 INFO    ] No update needed
[2026-06-12 11:00:27,077.077 INFO    ] Checking for camera pi updates...
[2026-06-12 11:00:27,096.096 INFO    ] 200
[2026-06-12 11:00:27,097.097 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:00:27,121.121 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 11:00:27,166.166 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 11:00:27,167.167 INFO    ] No camera update needed
[2026-06-12 11:00:27,168.168 INFO    ] Script finished. Safe exiting...
[2026-06-12 11:00:27,169.169 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 11:00:27,173.173 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 11:00:27,175.175 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 11:00:29,219.219 INFO    ] ================================================
[2026-06-12 11:00:29,235.235 INFO    ] Launching Daemon at Fri Jun 12 11:00:29 IST 2026
[2026-06-12 11:00:29,247.247 INFO    ] ================================================
[2026-06-12 11:00:29,610.610 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 11:00:29
[2026-06-12 11:00:29,921.921 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 11:00:30,052.052 INFO    ] Initializing speech engine...
[2026-06-12 11:00:30,060.060 INFO    ] 2026-06-12 11:00:30
[2026-06-12 11:00:30,271.271 INFO    ] 2026-06-12 11:00:30
[2026-06-12 11:00:30,299.299 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 11:00:30,434.434 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 11:00:30,486.486 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 11:00:30,617.617 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 11:00:30,682.682 INFO    ] time= 12/06/2026 11:00:30
[2026-06-12 11:00:30,714.714 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 11:00:30,716.716 INFO    ] Checking for existing commands in stream...
[2026-06-12 11:00:30,788.788 INFO    ] No existing commands found in stream
[2026-06-12 11:00:35,812.812 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 11:00:35,815.815 INFO    ] Waiting 3.03 seconds before fallback handling...
[2026-06-12 11:00:39,224.224 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 11:00:39,225.225 INFO    ] Checking for system updates...
[2026-06-12 11:00:39,246.246 INFO    ] 200
[2026-06-12 11:00:39,248.248 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:00:39,278.278 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 11:00:39,279.279 INFO    ] No update needed
[2026-06-12 11:00:39,281.281 INFO    ] Checking for camera pi updates...
[2026-06-12 11:00:39,304.304 INFO    ] 200
[2026-06-12 11:00:39,305.305 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:00:39,328.328 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 11:00:39,364.364 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 11:00:39,365.365 INFO    ] No camera update needed
[2026-06-12 11:00:39,366.366 INFO    ] Script finished. Safe exiting...
[2026-06-12 11:00:39,368.368 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 11:00:39,371.371 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 11:00:39,374.374 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 11:00:41,412.412 INFO    ] ================================================
[2026-06-12 11:00:41,429.429 INFO    ] Launching Daemon at Fri Jun 12 11:00:41 IST 2026
[2026-06-12 11:00:41,440.440 INFO    ] ================================================
[2026-06-12 11:00:41,782.782 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 11:00:41
[2026-06-12 11:00:42,103.103 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 11:00:42,242.242 INFO    ] Initializing speech engine...
[2026-06-12 11:00:42,252.252 INFO    ] 2026-06-12 11:00:42
[2026-06-12 11:00:42,458.458 INFO    ] 2026-06-12 11:00:42
[2026-06-12 11:00:42,487.487 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 11:00:42,673.673 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 11:00:42,683.683 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 11:00:42,804.804 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 11:00:42,855.855 INFO    ] time= 12/06/2026 11:00:42
[2026-06-12 11:00:42,889.889 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 11:00:42,905.905 INFO    ] Checking for existing commands in stream...
[2026-06-12 11:00:43,022.022 INFO    ] No existing commands found in stream
[2026-06-12 11:00:48,032.032 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 11:00:48,035.035 INFO    ] Waiting 3.90 seconds before fallback handling...
[2026-06-12 11:00:52,325.325 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 11:00:52,327.327 INFO    ] Checking for system updates...
[2026-06-12 11:00:52,347.347 INFO    ] 200
[2026-06-12 11:00:52,348.348 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:00:52,379.379 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 11:00:52,381.381 INFO    ] No update needed
[2026-06-12 11:00:52,382.382 INFO    ] Checking for camera pi updates...
[2026-06-12 11:00:52,403.403 INFO    ] 200
[2026-06-12 11:00:52,405.405 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:00:52,428.428 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 11:00:52,464.464 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 11:00:52,466.466 INFO    ] No camera update needed
[2026-06-12 11:00:52,467.467 INFO    ] Script finished. Safe exiting...
[2026-06-12 11:00:52,468.468 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 11:00:52,472.472 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 11:00:52,474.474 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 11:00:54,516.516 INFO    ] ================================================
[2026-06-12 11:00:54,533.533 INFO    ] Launching Daemon at Fri Jun 12 11:00:54 IST 2026
[2026-06-12 11:00:54,544.544 INFO    ] ================================================
[2026-06-12 11:00:54,866.866 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 11:00:54
[2026-06-12 11:00:55,178.178 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 11:00:55,314.314 INFO    ] Initializing speech engine...
[2026-06-12 11:00:55,319.319 INFO    ] 2026-06-12 11:00:55
[2026-06-12 11:00:55,528.528 INFO    ] 2026-06-12 11:00:55
[2026-06-12 11:00:55,557.557 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 11:00:55,719.719 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 11:00:55,757.757 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 11:00:55,894.894 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 11:00:55,934.934 INFO    ] time= 12/06/2026 11:00:55
[2026-06-12 11:00:55,980.980 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 11:00:56,020.020 INFO    ] Checking for existing commands in stream...
[2026-06-12 11:00:56,120.120 INFO    ] No existing commands found in stream
[2026-06-12 11:01:01,132.132 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 11:01:01,136.136 INFO    ] Waiting 1.89 seconds before fallback handling...
[2026-06-12 11:01:03,380.380 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 11:01:03,381.381 INFO    ] Checking for system updates...
[2026-06-12 11:01:03,402.402 INFO    ] 200
[2026-06-12 11:01:03,403.403 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:01:03,434.434 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 11:01:03,435.435 INFO    ] No update needed
[2026-06-12 11:01:03,436.436 INFO    ] Checking for camera pi updates...
[2026-06-12 11:01:03,457.457 INFO    ] 200
[2026-06-12 11:01:03,459.459 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:01:03,484.484 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 11:01:03,622.622 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 11:01:03,623.623 INFO    ] No camera update needed
[2026-06-12 11:01:03,625.625 INFO    ] Script finished. Safe exiting...
[2026-06-12 11:01:03,626.626 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 11:01:03,629.629 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 11:01:03,632.632 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 11:01:05,673.673 INFO    ] ================================================
[2026-06-12 11:01:05,690.690 INFO    ] Launching Daemon at Fri Jun 12 11:01:05 IST 2026
[2026-06-12 11:01:05,701.701 INFO    ] ================================================
[2026-06-12 11:01:06,062.062 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 11:01:06
[2026-06-12 11:01:06,382.382 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 11:01:06,523.523 INFO    ] Initializing speech engine...
[2026-06-12 11:01:06,534.534 INFO    ] 2026-06-12 11:01:06
[2026-06-12 11:01:06,740.740 INFO    ] 2026-06-12 11:01:06
[2026-06-12 11:01:06,768.768 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 11:01:06,890.890 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 11:01:06,953.953 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 11:01:07,085.085 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 11:01:07,140.140 INFO    ] time= 12/06/2026 11:01:07
[2026-06-12 11:01:07,180.180 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 11:01:07,185.185 INFO    ] Checking for existing commands in stream...
[2026-06-12 11:01:07,258.258 INFO    ] No existing commands found in stream
[2026-06-12 11:01:12,272.272 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 11:01:12,275.275 INFO    ] Waiting 3.27 seconds before fallback handling...
[2026-06-12 11:01:15,910.910 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 11:01:15,912.912 INFO    ] Checking for system updates...
[2026-06-12 11:01:15,934.934 INFO    ] 200
[2026-06-12 11:01:15,935.935 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:01:15,968.968 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 11:01:15,970.970 INFO    ] No update needed
[2026-06-12 11:01:15,971.971 INFO    ] Checking for camera pi updates...
[2026-06-12 11:01:15,991.991 INFO    ] 200
[2026-06-12 11:01:15,993.993 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:01:16,016.016 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 11:01:16,054.054 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 11:01:16,055.055 INFO    ] No camera update needed
[2026-06-12 11:01:16,057.057 INFO    ] Script finished. Safe exiting...
[2026-06-12 11:01:16,058.058 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 11:01:16,061.061 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 11:01:16,064.064 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 11:01:18,105.105 INFO    ] ================================================
[2026-06-12 11:01:18,121.121 INFO    ] Launching Daemon at Fri Jun 12 11:01:18 IST 2026
[2026-06-12 11:01:18,133.133 INFO    ] ================================================
[2026-06-12 11:01:18,486.486 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 11:01:18
[2026-06-12 11:01:18,801.801 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 11:01:18,944.944 INFO    ] Initializing speech engine...
[2026-06-12 11:01:18,949.949 INFO    ] 2026-06-12 11:01:18
[2026-06-12 11:01:19,157.157 INFO    ] 2026-06-12 11:01:19
[2026-06-12 11:01:19,186.186 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 11:01:19,373.373 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 11:01:19,382.382 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 11:01:19,514.514 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 11:01:19,578.578 INFO    ] time= 12/06/2026 11:01:19
[2026-06-12 11:01:19,606.606 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 11:01:19,612.612 INFO    ] Checking for existing commands in stream...
[2026-06-12 11:01:19,705.705 INFO    ] No existing commands found in stream
[2026-06-12 11:01:24,711.711 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 11:01:24,713.713 INFO    ] Waiting 2.18 seconds before fallback handling...
[2026-06-12 11:01:27,256.256 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 11:01:27,258.258 INFO    ] Checking for system updates...
[2026-06-12 11:01:27,278.278 INFO    ] 200
[2026-06-12 11:01:27,280.280 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:01:27,313.313 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 11:01:27,314.314 INFO    ] No update needed
[2026-06-12 11:01:27,316.316 INFO    ] Checking for camera pi updates...
[2026-06-12 11:01:27,335.335 INFO    ] 200
[2026-06-12 11:01:27,337.337 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:01:27,360.360 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 11:01:27,402.402 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 11:01:27,404.404 INFO    ] No camera update needed
[2026-06-12 11:01:27,405.405 INFO    ] Script finished. Safe exiting...
[2026-06-12 11:01:27,406.406 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 11:01:27,409.409 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 11:01:27,412.412 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 11:01:29,454.454 INFO    ] ================================================
[2026-06-12 11:01:29,469.469 INFO    ] Launching Daemon at Fri Jun 12 11:01:29 IST 2026
[2026-06-12 11:01:29,480.480 INFO    ] ================================================
[2026-06-12 11:01:29,832.832 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 11:01:29
[2026-06-12 11:01:30,149.149 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 11:01:30,289.289 INFO    ] Initializing speech engine...
[2026-06-12 11:01:30,297.297 INFO    ] 2026-06-12 11:01:30
[2026-06-12 11:01:30,497.497 INFO    ] 2026-06-12 11:01:30
[2026-06-12 11:01:30,530.530 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 11:01:30,665.665 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 11:01:30,666.666 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 11:01:30,772.772 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 11:01:30,773.773 INFO    ] time= 12/06/2026 11:01:30
[2026-06-12 11:01:30,775.775 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 11:01:30,776.776 INFO    ] Checking for existing commands in stream...
[2026-06-12 11:01:30,884.884 INFO    ] No existing commands found in stream
[2026-06-12 11:01:35,900.900 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 11:01:35,903.903 INFO    ] Waiting 3.93 seconds before fallback handling...
[2026-06-12 11:01:40,173.173 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 11:01:40,175.175 INFO    ] Checking for system updates...
[2026-06-12 11:01:40,196.196 INFO    ] 200
[2026-06-12 11:01:40,197.197 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:01:40,230.230 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 11:01:40,232.232 INFO    ] No update needed
[2026-06-12 11:01:40,233.233 INFO    ] Checking for camera pi updates...
[2026-06-12 11:01:40,254.254 INFO    ] 200
[2026-06-12 11:01:40,255.255 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:01:40,279.279 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 11:01:40,317.317 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 11:01:40,318.318 INFO    ] No camera update needed
[2026-06-12 11:01:40,320.320 INFO    ] Script finished. Safe exiting...
[2026-06-12 11:01:40,321.321 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 11:01:40,324.324 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 11:01:40,327.327 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 11:01:42,367.367 INFO    ] ================================================
[2026-06-12 11:01:42,383.383 INFO    ] Launching Daemon at Fri Jun 12 11:01:42 IST 2026
[2026-06-12 11:01:42,394.394 INFO    ] ================================================
[2026-06-12 11:01:42,761.761 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 11:01:42
[2026-06-12 11:01:43,081.081 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 11:01:43,212.212 INFO    ] Initializing speech engine...
[2026-06-12 11:01:43,215.215 INFO    ] 2026-06-12 11:01:43
[2026-06-12 11:01:43,432.432 INFO    ] 2026-06-12 11:01:43
[2026-06-12 11:01:43,461.461 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 11:01:43,644.644 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 11:01:43,647.647 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 11:01:43,775.775 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 11:01:43,834.834 INFO    ] time= 12/06/2026 11:01:43
[2026-06-12 11:01:43,871.871 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 11:01:43,880.880 INFO    ] Checking for existing commands in stream...
[2026-06-12 11:01:43,947.947 INFO    ] No existing commands found in stream
[2026-06-12 11:01:48,956.956 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 11:01:48,959.959 INFO    ] Waiting 2.99 seconds before fallback handling...
[2026-06-12 11:01:52,405.405 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 11:01:52,407.407 INFO    ] Checking for system updates...
[2026-06-12 11:01:52,429.429 INFO    ] 200
[2026-06-12 11:01:52,431.431 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:01:52,461.461 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 11:01:52,462.462 INFO    ] No update needed
[2026-06-12 11:01:52,463.463 INFO    ] Checking for camera pi updates...
[2026-06-12 11:01:52,483.483 INFO    ] 200
[2026-06-12 11:01:52,484.484 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:01:52,507.507 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 11:01:52,552.552 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 11:01:52,553.553 INFO    ] No camera update needed
[2026-06-12 11:01:52,555.555 INFO    ] Script finished. Safe exiting...
[2026-06-12 11:01:52,556.556 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 11:01:52,559.559 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 11:01:52,562.562 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 11:01:54,603.603 INFO    ] ================================================
[2026-06-12 11:01:54,619.619 INFO    ] Launching Daemon at Fri Jun 12 11:01:54 IST 2026
[2026-06-12 11:01:54,632.632 INFO    ] ================================================
[2026-06-12 11:01:54,991.991 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 11:01:54
[2026-06-12 11:01:55,303.303 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 11:01:55,449.449 INFO    ] Initializing speech engine...
[2026-06-12 11:01:55,452.452 INFO    ] 2026-06-12 11:01:55
[2026-06-12 11:01:55,655.655 INFO    ] 2026-06-12 11:01:55
[2026-06-12 11:01:55,683.683 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 11:01:55,867.867 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 11:01:55,876.876 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 11:01:56,004.004 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 11:01:56,071.071 INFO    ] time= 12/06/2026 11:01:56
[2026-06-12 11:01:56,095.095 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 11:01:56,101.101 INFO    ] Checking for existing commands in stream...
[2026-06-12 11:01:56,191.191 INFO    ] No existing commands found in stream
[2026-06-12 11:02:01,200.200 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 11:02:01,203.203 INFO    ] Waiting 1.20 seconds before fallback handling...
[2026-06-12 11:02:02,712.712 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 11:02:02,713.713 INFO    ] Checking for system updates...
[2026-06-12 11:02:02,734.734 INFO    ] 200
[2026-06-12 11:02:02,736.736 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:02:02,767.767 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 11:02:02,769.769 INFO    ] No update needed
[2026-06-12 11:02:02,770.770 INFO    ] Checking for camera pi updates...
[2026-06-12 11:02:02,790.790 INFO    ] 200
[2026-06-12 11:02:02,792.792 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:02:02,815.815 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 11:02:02,837.837 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 11:02:02,838.838 INFO    ] No camera update needed
[2026-06-12 11:02:02,841.841 INFO    ] Script finished. Safe exiting...
[2026-06-12 11:02:02,844.844 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 11:02:02,855.855 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 11:02:02,861.861 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 11:02:04,905.905 INFO    ] ================================================
[2026-06-12 11:02:04,921.921 INFO    ] Launching Daemon at Fri Jun 12 11:02:04 IST 2026
[2026-06-12 11:02:04,932.932 INFO    ] ================================================
[2026-06-12 11:02:05,253.253 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 11:02:05
[2026-06-12 11:02:05,582.582 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 11:02:05,724.724 INFO    ] Initializing speech engine...
[2026-06-12 11:02:05,729.729 INFO    ] 2026-06-12 11:02:05
[2026-06-12 11:02:05,932.932 INFO    ] 2026-06-12 11:02:05
[2026-06-12 11:02:05,961.961 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 11:02:06,145.145 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 11:02:06,154.154 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 11:02:06,283.283 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 11:02:06,349.349 INFO    ] time= 12/06/2026 11:02:06
[2026-06-12 11:02:06,374.374 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 11:02:06,380.380 INFO    ] Checking for existing commands in stream...
[2026-06-12 11:02:06,446.446 INFO    ] No existing commands found in stream
[2026-06-12 11:02:11,456.456 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 11:02:11,459.459 INFO    ] Waiting 1.83 seconds before fallback handling...
[2026-06-12 11:02:13,655.655 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 11:02:13,656.656 INFO    ] Checking for system updates...
[2026-06-12 11:02:13,677.677 INFO    ] 200
[2026-06-12 11:02:13,679.679 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:02:13,713.713 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 11:02:13,714.714 INFO    ] No update needed
[2026-06-12 11:02:13,716.716 INFO    ] Checking for camera pi updates...
[2026-06-12 11:02:13,736.736 INFO    ] 200
[2026-06-12 11:02:13,737.737 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:02:13,763.763 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 11:02:13,808.808 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 11:02:13,809.809 INFO    ] No camera update needed
[2026-06-12 11:02:13,811.811 INFO    ] Script finished. Safe exiting...
[2026-06-12 11:02:13,812.812 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 11:02:13,816.816 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 11:02:13,819.819 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 11:02:15,859.859 INFO    ] ================================================
[2026-06-12 11:02:15,882.882 INFO    ] Launching Daemon at Fri Jun 12 11:02:15 IST 2026
[2026-06-12 11:02:15,892.892 INFO    ] ================================================
[2026-06-12 11:02:16,241.241 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 11:02:16
[2026-06-12 11:02:16,554.554 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 11:02:16,687.687 INFO    ] Initializing speech engine...
[2026-06-12 11:02:16,692.692 INFO    ] 2026-06-12 11:02:16
[2026-06-12 11:02:16,890.890 INFO    ] 2026-06-12 11:02:16
[2026-06-12 11:02:16,930.930 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 11:02:17,091.091 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 11:02:17,119.119 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 11:02:17,281.281 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 11:02:17,306.306 INFO    ] time= 12/06/2026 11:02:17
[2026-06-12 11:02:17,363.363 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 11:02:17,413.413 INFO    ] Checking for existing commands in stream...
[2026-06-12 11:02:17,490.490 INFO    ] No existing commands found in stream
[2026-06-12 11:02:22,501.501 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 11:02:22,504.504 INFO    ] Waiting 1.73 seconds before fallback handling...
[2026-06-12 11:02:24,599.599 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 11:02:24,601.601 INFO    ] Checking for system updates...
[2026-06-12 11:02:24,622.622 INFO    ] 200
[2026-06-12 11:02:24,623.623 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:02:24,654.654 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 11:02:24,655.655 INFO    ] No update needed
[2026-06-12 11:02:24,657.657 INFO    ] Checking for camera pi updates...
[2026-06-12 11:02:24,677.677 INFO    ] 200
[2026-06-12 11:02:24,678.678 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:02:24,705.705 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 11:02:24,746.746 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 11:02:24,748.748 INFO    ] No camera update needed
[2026-06-12 11:02:24,749.749 INFO    ] Script finished. Safe exiting...
[2026-06-12 11:02:24,751.751 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 11:02:24,754.754 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 11:02:24,757.757 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 11:02:26,790.790 INFO    ] ================================================
[2026-06-12 11:02:26,799.799 INFO    ] Launching Daemon at Fri Jun 12 11:02:26 IST 2026
[2026-06-12 11:02:26,806.806 INFO    ] ================================================
[2026-06-12 11:02:27,141.141 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 11:02:27
[2026-06-12 11:02:27,471.471 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 11:02:27,624.624 INFO    ] Initializing speech engine...
[2026-06-12 11:02:27,633.633 INFO    ] 2026-06-12 11:02:27
[2026-06-12 11:02:27,835.835 INFO    ] 2026-06-12 11:02:27
[2026-06-12 11:02:27,865.865 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 11:02:28,048.048 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 11:02:28,057.057 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 11:02:28,184.184 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 11:02:28,241.241 INFO    ] time= 12/06/2026 11:02:28
[2026-06-12 11:02:28,275.275 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 11:02:28,280.280 INFO    ] Checking for existing commands in stream...
[2026-06-12 11:02:28,353.353 INFO    ] No existing commands found in stream
[2026-06-12 11:02:33,362.362 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 11:02:33,364.364 INFO    ] Waiting 2.57 seconds before fallback handling...
[2026-06-12 11:02:36,293.293 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 11:02:36,295.295 INFO    ] Checking for system updates...
[2026-06-12 11:02:36,319.319 INFO    ] 200
[2026-06-12 11:02:36,321.321 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:02:36,351.351 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 11:02:36,353.353 INFO    ] No update needed
[2026-06-12 11:02:36,354.354 INFO    ] Checking for camera pi updates...
[2026-06-12 11:02:36,373.373 INFO    ] 200
[2026-06-12 11:02:36,375.375 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:02:36,400.400 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 11:02:36,443.443 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 11:02:36,444.444 INFO    ] No camera update needed
[2026-06-12 11:02:36,445.445 INFO    ] Script finished. Safe exiting...
[2026-06-12 11:02:36,447.447 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 11:02:36,450.450 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 11:02:36,453.453 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 11:02:38,492.492 INFO    ] ================================================
[2026-06-12 11:02:38,507.507 INFO    ] Launching Daemon at Fri Jun 12 11:02:38 IST 2026
[2026-06-12 11:02:38,518.518 INFO    ] ================================================
[2026-06-12 11:02:38,906.906 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 11:02:38
[2026-06-12 11:02:39,249.249 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 11:02:39,401.401 INFO    ] Initializing speech engine...
[2026-06-12 11:02:39,407.407 INFO    ] 2026-06-12 11:02:39
[2026-06-12 11:02:39,617.617 INFO    ] 2026-06-12 11:02:39
[2026-06-12 11:02:39,648.648 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 11:02:39,778.778 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 11:02:39,838.838 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 11:02:39,975.975 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 11:02:40,026.026 INFO    ] time= 12/06/2026 11:02:39
[2026-06-12 11:02:40,071.071 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 11:02:40,081.081 INFO    ] Checking for existing commands in stream...
[2026-06-12 11:02:40,148.148 INFO    ] No existing commands found in stream
[2026-06-12 11:02:45,167.167 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 11:02:45,171.171 INFO    ] Waiting 0.12 seconds before fallback handling...
[2026-06-12 11:02:45,637.637 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 11:02:45,639.639 INFO    ] Checking for system updates...
[2026-06-12 11:02:45,660.660 INFO    ] 200
[2026-06-12 11:02:45,662.662 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:02:45,692.692 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 11:02:45,694.694 INFO    ] No update needed
[2026-06-12 11:02:45,695.695 INFO    ] Checking for camera pi updates...
[2026-06-12 11:02:45,718.718 INFO    ] 200
[2026-06-12 11:02:45,720.720 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:02:45,745.745 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 11:02:45,787.787 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 11:02:45,788.788 INFO    ] No camera update needed
[2026-06-12 11:02:45,789.789 INFO    ] Script finished. Safe exiting...
[2026-06-12 11:02:45,791.791 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 11:02:45,794.794 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 11:02:45,796.796 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 11:02:47,829.829 INFO    ] ================================================
[2026-06-12 11:02:47,838.838 INFO    ] Launching Daemon at Fri Jun 12 11:02:47 IST 2026
[2026-06-12 11:02:47,845.845 INFO    ] ================================================
[2026-06-12 11:02:48,210.210 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 11:02:48
[2026-06-12 11:02:48,546.546 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 11:02:48,680.680 INFO    ] Initializing speech engine...
[2026-06-12 11:02:48,693.693 INFO    ] 2026-06-12 11:02:48
[2026-06-12 11:02:48,902.902 INFO    ] 2026-06-12 11:02:48
[2026-06-12 11:02:48,931.931 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 11:02:49,116.116 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 11:02:49,126.126 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 11:02:49,257.257 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 11:02:49,316.316 INFO    ] time= 12/06/2026 11:02:49
[2026-06-12 11:02:49,350.350 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 11:02:49,356.356 INFO    ] Checking for existing commands in stream...
[2026-06-12 11:02:49,423.423 INFO    ] No existing commands found in stream
[2026-06-12 11:02:54,432.432 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 11:02:54,435.435 INFO    ] Waiting 0.19 seconds before fallback handling...
[2026-06-12 11:02:55,000.000 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 11:02:55,002.002 INFO    ] Checking for system updates...
[2026-06-12 11:02:55,025.025 INFO    ] 200
[2026-06-12 11:02:55,026.026 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:02:55,062.062 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 11:02:55,064.064 INFO    ] No update needed
[2026-06-12 11:02:55,065.065 INFO    ] Checking for camera pi updates...
[2026-06-12 11:02:55,088.088 INFO    ] 200
[2026-06-12 11:02:55,089.089 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:02:55,113.113 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 11:02:55,138.138 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 11:02:55,139.139 INFO    ] No camera update needed
[2026-06-12 11:02:55,141.141 INFO    ] Script finished. Safe exiting...
[2026-06-12 11:02:55,142.142 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 11:02:55,146.146 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 11:02:55,149.149 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 11:02:57,189.189 INFO    ] ================================================
[2026-06-12 11:02:57,205.205 INFO    ] Launching Daemon at Fri Jun 12 11:02:57 IST 2026
[2026-06-12 11:02:57,216.216 INFO    ] ================================================
[2026-06-12 11:02:57,572.572 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 11:02:57
[2026-06-12 11:02:57,885.885 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 11:02:58,027.027 INFO    ] Initializing speech engine...
[2026-06-12 11:02:58,033.033 INFO    ] 2026-06-12 11:02:58
[2026-06-12 11:02:58,238.238 INFO    ] 2026-06-12 11:02:58
[2026-06-12 11:02:58,266.266 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 11:02:58,451.451 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 11:02:58,454.454 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 11:02:58,590.590 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 11:02:58,644.644 INFO    ] time= 12/06/2026 11:02:58
[2026-06-12 11:02:58,674.674 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 11:02:58,684.684 INFO    ] Checking for existing commands in stream...
[2026-06-12 11:02:58,755.755 INFO    ] No existing commands found in stream
[2026-06-12 11:03:03,769.769 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 11:03:03,772.772 INFO    ] Waiting 2.84 seconds before fallback handling...
[2026-06-12 11:03:06,978.978 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 11:03:06,979.979 INFO    ] Checking for system updates...
[2026-06-12 11:03:07,000.000 INFO    ] 200
[2026-06-12 11:03:07,001.001 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:03:07,036.036 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 11:03:07,037.037 INFO    ] No update needed
[2026-06-12 11:03:07,038.038 INFO    ] Checking for camera pi updates...
[2026-06-12 11:03:07,059.059 INFO    ] 200
[2026-06-12 11:03:07,060.060 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:03:07,084.084 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 11:03:07,233.233 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 11:03:07,234.234 INFO    ] No camera update needed
[2026-06-12 11:03:07,235.235 INFO    ] Script finished. Safe exiting...
[2026-06-12 11:03:07,237.237 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 11:03:07,240.240 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 11:03:07,242.242 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 11:03:09,282.282 INFO    ] ================================================
[2026-06-12 11:03:09,297.297 INFO    ] Launching Daemon at Fri Jun 12 11:03:09 IST 2026
[2026-06-12 11:03:09,308.308 INFO    ] ================================================
[2026-06-12 11:03:09,647.647 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 11:03:09
[2026-06-12 11:03:09,959.959 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 11:03:10,089.089 INFO    ] Initializing speech engine...
[2026-06-12 11:03:10,092.092 INFO    ] 2026-06-12 11:03:10
[2026-06-12 11:03:10,307.307 INFO    ] 2026-06-12 11:03:10
[2026-06-12 11:03:10,335.335 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 11:03:10,495.495 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 11:03:10,556.556 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 11:03:10,697.697 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 11:03:10,754.754 INFO    ] time= 12/06/2026 11:03:10
[2026-06-12 11:03:10,793.793 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 11:03:10,805.805 INFO    ] Checking for existing commands in stream...
[2026-06-12 11:03:10,907.907 INFO    ] No existing commands found in stream
[2026-06-12 11:03:15,921.921 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 11:03:15,924.924 INFO    ] Waiting 3.47 seconds before fallback handling...
[2026-06-12 11:03:19,757.757 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 11:03:19,759.759 INFO    ] Checking for system updates...
[2026-06-12 11:03:19,780.780 INFO    ] 200
[2026-06-12 11:03:19,782.782 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:03:19,812.812 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 11:03:19,813.813 INFO    ] No update needed
[2026-06-12 11:03:19,814.814 INFO    ] Checking for camera pi updates...
[2026-06-12 11:03:19,834.834 INFO    ] 200
[2026-06-12 11:03:19,835.835 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:03:19,858.858 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 11:03:19,896.896 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 11:03:19,897.897 INFO    ] No camera update needed
[2026-06-12 11:03:19,899.899 INFO    ] Script finished. Safe exiting...
[2026-06-12 11:03:19,900.900 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 11:03:19,903.903 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 11:03:19,906.906 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 11:03:21,944.944 INFO    ] ================================================
[2026-06-12 11:03:21,959.959 INFO    ] Launching Daemon at Fri Jun 12 11:03:21 IST 2026
[2026-06-12 11:03:21,970.970 INFO    ] ================================================
[2026-06-12 11:03:22,365.365 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 11:03:22
[2026-06-12 11:03:22,706.706 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 11:03:22,858.858 INFO    ] Initializing speech engine...
[2026-06-12 11:03:22,863.863 INFO    ] 2026-06-12 11:03:22
[2026-06-12 11:03:23,069.069 INFO    ] 2026-06-12 11:03:23
[2026-06-12 11:03:23,097.097 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 11:03:23,285.285 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 11:03:23,296.296 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 11:03:23,456.456 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 11:03:23,500.500 INFO    ] time= 12/06/2026 11:03:23
[2026-06-12 11:03:23,516.516 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 11:03:23,523.523 INFO    ] Checking for existing commands in stream...
[2026-06-12 11:03:23,590.590 INFO    ] No existing commands found in stream
[2026-06-12 11:03:28,614.614 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 11:03:28,618.618 INFO    ] Waiting 2.44 seconds before fallback handling...
[2026-06-12 11:03:31,454.454 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 11:03:31,455.455 INFO    ] Checking for system updates...
[2026-06-12 11:03:31,476.476 INFO    ] 200
[2026-06-12 11:03:31,478.478 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:03:31,508.508 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 11:03:31,510.510 INFO    ] No update needed
[2026-06-12 11:03:31,511.511 INFO    ] Checking for camera pi updates...
[2026-06-12 11:03:31,531.531 INFO    ] 200
[2026-06-12 11:03:31,533.533 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:03:31,556.556 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 11:03:31,601.601 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 11:03:31,603.603 INFO    ] No camera update needed
[2026-06-12 11:03:31,604.604 INFO    ] Script finished. Safe exiting...
[2026-06-12 11:03:31,609.609 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 11:03:31,614.614 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 11:03:31,618.618 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 11:03:33,650.650 INFO    ] ================================================
[2026-06-12 11:03:33,665.665 INFO    ] Launching Daemon at Fri Jun 12 11:03:33 IST 2026
[2026-06-12 11:03:33,676.676 INFO    ] ================================================
[2026-06-12 11:03:34,030.030 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 11:03:34
[2026-06-12 11:03:34,347.347 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 11:03:34,492.492 INFO    ] Initializing speech engine...
[2026-06-12 11:03:34,496.496 INFO    ] 2026-06-12 11:03:34
[2026-06-12 11:03:34,701.701 INFO    ] 2026-06-12 11:03:34
[2026-06-12 11:03:34,729.729 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 11:03:34,912.912 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 11:03:34,915.915 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 11:03:35,051.051 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 11:03:35,110.110 INFO    ] time= 12/06/2026 11:03:35
[2026-06-12 11:03:35,142.142 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 11:03:35,149.149 INFO    ] Checking for existing commands in stream...
[2026-06-12 11:03:35,214.214 INFO    ] No existing commands found in stream
[2026-06-12 11:03:40,224.224 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 11:03:40,227.227 INFO    ] Waiting 3.54 seconds before fallback handling...
[2026-06-12 11:03:44,146.146 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 11:03:44,148.148 INFO    ] Checking for system updates...
[2026-06-12 11:03:44,170.170 INFO    ] 200
[2026-06-12 11:03:44,172.172 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:03:44,204.204 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 11:03:44,206.206 INFO    ] No update needed
[2026-06-12 11:03:44,207.207 INFO    ] Checking for camera pi updates...
[2026-06-12 11:03:44,231.231 INFO    ] 200
[2026-06-12 11:03:44,232.232 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:03:44,257.257 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 11:03:44,298.298 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 11:03:44,300.300 INFO    ] No camera update needed
[2026-06-12 11:03:44,301.301 INFO    ] Script finished. Safe exiting...
[2026-06-12 11:03:44,303.303 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 11:03:44,306.306 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 11:03:44,309.309 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 11:03:46,347.347 INFO    ] ================================================
[2026-06-12 11:03:46,363.363 INFO    ] Launching Daemon at Fri Jun 12 11:03:46 IST 2026
[2026-06-12 11:03:46,373.373 INFO    ] ================================================
[2026-06-12 11:03:46,745.745 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 11:03:46
[2026-06-12 11:03:47,061.061 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 11:03:47,194.194 INFO    ] Initializing speech engine...
[2026-06-12 11:03:47,208.208 INFO    ] 2026-06-12 11:03:47
[2026-06-12 11:03:47,414.414 INFO    ] 2026-06-12 11:03:47
[2026-06-12 11:03:47,442.442 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 11:03:47,624.624 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 11:03:47,628.628 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 11:03:47,758.758 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 11:03:47,819.819 INFO    ] time= 12/06/2026 11:03:47
[2026-06-12 11:03:47,853.853 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 11:03:47,858.858 INFO    ] Checking for existing commands in stream...
[2026-06-12 11:03:47,930.930 INFO    ] No existing commands found in stream
[2026-06-12 11:03:52,939.939 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 11:03:52,942.942 INFO    ] Waiting 3.32 seconds before fallback handling...
[2026-06-12 11:03:56,643.643 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 11:03:56,644.644 INFO    ] Checking for system updates...
[2026-06-12 11:03:56,666.666 INFO    ] 200
[2026-06-12 11:03:56,667.667 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:03:56,699.699 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 11:03:56,701.701 INFO    ] No update needed
[2026-06-12 11:03:56,702.702 INFO    ] Checking for camera pi updates...
[2026-06-12 11:03:56,722.722 INFO    ] 200
[2026-06-12 11:03:56,724.724 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:03:56,747.747 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 11:03:56,783.783 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 11:03:56,784.784 INFO    ] No camera update needed
[2026-06-12 11:03:56,785.785 INFO    ] Script finished. Safe exiting...
[2026-06-12 11:03:56,787.787 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 11:03:56,790.790 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 11:03:56,792.792 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 11:03:58,832.832 INFO    ] ================================================
[2026-06-12 11:03:58,847.847 INFO    ] Launching Daemon at Fri Jun 12 11:03:58 IST 2026
[2026-06-12 11:03:58,858.858 INFO    ] ================================================
[2026-06-12 11:03:59,219.219 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 11:03:59
[2026-06-12 11:03:59,530.530 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 11:03:59,665.665 INFO    ] Initializing speech engine...
[2026-06-12 11:03:59,678.678 INFO    ] 2026-06-12 11:03:59
[2026-06-12 11:03:59,895.895 INFO    ] 2026-06-12 11:03:59
[2026-06-12 11:03:59,925.925 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 11:04:00,057.057 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 11:04:00,124.124 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 11:04:00,264.264 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 11:04:00,327.327 INFO    ] time= 12/06/2026 11:04:00
[2026-06-12 11:04:00,355.355 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 11:04:00,373.373 INFO    ] Checking for existing commands in stream...
[2026-06-12 11:04:00,475.475 INFO    ] No existing commands found in stream
[2026-06-12 11:04:05,484.484 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 11:04:05,486.486 INFO    ] Waiting 2.92 seconds before fallback handling...
[2026-06-12 11:04:08,830.830 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 11:04:08,831.831 INFO    ] Checking for system updates...
[2026-06-12 11:04:08,852.852 INFO    ] 200
[2026-06-12 11:04:08,854.854 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:04:08,884.884 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 11:04:08,885.885 INFO    ] No update needed
[2026-06-12 11:04:08,886.886 INFO    ] Checking for camera pi updates...
[2026-06-12 11:04:08,906.906 INFO    ] 200
[2026-06-12 11:04:08,907.907 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:04:08,932.932 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 11:04:08,972.972 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 11:04:08,973.973 INFO    ] No camera update needed
[2026-06-12 11:04:08,974.974 INFO    ] Script finished. Safe exiting...
[2026-06-12 11:04:08,976.976 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 11:04:08,979.979 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 11:04:08,982.982 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 11:04:11,020.020 INFO    ] ================================================
[2026-06-12 11:04:11,036.036 INFO    ] Launching Daemon at Fri Jun 12 11:04:11 IST 2026
[2026-06-12 11:04:11,047.047 INFO    ] ================================================
[2026-06-12 11:04:11,412.412 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 11:04:11
[2026-06-12 11:04:11,729.729 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 11:04:11,874.874 INFO    ] Initializing speech engine...
[2026-06-12 11:04:11,880.880 INFO    ] 2026-06-12 11:04:11
[2026-06-12 11:04:12,083.083 INFO    ] 2026-06-12 11:04:12
[2026-06-12 11:04:12,112.112 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 11:04:12,295.295 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 11:04:12,299.299 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 11:04:12,433.433 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 11:04:12,492.492 INFO    ] time= 12/06/2026 11:04:12
[2026-06-12 11:04:12,525.525 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 11:04:12,531.531 INFO    ] Checking for existing commands in stream...
[2026-06-12 11:04:12,596.596 INFO    ] No existing commands found in stream
[2026-06-12 11:04:17,602.602 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 11:04:17,605.605 INFO    ] Waiting 1.39 seconds before fallback handling...
[2026-06-12 11:04:19,329.329 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 11:04:19,330.330 INFO    ] Checking for system updates...
[2026-06-12 11:04:19,352.352 INFO    ] 200
[2026-06-12 11:04:19,354.354 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:04:19,389.389 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 11:04:19,391.391 INFO    ] No update needed
[2026-06-12 11:04:19,393.393 INFO    ] Checking for camera pi updates...
[2026-06-12 11:04:19,413.413 INFO    ] 200
[2026-06-12 11:04:19,415.415 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:04:19,438.438 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 11:04:19,482.482 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 11:04:19,484.484 INFO    ] No camera update needed
[2026-06-12 11:04:19,485.485 INFO    ] Script finished. Safe exiting...
[2026-06-12 11:04:19,486.486 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 11:04:19,628.628 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 11:04:19,632.632 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 11:04:21,672.672 INFO    ] ================================================
[2026-06-12 11:04:21,688.688 INFO    ] Launching Daemon at Fri Jun 12 11:04:21 IST 2026
[2026-06-12 11:04:21,698.698 INFO    ] ================================================
[2026-06-12 11:04:22,054.054 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 11:04:22
[2026-06-12 11:04:22,365.365 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 11:04:22,500.500 INFO    ] Initializing speech engine...
[2026-06-12 11:04:22,509.509 INFO    ] 2026-06-12 11:04:22
[2026-06-12 11:04:22,713.713 INFO    ] 2026-06-12 11:04:22
[2026-06-12 11:04:22,742.742 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 11:04:22,924.924 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 11:04:22,933.933 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 11:04:23,061.061 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 11:04:23,128.128 INFO    ] time= 12/06/2026 11:04:23
[2026-06-12 11:04:23,152.152 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 11:04:23,154.154 INFO    ] Checking for existing commands in stream...
[2026-06-12 11:04:23,224.224 INFO    ] No existing commands found in stream
[2026-06-12 11:04:28,233.233 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 11:04:28,236.236 INFO    ] Waiting 3.16 seconds before fallback handling...
[2026-06-12 11:04:31,770.770 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 11:04:31,772.772 INFO    ] Checking for system updates...
[2026-06-12 11:04:31,797.797 INFO    ] 200
[2026-06-12 11:04:31,799.799 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:04:31,841.841 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 11:04:31,843.843 INFO    ] No update needed
[2026-06-12 11:04:31,845.845 INFO    ] Checking for camera pi updates...
[2026-06-12 11:04:31,866.866 INFO    ] 200
[2026-06-12 11:04:31,868.868 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:04:31,895.895 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 11:04:31,923.923 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 11:04:31,924.924 INFO    ] No camera update needed
[2026-06-12 11:04:31,926.926 INFO    ] Script finished. Safe exiting...
[2026-06-12 11:04:31,927.927 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 11:04:31,931.931 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 11:04:31,934.934 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 11:04:33,966.966 INFO    ] ================================================
[2026-06-12 11:04:33,982.982 INFO    ] Launching Daemon at Fri Jun 12 11:04:33 IST 2026
[2026-06-12 11:04:33,992.992 INFO    ] ================================================
[2026-06-12 11:04:34,339.339 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 11:04:34
[2026-06-12 11:04:34,651.651 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 11:04:34,793.793 INFO    ] Initializing speech engine...
[2026-06-12 11:04:34,798.798 INFO    ] 2026-06-12 11:04:34
[2026-06-12 11:04:35,000.000 INFO    ] 2026-06-12 11:04:34
[2026-06-12 11:04:35,027.027 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 11:04:35,149.149 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 11:04:35,212.212 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 11:04:35,345.345 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 11:04:35,408.408 INFO    ] time= 12/06/2026 11:04:35
[2026-06-12 11:04:35,440.440 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 11:04:35,442.442 INFO    ] Checking for existing commands in stream...
[2026-06-12 11:04:35,512.512 INFO    ] No existing commands found in stream
[2026-06-12 11:04:40,521.521 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 11:04:40,524.524 INFO    ] Waiting 1.83 seconds before fallback handling...
[2026-06-12 11:04:42,741.741 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 11:04:42,742.742 INFO    ] Checking for system updates...
[2026-06-12 11:04:42,764.764 INFO    ] 200
[2026-06-12 11:04:42,765.765 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:04:42,799.799 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 11:04:42,800.800 INFO    ] No update needed
[2026-06-12 11:04:42,802.802 INFO    ] Checking for camera pi updates...
[2026-06-12 11:04:42,822.822 INFO    ] 200
[2026-06-12 11:04:42,824.824 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:04:42,849.849 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 11:04:42,886.886 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 11:04:42,887.887 INFO    ] No camera update needed
[2026-06-12 11:04:42,889.889 INFO    ] Script finished. Safe exiting...
[2026-06-12 11:04:42,890.890 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 11:04:42,893.893 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 11:04:42,896.896 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 11:04:44,937.937 INFO    ] ================================================
[2026-06-12 11:04:44,952.952 INFO    ] Launching Daemon at Fri Jun 12 11:04:44 IST 2026
[2026-06-12 11:04:44,963.963 INFO    ] ================================================
[2026-06-12 11:04:45,312.312 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 11:04:45
[2026-06-12 11:04:45,646.646 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 11:04:45,796.796 INFO    ] Initializing speech engine...
[2026-06-12 11:04:45,802.802 INFO    ] 2026-06-12 11:04:45
[2026-06-12 11:04:46,009.009 INFO    ] 2026-06-12 11:04:45
[2026-06-12 11:04:46,039.039 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 11:04:46,224.224 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 11:04:46,235.235 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 11:04:46,384.384 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 11:04:46,445.445 INFO    ] time= 12/06/2026 11:04:46
[2026-06-12 11:04:46,460.460 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 11:04:46,462.462 INFO    ] Checking for existing commands in stream...
[2026-06-12 11:04:46,529.529 INFO    ] No existing commands found in stream
[2026-06-12 11:04:51,554.554 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 11:04:51,557.557 INFO    ] Waiting 0.64 seconds before fallback handling...
[2026-06-12 11:04:52,586.586 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 11:04:52,588.588 INFO    ] Checking for system updates...
[2026-06-12 11:04:52,609.609 INFO    ] 200
[2026-06-12 11:04:52,611.611 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:04:52,642.642 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 11:04:52,643.643 INFO    ] No update needed
[2026-06-12 11:04:52,644.644 INFO    ] Checking for camera pi updates...
[2026-06-12 11:04:52,666.666 INFO    ] 200
[2026-06-12 11:04:52,667.667 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:04:52,692.692 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 11:04:52,737.737 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 11:04:52,738.738 INFO    ] No camera update needed
[2026-06-12 11:04:52,740.740 INFO    ] Script finished. Safe exiting...
[2026-06-12 11:04:52,741.741 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 11:04:52,744.744 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 11:04:52,747.747 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 11:04:54,786.786 INFO    ] ================================================
[2026-06-12 11:04:54,801.801 INFO    ] Launching Daemon at Fri Jun 12 11:04:54 IST 2026
[2026-06-12 11:04:54,812.812 INFO    ] ================================================
[2026-06-12 11:04:55,146.146 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 11:04:55
[2026-06-12 11:04:55,463.463 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 11:04:55,596.596 INFO    ] Initializing speech engine...
[2026-06-12 11:04:55,600.600 INFO    ] 2026-06-12 11:04:55
[2026-06-12 11:04:55,830.830 INFO    ] 2026-06-12 11:04:55
[2026-06-12 11:04:55,861.861 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 11:04:56,057.057 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 11:04:56,060.060 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 11:04:56,199.199 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 11:04:56,250.250 INFO    ] time= 12/06/2026 11:04:56
[2026-06-12 11:04:56,301.301 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 11:04:56,307.307 INFO    ] Checking for existing commands in stream...
[2026-06-12 11:04:56,382.382 INFO    ] No existing commands found in stream
[2026-06-12 11:05:01,392.392 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 11:05:01,395.395 INFO    ] Waiting 1.06 seconds before fallback handling...
[2026-06-12 11:05:02,789.789 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 11:05:02,791.791 INFO    ] Checking for system updates...
[2026-06-12 11:05:02,822.822 INFO    ] 200
[2026-06-12 11:05:02,823.823 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:05:02,854.854 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 11:05:02,856.856 INFO    ] No update needed
[2026-06-12 11:05:02,860.860 INFO    ] Checking for camera pi updates...
[2026-06-12 11:05:02,886.886 INFO    ] 200
[2026-06-12 11:05:02,887.887 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:05:02,911.911 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 11:05:02,957.957 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 11:05:02,958.958 INFO    ] No camera update needed
[2026-06-12 11:05:02,959.959 INFO    ] Script finished. Safe exiting...
[2026-06-12 11:05:02,961.961 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 11:05:02,965.965 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 11:05:02,968.968 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 11:05:05,011.011 INFO    ] ================================================
[2026-06-12 11:05:05,026.026 INFO    ] Launching Daemon at Fri Jun 12 11:05:05 IST 2026
[2026-06-12 11:05:05,036.036 INFO    ] ================================================
[2026-06-12 11:05:05,386.386 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 11:05:05
[2026-06-12 11:05:05,723.723 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 11:05:05,869.869 INFO    ] Initializing speech engine...
[2026-06-12 11:05:05,881.881 INFO    ] 2026-06-12 11:05:05
[2026-06-12 11:05:06,090.090 INFO    ] 2026-06-12 11:05:06
[2026-06-12 11:05:06,126.126 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 11:05:06,319.319 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 11:05:06,329.329 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 11:05:06,466.466 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 11:05:06,529.529 INFO    ] time= 12/06/2026 11:05:06
[2026-06-12 11:05:06,554.554 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 11:05:06,560.560 INFO    ] Checking for existing commands in stream...
[2026-06-12 11:05:06,628.628 INFO    ] No existing commands found in stream
[2026-06-12 11:05:11,638.638 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 11:05:11,641.641 INFO    ] Waiting 0.23 seconds before fallback handling...
[2026-06-12 11:05:12,216.216 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 11:05:12,218.218 INFO    ] Checking for system updates...
[2026-06-12 11:05:12,239.239 INFO    ] 200
[2026-06-12 11:05:12,241.241 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:05:12,272.272 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 11:05:12,273.273 INFO    ] No update needed
[2026-06-12 11:05:12,274.274 INFO    ] Checking for camera pi updates...
[2026-06-12 11:05:12,294.294 INFO    ] 200
[2026-06-12 11:05:12,295.295 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:05:12,319.319 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 11:05:12,446.446 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 11:05:12,448.448 INFO    ] No camera update needed
[2026-06-12 11:05:12,449.449 INFO    ] Script finished. Safe exiting...
[2026-06-12 11:05:12,450.450 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 11:05:12,454.454 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 11:05:12,457.457 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 11:05:14,497.497 INFO    ] ================================================
[2026-06-12 11:05:14,512.512 INFO    ] Launching Daemon at Fri Jun 12 11:05:14 IST 2026
[2026-06-12 11:05:14,523.523 INFO    ] ================================================
[2026-06-12 11:05:14,900.900 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 11:05:14
[2026-06-12 11:05:15,236.236 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 11:05:15,389.389 INFO    ] Initializing speech engine...
[2026-06-12 11:05:15,394.394 INFO    ] 2026-06-12 11:05:15
[2026-06-12 11:05:15,605.605 INFO    ] 2026-06-12 11:05:15
[2026-06-12 11:05:15,634.634 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 11:05:15,821.821 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 11:05:15,824.824 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 11:05:15,955.955 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 11:05:16,021.021 INFO    ] time= 12/06/2026 11:05:15
[2026-06-12 11:05:16,055.055 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 11:05:16,062.062 INFO    ] Checking for existing commands in stream...
[2026-06-12 11:05:16,130.130 INFO    ] No existing commands found in stream
[2026-06-12 11:05:21,144.144 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 11:05:21,147.147 INFO    ] Waiting 1.87 seconds before fallback handling...
[2026-06-12 11:05:23,403.403 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 11:05:23,404.404 INFO    ] Checking for system updates...
[2026-06-12 11:05:23,426.426 INFO    ] 200
[2026-06-12 11:05:23,428.428 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:05:23,463.463 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 11:05:23,464.464 INFO    ] No update needed
[2026-06-12 11:05:23,466.466 INFO    ] Checking for camera pi updates...
[2026-06-12 11:05:23,488.488 INFO    ] 200
[2026-06-12 11:05:23,490.490 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:05:23,514.514 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 11:05:23,558.558 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 11:05:23,559.559 INFO    ] No camera update needed
[2026-06-12 11:05:23,561.561 INFO    ] Script finished. Safe exiting...
[2026-06-12 11:05:23,562.562 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 11:05:23,565.565 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 11:05:23,568.568 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 11:05:25,608.608 INFO    ] ================================================
[2026-06-12 11:05:25,623.623 INFO    ] Launching Daemon at Fri Jun 12 11:05:25 IST 2026
[2026-06-12 11:05:25,634.634 INFO    ] ================================================
[2026-06-12 11:05:25,956.956 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 11:05:25
[2026-06-12 11:05:26,266.266 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 11:05:26,400.400 INFO    ] Initializing speech engine...
[2026-06-12 11:05:26,413.413 INFO    ] 2026-06-12 11:05:26
[2026-06-12 11:05:26,620.620 INFO    ] 2026-06-12 11:05:26
[2026-06-12 11:05:26,649.649 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 11:05:26,772.772 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 11:05:26,835.835 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 11:05:26,974.974 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 11:05:27,038.038 INFO    ] time= 12/06/2026 11:05:26
[2026-06-12 11:05:27,066.066 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 11:05:27,072.072 INFO    ] Checking for existing commands in stream...
[2026-06-12 11:05:27,139.139 INFO    ] No existing commands found in stream
[2026-06-12 11:05:32,148.148 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 11:05:32,152.152 INFO    ] Waiting 2.35 seconds before fallback handling...
[2026-06-12 11:05:34,831.831 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 11:05:34,833.833 INFO    ] Checking for system updates...
[2026-06-12 11:05:34,853.853 INFO    ] 200
[2026-06-12 11:05:34,855.855 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:05:34,885.885 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 11:05:34,886.886 INFO    ] No update needed
[2026-06-12 11:05:34,887.887 INFO    ] Checking for camera pi updates...
[2026-06-12 11:05:34,907.907 INFO    ] 200
[2026-06-12 11:05:34,909.909 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:05:34,932.932 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 11:05:34,977.977 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 11:05:34,978.978 INFO    ] No camera update needed
[2026-06-12 11:05:34,979.979 INFO    ] Script finished. Safe exiting...
[2026-06-12 11:05:34,981.981 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 11:05:34,984.984 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 11:05:34,986.986 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 11:05:37,026.026 INFO    ] ================================================
[2026-06-12 11:05:37,041.041 INFO    ] Launching Daemon at Fri Jun 12 11:05:37 IST 2026
[2026-06-12 11:05:37,052.052 INFO    ] ================================================
[2026-06-12 11:05:37,404.404 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 11:05:37
[2026-06-12 11:05:37,719.719 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 11:05:37,851.851 INFO    ] Initializing speech engine...
[2026-06-12 11:05:37,855.855 INFO    ] 2026-06-12 11:05:37
[2026-06-12 11:05:38,074.074 INFO    ] 2026-06-12 11:05:38
[2026-06-12 11:05:38,103.103 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 11:05:38,292.292 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 11:05:38,300.300 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 11:05:38,431.431 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 11:05:38,493.493 INFO    ] time= 12/06/2026 11:05:38
[2026-06-12 11:05:38,527.527 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 11:05:38,529.529 INFO    ] Checking for existing commands in stream...
[2026-06-12 11:05:38,601.601 INFO    ] No existing commands found in stream
[2026-06-12 11:05:43,611.611 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 11:05:43,614.614 INFO    ] Waiting 0.70 seconds before fallback handling...
[2026-06-12 11:05:44,672.672 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 11:05:44,674.674 INFO    ] Checking for system updates...
[2026-06-12 11:05:44,694.694 INFO    ] 200
[2026-06-12 11:05:44,696.696 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:05:44,728.728 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 11:05:44,730.730 INFO    ] No update needed
[2026-06-12 11:05:44,731.731 INFO    ] Checking for camera pi updates...
[2026-06-12 11:05:44,750.750 INFO    ] 200
[2026-06-12 11:05:44,752.752 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:05:44,777.777 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 11:05:44,823.823 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 11:05:44,825.825 INFO    ] No camera update needed
[2026-06-12 11:05:44,826.826 INFO    ] Script finished. Safe exiting...
[2026-06-12 11:05:44,827.827 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 11:05:44,830.830 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 11:05:44,833.833 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 11:05:46,871.871 INFO    ] ================================================
[2026-06-12 11:05:46,885.885 INFO    ] Launching Daemon at Fri Jun 12 11:05:46 IST 2026
[2026-06-12 11:05:46,896.896 INFO    ] ================================================
[2026-06-12 11:05:47,249.249 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 11:05:47
[2026-06-12 11:05:47,559.559 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 11:05:47,688.688 INFO    ] Initializing speech engine...
[2026-06-12 11:05:47,692.692 INFO    ] 2026-06-12 11:05:47
[2026-06-12 11:05:47,911.911 INFO    ] 2026-06-12 11:05:47
[2026-06-12 11:05:47,939.939 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 11:05:48,062.062 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 11:05:48,126.126 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 11:05:48,261.261 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 11:05:48,323.323 INFO    ] time= 12/06/2026 11:05:48
[2026-06-12 11:05:48,356.356 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 11:05:48,363.363 INFO    ] Checking for existing commands in stream...
[2026-06-12 11:05:48,430.430 INFO    ] No existing commands found in stream
[2026-06-12 11:05:53,439.439 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 11:05:53,442.442 INFO    ] Waiting 1.28 seconds before fallback handling...
[2026-06-12 11:05:55,064.064 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 11:05:55,065.065 INFO    ] Checking for system updates...
[2026-06-12 11:05:55,086.086 INFO    ] 200
[2026-06-12 11:05:55,087.087 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:05:55,117.117 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 11:05:55,119.119 INFO    ] No update needed
[2026-06-12 11:05:55,120.120 INFO    ] Checking for camera pi updates...
[2026-06-12 11:05:55,139.139 INFO    ] 200
[2026-06-12 11:05:55,141.141 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:05:55,166.166 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 11:05:55,205.205 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 11:05:55,206.206 INFO    ] No camera update needed
[2026-06-12 11:05:55,208.208 INFO    ] Script finished. Safe exiting...
[2026-06-12 11:05:55,209.209 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 11:05:55,212.212 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 11:05:55,215.215 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 11:05:57,252.252 INFO    ] ================================================
[2026-06-12 11:05:57,267.267 INFO    ] Launching Daemon at Fri Jun 12 11:05:57 IST 2026
[2026-06-12 11:05:57,278.278 INFO    ] ================================================
[2026-06-12 11:05:57,612.612 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 11:05:57
[2026-06-12 11:05:57,929.929 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 11:05:58,062.062 INFO    ] Initializing speech engine...
[2026-06-12 11:05:58,066.066 INFO    ] 2026-06-12 11:05:58
[2026-06-12 11:05:58,264.264 INFO    ] 2026-06-12 11:05:58
[2026-06-12 11:05:58,303.303 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 11:05:58,462.462 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 11:05:58,506.506 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 11:05:58,669.669 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 11:05:58,731.731 INFO    ] time= 12/06/2026 11:05:58
[2026-06-12 11:05:58,765.765 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 11:05:58,776.776 INFO    ] Checking for existing commands in stream...
[2026-06-12 11:05:58,856.856 INFO    ] No existing commands found in stream
[2026-06-12 11:06:03,870.870 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 11:06:03,873.873 INFO    ] Waiting 3.18 seconds before fallback handling...
[2026-06-12 11:06:07,421.421 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 11:06:07,422.422 INFO    ] Checking for system updates...
[2026-06-12 11:06:07,443.443 INFO    ] 200
[2026-06-12 11:06:07,444.444 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:06:07,474.474 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 11:06:07,475.475 INFO    ] No update needed
[2026-06-12 11:06:07,477.477 INFO    ] Checking for camera pi updates...
[2026-06-12 11:06:07,496.496 INFO    ] 200
[2026-06-12 11:06:07,498.498 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:06:07,525.525 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 11:06:07,566.566 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 11:06:07,567.567 INFO    ] No camera update needed
[2026-06-12 11:06:07,568.568 INFO    ] Script finished. Safe exiting...
[2026-06-12 11:06:07,570.570 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 11:06:07,573.573 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 11:06:07,575.575 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 11:06:09,613.613 INFO    ] ================================================
[2026-06-12 11:06:09,628.628 INFO    ] Launching Daemon at Fri Jun 12 11:06:09 IST 2026
[2026-06-12 11:06:09,639.639 INFO    ] ================================================
[2026-06-12 11:06:09,988.988 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 11:06:09
[2026-06-12 11:06:10,298.298 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 11:06:10,439.439 INFO    ] Initializing speech engine...
[2026-06-12 11:06:10,446.446 INFO    ] 2026-06-12 11:06:10
[2026-06-12 11:06:10,649.649 INFO    ] 2026-06-12 11:06:10
[2026-06-12 11:06:10,676.676 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 11:06:10,860.860 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 11:06:10,864.864 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 11:06:10,998.998 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 11:06:11,065.065 INFO    ] time= 12/06/2026 11:06:11
[2026-06-12 11:06:11,088.088 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 11:06:11,094.094 INFO    ] Checking for existing commands in stream...
[2026-06-12 11:06:11,161.161 INFO    ] No existing commands found in stream
[2026-06-12 11:06:16,175.175 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 11:06:16,177.177 INFO    ] Waiting 2.99 seconds before fallback handling...
[2026-06-12 11:06:19,545.545 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 11:06:19,547.547 INFO    ] Checking for system updates...
[2026-06-12 11:06:19,585.585 INFO    ] 200
[2026-06-12 11:06:19,587.587 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:06:19,640.640 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 11:06:19,642.642 INFO    ] No update needed
[2026-06-12 11:06:19,645.645 INFO    ] Checking for camera pi updates...
[2026-06-12 11:06:19,683.683 INFO    ] 200
[2026-06-12 11:06:19,686.686 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:06:19,720.720 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 11:06:19,764.764 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 11:06:19,765.765 INFO    ] No camera update needed
[2026-06-12 11:06:19,766.766 INFO    ] Script finished. Safe exiting...
[2026-06-12 11:06:19,768.768 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 11:06:19,771.771 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 11:06:19,773.773 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 11:06:21,814.814 INFO    ] ================================================
[2026-06-12 11:06:21,829.829 INFO    ] Launching Daemon at Fri Jun 12 11:06:21 IST 2026
[2026-06-12 11:06:21,840.840 INFO    ] ================================================
[2026-06-12 11:06:22,187.187 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 11:06:22
[2026-06-12 11:06:22,520.520 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 11:06:22,669.669 INFO    ] Initializing speech engine...
[2026-06-12 11:06:22,675.675 INFO    ] 2026-06-12 11:06:22
[2026-06-12 11:06:22,885.885 INFO    ] 2026-06-12 11:06:22
[2026-06-12 11:06:22,914.914 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 11:06:23,101.101 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 11:06:23,110.110 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 11:06:23,247.247 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 11:06:23,310.310 INFO    ] time= 12/06/2026 11:06:23
[2026-06-12 11:06:23,334.334 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 11:06:23,341.341 INFO    ] Checking for existing commands in stream...
[2026-06-12 11:06:23,432.432 INFO    ] No existing commands found in stream
[2026-06-12 11:06:28,441.441 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 11:06:28,445.445 INFO    ] Waiting 2.00 seconds before fallback handling...
[2026-06-12 11:06:30,820.820 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 11:06:30,822.822 INFO    ] Checking for system updates...
[2026-06-12 11:06:30,843.843 INFO    ] 200
[2026-06-12 11:06:30,844.844 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:06:30,875.875 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 11:06:30,876.876 INFO    ] No update needed
[2026-06-12 11:06:30,878.878 INFO    ] Checking for camera pi updates...
[2026-06-12 11:06:30,901.901 INFO    ] 200
[2026-06-12 11:06:30,902.902 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:06:30,930.930 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 11:06:30,978.978 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 11:06:30,980.980 INFO    ] No camera update needed
[2026-06-12 11:06:30,981.981 INFO    ] Script finished. Safe exiting...
[2026-06-12 11:06:30,983.983 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 11:06:30,986.986 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 11:06:30,989.989 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 11:06:33,021.021 INFO    ] ================================================
[2026-06-12 11:06:33,036.036 INFO    ] Launching Daemon at Fri Jun 12 11:06:33 IST 2026
[2026-06-12 11:06:33,047.047 INFO    ] ================================================
[2026-06-12 11:06:33,421.421 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 11:06:33
[2026-06-12 11:06:33,735.735 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 11:06:33,872.872 INFO    ] Initializing speech engine...
[2026-06-12 11:06:33,882.882 INFO    ] 2026-06-12 11:06:33
[2026-06-12 11:06:34,089.089 INFO    ] 2026-06-12 11:06:34
[2026-06-12 11:06:34,118.118 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 11:06:34,303.303 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 11:06:34,306.306 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 11:06:34,444.444 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 11:06:34,511.511 INFO    ] time= 12/06/2026 11:06:34
[2026-06-12 11:06:34,535.535 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 11:06:34,542.542 INFO    ] Checking for existing commands in stream...
[2026-06-12 11:06:34,608.608 INFO    ] No existing commands found in stream
[2026-06-12 11:06:39,619.619 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 11:06:39,622.622 INFO    ] Waiting 2.10 seconds before fallback handling...
[2026-06-12 11:06:42,078.078 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 11:06:42,080.080 INFO    ] Checking for system updates...
[2026-06-12 11:06:42,101.101 INFO    ] 200
[2026-06-12 11:06:42,103.103 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:06:42,135.135 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 11:06:42,136.136 INFO    ] No update needed
[2026-06-12 11:06:42,138.138 INFO    ] Checking for camera pi updates...
[2026-06-12 11:06:42,157.157 INFO    ] 200
[2026-06-12 11:06:42,159.159 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:06:42,183.183 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 11:06:42,225.225 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 11:06:42,227.227 INFO    ] No camera update needed
[2026-06-12 11:06:42,228.228 INFO    ] Script finished. Safe exiting...
[2026-06-12 11:06:42,230.230 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 11:06:42,233.233 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 11:06:42,236.236 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 11:06:44,277.277 INFO    ] ================================================
[2026-06-12 11:06:44,292.292 INFO    ] Launching Daemon at Fri Jun 12 11:06:44 IST 2026
[2026-06-12 11:06:44,303.303 INFO    ] ================================================
[2026-06-12 11:06:44,645.645 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 11:06:44
[2026-06-12 11:06:44,957.957 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 11:06:45,093.093 INFO    ] Initializing speech engine...
[2026-06-12 11:06:45,105.105 INFO    ] 2026-06-12 11:06:45
[2026-06-12 11:06:45,325.325 INFO    ] 2026-06-12 11:06:45
[2026-06-12 11:06:45,355.355 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 11:06:45,478.478 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 11:06:45,541.541 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 11:06:45,677.677 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 11:06:45,739.739 INFO    ] time= 12/06/2026 11:06:45
[2026-06-12 11:06:45,773.773 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 11:06:45,779.779 INFO    ] Checking for existing commands in stream...
[2026-06-12 11:06:45,845.845 INFO    ] No existing commands found in stream
[2026-06-12 11:06:50,856.856 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 11:06:50,858.858 INFO    ] Waiting 2.18 seconds before fallback handling...
[2026-06-12 11:06:53,409.409 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 11:06:53,411.411 INFO    ] Checking for system updates...
[2026-06-12 11:06:53,431.431 INFO    ] 200
[2026-06-12 11:06:53,432.432 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:06:53,465.465 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 11:06:53,466.466 INFO    ] No update needed
[2026-06-12 11:06:53,467.467 INFO    ] Checking for camera pi updates...
[2026-06-12 11:06:53,487.487 INFO    ] 200
[2026-06-12 11:06:53,488.488 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:06:53,511.511 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 11:06:53,560.560 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 11:06:53,562.562 INFO    ] No camera update needed
[2026-06-12 11:06:53,563.563 INFO    ] Script finished. Safe exiting...
[2026-06-12 11:06:53,564.564 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 11:06:53,568.568 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 11:06:53,571.571 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 11:06:55,609.609 INFO    ] ================================================
[2026-06-12 11:06:55,624.624 INFO    ] Launching Daemon at Fri Jun 12 11:06:55 IST 2026
[2026-06-12 11:06:55,635.635 INFO    ] ================================================
[2026-06-12 11:06:55,990.990 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 11:06:55
[2026-06-12 11:06:56,302.302 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 11:06:56,440.440 INFO    ] Initializing speech engine...
[2026-06-12 11:06:56,449.449 INFO    ] 2026-06-12 11:06:56
[2026-06-12 11:06:56,656.656 INFO    ] 2026-06-12 11:06:56
[2026-06-12 11:06:56,685.685 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 11:06:56,808.808 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 11:06:56,846.846 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 11:06:57,004.004 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 11:06:57,036.036 INFO    ] time= 12/06/2026 11:06:57
[2026-06-12 11:06:57,084.084 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 11:06:57,107.107 INFO    ] Checking for existing commands in stream...
[2026-06-12 11:06:57,178.178 INFO    ] No existing commands found in stream
[2026-06-12 11:07:02,188.188 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 11:07:02,191.191 INFO    ] Waiting 0.66 seconds before fallback handling...
[2026-06-12 11:07:03,196.196 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 11:07:03,197.197 INFO    ] Checking for system updates...
[2026-06-12 11:07:03,217.217 INFO    ] 200
[2026-06-12 11:07:03,219.219 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:07:03,251.251 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 11:07:03,252.252 INFO    ] No update needed
[2026-06-12 11:07:03,254.254 INFO    ] Checking for camera pi updates...
[2026-06-12 11:07:03,274.274 INFO    ] 200
[2026-06-12 11:07:03,275.275 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:07:03,298.298 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 11:07:03,338.338 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 11:07:03,339.339 INFO    ] No camera update needed
[2026-06-12 11:07:03,340.340 INFO    ] Script finished. Safe exiting...
[2026-06-12 11:07:03,342.342 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 11:07:03,344.344 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 11:07:03,347.347 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 11:07:05,385.385 INFO    ] ================================================
[2026-06-12 11:07:05,401.401 INFO    ] Launching Daemon at Fri Jun 12 11:07:05 IST 2026
[2026-06-12 11:07:05,411.411 INFO    ] ================================================
[2026-06-12 11:07:05,748.748 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 11:07:05
[2026-06-12 11:07:06,061.061 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 11:07:06,191.191 INFO    ] Initializing speech engine...
[2026-06-12 11:07:06,194.194 INFO    ] 2026-06-12 11:07:06
[2026-06-12 11:07:06,413.413 INFO    ] 2026-06-12 11:07:06
[2026-06-12 11:07:06,442.442 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 11:07:06,566.566 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 11:07:06,608.608 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 11:07:06,766.766 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 11:07:06,832.832 INFO    ] time= 12/06/2026 11:07:06
[2026-06-12 11:07:06,859.859 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 11:07:06,861.861 INFO    ] Checking for existing commands in stream...
[2026-06-12 11:07:06,932.932 INFO    ] No existing commands found in stream
[2026-06-12 11:07:11,941.941 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 11:07:11,943.943 INFO    ] Waiting 2.55 seconds before fallback handling...
[2026-06-12 11:07:14,944.944 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 11:07:14,945.945 INFO    ] Checking for system updates...
[2026-06-12 11:07:14,966.966 INFO    ] 200
[2026-06-12 11:07:14,967.967 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:07:14,997.997 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 11:07:14,999.999 INFO    ] No update needed
[2026-06-12 11:07:15,000.000 INFO    ] Checking for camera pi updates...
[2026-06-12 11:07:15,020.020 INFO    ] 200
[2026-06-12 11:07:15,021.021 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:07:15,046.046 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 11:07:15,186.186 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 11:07:15,187.187 INFO    ] No camera update needed
[2026-06-12 11:07:15,189.189 INFO    ] Script finished. Safe exiting...
[2026-06-12 11:07:15,191.191 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 11:07:15,194.194 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 11:07:15,198.198 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 11:07:17,222.222 INFO    ] ================================================
[2026-06-12 11:07:17,230.230 INFO    ] Launching Daemon at Fri Jun 12 11:07:17 IST 2026
[2026-06-12 11:07:17,236.236 INFO    ] ================================================
[2026-06-12 11:07:17,545.545 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 11:07:17
[2026-06-12 11:07:17,865.865 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 11:07:18,007.007 INFO    ] Initializing speech engine...
[2026-06-12 11:07:18,012.012 INFO    ] 2026-06-12 11:07:18
[2026-06-12 11:07:18,219.219 INFO    ] 2026-06-12 11:07:18
[2026-06-12 11:07:18,249.249 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 11:07:18,373.373 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 11:07:18,436.436 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 11:07:18,642.642 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 11:07:18,666.666 INFO    ] time= 12/06/2026 11:07:18
[2026-06-12 11:07:18,671.671 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 11:07:18,673.673 INFO    ] Checking for existing commands in stream...
[2026-06-12 11:07:18,739.739 INFO    ] No existing commands found in stream
[2026-06-12 11:07:23,749.749 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 11:07:23,752.752 INFO    ] Waiting 2.91 seconds before fallback handling...
[2026-06-12 11:07:26,964.964 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 11:07:26,965.965 INFO    ] Checking for system updates...
[2026-06-12 11:07:27,123.123 INFO    ] 200
[2026-06-12 11:07:27,125.125 INFO    ] {"msg": "Status of machine", "state": "STATE_HEALTH_CHECK", "status": true}
[2026-06-12 11:07:27,126.126 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping update check
[2026-06-12 11:07:27,128.128 INFO    ] Checking for camera pi updates...
[2026-06-12 11:07:27,175.175 INFO    ] 200
[2026-06-12 11:07:27,177.177 INFO    ] {"msg": "Status of machine", "state": "STATE_HEALTH_CHECK", "status": true}
[2026-06-12 11:07:27,178.178 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping camera update check
[2026-06-12 11:07:27,180.180 INFO    ] Script finished. Safe exiting...
[2026-06-12 11:07:27,181.181 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 11:07:27,185.185 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 11:07:27,188.188 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 11:07:29,211.211 INFO    ] ================================================
[2026-06-12 11:07:29,219.219 INFO    ] Launching Daemon at Fri Jun 12 11:07:29 IST 2026
[2026-06-12 11:07:29,225.225 INFO    ] ================================================
[2026-06-12 11:07:29,582.582 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 11:07:29
[2026-06-12 11:07:29,897.897 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 11:07:30,028.028 INFO    ] Initializing speech engine...
[2026-06-12 11:07:30,035.035 INFO    ] 2026-06-12 11:07:30
[2026-06-12 11:07:30,250.250 INFO    ] 2026-06-12 11:07:30
[2026-06-12 11:07:30,278.278 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 11:07:30,402.402 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 11:07:30,440.440 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 11:07:30,598.598 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 11:07:30,655.655 INFO    ] time= 12/06/2026 11:07:30
[2026-06-12 11:07:30,695.695 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 11:07:30,705.705 INFO    ] Checking for existing commands in stream...
[2026-06-12 11:07:30,772.772 INFO    ] No existing commands found in stream
[2026-06-12 11:07:35,782.782 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 11:07:35,785.785 INFO    ] Waiting 1.35 seconds before fallback handling...
[2026-06-12 11:07:37,491.491 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 11:07:37,493.493 INFO    ] Checking for system updates...
[2026-06-12 11:07:37,513.513 INFO    ] 200
[2026-06-12 11:07:37,515.515 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:07:37,544.544 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 11:07:37,546.546 INFO    ] No update needed
[2026-06-12 11:07:37,547.547 INFO    ] Checking for camera pi updates...
[2026-06-12 11:07:37,568.568 INFO    ] 200
[2026-06-12 11:07:37,569.569 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:07:37,594.594 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 11:07:37,630.630 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 11:07:37,632.632 INFO    ] No camera update needed
[2026-06-12 11:07:37,633.633 INFO    ] Script finished. Safe exiting...
[2026-06-12 11:07:37,634.634 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 11:07:37,637.637 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 11:07:37,640.640 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 11:07:39,682.682 INFO    ] ================================================
[2026-06-12 11:07:39,698.698 INFO    ] Launching Daemon at Fri Jun 12 11:07:39 IST 2026
[2026-06-12 11:07:39,709.709 INFO    ] ================================================
[2026-06-12 11:07:40,052.052 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 11:07:40
[2026-06-12 11:07:40,362.362 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 11:07:40,503.503 INFO    ] Initializing speech engine...
[2026-06-12 11:07:40,508.508 INFO    ] 2026-06-12 11:07:40
[2026-06-12 11:07:40,715.715 INFO    ] 2026-06-12 11:07:40
[2026-06-12 11:07:40,744.744 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 11:07:40,865.865 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 11:07:40,927.927 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 11:07:41,051.051 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 11:07:41,053.053 INFO    ] time= 12/06/2026 11:07:41
[2026-06-12 11:07:41,054.054 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 11:07:41,056.056 INFO    ] Checking for existing commands in stream...
[2026-06-12 11:07:41,139.139 INFO    ] No existing commands found in stream
[2026-06-12 11:07:46,151.151 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 11:07:46,154.154 INFO    ] Waiting 0.77 seconds before fallback handling...
[2026-06-12 11:07:47,294.294 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 11:07:47,296.296 INFO    ] Checking for system updates...
[2026-06-12 11:07:47,317.317 INFO    ] 200
[2026-06-12 11:07:47,318.318 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:07:47,349.349 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 11:07:47,350.350 INFO    ] No update needed
[2026-06-12 11:07:47,352.352 INFO    ] Checking for camera pi updates...
[2026-06-12 11:07:47,372.372 INFO    ] 200
[2026-06-12 11:07:47,373.373 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:07:47,397.397 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 11:07:47,446.446 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 11:07:47,448.448 INFO    ] No camera update needed
[2026-06-12 11:07:47,449.449 INFO    ] Script finished. Safe exiting...
[2026-06-12 11:07:47,451.451 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 11:07:47,454.454 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 11:07:47,457.457 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 11:07:49,495.495 INFO    ] ================================================
[2026-06-12 11:07:49,510.510 INFO    ] Launching Daemon at Fri Jun 12 11:07:49 IST 2026
[2026-06-12 11:07:49,521.521 INFO    ] ================================================
[2026-06-12 11:07:49,841.841 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 11:07:49
[2026-06-12 11:07:50,154.154 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 11:07:50,285.285 INFO    ] Initializing speech engine...
[2026-06-12 11:07:50,289.289 INFO    ] 2026-06-12 11:07:50
[2026-06-12 11:07:50,506.506 INFO    ] 2026-06-12 11:07:50
[2026-06-12 11:07:50,535.535 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 11:07:50,721.721 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 11:07:50,725.725 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 11:07:50,859.859 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 11:07:50,915.915 INFO    ] time= 12/06/2026 11:07:50
[2026-06-12 11:07:50,953.953 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 11:07:50,955.955 INFO    ] Checking for existing commands in stream...
[2026-06-12 11:07:51,026.026 INFO    ] No existing commands found in stream
[2026-06-12 11:07:56,037.037 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 11:07:56,039.039 INFO    ] Waiting 3.29 seconds before fallback handling...
[2026-06-12 11:07:59,641.641 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 11:07:59,642.642 INFO    ] Checking for system updates...
[2026-06-12 11:07:59,663.663 INFO    ] 200
[2026-06-12 11:07:59,664.664 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:07:59,694.694 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 11:07:59,695.695 INFO    ] No update needed
[2026-06-12 11:07:59,697.697 INFO    ] Checking for camera pi updates...
[2026-06-12 11:07:59,720.720 INFO    ] 200
[2026-06-12 11:07:59,721.721 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:07:59,744.744 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 11:07:59,769.769 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 11:07:59,771.771 INFO    ] No camera update needed
[2026-06-12 11:07:59,772.772 INFO    ] Script finished. Safe exiting...
[2026-06-12 11:07:59,773.773 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 11:07:59,776.776 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 11:07:59,779.779 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 11:08:01,843.843 INFO    ] ================================================
[2026-06-12 11:08:01,865.865 INFO    ] Launching Daemon at Fri Jun 12 11:08:01 IST 2026
[2026-06-12 11:08:01,892.892 INFO    ] ================================================
[2026-06-12 11:08:02,397.397 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 11:08:02
[2026-06-12 11:08:02,810.810 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 11:08:02,968.968 INFO    ] Initializing speech engine...
[2026-06-12 11:08:02,973.973 INFO    ] 2026-06-12 11:08:02
[2026-06-12 11:08:03,175.175 INFO    ] 2026-06-12 11:08:03
[2026-06-12 11:08:03,205.205 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 11:08:03,326.326 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 11:08:03,389.389 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 11:08:03,526.526 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 11:08:03,584.584 INFO    ] time= 12/06/2026 11:08:03
[2026-06-12 11:08:03,613.613 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 11:08:03,623.623 INFO    ] Checking for existing commands in stream...
[2026-06-12 11:08:03,718.718 INFO    ] No existing commands found in stream
[2026-06-12 11:08:08,727.727 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 11:08:08,730.730 INFO    ] Waiting 1.20 seconds before fallback handling...
[2026-06-12 11:08:10,246.246 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 11:08:10,248.248 INFO    ] Checking for system updates...
[2026-06-12 11:08:10,270.270 INFO    ] 200
[2026-06-12 11:08:10,271.271 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:08:10,301.301 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 11:08:10,303.303 INFO    ] No update needed
[2026-06-12 11:08:10,304.304 INFO    ] Checking for camera pi updates...
[2026-06-12 11:08:10,323.323 INFO    ] 200
[2026-06-12 11:08:10,325.325 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:08:10,350.350 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 11:08:10,385.385 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 11:08:10,387.387 INFO    ] No camera update needed
[2026-06-12 11:08:10,388.388 INFO    ] Script finished. Safe exiting...
[2026-06-12 11:08:10,389.389 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 11:08:10,392.392 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 11:08:10,395.395 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 11:08:12,434.434 INFO    ] ================================================
[2026-06-12 11:08:12,449.449 INFO    ] Launching Daemon at Fri Jun 12 11:08:12 IST 2026
[2026-06-12 11:08:12,461.461 INFO    ] ================================================
[2026-06-12 11:08:12,796.796 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 11:08:12
[2026-06-12 11:08:13,109.109 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 11:08:13,261.261 INFO    ] Initializing speech engine...
[2026-06-12 11:08:13,266.266 INFO    ] 2026-06-12 11:08:13
[2026-06-12 11:08:13,484.484 INFO    ] 2026-06-12 11:08:13
[2026-06-12 11:08:13,516.516 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 11:08:13,636.636 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 11:08:13,651.651 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 11:08:13,785.785 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 11:08:13,816.816 INFO    ] time= 12/06/2026 11:08:13
[2026-06-12 11:08:13,867.867 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 11:08:13,894.894 INFO    ] Checking for existing commands in stream...
[2026-06-12 11:08:14,048.048 INFO    ] No existing commands found in stream
[2026-06-12 11:08:19,058.058 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 11:08:19,062.062 INFO    ] Waiting 2.05 seconds before fallback handling...
[2026-06-12 11:08:21,451.451 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 11:08:21,453.453 INFO    ] Checking for system updates...
[2026-06-12 11:08:21,473.473 INFO    ] 200
[2026-06-12 11:08:21,475.475 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:08:21,507.507 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 11:08:21,509.509 INFO    ] No update needed
[2026-06-12 11:08:21,510.510 INFO    ] Checking for camera pi updates...
[2026-06-12 11:08:21,531.531 INFO    ] 200
[2026-06-12 11:08:21,532.532 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:08:21,560.560 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 11:08:21,596.596 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 11:08:21,598.598 INFO    ] No camera update needed
[2026-06-12 11:08:21,599.599 INFO    ] Script finished. Safe exiting...
[2026-06-12 11:08:21,600.600 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 11:08:21,603.603 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 11:08:21,606.606 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 11:08:23,644.644 INFO    ] ================================================
[2026-06-12 11:08:23,660.660 INFO    ] Launching Daemon at Fri Jun 12 11:08:23 IST 2026
[2026-06-12 11:08:23,671.671 INFO    ] ================================================
[2026-06-12 11:08:24,027.027 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 11:08:24
[2026-06-12 11:08:24,366.366 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 11:08:24,525.525 INFO    ] Initializing speech engine...
[2026-06-12 11:08:24,531.531 INFO    ] 2026-06-12 11:08:24
[2026-06-12 11:08:24,731.731 INFO    ] 2026-06-12 11:08:24
[2026-06-12 11:08:24,760.760 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 11:08:24,892.892 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 11:08:24,944.944 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 11:08:25,087.087 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 11:08:25,150.150 INFO    ] time= 12/06/2026 11:08:25
[2026-06-12 11:08:25,173.173 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 11:08:25,179.179 INFO    ] Checking for existing commands in stream...
[2026-06-12 11:08:25,246.246 INFO    ] No existing commands found in stream
[2026-06-12 11:08:30,260.260 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 11:08:30,264.264 INFO    ] Waiting 1.91 seconds before fallback handling...
[2026-06-12 11:08:32,503.503 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 11:08:32,506.506 INFO    ] Checking for system updates...
[2026-06-12 11:08:32,544.544 INFO    ] 200
[2026-06-12 11:08:32,546.546 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:08:32,600.600 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 11:08:32,602.602 INFO    ] No update needed
[2026-06-12 11:08:32,603.603 INFO    ] Checking for camera pi updates...
[2026-06-12 11:08:32,623.623 INFO    ] 200
[2026-06-12 11:08:32,624.624 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:08:32,649.649 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 11:08:32,671.671 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 11:08:32,673.673 INFO    ] No camera update needed
[2026-06-12 11:08:32,674.674 INFO    ] Script finished. Safe exiting...
[2026-06-12 11:08:32,675.675 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 11:08:32,678.678 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 11:08:32,681.681 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 11:08:34,719.719 INFO    ] ================================================
[2026-06-12 11:08:34,735.735 INFO    ] Launching Daemon at Fri Jun 12 11:08:34 IST 2026
[2026-06-12 11:08:34,746.746 INFO    ] ================================================
[2026-06-12 11:08:35,104.104 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 11:08:35
[2026-06-12 11:08:35,416.416 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 11:08:35,557.557 INFO    ] Initializing speech engine...
[2026-06-12 11:08:35,562.562 INFO    ] 2026-06-12 11:08:35
[2026-06-12 11:08:35,764.764 INFO    ] 2026-06-12 11:08:35
[2026-06-12 11:08:35,792.792 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 11:08:35,914.914 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 11:08:35,978.978 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 11:08:36,116.116 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 11:08:36,173.173 INFO    ] time= 12/06/2026 11:08:36
[2026-06-12 11:08:36,209.209 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 11:08:36,216.216 INFO    ] Checking for existing commands in stream...
[2026-06-12 11:08:36,291.291 INFO    ] No existing commands found in stream
[2026-06-12 11:08:41,303.303 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 11:08:41,306.306 INFO    ] Waiting 1.47 seconds before fallback handling...
[2026-06-12 11:08:43,113.113 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 11:08:43,114.114 INFO    ] Checking for system updates...
[2026-06-12 11:08:43,136.136 INFO    ] 200
[2026-06-12 11:08:43,137.137 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:08:43,169.169 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 11:08:43,171.171 INFO    ] No update needed
[2026-06-12 11:08:43,172.172 INFO    ] Checking for camera pi updates...
[2026-06-12 11:08:43,191.191 INFO    ] 200
[2026-06-12 11:08:43,193.193 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:08:43,217.217 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 11:08:43,241.241 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 11:08:43,242.242 INFO    ] No camera update needed
[2026-06-12 11:08:43,244.244 INFO    ] Script finished. Safe exiting...
[2026-06-12 11:08:43,245.245 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 11:08:43,376.376 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 11:08:43,379.379 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 11:08:45,420.420 INFO    ] ================================================
[2026-06-12 11:08:45,436.436 INFO    ] Launching Daemon at Fri Jun 12 11:08:45 IST 2026
[2026-06-12 11:08:45,448.448 INFO    ] ================================================
[2026-06-12 11:08:45,807.807 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 11:08:45
[2026-06-12 11:08:46,148.148 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 11:08:46,299.299 INFO    ] Initializing speech engine...
[2026-06-12 11:08:46,305.305 INFO    ] 2026-06-12 11:08:46
[2026-06-12 11:08:46,513.513 INFO    ] 2026-06-12 11:08:46
[2026-06-12 11:08:46,542.542 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 11:08:46,725.725 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 11:08:46,728.728 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 11:08:46,865.865 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 11:08:46,932.932 INFO    ] time= 12/06/2026 11:08:46
[2026-06-12 11:08:46,955.955 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 11:08:46,961.961 INFO    ] Checking for existing commands in stream...
[2026-06-12 11:08:47,028.028 INFO    ] No existing commands found in stream
[2026-06-12 11:08:52,039.039 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 11:08:52,043.043 INFO    ] Waiting 1.00 seconds before fallback handling...
[2026-06-12 11:08:53,445.445 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 11:08:53,447.447 INFO    ] Checking for system updates...
[2026-06-12 11:08:53,468.468 INFO    ] 200
[2026-06-12 11:08:53,469.469 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:08:53,500.500 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 11:08:53,502.502 INFO    ] No update needed
[2026-06-12 11:08:53,503.503 INFO    ] Checking for camera pi updates...
[2026-06-12 11:08:53,525.525 INFO    ] 200
[2026-06-12 11:08:53,526.526 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:08:53,554.554 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 11:08:53,604.604 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 11:08:53,606.606 INFO    ] No camera update needed
[2026-06-12 11:08:53,607.607 INFO    ] Script finished. Safe exiting...
[2026-06-12 11:08:53,609.609 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 11:08:53,612.612 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 11:08:53,615.615 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 11:08:55,654.654 INFO    ] ================================================
[2026-06-12 11:08:55,670.670 INFO    ] Launching Daemon at Fri Jun 12 11:08:55 IST 2026
[2026-06-12 11:08:55,682.682 INFO    ] ================================================
[2026-06-12 11:08:56,039.039 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 11:08:56
[2026-06-12 11:08:56,379.379 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 11:08:56,532.532 INFO    ] Initializing speech engine...
[2026-06-12 11:08:56,538.538 INFO    ] 2026-06-12 11:08:56
[2026-06-12 11:08:56,746.746 INFO    ] 2026-06-12 11:08:56
[2026-06-12 11:08:56,777.777 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 11:08:56,963.963 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 11:08:56,973.973 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 11:08:57,110.110 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 11:08:57,175.175 INFO    ] time= 12/06/2026 11:08:57
[2026-06-12 11:08:57,197.197 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 11:08:57,204.204 INFO    ] Checking for existing commands in stream...
[2026-06-12 11:08:57,295.295 INFO    ] No existing commands found in stream
[2026-06-12 11:09:02,309.309 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 11:09:02,311.311 INFO    ] Waiting 1.48 seconds before fallback handling...
[2026-06-12 11:09:04,162.162 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 11:09:04,164.164 INFO    ] Checking for system updates...
[2026-06-12 11:09:04,186.186 INFO    ] 200
[2026-06-12 11:09:04,188.188 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:09:04,219.219 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 11:09:04,220.220 INFO    ] No update needed
[2026-06-12 11:09:04,221.221 INFO    ] Checking for camera pi updates...
[2026-06-12 11:09:04,243.243 INFO    ] 200
[2026-06-12 11:09:04,244.244 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:09:04,270.270 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 11:09:04,307.307 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 11:09:04,309.309 INFO    ] No camera update needed
[2026-06-12 11:09:04,310.310 INFO    ] Script finished. Safe exiting...
[2026-06-12 11:09:04,311.311 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 11:09:04,314.314 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 11:09:04,317.317 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 11:09:06,355.355 INFO    ] ================================================
[2026-06-12 11:09:06,371.371 INFO    ] Launching Daemon at Fri Jun 12 11:09:06 IST 2026
[2026-06-12 11:09:06,383.383 INFO    ] ================================================
[2026-06-12 11:09:06,732.732 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 11:09:06
[2026-06-12 11:09:07,042.042 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 11:09:07,178.178 INFO    ] Initializing speech engine...
[2026-06-12 11:09:07,192.192 INFO    ] 2026-06-12 11:09:07
[2026-06-12 11:09:07,413.413 INFO    ] 2026-06-12 11:09:07
[2026-06-12 11:09:07,443.443 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 11:09:07,577.577 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 11:09:07,645.645 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 11:09:07,788.788 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 11:09:07,830.830 INFO    ] time= 12/06/2026 11:09:07
[2026-06-12 11:09:07,880.880 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 11:09:07,898.898 INFO    ] Checking for existing commands in stream...
[2026-06-12 11:09:07,975.975 INFO    ] No existing commands found in stream
[2026-06-12 11:09:12,984.984 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 11:09:12,987.987 INFO    ] Waiting 3.20 seconds before fallback handling...
[2026-06-12 11:09:16,549.549 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 11:09:16,550.550 INFO    ] Checking for system updates...
[2026-06-12 11:09:16,572.572 INFO    ] 200
[2026-06-12 11:09:16,574.574 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:09:16,604.604 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 11:09:16,606.606 INFO    ] No update needed
[2026-06-12 11:09:16,607.607 INFO    ] Checking for camera pi updates...
[2026-06-12 11:09:16,627.627 INFO    ] 200
[2026-06-12 11:09:16,628.628 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:09:16,651.651 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 11:09:16,792.792 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 11:09:16,794.794 INFO    ] No camera update needed
[2026-06-12 11:09:16,795.795 INFO    ] Script finished. Safe exiting...
[2026-06-12 11:09:16,796.796 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 11:09:16,799.799 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 11:09:16,802.802 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 11:09:18,841.841 INFO    ] ================================================
[2026-06-12 11:09:18,858.858 INFO    ] Launching Daemon at Fri Jun 12 11:09:18 IST 2026
[2026-06-12 11:09:18,869.869 INFO    ] ================================================
[2026-06-12 11:09:19,204.204 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 11:09:19
[2026-06-12 11:09:19,517.517 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 11:09:19,659.659 INFO    ] Initializing speech engine...
[2026-06-12 11:09:19,665.665 INFO    ] 2026-06-12 11:09:19
[2026-06-12 11:09:19,869.869 INFO    ] 2026-06-12 11:09:19
[2026-06-12 11:09:19,899.899 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 11:09:20,082.082 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 11:09:20,091.091 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 11:09:20,217.217 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 11:09:20,284.284 INFO    ] time= 12/06/2026 11:09:20
[2026-06-12 11:09:20,311.311 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 11:09:20,317.317 INFO    ] Checking for existing commands in stream...
[2026-06-12 11:09:20,384.384 INFO    ] No existing commands found in stream
[2026-06-12 11:09:25,416.416 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 11:09:25,419.419 INFO    ] Waiting 0.66 seconds before fallback handling...
[2026-06-12 11:09:26,450.450 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 11:09:26,452.452 INFO    ] Checking for system updates...
[2026-06-12 11:09:26,473.473 INFO    ] 200
[2026-06-12 11:09:26,475.475 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:09:26,511.511 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 11:09:26,512.512 INFO    ] No update needed
[2026-06-12 11:09:26,514.514 INFO    ] Checking for camera pi updates...
[2026-06-12 11:09:26,537.537 INFO    ] 200
[2026-06-12 11:09:26,539.539 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:09:26,565.565 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 11:09:26,606.606 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 11:09:26,607.607 INFO    ] No camera update needed
[2026-06-12 11:09:26,609.609 INFO    ] Script finished. Safe exiting...
[2026-06-12 11:09:26,610.610 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 11:09:26,614.614 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 11:09:26,617.617 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 11:09:28,657.657 INFO    ] ================================================
[2026-06-12 11:09:28,674.674 INFO    ] Launching Daemon at Fri Jun 12 11:09:28 IST 2026
[2026-06-12 11:09:28,686.686 INFO    ] ================================================
[2026-06-12 11:09:29,023.023 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 11:09:29
[2026-06-12 11:09:29,340.340 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 11:09:29,484.484 INFO    ] Initializing speech engine...
[2026-06-12 11:09:29,488.488 INFO    ] 2026-06-12 11:09:29
[2026-06-12 11:09:29,695.695 INFO    ] 2026-06-12 11:09:29
[2026-06-12 11:09:29,724.724 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 11:09:29,909.909 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 11:09:29,918.918 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 11:09:30,040.040 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 11:09:30,095.095 INFO    ] time= 12/06/2026 11:09:30
[2026-06-12 11:09:30,131.131 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 11:09:30,141.141 INFO    ] Checking for existing commands in stream...
[2026-06-12 11:09:30,213.213 INFO    ] No existing commands found in stream
[2026-06-12 11:09:35,232.232 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 11:09:35,235.235 INFO    ] Waiting 1.17 seconds before fallback handling...
[2026-06-12 11:09:36,738.738 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 11:09:36,739.739 INFO    ] Checking for system updates...
[2026-06-12 11:09:36,760.760 INFO    ] 200
[2026-06-12 11:09:36,761.761 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:09:36,794.794 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 11:09:36,796.796 INFO    ] No update needed
[2026-06-12 11:09:36,797.797 INFO    ] Checking for camera pi updates...
[2026-06-12 11:09:36,817.817 INFO    ] 200
[2026-06-12 11:09:36,818.818 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:09:36,841.841 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 11:09:36,878.878 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 11:09:36,879.879 INFO    ] No camera update needed
[2026-06-12 11:09:36,880.880 INFO    ] Script finished. Safe exiting...
[2026-06-12 11:09:36,882.882 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 11:09:36,885.885 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 11:09:36,887.887 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 11:09:38,928.928 INFO    ] ================================================
[2026-06-12 11:09:38,944.944 INFO    ] Launching Daemon at Fri Jun 12 11:09:38 IST 2026
[2026-06-12 11:09:38,955.955 INFO    ] ================================================
[2026-06-12 11:09:39,335.335 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 11:09:39
[2026-06-12 11:09:39,677.677 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 11:09:39,830.830 INFO    ] Initializing speech engine...
[2026-06-12 11:09:39,836.836 INFO    ] 2026-06-12 11:09:39
[2026-06-12 11:09:40,045.045 INFO    ] 2026-06-12 11:09:40
[2026-06-12 11:09:40,075.075 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 11:09:40,258.258 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 11:09:40,268.268 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 11:09:40,419.419 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 11:09:40,473.473 INFO    ] time= 12/06/2026 11:09:40
[2026-06-12 11:09:40,489.489 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 11:09:40,496.496 INFO    ] Checking for existing commands in stream...
[2026-06-12 11:09:40,562.562 INFO    ] No existing commands found in stream
[2026-06-12 11:09:45,577.577 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 11:09:45,580.580 INFO    ] Waiting 3.07 seconds before fallback handling...
[2026-06-12 11:09:49,060.060 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 11:09:49,062.062 INFO    ] Checking for system updates...
[2026-06-12 11:09:49,084.084 INFO    ] 200
[2026-06-12 11:09:49,086.086 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:09:49,119.119 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 11:09:49,121.121 INFO    ] No update needed
[2026-06-12 11:09:49,123.123 INFO    ] Checking for camera pi updates...
[2026-06-12 11:09:49,143.143 INFO    ] 200
[2026-06-12 11:09:49,144.144 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:09:49,168.168 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 11:09:49,208.208 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 11:09:49,210.210 INFO    ] No camera update needed
[2026-06-12 11:09:49,211.211 INFO    ] Script finished. Safe exiting...
[2026-06-12 11:09:49,213.213 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 11:09:49,216.216 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 11:09:49,219.219 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 11:09:51,259.259 INFO    ] ================================================
[2026-06-12 11:09:51,274.274 INFO    ] Launching Daemon at Fri Jun 12 11:09:51 IST 2026
[2026-06-12 11:09:51,285.285 INFO    ] ================================================
[2026-06-12 11:09:51,640.640 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 11:09:51
[2026-06-12 11:09:51,958.958 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 11:09:52,097.097 INFO    ] Initializing speech engine...
[2026-06-12 11:09:52,107.107 INFO    ] 2026-06-12 11:09:52
[2026-06-12 11:09:52,313.313 INFO    ] 2026-06-12 11:09:52
[2026-06-12 11:09:52,342.342 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 11:09:52,524.524 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 11:09:52,527.527 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 11:09:52,674.674 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 11:09:52,731.731 INFO    ] time= 12/06/2026 11:09:52
[2026-06-12 11:09:52,754.754 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 11:09:52,760.760 INFO    ] Checking for existing commands in stream...
[2026-06-12 11:09:52,827.827 INFO    ] No existing commands found in stream
[2026-06-12 11:09:57,836.836 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 11:09:57,838.838 INFO    ] Waiting 1.53 seconds before fallback handling...
[2026-06-12 11:09:59,762.762 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 11:09:59,764.764 INFO    ] Checking for system updates...
[2026-06-12 11:09:59,786.786 INFO    ] 200
[2026-06-12 11:09:59,788.788 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:09:59,822.822 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 11:09:59,823.823 INFO    ] No update needed
[2026-06-12 11:09:59,824.824 INFO    ] Checking for camera pi updates...
[2026-06-12 11:09:59,848.848 INFO    ] 200
[2026-06-12 11:09:59,850.850 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:09:59,874.874 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 11:09:59,911.911 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 11:09:59,912.912 INFO    ] No camera update needed
[2026-06-12 11:09:59,914.914 INFO    ] Script finished. Safe exiting...
[2026-06-12 11:09:59,915.915 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 11:09:59,918.918 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 11:09:59,922.922 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 11:10:01,972.972 INFO    ] ================================================
[2026-06-12 11:10:02,994.994 INFO    ] Launching Daemon at Fri Jun 12 11:10:01 IST 2026
[2026-06-12 11:10:02,008.008 INFO    ] ================================================
[2026-06-12 11:10:02,577.577 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 11:10:02
[2026-06-12 11:10:02,915.915 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 11:10:03,061.061 INFO    ] Initializing speech engine...
[2026-06-12 11:10:03,065.065 INFO    ] 2026-06-12 11:10:03
[2026-06-12 11:10:03,311.311 INFO    ] 2026-06-12 11:10:03
[2026-06-12 11:10:03,346.346 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 11:10:03,490.490 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 11:10:03,557.557 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 11:10:03,695.695 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 11:10:03,758.758 INFO    ] time= 12/06/2026 11:10:03
[2026-06-12 11:10:03,791.791 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 11:10:03,798.798 INFO    ] Checking for existing commands in stream...
[2026-06-12 11:10:03,866.866 INFO    ] No existing commands found in stream
[2026-06-12 11:10:08,891.891 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 11:10:08,894.894 INFO    ] Waiting 2.68 seconds before fallback handling...
[2026-06-12 11:10:11,981.981 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 11:10:11,982.982 INFO    ] Checking for system updates...
[2026-06-12 11:10:12,003.003 INFO    ] 200
[2026-06-12 11:10:12,005.005 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:10:12,036.036 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 11:10:12,037.037 INFO    ] No update needed
[2026-06-12 11:10:12,039.039 INFO    ] Checking for camera pi updates...
[2026-06-12 11:10:12,059.059 INFO    ] 200
[2026-06-12 11:10:12,061.061 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:10:12,085.085 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 11:10:12,107.107 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 11:10:12,108.108 INFO    ] No camera update needed
[2026-06-12 11:10:12,110.110 INFO    ] Script finished. Safe exiting...
[2026-06-12 11:10:12,111.111 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 11:10:12,115.115 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 11:10:12,118.118 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 11:10:14,158.158 INFO    ] ================================================
[2026-06-12 11:10:14,174.174 INFO    ] Launching Daemon at Fri Jun 12 11:10:14 IST 2026
[2026-06-12 11:10:14,185.185 INFO    ] ================================================
[2026-06-12 11:10:14,514.514 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 11:10:14
[2026-06-12 11:10:14,825.825 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 11:10:14,956.956 INFO    ] Initializing speech engine...
[2026-06-12 11:10:14,960.960 INFO    ] 2026-06-12 11:10:14
[2026-06-12 11:10:15,179.179 INFO    ] 2026-06-12 11:10:15
[2026-06-12 11:10:15,208.208 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 11:10:15,395.395 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 11:10:15,398.398 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 11:10:15,537.537 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 11:10:15,595.595 INFO    ] time= 12/06/2026 11:10:15
[2026-06-12 11:10:15,628.628 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 11:10:15,630.630 INFO    ] Checking for existing commands in stream...
[2026-06-12 11:10:15,703.703 INFO    ] No existing commands found in stream
[2026-06-12 11:10:20,712.712 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 11:10:20,715.715 INFO    ] Waiting 1.81 seconds before fallback handling...
[2026-06-12 11:10:22,881.881 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 11:10:22,883.883 INFO    ] Checking for system updates...
[2026-06-12 11:10:22,903.903 INFO    ] 200
[2026-06-12 11:10:22,904.904 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:10:22,937.937 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 11:10:22,939.939 INFO    ] No update needed
[2026-06-12 11:10:22,940.940 INFO    ] Checking for camera pi updates...
[2026-06-12 11:10:22,959.959 INFO    ] 200
[2026-06-12 11:10:22,961.961 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:10:22,984.984 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 11:10:23,025.025 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 11:10:23,026.026 INFO    ] No camera update needed
[2026-06-12 11:10:23,027.027 INFO    ] Script finished. Safe exiting...
[2026-06-12 11:10:23,029.029 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 11:10:23,032.032 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 11:10:23,035.035 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 11:10:25,076.076 INFO    ] ================================================
[2026-06-12 11:10:25,091.091 INFO    ] Launching Daemon at Fri Jun 12 11:10:25 IST 2026
[2026-06-12 11:10:25,103.103 INFO    ] ================================================
[2026-06-12 11:10:25,463.463 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 11:10:25
[2026-06-12 11:10:25,803.803 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 11:10:25,957.957 INFO    ] Initializing speech engine...
[2026-06-12 11:10:25,961.961 INFO    ] 2026-06-12 11:10:25
[2026-06-12 11:10:26,168.168 INFO    ] 2026-06-12 11:10:26
[2026-06-12 11:10:26,197.197 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 11:10:26,380.380 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 11:10:26,390.390 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 11:10:26,525.525 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 11:10:26,587.587 INFO    ] time= 12/06/2026 11:10:26
[2026-06-12 11:10:26,610.610 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 11:10:26,617.617 INFO    ] Checking for existing commands in stream...
[2026-06-12 11:10:26,684.684 INFO    ] No existing commands found in stream
[2026-06-12 11:10:31,697.697 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 11:10:31,699.699 INFO    ] Waiting 2.34 seconds before fallback handling...
[2026-06-12 11:10:34,386.386 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 11:10:34,388.388 INFO    ] Checking for system updates...
[2026-06-12 11:10:34,409.409 INFO    ] 200
[2026-06-12 11:10:34,410.410 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:10:34,442.442 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 11:10:34,443.443 INFO    ] No update needed
[2026-06-12 11:10:34,444.444 INFO    ] Checking for camera pi updates...
[2026-06-12 11:10:34,465.465 INFO    ] 200
[2026-06-12 11:10:34,467.467 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:10:34,490.490 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 11:10:34,531.531 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 11:10:34,533.533 INFO    ] No camera update needed
[2026-06-12 11:10:34,534.534 INFO    ] Script finished. Safe exiting...
[2026-06-12 11:10:34,536.536 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 11:10:34,539.539 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 11:10:34,542.542 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 11:10:36,584.584 INFO    ] ================================================
[2026-06-12 11:10:36,600.600 INFO    ] Launching Daemon at Fri Jun 12 11:10:36 IST 2026
[2026-06-12 11:10:36,611.611 INFO    ] ================================================
[2026-06-12 11:10:36,950.950 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 11:10:36
[2026-06-12 11:10:37,262.262 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 11:10:37,400.400 INFO    ] Initializing speech engine...
[2026-06-12 11:10:37,410.410 INFO    ] 2026-06-12 11:10:37
[2026-06-12 11:10:37,616.616 INFO    ] 2026-06-12 11:10:37
[2026-06-12 11:10:37,646.646 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 11:10:37,830.830 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 11:10:37,834.834 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 11:10:37,972.972 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 11:10:38,034.034 INFO    ] time= 12/06/2026 11:10:37
[2026-06-12 11:10:38,068.068 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 11:10:38,074.074 INFO    ] Checking for existing commands in stream...
[2026-06-12 11:10:38,142.142 INFO    ] No existing commands found in stream
[2026-06-12 11:10:43,156.156 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 11:10:43,159.159 INFO    ] Waiting 1.75 seconds before fallback handling...
[2026-06-12 11:10:45,308.308 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 11:10:45,310.310 INFO    ] Checking for system updates...
[2026-06-12 11:10:45,332.332 INFO    ] 200
[2026-06-12 11:10:45,334.334 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:10:45,364.364 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 11:10:45,365.365 INFO    ] No update needed
[2026-06-12 11:10:45,366.366 INFO    ] Checking for camera pi updates...
[2026-06-12 11:10:45,386.386 INFO    ] 200
[2026-06-12 11:10:45,387.387 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:10:45,411.411 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 11:10:45,451.451 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 11:10:45,452.452 INFO    ] No camera update needed
[2026-06-12 11:10:45,453.453 INFO    ] Script finished. Safe exiting...
[2026-06-12 11:10:45,455.455 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 11:10:45,458.458 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 11:10:45,460.460 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 11:10:47,492.492 INFO    ] ================================================
[2026-06-12 11:10:47,508.508 INFO    ] Launching Daemon at Fri Jun 12 11:10:47 IST 2026
[2026-06-12 11:10:47,519.519 INFO    ] ================================================
[2026-06-12 11:10:47,901.901 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 11:10:47
[2026-06-12 11:10:48,244.244 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 11:10:48,390.390 INFO    ] Initializing speech engine...
[2026-06-12 11:10:48,395.395 INFO    ] 2026-06-12 11:10:48
[2026-06-12 11:10:48,597.597 INFO    ] 2026-06-12 11:10:48
[2026-06-12 11:10:48,626.626 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 11:10:48,835.835 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 11:10:48,839.839 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 11:10:48,965.965 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 11:10:49,016.016 INFO    ] time= 12/06/2026 11:10:48
[2026-06-12 11:10:49,040.040 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 11:10:49,046.046 INFO    ] Checking for existing commands in stream...
[2026-06-12 11:10:49,138.138 INFO    ] No existing commands found in stream
[2026-06-12 11:10:54,147.147 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 11:10:54,149.149 INFO    ] Waiting 2.18 seconds before fallback handling...
[2026-06-12 11:10:56,688.688 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 11:10:56,690.690 INFO    ] Checking for system updates...
[2026-06-12 11:10:56,712.712 INFO    ] 200
[2026-06-12 11:10:56,714.714 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:10:56,744.744 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 11:10:56,745.745 INFO    ] No update needed
[2026-06-12 11:10:56,746.746 INFO    ] Checking for camera pi updates...
[2026-06-12 11:10:56,767.767 INFO    ] 200
[2026-06-12 11:10:56,768.768 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:10:56,791.791 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 11:10:56,831.831 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 11:10:56,832.832 INFO    ] No camera update needed
[2026-06-12 11:10:56,834.834 INFO    ] Script finished. Safe exiting...
[2026-06-12 11:10:56,835.835 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 11:10:56,838.838 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 11:10:56,840.840 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 11:10:58,878.878 INFO    ] ================================================
[2026-06-12 11:10:58,896.896 INFO    ] Launching Daemon at Fri Jun 12 11:10:58 IST 2026
[2026-06-12 11:10:58,908.908 INFO    ] ================================================
[2026-06-12 11:10:59,267.267 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 11:10:59
[2026-06-12 11:10:59,580.580 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 11:10:59,711.711 INFO    ] Initializing speech engine...
[2026-06-12 11:10:59,715.715 INFO    ] 2026-06-12 11:10:59
[2026-06-12 11:10:59,932.932 INFO    ] 2026-06-12 11:10:59
[2026-06-12 11:10:59,960.960 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 11:11:00,148.148 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 11:11:00,152.152 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 11:11:00,264.264 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 11:11:00,266.266 INFO    ] time= 12/06/2026 11:11:00
[2026-06-12 11:11:00,267.267 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 11:11:00,288.288 INFO    ] Checking for existing commands in stream...
[2026-06-12 11:11:00,377.377 INFO    ] No existing commands found in stream
[2026-06-12 11:11:05,406.406 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 11:11:05,409.409 INFO    ] Waiting 0.97 seconds before fallback handling...
[2026-06-12 11:11:06,735.735 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 11:11:06,736.736 INFO    ] Checking for system updates...
[2026-06-12 11:11:06,757.757 INFO    ] 200
[2026-06-12 11:11:06,758.758 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:11:06,791.791 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 11:11:06,792.792 INFO    ] No update needed
[2026-06-12 11:11:06,793.793 INFO    ] Checking for camera pi updates...
[2026-06-12 11:11:06,812.812 INFO    ] 200
[2026-06-12 11:11:06,814.814 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:11:06,839.839 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 11:11:06,876.876 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 11:11:06,877.877 INFO    ] No camera update needed
[2026-06-12 11:11:06,879.879 INFO    ] Script finished. Safe exiting...
[2026-06-12 11:11:06,880.880 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 11:11:06,883.883 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 11:11:06,886.886 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 11:11:08,925.925 INFO    ] ================================================
[2026-06-12 11:11:08,941.941 INFO    ] Launching Daemon at Fri Jun 12 11:11:08 IST 2026
[2026-06-12 11:11:08,953.953 INFO    ] ================================================
[2026-06-12 11:11:09,304.304 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 11:11:09
[2026-06-12 11:11:09,619.619 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 11:11:09,763.763 INFO    ] Initializing speech engine...
[2026-06-12 11:11:09,768.768 INFO    ] 2026-06-12 11:11:09
[2026-06-12 11:11:09,973.973 INFO    ] 2026-06-12 11:11:09
[2026-06-12 11:11:10,003.003 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 11:11:10,192.192 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 11:11:10,202.202 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 11:11:10,305.305 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 11:11:10,307.307 INFO    ] time= 12/06/2026 11:11:10
[2026-06-12 11:11:10,308.308 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 11:11:10,309.309 INFO    ] Checking for existing commands in stream...
[2026-06-12 11:11:10,420.420 INFO    ] No existing commands found in stream
[2026-06-12 11:11:15,438.438 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 11:11:15,441.441 INFO    ] Waiting 3.15 seconds before fallback handling...
[2026-06-12 11:11:18,984.984 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 11:11:18,985.985 INFO    ] Checking for system updates...
[2026-06-12 11:11:19,006.006 INFO    ] 200
[2026-06-12 11:11:19,007.007 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:11:19,046.046 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 11:11:19,048.048 INFO    ] No update needed
[2026-06-12 11:11:19,049.049 INFO    ] Checking for camera pi updates...
[2026-06-12 11:11:19,069.069 INFO    ] 200
[2026-06-12 11:11:19,071.071 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:11:19,096.096 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 11:11:19,237.237 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 11:11:19,238.238 INFO    ] No camera update needed
[2026-06-12 11:11:19,239.239 INFO    ] Script finished. Safe exiting...
[2026-06-12 11:11:19,241.241 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 11:11:19,244.244 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 11:11:19,246.246 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 11:11:21,287.287 INFO    ] ================================================
[2026-06-12 11:11:21,304.304 INFO    ] Launching Daemon at Fri Jun 12 11:11:21 IST 2026
[2026-06-12 11:11:21,316.316 INFO    ] ================================================
[2026-06-12 11:11:21,655.655 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 11:11:21
[2026-06-12 11:11:21,973.973 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 11:11:22,108.108 INFO    ] Initializing speech engine...
[2026-06-12 11:11:22,113.113 INFO    ] 2026-06-12 11:11:22
[2026-06-12 11:11:22,318.318 INFO    ] 2026-06-12 11:11:22
[2026-06-12 11:11:22,351.351 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 11:11:22,582.582 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 11:11:22,585.585 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 11:11:22,732.732 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 11:11:22,803.803 INFO    ] time= 12/06/2026 11:11:22
[2026-06-12 11:11:22,834.834 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 11:11:22,836.836 INFO    ] Checking for existing commands in stream...
[2026-06-12 11:11:22,968.968 INFO    ] No existing commands found in stream
[2026-06-12 11:11:27,978.978 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 11:11:27,981.981 INFO    ] Waiting 1.09 seconds before fallback handling...
[2026-06-12 11:11:29,424.424 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 11:11:29,426.426 INFO    ] Checking for system updates...
[2026-06-12 11:11:29,446.446 INFO    ] 200
[2026-06-12 11:11:29,447.447 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:11:29,489.489 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 11:11:29,491.491 INFO    ] No update needed
[2026-06-12 11:11:29,492.492 INFO    ] Checking for camera pi updates...
[2026-06-12 11:11:29,512.512 INFO    ] 200
[2026-06-12 11:11:29,513.513 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:11:29,538.538 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 11:11:29,577.577 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 11:11:29,578.578 INFO    ] No camera update needed
[2026-06-12 11:11:29,580.580 INFO    ] Script finished. Safe exiting...
[2026-06-12 11:11:29,581.581 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 11:11:29,585.585 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 11:11:29,588.588 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 11:11:31,627.627 INFO    ] ================================================
[2026-06-12 11:11:31,643.643 INFO    ] Launching Daemon at Fri Jun 12 11:11:31 IST 2026
[2026-06-12 11:11:31,655.655 INFO    ] ================================================
[2026-06-12 11:11:32,047.047 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 11:11:32
[2026-06-12 11:11:32,393.393 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 11:11:32,543.543 INFO    ] Initializing speech engine...
[2026-06-12 11:11:32,546.546 INFO    ] 2026-06-12 11:11:32
[2026-06-12 11:11:32,773.773 INFO    ] 2026-06-12 11:11:32
[2026-06-12 11:11:32,791.791 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 11:11:32,931.931 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 11:11:32,989.989 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 11:11:33,126.126 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 11:11:33,196.196 INFO    ] time= 12/06/2026 11:11:33
[2026-06-12 11:11:33,221.221 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 11:11:33,227.227 INFO    ] Checking for existing commands in stream...
[2026-06-12 11:11:33,294.294 INFO    ] No existing commands found in stream
[2026-06-12 11:11:38,308.308 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 11:11:38,311.311 INFO    ] Waiting 2.22 seconds before fallback handling...
[2026-06-12 11:11:40,894.894 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 11:11:40,895.895 INFO    ] Checking for system updates...
[2026-06-12 11:11:40,916.916 INFO    ] 200
[2026-06-12 11:11:40,917.917 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:11:40,947.947 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 11:11:40,948.948 INFO    ] No update needed
[2026-06-12 11:11:40,950.950 INFO    ] Checking for camera pi updates...
[2026-06-12 11:11:40,971.971 INFO    ] 200
[2026-06-12 11:11:40,972.972 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:11:40,995.995 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 11:11:41,031.031 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 11:11:41,033.033 INFO    ] No camera update needed
[2026-06-12 11:11:41,034.034 INFO    ] Script finished. Safe exiting...
[2026-06-12 11:11:41,035.035 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 11:11:41,038.038 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 11:11:41,041.041 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 11:11:43,081.081 INFO    ] ================================================
[2026-06-12 11:11:43,097.097 INFO    ] Launching Daemon at Fri Jun 12 11:11:43 IST 2026
[2026-06-12 11:11:43,108.108 INFO    ] ================================================
[2026-06-12 11:11:43,498.498 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 11:11:43
[2026-06-12 11:11:43,842.842 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 11:11:43,995.995 INFO    ] Initializing speech engine...
[2026-06-12 11:11:44,001.001 INFO    ] 2026-06-12 11:11:43
[2026-06-12 11:11:44,211.211 INFO    ] 2026-06-12 11:11:44
[2026-06-12 11:11:44,240.240 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 11:11:44,427.427 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 11:11:44,437.437 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 11:11:44,576.576 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 11:11:44,634.634 INFO    ] time= 12/06/2026 11:11:44
[2026-06-12 11:11:44,658.658 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 11:11:44,663.663 INFO    ] Checking for existing commands in stream...
[2026-06-12 11:11:44,732.732 INFO    ] No existing commands found in stream
[2026-06-12 11:11:49,742.742 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 11:11:49,745.745 INFO    ] Waiting 0.18 seconds before fallback handling...
[2026-06-12 11:11:50,353.353 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 11:11:50,354.354 INFO    ] Checking for system updates...
[2026-06-12 11:11:50,376.376 INFO    ] 200
[2026-06-12 11:11:50,377.377 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:11:50,418.418 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 11:11:50,419.419 INFO    ] No update needed
[2026-06-12 11:11:50,421.421 INFO    ] Checking for camera pi updates...
[2026-06-12 11:11:50,441.441 INFO    ] 200
[2026-06-12 11:11:50,442.442 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:11:50,465.465 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 11:11:50,504.504 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 11:11:50,505.505 INFO    ] No camera update needed
[2026-06-12 11:11:50,506.506 INFO    ] Script finished. Safe exiting...
[2026-06-12 11:11:50,507.507 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 11:11:50,510.510 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 11:11:50,513.513 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 11:11:52,552.552 INFO    ] ================================================
[2026-06-12 11:11:52,568.568 INFO    ] Launching Daemon at Fri Jun 12 11:11:52 IST 2026
[2026-06-12 11:11:52,579.579 INFO    ] ================================================
[2026-06-12 11:11:52,944.944 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 11:11:52
[2026-06-12 11:11:53,289.289 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 11:11:53,447.447 INFO    ] Initializing speech engine...
[2026-06-12 11:11:53,451.451 INFO    ] 2026-06-12 11:11:53
[2026-06-12 11:11:53,660.660 INFO    ] 2026-06-12 11:11:53
[2026-06-12 11:11:53,689.689 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 11:11:53,879.879 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 11:11:53,891.891 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 11:11:54,020.020 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 11:11:54,080.080 INFO    ] time= 12/06/2026 11:11:54
[2026-06-12 11:11:54,134.134 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 11:11:54,166.166 INFO    ] Checking for existing commands in stream...
[2026-06-12 11:11:54,240.240 INFO    ] No existing commands found in stream
[2026-06-12 11:11:59,255.255 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 11:11:59,258.258 INFO    ] Waiting 2.67 seconds before fallback handling...
[2026-06-12 11:12:02,407.407 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 11:12:02,409.409 INFO    ] Checking for system updates...
[2026-06-12 11:12:02,444.444 INFO    ] 200
[2026-06-12 11:12:02,446.446 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:12:02,498.498 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 11:12:02,500.500 INFO    ] No update needed
[2026-06-12 11:12:02,502.502 INFO    ] Checking for camera pi updates...
[2026-06-12 11:12:02,526.526 INFO    ] 200
[2026-06-12 11:12:02,529.529 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:12:02,559.559 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 11:12:02,583.583 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 11:12:02,585.585 INFO    ] No camera update needed
[2026-06-12 11:12:02,588.588 INFO    ] Script finished. Safe exiting...
[2026-06-12 11:12:02,590.590 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 11:12:02,595.595 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 11:12:02,599.599 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 11:12:04,642.642 INFO    ] ================================================
[2026-06-12 11:12:04,659.659 INFO    ] Launching Daemon at Fri Jun 12 11:12:04 IST 2026
[2026-06-12 11:12:04,670.670 INFO    ] ================================================
[2026-06-12 11:12:05,047.047 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 11:12:05
[2026-06-12 11:12:05,394.394 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 11:12:05,551.551 INFO    ] Initializing speech engine...
[2026-06-12 11:12:05,555.555 INFO    ] 2026-06-12 11:12:05
[2026-06-12 11:12:05,763.763 INFO    ] 2026-06-12 11:12:05
[2026-06-12 11:12:05,792.792 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 11:12:05,921.921 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 11:12:05,979.979 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 11:12:06,123.123 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 11:12:06,196.196 INFO    ] time= 12/06/2026 11:12:06
[2026-06-12 11:12:06,220.220 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 11:12:06,226.226 INFO    ] Checking for existing commands in stream...
[2026-06-12 11:12:06,318.318 INFO    ] No existing commands found in stream
[2026-06-12 11:12:11,337.337 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 11:12:11,341.341 INFO    ] Waiting 0.72 seconds before fallback handling...
[2026-06-12 11:12:12,453.453 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 11:12:12,455.455 INFO    ] Checking for system updates...
[2026-06-12 11:12:12,476.476 INFO    ] 200
[2026-06-12 11:12:12,478.478 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:12:12,509.509 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 11:12:12,510.510 INFO    ] No update needed
[2026-06-12 11:12:12,512.512 INFO    ] Checking for camera pi updates...
[2026-06-12 11:12:12,531.531 INFO    ] 200
[2026-06-12 11:12:12,532.532 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:12:12,557.557 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 11:12:12,594.594 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 11:12:12,595.595 INFO    ] No camera update needed
[2026-06-12 11:12:12,596.596 INFO    ] Script finished. Safe exiting...
[2026-06-12 11:12:12,597.597 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 11:12:12,600.600 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 11:12:12,603.603 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 11:12:14,641.641 INFO    ] ================================================
[2026-06-12 11:12:14,658.658 INFO    ] Launching Daemon at Fri Jun 12 11:12:14 IST 2026
[2026-06-12 11:12:14,670.670 INFO    ] ================================================
[2026-06-12 11:12:15,042.042 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 11:12:15
[2026-06-12 11:12:15,355.355 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 11:12:15,504.504 INFO    ] Initializing speech engine...
[2026-06-12 11:12:15,508.508 INFO    ] 2026-06-12 11:12:15
[2026-06-12 11:12:15,715.715 INFO    ] 2026-06-12 11:12:15
[2026-06-12 11:12:15,744.744 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 11:12:15,928.928 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 11:12:15,938.938 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 11:12:16,085.085 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 11:12:16,145.145 INFO    ] time= 12/06/2026 11:12:16
[2026-06-12 11:12:16,161.161 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 11:12:16,168.168 INFO    ] Checking for existing commands in stream...
[2026-06-12 11:12:16,234.234 INFO    ] No existing commands found in stream
[2026-06-12 11:12:21,244.244 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 11:12:21,247.247 INFO    ] Waiting 1.77 seconds before fallback handling...
[2026-06-12 11:12:23,384.384 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 11:12:23,386.386 INFO    ] Checking for system updates...
[2026-06-12 11:12:23,407.407 INFO    ] 200
[2026-06-12 11:12:23,409.409 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:12:23,443.443 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 11:12:23,444.444 INFO    ] No update needed
[2026-06-12 11:12:23,446.446 INFO    ] Checking for camera pi updates...
[2026-06-12 11:12:23,470.470 INFO    ] 200
[2026-06-12 11:12:23,471.471 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:12:23,497.497 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 11:12:23,530.530 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 11:12:23,532.532 INFO    ] No camera update needed
[2026-06-12 11:12:23,533.533 INFO    ] Script finished. Safe exiting...
[2026-06-12 11:12:23,535.535 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 11:12:23,538.538 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 11:12:23,541.541 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 11:12:25,580.580 INFO    ] ================================================
[2026-06-12 11:12:25,597.597 INFO    ] Launching Daemon at Fri Jun 12 11:12:25 IST 2026
[2026-06-12 11:12:25,609.609 INFO    ] ================================================
[2026-06-12 11:12:25,984.984 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 11:12:25
[2026-06-12 11:12:26,330.330 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 11:12:26,482.482 INFO    ] Initializing speech engine...
[2026-06-12 11:12:26,488.488 INFO    ] 2026-06-12 11:12:26
[2026-06-12 11:12:26,697.697 INFO    ] 2026-06-12 11:12:26
[2026-06-12 11:12:26,726.726 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 11:12:26,911.911 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 11:12:26,923.923 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 11:12:27,066.066 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 11:12:27,120.120 INFO    ] time= 12/06/2026 11:12:27
[2026-06-12 11:12:27,143.143 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 11:12:27,148.148 INFO    ] Checking for existing commands in stream...
[2026-06-12 11:12:27,216.216 INFO    ] No existing commands found in stream
[2026-06-12 11:12:32,223.223 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 11:12:32,227.227 INFO    ] Waiting 0.39 seconds before fallback handling...
[2026-06-12 11:12:32,995.995 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 11:12:32,998.998 INFO    ] Checking for system updates...
[2026-06-12 11:12:33,036.036 INFO    ] 200
[2026-06-12 11:12:33,039.039 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:12:33,081.081 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 11:12:33,083.083 INFO    ] No update needed
[2026-06-12 11:12:33,084.084 INFO    ] Checking for camera pi updates...
[2026-06-12 11:12:33,108.108 INFO    ] 200
[2026-06-12 11:12:33,109.109 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:12:33,134.134 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 11:12:33,170.170 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 11:12:33,172.172 INFO    ] No camera update needed
[2026-06-12 11:12:33,173.173 INFO    ] Script finished. Safe exiting...
[2026-06-12 11:12:33,174.174 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 11:12:33,178.178 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 11:12:33,181.181 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 11:12:35,220.220 INFO    ] ================================================
[2026-06-12 11:12:35,236.236 INFO    ] Launching Daemon at Fri Jun 12 11:12:35 IST 2026
[2026-06-12 11:12:35,247.247 INFO    ] ================================================
[2026-06-12 11:12:35,618.618 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 11:12:35
[2026-06-12 11:12:35,930.930 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 11:12:36,062.062 INFO    ] Initializing speech engine...
[2026-06-12 11:12:36,074.074 INFO    ] 2026-06-12 11:12:36
[2026-06-12 11:12:36,282.282 INFO    ] 2026-06-12 11:12:36
[2026-06-12 11:12:36,312.312 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 11:12:36,435.435 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 11:12:36,499.499 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 11:12:36,632.632 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 11:12:36,683.683 INFO    ] time= 12/06/2026 11:12:36
[2026-06-12 11:12:36,728.728 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 11:12:36,733.733 INFO    ] Checking for existing commands in stream...
[2026-06-12 11:12:36,805.805 INFO    ] No existing commands found in stream
[2026-06-12 11:12:41,819.819 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 11:12:41,822.822 INFO    ] Waiting 3.89 seconds before fallback handling...
[2026-06-12 11:12:46,085.085 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 11:12:46,087.087 INFO    ] Checking for system updates...
[2026-06-12 11:12:46,109.109 INFO    ] 200
[2026-06-12 11:12:46,110.110 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:12:46,143.143 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 11:12:46,145.145 INFO    ] No update needed
[2026-06-12 11:12:46,146.146 INFO    ] Checking for camera pi updates...
[2026-06-12 11:12:46,167.167 INFO    ] 200
[2026-06-12 11:12:46,168.168 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:12:46,192.192 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 11:12:46,232.232 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 11:12:46,233.233 INFO    ] No camera update needed
[2026-06-12 11:12:46,235.235 INFO    ] Script finished. Safe exiting...
[2026-06-12 11:12:46,236.236 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 11:12:46,239.239 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 11:12:46,241.241 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 11:12:48,283.283 INFO    ] ================================================
[2026-06-12 11:12:48,299.299 INFO    ] Launching Daemon at Fri Jun 12 11:12:48 IST 2026
[2026-06-12 11:12:48,310.310 INFO    ] ================================================
[2026-06-12 11:12:48,709.709 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 11:12:48
[2026-06-12 11:12:49,050.050 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 11:12:49,189.189 INFO    ] Initializing speech engine...
[2026-06-12 11:12:49,199.199 INFO    ] 2026-06-12 11:12:49
[2026-06-12 11:12:49,404.404 INFO    ] 2026-06-12 11:12:49
[2026-06-12 11:12:49,432.432 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 11:12:49,615.615 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 11:12:49,624.624 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 11:12:49,752.752 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 11:12:49,808.808 INFO    ] time= 12/06/2026 11:12:49
[2026-06-12 11:12:49,845.845 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 11:12:49,851.851 INFO    ] Checking for existing commands in stream...
[2026-06-12 11:12:49,916.916 INFO    ] No existing commands found in stream
[2026-06-12 11:12:54,927.927 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 11:12:54,930.930 INFO    ] Waiting 3.77 seconds before fallback handling...
[2026-06-12 11:12:59,108.108 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 11:12:59,110.110 INFO    ] Checking for system updates...
[2026-06-12 11:12:59,131.131 INFO    ] 200
[2026-06-12 11:12:59,133.133 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:12:59,163.163 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 11:12:59,165.165 INFO    ] No update needed
[2026-06-12 11:12:59,166.166 INFO    ] Checking for camera pi updates...
[2026-06-12 11:12:59,187.187 INFO    ] 200
[2026-06-12 11:12:59,189.189 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:12:59,214.214 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 11:12:59,251.251 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 11:12:59,252.252 INFO    ] No camera update needed
[2026-06-12 11:12:59,253.253 INFO    ] Script finished. Safe exiting...
[2026-06-12 11:12:59,255.255 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 11:12:59,258.258 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 11:12:59,261.261 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 11:13:01,308.308 INFO    ] ================================================
[2026-06-12 11:13:01,325.325 INFO    ] Launching Daemon at Fri Jun 12 11:13:01 IST 2026
[2026-06-12 11:13:01,358.358 INFO    ] ================================================
[2026-06-12 11:13:01,759.759 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 11:13:01
[2026-06-12 11:13:02,132.132 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 11:13:02,295.295 INFO    ] Initializing speech engine...
[2026-06-12 11:13:02,305.305 INFO    ] 2026-06-12 11:13:02
[2026-06-12 11:13:02,494.494 INFO    ] 2026-06-12 11:13:02
[2026-06-12 11:13:02,540.540 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 11:13:02,700.700 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 11:13:02,703.703 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 11:13:02,858.858 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 11:13:02,901.901 INFO    ] time= 12/06/2026 11:13:02
[2026-06-12 11:13:02,919.919 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 11:13:02,966.966 INFO    ] Checking for existing commands in stream...
[2026-06-12 11:13:03,101.101 INFO    ] No existing commands found in stream
[2026-06-12 11:13:08,112.112 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 11:13:08,115.115 INFO    ] Waiting 2.87 seconds before fallback handling...
[2026-06-12 11:13:16,371.371 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 11:13:16,373.373 INFO    ] Checking for system updates...
[2026-06-12 11:13:16,395.395 INFO    ] 200
[2026-06-12 11:13:16,397.397 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:13:16,429.429 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 11:13:16,431.431 INFO    ] No update needed
[2026-06-12 11:13:16,432.432 INFO    ] Checking for camera pi updates...
[2026-06-12 11:13:16,452.452 INFO    ] 200
[2026-06-12 11:13:16,454.454 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:13:16,480.480 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 11:13:16,517.517 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 11:13:16,518.518 INFO    ] No camera update needed
[2026-06-12 11:13:16,520.520 INFO    ] Script finished. Safe exiting...
[2026-06-12 11:13:16,521.521 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 11:13:16,525.525 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 11:13:16,528.528 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 11:13:18,566.566 INFO    ] ================================================
[2026-06-12 11:13:18,581.581 INFO    ] Launching Daemon at Fri Jun 12 11:13:18 IST 2026
[2026-06-12 11:13:18,593.593 INFO    ] ================================================
[2026-06-12 11:13:18,945.945 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 11:13:18
[2026-06-12 11:13:19,257.257 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 11:13:19,394.394 INFO    ] Initializing speech engine...
[2026-06-12 11:13:19,403.403 INFO    ] 2026-06-12 11:13:19
[2026-06-12 11:13:19,606.606 INFO    ] 2026-06-12 11:13:19
[2026-06-12 11:13:19,635.635 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 11:13:19,818.818 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 11:13:19,828.828 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 11:13:19,960.960 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 11:13:20,024.024 INFO    ] time= 12/06/2026 11:13:19
[2026-06-12 11:13:20,051.051 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 11:13:20,057.057 INFO    ] Checking for existing commands in stream...
[2026-06-12 11:13:20,147.147 INFO    ] No existing commands found in stream
[2026-06-12 11:13:25,156.156 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 11:13:25,159.159 INFO    ] Waiting 0.95 seconds before fallback handling...
[2026-06-12 11:13:26,475.475 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 11:13:26,476.476 INFO    ] Checking for system updates...
[2026-06-12 11:13:26,498.498 INFO    ] 200
[2026-06-12 11:13:26,500.500 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:13:26,533.533 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 11:13:26,534.534 INFO    ] No update needed
[2026-06-12 11:13:26,536.536 INFO    ] Checking for camera pi updates...
[2026-06-12 11:13:26,555.555 INFO    ] 200
[2026-06-12 11:13:26,556.556 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:13:26,582.582 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 11:13:26,732.732 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 11:13:26,733.733 INFO    ] No camera update needed
[2026-06-12 11:13:26,735.735 INFO    ] Script finished. Safe exiting...
[2026-06-12 11:13:26,736.736 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 11:13:26,739.739 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 11:13:26,742.742 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 11:13:28,782.782 INFO    ] ================================================
[2026-06-12 11:13:28,798.798 INFO    ] Launching Daemon at Fri Jun 12 11:13:28 IST 2026
[2026-06-12 11:13:28,809.809 INFO    ] ================================================
[2026-06-12 11:13:29,194.194 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 11:13:29
[2026-06-12 11:13:29,540.540 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 11:13:29,695.695 INFO    ] Initializing speech engine...
[2026-06-12 11:13:29,701.701 INFO    ] 2026-06-12 11:13:29
[2026-06-12 11:13:29,908.908 INFO    ] 2026-06-12 11:13:29
[2026-06-12 11:13:29,937.937 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 11:13:30,120.120 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 11:13:30,124.124 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 11:13:30,260.260 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 11:13:30,327.327 INFO    ] time= 12/06/2026 11:13:30
[2026-06-12 11:13:30,351.351 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 11:13:30,357.357 INFO    ] Checking for existing commands in stream...
[2026-06-12 11:13:30,424.424 INFO    ] No existing commands found in stream
[2026-06-12 11:13:35,449.449 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 11:13:35,452.452 INFO    ] Waiting 1.60 seconds before fallback handling...
[2026-06-12 11:13:37,442.442 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 11:13:37,443.443 INFO    ] Checking for system updates...
[2026-06-12 11:13:37,466.466 INFO    ] 200
[2026-06-12 11:13:37,468.468 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:13:37,501.501 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 11:13:37,503.503 INFO    ] No update needed
[2026-06-12 11:13:37,504.504 INFO    ] Checking for camera pi updates...
[2026-06-12 11:13:37,526.526 INFO    ] 200
[2026-06-12 11:13:37,527.527 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:13:37,551.551 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 11:13:37,589.589 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 11:13:37,591.591 INFO    ] No camera update needed
[2026-06-12 11:13:37,592.592 INFO    ] Script finished. Safe exiting...
[2026-06-12 11:13:37,594.594 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 11:13:37,597.597 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 11:13:37,600.600 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 11:13:39,639.639 INFO    ] ================================================
[2026-06-12 11:13:39,655.655 INFO    ] Launching Daemon at Fri Jun 12 11:13:39 IST 2026
[2026-06-12 11:13:39,667.667 INFO    ] ================================================
[2026-06-12 11:13:40,000.000 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 11:13:39
[2026-06-12 11:13:40,312.312 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 11:13:40,450.450 INFO    ] Initializing speech engine...
[2026-06-12 11:13:40,460.460 INFO    ] 2026-06-12 11:13:40
[2026-06-12 11:13:40,666.666 INFO    ] 2026-06-12 11:13:40
[2026-06-12 11:13:40,695.695 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 11:13:40,881.881 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 11:13:40,884.884 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 11:13:41,014.014 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 11:13:41,064.064 INFO    ] time= 12/06/2026 11:13:41
[2026-06-12 11:13:41,105.105 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 11:13:41,115.115 INFO    ] Checking for existing commands in stream...
[2026-06-12 11:13:41,187.187 INFO    ] No existing commands found in stream
[2026-06-12 11:13:46,196.196 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 11:13:46,199.199 INFO    ] Waiting 1.61 seconds before fallback handling...
[2026-06-12 11:13:48,191.191 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 11:13:48,193.193 INFO    ] Checking for system updates...
[2026-06-12 11:13:48,214.214 INFO    ] 200
[2026-06-12 11:13:48,215.215 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:13:48,247.247 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 11:13:48,248.248 INFO    ] No update needed
[2026-06-12 11:13:48,250.250 INFO    ] Checking for camera pi updates...
[2026-06-12 11:13:48,270.270 INFO    ] 200
[2026-06-12 11:13:48,272.272 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:13:48,295.295 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 11:13:48,335.335 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 11:13:48,337.337 INFO    ] No camera update needed
[2026-06-12 11:13:48,338.338 INFO    ] Script finished. Safe exiting...
[2026-06-12 11:13:48,339.339 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 11:13:48,343.343 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 11:13:48,346.346 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 11:13:50,388.388 INFO    ] ================================================
[2026-06-12 11:13:50,404.404 INFO    ] Launching Daemon at Fri Jun 12 11:13:50 IST 2026
[2026-06-12 11:13:50,415.415 INFO    ] ================================================
[2026-06-12 11:13:50,784.784 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 11:13:50
[2026-06-12 11:13:51,095.095 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 11:13:51,233.233 INFO    ] Initializing speech engine...
[2026-06-12 11:13:51,246.246 INFO    ] 2026-06-12 11:13:51
[2026-06-12 11:13:51,468.468 INFO    ] 2026-06-12 11:13:51
[2026-06-12 11:13:51,499.499 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 11:13:51,702.702 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 11:13:51,705.705 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 11:13:51,846.846 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 11:13:51,887.887 INFO    ] time= 12/06/2026 11:13:51
[2026-06-12 11:13:51,931.931 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 11:13:51,954.954 INFO    ] Checking for existing commands in stream...
[2026-06-12 11:13:52,030.030 INFO    ] No existing commands found in stream
[2026-06-12 11:13:57,041.041 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 11:13:57,044.044 INFO    ] Waiting 3.01 seconds before fallback handling...
[2026-06-12 11:14:00,394.394 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 11:14:00,395.395 INFO    ] Checking for system updates...
[2026-06-12 11:14:00,416.416 INFO    ] 200
[2026-06-12 11:14:00,417.417 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:14:00,449.449 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 11:14:00,450.450 INFO    ] No update needed
[2026-06-12 11:14:00,452.452 INFO    ] Checking for camera pi updates...
[2026-06-12 11:14:00,471.471 INFO    ] 200
[2026-06-12 11:14:00,472.472 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:14:00,495.495 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 11:14:00,533.533 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 11:14:00,534.534 INFO    ] No camera update needed
[2026-06-12 11:14:00,536.536 INFO    ] Script finished. Safe exiting...
[2026-06-12 11:14:00,537.537 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 11:14:00,540.540 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 11:14:00,543.543 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 11:14:02,578.578 INFO    ] ================================================
[2026-06-12 11:14:02,589.589 INFO    ] Launching Daemon at Fri Jun 12 11:14:02 IST 2026
[2026-06-12 11:14:02,597.597 INFO    ] ================================================
[2026-06-12 11:14:02,908.908 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 11:14:02
[2026-06-12 11:14:03,225.225 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 11:14:03,368.368 INFO    ] Initializing speech engine...
[2026-06-12 11:14:03,373.373 INFO    ] 2026-06-12 11:14:03
[2026-06-12 11:14:03,577.577 INFO    ] 2026-06-12 11:14:03
[2026-06-12 11:14:03,606.606 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 11:14:03,732.732 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 11:14:03,789.789 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 11:14:03,925.925 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 11:14:03,991.991 INFO    ] time= 12/06/2026 11:14:03
[2026-06-12 11:14:04,017.017 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 11:14:04,019.019 INFO    ] Checking for existing commands in stream...
[2026-06-12 11:14:04,090.090 INFO    ] No existing commands found in stream
[2026-06-12 11:14:09,102.102 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 11:14:09,105.105 INFO    ] Waiting 3.02 seconds before fallback handling...
[2026-06-12 11:14:12,487.487 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 11:14:12,489.489 INFO    ] Checking for system updates...
[2026-06-12 11:14:12,509.509 INFO    ] 200
[2026-06-12 11:14:12,511.511 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:14:12,543.543 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 11:14:12,545.545 INFO    ] No update needed
[2026-06-12 11:14:12,546.546 INFO    ] Checking for camera pi updates...
[2026-06-12 11:14:12,565.565 INFO    ] 200
[2026-06-12 11:14:12,566.566 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:14:12,592.592 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 11:14:12,635.635 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 11:14:12,636.636 INFO    ] No camera update needed
[2026-06-12 11:14:12,637.637 INFO    ] Script finished. Safe exiting...
[2026-06-12 11:14:12,638.638 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 11:14:12,641.641 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 11:14:12,644.644 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 11:14:14,684.684 INFO    ] ================================================
[2026-06-12 11:14:14,699.699 INFO    ] Launching Daemon at Fri Jun 12 11:14:14 IST 2026
[2026-06-12 11:14:14,711.711 INFO    ] ================================================
[2026-06-12 11:14:15,069.069 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 11:14:15
[2026-06-12 11:14:15,386.386 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 11:14:15,532.532 INFO    ] Initializing speech engine...
[2026-06-12 11:14:15,536.536 INFO    ] 2026-06-12 11:14:15
[2026-06-12 11:14:15,739.739 INFO    ] 2026-06-12 11:14:15
[2026-06-12 11:14:15,768.768 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 11:14:15,891.891 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 11:14:15,954.954 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 11:14:16,084.084 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 11:14:16,150.150 INFO    ] time= 12/06/2026 11:14:16
[2026-06-12 11:14:16,183.183 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 11:14:16,189.189 INFO    ] Checking for existing commands in stream...
[2026-06-12 11:14:16,256.256 INFO    ] No existing commands found in stream
[2026-06-12 11:14:21,275.275 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 11:14:21,278.278 INFO    ] Waiting 1.43 seconds before fallback handling...
[2026-06-12 11:14:23,076.076 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 11:14:23,078.078 INFO    ] Checking for system updates...
[2026-06-12 11:14:23,100.100 INFO    ] 200
[2026-06-12 11:14:23,101.101 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:14:23,134.134 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 11:14:23,136.136 INFO    ] No update needed
[2026-06-12 11:14:23,137.137 INFO    ] Checking for camera pi updates...
[2026-06-12 11:14:23,158.158 INFO    ] 200
[2026-06-12 11:14:23,159.159 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:14:23,184.184 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 11:14:23,222.222 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 11:14:23,224.224 INFO    ] No camera update needed
[2026-06-12 11:14:23,225.225 INFO    ] Script finished. Safe exiting...
[2026-06-12 11:14:23,226.226 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 11:14:23,229.229 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 11:14:23,232.232 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 11:14:25,271.271 INFO    ] ================================================
[2026-06-12 11:14:25,287.287 INFO    ] Launching Daemon at Fri Jun 12 11:14:25 IST 2026
[2026-06-12 11:14:25,298.298 INFO    ] ================================================
[2026-06-12 11:14:25,665.665 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 11:14:25
[2026-06-12 11:14:25,975.975 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 11:14:26,107.107 INFO    ] Initializing speech engine...
[2026-06-12 11:14:26,119.119 INFO    ] 2026-06-12 11:14:26
[2026-06-12 11:14:26,324.324 INFO    ] 2026-06-12 11:14:26
[2026-06-12 11:14:26,353.353 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 11:14:26,538.538 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 11:14:26,547.547 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 11:14:26,675.675 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 11:14:26,741.741 INFO    ] time= 12/06/2026 11:14:26
[2026-06-12 11:14:26,765.765 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 11:14:26,771.771 INFO    ] Checking for existing commands in stream...
[2026-06-12 11:14:26,835.835 INFO    ] No existing commands found in stream
[2026-06-12 11:14:31,841.841 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 11:14:31,843.843 INFO    ] Waiting 2.36 seconds before fallback handling...
[2026-06-12 11:14:34,570.570 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 11:14:34,571.571 INFO    ] Checking for system updates...
[2026-06-12 11:14:34,592.592 INFO    ] 200
[2026-06-12 11:14:34,593.593 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:14:34,623.623 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 11:14:34,625.625 INFO    ] No update needed
[2026-06-12 11:14:34,626.626 INFO    ] Checking for camera pi updates...
[2026-06-12 11:14:34,645.645 INFO    ] 200
[2026-06-12 11:14:34,647.647 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:14:34,670.670 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 11:14:34,707.707 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 11:14:34,708.708 INFO    ] No camera update needed
[2026-06-12 11:14:34,710.710 INFO    ] Script finished. Safe exiting...
[2026-06-12 11:14:34,711.711 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 11:14:34,714.714 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 11:14:34,717.717 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 11:14:36,755.755 INFO    ] ================================================
[2026-06-12 11:14:36,771.771 INFO    ] Launching Daemon at Fri Jun 12 11:14:36 IST 2026
[2026-06-12 11:14:36,783.783 INFO    ] ================================================
[2026-06-12 11:14:37,124.124 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 11:14:37
[2026-06-12 11:14:37,434.434 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 11:14:37,566.566 INFO    ] Initializing speech engine...
[2026-06-12 11:14:37,570.570 INFO    ] 2026-06-12 11:14:37
[2026-06-12 11:14:37,762.762 INFO    ] 2026-06-12 11:14:37
[2026-06-12 11:14:37,807.807 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 11:14:37,966.966 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 11:14:38,016.016 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 11:14:38,186.186 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 11:14:38,244.244 INFO    ] time= 12/06/2026 11:14:38
[2026-06-12 11:14:38,279.279 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 11:14:38,291.291 INFO    ] Checking for existing commands in stream...
[2026-06-12 11:14:38,422.422 INFO    ] No existing commands found in stream
[2026-06-12 11:14:43,432.432 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 11:14:43,435.435 INFO    ] Waiting 2.80 seconds before fallback handling...
[2026-06-12 11:14:46,591.591 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 11:14:46,593.593 INFO    ] Checking for system updates...
[2026-06-12 11:14:46,616.616 INFO    ] 200
[2026-06-12 11:14:46,617.617 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:14:46,648.648 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 11:14:46,649.649 INFO    ] No update needed
[2026-06-12 11:14:46,651.651 INFO    ] Checking for camera pi updates...
[2026-06-12 11:14:46,671.671 INFO    ] 200
[2026-06-12 11:14:46,672.672 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:14:46,695.695 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 11:14:46,741.741 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 11:14:46,742.742 INFO    ] No camera update needed
[2026-06-12 11:14:46,743.743 INFO    ] Script finished. Safe exiting...
[2026-06-12 11:14:46,745.745 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 11:14:46,748.748 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 11:14:46,750.750 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 11:14:48,789.789 INFO    ] ================================================
[2026-06-12 11:14:48,805.805 INFO    ] Launching Daemon at Fri Jun 12 11:14:48 IST 2026
[2026-06-12 11:14:48,817.817 INFO    ] ================================================
[2026-06-12 11:14:49,176.176 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 11:14:49
[2026-06-12 11:14:49,494.494 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 11:14:49,626.626 INFO    ] Initializing speech engine...
[2026-06-12 11:14:49,634.634 INFO    ] 2026-06-12 11:14:49
[2026-06-12 11:14:49,846.846 INFO    ] 2026-06-12 11:14:49
[2026-06-12 11:14:49,875.875 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 11:14:50,059.059 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 11:14:50,068.068 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 11:14:50,190.190 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 11:14:50,251.251 INFO    ] time= 12/06/2026 11:14:50
[2026-06-12 11:14:50,285.285 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 11:14:50,290.290 INFO    ] Checking for existing commands in stream...
[2026-06-12 11:14:50,386.386 INFO    ] No existing commands found in stream
[2026-06-12 11:14:55,400.400 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 11:14:55,403.403 INFO    ] Waiting 3.75 seconds before fallback handling...
[2026-06-12 11:14:59,542.542 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 11:14:59,543.543 INFO    ] Checking for system updates...
[2026-06-12 11:14:59,566.566 INFO    ] 200
[2026-06-12 11:14:59,568.568 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:14:59,601.601 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 11:14:59,602.602 INFO    ] No update needed
[2026-06-12 11:14:59,603.603 INFO    ] Checking for camera pi updates...
[2026-06-12 11:14:59,624.624 INFO    ] 200
[2026-06-12 11:14:59,625.625 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:14:59,651.651 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 11:14:59,694.694 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 11:14:59,695.695 INFO    ] No camera update needed
[2026-06-12 11:14:59,696.696 INFO    ] Script finished. Safe exiting...
[2026-06-12 11:14:59,698.698 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 11:14:59,701.701 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 11:14:59,704.704 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 11:15:01,742.742 INFO    ] ================================================
[2026-06-12 11:15:01,774.774 INFO    ] Launching Daemon at Fri Jun 12 11:15:01 IST 2026
[2026-06-12 11:15:01,906.906 INFO    ] ================================================
[2026-06-12 11:15:02,583.583 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 11:15:02
[2026-06-12 11:15:02,947.947 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 11:15:03,109.109 INFO    ] Initializing speech engine...
[2026-06-12 11:15:03,117.117 INFO    ] 2026-06-12 11:15:03
[2026-06-12 11:15:03,341.341 INFO    ] 2026-06-12 11:15:03
[2026-06-12 11:15:03,370.370 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 11:15:03,493.493 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 11:15:03,555.555 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 11:15:03,690.690 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 11:15:03,756.756 INFO    ] time= 12/06/2026 11:15:03
[2026-06-12 11:15:03,783.783 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 11:15:03,784.784 INFO    ] Checking for existing commands in stream...
[2026-06-12 11:15:03,856.856 INFO    ] No existing commands found in stream
[2026-06-12 11:15:08,870.870 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 11:15:08,873.873 INFO    ] Waiting 1.08 seconds before fallback handling...
[2026-06-12 11:15:10,309.309 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 11:15:10,310.310 INFO    ] Checking for system updates...
[2026-06-12 11:15:10,331.331 INFO    ] 200
[2026-06-12 11:15:10,333.333 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:15:10,363.363 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 11:15:10,364.364 INFO    ] No update needed
[2026-06-12 11:15:10,366.366 INFO    ] Checking for camera pi updates...
[2026-06-12 11:15:10,386.386 INFO    ] 200
[2026-06-12 11:15:10,388.388 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:15:10,414.414 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 11:15:10,459.459 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 11:15:10,460.460 INFO    ] No camera update needed
[2026-06-12 11:15:10,462.462 INFO    ] Script finished. Safe exiting...
[2026-06-12 11:15:10,463.463 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 11:15:10,466.466 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 11:15:10,469.469 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 11:15:12,508.508 INFO    ] ================================================
[2026-06-12 11:15:12,524.524 INFO    ] Launching Daemon at Fri Jun 12 11:15:12 IST 2026
[2026-06-12 11:15:12,535.535 INFO    ] ================================================
[2026-06-12 11:15:12,892.892 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 11:15:12
[2026-06-12 11:15:13,202.202 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 11:15:13,331.331 INFO    ] Initializing speech engine...
[2026-06-12 11:15:13,336.336 INFO    ] 2026-06-12 11:15:13
[2026-06-12 11:15:13,553.553 INFO    ] 2026-06-12 11:15:13
[2026-06-12 11:15:13,582.582 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 11:15:13,766.766 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 11:15:13,770.770 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 11:15:13,904.904 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 11:15:13,961.961 INFO    ] time= 12/06/2026 11:15:13
[2026-06-12 11:15:13,996.996 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 11:15:14,001.001 INFO    ] Checking for existing commands in stream...
[2026-06-12 11:15:14,072.072 INFO    ] No existing commands found in stream
[2026-06-12 11:15:19,082.082 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 11:15:19,085.085 INFO    ] Waiting 1.99 seconds before fallback handling...
[2026-06-12 11:15:21,480.480 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 11:15:21,482.482 INFO    ] Checking for system updates...
[2026-06-12 11:15:21,502.502 INFO    ] 200
[2026-06-12 11:15:21,504.504 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:15:21,536.536 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 11:15:21,537.537 INFO    ] No update needed
[2026-06-12 11:15:21,538.538 INFO    ] Checking for camera pi updates...
[2026-06-12 11:15:21,559.559 INFO    ] 200
[2026-06-12 11:15:21,560.560 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:15:21,598.598 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 11:15:21,635.635 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 11:15:21,636.636 INFO    ] No camera update needed
[2026-06-12 11:15:21,638.638 INFO    ] Script finished. Safe exiting...
[2026-06-12 11:15:21,639.639 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 11:15:21,642.642 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 11:15:21,645.645 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 11:15:23,683.683 INFO    ] ================================================
[2026-06-12 11:15:23,699.699 INFO    ] Launching Daemon at Fri Jun 12 11:15:23 IST 2026
[2026-06-12 11:15:23,710.710 INFO    ] ================================================
[2026-06-12 11:15:24,074.074 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 11:15:24
[2026-06-12 11:15:24,387.387 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 11:15:24,517.517 INFO    ] Initializing speech engine...
[2026-06-12 11:15:24,521.521 INFO    ] 2026-06-12 11:15:24
[2026-06-12 11:15:24,739.739 INFO    ] 2026-06-12 11:15:24
[2026-06-12 11:15:24,768.768 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 11:15:24,954.954 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 11:15:24,958.958 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 11:15:25,089.089 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 11:15:25,135.135 INFO    ] time= 12/06/2026 11:15:25
[2026-06-12 11:15:25,175.175 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 11:15:25,191.191 INFO    ] Checking for existing commands in stream...
[2026-06-12 11:15:25,287.287 INFO    ] No existing commands found in stream
[2026-06-12 11:15:30,296.296 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 11:15:30,299.299 INFO    ] Waiting 1.92 seconds before fallback handling...
[2026-06-12 11:15:32,535.535 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 11:15:32,537.537 INFO    ] Checking for system updates...
[2026-06-12 11:15:32,563.563 INFO    ] 200
[2026-06-12 11:15:32,564.564 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:15:32,603.603 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 11:15:32,605.605 INFO    ] No update needed
[2026-06-12 11:15:32,606.606 INFO    ] Checking for camera pi updates...
[2026-06-12 11:15:32,628.628 INFO    ] 200
[2026-06-12 11:15:32,629.629 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:15:32,655.655 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 11:15:32,692.692 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 11:15:32,694.694 INFO    ] No camera update needed
[2026-06-12 11:15:32,696.696 INFO    ] Script finished. Safe exiting...
[2026-06-12 11:15:32,698.698 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 11:15:32,702.702 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 11:15:32,706.706 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 11:15:34,745.745 INFO    ] ================================================
[2026-06-12 11:15:34,760.760 INFO    ] Launching Daemon at Fri Jun 12 11:15:34 IST 2026
[2026-06-12 11:15:34,771.771 INFO    ] ================================================
[2026-06-12 11:15:35,132.132 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 11:15:35
[2026-06-12 11:15:35,443.443 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 11:15:35,574.574 INFO    ] Initializing speech engine...
[2026-06-12 11:15:35,582.582 INFO    ] 2026-06-12 11:15:35
[2026-06-12 11:15:35,796.796 INFO    ] 2026-06-12 11:15:35
[2026-06-12 11:15:35,824.824 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 11:15:36,009.009 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 11:15:36,019.019 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 11:15:36,147.147 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 11:15:36,200.200 INFO    ] time= 12/06/2026 11:15:36
[2026-06-12 11:15:36,243.243 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 11:15:36,245.245 INFO    ] Checking for existing commands in stream...
[2026-06-12 11:15:36,317.317 INFO    ] No existing commands found in stream
[2026-06-12 11:15:41,331.331 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 11:15:41,334.334 INFO    ] Waiting 0.86 seconds before fallback handling...
[2026-06-12 11:15:42,586.586 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 11:15:42,587.587 INFO    ] Checking for system updates...
[2026-06-12 11:15:42,609.609 INFO    ] 200
[2026-06-12 11:15:42,610.610 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:15:42,640.640 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 11:15:42,642.642 INFO    ] No update needed
[2026-06-12 11:15:42,643.643 INFO    ] Checking for camera pi updates...
[2026-06-12 11:15:42,662.662 INFO    ] 200
[2026-06-12 11:15:42,664.664 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:15:42,690.690 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 11:15:42,732.732 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 11:15:42,733.733 INFO    ] No camera update needed
[2026-06-12 11:15:42,734.734 INFO    ] Script finished. Safe exiting...
[2026-06-12 11:15:42,736.736 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 11:15:42,739.739 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 11:15:42,741.741 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 11:15:44,780.780 INFO    ] ================================================
[2026-06-12 11:15:44,795.795 INFO    ] Launching Daemon at Fri Jun 12 11:15:44 IST 2026
[2026-06-12 11:15:44,806.806 INFO    ] ================================================
[2026-06-12 11:15:45,164.164 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 11:15:45
[2026-06-12 11:15:45,476.476 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 11:15:45,612.612 INFO    ] Initializing speech engine...
[2026-06-12 11:15:45,622.622 INFO    ] 2026-06-12 11:15:45
[2026-06-12 11:15:45,825.825 INFO    ] 2026-06-12 11:15:45
[2026-06-12 11:15:45,854.854 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 11:15:46,037.037 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 11:15:46,045.045 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 11:15:46,173.173 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 11:15:46,237.237 INFO    ] time= 12/06/2026 11:15:46
[2026-06-12 11:15:46,264.264 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 11:15:46,270.270 INFO    ] Checking for existing commands in stream...
[2026-06-12 11:15:46,360.360 INFO    ] No existing commands found in stream
[2026-06-12 11:15:51,384.384 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 11:15:51,387.387 INFO    ] Waiting 2.08 seconds before fallback handling...
[2026-06-12 11:15:53,847.847 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 11:15:53,849.849 INFO    ] Checking for system updates...
[2026-06-12 11:15:53,869.869 INFO    ] 200
[2026-06-12 11:15:53,871.871 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:15:53,901.901 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 11:15:53,902.902 INFO    ] No update needed
[2026-06-12 11:15:53,904.904 INFO    ] Checking for camera pi updates...
[2026-06-12 11:15:53,924.924 INFO    ] 200
[2026-06-12 11:15:53,926.926 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:15:53,950.950 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 11:15:53,989.989 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 11:15:53,991.991 INFO    ] No camera update needed
[2026-06-12 11:15:53,992.992 INFO    ] Script finished. Safe exiting...
[2026-06-12 11:15:53,993.993 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 11:15:53,996.996 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 11:15:53,999.999 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 11:15:56,037.037 INFO    ] ================================================
[2026-06-12 11:15:56,053.053 INFO    ] Launching Daemon at Fri Jun 12 11:15:56 IST 2026
[2026-06-12 11:15:56,064.064 INFO    ] ================================================
[2026-06-12 11:15:56,434.434 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 11:15:56
[2026-06-12 11:15:56,748.748 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 11:15:56,890.890 INFO    ] Initializing speech engine...
[2026-06-12 11:15:56,895.895 INFO    ] 2026-06-12 11:15:56
[2026-06-12 11:15:57,097.097 INFO    ] 2026-06-12 11:15:57
[2026-06-12 11:15:57,126.126 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 11:15:57,310.310 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 11:15:57,319.319 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 11:15:57,444.444 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 11:15:57,511.511 INFO    ] time= 12/06/2026 11:15:57
[2026-06-12 11:15:57,538.538 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 11:15:57,545.545 INFO    ] Checking for existing commands in stream...
[2026-06-12 11:15:57,611.611 INFO    ] No existing commands found in stream
[2026-06-12 11:16:02,616.616 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 11:16:02,617.617 INFO    ] Waiting 2.38 seconds before fallback handling...
[2026-06-12 11:16:05,372.372 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 11:16:05,374.374 INFO    ] Checking for system updates...
[2026-06-12 11:16:05,395.395 INFO    ] 200
[2026-06-12 11:16:05,397.397 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:16:05,427.427 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 11:16:05,428.428 INFO    ] No update needed
[2026-06-12 11:16:05,429.429 INFO    ] Checking for camera pi updates...
[2026-06-12 11:16:05,449.449 INFO    ] 200
[2026-06-12 11:16:05,451.451 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:16:05,475.475 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 11:16:05,510.510 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 11:16:05,511.511 INFO    ] No camera update needed
[2026-06-12 11:16:05,514.514 INFO    ] Script finished. Safe exiting...
[2026-06-12 11:16:05,516.516 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 11:16:05,521.521 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 11:16:05,525.525 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 11:16:07,564.564 INFO    ] ================================================
[2026-06-12 11:16:07,580.580 INFO    ] Launching Daemon at Fri Jun 12 11:16:07 IST 2026
[2026-06-12 11:16:07,591.591 INFO    ] ================================================
[2026-06-12 11:16:07,979.979 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 11:16:07
[2026-06-12 11:16:08,356.356 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 11:16:08,522.522 INFO    ] Initializing speech engine...
[2026-06-12 11:16:08,528.528 INFO    ] 2026-06-12 11:16:08
[2026-06-12 11:16:08,756.756 INFO    ] 2026-06-12 11:16:08
[2026-06-12 11:16:08,787.787 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 11:16:08,912.912 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 11:16:08,976.976 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 11:16:09,076.076 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 11:16:09,078.078 INFO    ] time= 12/06/2026 11:16:09
[2026-06-12 11:16:09,079.079 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 11:16:09,130.130 INFO    ] Checking for existing commands in stream...
[2026-06-12 11:16:09,228.228 INFO    ] No existing commands found in stream
[2026-06-12 11:16:14,241.241 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 11:16:14,244.244 INFO    ] Waiting 3.88 seconds before fallback handling...
[2026-06-12 11:16:18,491.491 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 11:16:18,493.493 INFO    ] Checking for system updates...
[2026-06-12 11:16:18,516.516 INFO    ] 200
[2026-06-12 11:16:18,517.517 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:16:18,550.550 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 11:16:18,552.552 INFO    ] No update needed
[2026-06-12 11:16:18,553.553 INFO    ] Checking for camera pi updates...
[2026-06-12 11:16:18,573.573 INFO    ] 200
[2026-06-12 11:16:18,575.575 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:16:18,598.598 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 11:16:18,635.635 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 11:16:18,636.636 INFO    ] No camera update needed
[2026-06-12 11:16:18,638.638 INFO    ] Script finished. Safe exiting...
[2026-06-12 11:16:18,639.639 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 11:16:18,642.642 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 11:16:18,645.645 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 11:16:20,688.688 INFO    ] ================================================
[2026-06-12 11:16:20,704.704 INFO    ] Launching Daemon at Fri Jun 12 11:16:20 IST 2026
[2026-06-12 11:16:20,718.718 INFO    ] ================================================
[2026-06-12 11:16:21,083.083 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 11:16:21
[2026-06-12 11:16:21,399.399 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 11:16:21,544.544 INFO    ] Initializing speech engine...
[2026-06-12 11:16:21,549.549 INFO    ] 2026-06-12 11:16:21
[2026-06-12 11:16:21,754.754 INFO    ] 2026-06-12 11:16:21
[2026-06-12 11:16:21,782.782 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 11:16:21,967.967 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 11:16:21,977.977 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 11:16:22,106.106 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 11:16:22,170.170 INFO    ] time= 12/06/2026 11:16:22
[2026-06-12 11:16:22,198.198 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 11:16:22,204.204 INFO    ] Checking for existing commands in stream...
[2026-06-12 11:16:22,271.271 INFO    ] No existing commands found in stream
[2026-06-12 11:16:27,279.279 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 11:16:27,280.280 INFO    ] Waiting 0.79 seconds before fallback handling...
[2026-06-12 11:16:28,431.431 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 11:16:28,432.432 INFO    ] Checking for system updates...
[2026-06-12 11:16:28,454.454 INFO    ] 200
[2026-06-12 11:16:28,456.456 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:16:28,488.488 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 11:16:28,489.489 INFO    ] No update needed
[2026-06-12 11:16:28,491.491 INFO    ] Checking for camera pi updates...
[2026-06-12 11:16:28,511.511 INFO    ] 200
[2026-06-12 11:16:28,513.513 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:16:28,536.536 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 11:16:28,572.572 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 11:16:28,573.573 INFO    ] No camera update needed
[2026-06-12 11:16:28,574.574 INFO    ] Script finished. Safe exiting...
[2026-06-12 11:16:28,576.576 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 11:16:28,579.579 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 11:16:28,582.582 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 11:16:30,621.621 INFO    ] ================================================
[2026-06-12 11:16:30,637.637 INFO    ] Launching Daemon at Fri Jun 12 11:16:30 IST 2026
[2026-06-12 11:16:30,648.648 INFO    ] ================================================
[2026-06-12 11:16:31,007.007 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 11:16:31
[2026-06-12 11:16:31,319.319 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 11:16:31,463.463 INFO    ] Initializing speech engine...
[2026-06-12 11:16:31,470.470 INFO    ] 2026-06-12 11:16:31
[2026-06-12 11:16:31,670.670 INFO    ] 2026-06-12 11:16:31
[2026-06-12 11:16:31,719.719 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 11:16:31,898.898 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 11:16:31,966.966 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 11:16:32,118.118 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 11:16:32,191.191 INFO    ] time= 12/06/2026 11:16:32
[2026-06-12 11:16:32,218.218 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 11:16:32,225.225 INFO    ] Checking for existing commands in stream...
[2026-06-12 11:16:32,292.292 INFO    ] No existing commands found in stream
[2026-06-12 11:16:37,301.301 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 11:16:37,304.304 INFO    ] Waiting 3.63 seconds before fallback handling...
[2026-06-12 11:16:41,302.302 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 11:16:41,303.303 INFO    ] Checking for system updates...
[2026-06-12 11:16:41,324.324 INFO    ] 200
[2026-06-12 11:16:41,325.325 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:16:41,358.358 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 11:16:41,359.359 INFO    ] No update needed
[2026-06-12 11:16:41,361.361 INFO    ] Checking for camera pi updates...
[2026-06-12 11:16:41,381.381 INFO    ] 200
[2026-06-12 11:16:41,383.383 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:16:41,406.406 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 11:16:41,441.441 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 11:16:41,442.442 INFO    ] No camera update needed
[2026-06-12 11:16:41,444.444 INFO    ] Script finished. Safe exiting...
[2026-06-12 11:16:41,445.445 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 11:16:41,448.448 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 11:16:41,451.451 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 11:16:43,491.491 INFO    ] ================================================
[2026-06-12 11:16:43,506.506 INFO    ] Launching Daemon at Fri Jun 12 11:16:43 IST 2026
[2026-06-12 11:16:43,517.517 INFO    ] ================================================
[2026-06-12 11:16:43,868.868 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 11:16:43
[2026-06-12 11:16:44,179.179 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 11:16:44,325.325 INFO    ] Initializing speech engine...
[2026-06-12 11:16:44,330.330 INFO    ] 2026-06-12 11:16:44
[2026-06-12 11:16:44,546.546 INFO    ] 2026-06-12 11:16:44
[2026-06-12 11:16:44,577.577 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 11:16:44,717.717 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 11:16:44,775.775 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 11:16:44,917.917 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 11:16:44,963.963 INFO    ] time= 12/06/2026 11:16:44
[2026-06-12 11:16:45,001.001 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 11:16:45,025.025 INFO    ] Checking for existing commands in stream...
[2026-06-12 11:16:45,102.102 INFO    ] No existing commands found in stream
[2026-06-12 11:16:50,111.111 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 11:16:50,114.114 INFO    ] Waiting 1.29 seconds before fallback handling...
[2026-06-12 11:16:51,792.792 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 11:16:51,794.794 INFO    ] Checking for system updates...
[2026-06-12 11:16:51,814.814 INFO    ] 200
[2026-06-12 11:16:51,815.815 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:16:51,848.848 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 11:16:51,849.849 INFO    ] No update needed
[2026-06-12 11:16:51,851.851 INFO    ] Checking for camera pi updates...
[2026-06-12 11:16:51,870.870 INFO    ] 200
[2026-06-12 11:16:51,871.871 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:16:51,896.896 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 11:16:51,931.931 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 11:16:51,932.932 INFO    ] No camera update needed
[2026-06-12 11:16:51,933.933 INFO    ] Script finished. Safe exiting...
[2026-06-12 11:16:51,935.935 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 11:16:51,937.937 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 11:16:51,940.940 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 11:16:53,981.981 INFO    ] ================================================
[2026-06-12 11:16:54,996.996 INFO    ] Launching Daemon at Fri Jun 12 11:16:53 IST 2026
[2026-06-12 11:16:54,010.010 INFO    ] ================================================
[2026-06-12 11:16:54,367.367 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 11:16:54
[2026-06-12 11:16:54,676.676 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 11:16:54,808.808 INFO    ] Initializing speech engine...
[2026-06-12 11:16:54,813.813 INFO    ] 2026-06-12 11:16:54
[2026-06-12 11:16:55,040.040 INFO    ] 2026-06-12 11:16:55
[2026-06-12 11:16:55,071.071 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 11:16:55,216.216 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 11:16:55,218.218 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 11:16:55,320.320 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 11:16:55,356.356 INFO    ] time= 12/06/2026 11:16:55
[2026-06-12 11:16:55,426.426 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 11:16:55,442.442 INFO    ] Checking for existing commands in stream...
[2026-06-12 11:16:55,511.511 INFO    ] No existing commands found in stream
[2026-06-12 11:17:00,520.520 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 11:17:00,523.523 INFO    ] Waiting 3.25 seconds before fallback handling...
[2026-06-12 11:17:04,123.123 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 11:17:04,124.124 INFO    ] Checking for system updates...
[2026-06-12 11:17:04,145.145 INFO    ] 200
[2026-06-12 11:17:04,147.147 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:17:04,177.177 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 11:17:04,178.178 INFO    ] No update needed
[2026-06-12 11:17:04,179.179 INFO    ] Checking for camera pi updates...
[2026-06-12 11:17:04,200.200 INFO    ] 200
[2026-06-12 11:17:04,202.202 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:17:04,226.226 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 11:17:04,271.271 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 11:17:04,273.273 INFO    ] No camera update needed
[2026-06-12 11:17:04,274.274 INFO    ] Script finished. Safe exiting...
[2026-06-12 11:17:04,275.275 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 11:17:04,278.278 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 11:17:04,281.281 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 11:17:06,321.321 INFO    ] ================================================
[2026-06-12 11:17:06,337.337 INFO    ] Launching Daemon at Fri Jun 12 11:17:06 IST 2026
[2026-06-12 11:17:06,349.349 INFO    ] ================================================
[2026-06-12 11:17:06,695.695 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 11:17:06
[2026-06-12 11:17:07,014.014 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 11:17:07,177.177 INFO    ] Initializing speech engine...
[2026-06-12 11:17:07,181.181 INFO    ] 2026-06-12 11:17:07
[2026-06-12 11:17:07,378.378 INFO    ] 2026-06-12 11:17:07
[2026-06-12 11:17:07,408.408 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 11:17:07,594.594 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 11:17:07,603.603 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 11:17:07,735.735 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 11:17:07,803.803 INFO    ] time= 12/06/2026 11:17:07
[2026-06-12 11:17:07,827.827 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 11:17:07,833.833 INFO    ] Checking for existing commands in stream...
[2026-06-12 11:17:07,901.901 INFO    ] No existing commands found in stream
[2026-06-12 11:17:12,912.912 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 11:17:12,916.916 INFO    ] Waiting 1.84 seconds before fallback handling...
[2026-06-12 11:17:15,134.134 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 11:17:15,136.136 INFO    ] Checking for system updates...
[2026-06-12 11:17:15,158.158 INFO    ] 200
[2026-06-12 11:17:15,159.159 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:17:15,193.193 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 11:17:15,195.195 INFO    ] No update needed
[2026-06-12 11:17:15,196.196 INFO    ] Checking for camera pi updates...
[2026-06-12 11:17:15,216.216 INFO    ] 200
[2026-06-12 11:17:15,217.217 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:17:15,242.242 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 11:17:15,282.282 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 11:17:15,283.283 INFO    ] No camera update needed
[2026-06-12 11:17:15,285.285 INFO    ] Script finished. Safe exiting...
[2026-06-12 11:17:15,286.286 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 11:17:15,290.290 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 11:17:15,293.293 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 11:17:17,332.332 INFO    ] ================================================
[2026-06-12 11:17:17,348.348 INFO    ] Launching Daemon at Fri Jun 12 11:17:17 IST 2026
[2026-06-12 11:17:17,359.359 INFO    ] ================================================
[2026-06-12 11:17:17,728.728 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 11:17:17
[2026-06-12 11:17:18,041.041 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 11:17:18,187.187 INFO    ] Initializing speech engine...
[2026-06-12 11:17:18,192.192 INFO    ] 2026-06-12 11:17:18
[2026-06-12 11:17:18,396.396 INFO    ] 2026-06-12 11:17:18
[2026-06-12 11:17:18,424.424 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 11:17:18,611.611 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 11:17:18,614.614 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 11:17:18,749.749 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 11:17:18,803.803 INFO    ] time= 12/06/2026 11:17:18
[2026-06-12 11:17:18,840.840 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 11:17:18,842.842 INFO    ] Checking for existing commands in stream...
[2026-06-12 11:17:18,913.913 INFO    ] No existing commands found in stream
[2026-06-12 11:17:23,922.922 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 11:17:23,925.925 INFO    ] Waiting 3.24 seconds before fallback handling...
[2026-06-12 11:17:27,547.547 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 11:17:27,548.548 INFO    ] Checking for system updates...
[2026-06-12 11:17:27,569.569 INFO    ] 200
[2026-06-12 11:17:27,571.571 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:17:27,601.601 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 11:17:27,603.603 INFO    ] No update needed
[2026-06-12 11:17:27,604.604 INFO    ] Checking for camera pi updates...
[2026-06-12 11:17:27,624.624 INFO    ] 200
[2026-06-12 11:17:27,625.625 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:17:27,650.650 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 11:17:27,687.687 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 11:17:27,688.688 INFO    ] No camera update needed
[2026-06-12 11:17:27,690.690 INFO    ] Script finished. Safe exiting...
[2026-06-12 11:17:27,691.691 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 11:17:27,694.694 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 11:17:27,697.697 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 11:17:29,738.738 INFO    ] ================================================
[2026-06-12 11:17:29,754.754 INFO    ] Launching Daemon at Fri Jun 12 11:17:29 IST 2026
[2026-06-12 11:17:29,765.765 INFO    ] ================================================
[2026-06-12 11:17:30,113.113 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 11:17:30
[2026-06-12 11:17:30,426.426 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 11:17:30,557.557 INFO    ] Initializing speech engine...
[2026-06-12 11:17:30,562.562 INFO    ] 2026-06-12 11:17:30
[2026-06-12 11:17:30,782.782 INFO    ] 2026-06-12 11:17:30
[2026-06-12 11:17:30,810.810 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 11:17:30,996.996 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 11:17:30,999.999 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 11:17:31,134.134 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 11:17:31,205.205 INFO    ] time= 12/06/2026 11:17:31
[2026-06-12 11:17:31,229.229 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 11:17:31,235.235 INFO    ] Checking for existing commands in stream...
[2026-06-12 11:17:31,301.301 INFO    ] No existing commands found in stream
[2026-06-12 11:17:36,312.312 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 11:17:36,314.314 INFO    ] Waiting 2.41 seconds before fallback handling...
[2026-06-12 11:17:39,118.118 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 11:17:39,121.121 INFO    ] Checking for system updates...
[2026-06-12 11:17:39,161.161 INFO    ] 200
[2026-06-12 11:17:39,164.164 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:17:39,221.221 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 11:17:39,224.224 INFO    ] No update needed
[2026-06-12 11:17:39,226.226 INFO    ] Checking for camera pi updates...
[2026-06-12 11:17:39,262.262 INFO    ] 200
[2026-06-12 11:17:39,263.263 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:17:39,286.286 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 11:17:39,429.429 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 11:17:39,430.430 INFO    ] No camera update needed
[2026-06-12 11:17:39,432.432 INFO    ] Script finished. Safe exiting...
[2026-06-12 11:17:39,433.433 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 11:17:39,436.436 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 11:17:39,439.439 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 11:17:41,478.478 INFO    ] ================================================
[2026-06-12 11:17:41,494.494 INFO    ] Launching Daemon at Fri Jun 12 11:17:41 IST 2026
[2026-06-12 11:17:41,506.506 INFO    ] ================================================
[2026-06-12 11:17:41,860.860 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 11:17:41
[2026-06-12 11:17:42,192.192 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 11:17:42,348.348 INFO    ] Initializing speech engine...
[2026-06-12 11:17:42,354.354 INFO    ] 2026-06-12 11:17:42
[2026-06-12 11:17:42,555.555 INFO    ] 2026-06-12 11:17:42
[2026-06-12 11:17:42,585.585 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 11:17:42,771.771 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 11:17:42,779.779 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 11:17:42,909.909 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 11:17:42,978.978 INFO    ] time= 12/06/2026 11:17:42
[2026-06-12 11:17:43,002.002 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 11:17:43,008.008 INFO    ] Checking for existing commands in stream...
[2026-06-12 11:17:43,075.075 INFO    ] No existing commands found in stream
[2026-06-12 11:17:48,100.100 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 11:17:48,103.103 INFO    ] Waiting 0.93 seconds before fallback handling...
[2026-06-12 11:17:49,422.422 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 11:17:49,424.424 INFO    ] Checking for system updates...
[2026-06-12 11:17:49,445.445 INFO    ] 200
[2026-06-12 11:17:49,447.447 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:17:49,481.481 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 11:17:49,482.482 INFO    ] No update needed
[2026-06-12 11:17:49,484.484 INFO    ] Checking for camera pi updates...
[2026-06-12 11:17:49,506.506 INFO    ] 200
[2026-06-12 11:17:49,508.508 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:17:49,531.531 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 11:17:49,571.571 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 11:17:49,572.572 INFO    ] No camera update needed
[2026-06-12 11:17:49,574.574 INFO    ] Script finished. Safe exiting...
[2026-06-12 11:17:49,575.575 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 11:17:49,578.578 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 11:17:49,581.581 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 11:17:51,621.621 INFO    ] ================================================
[2026-06-12 11:17:51,637.637 INFO    ] Launching Daemon at Fri Jun 12 11:17:51 IST 2026
[2026-06-12 11:17:51,648.648 INFO    ] ================================================
[2026-06-12 11:17:51,988.988 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 11:17:51
[2026-06-12 11:17:52,302.302 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 11:17:52,434.434 INFO    ] Initializing speech engine...
[2026-06-12 11:17:52,441.441 INFO    ] 2026-06-12 11:17:52
[2026-06-12 11:17:52,655.655 INFO    ] 2026-06-12 11:17:52
[2026-06-12 11:17:52,684.684 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 11:17:52,872.872 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 11:17:52,882.882 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 11:17:53,006.006 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 11:17:53,077.077 INFO    ] time= 12/06/2026 11:17:53
[2026-06-12 11:17:53,106.106 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 11:17:53,108.108 INFO    ] Checking for existing commands in stream...
[2026-06-12 11:17:53,180.180 INFO    ] No existing commands found in stream
[2026-06-12 11:17:58,189.189 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 11:17:58,192.192 INFO    ] Waiting 1.90 seconds before fallback handling...
[2026-06-12 11:18:00,443.443 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 11:18:00,444.444 INFO    ] Checking for system updates...
[2026-06-12 11:18:00,465.465 INFO    ] 200
[2026-06-12 11:18:00,467.467 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:18:00,497.497 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 11:18:00,499.499 INFO    ] No update needed
[2026-06-12 11:18:00,500.500 INFO    ] Checking for camera pi updates...
[2026-06-12 11:18:00,520.520 INFO    ] 200
[2026-06-12 11:18:00,521.521 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:18:00,545.545 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 11:18:00,589.589 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 11:18:00,590.590 INFO    ] No camera update needed
[2026-06-12 11:18:00,592.592 INFO    ] Script finished. Safe exiting...
[2026-06-12 11:18:00,593.593 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 11:18:00,596.596 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 11:18:00,599.599 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 11:18:02,624.624 INFO    ] ================================================
[2026-06-12 11:18:02,633.633 INFO    ] Launching Daemon at Fri Jun 12 11:18:02 IST 2026
[2026-06-12 11:18:02,639.639 INFO    ] ================================================
[2026-06-12 11:18:02,971.971 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 11:18:02
[2026-06-12 11:18:03,286.286 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 11:18:03,425.425 INFO    ] Initializing speech engine...
[2026-06-12 11:18:03,433.433 INFO    ] 2026-06-12 11:18:03
[2026-06-12 11:18:03,640.640 INFO    ] 2026-06-12 11:18:03
[2026-06-12 11:18:03,669.669 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 11:18:03,811.811 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 11:18:03,858.858 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 11:18:03,995.995 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 11:18:04,064.064 INFO    ] time= 12/06/2026 11:18:03
[2026-06-12 11:18:04,088.088 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 11:18:04,095.095 INFO    ] Checking for existing commands in stream...
[2026-06-12 11:18:04,166.166 INFO    ] No existing commands found in stream
[2026-06-12 11:18:09,172.172 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 11:18:09,175.175 INFO    ] Waiting 3.75 seconds before fallback handling...
[2026-06-12 11:18:13,304.304 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 11:18:13,305.305 INFO    ] Checking for system updates...
[2026-06-12 11:18:13,326.326 INFO    ] 200
[2026-06-12 11:18:13,327.327 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:18:13,357.357 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 11:18:13,359.359 INFO    ] No update needed
[2026-06-12 11:18:13,360.360 INFO    ] Checking for camera pi updates...
[2026-06-12 11:18:13,380.380 INFO    ] 200
[2026-06-12 11:18:13,381.381 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:18:13,406.406 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 11:18:13,443.443 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 11:18:13,444.444 INFO    ] No camera update needed
[2026-06-12 11:18:13,445.445 INFO    ] Script finished. Safe exiting...
[2026-06-12 11:18:13,447.447 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 11:18:13,450.450 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 11:18:13,452.452 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 11:18:15,492.492 INFO    ] ================================================
[2026-06-12 11:18:15,508.508 INFO    ] Launching Daemon at Fri Jun 12 11:18:15 IST 2026
[2026-06-12 11:18:15,519.519 INFO    ] ================================================
[2026-06-12 11:18:15,871.871 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 11:18:15
[2026-06-12 11:18:16,205.205 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 11:18:16,358.358 INFO    ] Initializing speech engine...
[2026-06-12 11:18:16,364.364 INFO    ] 2026-06-12 11:18:16
[2026-06-12 11:18:16,572.572 INFO    ] 2026-06-12 11:18:16
[2026-06-12 11:18:16,602.602 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 11:18:16,788.788 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 11:18:16,798.798 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 11:18:16,936.936 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 11:18:16,999.999 INFO    ] time= 12/06/2026 11:18:16
[2026-06-12 11:18:17,024.024 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 11:18:17,031.031 INFO    ] Checking for existing commands in stream...
[2026-06-12 11:18:17,098.098 INFO    ] No existing commands found in stream
[2026-06-12 11:18:22,118.118 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 11:18:22,121.121 INFO    ] Waiting 0.60 seconds before fallback handling...
[2026-06-12 11:18:23,083.083 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 11:18:23,085.085 INFO    ] Checking for system updates...
[2026-06-12 11:18:23,106.106 INFO    ] 200
[2026-06-12 11:18:23,107.107 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:18:23,137.137 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 11:18:23,139.139 INFO    ] No update needed
[2026-06-12 11:18:23,140.140 INFO    ] Checking for camera pi updates...
[2026-06-12 11:18:23,160.160 INFO    ] 200
[2026-06-12 11:18:23,161.161 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:18:23,185.185 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 11:18:23,231.231 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 11:18:23,233.233 INFO    ] No camera update needed
[2026-06-12 11:18:23,234.234 INFO    ] Script finished. Safe exiting...
[2026-06-12 11:18:23,235.235 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 11:18:23,238.238 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 11:18:23,242.242 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 11:18:25,281.281 INFO    ] ================================================
[2026-06-12 11:18:25,297.297 INFO    ] Launching Daemon at Fri Jun 12 11:18:25 IST 2026
[2026-06-12 11:18:25,308.308 INFO    ] ================================================
[2026-06-12 11:18:25,661.661 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 11:18:25
[2026-06-12 11:18:25,979.979 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 11:18:26,123.123 INFO    ] Initializing speech engine...
[2026-06-12 11:18:26,128.128 INFO    ] 2026-06-12 11:18:26
[2026-06-12 11:18:26,333.333 INFO    ] 2026-06-12 11:18:26
[2026-06-12 11:18:26,361.361 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 11:18:26,545.545 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 11:18:26,555.555 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 11:18:26,685.685 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 11:18:26,749.749 INFO    ] time= 12/06/2026 11:18:26
[2026-06-12 11:18:26,774.774 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 11:18:26,779.779 INFO    ] Checking for existing commands in stream...
[2026-06-12 11:18:26,851.851 INFO    ] No existing commands found in stream
[2026-06-12 11:18:31,861.861 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 11:18:31,864.864 INFO    ] Waiting 3.29 seconds before fallback handling...
[2026-06-12 11:18:35,524.524 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 11:18:35,526.526 INFO    ] Checking for system updates...
[2026-06-12 11:18:35,547.547 INFO    ] 200
[2026-06-12 11:18:35,548.548 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:18:35,581.581 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 11:18:35,582.582 INFO    ] No update needed
[2026-06-12 11:18:35,583.583 INFO    ] Checking for camera pi updates...
[2026-06-12 11:18:35,604.604 INFO    ] 200
[2026-06-12 11:18:35,605.605 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:18:35,630.630 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 11:18:35,665.665 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 11:18:35,666.666 INFO    ] No camera update needed
[2026-06-12 11:18:35,668.668 INFO    ] Script finished. Safe exiting...
[2026-06-12 11:18:35,669.669 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 11:18:35,672.672 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 11:18:35,675.675 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 11:18:37,714.714 INFO    ] ================================================
[2026-06-12 11:18:37,730.730 INFO    ] Launching Daemon at Fri Jun 12 11:18:37 IST 2026
[2026-06-12 11:18:37,741.741 INFO    ] ================================================
[2026-06-12 11:18:38,115.115 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 11:18:38
[2026-06-12 11:18:38,448.448 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 11:18:38,599.599 INFO    ] Initializing speech engine...
[2026-06-12 11:18:38,603.603 INFO    ] 2026-06-12 11:18:38
[2026-06-12 11:18:38,808.808 INFO    ] 2026-06-12 11:18:38
[2026-06-12 11:18:38,837.837 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 11:18:39,022.022 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 11:18:39,032.032 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 11:18:39,176.176 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 11:18:39,229.229 INFO    ] time= 12/06/2026 11:18:39
[2026-06-12 11:18:39,253.253 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 11:18:39,258.258 INFO    ] Checking for existing commands in stream...
[2026-06-12 11:18:39,325.325 INFO    ] No existing commands found in stream
[2026-06-12 11:18:44,340.340 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 11:18:44,343.343 INFO    ] Waiting 2.33 seconds before fallback handling...
[2026-06-12 11:18:47,004.004 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 11:18:47,006.006 INFO    ] Checking for system updates...
[2026-06-12 11:18:47,027.027 INFO    ] 200
[2026-06-12 11:18:47,028.028 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:18:47,059.059 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 11:18:47,061.061 INFO    ] No update needed
[2026-06-12 11:18:47,062.062 INFO    ] Checking for camera pi updates...
[2026-06-12 11:18:47,083.083 INFO    ] 200
[2026-06-12 11:18:47,085.085 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:18:47,108.108 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 11:18:47,151.151 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 11:18:47,152.152 INFO    ] No camera update needed
[2026-06-12 11:18:47,154.154 INFO    ] Script finished. Safe exiting...
[2026-06-12 11:18:47,155.155 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 11:18:47,158.158 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 11:18:47,161.161 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 11:18:49,199.199 INFO    ] ================================================
[2026-06-12 11:18:49,215.215 INFO    ] Launching Daemon at Fri Jun 12 11:18:49 IST 2026
[2026-06-12 11:18:49,226.226 INFO    ] ================================================
[2026-06-12 11:18:49,563.563 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 11:18:49
[2026-06-12 11:18:49,876.876 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 11:18:50,008.008 INFO    ] Initializing speech engine...
[2026-06-12 11:18:50,013.013 INFO    ] 2026-06-12 11:18:50
[2026-06-12 11:18:50,213.213 INFO    ] 2026-06-12 11:18:50
[2026-06-12 11:18:50,257.257 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 11:18:50,415.415 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 11:18:50,478.478 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 11:18:50,628.628 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 11:18:50,680.680 INFO    ] time= 12/06/2026 11:18:50
[2026-06-12 11:18:50,715.715 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 11:18:50,732.732 INFO    ] Checking for existing commands in stream...
[2026-06-12 11:18:50,807.807 INFO    ] No existing commands found in stream
[2026-06-12 11:18:55,818.818 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 11:18:55,821.821 INFO    ] Waiting 0.75 seconds before fallback handling...
[2026-06-12 11:18:57,002.002 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 11:18:57,004.004 INFO    ] Checking for system updates...
[2026-06-12 11:18:57,025.025 INFO    ] 200
[2026-06-12 11:18:57,026.026 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:18:57,056.056 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 11:18:57,058.058 INFO    ] No update needed
[2026-06-12 11:18:57,059.059 INFO    ] Checking for camera pi updates...
[2026-06-12 11:18:57,079.079 INFO    ] 200
[2026-06-12 11:18:57,081.081 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:18:57,105.105 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 11:18:57,142.142 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 11:18:57,143.143 INFO    ] No camera update needed
[2026-06-12 11:18:57,145.145 INFO    ] Script finished. Safe exiting...
[2026-06-12 11:18:57,146.146 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 11:18:57,149.149 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 11:18:57,152.152 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 11:18:59,192.192 INFO    ] ================================================
[2026-06-12 11:18:59,208.208 INFO    ] Launching Daemon at Fri Jun 12 11:18:59 IST 2026
[2026-06-12 11:18:59,220.220 INFO    ] ================================================
[2026-06-12 11:18:59,551.551 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 11:18:59
[2026-06-12 11:18:59,862.862 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 11:18:59,991.991 INFO    ] Initializing speech engine...
[2026-06-12 11:18:59,995.995 INFO    ] 2026-06-12 11:18:59
[2026-06-12 11:19:00,211.211 INFO    ] 2026-06-12 11:19:00
[2026-06-12 11:19:00,238.238 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 11:19:00,361.361 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 11:19:00,423.423 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 11:19:00,560.560 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 11:19:00,619.619 INFO    ] time= 12/06/2026 11:19:00
[2026-06-12 11:19:00,648.648 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 11:19:00,653.653 INFO    ] Checking for existing commands in stream...
[2026-06-12 11:19:00,725.725 INFO    ] No existing commands found in stream
[2026-06-12 11:19:05,734.734 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 11:19:05,736.736 INFO    ] Waiting 2.31 seconds before fallback handling...
[2026-06-12 11:19:08,440.440 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 11:19:08,443.443 INFO    ] Checking for system updates...
[2026-06-12 11:19:08,479.479 INFO    ] 200
[2026-06-12 11:19:08,482.482 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:19:08,521.521 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 11:19:08,522.522 INFO    ] No update needed
[2026-06-12 11:19:08,523.523 INFO    ] Checking for camera pi updates...
[2026-06-12 11:19:08,543.543 INFO    ] 200
[2026-06-12 11:19:08,544.544 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:19:08,568.568 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 11:19:08,614.614 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 11:19:08,616.616 INFO    ] No camera update needed
[2026-06-12 11:19:08,617.617 INFO    ] Script finished. Safe exiting...
[2026-06-12 11:19:08,618.618 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 11:19:08,622.622 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 11:19:08,625.625 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 11:19:10,664.664 INFO    ] ================================================
[2026-06-12 11:19:10,684.684 INFO    ] Launching Daemon at Fri Jun 12 11:19:10 IST 2026
[2026-06-12 11:19:10,695.695 INFO    ] ================================================
[2026-06-12 11:19:11,055.055 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 11:19:11
[2026-06-12 11:19:11,371.371 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 11:19:11,501.501 INFO    ] Initializing speech engine...
[2026-06-12 11:19:11,509.509 INFO    ] 2026-06-12 11:19:11
[2026-06-12 11:19:11,720.720 INFO    ] 2026-06-12 11:19:11
[2026-06-12 11:19:11,749.749 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 11:19:11,871.871 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 11:19:11,934.934 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 11:19:12,064.064 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 11:19:12,105.105 INFO    ] time= 12/06/2026 11:19:12
[2026-06-12 11:19:12,143.143 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 11:19:12,164.164 INFO    ] Checking for existing commands in stream...
[2026-06-12 11:19:12,235.235 INFO    ] No existing commands found in stream
[2026-06-12 11:19:17,244.244 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 11:19:17,247.247 INFO    ] Waiting 0.80 seconds before fallback handling...
[2026-06-12 11:19:18,412.412 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 11:19:18,414.414 INFO    ] Checking for system updates...
[2026-06-12 11:19:18,436.436 INFO    ] 200
[2026-06-12 11:19:18,437.437 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:19:18,470.470 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 11:19:18,472.472 INFO    ] No update needed
[2026-06-12 11:19:18,473.473 INFO    ] Checking for camera pi updates...
[2026-06-12 11:19:18,493.493 INFO    ] 200
[2026-06-12 11:19:18,494.494 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:19:18,517.517 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 11:19:18,556.556 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 11:19:18,557.557 INFO    ] No camera update needed
[2026-06-12 11:19:18,558.558 INFO    ] Script finished. Safe exiting...
[2026-06-12 11:19:18,560.560 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 11:19:18,563.563 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 11:19:18,566.566 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 11:19:20,606.606 INFO    ] ================================================
[2026-06-12 11:19:20,622.622 INFO    ] Launching Daemon at Fri Jun 12 11:19:20 IST 2026
[2026-06-12 11:19:20,633.633 INFO    ] ================================================
[2026-06-12 11:19:21,001.001 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 11:19:20
[2026-06-12 11:19:21,314.314 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 11:19:21,458.458 INFO    ] Initializing speech engine...
[2026-06-12 11:19:21,463.463 INFO    ] 2026-06-12 11:19:21
[2026-06-12 11:19:21,668.668 INFO    ] 2026-06-12 11:19:21
[2026-06-12 11:19:21,698.698 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 11:19:21,883.883 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 11:19:21,887.887 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 11:19:22,018.018 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 11:19:22,084.084 INFO    ] time= 12/06/2026 11:19:22
[2026-06-12 11:19:22,117.117 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 11:19:22,123.123 INFO    ] Checking for existing commands in stream...
[2026-06-12 11:19:22,192.192 INFO    ] No existing commands found in stream
[2026-06-12 11:19:27,201.201 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 11:19:27,204.204 INFO    ] Waiting 3.57 seconds before fallback handling...
[2026-06-12 11:19:31,178.178 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 11:19:31,179.179 INFO    ] Checking for system updates...
[2026-06-12 11:19:31,203.203 INFO    ] 200
[2026-06-12 11:19:31,204.204 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:19:31,242.242 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 11:19:31,244.244 INFO    ] No update needed
[2026-06-12 11:19:31,245.245 INFO    ] Checking for camera pi updates...
[2026-06-12 11:19:31,267.267 INFO    ] 200
[2026-06-12 11:19:31,268.268 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:19:31,299.299 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 11:19:31,344.344 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 11:19:31,346.346 INFO    ] No camera update needed
[2026-06-12 11:19:31,347.347 INFO    ] Script finished. Safe exiting...
[2026-06-12 11:19:31,349.349 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 11:19:31,352.352 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 11:19:31,355.355 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 11:19:33,387.387 INFO    ] ================================================
[2026-06-12 11:19:33,403.403 INFO    ] Launching Daemon at Fri Jun 12 11:19:33 IST 2026
[2026-06-12 11:19:33,414.414 INFO    ] ================================================
[2026-06-12 11:19:33,772.772 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 11:19:33
[2026-06-12 11:19:34,105.105 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 11:19:34,254.254 INFO    ] Initializing speech engine...
[2026-06-12 11:19:34,260.260 INFO    ] 2026-06-12 11:19:34
[2026-06-12 11:19:34,466.466 INFO    ] 2026-06-12 11:19:34
[2026-06-12 11:19:34,494.494 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 11:19:34,677.677 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 11:19:34,687.687 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 11:19:34,816.816 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 11:19:34,875.875 INFO    ] time= 12/06/2026 11:19:34
[2026-06-12 11:19:34,907.907 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 11:19:34,914.914 INFO    ] Checking for existing commands in stream...
[2026-06-12 11:19:34,979.979 INFO    ] No existing commands found in stream
[2026-06-12 11:19:39,990.990 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 11:19:39,993.993 INFO    ] Waiting 0.19 seconds before fallback handling...
[2026-06-12 11:19:40,545.545 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 11:19:40,547.547 INFO    ] Checking for system updates...
[2026-06-12 11:19:40,568.568 INFO    ] 200
[2026-06-12 11:19:40,569.569 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:19:40,600.600 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 11:19:40,602.602 INFO    ] No update needed
[2026-06-12 11:19:40,603.603 INFO    ] Checking for camera pi updates...
[2026-06-12 11:19:40,622.622 INFO    ] 200
[2026-06-12 11:19:40,624.624 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:19:40,648.648 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 11:19:40,684.684 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 11:19:40,685.685 INFO    ] No camera update needed
[2026-06-12 11:19:40,686.686 INFO    ] Script finished. Safe exiting...
[2026-06-12 11:19:40,688.688 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 11:19:40,691.691 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 11:19:40,693.693 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 11:19:42,732.732 INFO    ] ================================================
[2026-06-12 11:19:42,747.747 INFO    ] Launching Daemon at Fri Jun 12 11:19:42 IST 2026
[2026-06-12 11:19:42,758.758 INFO    ] ================================================
[2026-06-12 11:19:43,106.106 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 11:19:43
[2026-06-12 11:19:43,422.422 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 11:19:43,554.554 INFO    ] Initializing speech engine...
[2026-06-12 11:19:43,557.557 INFO    ] 2026-06-12 11:19:43
[2026-06-12 11:19:43,788.788 INFO    ] 2026-06-12 11:19:43
[2026-06-12 11:19:43,819.819 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 11:19:44,016.016 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 11:19:44,020.020 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 11:19:44,162.162 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 11:19:44,224.224 INFO    ] time= 12/06/2026 11:19:44
[2026-06-12 11:19:44,241.241 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 11:19:44,264.264 INFO    ] Checking for existing commands in stream...
[2026-06-12 11:19:44,339.339 INFO    ] No existing commands found in stream
[2026-06-12 11:19:49,348.348 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 11:19:49,351.351 INFO    ] Waiting 0.06 seconds before fallback handling...
[2026-06-12 11:19:49,745.745 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 11:19:49,746.746 INFO    ] Checking for system updates...
[2026-06-12 11:19:49,767.767 INFO    ] 200
[2026-06-12 11:19:49,769.769 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:19:49,798.798 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 11:19:49,800.800 INFO    ] No update needed
[2026-06-12 11:19:49,802.802 INFO    ] Checking for camera pi updates...
[2026-06-12 11:19:49,821.821 INFO    ] 200
[2026-06-12 11:19:49,822.822 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:19:49,845.845 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 11:19:49,988.988 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 11:19:49,990.990 INFO    ] No camera update needed
[2026-06-12 11:19:49,991.991 INFO    ] Script finished. Safe exiting...
[2026-06-12 11:19:49,993.993 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 11:19:49,995.995 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 11:19:49,998.998 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 11:19:52,036.036 INFO    ] ================================================
[2026-06-12 11:19:52,051.051 INFO    ] Launching Daemon at Fri Jun 12 11:19:52 IST 2026
[2026-06-12 11:19:52,062.062 INFO    ] ================================================
[2026-06-12 11:19:52,394.394 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 11:19:52
[2026-06-12 11:19:52,715.715 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 11:19:52,867.867 INFO    ] Initializing speech engine...
[2026-06-12 11:19:52,872.872 INFO    ] 2026-06-12 11:19:52
[2026-06-12 11:19:53,082.082 INFO    ] 2026-06-12 11:19:53
[2026-06-12 11:19:53,112.112 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 11:19:53,299.299 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 11:19:53,309.309 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 11:19:53,448.448 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 11:19:53,512.512 INFO    ] time= 12/06/2026 11:19:53
[2026-06-12 11:19:53,536.536 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 11:19:53,543.543 INFO    ] Checking for existing commands in stream...
[2026-06-12 11:19:53,612.612 INFO    ] No existing commands found in stream
[2026-06-12 11:19:58,637.637 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 11:19:58,640.640 INFO    ] Waiting 3.66 seconds before fallback handling...
[2026-06-12 11:20:02,907.907 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 11:20:02,908.908 INFO    ] Checking for system updates...
[2026-06-12 11:20:02,931.931 INFO    ] 200
[2026-06-12 11:20:02,932.932 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:20:02,962.962 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 11:20:02,964.964 INFO    ] No update needed
[2026-06-12 11:20:02,965.965 INFO    ] Checking for camera pi updates...
[2026-06-12 11:20:02,988.988 INFO    ] 200
[2026-06-12 11:20:02,989.989 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:20:03,013.013 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 11:20:03,034.034 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 11:20:03,035.035 INFO    ] No camera update needed
[2026-06-12 11:20:03,037.037 INFO    ] Script finished. Safe exiting...
[2026-06-12 11:20:03,038.038 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 11:20:03,041.041 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 11:20:03,044.044 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 11:20:05,084.084 INFO    ] ================================================
[2026-06-12 11:20:05,099.099 INFO    ] Launching Daemon at Fri Jun 12 11:20:05 IST 2026
[2026-06-12 11:20:05,110.110 INFO    ] ================================================
[2026-06-12 11:20:05,449.449 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 11:20:05
[2026-06-12 11:20:05,772.772 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 11:20:05,929.929 INFO    ] Initializing speech engine...
[2026-06-12 11:20:05,934.934 INFO    ] 2026-06-12 11:20:05
[2026-06-12 11:20:06,137.137 INFO    ] 2026-06-12 11:20:06
[2026-06-12 11:20:06,166.166 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 11:20:06,289.289 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 11:20:06,353.353 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 11:20:06,487.487 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 11:20:06,550.550 INFO    ] time= 12/06/2026 11:20:06
[2026-06-12 11:20:06,582.582 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 11:20:06,584.584 INFO    ] Checking for existing commands in stream...
[2026-06-12 11:20:06,656.656 INFO    ] No existing commands found in stream
[2026-06-12 11:20:11,669.669 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 11:20:11,671.671 INFO    ] Waiting 3.29 seconds before fallback handling...
[2026-06-12 11:20:15,315.315 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 11:20:15,316.316 INFO    ] Checking for system updates...
[2026-06-12 11:20:15,337.337 INFO    ] 200
[2026-06-12 11:20:15,338.338 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:20:15,368.368 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 11:20:15,369.369 INFO    ] No update needed
[2026-06-12 11:20:15,371.371 INFO    ] Checking for camera pi updates...
[2026-06-12 11:20:15,390.390 INFO    ] 200
[2026-06-12 11:20:15,391.391 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:20:15,414.414 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 11:20:15,458.458 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 11:20:15,460.460 INFO    ] No camera update needed
[2026-06-12 11:20:15,461.461 INFO    ] Script finished. Safe exiting...
[2026-06-12 11:20:15,462.462 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 11:20:15,465.465 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 11:20:15,468.468 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 11:20:17,507.507 INFO    ] ================================================
[2026-06-12 11:20:17,524.524 INFO    ] Launching Daemon at Fri Jun 12 11:20:17 IST 2026
[2026-06-12 11:20:17,535.535 INFO    ] ================================================
[2026-06-12 11:20:17,874.874 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 11:20:17
[2026-06-12 11:20:18,188.188 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 11:20:18,331.331 INFO    ] Initializing speech engine...
[2026-06-12 11:20:18,335.335 INFO    ] 2026-06-12 11:20:18
[2026-06-12 11:20:18,539.539 INFO    ] 2026-06-12 11:20:18
[2026-06-12 11:20:18,568.568 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 11:20:18,751.751 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 11:20:18,754.754 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 11:20:18,883.883 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 11:20:18,943.943 INFO    ] time= 12/06/2026 11:20:18
[2026-06-12 11:20:18,981.981 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 11:20:18,983.983 INFO    ] Checking for existing commands in stream...
[2026-06-12 11:20:19,054.054 INFO    ] No existing commands found in stream
[2026-06-12 11:20:24,068.068 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 11:20:24,071.071 INFO    ] Waiting 2.00 seconds before fallback handling...
[2026-06-12 11:20:26,450.450 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 11:20:26,452.452 INFO    ] Checking for system updates...
[2026-06-12 11:20:26,473.473 INFO    ] 200
[2026-06-12 11:20:26,474.474 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:20:26,506.506 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 11:20:26,508.508 INFO    ] No update needed
[2026-06-12 11:20:26,509.509 INFO    ] Checking for camera pi updates...
[2026-06-12 11:20:26,530.530 INFO    ] 200
[2026-06-12 11:20:26,531.531 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:20:26,554.554 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 11:20:26,601.601 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 11:20:26,602.602 INFO    ] No camera update needed
[2026-06-12 11:20:26,603.603 INFO    ] Script finished. Safe exiting...
[2026-06-12 11:20:26,605.605 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 11:20:26,608.608 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 11:20:26,611.611 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 11:20:28,651.651 INFO    ] ================================================
[2026-06-12 11:20:28,667.667 INFO    ] Launching Daemon at Fri Jun 12 11:20:28 IST 2026
[2026-06-12 11:20:28,678.678 INFO    ] ================================================
[2026-06-12 11:20:29,051.051 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 11:20:29
[2026-06-12 11:20:29,369.369 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 11:20:29,502.502 INFO    ] Initializing speech engine...
[2026-06-12 11:20:29,510.510 INFO    ] 2026-06-12 11:20:29
[2026-06-12 11:20:29,724.724 INFO    ] 2026-06-12 11:20:29
[2026-06-12 11:20:29,753.753 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 11:20:29,937.937 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 11:20:29,947.947 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 11:20:30,099.099 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 11:20:30,147.147 INFO    ] time= 12/06/2026 11:20:30
[2026-06-12 11:20:30,170.170 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 11:20:30,171.171 INFO    ] Checking for existing commands in stream...
[2026-06-12 11:20:30,242.242 INFO    ] No existing commands found in stream
[2026-06-12 11:20:35,252.252 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 11:20:35,255.255 INFO    ] Waiting 1.28 seconds before fallback handling...
[2026-06-12 11:20:36,926.926 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 11:20:36,927.927 INFO    ] Checking for system updates...
[2026-06-12 11:20:36,948.948 INFO    ] 200
[2026-06-12 11:20:36,949.949 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:20:36,982.982 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 11:20:36,984.984 INFO    ] No update needed
[2026-06-12 11:20:36,985.985 INFO    ] Checking for camera pi updates...
[2026-06-12 11:20:37,004.004 INFO    ] 200
[2026-06-12 11:20:37,006.006 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:20:37,030.030 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 11:20:37,066.066 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 11:20:37,068.068 INFO    ] No camera update needed
[2026-06-12 11:20:37,069.069 INFO    ] Script finished. Safe exiting...
[2026-06-12 11:20:37,071.071 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 11:20:37,074.074 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 11:20:37,077.077 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 11:20:39,118.118 INFO    ] ================================================
[2026-06-12 11:20:39,133.133 INFO    ] Launching Daemon at Fri Jun 12 11:20:39 IST 2026
[2026-06-12 11:20:39,144.144 INFO    ] ================================================
[2026-06-12 11:20:39,481.481 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 11:20:39
[2026-06-12 11:20:39,791.791 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 11:20:39,928.928 INFO    ] Initializing speech engine...
[2026-06-12 11:20:39,936.936 INFO    ] 2026-06-12 11:20:39
[2026-06-12 11:20:40,140.140 INFO    ] 2026-06-12 11:20:40
[2026-06-12 11:20:40,168.168 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 11:20:40,351.351 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 11:20:40,355.355 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 11:20:40,490.490 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 11:20:40,554.554 INFO    ] time= 12/06/2026 11:20:40
[2026-06-12 11:20:40,581.581 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 11:20:40,583.583 INFO    ] Checking for existing commands in stream...
[2026-06-12 11:20:40,654.654 INFO    ] No existing commands found in stream
[2026-06-12 11:20:45,663.663 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 11:20:45,665.665 INFO    ] Waiting 0.23 seconds before fallback handling...
[2026-06-12 11:20:46,256.256 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 11:20:46,257.257 INFO    ] Checking for system updates...
[2026-06-12 11:20:46,278.278 INFO    ] 200
[2026-06-12 11:20:46,280.280 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:20:46,311.311 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 11:20:46,312.312 INFO    ] No update needed
[2026-06-12 11:20:46,313.313 INFO    ] Checking for camera pi updates...
[2026-06-12 11:20:46,333.333 INFO    ] 200
[2026-06-12 11:20:46,335.335 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:20:46,358.358 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 11:20:46,405.405 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 11:20:46,406.406 INFO    ] No camera update needed
[2026-06-12 11:20:46,407.407 INFO    ] Script finished. Safe exiting...
[2026-06-12 11:20:46,409.409 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 11:20:46,412.412 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 11:20:46,415.415 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 11:20:48,457.457 INFO    ] ================================================
[2026-06-12 11:20:48,472.472 INFO    ] Launching Daemon at Fri Jun 12 11:20:48 IST 2026
[2026-06-12 11:20:48,484.484 INFO    ] ================================================
[2026-06-12 11:20:48,867.867 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 11:20:48
[2026-06-12 11:20:49,206.206 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 11:20:49,358.358 INFO    ] Initializing speech engine...
[2026-06-12 11:20:49,363.363 INFO    ] 2026-06-12 11:20:49
[2026-06-12 11:20:49,571.571 INFO    ] 2026-06-12 11:20:49
[2026-06-12 11:20:49,599.599 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 11:20:49,783.783 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 11:20:49,792.792 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 11:20:49,937.937 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 11:20:49,990.990 INFO    ] time= 12/06/2026 11:20:49
[2026-06-12 11:20:50,013.013 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 11:20:50,019.019 INFO    ] Checking for existing commands in stream...
[2026-06-12 11:20:50,086.086 INFO    ] No existing commands found in stream
[2026-06-12 11:20:55,101.101 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 11:20:55,104.104 INFO    ] Waiting 3.09 seconds before fallback handling...
[2026-06-12 11:20:58,594.594 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 11:20:58,596.596 INFO    ] Checking for system updates...
[2026-06-12 11:20:58,617.617 INFO    ] 200
[2026-06-12 11:20:58,618.618 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:20:58,652.652 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 11:20:58,654.654 INFO    ] No update needed
[2026-06-12 11:20:58,655.655 INFO    ] Checking for camera pi updates...
[2026-06-12 11:20:58,674.674 INFO    ] 200
[2026-06-12 11:20:58,675.675 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:20:58,700.700 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 11:20:58,740.740 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 11:20:58,741.741 INFO    ] No camera update needed
[2026-06-12 11:20:58,742.742 INFO    ] Script finished. Safe exiting...
[2026-06-12 11:20:58,744.744 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 11:20:58,747.747 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 11:20:58,749.749 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 11:21:00,788.788 INFO    ] ================================================
[2026-06-12 11:21:00,804.804 INFO    ] Launching Daemon at Fri Jun 12 11:21:00 IST 2026
[2026-06-12 11:21:00,815.815 INFO    ] ================================================
[2026-06-12 11:21:01,168.168 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 11:21:01
[2026-06-12 11:21:01,504.504 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 11:21:01,658.658 INFO    ] Initializing speech engine...
[2026-06-12 11:21:01,661.661 INFO    ] 2026-06-12 11:21:01
[2026-06-12 11:21:01,873.873 INFO    ] 2026-06-12 11:21:01
[2026-06-12 11:21:01,917.917 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 11:21:02,115.115 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 11:21:02,138.138 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 11:21:02,248.248 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 11:21:02,277.277 INFO    ] time= 12/06/2026 11:21:02
[2026-06-12 11:21:02,353.353 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 11:21:02,413.413 INFO    ] Checking for existing commands in stream...
[2026-06-12 11:21:02,554.554 INFO    ] No existing commands found in stream
[2026-06-12 11:21:07,565.565 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 11:21:07,568.568 INFO    ] Waiting 3.30 seconds before fallback handling...
[2026-06-12 11:21:11,204.204 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 11:21:11,206.206 INFO    ] Checking for system updates...
[2026-06-12 11:21:11,226.226 INFO    ] 200
[2026-06-12 11:21:11,228.228 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:21:11,261.261 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 11:21:11,262.262 INFO    ] No update needed
[2026-06-12 11:21:11,263.263 INFO    ] Checking for camera pi updates...
[2026-06-12 11:21:11,285.285 INFO    ] 200
[2026-06-12 11:21:11,287.287 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:21:11,310.310 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 11:21:11,347.347 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 11:21:11,348.348 INFO    ] No camera update needed
[2026-06-12 11:21:11,349.349 INFO    ] Script finished. Safe exiting...
[2026-06-12 11:21:11,351.351 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 11:21:11,354.354 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 11:21:11,357.357 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 11:21:13,395.395 INFO    ] ================================================
[2026-06-12 11:21:13,412.412 INFO    ] Launching Daemon at Fri Jun 12 11:21:13 IST 2026
[2026-06-12 11:21:13,423.423 INFO    ] ================================================
[2026-06-12 11:21:13,789.789 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 11:21:13
[2026-06-12 11:21:14,102.102 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 11:21:14,239.239 INFO    ] Initializing speech engine...
[2026-06-12 11:21:14,249.249 INFO    ] 2026-06-12 11:21:14
[2026-06-12 11:21:14,453.453 INFO    ] 2026-06-12 11:21:14
[2026-06-12 11:21:14,481.481 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 11:21:14,602.602 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 11:21:14,664.664 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 11:21:14,799.799 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 11:21:14,860.860 INFO    ] time= 12/06/2026 11:21:14
[2026-06-12 11:21:14,892.892 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 11:21:14,899.899 INFO    ] Checking for existing commands in stream...
[2026-06-12 11:21:14,966.966 INFO    ] No existing commands found in stream
[2026-06-12 11:21:19,975.975 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 11:21:19,978.978 INFO    ] Waiting 1.66 seconds before fallback handling...
[2026-06-12 11:21:21,966.966 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 11:21:21,967.967 INFO    ] Checking for system updates...
[2026-06-12 11:21:21,987.987 INFO    ] 200
[2026-06-12 11:21:21,989.989 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:21:22,019.019 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 11:21:22,020.020 INFO    ] No update needed
[2026-06-12 11:21:22,022.022 INFO    ] Checking for camera pi updates...
[2026-06-12 11:21:22,041.041 INFO    ] 200
[2026-06-12 11:21:22,042.042 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:21:22,069.069 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 11:21:22,109.109 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 11:21:22,110.110 INFO    ] No camera update needed
[2026-06-12 11:21:22,112.112 INFO    ] Script finished. Safe exiting...
[2026-06-12 11:21:22,113.113 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 11:21:22,116.116 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 11:21:22,118.118 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 11:21:24,158.158 INFO    ] ================================================
[2026-06-12 11:21:24,174.174 INFO    ] Launching Daemon at Fri Jun 12 11:21:24 IST 2026
[2026-06-12 11:21:24,185.185 INFO    ] ================================================
[2026-06-12 11:21:24,571.571 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 11:21:24
[2026-06-12 11:21:24,907.907 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 11:21:25,063.063 INFO    ] Initializing speech engine...
[2026-06-12 11:21:25,067.067 INFO    ] 2026-06-12 11:21:25
[2026-06-12 11:21:25,276.276 INFO    ] 2026-06-12 11:21:25
[2026-06-12 11:21:25,305.305 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 11:21:25,491.491 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 11:21:25,495.495 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 11:21:25,633.633 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 11:21:25,697.697 INFO    ] time= 12/06/2026 11:21:25
[2026-06-12 11:21:25,726.726 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 11:21:25,732.732 INFO    ] Checking for existing commands in stream...
[2026-06-12 11:21:25,825.825 INFO    ] No existing commands found in stream
[2026-06-12 11:21:30,840.840 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 11:21:30,843.843 INFO    ] Waiting 3.73 seconds before fallback handling...
[2026-06-12 11:21:35,293.293 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 11:21:35,294.294 INFO    ] Checking for system updates...
[2026-06-12 11:21:35,316.316 INFO    ] 200
[2026-06-12 11:21:35,318.318 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:21:35,351.351 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 11:21:35,352.352 INFO    ] No update needed
[2026-06-12 11:21:35,354.354 INFO    ] Checking for camera pi updates...
[2026-06-12 11:21:35,373.373 INFO    ] 200
[2026-06-12 11:21:35,375.375 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:21:35,398.398 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 11:21:35,450.450 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 11:21:35,453.453 INFO    ] No camera update needed
[2026-06-12 11:21:35,456.456 INFO    ] Script finished. Safe exiting...
[2026-06-12 11:21:35,458.458 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 11:21:35,464.464 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 11:21:35,470.470 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 11:21:37,511.511 INFO    ] ================================================
[2026-06-12 11:21:37,527.527 INFO    ] Launching Daemon at Fri Jun 12 11:21:37 IST 2026
[2026-06-12 11:21:37,538.538 INFO    ] ================================================
[2026-06-12 11:21:37,900.900 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 11:21:37
[2026-06-12 11:21:38,212.212 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 11:21:38,349.349 INFO    ] Initializing speech engine...
[2026-06-12 11:21:38,357.357 INFO    ] 2026-06-12 11:21:38
[2026-06-12 11:21:38,561.561 INFO    ] 2026-06-12 11:21:38
[2026-06-12 11:21:38,590.590 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 11:21:38,773.773 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 11:21:38,782.782 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 11:21:38,904.904 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 11:21:38,965.965 INFO    ] time= 12/06/2026 11:21:38
[2026-06-12 11:21:38,998.998 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 11:21:39,003.003 INFO    ] Checking for existing commands in stream...
[2026-06-12 11:21:39,098.098 INFO    ] No existing commands found in stream
[2026-06-12 11:21:44,107.107 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 11:21:44,110.110 INFO    ] Waiting 2.66 seconds before fallback handling...
[2026-06-12 11:21:47,144.144 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 11:21:47,145.145 INFO    ] Checking for system updates...
[2026-06-12 11:21:47,165.165 INFO    ] 200
[2026-06-12 11:21:47,167.167 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:21:47,197.197 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 11:21:47,198.198 INFO    ] No update needed
[2026-06-12 11:21:47,200.200 INFO    ] Checking for camera pi updates...
[2026-06-12 11:21:47,219.219 INFO    ] 200
[2026-06-12 11:21:47,221.221 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:21:47,248.248 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 11:21:47,292.292 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 11:21:47,293.293 INFO    ] No camera update needed
[2026-06-12 11:21:47,294.294 INFO    ] Script finished. Safe exiting...
[2026-06-12 11:21:47,295.295 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 11:21:47,298.298 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 11:21:47,301.301 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 11:21:49,341.341 INFO    ] ================================================
[2026-06-12 11:21:49,356.356 INFO    ] Launching Daemon at Fri Jun 12 11:21:49 IST 2026
[2026-06-12 11:21:49,368.368 INFO    ] ================================================
[2026-06-12 11:21:49,736.736 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 11:21:49
[2026-06-12 11:21:50,047.047 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 11:21:50,180.180 INFO    ] Initializing speech engine...
[2026-06-12 11:21:50,192.192 INFO    ] 2026-06-12 11:21:50
[2026-06-12 11:21:50,401.401 INFO    ] 2026-06-12 11:21:50
[2026-06-12 11:21:50,430.430 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 11:21:50,616.616 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 11:21:50,624.624 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 11:21:50,756.756 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 11:21:50,823.823 INFO    ] time= 12/06/2026 11:21:50
[2026-06-12 11:21:50,848.848 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 11:21:50,854.854 INFO    ] Checking for existing commands in stream...
[2026-06-12 11:21:50,921.921 INFO    ] No existing commands found in stream
[2026-06-12 11:21:55,930.930 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 11:21:55,933.933 INFO    ] Waiting 3.16 seconds before fallback handling...
[2026-06-12 11:21:59,497.497 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 11:21:59,498.498 INFO    ] Checking for system updates...
[2026-06-12 11:21:59,519.519 INFO    ] 200
[2026-06-12 11:21:59,521.521 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:21:59,551.551 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 11:21:59,552.552 INFO    ] No update needed
[2026-06-12 11:21:59,554.554 INFO    ] Checking for camera pi updates...
[2026-06-12 11:21:59,573.573 INFO    ] 200
[2026-06-12 11:21:59,575.575 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:21:59,598.598 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 11:21:59,738.738 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 11:21:59,739.739 INFO    ] No camera update needed
[2026-06-12 11:21:59,741.741 INFO    ] Script finished. Safe exiting...
[2026-06-12 11:21:59,742.742 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 11:21:59,745.745 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 11:21:59,748.748 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 11:22:01,780.780 INFO    ] ================================================
[2026-06-12 11:22:01,793.793 INFO    ] Launching Daemon at Fri Jun 12 11:22:01 IST 2026
[2026-06-12 11:22:01,801.801 INFO    ] ================================================
[2026-06-12 11:22:02,168.168 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 11:22:02
[2026-06-12 11:22:02,501.501 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 11:22:02,652.652 INFO    ] Initializing speech engine...
[2026-06-12 11:22:02,657.657 INFO    ] 2026-06-12 11:22:02
[2026-06-12 11:22:02,865.865 INFO    ] 2026-06-12 11:22:02
[2026-06-12 11:22:02,894.894 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 11:22:03,058.058 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 11:22:03,082.082 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 11:22:03,226.226 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 11:22:03,289.289 INFO    ] time= 12/06/2026 11:22:03
[2026-06-12 11:22:03,313.313 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 11:22:03,320.320 INFO    ] Checking for existing commands in stream...
[2026-06-12 11:22:03,387.387 INFO    ] No existing commands found in stream
[2026-06-12 11:22:08,397.397 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 11:22:08,400.400 INFO    ] Waiting 3.54 seconds before fallback handling...
[2026-06-12 11:22:12,305.305 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 11:22:12,307.307 INFO    ] Checking for system updates...
[2026-06-12 11:22:12,327.327 INFO    ] 200
[2026-06-12 11:22:12,329.329 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:22:12,359.359 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 11:22:12,361.361 INFO    ] No update needed
[2026-06-12 11:22:12,362.362 INFO    ] Checking for camera pi updates...
[2026-06-12 11:22:12,381.381 INFO    ] 200
[2026-06-12 11:22:12,383.383 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:22:12,406.406 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 11:22:12,427.427 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 11:22:12,428.428 INFO    ] No camera update needed
[2026-06-12 11:22:12,430.430 INFO    ] Script finished. Safe exiting...
[2026-06-12 11:22:12,431.431 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 11:22:12,434.434 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 11:22:12,437.437 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 11:22:14,476.476 INFO    ] ================================================
[2026-06-12 11:22:14,492.492 INFO    ] Launching Daemon at Fri Jun 12 11:22:14 IST 2026
[2026-06-12 11:22:14,502.502 INFO    ] ================================================
[2026-06-12 11:22:14,837.837 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 11:22:14
[2026-06-12 11:22:15,152.152 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 11:22:15,285.285 INFO    ] Initializing speech engine...
[2026-06-12 11:22:15,290.290 INFO    ] 2026-06-12 11:22:15
[2026-06-12 11:22:15,520.520 INFO    ] 2026-06-12 11:22:15
[2026-06-12 11:22:15,550.550 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 11:22:15,682.682 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 11:22:15,740.740 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 11:22:15,890.890 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 11:22:15,952.952 INFO    ] time= 12/06/2026 11:22:15
[2026-06-12 11:22:15,991.991 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 11:22:15,998.998 INFO    ] Checking for existing commands in stream...
[2026-06-12 11:22:16,073.073 INFO    ] No existing commands found in stream
[2026-06-12 11:22:21,083.083 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 11:22:21,086.086 INFO    ] Waiting 2.21 seconds before fallback handling...
[2026-06-12 11:22:23,659.659 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 11:22:23,660.660 INFO    ] Checking for system updates...
[2026-06-12 11:22:23,682.682 INFO    ] 200
[2026-06-12 11:22:23,684.684 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:22:23,714.714 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 11:22:23,715.715 INFO    ] No update needed
[2026-06-12 11:22:23,716.716 INFO    ] Checking for camera pi updates...
[2026-06-12 11:22:23,737.737 INFO    ] 200
[2026-06-12 11:22:23,738.738 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:22:23,761.761 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 11:22:23,801.801 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 11:22:23,802.802 INFO    ] No camera update needed
[2026-06-12 11:22:23,804.804 INFO    ] Script finished. Safe exiting...
[2026-06-12 11:22:23,805.805 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 11:22:23,808.808 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 11:22:23,810.810 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 11:22:25,849.849 INFO    ] ================================================
[2026-06-12 11:22:25,864.864 INFO    ] Launching Daemon at Fri Jun 12 11:22:25 IST 2026
[2026-06-12 11:22:25,874.874 INFO    ] ================================================
[2026-06-12 11:22:26,254.254 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 11:22:26
[2026-06-12 11:22:26,591.591 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 11:22:26,741.741 INFO    ] Initializing speech engine...
[2026-06-12 11:22:26,748.748 INFO    ] 2026-06-12 11:22:26
[2026-06-12 11:22:26,953.953 INFO    ] 2026-06-12 11:22:26
[2026-06-12 11:22:26,982.982 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 11:22:27,167.167 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 11:22:27,177.177 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 11:22:27,307.307 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 11:22:27,372.372 INFO    ] time= 12/06/2026 11:22:27
[2026-06-12 11:22:27,399.399 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 11:22:27,406.406 INFO    ] Checking for existing commands in stream...
[2026-06-12 11:22:27,473.473 INFO    ] No existing commands found in stream
[2026-06-12 11:22:32,487.487 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 11:22:32,491.491 INFO    ] Waiting 3.47 seconds before fallback handling...
[2026-06-12 11:22:36,325.325 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 11:22:36,327.327 INFO    ] Checking for system updates...
[2026-06-12 11:22:36,348.348 INFO    ] 200
[2026-06-12 11:22:36,349.349 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:22:36,380.380 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 11:22:36,381.381 INFO    ] No update needed
[2026-06-12 11:22:36,383.383 INFO    ] Checking for camera pi updates...
[2026-06-12 11:22:36,402.402 INFO    ] 200
[2026-06-12 11:22:36,404.404 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:22:36,428.428 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 11:22:36,468.468 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 11:22:36,470.470 INFO    ] No camera update needed
[2026-06-12 11:22:36,471.471 INFO    ] Script finished. Safe exiting...
[2026-06-12 11:22:36,473.473 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 11:22:36,476.476 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 11:22:36,479.479 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 11:22:38,520.520 INFO    ] ================================================
[2026-06-12 11:22:38,535.535 INFO    ] Launching Daemon at Fri Jun 12 11:22:38 IST 2026
[2026-06-12 11:22:38,546.546 INFO    ] ================================================
[2026-06-12 11:22:38,880.880 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 11:22:38
[2026-06-12 11:22:39,196.196 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 11:22:39,334.334 INFO    ] Initializing speech engine...
[2026-06-12 11:22:39,347.347 INFO    ] 2026-06-12 11:22:39
[2026-06-12 11:22:39,566.566 INFO    ] 2026-06-12 11:22:39
[2026-06-12 11:22:39,597.597 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 11:22:39,774.774 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 11:22:39,797.797 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 11:22:39,940.940 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 11:22:40,008.008 INFO    ] time= 12/06/2026 11:22:39
[2026-06-12 11:22:40,041.041 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 11:22:40,048.048 INFO    ] Checking for existing commands in stream...
[2026-06-12 11:22:40,145.145 INFO    ] No existing commands found in stream
[2026-06-12 11:22:45,154.154 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 11:22:45,157.157 INFO    ] Waiting 1.11 seconds before fallback handling...
[2026-06-12 11:22:46,668.668 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 11:22:46,670.670 INFO    ] Checking for system updates...
[2026-06-12 11:22:46,692.692 INFO    ] 200
[2026-06-12 11:22:46,694.694 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:22:46,724.724 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 11:22:46,726.726 INFO    ] No update needed
[2026-06-12 11:22:46,727.727 INFO    ] Checking for camera pi updates...
[2026-06-12 11:22:46,747.747 INFO    ] 200
[2026-06-12 11:22:46,749.749 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:22:46,772.772 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 11:22:46,808.808 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 11:22:46,810.810 INFO    ] No camera update needed
[2026-06-12 11:22:46,812.812 INFO    ] Script finished. Safe exiting...
[2026-06-12 11:22:46,813.813 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 11:22:46,816.816 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 11:22:46,819.819 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 11:22:48,859.859 INFO    ] ================================================
[2026-06-12 11:22:48,874.874 INFO    ] Launching Daemon at Fri Jun 12 11:22:48 IST 2026
[2026-06-12 11:22:48,885.885 INFO    ] ================================================
[2026-06-12 11:22:49,229.229 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 11:22:49
[2026-06-12 11:22:49,545.545 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 11:22:49,682.682 INFO    ] Initializing speech engine...
[2026-06-12 11:22:49,695.695 INFO    ] 2026-06-12 11:22:49
[2026-06-12 11:22:49,913.913 INFO    ] 2026-06-12 11:22:49
[2026-06-12 11:22:49,944.944 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 11:22:50,075.075 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 11:22:50,142.142 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 11:22:50,285.285 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 11:22:50,321.321 INFO    ] time= 12/06/2026 11:22:50
[2026-06-12 11:22:50,368.368 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 11:22:50,392.392 INFO    ] Checking for existing commands in stream...
[2026-06-12 11:22:50,467.467 INFO    ] No existing commands found in stream
[2026-06-12 11:22:55,478.478 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 11:22:55,481.481 INFO    ] Waiting 2.70 seconds before fallback handling...
[2026-06-12 11:22:58,595.595 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 11:22:58,596.596 INFO    ] Checking for system updates...
[2026-06-12 11:22:58,617.617 INFO    ] 200
[2026-06-12 11:22:58,618.618 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:22:58,653.653 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 11:22:58,655.655 INFO    ] No update needed
[2026-06-12 11:22:58,656.656 INFO    ] Checking for camera pi updates...
[2026-06-12 11:22:58,676.676 INFO    ] 200
[2026-06-12 11:22:58,677.677 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:22:58,702.702 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 11:22:58,747.747 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 11:22:58,748.748 INFO    ] No camera update needed
[2026-06-12 11:22:58,749.749 INFO    ] Script finished. Safe exiting...
[2026-06-12 11:22:58,751.751 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 11:22:58,754.754 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 11:22:58,756.756 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 11:23:00,795.795 INFO    ] ================================================
[2026-06-12 11:23:00,811.811 INFO    ] Launching Daemon at Fri Jun 12 11:23:00 IST 2026
[2026-06-12 11:23:00,821.821 INFO    ] ================================================
[2026-06-12 11:23:01,213.213 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 11:23:01
[2026-06-12 11:23:01,673.673 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 11:23:01,850.850 INFO    ] Initializing speech engine...
[2026-06-12 11:23:01,859.859 INFO    ] 2026-06-12 11:23:01
[2026-06-12 11:23:02,102.102 INFO    ] 2026-06-12 11:23:02
[2026-06-12 11:23:02,134.134 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 11:23:02,295.295 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 11:23:02,327.327 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 11:23:02,485.485 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 11:23:02,524.524 INFO    ] time= 12/06/2026 11:23:02
[2026-06-12 11:23:02,567.567 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 11:23:02,614.614 INFO    ] Checking for existing commands in stream...
[2026-06-12 11:23:02,709.709 INFO    ] No existing commands found in stream
[2026-06-12 11:23:07,720.720 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 11:23:07,722.722 INFO    ] Waiting 2.62 seconds before fallback handling...
[2026-06-12 11:23:10,980.980 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 11:23:10,981.981 INFO    ] Checking for system updates...
[2026-06-12 11:23:11,002.002 INFO    ] 200
[2026-06-12 11:23:11,003.003 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:23:11,033.033 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 11:23:11,034.034 INFO    ] No update needed
[2026-06-12 11:23:11,035.035 INFO    ] Checking for camera pi updates...
[2026-06-12 11:23:11,058.058 INFO    ] 200
[2026-06-12 11:23:11,060.060 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:23:11,093.093 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 11:23:11,135.135 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 11:23:11,137.137 INFO    ] No camera update needed
[2026-06-12 11:23:11,139.139 INFO    ] Script finished. Safe exiting...
[2026-06-12 11:23:11,142.142 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 11:23:11,147.147 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 11:23:11,152.152 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 11:23:13,186.186 INFO    ] ================================================
[2026-06-12 11:23:13,201.201 INFO    ] Launching Daemon at Fri Jun 12 11:23:13 IST 2026
[2026-06-12 11:23:13,211.211 INFO    ] ================================================
[2026-06-12 11:23:13,597.597 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 11:23:13
[2026-06-12 11:23:13,935.935 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 11:23:14,083.083 INFO    ] Initializing speech engine...
[2026-06-12 11:23:14,093.093 INFO    ] 2026-06-12 11:23:14
[2026-06-12 11:23:14,304.304 INFO    ] 2026-06-12 11:23:14
[2026-06-12 11:23:14,333.333 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 11:23:14,605.605 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 11:23:14,651.651 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 11:23:14,821.821 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 11:23:14,825.825 INFO    ] time= 12/06/2026 11:23:14
[2026-06-12 11:23:14,852.852 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 11:23:14,858.858 INFO    ] Checking for existing commands in stream...
[2026-06-12 11:23:14,951.951 INFO    ] No existing commands found in stream
[2026-06-12 11:23:19,962.962 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 11:23:19,965.965 INFO    ] Waiting 2.45 seconds before fallback handling...
[2026-06-12 11:23:22,776.776 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 11:23:22,778.778 INFO    ] Checking for system updates...
[2026-06-12 11:23:22,798.798 INFO    ] 200
[2026-06-12 11:23:22,800.800 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:23:22,831.831 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 11:23:22,832.832 INFO    ] No update needed
[2026-06-12 11:23:22,834.834 INFO    ] Checking for camera pi updates...
[2026-06-12 11:23:22,853.853 INFO    ] 200
[2026-06-12 11:23:22,855.855 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:23:22,879.879 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 11:23:22,917.917 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 11:23:22,919.919 INFO    ] No camera update needed
[2026-06-12 11:23:22,921.921 INFO    ] Script finished. Safe exiting...
[2026-06-12 11:23:22,922.922 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 11:23:22,925.925 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 11:23:22,928.928 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 11:23:24,967.967 INFO    ] ================================================
[2026-06-12 11:23:24,982.982 INFO    ] Launching Daemon at Fri Jun 12 11:23:24 IST 2026
[2026-06-12 11:23:24,994.994 INFO    ] ================================================
[2026-06-12 11:23:25,378.378 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 11:23:25
[2026-06-12 11:23:25,714.714 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 11:23:25,864.864 INFO    ] Initializing speech engine...
[2026-06-12 11:23:25,870.870 INFO    ] 2026-06-12 11:23:25
[2026-06-12 11:23:26,078.078 INFO    ] 2026-06-12 11:23:26
[2026-06-12 11:23:26,108.108 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 11:23:26,294.294 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 11:23:26,303.303 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 11:23:26,435.435 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 11:23:26,489.489 INFO    ] time= 12/06/2026 11:23:26
[2026-06-12 11:23:26,524.524 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 11:23:26,534.534 INFO    ] Checking for existing commands in stream...
[2026-06-12 11:23:26,602.602 INFO    ] No existing commands found in stream
[2026-06-12 11:23:31,615.615 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 11:23:31,617.617 INFO    ] Waiting 1.45 seconds before fallback handling...
[2026-06-12 11:23:33,446.446 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 11:23:33,448.448 INFO    ] Checking for system updates...
[2026-06-12 11:23:33,470.470 INFO    ] 200
[2026-06-12 11:23:33,472.472 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:23:33,502.502 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 11:23:33,503.503 INFO    ] No update needed
[2026-06-12 11:23:33,504.504 INFO    ] Checking for camera pi updates...
[2026-06-12 11:23:33,525.525 INFO    ] 200
[2026-06-12 11:23:33,526.526 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:23:33,549.549 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 11:23:33,590.590 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 11:23:33,602.602 INFO    ] No camera update needed
[2026-06-12 11:23:33,603.603 INFO    ] Script finished. Safe exiting...
[2026-06-12 11:23:33,604.604 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 11:23:33,607.607 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 11:23:33,610.610 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 11:23:35,649.649 INFO    ] ================================================
[2026-06-12 11:23:35,664.664 INFO    ] Launching Daemon at Fri Jun 12 11:23:35 IST 2026
[2026-06-12 11:23:35,675.675 INFO    ] ================================================
[2026-06-12 11:23:36,035.035 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 11:23:36
[2026-06-12 11:23:36,370.370 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 11:23:36,507.507 INFO    ] Initializing speech engine...
[2026-06-12 11:23:36,521.521 INFO    ] 2026-06-12 11:23:36
[2026-06-12 11:23:36,731.731 INFO    ] 2026-06-12 11:23:36
[2026-06-12 11:23:36,760.760 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 11:23:37,140.140 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 11:23:37,162.162 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 11:23:37,285.285 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 11:23:37,288.288 INFO    ] time= 12/06/2026 11:23:37
[2026-06-12 11:23:37,291.291 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 11:23:37,294.294 INFO    ] Checking for existing commands in stream...
[2026-06-12 11:23:37,363.363 INFO    ] No existing commands found in stream
[2026-06-12 11:23:42,373.373 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 11:23:42,377.377 INFO    ] Waiting 2.20 seconds before fallback handling...
[2026-06-12 11:23:44,965.965 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 11:23:44,967.967 INFO    ] Checking for system updates...
[2026-06-12 11:23:44,988.988 INFO    ] 200
[2026-06-12 11:23:44,989.989 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:23:45,019.019 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 11:23:45,021.021 INFO    ] No update needed
[2026-06-12 11:23:45,022.022 INFO    ] Checking for camera pi updates...
[2026-06-12 11:23:45,042.042 INFO    ] 200
[2026-06-12 11:23:45,043.043 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:23:45,068.068 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 11:23:45,108.108 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 11:23:45,109.109 INFO    ] No camera update needed
[2026-06-12 11:23:45,111.111 INFO    ] Script finished. Safe exiting...
[2026-06-12 11:23:45,112.112 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 11:23:45,115.115 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 11:23:45,118.118 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 11:23:47,158.158 INFO    ] ================================================
[2026-06-12 11:23:47,175.175 INFO    ] Launching Daemon at Fri Jun 12 11:23:47 IST 2026
[2026-06-12 11:23:47,186.186 INFO    ] ================================================
[2026-06-12 11:23:47,519.519 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 11:23:47
[2026-06-12 11:23:47,835.835 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 11:23:47,977.977 INFO    ] Initializing speech engine...
[2026-06-12 11:23:47,982.982 INFO    ] 2026-06-12 11:23:47
[2026-06-12 11:23:48,185.185 INFO    ] 2026-06-12 11:23:48
[2026-06-12 11:23:48,212.212 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 11:23:48,396.396 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 11:23:48,404.404 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 11:23:48,530.530 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 11:23:48,593.593 INFO    ] time= 12/06/2026 11:23:48
[2026-06-12 11:23:48,624.624 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 11:23:48,630.630 INFO    ] Checking for existing commands in stream...
[2026-06-12 11:23:48,697.697 INFO    ] No existing commands found in stream
[2026-06-12 11:23:53,705.705 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 11:23:53,716.716 INFO    ] Waiting 0.93 seconds before fallback handling...
[2026-06-12 11:23:55,032.032 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 11:23:55,033.033 INFO    ] Checking for system updates...
[2026-06-12 11:23:55,054.054 INFO    ] 200
[2026-06-12 11:23:55,055.055 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:23:55,085.085 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 11:23:55,087.087 INFO    ] No update needed
[2026-06-12 11:23:55,088.088 INFO    ] Checking for camera pi updates...
[2026-06-12 11:23:55,108.108 INFO    ] 200
[2026-06-12 11:23:55,109.109 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:23:55,132.132 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 11:23:55,168.168 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 11:23:55,169.169 INFO    ] No camera update needed
[2026-06-12 11:23:55,170.170 INFO    ] Script finished. Safe exiting...
[2026-06-12 11:23:55,172.172 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 11:23:55,174.174 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 11:23:55,177.177 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 11:23:57,217.217 INFO    ] ================================================
[2026-06-12 11:23:57,233.233 INFO    ] Launching Daemon at Fri Jun 12 11:23:57 IST 2026
[2026-06-12 11:23:57,244.244 INFO    ] ================================================
[2026-06-12 11:23:57,570.570 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 11:23:57
[2026-06-12 11:23:57,882.882 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 11:23:58,014.014 INFO    ] Initializing speech engine...
[2026-06-12 11:23:58,019.019 INFO    ] 2026-06-12 11:23:58
[2026-06-12 11:23:58,247.247 INFO    ] 2026-06-12 11:23:58
[2026-06-12 11:23:58,277.277 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 11:23:58,409.409 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 11:23:58,476.476 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 11:23:58,618.618 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 11:23:58,669.669 INFO    ] time= 12/06/2026 11:23:58
[2026-06-12 11:23:58,702.702 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 11:23:58,725.725 INFO    ] Checking for existing commands in stream...
[2026-06-12 11:23:58,806.806 INFO    ] No existing commands found in stream
[2026-06-12 11:24:03,816.816 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 11:24:03,819.819 INFO    ] Waiting 3.83 seconds before fallback handling...
[2026-06-12 11:24:08,004.004 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 11:24:08,006.006 INFO    ] Checking for system updates...
[2026-06-12 11:24:08,026.026 INFO    ] 200
[2026-06-12 11:24:08,028.028 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:24:08,063.063 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 11:24:08,064.064 INFO    ] No update needed
[2026-06-12 11:24:08,065.065 INFO    ] Checking for camera pi updates...
[2026-06-12 11:24:08,085.085 INFO    ] 200
[2026-06-12 11:24:08,086.086 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:24:08,109.109 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 11:24:08,154.154 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 11:24:08,155.155 INFO    ] No camera update needed
[2026-06-12 11:24:08,157.157 INFO    ] Script finished. Safe exiting...
[2026-06-12 11:24:08,158.158 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 11:24:08,161.161 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 11:24:08,164.164 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 11:24:10,202.202 INFO    ] ================================================
[2026-06-12 11:24:10,218.218 INFO    ] Launching Daemon at Fri Jun 12 11:24:10 IST 2026
[2026-06-12 11:24:10,229.229 INFO    ] ================================================
[2026-06-12 11:24:10,570.570 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 11:24:10
[2026-06-12 11:24:10,908.908 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 11:24:11,061.061 INFO    ] Initializing speech engine...
[2026-06-12 11:24:11,066.066 INFO    ] 2026-06-12 11:24:11
[2026-06-12 11:24:11,274.274 INFO    ] 2026-06-12 11:24:11
[2026-06-12 11:24:11,302.302 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 11:24:11,486.486 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 11:24:11,496.496 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 11:24:11,624.624 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 11:24:11,685.685 INFO    ] time= 12/06/2026 11:24:11
[2026-06-12 11:24:11,718.718 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 11:24:11,725.725 INFO    ] Checking for existing commands in stream...
[2026-06-12 11:24:11,815.815 INFO    ] No existing commands found in stream
[2026-06-12 11:24:16,825.825 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 11:24:16,828.828 INFO    ] Waiting 3.20 seconds before fallback handling...
[2026-06-12 11:24:20,386.386 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 11:24:20,388.388 INFO    ] Checking for system updates...
[2026-06-12 11:24:20,409.409 INFO    ] 200
[2026-06-12 11:24:20,410.410 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:24:20,440.440 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 11:24:20,442.442 INFO    ] No update needed
[2026-06-12 11:24:20,443.443 INFO    ] Checking for camera pi updates...
[2026-06-12 11:24:20,464.464 INFO    ] 200
[2026-06-12 11:24:20,466.466 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:24:20,492.492 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 11:24:20,524.524 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 11:24:20,526.526 INFO    ] No camera update needed
[2026-06-12 11:24:20,527.527 INFO    ] Script finished. Safe exiting...
[2026-06-12 11:24:20,529.529 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 11:24:20,532.532 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 11:24:20,535.535 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 11:24:22,567.567 INFO    ] ================================================
[2026-06-12 11:24:22,583.583 INFO    ] Launching Daemon at Fri Jun 12 11:24:22 IST 2026
[2026-06-12 11:24:22,594.594 INFO    ] ================================================
[2026-06-12 11:24:22,935.935 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 11:24:22
[2026-06-12 11:24:23,247.247 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 11:24:23,380.380 INFO    ] Initializing speech engine...
[2026-06-12 11:24:23,383.383 INFO    ] 2026-06-12 11:24:23
[2026-06-12 11:24:23,575.575 INFO    ] 2026-06-12 11:24:23
[2026-06-12 11:24:23,622.622 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 11:24:23,779.779 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 11:24:23,802.802 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 11:24:23,966.966 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 11:24:23,995.995 INFO    ] time= 12/06/2026 11:24:23
[2026-06-12 11:24:24,041.041 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 11:24:24,080.080 INFO    ] Checking for existing commands in stream...
[2026-06-12 11:24:24,177.177 INFO    ] No existing commands found in stream
[2026-06-12 11:24:29,188.188 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 11:24:29,191.191 INFO    ] Waiting 2.56 seconds before fallback handling...
[2026-06-12 11:24:32,114.114 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 11:24:32,116.116 INFO    ] Checking for system updates...
[2026-06-12 11:24:32,141.141 INFO    ] 200
[2026-06-12 11:24:32,143.143 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:24:32,183.183 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 11:24:32,185.185 INFO    ] No update needed
[2026-06-12 11:24:32,186.186 INFO    ] Checking for camera pi updates...
[2026-06-12 11:24:32,209.209 INFO    ] 200
[2026-06-12 11:24:32,211.211 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:24:32,240.240 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 11:24:32,287.287 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 11:24:32,289.289 INFO    ] No camera update needed
[2026-06-12 11:24:32,290.290 INFO    ] Script finished. Safe exiting...
[2026-06-12 11:24:32,292.292 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 11:24:32,296.296 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 11:24:32,299.299 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 11:24:34,339.339 INFO    ] ================================================
[2026-06-12 11:24:34,354.354 INFO    ] Launching Daemon at Fri Jun 12 11:24:34 IST 2026
[2026-06-12 11:24:34,365.365 INFO    ] ================================================
[2026-06-12 11:24:34,714.714 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 11:24:34
[2026-06-12 11:24:35,029.029 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 11:24:35,172.172 INFO    ] Initializing speech engine...
[2026-06-12 11:24:35,177.177 INFO    ] 2026-06-12 11:24:35
[2026-06-12 11:24:35,380.380 INFO    ] 2026-06-12 11:24:35
[2026-06-12 11:24:35,408.408 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 11:24:35,592.592 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 11:24:35,601.601 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 11:24:35,723.723 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 11:24:35,784.784 INFO    ] time= 12/06/2026 11:24:35
[2026-06-12 11:24:35,821.821 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 11:24:35,823.823 INFO    ] Checking for existing commands in stream...
[2026-06-12 11:24:35,892.892 INFO    ] No existing commands found in stream
[2026-06-12 11:24:40,902.902 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 11:24:40,905.905 INFO    ] Waiting 1.20 seconds before fallback handling...
[2026-06-12 11:24:42,446.446 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 11:24:42,448.448 INFO    ] Checking for system updates...
[2026-06-12 11:24:42,469.469 INFO    ] 200
[2026-06-12 11:24:42,470.470 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:24:42,500.500 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 11:24:42,502.502 INFO    ] No update needed
[2026-06-12 11:24:42,503.503 INFO    ] Checking for camera pi updates...
[2026-06-12 11:24:42,523.523 INFO    ] 200
[2026-06-12 11:24:42,524.524 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:24:42,547.547 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 11:24:42,586.586 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 11:24:42,588.588 INFO    ] No camera update needed
[2026-06-12 11:24:42,589.589 INFO    ] Script finished. Safe exiting...
[2026-06-12 11:24:42,591.591 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 11:24:42,594.594 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 11:24:42,597.597 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 11:24:44,636.636 INFO    ] ================================================
[2026-06-12 11:24:44,651.651 INFO    ] Launching Daemon at Fri Jun 12 11:24:44 IST 2026
[2026-06-12 11:24:44,665.665 INFO    ] ================================================
[2026-06-12 11:24:45,059.059 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 11:24:45
[2026-06-12 11:24:45,392.392 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 11:24:45,543.543 INFO    ] Initializing speech engine...
[2026-06-12 11:24:45,548.548 INFO    ] 2026-06-12 11:24:45
[2026-06-12 11:24:45,759.759 INFO    ] 2026-06-12 11:24:45
[2026-06-12 11:24:45,788.788 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 11:24:45,918.918 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 11:24:45,977.977 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 11:24:46,163.163 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 11:24:46,198.198 INFO    ] time= 12/06/2026 11:24:46
[2026-06-12 11:24:46,209.209 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 11:24:46,215.215 INFO    ] Checking for existing commands in stream...
[2026-06-12 11:24:46,283.283 INFO    ] No existing commands found in stream
[2026-06-12 11:24:51,292.292 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 11:24:51,296.296 INFO    ] Waiting 1.01 seconds before fallback handling...
[2026-06-12 11:24:52,696.696 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 11:24:52,698.698 INFO    ] Checking for system updates...
[2026-06-12 11:24:52,718.718 INFO    ] 200
[2026-06-12 11:24:52,719.719 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:24:52,753.753 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 11:24:52,755.755 INFO    ] No update needed
[2026-06-12 11:24:52,756.756 INFO    ] Checking for camera pi updates...
[2026-06-12 11:24:52,775.775 INFO    ] 200
[2026-06-12 11:24:52,776.776 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:24:52,801.801 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 11:24:52,841.841 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 11:24:52,842.842 INFO    ] No camera update needed
[2026-06-12 11:24:52,843.843 INFO    ] Script finished. Safe exiting...
[2026-06-12 11:24:52,844.844 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 11:24:52,847.847 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 11:24:52,850.850 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 11:24:54,889.889 INFO    ] ================================================
[2026-06-12 11:24:54,904.904 INFO    ] Launching Daemon at Fri Jun 12 11:24:54 IST 2026
[2026-06-12 11:24:54,915.915 INFO    ] ================================================
[2026-06-12 11:24:55,262.262 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 11:24:55
[2026-06-12 11:24:55,598.598 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 11:24:55,749.749 INFO    ] Initializing speech engine...
[2026-06-12 11:24:55,753.753 INFO    ] 2026-06-12 11:24:55
[2026-06-12 11:24:55,958.958 INFO    ] 2026-06-12 11:24:55
[2026-06-12 11:24:55,986.986 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 11:24:56,129.129 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 11:24:56,171.171 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 11:24:56,306.306 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 11:24:56,372.372 INFO    ] time= 12/06/2026 11:24:56
[2026-06-12 11:24:56,399.399 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 11:24:56,406.406 INFO    ] Checking for existing commands in stream...
[2026-06-12 11:24:56,472.472 INFO    ] No existing commands found in stream
[2026-06-12 11:25:01,482.482 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 11:25:01,485.485 INFO    ] Waiting 3.44 seconds before fallback handling...
[2026-06-12 11:25:05,279.279 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 11:25:05,281.281 INFO    ] Checking for system updates...
[2026-06-12 11:25:05,303.303 INFO    ] 200
[2026-06-12 11:25:05,305.305 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:25:05,339.339 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 11:25:05,340.340 INFO    ] No update needed
[2026-06-12 11:25:05,342.342 INFO    ] Checking for camera pi updates...
[2026-06-12 11:25:05,362.362 INFO    ] 200
[2026-06-12 11:25:05,363.363 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:25:05,387.387 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 11:25:05,423.423 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 11:25:05,425.425 INFO    ] No camera update needed
[2026-06-12 11:25:05,426.426 INFO    ] Script finished. Safe exiting...
[2026-06-12 11:25:05,427.427 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 11:25:05,431.431 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 11:25:05,434.434 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 11:25:07,474.474 INFO    ] ================================================
[2026-06-12 11:25:07,489.489 INFO    ] Launching Daemon at Fri Jun 12 11:25:07 IST 2026
[2026-06-12 11:25:07,501.501 INFO    ] ================================================
[2026-06-12 11:25:07,858.858 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 11:25:07
[2026-06-12 11:25:08,169.169 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 11:25:08,302.302 INFO    ] Initializing speech engine...
[2026-06-12 11:25:08,315.315 INFO    ] 2026-06-12 11:25:08
[2026-06-12 11:25:08,524.524 INFO    ] 2026-06-12 11:25:08
[2026-06-12 11:25:08,554.554 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 11:25:08,739.739 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 11:25:08,743.743 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 11:25:08,892.892 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 11:25:08,951.951 INFO    ] time= 12/06/2026 11:25:08
[2026-06-12 11:25:08,974.974 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 11:25:08,980.980 INFO    ] Checking for existing commands in stream...
[2026-06-12 11:25:09,051.051 INFO    ] No existing commands found in stream
[2026-06-12 11:25:14,081.081 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 11:25:14,084.084 INFO    ] Waiting 3.21 seconds before fallback handling...
[2026-06-12 11:25:17,651.651 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 11:25:17,652.652 INFO    ] Checking for system updates...
[2026-06-12 11:25:17,674.674 INFO    ] 200
[2026-06-12 11:25:17,675.675 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:25:17,710.710 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 11:25:17,711.711 INFO    ] No update needed
[2026-06-12 11:25:17,713.713 INFO    ] Checking for camera pi updates...
[2026-06-12 11:25:17,732.732 INFO    ] 200
[2026-06-12 11:25:17,733.733 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:25:17,758.758 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 11:25:17,803.803 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 11:25:17,804.804 INFO    ] No camera update needed
[2026-06-12 11:25:17,805.805 INFO    ] Script finished. Safe exiting...
[2026-06-12 11:25:17,807.807 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 11:25:17,810.810 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 11:25:17,813.813 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 11:25:19,851.851 INFO    ] ================================================
[2026-06-12 11:25:19,868.868 INFO    ] Launching Daemon at Fri Jun 12 11:25:19 IST 2026
[2026-06-12 11:25:19,879.879 INFO    ] ================================================
[2026-06-12 11:25:20,230.230 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 11:25:20
[2026-06-12 11:25:20,543.543 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 11:25:20,673.673 INFO    ] Initializing speech engine...
[2026-06-12 11:25:20,676.676 INFO    ] 2026-06-12 11:25:20
[2026-06-12 11:25:20,894.894 INFO    ] 2026-06-12 11:25:20
[2026-06-12 11:25:20,923.923 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 11:25:21,106.106 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 11:25:21,116.116 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 11:25:21,245.245 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 11:25:21,309.309 INFO    ] time= 12/06/2026 11:25:21
[2026-06-12 11:25:21,337.337 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 11:25:21,343.343 INFO    ] Checking for existing commands in stream...
[2026-06-12 11:25:21,411.411 INFO    ] No existing commands found in stream
[2026-06-12 11:25:26,420.420 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 11:25:26,423.423 INFO    ] Waiting 0.15 seconds before fallback handling...
[2026-06-12 11:25:26,908.908 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 11:25:26,910.910 INFO    ] Checking for system updates...
[2026-06-12 11:25:26,932.932 INFO    ] 200
[2026-06-12 11:25:26,933.933 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:25:26,963.963 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 11:25:26,965.965 INFO    ] No update needed
[2026-06-12 11:25:26,966.966 INFO    ] Checking for camera pi updates...
[2026-06-12 11:25:26,988.988 INFO    ] 200
[2026-06-12 11:25:26,989.989 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:25:27,013.013 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 11:25:27,057.057 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 11:25:27,059.059 INFO    ] No camera update needed
[2026-06-12 11:25:27,060.060 INFO    ] Script finished. Safe exiting...
[2026-06-12 11:25:27,061.061 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 11:25:27,064.064 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 11:25:27,067.067 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 11:25:29,105.105 INFO    ] ================================================
[2026-06-12 11:25:29,122.122 INFO    ] Launching Daemon at Fri Jun 12 11:25:29 IST 2026
[2026-06-12 11:25:29,134.134 INFO    ] ================================================
[2026-06-12 11:25:29,462.462 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 11:25:29
[2026-06-12 11:25:29,773.773 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 11:25:29,909.909 INFO    ] Initializing speech engine...
[2026-06-12 11:25:29,917.917 INFO    ] 2026-06-12 11:25:29
[2026-06-12 11:25:30,121.121 INFO    ] 2026-06-12 11:25:30
[2026-06-12 11:25:30,149.149 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 11:25:30,332.332 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 11:25:30,341.341 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 11:25:30,471.471 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 11:25:30,538.538 INFO    ] time= 12/06/2026 11:25:30
[2026-06-12 11:25:30,562.562 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 11:25:30,568.568 INFO    ] Checking for existing commands in stream...
[2026-06-12 11:25:30,634.634 INFO    ] No existing commands found in stream
[2026-06-12 11:25:35,643.643 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 11:25:35,646.646 INFO    ] Waiting 3.71 seconds before fallback handling...
[2026-06-12 11:25:39,735.735 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 11:25:39,737.737 INFO    ] Checking for system updates...
[2026-06-12 11:25:39,759.759 INFO    ] 200
[2026-06-12 11:25:39,760.760 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:25:39,791.791 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 11:25:39,792.792 INFO    ] No update needed
[2026-06-12 11:25:39,793.793 INFO    ] Checking for camera pi updates...
[2026-06-12 11:25:39,813.813 INFO    ] 200
[2026-06-12 11:25:39,814.814 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:25:39,839.839 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 11:25:39,877.877 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 11:25:39,878.878 INFO    ] No camera update needed
[2026-06-12 11:25:39,880.880 INFO    ] Script finished. Safe exiting...
[2026-06-12 11:25:39,881.881 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 11:25:39,884.884 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 11:25:39,887.887 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 11:25:41,925.925 INFO    ] ================================================
[2026-06-12 11:25:41,941.941 INFO    ] Launching Daemon at Fri Jun 12 11:25:41 IST 2026
[2026-06-12 11:25:41,953.953 INFO    ] ================================================
[2026-06-12 11:25:42,301.301 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 11:25:42
[2026-06-12 11:25:42,642.642 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 11:25:42,793.793 INFO    ] Initializing speech engine...
[2026-06-12 11:25:42,798.798 INFO    ] 2026-06-12 11:25:42
[2026-06-12 11:25:43,004.004 INFO    ] 2026-06-12 11:25:42
[2026-06-12 11:25:43,033.033 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 11:25:43,216.216 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 11:25:43,226.226 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 11:25:43,355.355 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 11:25:43,404.404 INFO    ] time= 12/06/2026 11:25:43
[2026-06-12 11:25:43,443.443 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 11:25:43,449.449 INFO    ] Checking for existing commands in stream...
[2026-06-12 11:25:43,520.520 INFO    ] No existing commands found in stream
[2026-06-12 11:25:48,530.530 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 11:25:48,533.533 INFO    ] Waiting 3.20 seconds before fallback handling...
[2026-06-12 11:25:52,160.160 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 11:25:52,161.161 INFO    ] Checking for system updates...
[2026-06-12 11:25:52,184.184 INFO    ] 200
[2026-06-12 11:25:52,185.185 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:25:52,219.219 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 11:25:52,221.221 INFO    ] No update needed
[2026-06-12 11:25:52,222.222 INFO    ] Checking for camera pi updates...
[2026-06-12 11:25:52,242.242 INFO    ] 200
[2026-06-12 11:25:52,243.243 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:25:52,267.267 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 11:25:52,304.304 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 11:25:52,305.305 INFO    ] No camera update needed
[2026-06-12 11:25:52,307.307 INFO    ] Script finished. Safe exiting...
[2026-06-12 11:25:52,308.308 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 11:25:52,311.311 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 11:25:52,314.314 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 11:25:54,353.353 INFO    ] ================================================
[2026-06-12 11:25:54,369.369 INFO    ] Launching Daemon at Fri Jun 12 11:25:54 IST 2026
[2026-06-12 11:25:54,380.380 INFO    ] ================================================
[2026-06-12 11:25:54,740.740 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 11:25:54
[2026-06-12 11:25:55,080.080 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 11:25:55,218.218 INFO    ] Initializing speech engine...
[2026-06-12 11:25:55,223.223 INFO    ] 2026-06-12 11:25:55
[2026-06-12 11:25:55,445.445 INFO    ] 2026-06-12 11:25:55
[2026-06-12 11:25:55,473.473 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 11:25:55,657.657 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 11:25:55,667.667 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 11:25:55,794.794 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 11:25:55,861.861 INFO    ] time= 12/06/2026 11:25:55
[2026-06-12 11:25:55,889.889 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 11:25:55,895.895 INFO    ] Checking for existing commands in stream...
[2026-06-12 11:25:55,962.962 INFO    ] No existing commands found in stream
[2026-06-12 11:26:00,971.971 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 11:26:00,975.975 INFO    ] Waiting 1.21 seconds before fallback handling...
[2026-06-12 11:26:02,487.487 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 11:26:02,488.488 INFO    ] Checking for system updates...
[2026-06-12 11:26:02,510.510 INFO    ] 200
[2026-06-12 11:26:02,511.511 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:26:02,544.544 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 11:26:02,545.545 INFO    ] No update needed
[2026-06-12 11:26:02,547.547 INFO    ] Checking for camera pi updates...
[2026-06-12 11:26:02,569.569 INFO    ] 200
[2026-06-12 11:26:02,570.570 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:26:02,594.594 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 11:26:02,624.624 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 11:26:02,625.625 INFO    ] No camera update needed
[2026-06-12 11:26:02,627.627 INFO    ] Script finished. Safe exiting...
[2026-06-12 11:26:02,628.628 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 11:26:02,631.631 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 11:26:02,634.634 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 11:26:04,674.674 INFO    ] ================================================
[2026-06-12 11:26:04,689.689 INFO    ] Launching Daemon at Fri Jun 12 11:26:04 IST 2026
[2026-06-12 11:26:04,700.700 INFO    ] ================================================
[2026-06-12 11:26:05,061.061 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 11:26:05
[2026-06-12 11:26:05,406.406 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 11:26:05,573.573 INFO    ] Initializing speech engine...
[2026-06-12 11:26:05,576.576 INFO    ] 2026-06-12 11:26:05
[2026-06-12 11:26:05,781.781 INFO    ] 2026-06-12 11:26:05
[2026-06-12 11:26:05,810.810 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 11:26:05,995.995 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 11:26:05,998.998 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 11:26:06,113.113 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 11:26:06,115.115 INFO    ] time= 12/06/2026 11:26:06
[2026-06-12 11:26:06,116.116 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 11:26:06,140.140 INFO    ] Checking for existing commands in stream...
[2026-06-12 11:26:06,237.237 INFO    ] No existing commands found in stream
[2026-06-12 11:26:11,252.252 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 11:26:11,255.255 INFO    ] Waiting 3.09 seconds before fallback handling...
[2026-06-12 11:26:15,302.302 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 11:26:15,305.305 INFO    ] Checking for system updates...
[2026-06-12 11:26:15,343.343 INFO    ] 200
[2026-06-12 11:26:15,345.345 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:26:15,406.406 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 11:26:15,409.409 INFO    ] No update needed
[2026-06-12 11:26:15,412.412 INFO    ] Checking for camera pi updates...
[2026-06-12 11:26:15,451.451 INFO    ] 200
[2026-06-12 11:26:15,452.452 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:26:15,476.476 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 11:26:15,615.615 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 11:26:15,617.617 INFO    ] No camera update needed
[2026-06-12 11:26:15,618.618 INFO    ] Script finished. Safe exiting...
[2026-06-12 11:26:15,619.619 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 11:26:15,623.623 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 11:26:15,626.626 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 11:26:17,665.665 INFO    ] ================================================
[2026-06-12 11:26:17,681.681 INFO    ] Launching Daemon at Fri Jun 12 11:26:17 IST 2026
[2026-06-12 11:26:17,692.692 INFO    ] ================================================
[2026-06-12 11:26:18,050.050 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 11:26:18
[2026-06-12 11:26:18,389.389 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 11:26:18,539.539 INFO    ] Initializing speech engine...
[2026-06-12 11:26:18,545.545 INFO    ] 2026-06-12 11:26:18
[2026-06-12 11:26:18,752.752 INFO    ] 2026-06-12 11:26:18
[2026-06-12 11:26:18,781.781 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 11:26:18,965.965 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 11:26:18,977.977 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 11:26:19,119.119 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 11:26:19,179.179 INFO    ] time= 12/06/2026 11:26:19
[2026-06-12 11:26:19,195.195 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 11:26:19,201.201 INFO    ] Checking for existing commands in stream...
[2026-06-12 11:26:19,269.269 INFO    ] No existing commands found in stream
[2026-06-12 11:26:24,288.288 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 11:26:24,292.292 INFO    ] Waiting 0.34 seconds before fallback handling...
[2026-06-12 11:26:24,997.997 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 11:26:24,999.999 INFO    ] Checking for system updates...
[2026-06-12 11:26:25,020.020 INFO    ] 200
[2026-06-12 11:26:25,022.022 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:26:25,053.053 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 11:26:25,054.054 INFO    ] No update needed
[2026-06-12 11:26:25,056.056 INFO    ] Checking for camera pi updates...
[2026-06-12 11:26:25,076.076 INFO    ] 200
[2026-06-12 11:26:25,077.077 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:26:25,101.101 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 11:26:25,137.137 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 11:26:25,138.138 INFO    ] No camera update needed
[2026-06-12 11:26:25,140.140 INFO    ] Script finished. Safe exiting...
[2026-06-12 11:26:25,141.141 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 11:26:25,145.145 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 11:26:25,147.147 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 11:26:27,187.187 INFO    ] ================================================
[2026-06-12 11:26:27,202.202 INFO    ] Launching Daemon at Fri Jun 12 11:26:27 IST 2026
[2026-06-12 11:26:27,213.213 INFO    ] ================================================
[2026-06-12 11:26:27,568.568 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 11:26:27
[2026-06-12 11:26:27,909.909 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 11:26:28,060.060 INFO    ] Initializing speech engine...
[2026-06-12 11:26:28,067.067 INFO    ] 2026-06-12 11:26:28
[2026-06-12 11:26:28,274.274 INFO    ] 2026-06-12 11:26:28
[2026-06-12 11:26:28,302.302 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 11:26:28,486.486 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 11:26:28,490.490 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 11:26:28,627.627 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 11:26:28,691.691 INFO    ] time= 12/06/2026 11:26:28
[2026-06-12 11:26:28,719.719 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 11:26:28,726.726 INFO    ] Checking for existing commands in stream...
[2026-06-12 11:26:28,793.793 INFO    ] No existing commands found in stream
[2026-06-12 11:26:33,802.802 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 11:26:33,805.805 INFO    ] Waiting 3.98 seconds before fallback handling...
[2026-06-12 11:26:38,155.155 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 11:26:38,156.156 INFO    ] Checking for system updates...
[2026-06-12 11:26:38,177.177 INFO    ] 200
[2026-06-12 11:26:38,179.179 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:26:38,210.210 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 11:26:38,212.212 INFO    ] No update needed
[2026-06-12 11:26:38,213.213 INFO    ] Checking for camera pi updates...
[2026-06-12 11:26:38,232.232 INFO    ] 200
[2026-06-12 11:26:38,234.234 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:26:38,257.257 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 11:26:38,303.303 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 11:26:38,305.305 INFO    ] No camera update needed
[2026-06-12 11:26:38,306.306 INFO    ] Script finished. Safe exiting...
[2026-06-12 11:26:38,307.307 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 11:26:38,310.310 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 11:26:38,313.313 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 11:26:40,352.352 INFO    ] ================================================
[2026-06-12 11:26:40,367.367 INFO    ] Launching Daemon at Fri Jun 12 11:26:40 IST 2026
[2026-06-12 11:26:40,377.377 INFO    ] ================================================
[2026-06-12 11:26:40,720.720 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 11:26:40
[2026-06-12 11:26:41,032.032 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 11:26:41,162.162 INFO    ] Initializing speech engine...
[2026-06-12 11:26:41,167.167 INFO    ] 2026-06-12 11:26:41
[2026-06-12 11:26:41,385.385 INFO    ] 2026-06-12 11:26:41
[2026-06-12 11:26:41,415.415 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 11:26:41,601.601 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 11:26:41,612.612 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 11:26:41,735.735 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 11:26:41,796.796 INFO    ] time= 12/06/2026 11:26:41
[2026-06-12 11:26:41,832.832 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 11:26:41,837.837 INFO    ] Checking for existing commands in stream...
[2026-06-12 11:26:41,909.909 INFO    ] No existing commands found in stream
[2026-06-12 11:26:46,919.919 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 11:26:46,922.922 INFO    ] Waiting 1.61 seconds before fallback handling...
[2026-06-12 11:26:48,905.905 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 11:26:48,906.906 INFO    ] Checking for system updates...
[2026-06-12 11:26:48,926.926 INFO    ] 200
[2026-06-12 11:26:48,928.928 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:26:48,958.958 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 11:26:48,959.959 INFO    ] No update needed
[2026-06-12 11:26:48,961.961 INFO    ] Checking for camera pi updates...
[2026-06-12 11:26:48,980.980 INFO    ] 200
[2026-06-12 11:26:48,982.982 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:26:49,005.005 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 11:26:49,046.046 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 11:26:49,048.048 INFO    ] No camera update needed
[2026-06-12 11:26:49,049.049 INFO    ] Script finished. Safe exiting...
[2026-06-12 11:26:49,050.050 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 11:26:49,053.053 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 11:26:49,056.056 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 11:26:51,096.096 INFO    ] ================================================
[2026-06-12 11:26:51,111.111 INFO    ] Launching Daemon at Fri Jun 12 11:26:51 IST 2026
[2026-06-12 11:26:51,122.122 INFO    ] ================================================
[2026-06-12 11:26:51,479.479 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 11:26:51
[2026-06-12 11:26:51,792.792 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 11:26:51,943.943 INFO    ] Initializing speech engine...
[2026-06-12 11:26:51,949.949 INFO    ] 2026-06-12 11:26:51
[2026-06-12 11:26:52,157.157 INFO    ] 2026-06-12 11:26:52
[2026-06-12 11:26:52,186.186 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 11:26:52,371.371 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 11:26:52,375.375 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 11:26:52,512.512 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 11:26:52,576.576 INFO    ] time= 12/06/2026 11:26:52
[2026-06-12 11:26:52,604.604 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 11:26:52,611.611 INFO    ] Checking for existing commands in stream...
[2026-06-12 11:26:52,728.728 INFO    ] No existing commands found in stream
[2026-06-12 11:26:57,738.738 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 11:26:57,742.742 INFO    ] Waiting 2.39 seconds before fallback handling...
[2026-06-12 11:27:00,526.526 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 11:27:00,528.528 INFO    ] Checking for system updates...
[2026-06-12 11:27:00,550.550 INFO    ] 200
[2026-06-12 11:27:00,551.551 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:27:00,582.582 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 11:27:00,583.583 INFO    ] No update needed
[2026-06-12 11:27:00,584.584 INFO    ] Checking for camera pi updates...
[2026-06-12 11:27:00,605.605 INFO    ] 200
[2026-06-12 11:27:00,606.606 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:27:00,629.629 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 11:27:00,665.665 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 11:27:00,667.667 INFO    ] No camera update needed
[2026-06-12 11:27:00,668.668 INFO    ] Script finished. Safe exiting...
[2026-06-12 11:27:00,669.669 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 11:27:00,672.672 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 11:27:00,675.675 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 11:27:02,700.700 INFO    ] ================================================
[2026-06-12 11:27:02,708.708 INFO    ] Launching Daemon at Fri Jun 12 11:27:02 IST 2026
[2026-06-12 11:27:02,715.715 INFO    ] ================================================
[2026-06-12 11:27:03,055.055 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 11:27:03
[2026-06-12 11:27:03,410.410 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 11:27:03,549.549 INFO    ] Initializing speech engine...
[2026-06-12 11:27:03,562.562 INFO    ] 2026-06-12 11:27:03
[2026-06-12 11:27:03,772.772 INFO    ] 2026-06-12 11:27:03
[2026-06-12 11:27:03,802.802 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 11:27:03,949.949 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 11:27:03,986.986 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 11:27:04,116.116 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 11:27:04,167.167 INFO    ] time= 12/06/2026 11:27:04
[2026-06-12 11:27:04,200.200 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 11:27:04,216.216 INFO    ] Checking for existing commands in stream...
[2026-06-12 11:27:04,288.288 INFO    ] No existing commands found in stream
[2026-06-12 11:27:09,303.303 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 11:27:09,306.306 INFO    ] Waiting 0.84 seconds before fallback handling...
[2026-06-12 11:27:10,516.516 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 11:27:10,518.518 INFO    ] Checking for system updates...
[2026-06-12 11:27:10,539.539 INFO    ] 200
[2026-06-12 11:27:10,541.541 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:27:10,571.571 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 11:27:10,573.573 INFO    ] No update needed
[2026-06-12 11:27:10,574.574 INFO    ] Checking for camera pi updates...
[2026-06-12 11:27:10,594.594 INFO    ] 200
[2026-06-12 11:27:10,595.595 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:27:10,619.619 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 11:27:10,656.656 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 11:27:10,657.657 INFO    ] No camera update needed
[2026-06-12 11:27:10,659.659 INFO    ] Script finished. Safe exiting...
[2026-06-12 11:27:10,660.660 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 11:27:10,663.663 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 11:27:10,667.667 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 11:27:12,706.706 INFO    ] ================================================
[2026-06-12 11:27:12,721.721 INFO    ] Launching Daemon at Fri Jun 12 11:27:12 IST 2026
[2026-06-12 11:27:12,732.732 INFO    ] ================================================
[2026-06-12 11:27:13,060.060 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 11:27:13
[2026-06-12 11:27:13,373.373 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 11:27:13,506.506 INFO    ] Initializing speech engine...
[2026-06-12 11:27:13,510.510 INFO    ] 2026-06-12 11:27:13
[2026-06-12 11:27:13,728.728 INFO    ] 2026-06-12 11:27:13
[2026-06-12 11:27:13,758.758 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 11:27:13,946.946 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 11:27:13,949.949 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 11:27:14,084.084 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 11:27:14,142.142 INFO    ] time= 12/06/2026 11:27:14
[2026-06-12 11:27:14,181.181 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 11:27:14,183.183 INFO    ] Checking for existing commands in stream...
[2026-06-12 11:27:14,279.279 INFO    ] No existing commands found in stream
[2026-06-12 11:27:19,288.288 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 11:27:19,291.291 INFO    ] Waiting 3.53 seconds before fallback handling...
[2026-06-12 11:27:23,196.196 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 11:27:23,198.198 INFO    ] Checking for system updates...
[2026-06-12 11:27:23,219.219 INFO    ] 200
[2026-06-12 11:27:23,220.220 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:27:23,250.250 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 11:27:23,251.251 INFO    ] No update needed
[2026-06-12 11:27:23,253.253 INFO    ] Checking for camera pi updates...
[2026-06-12 11:27:23,272.272 INFO    ] 200
[2026-06-12 11:27:23,273.273 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:27:23,296.296 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 11:27:23,341.341 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 11:27:23,343.343 INFO    ] No camera update needed
[2026-06-12 11:27:23,344.344 INFO    ] Script finished. Safe exiting...
[2026-06-12 11:27:23,345.345 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 11:27:23,348.348 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 11:27:23,351.351 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 11:27:25,393.393 INFO    ] ================================================
[2026-06-12 11:27:25,408.408 INFO    ] Launching Daemon at Fri Jun 12 11:27:25 IST 2026
[2026-06-12 11:27:25,420.420 INFO    ] ================================================
[2026-06-12 11:27:25,751.751 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 11:27:25
[2026-06-12 11:27:26,063.063 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 11:27:26,193.193 INFO    ] Initializing speech engine...
[2026-06-12 11:27:26,198.198 INFO    ] 2026-06-12 11:27:26
[2026-06-12 11:27:26,415.415 INFO    ] 2026-06-12 11:27:26
[2026-06-12 11:27:26,446.446 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 11:27:26,632.632 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 11:27:26,641.641 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 11:27:26,773.773 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 11:27:26,832.832 INFO    ] time= 12/06/2026 11:27:26
[2026-06-12 11:27:26,864.864 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 11:27:26,870.870 INFO    ] Checking for existing commands in stream...
[2026-06-12 11:27:26,938.938 INFO    ] No existing commands found in stream
[2026-06-12 11:27:31,961.961 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 11:27:31,963.963 INFO    ] Waiting 0.72 seconds before fallback handling...
[2026-06-12 11:27:33,046.046 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 11:27:33,047.047 INFO    ] Checking for system updates...
[2026-06-12 11:27:33,068.068 INFO    ] 200
[2026-06-12 11:27:33,070.070 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:27:33,100.100 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 11:27:33,102.102 INFO    ] No update needed
[2026-06-12 11:27:33,104.104 INFO    ] Checking for camera pi updates...
[2026-06-12 11:27:33,123.123 INFO    ] 200
[2026-06-12 11:27:33,124.124 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:27:33,147.147 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 11:27:33,187.187 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 11:27:33,188.188 INFO    ] No camera update needed
[2026-06-12 11:27:33,190.190 INFO    ] Script finished. Safe exiting...
[2026-06-12 11:27:33,191.191 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 11:27:33,194.194 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 11:27:33,197.197 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 11:27:35,237.237 INFO    ] ================================================
[2026-06-12 11:27:35,253.253 INFO    ] Launching Daemon at Fri Jun 12 11:27:35 IST 2026
[2026-06-12 11:27:35,265.265 INFO    ] ================================================
[2026-06-12 11:27:35,602.602 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 11:27:35
[2026-06-12 11:27:35,915.915 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 11:27:36,052.052 INFO    ] Initializing speech engine...
[2026-06-12 11:27:36,061.061 INFO    ] 2026-06-12 11:27:36
[2026-06-12 11:27:36,265.265 INFO    ] 2026-06-12 11:27:36
[2026-06-12 11:27:36,297.297 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 11:27:36,483.483 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 11:27:36,486.486 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 11:27:36,617.617 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 11:27:36,672.672 INFO    ] time= 12/06/2026 11:27:36
[2026-06-12 11:27:36,713.713 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 11:27:36,718.718 INFO    ] Checking for existing commands in stream...
[2026-06-12 11:27:36,790.790 INFO    ] No existing commands found in stream
[2026-06-12 11:27:41,800.800 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 11:27:41,803.803 INFO    ] Waiting 1.92 seconds before fallback handling...
[2026-06-12 11:27:44,066.066 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 11:27:44,068.068 INFO    ] Checking for system updates...
[2026-06-12 11:27:44,088.088 INFO    ] 200
[2026-06-12 11:27:44,090.090 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:27:44,120.120 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 11:27:44,121.121 INFO    ] No update needed
[2026-06-12 11:27:44,122.122 INFO    ] Checking for camera pi updates...
[2026-06-12 11:27:44,142.142 INFO    ] 200
[2026-06-12 11:27:44,144.144 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:27:44,167.167 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 11:27:44,203.203 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 11:27:44,204.204 INFO    ] No camera update needed
[2026-06-12 11:27:44,205.205 INFO    ] Script finished. Safe exiting...
[2026-06-12 11:27:44,207.207 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 11:27:44,210.210 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 11:27:44,213.213 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 11:27:46,253.253 INFO    ] ================================================
[2026-06-12 11:27:46,268.268 INFO    ] Launching Daemon at Fri Jun 12 11:27:46 IST 2026
[2026-06-12 11:27:46,280.280 INFO    ] ================================================
[2026-06-12 11:27:46,628.628 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 11:27:46
[2026-06-12 11:27:46,938.938 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 11:27:47,070.070 INFO    ] Initializing speech engine...
[2026-06-12 11:27:47,082.082 INFO    ] 2026-06-12 11:27:47
[2026-06-12 11:27:47,288.288 INFO    ] 2026-06-12 11:27:47
[2026-06-12 11:27:47,316.316 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 11:27:47,493.493 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 11:27:47,503.503 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 11:27:47,646.646 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 11:27:47,697.697 INFO    ] time= 12/06/2026 11:27:47
[2026-06-12 11:27:47,748.748 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 11:27:47,754.754 INFO    ] Checking for existing commands in stream...
[2026-06-12 11:27:47,866.866 INFO    ] No existing commands found in stream
[2026-06-12 11:27:52,876.876 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 11:27:52,879.879 INFO    ] Waiting 3.41 seconds before fallback handling...
[2026-06-12 11:27:56,635.635 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 11:27:56,636.636 INFO    ] Checking for system updates...
[2026-06-12 11:27:56,657.657 INFO    ] 200
[2026-06-12 11:27:56,658.658 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:27:56,690.690 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 11:27:56,692.692 INFO    ] No update needed
[2026-06-12 11:27:56,693.693 INFO    ] Checking for camera pi updates...
[2026-06-12 11:27:56,714.714 INFO    ] 200
[2026-06-12 11:27:56,715.715 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:27:56,740.740 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 11:27:56,784.784 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 11:27:56,785.785 INFO    ] No camera update needed
[2026-06-12 11:27:56,787.787 INFO    ] Script finished. Safe exiting...
[2026-06-12 11:27:56,788.788 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 11:27:56,791.791 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 11:27:56,794.794 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 11:27:58,832.832 INFO    ] ================================================
[2026-06-12 11:27:58,848.848 INFO    ] Launching Daemon at Fri Jun 12 11:27:58 IST 2026
[2026-06-12 11:27:58,860.860 INFO    ] ================================================
[2026-06-12 11:27:59,230.230 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 11:27:59
[2026-06-12 11:27:59,568.568 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 11:27:59,719.719 INFO    ] Initializing speech engine...
[2026-06-12 11:27:59,725.725 INFO    ] 2026-06-12 11:27:59
[2026-06-12 11:27:59,932.932 INFO    ] 2026-06-12 11:27:59
[2026-06-12 11:27:59,959.959 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 11:28:00,143.143 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 11:28:00,153.153 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 11:28:00,276.276 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 11:28:00,333.333 INFO    ] time= 12/06/2026 11:28:00
[2026-06-12 11:28:00,366.366 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 11:28:00,376.376 INFO    ] Checking for existing commands in stream...
[2026-06-12 11:28:00,448.448 INFO    ] No existing commands found in stream
[2026-06-12 11:28:05,457.457 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 11:28:05,460.460 INFO    ] Waiting 2.67 seconds before fallback handling...
[2026-06-12 11:28:08,473.473 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 11:28:08,475.475 INFO    ] Checking for system updates...
[2026-06-12 11:28:08,495.495 INFO    ] 200
[2026-06-12 11:28:08,496.496 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:28:08,529.529 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 11:28:08,530.530 INFO    ] No update needed
[2026-06-12 11:28:08,532.532 INFO    ] Checking for camera pi updates...
[2026-06-12 11:28:08,552.552 INFO    ] 200
[2026-06-12 11:28:08,554.554 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:28:08,577.577 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 11:28:08,614.614 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 11:28:08,615.615 INFO    ] No camera update needed
[2026-06-12 11:28:08,617.617 INFO    ] Script finished. Safe exiting...
[2026-06-12 11:28:08,618.618 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 11:28:08,621.621 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 11:28:08,624.624 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 11:28:10,662.662 INFO    ] ================================================
[2026-06-12 11:28:10,678.678 INFO    ] Launching Daemon at Fri Jun 12 11:28:10 IST 2026
[2026-06-12 11:28:10,689.689 INFO    ] ================================================
[2026-06-12 11:28:11,091.091 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 11:28:11
[2026-06-12 11:28:11,431.431 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 11:28:11,584.584 INFO    ] Initializing speech engine...
[2026-06-12 11:28:11,590.590 INFO    ] 2026-06-12 11:28:11
[2026-06-12 11:28:11,798.798 INFO    ] 2026-06-12 11:28:11
[2026-06-12 11:28:11,827.827 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 11:28:12,011.011 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 11:28:12,020.020 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 11:28:12,155.155 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 11:28:12,217.217 INFO    ] time= 12/06/2026 11:28:12
[2026-06-12 11:28:12,240.240 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 11:28:12,247.247 INFO    ] Checking for existing commands in stream...
[2026-06-12 11:28:12,314.314 INFO    ] No existing commands found in stream
[2026-06-12 11:28:17,328.328 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 11:28:17,332.332 INFO    ] Waiting 1.74 seconds before fallback handling...
[2026-06-12 11:28:19,469.469 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 11:28:19,471.471 INFO    ] Checking for system updates...
[2026-06-12 11:28:19,491.491 INFO    ] 200
[2026-06-12 11:28:19,493.493 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:28:19,523.523 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 11:28:19,524.524 INFO    ] No update needed
[2026-06-12 11:28:19,525.525 INFO    ] Checking for camera pi updates...
[2026-06-12 11:28:19,545.545 INFO    ] 200
[2026-06-12 11:28:19,546.546 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:28:19,572.572 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 11:28:19,714.714 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 11:28:19,715.715 INFO    ] No camera update needed
[2026-06-12 11:28:19,716.716 INFO    ] Script finished. Safe exiting...
[2026-06-12 11:28:19,718.718 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 11:28:19,721.721 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 11:28:19,725.725 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 11:28:21,764.764 INFO    ] ================================================
[2026-06-12 11:28:21,780.780 INFO    ] Launching Daemon at Fri Jun 12 11:28:21 IST 2026
[2026-06-12 11:28:21,791.791 INFO    ] ================================================
[2026-06-12 11:28:22,151.151 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 11:28:22
[2026-06-12 11:28:22,465.465 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 11:28:22,600.600 INFO    ] Initializing speech engine...
[2026-06-12 11:28:22,614.614 INFO    ] 2026-06-12 11:28:22
[2026-06-12 11:28:22,834.834 INFO    ] 2026-06-12 11:28:22
[2026-06-12 11:28:22,864.864 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 11:28:23,063.063 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 11:28:23,067.067 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 11:28:23,207.207 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 11:28:23,263.263 INFO    ] time= 12/06/2026 11:28:23
[2026-06-12 11:28:23,312.312 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 11:28:23,319.319 INFO    ] Checking for existing commands in stream...
[2026-06-12 11:28:23,417.417 INFO    ] No existing commands found in stream
[2026-06-12 11:28:28,431.431 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 11:28:28,434.434 INFO    ] Waiting 0.67 seconds before fallback handling...
[2026-06-12 11:28:29,474.474 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 11:28:29,475.475 INFO    ] Checking for system updates...
[2026-06-12 11:28:29,497.497 INFO    ] 200
[2026-06-12 11:28:29,498.498 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:28:29,528.528 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 11:28:29,530.530 INFO    ] No update needed
[2026-06-12 11:28:29,531.531 INFO    ] Checking for camera pi updates...
[2026-06-12 11:28:29,552.552 INFO    ] 200
[2026-06-12 11:28:29,554.554 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:28:29,577.577 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 11:28:29,613.613 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 11:28:29,615.615 INFO    ] No camera update needed
[2026-06-12 11:28:29,616.616 INFO    ] Script finished. Safe exiting...
[2026-06-12 11:28:29,617.617 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 11:28:29,621.621 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 11:28:29,623.623 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 11:28:31,662.662 INFO    ] ================================================
[2026-06-12 11:28:31,677.677 INFO    ] Launching Daemon at Fri Jun 12 11:28:31 IST 2026
[2026-06-12 11:28:31,689.689 INFO    ] ================================================
[2026-06-12 11:28:32,044.044 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 11:28:32
[2026-06-12 11:28:32,387.387 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 11:28:32,527.527 INFO    ] Initializing speech engine...
[2026-06-12 11:28:32,531.531 INFO    ] 2026-06-12 11:28:32
[2026-06-12 11:28:32,746.746 INFO    ] 2026-06-12 11:28:32
[2026-06-12 11:28:32,775.775 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 11:28:32,919.919 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 11:28:32,962.962 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 11:28:33,116.116 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 11:28:33,169.169 INFO    ] time= 12/06/2026 11:28:33
[2026-06-12 11:28:33,192.192 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 11:28:33,199.199 INFO    ] Checking for existing commands in stream...
[2026-06-12 11:28:33,266.266 INFO    ] No existing commands found in stream
[2026-06-12 11:28:38,275.275 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 11:28:38,278.278 INFO    ] Waiting 3.30 seconds before fallback handling...
[2026-06-12 11:28:41,934.934 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 11:28:41,936.936 INFO    ] Checking for system updates...
[2026-06-12 11:28:41,957.957 INFO    ] 200
[2026-06-12 11:28:41,958.958 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:28:41,990.990 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 11:28:41,992.992 INFO    ] No update needed
[2026-06-12 11:28:41,993.993 INFO    ] Checking for camera pi updates...
[2026-06-12 11:28:42,012.012 INFO    ] 200
[2026-06-12 11:28:42,014.014 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:28:42,039.039 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 11:28:42,078.078 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 11:28:42,079.079 INFO    ] No camera update needed
[2026-06-12 11:28:42,081.081 INFO    ] Script finished. Safe exiting...
[2026-06-12 11:28:42,082.082 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 11:28:42,085.085 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 11:28:42,087.087 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 11:28:44,129.129 INFO    ] ================================================
[2026-06-12 11:28:44,145.145 INFO    ] Launching Daemon at Fri Jun 12 11:28:44 IST 2026
[2026-06-12 11:28:44,156.156 INFO    ] ================================================
[2026-06-12 11:28:44,493.493 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 11:28:44
[2026-06-12 11:28:44,810.810 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 11:28:44,956.956 INFO    ] Initializing speech engine...
[2026-06-12 11:28:44,961.961 INFO    ] 2026-06-12 11:28:44
[2026-06-12 11:28:45,164.164 INFO    ] 2026-06-12 11:28:45
[2026-06-12 11:28:45,193.193 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 11:28:45,316.316 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 11:28:45,378.378 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 11:28:45,516.516 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 11:28:45,584.584 INFO    ] time= 12/06/2026 11:28:45
[2026-06-12 11:28:45,608.608 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 11:28:45,614.614 INFO    ] Checking for existing commands in stream...
[2026-06-12 11:28:45,681.681 INFO    ] No existing commands found in stream
[2026-06-12 11:28:50,690.690 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 11:28:50,693.693 INFO    ] Waiting 3.47 seconds before fallback handling...
[2026-06-12 11:28:54,534.534 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 11:28:54,535.535 INFO    ] Checking for system updates...
[2026-06-12 11:28:54,558.558 INFO    ] 200
[2026-06-12 11:28:54,560.560 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:28:54,593.593 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 11:28:54,595.595 INFO    ] No update needed
[2026-06-12 11:28:54,596.596 INFO    ] Checking for camera pi updates...
[2026-06-12 11:28:54,619.619 INFO    ] 200
[2026-06-12 11:28:54,620.620 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:28:54,644.644 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 11:28:54,682.682 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 11:28:54,684.684 INFO    ] No camera update needed
[2026-06-12 11:28:54,685.685 INFO    ] Script finished. Safe exiting...
[2026-06-12 11:28:54,687.687 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 11:28:54,690.690 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 11:28:54,693.693 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 11:28:56,734.734 INFO    ] ================================================
[2026-06-12 11:28:56,749.749 INFO    ] Launching Daemon at Fri Jun 12 11:28:56 IST 2026
[2026-06-12 11:28:56,760.760 INFO    ] ================================================
[2026-06-12 11:28:57,114.114 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 11:28:57
[2026-06-12 11:28:57,432.432 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 11:28:57,575.575 INFO    ] Initializing speech engine...
[2026-06-12 11:28:57,580.580 INFO    ] 2026-06-12 11:28:57
[2026-06-12 11:28:57,783.783 INFO    ] 2026-06-12 11:28:57
[2026-06-12 11:28:57,812.812 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 11:28:57,939.939 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 11:28:57,996.996 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 11:28:58,134.134 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 11:28:58,198.198 INFO    ] time= 12/06/2026 11:28:58
[2026-06-12 11:28:58,224.224 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 11:28:58,231.231 INFO    ] Checking for existing commands in stream...
[2026-06-12 11:28:58,297.297 INFO    ] No existing commands found in stream
[2026-06-12 11:29:03,305.305 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 11:29:03,307.307 INFO    ] Waiting 2.69 seconds before fallback handling...
[2026-06-12 11:29:06,365.365 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 11:29:06,366.366 INFO    ] Checking for system updates...
[2026-06-12 11:29:06,387.387 INFO    ] 200
[2026-06-12 11:29:06,388.388 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:29:06,421.421 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 11:29:06,422.422 INFO    ] No update needed
[2026-06-12 11:29:06,424.424 INFO    ] Checking for camera pi updates...
[2026-06-12 11:29:06,443.443 INFO    ] 200
[2026-06-12 11:29:06,444.444 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:29:06,470.470 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 11:29:06,511.511 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 11:29:06,512.512 INFO    ] No camera update needed
[2026-06-12 11:29:06,513.513 INFO    ] Script finished. Safe exiting...
[2026-06-12 11:29:06,514.514 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 11:29:06,517.517 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 11:29:06,520.520 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 11:29:08,559.559 INFO    ] ================================================
[2026-06-12 11:29:08,575.575 INFO    ] Launching Daemon at Fri Jun 12 11:29:08 IST 2026
[2026-06-12 11:29:08,586.586 INFO    ] ================================================
[2026-06-12 11:29:08,931.931 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 11:29:08
[2026-06-12 11:29:09,243.243 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 11:29:09,373.373 INFO    ] Initializing speech engine...
[2026-06-12 11:29:09,378.378 INFO    ] 2026-06-12 11:29:09
[2026-06-12 11:29:09,598.598 INFO    ] 2026-06-12 11:29:09
[2026-06-12 11:29:09,626.626 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 11:29:09,813.813 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 11:29:09,822.822 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 11:29:09,953.953 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 11:29:10,017.017 INFO    ] time= 12/06/2026 11:29:09
[2026-06-12 11:29:10,046.046 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 11:29:10,053.053 INFO    ] Checking for existing commands in stream...
[2026-06-12 11:29:10,125.125 INFO    ] No existing commands found in stream
[2026-06-12 11:29:15,135.135 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 11:29:15,138.138 INFO    ] Waiting 0.20 seconds before fallback handling...
[2026-06-12 11:29:15,698.698 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 11:29:15,699.699 INFO    ] Checking for system updates...
[2026-06-12 11:29:15,720.720 INFO    ] 200
[2026-06-12 11:29:15,721.721 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:29:15,756.756 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 11:29:15,758.758 INFO    ] No update needed
[2026-06-12 11:29:15,759.759 INFO    ] Checking for camera pi updates...
[2026-06-12 11:29:15,779.779 INFO    ] 200
[2026-06-12 11:29:15,781.781 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:29:15,805.805 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 11:29:15,840.840 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 11:29:15,842.842 INFO    ] No camera update needed
[2026-06-12 11:29:15,843.843 INFO    ] Script finished. Safe exiting...
[2026-06-12 11:29:15,844.844 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 11:29:15,847.847 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 11:29:15,850.850 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 11:29:17,890.890 INFO    ] ================================================
[2026-06-12 11:29:17,905.905 INFO    ] Launching Daemon at Fri Jun 12 11:29:17 IST 2026
[2026-06-12 11:29:17,917.917 INFO    ] ================================================
[2026-06-12 11:29:18,258.258 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 11:29:18
[2026-06-12 11:29:18,576.576 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 11:29:18,721.721 INFO    ] Initializing speech engine...
[2026-06-12 11:29:18,726.726 INFO    ] 2026-06-12 11:29:18
[2026-06-12 11:29:18,931.931 INFO    ] 2026-06-12 11:29:18
[2026-06-12 11:29:18,958.958 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 11:29:19,142.142 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 11:29:19,145.145 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 11:29:19,281.281 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 11:29:19,335.335 INFO    ] time= 12/06/2026 11:29:19
[2026-06-12 11:29:19,371.371 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 11:29:19,373.373 INFO    ] Checking for existing commands in stream...
[2026-06-12 11:29:19,444.444 INFO    ] No existing commands found in stream
[2026-06-12 11:29:24,453.453 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 11:29:24,456.456 INFO    ] Waiting 2.43 seconds before fallback handling...
[2026-06-12 11:29:27,224.224 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 11:29:27,226.226 INFO    ] Checking for system updates...
[2026-06-12 11:29:27,248.248 INFO    ] 200
[2026-06-12 11:29:27,249.249 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:29:27,282.282 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 11:29:27,284.284 INFO    ] No update needed
[2026-06-12 11:29:27,285.285 INFO    ] Checking for camera pi updates...
[2026-06-12 11:29:27,305.305 INFO    ] 200
[2026-06-12 11:29:27,307.307 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:29:27,336.336 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 11:29:27,378.378 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 11:29:27,380.380 INFO    ] No camera update needed
[2026-06-12 11:29:27,381.381 INFO    ] Script finished. Safe exiting...
[2026-06-12 11:29:27,383.383 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 11:29:27,386.386 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 11:29:27,389.389 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 11:29:29,427.427 INFO    ] ================================================
[2026-06-12 11:29:29,442.442 INFO    ] Launching Daemon at Fri Jun 12 11:29:29 IST 2026
[2026-06-12 11:29:29,453.453 INFO    ] ================================================
[2026-06-12 11:29:29,812.812 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 11:29:29
[2026-06-12 11:29:30,123.123 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 11:29:30,253.253 INFO    ] Initializing speech engine...
[2026-06-12 11:29:30,261.261 INFO    ] 2026-06-12 11:29:30
[2026-06-12 11:29:30,473.473 INFO    ] 2026-06-12 11:29:30
[2026-06-12 11:29:30,501.501 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 11:29:30,683.683 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 11:29:30,692.692 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 11:29:30,821.821 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 11:29:30,885.885 INFO    ] time= 12/06/2026 11:29:30
[2026-06-12 11:29:30,911.911 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 11:29:30,917.917 INFO    ] Checking for existing commands in stream...
[2026-06-12 11:29:30,984.984 INFO    ] No existing commands found in stream
[2026-06-12 11:29:35,998.998 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 11:29:36,001.001 INFO    ] Waiting 2.46 seconds before fallback handling...
[2026-06-12 11:29:38,803.803 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 11:29:38,804.804 INFO    ] Checking for system updates...
[2026-06-12 11:29:38,826.826 INFO    ] 200
[2026-06-12 11:29:38,827.827 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:29:38,857.857 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 11:29:38,859.859 INFO    ] No update needed
[2026-06-12 11:29:38,860.860 INFO    ] Checking for camera pi updates...
[2026-06-12 11:29:38,880.880 INFO    ] 200
[2026-06-12 11:29:38,881.881 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:29:38,904.904 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 11:29:38,941.941 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 11:29:38,943.943 INFO    ] No camera update needed
[2026-06-12 11:29:38,944.944 INFO    ] Script finished. Safe exiting...
[2026-06-12 11:29:38,946.946 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 11:29:38,950.950 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 11:29:38,952.952 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 11:29:40,992.992 INFO    ] ================================================
[2026-06-12 11:29:41,007.007 INFO    ] Launching Daemon at Fri Jun 12 11:29:41 IST 2026
[2026-06-12 11:29:41,018.018 INFO    ] ================================================
[2026-06-12 11:29:41,410.410 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 11:29:41
[2026-06-12 11:29:41,744.744 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 11:29:41,897.897 INFO    ] Initializing speech engine...
[2026-06-12 11:29:41,902.902 INFO    ] 2026-06-12 11:29:41
[2026-06-12 11:29:42,111.111 INFO    ] 2026-06-12 11:29:42
[2026-06-12 11:29:42,139.139 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 11:29:42,321.321 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 11:29:42,325.325 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 11:29:42,454.454 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 11:29:42,509.509 INFO    ] time= 12/06/2026 11:29:42
[2026-06-12 11:29:42,551.551 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 11:29:42,558.558 INFO    ] Checking for existing commands in stream...
[2026-06-12 11:29:42,625.625 INFO    ] No existing commands found in stream
[2026-06-12 11:29:47,644.644 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 11:29:47,648.648 INFO    ] Waiting 2.69 seconds before fallback handling...
[2026-06-12 11:29:50,708.708 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 11:29:50,710.710 INFO    ] Checking for system updates...
[2026-06-12 11:29:50,731.731 INFO    ] 200
[2026-06-12 11:29:50,732.732 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:29:50,765.765 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 11:29:50,766.766 INFO    ] No update needed
[2026-06-12 11:29:50,767.767 INFO    ] Checking for camera pi updates...
[2026-06-12 11:29:50,788.788 INFO    ] 200
[2026-06-12 11:29:50,789.789 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:29:50,815.815 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 11:29:50,852.852 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 11:29:50,853.853 INFO    ] No camera update needed
[2026-06-12 11:29:50,854.854 INFO    ] Script finished. Safe exiting...
[2026-06-12 11:29:50,855.855 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 11:29:50,858.858 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 11:29:50,861.861 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 11:29:52,899.899 INFO    ] ================================================
[2026-06-12 11:29:52,914.914 INFO    ] Launching Daemon at Fri Jun 12 11:29:52 IST 2026
[2026-06-12 11:29:52,925.925 INFO    ] ================================================
[2026-06-12 11:29:53,285.285 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 11:29:53
[2026-06-12 11:29:53,597.597 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 11:29:53,738.738 INFO    ] Initializing speech engine...
[2026-06-12 11:29:53,744.744 INFO    ] 2026-06-12 11:29:53
[2026-06-12 11:29:53,946.946 INFO    ] 2026-06-12 11:29:53
[2026-06-12 11:29:53,975.975 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 11:29:54,157.157 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 11:29:54,160.160 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 11:29:54,293.293 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 11:29:54,350.350 INFO    ] time= 12/06/2026 11:29:54
[2026-06-12 11:29:54,379.379 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 11:29:54,389.389 INFO    ] Checking for existing commands in stream...
[2026-06-12 11:29:54,460.460 INFO    ] No existing commands found in stream
[2026-06-12 11:29:59,469.469 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 11:29:59,472.472 INFO    ] Waiting 0.70 seconds before fallback handling...
[2026-06-12 11:30:00,534.534 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 11:30:00,535.535 INFO    ] Checking for system updates...
[2026-06-12 11:30:00,557.557 INFO    ] 200
[2026-06-12 11:30:00,559.559 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:30:00,591.591 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 11:30:00,592.592 INFO    ] No update needed
[2026-06-12 11:30:00,594.594 INFO    ] Checking for camera pi updates...
[2026-06-12 11:30:00,614.614 INFO    ] 200
[2026-06-12 11:30:00,615.615 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:30:00,638.638 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 11:30:00,675.675 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 11:30:00,677.677 INFO    ] No camera update needed
[2026-06-12 11:30:00,678.678 INFO    ] Script finished. Safe exiting...
[2026-06-12 11:30:00,679.679 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 11:30:00,682.682 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 11:30:00,685.685 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 11:30:02,716.716 INFO    ] ================================================
[2026-06-12 11:30:02,725.725 INFO    ] Launching Daemon at Fri Jun 12 11:30:02 IST 2026
[2026-06-12 11:30:02,731.731 INFO    ] ================================================
[2026-06-12 11:30:03,032.032 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 11:30:03
[2026-06-12 11:30:03,345.345 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 11:30:03,483.483 INFO    ] Initializing speech engine...
[2026-06-12 11:30:03,494.494 INFO    ] 2026-06-12 11:30:03
[2026-06-12 11:30:03,697.697 INFO    ] 2026-06-12 11:30:03
[2026-06-12 11:30:03,725.725 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 11:30:03,910.910 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 11:30:03,914.914 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 11:30:04,048.048 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 11:30:04,104.104 INFO    ] time= 12/06/2026 11:30:04
[2026-06-12 11:30:04,134.134 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 11:30:04,144.144 INFO    ] Checking for existing commands in stream...
[2026-06-12 11:30:04,216.216 INFO    ] No existing commands found in stream
[2026-06-12 11:30:09,231.231 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 11:30:09,233.233 INFO    ] Waiting 0.78 seconds before fallback handling...
[2026-06-12 11:30:10,370.370 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 11:30:10,371.371 INFO    ] Checking for system updates...
[2026-06-12 11:30:10,392.392 INFO    ] 200
[2026-06-12 11:30:10,393.393 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:30:10,426.426 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 11:30:10,427.427 INFO    ] No update needed
[2026-06-12 11:30:10,428.428 INFO    ] Checking for camera pi updates...
[2026-06-12 11:30:10,448.448 INFO    ] 200
[2026-06-12 11:30:10,449.449 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:30:10,472.472 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 11:30:10,506.506 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 11:30:10,507.507 INFO    ] No camera update needed
[2026-06-12 11:30:10,508.508 INFO    ] Script finished. Safe exiting...
[2026-06-12 11:30:10,510.510 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 11:30:10,513.513 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 11:30:10,515.515 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 11:30:12,553.553 INFO    ] ================================================
[2026-06-12 11:30:12,568.568 INFO    ] Launching Daemon at Fri Jun 12 11:30:12 IST 2026
[2026-06-12 11:30:12,579.579 INFO    ] ================================================
[2026-06-12 11:30:12,952.952 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 11:30:12
[2026-06-12 11:30:13,290.290 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 11:30:13,441.441 INFO    ] Initializing speech engine...
[2026-06-12 11:30:13,446.446 INFO    ] 2026-06-12 11:30:13
[2026-06-12 11:30:13,653.653 INFO    ] 2026-06-12 11:30:13
[2026-06-12 11:30:13,682.682 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 11:30:13,866.866 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 11:30:13,875.875 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 11:30:14,025.025 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 11:30:14,072.072 INFO    ] time= 12/06/2026 11:30:14
[2026-06-12 11:30:14,095.095 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 11:30:14,101.101 INFO    ] Checking for existing commands in stream...
[2026-06-12 11:30:14,168.168 INFO    ] No existing commands found in stream
[2026-06-12 11:30:19,193.193 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 11:30:19,196.196 INFO    ] Waiting 2.22 seconds before fallback handling...
[2026-06-12 11:30:21,822.822 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 11:30:21,823.823 INFO    ] Checking for system updates...
[2026-06-12 11:30:21,846.846 INFO    ] 200
[2026-06-12 11:30:21,847.847 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:30:21,878.878 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 11:30:21,880.880 INFO    ] No update needed
[2026-06-12 11:30:21,881.881 INFO    ] Checking for camera pi updates...
[2026-06-12 11:30:21,902.902 INFO    ] 200
[2026-06-12 11:30:21,903.903 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:30:21,927.927 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 11:30:22,053.053 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 11:30:22,055.055 INFO    ] No camera update needed
[2026-06-12 11:30:22,056.056 INFO    ] Script finished. Safe exiting...
[2026-06-12 11:30:22,057.057 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 11:30:22,060.060 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 11:30:22,063.063 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 11:30:24,101.101 INFO    ] ================================================
[2026-06-12 11:30:24,116.116 INFO    ] Launching Daemon at Fri Jun 12 11:30:24 IST 2026
[2026-06-12 11:30:24,127.127 INFO    ] ================================================
[2026-06-12 11:30:24,494.494 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 11:30:24
[2026-06-12 11:30:24,810.810 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 11:30:24,940.940 INFO    ] Initializing speech engine...
[2026-06-12 11:30:24,944.944 INFO    ] 2026-06-12 11:30:24
[2026-06-12 11:30:25,162.162 INFO    ] 2026-06-12 11:30:25
[2026-06-12 11:30:25,190.190 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 11:30:25,374.374 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 11:30:25,382.382 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 11:30:25,504.504 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 11:30:25,560.560 INFO    ] time= 12/06/2026 11:30:25
[2026-06-12 11:30:25,588.588 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 11:30:25,604.604 INFO    ] Checking for existing commands in stream...
[2026-06-12 11:30:25,698.698 INFO    ] No existing commands found in stream
[2026-06-12 11:30:30,707.707 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 11:30:30,710.710 INFO    ] Waiting 0.13 seconds before fallback handling...
[2026-06-12 11:30:31,232.232 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 11:30:31,234.234 INFO    ] Checking for system updates...
[2026-06-12 11:30:31,255.255 INFO    ] 200
[2026-06-12 11:30:31,256.256 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:30:31,290.290 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 11:30:31,292.292 INFO    ] No update needed
[2026-06-12 11:30:31,293.293 INFO    ] Checking for camera pi updates...
[2026-06-12 11:30:31,313.313 INFO    ] 200
[2026-06-12 11:30:31,315.315 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:30:31,339.339 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 11:30:31,376.376 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 11:30:31,378.378 INFO    ] No camera update needed
[2026-06-12 11:30:31,379.379 INFO    ] Script finished. Safe exiting...
[2026-06-12 11:30:31,380.380 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 11:30:31,383.383 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 11:30:31,386.386 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 11:30:33,417.417 INFO    ] ================================================
[2026-06-12 11:30:33,432.432 INFO    ] Launching Daemon at Fri Jun 12 11:30:33 IST 2026
[2026-06-12 11:30:33,443.443 INFO    ] ================================================
[2026-06-12 11:30:33,804.804 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 11:30:33
[2026-06-12 11:30:34,114.114 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 11:30:34,245.245 INFO    ] Initializing speech engine...
[2026-06-12 11:30:34,249.249 INFO    ] 2026-06-12 11:30:34
[2026-06-12 11:30:34,469.469 INFO    ] 2026-06-12 11:30:34
[2026-06-12 11:30:34,509.509 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 11:30:34,706.706 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 11:30:34,710.710 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 11:30:34,855.855 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 11:30:34,909.909 INFO    ] time= 12/06/2026 11:30:34
[2026-06-12 11:30:34,943.943 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 11:30:34,955.955 INFO    ] Checking for existing commands in stream...
[2026-06-12 11:30:35,029.029 INFO    ] No existing commands found in stream
[2026-06-12 11:30:40,039.039 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 11:30:40,042.042 INFO    ] Waiting 0.94 seconds before fallback handling...
[2026-06-12 11:30:41,403.403 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 11:30:41,404.404 INFO    ] Checking for system updates...
[2026-06-12 11:30:41,426.426 INFO    ] 200
[2026-06-12 11:30:41,427.427 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:30:41,459.459 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 11:30:41,461.461 INFO    ] No update needed
[2026-06-12 11:30:41,462.462 INFO    ] Checking for camera pi updates...
[2026-06-12 11:30:41,483.483 INFO    ] 200
[2026-06-12 11:30:41,484.484 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:30:41,508.508 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 11:30:41,546.546 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 11:30:41,547.547 INFO    ] No camera update needed
[2026-06-12 11:30:41,548.548 INFO    ] Script finished. Safe exiting...
[2026-06-12 11:30:41,550.550 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 11:30:41,553.553 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 11:30:41,556.556 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 11:30:43,594.594 INFO    ] ================================================
[2026-06-12 11:30:43,609.609 INFO    ] Launching Daemon at Fri Jun 12 11:30:43 IST 2026
[2026-06-12 11:30:43,620.620 INFO    ] ================================================
[2026-06-12 11:30:43,969.969 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 11:30:43
[2026-06-12 11:30:44,280.280 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 11:30:44,411.411 INFO    ] Initializing speech engine...
[2026-06-12 11:30:44,414.414 INFO    ] 2026-06-12 11:30:44
[2026-06-12 11:30:44,629.629 INFO    ] 2026-06-12 11:30:44
[2026-06-12 11:30:44,658.658 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 11:30:44,842.842 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 11:30:44,852.852 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 11:30:44,980.980 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 11:30:45,044.044 INFO    ] time= 12/06/2026 11:30:44
[2026-06-12 11:30:45,071.071 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 11:30:45,077.077 INFO    ] Checking for existing commands in stream...
[2026-06-12 11:30:45,167.167 INFO    ] No existing commands found in stream
[2026-06-12 11:30:50,176.176 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 11:30:50,178.178 INFO    ] Waiting 3.10 seconds before fallback handling...
[2026-06-12 11:30:53,657.657 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 11:30:53,658.658 INFO    ] Checking for system updates...
[2026-06-12 11:30:53,679.679 INFO    ] 200
[2026-06-12 11:30:53,680.680 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:30:53,713.713 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 11:30:53,714.714 INFO    ] No update needed
[2026-06-12 11:30:53,715.715 INFO    ] Checking for camera pi updates...
[2026-06-12 11:30:53,736.736 INFO    ] 200
[2026-06-12 11:30:53,738.738 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:30:53,762.762 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 11:30:53,798.798 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 11:30:53,800.800 INFO    ] No camera update needed
[2026-06-12 11:30:53,801.801 INFO    ] Script finished. Safe exiting...
[2026-06-12 11:30:53,802.802 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 11:30:53,805.805 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 11:30:53,808.808 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 11:30:55,846.846 INFO    ] ================================================
[2026-06-12 11:30:55,861.861 INFO    ] Launching Daemon at Fri Jun 12 11:30:55 IST 2026
[2026-06-12 11:30:55,872.872 INFO    ] ================================================
[2026-06-12 11:30:56,201.201 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 11:30:56
[2026-06-12 11:30:56,514.514 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 11:30:56,646.646 INFO    ] Initializing speech engine...
[2026-06-12 11:30:56,649.649 INFO    ] 2026-06-12 11:30:56
[2026-06-12 11:30:56,868.868 INFO    ] 2026-06-12 11:30:56
[2026-06-12 11:30:56,897.897 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 11:30:57,082.082 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 11:30:57,086.086 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 11:30:57,239.239 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 11:30:57,293.293 INFO    ] time= 12/06/2026 11:30:57
[2026-06-12 11:30:57,316.316 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 11:30:57,322.322 INFO    ] Checking for existing commands in stream...
[2026-06-12 11:30:57,414.414 INFO    ] No existing commands found in stream
[2026-06-12 11:31:02,428.428 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 11:31:02,430.430 INFO    ] Waiting 3.28 seconds before fallback handling...
[2026-06-12 11:31:06,105.105 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 11:31:06,107.107 INFO    ] Checking for system updates...
[2026-06-12 11:31:06,128.128 INFO    ] 200
[2026-06-12 11:31:06,130.130 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:31:06,163.163 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 11:31:06,164.164 INFO    ] No update needed
[2026-06-12 11:31:06,165.165 INFO    ] Checking for camera pi updates...
[2026-06-12 11:31:06,185.185 INFO    ] 200
[2026-06-12 11:31:06,186.186 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:31:06,209.209 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 11:31:06,244.244 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 11:31:06,245.245 INFO    ] No camera update needed
[2026-06-12 11:31:06,247.247 INFO    ] Script finished. Safe exiting...
[2026-06-12 11:31:06,248.248 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 11:31:06,251.251 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 11:31:06,254.254 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 11:31:08,292.292 INFO    ] ================================================
[2026-06-12 11:31:08,307.307 INFO    ] Launching Daemon at Fri Jun 12 11:31:08 IST 2026
[2026-06-12 11:31:08,318.318 INFO    ] ================================================
[2026-06-12 11:31:08,645.645 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 11:31:08
[2026-06-12 11:31:08,961.961 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 11:31:09,094.094 INFO    ] Initializing speech engine...
[2026-06-12 11:31:09,101.101 INFO    ] 2026-06-12 11:31:09
[2026-06-12 11:31:09,305.305 INFO    ] 2026-06-12 11:31:09
[2026-06-12 11:31:09,334.334 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 11:31:09,492.492 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 11:31:09,506.506 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 11:31:09,668.668 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 11:31:09,708.708 INFO    ] time= 12/06/2026 11:31:09
[2026-06-12 11:31:09,754.754 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 11:31:09,794.794 INFO    ] Checking for existing commands in stream...
[2026-06-12 11:31:09,892.892 INFO    ] No existing commands found in stream
[2026-06-12 11:31:14,903.903 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 11:31:14,905.905 INFO    ] Waiting 2.34 seconds before fallback handling...
[2026-06-12 11:31:17,652.652 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 11:31:17,654.654 INFO    ] Checking for system updates...
[2026-06-12 11:31:17,676.676 INFO    ] 200
[2026-06-12 11:31:17,677.677 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:31:17,710.710 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 11:31:17,711.711 INFO    ] No update needed
[2026-06-12 11:31:17,713.713 INFO    ] Checking for camera pi updates...
[2026-06-12 11:31:17,733.733 INFO    ] 200
[2026-06-12 11:31:17,735.735 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:31:17,760.760 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 11:31:17,800.800 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 11:31:17,801.801 INFO    ] No camera update needed
[2026-06-12 11:31:17,802.802 INFO    ] Script finished. Safe exiting...
[2026-06-12 11:31:17,804.804 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 11:31:17,807.807 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 11:31:17,809.809 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 11:31:19,849.849 INFO    ] ================================================
[2026-06-12 11:31:19,864.864 INFO    ] Launching Daemon at Fri Jun 12 11:31:19 IST 2026
[2026-06-12 11:31:19,875.875 INFO    ] ================================================
[2026-06-12 11:31:20,216.216 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 11:31:20
[2026-06-12 11:31:20,532.532 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 11:31:20,671.671 INFO    ] Initializing speech engine...
[2026-06-12 11:31:20,680.680 INFO    ] 2026-06-12 11:31:20
[2026-06-12 11:31:20,885.885 INFO    ] 2026-06-12 11:31:20
[2026-06-12 11:31:20,914.914 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 11:31:21,096.096 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 11:31:21,106.106 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 11:31:21,236.236 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 11:31:21,303.303 INFO    ] time= 12/06/2026 11:31:21
[2026-06-12 11:31:21,326.326 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 11:31:21,333.333 INFO    ] Checking for existing commands in stream...
[2026-06-12 11:31:21,399.399 INFO    ] No existing commands found in stream
[2026-06-12 11:31:26,408.408 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 11:31:26,411.411 INFO    ] Waiting 1.27 seconds before fallback handling...
[2026-06-12 11:31:28,047.047 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 11:31:28,048.048 INFO    ] Checking for system updates...
[2026-06-12 11:31:28,071.071 INFO    ] 200
[2026-06-12 11:31:28,073.073 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:31:28,106.106 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 11:31:28,108.108 INFO    ] No update needed
[2026-06-12 11:31:28,109.109 INFO    ] Checking for camera pi updates...
[2026-06-12 11:31:28,131.131 INFO    ] 200
[2026-06-12 11:31:28,133.133 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:31:28,157.157 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 11:31:28,194.194 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 11:31:28,196.196 INFO    ] No camera update needed
[2026-06-12 11:31:28,197.197 INFO    ] Script finished. Safe exiting...
[2026-06-12 11:31:28,198.198 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 11:31:28,202.202 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 11:31:28,205.205 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 11:31:30,248.248 INFO    ] ================================================
[2026-06-12 11:31:30,263.263 INFO    ] Launching Daemon at Fri Jun 12 11:31:30 IST 2026
[2026-06-12 11:31:30,274.274 INFO    ] ================================================
[2026-06-12 11:31:30,638.638 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 11:31:30
[2026-06-12 11:31:30,955.955 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 11:31:31,093.093 INFO    ] Initializing speech engine...
[2026-06-12 11:31:31,103.103 INFO    ] 2026-06-12 11:31:31
[2026-06-12 11:31:31,307.307 INFO    ] 2026-06-12 11:31:31
[2026-06-12 11:31:31,335.335 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 11:31:31,518.518 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 11:31:31,522.522 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 11:31:31,657.657 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 11:31:31,724.724 INFO    ] time= 12/06/2026 11:31:31
[2026-06-12 11:31:31,748.748 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 11:31:31,754.754 INFO    ] Checking for existing commands in stream...
[2026-06-12 11:31:31,850.850 INFO    ] No existing commands found in stream
[2026-06-12 11:31:36,859.859 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 11:31:36,862.862 INFO    ] Waiting 2.39 seconds before fallback handling...
[2026-06-12 11:31:42,117.117 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 11:31:42,120.120 INFO    ] Checking for system updates...
[2026-06-12 11:31:42,161.161 INFO    ] 200
[2026-06-12 11:31:42,164.164 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:31:42,225.225 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 11:31:42,227.227 INFO    ] No update needed
[2026-06-12 11:31:42,229.229 INFO    ] Checking for camera pi updates...
[2026-06-12 11:31:42,268.268 INFO    ] 200
[2026-06-12 11:31:42,269.269 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:31:42,293.293 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 11:31:42,329.329 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 11:31:42,330.330 INFO    ] No camera update needed
[2026-06-12 11:31:42,332.332 INFO    ] Script finished. Safe exiting...
[2026-06-12 11:31:42,333.333 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 11:31:42,336.336 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 11:31:42,339.339 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 11:31:44,377.377 INFO    ] ================================================
[2026-06-12 11:31:44,392.392 INFO    ] Launching Daemon at Fri Jun 12 11:31:44 IST 2026
[2026-06-12 11:31:44,403.403 INFO    ] ================================================
[2026-06-12 11:31:44,805.805 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 11:31:44
[2026-06-12 11:31:45,146.146 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 11:31:45,302.302 INFO    ] Initializing speech engine...
[2026-06-12 11:31:45,307.307 INFO    ] 2026-06-12 11:31:45
[2026-06-12 11:31:45,517.517 INFO    ] 2026-06-12 11:31:45
[2026-06-12 11:31:45,546.546 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 11:31:45,732.732 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 11:31:45,742.742 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 11:31:45,882.882 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 11:31:45,938.938 INFO    ] time= 12/06/2026 11:31:45
[2026-06-12 11:31:45,962.962 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 11:31:45,969.969 INFO    ] Checking for existing commands in stream...
[2026-06-12 11:31:46,036.036 INFO    ] No existing commands found in stream
[2026-06-12 11:31:51,060.060 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 11:31:51,064.064 INFO    ] Waiting 2.02 seconds before fallback handling...
[2026-06-12 11:31:53,517.517 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 11:31:53,519.519 INFO    ] Checking for system updates...
[2026-06-12 11:31:53,543.543 INFO    ] 200
[2026-06-12 11:31:53,545.545 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:31:53,579.579 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 11:31:53,581.581 INFO    ] No update needed
[2026-06-12 11:31:53,582.582 INFO    ] Checking for camera pi updates...
[2026-06-12 11:31:53,606.606 INFO    ] 200
[2026-06-12 11:31:53,607.607 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:31:53,635.635 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 11:31:53,671.671 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 11:31:53,672.672 INFO    ] No camera update needed
[2026-06-12 11:31:53,674.674 INFO    ] Script finished. Safe exiting...
[2026-06-12 11:31:53,675.675 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 11:31:53,678.678 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 11:31:53,681.681 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 11:31:55,724.724 INFO    ] ================================================
[2026-06-12 11:31:55,741.741 INFO    ] Launching Daemon at Fri Jun 12 11:31:55 IST 2026
[2026-06-12 11:31:55,753.753 INFO    ] ================================================
[2026-06-12 11:31:56,094.094 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 11:31:56
[2026-06-12 11:31:56,411.411 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 11:31:56,545.545 INFO    ] Initializing speech engine...
[2026-06-12 11:31:56,553.553 INFO    ] 2026-06-12 11:31:56
[2026-06-12 11:31:56,764.764 INFO    ] 2026-06-12 11:31:56
[2026-06-12 11:31:56,794.794 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 11:31:56,976.976 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 11:31:56,986.986 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 11:31:57,116.116 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 11:31:57,180.180 INFO    ] time= 12/06/2026 11:31:57
[2026-06-12 11:31:57,207.207 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 11:31:57,213.213 INFO    ] Checking for existing commands in stream...
[2026-06-12 11:31:57,279.279 INFO    ] No existing commands found in stream
[2026-06-12 11:32:02,288.288 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 11:32:02,290.290 INFO    ] Waiting 2.73 seconds before fallback handling...
[2026-06-12 11:32:05,394.394 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 11:32:05,396.396 INFO    ] Checking for system updates...
[2026-06-12 11:32:05,417.417 INFO    ] 200
[2026-06-12 11:32:05,418.418 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:32:05,451.451 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 11:32:05,453.453 INFO    ] No update needed
[2026-06-12 11:32:05,454.454 INFO    ] Checking for camera pi updates...
[2026-06-12 11:32:05,474.474 INFO    ] 200
[2026-06-12 11:32:05,475.475 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:32:05,502.502 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 11:32:05,541.541 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 11:32:05,543.543 INFO    ] No camera update needed
[2026-06-12 11:32:05,544.544 INFO    ] Script finished. Safe exiting...
[2026-06-12 11:32:05,545.545 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 11:32:05,548.548 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 11:32:05,551.551 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 11:32:07,589.589 INFO    ] ================================================
[2026-06-12 11:32:07,606.606 INFO    ] Launching Daemon at Fri Jun 12 11:32:07 IST 2026
[2026-06-12 11:32:07,617.617 INFO    ] ================================================
[2026-06-12 11:32:07,970.970 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 11:32:07
[2026-06-12 11:32:08,308.308 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 11:32:08,445.445 INFO    ] Initializing speech engine...
[2026-06-12 11:32:08,459.459 INFO    ] 2026-06-12 11:32:08
[2026-06-12 11:32:08,669.669 INFO    ] 2026-06-12 11:32:08
[2026-06-12 11:32:08,698.698 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 11:32:08,882.882 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 11:32:08,892.892 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 11:32:09,036.036 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 11:32:09,089.089 INFO    ] time= 12/06/2026 11:32:09
[2026-06-12 11:32:09,112.112 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 11:32:09,117.117 INFO    ] Checking for existing commands in stream...
[2026-06-12 11:32:09,184.184 INFO    ] No existing commands found in stream
[2026-06-12 11:32:14,198.198 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 11:32:14,202.202 INFO    ] Waiting 2.94 seconds before fallback handling...
[2026-06-12 11:32:17,507.507 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 11:32:17,508.508 INFO    ] Checking for system updates...
[2026-06-12 11:32:17,531.531 INFO    ] 200
[2026-06-12 11:32:17,532.532 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:32:17,567.567 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 11:32:17,569.569 INFO    ] No update needed
[2026-06-12 11:32:17,570.570 INFO    ] Checking for camera pi updates...
[2026-06-12 11:32:17,594.594 INFO    ] 200
[2026-06-12 11:32:17,595.595 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:32:17,623.623 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 11:32:17,663.663 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 11:32:17,665.665 INFO    ] No camera update needed
[2026-06-12 11:32:17,666.666 INFO    ] Script finished. Safe exiting...
[2026-06-12 11:32:17,668.668 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 11:32:17,671.671 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 11:32:17,674.674 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 11:32:19,707.707 INFO    ] ================================================
[2026-06-12 11:32:19,724.724 INFO    ] Launching Daemon at Fri Jun 12 11:32:19 IST 2026
[2026-06-12 11:32:19,735.735 INFO    ] ================================================
[2026-06-12 11:32:20,105.105 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 11:32:20
[2026-06-12 11:32:20,420.420 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 11:32:20,561.561 INFO    ] Initializing speech engine...
[2026-06-12 11:32:20,565.565 INFO    ] 2026-06-12 11:32:20
[2026-06-12 11:32:20,799.799 INFO    ] 2026-06-12 11:32:20
[2026-06-12 11:32:20,831.831 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 11:32:21,013.013 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 11:32:21,016.016 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 11:32:21,150.150 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 11:32:21,206.206 INFO    ] time= 12/06/2026 11:32:21
[2026-06-12 11:32:21,235.235 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 11:32:21,245.245 INFO    ] Checking for existing commands in stream...
[2026-06-12 11:32:21,316.316 INFO    ] No existing commands found in stream
[2026-06-12 11:32:26,325.325 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 11:32:26,328.328 INFO    ] Waiting 1.10 seconds before fallback handling...
[2026-06-12 11:32:27,842.842 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 11:32:27,844.844 INFO    ] Checking for system updates...
[2026-06-12 11:32:27,881.881 INFO    ] 200
[2026-06-12 11:32:27,884.884 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:32:27,943.943 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 11:32:27,946.946 INFO    ] No update needed
[2026-06-12 11:32:27,948.948 INFO    ] Checking for camera pi updates...
[2026-06-12 11:32:27,975.975 INFO    ] 200
[2026-06-12 11:32:27,976.976 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:32:28,004.004 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 11:32:28,145.145 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 11:32:28,146.146 INFO    ] No camera update needed
[2026-06-12 11:32:28,147.147 INFO    ] Script finished. Safe exiting...
[2026-06-12 11:32:28,149.149 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 11:32:28,152.152 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 11:32:28,155.155 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 11:32:30,201.201 INFO    ] ================================================
[2026-06-12 11:32:30,217.217 INFO    ] Launching Daemon at Fri Jun 12 11:32:30 IST 2026
[2026-06-12 11:32:30,228.228 INFO    ] ================================================
[2026-06-12 11:32:30,600.600 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 11:32:30
[2026-06-12 11:32:30,945.945 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 11:32:31,088.088 INFO    ] Initializing speech engine...
[2026-06-12 11:32:31,093.093 INFO    ] 2026-06-12 11:32:31
[2026-06-12 11:32:31,296.296 INFO    ] 2026-06-12 11:32:31
[2026-06-12 11:32:31,324.324 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 11:32:31,457.457 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 11:32:31,510.510 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 11:32:31,647.647 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 11:32:31,705.705 INFO    ] time= 12/06/2026 11:32:31
[2026-06-12 11:32:31,737.737 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 11:32:31,743.743 INFO    ] Checking for existing commands in stream...
[2026-06-12 11:32:31,808.808 INFO    ] No existing commands found in stream
[2026-06-12 11:32:33,704.704 INFO    ] Received new command: ID=1781244153541-0
[2026-06-12 11:32:33,707.707 INFO    ] process_and_cleanup_command: msg_id=1781244153541-0
[2026-06-12 11:32:33,709.709 INFO    ] is_command_expired: timestamp=2026-06-12T06:02:33.202Z, expiry=30s
[2026-06-12 11:32:33,790.790 INFO    ] Command removed from stream: 1781244153541-0. returning for processing...
[2026-06-12 11:32:33,792.792 INFO    ] ***** get_valid_command
[2026-06-12 11:32:33,794.794 INFO    ] {'data': '{"request_id":"start-order-1781244153202-juq6bbd1e","orderId":"TM09202301260612113154250","is_vending":false}', 'timeout': '10', 'source': 'webapp', 'timestamp': '2026-06-12T06:02:33.202Z', 'command': 'start-order'}
[2026-06-12 11:32:33,797.797 INFO    ] ***** Parsed command data: {'is_vending': False, 'request_id': 'start-order-1781244153202-juq6bbd1e', 'orderId': 'TM09202301260612113154250'}
[2026-06-12 11:32:33,800.800 INFO    ] Handling start order...
[2026-06-12 11:32:33,803.803 INFO    ] handle_start_order_command
[2026-06-12 11:32:33,809.809 INFO    ] _send_start_order_success: request_id=start-order-1781244153202-juq6bbd1e, order_id=TM09202301260612113154250
[2026-06-12 11:32:33,811.811 INFO    ] [_send_start_order_success] Adding message to stream: machine:TM09202301
[2026-06-12 11:32:33,872.872 INFO    ] [_send_start_order_success] Message added to stream with ID: 1781244153991-0
[2026-06-12 11:32:33,874.874 INFO    ] ✅ Start-order command succeeded - order locked, waiting for process-order command
[2026-06-12 11:32:33,876.876 INFO    ] Checking for system updates...
[2026-06-12 11:32:33,919.919 INFO    ] 200
[2026-06-12 11:32:33,921.921 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:32:33,980.980 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 11:32:33,983.983 INFO    ] No update needed
[2026-06-12 11:32:33,985.985 INFO    ] Checking for camera pi updates...
[2026-06-12 11:32:34,019.019 INFO    ] 200
[2026-06-12 11:32:34,022.022 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:32:34,065.065 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 11:32:34,107.107 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 11:32:34,108.108 INFO    ] No camera update needed
[2026-06-12 11:32:34,109.109 INFO    ] Script finished. Safe exiting...
[2026-06-12 11:32:34,111.111 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 11:32:34,114.114 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 11:32:34,117.117 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 11:32:36,157.157 INFO    ] ================================================
[2026-06-12 11:32:36,173.173 INFO    ] Launching Daemon at Fri Jun 12 11:32:36 IST 2026
[2026-06-12 11:32:36,185.185 INFO    ] ================================================
[2026-06-12 11:32:36,549.549 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 11:32:36
[2026-06-12 11:32:36,861.861 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 11:32:36,993.993 INFO    ] Initializing speech engine...
[2026-06-12 11:32:37,000.000 INFO    ] 2026-06-12 11:32:36
[2026-06-12 11:32:37,214.214 INFO    ] 2026-06-12 11:32:37
[2026-06-12 11:32:37,244.244 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 11:32:37,429.429 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 11:32:37,433.433 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 11:32:37,567.567 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 11:32:37,629.629 INFO    ] time= 12/06/2026 11:32:37
[2026-06-12 11:32:37,663.663 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 11:32:37,665.665 INFO    ] Checking for existing commands in stream...
[2026-06-12 11:32:37,737.737 INFO    ] Found 2 existing command(s) in stream
[2026-06-12 11:32:37,739.739 INFO    ] Checking historical command: ID=1781244153991-0
[2026-06-12 11:32:37,765.765 INFO    ] process_and_cleanup_command: msg_id=1781244153991-0
[2026-06-12 11:32:37,766.766 INFO    ] is_command_expired: timestamp=2026-06-12T06:02:33.810059Z, expiry=30s
[2026-06-12 11:32:37,876.876 INFO    ] Command removed from stream: 1781244153991-0. returning for processing...
[2026-06-12 11:32:37,879.879 INFO    ] ***** get_valid_command
[2026-06-12 11:32:37,883.883 INFO    ] {'status': 'success', 'metadata_order_id': 'TM09202301260612113154250', 'imei': 'TM09202301', 'message': 'start-order success', 'message_type': 'command_response', 'timestamp': '2026-06-12T06:02:33.810059Z', 'metadata_request_id': 'start-order-1781244153202-juq6bbd1e'}
[2026-06-12 11:32:37,887.887 INFO    ] Checking historical command: ID=1781244155102-0
[2026-06-12 11:32:37,891.891 INFO    ] process_and_cleanup_command: msg_id=1781244155102-0
[2026-06-12 11:32:37,894.894 INFO    ] is_command_expired: timestamp=2026-06-12T06:02:34.771Z, expiry=30s
[2026-06-12 11:32:37,951.951 INFO    ] Command removed from stream: 1781244155102-0. returning for processing...
[2026-06-12 11:32:37,954.954 INFO    ] ***** get_valid_command
[2026-06-12 11:32:37,957.957 INFO    ] {'data': '{"request_id":"process-order-1781244154770-la7zln03l","orderId":"TM09202301260612113154250","is_vending":false,"accessCode":"11547365"}', 'command': 'process-order', 'source': 'webapp', 'timestamp': '2026-06-12T06:02:34.771Z', 'timeout': '60'}
[2026-06-12 11:32:37,960.960 INFO    ] ***** Parsed command data: {'accessCode': '11547365', 'is_vending': False, 'request_id': 'process-order-1781244154770-la7zln03l', 'orderId': 'TM09202301260612113154250'}
[2026-06-12 11:32:37,962.962 INFO    ] Handling process order...
[2026-06-12 11:32:37,965.965 INFO    ] Processing process-order command...
[2026-06-12 11:32:37,969.969 INFO    ] 🔍 Lock file Order ID: TM09202301260612113154250, TS: 2026-06-12 11:32:33
[2026-06-12 11:32:37,978.978 INFO    ] ✅ Order lock valid for TM09202301260612113154250
[2026-06-12 11:32:37,983.983 INFO    ] Received access code in process-order, skipping PHP API call
[2026-06-12 11:32:37,986.986 INFO    ] processing access code 11547365 for order TM09202301260612113154250
[2026-06-12 11:32:37,991.991 INFO    ] 🔍 Lock file Order ID: TM09202301260612113154250, TS: 2026-06-12 11:32:33
[2026-06-12 11:32:37,995.995 INFO    ] ✅ Order lock valid for TM09202301260612113154250
[2026-06-12 11:32:37,999.999 INFO    ] 2026-06-12 11:32:37
[2026-06-12 11:32:38,028.028 INFO    ] 200
[2026-06-12 11:32:38,032.032 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:32:38,036.036 INFO    ] 11547365
[2026-06-12 11:32:38,040.040 INFO    ] 2026-06-12 11:32:38
[2026-06-12 11:32:38,043.043 INFO    ] session id :487722690
[2026-06-12 11:32:38,048.048 INFO    ] http://localhost:5000/v2/getOrderByAccessCode?access_code=11547365&imei=TM09202301&session_id=487722690
[2026-06-12 11:32:38,776.776 INFO    ] 200
[2026-06-12 11:32:38,777.777 INFO    ] {"rstatus": true, "msg": "Order Data", "status": true, "data": {"mobile": "9464078231", "order_id": "TM09202301260612113154250", "bill_amount": "60", "invoice_bill": "60", "access_code": "11547365", "proposed_sku_json": [{"door_id": "2", "name": "BRU Cold Coffee Classic 200ml", "tray_id": "34", "unit_price": 60, "offer_id": "", "qty": 1, "image_url": "https://images.tinymart.in/product/4500656-2520.webp", "offer_desc": "", "sku_total": 60, "mrp": "60", "skuid": "4500656"}]}}
[2026-06-12 11:32:38,778.778 INFO    ] 60
[2026-06-12 11:32:38,780.780 INFO    ] TM09202301260612113154250
[2026-06-12 11:32:38,781.781 INFO    ] 9464078231
[2026-06-12 11:32:38,782.782 INFO    ] 2026-06-12 11:32:38
[2026-06-12 11:32:38,784.784 INFO    ] Door Opening for user mobile ending with  eight two three one 
[2026-06-12 11:32:38,785.785 INFO    ] Door Opening for user mobile ending with  eight two three one 
[2026-06-12 11:32:38,786.786 INFO    ] 2efd9cb614320c470e52ac3017d08d45
[2026-06-12 11:32:38,787.787 INFO    ] 2026-06-12 11:32:38
[2026-06-12 11:32:38,789.789 INFO    ] playing audio file
[2026-06-12 11:32:38,798.798 INFO    ] 2026-06-12 11:32:38
[2026-06-12 11:32:38,800.800 INFO    ] 2026-06-12 11:32:38
[2026-06-12 11:32:38,802.802 INFO    ] publish_status: order_id=TM09202301260612113154250
[2026-06-12 11:32:38,804.804 INFO    ] [publish_status] Adding message to stream: order:TM09202301260612113154250
[2026-06-12 11:32:38,873.873 INFO    ] [publish_status] Message added to stream with ID: 1781244158993-0
[2026-06-12 11:32:38,874.874 INFO    ] Published to order:TM09202301260612113154250: {'server_response': '{"status": true, "data": {"mobile": "9464078231", "order_id": "TM09202301260612113154250", "proposed_sku_json": [{"sku_total": 60, "qty": 1, "image_url": "https://images.tinymart.in/product/4500656-2520.webp", "name": "BRU Cold Coffee Classic 200ml", "unit_price": 60, "offer_desc": "", "door_id": "2", "tray_id": "34", "skuid": "4500656", "mrp": "60", "offer_id": ""}], "bill_amount": "60", "access_code": "11547365", "invoice_bill": "60"}, "msg": "Order Data", "rstatus": true}', 'order_id': 'TM09202301260612113154250', 'server_status': 'order-started', 'timestamp': '2026-06-12T06:02:38.801284Z'} (ID: 1781244158993-0)
[2026-06-12 11:32:39,266.266 INFO    ] {'server_response': {'status': True, 'data': {'mobile': '9464078231', 'order_id': 'TM09202301260612113154250', 'proposed_sku_json': [{'sku_total': 60, 'qty': 1, 'image_url': 'https://images.tinymart.in/product/4500656-2520.webp', 'name': 'BRU Cold Coffee Classic 200ml', 'unit_price': 60, 'offer_desc': '', 'door_id': '2', 'tray_id': '34', 'skuid': '4500656', 'mrp': '60', 'offer_id': ''}], 'bill_amount': '60', 'access_code': '11547365', 'invoice_bill': '60'}, 'msg': 'Order Data', 'rstatus': True}, 'order_id': 'TM09202301260612113154250', 'server_status': 'order-started'}
[2026-06-12 11:32:39,267.267 INFO    ] 200
[2026-06-12 11:32:39,268.268 INFO    ] {"data":{"server_response":{"status":true,"data":{"mobile":"9464078231","order_id":"TM09202301260612113154250","proposed_sku_json":[{"sku_total":60,"qty":1,"image_url":"https:\/\/images.tinymart.in\/product\/4500656-2520.webp","name":"BRU Cold Coffee Classic 200ml","unit_price":60,"offer_desc":"","door_id":"2","tray_id":"34","skuid":"4500656","mrp":"60","offer_id":""}],"bill_amount":"60","access_code":"11547365","invoice_bill":"60"},"msg":"Order Data","rstatus":true},"order_id":"TM09202301260612113154250","server_status":"order-started"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-12 11:32:39,270.270 INFO    ] {'response': {'status': True, 'code': 'ORDER_EXISTS', 'data': 'order updated successfully', 'msg': 'order updated successfully'}, 'data': {'server_response': {'status': True, 'data': {'mobile': '9464078231', 'access_code': '11547365', 'proposed_sku_json': [{'door_id': '2', 'qty': 1, 'image_url': 'https://images.tinymart.in/product/4500656-2520.webp', 'name': 'BRU Cold Coffee Classic 200ml', 'unit_price': 60, 'offer_desc': '', 'sku_total': 60, 'tray_id': '34', 'skuid': '4500656', 'mrp': '60', 'offer_id': ''}], 'bill_amount': '60', 'order_id': 'TM09202301260612113154250', 'invoice_bill': '60'}, 'msg': 'Order Data', 'rstatus': True}, 'order_id': 'TM09202301260612113154250', 'server_status': 'order-started'}}
[2026-06-12 11:32:39,272.272 INFO    ] 2026-06-12 11:32:39
[2026-06-12 11:32:39,296.296 INFO    ] 200
[2026-06-12 11:32:39,298.298 INFO    ] True
[2026-06-12 11:32:39,397.397 INFO    ] 200
[2026-06-12 11:32:39,399.399 INFO    ] {"rstatus": false, "error": {"umessage": "In Progress", "code": 20001, "tmessage": "In Progress", "data": {}}, "SectionSKU": {"skus": [], "Header": "Thank you for bearing with us :)"}, "SectionMain": {"Header": "Processing Order"}, "SectionStatus": {"UI_Header": "", "Note": "", "Header": " Your order is under process  ", "SubHeader": "Please wait while we process your order"}, "voiceNote": "Please Wait", "status": "False"}
[2026-06-12 11:32:39,401.401 INFO    ] {'SectionMain': {'Header': 'Processing Order'}, 'voiceNote': 'Please Wait', 'error': {'data': {}, 'code': 20001, 'umessage': 'In Progress', 'tmessage': 'In Progress'}, 'rstatus': False, 'status': 'False', 'SectionSKU': {'skus': [], 'Header': 'Thank you for bearing with us :)'}, 'SectionStatus': {'Header': ' Your order is under process  ', 'SubHeader': 'Please wait while we process your order', 'Note': '', 'UI_Header': ''}}
[2026-06-12 11:32:39,402.402 INFO    ] *** process_order ***
[2026-06-12 11:32:40,536.536 INFO    ] 200
[2026-06-12 11:32:40,538.538 INFO    ] {"rstatus": true, "SectionSKU": {"skus": [], "Header": "Thank you for bearing with us :)"}, "SectionMain": {"Header": "Processing Order"}, "SectionStatus": {"UI_Header": "", "Note": "", "Header": " Your order is under process  ", "SubHeader": "Please wait while we process your order"}, "delay": 0, "voiceNote": "Please Wait", "status": "True"}
[2026-06-12 11:32:40,540.540 INFO    ] {'SectionMain': {'Header': 'Processing Order'}, 'voiceNote': 'Please Wait', 'delay': 0, 'rstatus': True, 'status': 'True', 'SectionSKU': {'skus': [], 'Header': 'Thank you for bearing with us :)'}, 'SectionStatus': {'Header': ' Your order is under process  ', 'SubHeader': 'Please wait while we process your order', 'Note': '', 'UI_Header': ''}}
[2026-06-12 11:32:40,541.541 INFO    ] *** process_order ***
[2026-06-12 11:32:40,543.543 INFO    ] publish_status: order_id=TM09202301260612113154250
[2026-06-12 11:32:40,545.545 INFO    ] [publish_status] Adding message to stream: order:TM09202301260612113154250
[2026-06-12 11:32:40,631.631 INFO    ] [publish_status] Message added to stream with ID: 1781244160750-0
[2026-06-12 11:32:40,632.632 INFO    ] Published to order:TM09202301260612113154250: {'server_response': '{"SectionMain": {"Header": "Processing Order"}, "voiceNote": "Door is open...", "delay": 0, "status": "True", "SectionSKU": {"Header": "Thank you for bearing with us :)", "skus": []}, "rstatus": true, "SectionStatus": {"Header": " Your order is under process  ", "UI_Header": "", "Note": "", "SubHeader": "You can pull the door now."}}', 'order_id': 'TM09202301260612113154250', 'server_status': 'doorOpened'} (ID: 1781244160750-0)
[2026-06-12 11:32:41,689.689 INFO    ] 2026-06-12 11:32:41
[2026-06-12 11:32:41,691.691 INFO    ] publish_status: order_id=TM09202301260612113154250
[2026-06-12 11:32:41,692.692 INFO    ] [publish_status] Adding message to stream: order:TM09202301260612113154250
[2026-06-12 11:32:41,751.751 INFO    ] [publish_status] Message added to stream with ID: 1781244161871-0
[2026-06-12 11:32:41,752.752 INFO    ] Published to order:TM09202301260612113154250: {'server_response': '{"SectionMain": {"Header": "Processing Order"}, "voiceNote": "Please Wait", "delay": 0, "rstatus": true, "status": "True", "SectionSKU": {"skus": [], "Header": "Thank you for bearing with us :)"}, "SectionStatus": {"Header": " Your order is under process  ", "SubHeader": "Please wait while we process your order", "Note": "", "UI_Header": ""}}', 'order_id': 'TM09202301260612113154250', 'server_status': 'processOrder', 'timestamp': '2026-06-12T06:02:41.690424Z'} (ID: 1781244161871-0)
[2026-06-12 11:32:41,886.886 INFO    ] {'server_response': {'SectionMain': {'Header': 'Processing Order'}, 'voiceNote': 'Please Wait', 'delay': 0, 'rstatus': True, 'status': 'True', 'SectionSKU': {'skus': [], 'Header': 'Thank you for bearing with us :)'}, 'SectionStatus': {'Header': ' Your order is under process  ', 'SubHeader': 'Please wait while we process your order', 'Note': '', 'UI_Header': ''}}, 'order_id': 'TM09202301260612113154250', 'server_status': 'processOrder'}
[2026-06-12 11:32:41,888.888 INFO    ] 200
[2026-06-12 11:32:41,889.889 INFO    ] {"data":{"server_response":{"SectionMain":{"Header":"Processing Order"},"voiceNote":"Please Wait","delay":0,"rstatus":true,"status":"true","SectionSKU":{"skus":[],"Header":"Thank you for bearing with us :)"},"SectionStatus":{"Header":" Your order is under process  ","SubHeader":"Please wait while we process your order","Note":"","UI_Header":""}},"order_id":"TM09202301260612113154250","server_status":"processOrder"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-12 11:32:41,891.891 INFO    ] {'response': {'status': True, 'code': 'ORDER_EXISTS', 'data': 'order updated successfully', 'msg': 'order updated successfully'}, 'data': {'server_response': {'status': 'true', 'voiceNote': 'Please Wait', 'SectionMain': {'Header': 'Processing Order'}, 'delay': 0, 'rstatus': True, 'SectionSKU': {'skus': [], 'Header': 'Thank you for bearing with us :)'}, 'SectionStatus': {'Header': ' Your order is under process  ', 'UI_Header': '', 'Note': '', 'SubHeader': 'Please wait while we process your order'}}, 'order_id': 'TM09202301260612113154250', 'server_status': 'processOrder'}}
[2026-06-12 11:32:41,892.892 INFO    ] 2026-06-12 11:32:41
[2026-06-12 11:32:41,893.893 INFO    ] None
[2026-06-12 11:32:41,895.895 INFO    ] Opening Door now
[2026-06-12 11:32:41,896.896 INFO    ] Opening Door now
[2026-06-12 11:32:41,897.897 INFO    ] 08e5d1063504bf393c26f0bfa436e9f9
[2026-06-12 11:32:41,899.899 INFO    ] 2026-06-12 11:32:41
[2026-06-12 11:32:41,900.900 INFO    ] playing audio file
[2026-06-12 11:32:41,911.911 INFO    ] 2026-06-12 11:32:41
[2026-06-12 11:32:41,913.913 INFO    ] 2026-06-12 11:32:41
[2026-06-12 11:32:44,948.948 INFO    ] 200
[2026-06-12 11:32:44,950.950 INFO    ] {"rstatus": false, "error": {"umessage": "In Progress", "code": 20001, "tmessage": "In Progress", "data": {}}, "SectionSKU": {"skus": [{"name": "BRU Cold Coffee Classic 200ml", "qty": 1}], "Header": "Pick the below items from the door"}, "SectionMain": {"Header": "Door Open"}, "SectionStatus": {"UI_Header": "DOOR 2\nIS \nOPEN \nNOW", "Note": "Please Close the door after picking up products", "Header": "Please Close Door 2", "SubHeader": "Please Pick the Products and close the door"}, "voiceNote": "Door 2 is open now", "status": "False"}
[2026-06-12 11:32:44,952.952 INFO    ] {'SectionMain': {'Header': 'Door Open'}, 'voiceNote': 'Door 2 is open now', 'error': {'data': {}, 'code': 20001, 'umessage': 'In Progress', 'tmessage': 'In Progress'}, 'rstatus': False, 'status': 'False', 'SectionSKU': {'skus': [{'qty': 1, 'name': 'BRU Cold Coffee Classic 200ml'}], 'Header': 'Pick the below items from the door'}, 'SectionStatus': {'Header': 'Please Close Door 2', 'SubHeader': 'Please Pick the Products and close the door', 'Note': 'Please Close the door after picking up products', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW'}}
[2026-06-12 11:32:48,109.109 INFO    ] 200
[2026-06-12 11:32:48,111.111 INFO    ] {"rstatus": false, "error": {"umessage": "In Progress", "code": 20001, "tmessage": "In Progress", "data": {}}, "SectionSKU": {"skus": [{"name": "BRU Cold Coffee Classic 200ml", "qty": 1}], "Header": "Pick the below items from the door"}, "SectionMain": {"Header": "Door Open"}, "SectionStatus": {"UI_Header": "DOOR 2\nIS \nOPEN \nNOW", "Note": "Please Close the door after picking up products", "Header": "Please Close Door 2", "SubHeader": "Please Pick the Products and close the door"}, "voiceNote": "Please close door 2", "status": "False"}
[2026-06-12 11:32:48,113.113 INFO    ] {'SectionMain': {'Header': 'Door Open'}, 'voiceNote': 'Please close door 2', 'error': {'data': {}, 'code': 20001, 'umessage': 'In Progress', 'tmessage': 'In Progress'}, 'rstatus': False, 'status': 'False', 'SectionSKU': {'skus': [{'qty': 1, 'name': 'BRU Cold Coffee Classic 200ml'}], 'Header': 'Pick the below items from the door'}, 'SectionStatus': {'Header': 'Please Close Door 2', 'SubHeader': 'Please Pick the Products and close the door', 'Note': 'Please Close the door after picking up products', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW'}}
[2026-06-12 11:32:51,201.201 INFO    ] 200
[2026-06-12 11:32:51,203.203 INFO    ] {"rstatus": false, "error": {"umessage": "In Progress", "code": 20001, "tmessage": "In Progress", "data": {}}, "SectionSKU": {"skus": [{"name": "BRU Cold Coffee Classic 200ml", "qty": 1}], "Header": "Pick the below items from the door"}, "SectionMain": {"Header": "Door Open"}, "SectionStatus": {"UI_Header": "DOOR 2\nIS \nOPEN \nNOW", "Note": "Please Close the door after picking up products", "Header": "Please Close Door 2", "SubHeader": "Please Pick the Products and close the door"}, "voiceNote": "Please close door 2", "status": "False"}
[2026-06-12 11:32:51,205.205 INFO    ] Please close door 2
[2026-06-12 11:32:51,207.207 INFO    ] Please close door 2
[2026-06-12 11:32:51,209.209 INFO    ] 758e46684c76e887a5f58d4738034bed
[2026-06-12 11:32:51,214.214 INFO    ] 2026-06-12 11:32:51
[2026-06-12 11:32:51,215.215 INFO    ] playing audio file
[2026-06-12 11:32:51,226.226 INFO    ] 2026-06-12 11:32:51
[2026-06-12 11:32:51,228.228 INFO    ] publish_status: order_id=TM09202301260612113154250
[2026-06-12 11:32:51,231.231 INFO    ] [publish_status] Adding message to stream: order:TM09202301260612113154250
[2026-06-12 11:32:51,339.339 INFO    ] [publish_status] Message added to stream with ID: 1781244171449-0
[2026-06-12 11:32:51,341.341 INFO    ] Published to order:TM09202301260612113154250: {'server_response': '{"SectionMain": {"Header": "Door Open"}, "voiceNote": "Please close door 2", "error": {"data": {}, "code": 20001, "umessage": "In Progress", "tmessage": "In Progress"}, "rstatus": false, "status": "False", "SectionSKU": {"skus": [{"qty": 1, "name": "BRU Cold Coffee Classic 200ml"}], "Header": "Pick the below items from the door"}, "SectionStatus": {"Header": "Please Close Door 2", "SubHeader": "Please Pick the Products and close the door", "Note": "Please Close the door after picking up products", "UI_Header": "DOOR 2\\nIS \\nOPEN \\nNOW"}}', 'order_id': 'TM09202301260612113154250', 'server_status': 'OrderStatus', 'timestamp': '2026-06-12T06:02:51.227759Z'} (ID: 1781244171449-0)
[2026-06-12 11:32:51,744.744 INFO    ] {'server_response': {'SectionMain': {'Header': 'Door Open'}, 'voiceNote': 'Please close door 2', 'error': {'data': {}, 'code': 20001, 'umessage': 'In Progress', 'tmessage': 'In Progress'}, 'rstatus': False, 'status': 'False', 'SectionSKU': {'skus': [{'qty': 1, 'name': 'BRU Cold Coffee Classic 200ml'}], 'Header': 'Pick the below items from the door'}, 'SectionStatus': {'Header': 'Please Close Door 2', 'SubHeader': 'Please Pick the Products and close the door', 'Note': 'Please Close the door after picking up products', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW'}}, 'order_id': 'TM09202301260612113154250', 'server_status': 'OrderStatus'}
[2026-06-12 11:32:51,747.747 INFO    ] 200
[2026-06-12 11:32:51,750.750 INFO    ] {"data":{"server_response":{"SectionMain":{"Header":"Door Open"},"voiceNote":"Please close door 2","error":{"data":[],"code":20001,"umessage":"In Progress","tmessage":"In Progress"},"rstatus":false,"status":"false","SectionSKU":{"skus":[{"qty":1,"name":"BRU Cold Coffee Classic 200ml"}],"Header":"Pick the below items from the door"},"SectionStatus":{"Header":"Please Close Door 2","SubHeader":"Please Pick the Products and close the door","Note":"Please Close the door after picking up products","UI_Header":"DOOR 2\nIS \nOPEN \nNOW"}},"order_id":"TM09202301260612113154250","server_status":"OrderStatus"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-12 11:32:51,754.754 INFO    ] {'response': {'status': True, 'code': 'ORDER_EXISTS', 'data': 'order updated successfully', 'msg': 'order updated successfully'}, 'data': {'server_response': {'status': 'false', 'voiceNote': 'Please close door 2', 'error': {'umessage': 'In Progress', 'code': 20001, 'data': [], 'tmessage': 'In Progress'}, 'SectionMain': {'Header': 'Door Open'}, 'SectionSKU': {'skus': [{'qty': 1, 'name': 'BRU Cold Coffee Classic 200ml'}], 'Header': 'Pick the below items from the door'}, 'rstatus': False, 'SectionStatus': {'Header': 'Please Close Door 2', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'Note': 'Please Close the door after picking up products', 'SubHeader': 'Please Pick the Products and close the door'}}, 'order_id': 'TM09202301260612113154250', 'server_status': 'OrderStatus'}}
[2026-06-12 11:32:51,757.757 INFO    ] {'SectionMain': {'Header': 'Door Open'}, 'voiceNote': 'Please close door 2', 'error': {'data': {}, 'code': 20001, 'umessage': 'In Progress', 'tmessage': 'In Progress'}, 'rstatus': False, 'status': 'False', 'SectionSKU': {'skus': [{'qty': 1, 'name': 'BRU Cold Coffee Classic 200ml'}], 'Header': 'Pick the below items from the door'}, 'SectionStatus': {'Header': 'Please Close Door 2', 'SubHeader': 'Please Pick the Products and close the door', 'Note': 'Please Close the door after picking up products', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW'}}
[2026-06-12 11:32:54,793.793 INFO    ] 200
[2026-06-12 11:32:54,795.795 INFO    ] {"rstatus": true, "SectionSKU": {"skus": [], "Header": "If you like us, tell others... else tell us"}, "SectionMain": {"Header": "Door Closed"}, "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, "voiceNote": "Transaction Completed", "status": "True"}
[2026-06-12 11:32:54,797.797 INFO    ] {'SectionMain': {'Header': 'Door Closed'}, 'voiceNote': 'Transaction Completed', 'delay': 100, 'rstatus': True, 'status': 'True', 'SectionSKU': {'skus': [], 'Header': 'If you like us, tell others... else tell us'}, 'SectionStatus': {'Header': ' Order is complete ', 'SubHeader': 'Please wait for invoice to generate', 'Note': 'If any due amount, clear at https://go.tinymart.in', 'UI_Header': ''}}
[2026-06-12 11:32:54,798.798 INFO    ] 2026-06-12 11:32:54
[2026-06-12 11:32:54,800.800 INFO    ] Order Completed 
[2026-06-12 11:32:54,801.801 INFO    ] Order Completed 
[2026-06-12 11:32:54,803.803 INFO    ] 193c8a8cf3bf490ccfe0b23598544a83
[2026-06-12 11:32:54,805.805 INFO    ] 2026-06-12 11:32:54
[2026-06-12 11:32:54,807.807 INFO    ] playing audio file
[2026-06-12 11:32:54,818.818 INFO    ] 2026-06-12 11:32:54
[2026-06-12 11:32:54,820.820 INFO    ] {'SectionMain': {'Header': 'Door Closed'}, 'voiceNote': 'Transaction Completed', 'delay': 100, 'rstatus': True, 'status': 'True', 'SectionSKU': {'skus': [], 'Header': 'If you like us, tell others... else tell us'}, 'SectionStatus': {'Header': ' Order is complete ', 'SubHeader': 'Please wait for invoice to generate', 'Note': 'If any due amount, clear at https://go.tinymart.in', 'UI_Header': ''}}
[2026-06-12 11:32:54,822.822 INFO    ] 2026-06-12 11:32:54
[2026-06-12 11:32:55,792.792 INFO    ] 200
[2026-06-12 11:32:55,793.793 INFO    ] {"rstatus": true, "orderId": "TM09202301260612113154250", "logic": "WBL", "anomaly": 0, "res": "True", "total_amount": 60.0, "skus": [{"door_id": "", "sku_total": 60.0, "skuid": "4500656", "mrp": "60", "tray_id": "34", "image_url": "https://images.tinymart.in/product/4500656-2520.webp", "name": "BRU Cold Coffee Classic 200ml per peice", "qty": 1, "unit_price": "60"}]}
[2026-06-12 11:32:55,795.795 INFO    ] {'skus': [{'sku_total': 60.0, 'qty': 1, 'image_url': 'https://images.tinymart.in/product/4500656-2520.webp', 'name': 'BRU Cold Coffee Classic 200ml per peice', 'unit_price': '60', 'door_id': '', 'tray_id': '34', 'skuid': '4500656', 'mrp': '60'}], 'total_amount': 60.0, 'res': 'True', 'logic': 'WBL', 'orderId': 'TM09202301260612113154250', 'rstatus': True, 'anomaly': 0}
[2026-06-12 11:32:55,796.796 INFO    ] {'skus': [{'sku_total': 60.0, 'qty': 1, 'image_url': 'https://images.tinymart.in/product/4500656-2520.webp', 'name': 'BRU Cold Coffee Classic 200ml per peice', 'unit_price': '60', 'door_id': '', 'tray_id': '34', 'skuid': '4500656', 'mrp': '60'}], 'total_amount': 60.0, 'res': 'True', 'logic': 'WBL', 'orderId': 'TM09202301260612113154250', 'rstatus': True, 'anomaly': 0}
[2026-06-12 11:32:55,797.797 INFO    ] 2026-06-12 11:32:55
[2026-06-12 11:32:55,799.799 INFO    ] 2026-06-12 11:32:55
[2026-06-12 11:32:55,800.800 INFO    ] 60
[2026-06-12 11:32:55,801.801 INFO    ] 2026-06-12 11:32:55
[2026-06-12 11:32:55,803.803 INFO    ] 2026-06-12 11:32:55
[2026-06-12 11:32:55,804.804 INFO    ]  Your Bill Amount is 60
[2026-06-12 11:32:55,805.805 INFO    ]  Your Bill Amount is 60
[2026-06-12 11:32:55,807.807 INFO    ] fd22fee3bf67fc8133a18db187f67cdf
[2026-06-12 11:32:55,808.808 INFO    ] 2026-06-12 11:32:55
[2026-06-12 11:32:55,809.809 INFO    ] playing audio file
[2026-06-12 11:32:55,820.820 INFO    ] 2026-06-12 11:32:55
[2026-06-12 11:32:55,822.822 INFO    ] 2026-06-12 11:32:55
[2026-06-12 11:32:55,824.824 INFO    ] publish_status: order_id=TM09202301260612113154250
[2026-06-12 11:32:55,825.825 INFO    ] [publish_status] Adding message to stream: order:TM09202301260612113154250
[2026-06-12 11:32:55,883.883 INFO    ] [publish_status] Message added to stream with ID: 1781244176002-0
[2026-06-12 11:32:55,884.884 INFO    ] Published to order:TM09202301260612113154250: {'server_response': '{"skus": [{"sku_total": 60.0, "qty": 1, "image_url": "https://images.tinymart.in/product/4500656-2520.webp", "name": "BRU Cold Coffee Classic 200ml per peice", "unit_price": "60", "door_id": "", "tray_id": "34", "skuid": "4500656", "mrp": "60"}], "total_amount": 60.0, "res": "True", "logic": "WBL", "orderId": "TM09202301260612113154250", "rstatus": true, "anomaly": 0}', 'order_id': 'TM09202301260612113154250', 'server_status': 'invoiceOrder', 'timestamp': '2026-06-12T06:02:55.822885Z'} (ID: 1781244176002-0)
[2026-06-12 11:32:56,242.242 INFO    ] {'server_response': {'skus': [{'sku_total': 60.0, 'qty': 1, 'image_url': 'https://images.tinymart.in/product/4500656-2520.webp', 'name': 'BRU Cold Coffee Classic 200ml per peice', 'unit_price': '60', 'door_id': '', 'tray_id': '34', 'skuid': '4500656', 'mrp': '60'}], 'total_amount': 60.0, 'res': 'True', 'logic': 'WBL', 'orderId': 'TM09202301260612113154250', 'rstatus': True, 'anomaly': 0}, 'order_id': 'TM09202301260612113154250', 'server_status': 'invoiceOrder'}
[2026-06-12 11:32:56,245.245 INFO    ] 200
[2026-06-12 11:32:56,247.247 INFO    ] {"data":{"server_response":{"skus":[{"sku_total":60,"qty":1,"image_url":"https:\/\/images.tinymart.in\/product\/4500656-2520.webp","name":"BRU Cold Coffee Classic 200ml per peice","unit_price":"60","door_id":"","tray_id":"34","skuid":"4500656","mrp":"60"}],"total_amount":60,"res":"true","logic":"WBL","orderId":"TM09202301260612113154250","rstatus":true,"anomaly":0},"order_id":"TM09202301260612113154250","server_status":"invoiceOrder"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-12 11:32:56,251.251 INFO    ] {'response': {'status': True, 'code': 'ORDER_EXISTS', 'data': 'order updated successfully', 'msg': 'order updated successfully'}, 'data': {'server_response': {'skus': [{'door_id': '', 'qty': 1, 'image_url': 'https://images.tinymart.in/product/4500656-2520.webp', 'name': 'BRU Cold Coffee Classic 200ml per peice', 'unit_price': '60', 'sku_total': 60, 'tray_id': '34', 'skuid': '4500656', 'mrp': '60'}], 'total_amount': 60, 'orderId': 'TM09202301260612113154250', 'logic': 'WBL', 'res': 'true', 'rstatus': True, 'anomaly': 0}, 'order_id': 'TM09202301260612113154250', 'server_status': 'invoiceOrder'}}
[2026-06-12 11:32:56,254.254 INFO    ] {'response': {'status': True, 'code': 'ORDER_EXISTS', 'data': 'order updated successfully', 'msg': 'order updated successfully'}, 'data': {'server_response': {'skus': [{'door_id': '', 'qty': 1, 'image_url': 'https://images.tinymart.in/product/4500656-2520.webp', 'name': 'BRU Cold Coffee Classic 200ml per peice', 'unit_price': '60', 'sku_total': 60, 'tray_id': '34', 'skuid': '4500656', 'mrp': '60'}], 'total_amount': 60, 'orderId': 'TM09202301260612113154250', 'logic': 'WBL', 'res': 'true', 'rstatus': True, 'anomaly': 0}, 'order_id': 'TM09202301260612113154250', 'server_status': 'invoiceOrder'}}
[2026-06-12 11:32:56,257.257 INFO    ] 2026-06-12 11:32:56
[2026-06-12 11:32:57,622.622 INFO    ] 200
[2026-06-12 11:32:57,624.624 INFO    ] {"tray_sync": ["TM09202301260612113154250", "TM09202301260612113154250", "TM09202301260612113154250", "TM09202301260612113154250", "TM09202301260612113154250", "TM09202301260612113154250"], "orders_data": [], "orders_synced": [], "status": true, "order_items_synced": ["TM09202301260612113154250_0"], "tray_synced": ["TM09202301260612113154250", "TM09202301260612113154250", "TM09202301260612113154250", "TM09202301260612113154250", "TM09202301260612113154250", "TM09202301260612113154250", "TM09202301260612113154250", "TM09202301260612113154250", "TM09202301260612113154250", "TM09202301260612113154250", "TM09202301260612113154250", "TM09202301260612113154250", "TM09202301260612113154250", "TM09202301260612113154250", "TM09202301260612113154250", "TM09202301260612113154250", "TM09202301260612113154250", "TM09202301260612113154250", "TM09202301260612113154250", "TM09202301260612113154250", "TM09202301260612113154250", "TM09202301260612113154250", "TM09202301260612113154250", "TM09202301260612113154250", "TM09202301260612113154250", "TM09202301260612113154250", "TM09202301260612113154250"], "orders_data_synced": [], "orders": [], "order_items": []}
[2026-06-12 11:32:57,627.627 INFO    ] 2026-06-12 11:32:57
[2026-06-12 11:32:57,744.744 INFO    ] 200
[2026-06-12 11:32:57,746.746 INFO    ] True
[2026-06-12 11:32:57,748.748 INFO    ] cleanup_start_order_file_after_processing: order_id=TM09202301260612113154250
[2026-06-12 11:32:57,750.750 INFO    ] start order file deleted
[2026-06-12 11:32:57,752.752 INFO    ] Checking for system updates...
[2026-06-12 11:32:57,774.774 INFO    ] 200
[2026-06-12 11:32:57,775.775 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:32:57,814.814 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 11:32:57,816.816 INFO    ] No update needed
[2026-06-12 11:32:57,817.817 INFO    ] Checking for camera pi updates...
[2026-06-12 11:32:57,841.841 INFO    ] 200
[2026-06-12 11:32:57,843.843 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:32:57,872.872 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 11:32:57,918.918 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 11:32:57,920.920 INFO    ] No camera update needed
[2026-06-12 11:32:57,921.921 INFO    ] Script finished. Safe exiting...
[2026-06-12 11:32:57,923.923 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 11:32:57,927.927 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 11:32:57,931.931 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 11:32:59,972.972 INFO    ] ================================================
[2026-06-12 11:32:59,987.987 INFO    ] Launching Daemon at Fri Jun 12 11:32:59 IST 2026
[2026-06-12 11:33:00,999.999 INFO    ] ================================================
[2026-06-12 11:33:00,378.378 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 11:33:00
[2026-06-12 11:33:00,690.690 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 11:33:00,820.820 INFO    ] Initializing speech engine...
[2026-06-12 11:33:00,824.824 INFO    ] 2026-06-12 11:33:00
[2026-06-12 11:33:01,041.041 INFO    ] 2026-06-12 11:33:01
[2026-06-12 11:33:01,069.069 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 11:33:01,229.229 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 11:33:01,237.237 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 11:33:01,367.367 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 11:33:01,369.369 INFO    ] time= 12/06/2026 11:33:01
[2026-06-12 11:33:01,371.371 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 11:33:01,373.373 INFO    ] Checking for existing commands in stream...
[2026-06-12 11:33:01,460.460 INFO    ] No existing commands found in stream
[2026-06-12 11:33:06,488.488 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 11:33:06,492.492 INFO    ] Waiting 2.13 seconds before fallback handling...
[2026-06-12 11:33:09,033.033 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 11:33:09,035.035 INFO    ] Checking for system updates...
[2026-06-12 11:33:09,056.056 INFO    ] 200
[2026-06-12 11:33:09,057.057 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:33:09,088.088 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 11:33:09,089.089 INFO    ] No update needed
[2026-06-12 11:33:09,091.091 INFO    ] Checking for camera pi updates...
[2026-06-12 11:33:09,112.112 INFO    ] 200
[2026-06-12 11:33:09,114.114 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:33:09,142.142 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 11:33:09,184.184 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 11:33:09,186.186 INFO    ] No camera update needed
[2026-06-12 11:33:09,187.187 INFO    ] Script finished. Safe exiting...
[2026-06-12 11:33:09,188.188 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 11:33:09,192.192 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 11:33:09,195.195 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 11:33:11,234.234 INFO    ] ================================================
[2026-06-12 11:33:11,251.251 INFO    ] Launching Daemon at Fri Jun 12 11:33:11 IST 2026
[2026-06-12 11:33:11,263.263 INFO    ] ================================================
[2026-06-12 11:33:11,594.594 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 11:33:11
[2026-06-12 11:33:11,907.907 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 11:33:12,038.038 INFO    ] Initializing speech engine...
[2026-06-12 11:33:12,046.046 INFO    ] 2026-06-12 11:33:12
[2026-06-12 11:33:12,260.260 INFO    ] 2026-06-12 11:33:12
[2026-06-12 11:33:12,288.288 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 11:33:12,475.475 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 11:33:12,485.485 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 11:33:12,636.636 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 11:33:12,683.683 INFO    ] time= 12/06/2026 11:33:12
[2026-06-12 11:33:12,707.707 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 11:33:12,713.713 INFO    ] Checking for existing commands in stream...
[2026-06-12 11:33:12,779.779 INFO    ] No existing commands found in stream
[2026-06-12 11:33:17,789.789 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 11:33:17,792.792 INFO    ] Waiting 0.30 seconds before fallback handling...
[2026-06-12 11:33:18,476.476 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 11:33:18,477.477 INFO    ] Checking for system updates...
[2026-06-12 11:33:18,498.498 INFO    ] 200
[2026-06-12 11:33:18,500.500 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:33:18,533.533 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 11:33:18,535.535 INFO    ] No update needed
[2026-06-12 11:33:18,537.537 INFO    ] Checking for camera pi updates...
[2026-06-12 11:33:18,556.556 INFO    ] 200
[2026-06-12 11:33:18,558.558 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:33:18,583.583 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 11:33:18,624.624 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 11:33:18,626.626 INFO    ] No camera update needed
[2026-06-12 11:33:18,627.627 INFO    ] Script finished. Safe exiting...
[2026-06-12 11:33:18,628.628 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 11:33:18,632.632 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 11:33:18,635.635 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 11:33:20,674.674 INFO    ] ================================================
[2026-06-12 11:33:20,690.690 INFO    ] Launching Daemon at Fri Jun 12 11:33:20 IST 2026
[2026-06-12 11:33:20,702.702 INFO    ] ================================================
[2026-06-12 11:33:21,067.067 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 11:33:21
[2026-06-12 11:33:21,381.381 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 11:33:21,509.509 INFO    ] Initializing speech engine...
[2026-06-12 11:33:21,512.512 INFO    ] 2026-06-12 11:33:21
[2026-06-12 11:33:21,732.732 INFO    ] 2026-06-12 11:33:21
[2026-06-12 11:33:21,760.760 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 11:33:21,944.944 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 11:33:21,954.954 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 11:33:22,105.105 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 11:33:22,155.155 INFO    ] time= 12/06/2026 11:33:22
[2026-06-12 11:33:22,176.176 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 11:33:22,182.182 INFO    ] Checking for existing commands in stream...
[2026-06-12 11:33:22,249.249 INFO    ] No existing commands found in stream
[2026-06-12 11:33:27,263.263 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 11:33:27,266.266 INFO    ] Waiting 1.17 seconds before fallback handling...
[2026-06-12 11:33:28,826.826 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 11:33:28,828.828 INFO    ] Checking for system updates...
[2026-06-12 11:33:28,850.850 INFO    ] 200
[2026-06-12 11:33:28,852.852 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:33:28,885.885 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 11:33:28,887.887 INFO    ] No update needed
[2026-06-12 11:33:28,889.889 INFO    ] Checking for camera pi updates...
[2026-06-12 11:33:28,909.909 INFO    ] 200
[2026-06-12 11:33:28,910.910 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:33:28,935.935 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 11:33:28,976.976 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 11:33:28,977.977 INFO    ] No camera update needed
[2026-06-12 11:33:28,979.979 INFO    ] Script finished. Safe exiting...
[2026-06-12 11:33:28,980.980 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 11:33:28,983.983 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 11:33:28,986.986 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 11:33:31,026.026 INFO    ] ================================================
[2026-06-12 11:33:31,043.043 INFO    ] Launching Daemon at Fri Jun 12 11:33:31 IST 2026
[2026-06-12 11:33:31,054.054 INFO    ] ================================================
[2026-06-12 11:33:31,427.427 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 11:33:31
[2026-06-12 11:33:31,767.767 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 11:33:31,920.920 INFO    ] Initializing speech engine...
[2026-06-12 11:33:31,931.931 INFO    ] 2026-06-12 11:33:31
[2026-06-12 11:33:32,144.144 INFO    ] 2026-06-12 11:33:32
[2026-06-12 11:33:32,175.175 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 11:33:32,299.299 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 11:33:32,364.364 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 11:33:32,497.497 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 11:33:32,552.552 INFO    ] time= 12/06/2026 11:33:32
[2026-06-12 11:33:32,593.593 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 11:33:32,598.598 INFO    ] Checking for existing commands in stream...
[2026-06-12 11:33:32,671.671 INFO    ] No existing commands found in stream
[2026-06-12 11:33:37,680.680 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 11:33:37,683.683 INFO    ] Waiting 3.47 seconds before fallback handling...
[2026-06-12 11:33:41,555.555 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 11:33:41,556.556 INFO    ] Checking for system updates...
[2026-06-12 11:33:41,577.577 INFO    ] 200
[2026-06-12 11:33:41,578.578 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:33:41,613.613 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 11:33:41,614.614 INFO    ] No update needed
[2026-06-12 11:33:41,616.616 INFO    ] Checking for camera pi updates...
[2026-06-12 11:33:41,635.635 INFO    ] 200
[2026-06-12 11:33:41,636.636 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:33:41,662.662 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 11:33:41,694.694 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 11:33:41,696.696 INFO    ] No camera update needed
[2026-06-12 11:33:41,697.697 INFO    ] Script finished. Safe exiting...
[2026-06-12 11:33:41,698.698 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 11:33:41,701.701 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 11:33:41,704.704 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 11:33:43,745.745 INFO    ] ================================================
[2026-06-12 11:33:43,762.762 INFO    ] Launching Daemon at Fri Jun 12 11:33:43 IST 2026
[2026-06-12 11:33:43,774.774 INFO    ] ================================================
[2026-06-12 11:33:44,130.130 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 11:33:44
[2026-06-12 11:33:44,447.447 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 11:33:44,591.591 INFO    ] Initializing speech engine...
[2026-06-12 11:33:44,596.596 INFO    ] 2026-06-12 11:33:44
[2026-06-12 11:33:44,801.801 INFO    ] 2026-06-12 11:33:44
[2026-06-12 11:33:44,830.830 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 11:33:45,014.014 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 11:33:45,023.023 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 11:33:45,173.173 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 11:33:45,221.221 INFO    ] time= 12/06/2026 11:33:45
[2026-06-12 11:33:45,243.243 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 11:33:45,250.250 INFO    ] Checking for existing commands in stream...
[2026-06-12 11:33:45,316.316 INFO    ] No existing commands found in stream
[2026-06-12 11:33:50,348.348 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 11:33:50,352.352 INFO    ] Waiting 2.75 seconds before fallback handling...
[2026-06-12 11:33:53,519.519 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 11:33:53,521.521 INFO    ] Checking for system updates...
[2026-06-12 11:33:53,543.543 INFO    ] 200
[2026-06-12 11:33:53,544.544 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:33:53,575.575 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 11:33:53,576.576 INFO    ] No update needed
[2026-06-12 11:33:53,577.577 INFO    ] Checking for camera pi updates...
[2026-06-12 11:33:53,596.596 INFO    ] 200
[2026-06-12 11:33:53,598.598 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:33:53,621.621 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 11:33:53,664.664 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 11:33:53,665.665 INFO    ] No camera update needed
[2026-06-12 11:33:53,667.667 INFO    ] Script finished. Safe exiting...
[2026-06-12 11:33:53,668.668 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 11:33:53,671.671 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 11:33:53,674.674 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 11:33:55,715.715 INFO    ] ================================================
[2026-06-12 11:33:55,738.738 INFO    ] Launching Daemon at Fri Jun 12 11:33:55 IST 2026
[2026-06-12 11:33:55,749.749 INFO    ] ================================================
[2026-06-12 11:33:56,091.091 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 11:33:56
[2026-06-12 11:33:56,411.411 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 11:33:56,544.544 INFO    ] Initializing speech engine...
[2026-06-12 11:33:56,557.557 INFO    ] 2026-06-12 11:33:56
[2026-06-12 11:33:56,764.764 INFO    ] 2026-06-12 11:33:56
[2026-06-12 11:33:56,793.793 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 11:33:56,975.975 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 11:33:56,985.985 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 11:33:57,114.114 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 11:33:57,181.181 INFO    ] time= 12/06/2026 11:33:57
[2026-06-12 11:33:57,205.205 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 11:33:57,212.212 INFO    ] Checking for existing commands in stream...
[2026-06-12 11:33:57,276.276 INFO    ] No existing commands found in stream
[2026-06-12 11:34:02,281.281 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 11:34:02,283.283 INFO    ] Waiting 1.18 seconds before fallback handling...
[2026-06-12 11:34:03,853.853 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 11:34:03,854.854 INFO    ] Checking for system updates...
[2026-06-12 11:34:03,876.876 INFO    ] 200
[2026-06-12 11:34:03,878.878 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:34:03,908.908 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 11:34:03,909.909 INFO    ] No update needed
[2026-06-12 11:34:03,911.911 INFO    ] Checking for camera pi updates...
[2026-06-12 11:34:03,930.930 INFO    ] 200
[2026-06-12 11:34:03,932.932 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:34:03,956.956 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 11:34:03,989.989 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 11:34:03,991.991 INFO    ] No camera update needed
[2026-06-12 11:34:03,992.992 INFO    ] Script finished. Safe exiting...
[2026-06-12 11:34:03,993.993 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 11:34:03,996.996 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 11:34:03,999.999 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 11:34:06,041.041 INFO    ] ================================================
[2026-06-12 11:34:06,056.056 INFO    ] Launching Daemon at Fri Jun 12 11:34:06 IST 2026
[2026-06-12 11:34:06,066.066 INFO    ] ================================================
[2026-06-12 11:34:06,415.415 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 11:34:06
[2026-06-12 11:34:06,728.728 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 11:34:06,860.860 INFO    ] Initializing speech engine...
[2026-06-12 11:34:06,864.864 INFO    ] 2026-06-12 11:34:06
[2026-06-12 11:34:07,061.061 INFO    ] 2026-06-12 11:34:07
[2026-06-12 11:34:07,099.099 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 11:34:07,258.258 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 11:34:07,297.297 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 11:34:07,474.474 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 11:34:07,532.532 INFO    ] time= 12/06/2026 11:34:07
[2026-06-12 11:34:07,567.567 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 11:34:07,578.578 INFO    ] Checking for existing commands in stream...
[2026-06-12 11:34:07,682.682 INFO    ] No existing commands found in stream
[2026-06-12 11:34:12,696.696 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 11:34:12,699.699 INFO    ] Waiting 2.33 seconds before fallback handling...
[2026-06-12 11:34:15,390.390 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 11:34:15,392.392 INFO    ] Checking for system updates...
[2026-06-12 11:34:15,413.413 INFO    ] 200
[2026-06-12 11:34:15,414.414 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:34:15,444.444 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 11:34:15,446.446 INFO    ] No update needed
[2026-06-12 11:34:15,447.447 INFO    ] Checking for camera pi updates...
[2026-06-12 11:34:15,467.467 INFO    ] 200
[2026-06-12 11:34:15,469.469 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:34:15,492.492 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 11:34:15,532.532 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 11:34:15,534.534 INFO    ] No camera update needed
[2026-06-12 11:34:15,535.535 INFO    ] Script finished. Safe exiting...
[2026-06-12 11:34:15,536.536 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 11:34:15,540.540 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 11:34:15,543.543 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 11:34:17,583.583 INFO    ] ================================================
[2026-06-12 11:34:17,599.599 INFO    ] Launching Daemon at Fri Jun 12 11:34:17 IST 2026
[2026-06-12 11:34:17,610.610 INFO    ] ================================================
[2026-06-12 11:34:17,966.966 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 11:34:17
[2026-06-12 11:34:18,286.286 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 11:34:18,423.423 INFO    ] Initializing speech engine...
[2026-06-12 11:34:18,427.427 INFO    ] 2026-06-12 11:34:18
[2026-06-12 11:34:18,660.660 INFO    ] 2026-06-12 11:34:18
[2026-06-12 11:34:18,690.690 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 11:34:18,892.892 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 11:34:18,901.901 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 11:34:19,049.049 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 11:34:19,113.113 INFO    ] time= 12/06/2026 11:34:19
[2026-06-12 11:34:19,142.142 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 11:34:19,144.144 INFO    ] Checking for existing commands in stream...
[2026-06-12 11:34:19,248.248 INFO    ] No existing commands found in stream
[2026-06-12 11:34:24,257.257 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 11:34:24,260.260 INFO    ] Waiting 3.36 seconds before fallback handling...
[2026-06-12 11:34:28,019.019 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 11:34:28,021.021 INFO    ] Checking for system updates...
[2026-06-12 11:34:28,042.042 INFO    ] 200
[2026-06-12 11:34:28,044.044 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:34:28,075.075 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 11:34:28,076.076 INFO    ] No update needed
[2026-06-12 11:34:28,078.078 INFO    ] Checking for camera pi updates...
[2026-06-12 11:34:28,097.097 INFO    ] 200
[2026-06-12 11:34:28,099.099 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:34:28,123.123 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 11:34:28,158.158 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 11:34:28,160.160 INFO    ] No camera update needed
[2026-06-12 11:34:28,161.161 INFO    ] Script finished. Safe exiting...
[2026-06-12 11:34:28,163.163 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 11:34:28,166.166 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 11:34:28,169.169 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 11:34:30,208.208 INFO    ] ================================================
[2026-06-12 11:34:30,223.223 INFO    ] Launching Daemon at Fri Jun 12 11:34:30 IST 2026
[2026-06-12 11:34:30,234.234 INFO    ] ================================================
[2026-06-12 11:34:30,626.626 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 11:34:30
[2026-06-12 11:34:30,968.968 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 11:34:31,120.120 INFO    ] Initializing speech engine...
[2026-06-12 11:34:31,125.125 INFO    ] 2026-06-12 11:34:31
[2026-06-12 11:34:31,335.335 INFO    ] 2026-06-12 11:34:31
[2026-06-12 11:34:31,365.365 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 11:34:31,565.565 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 11:34:31,585.585 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 11:34:31,799.799 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 11:34:31,805.805 INFO    ] time= 12/06/2026 11:34:31
[2026-06-12 11:34:31,808.808 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 11:34:31,861.861 INFO    ] Checking for existing commands in stream...
[2026-06-12 11:34:31,935.935 INFO    ] No existing commands found in stream
[2026-06-12 11:34:36,945.945 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 11:34:36,949.949 INFO    ] Waiting 1.49 seconds before fallback handling...
[2026-06-12 11:34:38,844.844 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 11:34:38,846.846 INFO    ] Checking for system updates...
[2026-06-12 11:34:38,867.867 INFO    ] 200
[2026-06-12 11:34:38,869.869 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:34:38,902.902 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 11:34:38,904.904 INFO    ] No update needed
[2026-06-12 11:34:38,905.905 INFO    ] Checking for camera pi updates...
[2026-06-12 11:34:38,925.925 INFO    ] 200
[2026-06-12 11:34:38,927.927 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:34:38,950.950 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 11:34:38,991.991 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 11:34:38,993.993 INFO    ] No camera update needed
[2026-06-12 11:34:38,994.994 INFO    ] Script finished. Safe exiting...
[2026-06-12 11:34:38,996.996 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 11:34:38,999.999 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 11:34:39,002.002 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 11:34:41,044.044 INFO    ] ================================================
[2026-06-12 11:34:41,059.059 INFO    ] Launching Daemon at Fri Jun 12 11:34:41 IST 2026
[2026-06-12 11:34:41,070.070 INFO    ] ================================================
[2026-06-12 11:34:41,435.435 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 11:34:41
[2026-06-12 11:34:41,756.756 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 11:34:41,901.901 INFO    ] Initializing speech engine...
[2026-06-12 11:34:41,906.906 INFO    ] 2026-06-12 11:34:41
[2026-06-12 11:34:42,112.112 INFO    ] 2026-06-12 11:34:42
[2026-06-12 11:34:42,140.140 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 11:34:42,325.325 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 11:34:42,333.333 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 11:34:42,478.478 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 11:34:42,531.531 INFO    ] time= 12/06/2026 11:34:42
[2026-06-12 11:34:42,553.553 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 11:34:42,559.559 INFO    ] Checking for existing commands in stream...
[2026-06-12 11:34:42,626.626 INFO    ] No existing commands found in stream
[2026-06-12 11:34:47,640.640 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 11:34:47,643.643 INFO    ] Waiting 3.73 seconds before fallback handling...
[2026-06-12 11:34:51,756.756 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 11:34:51,757.757 INFO    ] Checking for system updates...
[2026-06-12 11:34:51,778.778 INFO    ] 200
[2026-06-12 11:34:51,780.780 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:34:51,810.810 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 11:34:51,812.812 INFO    ] No update needed
[2026-06-12 11:34:51,813.813 INFO    ] Checking for camera pi updates...
[2026-06-12 11:34:51,833.833 INFO    ] 200
[2026-06-12 11:34:51,834.834 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:34:51,858.858 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 11:34:51,892.892 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 11:34:51,893.893 INFO    ] No camera update needed
[2026-06-12 11:34:51,894.894 INFO    ] Script finished. Safe exiting...
[2026-06-12 11:34:51,896.896 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 11:34:51,899.899 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 11:34:51,902.902 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 11:34:53,943.943 INFO    ] ================================================
[2026-06-12 11:34:53,958.958 INFO    ] Launching Daemon at Fri Jun 12 11:34:53 IST 2026
[2026-06-12 11:34:53,970.970 INFO    ] ================================================
[2026-06-12 11:34:54,328.328 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 11:34:54
[2026-06-12 11:34:54,669.669 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 11:34:54,823.823 INFO    ] Initializing speech engine...
[2026-06-12 11:34:54,827.827 INFO    ] 2026-06-12 11:34:54
[2026-06-12 11:34:55,034.034 INFO    ] 2026-06-12 11:34:55
[2026-06-12 11:34:55,064.064 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 11:34:55,247.247 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 11:34:55,257.257 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 11:34:55,428.428 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 11:34:55,475.475 INFO    ] time= 12/06/2026 11:34:55
[2026-06-12 11:34:55,481.481 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 11:34:55,483.483 INFO    ] Checking for existing commands in stream...
[2026-06-12 11:34:55,550.550 INFO    ] No existing commands found in stream
[2026-06-12 11:35:00,575.575 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 11:35:00,578.578 INFO    ] Waiting 2.38 seconds before fallback handling...
[2026-06-12 11:35:03,314.314 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 11:35:03,317.317 INFO    ] Checking for system updates...
[2026-06-12 11:35:03,355.355 INFO    ] 200
[2026-06-12 11:35:03,357.357 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:35:03,412.412 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 11:35:03,415.415 INFO    ] No update needed
[2026-06-12 11:35:03,418.418 INFO    ] Checking for camera pi updates...
[2026-06-12 11:35:03,454.454 INFO    ] 200
[2026-06-12 11:35:03,457.457 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:35:03,499.499 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 11:35:03,546.546 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 11:35:03,547.547 INFO    ] No camera update needed
[2026-06-12 11:35:03,548.548 INFO    ] Script finished. Safe exiting...
[2026-06-12 11:35:03,549.549 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 11:35:03,553.553 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 11:35:03,555.555 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 11:35:05,594.594 INFO    ] ================================================
[2026-06-12 11:35:05,609.609 INFO    ] Launching Daemon at Fri Jun 12 11:35:05 IST 2026
[2026-06-12 11:35:05,620.620 INFO    ] ================================================
[2026-06-12 11:35:05,999.999 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 11:35:05
[2026-06-12 11:35:06,314.314 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 11:35:06,445.445 INFO    ] Initializing speech engine...
[2026-06-12 11:35:06,448.448 INFO    ] 2026-06-12 11:35:06
[2026-06-12 11:35:06,667.667 INFO    ] 2026-06-12 11:35:06
[2026-06-12 11:35:06,697.697 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 11:35:06,886.886 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 11:35:06,894.894 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 11:35:07,048.048 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 11:35:07,099.099 INFO    ] time= 12/06/2026 11:35:07
[2026-06-12 11:35:07,120.120 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 11:35:07,126.126 INFO    ] Checking for existing commands in stream...
[2026-06-12 11:35:07,195.195 INFO    ] No existing commands found in stream
[2026-06-12 11:35:12,209.209 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 11:35:12,212.212 INFO    ] Waiting 2.34 seconds before fallback handling...
[2026-06-12 11:35:14,931.931 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 11:35:14,933.933 INFO    ] Checking for system updates...
[2026-06-12 11:35:14,953.953 INFO    ] 200
[2026-06-12 11:35:14,954.954 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:35:14,988.988 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 11:35:14,989.989 INFO    ] No update needed
[2026-06-12 11:35:14,991.991 INFO    ] Checking for camera pi updates...
[2026-06-12 11:35:15,010.010 INFO    ] 200
[2026-06-12 11:35:15,012.012 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:35:15,036.036 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 11:35:15,071.071 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 11:35:15,072.072 INFO    ] No camera update needed
[2026-06-12 11:35:15,074.074 INFO    ] Script finished. Safe exiting...
[2026-06-12 11:35:15,075.075 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 11:35:15,078.078 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 11:35:15,081.081 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 11:35:17,120.120 INFO    ] ================================================
[2026-06-12 11:35:17,135.135 INFO    ] Launching Daemon at Fri Jun 12 11:35:17 IST 2026
[2026-06-12 11:35:17,146.146 INFO    ] ================================================
[2026-06-12 11:35:17,516.516 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 11:35:17
[2026-06-12 11:35:17,858.858 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 11:35:18,013.013 INFO    ] Initializing speech engine...
[2026-06-12 11:35:18,018.018 INFO    ] 2026-06-12 11:35:18
[2026-06-12 11:35:18,225.225 INFO    ] 2026-06-12 11:35:18
[2026-06-12 11:35:18,253.253 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 11:35:18,438.438 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 11:35:18,448.448 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 11:35:18,584.584 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 11:35:18,647.647 INFO    ] time= 12/06/2026 11:35:18
[2026-06-12 11:35:18,671.671 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 11:35:18,678.678 INFO    ] Checking for existing commands in stream...
[2026-06-12 11:35:18,745.745 INFO    ] No existing commands found in stream
[2026-06-12 11:35:23,778.778 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 11:35:23,781.781 INFO    ] Waiting 3.81 seconds before fallback handling...
[2026-06-12 11:35:27,993.993 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 11:35:27,994.994 INFO    ] Checking for system updates...
[2026-06-12 11:35:28,017.017 INFO    ] 200
[2026-06-12 11:35:28,019.019 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:35:28,049.049 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 11:35:28,051.051 INFO    ] No update needed
[2026-06-12 11:35:28,052.052 INFO    ] Checking for camera pi updates...
[2026-06-12 11:35:28,072.072 INFO    ] 200
[2026-06-12 11:35:28,073.073 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:35:28,100.100 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 11:35:28,135.135 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 11:35:28,137.137 INFO    ] No camera update needed
[2026-06-12 11:35:28,138.138 INFO    ] Script finished. Safe exiting...
[2026-06-12 11:35:28,139.139 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 11:35:28,142.142 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 11:35:28,145.145 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 11:35:30,184.184 INFO    ] ================================================
[2026-06-12 11:35:30,200.200 INFO    ] Launching Daemon at Fri Jun 12 11:35:30 IST 2026
[2026-06-12 11:35:30,211.211 INFO    ] ================================================
[2026-06-12 11:35:30,543.543 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 11:35:30
[2026-06-12 11:35:30,856.856 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 11:35:30,993.993 INFO    ] Initializing speech engine...
[2026-06-12 11:35:31,001.001 INFO    ] 2026-06-12 11:35:30
[2026-06-12 11:35:31,206.206 INFO    ] 2026-06-12 11:35:31
[2026-06-12 11:35:31,235.235 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 11:35:31,422.422 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 11:35:31,432.432 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 11:35:31,578.578 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 11:35:31,634.634 INFO    ] time= 12/06/2026 11:35:31
[2026-06-12 11:35:31,655.655 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 11:35:31,662.662 INFO    ] Checking for existing commands in stream...
[2026-06-12 11:35:31,728.728 INFO    ] No existing commands found in stream
[2026-06-12 11:35:36,738.738 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 11:35:36,741.741 INFO    ] Waiting 3.85 seconds before fallback handling...
[2026-06-12 11:35:41,724.724 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 11:35:41,726.726 INFO    ] Checking for system updates...
[2026-06-12 11:35:41,762.762 INFO    ] 200
[2026-06-12 11:35:41,765.765 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:35:41,825.825 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 11:35:41,828.828 INFO    ] No update needed
[2026-06-12 11:35:41,830.830 INFO    ] Checking for camera pi updates...
[2026-06-12 11:35:41,876.876 INFO    ] 200
[2026-06-12 11:35:41,879.879 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:35:41,920.920 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 11:35:41,953.953 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 11:35:41,955.955 INFO    ] No camera update needed
[2026-06-12 11:35:41,956.956 INFO    ] Script finished. Safe exiting...
[2026-06-12 11:35:41,957.957 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 11:35:41,960.960 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 11:35:41,963.963 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 11:35:44,005.005 INFO    ] ================================================
[2026-06-12 11:35:44,020.020 INFO    ] Launching Daemon at Fri Jun 12 11:35:44 IST 2026
[2026-06-12 11:35:44,032.032 INFO    ] ================================================
[2026-06-12 11:35:44,385.385 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 11:35:44
[2026-06-12 11:35:44,701.701 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 11:35:44,833.833 INFO    ] Initializing speech engine...
[2026-06-12 11:35:44,837.837 INFO    ] 2026-06-12 11:35:44
[2026-06-12 11:35:45,057.057 INFO    ] 2026-06-12 11:35:45
[2026-06-12 11:35:45,085.085 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 11:35:45,272.272 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 11:35:45,281.281 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 11:35:45,413.413 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 11:35:45,481.481 INFO    ] time= 12/06/2026 11:35:45
[2026-06-12 11:35:45,505.505 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 11:35:45,511.511 INFO    ] Checking for existing commands in stream...
[2026-06-12 11:35:45,580.580 INFO    ] No existing commands found in stream
[2026-06-12 11:35:50,604.604 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 11:35:50,607.607 INFO    ] Waiting 3.95 seconds before fallback handling...
[2026-06-12 11:35:54,941.941 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 11:35:54,943.943 INFO    ] Checking for system updates...
[2026-06-12 11:35:54,963.963 INFO    ] 200
[2026-06-12 11:35:54,965.965 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:35:54,997.997 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 11:35:54,998.998 INFO    ] No update needed
[2026-06-12 11:35:55,000.000 INFO    ] Checking for camera pi updates...
[2026-06-12 11:35:55,020.020 INFO    ] 200
[2026-06-12 11:35:55,021.021 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:35:55,044.044 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 11:35:55,081.081 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 11:35:55,083.083 INFO    ] No camera update needed
[2026-06-12 11:35:55,084.084 INFO    ] Script finished. Safe exiting...
[2026-06-12 11:35:55,085.085 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 11:35:55,088.088 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 11:35:55,091.091 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 11:35:57,132.132 INFO    ] ================================================
[2026-06-12 11:35:57,147.147 INFO    ] Launching Daemon at Fri Jun 12 11:35:57 IST 2026
[2026-06-12 11:35:57,158.158 INFO    ] ================================================
[2026-06-12 11:35:57,518.518 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 11:35:57
[2026-06-12 11:35:57,832.832 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 11:35:57,964.964 INFO    ] Initializing speech engine...
[2026-06-12 11:35:57,968.968 INFO    ] 2026-06-12 11:35:57
[2026-06-12 11:35:58,168.168 INFO    ] 2026-06-12 11:35:58
[2026-06-12 11:35:58,209.209 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 11:35:58,366.366 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 11:35:58,410.410 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 11:35:58,584.584 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 11:35:58,632.632 INFO    ] time= 12/06/2026 11:35:58
[2026-06-12 11:35:58,671.671 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 11:35:58,689.689 INFO    ] Checking for existing commands in stream...
[2026-06-12 11:35:58,794.794 INFO    ] No existing commands found in stream
[2026-06-12 11:36:03,803.803 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 11:36:03,805.805 INFO    ] Waiting 1.12 seconds before fallback handling...
[2026-06-12 11:36:05,287.287 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 11:36:05,289.289 INFO    ] Checking for system updates...
[2026-06-12 11:36:05,310.310 INFO    ] 200
[2026-06-12 11:36:05,311.311 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:36:05,344.344 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 11:36:05,345.345 INFO    ] No update needed
[2026-06-12 11:36:05,347.347 INFO    ] Checking for camera pi updates...
[2026-06-12 11:36:05,367.367 INFO    ] 200
[2026-06-12 11:36:05,369.369 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:36:05,392.392 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 11:36:05,432.432 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 11:36:05,434.434 INFO    ] No camera update needed
[2026-06-12 11:36:05,435.435 INFO    ] Script finished. Safe exiting...
[2026-06-12 11:36:05,436.436 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 11:36:05,439.439 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 11:36:05,442.442 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 11:36:07,481.481 INFO    ] ================================================
[2026-06-12 11:36:07,496.496 INFO    ] Launching Daemon at Fri Jun 12 11:36:07 IST 2026
[2026-06-12 11:36:07,511.511 INFO    ] ================================================
[2026-06-12 11:36:07,909.909 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 11:36:07
[2026-06-12 11:36:08,251.251 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 11:36:08,406.406 INFO    ] Initializing speech engine...
[2026-06-12 11:36:08,410.410 INFO    ] 2026-06-12 11:36:08
[2026-06-12 11:36:08,619.619 INFO    ] 2026-06-12 11:36:08
[2026-06-12 11:36:08,649.649 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 11:36:08,837.837 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 11:36:08,846.846 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 11:36:08,998.998 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 11:36:09,047.047 INFO    ] time= 12/06/2026 11:36:09
[2026-06-12 11:36:09,070.070 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 11:36:09,076.076 INFO    ] Checking for existing commands in stream...
[2026-06-12 11:36:09,168.168 INFO    ] No existing commands found in stream
[2026-06-12 11:36:14,177.177 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 11:36:14,181.181 INFO    ] Waiting 2.43 seconds before fallback handling...
[2026-06-12 11:36:17,027.027 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 11:36:17,028.028 INFO    ] Checking for system updates...
[2026-06-12 11:36:17,061.061 INFO    ] 200
[2026-06-12 11:36:17,062.062 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:36:17,098.098 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 11:36:17,099.099 INFO    ] No update needed
[2026-06-12 11:36:17,101.101 INFO    ] Checking for camera pi updates...
[2026-06-12 11:36:17,126.126 INFO    ] 200
[2026-06-12 11:36:17,127.127 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:36:17,151.151 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 11:36:17,193.193 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 11:36:17,194.194 INFO    ] No camera update needed
[2026-06-12 11:36:17,196.196 INFO    ] Script finished. Safe exiting...
[2026-06-12 11:36:17,197.197 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 11:36:17,201.201 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 11:36:17,204.204 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 11:36:19,242.242 INFO    ] ================================================
[2026-06-12 11:36:19,258.258 INFO    ] Launching Daemon at Fri Jun 12 11:36:19 IST 2026
[2026-06-12 11:36:19,269.269 INFO    ] ================================================
[2026-06-12 11:36:19,664.664 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 11:36:19
[2026-06-12 11:36:20,010.010 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 11:36:20,164.164 INFO    ] Initializing speech engine...
[2026-06-12 11:36:20,169.169 INFO    ] 2026-06-12 11:36:20
[2026-06-12 11:36:20,381.381 INFO    ] 2026-06-12 11:36:20
[2026-06-12 11:36:20,410.410 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 11:36:20,598.598 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 11:36:20,607.607 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 11:36:20,795.795 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 11:36:20,828.828 INFO    ] time= 12/06/2026 11:36:20
[2026-06-12 11:36:20,835.835 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 11:36:20,837.837 INFO    ] Checking for existing commands in stream...
[2026-06-12 11:36:20,904.904 INFO    ] No existing commands found in stream
[2026-06-12 11:36:25,923.923 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 11:36:25,927.927 INFO    ] Waiting 3.55 seconds before fallback handling...
[2026-06-12 11:36:29,838.838 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 11:36:29,839.839 INFO    ] Checking for system updates...
[2026-06-12 11:36:29,859.859 INFO    ] 200
[2026-06-12 11:36:29,861.861 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:36:29,891.891 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 11:36:29,892.892 INFO    ] No update needed
[2026-06-12 11:36:29,894.894 INFO    ] Checking for camera pi updates...
[2026-06-12 11:36:29,915.915 INFO    ] 200
[2026-06-12 11:36:29,917.917 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:36:29,940.940 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 11:36:29,991.991 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 11:36:29,993.993 INFO    ] No camera update needed
[2026-06-12 11:36:29,994.994 INFO    ] Script finished. Safe exiting...
[2026-06-12 11:36:29,995.995 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 11:36:29,998.998 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 11:36:30,001.001 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 11:36:32,034.034 INFO    ] ================================================
[2026-06-12 11:36:32,051.051 INFO    ] Launching Daemon at Fri Jun 12 11:36:32 IST 2026
[2026-06-12 11:36:32,063.063 INFO    ] ================================================
[2026-06-12 11:36:32,430.430 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 11:36:32
[2026-06-12 11:36:32,774.774 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 11:36:32,918.918 INFO    ] Initializing speech engine...
[2026-06-12 11:36:32,923.923 INFO    ] 2026-06-12 11:36:32
[2026-06-12 11:36:33,140.140 INFO    ] 2026-06-12 11:36:33
[2026-06-12 11:36:33,187.187 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 11:36:33,373.373 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 11:36:33,383.383 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 11:36:33,530.530 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 11:36:33,585.585 INFO    ] time= 12/06/2026 11:36:33
[2026-06-12 11:36:33,606.606 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 11:36:33,613.613 INFO    ] Checking for existing commands in stream...
[2026-06-12 11:36:33,680.680 INFO    ] No existing commands found in stream
[2026-06-12 11:36:38,689.689 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 11:36:38,692.692 INFO    ] Waiting 3.49 seconds before fallback handling...
[2026-06-12 11:36:42,541.541 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 11:36:42,543.543 INFO    ] Checking for system updates...
[2026-06-12 11:36:42,563.563 INFO    ] 200
[2026-06-12 11:36:42,564.564 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:36:42,597.597 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 11:36:42,599.599 INFO    ] No update needed
[2026-06-12 11:36:42,600.600 INFO    ] Checking for camera pi updates...
[2026-06-12 11:36:42,620.620 INFO    ] 200
[2026-06-12 11:36:42,621.621 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:36:42,644.644 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 11:36:42,783.783 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 11:36:42,784.784 INFO    ] No camera update needed
[2026-06-12 11:36:42,786.786 INFO    ] Script finished. Safe exiting...
[2026-06-12 11:36:42,789.789 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 11:36:42,793.793 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 11:36:42,796.796 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 11:36:44,834.834 INFO    ] ================================================
[2026-06-12 11:36:44,850.850 INFO    ] Launching Daemon at Fri Jun 12 11:36:44 IST 2026
[2026-06-12 11:36:44,863.863 INFO    ] ================================================
[2026-06-12 11:36:45,187.187 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 11:36:45
[2026-06-12 11:36:45,501.501 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 11:36:45,635.635 INFO    ] Initializing speech engine...
[2026-06-12 11:36:45,648.648 INFO    ] 2026-06-12 11:36:45
[2026-06-12 11:36:45,856.856 INFO    ] 2026-06-12 11:36:45
[2026-06-12 11:36:45,885.885 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 11:36:46,031.031 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 11:36:46,076.076 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 11:36:46,209.209 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 11:36:46,260.260 INFO    ] time= 12/06/2026 11:36:46
[2026-06-12 11:36:46,301.301 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 11:36:46,311.311 INFO    ] Checking for existing commands in stream...
[2026-06-12 11:36:46,384.384 INFO    ] No existing commands found in stream
[2026-06-12 11:36:51,398.398 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 11:36:51,401.401 INFO    ] Waiting 1.70 seconds before fallback handling...
[2026-06-12 11:36:54,313.313 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 11:36:54,316.316 INFO    ] Checking for system updates...
[2026-06-12 11:36:54,359.359 INFO    ] 200
[2026-06-12 11:36:54,367.367 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:36:54,413.413 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 11:36:54,415.415 INFO    ] No update needed
[2026-06-12 11:36:54,416.416 INFO    ] Checking for camera pi updates...
[2026-06-12 11:36:54,438.438 INFO    ] 200
[2026-06-12 11:36:54,440.440 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:36:54,464.464 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 11:36:54,503.503 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 11:36:54,505.505 INFO    ] No camera update needed
[2026-06-12 11:36:54,506.506 INFO    ] Script finished. Safe exiting...
[2026-06-12 11:36:54,508.508 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 11:36:54,511.511 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 11:36:54,514.514 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 11:36:56,553.553 INFO    ] ================================================
[2026-06-12 11:36:56,569.569 INFO    ] Launching Daemon at Fri Jun 12 11:36:56 IST 2026
[2026-06-12 11:36:56,580.580 INFO    ] ================================================
[2026-06-12 11:36:56,943.943 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 11:36:56
[2026-06-12 11:36:57,291.291 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 11:36:57,445.445 INFO    ] Initializing speech engine...
[2026-06-12 11:36:57,450.450 INFO    ] 2026-06-12 11:36:57
[2026-06-12 11:36:57,662.662 INFO    ] 2026-06-12 11:36:57
[2026-06-12 11:36:57,691.691 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 11:36:57,879.879 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 11:36:57,883.883 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 11:36:58,089.089 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 11:36:58,114.114 INFO    ] time= 12/06/2026 11:36:58
[2026-06-12 11:36:58,120.120 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 11:36:58,122.122 INFO    ] Checking for existing commands in stream...
[2026-06-12 11:36:58,189.189 INFO    ] No existing commands found in stream
[2026-06-12 11:37:03,200.200 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 11:37:03,203.203 INFO    ] Waiting 2.87 seconds before fallback handling...
[2026-06-12 11:37:07,316.316 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 11:37:07,319.319 INFO    ] Checking for system updates...
[2026-06-12 11:37:07,356.356 INFO    ] 200
[2026-06-12 11:37:07,358.358 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:37:07,414.414 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 11:37:07,417.417 INFO    ] No update needed
[2026-06-12 11:37:07,419.419 INFO    ] Checking for camera pi updates...
[2026-06-12 11:37:07,454.454 INFO    ] 200
[2026-06-12 11:37:07,456.456 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:37:07,482.482 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 11:37:07,526.526 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 11:37:07,528.528 INFO    ] No camera update needed
[2026-06-12 11:37:07,529.529 INFO    ] Script finished. Safe exiting...
[2026-06-12 11:37:07,530.530 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 11:37:07,533.533 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 11:37:07,536.536 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 11:37:09,575.575 INFO    ] ================================================
[2026-06-12 11:37:09,591.591 INFO    ] Launching Daemon at Fri Jun 12 11:37:09 IST 2026
[2026-06-12 11:37:09,602.602 INFO    ] ================================================
[2026-06-12 11:37:09,985.985 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 11:37:09
[2026-06-12 11:37:10,308.308 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 11:37:10,442.442 INFO    ] Initializing speech engine...
[2026-06-12 11:37:10,447.447 INFO    ] 2026-06-12 11:37:10
[2026-06-12 11:37:10,665.665 INFO    ] 2026-06-12 11:37:10
[2026-06-12 11:37:10,694.694 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 11:37:10,873.873 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 11:37:10,875.875 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 11:37:11,013.013 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 11:37:11,069.069 INFO    ] time= 12/06/2026 11:37:11
[2026-06-12 11:37:11,108.108 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 11:37:11,113.113 INFO    ] Checking for existing commands in stream...
[2026-06-12 11:37:11,187.187 INFO    ] No existing commands found in stream
[2026-06-12 11:37:16,197.197 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 11:37:16,199.199 INFO    ] Waiting 0.71 seconds before fallback handling...
[2026-06-12 11:37:17,343.343 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 11:37:17,344.344 INFO    ] Checking for system updates...
[2026-06-12 11:37:17,366.366 INFO    ] 200
[2026-06-12 11:37:17,367.367 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:37:17,397.397 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 11:37:17,399.399 INFO    ] No update needed
[2026-06-12 11:37:17,400.400 INFO    ] Checking for camera pi updates...
[2026-06-12 11:37:17,419.419 INFO    ] 200
[2026-06-12 11:37:17,421.421 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:37:17,445.445 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 11:37:17,493.493 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 11:37:17,494.494 INFO    ] No camera update needed
[2026-06-12 11:37:17,495.495 INFO    ] Script finished. Safe exiting...
[2026-06-12 11:37:17,497.497 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 11:37:17,500.500 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 11:37:17,503.503 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 11:37:19,543.543 INFO    ] ================================================
[2026-06-12 11:37:19,559.559 INFO    ] Launching Daemon at Fri Jun 12 11:37:19 IST 2026
[2026-06-12 11:37:19,569.569 INFO    ] ================================================
[2026-06-12 11:37:19,933.933 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 11:37:19
[2026-06-12 11:37:20,276.276 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 11:37:20,431.431 INFO    ] Initializing speech engine...
[2026-06-12 11:37:20,435.435 INFO    ] 2026-06-12 11:37:20
[2026-06-12 11:37:20,645.645 INFO    ] 2026-06-12 11:37:20
[2026-06-12 11:37:20,675.675 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 11:37:20,801.801 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 11:37:20,866.866 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 11:37:21,000.000 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 11:37:21,057.057 INFO    ] time= 12/06/2026 11:37:21
[2026-06-12 11:37:21,098.098 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 11:37:21,105.105 INFO    ] Checking for existing commands in stream...
[2026-06-12 11:37:21,228.228 INFO    ] No existing commands found in stream
[2026-06-12 11:37:26,239.239 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 11:37:26,247.247 INFO    ] Waiting 0.57 seconds before fallback handling...
[2026-06-12 11:37:27,187.187 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 11:37:27,189.189 INFO    ] Checking for system updates...
[2026-06-12 11:37:27,210.210 INFO    ] 200
[2026-06-12 11:37:27,212.212 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:37:27,242.242 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 11:37:27,244.244 INFO    ] No update needed
[2026-06-12 11:37:27,245.245 INFO    ] Checking for camera pi updates...
[2026-06-12 11:37:27,275.275 INFO    ] 200
[2026-06-12 11:37:27,277.277 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:37:27,311.311 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 11:37:27,353.353 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 11:37:27,355.355 INFO    ] No camera update needed
[2026-06-12 11:37:27,356.356 INFO    ] Script finished. Safe exiting...
[2026-06-12 11:37:27,357.357 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 11:37:27,360.360 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 11:37:27,363.363 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 11:37:29,402.402 INFO    ] ================================================
[2026-06-12 11:37:29,417.417 INFO    ] Launching Daemon at Fri Jun 12 11:37:29 IST 2026
[2026-06-12 11:37:29,428.428 INFO    ] ================================================
[2026-06-12 11:37:29,794.794 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 11:37:29
[2026-06-12 11:37:30,106.106 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 11:37:30,238.238 INFO    ] Initializing speech engine...
[2026-06-12 11:37:30,246.246 INFO    ] 2026-06-12 11:37:30
[2026-06-12 11:37:30,462.462 INFO    ] 2026-06-12 11:37:30
[2026-06-12 11:37:30,491.491 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 11:37:30,631.631 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 11:37:30,680.680 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 11:37:30,841.841 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 11:37:30,890.890 INFO    ] time= 12/06/2026 11:37:30
[2026-06-12 11:37:30,918.918 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 11:37:30,920.920 INFO    ] Checking for existing commands in stream...
[2026-06-12 11:37:30,988.988 INFO    ] No existing commands found in stream
[2026-06-12 11:37:35,997.997 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 11:37:35,999.999 INFO    ] Waiting 2.86 seconds before fallback handling...
[2026-06-12 11:37:39,240.240 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 11:37:39,242.242 INFO    ] Checking for system updates...
[2026-06-12 11:37:39,263.263 INFO    ] 200
[2026-06-12 11:37:39,264.264 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:37:39,299.299 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 11:37:39,300.300 INFO    ] No update needed
[2026-06-12 11:37:39,302.302 INFO    ] Checking for camera pi updates...
[2026-06-12 11:37:39,322.322 INFO    ] 200
[2026-06-12 11:37:39,323.323 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:37:39,352.352 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 11:37:39,391.391 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 11:37:39,393.393 INFO    ] No camera update needed
[2026-06-12 11:37:39,395.395 INFO    ] Script finished. Safe exiting...
[2026-06-12 11:37:39,396.396 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 11:37:39,401.401 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 11:37:39,405.405 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 11:37:41,447.447 INFO    ] ================================================
[2026-06-12 11:37:41,463.463 INFO    ] Launching Daemon at Fri Jun 12 11:37:41 IST 2026
[2026-06-12 11:37:41,474.474 INFO    ] ================================================
[2026-06-12 11:37:41,804.804 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 11:37:41
[2026-06-12 11:37:42,119.119 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 11:37:42,257.257 INFO    ] Initializing speech engine...
[2026-06-12 11:37:42,266.266 INFO    ] 2026-06-12 11:37:42
[2026-06-12 11:37:42,474.474 INFO    ] 2026-06-12 11:37:42
[2026-06-12 11:37:42,504.504 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 11:37:42,685.685 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 11:37:42,695.695 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 11:37:42,840.840 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 11:37:42,893.893 INFO    ] time= 12/06/2026 11:37:42
[2026-06-12 11:37:42,914.914 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 11:37:42,921.921 INFO    ] Checking for existing commands in stream...
[2026-06-12 11:37:42,988.988 INFO    ] No existing commands found in stream
[2026-06-12 11:37:48,002.002 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 11:37:48,005.005 INFO    ] Waiting 1.46 seconds before fallback handling...
[2026-06-12 11:37:49,866.866 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 11:37:49,867.867 INFO    ] Checking for system updates...
[2026-06-12 11:37:49,890.890 INFO    ] 200
[2026-06-12 11:37:49,891.891 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:37:49,926.926 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 11:37:49,927.927 INFO    ] No update needed
[2026-06-12 11:37:49,928.928 INFO    ] Checking for camera pi updates...
[2026-06-12 11:37:49,948.948 INFO    ] 200
[2026-06-12 11:37:49,949.949 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:37:49,975.975 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 11:37:50,015.015 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 11:37:50,016.016 INFO    ] No camera update needed
[2026-06-12 11:37:50,018.018 INFO    ] Script finished. Safe exiting...
[2026-06-12 11:37:50,019.019 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 11:37:50,022.022 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 11:37:50,025.025 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 11:37:52,063.063 INFO    ] ================================================
[2026-06-12 11:37:52,078.078 INFO    ] Launching Daemon at Fri Jun 12 11:37:52 IST 2026
[2026-06-12 11:37:52,089.089 INFO    ] ================================================
[2026-06-12 11:37:52,465.465 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 11:37:52
[2026-06-12 11:37:52,801.801 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 11:37:52,951.951 INFO    ] Initializing speech engine...
[2026-06-12 11:37:52,957.957 INFO    ] 2026-06-12 11:37:52
[2026-06-12 11:37:53,166.166 INFO    ] 2026-06-12 11:37:53
[2026-06-12 11:37:53,196.196 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 11:37:53,385.385 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 11:37:53,395.395 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 11:37:53,524.524 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 11:37:53,589.589 INFO    ] time= 12/06/2026 11:37:53
[2026-06-12 11:37:53,618.618 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 11:37:53,624.624 INFO    ] Checking for existing commands in stream...
[2026-06-12 11:37:53,692.692 INFO    ] No existing commands found in stream
[2026-06-12 11:37:58,706.706 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 11:37:58,709.709 INFO    ] Waiting 0.54 seconds before fallback handling...
[2026-06-12 11:37:59,687.687 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 11:37:59,689.689 INFO    ] Checking for system updates...
[2026-06-12 11:37:59,712.712 INFO    ] 200
[2026-06-12 11:37:59,713.713 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:37:59,744.744 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 11:37:59,745.745 INFO    ] No update needed
[2026-06-12 11:37:59,747.747 INFO    ] Checking for camera pi updates...
[2026-06-12 11:37:59,766.766 INFO    ] 200
[2026-06-12 11:37:59,768.768 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:37:59,796.796 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 11:37:59,833.833 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 11:37:59,834.834 INFO    ] No camera update needed
[2026-06-12 11:37:59,836.836 INFO    ] Script finished. Safe exiting...
[2026-06-12 11:37:59,837.837 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 11:37:59,840.840 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 11:37:59,843.843 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 11:38:01,877.877 INFO    ] ================================================
[2026-06-12 11:38:01,888.888 INFO    ] Launching Daemon at Fri Jun 12 11:38:01 IST 2026
[2026-06-12 11:38:01,896.896 INFO    ] ================================================
[2026-06-12 11:38:02,269.269 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 11:38:02
[2026-06-12 11:38:02,609.609 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 11:38:02,752.752 INFO    ] Initializing speech engine...
[2026-06-12 11:38:02,756.756 INFO    ] 2026-06-12 11:38:02
[2026-06-12 11:38:02,959.959 INFO    ] 2026-06-12 11:38:02
[2026-06-12 11:38:02,988.988 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 11:38:03,183.183 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 11:38:03,187.187 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 11:38:03,327.327 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 11:38:03,380.380 INFO    ] time= 12/06/2026 11:38:03
[2026-06-12 11:38:03,392.392 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 11:38:03,417.417 INFO    ] Checking for existing commands in stream...
[2026-06-12 11:38:03,502.502 INFO    ] No existing commands found in stream
[2026-06-12 11:38:08,512.512 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 11:38:08,515.515 INFO    ] Waiting 1.90 seconds before fallback handling...
[2026-06-12 11:38:10,793.793 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 11:38:10,794.794 INFO    ] Checking for system updates...
[2026-06-12 11:38:10,815.815 INFO    ] 200
[2026-06-12 11:38:10,816.816 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:38:10,848.848 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 11:38:10,849.849 INFO    ] No update needed
[2026-06-12 11:38:10,851.851 INFO    ] Checking for camera pi updates...
[2026-06-12 11:38:10,870.870 INFO    ] 200
[2026-06-12 11:38:10,871.871 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:38:10,895.895 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 11:38:10,932.932 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 11:38:10,933.933 INFO    ] No camera update needed
[2026-06-12 11:38:10,934.934 INFO    ] Script finished. Safe exiting...
[2026-06-12 11:38:10,935.935 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 11:38:10,938.938 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 11:38:10,941.941 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 11:38:12,979.979 INFO    ] ================================================
[2026-06-12 11:38:12,995.995 INFO    ] Launching Daemon at Fri Jun 12 11:38:12 IST 2026
[2026-06-12 11:38:13,005.005 INFO    ] ================================================
[2026-06-12 11:38:13,351.351 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 11:38:13
[2026-06-12 11:38:13,664.664 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 11:38:13,796.796 INFO    ] Initializing speech engine...
[2026-06-12 11:38:13,800.800 INFO    ] 2026-06-12 11:38:13
[2026-06-12 11:38:14,023.023 INFO    ] 2026-06-12 11:38:14
[2026-06-12 11:38:14,053.053 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 11:38:14,261.261 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 11:38:14,266.266 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 11:38:14,440.440 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 11:38:14,465.465 INFO    ] time= 12/06/2026 11:38:14
[2026-06-12 11:38:14,471.471 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 11:38:14,473.473 INFO    ] Checking for existing commands in stream...
[2026-06-12 11:38:14,541.541 INFO    ] No existing commands found in stream
[2026-06-12 11:38:19,555.555 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 11:38:19,558.558 INFO    ] Waiting 1.19 seconds before fallback handling...
[2026-06-12 11:38:21,149.149 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 11:38:21,151.151 INFO    ] Checking for system updates...
[2026-06-12 11:38:21,172.172 INFO    ] 200
[2026-06-12 11:38:21,174.174 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:38:21,204.204 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 11:38:21,205.205 INFO    ] No update needed
[2026-06-12 11:38:21,207.207 INFO    ] Checking for camera pi updates...
[2026-06-12 11:38:21,226.226 INFO    ] 200
[2026-06-12 11:38:21,228.228 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:38:21,251.251 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 11:38:21,296.296 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 11:38:21,298.298 INFO    ] No camera update needed
[2026-06-12 11:38:21,299.299 INFO    ] Script finished. Safe exiting...
[2026-06-12 11:38:21,301.301 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 11:38:21,304.304 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 11:38:21,307.307 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 11:38:23,345.345 INFO    ] ================================================
[2026-06-12 11:38:23,361.361 INFO    ] Launching Daemon at Fri Jun 12 11:38:23 IST 2026
[2026-06-12 11:38:23,372.372 INFO    ] ================================================
[2026-06-12 11:38:23,718.718 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 11:38:23
[2026-06-12 11:38:24,027.027 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 11:38:24,158.158 INFO    ] Initializing speech engine...
[2026-06-12 11:38:24,172.172 INFO    ] 2026-06-12 11:38:24
[2026-06-12 11:38:24,375.375 INFO    ] 2026-06-12 11:38:24
[2026-06-12 11:38:24,403.403 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 11:38:24,586.586 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 11:38:24,596.596 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 11:38:24,746.746 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 11:38:24,793.793 INFO    ] time= 12/06/2026 11:38:24
[2026-06-12 11:38:24,816.816 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 11:38:24,822.822 INFO    ] Checking for existing commands in stream...
[2026-06-12 11:38:24,912.912 INFO    ] No existing commands found in stream
[2026-06-12 11:38:29,925.925 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 11:38:29,927.927 INFO    ] Waiting 0.55 seconds before fallback handling...
[2026-06-12 11:38:30,853.853 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 11:38:30,854.854 INFO    ] Checking for system updates...
[2026-06-12 11:38:30,876.876 INFO    ] 200
[2026-06-12 11:38:30,877.877 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:38:30,907.907 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 11:38:30,908.908 INFO    ] No update needed
[2026-06-12 11:38:30,909.909 INFO    ] Checking for camera pi updates...
[2026-06-12 11:38:30,931.931 INFO    ] 200
[2026-06-12 11:38:30,932.932 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:38:30,955.955 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 11:38:30,994.994 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 11:38:30,996.996 INFO    ] No camera update needed
[2026-06-12 11:38:30,997.997 INFO    ] Script finished. Safe exiting...
[2026-06-12 11:38:30,998.998 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 11:38:31,001.001 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 11:38:31,004.004 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 11:38:33,036.036 INFO    ] ================================================
[2026-06-12 11:38:33,051.051 INFO    ] Launching Daemon at Fri Jun 12 11:38:33 IST 2026
[2026-06-12 11:38:33,063.063 INFO    ] ================================================
[2026-06-12 11:38:33,439.439 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 11:38:33
[2026-06-12 11:38:33,774.774 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 11:38:33,925.925 INFO    ] Initializing speech engine...
[2026-06-12 11:38:33,931.931 INFO    ] 2026-06-12 11:38:33
[2026-06-12 11:38:34,140.140 INFO    ] 2026-06-12 11:38:34
[2026-06-12 11:38:34,170.170 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 11:38:34,358.358 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 11:38:34,368.368 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 11:38:34,499.499 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 11:38:34,568.568 INFO    ] time= 12/06/2026 11:38:34
[2026-06-12 11:38:34,592.592 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 11:38:34,599.599 INFO    ] Checking for existing commands in stream...
[2026-06-12 11:38:34,667.667 INFO    ] No existing commands found in stream
[2026-06-12 11:38:39,681.681 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 11:38:39,685.685 INFO    ] Waiting 1.24 seconds before fallback handling...
[2026-06-12 11:38:41,345.345 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 11:38:41,347.347 INFO    ] Checking for system updates...
[2026-06-12 11:38:41,369.369 INFO    ] 200
[2026-06-12 11:38:41,370.370 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:38:41,403.403 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 11:38:41,405.405 INFO    ] No update needed
[2026-06-12 11:38:41,406.406 INFO    ] Checking for camera pi updates...
[2026-06-12 11:38:41,426.426 INFO    ] 200
[2026-06-12 11:38:41,427.427 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:38:41,452.452 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 11:38:41,499.499 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 11:38:41,501.501 INFO    ] No camera update needed
[2026-06-12 11:38:41,502.502 INFO    ] Script finished. Safe exiting...
[2026-06-12 11:38:41,504.504 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 11:38:41,507.507 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 11:38:41,510.510 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 11:38:43,548.548 INFO    ] ================================================
[2026-06-12 11:38:43,563.563 INFO    ] Launching Daemon at Fri Jun 12 11:38:43 IST 2026
[2026-06-12 11:38:43,574.574 INFO    ] ================================================
[2026-06-12 11:38:43,939.939 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 11:38:43
[2026-06-12 11:38:44,273.273 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 11:38:44,419.419 INFO    ] Initializing speech engine...
[2026-06-12 11:38:44,429.429 INFO    ] 2026-06-12 11:38:44
[2026-06-12 11:38:44,638.638 INFO    ] 2026-06-12 11:38:44
[2026-06-12 11:38:44,668.668 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 11:38:44,854.854 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 11:38:44,865.865 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 11:38:44,988.988 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 11:38:45,039.039 INFO    ] time= 12/06/2026 11:38:44
[2026-06-12 11:38:45,074.074 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 11:38:45,095.095 INFO    ] Checking for existing commands in stream...
[2026-06-12 11:38:45,163.163 INFO    ] No existing commands found in stream
[2026-06-12 11:38:50,177.177 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 11:38:50,180.180 INFO    ] Waiting 1.03 seconds before fallback handling...
[2026-06-12 11:38:51,607.607 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 11:38:51,609.609 INFO    ] Checking for system updates...
[2026-06-12 11:38:51,630.630 INFO    ] 200
[2026-06-12 11:38:51,631.631 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:38:51,662.662 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 11:38:51,663.663 INFO    ] No update needed
[2026-06-12 11:38:51,665.665 INFO    ] Checking for camera pi updates...
[2026-06-12 11:38:51,684.684 INFO    ] 200
[2026-06-12 11:38:51,685.685 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:38:51,709.709 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 11:38:51,851.851 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 11:38:51,852.852 INFO    ] No camera update needed
[2026-06-12 11:38:51,853.853 INFO    ] Script finished. Safe exiting...
[2026-06-12 11:38:51,855.855 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 11:38:51,858.858 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 11:38:51,861.861 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 11:38:53,899.899 INFO    ] ================================================
[2026-06-12 11:38:53,916.916 INFO    ] Launching Daemon at Fri Jun 12 11:38:53 IST 2026
[2026-06-12 11:38:53,927.927 INFO    ] ================================================
[2026-06-12 11:38:54,285.285 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 11:38:54
[2026-06-12 11:38:54,600.600 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 11:38:54,738.738 INFO    ] Initializing speech engine...
[2026-06-12 11:38:54,748.748 INFO    ] 2026-06-12 11:38:54
[2026-06-12 11:38:54,953.953 INFO    ] 2026-06-12 11:38:54
[2026-06-12 11:38:54,980.980 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 11:38:55,166.166 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 11:38:55,170.170 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 11:38:55,304.304 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 11:38:55,368.368 INFO    ] time= 12/06/2026 11:38:55
[2026-06-12 11:38:55,395.395 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 11:38:55,402.402 INFO    ] Checking for existing commands in stream...
[2026-06-12 11:38:55,469.469 INFO    ] No existing commands found in stream
[2026-06-12 11:39:00,478.478 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 11:39:00,481.481 INFO    ] Waiting 3.15 seconds before fallback handling...
[2026-06-12 11:39:04,005.005 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 11:39:04,007.007 INFO    ] Checking for system updates...
[2026-06-12 11:39:04,027.027 INFO    ] 200
[2026-06-12 11:39:04,028.028 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:39:04,060.060 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 11:39:04,061.061 INFO    ] No update needed
[2026-06-12 11:39:04,063.063 INFO    ] Checking for camera pi updates...
[2026-06-12 11:39:04,082.082 INFO    ] 200
[2026-06-12 11:39:04,083.083 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:39:04,106.106 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 11:39:04,145.145 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 11:39:04,146.146 INFO    ] No camera update needed
[2026-06-12 11:39:04,147.147 INFO    ] Script finished. Safe exiting...
[2026-06-12 11:39:04,149.149 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 11:39:04,152.152 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 11:39:04,154.154 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 11:39:06,194.194 INFO    ] ================================================
[2026-06-12 11:39:06,209.209 INFO    ] Launching Daemon at Fri Jun 12 11:39:06 IST 2026
[2026-06-12 11:39:06,220.220 INFO    ] ================================================
[2026-06-12 11:39:06,553.553 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 11:39:06
[2026-06-12 11:39:06,864.864 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 11:39:06,994.994 INFO    ] Initializing speech engine...
[2026-06-12 11:39:07,001.001 INFO    ] 2026-06-12 11:39:06
[2026-06-12 11:39:07,216.216 INFO    ] 2026-06-12 11:39:07
[2026-06-12 11:39:07,244.244 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 11:39:07,430.430 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 11:39:07,438.438 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 11:39:07,569.569 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 11:39:07,633.633 INFO    ] time= 12/06/2026 11:39:07
[2026-06-12 11:39:07,661.661 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 11:39:07,667.667 INFO    ] Checking for existing commands in stream...
[2026-06-12 11:39:07,759.759 INFO    ] No existing commands found in stream
[2026-06-12 11:39:12,768.768 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 11:39:12,770.770 INFO    ] Waiting 1.08 seconds before fallback handling...
[2026-06-12 11:39:14,235.235 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 11:39:14,236.236 INFO    ] Checking for system updates...
[2026-06-12 11:39:14,257.257 INFO    ] 200
[2026-06-12 11:39:14,258.258 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:39:14,288.288 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 11:39:14,289.289 INFO    ] No update needed
[2026-06-12 11:39:14,291.291 INFO    ] Checking for camera pi updates...
[2026-06-12 11:39:14,313.313 INFO    ] 200
[2026-06-12 11:39:14,315.315 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:39:14,338.338 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 11:39:14,373.373 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 11:39:14,375.375 INFO    ] No camera update needed
[2026-06-12 11:39:14,376.376 INFO    ] Script finished. Safe exiting...
[2026-06-12 11:39:14,377.377 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 11:39:14,380.380 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 11:39:14,383.383 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 11:39:16,422.422 INFO    ] ================================================
[2026-06-12 11:39:16,437.437 INFO    ] Launching Daemon at Fri Jun 12 11:39:16 IST 2026
[2026-06-12 11:39:16,448.448 INFO    ] ================================================
[2026-06-12 11:39:16,821.821 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 11:39:16
[2026-06-12 11:39:17,137.137 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 11:39:17,280.280 INFO    ] Initializing speech engine...
[2026-06-12 11:39:17,285.285 INFO    ] 2026-06-12 11:39:17
[2026-06-12 11:39:17,487.487 INFO    ] 2026-06-12 11:39:17
[2026-06-12 11:39:17,516.516 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 11:39:17,663.663 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 11:39:17,705.705 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 11:39:17,890.890 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 11:39:17,924.924 INFO    ] time= 12/06/2026 11:39:17
[2026-06-12 11:39:17,934.934 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 11:39:17,940.940 INFO    ] Checking for existing commands in stream...
[2026-06-12 11:39:18,010.010 INFO    ] No existing commands found in stream
[2026-06-12 11:39:23,019.019 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 11:39:23,022.022 INFO    ] Waiting 2.06 seconds before fallback handling...
[2026-06-12 11:39:25,397.397 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 11:39:25,399.399 INFO    ] Checking for system updates...
[2026-06-12 11:39:25,432.432 INFO    ] 200
[2026-06-12 11:39:25,434.434 INFO    ] {"msg": "Status of machine", "state": "STATE_HEALTH_CHECK", "status": true}
[2026-06-12 11:39:25,436.436 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping update check
[2026-06-12 11:39:25,437.437 INFO    ] Checking for camera pi updates...
[2026-06-12 11:39:25,477.477 INFO    ] 200
[2026-06-12 11:39:25,478.478 INFO    ] {"msg": "Status of machine", "state": "STATE_HEALTH_CHECK", "status": true}
[2026-06-12 11:39:25,480.480 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping camera update check
[2026-06-12 11:39:25,482.482 INFO    ] Script finished. Safe exiting...
[2026-06-12 11:39:25,483.483 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 11:39:25,487.487 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 11:39:25,491.491 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 11:39:27,524.524 INFO    ] ================================================
[2026-06-12 11:39:27,540.540 INFO    ] Launching Daemon at Fri Jun 12 11:39:27 IST 2026
[2026-06-12 11:39:27,552.552 INFO    ] ================================================
[2026-06-12 11:39:27,931.931 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 11:39:27
[2026-06-12 11:39:28,276.276 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 11:39:28,432.432 INFO    ] Initializing speech engine...
[2026-06-12 11:39:28,437.437 INFO    ] 2026-06-12 11:39:28
[2026-06-12 11:39:28,668.668 INFO    ] 2026-06-12 11:39:28
[2026-06-12 11:39:28,700.700 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 11:39:28,901.901 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 11:39:28,911.911 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 11:39:29,041.041 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 11:39:29,095.095 INFO    ] time= 12/06/2026 11:39:29
[2026-06-12 11:39:29,130.130 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 11:39:29,136.136 INFO    ] Checking for existing commands in stream...
[2026-06-12 11:39:29,233.233 INFO    ] No existing commands found in stream
[2026-06-12 11:39:34,242.242 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 11:39:34,245.245 INFO    ] Waiting 0.61 seconds before fallback handling...
[2026-06-12 11:39:35,167.167 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 11:39:35,169.169 INFO    ] Checking for system updates...
[2026-06-12 11:39:35,190.190 INFO    ] 200
[2026-06-12 11:39:35,192.192 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:39:35,222.222 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 11:39:35,224.224 INFO    ] No update needed
[2026-06-12 11:39:35,225.225 INFO    ] Checking for camera pi updates...
[2026-06-12 11:39:35,255.255 INFO    ] 200
[2026-06-12 11:39:35,257.257 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:39:35,292.292 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 11:39:35,328.328 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 11:39:35,330.330 INFO    ] No camera update needed
[2026-06-12 11:39:35,331.331 INFO    ] Script finished. Safe exiting...
[2026-06-12 11:39:35,332.332 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 11:39:35,336.336 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 11:39:35,339.339 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 11:39:37,377.377 INFO    ] ================================================
[2026-06-12 11:39:37,393.393 INFO    ] Launching Daemon at Fri Jun 12 11:39:37 IST 2026
[2026-06-12 11:39:37,404.404 INFO    ] ================================================
[2026-06-12 11:39:37,778.778 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 11:39:37
[2026-06-12 11:39:38,115.115 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 11:39:38,264.264 INFO    ] Initializing speech engine...
[2026-06-12 11:39:38,270.270 INFO    ] 2026-06-12 11:39:38
[2026-06-12 11:39:38,476.476 INFO    ] 2026-06-12 11:39:38
[2026-06-12 11:39:38,505.505 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 11:39:38,688.688 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 11:39:38,696.696 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 11:39:38,846.846 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 11:39:38,900.900 INFO    ] time= 12/06/2026 11:39:38
[2026-06-12 11:39:38,916.916 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 11:39:38,922.922 INFO    ] Checking for existing commands in stream...
[2026-06-12 11:39:38,989.989 INFO    ] No existing commands found in stream
[2026-06-12 11:39:44,003.003 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 11:39:44,006.006 INFO    ] Waiting 2.01 seconds before fallback handling...
[2026-06-12 11:39:46,403.403 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 11:39:46,405.405 INFO    ] Checking for system updates...
[2026-06-12 11:39:46,429.429 INFO    ] 200
[2026-06-12 11:39:46,431.431 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:39:46,464.464 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 11:39:46,465.465 INFO    ] No update needed
[2026-06-12 11:39:46,467.467 INFO    ] Checking for camera pi updates...
[2026-06-12 11:39:46,487.487 INFO    ] 200
[2026-06-12 11:39:46,488.488 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:39:46,512.512 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 11:39:46,556.556 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 11:39:46,557.557 INFO    ] No camera update needed
[2026-06-12 11:39:46,559.559 INFO    ] Script finished. Safe exiting...
[2026-06-12 11:39:46,560.560 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 11:39:46,563.563 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 11:39:46,566.566 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 11:39:48,606.606 INFO    ] ================================================
[2026-06-12 11:39:48,621.621 INFO    ] Launching Daemon at Fri Jun 12 11:39:48 IST 2026
[2026-06-12 11:39:48,631.631 INFO    ] ================================================
[2026-06-12 11:39:48,962.962 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 11:39:48
[2026-06-12 11:39:49,279.279 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 11:39:49,412.412 INFO    ] Initializing speech engine...
[2026-06-12 11:39:49,417.417 INFO    ] 2026-06-12 11:39:49
[2026-06-12 11:39:49,644.644 INFO    ] 2026-06-12 11:39:49
[2026-06-12 11:39:49,675.675 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 11:39:49,805.805 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 11:39:49,844.844 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 11:39:50,023.023 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 11:39:50,094.094 INFO    ] time= 12/06/2026 11:39:50
[2026-06-12 11:39:50,120.120 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 11:39:50,127.127 INFO    ] Checking for existing commands in stream...
[2026-06-12 11:39:50,223.223 INFO    ] No existing commands found in stream
[2026-06-12 11:39:55,232.232 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 11:39:55,235.235 INFO    ] Waiting 2.40 seconds before fallback handling...
[2026-06-12 11:39:57,999.999 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 11:39:58,001.001 INFO    ] Checking for system updates...
[2026-06-12 11:39:58,029.029 INFO    ] 200
[2026-06-12 11:39:58,030.030 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:39:58,063.063 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 11:39:58,064.064 INFO    ] No update needed
[2026-06-12 11:39:58,065.065 INFO    ] Checking for camera pi updates...
[2026-06-12 11:39:58,088.088 INFO    ] 200
[2026-06-12 11:39:58,090.090 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:39:58,115.115 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 11:39:58,139.139 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 11:39:58,141.141 INFO    ] No camera update needed
[2026-06-12 11:39:58,142.142 INFO    ] Script finished. Safe exiting...
[2026-06-12 11:39:58,143.143 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 11:39:58,147.147 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 11:39:58,150.150 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 11:40:00,191.191 INFO    ] ================================================
[2026-06-12 11:40:00,206.206 INFO    ] Launching Daemon at Fri Jun 12 11:40:00 IST 2026
[2026-06-12 11:40:00,217.217 INFO    ] ================================================
[2026-06-12 11:40:00,564.564 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 11:40:00
[2026-06-12 11:40:00,876.876 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 11:40:01,018.018 INFO    ] Initializing speech engine...
[2026-06-12 11:40:01,023.023 INFO    ] 2026-06-12 11:40:01
[2026-06-12 11:40:01,226.226 INFO    ] 2026-06-12 11:40:01
[2026-06-12 11:40:01,255.255 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 11:40:01,439.439 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 11:40:01,448.448 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 11:40:01,578.578 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 11:40:01,645.645 INFO    ] time= 12/06/2026 11:40:01
[2026-06-12 11:40:01,669.669 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 11:40:01,671.671 INFO    ] Checking for existing commands in stream...
[2026-06-12 11:40:01,765.765 INFO    ] No existing commands found in stream
[2026-06-12 11:40:06,774.774 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 11:40:06,777.777 INFO    ] Waiting 1.68 seconds before fallback handling...
[2026-06-12 11:40:08,851.851 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 11:40:08,852.852 INFO    ] Checking for system updates...
[2026-06-12 11:40:08,873.873 INFO    ] 200
[2026-06-12 11:40:08,874.874 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:40:08,905.905 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 11:40:08,907.907 INFO    ] No update needed
[2026-06-12 11:40:08,908.908 INFO    ] Checking for camera pi updates...
[2026-06-12 11:40:08,930.930 INFO    ] 200
[2026-06-12 11:40:08,931.931 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:40:08,954.954 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 11:40:08,993.993 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 11:40:08,995.995 INFO    ] No camera update needed
[2026-06-12 11:40:08,996.996 INFO    ] Script finished. Safe exiting...
[2026-06-12 11:40:08,997.997 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 11:40:09,000.000 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 11:40:09,003.003 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 11:40:11,042.042 INFO    ] ================================================
[2026-06-12 11:40:11,057.057 INFO    ] Launching Daemon at Fri Jun 12 11:40:11 IST 2026
[2026-06-12 11:40:11,068.068 INFO    ] ================================================
[2026-06-12 11:40:11,420.420 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 11:40:11
[2026-06-12 11:40:11,754.754 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 11:40:11,903.903 INFO    ] Initializing speech engine...
[2026-06-12 11:40:11,909.909 INFO    ] 2026-06-12 11:40:11
[2026-06-12 11:40:12,113.113 INFO    ] 2026-06-12 11:40:12
[2026-06-12 11:40:12,143.143 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 11:40:12,325.325 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 11:40:12,335.335 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 11:40:12,490.490 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 11:40:12,549.549 INFO    ] time= 12/06/2026 11:40:12
[2026-06-12 11:40:12,555.555 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 11:40:12,561.561 INFO    ] Checking for existing commands in stream...
[2026-06-12 11:40:12,651.651 INFO    ] No existing commands found in stream
[2026-06-12 11:40:17,666.666 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 11:40:17,669.669 INFO    ] Waiting 0.64 seconds before fallback handling...
[2026-06-12 11:40:18,701.701 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 11:40:18,702.702 INFO    ] Checking for system updates...
[2026-06-12 11:40:18,723.723 INFO    ] 200
[2026-06-12 11:40:18,724.724 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:40:18,757.757 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 11:40:18,759.759 INFO    ] No update needed
[2026-06-12 11:40:18,760.760 INFO    ] Checking for camera pi updates...
[2026-06-12 11:40:18,781.781 INFO    ] 200
[2026-06-12 11:40:18,782.782 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:40:18,806.806 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 11:40:18,846.846 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 11:40:18,848.848 INFO    ] No camera update needed
[2026-06-12 11:40:18,850.850 INFO    ] Script finished. Safe exiting...
[2026-06-12 11:40:18,851.851 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 11:40:18,854.854 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 11:40:18,857.857 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 11:40:20,896.896 INFO    ] ================================================
[2026-06-12 11:40:20,911.911 INFO    ] Launching Daemon at Fri Jun 12 11:40:20 IST 2026
[2026-06-12 11:40:20,922.922 INFO    ] ================================================
[2026-06-12 11:40:21,244.244 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 11:40:21
[2026-06-12 11:40:21,557.557 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 11:40:21,694.694 INFO    ] Initializing speech engine...
[2026-06-12 11:40:21,705.705 INFO    ] 2026-06-12 11:40:21
[2026-06-12 11:40:21,906.906 INFO    ] 2026-06-12 11:40:21
[2026-06-12 11:40:21,935.935 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 11:40:22,119.119 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 11:40:22,129.129 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 11:40:22,256.256 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 11:40:22,315.315 INFO    ] time= 12/06/2026 11:40:22
[2026-06-12 11:40:22,347.347 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 11:40:22,353.353 INFO    ] Checking for existing commands in stream...
[2026-06-12 11:40:22,443.443 INFO    ] No existing commands found in stream
[2026-06-12 11:40:27,452.452 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 11:40:27,455.455 INFO    ] Waiting 1.96 seconds before fallback handling...
[2026-06-12 11:40:29,855.855 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 11:40:29,857.857 INFO    ] Checking for system updates...
[2026-06-12 11:40:29,877.877 INFO    ] 200
[2026-06-12 11:40:29,878.878 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:40:29,910.910 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 11:40:29,912.912 INFO    ] No update needed
[2026-06-12 11:40:29,913.913 INFO    ] Checking for camera pi updates...
[2026-06-12 11:40:29,932.932 INFO    ] 200
[2026-06-12 11:40:29,933.933 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:40:29,959.959 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 11:40:29,994.994 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 11:40:29,996.996 INFO    ] No camera update needed
[2026-06-12 11:40:29,997.997 INFO    ] Script finished. Safe exiting...
[2026-06-12 11:40:29,998.998 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 11:40:30,001.001 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 11:40:30,004.004 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 11:40:32,043.043 INFO    ] ================================================
[2026-06-12 11:40:32,059.059 INFO    ] Launching Daemon at Fri Jun 12 11:40:32 IST 2026
[2026-06-12 11:40:32,070.070 INFO    ] ================================================
[2026-06-12 11:40:32,432.432 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 11:40:32
[2026-06-12 11:40:32,771.771 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 11:40:32,925.925 INFO    ] Initializing speech engine...
[2026-06-12 11:40:32,937.937 INFO    ] 2026-06-12 11:40:32
[2026-06-12 11:40:33,134.134 INFO    ] 2026-06-12 11:40:33
[2026-06-12 11:40:33,163.163 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 11:40:33,349.349 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 11:40:33,374.374 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 11:40:33,510.510 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 11:40:33,578.578 INFO    ] time= 12/06/2026 11:40:33
[2026-06-12 11:40:33,602.602 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 11:40:33,609.609 INFO    ] Checking for existing commands in stream...
[2026-06-12 11:40:33,676.676 INFO    ] No existing commands found in stream
[2026-06-12 11:40:38,690.690 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 11:40:38,693.693 INFO    ] Waiting 3.49 seconds before fallback handling...
[2026-06-12 11:40:42,575.575 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 11:40:42,577.577 INFO    ] Checking for system updates...
[2026-06-12 11:40:42,601.601 INFO    ] 200
[2026-06-12 11:40:42,603.603 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:40:42,633.633 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 11:40:42,634.634 INFO    ] No update needed
[2026-06-12 11:40:42,635.635 INFO    ] Checking for camera pi updates...
[2026-06-12 11:40:42,655.655 INFO    ] 200
[2026-06-12 11:40:42,656.656 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:40:42,680.680 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 11:40:42,716.716 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 11:40:42,717.717 INFO    ] No camera update needed
[2026-06-12 11:40:42,719.719 INFO    ] Script finished. Safe exiting...
[2026-06-12 11:40:42,720.720 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 11:40:42,723.723 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 11:40:42,726.726 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 11:40:44,766.766 INFO    ] ================================================
[2026-06-12 11:40:44,782.782 INFO    ] Launching Daemon at Fri Jun 12 11:40:44 IST 2026
[2026-06-12 11:40:44,793.793 INFO    ] ================================================
[2026-06-12 11:40:45,158.158 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 11:40:45
[2026-06-12 11:40:45,470.470 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 11:40:45,613.613 INFO    ] Initializing speech engine...
[2026-06-12 11:40:45,623.623 INFO    ] 2026-06-12 11:40:45
[2026-06-12 11:40:45,838.838 INFO    ] 2026-06-12 11:40:45
[2026-06-12 11:40:45,868.868 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 11:40:46,066.066 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 11:40:46,075.075 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 11:40:46,207.207 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 11:40:46,253.253 INFO    ] time= 12/06/2026 11:40:46
[2026-06-12 11:40:46,290.290 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 11:40:46,314.314 INFO    ] Checking for existing commands in stream...
[2026-06-12 11:40:46,389.389 INFO    ] No existing commands found in stream
[2026-06-12 11:40:51,400.400 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 11:40:51,403.403 INFO    ] Waiting 2.19 seconds before fallback handling...
[2026-06-12 11:40:53,972.972 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 11:40:53,973.973 INFO    ] Checking for system updates...
[2026-06-12 11:40:53,996.996 INFO    ] 200
[2026-06-12 11:40:53,997.997 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:40:54,027.027 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 11:40:54,028.028 INFO    ] No update needed
[2026-06-12 11:40:54,030.030 INFO    ] Checking for camera pi updates...
[2026-06-12 11:40:54,049.049 INFO    ] 200
[2026-06-12 11:40:54,051.051 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:40:54,075.075 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 11:40:54,219.219 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 11:40:54,221.221 INFO    ] No camera update needed
[2026-06-12 11:40:54,222.222 INFO    ] Script finished. Safe exiting...
[2026-06-12 11:40:54,224.224 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 11:40:54,227.227 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 11:40:54,230.230 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 11:40:56,269.269 INFO    ] ================================================
[2026-06-12 11:40:56,285.285 INFO    ] Launching Daemon at Fri Jun 12 11:40:56 IST 2026
[2026-06-12 11:40:56,296.296 INFO    ] ================================================
[2026-06-12 11:40:56,653.653 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 11:40:56
[2026-06-12 11:40:56,969.969 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 11:40:57,113.113 INFO    ] Initializing speech engine...
[2026-06-12 11:40:57,118.118 INFO    ] 2026-06-12 11:40:57
[2026-06-12 11:40:57,320.320 INFO    ] 2026-06-12 11:40:57
[2026-06-12 11:40:57,349.349 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 11:40:57,488.488 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 11:40:57,536.536 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 11:40:57,688.688 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 11:40:57,741.741 INFO    ] time= 12/06/2026 11:40:57
[2026-06-12 11:40:57,764.764 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 11:40:57,770.770 INFO    ] Checking for existing commands in stream...
[2026-06-12 11:40:57,837.837 INFO    ] No existing commands found in stream
[2026-06-12 11:41:02,850.850 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 11:41:02,851.851 INFO    ] Waiting 3.92 seconds before fallback handling...
[2026-06-12 11:41:07,113.113 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 11:41:07,115.115 INFO    ] Checking for system updates...
[2026-06-12 11:41:07,135.135 INFO    ] 200
[2026-06-12 11:41:07,137.137 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:41:07,166.166 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 11:41:07,168.168 INFO    ] No update needed
[2026-06-12 11:41:07,169.169 INFO    ] Checking for camera pi updates...
[2026-06-12 11:41:07,188.188 INFO    ] 200
[2026-06-12 11:41:07,190.190 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:41:07,213.213 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 11:41:07,253.253 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 11:41:07,255.255 INFO    ] No camera update needed
[2026-06-12 11:41:07,256.256 INFO    ] Script finished. Safe exiting...
[2026-06-12 11:41:07,257.257 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 11:41:07,260.260 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 11:41:07,263.263 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 11:41:09,301.301 INFO    ] ================================================
[2026-06-12 11:41:09,317.317 INFO    ] Launching Daemon at Fri Jun 12 11:41:09 IST 2026
[2026-06-12 11:41:09,328.328 INFO    ] ================================================
[2026-06-12 11:41:09,678.678 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 11:41:09
[2026-06-12 11:41:10,008.008 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 11:41:10,155.155 INFO    ] Initializing speech engine...
[2026-06-12 11:41:10,162.162 INFO    ] 2026-06-12 11:41:10
[2026-06-12 11:41:10,366.366 INFO    ] 2026-06-12 11:41:10
[2026-06-12 11:41:10,395.395 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 11:41:10,576.576 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 11:41:10,580.580 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 11:41:10,716.716 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 11:41:10,775.775 INFO    ] time= 12/06/2026 11:41:10
[2026-06-12 11:41:10,806.806 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 11:41:10,813.813 INFO    ] Checking for existing commands in stream...
[2026-06-12 11:41:10,880.880 INFO    ] No existing commands found in stream
[2026-06-12 11:41:15,909.909 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 11:41:15,912.912 INFO    ] Waiting 1.40 seconds before fallback handling...
[2026-06-12 11:41:17,706.706 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 11:41:17,708.708 INFO    ] Checking for system updates...
[2026-06-12 11:41:17,729.729 INFO    ] 200
[2026-06-12 11:41:17,730.730 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:41:17,761.761 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 11:41:17,762.762 INFO    ] No update needed
[2026-06-12 11:41:17,764.764 INFO    ] Checking for camera pi updates...
[2026-06-12 11:41:17,783.783 INFO    ] 200
[2026-06-12 11:41:17,785.785 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:41:17,808.808 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 11:41:17,854.854 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 11:41:17,855.855 INFO    ] No camera update needed
[2026-06-12 11:41:17,857.857 INFO    ] Script finished. Safe exiting...
[2026-06-12 11:41:17,858.858 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 11:41:17,861.861 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 11:41:17,864.864 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 11:41:19,902.902 INFO    ] ================================================
[2026-06-12 11:41:19,918.918 INFO    ] Launching Daemon at Fri Jun 12 11:41:19 IST 2026
[2026-06-12 11:41:19,929.929 INFO    ] ================================================
[2026-06-12 11:41:20,277.277 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 11:41:20
[2026-06-12 11:41:20,607.607 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 11:41:20,758.758 INFO    ] Initializing speech engine...
[2026-06-12 11:41:20,764.764 INFO    ] 2026-06-12 11:41:20
[2026-06-12 11:41:20,972.972 INFO    ] 2026-06-12 11:41:20
[2026-06-12 11:41:21,001.001 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 11:41:21,190.190 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 11:41:21,199.199 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 11:41:21,347.347 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 11:41:21,403.403 INFO    ] time= 12/06/2026 11:41:21
[2026-06-12 11:41:21,424.424 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 11:41:21,430.430 INFO    ] Checking for existing commands in stream...
[2026-06-12 11:41:21,499.499 INFO    ] No existing commands found in stream
[2026-06-12 11:41:26,509.509 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 11:41:26,512.512 INFO    ] Waiting 3.08 seconds before fallback handling...
[2026-06-12 11:41:29,974.974 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 11:41:29,976.976 INFO    ] Checking for system updates...
[2026-06-12 11:41:29,996.996 INFO    ] 200
[2026-06-12 11:41:29,998.998 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:41:30,030.030 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 11:41:30,031.031 INFO    ] No update needed
[2026-06-12 11:41:30,033.033 INFO    ] Checking for camera pi updates...
[2026-06-12 11:41:30,053.053 INFO    ] 200
[2026-06-12 11:41:30,054.054 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:41:30,077.077 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 11:41:30,113.113 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 11:41:30,114.114 INFO    ] No camera update needed
[2026-06-12 11:41:30,116.116 INFO    ] Script finished. Safe exiting...
[2026-06-12 11:41:30,117.117 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 11:41:30,120.120 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 11:41:30,123.123 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 11:41:32,154.154 INFO    ] ================================================
[2026-06-12 11:41:32,163.163 INFO    ] Launching Daemon at Fri Jun 12 11:41:32 IST 2026
[2026-06-12 11:41:32,170.170 INFO    ] ================================================
[2026-06-12 11:41:32,498.498 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 11:41:32
[2026-06-12 11:41:32,815.815 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 11:41:32,957.957 INFO    ] Initializing speech engine...
[2026-06-12 11:41:32,968.968 INFO    ] 2026-06-12 11:41:32
[2026-06-12 11:41:33,179.179 INFO    ] 2026-06-12 11:41:33
[2026-06-12 11:41:33,209.209 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 11:41:33,362.362 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 11:41:33,374.374 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 11:41:33,484.484 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 11:41:33,521.521 INFO    ] time= 12/06/2026 11:41:33
[2026-06-12 11:41:33,547.547 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 11:41:33,609.609 INFO    ] Checking for existing commands in stream...
[2026-06-12 11:41:33,725.725 INFO    ] No existing commands found in stream
[2026-06-12 11:41:38,734.734 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 11:41:38,737.737 INFO    ] Waiting 0.28 seconds before fallback handling...
[2026-06-12 11:41:39,416.416 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 11:41:39,418.418 INFO    ] Checking for system updates...
[2026-06-12 11:41:39,438.438 INFO    ] 200
[2026-06-12 11:41:39,440.440 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:41:39,470.470 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 11:41:39,471.471 INFO    ] No update needed
[2026-06-12 11:41:39,473.473 INFO    ] Checking for camera pi updates...
[2026-06-12 11:41:39,493.493 INFO    ] 200
[2026-06-12 11:41:39,495.495 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:41:39,518.518 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 11:41:39,561.561 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 11:41:39,562.562 INFO    ] No camera update needed
[2026-06-12 11:41:39,564.564 INFO    ] Script finished. Safe exiting...
[2026-06-12 11:41:39,565.565 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 11:41:39,568.568 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 11:41:39,571.571 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 11:41:41,611.611 INFO    ] ================================================
[2026-06-12 11:41:41,626.626 INFO    ] Launching Daemon at Fri Jun 12 11:41:41 IST 2026
[2026-06-12 11:41:41,636.636 INFO    ] ================================================
[2026-06-12 11:41:41,994.994 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 11:41:41
[2026-06-12 11:41:42,308.308 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 11:41:42,452.452 INFO    ] Initializing speech engine...
[2026-06-12 11:41:42,457.457 INFO    ] 2026-06-12 11:41:42
[2026-06-12 11:41:42,659.659 INFO    ] 2026-06-12 11:41:42
[2026-06-12 11:41:42,689.689 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 11:41:42,871.871 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 11:41:42,879.879 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 11:41:43,004.004 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 11:41:43,062.062 INFO    ] time= 12/06/2026 11:41:43
[2026-06-12 11:41:43,095.095 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 11:41:43,100.100 INFO    ] Checking for existing commands in stream...
[2026-06-12 11:41:43,195.195 INFO    ] No existing commands found in stream
[2026-06-12 11:41:48,209.209 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 11:41:48,212.212 INFO    ] Waiting 3.73 seconds before fallback handling...
[2026-06-12 11:41:52,322.322 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 11:41:52,324.324 INFO    ] Checking for system updates...
[2026-06-12 11:41:52,345.345 INFO    ] 200
[2026-06-12 11:41:52,347.347 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:41:52,377.377 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 11:41:52,378.378 INFO    ] No update needed
[2026-06-12 11:41:52,379.379 INFO    ] Checking for camera pi updates...
[2026-06-12 11:41:52,399.399 INFO    ] 200
[2026-06-12 11:41:52,400.400 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:41:52,423.423 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 11:41:52,462.462 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 11:41:52,464.464 INFO    ] No camera update needed
[2026-06-12 11:41:52,465.465 INFO    ] Script finished. Safe exiting...
[2026-06-12 11:41:52,466.466 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 11:41:52,469.469 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 11:41:52,472.472 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 11:41:54,512.512 INFO    ] ================================================
[2026-06-12 11:41:54,527.527 INFO    ] Launching Daemon at Fri Jun 12 11:41:54 IST 2026
[2026-06-12 11:41:54,538.538 INFO    ] ================================================
[2026-06-12 11:41:54,884.884 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 11:41:54
[2026-06-12 11:41:55,199.199 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 11:41:55,340.340 INFO    ] Initializing speech engine...
[2026-06-12 11:41:55,347.347 INFO    ] 2026-06-12 11:41:55
[2026-06-12 11:41:55,564.564 INFO    ] 2026-06-12 11:41:55
[2026-06-12 11:41:55,594.594 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 11:41:55,784.784 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 11:41:55,792.792 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 11:41:55,927.927 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 11:41:55,984.984 INFO    ] time= 12/06/2026 11:41:55
[2026-06-12 11:41:56,016.016 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 11:41:56,033.033 INFO    ] Checking for existing commands in stream...
[2026-06-12 11:41:56,108.108 INFO    ] No existing commands found in stream
[2026-06-12 11:42:01,117.117 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 11:42:01,120.120 INFO    ] Waiting 0.28 seconds before fallback handling...
[2026-06-12 11:42:01,801.801 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 11:42:01,809.809 INFO    ] Checking for system updates...
[2026-06-12 11:42:01,841.841 INFO    ] 200
[2026-06-12 11:42:01,844.844 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:42:01,914.914 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 11:42:01,916.916 INFO    ] No update needed
[2026-06-12 11:42:01,918.918 INFO    ] Checking for camera pi updates...
[2026-06-12 11:42:01,954.954 INFO    ] 200
[2026-06-12 11:42:01,956.956 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:42:01,993.993 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 11:42:02,020.020 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 11:42:02,022.022 INFO    ] No camera update needed
[2026-06-12 11:42:02,024.024 INFO    ] Script finished. Safe exiting...
[2026-06-12 11:42:02,026.026 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 11:42:02,030.030 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 11:42:02,033.033 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 11:42:04,073.073 INFO    ] ================================================
[2026-06-12 11:42:04,088.088 INFO    ] Launching Daemon at Fri Jun 12 11:42:04 IST 2026
[2026-06-12 11:42:04,099.099 INFO    ] ================================================
[2026-06-12 11:42:04,480.480 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 11:42:04
[2026-06-12 11:42:04,811.811 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 11:42:04,958.958 INFO    ] Initializing speech engine...
[2026-06-12 11:42:04,964.964 INFO    ] 2026-06-12 11:42:04
[2026-06-12 11:42:05,171.171 INFO    ] 2026-06-12 11:42:05
[2026-06-12 11:42:05,200.200 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 11:42:05,383.383 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 11:42:05,392.392 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 11:42:05,532.532 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 11:42:05,588.588 INFO    ] time= 12/06/2026 11:42:05
[2026-06-12 11:42:05,612.612 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 11:42:05,618.618 INFO    ] Checking for existing commands in stream...
[2026-06-12 11:42:05,685.685 INFO    ] No existing commands found in stream
[2026-06-12 11:42:10,692.692 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 11:42:10,695.695 INFO    ] Waiting 3.33 seconds before fallback handling...
[2026-06-12 11:42:14,383.383 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 11:42:14,384.384 INFO    ] Checking for system updates...
[2026-06-12 11:42:14,405.405 INFO    ] 200
[2026-06-12 11:42:14,406.406 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:42:14,436.436 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 11:42:14,438.438 INFO    ] No update needed
[2026-06-12 11:42:14,439.439 INFO    ] Checking for camera pi updates...
[2026-06-12 11:42:14,459.459 INFO    ] 200
[2026-06-12 11:42:14,460.460 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:42:14,484.484 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 11:42:14,522.522 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 11:42:14,524.524 INFO    ] No camera update needed
[2026-06-12 11:42:14,525.525 INFO    ] Script finished. Safe exiting...
[2026-06-12 11:42:14,526.526 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 11:42:14,530.530 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 11:42:14,533.533 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 11:42:16,571.571 INFO    ] ================================================
[2026-06-12 11:42:16,586.586 INFO    ] Launching Daemon at Fri Jun 12 11:42:16 IST 2026
[2026-06-12 11:42:16,596.596 INFO    ] ================================================
[2026-06-12 11:42:16,950.950 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 11:42:16
[2026-06-12 11:42:17,280.280 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 11:42:17,427.427 INFO    ] Initializing speech engine...
[2026-06-12 11:42:17,432.432 INFO    ] 2026-06-12 11:42:17
[2026-06-12 11:42:17,639.639 INFO    ] 2026-06-12 11:42:17
[2026-06-12 11:42:17,667.667 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 11:42:17,850.850 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 11:42:17,860.860 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 11:42:18,006.006 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 11:42:18,060.060 INFO    ] time= 12/06/2026 11:42:18
[2026-06-12 11:42:18,081.081 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 11:42:18,088.088 INFO    ] Checking for existing commands in stream...
[2026-06-12 11:42:18,155.155 INFO    ] No existing commands found in stream
[2026-06-12 11:42:23,169.169 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 11:42:23,173.173 INFO    ] Waiting 0.52 seconds before fallback handling...
[2026-06-12 11:42:24,057.057 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 11:42:24,059.059 INFO    ] Checking for system updates...
[2026-06-12 11:42:24,080.080 INFO    ] 200
[2026-06-12 11:42:24,081.081 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:42:24,111.111 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 11:42:24,112.112 INFO    ] No update needed
[2026-06-12 11:42:24,114.114 INFO    ] Checking for camera pi updates...
[2026-06-12 11:42:24,135.135 INFO    ] 200
[2026-06-12 11:42:24,136.136 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:42:24,159.159 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 11:42:24,201.201 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 11:42:24,202.202 INFO    ] No camera update needed
[2026-06-12 11:42:24,203.203 INFO    ] Script finished. Safe exiting...
[2026-06-12 11:42:24,204.204 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 11:42:24,207.207 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 11:42:24,210.210 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 11:42:26,248.248 INFO    ] ================================================
[2026-06-12 11:42:26,263.263 INFO    ] Launching Daemon at Fri Jun 12 11:42:26 IST 2026
[2026-06-12 11:42:26,273.273 INFO    ] ================================================
[2026-06-12 11:42:26,613.613 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 11:42:26
[2026-06-12 11:42:26,923.923 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 11:42:27,051.051 INFO    ] Initializing speech engine...
[2026-06-12 11:42:27,055.055 INFO    ] 2026-06-12 11:42:27
[2026-06-12 11:42:27,268.268 INFO    ] 2026-06-12 11:42:27
[2026-06-12 11:42:27,298.298 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 11:42:27,480.480 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 11:42:27,488.488 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 11:42:27,628.628 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 11:42:27,685.685 INFO    ] time= 12/06/2026 11:42:27
[2026-06-12 11:42:27,708.708 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 11:42:27,714.714 INFO    ] Checking for existing commands in stream...
[2026-06-12 11:42:27,778.778 INFO    ] No existing commands found in stream
[2026-06-12 11:42:32,789.789 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 11:42:32,792.792 INFO    ] Waiting 2.45 seconds before fallback handling...
[2026-06-12 11:42:35,630.630 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 11:42:35,631.631 INFO    ] Checking for system updates...
[2026-06-12 11:42:35,651.651 INFO    ] 200
[2026-06-12 11:42:35,653.653 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:42:35,684.684 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 11:42:35,686.686 INFO    ] No update needed
[2026-06-12 11:42:35,687.687 INFO    ] Checking for camera pi updates...
[2026-06-12 11:42:35,707.707 INFO    ] 200
[2026-06-12 11:42:35,708.708 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:42:35,732.732 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 11:42:35,777.777 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 11:42:35,778.778 INFO    ] No camera update needed
[2026-06-12 11:42:35,780.780 INFO    ] Script finished. Safe exiting...
[2026-06-12 11:42:35,781.781 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 11:42:35,784.784 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 11:42:35,787.787 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 11:42:37,826.826 INFO    ] ================================================
[2026-06-12 11:42:37,841.841 INFO    ] Launching Daemon at Fri Jun 12 11:42:37 IST 2026
[2026-06-12 11:42:37,853.853 INFO    ] ================================================
[2026-06-12 11:42:38,214.214 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 11:42:38
[2026-06-12 11:42:38,525.525 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 11:42:38,657.657 INFO    ] Initializing speech engine...
[2026-06-12 11:42:38,670.670 INFO    ] 2026-06-12 11:42:38
[2026-06-12 11:42:38,876.876 INFO    ] 2026-06-12 11:42:38
[2026-06-12 11:42:38,905.905 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 11:42:39,085.085 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 11:42:39,089.089 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 11:42:39,220.220 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 11:42:39,283.283 INFO    ] time= 12/06/2026 11:42:39
[2026-06-12 11:42:39,314.314 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 11:42:39,316.316 INFO    ] Checking for existing commands in stream...
[2026-06-12 11:42:39,386.386 INFO    ] No existing commands found in stream
[2026-06-12 11:42:44,418.418 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 11:42:44,422.422 INFO    ] Waiting 2.63 seconds before fallback handling...
[2026-06-12 11:42:48,483.483 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 11:42:48,484.484 INFO    ] Checking for system updates...
[2026-06-12 11:42:48,505.505 INFO    ] 200
[2026-06-12 11:42:48,506.506 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:42:48,536.536 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 11:42:48,537.537 INFO    ] No update needed
[2026-06-12 11:42:48,538.538 INFO    ] Checking for camera pi updates...
[2026-06-12 11:42:48,557.557 INFO    ] 200
[2026-06-12 11:42:48,559.559 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:42:48,583.583 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 11:42:48,619.619 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 11:42:48,621.621 INFO    ] No camera update needed
[2026-06-12 11:42:48,622.622 INFO    ] Script finished. Safe exiting...
[2026-06-12 11:42:48,623.623 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 11:42:48,626.626 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 11:42:48,629.629 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 11:42:50,668.668 INFO    ] ================================================
[2026-06-12 11:42:50,683.683 INFO    ] Launching Daemon at Fri Jun 12 11:42:50 IST 2026
[2026-06-12 11:42:50,694.694 INFO    ] ================================================
[2026-06-12 11:42:51,028.028 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 11:42:51
[2026-06-12 11:42:51,344.344 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 11:42:51,487.487 INFO    ] Initializing speech engine...
[2026-06-12 11:42:51,492.492 INFO    ] 2026-06-12 11:42:51
[2026-06-12 11:42:51,700.700 INFO    ] 2026-06-12 11:42:51
[2026-06-12 11:42:51,728.728 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 11:42:51,911.911 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 11:42:51,921.921 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 11:42:52,054.054 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 11:42:52,118.118 INFO    ] time= 12/06/2026 11:42:52
[2026-06-12 11:42:52,145.145 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 11:42:52,151.151 INFO    ] Checking for existing commands in stream...
[2026-06-12 11:42:52,218.218 INFO    ] No existing commands found in stream
[2026-06-12 11:42:57,232.232 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 11:42:57,235.235 INFO    ] Waiting 3.68 seconds before fallback handling...
[2026-06-12 11:43:01,330.330 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 11:43:01,333.333 INFO    ] Checking for system updates...
[2026-06-12 11:43:01,370.370 INFO    ] 200
[2026-06-12 11:43:01,373.373 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:43:01,427.427 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 11:43:01,430.430 INFO    ] No update needed
[2026-06-12 11:43:01,432.432 INFO    ] Checking for camera pi updates...
[2026-06-12 11:43:01,464.464 INFO    ] 200
[2026-06-12 11:43:01,466.466 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:43:01,490.490 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 11:43:01,641.641 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 11:43:01,643.643 INFO    ] No camera update needed
[2026-06-12 11:43:01,644.644 INFO    ] Script finished. Safe exiting...
[2026-06-12 11:43:01,646.646 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 11:43:01,649.649 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 11:43:01,652.652 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 11:43:03,678.678 INFO    ] ================================================
[2026-06-12 11:43:03,690.690 INFO    ] Launching Daemon at Fri Jun 12 11:43:03 IST 2026
[2026-06-12 11:43:03,701.701 INFO    ] ================================================
[2026-06-12 11:43:04,042.042 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 11:43:04
[2026-06-12 11:43:04,374.374 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 11:43:04,522.522 INFO    ] Initializing speech engine...
[2026-06-12 11:43:04,528.528 INFO    ] 2026-06-12 11:43:04
[2026-06-12 11:43:04,735.735 INFO    ] 2026-06-12 11:43:04
[2026-06-12 11:43:04,763.763 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 11:43:04,899.899 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 11:43:04,951.951 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 11:43:05,085.085 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 11:43:05,147.147 INFO    ] time= 12/06/2026 11:43:05
[2026-06-12 11:43:05,178.178 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 11:43:05,185.185 INFO    ] Checking for existing commands in stream...
[2026-06-12 11:43:05,267.267 INFO    ] No existing commands found in stream
[2026-06-12 11:43:10,276.276 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 11:43:10,279.279 INFO    ] Waiting 1.29 seconds before fallback handling...
[2026-06-12 11:43:12,972.972 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 11:43:12,974.974 INFO    ] Checking for system updates...
[2026-06-12 11:43:13,000.000 INFO    ] 200
[2026-06-12 11:43:13,001.001 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:43:13,032.032 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 11:43:13,033.033 INFO    ] No update needed
[2026-06-12 11:43:13,035.035 INFO    ] Checking for camera pi updates...
[2026-06-12 11:43:13,054.054 INFO    ] 200
[2026-06-12 11:43:13,056.056 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:43:13,083.083 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 11:43:13,117.117 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 11:43:13,118.118 INFO    ] No camera update needed
[2026-06-12 11:43:13,120.120 INFO    ] Script finished. Safe exiting...
[2026-06-12 11:43:13,121.121 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 11:43:13,124.124 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 11:43:13,127.127 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 11:43:15,165.165 INFO    ] ================================================
[2026-06-12 11:43:15,180.180 INFO    ] Launching Daemon at Fri Jun 12 11:43:15 IST 2026
[2026-06-12 11:43:15,191.191 INFO    ] ================================================
[2026-06-12 11:43:15,558.558 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 11:43:15
[2026-06-12 11:43:15,873.873 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 11:43:16,002.002 INFO    ] Initializing speech engine...
[2026-06-12 11:43:16,007.007 INFO    ] 2026-06-12 11:43:16
[2026-06-12 11:43:16,235.235 INFO    ] 2026-06-12 11:43:16
[2026-06-12 11:43:16,266.266 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 11:43:16,462.462 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 11:43:16,471.471 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 11:43:16,601.601 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 11:43:16,647.647 INFO    ] time= 12/06/2026 11:43:16
[2026-06-12 11:43:16,684.684 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 11:43:16,707.707 INFO    ] Checking for existing commands in stream...
[2026-06-12 11:43:16,784.784 INFO    ] No existing commands found in stream
[2026-06-12 11:43:21,793.793 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 11:43:21,795.795 INFO    ] Waiting 3.67 seconds before fallback handling...
[2026-06-12 11:43:25,870.870 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 11:43:25,872.872 INFO    ] Checking for system updates...
[2026-06-12 11:43:25,892.892 INFO    ] 200
[2026-06-12 11:43:25,893.893 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:43:25,924.924 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 11:43:25,926.926 INFO    ] No update needed
[2026-06-12 11:43:25,927.927 INFO    ] Checking for camera pi updates...
[2026-06-12 11:43:25,949.949 INFO    ] 200
[2026-06-12 11:43:25,950.950 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:43:25,976.976 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 11:43:26,013.013 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 11:43:26,014.014 INFO    ] No camera update needed
[2026-06-12 11:43:26,016.016 INFO    ] Script finished. Safe exiting...
[2026-06-12 11:43:26,017.017 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 11:43:26,020.020 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 11:43:26,023.023 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 11:43:28,062.062 INFO    ] ================================================
[2026-06-12 11:43:28,077.077 INFO    ] Launching Daemon at Fri Jun 12 11:43:28 IST 2026
[2026-06-12 11:43:28,088.088 INFO    ] ================================================
[2026-06-12 11:43:28,438.438 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 11:43:28
[2026-06-12 11:43:28,754.754 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 11:43:28,898.898 INFO    ] Initializing speech engine...
[2026-06-12 11:43:28,904.904 INFO    ] 2026-06-12 11:43:28
[2026-06-12 11:43:29,119.119 INFO    ] 2026-06-12 11:43:29
[2026-06-12 11:43:29,149.149 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 11:43:29,344.344 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 11:43:29,348.348 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 11:43:29,486.486 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 11:43:29,537.537 INFO    ] time= 12/06/2026 11:43:29
[2026-06-12 11:43:29,576.576 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 11:43:29,593.593 INFO    ] Checking for existing commands in stream...
[2026-06-12 11:43:29,669.669 INFO    ] No existing commands found in stream
[2026-06-12 11:43:34,678.678 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 11:43:34,681.681 INFO    ] Waiting 2.48 seconds before fallback handling...
[2026-06-12 11:43:37,547.547 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 11:43:37,549.549 INFO    ] Checking for system updates...
[2026-06-12 11:43:37,589.589 INFO    ] 200
[2026-06-12 11:43:37,592.592 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:43:37,646.646 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 11:43:37,649.649 INFO    ] No update needed
[2026-06-12 11:43:37,651.651 INFO    ] Checking for camera pi updates...
[2026-06-12 11:43:37,683.683 INFO    ] 200
[2026-06-12 11:43:37,685.685 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:43:37,707.707 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 11:43:37,733.733 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 11:43:37,734.734 INFO    ] No camera update needed
[2026-06-12 11:43:37,735.735 INFO    ] Script finished. Safe exiting...
[2026-06-12 11:43:37,737.737 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 11:43:37,741.741 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 11:43:37,743.743 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 11:43:39,783.783 INFO    ] ================================================
[2026-06-12 11:43:39,799.799 INFO    ] Launching Daemon at Fri Jun 12 11:43:39 IST 2026
[2026-06-12 11:43:39,810.810 INFO    ] ================================================
[2026-06-12 11:43:40,141.141 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 11:43:40
[2026-06-12 11:43:40,457.457 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 11:43:40,595.595 INFO    ] Initializing speech engine...
[2026-06-12 11:43:40,603.603 INFO    ] 2026-06-12 11:43:40
[2026-06-12 11:43:40,810.810 INFO    ] 2026-06-12 11:43:40
[2026-06-12 11:43:40,840.840 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 11:43:41,036.036 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 11:43:41,045.045 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 11:43:41,177.177 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 11:43:41,241.241 INFO    ] time= 12/06/2026 11:43:41
[2026-06-12 11:43:41,275.275 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 11:43:41,277.277 INFO    ] Checking for existing commands in stream...
[2026-06-12 11:43:41,348.348 INFO    ] No existing commands found in stream
[2026-06-12 11:43:46,358.358 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 11:43:46,361.361 INFO    ] Waiting 2.38 seconds before fallback handling...
[2026-06-12 11:43:49,122.122 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 11:43:49,123.123 INFO    ] Checking for system updates...
[2026-06-12 11:43:49,144.144 INFO    ] 200
[2026-06-12 11:43:49,145.145 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:43:49,178.178 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 11:43:49,180.180 INFO    ] No update needed
[2026-06-12 11:43:49,181.181 INFO    ] Checking for camera pi updates...
[2026-06-12 11:43:49,200.200 INFO    ] 200
[2026-06-12 11:43:49,202.202 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:43:49,225.225 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 11:43:49,265.265 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 11:43:49,267.267 INFO    ] No camera update needed
[2026-06-12 11:43:49,268.268 INFO    ] Script finished. Safe exiting...
[2026-06-12 11:43:49,269.269 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 11:43:49,272.272 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 11:43:49,275.275 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 11:43:51,315.315 INFO    ] ================================================
[2026-06-12 11:43:51,330.330 INFO    ] Launching Daemon at Fri Jun 12 11:43:51 IST 2026
[2026-06-12 11:43:51,341.341 INFO    ] ================================================
[2026-06-12 11:43:51,688.688 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 11:43:51
[2026-06-12 11:43:52,000.000 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 11:43:52,131.131 INFO    ] Initializing speech engine...
[2026-06-12 11:43:52,134.134 INFO    ] 2026-06-12 11:43:52
[2026-06-12 11:43:52,352.352 INFO    ] 2026-06-12 11:43:52
[2026-06-12 11:43:52,382.382 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 11:43:52,540.540 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 11:43:52,568.568 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 11:43:52,703.703 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 11:43:52,774.774 INFO    ] time= 12/06/2026 11:43:52
[2026-06-12 11:43:52,799.799 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 11:43:52,805.805 INFO    ] Checking for existing commands in stream...
[2026-06-12 11:43:52,896.896 INFO    ] No existing commands found in stream
[2026-06-12 11:43:57,905.905 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 11:43:57,908.908 INFO    ] Waiting 2.91 seconds before fallback handling...
[2026-06-12 11:44:01,228.228 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 11:44:01,232.232 INFO    ] Checking for system updates...
[2026-06-12 11:44:01,267.267 INFO    ] 200
[2026-06-12 11:44:01,269.269 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:44:01,311.311 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 11:44:01,313.313 INFO    ] No update needed
[2026-06-12 11:44:01,314.314 INFO    ] Checking for camera pi updates...
[2026-06-12 11:44:01,339.339 INFO    ] 200
[2026-06-12 11:44:01,341.341 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:44:01,371.371 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 11:44:01,413.413 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 11:44:01,415.415 INFO    ] No camera update needed
[2026-06-12 11:44:01,417.417 INFO    ] Script finished. Safe exiting...
[2026-06-12 11:44:01,419.419 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 11:44:01,424.424 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 11:44:01,428.428 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 11:44:03,469.469 INFO    ] ================================================
[2026-06-12 11:44:03,485.485 INFO    ] Launching Daemon at Fri Jun 12 11:44:03 IST 2026
[2026-06-12 11:44:03,496.496 INFO    ] ================================================
[2026-06-12 11:44:03,846.846 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 11:44:03
[2026-06-12 11:44:04,161.161 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 11:44:04,293.293 INFO    ] Initializing speech engine...
[2026-06-12 11:44:04,306.306 INFO    ] 2026-06-12 11:44:04
[2026-06-12 11:44:04,513.513 INFO    ] 2026-06-12 11:44:04
[2026-06-12 11:44:04,541.541 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 11:44:04,724.724 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 11:44:04,734.734 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 11:44:04,874.874 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 11:44:04,931.931 INFO    ] time= 12/06/2026 11:44:04
[2026-06-12 11:44:04,954.954 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 11:44:04,960.960 INFO    ] Checking for existing commands in stream...
[2026-06-12 11:44:05,026.026 INFO    ] No existing commands found in stream
[2026-06-12 11:44:10,032.032 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 11:44:10,035.035 INFO    ] Waiting 0.69 seconds before fallback handling...
[2026-06-12 11:44:11,064.064 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 11:44:11,066.066 INFO    ] Checking for system updates...
[2026-06-12 11:44:11,086.086 INFO    ] 200
[2026-06-12 11:44:11,087.087 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:44:11,119.119 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 11:44:11,121.121 INFO    ] No update needed
[2026-06-12 11:44:11,123.123 INFO    ] Checking for camera pi updates...
[2026-06-12 11:44:11,142.142 INFO    ] 200
[2026-06-12 11:44:11,143.143 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:44:11,166.166 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 11:44:11,213.213 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 11:44:11,214.214 INFO    ] No camera update needed
[2026-06-12 11:44:11,215.215 INFO    ] Script finished. Safe exiting...
[2026-06-12 11:44:11,216.216 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 11:44:11,219.219 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 11:44:11,222.222 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 11:44:13,261.261 INFO    ] ================================================
[2026-06-12 11:44:13,277.277 INFO    ] Launching Daemon at Fri Jun 12 11:44:13 IST 2026
[2026-06-12 11:44:13,288.288 INFO    ] ================================================
[2026-06-12 11:44:13,620.620 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 11:44:13
[2026-06-12 11:44:13,933.933 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 11:44:14,065.065 INFO    ] Initializing speech engine...
[2026-06-12 11:44:14,078.078 INFO    ] 2026-06-12 11:44:14
[2026-06-12 11:44:14,284.284 INFO    ] 2026-06-12 11:44:14
[2026-06-12 11:44:14,312.312 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 11:44:14,496.496 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 11:44:14,504.504 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 11:44:14,627.627 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 11:44:14,677.677 INFO    ] time= 12/06/2026 11:44:14
[2026-06-12 11:44:14,711.711 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 11:44:14,726.726 INFO    ] Checking for existing commands in stream...
[2026-06-12 11:44:14,797.797 INFO    ] No existing commands found in stream
[2026-06-12 11:44:19,806.806 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 11:44:19,809.809 INFO    ] Waiting 3.35 seconds before fallback handling...
[2026-06-12 11:44:23,520.520 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 11:44:23,522.522 INFO    ] Checking for system updates...
[2026-06-12 11:44:23,543.543 INFO    ] 200
[2026-06-12 11:44:23,544.544 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:44:23,574.574 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 11:44:23,575.575 INFO    ] No update needed
[2026-06-12 11:44:23,577.577 INFO    ] Checking for camera pi updates...
[2026-06-12 11:44:23,596.596 INFO    ] 200
[2026-06-12 11:44:23,597.597 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:44:23,622.622 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 11:44:23,661.661 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 11:44:23,663.663 INFO    ] No camera update needed
[2026-06-12 11:44:23,664.664 INFO    ] Script finished. Safe exiting...
[2026-06-12 11:44:23,666.666 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 11:44:23,669.669 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 11:44:23,672.672 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 11:44:25,712.712 INFO    ] ================================================
[2026-06-12 11:44:25,727.727 INFO    ] Launching Daemon at Fri Jun 12 11:44:25 IST 2026
[2026-06-12 11:44:25,738.738 INFO    ] ================================================
[2026-06-12 11:44:26,083.083 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 11:44:26
[2026-06-12 11:44:26,394.394 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 11:44:26,526.526 INFO    ] Initializing speech engine...
[2026-06-12 11:44:26,534.534 INFO    ] 2026-06-12 11:44:26
[2026-06-12 11:44:26,756.756 INFO    ] 2026-06-12 11:44:26
[2026-06-12 11:44:26,785.785 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 11:44:26,979.979 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 11:44:26,989.989 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 11:44:27,158.158 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 11:44:27,214.214 INFO    ] time= 12/06/2026 11:44:27
[2026-06-12 11:44:27,239.239 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 11:44:27,245.245 INFO    ] Checking for existing commands in stream...
[2026-06-12 11:44:27,316.316 INFO    ] No existing commands found in stream
[2026-06-12 11:44:32,330.330 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 11:44:32,333.333 INFO    ] Waiting 2.56 seconds before fallback handling...
[2026-06-12 11:44:35,260.260 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 11:44:35,262.262 INFO    ] Checking for system updates...
[2026-06-12 11:44:35,283.283 INFO    ] 200
[2026-06-12 11:44:35,285.285 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:44:35,315.315 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 11:44:35,316.316 INFO    ] No update needed
[2026-06-12 11:44:35,318.318 INFO    ] Checking for camera pi updates...
[2026-06-12 11:44:35,337.337 INFO    ] 200
[2026-06-12 11:44:35,338.338 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:44:35,365.365 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 11:44:35,400.400 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 11:44:35,401.401 INFO    ] No camera update needed
[2026-06-12 11:44:35,403.403 INFO    ] Script finished. Safe exiting...
[2026-06-12 11:44:35,404.404 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 11:44:35,407.407 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 11:44:35,409.409 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 11:44:37,449.449 INFO    ] ================================================
[2026-06-12 11:44:37,464.464 INFO    ] Launching Daemon at Fri Jun 12 11:44:37 IST 2026
[2026-06-12 11:44:37,475.475 INFO    ] ================================================
[2026-06-12 11:44:37,817.817 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 11:44:37
[2026-06-12 11:44:38,134.134 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 11:44:38,281.281 INFO    ] Initializing speech engine...
[2026-06-12 11:44:38,286.286 INFO    ] 2026-06-12 11:44:38
[2026-06-12 11:44:38,497.497 INFO    ] 2026-06-12 11:44:38
[2026-06-12 11:44:38,528.528 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 11:44:38,657.657 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 11:44:38,710.710 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 11:44:38,867.867 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 11:44:38,925.925 INFO    ] time= 12/06/2026 11:44:38
[2026-06-12 11:44:38,964.964 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 11:44:38,970.970 INFO    ] Checking for existing commands in stream...
[2026-06-12 11:44:39,045.045 INFO    ] No existing commands found in stream
[2026-06-12 11:44:44,054.054 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 11:44:44,057.057 INFO    ] Waiting 0.95 seconds before fallback handling...
[2026-06-12 11:44:45,393.393 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 11:44:45,394.394 INFO    ] Checking for system updates...
[2026-06-12 11:44:45,416.416 INFO    ] 200
[2026-06-12 11:44:45,417.417 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:44:45,450.450 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 11:44:45,452.452 INFO    ] No update needed
[2026-06-12 11:44:45,453.453 INFO    ] Checking for camera pi updates...
[2026-06-12 11:44:45,473.473 INFO    ] 200
[2026-06-12 11:44:45,475.475 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:44:45,498.498 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 11:44:45,538.538 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 11:44:45,539.539 INFO    ] No camera update needed
[2026-06-12 11:44:45,541.541 INFO    ] Script finished. Safe exiting...
[2026-06-12 11:44:45,542.542 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 11:44:45,545.545 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 11:44:45,548.548 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 11:44:47,587.587 INFO    ] ================================================
[2026-06-12 11:44:47,602.602 INFO    ] Launching Daemon at Fri Jun 12 11:44:47 IST 2026
[2026-06-12 11:44:47,613.613 INFO    ] ================================================
[2026-06-12 11:44:47,973.973 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 11:44:47
[2026-06-12 11:44:48,303.303 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 11:44:48,451.451 INFO    ] Initializing speech engine...
[2026-06-12 11:44:48,457.457 INFO    ] 2026-06-12 11:44:48
[2026-06-12 11:44:48,663.663 INFO    ] 2026-06-12 11:44:48
[2026-06-12 11:44:48,692.692 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 11:44:48,876.876 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 11:44:48,879.879 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 11:44:49,021.021 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 11:44:49,080.080 INFO    ] time= 12/06/2026 11:44:49
[2026-06-12 11:44:49,108.108 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 11:44:49,115.115 INFO    ] Checking for existing commands in stream...
[2026-06-12 11:44:49,206.206 INFO    ] No existing commands found in stream
[2026-06-12 11:44:54,220.220 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 11:44:54,223.223 INFO    ] Waiting 2.18 seconds before fallback handling...
[2026-06-12 11:44:56,752.752 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 11:44:56,754.754 INFO    ] Checking for system updates...
[2026-06-12 11:44:56,775.775 INFO    ] 200
[2026-06-12 11:44:56,776.776 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:44:56,806.806 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 11:44:56,808.808 INFO    ] No update needed
[2026-06-12 11:44:56,809.809 INFO    ] Checking for camera pi updates...
[2026-06-12 11:44:56,830.830 INFO    ] 200
[2026-06-12 11:44:56,832.832 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:44:56,857.857 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 11:44:56,895.895 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 11:44:56,896.896 INFO    ] No camera update needed
[2026-06-12 11:44:56,897.897 INFO    ] Script finished. Safe exiting...
[2026-06-12 11:44:56,899.899 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 11:44:56,902.902 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 11:44:56,905.905 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 11:44:58,943.943 INFO    ] ================================================
[2026-06-12 11:44:58,958.958 INFO    ] Launching Daemon at Fri Jun 12 11:44:58 IST 2026
[2026-06-12 11:44:58,969.969 INFO    ] ================================================
[2026-06-12 11:44:59,313.313 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 11:44:59
[2026-06-12 11:44:59,629.629 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 11:44:59,767.767 INFO    ] Initializing speech engine...
[2026-06-12 11:44:59,777.777 INFO    ] 2026-06-12 11:44:59
[2026-06-12 11:44:59,982.982 INFO    ] 2026-06-12 11:44:59
[2026-06-12 11:45:00,010.010 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 11:45:00,138.138 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 11:45:00,196.196 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 11:45:00,333.333 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 11:45:00,397.397 INFO    ] time= 12/06/2026 11:45:00
[2026-06-12 11:45:00,424.424 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 11:45:00,430.430 INFO    ] Checking for existing commands in stream...
[2026-06-12 11:45:00,497.497 INFO    ] No existing commands found in stream
[2026-06-12 11:45:05,506.506 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 11:45:05,509.509 INFO    ] Waiting 1.36 seconds before fallback handling...
[2026-06-12 11:45:07,232.232 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 11:45:07,233.233 INFO    ] Checking for system updates...
[2026-06-12 11:45:07,254.254 INFO    ] 200
[2026-06-12 11:45:07,256.256 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:45:07,286.286 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 11:45:07,287.287 INFO    ] No update needed
[2026-06-12 11:45:07,289.289 INFO    ] Checking for camera pi updates...
[2026-06-12 11:45:07,309.309 INFO    ] 200
[2026-06-12 11:45:07,311.311 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:45:07,334.334 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 11:45:07,472.472 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 11:45:07,473.473 INFO    ] No camera update needed
[2026-06-12 11:45:07,474.474 INFO    ] Script finished. Safe exiting...
[2026-06-12 11:45:07,476.476 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 11:45:07,479.479 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 11:45:07,481.481 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 11:45:09,521.521 INFO    ] ================================================
[2026-06-12 11:45:09,536.536 INFO    ] Launching Daemon at Fri Jun 12 11:45:09 IST 2026
[2026-06-12 11:45:09,547.547 INFO    ] ================================================
[2026-06-12 11:45:09,870.870 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 11:45:09
[2026-06-12 11:45:10,186.186 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 11:45:10,329.329 INFO    ] Initializing speech engine...
[2026-06-12 11:45:10,333.333 INFO    ] 2026-06-12 11:45:10
[2026-06-12 11:45:10,539.539 INFO    ] 2026-06-12 11:45:10
[2026-06-12 11:45:10,567.567 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 11:45:10,752.752 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 11:45:10,761.761 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 11:45:10,888.888 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 11:45:10,949.949 INFO    ] time= 12/06/2026 11:45:10
[2026-06-12 11:45:10,982.982 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 11:45:10,984.984 INFO    ] Checking for existing commands in stream...
[2026-06-12 11:45:11,079.079 INFO    ] No existing commands found in stream
[2026-06-12 11:45:16,093.093 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 11:45:16,096.096 INFO    ] Waiting 0.17 seconds before fallback handling...
[2026-06-12 11:45:16,622.622 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 11:45:16,624.624 INFO    ] Checking for system updates...
[2026-06-12 11:45:16,644.644 INFO    ] 200
[2026-06-12 11:45:16,646.646 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:45:16,678.678 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 11:45:16,680.680 INFO    ] No update needed
[2026-06-12 11:45:16,681.681 INFO    ] Checking for camera pi updates...
[2026-06-12 11:45:16,701.701 INFO    ] 200
[2026-06-12 11:45:16,702.702 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:45:16,725.725 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 11:45:16,760.760 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 11:45:16,761.761 INFO    ] No camera update needed
[2026-06-12 11:45:16,762.762 INFO    ] Script finished. Safe exiting...
[2026-06-12 11:45:16,764.764 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 11:45:16,767.767 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 11:45:16,770.770 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 11:45:18,809.809 INFO    ] ================================================
[2026-06-12 11:45:18,825.825 INFO    ] Launching Daemon at Fri Jun 12 11:45:18 IST 2026
[2026-06-12 11:45:18,836.836 INFO    ] ================================================
[2026-06-12 11:45:19,167.167 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 11:45:19
[2026-06-12 11:45:19,479.479 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 11:45:19,609.609 INFO    ] Initializing speech engine...
[2026-06-12 11:45:19,614.614 INFO    ] 2026-06-12 11:45:19
[2026-06-12 11:45:19,829.829 INFO    ] 2026-06-12 11:45:19
[2026-06-12 11:45:19,858.858 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 11:45:20,041.041 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 11:45:20,044.044 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 11:45:20,180.180 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 11:45:20,244.244 INFO    ] time= 12/06/2026 11:45:20
[2026-06-12 11:45:20,271.271 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 11:45:20,273.273 INFO    ] Checking for existing commands in stream...
[2026-06-12 11:45:20,345.345 INFO    ] No existing commands found in stream
[2026-06-12 11:45:25,374.374 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 11:45:25,376.376 INFO    ] Waiting 3.13 seconds before fallback handling...
[2026-06-12 11:45:28,831.831 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 11:45:28,833.833 INFO    ] Checking for system updates...
[2026-06-12 11:45:28,853.853 INFO    ] 200
[2026-06-12 11:45:28,854.854 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:45:28,884.884 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 11:45:28,886.886 INFO    ] No update needed
[2026-06-12 11:45:28,887.887 INFO    ] Checking for camera pi updates...
[2026-06-12 11:45:28,910.910 INFO    ] 200
[2026-06-12 11:45:28,911.911 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:45:28,934.934 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 11:45:28,976.976 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 11:45:28,978.978 INFO    ] No camera update needed
[2026-06-12 11:45:28,979.979 INFO    ] Script finished. Safe exiting...
[2026-06-12 11:45:28,981.981 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 11:45:28,984.984 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 11:45:28,986.986 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 11:45:31,024.024 INFO    ] ================================================
[2026-06-12 11:45:31,039.039 INFO    ] Launching Daemon at Fri Jun 12 11:45:31 IST 2026
[2026-06-12 11:45:31,050.050 INFO    ] ================================================
[2026-06-12 11:45:31,423.423 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 11:45:31
[2026-06-12 11:45:31,773.773 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 11:45:31,934.934 INFO    ] Initializing speech engine...
[2026-06-12 11:45:31,947.947 INFO    ] 2026-06-12 11:45:31
[2026-06-12 11:45:32,152.152 INFO    ] 2026-06-12 11:45:32
[2026-06-12 11:45:32,195.195 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 11:45:32,344.344 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 11:45:32,377.377 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 11:45:32,541.541 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 11:45:32,572.572 INFO    ] time= 12/06/2026 11:45:32
[2026-06-12 11:45:32,633.633 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 11:45:32,643.643 INFO    ] Checking for existing commands in stream...
[2026-06-12 11:45:32,714.714 INFO    ] No existing commands found in stream
[2026-06-12 11:45:37,725.725 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 11:45:37,728.728 INFO    ] Waiting 2.55 seconds before fallback handling...
[2026-06-12 11:45:40,650.650 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 11:45:40,652.652 INFO    ] Checking for system updates...
[2026-06-12 11:45:40,673.673 INFO    ] 200
[2026-06-12 11:45:40,674.674 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:45:40,705.705 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 11:45:40,706.706 INFO    ] No update needed
[2026-06-12 11:45:40,707.707 INFO    ] Checking for camera pi updates...
[2026-06-12 11:45:40,727.727 INFO    ] 200
[2026-06-12 11:45:40,729.729 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:45:40,752.752 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 11:45:40,788.788 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 11:45:40,790.790 INFO    ] No camera update needed
[2026-06-12 11:45:40,791.791 INFO    ] Script finished. Safe exiting...
[2026-06-12 11:45:40,793.793 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 11:45:40,796.796 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 11:45:40,799.799 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 11:45:42,838.838 INFO    ] ================================================
[2026-06-12 11:45:42,858.858 INFO    ] Launching Daemon at Fri Jun 12 11:45:42 IST 2026
[2026-06-12 11:45:42,869.869 INFO    ] ================================================
[2026-06-12 11:45:43,251.251 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 11:45:43
[2026-06-12 11:45:43,585.585 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 11:45:43,739.739 INFO    ] Initializing speech engine...
[2026-06-12 11:45:43,744.744 INFO    ] 2026-06-12 11:45:43
[2026-06-12 11:45:43,952.952 INFO    ] 2026-06-12 11:45:43
[2026-06-12 11:45:43,980.980 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 11:45:44,163.163 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 11:45:44,174.174 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 11:45:44,302.302 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 11:45:44,368.368 INFO    ] time= 12/06/2026 11:45:44
[2026-06-12 11:45:44,393.393 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 11:45:44,400.400 INFO    ] Checking for existing commands in stream...
[2026-06-12 11:45:44,467.467 INFO    ] No existing commands found in stream
[2026-06-12 11:45:49,481.481 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 11:45:49,485.485 INFO    ] Waiting 3.65 seconds before fallback handling...
[2026-06-12 11:45:53,496.496 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 11:45:53,498.498 INFO    ] Checking for system updates...
[2026-06-12 11:45:53,518.518 INFO    ] 200
[2026-06-12 11:45:53,520.520 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:45:53,551.551 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 11:45:53,553.553 INFO    ] No update needed
[2026-06-12 11:45:53,554.554 INFO    ] Checking for camera pi updates...
[2026-06-12 11:45:53,574.574 INFO    ] 200
[2026-06-12 11:45:53,575.575 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:45:53,600.600 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 11:45:53,637.637 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 11:45:53,639.639 INFO    ] No camera update needed
[2026-06-12 11:45:53,640.640 INFO    ] Script finished. Safe exiting...
[2026-06-12 11:45:53,642.642 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 11:45:53,645.645 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 11:45:53,647.647 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 11:45:55,686.686 INFO    ] ================================================
[2026-06-12 11:45:55,701.701 INFO    ] Launching Daemon at Fri Jun 12 11:45:55 IST 2026
[2026-06-12 11:45:55,712.712 INFO    ] ================================================
[2026-06-12 11:45:56,059.059 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 11:45:56
[2026-06-12 11:45:56,371.371 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 11:45:56,502.502 INFO    ] Initializing speech engine...
[2026-06-12 11:45:56,510.510 INFO    ] 2026-06-12 11:45:56
[2026-06-12 11:45:56,724.724 INFO    ] 2026-06-12 11:45:56
[2026-06-12 11:45:56,753.753 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 11:45:56,941.941 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 11:45:56,949.949 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 11:45:57,082.082 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 11:45:57,151.151 INFO    ] time= 12/06/2026 11:45:57
[2026-06-12 11:45:57,175.175 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 11:45:57,181.181 INFO    ] Checking for existing commands in stream...
[2026-06-12 11:45:57,249.249 INFO    ] No existing commands found in stream
[2026-06-12 11:46:02,257.257 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 11:46:02,259.259 INFO    ] Waiting 3.92 seconds before fallback handling...
[2026-06-12 11:46:06,570.570 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 11:46:06,571.571 INFO    ] Checking for system updates...
[2026-06-12 11:46:06,592.592 INFO    ] 200
[2026-06-12 11:46:06,594.594 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:46:06,623.623 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 11:46:06,625.625 INFO    ] No update needed
[2026-06-12 11:46:06,627.627 INFO    ] Checking for camera pi updates...
[2026-06-12 11:46:06,646.646 INFO    ] 200
[2026-06-12 11:46:06,648.648 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:46:06,671.671 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 11:46:06,716.716 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 11:46:06,717.717 INFO    ] No camera update needed
[2026-06-12 11:46:06,719.719 INFO    ] Script finished. Safe exiting...
[2026-06-12 11:46:06,720.720 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 11:46:06,723.723 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 11:46:06,726.726 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 11:46:08,764.764 INFO    ] ================================================
[2026-06-12 11:46:08,779.779 INFO    ] Launching Daemon at Fri Jun 12 11:46:08 IST 2026
[2026-06-12 11:46:08,790.790 INFO    ] ================================================
[2026-06-12 11:46:09,140.140 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 11:46:09
[2026-06-12 11:46:09,453.453 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 11:46:09,602.602 INFO    ] Initializing speech engine...
[2026-06-12 11:46:09,608.608 INFO    ] 2026-06-12 11:46:09
[2026-06-12 11:46:09,806.806 INFO    ] 2026-06-12 11:46:09
[2026-06-12 11:46:09,833.833 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 11:46:10,018.018 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 11:46:10,027.027 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 11:46:10,153.153 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 11:46:10,210.210 INFO    ] time= 12/06/2026 11:46:10
[2026-06-12 11:46:10,240.240 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 11:46:10,250.250 INFO    ] Checking for existing commands in stream...
[2026-06-12 11:46:10,345.345 INFO    ] No existing commands found in stream
[2026-06-12 11:46:15,359.359 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 11:46:15,362.362 INFO    ] Waiting 1.63 seconds before fallback handling...
[2026-06-12 11:46:17,370.370 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 11:46:17,372.372 INFO    ] Checking for system updates...
[2026-06-12 11:46:17,392.392 INFO    ] 200
[2026-06-12 11:46:17,394.394 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:46:17,427.427 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 11:46:17,428.428 INFO    ] No update needed
[2026-06-12 11:46:17,429.429 INFO    ] Checking for camera pi updates...
[2026-06-12 11:46:17,449.449 INFO    ] 200
[2026-06-12 11:46:17,450.450 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:46:17,474.474 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 11:46:17,509.509 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 11:46:17,510.510 INFO    ] No camera update needed
[2026-06-12 11:46:17,511.511 INFO    ] Script finished. Safe exiting...
[2026-06-12 11:46:17,513.513 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 11:46:17,516.516 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 11:46:17,518.518 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 11:46:19,556.556 INFO    ] ================================================
[2026-06-12 11:46:19,571.571 INFO    ] Launching Daemon at Fri Jun 12 11:46:19 IST 2026
[2026-06-12 11:46:19,582.582 INFO    ] ================================================
[2026-06-12 11:46:19,936.936 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 11:46:19
[2026-06-12 11:46:20,247.247 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 11:46:20,384.384 INFO    ] Initializing speech engine...
[2026-06-12 11:46:20,392.392 INFO    ] 2026-06-12 11:46:20
[2026-06-12 11:46:20,601.601 INFO    ] 2026-06-12 11:46:20
[2026-06-12 11:46:20,629.629 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 11:46:20,814.814 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 11:46:20,818.818 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 11:46:20,975.975 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 11:46:21,025.025 INFO    ] time= 12/06/2026 11:46:20
[2026-06-12 11:46:21,046.046 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 11:46:21,053.053 INFO    ] Checking for existing commands in stream...
[2026-06-12 11:46:21,121.121 INFO    ] No existing commands found in stream
[2026-06-12 11:46:26,134.134 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 11:46:26,137.137 INFO    ] Waiting 0.63 seconds before fallback handling...
[2026-06-12 11:46:27,187.187 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 11:46:27,189.189 INFO    ] Checking for system updates...
[2026-06-12 11:46:27,210.210 INFO    ] 200
[2026-06-12 11:46:27,211.211 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:46:27,243.243 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 11:46:27,244.244 INFO    ] No update needed
[2026-06-12 11:46:27,245.245 INFO    ] Checking for camera pi updates...
[2026-06-12 11:46:27,266.266 INFO    ] 200
[2026-06-12 11:46:27,267.267 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:46:27,295.295 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 11:46:27,334.334 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 11:46:27,335.335 INFO    ] No camera update needed
[2026-06-12 11:46:27,336.336 INFO    ] Script finished. Safe exiting...
[2026-06-12 11:46:27,338.338 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 11:46:27,341.341 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 11:46:27,346.346 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 11:46:29,386.386 INFO    ] ================================================
[2026-06-12 11:46:29,401.401 INFO    ] Launching Daemon at Fri Jun 12 11:46:29 IST 2026
[2026-06-12 11:46:29,412.412 INFO    ] ================================================
[2026-06-12 11:46:29,762.762 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 11:46:29
[2026-06-12 11:46:30,077.077 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 11:46:30,220.220 INFO    ] Initializing speech engine...
[2026-06-12 11:46:30,225.225 INFO    ] 2026-06-12 11:46:30
[2026-06-12 11:46:30,428.428 INFO    ] 2026-06-12 11:46:30
[2026-06-12 11:46:30,457.457 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 11:46:30,639.639 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 11:46:30,643.643 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 11:46:30,775.775 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 11:46:30,837.837 INFO    ] time= 12/06/2026 11:46:30
[2026-06-12 11:46:30,869.869 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 11:46:30,875.875 INFO    ] Checking for existing commands in stream...
[2026-06-12 11:46:30,942.942 INFO    ] No existing commands found in stream
[2026-06-12 11:46:35,951.951 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 11:46:35,954.954 INFO    ] Waiting 3.95 seconds before fallback handling...
[2026-06-12 11:46:40,282.282 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 11:46:40,283.283 INFO    ] Checking for system updates...
[2026-06-12 11:46:40,304.304 INFO    ] 200
[2026-06-12 11:46:40,305.305 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:46:40,335.335 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 11:46:40,337.337 INFO    ] No update needed
[2026-06-12 11:46:40,338.338 INFO    ] Checking for camera pi updates...
[2026-06-12 11:46:40,359.359 INFO    ] 200
[2026-06-12 11:46:40,361.361 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:46:40,384.384 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 11:46:40,419.419 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 11:46:40,421.421 INFO    ] No camera update needed
[2026-06-12 11:46:40,422.422 INFO    ] Script finished. Safe exiting...
[2026-06-12 11:46:40,423.423 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 11:46:40,426.426 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 11:46:40,429.429 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 11:46:42,470.470 INFO    ] ================================================
[2026-06-12 11:46:42,485.485 INFO    ] Launching Daemon at Fri Jun 12 11:46:42 IST 2026
[2026-06-12 11:46:42,497.497 INFO    ] ================================================
[2026-06-12 11:46:42,820.820 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 11:46:42
[2026-06-12 11:46:43,133.133 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 11:46:43,262.262 INFO    ] Initializing speech engine...
[2026-06-12 11:46:43,266.266 INFO    ] 2026-06-12 11:46:43
[2026-06-12 11:46:43,485.485 INFO    ] 2026-06-12 11:46:43
[2026-06-12 11:46:43,515.515 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 11:46:43,700.700 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 11:46:43,704.704 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 11:46:43,835.835 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 11:46:43,896.896 INFO    ] time= 12/06/2026 11:46:43
[2026-06-12 11:46:43,931.931 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 11:46:43,937.937 INFO    ] Checking for existing commands in stream...
[2026-06-12 11:46:44,010.010 INFO    ] No existing commands found in stream
[2026-06-12 11:46:49,019.019 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 11:46:49,022.022 INFO    ] Waiting 1.60 seconds before fallback handling...
[2026-06-12 11:46:51,013.013 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 11:46:51,015.015 INFO    ] Checking for system updates...
[2026-06-12 11:46:51,038.038 INFO    ] 200
[2026-06-12 11:46:51,040.040 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:46:51,073.073 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 11:46:51,074.074 INFO    ] No update needed
[2026-06-12 11:46:51,076.076 INFO    ] Checking for camera pi updates...
[2026-06-12 11:46:51,098.098 INFO    ] 200
[2026-06-12 11:46:51,099.099 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:46:51,126.126 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 11:46:51,165.165 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 11:46:51,167.167 INFO    ] No camera update needed
[2026-06-12 11:46:51,168.168 INFO    ] Script finished. Safe exiting...
[2026-06-12 11:46:51,169.169 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 11:46:51,173.173 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 11:46:51,176.176 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 11:46:53,214.214 INFO    ] ================================================
[2026-06-12 11:46:53,230.230 INFO    ] Launching Daemon at Fri Jun 12 11:46:53 IST 2026
[2026-06-12 11:46:53,241.241 INFO    ] ================================================
[2026-06-12 11:46:53,603.603 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 11:46:53
[2026-06-12 11:46:53,917.917 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 11:46:54,060.060 INFO    ] Initializing speech engine...
[2026-06-12 11:46:54,072.072 INFO    ] 2026-06-12 11:46:54
[2026-06-12 11:46:54,272.272 INFO    ] 2026-06-12 11:46:54
[2026-06-12 11:46:54,301.301 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 11:46:54,489.489 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 11:46:54,498.498 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 11:46:54,622.622 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 11:46:54,668.668 INFO    ] time= 12/06/2026 11:46:54
[2026-06-12 11:46:54,709.709 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 11:46:54,725.725 INFO    ] Checking for existing commands in stream...
[2026-06-12 11:46:54,797.797 INFO    ] No existing commands found in stream
[2026-06-12 11:46:59,806.806 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 11:46:59,808.808 INFO    ] Waiting 2.87 seconds before fallback handling...
[2026-06-12 11:47:03,140.140 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 11:47:03,142.142 INFO    ] Checking for system updates...
[2026-06-12 11:47:03,163.163 INFO    ] 200
[2026-06-12 11:47:03,164.164 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:47:03,195.195 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 11:47:03,196.196 INFO    ] No update needed
[2026-06-12 11:47:03,197.197 INFO    ] Checking for camera pi updates...
[2026-06-12 11:47:03,218.218 INFO    ] 200
[2026-06-12 11:47:03,220.220 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:47:03,243.243 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 11:47:03,291.291 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 11:47:03,293.293 INFO    ] No camera update needed
[2026-06-12 11:47:03,294.294 INFO    ] Script finished. Safe exiting...
[2026-06-12 11:47:03,295.295 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 11:47:03,298.298 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 11:47:03,301.301 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 11:47:05,340.340 INFO    ] ================================================
[2026-06-12 11:47:05,356.356 INFO    ] Launching Daemon at Fri Jun 12 11:47:05 IST 2026
[2026-06-12 11:47:05,367.367 INFO    ] ================================================
[2026-06-12 11:47:05,697.697 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 11:47:05
[2026-06-12 11:47:06,014.014 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 11:47:06,171.171 INFO    ] Initializing speech engine...
[2026-06-12 11:47:06,174.174 INFO    ] 2026-06-12 11:47:06
[2026-06-12 11:47:06,377.377 INFO    ] 2026-06-12 11:47:06
[2026-06-12 11:47:06,406.406 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 11:47:06,546.546 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 11:47:06,598.598 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 11:47:06,743.743 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 11:47:06,786.786 INFO    ] time= 12/06/2026 11:47:06
[2026-06-12 11:47:06,843.843 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 11:47:06,866.866 INFO    ] Checking for existing commands in stream...
[2026-06-12 11:47:06,938.938 INFO    ] No existing commands found in stream
[2026-06-12 11:47:11,947.947 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 11:47:11,949.949 INFO    ] Waiting 1.11 seconds before fallback handling...
[2026-06-12 11:47:13,432.432 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 11:47:13,434.434 INFO    ] Checking for system updates...
[2026-06-12 11:47:13,454.454 INFO    ] 200
[2026-06-12 11:47:13,455.455 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:47:13,485.485 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 11:47:13,487.487 INFO    ] No update needed
[2026-06-12 11:47:13,488.488 INFO    ] Checking for camera pi updates...
[2026-06-12 11:47:13,509.509 INFO    ] 200
[2026-06-12 11:47:13,511.511 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:47:13,534.534 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 11:47:13,681.681 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 11:47:13,682.682 INFO    ] No camera update needed
[2026-06-12 11:47:13,684.684 INFO    ] Script finished. Safe exiting...
[2026-06-12 11:47:13,685.685 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 11:47:13,688.688 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 11:47:13,691.691 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 11:47:15,731.731 INFO    ] ================================================
[2026-06-12 11:47:15,747.747 INFO    ] Launching Daemon at Fri Jun 12 11:47:15 IST 2026
[2026-06-12 11:47:15,758.758 INFO    ] ================================================
[2026-06-12 11:47:16,141.141 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 11:47:16
[2026-06-12 11:47:16,488.488 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 11:47:16,643.643 INFO    ] Initializing speech engine...
[2026-06-12 11:47:16,647.647 INFO    ] 2026-06-12 11:47:16
[2026-06-12 11:47:16,858.858 INFO    ] 2026-06-12 11:47:16
[2026-06-12 11:47:16,886.886 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 11:47:17,071.071 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 11:47:17,081.081 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 11:47:17,208.208 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 11:47:17,275.275 INFO    ] time= 12/06/2026 11:47:17
[2026-06-12 11:47:17,302.302 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 11:47:17,308.308 INFO    ] Checking for existing commands in stream...
[2026-06-12 11:47:17,375.375 INFO    ] No existing commands found in stream
[2026-06-12 11:47:22,390.390 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 11:47:22,393.393 INFO    ] Waiting 3.49 seconds before fallback handling...
[2026-06-12 11:47:26,259.259 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 11:47:26,261.261 INFO    ] Checking for system updates...
[2026-06-12 11:47:26,282.282 INFO    ] 200
[2026-06-12 11:47:26,283.283 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:47:26,314.314 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 11:47:26,316.316 INFO    ] No update needed
[2026-06-12 11:47:26,317.317 INFO    ] Checking for camera pi updates...
[2026-06-12 11:47:26,336.336 INFO    ] 200
[2026-06-12 11:47:26,338.338 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:47:26,361.361 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 11:47:26,397.397 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 11:47:26,398.398 INFO    ] No camera update needed
[2026-06-12 11:47:26,400.400 INFO    ] Script finished. Safe exiting...
[2026-06-12 11:47:26,401.401 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 11:47:26,404.404 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 11:47:26,407.407 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 11:47:28,449.449 INFO    ] ================================================
[2026-06-12 11:47:28,467.467 INFO    ] Launching Daemon at Fri Jun 12 11:47:28 IST 2026
[2026-06-12 11:47:28,480.480 INFO    ] ================================================
[2026-06-12 11:47:28,838.838 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 11:47:28
[2026-06-12 11:47:29,186.186 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 11:47:29,325.325 INFO    ] Initializing speech engine...
[2026-06-12 11:47:29,336.336 INFO    ] 2026-06-12 11:47:29
[2026-06-12 11:47:29,554.554 INFO    ] 2026-06-12 11:47:29
[2026-06-12 11:47:29,580.580 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 11:47:29,785.785 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 11:47:29,789.789 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 11:47:29,986.986 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 11:47:30,018.018 INFO    ] time= 12/06/2026 11:47:29
[2026-06-12 11:47:30,025.025 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 11:47:30,027.027 INFO    ] Checking for existing commands in stream...
[2026-06-12 11:47:30,094.094 INFO    ] No existing commands found in stream
[2026-06-12 11:47:35,109.109 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 11:47:35,112.112 INFO    ] Waiting 0.67 seconds before fallback handling...
[2026-06-12 11:47:36,189.189 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 11:47:36,191.191 INFO    ] Checking for system updates...
[2026-06-12 11:47:36,212.212 INFO    ] 200
[2026-06-12 11:47:36,213.213 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:47:36,244.244 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 11:47:36,246.246 INFO    ] No update needed
[2026-06-12 11:47:36,247.247 INFO    ] Checking for camera pi updates...
[2026-06-12 11:47:36,267.267 INFO    ] 200
[2026-06-12 11:47:36,268.268 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:47:36,292.292 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 11:47:36,327.327 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 11:47:36,328.328 INFO    ] No camera update needed
[2026-06-12 11:47:36,330.330 INFO    ] Script finished. Safe exiting...
[2026-06-12 11:47:36,331.331 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 11:47:36,334.334 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 11:47:36,337.337 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 11:47:38,377.377 INFO    ] ================================================
[2026-06-12 11:47:38,393.393 INFO    ] Launching Daemon at Fri Jun 12 11:47:38 IST 2026
[2026-06-12 11:47:38,404.404 INFO    ] ================================================
[2026-06-12 11:47:38,769.769 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 11:47:38
[2026-06-12 11:47:39,108.108 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 11:47:39,261.261 INFO    ] Initializing speech engine...
[2026-06-12 11:47:39,267.267 INFO    ] 2026-06-12 11:47:39
[2026-06-12 11:47:39,473.473 INFO    ] 2026-06-12 11:47:39
[2026-06-12 11:47:39,502.502 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 11:47:39,688.688 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 11:47:39,697.697 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 11:47:39,830.830 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 11:47:39,892.892 INFO    ] time= 12/06/2026 11:47:39
[2026-06-12 11:47:39,916.916 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 11:47:39,922.922 INFO    ] Checking for existing commands in stream...
[2026-06-12 11:47:39,989.989 INFO    ] No existing commands found in stream
[2026-06-12 11:47:45,003.003 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 11:47:45,007.007 INFO    ] Waiting 0.14 seconds before fallback handling...
[2026-06-12 11:47:45,509.509 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 11:47:45,510.510 INFO    ] Checking for system updates...
[2026-06-12 11:47:45,533.533 INFO    ] 200
[2026-06-12 11:47:45,534.534 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:47:45,567.567 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 11:47:45,569.569 INFO    ] No update needed
[2026-06-12 11:47:45,570.570 INFO    ] Checking for camera pi updates...
[2026-06-12 11:47:45,594.594 INFO    ] 200
[2026-06-12 11:47:45,595.595 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:47:45,623.623 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 11:47:45,662.662 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 11:47:45,663.663 INFO    ] No camera update needed
[2026-06-12 11:47:45,665.665 INFO    ] Script finished. Safe exiting...
[2026-06-12 11:47:45,666.666 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 11:47:45,670.670 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 11:47:45,673.673 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 11:47:47,712.712 INFO    ] ================================================
[2026-06-12 11:47:47,727.727 INFO    ] Launching Daemon at Fri Jun 12 11:47:47 IST 2026
[2026-06-12 11:47:47,738.738 INFO    ] ================================================
[2026-06-12 11:47:48,085.085 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 11:47:48
[2026-06-12 11:47:48,424.424 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 11:47:48,563.563 INFO    ] Initializing speech engine...
[2026-06-12 11:47:48,577.577 INFO    ] 2026-06-12 11:47:48
[2026-06-12 11:47:48,786.786 INFO    ] 2026-06-12 11:47:48
[2026-06-12 11:47:48,815.815 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 11:47:48,998.998 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 11:47:49,007.007 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 11:47:49,151.151 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 11:47:49,204.204 INFO    ] time= 12/06/2026 11:47:49
[2026-06-12 11:47:49,227.227 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 11:47:49,233.233 INFO    ] Checking for existing commands in stream...
[2026-06-12 11:47:49,300.300 INFO    ] No existing commands found in stream
[2026-06-12 11:47:54,315.315 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 11:47:54,318.318 INFO    ] Waiting 1.39 seconds before fallback handling...
[2026-06-12 11:47:58,040.040 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 11:47:58,043.043 INFO    ] Checking for system updates...
[2026-06-12 11:47:58,081.081 INFO    ] 200
[2026-06-12 11:47:58,084.084 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:47:58,137.137 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 11:47:58,140.140 INFO    ] No update needed
[2026-06-12 11:47:58,143.143 INFO    ] Checking for camera pi updates...
[2026-06-12 11:47:58,178.178 INFO    ] 200
[2026-06-12 11:47:58,181.181 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:47:58,217.217 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 11:47:58,257.257 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 11:47:58,259.259 INFO    ] No camera update needed
[2026-06-12 11:47:58,261.261 INFO    ] Script finished. Safe exiting...
[2026-06-12 11:47:58,262.262 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 11:47:58,265.265 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 11:47:58,268.268 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 11:48:00,308.308 INFO    ] ================================================
[2026-06-12 11:48:00,324.324 INFO    ] Launching Daemon at Fri Jun 12 11:48:00 IST 2026
[2026-06-12 11:48:00,336.336 INFO    ] ================================================
[2026-06-12 11:48:00,674.674 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 11:48:00
[2026-06-12 11:48:00,992.992 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 11:48:01,238.238 INFO    ] Initializing speech engine...
[2026-06-12 11:48:01,240.240 INFO    ] 2026-06-12 11:48:01
[2026-06-12 11:48:01,498.498 INFO    ] 2026-06-12 11:48:01
[2026-06-12 11:48:01,535.535 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 11:48:01,746.746 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 11:48:01,765.765 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 11:48:01,928.928 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 11:48:01,970.970 INFO    ] time= 12/06/2026 11:48:01
[2026-06-12 11:48:01,973.973 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 11:48:01,975.975 INFO    ] Checking for existing commands in stream...
[2026-06-12 11:48:02,094.094 INFO    ] No existing commands found in stream
[2026-06-12 11:48:07,104.104 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 11:48:07,107.107 INFO    ] Waiting 3.02 seconds before fallback handling...
[2026-06-12 11:48:10,530.530 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 11:48:10,532.532 INFO    ] Checking for system updates...
[2026-06-12 11:48:10,553.553 INFO    ] 200
[2026-06-12 11:48:10,554.554 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:48:10,584.584 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 11:48:10,586.586 INFO    ] No update needed
[2026-06-12 11:48:10,587.587 INFO    ] Checking for camera pi updates...
[2026-06-12 11:48:10,607.607 INFO    ] 200
[2026-06-12 11:48:10,608.608 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:48:10,632.632 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 11:48:10,668.668 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 11:48:10,669.669 INFO    ] No camera update needed
[2026-06-12 11:48:10,671.671 INFO    ] Script finished. Safe exiting...
[2026-06-12 11:48:10,672.672 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 11:48:10,675.675 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 11:48:10,678.678 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 11:48:12,718.718 INFO    ] ================================================
[2026-06-12 11:48:12,735.735 INFO    ] Launching Daemon at Fri Jun 12 11:48:12 IST 2026
[2026-06-12 11:48:12,746.746 INFO    ] ================================================
[2026-06-12 11:48:13,079.079 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 11:48:13
[2026-06-12 11:48:13,397.397 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 11:48:13,535.535 INFO    ] Initializing speech engine...
[2026-06-12 11:48:13,548.548 INFO    ] 2026-06-12 11:48:13
[2026-06-12 11:48:13,768.768 INFO    ] 2026-06-12 11:48:13
[2026-06-12 11:48:13,799.799 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 11:48:13,998.998 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 11:48:14,002.002 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 11:48:14,141.141 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 11:48:14,213.213 INFO    ] time= 12/06/2026 11:48:14
[2026-06-12 11:48:14,238.238 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 11:48:14,249.249 INFO    ] Checking for existing commands in stream...
[2026-06-12 11:48:14,327.327 INFO    ] No existing commands found in stream
[2026-06-12 11:48:19,336.336 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 11:48:19,339.339 INFO    ] Waiting 1.12 seconds before fallback handling...
[2026-06-12 11:48:20,808.808 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 11:48:20,810.810 INFO    ] Checking for system updates...
[2026-06-12 11:48:20,832.832 INFO    ] 200
[2026-06-12 11:48:20,833.833 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:48:20,866.866 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 11:48:20,867.867 INFO    ] No update needed
[2026-06-12 11:48:20,869.869 INFO    ] Checking for camera pi updates...
[2026-06-12 11:48:20,888.888 INFO    ] 200
[2026-06-12 11:48:20,889.889 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:48:20,913.913 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 11:48:20,953.953 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 11:48:20,954.954 INFO    ] No camera update needed
[2026-06-12 11:48:20,955.955 INFO    ] Script finished. Safe exiting...
[2026-06-12 11:48:20,957.957 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 11:48:20,960.960 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 11:48:20,962.962 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 11:48:23,002.002 INFO    ] ================================================
[2026-06-12 11:48:23,018.018 INFO    ] Launching Daemon at Fri Jun 12 11:48:23 IST 2026
[2026-06-12 11:48:23,029.029 INFO    ] ================================================
[2026-06-12 11:48:23,399.399 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 11:48:23
[2026-06-12 11:48:23,738.738 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 11:48:23,889.889 INFO    ] Initializing speech engine...
[2026-06-12 11:48:23,895.895 INFO    ] 2026-06-12 11:48:23
[2026-06-12 11:48:24,104.104 INFO    ] 2026-06-12 11:48:24
[2026-06-12 11:48:24,133.133 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 11:48:24,318.318 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 11:48:24,322.322 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 11:48:24,479.479 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 11:48:24,534.534 INFO    ] time= 12/06/2026 11:48:24
[2026-06-12 11:48:24,550.550 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 11:48:24,557.557 INFO    ] Checking for existing commands in stream...
[2026-06-12 11:48:24,623.623 INFO    ] No existing commands found in stream
[2026-06-12 11:48:29,637.637 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 11:48:29,639.639 INFO    ] Waiting 3.87 seconds before fallback handling...
[2026-06-12 11:48:33,924.924 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 11:48:33,926.926 INFO    ] Checking for system updates...
[2026-06-12 11:48:33,962.962 INFO    ] 200
[2026-06-12 11:48:33,965.965 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:48:34,017.017 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 11:48:34,020.020 INFO    ] No update needed
[2026-06-12 11:48:34,022.022 INFO    ] Checking for camera pi updates...
[2026-06-12 11:48:34,048.048 INFO    ] 200
[2026-06-12 11:48:34,049.049 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:48:34,073.073 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 11:48:34,117.117 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 11:48:34,118.118 INFO    ] No camera update needed
[2026-06-12 11:48:34,119.119 INFO    ] Script finished. Safe exiting...
[2026-06-12 11:48:34,121.121 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 11:48:34,124.124 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 11:48:34,127.127 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 11:48:36,165.165 INFO    ] ================================================
[2026-06-12 11:48:36,181.181 INFO    ] Launching Daemon at Fri Jun 12 11:48:36 IST 2026
[2026-06-12 11:48:36,192.192 INFO    ] ================================================
[2026-06-12 11:48:36,518.518 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 11:48:36
[2026-06-12 11:48:36,836.836 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 11:48:36,981.981 INFO    ] Initializing speech engine...
[2026-06-12 11:48:36,987.987 INFO    ] 2026-06-12 11:48:36
[2026-06-12 11:48:37,191.191 INFO    ] 2026-06-12 11:48:37
[2026-06-12 11:48:37,221.221 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 11:48:37,405.405 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 11:48:37,409.409 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 11:48:37,545.545 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 11:48:37,613.613 INFO    ] time= 12/06/2026 11:48:37
[2026-06-12 11:48:37,637.637 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 11:48:37,643.643 INFO    ] Checking for existing commands in stream...
[2026-06-12 11:48:37,710.710 INFO    ] No existing commands found in stream
[2026-06-12 11:48:42,724.724 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 11:48:42,727.727 INFO    ] Waiting 1.25 seconds before fallback handling...
[2026-06-12 11:48:44,359.359 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 11:48:44,361.361 INFO    ] Checking for system updates...
[2026-06-12 11:48:44,382.382 INFO    ] 200
[2026-06-12 11:48:44,383.383 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:48:44,413.413 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 11:48:44,414.414 INFO    ] No update needed
[2026-06-12 11:48:44,416.416 INFO    ] Checking for camera pi updates...
[2026-06-12 11:48:44,435.435 INFO    ] 200
[2026-06-12 11:48:44,436.436 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:48:44,460.460 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 11:48:44,496.496 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 11:48:44,497.497 INFO    ] No camera update needed
[2026-06-12 11:48:44,498.498 INFO    ] Script finished. Safe exiting...
[2026-06-12 11:48:44,500.500 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 11:48:44,503.503 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 11:48:44,506.506 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 11:48:46,544.544 INFO    ] ================================================
[2026-06-12 11:48:46,560.560 INFO    ] Launching Daemon at Fri Jun 12 11:48:46 IST 2026
[2026-06-12 11:48:46,571.571 INFO    ] ================================================
[2026-06-12 11:48:46,943.943 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 11:48:46
[2026-06-12 11:48:47,281.281 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 11:48:47,432.432 INFO    ] Initializing speech engine...
[2026-06-12 11:48:47,438.438 INFO    ] 2026-06-12 11:48:47
[2026-06-12 11:48:47,648.648 INFO    ] 2026-06-12 11:48:47
[2026-06-12 11:48:47,677.677 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 11:48:47,865.865 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 11:48:47,879.879 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 11:48:48,059.059 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 11:48:48,094.094 INFO    ] time= 12/06/2026 11:48:48
[2026-06-12 11:48:48,100.100 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 11:48:48,105.105 INFO    ] Checking for existing commands in stream...
[2026-06-12 11:48:48,173.173 INFO    ] No existing commands found in stream
[2026-06-12 11:48:53,182.182 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 11:48:53,191.191 INFO    ] Waiting 0.85 seconds before fallback handling...
[2026-06-12 11:48:54,436.436 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 11:48:54,437.437 INFO    ] Checking for system updates...
[2026-06-12 11:48:54,458.458 INFO    ] 200
[2026-06-12 11:48:54,460.460 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:48:54,493.493 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 11:48:54,495.495 INFO    ] No update needed
[2026-06-12 11:48:54,496.496 INFO    ] Checking for camera pi updates...
[2026-06-12 11:48:54,520.520 INFO    ] 200
[2026-06-12 11:48:54,521.521 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:48:54,547.547 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 11:48:54,582.582 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 11:48:54,584.584 INFO    ] No camera update needed
[2026-06-12 11:48:54,585.585 INFO    ] Script finished. Safe exiting...
[2026-06-12 11:48:54,587.587 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 11:48:54,590.590 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 11:48:54,593.593 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 11:48:56,632.632 INFO    ] ================================================
[2026-06-12 11:48:56,648.648 INFO    ] Launching Daemon at Fri Jun 12 11:48:56 IST 2026
[2026-06-12 11:48:56,659.659 INFO    ] ================================================
[2026-06-12 11:48:57,036.036 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 11:48:57
[2026-06-12 11:48:57,376.376 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 11:48:57,530.530 INFO    ] Initializing speech engine...
[2026-06-12 11:48:57,533.533 INFO    ] 2026-06-12 11:48:57
[2026-06-12 11:48:57,741.741 INFO    ] 2026-06-12 11:48:57
[2026-06-12 11:48:57,770.770 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 11:48:57,954.954 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 11:48:57,964.964 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 11:48:58,097.097 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 11:48:58,158.158 INFO    ] time= 12/06/2026 11:48:58
[2026-06-12 11:48:58,182.182 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 11:48:58,252.252 INFO    ] Checking for existing commands in stream...
[2026-06-12 11:48:58,313.313 INFO    ] No existing commands found in stream
[2026-06-12 11:49:03,323.323 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 11:49:03,333.333 INFO    ] Waiting 0.05 seconds before fallback handling...
[2026-06-12 11:49:03,739.739 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 11:49:03,741.741 INFO    ] Checking for system updates...
[2026-06-12 11:49:03,762.762 INFO    ] 200
[2026-06-12 11:49:03,764.764 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:49:03,794.794 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 11:49:03,796.796 INFO    ] No update needed
[2026-06-12 11:49:03,797.797 INFO    ] Checking for camera pi updates...
[2026-06-12 11:49:03,817.817 INFO    ] 200
[2026-06-12 11:49:03,819.819 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:49:03,842.842 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 11:49:03,881.881 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 11:49:03,882.882 INFO    ] No camera update needed
[2026-06-12 11:49:03,884.884 INFO    ] Script finished. Safe exiting...
[2026-06-12 11:49:03,885.885 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 11:49:03,888.888 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 11:49:03,891.891 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 11:49:05,930.930 INFO    ] ================================================
[2026-06-12 11:49:05,946.946 INFO    ] Launching Daemon at Fri Jun 12 11:49:05 IST 2026
[2026-06-12 11:49:05,958.958 INFO    ] ================================================
[2026-06-12 11:49:06,308.308 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 11:49:06
[2026-06-12 11:49:06,625.625 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 11:49:06,768.768 INFO    ] Initializing speech engine...
[2026-06-12 11:49:06,773.773 INFO    ] 2026-06-12 11:49:06
[2026-06-12 11:49:06,974.974 INFO    ] 2026-06-12 11:49:06
[2026-06-12 11:49:07,003.003 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 11:49:07,186.186 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 11:49:07,195.195 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 11:49:07,381.381 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 11:49:07,413.413 INFO    ] time= 12/06/2026 11:49:07
[2026-06-12 11:49:07,415.415 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 11:49:07,421.421 INFO    ] Checking for existing commands in stream...
[2026-06-12 11:49:07,488.488 INFO    ] No existing commands found in stream
[2026-06-12 11:49:12,502.502 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 11:49:12,505.505 INFO    ] Waiting 1.17 seconds before fallback handling...
[2026-06-12 11:49:14,028.028 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 11:49:14,029.029 INFO    ] Checking for system updates...
[2026-06-12 11:49:14,050.050 INFO    ] 200
[2026-06-12 11:49:14,051.051 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:49:14,082.082 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 11:49:14,083.083 INFO    ] No update needed
[2026-06-12 11:49:14,084.084 INFO    ] Checking for camera pi updates...
[2026-06-12 11:49:14,105.105 INFO    ] 200
[2026-06-12 11:49:14,107.107 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:49:14,131.131 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 11:49:14,170.170 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 11:49:14,171.171 INFO    ] No camera update needed
[2026-06-12 11:49:14,173.173 INFO    ] Script finished. Safe exiting...
[2026-06-12 11:49:14,174.174 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 11:49:14,177.177 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 11:49:14,180.180 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 11:49:16,221.221 INFO    ] ================================================
[2026-06-12 11:49:16,237.237 INFO    ] Launching Daemon at Fri Jun 12 11:49:16 IST 2026
[2026-06-12 11:49:16,248.248 INFO    ] ================================================
[2026-06-12 11:49:16,637.637 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 11:49:16
[2026-06-12 11:49:16,977.977 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 11:49:17,133.133 INFO    ] Initializing speech engine...
[2026-06-12 11:49:17,141.141 INFO    ] 2026-06-12 11:49:17
[2026-06-12 11:49:17,346.346 INFO    ] 2026-06-12 11:49:17
[2026-06-12 11:49:17,375.375 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 11:49:17,564.564 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 11:49:17,574.574 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 11:49:17,726.726 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 11:49:17,776.776 INFO    ] time= 12/06/2026 11:49:17
[2026-06-12 11:49:17,799.799 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 11:49:17,805.805 INFO    ] Checking for existing commands in stream...
[2026-06-12 11:49:17,874.874 INFO    ] No existing commands found in stream
[2026-06-12 11:49:22,899.899 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 11:49:22,902.902 INFO    ] Waiting 2.30 seconds before fallback handling...
[2026-06-12 11:49:25,568.568 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 11:49:25,569.569 INFO    ] Checking for system updates...
[2026-06-12 11:49:25,591.591 INFO    ] 200
[2026-06-12 11:49:25,593.593 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:49:25,625.625 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 11:49:25,627.627 INFO    ] No update needed
[2026-06-12 11:49:25,628.628 INFO    ] Checking for camera pi updates...
[2026-06-12 11:49:25,647.647 INFO    ] 200
[2026-06-12 11:49:25,649.649 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:49:25,672.672 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 11:49:25,814.814 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 11:49:25,816.816 INFO    ] No camera update needed
[2026-06-12 11:49:25,817.817 INFO    ] Script finished. Safe exiting...
[2026-06-12 11:49:25,818.818 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 11:49:25,821.821 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 11:49:25,824.824 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 11:49:27,863.863 INFO    ] ================================================
[2026-06-12 11:49:27,878.878 INFO    ] Launching Daemon at Fri Jun 12 11:49:27 IST 2026
[2026-06-12 11:49:27,889.889 INFO    ] ================================================
[2026-06-12 11:49:28,276.276 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 11:49:28
[2026-06-12 11:49:28,616.616 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 11:49:28,748.748 INFO    ] Initializing speech engine...
[2026-06-12 11:49:28,751.751 INFO    ] 2026-06-12 11:49:28
[2026-06-12 11:49:28,970.970 INFO    ] 2026-06-12 11:49:28
[2026-06-12 11:49:29,000.000 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 11:49:29,186.186 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 11:49:29,189.189 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 11:49:29,321.321 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 11:49:29,376.376 INFO    ] time= 12/06/2026 11:49:29
[2026-06-12 11:49:29,420.420 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 11:49:29,427.427 INFO    ] Checking for existing commands in stream...
[2026-06-12 11:49:29,494.494 INFO    ] No existing commands found in stream
[2026-06-12 11:49:34,508.508 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 11:49:34,511.511 INFO    ] Waiting 0.80 seconds before fallback handling...
[2026-06-12 11:49:35,710.710 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 11:49:35,713.713 INFO    ] Checking for system updates...
[2026-06-12 11:49:35,748.748 INFO    ] 200
[2026-06-12 11:49:35,751.751 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:49:35,806.806 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 11:49:35,809.809 INFO    ] No update needed
[2026-06-12 11:49:35,812.812 INFO    ] Checking for camera pi updates...
[2026-06-12 11:49:35,845.845 INFO    ] 200
[2026-06-12 11:49:35,846.846 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:49:35,871.871 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 11:49:35,907.907 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 11:49:35,908.908 INFO    ] No camera update needed
[2026-06-12 11:49:35,909.909 INFO    ] Script finished. Safe exiting...
[2026-06-12 11:49:35,911.911 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 11:49:35,914.914 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 11:49:35,916.916 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 11:49:37,955.955 INFO    ] ================================================
[2026-06-12 11:49:37,970.970 INFO    ] Launching Daemon at Fri Jun 12 11:49:37 IST 2026
[2026-06-12 11:49:37,981.981 INFO    ] ================================================
[2026-06-12 11:49:38,370.370 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 11:49:38
[2026-06-12 11:49:38,716.716 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 11:49:38,868.868 INFO    ] Initializing speech engine...
[2026-06-12 11:49:38,874.874 INFO    ] 2026-06-12 11:49:38
[2026-06-12 11:49:39,084.084 INFO    ] 2026-06-12 11:49:39
[2026-06-12 11:49:39,114.114 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 11:49:39,301.301 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 11:49:39,310.310 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 11:49:39,452.452 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 11:49:39,511.511 INFO    ] time= 12/06/2026 11:49:39
[2026-06-12 11:49:39,534.534 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 11:49:39,541.541 INFO    ] Checking for existing commands in stream...
[2026-06-12 11:49:39,609.609 INFO    ] No existing commands found in stream
[2026-06-12 11:49:44,624.624 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 11:49:44,627.627 INFO    ] Waiting 0.48 seconds before fallback handling...
[2026-06-12 11:49:45,464.464 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 11:49:45,465.465 INFO    ] Checking for system updates...
[2026-06-12 11:49:45,487.487 INFO    ] 200
[2026-06-12 11:49:45,488.488 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:49:45,518.518 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 11:49:45,519.519 INFO    ] No update needed
[2026-06-12 11:49:45,521.521 INFO    ] Checking for camera pi updates...
[2026-06-12 11:49:45,540.540 INFO    ] 200
[2026-06-12 11:49:45,542.542 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:49:45,567.567 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 11:49:45,611.611 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 11:49:45,612.612 INFO    ] No camera update needed
[2026-06-12 11:49:45,614.614 INFO    ] Script finished. Safe exiting...
[2026-06-12 11:49:45,615.615 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 11:49:45,618.618 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 11:49:45,620.620 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 11:49:47,662.662 INFO    ] ================================================
[2026-06-12 11:49:47,678.678 INFO    ] Launching Daemon at Fri Jun 12 11:49:47 IST 2026
[2026-06-12 11:49:47,689.689 INFO    ] ================================================
[2026-06-12 11:49:48,073.073 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 11:49:48
[2026-06-12 11:49:48,418.418 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 11:49:48,571.571 INFO    ] Initializing speech engine...
[2026-06-12 11:49:48,576.576 INFO    ] 2026-06-12 11:49:48
[2026-06-12 11:49:48,785.785 INFO    ] 2026-06-12 11:49:48
[2026-06-12 11:49:48,815.815 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 11:49:49,001.001 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 11:49:49,011.011 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 11:49:49,156.156 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 11:49:49,209.209 INFO    ] time= 12/06/2026 11:49:49
[2026-06-12 11:49:49,233.233 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 11:49:49,239.239 INFO    ] Checking for existing commands in stream...
[2026-06-12 11:49:49,306.306 INFO    ] No existing commands found in stream
[2026-06-12 11:49:54,316.316 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 11:49:54,319.319 INFO    ] Waiting 1.79 seconds before fallback handling...
[2026-06-12 11:49:56,482.482 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 11:49:56,483.483 INFO    ] Checking for system updates...
[2026-06-12 11:49:56,505.505 INFO    ] 200
[2026-06-12 11:49:56,507.507 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:49:56,542.542 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 11:49:56,543.543 INFO    ] No update needed
[2026-06-12 11:49:56,544.544 INFO    ] Checking for camera pi updates...
[2026-06-12 11:49:56,565.565 INFO    ] 200
[2026-06-12 11:49:56,567.567 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:49:56,590.590 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 11:49:56,637.637 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 11:49:56,642.642 INFO    ] No camera update needed
[2026-06-12 11:49:56,644.644 INFO    ] Script finished. Safe exiting...
[2026-06-12 11:49:56,645.645 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 11:49:56,648.648 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 11:49:56,651.651 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 11:49:58,690.690 INFO    ] ================================================
[2026-06-12 11:49:58,707.707 INFO    ] Launching Daemon at Fri Jun 12 11:49:58 IST 2026
[2026-06-12 11:49:58,718.718 INFO    ] ================================================
[2026-06-12 11:49:59,090.090 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 11:49:59
[2026-06-12 11:49:59,431.431 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 11:49:59,585.585 INFO    ] Initializing speech engine...
[2026-06-12 11:49:59,590.590 INFO    ] 2026-06-12 11:49:59
[2026-06-12 11:49:59,795.795 INFO    ] 2026-06-12 11:49:59
[2026-06-12 11:49:59,825.825 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 11:50:00,010.010 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 11:50:00,020.020 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 11:50:00,163.163 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 11:50:00,215.215 INFO    ] time= 12/06/2026 11:50:00
[2026-06-12 11:50:00,238.238 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 11:50:00,244.244 INFO    ] Checking for existing commands in stream...
[2026-06-12 11:50:00,311.311 INFO    ] No existing commands found in stream
[2026-06-12 11:50:05,320.320 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 11:50:05,323.323 INFO    ] Waiting 0.22 seconds before fallback handling...
[2026-06-12 11:50:07,956.956 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 11:50:07,959.959 INFO    ] Checking for system updates...
[2026-06-12 11:50:07,996.996 INFO    ] 200
[2026-06-12 11:50:07,999.999 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:50:08,054.054 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 11:50:08,057.057 INFO    ] No update needed
[2026-06-12 11:50:08,059.059 INFO    ] Checking for camera pi updates...
[2026-06-12 11:50:08,097.097 INFO    ] 200
[2026-06-12 11:50:08,099.099 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:50:08,140.140 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 11:50:08,181.181 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 11:50:08,183.183 INFO    ] No camera update needed
[2026-06-12 11:50:08,186.186 INFO    ] Script finished. Safe exiting...
[2026-06-12 11:50:08,188.188 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 11:50:08,194.194 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 11:50:08,199.199 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 11:50:10,239.239 INFO    ] ================================================
[2026-06-12 11:50:10,255.255 INFO    ] Launching Daemon at Fri Jun 12 11:50:10 IST 2026
[2026-06-12 11:50:10,267.267 INFO    ] ================================================
[2026-06-12 11:50:10,611.611 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 11:50:10
[2026-06-12 11:50:10,931.931 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 11:50:11,063.063 INFO    ] Initializing speech engine...
[2026-06-12 11:50:11,077.077 INFO    ] 2026-06-12 11:50:11
[2026-06-12 11:50:11,283.283 INFO    ] 2026-06-12 11:50:11
[2026-06-12 11:50:11,312.312 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 11:50:11,496.496 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 11:50:11,504.504 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 11:50:11,634.634 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 11:50:11,700.700 INFO    ] time= 12/06/2026 11:50:11
[2026-06-12 11:50:11,724.724 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 11:50:11,731.731 INFO    ] Checking for existing commands in stream...
[2026-06-12 11:50:11,821.821 INFO    ] No existing commands found in stream
[2026-06-12 11:50:16,830.830 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 11:50:16,833.833 INFO    ] Waiting 2.37 seconds before fallback handling...
[2026-06-12 11:50:19,586.586 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 11:50:19,587.587 INFO    ] Checking for system updates...
[2026-06-12 11:50:19,609.609 INFO    ] 200
[2026-06-12 11:50:19,610.610 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:50:19,643.643 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 11:50:19,644.644 INFO    ] No update needed
[2026-06-12 11:50:19,645.645 INFO    ] Checking for camera pi updates...
[2026-06-12 11:50:19,665.665 INFO    ] 200
[2026-06-12 11:50:19,666.666 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:50:19,691.691 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 11:50:19,731.731 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 11:50:19,732.732 INFO    ] No camera update needed
[2026-06-12 11:50:19,734.734 INFO    ] Script finished. Safe exiting...
[2026-06-12 11:50:19,735.735 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 11:50:19,738.738 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 11:50:19,741.741 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 11:50:21,764.764 INFO    ] ================================================
[2026-06-12 11:50:21,773.773 INFO    ] Launching Daemon at Fri Jun 12 11:50:21 IST 2026
[2026-06-12 11:50:21,779.779 INFO    ] ================================================
[2026-06-12 11:50:22,101.101 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 11:50:22
[2026-06-12 11:50:22,440.440 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 11:50:22,590.590 INFO    ] Initializing speech engine...
[2026-06-12 11:50:22,596.596 INFO    ] 2026-06-12 11:50:22
[2026-06-12 11:50:22,802.802 INFO    ] 2026-06-12 11:50:22
[2026-06-12 11:50:22,830.830 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 11:50:23,015.015 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 11:50:23,025.025 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 11:50:23,154.154 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 11:50:23,221.221 INFO    ] time= 12/06/2026 11:50:23
[2026-06-12 11:50:23,245.245 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 11:50:23,251.251 INFO    ] Checking for existing commands in stream...
[2026-06-12 11:50:23,341.341 INFO    ] No existing commands found in stream
[2026-06-12 11:50:28,356.356 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 11:50:28,359.359 INFO    ] Waiting 3.18 seconds before fallback handling...
[2026-06-12 11:50:31,868.868 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 11:50:31,870.870 INFO    ] Checking for system updates...
[2026-06-12 11:50:31,897.897 INFO    ] 200
[2026-06-12 11:50:31,898.898 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:50:31,939.939 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 11:50:31,941.941 INFO    ] No update needed
[2026-06-12 11:50:31,943.943 INFO    ] Checking for camera pi updates...
[2026-06-12 11:50:31,970.970 INFO    ] 200
[2026-06-12 11:50:31,972.972 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:50:32,001.001 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 11:50:32,028.028 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 11:50:32,030.030 INFO    ] No camera update needed
[2026-06-12 11:50:32,032.032 INFO    ] Script finished. Safe exiting...
[2026-06-12 11:50:32,034.034 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 11:50:32,037.037 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 11:50:32,041.041 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 11:50:34,072.072 INFO    ] ================================================
[2026-06-12 11:50:34,088.088 INFO    ] Launching Daemon at Fri Jun 12 11:50:34 IST 2026
[2026-06-12 11:50:34,098.098 INFO    ] ================================================
[2026-06-12 11:50:34,443.443 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 11:50:34
[2026-06-12 11:50:34,754.754 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 11:50:34,890.890 INFO    ] Initializing speech engine...
[2026-06-12 11:50:34,898.898 INFO    ] 2026-06-12 11:50:34
[2026-06-12 11:50:35,104.104 INFO    ] 2026-06-12 11:50:35
[2026-06-12 11:50:35,132.132 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 11:50:35,316.316 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 11:50:35,326.326 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 11:50:35,446.446 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 11:50:35,511.511 INFO    ] time= 12/06/2026 11:50:35
[2026-06-12 11:50:35,544.544 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 11:50:35,551.551 INFO    ] Checking for existing commands in stream...
[2026-06-12 11:50:35,641.641 INFO    ] No existing commands found in stream
[2026-06-12 11:50:40,649.649 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 11:50:40,652.652 INFO    ] Waiting 0.14 seconds before fallback handling...
[2026-06-12 11:50:41,163.163 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 11:50:41,164.164 INFO    ] Checking for system updates...
[2026-06-12 11:50:41,185.185 INFO    ] 200
[2026-06-12 11:50:41,187.187 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:50:41,221.221 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 11:50:41,222.222 INFO    ] No update needed
[2026-06-12 11:50:41,224.224 INFO    ] Checking for camera pi updates...
[2026-06-12 11:50:41,244.244 INFO    ] 200
[2026-06-12 11:50:41,245.245 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:50:41,270.270 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 11:50:41,310.310 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 11:50:41,312.312 INFO    ] No camera update needed
[2026-06-12 11:50:41,313.313 INFO    ] Script finished. Safe exiting...
[2026-06-12 11:50:41,314.314 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 11:50:41,317.317 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 11:50:41,320.320 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 11:50:43,357.357 INFO    ] ================================================
[2026-06-12 11:50:43,373.373 INFO    ] Launching Daemon at Fri Jun 12 11:50:43 IST 2026
[2026-06-12 11:50:43,383.383 INFO    ] ================================================
[2026-06-12 11:50:43,741.741 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 11:50:43
[2026-06-12 11:50:44,051.051 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 11:50:44,180.180 INFO    ] Initializing speech engine...
[2026-06-12 11:50:44,184.184 INFO    ] 2026-06-12 11:50:44
[2026-06-12 11:50:44,387.387 INFO    ] 2026-06-12 11:50:44
[2026-06-12 11:50:44,419.419 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 11:50:44,576.576 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 11:50:44,629.629 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 11:50:44,783.783 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 11:50:44,835.835 INFO    ] time= 12/06/2026 11:50:44
[2026-06-12 11:50:44,873.873 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 11:50:44,891.891 INFO    ] Checking for existing commands in stream...
[2026-06-12 11:50:44,967.967 INFO    ] No existing commands found in stream
[2026-06-12 11:50:49,977.977 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 11:50:49,979.979 INFO    ] Waiting 1.67 seconds before fallback handling...
[2026-06-12 11:50:51,989.989 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 11:50:51,991.991 INFO    ] Checking for system updates...
[2026-06-12 11:50:52,013.013 INFO    ] 200
[2026-06-12 11:50:52,014.014 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:50:52,044.044 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 11:50:52,045.045 INFO    ] No update needed
[2026-06-12 11:50:52,046.046 INFO    ] Checking for camera pi updates...
[2026-06-12 11:50:52,068.068 INFO    ] 200
[2026-06-12 11:50:52,069.069 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:50:52,093.093 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 11:50:52,132.132 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 11:50:52,133.133 INFO    ] No camera update needed
[2026-06-12 11:50:52,135.135 INFO    ] Script finished. Safe exiting...
[2026-06-12 11:50:52,136.136 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 11:50:52,139.139 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 11:50:52,141.141 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 11:50:54,180.180 INFO    ] ================================================
[2026-06-12 11:50:54,195.195 INFO    ] Launching Daemon at Fri Jun 12 11:50:54 IST 2026
[2026-06-12 11:50:54,206.206 INFO    ] ================================================
[2026-06-12 11:50:54,538.538 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 11:50:54
[2026-06-12 11:50:54,850.850 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 11:50:54,980.980 INFO    ] Initializing speech engine...
[2026-06-12 11:50:54,984.984 INFO    ] 2026-06-12 11:50:54
[2026-06-12 11:50:55,178.178 INFO    ] 2026-06-12 11:50:55
[2026-06-12 11:50:55,211.211 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 11:50:55,434.434 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 11:50:55,438.438 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 11:50:55,584.584 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 11:50:55,655.655 INFO    ] time= 12/06/2026 11:50:55
[2026-06-12 11:50:55,679.679 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 11:50:55,681.681 INFO    ] Checking for existing commands in stream...
[2026-06-12 11:50:55,776.776 INFO    ] No existing commands found in stream
[2026-06-12 11:51:00,789.789 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 11:51:00,792.792 INFO    ] Waiting 1.20 seconds before fallback handling...
[2026-06-12 11:51:02,300.300 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 11:51:02,301.301 INFO    ] Checking for system updates...
[2026-06-12 11:51:02,322.322 INFO    ] 200
[2026-06-12 11:51:02,323.323 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:51:02,356.356 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 11:51:02,358.358 INFO    ] No update needed
[2026-06-12 11:51:02,359.359 INFO    ] Checking for camera pi updates...
[2026-06-12 11:51:02,379.379 INFO    ] 200
[2026-06-12 11:51:02,380.380 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:51:02,408.408 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 11:51:02,432.432 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 11:51:02,434.434 INFO    ] No camera update needed
[2026-06-12 11:51:02,435.435 INFO    ] Script finished. Safe exiting...
[2026-06-12 11:51:02,436.436 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 11:51:02,439.439 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 11:51:02,442.442 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 11:51:04,483.483 INFO    ] ================================================
[2026-06-12 11:51:04,499.499 INFO    ] Launching Daemon at Fri Jun 12 11:51:04 IST 2026
[2026-06-12 11:51:04,509.509 INFO    ] ================================================
[2026-06-12 11:51:04,873.873 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 11:51:04
[2026-06-12 11:51:05,201.201 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 11:51:05,333.333 INFO    ] Initializing speech engine...
[2026-06-12 11:51:05,337.337 INFO    ] 2026-06-12 11:51:05
[2026-06-12 11:51:05,553.553 INFO    ] 2026-06-12 11:51:05
[2026-06-12 11:51:05,583.583 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 11:51:06,805.805 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 11:51:06,809.809 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 11:51:06,933.933 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 11:51:06,935.935 INFO    ] time= 12/06/2026 11:51:06
[2026-06-12 11:51:06,936.936 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 11:51:06,937.937 INFO    ] Checking for existing commands in stream...
[2026-06-12 11:51:06,992.992 INFO    ] No existing commands found in stream
[2026-06-12 11:51:12,001.001 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 11:51:12,004.004 INFO    ] Waiting 1.54 seconds before fallback handling...
[2026-06-12 11:51:13,948.948 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 11:51:13,950.950 INFO    ] Checking for system updates...
[2026-06-12 11:51:13,973.973 INFO    ] 200
[2026-06-12 11:51:13,974.974 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:51:14,008.008 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 11:51:14,009.009 INFO    ] No update needed
[2026-06-12 11:51:14,011.011 INFO    ] Checking for camera pi updates...
[2026-06-12 11:51:14,032.032 INFO    ] 200
[2026-06-12 11:51:14,034.034 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:51:14,060.060 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 11:51:14,098.098 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 11:51:14,100.100 INFO    ] No camera update needed
[2026-06-12 11:51:14,101.101 INFO    ] Script finished. Safe exiting...
[2026-06-12 11:51:14,103.103 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 11:51:14,107.107 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 11:51:14,110.110 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 11:51:16,151.151 INFO    ] ================================================
[2026-06-12 11:51:16,166.166 INFO    ] Launching Daemon at Fri Jun 12 11:51:16 IST 2026
[2026-06-12 11:51:16,177.177 INFO    ] ================================================
[2026-06-12 11:51:16,530.530 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 11:51:16
[2026-06-12 11:51:16,848.848 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 11:51:16,991.991 INFO    ] Initializing speech engine...
[2026-06-12 11:51:16,996.996 INFO    ] 2026-06-12 11:51:16
[2026-06-12 11:51:17,198.198 INFO    ] 2026-06-12 11:51:17
[2026-06-12 11:51:17,227.227 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 11:51:17,412.412 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 11:51:17,421.421 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 11:51:17,556.556 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 11:51:17,618.618 INFO    ] time= 12/06/2026 11:51:17
[2026-06-12 11:51:17,642.642 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 11:51:17,649.649 INFO    ] Checking for existing commands in stream...
[2026-06-12 11:51:17,716.716 INFO    ] No existing commands found in stream
[2026-06-12 11:51:22,725.725 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 11:51:22,728.728 INFO    ] Waiting 1.78 seconds before fallback handling...
[2026-06-12 11:51:24,891.891 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 11:51:24,893.893 INFO    ] Checking for system updates...
[2026-06-12 11:51:24,913.913 INFO    ] 200
[2026-06-12 11:51:24,914.914 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:51:24,947.947 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 11:51:24,948.948 INFO    ] No update needed
[2026-06-12 11:51:24,950.950 INFO    ] Checking for camera pi updates...
[2026-06-12 11:51:24,969.969 INFO    ] 200
[2026-06-12 11:51:24,971.971 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:51:24,994.994 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 11:51:25,032.032 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 11:51:25,033.033 INFO    ] No camera update needed
[2026-06-12 11:51:25,034.034 INFO    ] Script finished. Safe exiting...
[2026-06-12 11:51:25,036.036 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 11:51:25,039.039 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 11:51:25,041.041 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 11:51:27,080.080 INFO    ] ================================================
[2026-06-12 11:51:27,095.095 INFO    ] Launching Daemon at Fri Jun 12 11:51:27 IST 2026
[2026-06-12 11:51:27,106.106 INFO    ] ================================================
[2026-06-12 11:51:27,453.453 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 11:51:27
[2026-06-12 11:51:27,765.765 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 11:51:27,900.900 INFO    ] Initializing speech engine...
[2026-06-12 11:51:27,904.904 INFO    ] 2026-06-12 11:51:27
[2026-06-12 11:51:28,113.113 INFO    ] 2026-06-12 11:51:28
[2026-06-12 11:51:28,142.142 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 11:51:28,366.366 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 11:51:28,370.370 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 11:51:28,519.519 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 11:51:28,579.579 INFO    ] time= 12/06/2026 11:51:28
[2026-06-12 11:51:28,610.610 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 11:51:28,621.621 INFO    ] Checking for existing commands in stream...
[2026-06-12 11:51:28,698.698 INFO    ] No existing commands found in stream
[2026-06-12 11:51:33,708.708 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 11:51:33,711.711 INFO    ] Waiting 3.34 seconds before fallback handling...
[2026-06-12 11:51:37,421.421 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 11:51:37,422.422 INFO    ] Checking for system updates...
[2026-06-12 11:51:37,443.443 INFO    ] 200
[2026-06-12 11:51:37,444.444 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:51:37,477.477 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 11:51:37,478.478 INFO    ] No update needed
[2026-06-12 11:51:37,480.480 INFO    ] Checking for camera pi updates...
[2026-06-12 11:51:37,501.501 INFO    ] 200
[2026-06-12 11:51:37,502.502 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:51:37,527.527 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 11:51:37,563.563 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 11:51:37,564.564 INFO    ] No camera update needed
[2026-06-12 11:51:37,566.566 INFO    ] Script finished. Safe exiting...
[2026-06-12 11:51:37,567.567 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 11:51:37,570.570 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 11:51:37,573.573 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 11:51:39,612.612 INFO    ] ================================================
[2026-06-12 11:51:39,627.627 INFO    ] Launching Daemon at Fri Jun 12 11:51:39 IST 2026
[2026-06-12 11:51:39,638.638 INFO    ] ================================================
[2026-06-12 11:51:39,990.990 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 11:51:39
[2026-06-12 11:51:40,304.304 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 11:51:40,452.452 INFO    ] Initializing speech engine...
[2026-06-12 11:51:40,456.456 INFO    ] 2026-06-12 11:51:40
[2026-06-12 11:51:40,674.674 INFO    ] 2026-06-12 11:51:40
[2026-06-12 11:51:40,705.705 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 11:51:40,906.906 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 11:51:40,910.910 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 11:51:41,045.045 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 11:51:41,111.111 INFO    ] time= 12/06/2026 11:51:41
[2026-06-12 11:51:41,140.140 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 11:51:41,146.146 INFO    ] Checking for existing commands in stream...
[2026-06-12 11:51:41,262.262 INFO    ] No existing commands found in stream
[2026-06-12 11:51:46,272.272 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 11:51:46,275.275 INFO    ] Waiting 2.49 seconds before fallback handling...
[2026-06-12 11:51:49,155.155 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 11:51:49,157.157 INFO    ] Checking for system updates...
[2026-06-12 11:51:49,178.178 INFO    ] 200
[2026-06-12 11:51:49,179.179 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:51:49,211.211 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 11:51:49,212.212 INFO    ] No update needed
[2026-06-12 11:51:49,214.214 INFO    ] Checking for camera pi updates...
[2026-06-12 11:51:49,234.234 INFO    ] 200
[2026-06-12 11:51:49,235.235 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:51:49,259.259 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 11:51:49,303.303 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 11:51:49,305.305 INFO    ] No camera update needed
[2026-06-12 11:51:49,306.306 INFO    ] Script finished. Safe exiting...
[2026-06-12 11:51:49,307.307 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 11:51:49,311.311 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 11:51:49,314.314 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 11:51:51,344.344 INFO    ] ================================================
[2026-06-12 11:51:51,353.353 INFO    ] Launching Daemon at Fri Jun 12 11:51:51 IST 2026
[2026-06-12 11:51:51,358.358 INFO    ] ================================================
[2026-06-12 11:51:51,676.676 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 11:51:51
[2026-06-12 11:51:51,991.991 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 11:51:52,123.123 INFO    ] Initializing speech engine...
[2026-06-12 11:51:52,127.127 INFO    ] 2026-06-12 11:51:52
[2026-06-12 11:51:52,319.319 INFO    ] 2026-06-12 11:51:52
[2026-06-12 11:51:52,365.365 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 11:51:52,526.526 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 11:51:52,559.559 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 11:51:52,713.713 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 11:51:52,743.743 INFO    ] time= 12/06/2026 11:51:52
[2026-06-12 11:51:52,801.801 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 11:51:52,847.847 INFO    ] Checking for existing commands in stream...
[2026-06-12 11:51:52,929.929 INFO    ] No existing commands found in stream
[2026-06-12 11:51:57,940.940 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 11:51:57,943.943 INFO    ] Waiting 2.54 seconds before fallback handling...
[2026-06-12 11:52:00,848.848 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 11:52:00,849.849 INFO    ] Checking for system updates...
[2026-06-12 11:52:00,871.871 INFO    ] 200
[2026-06-12 11:52:00,873.873 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:52:00,909.909 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 11:52:00,911.911 INFO    ] No update needed
[2026-06-12 11:52:00,912.912 INFO    ] Checking for camera pi updates...
[2026-06-12 11:52:00,932.932 INFO    ] 200
[2026-06-12 11:52:00,933.933 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:52:00,957.957 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 11:52:00,993.993 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 11:52:00,994.994 INFO    ] No camera update needed
[2026-06-12 11:52:00,996.996 INFO    ] Script finished. Safe exiting...
[2026-06-12 11:52:00,997.997 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 11:52:01,000.000 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 11:52:01,003.003 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 11:52:03,035.035 INFO    ] ================================================
[2026-06-12 11:52:03,051.051 INFO    ] Launching Daemon at Fri Jun 12 11:52:03 IST 2026
[2026-06-12 11:52:03,062.062 INFO    ] ================================================
[2026-06-12 11:52:03,425.425 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 11:52:03
[2026-06-12 11:52:03,744.744 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 11:52:03,897.897 INFO    ] Initializing speech engine...
[2026-06-12 11:52:03,902.902 INFO    ] 2026-06-12 11:52:03
[2026-06-12 11:52:04,106.106 INFO    ] 2026-06-12 11:52:04
[2026-06-12 11:52:04,136.136 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 11:52:04,320.320 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 11:52:04,330.330 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 11:52:04,459.459 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 11:52:04,527.527 INFO    ] time= 12/06/2026 11:52:04
[2026-06-12 11:52:04,551.551 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 11:52:04,557.557 INFO    ] Checking for existing commands in stream...
[2026-06-12 11:52:04,647.647 INFO    ] No existing commands found in stream
[2026-06-12 11:52:09,657.657 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 11:52:09,660.660 INFO    ] Waiting 2.83 seconds before fallback handling...
[2026-06-12 11:52:12,840.840 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 11:52:12,841.841 INFO    ] Checking for system updates...
[2026-06-12 11:52:12,862.862 INFO    ] 200
[2026-06-12 11:52:12,864.864 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:52:12,896.896 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 11:52:12,897.897 INFO    ] No update needed
[2026-06-12 11:52:12,899.899 INFO    ] Checking for camera pi updates...
[2026-06-12 11:52:12,919.919 INFO    ] 200
[2026-06-12 11:52:12,921.921 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:52:12,945.945 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 11:52:12,982.982 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 11:52:12,984.984 INFO    ] No camera update needed
[2026-06-12 11:52:12,985.985 INFO    ] Script finished. Safe exiting...
[2026-06-12 11:52:12,986.986 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 11:52:12,989.989 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 11:52:12,992.992 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 11:52:15,030.030 INFO    ] ================================================
[2026-06-12 11:52:15,050.050 INFO    ] Launching Daemon at Fri Jun 12 11:52:15 IST 2026
[2026-06-12 11:52:15,060.060 INFO    ] ================================================
[2026-06-12 11:52:15,409.409 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 11:52:15
[2026-06-12 11:52:15,721.721 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 11:52:15,853.853 INFO    ] Initializing speech engine...
[2026-06-12 11:52:15,861.861 INFO    ] 2026-06-12 11:52:15
[2026-06-12 11:52:16,075.075 INFO    ] 2026-06-12 11:52:16
[2026-06-12 11:52:16,104.104 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 11:52:16,239.239 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 11:52:16,293.293 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 11:52:16,428.428 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 11:52:16,481.481 INFO    ] time= 12/06/2026 11:52:16
[2026-06-12 11:52:16,521.521 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 11:52:16,527.527 INFO    ] Checking for existing commands in stream...
[2026-06-12 11:52:16,599.599 INFO    ] No existing commands found in stream
[2026-06-12 11:52:21,608.608 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 11:52:21,611.611 INFO    ] Waiting 2.56 seconds before fallback handling...
[2026-06-12 11:52:24,543.543 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 11:52:24,544.544 INFO    ] Checking for system updates...
[2026-06-12 11:52:24,565.565 INFO    ] 200
[2026-06-12 11:52:24,566.566 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:52:24,598.598 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 11:52:24,599.599 INFO    ] No update needed
[2026-06-12 11:52:24,601.601 INFO    ] Checking for camera pi updates...
[2026-06-12 11:52:24,620.620 INFO    ] 200
[2026-06-12 11:52:24,622.622 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:52:24,645.645 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 11:52:24,677.677 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 11:52:24,678.678 INFO    ] No camera update needed
[2026-06-12 11:52:24,680.680 INFO    ] Script finished. Safe exiting...
[2026-06-12 11:52:24,681.681 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 11:52:24,684.684 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 11:52:24,687.687 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 11:52:26,728.728 INFO    ] ================================================
[2026-06-12 11:52:26,744.744 INFO    ] Launching Daemon at Fri Jun 12 11:52:26 IST 2026
[2026-06-12 11:52:26,755.755 INFO    ] ================================================
[2026-06-12 11:52:27,096.096 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 11:52:27
[2026-06-12 11:52:27,414.414 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 11:52:27,562.562 INFO    ] Initializing speech engine...
[2026-06-12 11:52:27,566.566 INFO    ] 2026-06-12 11:52:27
[2026-06-12 11:52:27,783.783 INFO    ] 2026-06-12 11:52:27
[2026-06-12 11:52:27,815.815 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 11:52:27,947.947 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 11:52:28,005.005 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 11:52:28,159.159 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 11:52:28,186.186 INFO    ] time= 12/06/2026 11:52:28
[2026-06-12 11:52:28,208.208 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 11:52:28,239.239 INFO    ] Checking for existing commands in stream...
[2026-06-12 11:52:28,331.331 INFO    ] No existing commands found in stream
[2026-06-12 11:52:33,340.340 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 11:52:33,343.343 INFO    ] Waiting 1.53 seconds before fallback handling...
[2026-06-12 11:52:35,227.227 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 11:52:35,228.228 INFO    ] Checking for system updates...
[2026-06-12 11:52:35,250.250 INFO    ] 200
[2026-06-12 11:52:35,251.251 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:52:35,281.281 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 11:52:35,283.283 INFO    ] No update needed
[2026-06-12 11:52:35,284.284 INFO    ] Checking for camera pi updates...
[2026-06-12 11:52:35,304.304 INFO    ] 200
[2026-06-12 11:52:35,305.305 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:52:35,328.328 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 11:52:35,376.376 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 11:52:35,377.377 INFO    ] No camera update needed
[2026-06-12 11:52:35,378.378 INFO    ] Script finished. Safe exiting...
[2026-06-12 11:52:35,379.379 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 11:52:35,383.383 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 11:52:35,385.385 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 11:52:37,424.424 INFO    ] ================================================
[2026-06-12 11:52:37,439.439 INFO    ] Launching Daemon at Fri Jun 12 11:52:37 IST 2026
[2026-06-12 11:52:37,450.450 INFO    ] ================================================
[2026-06-12 11:52:37,817.817 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 11:52:37
[2026-06-12 11:52:38,128.128 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 11:52:38,258.258 INFO    ] Initializing speech engine...
[2026-06-12 11:52:38,262.262 INFO    ] 2026-06-12 11:52:38
[2026-06-12 11:52:38,480.480 INFO    ] 2026-06-12 11:52:38
[2026-06-12 11:52:38,509.509 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 11:52:38,697.697 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 11:52:38,705.705 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 11:52:38,834.834 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 11:52:38,900.900 INFO    ] time= 12/06/2026 11:52:38
[2026-06-12 11:52:38,929.929 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 11:52:38,935.935 INFO    ] Checking for existing commands in stream...
[2026-06-12 11:52:39,002.002 INFO    ] No existing commands found in stream
[2026-06-12 11:52:44,011.011 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 11:52:44,014.014 INFO    ] Waiting 3.62 seconds before fallback handling...
[2026-06-12 11:52:48,008.008 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 11:52:48,009.009 INFO    ] Checking for system updates...
[2026-06-12 11:52:48,031.031 INFO    ] 200
[2026-06-12 11:52:48,032.032 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:52:48,065.065 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 11:52:48,066.066 INFO    ] No update needed
[2026-06-12 11:52:48,067.067 INFO    ] Checking for camera pi updates...
[2026-06-12 11:52:48,087.087 INFO    ] 200
[2026-06-12 11:52:48,089.089 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:52:48,113.113 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 11:52:48,147.147 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 11:52:48,149.149 INFO    ] No camera update needed
[2026-06-12 11:52:48,150.150 INFO    ] Script finished. Safe exiting...
[2026-06-12 11:52:48,151.151 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 11:52:48,154.154 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 11:52:48,157.157 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 11:52:50,198.198 INFO    ] ================================================
[2026-06-12 11:52:50,213.213 INFO    ] Launching Daemon at Fri Jun 12 11:52:50 IST 2026
[2026-06-12 11:52:50,224.224 INFO    ] ================================================
[2026-06-12 11:52:50,614.614 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 11:52:50
[2026-06-12 11:52:50,950.950 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 11:52:51,103.103 INFO    ] Initializing speech engine...
[2026-06-12 11:52:51,108.108 INFO    ] 2026-06-12 11:52:51
[2026-06-12 11:52:51,317.317 INFO    ] 2026-06-12 11:52:51
[2026-06-12 11:52:51,346.346 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 11:52:51,531.531 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 11:52:51,541.541 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 11:52:51,670.670 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 11:52:51,734.734 INFO    ] time= 12/06/2026 11:52:51
[2026-06-12 11:52:51,762.762 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 11:52:51,769.769 INFO    ] Checking for existing commands in stream...
[2026-06-12 11:52:51,834.834 INFO    ] No existing commands found in stream
[2026-06-12 11:52:56,845.845 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 11:52:56,849.849 INFO    ] Waiting 0.82 seconds before fallback handling...
[2026-06-12 11:52:58,026.026 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 11:52:58,027.027 INFO    ] Checking for system updates...
[2026-06-12 11:52:58,048.048 INFO    ] 200
[2026-06-12 11:52:58,050.050 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:52:58,081.081 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 11:52:58,082.082 INFO    ] No update needed
[2026-06-12 11:52:58,084.084 INFO    ] Checking for camera pi updates...
[2026-06-12 11:52:58,103.103 INFO    ] 200
[2026-06-12 11:52:58,105.105 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:52:58,129.129 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 11:52:58,165.165 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 11:52:58,166.166 INFO    ] No camera update needed
[2026-06-12 11:52:58,168.168 INFO    ] Script finished. Safe exiting...
[2026-06-12 11:52:58,169.169 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 11:52:58,173.173 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 11:52:58,176.176 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 11:53:00,215.215 INFO    ] ================================================
[2026-06-12 11:53:00,231.231 INFO    ] Launching Daemon at Fri Jun 12 11:53:00 IST 2026
[2026-06-12 11:53:00,242.242 INFO    ] ================================================
[2026-06-12 11:53:00,590.590 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 11:53:00
[2026-06-12 11:53:00,932.932 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 11:53:01,073.073 INFO    ] Initializing speech engine...
[2026-06-12 11:53:01,085.085 INFO    ] 2026-06-12 11:53:01
[2026-06-12 11:53:01,297.297 INFO    ] 2026-06-12 11:53:01
[2026-06-12 11:53:01,326.326 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 11:53:01,472.472 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 11:53:01,476.476 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 11:53:01,584.584 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 11:53:01,587.587 INFO    ] time= 12/06/2026 11:53:01
[2026-06-12 11:53:01,589.589 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 11:53:01,592.592 INFO    ] Checking for existing commands in stream...
[2026-06-12 11:53:01,655.655 INFO    ] No existing commands found in stream
[2026-06-12 11:53:06,664.664 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 11:53:06,667.667 INFO    ] Waiting 2.45 seconds before fallback handling...
[2026-06-12 11:53:09,476.476 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 11:53:09,477.477 INFO    ] Checking for system updates...
[2026-06-12 11:53:09,498.498 INFO    ] 200
[2026-06-12 11:53:09,500.500 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:53:09,533.533 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 11:53:09,535.535 INFO    ] No update needed
[2026-06-12 11:53:09,536.536 INFO    ] Checking for camera pi updates...
[2026-06-12 11:53:09,557.557 INFO    ] 200
[2026-06-12 11:53:09,558.558 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:53:09,585.585 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 11:53:09,623.623 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 11:53:09,624.624 INFO    ] No camera update needed
[2026-06-12 11:53:09,626.626 INFO    ] Script finished. Safe exiting...
[2026-06-12 11:53:09,627.627 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 11:53:09,631.631 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 11:53:09,634.634 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 11:53:11,674.674 INFO    ] ================================================
[2026-06-12 11:53:11,690.690 INFO    ] Launching Daemon at Fri Jun 12 11:53:11 IST 2026
[2026-06-12 11:53:11,701.701 INFO    ] ================================================
[2026-06-12 11:53:12,051.051 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 11:53:12
[2026-06-12 11:53:12,388.388 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 11:53:12,539.539 INFO    ] Initializing speech engine...
[2026-06-12 11:53:12,545.545 INFO    ] 2026-06-12 11:53:12
[2026-06-12 11:53:12,752.752 INFO    ] 2026-06-12 11:53:12
[2026-06-12 11:53:12,781.781 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 11:53:12,964.964 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 11:53:12,968.968 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 11:53:13,105.105 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 11:53:13,172.172 INFO    ] time= 12/06/2026 11:53:13
[2026-06-12 11:53:13,196.196 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 11:53:13,202.202 INFO    ] Checking for existing commands in stream...
[2026-06-12 11:53:13,270.270 INFO    ] No existing commands found in stream
[2026-06-12 11:53:18,294.294 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 11:53:18,298.298 INFO    ] Waiting 0.80 seconds before fallback handling...
[2026-06-12 11:53:19,917.917 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 11:53:19,919.919 INFO    ] Checking for system updates...
[2026-06-12 11:53:19,941.941 INFO    ] 200
[2026-06-12 11:53:19,942.942 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:53:20,004.004 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 11:53:20,007.007 INFO    ] No update needed
[2026-06-12 11:53:20,010.010 INFO    ] Checking for camera pi updates...
[2026-06-12 11:53:20,048.048 INFO    ] 200
[2026-06-12 11:53:20,050.050 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:53:20,074.074 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 11:53:20,111.111 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 11:53:20,113.113 INFO    ] No camera update needed
[2026-06-12 11:53:20,114.114 INFO    ] Script finished. Safe exiting...
[2026-06-12 11:53:20,116.116 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 11:53:20,119.119 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 11:53:20,122.122 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 11:53:22,161.161 INFO    ] ================================================
[2026-06-12 11:53:22,176.176 INFO    ] Launching Daemon at Fri Jun 12 11:53:22 IST 2026
[2026-06-12 11:53:22,187.187 INFO    ] ================================================
[2026-06-12 11:53:22,514.514 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 11:53:22
[2026-06-12 11:53:22,826.826 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 11:53:22,969.969 INFO    ] Initializing speech engine...
[2026-06-12 11:53:22,974.974 INFO    ] 2026-06-12 11:53:22
[2026-06-12 11:53:23,183.183 INFO    ] 2026-06-12 11:53:23
[2026-06-12 11:53:23,212.212 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 11:53:23,401.401 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 11:53:23,410.410 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 11:53:23,541.541 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 11:53:23,593.593 INFO    ] time= 12/06/2026 11:53:23
[2026-06-12 11:53:23,633.633 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 11:53:23,638.638 INFO    ] Checking for existing commands in stream...
[2026-06-12 11:53:23,708.708 INFO    ] No existing commands found in stream
[2026-06-12 11:53:28,719.719 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 11:53:28,722.722 INFO    ] Waiting 0.90 seconds before fallback handling...
[2026-06-12 11:53:30,038.038 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 11:53:30,039.039 INFO    ] Checking for system updates...
[2026-06-12 11:53:30,060.060 INFO    ] 200
[2026-06-12 11:53:30,061.061 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:53:30,091.091 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 11:53:30,093.093 INFO    ] No update needed
[2026-06-12 11:53:30,094.094 INFO    ] Checking for camera pi updates...
[2026-06-12 11:53:30,114.114 INFO    ] 200
[2026-06-12 11:53:30,116.116 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:53:30,139.139 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 11:53:30,179.179 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 11:53:30,181.181 INFO    ] No camera update needed
[2026-06-12 11:53:30,182.182 INFO    ] Script finished. Safe exiting...
[2026-06-12 11:53:30,183.183 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 11:53:30,186.186 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 11:53:30,189.189 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 11:53:32,234.234 INFO    ] ================================================
[2026-06-12 11:53:32,244.244 INFO    ] Launching Daemon at Fri Jun 12 11:53:32 IST 2026
[2026-06-12 11:53:32,250.250 INFO    ] ================================================
[2026-06-12 11:53:32,558.558 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 11:53:32
[2026-06-12 11:53:32,879.879 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 11:53:33,014.014 INFO    ] Initializing speech engine...
[2026-06-12 11:53:33,019.019 INFO    ] 2026-06-12 11:53:33
[2026-06-12 11:53:33,248.248 INFO    ] 2026-06-12 11:53:33
[2026-06-12 11:53:33,279.279 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 11:53:33,478.478 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 11:53:33,481.481 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 11:53:33,622.622 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 11:53:33,668.668 INFO    ] time= 12/06/2026 11:53:33
[2026-06-12 11:53:33,712.712 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 11:53:33,730.730 INFO    ] Checking for existing commands in stream...
[2026-06-12 11:53:33,806.806 INFO    ] No existing commands found in stream
[2026-06-12 11:53:38,817.817 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 11:53:38,819.819 INFO    ] Waiting 1.41 seconds before fallback handling...
[2026-06-12 11:53:40,612.612 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 11:53:40,614.614 INFO    ] Checking for system updates...
[2026-06-12 11:53:40,635.635 INFO    ] 200
[2026-06-12 11:53:40,636.636 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:53:40,667.667 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 11:53:40,668.668 INFO    ] No update needed
[2026-06-12 11:53:40,670.670 INFO    ] Checking for camera pi updates...
[2026-06-12 11:53:40,691.691 INFO    ] 200
[2026-06-12 11:53:40,692.692 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:53:40,720.720 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 11:53:40,860.860 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 11:53:40,862.862 INFO    ] No camera update needed
[2026-06-12 11:53:40,863.863 INFO    ] Script finished. Safe exiting...
[2026-06-12 11:53:40,864.864 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 11:53:40,868.868 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 11:53:40,871.871 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 11:53:42,909.909 INFO    ] ================================================
[2026-06-12 11:53:42,925.925 INFO    ] Launching Daemon at Fri Jun 12 11:53:42 IST 2026
[2026-06-12 11:53:42,936.936 INFO    ] ================================================
[2026-06-12 11:53:43,287.287 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 11:53:43
[2026-06-12 11:53:43,626.626 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 11:53:43,780.780 INFO    ] Initializing speech engine...
[2026-06-12 11:53:43,783.783 INFO    ] 2026-06-12 11:53:43
[2026-06-12 11:53:43,992.992 INFO    ] 2026-06-12 11:53:43
[2026-06-12 11:53:44,020.020 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 11:53:44,203.203 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 11:53:44,214.214 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 11:53:44,344.344 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 11:53:44,411.411 INFO    ] time= 12/06/2026 11:53:44
[2026-06-12 11:53:44,435.435 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 11:53:44,442.442 INFO    ] Checking for existing commands in stream...
[2026-06-12 11:53:44,533.533 INFO    ] No existing commands found in stream
[2026-06-12 11:53:49,557.557 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 11:53:49,561.561 INFO    ] Waiting 1.38 seconds before fallback handling...
[2026-06-12 11:53:51,333.333 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 11:53:51,334.334 INFO    ] Checking for system updates...
[2026-06-12 11:53:51,355.355 INFO    ] 200
[2026-06-12 11:53:51,357.357 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:53:51,387.387 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 11:53:51,388.388 INFO    ] No update needed
[2026-06-12 11:53:51,390.390 INFO    ] Checking for camera pi updates...
[2026-06-12 11:53:51,410.410 INFO    ] 200
[2026-06-12 11:53:51,412.412 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:53:51,435.435 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 11:53:51,475.475 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 11:53:51,477.477 INFO    ] No camera update needed
[2026-06-12 11:53:51,478.478 INFO    ] Script finished. Safe exiting...
[2026-06-12 11:53:51,480.480 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 11:53:51,483.483 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 11:53:51,486.486 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 11:53:53,525.525 INFO    ] ================================================
[2026-06-12 11:53:53,540.540 INFO    ] Launching Daemon at Fri Jun 12 11:53:53 IST 2026
[2026-06-12 11:53:53,551.551 INFO    ] ================================================
[2026-06-12 11:53:53,919.919 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 11:53:53
[2026-06-12 11:53:54,255.255 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 11:53:54,411.411 INFO    ] Initializing speech engine...
[2026-06-12 11:53:54,414.414 INFO    ] 2026-06-12 11:53:54
[2026-06-12 11:53:54,617.617 INFO    ] 2026-06-12 11:53:54
[2026-06-12 11:53:54,645.645 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 11:53:54,829.829 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 11:53:54,833.833 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 11:53:54,968.968 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 11:53:55,036.036 INFO    ] time= 12/06/2026 11:53:54
[2026-06-12 11:53:55,060.060 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 11:53:55,066.066 INFO    ] Checking for existing commands in stream...
[2026-06-12 11:53:55,134.134 INFO    ] No existing commands found in stream
[2026-06-12 11:54:00,148.148 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 11:54:00,151.151 INFO    ] Waiting 3.12 seconds before fallback handling...
[2026-06-12 11:54:03,631.631 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 11:54:03,633.633 INFO    ] Checking for system updates...
[2026-06-12 11:54:03,654.654 INFO    ] 200
[2026-06-12 11:54:03,655.655 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:54:03,685.685 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 11:54:03,687.687 INFO    ] No update needed
[2026-06-12 11:54:03,688.688 INFO    ] Checking for camera pi updates...
[2026-06-12 11:54:03,707.707 INFO    ] 200
[2026-06-12 11:54:03,709.709 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:54:03,732.732 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 11:54:03,772.772 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 11:54:03,774.774 INFO    ] No camera update needed
[2026-06-12 11:54:03,775.775 INFO    ] Script finished. Safe exiting...
[2026-06-12 11:54:03,776.776 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 11:54:03,779.779 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 11:54:03,782.782 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 11:54:05,821.821 INFO    ] ================================================
[2026-06-12 11:54:05,837.837 INFO    ] Launching Daemon at Fri Jun 12 11:54:05 IST 2026
[2026-06-12 11:54:05,847.847 INFO    ] ================================================
[2026-06-12 11:54:06,146.146 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 11:54:06
[2026-06-12 11:54:06,458.458 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 11:54:06,591.591 INFO    ] Initializing speech engine...
[2026-06-12 11:54:06,603.603 INFO    ] 2026-06-12 11:54:06
[2026-06-12 11:54:06,807.807 INFO    ] 2026-06-12 11:54:06
[2026-06-12 11:54:06,836.836 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 11:54:07,019.019 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 11:54:07,023.023 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 11:54:07,158.158 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 11:54:07,222.222 INFO    ] time= 12/06/2026 11:54:07
[2026-06-12 11:54:07,249.249 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 11:54:07,255.255 INFO    ] Checking for existing commands in stream...
[2026-06-12 11:54:07,346.346 INFO    ] No existing commands found in stream
[2026-06-12 11:54:12,354.354 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 11:54:12,357.357 INFO    ] Waiting 3.08 seconds before fallback handling...
[2026-06-12 11:54:15,808.808 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 11:54:15,810.810 INFO    ] Checking for system updates...
[2026-06-12 11:54:15,831.831 INFO    ] 200
[2026-06-12 11:54:15,832.832 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:54:15,868.868 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 11:54:15,869.869 INFO    ] No update needed
[2026-06-12 11:54:15,870.870 INFO    ] Checking for camera pi updates...
[2026-06-12 11:54:15,891.891 INFO    ] 200
[2026-06-12 11:54:15,893.893 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:54:15,917.917 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 11:54:15,953.953 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 11:54:15,955.955 INFO    ] No camera update needed
[2026-06-12 11:54:15,956.956 INFO    ] Script finished. Safe exiting...
[2026-06-12 11:54:15,957.957 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 11:54:15,960.960 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 11:54:15,963.963 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 11:54:18,004.004 INFO    ] ================================================
[2026-06-12 11:54:18,020.020 INFO    ] Launching Daemon at Fri Jun 12 11:54:18 IST 2026
[2026-06-12 11:54:18,031.031 INFO    ] ================================================
[2026-06-12 11:54:18,373.373 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 11:54:18
[2026-06-12 11:54:18,690.690 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 11:54:18,833.833 INFO    ] Initializing speech engine...
[2026-06-12 11:54:18,837.837 INFO    ] 2026-06-12 11:54:18
[2026-06-12 11:54:19,043.043 INFO    ] 2026-06-12 11:54:19
[2026-06-12 11:54:19,070.070 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 11:54:19,253.253 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 11:54:19,256.256 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 11:54:19,389.389 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 11:54:19,457.457 INFO    ] time= 12/06/2026 11:54:19
[2026-06-12 11:54:19,481.481 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 11:54:19,488.488 INFO    ] Checking for existing commands in stream...
[2026-06-12 11:54:19,554.554 INFO    ] No existing commands found in stream
[2026-06-12 11:54:24,568.568 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 11:54:24,571.571 INFO    ] Waiting 1.47 seconds before fallback handling...
[2026-06-12 11:54:26,449.449 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 11:54:26,450.450 INFO    ] Checking for system updates...
[2026-06-12 11:54:26,471.471 INFO    ] 200
[2026-06-12 11:54:26,473.473 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:54:26,503.503 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 11:54:26,504.504 INFO    ] No update needed
[2026-06-12 11:54:26,506.506 INFO    ] Checking for camera pi updates...
[2026-06-12 11:54:26,525.525 INFO    ] 200
[2026-06-12 11:54:26,527.527 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:54:26,550.550 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 11:54:26,593.593 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 11:54:26,595.595 INFO    ] No camera update needed
[2026-06-12 11:54:26,596.596 INFO    ] Script finished. Safe exiting...
[2026-06-12 11:54:26,597.597 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 11:54:26,600.600 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 11:54:26,603.603 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 11:54:28,641.641 INFO    ] ================================================
[2026-06-12 11:54:28,657.657 INFO    ] Launching Daemon at Fri Jun 12 11:54:28 IST 2026
[2026-06-12 11:54:28,668.668 INFO    ] ================================================
[2026-06-12 11:54:29,068.068 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 11:54:29
[2026-06-12 11:54:29,412.412 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 11:54:29,567.567 INFO    ] Initializing speech engine...
[2026-06-12 11:54:29,570.570 INFO    ] 2026-06-12 11:54:29
[2026-06-12 11:54:29,779.779 INFO    ] 2026-06-12 11:54:29
[2026-06-12 11:54:29,807.807 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 11:54:29,993.993 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 11:54:29,997.997 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 11:54:30,139.139 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 11:54:30,201.201 INFO    ] time= 12/06/2026 11:54:30
[2026-06-12 11:54:30,225.225 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 11:54:30,232.232 INFO    ] Checking for existing commands in stream...
[2026-06-12 11:54:30,298.298 INFO    ] No existing commands found in stream
[2026-06-12 11:54:35,323.323 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 11:54:35,326.326 INFO    ] Waiting 1.54 seconds before fallback handling...
[2026-06-12 11:54:37,241.241 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 11:54:37,243.243 INFO    ] Checking for system updates...
[2026-06-12 11:54:37,265.265 INFO    ] 200
[2026-06-12 11:54:37,267.267 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:54:37,297.297 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 11:54:37,298.298 INFO    ] No update needed
[2026-06-12 11:54:37,300.300 INFO    ] Checking for camera pi updates...
[2026-06-12 11:54:37,319.319 INFO    ] 200
[2026-06-12 11:54:37,321.321 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:54:37,344.344 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 11:54:37,390.390 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 11:54:37,392.392 INFO    ] No camera update needed
[2026-06-12 11:54:37,393.393 INFO    ] Script finished. Safe exiting...
[2026-06-12 11:54:37,394.394 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 11:54:37,397.397 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 11:54:37,400.400 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 11:54:39,438.438 INFO    ] ================================================
[2026-06-12 11:54:39,454.454 INFO    ] Launching Daemon at Fri Jun 12 11:54:39 IST 2026
[2026-06-12 11:54:39,465.465 INFO    ] ================================================
[2026-06-12 11:54:39,799.799 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 11:54:39
[2026-06-12 11:54:40,109.109 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 11:54:40,244.244 INFO    ] Initializing speech engine...
[2026-06-12 11:54:40,253.253 INFO    ] 2026-06-12 11:54:40
[2026-06-12 11:54:40,476.476 INFO    ] 2026-06-12 11:54:40
[2026-06-12 11:54:40,507.507 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 11:54:40,641.641 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 11:54:40,708.708 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 11:54:40,859.859 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 11:54:40,923.923 INFO    ] time= 12/06/2026 11:54:40
[2026-06-12 11:54:40,956.956 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 11:54:40,963.963 INFO    ] Checking for existing commands in stream...
[2026-06-12 11:54:41,035.035 INFO    ] No existing commands found in stream
[2026-06-12 11:54:46,049.049 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 11:54:46,052.052 INFO    ] Waiting 3.74 seconds before fallback handling...
[2026-06-12 11:54:50,182.182 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 11:54:50,184.184 INFO    ] Checking for system updates...
[2026-06-12 11:54:50,206.206 INFO    ] 200
[2026-06-12 11:54:50,207.207 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:54:50,238.238 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 11:54:50,239.239 INFO    ] No update needed
[2026-06-12 11:54:50,241.241 INFO    ] Checking for camera pi updates...
[2026-06-12 11:54:50,264.264 INFO    ] 200
[2026-06-12 11:54:50,265.265 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:54:50,290.290 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 11:54:50,332.332 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 11:54:50,333.333 INFO    ] No camera update needed
[2026-06-12 11:54:50,334.334 INFO    ] Script finished. Safe exiting...
[2026-06-12 11:54:50,335.335 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 11:54:50,338.338 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 11:54:50,341.341 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 11:54:52,379.379 INFO    ] ================================================
[2026-06-12 11:54:52,394.394 INFO    ] Launching Daemon at Fri Jun 12 11:54:52 IST 2026
[2026-06-12 11:54:52,405.405 INFO    ] ================================================
[2026-06-12 11:54:52,751.751 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 11:54:52
[2026-06-12 11:54:53,063.063 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 11:54:53,192.192 INFO    ] Initializing speech engine...
[2026-06-12 11:54:53,196.196 INFO    ] 2026-06-12 11:54:53
[2026-06-12 11:54:53,413.413 INFO    ] 2026-06-12 11:54:53
[2026-06-12 11:54:53,442.442 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 11:54:53,624.624 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 11:54:53,627.627 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 11:54:53,765.765 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 11:54:53,831.831 INFO    ] time= 12/06/2026 11:54:53
[2026-06-12 11:54:53,855.855 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 11:54:53,862.862 INFO    ] Checking for existing commands in stream...
[2026-06-12 11:54:53,953.953 INFO    ] No existing commands found in stream
[2026-06-12 11:54:58,961.961 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 11:54:58,964.964 INFO    ] Waiting 1.30 seconds before fallback handling...
[2026-06-12 11:55:00,617.617 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 11:55:00,619.619 INFO    ] Checking for system updates...
[2026-06-12 11:55:00,639.639 INFO    ] 200
[2026-06-12 11:55:00,641.641 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:55:00,671.671 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 11:55:00,672.672 INFO    ] No update needed
[2026-06-12 11:55:00,673.673 INFO    ] Checking for camera pi updates...
[2026-06-12 11:55:00,694.694 INFO    ] 200
[2026-06-12 11:55:00,695.695 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:55:00,719.719 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 11:55:00,763.763 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 11:55:00,764.764 INFO    ] No camera update needed
[2026-06-12 11:55:00,766.766 INFO    ] Script finished. Safe exiting...
[2026-06-12 11:55:00,767.767 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 11:55:00,770.770 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 11:55:00,772.772 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 11:55:02,805.805 INFO    ] ================================================
[2026-06-12 11:55:02,814.814 INFO    ] Launching Daemon at Fri Jun 12 11:55:02 IST 2026
[2026-06-12 11:55:02,820.820 INFO    ] ================================================
[2026-06-12 11:55:03,171.171 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 11:55:03
[2026-06-12 11:55:03,510.510 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 11:55:03,662.662 INFO    ] Initializing speech engine...
[2026-06-12 11:55:03,667.667 INFO    ] 2026-06-12 11:55:03
[2026-06-12 11:55:03,875.875 INFO    ] 2026-06-12 11:55:03
[2026-06-12 11:55:03,906.906 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 11:55:04,092.092 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 11:55:04,096.096 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 11:55:04,229.229 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 11:55:04,295.295 INFO    ] time= 12/06/2026 11:55:04
[2026-06-12 11:55:04,329.329 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 11:55:04,336.336 INFO    ] Checking for existing commands in stream...
[2026-06-12 11:55:04,404.404 INFO    ] No existing commands found in stream
[2026-06-12 11:55:09,419.419 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 11:55:09,422.422 INFO    ] Waiting 1.28 seconds before fallback handling...
[2026-06-12 11:55:11,091.091 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 11:55:11,092.092 INFO    ] Checking for system updates...
[2026-06-12 11:55:11,113.113 INFO    ] 200
[2026-06-12 11:55:11,115.115 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:55:11,145.145 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 11:55:11,147.147 INFO    ] No update needed
[2026-06-12 11:55:11,148.148 INFO    ] Checking for camera pi updates...
[2026-06-12 11:55:11,169.169 INFO    ] 200
[2026-06-12 11:55:11,171.171 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:55:11,195.195 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 11:55:11,236.236 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 11:55:11,238.238 INFO    ] No camera update needed
[2026-06-12 11:55:11,239.239 INFO    ] Script finished. Safe exiting...
[2026-06-12 11:55:11,241.241 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 11:55:11,244.244 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 11:55:11,247.247 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 11:55:13,285.285 INFO    ] ================================================
[2026-06-12 11:55:13,301.301 INFO    ] Launching Daemon at Fri Jun 12 11:55:13 IST 2026
[2026-06-12 11:55:13,312.312 INFO    ] ================================================
[2026-06-12 11:55:13,661.661 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 11:55:13
[2026-06-12 11:55:13,978.978 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 11:55:14,121.121 INFO    ] Initializing speech engine...
[2026-06-12 11:55:14,126.126 INFO    ] 2026-06-12 11:55:14
[2026-06-12 11:55:14,333.333 INFO    ] 2026-06-12 11:55:14
[2026-06-12 11:55:14,362.362 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 11:55:14,544.544 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 11:55:14,554.554 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 11:55:14,680.680 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 11:55:14,743.743 INFO    ] time= 12/06/2026 11:55:14
[2026-06-12 11:55:14,775.775 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 11:55:14,781.781 INFO    ] Checking for existing commands in stream...
[2026-06-12 11:55:14,848.848 INFO    ] No existing commands found in stream
[2026-06-12 11:55:19,868.868 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 11:55:19,870.870 INFO    ] Waiting 2.91 seconds before fallback handling...
[2026-06-12 11:55:23,179.179 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 11:55:23,181.181 INFO    ] Checking for system updates...
[2026-06-12 11:55:23,202.202 INFO    ] 200
[2026-06-12 11:55:23,203.203 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:55:23,236.236 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 11:55:23,238.238 INFO    ] No update needed
[2026-06-12 11:55:23,239.239 INFO    ] Checking for camera pi updates...
[2026-06-12 11:55:23,262.262 INFO    ] 200
[2026-06-12 11:55:23,263.263 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:55:23,287.287 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 11:55:23,321.321 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 11:55:23,323.323 INFO    ] No camera update needed
[2026-06-12 11:55:23,325.325 INFO    ] Script finished. Safe exiting...
[2026-06-12 11:55:23,326.326 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 11:55:23,329.329 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 11:55:23,333.333 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 11:55:25,373.373 INFO    ] ================================================
[2026-06-12 11:55:25,389.389 INFO    ] Launching Daemon at Fri Jun 12 11:55:25 IST 2026
[2026-06-12 11:55:25,400.400 INFO    ] ================================================
[2026-06-12 11:55:25,790.790 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 11:55:25
[2026-06-12 11:55:26,133.133 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 11:55:26,287.287 INFO    ] Initializing speech engine...
[2026-06-12 11:55:26,293.293 INFO    ] 2026-06-12 11:55:26
[2026-06-12 11:55:26,498.498 INFO    ] 2026-06-12 11:55:26
[2026-06-12 11:55:26,529.529 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 11:55:26,713.713 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 11:55:26,723.723 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 11:55:26,867.867 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 11:55:26,922.922 INFO    ] time= 12/06/2026 11:55:26
[2026-06-12 11:55:26,943.943 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 11:55:26,949.949 INFO    ] Checking for existing commands in stream...
[2026-06-12 11:55:27,016.016 INFO    ] No existing commands found in stream
[2026-06-12 11:55:32,042.042 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 11:55:32,045.045 INFO    ] Waiting 1.91 seconds before fallback handling...
[2026-06-12 11:55:34,311.311 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 11:55:34,313.313 INFO    ] Checking for system updates...
[2026-06-12 11:55:34,335.335 INFO    ] 200
[2026-06-12 11:55:34,337.337 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:55:34,369.369 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 11:55:34,371.371 INFO    ] No update needed
[2026-06-12 11:55:34,373.373 INFO    ] Checking for camera pi updates...
[2026-06-12 11:55:34,394.394 INFO    ] 200
[2026-06-12 11:55:34,395.395 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:55:34,421.421 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 11:55:34,462.462 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 11:55:34,464.464 INFO    ] No camera update needed
[2026-06-12 11:55:34,465.465 INFO    ] Script finished. Safe exiting...
[2026-06-12 11:55:34,467.467 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 11:55:34,470.470 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 11:55:34,473.473 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 11:55:36,514.514 INFO    ] ================================================
[2026-06-12 11:55:36,529.529 INFO    ] Launching Daemon at Fri Jun 12 11:55:36 IST 2026
[2026-06-12 11:55:36,540.540 INFO    ] ================================================
[2026-06-12 11:55:36,894.894 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 11:55:36
[2026-06-12 11:55:37,213.213 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 11:55:37,348.348 INFO    ] Initializing speech engine...
[2026-06-12 11:55:37,351.351 INFO    ] 2026-06-12 11:55:37
[2026-06-12 11:55:37,544.544 INFO    ] 2026-06-12 11:55:37
[2026-06-12 11:55:37,590.590 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 11:55:37,749.749 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 11:55:37,793.793 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 11:55:37,971.971 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 11:55:38,035.035 INFO    ] time= 12/06/2026 11:55:37
[2026-06-12 11:55:38,066.066 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 11:55:38,072.072 INFO    ] Checking for existing commands in stream...
[2026-06-12 11:55:38,150.150 INFO    ] No existing commands found in stream
[2026-06-12 11:55:43,159.159 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 11:55:43,162.162 INFO    ] Waiting 1.46 seconds before fallback handling...
[2026-06-12 11:55:45,001.001 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 11:55:45,003.003 INFO    ] Checking for system updates...
[2026-06-12 11:55:45,023.023 INFO    ] 200
[2026-06-12 11:55:45,025.025 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:55:45,055.055 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 11:55:45,056.056 INFO    ] No update needed
[2026-06-12 11:55:45,058.058 INFO    ] Checking for camera pi updates...
[2026-06-12 11:55:45,081.081 INFO    ] 200
[2026-06-12 11:55:45,083.083 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:55:45,106.106 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 11:55:45,247.247 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 11:55:45,249.249 INFO    ] No camera update needed
[2026-06-12 11:55:45,250.250 INFO    ] Script finished. Safe exiting...
[2026-06-12 11:55:45,252.252 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 11:55:45,255.255 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 11:55:45,258.258 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 11:55:47,297.297 INFO    ] ================================================
[2026-06-12 11:55:47,313.313 INFO    ] Launching Daemon at Fri Jun 12 11:55:47 IST 2026
[2026-06-12 11:55:47,323.323 INFO    ] ================================================
[2026-06-12 11:55:47,682.682 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 11:55:47
[2026-06-12 11:55:47,998.998 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 11:55:48,140.140 INFO    ] Initializing speech engine...
[2026-06-12 11:55:48,145.145 INFO    ] 2026-06-12 11:55:48
[2026-06-12 11:55:48,348.348 INFO    ] 2026-06-12 11:55:48
[2026-06-12 11:55:48,376.376 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 11:55:48,561.561 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 11:55:48,570.570 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 11:55:48,696.696 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 11:55:48,748.748 INFO    ] time= 12/06/2026 11:55:48
[2026-06-12 11:55:48,790.790 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 11:55:48,792.792 INFO    ] Checking for existing commands in stream...
[2026-06-12 11:55:48,864.864 INFO    ] No existing commands found in stream
[2026-06-12 11:55:53,873.873 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 11:55:53,875.875 INFO    ] Waiting 1.32 seconds before fallback handling...
[2026-06-12 11:55:55,588.588 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 11:55:55,589.589 INFO    ] Checking for system updates...
[2026-06-12 11:55:55,610.610 INFO    ] 200
[2026-06-12 11:55:55,612.612 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:55:55,642.642 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 11:55:55,644.644 INFO    ] No update needed
[2026-06-12 11:55:55,645.645 INFO    ] Checking for camera pi updates...
[2026-06-12 11:55:55,666.666 INFO    ] 200
[2026-06-12 11:55:55,668.668 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:55:55,693.693 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 11:55:55,729.729 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 11:55:55,731.731 INFO    ] No camera update needed
[2026-06-12 11:55:55,732.732 INFO    ] Script finished. Safe exiting...
[2026-06-12 11:55:55,734.734 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 11:55:55,737.737 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 11:55:55,740.740 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 11:55:57,781.781 INFO    ] ================================================
[2026-06-12 11:55:57,797.797 INFO    ] Launching Daemon at Fri Jun 12 11:55:57 IST 2026
[2026-06-12 11:55:57,807.807 INFO    ] ================================================
[2026-06-12 11:55:58,175.175 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 11:55:58
[2026-06-12 11:55:58,490.490 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 11:55:58,622.622 INFO    ] Initializing speech engine...
[2026-06-12 11:55:58,626.626 INFO    ] 2026-06-12 11:55:58
[2026-06-12 11:55:58,826.826 INFO    ] 2026-06-12 11:55:58
[2026-06-12 11:55:58,866.866 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 11:55:59,025.025 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 11:55:59,092.092 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 11:55:59,236.236 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 11:55:59,287.287 INFO    ] time= 12/06/2026 11:55:59
[2026-06-12 11:55:59,322.322 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 11:55:59,345.345 INFO    ] Checking for existing commands in stream...
[2026-06-12 11:55:59,422.422 INFO    ] No existing commands found in stream
[2026-06-12 11:56:04,432.432 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 11:56:04,434.434 INFO    ] Waiting 1.38 seconds before fallback handling...
[2026-06-12 11:56:06,227.227 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 11:56:06,230.230 INFO    ] Checking for system updates...
[2026-06-12 11:56:06,268.268 INFO    ] 200
[2026-06-12 11:56:06,271.271 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:56:06,326.326 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 11:56:06,328.328 INFO    ] No update needed
[2026-06-12 11:56:06,331.331 INFO    ] Checking for camera pi updates...
[2026-06-12 11:56:06,369.369 INFO    ] 200
[2026-06-12 11:56:06,371.371 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:56:06,394.394 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 11:56:06,442.442 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 11:56:06,444.444 INFO    ] No camera update needed
[2026-06-12 11:56:06,445.445 INFO    ] Script finished. Safe exiting...
[2026-06-12 11:56:06,447.447 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 11:56:06,450.450 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 11:56:06,453.453 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 11:56:08,491.491 INFO    ] ================================================
[2026-06-12 11:56:08,505.505 INFO    ] Launching Daemon at Fri Jun 12 11:56:08 IST 2026
[2026-06-12 11:56:08,516.516 INFO    ] ================================================
[2026-06-12 11:56:08,848.848 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 11:56:08
[2026-06-12 11:56:09,165.165 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 11:56:09,309.309 INFO    ] Initializing speech engine...
[2026-06-12 11:56:09,314.314 INFO    ] 2026-06-12 11:56:09
[2026-06-12 11:56:09,520.520 INFO    ] 2026-06-12 11:56:09
[2026-06-12 11:56:09,550.550 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 11:56:09,737.737 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 11:56:09,745.745 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 11:56:09,898.898 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 11:56:09,948.948 INFO    ] time= 12/06/2026 11:56:09
[2026-06-12 11:56:09,970.970 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 11:56:09,976.976 INFO    ] Checking for existing commands in stream...
[2026-06-12 11:56:10,044.044 INFO    ] No existing commands found in stream
[2026-06-12 11:56:15,052.052 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 11:56:15,055.055 INFO    ] Waiting 1.97 seconds before fallback handling...
[2026-06-12 11:56:17,399.399 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 11:56:17,401.401 INFO    ] Checking for system updates...
[2026-06-12 11:56:17,421.421 INFO    ] 200
[2026-06-12 11:56:17,423.423 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:56:17,453.453 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 11:56:17,455.455 INFO    ] No update needed
[2026-06-12 11:56:17,456.456 INFO    ] Checking for camera pi updates...
[2026-06-12 11:56:17,478.478 INFO    ] 200
[2026-06-12 11:56:17,479.479 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:56:17,503.503 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 11:56:17,548.548 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 11:56:17,550.550 INFO    ] No camera update needed
[2026-06-12 11:56:17,551.551 INFO    ] Script finished. Safe exiting...
[2026-06-12 11:56:17,552.552 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 11:56:17,555.555 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 11:56:17,558.558 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 11:56:19,598.598 INFO    ] ================================================
[2026-06-12 11:56:19,613.613 INFO    ] Launching Daemon at Fri Jun 12 11:56:19 IST 2026
[2026-06-12 11:56:19,624.624 INFO    ] ================================================
[2026-06-12 11:56:19,963.963 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 11:56:19
[2026-06-12 11:56:20,280.280 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 11:56:20,414.414 INFO    ] Initializing speech engine...
[2026-06-12 11:56:20,418.418 INFO    ] 2026-06-12 11:56:20
[2026-06-12 11:56:20,637.637 INFO    ] 2026-06-12 11:56:20
[2026-06-12 11:56:20,666.666 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 11:56:20,850.850 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 11:56:20,860.860 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 11:56:20,989.989 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 11:56:21,057.057 INFO    ] time= 12/06/2026 11:56:21
[2026-06-12 11:56:21,081.081 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 11:56:21,087.087 INFO    ] Checking for existing commands in stream...
[2026-06-12 11:56:21,155.155 INFO    ] No existing commands found in stream
[2026-06-12 11:56:26,164.164 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 11:56:26,167.167 INFO    ] Waiting 3.15 seconds before fallback handling...
[2026-06-12 11:56:29,668.668 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 11:56:29,670.670 INFO    ] Checking for system updates...
[2026-06-12 11:56:29,691.691 INFO    ] 200
[2026-06-12 11:56:29,692.692 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:56:29,723.723 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 11:56:29,724.724 INFO    ] No update needed
[2026-06-12 11:56:29,725.725 INFO    ] Checking for camera pi updates...
[2026-06-12 11:56:29,745.745 INFO    ] 200
[2026-06-12 11:56:29,746.746 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:56:29,769.769 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 11:56:29,798.798 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 11:56:29,799.799 INFO    ] No camera update needed
[2026-06-12 11:56:29,801.801 INFO    ] Script finished. Safe exiting...
[2026-06-12 11:56:29,802.802 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 11:56:29,805.805 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 11:56:29,808.808 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 11:56:31,840.840 INFO    ] ================================================
[2026-06-12 11:56:31,849.849 INFO    ] Launching Daemon at Fri Jun 12 11:56:31 IST 2026
[2026-06-12 11:56:31,856.856 INFO    ] ================================================
[2026-06-12 11:56:32,217.217 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 11:56:32
[2026-06-12 11:56:32,529.529 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 11:56:32,663.663 INFO    ] Initializing speech engine...
[2026-06-12 11:56:32,672.672 INFO    ] 2026-06-12 11:56:32
[2026-06-12 11:56:32,896.896 INFO    ] 2026-06-12 11:56:32
[2026-06-12 11:56:32,926.926 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 11:56:33,059.059 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 11:56:33,107.107 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 11:56:33,268.268 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 11:56:33,325.325 INFO    ] time= 12/06/2026 11:56:33
[2026-06-12 11:56:33,359.359 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 11:56:33,377.377 INFO    ] Checking for existing commands in stream...
[2026-06-12 11:56:33,454.454 INFO    ] No existing commands found in stream
[2026-06-12 11:56:38,468.468 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 11:56:38,471.471 INFO    ] Waiting 3.60 seconds before fallback handling...
[2026-06-12 11:56:42,468.468 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 11:56:42,469.469 INFO    ] Checking for system updates...
[2026-06-12 11:56:42,490.490 INFO    ] 200
[2026-06-12 11:56:42,492.492 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:56:42,522.522 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 11:56:42,523.523 INFO    ] No update needed
[2026-06-12 11:56:42,524.524 INFO    ] Checking for camera pi updates...
[2026-06-12 11:56:42,544.544 INFO    ] 200
[2026-06-12 11:56:42,545.545 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:56:42,571.571 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 11:56:42,607.607 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 11:56:42,609.609 INFO    ] No camera update needed
[2026-06-12 11:56:42,610.610 INFO    ] Script finished. Safe exiting...
[2026-06-12 11:56:42,611.611 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 11:56:42,614.614 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 11:56:42,617.617 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 11:56:44,655.655 INFO    ] ================================================
[2026-06-12 11:56:44,670.670 INFO    ] Launching Daemon at Fri Jun 12 11:56:44 IST 2026
[2026-06-12 11:56:44,681.681 INFO    ] ================================================
[2026-06-12 11:56:45,049.049 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 11:56:45
[2026-06-12 11:56:45,366.366 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 11:56:45,502.502 INFO    ] Initializing speech engine...
[2026-06-12 11:56:45,511.511 INFO    ] 2026-06-12 11:56:45
[2026-06-12 11:56:45,737.737 INFO    ] 2026-06-12 11:56:45
[2026-06-12 11:56:45,768.768 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 11:56:45,950.950 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 11:56:45,971.971 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 11:56:46,117.117 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 11:56:46,173.173 INFO    ] time= 12/06/2026 11:56:46
[2026-06-12 11:56:46,218.218 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 11:56:46,225.225 INFO    ] Checking for existing commands in stream...
[2026-06-12 11:56:46,323.323 INFO    ] No existing commands found in stream
[2026-06-12 11:56:51,332.332 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 11:56:51,335.335 INFO    ] Waiting 3.30 seconds before fallback handling...
[2026-06-12 11:56:55,014.014 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 11:56:55,016.016 INFO    ] Checking for system updates...
[2026-06-12 11:56:55,036.036 INFO    ] 200
[2026-06-12 11:56:55,037.037 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:56:55,067.067 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 11:56:55,069.069 INFO    ] No update needed
[2026-06-12 11:56:55,070.070 INFO    ] Checking for camera pi updates...
[2026-06-12 11:56:55,090.090 INFO    ] 200
[2026-06-12 11:56:55,091.091 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:56:55,114.114 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 11:56:55,157.157 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 11:56:55,158.158 INFO    ] No camera update needed
[2026-06-12 11:56:55,159.159 INFO    ] Script finished. Safe exiting...
[2026-06-12 11:56:55,161.161 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 11:56:55,164.164 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 11:56:55,166.166 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 11:56:57,198.198 INFO    ] ================================================
[2026-06-12 11:56:57,213.213 INFO    ] Launching Daemon at Fri Jun 12 11:56:57 IST 2026
[2026-06-12 11:56:57,225.225 INFO    ] ================================================
[2026-06-12 11:56:57,566.566 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 11:56:57
[2026-06-12 11:56:57,878.878 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 11:56:58,014.014 INFO    ] Initializing speech engine...
[2026-06-12 11:56:58,022.022 INFO    ] 2026-06-12 11:56:58
[2026-06-12 11:56:58,229.229 INFO    ] 2026-06-12 11:56:58
[2026-06-12 11:56:58,259.259 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 11:56:58,444.444 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 11:56:58,448.448 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 11:56:58,585.585 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 11:56:58,653.653 INFO    ] time= 12/06/2026 11:56:58
[2026-06-12 11:56:58,678.678 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 11:56:58,684.684 INFO    ] Checking for existing commands in stream...
[2026-06-12 11:56:58,751.751 INFO    ] No existing commands found in stream
[2026-06-12 11:57:03,760.760 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 11:57:03,763.763 INFO    ] Waiting 0.30 seconds before fallback handling...
[2026-06-12 11:57:04,387.387 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 11:57:04,389.389 INFO    ] Checking for system updates...
[2026-06-12 11:57:04,411.411 INFO    ] 200
[2026-06-12 11:57:04,413.413 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:57:04,449.449 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 11:57:04,451.451 INFO    ] No update needed
[2026-06-12 11:57:04,452.452 INFO    ] Checking for camera pi updates...
[2026-06-12 11:57:04,476.476 INFO    ] 200
[2026-06-12 11:57:04,478.478 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:57:04,507.507 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 11:57:04,546.546 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 11:57:04,547.547 INFO    ] No camera update needed
[2026-06-12 11:57:04,549.549 INFO    ] Script finished. Safe exiting...
[2026-06-12 11:57:04,550.550 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 11:57:04,554.554 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 11:57:04,557.557 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 11:57:06,598.598 INFO    ] ================================================
[2026-06-12 11:57:06,613.613 INFO    ] Launching Daemon at Fri Jun 12 11:57:06 IST 2026
[2026-06-12 11:57:06,625.625 INFO    ] ================================================
[2026-06-12 11:57:06,965.965 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 11:57:06
[2026-06-12 11:57:07,279.279 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 11:57:07,409.409 INFO    ] Initializing speech engine...
[2026-06-12 11:57:07,417.417 INFO    ] 2026-06-12 11:57:07
[2026-06-12 11:57:07,631.631 INFO    ] 2026-06-12 11:57:07
[2026-06-12 11:57:07,661.661 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 11:57:07,847.847 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 11:57:07,857.857 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 11:57:07,982.982 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 11:57:08,038.038 INFO    ] time= 12/06/2026 11:57:07
[2026-06-12 11:57:08,074.074 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 11:57:08,084.084 INFO    ] Checking for existing commands in stream...
[2026-06-12 11:57:08,157.157 INFO    ] No existing commands found in stream
[2026-06-12 11:57:13,166.166 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 11:57:13,169.169 INFO    ] Waiting 0.87 seconds before fallback handling...
[2026-06-12 11:57:14,402.402 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 11:57:14,403.403 INFO    ] Checking for system updates...
[2026-06-12 11:57:14,424.424 INFO    ] 200
[2026-06-12 11:57:14,426.426 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:57:14,456.456 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 11:57:14,457.457 INFO    ] No update needed
[2026-06-12 11:57:14,458.458 INFO    ] Checking for camera pi updates...
[2026-06-12 11:57:14,479.479 INFO    ] 200
[2026-06-12 11:57:14,480.480 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:57:14,504.504 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 11:57:14,543.543 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 11:57:14,545.545 INFO    ] No camera update needed
[2026-06-12 11:57:14,546.546 INFO    ] Script finished. Safe exiting...
[2026-06-12 11:57:14,547.547 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 11:57:14,551.551 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 11:57:14,554.554 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 11:57:16,594.594 INFO    ] ================================================
[2026-06-12 11:57:16,609.609 INFO    ] Launching Daemon at Fri Jun 12 11:57:16 IST 2026
[2026-06-12 11:57:16,620.620 INFO    ] ================================================
[2026-06-12 11:57:17,002.002 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 11:57:17
[2026-06-12 11:57:17,337.337 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 11:57:17,482.482 INFO    ] Initializing speech engine...
[2026-06-12 11:57:17,492.492 INFO    ] 2026-06-12 11:57:17
[2026-06-12 11:57:17,704.704 INFO    ] 2026-06-12 11:57:17
[2026-06-12 11:57:17,734.734 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 11:57:17,920.920 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 11:57:17,930.930 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 11:57:18,083.083 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 11:57:18,134.134 INFO    ] time= 12/06/2026 11:57:18
[2026-06-12 11:57:18,156.156 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 11:57:18,162.162 INFO    ] Checking for existing commands in stream...
[2026-06-12 11:57:18,230.230 INFO    ] No existing commands found in stream
[2026-06-12 11:57:23,260.260 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 11:57:23,263.263 INFO    ] Waiting 3.40 seconds before fallback handling...
[2026-06-12 11:57:27,086.086 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 11:57:27,088.088 INFO    ] Checking for system updates...
[2026-06-12 11:57:27,109.109 INFO    ] 200
[2026-06-12 11:57:27,110.110 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:57:27,149.149 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 11:57:27,150.150 INFO    ] No update needed
[2026-06-12 11:57:27,152.152 INFO    ] Checking for camera pi updates...
[2026-06-12 11:57:27,172.172 INFO    ] 200
[2026-06-12 11:57:27,173.173 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:57:27,197.197 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 11:57:27,242.242 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 11:57:27,244.244 INFO    ] No camera update needed
[2026-06-12 11:57:27,245.245 INFO    ] Script finished. Safe exiting...
[2026-06-12 11:57:27,246.246 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 11:57:27,250.250 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 11:57:27,253.253 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 11:57:29,292.292 INFO    ] ================================================
[2026-06-12 11:57:29,307.307 INFO    ] Launching Daemon at Fri Jun 12 11:57:29 IST 2026
[2026-06-12 11:57:29,319.319 INFO    ] ================================================
[2026-06-12 11:57:29,706.706 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 11:57:29
[2026-06-12 11:57:30,039.039 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 11:57:30,192.192 INFO    ] Initializing speech engine...
[2026-06-12 11:57:30,198.198 INFO    ] 2026-06-12 11:57:30
[2026-06-12 11:57:30,407.407 INFO    ] 2026-06-12 11:57:30
[2026-06-12 11:57:30,437.437 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 11:57:30,624.624 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 11:57:30,634.634 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 11:57:30,785.785 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 11:57:30,834.834 INFO    ] time= 12/06/2026 11:57:30
[2026-06-12 11:57:30,857.857 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 11:57:30,863.863 INFO    ] Checking for existing commands in stream...
[2026-06-12 11:57:30,933.933 INFO    ] No existing commands found in stream
[2026-06-12 11:57:35,947.947 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 11:57:35,951.951 INFO    ] Waiting 3.04 seconds before fallback handling...
[2026-06-12 11:57:39,419.419 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 11:57:39,421.421 INFO    ] Checking for system updates...
[2026-06-12 11:57:39,442.442 INFO    ] 200
[2026-06-12 11:57:39,443.443 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:57:39,476.476 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 11:57:39,477.477 INFO    ] No update needed
[2026-06-12 11:57:39,478.478 INFO    ] Checking for camera pi updates...
[2026-06-12 11:57:39,497.497 INFO    ] 200
[2026-06-12 11:57:39,499.499 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:57:39,524.524 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 11:57:39,564.564 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 11:57:39,566.566 INFO    ] No camera update needed
[2026-06-12 11:57:39,567.567 INFO    ] Script finished. Safe exiting...
[2026-06-12 11:57:39,568.568 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 11:57:39,571.571 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 11:57:39,574.574 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 11:57:41,613.613 INFO    ] ================================================
[2026-06-12 11:57:41,633.633 INFO    ] Launching Daemon at Fri Jun 12 11:57:41 IST 2026
[2026-06-12 11:57:41,643.643 INFO    ] ================================================
[2026-06-12 11:57:42,001.001 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 11:57:41
[2026-06-12 11:57:42,321.321 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 11:57:42,451.451 INFO    ] Initializing speech engine...
[2026-06-12 11:57:42,455.455 INFO    ] 2026-06-12 11:57:42
[2026-06-12 11:57:42,672.672 INFO    ] 2026-06-12 11:57:42
[2026-06-12 11:57:42,701.701 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 11:57:42,884.884 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 11:57:42,894.894 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 11:57:43,030.030 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 11:57:43,093.093 INFO    ] time= 12/06/2026 11:57:43
[2026-06-12 11:57:43,117.117 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 11:57:43,123.123 INFO    ] Checking for existing commands in stream...
[2026-06-12 11:57:43,188.188 INFO    ] No existing commands found in stream
[2026-06-12 11:57:48,199.199 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 11:57:48,202.202 INFO    ] Waiting 0.21 seconds before fallback handling...
[2026-06-12 11:57:48,785.785 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 11:57:48,787.787 INFO    ] Checking for system updates...
[2026-06-12 11:57:48,807.807 INFO    ] 200
[2026-06-12 11:57:48,808.808 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:57:48,838.838 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 11:57:48,840.840 INFO    ] No update needed
[2026-06-12 11:57:48,841.841 INFO    ] Checking for camera pi updates...
[2026-06-12 11:57:48,861.861 INFO    ] 200
[2026-06-12 11:57:48,862.862 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:57:48,885.885 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 11:57:49,029.029 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 11:57:49,030.030 INFO    ] No camera update needed
[2026-06-12 11:57:49,031.031 INFO    ] Script finished. Safe exiting...
[2026-06-12 11:57:49,033.033 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 11:57:49,036.036 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 11:57:49,038.038 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 11:57:51,076.076 INFO    ] ================================================
[2026-06-12 11:57:51,092.092 INFO    ] Launching Daemon at Fri Jun 12 11:57:51 IST 2026
[2026-06-12 11:57:51,102.102 INFO    ] ================================================
[2026-06-12 11:57:51,457.457 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 11:57:51
[2026-06-12 11:57:51,792.792 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 11:57:51,929.929 INFO    ] Initializing speech engine...
[2026-06-12 11:57:51,937.937 INFO    ] 2026-06-12 11:57:51
[2026-06-12 11:57:52,151.151 INFO    ] 2026-06-12 11:57:52
[2026-06-12 11:57:52,181.181 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 11:57:52,366.366 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 11:57:52,376.376 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 11:57:52,555.555 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 11:57:52,589.589 INFO    ] time= 12/06/2026 11:57:52
[2026-06-12 11:57:52,595.595 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 11:57:52,600.600 INFO    ] Checking for existing commands in stream...
[2026-06-12 11:57:52,667.667 INFO    ] No existing commands found in stream
[2026-06-12 11:57:57,676.676 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 11:57:57,684.684 INFO    ] Waiting 0.80 seconds before fallback handling...
[2026-06-12 11:57:58,835.835 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 11:57:58,836.836 INFO    ] Checking for system updates...
[2026-06-12 11:57:58,857.857 INFO    ] 200
[2026-06-12 11:57:58,858.858 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:57:58,890.890 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 11:57:58,892.892 INFO    ] No update needed
[2026-06-12 11:57:58,893.893 INFO    ] Checking for camera pi updates...
[2026-06-12 11:57:58,912.912 INFO    ] 200
[2026-06-12 11:57:58,914.914 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:57:58,937.937 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 11:57:58,978.978 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 11:57:58,979.979 INFO    ] No camera update needed
[2026-06-12 11:57:58,981.981 INFO    ] Script finished. Safe exiting...
[2026-06-12 11:57:58,982.982 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 11:57:58,985.985 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 11:57:58,988.988 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 11:58:01,026.026 INFO    ] ================================================
[2026-06-12 11:58:01,041.041 INFO    ] Launching Daemon at Fri Jun 12 11:58:01 IST 2026
[2026-06-12 11:58:01,051.051 INFO    ] ================================================
[2026-06-12 11:58:01,387.387 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 11:58:01
[2026-06-12 11:58:01,814.814 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 11:58:02,039.039 INFO    ] Initializing speech engine...
[2026-06-12 11:58:02,044.044 INFO    ] 2026-06-12 11:58:02
[2026-06-12 11:58:02,306.306 INFO    ] 2026-06-12 11:58:02
[2026-06-12 11:58:02,328.328 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 11:58:02,548.548 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 11:58:02,557.557 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 11:58:02,712.712 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 11:58:02,768.768 INFO    ] time= 12/06/2026 11:58:02
[2026-06-12 11:58:02,791.791 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 11:58:02,797.797 INFO    ] Checking for existing commands in stream...
[2026-06-12 11:58:02,864.864 INFO    ] No existing commands found in stream
[2026-06-12 11:58:07,878.878 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 11:58:07,881.881 INFO    ] Waiting 1.88 seconds before fallback handling...
[2026-06-12 11:58:10,137.137 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 11:58:10,139.139 INFO    ] Checking for system updates...
[2026-06-12 11:58:10,160.160 INFO    ] 200
[2026-06-12 11:58:10,161.161 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:58:10,196.196 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 11:58:10,197.197 INFO    ] No update needed
[2026-06-12 11:58:10,198.198 INFO    ] Checking for camera pi updates...
[2026-06-12 11:58:10,218.218 INFO    ] 200
[2026-06-12 11:58:10,219.219 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:58:10,243.243 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 11:58:10,279.279 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 11:58:10,281.281 INFO    ] No camera update needed
[2026-06-12 11:58:10,282.282 INFO    ] Script finished. Safe exiting...
[2026-06-12 11:58:10,283.283 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 11:58:10,286.286 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 11:58:10,289.289 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 11:58:12,327.327 INFO    ] ================================================
[2026-06-12 11:58:12,342.342 INFO    ] Launching Daemon at Fri Jun 12 11:58:12 IST 2026
[2026-06-12 11:58:12,353.353 INFO    ] ================================================
[2026-06-12 11:58:12,712.712 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 11:58:12
[2026-06-12 11:58:13,023.023 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 11:58:13,159.159 INFO    ] Initializing speech engine...
[2026-06-12 11:58:13,172.172 INFO    ] 2026-06-12 11:58:13
[2026-06-12 11:58:13,389.389 INFO    ] 2026-06-12 11:58:13
[2026-06-12 11:58:13,420.420 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 11:58:13,617.617 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 11:58:13,621.621 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 11:58:13,759.759 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 11:58:13,815.815 INFO    ] time= 12/06/2026 11:58:13
[2026-06-12 11:58:13,843.843 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 11:58:13,865.865 INFO    ] Checking for existing commands in stream...
[2026-06-12 11:58:13,942.942 INFO    ] No existing commands found in stream
[2026-06-12 11:58:18,951.951 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 11:58:18,954.954 INFO    ] Waiting 1.77 seconds before fallback handling...
[2026-06-12 11:58:21,102.102 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 11:58:21,103.103 INFO    ] Checking for system updates...
[2026-06-12 11:58:21,124.124 INFO    ] 200
[2026-06-12 11:58:21,125.125 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:58:21,155.155 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 11:58:21,157.157 INFO    ] No update needed
[2026-06-12 11:58:21,158.158 INFO    ] Checking for camera pi updates...
[2026-06-12 11:58:21,179.179 INFO    ] 200
[2026-06-12 11:58:21,181.181 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:58:21,204.204 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 11:58:21,241.241 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 11:58:21,243.243 INFO    ] No camera update needed
[2026-06-12 11:58:21,244.244 INFO    ] Script finished. Safe exiting...
[2026-06-12 11:58:21,245.245 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 11:58:21,248.248 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 11:58:21,251.251 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 11:58:23,289.289 INFO    ] ================================================
[2026-06-12 11:58:23,304.304 INFO    ] Launching Daemon at Fri Jun 12 11:58:23 IST 2026
[2026-06-12 11:58:23,315.315 INFO    ] ================================================
[2026-06-12 11:58:23,681.681 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 11:58:23
[2026-06-12 11:58:23,991.991 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 11:58:24,137.137 INFO    ] Initializing speech engine...
[2026-06-12 11:58:24,141.141 INFO    ] 2026-06-12 11:58:24
[2026-06-12 11:58:24,344.344 INFO    ] 2026-06-12 11:58:24
[2026-06-12 11:58:24,372.372 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 11:58:24,556.556 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 11:58:24,559.559 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 11:58:24,695.695 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 11:58:24,759.759 INFO    ] time= 12/06/2026 11:58:24
[2026-06-12 11:58:24,787.787 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 11:58:24,793.793 INFO    ] Checking for existing commands in stream...
[2026-06-12 11:58:24,860.860 INFO    ] No existing commands found in stream
[2026-06-12 11:58:29,879.879 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 11:58:29,882.882 INFO    ] Waiting 2.40 seconds before fallback handling...
[2026-06-12 11:58:32,649.649 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 11:58:32,652.652 INFO    ] Checking for system updates...
[2026-06-12 11:58:32,687.687 INFO    ] 200
[2026-06-12 11:58:32,690.690 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:58:32,743.743 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 11:58:32,746.746 INFO    ] No update needed
[2026-06-12 11:58:32,748.748 INFO    ] Checking for camera pi updates...
[2026-06-12 11:58:32,777.777 INFO    ] 200
[2026-06-12 11:58:32,779.779 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:58:32,803.803 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 11:58:32,827.827 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 11:58:32,829.829 INFO    ] No camera update needed
[2026-06-12 11:58:32,830.830 INFO    ] Script finished. Safe exiting...
[2026-06-12 11:58:32,831.831 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 11:58:32,834.834 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 11:58:32,837.837 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 11:58:34,876.876 INFO    ] ================================================
[2026-06-12 11:58:34,892.892 INFO    ] Launching Daemon at Fri Jun 12 11:58:34 IST 2026
[2026-06-12 11:58:35,078.078 INFO    ] ================================================
[2026-06-12 11:58:35,411.411 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 11:58:35
[2026-06-12 11:58:35,726.726 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 11:58:35,865.865 INFO    ] Initializing speech engine...
[2026-06-12 11:58:35,875.875 INFO    ] 2026-06-12 11:58:35
[2026-06-12 11:58:36,078.078 INFO    ] 2026-06-12 11:58:36
[2026-06-12 11:58:36,107.107 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 11:58:36,288.288 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 11:58:36,292.292 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 11:58:36,437.437 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 11:58:36,494.494 INFO    ] time= 12/06/2026 11:58:36
[2026-06-12 11:58:36,517.517 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 11:58:36,523.523 INFO    ] Checking for existing commands in stream...
[2026-06-12 11:58:36,589.589 INFO    ] No existing commands found in stream
[2026-06-12 11:58:41,598.598 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 11:58:41,601.601 INFO    ] Waiting 2.52 seconds before fallback handling...
[2026-06-12 11:58:44,531.531 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 11:58:44,532.532 INFO    ] Checking for system updates...
[2026-06-12 11:58:44,553.553 INFO    ] 200
[2026-06-12 11:58:44,554.554 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:58:44,585.585 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 11:58:44,587.587 INFO    ] No update needed
[2026-06-12 11:58:44,588.588 INFO    ] Checking for camera pi updates...
[2026-06-12 11:58:44,609.609 INFO    ] 200
[2026-06-12 11:58:44,610.610 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:58:44,636.636 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 11:58:44,678.678 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 11:58:44,680.680 INFO    ] No camera update needed
[2026-06-12 11:58:44,681.681 INFO    ] Script finished. Safe exiting...
[2026-06-12 11:58:44,683.683 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 11:58:44,686.686 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 11:58:44,689.689 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 11:58:46,729.729 INFO    ] ================================================
[2026-06-12 11:58:46,745.745 INFO    ] Launching Daemon at Fri Jun 12 11:58:46 IST 2026
[2026-06-12 11:58:46,756.756 INFO    ] ================================================
[2026-06-12 11:58:47,116.116 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 11:58:47
[2026-06-12 11:58:47,457.457 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 11:58:47,601.601 INFO    ] Initializing speech engine...
[2026-06-12 11:58:47,612.612 INFO    ] 2026-06-12 11:58:47
[2026-06-12 11:58:47,818.818 INFO    ] 2026-06-12 11:58:47
[2026-06-12 11:58:47,847.847 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 11:58:48,032.032 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 11:58:48,042.042 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 11:58:48,186.186 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 11:58:48,238.238 INFO    ] time= 12/06/2026 11:58:48
[2026-06-12 11:58:48,265.265 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 11:58:48,267.267 INFO    ] Checking for existing commands in stream...
[2026-06-12 11:58:48,333.333 INFO    ] No existing commands found in stream
[2026-06-12 11:58:53,342.342 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 11:58:53,346.346 INFO    ] Waiting 2.27 seconds before fallback handling...
[2026-06-12 11:58:56,013.013 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 11:58:56,014.014 INFO    ] Checking for system updates...
[2026-06-12 11:58:56,035.035 INFO    ] 200
[2026-06-12 11:58:56,036.036 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:58:56,067.067 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 11:58:56,068.068 INFO    ] No update needed
[2026-06-12 11:58:56,069.069 INFO    ] Checking for camera pi updates...
[2026-06-12 11:58:56,089.089 INFO    ] 200
[2026-06-12 11:58:56,091.091 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:58:56,114.114 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 11:58:56,151.151 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 11:58:56,153.153 INFO    ] No camera update needed
[2026-06-12 11:58:56,154.154 INFO    ] Script finished. Safe exiting...
[2026-06-12 11:58:56,156.156 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 11:58:56,159.159 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 11:58:56,162.162 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 11:58:58,203.203 INFO    ] ================================================
[2026-06-12 11:58:58,218.218 INFO    ] Launching Daemon at Fri Jun 12 11:58:58 IST 2026
[2026-06-12 11:58:58,230.230 INFO    ] ================================================
[2026-06-12 11:58:58,563.563 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 11:58:58
[2026-06-12 11:58:58,874.874 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 11:58:59,003.003 INFO    ] Initializing speech engine...
[2026-06-12 11:58:59,012.012 INFO    ] 2026-06-12 11:58:59
[2026-06-12 11:58:59,228.228 INFO    ] 2026-06-12 11:58:59
[2026-06-12 11:58:59,256.256 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 11:58:59,443.443 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 11:58:59,452.452 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 11:58:59,584.584 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 11:58:59,651.651 INFO    ] time= 12/06/2026 11:58:59
[2026-06-12 11:58:59,676.676 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 11:58:59,682.682 INFO    ] Checking for existing commands in stream...
[2026-06-12 11:58:59,774.774 INFO    ] No existing commands found in stream
[2026-06-12 11:59:04,782.782 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 11:59:04,785.785 INFO    ] Waiting 2.59 seconds before fallback handling...
[2026-06-12 11:59:07,766.766 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 11:59:07,768.768 INFO    ] Checking for system updates...
[2026-06-12 11:59:07,806.806 INFO    ] 200
[2026-06-12 11:59:07,807.807 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:59:07,839.839 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 11:59:07,840.840 INFO    ] No update needed
[2026-06-12 11:59:07,842.842 INFO    ] Checking for camera pi updates...
[2026-06-12 11:59:07,864.864 INFO    ] 200
[2026-06-12 11:59:07,866.866 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:59:07,889.889 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 11:59:07,925.925 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 11:59:07,926.926 INFO    ] No camera update needed
[2026-06-12 11:59:07,928.928 INFO    ] Script finished. Safe exiting...
[2026-06-12 11:59:07,929.929 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 11:59:07,932.932 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 11:59:07,935.935 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 11:59:09,975.975 INFO    ] ================================================
[2026-06-12 11:59:09,991.991 INFO    ] Launching Daemon at Fri Jun 12 11:59:09 IST 2026
[2026-06-12 11:59:10,002.002 INFO    ] ================================================
[2026-06-12 11:59:10,356.356 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 11:59:10
[2026-06-12 11:59:10,691.691 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 11:59:10,840.840 INFO    ] Initializing speech engine...
[2026-06-12 11:59:10,847.847 INFO    ] 2026-06-12 11:59:10
[2026-06-12 11:59:11,053.053 INFO    ] 2026-06-12 11:59:11
[2026-06-12 11:59:11,082.082 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 11:59:11,268.268 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 11:59:11,277.277 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 11:59:11,466.466 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 11:59:11,496.496 INFO    ] time= 12/06/2026 11:59:11
[2026-06-12 11:59:11,501.501 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 11:59:11,503.503 INFO    ] Checking for existing commands in stream...
[2026-06-12 11:59:11,571.571 INFO    ] No existing commands found in stream
[2026-06-12 11:59:16,604.604 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 11:59:16,607.607 INFO    ] Waiting 0.53 seconds before fallback handling...
[2026-06-12 11:59:17,557.557 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 11:59:17,559.559 INFO    ] Checking for system updates...
[2026-06-12 11:59:17,580.580 INFO    ] 200
[2026-06-12 11:59:17,581.581 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:59:17,614.614 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 11:59:17,615.615 INFO    ] No update needed
[2026-06-12 11:59:17,616.616 INFO    ] Checking for camera pi updates...
[2026-06-12 11:59:17,636.636 INFO    ] 200
[2026-06-12 11:59:17,637.637 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:59:17,660.660 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 11:59:17,706.706 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 11:59:17,707.707 INFO    ] No camera update needed
[2026-06-12 11:59:17,708.708 INFO    ] Script finished. Safe exiting...
[2026-06-12 11:59:17,710.710 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 11:59:17,713.713 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 11:59:17,715.715 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 11:59:19,754.754 INFO    ] ================================================
[2026-06-12 11:59:19,770.770 INFO    ] Launching Daemon at Fri Jun 12 11:59:19 IST 2026
[2026-06-12 11:59:19,781.781 INFO    ] ================================================
[2026-06-12 11:59:20,158.158 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 11:59:20
[2026-06-12 11:59:20,494.494 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 11:59:20,633.633 INFO    ] Initializing speech engine...
[2026-06-12 11:59:20,646.646 INFO    ] 2026-06-12 11:59:20
[2026-06-12 11:59:20,861.861 INFO    ] 2026-06-12 11:59:20
[2026-06-12 11:59:20,889.889 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 11:59:21,076.076 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 11:59:21,086.086 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 11:59:21,234.234 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 11:59:21,289.289 INFO    ] time= 12/06/2026 11:59:21
[2026-06-12 11:59:21,312.312 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 11:59:21,319.319 INFO    ] Checking for existing commands in stream...
[2026-06-12 11:59:21,410.410 INFO    ] No existing commands found in stream
[2026-06-12 11:59:26,419.419 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 11:59:26,423.423 INFO    ] Waiting 3.13 seconds before fallback handling...
[2026-06-12 11:59:29,948.948 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 11:59:29,950.950 INFO    ] Checking for system updates...
[2026-06-12 11:59:29,975.975 INFO    ] 200
[2026-06-12 11:59:29,976.976 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:59:30,007.007 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 11:59:30,008.008 INFO    ] No update needed
[2026-06-12 11:59:30,009.009 INFO    ] Checking for camera pi updates...
[2026-06-12 11:59:30,029.029 INFO    ] 200
[2026-06-12 11:59:30,031.031 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:59:30,055.055 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 11:59:30,090.090 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 11:59:30,092.092 INFO    ] No camera update needed
[2026-06-12 11:59:30,093.093 INFO    ] Script finished. Safe exiting...
[2026-06-12 11:59:30,095.095 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 11:59:30,098.098 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 11:59:30,101.101 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 11:59:32,133.133 INFO    ] ================================================
[2026-06-12 11:59:32,143.143 INFO    ] Launching Daemon at Fri Jun 12 11:59:32 IST 2026
[2026-06-12 11:59:32,150.150 INFO    ] ================================================
[2026-06-12 11:59:32,505.505 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 11:59:32
[2026-06-12 11:59:32,849.849 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 11:59:32,979.979 INFO    ] Initializing speech engine...
[2026-06-12 11:59:32,984.984 INFO    ] 2026-06-12 11:59:32
[2026-06-12 11:59:33,190.190 INFO    ] 2026-06-12 11:59:33
[2026-06-12 11:59:33,218.218 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 11:59:33,373.373 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 11:59:33,426.426 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 11:59:33,593.593 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 11:59:33,659.659 INFO    ] time= 12/06/2026 11:59:33
[2026-06-12 11:59:33,685.685 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 11:59:33,691.691 INFO    ] Checking for existing commands in stream...
[2026-06-12 11:59:33,762.762 INFO    ] No existing commands found in stream
[2026-06-12 11:59:38,776.776 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 11:59:38,779.779 INFO    ] Waiting 3.32 seconds before fallback handling...
[2026-06-12 11:59:42,471.471 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 11:59:42,473.473 INFO    ] Checking for system updates...
[2026-06-12 11:59:42,493.493 INFO    ] 200
[2026-06-12 11:59:42,495.495 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:59:42,524.524 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 11:59:42,526.526 INFO    ] No update needed
[2026-06-12 11:59:42,527.527 INFO    ] Checking for camera pi updates...
[2026-06-12 11:59:42,546.546 INFO    ] 200
[2026-06-12 11:59:42,547.547 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:59:42,572.572 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 11:59:42,611.611 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 11:59:42,612.612 INFO    ] No camera update needed
[2026-06-12 11:59:42,627.627 INFO    ] Script finished. Safe exiting...
[2026-06-12 11:59:42,629.629 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 11:59:42,632.632 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 11:59:42,635.635 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 11:59:44,673.673 INFO    ] ================================================
[2026-06-12 11:59:44,689.689 INFO    ] Launching Daemon at Fri Jun 12 11:59:44 IST 2026
[2026-06-12 11:59:44,699.699 INFO    ] ================================================
[2026-06-12 11:59:45,052.052 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 11:59:45
[2026-06-12 11:59:45,363.363 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 11:59:45,500.500 INFO    ] Initializing speech engine...
[2026-06-12 11:59:45,509.509 INFO    ] 2026-06-12 11:59:45
[2026-06-12 11:59:45,716.716 INFO    ] 2026-06-12 11:59:45
[2026-06-12 11:59:45,746.746 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 11:59:45,931.931 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 11:59:45,940.940 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 11:59:46,064.064 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 11:59:46,125.125 INFO    ] time= 12/06/2026 11:59:46
[2026-06-12 11:59:46,155.155 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 11:59:46,165.165 INFO    ] Checking for existing commands in stream...
[2026-06-12 11:59:46,261.261 INFO    ] No existing commands found in stream
[2026-06-12 11:59:51,270.270 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 11:59:51,273.273 INFO    ] Waiting 0.85 seconds before fallback handling...
[2026-06-12 11:59:52,503.503 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 11:59:52,504.504 INFO    ] Checking for system updates...
[2026-06-12 11:59:52,525.525 INFO    ] 200
[2026-06-12 11:59:52,526.526 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:59:52,561.561 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 11:59:52,563.563 INFO    ] No update needed
[2026-06-12 11:59:52,564.564 INFO    ] Checking for camera pi updates...
[2026-06-12 11:59:52,584.584 INFO    ] 200
[2026-06-12 11:59:52,586.586 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 11:59:52,609.609 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 11:59:52,748.748 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 11:59:52,749.749 INFO    ] No camera update needed
[2026-06-12 11:59:52,751.751 INFO    ] Script finished. Safe exiting...
[2026-06-12 11:59:52,752.752 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 11:59:52,755.755 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 11:59:52,758.758 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 11:59:54,798.798 INFO    ] ================================================
[2026-06-12 11:59:54,813.813 INFO    ] Launching Daemon at Fri Jun 12 11:59:54 IST 2026
[2026-06-12 11:59:54,823.823 INFO    ] ================================================
[2026-06-12 11:59:55,186.186 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 11:59:55
[2026-06-12 11:59:55,504.504 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 11:59:55,636.636 INFO    ] Initializing speech engine...
[2026-06-12 11:59:55,650.650 INFO    ] 2026-06-12 11:59:55
[2026-06-12 11:59:55,856.856 INFO    ] 2026-06-12 11:59:55
[2026-06-12 11:59:55,885.885 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 11:59:56,068.068 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 11:59:56,072.072 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 11:59:56,217.217 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 11:59:56,275.275 INFO    ] time= 12/06/2026 11:59:56
[2026-06-12 11:59:56,298.298 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 11:59:56,416.416 INFO    ] Checking for existing commands in stream...
[2026-06-12 11:59:56,512.512 INFO    ] No existing commands found in stream
[2026-06-12 12:00:01,522.522 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 12:00:01,525.525 INFO    ] Waiting 1.46 seconds before fallback handling...
[2026-06-12 12:00:03,437.437 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 12:00:03,450.450 INFO    ] Checking for system updates...
[2026-06-12 12:00:03,504.504 INFO    ] 200
[2026-06-12 12:00:03,507.507 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:00:03,642.642 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 12:00:03,644.644 INFO    ] No update needed
[2026-06-12 12:00:03,647.647 INFO    ] Checking for camera pi updates...
[2026-06-12 12:00:03,708.708 INFO    ] 200
[2026-06-12 12:00:03,714.714 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:00:03,773.773 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 12:00:03,924.924 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 12:00:03,925.925 INFO    ] No camera update needed
[2026-06-12 12:00:03,927.927 INFO    ] Script finished. Safe exiting...
[2026-06-12 12:00:03,928.928 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 12:00:03,932.932 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 12:00:03,935.935 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 12:00:05,976.976 INFO    ] ================================================
[2026-06-12 12:00:05,991.991 INFO    ] Launching Daemon at Fri Jun 12 12:00:05 IST 2026
[2026-06-12 12:00:06,002.002 INFO    ] ================================================
[2026-06-12 12:00:06,357.357 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 12:00:06
[2026-06-12 12:00:07,141.141 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 12:00:07,288.288 INFO    ] Initializing speech engine...
[2026-06-12 12:00:07,298.298 INFO    ] 2026-06-12 12:00:07
[2026-06-12 12:00:07,506.506 INFO    ] 2026-06-12 12:00:07
[2026-06-12 12:00:07,535.535 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 12:00:07,718.718 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 12:00:07,728.728 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 12:00:07,868.868 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 12:00:07,925.925 INFO    ] time= 12/06/2026 12:00:07
[2026-06-12 12:00:07,948.948 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 12:00:07,955.955 INFO    ] Checking for existing commands in stream...
[2026-06-12 12:00:08,021.021 INFO    ] No existing commands found in stream
[2026-06-12 12:00:13,041.041 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 12:00:13,044.044 INFO    ] Waiting 3.87 seconds before fallback handling...
[2026-06-12 12:00:17,344.344 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 12:00:17,345.345 INFO    ] Checking for system updates...
[2026-06-12 12:00:17,368.368 INFO    ] 200
[2026-06-12 12:00:17,369.369 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:00:17,405.405 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 12:00:17,406.406 INFO    ] No update needed
[2026-06-12 12:00:17,408.408 INFO    ] Checking for camera pi updates...
[2026-06-12 12:00:17,430.430 INFO    ] 200
[2026-06-12 12:00:17,432.432 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:00:17,457.457 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 12:00:17,497.497 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 12:00:17,499.499 INFO    ] No camera update needed
[2026-06-12 12:00:17,500.500 INFO    ] Script finished. Safe exiting...
[2026-06-12 12:00:17,501.501 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 12:00:17,505.505 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 12:00:17,508.508 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 12:00:19,546.546 INFO    ] ================================================
[2026-06-12 12:00:19,562.562 INFO    ] Launching Daemon at Fri Jun 12 12:00:19 IST 2026
[2026-06-12 12:00:19,572.572 INFO    ] ================================================
[2026-06-12 12:00:19,910.910 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 12:00:19
[2026-06-12 12:00:20,222.222 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 12:00:20,354.354 INFO    ] Initializing speech engine...
[2026-06-12 12:00:20,362.362 INFO    ] 2026-06-12 12:00:20
[2026-06-12 12:00:20,575.575 INFO    ] 2026-06-12 12:00:20
[2026-06-12 12:00:20,605.605 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 12:00:20,793.793 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 12:00:20,801.801 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 12:00:20,944.944 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 12:00:21,002.002 INFO    ] time= 12/06/2026 12:00:20
[2026-06-12 12:00:21,026.026 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 12:00:21,033.033 INFO    ] Checking for existing commands in stream...
[2026-06-12 12:00:21,101.101 INFO    ] No existing commands found in stream
[2026-06-12 12:00:26,110.110 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 12:00:26,113.113 INFO    ] Waiting 1.99 seconds before fallback handling...
[2026-06-12 12:00:28,472.472 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 12:00:28,473.473 INFO    ] Checking for system updates...
[2026-06-12 12:00:28,494.494 INFO    ] 200
[2026-06-12 12:00:28,495.495 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:00:28,525.525 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 12:00:28,527.527 INFO    ] No update needed
[2026-06-12 12:00:28,528.528 INFO    ] Checking for camera pi updates...
[2026-06-12 12:00:28,547.547 INFO    ] 200
[2026-06-12 12:00:28,549.549 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:00:28,572.572 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 12:00:28,606.606 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 12:00:28,607.607 INFO    ] No camera update needed
[2026-06-12 12:00:28,609.609 INFO    ] Script finished. Safe exiting...
[2026-06-12 12:00:28,610.610 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 12:00:28,613.613 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 12:00:28,616.616 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 12:00:30,654.654 INFO    ] ================================================
[2026-06-12 12:00:30,669.669 INFO    ] Launching Daemon at Fri Jun 12 12:00:30 IST 2026
[2026-06-12 12:00:30,680.680 INFO    ] ================================================
[2026-06-12 12:00:31,004.004 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 12:00:31
[2026-06-12 12:00:31,317.317 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 12:00:31,464.464 INFO    ] Initializing speech engine...
[2026-06-12 12:00:31,471.471 INFO    ] 2026-06-12 12:00:31
[2026-06-12 12:00:31,685.685 INFO    ] 2026-06-12 12:00:31
[2026-06-12 12:00:31,716.716 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 12:00:31,915.915 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 12:00:31,925.925 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 12:00:32,086.086 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 12:00:32,155.155 INFO    ] time= 12/06/2026 12:00:32
[2026-06-12 12:00:32,166.166 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 12:00:32,180.180 INFO    ] Checking for existing commands in stream...
[2026-06-12 12:00:32,295.295 INFO    ] No existing commands found in stream
[2026-06-12 12:00:37,305.305 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 12:00:37,308.308 INFO    ] Waiting 0.92 seconds before fallback handling...
[2026-06-12 12:00:38,605.605 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 12:00:38,606.606 INFO    ] Checking for system updates...
[2026-06-12 12:00:38,627.627 INFO    ] 200
[2026-06-12 12:00:38,628.628 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:00:38,659.659 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 12:00:38,660.660 INFO    ] No update needed
[2026-06-12 12:00:38,662.662 INFO    ] Checking for camera pi updates...
[2026-06-12 12:00:38,681.681 INFO    ] 200
[2026-06-12 12:00:38,683.683 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:00:38,707.707 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 12:00:38,729.729 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 12:00:38,730.730 INFO    ] No camera update needed
[2026-06-12 12:00:38,732.732 INFO    ] Script finished. Safe exiting...
[2026-06-12 12:00:38,733.733 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 12:00:38,736.736 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 12:00:38,739.739 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 12:00:40,781.781 INFO    ] ================================================
[2026-06-12 12:00:40,797.797 INFO    ] Launching Daemon at Fri Jun 12 12:00:40 IST 2026
[2026-06-12 12:00:40,808.808 INFO    ] ================================================
[2026-06-12 12:00:41,152.152 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 12:00:41
[2026-06-12 12:00:41,465.465 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 12:00:41,602.602 INFO    ] Initializing speech engine...
[2026-06-12 12:00:41,611.611 INFO    ] 2026-06-12 12:00:41
[2026-06-12 12:00:41,816.816 INFO    ] 2026-06-12 12:00:41
[2026-06-12 12:00:41,845.845 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 12:00:42,028.028 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 12:00:42,032.032 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 12:00:42,167.167 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 12:00:42,231.231 INFO    ] time= 12/06/2026 12:00:42
[2026-06-12 12:00:42,259.259 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 12:00:42,265.265 INFO    ] Checking for existing commands in stream...
[2026-06-12 12:00:42,332.332 INFO    ] No existing commands found in stream
[2026-06-12 12:00:47,341.341 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 12:00:47,344.344 INFO    ] Waiting 1.61 seconds before fallback handling...
[2026-06-12 12:00:49,327.327 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 12:00:49,329.329 INFO    ] Checking for system updates...
[2026-06-12 12:00:49,349.349 INFO    ] 200
[2026-06-12 12:00:49,351.351 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:00:49,386.386 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 12:00:49,387.387 INFO    ] No update needed
[2026-06-12 12:00:49,388.388 INFO    ] Checking for camera pi updates...
[2026-06-12 12:00:49,409.409 INFO    ] 200
[2026-06-12 12:00:49,410.410 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:00:49,433.433 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 12:00:49,473.473 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 12:00:49,475.475 INFO    ] No camera update needed
[2026-06-12 12:00:49,476.476 INFO    ] Script finished. Safe exiting...
[2026-06-12 12:00:49,477.477 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 12:00:49,480.480 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 12:00:49,483.483 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 12:00:51,521.521 INFO    ] ================================================
[2026-06-12 12:00:51,536.536 INFO    ] Launching Daemon at Fri Jun 12 12:00:51 IST 2026
[2026-06-12 12:00:51,547.547 INFO    ] ================================================
[2026-06-12 12:00:51,904.904 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 12:00:51
[2026-06-12 12:00:52,215.215 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 12:00:52,352.352 INFO    ] Initializing speech engine...
[2026-06-12 12:00:52,360.360 INFO    ] 2026-06-12 12:00:52
[2026-06-12 12:00:52,565.565 INFO    ] 2026-06-12 12:00:52
[2026-06-12 12:00:52,594.594 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 12:00:52,777.777 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 12:00:52,786.786 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 12:00:52,927.927 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 12:00:52,985.985 INFO    ] time= 12/06/2026 12:00:52
[2026-06-12 12:00:53,009.009 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 12:00:53,015.015 INFO    ] Checking for existing commands in stream...
[2026-06-12 12:00:53,082.082 INFO    ] No existing commands found in stream
[2026-06-12 12:00:58,096.096 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 12:00:58,099.099 INFO    ] Waiting 3.34 seconds before fallback handling...
[2026-06-12 12:01:01,848.848 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 12:01:01,850.850 INFO    ] Checking for system updates...
[2026-06-12 12:01:01,872.872 INFO    ] 200
[2026-06-12 12:01:01,873.873 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:01:01,903.903 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 12:01:01,904.904 INFO    ] No update needed
[2026-06-12 12:01:01,905.905 INFO    ] Checking for camera pi updates...
[2026-06-12 12:01:01,927.927 INFO    ] 200
[2026-06-12 12:01:01,928.928 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:01:01,951.951 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 12:01:01,982.982 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 12:01:01,987.987 INFO    ] No camera update needed
[2026-06-12 12:01:01,991.991 INFO    ] Script finished. Safe exiting...
[2026-06-12 12:01:01,995.995 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 12:01:02,001.001 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 12:01:02,006.006 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 12:01:04,042.042 INFO    ] ================================================
[2026-06-12 12:01:04,057.057 INFO    ] Launching Daemon at Fri Jun 12 12:01:04 IST 2026
[2026-06-12 12:01:04,068.068 INFO    ] ================================================
[2026-06-12 12:01:04,430.430 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 12:01:04
[2026-06-12 12:01:04,741.741 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 12:01:04,875.875 INFO    ] Initializing speech engine...
[2026-06-12 12:01:04,888.888 INFO    ] 2026-06-12 12:01:04
[2026-06-12 12:01:05,103.103 INFO    ] 2026-06-12 12:01:05
[2026-06-12 12:01:05,134.134 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 12:01:05,263.263 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 12:01:05,329.329 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 12:01:05,471.471 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 12:01:05,533.533 INFO    ] time= 12/06/2026 12:01:05
[2026-06-12 12:01:05,570.570 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 12:01:05,572.572 INFO    ] Checking for existing commands in stream...
[2026-06-12 12:01:05,647.647 INFO    ] No existing commands found in stream
[2026-06-12 12:01:10,656.656 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 12:01:10,658.658 INFO    ] Waiting 0.83 seconds before fallback handling...
[2026-06-12 12:01:11,863.863 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 12:01:11,865.865 INFO    ] Checking for system updates...
[2026-06-12 12:01:11,887.887 INFO    ] 200
[2026-06-12 12:01:11,888.888 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:01:11,918.918 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 12:01:11,919.919 INFO    ] No update needed
[2026-06-12 12:01:11,921.921 INFO    ] Checking for camera pi updates...
[2026-06-12 12:01:11,941.941 INFO    ] 200
[2026-06-12 12:01:11,942.942 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:01:11,966.966 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 12:01:11,990.990 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 12:01:11,991.991 INFO    ] No camera update needed
[2026-06-12 12:01:11,993.993 INFO    ] Script finished. Safe exiting...
[2026-06-12 12:01:11,994.994 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 12:01:11,997.997 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 12:01:11,999.999 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 12:01:14,038.038 INFO    ] ================================================
[2026-06-12 12:01:14,054.054 INFO    ] Launching Daemon at Fri Jun 12 12:01:14 IST 2026
[2026-06-12 12:01:14,064.064 INFO    ] ================================================
[2026-06-12 12:01:14,419.419 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 12:01:14
[2026-06-12 12:01:14,748.748 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 12:01:14,897.897 INFO    ] Initializing speech engine...
[2026-06-12 12:01:14,902.902 INFO    ] 2026-06-12 12:01:14
[2026-06-12 12:01:15,110.110 INFO    ] 2026-06-12 12:01:15
[2026-06-12 12:01:15,140.140 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 12:01:15,326.326 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 12:01:15,336.336 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 12:01:15,467.467 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 12:01:15,536.536 INFO    ] time= 12/06/2026 12:01:15
[2026-06-12 12:01:15,560.560 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 12:01:15,566.566 INFO    ] Checking for existing commands in stream...
[2026-06-12 12:01:15,634.634 INFO    ] No existing commands found in stream
[2026-06-12 12:01:20,648.648 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 12:01:20,652.652 INFO    ] Waiting 0.00 seconds before fallback handling...
[2026-06-12 12:01:21,044.044 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 12:01:21,045.045 INFO    ] Checking for system updates...
[2026-06-12 12:01:21,067.067 INFO    ] 200
[2026-06-12 12:01:21,069.069 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:01:21,101.101 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 12:01:21,102.102 INFO    ] No update needed
[2026-06-12 12:01:21,103.103 INFO    ] Checking for camera pi updates...
[2026-06-12 12:01:21,125.125 INFO    ] 200
[2026-06-12 12:01:21,127.127 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:01:21,152.152 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 12:01:21,189.189 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 12:01:21,191.191 INFO    ] No camera update needed
[2026-06-12 12:01:21,192.192 INFO    ] Script finished. Safe exiting...
[2026-06-12 12:01:21,194.194 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 12:01:21,197.197 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 12:01:21,200.200 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 12:01:23,242.242 INFO    ] ================================================
[2026-06-12 12:01:23,257.257 INFO    ] Launching Daemon at Fri Jun 12 12:01:23 IST 2026
[2026-06-12 12:01:23,267.267 INFO    ] ================================================
[2026-06-12 12:01:23,631.631 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 12:01:23
[2026-06-12 12:01:23,995.995 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 12:01:24,168.168 INFO    ] Initializing speech engine...
[2026-06-12 12:01:24,173.173 INFO    ] 2026-06-12 12:01:24
[2026-06-12 12:01:24,381.381 INFO    ] 2026-06-12 12:01:24
[2026-06-12 12:01:24,409.409 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 12:01:24,605.605 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 12:01:24,609.609 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 12:01:24,745.745 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 12:01:24,808.808 INFO    ] time= 12/06/2026 12:01:24
[2026-06-12 12:01:24,840.840 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 12:01:24,846.846 INFO    ] Checking for existing commands in stream...
[2026-06-12 12:01:24,913.913 INFO    ] No existing commands found in stream
[2026-06-12 12:01:29,927.927 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 12:01:29,931.931 INFO    ] Waiting 1.22 seconds before fallback handling...
[2026-06-12 12:01:31,526.526 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 12:01:31,528.528 INFO    ] Checking for system updates...
[2026-06-12 12:01:31,552.552 INFO    ] 200
[2026-06-12 12:01:31,554.554 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:01:31,584.584 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 12:01:31,586.586 INFO    ] No update needed
[2026-06-12 12:01:31,587.587 INFO    ] Checking for camera pi updates...
[2026-06-12 12:01:31,607.607 INFO    ] 200
[2026-06-12 12:01:31,608.608 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:01:31,632.632 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 12:01:31,674.674 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 12:01:31,675.675 INFO    ] No camera update needed
[2026-06-12 12:01:31,677.677 INFO    ] Script finished. Safe exiting...
[2026-06-12 12:01:31,678.678 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 12:01:31,681.681 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 12:01:31,683.683 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 12:01:33,715.715 INFO    ] ================================================
[2026-06-12 12:01:33,730.730 INFO    ] Launching Daemon at Fri Jun 12 12:01:33 IST 2026
[2026-06-12 12:01:33,741.741 INFO    ] ================================================
[2026-06-12 12:01:34,096.096 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 12:01:34
[2026-06-12 12:01:34,410.410 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 12:01:34,538.538 INFO    ] Initializing speech engine...
[2026-06-12 12:01:34,543.543 INFO    ] 2026-06-12 12:01:34
[2026-06-12 12:01:34,757.757 INFO    ] 2026-06-12 12:01:34
[2026-06-12 12:01:34,786.786 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 12:01:34,967.967 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 12:01:34,971.971 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 12:01:35,117.117 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 12:01:35,174.174 INFO    ] time= 12/06/2026 12:01:35
[2026-06-12 12:01:35,198.198 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 12:01:35,203.203 INFO    ] Checking for existing commands in stream...
[2026-06-12 12:01:35,270.270 INFO    ] No existing commands found in stream
[2026-06-12 12:01:40,279.279 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 12:01:40,282.282 INFO    ] Waiting 3.59 seconds before fallback handling...
[2026-06-12 12:01:44,253.253 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 12:01:44,255.255 INFO    ] Checking for system updates...
[2026-06-12 12:01:44,275.275 INFO    ] 200
[2026-06-12 12:01:44,276.276 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:01:44,308.308 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 12:01:44,310.310 INFO    ] No update needed
[2026-06-12 12:01:44,311.311 INFO    ] Checking for camera pi updates...
[2026-06-12 12:01:44,332.332 INFO    ] 200
[2026-06-12 12:01:44,333.333 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:01:44,356.356 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 12:01:44,394.394 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 12:01:44,396.396 INFO    ] No camera update needed
[2026-06-12 12:01:44,397.397 INFO    ] Script finished. Safe exiting...
[2026-06-12 12:01:44,398.398 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 12:01:44,401.401 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 12:01:44,404.404 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 12:01:46,442.442 INFO    ] ================================================
[2026-06-12 12:01:46,457.457 INFO    ] Launching Daemon at Fri Jun 12 12:01:46 IST 2026
[2026-06-12 12:01:46,468.468 INFO    ] ================================================
[2026-06-12 12:01:46,825.825 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 12:01:46
[2026-06-12 12:01:47,137.137 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 12:01:47,281.281 INFO    ] Initializing speech engine...
[2026-06-12 12:01:47,286.286 INFO    ] 2026-06-12 12:01:47
[2026-06-12 12:01:47,491.491 INFO    ] 2026-06-12 12:01:47
[2026-06-12 12:01:47,521.521 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 12:01:47,707.707 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 12:01:47,710.710 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 12:01:47,842.842 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 12:01:47,902.902 INFO    ] time= 12/06/2026 12:01:47
[2026-06-12 12:01:47,933.933 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 12:01:47,944.944 INFO    ] Checking for existing commands in stream...
[2026-06-12 12:01:48,041.041 INFO    ] No existing commands found in stream
[2026-06-12 12:01:53,049.049 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 12:01:53,053.053 INFO    ] Waiting 2.53 seconds before fallback handling...
[2026-06-12 12:01:55,932.932 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 12:01:55,934.934 INFO    ] Checking for system updates...
[2026-06-12 12:01:55,954.954 INFO    ] 200
[2026-06-12 12:01:55,956.956 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:01:55,986.986 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 12:01:55,987.987 INFO    ] No update needed
[2026-06-12 12:01:55,989.989 INFO    ] Checking for camera pi updates...
[2026-06-12 12:01:56,008.008 INFO    ] 200
[2026-06-12 12:01:56,010.010 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:01:56,035.035 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 12:01:56,182.182 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 12:01:56,184.184 INFO    ] No camera update needed
[2026-06-12 12:01:56,185.185 INFO    ] Script finished. Safe exiting...
[2026-06-12 12:01:56,187.187 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 12:01:56,190.190 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 12:01:56,193.193 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 12:01:58,232.232 INFO    ] ================================================
[2026-06-12 12:01:58,248.248 INFO    ] Launching Daemon at Fri Jun 12 12:01:58 IST 2026
[2026-06-12 12:01:58,259.259 INFO    ] ================================================
[2026-06-12 12:01:58,651.651 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 12:01:58
[2026-06-12 12:01:58,985.985 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 12:01:59,138.138 INFO    ] Initializing speech engine...
[2026-06-12 12:01:59,144.144 INFO    ] 2026-06-12 12:01:59
[2026-06-12 12:01:59,352.352 INFO    ] 2026-06-12 12:01:59
[2026-06-12 12:01:59,381.381 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 12:01:59,567.567 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 12:01:59,571.571 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 12:01:59,714.714 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 12:01:59,779.779 INFO    ] time= 12/06/2026 12:01:59
[2026-06-12 12:01:59,802.802 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 12:01:59,808.808 INFO    ] Checking for existing commands in stream...
[2026-06-12 12:01:59,876.876 INFO    ] No existing commands found in stream
[2026-06-12 12:02:04,891.891 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 12:02:04,894.894 INFO    ] Waiting 1.29 seconds before fallback handling...
[2026-06-12 12:02:06,533.533 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 12:02:06,535.535 INFO    ] Checking for system updates...
[2026-06-12 12:02:06,556.556 INFO    ] 200
[2026-06-12 12:02:06,557.557 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:02:06,590.590 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 12:02:06,591.591 INFO    ] No update needed
[2026-06-12 12:02:06,593.593 INFO    ] Checking for camera pi updates...
[2026-06-12 12:02:06,616.616 INFO    ] 200
[2026-06-12 12:02:06,617.617 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:02:06,643.643 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 12:02:06,685.685 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 12:02:06,686.686 INFO    ] No camera update needed
[2026-06-12 12:02:06,688.688 INFO    ] Script finished. Safe exiting...
[2026-06-12 12:02:06,689.689 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 12:02:06,692.692 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 12:02:06,695.695 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 12:02:08,736.736 INFO    ] ================================================
[2026-06-12 12:02:08,752.752 INFO    ] Launching Daemon at Fri Jun 12 12:02:08 IST 2026
[2026-06-12 12:02:08,764.764 INFO    ] ================================================
[2026-06-12 12:02:09,115.115 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 12:02:09
[2026-06-12 12:02:09,428.428 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 12:02:09,558.558 INFO    ] Initializing speech engine...
[2026-06-12 12:02:09,568.568 INFO    ] 2026-06-12 12:02:09
[2026-06-12 12:02:09,783.783 INFO    ] 2026-06-12 12:02:09
[2026-06-12 12:02:09,811.811 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 12:02:09,999.999 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 12:02:10,009.009 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 12:02:10,154.154 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 12:02:10,209.209 INFO    ] time= 12/06/2026 12:02:10
[2026-06-12 12:02:10,230.230 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 12:02:10,237.237 INFO    ] Checking for existing commands in stream...
[2026-06-12 12:02:10,304.304 INFO    ] No existing commands found in stream
[2026-06-12 12:02:15,313.313 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 12:02:15,316.316 INFO    ] Waiting 3.69 seconds before fallback handling...
[2026-06-12 12:02:19,381.381 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 12:02:19,382.382 INFO    ] Checking for system updates...
[2026-06-12 12:02:19,403.403 INFO    ] 200
[2026-06-12 12:02:19,404.404 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:02:19,434.434 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 12:02:19,436.436 INFO    ] No update needed
[2026-06-12 12:02:19,437.437 INFO    ] Checking for camera pi updates...
[2026-06-12 12:02:19,457.457 INFO    ] 200
[2026-06-12 12:02:19,458.458 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:02:19,483.483 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 12:02:19,517.517 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 12:02:19,518.518 INFO    ] No camera update needed
[2026-06-12 12:02:19,520.520 INFO    ] Script finished. Safe exiting...
[2026-06-12 12:02:19,521.521 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 12:02:19,524.524 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 12:02:19,527.527 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 12:02:21,566.566 INFO    ] ================================================
[2026-06-12 12:02:21,582.582 INFO    ] Launching Daemon at Fri Jun 12 12:02:21 IST 2026
[2026-06-12 12:02:21,593.593 INFO    ] ================================================
[2026-06-12 12:02:21,939.939 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 12:02:21
[2026-06-12 12:02:22,255.255 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 12:02:22,399.399 INFO    ] Initializing speech engine...
[2026-06-12 12:02:22,405.405 INFO    ] 2026-06-12 12:02:22
[2026-06-12 12:02:22,609.609 INFO    ] 2026-06-12 12:02:22
[2026-06-12 12:02:22,636.636 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 12:02:22,818.818 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 12:02:22,828.828 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 12:02:22,953.953 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 12:02:23,010.010 INFO    ] time= 12/06/2026 12:02:22
[2026-06-12 12:02:23,046.046 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 12:02:23,053.053 INFO    ] Checking for existing commands in stream...
[2026-06-12 12:02:23,143.143 INFO    ] No existing commands found in stream
[2026-06-12 12:02:28,152.152 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 12:02:28,155.155 INFO    ] Waiting 2.24 seconds before fallback handling...
[2026-06-12 12:02:30,799.799 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 12:02:30,804.804 INFO    ] Checking for system updates...
[2026-06-12 12:02:30,824.824 INFO    ] 200
[2026-06-12 12:02:30,826.826 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:02:30,859.859 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 12:02:30,860.860 INFO    ] No update needed
[2026-06-12 12:02:30,861.861 INFO    ] Checking for camera pi updates...
[2026-06-12 12:02:30,881.881 INFO    ] 200
[2026-06-12 12:02:30,882.882 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:02:30,905.905 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 12:02:30,941.941 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 12:02:30,943.943 INFO    ] No camera update needed
[2026-06-12 12:02:30,944.944 INFO    ] Script finished. Safe exiting...
[2026-06-12 12:02:30,945.945 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 12:02:30,948.948 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 12:02:30,951.951 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 12:02:32,982.982 INFO    ] ================================================
[2026-06-12 12:02:33,998.998 INFO    ] Launching Daemon at Fri Jun 12 12:02:32 IST 2026
[2026-06-12 12:02:33,008.008 INFO    ] ================================================
[2026-06-12 12:02:33,368.368 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 12:02:33
[2026-06-12 12:02:33,685.685 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 12:02:33,829.829 INFO    ] Initializing speech engine...
[2026-06-12 12:02:33,834.834 INFO    ] 2026-06-12 12:02:33
[2026-06-12 12:02:34,038.038 INFO    ] 2026-06-12 12:02:34
[2026-06-12 12:02:34,067.067 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 12:02:34,199.199 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 12:02:34,253.253 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 12:02:34,406.406 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 12:02:34,459.459 INFO    ] time= 12/06/2026 12:02:34
[2026-06-12 12:02:34,483.483 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 12:02:34,489.489 INFO    ] Checking for existing commands in stream...
[2026-06-12 12:02:34,556.556 INFO    ] No existing commands found in stream
[2026-06-12 12:02:39,575.575 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 12:02:39,578.578 INFO    ] Waiting 0.39 seconds before fallback handling...
[2026-06-12 12:02:40,322.322 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 12:02:40,323.323 INFO    ] Checking for system updates...
[2026-06-12 12:02:40,346.346 INFO    ] 200
[2026-06-12 12:02:40,348.348 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:02:40,381.381 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 12:02:40,382.382 INFO    ] No update needed
[2026-06-12 12:02:40,384.384 INFO    ] Checking for camera pi updates...
[2026-06-12 12:02:40,405.405 INFO    ] 200
[2026-06-12 12:02:40,406.406 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:02:40,439.439 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 12:02:40,479.479 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 12:02:40,480.480 INFO    ] No camera update needed
[2026-06-12 12:02:40,482.482 INFO    ] Script finished. Safe exiting...
[2026-06-12 12:02:40,483.483 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 12:02:40,486.486 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 12:02:40,489.489 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 12:02:42,530.530 INFO    ] ================================================
[2026-06-12 12:02:42,545.545 INFO    ] Launching Daemon at Fri Jun 12 12:02:42 IST 2026
[2026-06-12 12:02:42,555.555 INFO    ] ================================================
[2026-06-12 12:02:42,882.882 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 12:02:42
[2026-06-12 12:02:43,192.192 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 12:02:43,325.325 INFO    ] Initializing speech engine...
[2026-06-12 12:02:43,333.333 INFO    ] 2026-06-12 12:02:43
[2026-06-12 12:02:43,546.546 INFO    ] 2026-06-12 12:02:43
[2026-06-12 12:02:43,575.575 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 12:02:43,760.760 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 12:02:43,764.764 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 12:02:43,928.928 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 12:02:43,972.972 INFO    ] time= 12/06/2026 12:02:43
[2026-06-12 12:02:43,994.994 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 12:02:44,000.000 INFO    ] Checking for existing commands in stream...
[2026-06-12 12:02:44,068.068 INFO    ] No existing commands found in stream
[2026-06-12 12:02:49,077.077 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 12:02:49,080.080 INFO    ] Waiting 0.85 seconds before fallback handling...
[2026-06-12 12:02:50,296.296 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 12:02:50,297.297 INFO    ] Checking for system updates...
[2026-06-12 12:02:50,317.317 INFO    ] 200
[2026-06-12 12:02:50,319.319 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:02:50,349.349 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 12:02:50,350.350 INFO    ] No update needed
[2026-06-12 12:02:50,352.352 INFO    ] Checking for camera pi updates...
[2026-06-12 12:02:50,371.371 INFO    ] 200
[2026-06-12 12:02:50,372.372 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:02:50,395.395 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 12:02:50,434.434 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 12:02:50,435.435 INFO    ] No camera update needed
[2026-06-12 12:02:50,437.437 INFO    ] Script finished. Safe exiting...
[2026-06-12 12:02:50,438.438 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 12:02:50,441.441 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 12:02:50,444.444 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 12:02:52,487.487 INFO    ] ================================================
[2026-06-12 12:02:52,502.502 INFO    ] Launching Daemon at Fri Jun 12 12:02:52 IST 2026
[2026-06-12 12:02:52,513.513 INFO    ] ================================================
[2026-06-12 12:02:52,879.879 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 12:02:52
[2026-06-12 12:02:53,196.196 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 12:02:53,343.343 INFO    ] Initializing speech engine...
[2026-06-12 12:02:53,349.349 INFO    ] 2026-06-12 12:02:53
[2026-06-12 12:02:53,553.553 INFO    ] 2026-06-12 12:02:53
[2026-06-12 12:02:53,581.581 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 12:02:53,765.765 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 12:02:53,775.775 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 12:02:53,897.897 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 12:02:53,958.958 INFO    ] time= 12/06/2026 12:02:53
[2026-06-12 12:02:53,992.992 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 12:02:53,997.997 INFO    ] Checking for existing commands in stream...
[2026-06-12 12:02:54,069.069 INFO    ] No existing commands found in stream
[2026-06-12 12:02:59,093.093 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 12:02:59,100.100 INFO    ] Waiting 0.78 seconds before fallback handling...
[2026-06-12 12:03:00,224.224 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 12:03:00,225.225 INFO    ] Checking for system updates...
[2026-06-12 12:03:00,246.246 INFO    ] 200
[2026-06-12 12:03:00,247.247 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:03:00,277.277 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 12:03:00,279.279 INFO    ] No update needed
[2026-06-12 12:03:00,280.280 INFO    ] Checking for camera pi updates...
[2026-06-12 12:03:00,302.302 INFO    ] 200
[2026-06-12 12:03:00,303.303 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:03:00,329.329 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 12:03:00,365.365 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 12:03:00,367.367 INFO    ] No camera update needed
[2026-06-12 12:03:00,368.368 INFO    ] Script finished. Safe exiting...
[2026-06-12 12:03:00,369.369 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 12:03:00,373.373 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 12:03:00,376.376 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 12:03:02,414.414 INFO    ] ================================================
[2026-06-12 12:03:02,423.423 INFO    ] Launching Daemon at Fri Jun 12 12:03:02 IST 2026
[2026-06-12 12:03:02,430.430 INFO    ] ================================================
[2026-06-12 12:03:02,752.752 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 12:03:02
[2026-06-12 12:03:03,085.085 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 12:03:03,235.235 INFO    ] Initializing speech engine...
[2026-06-12 12:03:03,240.240 INFO    ] 2026-06-12 12:03:03
[2026-06-12 12:03:03,445.445 INFO    ] 2026-06-12 12:03:03
[2026-06-12 12:03:03,475.475 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 12:03:03,602.602 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 12:03:03,660.660 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 12:03:03,789.789 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 12:03:03,840.840 INFO    ] time= 12/06/2026 12:03:03
[2026-06-12 12:03:03,887.887 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 12:03:03,893.893 INFO    ] Checking for existing commands in stream...
[2026-06-12 12:03:03,960.960 INFO    ] No existing commands found in stream
[2026-06-12 12:03:08,974.974 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 12:03:08,977.977 INFO    ] Waiting 2.88 seconds before fallback handling...
[2026-06-12 12:03:12,251.251 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 12:03:12,253.253 INFO    ] Checking for system updates...
[2026-06-12 12:03:12,273.273 INFO    ] 200
[2026-06-12 12:03:12,275.275 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:03:12,305.305 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 12:03:12,307.307 INFO    ] No update needed
[2026-06-12 12:03:12,308.308 INFO    ] Checking for camera pi updates...
[2026-06-12 12:03:12,329.329 INFO    ] 200
[2026-06-12 12:03:12,331.331 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:03:12,357.357 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 12:03:12,381.381 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 12:03:12,383.383 INFO    ] No camera update needed
[2026-06-12 12:03:12,384.384 INFO    ] Script finished. Safe exiting...
[2026-06-12 12:03:12,386.386 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 12:03:12,389.389 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 12:03:12,392.392 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 12:03:14,416.416 INFO    ] ================================================
[2026-06-12 12:03:14,426.426 INFO    ] Launching Daemon at Fri Jun 12 12:03:14 IST 2026
[2026-06-12 12:03:14,433.433 INFO    ] ================================================
[2026-06-12 12:03:14,777.777 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 12:03:14
[2026-06-12 12:03:15,131.131 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 12:03:15,296.296 INFO    ] Initializing speech engine...
[2026-06-12 12:03:15,309.309 INFO    ] 2026-06-12 12:03:15
[2026-06-12 12:03:15,537.537 INFO    ] 2026-06-12 12:03:15
[2026-06-12 12:03:15,568.568 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 12:03:15,712.712 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 12:03:15,767.767 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 12:03:15,976.976 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 12:03:16,001.001 INFO    ] time= 12/06/2026 12:03:15
[2026-06-12 12:03:16,007.007 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 12:03:16,009.009 INFO    ] Checking for existing commands in stream...
[2026-06-12 12:03:16,082.082 INFO    ] No existing commands found in stream
[2026-06-12 12:03:21,103.103 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 12:03:21,106.106 INFO    ] Waiting 1.95 seconds before fallback handling...
[2026-06-12 12:03:23,475.475 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 12:03:23,477.477 INFO    ] Checking for system updates...
[2026-06-12 12:03:23,499.499 INFO    ] 200
[2026-06-12 12:03:23,500.500 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:03:23,534.534 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 12:03:23,535.535 INFO    ] No update needed
[2026-06-12 12:03:23,536.536 INFO    ] Checking for camera pi updates...
[2026-06-12 12:03:23,556.556 INFO    ] 200
[2026-06-12 12:03:23,557.557 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:03:23,582.582 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 12:03:23,621.621 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 12:03:23,622.622 INFO    ] No camera update needed
[2026-06-12 12:03:23,624.624 INFO    ] Script finished. Safe exiting...
[2026-06-12 12:03:23,625.625 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 12:03:23,628.628 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 12:03:23,631.631 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 12:03:25,672.672 INFO    ] ================================================
[2026-06-12 12:03:25,688.688 INFO    ] Launching Daemon at Fri Jun 12 12:03:25 IST 2026
[2026-06-12 12:03:25,699.699 INFO    ] ================================================
[2026-06-12 12:03:26,076.076 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 12:03:26
[2026-06-12 12:03:26,412.412 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 12:03:26,549.549 INFO    ] Initializing speech engine...
[2026-06-12 12:03:26,554.554 INFO    ] 2026-06-12 12:03:26
[2026-06-12 12:03:26,777.777 INFO    ] 2026-06-12 12:03:26
[2026-06-12 12:03:26,807.807 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 12:03:26,931.931 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 12:03:26,994.994 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 12:03:27,127.127 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 12:03:27,189.189 INFO    ] time= 12/06/2026 12:03:27
[2026-06-12 12:03:27,224.224 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 12:03:27,229.229 INFO    ] Checking for existing commands in stream...
[2026-06-12 12:03:27,302.302 INFO    ] No existing commands found in stream
[2026-06-12 12:03:32,312.312 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 12:03:32,315.315 INFO    ] Waiting 0.68 seconds before fallback handling...
[2026-06-12 12:03:33,377.377 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 12:03:33,379.379 INFO    ] Checking for system updates...
[2026-06-12 12:03:33,400.400 INFO    ] 200
[2026-06-12 12:03:33,402.402 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:03:33,446.446 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 12:03:33,447.447 INFO    ] No update needed
[2026-06-12 12:03:33,449.449 INFO    ] Checking for camera pi updates...
[2026-06-12 12:03:33,471.471 INFO    ] 200
[2026-06-12 12:03:33,473.473 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:03:33,496.496 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 12:03:33,536.536 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 12:03:33,537.537 INFO    ] No camera update needed
[2026-06-12 12:03:33,539.539 INFO    ] Script finished. Safe exiting...
[2026-06-12 12:03:33,540.540 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 12:03:33,544.544 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 12:03:33,547.547 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 12:03:35,586.586 INFO    ] ================================================
[2026-06-12 12:03:35,602.602 INFO    ] Launching Daemon at Fri Jun 12 12:03:35 IST 2026
[2026-06-12 12:03:35,613.613 INFO    ] ================================================
[2026-06-12 12:03:35,975.975 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 12:03:35
[2026-06-12 12:03:36,291.291 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 12:03:36,435.435 INFO    ] Initializing speech engine...
[2026-06-12 12:03:36,440.440 INFO    ] 2026-06-12 12:03:36
[2026-06-12 12:03:36,644.644 INFO    ] 2026-06-12 12:03:36
[2026-06-12 12:03:36,673.673 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 12:03:36,857.857 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 12:03:36,866.866 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 12:03:36,996.996 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 12:03:37,063.063 INFO    ] time= 12/06/2026 12:03:37
[2026-06-12 12:03:37,088.088 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 12:03:37,093.093 INFO    ] Checking for existing commands in stream...
[2026-06-12 12:03:37,161.161 INFO    ] No existing commands found in stream
[2026-06-12 12:03:42,170.170 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 12:03:42,173.173 INFO    ] Waiting 2.72 seconds before fallback handling...
[2026-06-12 12:03:45,235.235 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 12:03:45,236.236 INFO    ] Checking for system updates...
[2026-06-12 12:03:45,258.258 INFO    ] 200
[2026-06-12 12:03:45,259.259 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:03:45,289.289 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 12:03:45,291.291 INFO    ] No update needed
[2026-06-12 12:03:45,292.292 INFO    ] Checking for camera pi updates...
[2026-06-12 12:03:45,311.311 INFO    ] 200
[2026-06-12 12:03:45,313.313 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:03:45,337.337 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 12:03:45,378.378 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 12:03:45,380.380 INFO    ] No camera update needed
[2026-06-12 12:03:45,381.381 INFO    ] Script finished. Safe exiting...
[2026-06-12 12:03:45,383.383 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 12:03:45,386.386 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 12:03:45,388.388 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 12:03:47,429.429 INFO    ] ================================================
[2026-06-12 12:03:47,444.444 INFO    ] Launching Daemon at Fri Jun 12 12:03:47 IST 2026
[2026-06-12 12:03:47,456.456 INFO    ] ================================================
[2026-06-12 12:03:47,791.791 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 12:03:47
[2026-06-12 12:03:48,107.107 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 12:03:48,246.246 INFO    ] Initializing speech engine...
[2026-06-12 12:03:48,256.256 INFO    ] 2026-06-12 12:03:48
[2026-06-12 12:03:48,460.460 INFO    ] 2026-06-12 12:03:48
[2026-06-12 12:03:48,489.489 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 12:03:48,628.628 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 12:03:48,676.676 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 12:03:48,808.808 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 12:03:48,864.864 INFO    ] time= 12/06/2026 12:03:48
[2026-06-12 12:03:48,904.904 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 12:03:48,909.909 INFO    ] Checking for existing commands in stream...
[2026-06-12 12:03:48,981.981 INFO    ] No existing commands found in stream
[2026-06-12 12:03:53,995.995 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 12:03:53,998.998 INFO    ] Waiting 1.76 seconds before fallback handling...
[2026-06-12 12:03:56,159.159 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 12:03:56,160.160 INFO    ] Checking for system updates...
[2026-06-12 12:03:56,182.182 INFO    ] 200
[2026-06-12 12:03:56,183.183 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:03:56,219.219 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 12:03:56,221.221 INFO    ] No update needed
[2026-06-12 12:03:56,222.222 INFO    ] Checking for camera pi updates...
[2026-06-12 12:03:56,244.244 INFO    ] 200
[2026-06-12 12:03:56,246.246 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:03:56,269.269 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 12:03:56,305.305 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 12:03:56,306.306 INFO    ] No camera update needed
[2026-06-12 12:03:56,307.307 INFO    ] Script finished. Safe exiting...
[2026-06-12 12:03:56,309.309 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 12:03:56,312.312 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 12:03:56,315.315 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 12:03:58,355.355 INFO    ] ================================================
[2026-06-12 12:03:58,371.371 INFO    ] Launching Daemon at Fri Jun 12 12:03:58 IST 2026
[2026-06-12 12:03:58,382.382 INFO    ] ================================================
[2026-06-12 12:03:58,764.764 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 12:03:58
[2026-06-12 12:03:59,098.098 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 12:03:59,247.247 INFO    ] Initializing speech engine...
[2026-06-12 12:03:59,252.252 INFO    ] 2026-06-12 12:03:59
[2026-06-12 12:03:59,459.459 INFO    ] 2026-06-12 12:03:59
[2026-06-12 12:03:59,487.487 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 12:03:59,671.671 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 12:03:59,679.679 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 12:03:59,822.822 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 12:03:59,877.877 INFO    ] time= 12/06/2026 12:03:59
[2026-06-12 12:03:59,901.901 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 12:03:59,907.907 INFO    ] Checking for existing commands in stream...
[2026-06-12 12:04:00,028.028 INFO    ] No existing commands found in stream
[2026-06-12 12:04:05,038.038 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 12:04:05,049.049 INFO    ] Waiting 1.92 seconds before fallback handling...
[2026-06-12 12:04:08,312.312 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 12:04:08,315.315 INFO    ] Checking for system updates...
[2026-06-12 12:04:08,352.352 INFO    ] 200
[2026-06-12 12:04:08,354.354 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:04:08,401.401 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 12:04:08,402.402 INFO    ] No update needed
[2026-06-12 12:04:08,404.404 INFO    ] Checking for camera pi updates...
[2026-06-12 12:04:08,424.424 INFO    ] 200
[2026-06-12 12:04:08,425.425 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:04:08,448.448 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 12:04:08,488.488 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 12:04:08,490.490 INFO    ] No camera update needed
[2026-06-12 12:04:08,491.491 INFO    ] Script finished. Safe exiting...
[2026-06-12 12:04:08,492.492 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 12:04:08,495.495 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 12:04:08,498.498 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 12:04:10,536.536 INFO    ] ================================================
[2026-06-12 12:04:10,553.553 INFO    ] Launching Daemon at Fri Jun 12 12:04:10 IST 2026
[2026-06-12 12:04:10,563.563 INFO    ] ================================================
[2026-06-12 12:04:10,905.905 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 12:04:10
[2026-06-12 12:04:11,219.219 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 12:04:11,350.350 INFO    ] Initializing speech engine...
[2026-06-12 12:04:11,358.358 INFO    ] 2026-06-12 12:04:11
[2026-06-12 12:04:11,570.570 INFO    ] 2026-06-12 12:04:11
[2026-06-12 12:04:11,598.598 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 12:04:11,780.780 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 12:04:11,783.783 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 12:04:11,939.939 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 12:04:11,988.988 INFO    ] time= 12/06/2026 12:04:11
[2026-06-12 12:04:12,009.009 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 12:04:12,015.015 INFO    ] Checking for existing commands in stream...
[2026-06-12 12:04:12,082.082 INFO    ] No existing commands found in stream
[2026-06-12 12:04:17,096.096 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 12:04:17,099.099 INFO    ] Waiting 0.75 seconds before fallback handling...
[2026-06-12 12:04:18,262.262 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 12:04:18,264.264 INFO    ] Checking for system updates...
[2026-06-12 12:04:18,286.286 INFO    ] 200
[2026-06-12 12:04:18,287.287 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:04:18,317.317 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 12:04:18,318.318 INFO    ] No update needed
[2026-06-12 12:04:18,320.320 INFO    ] Checking for camera pi updates...
[2026-06-12 12:04:18,339.339 INFO    ] 200
[2026-06-12 12:04:18,341.341 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:04:18,366.366 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 12:04:18,405.405 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 12:04:18,406.406 INFO    ] No camera update needed
[2026-06-12 12:04:18,408.408 INFO    ] Script finished. Safe exiting...
[2026-06-12 12:04:18,409.409 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 12:04:18,412.412 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 12:04:18,415.415 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 12:04:20,454.454 INFO    ] ================================================
[2026-06-12 12:04:20,469.469 INFO    ] Launching Daemon at Fri Jun 12 12:04:20 IST 2026
[2026-06-12 12:04:20,480.480 INFO    ] ================================================
[2026-06-12 12:04:20,828.828 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 12:04:20
[2026-06-12 12:04:21,139.139 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 12:04:21,269.269 INFO    ] Initializing speech engine...
[2026-06-12 12:04:21,272.272 INFO    ] 2026-06-12 12:04:21
[2026-06-12 12:04:21,493.493 INFO    ] 2026-06-12 12:04:21
[2026-06-12 12:04:21,521.521 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 12:04:21,709.709 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 12:04:21,719.719 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 12:04:21,842.842 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 12:04:21,907.907 INFO    ] time= 12/06/2026 12:04:21
[2026-06-12 12:04:21,941.941 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 12:04:21,948.948 INFO    ] Checking for existing commands in stream...
[2026-06-12 12:04:22,014.014 INFO    ] No existing commands found in stream
[2026-06-12 12:04:27,024.024 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 12:04:27,027.027 INFO    ] Waiting 2.64 seconds before fallback handling...
[2026-06-12 12:04:30,039.039 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 12:04:30,041.041 INFO    ] Checking for system updates...
[2026-06-12 12:04:30,062.062 INFO    ] 200
[2026-06-12 12:04:30,063.063 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:04:30,096.096 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 12:04:30,097.097 INFO    ] No update needed
[2026-06-12 12:04:30,099.099 INFO    ] Checking for camera pi updates...
[2026-06-12 12:04:30,120.120 INFO    ] 200
[2026-06-12 12:04:30,121.121 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:04:30,145.145 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 12:04:30,182.182 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 12:04:30,184.184 INFO    ] No camera update needed
[2026-06-12 12:04:30,185.185 INFO    ] Script finished. Safe exiting...
[2026-06-12 12:04:30,186.186 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 12:04:30,189.189 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 12:04:30,192.192 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 12:04:32,225.225 INFO    ] ================================================
[2026-06-12 12:04:32,235.235 INFO    ] Launching Daemon at Fri Jun 12 12:04:32 IST 2026
[2026-06-12 12:04:32,242.242 INFO    ] ================================================
[2026-06-12 12:04:32,610.610 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 12:04:32
[2026-06-12 12:04:32,921.921 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 12:04:33,054.054 INFO    ] Initializing speech engine...
[2026-06-12 12:04:33,059.059 INFO    ] 2026-06-12 12:04:33
[2026-06-12 12:04:33,287.287 INFO    ] 2026-06-12 12:04:33
[2026-06-12 12:04:33,318.318 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 12:04:33,518.518 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 12:04:33,521.521 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 12:04:33,662.662 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 12:04:33,718.718 INFO    ] time= 12/06/2026 12:04:33
[2026-06-12 12:04:33,746.746 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 12:04:33,768.768 INFO    ] Checking for existing commands in stream...
[2026-06-12 12:04:33,846.846 INFO    ] No existing commands found in stream
[2026-06-12 12:04:38,855.855 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 12:04:38,858.858 INFO    ] Waiting 1.28 seconds before fallback handling...
[2026-06-12 12:04:40,512.512 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 12:04:40,514.514 INFO    ] Checking for system updates...
[2026-06-12 12:04:40,535.535 INFO    ] 200
[2026-06-12 12:04:40,536.536 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:04:40,566.566 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 12:04:40,568.568 INFO    ] No update needed
[2026-06-12 12:04:40,569.569 INFO    ] Checking for camera pi updates...
[2026-06-12 12:04:40,590.590 INFO    ] 200
[2026-06-12 12:04:40,592.592 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:04:40,619.619 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 12:04:40,660.660 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 12:04:40,662.662 INFO    ] No camera update needed
[2026-06-12 12:04:40,663.663 INFO    ] Script finished. Safe exiting...
[2026-06-12 12:04:40,664.664 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 12:04:40,668.668 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 12:04:40,671.671 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 12:04:42,709.709 INFO    ] ================================================
[2026-06-12 12:04:42,728.728 INFO    ] Launching Daemon at Fri Jun 12 12:04:42 IST 2026
[2026-06-12 12:04:42,739.739 INFO    ] ================================================
[2026-06-12 12:04:43,070.070 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 12:04:43
[2026-06-12 12:04:43,403.403 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 12:04:43,554.554 INFO    ] Initializing speech engine...
[2026-06-12 12:04:43,559.559 INFO    ] 2026-06-12 12:04:43
[2026-06-12 12:04:43,770.770 INFO    ] 2026-06-12 12:04:43
[2026-06-12 12:04:43,799.799 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 12:04:43,983.983 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 12:04:43,987.987 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 12:04:44,116.116 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 12:04:44,172.172 INFO    ] time= 12/06/2026 12:04:44
[2026-06-12 12:04:44,207.207 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 12:04:44,217.217 INFO    ] Checking for existing commands in stream...
[2026-06-12 12:04:44,288.288 INFO    ] No existing commands found in stream
[2026-06-12 12:04:49,313.313 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 12:04:49,316.316 INFO    ] Waiting 3.72 seconds before fallback handling...
[2026-06-12 12:04:53,437.437 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 12:04:53,438.438 INFO    ] Checking for system updates...
[2026-06-12 12:04:53,459.459 INFO    ] 200
[2026-06-12 12:04:53,461.461 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:04:53,491.491 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 12:04:53,493.493 INFO    ] No update needed
[2026-06-12 12:04:53,494.494 INFO    ] Checking for camera pi updates...
[2026-06-12 12:04:53,515.515 INFO    ] 200
[2026-06-12 12:04:53,517.517 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:04:53,544.544 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 12:04:53,580.580 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 12:04:53,582.582 INFO    ] No camera update needed
[2026-06-12 12:04:53,583.583 INFO    ] Script finished. Safe exiting...
[2026-06-12 12:04:53,585.585 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 12:04:53,588.588 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 12:04:53,591.591 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 12:04:55,630.630 INFO    ] ================================================
[2026-06-12 12:04:55,646.646 INFO    ] Launching Daemon at Fri Jun 12 12:04:55 IST 2026
[2026-06-12 12:04:55,657.657 INFO    ] ================================================
[2026-06-12 12:04:55,985.985 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 12:04:55
[2026-06-12 12:04:56,297.297 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 12:04:56,435.435 INFO    ] Initializing speech engine...
[2026-06-12 12:04:56,445.445 INFO    ] 2026-06-12 12:04:56
[2026-06-12 12:04:56,649.649 INFO    ] 2026-06-12 12:04:56
[2026-06-12 12:04:56,678.678 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 12:04:56,861.861 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 12:04:56,864.864 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 12:04:56,994.994 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 12:04:57,060.060 INFO    ] time= 12/06/2026 12:04:57
[2026-06-12 12:04:57,092.092 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 12:04:57,094.094 INFO    ] Checking for existing commands in stream...
[2026-06-12 12:04:57,166.166 INFO    ] No existing commands found in stream
[2026-06-12 12:05:02,172.172 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 12:05:02,174.174 INFO    ] Waiting 1.56 seconds before fallback handling...
[2026-06-12 12:05:04,104.104 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 12:05:04,105.105 INFO    ] Checking for system updates...
[2026-06-12 12:05:04,126.126 INFO    ] 200
[2026-06-12 12:05:04,127.127 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:05:04,160.160 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 12:05:04,161.161 INFO    ] No update needed
[2026-06-12 12:05:04,163.163 INFO    ] Checking for camera pi updates...
[2026-06-12 12:05:04,183.183 INFO    ] 200
[2026-06-12 12:05:04,185.185 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:05:04,208.208 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 12:05:04,242.242 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 12:05:04,243.243 INFO    ] No camera update needed
[2026-06-12 12:05:04,245.245 INFO    ] Script finished. Safe exiting...
[2026-06-12 12:05:04,246.246 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 12:05:04,249.249 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 12:05:04,252.252 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 12:05:06,292.292 INFO    ] ================================================
[2026-06-12 12:05:06,307.307 INFO    ] Launching Daemon at Fri Jun 12 12:05:06 IST 2026
[2026-06-12 12:05:06,319.319 INFO    ] ================================================
[2026-06-12 12:05:06,658.658 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 12:05:06
[2026-06-12 12:05:06,991.991 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 12:05:07,122.122 INFO    ] Initializing speech engine...
[2026-06-12 12:05:07,130.130 INFO    ] 2026-06-12 12:05:07
[2026-06-12 12:05:07,344.344 INFO    ] 2026-06-12 12:05:07
[2026-06-12 12:05:07,373.373 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 12:05:07,559.559 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 12:05:07,567.567 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 12:05:07,711.711 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 12:05:07,768.768 INFO    ] time= 12/06/2026 12:05:07
[2026-06-12 12:05:07,792.792 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 12:05:07,794.794 INFO    ] Checking for existing commands in stream...
[2026-06-12 12:05:07,865.865 INFO    ] No existing commands found in stream
[2026-06-12 12:05:12,874.874 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 12:05:12,876.876 INFO    ] Waiting 0.63 seconds before fallback handling...
[2026-06-12 12:05:13,889.889 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 12:05:13,891.891 INFO    ] Checking for system updates...
[2026-06-12 12:05:13,911.911 INFO    ] 200
[2026-06-12 12:05:13,913.913 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:05:13,943.943 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 12:05:13,944.944 INFO    ] No update needed
[2026-06-12 12:05:13,945.945 INFO    ] Checking for camera pi updates...
[2026-06-12 12:05:13,966.966 INFO    ] 200
[2026-06-12 12:05:13,967.967 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:05:13,994.994 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 12:05:14,037.037 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 12:05:14,038.038 INFO    ] No camera update needed
[2026-06-12 12:05:14,040.040 INFO    ] Script finished. Safe exiting...
[2026-06-12 12:05:14,041.041 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 12:05:14,044.044 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 12:05:14,047.047 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 12:05:16,085.085 INFO    ] ================================================
[2026-06-12 12:05:16,101.101 INFO    ] Launching Daemon at Fri Jun 12 12:05:16 IST 2026
[2026-06-12 12:05:16,111.111 INFO    ] ================================================
[2026-06-12 12:05:16,492.492 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 12:05:16
[2026-06-12 12:05:16,826.826 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 12:05:16,977.977 INFO    ] Initializing speech engine...
[2026-06-12 12:05:16,983.983 INFO    ] 2026-06-12 12:05:16
[2026-06-12 12:05:17,189.189 INFO    ] 2026-06-12 12:05:17
[2026-06-12 12:05:17,218.218 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 12:05:17,401.401 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 12:05:17,411.411 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 12:05:17,541.541 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 12:05:17,605.605 INFO    ] time= 12/06/2026 12:05:17
[2026-06-12 12:05:17,632.632 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 12:05:17,639.639 INFO    ] Checking for existing commands in stream...
[2026-06-12 12:05:17,705.705 INFO    ] No existing commands found in stream
[2026-06-12 12:05:22,716.716 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 12:05:22,719.719 INFO    ] Waiting 2.67 seconds before fallback handling...
[2026-06-12 12:05:25,752.752 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 12:05:25,753.753 INFO    ] Checking for system updates...
[2026-06-12 12:05:25,774.774 INFO    ] 200
[2026-06-12 12:05:25,775.775 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:05:25,806.806 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 12:05:25,807.807 INFO    ] No update needed
[2026-06-12 12:05:25,808.808 INFO    ] Checking for camera pi updates...
[2026-06-12 12:05:25,827.827 INFO    ] 200
[2026-06-12 12:05:25,829.829 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:05:25,852.852 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 12:05:25,889.889 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 12:05:25,890.890 INFO    ] No camera update needed
[2026-06-12 12:05:25,891.891 INFO    ] Script finished. Safe exiting...
[2026-06-12 12:05:25,893.893 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 12:05:25,896.896 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 12:05:25,898.898 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 12:05:27,922.922 INFO    ] ================================================
[2026-06-12 12:05:27,932.932 INFO    ] Launching Daemon at Fri Jun 12 12:05:27 IST 2026
[2026-06-12 12:05:27,938.938 INFO    ] ================================================
[2026-06-12 12:05:28,267.267 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 12:05:28
[2026-06-12 12:05:28,600.600 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 12:05:28,743.743 INFO    ] Initializing speech engine...
[2026-06-12 12:05:28,746.746 INFO    ] 2026-06-12 12:05:28
[2026-06-12 12:05:28,978.978 INFO    ] 2026-06-12 12:05:28
[2026-06-12 12:05:29,008.008 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 12:05:29,139.139 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 12:05:29,197.197 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 12:05:29,347.347 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 12:05:29,410.410 INFO    ] time= 12/06/2026 12:05:29
[2026-06-12 12:05:29,450.450 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 12:05:29,452.452 INFO    ] Checking for existing commands in stream...
[2026-06-12 12:05:29,526.526 INFO    ] No existing commands found in stream
[2026-06-12 12:05:34,537.537 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 12:05:34,540.540 INFO    ] Waiting 0.23 seconds before fallback handling...
[2026-06-12 12:05:35,107.107 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 12:05:35,109.109 INFO    ] Checking for system updates...
[2026-06-12 12:05:35,130.130 INFO    ] 200
[2026-06-12 12:05:35,131.131 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:05:35,163.163 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 12:05:35,165.165 INFO    ] No update needed
[2026-06-12 12:05:35,166.166 INFO    ] Checking for camera pi updates...
[2026-06-12 12:05:35,186.186 INFO    ] 200
[2026-06-12 12:05:35,188.188 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:05:35,211.211 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 12:05:35,244.244 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 12:05:35,245.245 INFO    ] No camera update needed
[2026-06-12 12:05:35,246.246 INFO    ] Script finished. Safe exiting...
[2026-06-12 12:05:35,247.247 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 12:05:35,251.251 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 12:05:35,253.253 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 12:05:37,295.295 INFO    ] ================================================
[2026-06-12 12:05:37,310.310 INFO    ] Launching Daemon at Fri Jun 12 12:05:37 IST 2026
[2026-06-12 12:05:37,321.321 INFO    ] ================================================
[2026-06-12 12:05:37,675.675 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 12:05:37
[2026-06-12 12:05:37,988.988 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 12:05:38,119.119 INFO    ] Initializing speech engine...
[2026-06-12 12:05:38,123.123 INFO    ] 2026-06-12 12:05:38
[2026-06-12 12:05:38,342.342 INFO    ] 2026-06-12 12:05:38
[2026-06-12 12:05:38,371.371 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 12:05:38,565.565 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 12:05:38,569.569 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 12:05:38,712.712 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 12:05:38,764.764 INFO    ] time= 12/06/2026 12:05:38
[2026-06-12 12:05:38,792.792 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 12:05:38,816.816 INFO    ] Checking for existing commands in stream...
[2026-06-12 12:05:38,893.893 INFO    ] No existing commands found in stream
[2026-06-12 12:05:43,902.902 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 12:05:43,904.904 INFO    ] Waiting 3.41 seconds before fallback handling...
[2026-06-12 12:05:47,678.678 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 12:05:47,680.680 INFO    ] Checking for system updates...
[2026-06-12 12:05:47,702.702 INFO    ] 200
[2026-06-12 12:05:47,703.703 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:05:47,733.733 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 12:05:47,734.734 INFO    ] No update needed
[2026-06-12 12:05:47,736.736 INFO    ] Checking for camera pi updates...
[2026-06-12 12:05:47,756.756 INFO    ] 200
[2026-06-12 12:05:47,757.757 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:05:47,781.781 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 12:05:47,817.817 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 12:05:47,819.819 INFO    ] No camera update needed
[2026-06-12 12:05:47,820.820 INFO    ] Script finished. Safe exiting...
[2026-06-12 12:05:47,822.822 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 12:05:47,824.824 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 12:05:47,827.827 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 12:05:49,866.866 INFO    ] ================================================
[2026-06-12 12:05:49,881.881 INFO    ] Launching Daemon at Fri Jun 12 12:05:49 IST 2026
[2026-06-12 12:05:49,892.892 INFO    ] ================================================
[2026-06-12 12:05:50,215.215 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 12:05:50
[2026-06-12 12:05:50,533.533 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 12:05:50,671.671 INFO    ] Initializing speech engine...
[2026-06-12 12:05:50,681.681 INFO    ] 2026-06-12 12:05:50
[2026-06-12 12:05:50,884.884 INFO    ] 2026-06-12 12:05:50
[2026-06-12 12:05:50,913.913 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 12:05:51,095.095 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 12:05:51,105.105 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 12:05:51,235.235 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 12:05:51,299.299 INFO    ] time= 12/06/2026 12:05:51
[2026-06-12 12:05:51,326.326 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 12:05:51,333.333 INFO    ] Checking for existing commands in stream...
[2026-06-12 12:05:51,399.399 INFO    ] No existing commands found in stream
[2026-06-12 12:05:56,413.413 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 12:05:56,416.416 INFO    ] Waiting 0.33 seconds before fallback handling...
[2026-06-12 12:05:57,117.117 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 12:05:57,118.118 INFO    ] Checking for system updates...
[2026-06-12 12:05:57,139.139 INFO    ] 200
[2026-06-12 12:05:57,140.140 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:05:57,171.171 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 12:05:57,172.172 INFO    ] No update needed
[2026-06-12 12:05:57,174.174 INFO    ] Checking for camera pi updates...
[2026-06-12 12:05:57,194.194 INFO    ] 200
[2026-06-12 12:05:57,195.195 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:05:57,219.219 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 12:05:57,255.255 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 12:05:57,256.256 INFO    ] No camera update needed
[2026-06-12 12:05:57,257.257 INFO    ] Script finished. Safe exiting...
[2026-06-12 12:05:57,259.259 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 12:05:57,262.262 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 12:05:57,265.265 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 12:05:59,303.303 INFO    ] ================================================
[2026-06-12 12:05:59,318.318 INFO    ] Launching Daemon at Fri Jun 12 12:05:59 IST 2026
[2026-06-12 12:05:59,328.328 INFO    ] ================================================
[2026-06-12 12:05:59,702.702 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 12:05:59
[2026-06-12 12:06:00,019.019 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 12:06:00,158.158 INFO    ] Initializing speech engine...
[2026-06-12 12:06:00,166.166 INFO    ] 2026-06-12 12:06:00
[2026-06-12 12:06:00,373.373 INFO    ] 2026-06-12 12:06:00
[2026-06-12 12:06:00,400.400 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 12:06:00,584.584 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 12:06:00,593.593 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 12:06:00,721.721 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 12:06:00,786.786 INFO    ] time= 12/06/2026 12:06:00
[2026-06-12 12:06:00,812.812 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 12:06:00,819.819 INFO    ] Checking for existing commands in stream...
[2026-06-12 12:06:00,886.886 INFO    ] No existing commands found in stream
[2026-06-12 12:06:05,899.899 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 12:06:05,900.900 INFO    ] Waiting 0.54 seconds before fallback handling...
[2026-06-12 12:06:06,799.799 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 12:06:06,800.800 INFO    ] Checking for system updates...
[2026-06-12 12:06:06,821.821 INFO    ] 200
[2026-06-12 12:06:06,823.823 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:06:06,855.855 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 12:06:06,856.856 INFO    ] No update needed
[2026-06-12 12:06:06,857.857 INFO    ] Checking for camera pi updates...
[2026-06-12 12:06:06,878.878 INFO    ] 200
[2026-06-12 12:06:06,879.879 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:06:06,902.902 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 12:06:07,041.041 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 12:06:07,042.042 INFO    ] No camera update needed
[2026-06-12 12:06:07,043.043 INFO    ] Script finished. Safe exiting...
[2026-06-12 12:06:07,044.044 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 12:06:07,047.047 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 12:06:07,050.050 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 12:06:09,088.088 INFO    ] ================================================
[2026-06-12 12:06:09,103.103 INFO    ] Launching Daemon at Fri Jun 12 12:06:09 IST 2026
[2026-06-12 12:06:09,113.113 INFO    ] ================================================
[2026-06-12 12:06:09,477.477 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 12:06:09
[2026-06-12 12:06:09,788.788 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 12:06:09,923.923 INFO    ] Initializing speech engine...
[2026-06-12 12:06:09,936.936 INFO    ] 2026-06-12 12:06:09
[2026-06-12 12:06:10,152.152 INFO    ] 2026-06-12 12:06:10
[2026-06-12 12:06:10,182.182 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 12:06:10,379.379 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 12:06:10,388.388 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 12:06:10,519.519 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 12:06:10,566.566 INFO    ] time= 12/06/2026 12:06:10
[2026-06-12 12:06:10,603.603 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 12:06:10,626.626 INFO    ] Checking for existing commands in stream...
[2026-06-12 12:06:10,701.701 INFO    ] No existing commands found in stream
[2026-06-12 12:06:15,711.711 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 12:06:15,714.714 INFO    ] Waiting 2.89 seconds before fallback handling...
[2026-06-12 12:06:18,966.966 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 12:06:18,968.968 INFO    ] Checking for system updates...
[2026-06-12 12:06:18,988.988 INFO    ] 200
[2026-06-12 12:06:18,990.990 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:06:19,027.027 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 12:06:19,028.028 INFO    ] No update needed
[2026-06-12 12:06:19,029.029 INFO    ] Checking for camera pi updates...
[2026-06-12 12:06:19,049.049 INFO    ] 200
[2026-06-12 12:06:19,051.051 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:06:19,074.074 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 12:06:19,109.109 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 12:06:19,110.110 INFO    ] No camera update needed
[2026-06-12 12:06:19,112.112 INFO    ] Script finished. Safe exiting...
[2026-06-12 12:06:19,113.113 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 12:06:19,116.116 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 12:06:19,118.118 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 12:06:21,156.156 INFO    ] ================================================
[2026-06-12 12:06:21,171.171 INFO    ] Launching Daemon at Fri Jun 12 12:06:21 IST 2026
[2026-06-12 12:06:21,182.182 INFO    ] ================================================
[2026-06-12 12:06:21,514.514 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 12:06:21
[2026-06-12 12:06:21,826.826 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 12:06:21,960.960 INFO    ] Initializing speech engine...
[2026-06-12 12:06:21,968.968 INFO    ] 2026-06-12 12:06:21
[2026-06-12 12:06:22,193.193 INFO    ] 2026-06-12 12:06:22
[2026-06-12 12:06:22,223.223 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 12:06:22,419.419 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 12:06:22,423.423 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 12:06:22,563.563 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 12:06:22,619.619 INFO    ] time= 12/06/2026 12:06:22
[2026-06-12 12:06:22,658.658 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 12:06:22,670.670 INFO    ] Checking for existing commands in stream...
[2026-06-12 12:06:22,746.746 INFO    ] No existing commands found in stream
[2026-06-12 12:06:27,761.761 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 12:06:27,764.764 INFO    ] Waiting 3.09 seconds before fallback handling...
[2026-06-12 12:06:31,208.208 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 12:06:31,209.209 INFO    ] Checking for system updates...
[2026-06-12 12:06:31,230.230 INFO    ] 200
[2026-06-12 12:06:31,231.231 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:06:31,264.264 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 12:06:31,265.265 INFO    ] No update needed
[2026-06-12 12:06:31,266.266 INFO    ] Checking for camera pi updates...
[2026-06-12 12:06:31,287.287 INFO    ] 200
[2026-06-12 12:06:31,288.288 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:06:31,311.311 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 12:06:31,339.339 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 12:06:31,340.340 INFO    ] No camera update needed
[2026-06-12 12:06:31,341.341 INFO    ] Script finished. Safe exiting...
[2026-06-12 12:06:31,343.343 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 12:06:31,346.346 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 12:06:31,348.348 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 12:06:33,373.373 INFO    ] ================================================
[2026-06-12 12:06:33,381.381 INFO    ] Launching Daemon at Fri Jun 12 12:06:33 IST 2026
[2026-06-12 12:06:33,387.387 INFO    ] ================================================
[2026-06-12 12:06:33,739.739 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 12:06:33
[2026-06-12 12:06:34,055.055 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 12:06:34,193.193 INFO    ] Initializing speech engine...
[2026-06-12 12:06:34,203.203 INFO    ] 2026-06-12 12:06:34
[2026-06-12 12:06:34,408.408 INFO    ] 2026-06-12 12:06:34
[2026-06-12 12:06:34,437.437 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 12:06:34,620.620 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 12:06:34,628.628 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 12:06:34,783.783 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 12:06:34,826.826 INFO    ] time= 12/06/2026 12:06:34
[2026-06-12 12:06:34,847.847 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 12:06:34,854.854 INFO    ] Checking for existing commands in stream...
[2026-06-12 12:06:34,920.920 INFO    ] No existing commands found in stream
[2026-06-12 12:06:39,929.929 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 12:06:39,932.932 INFO    ] Waiting 2.14 seconds before fallback handling...
[2026-06-12 12:06:42,455.455 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 12:06:42,457.457 INFO    ] Checking for system updates...
[2026-06-12 12:06:42,478.478 INFO    ] 200
[2026-06-12 12:06:42,480.480 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:06:42,511.511 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 12:06:42,512.512 INFO    ] No update needed
[2026-06-12 12:06:42,513.513 INFO    ] Checking for camera pi updates...
[2026-06-12 12:06:42,534.534 INFO    ] 200
[2026-06-12 12:06:42,535.535 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:06:42,559.559 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 12:06:42,595.595 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 12:06:42,596.596 INFO    ] No camera update needed
[2026-06-12 12:06:42,597.597 INFO    ] Script finished. Safe exiting...
[2026-06-12 12:06:42,598.598 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 12:06:42,602.602 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 12:06:42,604.604 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 12:06:44,643.643 INFO    ] ================================================
[2026-06-12 12:06:44,658.658 INFO    ] Launching Daemon at Fri Jun 12 12:06:44 IST 2026
[2026-06-12 12:06:44,669.669 INFO    ] ================================================
[2026-06-12 12:06:45,038.038 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 12:06:45
[2026-06-12 12:06:45,355.355 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 12:06:45,507.507 INFO    ] Initializing speech engine...
[2026-06-12 12:06:45,512.512 INFO    ] 2026-06-12 12:06:45
[2026-06-12 12:06:45,726.726 INFO    ] 2026-06-12 12:06:45
[2026-06-12 12:06:45,757.757 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 12:06:45,899.899 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 12:06:45,946.946 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 12:06:46,076.076 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 12:06:46,137.137 INFO    ] time= 12/06/2026 12:06:46
[2026-06-12 12:06:46,160.160 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 12:06:46,175.175 INFO    ] Checking for existing commands in stream...
[2026-06-12 12:06:46,247.247 INFO    ] No existing commands found in stream
[2026-06-12 12:06:51,261.261 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 12:06:51,264.264 INFO    ] Waiting 3.61 seconds before fallback handling...
[2026-06-12 12:06:55,250.250 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 12:06:55,252.252 INFO    ] Checking for system updates...
[2026-06-12 12:06:55,273.273 INFO    ] 200
[2026-06-12 12:06:55,274.274 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:06:55,305.305 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 12:06:55,306.306 INFO    ] No update needed
[2026-06-12 12:06:55,307.307 INFO    ] Checking for camera pi updates...
[2026-06-12 12:06:55,327.327 INFO    ] 200
[2026-06-12 12:06:55,328.328 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:06:55,353.353 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 12:06:55,394.394 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 12:06:55,395.395 INFO    ] No camera update needed
[2026-06-12 12:06:55,397.397 INFO    ] Script finished. Safe exiting...
[2026-06-12 12:06:55,398.398 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 12:06:55,401.401 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 12:06:55,404.404 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 12:06:57,446.446 INFO    ] ================================================
[2026-06-12 12:06:57,462.462 INFO    ] Launching Daemon at Fri Jun 12 12:06:57 IST 2026
[2026-06-12 12:06:57,472.472 INFO    ] ================================================
[2026-06-12 12:06:57,793.793 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 12:06:57
[2026-06-12 12:06:58,106.106 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 12:06:58,248.248 INFO    ] Initializing speech engine...
[2026-06-12 12:06:58,253.253 INFO    ] 2026-06-12 12:06:58
[2026-06-12 12:06:58,459.459 INFO    ] 2026-06-12 12:06:58
[2026-06-12 12:06:58,487.487 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 12:06:58,612.612 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 12:06:58,655.655 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 12:06:58,808.808 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 12:06:58,870.870 INFO    ] time= 12/06/2026 12:06:58
[2026-06-12 12:06:58,900.900 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 12:06:58,910.910 INFO    ] Checking for existing commands in stream...
[2026-06-12 12:06:58,982.982 INFO    ] No existing commands found in stream
[2026-06-12 12:07:03,996.996 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 12:07:03,999.999 INFO    ] Waiting 0.55 seconds before fallback handling...
[2026-06-12 12:07:04,917.917 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 12:07:04,918.918 INFO    ] Checking for system updates...
[2026-06-12 12:07:04,938.938 INFO    ] 200
[2026-06-12 12:07:04,940.940 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:07:04,970.970 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 12:07:04,971.971 INFO    ] No update needed
[2026-06-12 12:07:04,973.973 INFO    ] Checking for camera pi updates...
[2026-06-12 12:07:04,993.993 INFO    ] 200
[2026-06-12 12:07:04,994.994 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:07:05,017.017 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 12:07:05,056.056 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 12:07:05,057.057 INFO    ] No camera update needed
[2026-06-12 12:07:05,059.059 INFO    ] Script finished. Safe exiting...
[2026-06-12 12:07:05,060.060 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 12:07:05,063.063 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 12:07:05,066.066 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 12:07:07,104.104 INFO    ] ================================================
[2026-06-12 12:07:07,119.119 INFO    ] Launching Daemon at Fri Jun 12 12:07:07 IST 2026
[2026-06-12 12:07:07,130.130 INFO    ] ================================================
[2026-06-12 12:07:07,487.487 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 12:07:07
[2026-06-12 12:07:07,798.798 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 12:07:07,940.940 INFO    ] Initializing speech engine...
[2026-06-12 12:07:07,945.945 INFO    ] 2026-06-12 12:07:07
[2026-06-12 12:07:08,146.146 INFO    ] 2026-06-12 12:07:08
[2026-06-12 12:07:08,174.174 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 12:07:08,296.296 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 12:07:08,359.359 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 12:07:08,496.496 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 12:07:08,563.563 INFO    ] time= 12/06/2026 12:07:08
[2026-06-12 12:07:08,587.587 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 12:07:08,593.593 INFO    ] Checking for existing commands in stream...
[2026-06-12 12:07:08,661.661 INFO    ] No existing commands found in stream
[2026-06-12 12:07:13,670.670 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 12:07:13,672.672 INFO    ] Waiting 1.99 seconds before fallback handling...
[2026-06-12 12:07:16,028.028 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 12:07:16,030.030 INFO    ] Checking for system updates...
[2026-06-12 12:07:16,051.051 INFO    ] 200
[2026-06-12 12:07:16,052.052 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:07:16,083.083 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 12:07:16,084.084 INFO    ] No update needed
[2026-06-12 12:07:16,085.085 INFO    ] Checking for camera pi updates...
[2026-06-12 12:07:16,106.106 INFO    ] 200
[2026-06-12 12:07:16,107.107 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:07:16,133.133 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 12:07:16,170.170 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 12:07:16,172.172 INFO    ] No camera update needed
[2026-06-12 12:07:16,173.173 INFO    ] Script finished. Safe exiting...
[2026-06-12 12:07:16,174.174 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 12:07:16,177.177 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 12:07:16,180.180 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 12:07:18,219.219 INFO    ] ================================================
[2026-06-12 12:07:18,234.234 INFO    ] Launching Daemon at Fri Jun 12 12:07:18 IST 2026
[2026-06-12 12:07:18,245.245 INFO    ] ================================================
[2026-06-12 12:07:18,600.600 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 12:07:18
[2026-06-12 12:07:18,916.916 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 12:07:19,049.049 INFO    ] Initializing speech engine...
[2026-06-12 12:07:19,054.054 INFO    ] 2026-06-12 12:07:19
[2026-06-12 12:07:19,279.279 INFO    ] 2026-06-12 12:07:19
[2026-06-12 12:07:19,310.310 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 12:07:19,485.485 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 12:07:19,487.487 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 12:07:19,642.642 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 12:07:19,700.700 INFO    ] time= 12/06/2026 12:07:19
[2026-06-12 12:07:19,734.734 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 12:07:19,739.739 INFO    ] Checking for existing commands in stream...
[2026-06-12 12:07:19,811.811 INFO    ] No existing commands found in stream
[2026-06-12 12:07:24,819.819 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 12:07:24,822.822 INFO    ] Waiting 2.14 seconds before fallback handling...
[2026-06-12 12:07:27,336.336 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 12:07:27,338.338 INFO    ] Checking for system updates...
[2026-06-12 12:07:27,359.359 INFO    ] 200
[2026-06-12 12:07:27,360.360 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:07:27,390.390 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 12:07:27,391.391 INFO    ] No update needed
[2026-06-12 12:07:27,393.393 INFO    ] Checking for camera pi updates...
[2026-06-12 12:07:27,413.413 INFO    ] 200
[2026-06-12 12:07:27,414.414 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:07:27,440.440 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 12:07:27,482.482 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 12:07:27,483.483 INFO    ] No camera update needed
[2026-06-12 12:07:27,485.485 INFO    ] Script finished. Safe exiting...
[2026-06-12 12:07:27,486.486 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 12:07:27,489.489 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 12:07:27,492.492 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 12:07:29,532.532 INFO    ] ================================================
[2026-06-12 12:07:29,547.547 INFO    ] Launching Daemon at Fri Jun 12 12:07:29 IST 2026
[2026-06-12 12:07:29,558.558 INFO    ] ================================================
[2026-06-12 12:07:29,934.934 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 12:07:29
[2026-06-12 12:07:30,244.244 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 12:07:30,378.378 INFO    ] Initializing speech engine...
[2026-06-12 12:07:30,390.390 INFO    ] 2026-06-12 12:07:30
[2026-06-12 12:07:30,598.598 INFO    ] 2026-06-12 12:07:30
[2026-06-12 12:07:30,627.627 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 12:07:30,813.813 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 12:07:30,816.816 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 12:07:30,954.954 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 12:07:31,018.018 INFO    ] time= 12/06/2026 12:07:30
[2026-06-12 12:07:31,043.043 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 12:07:31,048.048 INFO    ] Checking for existing commands in stream...
[2026-06-12 12:07:31,120.120 INFO    ] No existing commands found in stream
[2026-06-12 12:07:36,129.129 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 12:07:36,132.132 INFO    ] Waiting 1.97 seconds before fallback handling...
[2026-06-12 12:07:38,474.474 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 12:07:38,476.476 INFO    ] Checking for system updates...
[2026-06-12 12:07:38,498.498 INFO    ] 200
[2026-06-12 12:07:38,499.499 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:07:38,530.530 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 12:07:38,532.532 INFO    ] No update needed
[2026-06-12 12:07:38,533.533 INFO    ] Checking for camera pi updates...
[2026-06-12 12:07:38,553.553 INFO    ] 200
[2026-06-12 12:07:38,554.554 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:07:38,579.579 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 12:07:38,613.613 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 12:07:38,615.615 INFO    ] No camera update needed
[2026-06-12 12:07:38,616.616 INFO    ] Script finished. Safe exiting...
[2026-06-12 12:07:38,617.617 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 12:07:38,620.620 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 12:07:38,623.623 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 12:07:40,662.662 INFO    ] ================================================
[2026-06-12 12:07:40,677.677 INFO    ] Launching Daemon at Fri Jun 12 12:07:40 IST 2026
[2026-06-12 12:07:40,687.687 INFO    ] ================================================
[2026-06-12 12:07:41,014.014 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 12:07:41
[2026-06-12 12:07:41,326.326 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 12:07:41,471.471 INFO    ] Initializing speech engine...
[2026-06-12 12:07:41,477.477 INFO    ] 2026-06-12 12:07:41
[2026-06-12 12:07:41,688.688 INFO    ] 2026-06-12 12:07:41
[2026-06-12 12:07:41,719.719 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 12:07:41,911.911 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 12:07:41,916.916 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 12:07:42,058.058 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 12:07:42,122.122 INFO    ] time= 12/06/2026 12:07:42
[2026-06-12 12:07:42,151.151 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 12:07:42,157.157 INFO    ] Checking for existing commands in stream...
[2026-06-12 12:07:42,225.225 INFO    ] No existing commands found in stream
[2026-06-12 12:07:47,234.234 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 12:07:47,236.236 INFO    ] Waiting 2.82 seconds before fallback handling...
[2026-06-12 12:07:50,436.436 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 12:07:50,437.437 INFO    ] Checking for system updates...
[2026-06-12 12:07:50,459.459 INFO    ] 200
[2026-06-12 12:07:50,461.461 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:07:50,491.491 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 12:07:50,492.492 INFO    ] No update needed
[2026-06-12 12:07:50,494.494 INFO    ] Checking for camera pi updates...
[2026-06-12 12:07:50,513.513 INFO    ] 200
[2026-06-12 12:07:50,515.515 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:07:50,539.539 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 12:07:50,584.584 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 12:07:50,586.586 INFO    ] No camera update needed
[2026-06-12 12:07:50,587.587 INFO    ] Script finished. Safe exiting...
[2026-06-12 12:07:50,589.589 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 12:07:50,592.592 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 12:07:50,595.595 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 12:07:52,634.634 INFO    ] ================================================
[2026-06-12 12:07:52,649.649 INFO    ] Launching Daemon at Fri Jun 12 12:07:52 IST 2026
[2026-06-12 12:07:52,659.659 INFO    ] ================================================
[2026-06-12 12:07:52,991.991 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 12:07:52
[2026-06-12 12:07:53,307.307 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 12:07:53,451.451 INFO    ] Initializing speech engine...
[2026-06-12 12:07:53,456.456 INFO    ] 2026-06-12 12:07:53
[2026-06-12 12:07:53,659.659 INFO    ] 2026-06-12 12:07:53
[2026-06-12 12:07:53,688.688 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 12:07:53,872.872 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 12:07:53,880.880 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 12:07:54,007.007 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 12:07:54,074.074 INFO    ] time= 12/06/2026 12:07:54
[2026-06-12 12:07:54,102.102 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 12:07:54,108.108 INFO    ] Checking for existing commands in stream...
[2026-06-12 12:07:54,175.175 INFO    ] No existing commands found in stream
[2026-06-12 12:07:59,189.189 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 12:07:59,192.192 INFO    ] Waiting 2.71 seconds before fallback handling...
[2026-06-12 12:08:02,251.251 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 12:08:02,253.253 INFO    ] Checking for system updates...
[2026-06-12 12:08:02,274.274 INFO    ] 200
[2026-06-12 12:08:02,275.275 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:08:02,307.307 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 12:08:02,309.309 INFO    ] No update needed
[2026-06-12 12:08:02,310.310 INFO    ] Checking for camera pi updates...
[2026-06-12 12:08:02,332.332 INFO    ] 200
[2026-06-12 12:08:02,334.334 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:08:02,361.361 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 12:08:02,398.398 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 12:08:02,399.399 INFO    ] No camera update needed
[2026-06-12 12:08:02,401.401 INFO    ] Script finished. Safe exiting...
[2026-06-12 12:08:02,402.402 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 12:08:02,405.405 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 12:08:02,407.407 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 12:08:04,445.445 INFO    ] ================================================
[2026-06-12 12:08:04,461.461 INFO    ] Launching Daemon at Fri Jun 12 12:08:04 IST 2026
[2026-06-12 12:08:04,471.471 INFO    ] ================================================
[2026-06-12 12:08:04,834.834 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 12:08:04
[2026-06-12 12:08:05,151.151 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 12:08:05,282.282 INFO    ] Initializing speech engine...
[2026-06-12 12:08:05,285.285 INFO    ] 2026-06-12 12:08:05
[2026-06-12 12:08:05,518.518 INFO    ] 2026-06-12 12:08:05
[2026-06-12 12:08:05,547.547 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 12:08:05,731.731 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 12:08:05,740.740 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 12:08:05,868.868 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 12:08:05,933.933 INFO    ] time= 12/06/2026 12:08:05
[2026-06-12 12:08:05,960.960 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 12:08:05,966.966 INFO    ] Checking for existing commands in stream...
[2026-06-12 12:08:06,033.033 INFO    ] No existing commands found in stream
[2026-06-12 12:08:11,047.047 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 12:08:11,050.050 INFO    ] Waiting 2.27 seconds before fallback handling...
[2026-06-12 12:08:13,698.698 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 12:08:13,699.699 INFO    ] Checking for system updates...
[2026-06-12 12:08:13,720.720 INFO    ] 200
[2026-06-12 12:08:13,721.721 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:08:13,751.751 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 12:08:13,753.753 INFO    ] No update needed
[2026-06-12 12:08:13,754.754 INFO    ] Checking for camera pi updates...
[2026-06-12 12:08:13,774.774 INFO    ] 200
[2026-06-12 12:08:13,776.776 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:08:13,799.799 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 12:08:13,937.937 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 12:08:13,938.938 INFO    ] No camera update needed
[2026-06-12 12:08:13,940.940 INFO    ] Script finished. Safe exiting...
[2026-06-12 12:08:13,941.941 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 12:08:13,944.944 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 12:08:13,947.947 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 12:08:15,985.985 INFO    ] ================================================
[2026-06-12 12:08:16,000.000 INFO    ] Launching Daemon at Fri Jun 12 12:08:15 IST 2026
[2026-06-12 12:08:16,011.011 INFO    ] ================================================
[2026-06-12 12:08:16,339.339 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 12:08:16
[2026-06-12 12:08:16,656.656 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 12:08:16,801.801 INFO    ] Initializing speech engine...
[2026-06-12 12:08:16,806.806 INFO    ] 2026-06-12 12:08:16
[2026-06-12 12:08:17,010.010 INFO    ] 2026-06-12 12:08:16
[2026-06-12 12:08:17,039.039 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 12:08:17,162.162 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 12:08:17,225.225 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 12:08:17,364.364 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 12:08:17,423.423 INFO    ] time= 12/06/2026 12:08:17
[2026-06-12 12:08:17,455.455 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 12:08:17,462.462 INFO    ] Checking for existing commands in stream...
[2026-06-12 12:08:17,529.529 INFO    ] No existing commands found in stream
[2026-06-12 12:08:22,543.543 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 12:08:22,546.546 INFO    ] Waiting 3.11 seconds before fallback handling...
[2026-06-12 12:08:26,005.005 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 12:08:26,006.006 INFO    ] Checking for system updates...
[2026-06-12 12:08:26,028.028 INFO    ] 200
[2026-06-12 12:08:26,029.029 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:08:26,059.059 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 12:08:26,061.061 INFO    ] No update needed
[2026-06-12 12:08:26,062.062 INFO    ] Checking for camera pi updates...
[2026-06-12 12:08:26,082.082 INFO    ] 200
[2026-06-12 12:08:26,084.084 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:08:26,107.107 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 12:08:26,150.150 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 12:08:26,152.152 INFO    ] No camera update needed
[2026-06-12 12:08:26,153.153 INFO    ] Script finished. Safe exiting...
[2026-06-12 12:08:26,154.154 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 12:08:26,157.157 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 12:08:26,160.160 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 12:08:28,201.201 INFO    ] ================================================
[2026-06-12 12:08:28,216.216 INFO    ] Launching Daemon at Fri Jun 12 12:08:28 IST 2026
[2026-06-12 12:08:28,226.226 INFO    ] ================================================
[2026-06-12 12:08:28,559.559 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 12:08:28
[2026-06-12 12:08:28,870.870 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 12:08:29,000.000 INFO    ] Initializing speech engine...
[2026-06-12 12:08:29,013.013 INFO    ] 2026-06-12 12:08:29
[2026-06-12 12:08:29,218.218 INFO    ] 2026-06-12 12:08:29
[2026-06-12 12:08:29,248.248 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 12:08:29,371.371 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 12:08:29,428.428 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 12:08:29,570.570 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 12:08:29,632.632 INFO    ] time= 12/06/2026 12:08:29
[2026-06-12 12:08:29,664.664 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 12:08:29,669.669 INFO    ] Checking for existing commands in stream...
[2026-06-12 12:08:29,741.741 INFO    ] No existing commands found in stream
[2026-06-12 12:08:34,755.755 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 12:08:34,757.757 INFO    ] Waiting 2.96 seconds before fallback handling...
[2026-06-12 12:08:38,093.093 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 12:08:38,095.095 INFO    ] Checking for system updates...
[2026-06-12 12:08:38,115.115 INFO    ] 200
[2026-06-12 12:08:38,116.116 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:08:38,150.150 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 12:08:38,152.152 INFO    ] No update needed
[2026-06-12 12:08:38,153.153 INFO    ] Checking for camera pi updates...
[2026-06-12 12:08:38,173.173 INFO    ] 200
[2026-06-12 12:08:38,174.174 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:08:38,197.197 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 12:08:38,241.241 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 12:08:38,242.242 INFO    ] No camera update needed
[2026-06-12 12:08:38,243.243 INFO    ] Script finished. Safe exiting...
[2026-06-12 12:08:38,245.245 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 12:08:38,247.247 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 12:08:38,250.250 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 12:08:40,289.289 INFO    ] ================================================
[2026-06-12 12:08:40,305.305 INFO    ] Launching Daemon at Fri Jun 12 12:08:40 IST 2026
[2026-06-12 12:08:40,316.316 INFO    ] ================================================
[2026-06-12 12:08:40,678.678 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 12:08:40
[2026-06-12 12:08:40,989.989 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 12:08:41,119.119 INFO    ] Initializing speech engine...
[2026-06-12 12:08:41,123.123 INFO    ] 2026-06-12 12:08:41
[2026-06-12 12:08:41,338.338 INFO    ] 2026-06-12 12:08:41
[2026-06-12 12:08:41,366.366 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 12:08:41,549.549 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 12:08:41,559.559 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 12:08:41,685.685 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 12:08:41,752.752 INFO    ] time= 12/06/2026 12:08:41
[2026-06-12 12:08:41,779.779 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 12:08:41,786.786 INFO    ] Checking for existing commands in stream...
[2026-06-12 12:08:41,851.851 INFO    ] No existing commands found in stream
[2026-06-12 12:08:46,861.861 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 12:08:46,864.864 INFO    ] Waiting 0.11 seconds before fallback handling...
[2026-06-12 12:08:47,325.325 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 12:08:47,326.326 INFO    ] Checking for system updates...
[2026-06-12 12:08:47,347.347 INFO    ] 200
[2026-06-12 12:08:47,348.348 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:08:47,381.381 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 12:08:47,382.382 INFO    ] No update needed
[2026-06-12 12:08:47,383.383 INFO    ] Checking for camera pi updates...
[2026-06-12 12:08:47,402.402 INFO    ] 200
[2026-06-12 12:08:47,404.404 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:08:47,427.427 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 12:08:47,464.464 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 12:08:47,466.466 INFO    ] No camera update needed
[2026-06-12 12:08:47,467.467 INFO    ] Script finished. Safe exiting...
[2026-06-12 12:08:47,468.468 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 12:08:47,471.471 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 12:08:47,474.474 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 12:08:49,515.515 INFO    ] ================================================
[2026-06-12 12:08:49,530.530 INFO    ] Launching Daemon at Fri Jun 12 12:08:49 IST 2026
[2026-06-12 12:08:49,541.541 INFO    ] ================================================
[2026-06-12 12:08:49,871.871 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 12:08:49
[2026-06-12 12:08:50,187.187 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 12:08:50,334.334 INFO    ] Initializing speech engine...
[2026-06-12 12:08:50,340.340 INFO    ] 2026-06-12 12:08:50
[2026-06-12 12:08:50,559.559 INFO    ] 2026-06-12 12:08:50
[2026-06-12 12:08:50,590.590 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 12:08:50,785.785 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 12:08:50,789.789 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 12:08:50,917.917 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 12:08:50,918.918 INFO    ] time= 12/06/2026 12:08:50
[2026-06-12 12:08:50,920.920 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 12:08:50,944.944 INFO    ] Checking for existing commands in stream...
[2026-06-12 12:08:51,039.039 INFO    ] No existing commands found in stream
[2026-06-12 12:08:56,053.053 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 12:08:56,056.056 INFO    ] Waiting 1.73 seconds before fallback handling...
[2026-06-12 12:08:58,269.269 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 12:08:58,271.271 INFO    ] Checking for system updates...
[2026-06-12 12:08:58,293.293 INFO    ] 200
[2026-06-12 12:08:58,294.294 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:08:58,326.326 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 12:08:58,327.327 INFO    ] No update needed
[2026-06-12 12:08:58,329.329 INFO    ] Checking for camera pi updates...
[2026-06-12 12:08:58,349.349 INFO    ] 200
[2026-06-12 12:08:58,351.351 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:08:58,374.374 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 12:08:58,417.417 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 12:08:58,419.419 INFO    ] No camera update needed
[2026-06-12 12:08:58,420.420 INFO    ] Script finished. Safe exiting...
[2026-06-12 12:08:58,422.422 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 12:08:58,425.425 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 12:08:58,427.427 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 12:09:00,466.466 INFO    ] ================================================
[2026-06-12 12:09:00,481.481 INFO    ] Launching Daemon at Fri Jun 12 12:09:00 IST 2026
[2026-06-12 12:09:00,492.492 INFO    ] ================================================
[2026-06-12 12:09:00,823.823 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 12:09:00
[2026-06-12 12:09:01,141.141 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 12:09:01,274.274 INFO    ] Initializing speech engine...
[2026-06-12 12:09:01,286.286 INFO    ] 2026-06-12 12:09:01
[2026-06-12 12:09:01,497.497 INFO    ] 2026-06-12 12:09:01
[2026-06-12 12:09:01,535.535 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 12:09:01,702.702 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 12:09:01,704.704 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 12:09:01,822.822 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 12:09:01,824.824 INFO    ] time= 12/06/2026 12:09:01
[2026-06-12 12:09:01,826.826 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 12:09:01,828.828 INFO    ] Checking for existing commands in stream...
[2026-06-12 12:09:01,891.891 INFO    ] No existing commands found in stream
[2026-06-12 12:09:06,901.901 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 12:09:06,904.904 INFO    ] Waiting 2.10 seconds before fallback handling...
[2026-06-12 12:09:09,371.371 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 12:09:09,373.373 INFO    ] Checking for system updates...
[2026-06-12 12:09:09,393.393 INFO    ] 200
[2026-06-12 12:09:09,395.395 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:09:09,427.427 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 12:09:09,429.429 INFO    ] No update needed
[2026-06-12 12:09:09,430.430 INFO    ] Checking for camera pi updates...
[2026-06-12 12:09:09,451.451 INFO    ] 200
[2026-06-12 12:09:09,452.452 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:09:09,477.477 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 12:09:09,511.511 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 12:09:09,512.512 INFO    ] No camera update needed
[2026-06-12 12:09:09,513.513 INFO    ] Script finished. Safe exiting...
[2026-06-12 12:09:09,514.514 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 12:09:09,517.517 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 12:09:09,520.520 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 12:09:11,559.559 INFO    ] ================================================
[2026-06-12 12:09:11,574.574 INFO    ] Launching Daemon at Fri Jun 12 12:09:11 IST 2026
[2026-06-12 12:09:11,585.585 INFO    ] ================================================
[2026-06-12 12:09:11,947.947 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 12:09:11
[2026-06-12 12:09:12,260.260 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 12:09:12,391.391 INFO    ] Initializing speech engine...
[2026-06-12 12:09:12,398.398 INFO    ] 2026-06-12 12:09:12
[2026-06-12 12:09:12,612.612 INFO    ] 2026-06-12 12:09:12
[2026-06-12 12:09:12,641.641 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 12:09:12,764.764 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 12:09:12,828.828 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 12:09:12,968.968 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 12:09:13,035.035 INFO    ] time= 12/06/2026 12:09:12
[2026-06-12 12:09:13,059.059 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 12:09:13,061.061 INFO    ] Checking for existing commands in stream...
[2026-06-12 12:09:13,133.133 INFO    ] No existing commands found in stream
[2026-06-12 12:09:18,142.142 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 12:09:18,144.144 INFO    ] Waiting 1.92 seconds before fallback handling...
[2026-06-12 12:09:20,414.414 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 12:09:20,415.415 INFO    ] Checking for system updates...
[2026-06-12 12:09:20,436.436 INFO    ] 200
[2026-06-12 12:09:20,437.437 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:09:20,467.467 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 12:09:20,469.469 INFO    ] No update needed
[2026-06-12 12:09:20,470.470 INFO    ] Checking for camera pi updates...
[2026-06-12 12:09:20,490.490 INFO    ] 200
[2026-06-12 12:09:20,491.491 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:09:20,516.516 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 12:09:20,555.555 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 12:09:20,557.557 INFO    ] No camera update needed
[2026-06-12 12:09:20,558.558 INFO    ] Script finished. Safe exiting...
[2026-06-12 12:09:20,560.560 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 12:09:20,563.563 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 12:09:20,566.566 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 12:09:22,605.605 INFO    ] ================================================
[2026-06-12 12:09:22,620.620 INFO    ] Launching Daemon at Fri Jun 12 12:09:22 IST 2026
[2026-06-12 12:09:22,631.631 INFO    ] ================================================
[2026-06-12 12:09:22,983.983 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 12:09:22
[2026-06-12 12:09:23,297.297 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 12:09:23,444.444 INFO    ] Initializing speech engine...
[2026-06-12 12:09:23,448.448 INFO    ] 2026-06-12 12:09:23
[2026-06-12 12:09:23,664.664 INFO    ] 2026-06-12 12:09:23
[2026-06-12 12:09:23,696.696 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 12:09:23,827.827 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 12:09:23,874.874 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 12:09:24,036.036 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 12:09:24,102.102 INFO    ] time= 12/06/2026 12:09:24
[2026-06-12 12:09:24,126.126 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 12:09:24,133.133 INFO    ] Checking for existing commands in stream...
[2026-06-12 12:09:24,200.200 INFO    ] No existing commands found in stream
[2026-06-12 12:09:29,209.209 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 12:09:29,212.212 INFO    ] Waiting 3.98 seconds before fallback handling...
[2026-06-12 12:09:35,252.252 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 12:09:35,255.255 INFO    ] Checking for system updates...
[2026-06-12 12:09:35,291.291 INFO    ] 200
[2026-06-12 12:09:35,293.293 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:09:35,346.346 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 12:09:35,348.348 INFO    ] No update needed
[2026-06-12 12:09:35,351.351 INFO    ] Checking for camera pi updates...
[2026-06-12 12:09:35,387.387 INFO    ] 200
[2026-06-12 12:09:35,390.390 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:09:35,435.435 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 12:09:35,474.474 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 12:09:35,476.476 INFO    ] No camera update needed
[2026-06-12 12:09:35,477.477 INFO    ] Script finished. Safe exiting...
[2026-06-12 12:09:35,478.478 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 12:09:35,481.481 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 12:09:35,484.484 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 12:09:37,523.523 INFO    ] ================================================
[2026-06-12 12:09:37,538.538 INFO    ] Launching Daemon at Fri Jun 12 12:09:37 IST 2026
[2026-06-12 12:09:37,548.548 INFO    ] ================================================
[2026-06-12 12:09:37,887.887 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 12:09:37
[2026-06-12 12:09:38,197.197 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 12:09:38,339.339 INFO    ] Initializing speech engine...
[2026-06-12 12:09:38,344.344 INFO    ] 2026-06-12 12:09:38
[2026-06-12 12:09:38,547.547 INFO    ] 2026-06-12 12:09:38
[2026-06-12 12:09:38,575.575 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 12:09:38,697.697 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 12:09:38,760.760 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 12:09:38,896.896 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 12:09:38,964.964 INFO    ] time= 12/06/2026 12:09:38
[2026-06-12 12:09:38,988.988 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 12:09:38,994.994 INFO    ] Checking for existing commands in stream...
[2026-06-12 12:09:39,061.061 INFO    ] No existing commands found in stream
[2026-06-12 12:09:44,070.070 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 12:09:44,073.073 INFO    ] Waiting 0.07 seconds before fallback handling...
[2026-06-12 12:09:44,507.507 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 12:09:44,508.508 INFO    ] Checking for system updates...
[2026-06-12 12:09:44,529.529 INFO    ] 200
[2026-06-12 12:09:44,531.531 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:09:44,563.563 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 12:09:44,564.564 INFO    ] No update needed
[2026-06-12 12:09:44,565.565 INFO    ] Checking for camera pi updates...
[2026-06-12 12:09:44,585.585 INFO    ] 200
[2026-06-12 12:09:44,587.587 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:09:44,610.610 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 12:09:44,651.651 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 12:09:44,652.652 INFO    ] No camera update needed
[2026-06-12 12:09:44,654.654 INFO    ] Script finished. Safe exiting...
[2026-06-12 12:09:44,655.655 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 12:09:44,658.658 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 12:09:44,660.660 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 12:09:46,700.700 INFO    ] ================================================
[2026-06-12 12:09:46,715.715 INFO    ] Launching Daemon at Fri Jun 12 12:09:46 IST 2026
[2026-06-12 12:09:46,726.726 INFO    ] ================================================
[2026-06-12 12:09:47,056.056 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 12:09:47
[2026-06-12 12:09:47,367.367 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 12:09:47,504.504 INFO    ] Initializing speech engine...
[2026-06-12 12:09:47,512.512 INFO    ] 2026-06-12 12:09:47
[2026-06-12 12:09:47,716.716 INFO    ] 2026-06-12 12:09:47
[2026-06-12 12:09:47,745.745 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 12:09:47,866.866 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 12:09:47,928.928 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 12:09:48,065.065 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 12:09:48,129.129 INFO    ] time= 12/06/2026 12:09:48
[2026-06-12 12:09:48,156.156 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 12:09:48,162.162 INFO    ] Checking for existing commands in stream...
[2026-06-12 12:09:48,229.229 INFO    ] No existing commands found in stream
[2026-06-12 12:09:53,252.252 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 12:09:53,254.254 INFO    ] Waiting 2.97 seconds before fallback handling...
[2026-06-12 12:09:56,603.603 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 12:09:56,605.605 INFO    ] Checking for system updates...
[2026-06-12 12:09:56,626.626 INFO    ] 200
[2026-06-12 12:09:56,627.627 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:09:56,658.658 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 12:09:56,659.659 INFO    ] No update needed
[2026-06-12 12:09:56,661.661 INFO    ] Checking for camera pi updates...
[2026-06-12 12:09:56,681.681 INFO    ] 200
[2026-06-12 12:09:56,682.682 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:09:56,706.706 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 12:09:56,747.747 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 12:09:56,749.749 INFO    ] No camera update needed
[2026-06-12 12:09:56,750.750 INFO    ] Script finished. Safe exiting...
[2026-06-12 12:09:56,751.751 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 12:09:56,754.754 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 12:09:56,757.757 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 12:09:58,796.796 INFO    ] ================================================
[2026-06-12 12:09:58,812.812 INFO    ] Launching Daemon at Fri Jun 12 12:09:58 IST 2026
[2026-06-12 12:09:58,822.822 INFO    ] ================================================
[2026-06-12 12:09:59,172.172 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 12:09:59
[2026-06-12 12:09:59,487.487 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 12:09:59,620.620 INFO    ] Initializing speech engine...
[2026-06-12 12:09:59,632.632 INFO    ] 2026-06-12 12:09:59
[2026-06-12 12:09:59,838.838 INFO    ] 2026-06-12 12:09:59
[2026-06-12 12:09:59,867.867 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 12:10:00,038.038 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 12:10:00,053.053 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 12:10:00,185.185 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 12:10:00,237.237 INFO    ] time= 12/06/2026 12:10:00
[2026-06-12 12:10:00,275.275 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 12:10:00,281.281 INFO    ] Checking for existing commands in stream...
[2026-06-12 12:10:00,350.350 INFO    ] No existing commands found in stream
[2026-06-12 12:10:05,361.361 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 12:10:05,364.364 INFO    ] Waiting 2.92 seconds before fallback handling...
[2026-06-12 12:10:08,647.647 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 12:10:08,649.649 INFO    ] Checking for system updates...
[2026-06-12 12:10:08,670.670 INFO    ] 200
[2026-06-12 12:10:08,672.672 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:10:08,705.705 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 12:10:08,706.706 INFO    ] No update needed
[2026-06-12 12:10:08,707.707 INFO    ] Checking for camera pi updates...
[2026-06-12 12:10:08,728.728 INFO    ] 200
[2026-06-12 12:10:08,729.729 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:10:08,752.752 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 12:10:08,800.800 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 12:10:08,801.801 INFO    ] No camera update needed
[2026-06-12 12:10:08,803.803 INFO    ] Script finished. Safe exiting...
[2026-06-12 12:10:08,804.804 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 12:10:08,807.807 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 12:10:08,810.810 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 12:10:10,850.850 INFO    ] ================================================
[2026-06-12 12:10:10,866.866 INFO    ] Launching Daemon at Fri Jun 12 12:10:10 IST 2026
[2026-06-12 12:10:10,876.876 INFO    ] ================================================
[2026-06-12 12:10:11,211.211 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 12:10:11
[2026-06-12 12:10:11,527.527 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 12:10:11,666.666 INFO    ] Initializing speech engine...
[2026-06-12 12:10:11,676.676 INFO    ] 2026-06-12 12:10:11
[2026-06-12 12:10:11,879.879 INFO    ] 2026-06-12 12:10:11
[2026-06-12 12:10:11,908.908 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 12:10:12,030.030 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 12:10:12,093.093 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 12:10:12,232.232 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 12:10:12,296.296 INFO    ] time= 12/06/2026 12:10:12
[2026-06-12 12:10:12,324.324 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 12:10:12,330.330 INFO    ] Checking for existing commands in stream...
[2026-06-12 12:10:12,397.397 INFO    ] No existing commands found in stream
[2026-06-12 12:10:17,406.406 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 12:10:17,409.409 INFO    ] Waiting 2.39 seconds before fallback handling...
[2026-06-12 12:10:20,161.161 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 12:10:20,163.163 INFO    ] Checking for system updates...
[2026-06-12 12:10:20,183.183 INFO    ] 200
[2026-06-12 12:10:20,185.185 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:10:20,217.217 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 12:10:20,218.218 INFO    ] No update needed
[2026-06-12 12:10:20,219.219 INFO    ] Checking for camera pi updates...
[2026-06-12 12:10:20,240.240 INFO    ] 200
[2026-06-12 12:10:20,241.241 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:10:20,265.265 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 12:10:20,409.409 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 12:10:20,411.411 INFO    ] No camera update needed
[2026-06-12 12:10:20,412.412 INFO    ] Script finished. Safe exiting...
[2026-06-12 12:10:20,413.413 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 12:10:20,416.416 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 12:10:20,419.419 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 12:10:22,459.459 INFO    ] ================================================
[2026-06-12 12:10:22,474.474 INFO    ] Launching Daemon at Fri Jun 12 12:10:22 IST 2026
[2026-06-12 12:10:22,485.485 INFO    ] ================================================
[2026-06-12 12:10:22,807.807 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 12:10:22
[2026-06-12 12:10:23,119.119 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 12:10:23,249.249 INFO    ] Initializing speech engine...
[2026-06-12 12:10:23,254.254 INFO    ] 2026-06-12 12:10:23
[2026-06-12 12:10:23,471.471 INFO    ] 2026-06-12 12:10:23
[2026-06-12 12:10:23,498.498 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 12:10:23,683.683 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 12:10:23,687.687 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 12:10:23,828.828 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 12:10:23,889.889 INFO    ] time= 12/06/2026 12:10:23
[2026-06-12 12:10:23,913.913 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 12:10:23,919.919 INFO    ] Checking for existing commands in stream...
[2026-06-12 12:10:23,986.986 INFO    ] No existing commands found in stream
[2026-06-12 12:10:28,995.995 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 12:10:28,997.997 INFO    ] Waiting 0.99 seconds before fallback handling...
[2026-06-12 12:10:30,360.360 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 12:10:30,361.361 INFO    ] Checking for system updates...
[2026-06-12 12:10:30,383.383 INFO    ] 200
[2026-06-12 12:10:30,384.384 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:10:30,414.414 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 12:10:30,416.416 INFO    ] No update needed
[2026-06-12 12:10:30,417.417 INFO    ] Checking for camera pi updates...
[2026-06-12 12:10:30,436.436 INFO    ] 200
[2026-06-12 12:10:30,438.438 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:10:30,463.463 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 12:10:30,501.501 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 12:10:30,502.502 INFO    ] No camera update needed
[2026-06-12 12:10:30,504.504 INFO    ] Script finished. Safe exiting...
[2026-06-12 12:10:30,505.505 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 12:10:30,508.508 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 12:10:30,511.511 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 12:10:32,544.544 INFO    ] ================================================
[2026-06-12 12:10:32,552.552 INFO    ] Launching Daemon at Fri Jun 12 12:10:32 IST 2026
[2026-06-12 12:10:32,558.558 INFO    ] ================================================
[2026-06-12 12:10:32,912.912 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 12:10:32
[2026-06-12 12:10:33,223.223 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 12:10:33,353.353 INFO    ] Initializing speech engine...
[2026-06-12 12:10:33,357.357 INFO    ] 2026-06-12 12:10:33
[2026-06-12 12:10:33,574.574 INFO    ] 2026-06-12 12:10:33
[2026-06-12 12:10:33,603.603 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 12:10:33,726.726 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 12:10:33,769.769 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 12:10:33,923.923 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 12:10:33,974.974 INFO    ] time= 12/06/2026 12:10:33
[2026-06-12 12:10:34,020.020 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 12:10:34,026.026 INFO    ] Checking for existing commands in stream...
[2026-06-12 12:10:34,099.099 INFO    ] No existing commands found in stream
[2026-06-12 12:10:39,108.108 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 12:10:39,111.111 INFO    ] Waiting 2.78 seconds before fallback handling...
[2026-06-12 12:10:42,261.261 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 12:10:42,262.262 INFO    ] Checking for system updates...
[2026-06-12 12:10:42,284.284 INFO    ] 200
[2026-06-12 12:10:42,285.285 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:10:42,318.318 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 12:10:42,319.319 INFO    ] No update needed
[2026-06-12 12:10:42,320.320 INFO    ] Checking for camera pi updates...
[2026-06-12 12:10:42,341.341 INFO    ] 200
[2026-06-12 12:10:42,342.342 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:10:42,367.367 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 12:10:42,402.402 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 12:10:42,403.403 INFO    ] No camera update needed
[2026-06-12 12:10:42,404.404 INFO    ] Script finished. Safe exiting...
[2026-06-12 12:10:42,405.405 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 12:10:42,408.408 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 12:10:42,411.411 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 12:10:44,451.451 INFO    ] ================================================
[2026-06-12 12:10:44,466.466 INFO    ] Launching Daemon at Fri Jun 12 12:10:44 IST 2026
[2026-06-12 12:10:44,477.477 INFO    ] ================================================
[2026-06-12 12:10:44,807.807 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 12:10:44
[2026-06-12 12:10:45,118.118 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 12:10:45,262.262 INFO    ] Initializing speech engine...
[2026-06-12 12:10:45,267.267 INFO    ] 2026-06-12 12:10:45
[2026-06-12 12:10:45,470.470 INFO    ] 2026-06-12 12:10:45
[2026-06-12 12:10:45,499.499 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 12:10:45,682.682 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 12:10:45,685.685 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 12:10:45,821.821 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 12:10:45,887.887 INFO    ] time= 12/06/2026 12:10:45
[2026-06-12 12:10:45,911.911 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 12:10:45,917.917 INFO    ] Checking for existing commands in stream...
[2026-06-12 12:10:45,985.985 INFO    ] No existing commands found in stream
[2026-06-12 12:10:50,994.994 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 12:10:50,997.997 INFO    ] Waiting 2.62 seconds before fallback handling...
[2026-06-12 12:10:53,989.989 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 12:10:53,990.990 INFO    ] Checking for system updates...
[2026-06-12 12:10:54,011.011 INFO    ] 200
[2026-06-12 12:10:54,012.012 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:10:54,047.047 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 12:10:54,048.048 INFO    ] No update needed
[2026-06-12 12:10:54,049.049 INFO    ] Checking for camera pi updates...
[2026-06-12 12:10:54,068.068 INFO    ] 200
[2026-06-12 12:10:54,070.070 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:10:54,095.095 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 12:10:54,134.134 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 12:10:54,135.135 INFO    ] No camera update needed
[2026-06-12 12:10:54,136.136 INFO    ] Script finished. Safe exiting...
[2026-06-12 12:10:54,138.138 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 12:10:54,141.141 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 12:10:54,143.143 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 12:10:56,181.181 INFO    ] ================================================
[2026-06-12 12:10:56,197.197 INFO    ] Launching Daemon at Fri Jun 12 12:10:56 IST 2026
[2026-06-12 12:10:56,209.209 INFO    ] ================================================
[2026-06-12 12:10:56,547.547 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 12:10:56
[2026-06-12 12:10:56,863.863 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 12:10:56,993.993 INFO    ] Initializing speech engine...
[2026-06-12 12:10:56,998.998 INFO    ] 2026-06-12 12:10:56
[2026-06-12 12:10:57,192.192 INFO    ] 2026-06-12 12:10:57
[2026-06-12 12:10:57,203.203 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 12:10:57,373.373 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 12:10:57,411.411 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 12:10:57,568.568 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 12:10:57,625.625 INFO    ] time= 12/06/2026 12:10:57
[2026-06-12 12:10:57,659.659 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 12:10:57,669.669 INFO    ] Checking for existing commands in stream...
[2026-06-12 12:10:57,742.742 INFO    ] No existing commands found in stream
[2026-06-12 12:11:02,751.751 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 12:11:02,753.753 INFO    ] Waiting 1.50 seconds before fallback handling...
[2026-06-12 12:11:04,636.636 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 12:11:04,637.637 INFO    ] Checking for system updates...
[2026-06-12 12:11:04,658.658 INFO    ] 200
[2026-06-12 12:11:04,659.659 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:11:04,691.691 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 12:11:04,692.692 INFO    ] No update needed
[2026-06-12 12:11:04,693.693 INFO    ] Checking for camera pi updates...
[2026-06-12 12:11:04,714.714 INFO    ] 200
[2026-06-12 12:11:04,715.715 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:11:04,740.740 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 12:11:04,772.772 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 12:11:04,774.774 INFO    ] No camera update needed
[2026-06-12 12:11:04,775.775 INFO    ] Script finished. Safe exiting...
[2026-06-12 12:11:04,776.776 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 12:11:04,779.779 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 12:11:04,782.782 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 12:11:06,820.820 INFO    ] ================================================
[2026-06-12 12:11:06,835.835 INFO    ] Launching Daemon at Fri Jun 12 12:11:06 IST 2026
[2026-06-12 12:11:06,848.848 INFO    ] ================================================
[2026-06-12 12:11:07,196.196 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 12:11:07
[2026-06-12 12:11:07,508.508 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 12:11:07,651.651 INFO    ] Initializing speech engine...
[2026-06-12 12:11:07,655.655 INFO    ] 2026-06-12 12:11:07
[2026-06-12 12:11:07,858.858 INFO    ] 2026-06-12 12:11:07
[2026-06-12 12:11:07,887.887 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 12:11:08,070.070 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 12:11:08,079.079 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 12:11:08,210.210 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 12:11:08,269.269 INFO    ] time= 12/06/2026 12:11:08
[2026-06-12 12:11:08,301.301 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 12:11:08,303.303 INFO    ] Checking for existing commands in stream...
[2026-06-12 12:11:08,398.398 INFO    ] No existing commands found in stream
[2026-06-12 12:11:13,407.407 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 12:11:13,409.409 INFO    ] Waiting 1.81 seconds before fallback handling...
[2026-06-12 12:11:15,536.536 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 12:11:15,539.539 INFO    ] Checking for system updates...
[2026-06-12 12:11:15,576.576 INFO    ] 200
[2026-06-12 12:11:15,578.578 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:11:15,637.637 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 12:11:15,639.639 INFO    ] No update needed
[2026-06-12 12:11:15,641.641 INFO    ] Checking for camera pi updates...
[2026-06-12 12:11:15,660.660 INFO    ] 200
[2026-06-12 12:11:15,662.662 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:11:15,686.686 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 12:11:15,723.723 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 12:11:15,724.724 INFO    ] No camera update needed
[2026-06-12 12:11:15,726.726 INFO    ] Script finished. Safe exiting...
[2026-06-12 12:11:15,727.727 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 12:11:15,730.730 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 12:11:15,733.733 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 12:11:17,772.772 INFO    ] ================================================
[2026-06-12 12:11:17,789.789 INFO    ] Launching Daemon at Fri Jun 12 12:11:17 IST 2026
[2026-06-12 12:11:17,800.800 INFO    ] ================================================
[2026-06-12 12:11:18,150.150 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 12:11:18
[2026-06-12 12:11:18,463.463 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 12:11:18,594.594 INFO    ] Initializing speech engine...
[2026-06-12 12:11:18,607.607 INFO    ] 2026-06-12 12:11:18
[2026-06-12 12:11:18,815.815 INFO    ] 2026-06-12 12:11:18
[2026-06-12 12:11:18,844.844 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 12:11:19,030.030 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 12:11:19,040.040 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 12:11:19,172.172 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 12:11:19,240.240 INFO    ] time= 12/06/2026 12:11:19
[2026-06-12 12:11:19,264.264 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 12:11:19,270.270 INFO    ] Checking for existing commands in stream...
[2026-06-12 12:11:19,338.338 INFO    ] No existing commands found in stream
[2026-06-12 12:11:24,347.347 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 12:11:24,350.350 INFO    ] Waiting 0.52 seconds before fallback handling...
[2026-06-12 12:11:25,249.249 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 12:11:25,251.251 INFO    ] Checking for system updates...
[2026-06-12 12:11:25,273.273 INFO    ] 200
[2026-06-12 12:11:25,274.274 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:11:25,309.309 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 12:11:25,311.311 INFO    ] No update needed
[2026-06-12 12:11:25,313.313 INFO    ] Checking for camera pi updates...
[2026-06-12 12:11:25,334.334 INFO    ] 200
[2026-06-12 12:11:25,335.335 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:11:25,365.365 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 12:11:25,414.414 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 12:11:25,415.415 INFO    ] No camera update needed
[2026-06-12 12:11:25,416.416 INFO    ] Script finished. Safe exiting...
[2026-06-12 12:11:25,418.418 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 12:11:25,421.421 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 12:11:25,424.424 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 12:11:27,463.463 INFO    ] ================================================
[2026-06-12 12:11:27,478.478 INFO    ] Launching Daemon at Fri Jun 12 12:11:27 IST 2026
[2026-06-12 12:11:27,490.490 INFO    ] ================================================
[2026-06-12 12:11:27,850.850 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 12:11:27
[2026-06-12 12:11:28,162.162 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 12:11:28,292.292 INFO    ] Initializing speech engine...
[2026-06-12 12:11:28,295.295 INFO    ] 2026-06-12 12:11:28
[2026-06-12 12:11:28,511.511 INFO    ] 2026-06-12 12:11:28
[2026-06-12 12:11:28,540.540 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 12:11:28,722.722 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 12:11:28,725.725 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 12:11:28,854.854 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 12:11:28,909.909 INFO    ] time= 12/06/2026 12:11:28
[2026-06-12 12:11:28,951.951 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 12:11:28,953.953 INFO    ] Checking for existing commands in stream...
[2026-06-12 12:11:29,024.024 INFO    ] No existing commands found in stream
[2026-06-12 12:11:34,033.033 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 12:11:34,036.036 INFO    ] Waiting 0.15 seconds before fallback handling...
[2026-06-12 12:11:34,519.519 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 12:11:34,521.521 INFO    ] Checking for system updates...
[2026-06-12 12:11:34,542.542 INFO    ] 200
[2026-06-12 12:11:34,544.544 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:11:34,574.574 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 12:11:34,575.575 INFO    ] No update needed
[2026-06-12 12:11:34,577.577 INFO    ] Checking for camera pi updates...
[2026-06-12 12:11:34,597.597 INFO    ] 200
[2026-06-12 12:11:34,598.598 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:11:34,623.623 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 12:11:34,660.660 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 12:11:34,662.662 INFO    ] No camera update needed
[2026-06-12 12:11:34,663.663 INFO    ] Script finished. Safe exiting...
[2026-06-12 12:11:34,664.664 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 12:11:34,667.667 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 12:11:34,670.670 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 12:11:36,712.712 INFO    ] ================================================
[2026-06-12 12:11:36,728.728 INFO    ] Launching Daemon at Fri Jun 12 12:11:36 IST 2026
[2026-06-12 12:11:36,739.739 INFO    ] ================================================
[2026-06-12 12:11:37,097.097 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 12:11:37
[2026-06-12 12:11:37,433.433 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 12:11:37,584.584 INFO    ] Initializing speech engine...
[2026-06-12 12:11:37,590.590 INFO    ] 2026-06-12 12:11:37
[2026-06-12 12:11:37,797.797 INFO    ] 2026-06-12 12:11:37
[2026-06-12 12:11:37,826.826 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 12:11:38,011.011 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 12:11:38,014.014 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 12:11:38,152.152 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 12:11:38,211.211 INFO    ] time= 12/06/2026 12:11:38
[2026-06-12 12:11:38,243.243 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 12:11:38,249.249 INFO    ] Checking for existing commands in stream...
[2026-06-12 12:11:38,316.316 INFO    ] No existing commands found in stream
[2026-06-12 12:11:43,326.326 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 12:11:43,329.329 INFO    ] Waiting 3.58 seconds before fallback handling...
[2026-06-12 12:11:47,267.267 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 12:11:47,269.269 INFO    ] Checking for system updates...
[2026-06-12 12:11:47,290.290 INFO    ] 200
[2026-06-12 12:11:47,291.291 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:11:47,324.324 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 12:11:47,325.325 INFO    ] No update needed
[2026-06-12 12:11:47,326.326 INFO    ] Checking for camera pi updates...
[2026-06-12 12:11:47,346.346 INFO    ] 200
[2026-06-12 12:11:47,348.348 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:11:47,371.371 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 12:11:47,403.403 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 12:11:47,405.405 INFO    ] No camera update needed
[2026-06-12 12:11:47,406.406 INFO    ] Script finished. Safe exiting...
[2026-06-12 12:11:47,407.407 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 12:11:47,410.410 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 12:11:47,413.413 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 12:11:49,451.451 INFO    ] ================================================
[2026-06-12 12:11:49,467.467 INFO    ] Launching Daemon at Fri Jun 12 12:11:49 IST 2026
[2026-06-12 12:11:49,478.478 INFO    ] ================================================
[2026-06-12 12:11:49,846.846 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 12:11:49
[2026-06-12 12:11:50,162.162 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 12:11:50,299.299 INFO    ] Initializing speech engine...
[2026-06-12 12:11:50,308.308 INFO    ] 2026-06-12 12:11:50
[2026-06-12 12:11:50,512.512 INFO    ] 2026-06-12 12:11:50
[2026-06-12 12:11:50,541.541 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 12:11:50,722.722 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 12:11:50,725.725 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 12:11:50,866.866 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 12:11:50,927.927 INFO    ] time= 12/06/2026 12:11:50
[2026-06-12 12:11:50,951.951 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 12:11:50,957.957 INFO    ] Checking for existing commands in stream...
[2026-06-12 12:11:51,023.023 INFO    ] No existing commands found in stream
[2026-06-12 12:11:56,032.032 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 12:11:56,035.035 INFO    ] Waiting 1.87 seconds before fallback handling...
[2026-06-12 12:11:58,298.298 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 12:11:58,300.300 INFO    ] Checking for system updates...
[2026-06-12 12:11:58,321.321 INFO    ] 200
[2026-06-12 12:11:58,322.322 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:11:58,357.357 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 12:11:58,358.358 INFO    ] No update needed
[2026-06-12 12:11:58,359.359 INFO    ] Checking for camera pi updates...
[2026-06-12 12:11:58,378.378 INFO    ] 200
[2026-06-12 12:11:58,380.380 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:11:58,405.405 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 12:11:58,444.444 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 12:11:58,446.446 INFO    ] No camera update needed
[2026-06-12 12:11:58,447.447 INFO    ] Script finished. Safe exiting...
[2026-06-12 12:11:58,448.448 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 12:11:58,451.451 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 12:11:58,454.454 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 12:12:00,493.493 INFO    ] ================================================
[2026-06-12 12:12:00,515.515 INFO    ] Launching Daemon at Fri Jun 12 12:12:00 IST 2026
[2026-06-12 12:12:00,530.530 INFO    ] ================================================
[2026-06-12 12:12:00,897.897 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 12:12:00
[2026-06-12 12:12:01,210.210 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 12:12:01,407.407 INFO    ] Initializing speech engine...
[2026-06-12 12:12:01,415.415 INFO    ] 2026-06-12 12:12:01
[2026-06-12 12:12:01,695.695 INFO    ] 2026-06-12 12:12:01
[2026-06-12 12:12:01,734.734 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 12:12:01,924.924 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 12:12:01,984.984 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 12:12:02,179.179 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 12:12:02,233.233 INFO    ] time= 12/06/2026 12:12:02
[2026-06-12 12:12:02,271.271 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 12:12:02,273.273 INFO    ] Checking for existing commands in stream...
[2026-06-12 12:12:02,344.344 INFO    ] No existing commands found in stream
[2026-06-12 12:12:07,356.356 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 12:12:07,359.359 INFO    ] Waiting 2.19 seconds before fallback handling...
[2026-06-12 12:12:09,900.900 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 12:12:09,901.901 INFO    ] Checking for system updates...
[2026-06-12 12:12:09,922.922 INFO    ] 200
[2026-06-12 12:12:09,924.924 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:12:09,956.956 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 12:12:09,957.957 INFO    ] No update needed
[2026-06-12 12:12:09,959.959 INFO    ] Checking for camera pi updates...
[2026-06-12 12:12:09,979.979 INFO    ] 200
[2026-06-12 12:12:09,981.981 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:12:10,005.005 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 12:12:10,045.045 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 12:12:10,046.046 INFO    ] No camera update needed
[2026-06-12 12:12:10,047.047 INFO    ] Script finished. Safe exiting...
[2026-06-12 12:12:10,049.049 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 12:12:10,052.052 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 12:12:10,054.054 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 12:12:12,094.094 INFO    ] ================================================
[2026-06-12 12:12:12,109.109 INFO    ] Launching Daemon at Fri Jun 12 12:12:12 IST 2026
[2026-06-12 12:12:12,120.120 INFO    ] ================================================
[2026-06-12 12:12:12,472.472 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 12:12:12
[2026-06-12 12:12:12,784.784 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 12:12:12,918.918 INFO    ] Initializing speech engine...
[2026-06-12 12:12:12,926.926 INFO    ] 2026-06-12 12:12:12
[2026-06-12 12:12:13,150.150 INFO    ] 2026-06-12 12:12:13
[2026-06-12 12:12:13,181.181 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 12:12:13,327.327 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 12:12:13,379.379 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 12:12:13,527.527 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 12:12:13,581.581 INFO    ] time= 12/06/2026 12:12:13
[2026-06-12 12:12:13,625.625 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 12:12:13,627.627 INFO    ] Checking for existing commands in stream...
[2026-06-12 12:12:13,702.702 INFO    ] No existing commands found in stream
[2026-06-12 12:12:18,711.711 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 12:12:18,713.713 INFO    ] Waiting 1.95 seconds before fallback handling...
[2026-06-12 12:12:21,045.045 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 12:12:21,046.046 INFO    ] Checking for system updates...
[2026-06-12 12:12:21,067.067 INFO    ] 200
[2026-06-12 12:12:21,068.068 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:12:21,102.102 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 12:12:21,104.104 INFO    ] No update needed
[2026-06-12 12:12:21,105.105 INFO    ] Checking for camera pi updates...
[2026-06-12 12:12:21,127.127 INFO    ] 200
[2026-06-12 12:12:21,129.129 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:12:21,154.154 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 12:12:21,280.280 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 12:12:21,282.282 INFO    ] No camera update needed
[2026-06-12 12:12:21,283.283 INFO    ] Script finished. Safe exiting...
[2026-06-12 12:12:21,285.285 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 12:12:21,288.288 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 12:12:21,291.291 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 12:12:23,330.330 INFO    ] ================================================
[2026-06-12 12:12:23,345.345 INFO    ] Launching Daemon at Fri Jun 12 12:12:23 IST 2026
[2026-06-12 12:12:23,355.355 INFO    ] ================================================
[2026-06-12 12:12:23,725.725 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 12:12:23
[2026-06-12 12:12:24,041.041 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 12:12:24,172.172 INFO    ] Initializing speech engine...
[2026-06-12 12:12:24,176.176 INFO    ] 2026-06-12 12:12:24
[2026-06-12 12:12:24,393.393 INFO    ] 2026-06-12 12:12:24
[2026-06-12 12:12:24,422.422 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 12:12:24,604.604 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 12:12:24,608.608 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 12:12:24,740.740 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 12:12:24,802.802 INFO    ] time= 12/06/2026 12:12:24
[2026-06-12 12:12:24,834.834 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 12:12:24,840.840 INFO    ] Checking for existing commands in stream...
[2026-06-12 12:12:24,930.930 INFO    ] No existing commands found in stream
[2026-06-12 12:12:29,939.939 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 12:12:29,942.942 INFO    ] Waiting 0.13 seconds before fallback handling...
[2026-06-12 12:12:30,417.417 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 12:12:30,419.419 INFO    ] Checking for system updates...
[2026-06-12 12:12:30,441.441 INFO    ] 200
[2026-06-12 12:12:30,442.442 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:12:30,473.473 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 12:12:30,474.474 INFO    ] No update needed
[2026-06-12 12:12:30,475.475 INFO    ] Checking for camera pi updates...
[2026-06-12 12:12:30,496.496 INFO    ] 200
[2026-06-12 12:12:30,497.497 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:12:30,522.522 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 12:12:30,562.562 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 12:12:30,564.564 INFO    ] No camera update needed
[2026-06-12 12:12:30,565.565 INFO    ] Script finished. Safe exiting...
[2026-06-12 12:12:30,566.566 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 12:12:30,569.569 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 12:12:30,572.572 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 12:12:32,606.606 INFO    ] ================================================
[2026-06-12 12:12:32,621.621 INFO    ] Launching Daemon at Fri Jun 12 12:12:32 IST 2026
[2026-06-12 12:12:32,632.632 INFO    ] ================================================
[2026-06-12 12:12:32,951.951 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 12:12:32
[2026-06-12 12:12:33,263.263 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 12:12:33,393.393 INFO    ] Initializing speech engine...
[2026-06-12 12:12:33,397.397 INFO    ] 2026-06-12 12:12:33
[2026-06-12 12:12:33,613.613 INFO    ] 2026-06-12 12:12:33
[2026-06-12 12:12:33,641.641 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 12:12:33,764.764 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 12:12:33,822.822 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 12:12:33,962.962 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 12:12:34,019.019 INFO    ] time= 12/06/2026 12:12:33
[2026-06-12 12:12:34,053.053 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 12:12:34,063.063 INFO    ] Checking for existing commands in stream...
[2026-06-12 12:12:34,130.130 INFO    ] No existing commands found in stream
[2026-06-12 12:12:39,139.139 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 12:12:39,142.142 INFO    ] Waiting 2.94 seconds before fallback handling...
[2026-06-12 12:12:42,411.411 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 12:12:42,414.414 INFO    ] Checking for system updates...
[2026-06-12 12:12:42,451.451 INFO    ] 200
[2026-06-12 12:12:42,453.453 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:12:42,506.506 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 12:12:42,507.507 INFO    ] No update needed
[2026-06-12 12:12:42,509.509 INFO    ] Checking for camera pi updates...
[2026-06-12 12:12:42,529.529 INFO    ] 200
[2026-06-12 12:12:42,531.531 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:12:42,554.554 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 12:12:42,598.598 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 12:12:42,600.600 INFO    ] No camera update needed
[2026-06-12 12:12:42,601.601 INFO    ] Script finished. Safe exiting...
[2026-06-12 12:12:42,603.603 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 12:12:42,606.606 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 12:12:42,608.608 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 12:12:44,646.646 INFO    ] ================================================
[2026-06-12 12:12:44,661.661 INFO    ] Launching Daemon at Fri Jun 12 12:12:44 IST 2026
[2026-06-12 12:12:44,672.672 INFO    ] ================================================
[2026-06-12 12:12:45,012.012 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 12:12:45
[2026-06-12 12:12:45,323.323 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 12:12:45,455.455 INFO    ] Initializing speech engine...
[2026-06-12 12:12:45,465.465 INFO    ] 2026-06-12 12:12:45
[2026-06-12 12:12:45,684.684 INFO    ] 2026-06-12 12:12:45
[2026-06-12 12:12:45,962.962 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 12:12:46,175.175 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 12:12:46,178.178 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 12:12:46,308.308 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 12:12:46,311.311 INFO    ] time= 12/06/2026 12:12:46
[2026-06-12 12:12:46,315.315 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 12:12:46,318.318 INFO    ] Checking for existing commands in stream...
[2026-06-12 12:12:46,371.371 INFO    ] No existing commands found in stream
[2026-06-12 12:12:51,381.381 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 12:12:51,384.384 INFO    ] Waiting 2.58 seconds before fallback handling...
[2026-06-12 12:12:54,307.307 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 12:12:54,309.309 INFO    ] Checking for system updates...
[2026-06-12 12:12:54,329.329 INFO    ] 200
[2026-06-12 12:12:54,331.331 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:12:54,361.361 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 12:12:54,362.362 INFO    ] No update needed
[2026-06-12 12:12:54,363.363 INFO    ] Checking for camera pi updates...
[2026-06-12 12:12:54,386.386 INFO    ] 200
[2026-06-12 12:12:54,387.387 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:12:54,411.411 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 12:12:54,451.451 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 12:12:54,452.452 INFO    ] No camera update needed
[2026-06-12 12:12:54,453.453 INFO    ] Script finished. Safe exiting...
[2026-06-12 12:12:54,454.454 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 12:12:54,457.457 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 12:12:54,460.460 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 12:12:56,500.500 INFO    ] ================================================
[2026-06-12 12:12:56,515.515 INFO    ] Launching Daemon at Fri Jun 12 12:12:56 IST 2026
[2026-06-12 12:12:56,525.525 INFO    ] ================================================
[2026-06-12 12:12:56,883.883 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 12:12:56
[2026-06-12 12:12:57,193.193 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 12:12:57,322.322 INFO    ] Initializing speech engine...
[2026-06-12 12:12:57,326.326 INFO    ] 2026-06-12 12:12:57
[2026-06-12 12:12:57,542.542 INFO    ] 2026-06-12 12:12:57
[2026-06-12 12:12:57,570.570 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 12:12:57,692.692 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 12:12:57,755.755 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 12:12:57,889.889 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 12:12:57,951.951 INFO    ] time= 12/06/2026 12:12:57
[2026-06-12 12:12:57,983.983 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 12:12:57,985.985 INFO    ] Checking for existing commands in stream...
[2026-06-12 12:12:58,056.056 INFO    ] No existing commands found in stream
[2026-06-12 12:13:03,070.070 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 12:13:03,073.073 INFO    ] Waiting 1.20 seconds before fallback handling...
[2026-06-12 12:13:04,606.606 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 12:13:04,607.607 INFO    ] Checking for system updates...
[2026-06-12 12:13:04,627.627 INFO    ] 200
[2026-06-12 12:13:04,629.629 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:13:04,663.663 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 12:13:04,664.664 INFO    ] No update needed
[2026-06-12 12:13:04,665.665 INFO    ] Checking for camera pi updates...
[2026-06-12 12:13:04,686.686 INFO    ] 200
[2026-06-12 12:13:04,687.687 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:13:04,711.711 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 12:13:04,748.748 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 12:13:04,749.749 INFO    ] No camera update needed
[2026-06-12 12:13:04,750.750 INFO    ] Script finished. Safe exiting...
[2026-06-12 12:13:04,752.752 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 12:13:04,755.755 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 12:13:04,757.757 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 12:13:06,796.796 INFO    ] ================================================
[2026-06-12 12:13:06,811.811 INFO    ] Launching Daemon at Fri Jun 12 12:13:06 IST 2026
[2026-06-12 12:13:06,822.822 INFO    ] ================================================
[2026-06-12 12:13:07,167.167 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 12:13:07
[2026-06-12 12:13:07,501.501 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 12:13:07,645.645 INFO    ] Initializing speech engine...
[2026-06-12 12:13:07,655.655 INFO    ] 2026-06-12 12:13:07
[2026-06-12 12:13:07,862.862 INFO    ] 2026-06-12 12:13:07
[2026-06-12 12:13:07,891.891 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 12:13:08,073.073 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 12:13:08,083.083 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 12:13:08,217.217 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 12:13:08,279.279 INFO    ] time= 12/06/2026 12:13:08
[2026-06-12 12:13:08,303.303 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 12:13:08,309.309 INFO    ] Checking for existing commands in stream...
[2026-06-12 12:13:08,376.376 INFO    ] No existing commands found in stream
[2026-06-12 12:13:13,391.391 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 12:13:13,394.394 INFO    ] Waiting 3.88 seconds before fallback handling...
[2026-06-12 12:13:17,646.646 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 12:13:17,647.647 INFO    ] Checking for system updates...
[2026-06-12 12:13:17,669.669 INFO    ] 200
[2026-06-12 12:13:17,671.671 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:13:17,704.704 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 12:13:17,705.705 INFO    ] No update needed
[2026-06-12 12:13:17,706.706 INFO    ] Checking for camera pi updates...
[2026-06-12 12:13:17,729.729 INFO    ] 200
[2026-06-12 12:13:17,730.730 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:13:17,754.754 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 12:13:17,790.790 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 12:13:17,792.792 INFO    ] No camera update needed
[2026-06-12 12:13:17,793.793 INFO    ] Script finished. Safe exiting...
[2026-06-12 12:13:17,794.794 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 12:13:17,798.798 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 12:13:17,801.801 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 12:13:19,839.839 INFO    ] ================================================
[2026-06-12 12:13:19,854.854 INFO    ] Launching Daemon at Fri Jun 12 12:13:19 IST 2026
[2026-06-12 12:13:19,865.865 INFO    ] ================================================
[2026-06-12 12:13:20,196.196 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 12:13:20
[2026-06-12 12:13:20,507.507 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 12:13:20,643.643 INFO    ] Initializing speech engine...
[2026-06-12 12:13:20,651.651 INFO    ] 2026-06-12 12:13:20
[2026-06-12 12:13:20,858.858 INFO    ] 2026-06-12 12:13:20
[2026-06-12 12:13:20,887.887 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 12:13:21,074.074 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 12:13:21,083.083 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 12:13:21,226.226 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 12:13:21,284.284 INFO    ] time= 12/06/2026 12:13:21
[2026-06-12 12:13:21,308.308 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 12:13:21,314.314 INFO    ] Checking for existing commands in stream...
[2026-06-12 12:13:21,382.382 INFO    ] No existing commands found in stream
[2026-06-12 12:13:26,391.391 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 12:13:26,394.394 INFO    ] Waiting 1.62 seconds before fallback handling...
[2026-06-12 12:13:28,355.355 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 12:13:28,356.356 INFO    ] Checking for system updates...
[2026-06-12 12:13:28,377.377 INFO    ] 200
[2026-06-12 12:13:28,378.378 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:13:28,416.416 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 12:13:28,418.418 INFO    ] No update needed
[2026-06-12 12:13:28,419.419 INFO    ] Checking for camera pi updates...
[2026-06-12 12:13:28,438.438 INFO    ] 200
[2026-06-12 12:13:28,440.440 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:13:28,463.463 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 12:13:28,506.506 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 12:13:28,508.508 INFO    ] No camera update needed
[2026-06-12 12:13:28,509.509 INFO    ] Script finished. Safe exiting...
[2026-06-12 12:13:28,511.511 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 12:13:28,514.514 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 12:13:28,516.516 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 12:13:30,554.554 INFO    ] ================================================
[2026-06-12 12:13:30,569.569 INFO    ] Launching Daemon at Fri Jun 12 12:13:30 IST 2026
[2026-06-12 12:13:30,579.579 INFO    ] ================================================
[2026-06-12 12:13:30,926.926 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 12:13:30
[2026-06-12 12:13:31,253.253 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 12:13:31,391.391 INFO    ] Initializing speech engine...
[2026-06-12 12:13:31,395.395 INFO    ] 2026-06-12 12:13:31
[2026-06-12 12:13:31,616.616 INFO    ] 2026-06-12 12:13:31
[2026-06-12 12:13:31,646.646 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 12:13:31,795.795 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 12:13:31,797.797 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 12:13:31,900.900 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 12:13:31,962.962 INFO    ] time= 12/06/2026 12:13:31
[2026-06-12 12:13:32,018.018 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 12:13:32,075.075 INFO    ] Checking for existing commands in stream...
[2026-06-12 12:13:32,197.197 INFO    ] No existing commands found in stream
[2026-06-12 12:13:37,208.208 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 12:13:37,211.211 INFO    ] Waiting 3.92 seconds before fallback handling...
[2026-06-12 12:13:41,487.487 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 12:13:41,489.489 INFO    ] Checking for system updates...
[2026-06-12 12:13:41,513.513 INFO    ] 200
[2026-06-12 12:13:41,515.515 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:13:41,548.548 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 12:13:41,549.549 INFO    ] No update needed
[2026-06-12 12:13:41,551.551 INFO    ] Checking for camera pi updates...
[2026-06-12 12:13:41,572.572 INFO    ] 200
[2026-06-12 12:13:41,573.573 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:13:41,599.599 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 12:13:41,646.646 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 12:13:41,647.647 INFO    ] No camera update needed
[2026-06-12 12:13:41,648.648 INFO    ] Script finished. Safe exiting...
[2026-06-12 12:13:41,650.650 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 12:13:41,653.653 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 12:13:41,656.656 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 12:13:43,694.694 INFO    ] ================================================
[2026-06-12 12:13:43,709.709 INFO    ] Launching Daemon at Fri Jun 12 12:13:43 IST 2026
[2026-06-12 12:13:43,720.720 INFO    ] ================================================
[2026-06-12 12:13:44,066.066 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 12:13:44
[2026-06-12 12:13:44,375.375 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 12:13:44,513.513 INFO    ] Initializing speech engine...
[2026-06-12 12:13:44,523.523 INFO    ] 2026-06-12 12:13:44
[2026-06-12 12:13:44,727.727 INFO    ] 2026-06-12 12:13:44
[2026-06-12 12:13:44,756.756 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 12:13:44,943.943 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 12:13:44,951.951 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 12:13:45,075.075 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 12:13:45,131.131 INFO    ] time= 12/06/2026 12:13:45
[2026-06-12 12:13:45,166.166 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 12:13:45,176.176 INFO    ] Checking for existing commands in stream...
[2026-06-12 12:13:45,249.249 INFO    ] No existing commands found in stream
[2026-06-12 12:13:50,263.263 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 12:13:50,266.266 INFO    ] Waiting 3.14 seconds before fallback handling...
[2026-06-12 12:13:53,771.771 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 12:13:53,772.772 INFO    ] Checking for system updates...
[2026-06-12 12:13:53,794.794 INFO    ] 200
[2026-06-12 12:13:53,795.795 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:13:53,826.826 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 12:13:53,827.827 INFO    ] No update needed
[2026-06-12 12:13:53,828.828 INFO    ] Checking for camera pi updates...
[2026-06-12 12:13:53,848.848 INFO    ] 200
[2026-06-12 12:13:53,850.850 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:13:53,873.873 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 12:13:53,913.913 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 12:13:53,914.914 INFO    ] No camera update needed
[2026-06-12 12:13:53,915.915 INFO    ] Script finished. Safe exiting...
[2026-06-12 12:13:53,916.916 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 12:13:53,919.919 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 12:13:53,922.922 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 12:13:55,963.963 INFO    ] ================================================
[2026-06-12 12:13:55,978.978 INFO    ] Launching Daemon at Fri Jun 12 12:13:55 IST 2026
[2026-06-12 12:13:55,989.989 INFO    ] ================================================
[2026-06-12 12:13:56,354.354 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 12:13:56
[2026-06-12 12:13:56,666.666 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 12:13:56,803.803 INFO    ] Initializing speech engine...
[2026-06-12 12:13:56,811.811 INFO    ] 2026-06-12 12:13:56
[2026-06-12 12:13:57,037.037 INFO    ] 2026-06-12 12:13:57
[2026-06-12 12:13:57,065.065 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 12:13:57,188.188 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 12:13:57,236.236 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 12:13:57,383.383 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 12:13:57,444.444 INFO    ] time= 12/06/2026 12:13:57
[2026-06-12 12:13:57,481.481 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 12:13:57,483.483 INFO    ] Checking for existing commands in stream...
[2026-06-12 12:13:57,554.554 INFO    ] No existing commands found in stream
[2026-06-12 12:14:02,562.562 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 12:14:02,564.564 INFO    ] Waiting 2.40 seconds before fallback handling...
[2026-06-12 12:14:05,334.334 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 12:14:05,335.335 INFO    ] Checking for system updates...
[2026-06-12 12:14:05,357.357 INFO    ] 200
[2026-06-12 12:14:05,358.358 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:14:05,391.391 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 12:14:05,392.392 INFO    ] No update needed
[2026-06-12 12:14:05,394.394 INFO    ] Checking for camera pi updates...
[2026-06-12 12:14:05,413.413 INFO    ] 200
[2026-06-12 12:14:05,414.414 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:14:05,437.437 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 12:14:05,472.472 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 12:14:05,474.474 INFO    ] No camera update needed
[2026-06-12 12:14:05,475.475 INFO    ] Script finished. Safe exiting...
[2026-06-12 12:14:05,476.476 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 12:14:05,479.479 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 12:14:05,482.482 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 12:14:07,520.520 INFO    ] ================================================
[2026-06-12 12:14:07,535.535 INFO    ] Launching Daemon at Fri Jun 12 12:14:07 IST 2026
[2026-06-12 12:14:07,546.546 INFO    ] ================================================
[2026-06-12 12:14:07,900.900 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 12:14:07
[2026-06-12 12:14:08,240.240 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 12:14:08,387.387 INFO    ] Initializing speech engine...
[2026-06-12 12:14:08,396.396 INFO    ] 2026-06-12 12:14:08
[2026-06-12 12:14:08,608.608 INFO    ] 2026-06-12 12:14:08
[2026-06-12 12:14:08,638.638 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 12:14:08,774.774 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 12:14:08,828.828 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 12:14:08,975.975 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 12:14:09,038.038 INFO    ] time= 12/06/2026 12:14:08
[2026-06-12 12:14:09,063.063 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 12:14:09,069.069 INFO    ] Checking for existing commands in stream...
[2026-06-12 12:14:09,138.138 INFO    ] No existing commands found in stream
[2026-06-12 12:14:14,153.153 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 12:14:14,156.156 INFO    ] Waiting 1.96 seconds before fallback handling...
[2026-06-12 12:14:16,518.518 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 12:14:16,520.520 INFO    ] Checking for system updates...
[2026-06-12 12:14:16,542.542 INFO    ] 200
[2026-06-12 12:14:16,544.544 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:14:16,579.579 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 12:14:16,581.581 INFO    ] No update needed
[2026-06-12 12:14:16,582.582 INFO    ] Checking for camera pi updates...
[2026-06-12 12:14:16,605.605 INFO    ] 200
[2026-06-12 12:14:16,607.607 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:14:16,633.633 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 12:14:16,674.674 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 12:14:16,675.675 INFO    ] No camera update needed
[2026-06-12 12:14:16,677.677 INFO    ] Script finished. Safe exiting...
[2026-06-12 12:14:16,678.678 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 12:14:16,682.682 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 12:14:16,685.685 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 12:14:18,724.724 INFO    ] ================================================
[2026-06-12 12:14:18,739.739 INFO    ] Launching Daemon at Fri Jun 12 12:14:18 IST 2026
[2026-06-12 12:14:18,750.750 INFO    ] ================================================
[2026-06-12 12:14:19,078.078 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 12:14:19
[2026-06-12 12:14:19,390.390 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 12:14:19,521.521 INFO    ] Initializing speech engine...
[2026-06-12 12:14:19,525.525 INFO    ] 2026-06-12 12:14:19
[2026-06-12 12:14:19,743.743 INFO    ] 2026-06-12 12:14:19
[2026-06-12 12:14:19,772.772 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 12:14:19,956.956 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 12:14:19,966.966 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 12:14:20,097.097 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 12:14:20,161.161 INFO    ] time= 12/06/2026 12:14:20
[2026-06-12 12:14:20,189.189 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 12:14:20,195.195 INFO    ] Checking for existing commands in stream...
[2026-06-12 12:14:20,261.261 INFO    ] No existing commands found in stream
[2026-06-12 12:14:25,272.272 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 12:14:25,275.275 INFO    ] Waiting 0.47 seconds before fallback handling...
[2026-06-12 12:14:26,121.121 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 12:14:26,122.122 INFO    ] Checking for system updates...
[2026-06-12 12:14:26,144.144 INFO    ] 200
[2026-06-12 12:14:26,145.145 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:14:26,175.175 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 12:14:26,176.176 INFO    ] No update needed
[2026-06-12 12:14:26,177.177 INFO    ] Checking for camera pi updates...
[2026-06-12 12:14:26,199.199 INFO    ] 200
[2026-06-12 12:14:26,201.201 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:14:26,226.226 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 12:14:26,364.364 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 12:14:26,366.366 INFO    ] No camera update needed
[2026-06-12 12:14:26,367.367 INFO    ] Script finished. Safe exiting...
[2026-06-12 12:14:26,368.368 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 12:14:26,371.371 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 12:14:26,374.374 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 12:14:28,413.413 INFO    ] ================================================
[2026-06-12 12:14:28,429.429 INFO    ] Launching Daemon at Fri Jun 12 12:14:28 IST 2026
[2026-06-12 12:14:28,440.440 INFO    ] ================================================
[2026-06-12 12:14:28,774.774 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 12:14:28
[2026-06-12 12:14:29,092.092 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 12:14:29,226.226 INFO    ] Initializing speech engine...
[2026-06-12 12:14:29,231.231 INFO    ] 2026-06-12 12:14:29
[2026-06-12 12:14:29,455.455 INFO    ] 2026-06-12 12:14:29
[2026-06-12 12:14:29,484.484 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 12:14:29,666.666 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 12:14:29,670.670 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 12:14:29,798.798 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 12:14:29,849.849 INFO    ] time= 12/06/2026 12:14:29
[2026-06-12 12:14:29,888.888 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 12:14:29,898.898 INFO    ] Checking for existing commands in stream...
[2026-06-12 12:14:29,969.969 INFO    ] No existing commands found in stream
[2026-06-12 12:14:34,978.978 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 12:14:34,981.981 INFO    ] Waiting 2.40 seconds before fallback handling...
[2026-06-12 12:14:37,764.764 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 12:14:37,766.766 INFO    ] Checking for system updates...
[2026-06-12 12:14:37,787.787 INFO    ] 200
[2026-06-12 12:14:37,788.788 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:14:37,820.820 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 12:14:37,822.822 INFO    ] No update needed
[2026-06-12 12:14:37,823.823 INFO    ] Checking for camera pi updates...
[2026-06-12 12:14:37,843.843 INFO    ] 200
[2026-06-12 12:14:37,845.845 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:14:37,868.868 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 12:14:37,913.913 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 12:14:37,915.915 INFO    ] No camera update needed
[2026-06-12 12:14:37,916.916 INFO    ] Script finished. Safe exiting...
[2026-06-12 12:14:37,917.917 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 12:14:37,920.920 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 12:14:37,923.923 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 12:14:39,961.961 INFO    ] ================================================
[2026-06-12 12:14:39,977.977 INFO    ] Launching Daemon at Fri Jun 12 12:14:39 IST 2026
[2026-06-12 12:14:39,987.987 INFO    ] ================================================
[2026-06-12 12:14:40,337.337 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 12:14:40
[2026-06-12 12:14:40,672.672 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 12:14:40,817.817 INFO    ] Initializing speech engine...
[2026-06-12 12:14:40,826.826 INFO    ] 2026-06-12 12:14:40
[2026-06-12 12:14:41,039.039 INFO    ] 2026-06-12 12:14:41
[2026-06-12 12:14:41,068.068 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 12:14:41,256.256 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 12:14:41,265.265 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 12:14:41,409.409 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 12:14:41,468.468 INFO    ] time= 12/06/2026 12:14:41
[2026-06-12 12:14:41,490.490 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 12:14:41,497.497 INFO    ] Checking for existing commands in stream...
[2026-06-12 12:14:41,565.565 INFO    ] No existing commands found in stream
[2026-06-12 12:14:46,574.574 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 12:14:46,577.577 INFO    ] Waiting 0.56 seconds before fallback handling...
[2026-06-12 12:14:47,523.523 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 12:14:47,524.524 INFO    ] Checking for system updates...
[2026-06-12 12:14:47,545.545 INFO    ] 200
[2026-06-12 12:14:47,547.547 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:14:47,579.579 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 12:14:47,581.581 INFO    ] No update needed
[2026-06-12 12:14:47,583.583 INFO    ] Checking for camera pi updates...
[2026-06-12 12:14:47,604.604 INFO    ] 200
[2026-06-12 12:14:47,605.605 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:14:47,633.633 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 12:14:47,681.681 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 12:14:47,683.683 INFO    ] No camera update needed
[2026-06-12 12:14:47,684.684 INFO    ] Script finished. Safe exiting...
[2026-06-12 12:14:47,685.685 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 12:14:47,689.689 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 12:14:47,692.692 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 12:14:49,731.731 INFO    ] ================================================
[2026-06-12 12:14:49,746.746 INFO    ] Launching Daemon at Fri Jun 12 12:14:49 IST 2026
[2026-06-12 12:14:49,757.757 INFO    ] ================================================
[2026-06-12 12:14:50,081.081 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 12:14:50
[2026-06-12 12:14:50,392.392 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 12:14:50,524.524 INFO    ] Initializing speech engine...
[2026-06-12 12:14:50,529.529 INFO    ] 2026-06-12 12:14:50
[2026-06-12 12:14:50,756.756 INFO    ] 2026-06-12 12:14:50
[2026-06-12 12:14:50,786.786 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 12:14:50,982.982 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 12:14:50,986.986 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 12:14:51,125.125 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 12:14:51,176.176 INFO    ] time= 12/06/2026 12:14:51
[2026-06-12 12:14:51,225.225 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 12:14:51,231.231 INFO    ] Checking for existing commands in stream...
[2026-06-12 12:14:51,306.306 INFO    ] No existing commands found in stream
[2026-06-12 12:14:56,317.317 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 12:14:56,320.320 INFO    ] Waiting 2.49 seconds before fallback handling...
[2026-06-12 12:14:59,714.714 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 12:14:59,717.717 INFO    ] Checking for system updates...
[2026-06-12 12:14:59,758.758 INFO    ] 200
[2026-06-12 12:14:59,762.762 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:14:59,811.811 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 12:14:59,813.813 INFO    ] No update needed
[2026-06-12 12:14:59,815.815 INFO    ] Checking for camera pi updates...
[2026-06-12 12:14:59,835.835 INFO    ] 200
[2026-06-12 12:14:59,836.836 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:14:59,860.860 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 12:14:59,901.901 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 12:14:59,903.903 INFO    ] No camera update needed
[2026-06-12 12:14:59,904.904 INFO    ] Script finished. Safe exiting...
[2026-06-12 12:14:59,906.906 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 12:14:59,909.909 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 12:14:59,912.912 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 12:15:01,951.951 INFO    ] ================================================
[2026-06-12 12:15:01,973.973 INFO    ] Launching Daemon at Fri Jun 12 12:15:01 IST 2026
[2026-06-12 12:15:02,999.999 INFO    ] ================================================
[2026-06-12 12:15:02,681.681 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 12:15:02
[2026-06-12 12:15:03,055.055 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 12:15:03,236.236 INFO    ] Initializing speech engine...
[2026-06-12 12:15:03,252.252 INFO    ] 2026-06-12 12:15:03
[2026-06-12 12:15:03,444.444 INFO    ] 2026-06-12 12:15:03
[2026-06-12 12:15:03,496.496 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 12:15:03,643.643 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 12:15:03,687.687 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 12:15:03,847.847 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 12:15:03,911.911 INFO    ] time= 12/06/2026 12:15:03
[2026-06-12 12:15:03,938.938 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 12:15:03,945.945 INFO    ] Checking for existing commands in stream...
[2026-06-12 12:15:04,012.012 INFO    ] No existing commands found in stream
[2026-06-12 12:15:09,021.021 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 12:15:09,025.025 INFO    ] Waiting 2.62 seconds before fallback handling...
[2026-06-12 12:15:12,123.123 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 12:15:12,124.124 INFO    ] Checking for system updates...
[2026-06-12 12:15:12,145.145 INFO    ] 200
[2026-06-12 12:15:12,147.147 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:15:12,179.179 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 12:15:12,181.181 INFO    ] No update needed
[2026-06-12 12:15:12,182.182 INFO    ] Checking for camera pi updates...
[2026-06-12 12:15:12,205.205 INFO    ] 200
[2026-06-12 12:15:12,206.206 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:15:12,230.230 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 12:15:12,254.254 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 12:15:12,256.256 INFO    ] No camera update needed
[2026-06-12 12:15:12,257.257 INFO    ] Script finished. Safe exiting...
[2026-06-12 12:15:12,259.259 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 12:15:12,262.262 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 12:15:12,265.265 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 12:15:14,304.304 INFO    ] ================================================
[2026-06-12 12:15:14,319.319 INFO    ] Launching Daemon at Fri Jun 12 12:15:14 IST 2026
[2026-06-12 12:15:14,330.330 INFO    ] ================================================
[2026-06-12 12:15:14,656.656 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 12:15:14
[2026-06-12 12:15:14,968.968 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 12:15:15,101.101 INFO    ] Initializing speech engine...
[2026-06-12 12:15:15,106.106 INFO    ] 2026-06-12 12:15:15
[2026-06-12 12:15:15,333.333 INFO    ] 2026-06-12 12:15:15
[2026-06-12 12:15:15,364.364 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 12:15:15,498.498 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 12:15:15,537.537 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 12:15:15,707.707 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 12:15:15,728.728 INFO    ] time= 12/06/2026 12:15:15
[2026-06-12 12:15:15,789.789 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 12:15:15,815.815 INFO    ] Checking for existing commands in stream...
[2026-06-12 12:15:15,896.896 INFO    ] No existing commands found in stream
[2026-06-12 12:15:20,905.905 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 12:15:20,908.908 INFO    ] Waiting 0.57 seconds before fallback handling...
[2026-06-12 12:15:21,852.852 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 12:15:21,854.854 INFO    ] Checking for system updates...
[2026-06-12 12:15:21,875.875 INFO    ] 200
[2026-06-12 12:15:21,876.876 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:15:21,909.909 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 12:15:21,911.911 INFO    ] No update needed
[2026-06-12 12:15:21,912.912 INFO    ] Checking for camera pi updates...
[2026-06-12 12:15:21,932.932 INFO    ] 200
[2026-06-12 12:15:21,933.933 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:15:21,956.956 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 12:15:21,996.996 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 12:15:21,998.998 INFO    ] No camera update needed
[2026-06-12 12:15:21,999.999 INFO    ] Script finished. Safe exiting...
[2026-06-12 12:15:22,000.000 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 12:15:22,003.003 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 12:15:22,006.006 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 12:15:24,044.044 INFO    ] ================================================
[2026-06-12 12:15:24,059.059 INFO    ] Launching Daemon at Fri Jun 12 12:15:24 IST 2026
[2026-06-12 12:15:24,070.070 INFO    ] ================================================
[2026-06-12 12:15:24,422.422 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 12:15:24
[2026-06-12 12:15:24,760.760 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 12:15:24,913.913 INFO    ] Initializing speech engine...
[2026-06-12 12:15:24,917.917 INFO    ] 2026-06-12 12:15:24
[2026-06-12 12:15:25,124.124 INFO    ] 2026-06-12 12:15:25
[2026-06-12 12:15:25,152.152 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 12:15:25,336.336 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 12:15:25,346.346 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 12:15:25,473.473 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 12:15:25,544.544 INFO    ] time= 12/06/2026 12:15:25
[2026-06-12 12:15:25,568.568 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 12:15:25,575.575 INFO    ] Checking for existing commands in stream...
[2026-06-12 12:15:25,643.643 INFO    ] Found 1 existing command(s) in stream
[2026-06-12 12:15:25,650.650 INFO    ] Checking historical command: ID=1781246722973-0
[2026-06-12 12:15:25,670.670 INFO    ] process_and_cleanup_command: msg_id=1781246722973-0
[2026-06-12 12:15:25,672.672 INFO    ] is_command_expired: timestamp=2026-06-12T06:45:22.820Z, expiry=30s
[2026-06-12 12:15:25,782.782 INFO    ] Command removed from stream: 1781246722973-0. returning for processing...
[2026-06-12 12:15:25,785.785 INFO    ] ***** get_valid_command
[2026-06-12 12:15:25,788.788 INFO    ] {'timestamp': '2026-06-12T06:45:22.820Z', 'timeout': '10', 'command': 'start-order', 'source': 'webapp', 'data': '{"request_id":"start-order-1781246722819-ujbivcwzd","orderId":"TM09202301260612121432373","is_vending":false}'}
[2026-06-12 12:15:25,794.794 INFO    ] ***** Parsed command data: {'is_vending': False, 'orderId': 'TM09202301260612121432373', 'request_id': 'start-order-1781246722819-ujbivcwzd'}
[2026-06-12 12:15:25,798.798 INFO    ] Handling start order...
[2026-06-12 12:15:25,802.802 INFO    ] handle_start_order_command
[2026-06-12 12:15:25,809.809 INFO    ] _send_start_order_success: request_id=start-order-1781246722819-ujbivcwzd, order_id=TM09202301260612121432373
[2026-06-12 12:15:25,813.813 INFO    ] [_send_start_order_success] Adding message to stream: machine:TM09202301
[2026-06-12 12:15:25,870.870 INFO    ] [_send_start_order_success] Message added to stream with ID: 1781246726068-0
[2026-06-12 12:15:25,875.875 INFO    ] ✅ Start-order command succeeded - order locked, waiting for process-order command
[2026-06-12 12:15:25,879.879 INFO    ] Checking for system updates...
[2026-06-12 12:15:25,909.909 INFO    ] 200
[2026-06-12 12:15:25,914.914 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:15:25,990.990 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 12:15:25,994.994 INFO    ] No update needed
[2026-06-12 12:15:26,019.019 INFO    ] Checking for camera pi updates...
[2026-06-12 12:15:26,058.058 INFO    ] 200
[2026-06-12 12:15:26,060.060 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:15:26,087.087 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 12:15:26,151.151 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 12:15:26,154.154 INFO    ] No camera update needed
[2026-06-12 12:15:26,159.159 INFO    ] Script finished. Safe exiting...
[2026-06-12 12:15:26,163.163 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 12:15:26,171.171 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 12:15:26,178.178 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-06-12 12:15:26,184.184 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 12:15:28,217.217 INFO    ] ================================================
[2026-06-12 12:15:28,233.233 INFO    ] Launching Daemon at Fri Jun 12 12:15:28 IST 2026
[2026-06-12 12:15:28,243.243 INFO    ] ================================================
[2026-06-12 12:15:28,603.603 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 12:15:28
[2026-06-12 12:15:28,917.917 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 12:15:29,060.060 INFO    ] Initializing speech engine...
[2026-06-12 12:15:29,065.065 INFO    ] 2026-06-12 12:15:29
[2026-06-12 12:15:29,270.270 INFO    ] 2026-06-12 12:15:29
[2026-06-12 12:15:29,298.298 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 12:15:29,482.482 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 12:15:29,485.485 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 12:15:29,618.618 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 12:15:29,686.686 INFO    ] time= 12/06/2026 12:15:29
[2026-06-12 12:15:29,713.713 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 12:15:29,719.719 INFO    ] Checking for existing commands in stream...
[2026-06-12 12:15:29,788.788 INFO    ] Found 2 existing command(s) in stream
[2026-06-12 12:15:29,795.795 INFO    ] Checking historical command: ID=1781246726068-0
[2026-06-12 12:15:29,816.816 INFO    ] process_and_cleanup_command: msg_id=1781246726068-0
[2026-06-12 12:15:29,823.823 INFO    ] is_command_expired: timestamp=2026-06-12T06:45:25.810623Z, expiry=30s
[2026-06-12 12:15:29,928.928 INFO    ] Command removed from stream: 1781246726068-0. returning for processing...
[2026-06-12 12:15:29,931.931 INFO    ] ***** get_valid_command
[2026-06-12 12:15:29,934.934 INFO    ] {'imei': 'TM09202301', 'message': 'start-order success', 'status': 'success', 'timestamp': '2026-06-12T06:45:25.810623Z', 'message_type': 'command_response', 'metadata_order_id': 'TM09202301260612121432373', 'metadata_request_id': 'start-order-1781246722819-ujbivcwzd'}
[2026-06-12 12:15:29,938.938 INFO    ] Checking historical command: ID=1781246727305-0
[2026-06-12 12:15:29,942.942 INFO    ] process_and_cleanup_command: msg_id=1781246727305-0
[2026-06-12 12:15:29,945.945 INFO    ] is_command_expired: timestamp=2026-06-12T06:45:27.155Z, expiry=30s
[2026-06-12 12:15:30,035.035 INFO    ] Command removed from stream: 1781246727305-0. returning for processing...
[2026-06-12 12:15:30,039.039 INFO    ] ***** get_valid_command
[2026-06-12 12:15:30,043.043 INFO    ] {'command': 'process-order', 'timestamp': '2026-06-12T06:45:27.155Z', 'timeout': '60', 'source': 'webapp', 'data': '{"request_id":"process-order-1781246727155-xvx3ql1pb","orderId":"TM09202301260612121432373","is_vending":false,"accessCode":"43581009"}'}
[2026-06-12 12:15:30,047.047 INFO    ] ***** Parsed command data: {'accessCode': '43581009', 'is_vending': False, 'request_id': 'process-order-1781246727155-xvx3ql1pb', 'orderId': 'TM09202301260612121432373'}
[2026-06-12 12:15:30,051.051 INFO    ] Handling process order...
[2026-06-12 12:15:30,052.052 INFO    ] Processing process-order command...
[2026-06-12 12:15:30,058.058 INFO    ] 🔍 Lock file Order ID: TM09202301260612121432373, TS: 2026-06-12 12:15:25
[2026-06-12 12:15:30,065.065 INFO    ] ✅ Order lock valid for TM09202301260612121432373
[2026-06-12 12:15:30,067.067 INFO    ] Received access code in process-order, skipping PHP API call
[2026-06-12 12:15:30,125.125 INFO    ] processing access code 43581009 for order TM09202301260612121432373
[2026-06-12 12:15:30,128.128 INFO    ] 🔍 Lock file Order ID: TM09202301260612121432373, TS: 2026-06-12 12:15:25
[2026-06-12 12:15:30,154.154 INFO    ] ✅ Order lock valid for TM09202301260612121432373
[2026-06-12 12:15:30,171.171 INFO    ] 2026-06-12 12:15:30
[2026-06-12 12:15:30,260.260 INFO    ] 200
[2026-06-12 12:15:30,263.263 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:15:30,266.266 INFO    ] 43581009
[2026-06-12 12:15:30,271.271 INFO    ] 2026-06-12 12:15:30
[2026-06-12 12:15:30,274.274 INFO    ] session id :319478695
[2026-06-12 12:15:30,278.278 INFO    ] http://localhost:5000/v2/getOrderByAccessCode?access_code=43581009&imei=TM09202301&session_id=319478695
[2026-06-12 12:15:30,954.954 INFO    ] 200
[2026-06-12 12:15:30,955.955 INFO    ] {"rstatus": true, "msg": "Order Data", "status": true, "data": {"mobile": "8320812063", "order_id": "TM09202301260612121432373", "bill_amount": "20", "invoice_bill": "20", "access_code": "43581009", "proposed_sku_json": [{"door_id": "1", "name": "Modern kitchens Banana Chips 21gm", "tray_id": "11", "unit_price": 10, "offer_id": "", "qty": 2, "image_url": "https://images.tinymart.in/product/4500648-25.webp", "offer_desc": "", "sku_total": 20, "mrp": "10", "skuid": "4500648"}]}}
[2026-06-12 12:15:30,957.957 INFO    ] 20
[2026-06-12 12:15:30,958.958 INFO    ] TM09202301260612121432373
[2026-06-12 12:15:30,959.959 INFO    ] 8320812063
[2026-06-12 12:15:30,961.961 INFO    ] 2026-06-12 12:15:30
[2026-06-12 12:15:30,962.962 INFO    ] Door Opening for user mobile ending with  two zero six three 
[2026-06-12 12:15:30,963.963 INFO    ] Door Opening for user mobile ending with  two zero six three 
[2026-06-12 12:15:30,964.964 INFO    ] 781760084681f5d3989ea76bccdb10ba
[2026-06-12 12:15:30,966.966 INFO    ] 2026-06-12 12:15:30
[2026-06-12 12:15:30,967.967 INFO    ] creating audio file
[2026-06-12 12:15:31,003.003 INFO    ] Calling gTTS API with 60s timeout...
[2026-06-12 12:15:31,579.579 INFO    ] gTTS API call completed successfully
[2026-06-12 12:15:32,255.255 INFO    ] 2026-06-12 12:15:32
[2026-06-12 12:15:32,257.257 INFO    ] playing audio file
[2026-06-12 12:15:32,267.267 INFO    ] 2026-06-12 12:15:32
[2026-06-12 12:15:32,269.269 INFO    ] 2026-06-12 12:15:32
[2026-06-12 12:15:32,272.272 INFO    ] publish_status: order_id=TM09202301260612121432373
[2026-06-12 12:15:32,273.273 INFO    ] [publish_status] Adding message to stream: order:TM09202301260612121432373
[2026-06-12 12:15:32,360.360 INFO    ] [publish_status] Message added to stream with ID: 1781246732561-0
[2026-06-12 12:15:32,362.362 INFO    ] Published to order:TM09202301260612121432373: {'server_response': '{"msg": "Order Data", "data": {"proposed_sku_json": [{"tray_id": "11", "image_url": "https://images.tinymart.in/product/4500648-25.webp", "door_id": "1", "offer_desc": "", "skuid": "4500648", "mrp": "10", "qty": 2, "name": "Modern kitchens Banana Chips 21gm", "sku_total": 20, "offer_id": "", "unit_price": 10}], "mobile": "8320812063", "access_code": "43581009", "invoice_bill": "20", "order_id": "TM09202301260612121432373", "bill_amount": "20"}, "status": true, "rstatus": true}', 'order_id': 'TM09202301260612121432373', 'server_status': 'order-started', 'timestamp': '2026-06-12T06:45:32.270896Z'} (ID: 1781246732561-0)
[2026-06-12 12:15:32,726.726 INFO    ] {'server_response': {'msg': 'Order Data', 'data': {'proposed_sku_json': [{'tray_id': '11', 'image_url': 'https://images.tinymart.in/product/4500648-25.webp', 'door_id': '1', 'offer_desc': '', 'skuid': '4500648', 'mrp': '10', 'qty': 2, 'name': 'Modern kitchens Banana Chips 21gm', 'sku_total': 20, 'offer_id': '', 'unit_price': 10}], 'mobile': '8320812063', 'access_code': '43581009', 'invoice_bill': '20', 'order_id': 'TM09202301260612121432373', 'bill_amount': '20'}, 'status': True, 'rstatus': True}, 'order_id': 'TM09202301260612121432373', 'server_status': 'order-started'}
[2026-06-12 12:15:32,727.727 INFO    ] 200
[2026-06-12 12:15:32,730.730 INFO    ] {"data":{"server_response":{"msg":"Order Data","data":{"proposed_sku_json":[{"tray_id":"11","image_url":"https:\/\/images.tinymart.in\/product\/4500648-25.webp","door_id":"1","offer_desc":"","skuid":"4500648","mrp":"10","qty":2,"name":"Modern kitchens Banana Chips 21gm","sku_total":20,"offer_id":"","unit_price":10}],"mobile":"8320812063","access_code":"43581009","invoice_bill":"20","order_id":"TM09202301260612121432373","bill_amount":"20"},"status":true,"rstatus":true},"order_id":"TM09202301260612121432373","server_status":"order-started"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-12 12:15:32,732.732 INFO    ] {'response': {'code': 'ORDER_EXISTS', 'msg': 'order updated successfully', 'status': True, 'data': 'order updated successfully'}, 'data': {'server_response': {'data': {'proposed_sku_json': [{'offer_id': '', 'tray_id': '11', 'door_id': '1', 'offer_desc': '', 'skuid': '4500648', 'mrp': '10', 'image_url': 'https://images.tinymart.in/product/4500648-25.webp', 'name': 'Modern kitchens Banana Chips 21gm', 'sku_total': 20, 'qty': 2, 'unit_price': 10}], 'mobile': '8320812063', 'access_code': '43581009', 'invoice_bill': '20', 'order_id': 'TM09202301260612121432373', 'bill_amount': '20'}, 'rstatus': True, 'status': True, 'msg': 'Order Data'}, 'order_id': 'TM09202301260612121432373', 'server_status': 'order-started'}}
[2026-06-12 12:15:32,734.734 INFO    ] 2026-06-12 12:15:32
[2026-06-12 12:15:32,765.765 INFO    ] 200
[2026-06-12 12:15:32,766.766 INFO    ] True
[2026-06-12 12:15:32,872.872 INFO    ] 200
[2026-06-12 12:15:32,875.875 INFO    ] {"rstatus": false, "error": {"umessage": "In Progress", "code": 20001, "tmessage": "In Progress", "data": {}}, "SectionSKU": {"skus": [], "Header": "Thank you for bearing with us :)"}, "SectionMain": {"Header": "Processing Order"}, "SectionStatus": {"UI_Header": "", "Note": "", "Header": " Your order is under process  ", "SubHeader": "Please wait while we process your order"}, "voiceNote": "Please Wait", "status": "False"}
[2026-06-12 12:15:32,877.877 INFO    ] {'SectionSKU': {'Header': 'Thank you for bearing with us :)', 'skus': []}, 'status': 'False', 'error': {'umessage': 'In Progress', 'code': 20001, 'tmessage': 'In Progress', 'data': {}}, 'rstatus': False, 'SectionStatus': {'Header': ' Your order is under process  ', 'UI_Header': '', 'Note': '', 'SubHeader': 'Please wait while we process your order'}, 'SectionMain': {'Header': 'Processing Order'}, 'voiceNote': 'Please Wait'}
[2026-06-12 12:15:32,879.879 INFO    ] *** process_order ***
[2026-06-12 12:15:34,047.047 INFO    ] 200
[2026-06-12 12:15:34,049.049 INFO    ] {"rstatus": true, "SectionSKU": {"skus": [], "Header": "Thank you for bearing with us :)"}, "SectionMain": {"Header": "Processing Order"}, "SectionStatus": {"UI_Header": "", "Note": "", "Header": " Your order is under process  ", "SubHeader": "Please wait while we process your order"}, "delay": 0, "voiceNote": "Please Wait", "status": "True"}
[2026-06-12 12:15:34,051.051 INFO    ] {'delay': 0, 'SectionSKU': {'Header': 'Thank you for bearing with us :)', 'skus': []}, 'status': 'True', 'rstatus': True, 'SectionStatus': {'Header': ' Your order is under process  ', 'UI_Header': '', 'Note': '', 'SubHeader': 'Please wait while we process your order'}, 'SectionMain': {'Header': 'Processing Order'}, 'voiceNote': 'Please Wait'}
[2026-06-12 12:15:34,052.052 INFO    ] *** process_order ***
[2026-06-12 12:15:34,054.054 INFO    ] publish_status: order_id=TM09202301260612121432373
[2026-06-12 12:15:34,055.055 INFO    ] [publish_status] Adding message to stream: order:TM09202301260612121432373
[2026-06-12 12:15:34,157.157 INFO    ] [publish_status] Message added to stream with ID: 1781246734358-0
[2026-06-12 12:15:34,158.158 INFO    ] Published to order:TM09202301260612121432373: {'server_response': '{"delay": 0, "SectionSKU": {"Header": "Thank you for bearing with us :)", "skus": []}, "status": "True", "rstatus": true, "SectionStatus": {"Header": " Your order is under process  ", "UI_Header": "", "Note": "", "SubHeader": "You can pull the door now."}, "SectionMain": {"Header": "Processing Order"}, "voiceNote": "Door is open..."}', 'order_id': 'TM09202301260612121432373', 'server_status': 'doorOpened'} (ID: 1781246734358-0)
[2026-06-12 12:15:35,208.208 INFO    ] 2026-06-12 12:15:35
[2026-06-12 12:15:35,212.212 INFO    ] publish_status: order_id=TM09202301260612121432373
[2026-06-12 12:15:35,215.215 INFO    ] [publish_status] Adding message to stream: order:TM09202301260612121432373
[2026-06-12 12:15:35,286.286 INFO    ] [publish_status] Message added to stream with ID: 1781246735479-0
[2026-06-12 12:15:35,288.288 INFO    ] Published to order:TM09202301260612121432373: {'server_response': '{"delay": 0, "SectionSKU": {"Header": "Thank you for bearing with us :)", "skus": []}, "status": "True", "rstatus": true, "SectionStatus": {"Header": " Your order is under process  ", "UI_Header": "", "Note": "", "SubHeader": "Please wait while we process your order"}, "SectionMain": {"Header": "Processing Order"}, "voiceNote": "Please Wait"}', 'order_id': 'TM09202301260612121432373', 'server_status': 'processOrder', 'timestamp': '2026-06-12T06:45:35.209954Z'} (ID: 1781246735479-0)
[2026-06-12 12:15:35,407.407 INFO    ] {'server_response': {'delay': 0, 'SectionSKU': {'Header': 'Thank you for bearing with us :)', 'skus': []}, 'status': 'True', 'rstatus': True, 'SectionStatus': {'Header': ' Your order is under process  ', 'UI_Header': '', 'Note': '', 'SubHeader': 'Please wait while we process your order'}, 'SectionMain': {'Header': 'Processing Order'}, 'voiceNote': 'Please Wait'}, 'order_id': 'TM09202301260612121432373', 'server_status': 'processOrder'}
[2026-06-12 12:15:35,408.408 INFO    ] 200
[2026-06-12 12:15:35,410.410 INFO    ] {"data":{"server_response":{"delay":0,"SectionSKU":{"Header":"Thank you for bearing with us :)","skus":[]},"status":"true","rstatus":true,"SectionStatus":{"Header":" Your order is under process  ","UI_Header":"","Note":"","SubHeader":"Please wait while we process your order"},"SectionMain":{"Header":"Processing Order"},"voiceNote":"Please Wait"},"order_id":"TM09202301260612121432373","server_status":"processOrder"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-12 12:15:35,412.412 INFO    ] {'response': {'code': 'ORDER_EXISTS', 'msg': 'order updated successfully', 'status': True, 'data': 'order updated successfully'}, 'data': {'server_response': {'delay': 0, 'SectionSKU': {'Header': 'Thank you for bearing with us :)', 'skus': []}, 'status': 'true', 'rstatus': True, 'SectionStatus': {'Header': ' Your order is under process  ', 'UI_Header': '', 'Note': '', 'SubHeader': 'Please wait while we process your order'}, 'SectionMain': {'Header': 'Processing Order'}, 'voiceNote': 'Please Wait'}, 'order_id': 'TM09202301260612121432373', 'server_status': 'processOrder'}}
[2026-06-12 12:15:35,414.414 INFO    ] 2026-06-12 12:15:35
[2026-06-12 12:15:35,415.415 INFO    ] None
[2026-06-12 12:15:35,417.417 INFO    ] Opening Door now
[2026-06-12 12:15:35,419.419 INFO    ] Opening Door now
[2026-06-12 12:15:35,421.421 INFO    ] 08e5d1063504bf393c26f0bfa436e9f9
[2026-06-12 12:15:35,423.423 INFO    ] 2026-06-12 12:15:35
[2026-06-12 12:15:35,424.424 INFO    ] playing audio file
[2026-06-12 12:15:35,435.435 INFO    ] 2026-06-12 12:15:35
[2026-06-12 12:15:35,437.437 INFO    ] 2026-06-12 12:15:35
[2026-06-12 12:15:38,474.474 INFO    ] 200
[2026-06-12 12:15:38,476.476 INFO    ] {"rstatus": false, "error": {"umessage": "In Progress", "code": 20001, "tmessage": "In Progress", "data": {}}, "SectionSKU": {"skus": [{"name": "Modern kitchens Banana Chips 21gm", "qty": 2}], "Header": "Pick the below items from the door"}, "SectionMain": {"Header": "Door Open"}, "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"}, "voiceNote": "Door 1 is open now", "status": "False"}
[2026-06-12 12:15:38,478.478 INFO    ] {'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'Modern kitchens Banana Chips 21gm', 'qty': 2}]}, 'status': 'False', 'error': {'umessage': 'In Progress', 'code': 20001, 'tmessage': 'In Progress', 'data': {}}, 'rstatus': False, 'SectionStatus': {'Header': 'Please Close Door 1', 'UI_Header': 'DOOR 1\nIS \nOPEN \nNOW', 'Note': 'Please Close the door after picking up products', 'SubHeader': 'Please Pick the Products and close the door'}, 'SectionMain': {'Header': 'Door Open'}, 'voiceNote': 'Door 1 is open now'}
[2026-06-12 12:15:41,524.524 INFO    ] 200
[2026-06-12 12:15:41,525.525 INFO    ] {"rstatus": false, "error": {"umessage": "In Progress", "code": 20001, "tmessage": "In Progress", "data": {}}, "SectionSKU": {"skus": [{"name": "Modern kitchens Banana Chips 21gm", "qty": 2}], "Header": "Pick the below items from the door"}, "SectionMain": {"Header": "Door Open"}, "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"}, "voiceNote": "Please close door 1", "status": "False"}
[2026-06-12 12:15:41,527.527 INFO    ] {'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'Modern kitchens Banana Chips 21gm', 'qty': 2}]}, 'status': 'False', 'error': {'umessage': 'In Progress', 'code': 20001, 'tmessage': 'In Progress', 'data': {}}, 'rstatus': False, 'SectionStatus': {'Header': 'Please Close Door 1', 'UI_Header': 'DOOR 1\nIS \nOPEN \nNOW', 'Note': 'Please Close the door after picking up products', 'SubHeader': 'Please Pick the Products and close the door'}, 'SectionMain': {'Header': 'Door Open'}, 'voiceNote': 'Please close door 1'}
[2026-06-12 12:15:44,562.562 INFO    ] 200
[2026-06-12 12:15:44,563.563 INFO    ] {"rstatus": false, "error": {"umessage": "In Progress", "code": 20001, "tmessage": "In Progress", "data": {}}, "SectionSKU": {"skus": [{"name": "Modern kitchens Banana Chips 21gm", "qty": 2}], "Header": "Pick the below items from the door"}, "SectionMain": {"Header": "Door Open"}, "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"}, "voiceNote": "Please close door 1", "status": "False"}
[2026-06-12 12:15:44,566.566 INFO    ] Please close door 1
[2026-06-12 12:15:44,567.567 INFO    ] Please close door 1
[2026-06-12 12:15:44,569.569 INFO    ] 787c302d53ab591e55c034b99c7aadd2
[2026-06-12 12:15:44,571.571 INFO    ] 2026-06-12 12:15:44
[2026-06-12 12:15:44,573.573 INFO    ] playing audio file
[2026-06-12 12:15:44,584.584 INFO    ] 2026-06-12 12:15:44
[2026-06-12 12:15:44,586.586 INFO    ] publish_status: order_id=TM09202301260612121432373
[2026-06-12 12:15:44,588.588 INFO    ] [publish_status] Adding message to stream: order:TM09202301260612121432373
[2026-06-12 12:15:44,671.671 INFO    ] [publish_status] Message added to stream with ID: 1781246744871-0
[2026-06-12 12:15:44,673.673 INFO    ] Published to order:TM09202301260612121432373: {'server_response': '{"SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"name": "Modern kitchens Banana Chips 21gm", "qty": 2}]}, "status": "False", "error": {"umessage": "In Progress", "code": 20001, "tmessage": "In Progress", "data": {}}, "rstatus": false, "SectionStatus": {"Header": "Please Close Door 1", "UI_Header": "DOOR 1\\nIS \\nOPEN \\nNOW", "Note": "Please Close the door after picking up products", "SubHeader": "Please Pick the Products and close the door"}, "SectionMain": {"Header": "Door Open"}, "voiceNote": "Please close door 1"}', 'order_id': 'TM09202301260612121432373', 'server_status': 'OrderStatus', 'timestamp': '2026-06-12T06:45:44.585082Z'} (ID: 1781246744871-0)
[2026-06-12 12:15:45,102.102 INFO    ] {'server_response': {'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'Modern kitchens Banana Chips 21gm', 'qty': 2}]}, 'status': 'False', 'error': {'umessage': 'In Progress', 'code': 20001, 'tmessage': 'In Progress', 'data': {}}, 'rstatus': False, 'SectionStatus': {'Header': 'Please Close Door 1', 'UI_Header': 'DOOR 1\nIS \nOPEN \nNOW', 'Note': 'Please Close the door after picking up products', 'SubHeader': 'Please Pick the Products and close the door'}, 'SectionMain': {'Header': 'Door Open'}, 'voiceNote': 'Please close door 1'}, 'order_id': 'TM09202301260612121432373', 'server_status': 'OrderStatus'}
[2026-06-12 12:15:45,105.105 INFO    ] 200
[2026-06-12 12:15:45,108.108 INFO    ] {"data":{"server_response":{"SectionSKU":{"Header":"Pick the below items from the door","skus":[{"name":"Modern kitchens Banana Chips 21gm","qty":2}]},"status":"false","error":{"umessage":"In Progress","code":20001,"tmessage":"In Progress","data":[]},"rstatus":false,"SectionStatus":{"Header":"Please Close Door 1","UI_Header":"DOOR 1\nIS \nOPEN \nNOW","Note":"Please Close the door after picking up products","SubHeader":"Please Pick the Products and close the door"},"SectionMain":{"Header":"Door Open"},"voiceNote":"Please close door 1"},"order_id":"TM09202301260612121432373","server_status":"OrderStatus"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-12 12:15:45,112.112 INFO    ] {'response': {'code': 'ORDER_EXISTS', 'msg': 'order updated successfully', 'status': True, 'data': 'order updated successfully'}, 'data': {'server_response': {'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'Modern kitchens Banana Chips 21gm', 'qty': 2}]}, 'status': 'false', 'error': {'umessage': 'In Progress', 'code': 20001, 'tmessage': 'In Progress', 'data': []}, 'rstatus': False, 'SectionStatus': {'Header': 'Please Close Door 1', 'UI_Header': 'DOOR 1\nIS \nOPEN \nNOW', 'Note': 'Please Close the door after picking up products', 'SubHeader': 'Please Pick the Products and close the door'}, 'SectionMain': {'Header': 'Door Open'}, 'voiceNote': 'Please close door 1'}, 'order_id': 'TM09202301260612121432373', 'server_status': 'OrderStatus'}}
[2026-06-12 12:15:45,116.116 INFO    ] {'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'Modern kitchens Banana Chips 21gm', 'qty': 2}]}, 'status': 'False', 'error': {'umessage': 'In Progress', 'code': 20001, 'tmessage': 'In Progress', 'data': {}}, 'rstatus': False, 'SectionStatus': {'Header': 'Please Close Door 1', 'UI_Header': 'DOOR 1\nIS \nOPEN \nNOW', 'Note': 'Please Close the door after picking up products', 'SubHeader': 'Please Pick the Products and close the door'}, 'SectionMain': {'Header': 'Door Open'}, 'voiceNote': 'Please close door 1'}
[2026-06-12 12:15:48,169.169 INFO    ] 200
[2026-06-12 12:15:48,172.172 INFO    ] {"rstatus": false, "error": {"umessage": "In Progress", "code": 20001, "tmessage": "In Progress", "data": {}}, "SectionSKU": {"skus": [{"name": "Modern kitchens Banana Chips 21gm", "qty": 2}], "Header": "Pick the below items from the door"}, "SectionMain": {"Header": "Door Close"}, "SectionStatus": {"UI_Header": "DOOR 1\nIS \nCLOSED \nNOW", "Note": "If any due amount, clear at https://go.tinymart.in", "Header": "Door 1 is closed now", "SubHeader": "Please wait for invoice to generate"}, "delay": 1000, "voiceNote": "Door 1 is closed now", "status": "False"}
[2026-06-12 12:15:48,175.175 INFO    ] {'delay': 1000, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'Modern kitchens Banana Chips 21gm', 'qty': 2}]}, 'status': 'False', 'error': {'umessage': 'In Progress', 'code': 20001, 'tmessage': 'In Progress', 'data': {}}, 'rstatus': False, 'SectionStatus': {'Header': 'Door 1 is closed now', 'UI_Header': 'DOOR 1\nIS \nCLOSED \nNOW', 'Note': 'If any due amount, clear at https://go.tinymart.in', 'SubHeader': 'Please wait for invoice to generate'}, 'SectionMain': {'Header': 'Door Close'}, 'voiceNote': 'Door 1 is closed now'}
[2026-06-12 12:15:51,206.206 INFO    ] 200
[2026-06-12 12:15:51,208.208 INFO    ] {"rstatus": true, "SectionSKU": {"skus": [], "Header": "If you like us, tell others... else tell us"}, "SectionMain": {"Header": "Door Closed"}, "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, "voiceNote": "Transaction Completed", "status": "True"}
[2026-06-12 12:15:51,210.210 INFO    ] {'delay': 100, 'SectionSKU': {'Header': 'If you like us, tell others... else tell us', 'skus': []}, 'status': 'True', 'rstatus': True, 'SectionStatus': {'Header': ' Order is complete ', 'UI_Header': '', 'Note': 'If any due amount, clear at https://go.tinymart.in', 'SubHeader': 'Please wait for invoice to generate'}, 'SectionMain': {'Header': 'Door Closed'}, 'voiceNote': 'Transaction Completed'}
[2026-06-12 12:15:51,211.211 INFO    ] 2026-06-12 12:15:51
[2026-06-12 12:15:51,213.213 INFO    ] Order Completed 
[2026-06-12 12:15:51,214.214 INFO    ] Order Completed 
[2026-06-12 12:15:51,216.216 INFO    ] 193c8a8cf3bf490ccfe0b23598544a83
[2026-06-12 12:15:51,226.226 INFO    ] 2026-06-12 12:15:51
[2026-06-12 12:15:51,227.227 INFO    ] playing audio file
[2026-06-12 12:15:51,239.239 INFO    ] 2026-06-12 12:15:51
[2026-06-12 12:15:51,241.241 INFO    ] {'delay': 100, 'SectionSKU': {'Header': 'If you like us, tell others... else tell us', 'skus': []}, 'status': 'True', 'rstatus': True, 'SectionStatus': {'Header': ' Order is complete ', 'UI_Header': '', 'Note': 'If any due amount, clear at https://go.tinymart.in', 'SubHeader': 'Please wait for invoice to generate'}, 'SectionMain': {'Header': 'Door Closed'}, 'voiceNote': 'Transaction Completed'}
[2026-06-12 12:15:51,243.243 INFO    ] 2026-06-12 12:15:51
[2026-06-12 12:15:51,788.788 INFO    ] 200
[2026-06-12 12:15:51,792.792 INFO    ] {"rstatus": true, "skus": [{"door_id": "", "sku_total": 20, "unit_price": "10", "offer_id": "", "tray_id": "14", "image_url": "https://images.tinymart.in/product/4500648-25.webp", "mrp": "10", "name": "Modern kitchens Banana Chips 21gm per peice", "qty": 2, "skuid": "4500648"}], "res": true, "anomaly": 0, "imei": "TM09202301", "orderId": "TM09202301260612121432373", "userId": "8320812063", "bill_amount": 20, "cart_offer_desc": "", "total_amount": 20, "order_status": ""}
[2026-06-12 12:15:51,796.796 INFO    ] {'cart_offer_desc': '', 'imei': 'TM09202301', 'total_amount': 20, 'order_status': '', 'rstatus': True, 'skus': [{'tray_id': '14', 'door_id': '', 'skuid': '4500648', 'mrp': '10', 'image_url': 'https://images.tinymart.in/product/4500648-25.webp', 'unit_price': '10', 'sku_total': 20, 'offer_id': '', 'name': 'Modern kitchens Banana Chips 21gm per peice', 'qty': 2}], 'bill_amount': 20, 'orderId': 'TM09202301260612121432373', 'res': True, 'anomaly': 0, 'userId': '8320812063'}
[2026-06-12 12:15:51,800.800 INFO    ] {'cart_offer_desc': '', 'imei': 'TM09202301', 'total_amount': 20, 'order_status': '', 'rstatus': True, 'skus': [{'tray_id': '14', 'door_id': '', 'skuid': '4500648', 'mrp': '10', 'image_url': 'https://images.tinymart.in/product/4500648-25.webp', 'unit_price': '10', 'sku_total': 20, 'offer_id': '', 'name': 'Modern kitchens Banana Chips 21gm per peice', 'qty': 2}], 'bill_amount': 20, 'orderId': 'TM09202301260612121432373', 'res': True, 'anomaly': 0, 'userId': '8320812063'}
[2026-06-12 12:15:51,804.804 INFO    ] 2026-06-12 12:15:51
[2026-06-12 12:15:51,807.807 INFO    ] 2026-06-12 12:15:51
[2026-06-12 12:15:51,810.810 INFO    ] 20
[2026-06-12 12:15:51,814.814 INFO    ] 2026-06-12 12:15:51
[2026-06-12 12:15:51,819.819 INFO    ] 2026-06-12 12:15:51
[2026-06-12 12:15:51,823.823 INFO    ]  Your Bill Amount is 20
[2026-06-12 12:15:51,826.826 INFO    ]  Your Bill Amount is 20
[2026-06-12 12:15:51,830.830 INFO    ] 69e7720cf62ffa67ab0522541575e508
[2026-06-12 12:15:51,834.834 INFO    ] 2026-06-12 12:15:51
[2026-06-12 12:15:51,837.837 INFO    ] playing audio file
[2026-06-12 12:15:51,850.850 INFO    ] 2026-06-12 12:15:51
[2026-06-12 12:15:51,852.852 INFO    ] 2026-06-12 12:15:51
[2026-06-12 12:15:51,855.855 INFO    ] publish_status: order_id=TM09202301260612121432373
[2026-06-12 12:15:51,857.857 INFO    ] [publish_status] Adding message to stream: order:TM09202301260612121432373
[2026-06-12 12:15:51,942.942 INFO    ] [publish_status] Message added to stream with ID: 1781246752140-0
[2026-06-12 12:15:51,944.944 INFO    ] Published to order:TM09202301260612121432373: {'server_response': '{"cart_offer_desc": "", "imei": "TM09202301", "total_amount": 20, "order_status": "", "rstatus": true, "skus": [{"tray_id": "14", "door_id": "", "skuid": "4500648", "mrp": "10", "image_url": "https://images.tinymart.in/product/4500648-25.webp", "unit_price": "10", "sku_total": 20, "offer_id": "", "name": "Modern kitchens Banana Chips 21gm per peice", "qty": 2}], "bill_amount": 20, "orderId": "TM09202301260612121432373", "res": true, "anomaly": 0, "userId": "8320812063"}', 'order_id': 'TM09202301260612121432373', 'server_status': 'invoiceOrder', 'timestamp': '2026-06-12T06:45:51.853557Z'} (ID: 1781246752140-0)
[2026-06-12 12:15:52,671.671 INFO    ] {'server_response': {'cart_offer_desc': '', 'imei': 'TM09202301', 'total_amount': 20, 'order_status': '', 'rstatus': True, 'skus': [{'tray_id': '14', 'door_id': '', 'skuid': '4500648', 'mrp': '10', 'image_url': 'https://images.tinymart.in/product/4500648-25.webp', 'unit_price': '10', 'sku_total': 20, 'offer_id': '', 'name': 'Modern kitchens Banana Chips 21gm per peice', 'qty': 2}], 'bill_amount': 20, 'orderId': 'TM09202301260612121432373', 'res': True, 'anomaly': 0, 'userId': '8320812063'}, 'order_id': 'TM09202301260612121432373', 'server_status': 'invoiceOrder'}
[2026-06-12 12:15:52,673.673 INFO    ] 200
[2026-06-12 12:15:52,676.676 INFO    ] {"data":{"server_response":{"cart_offer_desc":"","imei":"TM09202301","total_amount":20,"order_status":"","rstatus":true,"skus":[{"tray_id":"14","door_id":"","skuid":"4500648","mrp":"10","image_url":"https:\/\/images.tinymart.in\/product\/4500648-25.webp","unit_price":"10","sku_total":20,"offer_id":"","name":"Modern kitchens Banana Chips 21gm per peice","qty":2}],"bill_amount":20,"orderId":"TM09202301260612121432373","res":true,"anomaly":0,"userId":"8320812063"},"order_id":"TM09202301260612121432373","server_status":"invoiceOrder"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-12 12:15:52,680.680 INFO    ] {'response': {'code': 'ORDER_EXISTS', 'msg': 'order updated successfully', 'status': True, 'data': 'order updated successfully'}, 'data': {'server_response': {'skus': [{'tray_id': '14', 'door_id': '', 'skuid': '4500648', 'mrp': '10', 'image_url': 'https://images.tinymart.in/product/4500648-25.webp', 'unit_price': '10', 'sku_total': 20, 'offer_id': '', 'name': 'Modern kitchens Banana Chips 21gm per peice', 'qty': 2}], 'imei': 'TM09202301', 'anomaly': 0, 'userId': '8320812063', 'rstatus': True, 'cart_offer_desc': '', 'bill_amount': 20, 'orderId': 'TM09202301260612121432373', 'total_amount': 20, 'order_status': '', 'res': True}, 'order_id': 'TM09202301260612121432373', 'server_status': 'invoiceOrder'}}
[2026-06-12 12:15:52,683.683 INFO    ] {'response': {'code': 'ORDER_EXISTS', 'msg': 'order updated successfully', 'status': True, 'data': 'order updated successfully'}, 'data': {'server_response': {'skus': [{'tray_id': '14', 'door_id': '', 'skuid': '4500648', 'mrp': '10', 'image_url': 'https://images.tinymart.in/product/4500648-25.webp', 'unit_price': '10', 'sku_total': 20, 'offer_id': '', 'name': 'Modern kitchens Banana Chips 21gm per peice', 'qty': 2}], 'imei': 'TM09202301', 'anomaly': 0, 'userId': '8320812063', 'rstatus': True, 'cart_offer_desc': '', 'bill_amount': 20, 'orderId': 'TM09202301260612121432373', 'total_amount': 20, 'order_status': '', 'res': True}, 'order_id': 'TM09202301260612121432373', 'server_status': 'invoiceOrder'}}
[2026-06-12 12:15:52,686.686 INFO    ] 2026-06-12 12:15:52
[2026-06-12 12:15:53,282.282 INFO    ] 200
[2026-06-12 12:15:53,284.284 INFO    ] {"tray_sync": ["no_entry", "no_entry", "no_entry", "no_entry", "no_entry", "no_entry"], "orders_data": [], "orders_synced": [], "status": true, "order_items_synced": [], "tray_synced": ["no_entry", "no_entry", "no_entry", "no_entry", "no_entry", "no_entry", "no_entry", "no_entry", "no_entry", "no_entry", "no_entry", "no_entry", "no_entry", "no_entry", "no_entry", "no_entry", "no_entry", "no_entry", "no_entry", "no_entry", "no_entry", "no_entry", "no_entry", "no_entry", "no_entry", "no_entry", "no_entry"], "orders_data_synced": [], "orders": [], "order_items": []}
[2026-06-12 12:15:53,285.285 INFO    ] 2026-06-12 12:15:53
[2026-06-12 12:15:53,346.346 INFO    ] 200
[2026-06-12 12:15:53,348.348 INFO    ] True
[2026-06-12 12:15:53,350.350 INFO    ] cleanup_start_order_file_after_processing: order_id=TM09202301260612121432373
[2026-06-12 12:15:53,352.352 INFO    ] start order file deleted
[2026-06-12 12:15:53,354.354 INFO    ] Checking for system updates...
[2026-06-12 12:15:53,377.377 INFO    ] 200
[2026-06-12 12:15:53,379.379 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:15:53,409.409 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 12:15:53,411.411 INFO    ] No update needed
[2026-06-12 12:15:53,412.412 INFO    ] Checking for camera pi updates...
[2026-06-12 12:15:53,433.433 INFO    ] 200
[2026-06-12 12:15:53,435.435 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:15:53,462.462 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 12:15:53,487.487 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 12:15:53,488.488 INFO    ] No camera update needed
[2026-06-12 12:15:53,490.490 INFO    ] Script finished. Safe exiting...
[2026-06-12 12:15:53,491.491 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 12:15:53,495.495 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 12:15:53,498.498 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 12:15:55,538.538 INFO    ] ================================================
[2026-06-12 12:15:55,557.557 INFO    ] Launching Daemon at Fri Jun 12 12:15:55 IST 2026
[2026-06-12 12:15:55,568.568 INFO    ] ================================================
[2026-06-12 12:15:55,888.888 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 12:15:55
[2026-06-12 12:15:56,202.202 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 12:15:56,346.346 INFO    ] Initializing speech engine...
[2026-06-12 12:15:56,351.351 INFO    ] 2026-06-12 12:15:56
[2026-06-12 12:15:56,556.556 INFO    ] 2026-06-12 12:15:56
[2026-06-12 12:15:56,583.583 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 12:15:56,768.768 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 12:15:56,793.793 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 12:15:56,929.929 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 12:15:56,977.977 INFO    ] time= 12/06/2026 12:15:56
[2026-06-12 12:15:56,999.999 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 12:15:57,005.005 INFO    ] Checking for existing commands in stream...
[2026-06-12 12:15:57,071.071 INFO    ] No existing commands found in stream
[2026-06-12 12:16:02,080.080 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 12:16:02,082.082 INFO    ] Waiting 0.27 seconds before fallback handling...
[2026-06-12 12:16:02,707.707 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 12:16:02,708.708 INFO    ] Checking for system updates...
[2026-06-12 12:16:02,731.731 INFO    ] 200
[2026-06-12 12:16:02,733.733 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:16:02,763.763 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 12:16:02,765.765 INFO    ] No update needed
[2026-06-12 12:16:02,770.770 INFO    ] Checking for camera pi updates...
[2026-06-12 12:16:02,789.789 INFO    ] 200
[2026-06-12 12:16:02,791.791 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:16:02,814.814 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 12:16:02,839.839 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 12:16:02,840.840 INFO    ] No camera update needed
[2026-06-12 12:16:02,842.842 INFO    ] Script finished. Safe exiting...
[2026-06-12 12:16:02,843.843 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 12:16:02,846.846 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 12:16:02,848.848 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 12:16:04,889.889 INFO    ] ================================================
[2026-06-12 12:16:04,905.905 INFO    ] Launching Daemon at Fri Jun 12 12:16:04 IST 2026
[2026-06-12 12:16:04,916.916 INFO    ] ================================================
[2026-06-12 12:16:05,264.264 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 12:16:05
[2026-06-12 12:16:05,576.576 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 12:16:05,709.709 INFO    ] Initializing speech engine...
[2026-06-12 12:16:05,713.713 INFO    ] 2026-06-12 12:16:05
[2026-06-12 12:16:05,946.946 INFO    ] 2026-06-12 12:16:05
[2026-06-12 12:16:05,975.975 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 12:16:06,160.160 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 12:16:06,164.164 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 12:16:06,298.298 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 12:16:06,351.351 INFO    ] time= 12/06/2026 12:16:06
[2026-06-12 12:16:06,387.387 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 12:16:06,397.397 INFO    ] Checking for existing commands in stream...
[2026-06-12 12:16:06,470.470 INFO    ] No existing commands found in stream
[2026-06-12 12:16:11,479.479 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 12:16:11,482.482 INFO    ] Waiting 0.14 seconds before fallback handling...
[2026-06-12 12:16:11,942.942 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 12:16:11,944.944 INFO    ] Checking for system updates...
[2026-06-12 12:16:11,964.964 INFO    ] 200
[2026-06-12 12:16:11,965.965 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:16:12,002.002 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 12:16:12,003.003 INFO    ] No update needed
[2026-06-12 12:16:12,004.004 INFO    ] Checking for camera pi updates...
[2026-06-12 12:16:12,023.023 INFO    ] 200
[2026-06-12 12:16:12,025.025 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:16:12,047.047 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 12:16:12,069.069 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 12:16:12,070.070 INFO    ] No camera update needed
[2026-06-12 12:16:12,072.072 INFO    ] Script finished. Safe exiting...
[2026-06-12 12:16:12,073.073 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 12:16:12,076.076 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 12:16:12,078.078 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 12:16:14,118.118 INFO    ] ================================================
[2026-06-12 12:16:14,133.133 INFO    ] Launching Daemon at Fri Jun 12 12:16:14 IST 2026
[2026-06-12 12:16:14,144.144 INFO    ] ================================================
[2026-06-12 12:16:14,476.476 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 12:16:14
[2026-06-12 12:16:14,794.794 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 12:16:14,937.937 INFO    ] Initializing speech engine...
[2026-06-12 12:16:14,943.943 INFO    ] 2026-06-12 12:16:14
[2026-06-12 12:16:15,145.145 INFO    ] 2026-06-12 12:16:15
[2026-06-12 12:16:15,174.174 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 12:16:15,358.358 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 12:16:15,368.368 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 12:16:15,498.498 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 12:16:15,557.557 INFO    ] time= 12/06/2026 12:16:15
[2026-06-12 12:16:15,589.589 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 12:16:15,596.596 INFO    ] Checking for existing commands in stream...
[2026-06-12 12:16:15,686.686 INFO    ] No existing commands found in stream
[2026-06-12 12:16:20,700.700 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 12:16:20,703.703 INFO    ] Waiting 0.86 seconds before fallback handling...
[2026-06-12 12:16:21,962.962 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 12:16:21,964.964 INFO    ] Checking for system updates...
[2026-06-12 12:16:21,984.984 INFO    ] 200
[2026-06-12 12:16:21,986.986 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:16:22,018.018 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 12:16:22,020.020 INFO    ] No update needed
[2026-06-12 12:16:22,021.021 INFO    ] Checking for camera pi updates...
[2026-06-12 12:16:22,041.041 INFO    ] 200
[2026-06-12 12:16:22,042.042 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:16:22,065.065 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 12:16:22,108.108 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 12:16:22,110.110 INFO    ] No camera update needed
[2026-06-12 12:16:22,111.111 INFO    ] Script finished. Safe exiting...
[2026-06-12 12:16:22,113.113 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 12:16:22,115.115 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 12:16:22,118.118 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 12:16:24,156.156 INFO    ] ================================================
[2026-06-12 12:16:24,172.172 INFO    ] Launching Daemon at Fri Jun 12 12:16:24 IST 2026
[2026-06-12 12:16:24,183.183 INFO    ] ================================================
[2026-06-12 12:16:24,528.528 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 12:16:24
[2026-06-12 12:16:24,866.866 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 12:16:25,019.019 INFO    ] Initializing speech engine...
[2026-06-12 12:16:25,025.025 INFO    ] 2026-06-12 12:16:25
[2026-06-12 12:16:25,236.236 INFO    ] 2026-06-12 12:16:25
[2026-06-12 12:16:25,265.265 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 12:16:25,389.389 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 12:16:25,428.428 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 12:16:25,594.594 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 12:16:25,650.650 INFO    ] time= 12/06/2026 12:16:25
[2026-06-12 12:16:25,686.686 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 12:16:25,697.697 INFO    ] Checking for existing commands in stream...
[2026-06-12 12:16:25,765.765 INFO    ] No existing commands found in stream
[2026-06-12 12:16:30,798.798 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 12:16:30,802.802 INFO    ] Waiting 3.48 seconds before fallback handling...
[2026-06-12 12:16:34,659.659 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 12:16:34,660.660 INFO    ] Checking for system updates...
[2026-06-12 12:16:34,682.682 INFO    ] 200
[2026-06-12 12:16:34,683.683 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:16:34,714.714 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 12:16:34,716.716 INFO    ] No update needed
[2026-06-12 12:16:34,717.717 INFO    ] Checking for camera pi updates...
[2026-06-12 12:16:34,737.737 INFO    ] 200
[2026-06-12 12:16:34,738.738 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:16:34,762.762 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 12:16:34,799.799 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 12:16:34,800.800 INFO    ] No camera update needed
[2026-06-12 12:16:34,802.802 INFO    ] Script finished. Safe exiting...
[2026-06-12 12:16:34,803.803 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 12:16:34,806.806 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 12:16:34,809.809 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 12:16:36,849.849 INFO    ] ================================================
[2026-06-12 12:16:36,865.865 INFO    ] Launching Daemon at Fri Jun 12 12:16:36 IST 2026
[2026-06-12 12:16:36,876.876 INFO    ] ================================================
[2026-06-12 12:16:37,206.206 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 12:16:37
[2026-06-12 12:16:37,518.518 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 12:16:37,667.667 INFO    ] Initializing speech engine...
[2026-06-12 12:16:37,672.672 INFO    ] 2026-06-12 12:16:37
[2026-06-12 12:16:37,888.888 INFO    ] 2026-06-12 12:16:37
[2026-06-12 12:16:37,919.919 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 12:16:38,116.116 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 12:16:38,120.120 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 12:16:38,261.261 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 12:16:38,327.327 INFO    ] time= 12/06/2026 12:16:38
[2026-06-12 12:16:38,366.366 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 12:16:38,368.368 INFO    ] Checking for existing commands in stream...
[2026-06-12 12:16:38,445.445 INFO    ] No existing commands found in stream
[2026-06-12 12:16:43,454.454 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 12:16:43,457.457 INFO    ] Waiting 0.24 seconds before fallback handling...
[2026-06-12 12:16:44,071.071 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 12:16:44,073.073 INFO    ] Checking for system updates...
[2026-06-12 12:16:44,093.093 INFO    ] 200
[2026-06-12 12:16:44,095.095 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:16:44,125.125 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 12:16:44,126.126 INFO    ] No update needed
[2026-06-12 12:16:44,127.127 INFO    ] Checking for camera pi updates...
[2026-06-12 12:16:44,149.149 INFO    ] 200
[2026-06-12 12:16:44,150.150 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:16:44,175.175 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 12:16:44,221.221 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 12:16:44,222.222 INFO    ] No camera update needed
[2026-06-12 12:16:44,224.224 INFO    ] Script finished. Safe exiting...
[2026-06-12 12:16:44,225.225 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 12:16:44,228.228 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 12:16:44,231.231 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 12:16:46,269.269 INFO    ] ================================================
[2026-06-12 12:16:46,285.285 INFO    ] Launching Daemon at Fri Jun 12 12:16:46 IST 2026
[2026-06-12 12:16:46,296.296 INFO    ] ================================================
[2026-06-12 12:16:46,638.638 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 12:16:46
[2026-06-12 12:16:46,949.949 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 12:16:47,078.078 INFO    ] Initializing speech engine...
[2026-06-12 12:16:47,082.082 INFO    ] 2026-06-12 12:16:47
[2026-06-12 12:16:47,298.298 INFO    ] 2026-06-12 12:16:47
[2026-06-12 12:16:47,327.327 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 12:16:47,508.508 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 12:16:47,518.518 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 12:16:47,647.647 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 12:16:47,713.713 INFO    ] time= 12/06/2026 12:16:47
[2026-06-12 12:16:47,737.737 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 12:16:47,739.739 INFO    ] Checking for existing commands in stream...
[2026-06-12 12:16:47,810.810 INFO    ] No existing commands found in stream
[2026-06-12 12:16:52,834.834 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 12:16:52,837.837 INFO    ] Waiting 0.93 seconds before fallback handling...
[2026-06-12 12:16:54,111.111 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 12:16:54,112.112 INFO    ] Checking for system updates...
[2026-06-12 12:16:54,133.133 INFO    ] 200
[2026-06-12 12:16:54,134.134 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:16:54,167.167 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 12:16:54,168.168 INFO    ] No update needed
[2026-06-12 12:16:54,170.170 INFO    ] Checking for camera pi updates...
[2026-06-12 12:16:54,189.189 INFO    ] 200
[2026-06-12 12:16:54,190.190 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:16:54,216.216 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 12:16:54,261.261 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 12:16:54,262.262 INFO    ] No camera update needed
[2026-06-12 12:16:54,264.264 INFO    ] Script finished. Safe exiting...
[2026-06-12 12:16:54,265.265 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 12:16:54,268.268 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 12:16:54,271.271 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 12:16:56,314.314 INFO    ] ================================================
[2026-06-12 12:16:56,329.329 INFO    ] Launching Daemon at Fri Jun 12 12:16:56 IST 2026
[2026-06-12 12:16:56,340.340 INFO    ] ================================================
[2026-06-12 12:16:56,685.685 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 12:16:56
[2026-06-12 12:16:56,998.998 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 12:16:57,129.129 INFO    ] Initializing speech engine...
[2026-06-12 12:16:57,134.134 INFO    ] 2026-06-12 12:16:57
[2026-06-12 12:16:57,349.349 INFO    ] 2026-06-12 12:16:57
[2026-06-12 12:16:57,378.378 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 12:16:57,562.562 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 12:16:57,571.571 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 12:16:57,701.701 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 12:16:57,760.760 INFO    ] time= 12/06/2026 12:16:57
[2026-06-12 12:16:57,792.792 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 12:16:57,799.799 INFO    ] Checking for existing commands in stream...
[2026-06-12 12:16:57,865.865 INFO    ] No existing commands found in stream
[2026-06-12 12:17:02,878.878 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 12:17:02,880.880 INFO    ] Waiting 0.42 seconds before fallback handling...
[2026-06-12 12:17:03,666.666 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 12:17:03,667.667 INFO    ] Checking for system updates...
[2026-06-12 12:17:03,688.688 INFO    ] 200
[2026-06-12 12:17:03,689.689 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:17:03,724.724 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 12:17:03,725.725 INFO    ] No update needed
[2026-06-12 12:17:03,726.726 INFO    ] Checking for camera pi updates...
[2026-06-12 12:17:03,746.746 INFO    ] 200
[2026-06-12 12:17:03,747.747 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:17:03,771.771 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 12:17:03,805.805 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 12:17:03,807.807 INFO    ] No camera update needed
[2026-06-12 12:17:03,808.808 INFO    ] Script finished. Safe exiting...
[2026-06-12 12:17:03,809.809 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 12:17:03,812.812 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 12:17:03,815.815 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 12:17:05,856.856 INFO    ] ================================================
[2026-06-12 12:17:05,872.872 INFO    ] Launching Daemon at Fri Jun 12 12:17:05 IST 2026
[2026-06-12 12:17:05,883.883 INFO    ] ================================================
[2026-06-12 12:17:06,225.225 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 12:17:06
[2026-06-12 12:17:06,539.539 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 12:17:06,674.674 INFO    ] Initializing speech engine...
[2026-06-12 12:17:06,678.678 INFO    ] 2026-06-12 12:17:06
[2026-06-12 12:17:06,908.908 INFO    ] 2026-06-12 12:17:06
[2026-06-12 12:17:06,939.939 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 12:17:07,075.075 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 12:17:07,133.133 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 12:17:07,272.272 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 12:17:07,329.329 INFO    ] time= 12/06/2026 12:17:07
[2026-06-12 12:17:07,366.366 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 12:17:07,396.396 INFO    ] Checking for existing commands in stream...
[2026-06-12 12:17:07,491.491 INFO    ] No existing commands found in stream
[2026-06-12 12:17:12,500.500 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 12:17:12,503.503 INFO    ] Waiting 2.11 seconds before fallback handling...
[2026-06-12 12:17:14,999.999 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 12:17:15,000.000 INFO    ] Checking for system updates...
[2026-06-12 12:17:15,022.022 INFO    ] 200
[2026-06-12 12:17:15,024.024 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:17:15,054.054 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 12:17:15,055.055 INFO    ] No update needed
[2026-06-12 12:17:15,056.056 INFO    ] Checking for camera pi updates...
[2026-06-12 12:17:15,076.076 INFO    ] 200
[2026-06-12 12:17:15,078.078 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:17:15,103.103 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 12:17:15,144.144 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 12:17:15,146.146 INFO    ] No camera update needed
[2026-06-12 12:17:15,147.147 INFO    ] Script finished. Safe exiting...
[2026-06-12 12:17:15,148.148 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 12:17:15,152.152 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 12:17:15,155.155 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 12:17:17,194.194 INFO    ] ================================================
[2026-06-12 12:17:17,209.209 INFO    ] Launching Daemon at Fri Jun 12 12:17:17 IST 2026
[2026-06-12 12:17:17,220.220 INFO    ] ================================================
[2026-06-12 12:17:17,547.547 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 12:17:17
[2026-06-12 12:17:17,860.860 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 12:17:17,991.991 INFO    ] Initializing speech engine...
[2026-06-12 12:17:17,999.999 INFO    ] 2026-06-12 12:17:17
[2026-06-12 12:17:18,196.196 INFO    ] 2026-06-12 12:17:18
[2026-06-12 12:17:18,225.225 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 12:17:18,427.427 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 12:17:18,430.430 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 12:17:18,558.558 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 12:17:18,614.614 INFO    ] time= 12/06/2026 12:17:18
[2026-06-12 12:17:18,643.643 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 12:17:18,659.659 INFO    ] Checking for existing commands in stream...
[2026-06-12 12:17:18,730.730 INFO    ] No existing commands found in stream
[2026-06-12 12:17:23,739.739 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 12:17:23,742.742 INFO    ] Waiting 0.93 seconds before fallback handling...
[2026-06-12 12:17:25,019.019 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 12:17:25,021.021 INFO    ] Checking for system updates...
[2026-06-12 12:17:25,042.042 INFO    ] 200
[2026-06-12 12:17:25,043.043 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:17:25,073.073 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 12:17:25,074.074 INFO    ] No update needed
[2026-06-12 12:17:25,076.076 INFO    ] Checking for camera pi updates...
[2026-06-12 12:17:25,095.095 INFO    ] 200
[2026-06-12 12:17:25,096.096 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:17:25,119.119 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 12:17:25,160.160 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 12:17:25,162.162 INFO    ] No camera update needed
[2026-06-12 12:17:25,163.163 INFO    ] Script finished. Safe exiting...
[2026-06-12 12:17:25,164.164 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 12:17:25,167.167 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 12:17:25,170.170 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 12:17:27,210.210 INFO    ] ================================================
[2026-06-12 12:17:27,231.231 INFO    ] Launching Daemon at Fri Jun 12 12:17:27 IST 2026
[2026-06-12 12:17:27,242.242 INFO    ] ================================================
[2026-06-12 12:17:27,565.565 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 12:17:27
[2026-06-12 12:17:27,876.876 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 12:17:28,012.012 INFO    ] Initializing speech engine...
[2026-06-12 12:17:28,024.024 INFO    ] 2026-06-12 12:17:28
[2026-06-12 12:17:28,246.246 INFO    ] 2026-06-12 12:17:28
[2026-06-12 12:17:28,276.276 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 12:17:28,474.474 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 12:17:28,477.477 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 12:17:28,626.626 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 12:17:28,680.680 INFO    ] time= 12/06/2026 12:17:28
[2026-06-12 12:17:28,710.710 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 12:17:28,726.726 INFO    ] Checking for existing commands in stream...
[2026-06-12 12:17:28,803.803 INFO    ] No existing commands found in stream
[2026-06-12 12:17:33,814.814 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 12:17:33,816.816 INFO    ] Waiting 0.06 seconds before fallback handling...
[2026-06-12 12:17:34,254.254 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 12:17:34,255.255 INFO    ] Checking for system updates...
[2026-06-12 12:17:34,276.276 INFO    ] 200
[2026-06-12 12:17:34,278.278 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:17:34,308.308 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 12:17:34,310.310 INFO    ] No update needed
[2026-06-12 12:17:34,311.311 INFO    ] Checking for camera pi updates...
[2026-06-12 12:17:34,331.331 INFO    ] 200
[2026-06-12 12:17:34,332.332 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:17:34,355.355 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 12:17:34,401.401 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 12:17:34,403.403 INFO    ] No camera update needed
[2026-06-12 12:17:34,404.404 INFO    ] Script finished. Safe exiting...
[2026-06-12 12:17:34,405.405 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 12:17:34,408.408 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 12:17:34,411.411 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 12:17:36,451.451 INFO    ] ================================================
[2026-06-12 12:17:36,466.466 INFO    ] Launching Daemon at Fri Jun 12 12:17:36 IST 2026
[2026-06-12 12:17:36,477.477 INFO    ] ================================================
[2026-06-12 12:17:36,806.806 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 12:17:36
[2026-06-12 12:17:37,116.116 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 12:17:37,248.248 INFO    ] Initializing speech engine...
[2026-06-12 12:17:37,249.249 INFO    ] 2026-06-12 12:17:37
[2026-06-12 12:17:37,469.469 INFO    ] 2026-06-12 12:17:37
[2026-06-12 12:17:37,498.498 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 12:17:37,681.681 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 12:17:37,684.684 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 12:17:37,820.820 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 12:17:37,887.887 INFO    ] time= 12/06/2026 12:17:37
[2026-06-12 12:17:37,911.911 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 12:17:37,917.917 INFO    ] Checking for existing commands in stream...
[2026-06-12 12:17:38,007.007 INFO    ] No existing commands found in stream
[2026-06-12 12:17:43,015.015 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 12:17:43,018.018 INFO    ] Waiting 3.60 seconds before fallback handling...
[2026-06-12 12:17:46,918.918 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 12:17:46,919.919 INFO    ] Checking for system updates...
[2026-06-12 12:17:46,946.946 INFO    ] 200
[2026-06-12 12:17:46,947.947 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:17:46,982.982 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 12:17:46,983.983 INFO    ] No update needed
[2026-06-12 12:17:46,984.984 INFO    ] Checking for camera pi updates...
[2026-06-12 12:17:47,004.004 INFO    ] 200
[2026-06-12 12:17:47,006.006 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:17:47,029.029 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 12:17:47,064.064 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 12:17:47,065.065 INFO    ] No camera update needed
[2026-06-12 12:17:47,066.066 INFO    ] Script finished. Safe exiting...
[2026-06-12 12:17:47,067.067 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 12:17:47,071.071 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 12:17:47,073.073 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 12:17:49,098.098 INFO    ] ================================================
[2026-06-12 12:17:49,107.107 INFO    ] Launching Daemon at Fri Jun 12 12:17:49 IST 2026
[2026-06-12 12:17:49,114.114 INFO    ] ================================================
[2026-06-12 12:17:49,448.448 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 12:17:49
[2026-06-12 12:17:49,786.786 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 12:17:49,929.929 INFO    ] Initializing speech engine...
[2026-06-12 12:17:49,934.934 INFO    ] 2026-06-12 12:17:49
[2026-06-12 12:17:50,154.154 INFO    ] 2026-06-12 12:17:50
[2026-06-12 12:17:50,184.184 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 12:17:50,379.379 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 12:17:50,390.390 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 12:17:50,530.530 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 12:17:50,601.601 INFO    ] time= 12/06/2026 12:17:50
[2026-06-12 12:17:50,626.626 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 12:17:50,633.633 INFO    ] Checking for existing commands in stream...
[2026-06-12 12:17:50,701.701 INFO    ] No existing commands found in stream
[2026-06-12 12:17:55,721.721 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 12:17:55,724.724 INFO    ] Waiting 2.81 seconds before fallback handling...
[2026-06-12 12:17:58,876.876 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 12:17:58,878.878 INFO    ] Checking for system updates...
[2026-06-12 12:17:58,898.898 INFO    ] 200
[2026-06-12 12:17:58,900.900 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:17:58,931.931 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 12:17:58,932.932 INFO    ] No update needed
[2026-06-12 12:17:58,934.934 INFO    ] Checking for camera pi updates...
[2026-06-12 12:17:58,953.953 INFO    ] 200
[2026-06-12 12:17:58,954.954 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:17:58,978.978 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 12:17:59,015.015 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 12:17:59,016.016 INFO    ] No camera update needed
[2026-06-12 12:17:59,018.018 INFO    ] Script finished. Safe exiting...
[2026-06-12 12:17:59,019.019 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 12:17:59,022.022 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 12:17:59,025.025 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 12:18:01,078.078 INFO    ] ================================================
[2026-06-12 12:18:01,113.113 INFO    ] Launching Daemon at Fri Jun 12 12:18:01 IST 2026
[2026-06-12 12:18:01,147.147 INFO    ] ================================================
[2026-06-12 12:18:01,561.561 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 12:18:01
[2026-06-12 12:18:01,944.944 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 12:18:02,087.087 INFO    ] Initializing speech engine...
[2026-06-12 12:18:02,091.091 INFO    ] 2026-06-12 12:18:02
[2026-06-12 12:18:02,298.298 INFO    ] 2026-06-12 12:18:02
[2026-06-12 12:18:02,329.329 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 12:18:02,480.480 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 12:18:02,519.519 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 12:18:02,675.675 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 12:18:02,732.732 INFO    ] time= 12/06/2026 12:18:02
[2026-06-12 12:18:02,771.771 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 12:18:02,776.776 INFO    ] Checking for existing commands in stream...
[2026-06-12 12:18:02,846.846 INFO    ] No existing commands found in stream
[2026-06-12 12:18:07,856.856 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 12:18:07,859.859 INFO    ] Waiting 0.10 seconds before fallback handling...
[2026-06-12 12:18:08,305.305 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 12:18:08,307.307 INFO    ] Checking for system updates...
[2026-06-12 12:18:08,327.327 INFO    ] 200
[2026-06-12 12:18:08,329.329 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:18:08,359.359 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 12:18:08,360.360 INFO    ] No update needed
[2026-06-12 12:18:08,362.362 INFO    ] Checking for camera pi updates...
[2026-06-12 12:18:08,381.381 INFO    ] 200
[2026-06-12 12:18:08,382.382 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:18:08,406.406 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 12:18:08,444.444 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 12:18:08,446.446 INFO    ] No camera update needed
[2026-06-12 12:18:08,447.447 INFO    ] Script finished. Safe exiting...
[2026-06-12 12:18:08,448.448 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 12:18:08,451.451 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 12:18:08,454.454 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 12:18:10,493.493 INFO    ] ================================================
[2026-06-12 12:18:10,509.509 INFO    ] Launching Daemon at Fri Jun 12 12:18:10 IST 2026
[2026-06-12 12:18:10,521.521 INFO    ] ================================================
[2026-06-12 12:18:10,868.868 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 12:18:10
[2026-06-12 12:18:11,184.184 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 12:18:11,318.318 INFO    ] Initializing speech engine...
[2026-06-12 12:18:11,323.323 INFO    ] 2026-06-12 12:18:11
[2026-06-12 12:18:11,514.514 INFO    ] 2026-06-12 12:18:11
[2026-06-12 12:18:11,559.559 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 12:18:11,682.682 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 12:18:11,686.686 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 12:18:11,795.795 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 12:18:11,804.804 INFO    ] time= 12/06/2026 12:18:11
[2026-06-12 12:18:11,810.810 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 12:18:11,825.825 INFO    ] Checking for existing commands in stream...
[2026-06-12 12:18:11,915.915 INFO    ] No existing commands found in stream
[2026-06-12 12:18:16,949.949 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 12:18:16,953.953 INFO    ] Waiting 1.10 seconds before fallback handling...
[2026-06-12 12:18:18,428.428 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 12:18:18,429.429 INFO    ] Checking for system updates...
[2026-06-12 12:18:18,451.451 INFO    ] 200
[2026-06-12 12:18:18,453.453 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:18:18,483.483 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 12:18:18,484.484 INFO    ] No update needed
[2026-06-12 12:18:18,485.485 INFO    ] Checking for camera pi updates...
[2026-06-12 12:18:18,508.508 INFO    ] 200
[2026-06-12 12:18:18,510.510 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:18:18,533.533 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 12:18:18,570.570 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 12:18:18,571.571 INFO    ] No camera update needed
[2026-06-12 12:18:18,573.573 INFO    ] Script finished. Safe exiting...
[2026-06-12 12:18:18,574.574 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 12:18:18,577.577 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 12:18:18,580.580 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 12:18:20,620.620 INFO    ] ================================================
[2026-06-12 12:18:20,637.637 INFO    ] Launching Daemon at Fri Jun 12 12:18:20 IST 2026
[2026-06-12 12:18:20,649.649 INFO    ] ================================================
[2026-06-12 12:18:20,983.983 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 12:18:20
[2026-06-12 12:18:21,300.300 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 12:18:21,431.431 INFO    ] Initializing speech engine...
[2026-06-12 12:18:21,435.435 INFO    ] 2026-06-12 12:18:21
[2026-06-12 12:18:21,651.651 INFO    ] 2026-06-12 12:18:21
[2026-06-12 12:18:21,679.679 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 12:18:21,862.862 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 12:18:21,866.866 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 12:18:22,002.002 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 12:18:22,069.069 INFO    ] time= 12/06/2026 12:18:22
[2026-06-12 12:18:22,093.093 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 12:18:22,099.099 INFO    ] Checking for existing commands in stream...
[2026-06-12 12:18:22,166.166 INFO    ] No existing commands found in stream
[2026-06-12 12:18:27,175.175 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 12:18:27,178.178 INFO    ] Waiting 1.00 seconds before fallback handling...
[2026-06-12 12:18:28,559.559 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 12:18:28,560.560 INFO    ] Checking for system updates...
[2026-06-12 12:18:28,581.581 INFO    ] 200
[2026-06-12 12:18:28,583.583 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:18:28,615.615 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 12:18:28,617.617 INFO    ] No update needed
[2026-06-12 12:18:28,618.618 INFO    ] Checking for camera pi updates...
[2026-06-12 12:18:28,638.638 INFO    ] 200
[2026-06-12 12:18:28,639.639 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:18:28,663.663 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 12:18:28,702.702 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 12:18:28,703.703 INFO    ] No camera update needed
[2026-06-12 12:18:28,704.704 INFO    ] Script finished. Safe exiting...
[2026-06-12 12:18:28,706.706 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 12:18:28,708.708 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 12:18:28,711.711 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 12:18:30,753.753 INFO    ] ================================================
[2026-06-12 12:18:30,769.769 INFO    ] Launching Daemon at Fri Jun 12 12:18:30 IST 2026
[2026-06-12 12:18:30,780.780 INFO    ] ================================================
[2026-06-12 12:18:31,172.172 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 12:18:31
[2026-06-12 12:18:31,514.514 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 12:18:31,660.660 INFO    ] Initializing speech engine...
[2026-06-12 12:18:31,674.674 INFO    ] 2026-06-12 12:18:31
[2026-06-12 12:18:31,902.902 INFO    ] 2026-06-12 12:18:31
[2026-06-12 12:18:31,936.936 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 12:18:32,089.089 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 12:18:32,123.123 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 12:18:32,265.265 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 12:18:32,326.326 INFO    ] time= 12/06/2026 12:18:32
[2026-06-12 12:18:32,350.350 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 12:18:32,357.357 INFO    ] Checking for existing commands in stream...
[2026-06-12 12:18:32,423.423 INFO    ] No existing commands found in stream
[2026-06-12 12:18:37,432.432 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 12:18:37,435.435 INFO    ] Waiting 2.73 seconds before fallback handling...
[2026-06-12 12:18:40,518.518 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 12:18:40,519.519 INFO    ] Checking for system updates...
[2026-06-12 12:18:40,540.540 INFO    ] 200
[2026-06-12 12:18:40,542.542 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:18:40,572.572 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 12:18:40,574.574 INFO    ] No update needed
[2026-06-12 12:18:40,575.575 INFO    ] Checking for camera pi updates...
[2026-06-12 12:18:40,595.595 INFO    ] 200
[2026-06-12 12:18:40,596.596 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:18:40,620.620 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 12:18:40,770.770 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 12:18:40,771.771 INFO    ] No camera update needed
[2026-06-12 12:18:40,772.772 INFO    ] Script finished. Safe exiting...
[2026-06-12 12:18:40,774.774 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 12:18:40,776.776 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 12:18:40,779.779 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 12:18:42,818.818 INFO    ] ================================================
[2026-06-12 12:18:42,834.834 INFO    ] Launching Daemon at Fri Jun 12 12:18:42 IST 2026
[2026-06-12 12:18:42,845.845 INFO    ] ================================================
[2026-06-12 12:18:43,201.201 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 12:18:43
[2026-06-12 12:18:43,511.511 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 12:18:43,649.649 INFO    ] Initializing speech engine...
[2026-06-12 12:18:43,654.654 INFO    ] 2026-06-12 12:18:43
[2026-06-12 12:18:43,853.853 INFO    ] 2026-06-12 12:18:43
[2026-06-12 12:18:43,894.894 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 12:18:44,052.052 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 12:18:44,096.096 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 12:18:44,264.264 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 12:18:44,286.286 INFO    ] time= 12/06/2026 12:18:44
[2026-06-12 12:18:44,348.348 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 12:18:44,374.374 INFO    ] Checking for existing commands in stream...
[2026-06-12 12:18:44,452.452 INFO    ] No existing commands found in stream
[2026-06-12 12:18:49,461.461 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 12:18:49,464.464 INFO    ] Waiting 2.16 seconds before fallback handling...
[2026-06-12 12:18:52,311.311 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 12:18:52,312.312 INFO    ] Checking for system updates...
[2026-06-12 12:18:52,332.332 INFO    ] 200
[2026-06-12 12:18:52,334.334 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:18:52,368.368 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 12:18:52,369.369 INFO    ] No update needed
[2026-06-12 12:18:52,371.371 INFO    ] Checking for camera pi updates...
[2026-06-12 12:18:52,390.390 INFO    ] 200
[2026-06-12 12:18:52,392.392 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:18:52,415.415 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 12:18:52,451.451 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 12:18:52,453.453 INFO    ] No camera update needed
[2026-06-12 12:18:52,454.454 INFO    ] Script finished. Safe exiting...
[2026-06-12 12:18:52,455.455 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 12:18:52,458.458 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 12:18:52,461.461 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 12:18:54,500.500 INFO    ] ================================================
[2026-06-12 12:18:54,516.516 INFO    ] Launching Daemon at Fri Jun 12 12:18:54 IST 2026
[2026-06-12 12:18:54,528.528 INFO    ] ================================================
[2026-06-12 12:18:54,861.861 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 12:18:54
[2026-06-12 12:18:55,179.179 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 12:18:55,323.323 INFO    ] Initializing speech engine...
[2026-06-12 12:18:55,328.328 INFO    ] 2026-06-12 12:18:55
[2026-06-12 12:18:55,532.532 INFO    ] 2026-06-12 12:18:55
[2026-06-12 12:18:55,561.561 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 12:18:55,748.748 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 12:18:55,757.757 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 12:18:55,888.888 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 12:18:55,952.952 INFO    ] time= 12/06/2026 12:18:55
[2026-06-12 12:18:55,981.981 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 12:18:55,988.988 INFO    ] Checking for existing commands in stream...
[2026-06-12 12:18:56,055.055 INFO    ] No existing commands found in stream
[2026-06-12 12:19:01,064.064 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 12:19:01,067.067 INFO    ] Waiting 3.77 seconds before fallback handling...
[2026-06-12 12:19:05,219.219 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 12:19:05,220.220 INFO    ] Checking for system updates...
[2026-06-12 12:19:05,241.241 INFO    ] 200
[2026-06-12 12:19:05,243.243 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:19:05,273.273 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 12:19:05,274.274 INFO    ] No update needed
[2026-06-12 12:19:05,276.276 INFO    ] Checking for camera pi updates...
[2026-06-12 12:19:05,295.295 INFO    ] 200
[2026-06-12 12:19:05,296.296 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:19:05,322.322 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 12:19:05,357.357 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 12:19:05,358.358 INFO    ] No camera update needed
[2026-06-12 12:19:05,359.359 INFO    ] Script finished. Safe exiting...
[2026-06-12 12:19:05,361.361 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 12:19:05,364.364 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 12:19:05,366.366 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 12:19:07,407.407 INFO    ] ================================================
[2026-06-12 12:19:07,422.422 INFO    ] Launching Daemon at Fri Jun 12 12:19:07 IST 2026
[2026-06-12 12:19:07,434.434 INFO    ] ================================================
[2026-06-12 12:19:07,799.799 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 12:19:07
[2026-06-12 12:19:08,137.137 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 12:19:08,288.288 INFO    ] Initializing speech engine...
[2026-06-12 12:19:08,294.294 INFO    ] 2026-06-12 12:19:08
[2026-06-12 12:19:08,502.502 INFO    ] 2026-06-12 12:19:08
[2026-06-12 12:19:08,533.533 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 12:19:08,719.719 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 12:19:08,730.730 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 12:19:08,883.883 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 12:19:08,933.933 INFO    ] time= 12/06/2026 12:19:08
[2026-06-12 12:19:08,955.955 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 12:19:08,962.962 INFO    ] Checking for existing commands in stream...
[2026-06-12 12:19:09,030.030 INFO    ] No existing commands found in stream
[2026-06-12 12:19:14,039.039 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 12:19:14,042.042 INFO    ] Waiting 2.49 seconds before fallback handling...
[2026-06-12 12:19:16,938.938 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 12:19:16,940.940 INFO    ] Checking for system updates...
[2026-06-12 12:19:16,961.961 INFO    ] 200
[2026-06-12 12:19:16,963.963 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:19:16,993.993 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 12:19:16,995.995 INFO    ] No update needed
[2026-06-12 12:19:16,996.996 INFO    ] Checking for camera pi updates...
[2026-06-12 12:19:17,017.017 INFO    ] 200
[2026-06-12 12:19:17,018.018 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:19:17,044.044 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 12:19:17,089.089 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 12:19:17,091.091 INFO    ] No camera update needed
[2026-06-12 12:19:17,092.092 INFO    ] Script finished. Safe exiting...
[2026-06-12 12:19:17,093.093 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 12:19:17,096.096 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 12:19:17,099.099 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 12:19:19,139.139 INFO    ] ================================================
[2026-06-12 12:19:19,155.155 INFO    ] Launching Daemon at Fri Jun 12 12:19:19 IST 2026
[2026-06-12 12:19:19,166.166 INFO    ] ================================================
[2026-06-12 12:19:19,527.527 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 12:19:19
[2026-06-12 12:19:19,864.864 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 12:19:20,018.018 INFO    ] Initializing speech engine...
[2026-06-12 12:19:20,022.022 INFO    ] 2026-06-12 12:19:20
[2026-06-12 12:19:20,231.231 INFO    ] 2026-06-12 12:19:20
[2026-06-12 12:19:20,261.261 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 12:19:20,446.446 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 12:19:20,456.456 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 12:19:20,588.588 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 12:19:20,656.656 INFO    ] time= 12/06/2026 12:19:20
[2026-06-12 12:19:20,680.680 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 12:19:20,687.687 INFO    ] Checking for existing commands in stream...
[2026-06-12 12:19:20,779.779 INFO    ] No existing commands found in stream
[2026-06-12 12:19:25,788.788 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 12:19:25,792.792 INFO    ] Waiting 2.10 seconds before fallback handling...
[2026-06-12 12:19:28,257.257 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 12:19:28,258.258 INFO    ] Checking for system updates...
[2026-06-12 12:19:28,280.280 INFO    ] 200
[2026-06-12 12:19:28,281.281 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:19:28,312.312 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 12:19:28,313.313 INFO    ] No update needed
[2026-06-12 12:19:28,314.314 INFO    ] Checking for camera pi updates...
[2026-06-12 12:19:28,334.334 INFO    ] 200
[2026-06-12 12:19:28,335.335 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:19:28,359.359 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 12:19:28,405.405 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 12:19:28,406.406 INFO    ] No camera update needed
[2026-06-12 12:19:28,408.408 INFO    ] Script finished. Safe exiting...
[2026-06-12 12:19:28,409.409 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 12:19:28,412.412 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 12:19:28,415.415 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 12:19:30,455.455 INFO    ] ================================================
[2026-06-12 12:19:30,471.471 INFO    ] Launching Daemon at Fri Jun 12 12:19:30 IST 2026
[2026-06-12 12:19:30,483.483 INFO    ] ================================================
[2026-06-12 12:19:30,836.836 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 12:19:30
[2026-06-12 12:19:31,172.172 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 12:19:31,325.325 INFO    ] Initializing speech engine...
[2026-06-12 12:19:31,330.330 INFO    ] 2026-06-12 12:19:31
[2026-06-12 12:19:31,561.561 INFO    ] 2026-06-12 12:19:31
[2026-06-12 12:19:31,591.591 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 12:19:31,795.795 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 12:19:31,806.806 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 12:19:31,964.964 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 12:19:32,018.018 INFO    ] time= 12/06/2026 12:19:31
[2026-06-12 12:19:32,035.035 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 12:19:32,037.037 INFO    ] Checking for existing commands in stream...
[2026-06-12 12:19:32,094.094 INFO    ] No existing commands found in stream
[2026-06-12 12:19:37,132.132 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 12:19:37,134.134 INFO    ] Waiting 1.78 seconds before fallback handling...
[2026-06-12 12:19:39,286.286 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 12:19:39,288.288 INFO    ] Checking for system updates...
[2026-06-12 12:19:39,308.308 INFO    ] 200
[2026-06-12 12:19:39,310.310 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:19:39,341.341 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 12:19:39,342.342 INFO    ] No update needed
[2026-06-12 12:19:39,343.343 INFO    ] Checking for camera pi updates...
[2026-06-12 12:19:39,364.364 INFO    ] 200
[2026-06-12 12:19:39,365.365 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:19:39,388.388 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 12:19:39,428.428 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 12:19:39,429.429 INFO    ] No camera update needed
[2026-06-12 12:19:39,431.431 INFO    ] Script finished. Safe exiting...
[2026-06-12 12:19:39,432.432 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 12:19:39,435.435 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 12:19:39,438.438 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 12:19:41,476.476 INFO    ] ================================================
[2026-06-12 12:19:41,492.492 INFO    ] Launching Daemon at Fri Jun 12 12:19:41 IST 2026
[2026-06-12 12:19:41,504.504 INFO    ] ================================================
[2026-06-12 12:19:41,853.853 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 12:19:41
[2026-06-12 12:19:42,165.165 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 12:19:42,307.307 INFO    ] Initializing speech engine...
[2026-06-12 12:19:42,312.312 INFO    ] 2026-06-12 12:19:42
[2026-06-12 12:19:42,514.514 INFO    ] 2026-06-12 12:19:42
[2026-06-12 12:19:42,543.543 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 12:19:42,665.665 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 12:19:42,727.727 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 12:19:42,860.860 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 12:19:42,921.921 INFO    ] time= 12/06/2026 12:19:42
[2026-06-12 12:19:42,958.958 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 12:19:42,960.960 INFO    ] Checking for existing commands in stream...
[2026-06-12 12:19:43,031.031 INFO    ] No existing commands found in stream
[2026-06-12 12:19:48,040.040 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 12:19:48,043.043 INFO    ] Waiting 2.85 seconds before fallback handling...
[2026-06-12 12:19:51,257.257 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 12:19:51,259.259 INFO    ] Checking for system updates...
[2026-06-12 12:19:51,280.280 INFO    ] 200
[2026-06-12 12:19:51,282.282 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:19:51,314.314 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 12:19:51,315.315 INFO    ] No update needed
[2026-06-12 12:19:51,316.316 INFO    ] Checking for camera pi updates...
[2026-06-12 12:19:51,336.336 INFO    ] 200
[2026-06-12 12:19:51,337.337 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:19:51,360.360 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 12:19:51,397.397 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 12:19:51,399.399 INFO    ] No camera update needed
[2026-06-12 12:19:51,400.400 INFO    ] Script finished. Safe exiting...
[2026-06-12 12:19:51,401.401 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 12:19:51,404.404 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 12:19:51,407.407 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 12:19:53,446.446 INFO    ] ================================================
[2026-06-12 12:19:53,463.463 INFO    ] Launching Daemon at Fri Jun 12 12:19:53 IST 2026
[2026-06-12 12:19:53,473.473 INFO    ] ================================================
[2026-06-12 12:19:53,791.791 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 12:19:53
[2026-06-12 12:19:54,103.103 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 12:19:54,235.235 INFO    ] Initializing speech engine...
[2026-06-12 12:19:54,240.240 INFO    ] 2026-06-12 12:19:54
[2026-06-12 12:19:54,467.467 INFO    ] 2026-06-12 12:19:54
[2026-06-12 12:19:54,497.497 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 12:19:54,695.695 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 12:19:54,698.698 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 12:19:54,837.837 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 12:19:54,893.893 INFO    ] time= 12/06/2026 12:19:54
[2026-06-12 12:19:54,928.928 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 12:19:54,945.945 INFO    ] Checking for existing commands in stream...
[2026-06-12 12:19:55,022.022 INFO    ] No existing commands found in stream
[2026-06-12 12:20:00,031.031 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 12:20:00,034.034 INFO    ] Waiting 2.37 seconds before fallback handling...
[2026-06-12 12:20:04,021.021 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 12:20:04,024.024 INFO    ] Checking for system updates...
[2026-06-12 12:20:04,061.061 INFO    ] 200
[2026-06-12 12:20:04,063.063 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:20:04,125.125 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 12:20:04,128.128 INFO    ] No update needed
[2026-06-12 12:20:04,130.130 INFO    ] Checking for camera pi updates...
[2026-06-12 12:20:04,150.150 INFO    ] 200
[2026-06-12 12:20:04,151.151 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:20:04,176.176 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 12:20:04,199.199 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 12:20:04,201.201 INFO    ] No camera update needed
[2026-06-12 12:20:04,202.202 INFO    ] Script finished. Safe exiting...
[2026-06-12 12:20:04,204.204 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 12:20:04,206.206 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 12:20:04,209.209 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 12:20:06,239.239 INFO    ] ================================================
[2026-06-12 12:20:06,248.248 INFO    ] Launching Daemon at Fri Jun 12 12:20:06 IST 2026
[2026-06-12 12:20:06,254.254 INFO    ] ================================================
[2026-06-12 12:20:06,554.554 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 12:20:06
[2026-06-12 12:20:06,865.865 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 12:20:07,011.011 INFO    ] Initializing speech engine...
[2026-06-12 12:20:07,016.016 INFO    ] 2026-06-12 12:20:07
[2026-06-12 12:20:07,221.221 INFO    ] 2026-06-12 12:20:07
[2026-06-12 12:20:07,249.249 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 12:20:07,434.434 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 12:20:07,439.439 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 12:20:07,575.575 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 12:20:07,643.643 INFO    ] time= 12/06/2026 12:20:07
[2026-06-12 12:20:07,667.667 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 12:20:07,674.674 INFO    ] Checking for existing commands in stream...
[2026-06-12 12:20:07,745.745 INFO    ] No existing commands found in stream
[2026-06-12 12:20:12,751.751 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 12:20:12,753.753 INFO    ] Waiting 2.75 seconds before fallback handling...
[2026-06-12 12:20:15,857.857 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 12:20:15,859.859 INFO    ] Checking for system updates...
[2026-06-12 12:20:15,879.879 INFO    ] 200
[2026-06-12 12:20:15,881.881 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:20:15,911.911 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 12:20:15,912.912 INFO    ] No update needed
[2026-06-12 12:20:15,914.914 INFO    ] Checking for camera pi updates...
[2026-06-12 12:20:15,935.935 INFO    ] 200
[2026-06-12 12:20:15,936.936 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:20:15,961.961 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 12:20:15,998.998 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 12:20:15,999.999 INFO    ] No camera update needed
[2026-06-12 12:20:16,001.001 INFO    ] Script finished. Safe exiting...
[2026-06-12 12:20:16,002.002 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 12:20:16,005.005 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 12:20:16,007.007 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 12:20:18,047.047 INFO    ] ================================================
[2026-06-12 12:20:18,063.063 INFO    ] Launching Daemon at Fri Jun 12 12:20:18 IST 2026
[2026-06-12 12:20:18,074.074 INFO    ] ================================================
[2026-06-12 12:20:18,405.405 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 12:20:18
[2026-06-12 12:20:18,725.725 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 12:20:18,869.869 INFO    ] Initializing speech engine...
[2026-06-12 12:20:18,874.874 INFO    ] 2026-06-12 12:20:18
[2026-06-12 12:20:19,081.081 INFO    ] 2026-06-12 12:20:19
[2026-06-12 12:20:19,110.110 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 12:20:19,294.294 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 12:20:19,303.303 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 12:20:19,426.426 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 12:20:19,482.482 INFO    ] time= 12/06/2026 12:20:19
[2026-06-12 12:20:19,511.511 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 12:20:19,526.526 INFO    ] Checking for existing commands in stream...
[2026-06-12 12:20:19,598.598 INFO    ] No existing commands found in stream
[2026-06-12 12:20:24,613.613 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 12:20:24,616.616 INFO    ] Waiting 2.63 seconds before fallback handling...
[2026-06-12 12:20:27,644.644 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 12:20:27,646.646 INFO    ] Checking for system updates...
[2026-06-12 12:20:27,667.667 INFO    ] 200
[2026-06-12 12:20:27,668.668 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:20:27,698.698 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 12:20:27,700.700 INFO    ] No update needed
[2026-06-12 12:20:27,701.701 INFO    ] Checking for camera pi updates...
[2026-06-12 12:20:27,721.721 INFO    ] 200
[2026-06-12 12:20:27,722.722 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:20:27,747.747 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 12:20:27,786.786 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 12:20:27,787.787 INFO    ] No camera update needed
[2026-06-12 12:20:27,788.788 INFO    ] Script finished. Safe exiting...
[2026-06-12 12:20:27,790.790 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 12:20:27,793.793 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 12:20:27,795.795 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 12:20:29,834.834 INFO    ] ================================================
[2026-06-12 12:20:29,850.850 INFO    ] Launching Daemon at Fri Jun 12 12:20:29 IST 2026
[2026-06-12 12:20:29,862.862 INFO    ] ================================================
[2026-06-12 12:20:30,247.247 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 12:20:30
[2026-06-12 12:20:30,590.590 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 12:20:30,737.737 INFO    ] Initializing speech engine...
[2026-06-12 12:20:30,747.747 INFO    ] 2026-06-12 12:20:30
[2026-06-12 12:20:30,957.957 INFO    ] 2026-06-12 12:20:30
[2026-06-12 12:20:30,986.986 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 12:20:31,177.177 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 12:20:31,183.183 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 12:20:31,331.331 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 12:20:31,378.378 INFO    ] time= 12/06/2026 12:20:31
[2026-06-12 12:20:31,402.402 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 12:20:31,408.408 INFO    ] Checking for existing commands in stream...
[2026-06-12 12:20:31,475.475 INFO    ] No existing commands found in stream
[2026-06-12 12:20:36,489.489 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 12:20:36,493.493 INFO    ] Waiting 1.37 seconds before fallback handling...
[2026-06-12 12:20:38,239.239 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 12:20:38,243.243 INFO    ] Checking for system updates...
[2026-06-12 12:20:38,281.281 INFO    ] 200
[2026-06-12 12:20:38,284.284 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:20:38,330.330 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 12:20:38,331.331 INFO    ] No update needed
[2026-06-12 12:20:38,333.333 INFO    ] Checking for camera pi updates...
[2026-06-12 12:20:38,355.355 INFO    ] 200
[2026-06-12 12:20:38,357.357 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:20:38,380.380 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 12:20:38,423.423 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 12:20:38,424.424 INFO    ] No camera update needed
[2026-06-12 12:20:38,426.426 INFO    ] Script finished. Safe exiting...
[2026-06-12 12:20:38,427.427 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 12:20:38,431.431 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 12:20:38,434.434 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 12:20:40,474.474 INFO    ] ================================================
[2026-06-12 12:20:40,490.490 INFO    ] Launching Daemon at Fri Jun 12 12:20:40 IST 2026
[2026-06-12 12:20:40,502.502 INFO    ] ================================================
[2026-06-12 12:20:40,871.871 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 12:20:40
[2026-06-12 12:20:41,211.211 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 12:20:41,352.352 INFO    ] Initializing speech engine...
[2026-06-12 12:20:41,365.365 INFO    ] 2026-06-12 12:20:41
[2026-06-12 12:20:41,579.579 INFO    ] 2026-06-12 12:20:41
[2026-06-12 12:20:41,608.608 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 12:20:41,793.793 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 12:20:41,804.804 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 12:20:41,933.933 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 12:20:41,990.990 INFO    ] time= 12/06/2026 12:20:41
[2026-06-12 12:20:42,021.021 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 12:20:42,031.031 INFO    ] Checking for existing commands in stream...
[2026-06-12 12:20:42,103.103 INFO    ] No existing commands found in stream
[2026-06-12 12:20:47,113.113 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 12:20:47,116.116 INFO    ] Waiting 3.65 seconds before fallback handling...
[2026-06-12 12:20:51,132.132 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 12:20:51,133.133 INFO    ] Checking for system updates...
[2026-06-12 12:20:51,154.154 INFO    ] 200
[2026-06-12 12:20:51,155.155 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:20:51,188.188 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 12:20:51,189.189 INFO    ] No update needed
[2026-06-12 12:20:51,190.190 INFO    ] Checking for camera pi updates...
[2026-06-12 12:20:51,211.211 INFO    ] 200
[2026-06-12 12:20:51,213.213 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:20:51,236.236 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 12:20:51,390.390 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 12:20:51,392.392 INFO    ] No camera update needed
[2026-06-12 12:20:51,393.393 INFO    ] Script finished. Safe exiting...
[2026-06-12 12:20:51,395.395 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 12:20:51,398.398 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 12:20:51,401.401 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 12:20:53,442.442 INFO    ] ================================================
[2026-06-12 12:20:53,458.458 INFO    ] Launching Daemon at Fri Jun 12 12:20:53 IST 2026
[2026-06-12 12:20:53,469.469 INFO    ] ================================================
[2026-06-12 12:20:53,838.838 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 12:20:53
[2026-06-12 12:20:54,178.178 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 12:20:54,333.333 INFO    ] Initializing speech engine...
[2026-06-12 12:20:54,337.337 INFO    ] 2026-06-12 12:20:54
[2026-06-12 12:20:54,546.546 INFO    ] 2026-06-12 12:20:54
[2026-06-12 12:20:54,575.575 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 12:20:54,763.763 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 12:20:54,773.773 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 12:20:54,904.904 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 12:20:54,972.972 INFO    ] time= 12/06/2026 12:20:54
[2026-06-12 12:20:54,997.997 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 12:20:55,004.004 INFO    ] Checking for existing commands in stream...
[2026-06-12 12:20:55,071.071 INFO    ] No existing commands found in stream
[2026-06-12 12:21:00,081.081 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 12:21:00,084.084 INFO    ] Waiting 0.83 seconds before fallback handling...
[2026-06-12 12:21:01,336.336 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 12:21:01,343.343 INFO    ] Checking for system updates...
[2026-06-12 12:21:01,371.371 INFO    ] 200
[2026-06-12 12:21:01,373.373 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:21:01,412.412 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 12:21:01,413.413 INFO    ] No update needed
[2026-06-12 12:21:01,415.415 INFO    ] Checking for camera pi updates...
[2026-06-12 12:21:01,442.442 INFO    ] 200
[2026-06-12 12:21:01,444.444 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:21:01,476.476 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 12:21:01,529.529 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 12:21:01,533.533 INFO    ] No camera update needed
[2026-06-12 12:21:01,535.535 INFO    ] Script finished. Safe exiting...
[2026-06-12 12:21:01,538.538 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 12:21:01,545.545 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 12:21:01,550.550 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 12:21:03,590.590 INFO    ] ================================================
[2026-06-12 12:21:03,606.606 INFO    ] Launching Daemon at Fri Jun 12 12:21:03 IST 2026
[2026-06-12 12:21:03,617.617 INFO    ] ================================================
[2026-06-12 12:21:03,987.987 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 12:21:03
[2026-06-12 12:21:04,305.305 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 12:21:04,449.449 INFO    ] Initializing speech engine...
[2026-06-12 12:21:04,454.454 INFO    ] 2026-06-12 12:21:04
[2026-06-12 12:21:04,658.658 INFO    ] 2026-06-12 12:21:04
[2026-06-12 12:21:04,687.687 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 12:21:04,872.872 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 12:21:04,882.882 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 12:21:05,007.007 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 12:21:05,059.059 INFO    ] time= 12/06/2026 12:21:05
[2026-06-12 12:21:05,098.098 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 12:21:05,103.103 INFO    ] Checking for existing commands in stream...
[2026-06-12 12:21:05,187.187 INFO    ] No existing commands found in stream
[2026-06-12 12:21:10,196.196 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 12:21:10,199.199 INFO    ] Waiting 3.79 seconds before fallback handling...
[2026-06-12 12:21:14,374.374 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 12:21:14,376.376 INFO    ] Checking for system updates...
[2026-06-12 12:21:14,398.398 INFO    ] 200
[2026-06-12 12:21:14,399.399 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:21:14,430.430 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 12:21:14,431.431 INFO    ] No update needed
[2026-06-12 12:21:14,433.433 INFO    ] Checking for camera pi updates...
[2026-06-12 12:21:14,454.454 INFO    ] 200
[2026-06-12 12:21:14,455.455 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:21:14,481.481 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 12:21:14,513.513 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 12:21:14,514.514 INFO    ] No camera update needed
[2026-06-12 12:21:14,515.515 INFO    ] Script finished. Safe exiting...
[2026-06-12 12:21:14,517.517 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 12:21:14,520.520 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 12:21:14,523.523 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 12:21:16,563.563 INFO    ] ================================================
[2026-06-12 12:21:16,579.579 INFO    ] Launching Daemon at Fri Jun 12 12:21:16 IST 2026
[2026-06-12 12:21:16,590.590 INFO    ] ================================================
[2026-06-12 12:21:16,970.970 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 12:21:16
[2026-06-12 12:21:17,311.311 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 12:21:17,450.450 INFO    ] Initializing speech engine...
[2026-06-12 12:21:17,464.464 INFO    ] 2026-06-12 12:21:17
[2026-06-12 12:21:17,679.679 INFO    ] 2026-06-12 12:21:17
[2026-06-12 12:21:17,707.707 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 12:21:17,898.898 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 12:21:17,904.904 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 12:21:18,086.086 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 12:21:18,119.119 INFO    ] time= 12/06/2026 12:21:18
[2026-06-12 12:21:18,125.125 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 12:21:18,127.127 INFO    ] Checking for existing commands in stream...
[2026-06-12 12:21:18,195.195 INFO    ] No existing commands found in stream
[2026-06-12 12:21:23,209.209 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 12:21:23,212.212 INFO    ] Waiting 0.59 seconds before fallback handling...
[2026-06-12 12:21:24,198.198 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 12:21:24,200.200 INFO    ] Checking for system updates...
[2026-06-12 12:21:24,221.221 INFO    ] 200
[2026-06-12 12:21:24,223.223 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:21:24,255.255 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 12:21:24,257.257 INFO    ] No update needed
[2026-06-12 12:21:24,259.259 INFO    ] Checking for camera pi updates...
[2026-06-12 12:21:24,278.278 INFO    ] 200
[2026-06-12 12:21:24,280.280 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:21:24,303.303 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 12:21:24,340.340 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 12:21:24,341.341 INFO    ] No camera update needed
[2026-06-12 12:21:24,343.343 INFO    ] Script finished. Safe exiting...
[2026-06-12 12:21:24,344.344 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 12:21:24,347.347 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 12:21:24,351.351 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 12:21:26,391.391 INFO    ] ================================================
[2026-06-12 12:21:26,406.406 INFO    ] Launching Daemon at Fri Jun 12 12:21:26 IST 2026
[2026-06-12 12:21:26,418.418 INFO    ] ================================================
[2026-06-12 12:21:26,763.763 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 12:21:26
[2026-06-12 12:21:27,074.074 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 12:21:27,210.210 INFO    ] Initializing speech engine...
[2026-06-12 12:21:27,219.219 INFO    ] 2026-06-12 12:21:27
[2026-06-12 12:21:27,441.441 INFO    ] 2026-06-12 12:21:27
[2026-06-12 12:21:27,470.470 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 12:21:27,593.593 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 12:21:27,658.658 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 12:21:27,801.801 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 12:21:27,863.863 INFO    ] time= 12/06/2026 12:21:27
[2026-06-12 12:21:27,896.896 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 12:21:27,903.903 INFO    ] Checking for existing commands in stream...
[2026-06-12 12:21:27,970.970 INFO    ] No existing commands found in stream
[2026-06-12 12:21:32,979.979 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 12:21:32,983.983 INFO    ] Waiting 0.36 seconds before fallback handling...
[2026-06-12 12:21:33,724.724 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 12:21:33,726.726 INFO    ] Checking for system updates...
[2026-06-12 12:21:33,746.746 INFO    ] 200
[2026-06-12 12:21:33,748.748 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:21:33,781.781 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 12:21:33,782.782 INFO    ] No update needed
[2026-06-12 12:21:33,784.784 INFO    ] Checking for camera pi updates...
[2026-06-12 12:21:33,803.803 INFO    ] 200
[2026-06-12 12:21:33,805.805 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:21:33,828.828 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 12:21:33,864.864 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 12:21:33,866.866 INFO    ] No camera update needed
[2026-06-12 12:21:33,867.867 INFO    ] Script finished. Safe exiting...
[2026-06-12 12:21:33,868.868 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 12:21:33,872.872 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 12:21:33,875.875 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 12:21:35,915.915 INFO    ] ================================================
[2026-06-12 12:21:35,931.931 INFO    ] Launching Daemon at Fri Jun 12 12:21:35 IST 2026
[2026-06-12 12:21:35,944.944 INFO    ] ================================================
[2026-06-12 12:21:36,272.272 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 12:21:36
[2026-06-12 12:21:36,588.588 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 12:21:36,731.731 INFO    ] Initializing speech engine...
[2026-06-12 12:21:36,736.736 INFO    ] 2026-06-12 12:21:36
[2026-06-12 12:21:36,941.941 INFO    ] 2026-06-12 12:21:36
[2026-06-12 12:21:36,971.971 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 12:21:37,103.103 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 12:21:37,157.157 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 12:21:37,291.291 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 12:21:37,352.352 INFO    ] time= 12/06/2026 12:21:37
[2026-06-12 12:21:37,384.384 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 12:21:37,390.390 INFO    ] Checking for existing commands in stream...
[2026-06-12 12:21:37,457.457 INFO    ] No existing commands found in stream
[2026-06-12 12:21:42,466.466 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 12:21:42,469.469 INFO    ] Waiting 0.59 seconds before fallback handling...
[2026-06-12 12:21:43,421.421 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 12:21:43,423.423 INFO    ] Checking for system updates...
[2026-06-12 12:21:43,445.445 INFO    ] 200
[2026-06-12 12:21:43,447.447 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:21:43,480.480 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 12:21:43,482.482 INFO    ] No update needed
[2026-06-12 12:21:43,483.483 INFO    ] Checking for camera pi updates...
[2026-06-12 12:21:43,503.503 INFO    ] 200
[2026-06-12 12:21:43,504.504 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:21:43,528.528 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 12:21:43,570.570 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 12:21:43,571.571 INFO    ] No camera update needed
[2026-06-12 12:21:43,573.573 INFO    ] Script finished. Safe exiting...
[2026-06-12 12:21:43,574.574 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 12:21:43,577.577 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 12:21:43,580.580 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 12:21:45,618.618 INFO    ] ================================================
[2026-06-12 12:21:45,634.634 INFO    ] Launching Daemon at Fri Jun 12 12:21:45 IST 2026
[2026-06-12 12:21:45,645.645 INFO    ] ================================================
[2026-06-12 12:21:46,016.016 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 12:21:46
[2026-06-12 12:21:46,329.329 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 12:21:46,474.474 INFO    ] Initializing speech engine...
[2026-06-12 12:21:46,479.479 INFO    ] 2026-06-12 12:21:46
[2026-06-12 12:21:46,683.683 INFO    ] 2026-06-12 12:21:46
[2026-06-12 12:21:46,712.712 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 12:21:46,841.841 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 12:21:46,899.899 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 12:21:47,037.037 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 12:21:47,105.105 INFO    ] time= 12/06/2026 12:21:47
[2026-06-12 12:21:47,130.130 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 12:21:47,135.135 INFO    ] Checking for existing commands in stream...
[2026-06-12 12:21:47,203.203 INFO    ] No existing commands found in stream
[2026-06-12 12:21:52,212.212 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 12:21:52,215.215 INFO    ] Waiting 1.51 seconds before fallback handling...
[2026-06-12 12:21:54,111.111 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 12:21:54,112.112 INFO    ] Checking for system updates...
[2026-06-12 12:21:54,133.133 INFO    ] 200
[2026-06-12 12:21:54,135.135 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:21:54,167.167 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 12:21:54,168.168 INFO    ] No update needed
[2026-06-12 12:21:54,170.170 INFO    ] Checking for camera pi updates...
[2026-06-12 12:21:54,192.192 INFO    ] 200
[2026-06-12 12:21:54,193.193 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:21:54,218.218 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 12:21:54,256.256 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 12:21:54,258.258 INFO    ] No camera update needed
[2026-06-12 12:21:54,259.259 INFO    ] Script finished. Safe exiting...
[2026-06-12 12:21:54,260.260 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 12:21:54,263.263 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 12:21:54,266.266 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 12:21:56,304.304 INFO    ] ================================================
[2026-06-12 12:21:56,319.319 INFO    ] Launching Daemon at Fri Jun 12 12:21:56 IST 2026
[2026-06-12 12:21:56,330.330 INFO    ] ================================================
[2026-06-12 12:21:56,685.685 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 12:21:56
[2026-06-12 12:21:57,002.002 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 12:21:57,135.135 INFO    ] Initializing speech engine...
[2026-06-12 12:21:57,143.143 INFO    ] 2026-06-12 12:21:57
[2026-06-12 12:21:57,357.357 INFO    ] 2026-06-12 12:21:57
[2026-06-12 12:21:57,387.387 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 12:21:57,573.573 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 12:21:57,581.581 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 12:21:57,713.713 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 12:21:57,780.780 INFO    ] time= 12/06/2026 12:21:57
[2026-06-12 12:21:57,805.805 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 12:21:57,811.811 INFO    ] Checking for existing commands in stream...
[2026-06-12 12:21:57,876.876 INFO    ] No existing commands found in stream
[2026-06-12 12:22:02,887.887 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 12:22:02,890.890 INFO    ] Waiting 1.35 seconds before fallback handling...
[2026-06-12 12:22:04,582.582 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 12:22:04,583.583 INFO    ] Checking for system updates...
[2026-06-12 12:22:04,604.604 INFO    ] 200
[2026-06-12 12:22:04,605.605 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:22:04,640.640 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 12:22:04,641.641 INFO    ] No update needed
[2026-06-12 12:22:04,642.642 INFO    ] Checking for camera pi updates...
[2026-06-12 12:22:04,663.663 INFO    ] 200
[2026-06-12 12:22:04,664.664 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:22:04,688.688 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 12:22:04,724.724 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 12:22:04,725.725 INFO    ] No camera update needed
[2026-06-12 12:22:04,726.726 INFO    ] Script finished. Safe exiting...
[2026-06-12 12:22:04,728.728 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 12:22:04,731.731 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 12:22:04,733.733 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 12:22:06,773.773 INFO    ] ================================================
[2026-06-12 12:22:06,788.788 INFO    ] Launching Daemon at Fri Jun 12 12:22:06 IST 2026
[2026-06-12 12:22:06,799.799 INFO    ] ================================================
[2026-06-12 12:22:07,148.148 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 12:22:07
[2026-06-12 12:22:07,460.460 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 12:22:07,603.603 INFO    ] Initializing speech engine...
[2026-06-12 12:22:07,608.608 INFO    ] 2026-06-12 12:22:07
[2026-06-12 12:22:07,814.814 INFO    ] 2026-06-12 12:22:07
[2026-06-12 12:22:07,842.842 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 12:22:08,028.028 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 12:22:08,038.038 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 12:22:08,162.162 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 12:22:08,218.218 INFO    ] time= 12/06/2026 12:22:08
[2026-06-12 12:22:08,253.253 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 12:22:08,264.264 INFO    ] Checking for existing commands in stream...
[2026-06-12 12:22:08,360.360 INFO    ] No existing commands found in stream
[2026-06-12 12:22:13,370.370 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 12:22:13,373.373 INFO    ] Waiting 0.02 seconds before fallback handling...
[2026-06-12 12:22:13,734.734 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 12:22:13,736.736 INFO    ] Checking for system updates...
[2026-06-12 12:22:13,760.760 INFO    ] 200
[2026-06-12 12:22:13,762.762 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:22:13,799.799 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 12:22:13,801.801 INFO    ] No update needed
[2026-06-12 12:22:13,802.802 INFO    ] Checking for camera pi updates...
[2026-06-12 12:22:13,824.824 INFO    ] 200
[2026-06-12 12:22:13,825.825 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:22:13,851.851 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 12:22:13,886.886 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 12:22:13,887.887 INFO    ] No camera update needed
[2026-06-12 12:22:13,889.889 INFO    ] Script finished. Safe exiting...
[2026-06-12 12:22:13,891.891 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 12:22:13,894.894 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 12:22:13,898.898 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 12:22:15,923.923 INFO    ] ================================================
[2026-06-12 12:22:15,935.935 INFO    ] Launching Daemon at Fri Jun 12 12:22:15 IST 2026
[2026-06-12 12:22:15,942.942 INFO    ] ================================================
[2026-06-12 12:22:16,284.284 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 12:22:16
[2026-06-12 12:22:16,648.648 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 12:22:16,803.803 INFO    ] Initializing speech engine...
[2026-06-12 12:22:16,807.807 INFO    ] 2026-06-12 12:22:16
[2026-06-12 12:22:17,011.011 INFO    ] 2026-06-12 12:22:16
[2026-06-12 12:22:17,038.038 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 12:22:17,247.247 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 12:22:17,251.251 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 12:22:17,389.389 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 12:22:17,448.448 INFO    ] time= 12/06/2026 12:22:17
[2026-06-12 12:22:17,481.481 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 12:22:17,483.483 INFO    ] Checking for existing commands in stream...
[2026-06-12 12:22:17,555.555 INFO    ] No existing commands found in stream
[2026-06-12 12:22:22,561.561 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 12:22:22,563.563 INFO    ] Waiting 0.48 seconds before fallback handling...
[2026-06-12 12:22:23,398.398 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 12:22:23,400.400 INFO    ] Checking for system updates...
[2026-06-12 12:22:23,429.429 INFO    ] 200
[2026-06-12 12:22:23,431.431 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:22:23,462.462 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 12:22:23,463.463 INFO    ] No update needed
[2026-06-12 12:22:23,465.465 INFO    ] Checking for camera pi updates...
[2026-06-12 12:22:23,488.488 INFO    ] 200
[2026-06-12 12:22:23,489.489 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:22:23,514.514 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 12:22:23,566.566 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 12:22:23,568.568 INFO    ] No camera update needed
[2026-06-12 12:22:23,569.569 INFO    ] Script finished. Safe exiting...
[2026-06-12 12:22:23,571.571 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 12:22:23,574.574 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 12:22:23,577.577 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 12:22:25,616.616 INFO    ] ================================================
[2026-06-12 12:22:25,632.632 INFO    ] Launching Daemon at Fri Jun 12 12:22:25 IST 2026
[2026-06-12 12:22:25,643.643 INFO    ] ================================================
[2026-06-12 12:22:25,989.989 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 12:22:25
[2026-06-12 12:22:26,328.328 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 12:22:26,480.480 INFO    ] Initializing speech engine...
[2026-06-12 12:22:26,486.486 INFO    ] 2026-06-12 12:22:26
[2026-06-12 12:22:26,693.693 INFO    ] 2026-06-12 12:22:26
[2026-06-12 12:22:26,722.722 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 12:22:26,907.907 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 12:22:26,916.916 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 12:22:27,046.046 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 12:22:27,105.105 INFO    ] time= 12/06/2026 12:22:27
[2026-06-12 12:22:27,137.137 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 12:22:27,144.144 INFO    ] Checking for existing commands in stream...
[2026-06-12 12:22:27,211.211 INFO    ] No existing commands found in stream
[2026-06-12 12:22:32,223.223 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 12:22:32,226.226 INFO    ] Waiting 2.98 seconds before fallback handling...
[2026-06-12 12:22:35,573.573 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 12:22:35,574.574 INFO    ] Checking for system updates...
[2026-06-12 12:22:35,595.595 INFO    ] 200
[2026-06-12 12:22:35,597.597 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:22:35,628.628 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 12:22:35,629.629 INFO    ] No update needed
[2026-06-12 12:22:35,631.631 INFO    ] Checking for camera pi updates...
[2026-06-12 12:22:35,651.651 INFO    ] 200
[2026-06-12 12:22:35,652.652 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:22:35,676.676 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 12:22:35,715.715 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 12:22:35,717.717 INFO    ] No camera update needed
[2026-06-12 12:22:35,718.718 INFO    ] Script finished. Safe exiting...
[2026-06-12 12:22:35,720.720 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 12:22:35,723.723 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 12:22:35,726.726 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 12:22:37,765.765 INFO    ] ================================================
[2026-06-12 12:22:37,781.781 INFO    ] Launching Daemon at Fri Jun 12 12:22:37 IST 2026
[2026-06-12 12:22:37,792.792 INFO    ] ================================================
[2026-06-12 12:22:38,154.154 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 12:22:38
[2026-06-12 12:22:38,498.498 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 12:22:38,639.639 INFO    ] Initializing speech engine...
[2026-06-12 12:22:38,643.643 INFO    ] 2026-06-12 12:22:38
[2026-06-12 12:22:38,846.846 INFO    ] 2026-06-12 12:22:38
[2026-06-12 12:22:38,875.875 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 12:22:39,057.057 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 12:22:39,066.066 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 12:22:39,216.216 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 12:22:39,264.264 INFO    ] time= 12/06/2026 12:22:39
[2026-06-12 12:22:39,291.291 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 12:22:39,292.292 INFO    ] Checking for existing commands in stream...
[2026-06-12 12:22:39,358.358 INFO    ] No existing commands found in stream
[2026-06-12 12:22:44,367.367 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 12:22:44,370.370 INFO    ] Waiting 2.27 seconds before fallback handling...
[2026-06-12 12:22:47,085.085 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 12:22:47,086.086 INFO    ] Checking for system updates...
[2026-06-12 12:22:47,107.107 INFO    ] 200
[2026-06-12 12:22:47,108.108 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:22:47,139.139 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 12:22:47,140.140 INFO    ] No update needed
[2026-06-12 12:22:47,141.141 INFO    ] Checking for camera pi updates...
[2026-06-12 12:22:47,162.162 INFO    ] 200
[2026-06-12 12:22:47,163.163 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:22:47,186.186 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 12:22:47,222.222 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 12:22:47,224.224 INFO    ] No camera update needed
[2026-06-12 12:22:47,225.225 INFO    ] Script finished. Safe exiting...
[2026-06-12 12:22:47,226.226 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 12:22:47,229.229 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 12:22:47,232.232 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 12:22:49,271.271 INFO    ] ================================================
[2026-06-12 12:22:49,287.287 INFO    ] Launching Daemon at Fri Jun 12 12:22:49 IST 2026
[2026-06-12 12:22:49,298.298 INFO    ] ================================================
[2026-06-12 12:22:49,628.628 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 12:22:49
[2026-06-12 12:22:49,938.938 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 12:22:50,079.079 INFO    ] Initializing speech engine...
[2026-06-12 12:22:50,084.084 INFO    ] 2026-06-12 12:22:50
[2026-06-12 12:22:50,292.292 INFO    ] 2026-06-12 12:22:50
[2026-06-12 12:22:50,321.321 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 12:22:50,505.505 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 12:22:50,508.508 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 12:22:50,645.645 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 12:22:50,713.713 INFO    ] time= 12/06/2026 12:22:50
[2026-06-12 12:22:50,737.737 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 12:22:50,743.743 INFO    ] Checking for existing commands in stream...
[2026-06-12 12:22:50,810.810 INFO    ] No existing commands found in stream
[2026-06-12 12:22:55,820.820 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 12:22:55,823.823 INFO    ] Waiting 3.27 seconds before fallback handling...
[2026-06-12 12:22:59,444.444 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 12:22:59,445.445 INFO    ] Checking for system updates...
[2026-06-12 12:22:59,466.466 INFO    ] 200
[2026-06-12 12:22:59,467.467 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:22:59,499.499 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 12:22:59,501.501 INFO    ] No update needed
[2026-06-12 12:22:59,502.502 INFO    ] Checking for camera pi updates...
[2026-06-12 12:22:59,523.523 INFO    ] 200
[2026-06-12 12:22:59,524.524 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:22:59,548.548 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 12:22:59,698.698 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 12:22:59,699.699 INFO    ] No camera update needed
[2026-06-12 12:22:59,701.701 INFO    ] Script finished. Safe exiting...
[2026-06-12 12:22:59,702.702 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 12:22:59,705.705 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 12:22:59,708.708 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 12:23:01,743.743 INFO    ] ================================================
[2026-06-12 12:23:01,762.762 INFO    ] Launching Daemon at Fri Jun 12 12:23:01 IST 2026
[2026-06-12 12:23:01,775.775 INFO    ] ================================================
[2026-06-12 12:23:02,125.125 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 12:23:02
[2026-06-12 12:23:02,492.492 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 12:23:02,639.639 INFO    ] Initializing speech engine...
[2026-06-12 12:23:02,643.643 INFO    ] 2026-06-12 12:23:02
[2026-06-12 12:23:02,878.878 INFO    ] 2026-06-12 12:23:02
[2026-06-12 12:23:02,910.910 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 12:23:03,043.043 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 12:23:03,076.076 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 12:23:03,253.253 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 12:23:03,280.280 INFO    ] time= 12/06/2026 12:23:03
[2026-06-12 12:23:03,337.337 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 12:23:03,366.366 INFO    ] Checking for existing commands in stream...
[2026-06-12 12:23:03,442.442 INFO    ] No existing commands found in stream
[2026-06-12 12:23:08,453.453 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 12:23:08,455.455 INFO    ] Waiting 0.24 seconds before fallback handling...
[2026-06-12 12:23:09,044.044 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 12:23:09,046.046 INFO    ] Checking for system updates...
[2026-06-12 12:23:09,066.066 INFO    ] 200
[2026-06-12 12:23:09,068.068 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:23:09,097.097 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 12:23:09,099.099 INFO    ] No update needed
[2026-06-12 12:23:09,100.100 INFO    ] Checking for camera pi updates...
[2026-06-12 12:23:09,120.120 INFO    ] 200
[2026-06-12 12:23:09,121.121 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:23:09,146.146 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 12:23:09,185.185 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 12:23:09,186.186 INFO    ] No camera update needed
[2026-06-12 12:23:09,187.187 INFO    ] Script finished. Safe exiting...
[2026-06-12 12:23:09,188.188 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 12:23:09,191.191 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 12:23:09,194.194 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 12:23:11,233.233 INFO    ] ================================================
[2026-06-12 12:23:11,254.254 INFO    ] Launching Daemon at Fri Jun 12 12:23:11 IST 2026
[2026-06-12 12:23:11,265.265 INFO    ] ================================================
[2026-06-12 12:23:11,603.603 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 12:23:11
[2026-06-12 12:23:11,915.915 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 12:23:12,058.058 INFO    ] Initializing speech engine...
[2026-06-12 12:23:12,063.063 INFO    ] 2026-06-12 12:23:12
[2026-06-12 12:23:12,268.268 INFO    ] 2026-06-12 12:23:12
[2026-06-12 12:23:12,297.297 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 12:23:12,436.436 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 12:23:12,485.485 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 12:23:12,622.622 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 12:23:12,683.683 INFO    ] time= 12/06/2026 12:23:12
[2026-06-12 12:23:12,716.716 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 12:23:12,722.722 INFO    ] Checking for existing commands in stream...
[2026-06-12 12:23:12,790.790 INFO    ] No existing commands found in stream
[2026-06-12 12:23:17,819.819 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 12:23:17,822.822 INFO    ] Waiting 1.20 seconds before fallback handling...
[2026-06-12 12:23:19,439.439 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 12:23:19,441.441 INFO    ] Checking for system updates...
[2026-06-12 12:23:19,464.464 INFO    ] 200
[2026-06-12 12:23:19,466.466 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:23:19,502.502 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 12:23:19,504.504 INFO    ] No update needed
[2026-06-12 12:23:19,505.505 INFO    ] Checking for camera pi updates...
[2026-06-12 12:23:19,527.527 INFO    ] 200
[2026-06-12 12:23:19,528.528 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:23:19,557.557 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 12:23:19,595.595 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 12:23:19,597.597 INFO    ] No camera update needed
[2026-06-12 12:23:19,599.599 INFO    ] Script finished. Safe exiting...
[2026-06-12 12:23:19,600.600 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 12:23:19,604.604 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 12:23:19,608.608 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 12:23:21,640.640 INFO    ] ================================================
[2026-06-12 12:23:21,656.656 INFO    ] Launching Daemon at Fri Jun 12 12:23:21 IST 2026
[2026-06-12 12:23:21,667.667 INFO    ] ================================================
[2026-06-12 12:23:22,019.019 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 12:23:22
[2026-06-12 12:23:22,336.336 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 12:23:22,480.480 INFO    ] Initializing speech engine...
[2026-06-12 12:23:22,486.486 INFO    ] 2026-06-12 12:23:22
[2026-06-12 12:23:22,691.691 INFO    ] 2026-06-12 12:23:22
[2026-06-12 12:23:22,718.718 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 12:23:22,981.981 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 12:23:23,031.031 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 12:23:23,198.198 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 12:23:23,202.202 INFO    ] time= 12/06/2026 12:23:23
[2026-06-12 12:23:23,203.203 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 12:23:23,229.229 INFO    ] Checking for existing commands in stream...
[2026-06-12 12:23:23,325.325 INFO    ] No existing commands found in stream
[2026-06-12 12:23:28,335.335 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 12:23:28,343.343 INFO    ] Waiting 3.28 seconds before fallback handling...
[2026-06-12 12:23:31,973.973 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 12:23:31,975.975 INFO    ] Checking for system updates...
[2026-06-12 12:23:32,002.002 INFO    ] 200
[2026-06-12 12:23:32,004.004 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:23:32,039.039 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 12:23:32,041.041 INFO    ] No update needed
[2026-06-12 12:23:32,043.043 INFO    ] Checking for camera pi updates...
[2026-06-12 12:23:32,065.065 INFO    ] 200
[2026-06-12 12:23:32,067.067 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:23:32,095.095 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 12:23:32,117.117 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 12:23:32,118.118 INFO    ] No camera update needed
[2026-06-12 12:23:32,120.120 INFO    ] Script finished. Safe exiting...
[2026-06-12 12:23:32,122.122 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 12:23:32,126.126 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 12:23:32,129.129 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 12:23:34,170.170 INFO    ] ================================================
[2026-06-12 12:23:34,186.186 INFO    ] Launching Daemon at Fri Jun 12 12:23:34 IST 2026
[2026-06-12 12:23:34,197.197 INFO    ] ================================================
[2026-06-12 12:23:34,553.553 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 12:23:34
[2026-06-12 12:23:34,870.870 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 12:23:35,009.009 INFO    ] Initializing speech engine...
[2026-06-12 12:23:35,019.019 INFO    ] 2026-06-12 12:23:35
[2026-06-12 12:23:35,223.223 INFO    ] 2026-06-12 12:23:35
[2026-06-12 12:23:35,253.253 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 12:23:35,435.435 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 12:23:35,445.445 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 12:23:35,575.575 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 12:23:35,641.641 INFO    ] time= 12/06/2026 12:23:35
[2026-06-12 12:23:35,665.665 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 12:23:35,672.672 INFO    ] Checking for existing commands in stream...
[2026-06-12 12:23:35,738.738 INFO    ] No existing commands found in stream
[2026-06-12 12:23:40,748.748 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 12:23:40,751.751 INFO    ] Waiting 2.58 seconds before fallback handling...
[2026-06-12 12:23:43,665.665 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 12:23:43,667.667 INFO    ] Checking for system updates...
[2026-06-12 12:23:43,693.693 INFO    ] 200
[2026-06-12 12:23:43,695.695 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:23:43,730.730 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 12:23:43,732.732 INFO    ] No update needed
[2026-06-12 12:23:43,733.733 INFO    ] Checking for camera pi updates...
[2026-06-12 12:23:43,756.756 INFO    ] 200
[2026-06-12 12:23:43,757.757 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:23:43,783.783 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 12:23:43,827.827 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 12:23:43,829.829 INFO    ] No camera update needed
[2026-06-12 12:23:43,830.830 INFO    ] Script finished. Safe exiting...
[2026-06-12 12:23:43,831.831 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 12:23:43,835.835 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 12:23:43,837.837 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 12:23:45,875.875 INFO    ] ================================================
[2026-06-12 12:23:45,891.891 INFO    ] Launching Daemon at Fri Jun 12 12:23:45 IST 2026
[2026-06-12 12:23:45,902.902 INFO    ] ================================================
[2026-06-12 12:23:46,289.289 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 12:23:46
[2026-06-12 12:23:46,629.629 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 12:23:46,783.783 INFO    ] Initializing speech engine...
[2026-06-12 12:23:46,789.789 INFO    ] 2026-06-12 12:23:46
[2026-06-12 12:23:46,997.997 INFO    ] 2026-06-12 12:23:46
[2026-06-12 12:23:47,025.025 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 12:23:47,284.284 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 12:23:47,334.334 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 12:23:47,501.501 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 12:23:47,505.505 INFO    ] time= 12/06/2026 12:23:47
[2026-06-12 12:23:47,530.530 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 12:23:47,532.532 INFO    ] Checking for existing commands in stream...
[2026-06-12 12:23:47,628.628 INFO    ] No existing commands found in stream
[2026-06-12 12:23:52,638.638 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 12:23:52,642.642 INFO    ] Waiting 1.81 seconds before fallback handling...
[2026-06-12 12:23:54,800.800 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 12:23:54,802.802 INFO    ] Checking for system updates...
[2026-06-12 12:23:54,823.823 INFO    ] 200
[2026-06-12 12:23:54,824.824 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:23:54,859.859 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 12:23:54,860.860 INFO    ] No update needed
[2026-06-12 12:23:54,862.862 INFO    ] Checking for camera pi updates...
[2026-06-12 12:23:54,883.883 INFO    ] 200
[2026-06-12 12:23:54,885.885 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:23:54,909.909 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 12:23:54,949.949 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 12:23:54,951.951 INFO    ] No camera update needed
[2026-06-12 12:23:54,952.952 INFO    ] Script finished. Safe exiting...
[2026-06-12 12:23:54,953.953 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 12:23:54,956.956 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 12:23:54,959.959 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 12:23:57,997.997 INFO    ] ================================================
[2026-06-12 12:23:57,013.013 INFO    ] Launching Daemon at Fri Jun 12 12:23:57 IST 2026
[2026-06-12 12:23:57,024.024 INFO    ] ================================================
[2026-06-12 12:23:57,356.356 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 12:23:57
[2026-06-12 12:23:57,675.675 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 12:23:57,810.810 INFO    ] Initializing speech engine...
[2026-06-12 12:23:57,815.815 INFO    ] 2026-06-12 12:23:57
[2026-06-12 12:23:58,049.049 INFO    ] 2026-06-12 12:23:58
[2026-06-12 12:23:58,080.080 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 12:23:58,213.213 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 12:23:58,247.247 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 12:23:58,378.378 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 12:23:58,428.428 INFO    ] time= 12/06/2026 12:23:58
[2026-06-12 12:23:58,490.490 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 12:23:58,526.526 INFO    ] Checking for existing commands in stream...
[2026-06-12 12:23:58,639.639 INFO    ] No existing commands found in stream
[2026-06-12 12:24:03,653.653 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 12:24:03,656.656 INFO    ] Waiting 1.73 seconds before fallback handling...
[2026-06-12 12:24:05,740.740 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 12:24:05,741.741 INFO    ] Checking for system updates...
[2026-06-12 12:24:05,762.762 INFO    ] 200
[2026-06-12 12:24:05,763.763 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:24:05,794.794 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 12:24:05,795.795 INFO    ] No update needed
[2026-06-12 12:24:05,796.796 INFO    ] Checking for camera pi updates...
[2026-06-12 12:24:05,817.817 INFO    ] 200
[2026-06-12 12:24:05,819.819 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:24:05,843.843 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 12:24:05,888.888 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 12:24:05,891.891 INFO    ] No camera update needed
[2026-06-12 12:24:05,892.892 INFO    ] Script finished. Safe exiting...
[2026-06-12 12:24:05,894.894 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 12:24:05,898.898 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 12:24:05,903.903 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 12:24:07,942.942 INFO    ] ================================================
[2026-06-12 12:24:07,959.959 INFO    ] Launching Daemon at Fri Jun 12 12:24:07 IST 2026
[2026-06-12 12:24:07,970.970 INFO    ] ================================================
[2026-06-12 12:24:08,309.309 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 12:24:08
[2026-06-12 12:24:08,627.627 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 12:24:08,762.762 INFO    ] Initializing speech engine...
[2026-06-12 12:24:08,766.766 INFO    ] 2026-06-12 12:24:08
[2026-06-12 12:24:08,979.979 INFO    ] 2026-06-12 12:24:08
[2026-06-12 12:24:09,008.008 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 12:24:09,168.168 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 12:24:09,232.232 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 12:24:09,381.381 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 12:24:09,428.428 INFO    ] time= 12/06/2026 12:24:09
[2026-06-12 12:24:09,468.468 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 12:24:09,491.491 INFO    ] Checking for existing commands in stream...
[2026-06-12 12:24:09,571.571 INFO    ] No existing commands found in stream
[2026-06-12 12:24:14,595.595 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 12:24:14,599.599 INFO    ] Waiting 1.99 seconds before fallback handling...
[2026-06-12 12:24:16,962.962 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 12:24:16,963.963 INFO    ] Checking for system updates...
[2026-06-12 12:24:16,984.984 INFO    ] 200
[2026-06-12 12:24:16,985.985 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:24:17,018.018 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 12:24:17,019.019 INFO    ] No update needed
[2026-06-12 12:24:17,021.021 INFO    ] Checking for camera pi updates...
[2026-06-12 12:24:17,042.042 INFO    ] 200
[2026-06-12 12:24:17,043.043 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:24:17,067.067 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 12:24:17,107.107 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 12:24:17,108.108 INFO    ] No camera update needed
[2026-06-12 12:24:17,110.110 INFO    ] Script finished. Safe exiting...
[2026-06-12 12:24:17,111.111 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 12:24:17,114.114 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 12:24:17,117.117 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 12:24:19,156.156 INFO    ] ================================================
[2026-06-12 12:24:19,172.172 INFO    ] Launching Daemon at Fri Jun 12 12:24:19 IST 2026
[2026-06-12 12:24:19,184.184 INFO    ] ================================================
[2026-06-12 12:24:19,557.557 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 12:24:19
[2026-06-12 12:24:19,898.898 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 12:24:20,041.041 INFO    ] Initializing speech engine...
[2026-06-12 12:24:20,054.054 INFO    ] 2026-06-12 12:24:20
[2026-06-12 12:24:20,268.268 INFO    ] 2026-06-12 12:24:20
[2026-06-12 12:24:20,297.297 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 12:24:20,483.483 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 12:24:20,487.487 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 12:24:20,646.646 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 12:24:20,695.695 INFO    ] time= 12/06/2026 12:24:20
[2026-06-12 12:24:20,718.718 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 12:24:20,724.724 INFO    ] Checking for existing commands in stream...
[2026-06-12 12:24:20,816.816 INFO    ] No existing commands found in stream
[2026-06-12 12:24:25,825.825 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 12:24:25,833.833 INFO    ] Waiting 2.18 seconds before fallback handling...
[2026-06-12 12:24:28,364.364 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 12:24:28,366.366 INFO    ] Checking for system updates...
[2026-06-12 12:24:28,388.388 INFO    ] 200
[2026-06-12 12:24:28,390.390 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:24:28,423.423 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 12:24:28,425.425 INFO    ] No update needed
[2026-06-12 12:24:28,427.427 INFO    ] Checking for camera pi updates...
[2026-06-12 12:24:28,448.448 INFO    ] 200
[2026-06-12 12:24:28,450.450 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:24:28,474.474 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 12:24:28,509.509 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 12:24:28,511.511 INFO    ] No camera update needed
[2026-06-12 12:24:28,512.512 INFO    ] Script finished. Safe exiting...
[2026-06-12 12:24:28,514.514 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 12:24:28,517.517 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 12:24:28,520.520 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 12:24:30,559.559 INFO    ] ================================================
[2026-06-12 12:24:30,575.575 INFO    ] Launching Daemon at Fri Jun 12 12:24:30 IST 2026
[2026-06-12 12:24:30,586.586 INFO    ] ================================================
[2026-06-12 12:24:30,946.946 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 12:24:30
[2026-06-12 12:24:31,264.264 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 12:24:31,396.396 INFO    ] Initializing speech engine...
[2026-06-12 12:24:31,409.409 INFO    ] 2026-06-12 12:24:31
[2026-06-12 12:24:31,617.617 INFO    ] 2026-06-12 12:24:31
[2026-06-12 12:24:31,646.646 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 12:24:31,829.829 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 12:24:31,837.837 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 12:24:32,000.000 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 12:24:32,069.069 INFO    ] time= 12/06/2026 12:24:32
[2026-06-12 12:24:32,084.084 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 12:24:32,094.094 INFO    ] Checking for existing commands in stream...
[2026-06-12 12:24:32,207.207 INFO    ] No existing commands found in stream
[2026-06-12 12:24:37,216.216 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 12:24:37,219.219 INFO    ] Waiting 2.07 seconds before fallback handling...
[2026-06-12 12:24:39,667.667 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 12:24:39,668.668 INFO    ] Checking for system updates...
[2026-06-12 12:24:39,690.690 INFO    ] 200
[2026-06-12 12:24:39,691.691 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:24:39,722.722 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 12:24:39,724.724 INFO    ] No update needed
[2026-06-12 12:24:39,725.725 INFO    ] Checking for camera pi updates...
[2026-06-12 12:24:39,745.745 INFO    ] 200
[2026-06-12 12:24:39,746.746 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:24:39,772.772 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 12:24:39,808.808 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 12:24:39,809.809 INFO    ] No camera update needed
[2026-06-12 12:24:39,811.811 INFO    ] Script finished. Safe exiting...
[2026-06-12 12:24:39,812.812 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 12:24:39,815.815 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 12:24:39,818.818 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 12:24:41,859.859 INFO    ] ================================================
[2026-06-12 12:24:41,874.874 INFO    ] Launching Daemon at Fri Jun 12 12:24:41 IST 2026
[2026-06-12 12:24:41,885.885 INFO    ] ================================================
[2026-06-12 12:24:42,242.242 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 12:24:42
[2026-06-12 12:24:42,586.586 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 12:24:42,740.740 INFO    ] Initializing speech engine...
[2026-06-12 12:24:42,745.745 INFO    ] 2026-06-12 12:24:42
[2026-06-12 12:24:42,957.957 INFO    ] 2026-06-12 12:24:42
[2026-06-12 12:24:42,986.986 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 12:24:43,173.173 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 12:24:43,177.177 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 12:24:43,322.322 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 12:24:43,385.385 INFO    ] time= 12/06/2026 12:24:43
[2026-06-12 12:24:43,409.409 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 12:24:43,416.416 INFO    ] Checking for existing commands in stream...
[2026-06-12 12:24:43,481.481 INFO    ] No existing commands found in stream
[2026-06-12 12:24:48,493.493 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 12:24:48,496.496 INFO    ] Waiting 3.15 seconds before fallback handling...
[2026-06-12 12:24:52,041.041 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 12:24:52,042.042 INFO    ] Checking for system updates...
[2026-06-12 12:24:52,065.065 INFO    ] 200
[2026-06-12 12:24:52,066.066 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:24:52,097.097 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 12:24:52,098.098 INFO    ] No update needed
[2026-06-12 12:24:52,100.100 INFO    ] Checking for camera pi updates...
[2026-06-12 12:24:52,121.121 INFO    ] 200
[2026-06-12 12:24:52,123.123 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:24:52,149.149 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 12:24:52,197.197 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 12:24:52,199.199 INFO    ] No camera update needed
[2026-06-12 12:24:52,201.201 INFO    ] Script finished. Safe exiting...
[2026-06-12 12:24:52,202.202 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 12:24:52,205.205 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 12:24:52,208.208 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 12:24:54,250.250 INFO    ] ================================================
[2026-06-12 12:24:54,265.265 INFO    ] Launching Daemon at Fri Jun 12 12:24:54 IST 2026
[2026-06-12 12:24:54,276.276 INFO    ] ================================================
[2026-06-12 12:24:54,653.653 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 12:24:54
[2026-06-12 12:24:54,994.994 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 12:24:55,141.141 INFO    ] Initializing speech engine...
[2026-06-12 12:24:55,153.153 INFO    ] 2026-06-12 12:24:55
[2026-06-12 12:24:55,363.363 INFO    ] 2026-06-12 12:24:55
[2026-06-12 12:24:55,393.393 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 12:24:55,516.516 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 12:24:55,580.580 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 12:24:55,726.726 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 12:24:55,789.789 INFO    ] time= 12/06/2026 12:24:55
[2026-06-12 12:24:55,813.813 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 12:24:55,819.819 INFO    ] Checking for existing commands in stream...
[2026-06-12 12:24:55,911.911 INFO    ] No existing commands found in stream
[2026-06-12 12:25:00,921.921 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 12:25:00,924.924 INFO    ] Waiting 3.40 seconds before fallback handling...
[2026-06-12 12:25:04,652.652 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 12:25:04,654.654 INFO    ] Checking for system updates...
[2026-06-12 12:25:04,675.675 INFO    ] 200
[2026-06-12 12:25:04,677.677 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:25:04,710.710 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 12:25:04,711.711 INFO    ] No update needed
[2026-06-12 12:25:04,713.713 INFO    ] Checking for camera pi updates...
[2026-06-12 12:25:04,735.735 INFO    ] 200
[2026-06-12 12:25:04,737.737 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:25:04,760.760 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 12:25:04,810.810 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 12:25:04,812.812 INFO    ] No camera update needed
[2026-06-12 12:25:04,813.813 INFO    ] Script finished. Safe exiting...
[2026-06-12 12:25:04,814.814 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 12:25:04,818.818 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 12:25:04,821.821 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 12:25:06,860.860 INFO    ] ================================================
[2026-06-12 12:25:06,876.876 INFO    ] Launching Daemon at Fri Jun 12 12:25:06 IST 2026
[2026-06-12 12:25:06,887.887 INFO    ] ================================================
[2026-06-12 12:25:07,260.260 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 12:25:07
[2026-06-12 12:25:07,600.600 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 12:25:07,756.756 INFO    ] Initializing speech engine...
[2026-06-12 12:25:07,761.761 INFO    ] 2026-06-12 12:25:07
[2026-06-12 12:25:07,970.970 INFO    ] 2026-06-12 12:25:07
[2026-06-12 12:25:07,999.999 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 12:25:08,184.184 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 12:25:08,194.194 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 12:25:08,324.324 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 12:25:08,390.390 INFO    ] time= 12/06/2026 12:25:08
[2026-06-12 12:25:08,414.414 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 12:25:08,421.421 INFO    ] Checking for existing commands in stream...
[2026-06-12 12:25:08,492.492 INFO    ] No existing commands found in stream
[2026-06-12 12:25:13,511.511 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 12:25:13,514.514 INFO    ] Waiting 0.21 seconds before fallback handling...
[2026-06-12 12:25:14,112.112 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 12:25:14,113.113 INFO    ] Checking for system updates...
[2026-06-12 12:25:14,136.136 INFO    ] 200
[2026-06-12 12:25:14,137.137 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:25:14,171.171 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 12:25:14,172.172 INFO    ] No update needed
[2026-06-12 12:25:14,174.174 INFO    ] Checking for camera pi updates...
[2026-06-12 12:25:14,195.195 INFO    ] 200
[2026-06-12 12:25:14,197.197 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:25:14,223.223 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 12:25:14,259.259 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 12:25:14,261.261 INFO    ] No camera update needed
[2026-06-12 12:25:14,262.262 INFO    ] Script finished. Safe exiting...
[2026-06-12 12:25:14,263.263 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 12:25:14,267.267 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 12:25:14,270.270 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 12:25:16,311.311 INFO    ] ================================================
[2026-06-12 12:25:16,327.327 INFO    ] Launching Daemon at Fri Jun 12 12:25:16 IST 2026
[2026-06-12 12:25:16,338.338 INFO    ] ================================================
[2026-06-12 12:25:16,700.700 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 12:25:16
[2026-06-12 12:25:17,012.012 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 12:25:17,142.142 INFO    ] Initializing speech engine...
[2026-06-12 12:25:17,147.147 INFO    ] 2026-06-12 12:25:17
[2026-06-12 12:25:17,365.365 INFO    ] 2026-06-12 12:25:17
[2026-06-12 12:25:17,394.394 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 12:25:17,580.580 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 12:25:17,590.590 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 12:25:17,714.714 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 12:25:17,770.770 INFO    ] time= 12/06/2026 12:25:17
[2026-06-12 12:25:17,810.810 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 12:25:17,816.816 INFO    ] Checking for existing commands in stream...
[2026-06-12 12:25:17,887.887 INFO    ] No existing commands found in stream
[2026-06-12 12:25:22,897.897 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 12:25:22,900.900 INFO    ] Waiting 2.89 seconds before fallback handling...
[2026-06-12 12:25:26,145.145 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 12:25:26,146.146 INFO    ] Checking for system updates...
[2026-06-12 12:25:26,167.167 INFO    ] 200
[2026-06-12 12:25:26,169.169 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:25:26,199.199 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 12:25:26,201.201 INFO    ] No update needed
[2026-06-12 12:25:26,203.203 INFO    ] Checking for camera pi updates...
[2026-06-12 12:25:26,223.223 INFO    ] 200
[2026-06-12 12:25:26,224.224 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:25:26,248.248 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 12:25:26,289.289 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 12:25:26,290.290 INFO    ] No camera update needed
[2026-06-12 12:25:26,292.292 INFO    ] Script finished. Safe exiting...
[2026-06-12 12:25:26,293.293 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 12:25:26,297.297 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 12:25:26,300.300 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 12:25:28,341.341 INFO    ] ================================================
[2026-06-12 12:25:28,357.357 INFO    ] Launching Daemon at Fri Jun 12 12:25:28 IST 2026
[2026-06-12 12:25:28,369.369 INFO    ] ================================================
[2026-06-12 12:25:28,726.726 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 12:25:28
[2026-06-12 12:25:29,069.069 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 12:25:29,225.225 INFO    ] Initializing speech engine...
[2026-06-12 12:25:29,231.231 INFO    ] 2026-06-12 12:25:29
[2026-06-12 12:25:29,442.442 INFO    ] 2026-06-12 12:25:29
[2026-06-12 12:25:29,472.472 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 12:25:29,658.658 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 12:25:29,668.668 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 12:25:29,806.806 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 12:25:29,869.869 INFO    ] time= 12/06/2026 12:25:29
[2026-06-12 12:25:29,894.894 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 12:25:29,900.900 INFO    ] Checking for existing commands in stream...
[2026-06-12 12:25:29,968.968 INFO    ] No existing commands found in stream
[2026-06-12 12:25:34,983.983 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 12:25:34,986.986 INFO    ] Waiting 2.99 seconds before fallback handling...
[2026-06-12 12:25:38,348.348 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 12:25:38,350.350 INFO    ] Checking for system updates...
[2026-06-12 12:25:38,371.371 INFO    ] 200
[2026-06-12 12:25:38,373.373 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:25:38,404.404 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 12:25:38,406.406 INFO    ] No update needed
[2026-06-12 12:25:38,407.407 INFO    ] Checking for camera pi updates...
[2026-06-12 12:25:38,428.428 INFO    ] 200
[2026-06-12 12:25:38,430.430 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:25:38,454.454 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 12:25:38,494.494 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 12:25:38,495.495 INFO    ] No camera update needed
[2026-06-12 12:25:38,497.497 INFO    ] Script finished. Safe exiting...
[2026-06-12 12:25:38,498.498 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 12:25:38,501.501 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 12:25:38,504.504 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 12:25:40,534.534 INFO    ] ================================================
[2026-06-12 12:25:40,543.543 INFO    ] Launching Daemon at Fri Jun 12 12:25:40 IST 2026
[2026-06-12 12:25:40,549.549 INFO    ] ================================================
[2026-06-12 12:25:40,901.901 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 12:25:40
[2026-06-12 12:25:41,216.216 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 12:25:41,349.349 INFO    ] Initializing speech engine...
[2026-06-12 12:25:41,352.352 INFO    ] 2026-06-12 12:25:41
[2026-06-12 12:25:41,545.545 INFO    ] 2026-06-12 12:25:41
[2026-06-12 12:25:41,590.590 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 12:25:41,749.749 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 12:25:41,794.794 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 12:25:41,963.963 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 12:25:42,000.000 INFO    ] time= 12/06/2026 12:25:41
[2026-06-12 12:25:42,049.049 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 12:25:42,073.073 INFO    ] Checking for existing commands in stream...
[2026-06-12 12:25:42,151.151 INFO    ] No existing commands found in stream
[2026-06-12 12:25:47,181.181 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 12:25:47,183.183 INFO    ] Waiting 1.11 seconds before fallback handling...
[2026-06-12 12:25:49,991.991 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 12:25:49,995.995 INFO    ] Checking for system updates...
[2026-06-12 12:25:50,032.032 INFO    ] 200
[2026-06-12 12:25:50,035.035 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:25:50,082.082 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 12:25:50,084.084 INFO    ] No update needed
[2026-06-12 12:25:50,085.085 INFO    ] Checking for camera pi updates...
[2026-06-12 12:25:50,105.105 INFO    ] 200
[2026-06-12 12:25:50,107.107 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:25:50,130.130 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 12:25:50,168.168 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 12:25:50,169.169 INFO    ] No camera update needed
[2026-06-12 12:25:50,171.171 INFO    ] Script finished. Safe exiting...
[2026-06-12 12:25:50,172.172 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 12:25:50,175.175 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 12:25:50,178.178 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 12:25:52,219.219 INFO    ] ================================================
[2026-06-12 12:25:52,235.235 INFO    ] Launching Daemon at Fri Jun 12 12:25:52 IST 2026
[2026-06-12 12:25:52,246.246 INFO    ] ================================================
[2026-06-12 12:25:52,582.582 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 12:25:52
[2026-06-12 12:25:52,898.898 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 12:25:53,042.042 INFO    ] Initializing speech engine...
[2026-06-12 12:25:53,047.047 INFO    ] 2026-06-12 12:25:53
[2026-06-12 12:25:53,252.252 INFO    ] 2026-06-12 12:25:53
[2026-06-12 12:25:53,282.282 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 12:25:53,465.465 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 12:25:53,468.468 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 12:25:53,596.596 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 12:25:53,657.657 INFO    ] time= 12/06/2026 12:25:53
[2026-06-12 12:25:53,691.691 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 12:25:53,696.696 INFO    ] Checking for existing commands in stream...
[2026-06-12 12:25:53,791.791 INFO    ] No existing commands found in stream
[2026-06-12 12:25:58,800.800 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 12:25:58,803.803 INFO    ] Waiting 1.66 seconds before fallback handling...
[2026-06-12 12:26:00,819.819 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 12:26:00,820.820 INFO    ] Checking for system updates...
[2026-06-12 12:26:00,841.841 INFO    ] 200
[2026-06-12 12:26:00,843.843 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:26:00,873.873 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 12:26:00,874.874 INFO    ] No update needed
[2026-06-12 12:26:00,875.875 INFO    ] Checking for camera pi updates...
[2026-06-12 12:26:00,895.895 INFO    ] 200
[2026-06-12 12:26:00,896.896 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:26:00,921.921 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 12:26:00,977.977 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 12:26:00,978.978 INFO    ] No camera update needed
[2026-06-12 12:26:00,979.979 INFO    ] Script finished. Safe exiting...
[2026-06-12 12:26:00,981.981 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 12:26:00,984.984 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 12:26:00,986.986 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 12:26:03,020.020 INFO    ] ================================================
[2026-06-12 12:26:03,035.035 INFO    ] Launching Daemon at Fri Jun 12 12:26:03 IST 2026
[2026-06-12 12:26:03,046.046 INFO    ] ================================================
[2026-06-12 12:26:03,380.380 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 12:26:03
[2026-06-12 12:26:03,691.691 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 12:26:03,822.822 INFO    ] Initializing speech engine...
[2026-06-12 12:26:03,830.830 INFO    ] 2026-06-12 12:26:03
[2026-06-12 12:26:04,041.041 INFO    ] 2026-06-12 12:26:04
[2026-06-12 12:26:04,070.070 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 12:26:04,256.256 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 12:26:04,259.259 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 12:26:04,395.395 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 12:26:04,461.461 INFO    ] time= 12/06/2026 12:26:04
[2026-06-12 12:26:04,484.484 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 12:26:04,491.491 INFO    ] Checking for existing commands in stream...
[2026-06-12 12:26:04,558.558 INFO    ] No existing commands found in stream
[2026-06-12 12:26:09,572.572 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 12:26:09,575.575 INFO    ] Waiting 3.45 seconds before fallback handling...
[2026-06-12 12:26:13,413.413 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 12:26:13,414.414 INFO    ] Checking for system updates...
[2026-06-12 12:26:13,436.436 INFO    ] 200
[2026-06-12 12:26:13,437.437 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:26:13,468.468 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 12:26:13,470.470 INFO    ] No update needed
[2026-06-12 12:26:13,471.471 INFO    ] Checking for camera pi updates...
[2026-06-12 12:26:13,493.493 INFO    ] 200
[2026-06-12 12:26:13,494.494 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:26:13,521.521 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 12:26:13,560.560 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 12:26:13,561.561 INFO    ] No camera update needed
[2026-06-12 12:26:13,563.563 INFO    ] Script finished. Safe exiting...
[2026-06-12 12:26:13,564.564 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 12:26:13,568.568 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 12:26:13,571.571 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 12:26:15,609.609 INFO    ] ================================================
[2026-06-12 12:26:15,624.624 INFO    ] Launching Daemon at Fri Jun 12 12:26:15 IST 2026
[2026-06-12 12:26:15,634.634 INFO    ] ================================================
[2026-06-12 12:26:15,981.981 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 12:26:15
[2026-06-12 12:26:16,299.299 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 12:26:16,442.442 INFO    ] Initializing speech engine...
[2026-06-12 12:26:16,448.448 INFO    ] 2026-06-12 12:26:16
[2026-06-12 12:26:16,651.651 INFO    ] 2026-06-12 12:26:16
[2026-06-12 12:26:16,680.680 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 12:26:16,862.862 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 12:26:16,866.866 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 12:26:17,001.001 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 12:26:17,060.060 INFO    ] time= 12/06/2026 12:26:17
[2026-06-12 12:26:17,092.092 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 12:26:17,094.094 INFO    ] Checking for existing commands in stream...
[2026-06-12 12:26:17,165.165 INFO    ] No existing commands found in stream
[2026-06-12 12:26:22,179.179 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 12:26:22,182.182 INFO    ] Waiting 2.48 seconds before fallback handling...
[2026-06-12 12:26:25,044.044 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 12:26:25,046.046 INFO    ] Checking for system updates...
[2026-06-12 12:26:25,066.066 INFO    ] 200
[2026-06-12 12:26:25,068.068 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:26:25,098.098 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 12:26:25,099.099 INFO    ] No update needed
[2026-06-12 12:26:25,101.101 INFO    ] Checking for camera pi updates...
[2026-06-12 12:26:25,120.120 INFO    ] 200
[2026-06-12 12:26:25,121.121 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:26:25,145.145 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 12:26:25,189.189 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 12:26:25,191.191 INFO    ] No camera update needed
[2026-06-12 12:26:25,192.192 INFO    ] Script finished. Safe exiting...
[2026-06-12 12:26:25,194.194 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 12:26:25,196.196 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 12:26:25,199.199 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 12:26:27,239.239 INFO    ] ================================================
[2026-06-12 12:26:27,254.254 INFO    ] Launching Daemon at Fri Jun 12 12:26:27 IST 2026
[2026-06-12 12:26:27,265.265 INFO    ] ================================================
[2026-06-12 12:26:27,597.597 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 12:26:27
[2026-06-12 12:26:27,908.908 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 12:26:28,038.038 INFO    ] Initializing speech engine...
[2026-06-12 12:26:28,046.046 INFO    ] 2026-06-12 12:26:28
[2026-06-12 12:26:28,261.261 INFO    ] 2026-06-12 12:26:28
[2026-06-12 12:26:28,289.289 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 12:26:28,474.474 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 12:26:28,484.484 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 12:26:28,614.614 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 12:26:28,668.668 INFO    ] time= 12/06/2026 12:26:28
[2026-06-12 12:26:28,706.706 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 12:26:28,708.708 INFO    ] Checking for existing commands in stream...
[2026-06-12 12:26:28,779.779 INFO    ] No existing commands found in stream
[2026-06-12 12:26:33,790.790 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 12:26:33,792.792 INFO    ] Waiting 0.06 seconds before fallback handling...
[2026-06-12 12:26:34,197.197 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 12:26:34,198.198 INFO    ] Checking for system updates...
[2026-06-12 12:26:34,220.220 INFO    ] 200
[2026-06-12 12:26:34,222.222 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:26:34,255.255 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 12:26:34,256.256 INFO    ] No update needed
[2026-06-12 12:26:34,258.258 INFO    ] Checking for camera pi updates...
[2026-06-12 12:26:34,277.277 INFO    ] 200
[2026-06-12 12:26:34,278.278 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:26:34,301.301 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 12:26:34,340.340 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 12:26:34,342.342 INFO    ] No camera update needed
[2026-06-12 12:26:34,343.343 INFO    ] Script finished. Safe exiting...
[2026-06-12 12:26:34,344.344 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 12:26:34,347.347 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 12:26:34,350.350 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 12:26:36,390.390 INFO    ] ================================================
[2026-06-12 12:26:36,405.405 INFO    ] Launching Daemon at Fri Jun 12 12:26:36 IST 2026
[2026-06-12 12:26:36,416.416 INFO    ] ================================================
[2026-06-12 12:26:36,777.777 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 12:26:36
[2026-06-12 12:26:37,088.088 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 12:26:37,231.231 INFO    ] Initializing speech engine...
[2026-06-12 12:26:37,236.236 INFO    ] 2026-06-12 12:26:37
[2026-06-12 12:26:37,441.441 INFO    ] 2026-06-12 12:26:37
[2026-06-12 12:26:37,470.470 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 12:26:37,594.594 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 12:26:37,652.652 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 12:26:37,794.794 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 12:26:37,861.861 INFO    ] time= 12/06/2026 12:26:37
[2026-06-12 12:26:37,890.890 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 12:26:37,892.892 INFO    ] Checking for existing commands in stream...
[2026-06-12 12:26:37,964.964 INFO    ] No existing commands found in stream
[2026-06-12 12:26:42,973.973 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 12:26:42,976.976 INFO    ] Waiting 0.09 seconds before fallback handling...
[2026-06-12 12:26:43,452.452 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 12:26:43,454.454 INFO    ] Checking for system updates...
[2026-06-12 12:26:43,475.475 INFO    ] 200
[2026-06-12 12:26:43,477.477 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:26:43,509.509 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 12:26:43,511.511 INFO    ] No update needed
[2026-06-12 12:26:43,513.513 INFO    ] Checking for camera pi updates...
[2026-06-12 12:26:43,532.532 INFO    ] 200
[2026-06-12 12:26:43,534.534 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:26:43,558.558 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 12:26:43,595.595 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 12:26:43,596.596 INFO    ] No camera update needed
[2026-06-12 12:26:43,597.597 INFO    ] Script finished. Safe exiting...
[2026-06-12 12:26:43,598.598 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 12:26:43,602.602 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 12:26:43,604.604 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 12:26:45,644.644 INFO    ] ================================================
[2026-06-12 12:26:45,659.659 INFO    ] Launching Daemon at Fri Jun 12 12:26:45 IST 2026
[2026-06-12 12:26:45,669.669 INFO    ] ================================================
[2026-06-12 12:26:46,030.030 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 12:26:46
[2026-06-12 12:26:46,363.363 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 12:26:46,492.492 INFO    ] Initializing speech engine...
[2026-06-12 12:26:46,495.495 INFO    ] 2026-06-12 12:26:46
[2026-06-12 12:26:46,714.714 INFO    ] 2026-06-12 12:26:46
[2026-06-12 12:26:46,743.743 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 12:26:46,867.867 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 12:26:46,930.930 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 12:26:47,070.070 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 12:26:47,134.134 INFO    ] time= 12/06/2026 12:26:47
[2026-06-12 12:26:47,162.162 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 12:26:47,169.169 INFO    ] Checking for existing commands in stream...
[2026-06-12 12:26:47,236.236 INFO    ] No existing commands found in stream
[2026-06-12 12:26:52,245.245 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 12:26:52,248.248 INFO    ] Waiting 3.31 seconds before fallback handling...
[2026-06-12 12:26:55,932.932 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 12:26:55,933.933 INFO    ] Checking for system updates...
[2026-06-12 12:26:55,954.954 INFO    ] 200
[2026-06-12 12:26:55,955.955 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:26:55,987.987 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 12:26:55,989.989 INFO    ] No update needed
[2026-06-12 12:26:55,990.990 INFO    ] Checking for camera pi updates...
[2026-06-12 12:26:56,010.010 INFO    ] 200
[2026-06-12 12:26:56,011.011 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:26:56,034.034 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 12:26:56,070.070 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 12:26:56,071.071 INFO    ] No camera update needed
[2026-06-12 12:26:56,073.073 INFO    ] Script finished. Safe exiting...
[2026-06-12 12:26:56,074.074 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 12:26:56,077.077 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 12:26:56,079.079 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 12:26:58,120.120 INFO    ] ================================================
[2026-06-12 12:26:58,136.136 INFO    ] Launching Daemon at Fri Jun 12 12:26:58 IST 2026
[2026-06-12 12:26:58,146.146 INFO    ] ================================================
[2026-06-12 12:26:58,479.479 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 12:26:58
[2026-06-12 12:26:58,791.791 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 12:26:58,921.921 INFO    ] Initializing speech engine...
[2026-06-12 12:26:58,925.925 INFO    ] 2026-06-12 12:26:58
[2026-06-12 12:26:59,144.144 INFO    ] 2026-06-12 12:26:59
[2026-06-12 12:26:59,173.173 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 12:26:59,361.361 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 12:26:59,370.370 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 12:26:59,499.499 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 12:26:59,557.557 INFO    ] time= 12/06/2026 12:26:59
[2026-06-12 12:26:59,593.593 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 12:26:59,599.599 INFO    ] Checking for existing commands in stream...
[2026-06-12 12:26:59,670.670 INFO    ] No existing commands found in stream
[2026-06-12 12:27:04,680.680 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 12:27:04,683.683 INFO    ] Waiting 3.77 seconds before fallback handling...
[2026-06-12 12:27:08,853.853 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 12:27:08,854.854 INFO    ] Checking for system updates...
[2026-06-12 12:27:08,876.876 INFO    ] 200
[2026-06-12 12:27:08,878.878 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:27:08,908.908 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 12:27:08,909.909 INFO    ] No update needed
[2026-06-12 12:27:08,911.911 INFO    ] Checking for camera pi updates...
[2026-06-12 12:27:08,930.930 INFO    ] 200
[2026-06-12 12:27:08,932.932 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:27:08,955.955 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 12:27:09,097.097 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 12:27:09,099.099 INFO    ] No camera update needed
[2026-06-12 12:27:09,100.100 INFO    ] Script finished. Safe exiting...
[2026-06-12 12:27:09,101.101 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 12:27:09,104.104 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 12:27:09,107.107 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 12:27:11,148.148 INFO    ] ================================================
[2026-06-12 12:27:11,164.164 INFO    ] Launching Daemon at Fri Jun 12 12:27:11 IST 2026
[2026-06-12 12:27:11,174.174 INFO    ] ================================================
[2026-06-12 12:27:11,505.505 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 12:27:11
[2026-06-12 12:27:11,822.822 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 12:27:11,958.958 INFO    ] Initializing speech engine...
[2026-06-12 12:27:11,962.962 INFO    ] 2026-06-12 12:27:11
[2026-06-12 12:27:12,194.194 INFO    ] 2026-06-12 12:27:12
[2026-06-12 12:27:12,226.226 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 12:27:12,362.362 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 12:27:12,399.399 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 12:27:12,553.553 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 12:27:12,582.582 INFO    ] time= 12/06/2026 12:27:12
[2026-06-12 12:27:12,649.649 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 12:27:12,684.684 INFO    ] Checking for existing commands in stream...
[2026-06-12 12:27:12,763.763 INFO    ] No existing commands found in stream
[2026-06-12 12:27:17,773.773 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 12:27:17,776.776 INFO    ] Waiting 2.18 seconds before fallback handling...
[2026-06-12 12:27:20,332.332 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 12:27:20,334.334 INFO    ] Checking for system updates...
[2026-06-12 12:27:20,354.354 INFO    ] 200
[2026-06-12 12:27:20,355.355 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:27:20,385.385 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 12:27:20,387.387 INFO    ] No update needed
[2026-06-12 12:27:20,388.388 INFO    ] Checking for camera pi updates...
[2026-06-12 12:27:20,409.409 INFO    ] 200
[2026-06-12 12:27:20,410.410 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:27:20,433.433 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 12:27:20,474.474 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 12:27:20,476.476 INFO    ] No camera update needed
[2026-06-12 12:27:20,477.477 INFO    ] Script finished. Safe exiting...
[2026-06-12 12:27:20,478.478 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 12:27:20,481.481 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 12:27:20,484.484 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 12:27:22,523.523 INFO    ] ================================================
[2026-06-12 12:27:22,538.538 INFO    ] Launching Daemon at Fri Jun 12 12:27:22 IST 2026
[2026-06-12 12:27:22,549.549 INFO    ] ================================================
[2026-06-12 12:27:22,903.903 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 12:27:22
[2026-06-12 12:27:23,243.243 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 12:27:23,398.398 INFO    ] Initializing speech engine...
[2026-06-12 12:27:23,405.405 INFO    ] 2026-06-12 12:27:23
[2026-06-12 12:27:23,608.608 INFO    ] 2026-06-12 12:27:23
[2026-06-12 12:27:23,637.637 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 12:27:23,821.821 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 12:27:23,831.831 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 12:27:23,958.958 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 12:27:24,023.023 INFO    ] time= 12/06/2026 12:27:23
[2026-06-12 12:27:24,050.050 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 12:27:24,052.052 INFO    ] Checking for existing commands in stream...
[2026-06-12 12:27:24,123.123 INFO    ] No existing commands found in stream
[2026-06-12 12:27:29,137.137 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 12:27:29,140.140 INFO    ] Waiting 2.34 seconds before fallback handling...
[2026-06-12 12:27:31,847.847 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 12:27:31,849.849 INFO    ] Checking for system updates...
[2026-06-12 12:27:31,873.873 INFO    ] 200
[2026-06-12 12:27:31,874.874 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:27:31,916.916 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 12:27:31,918.918 INFO    ] No update needed
[2026-06-12 12:27:31,920.920 INFO    ] Checking for camera pi updates...
[2026-06-12 12:27:31,947.947 INFO    ] 200
[2026-06-12 12:27:31,948.948 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:27:31,975.975 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 12:27:32,002.002 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 12:27:32,004.004 INFO    ] No camera update needed
[2026-06-12 12:27:32,006.006 INFO    ] Script finished. Safe exiting...
[2026-06-12 12:27:32,007.007 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 12:27:32,012.012 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 12:27:32,015.015 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 12:27:34,054.054 INFO    ] ================================================
[2026-06-12 12:27:34,070.070 INFO    ] Launching Daemon at Fri Jun 12 12:27:34 IST 2026
[2026-06-12 12:27:34,081.081 INFO    ] ================================================
[2026-06-12 12:27:34,438.438 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 12:27:34
[2026-06-12 12:27:34,749.749 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 12:27:34,891.891 INFO    ] Initializing speech engine...
[2026-06-12 12:27:34,896.896 INFO    ] 2026-06-12 12:27:34
[2026-06-12 12:27:35,101.101 INFO    ] 2026-06-12 12:27:35
[2026-06-12 12:27:35,130.130 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 12:27:35,274.274 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 12:27:35,323.323 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 12:27:35,455.455 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 12:27:35,511.511 INFO    ] time= 12/06/2026 12:27:35
[2026-06-12 12:27:35,555.555 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 12:27:35,556.556 INFO    ] Checking for existing commands in stream...
[2026-06-12 12:27:35,631.631 INFO    ] No existing commands found in stream
[2026-06-12 12:27:40,642.642 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 12:27:40,644.644 INFO    ] Waiting 3.36 seconds before fallback handling...
[2026-06-12 12:27:44,381.381 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 12:27:44,383.383 INFO    ] Checking for system updates...
[2026-06-12 12:27:44,405.405 INFO    ] 200
[2026-06-12 12:27:44,407.407 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:27:44,443.443 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 12:27:44,444.444 INFO    ] No update needed
[2026-06-12 12:27:44,446.446 INFO    ] Checking for camera pi updates...
[2026-06-12 12:27:44,469.469 INFO    ] 200
[2026-06-12 12:27:44,471.471 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:27:44,495.495 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 12:27:44,534.534 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 12:27:44,535.535 INFO    ] No camera update needed
[2026-06-12 12:27:44,537.537 INFO    ] Script finished. Safe exiting...
[2026-06-12 12:27:44,538.538 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 12:27:44,541.541 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 12:27:44,544.544 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 12:27:46,584.584 INFO    ] ================================================
[2026-06-12 12:27:46,599.599 INFO    ] Launching Daemon at Fri Jun 12 12:27:46 IST 2026
[2026-06-12 12:27:46,609.609 INFO    ] ================================================
[2026-06-12 12:27:46,976.976 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 12:27:46
[2026-06-12 12:27:47,292.292 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 12:27:47,436.436 INFO    ] Initializing speech engine...
[2026-06-12 12:27:47,441.441 INFO    ] 2026-06-12 12:27:47
[2026-06-12 12:27:47,644.644 INFO    ] 2026-06-12 12:27:47
[2026-06-12 12:27:47,673.673 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 12:27:47,856.856 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 12:27:47,866.866 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 12:27:47,991.991 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 12:27:48,054.054 INFO    ] time= 12/06/2026 12:27:47
[2026-06-12 12:27:48,086.086 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 12:27:48,088.088 INFO    ] Checking for existing commands in stream...
[2026-06-12 12:27:48,159.159 INFO    ] No existing commands found in stream
[2026-06-12 12:27:53,173.173 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 12:27:53,176.176 INFO    ] Waiting 2.08 seconds before fallback handling...
[2026-06-12 12:27:55,610.610 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 12:27:55,611.611 INFO    ] Checking for system updates...
[2026-06-12 12:27:55,632.632 INFO    ] 200
[2026-06-12 12:27:55,634.634 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:27:55,665.665 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 12:27:55,666.666 INFO    ] No update needed
[2026-06-12 12:27:55,668.668 INFO    ] Checking for camera pi updates...
[2026-06-12 12:27:55,687.687 INFO    ] 200
[2026-06-12 12:27:55,688.688 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:27:55,713.713 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 12:27:55,749.749 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 12:27:55,750.750 INFO    ] No camera update needed
[2026-06-12 12:27:55,752.752 INFO    ] Script finished. Safe exiting...
[2026-06-12 12:27:55,753.753 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 12:27:55,756.756 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 12:27:55,759.759 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 12:27:57,799.799 INFO    ] ================================================
[2026-06-12 12:27:57,814.814 INFO    ] Launching Daemon at Fri Jun 12 12:27:57 IST 2026
[2026-06-12 12:27:57,825.825 INFO    ] ================================================
[2026-06-12 12:27:58,172.172 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 12:27:58
[2026-06-12 12:27:58,489.489 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 12:27:58,641.641 INFO    ] Initializing speech engine...
[2026-06-12 12:27:58,646.646 INFO    ] 2026-06-12 12:27:58
[2026-06-12 12:27:58,857.857 INFO    ] 2026-06-12 12:27:58
[2026-06-12 12:27:58,886.886 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 12:27:59,073.073 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 12:27:59,083.083 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 12:27:59,215.215 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 12:27:59,284.284 INFO    ] time= 12/06/2026 12:27:59
[2026-06-12 12:27:59,309.309 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 12:27:59,316.316 INFO    ] Checking for existing commands in stream...
[2026-06-12 12:27:59,383.383 INFO    ] No existing commands found in stream
[2026-06-12 12:28:04,392.392 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 12:28:04,396.396 INFO    ] Waiting 2.60 seconds before fallback handling...
[2026-06-12 12:28:07,363.363 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 12:28:07,365.365 INFO    ] Checking for system updates...
[2026-06-12 12:28:07,385.385 INFO    ] 200
[2026-06-12 12:28:07,387.387 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:28:07,417.417 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 12:28:07,419.419 INFO    ] No update needed
[2026-06-12 12:28:07,421.421 INFO    ] Checking for camera pi updates...
[2026-06-12 12:28:07,440.440 INFO    ] 200
[2026-06-12 12:28:07,442.442 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:28:07,465.465 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 12:28:07,504.504 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 12:28:07,506.506 INFO    ] No camera update needed
[2026-06-12 12:28:07,507.507 INFO    ] Script finished. Safe exiting...
[2026-06-12 12:28:07,509.509 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 12:28:07,512.512 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 12:28:07,515.515 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 12:28:09,555.555 INFO    ] ================================================
[2026-06-12 12:28:09,571.571 INFO    ] Launching Daemon at Fri Jun 12 12:28:09 IST 2026
[2026-06-12 12:28:09,583.583 INFO    ] ================================================
[2026-06-12 12:28:09,926.926 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 12:28:09
[2026-06-12 12:28:10,239.239 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 12:28:10,371.371 INFO    ] Initializing speech engine...
[2026-06-12 12:28:10,374.374 INFO    ] 2026-06-12 12:28:10
[2026-06-12 12:28:10,593.593 INFO    ] 2026-06-12 12:28:10
[2026-06-12 12:28:10,622.622 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 12:28:10,808.808 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 12:28:10,812.812 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 12:28:10,950.950 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 12:28:11,017.017 INFO    ] time= 12/06/2026 12:28:10
[2026-06-12 12:28:11,042.042 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 12:28:11,048.048 INFO    ] Checking for existing commands in stream...
[2026-06-12 12:28:11,115.115 INFO    ] No existing commands found in stream
[2026-06-12 12:28:16,125.125 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 12:28:16,128.128 INFO    ] Waiting 0.53 seconds before fallback handling...
[2026-06-12 12:28:17,059.059 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 12:28:17,061.061 INFO    ] Checking for system updates...
[2026-06-12 12:28:17,082.082 INFO    ] 200
[2026-06-12 12:28:17,083.083 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:28:17,114.114 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 12:28:17,115.115 INFO    ] No update needed
[2026-06-12 12:28:17,116.116 INFO    ] Checking for camera pi updates...
[2026-06-12 12:28:17,136.136 INFO    ] 200
[2026-06-12 12:28:17,138.138 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:28:17,161.161 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 12:28:17,197.197 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 12:28:17,199.199 INFO    ] No camera update needed
[2026-06-12 12:28:17,200.200 INFO    ] Script finished. Safe exiting...
[2026-06-12 12:28:17,202.202 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 12:28:17,205.205 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 12:28:17,208.208 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 12:28:19,248.248 INFO    ] ================================================
[2026-06-12 12:28:19,264.264 INFO    ] Launching Daemon at Fri Jun 12 12:28:19 IST 2026
[2026-06-12 12:28:19,275.275 INFO    ] ================================================
[2026-06-12 12:28:19,623.623 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 12:28:19
[2026-06-12 12:28:19,937.937 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 12:28:20,071.071 INFO    ] Initializing speech engine...
[2026-06-12 12:28:20,083.083 INFO    ] 2026-06-12 12:28:20
[2026-06-12 12:28:20,291.291 INFO    ] 2026-06-12 12:28:20
[2026-06-12 12:28:20,321.321 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 12:28:20,506.506 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 12:28:20,510.510 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 12:28:20,644.644 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 12:28:20,702.702 INFO    ] time= 12/06/2026 12:28:20
[2026-06-12 12:28:20,741.741 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 12:28:20,743.743 INFO    ] Checking for existing commands in stream...
[2026-06-12 12:28:20,816.816 INFO    ] No existing commands found in stream
[2026-06-12 12:28:25,825.825 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 12:28:25,827.827 INFO    ] Waiting 1.92 seconds before fallback handling...
[2026-06-12 12:28:28,156.156 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 12:28:28,158.158 INFO    ] Checking for system updates...
[2026-06-12 12:28:28,179.179 INFO    ] 200
[2026-06-12 12:28:28,181.181 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:28:28,211.211 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 12:28:28,212.212 INFO    ] No update needed
[2026-06-12 12:28:28,214.214 INFO    ] Checking for camera pi updates...
[2026-06-12 12:28:28,235.235 INFO    ] 200
[2026-06-12 12:28:28,236.236 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:28:28,261.261 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 12:28:28,296.296 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 12:28:28,297.297 INFO    ] No camera update needed
[2026-06-12 12:28:28,299.299 INFO    ] Script finished. Safe exiting...
[2026-06-12 12:28:28,300.300 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 12:28:28,303.303 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 12:28:28,306.306 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 12:28:30,344.344 INFO    ] ================================================
[2026-06-12 12:28:30,360.360 INFO    ] Launching Daemon at Fri Jun 12 12:28:30 IST 2026
[2026-06-12 12:28:30,371.371 INFO    ] ================================================
[2026-06-12 12:28:30,728.728 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 12:28:30
[2026-06-12 12:28:31,046.046 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 12:28:31,190.190 INFO    ] Initializing speech engine...
[2026-06-12 12:28:31,195.195 INFO    ] 2026-06-12 12:28:31
[2026-06-12 12:28:31,399.399 INFO    ] 2026-06-12 12:28:31
[2026-06-12 12:28:31,428.428 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 12:28:31,611.611 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 12:28:31,621.621 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 12:28:31,757.757 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 12:28:31,781.781 INFO    ] time= 12/06/2026 12:28:31
[2026-06-12 12:28:31,820.820 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 12:28:31,865.865 INFO    ] Checking for existing commands in stream...
[2026-06-12 12:28:31,948.948 INFO    ] No existing commands found in stream
[2026-06-12 12:28:36,957.957 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 12:28:36,960.960 INFO    ] Waiting 3.56 seconds before fallback handling...
[2026-06-12 12:28:40,855.855 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 12:28:40,856.856 INFO    ] Checking for system updates...
[2026-06-12 12:28:40,877.877 INFO    ] 200
[2026-06-12 12:28:40,878.878 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:28:40,909.909 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 12:28:40,910.910 INFO    ] No update needed
[2026-06-12 12:28:40,912.912 INFO    ] Checking for camera pi updates...
[2026-06-12 12:28:40,932.932 INFO    ] 200
[2026-06-12 12:28:40,933.933 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:28:40,956.956 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 12:28:40,993.993 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 12:28:40,995.995 INFO    ] No camera update needed
[2026-06-12 12:28:40,996.996 INFO    ] Script finished. Safe exiting...
[2026-06-12 12:28:40,997.997 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 12:28:41,000.000 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 12:28:41,003.003 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 12:28:43,041.041 INFO    ] ================================================
[2026-06-12 12:28:43,057.057 INFO    ] Launching Daemon at Fri Jun 12 12:28:43 IST 2026
[2026-06-12 12:28:43,068.068 INFO    ] ================================================
[2026-06-12 12:28:43,403.403 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 12:28:43
[2026-06-12 12:28:43,714.714 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 12:28:43,844.844 INFO    ] Initializing speech engine...
[2026-06-12 12:28:43,852.852 INFO    ] 2026-06-12 12:28:43
[2026-06-12 12:28:44,063.063 INFO    ] 2026-06-12 12:28:44
[2026-06-12 12:28:44,091.091 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 12:28:44,274.274 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 12:28:44,284.284 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 12:28:44,405.405 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 12:28:44,461.461 INFO    ] time= 12/06/2026 12:28:44
[2026-06-12 12:28:44,484.484 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 12:28:44,505.505 INFO    ] Checking for existing commands in stream...
[2026-06-12 12:28:44,576.576 INFO    ] No existing commands found in stream
[2026-06-12 12:28:49,590.590 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 12:28:49,593.593 INFO    ] Waiting 2.49 seconds before fallback handling...
[2026-06-12 12:28:52,486.486 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 12:28:52,488.488 INFO    ] Checking for system updates...
[2026-06-12 12:28:52,511.511 INFO    ] 200
[2026-06-12 12:28:52,512.512 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:28:52,545.545 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 12:28:52,547.547 INFO    ] No update needed
[2026-06-12 12:28:52,548.548 INFO    ] Checking for camera pi updates...
[2026-06-12 12:28:52,568.568 INFO    ] 200
[2026-06-12 12:28:52,570.570 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:28:52,594.594 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 12:28:52,630.630 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 12:28:52,632.632 INFO    ] No camera update needed
[2026-06-12 12:28:52,633.633 INFO    ] Script finished. Safe exiting...
[2026-06-12 12:28:52,635.635 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 12:28:52,638.638 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 12:28:52,641.641 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 12:28:54,680.680 INFO    ] ================================================
[2026-06-12 12:28:54,696.696 INFO    ] Launching Daemon at Fri Jun 12 12:28:54 IST 2026
[2026-06-12 12:28:54,708.708 INFO    ] ================================================
[2026-06-12 12:28:55,050.050 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 12:28:55
[2026-06-12 12:28:55,388.388 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 12:28:55,540.540 INFO    ] Initializing speech engine...
[2026-06-12 12:28:55,545.545 INFO    ] 2026-06-12 12:28:55
[2026-06-12 12:28:55,755.755 INFO    ] 2026-06-12 12:28:55
[2026-06-12 12:28:55,785.785 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 12:28:55,971.971 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 12:28:55,982.982 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 12:28:56,113.113 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 12:28:56,181.181 INFO    ] time= 12/06/2026 12:28:56
[2026-06-12 12:28:56,206.206 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 12:28:56,212.212 INFO    ] Checking for existing commands in stream...
[2026-06-12 12:28:56,280.280 INFO    ] No existing commands found in stream
[2026-06-12 12:29:01,294.294 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 12:29:01,298.298 INFO    ] Waiting 3.04 seconds before fallback handling...
[2026-06-12 12:29:04,671.671 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 12:29:04,672.672 INFO    ] Checking for system updates...
[2026-06-12 12:29:04,693.693 INFO    ] 200
[2026-06-12 12:29:04,695.695 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:29:04,727.727 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 12:29:04,729.729 INFO    ] No update needed
[2026-06-12 12:29:04,730.730 INFO    ] Checking for camera pi updates...
[2026-06-12 12:29:04,754.754 INFO    ] 200
[2026-06-12 12:29:04,755.755 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:29:04,781.781 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 12:29:04,821.821 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 12:29:04,823.823 INFO    ] No camera update needed
[2026-06-12 12:29:04,824.824 INFO    ] Script finished. Safe exiting...
[2026-06-12 12:29:04,825.825 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 12:29:04,828.828 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 12:29:04,832.832 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 12:29:06,873.873 INFO    ] ================================================
[2026-06-12 12:29:06,888.888 INFO    ] Launching Daemon at Fri Jun 12 12:29:06 IST 2026
[2026-06-12 12:29:06,899.899 INFO    ] ================================================
[2026-06-12 12:29:07,227.227 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 12:29:07
[2026-06-12 12:29:07,539.539 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 12:29:07,672.672 INFO    ] Initializing speech engine...
[2026-06-12 12:29:07,675.675 INFO    ] 2026-06-12 12:29:07
[2026-06-12 12:29:07,890.890 INFO    ] 2026-06-12 12:29:07
[2026-06-12 12:29:07,918.918 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 12:29:08,068.068 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 12:29:08,108.108 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 12:29:08,258.258 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 12:29:08,291.291 INFO    ] time= 12/06/2026 12:29:08
[2026-06-12 12:29:08,355.355 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 12:29:08,389.389 INFO    ] Checking for existing commands in stream...
[2026-06-12 12:29:08,465.465 INFO    ] No existing commands found in stream
[2026-06-12 12:29:13,475.475 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 12:29:13,478.478 INFO    ] Waiting 2.66 seconds before fallback handling...
[2026-06-12 12:29:16,490.490 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 12:29:16,492.492 INFO    ] Checking for system updates...
[2026-06-12 12:29:16,512.512 INFO    ] 200
[2026-06-12 12:29:16,514.514 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:29:16,544.544 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 12:29:16,546.546 INFO    ] No update needed
[2026-06-12 12:29:16,547.547 INFO    ] Checking for camera pi updates...
[2026-06-12 12:29:16,567.567 INFO    ] 200
[2026-06-12 12:29:16,569.569 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:29:16,594.594 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 12:29:16,744.744 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 12:29:16,745.745 INFO    ] No camera update needed
[2026-06-12 12:29:16,747.747 INFO    ] Script finished. Safe exiting...
[2026-06-12 12:29:16,748.748 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 12:29:16,751.751 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 12:29:16,754.754 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 12:29:18,793.793 INFO    ] ================================================
[2026-06-12 12:29:18,809.809 INFO    ] Launching Daemon at Fri Jun 12 12:29:18 IST 2026
[2026-06-12 12:29:18,820.820 INFO    ] ================================================
[2026-06-12 12:29:19,196.196 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 12:29:19
[2026-06-12 12:29:19,535.535 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 12:29:19,685.685 INFO    ] Initializing speech engine...
[2026-06-12 12:29:19,691.691 INFO    ] 2026-06-12 12:29:19
[2026-06-12 12:29:19,897.897 INFO    ] 2026-06-12 12:29:19
[2026-06-12 12:29:19,928.928 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 12:29:20,111.111 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 12:29:20,121.121 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 12:29:20,266.266 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 12:29:20,321.321 INFO    ] time= 12/06/2026 12:29:20
[2026-06-12 12:29:20,342.342 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 12:29:20,349.349 INFO    ] Checking for existing commands in stream...
[2026-06-12 12:29:20,416.416 INFO    ] No existing commands found in stream
[2026-06-12 12:29:25,425.425 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 12:29:25,433.433 INFO    ] Waiting 3.08 seconds before fallback handling...
[2026-06-12 12:29:28,892.892 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 12:29:28,893.893 INFO    ] Checking for system updates...
[2026-06-12 12:29:28,914.914 INFO    ] 200
[2026-06-12 12:29:28,916.916 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:29:28,946.946 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 12:29:28,948.948 INFO    ] No update needed
[2026-06-12 12:29:28,949.949 INFO    ] Checking for camera pi updates...
[2026-06-12 12:29:28,969.969 INFO    ] 200
[2026-06-12 12:29:28,971.971 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:29:28,994.994 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 12:29:29,032.032 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 12:29:29,034.034 INFO    ] No camera update needed
[2026-06-12 12:29:29,035.035 INFO    ] Script finished. Safe exiting...
[2026-06-12 12:29:29,036.036 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 12:29:29,040.040 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 12:29:29,043.043 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 12:29:31,099.099 INFO    ] ================================================
[2026-06-12 12:29:31,115.115 INFO    ] Launching Daemon at Fri Jun 12 12:29:31 IST 2026
[2026-06-12 12:29:31,126.126 INFO    ] ================================================
[2026-06-12 12:29:31,457.457 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 12:29:31
[2026-06-12 12:29:31,773.773 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 12:29:31,908.908 INFO    ] Initializing speech engine...
[2026-06-12 12:29:31,911.911 INFO    ] 2026-06-12 12:29:31
[2026-06-12 12:29:32,143.143 INFO    ] 2026-06-12 12:29:32
[2026-06-12 12:29:32,190.190 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 12:29:32,389.389 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 12:29:32,407.407 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 12:29:32,550.550 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 12:29:32,611.611 INFO    ] time= 12/06/2026 12:29:32
[2026-06-12 12:29:32,635.635 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 12:29:32,641.641 INFO    ] Checking for existing commands in stream...
[2026-06-12 12:29:32,712.712 INFO    ] No existing commands found in stream
[2026-06-12 12:29:37,722.722 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 12:29:37,725.725 INFO    ] Waiting 4.00 seconds before fallback handling...
[2026-06-12 12:29:42,093.093 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 12:29:42,095.095 INFO    ] Checking for system updates...
[2026-06-12 12:29:42,116.116 INFO    ] 200
[2026-06-12 12:29:42,117.117 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:29:42,147.147 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 12:29:42,148.148 INFO    ] No update needed
[2026-06-12 12:29:42,150.150 INFO    ] Checking for camera pi updates...
[2026-06-12 12:29:42,171.171 INFO    ] 200
[2026-06-12 12:29:42,172.172 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:29:42,197.197 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 12:29:42,233.233 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 12:29:42,234.234 INFO    ] No camera update needed
[2026-06-12 12:29:42,235.235 INFO    ] Script finished. Safe exiting...
[2026-06-12 12:29:42,236.236 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 12:29:42,239.239 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 12:29:42,242.242 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 12:29:44,282.282 INFO    ] ================================================
[2026-06-12 12:29:44,297.297 INFO    ] Launching Daemon at Fri Jun 12 12:29:44 IST 2026
[2026-06-12 12:29:44,308.308 INFO    ] ================================================
[2026-06-12 12:29:44,658.658 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 12:29:44
[2026-06-12 12:29:44,968.968 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 12:29:45,097.097 INFO    ] Initializing speech engine...
[2026-06-12 12:29:45,100.100 INFO    ] 2026-06-12 12:29:45
[2026-06-12 12:29:45,317.317 INFO    ] 2026-06-12 12:29:45
[2026-06-12 12:29:45,347.347 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 12:29:45,478.478 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 12:29:45,534.534 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 12:29:45,663.663 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 12:29:45,724.724 INFO    ] time= 12/06/2026 12:29:45
[2026-06-12 12:29:45,760.760 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 12:29:45,762.762 INFO    ] Checking for existing commands in stream...
[2026-06-12 12:29:45,834.834 INFO    ] No existing commands found in stream
[2026-06-12 12:29:50,848.848 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 12:29:50,851.851 INFO    ] Waiting 3.39 seconds before fallback handling...
[2026-06-12 12:29:54,593.593 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 12:29:54,595.595 INFO    ] Checking for system updates...
[2026-06-12 12:29:54,616.616 INFO    ] 200
[2026-06-12 12:29:54,617.617 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:29:54,648.648 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 12:29:54,649.649 INFO    ] No update needed
[2026-06-12 12:29:54,651.651 INFO    ] Checking for camera pi updates...
[2026-06-12 12:29:54,671.671 INFO    ] 200
[2026-06-12 12:29:54,672.672 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:29:54,695.695 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 12:29:54,718.718 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 12:29:54,719.719 INFO    ] No camera update needed
[2026-06-12 12:29:54,721.721 INFO    ] Script finished. Safe exiting...
[2026-06-12 12:29:54,722.722 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 12:29:54,725.725 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 12:29:54,728.728 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 12:29:56,766.766 INFO    ] ================================================
[2026-06-12 12:29:56,782.782 INFO    ] Launching Daemon at Fri Jun 12 12:29:56 IST 2026
[2026-06-12 12:29:56,794.794 INFO    ] ================================================
[2026-06-12 12:29:57,114.114 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 12:29:57
[2026-06-12 12:29:57,426.426 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 12:29:57,557.557 INFO    ] Initializing speech engine...
[2026-06-12 12:29:57,561.561 INFO    ] 2026-06-12 12:29:57
[2026-06-12 12:29:57,779.779 INFO    ] 2026-06-12 12:29:57
[2026-06-12 12:29:57,808.808 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 12:29:57,932.932 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 12:29:57,990.990 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 12:29:58,132.132 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 12:29:58,201.201 INFO    ] time= 12/06/2026 12:29:58
[2026-06-12 12:29:58,226.226 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 12:29:58,232.232 INFO    ] Checking for existing commands in stream...
[2026-06-12 12:29:58,299.299 INFO    ] No existing commands found in stream
[2026-06-12 12:30:03,307.307 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 12:30:03,309.309 INFO    ] Waiting 1.04 seconds before fallback handling...
[2026-06-12 12:30:08,042.042 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 12:30:08,045.045 INFO    ] Checking for system updates...
[2026-06-12 12:30:08,080.080 INFO    ] 200
[2026-06-12 12:30:08,083.083 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:30:08,142.142 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 12:30:08,144.144 INFO    ] No update needed
[2026-06-12 12:30:08,146.146 INFO    ] Checking for camera pi updates...
[2026-06-12 12:30:08,176.176 INFO    ] 200
[2026-06-12 12:30:08,177.177 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:30:08,203.203 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 12:30:08,242.242 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 12:30:08,244.244 INFO    ] No camera update needed
[2026-06-12 12:30:08,245.245 INFO    ] Script finished. Safe exiting...
[2026-06-12 12:30:08,246.246 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 12:30:08,249.249 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 12:30:08,252.252 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 12:30:10,291.291 INFO    ] ================================================
[2026-06-12 12:30:10,307.307 INFO    ] Launching Daemon at Fri Jun 12 12:30:10 IST 2026
[2026-06-12 12:30:10,318.318 INFO    ] ================================================
[2026-06-12 12:30:10,675.675 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 12:30:10
[2026-06-12 12:30:10,987.987 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 12:30:11,130.130 INFO    ] Initializing speech engine...
[2026-06-12 12:30:11,134.134 INFO    ] 2026-06-12 12:30:11
[2026-06-12 12:30:11,336.336 INFO    ] 2026-06-12 12:30:11
[2026-06-12 12:30:11,366.366 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 12:30:11,550.550 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 12:30:11,553.553 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 12:30:11,688.688 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 12:30:11,744.744 INFO    ] time= 12/06/2026 12:30:11
[2026-06-12 12:30:11,785.785 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 12:30:11,790.790 INFO    ] Checking for existing commands in stream...
[2026-06-12 12:30:11,860.860 INFO    ] No existing commands found in stream
[2026-06-12 12:30:16,871.871 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 12:30:16,874.874 INFO    ] Waiting 2.64 seconds before fallback handling...
[2026-06-12 12:30:19,888.888 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 12:30:19,890.890 INFO    ] Checking for system updates...
[2026-06-12 12:30:19,911.911 INFO    ] 200
[2026-06-12 12:30:19,913.913 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:30:19,943.943 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 12:30:19,944.944 INFO    ] No update needed
[2026-06-12 12:30:19,945.945 INFO    ] Checking for camera pi updates...
[2026-06-12 12:30:19,965.965 INFO    ] 200
[2026-06-12 12:30:19,966.966 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:30:19,989.989 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 12:30:20,024.024 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 12:30:20,025.025 INFO    ] No camera update needed
[2026-06-12 12:30:20,026.026 INFO    ] Script finished. Safe exiting...
[2026-06-12 12:30:20,028.028 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 12:30:20,031.031 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 12:30:20,033.033 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 12:30:22,073.073 INFO    ] ================================================
[2026-06-12 12:30:22,089.089 INFO    ] Launching Daemon at Fri Jun 12 12:30:22 IST 2026
[2026-06-12 12:30:22,099.099 INFO    ] ================================================
[2026-06-12 12:30:22,454.454 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 12:30:22
[2026-06-12 12:30:22,771.771 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 12:30:22,916.916 INFO    ] Initializing speech engine...
[2026-06-12 12:30:22,921.921 INFO    ] 2026-06-12 12:30:22
[2026-06-12 12:30:23,125.125 INFO    ] 2026-06-12 12:30:23
[2026-06-12 12:30:23,154.154 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 12:30:23,337.337 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 12:30:23,347.347 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 12:30:23,477.477 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 12:30:23,541.541 INFO    ] time= 12/06/2026 12:30:23
[2026-06-12 12:30:23,568.568 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 12:30:23,574.574 INFO    ] Checking for existing commands in stream...
[2026-06-12 12:30:23,642.642 INFO    ] No existing commands found in stream
[2026-06-12 12:30:28,651.651 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 12:30:28,654.654 INFO    ] Waiting 0.03 seconds before fallback handling...
[2026-06-12 12:30:29,029.029 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 12:30:29,031.031 INFO    ] Checking for system updates...
[2026-06-12 12:30:29,051.051 INFO    ] 200
[2026-06-12 12:30:29,053.053 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:30:29,085.085 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 12:30:29,086.086 INFO    ] No update needed
[2026-06-12 12:30:29,088.088 INFO    ] Checking for camera pi updates...
[2026-06-12 12:30:29,108.108 INFO    ] 200
[2026-06-12 12:30:29,109.109 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:30:29,132.132 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 12:30:29,172.172 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 12:30:29,173.173 INFO    ] No camera update needed
[2026-06-12 12:30:29,174.174 INFO    ] Script finished. Safe exiting...
[2026-06-12 12:30:29,175.175 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 12:30:29,178.178 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 12:30:29,181.181 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 12:30:31,222.222 INFO    ] ================================================
[2026-06-12 12:30:31,240.240 INFO    ] Launching Daemon at Fri Jun 12 12:30:31 IST 2026
[2026-06-12 12:30:31,252.252 INFO    ] ================================================
[2026-06-12 12:30:31,657.657 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 12:30:31
[2026-06-12 12:30:32,025.025 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 12:30:32,189.189 INFO    ] Initializing speech engine...
[2026-06-12 12:30:32,193.193 INFO    ] 2026-06-12 12:30:32
[2026-06-12 12:30:32,400.400 INFO    ] 2026-06-12 12:30:32
[2026-06-12 12:30:32,431.431 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 12:30:32,616.616 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 12:30:32,625.625 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 12:30:32,800.800 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 12:30:32,843.843 INFO    ] time= 12/06/2026 12:30:32
[2026-06-12 12:30:32,849.849 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 12:30:32,851.851 INFO    ] Checking for existing commands in stream...
[2026-06-12 12:30:32,941.941 INFO    ] No existing commands found in stream
[2026-06-12 12:30:37,966.966 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 12:30:37,969.969 INFO    ] Waiting 3.19 seconds before fallback handling...
[2026-06-12 12:30:41,552.552 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 12:30:41,554.554 INFO    ] Checking for system updates...
[2026-06-12 12:30:41,576.576 INFO    ] 200
[2026-06-12 12:30:41,577.577 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:30:41,610.610 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 12:30:41,611.611 INFO    ] No update needed
[2026-06-12 12:30:41,613.613 INFO    ] Checking for camera pi updates...
[2026-06-12 12:30:41,632.632 INFO    ] 200
[2026-06-12 12:30:41,634.634 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:30:41,659.659 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 12:30:41,697.697 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 12:30:41,699.699 INFO    ] No camera update needed
[2026-06-12 12:30:41,700.700 INFO    ] Script finished. Safe exiting...
[2026-06-12 12:30:41,702.702 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 12:30:41,705.705 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 12:30:41,708.708 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 12:30:43,747.747 INFO    ] ================================================
[2026-06-12 12:30:43,763.763 INFO    ] Launching Daemon at Fri Jun 12 12:30:43 IST 2026
[2026-06-12 12:30:43,774.774 INFO    ] ================================================
[2026-06-12 12:30:44,138.138 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 12:30:44
[2026-06-12 12:30:44,448.448 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 12:30:44,581.581 INFO    ] Initializing speech engine...
[2026-06-12 12:30:44,595.595 INFO    ] 2026-06-12 12:30:44
[2026-06-12 12:30:44,798.798 INFO    ] 2026-06-12 12:30:44
[2026-06-12 12:30:44,828.828 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 12:30:45,011.011 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 12:30:45,020.020 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 12:30:45,145.145 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 12:30:45,211.211 INFO    ] time= 12/06/2026 12:30:45
[2026-06-12 12:30:45,238.238 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 12:30:45,244.244 INFO    ] Checking for existing commands in stream...
[2026-06-12 12:30:45,334.334 INFO    ] No existing commands found in stream
[2026-06-12 12:30:50,343.343 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 12:30:50,346.346 INFO    ] Waiting 0.43 seconds before fallback handling...
[2026-06-12 12:30:51,141.141 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 12:30:51,142.142 INFO    ] Checking for system updates...
[2026-06-12 12:30:51,163.163 INFO    ] 200
[2026-06-12 12:30:51,165.165 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:30:51,196.196 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 12:30:51,197.197 INFO    ] No update needed
[2026-06-12 12:30:51,198.198 INFO    ] Checking for camera pi updates...
[2026-06-12 12:30:51,218.218 INFO    ] 200
[2026-06-12 12:30:51,219.219 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:30:51,245.245 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 12:30:51,282.282 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 12:30:51,284.284 INFO    ] No camera update needed
[2026-06-12 12:30:51,285.285 INFO    ] Script finished. Safe exiting...
[2026-06-12 12:30:51,287.287 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 12:30:51,290.290 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 12:30:51,293.293 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 12:30:53,331.331 INFO    ] ================================================
[2026-06-12 12:30:53,346.346 INFO    ] Launching Daemon at Fri Jun 12 12:30:53 IST 2026
[2026-06-12 12:30:53,357.357 INFO    ] ================================================
[2026-06-12 12:30:53,692.692 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 12:30:53
[2026-06-12 12:30:54,003.003 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 12:30:54,146.146 INFO    ] Initializing speech engine...
[2026-06-12 12:30:54,151.151 INFO    ] 2026-06-12 12:30:54
[2026-06-12 12:30:54,354.354 INFO    ] 2026-06-12 12:30:54
[2026-06-12 12:30:54,382.382 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 12:30:54,564.564 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 12:30:54,574.574 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 12:30:54,696.696 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 12:30:54,756.756 INFO    ] time= 12/06/2026 12:30:54
[2026-06-12 12:30:54,785.785 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 12:30:54,795.795 INFO    ] Checking for existing commands in stream...
[2026-06-12 12:30:54,865.865 INFO    ] No existing commands found in stream
[2026-06-12 12:30:59,875.875 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 12:30:59,878.878 INFO    ] Waiting 3.03 seconds before fallback handling...
[2026-06-12 12:31:03,214.214 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 12:31:03,215.215 INFO    ] Checking for system updates...
[2026-06-12 12:31:03,236.236 INFO    ] 200
[2026-06-12 12:31:03,237.237 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:31:03,280.280 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 12:31:03,283.283 INFO    ] No update needed
[2026-06-12 12:31:03,285.285 INFO    ] Checking for camera pi updates...
[2026-06-12 12:31:03,323.323 INFO    ] 200
[2026-06-12 12:31:03,325.325 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:31:03,360.360 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 12:31:03,395.395 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 12:31:03,397.397 INFO    ] No camera update needed
[2026-06-12 12:31:03,398.398 INFO    ] Script finished. Safe exiting...
[2026-06-12 12:31:03,399.399 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 12:31:03,402.402 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 12:31:03,405.405 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 12:31:05,443.443 INFO    ] ================================================
[2026-06-12 12:31:05,460.460 INFO    ] Launching Daemon at Fri Jun 12 12:31:05 IST 2026
[2026-06-12 12:31:05,471.471 INFO    ] ================================================
[2026-06-12 12:31:05,814.814 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 12:31:05
[2026-06-12 12:31:06,139.139 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 12:31:06,277.277 INFO    ] Initializing speech engine...
[2026-06-12 12:31:06,287.287 INFO    ] 2026-06-12 12:31:06
[2026-06-12 12:31:06,471.471 INFO    ] 2026-06-12 12:31:06
[2026-06-12 12:31:06,516.516 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 12:31:06,675.675 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 12:31:06,715.715 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 12:31:06,862.862 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 12:31:06,895.895 INFO    ] time= 12/06/2026 12:31:06
[2026-06-12 12:31:06,945.945 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 12:31:06,996.996 INFO    ] Checking for existing commands in stream...
[2026-06-12 12:31:07,072.072 INFO    ] No existing commands found in stream
[2026-06-12 12:31:12,085.085 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 12:31:12,087.087 INFO    ] Waiting 3.06 seconds before fallback handling...
[2026-06-12 12:31:15,473.473 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 12:31:15,475.475 INFO    ] Checking for system updates...
[2026-06-12 12:31:15,511.511 INFO    ] 200
[2026-06-12 12:31:15,512.512 INFO    ] {"msg": "Status of machine", "state": "STATE_HEALTH_CHECK", "status": true}
[2026-06-12 12:31:15,514.514 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping update check
[2026-06-12 12:31:15,515.515 INFO    ] Checking for camera pi updates...
[2026-06-12 12:31:15,539.539 INFO    ] 200
[2026-06-12 12:31:15,541.541 INFO    ] {"msg": "Status of machine", "state": "STATE_HEALTH_CHECK", "status": true}
[2026-06-12 12:31:15,543.543 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping camera update check
[2026-06-12 12:31:15,544.544 INFO    ] Script finished. Safe exiting...
[2026-06-12 12:31:15,546.546 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 12:31:15,549.549 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 12:31:15,552.552 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 12:31:17,583.583 INFO    ] ================================================
[2026-06-12 12:31:17,599.599 INFO    ] Launching Daemon at Fri Jun 12 12:31:17 IST 2026
[2026-06-12 12:31:17,609.609 INFO    ] ================================================
[2026-06-12 12:31:17,972.972 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 12:31:17
[2026-06-12 12:31:18,289.289 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 12:31:18,432.432 INFO    ] Initializing speech engine...
[2026-06-12 12:31:18,438.438 INFO    ] 2026-06-12 12:31:18
[2026-06-12 12:31:18,641.641 INFO    ] 2026-06-12 12:31:18
[2026-06-12 12:31:18,671.671 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 12:31:18,853.853 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 12:31:18,857.857 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 12:31:18,993.993 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 12:31:19,057.057 INFO    ] time= 12/06/2026 12:31:19
[2026-06-12 12:31:19,084.084 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 12:31:19,086.086 INFO    ] Checking for existing commands in stream...
[2026-06-12 12:31:19,157.157 INFO    ] No existing commands found in stream
[2026-06-12 12:31:24,171.171 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 12:31:24,174.174 INFO    ] Waiting 3.22 seconds before fallback handling...
[2026-06-12 12:31:27,805.805 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 12:31:27,806.806 INFO    ] Checking for system updates...
[2026-06-12 12:31:27,828.828 INFO    ] 200
[2026-06-12 12:31:27,830.830 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:31:27,863.863 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 12:31:27,864.864 INFO    ] No update needed
[2026-06-12 12:31:27,866.866 INFO    ] Checking for camera pi updates...
[2026-06-12 12:31:27,888.888 INFO    ] 200
[2026-06-12 12:31:27,889.889 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:31:27,914.914 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 12:31:28,056.056 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 12:31:28,058.058 INFO    ] No camera update needed
[2026-06-12 12:31:28,059.059 INFO    ] Script finished. Safe exiting...
[2026-06-12 12:31:28,061.061 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 12:31:28,064.064 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 12:31:28,066.066 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 12:31:30,106.106 INFO    ] ================================================
[2026-06-12 12:31:30,122.122 INFO    ] Launching Daemon at Fri Jun 12 12:31:30 IST 2026
[2026-06-12 12:31:30,133.133 INFO    ] ================================================
[2026-06-12 12:31:30,469.469 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 12:31:30
[2026-06-12 12:31:30,790.790 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 12:31:30,928.928 INFO    ] Initializing speech engine...
[2026-06-12 12:31:30,938.938 INFO    ] 2026-06-12 12:31:30
[2026-06-12 12:31:31,143.143 INFO    ] 2026-06-12 12:31:31
[2026-06-12 12:31:31,173.173 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 12:31:31,355.355 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 12:31:31,364.364 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 12:31:31,494.494 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 12:31:31,553.553 INFO    ] time= 12/06/2026 12:31:31
[2026-06-12 12:31:31,585.585 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 12:31:31,592.592 INFO    ] Checking for existing commands in stream...
[2026-06-12 12:31:31,658.658 INFO    ] No existing commands found in stream
[2026-06-12 12:31:36,667.667 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 12:31:36,670.670 INFO    ] Waiting 0.18 seconds before fallback handling...
[2026-06-12 12:31:37,214.214 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 12:31:37,216.216 INFO    ] Checking for system updates...
[2026-06-12 12:31:37,237.237 INFO    ] 200
[2026-06-12 12:31:37,238.238 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:31:37,272.272 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 12:31:37,273.273 INFO    ] No update needed
[2026-06-12 12:31:37,274.274 INFO    ] Checking for camera pi updates...
[2026-06-12 12:31:37,296.296 INFO    ] 200
[2026-06-12 12:31:37,298.298 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:31:37,323.323 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 12:31:37,356.356 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 12:31:37,357.357 INFO    ] No camera update needed
[2026-06-12 12:31:37,358.358 INFO    ] Script finished. Safe exiting...
[2026-06-12 12:31:37,360.360 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 12:31:37,363.363 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 12:31:37,366.366 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 12:31:39,407.407 INFO    ] ================================================
[2026-06-12 12:31:39,424.424 INFO    ] Launching Daemon at Fri Jun 12 12:31:39 IST 2026
[2026-06-12 12:31:39,435.435 INFO    ] ================================================
[2026-06-12 12:31:39,785.785 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 12:31:39
[2026-06-12 12:31:40,127.127 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 12:31:40,294.294 INFO    ] Initializing speech engine...
[2026-06-12 12:31:40,299.299 INFO    ] 2026-06-12 12:31:40
[2026-06-12 12:31:40,505.505 INFO    ] 2026-06-12 12:31:40
[2026-06-12 12:31:40,533.533 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 12:31:40,670.670 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 12:31:40,728.728 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 12:31:40,864.864 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 12:31:40,921.921 INFO    ] time= 12/06/2026 12:31:40
[2026-06-12 12:31:40,963.963 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 12:31:40,965.965 INFO    ] Checking for existing commands in stream...
[2026-06-12 12:31:41,036.036 INFO    ] No existing commands found in stream
[2026-06-12 12:31:46,068.068 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 12:31:46,072.072 INFO    ] Waiting 3.99 seconds before fallback handling...
[2026-06-12 12:31:50,407.407 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 12:31:50,409.409 INFO    ] Checking for system updates...
[2026-06-12 12:31:50,430.430 INFO    ] 200
[2026-06-12 12:31:50,432.432 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:31:50,463.463 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 12:31:50,464.464 INFO    ] No update needed
[2026-06-12 12:31:50,465.465 INFO    ] Checking for camera pi updates...
[2026-06-12 12:31:50,485.485 INFO    ] 200
[2026-06-12 12:31:50,486.486 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:31:50,510.510 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 12:31:50,555.555 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 12:31:50,557.557 INFO    ] No camera update needed
[2026-06-12 12:31:50,558.558 INFO    ] Script finished. Safe exiting...
[2026-06-12 12:31:50,560.560 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 12:31:50,563.563 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 12:31:50,566.566 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 12:31:52,607.607 INFO    ] ================================================
[2026-06-12 12:31:52,622.622 INFO    ] Launching Daemon at Fri Jun 12 12:31:52 IST 2026
[2026-06-12 12:31:52,633.633 INFO    ] ================================================
[2026-06-12 12:31:52,971.971 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 12:31:52
[2026-06-12 12:31:53,289.289 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 12:31:53,433.433 INFO    ] Initializing speech engine...
[2026-06-12 12:31:53,438.438 INFO    ] 2026-06-12 12:31:53
[2026-06-12 12:31:53,642.642 INFO    ] 2026-06-12 12:31:53
[2026-06-12 12:31:53,671.671 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 12:31:53,793.793 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 12:31:53,856.856 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 12:31:53,991.991 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 12:31:54,048.048 INFO    ] time= 12/06/2026 12:31:53
[2026-06-12 12:31:54,083.083 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 12:31:54,093.093 INFO    ] Checking for existing commands in stream...
[2026-06-12 12:31:54,159.159 INFO    ] No existing commands found in stream
[2026-06-12 12:31:59,169.169 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 12:31:59,172.172 INFO    ] Waiting 2.11 seconds before fallback handling...
[2026-06-12 12:32:01,696.696 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 12:32:01,698.698 INFO    ] Checking for system updates...
[2026-06-12 12:32:01,719.719 INFO    ] 200
[2026-06-12 12:32:01,721.721 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:32:01,754.754 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 12:32:01,755.755 INFO    ] No update needed
[2026-06-12 12:32:01,756.756 INFO    ] Checking for camera pi updates...
[2026-06-12 12:32:01,780.780 INFO    ] 200
[2026-06-12 12:32:01,782.782 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:32:01,809.809 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 12:32:01,847.847 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 12:32:01,849.849 INFO    ] No camera update needed
[2026-06-12 12:32:01,850.850 INFO    ] Script finished. Safe exiting...
[2026-06-12 12:32:01,852.852 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 12:32:01,855.855 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 12:32:01,858.858 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 12:32:03,891.891 INFO    ] ================================================
[2026-06-12 12:32:03,906.906 INFO    ] Launching Daemon at Fri Jun 12 12:32:03 IST 2026
[2026-06-12 12:32:03,917.917 INFO    ] ================================================
[2026-06-12 12:32:04,266.266 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 12:32:04
[2026-06-12 12:32:04,582.582 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 12:32:04,726.726 INFO    ] Initializing speech engine...
[2026-06-12 12:32:04,731.731 INFO    ] 2026-06-12 12:32:04
[2026-06-12 12:32:04,935.935 INFO    ] 2026-06-12 12:32:04
[2026-06-12 12:32:04,964.964 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 12:32:05,146.146 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 12:32:05,156.156 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 12:32:05,279.279 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 12:32:05,345.345 INFO    ] time= 12/06/2026 12:32:05
[2026-06-12 12:32:05,376.376 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 12:32:05,378.378 INFO    ] Checking for existing commands in stream...
[2026-06-12 12:32:05,449.449 INFO    ] No existing commands found in stream
[2026-06-12 12:32:10,463.463 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 12:32:10,466.466 INFO    ] Waiting 0.02 seconds before fallback handling...
[2026-06-12 12:32:10,847.847 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 12:32:10,849.849 INFO    ] Checking for system updates...
[2026-06-12 12:32:10,870.870 INFO    ] 200
[2026-06-12 12:32:10,872.872 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:32:10,903.903 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 12:32:10,904.904 INFO    ] No update needed
[2026-06-12 12:32:10,906.906 INFO    ] Checking for camera pi updates...
[2026-06-12 12:32:10,927.927 INFO    ] 200
[2026-06-12 12:32:10,928.928 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:32:10,955.955 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 12:32:10,994.994 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 12:32:10,995.995 INFO    ] No camera update needed
[2026-06-12 12:32:10,997.997 INFO    ] Script finished. Safe exiting...
[2026-06-12 12:32:10,998.998 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 12:32:11,002.002 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 12:32:11,005.005 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 12:32:13,043.043 INFO    ] ================================================
[2026-06-12 12:32:13,058.058 INFO    ] Launching Daemon at Fri Jun 12 12:32:13 IST 2026
[2026-06-12 12:32:13,069.069 INFO    ] ================================================
[2026-06-12 12:32:13,426.426 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 12:32:13
[2026-06-12 12:32:13,743.743 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 12:32:13,874.874 INFO    ] Initializing speech engine...
[2026-06-12 12:32:13,878.878 INFO    ] 2026-06-12 12:32:13
[2026-06-12 12:32:14,096.096 INFO    ] 2026-06-12 12:32:14
[2026-06-12 12:32:14,124.124 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 12:32:14,307.307 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 12:32:14,311.311 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 12:32:14,438.438 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 12:32:14,504.504 INFO    ] time= 12/06/2026 12:32:14
[2026-06-12 12:32:14,537.537 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 12:32:14,539.539 INFO    ] Checking for existing commands in stream...
[2026-06-12 12:32:14,610.610 INFO    ] No existing commands found in stream
[2026-06-12 12:32:19,623.623 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 12:32:19,625.625 INFO    ] Waiting 0.25 seconds before fallback handling...
[2026-06-12 12:32:20,178.178 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 12:32:20,181.181 INFO    ] Checking for system updates...
[2026-06-12 12:32:20,217.217 INFO    ] 200
[2026-06-12 12:32:20,219.219 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:32:20,273.273 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 12:32:20,276.276 INFO    ] No update needed
[2026-06-12 12:32:20,278.278 INFO    ] Checking for camera pi updates...
[2026-06-12 12:32:20,320.320 INFO    ] 200
[2026-06-12 12:32:20,323.323 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:32:20,351.351 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 12:32:20,386.386 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 12:32:20,388.388 INFO    ] No camera update needed
[2026-06-12 12:32:20,389.389 INFO    ] Script finished. Safe exiting...
[2026-06-12 12:32:20,390.390 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 12:32:20,393.393 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 12:32:20,396.396 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 12:32:22,434.434 INFO    ] ================================================
[2026-06-12 12:32:22,450.450 INFO    ] Launching Daemon at Fri Jun 12 12:32:22 IST 2026
[2026-06-12 12:32:22,462.462 INFO    ] ================================================
[2026-06-12 12:32:22,803.803 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 12:32:22
[2026-06-12 12:32:23,118.118 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 12:32:23,255.255 INFO    ] Initializing speech engine...
[2026-06-12 12:32:23,263.263 INFO    ] 2026-06-12 12:32:23
[2026-06-12 12:32:23,469.469 INFO    ] 2026-06-12 12:32:23
[2026-06-12 12:32:23,497.497 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 12:32:23,681.681 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 12:32:23,690.690 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 12:32:23,816.816 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 12:32:23,877.877 INFO    ] time= 12/06/2026 12:32:23
[2026-06-12 12:32:23,910.910 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 12:32:23,912.912 INFO    ] Checking for existing commands in stream...
[2026-06-12 12:32:23,983.983 INFO    ] No existing commands found in stream
[2026-06-12 12:32:29,007.007 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 12:32:29,010.010 INFO    ] Waiting 3.15 seconds before fallback handling...
[2026-06-12 12:32:32,439.439 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 12:32:32,441.441 INFO    ] Checking for system updates...
[2026-06-12 12:32:32,466.466 INFO    ] 200
[2026-06-12 12:32:32,467.467 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:32:32,502.502 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 12:32:32,503.503 INFO    ] No update needed
[2026-06-12 12:32:32,505.505 INFO    ] Checking for camera pi updates...
[2026-06-12 12:32:32,527.527 INFO    ] 200
[2026-06-12 12:32:32,529.529 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:32:32,555.555 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 12:32:32,579.579 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 12:32:32,581.581 INFO    ] No camera update needed
[2026-06-12 12:32:32,583.583 INFO    ] Script finished. Safe exiting...
[2026-06-12 12:32:32,584.584 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 12:32:32,588.588 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 12:32:32,591.591 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 12:32:34,632.632 INFO    ] ================================================
[2026-06-12 12:32:34,648.648 INFO    ] Launching Daemon at Fri Jun 12 12:32:34 IST 2026
[2026-06-12 12:32:34,659.659 INFO    ] ================================================
[2026-06-12 12:32:35,000.000 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 12:32:34
[2026-06-12 12:32:35,311.311 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 12:32:35,441.441 INFO    ] Initializing speech engine...
[2026-06-12 12:32:35,445.445 INFO    ] 2026-06-12 12:32:35
[2026-06-12 12:32:35,666.666 INFO    ] 2026-06-12 12:32:35
[2026-06-12 12:32:35,695.695 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 12:32:35,821.821 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 12:32:35,879.879 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 12:32:36,020.020 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 12:32:36,088.088 INFO    ] time= 12/06/2026 12:32:36
[2026-06-12 12:32:36,118.118 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 12:32:36,129.129 INFO    ] Checking for existing commands in stream...
[2026-06-12 12:32:36,204.204 INFO    ] No existing commands found in stream
[2026-06-12 12:32:41,214.214 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 12:32:41,217.217 INFO    ] Waiting 0.29 seconds before fallback handling...
[2026-06-12 12:32:41,863.863 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 12:32:41,865.865 INFO    ] Checking for system updates...
[2026-06-12 12:32:41,885.885 INFO    ] 200
[2026-06-12 12:32:41,887.887 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:32:41,918.918 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 12:32:41,920.920 INFO    ] No update needed
[2026-06-12 12:32:41,921.921 INFO    ] Checking for camera pi updates...
[2026-06-12 12:32:41,941.941 INFO    ] 200
[2026-06-12 12:32:41,942.942 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:32:41,971.971 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 12:32:42,007.007 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 12:32:42,009.009 INFO    ] No camera update needed
[2026-06-12 12:32:42,010.010 INFO    ] Script finished. Safe exiting...
[2026-06-12 12:32:42,012.012 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 12:32:42,015.015 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 12:32:42,017.017 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 12:32:44,055.055 INFO    ] ================================================
[2026-06-12 12:32:44,071.071 INFO    ] Launching Daemon at Fri Jun 12 12:32:44 IST 2026
[2026-06-12 12:32:44,082.082 INFO    ] ================================================
[2026-06-12 12:32:44,427.427 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 12:32:44
[2026-06-12 12:32:44,737.737 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 12:32:44,869.869 INFO    ] Initializing speech engine...
[2026-06-12 12:32:44,876.876 INFO    ] 2026-06-12 12:32:44
[2026-06-12 12:32:45,091.091 INFO    ] 2026-06-12 12:32:45
[2026-06-12 12:32:45,120.120 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 12:32:45,248.248 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 12:32:45,306.306 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 12:32:45,440.440 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 12:32:45,490.490 INFO    ] time= 12/06/2026 12:32:45
[2026-06-12 12:32:45,534.534 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 12:32:45,540.540 INFO    ] Checking for existing commands in stream...
[2026-06-12 12:32:45,635.635 INFO    ] No existing commands found in stream
[2026-06-12 12:32:50,644.644 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 12:32:50,648.648 INFO    ] Waiting 3.72 seconds before fallback handling...
[2026-06-12 12:32:54,752.752 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 12:32:54,753.753 INFO    ] Checking for system updates...
[2026-06-12 12:32:54,774.774 INFO    ] 200
[2026-06-12 12:32:54,775.775 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:32:54,808.808 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 12:32:54,809.809 INFO    ] No update needed
[2026-06-12 12:32:54,811.811 INFO    ] Checking for camera pi updates...
[2026-06-12 12:32:54,834.834 INFO    ] 200
[2026-06-12 12:32:54,835.835 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:32:54,872.872 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 12:32:54,920.920 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 12:32:54,922.922 INFO    ] No camera update needed
[2026-06-12 12:32:54,923.923 INFO    ] Script finished. Safe exiting...
[2026-06-12 12:32:54,924.924 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 12:32:54,928.928 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 12:32:54,931.931 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 12:32:56,973.973 INFO    ] ================================================
[2026-06-12 12:32:56,988.988 INFO    ] Launching Daemon at Fri Jun 12 12:32:56 IST 2026
[2026-06-12 12:32:57,000.000 INFO    ] ================================================
[2026-06-12 12:32:57,349.349 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 12:32:57
[2026-06-12 12:32:57,686.686 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 12:32:57,837.837 INFO    ] Initializing speech engine...
[2026-06-12 12:32:57,844.844 INFO    ] 2026-06-12 12:32:57
[2026-06-12 12:32:58,050.050 INFO    ] 2026-06-12 12:32:58
[2026-06-12 12:32:58,078.078 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 12:32:58,263.263 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 12:32:58,273.273 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 12:32:58,400.400 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 12:32:58,464.464 INFO    ] time= 12/06/2026 12:32:58
[2026-06-12 12:32:58,491.491 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 12:32:58,497.497 INFO    ] Checking for existing commands in stream...
[2026-06-12 12:32:58,564.564 INFO    ] No existing commands found in stream
[2026-06-12 12:33:03,588.588 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 12:33:03,591.591 INFO    ] Waiting 2.72 seconds before fallback handling...
[2026-06-12 12:33:06,662.662 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 12:33:06,663.663 INFO    ] Checking for system updates...
[2026-06-12 12:33:06,684.684 INFO    ] 200
[2026-06-12 12:33:06,685.685 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:33:06,717.717 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 12:33:06,718.718 INFO    ] No update needed
[2026-06-12 12:33:06,720.720 INFO    ] Checking for camera pi updates...
[2026-06-12 12:33:06,739.739 INFO    ] 200
[2026-06-12 12:33:06,740.740 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:33:06,764.764 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 12:33:06,799.799 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 12:33:06,801.801 INFO    ] No camera update needed
[2026-06-12 12:33:06,802.802 INFO    ] Script finished. Safe exiting...
[2026-06-12 12:33:06,803.803 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 12:33:06,806.806 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 12:33:06,809.809 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 12:33:08,848.848 INFO    ] ================================================
[2026-06-12 12:33:08,863.863 INFO    ] Launching Daemon at Fri Jun 12 12:33:08 IST 2026
[2026-06-12 12:33:08,874.874 INFO    ] ================================================
[2026-06-12 12:33:09,199.199 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 12:33:09
[2026-06-12 12:33:09,512.512 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 12:33:09,642.642 INFO    ] Initializing speech engine...
[2026-06-12 12:33:09,650.650 INFO    ] 2026-06-12 12:33:09
[2026-06-12 12:33:09,861.861 INFO    ] 2026-06-12 12:33:09
[2026-06-12 12:33:09,891.891 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 12:33:10,018.018 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 12:33:10,077.077 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 12:33:10,207.207 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 12:33:10,262.262 INFO    ] time= 12/06/2026 12:33:10
[2026-06-12 12:33:10,291.291 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 12:33:10,307.307 INFO    ] Checking for existing commands in stream...
[2026-06-12 12:33:10,427.427 INFO    ] No existing commands found in stream
[2026-06-12 12:33:15,436.436 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 12:33:15,439.439 INFO    ] Waiting 1.82 seconds before fallback handling...
[2026-06-12 12:33:17,611.611 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 12:33:17,612.612 INFO    ] Checking for system updates...
[2026-06-12 12:33:17,634.634 INFO    ] 200
[2026-06-12 12:33:17,635.635 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:33:17,665.665 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 12:33:17,667.667 INFO    ] No update needed
[2026-06-12 12:33:17,668.668 INFO    ] Checking for camera pi updates...
[2026-06-12 12:33:17,689.689 INFO    ] 200
[2026-06-12 12:33:17,690.690 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:33:17,716.716 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 12:33:17,749.749 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 12:33:17,751.751 INFO    ] No camera update needed
[2026-06-12 12:33:17,752.752 INFO    ] Script finished. Safe exiting...
[2026-06-12 12:33:17,754.754 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 12:33:17,757.757 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 12:33:17,760.760 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 12:33:19,799.799 INFO    ] ================================================
[2026-06-12 12:33:19,814.814 INFO    ] Launching Daemon at Fri Jun 12 12:33:19 IST 2026
[2026-06-12 12:33:19,826.826 INFO    ] ================================================
[2026-06-12 12:33:20,153.153 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 12:33:20
[2026-06-12 12:33:20,465.465 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 12:33:20,608.608 INFO    ] Initializing speech engine...
[2026-06-12 12:33:20,613.613 INFO    ] 2026-06-12 12:33:20
[2026-06-12 12:33:20,819.819 INFO    ] 2026-06-12 12:33:20
[2026-06-12 12:33:20,847.847 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 12:33:21,034.034 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 12:33:21,045.045 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 12:33:21,171.171 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 12:33:21,223.223 INFO    ] time= 12/06/2026 12:33:21
[2026-06-12 12:33:21,253.253 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 12:33:21,269.269 INFO    ] Checking for existing commands in stream...
[2026-06-12 12:33:21,342.342 INFO    ] No existing commands found in stream
[2026-06-12 12:33:26,351.351 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 12:33:26,358.358 INFO    ] Waiting 0.80 seconds before fallback handling...
[2026-06-12 12:33:27,504.504 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 12:33:27,506.506 INFO    ] Checking for system updates...
[2026-06-12 12:33:27,527.527 INFO    ] 200
[2026-06-12 12:33:27,528.528 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:33:27,560.560 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 12:33:27,562.562 INFO    ] No update needed
[2026-06-12 12:33:27,563.563 INFO    ] Checking for camera pi updates...
[2026-06-12 12:33:27,582.582 INFO    ] 200
[2026-06-12 12:33:27,583.583 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:33:27,610.610 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 12:33:27,649.649 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 12:33:27,651.651 INFO    ] No camera update needed
[2026-06-12 12:33:27,652.652 INFO    ] Script finished. Safe exiting...
[2026-06-12 12:33:27,653.653 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 12:33:27,656.656 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 12:33:27,659.659 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 12:33:29,698.698 INFO    ] ================================================
[2026-06-12 12:33:29,714.714 INFO    ] Launching Daemon at Fri Jun 12 12:33:29 IST 2026
[2026-06-12 12:33:29,725.725 INFO    ] ================================================
[2026-06-12 12:33:30,074.074 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 12:33:30
[2026-06-12 12:33:30,384.384 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 12:33:30,516.516 INFO    ] Initializing speech engine...
[2026-06-12 12:33:30,528.528 INFO    ] 2026-06-12 12:33:30
[2026-06-12 12:33:30,734.734 INFO    ] 2026-06-12 12:33:30
[2026-06-12 12:33:30,761.761 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 12:33:30,943.943 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 12:33:30,953.953 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 12:33:31,078.078 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 12:33:31,126.126 INFO    ] time= 12/06/2026 12:33:31
[2026-06-12 12:33:31,178.178 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 12:33:31,189.189 INFO    ] Checking for existing commands in stream...
[2026-06-12 12:33:31,258.258 INFO    ] No existing commands found in stream
[2026-06-12 12:33:36,273.273 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 12:33:36,275.275 INFO    ] Waiting 3.90 seconds before fallback handling...
[2026-06-12 12:33:40,525.525 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 12:33:40,527.527 INFO    ] Checking for system updates...
[2026-06-12 12:33:40,548.548 INFO    ] 200
[2026-06-12 12:33:40,549.549 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:33:40,580.580 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 12:33:40,581.581 INFO    ] No update needed
[2026-06-12 12:33:40,583.583 INFO    ] Checking for camera pi updates...
[2026-06-12 12:33:40,604.604 INFO    ] 200
[2026-06-12 12:33:40,605.605 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:33:40,631.631 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 12:33:40,668.668 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 12:33:40,669.669 INFO    ] No camera update needed
[2026-06-12 12:33:40,671.671 INFO    ] Script finished. Safe exiting...
[2026-06-12 12:33:40,672.672 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 12:33:40,676.676 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 12:33:40,678.678 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 12:33:42,718.718 INFO    ] ================================================
[2026-06-12 12:33:42,734.734 INFO    ] Launching Daemon at Fri Jun 12 12:33:42 IST 2026
[2026-06-12 12:33:42,746.746 INFO    ] ================================================
[2026-06-12 12:33:43,087.087 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 12:33:43
[2026-06-12 12:33:43,405.405 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 12:33:43,549.549 INFO    ] Initializing speech engine...
[2026-06-12 12:33:43,554.554 INFO    ] 2026-06-12 12:33:43
[2026-06-12 12:33:43,759.759 INFO    ] 2026-06-12 12:33:43
[2026-06-12 12:33:43,788.788 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 12:33:43,970.970 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 12:33:43,980.980 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 12:33:44,105.105 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 12:33:44,175.175 INFO    ] time= 12/06/2026 12:33:44
[2026-06-12 12:33:44,199.199 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 12:33:44,205.205 INFO    ] Checking for existing commands in stream...
[2026-06-12 12:33:44,295.295 INFO    ] No existing commands found in stream
[2026-06-12 12:33:49,304.304 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 12:33:49,307.307 INFO    ] Waiting 0.30 seconds before fallback handling...
[2026-06-12 12:33:49,940.940 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 12:33:49,942.942 INFO    ] Checking for system updates...
[2026-06-12 12:33:49,965.965 INFO    ] 200
[2026-06-12 12:33:49,967.967 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:33:50,007.007 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 12:33:50,009.009 INFO    ] No update needed
[2026-06-12 12:33:50,011.011 INFO    ] Checking for camera pi updates...
[2026-06-12 12:33:50,033.033 INFO    ] 200
[2026-06-12 12:33:50,035.035 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:33:50,063.063 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 12:33:50,103.103 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 12:33:50,106.106 INFO    ] No camera update needed
[2026-06-12 12:33:50,108.108 INFO    ] Script finished. Safe exiting...
[2026-06-12 12:33:50,110.110 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 12:33:50,114.114 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 12:33:50,119.119 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 12:33:52,162.162 INFO    ] ================================================
[2026-06-12 12:33:52,178.178 INFO    ] Launching Daemon at Fri Jun 12 12:33:52 IST 2026
[2026-06-12 12:33:52,189.189 INFO    ] ================================================
[2026-06-12 12:33:52,557.557 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 12:33:52
[2026-06-12 12:33:52,894.894 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 12:33:53,047.047 INFO    ] Initializing speech engine...
[2026-06-12 12:33:53,052.052 INFO    ] 2026-06-12 12:33:53
[2026-06-12 12:33:53,263.263 INFO    ] 2026-06-12 12:33:53
[2026-06-12 12:33:53,292.292 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 12:33:53,483.483 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 12:33:53,493.493 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 12:33:53,628.628 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 12:33:53,694.694 INFO    ] time= 12/06/2026 12:33:53
[2026-06-12 12:33:53,716.716 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 12:33:53,723.723 INFO    ] Checking for existing commands in stream...
[2026-06-12 12:33:53,791.791 INFO    ] No existing commands found in stream
[2026-06-12 12:33:58,806.806 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 12:33:58,809.809 INFO    ] Waiting 0.66 seconds before fallback handling...
[2026-06-12 12:33:59,817.817 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 12:33:59,818.818 INFO    ] Checking for system updates...
[2026-06-12 12:33:59,842.842 INFO    ] 200
[2026-06-12 12:33:59,843.843 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:33:59,876.876 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 12:33:59,877.877 INFO    ] No update needed
[2026-06-12 12:33:59,879.879 INFO    ] Checking for camera pi updates...
[2026-06-12 12:33:59,900.900 INFO    ] 200
[2026-06-12 12:33:59,902.902 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:33:59,927.927 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 12:33:59,969.969 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 12:33:59,971.971 INFO    ] No camera update needed
[2026-06-12 12:33:59,972.972 INFO    ] Script finished. Safe exiting...
[2026-06-12 12:33:59,973.973 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 12:33:59,977.977 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 12:33:59,980.980 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 12:34:02,013.013 INFO    ] ================================================
[2026-06-12 12:34:02,025.025 INFO    ] Launching Daemon at Fri Jun 12 12:34:02 IST 2026
[2026-06-12 12:34:02,034.034 INFO    ] ================================================
[2026-06-12 12:34:02,423.423 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 12:34:02
[2026-06-12 12:34:02,766.766 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 12:34:02,917.917 INFO    ] Initializing speech engine...
[2026-06-12 12:34:02,922.922 INFO    ] 2026-06-12 12:34:02
[2026-06-12 12:34:03,130.130 INFO    ] 2026-06-12 12:34:03
[2026-06-12 12:34:03,159.159 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 12:34:03,332.332 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 12:34:03,346.346 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 12:34:03,479.479 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 12:34:03,547.547 INFO    ] time= 12/06/2026 12:34:03
[2026-06-12 12:34:03,575.575 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 12:34:03,576.576 INFO    ] Checking for existing commands in stream...
[2026-06-12 12:34:03,648.648 INFO    ] No existing commands found in stream
[2026-06-12 12:34:08,681.681 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 12:34:08,684.684 INFO    ] Waiting 1.35 seconds before fallback handling...
[2026-06-12 12:34:10,416.416 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 12:34:10,417.417 INFO    ] Checking for system updates...
[2026-06-12 12:34:10,439.439 INFO    ] 200
[2026-06-12 12:34:10,440.440 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:34:10,471.471 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 12:34:10,473.473 INFO    ] No update needed
[2026-06-12 12:34:10,474.474 INFO    ] Checking for camera pi updates...
[2026-06-12 12:34:10,493.493 INFO    ] 200
[2026-06-12 12:34:10,495.495 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:34:10,521.521 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 12:34:10,563.563 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 12:34:10,565.565 INFO    ] No camera update needed
[2026-06-12 12:34:10,566.566 INFO    ] Script finished. Safe exiting...
[2026-06-12 12:34:10,568.568 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 12:34:10,571.571 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 12:34:10,574.574 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 12:34:12,612.612 INFO    ] ================================================
[2026-06-12 12:34:12,628.628 INFO    ] Launching Daemon at Fri Jun 12 12:34:12 IST 2026
[2026-06-12 12:34:12,639.639 INFO    ] ================================================
[2026-06-12 12:34:12,984.984 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 12:34:12
[2026-06-12 12:34:13,316.316 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 12:34:13,467.467 INFO    ] Initializing speech engine...
[2026-06-12 12:34:13,473.473 INFO    ] 2026-06-12 12:34:13
[2026-06-12 12:34:13,681.681 INFO    ] 2026-06-12 12:34:13
[2026-06-12 12:34:13,710.710 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 12:34:13,873.873 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 12:34:13,875.875 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 12:34:13,998.998 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 12:34:14,044.044 INFO    ] time= 12/06/2026 12:34:13
[2026-06-12 12:34:14,064.064 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 12:34:14,122.122 INFO    ] Checking for existing commands in stream...
[2026-06-12 12:34:14,236.236 INFO    ] No existing commands found in stream
[2026-06-12 12:34:19,250.250 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 12:34:19,253.253 INFO    ] Waiting 0.75 seconds before fallback handling...
[2026-06-12 12:34:20,366.366 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 12:34:20,368.368 INFO    ] Checking for system updates...
[2026-06-12 12:34:20,392.392 INFO    ] 200
[2026-06-12 12:34:20,394.394 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:34:20,426.426 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 12:34:20,428.428 INFO    ] No update needed
[2026-06-12 12:34:20,429.429 INFO    ] Checking for camera pi updates...
[2026-06-12 12:34:20,450.450 INFO    ] 200
[2026-06-12 12:34:20,451.451 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:34:20,476.476 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 12:34:20,500.500 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 12:34:20,501.501 INFO    ] No camera update needed
[2026-06-12 12:34:20,502.502 INFO    ] Script finished. Safe exiting...
[2026-06-12 12:34:20,504.504 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 12:34:20,507.507 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 12:34:20,510.510 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 12:34:22,548.548 INFO    ] ================================================
[2026-06-12 12:34:22,564.564 INFO    ] Launching Daemon at Fri Jun 12 12:34:22 IST 2026
[2026-06-12 12:34:22,575.575 INFO    ] ================================================
[2026-06-12 12:34:22,925.925 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 12:34:22
[2026-06-12 12:34:23,241.241 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 12:34:23,384.384 INFO    ] Initializing speech engine...
[2026-06-12 12:34:23,388.388 INFO    ] 2026-06-12 12:34:23
[2026-06-12 12:34:23,594.594 INFO    ] 2026-06-12 12:34:23
[2026-06-12 12:34:23,621.621 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 12:34:23,805.805 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 12:34:23,808.808 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 12:34:23,959.959 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 12:34:24,012.012 INFO    ] time= 12/06/2026 12:34:23
[2026-06-12 12:34:24,035.035 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 12:34:24,041.041 INFO    ] Checking for existing commands in stream...
[2026-06-12 12:34:24,106.106 INFO    ] No existing commands found in stream
[2026-06-12 12:34:29,116.116 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 12:34:29,119.119 INFO    ] Waiting 0.37 seconds before fallback handling...
[2026-06-12 12:34:29,840.840 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 12:34:29,842.842 INFO    ] Checking for system updates...
[2026-06-12 12:34:29,872.872 INFO    ] 200
[2026-06-12 12:34:29,874.874 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:34:29,903.903 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 12:34:29,905.905 INFO    ] No update needed
[2026-06-12 12:34:29,906.906 INFO    ] Checking for camera pi updates...
[2026-06-12 12:34:29,925.925 INFO    ] 200
[2026-06-12 12:34:29,927.927 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:34:29,951.951 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 12:34:29,995.995 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 12:34:29,997.997 INFO    ] No camera update needed
[2026-06-12 12:34:29,998.998 INFO    ] Script finished. Safe exiting...
[2026-06-12 12:34:29,999.999 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 12:34:30,002.002 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 12:34:30,005.005 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 12:34:32,038.038 INFO    ] ================================================
[2026-06-12 12:34:32,048.048 INFO    ] Launching Daemon at Fri Jun 12 12:34:32 IST 2026
[2026-06-12 12:34:32,055.055 INFO    ] ================================================
[2026-06-12 12:34:32,444.444 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 12:34:32
[2026-06-12 12:34:32,778.778 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 12:34:32,931.931 INFO    ] Initializing speech engine...
[2026-06-12 12:34:32,935.935 INFO    ] 2026-06-12 12:34:32
[2026-06-12 12:34:33,142.142 INFO    ] 2026-06-12 12:34:33
[2026-06-12 12:34:33,172.172 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 12:34:33,358.358 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 12:34:33,367.367 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 12:34:33,491.491 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 12:34:33,562.562 INFO    ] time= 12/06/2026 12:34:33
[2026-06-12 12:34:33,591.591 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 12:34:33,597.597 INFO    ] Checking for existing commands in stream...
[2026-06-12 12:34:33,665.665 INFO    ] No existing commands found in stream
[2026-06-12 12:34:38,672.672 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 12:34:38,676.676 INFO    ] Waiting 2.85 seconds before fallback handling...
[2026-06-12 12:34:41,869.869 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 12:34:41,870.870 INFO    ] Checking for system updates...
[2026-06-12 12:34:41,891.891 INFO    ] 200
[2026-06-12 12:34:41,893.893 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:34:41,923.923 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 12:34:41,925.925 INFO    ] No update needed
[2026-06-12 12:34:41,926.926 INFO    ] Checking for camera pi updates...
[2026-06-12 12:34:41,947.947 INFO    ] 200
[2026-06-12 12:34:41,948.948 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:34:41,974.974 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 12:34:42,010.010 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 12:34:42,012.012 INFO    ] No camera update needed
[2026-06-12 12:34:42,013.013 INFO    ] Script finished. Safe exiting...
[2026-06-12 12:34:42,014.014 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 12:34:42,018.018 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 12:34:42,021.021 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 12:34:44,060.060 INFO    ] ================================================
[2026-06-12 12:34:44,075.075 INFO    ] Launching Daemon at Fri Jun 12 12:34:44 IST 2026
[2026-06-12 12:34:44,087.087 INFO    ] ================================================
[2026-06-12 12:34:44,421.421 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 12:34:44
[2026-06-12 12:34:44,736.736 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 12:34:44,873.873 INFO    ] Initializing speech engine...
[2026-06-12 12:34:44,886.886 INFO    ] 2026-06-12 12:34:44
[2026-06-12 12:34:45,103.103 INFO    ] 2026-06-12 12:34:45
[2026-06-12 12:34:45,133.133 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 12:34:45,330.330 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 12:34:45,333.333 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 12:34:45,472.472 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 12:34:45,523.523 INFO    ] time= 12/06/2026 12:34:45
[2026-06-12 12:34:45,562.562 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 12:34:45,579.579 INFO    ] Checking for existing commands in stream...
[2026-06-12 12:34:45,681.681 INFO    ] No existing commands found in stream
[2026-06-12 12:34:50,696.696 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 12:34:50,698.698 INFO    ] Waiting 0.03 seconds before fallback handling...
[2026-06-12 12:34:51,081.081 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 12:34:51,083.083 INFO    ] Checking for system updates...
[2026-06-12 12:34:51,103.103 INFO    ] 200
[2026-06-12 12:34:51,104.104 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:34:51,135.135 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 12:34:51,136.136 INFO    ] No update needed
[2026-06-12 12:34:51,137.137 INFO    ] Checking for camera pi updates...
[2026-06-12 12:34:51,158.158 INFO    ] 200
[2026-06-12 12:34:51,159.159 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:34:51,184.184 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 12:34:51,228.228 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 12:34:51,230.230 INFO    ] No camera update needed
[2026-06-12 12:34:51,231.231 INFO    ] Script finished. Safe exiting...
[2026-06-12 12:34:51,232.232 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 12:34:51,235.235 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 12:34:51,238.238 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 12:34:53,276.276 INFO    ] ================================================
[2026-06-12 12:34:53,292.292 INFO    ] Launching Daemon at Fri Jun 12 12:34:53 IST 2026
[2026-06-12 12:34:53,303.303 INFO    ] ================================================
[2026-06-12 12:34:53,655.655 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 12:34:53
[2026-06-12 12:34:53,973.973 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 12:34:54,112.112 INFO    ] Initializing speech engine...
[2026-06-12 12:34:54,121.121 INFO    ] 2026-06-12 12:34:54
[2026-06-12 12:34:54,328.328 INFO    ] 2026-06-12 12:34:54
[2026-06-12 12:34:54,357.357 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 12:34:54,540.540 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 12:34:54,543.543 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 12:34:54,671.671 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 12:34:54,697.697 INFO    ] time= 12/06/2026 12:34:54
[2026-06-12 12:34:54,749.749 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 12:34:54,771.771 INFO    ] Checking for existing commands in stream...
[2026-06-12 12:34:54,842.842 INFO    ] No existing commands found in stream
[2026-06-12 12:34:59,852.852 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 12:34:59,855.855 INFO    ] Waiting 2.32 seconds before fallback handling...
[2026-06-12 12:35:05,710.710 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 12:35:05,711.711 INFO    ] Checking for system updates...
[2026-06-12 12:35:05,733.733 INFO    ] 200
[2026-06-12 12:35:05,734.734 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:35:05,765.765 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 12:35:05,766.766 INFO    ] No update needed
[2026-06-12 12:35:05,767.767 INFO    ] Checking for camera pi updates...
[2026-06-12 12:35:05,787.787 INFO    ] 200
[2026-06-12 12:35:05,788.788 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:35:05,816.816 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 12:35:05,859.859 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 12:35:05,861.861 INFO    ] No camera update needed
[2026-06-12 12:35:05,863.863 INFO    ] Script finished. Safe exiting...
[2026-06-12 12:35:05,865.865 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 12:35:05,868.868 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 12:35:05,871.871 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 12:35:07,911.911 INFO    ] ================================================
[2026-06-12 12:35:07,927.927 INFO    ] Launching Daemon at Fri Jun 12 12:35:07 IST 2026
[2026-06-12 12:35:07,938.938 INFO    ] ================================================
[2026-06-12 12:35:08,281.281 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 12:35:08
[2026-06-12 12:35:08,616.616 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 12:35:08,766.766 INFO    ] Initializing speech engine...
[2026-06-12 12:35:08,772.772 INFO    ] 2026-06-12 12:35:08
[2026-06-12 12:35:08,979.979 INFO    ] 2026-06-12 12:35:08
[2026-06-12 12:35:09,007.007 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 12:35:09,191.191 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 12:35:09,200.200 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 12:35:09,328.328 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 12:35:09,389.389 INFO    ] time= 12/06/2026 12:35:09
[2026-06-12 12:35:09,422.422 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 12:35:09,428.428 INFO    ] Checking for existing commands in stream...
[2026-06-12 12:35:09,518.518 INFO    ] No existing commands found in stream
[2026-06-12 12:35:14,527.527 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 12:35:14,531.531 INFO    ] Waiting 3.42 seconds before fallback handling...
[2026-06-12 12:35:18,312.312 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 12:35:18,314.314 INFO    ] Checking for system updates...
[2026-06-12 12:35:18,336.336 INFO    ] 200
[2026-06-12 12:35:18,337.337 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:35:18,370.370 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 12:35:18,371.371 INFO    ] No update needed
[2026-06-12 12:35:18,372.372 INFO    ] Checking for camera pi updates...
[2026-06-12 12:35:18,394.394 INFO    ] 200
[2026-06-12 12:35:18,396.396 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:35:18,419.419 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 12:35:18,459.459 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 12:35:18,461.461 INFO    ] No camera update needed
[2026-06-12 12:35:18,462.462 INFO    ] Script finished. Safe exiting...
[2026-06-12 12:35:18,463.463 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 12:35:18,467.467 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 12:35:18,470.470 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 12:35:20,508.508 INFO    ] ================================================
[2026-06-12 12:35:20,524.524 INFO    ] Launching Daemon at Fri Jun 12 12:35:20 IST 2026
[2026-06-12 12:35:20,536.536 INFO    ] ================================================
[2026-06-12 12:35:20,871.871 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 12:35:20
[2026-06-12 12:35:21,183.183 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 12:35:21,313.313 INFO    ] Initializing speech engine...
[2026-06-12 12:35:21,318.318 INFO    ] 2026-06-12 12:35:21
[2026-06-12 12:35:21,537.537 INFO    ] 2026-06-12 12:35:21
[2026-06-12 12:35:21,566.566 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 12:35:21,751.751 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 12:35:21,755.755 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 12:35:21,892.892 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 12:35:21,960.960 INFO    ] time= 12/06/2026 12:35:21
[2026-06-12 12:35:21,984.984 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 12:35:21,991.991 INFO    ] Checking for existing commands in stream...
[2026-06-12 12:35:22,057.057 INFO    ] No existing commands found in stream
[2026-06-12 12:35:27,067.067 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 12:35:27,070.070 INFO    ] Waiting 3.39 seconds before fallback handling...
[2026-06-12 12:35:30,814.814 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 12:35:30,815.815 INFO    ] Checking for system updates...
[2026-06-12 12:35:30,837.837 INFO    ] 200
[2026-06-12 12:35:30,838.838 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:35:30,868.868 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 12:35:30,869.869 INFO    ] No update needed
[2026-06-12 12:35:30,871.871 INFO    ] Checking for camera pi updates...
[2026-06-12 12:35:30,890.890 INFO    ] 200
[2026-06-12 12:35:30,892.892 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:35:30,918.918 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 12:35:30,952.952 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 12:35:30,953.953 INFO    ] No camera update needed
[2026-06-12 12:35:30,955.955 INFO    ] Script finished. Safe exiting...
[2026-06-12 12:35:30,956.956 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 12:35:30,959.959 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 12:35:30,962.962 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 12:35:32,986.986 INFO    ] ================================================
[2026-06-12 12:35:32,995.995 INFO    ] Launching Daemon at Fri Jun 12 12:35:32 IST 2026
[2026-06-12 12:35:33,001.001 INFO    ] ================================================
[2026-06-12 12:35:33,362.362 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 12:35:33
[2026-06-12 12:35:33,701.701 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 12:35:33,850.850 INFO    ] Initializing speech engine...
[2026-06-12 12:35:33,855.855 INFO    ] 2026-06-12 12:35:33
[2026-06-12 12:35:34,062.062 INFO    ] 2026-06-12 12:35:34
[2026-06-12 12:35:34,091.091 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 12:35:34,273.273 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 12:35:34,277.277 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 12:35:34,429.429 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 12:35:34,481.481 INFO    ] time= 12/06/2026 12:35:34
[2026-06-12 12:35:34,504.504 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 12:35:34,511.511 INFO    ] Checking for existing commands in stream...
[2026-06-12 12:35:34,577.577 INFO    ] No existing commands found in stream
[2026-06-12 12:35:39,584.584 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 12:35:39,587.587 INFO    ] Waiting 2.85 seconds before fallback handling...
[2026-06-12 12:35:42,805.805 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 12:35:42,807.807 INFO    ] Checking for system updates...
[2026-06-12 12:35:42,828.828 INFO    ] 200
[2026-06-12 12:35:42,829.829 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:35:42,861.861 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 12:35:42,863.863 INFO    ] No update needed
[2026-06-12 12:35:42,864.864 INFO    ] Checking for camera pi updates...
[2026-06-12 12:35:42,886.886 INFO    ] 200
[2026-06-12 12:35:42,887.887 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:35:42,912.912 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 12:35:43,059.059 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 12:35:43,061.061 INFO    ] No camera update needed
[2026-06-12 12:35:43,062.062 INFO    ] Script finished. Safe exiting...
[2026-06-12 12:35:43,063.063 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 12:35:43,067.067 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 12:35:43,070.070 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 12:35:45,108.108 INFO    ] ================================================
[2026-06-12 12:35:45,124.124 INFO    ] Launching Daemon at Fri Jun 12 12:35:45 IST 2026
[2026-06-12 12:35:45,135.135 INFO    ] ================================================
[2026-06-12 12:35:45,464.464 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 12:35:45
[2026-06-12 12:35:45,773.773 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 12:35:45,903.903 INFO    ] Initializing speech engine...
[2026-06-12 12:35:45,906.906 INFO    ] 2026-06-12 12:35:45
[2026-06-12 12:35:46,122.122 INFO    ] 2026-06-12 12:35:46
[2026-06-12 12:35:46,151.151 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 12:35:46,333.333 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 12:35:46,342.342 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 12:35:46,465.465 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 12:35:46,520.520 INFO    ] time= 12/06/2026 12:35:46
[2026-06-12 12:35:46,544.544 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 12:35:46,565.565 INFO    ] Checking for existing commands in stream...
[2026-06-12 12:35:46,636.636 INFO    ] No existing commands found in stream
[2026-06-12 12:35:51,650.650 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 12:35:51,653.653 INFO    ] Waiting 1.29 seconds before fallback handling...
[2026-06-12 12:35:53,326.326 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 12:35:53,327.327 INFO    ] Checking for system updates...
[2026-06-12 12:35:53,348.348 INFO    ] 200
[2026-06-12 12:35:53,349.349 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:35:53,383.383 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 12:35:53,384.384 INFO    ] No update needed
[2026-06-12 12:35:53,385.385 INFO    ] Checking for camera pi updates...
[2026-06-12 12:35:53,405.405 INFO    ] 200
[2026-06-12 12:35:53,407.407 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:35:53,430.430 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 12:35:53,466.466 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 12:35:53,468.468 INFO    ] No camera update needed
[2026-06-12 12:35:53,469.469 INFO    ] Script finished. Safe exiting...
[2026-06-12 12:35:53,470.470 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 12:35:53,473.473 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 12:35:53,476.476 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 12:35:55,514.514 INFO    ] ================================================
[2026-06-12 12:35:55,529.529 INFO    ] Launching Daemon at Fri Jun 12 12:35:55 IST 2026
[2026-06-12 12:35:55,540.540 INFO    ] ================================================
[2026-06-12 12:35:55,921.921 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 12:35:55
[2026-06-12 12:35:56,240.240 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 12:35:56,371.371 INFO    ] Initializing speech engine...
[2026-06-12 12:35:56,374.374 INFO    ] 2026-06-12 12:35:56
[2026-06-12 12:35:56,592.592 INFO    ] 2026-06-12 12:35:56
[2026-06-12 12:35:56,621.621 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 12:35:56,805.805 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 12:35:56,809.809 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 12:35:56,944.944 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 12:35:57,006.006 INFO    ] time= 12/06/2026 12:35:56
[2026-06-12 12:35:57,039.039 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 12:35:57,041.041 INFO    ] Checking for existing commands in stream...
[2026-06-12 12:35:57,113.113 INFO    ] No existing commands found in stream
[2026-06-12 12:36:02,122.122 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 12:36:02,124.124 INFO    ] Waiting 3.31 seconds before fallback handling...
[2026-06-12 12:36:05,782.782 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 12:36:05,783.783 INFO    ] Checking for system updates...
[2026-06-12 12:36:05,804.804 INFO    ] 200
[2026-06-12 12:36:05,805.805 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:36:05,839.839 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 12:36:05,840.840 INFO    ] No update needed
[2026-06-12 12:36:05,842.842 INFO    ] Checking for camera pi updates...
[2026-06-12 12:36:05,862.862 INFO    ] 200
[2026-06-12 12:36:05,864.864 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:36:05,887.887 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 12:36:05,924.924 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 12:36:05,926.926 INFO    ] No camera update needed
[2026-06-12 12:36:05,927.927 INFO    ] Script finished. Safe exiting...
[2026-06-12 12:36:05,928.928 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 12:36:05,931.931 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 12:36:05,934.934 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 12:36:07,973.973 INFO    ] ================================================
[2026-06-12 12:36:07,989.989 INFO    ] Launching Daemon at Fri Jun 12 12:36:07 IST 2026
[2026-06-12 12:36:08,000.000 INFO    ] ================================================
[2026-06-12 12:36:08,332.332 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 12:36:08
[2026-06-12 12:36:08,647.647 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 12:36:08,781.781 INFO    ] Initializing speech engine...
[2026-06-12 12:36:08,785.785 INFO    ] 2026-06-12 12:36:08
[2026-06-12 12:36:09,010.010 INFO    ] 2026-06-12 12:36:08
[2026-06-12 12:36:09,041.041 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 12:36:09,170.170 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 12:36:09,208.208 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 12:36:09,377.377 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 12:36:09,380.380 INFO    ] time= 12/06/2026 12:36:09
[2026-06-12 12:36:09,442.442 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 12:36:09,480.480 INFO    ] Checking for existing commands in stream...
[2026-06-12 12:36:09,559.559 INFO    ] No existing commands found in stream
[2026-06-12 12:36:14,592.592 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 12:36:14,595.595 INFO    ] Waiting 1.28 seconds before fallback handling...
[2026-06-12 12:36:16,261.261 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 12:36:16,262.262 INFO    ] Checking for system updates...
[2026-06-12 12:36:16,283.283 INFO    ] 200
[2026-06-12 12:36:16,285.285 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:36:16,315.315 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 12:36:16,316.316 INFO    ] No update needed
[2026-06-12 12:36:16,317.317 INFO    ] Checking for camera pi updates...
[2026-06-12 12:36:16,339.339 INFO    ] 200
[2026-06-12 12:36:16,340.340 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:36:16,367.367 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 12:36:16,403.403 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 12:36:16,404.404 INFO    ] No camera update needed
[2026-06-12 12:36:16,405.405 INFO    ] Script finished. Safe exiting...
[2026-06-12 12:36:16,407.407 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 12:36:16,410.410 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 12:36:16,412.412 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 12:36:18,451.451 INFO    ] ================================================
[2026-06-12 12:36:18,467.467 INFO    ] Launching Daemon at Fri Jun 12 12:36:18 IST 2026
[2026-06-12 12:36:18,479.479 INFO    ] ================================================
[2026-06-12 12:36:18,810.810 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 12:36:18
[2026-06-12 12:36:19,122.122 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 12:36:19,252.252 INFO    ] Initializing speech engine...
[2026-06-12 12:36:19,261.261 INFO    ] 2026-06-12 12:36:19
[2026-06-12 12:36:19,486.486 INFO    ] 2026-06-12 12:36:19
[2026-06-12 12:36:19,521.521 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 12:36:19,722.722 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 12:36:19,725.725 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 12:36:19,860.860 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 12:36:19,926.926 INFO    ] time= 12/06/2026 12:36:19
[2026-06-12 12:36:19,955.955 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 12:36:19,961.961 INFO    ] Checking for existing commands in stream...
[2026-06-12 12:36:20,028.028 INFO    ] No existing commands found in stream
[2026-06-12 12:36:25,036.036 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 12:36:25,038.038 INFO    ] Waiting 1.68 seconds before fallback handling...
[2026-06-12 12:36:26,998.998 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 12:36:26,999.999 INFO    ] Checking for system updates...
[2026-06-12 12:36:27,021.021 INFO    ] 200
[2026-06-12 12:36:27,022.022 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:36:27,054.054 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 12:36:27,055.055 INFO    ] No update needed
[2026-06-12 12:36:27,057.057 INFO    ] Checking for camera pi updates...
[2026-06-12 12:36:27,076.076 INFO    ] 200
[2026-06-12 12:36:27,077.077 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:36:27,100.100 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 12:36:27,140.140 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 12:36:27,141.141 INFO    ] No camera update needed
[2026-06-12 12:36:27,142.142 INFO    ] Script finished. Safe exiting...
[2026-06-12 12:36:27,144.144 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 12:36:27,146.146 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 12:36:27,149.149 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 12:36:29,187.187 INFO    ] ================================================
[2026-06-12 12:36:29,203.203 INFO    ] Launching Daemon at Fri Jun 12 12:36:29 IST 2026
[2026-06-12 12:36:29,214.214 INFO    ] ================================================
[2026-06-12 12:36:29,560.560 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 12:36:29
[2026-06-12 12:36:29,876.876 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 12:36:30,009.009 INFO    ] Initializing speech engine...
[2026-06-12 12:36:30,021.021 INFO    ] 2026-06-12 12:36:30
[2026-06-12 12:36:30,228.228 INFO    ] 2026-06-12 12:36:30
[2026-06-12 12:36:30,256.256 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 12:36:30,378.378 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 12:36:30,441.441 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 12:36:30,575.575 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 12:36:30,632.632 INFO    ] time= 12/06/2026 12:36:30
[2026-06-12 12:36:30,666.666 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 12:36:30,671.671 INFO    ] Checking for existing commands in stream...
[2026-06-12 12:36:30,742.742 INFO    ] No existing commands found in stream
[2026-06-12 12:36:35,756.756 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 12:36:35,759.759 INFO    ] Waiting 0.33 seconds before fallback handling...
[2026-06-12 12:36:39,066.066 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 12:36:39,068.068 INFO    ] Checking for system updates...
[2026-06-12 12:36:39,107.107 INFO    ] 200
[2026-06-12 12:36:39,110.110 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:36:39,165.165 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 12:36:39,167.167 INFO    ] No update needed
[2026-06-12 12:36:39,168.168 INFO    ] Checking for camera pi updates...
[2026-06-12 12:36:39,187.187 INFO    ] 200
[2026-06-12 12:36:39,189.189 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:36:39,212.212 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 12:36:39,247.247 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 12:36:39,249.249 INFO    ] No camera update needed
[2026-06-12 12:36:39,250.250 INFO    ] Script finished. Safe exiting...
[2026-06-12 12:36:39,252.252 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 12:36:39,255.255 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 12:36:39,257.257 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 12:36:41,297.297 INFO    ] ================================================
[2026-06-12 12:36:41,313.313 INFO    ] Launching Daemon at Fri Jun 12 12:36:41 IST 2026
[2026-06-12 12:36:41,324.324 INFO    ] ================================================
[2026-06-12 12:36:41,700.700 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 12:36:41
[2026-06-12 12:36:42,018.018 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 12:36:42,165.165 INFO    ] Initializing speech engine...
[2026-06-12 12:36:42,170.170 INFO    ] 2026-06-12 12:36:42
[2026-06-12 12:36:42,384.384 INFO    ] 2026-06-12 12:36:42
[2026-06-12 12:36:42,415.415 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 12:36:42,545.545 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 12:36:42,584.584 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 12:36:42,723.723 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 12:36:42,757.757 INFO    ] time= 12/06/2026 12:36:42
[2026-06-12 12:36:42,813.813 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 12:36:42,852.852 INFO    ] Checking for existing commands in stream...
[2026-06-12 12:36:42,963.963 INFO    ] No existing commands found in stream
[2026-06-12 12:36:47,972.972 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 12:36:47,975.975 INFO    ] Waiting 2.65 seconds before fallback handling...
[2026-06-12 12:36:51,046.046 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 12:36:51,048.048 INFO    ] Checking for system updates...
[2026-06-12 12:36:51,068.068 INFO    ] 200
[2026-06-12 12:36:51,070.070 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:36:51,101.101 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 12:36:51,102.102 INFO    ] No update needed
[2026-06-12 12:36:51,104.104 INFO    ] Checking for camera pi updates...
[2026-06-12 12:36:51,124.124 INFO    ] 200
[2026-06-12 12:36:51,126.126 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:36:51,148.148 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 12:36:51,185.185 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 12:36:51,187.187 INFO    ] No camera update needed
[2026-06-12 12:36:51,188.188 INFO    ] Script finished. Safe exiting...
[2026-06-12 12:36:51,189.189 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 12:36:51,193.193 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 12:36:51,195.195 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 12:36:53,234.234 INFO    ] ================================================
[2026-06-12 12:36:53,250.250 INFO    ] Launching Daemon at Fri Jun 12 12:36:53 IST 2026
[2026-06-12 12:36:53,262.262 INFO    ] ================================================
[2026-06-12 12:36:53,622.622 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 12:36:53
[2026-06-12 12:36:53,956.956 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 12:36:54,101.101 INFO    ] Initializing speech engine...
[2026-06-12 12:36:54,111.111 INFO    ] 2026-06-12 12:36:54
[2026-06-12 12:36:54,321.321 INFO    ] 2026-06-12 12:36:54
[2026-06-12 12:36:54,351.351 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 12:36:54,485.485 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 12:36:54,538.538 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 12:36:54,699.699 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 12:36:54,760.760 INFO    ] time= 12/06/2026 12:36:54
[2026-06-12 12:36:54,771.771 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 12:36:54,777.777 INFO    ] Checking for existing commands in stream...
[2026-06-12 12:36:54,844.844 INFO    ] No existing commands found in stream
[2026-06-12 12:36:59,853.853 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 12:36:59,856.856 INFO    ] Waiting 3.21 seconds before fallback handling...
[2026-06-12 12:37:03,447.447 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 12:37:03,449.449 INFO    ] Checking for system updates...
[2026-06-12 12:37:03,470.470 INFO    ] 200
[2026-06-12 12:37:03,471.471 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:37:03,504.504 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 12:37:03,506.506 INFO    ] No update needed
[2026-06-12 12:37:03,507.507 INFO    ] Checking for camera pi updates...
[2026-06-12 12:37:03,529.529 INFO    ] 200
[2026-06-12 12:37:03,531.531 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:37:03,554.554 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 12:37:03,604.604 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 12:37:03,606.606 INFO    ] No camera update needed
[2026-06-12 12:37:03,607.607 INFO    ] Script finished. Safe exiting...
[2026-06-12 12:37:03,609.609 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 12:37:03,612.612 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 12:37:03,615.615 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 12:37:05,654.654 INFO    ] ================================================
[2026-06-12 12:37:05,669.669 INFO    ] Launching Daemon at Fri Jun 12 12:37:05 IST 2026
[2026-06-12 12:37:05,680.680 INFO    ] ================================================
[2026-06-12 12:37:06,048.048 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 12:37:06
[2026-06-12 12:37:06,385.385 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 12:37:06,537.537 INFO    ] Initializing speech engine...
[2026-06-12 12:37:06,543.543 INFO    ] 2026-06-12 12:37:06
[2026-06-12 12:37:06,753.753 INFO    ] 2026-06-12 12:37:06
[2026-06-12 12:37:06,782.782 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 12:37:06,912.912 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 12:37:07,065.065 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 12:37:07,203.203 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 12:37:07,205.205 INFO    ] time= 12/06/2026 12:37:07
[2026-06-12 12:37:07,207.207 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 12:37:07,224.224 INFO    ] Checking for existing commands in stream...
[2026-06-12 12:37:07,327.327 INFO    ] No existing commands found in stream
[2026-06-12 12:37:12,336.336 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 12:37:12,339.339 INFO    ] Waiting 0.68 seconds before fallback handling...
[2026-06-12 12:37:13,461.461 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 12:37:13,463.463 INFO    ] Checking for system updates...
[2026-06-12 12:37:13,485.485 INFO    ] 200
[2026-06-12 12:37:13,487.487 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:37:13,522.522 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 12:37:13,523.523 INFO    ] No update needed
[2026-06-12 12:37:13,525.525 INFO    ] Checking for camera pi updates...
[2026-06-12 12:37:13,547.547 INFO    ] 200
[2026-06-12 12:37:13,548.548 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:37:13,573.573 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 12:37:13,618.618 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 12:37:13,620.620 INFO    ] No camera update needed
[2026-06-12 12:37:13,622.622 INFO    ] Script finished. Safe exiting...
[2026-06-12 12:37:13,623.623 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 12:37:13,626.626 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 12:37:13,629.629 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 12:37:15,668.668 INFO    ] ================================================
[2026-06-12 12:37:15,683.683 INFO    ] Launching Daemon at Fri Jun 12 12:37:15 IST 2026
[2026-06-12 12:37:15,694.694 INFO    ] ================================================
[2026-06-12 12:37:16,067.067 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 12:37:16
[2026-06-12 12:37:16,403.403 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 12:37:16,541.541 INFO    ] Initializing speech engine...
[2026-06-12 12:37:16,549.549 INFO    ] 2026-06-12 12:37:16
[2026-06-12 12:37:16,765.765 INFO    ] 2026-06-12 12:37:16
[2026-06-12 12:37:16,794.794 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 12:37:16,977.977 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 12:37:16,987.987 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 12:37:17,114.114 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 12:37:17,171.171 INFO    ] time= 12/06/2026 12:37:17
[2026-06-12 12:37:17,205.205 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 12:37:17,211.211 INFO    ] Checking for existing commands in stream...
[2026-06-12 12:37:17,282.282 INFO    ] No existing commands found in stream
[2026-06-12 12:37:22,292.292 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 12:37:22,295.295 INFO    ] Waiting 2.88 seconds before fallback handling...
[2026-06-12 12:37:25,519.519 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 12:37:25,521.521 INFO    ] Checking for system updates...
[2026-06-12 12:37:25,543.543 INFO    ] 200
[2026-06-12 12:37:25,544.544 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:37:25,579.579 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 12:37:25,581.581 INFO    ] No update needed
[2026-06-12 12:37:25,582.582 INFO    ] Checking for camera pi updates...
[2026-06-12 12:37:25,604.604 INFO    ] 200
[2026-06-12 12:37:25,606.606 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:37:25,630.630 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 12:37:25,670.670 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 12:37:25,672.672 INFO    ] No camera update needed
[2026-06-12 12:37:25,673.673 INFO    ] Script finished. Safe exiting...
[2026-06-12 12:37:25,675.675 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 12:37:25,678.678 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 12:37:25,681.681 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 12:37:27,720.720 INFO    ] ================================================
[2026-06-12 12:37:27,736.736 INFO    ] Launching Daemon at Fri Jun 12 12:37:27 IST 2026
[2026-06-12 12:37:27,748.748 INFO    ] ================================================
[2026-06-12 12:37:28,137.137 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 12:37:28
[2026-06-12 12:37:28,472.472 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 12:37:28,621.621 INFO    ] Initializing speech engine...
[2026-06-12 12:37:28,626.626 INFO    ] 2026-06-12 12:37:28
[2026-06-12 12:37:28,835.835 INFO    ] 2026-06-12 12:37:28
[2026-06-12 12:37:28,864.864 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 12:37:29,048.048 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 12:37:29,059.059 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 12:37:29,196.196 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 12:37:29,252.252 INFO    ] time= 12/06/2026 12:37:29
[2026-06-12 12:37:29,276.276 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 12:37:29,282.282 INFO    ] Checking for existing commands in stream...
[2026-06-12 12:37:29,349.349 INFO    ] No existing commands found in stream
[2026-06-12 12:37:34,363.363 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 12:37:34,366.366 INFO    ] Waiting 1.76 seconds before fallback handling...
[2026-06-12 12:37:36,521.521 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 12:37:36,523.523 INFO    ] Checking for system updates...
[2026-06-12 12:37:36,544.544 INFO    ] 200
[2026-06-12 12:37:36,546.546 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:37:36,576.576 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 12:37:36,577.577 INFO    ] No update needed
[2026-06-12 12:37:36,578.578 INFO    ] Checking for camera pi updates...
[2026-06-12 12:37:36,599.599 INFO    ] 200
[2026-06-12 12:37:36,600.600 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:37:36,624.624 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 12:37:36,661.661 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 12:37:36,662.662 INFO    ] No camera update needed
[2026-06-12 12:37:36,663.663 INFO    ] Script finished. Safe exiting...
[2026-06-12 12:37:36,664.664 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 12:37:36,667.667 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 12:37:36,670.670 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 12:37:38,709.709 INFO    ] ================================================
[2026-06-12 12:37:38,724.724 INFO    ] Launching Daemon at Fri Jun 12 12:37:38 IST 2026
[2026-06-12 12:37:38,735.735 INFO    ] ================================================
[2026-06-12 12:37:39,101.101 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 12:37:39
[2026-06-12 12:37:39,413.413 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 12:37:39,544.544 INFO    ] Initializing speech engine...
[2026-06-12 12:37:39,558.558 INFO    ] 2026-06-12 12:37:39
[2026-06-12 12:37:39,766.766 INFO    ] 2026-06-12 12:37:39
[2026-06-12 12:37:39,795.795 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 12:37:39,980.980 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 12:37:39,984.984 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 12:37:40,114.114 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 12:37:40,180.180 INFO    ] time= 12/06/2026 12:37:40
[2026-06-12 12:37:40,214.214 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 12:37:40,220.220 INFO    ] Checking for existing commands in stream...
[2026-06-12 12:37:40,289.289 INFO    ] No existing commands found in stream
[2026-06-12 12:37:45,298.298 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 12:37:45,301.301 INFO    ] Waiting 2.86 seconds before fallback handling...
[2026-06-12 12:37:48,530.530 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 12:37:48,531.531 INFO    ] Checking for system updates...
[2026-06-12 12:37:48,553.553 INFO    ] 200
[2026-06-12 12:37:48,554.554 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:37:48,586.586 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 12:37:48,588.588 INFO    ] No update needed
[2026-06-12 12:37:48,589.589 INFO    ] Checking for camera pi updates...
[2026-06-12 12:37:48,609.609 INFO    ] 200
[2026-06-12 12:37:48,611.611 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:37:48,634.634 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 12:37:48,772.772 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 12:37:48,774.774 INFO    ] No camera update needed
[2026-06-12 12:37:48,775.775 INFO    ] Script finished. Safe exiting...
[2026-06-12 12:37:48,776.776 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 12:37:48,779.779 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 12:37:48,782.782 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 12:37:50,819.819 INFO    ] ================================================
[2026-06-12 12:37:50,835.835 INFO    ] Launching Daemon at Fri Jun 12 12:37:50 IST 2026
[2026-06-12 12:37:50,845.845 INFO    ] ================================================
[2026-06-12 12:37:51,203.203 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 12:37:51
[2026-06-12 12:37:51,514.514 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 12:37:51,644.644 INFO    ] Initializing speech engine...
[2026-06-12 12:37:51,651.651 INFO    ] 2026-06-12 12:37:51
[2026-06-12 12:37:51,865.865 INFO    ] 2026-06-12 12:37:51
[2026-06-12 12:37:51,894.894 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 12:37:52,078.078 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 12:37:52,082.082 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 12:37:52,219.219 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 12:37:52,273.273 INFO    ] time= 12/06/2026 12:37:52
[2026-06-12 12:37:52,313.313 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 12:37:52,320.320 INFO    ] Checking for existing commands in stream...
[2026-06-12 12:37:52,387.387 INFO    ] No existing commands found in stream
[2026-06-12 12:37:57,396.396 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 12:37:57,398.398 INFO    ] Waiting 3.08 seconds before fallback handling...
[2026-06-12 12:38:00,838.838 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 12:38:00,839.839 INFO    ] Checking for system updates...
[2026-06-12 12:38:00,862.862 INFO    ] 200
[2026-06-12 12:38:00,863.863 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:38:00,898.898 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 12:38:00,900.900 INFO    ] No update needed
[2026-06-12 12:38:00,901.901 INFO    ] Checking for camera pi updates...
[2026-06-12 12:38:00,925.925 INFO    ] 200
[2026-06-12 12:38:00,926.926 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:38:00,952.952 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 12:38:00,995.995 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 12:38:00,997.997 INFO    ] No camera update needed
[2026-06-12 12:38:00,998.998 INFO    ] Script finished. Safe exiting...
[2026-06-12 12:38:00,999.999 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 12:38:01,003.003 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 12:38:01,006.006 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 12:38:03,040.040 INFO    ] ================================================
[2026-06-12 12:38:03,055.055 INFO    ] Launching Daemon at Fri Jun 12 12:38:03 IST 2026
[2026-06-12 12:38:03,066.066 INFO    ] ================================================
[2026-06-12 12:38:03,399.399 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 12:38:03
[2026-06-12 12:38:03,711.711 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 12:38:03,841.841 INFO    ] Initializing speech engine...
[2026-06-12 12:38:03,844.844 INFO    ] 2026-06-12 12:38:03
[2026-06-12 12:38:04,061.061 INFO    ] 2026-06-12 12:38:04
[2026-06-12 12:38:04,091.091 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 12:38:04,214.214 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 12:38:04,277.277 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 12:38:04,417.417 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 12:38:04,476.476 INFO    ] time= 12/06/2026 12:38:04
[2026-06-12 12:38:04,509.509 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 12:38:04,511.511 INFO    ] Checking for existing commands in stream...
[2026-06-12 12:38:04,581.581 INFO    ] No existing commands found in stream
[2026-06-12 12:38:09,592.592 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 12:38:09,595.595 INFO    ] Waiting 0.94 seconds before fallback handling...
[2026-06-12 12:38:10,905.905 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 12:38:10,907.907 INFO    ] Checking for system updates...
[2026-06-12 12:38:10,928.928 INFO    ] 200
[2026-06-12 12:38:10,929.929 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:38:10,963.963 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 12:38:10,964.964 INFO    ] No update needed
[2026-06-12 12:38:10,966.966 INFO    ] Checking for camera pi updates...
[2026-06-12 12:38:10,986.986 INFO    ] 200
[2026-06-12 12:38:10,987.987 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:38:11,012.012 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 12:38:11,060.060 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 12:38:11,061.061 INFO    ] No camera update needed
[2026-06-12 12:38:11,062.062 INFO    ] Script finished. Safe exiting...
[2026-06-12 12:38:11,064.064 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 12:38:11,067.067 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 12:38:11,069.069 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 12:38:13,108.108 INFO    ] ================================================
[2026-06-12 12:38:13,123.123 INFO    ] Launching Daemon at Fri Jun 12 12:38:13 IST 2026
[2026-06-12 12:38:13,133.133 INFO    ] ================================================
[2026-06-12 12:38:13,481.481 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 12:38:13
[2026-06-12 12:38:13,793.793 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 12:38:13,931.931 INFO    ] Initializing speech engine...
[2026-06-12 12:38:13,940.940 INFO    ] 2026-06-12 12:38:13
[2026-06-12 12:38:14,147.147 INFO    ] 2026-06-12 12:38:14
[2026-06-12 12:38:14,176.176 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 12:38:14,298.298 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 12:38:14,362.362 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 12:38:14,494.494 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 12:38:14,554.554 INFO    ] time= 12/06/2026 12:38:14
[2026-06-12 12:38:14,584.584 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 12:38:14,594.594 INFO    ] Checking for existing commands in stream...
[2026-06-12 12:38:14,667.667 INFO    ] No existing commands found in stream
[2026-06-12 12:38:19,675.675 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 12:38:19,676.676 INFO    ] Waiting 3.73 seconds before fallback handling...
[2026-06-12 12:38:23,802.802 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 12:38:23,804.804 INFO    ] Checking for system updates...
[2026-06-12 12:38:23,824.824 INFO    ] 200
[2026-06-12 12:38:23,826.826 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:38:23,858.858 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 12:38:23,859.859 INFO    ] No update needed
[2026-06-12 12:38:23,861.861 INFO    ] Checking for camera pi updates...
[2026-06-12 12:38:23,882.882 INFO    ] 200
[2026-06-12 12:38:23,883.883 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:38:23,909.909 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 12:38:23,949.949 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 12:38:23,950.950 INFO    ] No camera update needed
[2026-06-12 12:38:23,952.952 INFO    ] Script finished. Safe exiting...
[2026-06-12 12:38:23,953.953 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 12:38:23,956.956 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 12:38:23,958.958 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 12:38:26,997.997 INFO    ] ================================================
[2026-06-12 12:38:26,012.012 INFO    ] Launching Daemon at Fri Jun 12 12:38:26 IST 2026
[2026-06-12 12:38:26,023.023 INFO    ] ================================================
[2026-06-12 12:38:26,340.340 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 12:38:26
[2026-06-12 12:38:26,655.655 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 12:38:26,787.787 INFO    ] Initializing speech engine...
[2026-06-12 12:38:26,792.792 INFO    ] 2026-06-12 12:38:26
[2026-06-12 12:38:27,019.019 INFO    ] 2026-06-12 12:38:26
[2026-06-12 12:38:27,049.049 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 12:38:27,246.246 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 12:38:27,250.250 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 12:38:27,388.388 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 12:38:27,445.445 INFO    ] time= 12/06/2026 12:38:27
[2026-06-12 12:38:27,474.474 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 12:38:27,496.496 INFO    ] Checking for existing commands in stream...
[2026-06-12 12:38:27,572.572 INFO    ] No existing commands found in stream
[2026-06-12 12:38:32,581.581 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 12:38:32,584.584 INFO    ] Waiting 0.95 seconds before fallback handling...
[2026-06-12 12:38:33,905.905 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 12:38:33,906.906 INFO    ] Checking for system updates...
[2026-06-12 12:38:33,926.926 INFO    ] 200
[2026-06-12 12:38:33,928.928 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:38:33,959.959 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 12:38:33,961.961 INFO    ] No update needed
[2026-06-12 12:38:33,962.962 INFO    ] Checking for camera pi updates...
[2026-06-12 12:38:33,983.983 INFO    ] 200
[2026-06-12 12:38:33,984.984 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:38:34,008.008 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 12:38:34,056.056 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 12:38:34,058.058 INFO    ] No camera update needed
[2026-06-12 12:38:34,059.059 INFO    ] Script finished. Safe exiting...
[2026-06-12 12:38:34,060.060 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 12:38:34,063.063 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 12:38:34,066.066 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 12:38:36,104.104 INFO    ] ================================================
[2026-06-12 12:38:36,120.120 INFO    ] Launching Daemon at Fri Jun 12 12:38:36 IST 2026
[2026-06-12 12:38:36,131.131 INFO    ] ================================================
[2026-06-12 12:38:36,464.464 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 12:38:36
[2026-06-12 12:38:36,775.775 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 12:38:36,914.914 INFO    ] Initializing speech engine...
[2026-06-12 12:38:36,926.926 INFO    ] 2026-06-12 12:38:36
[2026-06-12 12:38:37,144.144 INFO    ] 2026-06-12 12:38:37
[2026-06-12 12:38:37,175.175 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 12:38:37,372.372 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 12:38:37,382.382 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 12:38:37,514.514 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 12:38:37,565.565 INFO    ] time= 12/06/2026 12:38:37
[2026-06-12 12:38:37,614.614 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 12:38:37,621.621 INFO    ] Checking for existing commands in stream...
[2026-06-12 12:38:37,695.695 INFO    ] No existing commands found in stream
[2026-06-12 12:38:42,701.701 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 12:38:42,703.703 INFO    ] Waiting 1.86 seconds before fallback handling...
[2026-06-12 12:38:44,951.951 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 12:38:44,952.952 INFO    ] Checking for system updates...
[2026-06-12 12:38:44,973.973 INFO    ] 200
[2026-06-12 12:38:44,975.975 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:38:45,007.007 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 12:38:45,008.008 INFO    ] No update needed
[2026-06-12 12:38:45,009.009 INFO    ] Checking for camera pi updates...
[2026-06-12 12:38:45,030.030 INFO    ] 200
[2026-06-12 12:38:45,031.031 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:38:45,054.054 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 12:38:45,091.091 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 12:38:45,092.092 INFO    ] No camera update needed
[2026-06-12 12:38:45,094.094 INFO    ] Script finished. Safe exiting...
[2026-06-12 12:38:45,095.095 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 12:38:45,098.098 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 12:38:45,101.101 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 12:38:47,141.141 INFO    ] ================================================
[2026-06-12 12:38:47,156.156 INFO    ] Launching Daemon at Fri Jun 12 12:38:47 IST 2026
[2026-06-12 12:38:47,167.167 INFO    ] ================================================
[2026-06-12 12:38:47,523.523 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 12:38:47
[2026-06-12 12:38:47,840.840 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 12:38:47,991.991 INFO    ] Initializing speech engine...
[2026-06-12 12:38:47,996.996 INFO    ] 2026-06-12 12:38:47
[2026-06-12 12:38:48,207.207 INFO    ] 2026-06-12 12:38:48
[2026-06-12 12:38:48,238.238 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 12:38:48,369.369 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 12:38:48,432.432 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 12:38:48,575.575 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 12:38:48,632.632 INFO    ] time= 12/06/2026 12:38:48
[2026-06-12 12:38:48,676.676 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 12:38:48,683.683 INFO    ] Checking for existing commands in stream...
[2026-06-12 12:38:48,784.784 INFO    ] No existing commands found in stream
[2026-06-12 12:38:53,793.793 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 12:38:53,796.796 INFO    ] Waiting 2.39 seconds before fallback handling...
[2026-06-12 12:38:56,553.553 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 12:38:56,554.554 INFO    ] Checking for system updates...
[2026-06-12 12:38:56,574.574 INFO    ] 200
[2026-06-12 12:38:56,576.576 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:38:56,608.608 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 12:38:56,609.609 INFO    ] No update needed
[2026-06-12 12:38:56,611.611 INFO    ] Checking for camera pi updates...
[2026-06-12 12:38:56,630.630 INFO    ] 200
[2026-06-12 12:38:56,631.631 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:38:56,656.656 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 12:38:56,695.695 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 12:38:56,696.696 INFO    ] No camera update needed
[2026-06-12 12:38:56,697.697 INFO    ] Script finished. Safe exiting...
[2026-06-12 12:38:56,698.698 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 12:38:56,701.701 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 12:38:56,704.704 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 12:38:58,744.744 INFO    ] ================================================
[2026-06-12 12:38:58,759.759 INFO    ] Launching Daemon at Fri Jun 12 12:38:58 IST 2026
[2026-06-12 12:38:58,770.770 INFO    ] ================================================
[2026-06-12 12:38:59,117.117 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 12:38:59
[2026-06-12 12:38:59,450.450 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 12:38:59,594.594 INFO    ] Initializing speech engine...
[2026-06-12 12:38:59,602.602 INFO    ] 2026-06-12 12:38:59
[2026-06-12 12:38:59,813.813 INFO    ] 2026-06-12 12:38:59
[2026-06-12 12:38:59,842.842 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 12:39:00,025.025 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 12:39:00,035.035 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 12:39:00,160.160 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 12:39:00,223.223 INFO    ] time= 12/06/2026 12:39:00
[2026-06-12 12:39:00,255.255 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 12:39:00,261.261 INFO    ] Checking for existing commands in stream...
[2026-06-12 12:39:00,328.328 INFO    ] No existing commands found in stream
[2026-06-12 12:39:05,348.348 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 12:39:05,351.351 INFO    ] Waiting 1.56 seconds before fallback handling...
[2026-06-12 12:39:07,264.264 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 12:39:07,266.266 INFO    ] Checking for system updates...
[2026-06-12 12:39:07,289.289 INFO    ] 200
[2026-06-12 12:39:07,290.290 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:39:07,323.323 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 12:39:07,324.324 INFO    ] No update needed
[2026-06-12 12:39:07,326.326 INFO    ] Checking for camera pi updates...
[2026-06-12 12:39:07,345.345 INFO    ] 200
[2026-06-12 12:39:07,347.347 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:39:07,370.370 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 12:39:07,407.407 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 12:39:07,409.409 INFO    ] No camera update needed
[2026-06-12 12:39:07,411.411 INFO    ] Script finished. Safe exiting...
[2026-06-12 12:39:07,412.412 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 12:39:07,415.415 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 12:39:07,418.418 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 12:39:09,457.457 INFO    ] ================================================
[2026-06-12 12:39:09,472.472 INFO    ] Launching Daemon at Fri Jun 12 12:39:09 IST 2026
[2026-06-12 12:39:09,483.483 INFO    ] ================================================
[2026-06-12 12:39:09,830.830 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 12:39:09
[2026-06-12 12:39:10,142.142 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 12:39:10,271.271 INFO    ] Initializing speech engine...
[2026-06-12 12:39:10,280.280 INFO    ] 2026-06-12 12:39:10
[2026-06-12 12:39:10,494.494 INFO    ] 2026-06-12 12:39:10
[2026-06-12 12:39:10,523.523 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 12:39:10,708.708 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 12:39:10,712.712 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 12:39:10,844.844 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 12:39:10,896.896 INFO    ] time= 12/06/2026 12:39:10
[2026-06-12 12:39:10,940.940 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 12:39:10,942.942 INFO    ] Checking for existing commands in stream...
[2026-06-12 12:39:11,014.014 INFO    ] No existing commands found in stream
[2026-06-12 12:39:16,023.023 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 12:39:16,025.025 INFO    ] Waiting 0.19 seconds before fallback handling...
[2026-06-12 12:39:16,604.604 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 12:39:16,606.606 INFO    ] Checking for system updates...
[2026-06-12 12:39:16,626.626 INFO    ] 200
[2026-06-12 12:39:16,628.628 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:39:16,660.660 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 12:39:16,661.661 INFO    ] No update needed
[2026-06-12 12:39:16,663.663 INFO    ] Checking for camera pi updates...
[2026-06-12 12:39:16,682.682 INFO    ] 200
[2026-06-12 12:39:16,683.683 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:39:16,708.708 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 12:39:16,747.747 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 12:39:16,749.749 INFO    ] No camera update needed
[2026-06-12 12:39:16,750.750 INFO    ] Script finished. Safe exiting...
[2026-06-12 12:39:16,751.751 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 12:39:16,754.754 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 12:39:16,757.757 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 12:39:18,795.795 INFO    ] ================================================
[2026-06-12 12:39:18,810.810 INFO    ] Launching Daemon at Fri Jun 12 12:39:18 IST 2026
[2026-06-12 12:39:18,820.820 INFO    ] ================================================
[2026-06-12 12:39:19,158.158 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 12:39:19
[2026-06-12 12:39:19,474.474 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 12:39:19,604.604 INFO    ] Initializing speech engine...
[2026-06-12 12:39:19,612.612 INFO    ] 2026-06-12 12:39:19
[2026-06-12 12:39:19,825.825 INFO    ] 2026-06-12 12:39:19
[2026-06-12 12:39:19,853.853 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 12:39:20,036.036 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 12:39:20,040.040 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 12:39:20,169.169 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 12:39:20,230.230 INFO    ] time= 12/06/2026 12:39:20
[2026-06-12 12:39:20,265.265 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 12:39:20,274.274 INFO    ] Checking for existing commands in stream...
[2026-06-12 12:39:20,342.342 INFO    ] No existing commands found in stream
[2026-06-12 12:39:25,351.351 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 12:39:25,354.354 INFO    ] Waiting 0.00 seconds before fallback handling...
[2026-06-12 12:39:25,704.704 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 12:39:25,705.705 INFO    ] Checking for system updates...
[2026-06-12 12:39:25,727.727 INFO    ] 200
[2026-06-12 12:39:25,728.728 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:39:25,758.758 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 12:39:25,759.759 INFO    ] No update needed
[2026-06-12 12:39:25,761.761 INFO    ] Checking for camera pi updates...
[2026-06-12 12:39:25,781.781 INFO    ] 200
[2026-06-12 12:39:25,782.782 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:39:25,807.807 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 12:39:25,851.851 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 12:39:25,853.853 INFO    ] No camera update needed
[2026-06-12 12:39:25,854.854 INFO    ] Script finished. Safe exiting...
[2026-06-12 12:39:25,855.855 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 12:39:25,858.858 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 12:39:25,861.861 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 12:39:27,900.900 INFO    ] ================================================
[2026-06-12 12:39:27,915.915 INFO    ] Launching Daemon at Fri Jun 12 12:39:27 IST 2026
[2026-06-12 12:39:27,926.926 INFO    ] ================================================
[2026-06-12 12:39:28,290.290 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 12:39:28
[2026-06-12 12:39:28,624.624 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 12:39:28,761.761 INFO    ] Initializing speech engine...
[2026-06-12 12:39:28,769.769 INFO    ] 2026-06-12 12:39:28
[2026-06-12 12:39:28,986.986 INFO    ] 2026-06-12 12:39:28
[2026-06-12 12:39:29,015.015 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 12:39:29,198.198 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 12:39:29,207.207 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 12:39:29,342.342 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 12:39:29,404.404 INFO    ] time= 12/06/2026 12:39:29
[2026-06-12 12:39:29,427.427 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 12:39:29,434.434 INFO    ] Checking for existing commands in stream...
[2026-06-12 12:39:29,501.501 INFO    ] No existing commands found in stream
[2026-06-12 12:39:34,523.523 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 12:39:34,526.526 INFO    ] Waiting 1.48 seconds before fallback handling...
[2026-06-12 12:39:36,377.377 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 12:39:36,379.379 INFO    ] Checking for system updates...
[2026-06-12 12:39:36,401.401 INFO    ] 200
[2026-06-12 12:39:36,402.402 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:39:36,437.437 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 12:39:36,439.439 INFO    ] No update needed
[2026-06-12 12:39:36,440.440 INFO    ] Checking for camera pi updates...
[2026-06-12 12:39:36,462.462 INFO    ] 200
[2026-06-12 12:39:36,464.464 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:39:36,487.487 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 12:39:36,535.535 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 12:39:36,537.537 INFO    ] No camera update needed
[2026-06-12 12:39:36,538.538 INFO    ] Script finished. Safe exiting...
[2026-06-12 12:39:36,540.540 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 12:39:36,543.543 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 12:39:36,546.546 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 12:39:38,584.584 INFO    ] ================================================
[2026-06-12 12:39:38,600.600 INFO    ] Launching Daemon at Fri Jun 12 12:39:38 IST 2026
[2026-06-12 12:39:38,610.610 INFO    ] ================================================
[2026-06-12 12:39:38,978.978 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 12:39:38
[2026-06-12 12:39:39,290.290 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 12:39:39,428.428 INFO    ] Initializing speech engine...
[2026-06-12 12:39:39,442.442 INFO    ] 2026-06-12 12:39:39
[2026-06-12 12:39:39,657.657 INFO    ] 2026-06-12 12:39:39
[2026-06-12 12:39:39,686.686 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 12:39:39,811.811 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 12:39:39,851.851 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 12:39:40,008.008 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 12:39:40,065.065 INFO    ] time= 12/06/2026 12:39:40
[2026-06-12 12:39:40,100.100 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 12:39:40,110.110 INFO    ] Checking for existing commands in stream...
[2026-06-12 12:39:40,183.183 INFO    ] No existing commands found in stream
[2026-06-12 12:39:45,192.192 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 12:39:45,194.194 INFO    ] Waiting 3.32 seconds before fallback handling...
[2026-06-12 12:39:48,876.876 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 12:39:48,878.878 INFO    ] Checking for system updates...
[2026-06-12 12:39:48,898.898 INFO    ] 200
[2026-06-12 12:39:48,899.899 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:39:48,929.929 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 12:39:48,931.931 INFO    ] No update needed
[2026-06-12 12:39:48,932.932 INFO    ] Checking for camera pi updates...
[2026-06-12 12:39:48,952.952 INFO    ] 200
[2026-06-12 12:39:48,954.954 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:39:48,978.978 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 12:39:49,020.020 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 12:39:49,022.022 INFO    ] No camera update needed
[2026-06-12 12:39:49,023.023 INFO    ] Script finished. Safe exiting...
[2026-06-12 12:39:49,024.024 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 12:39:49,028.028 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 12:39:49,031.031 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 12:39:51,073.073 INFO    ] ================================================
[2026-06-12 12:39:51,088.088 INFO    ] Launching Daemon at Fri Jun 12 12:39:51 IST 2026
[2026-06-12 12:39:51,098.098 INFO    ] ================================================
[2026-06-12 12:39:51,451.451 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 12:39:51
[2026-06-12 12:39:51,764.764 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 12:39:51,904.904 INFO    ] Initializing speech engine...
[2026-06-12 12:39:51,916.916 INFO    ] 2026-06-12 12:39:51
[2026-06-12 12:39:52,132.132 INFO    ] 2026-06-12 12:39:52
[2026-06-12 12:39:52,163.163 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 12:39:52,359.359 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 12:39:52,363.363 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 12:39:52,501.501 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 12:39:52,570.570 INFO    ] time= 12/06/2026 12:39:52
[2026-06-12 12:39:52,606.606 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 12:39:52,608.608 INFO    ] Checking for existing commands in stream...
[2026-06-12 12:39:52,682.682 INFO    ] No existing commands found in stream
[2026-06-12 12:39:57,693.693 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 12:39:57,696.696 INFO    ] Waiting 0.71 seconds before fallback handling...
[2026-06-12 12:39:58,766.766 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 12:39:58,767.767 INFO    ] Checking for system updates...
[2026-06-12 12:39:58,788.788 INFO    ] 200
[2026-06-12 12:39:58,789.789 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:39:58,821.821 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 12:39:58,822.822 INFO    ] No update needed
[2026-06-12 12:39:58,824.824 INFO    ] Checking for camera pi updates...
[2026-06-12 12:39:58,844.844 INFO    ] 200
[2026-06-12 12:39:58,845.845 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:39:58,868.868 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 12:39:59,013.013 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 12:39:59,014.014 INFO    ] No camera update needed
[2026-06-12 12:39:59,015.015 INFO    ] Script finished. Safe exiting...
[2026-06-12 12:39:59,017.017 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 12:39:59,020.020 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 12:39:59,022.022 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 12:40:01,061.061 INFO    ] ================================================
[2026-06-12 12:40:01,076.076 INFO    ] Launching Daemon at Fri Jun 12 12:40:01 IST 2026
[2026-06-12 12:40:01,087.087 INFO    ] ================================================
[2026-06-12 12:40:01,440.440 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 12:40:01
[2026-06-12 12:40:01,958.958 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 12:40:02,265.265 INFO    ] Initializing speech engine...
[2026-06-12 12:40:02,268.268 INFO    ] 2026-06-12 12:40:02
[2026-06-12 12:40:02,546.546 INFO    ] 2026-06-12 12:40:02
[2026-06-12 12:40:02,558.558 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 12:40:02,690.690 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 12:40:02,736.736 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 12:40:02,915.915 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 12:40:02,994.994 INFO    ] time= 12/06/2026 12:40:02
[2026-06-12 12:40:03,046.046 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 12:40:03,059.059 INFO    ] Checking for existing commands in stream...
[2026-06-12 12:40:03,151.151 INFO    ] No existing commands found in stream
[2026-06-12 12:40:08,165.165 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 12:40:08,167.167 INFO    ] Waiting 1.81 seconds before fallback handling...
[2026-06-12 12:40:10,346.346 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 12:40:10,348.348 INFO    ] Checking for system updates...
[2026-06-12 12:40:10,368.368 INFO    ] 200
[2026-06-12 12:40:10,370.370 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:40:10,400.400 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 12:40:10,401.401 INFO    ] No update needed
[2026-06-12 12:40:10,402.402 INFO    ] Checking for camera pi updates...
[2026-06-12 12:40:10,423.423 INFO    ] 200
[2026-06-12 12:40:10,424.424 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:40:10,447.447 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 12:40:10,492.492 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 12:40:10,493.493 INFO    ] No camera update needed
[2026-06-12 12:40:10,494.494 INFO    ] Script finished. Safe exiting...
[2026-06-12 12:40:10,496.496 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 12:40:10,499.499 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 12:40:10,501.501 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 12:40:12,540.540 INFO    ] ================================================
[2026-06-12 12:40:12,554.554 INFO    ] Launching Daemon at Fri Jun 12 12:40:12 IST 2026
[2026-06-12 12:40:12,565.565 INFO    ] ================================================
[2026-06-12 12:40:12,933.933 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 12:40:12
[2026-06-12 12:40:13,267.267 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 12:40:13,420.420 INFO    ] Initializing speech engine...
[2026-06-12 12:40:13,424.424 INFO    ] 2026-06-12 12:40:13
[2026-06-12 12:40:13,637.637 INFO    ] 2026-06-12 12:40:13
[2026-06-12 12:40:13,666.666 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 12:40:13,831.831 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 12:40:13,856.856 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 12:40:13,990.990 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 12:40:14,048.048 INFO    ] time= 12/06/2026 12:40:13
[2026-06-12 12:40:14,087.087 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 12:40:14,093.093 INFO    ] Checking for existing commands in stream...
[2026-06-12 12:40:14,161.161 INFO    ] No existing commands found in stream
[2026-06-12 12:40:19,171.171 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 12:40:19,174.174 INFO    ] Waiting 1.77 seconds before fallback handling...
[2026-06-12 12:40:21,304.304 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 12:40:21,306.306 INFO    ] Checking for system updates...
[2026-06-12 12:40:21,327.327 INFO    ] 200
[2026-06-12 12:40:21,328.328 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:40:21,361.361 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 12:40:21,362.362 INFO    ] No update needed
[2026-06-12 12:40:21,364.364 INFO    ] Checking for camera pi updates...
[2026-06-12 12:40:21,387.387 INFO    ] 200
[2026-06-12 12:40:21,388.388 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:40:21,415.415 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 12:40:21,453.453 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 12:40:21,454.454 INFO    ] No camera update needed
[2026-06-12 12:40:21,456.456 INFO    ] Script finished. Safe exiting...
[2026-06-12 12:40:21,458.458 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 12:40:21,461.461 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 12:40:21,464.464 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 12:40:23,502.502 INFO    ] ================================================
[2026-06-12 12:40:23,518.518 INFO    ] Launching Daemon at Fri Jun 12 12:40:23 IST 2026
[2026-06-12 12:40:23,530.530 INFO    ] ================================================
[2026-06-12 12:40:23,878.878 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 12:40:23
[2026-06-12 12:40:24,189.189 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 12:40:24,319.319 INFO    ] Initializing speech engine...
[2026-06-12 12:40:24,323.323 INFO    ] 2026-06-12 12:40:24
[2026-06-12 12:40:24,541.541 INFO    ] 2026-06-12 12:40:24
[2026-06-12 12:40:24,570.570 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 12:40:24,757.757 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 12:40:24,768.768 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 12:40:24,889.889 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 12:40:24,940.940 INFO    ] time= 12/06/2026 12:40:24
[2026-06-12 12:40:24,988.988 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 12:40:24,995.995 INFO    ] Checking for existing commands in stream...
[2026-06-12 12:40:25,055.055 INFO    ] No existing commands found in stream
[2026-06-12 12:40:30,072.072 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 12:40:30,074.074 INFO    ] Waiting 2.15 seconds before fallback handling...
[2026-06-12 12:40:32,653.653 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 12:40:32,659.659 INFO    ] Checking for system updates...
[2026-06-12 12:40:32,700.700 INFO    ] 200
[2026-06-12 12:40:32,702.702 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:40:32,760.760 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 12:40:32,763.763 INFO    ] No update needed
[2026-06-12 12:40:32,766.766 INFO    ] Checking for camera pi updates...
[2026-06-12 12:40:32,802.802 INFO    ] 200
[2026-06-12 12:40:32,804.804 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:40:32,827.827 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 12:40:32,869.869 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 12:40:32,871.871 INFO    ] No camera update needed
[2026-06-12 12:40:32,872.872 INFO    ] Script finished. Safe exiting...
[2026-06-12 12:40:32,874.874 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 12:40:32,877.877 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 12:40:32,880.880 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 12:40:34,920.920 INFO    ] ================================================
[2026-06-12 12:40:34,936.936 INFO    ] Launching Daemon at Fri Jun 12 12:40:34 IST 2026
[2026-06-12 12:40:34,946.946 INFO    ] ================================================
[2026-06-12 12:40:35,278.278 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 12:40:35
[2026-06-12 12:40:35,589.589 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 12:40:35,729.729 INFO    ] Initializing speech engine...
[2026-06-12 12:40:35,737.737 INFO    ] 2026-06-12 12:40:35
[2026-06-12 12:40:35,953.953 INFO    ] 2026-06-12 12:40:35
[2026-06-12 12:40:35,984.984 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 12:40:36,119.119 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 12:40:36,180.180 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 12:40:36,326.326 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 12:40:36,383.383 INFO    ] time= 12/06/2026 12:40:36
[2026-06-12 12:40:36,417.417 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 12:40:36,428.428 INFO    ] Checking for existing commands in stream...
[2026-06-12 12:40:36,503.503 INFO    ] No existing commands found in stream
[2026-06-12 12:40:41,514.514 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 12:40:41,516.516 INFO    ] Waiting 3.96 seconds before fallback handling...
[2026-06-12 12:40:45,868.868 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 12:40:45,870.870 INFO    ] Checking for system updates...
[2026-06-12 12:40:45,891.891 INFO    ] 200
[2026-06-12 12:40:45,892.892 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:40:45,922.922 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 12:40:45,923.923 INFO    ] No update needed
[2026-06-12 12:40:45,925.925 INFO    ] Checking for camera pi updates...
[2026-06-12 12:40:45,944.944 INFO    ] 200
[2026-06-12 12:40:45,945.945 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:40:45,969.969 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 12:40:46,018.018 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 12:40:46,019.019 INFO    ] No camera update needed
[2026-06-12 12:40:46,021.021 INFO    ] Script finished. Safe exiting...
[2026-06-12 12:40:46,022.022 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 12:40:46,025.025 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 12:40:46,028.028 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 12:40:48,066.066 INFO    ] ================================================
[2026-06-12 12:40:48,082.082 INFO    ] Launching Daemon at Fri Jun 12 12:40:48 IST 2026
[2026-06-12 12:40:48,093.093 INFO    ] ================================================
[2026-06-12 12:40:48,464.464 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 12:40:48
[2026-06-12 12:40:48,796.796 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 12:40:48,945.945 INFO    ] Initializing speech engine...
[2026-06-12 12:40:48,951.951 INFO    ] 2026-06-12 12:40:48
[2026-06-12 12:40:49,158.158 INFO    ] 2026-06-12 12:40:49
[2026-06-12 12:40:49,187.187 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 12:40:49,371.371 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 12:40:49,375.375 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 12:40:49,512.512 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 12:40:49,579.579 INFO    ] time= 12/06/2026 12:40:49
[2026-06-12 12:40:49,603.603 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 12:40:49,610.610 INFO    ] Checking for existing commands in stream...
[2026-06-12 12:40:49,676.676 INFO    ] No existing commands found in stream
[2026-06-12 12:40:54,691.691 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 12:40:54,694.694 INFO    ] Waiting 1.62 seconds before fallback handling...
[2026-06-12 12:40:56,668.668 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 12:40:56,669.669 INFO    ] Checking for system updates...
[2026-06-12 12:40:56,690.690 INFO    ] 200
[2026-06-12 12:40:56,692.692 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:40:56,723.723 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 12:40:56,724.724 INFO    ] No update needed
[2026-06-12 12:40:56,725.725 INFO    ] Checking for camera pi updates...
[2026-06-12 12:40:56,746.746 INFO    ] 200
[2026-06-12 12:40:56,747.747 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:40:56,771.771 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 12:40:56,817.817 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 12:40:56,819.819 INFO    ] No camera update needed
[2026-06-12 12:40:56,820.820 INFO    ] Script finished. Safe exiting...
[2026-06-12 12:40:56,821.821 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 12:40:56,824.824 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 12:40:56,827.827 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 12:40:58,866.866 INFO    ] ================================================
[2026-06-12 12:40:58,881.881 INFO    ] Launching Daemon at Fri Jun 12 12:40:58 IST 2026
[2026-06-12 12:40:58,893.893 INFO    ] ================================================
[2026-06-12 12:40:59,244.244 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 12:40:59
[2026-06-12 12:40:59,559.559 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 12:40:59,691.691 INFO    ] Initializing speech engine...
[2026-06-12 12:40:59,695.695 INFO    ] 2026-06-12 12:40:59
[2026-06-12 12:40:59,912.912 INFO    ] 2026-06-12 12:40:59
[2026-06-12 12:40:59,941.941 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 12:41:00,073.073 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 12:41:00,126.126 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 12:41:00,261.261 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 12:41:00,318.318 INFO    ] time= 12/06/2026 12:41:00
[2026-06-12 12:41:00,353.353 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 12:41:00,363.363 INFO    ] Checking for existing commands in stream...
[2026-06-12 12:41:00,430.430 INFO    ] No existing commands found in stream
[2026-06-12 12:41:05,439.439 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 12:41:05,442.442 INFO    ] Waiting 3.28 seconds before fallback handling...
[2026-06-12 12:41:09,080.080 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 12:41:09,082.082 INFO    ] Checking for system updates...
[2026-06-12 12:41:09,102.102 INFO    ] 200
[2026-06-12 12:41:09,103.103 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:41:09,134.134 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 12:41:09,135.135 INFO    ] No update needed
[2026-06-12 12:41:09,136.136 INFO    ] Checking for camera pi updates...
[2026-06-12 12:41:09,156.156 INFO    ] 200
[2026-06-12 12:41:09,157.157 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:41:09,181.181 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 12:41:09,219.219 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 12:41:09,220.220 INFO    ] No camera update needed
[2026-06-12 12:41:09,222.222 INFO    ] Script finished. Safe exiting...
[2026-06-12 12:41:09,223.223 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 12:41:09,226.226 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 12:41:09,228.228 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 12:41:11,268.268 INFO    ] ================================================
[2026-06-12 12:41:11,284.284 INFO    ] Launching Daemon at Fri Jun 12 12:41:11 IST 2026
[2026-06-12 12:41:11,295.295 INFO    ] ================================================
[2026-06-12 12:41:11,645.645 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 12:41:11
[2026-06-12 12:41:11,960.960 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 12:41:12,089.089 INFO    ] Initializing speech engine...
[2026-06-12 12:41:12,093.093 INFO    ] 2026-06-12 12:41:12
[2026-06-12 12:41:12,311.311 INFO    ] 2026-06-12 12:41:12
[2026-06-12 12:41:12,339.339 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 12:41:12,528.528 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 12:41:12,538.538 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 12:41:12,661.661 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 12:41:12,722.722 INFO    ] time= 12/06/2026 12:41:12
[2026-06-12 12:41:12,752.752 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 12:41:12,762.762 INFO    ] Checking for existing commands in stream...
[2026-06-12 12:41:12,833.833 INFO    ] No existing commands found in stream
[2026-06-12 12:41:17,843.843 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 12:41:17,846.846 INFO    ] Waiting 1.37 seconds before fallback handling...
[2026-06-12 12:41:19,558.558 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 12:41:19,561.561 INFO    ] Checking for system updates...
[2026-06-12 12:41:19,582.582 INFO    ] 200
[2026-06-12 12:41:19,583.583 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:41:19,613.613 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 12:41:19,614.614 INFO    ] No update needed
[2026-06-12 12:41:19,615.615 INFO    ] Checking for camera pi updates...
[2026-06-12 12:41:19,635.635 INFO    ] 200
[2026-06-12 12:41:19,637.637 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:41:19,660.660 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 12:41:19,697.697 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 12:41:19,698.698 INFO    ] No camera update needed
[2026-06-12 12:41:19,699.699 INFO    ] Script finished. Safe exiting...
[2026-06-12 12:41:19,701.701 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 12:41:19,704.704 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 12:41:19,706.706 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 12:41:21,745.745 INFO    ] ================================================
[2026-06-12 12:41:21,760.760 INFO    ] Launching Daemon at Fri Jun 12 12:41:21 IST 2026
[2026-06-12 12:41:21,772.772 INFO    ] ================================================
[2026-06-12 12:41:22,096.096 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 12:41:22
[2026-06-12 12:41:22,408.408 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 12:41:22,550.550 INFO    ] Initializing speech engine...
[2026-06-12 12:41:22,555.555 INFO    ] 2026-06-12 12:41:22
[2026-06-12 12:41:22,758.758 INFO    ] 2026-06-12 12:41:22
[2026-06-12 12:41:22,789.789 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 12:41:22,972.972 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 12:41:22,982.982 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 12:41:23,126.126 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 12:41:23,181.181 INFO    ] time= 12/06/2026 12:41:23
[2026-06-12 12:41:23,202.202 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 12:41:23,208.208 INFO    ] Checking for existing commands in stream...
[2026-06-12 12:41:23,274.274 INFO    ] No existing commands found in stream
[2026-06-12 12:41:28,283.283 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 12:41:28,286.286 INFO    ] Waiting 1.47 seconds before fallback handling...
[2026-06-12 12:41:30,139.139 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 12:41:30,141.141 INFO    ] Checking for system updates...
[2026-06-12 12:41:30,162.162 INFO    ] 200
[2026-06-12 12:41:30,163.163 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:41:30,195.195 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 12:41:30,197.197 INFO    ] No update needed
[2026-06-12 12:41:30,198.198 INFO    ] Checking for camera pi updates...
[2026-06-12 12:41:30,221.221 INFO    ] 200
[2026-06-12 12:41:30,223.223 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:41:30,247.247 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 12:41:30,296.296 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 12:41:30,297.297 INFO    ] No camera update needed
[2026-06-12 12:41:30,299.299 INFO    ] Script finished. Safe exiting...
[2026-06-12 12:41:30,300.300 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 12:41:30,303.303 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 12:41:30,306.306 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 12:41:32,346.346 INFO    ] ================================================
[2026-06-12 12:41:32,363.363 INFO    ] Launching Daemon at Fri Jun 12 12:41:32 IST 2026
[2026-06-12 12:41:32,374.374 INFO    ] ================================================
[2026-06-12 12:41:32,713.713 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 12:41:32
[2026-06-12 12:41:33,046.046 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 12:41:33,201.201 INFO    ] Initializing speech engine...
[2026-06-12 12:41:33,208.208 INFO    ] 2026-06-12 12:41:33
[2026-06-12 12:41:33,411.411 INFO    ] 2026-06-12 12:41:33
[2026-06-12 12:41:33,440.440 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 12:41:33,623.623 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 12:41:33,627.627 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 12:41:33,763.763 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 12:41:33,828.828 INFO    ] time= 12/06/2026 12:41:33
[2026-06-12 12:41:33,855.855 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 12:41:33,862.862 INFO    ] Checking for existing commands in stream...
[2026-06-12 12:41:33,952.952 INFO    ] No existing commands found in stream
[2026-06-12 12:41:38,967.967 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 12:41:38,970.970 INFO    ] Waiting 1.10 seconds before fallback handling...
[2026-06-12 12:41:40,452.452 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 12:41:40,454.454 INFO    ] Checking for system updates...
[2026-06-12 12:41:40,476.476 INFO    ] 200
[2026-06-12 12:41:40,477.477 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:41:40,510.510 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 12:41:40,512.512 INFO    ] No update needed
[2026-06-12 12:41:40,513.513 INFO    ] Checking for camera pi updates...
[2026-06-12 12:41:40,533.533 INFO    ] 200
[2026-06-12 12:41:40,534.534 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:41:40,558.558 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 12:41:40,594.594 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 12:41:40,596.596 INFO    ] No camera update needed
[2026-06-12 12:41:40,597.597 INFO    ] Script finished. Safe exiting...
[2026-06-12 12:41:40,598.598 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 12:41:40,602.602 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 12:41:40,605.605 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 12:41:42,644.644 INFO    ] ================================================
[2026-06-12 12:41:42,660.660 INFO    ] Launching Daemon at Fri Jun 12 12:41:42 IST 2026
[2026-06-12 12:41:42,671.671 INFO    ] ================================================
[2026-06-12 12:41:43,035.035 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 12:41:43
[2026-06-12 12:41:43,351.351 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 12:41:43,485.485 INFO    ] Initializing speech engine...
[2026-06-12 12:41:43,493.493 INFO    ] 2026-06-12 12:41:43
[2026-06-12 12:41:43,715.715 INFO    ] 2026-06-12 12:41:43
[2026-06-12 12:41:43,745.745 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 12:41:43,940.940 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 12:41:43,944.944 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 12:41:44,082.082 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 12:41:44,133.133 INFO    ] time= 12/06/2026 12:41:44
[2026-06-12 12:41:44,171.171 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 12:41:44,189.189 INFO    ] Checking for existing commands in stream...
[2026-06-12 12:41:44,263.263 INFO    ] No existing commands found in stream
[2026-06-12 12:41:49,273.273 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 12:41:49,276.276 INFO    ] Waiting 0.43 seconds before fallback handling...
[2026-06-12 12:41:50,089.089 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 12:41:50,091.091 INFO    ] Checking for system updates...
[2026-06-12 12:41:50,111.111 INFO    ] 200
[2026-06-12 12:41:50,113.113 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:41:50,143.143 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 12:41:50,144.144 INFO    ] No update needed
[2026-06-12 12:41:50,146.146 INFO    ] Checking for camera pi updates...
[2026-06-12 12:41:50,165.165 INFO    ] 200
[2026-06-12 12:41:50,166.166 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:41:50,191.191 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 12:41:50,232.232 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 12:41:50,233.233 INFO    ] No camera update needed
[2026-06-12 12:41:50,234.234 INFO    ] Script finished. Safe exiting...
[2026-06-12 12:41:50,236.236 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 12:41:50,239.239 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 12:41:50,242.242 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 12:41:52,282.282 INFO    ] ================================================
[2026-06-12 12:41:52,297.297 INFO    ] Launching Daemon at Fri Jun 12 12:41:52 IST 2026
[2026-06-12 12:41:52,309.309 INFO    ] ================================================
[2026-06-12 12:41:52,672.672 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 12:41:52
[2026-06-12 12:41:52,985.985 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 12:41:53,118.118 INFO    ] Initializing speech engine...
[2026-06-12 12:41:53,132.132 INFO    ] 2026-06-12 12:41:53
[2026-06-12 12:41:53,341.341 INFO    ] 2026-06-12 12:41:53
[2026-06-12 12:41:53,370.370 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 12:41:53,556.556 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 12:41:53,560.560 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 12:41:53,690.690 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 12:41:53,756.756 INFO    ] time= 12/06/2026 12:41:53
[2026-06-12 12:41:53,790.790 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 12:41:53,796.796 INFO    ] Checking for existing commands in stream...
[2026-06-12 12:41:53,864.864 INFO    ] No existing commands found in stream
[2026-06-12 12:41:58,873.873 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 12:41:58,876.876 INFO    ] Waiting 3.33 seconds before fallback handling...
[2026-06-12 12:42:02,569.569 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 12:42:02,570.570 INFO    ] Checking for system updates...
[2026-06-12 12:42:02,593.593 INFO    ] 200
[2026-06-12 12:42:02,594.594 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:42:02,625.625 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 12:42:02,626.626 INFO    ] No update needed
[2026-06-12 12:42:02,627.627 INFO    ] Checking for camera pi updates...
[2026-06-12 12:42:02,647.647 INFO    ] 200
[2026-06-12 12:42:02,649.649 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:42:02,672.672 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 12:42:02,699.699 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 12:42:02,701.701 INFO    ] No camera update needed
[2026-06-12 12:42:02,702.702 INFO    ] Script finished. Safe exiting...
[2026-06-12 12:42:02,703.703 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 12:42:02,707.707 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 12:42:02,710.710 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 12:42:04,749.749 INFO    ] ================================================
[2026-06-12 12:42:04,764.764 INFO    ] Launching Daemon at Fri Jun 12 12:42:04 IST 2026
[2026-06-12 12:42:04,775.775 INFO    ] ================================================
[2026-06-12 12:42:05,139.139 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 12:42:05
[2026-06-12 12:42:05,472.472 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 12:42:05,634.634 INFO    ] Initializing speech engine...
[2026-06-12 12:42:05,639.639 INFO    ] 2026-06-12 12:42:05
[2026-06-12 12:42:05,844.844 INFO    ] 2026-06-12 12:42:05
[2026-06-12 12:42:05,872.872 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 12:42:05,996.996 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 12:42:06,049.049 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 12:42:06,205.205 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 12:42:06,273.273 INFO    ] time= 12/06/2026 12:42:06
[2026-06-12 12:42:06,297.297 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 12:42:06,303.303 INFO    ] Checking for existing commands in stream...
[2026-06-12 12:42:06,369.369 INFO    ] No existing commands found in stream
[2026-06-12 12:42:11,380.380 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 12:42:11,383.383 INFO    ] Waiting 1.02 seconds before fallback handling...
[2026-06-12 12:42:12,799.799 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 12:42:12,801.801 INFO    ] Checking for system updates...
[2026-06-12 12:42:12,821.821 INFO    ] 200
[2026-06-12 12:42:12,822.822 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:42:12,853.853 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 12:42:12,854.854 INFO    ] No update needed
[2026-06-12 12:42:12,856.856 INFO    ] Checking for camera pi updates...
[2026-06-12 12:42:12,875.875 INFO    ] 200
[2026-06-12 12:42:12,876.876 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:42:12,901.901 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 12:42:12,936.936 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 12:42:12,937.937 INFO    ] No camera update needed
[2026-06-12 12:42:12,938.938 INFO    ] Script finished. Safe exiting...
[2026-06-12 12:42:12,939.939 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 12:42:12,942.942 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 12:42:12,945.945 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 12:42:14,985.985 INFO    ] ================================================
[2026-06-12 12:42:15,001.001 INFO    ] Launching Daemon at Fri Jun 12 12:42:14 IST 2026
[2026-06-12 12:42:15,012.012 INFO    ] ================================================
[2026-06-12 12:42:15,363.363 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 12:42:15
[2026-06-12 12:42:15,676.676 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 12:42:15,826.826 INFO    ] Initializing speech engine...
[2026-06-12 12:42:15,832.832 INFO    ] 2026-06-12 12:42:15
[2026-06-12 12:42:16,036.036 INFO    ] 2026-06-12 12:42:16
[2026-06-12 12:42:16,066.066 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 12:42:16,252.252 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 12:42:16,262.262 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 12:42:16,396.396 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 12:42:16,458.458 INFO    ] time= 12/06/2026 12:42:16
[2026-06-12 12:42:16,482.482 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 12:42:16,489.489 INFO    ] Checking for existing commands in stream...
[2026-06-12 12:42:16,556.556 INFO    ] No existing commands found in stream
[2026-06-12 12:42:21,571.571 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 12:42:21,574.574 INFO    ] Waiting 3.76 seconds before fallback handling...
[2026-06-12 12:42:25,696.696 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 12:42:25,697.697 INFO    ] Checking for system updates...
[2026-06-12 12:42:25,720.720 INFO    ] 200
[2026-06-12 12:42:25,721.721 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:42:25,751.751 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 12:42:25,752.752 INFO    ] No update needed
[2026-06-12 12:42:25,754.754 INFO    ] Checking for camera pi updates...
[2026-06-12 12:42:25,774.774 INFO    ] 200
[2026-06-12 12:42:25,775.775 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:42:25,798.798 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 12:42:25,835.835 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 12:42:25,836.836 INFO    ] No camera update needed
[2026-06-12 12:42:25,838.838 INFO    ] Script finished. Safe exiting...
[2026-06-12 12:42:25,839.839 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 12:42:25,842.842 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 12:42:25,845.845 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 12:42:27,884.884 INFO    ] ================================================
[2026-06-12 12:42:27,899.899 INFO    ] Launching Daemon at Fri Jun 12 12:42:27 IST 2026
[2026-06-12 12:42:27,910.910 INFO    ] ================================================
[2026-06-12 12:42:28,231.231 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 12:42:28
[2026-06-12 12:42:28,542.542 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 12:42:28,671.671 INFO    ] Initializing speech engine...
[2026-06-12 12:42:28,675.675 INFO    ] 2026-06-12 12:42:28
[2026-06-12 12:42:28,891.891 INFO    ] 2026-06-12 12:42:28
[2026-06-12 12:42:28,920.920 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 12:42:29,102.102 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 12:42:29,106.106 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 12:42:29,238.238 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 12:42:29,305.305 INFO    ] time= 12/06/2026 12:42:29
[2026-06-12 12:42:29,333.333 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 12:42:29,339.339 INFO    ] Checking for existing commands in stream...
[2026-06-12 12:42:29,406.406 INFO    ] No existing commands found in stream
[2026-06-12 12:42:34,415.415 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 12:42:34,418.418 INFO    ] Waiting 0.66 seconds before fallback handling...
[2026-06-12 12:42:35,418.418 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 12:42:35,420.420 INFO    ] Checking for system updates...
[2026-06-12 12:42:35,441.441 INFO    ] 200
[2026-06-12 12:42:35,442.442 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:42:35,472.472 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 12:42:35,474.474 INFO    ] No update needed
[2026-06-12 12:42:35,475.475 INFO    ] Checking for camera pi updates...
[2026-06-12 12:42:35,494.494 INFO    ] 200
[2026-06-12 12:42:35,495.495 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:42:35,518.518 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 12:42:35,554.554 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 12:42:35,555.555 INFO    ] No camera update needed
[2026-06-12 12:42:35,557.557 INFO    ] Script finished. Safe exiting...
[2026-06-12 12:42:35,558.558 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 12:42:35,562.562 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 12:42:35,564.564 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 12:42:37,604.604 INFO    ] ================================================
[2026-06-12 12:42:37,619.619 INFO    ] Launching Daemon at Fri Jun 12 12:42:37 IST 2026
[2026-06-12 12:42:37,630.630 INFO    ] ================================================
[2026-06-12 12:42:37,987.987 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 12:42:37
[2026-06-12 12:42:38,298.298 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 12:42:38,432.432 INFO    ] Initializing speech engine...
[2026-06-12 12:42:38,436.436 INFO    ] 2026-06-12 12:42:38
[2026-06-12 12:42:38,665.665 INFO    ] 2026-06-12 12:42:38
[2026-06-12 12:42:38,695.695 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 12:42:38,826.826 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 12:42:38,869.869 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 12:42:39,043.043 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 12:42:39,107.107 INFO    ] time= 12/06/2026 12:42:39
[2026-06-12 12:42:39,130.130 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 12:42:39,141.141 INFO    ] Checking for existing commands in stream...
[2026-06-12 12:42:39,218.218 INFO    ] No existing commands found in stream
[2026-06-12 12:42:44,227.227 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 12:42:44,230.230 INFO    ] Waiting 3.75 seconds before fallback handling...
[2026-06-12 12:42:48,353.353 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 12:42:48,355.355 INFO    ] Checking for system updates...
[2026-06-12 12:42:48,381.381 INFO    ] 200
[2026-06-12 12:42:48,383.383 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:42:48,419.419 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 12:42:48,421.421 INFO    ] No update needed
[2026-06-12 12:42:48,422.422 INFO    ] Checking for camera pi updates...
[2026-06-12 12:42:48,444.444 INFO    ] 200
[2026-06-12 12:42:48,445.445 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:42:48,468.468 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 12:42:48,514.514 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 12:42:48,516.516 INFO    ] No camera update needed
[2026-06-12 12:42:48,517.517 INFO    ] Script finished. Safe exiting...
[2026-06-12 12:42:48,518.518 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 12:42:48,521.521 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 12:42:48,524.524 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 12:42:50,562.562 INFO    ] ================================================
[2026-06-12 12:42:50,577.577 INFO    ] Launching Daemon at Fri Jun 12 12:42:50 IST 2026
[2026-06-12 12:42:50,588.588 INFO    ] ================================================
[2026-06-12 12:42:50,955.955 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 12:42:50
[2026-06-12 12:42:51,291.291 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 12:42:51,441.441 INFO    ] Initializing speech engine...
[2026-06-12 12:42:51,447.447 INFO    ] 2026-06-12 12:42:51
[2026-06-12 12:42:51,657.657 INFO    ] 2026-06-12 12:42:51
[2026-06-12 12:42:51,686.686 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 12:42:51,873.873 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 12:42:51,877.877 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 12:42:52,008.008 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 12:42:52,065.065 INFO    ] time= 12/06/2026 12:42:52
[2026-06-12 12:42:52,105.105 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 12:42:52,111.111 INFO    ] Checking for existing commands in stream...
[2026-06-12 12:42:52,182.182 INFO    ] No existing commands found in stream
[2026-06-12 12:42:57,193.193 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 12:42:57,197.197 INFO    ] Waiting 0.47 seconds before fallback handling...
[2026-06-12 12:42:58,042.042 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 12:42:58,044.044 INFO    ] Checking for system updates...
[2026-06-12 12:42:58,065.065 INFO    ] 200
[2026-06-12 12:42:58,066.066 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:42:58,098.098 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 12:42:58,100.100 INFO    ] No update needed
[2026-06-12 12:42:58,102.102 INFO    ] Checking for camera pi updates...
[2026-06-12 12:42:58,121.121 INFO    ] 200
[2026-06-12 12:42:58,123.123 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:42:58,147.147 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 12:42:58,192.192 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 12:42:58,194.194 INFO    ] No camera update needed
[2026-06-12 12:42:58,195.195 INFO    ] Script finished. Safe exiting...
[2026-06-12 12:42:58,197.197 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 12:42:58,200.200 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 12:42:58,203.203 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 12:43:00,242.242 INFO    ] ================================================
[2026-06-12 12:43:00,257.257 INFO    ] Launching Daemon at Fri Jun 12 12:43:00 IST 2026
[2026-06-12 12:43:00,268.268 INFO    ] ================================================
[2026-06-12 12:43:00,641.641 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 12:43:00
[2026-06-12 12:43:00,957.957 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 12:43:01,100.100 INFO    ] Initializing speech engine...
[2026-06-12 12:43:01,105.105 INFO    ] 2026-06-12 12:43:01
[2026-06-12 12:43:01,307.307 INFO    ] 2026-06-12 12:43:01
[2026-06-12 12:43:01,337.337 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 12:43:01,520.520 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 12:43:01,529.529 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 12:43:01,661.661 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 12:43:01,664.664 INFO    ] time= 12/06/2026 12:43:01
[2026-06-12 12:43:01,667.667 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 12:43:01,675.675 INFO    ] Checking for existing commands in stream...
[2026-06-12 12:43:01,837.837 INFO    ] No existing commands found in stream
[2026-06-12 12:43:06,870.870 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 12:43:06,873.873 INFO    ] Waiting 2.55 seconds before fallback handling...
[2026-06-12 12:43:09,812.812 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 12:43:09,814.814 INFO    ] Checking for system updates...
[2026-06-12 12:43:09,834.834 INFO    ] 200
[2026-06-12 12:43:09,836.836 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:43:09,867.867 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 12:43:09,869.869 INFO    ] No update needed
[2026-06-12 12:43:09,870.870 INFO    ] Checking for camera pi updates...
[2026-06-12 12:43:09,889.889 INFO    ] 200
[2026-06-12 12:43:09,891.891 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:43:09,916.916 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 12:43:09,957.957 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 12:43:09,959.959 INFO    ] No camera update needed
[2026-06-12 12:43:09,960.960 INFO    ] Script finished. Safe exiting...
[2026-06-12 12:43:09,961.961 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 12:43:09,964.964 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 12:43:09,967.967 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 12:43:12,006.006 INFO    ] ================================================
[2026-06-12 12:43:12,021.021 INFO    ] Launching Daemon at Fri Jun 12 12:43:12 IST 2026
[2026-06-12 12:43:12,032.032 INFO    ] ================================================
[2026-06-12 12:43:12,413.413 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 12:43:12
[2026-06-12 12:43:12,749.749 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 12:43:12,899.899 INFO    ] Initializing speech engine...
[2026-06-12 12:43:12,904.904 INFO    ] 2026-06-12 12:43:12
[2026-06-12 12:43:13,112.112 INFO    ] 2026-06-12 12:43:13
[2026-06-12 12:43:13,140.140 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 12:43:13,326.326 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 12:43:13,336.336 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 12:43:13,481.481 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 12:43:13,540.540 INFO    ] time= 12/06/2026 12:43:13
[2026-06-12 12:43:13,563.563 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 12:43:13,569.569 INFO    ] Checking for existing commands in stream...
[2026-06-12 12:43:13,637.637 INFO    ] No existing commands found in stream
[2026-06-12 12:43:18,651.651 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 12:43:18,654.654 INFO    ] Waiting 1.55 seconds before fallback handling...
[2026-06-12 12:43:20,606.606 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 12:43:20,608.608 INFO    ] Checking for system updates...
[2026-06-12 12:43:20,629.629 INFO    ] 200
[2026-06-12 12:43:20,631.631 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:43:20,662.662 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 12:43:20,663.663 INFO    ] No update needed
[2026-06-12 12:43:20,665.665 INFO    ] Checking for camera pi updates...
[2026-06-12 12:43:20,684.684 INFO    ] 200
[2026-06-12 12:43:20,685.685 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:43:20,709.709 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 12:43:20,754.754 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 12:43:20,755.755 INFO    ] No camera update needed
[2026-06-12 12:43:20,756.756 INFO    ] Script finished. Safe exiting...
[2026-06-12 12:43:20,758.758 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 12:43:20,761.761 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 12:43:20,764.764 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 12:43:22,803.803 INFO    ] ================================================
[2026-06-12 12:43:22,818.818 INFO    ] Launching Daemon at Fri Jun 12 12:43:22 IST 2026
[2026-06-12 12:43:22,829.829 INFO    ] ================================================
[2026-06-12 12:43:23,181.181 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 12:43:23
[2026-06-12 12:43:23,492.492 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 12:43:23,630.630 INFO    ] Initializing speech engine...
[2026-06-12 12:43:23,633.633 INFO    ] 2026-06-12 12:43:23
[2026-06-12 12:43:23,859.859 INFO    ] 2026-06-12 12:43:23
[2026-06-12 12:43:23,890.890 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 12:43:24,084.084 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 12:43:24,088.088 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 12:43:24,234.234 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 12:43:24,305.305 INFO    ] time= 12/06/2026 12:43:24
[2026-06-12 12:43:24,334.334 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 12:43:24,341.341 INFO    ] Checking for existing commands in stream...
[2026-06-12 12:43:24,412.412 INFO    ] No existing commands found in stream
[2026-06-12 12:43:29,421.421 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 12:43:29,423.423 INFO    ] Waiting 3.50 seconds before fallback handling...
[2026-06-12 12:43:33,273.273 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 12:43:33,275.275 INFO    ] Checking for system updates...
[2026-06-12 12:43:33,295.295 INFO    ] 200
[2026-06-12 12:43:33,296.296 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:43:33,326.326 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 12:43:33,327.327 INFO    ] No update needed
[2026-06-12 12:43:33,329.329 INFO    ] Checking for camera pi updates...
[2026-06-12 12:43:33,349.349 INFO    ] 200
[2026-06-12 12:43:33,350.350 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:43:33,373.373 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 12:43:33,411.411 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 12:43:33,412.412 INFO    ] No camera update needed
[2026-06-12 12:43:33,413.413 INFO    ] Script finished. Safe exiting...
[2026-06-12 12:43:33,414.414 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 12:43:33,417.417 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 12:43:33,420.420 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 12:43:35,458.458 INFO    ] ================================================
[2026-06-12 12:43:35,473.473 INFO    ] Launching Daemon at Fri Jun 12 12:43:35 IST 2026
[2026-06-12 12:43:35,487.487 INFO    ] ================================================
[2026-06-12 12:43:35,849.849 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 12:43:35
[2026-06-12 12:43:36,166.166 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 12:43:36,311.311 INFO    ] Initializing speech engine...
[2026-06-12 12:43:36,316.316 INFO    ] 2026-06-12 12:43:36
[2026-06-12 12:43:36,519.519 INFO    ] 2026-06-12 12:43:36
[2026-06-12 12:43:36,547.547 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 12:43:36,731.731 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 12:43:36,740.740 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 12:43:36,874.874 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 12:43:36,935.935 INFO    ] time= 12/06/2026 12:43:36
[2026-06-12 12:43:36,959.959 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 12:43:36,966.966 INFO    ] Checking for existing commands in stream...
[2026-06-12 12:43:37,055.055 INFO    ] No existing commands found in stream
[2026-06-12 12:43:42,064.064 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 12:43:42,067.067 INFO    ] Waiting 2.86 seconds before fallback handling...
[2026-06-12 12:43:45,275.275 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 12:43:45,276.276 INFO    ] Checking for system updates...
[2026-06-12 12:43:45,297.297 INFO    ] 200
[2026-06-12 12:43:45,298.298 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:43:45,330.330 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 12:43:45,331.331 INFO    ] No update needed
[2026-06-12 12:43:45,333.333 INFO    ] Checking for camera pi updates...
[2026-06-12 12:43:45,352.352 INFO    ] 200
[2026-06-12 12:43:45,353.353 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:43:45,376.376 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 12:43:45,413.413 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 12:43:45,414.414 INFO    ] No camera update needed
[2026-06-12 12:43:45,416.416 INFO    ] Script finished. Safe exiting...
[2026-06-12 12:43:45,417.417 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 12:43:45,420.420 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 12:43:45,423.423 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 12:43:47,461.461 INFO    ] ================================================
[2026-06-12 12:43:47,476.476 INFO    ] Launching Daemon at Fri Jun 12 12:43:47 IST 2026
[2026-06-12 12:43:47,486.486 INFO    ] ================================================
[2026-06-12 12:43:47,832.832 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 12:43:47
[2026-06-12 12:43:48,143.143 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 12:43:48,274.274 INFO    ] Initializing speech engine...
[2026-06-12 12:43:48,277.277 INFO    ] 2026-06-12 12:43:48
[2026-06-12 12:43:48,505.505 INFO    ] 2026-06-12 12:43:48
[2026-06-12 12:43:48,536.536 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 12:43:48,733.733 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 12:43:48,737.737 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 12:43:48,882.882 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 12:43:48,951.951 INFO    ] time= 12/06/2026 12:43:48
[2026-06-12 12:43:48,977.977 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 12:43:48,979.979 INFO    ] Checking for existing commands in stream...
[2026-06-12 12:43:49,053.053 INFO    ] No existing commands found in stream
[2026-06-12 12:43:54,064.064 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 12:43:54,066.066 INFO    ] Waiting 1.40 seconds before fallback handling...
[2026-06-12 12:43:55,843.843 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 12:43:55,845.845 INFO    ] Checking for system updates...
[2026-06-12 12:43:55,867.867 INFO    ] 200
[2026-06-12 12:43:55,868.868 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:43:55,898.898 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 12:43:55,900.900 INFO    ] No update needed
[2026-06-12 12:43:55,901.901 INFO    ] Checking for camera pi updates...
[2026-06-12 12:43:55,921.921 INFO    ] 200
[2026-06-12 12:43:55,924.924 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:43:55,947.947 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 12:43:55,987.987 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 12:43:55,989.989 INFO    ] No camera update needed
[2026-06-12 12:43:55,990.990 INFO    ] Script finished. Safe exiting...
[2026-06-12 12:43:55,991.991 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 12:43:55,994.994 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 12:43:55,997.997 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 12:43:58,035.035 INFO    ] ================================================
[2026-06-12 12:43:58,050.050 INFO    ] Launching Daemon at Fri Jun 12 12:43:58 IST 2026
[2026-06-12 12:43:58,060.060 INFO    ] ================================================
[2026-06-12 12:43:58,435.435 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 12:43:58
[2026-06-12 12:43:58,770.770 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 12:43:58,920.920 INFO    ] Initializing speech engine...
[2026-06-12 12:43:58,926.926 INFO    ] 2026-06-12 12:43:58
[2026-06-12 12:43:59,136.136 INFO    ] 2026-06-12 12:43:59
[2026-06-12 12:43:59,165.165 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 12:43:59,351.351 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 12:43:59,355.355 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 12:43:59,494.494 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 12:43:59,553.553 INFO    ] time= 12/06/2026 12:43:59
[2026-06-12 12:43:59,587.587 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 12:43:59,589.589 INFO    ] Checking for existing commands in stream...
[2026-06-12 12:43:59,661.661 INFO    ] No existing commands found in stream
[2026-06-12 12:44:04,670.670 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 12:44:04,673.673 INFO    ] Waiting 2.02 seconds before fallback handling...
[2026-06-12 12:44:07,106.106 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 12:44:07,108.108 INFO    ] Checking for system updates...
[2026-06-12 12:44:07,129.129 INFO    ] 200
[2026-06-12 12:44:07,130.130 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:44:07,162.162 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 12:44:07,164.164 INFO    ] No update needed
[2026-06-12 12:44:07,165.165 INFO    ] Checking for camera pi updates...
[2026-06-12 12:44:07,184.184 INFO    ] 200
[2026-06-12 12:44:07,185.185 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:44:07,211.211 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 12:44:07,356.356 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 12:44:07,357.357 INFO    ] No camera update needed
[2026-06-12 12:44:07,358.358 INFO    ] Script finished. Safe exiting...
[2026-06-12 12:44:07,360.360 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 12:44:07,363.363 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 12:44:07,365.365 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 12:44:09,404.404 INFO    ] ================================================
[2026-06-12 12:44:09,419.419 INFO    ] Launching Daemon at Fri Jun 12 12:44:09 IST 2026
[2026-06-12 12:44:09,430.430 INFO    ] ================================================
[2026-06-12 12:44:09,771.771 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 12:44:09
[2026-06-12 12:44:10,084.084 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 12:44:10,215.215 INFO    ] Initializing speech engine...
[2026-06-12 12:44:10,220.220 INFO    ] 2026-06-12 12:44:10
[2026-06-12 12:44:10,445.445 INFO    ] 2026-06-12 12:44:10
[2026-06-12 12:44:10,476.476 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 12:44:10,671.671 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 12:44:10,674.674 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 12:44:10,812.812 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 12:44:10,873.873 INFO    ] time= 12/06/2026 12:44:10
[2026-06-12 12:44:10,916.916 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 12:44:10,917.917 INFO    ] Checking for existing commands in stream...
[2026-06-12 12:44:11,018.018 INFO    ] No existing commands found in stream
[2026-06-12 12:44:16,027.027 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 12:44:16,030.030 INFO    ] Waiting 2.96 seconds before fallback handling...
[2026-06-12 12:44:19,354.354 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 12:44:19,356.356 INFO    ] Checking for system updates...
[2026-06-12 12:44:19,377.377 INFO    ] 200
[2026-06-12 12:44:19,379.379 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:44:19,409.409 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 12:44:19,410.410 INFO    ] No update needed
[2026-06-12 12:44:19,411.411 INFO    ] Checking for camera pi updates...
[2026-06-12 12:44:19,433.433 INFO    ] 200
[2026-06-12 12:44:19,434.434 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:44:19,457.457 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 12:44:19,493.493 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 12:44:19,495.495 INFO    ] No camera update needed
[2026-06-12 12:44:19,496.496 INFO    ] Script finished. Safe exiting...
[2026-06-12 12:44:19,497.497 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 12:44:19,500.500 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 12:44:19,503.503 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 12:44:21,541.541 INFO    ] ================================================
[2026-06-12 12:44:21,557.557 INFO    ] Launching Daemon at Fri Jun 12 12:44:21 IST 2026
[2026-06-12 12:44:21,568.568 INFO    ] ================================================
[2026-06-12 12:44:21,933.933 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 12:44:21
[2026-06-12 12:44:22,244.244 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 12:44:22,373.373 INFO    ] Initializing speech engine...
[2026-06-12 12:44:22,378.378 INFO    ] 2026-06-12 12:44:22
[2026-06-12 12:44:22,595.595 INFO    ] 2026-06-12 12:44:22
[2026-06-12 12:44:22,624.624 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 12:44:22,809.809 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 12:44:22,813.813 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 12:44:22,951.951 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 12:44:23,010.010 INFO    ] time= 12/06/2026 12:44:22
[2026-06-12 12:44:23,043.043 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 12:44:23,049.049 INFO    ] Checking for existing commands in stream...
[2026-06-12 12:44:23,117.117 INFO    ] No existing commands found in stream
[2026-06-12 12:44:28,126.126 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 12:44:28,129.129 INFO    ] Waiting 0.77 seconds before fallback handling...
[2026-06-12 12:44:29,286.286 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 12:44:29,287.287 INFO    ] Checking for system updates...
[2026-06-12 12:44:29,308.308 INFO    ] 200
[2026-06-12 12:44:29,310.310 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:44:29,341.341 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 12:44:29,342.342 INFO    ] No update needed
[2026-06-12 12:44:29,343.343 INFO    ] Checking for camera pi updates...
[2026-06-12 12:44:29,363.363 INFO    ] 200
[2026-06-12 12:44:29,365.365 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:44:29,390.390 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 12:44:29,431.431 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 12:44:29,432.432 INFO    ] No camera update needed
[2026-06-12 12:44:29,434.434 INFO    ] Script finished. Safe exiting...
[2026-06-12 12:44:29,435.435 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 12:44:29,438.438 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 12:44:29,441.441 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 12:44:31,480.480 INFO    ] ================================================
[2026-06-12 12:44:31,496.496 INFO    ] Launching Daemon at Fri Jun 12 12:44:31 IST 2026
[2026-06-12 12:44:31,506.506 INFO    ] ================================================
[2026-06-12 12:44:31,846.846 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 12:44:31
[2026-06-12 12:44:32,191.191 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 12:44:32,345.345 INFO    ] Initializing speech engine...
[2026-06-12 12:44:32,351.351 INFO    ] 2026-06-12 12:44:32
[2026-06-12 12:44:32,588.588 INFO    ] 2026-06-12 12:44:32
[2026-06-12 12:44:32,620.620 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 12:44:32,762.762 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 12:44:32,813.813 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 12:44:32,946.946 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 12:44:33,014.014 INFO    ] time= 12/06/2026 12:44:32
[2026-06-12 12:44:33,040.040 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 12:44:33,046.046 INFO    ] Checking for existing commands in stream...
[2026-06-12 12:44:33,113.113 INFO    ] No existing commands found in stream
[2026-06-12 12:44:38,127.127 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 12:44:38,130.130 INFO    ] Waiting 2.56 seconds before fallback handling...
[2026-06-12 12:44:41,076.076 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 12:44:41,077.077 INFO    ] Checking for system updates...
[2026-06-12 12:44:41,098.098 INFO    ] 200
[2026-06-12 12:44:41,099.099 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:44:41,129.129 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 12:44:41,131.131 INFO    ] No update needed
[2026-06-12 12:44:41,133.133 INFO    ] Checking for camera pi updates...
[2026-06-12 12:44:41,153.153 INFO    ] 200
[2026-06-12 12:44:41,154.154 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:44:41,177.177 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 12:44:41,221.221 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 12:44:41,222.222 INFO    ] No camera update needed
[2026-06-12 12:44:41,224.224 INFO    ] Script finished. Safe exiting...
[2026-06-12 12:44:41,226.226 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 12:44:41,229.229 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 12:44:41,232.232 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 12:44:43,271.271 INFO    ] ================================================
[2026-06-12 12:44:43,286.286 INFO    ] Launching Daemon at Fri Jun 12 12:44:43 IST 2026
[2026-06-12 12:44:43,297.297 INFO    ] ================================================
[2026-06-12 12:44:43,659.659 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 12:44:43
[2026-06-12 12:44:43,992.992 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 12:44:44,143.143 INFO    ] Initializing speech engine...
[2026-06-12 12:44:44,148.148 INFO    ] 2026-06-12 12:44:44
[2026-06-12 12:44:44,357.357 INFO    ] 2026-06-12 12:44:44
[2026-06-12 12:44:44,386.386 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 12:44:44,572.572 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 12:44:44,582.582 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 12:44:44,711.711 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 12:44:44,763.763 INFO    ] time= 12/06/2026 12:44:44
[2026-06-12 12:44:44,804.804 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 12:44:44,814.814 INFO    ] Checking for existing commands in stream...
[2026-06-12 12:44:44,882.882 INFO    ] No existing commands found in stream
[2026-06-12 12:44:49,890.890 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 12:44:49,892.892 INFO    ] Waiting 0.94 seconds before fallback handling...
[2026-06-12 12:44:51,215.215 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 12:44:51,217.217 INFO    ] Checking for system updates...
[2026-06-12 12:44:51,238.238 INFO    ] 200
[2026-06-12 12:44:51,239.239 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:44:51,271.271 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 12:44:51,272.272 INFO    ] No update needed
[2026-06-12 12:44:51,273.273 INFO    ] Checking for camera pi updates...
[2026-06-12 12:44:51,292.292 INFO    ] 200
[2026-06-12 12:44:51,294.294 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:44:51,317.317 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 12:44:51,359.359 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 12:44:51,360.360 INFO    ] No camera update needed
[2026-06-12 12:44:51,361.361 INFO    ] Script finished. Safe exiting...
[2026-06-12 12:44:51,363.363 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 12:44:51,366.366 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 12:44:51,368.368 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 12:44:53,408.408 INFO    ] ================================================
[2026-06-12 12:44:53,423.423 INFO    ] Launching Daemon at Fri Jun 12 12:44:53 IST 2026
[2026-06-12 12:44:53,434.434 INFO    ] ================================================
[2026-06-12 12:44:53,816.816 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 12:44:53
[2026-06-12 12:44:54,149.149 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 12:44:54,288.288 INFO    ] Initializing speech engine...
[2026-06-12 12:44:54,300.300 INFO    ] 2026-06-12 12:44:54
[2026-06-12 12:44:54,513.513 INFO    ] 2026-06-12 12:44:54
[2026-06-12 12:44:54,543.543 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 12:44:54,730.730 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 12:44:54,734.734 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 12:44:54,895.895 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 12:44:54,944.944 INFO    ] time= 12/06/2026 12:44:54
[2026-06-12 12:44:54,967.967 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 12:44:54,974.974 INFO    ] Checking for existing commands in stream...
[2026-06-12 12:44:55,043.043 INFO    ] No existing commands found in stream
[2026-06-12 12:45:00,057.057 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 12:45:00,061.061 INFO    ] Waiting 3.45 seconds before fallback handling...
[2026-06-12 12:45:03,842.842 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 12:45:03,843.843 INFO    ] Checking for system updates...
[2026-06-12 12:45:03,865.865 INFO    ] 200
[2026-06-12 12:45:03,867.867 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:45:03,896.896 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 12:45:03,898.898 INFO    ] No update needed
[2026-06-12 12:45:03,900.900 INFO    ] Checking for camera pi updates...
[2026-06-12 12:45:03,924.924 INFO    ] 200
[2026-06-12 12:45:03,925.925 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:45:03,948.948 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 12:45:03,969.969 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 12:45:03,971.971 INFO    ] No camera update needed
[2026-06-12 12:45:03,972.972 INFO    ] Script finished. Safe exiting...
[2026-06-12 12:45:03,973.973 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 12:45:03,976.976 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 12:45:03,979.979 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 12:45:06,017.017 INFO    ] ================================================
[2026-06-12 12:45:06,033.033 INFO    ] Launching Daemon at Fri Jun 12 12:45:06 IST 2026
[2026-06-12 12:45:06,044.044 INFO    ] ================================================
[2026-06-12 12:45:06,386.386 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 12:45:06
[2026-06-12 12:45:06,698.698 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 12:45:06,835.835 INFO    ] Initializing speech engine...
[2026-06-12 12:45:06,845.845 INFO    ] 2026-06-12 12:45:06
[2026-06-12 12:45:07,048.048 INFO    ] 2026-06-12 12:45:07
[2026-06-12 12:45:07,077.077 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 12:45:07,260.260 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 12:45:07,269.269 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 12:45:07,399.399 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 12:45:07,466.466 INFO    ] time= 12/06/2026 12:45:07
[2026-06-12 12:45:07,490.490 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 12:45:07,496.496 INFO    ] Checking for existing commands in stream...
[2026-06-12 12:45:07,562.562 INFO    ] No existing commands found in stream
[2026-06-12 12:45:12,571.571 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 12:45:12,574.574 INFO    ] Waiting 2.50 seconds before fallback handling...
[2026-06-12 12:45:15,456.456 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 12:45:15,458.458 INFO    ] Checking for system updates...
[2026-06-12 12:45:15,479.479 INFO    ] 200
[2026-06-12 12:45:15,481.481 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:45:15,511.511 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 12:45:15,513.513 INFO    ] No update needed
[2026-06-12 12:45:15,514.514 INFO    ] Checking for camera pi updates...
[2026-06-12 12:45:15,533.533 INFO    ] 200
[2026-06-12 12:45:15,535.535 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:45:15,557.557 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 12:45:15,596.596 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 12:45:15,598.598 INFO    ] No camera update needed
[2026-06-12 12:45:15,599.599 INFO    ] Script finished. Safe exiting...
[2026-06-12 12:45:15,600.600 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 12:45:15,603.603 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 12:45:15,606.606 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 12:45:17,646.646 INFO    ] ================================================
[2026-06-12 12:45:17,672.672 INFO    ] Launching Daemon at Fri Jun 12 12:45:17 IST 2026
[2026-06-12 12:45:17,683.683 INFO    ] ================================================
[2026-06-12 12:45:18,020.020 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 12:45:18
[2026-06-12 12:45:18,332.332 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 12:45:18,475.475 INFO    ] Initializing speech engine...
[2026-06-12 12:45:18,480.480 INFO    ] 2026-06-12 12:45:18
[2026-06-12 12:45:18,688.688 INFO    ] 2026-06-12 12:45:18
[2026-06-12 12:45:18,717.717 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 12:45:18,903.903 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 12:45:18,907.907 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 12:45:19,046.046 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 12:45:19,110.110 INFO    ] time= 12/06/2026 12:45:19
[2026-06-12 12:45:19,139.139 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 12:45:19,145.145 INFO    ] Checking for existing commands in stream...
[2026-06-12 12:45:19,211.211 INFO    ] No existing commands found in stream
[2026-06-12 12:45:24,221.221 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 12:45:24,224.224 INFO    ] Waiting 2.58 seconds before fallback handling...
[2026-06-12 12:45:27,166.166 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 12:45:27,169.169 INFO    ] Checking for system updates...
[2026-06-12 12:45:27,205.205 INFO    ] 200
[2026-06-12 12:45:27,208.208 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:45:27,260.260 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 12:45:27,263.263 INFO    ] No update needed
[2026-06-12 12:45:27,265.265 INFO    ] Checking for camera pi updates...
[2026-06-12 12:45:27,300.300 INFO    ] 200
[2026-06-12 12:45:27,302.302 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:45:27,330.330 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 12:45:27,366.366 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 12:45:27,368.368 INFO    ] No camera update needed
[2026-06-12 12:45:27,369.369 INFO    ] Script finished. Safe exiting...
[2026-06-12 12:45:27,370.370 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 12:45:27,373.373 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 12:45:27,376.376 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 12:45:29,414.414 INFO    ] ================================================
[2026-06-12 12:45:29,430.430 INFO    ] Launching Daemon at Fri Jun 12 12:45:29 IST 2026
[2026-06-12 12:45:29,441.441 INFO    ] ================================================
[2026-06-12 12:45:29,797.797 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 12:45:29
[2026-06-12 12:45:30,128.128 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 12:45:30,278.278 INFO    ] Initializing speech engine...
[2026-06-12 12:45:30,283.283 INFO    ] 2026-06-12 12:45:30
[2026-06-12 12:45:30,492.492 INFO    ] 2026-06-12 12:45:30
[2026-06-12 12:45:30,521.521 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 12:45:30,710.710 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 12:45:30,719.719 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 12:45:30,862.862 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 12:45:30,920.920 INFO    ] time= 12/06/2026 12:45:30
[2026-06-12 12:45:30,947.947 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 12:45:30,954.954 INFO    ] Checking for existing commands in stream...
[2026-06-12 12:45:31,044.044 INFO    ] No existing commands found in stream
[2026-06-12 12:45:36,053.053 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 12:45:36,056.056 INFO    ] Waiting 2.83 seconds before fallback handling...
[2026-06-12 12:45:39,266.266 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 12:45:39,268.268 INFO    ] Checking for system updates...
[2026-06-12 12:45:39,288.288 INFO    ] 200
[2026-06-12 12:45:39,290.290 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:45:39,320.320 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 12:45:39,322.322 INFO    ] No update needed
[2026-06-12 12:45:39,323.323 INFO    ] Checking for camera pi updates...
[2026-06-12 12:45:39,342.342 INFO    ] 200
[2026-06-12 12:45:39,344.344 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:45:39,369.369 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 12:45:39,405.405 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 12:45:39,406.406 INFO    ] No camera update needed
[2026-06-12 12:45:39,407.407 INFO    ] Script finished. Safe exiting...
[2026-06-12 12:45:39,409.409 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 12:45:39,412.412 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 12:45:39,414.414 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 12:45:41,453.453 INFO    ] ================================================
[2026-06-12 12:45:41,468.468 INFO    ] Launching Daemon at Fri Jun 12 12:45:41 IST 2026
[2026-06-12 12:45:41,478.478 INFO    ] ================================================
[2026-06-12 12:45:41,820.820 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 12:45:41
[2026-06-12 12:45:42,153.153 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 12:45:42,292.292 INFO    ] Initializing speech engine...
[2026-06-12 12:45:42,304.304 INFO    ] 2026-06-12 12:45:42
[2026-06-12 12:45:42,516.516 INFO    ] 2026-06-12 12:45:42
[2026-06-12 12:45:42,547.547 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 12:45:42,736.736 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 12:45:42,746.746 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 12:45:42,874.874 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 12:45:42,932.932 INFO    ] time= 12/06/2026 12:45:42
[2026-06-12 12:45:42,973.973 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 12:45:42,980.980 INFO    ] Checking for existing commands in stream...
[2026-06-12 12:45:43,048.048 INFO    ] No existing commands found in stream
[2026-06-12 12:45:48,062.062 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 12:45:48,065.065 INFO    ] Waiting 0.12 seconds before fallback handling...
[2026-06-12 12:45:48,549.549 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 12:45:48,551.551 INFO    ] Checking for system updates...
[2026-06-12 12:45:48,572.572 INFO    ] 200
[2026-06-12 12:45:48,573.573 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:45:48,606.606 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 12:45:48,608.608 INFO    ] No update needed
[2026-06-12 12:45:48,609.609 INFO    ] Checking for camera pi updates...
[2026-06-12 12:45:48,628.628 INFO    ] 200
[2026-06-12 12:45:48,630.630 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:45:48,653.653 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 12:45:48,698.698 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 12:45:48,699.699 INFO    ] No camera update needed
[2026-06-12 12:45:48,701.701 INFO    ] Script finished. Safe exiting...
[2026-06-12 12:45:48,702.702 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 12:45:48,705.705 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 12:45:48,708.708 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 12:45:50,746.746 INFO    ] ================================================
[2026-06-12 12:45:50,762.762 INFO    ] Launching Daemon at Fri Jun 12 12:45:50 IST 2026
[2026-06-12 12:45:50,773.773 INFO    ] ================================================
[2026-06-12 12:45:51,116.116 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 12:45:51
[2026-06-12 12:45:51,448.448 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 12:45:51,596.596 INFO    ] Initializing speech engine...
[2026-06-12 12:45:51,602.602 INFO    ] 2026-06-12 12:45:51
[2026-06-12 12:45:51,808.808 INFO    ] 2026-06-12 12:45:51
[2026-06-12 12:45:51,837.837 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 12:45:52,020.020 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 12:45:52,030.030 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 12:45:52,160.160 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 12:45:52,224.224 INFO    ] time= 12/06/2026 12:45:52
[2026-06-12 12:45:52,251.251 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 12:45:52,258.258 INFO    ] Checking for existing commands in stream...
[2026-06-12 12:45:52,348.348 INFO    ] No existing commands found in stream
[2026-06-12 12:45:57,357.357 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 12:45:57,361.361 INFO    ] Waiting 1.62 seconds before fallback handling...
[2026-06-12 12:45:59,347.347 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 12:45:59,348.348 INFO    ] Checking for system updates...
[2026-06-12 12:45:59,369.369 INFO    ] 200
[2026-06-12 12:45:59,370.370 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:45:59,402.402 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 12:45:59,404.404 INFO    ] No update needed
[2026-06-12 12:45:59,406.406 INFO    ] Checking for camera pi updates...
[2026-06-12 12:45:59,425.425 INFO    ] 200
[2026-06-12 12:45:59,426.426 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:45:59,449.449 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 12:45:59,499.499 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 12:45:59,501.501 INFO    ] No camera update needed
[2026-06-12 12:45:59,502.502 INFO    ] Script finished. Safe exiting...
[2026-06-12 12:45:59,503.503 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 12:45:59,506.506 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 12:45:59,509.509 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 12:46:01,565.565 INFO    ] ================================================
[2026-06-12 12:46:01,594.594 INFO    ] Launching Daemon at Fri Jun 12 12:46:01 IST 2026
[2026-06-12 12:46:01,628.628 INFO    ] ================================================
[2026-06-12 12:46:02,063.063 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 12:46:02
[2026-06-12 12:46:02,463.463 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 12:46:02,624.624 INFO    ] Initializing speech engine...
[2026-06-12 12:46:02,627.627 INFO    ] 2026-06-12 12:46:02
[2026-06-12 12:46:02,846.846 INFO    ] 2026-06-12 12:46:02
[2026-06-12 12:46:02,876.876 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 12:46:03,007.007 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 12:46:03,044.044 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 12:46:03,212.212 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 12:46:03,244.244 INFO    ] time= 12/06/2026 12:46:03
[2026-06-12 12:46:03,294.294 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 12:46:03,319.319 INFO    ] Checking for existing commands in stream...
[2026-06-12 12:46:03,394.394 INFO    ] No existing commands found in stream
[2026-06-12 12:46:08,404.404 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 12:46:08,407.407 INFO    ] Waiting 3.06 seconds before fallback handling...
[2026-06-12 12:46:11,818.818 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 12:46:11,819.819 INFO    ] Checking for system updates...
[2026-06-12 12:46:11,842.842 INFO    ] 200
[2026-06-12 12:46:11,844.844 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:46:11,876.876 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 12:46:11,878.878 INFO    ] No update needed
[2026-06-12 12:46:11,879.879 INFO    ] Checking for camera pi updates...
[2026-06-12 12:46:11,900.900 INFO    ] 200
[2026-06-12 12:46:11,901.901 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:46:11,926.926 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 12:46:12,049.049 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 12:46:12,050.050 INFO    ] No camera update needed
[2026-06-12 12:46:12,052.052 INFO    ] Script finished. Safe exiting...
[2026-06-12 12:46:12,053.053 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 12:46:12,056.056 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 12:46:12,058.058 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 12:46:14,097.097 INFO    ] ================================================
[2026-06-12 12:46:14,113.113 INFO    ] Launching Daemon at Fri Jun 12 12:46:14 IST 2026
[2026-06-12 12:46:14,124.124 INFO    ] ================================================
[2026-06-12 12:46:14,494.494 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 12:46:14
[2026-06-12 12:46:14,805.805 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 12:46:14,938.938 INFO    ] Initializing speech engine...
[2026-06-12 12:46:14,943.943 INFO    ] 2026-06-12 12:46:14
[2026-06-12 12:46:15,174.174 INFO    ] 2026-06-12 12:46:15
[2026-06-12 12:46:15,205.205 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 12:46:15,338.338 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 12:46:15,392.392 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 12:46:15,551.551 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 12:46:15,587.587 INFO    ] time= 12/06/2026 12:46:15
[2026-06-12 12:46:15,635.635 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 12:46:15,659.659 INFO    ] Checking for existing commands in stream...
[2026-06-12 12:46:15,736.736 INFO    ] No existing commands found in stream
[2026-06-12 12:46:20,747.747 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 12:46:20,749.749 INFO    ] Waiting 3.71 seconds before fallback handling...
[2026-06-12 12:46:24,865.865 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 12:46:24,867.867 INFO    ] Checking for system updates...
[2026-06-12 12:46:24,903.903 INFO    ] 200
[2026-06-12 12:46:24,905.905 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:46:24,959.959 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 12:46:24,962.962 INFO    ] No update needed
[2026-06-12 12:46:24,964.964 INFO    ] Checking for camera pi updates...
[2026-06-12 12:46:24,998.998 INFO    ] 200
[2026-06-12 12:46:24,999.999 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:46:25,025.025 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 12:46:25,058.058 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 12:46:25,059.059 INFO    ] No camera update needed
[2026-06-12 12:46:25,060.060 INFO    ] Script finished. Safe exiting...
[2026-06-12 12:46:25,062.062 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 12:46:25,065.065 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 12:46:25,068.068 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 12:46:27,107.107 INFO    ] ================================================
[2026-06-12 12:46:27,123.123 INFO    ] Launching Daemon at Fri Jun 12 12:46:27 IST 2026
[2026-06-12 12:46:27,134.134 INFO    ] ================================================
[2026-06-12 12:46:27,488.488 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 12:46:27
[2026-06-12 12:46:27,799.799 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 12:46:27,941.941 INFO    ] Initializing speech engine...
[2026-06-12 12:46:27,945.945 INFO    ] 2026-06-12 12:46:27
[2026-06-12 12:46:28,148.148 INFO    ] 2026-06-12 12:46:28
[2026-06-12 12:46:28,177.177 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 12:46:28,361.361 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 12:46:28,364.364 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 12:46:28,499.499 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 12:46:28,558.558 INFO    ] time= 12/06/2026 12:46:28
[2026-06-12 12:46:28,590.590 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 12:46:28,592.592 INFO    ] Checking for existing commands in stream...
[2026-06-12 12:46:28,663.663 INFO    ] No existing commands found in stream
[2026-06-12 12:46:33,677.677 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 12:46:33,680.680 INFO    ] Waiting 3.66 seconds before fallback handling...
[2026-06-12 12:46:37,707.707 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 12:46:37,709.709 INFO    ] Checking for system updates...
[2026-06-12 12:46:37,729.729 INFO    ] 200
[2026-06-12 12:46:37,731.731 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:46:37,764.764 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 12:46:37,765.765 INFO    ] No update needed
[2026-06-12 12:46:37,766.766 INFO    ] Checking for camera pi updates...
[2026-06-12 12:46:37,787.787 INFO    ] 200
[2026-06-12 12:46:37,789.789 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:46:37,813.813 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 12:46:37,850.850 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 12:46:37,852.852 INFO    ] No camera update needed
[2026-06-12 12:46:37,853.853 INFO    ] Script finished. Safe exiting...
[2026-06-12 12:46:37,854.854 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 12:46:37,857.857 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 12:46:37,860.860 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 12:46:39,891.891 INFO    ] ================================================
[2026-06-12 12:46:39,907.907 INFO    ] Launching Daemon at Fri Jun 12 12:46:39 IST 2026
[2026-06-12 12:46:39,917.917 INFO    ] ================================================
[2026-06-12 12:46:40,252.252 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 12:46:40
[2026-06-12 12:46:40,570.570 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 12:46:40,721.721 INFO    ] Initializing speech engine...
[2026-06-12 12:46:40,731.731 INFO    ] 2026-06-12 12:46:40
[2026-06-12 12:46:40,954.954 INFO    ] 2026-06-12 12:46:40
[2026-06-12 12:46:40,995.995 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 12:46:41,154.154 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 12:46:41,193.193 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 12:46:41,360.360 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 12:46:41,375.375 INFO    ] time= 12/06/2026 12:46:41
[2026-06-12 12:46:41,436.436 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 12:46:41,476.476 INFO    ] Checking for existing commands in stream...
[2026-06-12 12:46:41,555.555 INFO    ] No existing commands found in stream
[2026-06-12 12:46:46,564.564 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 12:46:46,567.567 INFO    ] Waiting 0.91 seconds before fallback handling...
[2026-06-12 12:46:47,820.820 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 12:46:47,822.822 INFO    ] Checking for system updates...
[2026-06-12 12:46:47,843.843 INFO    ] 200
[2026-06-12 12:46:47,845.845 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:46:47,875.875 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 12:46:47,876.876 INFO    ] No update needed
[2026-06-12 12:46:47,878.878 INFO    ] Checking for camera pi updates...
[2026-06-12 12:46:47,897.897 INFO    ] 200
[2026-06-12 12:46:47,898.898 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:46:47,926.926 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 12:46:47,966.966 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 12:46:47,967.967 INFO    ] No camera update needed
[2026-06-12 12:46:47,968.968 INFO    ] Script finished. Safe exiting...
[2026-06-12 12:46:47,970.970 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 12:46:47,973.973 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 12:46:47,975.975 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 12:46:50,014.014 INFO    ] ================================================
[2026-06-12 12:46:50,030.030 INFO    ] Launching Daemon at Fri Jun 12 12:46:50 IST 2026
[2026-06-12 12:46:50,041.041 INFO    ] ================================================
[2026-06-12 12:46:50,359.359 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 12:46:50
[2026-06-12 12:46:50,671.671 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 12:46:50,801.801 INFO    ] Initializing speech engine...
[2026-06-12 12:46:50,809.809 INFO    ] 2026-06-12 12:46:50
[2026-06-12 12:46:51,024.024 INFO    ] 2026-06-12 12:46:50
[2026-06-12 12:46:51,052.052 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 12:46:51,240.240 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 12:46:51,243.243 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 12:46:51,374.374 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 12:46:51,420.420 INFO    ] time= 12/06/2026 12:46:51
[2026-06-12 12:46:51,465.465 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 12:46:51,475.475 INFO    ] Checking for existing commands in stream...
[2026-06-12 12:46:51,550.550 INFO    ] No existing commands found in stream
[2026-06-12 12:46:56,560.560 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 12:46:56,563.563 INFO    ] Waiting 0.53 seconds before fallback handling...
[2026-06-12 12:46:57,452.452 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 12:46:57,454.454 INFO    ] Checking for system updates...
[2026-06-12 12:46:57,476.476 INFO    ] 200
[2026-06-12 12:46:57,478.478 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:46:57,511.511 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 12:46:57,513.513 INFO    ] No update needed
[2026-06-12 12:46:57,514.514 INFO    ] Checking for camera pi updates...
[2026-06-12 12:46:57,536.536 INFO    ] 200
[2026-06-12 12:46:57,537.537 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:46:57,566.566 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 12:46:57,602.602 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 12:46:57,604.604 INFO    ] No camera update needed
[2026-06-12 12:46:57,605.605 INFO    ] Script finished. Safe exiting...
[2026-06-12 12:46:57,607.607 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 12:46:57,610.610 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 12:46:57,613.613 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 12:46:59,656.656 INFO    ] ================================================
[2026-06-12 12:46:59,671.671 INFO    ] Launching Daemon at Fri Jun 12 12:46:59 IST 2026
[2026-06-12 12:46:59,682.682 INFO    ] ================================================
[2026-06-12 12:47:00,024.024 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 12:47:00
[2026-06-12 12:47:00,335.335 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 12:47:00,478.478 INFO    ] Initializing speech engine...
[2026-06-12 12:47:00,483.483 INFO    ] 2026-06-12 12:47:00
[2026-06-12 12:47:00,685.685 INFO    ] 2026-06-12 12:47:00
[2026-06-12 12:47:00,713.713 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 12:47:00,896.896 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 12:47:00,899.899 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 12:47:01,028.028 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 12:47:01,094.094 INFO    ] time= 12/06/2026 12:47:01
[2026-06-12 12:47:01,126.126 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 12:47:01,132.132 INFO    ] Checking for existing commands in stream...
[2026-06-12 12:47:01,199.199 INFO    ] No existing commands found in stream
[2026-06-12 12:47:06,208.208 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 12:47:06,211.211 INFO    ] Waiting 2.35 seconds before fallback handling...
[2026-06-12 12:47:08,929.929 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 12:47:08,931.931 INFO    ] Checking for system updates...
[2026-06-12 12:47:08,953.953 INFO    ] 200
[2026-06-12 12:47:08,954.954 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:47:08,987.987 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 12:47:08,988.988 INFO    ] No update needed
[2026-06-12 12:47:08,989.989 INFO    ] Checking for camera pi updates...
[2026-06-12 12:47:09,013.013 INFO    ] 200
[2026-06-12 12:47:09,015.015 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:47:09,038.038 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 12:47:09,059.059 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 12:47:09,061.061 INFO    ] No camera update needed
[2026-06-12 12:47:09,062.062 INFO    ] Script finished. Safe exiting...
[2026-06-12 12:47:09,063.063 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 12:47:09,066.066 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 12:47:09,069.069 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 12:47:11,108.108 INFO    ] ================================================
[2026-06-12 12:47:11,123.123 INFO    ] Launching Daemon at Fri Jun 12 12:47:11 IST 2026
[2026-06-12 12:47:11,134.134 INFO    ] ================================================
[2026-06-12 12:47:11,487.487 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 12:47:11
[2026-06-12 12:47:11,826.826 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 12:47:11,983.983 INFO    ] Initializing speech engine...
[2026-06-12 12:47:11,987.987 INFO    ] 2026-06-12 12:47:11
[2026-06-12 12:47:12,194.194 INFO    ] 2026-06-12 12:47:12
[2026-06-12 12:47:12,225.225 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 12:47:12,411.411 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 12:47:12,422.422 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 12:47:12,549.549 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 12:47:12,607.607 INFO    ] time= 12/06/2026 12:47:12
[2026-06-12 12:47:12,645.645 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 12:47:12,647.647 INFO    ] Checking for existing commands in stream...
[2026-06-12 12:47:12,744.744 INFO    ] No existing commands found in stream
[2026-06-12 12:47:17,769.769 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 12:47:17,772.772 INFO    ] Waiting 0.91 seconds before fallback handling...
[2026-06-12 12:47:19,082.082 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 12:47:19,084.084 INFO    ] Checking for system updates...
[2026-06-12 12:47:19,105.105 INFO    ] 200
[2026-06-12 12:47:19,106.106 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:47:19,137.137 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 12:47:19,139.139 INFO    ] No update needed
[2026-06-12 12:47:19,140.140 INFO    ] Checking for camera pi updates...
[2026-06-12 12:47:19,161.161 INFO    ] 200
[2026-06-12 12:47:19,163.163 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:47:19,186.186 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 12:47:19,223.223 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 12:47:19,224.224 INFO    ] No camera update needed
[2026-06-12 12:47:19,226.226 INFO    ] Script finished. Safe exiting...
[2026-06-12 12:47:19,227.227 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 12:47:19,230.230 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 12:47:19,234.234 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 12:47:21,274.274 INFO    ] ================================================
[2026-06-12 12:47:21,289.289 INFO    ] Launching Daemon at Fri Jun 12 12:47:21 IST 2026
[2026-06-12 12:47:21,300.300 INFO    ] ================================================
[2026-06-12 12:47:21,660.660 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 12:47:21
[2026-06-12 12:47:21,976.976 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 12:47:22,117.117 INFO    ] Initializing speech engine...
[2026-06-12 12:47:22,127.127 INFO    ] 2026-06-12 12:47:22
[2026-06-12 12:47:22,343.343 INFO    ] 2026-06-12 12:47:22
[2026-06-12 12:47:22,374.374 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 12:47:22,573.573 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 12:47:22,575.575 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 12:47:22,716.716 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 12:47:22,778.778 INFO    ] time= 12/06/2026 12:47:22
[2026-06-12 12:47:22,814.814 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 12:47:22,825.825 INFO    ] Checking for existing commands in stream...
[2026-06-12 12:47:22,902.902 INFO    ] No existing commands found in stream
[2026-06-12 12:47:27,911.911 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 12:47:27,914.914 INFO    ] Waiting 0.30 seconds before fallback handling...
[2026-06-12 12:47:28,617.617 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 12:47:28,618.618 INFO    ] Checking for system updates...
[2026-06-12 12:47:28,640.640 INFO    ] 200
[2026-06-12 12:47:28,641.641 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:47:28,674.674 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 12:47:28,675.675 INFO    ] No update needed
[2026-06-12 12:47:28,676.676 INFO    ] Checking for camera pi updates...
[2026-06-12 12:47:28,696.696 INFO    ] 200
[2026-06-12 12:47:28,698.698 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:47:28,722.722 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 12:47:28,761.761 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 12:47:28,762.762 INFO    ] No camera update needed
[2026-06-12 12:47:28,764.764 INFO    ] Script finished. Safe exiting...
[2026-06-12 12:47:28,765.765 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 12:47:28,768.768 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 12:47:28,770.770 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 12:47:30,810.810 INFO    ] ================================================
[2026-06-12 12:47:30,826.826 INFO    ] Launching Daemon at Fri Jun 12 12:47:30 IST 2026
[2026-06-12 12:47:30,837.837 INFO    ] ================================================
[2026-06-12 12:47:31,186.186 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 12:47:31
[2026-06-12 12:47:31,499.499 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 12:47:31,635.635 INFO    ] Initializing speech engine...
[2026-06-12 12:47:31,638.638 INFO    ] 2026-06-12 12:47:31
[2026-06-12 12:47:31,839.839 INFO    ] 2026-06-12 12:47:31
[2026-06-12 12:47:31,889.889 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 12:47:31,999.999 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 12:47:32,001.001 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 12:47:32,145.145 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 12:47:32,157.157 INFO    ] time= 12/06/2026 12:47:32
[2026-06-12 12:47:32,162.162 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 12:47:32,181.181 INFO    ] Checking for existing commands in stream...
[2026-06-12 12:47:32,277.277 INFO    ] No existing commands found in stream
[2026-06-12 12:47:37,302.302 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 12:47:37,305.305 INFO    ] Waiting 3.37 seconds before fallback handling...
[2026-06-12 12:47:41,061.061 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 12:47:41,062.062 INFO    ] Checking for system updates...
[2026-06-12 12:47:41,084.084 INFO    ] 200
[2026-06-12 12:47:41,085.085 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:47:41,117.117 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 12:47:41,119.119 INFO    ] No update needed
[2026-06-12 12:47:41,120.120 INFO    ] Checking for camera pi updates...
[2026-06-12 12:47:41,139.139 INFO    ] 200
[2026-06-12 12:47:41,141.141 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:47:41,166.166 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 12:47:41,203.203 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 12:47:41,205.205 INFO    ] No camera update needed
[2026-06-12 12:47:41,206.206 INFO    ] Script finished. Safe exiting...
[2026-06-12 12:47:41,207.207 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 12:47:41,210.210 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 12:47:41,213.213 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 12:47:43,259.259 INFO    ] ================================================
[2026-06-12 12:47:43,275.275 INFO    ] Launching Daemon at Fri Jun 12 12:47:43 IST 2026
[2026-06-12 12:47:43,282.282 INFO    ] ================================================
[2026-06-12 12:47:43,582.582 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 12:47:43
[2026-06-12 12:47:43,895.895 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 12:47:44,027.027 INFO    ] Initializing speech engine...
[2026-06-12 12:47:44,032.032 INFO    ] 2026-06-12 12:47:44
[2026-06-12 12:47:44,230.230 INFO    ] 2026-06-12 12:47:44
[2026-06-12 12:47:44,279.279 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 12:47:44,406.406 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 12:47:44,444.444 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 12:47:44,611.611 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 12:47:44,659.659 INFO    ] time= 12/06/2026 12:47:44
[2026-06-12 12:47:44,723.723 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 12:47:44,757.757 INFO    ] Checking for existing commands in stream...
[2026-06-12 12:47:44,828.828 INFO    ] No existing commands found in stream
[2026-06-12 12:47:49,837.837 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 12:47:49,840.840 INFO    ] Waiting 0.61 seconds before fallback handling...
[2026-06-12 12:47:50,794.794 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 12:47:50,795.795 INFO    ] Checking for system updates...
[2026-06-12 12:47:50,817.817 INFO    ] 200
[2026-06-12 12:47:50,818.818 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:47:50,848.848 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 12:47:50,849.849 INFO    ] No update needed
[2026-06-12 12:47:50,851.851 INFO    ] Checking for camera pi updates...
[2026-06-12 12:47:50,872.872 INFO    ] 200
[2026-06-12 12:47:50,874.874 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:47:50,898.898 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 12:47:50,932.932 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 12:47:50,934.934 INFO    ] No camera update needed
[2026-06-12 12:47:50,935.935 INFO    ] Script finished. Safe exiting...
[2026-06-12 12:47:50,936.936 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 12:47:50,939.939 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 12:47:50,942.942 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 12:47:52,981.981 INFO    ] ================================================
[2026-06-12 12:47:53,997.997 INFO    ] Launching Daemon at Fri Jun 12 12:47:52 IST 2026
[2026-06-12 12:47:53,009.009 INFO    ] ================================================
[2026-06-12 12:47:53,338.338 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 12:47:53
[2026-06-12 12:47:53,649.649 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 12:47:53,779.779 INFO    ] Initializing speech engine...
[2026-06-12 12:47:53,783.783 INFO    ] 2026-06-12 12:47:53
[2026-06-12 12:47:53,998.998 INFO    ] 2026-06-12 12:47:53
[2026-06-12 12:47:54,027.027 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 12:47:54,153.153 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 12:47:54,216.216 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 12:47:54,361.361 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 12:47:54,423.423 INFO    ] time= 12/06/2026 12:47:54
[2026-06-12 12:47:54,447.447 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 12:47:54,453.453 INFO    ] Checking for existing commands in stream...
[2026-06-12 12:47:54,521.521 INFO    ] No existing commands found in stream
[2026-06-12 12:47:59,530.530 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 12:47:59,532.532 INFO    ] Waiting 2.83 seconds before fallback handling...
[2026-06-12 12:48:02,678.678 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 12:48:02,680.680 INFO    ] Checking for system updates...
[2026-06-12 12:48:02,705.705 INFO    ] 200
[2026-06-12 12:48:02,707.707 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:48:02,746.746 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 12:48:02,749.749 INFO    ] No update needed
[2026-06-12 12:48:02,751.751 INFO    ] Checking for camera pi updates...
[2026-06-12 12:48:02,785.785 INFO    ] 200
[2026-06-12 12:48:02,788.788 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:48:02,828.828 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 12:48:02,851.851 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 12:48:02,853.853 INFO    ] No camera update needed
[2026-06-12 12:48:02,854.854 INFO    ] Script finished. Safe exiting...
[2026-06-12 12:48:02,856.856 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 12:48:02,860.860 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 12:48:02,864.864 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 12:48:04,909.909 INFO    ] ================================================
[2026-06-12 12:48:04,925.925 INFO    ] Launching Daemon at Fri Jun 12 12:48:04 IST 2026
[2026-06-12 12:48:04,936.936 INFO    ] ================================================
[2026-06-12 12:48:05,310.310 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 12:48:05
[2026-06-12 12:48:05,643.643 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 12:48:05,793.793 INFO    ] Initializing speech engine...
[2026-06-12 12:48:05,798.798 INFO    ] 2026-06-12 12:48:05
[2026-06-12 12:48:06,000.000 INFO    ] 2026-06-12 12:48:05
[2026-06-12 12:48:06,029.029 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 12:48:06,224.224 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 12:48:06,228.228 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 12:48:06,363.363 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 12:48:06,429.429 INFO    ] time= 12/06/2026 12:48:06
[2026-06-12 12:48:06,457.457 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 12:48:06,460.460 INFO    ] Checking for existing commands in stream...
[2026-06-12 12:48:06,573.573 INFO    ] No existing commands found in stream
[2026-06-12 12:48:11,583.583 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 12:48:11,586.586 INFO    ] Waiting 2.95 seconds before fallback handling...
[2026-06-12 12:48:14,890.890 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 12:48:14,892.892 INFO    ] Checking for system updates...
[2026-06-12 12:48:14,912.912 INFO    ] 200
[2026-06-12 12:48:14,914.914 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:48:14,947.947 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 12:48:14,948.948 INFO    ] No update needed
[2026-06-12 12:48:14,949.949 INFO    ] Checking for camera pi updates...
[2026-06-12 12:48:14,969.969 INFO    ] 200
[2026-06-12 12:48:14,970.970 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:48:14,993.993 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 12:48:15,136.136 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 12:48:15,138.138 INFO    ] No camera update needed
[2026-06-12 12:48:15,139.139 INFO    ] Script finished. Safe exiting...
[2026-06-12 12:48:15,140.140 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 12:48:15,143.143 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 12:48:15,146.146 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 12:48:17,186.186 INFO    ] ================================================
[2026-06-12 12:48:17,202.202 INFO    ] Launching Daemon at Fri Jun 12 12:48:17 IST 2026
[2026-06-12 12:48:17,213.213 INFO    ] ================================================
[2026-06-12 12:48:17,578.578 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 12:48:17
[2026-06-12 12:48:17,890.890 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 12:48:18,020.020 INFO    ] Initializing speech engine...
[2026-06-12 12:48:18,023.023 INFO    ] 2026-06-12 12:48:18
[2026-06-12 12:48:18,237.237 INFO    ] 2026-06-12 12:48:18
[2026-06-12 12:48:18,267.267 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 12:48:18,449.449 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 12:48:18,457.457 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 12:48:18,586.586 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 12:48:18,650.650 INFO    ] time= 12/06/2026 12:48:18
[2026-06-12 12:48:18,677.677 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 12:48:18,683.683 INFO    ] Checking for existing commands in stream...
[2026-06-12 12:48:18,749.749 INFO    ] No existing commands found in stream
[2026-06-12 12:48:23,758.758 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 12:48:23,761.761 INFO    ] Waiting 0.75 seconds before fallback handling...
[2026-06-12 12:48:24,899.899 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 12:48:24,901.901 INFO    ] Checking for system updates...
[2026-06-12 12:48:24,923.923 INFO    ] 200
[2026-06-12 12:48:24,924.924 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:48:24,957.957 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 12:48:24,959.959 INFO    ] No update needed
[2026-06-12 12:48:24,961.961 INFO    ] Checking for camera pi updates...
[2026-06-12 12:48:24,981.981 INFO    ] 200
[2026-06-12 12:48:24,982.982 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:48:25,009.009 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 12:48:25,046.046 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 12:48:25,048.048 INFO    ] No camera update needed
[2026-06-12 12:48:25,049.049 INFO    ] Script finished. Safe exiting...
[2026-06-12 12:48:25,051.051 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 12:48:25,054.054 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 12:48:25,057.057 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 12:48:27,096.096 INFO    ] ================================================
[2026-06-12 12:48:27,112.112 INFO    ] Launching Daemon at Fri Jun 12 12:48:27 IST 2026
[2026-06-12 12:48:27,123.123 INFO    ] ================================================
[2026-06-12 12:48:27,465.465 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 12:48:27
[2026-06-12 12:48:27,777.777 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 12:48:27,919.919 INFO    ] Initializing speech engine...
[2026-06-12 12:48:27,924.924 INFO    ] 2026-06-12 12:48:27
[2026-06-12 12:48:28,125.125 INFO    ] 2026-06-12 12:48:28
[2026-06-12 12:48:28,154.154 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 12:48:28,337.337 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 12:48:28,346.346 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 12:48:28,471.471 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 12:48:28,533.533 INFO    ] time= 12/06/2026 12:48:28
[2026-06-12 12:48:28,565.565 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 12:48:28,571.571 INFO    ] Checking for existing commands in stream...
[2026-06-12 12:48:28,661.661 INFO    ] No existing commands found in stream
[2026-06-12 12:48:33,670.670 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 12:48:33,673.673 INFO    ] Waiting 0.21 seconds before fallback handling...
[2026-06-12 12:48:34,242.242 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 12:48:34,244.244 INFO    ] Checking for system updates...
[2026-06-12 12:48:34,264.264 INFO    ] 200
[2026-06-12 12:48:34,265.265 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:48:34,296.296 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 12:48:34,297.297 INFO    ] No update needed
[2026-06-12 12:48:34,298.298 INFO    ] Checking for camera pi updates...
[2026-06-12 12:48:34,317.317 INFO    ] 200
[2026-06-12 12:48:34,319.319 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:48:34,344.344 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 12:48:34,383.383 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 12:48:34,385.385 INFO    ] No camera update needed
[2026-06-12 12:48:34,386.386 INFO    ] Script finished. Safe exiting...
[2026-06-12 12:48:34,387.387 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 12:48:34,390.390 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 12:48:34,393.393 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 12:48:36,433.433 INFO    ] ================================================
[2026-06-12 12:48:36,449.449 INFO    ] Launching Daemon at Fri Jun 12 12:48:36 IST 2026
[2026-06-12 12:48:36,461.461 INFO    ] ================================================
[2026-06-12 12:48:36,786.786 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 12:48:36
[2026-06-12 12:48:37,097.097 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 12:48:37,234.234 INFO    ] Initializing speech engine...
[2026-06-12 12:48:37,243.243 INFO    ] 2026-06-12 12:48:37
[2026-06-12 12:48:37,446.446 INFO    ] 2026-06-12 12:48:37
[2026-06-12 12:48:37,475.475 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 12:48:37,657.657 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 12:48:37,661.661 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 12:48:37,796.796 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 12:48:37,855.855 INFO    ] time= 12/06/2026 12:48:37
[2026-06-12 12:48:37,886.886 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 12:48:37,893.893 INFO    ] Checking for existing commands in stream...
[2026-06-12 12:48:37,960.960 INFO    ] No existing commands found in stream
[2026-06-12 12:48:42,974.974 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 12:48:42,976.976 INFO    ] Waiting 1.69 seconds before fallback handling...
[2026-06-12 12:48:45,051.051 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 12:48:45,053.053 INFO    ] Checking for system updates...
[2026-06-12 12:48:45,073.073 INFO    ] 200
[2026-06-12 12:48:45,075.075 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:48:45,105.105 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 12:48:45,106.106 INFO    ] No update needed
[2026-06-12 12:48:45,107.107 INFO    ] Checking for camera pi updates...
[2026-06-12 12:48:45,127.127 INFO    ] 200
[2026-06-12 12:48:45,128.128 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:48:45,151.151 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 12:48:45,187.187 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 12:48:45,188.188 INFO    ] No camera update needed
[2026-06-12 12:48:45,189.189 INFO    ] Script finished. Safe exiting...
[2026-06-12 12:48:45,191.191 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 12:48:45,193.193 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 12:48:45,196.196 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 12:48:47,235.235 INFO    ] ================================================
[2026-06-12 12:48:47,251.251 INFO    ] Launching Daemon at Fri Jun 12 12:48:47 IST 2026
[2026-06-12 12:48:47,262.262 INFO    ] ================================================
[2026-06-12 12:48:47,612.612 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 12:48:47
[2026-06-12 12:48:47,923.923 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 12:48:48,054.054 INFO    ] Initializing speech engine...
[2026-06-12 12:48:48,070.070 INFO    ] 2026-06-12 12:48:48
[2026-06-12 12:48:48,286.286 INFO    ] 2026-06-12 12:48:48
[2026-06-12 12:48:48,315.315 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 12:48:48,509.509 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 12:48:48,519.519 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 12:48:48,648.648 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 12:48:48,720.720 INFO    ] time= 12/06/2026 12:48:48
[2026-06-12 12:48:48,752.752 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 12:48:48,759.759 INFO    ] Checking for existing commands in stream...
[2026-06-12 12:48:48,829.829 INFO    ] No existing commands found in stream
[2026-06-12 12:48:53,843.843 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 12:48:53,846.846 INFO    ] Waiting 1.46 seconds before fallback handling...
[2026-06-12 12:48:55,676.676 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 12:48:55,678.678 INFO    ] Checking for system updates...
[2026-06-12 12:48:55,698.698 INFO    ] 200
[2026-06-12 12:48:55,700.700 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:48:55,730.730 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 12:48:55,731.731 INFO    ] No update needed
[2026-06-12 12:48:55,733.733 INFO    ] Checking for camera pi updates...
[2026-06-12 12:48:55,752.752 INFO    ] 200
[2026-06-12 12:48:55,753.753 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:48:55,777.777 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 12:48:55,817.817 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 12:48:55,818.818 INFO    ] No camera update needed
[2026-06-12 12:48:55,819.819 INFO    ] Script finished. Safe exiting...
[2026-06-12 12:48:55,821.821 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 12:48:55,824.824 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 12:48:55,826.826 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 12:48:57,865.865 INFO    ] ================================================
[2026-06-12 12:48:57,881.881 INFO    ] Launching Daemon at Fri Jun 12 12:48:57 IST 2026
[2026-06-12 12:48:57,892.892 INFO    ] ================================================
[2026-06-12 12:48:58,224.224 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 12:48:58
[2026-06-12 12:48:58,538.538 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 12:48:58,690.690 INFO    ] Initializing speech engine...
[2026-06-12 12:48:58,696.696 INFO    ] 2026-06-12 12:48:58
[2026-06-12 12:48:58,901.901 INFO    ] 2026-06-12 12:48:58
[2026-06-12 12:48:58,930.930 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 12:48:59,113.113 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 12:48:59,123.123 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 12:48:59,248.248 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 12:48:59,305.305 INFO    ] time= 12/06/2026 12:48:59
[2026-06-12 12:48:59,342.342 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 12:48:59,344.344 INFO    ] Checking for existing commands in stream...
[2026-06-12 12:48:59,438.438 INFO    ] No existing commands found in stream
[2026-06-12 12:49:04,447.447 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 12:49:04,456.456 INFO    ] Waiting 1.91 seconds before fallback handling...
[2026-06-12 12:49:06,711.711 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 12:49:06,713.713 INFO    ] Checking for system updates...
[2026-06-12 12:49:06,734.734 INFO    ] 200
[2026-06-12 12:49:06,735.735 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:49:06,767.767 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 12:49:06,768.768 INFO    ] No update needed
[2026-06-12 12:49:06,770.770 INFO    ] Checking for camera pi updates...
[2026-06-12 12:49:06,793.793 INFO    ] 200
[2026-06-12 12:49:06,794.794 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:49:06,821.821 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 12:49:06,862.862 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 12:49:06,863.863 INFO    ] No camera update needed
[2026-06-12 12:49:06,865.865 INFO    ] Script finished. Safe exiting...
[2026-06-12 12:49:06,866.866 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 12:49:06,869.869 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 12:49:06,872.872 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 12:49:08,911.911 INFO    ] ================================================
[2026-06-12 12:49:08,927.927 INFO    ] Launching Daemon at Fri Jun 12 12:49:08 IST 2026
[2026-06-12 12:49:08,938.938 INFO    ] ================================================
[2026-06-12 12:49:09,273.273 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 12:49:09
[2026-06-12 12:49:09,584.584 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 12:49:09,726.726 INFO    ] Initializing speech engine...
[2026-06-12 12:49:09,731.731 INFO    ] 2026-06-12 12:49:09
[2026-06-12 12:49:09,938.938 INFO    ] 2026-06-12 12:49:09
[2026-06-12 12:49:09,966.966 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 12:49:10,153.153 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 12:49:10,156.156 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 12:49:10,287.287 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 12:49:10,348.348 INFO    ] time= 12/06/2026 12:49:10
[2026-06-12 12:49:10,388.388 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 12:49:10,390.390 INFO    ] Checking for existing commands in stream...
[2026-06-12 12:49:10,462.462 INFO    ] No existing commands found in stream
[2026-06-12 12:49:15,476.476 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 12:49:15,479.479 INFO    ] Waiting 2.20 seconds before fallback handling...
[2026-06-12 12:49:18,034.034 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 12:49:18,035.035 INFO    ] Checking for system updates...
[2026-06-12 12:49:18,055.055 INFO    ] 200
[2026-06-12 12:49:18,057.057 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:49:18,087.087 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 12:49:18,088.088 INFO    ] No update needed
[2026-06-12 12:49:18,090.090 INFO    ] Checking for camera pi updates...
[2026-06-12 12:49:18,109.109 INFO    ] 200
[2026-06-12 12:49:18,111.111 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:49:18,134.134 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 12:49:18,171.171 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 12:49:18,172.172 INFO    ] No camera update needed
[2026-06-12 12:49:18,173.173 INFO    ] Script finished. Safe exiting...
[2026-06-12 12:49:18,174.174 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 12:49:18,177.177 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 12:49:18,180.180 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 12:49:20,218.218 INFO    ] ================================================
[2026-06-12 12:49:20,235.235 INFO    ] Launching Daemon at Fri Jun 12 12:49:20 IST 2026
[2026-06-12 12:49:20,246.246 INFO    ] ================================================
[2026-06-12 12:49:20,604.604 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 12:49:20
[2026-06-12 12:49:20,938.938 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 12:49:21,092.092 INFO    ] Initializing speech engine...
[2026-06-12 12:49:21,095.095 INFO    ] 2026-06-12 12:49:21
[2026-06-12 12:49:21,302.302 INFO    ] 2026-06-12 12:49:21
[2026-06-12 12:49:21,332.332 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 12:49:21,485.485 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 12:49:21,522.522 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 12:49:21,660.660 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 12:49:21,728.728 INFO    ] time= 12/06/2026 12:49:21
[2026-06-12 12:49:21,770.770 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 12:49:21,782.782 INFO    ] Checking for existing commands in stream...
[2026-06-12 12:49:21,877.877 INFO    ] No existing commands found in stream
[2026-06-12 12:49:26,892.892 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 12:49:26,895.895 INFO    ] Waiting 2.82 seconds before fallback handling...
[2026-06-12 12:49:30,092.092 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 12:49:30,093.093 INFO    ] Checking for system updates...
[2026-06-12 12:49:30,114.114 INFO    ] 200
[2026-06-12 12:49:30,116.116 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:49:30,146.146 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 12:49:30,147.147 INFO    ] No update needed
[2026-06-12 12:49:30,149.149 INFO    ] Checking for camera pi updates...
[2026-06-12 12:49:30,169.169 INFO    ] 200
[2026-06-12 12:49:30,171.171 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:49:30,195.195 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 12:49:30,232.232 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 12:49:30,234.234 INFO    ] No camera update needed
[2026-06-12 12:49:30,235.235 INFO    ] Script finished. Safe exiting...
[2026-06-12 12:49:30,236.236 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 12:49:30,239.239 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 12:49:30,242.242 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 12:49:32,280.280 INFO    ] ================================================
[2026-06-12 12:49:32,298.298 INFO    ] Launching Daemon at Fri Jun 12 12:49:32 IST 2026
[2026-06-12 12:49:32,309.309 INFO    ] ================================================
[2026-06-12 12:49:32,667.667 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 12:49:32
[2026-06-12 12:49:32,978.978 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 12:49:33,115.115 INFO    ] Initializing speech engine...
[2026-06-12 12:49:33,125.125 INFO    ] 2026-06-12 12:49:33
[2026-06-12 12:49:33,327.327 INFO    ] 2026-06-12 12:49:33
[2026-06-12 12:49:33,356.356 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 12:49:33,538.538 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 12:49:33,547.547 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 12:49:33,668.668 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 12:49:33,734.734 INFO    ] time= 12/06/2026 12:49:33
[2026-06-12 12:49:33,765.765 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 12:49:33,771.771 INFO    ] Checking for existing commands in stream...
[2026-06-12 12:49:33,837.837 INFO    ] No existing commands found in stream
[2026-06-12 12:49:38,842.842 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 12:49:38,845.845 INFO    ] Waiting 2.79 seconds before fallback handling...
[2026-06-12 12:49:41,998.998 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 12:49:41,999.999 INFO    ] Checking for system updates...
[2026-06-12 12:49:42,020.020 INFO    ] 200
[2026-06-12 12:49:42,022.022 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:49:42,052.052 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 12:49:42,053.053 INFO    ] No update needed
[2026-06-12 12:49:42,055.055 INFO    ] Checking for camera pi updates...
[2026-06-12 12:49:42,075.075 INFO    ] 200
[2026-06-12 12:49:42,077.077 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:49:42,101.101 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 12:49:42,138.138 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 12:49:42,139.139 INFO    ] No camera update needed
[2026-06-12 12:49:42,141.141 INFO    ] Script finished. Safe exiting...
[2026-06-12 12:49:42,142.142 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 12:49:42,145.145 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 12:49:42,148.148 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 12:49:44,188.188 INFO    ] ================================================
[2026-06-12 12:49:44,204.204 INFO    ] Launching Daemon at Fri Jun 12 12:49:44 IST 2026
[2026-06-12 12:49:44,216.216 INFO    ] ================================================
[2026-06-12 12:49:44,581.581 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 12:49:44
[2026-06-12 12:49:44,919.919 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 12:49:45,094.094 INFO    ] Initializing speech engine...
[2026-06-12 12:49:45,099.099 INFO    ] 2026-06-12 12:49:45
[2026-06-12 12:49:45,315.315 INFO    ] 2026-06-12 12:49:45
[2026-06-12 12:49:45,346.346 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 12:49:45,448.448 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 12:49:45,484.484 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 12:49:45,586.586 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 12:49:45,628.628 INFO    ] time= 12/06/2026 12:49:45
[2026-06-12 12:49:45,678.678 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 12:49:45,715.715 INFO    ] Checking for existing commands in stream...
[2026-06-12 12:49:45,812.812 INFO    ] No existing commands found in stream
[2026-06-12 12:49:50,821.821 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 12:49:50,824.824 INFO    ] Waiting 0.13 seconds before fallback handling...
[2026-06-12 12:49:51,312.312 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 12:49:51,314.314 INFO    ] Checking for system updates...
[2026-06-12 12:49:51,335.335 INFO    ] 200
[2026-06-12 12:49:51,336.336 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:49:51,367.367 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 12:49:51,368.368 INFO    ] No update needed
[2026-06-12 12:49:51,369.369 INFO    ] Checking for camera pi updates...
[2026-06-12 12:49:51,390.390 INFO    ] 200
[2026-06-12 12:49:51,391.391 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:49:51,417.417 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 12:49:51,452.452 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 12:49:51,454.454 INFO    ] No camera update needed
[2026-06-12 12:49:51,455.455 INFO    ] Script finished. Safe exiting...
[2026-06-12 12:49:51,456.456 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 12:49:51,459.459 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 12:49:51,462.462 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 12:49:53,501.501 INFO    ] ================================================
[2026-06-12 12:49:53,517.517 INFO    ] Launching Daemon at Fri Jun 12 12:49:53 IST 2026
[2026-06-12 12:49:53,529.529 INFO    ] ================================================
[2026-06-12 12:49:53,892.892 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 12:49:53
[2026-06-12 12:49:54,204.204 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 12:49:54,335.335 INFO    ] Initializing speech engine...
[2026-06-12 12:49:54,347.347 INFO    ] 2026-06-12 12:49:54
[2026-06-12 12:49:54,552.552 INFO    ] 2026-06-12 12:49:54
[2026-06-12 12:49:54,582.582 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 12:49:54,765.765 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 12:49:54,774.774 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 12:49:54,903.903 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 12:49:54,962.962 INFO    ] time= 12/06/2026 12:49:54
[2026-06-12 12:49:54,995.995 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 12:49:55,001.001 INFO    ] Checking for existing commands in stream...
[2026-06-12 12:49:55,069.069 INFO    ] No existing commands found in stream
[2026-06-12 12:50:00,083.083 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 12:50:00,085.085 INFO    ] Waiting 3.30 seconds before fallback handling...
[2026-06-12 12:50:07,677.677 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 12:50:07,679.679 INFO    ] Checking for system updates...
[2026-06-12 12:50:07,716.716 INFO    ] 200
[2026-06-12 12:50:07,719.719 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:50:07,773.773 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 12:50:07,775.775 INFO    ] No update needed
[2026-06-12 12:50:07,778.778 INFO    ] Checking for camera pi updates...
[2026-06-12 12:50:07,811.811 INFO    ] 200
[2026-06-12 12:50:07,814.814 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:50:07,854.854 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 12:50:07,896.896 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 12:50:07,897.897 INFO    ] No camera update needed
[2026-06-12 12:50:07,898.898 INFO    ] Script finished. Safe exiting...
[2026-06-12 12:50:07,899.899 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 12:50:07,902.902 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 12:50:07,905.905 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 12:50:09,945.945 INFO    ] ================================================
[2026-06-12 12:50:09,962.962 INFO    ] Launching Daemon at Fri Jun 12 12:50:09 IST 2026
[2026-06-12 12:50:09,974.974 INFO    ] ================================================
[2026-06-12 12:50:10,328.328 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 12:50:10
[2026-06-12 12:50:10,645.645 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 12:50:10,790.790 INFO    ] Initializing speech engine...
[2026-06-12 12:50:10,795.795 INFO    ] 2026-06-12 12:50:10
[2026-06-12 12:50:11,000.000 INFO    ] 2026-06-12 12:50:10
[2026-06-12 12:50:11,028.028 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 12:50:11,214.214 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 12:50:11,223.223 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 12:50:11,353.353 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 12:50:11,421.421 INFO    ] time= 12/06/2026 12:50:11
[2026-06-12 12:50:11,444.444 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 12:50:11,451.451 INFO    ] Checking for existing commands in stream...
[2026-06-12 12:50:11,518.518 INFO    ] No existing commands found in stream
[2026-06-12 12:50:16,547.547 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 12:50:16,550.550 INFO    ] Waiting 0.70 seconds before fallback handling...
[2026-06-12 12:50:17,606.606 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 12:50:17,607.607 INFO    ] Checking for system updates...
[2026-06-12 12:50:17,629.629 INFO    ] 200
[2026-06-12 12:50:17,630.630 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:50:17,660.660 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 12:50:17,662.662 INFO    ] No update needed
[2026-06-12 12:50:17,663.663 INFO    ] Checking for camera pi updates...
[2026-06-12 12:50:17,683.683 INFO    ] 200
[2026-06-12 12:50:17,684.684 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:50:17,710.710 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 12:50:17,852.852 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 12:50:17,853.853 INFO    ] No camera update needed
[2026-06-12 12:50:17,854.854 INFO    ] Script finished. Safe exiting...
[2026-06-12 12:50:17,856.856 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 12:50:17,859.859 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 12:50:17,861.861 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 12:50:19,900.900 INFO    ] ================================================
[2026-06-12 12:50:19,915.915 INFO    ] Launching Daemon at Fri Jun 12 12:50:19 IST 2026
[2026-06-12 12:50:19,927.927 INFO    ] ================================================
[2026-06-12 12:50:20,276.276 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 12:50:20
[2026-06-12 12:50:20,586.586 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 12:50:20,727.727 INFO    ] Initializing speech engine...
[2026-06-12 12:50:20,732.732 INFO    ] 2026-06-12 12:50:20
[2026-06-12 12:50:20,936.936 INFO    ] 2026-06-12 12:50:20
[2026-06-12 12:50:20,964.964 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 12:50:21,149.149 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 12:50:21,157.157 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 12:50:21,286.286 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 12:50:21,350.350 INFO    ] time= 12/06/2026 12:50:21
[2026-06-12 12:50:21,377.377 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 12:50:21,383.383 INFO    ] Checking for existing commands in stream...
[2026-06-12 12:50:21,450.450 INFO    ] No existing commands found in stream
[2026-06-12 12:50:26,459.459 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 12:50:26,462.462 INFO    ] Waiting 1.41 seconds before fallback handling...
[2026-06-12 12:50:28,233.233 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 12:50:28,235.235 INFO    ] Checking for system updates...
[2026-06-12 12:50:28,255.255 INFO    ] 200
[2026-06-12 12:50:28,256.256 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:50:28,291.291 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 12:50:28,292.292 INFO    ] No update needed
[2026-06-12 12:50:28,293.293 INFO    ] Checking for camera pi updates...
[2026-06-12 12:50:28,314.314 INFO    ] 200
[2026-06-12 12:50:28,315.315 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:50:28,339.339 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 12:50:28,378.378 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 12:50:28,379.379 INFO    ] No camera update needed
[2026-06-12 12:50:28,381.381 INFO    ] Script finished. Safe exiting...
[2026-06-12 12:50:28,382.382 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 12:50:28,385.385 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 12:50:28,388.388 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 12:50:30,427.427 INFO    ] ================================================
[2026-06-12 12:50:30,443.443 INFO    ] Launching Daemon at Fri Jun 12 12:50:30 IST 2026
[2026-06-12 12:50:30,455.455 INFO    ] ================================================
[2026-06-12 12:50:30,808.808 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 12:50:30
[2026-06-12 12:50:31,136.136 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 12:50:31,285.285 INFO    ] Initializing speech engine...
[2026-06-12 12:50:31,290.290 INFO    ] 2026-06-12 12:50:31
[2026-06-12 12:50:31,503.503 INFO    ] 2026-06-12 12:50:31
[2026-06-12 12:50:31,537.537 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 12:50:31,732.732 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 12:50:31,736.736 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 12:50:31,903.903 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 12:50:31,980.980 INFO    ] time= 12/06/2026 12:50:31
[2026-06-12 12:50:32,030.030 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 12:50:32,054.054 INFO    ] Checking for existing commands in stream...
[2026-06-12 12:50:32,119.119 INFO    ] No existing commands found in stream
[2026-06-12 12:50:37,129.129 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 12:50:37,132.132 INFO    ] Waiting 0.18 seconds before fallback handling...
[2026-06-12 12:50:37,655.655 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 12:50:37,656.656 INFO    ] Checking for system updates...
[2026-06-12 12:50:37,677.677 INFO    ] 200
[2026-06-12 12:50:37,678.678 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:50:37,711.711 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 12:50:37,712.712 INFO    ] No update needed
[2026-06-12 12:50:37,713.713 INFO    ] Checking for camera pi updates...
[2026-06-12 12:50:37,735.735 INFO    ] 200
[2026-06-12 12:50:37,736.736 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:50:37,763.763 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 12:50:37,799.799 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 12:50:37,801.801 INFO    ] No camera update needed
[2026-06-12 12:50:37,802.802 INFO    ] Script finished. Safe exiting...
[2026-06-12 12:50:37,803.803 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 12:50:37,806.806 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 12:50:37,809.809 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 12:50:39,848.848 INFO    ] ================================================
[2026-06-12 12:50:39,863.863 INFO    ] Launching Daemon at Fri Jun 12 12:50:39 IST 2026
[2026-06-12 12:50:39,874.874 INFO    ] ================================================
[2026-06-12 12:50:40,218.218 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 12:50:40
[2026-06-12 12:50:40,530.530 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 12:50:40,661.661 INFO    ] Initializing speech engine...
[2026-06-12 12:50:40,669.669 INFO    ] 2026-06-12 12:50:40
[2026-06-12 12:50:40,881.881 INFO    ] 2026-06-12 12:50:40
[2026-06-12 12:50:40,909.909 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 12:50:41,093.093 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 12:50:41,096.096 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 12:50:41,231.231 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 12:50:41,298.298 INFO    ] time= 12/06/2026 12:50:41
[2026-06-12 12:50:41,323.323 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 12:50:41,329.329 INFO    ] Checking for existing commands in stream...
[2026-06-12 12:50:41,395.395 INFO    ] No existing commands found in stream
[2026-06-12 12:50:46,404.404 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 12:50:46,406.406 INFO    ] Waiting 1.22 seconds before fallback handling...
[2026-06-12 12:50:48,030.030 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 12:50:48,032.032 INFO    ] Checking for system updates...
[2026-06-12 12:50:48,052.052 INFO    ] 200
[2026-06-12 12:50:48,053.053 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:50:48,090.090 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 12:50:48,091.091 INFO    ] No update needed
[2026-06-12 12:50:48,092.092 INFO    ] Checking for camera pi updates...
[2026-06-12 12:50:48,113.113 INFO    ] 200
[2026-06-12 12:50:48,114.114 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:50:48,137.137 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 12:50:48,169.169 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 12:50:48,171.171 INFO    ] No camera update needed
[2026-06-12 12:50:48,172.172 INFO    ] Script finished. Safe exiting...
[2026-06-12 12:50:48,173.173 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 12:50:48,176.176 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 12:50:48,179.179 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 12:50:50,218.218 INFO    ] ================================================
[2026-06-12 12:50:50,239.239 INFO    ] Launching Daemon at Fri Jun 12 12:50:50 IST 2026
[2026-06-12 12:50:50,251.251 INFO    ] ================================================
[2026-06-12 12:50:50,593.593 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 12:50:50
[2026-06-12 12:50:50,905.905 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 12:50:51,036.036 INFO    ] Initializing speech engine...
[2026-06-12 12:50:51,041.041 INFO    ] 2026-06-12 12:50:51
[2026-06-12 12:50:51,266.266 INFO    ] 2026-06-12 12:50:51
[2026-06-12 12:50:51,296.296 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 12:50:51,490.490 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 12:50:51,494.494 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 12:50:51,638.638 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 12:50:51,703.703 INFO    ] time= 12/06/2026 12:50:51
[2026-06-12 12:50:51,731.731 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 12:50:51,737.737 INFO    ] Checking for existing commands in stream...
[2026-06-12 12:50:51,811.811 INFO    ] No existing commands found in stream
[2026-06-12 12:50:56,822.822 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 12:50:56,825.825 INFO    ] Waiting 2.57 seconds before fallback handling...
[2026-06-12 12:50:59,764.764 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 12:50:59,766.766 INFO    ] Checking for system updates...
[2026-06-12 12:50:59,786.786 INFO    ] 200
[2026-06-12 12:50:59,788.788 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:50:59,818.818 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 12:50:59,819.819 INFO    ] No update needed
[2026-06-12 12:50:59,820.820 INFO    ] Checking for camera pi updates...
[2026-06-12 12:50:59,841.841 INFO    ] 200
[2026-06-12 12:50:59,842.842 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:50:59,866.866 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 12:50:59,901.901 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 12:50:59,902.902 INFO    ] No camera update needed
[2026-06-12 12:50:59,903.903 INFO    ] Script finished. Safe exiting...
[2026-06-12 12:50:59,905.905 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 12:50:59,907.907 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 12:50:59,910.910 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 12:51:01,948.948 INFO    ] ================================================
[2026-06-12 12:51:01,985.985 INFO    ] Launching Daemon at Fri Jun 12 12:51:01 IST 2026
[2026-06-12 12:51:02,997.997 INFO    ] ================================================
[2026-06-12 12:51:02,387.387 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 12:51:02
[2026-06-12 12:51:02,759.759 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 12:51:02,903.903 INFO    ] Initializing speech engine...
[2026-06-12 12:51:02,906.906 INFO    ] 2026-06-12 12:51:02
[2026-06-12 12:51:03,104.104 INFO    ] 2026-06-12 12:51:03
[2026-06-12 12:51:03,147.147 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 12:51:03,295.295 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 12:51:03,334.334 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 12:51:03,492.492 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 12:51:03,549.549 INFO    ] time= 12/06/2026 12:51:03
[2026-06-12 12:51:03,589.589 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 12:51:03,595.595 INFO    ] Checking for existing commands in stream...
[2026-06-12 12:51:03,691.691 INFO    ] No existing commands found in stream
[2026-06-12 12:51:08,700.700 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 12:51:08,703.703 INFO    ] Waiting 1.09 seconds before fallback handling...
[2026-06-12 12:51:10,205.205 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 12:51:10,206.206 INFO    ] Checking for system updates...
[2026-06-12 12:51:10,227.227 INFO    ] 200
[2026-06-12 12:51:10,228.228 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:51:10,259.259 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 12:51:10,260.260 INFO    ] No update needed
[2026-06-12 12:51:10,262.262 INFO    ] Checking for camera pi updates...
[2026-06-12 12:51:10,283.283 INFO    ] 200
[2026-06-12 12:51:10,284.284 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:51:10,317.317 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 12:51:10,354.354 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 12:51:10,355.355 INFO    ] No camera update needed
[2026-06-12 12:51:10,357.357 INFO    ] Script finished. Safe exiting...
[2026-06-12 12:51:10,358.358 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 12:51:10,362.362 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 12:51:10,365.365 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 12:51:12,404.404 INFO    ] ================================================
[2026-06-12 12:51:12,419.419 INFO    ] Launching Daemon at Fri Jun 12 12:51:12 IST 2026
[2026-06-12 12:51:12,430.430 INFO    ] ================================================
[2026-06-12 12:51:12,784.784 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 12:51:12
[2026-06-12 12:51:13,118.118 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 12:51:13,267.267 INFO    ] Initializing speech engine...
[2026-06-12 12:51:13,272.272 INFO    ] 2026-06-12 12:51:13
[2026-06-12 12:51:13,479.479 INFO    ] 2026-06-12 12:51:13
[2026-06-12 12:51:13,508.508 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 12:51:13,692.692 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 12:51:13,702.702 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 12:51:13,838.838 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 12:51:13,900.900 INFO    ] time= 12/06/2026 12:51:13
[2026-06-12 12:51:13,924.924 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 12:51:13,931.931 INFO    ] Checking for existing commands in stream...
[2026-06-12 12:51:14,020.020 INFO    ] No existing commands found in stream
[2026-06-12 12:51:19,035.035 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 12:51:19,038.038 INFO    ] Waiting 1.39 seconds before fallback handling...
[2026-06-12 12:51:20,814.814 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 12:51:20,816.816 INFO    ] Checking for system updates...
[2026-06-12 12:51:20,837.837 INFO    ] 200
[2026-06-12 12:51:20,839.839 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:51:20,872.872 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 12:51:20,873.873 INFO    ] No update needed
[2026-06-12 12:51:20,874.874 INFO    ] Checking for camera pi updates...
[2026-06-12 12:51:20,893.893 INFO    ] 200
[2026-06-12 12:51:20,895.895 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:51:20,918.918 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 12:51:20,965.965 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 12:51:20,967.967 INFO    ] No camera update needed
[2026-06-12 12:51:20,968.968 INFO    ] Script finished. Safe exiting...
[2026-06-12 12:51:20,969.969 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 12:51:20,972.972 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 12:51:20,975.975 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 12:51:23,014.014 INFO    ] ================================================
[2026-06-12 12:51:23,030.030 INFO    ] Launching Daemon at Fri Jun 12 12:51:23 IST 2026
[2026-06-12 12:51:23,041.041 INFO    ] ================================================
[2026-06-12 12:51:23,402.402 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 12:51:23
[2026-06-12 12:51:23,747.747 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 12:51:23,902.902 INFO    ] Initializing speech engine...
[2026-06-12 12:51:23,907.907 INFO    ] 2026-06-12 12:51:23
[2026-06-12 12:51:24,112.112 INFO    ] 2026-06-12 12:51:24
[2026-06-12 12:51:24,141.141 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 12:51:24,343.343 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 12:51:24,347.347 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 12:51:24,496.496 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 12:51:24,560.560 INFO    ] time= 12/06/2026 12:51:24
[2026-06-12 12:51:24,595.595 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 12:51:24,597.597 INFO    ] Checking for existing commands in stream...
[2026-06-12 12:51:24,699.699 INFO    ] No existing commands found in stream
[2026-06-12 12:51:29,708.708 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 12:51:29,711.711 INFO    ] Waiting 2.32 seconds before fallback handling...
[2026-06-12 12:51:32,764.764 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 12:51:32,769.769 INFO    ] Checking for system updates...
[2026-06-12 12:51:32,806.806 INFO    ] 200
[2026-06-12 12:51:32,809.809 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:51:32,865.865 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 12:51:32,867.867 INFO    ] No update needed
[2026-06-12 12:51:32,868.868 INFO    ] Checking for camera pi updates...
[2026-06-12 12:51:32,890.890 INFO    ] 200
[2026-06-12 12:51:32,892.892 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:51:32,915.915 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 12:51:32,937.937 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 12:51:32,939.939 INFO    ] No camera update needed
[2026-06-12 12:51:32,940.940 INFO    ] Script finished. Safe exiting...
[2026-06-12 12:51:32,942.942 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 12:51:32,945.945 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 12:51:32,948.948 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 12:51:34,988.988 INFO    ] ================================================
[2026-06-12 12:51:35,003.003 INFO    ] Launching Daemon at Fri Jun 12 12:51:34 IST 2026
[2026-06-12 12:51:35,014.014 INFO    ] ================================================
[2026-06-12 12:51:35,337.337 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 12:51:35
[2026-06-12 12:51:35,651.651 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 12:51:36,507.507 INFO    ] Initializing speech engine...
[2026-06-12 12:51:36,536.536 INFO    ] 2026-06-12 12:51:36
[2026-06-12 12:51:36,716.716 INFO    ] 2026-06-12 12:51:36
[2026-06-12 12:51:36,728.728 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 12:51:36,882.882 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 12:51:36,910.910 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 12:51:37,018.018 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 12:51:38,000.000 INFO    ] time= 12/06/2026 12:51:37
[2026-06-12 12:51:38,001.001 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 12:51:38,003.003 INFO    ] Checking for existing commands in stream...
[2026-06-12 12:51:38,077.077 INFO    ] No existing commands found in stream
[2026-06-12 12:51:43,085.085 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 12:51:43,088.088 INFO    ] Waiting 1.68 seconds before fallback handling...
[2026-06-12 12:51:45,104.104 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 12:51:45,105.105 INFO    ] Checking for system updates...
[2026-06-12 12:51:45,128.128 INFO    ] 200
[2026-06-12 12:51:45,129.129 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:51:45,159.159 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 12:51:45,161.161 INFO    ] No update needed
[2026-06-12 12:51:45,162.162 INFO    ] Checking for camera pi updates...
[2026-06-12 12:51:45,183.183 INFO    ] 200
[2026-06-12 12:51:45,184.184 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:51:45,207.207 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 12:51:45,244.244 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 12:51:45,245.245 INFO    ] No camera update needed
[2026-06-12 12:51:45,247.247 INFO    ] Script finished. Safe exiting...
[2026-06-12 12:51:45,248.248 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 12:51:45,251.251 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 12:51:45,254.254 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 12:51:47,292.292 INFO    ] ================================================
[2026-06-12 12:51:47,307.307 INFO    ] Launching Daemon at Fri Jun 12 12:51:47 IST 2026
[2026-06-12 12:51:47,318.318 INFO    ] ================================================
[2026-06-12 12:51:47,666.666 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 12:51:47
[2026-06-12 12:51:47,977.977 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 12:51:48,119.119 INFO    ] Initializing speech engine...
[2026-06-12 12:51:48,125.125 INFO    ] 2026-06-12 12:51:48
[2026-06-12 12:51:48,331.331 INFO    ] 2026-06-12 12:51:48
[2026-06-12 12:51:48,359.359 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 12:51:48,545.545 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 12:51:48,549.549 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 12:51:48,687.687 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 12:51:48,755.755 INFO    ] time= 12/06/2026 12:51:48
[2026-06-12 12:51:48,779.779 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 12:51:48,786.786 INFO    ] Checking for existing commands in stream...
[2026-06-12 12:51:48,854.854 INFO    ] No existing commands found in stream
[2026-06-12 12:51:53,863.863 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 12:51:53,865.865 INFO    ] Waiting 1.83 seconds before fallback handling...
[2026-06-12 12:51:56,061.061 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 12:51:56,063.063 INFO    ] Checking for system updates...
[2026-06-12 12:51:56,085.085 INFO    ] 200
[2026-06-12 12:51:56,086.086 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:51:56,122.122 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 12:51:56,123.123 INFO    ] No update needed
[2026-06-12 12:51:56,125.125 INFO    ] Checking for camera pi updates...
[2026-06-12 12:51:56,147.147 INFO    ] 200
[2026-06-12 12:51:56,148.148 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:51:56,172.172 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 12:51:56,209.209 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 12:51:56,211.211 INFO    ] No camera update needed
[2026-06-12 12:51:56,212.212 INFO    ] Script finished. Safe exiting...
[2026-06-12 12:51:56,213.213 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 12:51:56,216.216 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 12:51:56,220.220 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 12:51:58,260.260 INFO    ] ================================================
[2026-06-12 12:51:58,275.275 INFO    ] Launching Daemon at Fri Jun 12 12:51:58 IST 2026
[2026-06-12 12:51:58,286.286 INFO    ] ================================================
[2026-06-12 12:51:58,637.637 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 12:51:58
[2026-06-12 12:51:58,964.964 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 12:51:59,119.119 INFO    ] Initializing speech engine...
[2026-06-12 12:51:59,124.124 INFO    ] 2026-06-12 12:51:59
[2026-06-12 12:51:59,333.333 INFO    ] 2026-06-12 12:51:59
[2026-06-12 12:51:59,362.362 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 12:51:59,548.548 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 12:51:59,558.558 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 12:51:59,699.699 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 12:51:59,757.757 INFO    ] time= 12/06/2026 12:51:59
[2026-06-12 12:51:59,780.780 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 12:51:59,787.787 INFO    ] Checking for existing commands in stream...
[2026-06-12 12:51:59,854.854 INFO    ] No existing commands found in stream
[2026-06-12 12:52:04,863.863 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 12:52:04,867.867 INFO    ] Waiting 2.53 seconds before fallback handling...
[2026-06-12 12:52:07,787.787 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 12:52:07,788.788 INFO    ] Checking for system updates...
[2026-06-12 12:52:07,809.809 INFO    ] 200
[2026-06-12 12:52:07,811.811 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:52:07,841.841 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 12:52:07,843.843 INFO    ] No update needed
[2026-06-12 12:52:07,844.844 INFO    ] Checking for camera pi updates...
[2026-06-12 12:52:07,865.865 INFO    ] 200
[2026-06-12 12:52:07,866.866 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:52:07,892.892 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 12:52:07,928.928 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 12:52:07,929.929 INFO    ] No camera update needed
[2026-06-12 12:52:07,931.931 INFO    ] Script finished. Safe exiting...
[2026-06-12 12:52:07,932.932 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 12:52:07,935.935 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 12:52:07,937.937 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 12:52:09,976.976 INFO    ] ================================================
[2026-06-12 12:52:09,991.991 INFO    ] Launching Daemon at Fri Jun 12 12:52:09 IST 2026
[2026-06-12 12:52:10,002.002 INFO    ] ================================================
[2026-06-12 12:52:10,342.342 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 12:52:10
[2026-06-12 12:52:10,658.658 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 12:52:10,803.803 INFO    ] Initializing speech engine...
[2026-06-12 12:52:10,808.808 INFO    ] 2026-06-12 12:52:10
[2026-06-12 12:52:11,012.012 INFO    ] 2026-06-12 12:52:10
[2026-06-12 12:52:11,041.041 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 12:52:11,226.226 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 12:52:11,230.230 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 12:52:11,365.365 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 12:52:11,424.424 INFO    ] time= 12/06/2026 12:52:11
[2026-06-12 12:52:11,458.458 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 12:52:11,464.464 INFO    ] Checking for existing commands in stream...
[2026-06-12 12:52:11,533.533 INFO    ] No existing commands found in stream
[2026-06-12 12:52:16,542.542 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 12:52:16,545.545 INFO    ] Waiting 3.13 seconds before fallback handling...
[2026-06-12 12:52:20,025.025 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 12:52:20,027.027 INFO    ] Checking for system updates...
[2026-06-12 12:52:20,047.047 INFO    ] 200
[2026-06-12 12:52:20,049.049 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:52:20,117.117 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 12:52:20,119.119 INFO    ] No update needed
[2026-06-12 12:52:20,120.120 INFO    ] Checking for camera pi updates...
[2026-06-12 12:52:20,141.141 INFO    ] 200
[2026-06-12 12:52:20,143.143 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:52:20,167.167 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 12:52:20,305.305 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 12:52:20,306.306 INFO    ] No camera update needed
[2026-06-12 12:52:20,307.307 INFO    ] Script finished. Safe exiting...
[2026-06-12 12:52:20,309.309 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 12:52:20,312.312 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 12:52:20,315.315 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 12:52:22,352.352 INFO    ] ================================================
[2026-06-12 12:52:22,368.368 INFO    ] Launching Daemon at Fri Jun 12 12:52:22 IST 2026
[2026-06-12 12:52:22,378.378 INFO    ] ================================================
[2026-06-12 12:52:22,747.747 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 12:52:22
[2026-06-12 12:52:23,084.084 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 12:52:23,235.235 INFO    ] Initializing speech engine...
[2026-06-12 12:52:23,241.241 INFO    ] 2026-06-12 12:52:23
[2026-06-12 12:52:23,446.446 INFO    ] 2026-06-12 12:52:23
[2026-06-12 12:52:23,476.476 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 12:52:23,608.608 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 12:52:23,661.661 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 12:52:23,803.803 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 12:52:23,864.864 INFO    ] time= 12/06/2026 12:52:23
[2026-06-12 12:52:23,888.888 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 12:52:23,894.894 INFO    ] Checking for existing commands in stream...
[2026-06-12 12:52:23,961.961 INFO    ] No existing commands found in stream
[2026-06-12 12:52:28,975.975 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 12:52:28,978.978 INFO    ] Waiting 3.01 seconds before fallback handling...
[2026-06-12 12:52:32,314.314 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 12:52:32,316.316 INFO    ] Checking for system updates...
[2026-06-12 12:52:32,336.336 INFO    ] 200
[2026-06-12 12:52:32,338.338 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:52:32,368.368 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 12:52:32,369.369 INFO    ] No update needed
[2026-06-12 12:52:32,371.371 INFO    ] Checking for camera pi updates...
[2026-06-12 12:52:32,390.390 INFO    ] 200
[2026-06-12 12:52:32,391.391 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:52:32,414.414 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 12:52:32,440.440 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 12:52:32,441.441 INFO    ] No camera update needed
[2026-06-12 12:52:32,442.442 INFO    ] Script finished. Safe exiting...
[2026-06-12 12:52:32,444.444 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 12:52:32,446.446 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 12:52:32,449.449 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 12:52:34,488.488 INFO    ] ================================================
[2026-06-12 12:52:34,504.504 INFO    ] Launching Daemon at Fri Jun 12 12:52:34 IST 2026
[2026-06-12 12:52:34,515.515 INFO    ] ================================================
[2026-06-12 12:52:34,885.885 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 12:52:34
[2026-06-12 12:52:35,198.198 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 12:52:35,341.341 INFO    ] Initializing speech engine...
[2026-06-12 12:52:35,345.345 INFO    ] 2026-06-12 12:52:35
[2026-06-12 12:52:35,548.548 INFO    ] 2026-06-12 12:52:35
[2026-06-12 12:52:35,578.578 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 12:52:35,699.699 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 12:52:35,762.762 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 12:52:35,898.898 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 12:52:35,962.962 INFO    ] time= 12/06/2026 12:52:35
[2026-06-12 12:52:35,989.989 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 12:52:35,995.995 INFO    ] Checking for existing commands in stream...
[2026-06-12 12:52:36,063.063 INFO    ] No existing commands found in stream
[2026-06-12 12:52:41,076.076 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 12:52:41,079.079 INFO    ] Waiting 0.64 seconds before fallback handling...
[2026-06-12 12:52:42,091.091 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 12:52:42,093.093 INFO    ] Checking for system updates...
[2026-06-12 12:52:42,113.113 INFO    ] 200
[2026-06-12 12:52:42,115.115 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:52:42,147.147 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 12:52:42,148.148 INFO    ] No update needed
[2026-06-12 12:52:42,149.149 INFO    ] Checking for camera pi updates...
[2026-06-12 12:52:42,171.171 INFO    ] 200
[2026-06-12 12:52:42,172.172 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:52:42,197.197 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 12:52:42,231.231 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 12:52:42,232.232 INFO    ] No camera update needed
[2026-06-12 12:52:42,233.233 INFO    ] Script finished. Safe exiting...
[2026-06-12 12:52:42,234.234 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 12:52:42,237.237 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 12:52:42,240.240 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 12:52:44,280.280 INFO    ] ================================================
[2026-06-12 12:52:44,296.296 INFO    ] Launching Daemon at Fri Jun 12 12:52:44 IST 2026
[2026-06-12 12:52:44,307.307 INFO    ] ================================================
[2026-06-12 12:52:44,651.651 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 12:52:44
[2026-06-12 12:52:44,963.963 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 12:52:45,091.091 INFO    ] Initializing speech engine...
[2026-06-12 12:52:45,096.096 INFO    ] 2026-06-12 12:52:45
[2026-06-12 12:52:45,310.310 INFO    ] 2026-06-12 12:52:45
[2026-06-12 12:52:45,339.339 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 12:52:45,523.523 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 12:52:45,532.532 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 12:52:45,654.654 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 12:52:45,710.710 INFO    ] time= 12/06/2026 12:52:45
[2026-06-12 12:52:45,739.739 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 12:52:45,754.754 INFO    ] Checking for existing commands in stream...
[2026-06-12 12:52:45,849.849 INFO    ] No existing commands found in stream
[2026-06-12 12:52:50,863.863 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 12:52:50,866.866 INFO    ] Waiting 1.52 seconds before fallback handling...
[2026-06-12 12:52:52,766.766 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 12:52:52,767.767 INFO    ] Checking for system updates...
[2026-06-12 12:52:52,788.788 INFO    ] 200
[2026-06-12 12:52:52,790.790 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:52:52,820.820 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 12:52:52,822.822 INFO    ] No update needed
[2026-06-12 12:52:52,823.823 INFO    ] Checking for camera pi updates...
[2026-06-12 12:52:52,844.844 INFO    ] 200
[2026-06-12 12:52:52,845.845 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:52:52,870.870 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 12:52:52,909.909 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 12:52:52,910.910 INFO    ] No camera update needed
[2026-06-12 12:52:52,912.912 INFO    ] Script finished. Safe exiting...
[2026-06-12 12:52:52,913.913 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 12:52:52,916.916 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 12:52:52,919.919 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 12:52:54,958.958 INFO    ] ================================================
[2026-06-12 12:52:54,974.974 INFO    ] Launching Daemon at Fri Jun 12 12:52:54 IST 2026
[2026-06-12 12:52:54,985.985 INFO    ] ================================================
[2026-06-12 12:52:55,341.341 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 12:52:55
[2026-06-12 12:52:55,658.658 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 12:52:55,803.803 INFO    ] Initializing speech engine...
[2026-06-12 12:52:55,808.808 INFO    ] 2026-06-12 12:52:55
[2026-06-12 12:52:56,012.012 INFO    ] 2026-06-12 12:52:55
[2026-06-12 12:52:56,040.040 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 12:52:56,225.225 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 12:52:56,234.234 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 12:52:56,364.364 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 12:52:56,432.432 INFO    ] time= 12/06/2026 12:52:56
[2026-06-12 12:52:56,456.456 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 12:52:56,462.462 INFO    ] Checking for existing commands in stream...
[2026-06-12 12:52:56,529.529 INFO    ] No existing commands found in stream
[2026-06-12 12:53:01,538.538 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 12:53:01,541.541 INFO    ] Waiting 0.75 seconds before fallback handling...
[2026-06-12 12:53:02,601.601 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 12:53:02,602.602 INFO    ] Checking for system updates...
[2026-06-12 12:53:02,623.623 INFO    ] 200
[2026-06-12 12:53:02,624.624 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:53:02,654.654 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 12:53:02,655.655 INFO    ] No update needed
[2026-06-12 12:53:02,657.657 INFO    ] Checking for camera pi updates...
[2026-06-12 12:53:02,676.676 INFO    ] 200
[2026-06-12 12:53:02,677.677 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:53:02,700.700 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 12:53:02,725.725 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 12:53:02,726.726 INFO    ] No camera update needed
[2026-06-12 12:53:02,727.727 INFO    ] Script finished. Safe exiting...
[2026-06-12 12:53:02,728.728 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 12:53:02,732.732 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 12:53:02,734.734 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 12:53:04,772.772 INFO    ] ================================================
[2026-06-12 12:53:04,787.787 INFO    ] Launching Daemon at Fri Jun 12 12:53:04 IST 2026
[2026-06-12 12:53:04,799.799 INFO    ] ================================================
[2026-06-12 12:53:05,150.150 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 12:53:05
[2026-06-12 12:53:05,461.461 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 12:53:05,625.625 INFO    ] Initializing speech engine...
[2026-06-12 12:53:05,630.630 INFO    ] 2026-06-12 12:53:05
[2026-06-12 12:53:05,832.832 INFO    ] 2026-06-12 12:53:05
[2026-06-12 12:53:05,860.860 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 12:53:06,041.041 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 12:53:06,045.045 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 12:53:06,179.179 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 12:53:06,246.246 INFO    ] time= 12/06/2026 12:53:06
[2026-06-12 12:53:06,269.269 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 12:53:06,276.276 INFO    ] Checking for existing commands in stream...
[2026-06-12 12:53:06,342.342 INFO    ] No existing commands found in stream
[2026-06-12 12:53:11,351.351 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 12:53:11,353.353 INFO    ] Waiting 1.38 seconds before fallback handling...
[2026-06-12 12:53:13,129.129 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 12:53:13,130.130 INFO    ] Checking for system updates...
[2026-06-12 12:53:13,152.152 INFO    ] 200
[2026-06-12 12:53:13,153.153 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:53:13,185.185 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 12:53:13,186.186 INFO    ] No update needed
[2026-06-12 12:53:13,187.187 INFO    ] Checking for camera pi updates...
[2026-06-12 12:53:13,207.207 INFO    ] 200
[2026-06-12 12:53:13,208.208 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:53:13,233.233 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 12:53:13,268.268 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 12:53:13,269.269 INFO    ] No camera update needed
[2026-06-12 12:53:13,271.271 INFO    ] Script finished. Safe exiting...
[2026-06-12 12:53:13,272.272 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 12:53:13,275.275 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 12:53:13,277.277 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 12:53:15,315.315 INFO    ] ================================================
[2026-06-12 12:53:15,331.331 INFO    ] Launching Daemon at Fri Jun 12 12:53:15 IST 2026
[2026-06-12 12:53:15,343.343 INFO    ] ================================================
[2026-06-12 12:53:15,703.703 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 12:53:15
[2026-06-12 12:53:16,032.032 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 12:53:16,184.184 INFO    ] Initializing speech engine...
[2026-06-12 12:53:16,191.191 INFO    ] 2026-06-12 12:53:16
[2026-06-12 12:53:16,391.391 INFO    ] 2026-06-12 12:53:16
[2026-06-12 12:53:16,420.420 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 12:53:16,605.605 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 12:53:16,614.614 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 12:53:16,750.750 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 12:53:16,812.812 INFO    ] time= 12/06/2026 12:53:16
[2026-06-12 12:53:16,838.838 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 12:53:16,844.844 INFO    ] Checking for existing commands in stream...
[2026-06-12 12:53:16,935.935 INFO    ] No existing commands found in stream
[2026-06-12 12:53:21,944.944 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 12:53:21,947.947 INFO    ] Waiting 1.08 seconds before fallback handling...
[2026-06-12 12:53:23,405.405 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 12:53:23,406.406 INFO    ] Checking for system updates...
[2026-06-12 12:53:23,427.427 INFO    ] 200
[2026-06-12 12:53:23,428.428 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:53:23,461.461 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 12:53:23,462.462 INFO    ] No update needed
[2026-06-12 12:53:23,463.463 INFO    ] Checking for camera pi updates...
[2026-06-12 12:53:23,483.483 INFO    ] 200
[2026-06-12 12:53:23,484.484 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:53:23,508.508 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 12:53:23,545.545 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 12:53:23,547.547 INFO    ] No camera update needed
[2026-06-12 12:53:23,548.548 INFO    ] Script finished. Safe exiting...
[2026-06-12 12:53:23,549.549 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 12:53:23,552.552 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 12:53:23,555.555 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 12:53:25,594.594 INFO    ] ================================================
[2026-06-12 12:53:25,610.610 INFO    ] Launching Daemon at Fri Jun 12 12:53:25 IST 2026
[2026-06-12 12:53:25,621.621 INFO    ] ================================================
[2026-06-12 12:53:25,956.956 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 12:53:25
[2026-06-12 12:53:26,271.271 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 12:53:26,414.414 INFO    ] Initializing speech engine...
[2026-06-12 12:53:26,419.419 INFO    ] 2026-06-12 12:53:26
[2026-06-12 12:53:26,621.621 INFO    ] 2026-06-12 12:53:26
[2026-06-12 12:53:26,649.649 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 12:53:26,832.832 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 12:53:26,841.841 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 12:53:26,972.972 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 12:53:27,036.036 INFO    ] time= 12/06/2026 12:53:26
[2026-06-12 12:53:27,063.063 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 12:53:27,064.064 INFO    ] Checking for existing commands in stream...
[2026-06-12 12:53:27,136.136 INFO    ] No existing commands found in stream
[2026-06-12 12:53:32,149.149 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 12:53:32,150.150 INFO    ] Waiting 3.84 seconds before fallback handling...
[2026-06-12 12:53:36,363.363 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 12:53:36,364.364 INFO    ] Checking for system updates...
[2026-06-12 12:53:36,385.385 INFO    ] 200
[2026-06-12 12:53:36,386.386 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:53:36,416.416 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 12:53:36,417.417 INFO    ] No update needed
[2026-06-12 12:53:36,419.419 INFO    ] Checking for camera pi updates...
[2026-06-12 12:53:36,438.438 INFO    ] 200
[2026-06-12 12:53:36,439.439 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:53:36,462.462 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 12:53:36,507.507 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 12:53:36,508.508 INFO    ] No camera update needed
[2026-06-12 12:53:36,509.509 INFO    ] Script finished. Safe exiting...
[2026-06-12 12:53:36,510.510 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 12:53:36,513.513 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 12:53:36,516.516 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 12:53:38,554.554 INFO    ] ================================================
[2026-06-12 12:53:38,570.570 INFO    ] Launching Daemon at Fri Jun 12 12:53:38 IST 2026
[2026-06-12 12:53:38,580.580 INFO    ] ================================================
[2026-06-12 12:53:38,942.942 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 12:53:38
[2026-06-12 12:53:39,254.254 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 12:53:39,384.384 INFO    ] Initializing speech engine...
[2026-06-12 12:53:39,388.388 INFO    ] 2026-06-12 12:53:39
[2026-06-12 12:53:39,602.602 INFO    ] 2026-06-12 12:53:39
[2026-06-12 12:53:39,632.632 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 12:53:39,753.753 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 12:53:39,815.815 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 12:53:39,949.949 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 12:53:40,011.011 INFO    ] time= 12/06/2026 12:53:39
[2026-06-12 12:53:40,042.042 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 12:53:40,049.049 INFO    ] Checking for existing commands in stream...
[2026-06-12 12:53:40,116.116 INFO    ] No existing commands found in stream
[2026-06-12 12:53:45,125.125 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 12:53:45,127.127 INFO    ] Waiting 2.37 seconds before fallback handling...
[2026-06-12 12:53:47,868.868 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 12:53:47,870.870 INFO    ] Checking for system updates...
[2026-06-12 12:53:47,891.891 INFO    ] 200
[2026-06-12 12:53:47,892.892 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:53:47,924.924 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 12:53:47,925.925 INFO    ] No update needed
[2026-06-12 12:53:47,927.927 INFO    ] Checking for camera pi updates...
[2026-06-12 12:53:47,949.949 INFO    ] 200
[2026-06-12 12:53:47,951.951 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:53:47,976.976 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 12:53:48,015.015 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 12:53:48,017.017 INFO    ] No camera update needed
[2026-06-12 12:53:48,018.018 INFO    ] Script finished. Safe exiting...
[2026-06-12 12:53:48,020.020 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 12:53:48,023.023 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 12:53:48,026.026 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 12:53:50,065.065 INFO    ] ================================================
[2026-06-12 12:53:50,081.081 INFO    ] Launching Daemon at Fri Jun 12 12:53:50 IST 2026
[2026-06-12 12:53:50,093.093 INFO    ] ================================================
[2026-06-12 12:53:50,463.463 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 12:53:50
[2026-06-12 12:53:50,775.775 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 12:53:50,906.906 INFO    ] Initializing speech engine...
[2026-06-12 12:53:50,909.909 INFO    ] 2026-06-12 12:53:50
[2026-06-12 12:53:51,129.129 INFO    ] 2026-06-12 12:53:51
[2026-06-12 12:53:51,158.158 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 12:53:51,282.282 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 12:53:51,346.346 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 12:53:51,478.478 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 12:53:51,534.534 INFO    ] time= 12/06/2026 12:53:51
[2026-06-12 12:53:51,575.575 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 12:53:51,580.580 INFO    ] Checking for existing commands in stream...
[2026-06-12 12:53:51,653.653 INFO    ] No existing commands found in stream
[2026-06-12 12:53:56,666.666 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 12:53:56,669.669 INFO    ] Waiting 2.40 seconds before fallback handling...
[2026-06-12 12:53:59,470.470 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 12:53:59,473.473 INFO    ] Checking for system updates...
[2026-06-12 12:53:59,509.509 INFO    ] 200
[2026-06-12 12:53:59,512.512 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:53:59,564.564 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 12:53:59,567.567 INFO    ] No update needed
[2026-06-12 12:53:59,569.569 INFO    ] Checking for camera pi updates...
[2026-06-12 12:53:59,605.605 INFO    ] 200
[2026-06-12 12:53:59,606.606 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:53:59,630.630 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 12:53:59,670.670 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 12:53:59,672.672 INFO    ] No camera update needed
[2026-06-12 12:53:59,673.673 INFO    ] Script finished. Safe exiting...
[2026-06-12 12:53:59,674.674 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 12:53:59,677.677 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 12:53:59,680.680 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 12:54:01,716.716 INFO    ] ================================================
[2026-06-12 12:54:01,734.734 INFO    ] Launching Daemon at Fri Jun 12 12:54:01 IST 2026
[2026-06-12 12:54:01,747.747 INFO    ] ================================================
[2026-06-12 12:54:02,139.139 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 12:54:02
[2026-06-12 12:54:02,503.503 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 12:54:02,658.658 INFO    ] Initializing speech engine...
[2026-06-12 12:54:02,662.662 INFO    ] 2026-06-12 12:54:02
[2026-06-12 12:54:02,896.896 INFO    ] 2026-06-12 12:54:02
[2026-06-12 12:54:02,925.925 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 12:54:03,050.050 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 12:54:03,108.108 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 12:54:03,264.264 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 12:54:03,323.323 INFO    ] time= 12/06/2026 12:54:03
[2026-06-12 12:54:03,346.346 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 12:54:03,353.353 INFO    ] Checking for existing commands in stream...
[2026-06-12 12:54:03,420.420 INFO    ] No existing commands found in stream
[2026-06-12 12:54:08,445.445 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 12:54:08,448.448 INFO    ] Waiting 0.59 seconds before fallback handling...
[2026-06-12 12:54:09,407.407 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 12:54:09,409.409 INFO    ] Checking for system updates...
[2026-06-12 12:54:09,430.430 INFO    ] 200
[2026-06-12 12:54:09,431.431 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:54:09,461.461 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 12:54:09,463.463 INFO    ] No update needed
[2026-06-12 12:54:09,464.464 INFO    ] Checking for camera pi updates...
[2026-06-12 12:54:09,483.483 INFO    ] 200
[2026-06-12 12:54:09,485.485 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:54:09,509.509 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 12:54:09,545.545 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 12:54:09,547.547 INFO    ] No camera update needed
[2026-06-12 12:54:09,548.548 INFO    ] Script finished. Safe exiting...
[2026-06-12 12:54:09,550.550 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 12:54:09,553.553 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 12:54:09,556.556 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 12:54:11,594.594 INFO    ] ================================================
[2026-06-12 12:54:11,609.609 INFO    ] Launching Daemon at Fri Jun 12 12:54:11 IST 2026
[2026-06-12 12:54:11,620.620 INFO    ] ================================================
[2026-06-12 12:54:11,944.944 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 12:54:11
[2026-06-12 12:54:12,259.259 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 12:54:12,389.389 INFO    ] Initializing speech engine...
[2026-06-12 12:54:12,397.397 INFO    ] 2026-06-12 12:54:12
[2026-06-12 12:54:12,608.608 INFO    ] 2026-06-12 12:54:12
[2026-06-12 12:54:12,635.635 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 12:54:12,756.756 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 12:54:12,819.819 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 12:54:12,952.952 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 12:54:13,014.014 INFO    ] time= 12/06/2026 12:54:12
[2026-06-12 12:54:13,045.045 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 12:54:13,052.052 INFO    ] Checking for existing commands in stream...
[2026-06-12 12:54:13,141.141 INFO    ] No existing commands found in stream
[2026-06-12 12:54:18,155.155 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 12:54:18,158.158 INFO    ] Waiting 3.71 seconds before fallback handling...
[2026-06-12 12:54:22,237.237 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 12:54:22,238.238 INFO    ] Checking for system updates...
[2026-06-12 12:54:22,260.260 INFO    ] 200
[2026-06-12 12:54:22,261.261 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:54:22,293.293 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 12:54:22,294.294 INFO    ] No update needed
[2026-06-12 12:54:22,295.295 INFO    ] Checking for camera pi updates...
[2026-06-12 12:54:22,314.314 INFO    ] 200
[2026-06-12 12:54:22,316.316 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:54:22,338.338 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 12:54:22,374.374 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 12:54:22,376.376 INFO    ] No camera update needed
[2026-06-12 12:54:22,377.377 INFO    ] Script finished. Safe exiting...
[2026-06-12 12:54:22,378.378 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 12:54:22,381.381 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 12:54:22,384.384 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 12:54:24,425.425 INFO    ] ================================================
[2026-06-12 12:54:24,440.440 INFO    ] Launching Daemon at Fri Jun 12 12:54:24 IST 2026
[2026-06-12 12:54:24,451.451 INFO    ] ================================================
[2026-06-12 12:54:24,770.770 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 12:54:24
[2026-06-12 12:54:25,081.081 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 12:54:25,210.210 INFO    ] Initializing speech engine...
[2026-06-12 12:54:25,219.219 INFO    ] 2026-06-12 12:54:25
[2026-06-12 12:54:25,432.432 INFO    ] 2026-06-12 12:54:25
[2026-06-12 12:54:25,463.463 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 12:54:25,591.591 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 12:54:25,650.650 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 12:54:25,782.782 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 12:54:25,843.843 INFO    ] time= 12/06/2026 12:54:25
[2026-06-12 12:54:25,881.881 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 12:54:25,883.883 INFO    ] Checking for existing commands in stream...
[2026-06-12 12:54:25,954.954 INFO    ] No existing commands found in stream
[2026-06-12 12:54:30,965.965 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 12:54:30,967.967 INFO    ] Waiting 1.96 seconds before fallback handling...
[2026-06-12 12:54:33,266.266 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 12:54:33,267.267 INFO    ] Checking for system updates...
[2026-06-12 12:54:33,289.289 INFO    ] 200
[2026-06-12 12:54:33,290.290 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:54:33,320.320 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 12:54:33,321.321 INFO    ] No update needed
[2026-06-12 12:54:33,323.323 INFO    ] Checking for camera pi updates...
[2026-06-12 12:54:33,343.343 INFO    ] 200
[2026-06-12 12:54:33,344.344 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:54:33,367.367 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 12:54:33,404.404 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 12:54:33,406.406 INFO    ] No camera update needed
[2026-06-12 12:54:33,407.407 INFO    ] Script finished. Safe exiting...
[2026-06-12 12:54:33,408.408 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 12:54:33,411.411 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 12:54:33,414.414 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 12:54:35,452.452 INFO    ] ================================================
[2026-06-12 12:54:35,468.468 INFO    ] Launching Daemon at Fri Jun 12 12:54:35 IST 2026
[2026-06-12 12:54:35,479.479 INFO    ] ================================================
[2026-06-12 12:54:35,809.809 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 12:54:35
[2026-06-12 12:54:36,119.119 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 12:54:36,256.256 INFO    ] Initializing speech engine...
[2026-06-12 12:54:36,266.266 INFO    ] 2026-06-12 12:54:36
[2026-06-12 12:54:36,470.470 INFO    ] 2026-06-12 12:54:36
[2026-06-12 12:54:36,498.498 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 12:54:36,681.681 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 12:54:36,685.685 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 12:54:36,820.820 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 12:54:36,879.879 INFO    ] time= 12/06/2026 12:54:36
[2026-06-12 12:54:36,911.911 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 12:54:36,917.917 INFO    ] Checking for existing commands in stream...
[2026-06-12 12:54:36,984.984 INFO    ] No existing commands found in stream
[2026-06-12 12:54:41,992.992 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 12:54:41,994.994 INFO    ] Waiting 3.68 seconds before fallback handling...
[2026-06-12 12:54:46,023.023 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 12:54:46,025.025 INFO    ] Checking for system updates...
[2026-06-12 12:54:46,045.045 INFO    ] 200
[2026-06-12 12:54:46,046.046 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:54:46,076.076 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 12:54:46,078.078 INFO    ] No update needed
[2026-06-12 12:54:46,079.079 INFO    ] Checking for camera pi updates...
[2026-06-12 12:54:46,098.098 INFO    ] 200
[2026-06-12 12:54:46,099.099 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:54:46,122.122 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 12:54:46,165.165 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 12:54:46,167.167 INFO    ] No camera update needed
[2026-06-12 12:54:46,168.168 INFO    ] Script finished. Safe exiting...
[2026-06-12 12:54:46,169.169 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 12:54:46,173.173 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 12:54:46,175.175 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 12:54:48,214.214 INFO    ] ================================================
[2026-06-12 12:54:48,229.229 INFO    ] Launching Daemon at Fri Jun 12 12:54:48 IST 2026
[2026-06-12 12:54:48,240.240 INFO    ] ================================================
[2026-06-12 12:54:48,608.608 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 12:54:48
[2026-06-12 12:54:48,926.926 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 12:54:49,059.059 INFO    ] Initializing speech engine...
[2026-06-12 12:54:49,074.074 INFO    ] 2026-06-12 12:54:49
[2026-06-12 12:54:49,277.277 INFO    ] 2026-06-12 12:54:49
[2026-06-12 12:54:49,306.306 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 12:54:49,489.489 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 12:54:49,492.492 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 12:54:49,628.628 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 12:54:49,695.695 INFO    ] time= 12/06/2026 12:54:49
[2026-06-12 12:54:49,719.719 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 12:54:49,725.725 INFO    ] Checking for existing commands in stream...
[2026-06-12 12:54:49,792.792 INFO    ] No existing commands found in stream
[2026-06-12 12:54:54,806.806 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 12:54:54,809.809 INFO    ] Waiting 3.81 seconds before fallback handling...
[2026-06-12 12:54:58,998.998 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 12:54:58,999.999 INFO    ] Checking for system updates...
[2026-06-12 12:54:59,020.020 INFO    ] 200
[2026-06-12 12:54:59,022.022 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:54:59,053.053 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 12:54:59,055.055 INFO    ] No update needed
[2026-06-12 12:54:59,056.056 INFO    ] Checking for camera pi updates...
[2026-06-12 12:54:59,076.076 INFO    ] 200
[2026-06-12 12:54:59,077.077 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:54:59,101.101 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 12:54:59,137.137 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 12:54:59,138.138 INFO    ] No camera update needed
[2026-06-12 12:54:59,140.140 INFO    ] Script finished. Safe exiting...
[2026-06-12 12:54:59,141.141 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 12:54:59,144.144 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 12:54:59,147.147 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 12:55:01,184.184 INFO    ] ================================================
[2026-06-12 12:55:01,200.200 INFO    ] Launching Daemon at Fri Jun 12 12:55:01 IST 2026
[2026-06-12 12:55:01,212.212 INFO    ] ================================================
[2026-06-12 12:55:01,545.545 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 12:55:01
[2026-06-12 12:55:01,866.866 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 12:55:02,335.335 INFO    ] Initializing speech engine...
[2026-06-12 12:55:02,340.340 INFO    ] 2026-06-12 12:55:02
[2026-06-12 12:55:02,630.630 INFO    ] 2026-06-12 12:55:02
[2026-06-12 12:55:02,702.702 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 12:55:02,888.888 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 12:55:02,950.950 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 12:55:03,075.075 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 12:55:03,079.079 INFO    ] time= 12/06/2026 12:55:03
[2026-06-12 12:55:03,106.106 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 12:55:03,108.108 INFO    ] Checking for existing commands in stream...
[2026-06-12 12:55:03,164.164 INFO    ] No existing commands found in stream
[2026-06-12 12:55:08,173.173 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 12:55:08,176.176 INFO    ] Waiting 2.60 seconds before fallback handling...
[2026-06-12 12:55:11,165.165 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 12:55:11,167.167 INFO    ] Checking for system updates...
[2026-06-12 12:55:11,187.187 INFO    ] 200
[2026-06-12 12:55:11,189.189 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:55:11,219.219 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 12:55:11,220.220 INFO    ] No update needed
[2026-06-12 12:55:11,221.221 INFO    ] Checking for camera pi updates...
[2026-06-12 12:55:11,243.243 INFO    ] 200
[2026-06-12 12:55:11,244.244 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:55:11,269.269 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 12:55:11,309.309 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 12:55:11,310.310 INFO    ] No camera update needed
[2026-06-12 12:55:11,311.311 INFO    ] Script finished. Safe exiting...
[2026-06-12 12:55:11,313.313 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 12:55:11,316.316 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 12:55:11,318.318 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 12:55:13,358.358 INFO    ] ================================================
[2026-06-12 12:55:13,373.373 INFO    ] Launching Daemon at Fri Jun 12 12:55:13 IST 2026
[2026-06-12 12:55:13,385.385 INFO    ] ================================================
[2026-06-12 12:55:13,744.744 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 12:55:13
[2026-06-12 12:55:14,080.080 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 12:55:14,220.220 INFO    ] Initializing speech engine...
[2026-06-12 12:55:14,232.232 INFO    ] 2026-06-12 12:55:14
[2026-06-12 12:55:14,443.443 INFO    ] 2026-06-12 12:55:14
[2026-06-12 12:55:14,473.473 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 12:55:14,607.607 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 12:55:14,660.660 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 12:55:14,797.797 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 12:55:14,863.863 INFO    ] time= 12/06/2026 12:55:14
[2026-06-12 12:55:14,892.892 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 12:55:14,898.898 INFO    ] Checking for existing commands in stream...
[2026-06-12 12:55:14,966.966 INFO    ] No existing commands found in stream
[2026-06-12 12:55:19,976.976 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 12:55:19,979.979 INFO    ] Waiting 3.86 seconds before fallback handling...
[2026-06-12 12:55:24,215.215 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 12:55:24,217.217 INFO    ] Checking for system updates...
[2026-06-12 12:55:24,237.237 INFO    ] 200
[2026-06-12 12:55:24,239.239 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:55:24,269.269 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 12:55:24,271.271 INFO    ] No update needed
[2026-06-12 12:55:24,272.272 INFO    ] Checking for camera pi updates...
[2026-06-12 12:55:24,294.294 INFO    ] 200
[2026-06-12 12:55:24,295.295 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:55:24,322.322 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 12:55:24,372.372 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 12:55:24,373.373 INFO    ] No camera update needed
[2026-06-12 12:55:24,375.375 INFO    ] Script finished. Safe exiting...
[2026-06-12 12:55:24,376.376 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 12:55:24,379.379 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 12:55:24,382.382 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 12:55:26,421.421 INFO    ] ================================================
[2026-06-12 12:55:26,436.436 INFO    ] Launching Daemon at Fri Jun 12 12:55:26 IST 2026
[2026-06-12 12:55:26,447.447 INFO    ] ================================================
[2026-06-12 12:55:26,815.815 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 12:55:26
[2026-06-12 12:55:27,126.126 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 12:55:27,262.262 INFO    ] Initializing speech engine...
[2026-06-12 12:55:27,275.275 INFO    ] 2026-06-12 12:55:27
[2026-06-12 12:55:27,489.489 INFO    ] 2026-06-12 12:55:27
[2026-06-12 12:55:27,518.518 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 12:55:27,705.705 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 12:55:27,708.708 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 12:55:27,840.840 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 12:55:27,901.901 INFO    ] time= 12/06/2026 12:55:27
[2026-06-12 12:55:27,932.932 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 12:55:27,939.939 INFO    ] Checking for existing commands in stream...
[2026-06-12 12:55:28,006.006 INFO    ] No existing commands found in stream
[2026-06-12 12:55:33,014.014 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 12:55:33,017.017 INFO    ] Waiting 3.86 seconds before fallback handling...
[2026-06-12 12:55:37,240.240 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 12:55:37,242.242 INFO    ] Checking for system updates...
[2026-06-12 12:55:37,262.262 INFO    ] 200
[2026-06-12 12:55:37,264.264 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:55:37,294.294 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 12:55:37,295.295 INFO    ] No update needed
[2026-06-12 12:55:37,296.296 INFO    ] Checking for camera pi updates...
[2026-06-12 12:55:37,318.318 INFO    ] 200
[2026-06-12 12:55:37,320.320 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:55:37,344.344 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 12:55:37,380.380 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 12:55:37,382.382 INFO    ] No camera update needed
[2026-06-12 12:55:37,383.383 INFO    ] Script finished. Safe exiting...
[2026-06-12 12:55:37,384.384 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 12:55:37,387.387 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 12:55:37,391.391 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 12:55:39,429.429 INFO    ] ================================================
[2026-06-12 12:55:39,444.444 INFO    ] Launching Daemon at Fri Jun 12 12:55:39 IST 2026
[2026-06-12 12:55:39,455.455 INFO    ] ================================================
[2026-06-12 12:55:39,839.839 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 12:55:39
[2026-06-12 12:55:40,173.173 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 12:55:40,318.318 INFO    ] Initializing speech engine...
[2026-06-12 12:55:40,328.328 INFO    ] 2026-06-12 12:55:40
[2026-06-12 12:55:40,538.538 INFO    ] 2026-06-12 12:55:40
[2026-06-12 12:55:40,568.568 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 12:55:40,756.756 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 12:55:40,765.765 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 12:55:40,866.866 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 12:55:40,867.867 INFO    ] time= 12/06/2026 12:55:40
[2026-06-12 12:55:40,907.907 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 12:55:40,974.974 INFO    ] Checking for existing commands in stream...
[2026-06-12 12:55:41,065.065 INFO    ] No existing commands found in stream
[2026-06-12 12:55:46,076.076 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 12:55:46,079.079 INFO    ] Waiting 1.50 seconds before fallback handling...
[2026-06-12 12:55:47,959.959 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 12:55:47,960.960 INFO    ] Checking for system updates...
[2026-06-12 12:55:47,982.982 INFO    ] 200
[2026-06-12 12:55:47,983.983 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:55:48,017.017 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 12:55:48,018.018 INFO    ] No update needed
[2026-06-12 12:55:48,019.019 INFO    ] Checking for camera pi updates...
[2026-06-12 12:55:48,038.038 INFO    ] 200
[2026-06-12 12:55:48,040.040 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:55:48,063.063 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 12:55:48,102.102 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 12:55:48,103.103 INFO    ] No camera update needed
[2026-06-12 12:55:48,104.104 INFO    ] Script finished. Safe exiting...
[2026-06-12 12:55:48,106.106 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 12:55:48,108.108 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 12:55:48,111.111 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 12:55:50,149.149 INFO    ] ================================================
[2026-06-12 12:55:50,165.165 INFO    ] Launching Daemon at Fri Jun 12 12:55:50 IST 2026
[2026-06-12 12:55:50,176.176 INFO    ] ================================================
[2026-06-12 12:55:50,530.530 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 12:55:50
[2026-06-12 12:55:50,865.865 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 12:55:51,005.005 INFO    ] Initializing speech engine...
[2026-06-12 12:55:51,018.018 INFO    ] 2026-06-12 12:55:51
[2026-06-12 12:55:51,216.216 INFO    ] 2026-06-12 12:55:51
[2026-06-12 12:55:51,243.243 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 12:55:51,399.399 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 12:55:51,452.452 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 12:55:51,597.597 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 12:55:51,615.615 INFO    ] time= 12/06/2026 12:55:51
[2026-06-12 12:55:51,617.617 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 12:55:51,618.618 INFO    ] Checking for existing commands in stream...
[2026-06-12 12:55:51,671.671 INFO    ] No existing commands found in stream
[2026-06-12 12:55:56,681.681 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 12:55:56,684.684 INFO    ] Waiting 3.64 seconds before fallback handling...
[2026-06-12 12:56:00,730.730 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 12:56:00,732.732 INFO    ] Checking for system updates...
[2026-06-12 12:56:00,753.753 INFO    ] 200
[2026-06-12 12:56:00,754.754 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:56:00,785.785 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 12:56:00,787.787 INFO    ] No update needed
[2026-06-12 12:56:00,788.788 INFO    ] Checking for camera pi updates...
[2026-06-12 12:56:00,807.807 INFO    ] 200
[2026-06-12 12:56:00,809.809 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:56:00,832.832 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 12:56:00,871.871 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 12:56:00,872.872 INFO    ] No camera update needed
[2026-06-12 12:56:00,873.873 INFO    ] Script finished. Safe exiting...
[2026-06-12 12:56:00,875.875 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 12:56:00,877.877 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 12:56:00,880.880 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 12:56:02,914.914 INFO    ] ================================================
[2026-06-12 12:56:02,928.928 INFO    ] Launching Daemon at Fri Jun 12 12:56:02 IST 2026
[2026-06-12 12:56:02,939.939 INFO    ] ================================================
[2026-06-12 12:56:03,330.330 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 12:56:03
[2026-06-12 12:56:03,667.667 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 12:56:03,819.819 INFO    ] Initializing speech engine...
[2026-06-12 12:56:03,824.824 INFO    ] 2026-06-12 12:56:03
[2026-06-12 12:56:04,028.028 INFO    ] 2026-06-12 12:56:04
[2026-06-12 12:56:04,058.058 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 12:56:04,240.240 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 12:56:04,244.244 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 12:56:04,379.379 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 12:56:04,447.447 INFO    ] time= 12/06/2026 12:56:04
[2026-06-12 12:56:04,471.471 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 12:56:04,478.478 INFO    ] Checking for existing commands in stream...
[2026-06-12 12:56:04,568.568 INFO    ] No existing commands found in stream
[2026-06-12 12:56:09,577.577 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 12:56:09,580.580 INFO    ] Waiting 2.79 seconds before fallback handling...
[2026-06-12 12:56:12,728.728 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 12:56:12,730.730 INFO    ] Checking for system updates...
[2026-06-12 12:56:12,750.750 INFO    ] 200
[2026-06-12 12:56:12,752.752 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:56:12,783.783 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 12:56:12,784.784 INFO    ] No update needed
[2026-06-12 12:56:12,785.785 INFO    ] Checking for camera pi updates...
[2026-06-12 12:56:12,806.806 INFO    ] 200
[2026-06-12 12:56:12,807.807 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:56:12,831.831 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 12:56:12,870.870 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 12:56:12,872.872 INFO    ] No camera update needed
[2026-06-12 12:56:12,873.873 INFO    ] Script finished. Safe exiting...
[2026-06-12 12:56:12,874.874 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 12:56:12,877.877 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 12:56:12,880.880 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 12:56:14,918.918 INFO    ] ================================================
[2026-06-12 12:56:14,933.933 INFO    ] Launching Daemon at Fri Jun 12 12:56:14 IST 2026
[2026-06-12 12:56:14,944.944 INFO    ] ================================================
[2026-06-12 12:56:15,295.295 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 12:56:15
[2026-06-12 12:56:15,606.606 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 12:56:15,743.743 INFO    ] Initializing speech engine...
[2026-06-12 12:56:15,751.751 INFO    ] 2026-06-12 12:56:15
[2026-06-12 12:56:15,958.958 INFO    ] 2026-06-12 12:56:15
[2026-06-12 12:56:15,988.988 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 12:56:16,173.173 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 12:56:16,182.182 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 12:56:16,306.306 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 12:56:16,362.362 INFO    ] time= 12/06/2026 12:56:16
[2026-06-12 12:56:16,406.406 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 12:56:16,408.408 INFO    ] Checking for existing commands in stream...
[2026-06-12 12:56:16,480.480 INFO    ] No existing commands found in stream
[2026-06-12 12:56:21,489.489 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 12:56:21,492.492 INFO    ] Waiting 0.73 seconds before fallback handling...
[2026-06-12 12:56:22,548.548 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 12:56:22,549.549 INFO    ] Checking for system updates...
[2026-06-12 12:56:22,571.571 INFO    ] 200
[2026-06-12 12:56:22,573.573 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:56:22,603.603 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 12:56:22,604.604 INFO    ] No update needed
[2026-06-12 12:56:22,605.605 INFO    ] Checking for camera pi updates...
[2026-06-12 12:56:22,624.624 INFO    ] 200
[2026-06-12 12:56:22,625.625 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:56:22,651.651 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 12:56:22,692.692 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 12:56:22,693.693 INFO    ] No camera update needed
[2026-06-12 12:56:22,694.694 INFO    ] Script finished. Safe exiting...
[2026-06-12 12:56:22,696.696 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 12:56:22,698.698 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 12:56:22,701.701 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 12:56:24,742.742 INFO    ] ================================================
[2026-06-12 12:56:24,757.757 INFO    ] Launching Daemon at Fri Jun 12 12:56:24 IST 2026
[2026-06-12 12:56:24,768.768 INFO    ] ================================================
[2026-06-12 12:56:25,148.148 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 12:56:25
[2026-06-12 12:56:25,485.485 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 12:56:25,636.636 INFO    ] Initializing speech engine...
[2026-06-12 12:56:25,643.643 INFO    ] 2026-06-12 12:56:25
[2026-06-12 12:56:25,850.850 INFO    ] 2026-06-12 12:56:25
[2026-06-12 12:56:25,879.879 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 12:56:26,064.064 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 12:56:26,075.075 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 12:56:26,203.203 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 12:56:26,261.261 INFO    ] time= 12/06/2026 12:56:26
[2026-06-12 12:56:26,296.296 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 12:56:26,301.301 INFO    ] Checking for existing commands in stream...
[2026-06-12 12:56:26,374.374 INFO    ] No existing commands found in stream
[2026-06-12 12:56:31,389.389 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 12:56:31,393.393 INFO    ] Waiting 0.78 seconds before fallback handling...
[2026-06-12 12:56:32,524.524 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 12:56:32,526.526 INFO    ] Checking for system updates...
[2026-06-12 12:56:32,547.547 INFO    ] 200
[2026-06-12 12:56:32,548.548 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:56:32,589.589 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 12:56:32,590.590 INFO    ] No update needed
[2026-06-12 12:56:32,591.591 INFO    ] Checking for camera pi updates...
[2026-06-12 12:56:32,611.611 INFO    ] 200
[2026-06-12 12:56:32,612.612 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:56:32,637.637 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 12:56:32,659.659 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 12:56:32,660.660 INFO    ] No camera update needed
[2026-06-12 12:56:32,661.661 INFO    ] Script finished. Safe exiting...
[2026-06-12 12:56:32,663.663 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 12:56:32,665.665 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 12:56:32,668.668 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 12:56:34,706.706 INFO    ] ================================================
[2026-06-12 12:56:34,721.721 INFO    ] Launching Daemon at Fri Jun 12 12:56:34 IST 2026
[2026-06-12 12:56:34,732.732 INFO    ] ================================================
[2026-06-12 12:56:35,084.084 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 12:56:35
[2026-06-12 12:56:35,419.419 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 12:56:35,570.570 INFO    ] Initializing speech engine...
[2026-06-12 12:56:35,575.575 INFO    ] 2026-06-12 12:56:35
[2026-06-12 12:56:35,785.785 INFO    ] 2026-06-12 12:56:35
[2026-06-12 12:56:35,814.814 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 12:56:36,000.000 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 12:56:36,009.009 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 12:56:36,141.141 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 12:56:36,205.205 INFO    ] time= 12/06/2026 12:56:36
[2026-06-12 12:56:36,233.233 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 12:56:36,239.239 INFO    ] Checking for existing commands in stream...
[2026-06-12 12:56:36,307.307 INFO    ] No existing commands found in stream
[2026-06-12 12:56:41,322.322 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 12:56:41,325.325 INFO    ] Waiting 2.20 seconds before fallback handling...
[2026-06-12 12:56:43,906.906 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 12:56:43,908.908 INFO    ] Checking for system updates...
[2026-06-12 12:56:43,929.929 INFO    ] 200
[2026-06-12 12:56:43,931.931 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:56:43,961.961 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 12:56:43,962.962 INFO    ] No update needed
[2026-06-12 12:56:43,964.964 INFO    ] Checking for camera pi updates...
[2026-06-12 12:56:43,983.983 INFO    ] 200
[2026-06-12 12:56:43,984.984 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:56:44,009.009 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 12:56:44,152.152 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 12:56:44,153.153 INFO    ] No camera update needed
[2026-06-12 12:56:44,154.154 INFO    ] Script finished. Safe exiting...
[2026-06-12 12:56:44,156.156 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 12:56:44,159.159 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 12:56:44,161.161 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 12:56:46,199.199 INFO    ] ================================================
[2026-06-12 12:56:46,215.215 INFO    ] Launching Daemon at Fri Jun 12 12:56:46 IST 2026
[2026-06-12 12:56:46,225.225 INFO    ] ================================================
[2026-06-12 12:56:46,578.578 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 12:56:46
[2026-06-12 12:56:46,912.912 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 12:56:47,065.065 INFO    ] Initializing speech engine...
[2026-06-12 12:56:47,070.070 INFO    ] 2026-06-12 12:56:47
[2026-06-12 12:56:47,278.278 INFO    ] 2026-06-12 12:56:47
[2026-06-12 12:56:47,307.307 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 12:56:47,490.490 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 12:56:47,500.500 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 12:56:47,668.668 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 12:56:47,718.718 INFO    ] time= 12/06/2026 12:56:47
[2026-06-12 12:56:47,723.723 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 12:56:47,730.730 INFO    ] Checking for existing commands in stream...
[2026-06-12 12:56:47,797.797 INFO    ] No existing commands found in stream
[2026-06-12 12:56:52,811.811 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 12:56:52,814.814 INFO    ] Waiting 1.34 seconds before fallback handling...
[2026-06-12 12:56:54,487.487 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 12:56:54,489.489 INFO    ] Checking for system updates...
[2026-06-12 12:56:54,511.511 INFO    ] 200
[2026-06-12 12:56:54,513.513 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:56:54,548.548 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 12:56:54,549.549 INFO    ] No update needed
[2026-06-12 12:56:54,551.551 INFO    ] Checking for camera pi updates...
[2026-06-12 12:56:54,571.571 INFO    ] 200
[2026-06-12 12:56:54,572.572 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:56:54,597.597 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 12:56:54,620.620 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 12:56:54,621.621 INFO    ] No camera update needed
[2026-06-12 12:56:54,623.623 INFO    ] Script finished. Safe exiting...
[2026-06-12 12:56:54,624.624 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 12:56:54,627.627 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 12:56:54,630.630 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 12:56:56,668.668 INFO    ] ================================================
[2026-06-12 12:56:56,683.683 INFO    ] Launching Daemon at Fri Jun 12 12:56:56 IST 2026
[2026-06-12 12:56:56,694.694 INFO    ] ================================================
[2026-06-12 12:56:57,059.059 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 12:56:57
[2026-06-12 12:56:57,371.371 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 12:56:57,508.508 INFO    ] Initializing speech engine...
[2026-06-12 12:56:57,517.517 INFO    ] 2026-06-12 12:56:57
[2026-06-12 12:56:57,723.723 INFO    ] 2026-06-12 12:56:57
[2026-06-12 12:56:57,752.752 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 12:56:57,939.939 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 12:56:57,948.948 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 12:56:58,078.078 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 12:56:58,143.143 INFO    ] time= 12/06/2026 12:56:58
[2026-06-12 12:56:58,171.171 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 12:56:58,173.173 INFO    ] Checking for existing commands in stream...
[2026-06-12 12:56:58,245.245 INFO    ] No existing commands found in stream
[2026-06-12 12:57:03,254.254 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 12:57:03,257.257 INFO    ] Waiting 2.69 seconds before fallback handling...
[2026-06-12 12:57:06,307.307 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 12:57:06,309.309 INFO    ] Checking for system updates...
[2026-06-12 12:57:06,330.330 INFO    ] 200
[2026-06-12 12:57:06,331.331 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:57:06,361.361 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 12:57:06,363.363 INFO    ] No update needed
[2026-06-12 12:57:06,364.364 INFO    ] Checking for camera pi updates...
[2026-06-12 12:57:06,385.385 INFO    ] 200
[2026-06-12 12:57:06,386.386 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:57:06,411.411 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 12:57:06,446.446 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 12:57:06,447.447 INFO    ] No camera update needed
[2026-06-12 12:57:06,448.448 INFO    ] Script finished. Safe exiting...
[2026-06-12 12:57:06,449.449 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 12:57:06,452.452 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 12:57:06,455.455 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 12:57:08,493.493 INFO    ] ================================================
[2026-06-12 12:57:08,514.514 INFO    ] Launching Daemon at Fri Jun 12 12:57:08 IST 2026
[2026-06-12 12:57:08,526.526 INFO    ] ================================================
[2026-06-12 12:57:08,862.862 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 12:57:08
[2026-06-12 12:57:09,177.177 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 12:57:09,311.311 INFO    ] Initializing speech engine...
[2026-06-12 12:57:09,323.323 INFO    ] 2026-06-12 12:57:09
[2026-06-12 12:57:09,529.529 INFO    ] 2026-06-12 12:57:09
[2026-06-12 12:57:09,559.559 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 12:57:09,732.732 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 12:57:09,746.746 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 12:57:09,882.882 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 12:57:09,946.946 INFO    ] time= 12/06/2026 12:57:09
[2026-06-12 12:57:09,973.973 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 12:57:09,975.975 INFO    ] Checking for existing commands in stream...
[2026-06-12 12:57:10,047.047 INFO    ] No existing commands found in stream
[2026-06-12 12:57:15,056.056 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 12:57:15,058.058 INFO    ] Waiting 0.25 seconds before fallback handling...
[2026-06-12 12:57:15,664.664 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 12:57:15,666.666 INFO    ] Checking for system updates...
[2026-06-12 12:57:15,686.686 INFO    ] 200
[2026-06-12 12:57:15,688.688 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:57:15,718.718 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 12:57:15,719.719 INFO    ] No update needed
[2026-06-12 12:57:15,721.721 INFO    ] Checking for camera pi updates...
[2026-06-12 12:57:15,741.741 INFO    ] 200
[2026-06-12 12:57:15,743.743 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:57:15,767.767 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 12:57:15,813.813 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 12:57:15,815.815 INFO    ] No camera update needed
[2026-06-12 12:57:15,816.816 INFO    ] Script finished. Safe exiting...
[2026-06-12 12:57:15,817.817 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 12:57:15,820.820 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 12:57:15,823.823 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 12:57:17,865.865 INFO    ] ================================================
[2026-06-12 12:57:17,881.881 INFO    ] Launching Daemon at Fri Jun 12 12:57:17 IST 2026
[2026-06-12 12:57:17,893.893 INFO    ] ================================================
[2026-06-12 12:57:18,229.229 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 12:57:18
[2026-06-12 12:57:18,546.546 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 12:57:18,689.689 INFO    ] Initializing speech engine...
[2026-06-12 12:57:18,695.695 INFO    ] 2026-06-12 12:57:18
[2026-06-12 12:57:18,897.897 INFO    ] 2026-06-12 12:57:18
[2026-06-12 12:57:18,926.926 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 12:57:19,108.108 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 12:57:19,112.112 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 12:57:19,247.247 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 12:57:19,313.313 INFO    ] time= 12/06/2026 12:57:19
[2026-06-12 12:57:19,337.337 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 12:57:19,343.343 INFO    ] Checking for existing commands in stream...
[2026-06-12 12:57:19,410.410 INFO    ] No existing commands found in stream
[2026-06-12 12:57:24,419.419 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 12:57:24,422.422 INFO    ] Waiting 2.49 seconds before fallback handling...
[2026-06-12 12:57:27,283.283 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 12:57:27,285.285 INFO    ] Checking for system updates...
[2026-06-12 12:57:27,306.306 INFO    ] 200
[2026-06-12 12:57:27,308.308 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:57:27,338.338 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 12:57:27,340.340 INFO    ] No update needed
[2026-06-12 12:57:27,341.341 INFO    ] Checking for camera pi updates...
[2026-06-12 12:57:27,363.363 INFO    ] 200
[2026-06-12 12:57:27,365.365 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:57:27,392.392 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 12:57:27,425.425 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 12:57:27,427.427 INFO    ] No camera update needed
[2026-06-12 12:57:27,428.428 INFO    ] Script finished. Safe exiting...
[2026-06-12 12:57:27,430.430 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 12:57:27,433.433 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 12:57:27,436.436 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 12:57:29,474.474 INFO    ] ================================================
[2026-06-12 12:57:29,490.490 INFO    ] Launching Daemon at Fri Jun 12 12:57:29 IST 2026
[2026-06-12 12:57:29,500.500 INFO    ] ================================================
[2026-06-12 12:57:29,876.876 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 12:57:29
[2026-06-12 12:57:30,216.216 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 12:57:30,370.370 INFO    ] Initializing speech engine...
[2026-06-12 12:57:30,373.373 INFO    ] 2026-06-12 12:57:30
[2026-06-12 12:57:30,580.580 INFO    ] 2026-06-12 12:57:30
[2026-06-12 12:57:30,610.610 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 12:57:30,792.792 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 12:57:30,796.796 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 12:57:30,938.938 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 12:57:30,999.999 INFO    ] time= 12/06/2026 12:57:30
[2026-06-12 12:57:31,023.023 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 12:57:31,030.030 INFO    ] Checking for existing commands in stream...
[2026-06-12 12:57:31,097.097 INFO    ] No existing commands found in stream
[2026-06-12 12:57:36,116.116 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 12:57:36,120.120 INFO    ] Waiting 1.20 seconds before fallback handling...
[2026-06-12 12:57:37,709.709 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 12:57:37,711.711 INFO    ] Checking for system updates...
[2026-06-12 12:57:37,733.733 INFO    ] 200
[2026-06-12 12:57:37,735.735 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:57:37,768.768 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 12:57:37,770.770 INFO    ] No update needed
[2026-06-12 12:57:37,771.771 INFO    ] Checking for camera pi updates...
[2026-06-12 12:57:37,791.791 INFO    ] 200
[2026-06-12 12:57:37,793.793 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:57:37,827.827 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 12:57:37,865.865 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 12:57:37,866.866 INFO    ] No camera update needed
[2026-06-12 12:57:37,867.867 INFO    ] Script finished. Safe exiting...
[2026-06-12 12:57:37,869.869 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 12:57:37,872.872 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 12:57:37,874.874 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 12:57:39,912.912 INFO    ] ================================================
[2026-06-12 12:57:39,927.927 INFO    ] Launching Daemon at Fri Jun 12 12:57:39 IST 2026
[2026-06-12 12:57:39,938.938 INFO    ] ================================================
[2026-06-12 12:57:40,290.290 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 12:57:40
[2026-06-12 12:57:40,601.601 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 12:57:40,729.729 INFO    ] Initializing speech engine...
[2026-06-12 12:57:40,734.734 INFO    ] 2026-06-12 12:57:40
[2026-06-12 12:57:40,949.949 INFO    ] 2026-06-12 12:57:40
[2026-06-12 12:57:40,977.977 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 12:57:41,160.160 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 12:57:41,163.163 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 12:57:41,290.290 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 12:57:41,346.346 INFO    ] time= 12/06/2026 12:57:41
[2026-06-12 12:57:41,379.379 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 12:57:41,389.389 INFO    ] Checking for existing commands in stream...
[2026-06-12 12:57:41,459.459 INFO    ] No existing commands found in stream
[2026-06-12 12:57:46,469.469 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 12:57:46,472.472 INFO    ] Waiting 3.05 seconds before fallback handling...
[2026-06-12 12:57:49,900.900 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 12:57:49,901.901 INFO    ] Checking for system updates...
[2026-06-12 12:57:49,922.922 INFO    ] 200
[2026-06-12 12:57:49,924.924 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:57:49,959.959 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 12:57:49,960.960 INFO    ] No update needed
[2026-06-12 12:57:49,962.962 INFO    ] Checking for camera pi updates...
[2026-06-12 12:57:49,982.982 INFO    ] 200
[2026-06-12 12:57:49,983.983 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:57:50,009.009 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 12:57:50,052.052 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 12:57:50,053.053 INFO    ] No camera update needed
[2026-06-12 12:57:50,055.055 INFO    ] Script finished. Safe exiting...
[2026-06-12 12:57:50,056.056 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 12:57:50,059.059 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 12:57:50,062.062 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 12:57:52,102.102 INFO    ] ================================================
[2026-06-12 12:57:52,117.117 INFO    ] Launching Daemon at Fri Jun 12 12:57:52 IST 2026
[2026-06-12 12:57:52,128.128 INFO    ] ================================================
[2026-06-12 12:57:52,494.494 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 12:57:52
[2026-06-12 12:57:52,836.836 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 12:57:52,990.990 INFO    ] Initializing speech engine...
[2026-06-12 12:57:52,996.996 INFO    ] 2026-06-12 12:57:52
[2026-06-12 12:57:53,210.210 INFO    ] 2026-06-12 12:57:53
[2026-06-12 12:57:53,238.238 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 12:57:53,427.427 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 12:57:53,436.436 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 12:57:53,584.584 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 12:57:53,639.639 INFO    ] time= 12/06/2026 12:57:53
[2026-06-12 12:57:53,662.662 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 12:57:53,668.668 INFO    ] Checking for existing commands in stream...
[2026-06-12 12:57:53,760.760 INFO    ] No existing commands found in stream
[2026-06-12 12:57:58,775.775 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 12:57:58,778.778 INFO    ] Waiting 3.64 seconds before fallback handling...
[2026-06-12 12:58:02,749.749 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 12:58:02,753.753 INFO    ] Checking for system updates...
[2026-06-12 12:58:02,780.780 INFO    ] 200
[2026-06-12 12:58:02,782.782 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:58:02,815.815 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 12:58:02,817.817 INFO    ] No update needed
[2026-06-12 12:58:02,819.819 INFO    ] Checking for camera pi updates...
[2026-06-12 12:58:02,840.840 INFO    ] 200
[2026-06-12 12:58:02,841.841 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:58:02,865.865 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 12:58:02,890.890 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 12:58:02,892.892 INFO    ] No camera update needed
[2026-06-12 12:58:02,898.898 INFO    ] Script finished. Safe exiting...
[2026-06-12 12:58:02,899.899 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 12:58:02,903.903 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 12:58:02,906.906 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 12:58:04,946.946 INFO    ] ================================================
[2026-06-12 12:58:04,962.962 INFO    ] Launching Daemon at Fri Jun 12 12:58:04 IST 2026
[2026-06-12 12:58:04,972.972 INFO    ] ================================================
[2026-06-12 12:58:05,314.314 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 12:58:05
[2026-06-12 12:58:05,625.625 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 12:58:05,758.758 INFO    ] Initializing speech engine...
[2026-06-12 12:58:05,761.761 INFO    ] 2026-06-12 12:58:05
[2026-06-12 12:58:05,997.997 INFO    ] 2026-06-12 12:58:05
[2026-06-12 12:58:06,026.026 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 12:58:06,210.210 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 12:58:06,213.213 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 12:58:06,346.346 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 12:58:06,407.407 INFO    ] time= 12/06/2026 12:58:06
[2026-06-12 12:58:06,440.440 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 12:58:06,446.446 INFO    ] Checking for existing commands in stream...
[2026-06-12 12:58:06,513.513 INFO    ] No existing commands found in stream
[2026-06-12 12:58:11,522.522 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 12:58:11,525.525 INFO    ] Waiting 3.88 seconds before fallback handling...
[2026-06-12 12:58:15,785.785 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 12:58:15,787.787 INFO    ] Checking for system updates...
[2026-06-12 12:58:15,808.808 INFO    ] 200
[2026-06-12 12:58:15,809.809 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:58:15,843.843 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 12:58:15,844.844 INFO    ] No update needed
[2026-06-12 12:58:15,845.845 INFO    ] Checking for camera pi updates...
[2026-06-12 12:58:15,868.868 INFO    ] 200
[2026-06-12 12:58:15,870.870 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:58:15,895.895 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 12:58:15,938.938 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 12:58:15,939.939 INFO    ] No camera update needed
[2026-06-12 12:58:15,941.941 INFO    ] Script finished. Safe exiting...
[2026-06-12 12:58:15,942.942 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 12:58:15,945.945 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 12:58:15,948.948 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 12:58:17,990.990 INFO    ] ================================================
[2026-06-12 12:58:18,009.009 INFO    ] Launching Daemon at Fri Jun 12 12:58:18 IST 2026
[2026-06-12 12:58:18,020.020 INFO    ] ================================================
[2026-06-12 12:58:18,364.364 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 12:58:18
[2026-06-12 12:58:18,679.679 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 12:58:18,813.813 INFO    ] Initializing speech engine...
[2026-06-12 12:58:18,816.816 INFO    ] 2026-06-12 12:58:18
[2026-06-12 12:58:19,045.045 INFO    ] 2026-06-12 12:58:19
[2026-06-12 12:58:19,076.076 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 12:58:19,208.208 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 12:58:19,257.257 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 12:58:19,419.419 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 12:58:19,472.472 INFO    ] time= 12/06/2026 12:58:19
[2026-06-12 12:58:19,511.511 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 12:58:19,528.528 INFO    ] Checking for existing commands in stream...
[2026-06-12 12:58:19,605.605 INFO    ] No existing commands found in stream
[2026-06-12 12:58:24,615.615 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 12:58:24,618.618 INFO    ] Waiting 3.90 seconds before fallback handling...
[2026-06-12 12:58:28,885.885 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 12:58:28,886.886 INFO    ] Checking for system updates...
[2026-06-12 12:58:28,909.909 INFO    ] 200
[2026-06-12 12:58:28,910.910 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:58:28,940.940 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 12:58:28,942.942 INFO    ] No update needed
[2026-06-12 12:58:28,943.943 INFO    ] Checking for camera pi updates...
[2026-06-12 12:58:28,963.963 INFO    ] 200
[2026-06-12 12:58:28,965.965 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:58:28,989.989 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 12:58:29,030.030 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 12:58:29,031.031 INFO    ] No camera update needed
[2026-06-12 12:58:29,033.033 INFO    ] Script finished. Safe exiting...
[2026-06-12 12:58:29,034.034 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 12:58:29,037.037 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 12:58:29,040.040 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 12:58:31,080.080 INFO    ] ================================================
[2026-06-12 12:58:31,095.095 INFO    ] Launching Daemon at Fri Jun 12 12:58:31 IST 2026
[2026-06-12 12:58:31,106.106 INFO    ] ================================================
[2026-06-12 12:58:31,476.476 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 12:58:31
[2026-06-12 12:58:31,798.798 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 12:58:31,944.944 INFO    ] Initializing speech engine...
[2026-06-12 12:58:31,953.953 INFO    ] 2026-06-12 12:58:31
[2026-06-12 12:58:32,150.150 INFO    ] 2026-06-12 12:58:32
[2026-06-12 12:58:32,195.195 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 12:58:32,354.354 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 12:58:32,425.425 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 12:58:32,575.575 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 12:58:32,621.621 INFO    ] time= 12/06/2026 12:58:32
[2026-06-12 12:58:32,661.661 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 12:58:32,684.684 INFO    ] Checking for existing commands in stream...
[2026-06-12 12:58:32,786.786 INFO    ] No existing commands found in stream
[2026-06-12 12:58:37,795.795 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 12:58:37,798.798 INFO    ] Waiting 3.42 seconds before fallback handling...
[2026-06-12 12:58:41,577.577 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 12:58:41,578.578 INFO    ] Checking for system updates...
[2026-06-12 12:58:41,599.599 INFO    ] 200
[2026-06-12 12:58:41,600.600 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:58:41,631.631 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 12:58:41,632.632 INFO    ] No update needed
[2026-06-12 12:58:41,634.634 INFO    ] Checking for camera pi updates...
[2026-06-12 12:58:41,653.653 INFO    ] 200
[2026-06-12 12:58:41,655.655 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:58:41,678.678 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 12:58:41,715.715 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 12:58:41,716.716 INFO    ] No camera update needed
[2026-06-12 12:58:41,718.718 INFO    ] Script finished. Safe exiting...
[2026-06-12 12:58:41,719.719 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 12:58:41,722.722 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 12:58:41,725.725 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 12:58:43,764.764 INFO    ] ================================================
[2026-06-12 12:58:43,779.779 INFO    ] Launching Daemon at Fri Jun 12 12:58:43 IST 2026
[2026-06-12 12:58:43,790.790 INFO    ] ================================================
[2026-06-12 12:58:44,148.148 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 12:58:44
[2026-06-12 12:58:44,462.462 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 12:58:44,592.592 INFO    ] Initializing speech engine...
[2026-06-12 12:58:44,597.597 INFO    ] 2026-06-12 12:58:44
[2026-06-12 12:58:44,815.815 INFO    ] 2026-06-12 12:58:44
[2026-06-12 12:58:44,845.845 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 12:58:45,031.031 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 12:58:45,034.034 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 12:58:45,170.170 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 12:58:45,236.236 INFO    ] time= 12/06/2026 12:58:45
[2026-06-12 12:58:45,265.265 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 12:58:45,271.271 INFO    ] Checking for existing commands in stream...
[2026-06-12 12:58:45,363.363 INFO    ] No existing commands found in stream
[2026-06-12 12:58:50,376.376 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 12:58:50,379.379 INFO    ] Waiting 0.21 seconds before fallback handling...
[2026-06-12 12:58:50,917.917 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 12:58:50,918.918 INFO    ] Checking for system updates...
[2026-06-12 12:58:50,941.941 INFO    ] 200
[2026-06-12 12:58:50,942.942 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:58:50,975.975 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 12:58:50,977.977 INFO    ] No update needed
[2026-06-12 12:58:50,978.978 INFO    ] Checking for camera pi updates...
[2026-06-12 12:58:50,998.998 INFO    ] 200
[2026-06-12 12:58:51,000.000 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:58:51,025.025 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 12:58:51,176.176 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 12:58:51,178.178 INFO    ] No camera update needed
[2026-06-12 12:58:51,179.179 INFO    ] Script finished. Safe exiting...
[2026-06-12 12:58:51,181.181 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 12:58:51,184.184 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 12:58:51,187.187 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 12:58:53,227.227 INFO    ] ================================================
[2026-06-12 12:58:53,242.242 INFO    ] Launching Daemon at Fri Jun 12 12:58:53 IST 2026
[2026-06-12 12:58:53,253.253 INFO    ] ================================================
[2026-06-12 12:58:53,585.585 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 12:58:53
[2026-06-12 12:58:53,901.901 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 12:58:54,031.031 INFO    ] Initializing speech engine...
[2026-06-12 12:58:54,035.035 INFO    ] 2026-06-12 12:58:54
[2026-06-12 12:58:54,255.255 INFO    ] 2026-06-12 12:58:54
[2026-06-12 12:58:54,284.284 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 12:58:54,467.467 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 12:58:54,471.471 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 12:58:54,627.627 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 12:58:54,675.675 INFO    ] time= 12/06/2026 12:58:54
[2026-06-12 12:58:54,698.698 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 12:58:54,704.704 INFO    ] Checking for existing commands in stream...
[2026-06-12 12:58:54,771.771 INFO    ] No existing commands found in stream
[2026-06-12 12:58:59,780.780 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 12:58:59,783.783 INFO    ] Waiting 3.02 seconds before fallback handling...
[2026-06-12 12:59:03,121.121 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 12:59:03,123.123 INFO    ] Checking for system updates...
[2026-06-12 12:59:03,143.143 INFO    ] 200
[2026-06-12 12:59:03,148.148 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:59:03,188.188 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 12:59:03,189.189 INFO    ] No update needed
[2026-06-12 12:59:03,191.191 INFO    ] Checking for camera pi updates...
[2026-06-12 12:59:03,211.211 INFO    ] 200
[2026-06-12 12:59:03,212.212 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:59:03,236.236 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 12:59:03,258.258 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 12:59:03,259.259 INFO    ] No camera update needed
[2026-06-12 12:59:03,260.260 INFO    ] Script finished. Safe exiting...
[2026-06-12 12:59:03,262.262 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 12:59:03,265.265 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 12:59:03,267.267 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 12:59:05,308.308 INFO    ] ================================================
[2026-06-12 12:59:05,324.324 INFO    ] Launching Daemon at Fri Jun 12 12:59:05 IST 2026
[2026-06-12 12:59:05,335.335 INFO    ] ================================================
[2026-06-12 12:59:05,687.687 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 12:59:05
[2026-06-12 12:59:06,028.028 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 12:59:06,158.158 INFO    ] Initializing speech engine...
[2026-06-12 12:59:06,163.163 INFO    ] 2026-06-12 12:59:06
[2026-06-12 12:59:06,380.380 INFO    ] 2026-06-12 12:59:06
[2026-06-12 12:59:06,409.409 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 12:59:06,593.593 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 12:59:06,597.597 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 12:59:06,727.727 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 12:59:06,783.783 INFO    ] time= 12/06/2026 12:59:06
[2026-06-12 12:59:06,822.822 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 12:59:06,827.827 INFO    ] Checking for existing commands in stream...
[2026-06-12 12:59:06,899.899 INFO    ] No existing commands found in stream
[2026-06-12 12:59:11,908.908 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 12:59:11,911.911 INFO    ] Waiting 2.59 seconds before fallback handling...
[2026-06-12 12:59:14,898.898 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 12:59:14,901.901 INFO    ] Checking for system updates...
[2026-06-12 12:59:14,938.938 INFO    ] 200
[2026-06-12 12:59:14,940.940 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:59:14,993.993 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 12:59:14,996.996 INFO    ] No update needed
[2026-06-12 12:59:14,998.998 INFO    ] Checking for camera pi updates...
[2026-06-12 12:59:15,034.034 INFO    ] 200
[2026-06-12 12:59:15,036.036 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:59:15,061.061 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 12:59:15,103.103 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 12:59:15,105.105 INFO    ] No camera update needed
[2026-06-12 12:59:15,106.106 INFO    ] Script finished. Safe exiting...
[2026-06-12 12:59:15,107.107 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 12:59:15,110.110 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 12:59:15,113.113 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 12:59:17,153.153 INFO    ] ================================================
[2026-06-12 12:59:17,169.169 INFO    ] Launching Daemon at Fri Jun 12 12:59:17 IST 2026
[2026-06-12 12:59:17,180.180 INFO    ] ================================================
[2026-06-12 12:59:17,542.542 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 12:59:17
[2026-06-12 12:59:17,855.855 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 12:59:17,988.988 INFO    ] Initializing speech engine...
[2026-06-12 12:59:18,001.001 INFO    ] 2026-06-12 12:59:17
[2026-06-12 12:59:18,210.210 INFO    ] 2026-06-12 12:59:18
[2026-06-12 12:59:18,239.239 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 12:59:18,363.363 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 12:59:18,421.421 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 12:59:18,564.564 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 12:59:18,634.634 INFO    ] time= 12/06/2026 12:59:18
[2026-06-12 12:59:18,658.658 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 12:59:18,665.665 INFO    ] Checking for existing commands in stream...
[2026-06-12 12:59:18,732.732 INFO    ] No existing commands found in stream
[2026-06-12 12:59:23,741.741 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 12:59:23,744.744 INFO    ] Waiting 1.93 seconds before fallback handling...
[2026-06-12 12:59:26,040.040 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 12:59:26,041.041 INFO    ] Checking for system updates...
[2026-06-12 12:59:26,062.062 INFO    ] 200
[2026-06-12 12:59:26,064.064 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:59:26,094.094 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 12:59:26,095.095 INFO    ] No update needed
[2026-06-12 12:59:26,096.096 INFO    ] Checking for camera pi updates...
[2026-06-12 12:59:26,118.118 INFO    ] 200
[2026-06-12 12:59:26,119.119 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:59:26,144.144 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 12:59:26,180.180 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 12:59:26,182.182 INFO    ] No camera update needed
[2026-06-12 12:59:26,183.183 INFO    ] Script finished. Safe exiting...
[2026-06-12 12:59:26,184.184 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 12:59:26,187.187 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 12:59:26,190.190 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 12:59:28,226.226 INFO    ] ================================================
[2026-06-12 12:59:28,241.241 INFO    ] Launching Daemon at Fri Jun 12 12:59:28 IST 2026
[2026-06-12 12:59:28,248.248 INFO    ] ================================================
[2026-06-12 12:59:28,570.570 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 12:59:28
[2026-06-12 12:59:28,886.886 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 12:59:29,019.019 INFO    ] Initializing speech engine...
[2026-06-12 12:59:29,026.026 INFO    ] 2026-06-12 12:59:29
[2026-06-12 12:59:29,239.239 INFO    ] 2026-06-12 12:59:29
[2026-06-12 12:59:29,268.268 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 12:59:29,454.454 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 12:59:29,462.462 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 12:59:29,592.592 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 12:59:29,656.656 INFO    ] time= 12/06/2026 12:59:29
[2026-06-12 12:59:29,682.682 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 12:59:29,689.689 INFO    ] Checking for existing commands in stream...
[2026-06-12 12:59:29,756.756 INFO    ] No existing commands found in stream
[2026-06-12 12:59:34,764.764 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 12:59:34,767.767 INFO    ] Waiting 1.69 seconds before fallback handling...
[2026-06-12 12:59:36,808.808 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 12:59:36,809.809 INFO    ] Checking for system updates...
[2026-06-12 12:59:36,831.831 INFO    ] 200
[2026-06-12 12:59:36,833.833 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:59:36,863.863 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 12:59:36,864.864 INFO    ] No update needed
[2026-06-12 12:59:36,866.866 INFO    ] Checking for camera pi updates...
[2026-06-12 12:59:36,887.887 INFO    ] 200
[2026-06-12 12:59:36,889.889 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:59:36,912.912 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 12:59:36,950.950 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 12:59:36,951.951 INFO    ] No camera update needed
[2026-06-12 12:59:36,953.953 INFO    ] Script finished. Safe exiting...
[2026-06-12 12:59:36,954.954 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 12:59:36,957.957 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 12:59:36,960.960 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 12:59:39,000.000 INFO    ] ================================================
[2026-06-12 12:59:39,015.015 INFO    ] Launching Daemon at Fri Jun 12 12:59:39 IST 2026
[2026-06-12 12:59:39,026.026 INFO    ] ================================================
[2026-06-12 12:59:39,355.355 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 12:59:39
[2026-06-12 12:59:39,665.665 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 12:59:39,800.800 INFO    ] Initializing speech engine...
[2026-06-12 12:59:39,813.813 INFO    ] 2026-06-12 12:59:39
[2026-06-12 12:59:40,015.015 INFO    ] 2026-06-12 12:59:39
[2026-06-12 12:59:40,044.044 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 12:59:40,227.227 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 12:59:40,230.230 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 12:59:40,365.365 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 12:59:40,424.424 INFO    ] time= 12/06/2026 12:59:40
[2026-06-12 12:59:40,455.455 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 12:59:40,462.462 INFO    ] Checking for existing commands in stream...
[2026-06-12 12:59:40,552.552 INFO    ] No existing commands found in stream
[2026-06-12 12:59:45,561.561 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 12:59:45,564.564 INFO    ] Waiting 2.39 seconds before fallback handling...
[2026-06-12 12:59:48,302.302 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 12:59:48,304.304 INFO    ] Checking for system updates...
[2026-06-12 12:59:48,324.324 INFO    ] 200
[2026-06-12 12:59:48,333.333 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:59:48,373.373 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 12:59:48,374.374 INFO    ] No update needed
[2026-06-12 12:59:48,375.375 INFO    ] Checking for camera pi updates...
[2026-06-12 12:59:48,394.394 INFO    ] 200
[2026-06-12 12:59:48,396.396 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 12:59:48,421.421 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 12:59:48,460.460 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 12:59:48,461.461 INFO    ] No camera update needed
[2026-06-12 12:59:48,462.462 INFO    ] Script finished. Safe exiting...
[2026-06-12 12:59:48,464.464 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 12:59:48,466.466 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 12:59:48,469.469 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 12:59:50,508.508 INFO    ] ================================================
[2026-06-12 12:59:50,524.524 INFO    ] Launching Daemon at Fri Jun 12 12:59:50 IST 2026
[2026-06-12 12:59:50,534.534 INFO    ] ================================================
[2026-06-12 12:59:50,905.905 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 12:59:50
[2026-06-12 12:59:51,220.220 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 12:59:51,352.352 INFO    ] Initializing speech engine...
[2026-06-12 12:59:51,357.357 INFO    ] 2026-06-12 12:59:51
[2026-06-12 12:59:51,584.584 INFO    ] 2026-06-12 12:59:51
[2026-06-12 12:59:51,614.614 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 12:59:51,811.811 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 12:59:51,815.815 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 12:59:51,957.957 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 12:59:52,010.010 INFO    ] time= 12/06/2026 12:59:51
[2026-06-12 12:59:52,038.038 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 12:59:52,060.060 INFO    ] Checking for existing commands in stream...
[2026-06-12 12:59:52,135.135 INFO    ] No existing commands found in stream
[2026-06-12 12:59:57,145.145 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 12:59:57,148.148 INFO    ] Waiting 3.20 seconds before fallback handling...
[2026-06-12 13:00:00,743.743 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 13:00:00,745.745 INFO    ] Checking for system updates...
[2026-06-12 13:00:00,767.767 INFO    ] 200
[2026-06-12 13:00:00,769.769 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 13:00:00,799.799 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 13:00:00,801.801 INFO    ] No update needed
[2026-06-12 13:00:00,802.802 INFO    ] Checking for camera pi updates...
[2026-06-12 13:00:00,823.823 INFO    ] 200
[2026-06-12 13:00:00,825.825 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 13:00:00,850.850 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 13:00:00,886.886 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 13:00:00,888.888 INFO    ] No camera update needed
[2026-06-12 13:00:00,889.889 INFO    ] Script finished. Safe exiting...
[2026-06-12 13:00:00,891.891 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 13:00:00,894.894 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 13:00:00,897.897 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 13:00:02,974.974 INFO    ] ================================================
[2026-06-12 13:00:03,012.012 INFO    ] Launching Daemon at Fri Jun 12 13:00:03 IST 2026
[2026-06-12 13:00:03,052.052 INFO    ] ================================================
[2026-06-12 13:00:03,829.829 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 13:00:03
[2026-06-12 13:00:04,180.180 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 13:00:04,337.337 INFO    ] Initializing speech engine...
[2026-06-12 13:00:04,342.342 INFO    ] 2026-06-12 13:00:04
[2026-06-12 13:00:04,553.553 INFO    ] 2026-06-12 13:00:04
[2026-06-12 13:00:04,582.582 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 13:00:04,706.706 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 13:00:04,765.765 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 13:00:04,917.917 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 13:00:04,980.980 INFO    ] time= 12/06/2026 13:00:04
[2026-06-12 13:00:05,004.004 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 13:00:05,011.011 INFO    ] Checking for existing commands in stream...
[2026-06-12 13:00:05,079.079 INFO    ] No existing commands found in stream
[2026-06-12 13:00:10,089.089 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 13:00:10,092.092 INFO    ] Waiting 2.86 seconds before fallback handling...
[2026-06-12 13:00:13,314.314 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 13:00:13,316.316 INFO    ] Checking for system updates...
[2026-06-12 13:00:13,347.347 INFO    ] 200
[2026-06-12 13:00:13,349.349 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 13:00:13,387.387 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 13:00:13,389.389 INFO    ] No update needed
[2026-06-12 13:00:13,391.391 INFO    ] Checking for camera pi updates...
[2026-06-12 13:00:13,418.418 INFO    ] 200
[2026-06-12 13:00:13,419.419 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 13:00:13,458.458 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 13:00:13,496.496 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 13:00:13,498.498 INFO    ] No camera update needed
[2026-06-12 13:00:13,500.500 INFO    ] Script finished. Safe exiting...
[2026-06-12 13:00:13,502.502 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 13:00:13,506.506 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 13:00:13,510.510 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 13:00:15,543.543 INFO    ] ================================================
[2026-06-12 13:00:15,558.558 INFO    ] Launching Daemon at Fri Jun 12 13:00:15 IST 2026
[2026-06-12 13:00:15,569.569 INFO    ] ================================================
[2026-06-12 13:00:15,905.905 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 13:00:15
[2026-06-12 13:00:16,223.223 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 13:00:16,359.359 INFO    ] Initializing speech engine...
[2026-06-12 13:00:16,363.363 INFO    ] 2026-06-12 13:00:16
[2026-06-12 13:00:16,593.593 INFO    ] 2026-06-12 13:00:16
[2026-06-12 13:00:16,623.623 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 13:00:16,823.823 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 13:00:16,827.827 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 13:00:16,969.969 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 13:00:17,032.032 INFO    ] time= 12/06/2026 13:00:16
[2026-06-12 13:00:17,073.073 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 13:00:17,075.075 INFO    ] Checking for existing commands in stream...
[2026-06-12 13:00:17,152.152 INFO    ] No existing commands found in stream
[2026-06-12 13:00:22,161.161 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 13:00:22,164.164 INFO    ] Waiting 1.14 seconds before fallback handling...
[2026-06-12 13:00:23,653.653 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 13:00:23,654.654 INFO    ] Checking for system updates...
[2026-06-12 13:00:23,675.675 INFO    ] 200
[2026-06-12 13:00:23,676.676 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 13:00:23,706.706 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 13:00:23,708.708 INFO    ] No update needed
[2026-06-12 13:00:23,709.709 INFO    ] Checking for camera pi updates...
[2026-06-12 13:00:23,729.729 INFO    ] 200
[2026-06-12 13:00:23,731.731 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 13:00:23,756.756 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 13:00:23,802.802 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 13:00:23,804.804 INFO    ] No camera update needed
[2026-06-12 13:00:23,805.805 INFO    ] Script finished. Safe exiting...
[2026-06-12 13:00:23,807.807 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 13:00:23,810.810 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 13:00:23,813.813 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 13:00:25,853.853 INFO    ] ================================================
[2026-06-12 13:00:25,869.869 INFO    ] Launching Daemon at Fri Jun 12 13:00:25 IST 2026
[2026-06-12 13:00:25,881.881 INFO    ] ================================================
[2026-06-12 13:00:26,239.239 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 13:00:26
[2026-06-12 13:00:26,574.574 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 13:00:26,725.725 INFO    ] Initializing speech engine...
[2026-06-12 13:00:26,730.730 INFO    ] 2026-06-12 13:00:26
[2026-06-12 13:00:26,937.937 INFO    ] 2026-06-12 13:00:26
[2026-06-12 13:00:26,966.966 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 13:00:27,150.150 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 13:00:27,159.159 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 13:00:27,289.289 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 13:00:27,353.353 INFO    ] time= 12/06/2026 13:00:27
[2026-06-12 13:00:27,380.380 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 13:00:27,387.387 INFO    ] Checking for existing commands in stream...
[2026-06-12 13:00:27,453.453 INFO    ] No existing commands found in stream
[2026-06-12 13:00:32,478.478 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 13:00:32,481.481 INFO    ] Waiting 2.27 seconds before fallback handling...
[2026-06-12 13:00:35,122.122 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 13:00:35,124.124 INFO    ] Checking for system updates...
[2026-06-12 13:00:35,146.146 INFO    ] 200
[2026-06-12 13:00:35,147.147 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 13:00:35,180.180 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 13:00:35,181.181 INFO    ] No update needed
[2026-06-12 13:00:35,183.183 INFO    ] Checking for camera pi updates...
[2026-06-12 13:00:35,202.202 INFO    ] 200
[2026-06-12 13:00:35,204.204 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 13:00:35,227.227 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 13:00:35,267.267 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 13:00:35,268.268 INFO    ] No camera update needed
[2026-06-12 13:00:35,270.270 INFO    ] Script finished. Safe exiting...
[2026-06-12 13:00:35,272.272 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 13:00:35,275.275 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 13:00:35,278.278 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 13:00:37,318.318 INFO    ] ================================================
[2026-06-12 13:00:37,334.334 INFO    ] Launching Daemon at Fri Jun 12 13:00:37 IST 2026
[2026-06-12 13:00:37,344.344 INFO    ] ================================================
[2026-06-12 13:00:37,681.681 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 13:00:37
[2026-06-12 13:00:37,997.997 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 13:00:38,131.131 INFO    ] Initializing speech engine...
[2026-06-12 13:00:38,135.135 INFO    ] 2026-06-12 13:00:38
[2026-06-12 13:00:38,363.363 INFO    ] 2026-06-12 13:00:38
[2026-06-12 13:00:38,394.394 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 13:00:38,588.588 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 13:00:38,591.591 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 13:00:38,727.727 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 13:00:38,781.781 INFO    ] time= 12/06/2026 13:00:38
[2026-06-12 13:00:38,818.818 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 13:00:38,824.824 INFO    ] Checking for existing commands in stream...
[2026-06-12 13:00:38,891.891 INFO    ] No existing commands found in stream
[2026-06-12 13:00:43,903.903 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 13:00:43,905.905 INFO    ] Waiting 3.54 seconds before fallback handling...
[2026-06-12 13:00:47,846.846 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 13:00:47,849.849 INFO    ] Checking for system updates...
[2026-06-12 13:00:47,886.886 INFO    ] 200
[2026-06-12 13:00:47,888.888 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 13:00:47,943.943 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 13:00:47,945.945 INFO    ] No update needed
[2026-06-12 13:00:47,947.947 INFO    ] Checking for camera pi updates...
[2026-06-12 13:00:47,977.977 INFO    ] 200
[2026-06-12 13:00:47,979.979 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 13:00:48,002.002 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 13:00:48,043.043 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 13:00:48,044.044 INFO    ] No camera update needed
[2026-06-12 13:00:48,046.046 INFO    ] Script finished. Safe exiting...
[2026-06-12 13:00:48,047.047 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 13:00:48,050.050 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 13:00:48,053.053 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 13:00:50,092.092 INFO    ] ================================================
[2026-06-12 13:00:50,109.109 INFO    ] Launching Daemon at Fri Jun 12 13:00:50 IST 2026
[2026-06-12 13:00:50,120.120 INFO    ] ================================================
[2026-06-12 13:00:50,496.496 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 13:00:50
[2026-06-12 13:00:50,832.832 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 13:00:50,978.978 INFO    ] Initializing speech engine...
[2026-06-12 13:00:50,985.985 INFO    ] 2026-06-12 13:00:50
[2026-06-12 13:00:51,199.199 INFO    ] 2026-06-12 13:00:51
[2026-06-12 13:00:51,228.228 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 13:00:51,415.415 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 13:00:51,424.424 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 13:00:51,553.553 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 13:00:51,614.614 INFO    ] time= 12/06/2026 13:00:51
[2026-06-12 13:00:51,647.647 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 13:00:51,654.654 INFO    ] Checking for existing commands in stream...
[2026-06-12 13:00:51,722.722 INFO    ] No existing commands found in stream
[2026-06-12 13:00:56,732.732 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 13:00:56,735.735 INFO    ] Waiting 2.50 seconds before fallback handling...
[2026-06-12 13:00:59,629.629 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 13:00:59,630.630 INFO    ] Checking for system updates...
[2026-06-12 13:00:59,651.651 INFO    ] 200
[2026-06-12 13:00:59,653.653 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 13:00:59,683.683 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 13:00:59,685.685 INFO    ] No update needed
[2026-06-12 13:00:59,686.686 INFO    ] Checking for camera pi updates...
[2026-06-12 13:00:59,707.707 INFO    ] 200
[2026-06-12 13:00:59,709.709 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 13:00:59,735.735 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 13:00:59,875.875 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 13:00:59,876.876 INFO    ] No camera update needed
[2026-06-12 13:00:59,877.877 INFO    ] Script finished. Safe exiting...
[2026-06-12 13:00:59,879.879 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 13:00:59,882.882 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 13:00:59,885.885 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 13:01:01,922.922 INFO    ] ================================================
[2026-06-12 13:01:01,946.946 INFO    ] Launching Daemon at Fri Jun 12 13:01:01 IST 2026
[2026-06-12 13:01:01,971.971 INFO    ] ================================================
[2026-06-12 13:01:02,349.349 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 13:01:02
[2026-06-12 13:01:02,710.710 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 13:01:02,862.862 INFO    ] Initializing speech engine...
[2026-06-12 13:01:02,868.868 INFO    ] 2026-06-12 13:01:02
[2026-06-12 13:01:03,069.069 INFO    ] 2026-06-12 13:01:03
[2026-06-12 13:01:03,112.112 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 13:01:03,260.260 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 13:01:03,304.304 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 13:01:03,465.465 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 13:01:03,529.529 INFO    ] time= 12/06/2026 13:01:03
[2026-06-12 13:01:03,558.558 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 13:01:03,559.559 INFO    ] Checking for existing commands in stream...
[2026-06-12 13:01:03,633.633 INFO    ] No existing commands found in stream
[2026-06-12 13:01:08,642.642 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 13:01:08,645.645 INFO    ] Waiting 1.42 seconds before fallback handling...
[2026-06-12 13:01:10,435.435 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 13:01:10,437.437 INFO    ] Checking for system updates...
[2026-06-12 13:01:10,458.458 INFO    ] 200
[2026-06-12 13:01:10,459.459 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 13:01:10,492.492 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 13:01:10,494.494 INFO    ] No update needed
[2026-06-12 13:01:10,495.495 INFO    ] Checking for camera pi updates...
[2026-06-12 13:01:10,515.515 INFO    ] 200
[2026-06-12 13:01:10,516.516 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 13:01:10,539.539 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 13:01:10,581.581 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 13:01:10,582.582 INFO    ] No camera update needed
[2026-06-12 13:01:10,584.584 INFO    ] Script finished. Safe exiting...
[2026-06-12 13:01:10,585.585 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 13:01:10,588.588 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 13:01:10,592.592 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 13:01:12,632.632 INFO    ] ================================================
[2026-06-12 13:01:12,647.647 INFO    ] Launching Daemon at Fri Jun 12 13:01:12 IST 2026
[2026-06-12 13:01:12,658.658 INFO    ] ================================================
[2026-06-12 13:01:12,992.992 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 13:01:12
[2026-06-12 13:01:13,305.305 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 13:01:13,447.447 INFO    ] Initializing speech engine...
[2026-06-12 13:01:13,452.452 INFO    ] 2026-06-12 13:01:13
[2026-06-12 13:01:13,657.657 INFO    ] 2026-06-12 13:01:13
[2026-06-12 13:01:13,687.687 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 13:01:13,869.869 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 13:01:13,879.879 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 13:01:14,005.005 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 13:01:14,067.067 INFO    ] time= 12/06/2026 13:01:14
[2026-06-12 13:01:14,099.099 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 13:01:14,101.101 INFO    ] Checking for existing commands in stream...
[2026-06-12 13:01:14,172.172 INFO    ] No existing commands found in stream
[2026-06-12 13:01:19,181.181 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 13:01:19,184.184 INFO    ] Waiting 0.90 seconds before fallback handling...
[2026-06-12 13:01:20,402.402 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 13:01:20,403.403 INFO    ] Checking for system updates...
[2026-06-12 13:01:20,424.424 INFO    ] 200
[2026-06-12 13:01:20,425.425 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 13:01:20,458.458 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 13:01:20,459.459 INFO    ] No update needed
[2026-06-12 13:01:20,461.461 INFO    ] Checking for camera pi updates...
[2026-06-12 13:01:20,483.483 INFO    ] 200
[2026-06-12 13:01:20,484.484 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 13:01:20,507.507 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 13:01:20,548.548 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 13:01:20,550.550 INFO    ] No camera update needed
[2026-06-12 13:01:20,551.551 INFO    ] Script finished. Safe exiting...
[2026-06-12 13:01:20,553.553 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 13:01:20,556.556 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 13:01:20,559.559 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 13:01:22,598.598 INFO    ] ================================================
[2026-06-12 13:01:22,614.614 INFO    ] Launching Daemon at Fri Jun 12 13:01:22 IST 2026
[2026-06-12 13:01:22,624.624 INFO    ] ================================================
[2026-06-12 13:01:22,994.994 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 13:01:22
[2026-06-12 13:01:23,306.306 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 13:01:23,443.443 INFO    ] Initializing speech engine...
[2026-06-12 13:01:23,453.453 INFO    ] 2026-06-12 13:01:23
[2026-06-12 13:01:23,657.657 INFO    ] 2026-06-12 13:01:23
[2026-06-12 13:01:23,686.686 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 13:01:23,872.872 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 13:01:23,881.881 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 13:01:24,008.008 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 13:01:24,064.064 INFO    ] time= 12/06/2026 13:01:24
[2026-06-12 13:01:24,099.099 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 13:01:24,104.104 INFO    ] Checking for existing commands in stream...
[2026-06-12 13:01:24,176.176 INFO    ] No existing commands found in stream
[2026-06-12 13:01:29,189.189 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 13:01:29,192.192 INFO    ] Waiting 1.29 seconds before fallback handling...
[2026-06-12 13:01:30,831.831 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 13:01:30,832.832 INFO    ] Checking for system updates...
[2026-06-12 13:01:30,853.853 INFO    ] 200
[2026-06-12 13:01:30,854.854 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 13:01:30,885.885 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 13:01:30,886.886 INFO    ] No update needed
[2026-06-12 13:01:30,887.887 INFO    ] Checking for camera pi updates...
[2026-06-12 13:01:30,906.906 INFO    ] 200
[2026-06-12 13:01:30,908.908 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 13:01:30,932.932 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 13:01:30,969.969 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 13:01:30,970.970 INFO    ] No camera update needed
[2026-06-12 13:01:30,972.972 INFO    ] Script finished. Safe exiting...
[2026-06-12 13:01:30,973.973 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 13:01:30,976.976 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 13:01:30,978.978 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 13:01:33,019.019 INFO    ] ================================================
[2026-06-12 13:01:33,035.035 INFO    ] Launching Daemon at Fri Jun 12 13:01:33 IST 2026
[2026-06-12 13:01:33,046.046 INFO    ] ================================================
[2026-06-12 13:01:33,411.411 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 13:01:33
[2026-06-12 13:01:33,723.723 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 13:01:33,855.855 INFO    ] Initializing speech engine...
[2026-06-12 13:01:33,859.859 INFO    ] 2026-06-12 13:01:33
[2026-06-12 13:01:34,079.079 INFO    ] 2026-06-12 13:01:34
[2026-06-12 13:01:34,106.106 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 13:01:34,293.293 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 13:01:34,303.303 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 13:01:34,434.434 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 13:01:34,502.502 INFO    ] time= 12/06/2026 13:01:34
[2026-06-12 13:01:34,526.526 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 13:01:34,533.533 INFO    ] Checking for existing commands in stream...
[2026-06-12 13:01:34,601.601 INFO    ] No existing commands found in stream
[2026-06-12 13:01:39,610.610 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 13:01:39,613.613 INFO    ] Waiting 2.17 seconds before fallback handling...
[2026-06-12 13:01:42,172.172 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 13:01:42,174.174 INFO    ] Checking for system updates...
[2026-06-12 13:01:42,195.195 INFO    ] 200
[2026-06-12 13:01:42,197.197 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 13:01:42,227.227 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 13:01:42,228.228 INFO    ] No update needed
[2026-06-12 13:01:42,230.230 INFO    ] Checking for camera pi updates...
[2026-06-12 13:01:42,250.250 INFO    ] 200
[2026-06-12 13:01:42,251.251 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 13:01:42,275.275 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 13:01:42,319.319 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 13:01:42,321.321 INFO    ] No camera update needed
[2026-06-12 13:01:42,322.322 INFO    ] Script finished. Safe exiting...
[2026-06-12 13:01:42,324.324 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 13:01:42,327.327 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 13:01:42,330.330 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 13:01:44,370.370 INFO    ] ================================================
[2026-06-12 13:01:44,386.386 INFO    ] Launching Daemon at Fri Jun 12 13:01:44 IST 2026
[2026-06-12 13:01:44,397.397 INFO    ] ================================================
[2026-06-12 13:01:44,727.727 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 13:01:44
[2026-06-12 13:01:45,043.043 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 13:01:45,174.174 INFO    ] Initializing speech engine...
[2026-06-12 13:01:45,187.187 INFO    ] 2026-06-12 13:01:45
[2026-06-12 13:01:45,395.395 INFO    ] 2026-06-12 13:01:45
[2026-06-12 13:01:45,424.424 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 13:01:45,607.607 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 13:01:45,617.617 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 13:01:45,746.746 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 13:01:45,810.810 INFO    ] time= 12/06/2026 13:01:45
[2026-06-12 13:01:45,837.837 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 13:01:45,839.839 INFO    ] Checking for existing commands in stream...
[2026-06-12 13:01:45,910.910 INFO    ] No existing commands found in stream
[2026-06-12 13:01:50,939.939 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 13:01:50,942.942 INFO    ] Waiting 2.52 seconds before fallback handling...
[2026-06-12 13:01:53,856.856 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 13:01:53,858.858 INFO    ] Checking for system updates...
[2026-06-12 13:01:53,880.880 INFO    ] 200
[2026-06-12 13:01:53,881.881 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 13:01:53,911.911 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 13:01:53,913.913 INFO    ] No update needed
[2026-06-12 13:01:53,914.914 INFO    ] Checking for camera pi updates...
[2026-06-12 13:01:53,935.935 INFO    ] 200
[2026-06-12 13:01:53,936.936 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 13:01:53,962.962 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 13:01:53,998.998 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 13:01:54,000.000 INFO    ] No camera update needed
[2026-06-12 13:01:54,001.001 INFO    ] Script finished. Safe exiting...
[2026-06-12 13:01:54,003.003 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 13:01:54,006.006 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 13:01:54,009.009 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 13:01:56,050.050 INFO    ] ================================================
[2026-06-12 13:01:56,065.065 INFO    ] Launching Daemon at Fri Jun 12 13:01:56 IST 2026
[2026-06-12 13:01:56,075.075 INFO    ] ================================================
[2026-06-12 13:01:56,417.417 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 13:01:56
[2026-06-12 13:01:56,734.734 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 13:01:56,867.867 INFO    ] Initializing speech engine...
[2026-06-12 13:01:56,870.870 INFO    ] 2026-06-12 13:01:56
[2026-06-12 13:01:57,088.088 INFO    ] 2026-06-12 13:01:57
[2026-06-12 13:01:57,116.116 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 13:01:57,300.300 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 13:01:57,311.311 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 13:01:57,441.441 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 13:01:57,508.508 INFO    ] time= 12/06/2026 13:01:57
[2026-06-12 13:01:57,533.533 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 13:01:57,534.534 INFO    ] Checking for existing commands in stream...
[2026-06-12 13:01:57,606.606 INFO    ] No existing commands found in stream
[2026-06-12 13:02:02,614.614 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 13:02:02,616.616 INFO    ] Waiting 2.53 seconds before fallback handling...
[2026-06-12 13:02:05,539.539 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 13:02:05,540.540 INFO    ] Checking for system updates...
[2026-06-12 13:02:05,561.561 INFO    ] 200
[2026-06-12 13:02:05,562.562 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 13:02:05,592.592 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 13:02:05,594.594 INFO    ] No update needed
[2026-06-12 13:02:05,595.595 INFO    ] Checking for camera pi updates...
[2026-06-12 13:02:05,614.614 INFO    ] 200
[2026-06-12 13:02:05,615.615 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 13:02:05,641.641 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 13:02:05,674.674 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 13:02:05,675.675 INFO    ] No camera update needed
[2026-06-12 13:02:05,676.676 INFO    ] Script finished. Safe exiting...
[2026-06-12 13:02:05,677.677 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 13:02:05,681.681 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 13:02:05,683.683 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 13:02:07,725.725 INFO    ] ================================================
[2026-06-12 13:02:07,743.743 INFO    ] Launching Daemon at Fri Jun 12 13:02:07 IST 2026
[2026-06-12 13:02:07,755.755 INFO    ] ================================================
[2026-06-12 13:02:08,110.110 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 13:02:08
[2026-06-12 13:02:08,426.426 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 13:02:08,569.569 INFO    ] Initializing speech engine...
[2026-06-12 13:02:08,575.575 INFO    ] 2026-06-12 13:02:08
[2026-06-12 13:02:08,778.778 INFO    ] 2026-06-12 13:02:08
[2026-06-12 13:02:08,806.806 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 13:02:08,991.991 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 13:02:08,999.999 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 13:02:09,128.128 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 13:02:09,192.192 INFO    ] time= 12/06/2026 13:02:09
[2026-06-12 13:02:09,218.218 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 13:02:09,224.224 INFO    ] Checking for existing commands in stream...
[2026-06-12 13:02:09,315.315 INFO    ] No existing commands found in stream
[2026-06-12 13:02:14,324.324 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 13:02:14,326.326 INFO    ] Waiting 1.24 seconds before fallback handling...
[2026-06-12 13:02:15,935.935 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 13:02:15,937.937 INFO    ] Checking for system updates...
[2026-06-12 13:02:15,958.958 INFO    ] 200
[2026-06-12 13:02:15,960.960 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 13:02:15,990.990 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 13:02:15,992.992 INFO    ] No update needed
[2026-06-12 13:02:15,993.993 INFO    ] Checking for camera pi updates...
[2026-06-12 13:02:16,013.013 INFO    ] 200
[2026-06-12 13:02:16,015.015 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 13:02:16,038.038 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 13:02:16,076.076 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 13:02:16,078.078 INFO    ] No camera update needed
[2026-06-12 13:02:16,079.079 INFO    ] Script finished. Safe exiting...
[2026-06-12 13:02:16,080.080 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 13:02:16,084.084 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 13:02:16,086.086 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 13:02:18,124.124 INFO    ] ================================================
[2026-06-12 13:02:18,139.139 INFO    ] Launching Daemon at Fri Jun 12 13:02:18 IST 2026
[2026-06-12 13:02:18,150.150 INFO    ] ================================================
[2026-06-12 13:02:18,505.505 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 13:02:18
[2026-06-12 13:02:18,840.840 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 13:02:18,998.998 INFO    ] Initializing speech engine...
[2026-06-12 13:02:19,004.004 INFO    ] 2026-06-12 13:02:18
[2026-06-12 13:02:19,204.204 INFO    ] 2026-06-12 13:02:19
[2026-06-12 13:02:19,233.233 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 13:02:19,416.416 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 13:02:19,427.427 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 13:02:19,562.562 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 13:02:19,623.623 INFO    ] time= 12/06/2026 13:02:19
[2026-06-12 13:02:19,655.655 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 13:02:19,657.657 INFO    ] Checking for existing commands in stream...
[2026-06-12 13:02:19,753.753 INFO    ] No existing commands found in stream
[2026-06-12 13:02:24,768.768 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 13:02:24,771.771 INFO    ] Waiting 0.47 seconds before fallback handling...
[2026-06-12 13:02:25,658.658 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 13:02:25,660.660 INFO    ] Checking for system updates...
[2026-06-12 13:02:25,681.681 INFO    ] 200
[2026-06-12 13:02:25,682.682 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 13:02:25,712.712 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 13:02:25,714.714 INFO    ] No update needed
[2026-06-12 13:02:25,715.715 INFO    ] Checking for camera pi updates...
[2026-06-12 13:02:25,735.735 INFO    ] 200
[2026-06-12 13:02:25,736.736 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 13:02:25,759.759 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 13:02:25,795.795 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 13:02:25,796.796 INFO    ] No camera update needed
[2026-06-12 13:02:25,798.798 INFO    ] Script finished. Safe exiting...
[2026-06-12 13:02:25,799.799 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 13:02:25,802.802 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 13:02:25,805.805 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 13:02:27,843.843 INFO    ] ================================================
[2026-06-12 13:02:27,858.858 INFO    ] Launching Daemon at Fri Jun 12 13:02:27 IST 2026
[2026-06-12 13:02:27,869.869 INFO    ] ================================================
[2026-06-12 13:02:28,215.215 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 13:02:28
[2026-06-12 13:02:28,526.526 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 13:02:28,661.661 INFO    ] Initializing speech engine...
[2026-06-12 13:02:28,668.668 INFO    ] 2026-06-12 13:02:28
[2026-06-12 13:02:28,893.893 INFO    ] 2026-06-12 13:02:28
[2026-06-12 13:02:28,924.924 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 13:02:29,125.125 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 13:02:29,134.134 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 13:02:29,267.267 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 13:02:29,313.313 INFO    ] time= 12/06/2026 13:02:29
[2026-06-12 13:02:29,358.358 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 13:02:29,376.376 INFO    ] Checking for existing commands in stream...
[2026-06-12 13:02:29,452.452 INFO    ] No existing commands found in stream
[2026-06-12 13:02:34,462.462 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 13:02:34,465.465 INFO    ] Waiting 2.12 seconds before fallback handling...
[2026-06-12 13:02:37,000.000 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 13:02:37,001.001 INFO    ] Checking for system updates...
[2026-06-12 13:02:37,022.022 INFO    ] 200
[2026-06-12 13:02:37,023.023 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 13:02:37,053.053 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 13:02:37,054.054 INFO    ] No update needed
[2026-06-12 13:02:37,056.056 INFO    ] Checking for camera pi updates...
[2026-06-12 13:02:37,075.075 INFO    ] 200
[2026-06-12 13:02:37,076.076 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 13:02:37,099.099 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 13:02:37,135.135 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 13:02:37,136.136 INFO    ] No camera update needed
[2026-06-12 13:02:37,138.138 INFO    ] Script finished. Safe exiting...
[2026-06-12 13:02:37,139.139 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 13:02:37,142.142 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 13:02:37,145.145 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 13:02:39,183.183 INFO    ] ================================================
[2026-06-12 13:02:39,198.198 INFO    ] Launching Daemon at Fri Jun 12 13:02:39 IST 2026
[2026-06-12 13:02:39,209.209 INFO    ] ================================================
[2026-06-12 13:02:39,564.564 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 13:02:39
[2026-06-12 13:02:39,902.902 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 13:02:40,040.040 INFO    ] Initializing speech engine...
[2026-06-12 13:02:40,045.045 INFO    ] 2026-06-12 13:02:40
[2026-06-12 13:02:40,271.271 INFO    ] 2026-06-12 13:02:40
[2026-06-12 13:02:40,300.300 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 13:02:40,486.486 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 13:02:40,496.496 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 13:02:40,629.629 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 13:02:40,697.697 INFO    ] time= 12/06/2026 13:02:40
[2026-06-12 13:02:40,722.722 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 13:02:40,728.728 INFO    ] Checking for existing commands in stream...
[2026-06-12 13:02:40,796.796 INFO    ] No existing commands found in stream
[2026-06-12 13:02:45,821.821 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 13:02:45,824.824 INFO    ] Waiting 0.77 seconds before fallback handling...
[2026-06-12 13:02:46,982.982 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 13:02:46,983.983 INFO    ] Checking for system updates...
[2026-06-12 13:02:47,004.004 INFO    ] 200
[2026-06-12 13:02:47,006.006 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 13:02:47,038.038 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 13:02:47,040.040 INFO    ] No update needed
[2026-06-12 13:02:47,041.041 INFO    ] Checking for camera pi updates...
[2026-06-12 13:02:47,063.063 INFO    ] 200
[2026-06-12 13:02:47,064.064 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 13:02:47,090.090 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 13:02:47,128.128 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 13:02:47,129.129 INFO    ] No camera update needed
[2026-06-12 13:02:47,131.131 INFO    ] Script finished. Safe exiting...
[2026-06-12 13:02:47,132.132 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 13:02:47,135.135 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 13:02:47,137.137 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 13:02:49,176.176 INFO    ] ================================================
[2026-06-12 13:02:49,191.191 INFO    ] Launching Daemon at Fri Jun 12 13:02:49 IST 2026
[2026-06-12 13:02:49,202.202 INFO    ] ================================================
[2026-06-12 13:02:49,558.558 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 13:02:49
[2026-06-12 13:02:49,894.894 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 13:02:50,044.044 INFO    ] Initializing speech engine...
[2026-06-12 13:02:50,049.049 INFO    ] 2026-06-12 13:02:50
[2026-06-12 13:02:50,257.257 INFO    ] 2026-06-12 13:02:50
[2026-06-12 13:02:50,285.285 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 13:02:50,468.468 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 13:02:50,472.472 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 13:02:50,602.602 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 13:02:50,658.658 INFO    ] time= 12/06/2026 13:02:50
[2026-06-12 13:02:50,697.697 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 13:02:50,702.702 INFO    ] Checking for existing commands in stream...
[2026-06-12 13:02:50,775.775 INFO    ] Found 1 existing command(s) in stream
[2026-06-12 13:02:50,787.787 INFO    ] Checking historical command: ID=1781249569703-0
[2026-06-12 13:02:50,802.802 INFO    ] process_and_cleanup_command: msg_id=1781249569703-0
[2026-06-12 13:02:50,809.809 INFO    ] is_command_expired: timestamp=2026-06-12T07:32:48.006Z, expiry=30s
[2026-06-12 13:02:50,914.914 INFO    ] Command removed from stream: 1781249569703-0. returning for processing...
[2026-06-12 13:02:50,918.918 INFO    ] ***** get_valid_command
[2026-06-12 13:02:50,922.922 INFO    ] {'timestamp': '2026-06-12T07:32:48.006Z', 'command': 'start-order', 'source': 'webapp', 'data': '{"request_id":"start-order-1781249568005-0o4rce1t5","orderId":"TM09202301260612130150119","is_vending":false}', 'timeout': '10'}
[2026-06-12 13:02:50,926.926 INFO    ] ***** Parsed command data: {'orderId': 'TM09202301260612130150119', 'request_id': 'start-order-1781249568005-0o4rce1t5', 'is_vending': False}
[2026-06-12 13:02:50,931.931 INFO    ] Handling start order...
[2026-06-12 13:02:50,934.934 INFO    ] handle_start_order_command
[2026-06-12 13:02:50,940.940 INFO    ] _send_start_order_success: request_id=start-order-1781249568005-0o4rce1t5, order_id=TM09202301260612130150119
[2026-06-12 13:02:50,943.943 INFO    ] [_send_start_order_success] Adding message to stream: machine:TM09202301
[2026-06-12 13:02:51,017.017 INFO    ] [_send_start_order_success] Message added to stream with ID: 1781249571139-0
[2026-06-12 13:02:51,022.022 INFO    ] ✅ Start-order command succeeded - order locked, waiting for process-order command
[2026-06-12 13:02:51,028.028 INFO    ] Checking for system updates...
[2026-06-12 13:02:51,112.112 INFO    ] 200
[2026-06-12 13:02:51,116.116 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 13:02:51,170.170 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 13:02:51,173.173 INFO    ] No update needed
[2026-06-12 13:02:51,176.176 INFO    ] Checking for camera pi updates...
[2026-06-12 13:02:51,200.200 INFO    ] 200
[2026-06-12 13:02:51,202.202 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 13:02:51,263.263 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 13:02:51,310.310 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 13:02:51,313.313 INFO    ] No camera update needed
[2026-06-12 13:02:51,315.315 INFO    ] Script finished. Safe exiting...
[2026-06-12 13:02:51,318.318 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 13:02:51,324.324 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 13:02:51,331.331 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-06-12 13:02:51,336.336 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 13:02:53,371.371 INFO    ] ================================================
[2026-06-12 13:02:53,386.386 INFO    ] Launching Daemon at Fri Jun 12 13:02:53 IST 2026
[2026-06-12 13:02:53,397.397 INFO    ] ================================================
[2026-06-12 13:02:53,771.771 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 13:02:53
[2026-06-12 13:02:54,089.089 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 13:02:54,234.234 INFO    ] Initializing speech engine...
[2026-06-12 13:02:54,240.240 INFO    ] 2026-06-12 13:02:54
[2026-06-12 13:02:54,443.443 INFO    ] 2026-06-12 13:02:54
[2026-06-12 13:02:54,472.472 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 13:02:54,593.593 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 13:02:54,657.657 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 13:02:54,794.794 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 13:02:54,862.862 INFO    ] time= 12/06/2026 13:02:54
[2026-06-12 13:02:54,886.886 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 13:02:54,892.892 INFO    ] Checking for existing commands in stream...
[2026-06-12 13:02:54,961.961 INFO    ] Found 2 existing command(s) in stream
[2026-06-12 13:02:54,963.963 INFO    ] Checking historical command: ID=1781249571139-0
[2026-06-12 13:02:54,988.988 INFO    ] process_and_cleanup_command: msg_id=1781249571139-0
[2026-06-12 13:02:54,990.990 INFO    ] is_command_expired: timestamp=2026-06-12T07:32:50.941353Z, expiry=30s
[2026-06-12 13:02:55,100.100 INFO    ] Command removed from stream: 1781249571139-0. returning for processing...
[2026-06-12 13:02:55,104.104 INFO    ] ***** get_valid_command
[2026-06-12 13:02:55,108.108 INFO    ] {'message': 'start-order success', 'timestamp': '2026-06-12T07:32:50.941353Z', 'status': 'success', 'metadata_order_id': 'TM09202301260612130150119', 'metadata_request_id': 'start-order-1781249568005-0o4rce1t5', 'imei': 'TM09202301', 'message_type': 'command_response'}
[2026-06-12 13:02:55,111.111 INFO    ] Checking historical command: ID=1781249572482-0
[2026-06-12 13:02:55,115.115 INFO    ] process_and_cleanup_command: msg_id=1781249572482-0
[2026-06-12 13:02:55,118.118 INFO    ] is_command_expired: timestamp=2026-06-12T07:32:50.816Z, expiry=30s
[2026-06-12 13:02:55,174.174 INFO    ] Command removed from stream: 1781249572482-0. returning for processing...
[2026-06-12 13:02:55,177.177 INFO    ] ***** get_valid_command
[2026-06-12 13:02:55,180.180 INFO    ] {'command': 'process-order', 'source': 'webapp', 'timeout': '60', 'timestamp': '2026-06-12T07:32:50.816Z', 'data': '{"request_id":"process-order-1781249570816-q0sq5bt54","orderId":"TM09202301260612130150119","is_vending":false,"accessCode":"33378019"}'}
[2026-06-12 13:02:55,183.183 INFO    ] ***** Parsed command data: {'accessCode': '33378019', 'request_id': 'process-order-1781249570816-q0sq5bt54', 'is_vending': False, 'orderId': 'TM09202301260612130150119'}
[2026-06-12 13:02:55,185.185 INFO    ] Handling process order...
[2026-06-12 13:02:55,188.188 INFO    ] Processing process-order command...
[2026-06-12 13:02:55,192.192 INFO    ] 🔍 Lock file Order ID: TM09202301260612130150119, TS: 2026-06-12 13:02:50
[2026-06-12 13:02:55,202.202 INFO    ] ✅ Order lock valid for TM09202301260612130150119
[2026-06-12 13:02:55,206.206 INFO    ] Received access code in process-order, skipping PHP API call
[2026-06-12 13:02:55,210.210 INFO    ] processing access code 33378019 for order TM09202301260612130150119
[2026-06-12 13:02:55,215.215 INFO    ] 🔍 Lock file Order ID: TM09202301260612130150119, TS: 2026-06-12 13:02:50
[2026-06-12 13:02:55,219.219 INFO    ] ✅ Order lock valid for TM09202301260612130150119
[2026-06-12 13:02:55,224.224 INFO    ] 2026-06-12 13:02:55
[2026-06-12 13:02:55,254.254 INFO    ] 200
[2026-06-12 13:02:55,258.258 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 13:02:55,262.262 INFO    ] 33378019
[2026-06-12 13:02:55,264.264 INFO    ] 2026-06-12 13:02:55
[2026-06-12 13:02:55,269.269 INFO    ] session id :275960985
[2026-06-12 13:02:55,271.271 INFO    ] http://localhost:5000/v2/getOrderByAccessCode?access_code=33378019&imei=TM09202301&session_id=275960985
[2026-06-12 13:02:55,952.952 INFO    ] 200
[2026-06-12 13:02:55,956.956 INFO    ] {"rstatus": true, "msg": "Order Data", "status": true, "data": {"mobile": "6290125961", "order_id": "TM09202301260612130150119", "bill_amount": "30", "invoice_bill": "30", "access_code": "33378019", "proposed_sku_json": [{"door_id": "2", "name": "KITKAT Nestle 4 Finger Chocolate 38g", "tray_id": "37", "unit_price": 30, "offer_id": "", "qty": 1, "image_url": "https://images.tinymart.in/product/186084-5395.png", "offer_desc": "", "sku_total": 30, "mrp": "30", "skuid": "186084"}]}}
[2026-06-12 13:02:55,964.964 INFO    ] 30
[2026-06-12 13:02:55,968.968 INFO    ] TM09202301260612130150119
[2026-06-12 13:02:55,975.975 INFO    ] 6290125961
[2026-06-12 13:02:55,977.977 INFO    ] 2026-06-12 13:02:55
[2026-06-12 13:02:55,978.978 INFO    ] Door Opening for user mobile ending with  five nine six one 
[2026-06-12 13:02:55,980.980 INFO    ] Door Opening for user mobile ending with  five nine six one 
[2026-06-12 13:02:55,981.981 INFO    ] a75e6bb0c939bf77ddee394d54ae8346
[2026-06-12 13:02:55,983.983 INFO    ] 2026-06-12 13:02:55
[2026-06-12 13:02:55,984.984 INFO    ] creating audio file
[2026-06-12 13:02:56,020.020 INFO    ] Calling gTTS API with 60s timeout...
[2026-06-12 13:02:56,822.822 INFO    ] gTTS API call completed successfully
[2026-06-12 13:02:57,463.463 INFO    ] 2026-06-12 13:02:57
[2026-06-12 13:02:57,465.465 INFO    ] playing audio file
[2026-06-12 13:02:57,475.475 INFO    ] 2026-06-12 13:02:57
[2026-06-12 13:02:57,477.477 INFO    ] 2026-06-12 13:02:57
[2026-06-12 13:02:57,478.478 INFO    ] publish_status: order_id=TM09202301260612130150119
[2026-06-12 13:02:57,480.480 INFO    ] [publish_status] Adding message to stream: order:TM09202301260612130150119
[2026-06-12 13:02:57,583.583 INFO    ] [publish_status] Message added to stream with ID: 1781249577717-0
[2026-06-12 13:02:57,584.584 INFO    ] Published to order:TM09202301260612130150119: {'server_status': 'order-started', 'order_id': 'TM09202301260612130150119', 'server_response': '{"data": {"order_id": "TM09202301260612130150119", "mobile": "6290125961", "access_code": "33378019", "proposed_sku_json": [{"offer_id": "", "name": "KITKAT Nestle 4 Finger Chocolate 38g", "qty": 1, "image_url": "https://images.tinymart.in/product/186084-5395.png", "unit_price": 30, "mrp": "30", "sku_total": 30, "skuid": "186084", "tray_id": "37", "door_id": "2", "offer_desc": ""}], "invoice_bill": "30", "bill_amount": "30"}, "rstatus": true, "msg": "Order Data", "status": true}', 'timestamp': '2026-06-12T07:32:57.477804Z'} (ID: 1781249577717-0)
[2026-06-12 13:02:57,957.957 INFO    ] {'server_status': 'order-started', 'order_id': 'TM09202301260612130150119', 'server_response': {'data': {'order_id': 'TM09202301260612130150119', 'mobile': '6290125961', 'access_code': '33378019', 'proposed_sku_json': [{'offer_id': '', 'name': 'KITKAT Nestle 4 Finger Chocolate 38g', 'qty': 1, 'image_url': 'https://images.tinymart.in/product/186084-5395.png', 'unit_price': 30, 'mrp': '30', 'sku_total': 30, 'skuid': '186084', 'tray_id': '37', 'door_id': '2', 'offer_desc': ''}], 'invoice_bill': '30', 'bill_amount': '30'}, 'rstatus': True, 'msg': 'Order Data', 'status': True}}
[2026-06-12 13:02:57,959.959 INFO    ] 200
[2026-06-12 13:02:57,960.960 INFO    ] {"data":{"server_status":"order-started","order_id":"TM09202301260612130150119","server_response":{"data":{"order_id":"TM09202301260612130150119","mobile":"6290125961","access_code":"33378019","proposed_sku_json":[{"offer_id":"","name":"KITKAT Nestle 4 Finger Chocolate 38g","qty":1,"image_url":"https:\/\/images.tinymart.in\/product\/186084-5395.png","unit_price":30,"mrp":"30","sku_total":30,"skuid":"186084","tray_id":"37","door_id":"2","offer_desc":""}],"invoice_bill":"30","bill_amount":"30"},"rstatus":true,"msg":"Order Data","status":true}},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-12 13:02:57,962.962 INFO    ] {'data': {'server_status': 'order-started', 'order_id': 'TM09202301260612130150119', 'server_response': {'data': {'order_id': 'TM09202301260612130150119', 'mobile': '6290125961', 'access_code': '33378019', 'proposed_sku_json': [{'offer_id': '', 'name': 'KITKAT Nestle 4 Finger Chocolate 38g', 'qty': 1, 'image_url': 'https://images.tinymart.in/product/186084-5395.png', 'unit_price': 30, 'sku_total': 30, 'skuid': '186084', 'tray_id': '37', 'mrp': '30', 'offer_desc': '', 'door_id': '2'}], 'invoice_bill': '30', 'bill_amount': '30'}, 'rstatus': True, 'msg': 'Order Data', 'status': True}}, 'response': {'data': 'order updated successfully', 'code': 'ORDER_EXISTS', 'msg': 'order updated successfully', 'status': True}}
[2026-06-12 13:02:57,963.963 INFO    ] 2026-06-12 13:02:57
[2026-06-12 13:02:57,992.992 INFO    ] 200
[2026-06-12 13:02:57,994.994 INFO    ] True
[2026-06-12 13:02:58,083.083 INFO    ] 200
[2026-06-12 13:02:58,085.085 INFO    ] {"rstatus": false, "error": {"umessage": "In Progress", "code": 20001, "tmessage": "In Progress", "data": {}}, "SectionSKU": {"skus": [], "Header": "Thank you for bearing with us :)"}, "SectionMain": {"Header": "Processing Order"}, "SectionStatus": {"UI_Header": "", "Note": "", "Header": " Your order is under process  ", "SubHeader": "Please wait while we process your order"}, "voiceNote": "Please Wait", "status": "False"}
[2026-06-12 13:02:58,087.087 INFO    ] {'status': 'False', 'rstatus': False, 'SectionMain': {'Header': 'Processing Order'}, 'error': {'data': {}, 'umessage': 'In Progress', 'tmessage': 'In Progress', 'code': 20001}, 'SectionSKU': {'Header': 'Thank you for bearing with us :)', 'skus': []}, 'SectionStatus': {'Header': ' Your order is under process  ', 'SubHeader': 'Please wait while we process your order', 'Note': '', 'UI_Header': ''}, 'voiceNote': 'Please Wait'}
[2026-06-12 13:02:58,089.089 INFO    ] *** process_order ***
[2026-06-12 13:02:59,249.249 INFO    ] 200
[2026-06-12 13:02:59,250.250 INFO    ] {"rstatus": true, "SectionSKU": {"skus": [], "Header": "Thank you for bearing with us :)"}, "SectionMain": {"Header": "Processing Order"}, "SectionStatus": {"UI_Header": "", "Note": "", "Header": " Your order is under process  ", "SubHeader": "Please wait while we process your order"}, "delay": 0, "voiceNote": "Please Wait", "status": "True"}
[2026-06-12 13:02:59,252.252 INFO    ] {'status': 'True', 'rstatus': True, 'SectionMain': {'Header': 'Processing Order'}, 'delay': 0, 'SectionSKU': {'Header': 'Thank you for bearing with us :)', 'skus': []}, 'SectionStatus': {'Header': ' Your order is under process  ', 'SubHeader': 'Please wait while we process your order', 'Note': '', 'UI_Header': ''}, 'voiceNote': 'Please Wait'}
[2026-06-12 13:02:59,253.253 INFO    ] *** process_order ***
[2026-06-12 13:02:59,255.255 INFO    ] publish_status: order_id=TM09202301260612130150119
[2026-06-12 13:02:59,256.256 INFO    ] [publish_status] Adding message to stream: order:TM09202301260612130150119
[2026-06-12 13:02:59,354.354 INFO    ] [publish_status] Message added to stream with ID: 1781249579472-0
[2026-06-12 13:02:59,356.356 INFO    ] Published to order:TM09202301260612130150119: {'server_status': 'doorOpened', 'order_id': 'TM09202301260612130150119', 'server_response': '{"SectionSKU": {"Header": "Thank you for bearing with us :)", "skus": []}, "rstatus": true, "SectionMain": {"Header": "Processing Order"}, "delay": 0, "status": "True", "SectionStatus": {"Header": " Your order is under process  ", "SubHeader": "You can pull the door now.", "Note": "", "UI_Header": ""}, "voiceNote": "Door is open..."}'} (ID: 1781249579472-0)
[2026-06-12 13:03:00,405.405 INFO    ] 2026-06-12 13:03:00
[2026-06-12 13:03:00,409.409 INFO    ] publish_status: order_id=TM09202301260612130150119
[2026-06-12 13:03:00,411.411 INFO    ] [publish_status] Adding message to stream: order:TM09202301260612130150119
[2026-06-12 13:03:00,483.483 INFO    ] [publish_status] Message added to stream with ID: 1781249580615-0
[2026-06-12 13:03:00,485.485 INFO    ] Published to order:TM09202301260612130150119: {'server_status': 'processOrder', 'order_id': 'TM09202301260612130150119', 'server_response': '{"status": "True", "rstatus": true, "SectionMain": {"Header": "Processing Order"}, "delay": 0, "SectionSKU": {"Header": "Thank you for bearing with us :)", "skus": []}, "SectionStatus": {"Header": " Your order is under process  ", "SubHeader": "Please wait while we process your order", "Note": "", "UI_Header": ""}, "voiceNote": "Please Wait"}', 'timestamp': '2026-06-12T07:33:00.407172Z'} (ID: 1781249580615-0)
[2026-06-12 13:03:00,620.620 INFO    ] {'server_status': 'processOrder', 'order_id': 'TM09202301260612130150119', 'server_response': {'status': 'True', 'rstatus': True, 'SectionMain': {'Header': 'Processing Order'}, 'delay': 0, 'SectionSKU': {'Header': 'Thank you for bearing with us :)', 'skus': []}, 'SectionStatus': {'Header': ' Your order is under process  ', 'SubHeader': 'Please wait while we process your order', 'Note': '', 'UI_Header': ''}, 'voiceNote': 'Please Wait'}}
[2026-06-12 13:03:00,623.623 INFO    ] 200
[2026-06-12 13:03:00,626.626 INFO    ] {"data":{"server_status":"processOrder","order_id":"TM09202301260612130150119","server_response":{"status":"true","rstatus":true,"SectionMain":{"Header":"Processing Order"},"delay":0,"SectionSKU":{"Header":"Thank you for bearing with us :)","skus":[]},"SectionStatus":{"Header":" Your order is under process  ","SubHeader":"Please wait while we process your order","Note":"","UI_Header":""},"voiceNote":"Please Wait"}},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-12 13:03:00,628.628 INFO    ] {'data': {'server_status': 'processOrder', 'order_id': 'TM09202301260612130150119', 'server_response': {'status': 'true', 'rstatus': True, 'delay': 0, 'SectionSKU': {'Header': 'Thank you for bearing with us :)', 'skus': []}, 'SectionStatus': {'Header': ' Your order is under process  ', 'SubHeader': 'Please wait while we process your order', 'Note': '', 'UI_Header': ''}, 'SectionMain': {'Header': 'Processing Order'}, 'voiceNote': 'Please Wait'}}, 'response': {'data': 'order updated successfully', 'code': 'ORDER_EXISTS', 'msg': 'order updated successfully', 'status': True}}
[2026-06-12 13:03:00,631.631 INFO    ] 2026-06-12 13:03:00
[2026-06-12 13:03:00,634.634 INFO    ] None
[2026-06-12 13:03:00,636.636 INFO    ] Opening Door now
[2026-06-12 13:03:00,638.638 INFO    ] Opening Door now
[2026-06-12 13:03:00,641.641 INFO    ] 08e5d1063504bf393c26f0bfa436e9f9
[2026-06-12 13:03:00,642.642 INFO    ] 2026-06-12 13:03:00
[2026-06-12 13:03:00,644.644 INFO    ] playing audio file
[2026-06-12 13:03:00,655.655 INFO    ] 2026-06-12 13:03:00
[2026-06-12 13:03:00,657.657 INFO    ] 2026-06-12 13:03:00
[2026-06-12 13:03:04,046.046 INFO    ] 200
[2026-06-12 13:03:04,048.048 INFO    ] {"rstatus": false, "error": {"umessage": "In Progress", "code": 20001, "tmessage": "In Progress", "data": {}}, "SectionSKU": {"skus": [{"name": "KITKAT Nestle 4 Finger Chocolate 38g", "qty": 1}], "Header": "Pick the below items from the door"}, "SectionMain": {"Header": "Door Open"}, "SectionStatus": {"UI_Header": "DOOR 2\nIS \nOPEN \nNOW", "Note": "Please Close the door after picking up products", "Header": "Please Close Door 2", "SubHeader": "Please Pick the Products and close the door"}, "voiceNote": "Door 2 is open now", "status": "False"}
[2026-06-12 13:03:04,049.049 INFO    ] {'status': 'False', 'rstatus': False, 'SectionMain': {'Header': 'Door Open'}, 'error': {'data': {}, 'umessage': 'In Progress', 'tmessage': 'In Progress', 'code': 20001}, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'KITKAT Nestle 4 Finger Chocolate 38g', 'qty': 1}]}, 'SectionStatus': {'Header': 'Please Close Door 2', 'SubHeader': 'Please Pick the Products and close the door', 'Note': 'Please Close the door after picking up products', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW'}, 'voiceNote': 'Door 2 is open now'}
[2026-06-12 13:03:07,131.131 INFO    ] 200
[2026-06-12 13:03:07,132.132 INFO    ] {"rstatus": false, "error": {"umessage": "In Progress", "code": 20001, "tmessage": "In Progress", "data": {}}, "SectionSKU": {"skus": [{"name": "KITKAT Nestle 4 Finger Chocolate 38g", "qty": 1}], "Header": "Pick the below items from the door"}, "SectionMain": {"Header": "Door Open"}, "SectionStatus": {"UI_Header": "DOOR 2\nIS \nOPEN \nNOW", "Note": "Please Close the door after picking up products", "Header": "Please Close Door 2", "SubHeader": "Please Pick the Products and close the door"}, "voiceNote": "Please close door 2", "status": "False"}
[2026-06-12 13:03:07,134.134 INFO    ] {'status': 'False', 'rstatus': False, 'SectionMain': {'Header': 'Door Open'}, 'error': {'data': {}, 'umessage': 'In Progress', 'tmessage': 'In Progress', 'code': 20001}, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'KITKAT Nestle 4 Finger Chocolate 38g', 'qty': 1}]}, 'SectionStatus': {'Header': 'Please Close Door 2', 'SubHeader': 'Please Pick the Products and close the door', 'Note': 'Please Close the door after picking up products', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW'}, 'voiceNote': 'Please close door 2'}
[2026-06-12 13:03:10,309.309 INFO    ] 200
[2026-06-12 13:03:10,311.311 INFO    ] {"rstatus": false, "error": {"umessage": "In Progress", "code": 20001, "tmessage": "In Progress", "data": {}}, "SectionSKU": {"skus": [{"name": "KITKAT Nestle 4 Finger Chocolate 38g", "qty": 1}], "Header": "Pick the below items from the door"}, "SectionMain": {"Header": "Door Open"}, "SectionStatus": {"UI_Header": "DOOR 2\nIS \nOPEN \nNOW", "Note": "Please Close the door after picking up products", "Header": "Please Close Door 2", "SubHeader": "Please Pick the Products and close the door"}, "voiceNote": "Please close door 2", "status": "False"}
[2026-06-12 13:03:10,313.313 INFO    ] Please close door 2
[2026-06-12 13:03:10,315.315 INFO    ] Please close door 2
[2026-06-12 13:03:10,316.316 INFO    ] 758e46684c76e887a5f58d4738034bed
[2026-06-12 13:03:10,318.318 INFO    ] 2026-06-12 13:03:10
[2026-06-12 13:03:10,320.320 INFO    ] playing audio file
[2026-06-12 13:03:10,330.330 INFO    ] 2026-06-12 13:03:10
[2026-06-12 13:03:10,332.332 INFO    ] publish_status: order_id=TM09202301260612130150119
[2026-06-12 13:03:10,334.334 INFO    ] [publish_status] Adding message to stream: order:TM09202301260612130150119
[2026-06-12 13:03:10,389.389 INFO    ] [publish_status] Message added to stream with ID: 1781249590524-0
[2026-06-12 13:03:10,391.391 INFO    ] Published to order:TM09202301260612130150119: {'server_status': 'OrderStatus', 'order_id': 'TM09202301260612130150119', 'server_response': '{"status": "False", "rstatus": false, "SectionMain": {"Header": "Door Open"}, "error": {"data": {}, "umessage": "In Progress", "tmessage": "In Progress", "code": 20001}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"name": "KITKAT Nestle 4 Finger Chocolate 38g", "qty": 1}]}, "SectionStatus": {"Header": "Please Close Door 2", "SubHeader": "Please Pick the Products and close the door", "Note": "Please Close the door after picking up products", "UI_Header": "DOOR 2\\nIS \\nOPEN \\nNOW"}, "voiceNote": "Please close door 2"}', 'timestamp': '2026-06-12T07:33:10.331684Z'} (ID: 1781249590524-0)
[2026-06-12 13:03:10,822.822 INFO    ] {'server_status': 'OrderStatus', 'order_id': 'TM09202301260612130150119', 'server_response': {'status': 'False', 'rstatus': False, 'SectionMain': {'Header': 'Door Open'}, 'error': {'data': {}, 'umessage': 'In Progress', 'tmessage': 'In Progress', 'code': 20001}, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'KITKAT Nestle 4 Finger Chocolate 38g', 'qty': 1}]}, 'SectionStatus': {'Header': 'Please Close Door 2', 'SubHeader': 'Please Pick the Products and close the door', 'Note': 'Please Close the door after picking up products', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW'}, 'voiceNote': 'Please close door 2'}}
[2026-06-12 13:03:10,824.824 INFO    ] 200
[2026-06-12 13:03:10,825.825 INFO    ] {"data":{"server_status":"OrderStatus","order_id":"TM09202301260612130150119","server_response":{"status":"false","rstatus":false,"SectionMain":{"Header":"Door Open"},"error":{"data":[],"umessage":"In Progress","tmessage":"In Progress","code":20001},"SectionSKU":{"Header":"Pick the below items from the door","skus":[{"name":"KITKAT Nestle 4 Finger Chocolate 38g","qty":1}]},"SectionStatus":{"Header":"Please Close Door 2","SubHeader":"Please Pick the Products and close the door","Note":"Please Close the door after picking up products","UI_Header":"DOOR 2\nIS \nOPEN \nNOW"},"voiceNote":"Please close door 2"}},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-12 13:03:10,827.827 INFO    ] {'data': {'server_status': 'OrderStatus', 'order_id': 'TM09202301260612130150119', 'server_response': {'status': 'false', 'rstatus': False, 'SectionStatus': {'Header': 'Please Close Door 2', 'SubHeader': 'Please Pick the Products and close the door', 'Note': 'Please Close the door after picking up products', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW'}, 'error': {'data': [], 'umessage': 'In Progress', 'tmessage': 'In Progress', 'code': 20001}, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'KITKAT Nestle 4 Finger Chocolate 38g', 'qty': 1}]}, 'SectionMain': {'Header': 'Door Open'}, 'voiceNote': 'Please close door 2'}}, 'response': {'data': 'order updated successfully', 'code': 'ORDER_EXISTS', 'msg': 'order updated successfully', 'status': True}}
[2026-06-12 13:03:10,828.828 INFO    ] {'status': 'False', 'rstatus': False, 'SectionMain': {'Header': 'Door Open'}, 'error': {'data': {}, 'umessage': 'In Progress', 'tmessage': 'In Progress', 'code': 20001}, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'KITKAT Nestle 4 Finger Chocolate 38g', 'qty': 1}]}, 'SectionStatus': {'Header': 'Please Close Door 2', 'SubHeader': 'Please Pick the Products and close the door', 'Note': 'Please Close the door after picking up products', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW'}, 'voiceNote': 'Please close door 2'}
[2026-06-12 13:03:13,867.867 INFO    ] 200
[2026-06-12 13:03:13,869.869 INFO    ] {"rstatus": true, "SectionSKU": {"skus": [], "Header": "If you like us, tell others... else tell us"}, "SectionMain": {"Header": "Door Closed"}, "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, "voiceNote": "Transaction Completed", "status": "True"}
[2026-06-12 13:03:13,871.871 INFO    ] {'status': 'True', 'rstatus': True, 'SectionMain': {'Header': 'Door Closed'}, 'delay': 100, 'SectionSKU': {'Header': 'If you like us, tell others... else tell us', 'skus': []}, 'SectionStatus': {'Header': ' Order is complete ', 'SubHeader': 'Please wait for invoice to generate', 'Note': 'If any due amount, clear at https://go.tinymart.in', 'UI_Header': ''}, 'voiceNote': 'Transaction Completed'}
[2026-06-12 13:03:13,873.873 INFO    ] 2026-06-12 13:03:13
[2026-06-12 13:03:13,874.874 INFO    ] Order Completed 
[2026-06-12 13:03:13,876.876 INFO    ] Order Completed 
[2026-06-12 13:03:13,878.878 INFO    ] 193c8a8cf3bf490ccfe0b23598544a83
[2026-06-12 13:03:13,880.880 INFO    ] 2026-06-12 13:03:13
[2026-06-12 13:03:13,881.881 INFO    ] playing audio file
[2026-06-12 13:03:13,893.893 INFO    ] 2026-06-12 13:03:13
[2026-06-12 13:03:13,895.895 INFO    ] {'status': 'True', 'rstatus': True, 'SectionMain': {'Header': 'Door Closed'}, 'delay': 100, 'SectionSKU': {'Header': 'If you like us, tell others... else tell us', 'skus': []}, 'SectionStatus': {'Header': ' Order is complete ', 'SubHeader': 'Please wait for invoice to generate', 'Note': 'If any due amount, clear at https://go.tinymart.in', 'UI_Header': ''}, 'voiceNote': 'Transaction Completed'}
[2026-06-12 13:03:13,897.897 INFO    ] 2026-06-12 13:03:13
[2026-06-12 13:03:14,589.589 INFO    ] 200
[2026-06-12 13:03:14,590.590 INFO    ] {"rstatus": true, "orderId": "TM09202301260612130150119", "logic": "WBL", "anomaly": 0, "res": "True", "total_amount": 30.0, "skus": [{"door_id": "", "sku_total": 30.0, "skuid": "186084", "mrp": "30", "tray_id": "37", "image_url": "https://images.tinymart.in/product/186084-5395.png", "name": "KITKAT Nestle 4 Finger Chocolate 38g per peice", "qty": 1, "unit_price": "30"}]}
[2026-06-12 13:03:14,592.592 INFO    ] {'orderId': 'TM09202301260612130150119', 'rstatus': True, 'logic': 'WBL', 'res': 'True', 'total_amount': 30.0, 'anomaly': 0, 'skus': [{'name': 'KITKAT Nestle 4 Finger Chocolate 38g per peice', 'image_url': 'https://images.tinymart.in/product/186084-5395.png', 'mrp': '30', 'tray_id': '37', 'door_id': '', 'skuid': '186084', 'unit_price': '30', 'sku_total': 30.0, 'qty': 1}]}
[2026-06-12 13:03:14,593.593 INFO    ] {'orderId': 'TM09202301260612130150119', 'rstatus': True, 'logic': 'WBL', 'res': 'True', 'total_amount': 30.0, 'anomaly': 0, 'skus': [{'name': 'KITKAT Nestle 4 Finger Chocolate 38g per peice', 'image_url': 'https://images.tinymart.in/product/186084-5395.png', 'mrp': '30', 'tray_id': '37', 'door_id': '', 'skuid': '186084', 'unit_price': '30', 'sku_total': 30.0, 'qty': 1}]}
[2026-06-12 13:03:14,595.595 INFO    ] 2026-06-12 13:03:14
[2026-06-12 13:03:14,596.596 INFO    ] 2026-06-12 13:03:14
[2026-06-12 13:03:14,597.597 INFO    ] 30
[2026-06-12 13:03:14,598.598 INFO    ] 2026-06-12 13:03:14
[2026-06-12 13:03:14,600.600 INFO    ] 2026-06-12 13:03:14
[2026-06-12 13:03:14,601.601 INFO    ]  Your Bill Amount is 30
[2026-06-12 13:03:14,602.602 INFO    ]  Your Bill Amount is 30
[2026-06-12 13:03:14,604.604 INFO    ] 83d7bc98008395bac4df4c2fc2d248eb
[2026-06-12 13:03:14,605.605 INFO    ] 2026-06-12 13:03:14
[2026-06-12 13:03:14,606.606 INFO    ] playing audio file
[2026-06-12 13:03:14,617.617 INFO    ] 2026-06-12 13:03:14
[2026-06-12 13:03:14,619.619 INFO    ] 2026-06-12 13:03:14
[2026-06-12 13:03:14,621.621 INFO    ] publish_status: order_id=TM09202301260612130150119
[2026-06-12 13:03:14,623.623 INFO    ] [publish_status] Adding message to stream: order:TM09202301260612130150119
[2026-06-12 13:03:14,690.690 INFO    ] [publish_status] Message added to stream with ID: 1781249594824-0
[2026-06-12 13:03:14,692.692 INFO    ] Published to order:TM09202301260612130150119: {'server_status': 'invoiceOrder', 'order_id': 'TM09202301260612130150119', 'server_response': '{"orderId": "TM09202301260612130150119", "rstatus": true, "logic": "WBL", "res": "True", "total_amount": 30.0, "anomaly": 0, "skus": [{"name": "KITKAT Nestle 4 Finger Chocolate 38g per peice", "image_url": "https://images.tinymart.in/product/186084-5395.png", "mrp": "30", "tray_id": "37", "door_id": "", "skuid": "186084", "unit_price": "30", "sku_total": 30.0, "qty": 1}]}', 'timestamp': '2026-06-12T07:33:14.620379Z'} (ID: 1781249594824-0)
[2026-06-12 13:03:15,156.156 INFO    ] {'server_status': 'invoiceOrder', 'order_id': 'TM09202301260612130150119', 'server_response': {'orderId': 'TM09202301260612130150119', 'rstatus': True, 'logic': 'WBL', 'res': 'True', 'total_amount': 30.0, 'anomaly': 0, 'skus': [{'name': 'KITKAT Nestle 4 Finger Chocolate 38g per peice', 'image_url': 'https://images.tinymart.in/product/186084-5395.png', 'mrp': '30', 'tray_id': '37', 'door_id': '', 'skuid': '186084', 'unit_price': '30', 'sku_total': 30.0, 'qty': 1}]}}
[2026-06-12 13:03:15,157.157 INFO    ] 200
[2026-06-12 13:03:15,158.158 INFO    ] {"data":{"server_status":"invoiceOrder","order_id":"TM09202301260612130150119","server_response":{"orderId":"TM09202301260612130150119","rstatus":true,"logic":"WBL","res":"true","total_amount":30,"anomaly":0,"skus":[{"name":"KITKAT Nestle 4 Finger Chocolate 38g per peice","image_url":"https:\/\/images.tinymart.in\/product\/186084-5395.png","mrp":"30","tray_id":"37","door_id":"","skuid":"186084","unit_price":"30","sku_total":30,"qty":1}]}},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-12 13:03:15,160.160 INFO    ] {'data': {'server_status': 'invoiceOrder', 'order_id': 'TM09202301260612130150119', 'server_response': {'orderId': 'TM09202301260612130150119', 'rstatus': True, 'logic': 'WBL', 'res': 'true', 'total_amount': 30, 'anomaly': 0, 'skus': [{'name': 'KITKAT Nestle 4 Finger Chocolate 38g per peice', 'image_url': 'https://images.tinymart.in/product/186084-5395.png', 'mrp': '30', 'tray_id': '37', 'sku_total': 30, 'skuid': '186084', 'unit_price': '30', 'door_id': '', 'qty': 1}]}}, 'response': {'data': 'order updated successfully', 'code': 'ORDER_EXISTS', 'msg': 'order updated successfully', 'status': True}}
[2026-06-12 13:03:15,162.162 INFO    ] {'data': {'server_status': 'invoiceOrder', 'order_id': 'TM09202301260612130150119', 'server_response': {'orderId': 'TM09202301260612130150119', 'rstatus': True, 'logic': 'WBL', 'res': 'true', 'total_amount': 30, 'anomaly': 0, 'skus': [{'name': 'KITKAT Nestle 4 Finger Chocolate 38g per peice', 'image_url': 'https://images.tinymart.in/product/186084-5395.png', 'mrp': '30', 'tray_id': '37', 'sku_total': 30, 'skuid': '186084', 'unit_price': '30', 'door_id': '', 'qty': 1}]}}, 'response': {'data': 'order updated successfully', 'code': 'ORDER_EXISTS', 'msg': 'order updated successfully', 'status': True}}
[2026-06-12 13:03:15,163.163 INFO    ] 2026-06-12 13:03:15
[2026-06-12 13:03:17,044.044 INFO    ] 200
[2026-06-12 13:03:17,047.047 INFO    ] {"tray_sync": ["TM09202301260612130150119", "TM09202301260612130150119", "TM09202301260612130150119", "TM09202301260612130150119", "TM09202301260612130150119", "TM09202301260612130150119"], "orders_data": [], "orders_synced": [], "status": true, "order_items_synced": [], "tray_synced": ["TM09202301260612130150119", "TM09202301260612130150119", "TM09202301260612130150119", "TM09202301260612130150119", "TM09202301260612130150119", "TM09202301260612130150119", "TM09202301260612130150119", "TM09202301260612130150119", "TM09202301260612130150119", "TM09202301260612130150119", "TM09202301260612130150119", "TM09202301260612130150119", "TM09202301260612130150119", "TM09202301260612130150119", "TM09202301260612130150119", "TM09202301260612130150119", "TM09202301260612130150119", "TM09202301260612130150119", "TM09202301260612130150119", "TM09202301260612130150119", "TM09202301260612130150119", "TM09202301260612130150119", "TM09202301260612130150119", "TM09202301260612130150119", "TM09202301260612130150119", "TM09202301260612130150119", "TM09202301260612130150119"], "orders_data_synced": [], "orders": [], "order_items": []}
[2026-06-12 13:03:17,050.050 INFO    ] 2026-06-12 13:03:17
[2026-06-12 13:03:17,192.192 INFO    ] 200
[2026-06-12 13:03:17,193.193 INFO    ] True
[2026-06-12 13:03:17,195.195 INFO    ] cleanup_start_order_file_after_processing: order_id=TM09202301260612130150119
[2026-06-12 13:03:17,197.197 INFO    ] start order file deleted
[2026-06-12 13:03:17,198.198 INFO    ] Checking for system updates...
[2026-06-12 13:03:17,218.218 INFO    ] 200
[2026-06-12 13:03:17,219.219 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 13:03:17,251.251 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 13:03:17,252.252 INFO    ] No update needed
[2026-06-12 13:03:17,254.254 INFO    ] Checking for camera pi updates...
[2026-06-12 13:03:17,275.275 INFO    ] 200
[2026-06-12 13:03:17,276.276 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 13:03:17,302.302 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 13:03:17,349.349 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 13:03:17,351.351 INFO    ] No camera update needed
[2026-06-12 13:03:17,352.352 INFO    ] Script finished. Safe exiting...
[2026-06-12 13:03:17,353.353 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 13:03:17,356.356 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 13:03:17,359.359 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 13:03:19,393.393 INFO    ] ================================================
[2026-06-12 13:03:19,408.408 INFO    ] Launching Daemon at Fri Jun 12 13:03:19 IST 2026
[2026-06-12 13:03:19,419.419 INFO    ] ================================================
[2026-06-12 13:03:19,768.768 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 13:03:19
[2026-06-12 13:03:20,113.113 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 13:03:20,255.255 INFO    ] Initializing speech engine...
[2026-06-12 13:03:20,268.268 INFO    ] 2026-06-12 13:03:20
[2026-06-12 13:03:20,483.483 INFO    ] 2026-06-12 13:03:20
[2026-06-12 13:03:20,513.513 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 13:03:20,729.729 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 13:03:20,752.752 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 13:03:20,913.913 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 13:03:20,936.936 INFO    ] time= 12/06/2026 13:03:20
[2026-06-12 13:03:20,942.942 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 13:03:20,943.943 INFO    ] Checking for existing commands in stream...
[2026-06-12 13:03:21,036.036 INFO    ] No existing commands found in stream
[2026-06-12 13:03:26,051.051 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 13:03:26,054.054 INFO    ] Waiting 2.83 seconds before fallback handling...
[2026-06-12 13:03:29,236.236 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 13:03:29,237.237 INFO    ] Checking for system updates...
[2026-06-12 13:03:29,260.260 INFO    ] 200
[2026-06-12 13:03:29,261.261 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 13:03:29,295.295 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 13:03:29,301.301 INFO    ] No update needed
[2026-06-12 13:03:29,302.302 INFO    ] Checking for camera pi updates...
[2026-06-12 13:03:29,331.331 INFO    ] 200
[2026-06-12 13:03:29,333.333 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 13:03:29,359.359 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 13:03:29,395.395 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 13:03:29,396.396 INFO    ] No camera update needed
[2026-06-12 13:03:29,398.398 INFO    ] Script finished. Safe exiting...
[2026-06-12 13:03:29,399.399 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 13:03:29,402.402 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 13:03:29,405.405 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 13:03:31,444.444 INFO    ] ================================================
[2026-06-12 13:03:31,460.460 INFO    ] Launching Daemon at Fri Jun 12 13:03:31 IST 2026
[2026-06-12 13:03:31,471.471 INFO    ] ================================================
[2026-06-12 13:03:31,847.847 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 13:03:31
[2026-06-12 13:03:32,199.199 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 13:03:32,365.365 INFO    ] Initializing speech engine...
[2026-06-12 13:03:32,369.369 INFO    ] 2026-06-12 13:03:32
[2026-06-12 13:03:32,578.578 INFO    ] 2026-06-12 13:03:32
[2026-06-12 13:03:32,607.607 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 13:03:32,871.871 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 13:03:32,923.923 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 13:03:33,090.090 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 13:03:33,094.094 INFO    ] time= 12/06/2026 13:03:33
[2026-06-12 13:03:33,120.120 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 13:03:33,128.128 INFO    ] Checking for existing commands in stream...
[2026-06-12 13:03:33,222.222 INFO    ] No existing commands found in stream
[2026-06-12 13:03:38,232.232 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 13:03:38,236.236 INFO    ] Waiting 3.19 seconds before fallback handling...
[2026-06-12 13:03:41,788.788 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 13:03:41,790.790 INFO    ] Checking for system updates...
[2026-06-12 13:03:41,812.812 INFO    ] 200
[2026-06-12 13:03:41,813.813 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 13:03:41,846.846 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 13:03:41,848.848 INFO    ] No update needed
[2026-06-12 13:03:41,849.849 INFO    ] Checking for camera pi updates...
[2026-06-12 13:03:41,873.873 INFO    ] 200
[2026-06-12 13:03:41,875.875 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 13:03:41,905.905 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 13:03:41,943.943 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 13:03:41,944.944 INFO    ] No camera update needed
[2026-06-12 13:03:41,946.946 INFO    ] Script finished. Safe exiting...
[2026-06-12 13:03:41,947.947 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 13:03:41,951.951 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 13:03:41,954.954 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 13:03:43,993.993 INFO    ] ================================================
[2026-06-12 13:03:44,008.008 INFO    ] Launching Daemon at Fri Jun 12 13:03:44 IST 2026
[2026-06-12 13:03:44,019.019 INFO    ] ================================================
[2026-06-12 13:03:44,364.364 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 13:03:44
[2026-06-12 13:03:44,676.676 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 13:03:44,807.807 INFO    ] Initializing speech engine...
[2026-06-12 13:03:44,811.811 INFO    ] 2026-06-12 13:03:44
[2026-06-12 13:03:45,029.029 INFO    ] 2026-06-12 13:03:45
[2026-06-12 13:03:45,058.058 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 13:03:45,183.183 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 13:03:45,246.246 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 13:03:45,386.386 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 13:03:45,445.445 INFO    ] time= 12/06/2026 13:03:45
[2026-06-12 13:03:45,478.478 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 13:03:45,485.485 INFO    ] Checking for existing commands in stream...
[2026-06-12 13:03:45,551.551 INFO    ] No existing commands found in stream
[2026-06-12 13:03:50,561.561 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 13:03:50,564.564 INFO    ] Waiting 0.54 seconds before fallback handling...
[2026-06-12 13:03:51,483.483 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 13:03:51,484.484 INFO    ] Checking for system updates...
[2026-06-12 13:03:51,510.510 INFO    ] 200
[2026-06-12 13:03:51,512.512 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 13:03:51,555.555 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 13:03:51,557.557 INFO    ] No update needed
[2026-06-12 13:03:51,559.559 INFO    ] Checking for camera pi updates...
[2026-06-12 13:03:51,581.581 INFO    ] 200
[2026-06-12 13:03:51,582.582 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 13:03:51,610.610 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 13:03:51,660.660 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 13:03:51,662.662 INFO    ] No camera update needed
[2026-06-12 13:03:51,663.663 INFO    ] Script finished. Safe exiting...
[2026-06-12 13:03:51,665.665 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 13:03:51,668.668 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 13:03:51,672.672 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 13:03:53,698.698 INFO    ] ================================================
[2026-06-12 13:03:53,707.707 INFO    ] Launching Daemon at Fri Jun 12 13:03:53 IST 2026
[2026-06-12 13:03:53,713.713 INFO    ] ================================================
[2026-06-12 13:03:54,027.027 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 13:03:54
[2026-06-12 13:03:54,353.353 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 13:03:54,497.497 INFO    ] Initializing speech engine...
[2026-06-12 13:03:54,504.504 INFO    ] 2026-06-12 13:03:54
[2026-06-12 13:03:54,702.702 INFO    ] 2026-06-12 13:03:54
[2026-06-12 13:03:54,745.745 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 13:03:54,881.881 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 13:03:54,882.882 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 13:03:54,993.993 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 13:03:54,995.995 INFO    ] time= 12/06/2026 13:03:54
[2026-06-12 13:03:54,997.997 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 13:03:54,998.998 INFO    ] Checking for existing commands in stream...
[2026-06-12 13:03:55,077.077 INFO    ] No existing commands found in stream
[2026-06-12 13:04:00,110.110 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 13:04:00,112.112 INFO    ] Waiting 3.89 seconds before fallback handling...
[2026-06-12 13:04:04,402.402 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 13:04:04,404.404 INFO    ] Checking for system updates...
[2026-06-12 13:04:04,424.424 INFO    ] 200
[2026-06-12 13:04:04,425.425 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 13:04:04,466.466 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 13:04:04,468.468 INFO    ] No update needed
[2026-06-12 13:04:04,470.470 INFO    ] Checking for camera pi updates...
[2026-06-12 13:04:04,489.489 INFO    ] 200
[2026-06-12 13:04:04,491.491 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 13:04:04,516.516 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 13:04:04,556.556 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 13:04:04,558.558 INFO    ] No camera update needed
[2026-06-12 13:04:04,559.559 INFO    ] Script finished. Safe exiting...
[2026-06-12 13:04:04,560.560 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 13:04:04,563.563 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 13:04:04,566.566 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 13:04:06,604.604 INFO    ] ================================================
[2026-06-12 13:04:06,620.620 INFO    ] Launching Daemon at Fri Jun 12 13:04:06 IST 2026
[2026-06-12 13:04:06,632.632 INFO    ] ================================================
[2026-06-12 13:04:07,008.008 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 13:04:06
[2026-06-12 13:04:07,349.349 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 13:04:07,478.478 INFO    ] Initializing speech engine...
[2026-06-12 13:04:07,483.483 INFO    ] 2026-06-12 13:04:07
[2026-06-12 13:04:07,678.678 INFO    ] 2026-06-12 13:04:07
[2026-06-12 13:04:07,724.724 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 13:04:07,885.885 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 13:04:07,929.929 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 13:04:08,100.100 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 13:04:08,122.122 INFO    ] time= 12/06/2026 13:04:08
[2026-06-12 13:04:08,186.186 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 13:04:08,211.211 INFO    ] Checking for existing commands in stream...
[2026-06-12 13:04:08,290.290 INFO    ] No existing commands found in stream
[2026-06-12 13:04:13,299.299 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 13:04:13,302.302 INFO    ] Waiting 0.37 seconds before fallback handling...
[2026-06-12 13:04:14,059.059 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 13:04:14,060.060 INFO    ] Checking for system updates...
[2026-06-12 13:04:14,081.081 INFO    ] 200
[2026-06-12 13:04:14,083.083 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 13:04:14,116.116 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 13:04:14,117.117 INFO    ] No update needed
[2026-06-12 13:04:14,118.118 INFO    ] Checking for camera pi updates...
[2026-06-12 13:04:14,139.139 INFO    ] 200
[2026-06-12 13:04:14,141.141 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 13:04:14,166.166 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 13:04:14,206.206 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 13:04:14,208.208 INFO    ] No camera update needed
[2026-06-12 13:04:14,211.211 INFO    ] Script finished. Safe exiting...
[2026-06-12 13:04:14,213.213 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 13:04:14,217.217 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 13:04:14,220.220 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 13:04:16,260.260 INFO    ] ================================================
[2026-06-12 13:04:16,276.276 INFO    ] Launching Daemon at Fri Jun 12 13:04:16 IST 2026
[2026-06-12 13:04:16,288.288 INFO    ] ================================================
[2026-06-12 13:04:16,650.650 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 13:04:16
[2026-06-12 13:04:16,966.966 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 13:04:17,100.100 INFO    ] Initializing speech engine...
[2026-06-12 13:04:17,105.105 INFO    ] 2026-06-12 13:04:17
[2026-06-12 13:04:17,297.297 INFO    ] 2026-06-12 13:04:17
[2026-06-12 13:04:17,343.343 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 13:04:17,505.505 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 13:04:17,573.573 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 13:04:17,718.718 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 13:04:17,765.765 INFO    ] time= 12/06/2026 13:04:17
[2026-06-12 13:04:17,816.816 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 13:04:17,828.828 INFO    ] Checking for existing commands in stream...
[2026-06-12 13:04:17,907.907 INFO    ] No existing commands found in stream
[2026-06-12 13:04:22,916.916 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 13:04:22,919.919 INFO    ] Waiting 0.80 seconds before fallback handling...
[2026-06-12 13:04:24,091.091 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 13:04:24,093.093 INFO    ] Checking for system updates...
[2026-06-12 13:04:24,113.113 INFO    ] 200
[2026-06-12 13:04:24,115.115 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 13:04:24,147.147 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 13:04:24,149.149 INFO    ] No update needed
[2026-06-12 13:04:24,150.150 INFO    ] Checking for camera pi updates...
[2026-06-12 13:04:24,171.171 INFO    ] 200
[2026-06-12 13:04:24,173.173 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 13:04:24,198.198 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 13:04:24,236.236 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 13:04:24,238.238 INFO    ] No camera update needed
[2026-06-12 13:04:24,239.239 INFO    ] Script finished. Safe exiting...
[2026-06-12 13:04:24,240.240 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 13:04:24,243.243 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 13:04:24,246.246 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 13:04:26,284.284 INFO    ] ================================================
[2026-06-12 13:04:26,300.300 INFO    ] Launching Daemon at Fri Jun 12 13:04:26 IST 2026
[2026-06-12 13:04:26,311.311 INFO    ] ================================================
[2026-06-12 13:04:26,708.708 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 13:04:26
[2026-06-12 13:04:27,052.052 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 13:04:27,209.209 INFO    ] Initializing speech engine...
[2026-06-12 13:04:27,214.214 INFO    ] 2026-06-12 13:04:27
[2026-06-12 13:04:27,426.426 INFO    ] 2026-06-12 13:04:27
[2026-06-12 13:04:27,455.455 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 13:04:27,642.642 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 13:04:27,652.652 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 13:04:27,781.781 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 13:04:27,843.843 INFO    ] time= 12/06/2026 13:04:27
[2026-06-12 13:04:27,876.876 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 13:04:27,883.883 INFO    ] Checking for existing commands in stream...
[2026-06-12 13:04:27,975.975 INFO    ] No existing commands found in stream
[2026-06-12 13:04:32,988.988 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 13:04:32,990.990 INFO    ] Waiting 0.29 seconds before fallback handling...
[2026-06-12 13:04:33,629.629 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 13:04:33,631.631 INFO    ] Checking for system updates...
[2026-06-12 13:04:33,652.652 INFO    ] 200
[2026-06-12 13:04:33,654.654 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 13:04:33,685.685 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 13:04:33,686.686 INFO    ] No update needed
[2026-06-12 13:04:33,688.688 INFO    ] Checking for camera pi updates...
[2026-06-12 13:04:33,709.709 INFO    ] 200
[2026-06-12 13:04:33,711.711 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 13:04:33,739.739 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 13:04:33,777.777 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 13:04:33,778.778 INFO    ] No camera update needed
[2026-06-12 13:04:33,780.780 INFO    ] Script finished. Safe exiting...
[2026-06-12 13:04:33,781.781 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 13:04:33,785.785 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 13:04:33,788.788 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 13:04:35,827.827 INFO    ] ================================================
[2026-06-12 13:04:35,843.843 INFO    ] Launching Daemon at Fri Jun 12 13:04:35 IST 2026
[2026-06-12 13:04:35,854.854 INFO    ] ================================================
[2026-06-12 13:04:36,227.227 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 13:04:36
[2026-06-12 13:04:36,547.547 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 13:04:36,692.692 INFO    ] Initializing speech engine...
[2026-06-12 13:04:36,697.697 INFO    ] 2026-06-12 13:04:36
[2026-06-12 13:04:36,903.903 INFO    ] 2026-06-12 13:04:36
[2026-06-12 13:04:36,931.931 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 13:04:37,114.114 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 13:04:37,117.117 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 13:04:37,253.253 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 13:04:37,317.317 INFO    ] time= 12/06/2026 13:04:37
[2026-06-12 13:04:37,344.344 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 13:04:37,351.351 INFO    ] Checking for existing commands in stream...
[2026-06-12 13:04:37,417.417 INFO    ] No existing commands found in stream
[2026-06-12 13:04:42,425.425 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 13:04:42,427.427 INFO    ] Waiting 3.57 seconds before fallback handling...
[2026-06-12 13:04:46,360.360 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 13:04:46,362.362 INFO    ] Checking for system updates...
[2026-06-12 13:04:46,385.385 INFO    ] 200
[2026-06-12 13:04:46,386.386 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 13:04:46,417.417 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 13:04:46,418.418 INFO    ] No update needed
[2026-06-12 13:04:46,420.420 INFO    ] Checking for camera pi updates...
[2026-06-12 13:04:46,441.441 INFO    ] 200
[2026-06-12 13:04:46,443.443 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 13:04:46,469.469 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 13:04:46,509.509 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 13:04:46,511.511 INFO    ] No camera update needed
[2026-06-12 13:04:46,512.512 INFO    ] Script finished. Safe exiting...
[2026-06-12 13:04:46,514.514 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 13:04:46,517.517 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 13:04:46,521.521 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 13:04:48,561.561 INFO    ] ================================================
[2026-06-12 13:04:48,577.577 INFO    ] Launching Daemon at Fri Jun 12 13:04:48 IST 2026
[2026-06-12 13:04:48,588.588 INFO    ] ================================================
[2026-06-12 13:04:48,951.951 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 13:04:48
[2026-06-12 13:04:49,263.263 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 13:04:49,397.397 INFO    ] Initializing speech engine...
[2026-06-12 13:04:49,407.407 INFO    ] 2026-06-12 13:04:49
[2026-06-12 13:04:49,621.621 INFO    ] 2026-06-12 13:04:49
[2026-06-12 13:04:49,669.669 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 13:04:49,805.805 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 13:04:49,843.843 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 13:04:49,986.986 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 13:04:50,022.022 INFO    ] time= 12/06/2026 13:04:49
[2026-06-12 13:04:50,073.073 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 13:04:50,108.108 INFO    ] Checking for existing commands in stream...
[2026-06-12 13:04:50,207.207 INFO    ] No existing commands found in stream
[2026-06-12 13:04:55,216.216 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 13:04:55,219.219 INFO    ] Waiting 0.73 seconds before fallback handling...
[2026-06-12 13:04:56,317.317 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 13:04:56,318.318 INFO    ] Checking for system updates...
[2026-06-12 13:04:56,341.341 INFO    ] 200
[2026-06-12 13:04:56,342.342 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 13:04:56,375.375 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 13:04:56,377.377 INFO    ] No update needed
[2026-06-12 13:04:56,378.378 INFO    ] Checking for camera pi updates...
[2026-06-12 13:04:56,399.399 INFO    ] 200
[2026-06-12 13:04:56,400.400 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 13:04:56,424.424 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 13:04:56,471.471 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 13:04:56,473.473 INFO    ] No camera update needed
[2026-06-12 13:04:56,474.474 INFO    ] Script finished. Safe exiting...
[2026-06-12 13:04:56,475.475 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 13:04:56,478.478 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 13:04:56,481.481 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 13:04:58,525.525 INFO    ] ================================================
[2026-06-12 13:04:58,542.542 INFO    ] Launching Daemon at Fri Jun 12 13:04:58 IST 2026
[2026-06-12 13:04:58,554.554 INFO    ] ================================================
[2026-06-12 13:04:58,932.932 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 13:04:58
[2026-06-12 13:04:59,289.289 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 13:04:59,445.445 INFO    ] Initializing speech engine...
[2026-06-12 13:04:59,448.448 INFO    ] 2026-06-12 13:04:59
[2026-06-12 13:04:59,658.658 INFO    ] 2026-06-12 13:04:59
[2026-06-12 13:04:59,688.688 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 13:04:59,811.811 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 13:04:59,870.870 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 13:05:00,034.034 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 13:05:00,084.084 INFO    ] time= 12/06/2026 13:05:00
[2026-06-12 13:05:00,105.105 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 13:05:00,112.112 INFO    ] Checking for existing commands in stream...
[2026-06-12 13:05:00,179.179 INFO    ] No existing commands found in stream
[2026-06-12 13:05:05,194.194 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 13:05:05,197.197 INFO    ] Waiting 0.85 seconds before fallback handling...
[2026-06-12 13:05:06,415.415 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 13:05:06,417.417 INFO    ] Checking for system updates...
[2026-06-12 13:05:06,439.439 INFO    ] 200
[2026-06-12 13:05:06,441.441 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 13:05:06,476.476 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 13:05:06,478.478 INFO    ] No update needed
[2026-06-12 13:05:06,479.479 INFO    ] Checking for camera pi updates...
[2026-06-12 13:05:06,500.500 INFO    ] 200
[2026-06-12 13:05:06,502.502 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 13:05:06,528.528 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 13:05:06,567.567 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 13:05:06,569.569 INFO    ] No camera update needed
[2026-06-12 13:05:06,570.570 INFO    ] Script finished. Safe exiting...
[2026-06-12 13:05:06,572.572 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 13:05:06,575.575 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 13:05:06,578.578 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 13:05:08,620.620 INFO    ] ================================================
[2026-06-12 13:05:08,636.636 INFO    ] Launching Daemon at Fri Jun 12 13:05:08 IST 2026
[2026-06-12 13:05:08,648.648 INFO    ] ================================================
[2026-06-12 13:05:08,987.987 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 13:05:08
[2026-06-12 13:05:09,297.297 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 13:05:09,436.436 INFO    ] Initializing speech engine...
[2026-06-12 13:05:09,446.446 INFO    ] 2026-06-12 13:05:09
[2026-06-12 13:05:09,650.650 INFO    ] 2026-06-12 13:05:09
[2026-06-12 13:05:09,678.678 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 13:05:09,864.864 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 13:05:09,874.874 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 13:05:09,998.998 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 13:05:10,065.065 INFO    ] time= 12/06/2026 13:05:10
[2026-06-12 13:05:10,092.092 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 13:05:10,098.098 INFO    ] Checking for existing commands in stream...
[2026-06-12 13:05:10,165.165 INFO    ] No existing commands found in stream
[2026-06-12 13:05:15,174.174 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 13:05:15,176.176 INFO    ] Waiting 3.48 seconds before fallback handling...
[2026-06-12 13:05:19,035.035 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 13:05:19,036.036 INFO    ] Checking for system updates...
[2026-06-12 13:05:19,057.057 INFO    ] 200
[2026-06-12 13:05:19,059.059 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 13:05:19,092.092 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 13:05:19,094.094 INFO    ] No update needed
[2026-06-12 13:05:19,095.095 INFO    ] Checking for camera pi updates...
[2026-06-12 13:05:19,116.116 INFO    ] 200
[2026-06-12 13:05:19,118.118 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 13:05:19,144.144 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 13:05:19,268.268 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 13:05:19,269.269 INFO    ] No camera update needed
[2026-06-12 13:05:19,271.271 INFO    ] Script finished. Safe exiting...
[2026-06-12 13:05:19,272.272 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 13:05:19,275.275 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 13:05:19,278.278 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 13:05:21,318.318 INFO    ] ================================================
[2026-06-12 13:05:21,334.334 INFO    ] Launching Daemon at Fri Jun 12 13:05:21 IST 2026
[2026-06-12 13:05:21,345.345 INFO    ] ================================================
[2026-06-12 13:05:21,718.718 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 13:05:21
[2026-06-12 13:05:22,032.032 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 13:05:22,162.162 INFO    ] Initializing speech engine...
[2026-06-12 13:05:22,166.166 INFO    ] 2026-06-12 13:05:22
[2026-06-12 13:05:22,385.385 INFO    ] 2026-06-12 13:05:22
[2026-06-12 13:05:22,414.414 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 13:05:22,601.601 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 13:05:22,610.610 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 13:05:22,739.739 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 13:05:22,802.802 INFO    ] time= 12/06/2026 13:05:22
[2026-06-12 13:05:22,836.836 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 13:05:22,842.842 INFO    ] Checking for existing commands in stream...
[2026-06-12 13:05:22,908.908 INFO    ] No existing commands found in stream
[2026-06-12 13:05:27,918.918 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 13:05:27,921.921 INFO    ] Waiting 3.21 seconds before fallback handling...
[2026-06-12 13:05:31,516.516 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 13:05:31,518.518 INFO    ] Checking for system updates...
[2026-06-12 13:05:31,544.544 INFO    ] 200
[2026-06-12 13:05:31,546.546 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 13:05:31,585.585 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 13:05:31,587.587 INFO    ] No update needed
[2026-06-12 13:05:31,589.589 INFO    ] Checking for camera pi updates...
[2026-06-12 13:05:31,612.612 INFO    ] 200
[2026-06-12 13:05:31,613.613 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 13:05:31,645.645 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 13:05:31,670.670 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 13:05:31,672.672 INFO    ] No camera update needed
[2026-06-12 13:05:31,674.674 INFO    ] Script finished. Safe exiting...
[2026-06-12 13:05:31,675.675 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 13:05:31,680.680 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 13:05:31,684.684 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 13:05:33,725.725 INFO    ] ================================================
[2026-06-12 13:05:33,741.741 INFO    ] Launching Daemon at Fri Jun 12 13:05:33 IST 2026
[2026-06-12 13:05:33,752.752 INFO    ] ================================================
[2026-06-12 13:05:34,087.087 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 13:05:34
[2026-06-12 13:05:34,398.398 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 13:05:34,529.529 INFO    ] Initializing speech engine...
[2026-06-12 13:05:34,542.542 INFO    ] 2026-06-12 13:05:34
[2026-06-12 13:05:34,751.751 INFO    ] 2026-06-12 13:05:34
[2026-06-12 13:05:34,780.780 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 13:05:34,966.966 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 13:05:34,969.969 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 13:05:35,106.106 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 13:05:35,170.170 INFO    ] time= 12/06/2026 13:05:35
[2026-06-12 13:05:35,198.198 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 13:05:35,204.204 INFO    ] Checking for existing commands in stream...
[2026-06-12 13:05:35,272.272 INFO    ] No existing commands found in stream
[2026-06-12 13:05:40,281.281 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 13:05:40,284.284 INFO    ] Waiting 1.72 seconds before fallback handling...
[2026-06-12 13:05:42,354.354 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 13:05:42,356.356 INFO    ] Checking for system updates...
[2026-06-12 13:05:42,377.377 INFO    ] 200
[2026-06-12 13:05:42,379.379 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 13:05:42,409.409 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 13:05:42,411.411 INFO    ] No update needed
[2026-06-12 13:05:42,412.412 INFO    ] Checking for camera pi updates...
[2026-06-12 13:05:42,432.432 INFO    ] 200
[2026-06-12 13:05:42,434.434 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 13:05:42,457.457 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 13:05:42,493.493 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 13:05:42,495.495 INFO    ] No camera update needed
[2026-06-12 13:05:42,496.496 INFO    ] Script finished. Safe exiting...
[2026-06-12 13:05:42,497.497 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 13:05:42,501.501 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 13:05:42,504.504 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 13:05:44,543.543 INFO    ] ================================================
[2026-06-12 13:05:44,559.559 INFO    ] Launching Daemon at Fri Jun 12 13:05:44 IST 2026
[2026-06-12 13:05:44,571.571 INFO    ] ================================================
[2026-06-12 13:05:44,951.951 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 13:05:44
[2026-06-12 13:05:45,295.295 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 13:05:45,451.451 INFO    ] Initializing speech engine...
[2026-06-12 13:05:45,454.454 INFO    ] 2026-06-12 13:05:45
[2026-06-12 13:05:45,664.664 INFO    ] 2026-06-12 13:05:45
[2026-06-12 13:05:45,693.693 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 13:05:45,881.881 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 13:05:45,889.889 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 13:05:46,028.028 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 13:05:46,091.091 INFO    ] time= 12/06/2026 13:05:46
[2026-06-12 13:05:46,115.115 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 13:05:46,122.122 INFO    ] Checking for existing commands in stream...
[2026-06-12 13:05:46,213.213 INFO    ] No existing commands found in stream
[2026-06-12 13:05:51,223.223 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 13:05:51,226.226 INFO    ] Waiting 3.97 seconds before fallback handling...
[2026-06-12 13:05:55,561.561 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 13:05:55,562.562 INFO    ] Checking for system updates...
[2026-06-12 13:05:55,583.583 INFO    ] 200
[2026-06-12 13:05:55,584.584 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 13:05:55,615.615 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 13:05:55,616.616 INFO    ] No update needed
[2026-06-12 13:05:55,617.617 INFO    ] Checking for camera pi updates...
[2026-06-12 13:05:55,638.638 INFO    ] 200
[2026-06-12 13:05:55,640.640 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 13:05:55,663.663 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 13:05:55,699.699 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 13:05:55,700.700 INFO    ] No camera update needed
[2026-06-12 13:05:55,702.702 INFO    ] Script finished. Safe exiting...
[2026-06-12 13:05:55,703.703 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 13:05:55,706.706 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 13:05:55,709.709 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 13:05:57,748.748 INFO    ] ================================================
[2026-06-12 13:05:57,765.765 INFO    ] Launching Daemon at Fri Jun 12 13:05:57 IST 2026
[2026-06-12 13:05:57,776.776 INFO    ] ================================================
[2026-06-12 13:05:58,138.138 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 13:05:58
[2026-06-12 13:05:58,448.448 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 13:05:58,585.585 INFO    ] Initializing speech engine...
[2026-06-12 13:05:58,595.595 INFO    ] 2026-06-12 13:05:58
[2026-06-12 13:05:58,801.801 INFO    ] 2026-06-12 13:05:58
[2026-06-12 13:05:58,829.829 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 13:05:59,014.014 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 13:05:59,024.024 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 13:05:59,171.171 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 13:05:59,224.224 INFO    ] time= 12/06/2026 13:05:59
[2026-06-12 13:05:59,247.247 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 13:05:59,253.253 INFO    ] Checking for existing commands in stream...
[2026-06-12 13:05:59,344.344 INFO    ] No existing commands found in stream
[2026-06-12 13:06:04,353.353 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 13:06:04,356.356 INFO    ] Waiting 3.95 seconds before fallback handling...
[2026-06-12 13:06:08,664.664 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 13:06:08,665.665 INFO    ] Checking for system updates...
[2026-06-12 13:06:08,687.687 INFO    ] 200
[2026-06-12 13:06:08,689.689 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 13:06:08,719.719 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 13:06:08,721.721 INFO    ] No update needed
[2026-06-12 13:06:08,722.722 INFO    ] Checking for camera pi updates...
[2026-06-12 13:06:08,742.742 INFO    ] 200
[2026-06-12 13:06:08,743.743 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 13:06:08,768.768 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 13:06:08,813.813 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 13:06:08,814.814 INFO    ] No camera update needed
[2026-06-12 13:06:08,815.815 INFO    ] Script finished. Safe exiting...
[2026-06-12 13:06:08,817.817 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 13:06:08,820.820 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 13:06:08,822.822 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 13:06:10,863.863 INFO    ] ================================================
[2026-06-12 13:06:10,880.880 INFO    ] Launching Daemon at Fri Jun 12 13:06:10 IST 2026
[2026-06-12 13:06:10,892.892 INFO    ] ================================================
[2026-06-12 13:06:11,245.245 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 13:06:11
[2026-06-12 13:06:11,555.555 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 13:06:11,697.697 INFO    ] Initializing speech engine...
[2026-06-12 13:06:11,702.702 INFO    ] 2026-06-12 13:06:11
[2026-06-12 13:06:11,907.907 INFO    ] 2026-06-12 13:06:11
[2026-06-12 13:06:11,935.935 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 13:06:12,118.118 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 13:06:12,127.127 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 13:06:12,249.249 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 13:06:12,312.312 INFO    ] time= 12/06/2026 13:06:12
[2026-06-12 13:06:12,347.347 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 13:06:12,349.349 INFO    ] Checking for existing commands in stream...
[2026-06-12 13:06:12,444.444 INFO    ] No existing commands found in stream
[2026-06-12 13:06:17,453.453 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 13:06:17,456.456 INFO    ] Waiting 0.82 seconds before fallback handling...
[2026-06-12 13:06:18,644.644 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 13:06:18,645.645 INFO    ] Checking for system updates...
[2026-06-12 13:06:18,665.665 INFO    ] 200
[2026-06-12 13:06:18,666.666 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 13:06:18,696.696 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 13:06:18,697.697 INFO    ] No update needed
[2026-06-12 13:06:18,699.699 INFO    ] Checking for camera pi updates...
[2026-06-12 13:06:18,718.718 INFO    ] 200
[2026-06-12 13:06:18,719.719 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 13:06:18,744.744 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 13:06:18,777.777 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 13:06:18,778.778 INFO    ] No camera update needed
[2026-06-12 13:06:18,779.779 INFO    ] Script finished. Safe exiting...
[2026-06-12 13:06:18,781.781 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 13:06:18,783.783 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 13:06:18,786.786 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 13:06:20,826.826 INFO    ] ================================================
[2026-06-12 13:06:20,842.842 INFO    ] Launching Daemon at Fri Jun 12 13:06:20 IST 2026
[2026-06-12 13:06:20,854.854 INFO    ] ================================================
[2026-06-12 13:06:21,216.216 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 13:06:21
[2026-06-12 13:06:21,553.553 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 13:06:21,684.684 INFO    ] Initializing speech engine...
[2026-06-12 13:06:21,689.689 INFO    ] 2026-06-12 13:06:21
[2026-06-12 13:06:21,905.905 INFO    ] 2026-06-12 13:06:21
[2026-06-12 13:06:21,935.935 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 13:06:22,117.117 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 13:06:22,126.126 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 13:06:22,249.249 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 13:06:22,305.305 INFO    ] time= 12/06/2026 13:06:22
[2026-06-12 13:06:22,344.344 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 13:06:22,349.349 INFO    ] Checking for existing commands in stream...
[2026-06-12 13:06:22,444.444 INFO    ] No existing commands found in stream
[2026-06-12 13:06:27,458.458 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 13:06:27,461.461 INFO    ] Waiting 0.05 seconds before fallback handling...
[2026-06-12 13:06:28,391.391 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 13:06:28,394.394 INFO    ] Checking for system updates...
[2026-06-12 13:06:28,431.431 INFO    ] 200
[2026-06-12 13:06:28,434.434 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 13:06:28,488.488 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 13:06:28,491.491 INFO    ] No update needed
[2026-06-12 13:06:28,494.494 INFO    ] Checking for camera pi updates...
[2026-06-12 13:06:28,528.528 INFO    ] 200
[2026-06-12 13:06:28,531.531 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 13:06:28,561.561 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 13:06:28,597.597 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 13:06:28,598.598 INFO    ] No camera update needed
[2026-06-12 13:06:28,599.599 INFO    ] Script finished. Safe exiting...
[2026-06-12 13:06:28,601.601 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 13:06:28,604.604 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 13:06:28,606.606 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 13:06:30,648.648 INFO    ] ================================================
[2026-06-12 13:06:30,664.664 INFO    ] Launching Daemon at Fri Jun 12 13:06:30 IST 2026
[2026-06-12 13:06:30,675.675 INFO    ] ================================================
[2026-06-12 13:06:31,066.066 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 13:06:31
[2026-06-12 13:06:31,405.405 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 13:06:31,584.584 INFO    ] Initializing speech engine...
[2026-06-12 13:06:31,590.590 INFO    ] 2026-06-12 13:06:31
[2026-06-12 13:06:31,817.817 INFO    ] 2026-06-12 13:06:31
[2026-06-12 13:06:31,848.848 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 13:06:32,043.043 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 13:06:32,047.047 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 13:06:32,187.187 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 13:06:32,248.248 INFO    ] time= 12/06/2026 13:06:32
[2026-06-12 13:06:32,290.290 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 13:06:32,293.293 INFO    ] Checking for existing commands in stream...
[2026-06-12 13:06:32,365.365 INFO    ] No existing commands found in stream
[2026-06-12 13:06:37,376.376 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 13:06:37,379.379 INFO    ] Waiting 0.73 seconds before fallback handling...
[2026-06-12 13:06:38,459.459 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 13:06:38,461.461 INFO    ] Checking for system updates...
[2026-06-12 13:06:38,481.481 INFO    ] 200
[2026-06-12 13:06:38,483.483 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 13:06:38,522.522 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 13:06:38,524.524 INFO    ] No update needed
[2026-06-12 13:06:38,526.526 INFO    ] Checking for camera pi updates...
[2026-06-12 13:06:38,547.547 INFO    ] 200
[2026-06-12 13:06:38,552.552 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 13:06:38,579.579 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 13:06:38,622.622 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 13:06:38,624.624 INFO    ] No camera update needed
[2026-06-12 13:06:38,626.626 INFO    ] Script finished. Safe exiting...
[2026-06-12 13:06:38,628.628 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 13:06:38,633.633 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 13:06:38,636.636 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 13:06:40,678.678 INFO    ] ================================================
[2026-06-12 13:06:40,694.694 INFO    ] Launching Daemon at Fri Jun 12 13:06:40 IST 2026
[2026-06-12 13:06:40,706.706 INFO    ] ================================================
[2026-06-12 13:06:41,038.038 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 13:06:41
[2026-06-12 13:06:41,351.351 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 13:06:41,481.481 INFO    ] Initializing speech engine...
[2026-06-12 13:06:41,484.484 INFO    ] 2026-06-12 13:06:41
[2026-06-12 13:06:41,701.701 INFO    ] 2026-06-12 13:06:41
[2026-06-12 13:06:41,731.731 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 13:06:41,853.853 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 13:06:41,911.911 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 13:06:42,051.051 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 13:06:42,114.114 INFO    ] time= 12/06/2026 13:06:42
[2026-06-12 13:06:42,146.146 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 13:06:42,152.152 INFO    ] Checking for existing commands in stream...
[2026-06-12 13:06:42,219.219 INFO    ] No existing commands found in stream
[2026-06-12 13:06:47,228.228 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 13:06:47,231.231 INFO    ] Waiting 1.10 seconds before fallback handling...
[2026-06-12 13:06:48,739.739 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 13:06:48,740.740 INFO    ] Checking for system updates...
[2026-06-12 13:06:48,762.762 INFO    ] 200
[2026-06-12 13:06:48,763.763 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 13:06:48,793.793 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 13:06:48,795.795 INFO    ] No update needed
[2026-06-12 13:06:48,796.796 INFO    ] Checking for camera pi updates...
[2026-06-12 13:06:48,816.816 INFO    ] 200
[2026-06-12 13:06:48,817.817 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 13:06:48,840.840 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 13:06:48,886.886 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 13:06:48,887.887 INFO    ] No camera update needed
[2026-06-12 13:06:48,889.889 INFO    ] Script finished. Safe exiting...
[2026-06-12 13:06:48,890.890 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 13:06:48,893.893 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 13:06:48,896.896 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 13:06:50,936.936 INFO    ] ================================================
[2026-06-12 13:06:50,952.952 INFO    ] Launching Daemon at Fri Jun 12 13:06:50 IST 2026
[2026-06-12 13:06:50,964.964 INFO    ] ================================================
[2026-06-12 13:06:51,295.295 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 13:06:51
[2026-06-12 13:06:51,606.606 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 13:06:51,748.748 INFO    ] Initializing speech engine...
[2026-06-12 13:06:51,753.753 INFO    ] 2026-06-12 13:06:51
[2026-06-12 13:06:51,954.954 INFO    ] 2026-06-12 13:06:51
[2026-06-12 13:06:51,984.984 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 13:06:52,167.167 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 13:06:52,170.170 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 13:06:52,302.302 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 13:06:52,364.364 INFO    ] time= 12/06/2026 13:06:52
[2026-06-12 13:06:52,396.396 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 13:06:52,402.402 INFO    ] Checking for existing commands in stream...
[2026-06-12 13:06:52,469.469 INFO    ] No existing commands found in stream
[2026-06-12 13:06:57,478.478 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 13:06:57,481.481 INFO    ] Waiting 1.64 seconds before fallback handling...
[2026-06-12 13:06:59,472.472 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 13:06:59,474.474 INFO    ] Checking for system updates...
[2026-06-12 13:06:59,494.494 INFO    ] 200
[2026-06-12 13:06:59,496.496 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 13:06:59,526.526 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 13:06:59,527.527 INFO    ] No update needed
[2026-06-12 13:06:59,528.528 INFO    ] Checking for camera pi updates...
[2026-06-12 13:06:59,548.548 INFO    ] 200
[2026-06-12 13:06:59,549.549 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 13:06:59,574.574 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 13:06:59,609.609 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 13:06:59,611.611 INFO    ] No camera update needed
[2026-06-12 13:06:59,612.612 INFO    ] Script finished. Safe exiting...
[2026-06-12 13:06:59,613.613 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 13:06:59,616.616 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 13:06:59,619.619 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 13:07:01,676.676 INFO    ] ================================================
[2026-06-12 13:07:01,696.696 INFO    ] Launching Daemon at Fri Jun 12 13:07:01 IST 2026
[2026-06-12 13:07:01,712.712 INFO    ] ================================================
[2026-06-12 13:07:02,117.117 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 13:07:02
[2026-06-12 13:07:02,505.505 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 13:07:02,672.672 INFO    ] Initializing speech engine...
[2026-06-12 13:07:02,678.678 INFO    ] 2026-06-12 13:07:02
[2026-06-12 13:07:02,905.905 INFO    ] 2026-06-12 13:07:02
[2026-06-12 13:07:02,935.935 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 13:07:03,068.068 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 13:07:03,135.135 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 13:07:03,277.277 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 13:07:03,334.334 INFO    ] time= 12/06/2026 13:07:03
[2026-06-12 13:07:03,373.373 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 13:07:03,384.384 INFO    ] Checking for existing commands in stream...
[2026-06-12 13:07:03,461.461 INFO    ] No existing commands found in stream
[2026-06-12 13:07:08,471.471 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 13:07:08,473.473 INFO    ] Waiting 0.40 seconds before fallback handling...
[2026-06-12 13:07:09,282.282 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 13:07:09,284.284 INFO    ] Checking for system updates...
[2026-06-12 13:07:09,322.322 INFO    ] 200
[2026-06-12 13:07:09,325.325 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 13:07:09,378.378 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 13:07:09,381.381 INFO    ] No update needed
[2026-06-12 13:07:09,384.384 INFO    ] Checking for camera pi updates...
[2026-06-12 13:07:09,419.419 INFO    ] 200
[2026-06-12 13:07:09,422.422 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 13:07:09,463.463 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 13:07:09,503.503 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 13:07:09,506.506 INFO    ] No camera update needed
[2026-06-12 13:07:09,509.509 INFO    ] Script finished. Safe exiting...
[2026-06-12 13:07:09,511.511 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 13:07:09,517.517 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 13:07:09,523.523 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 13:07:11,563.563 INFO    ] ================================================
[2026-06-12 13:07:11,580.580 INFO    ] Launching Daemon at Fri Jun 12 13:07:11 IST 2026
[2026-06-12 13:07:11,591.591 INFO    ] ================================================
[2026-06-12 13:07:11,940.940 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 13:07:11
[2026-06-12 13:07:12,281.281 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 13:07:12,432.432 INFO    ] Initializing speech engine...
[2026-06-12 13:07:12,438.438 INFO    ] 2026-06-12 13:07:12
[2026-06-12 13:07:12,648.648 INFO    ] 2026-06-12 13:07:12
[2026-06-12 13:07:12,678.678 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 13:07:12,808.808 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 13:07:12,867.867 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 13:07:13,007.007 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 13:07:13,076.076 INFO    ] time= 12/06/2026 13:07:13
[2026-06-12 13:07:13,101.101 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 13:07:13,108.108 INFO    ] Checking for existing commands in stream...
[2026-06-12 13:07:13,175.175 INFO    ] No existing commands found in stream
[2026-06-12 13:07:18,195.195 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 13:07:18,198.198 INFO    ] Waiting 1.02 seconds before fallback handling...
[2026-06-12 13:07:19,568.568 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 13:07:19,570.570 INFO    ] Checking for system updates...
[2026-06-12 13:07:19,591.591 INFO    ] 200
[2026-06-12 13:07:19,592.592 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 13:07:19,623.623 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 13:07:19,624.624 INFO    ] No update needed
[2026-06-12 13:07:19,626.626 INFO    ] Checking for camera pi updates...
[2026-06-12 13:07:19,647.647 INFO    ] 200
[2026-06-12 13:07:19,649.649 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 13:07:19,675.675 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 13:07:19,720.720 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 13:07:19,722.722 INFO    ] No camera update needed
[2026-06-12 13:07:19,723.723 INFO    ] Script finished. Safe exiting...
[2026-06-12 13:07:19,724.724 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 13:07:19,728.728 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 13:07:19,731.731 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 13:07:21,770.770 INFO    ] ================================================
[2026-06-12 13:07:21,786.786 INFO    ] Launching Daemon at Fri Jun 12 13:07:21 IST 2026
[2026-06-12 13:07:21,798.798 INFO    ] ================================================
[2026-06-12 13:07:22,141.141 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 13:07:22
[2026-06-12 13:07:22,454.454 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 13:07:22,583.583 INFO    ] Initializing speech engine...
[2026-06-12 13:07:22,591.591 INFO    ] 2026-06-12 13:07:22
[2026-06-12 13:07:22,803.803 INFO    ] 2026-06-12 13:07:22
[2026-06-12 13:07:22,832.832 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 13:07:23,015.015 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 13:07:23,018.018 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 13:07:23,146.146 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 13:07:23,212.212 INFO    ] time= 12/06/2026 13:07:23
[2026-06-12 13:07:23,244.244 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 13:07:23,250.250 INFO    ] Checking for existing commands in stream...
[2026-06-12 13:07:23,317.317 INFO    ] No existing commands found in stream
[2026-06-12 13:07:28,331.331 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 13:07:28,334.334 INFO    ] Waiting 3.93 seconds before fallback handling...
[2026-06-12 13:07:32,587.587 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 13:07:32,588.588 INFO    ] Checking for system updates...
[2026-06-12 13:07:32,609.609 INFO    ] 200
[2026-06-12 13:07:32,610.610 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 13:07:32,641.641 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 13:07:32,642.642 INFO    ] No update needed
[2026-06-12 13:07:32,644.644 INFO    ] Checking for camera pi updates...
[2026-06-12 13:07:32,663.663 INFO    ] 200
[2026-06-12 13:07:32,664.664 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 13:07:32,689.689 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 13:07:32,714.714 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 13:07:32,716.716 INFO    ] No camera update needed
[2026-06-12 13:07:32,717.717 INFO    ] Script finished. Safe exiting...
[2026-06-12 13:07:32,718.718 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 13:07:32,721.721 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 13:07:32,724.724 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 13:07:34,763.763 INFO    ] ================================================
[2026-06-12 13:07:34,778.778 INFO    ] Launching Daemon at Fri Jun 12 13:07:34 IST 2026
[2026-06-12 13:07:34,789.789 INFO    ] ================================================
[2026-06-12 13:07:35,124.124 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 13:07:35
[2026-06-12 13:07:35,454.454 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 13:07:35,604.604 INFO    ] Initializing speech engine...
[2026-06-12 13:07:35,610.610 INFO    ] 2026-06-12 13:07:35
[2026-06-12 13:07:35,820.820 INFO    ] 2026-06-12 13:07:35
[2026-06-12 13:07:35,849.849 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 13:07:36,034.034 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 13:07:36,044.044 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 13:07:36,177.177 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 13:07:36,244.244 INFO    ] time= 12/06/2026 13:07:36
[2026-06-12 13:07:36,268.268 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 13:07:36,270.270 INFO    ] Checking for existing commands in stream...
[2026-06-12 13:07:36,366.366 INFO    ] No existing commands found in stream
[2026-06-12 13:07:41,381.381 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 13:07:41,384.384 INFO    ] Waiting 2.73 seconds before fallback handling...
[2026-06-12 13:07:44,482.482 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 13:07:44,484.484 INFO    ] Checking for system updates...
[2026-06-12 13:07:44,505.505 INFO    ] 200
[2026-06-12 13:07:44,506.506 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 13:07:44,538.538 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 13:07:44,540.540 INFO    ] No update needed
[2026-06-12 13:07:44,541.541 INFO    ] Checking for camera pi updates...
[2026-06-12 13:07:44,562.562 INFO    ] 200
[2026-06-12 13:07:44,563.563 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 13:07:44,586.586 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 13:07:44,621.621 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 13:07:44,622.622 INFO    ] No camera update needed
[2026-06-12 13:07:44,624.624 INFO    ] Script finished. Safe exiting...
[2026-06-12 13:07:44,625.625 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 13:07:44,628.628 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 13:07:44,631.631 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 13:07:46,670.670 INFO    ] ================================================
[2026-06-12 13:07:46,685.685 INFO    ] Launching Daemon at Fri Jun 12 13:07:46 IST 2026
[2026-06-12 13:07:46,696.696 INFO    ] ================================================
[2026-06-12 13:07:47,046.046 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 13:07:47
[2026-06-12 13:07:47,358.358 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 13:07:47,500.500 INFO    ] Initializing speech engine...
[2026-06-12 13:07:47,505.505 INFO    ] 2026-06-12 13:07:47
[2026-06-12 13:07:47,707.707 INFO    ] 2026-06-12 13:07:47
[2026-06-12 13:07:47,735.735 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 13:07:47,919.919 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 13:07:47,928.928 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 13:07:48,053.053 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 13:07:48,115.115 INFO    ] time= 12/06/2026 13:07:48
[2026-06-12 13:07:48,147.147 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 13:07:48,153.153 INFO    ] Checking for existing commands in stream...
[2026-06-12 13:07:48,220.220 INFO    ] No existing commands found in stream
[2026-06-12 13:07:53,229.229 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 13:07:53,232.232 INFO    ] Waiting 3.91 seconds before fallback handling...
[2026-06-12 13:07:57,484.484 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 13:07:57,485.485 INFO    ] Checking for system updates...
[2026-06-12 13:07:57,506.506 INFO    ] 200
[2026-06-12 13:07:57,507.507 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 13:07:57,537.537 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 13:07:57,538.538 INFO    ] No update needed
[2026-06-12 13:07:57,539.539 INFO    ] Checking for camera pi updates...
[2026-06-12 13:07:57,560.560 INFO    ] 200
[2026-06-12 13:07:57,561.561 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 13:07:57,586.586 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 13:07:57,622.622 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 13:07:57,623.623 INFO    ] No camera update needed
[2026-06-12 13:07:57,624.624 INFO    ] Script finished. Safe exiting...
[2026-06-12 13:07:57,626.626 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 13:07:57,628.628 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 13:07:57,631.631 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 13:07:59,670.670 INFO    ] ================================================
[2026-06-12 13:07:59,686.686 INFO    ] Launching Daemon at Fri Jun 12 13:07:59 IST 2026
[2026-06-12 13:07:59,697.697 INFO    ] ================================================
[2026-06-12 13:08:00,039.039 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 13:08:00
[2026-06-12 13:08:00,350.350 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 13:08:00,483.483 INFO    ] Initializing speech engine...
[2026-06-12 13:08:00,488.488 INFO    ] 2026-06-12 13:08:00
[2026-06-12 13:08:00,715.715 INFO    ] 2026-06-12 13:08:00
[2026-06-12 13:08:00,746.746 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 13:08:00,940.940 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 13:08:00,944.944 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 13:08:01,082.082 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 13:08:01,138.138 INFO    ] time= 12/06/2026 13:08:01
[2026-06-12 13:08:01,171.171 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 13:08:01,188.188 INFO    ] Checking for existing commands in stream...
[2026-06-12 13:08:01,262.262 INFO    ] No existing commands found in stream
[2026-06-12 13:08:06,273.273 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 13:08:06,276.276 INFO    ] Waiting 0.54 seconds before fallback handling...
[2026-06-12 13:08:07,192.192 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 13:08:07,194.194 INFO    ] Checking for system updates...
[2026-06-12 13:08:07,215.215 INFO    ] 200
[2026-06-12 13:08:07,217.217 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 13:08:07,251.251 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 13:08:07,252.252 INFO    ] No update needed
[2026-06-12 13:08:07,254.254 INFO    ] Checking for camera pi updates...
[2026-06-12 13:08:07,273.273 INFO    ] 200
[2026-06-12 13:08:07,275.275 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 13:08:07,298.298 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 13:08:07,335.335 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 13:08:07,336.336 INFO    ] No camera update needed
[2026-06-12 13:08:07,338.338 INFO    ] Script finished. Safe exiting...
[2026-06-12 13:08:07,339.339 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 13:08:07,342.342 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 13:08:07,345.345 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 13:08:09,384.384 INFO    ] ================================================
[2026-06-12 13:08:09,399.399 INFO    ] Launching Daemon at Fri Jun 12 13:08:09 IST 2026
[2026-06-12 13:08:09,410.410 INFO    ] ================================================
[2026-06-12 13:08:09,744.744 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 13:08:09
[2026-06-12 13:08:10,060.060 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 13:08:10,205.205 INFO    ] Initializing speech engine...
[2026-06-12 13:08:10,210.210 INFO    ] 2026-06-12 13:08:10
[2026-06-12 13:08:10,414.414 INFO    ] 2026-06-12 13:08:10
[2026-06-12 13:08:10,444.444 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 13:08:10,627.627 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 13:08:10,637.637 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 13:08:10,768.768 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 13:08:10,827.827 INFO    ] time= 12/06/2026 13:08:10
[2026-06-12 13:08:10,860.860 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 13:08:10,866.866 INFO    ] Checking for existing commands in stream...
[2026-06-12 13:08:10,934.934 INFO    ] No existing commands found in stream
[2026-06-12 13:08:15,943.943 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 13:08:15,946.946 INFO    ] Waiting 0.87 seconds before fallback handling...
[2026-06-12 13:08:17,168.168 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 13:08:17,170.170 INFO    ] Checking for system updates...
[2026-06-12 13:08:17,191.191 INFO    ] 200
[2026-06-12 13:08:17,192.192 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 13:08:17,223.223 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 13:08:17,225.225 INFO    ] No update needed
[2026-06-12 13:08:17,226.226 INFO    ] Checking for camera pi updates...
[2026-06-12 13:08:17,245.245 INFO    ] 200
[2026-06-12 13:08:17,247.247 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 13:08:17,269.269 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 13:08:17,307.307 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 13:08:17,308.308 INFO    ] No camera update needed
[2026-06-12 13:08:17,310.310 INFO    ] Script finished. Safe exiting...
[2026-06-12 13:08:17,311.311 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 13:08:17,314.314 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 13:08:17,317.317 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 13:08:19,357.357 INFO    ] ================================================
[2026-06-12 13:08:19,372.372 INFO    ] Launching Daemon at Fri Jun 12 13:08:19 IST 2026
[2026-06-12 13:08:19,382.382 INFO    ] ================================================
[2026-06-12 13:08:19,730.730 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 13:08:19
[2026-06-12 13:08:20,059.059 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 13:08:20,206.206 INFO    ] Initializing speech engine...
[2026-06-12 13:08:20,213.213 INFO    ] 2026-06-12 13:08:20
[2026-06-12 13:08:20,420.420 INFO    ] 2026-06-12 13:08:20
[2026-06-12 13:08:20,444.444 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 13:08:20,636.636 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 13:08:20,645.645 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 13:08:20,774.774 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 13:08:20,836.836 INFO    ] time= 12/06/2026 13:08:20
[2026-06-12 13:08:20,869.869 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 13:08:20,876.876 INFO    ] Checking for existing commands in stream...
[2026-06-12 13:08:20,943.943 INFO    ] No existing commands found in stream
[2026-06-12 13:08:22,138.138 INFO    ] Received new command: ID=1781249902233-0
[2026-06-12 13:08:22,140.140 INFO    ] process_and_cleanup_command: msg_id=1781249902233-0
[2026-06-12 13:08:22,141.141 INFO    ] is_command_expired: timestamp=2026-06-12T07:38:21.680Z, expiry=30s
[2026-06-12 13:08:22,211.211 INFO    ] Command removed from stream: 1781249902233-0. returning for processing...
[2026-06-12 13:08:22,213.213 INFO    ] ***** get_valid_command
[2026-06-12 13:08:22,214.214 INFO    ] {'timeout': '10', 'data': '{"request_id":"start-order-1781249901680-q0wcwnaop","orderId":"TM09202301260612130741049","is_vending":false}', 'timestamp': '2026-06-12T07:38:21.680Z', 'source': 'webapp', 'command': 'start-order'}
[2026-06-12 13:08:22,215.215 INFO    ] ***** Parsed command data: {'request_id': 'start-order-1781249901680-q0wcwnaop', 'is_vending': False, 'orderId': 'TM09202301260612130741049'}
[2026-06-12 13:08:22,217.217 INFO    ] Handling start order...
[2026-06-12 13:08:22,218.218 INFO    ] handle_start_order_command
[2026-06-12 13:08:22,222.222 INFO    ] _send_start_order_success: request_id=start-order-1781249901680-q0wcwnaop, order_id=TM09202301260612130741049
[2026-06-12 13:08:22,223.223 INFO    ] [_send_start_order_success] Adding message to stream: machine:TM09202301
[2026-06-12 13:08:22,283.283 INFO    ] [_send_start_order_success] Message added to stream with ID: 1781249902447-0
[2026-06-12 13:08:22,286.286 INFO    ] ✅ Start-order command succeeded - order locked, waiting for process-order command
[2026-06-12 13:08:22,288.288 INFO    ] Checking for system updates...
[2026-06-12 13:08:22,331.331 INFO    ] 200
[2026-06-12 13:08:22,334.334 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 13:08:22,382.382 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 13:08:22,384.384 INFO    ] No update needed
[2026-06-12 13:08:22,385.385 INFO    ] Checking for camera pi updates...
[2026-06-12 13:08:22,408.408 INFO    ] 200
[2026-06-12 13:08:22,410.410 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 13:08:22,433.433 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 13:08:22,475.475 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 13:08:22,476.476 INFO    ] No camera update needed
[2026-06-12 13:08:22,478.478 INFO    ] Script finished. Safe exiting...
[2026-06-12 13:08:22,479.479 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 13:08:22,482.482 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 13:08:22,485.485 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 13:08:24,523.523 INFO    ] ================================================
[2026-06-12 13:08:24,538.538 INFO    ] Launching Daemon at Fri Jun 12 13:08:24 IST 2026
[2026-06-12 13:08:24,548.548 INFO    ] ================================================
[2026-06-12 13:08:24,911.911 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 13:08:24
[2026-06-12 13:08:25,228.228 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 13:08:25,372.372 INFO    ] Initializing speech engine...
[2026-06-12 13:08:25,377.377 INFO    ] 2026-06-12 13:08:25
[2026-06-12 13:08:25,582.582 INFO    ] 2026-06-12 13:08:25
[2026-06-12 13:08:25,610.610 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 13:08:25,795.795 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 13:08:25,798.798 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 13:08:25,932.932 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 13:08:25,989.989 INFO    ] time= 12/06/2026 13:08:25
[2026-06-12 13:08:26,024.024 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 13:08:26,029.029 INFO    ] Checking for existing commands in stream...
[2026-06-12 13:08:26,101.101 INFO    ] Found 2 existing command(s) in stream
[2026-06-12 13:08:26,104.104 INFO    ] Checking historical command: ID=1781249902447-0
[2026-06-12 13:08:26,130.130 INFO    ] process_and_cleanup_command: msg_id=1781249902447-0
[2026-06-12 13:08:26,132.132 INFO    ] is_command_expired: timestamp=2026-06-12T07:38:22.222567Z, expiry=30s
[2026-06-12 13:08:26,241.241 INFO    ] Command removed from stream: 1781249902447-0. returning for processing...
[2026-06-12 13:08:26,244.244 INFO    ] ***** get_valid_command
[2026-06-12 13:08:26,247.247 INFO    ] {'metadata_order_id': 'TM09202301260612130741049', 'message_type': 'command_response', 'message': 'start-order success', 'imei': 'TM09202301', 'metadata_request_id': 'start-order-1781249901680-q0wcwnaop', 'status': 'success', 'timestamp': '2026-06-12T07:38:22.222567Z'}
[2026-06-12 13:08:26,252.252 INFO    ] Checking historical command: ID=1781249903920-0
[2026-06-12 13:08:26,254.254 INFO    ] process_and_cleanup_command: msg_id=1781249903920-0
[2026-06-12 13:08:26,258.258 INFO    ] is_command_expired: timestamp=2026-06-12T07:38:23.273Z, expiry=30s
[2026-06-12 13:08:26,312.312 INFO    ] Command removed from stream: 1781249903920-0. returning for processing...
[2026-06-12 13:08:26,315.315 INFO    ] ***** get_valid_command
[2026-06-12 13:08:26,318.318 INFO    ] {'source': 'webapp', 'timestamp': '2026-06-12T07:38:23.273Z', 'data': '{"request_id":"process-order-1781249903273-2ptjsqprq","orderId":"TM09202301260612130741049","is_vending":false,"accessCode":"73278409"}', 'timeout': '60', 'command': 'process-order'}
[2026-06-12 13:08:26,321.321 INFO    ] ***** Parsed command data: {'orderId': 'TM09202301260612130741049', 'request_id': 'process-order-1781249903273-2ptjsqprq', 'accessCode': '73278409', 'is_vending': False}
[2026-06-12 13:08:26,324.324 INFO    ] Handling process order...
[2026-06-12 13:08:26,328.328 INFO    ] Processing process-order command...
[2026-06-12 13:08:26,335.335 INFO    ] 🔍 Lock file Order ID: TM09202301260612130741049, TS: 2026-06-12 13:08:22
[2026-06-12 13:08:26,346.346 INFO    ] ✅ Order lock valid for TM09202301260612130741049
[2026-06-12 13:08:26,350.350 INFO    ] Received access code in process-order, skipping PHP API call
[2026-06-12 13:08:26,355.355 INFO    ] processing access code 73278409 for order TM09202301260612130741049
[2026-06-12 13:08:26,359.359 INFO    ] 🔍 Lock file Order ID: TM09202301260612130741049, TS: 2026-06-12 13:08:22
[2026-06-12 13:08:26,365.365 INFO    ] ✅ Order lock valid for TM09202301260612130741049
[2026-06-12 13:08:26,369.369 INFO    ] 2026-06-12 13:08:26
[2026-06-12 13:08:26,396.396 INFO    ] 200
[2026-06-12 13:08:26,402.402 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 13:08:26,407.407 INFO    ] 73278409
[2026-06-12 13:08:26,410.410 INFO    ] 2026-06-12 13:08:26
[2026-06-12 13:08:26,415.415 INFO    ] session id :777318128
[2026-06-12 13:08:26,418.418 INFO    ] http://localhost:5000/v2/getOrderByAccessCode?access_code=73278409&imei=TM09202301&session_id=777318128
[2026-06-12 13:08:27,098.098 INFO    ] 200
[2026-06-12 13:08:27,107.107 INFO    ] {"rstatus": true, "msg": "Order Data", "status": true, "data": {"mobile": "9176484440", "order_id": "TM09202301260612130741049", "bill_amount": "30", "invoice_bill": "30", "access_code": "73278409", "proposed_sku_json": [{"door_id": "2", "name": "KITKAT Nestle 4 Finger Chocolate 38g", "tray_id": "37", "unit_price": 30, "offer_id": "", "qty": 1, "image_url": "https://images.tinymart.in/product/186084-5395.png", "offer_desc": "", "sku_total": 30, "mrp": "30", "skuid": "186084"}]}}
[2026-06-12 13:08:27,112.112 INFO    ] 30
[2026-06-12 13:08:27,120.120 INFO    ] TM09202301260612130741049
[2026-06-12 13:08:27,125.125 INFO    ] 9176484440
[2026-06-12 13:08:27,132.132 INFO    ] 2026-06-12 13:08:27
[2026-06-12 13:08:27,133.133 INFO    ] Door Opening for user mobile ending with  four four four zero 
[2026-06-12 13:08:27,135.135 INFO    ] Door Opening for user mobile ending with  four four four zero 
[2026-06-12 13:08:27,136.136 INFO    ] 9c67e643a36438aa58c25f7f9bc5d2ce
[2026-06-12 13:08:27,137.137 INFO    ] 2026-06-12 13:08:27
[2026-06-12 13:08:27,139.139 INFO    ] playing audio file
[2026-06-12 13:08:27,148.148 INFO    ] 2026-06-12 13:08:27
[2026-06-12 13:08:27,150.150 INFO    ] 2026-06-12 13:08:27
[2026-06-12 13:08:27,152.152 INFO    ] publish_status: order_id=TM09202301260612130741049
[2026-06-12 13:08:27,154.154 INFO    ] [publish_status] Adding message to stream: order:TM09202301260612130741049
[2026-06-12 13:08:27,223.223 INFO    ] [publish_status] Message added to stream with ID: 1781249907389-0
[2026-06-12 13:08:27,225.225 INFO    ] Published to order:TM09202301260612130741049: {'order_id': 'TM09202301260612130741049', 'server_status': 'order-started', 'timestamp': '2026-06-12T07:38:27.151774Z', 'server_response': '{"status": true, "msg": "Order Data", "rstatus": true, "data": {"invoice_bill": "30", "mobile": "9176484440", "proposed_sku_json": [{"image_url": "https://images.tinymart.in/product/186084-5395.png", "mrp": "30", "skuid": "186084", "sku_total": 30, "qty": 1, "offer_id": "", "unit_price": 30, "name": "KITKAT Nestle 4 Finger Chocolate 38g", "door_id": "2", "tray_id": "37", "offer_desc": ""}], "order_id": "TM09202301260612130741049", "bill_amount": "30", "access_code": "73278409"}}'} (ID: 1781249907389-0)
[2026-06-12 13:08:27,597.597 INFO    ] {'order_id': 'TM09202301260612130741049', 'server_status': 'order-started', 'server_response': {'status': True, 'msg': 'Order Data', 'rstatus': True, 'data': {'invoice_bill': '30', 'mobile': '9176484440', 'proposed_sku_json': [{'image_url': 'https://images.tinymart.in/product/186084-5395.png', 'mrp': '30', 'skuid': '186084', 'sku_total': 30, 'qty': 1, 'offer_id': '', 'unit_price': 30, 'name': 'KITKAT Nestle 4 Finger Chocolate 38g', 'door_id': '2', 'tray_id': '37', 'offer_desc': ''}], 'order_id': 'TM09202301260612130741049', 'bill_amount': '30', 'access_code': '73278409'}}}
[2026-06-12 13:08:27,600.600 INFO    ] 200
[2026-06-12 13:08:27,603.603 INFO    ] {"data":{"order_id":"TM09202301260612130741049","server_status":"order-started","server_response":{"status":true,"msg":"Order Data","rstatus":true,"data":{"invoice_bill":"30","mobile":"9176484440","proposed_sku_json":[{"image_url":"https:\/\/images.tinymart.in\/product\/186084-5395.png","mrp":"30","skuid":"186084","sku_total":30,"qty":1,"offer_id":"","unit_price":30,"name":"KITKAT Nestle 4 Finger Chocolate 38g","door_id":"2","tray_id":"37","offer_desc":""}],"order_id":"TM09202301260612130741049","bill_amount":"30","access_code":"73278409"}}},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-12 13:08:27,607.607 INFO    ] {'response': {'status': True, 'code': 'ORDER_EXISTS', 'data': 'order updated successfully', 'msg': 'order updated successfully'}, 'data': {'order_id': 'TM09202301260612130741049', 'server_status': 'order-started', 'server_response': {'status': True, 'msg': 'Order Data', 'rstatus': True, 'data': {'invoice_bill': '30', 'mobile': '9176484440', 'proposed_sku_json': [{'image_url': 'https://images.tinymart.in/product/186084-5395.png', 'mrp': '30', 'offer_desc': '', 'sku_total': 30, 'qty': 1, 'name': 'KITKAT Nestle 4 Finger Chocolate 38g', 'unit_price': 30, 'door_id': '2', 'offer_id': '', 'skuid': '186084', 'tray_id': '37'}], 'order_id': 'TM09202301260612130741049', 'bill_amount': '30', 'access_code': '73278409'}}}}
[2026-06-12 13:08:27,610.610 INFO    ] 2026-06-12 13:08:27
[2026-06-12 13:08:27,654.654 INFO    ] 200
[2026-06-12 13:08:27,657.657 INFO    ] True
[2026-06-12 13:08:27,837.837 INFO    ] 200
[2026-06-12 13:08:27,840.840 INFO    ] {"rstatus": false, "error": {"umessage": "In Progress", "code": 20001, "tmessage": "In Progress", "data": {}}, "SectionSKU": {"skus": [], "Header": "Thank you for bearing with us :)"}, "SectionMain": {"Header": "Processing Order"}, "SectionStatus": {"UI_Header": "", "Note": "", "Header": " Your order is under process  ", "SubHeader": "Please wait while we process your order"}, "voiceNote": "Please Wait", "status": "False"}
[2026-06-12 13:08:27,843.843 INFO    ] {'error': {'umessage': 'In Progress', 'code': 20001, 'tmessage': 'In Progress', 'data': {}}, 'SectionSKU': {'skus': [], 'Header': 'Thank you for bearing with us :)'}, 'rstatus': False, 'SectionStatus': {'UI_Header': '', 'Note': '', 'SubHeader': 'Please wait while we process your order', 'Header': ' Your order is under process  '}, 'status': 'False', 'SectionMain': {'Header': 'Processing Order'}, 'voiceNote': 'Please Wait'}
[2026-06-12 13:08:27,846.846 INFO    ] *** process_order ***
[2026-06-12 13:08:28,985.985 INFO    ] 200
[2026-06-12 13:08:28,986.986 INFO    ] {"rstatus": true, "SectionSKU": {"skus": [], "Header": "Thank you for bearing with us :)"}, "SectionMain": {"Header": "Processing Order"}, "SectionStatus": {"UI_Header": "", "Note": "", "Header": " Your order is under process  ", "SubHeader": "Please wait while we process your order"}, "delay": 0, "voiceNote": "Please Wait", "status": "True"}
[2026-06-12 13:08:28,988.988 INFO    ] {'SectionStatus': {'UI_Header': '', 'Note': '', 'SubHeader': 'Please wait while we process your order', 'Header': ' Your order is under process  '}, 'SectionSKU': {'skus': [], 'Header': 'Thank you for bearing with us :)'}, 'rstatus': True, 'voiceNote': 'Please Wait', 'status': 'True', 'SectionMain': {'Header': 'Processing Order'}, 'delay': 0}
[2026-06-12 13:08:28,989.989 INFO    ] *** process_order ***
[2026-06-12 13:08:28,991.991 INFO    ] publish_status: order_id=TM09202301260612130741049
[2026-06-12 13:08:28,992.992 INFO    ] [publish_status] Adding message to stream: order:TM09202301260612130741049
[2026-06-12 13:08:29,073.073 INFO    ] [publish_status] Message added to stream with ID: 1781249909238-0
[2026-06-12 13:08:29,075.075 INFO    ] Published to order:TM09202301260612130741049: {'order_id': 'TM09202301260612130741049', 'server_status': 'doorOpened', 'server_response': '{"SectionStatus": {"UI_Header": "", "Note": "", "SubHeader": "You can pull the door now.", "Header": " Your order is under process  "}, "SectionSKU": {"skus": [], "Header": "Thank you for bearing with us :)"}, "rstatus": true, "voiceNote": "Door is open...", "status": "True", "SectionMain": {"Header": "Processing Order"}, "delay": 0}'} (ID: 1781249909238-0)
[2026-06-12 13:08:30,122.122 INFO    ] 2026-06-12 13:08:30
[2026-06-12 13:08:30,124.124 INFO    ] publish_status: order_id=TM09202301260612130741049
[2026-06-12 13:08:30,126.126 INFO    ] [publish_status] Adding message to stream: order:TM09202301260612130741049
[2026-06-12 13:08:30,191.191 INFO    ] [publish_status] Message added to stream with ID: 1781249910356-0
[2026-06-12 13:08:30,194.194 INFO    ] Published to order:TM09202301260612130741049: {'order_id': 'TM09202301260612130741049', 'server_status': 'processOrder', 'timestamp': '2026-06-12T07:38:30.123137Z', 'server_response': '{"SectionStatus": {"UI_Header": "", "Note": "", "SubHeader": "Please wait while we process your order", "Header": " Your order is under process  "}, "SectionSKU": {"skus": [], "Header": "Thank you for bearing with us :)"}, "rstatus": true, "voiceNote": "Please Wait", "status": "True", "SectionMain": {"Header": "Processing Order"}, "delay": 0}'} (ID: 1781249910356-0)
[2026-06-12 13:08:30,309.309 INFO    ] {'order_id': 'TM09202301260612130741049', 'server_status': 'processOrder', 'server_response': {'SectionStatus': {'UI_Header': '', 'Note': '', 'SubHeader': 'Please wait while we process your order', 'Header': ' Your order is under process  '}, 'SectionSKU': {'skus': [], 'Header': 'Thank you for bearing with us :)'}, 'rstatus': True, 'voiceNote': 'Please Wait', 'status': 'True', 'SectionMain': {'Header': 'Processing Order'}, 'delay': 0}}
[2026-06-12 13:08:30,311.311 INFO    ] 200
[2026-06-12 13:08:30,312.312 INFO    ] {"data":{"order_id":"TM09202301260612130741049","server_status":"processOrder","server_response":{"SectionStatus":{"UI_Header":"","Note":"","SubHeader":"Please wait while we process your order","Header":" Your order is under process  "},"SectionSKU":{"skus":[],"Header":"Thank you for bearing with us :)"},"rstatus":true,"voiceNote":"Please Wait","status":"true","SectionMain":{"Header":"Processing Order"},"delay":0}},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-12 13:08:30,314.314 INFO    ] {'response': {'status': True, 'code': 'ORDER_EXISTS', 'data': 'order updated successfully', 'msg': 'order updated successfully'}, 'data': {'order_id': 'TM09202301260612130741049', 'server_status': 'processOrder', 'server_response': {'SectionStatus': {'UI_Header': '', 'Note': '', 'SubHeader': 'Please wait while we process your order', 'Header': ' Your order is under process  '}, 'SectionSKU': {'skus': [], 'Header': 'Thank you for bearing with us :)'}, 'rstatus': True, 'voiceNote': 'Please Wait', 'status': 'true', 'SectionMain': {'Header': 'Processing Order'}, 'delay': 0}}}
[2026-06-12 13:08:30,316.316 INFO    ] 2026-06-12 13:08:30
[2026-06-12 13:08:30,317.317 INFO    ] None
[2026-06-12 13:08:30,318.318 INFO    ] Opening Door now
[2026-06-12 13:08:30,319.319 INFO    ] Opening Door now
[2026-06-12 13:08:30,321.321 INFO    ] 08e5d1063504bf393c26f0bfa436e9f9
[2026-06-12 13:08:30,322.322 INFO    ] 2026-06-12 13:08:30
[2026-06-12 13:08:30,323.323 INFO    ] playing audio file
[2026-06-12 13:08:30,333.333 INFO    ] 2026-06-12 13:08:30
[2026-06-12 13:08:30,335.335 INFO    ] 2026-06-12 13:08:30
[2026-06-12 13:08:33,376.376 INFO    ] 200
[2026-06-12 13:08:33,378.378 INFO    ] {"rstatus": false, "error": {"umessage": "In Progress", "code": 20001, "tmessage": "In Progress", "data": {}}, "SectionSKU": {"skus": [{"name": "KITKAT Nestle 4 Finger Chocolate 38g", "qty": 1}], "Header": "Pick the below items from the door"}, "SectionMain": {"Header": "Door Open"}, "SectionStatus": {"UI_Header": "DOOR 2\nIS \nOPEN \nNOW", "Note": "Please Close the door after picking up products", "Header": "Please Close Door 2", "SubHeader": "Please Pick the Products and close the door"}, "voiceNote": "Door 2 is open now", "status": "False"}
[2026-06-12 13:08:33,380.380 INFO    ] {'error': {'umessage': 'In Progress', 'code': 20001, 'tmessage': 'In Progress', 'data': {}}, 'SectionSKU': {'skus': [{'name': 'KITKAT Nestle 4 Finger Chocolate 38g', 'qty': 1}], 'Header': 'Pick the below items from the door'}, 'rstatus': False, 'SectionStatus': {'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'Note': 'Please Close the door after picking up products', 'SubHeader': 'Please Pick the Products and close the door', 'Header': 'Please Close Door 2'}, 'status': 'False', 'SectionMain': {'Header': 'Door Open'}, 'voiceNote': 'Door 2 is open now'}
[2026-06-12 13:08:36,577.577 INFO    ] 200
[2026-06-12 13:08:36,578.578 INFO    ] {"rstatus": false, "error": {"umessage": "In Progress", "code": 20001, "tmessage": "In Progress", "data": {}}, "SectionSKU": {"skus": [{"name": "KITKAT Nestle 4 Finger Chocolate 38g", "qty": 1}], "Header": "Pick the below items from the door"}, "SectionMain": {"Header": "Door Open"}, "SectionStatus": {"UI_Header": "DOOR 2\nIS \nOPEN \nNOW", "Note": "Please Close the door after picking up products", "Header": "Please Close Door 2", "SubHeader": "Please Pick the Products and close the door"}, "voiceNote": "Please close door 2", "status": "False"}
[2026-06-12 13:08:36,580.580 INFO    ] {'error': {'umessage': 'In Progress', 'code': 20001, 'tmessage': 'In Progress', 'data': {}}, 'SectionSKU': {'skus': [{'name': 'KITKAT Nestle 4 Finger Chocolate 38g', 'qty': 1}], 'Header': 'Pick the below items from the door'}, 'rstatus': False, 'SectionStatus': {'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'Note': 'Please Close the door after picking up products', 'SubHeader': 'Please Pick the Products and close the door', 'Header': 'Please Close Door 2'}, 'status': 'False', 'SectionMain': {'Header': 'Door Open'}, 'voiceNote': 'Please close door 2'}
[2026-06-12 13:08:39,623.623 INFO    ] 200
[2026-06-12 13:08:39,625.625 INFO    ] {"rstatus": false, "error": {"umessage": "In Progress", "code": 20001, "tmessage": "In Progress", "data": {}}, "SectionSKU": {"skus": [{"name": "KITKAT Nestle 4 Finger Chocolate 38g", "qty": 1}], "Header": "Pick the below items from the door"}, "SectionMain": {"Header": "Door Open"}, "SectionStatus": {"UI_Header": "DOOR 2\nIS \nOPEN \nNOW", "Note": "Please Close the door after picking up products", "Header": "Please Close Door 2", "SubHeader": "Please Pick the Products and close the door"}, "voiceNote": "Please close door 2", "status": "False"}
[2026-06-12 13:08:39,627.627 INFO    ] Please close door 2
[2026-06-12 13:08:39,628.628 INFO    ] Please close door 2
[2026-06-12 13:08:39,630.630 INFO    ] 758e46684c76e887a5f58d4738034bed
[2026-06-12 13:08:39,632.632 INFO    ] 2026-06-12 13:08:39
[2026-06-12 13:08:39,633.633 INFO    ] playing audio file
[2026-06-12 13:08:39,643.643 INFO    ] 2026-06-12 13:08:39
[2026-06-12 13:08:39,645.645 INFO    ] publish_status: order_id=TM09202301260612130741049
[2026-06-12 13:08:39,647.647 INFO    ] [publish_status] Adding message to stream: order:TM09202301260612130741049
[2026-06-12 13:08:39,725.725 INFO    ] [publish_status] Message added to stream with ID: 1781249919891-0
[2026-06-12 13:08:39,726.726 INFO    ] Published to order:TM09202301260612130741049: {'order_id': 'TM09202301260612130741049', 'server_status': 'OrderStatus', 'timestamp': '2026-06-12T07:38:39.644878Z', 'server_response': '{"error": {"umessage": "In Progress", "code": 20001, "tmessage": "In Progress", "data": {}}, "SectionSKU": {"skus": [{"name": "KITKAT Nestle 4 Finger Chocolate 38g", "qty": 1}], "Header": "Pick the below items from the door"}, "rstatus": false, "SectionStatus": {"UI_Header": "DOOR 2\\nIS \\nOPEN \\nNOW", "Note": "Please Close the door after picking up products", "SubHeader": "Please Pick the Products and close the door", "Header": "Please Close Door 2"}, "status": "False", "SectionMain": {"Header": "Door Open"}, "voiceNote": "Please close door 2"}'} (ID: 1781249919891-0)
[2026-06-12 13:08:40,109.109 INFO    ] {'order_id': 'TM09202301260612130741049', 'server_status': 'OrderStatus', 'server_response': {'error': {'umessage': 'In Progress', 'code': 20001, 'tmessage': 'In Progress', 'data': {}}, 'SectionSKU': {'skus': [{'name': 'KITKAT Nestle 4 Finger Chocolate 38g', 'qty': 1}], 'Header': 'Pick the below items from the door'}, 'rstatus': False, 'SectionStatus': {'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'Note': 'Please Close the door after picking up products', 'SubHeader': 'Please Pick the Products and close the door', 'Header': 'Please Close Door 2'}, 'status': 'False', 'SectionMain': {'Header': 'Door Open'}, 'voiceNote': 'Please close door 2'}}
[2026-06-12 13:08:40,111.111 INFO    ] 200
[2026-06-12 13:08:40,112.112 INFO    ] {"data":{"order_id":"TM09202301260612130741049","server_status":"OrderStatus","server_response":{"error":{"umessage":"In Progress","code":20001,"tmessage":"In Progress","data":[]},"SectionSKU":{"skus":[{"name":"KITKAT Nestle 4 Finger Chocolate 38g","qty":1}],"Header":"Pick the below items from the door"},"rstatus":false,"SectionStatus":{"UI_Header":"DOOR 2\nIS \nOPEN \nNOW","Note":"Please Close the door after picking up products","SubHeader":"Please Pick the Products and close the door","Header":"Please Close Door 2"},"status":"false","SectionMain":{"Header":"Door Open"},"voiceNote":"Please close door 2"}},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-12 13:08:40,114.114 INFO    ] {'response': {'status': True, 'code': 'ORDER_EXISTS', 'data': 'order updated successfully', 'msg': 'order updated successfully'}, 'data': {'order_id': 'TM09202301260612130741049', 'server_status': 'OrderStatus', 'server_response': {'error': {'umessage': 'In Progress', 'code': 20001, 'tmessage': 'In Progress', 'data': []}, 'SectionSKU': {'skus': [{'name': 'KITKAT Nestle 4 Finger Chocolate 38g', 'qty': 1}], 'Header': 'Pick the below items from the door'}, 'rstatus': False, 'SectionStatus': {'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'Note': 'Please Close the door after picking up products', 'SubHeader': 'Please Pick the Products and close the door', 'Header': 'Please Close Door 2'}, 'status': 'false', 'SectionMain': {'Header': 'Door Open'}, 'voiceNote': 'Please close door 2'}}}
[2026-06-12 13:08:40,116.116 INFO    ] {'error': {'umessage': 'In Progress', 'code': 20001, 'tmessage': 'In Progress', 'data': {}}, 'SectionSKU': {'skus': [{'name': 'KITKAT Nestle 4 Finger Chocolate 38g', 'qty': 1}], 'Header': 'Pick the below items from the door'}, 'rstatus': False, 'SectionStatus': {'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'Note': 'Please Close the door after picking up products', 'SubHeader': 'Please Pick the Products and close the door', 'Header': 'Please Close Door 2'}, 'status': 'False', 'SectionMain': {'Header': 'Door Open'}, 'voiceNote': 'Please close door 2'}
[2026-06-12 13:08:43,152.152 INFO    ] 200
[2026-06-12 13:08:43,154.154 INFO    ] {"rstatus": true, "SectionSKU": {"skus": [], "Header": "If you like us, tell others... else tell us"}, "SectionMain": {"Header": "Door Closed"}, "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, "voiceNote": "Transaction Completed", "status": "True"}
[2026-06-12 13:08:43,156.156 INFO    ] {'SectionStatus': {'UI_Header': '', 'Note': 'If any due amount, clear at https://go.tinymart.in', 'SubHeader': 'Please wait for invoice to generate', 'Header': ' Order is complete '}, 'SectionSKU': {'skus': [], 'Header': 'If you like us, tell others... else tell us'}, 'rstatus': True, 'voiceNote': 'Transaction Completed', 'status': 'True', 'SectionMain': {'Header': 'Door Closed'}, 'delay': 100}
[2026-06-12 13:08:43,158.158 INFO    ] 2026-06-12 13:08:43
[2026-06-12 13:08:43,159.159 INFO    ] Order Completed 
[2026-06-12 13:08:43,161.161 INFO    ] Order Completed 
[2026-06-12 13:08:43,163.163 INFO    ] 193c8a8cf3bf490ccfe0b23598544a83
[2026-06-12 13:08:43,164.164 INFO    ] 2026-06-12 13:08:43
[2026-06-12 13:08:43,166.166 INFO    ] playing audio file
[2026-06-12 13:08:43,178.178 INFO    ] 2026-06-12 13:08:43
[2026-06-12 13:08:43,180.180 INFO    ] {'SectionStatus': {'UI_Header': '', 'Note': 'If any due amount, clear at https://go.tinymart.in', 'SubHeader': 'Please wait for invoice to generate', 'Header': ' Order is complete '}, 'SectionSKU': {'skus': [], 'Header': 'If you like us, tell others... else tell us'}, 'rstatus': True, 'voiceNote': 'Transaction Completed', 'status': 'True', 'SectionMain': {'Header': 'Door Closed'}, 'delay': 100}
[2026-06-12 13:08:43,182.182 INFO    ] 2026-06-12 13:08:43
[2026-06-12 13:08:43,840.840 INFO    ] 200
[2026-06-12 13:08:43,842.842 INFO    ] {"rstatus": true, "orderId": "TM09202301260612130741049", "logic": "WBL", "anomaly": 0, "res": "True", "total_amount": 30.0, "skus": [{"door_id": "", "sku_total": 30.0, "skuid": "186084", "mrp": "30", "tray_id": "37", "image_url": "https://images.tinymart.in/product/186084-5395.png", "name": "KITKAT Nestle 4 Finger Chocolate 38g per peice", "qty": 1, "unit_price": "30"}]}
[2026-06-12 13:08:43,843.843 INFO    ] {'total_amount': 30.0, 'logic': 'WBL', 'res': 'True', 'rstatus': True, 'anomaly': 0, 'orderId': 'TM09202301260612130741049', 'skus': [{'image_url': 'https://images.tinymart.in/product/186084-5395.png', 'mrp': '30', 'sku_total': 30.0, 'qty': 1, 'unit_price': '30', 'name': 'KITKAT Nestle 4 Finger Chocolate 38g per peice', 'door_id': '', 'tray_id': '37', 'skuid': '186084'}]}
[2026-06-12 13:08:43,845.845 INFO    ] {'total_amount': 30.0, 'logic': 'WBL', 'res': 'True', 'rstatus': True, 'anomaly': 0, 'orderId': 'TM09202301260612130741049', 'skus': [{'image_url': 'https://images.tinymart.in/product/186084-5395.png', 'mrp': '30', 'sku_total': 30.0, 'qty': 1, 'unit_price': '30', 'name': 'KITKAT Nestle 4 Finger Chocolate 38g per peice', 'door_id': '', 'tray_id': '37', 'skuid': '186084'}]}
[2026-06-12 13:08:43,847.847 INFO    ] 2026-06-12 13:08:43
[2026-06-12 13:08:43,849.849 INFO    ] 2026-06-12 13:08:43
[2026-06-12 13:08:43,851.851 INFO    ] 30
[2026-06-12 13:08:43,853.853 INFO    ] 2026-06-12 13:08:43
[2026-06-12 13:08:43,854.854 INFO    ] 2026-06-12 13:08:43
[2026-06-12 13:08:43,856.856 INFO    ]  Your Bill Amount is 30
[2026-06-12 13:08:43,858.858 INFO    ]  Your Bill Amount is 30
[2026-06-12 13:08:43,859.859 INFO    ] 83d7bc98008395bac4df4c2fc2d248eb
[2026-06-12 13:08:43,861.861 INFO    ] 2026-06-12 13:08:43
[2026-06-12 13:08:43,863.863 INFO    ] playing audio file
[2026-06-12 13:08:43,873.873 INFO    ] 2026-06-12 13:08:43
[2026-06-12 13:08:43,875.875 INFO    ] 2026-06-12 13:08:43
[2026-06-12 13:08:43,877.877 INFO    ] publish_status: order_id=TM09202301260612130741049
[2026-06-12 13:08:43,878.878 INFO    ] [publish_status] Adding message to stream: order:TM09202301260612130741049
[2026-06-12 13:08:43,964.964 INFO    ] [publish_status] Message added to stream with ID: 1781249924130-0
[2026-06-12 13:08:43,966.966 INFO    ] Published to order:TM09202301260612130741049: {'order_id': 'TM09202301260612130741049', 'server_status': 'invoiceOrder', 'timestamp': '2026-06-12T07:38:43.876123Z', 'server_response': '{"total_amount": 30.0, "logic": "WBL", "res": "True", "rstatus": true, "anomaly": 0, "orderId": "TM09202301260612130741049", "skus": [{"image_url": "https://images.tinymart.in/product/186084-5395.png", "mrp": "30", "sku_total": 30.0, "qty": 1, "unit_price": "30", "name": "KITKAT Nestle 4 Finger Chocolate 38g per peice", "door_id": "", "tray_id": "37", "skuid": "186084"}]}'} (ID: 1781249924130-0)
[2026-06-12 13:08:44,283.283 INFO    ] {'order_id': 'TM09202301260612130741049', 'server_status': 'invoiceOrder', 'server_response': {'total_amount': 30.0, 'logic': 'WBL', 'res': 'True', 'rstatus': True, 'anomaly': 0, 'orderId': 'TM09202301260612130741049', 'skus': [{'image_url': 'https://images.tinymart.in/product/186084-5395.png', 'mrp': '30', 'sku_total': 30.0, 'qty': 1, 'unit_price': '30', 'name': 'KITKAT Nestle 4 Finger Chocolate 38g per peice', 'door_id': '', 'tray_id': '37', 'skuid': '186084'}]}}
[2026-06-12 13:08:44,284.284 INFO    ] 200
[2026-06-12 13:08:44,285.285 INFO    ] {"data":{"order_id":"TM09202301260612130741049","server_status":"invoiceOrder","server_response":{"total_amount":30,"logic":"WBL","res":"true","rstatus":true,"anomaly":0,"orderId":"TM09202301260612130741049","skus":[{"image_url":"https:\/\/images.tinymart.in\/product\/186084-5395.png","mrp":"30","sku_total":30,"qty":1,"unit_price":"30","name":"KITKAT Nestle 4 Finger Chocolate 38g per peice","door_id":"","tray_id":"37","skuid":"186084"}]}},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-12 13:08:44,287.287 INFO    ] {'response': {'status': True, 'code': 'ORDER_EXISTS', 'data': 'order updated successfully', 'msg': 'order updated successfully'}, 'data': {'order_id': 'TM09202301260612130741049', 'server_status': 'invoiceOrder', 'server_response': {'total_amount': 30, 'logic': 'WBL', 'res': 'true', 'rstatus': True, 'anomaly': 0, 'orderId': 'TM09202301260612130741049', 'skus': [{'image_url': 'https://images.tinymart.in/product/186084-5395.png', 'mrp': '30', 'sku_total': 30, 'qty': 1, 'name': 'KITKAT Nestle 4 Finger Chocolate 38g per peice', 'unit_price': '30', 'door_id': '', 'tray_id': '37', 'skuid': '186084'}]}}}
[2026-06-12 13:08:44,288.288 INFO    ] {'response': {'status': True, 'code': 'ORDER_EXISTS', 'data': 'order updated successfully', 'msg': 'order updated successfully'}, 'data': {'order_id': 'TM09202301260612130741049', 'server_status': 'invoiceOrder', 'server_response': {'total_amount': 30, 'logic': 'WBL', 'res': 'true', 'rstatus': True, 'anomaly': 0, 'orderId': 'TM09202301260612130741049', 'skus': [{'image_url': 'https://images.tinymart.in/product/186084-5395.png', 'mrp': '30', 'sku_total': 30, 'qty': 1, 'name': 'KITKAT Nestle 4 Finger Chocolate 38g per peice', 'unit_price': '30', 'door_id': '', 'tray_id': '37', 'skuid': '186084'}]}}}
[2026-06-12 13:08:44,290.290 INFO    ] 2026-06-12 13:08:44
[2026-06-12 13:08:46,317.317 INFO    ] 200
[2026-06-12 13:08:46,320.320 INFO    ] {"tray_sync": ["TM09202301260612130741049", "TM09202301260612130741049", "TM09202301260612130741049", "TM09202301260612130741049", "TM09202301260612130741049", "TM09202301260612130741049"], "orders_data": [], "orders_synced": [], "status": true, "order_items_synced": ["TM09202301260612130741049_0"], "tray_synced": ["TM09202301260612130741049", "TM09202301260612130741049", "TM09202301260612130741049", "TM09202301260612130741049", "TM09202301260612130741049", "TM09202301260612130741049", "TM09202301260612130741049", "TM09202301260612130741049", "TM09202301260612130741049", "TM09202301260612130741049", "TM09202301260612130741049", "TM09202301260612130741049", "TM09202301260612130741049", "TM09202301260612130741049", "TM09202301260612130741049", "TM09202301260612130741049", "TM09202301260612130741049", "TM09202301260612130741049", "TM09202301260612130741049", "TM09202301260612130741049", "TM09202301260612130741049", "TM09202301260612130741049", "TM09202301260612130741049", "TM09202301260612130741049", "TM09202301260612130741049", "TM09202301260612130741049", "TM09202301260612130741049"], "orders_data_synced": [], "orders": [], "order_items": []}
[2026-06-12 13:08:46,323.323 INFO    ] 2026-06-12 13:08:46
[2026-06-12 13:08:46,425.425 INFO    ] 200
[2026-06-12 13:08:46,426.426 INFO    ] True
[2026-06-12 13:08:46,428.428 INFO    ] cleanup_start_order_file_after_processing: order_id=TM09202301260612130741049
[2026-06-12 13:08:46,429.429 INFO    ] start order file deleted
[2026-06-12 13:08:46,431.431 INFO    ] Checking for system updates...
[2026-06-12 13:08:46,450.450 INFO    ] 200
[2026-06-12 13:08:46,452.452 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 13:08:46,493.493 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 13:08:46,495.495 INFO    ] No update needed
[2026-06-12 13:08:46,496.496 INFO    ] Checking for camera pi updates...
[2026-06-12 13:08:46,516.516 INFO    ] 200
[2026-06-12 13:08:46,518.518 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 13:08:46,543.543 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 13:08:46,587.587 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 13:08:46,588.588 INFO    ] No camera update needed
[2026-06-12 13:08:46,589.589 INFO    ] Script finished. Safe exiting...
[2026-06-12 13:08:46,591.591 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 13:08:46,594.594 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 13:08:46,597.597 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 13:08:48,637.637 INFO    ] ================================================
[2026-06-12 13:08:48,653.653 INFO    ] Launching Daemon at Fri Jun 12 13:08:48 IST 2026
[2026-06-12 13:08:48,664.664 INFO    ] ================================================
[2026-06-12 13:08:49,030.030 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 13:08:49
[2026-06-12 13:08:49,343.343 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 13:08:49,474.474 INFO    ] Initializing speech engine...
[2026-06-12 13:08:49,477.477 INFO    ] 2026-06-12 13:08:49
[2026-06-12 13:08:49,696.696 INFO    ] 2026-06-12 13:08:49
[2026-06-12 13:08:49,724.724 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 13:08:49,912.912 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 13:08:49,922.922 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 13:08:50,048.048 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 13:08:50,110.110 INFO    ] time= 12/06/2026 13:08:50
[2026-06-12 13:08:50,144.144 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 13:08:50,146.146 INFO    ] Checking for existing commands in stream...
[2026-06-12 13:08:50,217.217 INFO    ] No existing commands found in stream
[2026-06-12 13:08:55,227.227 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 13:08:55,230.230 INFO    ] Waiting 0.71 seconds before fallback handling...
[2026-06-12 13:08:56,269.269 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 13:08:56,271.271 INFO    ] Checking for system updates...
[2026-06-12 13:08:56,291.291 INFO    ] 200
[2026-06-12 13:08:56,293.293 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 13:08:56,325.325 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 13:08:56,326.326 INFO    ] No update needed
[2026-06-12 13:08:56,328.328 INFO    ] Checking for camera pi updates...
[2026-06-12 13:08:56,348.348 INFO    ] 200
[2026-06-12 13:08:56,350.350 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 13:08:56,374.374 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 13:08:56,410.410 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 13:08:56,412.412 INFO    ] No camera update needed
[2026-06-12 13:08:56,413.413 INFO    ] Script finished. Safe exiting...
[2026-06-12 13:08:56,415.415 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 13:08:56,417.417 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 13:08:56,420.420 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 13:08:58,458.458 INFO    ] ================================================
[2026-06-12 13:08:58,474.474 INFO    ] Launching Daemon at Fri Jun 12 13:08:58 IST 2026
[2026-06-12 13:08:58,484.484 INFO    ] ================================================
[2026-06-12 13:08:58,839.839 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 13:08:58
[2026-06-12 13:08:59,156.156 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 13:08:59,301.301 INFO    ] Initializing speech engine...
[2026-06-12 13:08:59,306.306 INFO    ] 2026-06-12 13:08:59
[2026-06-12 13:08:59,510.510 INFO    ] 2026-06-12 13:08:59
[2026-06-12 13:08:59,539.539 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 13:08:59,660.660 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 13:08:59,723.723 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 13:08:59,854.854 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 13:08:59,910.910 INFO    ] time= 12/06/2026 13:08:59
[2026-06-12 13:08:59,949.949 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 13:08:59,954.954 INFO    ] Checking for existing commands in stream...
[2026-06-12 13:09:00,026.026 INFO    ] No existing commands found in stream
[2026-06-12 13:09:05,035.035 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 13:09:05,037.037 INFO    ] Waiting 1.55 seconds before fallback handling...
[2026-06-12 13:09:06,944.944 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 13:09:06,946.946 INFO    ] Checking for system updates...
[2026-06-12 13:09:06,966.966 INFO    ] 200
[2026-06-12 13:09:06,968.968 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 13:09:07,000.000 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 13:09:07,001.001 INFO    ] No update needed
[2026-06-12 13:09:07,003.003 INFO    ] Checking for camera pi updates...
[2026-06-12 13:09:07,022.022 INFO    ] 200
[2026-06-12 13:09:07,023.023 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 13:09:07,049.049 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 13:09:07,087.087 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 13:09:07,088.088 INFO    ] No camera update needed
[2026-06-12 13:09:07,089.089 INFO    ] Script finished. Safe exiting...
[2026-06-12 13:09:07,091.091 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 13:09:07,094.094 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 13:09:07,097.097 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 13:09:09,137.137 INFO    ] ================================================
[2026-06-12 13:09:09,153.153 INFO    ] Launching Daemon at Fri Jun 12 13:09:09 IST 2026
[2026-06-12 13:09:09,164.164 INFO    ] ================================================
[2026-06-12 13:09:09,502.502 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 13:09:09
[2026-06-12 13:09:09,816.816 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 13:09:09,958.958 INFO    ] Initializing speech engine...
[2026-06-12 13:09:09,964.964 INFO    ] 2026-06-12 13:09:09
[2026-06-12 13:09:10,166.166 INFO    ] 2026-06-12 13:09:10
[2026-06-12 13:09:10,195.195 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 13:09:10,380.380 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 13:09:10,384.384 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 13:09:10,515.515 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 13:09:10,585.585 INFO    ] time= 12/06/2026 13:09:10
[2026-06-12 13:09:10,609.609 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 13:09:10,615.615 INFO    ] Checking for existing commands in stream...
[2026-06-12 13:09:10,682.682 INFO    ] No existing commands found in stream
[2026-06-12 13:09:15,696.696 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 13:09:15,698.698 INFO    ] Waiting 1.93 seconds before fallback handling...
[2026-06-12 13:09:17,996.996 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 13:09:17,998.998 INFO    ] Checking for system updates...
[2026-06-12 13:09:18,018.018 INFO    ] 200
[2026-06-12 13:09:18,020.020 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 13:09:18,052.052 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 13:09:18,054.054 INFO    ] No update needed
[2026-06-12 13:09:18,055.055 INFO    ] Checking for camera pi updates...
[2026-06-12 13:09:18,076.076 INFO    ] 200
[2026-06-12 13:09:18,077.077 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 13:09:18,101.101 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 13:09:18,136.136 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 13:09:18,137.137 INFO    ] No camera update needed
[2026-06-12 13:09:18,139.139 INFO    ] Script finished. Safe exiting...
[2026-06-12 13:09:18,140.140 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 13:09:18,144.144 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 13:09:18,147.147 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 13:09:20,187.187 INFO    ] ================================================
[2026-06-12 13:09:20,202.202 INFO    ] Launching Daemon at Fri Jun 12 13:09:20 IST 2026
[2026-06-12 13:09:20,213.213 INFO    ] ================================================
[2026-06-12 13:09:20,582.582 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 13:09:20
[2026-06-12 13:09:20,901.901 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 13:09:21,035.035 INFO    ] Initializing speech engine...
[2026-06-12 13:09:21,040.040 INFO    ] 2026-06-12 13:09:21
[2026-06-12 13:09:21,255.255 INFO    ] 2026-06-12 13:09:21
[2026-06-12 13:09:21,283.283 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 13:09:21,435.435 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 13:09:21,478.478 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 13:09:21,649.649 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 13:09:21,697.697 INFO    ] time= 12/06/2026 13:09:21
[2026-06-12 13:09:21,742.742 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 13:09:21,753.753 INFO    ] Checking for existing commands in stream...
[2026-06-12 13:09:21,829.829 INFO    ] No existing commands found in stream
[2026-06-12 13:09:26,840.840 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 13:09:26,843.843 INFO    ] Waiting 2.66 seconds before fallback handling...
[2026-06-12 13:09:29,907.907 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 13:09:29,909.909 INFO    ] Checking for system updates...
[2026-06-12 13:09:29,931.931 INFO    ] 200
[2026-06-12 13:09:29,933.933 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 13:09:29,963.963 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 13:09:29,964.964 INFO    ] No update needed
[2026-06-12 13:09:29,966.966 INFO    ] Checking for camera pi updates...
[2026-06-12 13:09:29,986.986 INFO    ] 200
[2026-06-12 13:09:29,988.988 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 13:09:30,013.013 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 13:09:30,058.058 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 13:09:30,059.059 INFO    ] No camera update needed
[2026-06-12 13:09:30,061.061 INFO    ] Script finished. Safe exiting...
[2026-06-12 13:09:30,062.062 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 13:09:30,065.065 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 13:09:30,067.067 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 13:09:32,106.106 INFO    ] ================================================
[2026-06-12 13:09:32,121.121 INFO    ] Launching Daemon at Fri Jun 12 13:09:32 IST 2026
[2026-06-12 13:09:32,132.132 INFO    ] ================================================
[2026-06-12 13:09:32,488.488 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 13:09:32
[2026-06-12 13:09:32,802.802 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 13:09:32,932.932 INFO    ] Initializing speech engine...
[2026-06-12 13:09:32,935.935 INFO    ] 2026-06-12 13:09:32
[2026-06-12 13:09:33,150.150 INFO    ] 2026-06-12 13:09:33
[2026-06-12 13:09:33,180.180 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 13:09:33,362.362 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 13:09:33,365.365 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 13:09:33,493.493 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 13:09:33,548.548 INFO    ] time= 12/06/2026 13:09:33
[2026-06-12 13:09:33,587.587 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 13:09:33,592.592 INFO    ] Checking for existing commands in stream...
[2026-06-12 13:09:33,663.663 INFO    ] No existing commands found in stream
[2026-06-12 13:09:38,677.677 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 13:09:38,680.680 INFO    ] Waiting 3.28 seconds before fallback handling...
[2026-06-12 13:09:42,348.348 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 13:09:42,350.350 INFO    ] Checking for system updates...
[2026-06-12 13:09:42,371.371 INFO    ] 200
[2026-06-12 13:09:42,373.373 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 13:09:42,404.404 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 13:09:42,406.406 INFO    ] No update needed
[2026-06-12 13:09:42,407.407 INFO    ] Checking for camera pi updates...
[2026-06-12 13:09:42,428.428 INFO    ] 200
[2026-06-12 13:09:42,430.430 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 13:09:42,454.454 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 13:09:42,593.593 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 13:09:42,594.594 INFO    ] No camera update needed
[2026-06-12 13:09:42,596.596 INFO    ] Script finished. Safe exiting...
[2026-06-12 13:09:42,597.597 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 13:09:42,600.600 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 13:09:42,603.603 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 13:09:44,642.642 INFO    ] ================================================
[2026-06-12 13:09:44,658.658 INFO    ] Launching Daemon at Fri Jun 12 13:09:44 IST 2026
[2026-06-12 13:09:44,669.669 INFO    ] ================================================
[2026-06-12 13:09:45,013.013 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 13:09:45
[2026-06-12 13:09:45,326.326 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 13:09:45,457.457 INFO    ] Initializing speech engine...
[2026-06-12 13:09:45,461.461 INFO    ] 2026-06-12 13:09:45
[2026-06-12 13:09:45,681.681 INFO    ] 2026-06-12 13:09:45
[2026-06-12 13:09:45,709.709 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 13:09:45,897.897 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 13:09:45,900.900 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 13:09:46,039.039 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 13:09:46,093.093 INFO    ] time= 12/06/2026 13:09:46
[2026-06-12 13:09:46,129.129 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 13:09:46,134.134 INFO    ] Checking for existing commands in stream...
[2026-06-12 13:09:46,205.205 INFO    ] No existing commands found in stream
[2026-06-12 13:09:51,216.216 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 13:09:51,219.219 INFO    ] Waiting 2.46 seconds before fallback handling...
[2026-06-12 13:09:54,070.070 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 13:09:54,072.072 INFO    ] Checking for system updates...
[2026-06-12 13:09:54,092.092 INFO    ] 200
[2026-06-12 13:09:54,093.093 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 13:09:54,123.123 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 13:09:54,124.124 INFO    ] No update needed
[2026-06-12 13:09:54,126.126 INFO    ] Checking for camera pi updates...
[2026-06-12 13:09:54,146.146 INFO    ] 200
[2026-06-12 13:09:54,147.147 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 13:09:54,172.172 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 13:09:54,209.209 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 13:09:54,211.211 INFO    ] No camera update needed
[2026-06-12 13:09:54,212.212 INFO    ] Script finished. Safe exiting...
[2026-06-12 13:09:54,213.213 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 13:09:54,216.216 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 13:09:54,219.219 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 13:09:56,258.258 INFO    ] ================================================
[2026-06-12 13:09:56,273.273 INFO    ] Launching Daemon at Fri Jun 12 13:09:56 IST 2026
[2026-06-12 13:09:56,284.284 INFO    ] ================================================
[2026-06-12 13:09:56,627.627 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 13:09:56
[2026-06-12 13:09:56,946.946 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 13:09:57,089.089 INFO    ] Initializing speech engine...
[2026-06-12 13:09:57,097.097 INFO    ] 2026-06-12 13:09:57
[2026-06-12 13:09:57,316.316 INFO    ] 2026-06-12 13:09:57
[2026-06-12 13:09:57,347.347 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 13:09:57,545.545 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 13:09:57,549.549 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 13:09:57,689.689 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 13:09:57,740.740 INFO    ] time= 12/06/2026 13:09:57
[2026-06-12 13:09:57,773.773 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 13:09:57,797.797 INFO    ] Checking for existing commands in stream...
[2026-06-12 13:09:57,874.874 INFO    ] No existing commands found in stream
[2026-06-12 13:10:02,883.883 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 13:10:02,886.886 INFO    ] Waiting 3.44 seconds before fallback handling...
[2026-06-12 13:10:08,139.139 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 13:10:08,141.141 INFO    ] Checking for system updates...
[2026-06-12 13:10:08,181.181 INFO    ] 200
[2026-06-12 13:10:08,183.183 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 13:10:08,237.237 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 13:10:08,239.239 INFO    ] No update needed
[2026-06-12 13:10:08,242.242 INFO    ] Checking for camera pi updates...
[2026-06-12 13:10:08,276.276 INFO    ] 200
[2026-06-12 13:10:08,279.279 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 13:10:08,313.313 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 13:10:08,352.352 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 13:10:08,354.354 INFO    ] No camera update needed
[2026-06-12 13:10:08,355.355 INFO    ] Script finished. Safe exiting...
[2026-06-12 13:10:08,357.357 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 13:10:08,360.360 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 13:10:08,363.363 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 13:10:10,403.403 INFO    ] ================================================
[2026-06-12 13:10:10,419.419 INFO    ] Launching Daemon at Fri Jun 12 13:10:10 IST 2026
[2026-06-12 13:10:10,430.430 INFO    ] ================================================
[2026-06-12 13:10:10,802.802 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 13:10:10
[2026-06-12 13:10:11,130.130 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 13:10:11,282.282 INFO    ] Initializing speech engine...
[2026-06-12 13:10:11,288.288 INFO    ] 2026-06-12 13:10:11
[2026-06-12 13:10:11,497.497 INFO    ] 2026-06-12 13:10:11
[2026-06-12 13:10:11,526.526 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 13:10:11,653.653 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 13:10:11,654.654 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 13:10:11,789.789 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 13:10:11,816.816 INFO    ] time= 12/06/2026 13:10:11
[2026-06-12 13:10:11,861.861 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 13:10:11,911.911 INFO    ] Checking for existing commands in stream...
[2026-06-12 13:10:12,060.060 INFO    ] No existing commands found in stream
[2026-06-12 13:10:17,081.081 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 13:10:17,084.084 INFO    ] Waiting 0.69 seconds before fallback handling...
[2026-06-12 13:10:18,149.149 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 13:10:18,151.151 INFO    ] Checking for system updates...
[2026-06-12 13:10:18,172.172 INFO    ] 200
[2026-06-12 13:10:18,173.173 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 13:10:18,203.203 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 13:10:18,204.204 INFO    ] No update needed
[2026-06-12 13:10:18,206.206 INFO    ] Checking for camera pi updates...
[2026-06-12 13:10:18,225.225 INFO    ] 200
[2026-06-12 13:10:18,226.226 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 13:10:18,249.249 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 13:10:18,284.284 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 13:10:18,286.286 INFO    ] No camera update needed
[2026-06-12 13:10:18,287.287 INFO    ] Script finished. Safe exiting...
[2026-06-12 13:10:18,288.288 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 13:10:18,291.291 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 13:10:18,294.294 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 13:10:20,332.332 INFO    ] ================================================
[2026-06-12 13:10:20,349.349 INFO    ] Launching Daemon at Fri Jun 12 13:10:20 IST 2026
[2026-06-12 13:10:20,360.360 INFO    ] ================================================
[2026-06-12 13:10:20,738.738 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 13:10:20
[2026-06-12 13:10:21,078.078 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 13:10:21,240.240 INFO    ] Initializing speech engine...
[2026-06-12 13:10:21,246.246 INFO    ] 2026-06-12 13:10:21
[2026-06-12 13:10:21,456.456 INFO    ] 2026-06-12 13:10:21
[2026-06-12 13:10:21,485.485 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 13:10:21,665.665 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 13:10:21,678.678 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 13:10:21,820.820 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 13:10:21,882.882 INFO    ] time= 12/06/2026 13:10:21
[2026-06-12 13:10:21,905.905 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 13:10:21,912.912 INFO    ] Checking for existing commands in stream...
[2026-06-12 13:10:21,976.976 INFO    ] No existing commands found in stream
[2026-06-12 13:10:26,982.982 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 13:10:26,985.985 INFO    ] Waiting 1.37 seconds before fallback handling...
[2026-06-12 13:10:28,714.714 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 13:10:28,715.715 INFO    ] Checking for system updates...
[2026-06-12 13:10:28,736.736 INFO    ] 200
[2026-06-12 13:10:28,737.737 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 13:10:28,772.772 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 13:10:28,773.773 INFO    ] No update needed
[2026-06-12 13:10:28,774.774 INFO    ] Checking for camera pi updates...
[2026-06-12 13:10:28,795.795 INFO    ] 200
[2026-06-12 13:10:28,797.797 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-12 13:10:28,821.821 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 13:10:28,861.861 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 13:10:28,862.862 INFO    ] No camera update needed
[2026-06-12 13:10:28,864.864 INFO    ] Script finished. Safe exiting...
[2026-06-12 13:10:28,865.865 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 13:10:28,868.868 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 13:10:28,870.870 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 13:10:30,910.910 INFO    ] ================================================
[2026-06-12 13:10:30,925.925 INFO    ] Launching Daemon at Fri Jun 12 13:10:30 IST 2026
[2026-06-12 13:10:30,937.937 INFO    ] ================================================
[2026-06-12 13:10:31,319.319 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 13:10:31
[2026-06-12 13:10:31,679.679 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 13:10:31,838.838 INFO    ] Initializing speech engine...
[2026-06-12 13:10:31,844.844 INFO    ] 2026-06-12 13:10:31
[2026-06-12 13:10:32,087.087 INFO    ] 2026-06-12 13:10:32
[2026-06-12 13:10:32,120.120 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 13:10:32,327.327 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 13:10:32,331.331 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 13:10:32,470.470 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 13:10:32,532.532 INFO    ] time= 12/06/2026 13:10:32
[2026-06-12 13:10:32,555.555 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 13:10:32,577.577 INFO    ] Checking for existing commands in stream...
[2026-06-12 13:10:32,654.654 INFO    ] No existing commands found in stream
[2026-06-12 13:10:37,668.668 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 13:10:37,671.671 INFO    ] Waiting 2.49 seconds before fallback handling...
[2026-06-12 13:10:40,538.538 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 13:10:40,540.540 INFO    ] Checking for system updates...
[2026-06-12 13:10:40,561.561 INFO    ] 200
[2026-06-12 13:10:40,562.562 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  [2026-06-12 12:58:01,716.716 INFO    ] ================================================
[2026-06-12 12:58:01,740.740 INFO    ] Launching Daemon at Fri Jun 12 12:58:01 IST 2026
[2026-06-12 12:58:01,757.757 INFO    ] ================================================
[2026-06-12 12:58:02,141.141 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 12:58:02
[2026-06-12 12:58:02,516.516 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 12:58:02,710.710 INFO    ] Initializing speech engine...
[2026-06-12 12:58:02,714.714 INFO    ] 2026-06-12 12:58:02
[2026-06-12 13:13:07,708.708 INFO    ] 2026-06-12 13:13:07
[2026-06-12 13:13:07,833.833 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 13:13:08,134.134 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 13:13:08,160.160 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 13:13:08,274.274 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 13:13:08,278.278 INFO    ] time= 12/06/2026 13:13:08
[2026-06-12 13:13:08,282.282 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 13:13:08,286.286 INFO    ] Checking for existing commands in stream...
[2026-06-12 13:13:08,327.327 INFO    ] No existing commands found in stream
[2026-06-12 13:13:13,337.337 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 13:13:13,341.341 INFO    ] Waiting 3.30 seconds before fallback handling...
[2026-06-12 13:13:17,049.049 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 13:13:17,050.050 INFO    ] Checking for system updates...
[2026-06-12 13:13:17,077.077 INFO    ] 200
[2026-06-12 13:13:17,079.079 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:13:17,110.110 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 13:13:17,111.111 INFO    ] No update needed
[2026-06-12 13:13:17,113.113 INFO    ] Checking for camera pi updates...
[2026-06-12 13:13:17,133.133 INFO    ] 200
[2026-06-12 13:13:17,134.134 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:13:17,158.158 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 13:13:17,337.337 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 13:13:17,338.338 INFO    ] No camera update needed
[2026-06-12 13:13:17,340.340 INFO    ] Script finished. Safe exiting...
[2026-06-12 13:13:17,341.341 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 13:13:17,345.345 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 13:13:17,347.347 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 13:13:19,385.385 INFO    ] ================================================
[2026-06-12 13:13:19,400.400 INFO    ] Launching Daemon at Fri Jun 12 13:13:19 IST 2026
[2026-06-12 13:13:19,411.411 INFO    ] ================================================
[2026-06-12 13:13:19,755.755 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 13:13:19
[2026-06-12 13:13:20,068.068 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 13:13:20,211.211 INFO    ] Initializing speech engine...
[2026-06-12 13:13:20,216.216 INFO    ] 2026-06-12 13:13:20
[2026-06-12 13:13:20,419.419 INFO    ] 2026-06-12 13:13:20
[2026-06-12 13:13:20,447.447 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 13:13:20,632.632 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 13:13:20,640.640 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 13:13:20,762.762 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 13:13:20,818.818 INFO    ] time= 12/06/2026 13:13:20
[2026-06-12 13:13:20,852.852 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 13:13:20,862.862 INFO    ] Checking for existing commands in stream...
[2026-06-12 13:13:20,933.933 INFO    ] No existing commands found in stream
[2026-06-12 13:13:25,963.963 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 13:13:25,965.965 INFO    ] Waiting 0.52 seconds before fallback handling...
[2026-06-12 13:13:26,853.853 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 13:13:26,854.854 INFO    ] Checking for system updates...
[2026-06-12 13:13:26,875.875 INFO    ] 200
[2026-06-12 13:13:26,876.876 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:13:26,909.909 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 13:13:26,911.911 INFO    ] No update needed
[2026-06-12 13:13:26,912.912 INFO    ] Checking for camera pi updates...
[2026-06-12 13:13:26,934.934 INFO    ] 200
[2026-06-12 13:13:26,935.935 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:13:26,960.960 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 13:13:26,994.994 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 13:13:26,996.996 INFO    ] No camera update needed
[2026-06-12 13:13:26,997.997 INFO    ] Script finished. Safe exiting...
[2026-06-12 13:13:26,998.998 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 13:13:27,001.001 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 13:13:27,004.004 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 13:13:29,042.042 INFO    ] ================================================
[2026-06-12 13:13:29,058.058 INFO    ] Launching Daemon at Fri Jun 12 13:13:29 IST 2026
[2026-06-12 13:13:29,069.069 INFO    ] ================================================
[2026-06-12 13:13:29,426.426 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 13:13:29
[2026-06-12 13:13:29,746.746 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 13:13:29,880.880 INFO    ] Initializing speech engine...
[2026-06-12 13:13:29,894.894 INFO    ] 2026-06-12 13:13:29
[2026-06-12 13:13:30,099.099 INFO    ] 2026-06-12 13:13:30
[2026-06-12 13:13:30,127.127 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 13:13:30,309.309 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 13:13:30,312.312 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 13:13:30,445.445 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 13:13:30,511.511 INFO    ] time= 12/06/2026 13:13:30
[2026-06-12 13:13:30,538.538 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 13:13:30,544.544 INFO    ] Checking for existing commands in stream...
[2026-06-12 13:13:30,611.611 INFO    ] No existing commands found in stream
[2026-06-12 13:13:35,620.620 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 13:13:35,624.624 INFO    ] Waiting 1.68 seconds before fallback handling...
[2026-06-12 13:13:37,690.690 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 13:13:37,692.692 INFO    ] Checking for system updates...
[2026-06-12 13:13:37,713.713 INFO    ] 200
[2026-06-12 13:13:37,714.714 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:13:37,744.744 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 13:13:37,746.746 INFO    ] No update needed
[2026-06-12 13:13:37,747.747 INFO    ] Checking for camera pi updates...
[2026-06-12 13:13:37,768.768 INFO    ] 200
[2026-06-12 13:13:37,769.769 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:13:37,794.794 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 13:13:37,828.828 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 13:13:37,830.830 INFO    ] No camera update needed
[2026-06-12 13:13:37,831.831 INFO    ] Script finished. Safe exiting...
[2026-06-12 13:13:37,832.832 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 13:13:37,835.835 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 13:13:37,838.838 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 13:13:39,875.875 INFO    ] ================================================
[2026-06-12 13:13:39,890.890 INFO    ] Launching Daemon at Fri Jun 12 13:13:39 IST 2026
[2026-06-12 13:13:39,901.901 INFO    ] ================================================
[2026-06-12 13:13:40,244.244 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 13:13:40
[2026-06-12 13:13:40,582.582 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 13:13:40,731.731 INFO    ] Initializing speech engine...
[2026-06-12 13:13:40,735.735 INFO    ] 2026-06-12 13:13:40
[2026-06-12 13:13:40,950.950 INFO    ] 2026-06-12 13:13:40
[2026-06-12 13:13:40,997.997 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 13:13:41,134.134 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 13:13:41,136.136 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 13:13:41,356.356 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 13:13:41,391.391 INFO    ] time= 12/06/2026 13:13:41
[2026-06-12 13:13:41,442.442 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 13:13:41,477.477 INFO    ] Checking for existing commands in stream...
[2026-06-12 13:13:41,577.577 INFO    ] No existing commands found in stream
[2026-06-12 13:13:46,586.586 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 13:13:46,589.589 INFO    ] Waiting 2.48 seconds before fallback handling...
[2026-06-12 13:13:49,465.465 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 13:13:49,467.467 INFO    ] Checking for system updates...
[2026-06-12 13:13:49,488.488 INFO    ] 200
[2026-06-12 13:13:49,490.490 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:13:49,522.522 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 13:13:49,523.523 INFO    ] No update needed
[2026-06-12 13:13:49,524.524 INFO    ] Checking for camera pi updates...
[2026-06-12 13:13:49,544.544 INFO    ] 200
[2026-06-12 13:13:49,546.546 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:13:49,568.568 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 13:13:49,601.601 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 13:13:49,603.603 INFO    ] No camera update needed
[2026-06-12 13:13:49,604.604 INFO    ] Script finished. Safe exiting...
[2026-06-12 13:13:49,605.605 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 13:13:49,608.608 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 13:13:49,611.611 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 13:13:51,648.648 INFO    ] ================================================
[2026-06-12 13:13:51,664.664 INFO    ] Launching Daemon at Fri Jun 12 13:13:51 IST 2026
[2026-06-12 13:13:51,675.675 INFO    ] ================================================
[2026-06-12 13:13:52,040.040 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 13:13:52
[2026-06-12 13:13:52,378.378 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 13:13:52,532.532 INFO    ] Initializing speech engine...
[2026-06-12 13:13:52,537.537 INFO    ] 2026-06-12 13:13:52
[2026-06-12 13:13:52,745.745 INFO    ] 2026-06-12 13:13:52
[2026-06-12 13:13:52,774.774 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 13:13:52,896.896 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 13:13:52,959.959 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 13:13:53,107.107 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 13:13:53,165.165 INFO    ] time= 12/06/2026 13:13:53
[2026-06-12 13:13:53,188.188 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 13:13:53,194.194 INFO    ] Checking for existing commands in stream...
[2026-06-12 13:13:53,261.261 INFO    ] No existing commands found in stream
[2026-06-12 13:13:58,276.276 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 13:13:58,279.279 INFO    ] Waiting 0.32 seconds before fallback handling...
[2026-06-12 13:13:58,970.970 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 13:13:58,972.972 INFO    ] Checking for system updates...
[2026-06-12 13:13:58,992.992 INFO    ] 200
[2026-06-12 13:13:58,994.994 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:13:59,023.023 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 13:13:59,025.025 INFO    ] No update needed
[2026-06-12 13:13:59,026.026 INFO    ] Checking for camera pi updates...
[2026-06-12 13:13:59,046.046 INFO    ] 200
[2026-06-12 13:13:59,048.048 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:13:59,071.071 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 13:13:59,104.104 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 13:13:59,106.106 INFO    ] No camera update needed
[2026-06-12 13:13:59,107.107 INFO    ] Script finished. Safe exiting...
[2026-06-12 13:13:59,108.108 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 13:13:59,112.112 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 13:13:59,115.115 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 13:14:01,153.153 INFO    ] ================================================
[2026-06-12 13:14:01,169.169 INFO    ] Launching Daemon at Fri Jun 12 13:14:01 IST 2026
[2026-06-12 13:14:01,180.180 INFO    ] ================================================
[2026-06-12 13:14:01,507.507 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 13:14:01
[2026-06-12 13:14:01,935.935 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 13:14:02,110.110 INFO    ] Initializing speech engine...
[2026-06-12 13:14:02,130.130 INFO    ] 2026-06-12 13:14:02
[2026-06-12 13:14:02,372.372 INFO    ] 2026-06-12 13:14:02
[2026-06-12 13:14:02,411.411 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 13:14:02,560.560 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 13:14:02,590.590 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 13:14:02,766.766 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 13:14:02,798.798 INFO    ] time= 12/06/2026 13:14:02
[2026-06-12 13:14:02,846.846 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 13:14:02,868.868 INFO    ] Checking for existing commands in stream...
[2026-06-12 13:14:02,941.941 INFO    ] No existing commands found in stream
[2026-06-12 13:14:07,950.950 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 13:14:07,953.953 INFO    ] Waiting 3.13 seconds before fallback handling...
[2026-06-12 13:14:11,456.456 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 13:14:11,457.457 INFO    ] Checking for system updates...
[2026-06-12 13:14:11,479.479 INFO    ] 200
[2026-06-12 13:14:11,481.481 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:14:11,511.511 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 13:14:11,513.513 INFO    ] No update needed
[2026-06-12 13:14:11,515.515 INFO    ] Checking for camera pi updates...
[2026-06-12 13:14:11,535.535 INFO    ] 200
[2026-06-12 13:14:11,536.536 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:14:11,564.564 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 13:14:11,597.597 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 13:14:11,599.599 INFO    ] No camera update needed
[2026-06-12 13:14:11,600.600 INFO    ] Script finished. Safe exiting...
[2026-06-12 13:14:11,602.602 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 13:14:11,605.605 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 13:14:11,608.608 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 13:14:13,646.646 INFO    ] ================================================
[2026-06-12 13:14:13,662.662 INFO    ] Launching Daemon at Fri Jun 12 13:14:13 IST 2026
[2026-06-12 13:14:13,673.673 INFO    ] ================================================
[2026-06-12 13:14:14,018.018 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 13:14:14
[2026-06-12 13:14:14,357.357 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 13:14:14,507.507 INFO    ] Initializing speech engine...
[2026-06-12 13:14:14,512.512 INFO    ] 2026-06-12 13:14:14
[2026-06-12 13:14:14,721.721 INFO    ] 2026-06-12 13:14:14
[2026-06-12 13:14:14,750.750 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 13:14:14,934.934 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 13:14:14,944.944 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 13:14:15,075.075 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 13:14:15,141.141 INFO    ] time= 12/06/2026 13:14:15
[2026-06-12 13:14:15,166.166 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 13:14:15,172.172 INFO    ] Checking for existing commands in stream...
[2026-06-12 13:14:15,239.239 INFO    ] No existing commands found in stream
[2026-06-12 13:14:20,258.258 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 13:14:20,262.262 INFO    ] Waiting 0.05 seconds before fallback handling...
[2026-06-12 13:14:20,688.688 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 13:14:20,690.690 INFO    ] Checking for system updates...
[2026-06-12 13:14:20,710.710 INFO    ] 200
[2026-06-12 13:14:20,712.712 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:14:20,741.741 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 13:14:20,742.742 INFO    ] No update needed
[2026-06-12 13:14:20,744.744 INFO    ] Checking for camera pi updates...
[2026-06-12 13:14:20,763.763 INFO    ] 200
[2026-06-12 13:14:20,764.764 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:14:20,788.788 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 13:14:20,823.823 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 13:14:20,824.824 INFO    ] No camera update needed
[2026-06-12 13:14:20,826.826 INFO    ] Script finished. Safe exiting...
[2026-06-12 13:14:20,827.827 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 13:14:20,830.830 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 13:14:20,834.834 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 13:14:22,873.873 INFO    ] ================================================
[2026-06-12 13:14:22,888.888 INFO    ] Launching Daemon at Fri Jun 12 13:14:22 IST 2026
[2026-06-12 13:14:22,899.899 INFO    ] ================================================
[2026-06-12 13:14:23,232.232 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 13:14:23
[2026-06-12 13:14:23,546.546 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 13:14:23,683.683 INFO    ] Initializing speech engine...
[2026-06-12 13:14:23,693.693 INFO    ] 2026-06-12 13:14:23
[2026-06-12 13:14:23,896.896 INFO    ] 2026-06-12 13:14:23
[2026-06-12 13:14:23,924.924 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 13:14:24,107.107 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 13:14:24,116.116 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 13:14:24,260.260 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 13:14:24,311.311 INFO    ] time= 12/06/2026 13:14:24
[2026-06-12 13:14:24,335.335 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 13:14:24,341.341 INFO    ] Checking for existing commands in stream...
[2026-06-12 13:14:24,406.406 INFO    ] No existing commands found in stream
[2026-06-12 13:14:29,417.417 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 13:14:29,420.420 INFO    ] Waiting 2.01 seconds before fallback handling...
[2026-06-12 13:14:31,805.805 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 13:14:31,807.807 INFO    ] Checking for system updates...
[2026-06-12 13:14:31,829.829 INFO    ] 200
[2026-06-12 13:14:31,831.831 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:14:31,863.863 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 13:14:31,865.865 INFO    ] No update needed
[2026-06-12 13:14:31,867.867 INFO    ] Checking for camera pi updates...
[2026-06-12 13:14:31,888.888 INFO    ] 200
[2026-06-12 13:14:31,889.889 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:14:31,916.916 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 13:14:31,941.941 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 13:14:31,943.943 INFO    ] No camera update needed
[2026-06-12 13:14:31,945.945 INFO    ] Script finished. Safe exiting...
[2026-06-12 13:14:31,946.946 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 13:14:31,950.950 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 13:14:31,953.953 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 13:14:33,985.985 INFO    ] ================================================
[2026-06-12 13:14:34,001.001 INFO    ] Launching Daemon at Fri Jun 12 13:14:33 IST 2026
[2026-06-12 13:14:34,012.012 INFO    ] ================================================
[2026-06-12 13:14:34,373.373 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 13:14:34
[2026-06-12 13:14:34,712.712 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 13:14:34,863.863 INFO    ] Initializing speech engine...
[2026-06-12 13:14:34,869.869 INFO    ] 2026-06-12 13:14:34
[2026-06-12 13:14:35,077.077 INFO    ] 2026-06-12 13:14:35
[2026-06-12 13:14:35,107.107 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 13:14:35,292.292 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 13:14:35,302.302 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 13:14:35,433.433 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 13:14:35,500.500 INFO    ] time= 12/06/2026 13:14:35
[2026-06-12 13:14:35,525.525 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 13:14:35,531.531 INFO    ] Checking for existing commands in stream...
[2026-06-12 13:14:35,599.599 INFO    ] No existing commands found in stream
[2026-06-12 13:14:40,612.612 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 13:14:40,616.616 INFO    ] Waiting 3.52 seconds before fallback handling...
[2026-06-12 13:14:44,549.549 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 13:14:44,551.551 INFO    ] Checking for system updates...
[2026-06-12 13:14:44,572.572 INFO    ] 200
[2026-06-12 13:14:44,573.573 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:14:44,603.603 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 13:14:44,604.604 INFO    ] No update needed
[2026-06-12 13:14:44,606.606 INFO    ] Checking for camera pi updates...
[2026-06-12 13:14:44,625.625 INFO    ] 200
[2026-06-12 13:14:44,626.626 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:14:44,651.651 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 13:14:44,684.684 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 13:14:44,685.685 INFO    ] No camera update needed
[2026-06-12 13:14:44,686.686 INFO    ] Script finished. Safe exiting...
[2026-06-12 13:14:44,688.688 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 13:14:44,691.691 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 13:14:44,694.694 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 13:14:46,732.732 INFO    ] ================================================
[2026-06-12 13:14:46,747.747 INFO    ] Launching Daemon at Fri Jun 12 13:14:46 IST 2026
[2026-06-12 13:14:46,758.758 INFO    ] ================================================
[2026-06-12 13:14:47,125.125 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 13:14:47
[2026-06-12 13:14:47,439.439 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 13:14:47,584.584 INFO    ] Initializing speech engine...
[2026-06-12 13:14:47,590.590 INFO    ] 2026-06-12 13:14:47
[2026-06-12 13:14:47,805.805 INFO    ] 2026-06-12 13:14:47
[2026-06-12 13:14:47,836.836 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 13:14:47,968.968 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 13:14:48,031.031 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 13:14:48,177.177 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 13:14:48,239.239 INFO    ] time= 12/06/2026 13:14:48
[2026-06-12 13:14:48,279.279 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 13:14:48,285.285 INFO    ] Checking for existing commands in stream...
[2026-06-12 13:14:48,361.361 INFO    ] No existing commands found in stream
[2026-06-12 13:14:53,372.372 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 13:14:53,374.374 INFO    ] Waiting 2.99 seconds before fallback handling...
[2026-06-12 13:14:56,743.743 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 13:14:56,745.745 INFO    ] Checking for system updates...
[2026-06-12 13:14:56,767.767 INFO    ] 200
[2026-06-12 13:14:56,768.768 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:14:56,797.797 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 13:14:56,799.799 INFO    ] No update needed
[2026-06-12 13:14:56,800.800 INFO    ] Checking for camera pi updates...
[2026-06-12 13:14:56,819.819 INFO    ] 200
[2026-06-12 13:14:56,820.820 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:14:56,843.843 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 13:14:56,875.875 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 13:14:56,876.876 INFO    ] No camera update needed
[2026-06-12 13:14:56,877.877 INFO    ] Script finished. Safe exiting...
[2026-06-12 13:14:56,879.879 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 13:14:56,882.882 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 13:14:56,884.884 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 13:14:58,922.922 INFO    ] ================================================
[2026-06-12 13:14:58,938.938 INFO    ] Launching Daemon at Fri Jun 12 13:14:58 IST 2026
[2026-06-12 13:14:58,949.949 INFO    ] ================================================
[2026-06-12 13:14:59,302.302 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 13:14:59
[2026-06-12 13:14:59,642.642 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 13:14:59,795.795 INFO    ] Initializing speech engine...
[2026-06-12 13:14:59,802.802 INFO    ] 2026-06-12 13:14:59
[2026-06-12 13:15:00,013.013 INFO    ] 2026-06-12 13:14:59
[2026-06-12 13:15:00,043.043 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 13:15:00,229.229 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 13:15:00,232.232 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 13:15:00,371.371 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 13:15:00,439.439 INFO    ] time= 12/06/2026 13:15:00
[2026-06-12 13:15:00,463.463 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 13:15:00,470.470 INFO    ] Checking for existing commands in stream...
[2026-06-12 13:15:00,537.537 INFO    ] No existing commands found in stream
[2026-06-12 13:15:05,552.552 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 13:15:05,556.556 INFO    ] Waiting 2.04 seconds before fallback handling...
[2026-06-12 13:15:07,999.999 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 13:15:08,001.001 INFO    ] Checking for system updates...
[2026-06-12 13:15:08,021.021 INFO    ] 200
[2026-06-12 13:15:08,022.022 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:15:08,052.052 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 13:15:08,054.054 INFO    ] No update needed
[2026-06-12 13:15:08,055.055 INFO    ] Checking for camera pi updates...
[2026-06-12 13:15:08,074.074 INFO    ] 200
[2026-06-12 13:15:08,075.075 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:15:08,098.098 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 13:15:08,131.131 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 13:15:08,132.132 INFO    ] No camera update needed
[2026-06-12 13:15:08,134.134 INFO    ] Script finished. Safe exiting...
[2026-06-12 13:15:08,135.135 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 13:15:08,138.138 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 13:15:08,141.141 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 13:15:10,181.181 INFO    ] ================================================
[2026-06-12 13:15:10,196.196 INFO    ] Launching Daemon at Fri Jun 12 13:15:10 IST 2026
[2026-06-12 13:15:10,207.207 INFO    ] ================================================
[2026-06-12 13:15:10,562.562 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 13:15:10
[2026-06-12 13:15:10,882.882 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 13:15:11,016.016 INFO    ] Initializing speech engine...
[2026-06-12 13:15:11,021.021 INFO    ] 2026-06-12 13:15:11
[2026-06-12 13:15:11,251.251 INFO    ] 2026-06-12 13:15:11
[2026-06-12 13:15:11,282.282 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 13:15:11,413.413 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 13:15:11,476.476 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 13:15:11,621.621 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 13:15:11,673.673 INFO    ] time= 12/06/2026 13:15:11
[2026-06-12 13:15:11,704.704 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 13:15:11,729.729 INFO    ] Checking for existing commands in stream...
[2026-06-12 13:15:11,805.805 INFO    ] No existing commands found in stream
[2026-06-12 13:15:16,840.840 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 13:15:16,843.843 INFO    ] Waiting 0.93 seconds before fallback handling...
[2026-06-12 13:15:18,142.142 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 13:15:18,143.143 INFO    ] Checking for system updates...
[2026-06-12 13:15:18,163.163 INFO    ] 200
[2026-06-12 13:15:18,164.164 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:15:18,194.194 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 13:15:18,196.196 INFO    ] No update needed
[2026-06-12 13:15:18,197.197 INFO    ] Checking for camera pi updates...
[2026-06-12 13:15:18,216.216 INFO    ] 200
[2026-06-12 13:15:18,217.217 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:15:18,240.240 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 13:15:18,373.373 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 13:15:18,375.375 INFO    ] No camera update needed
[2026-06-12 13:15:18,376.376 INFO    ] Script finished. Safe exiting...
[2026-06-12 13:15:18,377.377 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 13:15:18,381.381 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 13:15:18,383.383 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 13:15:20,422.422 INFO    ] ================================================
[2026-06-12 13:15:20,437.437 INFO    ] Launching Daemon at Fri Jun 12 13:15:20 IST 2026
[2026-06-12 13:15:20,449.449 INFO    ] ================================================
[2026-06-12 13:15:20,801.801 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 13:15:20
[2026-06-12 13:15:21,138.138 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 13:15:21,289.289 INFO    ] Initializing speech engine...
[2026-06-12 13:15:21,295.295 INFO    ] 2026-06-12 13:15:21
[2026-06-12 13:15:21,505.505 INFO    ] 2026-06-12 13:15:21
[2026-06-12 13:15:21,535.535 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 13:15:21,720.720 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 13:15:21,723.723 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 13:15:21,877.877 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 13:15:21,932.932 INFO    ] time= 12/06/2026 13:15:21
[2026-06-12 13:15:21,954.954 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 13:15:21,960.960 INFO    ] Checking for existing commands in stream...
[2026-06-12 13:15:22,028.028 INFO    ] No existing commands found in stream
[2026-06-12 13:15:27,052.052 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 13:15:27,056.056 INFO    ] Waiting 3.59 seconds before fallback handling...
[2026-06-12 13:15:31,047.047 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 13:15:31,049.049 INFO    ] Checking for system updates...
[2026-06-12 13:15:31,070.070 INFO    ] 200
[2026-06-12 13:15:31,072.072 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:15:31,101.101 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 13:15:31,103.103 INFO    ] No update needed
[2026-06-12 13:15:31,104.104 INFO    ] Checking for camera pi updates...
[2026-06-12 13:15:31,123.123 INFO    ] 200
[2026-06-12 13:15:31,125.125 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:15:31,148.148 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 13:15:31,181.181 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 13:15:31,182.182 INFO    ] No camera update needed
[2026-06-12 13:15:31,183.183 INFO    ] Script finished. Safe exiting...
[2026-06-12 13:15:31,185.185 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 13:15:31,188.188 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 13:15:31,191.191 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 13:15:33,224.224 INFO    ] ================================================
[2026-06-12 13:15:33,239.239 INFO    ] Launching Daemon at Fri Jun 12 13:15:33 IST 2026
[2026-06-12 13:15:33,250.250 INFO    ] ================================================
[2026-06-12 13:15:33,581.581 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 13:15:33
[2026-06-12 13:15:33,899.899 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 13:15:34,032.032 INFO    ] Initializing speech engine...
[2026-06-12 13:15:34,045.045 INFO    ] 2026-06-12 13:15:34
[2026-06-12 13:15:34,250.250 INFO    ] 2026-06-12 13:15:34
[2026-06-12 13:15:34,281.281 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 13:15:34,403.403 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 13:15:34,466.466 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 13:15:34,596.596 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 13:15:34,657.657 INFO    ] time= 12/06/2026 13:15:34
[2026-06-12 13:15:34,688.688 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 13:15:34,698.698 INFO    ] Checking for existing commands in stream...
[2026-06-12 13:15:34,770.770 INFO    ] No existing commands found in stream
[2026-06-12 13:15:39,779.779 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 13:15:39,782.782 INFO    ] Waiting 1.90 seconds before fallback handling...
[2026-06-12 13:15:42,003.003 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 13:15:42,004.004 INFO    ] Checking for system updates...
[2026-06-12 13:15:42,025.025 INFO    ] 200
[2026-06-12 13:15:42,027.027 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:15:42,056.056 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 13:15:42,058.058 INFO    ] No update needed
[2026-06-12 13:15:42,059.059 INFO    ] Checking for camera pi updates...
[2026-06-12 13:15:42,079.079 INFO    ] 200
[2026-06-12 13:15:42,080.080 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:15:42,103.103 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 13:15:42,137.137 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 13:15:42,138.138 INFO    ] No camera update needed
[2026-06-12 13:15:42,140.140 INFO    ] Script finished. Safe exiting...
[2026-06-12 13:15:42,141.141 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 13:15:42,144.144 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 13:15:42,147.147 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 13:15:44,185.185 INFO    ] ================================================
[2026-06-12 13:15:44,201.201 INFO    ] Launching Daemon at Fri Jun 12 13:15:44 IST 2026
[2026-06-12 13:15:44,212.212 INFO    ] ================================================
[2026-06-12 13:15:44,589.589 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 13:15:44
[2026-06-12 13:15:44,929.929 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 13:15:45,083.083 INFO    ] Initializing speech engine...
[2026-06-12 13:15:45,089.089 INFO    ] 2026-06-12 13:15:45
[2026-06-12 13:15:45,302.302 INFO    ] 2026-06-12 13:15:45
[2026-06-12 13:15:45,361.361 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 13:15:45,526.526 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 13:15:45,566.566 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 13:15:45,725.725 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 13:15:45,769.769 INFO    ] time= 12/06/2026 13:15:45
[2026-06-12 13:15:45,814.814 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 13:15:45,854.854 INFO    ] Checking for existing commands in stream...
[2026-06-12 13:15:45,948.948 INFO    ] Found 1 existing command(s) in stream
[2026-06-12 13:15:45,974.974 INFO    ] Checking historical command: ID=1781250345688-0
[2026-06-12 13:15:45,975.975 INFO    ] process_and_cleanup_command: msg_id=1781250345688-0
[2026-06-12 13:15:46,003.003 INFO    ] is_command_expired: timestamp=2026-06-12T07:45:45.399Z, expiry=30s
[2026-06-12 13:15:46,088.088 INFO    ] Command removed from stream: 1781250345688-0. returning for processing...
[2026-06-12 13:15:46,092.092 INFO    ] ***** get_valid_command
[2026-06-12 13:15:46,095.095 INFO    ] {'timestamp': '2026-06-12T07:45:45.399Z', 'command': 'start-order', 'timeout': '10', 'source': 'webapp', 'data': '{"request_id":"start-order-1781250345399-05pgc22pp","orderId":"TM09202301260612131357692","is_vending":false}'}
[2026-06-12 13:15:46,100.100 INFO    ] ***** Parsed command data: {'is_vending': False, 'orderId': 'TM09202301260612131357692', 'request_id': 'start-order-1781250345399-05pgc22pp'}
[2026-06-12 13:15:46,104.104 INFO    ] Handling start order...
[2026-06-12 13:15:46,107.107 INFO    ] handle_start_order_command
[2026-06-12 13:15:46,113.113 INFO    ] _send_start_order_success: request_id=start-order-1781250345399-05pgc22pp, order_id=TM09202301260612131357692
[2026-06-12 13:15:46,116.116 INFO    ] [_send_start_order_success] Adding message to stream: machine:TM09202301
[2026-06-12 13:15:46,179.179 INFO    ] [_send_start_order_success] Message added to stream with ID: 1781250346213-0
[2026-06-12 13:15:46,184.184 INFO    ] ✅ Start-order command succeeded - order locked, waiting for process-order command
[2026-06-12 13:15:46,188.188 INFO    ] Checking for system updates...
[2026-06-12 13:15:46,217.217 INFO    ] 200
[2026-06-12 13:15:46,222.222 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:15:46,299.299 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 13:15:46,302.302 INFO    ] No update needed
[2026-06-12 13:15:46,328.328 INFO    ] Checking for camera pi updates...
[2026-06-12 13:15:46,359.359 INFO    ] 200
[2026-06-12 13:15:46,362.362 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:15:46,438.438 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 13:15:46,472.472 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 13:15:46,474.474 INFO    ] No camera update needed
[2026-06-12 13:15:46,478.478 INFO    ] Script finished. Safe exiting...
[2026-06-12 13:15:46,482.482 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 13:15:46,487.487 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 13:15:46,494.494 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-06-12 13:15:46,500.500 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 13:15:48,525.525 INFO    ] ================================================
[2026-06-12 13:15:48,533.533 INFO    ] Launching Daemon at Fri Jun 12 13:15:48 IST 2026
[2026-06-12 13:15:48,539.539 INFO    ] ================================================
[2026-06-12 13:15:48,891.891 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 13:15:48
[2026-06-12 13:15:49,208.208 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 13:15:49,351.351 INFO    ] Initializing speech engine...
[2026-06-12 13:15:49,356.356 INFO    ] 2026-06-12 13:15:49
[2026-06-12 13:15:49,562.562 INFO    ] 2026-06-12 13:15:49
[2026-06-12 13:15:49,591.591 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 13:15:49,716.716 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 13:15:49,779.779 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 13:15:49,916.916 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 13:15:49,984.984 INFO    ] time= 12/06/2026 13:15:49
[2026-06-12 13:15:50,013.013 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 13:15:50,019.019 INFO    ] Checking for existing commands in stream...
[2026-06-12 13:15:50,088.088 INFO    ] Found 2 existing command(s) in stream
[2026-06-12 13:15:50,090.090 INFO    ] Checking historical command: ID=1781250346213-0
[2026-06-12 13:15:50,116.116 INFO    ] process_and_cleanup_command: msg_id=1781250346213-0
[2026-06-12 13:15:50,117.117 INFO    ] is_command_expired: timestamp=2026-06-12T07:45:46.114695Z, expiry=30s
[2026-06-12 13:15:50,227.227 INFO    ] Command removed from stream: 1781250346213-0. returning for processing...
[2026-06-12 13:15:50,231.231 INFO    ] ***** get_valid_command
[2026-06-12 13:15:50,234.234 INFO    ] {'status': 'success', 'message': 'start-order success', 'imei': 'TM09202301', 'message_type': 'command_response', 'timestamp': '2026-06-12T07:45:46.114695Z', 'metadata_request_id': 'start-order-1781250345399-05pgc22pp', 'metadata_order_id': 'TM09202301260612131357692'}
[2026-06-12 13:15:50,239.239 INFO    ] Checking historical command: ID=1781250347748-0
[2026-06-12 13:15:50,243.243 INFO    ] process_and_cleanup_command: msg_id=1781250347748-0
[2026-06-12 13:15:50,245.245 INFO    ] is_command_expired: timestamp=2026-06-12T07:45:47.390Z, expiry=30s
[2026-06-12 13:15:50,297.297 INFO    ] Command removed from stream: 1781250347748-0. returning for processing...
[2026-06-12 13:15:50,300.300 INFO    ] ***** get_valid_command
[2026-06-12 13:15:50,302.302 INFO    ] {'data': '{"request_id":"process-order-1781250347389-p793x7t1v","orderId":"TM09202301260612131357692","is_vending":false,"accessCode":"35085509"}', 'timestamp': '2026-06-12T07:45:47.390Z', 'timeout': '60', 'command': 'process-order', 'source': 'webapp'}
[2026-06-12 13:15:50,305.305 INFO    ] ***** Parsed command data: {'orderId': 'TM09202301260612131357692', 'accessCode': '35085509', 'is_vending': False, 'request_id': 'process-order-1781250347389-p793x7t1v'}
[2026-06-12 13:15:50,308.308 INFO    ] Handling process order...
[2026-06-12 13:15:50,311.311 INFO    ] Processing process-order command...
[2026-06-12 13:15:50,315.315 INFO    ] 🔍 Lock file Order ID: TM09202301260612131357692, TS: 2026-06-12 13:15:46
[2026-06-12 13:15:50,323.323 INFO    ] ✅ Order lock valid for TM09202301260612131357692
[2026-06-12 13:15:50,326.326 INFO    ] Received access code in process-order, skipping PHP API call
[2026-06-12 13:15:50,329.329 INFO    ] processing access code 35085509 for order TM09202301260612131357692
[2026-06-12 13:15:50,336.336 INFO    ] 🔍 Lock file Order ID: TM09202301260612131357692, TS: 2026-06-12 13:15:46
[2026-06-12 13:15:50,340.340 INFO    ] ✅ Order lock valid for TM09202301260612131357692
[2026-06-12 13:15:50,345.345 INFO    ] 2026-06-12 13:15:50
[2026-06-12 13:15:50,374.374 INFO    ] 200
[2026-06-12 13:15:50,378.378 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:15:50,383.383 INFO    ] 35085509
[2026-06-12 13:15:50,386.386 INFO    ] 2026-06-12 13:15:50
[2026-06-12 13:15:50,391.391 INFO    ] session id :657278424
[2026-06-12 13:15:50,394.394 INFO    ] http://localhost:5000/v2/getOrderByAccessCode?access_code=35085509&imei=TM09202301&session_id=657278424
[2026-06-12 13:15:51,188.188 INFO    ] 200
[2026-06-12 13:15:51,189.189 INFO    ] {"status": true, "msg": "Order Data", "data": {"bill_amount": "85", "access_code": "35085509", "order_id": "TM09202301260612131357692", "mobile": "9502772861", "proposed_sku_json": [{"unit_price": 30, "qty": 2, "skuid": "186084", "offer_desc": "", "offer_id": "", "door_id": "2", "tray_id": "37", "sku_total": 60, "mrp": "30", "image_url": "https://images.tinymart.in/product/186084-5395.png", "name": "KITKAT Nestle 4 Finger Chocolate 38g"}, {"unit_price": 25, "qty": 1, "skuid": "4500407", "offer_desc": "", "offer_id": "", "door_id": "2", "tray_id": "31", "sku_total": 25, "mrp": "25", "image_url": "https://images.tinymart.in/product/4500407-2060.jpg", "name": "Paper boat Alphonso Mango 160ml"}], "invoice_bill": "85"}, "rstatus": true}
[2026-06-12 13:15:51,191.191 INFO    ] 85
[2026-06-12 13:15:51,193.193 INFO    ] TM09202301260612131357692
[2026-06-12 13:15:51,194.194 INFO    ] 9502772861
[2026-06-12 13:15:51,195.195 INFO    ] 2026-06-12 13:15:51
[2026-06-12 13:15:51,196.196 INFO    ] Door Opening for user mobile ending with  two eight six one 
[2026-06-12 13:15:51,198.198 INFO    ] Door Opening for user mobile ending with  two eight six one 
[2026-06-12 13:15:51,199.199 INFO    ] 8bd398e711ea425ba5423c74f6d99d12
[2026-06-12 13:15:51,218.218 INFO    ] 2026-06-12 13:15:51
[2026-06-12 13:15:51,220.220 INFO    ] playing audio file
[2026-06-12 13:15:51,228.228 INFO    ] 2026-06-12 13:15:51
[2026-06-12 13:15:51,230.230 INFO    ] 2026-06-12 13:15:51
[2026-06-12 13:15:51,232.232 INFO    ] publish_status: order_id=TM09202301260612131357692
[2026-06-12 13:15:51,234.234 INFO    ] [publish_status] Adding message to stream: order:TM09202301260612131357692
[2026-06-12 13:15:51,290.290 INFO    ] [publish_status] Message added to stream with ID: 1781250351325-0
[2026-06-12 13:15:51,292.292 INFO    ] Published to order:TM09202301260612131357692: {'server_response': '{"data": {"access_code": "35085509", "proposed_sku_json": [{"offer_desc": "", "mrp": "30", "image_url": "https://images.tinymart.in/product/186084-5395.png", "offer_id": "", "skuid": "186084", "name": "KITKAT Nestle 4 Finger Chocolate 38g", "sku_total": 60, "door_id": "2", "tray_id": "37", "unit_price": 30, "qty": 2}, {"offer_desc": "", "mrp": "25", "image_url": "https://images.tinymart.in/product/4500407-2060.jpg", "offer_id": "", "skuid": "4500407", "name": "Paper boat Alphonso Mango 160ml", "sku_total": 25, "door_id": "2", "tray_id": "31", "unit_price": 25, "qty": 1}], "order_id": "TM09202301260612131357692", "mobile": "9502772861", "invoice_bill": "85", "bill_amount": "85"}, "msg": "Order Data", "rstatus": true, "status": true}', 'timestamp': '2026-06-12T07:45:51.231412Z', 'server_status': 'order-started', 'order_id': 'TM09202301260612131357692'} (ID: 1781250351325-0)
[2026-06-12 13:15:51,614.614 INFO    ] {'server_response': {'data': {'access_code': '35085509', 'proposed_sku_json': [{'offer_desc': '', 'mrp': '30', 'image_url': 'https://images.tinymart.in/product/186084-5395.png', 'offer_id': '', 'skuid': '186084', 'name': 'KITKAT Nestle 4 Finger Chocolate 38g', 'sku_total': 60, 'door_id': '2', 'tray_id': '37', 'unit_price': 30, 'qty': 2}, {'offer_desc': '', 'mrp': '25', 'image_url': 'https://images.tinymart.in/product/4500407-2060.jpg', 'offer_id': '', 'skuid': '4500407', 'name': 'Paper boat Alphonso Mango 160ml', 'sku_total': 25, 'door_id': '2', 'tray_id': '31', 'unit_price': 25, 'qty': 1}], 'order_id': 'TM09202301260612131357692', 'mobile': '9502772861', 'invoice_bill': '85', 'bill_amount': '85'}, 'msg': 'Order Data', 'rstatus': True, 'status': True}, 'server_status': 'order-started', 'order_id': 'TM09202301260612131357692'}
[2026-06-12 13:15:51,617.617 INFO    ] 200
[2026-06-12 13:15:51,619.619 INFO    ] {"data":{"server_response":{"data":{"access_code":"35085509","proposed_sku_json":[{"offer_desc":"","mrp":"30","image_url":"https:\/\/images.tinymart.in\/product\/186084-5395.png","offer_id":"","skuid":"186084","name":"KITKAT Nestle 4 Finger Chocolate 38g","sku_total":60,"door_id":"2","tray_id":"37","unit_price":30,"qty":2},{"offer_desc":"","mrp":"25","image_url":"https:\/\/images.tinymart.in\/product\/4500407-2060.jpg","offer_id":"","skuid":"4500407","name":"Paper boat Alphonso Mango 160ml","sku_total":25,"door_id":"2","tray_id":"31","unit_price":25,"qty":1}],"order_id":"TM09202301260612131357692","mobile":"9502772861","invoice_bill":"85","bill_amount":"85"},"msg":"Order Data","rstatus":true,"status":true},"server_status":"order-started","order_id":"TM09202301260612131357692"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-12 13:15:51,622.622 INFO    ] {'data': {'server_response': {'data': {'order_id': 'TM09202301260612131357692', 'access_code': '35085509', 'proposed_sku_json': [{'offer_desc': '', 'mrp': '30', 'image_url': 'https://images.tinymart.in/product/186084-5395.png', 'offer_id': '', 'skuid': '186084', 'name': 'KITKAT Nestle 4 Finger Chocolate 38g', 'sku_total': 60, 'door_id': '2', 'tray_id': '37', 'unit_price': 30, 'qty': 2}, {'offer_desc': '', 'mrp': '25', 'image_url': 'https://images.tinymart.in/product/4500407-2060.jpg', 'offer_id': '', 'skuid': '4500407', 'name': 'Paper boat Alphonso Mango 160ml', 'sku_total': 25, 'door_id': '2', 'tray_id': '31', 'unit_price': 25, 'qty': 1}], 'invoice_bill': '85', 'mobile': '9502772861', 'bill_amount': '85'}, 'msg': 'Order Data', 'rstatus': True, 'status': True}, 'server_status': 'order-started', 'order_id': 'TM09202301260612131357692'}, 'response': {'data': 'order updated successfully', 'msg': 'order updated successfully', 'status': True, 'code': 'ORDER_EXISTS'}}
[2026-06-12 13:15:51,625.625 INFO    ] 2026-06-12 13:15:51
[2026-06-12 13:15:51,671.671 INFO    ] 200
[2026-06-12 13:15:51,674.674 INFO    ] True
[2026-06-12 13:15:51,824.824 INFO    ] 200
[2026-06-12 13:15:51,825.825 INFO    ] {"error": {"tmessage": "In Progress", "umessage": "In Progress", "data": {}, "code": 20001}, "SectionSKU": {"Header": "Thank you for bearing with us :)", "skus": []}, "rstatus": false, "SectionStatus": {"Header": " Your order is under process  ", "SubHeader": "Please wait while we process your order", "UI_Header": "", "Note": ""}, "status": "False", "voiceNote": "Please Wait", "SectionMain": {"Header": "Processing Order"}}
[2026-06-12 13:15:51,827.827 INFO    ] {'SectionStatus': {'Header': ' Your order is under process  ', 'UI_Header': '', 'SubHeader': 'Please wait while we process your order', 'Note': ''}, 'voiceNote': 'Please Wait', 'SectionSKU': {'Header': 'Thank you for bearing with us :)', 'skus': []}, 'SectionMain': {'Header': 'Processing Order'}, 'rstatus': False, 'error': {'data': {}, 'tmessage': 'In Progress', 'umessage': 'In Progress', 'code': 20001}, 'status': 'False'}
[2026-06-12 13:15:51,829.829 INFO    ] *** process_order ***
[2026-06-12 13:15:53,181.181 INFO    ] 200
[2026-06-12 13:15:53,182.182 INFO    ] {"error": {"tmessage": "In Progress", "umessage": "In Progress", "data": {}, "code": 20001}, "SectionSKU": {"Header": "Thank you for bearing with us :)", "skus": []}, "rstatus": false, "SectionStatus": {"Header": " Your order is under process  ", "SubHeader": "Please wait while we process your order", "UI_Header": "", "Note": ""}, "status": "False", "voiceNote": "Please Wait", "SectionMain": {"Header": "Processing Order"}}
[2026-06-12 13:15:53,184.184 INFO    ] {'SectionStatus': {'Header': ' Your order is under process  ', 'UI_Header': '', 'SubHeader': 'Please wait while we process your order', 'Note': ''}, 'voiceNote': 'Please Wait', 'SectionSKU': {'Header': 'Thank you for bearing with us :)', 'skus': []}, 'SectionMain': {'Header': 'Processing Order'}, 'rstatus': False, 'error': {'data': {}, 'tmessage': 'In Progress', 'umessage': 'In Progress', 'code': 20001}, 'status': 'False'}
[2026-06-12 13:15:53,185.185 INFO    ] *** process_order ***
[2026-06-12 13:15:54,406.406 INFO    ] 200
[2026-06-12 13:15:54,407.407 INFO    ] {"error": {"tmessage": "In Progress", "umessage": "In Progress", "data": {}, "code": 20001}, "SectionSKU": {"Header": "Thank you for bearing with us :)", "skus": []}, "rstatus": false, "SectionStatus": {"Header": " Your order is under process  ", "SubHeader": "Please wait while we process your order", "UI_Header": "", "Note": ""}, "status": "False", "voiceNote": "Please Wait", "SectionMain": {"Header": "Processing Order"}}
[2026-06-12 13:15:54,409.409 INFO    ] {'SectionStatus': {'Header': ' Your order is under process  ', 'UI_Header': '', 'SubHeader': 'Please wait while we process your order', 'Note': ''}, 'voiceNote': 'Please Wait', 'SectionSKU': {'Header': 'Thank you for bearing with us :)', 'skus': []}, 'SectionMain': {'Header': 'Processing Order'}, 'rstatus': False, 'error': {'data': {}, 'tmessage': 'In Progress', 'umessage': 'In Progress', 'code': 20001}, 'status': 'False'}
[2026-06-12 13:15:54,411.411 INFO    ] *** process_order ***
[2026-06-12 13:15:55,575.575 INFO    ] 200
[2026-06-12 13:15:55,577.577 INFO    ] {"delay": 0, "SectionSKU": {"Header": "Thank you for bearing with us :)", "skus": []}, "rstatus": true, "SectionStatus": {"Header": " Your order is under process  ", "SubHeader": "Please wait while we process your order", "UI_Header": "", "Note": ""}, "status": "True", "voiceNote": "Please Wait", "SectionMain": {"Header": "Processing Order"}}
[2026-06-12 13:15:55,578.578 INFO    ] {'SectionStatus': {'Header': ' Your order is under process  ', 'UI_Header': '', 'SubHeader': 'Please wait while we process your order', 'Note': ''}, 'delay': 0, 'voiceNote': 'Please Wait', 'SectionSKU': {'Header': 'Thank you for bearing with us :)', 'skus': []}, 'SectionMain': {'Header': 'Processing Order'}, 'rstatus': True, 'status': 'True'}
[2026-06-12 13:15:55,580.580 INFO    ] *** process_order ***
[2026-06-12 13:15:55,581.581 INFO    ] publish_status: order_id=TM09202301260612131357692
[2026-06-12 13:15:55,582.582 INFO    ] [publish_status] Adding message to stream: order:TM09202301260612131357692
[2026-06-12 13:15:55,658.658 INFO    ] [publish_status] Message added to stream with ID: 1781250355694-0
[2026-06-12 13:15:55,659.659 INFO    ] Published to order:TM09202301260612131357692: {'server_response': '{"SectionStatus": {"Note": "", "Header": " Your order is under process  ", "SubHeader": "You can pull the door now.", "UI_Header": ""}, "delay": 0, "voiceNote": "Door is open...", "rstatus": true, "SectionMain": {"Header": "Processing Order"}, "SectionSKU": {"Header": "Thank you for bearing with us :)", "skus": []}, "status": "True"}', 'server_status': 'doorOpened', 'order_id': 'TM09202301260612131357692'} (ID: 1781250355694-0)
[2026-06-12 13:15:56,750.750 INFO    ] 2026-06-12 13:15:56
[2026-06-12 13:15:56,752.752 INFO    ] publish_status: order_id=TM09202301260612131357692
[2026-06-12 13:15:56,755.755 INFO    ] [publish_status] Adding message to stream: order:TM09202301260612131357692
[2026-06-12 13:15:56,810.810 INFO    ] [publish_status] Message added to stream with ID: 1781250356845-0
[2026-06-12 13:15:56,813.813 INFO    ] Published to order:TM09202301260612131357692: {'server_response': '{"SectionStatus": {"Header": " Your order is under process  ", "UI_Header": "", "SubHeader": "Please wait while we process your order", "Note": ""}, "delay": 0, "voiceNote": "Please Wait", "SectionSKU": {"Header": "Thank you for bearing with us :)", "skus": []}, "SectionMain": {"Header": "Processing Order"}, "rstatus": true, "status": "True"}', 'timestamp': '2026-06-12T07:45:56.751312Z', 'server_status': 'processOrder', 'order_id': 'TM09202301260612131357692'} (ID: 1781250356845-0)
[2026-06-12 13:15:57,331.331 INFO    ] {'server_response': {'SectionStatus': {'Header': ' Your order is under process  ', 'UI_Header': '', 'SubHeader': 'Please wait while we process your order', 'Note': ''}, 'delay': 0, 'voiceNote': 'Please Wait', 'SectionSKU': {'Header': 'Thank you for bearing with us :)', 'skus': []}, 'SectionMain': {'Header': 'Processing Order'}, 'rstatus': True, 'status': 'True'}, 'server_status': 'processOrder', 'order_id': 'TM09202301260612131357692'}
[2026-06-12 13:15:57,332.332 INFO    ] 200
[2026-06-12 13:15:57,333.333 INFO    ] {"data":{"server_response":{"SectionStatus":{"Header":" Your order is under process  ","UI_Header":"","SubHeader":"Please wait while we process your order","Note":""},"delay":0,"voiceNote":"Please Wait","SectionSKU":{"Header":"Thank you for bearing with us :)","skus":[]},"SectionMain":{"Header":"Processing Order"},"rstatus":true,"status":"true"},"server_status":"processOrder","order_id":"TM09202301260612131357692"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-12 13:15:57,335.335 INFO    ] {'data': {'server_response': {'SectionStatus': {'Header': ' Your order is under process  ', 'UI_Header': '', 'SubHeader': 'Please wait while we process your order', 'Note': ''}, 'delay': 0, 'voiceNote': 'Please Wait', 'rstatus': True, 'SectionMain': {'Header': 'Processing Order'}, 'SectionSKU': {'Header': 'Thank you for bearing with us :)', 'skus': []}, 'status': 'true'}, 'server_status': 'processOrder', 'order_id': 'TM09202301260612131357692'}, 'response': {'data': 'order updated successfully', 'msg': 'order updated successfully', 'status': True, 'code': 'ORDER_EXISTS'}}
[2026-06-12 13:15:57,337.337 INFO    ] 2026-06-12 13:15:57
[2026-06-12 13:15:57,338.338 INFO    ] None
[2026-06-12 13:15:57,340.340 INFO    ] Opening Door now
[2026-06-12 13:15:57,342.342 INFO    ] Opening Door now
[2026-06-12 13:15:57,343.343 INFO    ] 08e5d1063504bf393c26f0bfa436e9f9
[2026-06-12 13:15:57,349.349 INFO    ] 2026-06-12 13:15:57
[2026-06-12 13:15:57,351.351 INFO    ] playing audio file
[2026-06-12 13:15:57,360.360 INFO    ] 2026-06-12 13:15:57
[2026-06-12 13:15:57,362.362 INFO    ] 2026-06-12 13:15:57
[2026-06-12 13:16:00,569.569 INFO    ] 200
[2026-06-12 13:16:00,571.571 INFO    ] {"error": {"tmessage": "In Progress", "umessage": "In Progress", "data": {}, "code": 20001}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"name": "KITKAT Nestle 4 Finger Chocolate 38g", "qty": 2}, {"name": "Paper boat Alphonso Mango 160ml", "qty": 1}]}, "rstatus": false, "SectionStatus": {"Header": "Please Close Door 2", "SubHeader": "Please Pick the Products and close the door", "UI_Header": "DOOR 2\nIS \nOPEN \nNOW", "Note": "Please Close the door after picking up products"}, "status": "False", "voiceNote": "Door 2 is open now", "SectionMain": {"Header": "Door Open"}}
[2026-06-12 13:16:00,573.573 INFO    ] {'SectionStatus': {'Header': 'Please Close Door 2', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'SubHeader': 'Please Pick the Products and close the door', 'Note': 'Please Close the door after picking up products'}, 'voiceNote': 'Door 2 is open now', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'KITKAT Nestle 4 Finger Chocolate 38g', 'qty': 2}, {'name': 'Paper boat Alphonso Mango 160ml', 'qty': 1}]}, 'SectionMain': {'Header': 'Door Open'}, 'rstatus': False, 'error': {'data': {}, 'tmessage': 'In Progress', 'umessage': 'In Progress', 'code': 20001}, 'status': 'False'}
[2026-06-12 13:16:03,602.602 INFO    ] 200
[2026-06-12 13:16:03,603.603 INFO    ] {"error": {"tmessage": "In Progress", "umessage": "In Progress", "data": {}, "code": 20001}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"name": "KITKAT Nestle 4 Finger Chocolate 38g", "qty": 2}, {"name": "Paper boat Alphonso Mango 160ml", "qty": 1}]}, "rstatus": false, "SectionStatus": {"Header": "Please Close Door 2", "SubHeader": "Please Pick the Products and close the door", "UI_Header": "DOOR 2\nIS \nOPEN \nNOW", "Note": "Please Close the door after picking up products"}, "status": "False", "voiceNote": "Please close door 2", "SectionMain": {"Header": "Door Open"}}
[2026-06-12 13:16:03,605.605 INFO    ] {'SectionStatus': {'Header': 'Please Close Door 2', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'SubHeader': 'Please Pick the Products and close the door', 'Note': 'Please Close the door after picking up products'}, 'voiceNote': 'Please close door 2', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'KITKAT Nestle 4 Finger Chocolate 38g', 'qty': 2}, {'name': 'Paper boat Alphonso Mango 160ml', 'qty': 1}]}, 'SectionMain': {'Header': 'Door Open'}, 'rstatus': False, 'error': {'data': {}, 'tmessage': 'In Progress', 'umessage': 'In Progress', 'code': 20001}, 'status': 'False'}
[2026-06-12 13:16:06,635.635 INFO    ] 200
[2026-06-12 13:16:06,637.637 INFO    ] {"error": {"tmessage": "In Progress", "umessage": "In Progress", "data": {}, "code": 20001}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"name": "KITKAT Nestle 4 Finger Chocolate 38g", "qty": 2}, {"name": "Paper boat Alphonso Mango 160ml", "qty": 1}]}, "rstatus": false, "SectionStatus": {"Header": "Please Close Door 2", "SubHeader": "Please Pick the Products and close the door", "UI_Header": "DOOR 2\nIS \nOPEN \nNOW", "Note": "Please Close the door after picking up products"}, "status": "False", "voiceNote": "Please close door 2", "SectionMain": {"Header": "Door Open"}}
[2026-06-12 13:16:06,638.638 INFO    ] Please close door 2
[2026-06-12 13:16:06,639.639 INFO    ] Please close door 2
[2026-06-12 13:16:06,641.641 INFO    ] 758e46684c76e887a5f58d4738034bed
[2026-06-12 13:16:06,646.646 INFO    ] 2026-06-12 13:16:06
[2026-06-12 13:16:06,647.647 INFO    ] playing audio file
[2026-06-12 13:16:06,657.657 INFO    ] 2026-06-12 13:16:06
[2026-06-12 13:16:06,659.659 INFO    ] publish_status: order_id=TM09202301260612131357692
[2026-06-12 13:16:06,661.661 INFO    ] [publish_status] Adding message to stream: order:TM09202301260612131357692
[2026-06-12 13:16:06,742.742 INFO    ] [publish_status] Message added to stream with ID: 1781250366776-0
[2026-06-12 13:16:06,743.743 INFO    ] Published to order:TM09202301260612131357692: {'server_response': '{"SectionStatus": {"Header": "Please Close Door 2", "UI_Header": "DOOR 2\\nIS \\nOPEN \\nNOW", "SubHeader": "Please Pick the Products and close the door", "Note": "Please Close the door after picking up products"}, "voiceNote": "Please close door 2", "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"name": "KITKAT Nestle 4 Finger Chocolate 38g", "qty": 2}, {"name": "Paper boat Alphonso Mango 160ml", "qty": 1}]}, "SectionMain": {"Header": "Door Open"}, "rstatus": false, "error": {"data": {}, "tmessage": "In Progress", "umessage": "In Progress", "code": 20001}, "status": "False"}', 'timestamp': '2026-06-12T07:46:06.658436Z', 'server_status': 'OrderStatus', 'order_id': 'TM09202301260612131357692'} (ID: 1781250366776-0)
[2026-06-12 13:16:07,131.131 INFO    ] {'server_response': {'SectionStatus': {'Header': 'Please Close Door 2', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'SubHeader': 'Please Pick the Products and close the door', 'Note': 'Please Close the door after picking up products'}, 'voiceNote': 'Please close door 2', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'KITKAT Nestle 4 Finger Chocolate 38g', 'qty': 2}, {'name': 'Paper boat Alphonso Mango 160ml', 'qty': 1}]}, 'SectionMain': {'Header': 'Door Open'}, 'rstatus': False, 'error': {'data': {}, 'tmessage': 'In Progress', 'umessage': 'In Progress', 'code': 20001}, 'status': 'False'}, 'server_status': 'OrderStatus', 'order_id': 'TM09202301260612131357692'}
[2026-06-12 13:16:07,134.134 INFO    ] 200
[2026-06-12 13:16:07,136.136 INFO    ] {"data":{"server_response":{"SectionStatus":{"Header":"Please Close Door 2","UI_Header":"DOOR 2\nIS \nOPEN \nNOW","SubHeader":"Please Pick the Products and close the door","Note":"Please Close the door after picking up products"},"voiceNote":"Please close door 2","SectionSKU":{"Header":"Pick the below items from the door","skus":[{"name":"KITKAT Nestle 4 Finger Chocolate 38g","qty":2},{"name":"Paper boat Alphonso Mango 160ml","qty":1}]},"SectionMain":{"Header":"Door Open"},"rstatus":false,"error":{"data":[],"tmessage":"In Progress","umessage":"In Progress","code":20001},"status":"false"},"server_status":"OrderStatus","order_id":"TM09202301260612131357692"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-12 13:16:07,140.140 INFO    ] {'data': {'server_response': {'SectionStatus': {'Header': 'Please Close Door 2', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'SubHeader': 'Please Pick the Products and close the door', 'Note': 'Please Close the door after picking up products'}, 'voiceNote': 'Please close door 2', 'rstatus': False, 'SectionMain': {'Header': 'Door Open'}, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'KITKAT Nestle 4 Finger Chocolate 38g', 'qty': 2}, {'name': 'Paper boat Alphonso Mango 160ml', 'qty': 1}]}, 'error': {'data': [], 'tmessage': 'In Progress', 'umessage': 'In Progress', 'code': 20001}, 'status': 'false'}, 'server_status': 'OrderStatus', 'order_id': 'TM09202301260612131357692'}, 'response': {'data': 'order updated successfully', 'msg': 'order updated successfully', 'status': True, 'code': 'ORDER_EXISTS'}}
[2026-06-12 13:16:07,143.143 INFO    ] {'SectionStatus': {'Header': 'Please Close Door 2', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'SubHeader': 'Please Pick the Products and close the door', 'Note': 'Please Close the door after picking up products'}, 'voiceNote': 'Please close door 2', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'KITKAT Nestle 4 Finger Chocolate 38g', 'qty': 2}, {'name': 'Paper boat Alphonso Mango 160ml', 'qty': 1}]}, 'SectionMain': {'Header': 'Door Open'}, 'rstatus': False, 'error': {'data': {}, 'tmessage': 'In Progress', 'umessage': 'In Progress', 'code': 20001}, 'status': 'False'}
[2026-06-12 13:16:10,181.181 INFO    ] 200
[2026-06-12 13:16:10,183.183 INFO    ] {"delay": 100, "SectionSKU": {"Header": "If you like us, tell others... else tell us", "skus": []}, "rstatus": true, "SectionStatus": {"Header": " Order is complete ", "SubHeader": "Please wait for invoice to generate", "UI_Header": "", "Note": "If any due amount, clear at https://go.tinymart.in"}, "status": "True", "voiceNote": "Transaction Completed", "SectionMain": {"Header": "Door Closed"}}
[2026-06-12 13:16:10,185.185 INFO    ] {'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'}, 'delay': 100, 'voiceNote': 'Transaction Completed', 'SectionSKU': {'Header': 'If you like us, tell others... else tell us', 'skus': []}, 'SectionMain': {'Header': 'Door Closed'}, 'rstatus': True, 'status': 'True'}
[2026-06-12 13:16:10,187.187 INFO    ] 2026-06-12 13:16:10
[2026-06-12 13:16:10,188.188 INFO    ] Order Completed 
[2026-06-12 13:16:10,190.190 INFO    ] Order Completed 
[2026-06-12 13:16:10,192.192 INFO    ] 193c8a8cf3bf490ccfe0b23598544a83
[2026-06-12 13:16:10,198.198 INFO    ] 2026-06-12 13:16:10
[2026-06-12 13:16:10,200.200 INFO    ] playing audio file
[2026-06-12 13:16:10,211.211 INFO    ] 2026-06-12 13:16:10
[2026-06-12 13:16:10,214.214 INFO    ] {'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'}, 'delay': 100, 'voiceNote': 'Transaction Completed', 'SectionSKU': {'Header': 'If you like us, tell others... else tell us', 'skus': []}, 'SectionMain': {'Header': 'Door Closed'}, 'rstatus': True, 'status': 'True'}
[2026-06-12 13:16:10,216.216 INFO    ] 2026-06-12 13:16:10
[2026-06-12 13:16:11,178.178 INFO    ] 200
[2026-06-12 13:16:11,179.179 INFO    ] {"anomaly": 0, "skus": [{"image_url": "https://images.tinymart.in/product/4500407-2060.jpg", "qty": 1, "skuid": "4500407", "unit_price": "25", "tray_id": "31", "sku_total": 25.0, "mrp": "25", "door_id": "", "name": "Paper boat Alphonso Mango 160ml per peice"}, {"image_url": "https://images.tinymart.in/product/186084-5395.png", "qty": 2, "skuid": "186084", "unit_price": "30", "tray_id": "37", "sku_total": 60.0, "mrp": "30", "door_id": "", "name": "KITKAT Nestle 4 Finger Chocolate 38g per peice"}], "total_amount": 85.0, "orderId": "TM09202301260612131357692", "res": "True", "rstatus": true, "logic": "WBL"}
[2026-06-12 13:16:11,181.181 INFO    ] {'logic': 'WBL', 'orderId': 'TM09202301260612131357692', 'skus': [{'mrp': '25', 'image_url': 'https://images.tinymart.in/product/4500407-2060.jpg', 'qty': 1, 'skuid': '4500407', 'name': 'Paper boat Alphonso Mango 160ml per peice', 'sku_total': 25.0, 'door_id': '', 'tray_id': '31', 'unit_price': '25'}, {'mrp': '30', 'image_url': 'https://images.tinymart.in/product/186084-5395.png', 'qty': 2, 'skuid': '186084', 'name': 'KITKAT Nestle 4 Finger Chocolate 38g per peice', 'sku_total': 60.0, 'door_id': '', 'tray_id': '37', 'unit_price': '30'}], 'total_amount': 85.0, 'res': 'True', 'anomaly': 0, 'rstatus': True}
[2026-06-12 13:16:11,182.182 INFO    ] {'logic': 'WBL', 'orderId': 'TM09202301260612131357692', 'skus': [{'mrp': '25', 'image_url': 'https://images.tinymart.in/product/4500407-2060.jpg', 'qty': 1, 'skuid': '4500407', 'name': 'Paper boat Alphonso Mango 160ml per peice', 'sku_total': 25.0, 'door_id': '', 'tray_id': '31', 'unit_price': '25'}, {'mrp': '30', 'image_url': 'https://images.tinymart.in/product/186084-5395.png', 'qty': 2, 'skuid': '186084', 'name': 'KITKAT Nestle 4 Finger Chocolate 38g per peice', 'sku_total': 60.0, 'door_id': '', 'tray_id': '37', 'unit_price': '30'}], 'total_amount': 85.0, 'res': 'True', 'anomaly': 0, 'rstatus': True}
[2026-06-12 13:16:11,184.184 INFO    ] 2026-06-12 13:16:11
[2026-06-12 13:16:11,185.185 INFO    ] 2026-06-12 13:16:11
[2026-06-12 13:16:11,187.187 INFO    ] 85
[2026-06-12 13:16:11,188.188 INFO    ] 2026-06-12 13:16:11
[2026-06-12 13:16:11,190.190 INFO    ] 2026-06-12 13:16:11
[2026-06-12 13:16:11,191.191 INFO    ]  Your Bill Amount is 85
[2026-06-12 13:16:11,192.192 INFO    ]  Your Bill Amount is 85
[2026-06-12 13:16:11,194.194 INFO    ] e8e46b50324ae89a823ae8329543eb1d
[2026-06-12 13:16:11,206.206 INFO    ] 2026-06-12 13:16:11
[2026-06-12 13:16:11,208.208 INFO    ] playing audio file
[2026-06-12 13:16:11,218.218 INFO    ] 2026-06-12 13:16:11
[2026-06-12 13:16:11,219.219 INFO    ] 2026-06-12 13:16:11
[2026-06-12 13:16:11,221.221 INFO    ] publish_status: order_id=TM09202301260612131357692
[2026-06-12 13:16:11,223.223 INFO    ] [publish_status] Adding message to stream: order:TM09202301260612131357692
[2026-06-12 13:16:11,287.287 INFO    ] [publish_status] Message added to stream with ID: 1781250371317-0
[2026-06-12 13:16:11,289.289 INFO    ] Published to order:TM09202301260612131357692: {'server_response': '{"logic": "WBL", "orderId": "TM09202301260612131357692", "skus": [{"mrp": "25", "image_url": "https://images.tinymart.in/product/4500407-2060.jpg", "qty": 1, "skuid": "4500407", "name": "Paper boat Alphonso Mango 160ml per peice", "sku_total": 25.0, "door_id": "", "tray_id": "31", "unit_price": "25"}, {"mrp": "30", "image_url": "https://images.tinymart.in/product/186084-5395.png", "qty": 2, "skuid": "186084", "name": "KITKAT Nestle 4 Finger Chocolate 38g per peice", "sku_total": 60.0, "door_id": "", "tray_id": "37", "unit_price": "30"}], "total_amount": 85.0, "res": "True", "anomaly": 0, "rstatus": true}', 'timestamp': '2026-06-12T07:46:11.220820Z', 'server_status': 'invoiceOrder', 'order_id': 'TM09202301260612131357692'} (ID: 1781250371317-0)
[2026-06-12 13:16:17,045.045 INFO    ] {'server_response': {'logic': 'WBL', 'orderId': 'TM09202301260612131357692', 'skus': [{'mrp': '25', 'image_url': 'https://images.tinymart.in/product/4500407-2060.jpg', 'qty': 1, 'skuid': '4500407', 'name': 'Paper boat Alphonso Mango 160ml per peice', 'sku_total': 25.0, 'door_id': '', 'tray_id': '31', 'unit_price': '25'}, {'mrp': '30', 'image_url': 'https://images.tinymart.in/product/186084-5395.png', 'qty': 2, 'skuid': '186084', 'name': 'KITKAT Nestle 4 Finger Chocolate 38g per peice', 'sku_total': 60.0, 'door_id': '', 'tray_id': '37', 'unit_price': '30'}], 'total_amount': 85.0, 'res': 'True', 'anomaly': 0, 'rstatus': True}, 'server_status': 'invoiceOrder', 'order_id': 'TM09202301260612131357692'}
[2026-06-12 13:16:17,046.046 INFO    ] 200
[2026-06-12 13:16:17,048.048 INFO    ] {"data":{"server_response":{"logic":"WBL","orderId":"TM09202301260612131357692","skus":[{"mrp":"25","image_url":"https:\/\/images.tinymart.in\/product\/4500407-2060.jpg","qty":1,"skuid":"4500407","name":"Paper boat Alphonso Mango 160ml per peice","sku_total":25,"door_id":"","tray_id":"31","unit_price":"25"},{"mrp":"30","image_url":"https:\/\/images.tinymart.in\/product\/186084-5395.png","qty":2,"skuid":"186084","name":"KITKAT Nestle 4 Finger Chocolate 38g per peice","sku_total":60,"door_id":"","tray_id":"37","unit_price":"30"}],"total_amount":85,"res":"true","anomaly":0,"rstatus":true},"server_status":"invoiceOrder","order_id":"TM09202301260612131357692"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-12 13:16:17,049.049 INFO    ] {'data': {'server_response': {'res': 'true', 'skus': [{'mrp': '25', 'image_url': 'https://images.tinymart.in/product/4500407-2060.jpg', 'qty': 1, 'skuid': '4500407', 'name': 'Paper boat Alphonso Mango 160ml per peice', 'sku_total': 25, 'door_id': '', 'tray_id': '31', 'unit_price': '25'}, {'mrp': '30', 'image_url': 'https://images.tinymart.in/product/186084-5395.png', 'qty': 2, 'skuid': '186084', 'name': 'KITKAT Nestle 4 Finger Chocolate 38g per peice', 'sku_total': 60, 'door_id': '', 'tray_id': '37', 'unit_price': '30'}], 'total_amount': 85, 'logic': 'WBL', 'anomaly': 0, 'rstatus': True, 'orderId': 'TM09202301260612131357692'}, 'server_status': 'invoiceOrder', 'order_id': 'TM09202301260612131357692'}, 'response': {'data': 'order updated successfully', 'msg': 'order updated successfully', 'status': True, 'code': 'ORDER_EXISTS'}}
[2026-06-12 13:16:17,051.051 INFO    ] {'data': {'server_response': {'res': 'true', 'skus': [{'mrp': '25', 'image_url': 'https://images.tinymart.in/product/4500407-2060.jpg', 'qty': 1, 'skuid': '4500407', 'name': 'Paper boat Alphonso Mango 160ml per peice', 'sku_total': 25, 'door_id': '', 'tray_id': '31', 'unit_price': '25'}, {'mrp': '30', 'image_url': 'https://images.tinymart.in/product/186084-5395.png', 'qty': 2, 'skuid': '186084', 'name': 'KITKAT Nestle 4 Finger Chocolate 38g per peice', 'sku_total': 60, 'door_id': '', 'tray_id': '37', 'unit_price': '30'}], 'total_amount': 85, 'logic': 'WBL', 'anomaly': 0, 'rstatus': True, 'orderId': 'TM09202301260612131357692'}, 'server_status': 'invoiceOrder', 'order_id': 'TM09202301260612131357692'}, 'response': {'data': 'order updated successfully', 'msg': 'order updated successfully', 'status': True, 'code': 'ORDER_EXISTS'}}
[2026-06-12 13:16:17,052.052 INFO    ] 2026-06-12 13:16:17
[2026-06-12 13:16:19,291.291 INFO    ] 200
[2026-06-12 13:16:19,293.293 INFO    ] {"order_items": [], "tray_sync": ["no_entry", "no_entry", "no_entry", "no_entry", "no_entry", "no_entry"], "orders": [], "order_items_synced": [], "orders_synced": [], "orders_data_synced": [], "status": true, "orders_data": [], "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"]}
[2026-06-12 13:16:19,295.295 INFO    ] 2026-06-12 13:16:19
[2026-06-12 13:16:19,357.357 INFO    ] 200
[2026-06-12 13:16:19,358.358 INFO    ] True
[2026-06-12 13:16:19,360.360 INFO    ] cleanup_start_order_file_after_processing: order_id=TM09202301260612131357692
[2026-06-12 13:16:19,363.363 INFO    ] start order file deleted
[2026-06-12 13:16:19,365.365 INFO    ] Checking for system updates...
[2026-06-12 13:16:19,388.388 INFO    ] 200
[2026-06-12 13:16:19,390.390 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:16:19,428.428 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 13:16:19,430.430 INFO    ] No update needed
[2026-06-12 13:16:19,432.432 INFO    ] Checking for camera pi updates...
[2026-06-12 13:16:19,453.453 INFO    ] 200
[2026-06-12 13:16:19,455.455 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:16:19,483.483 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 13:16:19,510.510 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 13:16:19,512.512 INFO    ] No camera update needed
[2026-06-12 13:16:19,515.515 INFO    ] Script finished. Safe exiting...
[2026-06-12 13:16:19,517.517 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 13:16:19,521.521 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 13:16:19,525.525 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 13:16:21,548.548 INFO    ] ================================================
[2026-06-12 13:16:21,557.557 INFO    ] Launching Daemon at Fri Jun 12 13:16:21 IST 2026
[2026-06-12 13:16:21,563.563 INFO    ] ================================================
[2026-06-12 13:16:21,886.886 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 13:16:21
[2026-06-12 13:16:22,220.220 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 13:16:22,359.359 INFO    ] Initializing speech engine...
[2026-06-12 13:16:22,364.364 INFO    ] 2026-06-12 13:16:22
[2026-06-12 13:16:22,560.560 INFO    ] 2026-06-12 13:16:22
[2026-06-12 13:16:22,605.605 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 13:16:22,770.770 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 13:16:22,810.810 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 13:16:22,973.973 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 13:16:22,987.987 INFO    ] time= 12/06/2026 13:16:22
[2026-06-12 13:16:23,044.044 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 13:16:23,085.085 INFO    ] Checking for existing commands in stream...
[2026-06-12 13:16:23,172.172 INFO    ] No existing commands found in stream
[2026-06-12 13:16:28,183.183 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 13:16:28,186.186 INFO    ] Waiting 2.54 seconds before fallback handling...
[2026-06-12 13:16:31,063.063 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 13:16:31,066.066 INFO    ] Checking for system updates...
[2026-06-12 13:16:31,103.103 INFO    ] 200
[2026-06-12 13:16:31,105.105 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:16:31,157.157 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 13:16:31,159.159 INFO    ] No update needed
[2026-06-12 13:16:31,162.162 INFO    ] Checking for camera pi updates...
[2026-06-12 13:16:31,199.199 INFO    ] 200
[2026-06-12 13:16:31,202.202 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:16:31,243.243 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 13:16:31,281.281 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 13:16:31,284.284 INFO    ] No camera update needed
[2026-06-12 13:16:31,286.286 INFO    ] Script finished. Safe exiting...
[2026-06-12 13:16:31,288.288 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 13:16:31,294.294 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 13:16:31,299.299 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 13:16:33,329.329 INFO    ] ================================================
[2026-06-12 13:16:33,337.337 INFO    ] Launching Daemon at Fri Jun 12 13:16:33 IST 2026
[2026-06-12 13:16:33,344.344 INFO    ] ================================================
[2026-06-12 13:16:33,656.656 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 13:16:33
[2026-06-12 13:16:34,017.017 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 13:16:34,160.160 INFO    ] Initializing speech engine...
[2026-06-12 13:16:34,164.164 INFO    ] 2026-06-12 13:16:34
[2026-06-12 13:16:34,369.369 INFO    ] 2026-06-12 13:16:34
[2026-06-12 13:16:34,399.399 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 13:16:34,585.585 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 13:16:34,589.589 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 13:16:34,717.717 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 13:16:34,783.783 INFO    ] time= 12/06/2026 13:16:34
[2026-06-12 13:16:34,816.816 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 13:16:34,821.821 INFO    ] Checking for existing commands in stream...
[2026-06-12 13:16:34,892.892 INFO    ] No existing commands found in stream
[2026-06-12 13:16:39,903.903 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 13:16:39,907.907 INFO    ] Waiting 1.47 seconds before fallback handling...
[2026-06-12 13:16:41,704.704 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 13:16:41,705.705 INFO    ] Checking for system updates...
[2026-06-12 13:16:41,726.726 INFO    ] 200
[2026-06-12 13:16:41,727.727 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:16:41,757.757 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 13:16:41,758.758 INFO    ] No update needed
[2026-06-12 13:16:41,760.760 INFO    ] Checking for camera pi updates...
[2026-06-12 13:16:41,779.779 INFO    ] 200
[2026-06-12 13:16:41,781.781 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:16:41,803.803 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 13:16:41,849.849 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 13:16:41,850.850 INFO    ] No camera update needed
[2026-06-12 13:16:41,852.852 INFO    ] Script finished. Safe exiting...
[2026-06-12 13:16:41,853.853 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 13:16:41,856.856 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 13:16:41,858.858 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 13:16:43,895.895 INFO    ] ================================================
[2026-06-12 13:16:43,911.911 INFO    ] Launching Daemon at Fri Jun 12 13:16:43 IST 2026
[2026-06-12 13:16:43,925.925 INFO    ] ================================================
[2026-06-12 13:16:44,274.274 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 13:16:44
[2026-06-12 13:16:44,607.607 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 13:16:44,752.752 INFO    ] Initializing speech engine...
[2026-06-12 13:16:44,762.762 INFO    ] 2026-06-12 13:16:44
[2026-06-12 13:16:44,982.982 INFO    ] 2026-06-12 13:16:44
[2026-06-12 13:16:45,013.013 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 13:16:45,147.147 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 13:16:45,185.185 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 13:16:45,336.336 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 13:16:45,368.368 INFO    ] time= 12/06/2026 13:16:45
[2026-06-12 13:16:45,433.433 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 13:16:45,466.466 INFO    ] Checking for existing commands in stream...
[2026-06-12 13:16:45,542.542 INFO    ] No existing commands found in stream
[2026-06-12 13:16:50,553.553 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 13:16:50,556.556 INFO    ] Waiting 1.76 seconds before fallback handling...
[2026-06-12 13:16:52,680.680 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 13:16:52,682.682 INFO    ] Checking for system updates...
[2026-06-12 13:16:52,702.702 INFO    ] 200
[2026-06-12 13:16:52,704.704 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:16:52,734.734 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 13:16:52,735.735 INFO    ] No update needed
[2026-06-12 13:16:52,737.737 INFO    ] Checking for camera pi updates...
[2026-06-12 13:16:52,756.756 INFO    ] 200
[2026-06-12 13:16:52,758.758 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:16:52,782.782 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 13:16:52,829.829 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 13:16:52,830.830 INFO    ] No camera update needed
[2026-06-12 13:16:52,832.832 INFO    ] Script finished. Safe exiting...
[2026-06-12 13:16:52,833.833 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 13:16:52,836.836 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 13:16:52,839.839 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 13:16:54,876.876 INFO    ] ================================================
[2026-06-12 13:16:54,892.892 INFO    ] Launching Daemon at Fri Jun 12 13:16:54 IST 2026
[2026-06-12 13:16:54,903.903 INFO    ] ================================================
[2026-06-12 13:16:55,239.239 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 13:16:55
[2026-06-12 13:16:55,578.578 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 13:16:55,723.723 INFO    ] Initializing speech engine...
[2026-06-12 13:16:55,728.728 INFO    ] 2026-06-12 13:16:55
[2026-06-12 13:16:55,934.934 INFO    ] 2026-06-12 13:16:55
[2026-06-12 13:16:55,963.963 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 13:16:56,148.148 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 13:16:56,152.152 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 13:16:56,290.290 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 13:16:56,358.358 INFO    ] time= 12/06/2026 13:16:56
[2026-06-12 13:16:56,382.382 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 13:16:56,389.389 INFO    ] Checking for existing commands in stream...
[2026-06-12 13:16:56,454.454 INFO    ] No existing commands found in stream
[2026-06-12 13:17:01,465.465 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 13:17:01,468.468 INFO    ] Waiting 3.16 seconds before fallback handling...
[2026-06-12 13:17:04,965.965 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 13:17:04,966.966 INFO    ] Checking for system updates...
[2026-06-12 13:17:04,987.987 INFO    ] 200
[2026-06-12 13:17:04,988.988 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:17:05,018.018 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 13:17:05,020.020 INFO    ] No update needed
[2026-06-12 13:17:05,021.021 INFO    ] Checking for camera pi updates...
[2026-06-12 13:17:05,040.040 INFO    ] 200
[2026-06-12 13:17:05,042.042 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:17:05,065.065 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 13:17:05,102.102 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 13:17:05,103.103 INFO    ] No camera update needed
[2026-06-12 13:17:05,104.104 INFO    ] Script finished. Safe exiting...
[2026-06-12 13:17:05,106.106 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 13:17:05,109.109 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 13:17:05,111.111 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 13:17:07,151.151 INFO    ] ================================================
[2026-06-12 13:17:07,166.166 INFO    ] Launching Daemon at Fri Jun 12 13:17:07 IST 2026
[2026-06-12 13:17:07,177.177 INFO    ] ================================================
[2026-06-12 13:17:07,545.545 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 13:17:07
[2026-06-12 13:17:07,863.863 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 13:17:08,008.008 INFO    ] Initializing speech engine...
[2026-06-12 13:17:08,014.014 INFO    ] 2026-06-12 13:17:08
[2026-06-12 13:17:08,219.219 INFO    ] 2026-06-12 13:17:08
[2026-06-12 13:17:08,248.248 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 13:17:08,431.431 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 13:17:08,434.434 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 13:17:08,568.568 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 13:17:08,625.625 INFO    ] time= 12/06/2026 13:17:08
[2026-06-12 13:17:08,662.662 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 13:17:08,669.669 INFO    ] Checking for existing commands in stream...
[2026-06-12 13:17:08,734.734 INFO    ] No existing commands found in stream
[2026-06-12 13:17:13,745.745 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 13:17:13,748.748 INFO    ] Waiting 3.02 seconds before fallback handling...
[2026-06-12 13:17:17,122.122 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 13:17:17,124.124 INFO    ] Checking for system updates...
[2026-06-12 13:17:17,144.144 INFO    ] 200
[2026-06-12 13:17:17,146.146 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:17:17,179.179 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 13:17:17,181.181 INFO    ] No update needed
[2026-06-12 13:17:17,182.182 INFO    ] Checking for camera pi updates...
[2026-06-12 13:17:17,201.201 INFO    ] 200
[2026-06-12 13:17:17,202.202 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:17:17,225.225 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 13:17:17,263.263 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 13:17:17,265.265 INFO    ] No camera update needed
[2026-06-12 13:17:17,266.266 INFO    ] Script finished. Safe exiting...
[2026-06-12 13:17:17,267.267 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 13:17:17,271.271 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 13:17:17,273.273 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 13:17:19,311.311 INFO    ] ================================================
[2026-06-12 13:17:19,327.327 INFO    ] Launching Daemon at Fri Jun 12 13:17:19 IST 2026
[2026-06-12 13:17:19,338.338 INFO    ] ================================================
[2026-06-12 13:17:19,713.713 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 13:17:19
[2026-06-12 13:17:20,031.031 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 13:17:20,171.171 INFO    ] Initializing speech engine...
[2026-06-12 13:17:20,181.181 INFO    ] 2026-06-12 13:17:20
[2026-06-12 13:17:20,386.386 INFO    ] 2026-06-12 13:17:20
[2026-06-12 13:17:20,417.417 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 13:17:20,540.540 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 13:17:20,578.578 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 13:17:20,743.743 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 13:17:20,810.810 INFO    ] time= 12/06/2026 13:17:20
[2026-06-12 13:17:20,834.834 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 13:17:20,841.841 INFO    ] Checking for existing commands in stream...
[2026-06-12 13:17:20,907.907 INFO    ] No existing commands found in stream
[2026-06-12 13:17:25,916.916 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 13:17:25,919.919 INFO    ] Waiting 3.12 seconds before fallback handling...
[2026-06-12 13:17:29,383.383 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 13:17:29,384.384 INFO    ] Checking for system updates...
[2026-06-12 13:17:29,405.405 INFO    ] 200
[2026-06-12 13:17:29,407.407 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:17:29,437.437 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 13:17:29,439.439 INFO    ] No update needed
[2026-06-12 13:17:29,440.440 INFO    ] Checking for camera pi updates...
[2026-06-12 13:17:29,460.460 INFO    ] 200
[2026-06-12 13:17:29,461.461 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:17:29,486.486 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 13:17:29,633.633 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 13:17:29,636.636 INFO    ] No camera update needed
[2026-06-12 13:17:29,639.639 INFO    ] Script finished. Safe exiting...
[2026-06-12 13:17:29,642.642 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 13:17:29,648.648 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 13:17:29,654.654 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 13:17:31,695.695 INFO    ] ================================================
[2026-06-12 13:17:31,709.709 INFO    ] Launching Daemon at Fri Jun 12 13:17:31 IST 2026
[2026-06-12 13:17:31,720.720 INFO    ] ================================================
[2026-06-12 13:17:32,095.095 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 13:17:32
[2026-06-12 13:17:32,438.438 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 13:17:32,590.590 INFO    ] Initializing speech engine...
[2026-06-12 13:17:32,594.594 INFO    ] 2026-06-12 13:17:32
[2026-06-12 13:17:32,822.822 INFO    ] 2026-06-12 13:17:32
[2026-06-12 13:17:32,852.852 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 13:17:32,947.947 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 13:17:32,981.981 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 13:17:33,090.090 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 13:17:33,127.127 INFO    ] time= 12/06/2026 13:17:33
[2026-06-12 13:17:33,178.178 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 13:17:33,199.199 INFO    ] Checking for existing commands in stream...
[2026-06-12 13:17:33,314.314 INFO    ] No existing commands found in stream
[2026-06-12 13:17:38,325.325 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 13:17:38,327.327 INFO    ] Waiting 3.14 seconds before fallback handling...
[2026-06-12 13:17:41,790.790 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 13:17:41,792.792 INFO    ] Checking for system updates...
[2026-06-12 13:17:41,812.812 INFO    ] 200
[2026-06-12 13:17:41,814.814 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:17:41,843.843 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 13:17:41,845.845 INFO    ] No update needed
[2026-06-12 13:17:41,846.846 INFO    ] Checking for camera pi updates...
[2026-06-12 13:17:41,865.865 INFO    ] 200
[2026-06-12 13:17:41,867.867 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:17:41,890.890 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 13:17:41,921.921 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 13:17:41,922.922 INFO    ] No camera update needed
[2026-06-12 13:17:41,923.923 INFO    ] Script finished. Safe exiting...
[2026-06-12 13:17:41,925.925 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 13:17:41,928.928 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 13:17:41,930.930 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 13:17:43,967.967 INFO    ] ================================================
[2026-06-12 13:17:43,983.983 INFO    ] Launching Daemon at Fri Jun 12 13:17:43 IST 2026
[2026-06-12 13:17:43,993.993 INFO    ] ================================================
[2026-06-12 13:17:44,351.351 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 13:17:44
[2026-06-12 13:17:44,669.669 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 13:17:44,803.803 INFO    ] Initializing speech engine...
[2026-06-12 13:17:44,815.815 INFO    ] 2026-06-12 13:17:44
[2026-06-12 13:17:45,023.023 INFO    ] 2026-06-12 13:17:45
[2026-06-12 13:17:45,052.052 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 13:17:45,236.236 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 13:17:45,240.240 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 13:17:45,369.369 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 13:17:45,421.421 INFO    ] time= 12/06/2026 13:17:45
[2026-06-12 13:17:45,455.455 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 13:17:45,471.471 INFO    ] Checking for existing commands in stream...
[2026-06-12 13:17:45,565.565 INFO    ] No existing commands found in stream
[2026-06-12 13:17:50,579.579 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 13:17:50,582.582 INFO    ] Waiting 3.35 seconds before fallback handling...
[2026-06-12 13:17:54,278.278 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 13:17:54,280.280 INFO    ] Checking for system updates...
[2026-06-12 13:17:54,302.302 INFO    ] 200
[2026-06-12 13:17:54,303.303 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:17:54,333.333 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 13:17:54,334.334 INFO    ] No update needed
[2026-06-12 13:17:54,336.336 INFO    ] Checking for camera pi updates...
[2026-06-12 13:17:54,355.355 INFO    ] 200
[2026-06-12 13:17:54,356.356 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:17:54,379.379 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 13:17:54,404.404 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 13:17:54,405.405 INFO    ] No camera update needed
[2026-06-12 13:17:54,407.407 INFO    ] Script finished. Safe exiting...
[2026-06-12 13:17:54,408.408 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 13:17:54,411.411 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 13:17:54,414.414 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 13:17:56,452.452 INFO    ] ================================================
[2026-06-12 13:17:56,467.467 INFO    ] Launching Daemon at Fri Jun 12 13:17:56 IST 2026
[2026-06-12 13:17:56,478.478 INFO    ] ================================================
[2026-06-12 13:17:56,844.844 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 13:17:56
[2026-06-12 13:17:57,175.175 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 13:17:57,324.324 INFO    ] Initializing speech engine...
[2026-06-12 13:17:57,330.330 INFO    ] 2026-06-12 13:17:57
[2026-06-12 13:17:57,538.538 INFO    ] 2026-06-12 13:17:57
[2026-06-12 13:17:57,567.567 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 13:17:57,690.690 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 13:17:57,748.748 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 13:17:57,881.881 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 13:17:57,882.882 INFO    ] time= 12/06/2026 13:17:57
[2026-06-12 13:17:57,884.884 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 13:17:57,885.885 INFO    ] Checking for existing commands in stream...
[2026-06-12 13:17:57,943.943 INFO    ] No existing commands found in stream
[2026-06-12 13:18:02,951.951 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 13:18:02,952.952 INFO    ] Waiting 0.92 seconds before fallback handling...
[2026-06-12 13:18:04,213.213 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 13:18:04,215.215 INFO    ] Checking for system updates...
[2026-06-12 13:18:04,236.236 INFO    ] 200
[2026-06-12 13:18:04,237.237 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:18:04,267.267 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 13:18:04,269.269 INFO    ] No update needed
[2026-06-12 13:18:04,270.270 INFO    ] Checking for camera pi updates...
[2026-06-12 13:18:04,291.291 INFO    ] 200
[2026-06-12 13:18:04,292.292 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:18:04,318.318 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 13:18:04,357.357 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 13:18:04,358.358 INFO    ] No camera update needed
[2026-06-12 13:18:04,360.360 INFO    ] Script finished. Safe exiting...
[2026-06-12 13:18:04,361.361 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 13:18:04,364.364 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 13:18:04,367.367 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 13:18:06,405.405 INFO    ] ================================================
[2026-06-12 13:18:06,420.420 INFO    ] Launching Daemon at Fri Jun 12 13:18:06 IST 2026
[2026-06-12 13:18:06,431.431 INFO    ] ================================================
[2026-06-12 13:18:06,798.798 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 13:18:06
[2026-06-12 13:18:07,136.136 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 13:18:07,290.290 INFO    ] Initializing speech engine...
[2026-06-12 13:18:07,294.294 INFO    ] 2026-06-12 13:18:07
[2026-06-12 13:18:07,505.505 INFO    ] 2026-06-12 13:18:07
[2026-06-12 13:18:07,534.534 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 13:18:07,659.659 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 13:18:07,702.702 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 13:18:07,917.917 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 13:18:07,957.957 INFO    ] time= 12/06/2026 13:18:07
[2026-06-12 13:18:07,964.964 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 13:18:07,966.966 INFO    ] Checking for existing commands in stream...
[2026-06-12 13:18:08,032.032 INFO    ] No existing commands found in stream
[2026-06-12 13:18:13,041.041 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 13:18:13,045.045 INFO    ] Waiting 1.43 seconds before fallback handling...
[2026-06-12 13:18:14,862.862 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 13:18:14,864.864 INFO    ] Checking for system updates...
[2026-06-12 13:18:14,885.885 INFO    ] 200
[2026-06-12 13:18:14,886.886 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:18:14,916.916 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 13:18:14,918.918 INFO    ] No update needed
[2026-06-12 13:18:14,919.919 INFO    ] Checking for camera pi updates...
[2026-06-12 13:18:14,939.939 INFO    ] 200
[2026-06-12 13:18:14,941.941 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:18:14,965.965 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 13:18:15,011.011 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 13:18:15,012.012 INFO    ] No camera update needed
[2026-06-12 13:18:15,014.014 INFO    ] Script finished. Safe exiting...
[2026-06-12 13:18:15,015.015 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 13:18:15,018.018 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 13:18:15,021.021 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 13:18:17,062.062 INFO    ] ================================================
[2026-06-12 13:18:17,077.077 INFO    ] Launching Daemon at Fri Jun 12 13:18:17 IST 2026
[2026-06-12 13:18:17,088.088 INFO    ] ================================================
[2026-06-12 13:18:17,444.444 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 13:18:17
[2026-06-12 13:18:17,763.763 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 13:18:17,902.902 INFO    ] Initializing speech engine...
[2026-06-12 13:18:17,910.910 INFO    ] 2026-06-12 13:18:17
[2026-06-12 13:18:18,134.134 INFO    ] 2026-06-12 13:18:18
[2026-06-12 13:18:18,166.166 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 13:18:18,300.300 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 13:18:18,367.367 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 13:18:18,507.507 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 13:18:18,553.553 INFO    ] time= 12/06/2026 13:18:18
[2026-06-12 13:18:18,592.592 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 13:18:18,615.615 INFO    ] Checking for existing commands in stream...
[2026-06-12 13:18:18,690.690 INFO    ] No existing commands found in stream
[2026-06-12 13:18:23,701.701 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 13:18:23,704.704 INFO    ] Waiting 3.55 seconds before fallback handling...
[2026-06-12 13:18:28,440.440 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 13:18:28,442.442 INFO    ] Checking for system updates...
[2026-06-12 13:18:28,479.479 INFO    ] 200
[2026-06-12 13:18:28,481.481 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:18:28,533.533 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 13:18:28,536.536 INFO    ] No update needed
[2026-06-12 13:18:28,538.538 INFO    ] Checking for camera pi updates...
[2026-06-12 13:18:28,567.567 INFO    ] 200
[2026-06-12 13:18:28,568.568 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:18:28,591.591 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 13:18:28,615.615 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 13:18:28,617.617 INFO    ] No camera update needed
[2026-06-12 13:18:28,618.618 INFO    ] Script finished. Safe exiting...
[2026-06-12 13:18:28,619.619 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 13:18:28,622.622 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 13:18:28,625.625 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 13:18:30,662.662 INFO    ] ================================================
[2026-06-12 13:18:30,677.677 INFO    ] Launching Daemon at Fri Jun 12 13:18:30 IST 2026
[2026-06-12 13:18:30,688.688 INFO    ] ================================================
[2026-06-12 13:18:31,047.047 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 13:18:31
[2026-06-12 13:18:31,386.386 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 13:18:31,541.541 INFO    ] Initializing speech engine...
[2026-06-12 13:18:31,546.546 INFO    ] 2026-06-12 13:18:31
[2026-06-12 13:18:31,751.751 INFO    ] 2026-06-12 13:18:31
[2026-06-12 13:18:31,780.780 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 13:18:31,873.873 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 13:18:31,874.874 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 13:18:31,998.998 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 13:18:32,001.001 INFO    ] time= 12/06/2026 13:18:31
[2026-06-12 13:18:32,019.019 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 13:18:32,094.094 INFO    ] Checking for existing commands in stream...
[2026-06-12 13:18:32,224.224 INFO    ] No existing commands found in stream
[2026-06-12 13:18:37,270.270 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 13:18:37,271.271 INFO    ] Waiting 3.83 seconds before fallback handling...
[2026-06-12 13:18:41,435.435 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 13:18:41,437.437 INFO    ] Checking for system updates...
[2026-06-12 13:18:41,457.457 INFO    ] 200
[2026-06-12 13:18:41,459.459 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:18:41,489.489 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 13:18:41,491.491 INFO    ] No update needed
[2026-06-12 13:18:41,492.492 INFO    ] Checking for camera pi updates...
[2026-06-12 13:18:41,512.512 INFO    ] 200
[2026-06-12 13:18:41,513.513 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:18:41,538.538 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 13:18:41,573.573 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 13:18:41,575.575 INFO    ] No camera update needed
[2026-06-12 13:18:41,576.576 INFO    ] Script finished. Safe exiting...
[2026-06-12 13:18:41,577.577 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 13:18:41,581.581 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 13:18:41,584.584 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 13:18:43,621.621 INFO    ] ================================================
[2026-06-12 13:18:43,636.636 INFO    ] Launching Daemon at Fri Jun 12 13:18:43 IST 2026
[2026-06-12 13:18:43,646.646 INFO    ] ================================================
[2026-06-12 13:18:44,016.016 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 13:18:44
[2026-06-12 13:18:44,336.336 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 13:18:44,481.481 INFO    ] Initializing speech engine...
[2026-06-12 13:18:44,486.486 INFO    ] 2026-06-12 13:18:44
[2026-06-12 13:18:44,690.690 INFO    ] 2026-06-12 13:18:44
[2026-06-12 13:18:44,719.719 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 13:18:44,843.843 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 13:18:44,906.906 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 13:18:45,041.041 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 13:18:45,098.098 INFO    ] time= 12/06/2026 13:18:45
[2026-06-12 13:18:45,132.132 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 13:18:45,138.138 INFO    ] Checking for existing commands in stream...
[2026-06-12 13:18:45,209.209 INFO    ] No existing commands found in stream
[2026-06-12 13:18:50,218.218 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 13:18:50,221.221 INFO    ] Waiting 3.77 seconds before fallback handling...
[2026-06-12 13:18:54,356.356 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 13:18:54,358.358 INFO    ] Checking for system updates...
[2026-06-12 13:18:54,379.379 INFO    ] 200
[2026-06-12 13:18:54,380.380 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:18:54,410.410 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 13:18:54,412.412 INFO    ] No update needed
[2026-06-12 13:18:54,413.413 INFO    ] Checking for camera pi updates...
[2026-06-12 13:18:54,435.435 INFO    ] 200
[2026-06-12 13:18:54,436.436 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:18:54,459.459 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 13:18:54,502.502 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 13:18:54,503.503 INFO    ] No camera update needed
[2026-06-12 13:18:54,505.505 INFO    ] Script finished. Safe exiting...
[2026-06-12 13:18:54,506.506 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 13:18:54,509.509 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 13:18:54,512.512 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 13:18:56,549.549 INFO    ] ================================================
[2026-06-12 13:18:56,564.564 INFO    ] Launching Daemon at Fri Jun 12 13:18:56 IST 2026
[2026-06-12 13:18:56,575.575 INFO    ] ================================================
[2026-06-12 13:18:56,963.963 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 13:18:56
[2026-06-12 13:18:57,301.301 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 13:18:57,446.446 INFO    ] Initializing speech engine...
[2026-06-12 13:18:57,456.456 INFO    ] 2026-06-12 13:18:57
[2026-06-12 13:18:57,668.668 INFO    ] 2026-06-12 13:18:57
[2026-06-12 13:18:57,697.697 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 13:18:57,823.823 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 13:18:57,886.886 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 13:18:58,050.050 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 13:18:58,100.100 INFO    ] time= 12/06/2026 13:18:58
[2026-06-12 13:18:58,122.122 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 13:18:58,129.129 INFO    ] Checking for existing commands in stream...
[2026-06-12 13:18:58,197.197 INFO    ] No existing commands found in stream
[2026-06-12 13:19:03,211.211 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 13:19:03,215.215 INFO    ] Waiting 0.18 seconds before fallback handling...
[2026-06-12 13:19:03,740.740 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 13:19:03,741.741 INFO    ] Checking for system updates...
[2026-06-12 13:19:03,762.762 INFO    ] 200
[2026-06-12 13:19:03,764.764 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:19:03,794.794 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 13:19:03,795.795 INFO    ] No update needed
[2026-06-12 13:19:03,797.797 INFO    ] Checking for camera pi updates...
[2026-06-12 13:19:03,816.816 INFO    ] 200
[2026-06-12 13:19:03,817.817 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:19:03,841.841 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 13:19:03,884.884 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 13:19:03,885.885 INFO    ] No camera update needed
[2026-06-12 13:19:03,887.887 INFO    ] Script finished. Safe exiting...
[2026-06-12 13:19:03,888.888 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 13:19:03,891.891 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 13:19:03,894.894 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 13:19:05,932.932 INFO    ] ================================================
[2026-06-12 13:19:05,947.947 INFO    ] Launching Daemon at Fri Jun 12 13:19:05 IST 2026
[2026-06-12 13:19:05,957.957 INFO    ] ================================================
[2026-06-12 13:19:06,296.296 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 13:19:06
[2026-06-12 13:19:06,616.616 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 13:19:06,752.752 INFO    ] Initializing speech engine...
[2026-06-12 13:19:06,756.756 INFO    ] 2026-06-12 13:19:06
[2026-06-12 13:19:06,988.988 INFO    ] 2026-06-12 13:19:06
[2026-06-12 13:19:07,020.020 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 13:19:07,152.152 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 13:19:07,180.180 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 13:19:07,335.335 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 13:19:07,358.358 INFO    ] time= 12/06/2026 13:19:07
[2026-06-12 13:19:07,425.425 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 13:19:07,449.449 INFO    ] Checking for existing commands in stream...
[2026-06-12 13:19:07,521.521 INFO    ] No existing commands found in stream
[2026-06-12 13:19:12,531.531 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 13:19:12,534.534 INFO    ] Waiting 1.06 seconds before fallback handling...
[2026-06-12 13:19:13,916.916 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 13:19:13,918.918 INFO    ] Checking for system updates...
[2026-06-12 13:19:13,939.939 INFO    ] 200
[2026-06-12 13:19:13,941.941 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:19:13,970.970 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 13:19:13,972.972 INFO    ] No update needed
[2026-06-12 13:19:13,973.973 INFO    ] Checking for camera pi updates...
[2026-06-12 13:19:13,993.993 INFO    ] 200
[2026-06-12 13:19:13,995.995 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:19:14,019.019 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 13:19:14,063.063 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 13:19:14,064.064 INFO    ] No camera update needed
[2026-06-12 13:19:14,065.065 INFO    ] Script finished. Safe exiting...
[2026-06-12 13:19:14,067.067 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 13:19:14,070.070 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 13:19:14,073.073 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 13:19:16,111.111 INFO    ] ================================================
[2026-06-12 13:19:16,126.126 INFO    ] Launching Daemon at Fri Jun 12 13:19:16 IST 2026
[2026-06-12 13:19:16,137.137 INFO    ] ================================================
[2026-06-12 13:19:16,499.499 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 13:19:16
[2026-06-12 13:19:16,837.837 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 13:19:16,981.981 INFO    ] Initializing speech engine...
[2026-06-12 13:19:16,994.994 INFO    ] 2026-06-12 13:19:16
[2026-06-12 13:19:17,204.204 INFO    ] 2026-06-12 13:19:17
[2026-06-12 13:19:17,234.234 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 13:19:17,419.419 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 13:19:17,429.429 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 13:19:17,559.559 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 13:19:17,626.626 INFO    ] time= 12/06/2026 13:19:17
[2026-06-12 13:19:17,651.651 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 13:19:17,657.657 INFO    ] Checking for existing commands in stream...
[2026-06-12 13:19:17,723.723 INFO    ] No existing commands found in stream
[2026-06-12 13:19:22,734.734 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 13:19:22,737.737 INFO    ] Waiting 0.36 seconds before fallback handling...
[2026-06-12 13:19:23,486.486 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 13:19:23,487.487 INFO    ] Checking for system updates...
[2026-06-12 13:19:23,508.508 INFO    ] 200
[2026-06-12 13:19:23,510.510 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:19:23,541.541 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 13:19:23,543.543 INFO    ] No update needed
[2026-06-12 13:19:23,544.544 INFO    ] Checking for camera pi updates...
[2026-06-12 13:19:23,564.564 INFO    ] 200
[2026-06-12 13:19:23,565.565 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:19:23,590.590 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 13:19:23,632.632 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 13:19:23,634.634 INFO    ] No camera update needed
[2026-06-12 13:19:23,635.635 INFO    ] Script finished. Safe exiting...
[2026-06-12 13:19:23,636.636 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 13:19:23,640.640 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 13:19:23,643.643 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 13:19:25,681.681 INFO    ] ================================================
[2026-06-12 13:19:25,696.696 INFO    ] Launching Daemon at Fri Jun 12 13:19:25 IST 2026
[2026-06-12 13:19:25,707.707 INFO    ] ================================================
[2026-06-12 13:19:26,060.060 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 13:19:26
[2026-06-12 13:19:26,379.379 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 13:19:26,526.526 INFO    ] Initializing speech engine...
[2026-06-12 13:19:26,529.529 INFO    ] 2026-06-12 13:19:26
[2026-06-12 13:19:26,734.734 INFO    ] 2026-06-12 13:19:26
[2026-06-12 13:19:26,763.763 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 13:19:26,946.946 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 13:19:26,950.950 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 13:19:27,080.080 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 13:19:27,130.130 INFO    ] time= 12/06/2026 13:19:27
[2026-06-12 13:19:27,164.164 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 13:19:27,180.180 INFO    ] Checking for existing commands in stream...
[2026-06-12 13:19:27,251.251 INFO    ] No existing commands found in stream
[2026-06-12 13:19:32,260.260 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 13:19:32,263.263 INFO    ] Waiting 3.42 seconds before fallback handling...
[2026-06-12 13:19:36,024.024 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 13:19:36,026.026 INFO    ] Checking for system updates...
[2026-06-12 13:19:36,047.047 INFO    ] 200
[2026-06-12 13:19:36,049.049 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:19:36,078.078 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 13:19:36,080.080 INFO    ] No update needed
[2026-06-12 13:19:36,081.081 INFO    ] Checking for camera pi updates...
[2026-06-12 13:19:36,102.102 INFO    ] 200
[2026-06-12 13:19:36,103.103 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:19:36,126.126 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 13:19:36,153.153 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 13:19:36,154.154 INFO    ] No camera update needed
[2026-06-12 13:19:36,155.155 INFO    ] Script finished. Safe exiting...
[2026-06-12 13:19:36,156.156 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 13:19:36,159.159 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 13:19:36,162.162 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 13:19:38,201.201 INFO    ] ================================================
[2026-06-12 13:19:38,216.216 INFO    ] Launching Daemon at Fri Jun 12 13:19:38 IST 2026
[2026-06-12 13:19:38,226.226 INFO    ] ================================================
[2026-06-12 13:19:38,564.564 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 13:19:38
[2026-06-12 13:19:38,879.879 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 13:19:39,023.023 INFO    ] Initializing speech engine...
[2026-06-12 13:19:39,028.028 INFO    ] 2026-06-12 13:19:39
[2026-06-12 13:19:39,231.231 INFO    ] 2026-06-12 13:19:39
[2026-06-12 13:19:39,260.260 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 13:19:39,444.444 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 13:19:39,453.453 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 13:19:39,575.575 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 13:19:39,636.636 INFO    ] time= 12/06/2026 13:19:39
[2026-06-12 13:19:39,673.673 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 13:19:39,675.675 INFO    ] Checking for existing commands in stream...
[2026-06-12 13:19:39,746.746 INFO    ] No existing commands found in stream
[2026-06-12 13:19:44,755.755 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 13:19:44,758.758 INFO    ] Waiting 3.59 seconds before fallback handling...
[2026-06-12 13:19:48,705.705 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 13:19:48,707.707 INFO    ] Checking for system updates...
[2026-06-12 13:19:48,727.727 INFO    ] 200
[2026-06-12 13:19:48,729.729 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:19:48,760.760 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 13:19:48,761.761 INFO    ] No update needed
[2026-06-12 13:19:48,763.763 INFO    ] Checking for camera pi updates...
[2026-06-12 13:19:48,782.782 INFO    ] 200
[2026-06-12 13:19:48,783.783 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:19:48,807.807 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 13:19:48,835.835 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 13:19:48,837.837 INFO    ] No camera update needed
[2026-06-12 13:19:48,838.838 INFO    ] Script finished. Safe exiting...
[2026-06-12 13:19:48,839.839 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 13:19:48,842.842 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 13:19:48,845.845 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 13:19:50,883.883 INFO    ] ================================================
[2026-06-12 13:19:50,898.898 INFO    ] Launching Daemon at Fri Jun 12 13:19:50 IST 2026
[2026-06-12 13:19:50,909.909 INFO    ] ================================================
[2026-06-12 13:19:51,263.263 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 13:19:51
[2026-06-12 13:19:51,578.578 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 13:19:51,724.724 INFO    ] Initializing speech engine...
[2026-06-12 13:19:51,729.729 INFO    ] 2026-06-12 13:19:51
[2026-06-12 13:19:51,937.937 INFO    ] 2026-06-12 13:19:51
[2026-06-12 13:19:51,965.965 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 13:19:52,133.133 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 13:19:52,134.134 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 13:19:52,278.278 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 13:19:52,304.304 INFO    ] time= 12/06/2026 13:19:52
[2026-06-12 13:19:52,374.374 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 13:19:52,400.400 INFO    ] Checking for existing commands in stream...
[2026-06-12 13:19:52,509.509 INFO    ] No existing commands found in stream
[2026-06-12 13:19:57,519.519 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 13:19:57,522.522 INFO    ] Waiting 0.80 seconds before fallback handling...
[2026-06-12 13:19:58,685.685 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 13:19:58,686.686 INFO    ] Checking for system updates...
[2026-06-12 13:19:58,707.707 INFO    ] 200
[2026-06-12 13:19:58,708.708 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:19:58,738.738 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 13:19:58,739.739 INFO    ] No update needed
[2026-06-12 13:19:58,741.741 INFO    ] Checking for camera pi updates...
[2026-06-12 13:19:58,760.760 INFO    ] 200
[2026-06-12 13:19:58,761.761 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:19:58,784.784 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 13:19:58,826.826 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 13:19:58,827.827 INFO    ] No camera update needed
[2026-06-12 13:19:58,828.828 INFO    ] Script finished. Safe exiting...
[2026-06-12 13:19:58,830.830 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 13:19:58,833.833 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 13:19:58,835.835 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 13:20:00,873.873 INFO    ] ================================================
[2026-06-12 13:20:00,888.888 INFO    ] Launching Daemon at Fri Jun 12 13:20:00 IST 2026
[2026-06-12 13:20:00,899.899 INFO    ] ================================================
[2026-06-12 13:20:01,241.241 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 13:20:01
[2026-06-12 13:20:01,794.794 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 13:20:02,111.111 INFO    ] Initializing speech engine...
[2026-06-12 13:20:02,113.113 INFO    ] 2026-06-12 13:20:02
[2026-06-12 13:20:02,380.380 INFO    ] 2026-06-12 13:20:02
[2026-06-12 13:20:02,401.401 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 13:20:02,542.542 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 13:20:02,545.545 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 13:20:02,732.732 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 13:20:02,777.777 INFO    ] time= 12/06/2026 13:20:02
[2026-06-12 13:20:02,828.828 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 13:20:02,865.865 INFO    ] Checking for existing commands in stream...
[2026-06-12 13:20:02,930.930 INFO    ] No existing commands found in stream
[2026-06-12 13:20:07,941.941 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 13:20:07,943.943 INFO    ] Waiting 0.28 seconds before fallback handling...
[2026-06-12 13:20:10,323.323 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 13:20:10,325.325 INFO    ] Checking for system updates...
[2026-06-12 13:20:10,353.353 INFO    ] 200
[2026-06-12 13:20:10,355.355 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:20:10,395.395 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 13:20:10,396.396 INFO    ] No update needed
[2026-06-12 13:20:10,397.397 INFO    ] Checking for camera pi updates...
[2026-06-12 13:20:10,416.416 INFO    ] 200
[2026-06-12 13:20:10,418.418 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:20:10,441.441 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 13:20:10,491.491 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 13:20:10,492.492 INFO    ] No camera update needed
[2026-06-12 13:20:10,494.494 INFO    ] Script finished. Safe exiting...
[2026-06-12 13:20:10,495.495 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 13:20:10,498.498 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 13:20:10,501.501 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 13:20:12,541.541 INFO    ] ================================================
[2026-06-12 13:20:12,556.556 INFO    ] Launching Daemon at Fri Jun 12 13:20:12 IST 2026
[2026-06-12 13:20:12,567.567 INFO    ] ================================================
[2026-06-12 13:20:12,938.938 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 13:20:12
[2026-06-12 13:20:13,253.253 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 13:20:13,383.383 INFO    ] Initializing speech engine...
[2026-06-12 13:20:13,387.387 INFO    ] 2026-06-12 13:20:13
[2026-06-12 13:20:13,607.607 INFO    ] 2026-06-12 13:20:13
[2026-06-12 13:20:13,638.638 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 13:20:13,753.753 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 13:20:13,754.754 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 13:20:13,858.858 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 13:20:13,859.859 INFO    ] time= 12/06/2026 13:20:13
[2026-06-12 13:20:13,864.864 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 13:20:13,912.912 INFO    ] Checking for existing commands in stream...
[2026-06-12 13:20:14,019.019 INFO    ] No existing commands found in stream
[2026-06-12 13:20:19,048.048 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 13:20:19,051.051 INFO    ] Waiting 3.79 seconds before fallback handling...
[2026-06-12 13:20:23,204.204 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 13:20:23,205.205 INFO    ] Checking for system updates...
[2026-06-12 13:20:23,226.226 INFO    ] 200
[2026-06-12 13:20:23,228.228 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:20:23,258.258 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 13:20:23,259.259 INFO    ] No update needed
[2026-06-12 13:20:23,261.261 INFO    ] Checking for camera pi updates...
[2026-06-12 13:20:23,298.298 INFO    ] 200
[2026-06-12 13:20:23,299.299 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:20:23,323.323 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 13:20:23,348.348 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 13:20:23,350.350 INFO    ] No camera update needed
[2026-06-12 13:20:23,352.352 INFO    ] Script finished. Safe exiting...
[2026-06-12 13:20:23,353.353 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 13:20:23,357.357 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 13:20:23,359.359 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 13:20:25,401.401 INFO    ] ================================================
[2026-06-12 13:20:25,416.416 INFO    ] Launching Daemon at Fri Jun 12 13:20:25 IST 2026
[2026-06-12 13:20:25,427.427 INFO    ] ================================================
[2026-06-12 13:20:25,795.795 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 13:20:25
[2026-06-12 13:20:26,131.131 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 13:20:26,272.272 INFO    ] Initializing speech engine...
[2026-06-12 13:20:26,285.285 INFO    ] 2026-06-12 13:20:26
[2026-06-12 13:20:26,499.499 INFO    ] 2026-06-12 13:20:26
[2026-06-12 13:20:26,529.529 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 13:20:26,719.719 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 13:20:26,728.728 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 13:20:26,858.858 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 13:20:26,922.922 INFO    ] time= 12/06/2026 13:20:26
[2026-06-12 13:20:26,951.951 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 13:20:26,957.957 INFO    ] Checking for existing commands in stream...
[2026-06-12 13:20:27,024.024 INFO    ] No existing commands found in stream
[2026-06-12 13:20:32,038.038 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 13:20:32,040.040 INFO    ] Waiting 2.05 seconds before fallback handling...
[2026-06-12 13:20:34,460.460 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 13:20:34,461.461 INFO    ] Checking for system updates...
[2026-06-12 13:20:34,483.483 INFO    ] 200
[2026-06-12 13:20:34,485.485 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:20:34,514.514 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 13:20:34,516.516 INFO    ] No update needed
[2026-06-12 13:20:34,517.517 INFO    ] Checking for camera pi updates...
[2026-06-12 13:20:34,536.536 INFO    ] 200
[2026-06-12 13:20:34,538.538 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:20:34,561.561 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 13:20:34,583.583 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 13:20:34,584.584 INFO    ] No camera update needed
[2026-06-12 13:20:34,586.586 INFO    ] Script finished. Safe exiting...
[2026-06-12 13:20:34,587.587 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 13:20:34,590.590 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 13:20:34,593.593 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 13:20:36,631.631 INFO    ] ================================================
[2026-06-12 13:20:36,646.646 INFO    ] Launching Daemon at Fri Jun 12 13:20:36 IST 2026
[2026-06-12 13:20:36,657.657 INFO    ] ================================================
[2026-06-12 13:20:37,006.006 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 13:20:37
[2026-06-12 13:20:37,346.346 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 13:20:37,505.505 INFO    ] Initializing speech engine...
[2026-06-12 13:20:37,518.518 INFO    ] 2026-06-12 13:20:37
[2026-06-12 13:20:37,748.748 INFO    ] 2026-06-12 13:20:37
[2026-06-12 13:20:37,781.781 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 13:20:37,920.920 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 13:20:37,923.923 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 13:20:38,075.075 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 13:20:38,111.111 INFO    ] time= 12/06/2026 13:20:38
[2026-06-12 13:20:38,133.133 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 13:20:38,190.190 INFO    ] Checking for existing commands in stream...
[2026-06-12 13:20:38,309.309 INFO    ] No existing commands found in stream
[2026-06-12 13:20:43,324.324 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 13:20:43,326.326 INFO    ] Waiting 1.79 seconds before fallback handling...
[2026-06-12 13:20:45,464.464 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 13:20:45,466.466 INFO    ] Checking for system updates...
[2026-06-12 13:20:45,486.486 INFO    ] 200
[2026-06-12 13:20:45,488.488 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:20:45,519.519 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 13:20:45,521.521 INFO    ] No update needed
[2026-06-12 13:20:45,522.522 INFO    ] Checking for camera pi updates...
[2026-06-12 13:20:45,542.542 INFO    ] 200
[2026-06-12 13:20:45,543.543 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:20:45,566.566 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 13:20:45,590.590 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 13:20:45,592.592 INFO    ] No camera update needed
[2026-06-12 13:20:45,593.593 INFO    ] Script finished. Safe exiting...
[2026-06-12 13:20:45,594.594 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 13:20:45,597.597 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 13:20:45,600.600 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 13:20:47,639.639 INFO    ] ================================================
[2026-06-12 13:20:47,654.654 INFO    ] Launching Daemon at Fri Jun 12 13:20:47 IST 2026
[2026-06-12 13:20:47,665.665 INFO    ] ================================================
[2026-06-12 13:20:48,047.047 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 13:20:48
[2026-06-12 13:20:48,420.420 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 13:20:48,597.597 INFO    ] Initializing speech engine...
[2026-06-12 13:20:48,601.601 INFO    ] 2026-06-12 13:20:48
[2026-06-12 13:20:48,834.834 INFO    ] 2026-06-12 13:20:48
[2026-06-12 13:20:48,865.865 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 13:20:48,994.994 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 13:20:49,052.052 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 13:20:49,191.191 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 13:20:49,254.254 INFO    ] time= 12/06/2026 13:20:49
[2026-06-12 13:20:49,288.288 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 13:20:49,299.299 INFO    ] Checking for existing commands in stream...
[2026-06-12 13:20:49,368.368 INFO    ] No existing commands found in stream
[2026-06-12 13:20:54,379.379 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 13:20:54,382.382 INFO    ] Waiting 1.68 seconds before fallback handling...
[2026-06-12 13:20:56,437.437 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 13:20:56,439.439 INFO    ] Checking for system updates...
[2026-06-12 13:20:56,460.460 INFO    ] 200
[2026-06-12 13:20:56,461.461 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:20:56,493.493 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 13:20:56,494.494 INFO    ] No update needed
[2026-06-12 13:20:56,496.496 INFO    ] Checking for camera pi updates...
[2026-06-12 13:20:56,519.519 INFO    ] 200
[2026-06-12 13:20:56,520.520 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:20:56,543.543 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 13:20:56,580.580 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 13:20:56,582.582 INFO    ] No camera update needed
[2026-06-12 13:20:56,583.583 INFO    ] Script finished. Safe exiting...
[2026-06-12 13:20:56,584.584 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 13:20:56,588.588 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 13:20:56,591.591 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 13:20:58,629.629 INFO    ] ================================================
[2026-06-12 13:20:58,644.644 INFO    ] Launching Daemon at Fri Jun 12 13:20:58 IST 2026
[2026-06-12 13:20:58,655.655 INFO    ] ================================================
[2026-06-12 13:20:59,019.019 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 13:20:59
[2026-06-12 13:20:59,356.356 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 13:20:59,507.507 INFO    ] Initializing speech engine...
[2026-06-12 13:20:59,520.520 INFO    ] 2026-06-12 13:20:59
[2026-06-12 13:20:59,721.721 INFO    ] 2026-06-12 13:20:59
[2026-06-12 13:20:59,752.752 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 13:20:59,937.937 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 13:20:59,947.947 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 13:21:00,080.080 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 13:21:00,147.147 INFO    ] time= 12/06/2026 13:21:00
[2026-06-12 13:21:00,172.172 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 13:21:00,174.174 INFO    ] Checking for existing commands in stream...
[2026-06-12 13:21:00,246.246 INFO    ] No existing commands found in stream
[2026-06-12 13:21:05,261.261 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 13:21:05,264.264 INFO    ] Waiting 2.09 seconds before fallback handling...
[2026-06-12 13:21:07,728.728 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 13:21:07,730.730 INFO    ] Checking for system updates...
[2026-06-12 13:21:07,751.751 INFO    ] 200
[2026-06-12 13:21:07,753.753 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:21:07,783.783 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 13:21:07,784.784 INFO    ] No update needed
[2026-06-12 13:21:07,785.785 INFO    ] Checking for camera pi updates...
[2026-06-12 13:21:07,804.804 INFO    ] 200
[2026-06-12 13:21:07,805.805 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:21:07,828.828 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 13:21:07,860.860 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 13:21:07,862.862 INFO    ] No camera update needed
[2026-06-12 13:21:07,863.863 INFO    ] Script finished. Safe exiting...
[2026-06-12 13:21:07,864.864 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 13:21:07,867.867 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 13:21:07,870.870 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 13:21:09,907.907 INFO    ] ================================================
[2026-06-12 13:21:09,923.923 INFO    ] Launching Daemon at Fri Jun 12 13:21:09 IST 2026
[2026-06-12 13:21:09,933.933 INFO    ] ================================================
[2026-06-12 13:21:10,270.270 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 13:21:10
[2026-06-12 13:21:10,590.590 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 13:21:10,730.730 INFO    ] Initializing speech engine...
[2026-06-12 13:21:10,739.739 INFO    ] 2026-06-12 13:21:10
[2026-06-12 13:21:10,946.946 INFO    ] 2026-06-12 13:21:10
[2026-06-12 13:21:10,976.976 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 13:21:11,162.162 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 13:21:11,171.171 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 13:21:11,295.295 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 13:21:11,351.351 INFO    ] time= 12/06/2026 13:21:11
[2026-06-12 13:21:11,391.391 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 13:21:11,397.397 INFO    ] Checking for existing commands in stream...
[2026-06-12 13:21:11,518.518 INFO    ] No existing commands found in stream
[2026-06-12 13:21:16,528.528 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 13:21:16,531.531 INFO    ] Waiting 3.65 seconds before fallback handling...
[2026-06-12 13:21:20,537.537 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 13:21:20,538.538 INFO    ] Checking for system updates...
[2026-06-12 13:21:20,559.559 INFO    ] 200
[2026-06-12 13:21:20,561.561 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:21:20,590.590 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 13:21:20,592.592 INFO    ] No update needed
[2026-06-12 13:21:20,593.593 INFO    ] Checking for camera pi updates...
[2026-06-12 13:21:20,613.613 INFO    ] 200
[2026-06-12 13:21:20,615.615 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:21:20,638.638 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 13:21:20,665.665 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 13:21:20,667.667 INFO    ] No camera update needed
[2026-06-12 13:21:20,668.668 INFO    ] Script finished. Safe exiting...
[2026-06-12 13:21:20,669.669 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 13:21:20,673.673 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 13:21:20,675.675 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 13:21:22,714.714 INFO    ] ================================================
[2026-06-12 13:21:22,729.729 INFO    ] Launching Daemon at Fri Jun 12 13:21:22 IST 2026
[2026-06-12 13:21:22,741.741 INFO    ] ================================================
[2026-06-12 13:21:23,066.066 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 13:21:23
[2026-06-12 13:21:23,381.381 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 13:21:23,515.515 INFO    ] Initializing speech engine...
[2026-06-12 13:21:23,520.520 INFO    ] 2026-06-12 13:21:23
[2026-06-12 13:21:23,749.749 INFO    ] 2026-06-12 13:21:23
[2026-06-12 13:21:23,779.779 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 13:21:23,912.912 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 13:21:23,979.979 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 13:21:24,121.121 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 13:21:24,147.147 INFO    ] time= 12/06/2026 13:21:24
[2026-06-12 13:21:24,203.203 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 13:21:24,228.228 INFO    ] Checking for existing commands in stream...
[2026-06-12 13:21:24,303.303 INFO    ] No existing commands found in stream
[2026-06-12 13:21:29,314.314 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 13:21:29,317.317 INFO    ] Waiting 3.50 seconds before fallback handling...
[2026-06-12 13:21:33,106.106 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 13:21:33,108.108 INFO    ] Checking for system updates...
[2026-06-12 13:21:33,130.130 INFO    ] 200
[2026-06-12 13:21:33,132.132 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:21:33,162.162 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 13:21:33,163.163 INFO    ] No update needed
[2026-06-12 13:21:33,164.164 INFO    ] Checking for camera pi updates...
[2026-06-12 13:21:33,183.183 INFO    ] 200
[2026-06-12 13:21:33,185.185 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:21:33,211.211 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 13:21:33,246.246 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 13:21:33,247.247 INFO    ] No camera update needed
[2026-06-12 13:21:33,249.249 INFO    ] Script finished. Safe exiting...
[2026-06-12 13:21:33,250.250 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 13:21:33,253.253 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 13:21:33,256.256 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 13:21:35,293.293 INFO    ] ================================================
[2026-06-12 13:21:35,309.309 INFO    ] Launching Daemon at Fri Jun 12 13:21:35 IST 2026
[2026-06-12 13:21:35,320.320 INFO    ] ================================================
[2026-06-12 13:21:35,689.689 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 13:21:35
[2026-06-12 13:21:36,002.002 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 13:21:36,145.145 INFO    ] Initializing speech engine...
[2026-06-12 13:21:36,150.150 INFO    ] 2026-06-12 13:21:36
[2026-06-12 13:21:36,361.361 INFO    ] 2026-06-12 13:21:36
[2026-06-12 13:21:36,392.392 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 13:21:36,529.529 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 13:21:36,591.591 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 13:21:36,738.738 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 13:21:36,806.806 INFO    ] time= 12/06/2026 13:21:36
[2026-06-12 13:21:36,839.839 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 13:21:36,842.842 INFO    ] Checking for existing commands in stream...
[2026-06-12 13:21:36,918.918 INFO    ] No existing commands found in stream
[2026-06-12 13:21:41,927.927 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 13:21:41,930.930 INFO    ] Waiting 3.06 seconds before fallback handling...
[2026-06-12 13:21:45,378.378 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 13:21:45,379.379 INFO    ] Checking for system updates...
[2026-06-12 13:21:45,401.401 INFO    ] 200
[2026-06-12 13:21:45,402.402 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:21:45,434.434 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 13:21:45,435.435 INFO    ] No update needed
[2026-06-12 13:21:45,436.436 INFO    ] Checking for camera pi updates...
[2026-06-12 13:21:45,456.456 INFO    ] 200
[2026-06-12 13:21:45,457.457 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:21:45,480.480 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 13:21:45,634.634 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 13:21:45,635.635 INFO    ] No camera update needed
[2026-06-12 13:21:45,637.637 INFO    ] Script finished. Safe exiting...
[2026-06-12 13:21:45,638.638 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 13:21:45,641.641 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 13:21:45,644.644 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 13:21:47,682.682 INFO    ] ================================================
[2026-06-12 13:21:47,697.697 INFO    ] Launching Daemon at Fri Jun 12 13:21:47 IST 2026
[2026-06-12 13:21:47,707.707 INFO    ] ================================================
[2026-06-12 13:21:48,076.076 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 13:21:48
[2026-06-12 13:21:48,393.393 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 13:21:48,527.527 INFO    ] Initializing speech engine...
[2026-06-12 13:21:48,540.540 INFO    ] 2026-06-12 13:21:48
[2026-06-12 13:21:48,750.750 INFO    ] 2026-06-12 13:21:48
[2026-06-12 13:21:48,779.779 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 13:21:48,967.967 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 13:21:48,976.976 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 13:21:49,107.107 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 13:21:49,171.171 INFO    ] time= 12/06/2026 13:21:49
[2026-06-12 13:21:49,200.200 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 13:21:49,206.206 INFO    ] Checking for existing commands in stream...
[2026-06-12 13:21:49,272.272 INFO    ] No existing commands found in stream
[2026-06-12 13:21:54,283.283 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 13:21:54,286.286 INFO    ] Waiting 0.65 seconds before fallback handling...
[2026-06-12 13:21:55,267.267 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 13:21:55,269.269 INFO    ] Checking for system updates...
[2026-06-12 13:21:55,290.290 INFO    ] 200
[2026-06-12 13:21:55,291.291 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:21:55,321.321 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 13:21:55,323.323 INFO    ] No update needed
[2026-06-12 13:21:55,324.324 INFO    ] Checking for camera pi updates...
[2026-06-12 13:21:55,344.344 INFO    ] 200
[2026-06-12 13:21:55,345.345 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:21:55,370.370 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 13:21:55,396.396 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 13:21:55,397.397 INFO    ] No camera update needed
[2026-06-12 13:21:55,398.398 INFO    ] Script finished. Safe exiting...
[2026-06-12 13:21:55,400.400 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 13:21:55,403.403 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 13:21:55,406.406 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 13:21:57,445.445 INFO    ] ================================================
[2026-06-12 13:21:57,460.460 INFO    ] Launching Daemon at Fri Jun 12 13:21:57 IST 2026
[2026-06-12 13:21:57,471.471 INFO    ] ================================================
[2026-06-12 13:21:57,813.813 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 13:21:57
[2026-06-12 13:21:58,128.128 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 13:21:58,267.267 INFO    ] Initializing speech engine...
[2026-06-12 13:21:58,278.278 INFO    ] 2026-06-12 13:21:58
[2026-06-12 13:21:58,483.483 INFO    ] 2026-06-12 13:21:58
[2026-06-12 13:21:58,512.512 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 13:21:58,698.698 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 13:21:58,707.707 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 13:21:58,838.838 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 13:21:58,905.905 INFO    ] time= 12/06/2026 13:21:58
[2026-06-12 13:21:58,930.930 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 13:21:58,936.936 INFO    ] Checking for existing commands in stream...
[2026-06-12 13:21:59,004.004 INFO    ] No existing commands found in stream
[2026-06-12 13:22:04,036.036 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 13:22:04,039.039 INFO    ] Waiting 3.56 seconds before fallback handling...
[2026-06-12 13:22:07,990.990 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 13:22:07,993.993 INFO    ] Checking for system updates...
[2026-06-12 13:22:08,028.028 INFO    ] 200
[2026-06-12 13:22:08,031.031 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:22:08,082.082 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 13:22:08,085.085 INFO    ] No update needed
[2026-06-12 13:22:08,087.087 INFO    ] Checking for camera pi updates...
[2026-06-12 13:22:08,121.121 INFO    ] 200
[2026-06-12 13:22:08,124.124 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:22:08,164.164 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 13:22:08,229.229 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 13:22:08,231.231 INFO    ] No camera update needed
[2026-06-12 13:22:08,234.234 INFO    ] Script finished. Safe exiting...
[2026-06-12 13:22:08,236.236 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 13:22:08,242.242 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 13:22:08,247.247 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 13:22:10,287.287 INFO    ] ================================================
[2026-06-12 13:22:10,302.302 INFO    ] Launching Daemon at Fri Jun 12 13:22:10 IST 2026
[2026-06-12 13:22:10,313.313 INFO    ] ================================================
[2026-06-12 13:22:10,643.643 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 13:22:10
[2026-06-12 13:22:10,955.955 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 13:22:11,088.088 INFO    ] Initializing speech engine...
[2026-06-12 13:22:11,100.100 INFO    ] 2026-06-12 13:22:11
[2026-06-12 13:22:11,309.309 INFO    ] 2026-06-12 13:22:11
[2026-06-12 13:22:11,337.337 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 13:22:11,523.523 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 13:22:11,533.533 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 13:22:11,666.666 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 13:22:11,735.735 INFO    ] time= 12/06/2026 13:22:11
[2026-06-12 13:22:11,758.758 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 13:22:11,765.765 INFO    ] Checking for existing commands in stream...
[2026-06-12 13:22:11,832.832 INFO    ] No existing commands found in stream
[2026-06-12 13:22:16,841.841 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 13:22:16,844.844 INFO    ] Waiting 2.91 seconds before fallback handling...
[2026-06-12 13:22:20,145.145 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 13:22:20,146.146 INFO    ] Checking for system updates...
[2026-06-12 13:22:20,167.167 INFO    ] 200
[2026-06-12 13:22:20,168.168 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:22:20,198.198 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 13:22:20,199.199 INFO    ] No update needed
[2026-06-12 13:22:20,201.201 INFO    ] Checking for camera pi updates...
[2026-06-12 13:22:20,220.220 INFO    ] 200
[2026-06-12 13:22:20,221.221 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:22:20,244.244 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 13:22:20,293.293 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 13:22:20,294.294 INFO    ] No camera update needed
[2026-06-12 13:22:20,296.296 INFO    ] Script finished. Safe exiting...
[2026-06-12 13:22:20,297.297 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 13:22:20,300.300 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 13:22:20,303.303 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 13:22:22,346.346 INFO    ] ================================================
[2026-06-12 13:22:22,362.362 INFO    ] Launching Daemon at Fri Jun 12 13:22:22 IST 2026
[2026-06-12 13:22:22,373.373 INFO    ] ================================================
[2026-06-12 13:22:22,731.731 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 13:22:22
[2026-06-12 13:22:23,045.045 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 13:22:23,174.174 INFO    ] Initializing speech engine...
[2026-06-12 13:22:23,179.179 INFO    ] 2026-06-12 13:22:23
[2026-06-12 13:22:23,401.401 INFO    ] 2026-06-12 13:22:23
[2026-06-12 13:22:23,433.433 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 13:22:23,619.619 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 13:22:23,622.622 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 13:22:23,753.753 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 13:22:23,814.814 INFO    ] time= 12/06/2026 13:22:23
[2026-06-12 13:22:23,850.850 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 13:22:23,855.855 INFO    ] Checking for existing commands in stream...
[2026-06-12 13:22:23,927.927 INFO    ] No existing commands found in stream
[2026-06-12 13:22:28,937.937 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 13:22:28,940.940 INFO    ] Waiting 0.21 seconds before fallback handling...
[2026-06-12 13:22:29,502.502 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 13:22:29,503.503 INFO    ] Checking for system updates...
[2026-06-12 13:22:29,524.524 INFO    ] 200
[2026-06-12 13:22:29,525.525 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:22:29,555.555 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 13:22:29,557.557 INFO    ] No update needed
[2026-06-12 13:22:29,558.558 INFO    ] Checking for camera pi updates...
[2026-06-12 13:22:29,578.578 INFO    ] 200
[2026-06-12 13:22:29,580.580 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:22:29,603.603 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 13:22:29,671.671 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 13:22:29,673.673 INFO    ] No camera update needed
[2026-06-12 13:22:29,674.674 INFO    ] Script finished. Safe exiting...
[2026-06-12 13:22:29,675.675 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 13:22:29,678.678 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 13:22:29,682.682 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 13:22:31,713.713 INFO    ] ================================================
[2026-06-12 13:22:31,722.722 INFO    ] Launching Daemon at Fri Jun 12 13:22:31 IST 2026
[2026-06-12 13:22:31,729.729 INFO    ] ================================================
[2026-06-12 13:22:32,052.052 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 13:22:32
[2026-06-12 13:22:32,415.415 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 13:22:32,557.557 INFO    ] Initializing speech engine...
[2026-06-12 13:22:32,563.563 INFO    ] 2026-06-12 13:22:32
[2026-06-12 13:22:32,766.766 INFO    ] 2026-06-12 13:22:32
[2026-06-12 13:22:32,794.794 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 13:22:32,980.980 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 13:22:32,989.989 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 13:22:33,133.133 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 13:22:33,186.186 INFO    ] time= 12/06/2026 13:22:33
[2026-06-12 13:22:33,208.208 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 13:22:33,215.215 INFO    ] Checking for existing commands in stream...
[2026-06-12 13:22:33,280.280 INFO    ] No existing commands found in stream
[2026-06-12 13:22:38,290.290 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 13:22:38,293.293 INFO    ] Waiting 2.02 seconds before fallback handling...
[2026-06-12 13:22:40,688.688 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 13:22:40,689.689 INFO    ] Checking for system updates...
[2026-06-12 13:22:40,711.711 INFO    ] 200
[2026-06-12 13:22:40,712.712 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:22:40,741.741 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 13:22:40,743.743 INFO    ] No update needed
[2026-06-12 13:22:40,744.744 INFO    ] Checking for camera pi updates...
[2026-06-12 13:22:40,763.763 INFO    ] 200
[2026-06-12 13:22:40,764.764 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:22:40,786.786 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 13:22:40,830.830 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 13:22:40,832.832 INFO    ] No camera update needed
[2026-06-12 13:22:40,833.833 INFO    ] Script finished. Safe exiting...
[2026-06-12 13:22:40,834.834 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 13:22:40,837.837 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 13:22:40,840.840 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 13:22:42,877.877 INFO    ] ================================================
[2026-06-12 13:22:42,897.897 INFO    ] Launching Daemon at Fri Jun 12 13:22:42 IST 2026
[2026-06-12 13:22:42,908.908 INFO    ] ================================================
[2026-06-12 13:22:43,268.268 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 13:22:43
[2026-06-12 13:22:43,587.587 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 13:22:43,729.729 INFO    ] Initializing speech engine...
[2026-06-12 13:22:43,738.738 INFO    ] 2026-06-12 13:22:43
[2026-06-12 13:22:43,942.942 INFO    ] 2026-06-12 13:22:43
[2026-06-12 13:22:43,972.972 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 13:22:44,154.154 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 13:22:44,158.158 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 13:22:44,315.315 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 13:22:44,369.369 INFO    ] time= 12/06/2026 13:22:44
[2026-06-12 13:22:44,385.385 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 13:22:44,391.391 INFO    ] Checking for existing commands in stream...
[2026-06-12 13:22:44,458.458 INFO    ] No existing commands found in stream
[2026-06-12 13:22:49,472.472 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 13:22:49,475.475 INFO    ] Waiting 0.24 seconds before fallback handling...
[2026-06-12 13:22:50,079.079 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 13:22:50,081.081 INFO    ] Checking for system updates...
[2026-06-12 13:22:50,103.103 INFO    ] 200
[2026-06-12 13:22:50,104.104 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:22:50,133.133 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 13:22:50,135.135 INFO    ] No update needed
[2026-06-12 13:22:50,136.136 INFO    ] Checking for camera pi updates...
[2026-06-12 13:22:50,155.155 INFO    ] 200
[2026-06-12 13:22:50,156.156 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:22:50,179.179 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 13:22:50,319.319 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 13:22:50,320.320 INFO    ] No camera update needed
[2026-06-12 13:22:50,322.322 INFO    ] Script finished. Safe exiting...
[2026-06-12 13:22:50,323.323 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 13:22:50,326.326 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 13:22:50,328.328 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 13:22:52,366.366 INFO    ] ================================================
[2026-06-12 13:22:52,381.381 INFO    ] Launching Daemon at Fri Jun 12 13:22:52 IST 2026
[2026-06-12 13:22:52,392.392 INFO    ] ================================================
[2026-06-12 13:22:52,760.760 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 13:22:52
[2026-06-12 13:22:53,077.077 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 13:22:53,212.212 INFO    ] Initializing speech engine...
[2026-06-12 13:22:53,221.221 INFO    ] 2026-06-12 13:22:53
[2026-06-12 13:22:53,436.436 INFO    ] 2026-06-12 13:22:53
[2026-06-12 13:22:53,464.464 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 13:22:53,585.585 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 13:22:53,647.647 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 13:22:53,784.784 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 13:22:53,850.850 INFO    ] time= 12/06/2026 13:22:53
[2026-06-12 13:22:53,874.874 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 13:22:53,876.876 INFO    ] Checking for existing commands in stream...
[2026-06-12 13:22:53,947.947 INFO    ] No existing commands found in stream
[2026-06-12 13:22:58,956.956 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 13:22:58,963.963 INFO    ] Waiting 2.30 seconds before fallback handling...
[2026-06-12 13:23:01,654.654 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 13:23:01,656.656 INFO    ] Checking for system updates...
[2026-06-12 13:23:01,683.683 INFO    ] 200
[2026-06-12 13:23:01,685.685 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:23:01,720.720 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 13:23:01,722.722 INFO    ] No update needed
[2026-06-12 13:23:01,724.724 INFO    ] Checking for camera pi updates...
[2026-06-12 13:23:01,747.747 INFO    ] 200
[2026-06-12 13:23:01,749.749 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:23:01,778.778 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 13:23:01,852.852 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 13:23:01,854.854 INFO    ] No camera update needed
[2026-06-12 13:23:01,856.856 INFO    ] Script finished. Safe exiting...
[2026-06-12 13:23:01,858.858 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 13:23:01,862.862 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 13:23:01,866.866 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 13:23:03,905.905 INFO    ] ================================================
[2026-06-12 13:23:03,920.920 INFO    ] Launching Daemon at Fri Jun 12 13:23:03 IST 2026
[2026-06-12 13:23:03,931.931 INFO    ] ================================================
[2026-06-12 13:23:04,279.279 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 13:23:04
[2026-06-12 13:23:04,592.592 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 13:23:04,725.725 INFO    ] Initializing speech engine...
[2026-06-12 13:23:04,729.729 INFO    ] 2026-06-12 13:23:04
[2026-06-12 13:23:04,956.956 INFO    ] 2026-06-12 13:23:04
[2026-06-12 13:23:04,986.986 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 13:23:05,117.117 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 13:23:05,165.165 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 13:23:05,324.324 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 13:23:05,387.387 INFO    ] time= 12/06/2026 13:23:05
[2026-06-12 13:23:05,425.425 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 13:23:05,431.431 INFO    ] Checking for existing commands in stream...
[2026-06-12 13:23:05,514.514 INFO    ] No existing commands found in stream
[2026-06-12 13:23:10,523.523 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 13:23:10,526.526 INFO    ] Waiting 3.33 seconds before fallback handling...
[2026-06-12 13:23:14,242.242 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 13:23:14,244.244 INFO    ] Checking for system updates...
[2026-06-12 13:23:14,264.264 INFO    ] 200
[2026-06-12 13:23:14,265.265 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:23:14,294.294 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 13:23:14,296.296 INFO    ] No update needed
[2026-06-12 13:23:14,297.297 INFO    ] Checking for camera pi updates...
[2026-06-12 13:23:14,318.318 INFO    ] 200
[2026-06-12 13:23:14,319.319 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:23:14,343.343 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 13:23:14,398.398 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 13:23:14,399.399 INFO    ] No camera update needed
[2026-06-12 13:23:14,401.401 INFO    ] Script finished. Safe exiting...
[2026-06-12 13:23:14,402.402 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 13:23:14,405.405 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 13:23:14,408.408 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 13:23:16,445.445 INFO    ] ================================================
[2026-06-12 13:23:16,460.460 INFO    ] Launching Daemon at Fri Jun 12 13:23:16 IST 2026
[2026-06-12 13:23:16,471.471 INFO    ] ================================================
[2026-06-12 13:23:16,806.806 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 13:23:16
[2026-06-12 13:23:17,121.121 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 13:23:17,250.250 INFO    ] Initializing speech engine...
[2026-06-12 13:23:17,255.255 INFO    ] 2026-06-12 13:23:17
[2026-06-12 13:23:17,471.471 INFO    ] 2026-06-12 13:23:17
[2026-06-12 13:23:17,501.501 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 13:23:17,683.683 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 13:23:17,686.686 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 13:23:17,822.822 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 13:23:17,876.876 INFO    ] time= 12/06/2026 13:23:17
[2026-06-12 13:23:17,912.912 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 13:23:17,919.919 INFO    ] Checking for existing commands in stream...
[2026-06-12 13:23:17,986.986 INFO    ] No existing commands found in stream
[2026-06-12 13:23:22,992.992 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 13:23:22,995.995 INFO    ] Waiting 3.09 seconds before fallback handling...
[2026-06-12 13:23:27,396.396 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 13:23:27,398.398 INFO    ] Checking for system updates...
[2026-06-12 13:23:27,434.434 INFO    ] 200
[2026-06-12 13:23:27,436.436 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:23:27,487.487 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 13:23:27,490.490 INFO    ] No update needed
[2026-06-12 13:23:27,492.492 INFO    ] Checking for camera pi updates...
[2026-06-12 13:23:27,519.519 INFO    ] 200
[2026-06-12 13:23:27,520.520 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:23:27,543.543 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 13:23:27,591.591 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 13:23:27,592.592 INFO    ] No camera update needed
[2026-06-12 13:23:27,593.593 INFO    ] Script finished. Safe exiting...
[2026-06-12 13:23:27,594.594 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 13:23:27,597.597 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 13:23:27,600.600 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 13:23:29,639.639 INFO    ] ================================================
[2026-06-12 13:23:29,654.654 INFO    ] Launching Daemon at Fri Jun 12 13:23:29 IST 2026
[2026-06-12 13:23:29,665.665 INFO    ] ================================================
[2026-06-12 13:23:30,058.058 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 13:23:30
[2026-06-12 13:23:30,394.394 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 13:23:30,532.532 INFO    ] Initializing speech engine...
[2026-06-12 13:23:30,544.544 INFO    ] 2026-06-12 13:23:30
[2026-06-12 13:23:30,754.754 INFO    ] 2026-06-12 13:23:30
[2026-06-12 13:23:30,783.783 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 13:23:30,966.966 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 13:23:30,976.976 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 13:23:31,106.106 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 13:23:31,173.173 INFO    ] time= 12/06/2026 13:23:31
[2026-06-12 13:23:31,198.198 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 13:23:31,206.206 INFO    ] Checking for existing commands in stream...
[2026-06-12 13:23:31,276.276 INFO    ] No existing commands found in stream
[2026-06-12 13:23:36,285.285 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 13:23:36,288.288 INFO    ] Waiting 2.65 seconds before fallback handling...
[2026-06-12 13:23:40,320.320 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 13:23:40,323.323 INFO    ] Checking for system updates...
[2026-06-12 13:23:40,359.359 INFO    ] 200
[2026-06-12 13:23:40,362.362 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:23:40,415.415 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 13:23:40,417.417 INFO    ] No update needed
[2026-06-12 13:23:40,420.420 INFO    ] Checking for camera pi updates...
[2026-06-12 13:23:40,454.454 INFO    ] 200
[2026-06-12 13:23:40,457.457 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:23:40,499.499 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 13:23:40,536.536 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 13:23:40,539.539 INFO    ] No camera update needed
[2026-06-12 13:23:40,542.542 INFO    ] Script finished. Safe exiting...
[2026-06-12 13:23:40,544.544 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 13:23:40,551.551 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 13:23:40,556.556 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 13:23:42,597.597 INFO    ] ================================================
[2026-06-12 13:23:42,613.613 INFO    ] Launching Daemon at Fri Jun 12 13:23:42 IST 2026
[2026-06-12 13:23:42,625.625 INFO    ] ================================================
[2026-06-12 13:23:42,950.950 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 13:23:42
[2026-06-12 13:23:43,262.262 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 13:23:43,393.393 INFO    ] Initializing speech engine...
[2026-06-12 13:23:43,396.396 INFO    ] 2026-06-12 13:23:43
[2026-06-12 13:23:43,614.614 INFO    ] 2026-06-12 13:23:43
[2026-06-12 13:23:43,643.643 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 13:23:43,832.832 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 13:23:43,835.835 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 13:23:43,967.967 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 13:23:44,022.022 INFO    ] time= 12/06/2026 13:23:43
[2026-06-12 13:23:44,052.052 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 13:23:44,068.068 INFO    ] Checking for existing commands in stream...
[2026-06-12 13:23:44,139.139 INFO    ] No existing commands found in stream
[2026-06-12 13:23:49,150.150 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 13:23:49,153.153 INFO    ] Waiting 0.57 seconds before fallback handling...
[2026-06-12 13:23:53,959.959 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 13:23:53,962.962 INFO    ] Checking for system updates...
[2026-06-12 13:23:54,000.000 INFO    ] 200
[2026-06-12 13:23:54,003.003 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:23:54,054.054 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 13:23:54,056.056 INFO    ] No update needed
[2026-06-12 13:23:54,058.058 INFO    ] Checking for camera pi updates...
[2026-06-12 13:23:54,091.091 INFO    ] 200
[2026-06-12 13:23:54,094.094 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:23:54,120.120 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 13:23:54,179.179 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 13:23:54,181.181 INFO    ] No camera update needed
[2026-06-12 13:23:54,182.182 INFO    ] Script finished. Safe exiting...
[2026-06-12 13:23:54,183.183 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 13:23:54,186.186 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 13:23:54,189.189 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 13:23:56,230.230 INFO    ] ================================================
[2026-06-12 13:23:56,247.247 INFO    ] Launching Daemon at Fri Jun 12 13:23:56 IST 2026
[2026-06-12 13:23:56,259.259 INFO    ] ================================================
[2026-06-12 13:23:56,599.599 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 13:23:56
[2026-06-12 13:23:56,932.932 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 13:23:57,083.083 INFO    ] Initializing speech engine...
[2026-06-12 13:23:57,088.088 INFO    ] 2026-06-12 13:23:57
[2026-06-12 13:23:57,297.297 INFO    ] 2026-06-12 13:23:57
[2026-06-12 13:23:57,325.325 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 13:23:57,455.455 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 13:23:57,514.514 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 13:23:57,654.654 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 13:23:57,718.718 INFO    ] time= 12/06/2026 13:23:57
[2026-06-12 13:23:57,745.745 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 13:23:57,751.751 INFO    ] Checking for existing commands in stream...
[2026-06-12 13:23:57,820.820 INFO    ] No existing commands found in stream
[2026-06-12 13:24:02,833.833 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 13:24:02,834.834 INFO    ] Waiting 3.65 seconds before fallback handling...
[2026-06-12 13:24:16,680.680 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 13:24:16,683.683 INFO    ] Checking for system updates...
[2026-06-12 13:24:16,731.731 INFO    ] 200
[2026-06-12 13:24:16,734.734 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:24:16,770.770 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 13:24:16,771.771 INFO    ] No update needed
[2026-06-12 13:24:16,773.773 INFO    ] Checking for camera pi updates...
[2026-06-12 13:24:16,792.792 INFO    ] 200
[2026-06-12 13:24:16,794.794 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:24:16,816.816 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 13:24:16,856.856 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 13:24:16,857.857 INFO    ] No camera update needed
[2026-06-12 13:24:16,859.859 INFO    ] Script finished. Safe exiting...
[2026-06-12 13:24:16,860.860 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 13:24:16,864.864 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 13:24:16,868.868 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 13:24:18,900.900 INFO    ] ================================================
[2026-06-12 13:24:18,915.915 INFO    ] Launching Daemon at Fri Jun 12 13:24:18 IST 2026
[2026-06-12 13:24:18,926.926 INFO    ] ================================================
[2026-06-12 13:24:19,265.265 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 13:24:19
[2026-06-12 13:24:19,584.584 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 13:24:19,728.728 INFO    ] Initializing speech engine...
[2026-06-12 13:24:19,733.733 INFO    ] 2026-06-12 13:24:19
[2026-06-12 13:24:19,943.943 INFO    ] 2026-06-12 13:24:19
[2026-06-12 13:24:19,973.973 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 13:24:20,155.155 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 13:24:20,165.165 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 13:24:20,293.293 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 13:24:20,352.352 INFO    ] time= 12/06/2026 13:24:20
[2026-06-12 13:24:20,385.385 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 13:24:20,391.391 INFO    ] Checking for existing commands in stream...
[2026-06-12 13:24:20,458.458 INFO    ] No existing commands found in stream
[2026-06-12 13:24:25,472.472 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 13:24:25,475.475 INFO    ] Waiting 2.13 seconds before fallback handling...
[2026-06-12 13:24:27,981.981 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 13:24:27,983.983 INFO    ] Checking for system updates...
[2026-06-12 13:24:28,004.004 INFO    ] 200
[2026-06-12 13:24:28,006.006 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:24:28,036.036 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 13:24:28,037.037 INFO    ] No update needed
[2026-06-12 13:24:28,038.038 INFO    ] Checking for camera pi updates...
[2026-06-12 13:24:28,072.072 INFO    ] 200
[2026-06-12 13:24:28,075.075 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:24:28,103.103 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 13:24:28,165.165 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 13:24:28,166.166 INFO    ] No camera update needed
[2026-06-12 13:24:28,168.168 INFO    ] Script finished. Safe exiting...
[2026-06-12 13:24:28,169.169 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 13:24:28,172.172 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 13:24:28,175.175 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 13:24:30,214.214 INFO    ] ================================================
[2026-06-12 13:24:30,230.230 INFO    ] Launching Daemon at Fri Jun 12 13:24:30 IST 2026
[2026-06-12 13:24:30,240.240 INFO    ] ================================================
[2026-06-12 13:24:30,573.573 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 13:24:30
[2026-06-12 13:24:30,887.887 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 13:24:31,019.019 INFO    ] Initializing speech engine...
[2026-06-12 13:24:31,032.032 INFO    ] 2026-06-12 13:24:31
[2026-06-12 13:24:31,240.240 INFO    ] 2026-06-12 13:24:31
[2026-06-12 13:24:31,270.270 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 13:24:31,455.455 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 13:24:31,458.458 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 13:24:31,590.590 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 13:24:31,640.640 INFO    ] time= 12/06/2026 13:24:31
[2026-06-12 13:24:31,692.692 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 13:24:31,708.708 INFO    ] Checking for existing commands in stream...
[2026-06-12 13:24:31,804.804 INFO    ] No existing commands found in stream
[2026-06-12 13:24:36,813.813 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 13:24:36,816.816 INFO    ] Waiting 2.85 seconds before fallback handling...
[2026-06-12 13:24:40,006.006 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 13:24:40,009.009 INFO    ] Checking for system updates...
[2026-06-12 13:24:40,046.046 INFO    ] 200
[2026-06-12 13:24:40,049.049 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:24:40,106.106 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 13:24:40,107.107 INFO    ] No update needed
[2026-06-12 13:24:40,108.108 INFO    ] Checking for camera pi updates...
[2026-06-12 13:24:40,127.127 INFO    ] 200
[2026-06-12 13:24:40,129.129 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:24:40,153.153 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 13:24:40,243.243 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 13:24:40,244.244 INFO    ] No camera update needed
[2026-06-12 13:24:40,246.246 INFO    ] Script finished. Safe exiting...
[2026-06-12 13:24:40,247.247 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 13:24:40,250.250 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 13:24:40,253.253 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 13:24:42,291.291 INFO    ] ================================================
[2026-06-12 13:24:42,306.306 INFO    ] Launching Daemon at Fri Jun 12 13:24:42 IST 2026
[2026-06-12 13:24:42,317.317 INFO    ] ================================================
[2026-06-12 13:24:42,690.690 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 13:24:42
[2026-06-12 13:24:43,029.029 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 13:24:43,183.183 INFO    ] Initializing speech engine...
[2026-06-12 13:24:43,186.186 INFO    ] 2026-06-12 13:24:43
[2026-06-12 13:24:43,389.389 INFO    ] 2026-06-12 13:24:43
[2026-06-12 13:24:43,417.417 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 13:24:43,599.599 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 13:24:43,608.608 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 13:24:43,757.757 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 13:24:43,805.805 INFO    ] time= 12/06/2026 13:24:43
[2026-06-12 13:24:43,827.827 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 13:24:43,833.833 INFO    ] Checking for existing commands in stream...
[2026-06-12 13:24:43,899.899 INFO    ] No existing commands found in stream
[2026-06-12 13:24:48,908.908 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 13:24:48,911.911 INFO    ] Waiting 3.63 seconds before fallback handling...
[2026-06-12 13:24:53,804.804 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 13:24:53,807.807 INFO    ] Checking for system updates...
[2026-06-12 13:24:53,842.842 INFO    ] 200
[2026-06-12 13:24:53,845.845 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:24:53,889.889 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 13:24:53,890.890 INFO    ] No update needed
[2026-06-12 13:24:53,891.891 INFO    ] Checking for camera pi updates...
[2026-06-12 13:24:53,914.914 INFO    ] 200
[2026-06-12 13:24:53,915.915 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:24:53,937.937 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 13:24:53,991.991 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 13:24:53,992.992 INFO    ] No camera update needed
[2026-06-12 13:24:53,994.994 INFO    ] Script finished. Safe exiting...
[2026-06-12 13:24:53,995.995 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 13:24:53,998.998 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 13:24:54,001.001 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 13:24:56,038.038 INFO    ] ================================================
[2026-06-12 13:24:56,053.053 INFO    ] Launching Daemon at Fri Jun 12 13:24:56 IST 2026
[2026-06-12 13:24:56,063.063 INFO    ] ================================================
[2026-06-12 13:24:56,414.414 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 13:24:56
[2026-06-12 13:24:56,725.725 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 13:24:56,867.867 INFO    ] Initializing speech engine...
[2026-06-12 13:24:56,873.873 INFO    ] 2026-06-12 13:24:56
[2026-06-12 13:24:57,076.076 INFO    ] 2026-06-12 13:24:57
[2026-06-12 13:24:57,105.105 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 13:24:57,243.243 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 13:24:57,291.291 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 13:24:57,429.429 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 13:24:57,496.496 INFO    ] time= 12/06/2026 13:24:57
[2026-06-12 13:24:57,520.520 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 13:24:57,526.526 INFO    ] Checking for existing commands in stream...
[2026-06-12 13:24:57,593.593 INFO    ] No existing commands found in stream
[2026-06-12 13:25:02,601.601 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 13:25:02,603.603 INFO    ] Waiting 3.80 seconds before fallback handling...
[2026-06-12 13:25:08,526.526 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 13:25:08,529.529 INFO    ] Checking for system updates...
[2026-06-12 13:25:08,564.564 INFO    ] 200
[2026-06-12 13:25:08,566.566 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:25:08,625.625 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 13:25:08,627.627 INFO    ] No update needed
[2026-06-12 13:25:08,629.629 INFO    ] Checking for camera pi updates...
[2026-06-12 13:25:08,659.659 INFO    ] 200
[2026-06-12 13:25:08,660.660 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:25:08,683.683 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 13:25:08,732.732 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 13:25:08,733.733 INFO    ] No camera update needed
[2026-06-12 13:25:08,734.734 INFO    ] Script finished. Safe exiting...
[2026-06-12 13:25:08,736.736 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 13:25:08,738.738 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 13:25:08,741.741 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 13:25:10,778.778 INFO    ] ================================================
[2026-06-12 13:25:10,793.793 INFO    ] Launching Daemon at Fri Jun 12 13:25:10 IST 2026
[2026-06-12 13:25:10,803.803 INFO    ] ================================================
[2026-06-12 13:25:11,135.135 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 13:25:11
[2026-06-12 13:25:11,450.450 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 13:25:11,580.580 INFO    ] Initializing speech engine...
[2026-06-12 13:25:11,588.588 INFO    ] 2026-06-12 13:25:11
[2026-06-12 13:25:11,800.800 INFO    ] 2026-06-12 13:25:11
[2026-06-12 13:25:11,829.829 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 13:25:11,951.951 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 13:25:12,013.013 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 13:25:12,146.146 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 13:25:12,198.198 INFO    ] time= 12/06/2026 13:25:12
[2026-06-12 13:25:12,237.237 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 13:25:12,242.242 INFO    ] Checking for existing commands in stream...
[2026-06-12 13:25:12,312.312 INFO    ] No existing commands found in stream
[2026-06-12 13:25:17,321.321 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 13:25:17,324.324 INFO    ] Waiting 2.19 seconds before fallback handling...
[2026-06-12 13:25:19,881.881 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 13:25:19,882.882 INFO    ] Checking for system updates...
[2026-06-12 13:25:19,905.905 INFO    ] 200
[2026-06-12 13:25:19,906.906 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:25:19,935.935 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 13:25:19,936.936 INFO    ] No update needed
[2026-06-12 13:25:19,938.938 INFO    ] Checking for camera pi updates...
[2026-06-12 13:25:19,957.957 INFO    ] 200
[2026-06-12 13:25:19,959.959 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:25:19,981.981 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 13:25:20,043.043 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 13:25:20,045.045 INFO    ] No camera update needed
[2026-06-12 13:25:20,046.046 INFO    ] Script finished. Safe exiting...
[2026-06-12 13:25:20,048.048 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 13:25:20,052.052 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 13:25:20,054.054 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 13:25:22,091.091 INFO    ] ================================================
[2026-06-12 13:25:22,106.106 INFO    ] Launching Daemon at Fri Jun 12 13:25:22 IST 2026
[2026-06-12 13:25:22,117.117 INFO    ] ================================================
[2026-06-12 13:25:22,475.475 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 13:25:22
[2026-06-12 13:25:22,791.791 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 13:25:22,925.925 INFO    ] Initializing speech engine...
[2026-06-12 13:25:22,933.933 INFO    ] 2026-06-12 13:25:22
[2026-06-12 13:25:23,144.144 INFO    ] 2026-06-12 13:25:23
[2026-06-12 13:25:23,173.173 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 13:25:23,356.356 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 13:25:23,366.366 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 13:25:23,492.492 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 13:25:23,563.563 INFO    ] time= 12/06/2026 13:25:23
[2026-06-12 13:25:23,587.587 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 13:25:23,593.593 INFO    ] Checking for existing commands in stream...
[2026-06-12 13:25:23,660.660 INFO    ] No existing commands found in stream
[2026-06-12 13:25:28,671.671 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 13:25:28,674.674 INFO    ] Waiting 0.77 seconds before fallback handling...
[2026-06-12 13:25:29,804.804 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 13:25:29,805.805 INFO    ] Checking for system updates...
[2026-06-12 13:25:29,825.825 INFO    ] 200
[2026-06-12 13:25:29,827.827 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:25:29,856.856 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 13:25:29,857.857 INFO    ] No update needed
[2026-06-12 13:25:29,859.859 INFO    ] Checking for camera pi updates...
[2026-06-12 13:25:29,879.879 INFO    ] 200
[2026-06-12 13:25:29,880.880 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:25:29,903.903 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 13:25:29,944.944 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 13:25:29,946.946 INFO    ] No camera update needed
[2026-06-12 13:25:29,947.947 INFO    ] Script finished. Safe exiting...
[2026-06-12 13:25:29,948.948 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 13:25:29,952.952 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 13:25:29,954.954 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 13:25:32,995.995 INFO    ] ================================================
[2026-06-12 13:25:32,011.011 INFO    ] Launching Daemon at Fri Jun 12 13:25:32 IST 2026
[2026-06-12 13:25:32,023.023 INFO    ] ================================================
[2026-06-12 13:25:32,354.354 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 13:25:32
[2026-06-12 13:25:32,690.690 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 13:25:32,823.823 INFO    ] Initializing speech engine...
[2026-06-12 13:25:32,826.826 INFO    ] 2026-06-12 13:25:32
[2026-06-12 13:25:33,046.046 INFO    ] 2026-06-12 13:25:33
[2026-06-12 13:25:33,075.075 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 13:25:33,258.258 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 13:25:33,266.266 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 13:25:33,395.395 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 13:25:33,459.459 INFO    ] time= 12/06/2026 13:25:33
[2026-06-12 13:25:33,486.486 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 13:25:33,493.493 INFO    ] Checking for existing commands in stream...
[2026-06-12 13:25:33,558.558 INFO    ] No existing commands found in stream
[2026-06-12 13:25:38,568.568 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 13:25:38,569.569 INFO    ] Waiting 1.98 seconds before fallback handling...
[2026-06-12 13:25:40,889.889 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 13:25:40,890.890 INFO    ] Checking for system updates...
[2026-06-12 13:25:40,911.911 INFO    ] 200
[2026-06-12 13:25:40,913.913 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:25:40,943.943 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 13:25:40,945.945 INFO    ] No update needed
[2026-06-12 13:25:40,946.946 INFO    ] Checking for camera pi updates...
[2026-06-12 13:25:40,966.966 INFO    ] 200
[2026-06-12 13:25:40,967.967 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:25:40,991.991 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 13:25:41,084.084 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 13:25:41,085.085 INFO    ] No camera update needed
[2026-06-12 13:25:41,087.087 INFO    ] Script finished. Safe exiting...
[2026-06-12 13:25:41,088.088 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 13:25:41,091.091 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 13:25:41,094.094 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 13:25:43,131.131 INFO    ] ================================================
[2026-06-12 13:25:43,146.146 INFO    ] Launching Daemon at Fri Jun 12 13:25:43 IST 2026
[2026-06-12 13:25:43,157.157 INFO    ] ================================================
[2026-06-12 13:25:43,526.526 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 13:25:43
[2026-06-12 13:25:43,837.837 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 13:25:43,973.973 INFO    ] Initializing speech engine...
[2026-06-12 13:25:43,981.981 INFO    ] 2026-06-12 13:25:43
[2026-06-12 13:25:44,188.188 INFO    ] 2026-06-12 13:25:44
[2026-06-12 13:25:44,218.218 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 13:25:44,403.403 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 13:25:44,407.407 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 13:25:44,541.541 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 13:25:44,598.598 INFO    ] time= 12/06/2026 13:25:44
[2026-06-12 13:25:44,633.633 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 13:25:44,638.638 INFO    ] Checking for existing commands in stream...
[2026-06-12 13:25:44,710.710 INFO    ] No existing commands found in stream
[2026-06-12 13:25:49,718.718 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 13:25:49,720.720 INFO    ] Waiting 1.50 seconds before fallback handling...
[2026-06-12 13:25:51,555.555 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 13:25:51,557.557 INFO    ] Checking for system updates...
[2026-06-12 13:25:51,578.578 INFO    ] 200
[2026-06-12 13:25:51,580.580 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:25:51,613.613 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 13:25:51,615.615 INFO    ] No update needed
[2026-06-12 13:25:51,616.616 INFO    ] Checking for camera pi updates...
[2026-06-12 13:25:51,637.637 INFO    ] 200
[2026-06-12 13:25:51,639.639 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:25:51,667.667 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 13:25:51,710.710 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 13:25:51,712.712 INFO    ] No camera update needed
[2026-06-12 13:25:51,713.713 INFO    ] Script finished. Safe exiting...
[2026-06-12 13:25:51,714.714 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 13:25:51,718.718 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 13:25:51,721.721 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 13:25:53,759.759 INFO    ] ================================================
[2026-06-12 13:25:53,774.774 INFO    ] Launching Daemon at Fri Jun 12 13:25:53 IST 2026
[2026-06-12 13:25:53,785.785 INFO    ] ================================================
[2026-06-12 13:25:54,121.121 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 13:25:54
[2026-06-12 13:25:54,437.437 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 13:25:54,579.579 INFO    ] Initializing speech engine...
[2026-06-12 13:25:54,590.590 INFO    ] 2026-06-12 13:25:54
[2026-06-12 13:25:54,804.804 INFO    ] 2026-06-12 13:25:54
[2026-06-12 13:25:54,835.835 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 13:25:55,033.033 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 13:25:55,037.037 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 13:25:55,180.180 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 13:25:55,245.245 INFO    ] time= 12/06/2026 13:25:55
[2026-06-12 13:25:55,276.276 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 13:25:55,278.278 INFO    ] Checking for existing commands in stream...
[2026-06-12 13:25:55,354.354 INFO    ] No existing commands found in stream
[2026-06-12 13:26:00,362.362 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 13:26:00,365.365 INFO    ] Waiting 0.71 seconds before fallback handling...
[2026-06-12 13:26:01,460.460 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 13:26:01,462.462 INFO    ] Checking for system updates...
[2026-06-12 13:26:01,489.489 INFO    ] 200
[2026-06-12 13:26:01,491.491 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:26:01,532.532 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 13:26:01,534.534 INFO    ] No update needed
[2026-06-12 13:26:01,536.536 INFO    ] Checking for camera pi updates...
[2026-06-12 13:26:01,566.566 INFO    ] 200
[2026-06-12 13:26:01,568.568 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:26:01,601.601 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 13:26:01,679.679 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 13:26:01,680.680 INFO    ] No camera update needed
[2026-06-12 13:26:01,682.682 INFO    ] Script finished. Safe exiting...
[2026-06-12 13:26:01,684.684 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 13:26:01,688.688 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 13:26:01,703.703 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 13:26:03,742.742 INFO    ] ================================================
[2026-06-12 13:26:03,757.757 INFO    ] Launching Daemon at Fri Jun 12 13:26:03 IST 2026
[2026-06-12 13:26:03,773.773 INFO    ] ================================================
[2026-06-12 13:26:04,100.100 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 13:26:04
[2026-06-12 13:26:04,414.414 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 13:26:04,543.543 INFO    ] Initializing speech engine...
[2026-06-12 13:26:04,552.552 INFO    ] 2026-06-12 13:26:04
[2026-06-12 13:26:04,765.765 INFO    ] 2026-06-12 13:26:04
[2026-06-12 13:26:04,795.795 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 13:26:04,980.980 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 13:26:04,983.983 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 13:26:05,112.112 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 13:26:05,163.163 INFO    ] time= 12/06/2026 13:26:05
[2026-06-12 13:26:05,204.204 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 13:26:05,214.214 INFO    ] Checking for existing commands in stream...
[2026-06-12 13:26:05,291.291 INFO    ] No existing commands found in stream
[2026-06-12 13:26:10,313.313 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 13:26:10,316.316 INFO    ] Waiting 0.50 seconds before fallback handling...
[2026-06-12 13:26:11,214.214 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 13:26:11,215.215 INFO    ] Checking for system updates...
[2026-06-12 13:26:11,237.237 INFO    ] 200
[2026-06-12 13:26:11,238.238 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:26:11,271.271 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 13:26:11,273.273 INFO    ] No update needed
[2026-06-12 13:26:11,274.274 INFO    ] Checking for camera pi updates...
[2026-06-12 13:26:11,295.295 INFO    ] 200
[2026-06-12 13:26:11,296.296 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:26:11,322.322 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 13:26:11,369.369 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 13:26:11,370.370 INFO    ] No camera update needed
[2026-06-12 13:26:11,372.372 INFO    ] Script finished. Safe exiting...
[2026-06-12 13:26:11,373.373 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 13:26:11,376.376 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 13:26:11,379.379 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 13:26:13,410.410 INFO    ] ================================================
[2026-06-12 13:26:13,419.419 INFO    ] Launching Daemon at Fri Jun 12 13:26:13 IST 2026
[2026-06-12 13:26:13,425.425 INFO    ] ================================================
[2026-06-12 13:26:13,775.775 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 13:26:13
[2026-06-12 13:26:14,088.088 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 13:26:14,233.233 INFO    ] Initializing speech engine...
[2026-06-12 13:26:14,239.239 INFO    ] 2026-06-12 13:26:14
[2026-06-12 13:26:14,444.444 INFO    ] 2026-06-12 13:26:14
[2026-06-12 13:26:14,472.472 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 13:26:14,657.657 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 13:26:14,666.666 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 13:26:14,797.797 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 13:26:14,865.865 INFO    ] time= 12/06/2026 13:26:14
[2026-06-12 13:26:14,889.889 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 13:26:14,895.895 INFO    ] Checking for existing commands in stream...
[2026-06-12 13:26:14,961.961 INFO    ] No existing commands found in stream
[2026-06-12 13:26:19,971.971 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 13:26:19,974.974 INFO    ] Waiting 3.67 seconds before fallback handling...
[2026-06-12 13:26:23,985.985 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 13:26:23,986.986 INFO    ] Checking for system updates...
[2026-06-12 13:26:24,010.010 INFO    ] 200
[2026-06-12 13:26:24,012.012 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:26:24,041.041 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 13:26:24,042.042 INFO    ] No update needed
[2026-06-12 13:26:24,044.044 INFO    ] Checking for camera pi updates...
[2026-06-12 13:26:24,065.065 INFO    ] 200
[2026-06-12 13:26:24,066.066 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:26:24,091.091 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 13:26:24,146.146 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 13:26:24,148.148 INFO    ] No camera update needed
[2026-06-12 13:26:24,149.149 INFO    ] Script finished. Safe exiting...
[2026-06-12 13:26:24,150.150 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 13:26:24,153.153 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 13:26:24,156.156 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 13:26:26,187.187 INFO    ] ================================================
[2026-06-12 13:26:26,202.202 INFO    ] Launching Daemon at Fri Jun 12 13:26:26 IST 2026
[2026-06-12 13:26:26,218.218 INFO    ] ================================================
[2026-06-12 13:26:26,548.548 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 13:26:26
[2026-06-12 13:26:26,860.860 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 13:26:26,991.991 INFO    ] Initializing speech engine...
[2026-06-12 13:26:26,995.995 INFO    ] 2026-06-12 13:26:26
[2026-06-12 13:26:27,212.212 INFO    ] 2026-06-12 13:26:27
[2026-06-12 13:26:27,241.241 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 13:26:27,426.426 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 13:26:27,435.435 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 13:26:27,558.558 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 13:26:27,624.624 INFO    ] time= 12/06/2026 13:26:27
[2026-06-12 13:26:27,657.657 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 13:26:27,663.663 INFO    ] Checking for existing commands in stream...
[2026-06-12 13:26:27,729.729 INFO    ] No existing commands found in stream
[2026-06-12 13:26:32,739.739 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 13:26:32,742.742 INFO    ] Waiting 3.24 seconds before fallback handling...
[2026-06-12 13:26:36,307.307 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 13:26:36,308.308 INFO    ] Checking for system updates...
[2026-06-12 13:26:36,330.330 INFO    ] 200
[2026-06-12 13:26:36,331.331 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:26:36,360.360 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 13:26:36,361.361 INFO    ] No update needed
[2026-06-12 13:26:36,363.363 INFO    ] Checking for camera pi updates...
[2026-06-12 13:26:36,383.383 INFO    ] 200
[2026-06-12 13:26:36,384.384 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:26:36,407.407 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 13:26:36,448.448 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 13:26:36,449.449 INFO    ] No camera update needed
[2026-06-12 13:26:36,451.451 INFO    ] Script finished. Safe exiting...
[2026-06-12 13:26:36,452.452 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 13:26:36,455.455 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 13:26:36,458.458 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 13:26:38,488.488 INFO    ] ================================================
[2026-06-12 13:26:38,503.503 INFO    ] Launching Daemon at Fri Jun 12 13:26:38 IST 2026
[2026-06-12 13:26:38,514.514 INFO    ] ================================================
[2026-06-12 13:26:38,861.861 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 13:26:38
[2026-06-12 13:26:39,197.197 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 13:26:39,346.346 INFO    ] Initializing speech engine...
[2026-06-12 13:26:39,352.352 INFO    ] 2026-06-12 13:26:39
[2026-06-12 13:26:39,561.561 INFO    ] 2026-06-12 13:26:39
[2026-06-12 13:26:39,590.590 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 13:26:39,773.773 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 13:26:39,784.784 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 13:26:39,883.883 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 13:26:39,884.884 INFO    ] time= 12/06/2026 13:26:39
[2026-06-12 13:26:39,886.886 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 13:26:39,887.887 INFO    ] Checking for existing commands in stream...
[2026-06-12 13:26:39,944.944 INFO    ] No existing commands found in stream
[2026-06-12 13:26:44,953.953 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 13:26:44,956.956 INFO    ] Waiting 0.18 seconds before fallback handling...
[2026-06-12 13:26:45,512.512 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 13:26:45,513.513 INFO    ] Checking for system updates...
[2026-06-12 13:26:45,534.534 INFO    ] 200
[2026-06-12 13:26:45,535.535 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:26:45,567.567 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 13:26:45,568.568 INFO    ] No update needed
[2026-06-12 13:26:45,570.570 INFO    ] Checking for camera pi updates...
[2026-06-12 13:26:45,592.592 INFO    ] 200
[2026-06-12 13:26:45,593.593 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:26:45,618.618 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 13:26:45,660.660 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 13:26:45,662.662 INFO    ] No camera update needed
[2026-06-12 13:26:45,663.663 INFO    ] Script finished. Safe exiting...
[2026-06-12 13:26:45,665.665 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 13:26:45,668.668 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 13:26:45,671.671 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 13:26:47,693.693 INFO    ] ================================================
[2026-06-12 13:26:47,701.701 INFO    ] Launching Daemon at Fri Jun 12 13:26:47 IST 2026
[2026-06-12 13:26:47,707.707 INFO    ] ================================================
[2026-06-12 13:26:48,056.056 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 13:26:48
[2026-06-12 13:26:48,368.368 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 13:26:48,511.511 INFO    ] Initializing speech engine...
[2026-06-12 13:26:48,517.517 INFO    ] 2026-06-12 13:26:48
[2026-06-12 13:26:48,721.721 INFO    ] 2026-06-12 13:26:48
[2026-06-12 13:26:48,750.750 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 13:26:48,936.936 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 13:26:48,940.940 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 13:26:49,083.083 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 13:26:49,146.146 INFO    ] time= 12/06/2026 13:26:49
[2026-06-12 13:26:49,171.171 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 13:26:49,177.177 INFO    ] Checking for existing commands in stream...
[2026-06-12 13:26:49,245.245 INFO    ] No existing commands found in stream
[2026-06-12 13:26:54,260.260 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 13:26:54,263.263 INFO    ] Waiting 0.54 seconds before fallback handling...
[2026-06-12 13:26:55,194.194 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 13:26:55,195.195 INFO    ] Checking for system updates...
[2026-06-12 13:26:55,216.216 INFO    ] 200
[2026-06-12 13:26:55,217.217 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:26:55,249.249 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 13:26:55,250.250 INFO    ] No update needed
[2026-06-12 13:26:55,252.252 INFO    ] Checking for camera pi updates...
[2026-06-12 13:26:55,273.273 INFO    ] 200
[2026-06-12 13:26:55,275.275 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:26:55,297.297 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 13:26:55,481.481 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 13:26:55,483.483 INFO    ] No camera update needed
[2026-06-12 13:26:55,484.484 INFO    ] Script finished. Safe exiting...
[2026-06-12 13:26:55,486.486 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 13:26:55,489.489 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 13:26:55,492.492 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 13:26:57,529.529 INFO    ] ================================================
[2026-06-12 13:26:57,544.544 INFO    ] Launching Daemon at Fri Jun 12 13:26:57 IST 2026
[2026-06-12 13:26:57,555.555 INFO    ] ================================================
[2026-06-12 13:26:57,924.924 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 13:26:57
[2026-06-12 13:26:58,251.251 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 13:26:58,394.394 INFO    ] Initializing speech engine...
[2026-06-12 13:26:58,399.399 INFO    ] 2026-06-12 13:26:58
[2026-06-12 13:26:58,601.601 INFO    ] 2026-06-12 13:26:58
[2026-06-12 13:26:58,631.631 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 13:26:58,773.773 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 13:26:58,818.818 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 13:26:58,955.955 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 13:26:59,022.022 INFO    ] time= 12/06/2026 13:26:58
[2026-06-12 13:26:59,045.045 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 13:26:59,052.052 INFO    ] Checking for existing commands in stream...
[2026-06-12 13:26:59,154.154 INFO    ] No existing commands found in stream
[2026-06-12 13:27:04,164.164 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 13:27:04,167.167 INFO    ] Waiting 0.94 seconds before fallback handling...
[2026-06-12 13:27:05,487.487 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 13:27:05,489.489 INFO    ] Checking for system updates...
[2026-06-12 13:27:05,515.515 INFO    ] 200
[2026-06-12 13:27:05,517.517 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:27:05,560.560 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 13:27:05,562.562 INFO    ] No update needed
[2026-06-12 13:27:05,563.563 INFO    ] Checking for camera pi updates...
[2026-06-12 13:27:05,582.582 INFO    ] 200
[2026-06-12 13:27:05,584.584 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:27:05,607.607 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 13:27:05,656.656 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 13:27:05,658.658 INFO    ] No camera update needed
[2026-06-12 13:27:05,659.659 INFO    ] Script finished. Safe exiting...
[2026-06-12 13:27:05,660.660 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 13:27:05,663.663 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 13:27:05,666.666 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 13:27:07,705.705 INFO    ] ================================================
[2026-06-12 13:27:07,720.720 INFO    ] Launching Daemon at Fri Jun 12 13:27:07 IST 2026
[2026-06-12 13:27:07,731.731 INFO    ] ================================================
[2026-06-12 13:27:08,084.084 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 13:27:08
[2026-06-12 13:27:08,400.400 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 13:27:08,529.529 INFO    ] Initializing speech engine...
[2026-06-12 13:27:08,534.534 INFO    ] 2026-06-12 13:27:08
[2026-06-12 13:27:08,748.748 INFO    ] 2026-06-12 13:27:08
[2026-06-12 13:27:08,782.782 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 13:27:08,969.969 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 13:27:08,979.979 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 13:27:09,118.118 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 13:27:09,176.176 INFO    ] time= 12/06/2026 13:27:09
[2026-06-12 13:27:09,210.210 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 13:27:09,212.212 INFO    ] Checking for existing commands in stream...
[2026-06-12 13:27:09,282.282 INFO    ] No existing commands found in stream
[2026-06-12 13:27:14,292.292 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 13:27:14,295.295 INFO    ] Waiting 1.67 seconds before fallback handling...
[2026-06-12 13:27:16,318.318 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 13:27:16,319.319 INFO    ] Checking for system updates...
[2026-06-12 13:27:16,341.341 INFO    ] 200
[2026-06-12 13:27:16,342.342 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:27:16,371.371 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 13:27:16,373.373 INFO    ] No update needed
[2026-06-12 13:27:16,374.374 INFO    ] Checking for camera pi updates...
[2026-06-12 13:27:16,394.394 INFO    ] 200
[2026-06-12 13:27:16,395.395 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:27:16,420.420 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 13:27:16,471.471 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 13:27:16,472.472 INFO    ] No camera update needed
[2026-06-12 13:27:16,474.474 INFO    ] Script finished. Safe exiting...
[2026-06-12 13:27:16,475.475 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 13:27:16,478.478 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 13:27:16,481.481 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 13:27:18,519.519 INFO    ] ================================================
[2026-06-12 13:27:18,534.534 INFO    ] Launching Daemon at Fri Jun 12 13:27:18 IST 2026
[2026-06-12 13:27:18,545.545 INFO    ] ================================================
[2026-06-12 13:27:18,903.903 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 13:27:18
[2026-06-12 13:27:19,243.243 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 13:27:19,397.397 INFO    ] Initializing speech engine...
[2026-06-12 13:27:19,402.402 INFO    ] 2026-06-12 13:27:19
[2026-06-12 13:27:19,608.608 INFO    ] 2026-06-12 13:27:19
[2026-06-12 13:27:19,636.636 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 13:27:19,821.821 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 13:27:19,830.830 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 13:27:19,960.960 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 13:27:20,017.017 INFO    ] time= 12/06/2026 13:27:19
[2026-06-12 13:27:20,059.059 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 13:27:20,066.066 INFO    ] Checking for existing commands in stream...
[2026-06-12 13:27:20,131.131 INFO    ] No existing commands found in stream
[2026-06-12 13:27:25,142.142 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 13:27:25,146.146 INFO    ] Waiting 3.87 seconds before fallback handling...
[2026-06-12 13:27:29,395.395 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 13:27:29,396.396 INFO    ] Checking for system updates...
[2026-06-12 13:27:29,418.418 INFO    ] 200
[2026-06-12 13:27:29,419.419 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:27:29,449.449 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 13:27:29,450.450 INFO    ] No update needed
[2026-06-12 13:27:29,451.451 INFO    ] Checking for camera pi updates...
[2026-06-12 13:27:29,470.470 INFO    ] 200
[2026-06-12 13:27:29,472.472 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:27:29,496.496 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 13:27:29,539.539 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 13:27:29,541.541 INFO    ] No camera update needed
[2026-06-12 13:27:29,542.542 INFO    ] Script finished. Safe exiting...
[2026-06-12 13:27:29,543.543 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 13:27:29,546.546 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 13:27:29,549.549 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 13:27:31,579.579 INFO    ] ================================================
[2026-06-12 13:27:31,589.589 INFO    ] Launching Daemon at Fri Jun 12 13:27:31 IST 2026
[2026-06-12 13:27:31,596.596 INFO    ] ================================================
[2026-06-12 13:27:32,013.013 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 13:27:32
[2026-06-12 13:27:32,375.375 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 13:27:32,528.528 INFO    ] Initializing speech engine...
[2026-06-12 13:27:32,532.532 INFO    ] 2026-06-12 13:27:32
[2026-06-12 13:27:32,740.740 INFO    ] 2026-06-12 13:27:32
[2026-06-12 13:27:32,769.769 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 13:27:32,892.892 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 13:27:32,955.955 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 13:27:33,092.092 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 13:27:33,157.157 INFO    ] time= 12/06/2026 13:27:33
[2026-06-12 13:27:33,184.184 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 13:27:33,190.190 INFO    ] Checking for existing commands in stream...
[2026-06-12 13:27:33,256.256 INFO    ] No existing commands found in stream
[2026-06-12 13:27:38,267.267 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 13:27:38,271.271 INFO    ] Waiting 0.24 seconds before fallback handling...
[2026-06-12 13:27:38,888.888 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 13:27:38,889.889 INFO    ] Checking for system updates...
[2026-06-12 13:27:38,911.911 INFO    ] 200
[2026-06-12 13:27:38,913.913 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:27:38,946.946 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 13:27:38,947.947 INFO    ] No update needed
[2026-06-12 13:27:38,948.948 INFO    ] Checking for camera pi updates...
[2026-06-12 13:27:38,973.973 INFO    ] 200
[2026-06-12 13:27:38,975.975 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:27:39,003.003 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 13:27:39,056.056 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 13:27:39,057.057 INFO    ] No camera update needed
[2026-06-12 13:27:39,058.058 INFO    ] Script finished. Safe exiting...
[2026-06-12 13:27:39,060.060 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 13:27:39,063.063 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 13:27:39,066.066 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 13:27:41,103.103 INFO    ] ================================================
[2026-06-12 13:27:41,118.118 INFO    ] Launching Daemon at Fri Jun 12 13:27:41 IST 2026
[2026-06-12 13:27:41,128.128 INFO    ] ================================================
[2026-06-12 13:27:41,467.467 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 13:27:41
[2026-06-12 13:27:41,785.785 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 13:27:41,934.934 INFO    ] Initializing speech engine...
[2026-06-12 13:27:41,939.939 INFO    ] 2026-06-12 13:27:41
[2026-06-12 13:27:42,155.155 INFO    ] 2026-06-12 13:27:42
[2026-06-12 13:27:42,185.185 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 13:27:42,309.309 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 13:27:42,373.373 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 13:27:42,525.525 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 13:27:42,585.585 INFO    ] time= 12/06/2026 13:27:42
[2026-06-12 13:27:42,609.609 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 13:27:42,616.616 INFO    ] Checking for existing commands in stream...
[2026-06-12 13:27:42,682.682 INFO    ] No existing commands found in stream
[2026-06-12 13:27:47,691.691 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 13:27:47,693.693 INFO    ] Waiting 0.46 seconds before fallback handling...
[2026-06-12 13:27:48,504.504 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 13:27:48,506.506 INFO    ] Checking for system updates...
[2026-06-12 13:27:48,526.526 INFO    ] 200
[2026-06-12 13:27:48,527.527 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:27:48,559.559 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 13:27:48,561.561 INFO    ] No update needed
[2026-06-12 13:27:48,562.562 INFO    ] Checking for camera pi updates...
[2026-06-12 13:27:48,581.581 INFO    ] 200
[2026-06-12 13:27:48,583.583 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:27:48,607.607 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 13:27:48,714.714 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 13:27:48,715.715 INFO    ] No camera update needed
[2026-06-12 13:27:48,717.717 INFO    ] Script finished. Safe exiting...
[2026-06-12 13:27:48,718.718 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 13:27:48,721.721 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 13:27:48,724.724 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 13:27:50,762.762 INFO    ] ================================================
[2026-06-12 13:27:50,779.779 INFO    ] Launching Daemon at Fri Jun 12 13:27:50 IST 2026
[2026-06-12 13:27:50,791.791 INFO    ] ================================================
[2026-06-12 13:27:51,179.179 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 13:27:51
[2026-06-12 13:27:51,518.518 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 13:27:51,660.660 INFO    ] Initializing speech engine...
[2026-06-12 13:27:51,672.672 INFO    ] 2026-06-12 13:27:51
[2026-06-12 13:27:51,886.886 INFO    ] 2026-06-12 13:27:51
[2026-06-12 13:27:51,916.916 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 13:27:52,105.105 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 13:27:52,115.115 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 13:27:52,239.239 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 13:27:52,291.291 INFO    ] time= 12/06/2026 13:27:52
[2026-06-12 13:27:52,343.343 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 13:27:52,352.352 INFO    ] Checking for existing commands in stream...
[2026-06-12 13:27:52,457.457 INFO    ] No existing commands found in stream
[2026-06-12 13:27:57,482.482 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 13:27:57,485.485 INFO    ] Waiting 2.96 seconds before fallback handling...
[2026-06-12 13:28:01,651.651 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 13:28:01,655.655 INFO    ] Checking for system updates...
[2026-06-12 13:28:01,691.691 INFO    ] 200
[2026-06-12 13:28:01,697.697 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:28:01,759.759 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 13:28:01,762.762 INFO    ] No update needed
[2026-06-12 13:28:01,765.765 INFO    ] Checking for camera pi updates...
[2026-06-12 13:28:01,801.801 INFO    ] 200
[2026-06-12 13:28:01,803.803 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:28:01,847.847 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 13:28:01,893.893 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 13:28:01,895.895 INFO    ] No camera update needed
[2026-06-12 13:28:01,897.897 INFO    ] Script finished. Safe exiting...
[2026-06-12 13:28:01,898.898 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 13:28:01,904.904 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 13:28:01,908.908 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 13:28:03,941.941 INFO    ] ================================================
[2026-06-12 13:28:03,956.956 INFO    ] Launching Daemon at Fri Jun 12 13:28:03 IST 2026
[2026-06-12 13:28:03,967.967 INFO    ] ================================================
[2026-06-12 13:28:04,350.350 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 13:28:04
[2026-06-12 13:28:04,682.682 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 13:28:04,826.826 INFO    ] Initializing speech engine...
[2026-06-12 13:28:04,836.836 INFO    ] 2026-06-12 13:28:04
[2026-06-12 13:28:05,060.060 INFO    ] 2026-06-12 13:28:05
[2026-06-12 13:28:05,089.089 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 13:28:06,259.259 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 13:28:06,271.271 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 13:28:06,392.392 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 13:28:06,419.419 INFO    ] time= 12/06/2026 13:28:06
[2026-06-12 13:28:06,426.426 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 13:28:06,428.428 INFO    ] Checking for existing commands in stream...
[2026-06-12 13:28:06,502.502 INFO    ] No existing commands found in stream
[2026-06-12 13:28:11,513.513 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 13:28:11,515.515 INFO    ] Waiting 3.45 seconds before fallback handling...
[2026-06-12 13:28:15,344.344 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 13:28:15,346.346 INFO    ] Checking for system updates...
[2026-06-12 13:28:15,367.367 INFO    ] 200
[2026-06-12 13:28:15,368.368 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:28:15,397.397 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 13:28:15,399.399 INFO    ] No update needed
[2026-06-12 13:28:15,400.400 INFO    ] Checking for camera pi updates...
[2026-06-12 13:28:15,421.421 INFO    ] 200
[2026-06-12 13:28:15,422.422 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:28:15,449.449 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 13:28:15,587.587 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 13:28:15,588.588 INFO    ] No camera update needed
[2026-06-12 13:28:15,589.589 INFO    ] Script finished. Safe exiting...
[2026-06-12 13:28:15,590.590 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 13:28:15,593.593 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 13:28:15,596.596 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 13:28:17,626.626 INFO    ] ================================================
[2026-06-12 13:28:17,642.642 INFO    ] Launching Daemon at Fri Jun 12 13:28:17 IST 2026
[2026-06-12 13:28:17,652.652 INFO    ] ================================================
[2026-06-12 13:28:17,984.984 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 13:28:17
[2026-06-12 13:28:18,318.318 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 13:28:18,470.470 INFO    ] Initializing speech engine...
[2026-06-12 13:28:18,476.476 INFO    ] 2026-06-12 13:28:18
[2026-06-12 13:28:18,682.682 INFO    ] 2026-06-12 13:28:18
[2026-06-12 13:28:18,711.711 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 13:28:18,844.844 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 13:28:18,896.896 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 13:28:19,031.031 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 13:28:19,101.101 INFO    ] time= 12/06/2026 13:28:19
[2026-06-12 13:28:19,126.126 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 13:28:19,132.132 INFO    ] Checking for existing commands in stream...
[2026-06-12 13:28:19,199.199 INFO    ] No existing commands found in stream
[2026-06-12 13:28:24,214.214 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 13:28:24,217.217 INFO    ] Waiting 1.11 seconds before fallback handling...
[2026-06-12 13:28:25,727.727 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 13:28:25,728.728 INFO    ] Checking for system updates...
[2026-06-12 13:28:25,751.751 INFO    ] 200
[2026-06-12 13:28:25,752.752 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:28:25,784.784 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 13:28:25,785.785 INFO    ] No update needed
[2026-06-12 13:28:25,787.787 INFO    ] Checking for camera pi updates...
[2026-06-12 13:28:25,807.807 INFO    ] 200
[2026-06-12 13:28:25,809.809 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:28:25,834.834 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 13:28:25,885.885 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 13:28:25,886.886 INFO    ] No camera update needed
[2026-06-12 13:28:25,888.888 INFO    ] Script finished. Safe exiting...
[2026-06-12 13:28:25,889.889 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 13:28:25,893.893 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 13:28:25,896.896 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 13:28:27,925.925 INFO    ] ================================================
[2026-06-12 13:28:27,933.933 INFO    ] Launching Daemon at Fri Jun 12 13:28:27 IST 2026
[2026-06-12 13:28:27,939.939 INFO    ] ================================================
[2026-06-12 13:28:28,298.298 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 13:28:28
[2026-06-12 13:28:28,610.610 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 13:28:28,739.739 INFO    ] Initializing speech engine...
[2026-06-12 13:28:28,744.744 INFO    ] 2026-06-12 13:28:28
[2026-06-12 13:28:28,937.937 INFO    ] 2026-06-12 13:28:28
[2026-06-12 13:28:28,970.970 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 13:28:29,117.117 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 13:28:29,175.175 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 13:28:29,323.323 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 13:28:29,389.389 INFO    ] time= 12/06/2026 13:28:29
[2026-06-12 13:28:29,414.414 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 13:28:29,415.415 INFO    ] Checking for existing commands in stream...
[2026-06-12 13:28:29,487.487 INFO    ] No existing commands found in stream
[2026-06-12 13:28:34,496.496 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 13:28:34,498.498 INFO    ] Waiting 1.56 seconds before fallback handling...
[2026-06-12 13:28:36,427.427 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 13:28:36,429.429 INFO    ] Checking for system updates...
[2026-06-12 13:28:36,450.450 INFO    ] 200
[2026-06-12 13:28:36,451.451 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:28:36,481.481 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 13:28:36,482.482 INFO    ] No update needed
[2026-06-12 13:28:36,483.483 INFO    ] Checking for camera pi updates...
[2026-06-12 13:28:36,503.503 INFO    ] 200
[2026-06-12 13:28:36,504.504 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:28:36,529.529 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 13:28:36,577.577 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 13:28:36,578.578 INFO    ] No camera update needed
[2026-06-12 13:28:36,580.580 INFO    ] Script finished. Safe exiting...
[2026-06-12 13:28:36,581.581 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 13:28:36,584.584 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 13:28:36,587.587 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 13:28:38,616.616 INFO    ] ================================================
[2026-06-12 13:28:38,625.625 INFO    ] Launching Daemon at Fri Jun 12 13:28:38 IST 2026
[2026-06-12 13:28:38,631.631 INFO    ] ================================================
[2026-06-12 13:28:38,945.945 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 13:28:38
[2026-06-12 13:28:39,264.264 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 13:28:39,398.398 INFO    ] Initializing speech engine...
[2026-06-12 13:28:39,403.403 INFO    ] 2026-06-12 13:28:39
[2026-06-12 13:28:39,634.634 INFO    ] 2026-06-12 13:28:39
[2026-06-12 13:28:39,665.665 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 13:28:39,798.798 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 13:28:39,850.850 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 13:28:40,005.005 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 13:28:40,072.072 INFO    ] time= 12/06/2026 13:28:40
[2026-06-12 13:28:40,106.106 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 13:28:40,113.113 INFO    ] Checking for existing commands in stream...
[2026-06-12 13:28:40,214.214 INFO    ] No existing commands found in stream
[2026-06-12 13:28:45,223.223 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 13:28:45,226.226 INFO    ] Waiting 0.14 seconds before fallback handling...
[2026-06-12 13:28:45,709.709 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 13:28:45,711.711 INFO    ] Checking for system updates...
[2026-06-12 13:28:45,732.732 INFO    ] 200
[2026-06-12 13:28:45,734.734 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:28:45,765.765 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 13:28:45,767.767 INFO    ] No update needed
[2026-06-12 13:28:45,768.768 INFO    ] Checking for camera pi updates...
[2026-06-12 13:28:45,788.788 INFO    ] 200
[2026-06-12 13:28:45,789.789 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:28:45,814.814 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 13:28:45,874.874 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 13:28:45,875.875 INFO    ] No camera update needed
[2026-06-12 13:28:45,876.876 INFO    ] Script finished. Safe exiting...
[2026-06-12 13:28:45,878.878 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 13:28:45,881.881 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 13:28:45,884.884 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 13:28:47,921.921 INFO    ] ================================================
[2026-06-12 13:28:47,936.936 INFO    ] Launching Daemon at Fri Jun 12 13:28:47 IST 2026
[2026-06-12 13:28:47,947.947 INFO    ] ================================================
[2026-06-12 13:28:48,303.303 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 13:28:48
[2026-06-12 13:28:48,641.641 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 13:28:48,793.793 INFO    ] Initializing speech engine...
[2026-06-12 13:28:48,799.799 INFO    ] 2026-06-12 13:28:48
[2026-06-12 13:28:49,004.004 INFO    ] 2026-06-12 13:28:48
[2026-06-12 13:28:49,033.033 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 13:28:49,215.215 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 13:28:49,225.225 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 13:28:49,358.358 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 13:28:49,417.417 INFO    ] time= 12/06/2026 13:28:49
[2026-06-12 13:28:49,451.451 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 13:28:49,457.457 INFO    ] Checking for existing commands in stream...
[2026-06-12 13:28:49,525.525 INFO    ] No existing commands found in stream
[2026-06-12 13:28:54,540.540 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 13:28:54,543.543 INFO    ] Waiting 3.71 seconds before fallback handling...
[2026-06-12 13:28:58,640.640 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 13:28:58,642.642 INFO    ] Checking for system updates...
[2026-06-12 13:28:58,664.664 INFO    ] 200
[2026-06-12 13:28:58,665.665 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:28:58,696.696 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 13:28:58,698.698 INFO    ] No update needed
[2026-06-12 13:28:58,700.700 INFO    ] Checking for camera pi updates...
[2026-06-12 13:28:58,720.720 INFO    ] 200
[2026-06-12 13:28:58,721.721 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:28:58,744.744 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 13:28:58,791.791 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 13:28:58,792.792 INFO    ] No camera update needed
[2026-06-12 13:28:58,793.793 INFO    ] Script finished. Safe exiting...
[2026-06-12 13:28:58,795.795 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 13:28:58,798.798 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 13:28:58,801.801 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 13:29:00,839.839 INFO    ] ================================================
[2026-06-12 13:29:00,854.854 INFO    ] Launching Daemon at Fri Jun 12 13:29:00 IST 2026
[2026-06-12 13:29:00,868.868 INFO    ] ================================================
[2026-06-12 13:29:01,219.219 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 13:29:01
[2026-06-12 13:29:01,540.540 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 13:29:01,673.673 INFO    ] Initializing speech engine...
[2026-06-12 13:29:01,677.677 INFO    ] 2026-06-12 13:29:01
[2026-06-12 13:29:01,876.876 INFO    ] 2026-06-12 13:29:01
[2026-06-12 13:29:01,907.907 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 13:29:02,077.077 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 13:29:02,091.091 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 13:29:02,212.212 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 13:29:02,280.280 INFO    ] time= 12/06/2026 13:29:02
[2026-06-12 13:29:02,291.291 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 13:29:02,305.305 INFO    ] Checking for existing commands in stream...
[2026-06-12 13:29:02,439.439 INFO    ] No existing commands found in stream
[2026-06-12 13:29:07,458.458 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 13:29:07,461.461 INFO    ] Waiting 3.53 seconds before fallback handling...
[2026-06-12 13:29:11,375.375 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 13:29:11,377.377 INFO    ] Checking for system updates...
[2026-06-12 13:29:11,402.402 INFO    ] 200
[2026-06-12 13:29:11,403.403 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:29:11,434.434 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 13:29:11,436.436 INFO    ] No update needed
[2026-06-12 13:29:11,437.437 INFO    ] Checking for camera pi updates...
[2026-06-12 13:29:11,456.456 INFO    ] 200
[2026-06-12 13:29:11,457.457 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:29:11,480.480 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 13:29:11,531.531 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 13:29:11,532.532 INFO    ] No camera update needed
[2026-06-12 13:29:11,534.534 INFO    ] Script finished. Safe exiting...
[2026-06-12 13:29:11,535.535 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 13:29:11,538.538 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 13:29:11,541.541 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 13:29:13,573.573 INFO    ] ================================================
[2026-06-12 13:29:13,589.589 INFO    ] Launching Daemon at Fri Jun 12 13:29:13 IST 2026
[2026-06-12 13:29:13,599.599 INFO    ] ================================================
[2026-06-12 13:29:13,960.960 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 13:29:13
[2026-06-12 13:29:14,272.272 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 13:29:14,407.407 INFO    ] Initializing speech engine...
[2026-06-12 13:29:14,410.410 INFO    ] 2026-06-12 13:29:14
[2026-06-12 13:29:14,604.604 INFO    ] 2026-06-12 13:29:14
[2026-06-12 13:29:14,649.649 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 13:29:14,807.807 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 13:29:14,857.857 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 13:29:15,020.020 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 13:29:15,062.062 INFO    ] time= 12/06/2026 13:29:15
[2026-06-12 13:29:15,106.106 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 13:29:15,130.130 INFO    ] Checking for existing commands in stream...
[2026-06-12 13:29:15,206.206 INFO    ] No existing commands found in stream
[2026-06-12 13:29:20,216.216 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 13:29:20,219.219 INFO    ] Waiting 0.08 seconds before fallback handling...
[2026-06-12 13:29:20,650.650 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 13:29:20,651.651 INFO    ] Checking for system updates...
[2026-06-12 13:29:20,672.672 INFO    ] 200
[2026-06-12 13:29:20,673.673 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:29:20,705.705 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 13:29:20,707.707 INFO    ] No update needed
[2026-06-12 13:29:20,708.708 INFO    ] Checking for camera pi updates...
[2026-06-12 13:29:20,730.730 INFO    ] 200
[2026-06-12 13:29:20,732.732 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:29:20,755.755 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 13:29:20,807.807 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 13:29:20,808.808 INFO    ] No camera update needed
[2026-06-12 13:29:20,810.810 INFO    ] Script finished. Safe exiting...
[2026-06-12 13:29:20,812.812 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 13:29:20,815.815 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 13:29:20,818.818 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 13:29:22,857.857 INFO    ] ================================================
[2026-06-12 13:29:22,873.873 INFO    ] Launching Daemon at Fri Jun 12 13:29:22 IST 2026
[2026-06-12 13:29:22,883.883 INFO    ] ================================================
[2026-06-12 13:29:23,269.269 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 13:29:23
[2026-06-12 13:29:23,619.619 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 13:29:23,776.776 INFO    ] Initializing speech engine...
[2026-06-12 13:29:23,781.781 INFO    ] 2026-06-12 13:29:23
[2026-06-12 13:29:24,006.006 INFO    ] 2026-06-12 13:29:23
[2026-06-12 13:29:24,036.036 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 13:29:24,158.158 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 13:29:24,221.221 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 13:29:24,357.357 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 13:29:24,414.414 INFO    ] time= 12/06/2026 13:29:24
[2026-06-12 13:29:24,444.444 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 13:29:24,455.455 INFO    ] Checking for existing commands in stream...
[2026-06-12 13:29:24,526.526 INFO    ] No existing commands found in stream
[2026-06-12 13:29:29,540.540 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 13:29:29,543.543 INFO    ] Waiting 3.94 seconds before fallback handling...
[2026-06-12 13:29:33,840.840 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 13:29:33,842.842 INFO    ] Checking for system updates...
[2026-06-12 13:29:33,862.862 INFO    ] 200
[2026-06-12 13:29:33,863.863 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:29:33,893.893 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 13:29:33,894.894 INFO    ] No update needed
[2026-06-12 13:29:33,896.896 INFO    ] Checking for camera pi updates...
[2026-06-12 13:29:33,914.914 INFO    ] 200
[2026-06-12 13:29:33,916.916 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:29:33,940.940 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 13:29:33,996.996 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 13:29:33,997.997 INFO    ] No camera update needed
[2026-06-12 13:29:33,999.999 INFO    ] Script finished. Safe exiting...
[2026-06-12 13:29:34,000.000 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 13:29:34,003.003 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 13:29:34,006.006 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 13:29:36,045.045 INFO    ] ================================================
[2026-06-12 13:29:36,061.061 INFO    ] Launching Daemon at Fri Jun 12 13:29:36 IST 2026
[2026-06-12 13:29:36,073.073 INFO    ] ================================================
[2026-06-12 13:29:36,409.409 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 13:29:36
[2026-06-12 13:29:36,724.724 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 13:29:36,854.854 INFO    ] Initializing speech engine...
[2026-06-12 13:29:36,858.858 INFO    ] 2026-06-12 13:29:36
[2026-06-12 13:29:37,075.075 INFO    ] 2026-06-12 13:29:37
[2026-06-12 13:29:37,105.105 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 13:29:37,290.290 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 13:29:37,293.293 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 13:29:37,464.464 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 13:29:37,514.514 INFO    ] time= 12/06/2026 13:29:37
[2026-06-12 13:29:37,524.524 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 13:29:37,531.531 INFO    ] Checking for existing commands in stream...
[2026-06-12 13:29:37,598.598 INFO    ] No existing commands found in stream
[2026-06-12 13:29:42,607.607 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 13:29:42,610.610 INFO    ] Waiting 2.10 seconds before fallback handling...
[2026-06-12 13:29:45,067.067 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 13:29:45,068.068 INFO    ] Checking for system updates...
[2026-06-12 13:29:45,088.088 INFO    ] 200
[2026-06-12 13:29:45,090.090 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:29:45,118.118 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 13:29:45,120.120 INFO    ] No update needed
[2026-06-12 13:29:45,122.122 INFO    ] Checking for camera pi updates...
[2026-06-12 13:29:45,140.140 INFO    ] 200
[2026-06-12 13:29:45,142.142 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:29:45,164.164 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 13:29:45,222.222 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 13:29:45,223.223 INFO    ] No camera update needed
[2026-06-12 13:29:45,224.224 INFO    ] Script finished. Safe exiting...
[2026-06-12 13:29:45,226.226 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 13:29:45,228.228 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 13:29:45,231.231 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 13:29:47,262.262 INFO    ] ================================================
[2026-06-12 13:29:47,277.277 INFO    ] Launching Daemon at Fri Jun 12 13:29:47 IST 2026
[2026-06-12 13:29:47,289.289 INFO    ] ================================================
[2026-06-12 13:29:47,685.685 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 13:29:47
[2026-06-12 13:29:48,061.061 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 13:29:48,249.249 INFO    ] Initializing speech engine...
[2026-06-12 13:29:48,253.253 INFO    ] 2026-06-12 13:29:48
[2026-06-12 13:29:48,477.477 INFO    ] 2026-06-12 13:29:48
[2026-06-12 13:29:48,506.506 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 13:29:48,690.690 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 13:29:48,693.693 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 13:29:48,824.824 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 13:29:48,879.879 INFO    ] time= 12/06/2026 13:29:48
[2026-06-12 13:29:48,914.914 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 13:29:48,924.924 INFO    ] Checking for existing commands in stream...
[2026-06-12 13:29:48,996.996 INFO    ] No existing commands found in stream
[2026-06-12 13:29:54,005.005 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 13:29:54,008.008 INFO    ] Waiting 3.36 seconds before fallback handling...
[2026-06-12 13:29:57,661.661 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 13:29:57,663.663 INFO    ] Checking for system updates...
[2026-06-12 13:29:57,684.684 INFO    ] 200
[2026-06-12 13:29:57,685.685 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:29:57,718.718 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 13:29:57,719.719 INFO    ] No update needed
[2026-06-12 13:29:57,721.721 INFO    ] Checking for camera pi updates...
[2026-06-12 13:29:57,741.741 INFO    ] 200
[2026-06-12 13:29:57,742.742 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:29:57,765.765 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 13:29:57,853.853 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 13:29:57,854.854 INFO    ] No camera update needed
[2026-06-12 13:29:57,855.855 INFO    ] Script finished. Safe exiting...
[2026-06-12 13:29:57,856.856 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 13:29:57,860.860 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 13:29:57,862.862 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 13:29:59,899.899 INFO    ] ================================================
[2026-06-12 13:29:59,916.916 INFO    ] Launching Daemon at Fri Jun 12 13:29:59 IST 2026
[2026-06-12 13:29:59,927.927 INFO    ] ================================================
[2026-06-12 13:30:00,256.256 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 13:30:00
[2026-06-12 13:30:00,567.567 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 13:30:00,697.697 INFO    ] Initializing speech engine...
[2026-06-12 13:30:00,701.701 INFO    ] 2026-06-12 13:30:00
[2026-06-12 13:30:00,919.919 INFO    ] 2026-06-12 13:30:00
[2026-06-12 13:30:00,947.947 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 13:30:01,094.094 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 13:30:01,101.101 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 13:30:01,227.227 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 13:30:01,245.245 INFO    ] time= 12/06/2026 13:30:01
[2026-06-12 13:30:01,292.292 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 13:30:01,295.295 INFO    ] Checking for existing commands in stream...
[2026-06-12 13:30:01,369.369 INFO    ] No existing commands found in stream
[2026-06-12 13:30:06,379.379 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 13:30:06,382.382 INFO    ] Waiting 2.60 seconds before fallback handling...
[2026-06-12 13:30:09,325.325 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 13:30:09,327.327 INFO    ] Checking for system updates...
[2026-06-12 13:30:09,353.353 INFO    ] 200
[2026-06-12 13:30:09,356.356 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:30:09,410.410 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 13:30:09,413.413 INFO    ] No update needed
[2026-06-12 13:30:09,415.415 INFO    ] Checking for camera pi updates...
[2026-06-12 13:30:09,448.448 INFO    ] 200
[2026-06-12 13:30:09,449.449 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:30:09,472.472 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 13:30:09,533.533 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 13:30:09,534.534 INFO    ] No camera update needed
[2026-06-12 13:30:09,541.541 INFO    ] Script finished. Safe exiting...
[2026-06-12 13:30:09,543.543 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 13:30:09,546.546 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 13:30:09,549.549 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 13:30:11,590.590 INFO    ] ================================================
[2026-06-12 13:30:11,606.606 INFO    ] Launching Daemon at Fri Jun 12 13:30:11 IST 2026
[2026-06-12 13:30:11,617.617 INFO    ] ================================================
[2026-06-12 13:30:11,967.967 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 13:30:11
[2026-06-12 13:30:12,297.297 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 13:30:12,448.448 INFO    ] Initializing speech engine...
[2026-06-12 13:30:12,452.452 INFO    ] 2026-06-12 13:30:12
[2026-06-12 13:30:12,665.665 INFO    ] 2026-06-12 13:30:12
[2026-06-12 13:30:12,718.718 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 13:30:12,849.849 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 13:30:12,854.854 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 13:30:12,974.974 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 13:30:12,975.975 INFO    ] time= 12/06/2026 13:30:12
[2026-06-12 13:30:12,977.977 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 13:30:12,978.978 INFO    ] Checking for existing commands in stream...
[2026-06-12 13:30:13,060.060 INFO    ] No existing commands found in stream
[2026-06-12 13:30:18,087.087 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 13:30:18,090.090 INFO    ] Waiting 0.96 seconds before fallback handling...
[2026-06-12 13:30:19,395.395 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 13:30:19,397.397 INFO    ] Checking for system updates...
[2026-06-12 13:30:19,417.417 INFO    ] 200
[2026-06-12 13:30:19,418.418 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:30:19,448.448 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 13:30:19,449.449 INFO    ] No update needed
[2026-06-12 13:30:19,451.451 INFO    ] Checking for camera pi updates...
[2026-06-12 13:30:19,471.471 INFO    ] 200
[2026-06-12 13:30:19,472.472 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:30:19,495.495 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 13:30:19,634.634 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 13:30:19,636.636 INFO    ] No camera update needed
[2026-06-12 13:30:19,637.637 INFO    ] Script finished. Safe exiting...
[2026-06-12 13:30:19,638.638 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 13:30:19,641.641 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 13:30:19,644.644 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 13:30:21,675.675 INFO    ] ================================================
[2026-06-12 13:30:21,691.691 INFO    ] Launching Daemon at Fri Jun 12 13:30:21 IST 2026
[2026-06-12 13:30:21,702.702 INFO    ] ================================================
[2026-06-12 13:30:22,062.062 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 13:30:22
[2026-06-12 13:30:22,376.376 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 13:30:22,506.506 INFO    ] Initializing speech engine...
[2026-06-12 13:30:22,511.511 INFO    ] 2026-06-12 13:30:22
[2026-06-12 13:30:22,729.729 INFO    ] 2026-06-12 13:30:22
[2026-06-12 13:30:22,758.758 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 13:30:22,944.944 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 13:30:22,953.953 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 13:30:23,077.077 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 13:30:23,138.138 INFO    ] time= 12/06/2026 13:30:23
[2026-06-12 13:30:23,169.169 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 13:30:23,180.180 INFO    ] Checking for existing commands in stream...
[2026-06-12 13:30:23,275.275 INFO    ] No existing commands found in stream
[2026-06-12 13:30:28,299.299 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 13:30:28,302.302 INFO    ] Waiting 0.83 seconds before fallback handling...
[2026-06-12 13:30:29,518.518 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 13:30:29,519.519 INFO    ] Checking for system updates...
[2026-06-12 13:30:29,540.540 INFO    ] 200
[2026-06-12 13:30:29,541.541 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:30:29,571.571 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 13:30:29,573.573 INFO    ] No update needed
[2026-06-12 13:30:29,574.574 INFO    ] Checking for camera pi updates...
[2026-06-12 13:30:29,593.593 INFO    ] 200
[2026-06-12 13:30:29,595.595 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:30:29,622.622 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 13:30:29,665.665 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 13:30:29,666.666 INFO    ] No camera update needed
[2026-06-12 13:30:29,668.668 INFO    ] Script finished. Safe exiting...
[2026-06-12 13:30:29,669.669 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 13:30:29,672.672 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 13:30:29,675.675 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 13:30:31,709.709 INFO    ] ================================================
[2026-06-12 13:30:31,719.719 INFO    ] Launching Daemon at Fri Jun 12 13:30:31 IST 2026
[2026-06-12 13:30:31,726.726 INFO    ] ================================================
[2026-06-12 13:30:32,057.057 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 13:30:32
[2026-06-12 13:30:32,390.390 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 13:30:32,519.519 INFO    ] Initializing speech engine...
[2026-06-12 13:30:32,524.524 INFO    ] 2026-06-12 13:30:32
[2026-06-12 13:30:32,742.742 INFO    ] 2026-06-12 13:30:32
[2026-06-12 13:30:32,771.771 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 13:30:32,956.956 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 13:30:32,964.964 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 13:30:33,088.088 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 13:30:33,149.149 INFO    ] time= 12/06/2026 13:30:33
[2026-06-12 13:30:33,183.183 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 13:30:33,189.189 INFO    ] Checking for existing commands in stream...
[2026-06-12 13:30:33,285.285 INFO    ] Found 1 existing command(s) in stream
[2026-06-12 13:30:33,287.287 INFO    ] Checking historical command: ID=1781251223291-0
[2026-06-12 13:30:33,312.312 INFO    ] process_and_cleanup_command: msg_id=1781251223291-0
[2026-06-12 13:30:33,315.315 INFO    ] is_command_expired: timestamp=2026-06-12T08:00:22.849Z, expiry=30s
[2026-06-12 13:30:33,400.400 INFO    ] Command removed from stream: 1781251223291-0. returning for processing...
[2026-06-12 13:30:33,403.403 INFO    ] ***** get_valid_command
[2026-06-12 13:30:33,405.405 INFO    ] {'source': 'webapp', 'timestamp': '2026-06-12T08:00:22.849Z', 'data': '{"request_id":"start-order-1781251222849-k2dayrtqp","orderId":"TM09202301260612132936706","is_vending":false}', 'command': 'start-order', 'timeout': '10'}
[2026-06-12 13:30:33,410.410 INFO    ] ***** Parsed command data: {'request_id': 'start-order-1781251222849-k2dayrtqp', 'is_vending': False, 'orderId': 'TM09202301260612132936706'}
[2026-06-12 13:30:33,414.414 INFO    ] Handling start order...
[2026-06-12 13:30:33,417.417 INFO    ] handle_start_order_command
[2026-06-12 13:30:33,423.423 INFO    ] _send_start_order_success: request_id=start-order-1781251222849-k2dayrtqp, order_id=TM09202301260612132936706
[2026-06-12 13:30:33,426.426 INFO    ] [_send_start_order_success] Adding message to stream: machine:TM09202301
[2026-06-12 13:30:33,488.488 INFO    ] [_send_start_order_success] Message added to stream with ID: 1781251233502-0
[2026-06-12 13:30:33,492.492 INFO    ] ✅ Start-order command succeeded - order locked, waiting for process-order command
[2026-06-12 13:30:33,497.497 INFO    ] Checking for system updates...
[2026-06-12 13:30:33,524.524 INFO    ] 200
[2026-06-12 13:30:33,527.527 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:30:33,568.568 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 13:30:33,570.570 INFO    ] No update needed
[2026-06-12 13:30:33,572.572 INFO    ] Checking for camera pi updates...
[2026-06-12 13:30:33,634.634 INFO    ] 200
[2026-06-12 13:30:33,637.637 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:30:33,690.690 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 13:30:33,763.763 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 13:30:33,767.767 INFO    ] No camera update needed
[2026-06-12 13:30:33,772.772 INFO    ] Script finished. Safe exiting...
[2026-06-12 13:30:33,775.775 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 13:30:33,783.783 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 13:30:33,789.789 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-06-12 13:30:33,795.795 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 13:30:35,829.829 INFO    ] ================================================
[2026-06-12 13:30:35,844.844 INFO    ] Launching Daemon at Fri Jun 12 13:30:35 IST 2026
[2026-06-12 13:30:35,855.855 INFO    ] ================================================
[2026-06-12 13:30:36,219.219 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 13:30:36
[2026-06-12 13:30:36,555.555 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 13:30:36,707.707 INFO    ] Initializing speech engine...
[2026-06-12 13:30:36,711.711 INFO    ] 2026-06-12 13:30:36
[2026-06-12 13:30:36,917.917 INFO    ] 2026-06-12 13:30:36
[2026-06-12 13:30:36,945.945 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 13:30:37,127.127 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 13:30:37,137.137 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 13:30:37,265.265 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 13:30:37,333.333 INFO    ] time= 12/06/2026 13:30:37
[2026-06-12 13:30:37,356.356 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 13:30:37,363.363 INFO    ] Checking for existing commands in stream...
[2026-06-12 13:30:37,431.431 INFO    ] Found 2 existing command(s) in stream
[2026-06-12 13:30:37,448.448 INFO    ] Checking historical command: ID=1781251233502-0
[2026-06-12 13:30:37,457.457 INFO    ] process_and_cleanup_command: msg_id=1781251233502-0
[2026-06-12 13:30:37,464.464 INFO    ] is_command_expired: timestamp=2026-06-12T08:00:33.424468Z, expiry=30s
[2026-06-12 13:30:37,569.569 INFO    ] Command removed from stream: 1781251233502-0. returning for processing...
[2026-06-12 13:30:37,572.572 INFO    ] ***** get_valid_command
[2026-06-12 13:30:37,576.576 INFO    ] {'message': 'start-order success', 'metadata_order_id': 'TM09202301260612132936706', 'metadata_request_id': 'start-order-1781251222849-k2dayrtqp', 'status': 'success', 'message_type': 'command_response', 'imei': 'TM09202301', 'timestamp': '2026-06-12T08:00:33.424468Z'}
[2026-06-12 13:30:37,580.580 INFO    ] Checking historical command: ID=1781251235373-0
[2026-06-12 13:30:37,584.584 INFO    ] process_and_cleanup_command: msg_id=1781251235373-0
[2026-06-12 13:30:37,586.586 INFO    ] is_command_expired: timestamp=2026-06-12T08:00:34.853Z, expiry=30s
[2026-06-12 13:30:37,646.646 INFO    ] Command removed from stream: 1781251235373-0. returning for processing...
[2026-06-12 13:30:37,650.650 INFO    ] ***** get_valid_command
[2026-06-12 13:30:37,654.654 INFO    ] {'data': '{"request_id":"process-order-1781251234852-cd1abuzxl","orderId":"TM09202301260612132936706","is_vending":false,"accessCode":"39133955"}', 'timeout': '60', 'command': 'process-order', 'source': 'webapp', 'timestamp': '2026-06-12T08:00:34.853Z'}
[2026-06-12 13:30:37,657.657 INFO    ] ***** Parsed command data: {'is_vending': False, 'request_id': 'process-order-1781251234852-cd1abuzxl', 'accessCode': '39133955', 'orderId': 'TM09202301260612132936706'}
[2026-06-12 13:30:37,661.661 INFO    ] Handling process order...
[2026-06-12 13:30:37,665.665 INFO    ] Processing process-order command...
[2026-06-12 13:30:37,669.669 INFO    ] 🔍 Lock file Order ID: TM09202301260612132936706, TS: 2026-06-12 13:30:33
[2026-06-12 13:30:37,679.679 INFO    ] ✅ Order lock valid for TM09202301260612132936706
[2026-06-12 13:30:37,683.683 INFO    ] Received access code in process-order, skipping PHP API call
[2026-06-12 13:30:37,687.687 INFO    ] processing access code 39133955 for order TM09202301260612132936706
[2026-06-12 13:30:37,692.692 INFO    ] 🔍 Lock file Order ID: TM09202301260612132936706, TS: 2026-06-12 13:30:33
[2026-06-12 13:30:37,696.696 INFO    ] ✅ Order lock valid for TM09202301260612132936706
[2026-06-12 13:30:37,700.700 INFO    ] 2026-06-12 13:30:37
[2026-06-12 13:30:37,726.726 INFO    ] 200
[2026-06-12 13:30:37,727.727 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:30:37,728.728 INFO    ] 39133955
[2026-06-12 13:30:37,730.730 INFO    ] 2026-06-12 13:30:37
[2026-06-12 13:30:37,734.734 INFO    ] session id :987040605
[2026-06-12 13:30:37,737.737 INFO    ] http://localhost:5000/v2/getOrderByAccessCode?access_code=39133955&imei=TM09202301&session_id=987040605
[2026-06-12 13:30:39,454.454 INFO    ] 200
[2026-06-12 13:30:39,456.456 INFO    ] {"status": true, "msg": "Order Data", "data": {"bill_amount": "10", "access_code": "39133955", "order_id": "TM09202301260612132936706", "mobile": "9431111135", "proposed_sku_json": [{"unit_price": 10, "qty": 1, "skuid": "4500648", "offer_desc": "", "offer_id": "", "door_id": "1", "tray_id": "11", "sku_total": 10, "mrp": "10", "image_url": "https://images.tinymart.in/product/4500648-25.webp", "name": "Modern kitchens Banana Chips 21gm"}], "invoice_bill": "10"}, "rstatus": true}
[2026-06-12 13:30:39,457.457 INFO    ] 10
[2026-06-12 13:30:39,458.458 INFO    ] TM09202301260612132936706
[2026-06-12 13:30:39,460.460 INFO    ] 9431111135
[2026-06-12 13:30:39,461.461 INFO    ] 2026-06-12 13:30:39
[2026-06-12 13:30:39,462.462 INFO    ] Door Opening for user mobile ending with  one one three five 
[2026-06-12 13:30:39,464.464 INFO    ] Door Opening for user mobile ending with  one one three five 
[2026-06-12 13:30:39,465.465 INFO    ] 9dc70be4aa9e5eb6ec36a7c9670f2e50
[2026-06-12 13:30:39,471.471 INFO    ] 2026-06-12 13:30:39
[2026-06-12 13:30:39,472.472 INFO    ] playing audio file
[2026-06-12 13:30:39,481.481 INFO    ] 2026-06-12 13:30:39
[2026-06-12 13:30:39,483.483 INFO    ] 2026-06-12 13:30:39
[2026-06-12 13:30:39,485.485 INFO    ] publish_status: order_id=TM09202301260612132936706
[2026-06-12 13:30:39,487.487 INFO    ] [publish_status] Adding message to stream: order:TM09202301260612132936706
[2026-06-12 13:30:39,567.567 INFO    ] [publish_status] Message added to stream with ID: 1781251239584-0
[2026-06-12 13:30:39,569.569 INFO    ] Published to order:TM09202301260612132936706: {'server_response': '{"data": {"invoice_bill": "10", "bill_amount": "10", "mobile": "9431111135", "access_code": "39133955", "order_id": "TM09202301260612132936706", "proposed_sku_json": [{"mrp": "10", "offer_desc": "", "skuid": "4500648", "image_url": "https://images.tinymart.in/product/4500648-25.webp", "sku_total": 10, "qty": 1, "unit_price": 10, "door_id": "1", "offer_id": "", "tray_id": "11", "name": "Modern kitchens Banana Chips 21gm"}]}, "status": true, "rstatus": true, "msg": "Order Data"}', 'timestamp': '2026-06-12T08:00:39.484254Z', 'order_id': 'TM09202301260612132936706', 'server_status': 'order-started'} (ID: 1781251239584-0)
[2026-06-12 13:30:39,905.905 INFO    ] {'server_response': {'data': {'invoice_bill': '10', 'bill_amount': '10', 'mobile': '9431111135', 'access_code': '39133955', 'order_id': 'TM09202301260612132936706', 'proposed_sku_json': [{'mrp': '10', 'offer_desc': '', 'skuid': '4500648', 'image_url': 'https://images.tinymart.in/product/4500648-25.webp', 'sku_total': 10, 'qty': 1, 'unit_price': 10, 'door_id': '1', 'offer_id': '', 'tray_id': '11', 'name': 'Modern kitchens Banana Chips 21gm'}]}, 'status': True, 'rstatus': True, 'msg': 'Order Data'}, 'order_id': 'TM09202301260612132936706', 'server_status': 'order-started'}
[2026-06-12 13:30:39,907.907 INFO    ] 200
[2026-06-12 13:30:39,908.908 INFO    ] {"data":{"server_response":{"data":{"invoice_bill":"10","bill_amount":"10","mobile":"9431111135","access_code":"39133955","order_id":"TM09202301260612132936706","proposed_sku_json":[{"mrp":"10","offer_desc":"","skuid":"4500648","image_url":"https:\/\/images.tinymart.in\/product\/4500648-25.webp","sku_total":10,"qty":1,"unit_price":10,"door_id":"1","offer_id":"","tray_id":"11","name":"Modern kitchens Banana Chips 21gm"}]},"status":true,"rstatus":true,"msg":"Order Data"},"order_id":"TM09202301260612132936706","server_status":"order-started"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-12 13:30:39,909.909 INFO    ] {'data': {'server_response': {'data': {'mobile': '9431111135', 'bill_amount': '10', 'invoice_bill': '10', 'access_code': '39133955', 'order_id': 'TM09202301260612132936706', 'proposed_sku_json': [{'offer_desc': '', 'sku_total': 10, 'name': 'Modern kitchens Banana Chips 21gm', 'tray_id': '11', 'image_url': 'https://images.tinymart.in/product/4500648-25.webp', 'qty': 1, 'door_id': '1', 'mrp': '10', 'unit_price': 10, 'skuid': '4500648', 'offer_id': ''}]}, 'status': True, 'rstatus': True, 'msg': 'Order Data'}, 'order_id': 'TM09202301260612132936706', 'server_status': 'order-started'}, 'response': {'data': 'order updated successfully', 'status': True, 'code': 'ORDER_EXISTS', 'msg': 'order updated successfully'}}
[2026-06-12 13:30:39,911.911 INFO    ] 2026-06-12 13:30:39
[2026-06-12 13:30:39,935.935 INFO    ] 200
[2026-06-12 13:30:39,937.937 INFO    ] True
[2026-06-12 13:30:40,032.032 INFO    ] 200
[2026-06-12 13:30:40,033.033 INFO    ] {"error": {"tmessage": "In Progress", "umessage": "In Progress", "data": {}, "code": 20001}, "SectionSKU": {"Header": "Thank you for bearing with us :)", "skus": []}, "rstatus": false, "SectionStatus": {"Header": " Your order is under process  ", "SubHeader": "Please wait while we process your order", "UI_Header": "", "Note": ""}, "status": "False", "voiceNote": "Please Wait", "SectionMain": {"Header": "Processing Order"}}
[2026-06-12 13:30:40,035.035 INFO    ] {'SectionSKU': {'Header': 'Thank you for bearing with us :)', 'skus': []}, 'SectionMain': {'Header': 'Processing Order'}, 'status': 'False', 'rstatus': False, 'error': {'tmessage': 'In Progress', 'umessage': 'In Progress', 'data': {}, 'code': 20001}, 'SectionStatus': {'Header': ' Your order is under process  ', 'Note': '', 'UI_Header': '', 'SubHeader': 'Please wait while we process your order'}, 'voiceNote': 'Please Wait'}
[2026-06-12 13:30:40,037.037 INFO    ] *** process_order ***
[2026-06-12 13:30:41,243.243 INFO    ] 200
[2026-06-12 13:30:41,244.244 INFO    ] {"delay": 0, "SectionSKU": {"Header": "Thank you for bearing with us :)", "skus": []}, "rstatus": true, "SectionStatus": {"Header": " Your order is under process  ", "SubHeader": "Please wait while we process your order", "UI_Header": "", "Note": ""}, "status": "True", "voiceNote": "Please Wait", "SectionMain": {"Header": "Processing Order"}}
[2026-06-12 13:30:41,246.246 INFO    ] {'rstatus': True, 'SectionSKU': {'Header': 'Thank you for bearing with us :)', 'skus': []}, 'SectionMain': {'Header': 'Processing Order'}, 'delay': 0, 'status': 'True', 'SectionStatus': {'Header': ' Your order is under process  ', 'Note': '', 'UI_Header': '', 'SubHeader': 'Please wait while we process your order'}, 'voiceNote': 'Please Wait'}
[2026-06-12 13:30:41,247.247 INFO    ] *** process_order ***
[2026-06-12 13:30:41,249.249 INFO    ] publish_status: order_id=TM09202301260612132936706
[2026-06-12 13:30:41,250.250 INFO    ] [publish_status] Adding message to stream: order:TM09202301260612132936706
[2026-06-12 13:30:41,343.343 INFO    ] [publish_status] Message added to stream with ID: 1781251241361-0
[2026-06-12 13:30:41,345.345 INFO    ] Published to order:TM09202301260612132936706: {'server_response': '{"delay": 0, "SectionSKU": {"Header": "Thank you for bearing with us :)", "skus": []}, "status": "True", "rstatus": true, "SectionMain": {"Header": "Processing Order"}, "SectionStatus": {"Header": " Your order is under process  ", "Note": "", "UI_Header": "", "SubHeader": "You can pull the door now."}, "voiceNote": "Door is open..."}', 'order_id': 'TM09202301260612132936706', 'server_status': 'doorOpened'} (ID: 1781251241361-0)
[2026-06-12 13:30:42,396.396 INFO    ] 2026-06-12 13:30:42
[2026-06-12 13:30:42,400.400 INFO    ] publish_status: order_id=TM09202301260612132936706
[2026-06-12 13:30:42,404.404 INFO    ] [publish_status] Adding message to stream: order:TM09202301260612132936706
[2026-06-12 13:30:42,478.478 INFO    ] [publish_status] Message added to stream with ID: 1781251242494-0
[2026-06-12 13:30:42,479.479 INFO    ] Published to order:TM09202301260612132936706: {'server_response': '{"rstatus": true, "SectionSKU": {"Header": "Thank you for bearing with us :)", "skus": []}, "SectionMain": {"Header": "Processing Order"}, "delay": 0, "status": "True", "SectionStatus": {"Header": " Your order is under process  ", "Note": "", "UI_Header": "", "SubHeader": "Please wait while we process your order"}, "voiceNote": "Please Wait"}', 'timestamp': '2026-06-12T08:00:42.398319Z', 'order_id': 'TM09202301260612132936706', 'server_status': 'processOrder'} (ID: 1781251242494-0)
[2026-06-12 13:30:42,590.590 INFO    ] {'server_response': {'rstatus': True, 'SectionSKU': {'Header': 'Thank you for bearing with us :)', 'skus': []}, 'SectionMain': {'Header': 'Processing Order'}, 'delay': 0, 'status': 'True', 'SectionStatus': {'Header': ' Your order is under process  ', 'Note': '', 'UI_Header': '', 'SubHeader': 'Please wait while we process your order'}, 'voiceNote': 'Please Wait'}, 'order_id': 'TM09202301260612132936706', 'server_status': 'processOrder'}
[2026-06-12 13:30:42,592.592 INFO    ] 200
[2026-06-12 13:30:42,593.593 INFO    ] {"data":{"server_response":{"rstatus":true,"SectionSKU":{"Header":"Thank you for bearing with us :)","skus":[]},"SectionMain":{"Header":"Processing Order"},"delay":0,"status":"true","SectionStatus":{"Header":" Your order is under process  ","Note":"","UI_Header":"","SubHeader":"Please wait while we process your order"},"voiceNote":"Please Wait"},"order_id":"TM09202301260612132936706","server_status":"processOrder"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-12 13:30:42,594.594 INFO    ] {'data': {'server_response': {'delay': 0, 'SectionSKU': {'Header': 'Thank you for bearing with us :)', 'skus': []}, 'status': 'true', 'rstatus': True, 'SectionMain': {'Header': 'Processing Order'}, 'SectionStatus': {'Header': ' Your order is under process  ', 'Note': '', 'UI_Header': '', 'SubHeader': 'Please wait while we process your order'}, 'voiceNote': 'Please Wait'}, 'order_id': 'TM09202301260612132936706', 'server_status': 'processOrder'}, 'response': {'data': 'order updated successfully', 'status': True, 'code': 'ORDER_EXISTS', 'msg': 'order updated successfully'}}
[2026-06-12 13:30:42,596.596 INFO    ] 2026-06-12 13:30:42
[2026-06-12 13:30:42,598.598 INFO    ] None
[2026-06-12 13:30:42,599.599 INFO    ] Opening Door now
[2026-06-12 13:30:42,600.600 INFO    ] Opening Door now
[2026-06-12 13:30:42,602.602 INFO    ] 08e5d1063504bf393c26f0bfa436e9f9
[2026-06-12 13:30:42,603.603 INFO    ] 2026-06-12 13:30:42
[2026-06-12 13:30:42,604.604 INFO    ] playing audio file
[2026-06-12 13:30:42,614.614 INFO    ] 2026-06-12 13:30:42
[2026-06-12 13:30:42,616.616 INFO    ] 2026-06-12 13:30:42
[2026-06-12 13:30:45,655.655 INFO    ] 200
[2026-06-12 13:30:45,657.657 INFO    ] {"error": {"tmessage": "In Progress", "umessage": "In Progress", "data": {}, "code": 20001}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"name": "Modern kitchens Banana Chips 21gm", "qty": 1}]}, "rstatus": false, "SectionStatus": {"Header": "Please Close Door 1", "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"}, "status": "False", "voiceNote": "Door 1 is open now", "SectionMain": {"Header": "Door Open"}}
[2026-06-12 13:30:45,659.659 INFO    ] {'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'Modern kitchens Banana Chips 21gm'}]}, 'SectionMain': {'Header': 'Door Open'}, 'status': 'False', 'rstatus': False, 'error': {'tmessage': 'In Progress', 'umessage': 'In Progress', 'data': {}, 'code': 20001}, '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'}, 'voiceNote': 'Door 1 is open now'}
[2026-06-12 13:30:48,822.822 INFO    ] 200
[2026-06-12 13:30:48,824.824 INFO    ] {"error": {"tmessage": "In Progress", "umessage": "In Progress", "data": {}, "code": 20001}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"name": "Modern kitchens Banana Chips 21gm", "qty": 1}]}, "rstatus": false, "SectionStatus": {"Header": "Please Close Door 1", "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"}, "status": "False", "voiceNote": "Please close door 1", "SectionMain": {"Header": "Door Open"}}
[2026-06-12 13:30:48,826.826 INFO    ] {'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'Modern kitchens Banana Chips 21gm'}]}, 'SectionMain': {'Header': 'Door Open'}, 'status': 'False', 'rstatus': False, 'error': {'tmessage': 'In Progress', 'umessage': 'In Progress', 'data': {}, 'code': 20001}, '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'}, 'voiceNote': 'Please close door 1'}
[2026-06-12 13:30:51,865.865 INFO    ] 200
[2026-06-12 13:30:51,866.866 INFO    ] {"error": {"tmessage": "In Progress", "umessage": "In Progress", "data": {}, "code": 20001}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"name": "Modern kitchens Banana Chips 21gm", "qty": 1}]}, "rstatus": false, "SectionStatus": {"Header": "Please Close Door 1", "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"}, "status": "False", "voiceNote": "Please close door 1", "SectionMain": {"Header": "Door Open"}}
[2026-06-12 13:30:51,868.868 INFO    ] Please close door 1
[2026-06-12 13:30:51,870.870 INFO    ] Please close door 1
[2026-06-12 13:30:51,871.871 INFO    ] 787c302d53ab591e55c034b99c7aadd2
[2026-06-12 13:30:51,877.877 INFO    ] 2026-06-12 13:30:51
[2026-06-12 13:30:51,879.879 INFO    ] playing audio file
[2026-06-12 13:30:51,888.888 INFO    ] 2026-06-12 13:30:51
[2026-06-12 13:30:51,891.891 INFO    ] publish_status: order_id=TM09202301260612132936706
[2026-06-12 13:30:51,893.893 INFO    ] [publish_status] Adding message to stream: order:TM09202301260612132936706
[2026-06-12 13:30:51,988.988 INFO    ] [publish_status] Message added to stream with ID: 1781251252005-0
[2026-06-12 13:30:51,989.989 INFO    ] Published to order:TM09202301260612132936706: {'server_response': '{"SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "Modern kitchens Banana Chips 21gm"}]}, "SectionMain": {"Header": "Door Open"}, "status": "False", "rstatus": false, "error": {"tmessage": "In Progress", "umessage": "In Progress", "data": {}, "code": 20001}, "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"}, "voiceNote": "Please close door 1"}', 'timestamp': '2026-06-12T08:00:51.889858Z', 'order_id': 'TM09202301260612132936706', 'server_status': 'OrderStatus'} (ID: 1781251252005-0)
[2026-06-12 13:30:52,391.391 INFO    ] {'server_response': {'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'Modern kitchens Banana Chips 21gm'}]}, 'SectionMain': {'Header': 'Door Open'}, 'status': 'False', 'rstatus': False, 'error': {'tmessage': 'In Progress', 'umessage': 'In Progress', 'data': {}, 'code': 20001}, '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'}, 'voiceNote': 'Please close door 1'}, 'order_id': 'TM09202301260612132936706', 'server_status': 'OrderStatus'}
[2026-06-12 13:30:52,392.392 INFO    ] 200
[2026-06-12 13:30:52,393.393 INFO    ] {"data":{"server_response":{"SectionSKU":{"Header":"Pick the below items from the door","skus":[{"qty":1,"name":"Modern kitchens Banana Chips 21gm"}]},"SectionMain":{"Header":"Door Open"},"status":"false","rstatus":false,"error":{"tmessage":"In Progress","umessage":"In Progress","data":[],"code":20001},"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"},"voiceNote":"Please close door 1"},"order_id":"TM09202301260612132936706","server_status":"OrderStatus"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-12 13:30:52,395.395 INFO    ] {'data': {'server_response': {'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'Modern kitchens Banana Chips 21gm'}]}, 'status': 'false', 'rstatus': False, 'SectionMain': {'Header': 'Door Open'}, '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': {'tmessage': 'In Progress', 'umessage': 'In Progress', 'data': [], 'code': 20001}, 'voiceNote': 'Please close door 1'}, 'order_id': 'TM09202301260612132936706', 'server_status': 'OrderStatus'}, 'response': {'data': 'order updated successfully', 'status': True, 'code': 'ORDER_EXISTS', 'msg': 'order updated successfully'}}
[2026-06-12 13:30:52,397.397 INFO    ] {'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'Modern kitchens Banana Chips 21gm'}]}, 'SectionMain': {'Header': 'Door Open'}, 'status': 'False', 'rstatus': False, 'error': {'tmessage': 'In Progress', 'umessage': 'In Progress', 'data': {}, 'code': 20001}, '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'}, 'voiceNote': 'Please close door 1'}
[2026-06-12 13:30:55,425.425 INFO    ] 200
[2026-06-12 13:30:55,427.427 INFO    ] {"delay": 100, "SectionSKU": {"Header": "If you like us, tell others... else tell us", "skus": []}, "rstatus": true, "SectionStatus": {"Header": " Order is complete ", "SubHeader": "Please wait for invoice to generate", "UI_Header": "", "Note": "If any due amount, clear at https://go.tinymart.in"}, "status": "True", "voiceNote": "Transaction Completed", "SectionMain": {"Header": "Door Closed"}}
[2026-06-12 13:30:55,428.428 INFO    ] {'rstatus': True, 'SectionSKU': {'Header': 'If you like us, tell others... else tell us', 'skus': []}, 'SectionMain': {'Header': 'Door Closed'}, 'delay': 100, 'status': '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'}, 'voiceNote': 'Transaction Completed'}
[2026-06-12 13:30:55,430.430 INFO    ] 2026-06-12 13:30:55
[2026-06-12 13:30:55,431.431 INFO    ] Order Completed 
[2026-06-12 13:30:55,432.432 INFO    ] Order Completed 
[2026-06-12 13:30:55,434.434 INFO    ] 193c8a8cf3bf490ccfe0b23598544a83
[2026-06-12 13:30:55,435.435 INFO    ] 2026-06-12 13:30:55
[2026-06-12 13:30:55,436.436 INFO    ] playing audio file
[2026-06-12 13:30:55,446.446 INFO    ] 2026-06-12 13:30:55
[2026-06-12 13:30:55,448.448 INFO    ] {'rstatus': True, 'SectionSKU': {'Header': 'If you like us, tell others... else tell us', 'skus': []}, 'SectionMain': {'Header': 'Door Closed'}, 'delay': 100, 'status': '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'}, 'voiceNote': 'Transaction Completed'}
[2026-06-12 13:30:55,450.450 INFO    ] 2026-06-12 13:30:55
[2026-06-12 13:30:56,146.146 INFO    ] 200
[2026-06-12 13:30:56,175.175 INFO    ] {"anomaly": 0, "skus": [{"image_url": "https://images.tinymart.in/product/4500648-25.webp", "qty": 1, "skuid": "4500648", "unit_price": "10", "tray_id": "14", "sku_total": 10.0, "mrp": "10", "door_id": "", "name": "Modern kitchens Banana Chips 21gm per peice"}], "total_amount": 10.0, "orderId": "TM09202301260612132936706", "res": "True", "rstatus": true, "logic": "WBL"}
[2026-06-12 13:30:56,179.179 INFO    ] {'anomaly': 0, 'logic': 'WBL', 'rstatus': True, 'skus': [{'mrp': '10', 'name': 'Modern kitchens Banana Chips 21gm per peice', 'skuid': '4500648', 'unit_price': '10', 'qty': 1, 'sku_total': 10.0, 'image_url': 'https://images.tinymart.in/product/4500648-25.webp', 'tray_id': '14', 'door_id': ''}], 'res': 'True', 'total_amount': 10.0, 'orderId': 'TM09202301260612132936706'}
[2026-06-12 13:30:56,182.182 INFO    ] {'anomaly': 0, 'logic': 'WBL', 'rstatus': True, 'skus': [{'mrp': '10', 'name': 'Modern kitchens Banana Chips 21gm per peice', 'skuid': '4500648', 'unit_price': '10', 'qty': 1, 'sku_total': 10.0, 'image_url': 'https://images.tinymart.in/product/4500648-25.webp', 'tray_id': '14', 'door_id': ''}], 'res': 'True', 'total_amount': 10.0, 'orderId': 'TM09202301260612132936706'}
[2026-06-12 13:30:56,185.185 INFO    ] 2026-06-12 13:30:56
[2026-06-12 13:30:56,187.187 INFO    ] 2026-06-12 13:30:56
[2026-06-12 13:30:56,190.190 INFO    ] 10
[2026-06-12 13:30:56,193.193 INFO    ] 2026-06-12 13:30:56
[2026-06-12 13:30:56,196.196 INFO    ] 2026-06-12 13:30:56
[2026-06-12 13:30:56,198.198 INFO    ]  Your Bill Amount is 10
[2026-06-12 13:30:56,200.200 INFO    ]  Your Bill Amount is 10
[2026-06-12 13:30:56,203.203 INFO    ] 85bfbe5b6a8f89327a526d08bc1ad1da
[2026-06-12 13:30:56,210.210 INFO    ] 2026-06-12 13:30:56
[2026-06-12 13:30:56,213.213 INFO    ] playing audio file
[2026-06-12 13:30:56,230.230 INFO    ] 2026-06-12 13:30:56
[2026-06-12 13:30:56,233.233 INFO    ] 2026-06-12 13:30:56
[2026-06-12 13:30:56,237.237 INFO    ] publish_status: order_id=TM09202301260612132936706
[2026-06-12 13:30:56,240.240 INFO    ] [publish_status] Adding message to stream: order:TM09202301260612132936706
[2026-06-12 13:30:56,298.298 INFO    ] [publish_status] Message added to stream with ID: 1781251256315-0
[2026-06-12 13:30:56,300.300 INFO    ] Published to order:TM09202301260612132936706: {'server_response': '{"anomaly": 0, "logic": "WBL", "rstatus": true, "skus": [{"mrp": "10", "name": "Modern kitchens Banana Chips 21gm per peice", "skuid": "4500648", "unit_price": "10", "qty": 1, "sku_total": 10.0, "image_url": "https://images.tinymart.in/product/4500648-25.webp", "tray_id": "14", "door_id": ""}], "res": "True", "total_amount": 10.0, "orderId": "TM09202301260612132936706"}', 'timestamp': '2026-06-12T08:00:56.235333Z', 'order_id': 'TM09202301260612132936706', 'server_status': 'invoiceOrder'} (ID: 1781251256315-0)
[2026-06-12 13:30:57,157.157 INFO    ] {'server_response': {'anomaly': 0, 'logic': 'WBL', 'rstatus': True, 'skus': [{'mrp': '10', 'name': 'Modern kitchens Banana Chips 21gm per peice', 'skuid': '4500648', 'unit_price': '10', 'qty': 1, 'sku_total': 10.0, 'image_url': 'https://images.tinymart.in/product/4500648-25.webp', 'tray_id': '14', 'door_id': ''}], 'res': 'True', 'total_amount': 10.0, 'orderId': 'TM09202301260612132936706'}, 'order_id': 'TM09202301260612132936706', 'server_status': 'invoiceOrder'}
[2026-06-12 13:30:57,161.161 INFO    ] 200
[2026-06-12 13:30:57,167.167 INFO    ] {"data":{"server_response":{"anomaly":0,"logic":"WBL","rstatus":true,"skus":[{"mrp":"10","name":"Modern kitchens Banana Chips 21gm per peice","skuid":"4500648","unit_price":"10","qty":1,"sku_total":10,"image_url":"https:\/\/images.tinymart.in\/product\/4500648-25.webp","tray_id":"14","door_id":""}],"res":"true","total_amount":10,"orderId":"TM09202301260612132936706"},"order_id":"TM09202301260612132936706","server_status":"invoiceOrder"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-12 13:30:57,170.170 INFO    ] {'data': {'server_response': {'anomaly': 0, 'logic': 'WBL', 'rstatus': True, 'skus': [{'image_url': 'https://images.tinymart.in/product/4500648-25.webp', 'name': 'Modern kitchens Banana Chips 21gm per peice', 'skuid': '4500648', 'qty': 1, 'unit_price': '10', 'sku_total': 10, 'mrp': '10', 'tray_id': '14', 'door_id': ''}], 'res': 'true', 'total_amount': 10, 'orderId': 'TM09202301260612132936706'}, 'order_id': 'TM09202301260612132936706', 'server_status': 'invoiceOrder'}, 'response': {'data': 'order updated successfully', 'status': True, 'code': 'ORDER_EXISTS', 'msg': 'order updated successfully'}}
[2026-06-12 13:30:57,173.173 INFO    ] {'data': {'server_response': {'anomaly': 0, 'logic': 'WBL', 'rstatus': True, 'skus': [{'image_url': 'https://images.tinymart.in/product/4500648-25.webp', 'name': 'Modern kitchens Banana Chips 21gm per peice', 'skuid': '4500648', 'qty': 1, 'unit_price': '10', 'sku_total': 10, 'mrp': '10', 'tray_id': '14', 'door_id': ''}], 'res': 'true', 'total_amount': 10, 'orderId': 'TM09202301260612132936706'}, 'order_id': 'TM09202301260612132936706', 'server_status': 'invoiceOrder'}, 'response': {'data': 'order updated successfully', 'status': True, 'code': 'ORDER_EXISTS', 'msg': 'order updated successfully'}}
[2026-06-12 13:30:57,175.175 INFO    ] 2026-06-12 13:30:57
[2026-06-12 13:31:02,198.198 INFO    ] 200
[2026-06-12 13:31:02,201.201 INFO    ] {"order_items": [], "tray_sync": ["TM09202301260612132936706", "TM09202301260612132936706", "TM09202301260612132936706", "TM09202301260612132936706", "TM09202301260612132936706", "TM09202301260612132936706"], "orders": [], "order_items_synced": [], "orders_synced": [], "orders_data_synced": [], "status": true, "orders_data": [], "tray_synced": ["TM09202301260612132936706", "TM09202301260612132936706", "TM09202301260612132936706", "TM09202301260612132936706", "TM09202301260612132936706", "TM09202301260612132936706", "TM09202301260612132936706", "TM09202301260612132936706", "TM09202301260612132936706", "TM09202301260612132936706", "TM09202301260612132936706", "TM09202301260612132936706", "TM09202301260612132936706", "TM09202301260612132936706", "TM09202301260612132936706", "TM09202301260612132936706", "TM09202301260612132936706", "TM09202301260612132936706", "TM09202301260612132936706", "TM09202301260612132936706", "TM09202301260612132936706", "TM09202301260612132936706", "TM09202301260612132936706", "TM09202301260612132936706", "TM09202301260612132936706", "TM09202301260612132936706", "TM09202301260612132936706"]}
[2026-06-12 13:31:02,204.204 INFO    ] 2026-06-12 13:31:02
[2026-06-12 13:31:02,288.288 INFO    ] 200
[2026-06-12 13:31:02,290.290 INFO    ] True
[2026-06-12 13:31:02,293.293 INFO    ] cleanup_start_order_file_after_processing: order_id=TM09202301260612132936706
[2026-06-12 13:31:02,465.465 INFO    ] start order file deleted
[2026-06-12 13:31:02,468.468 INFO    ] Checking for system updates...
[2026-06-12 13:31:02,494.494 INFO    ] 200
[2026-06-12 13:31:02,496.496 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:31:02,542.542 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 13:31:02,544.544 INFO    ] No update needed
[2026-06-12 13:31:02,546.546 INFO    ] Checking for camera pi updates...
[2026-06-12 13:31:02,570.570 INFO    ] 200
[2026-06-12 13:31:02,572.572 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:31:02,612.612 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 13:31:02,644.644 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 13:31:02,646.646 INFO    ] No camera update needed
[2026-06-12 13:31:02,647.647 INFO    ] Script finished. Safe exiting...
[2026-06-12 13:31:02,648.648 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 13:31:02,651.651 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 13:31:02,654.654 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 13:31:04,694.694 INFO    ] ================================================
[2026-06-12 13:31:04,710.710 INFO    ] Launching Daemon at Fri Jun 12 13:31:04 IST 2026
[2026-06-12 13:31:04,722.722 INFO    ] ================================================
[2026-06-12 13:31:05,055.055 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 13:31:05
[2026-06-12 13:31:05,373.373 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 13:31:05,504.504 INFO    ] Initializing speech engine...
[2026-06-12 13:31:05,507.507 INFO    ] 2026-06-12 13:31:05
[2026-06-12 13:31:05,724.724 INFO    ] 2026-06-12 13:31:05
[2026-06-12 13:31:05,753.753 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 13:31:05,878.878 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 13:31:05,941.941 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 13:31:06,093.093 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 13:31:06,154.154 INFO    ] time= 12/06/2026 13:31:06
[2026-06-12 13:31:06,178.178 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 13:31:06,185.185 INFO    ] Checking for existing commands in stream...
[2026-06-12 13:31:06,250.250 INFO    ] No existing commands found in stream
[2026-06-12 13:31:11,261.261 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 13:31:11,264.264 INFO    ] Waiting 2.25 seconds before fallback handling...
[2026-06-12 13:31:13,975.975 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 13:31:13,977.977 INFO    ] Checking for system updates...
[2026-06-12 13:31:13,998.998 INFO    ] 200
[2026-06-12 13:31:13,999.999 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:31:14,031.031 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 13:31:14,033.033 INFO    ] No update needed
[2026-06-12 13:31:14,034.034 INFO    ] Checking for camera pi updates...
[2026-06-12 13:31:14,057.057 INFO    ] 200
[2026-06-12 13:31:14,059.059 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:31:14,082.082 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 13:31:14,170.170 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 13:31:14,171.171 INFO    ] No camera update needed
[2026-06-12 13:31:14,173.173 INFO    ] Script finished. Safe exiting...
[2026-06-12 13:31:14,174.174 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 13:31:14,177.177 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 13:31:14,180.180 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 13:31:16,213.213 INFO    ] ================================================
[2026-06-12 13:31:16,223.223 INFO    ] Launching Daemon at Fri Jun 12 13:31:16 IST 2026
[2026-06-12 13:31:16,229.229 INFO    ] ================================================
[2026-06-12 13:31:16,538.538 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 13:31:16
[2026-06-12 13:31:16,850.850 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 13:31:16,983.983 INFO    ] Initializing speech engine...
[2026-06-12 13:31:16,988.988 INFO    ] 2026-06-12 13:31:16
[2026-06-12 13:31:17,204.204 INFO    ] 2026-06-12 13:31:17
[2026-06-12 13:31:17,232.232 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 13:31:17,415.415 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 13:31:17,418.418 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 13:31:17,547.547 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 13:31:17,608.608 INFO    ] time= 12/06/2026 13:31:17
[2026-06-12 13:31:17,642.642 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 13:31:17,647.647 INFO    ] Checking for existing commands in stream...
[2026-06-12 13:31:17,742.742 INFO    ] No existing commands found in stream
[2026-06-12 13:31:22,756.756 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 13:31:22,759.759 INFO    ] Waiting 0.63 seconds before fallback handling...
[2026-06-12 13:31:23,796.796 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 13:31:23,798.798 INFO    ] Checking for system updates...
[2026-06-12 13:31:23,818.818 INFO    ] 200
[2026-06-12 13:31:23,820.820 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:31:23,850.850 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 13:31:23,852.852 INFO    ] No update needed
[2026-06-12 13:31:23,853.853 INFO    ] Checking for camera pi updates...
[2026-06-12 13:31:23,873.873 INFO    ] 200
[2026-06-12 13:31:23,874.874 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:31:23,898.898 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 13:31:24,005.005 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 13:31:24,007.007 INFO    ] No camera update needed
[2026-06-12 13:31:24,008.008 INFO    ] Script finished. Safe exiting...
[2026-06-12 13:31:24,010.010 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 13:31:24,013.013 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 13:31:24,016.016 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 13:31:26,056.056 INFO    ] ================================================
[2026-06-12 13:31:26,072.072 INFO    ] Launching Daemon at Fri Jun 12 13:31:26 IST 2026
[2026-06-12 13:31:26,083.083 INFO    ] ================================================
[2026-06-12 13:31:26,412.412 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 13:31:26
[2026-06-12 13:31:26,723.723 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 13:31:26,860.860 INFO    ] Initializing speech engine...
[2026-06-12 13:31:26,869.869 INFO    ] 2026-06-12 13:31:26
[2026-06-12 13:31:27,085.085 INFO    ] 2026-06-12 13:31:27
[2026-06-12 13:31:27,115.115 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 13:31:27,238.238 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 13:31:27,301.301 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 13:31:27,445.445 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 13:31:27,486.486 INFO    ] time= 12/06/2026 13:31:27
[2026-06-12 13:31:27,530.530 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 13:31:27,546.546 INFO    ] Checking for existing commands in stream...
[2026-06-12 13:31:27,616.616 INFO    ] No existing commands found in stream
[2026-06-12 13:31:32,622.622 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 13:31:32,625.625 INFO    ] Waiting 0.06 seconds before fallback handling...
[2026-06-12 13:31:33,030.030 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 13:31:33,031.031 INFO    ] Checking for system updates...
[2026-06-12 13:31:33,051.051 INFO    ] 200
[2026-06-12 13:31:33,053.053 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:31:33,082.082 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 13:31:33,084.084 INFO    ] No update needed
[2026-06-12 13:31:33,085.085 INFO    ] Checking for camera pi updates...
[2026-06-12 13:31:33,104.104 INFO    ] 200
[2026-06-12 13:31:33,105.105 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:31:33,127.127 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 13:31:33,201.201 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 13:31:33,202.202 INFO    ] No camera update needed
[2026-06-12 13:31:33,204.204 INFO    ] Script finished. Safe exiting...
[2026-06-12 13:31:33,205.205 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 13:31:33,208.208 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 13:31:33,211.211 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 13:31:35,251.251 INFO    ] ================================================
[2026-06-12 13:31:35,267.267 INFO    ] Launching Daemon at Fri Jun 12 13:31:35 IST 2026
[2026-06-12 13:31:35,278.278 INFO    ] ================================================
[2026-06-12 13:31:35,646.646 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 13:31:35
[2026-06-12 13:31:35,969.969 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 13:31:36,106.106 INFO    ] Initializing speech engine...
[2026-06-12 13:31:36,116.116 INFO    ] 2026-06-12 13:31:36
[2026-06-12 13:31:36,319.319 INFO    ] 2026-06-12 13:31:36
[2026-06-12 13:31:36,348.348 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 13:31:36,471.471 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 13:31:36,534.534 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 13:31:36,672.672 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 13:31:36,731.731 INFO    ] time= 12/06/2026 13:31:36
[2026-06-12 13:31:36,763.763 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 13:31:36,769.769 INFO    ] Checking for existing commands in stream...
[2026-06-12 13:31:36,837.837 INFO    ] No existing commands found in stream
[2026-06-12 13:31:41,846.846 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 13:31:41,848.848 INFO    ] Waiting 3.83 seconds before fallback handling...
[2026-06-12 13:31:46,052.052 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 13:31:46,054.054 INFO    ] Checking for system updates...
[2026-06-12 13:31:46,074.074 INFO    ] 200
[2026-06-12 13:31:46,075.075 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:31:46,104.104 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 13:31:46,106.106 INFO    ] No update needed
[2026-06-12 13:31:46,107.107 INFO    ] Checking for camera pi updates...
[2026-06-12 13:31:46,128.128 INFO    ] 200
[2026-06-12 13:31:46,130.130 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:31:46,153.153 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 13:31:46,199.199 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 13:31:46,200.200 INFO    ] No camera update needed
[2026-06-12 13:31:46,201.201 INFO    ] Script finished. Safe exiting...
[2026-06-12 13:31:46,203.203 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 13:31:46,206.206 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 13:31:46,208.208 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 13:31:48,247.247 INFO    ] ================================================
[2026-06-12 13:31:48,265.265 INFO    ] Launching Daemon at Fri Jun 12 13:31:48 IST 2026
[2026-06-12 13:31:48,280.280 INFO    ] ================================================
[2026-06-12 13:31:48,595.595 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 13:31:48
[2026-06-12 13:31:48,911.911 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 13:31:49,054.054 INFO    ] Initializing speech engine...
[2026-06-12 13:31:49,059.059 INFO    ] 2026-06-12 13:31:49
[2026-06-12 13:31:49,264.264 INFO    ] 2026-06-12 13:31:49
[2026-06-12 13:31:49,293.293 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 13:31:49,487.487 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 13:31:49,491.491 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 13:31:49,623.623 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 13:31:49,685.685 INFO    ] time= 12/06/2026 13:31:49
[2026-06-12 13:31:49,731.731 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 13:31:49,738.738 INFO    ] Checking for existing commands in stream...
[2026-06-12 13:31:49,805.805 INFO    ] No existing commands found in stream
[2026-06-12 13:31:54,815.815 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 13:31:54,818.818 INFO    ] Waiting 1.23 seconds before fallback handling...
[2026-06-12 13:31:56,412.412 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 13:31:56,414.414 INFO    ] Checking for system updates...
[2026-06-12 13:31:56,434.434 INFO    ] 200
[2026-06-12 13:31:56,435.435 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:31:56,465.465 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 13:31:56,466.466 INFO    ] No update needed
[2026-06-12 13:31:56,468.468 INFO    ] Checking for camera pi updates...
[2026-06-12 13:31:56,487.487 INFO    ] 200
[2026-06-12 13:31:56,488.488 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:31:56,511.511 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 13:31:56,555.555 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 13:31:56,557.557 INFO    ] No camera update needed
[2026-06-12 13:31:56,558.558 INFO    ] Script finished. Safe exiting...
[2026-06-12 13:31:56,559.559 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 13:31:56,562.562 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 13:31:56,565.565 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 13:31:58,603.603 INFO    ] ================================================
[2026-06-12 13:31:58,619.619 INFO    ] Launching Daemon at Fri Jun 12 13:31:58 IST 2026
[2026-06-12 13:31:58,631.631 INFO    ] ================================================
[2026-06-12 13:31:58,981.981 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 13:31:58
[2026-06-12 13:31:59,296.296 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 13:31:59,439.439 INFO    ] Initializing speech engine...
[2026-06-12 13:31:59,445.445 INFO    ] 2026-06-12 13:31:59
[2026-06-12 13:31:59,649.649 INFO    ] 2026-06-12 13:31:59
[2026-06-12 13:31:59,677.677 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 13:31:59,863.863 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 13:31:59,872.872 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 13:32:00,002.002 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 13:32:00,069.069 INFO    ] time= 12/06/2026 13:32:00
[2026-06-12 13:32:00,093.093 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 13:32:00,095.095 INFO    ] Checking for existing commands in stream...
[2026-06-12 13:32:00,167.167 INFO    ] No existing commands found in stream
[2026-06-12 13:32:05,191.191 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 13:32:05,194.194 INFO    ] Waiting 2.79 seconds before fallback handling...
[2026-06-12 13:32:08,365.365 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 13:32:08,366.366 INFO    ] Checking for system updates...
[2026-06-12 13:32:08,387.387 INFO    ] 200
[2026-06-12 13:32:08,388.388 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:32:08,417.417 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 13:32:08,419.419 INFO    ] No update needed
[2026-06-12 13:32:08,420.420 INFO    ] Checking for camera pi updates...
[2026-06-12 13:32:08,439.439 INFO    ] 200
[2026-06-12 13:32:08,441.441 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:32:08,466.466 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 13:32:08,529.529 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 13:32:08,530.530 INFO    ] No camera update needed
[2026-06-12 13:32:08,532.532 INFO    ] Script finished. Safe exiting...
[2026-06-12 13:32:08,533.533 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 13:32:08,536.536 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 13:32:08,539.539 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 13:32:10,578.578 INFO    ] ================================================
[2026-06-12 13:32:10,594.594 INFO    ] Launching Daemon at Fri Jun 12 13:32:10 IST 2026
[2026-06-12 13:32:10,605.605 INFO    ] ================================================
[2026-06-12 13:32:10,934.934 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 13:32:10
[2026-06-12 13:32:11,246.246 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 13:32:11,377.377 INFO    ] Initializing speech engine...
[2026-06-12 13:32:11,382.382 INFO    ] 2026-06-12 13:32:11
[2026-06-12 13:32:11,607.607 INFO    ] 2026-06-12 13:32:11
[2026-06-12 13:32:11,643.643 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 13:32:11,829.829 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 13:32:11,833.833 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 13:32:12,012.012 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 13:32:12,063.063 INFO    ] time= 12/06/2026 13:32:12
[2026-06-12 13:32:12,068.068 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 13:32:12,074.074 INFO    ] Checking for existing commands in stream...
[2026-06-12 13:32:12,140.140 INFO    ] No existing commands found in stream
[2026-06-12 13:32:17,150.150 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 13:32:17,153.153 INFO    ] Waiting 1.14 seconds before fallback handling...
[2026-06-12 13:32:18,655.655 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 13:32:18,657.657 INFO    ] Checking for system updates...
[2026-06-12 13:32:18,678.678 INFO    ] 200
[2026-06-12 13:32:18,679.679 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:32:18,709.709 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 13:32:18,710.710 INFO    ] No update needed
[2026-06-12 13:32:18,711.711 INFO    ] Checking for camera pi updates...
[2026-06-12 13:32:18,732.732 INFO    ] 200
[2026-06-12 13:32:18,733.733 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:32:18,756.756 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 13:32:18,813.813 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 13:32:18,814.814 INFO    ] No camera update needed
[2026-06-12 13:32:18,815.815 INFO    ] Script finished. Safe exiting...
[2026-06-12 13:32:18,816.816 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 13:32:18,819.819 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 13:32:18,822.822 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 13:32:20,860.860 INFO    ] ================================================
[2026-06-12 13:32:20,876.876 INFO    ] Launching Daemon at Fri Jun 12 13:32:20 IST 2026
[2026-06-12 13:32:20,888.888 INFO    ] ================================================
[2026-06-12 13:32:21,261.261 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 13:32:21
[2026-06-12 13:32:21,600.600 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 13:32:21,751.751 INFO    ] Initializing speech engine...
[2026-06-12 13:32:21,756.756 INFO    ] 2026-06-12 13:32:21
[2026-06-12 13:32:21,964.964 INFO    ] 2026-06-12 13:32:21
[2026-06-12 13:32:21,993.993 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 13:32:22,176.176 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 13:32:22,186.186 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 13:32:22,348.348 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 13:32:22,398.398 INFO    ] time= 12/06/2026 13:32:22
[2026-06-12 13:32:22,409.409 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 13:32:22,415.415 INFO    ] Checking for existing commands in stream...
[2026-06-12 13:32:22,482.482 INFO    ] No existing commands found in stream
[2026-06-12 13:32:27,497.497 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 13:32:27,500.500 INFO    ] Waiting 3.96 seconds before fallback handling...
[2026-06-12 13:32:31,843.843 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 13:32:31,844.844 INFO    ] Checking for system updates...
[2026-06-12 13:32:31,867.867 INFO    ] 200
[2026-06-12 13:32:31,868.868 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:32:31,899.899 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 13:32:31,900.900 INFO    ] No update needed
[2026-06-12 13:32:31,902.902 INFO    ] Checking for camera pi updates...
[2026-06-12 13:32:31,921.921 INFO    ] 200
[2026-06-12 13:32:31,922.922 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:32:31,947.947 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 13:32:31,976.976 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 13:32:31,977.977 INFO    ] No camera update needed
[2026-06-12 13:32:31,978.978 INFO    ] Script finished. Safe exiting...
[2026-06-12 13:32:31,980.980 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 13:32:31,983.983 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 13:32:31,985.985 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 13:32:34,008.008 INFO    ] ================================================
[2026-06-12 13:32:34,016.016 INFO    ] Launching Daemon at Fri Jun 12 13:32:34 IST 2026
[2026-06-12 13:32:34,023.023 INFO    ] ================================================
[2026-06-12 13:32:34,338.338 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 13:32:34
[2026-06-12 13:32:34,655.655 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 13:32:34,792.792 INFO    ] Initializing speech engine...
[2026-06-12 13:32:34,805.805 INFO    ] 2026-06-12 13:32:34
[2026-06-12 13:32:35,025.025 INFO    ] 2026-06-12 13:32:34
[2026-06-12 13:32:35,055.055 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 13:32:35,184.184 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 13:32:35,253.253 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 13:32:35,392.392 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 13:32:35,438.438 INFO    ] time= 12/06/2026 13:32:35
[2026-06-12 13:32:35,492.492 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 13:32:35,503.503 INFO    ] Checking for existing commands in stream...
[2026-06-12 13:32:35,573.573 INFO    ] No existing commands found in stream
[2026-06-12 13:32:40,583.583 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 13:32:40,586.586 INFO    ] Waiting 0.14 seconds before fallback handling...
[2026-06-12 13:32:41,066.066 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 13:32:41,068.068 INFO    ] Checking for system updates...
[2026-06-12 13:32:41,088.088 INFO    ] 200
[2026-06-12 13:32:41,089.089 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:32:41,119.119 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 13:32:41,120.120 INFO    ] No update needed
[2026-06-12 13:32:41,122.122 INFO    ] Checking for camera pi updates...
[2026-06-12 13:32:41,141.141 INFO    ] 200
[2026-06-12 13:32:41,143.143 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:32:41,169.169 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 13:32:41,211.211 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 13:32:41,212.212 INFO    ] No camera update needed
[2026-06-12 13:32:41,213.213 INFO    ] Script finished. Safe exiting...
[2026-06-12 13:32:41,214.214 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 13:32:41,217.217 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 13:32:41,220.220 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 13:32:43,257.257 INFO    ] ================================================
[2026-06-12 13:32:43,273.273 INFO    ] Launching Daemon at Fri Jun 12 13:32:43 IST 2026
[2026-06-12 13:32:43,284.284 INFO    ] ================================================
[2026-06-12 13:32:43,629.629 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 13:32:43
[2026-06-12 13:32:43,942.942 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 13:32:44,072.072 INFO    ] Initializing speech engine...
[2026-06-12 13:32:44,080.080 INFO    ] 2026-06-12 13:32:44
[2026-06-12 13:32:44,293.293 INFO    ] 2026-06-12 13:32:44
[2026-06-12 13:32:44,322.322 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 13:32:44,446.446 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 13:32:44,509.509 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 13:32:44,649.649 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 13:32:44,713.713 INFO    ] time= 12/06/2026 13:32:44
[2026-06-12 13:32:44,741.741 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 13:32:44,743.743 INFO    ] Checking for existing commands in stream...
[2026-06-12 13:32:44,815.815 INFO    ] No existing commands found in stream
[2026-06-12 13:32:49,824.824 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 13:32:49,827.827 INFO    ] Waiting 3.64 seconds before fallback handling...
[2026-06-12 13:32:53,845.845 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 13:32:53,846.846 INFO    ] Checking for system updates...
[2026-06-12 13:32:53,867.867 INFO    ] 200
[2026-06-12 13:32:53,868.868 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:32:53,904.904 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 13:32:53,905.905 INFO    ] No update needed
[2026-06-12 13:32:53,907.907 INFO    ] Checking for camera pi updates...
[2026-06-12 13:32:53,926.926 INFO    ] 200
[2026-06-12 13:32:53,927.927 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:32:53,951.951 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 13:32:53,995.995 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 13:32:53,997.997 INFO    ] No camera update needed
[2026-06-12 13:32:53,998.998 INFO    ] Script finished. Safe exiting...
[2026-06-12 13:32:53,999.999 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 13:32:54,003.003 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 13:32:54,006.006 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 13:32:56,044.044 INFO    ] ================================================
[2026-06-12 13:32:56,059.059 INFO    ] Launching Daemon at Fri Jun 12 13:32:56 IST 2026
[2026-06-12 13:32:56,070.070 INFO    ] ================================================
[2026-06-12 13:32:56,442.442 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 13:32:56
[2026-06-12 13:32:56,770.770 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 13:32:56,901.901 INFO    ] Initializing speech engine...
[2026-06-12 13:32:56,909.909 INFO    ] 2026-06-12 13:32:56
[2026-06-12 13:32:57,123.123 INFO    ] 2026-06-12 13:32:57
[2026-06-12 13:32:57,153.153 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 13:32:57,276.276 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 13:32:57,334.334 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 13:32:57,475.475 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 13:32:57,540.540 INFO    ] time= 12/06/2026 13:32:57
[2026-06-12 13:32:57,566.566 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 13:32:57,573.573 INFO    ] Checking for existing commands in stream...
[2026-06-12 13:32:57,640.640 INFO    ] No existing commands found in stream
[2026-06-12 13:33:02,653.653 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 13:33:02,654.654 INFO    ] Waiting 1.66 seconds before fallback handling...
[2026-06-12 13:33:04,656.656 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 13:33:04,657.657 INFO    ] Checking for system updates...
[2026-06-12 13:33:04,677.677 INFO    ] 200
[2026-06-12 13:33:04,678.678 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:33:04,708.708 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 13:33:04,709.709 INFO    ] No update needed
[2026-06-12 13:33:04,711.711 INFO    ] Checking for camera pi updates...
[2026-06-12 13:33:04,730.730 INFO    ] 200
[2026-06-12 13:33:04,732.732 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:33:04,755.755 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 13:33:04,801.801 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 13:33:04,802.802 INFO    ] No camera update needed
[2026-06-12 13:33:04,803.803 INFO    ] Script finished. Safe exiting...
[2026-06-12 13:33:04,805.805 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 13:33:04,808.808 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 13:33:04,810.810 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 13:33:06,848.848 INFO    ] ================================================
[2026-06-12 13:33:06,863.863 INFO    ] Launching Daemon at Fri Jun 12 13:33:06 IST 2026
[2026-06-12 13:33:06,874.874 INFO    ] ================================================
[2026-06-12 13:33:07,246.246 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 13:33:07
[2026-06-12 13:33:07,571.571 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 13:33:07,718.718 INFO    ] Initializing speech engine...
[2026-06-12 13:33:07,726.726 INFO    ] 2026-06-12 13:33:07
[2026-06-12 13:33:07,933.933 INFO    ] 2026-06-12 13:33:07
[2026-06-12 13:33:07,951.951 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 13:33:08,107.107 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 13:33:08,150.150 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 13:33:08,303.303 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 13:33:08,325.325 INFO    ] time= 12/06/2026 13:33:08
[2026-06-12 13:33:08,396.396 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 13:33:08,427.427 INFO    ] Checking for existing commands in stream...
[2026-06-12 13:33:08,502.502 INFO    ] No existing commands found in stream
[2026-06-12 13:33:13,513.513 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 13:33:13,516.516 INFO    ] Waiting 0.75 seconds before fallback handling...
[2026-06-12 13:33:14,668.668 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 13:33:14,669.669 INFO    ] Checking for system updates...
[2026-06-12 13:33:14,691.691 INFO    ] 200
[2026-06-12 13:33:14,692.692 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:33:14,722.722 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 13:33:14,723.723 INFO    ] No update needed
[2026-06-12 13:33:14,724.724 INFO    ] Checking for camera pi updates...
[2026-06-12 13:33:14,746.746 INFO    ] 200
[2026-06-12 13:33:14,748.748 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:33:14,772.772 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 13:33:14,820.820 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 13:33:14,822.822 INFO    ] No camera update needed
[2026-06-12 13:33:14,823.823 INFO    ] Script finished. Safe exiting...
[2026-06-12 13:33:14,824.824 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 13:33:14,827.827 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 13:33:14,830.830 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 13:33:16,868.868 INFO    ] ================================================
[2026-06-12 13:33:16,883.883 INFO    ] Launching Daemon at Fri Jun 12 13:33:16 IST 2026
[2026-06-12 13:33:16,894.894 INFO    ] ================================================
[2026-06-12 13:33:17,251.251 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 13:33:17
[2026-06-12 13:33:17,583.583 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 13:33:17,732.732 INFO    ] Initializing speech engine...
[2026-06-12 13:33:17,738.738 INFO    ] 2026-06-12 13:33:17
[2026-06-12 13:33:17,944.944 INFO    ] 2026-06-12 13:33:17
[2026-06-12 13:33:17,974.974 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 13:33:18,160.160 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 13:33:18,171.171 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 13:33:18,297.297 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 13:33:18,362.362 INFO    ] time= 12/06/2026 13:33:18
[2026-06-12 13:33:18,394.394 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 13:33:18,400.400 INFO    ] Checking for existing commands in stream...
[2026-06-12 13:33:18,469.469 INFO    ] No existing commands found in stream
[2026-06-12 13:33:23,478.478 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 13:33:23,482.482 INFO    ] Waiting 2.96 seconds before fallback handling...
[2026-06-12 13:33:31,785.785 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 13:33:31,786.786 INFO    ] Checking for system updates...
[2026-06-12 13:33:31,811.811 INFO    ] 200
[2026-06-12 13:33:31,813.813 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:33:31,848.848 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 13:33:31,850.850 INFO    ] No update needed
[2026-06-12 13:33:31,851.851 INFO    ] Checking for camera pi updates...
[2026-06-12 13:33:31,872.872 INFO    ] 200
[2026-06-12 13:33:31,874.874 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:33:31,899.899 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 13:33:31,932.932 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 13:33:31,934.934 INFO    ] No camera update needed
[2026-06-12 13:33:31,936.936 INFO    ] Script finished. Safe exiting...
[2026-06-12 13:33:31,938.938 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 13:33:31,943.943 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 13:33:31,947.947 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 13:33:33,985.985 INFO    ] ================================================
[2026-06-12 13:33:34,001.001 INFO    ] Launching Daemon at Fri Jun 12 13:33:33 IST 2026
[2026-06-12 13:33:34,011.011 INFO    ] ================================================
[2026-06-12 13:33:34,368.368 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 13:33:34
[2026-06-12 13:33:34,685.685 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 13:33:34,815.815 INFO    ] Initializing speech engine...
[2026-06-12 13:33:34,820.820 INFO    ] 2026-06-12 13:33:34
[2026-06-12 13:33:35,037.037 INFO    ] 2026-06-12 13:33:35
[2026-06-12 13:33:35,065.065 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 13:33:35,247.247 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 13:33:35,251.251 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 13:33:35,397.397 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 13:33:35,456.456 INFO    ] time= 12/06/2026 13:33:35
[2026-06-12 13:33:35,478.478 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 13:33:35,484.484 INFO    ] Checking for existing commands in stream...
[2026-06-12 13:33:35,549.549 INFO    ] No existing commands found in stream
[2026-06-12 13:33:40,559.559 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 13:33:40,562.562 INFO    ] Waiting 3.91 seconds before fallback handling...
[2026-06-12 13:33:44,846.846 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 13:33:44,847.847 INFO    ] Checking for system updates...
[2026-06-12 13:33:44,868.868 INFO    ] 200
[2026-06-12 13:33:44,870.870 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:33:44,899.899 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 13:33:44,900.900 INFO    ] No update needed
[2026-06-12 13:33:44,902.902 INFO    ] Checking for camera pi updates...
[2026-06-12 13:33:44,921.921 INFO    ] 200
[2026-06-12 13:33:44,922.922 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:33:44,945.945 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 13:33:44,990.990 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 13:33:44,992.992 INFO    ] No camera update needed
[2026-06-12 13:33:44,993.993 INFO    ] Script finished. Safe exiting...
[2026-06-12 13:33:44,994.994 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 13:33:44,997.997 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 13:33:45,000.000 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 13:33:47,039.039 INFO    ] ================================================
[2026-06-12 13:33:47,054.054 INFO    ] Launching Daemon at Fri Jun 12 13:33:47 IST 2026
[2026-06-12 13:33:47,064.064 INFO    ] ================================================
[2026-06-12 13:33:47,434.434 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 13:33:47
[2026-06-12 13:33:47,745.745 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 13:33:47,887.887 INFO    ] Initializing speech engine...
[2026-06-12 13:33:47,892.892 INFO    ] 2026-06-12 13:33:47
[2026-06-12 13:33:48,098.098 INFO    ] 2026-06-12 13:33:48
[2026-06-12 13:33:48,127.127 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 13:33:48,312.312 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 13:33:48,322.322 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 13:33:48,444.444 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 13:33:48,504.504 INFO    ] time= 12/06/2026 13:33:48
[2026-06-12 13:33:48,528.528 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 13:33:48,544.544 INFO    ] Checking for existing commands in stream...
[2026-06-12 13:33:48,639.639 INFO    ] No existing commands found in stream
[2026-06-12 13:33:53,648.648 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 13:33:53,651.651 INFO    ] Waiting 2.12 seconds before fallback handling...
[2026-06-12 13:33:56,134.134 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 13:33:56,135.135 INFO    ] Checking for system updates...
[2026-06-12 13:33:56,155.155 INFO    ] 200
[2026-06-12 13:33:56,157.157 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:33:56,190.190 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 13:33:56,191.191 INFO    ] No update needed
[2026-06-12 13:33:56,193.193 INFO    ] Checking for camera pi updates...
[2026-06-12 13:33:56,212.212 INFO    ] 200
[2026-06-12 13:33:56,213.213 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:33:56,236.236 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 13:33:56,281.281 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 13:33:56,282.282 INFO    ] No camera update needed
[2026-06-12 13:33:56,283.283 INFO    ] Script finished. Safe exiting...
[2026-06-12 13:33:56,285.285 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 13:33:56,287.287 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 13:33:56,290.290 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 13:33:58,328.328 INFO    ] ================================================
[2026-06-12 13:33:58,343.343 INFO    ] Launching Daemon at Fri Jun 12 13:33:58 IST 2026
[2026-06-12 13:33:58,354.354 INFO    ] ================================================
[2026-06-12 13:33:58,723.723 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 13:33:58
[2026-06-12 13:33:59,040.040 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 13:33:59,184.184 INFO    ] Initializing speech engine...
[2026-06-12 13:33:59,189.189 INFO    ] 2026-06-12 13:33:59
[2026-06-12 13:33:59,393.393 INFO    ] 2026-06-12 13:33:59
[2026-06-12 13:33:59,422.422 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 13:33:59,605.605 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 13:33:59,614.614 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 13:33:59,737.737 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 13:33:59,793.793 INFO    ] time= 12/06/2026 13:33:59
[2026-06-12 13:33:59,836.836 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 13:33:59,838.838 INFO    ] Checking for existing commands in stream...
[2026-06-12 13:33:59,910.910 INFO    ] No existing commands found in stream
[2026-06-12 13:34:04,924.924 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 13:34:04,926.926 INFO    ] Waiting 0.92 seconds before fallback handling...
[2026-06-12 13:34:06,227.227 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 13:34:06,228.228 INFO    ] Checking for system updates...
[2026-06-12 13:34:06,248.248 INFO    ] 200
[2026-06-12 13:34:06,250.250 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:34:06,280.280 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 13:34:06,281.281 INFO    ] No update needed
[2026-06-12 13:34:06,282.282 INFO    ] Checking for camera pi updates...
[2026-06-12 13:34:06,304.304 INFO    ] 200
[2026-06-12 13:34:06,305.305 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:34:06,327.327 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 13:34:06,377.377 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 13:34:06,378.378 INFO    ] No camera update needed
[2026-06-12 13:34:06,379.379 INFO    ] Script finished. Safe exiting...
[2026-06-12 13:34:06,381.381 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 13:34:06,384.384 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 13:34:06,387.387 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 13:34:08,426.426 INFO    ] ================================================
[2026-06-12 13:34:08,441.441 INFO    ] Launching Daemon at Fri Jun 12 13:34:08 IST 2026
[2026-06-12 13:34:08,451.451 INFO    ] ================================================
[2026-06-12 13:34:08,790.790 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 13:34:08
[2026-06-12 13:34:09,107.107 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 13:34:09,250.250 INFO    ] Initializing speech engine...
[2026-06-12 13:34:09,261.261 INFO    ] 2026-06-12 13:34:09
[2026-06-12 13:34:09,474.474 INFO    ] 2026-06-12 13:34:09
[2026-06-12 13:34:09,506.506 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 13:34:09,702.702 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 13:34:09,705.705 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 13:34:09,847.847 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 13:34:09,910.910 INFO    ] time= 12/06/2026 13:34:09
[2026-06-12 13:34:09,944.944 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 13:34:09,950.950 INFO    ] Checking for existing commands in stream...
[2026-06-12 13:34:10,026.026 INFO    ] No existing commands found in stream
[2026-06-12 13:34:15,034.034 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 13:34:15,036.036 INFO    ] Waiting 3.02 seconds before fallback handling...
[2026-06-12 13:34:18,401.401 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 13:34:18,403.403 INFO    ] Checking for system updates...
[2026-06-12 13:34:18,423.423 INFO    ] 200
[2026-06-12 13:34:18,424.424 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:34:18,454.454 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 13:34:18,455.455 INFO    ] No update needed
[2026-06-12 13:34:18,456.456 INFO    ] Checking for camera pi updates...
[2026-06-12 13:34:18,475.475 INFO    ] 200
[2026-06-12 13:34:18,476.476 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:34:18,501.501 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 13:34:18,547.547 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 13:34:18,548.548 INFO    ] No camera update needed
[2026-06-12 13:34:18,550.550 INFO    ] Script finished. Safe exiting...
[2026-06-12 13:34:18,551.551 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 13:34:18,554.554 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 13:34:18,557.557 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 13:34:20,594.594 INFO    ] ================================================
[2026-06-12 13:34:20,609.609 INFO    ] Launching Daemon at Fri Jun 12 13:34:20 IST 2026
[2026-06-12 13:34:20,620.620 INFO    ] ================================================
[2026-06-12 13:34:20,960.960 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 13:34:20
[2026-06-12 13:34:21,277.277 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 13:34:21,426.426 INFO    ] Initializing speech engine...
[2026-06-12 13:34:21,432.432 INFO    ] 2026-06-12 13:34:21
[2026-06-12 13:34:21,645.645 INFO    ] 2026-06-12 13:34:21
[2026-06-12 13:34:21,675.675 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 13:34:21,805.805 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 13:34:21,868.868 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 13:34:22,015.015 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 13:34:22,077.077 INFO    ] time= 12/06/2026 13:34:22
[2026-06-12 13:34:22,111.111 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 13:34:22,117.117 INFO    ] Checking for existing commands in stream...
[2026-06-12 13:34:22,191.191 INFO    ] No existing commands found in stream
[2026-06-12 13:34:27,202.202 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 13:34:27,204.204 INFO    ] Waiting 0.86 seconds before fallback handling...
[2026-06-12 13:34:28,387.387 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 13:34:28,389.389 INFO    ] Checking for system updates...
[2026-06-12 13:34:28,410.410 INFO    ] 200
[2026-06-12 13:34:28,411.411 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:34:28,441.441 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 13:34:28,442.442 INFO    ] No update needed
[2026-06-12 13:34:28,444.444 INFO    ] Checking for camera pi updates...
[2026-06-12 13:34:28,463.463 INFO    ] 200
[2026-06-12 13:34:28,464.464 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:34:28,487.487 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 13:34:28,555.555 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 13:34:28,557.557 INFO    ] No camera update needed
[2026-06-12 13:34:28,558.558 INFO    ] Script finished. Safe exiting...
[2026-06-12 13:34:28,560.560 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 13:34:28,563.563 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 13:34:28,566.566 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 13:34:30,604.604 INFO    ] ================================================
[2026-06-12 13:34:30,619.619 INFO    ] Launching Daemon at Fri Jun 12 13:34:30 IST 2026
[2026-06-12 13:34:30,630.630 INFO    ] ================================================
[2026-06-12 13:34:30,965.965 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 13:34:30
[2026-06-12 13:34:31,277.277 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 13:34:31,415.415 INFO    ] Initializing speech engine...
[2026-06-12 13:34:31,428.428 INFO    ] 2026-06-12 13:34:31
[2026-06-12 13:34:31,618.618 INFO    ] 2026-06-12 13:34:31
[2026-06-12 13:34:31,664.664 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 13:34:31,822.822 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 13:34:31,867.867 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 13:34:32,006.006 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 13:34:32,040.040 INFO    ] time= 12/06/2026 13:34:32
[2026-06-12 13:34:32,091.091 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 13:34:32,125.125 INFO    ] Checking for existing commands in stream...
[2026-06-12 13:34:32,226.226 INFO    ] No existing commands found in stream
[2026-06-12 13:34:37,250.250 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 13:34:37,252.252 INFO    ] Waiting 2.69 seconds before fallback handling...
[2026-06-12 13:34:40,393.393 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 13:34:40,395.395 INFO    ] Checking for system updates...
[2026-06-12 13:34:40,416.416 INFO    ] 200
[2026-06-12 13:34:40,417.417 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:34:40,447.447 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 13:34:40,449.449 INFO    ] No update needed
[2026-06-12 13:34:40,450.450 INFO    ] Checking for camera pi updates...
[2026-06-12 13:34:40,470.470 INFO    ] 200
[2026-06-12 13:34:40,471.471 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:34:40,496.496 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 13:34:40,543.543 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 13:34:40,545.545 INFO    ] No camera update needed
[2026-06-12 13:34:40,546.546 INFO    ] Script finished. Safe exiting...
[2026-06-12 13:34:40,547.547 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 13:34:40,551.551 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 13:34:40,554.554 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 13:34:42,592.592 INFO    ] ================================================
[2026-06-12 13:34:42,607.607 INFO    ] Launching Daemon at Fri Jun 12 13:34:42 IST 2026
[2026-06-12 13:34:42,618.618 INFO    ] ================================================
[2026-06-12 13:34:42,956.956 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 13:34:42
[2026-06-12 13:34:43,268.268 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 13:34:43,412.412 INFO    ] Initializing speech engine...
[2026-06-12 13:34:43,423.423 INFO    ] 2026-06-12 13:34:43
[2026-06-12 13:34:43,635.635 INFO    ] 2026-06-12 13:34:43
[2026-06-12 13:34:43,666.666 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 13:34:43,759.759 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 13:34:43,763.763 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 13:34:43,879.879 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 13:34:43,897.897 INFO    ] time= 12/06/2026 13:34:43
[2026-06-12 13:34:43,901.901 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 13:34:43,908.908 INFO    ] Checking for existing commands in stream...
[2026-06-12 13:34:44,011.011 INFO    ] No existing commands found in stream
[2026-06-12 13:34:49,031.031 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 13:34:49,033.033 INFO    ] Waiting 2.95 seconds before fallback handling...
[2026-06-12 13:34:52,297.297 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 13:34:52,298.298 INFO    ] Checking for system updates...
[2026-06-12 13:34:52,320.320 INFO    ] 200
[2026-06-12 13:34:52,321.321 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:34:52,350.350 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 13:34:52,352.352 INFO    ] No update needed
[2026-06-12 13:34:52,353.353 INFO    ] Checking for camera pi updates...
[2026-06-12 13:34:52,372.372 INFO    ] 200
[2026-06-12 13:34:52,373.373 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:34:52,398.398 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 13:34:52,438.438 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 13:34:52,440.440 INFO    ] No camera update needed
[2026-06-12 13:34:52,441.441 INFO    ] Script finished. Safe exiting...
[2026-06-12 13:34:52,443.443 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 13:34:52,445.445 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 13:34:52,448.448 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 13:34:54,486.486 INFO    ] ================================================
[2026-06-12 13:34:54,501.501 INFO    ] Launching Daemon at Fri Jun 12 13:34:54 IST 2026
[2026-06-12 13:34:54,512.512 INFO    ] ================================================
[2026-06-12 13:34:54,845.845 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 13:34:54
[2026-06-12 13:34:55,163.163 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 13:34:55,306.306 INFO    ] Initializing speech engine...
[2026-06-12 13:34:55,311.311 INFO    ] 2026-06-12 13:34:55
[2026-06-12 13:34:55,514.514 INFO    ] 2026-06-12 13:34:55
[2026-06-12 13:34:55,544.544 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 13:34:55,727.727 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 13:34:55,730.730 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 13:34:55,861.861 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 13:34:55,932.932 INFO    ] time= 12/06/2026 13:34:55
[2026-06-12 13:34:55,956.956 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 13:34:55,958.958 INFO    ] Checking for existing commands in stream...
[2026-06-12 13:34:56,030.030 INFO    ] No existing commands found in stream
[2026-06-12 13:35:01,038.038 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 13:35:01,039.039 INFO    ] Waiting 3.20 seconds before fallback handling...
[2026-06-12 13:35:04,593.593 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 13:35:04,594.594 INFO    ] Checking for system updates...
[2026-06-12 13:35:04,615.615 INFO    ] 200
[2026-06-12 13:35:04,616.616 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:35:04,646.646 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 13:35:04,648.648 INFO    ] No update needed
[2026-06-12 13:35:04,649.649 INFO    ] Checking for camera pi updates...
[2026-06-12 13:35:04,670.670 INFO    ] 200
[2026-06-12 13:35:04,672.672 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:35:04,697.697 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 13:35:04,740.740 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 13:35:04,741.741 INFO    ] No camera update needed
[2026-06-12 13:35:04,742.742 INFO    ] Script finished. Safe exiting...
[2026-06-12 13:35:04,744.744 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 13:35:04,747.747 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 13:35:04,749.749 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 13:35:06,788.788 INFO    ] ================================================
[2026-06-12 13:35:06,803.803 INFO    ] Launching Daemon at Fri Jun 12 13:35:06 IST 2026
[2026-06-12 13:35:06,814.814 INFO    ] ================================================
[2026-06-12 13:35:07,175.175 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 13:35:07
[2026-06-12 13:35:07,494.494 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 13:35:07,630.630 INFO    ] Initializing speech engine...
[2026-06-12 13:35:07,639.639 INFO    ] 2026-06-12 13:35:07
[2026-06-12 13:35:07,863.863 INFO    ] 2026-06-12 13:35:07
[2026-06-12 13:35:07,894.894 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 13:35:08,092.092 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 13:35:08,096.096 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 13:35:08,236.236 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 13:35:08,287.287 INFO    ] time= 12/06/2026 13:35:08
[2026-06-12 13:35:08,322.322 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 13:35:08,344.344 INFO    ] Checking for existing commands in stream...
[2026-06-12 13:35:08,419.419 INFO    ] No existing commands found in stream
[2026-06-12 13:35:13,430.430 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 13:35:13,433.433 INFO    ] Waiting 2.79 seconds before fallback handling...
[2026-06-12 13:35:16,592.592 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 13:35:16,594.594 INFO    ] Checking for system updates...
[2026-06-12 13:35:16,618.618 INFO    ] 200
[2026-06-12 13:35:16,620.620 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:35:16,654.654 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 13:35:16,656.656 INFO    ] No update needed
[2026-06-12 13:35:16,657.657 INFO    ] Checking for camera pi updates...
[2026-06-12 13:35:16,681.681 INFO    ] 200
[2026-06-12 13:35:16,682.682 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:35:16,712.712 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 13:35:16,762.762 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 13:35:16,763.763 INFO    ] No camera update needed
[2026-06-12 13:35:16,765.765 INFO    ] Script finished. Safe exiting...
[2026-06-12 13:35:16,766.766 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 13:35:16,769.769 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 13:35:16,772.772 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 13:35:18,796.796 INFO    ] ================================================
[2026-06-12 13:35:18,804.804 INFO    ] Launching Daemon at Fri Jun 12 13:35:18 IST 2026
[2026-06-12 13:35:18,811.811 INFO    ] ================================================
[2026-06-12 13:35:19,121.121 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 13:35:19
[2026-06-12 13:35:19,464.464 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 13:35:19,613.613 INFO    ] Initializing speech engine...
[2026-06-12 13:35:19,623.623 INFO    ] 2026-06-12 13:35:19
[2026-06-12 13:35:19,824.824 INFO    ] 2026-06-12 13:35:19
[2026-06-12 13:35:19,875.875 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 13:35:20,048.048 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 13:35:20,087.087 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 13:35:20,265.265 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 13:35:20,289.289 INFO    ] time= 12/06/2026 13:35:20
[2026-06-12 13:35:20,354.354 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 13:35:20,383.383 INFO    ] Checking for existing commands in stream...
[2026-06-12 13:35:20,461.461 INFO    ] No existing commands found in stream
[2026-06-12 13:35:25,472.472 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 13:35:25,475.475 INFO    ] Waiting 0.13 seconds before fallback handling...
[2026-06-12 13:35:25,946.946 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 13:35:25,948.948 INFO    ] Checking for system updates...
[2026-06-12 13:35:25,968.968 INFO    ] 200
[2026-06-12 13:35:25,969.969 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:35:25,999.999 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 13:35:26,000.000 INFO    ] No update needed
[2026-06-12 13:35:26,002.002 INFO    ] Checking for camera pi updates...
[2026-06-12 13:35:26,028.028 INFO    ] 200
[2026-06-12 13:35:26,029.029 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:35:26,052.052 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 13:35:26,081.081 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 13:35:26,083.083 INFO    ] No camera update needed
[2026-06-12 13:35:26,084.084 INFO    ] Script finished. Safe exiting...
[2026-06-12 13:35:26,085.085 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 13:35:26,088.088 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 13:35:26,091.091 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 13:35:28,130.130 INFO    ] ================================================
[2026-06-12 13:35:28,145.145 INFO    ] Launching Daemon at Fri Jun 12 13:35:28 IST 2026
[2026-06-12 13:35:28,156.156 INFO    ] ================================================
[2026-06-12 13:35:28,529.529 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 13:35:28
[2026-06-12 13:35:28,866.866 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 13:35:29,013.013 INFO    ] Initializing speech engine...
[2026-06-12 13:35:29,024.024 INFO    ] 2026-06-12 13:35:29
[2026-06-12 13:35:29,236.236 INFO    ] 2026-06-12 13:35:29
[2026-06-12 13:35:29,266.266 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 13:35:29,412.412 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 13:35:29,456.456 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 13:35:29,593.593 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 13:35:29,656.656 INFO    ] time= 12/06/2026 13:35:29
[2026-06-12 13:35:29,691.691 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 13:35:29,697.697 INFO    ] Checking for existing commands in stream...
[2026-06-12 13:35:29,766.766 INFO    ] No existing commands found in stream
[2026-06-12 13:35:34,781.781 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 13:35:34,784.784 INFO    ] Waiting 0.23 seconds before fallback handling...
[2026-06-12 13:35:35,418.418 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 13:35:35,420.420 INFO    ] Checking for system updates...
[2026-06-12 13:35:35,440.440 INFO    ] 200
[2026-06-12 13:35:35,442.442 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:35:35,471.471 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 13:35:35,473.473 INFO    ] No update needed
[2026-06-12 13:35:35,474.474 INFO    ] Checking for camera pi updates...
[2026-06-12 13:35:35,494.494 INFO    ] 200
[2026-06-12 13:35:35,495.495 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:35:35,518.518 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 13:35:35,544.544 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 13:35:35,546.546 INFO    ] No camera update needed
[2026-06-12 13:35:35,547.547 INFO    ] Script finished. Safe exiting...
[2026-06-12 13:35:35,549.549 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 13:35:35,552.552 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 13:35:35,555.555 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 13:35:37,594.594 INFO    ] ================================================
[2026-06-12 13:35:37,610.610 INFO    ] Launching Daemon at Fri Jun 12 13:35:37 IST 2026
[2026-06-12 13:35:37,621.621 INFO    ] ================================================
[2026-06-12 13:35:37,977.977 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 13:35:37
[2026-06-12 13:35:38,289.289 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 13:35:38,424.424 INFO    ] Initializing speech engine...
[2026-06-12 13:35:38,427.427 INFO    ] 2026-06-12 13:35:38
[2026-06-12 13:35:38,656.656 INFO    ] 2026-06-12 13:35:38
[2026-06-12 13:35:38,687.687 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 13:35:38,885.885 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 13:35:38,895.895 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 13:35:39,029.029 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 13:35:39,075.075 INFO    ] time= 12/06/2026 13:35:39
[2026-06-12 13:35:39,114.114 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 13:35:39,136.136 INFO    ] Checking for existing commands in stream...
[2026-06-12 13:35:39,212.212 INFO    ] No existing commands found in stream
[2026-06-12 13:35:44,222.222 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 13:35:44,225.225 INFO    ] Waiting 3.30 seconds before fallback handling...
[2026-06-12 13:35:47,819.819 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 13:35:47,821.821 INFO    ] Checking for system updates...
[2026-06-12 13:35:47,841.841 INFO    ] 200
[2026-06-12 13:35:47,842.842 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:35:47,876.876 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 13:35:47,880.880 INFO    ] No update needed
[2026-06-12 13:35:47,882.882 INFO    ] Checking for camera pi updates...
[2026-06-12 13:35:47,901.901 INFO    ] 200
[2026-06-12 13:35:47,902.902 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:35:47,927.927 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 13:35:47,956.956 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 13:35:47,958.958 INFO    ] No camera update needed
[2026-06-12 13:35:47,959.959 INFO    ] Script finished. Safe exiting...
[2026-06-12 13:35:47,960.960 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 13:35:47,963.963 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 13:35:47,966.966 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 13:35:49,996.996 INFO    ] ================================================
[2026-06-12 13:35:50,004.004 INFO    ] Launching Daemon at Fri Jun 12 13:35:50 IST 2026
[2026-06-12 13:35:50,010.010 INFO    ] ================================================
[2026-06-12 13:35:50,337.337 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 13:35:50
[2026-06-12 13:35:50,696.696 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 13:35:50,827.827 INFO    ] Initializing speech engine...
[2026-06-12 13:35:50,831.831 INFO    ] 2026-06-12 13:35:50
[2026-06-12 13:35:51,050.050 INFO    ] 2026-06-12 13:35:51
[2026-06-12 13:35:51,079.079 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 13:35:51,265.265 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 13:35:51,274.274 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 13:35:51,428.428 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 13:35:51,458.458 INFO    ] time= 12/06/2026 13:35:51
[2026-06-12 13:35:51,527.527 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 13:35:51,551.551 INFO    ] Checking for existing commands in stream...
[2026-06-12 13:35:51,623.623 INFO    ] No existing commands found in stream
[2026-06-12 13:35:56,632.632 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 13:35:56,634.634 INFO    ] Waiting 3.34 seconds before fallback handling...
[2026-06-12 13:36:00,328.328 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 13:36:00,330.330 INFO    ] Checking for system updates...
[2026-06-12 13:36:00,350.350 INFO    ] 200
[2026-06-12 13:36:00,351.351 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:36:00,381.381 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 13:36:00,382.382 INFO    ] No update needed
[2026-06-12 13:36:00,383.383 INFO    ] Checking for camera pi updates...
[2026-06-12 13:36:00,403.403 INFO    ] 200
[2026-06-12 13:36:00,404.404 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:36:00,427.427 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 13:36:00,469.469 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 13:36:00,471.471 INFO    ] No camera update needed
[2026-06-12 13:36:00,472.472 INFO    ] Script finished. Safe exiting...
[2026-06-12 13:36:00,473.473 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 13:36:00,476.476 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 13:36:00,479.479 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 13:36:02,514.514 INFO    ] ================================================
[2026-06-12 13:36:02,525.525 INFO    ] Launching Daemon at Fri Jun 12 13:36:02 IST 2026
[2026-06-12 13:36:02,534.534 INFO    ] ================================================
[2026-06-12 13:36:02,915.915 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 13:36:02
[2026-06-12 13:36:03,242.242 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 13:36:03,374.374 INFO    ] Initializing speech engine...
[2026-06-12 13:36:03,387.387 INFO    ] 2026-06-12 13:36:03
[2026-06-12 13:36:03,595.595 INFO    ] 2026-06-12 13:36:03
[2026-06-12 13:36:03,624.624 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 13:36:03,746.746 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 13:36:03,809.809 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 13:36:03,942.942 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 13:36:04,003.003 INFO    ] time= 12/06/2026 13:36:03
[2026-06-12 13:36:04,021.021 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 13:36:04,042.042 INFO    ] Checking for existing commands in stream...
[2026-06-12 13:36:04,114.114 INFO    ] No existing commands found in stream
[2026-06-12 13:36:09,123.123 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 13:36:09,126.126 INFO    ] Waiting 3.54 seconds before fallback handling...
[2026-06-12 13:36:13,016.016 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 13:36:13,017.017 INFO    ] Checking for system updates...
[2026-06-12 13:36:13,038.038 INFO    ] 200
[2026-06-12 13:36:13,039.039 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:36:13,070.070 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 13:36:13,071.071 INFO    ] No update needed
[2026-06-12 13:36:13,072.072 INFO    ] Checking for camera pi updates...
[2026-06-12 13:36:13,091.091 INFO    ] 200
[2026-06-12 13:36:13,093.093 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:36:13,117.117 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 13:36:13,171.171 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 13:36:13,173.173 INFO    ] No camera update needed
[2026-06-12 13:36:13,174.174 INFO    ] Script finished. Safe exiting...
[2026-06-12 13:36:13,175.175 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 13:36:13,178.178 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 13:36:13,181.181 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 13:36:15,211.211 INFO    ] ================================================
[2026-06-12 13:36:15,227.227 INFO    ] Launching Daemon at Fri Jun 12 13:36:15 IST 2026
[2026-06-12 13:36:15,238.238 INFO    ] ================================================
[2026-06-12 13:36:15,572.572 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 13:36:15
[2026-06-12 13:36:15,890.890 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 13:36:16,027.027 INFO    ] Initializing speech engine...
[2026-06-12 13:36:16,041.041 INFO    ] 2026-06-12 13:36:16
[2026-06-12 13:36:16,264.264 INFO    ] 2026-06-12 13:36:16
[2026-06-12 13:36:16,306.306 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 13:36:16,490.490 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 13:36:16,494.494 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 13:36:16,633.633 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 13:36:16,699.699 INFO    ] time= 12/06/2026 13:36:16
[2026-06-12 13:36:16,738.738 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 13:36:16,740.740 INFO    ] Checking for existing commands in stream...
[2026-06-12 13:36:16,818.818 INFO    ] No existing commands found in stream
[2026-06-12 13:36:21,827.827 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 13:36:21,830.830 INFO    ] Waiting 0.25 seconds before fallback handling...
[2026-06-12 13:36:22,409.409 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 13:36:22,410.410 INFO    ] Checking for system updates...
[2026-06-12 13:36:22,431.431 INFO    ] 200
[2026-06-12 13:36:22,432.432 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:36:22,464.464 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 13:36:22,465.465 INFO    ] No update needed
[2026-06-12 13:36:22,466.466 INFO    ] Checking for camera pi updates...
[2026-06-12 13:36:22,488.488 INFO    ] 200
[2026-06-12 13:36:22,489.489 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:36:22,512.512 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 13:36:22,626.626 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 13:36:22,627.627 INFO    ] No camera update needed
[2026-06-12 13:36:22,628.628 INFO    ] Script finished. Safe exiting...
[2026-06-12 13:36:22,629.629 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 13:36:22,632.632 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 13:36:22,635.635 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 13:36:24,673.673 INFO    ] ================================================
[2026-06-12 13:36:24,688.688 INFO    ] Launching Daemon at Fri Jun 12 13:36:24 IST 2026
[2026-06-12 13:36:24,699.699 INFO    ] ================================================
[2026-06-12 13:36:25,055.055 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 13:36:25
[2026-06-12 13:36:25,394.394 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 13:36:25,545.545 INFO    ] Initializing speech engine...
[2026-06-12 13:36:25,551.551 INFO    ] 2026-06-12 13:36:25
[2026-06-12 13:36:25,758.758 INFO    ] 2026-06-12 13:36:25
[2026-06-12 13:36:25,786.786 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 13:36:25,970.970 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 13:36:25,980.980 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 13:36:26,125.125 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 13:36:26,179.179 INFO    ] time= 12/06/2026 13:36:26
[2026-06-12 13:36:26,201.201 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 13:36:26,207.207 INFO    ] Checking for existing commands in stream...
[2026-06-12 13:36:26,297.297 INFO    ] No existing commands found in stream
[2026-06-12 13:36:31,316.316 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 13:36:31,318.318 INFO    ] Waiting 2.58 seconds before fallback handling...
[2026-06-12 13:36:34,281.281 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 13:36:34,282.282 INFO    ] Checking for system updates...
[2026-06-12 13:36:34,303.303 INFO    ] 200
[2026-06-12 13:36:34,305.305 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:36:34,335.335 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 13:36:34,336.336 INFO    ] No update needed
[2026-06-12 13:36:34,337.337 INFO    ] Checking for camera pi updates...
[2026-06-12 13:36:34,357.357 INFO    ] 200
[2026-06-12 13:36:34,358.358 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:36:34,382.382 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 13:36:34,480.480 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 13:36:34,481.481 INFO    ] No camera update needed
[2026-06-12 13:36:34,483.483 INFO    ] Script finished. Safe exiting...
[2026-06-12 13:36:34,484.484 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 13:36:34,487.487 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 13:36:34,490.490 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 13:36:36,529.529 INFO    ] ================================================
[2026-06-12 13:36:36,544.544 INFO    ] Launching Daemon at Fri Jun 12 13:36:36 IST 2026
[2026-06-12 13:36:36,555.555 INFO    ] ================================================
[2026-06-12 13:36:36,882.882 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 13:36:36
[2026-06-12 13:36:37,193.193 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 13:36:37,324.324 INFO    ] Initializing speech engine...
[2026-06-12 13:36:37,328.328 INFO    ] 2026-06-12 13:36:37
[2026-06-12 13:36:37,541.541 INFO    ] 2026-06-12 13:36:37
[2026-06-12 13:36:37,569.569 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 13:36:37,784.784 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 13:36:37,788.788 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 13:36:37,927.927 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 13:36:37,978.978 INFO    ] time= 12/06/2026 13:36:37
[2026-06-12 13:36:38,011.011 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 13:36:38,034.034 INFO    ] Checking for existing commands in stream...
[2026-06-12 13:36:38,136.136 INFO    ] No existing commands found in stream
[2026-06-12 13:36:43,150.150 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 13:36:43,153.153 INFO    ] Waiting 1.19 seconds before fallback handling...
[2026-06-12 13:36:44,677.677 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 13:36:44,678.678 INFO    ] Checking for system updates...
[2026-06-12 13:36:44,698.698 INFO    ] 200
[2026-06-12 13:36:44,700.700 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:36:44,729.729 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 13:36:44,730.730 INFO    ] No update needed
[2026-06-12 13:36:44,732.732 INFO    ] Checking for camera pi updates...
[2026-06-12 13:36:44,752.752 INFO    ] 200
[2026-06-12 13:36:44,753.753 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:36:44,776.776 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 13:36:44,901.901 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 13:36:44,902.902 INFO    ] No camera update needed
[2026-06-12 13:36:44,904.904 INFO    ] Script finished. Safe exiting...
[2026-06-12 13:36:44,905.905 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 13:36:44,908.908 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 13:36:44,910.910 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 13:36:46,948.948 INFO    ] ================================================
[2026-06-12 13:36:46,963.963 INFO    ] Launching Daemon at Fri Jun 12 13:36:46 IST 2026
[2026-06-12 13:36:46,974.974 INFO    ] ================================================
[2026-06-12 13:36:47,339.339 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 13:36:47
[2026-06-12 13:36:47,651.651 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 13:36:47,781.781 INFO    ] Initializing speech engine...
[2026-06-12 13:36:47,789.789 INFO    ] 2026-06-12 13:36:47
[2026-06-12 13:36:48,000.000 INFO    ] 2026-06-12 13:36:47
[2026-06-12 13:36:48,033.033 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 13:36:48,215.215 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 13:36:48,224.224 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 13:36:48,358.358 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 13:36:48,414.414 INFO    ] time= 12/06/2026 13:36:48
[2026-06-12 13:36:48,446.446 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 13:36:48,452.452 INFO    ] Checking for existing commands in stream...
[2026-06-12 13:36:48,542.542 INFO    ] No existing commands found in stream
[2026-06-12 13:36:53,551.551 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 13:36:53,553.553 INFO    ] Waiting 1.17 seconds before fallback handling...
[2026-06-12 13:36:55,099.099 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 13:36:55,100.100 INFO    ] Checking for system updates...
[2026-06-12 13:36:55,121.121 INFO    ] 200
[2026-06-12 13:36:55,122.122 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:36:55,152.152 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 13:36:55,153.153 INFO    ] No update needed
[2026-06-12 13:36:55,155.155 INFO    ] Checking for camera pi updates...
[2026-06-12 13:36:55,173.173 INFO    ] 200
[2026-06-12 13:36:55,175.175 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:36:55,197.197 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 13:36:55,255.255 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 13:36:55,257.257 INFO    ] No camera update needed
[2026-06-12 13:36:55,258.258 INFO    ] Script finished. Safe exiting...
[2026-06-12 13:36:55,259.259 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 13:36:55,262.262 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 13:36:55,265.265 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 13:36:57,303.303 INFO    ] ================================================
[2026-06-12 13:36:57,319.319 INFO    ] Launching Daemon at Fri Jun 12 13:36:57 IST 2026
[2026-06-12 13:36:57,330.330 INFO    ] ================================================
[2026-06-12 13:36:57,720.720 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 13:36:57
[2026-06-12 13:36:58,055.055 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 13:36:58,208.208 INFO    ] Initializing speech engine...
[2026-06-12 13:36:58,213.213 INFO    ] 2026-06-12 13:36:58
[2026-06-12 13:36:58,439.439 INFO    ] 2026-06-12 13:36:58
[2026-06-12 13:36:58,469.469 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 13:36:58,599.599 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 13:36:58,658.658 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 13:36:58,804.804 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 13:36:58,872.872 INFO    ] time= 12/06/2026 13:36:58
[2026-06-12 13:36:58,896.896 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 13:36:58,902.902 INFO    ] Checking for existing commands in stream...
[2026-06-12 13:36:58,969.969 INFO    ] No existing commands found in stream
[2026-06-12 13:37:03,980.980 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 13:37:03,984.984 INFO    ] Waiting 3.53 seconds before fallback handling...
[2026-06-12 13:37:08,065.065 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 13:37:08,066.066 INFO    ] Checking for system updates...
[2026-06-12 13:37:08,087.087 INFO    ] 200
[2026-06-12 13:37:08,088.088 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:37:08,118.118 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 13:37:08,120.120 INFO    ] No update needed
[2026-06-12 13:37:08,121.121 INFO    ] Checking for camera pi updates...
[2026-06-12 13:37:08,141.141 INFO    ] 200
[2026-06-12 13:37:08,142.142 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:37:08,165.165 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 13:37:08,191.191 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 13:37:08,192.192 INFO    ] No camera update needed
[2026-06-12 13:37:08,194.194 INFO    ] Script finished. Safe exiting...
[2026-06-12 13:37:08,195.195 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 13:37:08,198.198 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 13:37:08,201.201 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 13:37:10,240.240 INFO    ] ================================================
[2026-06-12 13:37:10,255.255 INFO    ] Launching Daemon at Fri Jun 12 13:37:10 IST 2026
[2026-06-12 13:37:10,266.266 INFO    ] ================================================
[2026-06-12 13:37:10,625.625 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 13:37:10
[2026-06-12 13:37:10,938.938 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 13:37:11,069.069 INFO    ] Initializing speech engine...
[2026-06-12 13:37:11,073.073 INFO    ] 2026-06-12 13:37:11
[2026-06-12 13:37:11,292.292 INFO    ] 2026-06-12 13:37:11
[2026-06-12 13:37:11,322.322 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 13:37:11,509.509 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 13:37:11,517.517 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 13:37:11,642.642 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 13:37:11,692.692 INFO    ] time= 12/06/2026 13:37:11
[2026-06-12 13:37:11,738.738 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 13:37:11,743.743 INFO    ] Checking for existing commands in stream...
[2026-06-12 13:37:11,839.839 INFO    ] No existing commands found in stream
[2026-06-12 13:37:16,853.853 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 13:37:16,856.856 INFO    ] Waiting 0.32 seconds before fallback handling...
[2026-06-12 13:37:17,540.540 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 13:37:17,542.542 INFO    ] Checking for system updates...
[2026-06-12 13:37:17,562.562 INFO    ] 200
[2026-06-12 13:37:17,563.563 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:37:17,593.593 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 13:37:17,594.594 INFO    ] No update needed
[2026-06-12 13:37:17,595.595 INFO    ] Checking for camera pi updates...
[2026-06-12 13:37:17,614.614 INFO    ] 200
[2026-06-12 13:37:17,616.616 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:37:17,638.638 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 13:37:17,694.694 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 13:37:17,695.695 INFO    ] No camera update needed
[2026-06-12 13:37:17,697.697 INFO    ] Script finished. Safe exiting...
[2026-06-12 13:37:17,698.698 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 13:37:17,701.701 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 13:37:17,704.704 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 13:37:19,742.742 INFO    ] ================================================
[2026-06-12 13:37:19,758.758 INFO    ] Launching Daemon at Fri Jun 12 13:37:19 IST 2026
[2026-06-12 13:37:19,769.769 INFO    ] ================================================
[2026-06-12 13:37:20,118.118 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 13:37:20
[2026-06-12 13:37:20,430.430 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 13:37:20,567.567 INFO    ] Initializing speech engine...
[2026-06-12 13:37:20,578.578 INFO    ] 2026-06-12 13:37:20
[2026-06-12 13:37:20,781.781 INFO    ] 2026-06-12 13:37:20
[2026-06-12 13:37:20,811.811 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 13:37:20,979.979 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 13:37:20,998.998 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 13:37:21,135.135 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 13:37:21,202.202 INFO    ] time= 12/06/2026 13:37:21
[2026-06-12 13:37:21,226.226 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 13:37:21,232.232 INFO    ] Checking for existing commands in stream...
[2026-06-12 13:37:21,299.299 INFO    ] No existing commands found in stream
[2026-06-12 13:37:26,308.308 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 13:37:26,311.311 INFO    ] Waiting 2.62 seconds before fallback handling...
[2026-06-12 13:37:29,345.345 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 13:37:29,348.348 INFO    ] Checking for system updates...
[2026-06-12 13:37:29,384.384 INFO    ] 200
[2026-06-12 13:37:29,387.387 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:37:29,439.439 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 13:37:29,442.442 INFO    ] No update needed
[2026-06-12 13:37:29,444.444 INFO    ] Checking for camera pi updates...
[2026-06-12 13:37:29,477.477 INFO    ] 200
[2026-06-12 13:37:29,480.480 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:37:29,522.522 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 13:37:29,609.609 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 13:37:29,611.611 INFO    ] No camera update needed
[2026-06-12 13:37:29,614.614 INFO    ] Script finished. Safe exiting...
[2026-06-12 13:37:29,616.616 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 13:37:29,621.621 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 13:37:29,626.626 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 13:37:31,662.662 INFO    ] ================================================
[2026-06-12 13:37:31,672.672 INFO    ] Launching Daemon at Fri Jun 12 13:37:31 IST 2026
[2026-06-12 13:37:31,679.679 INFO    ] ================================================
[2026-06-12 13:37:32,004.004 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 13:37:32
[2026-06-12 13:37:32,320.320 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 13:37:32,450.450 INFO    ] Initializing speech engine...
[2026-06-12 13:37:32,459.459 INFO    ] 2026-06-12 13:37:32
[2026-06-12 13:37:32,670.670 INFO    ] 2026-06-12 13:37:32
[2026-06-12 13:37:32,700.700 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 13:37:32,882.882 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 13:37:32,891.891 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 13:37:32,999.999 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 13:37:33,018.018 INFO    ] time= 12/06/2026 13:37:32
[2026-06-12 13:37:33,074.074 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 13:37:33,117.117 INFO    ] Checking for existing commands in stream...
[2026-06-12 13:37:33,190.190 INFO    ] No existing commands found in stream
[2026-06-12 13:37:38,198.198 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 13:37:38,200.200 INFO    ] Waiting 3.88 seconds before fallback handling...
[2026-06-12 13:37:42,414.414 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 13:37:42,415.415 INFO    ] Checking for system updates...
[2026-06-12 13:37:42,436.436 INFO    ] 200
[2026-06-12 13:37:42,437.437 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:37:42,467.467 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 13:37:42,469.469 INFO    ] No update needed
[2026-06-12 13:37:42,470.470 INFO    ] Checking for camera pi updates...
[2026-06-12 13:37:42,489.489 INFO    ] 200
[2026-06-12 13:37:42,491.491 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:37:42,515.515 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 13:37:42,560.560 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 13:37:42,561.561 INFO    ] No camera update needed
[2026-06-12 13:37:42,563.563 INFO    ] Script finished. Safe exiting...
[2026-06-12 13:37:42,564.564 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 13:37:42,567.567 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 13:37:42,569.569 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 13:37:44,608.608 INFO    ] ================================================
[2026-06-12 13:37:44,624.624 INFO    ] Launching Daemon at Fri Jun 12 13:37:44 IST 2026
[2026-06-12 13:37:44,635.635 INFO    ] ================================================
[2026-06-12 13:37:44,971.971 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 13:37:44
[2026-06-12 13:37:45,282.282 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 13:37:45,412.412 INFO    ] Initializing speech engine...
[2026-06-12 13:37:45,425.425 INFO    ] 2026-06-12 13:37:45
[2026-06-12 13:37:45,631.631 INFO    ] 2026-06-12 13:37:45
[2026-06-12 13:37:45,659.659 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 13:37:45,842.842 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 13:37:45,846.846 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 13:37:45,974.974 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 13:37:46,035.035 INFO    ] time= 12/06/2026 13:37:45
[2026-06-12 13:37:46,064.064 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 13:37:46,074.074 INFO    ] Checking for existing commands in stream...
[2026-06-12 13:37:46,146.146 INFO    ] No existing commands found in stream
[2026-06-12 13:37:51,160.160 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 13:37:51,163.163 INFO    ] Waiting 0.71 seconds before fallback handling...
[2026-06-12 13:37:52,229.229 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 13:37:52,231.231 INFO    ] Checking for system updates...
[2026-06-12 13:37:52,252.252 INFO    ] 200
[2026-06-12 13:37:52,253.253 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:37:52,283.283 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 13:37:52,284.284 INFO    ] No update needed
[2026-06-12 13:37:52,285.285 INFO    ] Checking for camera pi updates...
[2026-06-12 13:37:52,304.304 INFO    ] 200
[2026-06-12 13:37:52,305.305 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:37:52,328.328 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 13:37:52,373.373 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 13:37:52,374.374 INFO    ] No camera update needed
[2026-06-12 13:37:52,376.376 INFO    ] Script finished. Safe exiting...
[2026-06-12 13:37:52,377.377 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 13:37:52,380.380 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 13:37:52,382.382 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 13:37:54,420.420 INFO    ] ================================================
[2026-06-12 13:37:54,436.436 INFO    ] Launching Daemon at Fri Jun 12 13:37:54 IST 2026
[2026-06-12 13:37:54,447.447 INFO    ] ================================================
[2026-06-12 13:37:54,806.806 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 13:37:54
[2026-06-12 13:37:55,123.123 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 13:37:55,260.260 INFO    ] Initializing speech engine...
[2026-06-12 13:37:55,270.270 INFO    ] 2026-06-12 13:37:55
[2026-06-12 13:37:55,477.477 INFO    ] 2026-06-12 13:37:55
[2026-06-12 13:37:55,506.506 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 13:37:55,689.689 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 13:37:55,698.698 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 13:37:55,822.822 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 13:37:55,883.883 INFO    ] time= 12/06/2026 13:37:55
[2026-06-12 13:37:55,920.920 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 13:37:55,922.922 INFO    ] Checking for existing commands in stream...
[2026-06-12 13:37:56,017.017 INFO    ] No existing commands found in stream
[2026-06-12 13:38:01,026.026 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 13:38:01,028.028 INFO    ] Waiting 0.65 seconds before fallback handling...
[2026-06-12 13:38:02,012.012 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 13:38:02,014.014 INFO    ] Checking for system updates...
[2026-06-12 13:38:02,045.045 INFO    ] 200
[2026-06-12 13:38:02,047.047 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:38:02,098.098 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 13:38:02,100.100 INFO    ] No update needed
[2026-06-12 13:38:02,104.104 INFO    ] Checking for camera pi updates...
[2026-06-12 13:38:02,134.134 INFO    ] 200
[2026-06-12 13:38:02,136.136 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:38:02,190.190 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 13:38:02,240.240 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 13:38:02,242.242 INFO    ] No camera update needed
[2026-06-12 13:38:02,248.248 INFO    ] Script finished. Safe exiting...
[2026-06-12 13:38:02,250.250 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 13:38:02,256.256 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 13:38:02,261.261 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 13:38:04,302.302 INFO    ] ================================================
[2026-06-12 13:38:04,318.318 INFO    ] Launching Daemon at Fri Jun 12 13:38:04 IST 2026
[2026-06-12 13:38:04,329.329 INFO    ] ================================================
[2026-06-12 13:38:04,696.696 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 13:38:04
[2026-06-12 13:38:05,033.033 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 13:38:05,184.184 INFO    ] Initializing speech engine...
[2026-06-12 13:38:05,190.190 INFO    ] 2026-06-12 13:38:05
[2026-06-12 13:38:05,398.398 INFO    ] 2026-06-12 13:38:05
[2026-06-12 13:38:05,427.427 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 13:38:05,576.576 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 13:38:05,617.617 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 13:38:05,786.786 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 13:38:05,839.839 INFO    ] time= 12/06/2026 13:38:05
[2026-06-12 13:38:05,862.862 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 13:38:05,869.869 INFO    ] Checking for existing commands in stream...
[2026-06-12 13:38:05,936.936 INFO    ] No existing commands found in stream
[2026-06-12 13:38:10,950.950 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 13:38:10,953.953 INFO    ] Waiting 0.71 seconds before fallback handling...
[2026-06-12 13:38:11,958.958 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 13:38:11,960.960 INFO    ] Checking for system updates...
[2026-06-12 13:38:11,980.980 INFO    ] 200
[2026-06-12 13:38:11,982.982 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:38:12,014.014 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 13:38:12,015.015 INFO    ] No update needed
[2026-06-12 13:38:12,017.017 INFO    ] Checking for camera pi updates...
[2026-06-12 13:38:12,037.037 INFO    ] 200
[2026-06-12 13:38:12,038.038 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:38:12,069.069 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 13:38:12,141.141 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 13:38:12,144.144 INFO    ] No camera update needed
[2026-06-12 13:38:12,146.146 INFO    ] Script finished. Safe exiting...
[2026-06-12 13:38:12,149.149 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 13:38:12,155.155 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 13:38:12,160.160 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 13:38:14,200.200 INFO    ] ================================================
[2026-06-12 13:38:14,216.216 INFO    ] Launching Daemon at Fri Jun 12 13:38:14 IST 2026
[2026-06-12 13:38:14,228.228 INFO    ] ================================================
[2026-06-12 13:38:14,560.560 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 13:38:14
[2026-06-12 13:38:14,882.882 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 13:38:15,023.023 INFO    ] Initializing speech engine...
[2026-06-12 13:38:15,033.033 INFO    ] 2026-06-12 13:38:15
[2026-06-12 13:38:15,238.238 INFO    ] 2026-06-12 13:38:15
[2026-06-12 13:38:15,266.266 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 13:38:15,447.447 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 13:38:15,458.458 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 13:38:15,579.579 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 13:38:15,645.645 INFO    ] time= 12/06/2026 13:38:15
[2026-06-12 13:38:15,676.676 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 13:38:15,683.683 INFO    ] Checking for existing commands in stream...
[2026-06-12 13:38:15,749.749 INFO    ] No existing commands found in stream
[2026-06-12 13:38:20,758.758 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 13:38:20,762.762 INFO    ] Waiting 0.60 seconds before fallback handling...
[2026-06-12 13:38:21,841.841 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 13:38:21,843.843 INFO    ] Checking for system updates...
[2026-06-12 13:38:21,864.864 INFO    ] 200
[2026-06-12 13:38:21,865.865 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:38:21,895.895 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 13:38:21,896.896 INFO    ] No update needed
[2026-06-12 13:38:21,897.897 INFO    ] Checking for camera pi updates...
[2026-06-12 13:38:21,916.916 INFO    ] 200
[2026-06-12 13:38:21,918.918 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:38:21,944.944 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 13:38:21,996.996 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 13:38:21,997.997 INFO    ] No camera update needed
[2026-06-12 13:38:21,999.999 INFO    ] Script finished. Safe exiting...
[2026-06-12 13:38:22,000.000 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 13:38:22,003.003 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 13:38:22,006.006 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 13:38:24,036.036 INFO    ] ================================================
[2026-06-12 13:38:24,052.052 INFO    ] Launching Daemon at Fri Jun 12 13:38:24 IST 2026
[2026-06-12 13:38:24,063.063 INFO    ] ================================================
[2026-06-12 13:38:24,404.404 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 13:38:24
[2026-06-12 13:38:24,725.725 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 13:38:24,863.863 INFO    ] Initializing speech engine...
[2026-06-12 13:38:24,874.874 INFO    ] 2026-06-12 13:38:24
[2026-06-12 13:38:25,077.077 INFO    ] 2026-06-12 13:38:25
[2026-06-12 13:38:25,106.106 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 13:38:25,287.287 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 13:38:25,291.291 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 13:38:25,425.425 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 13:38:25,489.489 INFO    ] time= 12/06/2026 13:38:25
[2026-06-12 13:38:25,516.516 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 13:38:25,523.523 INFO    ] Checking for existing commands in stream...
[2026-06-12 13:38:25,589.589 INFO    ] No existing commands found in stream
[2026-06-12 13:38:30,598.598 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 13:38:30,601.601 INFO    ] Waiting 0.94 seconds before fallback handling...
[2026-06-12 13:38:31,854.854 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 13:38:31,856.856 INFO    ] Checking for system updates...
[2026-06-12 13:38:31,880.880 INFO    ] 200
[2026-06-12 13:38:31,882.882 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:38:31,916.916 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 13:38:31,917.917 INFO    ] No update needed
[2026-06-12 13:38:31,919.919 INFO    ] Checking for camera pi updates...
[2026-06-12 13:38:31,941.941 INFO    ] 200
[2026-06-12 13:38:31,942.942 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:38:31,968.968 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 13:38:32,003.003 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 13:38:32,004.004 INFO    ] No camera update needed
[2026-06-12 13:38:32,006.006 INFO    ] Script finished. Safe exiting...
[2026-06-12 13:38:32,008.008 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 13:38:32,011.011 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 13:38:32,015.015 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 13:38:34,054.054 INFO    ] ================================================
[2026-06-12 13:38:34,070.070 INFO    ] Launching Daemon at Fri Jun 12 13:38:34 IST 2026
[2026-06-12 13:38:34,081.081 INFO    ] ================================================
[2026-06-12 13:38:34,430.430 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 13:38:34
[2026-06-12 13:38:34,756.756 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 13:38:34,894.894 INFO    ] Initializing speech engine...
[2026-06-12 13:38:34,898.898 INFO    ] 2026-06-12 13:38:34
[2026-06-12 13:38:35,099.099 INFO    ] 2026-06-12 13:38:35
[2026-06-12 13:38:35,144.144 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 13:38:35,306.306 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 13:38:35,354.354 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 13:38:35,489.489 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 13:38:35,540.540 INFO    ] time= 12/06/2026 13:38:35
[2026-06-12 13:38:35,589.589 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 13:38:35,595.595 INFO    ] Checking for existing commands in stream...
[2026-06-12 13:38:35,661.661 INFO    ] No existing commands found in stream
[2026-06-12 13:38:40,672.672 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 13:38:40,674.674 INFO    ] Waiting 0.94 seconds before fallback handling...
[2026-06-12 13:38:41,981.981 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 13:38:41,982.982 INFO    ] Checking for system updates...
[2026-06-12 13:38:42,003.003 INFO    ] 200
[2026-06-12 13:38:42,004.004 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:38:42,036.036 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 13:38:42,037.037 INFO    ] No update needed
[2026-06-12 13:38:42,038.038 INFO    ] Checking for camera pi updates...
[2026-06-12 13:38:42,057.057 INFO    ] 200
[2026-06-12 13:38:42,058.058 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:38:42,081.081 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 13:38:42,171.171 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 13:38:42,173.173 INFO    ] No camera update needed
[2026-06-12 13:38:42,174.174 INFO    ] Script finished. Safe exiting...
[2026-06-12 13:38:42,175.175 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 13:38:42,178.178 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 13:38:42,181.181 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 13:38:44,219.219 INFO    ] ================================================
[2026-06-12 13:38:44,234.234 INFO    ] Launching Daemon at Fri Jun 12 13:38:44 IST 2026
[2026-06-12 13:38:44,245.245 INFO    ] ================================================
[2026-06-12 13:38:44,605.605 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 13:38:44
[2026-06-12 13:38:44,942.942 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 13:38:45,093.093 INFO    ] Initializing speech engine...
[2026-06-12 13:38:45,099.099 INFO    ] 2026-06-12 13:38:45
[2026-06-12 13:38:45,307.307 INFO    ] 2026-06-12 13:38:45
[2026-06-12 13:38:45,336.336 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 13:38:45,521.521 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 13:38:45,532.532 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 13:38:45,663.663 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 13:38:45,731.731 INFO    ] time= 12/06/2026 13:38:45
[2026-06-12 13:38:45,763.763 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 13:38:45,766.766 INFO    ] Checking for existing commands in stream...
[2026-06-12 13:38:45,836.836 INFO    ] No existing commands found in stream
[2026-06-12 13:38:50,845.845 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 13:38:50,848.848 INFO    ] Waiting 0.13 seconds before fallback handling...
[2026-06-12 13:38:51,343.343 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 13:38:51,345.345 INFO    ] Checking for system updates...
[2026-06-12 13:38:51,365.365 INFO    ] 200
[2026-06-12 13:38:51,367.367 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:38:51,399.399 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 13:38:51,401.401 INFO    ] No update needed
[2026-06-12 13:38:51,402.402 INFO    ] Checking for camera pi updates...
[2026-06-12 13:38:51,424.424 INFO    ] 200
[2026-06-12 13:38:51,425.425 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:38:51,448.448 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 13:38:51,588.588 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 13:38:51,590.590 INFO    ] No camera update needed
[2026-06-12 13:38:51,591.591 INFO    ] Script finished. Safe exiting...
[2026-06-12 13:38:51,593.593 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 13:38:51,596.596 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 13:38:51,599.599 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 13:38:53,637.637 INFO    ] ================================================
[2026-06-12 13:38:53,653.653 INFO    ] Launching Daemon at Fri Jun 12 13:38:53 IST 2026
[2026-06-12 13:38:53,664.664 INFO    ] ================================================
[2026-06-12 13:38:54,015.015 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 13:38:54
[2026-06-12 13:38:54,334.334 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 13:38:54,480.480 INFO    ] Initializing speech engine...
[2026-06-12 13:38:54,483.483 INFO    ] 2026-06-12 13:38:54
[2026-06-12 13:38:54,688.688 INFO    ] 2026-06-12 13:38:54
[2026-06-12 13:38:54,716.716 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 13:38:54,900.900 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 13:38:54,909.909 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 13:38:55,037.037 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 13:38:55,105.105 INFO    ] time= 12/06/2026 13:38:55
[2026-06-12 13:38:55,128.128 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 13:38:55,135.135 INFO    ] Checking for existing commands in stream...
[2026-06-12 13:38:55,201.201 INFO    ] No existing commands found in stream
[2026-06-12 13:39:00,210.210 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 13:39:00,213.213 INFO    ] Waiting 2.96 seconds before fallback handling...
[2026-06-12 13:39:03,514.514 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 13:39:03,516.516 INFO    ] Checking for system updates...
[2026-06-12 13:39:03,536.536 INFO    ] 200
[2026-06-12 13:39:03,537.537 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:39:03,569.569 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 13:39:03,570.570 INFO    ] No update needed
[2026-06-12 13:39:03,572.572 INFO    ] Checking for camera pi updates...
[2026-06-12 13:39:03,591.591 INFO    ] 200
[2026-06-12 13:39:03,592.592 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:39:03,615.615 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 13:39:03,666.666 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 13:39:03,667.667 INFO    ] No camera update needed
[2026-06-12 13:39:03,668.668 INFO    ] Script finished. Safe exiting...
[2026-06-12 13:39:03,670.670 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 13:39:03,673.673 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 13:39:03,676.676 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 13:39:05,716.716 INFO    ] ================================================
[2026-06-12 13:39:05,731.731 INFO    ] Launching Daemon at Fri Jun 12 13:39:05 IST 2026
[2026-06-12 13:39:05,742.742 INFO    ] ================================================
[2026-06-12 13:39:06,087.087 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 13:39:06
[2026-06-12 13:39:06,404.404 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 13:39:06,545.545 INFO    ] Initializing speech engine...
[2026-06-12 13:39:06,556.556 INFO    ] 2026-06-12 13:39:06
[2026-06-12 13:39:06,771.771 INFO    ] 2026-06-12 13:39:06
[2026-06-12 13:39:06,802.802 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 13:39:07,001.001 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 13:39:07,005.005 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 13:39:07,145.145 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 13:39:07,181.181 INFO    ] time= 12/06/2026 13:39:07
[2026-06-12 13:39:07,227.227 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 13:39:07,253.253 INFO    ] Checking for existing commands in stream...
[2026-06-12 13:39:07,355.355 INFO    ] No existing commands found in stream
[2026-06-12 13:39:12,364.364 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 13:39:12,372.372 INFO    ] Waiting 3.94 seconds before fallback handling...
[2026-06-12 13:39:16,692.692 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 13:39:16,694.694 INFO    ] Checking for system updates...
[2026-06-12 13:39:16,714.714 INFO    ] 200
[2026-06-12 13:39:16,715.715 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:39:16,745.745 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 13:39:16,746.746 INFO    ] No update needed
[2026-06-12 13:39:16,747.747 INFO    ] Checking for camera pi updates...
[2026-06-12 13:39:16,769.769 INFO    ] 200
[2026-06-12 13:39:16,770.770 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:39:16,794.794 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 13:39:16,854.854 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 13:39:16,855.855 INFO    ] No camera update needed
[2026-06-12 13:39:16,856.856 INFO    ] Script finished. Safe exiting...
[2026-06-12 13:39:16,858.858 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 13:39:16,861.861 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 13:39:16,864.864 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 13:39:18,901.901 INFO    ] ================================================
[2026-06-12 13:39:18,916.916 INFO    ] Launching Daemon at Fri Jun 12 13:39:18 IST 2026
[2026-06-12 13:39:18,927.927 INFO    ] ================================================
[2026-06-12 13:39:19,262.262 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 13:39:19
[2026-06-12 13:39:19,588.588 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 13:39:19,718.718 INFO    ] Initializing speech engine...
[2026-06-12 13:39:19,723.723 INFO    ] 2026-06-12 13:39:19
[2026-06-12 13:39:19,942.942 INFO    ] 2026-06-12 13:39:19
[2026-06-12 13:39:19,972.972 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 13:39:20,126.126 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 13:39:20,160.160 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 13:39:20,296.296 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 13:39:20,359.359 INFO    ] time= 12/06/2026 13:39:20
[2026-06-12 13:39:20,392.392 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 13:39:20,398.398 INFO    ] Checking for existing commands in stream...
[2026-06-12 13:39:20,466.466 INFO    ] No existing commands found in stream
[2026-06-12 13:39:25,475.475 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 13:39:25,478.478 INFO    ] Waiting 3.34 seconds before fallback handling...
[2026-06-12 13:39:29,182.182 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 13:39:29,183.183 INFO    ] Checking for system updates...
[2026-06-12 13:39:29,204.204 INFO    ] 200
[2026-06-12 13:39:29,205.205 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:39:29,235.235 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 13:39:29,237.237 INFO    ] No update needed
[2026-06-12 13:39:29,238.238 INFO    ] Checking for camera pi updates...
[2026-06-12 13:39:29,257.257 INFO    ] 200
[2026-06-12 13:39:29,259.259 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:39:29,284.284 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 13:39:29,332.332 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 13:39:29,334.334 INFO    ] No camera update needed
[2026-06-12 13:39:29,335.335 INFO    ] Script finished. Safe exiting...
[2026-06-12 13:39:29,337.337 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 13:39:29,340.340 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 13:39:29,343.343 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 13:39:31,382.382 INFO    ] ================================================
[2026-06-12 13:39:31,397.397 INFO    ] Launching Daemon at Fri Jun 12 13:39:31 IST 2026
[2026-06-12 13:39:31,409.409 INFO    ] ================================================
[2026-06-12 13:39:31,822.822 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 13:39:31
[2026-06-12 13:39:32,199.199 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 13:39:32,371.371 INFO    ] Initializing speech engine...
[2026-06-12 13:39:32,379.379 INFO    ] 2026-06-12 13:39:32
[2026-06-12 13:39:32,600.600 INFO    ] 2026-06-12 13:39:32
[2026-06-12 13:39:32,629.629 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 13:39:32,812.812 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 13:39:32,822.822 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 13:39:32,967.967 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 13:39:33,020.020 INFO    ] time= 12/06/2026 13:39:32
[2026-06-12 13:39:33,042.042 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 13:39:33,048.048 INFO    ] Checking for existing commands in stream...
[2026-06-12 13:39:33,115.115 INFO    ] No existing commands found in stream
[2026-06-12 13:39:38,130.130 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 13:39:38,133.133 INFO    ] Waiting 1.63 seconds before fallback handling...
[2026-06-12 13:39:40,154.154 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 13:39:40,156.156 INFO    ] Checking for system updates...
[2026-06-12 13:39:40,178.178 INFO    ] 200
[2026-06-12 13:39:40,179.179 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:39:40,210.210 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 13:39:40,211.211 INFO    ] No update needed
[2026-06-12 13:39:40,213.213 INFO    ] Checking for camera pi updates...
[2026-06-12 13:39:40,232.232 INFO    ] 200
[2026-06-12 13:39:40,233.233 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:39:40,257.257 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 13:39:40,300.300 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 13:39:40,302.302 INFO    ] No camera update needed
[2026-06-12 13:39:40,303.303 INFO    ] Script finished. Safe exiting...
[2026-06-12 13:39:40,304.304 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 13:39:40,308.308 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 13:39:40,311.311 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 13:39:42,351.351 INFO    ] ================================================
[2026-06-12 13:39:42,367.367 INFO    ] Launching Daemon at Fri Jun 12 13:39:42 IST 2026
[2026-06-12 13:39:42,378.378 INFO    ] ================================================
[2026-06-12 13:39:42,717.717 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 13:39:42
[2026-06-12 13:39:43,029.029 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 13:39:43,171.171 INFO    ] Initializing speech engine...
[2026-06-12 13:39:43,175.175 INFO    ] 2026-06-12 13:39:43
[2026-06-12 13:39:43,381.381 INFO    ] 2026-06-12 13:39:43
[2026-06-12 13:39:43,410.410 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 13:39:43,594.594 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 13:39:43,598.598 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 13:39:43,728.728 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 13:39:43,779.779 INFO    ] time= 12/06/2026 13:39:43
[2026-06-12 13:39:43,824.824 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 13:39:43,829.829 INFO    ] Checking for existing commands in stream...
[2026-06-12 13:39:43,900.900 INFO    ] No existing commands found in stream
[2026-06-12 13:39:48,910.910 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 13:39:48,913.913 INFO    ] Waiting 2.02 seconds before fallback handling...
[2026-06-12 13:39:51,286.286 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 13:39:51,288.288 INFO    ] Checking for system updates...
[2026-06-12 13:39:51,308.308 INFO    ] 200
[2026-06-12 13:39:51,309.309 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:39:51,341.341 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 13:39:51,343.343 INFO    ] No update needed
[2026-06-12 13:39:51,344.344 INFO    ] Checking for camera pi updates...
[2026-06-12 13:39:51,363.363 INFO    ] 200
[2026-06-12 13:39:51,364.364 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:39:51,386.386 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 13:39:51,430.430 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 13:39:51,431.431 INFO    ] No camera update needed
[2026-06-12 13:39:51,432.432 INFO    ] Script finished. Safe exiting...
[2026-06-12 13:39:51,433.433 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 13:39:51,436.436 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 13:39:51,439.439 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 13:39:53,469.469 INFO    ] ================================================
[2026-06-12 13:39:53,477.477 INFO    ] Launching Daemon at Fri Jun 12 13:39:53 IST 2026
[2026-06-12 13:39:53,483.483 INFO    ] ================================================
[2026-06-12 13:39:53,831.831 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 13:39:53
[2026-06-12 13:39:54,144.144 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 13:39:54,276.276 INFO    ] Initializing speech engine...
[2026-06-12 13:39:54,280.280 INFO    ] 2026-06-12 13:39:54
[2026-06-12 13:39:54,510.510 INFO    ] 2026-06-12 13:39:54
[2026-06-12 13:39:54,541.541 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 13:39:54,738.738 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 13:39:54,748.748 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 13:39:54,881.881 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 13:39:54,922.922 INFO    ] time= 12/06/2026 13:39:54
[2026-06-12 13:39:54,966.966 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 13:39:54,989.989 INFO    ] Checking for existing commands in stream...
[2026-06-12 13:39:55,064.064 INFO    ] No existing commands found in stream
[2026-06-12 13:40:00,075.075 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 13:40:00,077.077 INFO    ] Waiting 2.41 seconds before fallback handling...
[2026-06-12 13:40:02,807.807 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 13:40:02,810.810 INFO    ] Checking for system updates...
[2026-06-12 13:40:02,856.856 INFO    ] 200
[2026-06-12 13:40:02,860.860 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:40:02,912.912 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 13:40:02,914.914 INFO    ] No update needed
[2026-06-12 13:40:02,916.916 INFO    ] Checking for camera pi updates...
[2026-06-12 13:40:02,948.948 INFO    ] 200
[2026-06-12 13:40:02,951.951 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:40:02,974.974 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 13:40:03,022.022 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 13:40:03,023.023 INFO    ] No camera update needed
[2026-06-12 13:40:03,025.025 INFO    ] Script finished. Safe exiting...
[2026-06-12 13:40:03,026.026 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 13:40:03,030.030 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 13:40:03,033.033 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 13:40:05,074.074 INFO    ] ================================================
[2026-06-12 13:40:05,090.090 INFO    ] Launching Daemon at Fri Jun 12 13:40:05 IST 2026
[2026-06-12 13:40:05,101.101 INFO    ] ================================================
[2026-06-12 13:40:05,442.442 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 13:40:05
[2026-06-12 13:40:05,761.761 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 13:40:05,898.898 INFO    ] Initializing speech engine...
[2026-06-12 13:40:05,907.907 INFO    ] 2026-06-12 13:40:05
[2026-06-12 13:40:06,131.131 INFO    ] 2026-06-12 13:40:06
[2026-06-12 13:40:06,162.162 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 13:40:06,302.302 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 13:40:06,360.360 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 13:40:06,503.503 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 13:40:06,566.566 INFO    ] time= 12/06/2026 13:40:06
[2026-06-12 13:40:06,598.598 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 13:40:06,604.604 INFO    ] Checking for existing commands in stream...
[2026-06-12 13:40:06,671.671 INFO    ] No existing commands found in stream
[2026-06-12 13:40:11,680.680 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 13:40:11,683.683 INFO    ] Waiting 2.67 seconds before fallback handling...
[2026-06-12 13:40:14,713.713 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 13:40:14,714.714 INFO    ] Checking for system updates...
[2026-06-12 13:40:14,735.735 INFO    ] 200
[2026-06-12 13:40:14,736.736 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:40:14,768.768 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 13:40:14,769.769 INFO    ] No update needed
[2026-06-12 13:40:14,771.771 INFO    ] Checking for camera pi updates...
[2026-06-12 13:40:14,790.790 INFO    ] 200
[2026-06-12 13:40:14,791.791 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:40:14,815.815 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 13:40:14,868.868 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 13:40:14,869.869 INFO    ] No camera update needed
[2026-06-12 13:40:14,870.870 INFO    ] Script finished. Safe exiting...
[2026-06-12 13:40:14,872.872 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 13:40:14,876.876 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 13:40:14,878.878 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 13:40:16,916.916 INFO    ] ================================================
[2026-06-12 13:40:16,932.932 INFO    ] Launching Daemon at Fri Jun 12 13:40:16 IST 2026
[2026-06-12 13:40:16,943.943 INFO    ] ================================================
[2026-06-12 13:40:17,311.311 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 13:40:17
[2026-06-12 13:40:17,647.647 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 13:40:17,797.797 INFO    ] Initializing speech engine...
[2026-06-12 13:40:17,803.803 INFO    ] 2026-06-12 13:40:17
[2026-06-12 13:40:18,013.013 INFO    ] 2026-06-12 13:40:17
[2026-06-12 13:40:18,042.042 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 13:40:18,164.164 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 13:40:18,214.214 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 13:40:18,374.374 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 13:40:18,437.437 INFO    ] time= 12/06/2026 13:40:18
[2026-06-12 13:40:18,461.461 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 13:40:18,467.467 INFO    ] Checking for existing commands in stream...
[2026-06-12 13:40:18,535.535 INFO    ] No existing commands found in stream
[2026-06-12 13:40:23,549.549 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 13:40:23,553.553 INFO    ] Waiting 3.15 seconds before fallback handling...
[2026-06-12 13:40:27,055.055 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 13:40:27,057.057 INFO    ] Checking for system updates...
[2026-06-12 13:40:27,077.077 INFO    ] 200
[2026-06-12 13:40:27,079.079 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:40:27,109.109 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 13:40:27,110.110 INFO    ] No update needed
[2026-06-12 13:40:27,112.112 INFO    ] Checking for camera pi updates...
[2026-06-12 13:40:27,131.131 INFO    ] 200
[2026-06-12 13:40:27,132.132 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:40:27,161.161 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 13:40:27,268.268 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 13:40:27,270.270 INFO    ] No camera update needed
[2026-06-12 13:40:27,272.272 INFO    ] Script finished. Safe exiting...
[2026-06-12 13:40:27,273.273 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 13:40:27,276.276 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 13:40:27,279.279 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 13:40:29,319.319 INFO    ] ================================================
[2026-06-12 13:40:29,336.336 INFO    ] Launching Daemon at Fri Jun 12 13:40:29 IST 2026
[2026-06-12 13:40:29,347.347 INFO    ] ================================================
[2026-06-12 13:40:29,691.691 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 13:40:29
[2026-06-12 13:40:30,003.003 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 13:40:30,133.133 INFO    ] Initializing speech engine...
[2026-06-12 13:40:30,142.142 INFO    ] 2026-06-12 13:40:30
[2026-06-12 13:40:30,354.354 INFO    ] 2026-06-12 13:40:30
[2026-06-12 13:40:30,384.384 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 13:40:30,570.570 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 13:40:30,579.579 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 13:40:30,708.708 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 13:40:30,764.764 INFO    ] time= 12/06/2026 13:40:30
[2026-06-12 13:40:30,799.799 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 13:40:30,804.804 INFO    ] Checking for existing commands in stream...
[2026-06-12 13:40:30,876.876 INFO    ] No existing commands found in stream
[2026-06-12 13:40:35,885.885 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 13:40:35,888.888 INFO    ] Waiting 3.23 seconds before fallback handling...
[2026-06-12 13:40:39,483.483 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 13:40:39,485.485 INFO    ] Checking for system updates...
[2026-06-12 13:40:39,506.506 INFO    ] 200
[2026-06-12 13:40:39,507.507 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:40:39,539.539 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 13:40:39,540.540 INFO    ] No update needed
[2026-06-12 13:40:39,542.542 INFO    ] Checking for camera pi updates...
[2026-06-12 13:40:39,561.561 INFO    ] 200
[2026-06-12 13:40:39,562.562 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:40:39,585.585 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 13:40:39,637.637 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 13:40:39,639.639 INFO    ] No camera update needed
[2026-06-12 13:40:39,640.640 INFO    ] Script finished. Safe exiting...
[2026-06-12 13:40:39,642.642 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 13:40:39,645.645 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 13:40:39,647.647 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 13:40:41,686.686 INFO    ] ================================================
[2026-06-12 13:40:41,707.707 INFO    ] Launching Daemon at Fri Jun 12 13:40:41 IST 2026
[2026-06-12 13:40:41,718.718 INFO    ] ================================================
[2026-06-12 13:40:42,052.052 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 13:40:42
[2026-06-12 13:40:42,364.364 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 13:40:42,495.495 INFO    ] Initializing speech engine...
[2026-06-12 13:40:42,497.497 INFO    ] 2026-06-12 13:40:42
[2026-06-12 13:40:42,689.689 INFO    ] 2026-06-12 13:40:42
[2026-06-12 13:40:42,735.735 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 13:40:42,890.890 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 13:40:42,924.924 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 13:40:43,099.099 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 13:40:43,126.126 INFO    ] time= 12/06/2026 13:40:43
[2026-06-12 13:40:43,181.181 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 13:40:43,207.207 INFO    ] Checking for existing commands in stream...
[2026-06-12 13:40:43,309.309 INFO    ] No existing commands found in stream
[2026-06-12 13:40:48,323.323 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 13:40:48,326.326 INFO    ] Waiting 1.05 seconds before fallback handling...
[2026-06-12 13:40:49,769.769 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 13:40:49,772.772 INFO    ] Checking for system updates...
[2026-06-12 13:40:49,807.807 INFO    ] 200
[2026-06-12 13:40:49,810.810 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:40:49,863.863 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 13:40:49,865.865 INFO    ] No update needed
[2026-06-12 13:40:49,867.867 INFO    ] Checking for camera pi updates...
[2026-06-12 13:40:49,904.904 INFO    ] 200
[2026-06-12 13:40:49,906.906 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:40:49,946.946 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 13:40:50,010.010 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 13:40:50,012.012 INFO    ] No camera update needed
[2026-06-12 13:40:50,014.014 INFO    ] Script finished. Safe exiting...
[2026-06-12 13:40:50,017.017 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 13:40:50,022.022 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 13:40:50,027.027 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 13:40:52,067.067 INFO    ] ================================================
[2026-06-12 13:40:52,082.082 INFO    ] Launching Daemon at Fri Jun 12 13:40:52 IST 2026
[2026-06-12 13:40:52,094.094 INFO    ] ================================================
[2026-06-12 13:40:52,461.461 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 13:40:52
[2026-06-12 13:40:52,778.778 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 13:40:52,909.909 INFO    ] Initializing speech engine...
[2026-06-12 13:40:52,917.917 INFO    ] 2026-06-12 13:40:52
[2026-06-12 13:40:53,129.129 INFO    ] 2026-06-12 13:40:53
[2026-06-12 13:40:53,158.158 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 13:40:53,344.344 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 13:40:53,348.348 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 13:40:53,479.479 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 13:40:53,540.540 INFO    ] time= 12/06/2026 13:40:53
[2026-06-12 13:40:53,575.575 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 13:40:53,580.580 INFO    ] Checking for existing commands in stream...
[2026-06-12 13:40:53,653.653 INFO    ] No existing commands found in stream
[2026-06-12 13:40:58,662.662 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 13:40:58,665.665 INFO    ] Waiting 1.99 seconds before fallback handling...
[2026-06-12 13:41:01,004.004 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 13:41:01,005.005 INFO    ] Checking for system updates...
[2026-06-12 13:41:01,025.025 INFO    ] 200
[2026-06-12 13:41:01,026.026 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:41:01,058.058 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 13:41:01,060.060 INFO    ] No update needed
[2026-06-12 13:41:01,061.061 INFO    ] Checking for camera pi updates...
[2026-06-12 13:41:01,080.080 INFO    ] 200
[2026-06-12 13:41:01,082.082 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:41:01,104.104 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 13:41:01,263.263 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 13:41:01,265.265 INFO    ] No camera update needed
[2026-06-12 13:41:01,266.266 INFO    ] Script finished. Safe exiting...
[2026-06-12 13:41:01,267.267 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 13:41:01,270.270 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 13:41:01,273.273 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 13:41:03,306.306 INFO    ] ================================================
[2026-06-12 13:41:03,322.322 INFO    ] Launching Daemon at Fri Jun 12 13:41:03 IST 2026
[2026-06-12 13:41:03,333.333 INFO    ] ================================================
[2026-06-12 13:41:03,687.687 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 13:41:03
[2026-06-12 13:41:03,999.999 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 13:41:04,136.136 INFO    ] Initializing speech engine...
[2026-06-12 13:41:04,146.146 INFO    ] 2026-06-12 13:41:04
[2026-06-12 13:41:04,352.352 INFO    ] 2026-06-12 13:41:04
[2026-06-12 13:41:04,381.381 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 13:41:04,567.567 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 13:41:04,575.575 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 13:41:04,699.699 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 13:41:04,755.755 INFO    ] time= 12/06/2026 13:41:04
[2026-06-12 13:41:04,790.790 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 13:41:04,800.800 INFO    ] Checking for existing commands in stream...
[2026-06-12 13:41:04,872.872 INFO    ] No existing commands found in stream
[2026-06-12 13:41:09,886.886 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 13:41:09,895.895 INFO    ] Waiting 1.24 seconds before fallback handling...
[2026-06-12 13:41:11,493.493 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 13:41:11,494.494 INFO    ] Checking for system updates...
[2026-06-12 13:41:11,515.515 INFO    ] 200
[2026-06-12 13:41:11,517.517 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:41:11,546.546 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 13:41:11,548.548 INFO    ] No update needed
[2026-06-12 13:41:11,549.549 INFO    ] Checking for camera pi updates...
[2026-06-12 13:41:11,568.568 INFO    ] 200
[2026-06-12 13:41:11,569.569 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:41:11,591.591 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 13:41:11,640.640 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 13:41:11,641.641 INFO    ] No camera update needed
[2026-06-12 13:41:11,643.643 INFO    ] Script finished. Safe exiting...
[2026-06-12 13:41:11,644.644 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 13:41:11,647.647 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 13:41:11,649.649 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 13:41:13,689.689 INFO    ] ================================================
[2026-06-12 13:41:13,705.705 INFO    ] Launching Daemon at Fri Jun 12 13:41:13 IST 2026
[2026-06-12 13:41:13,716.716 INFO    ] ================================================
[2026-06-12 13:41:14,052.052 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 13:41:14
[2026-06-12 13:41:14,369.369 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 13:41:14,500.500 INFO    ] Initializing speech engine...
[2026-06-12 13:41:14,508.508 INFO    ] 2026-06-12 13:41:14
[2026-06-12 13:41:14,721.721 INFO    ] 2026-06-12 13:41:14
[2026-06-12 13:41:14,749.749 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 13:41:14,933.933 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 13:41:14,943.943 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 13:41:15,072.072 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 13:41:15,131.131 INFO    ] time= 12/06/2026 13:41:15
[2026-06-12 13:41:15,163.163 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 13:41:15,169.169 INFO    ] Checking for existing commands in stream...
[2026-06-12 13:41:15,236.236 INFO    ] No existing commands found in stream
[2026-06-12 13:41:20,260.260 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 13:41:20,263.263 INFO    ] Waiting 1.04 seconds before fallback handling...
[2026-06-12 13:41:21,655.655 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 13:41:21,656.656 INFO    ] Checking for system updates...
[2026-06-12 13:41:21,676.676 INFO    ] 200
[2026-06-12 13:41:21,678.678 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:41:21,711.711 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 13:41:21,712.712 INFO    ] No update needed
[2026-06-12 13:41:21,713.713 INFO    ] Checking for camera pi updates...
[2026-06-12 13:41:21,732.732 INFO    ] 200
[2026-06-12 13:41:21,734.734 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:41:21,756.756 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 13:41:21,810.810 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 13:41:21,811.811 INFO    ] No camera update needed
[2026-06-12 13:41:21,812.812 INFO    ] Script finished. Safe exiting...
[2026-06-12 13:41:21,814.814 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 13:41:21,817.817 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 13:41:21,819.819 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 13:41:23,856.856 INFO    ] ================================================
[2026-06-12 13:41:23,872.872 INFO    ] Launching Daemon at Fri Jun 12 13:41:23 IST 2026
[2026-06-12 13:41:23,884.884 INFO    ] ================================================
[2026-06-12 13:41:24,230.230 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 13:41:24
[2026-06-12 13:41:24,540.540 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 13:41:24,678.678 INFO    ] Initializing speech engine...
[2026-06-12 13:41:24,689.689 INFO    ] 2026-06-12 13:41:24
[2026-06-12 13:41:24,892.892 INFO    ] 2026-06-12 13:41:24
[2026-06-12 13:41:24,922.922 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 13:41:25,106.106 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 13:41:25,110.110 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 13:41:25,239.239 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 13:41:25,295.295 INFO    ] time= 12/06/2026 13:41:25
[2026-06-12 13:41:25,335.335 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 13:41:25,340.340 INFO    ] Checking for existing commands in stream...
[2026-06-12 13:41:25,410.410 INFO    ] No existing commands found in stream
[2026-06-12 13:41:30,421.421 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 13:41:30,429.429 INFO    ] Waiting 2.39 seconds before fallback handling...
[2026-06-12 13:41:33,178.178 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 13:41:33,180.180 INFO    ] Checking for system updates...
[2026-06-12 13:41:33,201.201 INFO    ] 200
[2026-06-12 13:41:33,202.202 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:41:33,233.233 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 13:41:33,235.235 INFO    ] No update needed
[2026-06-12 13:41:33,236.236 INFO    ] Checking for camera pi updates...
[2026-06-12 13:41:33,255.255 INFO    ] 200
[2026-06-12 13:41:33,256.256 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:41:33,279.279 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 13:41:33,307.307 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 13:41:33,309.309 INFO    ] No camera update needed
[2026-06-12 13:41:33,310.310 INFO    ] Script finished. Safe exiting...
[2026-06-12 13:41:33,311.311 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 13:41:33,314.314 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 13:41:33,317.317 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 13:41:35,354.354 INFO    ] ================================================
[2026-06-12 13:41:35,369.369 INFO    ] Launching Daemon at Fri Jun 12 13:41:35 IST 2026
[2026-06-12 13:41:35,381.381 INFO    ] ================================================
[2026-06-12 13:41:35,733.733 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 13:41:35
[2026-06-12 13:41:36,046.046 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 13:41:36,178.178 INFO    ] Initializing speech engine...
[2026-06-12 13:41:36,183.183 INFO    ] 2026-06-12 13:41:36
[2026-06-12 13:41:36,412.412 INFO    ] 2026-06-12 13:41:36
[2026-06-12 13:41:36,443.443 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 13:41:36,641.641 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 13:41:36,645.645 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 13:41:36,793.793 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 13:41:36,856.856 INFO    ] time= 12/06/2026 13:41:36
[2026-06-12 13:41:36,880.880 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 13:41:36,886.886 INFO    ] Checking for existing commands in stream...
[2026-06-12 13:41:36,954.954 INFO    ] No existing commands found in stream
[2026-06-12 13:41:41,962.962 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 13:41:41,965.965 INFO    ] Waiting 0.70 seconds before fallback handling...
[2026-06-12 13:41:43,016.016 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 13:41:43,017.017 INFO    ] Checking for system updates...
[2026-06-12 13:41:43,039.039 INFO    ] 200
[2026-06-12 13:41:43,041.041 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:41:43,072.072 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 13:41:43,074.074 INFO    ] No update needed
[2026-06-12 13:41:43,075.075 INFO    ] Checking for camera pi updates...
[2026-06-12 13:41:43,095.095 INFO    ] 200
[2026-06-12 13:41:43,096.096 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:41:43,119.119 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 13:41:43,160.160 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 13:41:43,161.161 INFO    ] No camera update needed
[2026-06-12 13:41:43,162.162 INFO    ] Script finished. Safe exiting...
[2026-06-12 13:41:43,164.164 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 13:41:43,167.167 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 13:41:43,169.169 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 13:41:45,207.207 INFO    ] ================================================
[2026-06-12 13:41:45,222.222 INFO    ] Launching Daemon at Fri Jun 12 13:41:45 IST 2026
[2026-06-12 13:41:45,234.234 INFO    ] ================================================
[2026-06-12 13:41:45,591.591 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 13:41:45
[2026-06-12 13:41:45,908.908 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 13:41:46,050.050 INFO    ] Initializing speech engine...
[2026-06-12 13:41:46,056.056 INFO    ] 2026-06-12 13:41:46
[2026-06-12 13:41:46,260.260 INFO    ] 2026-06-12 13:41:46
[2026-06-12 13:41:46,288.288 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 13:41:46,473.473 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 13:41:46,483.483 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 13:41:46,611.611 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 13:41:46,670.670 INFO    ] time= 12/06/2026 13:41:46
[2026-06-12 13:41:46,701.701 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 13:41:46,708.708 INFO    ] Checking for existing commands in stream...
[2026-06-12 13:41:46,775.775 INFO    ] No existing commands found in stream
[2026-06-12 13:41:51,781.781 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 13:41:51,783.783 INFO    ] Waiting 1.37 seconds before fallback handling...
[2026-06-12 13:41:54,361.361 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 13:41:54,363.363 INFO    ] Checking for system updates...
[2026-06-12 13:41:54,398.398 INFO    ] 200
[2026-06-12 13:41:54,401.401 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:41:54,460.460 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 13:41:54,462.462 INFO    ] No update needed
[2026-06-12 13:41:54,465.465 INFO    ] Checking for camera pi updates...
[2026-06-12 13:41:54,498.498 INFO    ] 200
[2026-06-12 13:41:54,501.501 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:41:54,530.530 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 13:41:54,581.581 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 13:41:54,583.583 INFO    ] No camera update needed
[2026-06-12 13:41:54,584.584 INFO    ] Script finished. Safe exiting...
[2026-06-12 13:41:54,585.585 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 13:41:54,588.588 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 13:41:54,591.591 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 13:41:56,631.631 INFO    ] ================================================
[2026-06-12 13:41:56,647.647 INFO    ] Launching Daemon at Fri Jun 12 13:41:56 IST 2026
[2026-06-12 13:41:56,658.658 INFO    ] ================================================
[2026-06-12 13:41:57,009.009 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 13:41:57
[2026-06-12 13:41:57,345.345 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 13:41:57,500.500 INFO    ] Initializing speech engine...
[2026-06-12 13:41:57,504.504 INFO    ] 2026-06-12 13:41:57
[2026-06-12 13:41:57,714.714 INFO    ] 2026-06-12 13:41:57
[2026-06-12 13:41:57,742.742 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 13:41:57,929.929 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 13:41:57,939.939 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 13:41:58,082.082 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 13:41:58,139.139 INFO    ] time= 12/06/2026 13:41:58
[2026-06-12 13:41:58,163.163 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 13:41:58,170.170 INFO    ] Checking for existing commands in stream...
[2026-06-12 13:41:58,236.236 INFO    ] No existing commands found in stream
[2026-06-12 13:42:03,247.247 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 13:42:03,250.250 INFO    ] Waiting 2.15 seconds before fallback handling...
[2026-06-12 13:42:05,726.726 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 13:42:05,729.729 INFO    ] Checking for system updates...
[2026-06-12 13:42:05,770.770 INFO    ] 200
[2026-06-12 13:42:05,773.773 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:42:05,825.825 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 13:42:05,828.828 INFO    ] No update needed
[2026-06-12 13:42:05,830.830 INFO    ] Checking for camera pi updates...
[2026-06-12 13:42:05,859.859 INFO    ] 200
[2026-06-12 13:42:05,861.861 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:42:05,883.883 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 13:42:05,942.942 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 13:42:05,944.944 INFO    ] No camera update needed
[2026-06-12 13:42:05,945.945 INFO    ] Script finished. Safe exiting...
[2026-06-12 13:42:05,946.946 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 13:42:05,949.949 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 13:42:05,952.952 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 13:42:07,991.991 INFO    ] ================================================
[2026-06-12 13:42:08,007.007 INFO    ] Launching Daemon at Fri Jun 12 13:42:08 IST 2026
[2026-06-12 13:42:08,019.019 INFO    ] ================================================
[2026-06-12 13:42:08,362.362 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 13:42:08
[2026-06-12 13:42:08,673.673 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 13:42:08,811.811 INFO    ] Initializing speech engine...
[2026-06-12 13:42:08,821.821 INFO    ] 2026-06-12 13:42:08
[2026-06-12 13:42:09,025.025 INFO    ] 2026-06-12 13:42:09
[2026-06-12 13:42:09,054.054 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 13:42:09,241.241 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 13:42:09,250.250 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 13:42:09,374.374 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 13:42:09,435.435 INFO    ] time= 12/06/2026 13:42:09
[2026-06-12 13:42:09,473.473 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 13:42:09,479.479 INFO    ] Checking for existing commands in stream...
[2026-06-12 13:42:09,547.547 INFO    ] No existing commands found in stream
[2026-06-12 13:42:14,561.561 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 13:42:14,564.564 INFO    ] Waiting 2.76 seconds before fallback handling...
[2026-06-12 13:42:17,649.649 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 13:42:17,650.650 INFO    ] Checking for system updates...
[2026-06-12 13:42:17,671.671 INFO    ] 200
[2026-06-12 13:42:17,672.672 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:42:17,705.705 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 13:42:17,707.707 INFO    ] No update needed
[2026-06-12 13:42:17,708.708 INFO    ] Checking for camera pi updates...
[2026-06-12 13:42:17,728.728 INFO    ] 200
[2026-06-12 13:42:17,729.729 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:42:17,752.752 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 13:42:17,785.785 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 13:42:17,786.786 INFO    ] No camera update needed
[2026-06-12 13:42:17,787.787 INFO    ] Script finished. Safe exiting...
[2026-06-12 13:42:17,788.788 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 13:42:17,791.791 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 13:42:17,794.794 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 13:42:19,833.833 INFO    ] ================================================
[2026-06-12 13:42:19,849.849 INFO    ] Launching Daemon at Fri Jun 12 13:42:19 IST 2026
[2026-06-12 13:42:19,860.860 INFO    ] ================================================
[2026-06-12 13:42:20,226.226 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 13:42:20
[2026-06-12 13:42:20,538.538 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 13:42:20,674.674 INFO    ] Initializing speech engine...
[2026-06-12 13:42:20,686.686 INFO    ] 2026-06-12 13:42:20
[2026-06-12 13:42:20,903.903 INFO    ] 2026-06-12 13:42:20
[2026-06-12 13:42:20,934.934 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 13:42:21,130.130 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 13:42:21,139.139 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 13:42:21,279.279 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 13:42:21,341.341 INFO    ] time= 12/06/2026 13:42:21
[2026-06-12 13:42:21,383.383 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 13:42:21,385.385 INFO    ] Checking for existing commands in stream...
[2026-06-12 13:42:21,460.460 INFO    ] No existing commands found in stream
[2026-06-12 13:42:26,471.471 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 13:42:26,473.473 INFO    ] Waiting 1.37 seconds before fallback handling...
[2026-06-12 13:42:28,130.130 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 13:42:28,132.132 INFO    ] Checking for system updates...
[2026-06-12 13:42:28,153.153 INFO    ] 200
[2026-06-12 13:42:28,154.154 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:42:28,186.186 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 13:42:28,188.188 INFO    ] No update needed
[2026-06-12 13:42:28,191.191 INFO    ] Checking for camera pi updates...
[2026-06-12 13:42:28,228.228 INFO    ] 200
[2026-06-12 13:42:28,231.231 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:42:28,271.271 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 13:42:28,323.323 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 13:42:28,324.324 INFO    ] No camera update needed
[2026-06-12 13:42:28,325.325 INFO    ] Script finished. Safe exiting...
[2026-06-12 13:42:28,326.326 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 13:42:28,329.329 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 13:42:28,332.332 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 13:42:30,371.371 INFO    ] ================================================
[2026-06-12 13:42:30,386.386 INFO    ] Launching Daemon at Fri Jun 12 13:42:30 IST 2026
[2026-06-12 13:42:30,397.397 INFO    ] ================================================
[2026-06-12 13:42:30,765.765 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 13:42:30
[2026-06-12 13:42:31,078.078 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 13:42:31,208.208 INFO    ] Initializing speech engine...
[2026-06-12 13:42:31,212.212 INFO    ] 2026-06-12 13:42:31
[2026-06-12 13:42:31,431.431 INFO    ] 2026-06-12 13:42:31
[2026-06-12 13:42:31,461.461 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 13:42:31,614.614 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 13:42:31,666.666 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 13:42:31,818.818 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 13:42:31,889.889 INFO    ] time= 12/06/2026 13:42:31
[2026-06-12 13:42:31,919.919 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 13:42:31,927.927 INFO    ] Checking for existing commands in stream...
[2026-06-12 13:42:31,998.998 INFO    ] No existing commands found in stream
[2026-06-12 13:42:37,012.012 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 13:42:37,015.015 INFO    ] Waiting 1.68 seconds before fallback handling...
[2026-06-12 13:42:38,997.997 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 13:42:38,998.998 INFO    ] Checking for system updates...
[2026-06-12 13:42:39,019.019 INFO    ] 200
[2026-06-12 13:42:39,021.021 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:42:39,051.051 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 13:42:39,052.052 INFO    ] No update needed
[2026-06-12 13:42:39,054.054 INFO    ] Checking for camera pi updates...
[2026-06-12 13:42:39,074.074 INFO    ] 200
[2026-06-12 13:42:39,076.076 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:42:39,102.102 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 13:42:39,144.144 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 13:42:39,146.146 INFO    ] No camera update needed
[2026-06-12 13:42:39,147.147 INFO    ] Script finished. Safe exiting...
[2026-06-12 13:42:39,148.148 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 13:42:39,152.152 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 13:42:39,155.155 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 13:42:41,194.194 INFO    ] ================================================
[2026-06-12 13:42:41,210.210 INFO    ] Launching Daemon at Fri Jun 12 13:42:41 IST 2026
[2026-06-12 13:42:41,221.221 INFO    ] ================================================
[2026-06-12 13:42:41,584.584 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 13:42:41
[2026-06-12 13:42:41,919.919 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 13:42:42,070.070 INFO    ] Initializing speech engine...
[2026-06-12 13:42:42,075.075 INFO    ] 2026-06-12 13:42:42
[2026-06-12 13:42:42,284.284 INFO    ] 2026-06-12 13:42:42
[2026-06-12 13:42:42,313.313 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 13:42:42,497.497 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 13:42:42,507.507 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 13:42:42,638.638 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 13:42:42,698.698 INFO    ] time= 12/06/2026 13:42:42
[2026-06-12 13:42:42,730.730 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 13:42:42,736.736 INFO    ] Checking for existing commands in stream...
[2026-06-12 13:42:42,803.803 INFO    ] No existing commands found in stream
[2026-06-12 13:42:47,817.817 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 13:42:47,821.821 INFO    ] Waiting 3.49 seconds before fallback handling...
[2026-06-12 13:42:51,661.661 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 13:42:51,662.662 INFO    ] Checking for system updates...
[2026-06-12 13:42:51,683.683 INFO    ] 200
[2026-06-12 13:42:51,684.684 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:42:51,714.714 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 13:42:51,715.715 INFO    ] No update needed
[2026-06-12 13:42:51,716.716 INFO    ] Checking for camera pi updates...
[2026-06-12 13:42:51,737.737 INFO    ] 200
[2026-06-12 13:42:51,738.738 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:42:51,765.765 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 13:42:51,866.866 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 13:42:51,867.867 INFO    ] No camera update needed
[2026-06-12 13:42:51,869.869 INFO    ] Script finished. Safe exiting...
[2026-06-12 13:42:51,870.870 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 13:42:51,874.874 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 13:42:51,877.877 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 13:42:53,916.916 INFO    ] ================================================
[2026-06-12 13:42:53,932.932 INFO    ] Launching Daemon at Fri Jun 12 13:42:53 IST 2026
[2026-06-12 13:42:53,942.942 INFO    ] ================================================
[2026-06-12 13:42:54,305.305 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 13:42:54
[2026-06-12 13:42:54,640.640 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 13:42:54,780.780 INFO    ] Initializing speech engine...
[2026-06-12 13:42:54,792.792 INFO    ] 2026-06-12 13:42:54
[2026-06-12 13:42:55,003.003 INFO    ] 2026-06-12 13:42:54
[2026-06-12 13:42:55,032.032 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 13:42:55,216.216 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 13:42:55,225.225 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 13:42:55,360.360 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 13:42:55,422.422 INFO    ] time= 12/06/2026 13:42:55
[2026-06-12 13:42:55,446.446 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 13:42:55,453.453 INFO    ] Checking for existing commands in stream...
[2026-06-12 13:42:55,519.519 INFO    ] No existing commands found in stream
[2026-06-12 13:43:00,529.529 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 13:43:00,532.532 INFO    ] Waiting 2.81 seconds before fallback handling...
[2026-06-12 13:43:03,731.731 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 13:43:03,732.732 INFO    ] Checking for system updates...
[2026-06-12 13:43:03,753.753 INFO    ] 200
[2026-06-12 13:43:03,754.754 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:43:03,788.788 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 13:43:03,789.789 INFO    ] No update needed
[2026-06-12 13:43:03,790.790 INFO    ] Checking for camera pi updates...
[2026-06-12 13:43:03,809.809 INFO    ] 200
[2026-06-12 13:43:03,811.811 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:43:03,834.834 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 13:43:03,973.973 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 13:43:03,974.974 INFO    ] No camera update needed
[2026-06-12 13:43:03,976.976 INFO    ] Script finished. Safe exiting...
[2026-06-12 13:43:03,977.977 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 13:43:03,980.980 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 13:43:03,983.983 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 13:43:06,021.021 INFO    ] ================================================
[2026-06-12 13:43:06,037.037 INFO    ] Launching Daemon at Fri Jun 12 13:43:06 IST 2026
[2026-06-12 13:43:06,047.047 INFO    ] ================================================
[2026-06-12 13:43:06,416.416 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 13:43:06
[2026-06-12 13:43:06,727.727 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 13:43:06,858.858 INFO    ] Initializing speech engine...
[2026-06-12 13:43:06,862.862 INFO    ] 2026-06-12 13:43:06
[2026-06-12 13:43:07,084.084 INFO    ] 2026-06-12 13:43:07
[2026-06-12 13:43:07,114.114 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 13:43:07,300.300 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 13:43:07,304.304 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 13:43:07,442.442 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 13:43:07,501.501 INFO    ] time= 12/06/2026 13:43:07
[2026-06-12 13:43:07,534.534 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 13:43:07,536.536 INFO    ] Checking for existing commands in stream...
[2026-06-12 13:43:07,608.608 INFO    ] No existing commands found in stream
[2026-06-12 13:43:12,617.617 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 13:43:12,620.620 INFO    ] Waiting 2.68 seconds before fallback handling...
[2026-06-12 13:43:15,655.655 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 13:43:15,656.656 INFO    ] Checking for system updates...
[2026-06-12 13:43:15,677.677 INFO    ] 200
[2026-06-12 13:43:15,678.678 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:43:15,712.712 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 13:43:15,713.713 INFO    ] No update needed
[2026-06-12 13:43:15,715.715 INFO    ] Checking for camera pi updates...
[2026-06-12 13:43:15,734.734 INFO    ] 200
[2026-06-12 13:43:15,735.735 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:43:15,760.760 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 13:43:15,802.802 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 13:43:15,803.803 INFO    ] No camera update needed
[2026-06-12 13:43:15,804.804 INFO    ] Script finished. Safe exiting...
[2026-06-12 13:43:15,806.806 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 13:43:15,809.809 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 13:43:15,812.812 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 13:43:17,850.850 INFO    ] ================================================
[2026-06-12 13:43:17,865.865 INFO    ] Launching Daemon at Fri Jun 12 13:43:17 IST 2026
[2026-06-12 13:43:17,876.876 INFO    ] ================================================
[2026-06-12 13:43:18,225.225 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 13:43:18
[2026-06-12 13:43:18,536.536 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 13:43:18,679.679 INFO    ] Initializing speech engine...
[2026-06-12 13:43:18,684.684 INFO    ] 2026-06-12 13:43:18
[2026-06-12 13:43:18,889.889 INFO    ] 2026-06-12 13:43:18
[2026-06-12 13:43:18,902.902 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 13:43:19,106.106 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 13:43:19,109.109 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 13:43:19,240.240 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 13:43:19,295.295 INFO    ] time= 12/06/2026 13:43:19
[2026-06-12 13:43:19,302.302 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 13:43:19,324.324 INFO    ] Checking for existing commands in stream...
[2026-06-12 13:43:19,421.421 INFO    ] No existing commands found in stream
[2026-06-12 13:43:24,432.432 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 13:43:24,434.434 INFO    ] Waiting 2.49 seconds before fallback handling...
[2026-06-12 13:43:27,282.282 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 13:43:27,283.283 INFO    ] Checking for system updates...
[2026-06-12 13:43:27,304.304 INFO    ] 200
[2026-06-12 13:43:27,305.305 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:43:27,341.341 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 13:43:27,342.342 INFO    ] No update needed
[2026-06-12 13:43:27,343.343 INFO    ] Checking for camera pi updates...
[2026-06-12 13:43:27,364.364 INFO    ] 200
[2026-06-12 13:43:27,365.365 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:43:27,388.388 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 13:43:27,420.420 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 13:43:27,421.421 INFO    ] No camera update needed
[2026-06-12 13:43:27,422.422 INFO    ] Script finished. Safe exiting...
[2026-06-12 13:43:27,424.424 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 13:43:27,427.427 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 13:43:27,429.429 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 13:43:29,466.466 INFO    ] ================================================
[2026-06-12 13:43:29,482.482 INFO    ] Launching Daemon at Fri Jun 12 13:43:29 IST 2026
[2026-06-12 13:43:29,493.493 INFO    ] ================================================
[2026-06-12 13:43:29,840.840 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 13:43:29
[2026-06-12 13:43:30,153.153 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 13:43:30,283.283 INFO    ] Initializing speech engine...
[2026-06-12 13:43:30,287.287 INFO    ] 2026-06-12 13:43:30
[2026-06-12 13:43:30,506.506 INFO    ] 2026-06-12 13:43:30
[2026-06-12 13:43:30,534.534 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 13:43:30,719.719 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 13:43:30,723.723 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 13:43:30,857.857 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 13:43:30,924.924 INFO    ] time= 12/06/2026 13:43:30
[2026-06-12 13:43:30,953.953 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 13:43:30,960.960 INFO    ] Checking for existing commands in stream...
[2026-06-12 13:43:31,027.027 INFO    ] No existing commands found in stream
[2026-06-12 13:43:36,036.036 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 13:43:36,039.039 INFO    ] Waiting 3.40 seconds before fallback handling...
[2026-06-12 13:43:39,799.799 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 13:43:39,801.801 INFO    ] Checking for system updates...
[2026-06-12 13:43:39,822.822 INFO    ] 200
[2026-06-12 13:43:39,823.823 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:43:39,852.852 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 13:43:39,854.854 INFO    ] No update needed
[2026-06-12 13:43:39,855.855 INFO    ] Checking for camera pi updates...
[2026-06-12 13:43:39,875.875 INFO    ] 200
[2026-06-12 13:43:39,877.877 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:43:39,900.900 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 13:43:39,962.962 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 13:43:39,963.963 INFO    ] No camera update needed
[2026-06-12 13:43:39,964.964 INFO    ] Script finished. Safe exiting...
[2026-06-12 13:43:39,966.966 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 13:43:39,969.969 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 13:43:39,971.971 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 13:43:42,008.008 INFO    ] ================================================
[2026-06-12 13:43:42,024.024 INFO    ] Launching Daemon at Fri Jun 12 13:43:42 IST 2026
[2026-06-12 13:43:42,036.036 INFO    ] ================================================
[2026-06-12 13:43:42,404.404 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 13:43:42
[2026-06-12 13:43:42,715.715 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 13:43:42,853.853 INFO    ] Initializing speech engine...
[2026-06-12 13:43:42,863.863 INFO    ] 2026-06-12 13:43:42
[2026-06-12 13:43:43,067.067 INFO    ] 2026-06-12 13:43:43
[2026-06-12 13:43:43,095.095 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 13:43:43,278.278 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 13:43:43,287.287 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 13:43:43,415.415 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 13:43:43,477.477 INFO    ] time= 12/06/2026 13:43:43
[2026-06-12 13:43:43,509.509 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 13:43:43,515.515 INFO    ] Checking for existing commands in stream...
[2026-06-12 13:43:43,581.581 INFO    ] No existing commands found in stream
[2026-06-12 13:43:48,591.591 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 13:43:48,593.593 INFO    ] Waiting 3.33 seconds before fallback handling...
[2026-06-12 13:43:52,272.272 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 13:43:52,273.273 INFO    ] Checking for system updates...
[2026-06-12 13:43:52,293.293 INFO    ] 200
[2026-06-12 13:43:52,295.295 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:43:52,329.329 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 13:43:52,330.330 INFO    ] No update needed
[2026-06-12 13:43:52,332.332 INFO    ] Checking for camera pi updates...
[2026-06-12 13:43:52,352.352 INFO    ] 200
[2026-06-12 13:43:52,353.353 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:43:52,376.376 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 13:43:52,414.414 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 13:43:52,416.416 INFO    ] No camera update needed
[2026-06-12 13:43:52,417.417 INFO    ] Script finished. Safe exiting...
[2026-06-12 13:43:52,418.418 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 13:43:52,421.421 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 13:43:52,424.424 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 13:43:54,463.463 INFO    ] ================================================
[2026-06-12 13:43:54,479.479 INFO    ] Launching Daemon at Fri Jun 12 13:43:54 IST 2026
[2026-06-12 13:43:54,490.490 INFO    ] ================================================
[2026-06-12 13:43:54,823.823 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 13:43:54
[2026-06-12 13:43:55,135.135 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 13:43:55,268.268 INFO    ] Initializing speech engine...
[2026-06-12 13:43:55,280.280 INFO    ] 2026-06-12 13:43:55
[2026-06-12 13:43:55,489.489 INFO    ] 2026-06-12 13:43:55
[2026-06-12 13:43:55,518.518 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 13:43:55,704.704 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 13:43:55,708.708 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 13:43:55,839.839 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 13:43:55,894.894 INFO    ] time= 12/06/2026 13:43:55
[2026-06-12 13:43:55,938.938 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 13:43:55,945.945 INFO    ] Checking for existing commands in stream...
[2026-06-12 13:43:56,011.011 INFO    ] No existing commands found in stream
[2026-06-12 13:44:01,022.022 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 13:44:01,024.024 INFO    ] Waiting 1.40 seconds before fallback handling...
[2026-06-12 13:44:02,741.741 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 13:44:02,743.743 INFO    ] Checking for system updates...
[2026-06-12 13:44:02,768.768 INFO    ] 200
[2026-06-12 13:44:02,770.770 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:44:02,806.806 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 13:44:02,808.808 INFO    ] No update needed
[2026-06-12 13:44:02,810.810 INFO    ] Checking for camera pi updates...
[2026-06-12 13:44:02,833.833 INFO    ] 200
[2026-06-12 13:44:02,834.834 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:44:02,861.861 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 13:44:02,890.890 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 13:44:02,891.891 INFO    ] No camera update needed
[2026-06-12 13:44:02,893.893 INFO    ] Script finished. Safe exiting...
[2026-06-12 13:44:02,894.894 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 13:44:02,897.897 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 13:44:02,900.900 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 13:44:04,938.938 INFO    ] ================================================
[2026-06-12 13:44:04,954.954 INFO    ] Launching Daemon at Fri Jun 12 13:44:04 IST 2026
[2026-06-12 13:44:04,965.965 INFO    ] ================================================
[2026-06-12 13:44:05,309.309 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 13:44:05
[2026-06-12 13:44:05,619.619 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 13:44:05,752.752 INFO    ] Initializing speech engine...
[2026-06-12 13:44:05,755.755 INFO    ] 2026-06-12 13:44:05
[2026-06-12 13:44:05,985.985 INFO    ] 2026-06-12 13:44:05
[2026-06-12 13:44:06,016.016 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 13:44:06,214.214 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 13:44:06,223.223 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 13:44:06,348.348 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 13:44:06,415.415 INFO    ] time= 12/06/2026 13:44:06
[2026-06-12 13:44:06,441.441 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 13:44:06,447.447 INFO    ] Checking for existing commands in stream...
[2026-06-12 13:44:06,513.513 INFO    ] No existing commands found in stream
[2026-06-12 13:44:11,522.522 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 13:44:11,525.525 INFO    ] Waiting 2.63 seconds before fallback handling...
[2026-06-12 13:44:14,530.530 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 13:44:14,531.531 INFO    ] Checking for system updates...
[2026-06-12 13:44:14,551.551 INFO    ] 200
[2026-06-12 13:44:14,553.553 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:44:14,585.585 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 13:44:14,587.587 INFO    ] No update needed
[2026-06-12 13:44:14,588.588 INFO    ] Checking for camera pi updates...
[2026-06-12 13:44:14,607.607 INFO    ] 200
[2026-06-12 13:44:14,608.608 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:44:14,631.631 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 13:44:14,677.677 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 13:44:14,678.678 INFO    ] No camera update needed
[2026-06-12 13:44:14,680.680 INFO    ] Script finished. Safe exiting...
[2026-06-12 13:44:14,681.681 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 13:44:14,684.684 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 13:44:14,687.687 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 13:44:16,723.723 INFO    ] ================================================
[2026-06-12 13:44:16,740.740 INFO    ] Launching Daemon at Fri Jun 12 13:44:16 IST 2026
[2026-06-12 13:44:16,752.752 INFO    ] ================================================
[2026-06-12 13:44:17,122.122 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 13:44:17
[2026-06-12 13:44:17,437.437 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 13:44:17,570.570 INFO    ] Initializing speech engine...
[2026-06-12 13:44:17,575.575 INFO    ] 2026-06-12 13:44:17
[2026-06-12 13:44:17,779.779 INFO    ] 2026-06-12 13:44:17
[2026-06-12 13:44:17,812.812 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 13:44:17,965.965 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 13:44:17,966.966 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 13:44:18,109.109 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 13:44:18,161.161 INFO    ] time= 12/06/2026 13:44:18
[2026-06-12 13:44:18,186.186 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 13:44:18,239.239 INFO    ] Checking for existing commands in stream...
[2026-06-12 13:44:18,350.350 INFO    ] No existing commands found in stream
[2026-06-12 13:44:23,360.360 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 13:44:23,363.363 INFO    ] Waiting 3.17 seconds before fallback handling...
[2026-06-12 13:44:27,578.578 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 13:44:27,581.581 INFO    ] Checking for system updates...
[2026-06-12 13:44:27,622.622 INFO    ] 200
[2026-06-12 13:44:27,624.624 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:44:27,685.685 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 13:44:27,688.688 INFO    ] No update needed
[2026-06-12 13:44:27,691.691 INFO    ] Checking for camera pi updates...
[2026-06-12 13:44:27,724.724 INFO    ] 200
[2026-06-12 13:44:27,725.725 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:44:27,749.749 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 13:44:27,799.799 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 13:44:27,801.801 INFO    ] No camera update needed
[2026-06-12 13:44:27,803.803 INFO    ] Script finished. Safe exiting...
[2026-06-12 13:44:27,804.804 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 13:44:27,807.807 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 13:44:27,810.810 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 13:44:29,848.848 INFO    ] ================================================
[2026-06-12 13:44:29,863.863 INFO    ] Launching Daemon at Fri Jun 12 13:44:29 IST 2026
[2026-06-12 13:44:29,875.875 INFO    ] ================================================
[2026-06-12 13:44:30,215.215 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 13:44:30
[2026-06-12 13:44:30,532.532 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 13:44:30,664.664 INFO    ] Initializing speech engine...
[2026-06-12 13:44:30,667.667 INFO    ] 2026-06-12 13:44:30
[2026-06-12 13:44:30,884.884 INFO    ] 2026-06-12 13:44:30
[2026-06-12 13:44:30,912.912 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 13:44:31,099.099 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 13:44:31,109.109 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 13:44:31,248.248 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 13:44:31,301.301 INFO    ] time= 12/06/2026 13:44:31
[2026-06-12 13:44:31,342.342 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 13:44:31,353.353 INFO    ] Checking for existing commands in stream...
[2026-06-12 13:44:31,474.474 INFO    ] No existing commands found in stream
[2026-06-12 13:44:36,492.492 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 13:44:36,495.495 INFO    ] Waiting 0.26 seconds before fallback handling...
[2026-06-12 13:44:37,131.131 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 13:44:37,132.132 INFO    ] Checking for system updates...
[2026-06-12 13:44:37,156.156 INFO    ] 200
[2026-06-12 13:44:37,157.157 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:44:37,189.189 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 13:44:37,191.191 INFO    ] No update needed
[2026-06-12 13:44:37,192.192 INFO    ] Checking for camera pi updates...
[2026-06-12 13:44:37,212.212 INFO    ] 200
[2026-06-12 13:44:37,214.214 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:44:37,237.237 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 13:44:37,310.310 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 13:44:37,311.311 INFO    ] No camera update needed
[2026-06-12 13:44:37,313.313 INFO    ] Script finished. Safe exiting...
[2026-06-12 13:44:37,314.314 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 13:44:37,317.317 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 13:44:37,320.320 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 13:44:39,357.357 INFO    ] ================================================
[2026-06-12 13:44:39,374.374 INFO    ] Launching Daemon at Fri Jun 12 13:44:39 IST 2026
[2026-06-12 13:44:39,385.385 INFO    ] ================================================
[2026-06-12 13:44:39,727.727 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 13:44:39
[2026-06-12 13:44:40,041.041 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 13:44:40,171.171 INFO    ] Initializing speech engine...
[2026-06-12 13:44:40,183.183 INFO    ] 2026-06-12 13:44:40
[2026-06-12 13:44:40,388.388 INFO    ] 2026-06-12 13:44:40
[2026-06-12 13:44:40,418.418 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 13:44:40,600.600 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 13:44:40,608.608 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 13:44:40,736.736 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 13:44:40,800.800 INFO    ] time= 12/06/2026 13:44:40
[2026-06-12 13:44:40,827.827 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 13:44:40,832.832 INFO    ] Checking for existing commands in stream...
[2026-06-12 13:44:40,899.899 INFO    ] No existing commands found in stream
[2026-06-12 13:44:45,913.913 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 13:44:45,916.916 INFO    ] Waiting 2.02 seconds before fallback handling...
[2026-06-12 13:44:48,280.280 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 13:44:48,282.282 INFO    ] Checking for system updates...
[2026-06-12 13:44:48,303.303 INFO    ] 200
[2026-06-12 13:44:48,305.305 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:44:48,339.339 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 13:44:48,341.341 INFO    ] No update needed
[2026-06-12 13:44:48,342.342 INFO    ] Checking for camera pi updates...
[2026-06-12 13:44:48,364.364 INFO    ] 200
[2026-06-12 13:44:48,365.365 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:44:48,391.391 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 13:44:48,430.430 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 13:44:48,432.432 INFO    ] No camera update needed
[2026-06-12 13:44:48,433.433 INFO    ] Script finished. Safe exiting...
[2026-06-12 13:44:48,435.435 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 13:44:48,438.438 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 13:44:48,441.441 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 13:44:50,480.480 INFO    ] ================================================
[2026-06-12 13:44:50,496.496 INFO    ] Launching Daemon at Fri Jun 12 13:44:50 IST 2026
[2026-06-12 13:44:50,507.507 INFO    ] ================================================
[2026-06-12 13:44:50,848.848 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 13:44:50
[2026-06-12 13:44:51,159.159 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 13:44:51,288.288 INFO    ] Initializing speech engine...
[2026-06-12 13:44:51,292.292 INFO    ] 2026-06-12 13:44:51
[2026-06-12 13:44:51,507.507 INFO    ] 2026-06-12 13:44:51
[2026-06-12 13:44:51,536.536 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 13:44:51,718.718 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 13:44:51,729.729 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 13:44:51,850.850 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 13:44:51,911.911 INFO    ] time= 12/06/2026 13:44:51
[2026-06-12 13:44:51,940.940 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 13:44:51,950.950 INFO    ] Checking for existing commands in stream...
[2026-06-12 13:44:52,022.022 INFO    ] No existing commands found in stream
[2026-06-12 13:44:57,031.031 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 13:44:57,033.033 INFO    ] Waiting 0.20 seconds before fallback handling...
[2026-06-12 13:44:58,646.646 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 13:44:58,648.648 INFO    ] Checking for system updates...
[2026-06-12 13:44:58,669.669 INFO    ] 200
[2026-06-12 13:44:58,671.671 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:44:58,703.703 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 13:44:58,704.704 INFO    ] No update needed
[2026-06-12 13:44:58,705.705 INFO    ] Checking for camera pi updates...
[2026-06-12 13:44:58,724.724 INFO    ] 200
[2026-06-12 13:44:58,725.725 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:44:58,749.749 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 13:44:58,798.798 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 13:44:58,800.800 INFO    ] No camera update needed
[2026-06-12 13:44:58,801.801 INFO    ] Script finished. Safe exiting...
[2026-06-12 13:44:58,803.803 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 13:44:58,805.805 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 13:44:58,808.808 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 13:45:00,850.850 INFO    ] ================================================
[2026-06-12 13:45:00,865.865 INFO    ] Launching Daemon at Fri Jun 12 13:45:00 IST 2026
[2026-06-12 13:45:00,877.877 INFO    ] ================================================
[2026-06-12 13:45:01,562.562 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 13:45:01
[2026-06-12 13:45:02,028.028 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 13:45:02,208.208 INFO    ] Initializing speech engine...
[2026-06-12 13:45:02,220.220 INFO    ] 2026-06-12 13:45:02
[2026-06-12 13:45:02,438.438 INFO    ] 2026-06-12 13:45:02
[2026-06-12 13:45:02,480.480 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 13:45:02,631.631 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 13:45:02,693.693 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 13:45:02,832.832 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 13:45:02,898.898 INFO    ] time= 12/06/2026 13:45:02
[2026-06-12 13:45:02,922.922 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 13:45:02,929.929 INFO    ] Checking for existing commands in stream...
[2026-06-12 13:45:02,996.996 INFO    ] No existing commands found in stream
[2026-06-12 13:45:08,010.010 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 13:45:08,013.013 INFO    ] Waiting 0.98 seconds before fallback handling...
[2026-06-12 13:45:09,332.332 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 13:45:09,333.333 INFO    ] Checking for system updates...
[2026-06-12 13:45:09,354.354 INFO    ] 200
[2026-06-12 13:45:09,355.355 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:45:09,385.385 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 13:45:09,386.386 INFO    ] No update needed
[2026-06-12 13:45:09,387.387 INFO    ] Checking for camera pi updates...
[2026-06-12 13:45:09,408.408 INFO    ] 200
[2026-06-12 13:45:09,409.409 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:45:09,432.432 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 13:45:09,572.572 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 13:45:09,574.574 INFO    ] No camera update needed
[2026-06-12 13:45:09,576.576 INFO    ] Script finished. Safe exiting...
[2026-06-12 13:45:09,577.577 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 13:45:09,581.581 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 13:45:09,583.583 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 13:45:11,621.621 INFO    ] ================================================
[2026-06-12 13:45:11,636.636 INFO    ] Launching Daemon at Fri Jun 12 13:45:11 IST 2026
[2026-06-12 13:45:11,647.647 INFO    ] ================================================
[2026-06-12 13:45:11,990.990 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 13:45:11
[2026-06-12 13:45:12,303.303 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 13:45:12,435.435 INFO    ] Initializing speech engine...
[2026-06-12 13:45:12,439.439 INFO    ] 2026-06-12 13:45:12
[2026-06-12 13:45:12,632.632 INFO    ] 2026-06-12 13:45:12
[2026-06-12 13:45:12,677.677 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 13:45:12,837.837 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 13:45:12,881.881 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 13:45:13,050.050 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 13:45:13,097.097 INFO    ] time= 12/06/2026 13:45:13
[2026-06-12 13:45:13,149.149 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 13:45:13,161.161 INFO    ] Checking for existing commands in stream...
[2026-06-12 13:45:13,239.239 INFO    ] No existing commands found in stream
[2026-06-12 13:45:18,248.248 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 13:45:18,251.251 INFO    ] Waiting 3.07 seconds before fallback handling...
[2026-06-12 13:45:21,665.665 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 13:45:21,666.666 INFO    ] Checking for system updates...
[2026-06-12 13:45:21,687.687 INFO    ] 200
[2026-06-12 13:45:21,689.689 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:45:21,719.719 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 13:45:21,721.721 INFO    ] No update needed
[2026-06-12 13:45:21,722.722 INFO    ] Checking for camera pi updates...
[2026-06-12 13:45:21,741.741 INFO    ] 200
[2026-06-12 13:45:21,743.743 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:45:21,766.766 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 13:45:21,819.819 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 13:45:21,821.821 INFO    ] No camera update needed
[2026-06-12 13:45:21,822.822 INFO    ] Script finished. Safe exiting...
[2026-06-12 13:45:21,824.824 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 13:45:21,827.827 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 13:45:21,830.830 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 13:45:23,870.870 INFO    ] ================================================
[2026-06-12 13:45:23,886.886 INFO    ] Launching Daemon at Fri Jun 12 13:45:23 IST 2026
[2026-06-12 13:45:23,897.897 INFO    ] ================================================
[2026-06-12 13:45:24,265.265 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 13:45:24
[2026-06-12 13:45:24,637.637 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 13:45:24,823.823 INFO    ] Initializing speech engine...
[2026-06-12 13:45:24,831.831 INFO    ] 2026-06-12 13:45:24
[2026-06-12 13:45:25,037.037 INFO    ] 2026-06-12 13:45:25
[2026-06-12 13:45:25,058.058 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 13:45:25,218.218 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 13:45:25,221.221 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 13:45:25,377.377 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 13:45:25,434.434 INFO    ] time= 12/06/2026 13:45:25
[2026-06-12 13:45:25,451.451 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 13:45:25,509.509 INFO    ] Checking for existing commands in stream...
[2026-06-12 13:45:25,626.626 INFO    ] No existing commands found in stream
[2026-06-12 13:45:30,638.638 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 13:45:30,641.641 INFO    ] Waiting 0.70 seconds before fallback handling...
[2026-06-12 13:45:31,691.691 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 13:45:31,693.693 INFO    ] Checking for system updates...
[2026-06-12 13:45:31,718.718 INFO    ] 200
[2026-06-12 13:45:31,719.719 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:45:31,757.757 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 13:45:31,759.759 INFO    ] No update needed
[2026-06-12 13:45:31,760.760 INFO    ] Checking for camera pi updates...
[2026-06-12 13:45:31,782.782 INFO    ] 200
[2026-06-12 13:45:31,784.784 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:45:31,810.810 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 13:45:31,841.841 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 13:45:31,843.843 INFO    ] No camera update needed
[2026-06-12 13:45:31,845.845 INFO    ] Script finished. Safe exiting...
[2026-06-12 13:45:31,846.846 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 13:45:31,850.850 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 13:45:31,854.854 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 13:45:33,896.896 INFO    ] ================================================
[2026-06-12 13:45:33,912.912 INFO    ] Launching Daemon at Fri Jun 12 13:45:33 IST 2026
[2026-06-12 13:45:33,923.923 INFO    ] ================================================
[2026-06-12 13:45:34,255.255 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 13:45:34
[2026-06-12 13:45:34,569.569 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 13:45:34,703.703 INFO    ] Initializing speech engine...
[2026-06-12 13:45:34,707.707 INFO    ] 2026-06-12 13:45:34
[2026-06-12 13:45:34,912.912 INFO    ] 2026-06-12 13:45:34
[2026-06-12 13:45:34,946.946 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 13:45:35,067.067 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 13:45:35,069.069 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 13:45:35,180.180 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 13:45:35,190.190 INFO    ] time= 12/06/2026 13:45:35
[2026-06-12 13:45:35,207.207 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 13:45:35,212.212 INFO    ] Checking for existing commands in stream...
[2026-06-12 13:45:35,324.324 INFO    ] No existing commands found in stream
[2026-06-12 13:45:40,334.334 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 13:45:40,337.337 INFO    ] Waiting 3.58 seconds before fallback handling...
[2026-06-12 13:45:44,280.280 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 13:45:44,282.282 INFO    ] Checking for system updates...
[2026-06-12 13:45:44,302.302 INFO    ] 200
[2026-06-12 13:45:44,304.304 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:45:44,336.336 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 13:45:44,337.337 INFO    ] No update needed
[2026-06-12 13:45:44,338.338 INFO    ] Checking for camera pi updates...
[2026-06-12 13:45:44,359.359 INFO    ] 200
[2026-06-12 13:45:44,361.361 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:45:44,384.384 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 13:45:44,447.447 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 13:45:44,449.449 INFO    ] No camera update needed
[2026-06-12 13:45:44,450.450 INFO    ] Script finished. Safe exiting...
[2026-06-12 13:45:44,452.452 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 13:45:44,455.455 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 13:45:44,458.458 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 13:45:46,496.496 INFO    ] ================================================
[2026-06-12 13:45:46,511.511 INFO    ] Launching Daemon at Fri Jun 12 13:45:46 IST 2026
[2026-06-12 13:45:46,522.522 INFO    ] ================================================
[2026-06-12 13:45:46,885.885 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 13:45:46
[2026-06-12 13:45:47,219.219 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 13:45:47,354.354 INFO    ] Initializing speech engine...
[2026-06-12 13:45:47,362.362 INFO    ] 2026-06-12 13:45:47
[2026-06-12 13:45:47,574.574 INFO    ] 2026-06-12 13:45:47
[2026-06-12 13:45:47,603.603 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 13:45:47,737.737 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 13:45:47,791.791 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 13:45:47,928.928 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 13:45:47,991.991 INFO    ] time= 12/06/2026 13:45:47
[2026-06-12 13:45:48,024.024 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 13:45:48,031.031 INFO    ] Checking for existing commands in stream...
[2026-06-12 13:45:48,098.098 INFO    ] No existing commands found in stream
[2026-06-12 13:45:53,107.107 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 13:45:53,110.110 INFO    ] Waiting 0.93 seconds before fallback handling...
[2026-06-12 13:45:55,275.275 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 13:45:55,277.277 INFO    ] Checking for system updates...
[2026-06-12 13:45:55,321.321 INFO    ] 200
[2026-06-12 13:45:55,323.323 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:45:55,354.354 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 13:45:55,355.355 INFO    ] No update needed
[2026-06-12 13:45:55,356.356 INFO    ] Checking for camera pi updates...
[2026-06-12 13:45:55,375.375 INFO    ] 200
[2026-06-12 13:45:55,377.377 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:45:55,401.401 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 13:45:55,446.446 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 13:45:55,447.447 INFO    ] No camera update needed
[2026-06-12 13:45:55,448.448 INFO    ] Script finished. Safe exiting...
[2026-06-12 13:45:55,450.450 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 13:45:55,453.453 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 13:45:55,456.456 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 13:45:57,497.497 INFO    ] ================================================
[2026-06-12 13:45:57,512.512 INFO    ] Launching Daemon at Fri Jun 12 13:45:57 IST 2026
[2026-06-12 13:45:57,524.524 INFO    ] ================================================
[2026-06-12 13:45:57,888.888 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 13:45:57
[2026-06-12 13:45:58,207.207 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 13:45:58,361.361 INFO    ] Initializing speech engine...
[2026-06-12 13:45:58,363.363 INFO    ] 2026-06-12 13:45:58
[2026-06-12 13:45:58,551.551 INFO    ] 2026-06-12 13:45:58
[2026-06-12 13:45:58,597.597 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 13:45:58,759.759 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 13:45:58,797.797 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 13:45:58,916.916 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 13:45:58,918.918 INFO    ] time= 12/06/2026 13:45:58
[2026-06-12 13:45:58,919.919 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 13:45:58,972.972 INFO    ] Checking for existing commands in stream...
[2026-06-12 13:45:59,065.065 INFO    ] No existing commands found in stream
[2026-06-12 13:46:04,077.077 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 13:46:04,080.080 INFO    ] Waiting 2.65 seconds before fallback handling...
[2026-06-12 13:46:07,064.064 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 13:46:07,066.066 INFO    ] Checking for system updates...
[2026-06-12 13:46:07,086.086 INFO    ] 200
[2026-06-12 13:46:07,087.087 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:46:07,117.117 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 13:46:07,118.118 INFO    ] No update needed
[2026-06-12 13:46:07,120.120 INFO    ] Checking for camera pi updates...
[2026-06-12 13:46:07,139.139 INFO    ] 200
[2026-06-12 13:46:07,141.141 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:46:07,165.165 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 13:46:07,223.223 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 13:46:07,224.224 INFO    ] No camera update needed
[2026-06-12 13:46:07,226.226 INFO    ] Script finished. Safe exiting...
[2026-06-12 13:46:07,227.227 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 13:46:07,230.230 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 13:46:07,233.233 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 13:46:09,272.272 INFO    ] ================================================
[2026-06-12 13:46:09,286.286 INFO    ] Launching Daemon at Fri Jun 12 13:46:09 IST 2026
[2026-06-12 13:46:09,292.292 INFO    ] ================================================
[2026-06-12 13:46:09,614.614 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 13:46:09
[2026-06-12 13:46:09,933.933 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 13:46:10,064.064 INFO    ] Initializing speech engine...
[2026-06-12 13:46:10,069.069 INFO    ] 2026-06-12 13:46:10
[2026-06-12 13:46:10,290.290 INFO    ] 2026-06-12 13:46:10
[2026-06-12 13:46:10,320.320 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 13:46:10,443.443 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 13:46:10,506.506 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 13:46:10,642.642 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 13:46:10,703.703 INFO    ] time= 12/06/2026 13:46:10
[2026-06-12 13:46:10,736.736 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 13:46:10,743.743 INFO    ] Checking for existing commands in stream...
[2026-06-12 13:46:10,810.810 INFO    ] No existing commands found in stream
[2026-06-12 13:46:15,819.819 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 13:46:15,822.822 INFO    ] Waiting 1.16 seconds before fallback handling...
[2026-06-12 13:46:17,353.353 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 13:46:17,354.354 INFO    ] Checking for system updates...
[2026-06-12 13:46:17,376.376 INFO    ] 200
[2026-06-12 13:46:17,377.377 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:46:17,409.409 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 13:46:17,411.411 INFO    ] No update needed
[2026-06-12 13:46:17,412.412 INFO    ] Checking for camera pi updates...
[2026-06-12 13:46:17,432.432 INFO    ] 200
[2026-06-12 13:46:17,433.433 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:46:17,460.460 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 13:46:17,505.505 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 13:46:17,506.506 INFO    ] No camera update needed
[2026-06-12 13:46:17,508.508 INFO    ] Script finished. Safe exiting...
[2026-06-12 13:46:17,509.509 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 13:46:17,512.512 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 13:46:17,515.515 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 13:46:19,552.552 INFO    ] ================================================
[2026-06-12 13:46:19,568.568 INFO    ] Launching Daemon at Fri Jun 12 13:46:19 IST 2026
[2026-06-12 13:46:19,579.579 INFO    ] ================================================
[2026-06-12 13:46:19,938.938 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 13:46:19
[2026-06-12 13:46:20,254.254 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 13:46:20,406.406 INFO    ] Initializing speech engine...
[2026-06-12 13:46:20,411.411 INFO    ] 2026-06-12 13:46:20
[2026-06-12 13:46:20,621.621 INFO    ] 2026-06-12 13:46:20
[2026-06-12 13:46:20,654.654 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 13:46:20,789.789 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 13:46:20,854.854 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 13:46:21,001.001 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 13:46:21,063.063 INFO    ] time= 12/06/2026 13:46:21
[2026-06-12 13:46:21,088.088 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 13:46:21,095.095 INFO    ] Checking for existing commands in stream...
[2026-06-12 13:46:21,163.163 INFO    ] No existing commands found in stream
[2026-06-12 13:46:26,172.172 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 13:46:26,176.176 INFO    ] Waiting 1.25 seconds before fallback handling...
[2026-06-12 13:46:27,802.802 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 13:46:27,803.803 INFO    ] Checking for system updates...
[2026-06-12 13:46:27,824.824 INFO    ] 200
[2026-06-12 13:46:27,826.826 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:46:27,856.856 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 13:46:27,858.858 INFO    ] No update needed
[2026-06-12 13:46:27,859.859 INFO    ] Checking for camera pi updates...
[2026-06-12 13:46:27,881.881 INFO    ] 200
[2026-06-12 13:46:27,882.882 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:46:27,910.910 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 13:46:28,030.030 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 13:46:28,032.032 INFO    ] No camera update needed
[2026-06-12 13:46:28,033.033 INFO    ] Script finished. Safe exiting...
[2026-06-12 13:46:28,035.035 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 13:46:28,038.038 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 13:46:28,041.041 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 13:46:30,083.083 INFO    ] ================================================
[2026-06-12 13:46:30,099.099 INFO    ] Launching Daemon at Fri Jun 12 13:46:30 IST 2026
[2026-06-12 13:46:30,110.110 INFO    ] ================================================
[2026-06-12 13:46:30,468.468 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 13:46:30
[2026-06-12 13:46:30,781.781 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 13:46:30,918.918 INFO    ] Initializing speech engine...
[2026-06-12 13:46:30,928.928 INFO    ] 2026-06-12 13:46:30
[2026-06-12 13:46:31,132.132 INFO    ] 2026-06-12 13:46:31
[2026-06-12 13:46:31,160.160 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 13:46:31,344.344 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 13:46:31,348.348 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 13:46:31,476.476 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 13:46:31,537.537 INFO    ] time= 12/06/2026 13:46:31
[2026-06-12 13:46:31,574.574 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 13:46:31,576.576 INFO    ] Checking for existing commands in stream...
[2026-06-12 13:46:31,648.648 INFO    ] No existing commands found in stream
[2026-06-12 13:46:36,657.657 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 13:46:36,660.660 INFO    ] Waiting 1.36 seconds before fallback handling...
[2026-06-12 13:46:39,169.169 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 13:46:39,171.171 INFO    ] Checking for system updates...
[2026-06-12 13:46:39,207.207 INFO    ] 200
[2026-06-12 13:46:39,210.210 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:46:39,263.263 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 13:46:39,265.265 INFO    ] No update needed
[2026-06-12 13:46:39,267.267 INFO    ] Checking for camera pi updates...
[2026-06-12 13:46:39,306.306 INFO    ] 200
[2026-06-12 13:46:39,308.308 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:46:39,344.344 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 13:46:39,409.409 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 13:46:39,411.411 INFO    ] No camera update needed
[2026-06-12 13:46:39,412.412 INFO    ] Script finished. Safe exiting...
[2026-06-12 13:46:39,413.413 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 13:46:39,416.416 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 13:46:39,419.419 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 13:46:41,461.461 INFO    ] ================================================
[2026-06-12 13:46:41,476.476 INFO    ] Launching Daemon at Fri Jun 12 13:46:41 IST 2026
[2026-06-12 13:46:41,487.487 INFO    ] ================================================
[2026-06-12 13:46:41,820.820 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 13:46:41
[2026-06-12 13:46:42,132.132 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 13:46:42,264.264 INFO    ] Initializing speech engine...
[2026-06-12 13:46:42,267.267 INFO    ] 2026-06-12 13:46:42
[2026-06-12 13:46:42,482.482 INFO    ] 2026-06-12 13:46:42
[2026-06-12 13:46:42,512.512 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 13:46:42,639.639 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 13:46:42,696.696 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 13:46:42,834.834 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 13:46:42,892.892 INFO    ] time= 12/06/2026 13:46:42
[2026-06-12 13:46:42,917.917 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 13:46:42,927.927 INFO    ] Checking for existing commands in stream...
[2026-06-12 13:46:42,998.998 INFO    ] No existing commands found in stream
[2026-06-12 13:46:48,007.007 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 13:46:48,010.010 INFO    ] Waiting 2.70 seconds before fallback handling...
[2026-06-12 13:46:51,067.067 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 13:46:51,069.069 INFO    ] Checking for system updates...
[2026-06-12 13:46:51,089.089 INFO    ] 200
[2026-06-12 13:46:51,091.091 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:46:51,123.123 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 13:46:51,125.125 INFO    ] No update needed
[2026-06-12 13:46:51,126.126 INFO    ] Checking for camera pi updates...
[2026-06-12 13:46:51,146.146 INFO    ] 200
[2026-06-12 13:46:51,148.148 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:46:51,171.171 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 13:46:51,273.273 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 13:46:51,275.275 INFO    ] No camera update needed
[2026-06-12 13:46:51,276.276 INFO    ] Script finished. Safe exiting...
[2026-06-12 13:46:51,277.277 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 13:46:51,280.280 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 13:46:51,283.283 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 13:46:53,321.321 INFO    ] ================================================
[2026-06-12 13:46:53,335.335 INFO    ] Launching Daemon at Fri Jun 12 13:46:53 IST 2026
[2026-06-12 13:46:53,346.346 INFO    ] ================================================
[2026-06-12 13:46:53,713.713 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 13:46:53
[2026-06-12 13:46:54,025.025 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 13:46:54,155.155 INFO    ] Initializing speech engine...
[2026-06-12 13:46:54,163.163 INFO    ] 2026-06-12 13:46:54
[2026-06-12 13:46:54,356.356 INFO    ] 2026-06-12 13:46:54
[2026-06-12 13:46:54,396.396 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 13:46:54,544.544 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 13:46:54,614.614 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 13:46:54,755.755 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 13:46:54,812.812 INFO    ] time= 12/06/2026 13:46:54
[2026-06-12 13:46:54,852.852 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 13:46:54,857.857 INFO    ] Checking for existing commands in stream...
[2026-06-12 13:46:54,929.929 INFO    ] No existing commands found in stream
[2026-06-12 13:46:59,938.938 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 13:46:59,941.941 INFO    ] Waiting 0.24 seconds before fallback handling...
[2026-06-12 13:47:00,533.533 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 13:47:00,535.535 INFO    ] Checking for system updates...
[2026-06-12 13:47:00,555.555 INFO    ] 200
[2026-06-12 13:47:00,556.556 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:47:00,586.586 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 13:47:00,587.587 INFO    ] No update needed
[2026-06-12 13:47:00,589.589 INFO    ] Checking for camera pi updates...
[2026-06-12 13:47:00,608.608 INFO    ] 200
[2026-06-12 13:47:00,609.609 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:47:00,633.633 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 13:47:00,682.682 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 13:47:00,683.683 INFO    ] No camera update needed
[2026-06-12 13:47:00,685.685 INFO    ] Script finished. Safe exiting...
[2026-06-12 13:47:00,686.686 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 13:47:00,689.689 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 13:47:00,692.692 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 13:47:02,721.721 INFO    ] ================================================
[2026-06-12 13:47:02,729.729 INFO    ] Launching Daemon at Fri Jun 12 13:47:02 IST 2026
[2026-06-12 13:47:02,735.735 INFO    ] ================================================
[2026-06-12 13:47:03,060.060 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 13:47:03
[2026-06-12 13:47:03,371.371 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 13:47:03,501.501 INFO    ] Initializing speech engine...
[2026-06-12 13:47:03,506.506 INFO    ] 2026-06-12 13:47:03
[2026-06-12 13:47:03,723.723 INFO    ] 2026-06-12 13:47:03
[2026-06-12 13:47:03,753.753 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 13:47:03,929.929 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 13:47:03,943.943 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 13:47:04,073.073 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 13:47:04,134.134 INFO    ] time= 12/06/2026 13:47:04
[2026-06-12 13:47:04,158.158 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 13:47:04,174.174 INFO    ] Checking for existing commands in stream...
[2026-06-12 13:47:04,247.247 INFO    ] No existing commands found in stream
[2026-06-12 13:47:09,256.256 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 13:47:09,259.259 INFO    ] Waiting 2.58 seconds before fallback handling...
[2026-06-12 13:47:12,134.134 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 13:47:12,135.135 INFO    ] Checking for system updates...
[2026-06-12 13:47:12,157.157 INFO    ] 200
[2026-06-12 13:47:12,158.158 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:47:12,191.191 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 13:47:12,192.192 INFO    ] No update needed
[2026-06-12 13:47:12,193.193 INFO    ] Checking for camera pi updates...
[2026-06-12 13:47:12,212.212 INFO    ] 200
[2026-06-12 13:47:12,214.214 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:47:12,240.240 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 13:47:12,381.381 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 13:47:12,383.383 INFO    ] No camera update needed
[2026-06-12 13:47:12,385.385 INFO    ] Script finished. Safe exiting...
[2026-06-12 13:47:12,388.388 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 13:47:12,393.393 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 13:47:12,398.398 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 13:47:14,437.437 INFO    ] ================================================
[2026-06-12 13:47:14,453.453 INFO    ] Launching Daemon at Fri Jun 12 13:47:14 IST 2026
[2026-06-12 13:47:14,464.464 INFO    ] ================================================
[2026-06-12 13:47:14,794.794 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 13:47:14
[2026-06-12 13:47:15,115.115 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 13:47:15,260.260 INFO    ] Initializing speech engine...
[2026-06-12 13:47:15,265.265 INFO    ] 2026-06-12 13:47:15
[2026-06-12 13:47:15,468.468 INFO    ] 2026-06-12 13:47:15
[2026-06-12 13:47:15,498.498 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 13:47:15,619.619 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 13:47:15,667.667 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 13:47:15,816.816 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 13:47:15,878.878 INFO    ] time= 12/06/2026 13:47:15
[2026-06-12 13:47:15,912.912 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 13:47:15,918.918 INFO    ] Checking for existing commands in stream...
[2026-06-12 13:47:15,985.985 INFO    ] No existing commands found in stream
[2026-06-12 13:47:20,994.994 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 13:47:20,997.997 INFO    ] Waiting 0.61 seconds before fallback handling...
[2026-06-12 13:47:21,972.972 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 13:47:21,974.974 INFO    ] Checking for system updates...
[2026-06-12 13:47:21,994.994 INFO    ] 200
[2026-06-12 13:47:21,996.996 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:47:22,027.027 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 13:47:22,028.028 INFO    ] No update needed
[2026-06-12 13:47:22,029.029 INFO    ] Checking for camera pi updates...
[2026-06-12 13:47:22,050.050 INFO    ] 200
[2026-06-12 13:47:22,051.051 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:47:22,074.074 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 13:47:22,151.151 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 13:47:22,153.153 INFO    ] No camera update needed
[2026-06-12 13:47:22,155.155 INFO    ] Script finished. Safe exiting...
[2026-06-12 13:47:22,156.156 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 13:47:22,160.160 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 13:47:22,164.164 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 13:47:24,202.202 INFO    ] ================================================
[2026-06-12 13:47:24,218.218 INFO    ] Launching Daemon at Fri Jun 12 13:47:24 IST 2026
[2026-06-12 13:47:24,230.230 INFO    ] ================================================
[2026-06-12 13:47:24,584.584 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 13:47:24
[2026-06-12 13:47:24,895.895 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 13:47:25,030.030 INFO    ] Initializing speech engine...
[2026-06-12 13:47:25,043.043 INFO    ] 2026-06-12 13:47:25
[2026-06-12 13:47:25,253.253 INFO    ] 2026-06-12 13:47:25
[2026-06-12 13:47:25,281.281 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 13:47:25,468.468 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 13:47:25,472.472 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 13:47:25,603.603 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 13:47:25,644.644 INFO    ] time= 12/06/2026 13:47:25
[2026-06-12 13:47:25,684.684 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 13:47:25,705.705 INFO    ] Checking for existing commands in stream...
[2026-06-12 13:47:25,777.777 INFO    ] No existing commands found in stream
[2026-06-12 13:47:30,792.792 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 13:47:30,795.795 INFO    ] Waiting 2.96 seconds before fallback handling...
[2026-06-12 13:47:34,107.107 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 13:47:34,109.109 INFO    ] Checking for system updates...
[2026-06-12 13:47:34,131.131 INFO    ] 200
[2026-06-12 13:47:34,132.132 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:47:34,162.162 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 13:47:34,163.163 INFO    ] No update needed
[2026-06-12 13:47:34,165.165 INFO    ] Checking for camera pi updates...
[2026-06-12 13:47:34,257.257 INFO    ] 200
[2026-06-12 13:47:34,258.258 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:47:34,288.288 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 13:47:34,325.325 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 13:47:34,326.326 INFO    ] No camera update needed
[2026-06-12 13:47:34,328.328 INFO    ] Script finished. Safe exiting...
[2026-06-12 13:47:34,329.329 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 13:47:34,333.333 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 13:47:34,340.340 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 13:47:36,379.379 INFO    ] ================================================
[2026-06-12 13:47:36,395.395 INFO    ] Launching Daemon at Fri Jun 12 13:47:36 IST 2026
[2026-06-12 13:47:36,406.406 INFO    ] ================================================
[2026-06-12 13:47:36,741.741 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 13:47:36
[2026-06-12 13:47:37,061.061 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 13:47:37,208.208 INFO    ] Initializing speech engine...
[2026-06-12 13:47:37,213.213 INFO    ] 2026-06-12 13:47:37
[2026-06-12 13:47:37,419.419 INFO    ] 2026-06-12 13:47:37
[2026-06-12 13:47:37,448.448 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 13:47:37,633.633 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 13:47:37,636.636 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 13:47:37,770.770 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 13:47:37,832.832 INFO    ] time= 12/06/2026 13:47:37
[2026-06-12 13:47:37,865.865 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 13:47:37,871.871 INFO    ] Checking for existing commands in stream...
[2026-06-12 13:47:37,939.939 INFO    ] No existing commands found in stream
[2026-06-12 13:47:42,953.953 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 13:47:42,956.956 INFO    ] Waiting 0.61 seconds before fallback handling...
[2026-06-12 13:47:43,899.899 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 13:47:43,901.901 INFO    ] Checking for system updates...
[2026-06-12 13:47:43,923.923 INFO    ] 200
[2026-06-12 13:47:43,932.932 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:47:43,962.962 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 13:47:43,963.963 INFO    ] No update needed
[2026-06-12 13:47:43,965.965 INFO    ] Checking for camera pi updates...
[2026-06-12 13:47:43,986.986 INFO    ] 200
[2026-06-12 13:47:43,987.987 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:47:44,010.010 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 13:47:44,053.053 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 13:47:44,055.055 INFO    ] No camera update needed
[2026-06-12 13:47:44,056.056 INFO    ] Script finished. Safe exiting...
[2026-06-12 13:47:44,057.057 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 13:47:44,060.060 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 13:47:44,063.063 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 13:47:46,102.102 INFO    ] ================================================
[2026-06-12 13:47:46,119.119 INFO    ] Launching Daemon at Fri Jun 12 13:47:46 IST 2026
[2026-06-12 13:47:46,130.130 INFO    ] ================================================
[2026-06-12 13:47:46,485.485 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 13:47:46
[2026-06-12 13:47:46,803.803 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 13:47:46,933.933 INFO    ] Initializing speech engine...
[2026-06-12 13:47:46,937.937 INFO    ] 2026-06-12 13:47:46
[2026-06-12 13:47:47,154.154 INFO    ] 2026-06-12 13:47:47
[2026-06-12 13:47:47,183.183 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 13:47:47,367.367 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 13:47:47,375.375 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 13:47:47,501.501 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 13:47:47,553.553 INFO    ] time= 12/06/2026 13:47:47
[2026-06-12 13:47:47,587.587 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 13:47:47,597.597 INFO    ] Checking for existing commands in stream...
[2026-06-12 13:47:47,692.692 INFO    ] No existing commands found in stream
[2026-06-12 13:47:52,706.706 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 13:47:52,709.709 INFO    ] Waiting 3.79 seconds before fallback handling...
[2026-06-12 13:47:56,835.835 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 13:47:56,837.837 INFO    ] Checking for system updates...
[2026-06-12 13:47:56,857.857 INFO    ] 200
[2026-06-12 13:47:56,859.859 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:47:56,891.891 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 13:47:56,892.892 INFO    ] No update needed
[2026-06-12 13:47:56,894.894 INFO    ] Checking for camera pi updates...
[2026-06-12 13:47:56,916.916 INFO    ] 200
[2026-06-12 13:47:56,918.918 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:47:56,943.943 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 13:47:56,976.976 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 13:47:56,977.977 INFO    ] No camera update needed
[2026-06-12 13:47:56,979.979 INFO    ] Script finished. Safe exiting...
[2026-06-12 13:47:56,980.980 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 13:47:56,984.984 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 13:47:56,987.987 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 13:47:59,026.026 INFO    ] ================================================
[2026-06-12 13:47:59,041.041 INFO    ] Launching Daemon at Fri Jun 12 13:47:59 IST 2026
[2026-06-12 13:47:59,052.052 INFO    ] ================================================
[2026-06-12 13:47:59,426.426 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 13:47:59
[2026-06-12 13:47:59,743.743 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 13:47:59,877.877 INFO    ] Initializing speech engine...
[2026-06-12 13:47:59,890.890 INFO    ] 2026-06-12 13:47:59
[2026-06-12 13:48:00,096.096 INFO    ] 2026-06-12 13:48:00
[2026-06-12 13:48:00,124.124 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 13:48:00,308.308 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 13:48:00,318.318 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 13:48:00,448.448 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 13:48:00,508.508 INFO    ] time= 12/06/2026 13:48:00
[2026-06-12 13:48:00,540.540 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 13:48:00,542.542 INFO    ] Checking for existing commands in stream...
[2026-06-12 13:48:00,637.637 INFO    ] No existing commands found in stream
[2026-06-12 13:48:05,651.651 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 13:48:05,654.654 INFO    ] Waiting 3.31 seconds before fallback handling...
[2026-06-12 13:48:09,317.317 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 13:48:09,319.319 INFO    ] Checking for system updates...
[2026-06-12 13:48:09,339.339 INFO    ] 200
[2026-06-12 13:48:09,341.341 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:48:09,370.370 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 13:48:09,372.372 INFO    ] No update needed
[2026-06-12 13:48:09,373.373 INFO    ] Checking for camera pi updates...
[2026-06-12 13:48:09,393.393 INFO    ] 200
[2026-06-12 13:48:09,394.394 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:48:09,419.419 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 13:48:09,504.504 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 13:48:09,506.506 INFO    ] No camera update needed
[2026-06-12 13:48:09,507.507 INFO    ] Script finished. Safe exiting...
[2026-06-12 13:48:09,508.508 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 13:48:09,511.511 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 13:48:09,514.514 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 13:48:11,552.552 INFO    ] ================================================
[2026-06-12 13:48:11,568.568 INFO    ] Launching Daemon at Fri Jun 12 13:48:11 IST 2026
[2026-06-12 13:48:11,579.579 INFO    ] ================================================
[2026-06-12 13:48:11,917.917 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 13:48:11
[2026-06-12 13:48:12,234.234 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 13:48:12,371.371 INFO    ] Initializing speech engine...
[2026-06-12 13:48:12,384.384 INFO    ] 2026-06-12 13:48:12
[2026-06-12 13:48:12,606.606 INFO    ] 2026-06-12 13:48:12
[2026-06-12 13:48:12,637.637 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 13:48:12,836.836 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 13:48:12,842.842 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 13:48:12,978.978 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 13:48:13,045.045 INFO    ] time= 12/06/2026 13:48:12
[2026-06-12 13:48:13,069.069 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 13:48:13,075.075 INFO    ] Checking for existing commands in stream...
[2026-06-12 13:48:13,142.142 INFO    ] No existing commands found in stream
[2026-06-12 13:48:18,156.156 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 13:48:18,159.159 INFO    ] Waiting 0.31 seconds before fallback handling...
[2026-06-12 13:48:18,816.816 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 13:48:18,817.817 INFO    ] Checking for system updates...
[2026-06-12 13:48:18,840.840 INFO    ] 200
[2026-06-12 13:48:18,841.841 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:48:18,878.878 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 13:48:18,879.879 INFO    ] No update needed
[2026-06-12 13:48:18,880.880 INFO    ] Checking for camera pi updates...
[2026-06-12 13:48:18,900.900 INFO    ] 200
[2026-06-12 13:48:18,901.901 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:48:18,926.926 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 13:48:18,961.961 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 13:48:18,962.962 INFO    ] No camera update needed
[2026-06-12 13:48:18,963.963 INFO    ] Script finished. Safe exiting...
[2026-06-12 13:48:18,964.964 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 13:48:18,968.968 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 13:48:18,970.970 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 13:48:21,007.007 INFO    ] ================================================
[2026-06-12 13:48:21,023.023 INFO    ] Launching Daemon at Fri Jun 12 13:48:21 IST 2026
[2026-06-12 13:48:21,034.034 INFO    ] ================================================
[2026-06-12 13:48:21,385.385 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 13:48:21
[2026-06-12 13:48:21,696.696 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 13:48:21,829.829 INFO    ] Initializing speech engine...
[2026-06-12 13:48:21,841.841 INFO    ] 2026-06-12 13:48:21
[2026-06-12 13:48:22,049.049 INFO    ] 2026-06-12 13:48:22
[2026-06-12 13:48:22,078.078 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 13:48:22,266.266 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 13:48:22,270.270 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 13:48:22,409.409 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 13:48:22,468.468 INFO    ] time= 12/06/2026 13:48:22
[2026-06-12 13:48:22,502.502 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 13:48:22,508.508 INFO    ] Checking for existing commands in stream...
[2026-06-12 13:48:22,576.576 INFO    ] No existing commands found in stream
[2026-06-12 13:48:27,591.591 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 13:48:27,593.593 INFO    ] Waiting 2.92 seconds before fallback handling...
[2026-06-12 13:48:30,861.861 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 13:48:30,862.862 INFO    ] Checking for system updates...
[2026-06-12 13:48:30,884.884 INFO    ] 200
[2026-06-12 13:48:30,885.885 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:48:30,917.917 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 13:48:30,918.918 INFO    ] No update needed
[2026-06-12 13:48:30,919.919 INFO    ] Checking for camera pi updates...
[2026-06-12 13:48:30,940.940 INFO    ] 200
[2026-06-12 13:48:30,942.942 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:48:30,965.965 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 13:48:30,998.998 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 13:48:31,000.000 INFO    ] No camera update needed
[2026-06-12 13:48:31,002.002 INFO    ] Script finished. Safe exiting...
[2026-06-12 13:48:31,003.003 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 13:48:31,006.006 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 13:48:31,009.009 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 13:48:33,047.047 INFO    ] ================================================
[2026-06-12 13:48:33,062.062 INFO    ] Launching Daemon at Fri Jun 12 13:48:33 IST 2026
[2026-06-12 13:48:33,073.073 INFO    ] ================================================
[2026-06-12 13:48:33,421.421 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 13:48:33
[2026-06-12 13:48:33,732.732 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 13:48:33,864.864 INFO    ] Initializing speech engine...
[2026-06-12 13:48:33,878.878 INFO    ] 2026-06-12 13:48:33
[2026-06-12 13:48:34,083.083 INFO    ] 2026-06-12 13:48:34
[2026-06-12 13:48:34,113.113 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 13:48:34,234.234 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 13:48:34,296.296 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 13:48:34,431.431 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 13:48:34,488.488 INFO    ] time= 12/06/2026 13:48:34
[2026-06-12 13:48:34,523.523 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 13:48:34,528.528 INFO    ] Checking for existing commands in stream...
[2026-06-12 13:48:34,599.599 INFO    ] No existing commands found in stream
[2026-06-12 13:48:39,608.608 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 13:48:39,611.611 INFO    ] Waiting 1.26 seconds before fallback handling...
[2026-06-12 13:48:41,228.228 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 13:48:41,230.230 INFO    ] Checking for system updates...
[2026-06-12 13:48:41,251.251 INFO    ] 200
[2026-06-12 13:48:41,252.252 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:48:41,282.282 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 13:48:41,283.283 INFO    ] No update needed
[2026-06-12 13:48:41,285.285 INFO    ] Checking for camera pi updates...
[2026-06-12 13:48:41,303.303 INFO    ] 200
[2026-06-12 13:48:41,305.305 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:48:41,329.329 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 13:48:41,357.357 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 13:48:41,358.358 INFO    ] No camera update needed
[2026-06-12 13:48:41,359.359 INFO    ] Script finished. Safe exiting...
[2026-06-12 13:48:41,361.361 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 13:48:41,364.364 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 13:48:41,366.366 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 13:48:43,404.404 INFO    ] ================================================
[2026-06-12 13:48:43,421.421 INFO    ] Launching Daemon at Fri Jun 12 13:48:43 IST 2026
[2026-06-12 13:48:43,433.433 INFO    ] ================================================
[2026-06-12 13:48:43,795.795 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 13:48:43
[2026-06-12 13:48:44,108.108 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 13:48:44,252.252 INFO    ] Initializing speech engine...
[2026-06-12 13:48:44,256.256 INFO    ] 2026-06-12 13:48:44
[2026-06-12 13:48:44,461.461 INFO    ] 2026-06-12 13:48:44
[2026-06-12 13:48:44,490.490 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 13:48:44,673.673 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 13:48:44,677.677 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 13:48:44,806.806 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 13:48:44,867.867 INFO    ] time= 12/06/2026 13:48:44
[2026-06-12 13:48:44,901.901 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 13:48:44,906.906 INFO    ] Checking for existing commands in stream...
[2026-06-12 13:48:44,979.979 INFO    ] No existing commands found in stream
[2026-06-12 13:48:49,993.993 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 13:48:49,996.996 INFO    ] Waiting 1.66 seconds before fallback handling...
[2026-06-12 13:48:52,015.015 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 13:48:52,017.017 INFO    ] Checking for system updates...
[2026-06-12 13:48:52,038.038 INFO    ] 200
[2026-06-12 13:48:52,040.040 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:48:52,072.072 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 13:48:52,073.073 INFO    ] No update needed
[2026-06-12 13:48:52,074.074 INFO    ] Checking for camera pi updates...
[2026-06-12 13:48:52,095.095 INFO    ] 200
[2026-06-12 13:48:52,097.097 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:48:52,120.120 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 13:48:52,277.277 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 13:48:52,279.279 INFO    ] No camera update needed
[2026-06-12 13:48:52,280.280 INFO    ] Script finished. Safe exiting...
[2026-06-12 13:48:52,282.282 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 13:48:52,284.284 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 13:48:52,287.287 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 13:48:54,324.324 INFO    ] ================================================
[2026-06-12 13:48:54,340.340 INFO    ] Launching Daemon at Fri Jun 12 13:48:54 IST 2026
[2026-06-12 13:48:54,351.351 INFO    ] ================================================
[2026-06-12 13:48:54,714.714 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 13:48:54
[2026-06-12 13:48:55,032.032 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 13:48:55,164.164 INFO    ] Initializing speech engine...
[2026-06-12 13:48:55,172.172 INFO    ] 2026-06-12 13:48:55
[2026-06-12 13:48:55,384.384 INFO    ] 2026-06-12 13:48:55
[2026-06-12 13:48:55,413.413 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 13:48:55,597.597 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 13:48:55,606.606 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 13:48:55,757.757 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 13:48:55,806.806 INFO    ] time= 12/06/2026 13:48:55
[2026-06-12 13:48:55,827.827 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 13:48:55,834.834 INFO    ] Checking for existing commands in stream...
[2026-06-12 13:48:55,900.900 INFO    ] No existing commands found in stream
[2026-06-12 13:49:00,909.909 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 13:49:00,912.912 INFO    ] Waiting 0.55 seconds before fallback handling...
[2026-06-12 13:49:02,529.529 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 13:49:02,531.531 INFO    ] Checking for system updates...
[2026-06-12 13:49:02,551.551 INFO    ] 200
[2026-06-12 13:49:02,553.553 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:49:02,584.584 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 13:49:02,585.585 INFO    ] No update needed
[2026-06-12 13:49:02,587.587 INFO    ] Checking for camera pi updates...
[2026-06-12 13:49:02,606.606 INFO    ] 200
[2026-06-12 13:49:02,607.607 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:49:02,629.629 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 13:49:02,656.656 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 13:49:02,657.657 INFO    ] No camera update needed
[2026-06-12 13:49:02,659.659 INFO    ] Script finished. Safe exiting...
[2026-06-12 13:49:02,660.660 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 13:49:02,663.663 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 13:49:02,666.666 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 13:49:04,707.707 INFO    ] ================================================
[2026-06-12 13:49:04,724.724 INFO    ] Launching Daemon at Fri Jun 12 13:49:04 IST 2026
[2026-06-12 13:49:04,735.735 INFO    ] ================================================
[2026-06-12 13:49:05,087.087 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 13:49:05
[2026-06-12 13:49:05,436.436 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 13:49:05,572.572 INFO    ] Initializing speech engine...
[2026-06-12 13:49:05,581.581 INFO    ] 2026-06-12 13:49:05
[2026-06-12 13:49:05,784.784 INFO    ] 2026-06-12 13:49:05
[2026-06-12 13:49:05,814.814 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 13:49:05,936.936 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 13:49:05,999.999 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 13:49:06,129.129 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 13:49:06,195.195 INFO    ] time= 12/06/2026 13:49:06
[2026-06-12 13:49:06,227.227 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 13:49:06,233.233 INFO    ] Checking for existing commands in stream...
[2026-06-12 13:49:06,300.300 INFO    ] No existing commands found in stream
[2026-06-12 13:49:11,309.309 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 13:49:11,318.318 INFO    ] Waiting 1.05 seconds before fallback handling...
[2026-06-12 13:49:12,736.736 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 13:49:12,738.738 INFO    ] Checking for system updates...
[2026-06-12 13:49:12,759.759 INFO    ] 200
[2026-06-12 13:49:12,761.761 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:49:12,791.791 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 13:49:12,792.792 INFO    ] No update needed
[2026-06-12 13:49:12,793.793 INFO    ] Checking for camera pi updates...
[2026-06-12 13:49:12,813.813 INFO    ] 200
[2026-06-12 13:49:12,814.814 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:49:12,838.838 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 13:49:12,879.879 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 13:49:12,880.880 INFO    ] No camera update needed
[2026-06-12 13:49:12,882.882 INFO    ] Script finished. Safe exiting...
[2026-06-12 13:49:12,883.883 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 13:49:12,886.886 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 13:49:12,888.888 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 13:49:14,927.927 INFO    ] ================================================
[2026-06-12 13:49:14,944.944 INFO    ] Launching Daemon at Fri Jun 12 13:49:14 IST 2026
[2026-06-12 13:49:14,955.955 INFO    ] ================================================
[2026-06-12 13:49:15,287.287 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 13:49:15
[2026-06-12 13:49:15,607.607 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 13:49:15,751.751 INFO    ] Initializing speech engine...
[2026-06-12 13:49:15,756.756 INFO    ] 2026-06-12 13:49:15
[2026-06-12 13:49:15,960.960 INFO    ] 2026-06-12 13:49:15
[2026-06-12 13:49:15,989.989 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 13:49:16,111.111 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 13:49:16,174.174 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 13:49:16,306.306 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 13:49:16,372.372 INFO    ] time= 12/06/2026 13:49:16
[2026-06-12 13:49:16,404.404 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 13:49:16,410.410 INFO    ] Checking for existing commands in stream...
[2026-06-12 13:49:16,476.476 INFO    ] No existing commands found in stream
[2026-06-12 13:49:21,487.487 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 13:49:21,490.490 INFO    ] Waiting 4.00 seconds before fallback handling...
[2026-06-12 13:49:25,848.848 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 13:49:25,850.850 INFO    ] Checking for system updates...
[2026-06-12 13:49:25,871.871 INFO    ] 200
[2026-06-12 13:49:25,872.872 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:49:25,903.903 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 13:49:25,905.905 INFO    ] No update needed
[2026-06-12 13:49:25,906.906 INFO    ] Checking for camera pi updates...
[2026-06-12 13:49:25,925.925 INFO    ] 200
[2026-06-12 13:49:25,926.926 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:49:25,948.948 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 13:49:26,091.091 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 13:49:26,093.093 INFO    ] No camera update needed
[2026-06-12 13:49:26,094.094 INFO    ] Script finished. Safe exiting...
[2026-06-12 13:49:26,095.095 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 13:49:26,098.098 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 13:49:26,101.101 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 13:49:28,141.141 INFO    ] ================================================
[2026-06-12 13:49:28,157.157 INFO    ] Launching Daemon at Fri Jun 12 13:49:28 IST 2026
[2026-06-12 13:49:28,168.168 INFO    ] ================================================
[2026-06-12 13:49:28,508.508 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 13:49:28
[2026-06-12 13:49:28,820.820 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 13:49:28,952.952 INFO    ] Initializing speech engine...
[2026-06-12 13:49:28,959.959 INFO    ] 2026-06-12 13:49:28
[2026-06-12 13:49:29,173.173 INFO    ] 2026-06-12 13:49:29
[2026-06-12 13:49:29,203.203 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 13:49:29,388.388 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 13:49:29,391.391 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 13:49:29,522.522 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 13:49:29,578.578 INFO    ] time= 12/06/2026 13:49:29
[2026-06-12 13:49:29,613.613 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 13:49:29,623.623 INFO    ] Checking for existing commands in stream...
[2026-06-12 13:49:29,695.695 INFO    ] No existing commands found in stream
[2026-06-12 13:49:34,704.704 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 13:49:34,707.707 INFO    ] Waiting 0.98 seconds before fallback handling...
[2026-06-12 13:49:36,069.069 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 13:49:36,070.070 INFO    ] Checking for system updates...
[2026-06-12 13:49:36,092.092 INFO    ] 200
[2026-06-12 13:49:36,093.093 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:49:36,123.123 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 13:49:36,124.124 INFO    ] No update needed
[2026-06-12 13:49:36,125.125 INFO    ] Checking for camera pi updates...
[2026-06-12 13:49:36,144.144 INFO    ] 200
[2026-06-12 13:49:36,145.145 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:49:36,172.172 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 13:49:36,219.219 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 13:49:36,220.220 INFO    ] No camera update needed
[2026-06-12 13:49:36,222.222 INFO    ] Script finished. Safe exiting...
[2026-06-12 13:49:36,223.223 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 13:49:36,226.226 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 13:49:36,228.228 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 13:49:38,266.266 INFO    ] ================================================
[2026-06-12 13:49:38,282.282 INFO    ] Launching Daemon at Fri Jun 12 13:49:38 IST 2026
[2026-06-12 13:49:38,293.293 INFO    ] ================================================
[2026-06-12 13:49:38,620.620 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 13:49:38
[2026-06-12 13:49:38,932.932 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 13:49:39,063.063 INFO    ] Initializing speech engine...
[2026-06-12 13:49:39,066.066 INFO    ] 2026-06-12 13:49:39
[2026-06-12 13:49:39,282.282 INFO    ] 2026-06-12 13:49:39
[2026-06-12 13:49:39,311.311 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 13:49:39,433.433 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 13:49:39,491.491 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 13:49:39,639.639 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 13:49:39,666.666 INFO    ] time= 12/06/2026 13:49:39
[2026-06-12 13:49:39,719.719 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 13:49:39,749.749 INFO    ] Checking for existing commands in stream...
[2026-06-12 13:49:39,826.826 INFO    ] No existing commands found in stream
[2026-06-12 13:49:44,837.837 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 13:49:44,839.839 INFO    ] Waiting 3.17 seconds before fallback handling...
[2026-06-12 13:49:48,390.390 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 13:49:48,391.391 INFO    ] Checking for system updates...
[2026-06-12 13:49:48,411.411 INFO    ] 200
[2026-06-12 13:49:48,413.413 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:49:48,445.445 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 13:49:48,447.447 INFO    ] No update needed
[2026-06-12 13:49:48,448.448 INFO    ] Checking for camera pi updates...
[2026-06-12 13:49:48,467.467 INFO    ] 200
[2026-06-12 13:49:48,469.469 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:49:48,493.493 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 13:49:48,534.534 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 13:49:48,535.535 INFO    ] No camera update needed
[2026-06-12 13:49:48,537.537 INFO    ] Script finished. Safe exiting...
[2026-06-12 13:49:48,538.538 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 13:49:48,541.541 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 13:49:48,544.544 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 13:49:50,583.583 INFO    ] ================================================
[2026-06-12 13:49:50,598.598 INFO    ] Launching Daemon at Fri Jun 12 13:49:50 IST 2026
[2026-06-12 13:49:50,611.611 INFO    ] ================================================
[2026-06-12 13:49:50,986.986 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 13:49:50
[2026-06-12 13:49:51,334.334 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 13:49:51,488.488 INFO    ] Initializing speech engine...
[2026-06-12 13:49:51,493.493 INFO    ] 2026-06-12 13:49:51
[2026-06-12 13:49:51,705.705 INFO    ] 2026-06-12 13:49:51
[2026-06-12 13:49:51,733.733 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 13:49:51,856.856 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 13:49:51,919.919 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 13:49:52,056.056 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 13:49:52,120.120 INFO    ] time= 12/06/2026 13:49:52
[2026-06-12 13:49:52,147.147 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 13:49:52,153.153 INFO    ] Checking for existing commands in stream...
[2026-06-12 13:49:52,220.220 INFO    ] No existing commands found in stream
[2026-06-12 13:49:57,235.235 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 13:49:57,238.238 INFO    ] Waiting 3.63 seconds before fallback handling...
[2026-06-12 13:50:01,250.250 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 13:50:01,252.252 INFO    ] Checking for system updates...
[2026-06-12 13:50:01,274.274 INFO    ] 200
[2026-06-12 13:50:01,276.276 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:50:01,310.310 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 13:50:01,312.312 INFO    ] No update needed
[2026-06-12 13:50:01,313.313 INFO    ] Checking for camera pi updates...
[2026-06-12 13:50:01,334.334 INFO    ] 200
[2026-06-12 13:50:01,335.335 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:50:01,373.373 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 13:50:01,433.433 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 13:50:01,435.435 INFO    ] No camera update needed
[2026-06-12 13:50:01,438.438 INFO    ] Script finished. Safe exiting...
[2026-06-12 13:50:01,455.455 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 13:50:01,482.482 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 13:50:01,491.491 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 13:50:03,525.525 INFO    ] ================================================
[2026-06-12 13:50:03,542.542 INFO    ] Launching Daemon at Fri Jun 12 13:50:03 IST 2026
[2026-06-12 13:50:03,553.553 INFO    ] ================================================
[2026-06-12 13:50:03,904.904 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 13:50:03
[2026-06-12 13:50:04,221.221 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 13:50:04,353.353 INFO    ] Initializing speech engine...
[2026-06-12 13:50:04,362.362 INFO    ] 2026-06-12 13:50:04
[2026-06-12 13:50:04,574.574 INFO    ] 2026-06-12 13:50:04
[2026-06-12 13:50:04,603.603 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 13:50:04,791.791 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 13:50:04,801.801 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 13:50:04,945.945 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 13:50:04,997.997 INFO    ] time= 12/06/2026 13:50:04
[2026-06-12 13:50:05,021.021 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 13:50:05,027.027 INFO    ] Checking for existing commands in stream...
[2026-06-12 13:50:05,121.121 INFO    ] No existing commands found in stream
[2026-06-12 13:50:10,135.135 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 13:50:10,137.137 INFO    ] Waiting 1.88 seconds before fallback handling...
[2026-06-12 13:50:12,414.414 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 13:50:12,416.416 INFO    ] Checking for system updates...
[2026-06-12 13:50:12,438.438 INFO    ] 200
[2026-06-12 13:50:12,439.439 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:50:12,468.468 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 13:50:12,470.470 INFO    ] No update needed
[2026-06-12 13:50:12,471.471 INFO    ] Checking for camera pi updates...
[2026-06-12 13:50:12,492.492 INFO    ] 200
[2026-06-12 13:50:12,493.493 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:50:12,518.518 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 13:50:12,616.616 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 13:50:12,618.618 INFO    ] No camera update needed
[2026-06-12 13:50:12,619.619 INFO    ] Script finished. Safe exiting...
[2026-06-12 13:50:12,620.620 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 13:50:12,623.623 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 13:50:12,626.626 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 13:50:14,667.667 INFO    ] ================================================
[2026-06-12 13:50:14,684.684 INFO    ] Launching Daemon at Fri Jun 12 13:50:14 IST 2026
[2026-06-12 13:50:14,696.696 INFO    ] ================================================
[2026-06-12 13:50:15,063.063 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 13:50:15
[2026-06-12 13:50:15,410.410 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 13:50:15,557.557 INFO    ] Initializing speech engine...
[2026-06-12 13:50:15,574.574 INFO    ] 2026-06-12 13:50:15
[2026-06-12 13:50:15,778.778 INFO    ] 2026-06-12 13:50:15
[2026-06-12 13:50:15,808.808 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 13:50:15,993.993 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 13:50:16,003.003 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 13:50:16,124.124 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 13:50:16,185.185 INFO    ] time= 12/06/2026 13:50:16
[2026-06-12 13:50:16,223.223 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 13:50:16,230.230 INFO    ] Checking for existing commands in stream...
[2026-06-12 13:50:16,320.320 INFO    ] No existing commands found in stream
[2026-06-12 13:50:21,334.334 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 13:50:21,338.338 INFO    ] Waiting 0.71 seconds before fallback handling...
[2026-06-12 13:50:22,426.426 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 13:50:22,427.427 INFO    ] Checking for system updates...
[2026-06-12 13:50:22,450.450 INFO    ] 200
[2026-06-12 13:50:22,451.451 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:50:22,484.484 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 13:50:22,485.485 INFO    ] No update needed
[2026-06-12 13:50:22,486.486 INFO    ] Checking for camera pi updates...
[2026-06-12 13:50:22,507.507 INFO    ] 200
[2026-06-12 13:50:22,509.509 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:50:22,534.534 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 13:50:22,579.579 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 13:50:22,581.581 INFO    ] No camera update needed
[2026-06-12 13:50:22,582.582 INFO    ] Script finished. Safe exiting...
[2026-06-12 13:50:22,584.584 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 13:50:22,587.587 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 13:50:22,590.590 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 13:50:24,629.629 INFO    ] ================================================
[2026-06-12 13:50:24,645.645 INFO    ] Launching Daemon at Fri Jun 12 13:50:24 IST 2026
[2026-06-12 13:50:24,656.656 INFO    ] ================================================
[2026-06-12 13:50:25,015.015 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 13:50:25
[2026-06-12 13:50:25,327.327 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 13:50:25,471.471 INFO    ] Initializing speech engine...
[2026-06-12 13:50:25,475.475 INFO    ] 2026-06-12 13:50:25
[2026-06-12 13:50:25,678.678 INFO    ] 2026-06-12 13:50:25
[2026-06-12 13:50:25,707.707 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 13:50:25,829.829 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 13:50:25,892.892 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 13:50:26,030.030 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 13:50:26,096.096 INFO    ] time= 12/06/2026 13:50:26
[2026-06-12 13:50:26,120.120 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 13:50:26,127.127 INFO    ] Checking for existing commands in stream...
[2026-06-12 13:50:26,194.194 INFO    ] No existing commands found in stream
[2026-06-12 13:50:31,208.208 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 13:50:31,211.211 INFO    ] Waiting 3.42 seconds before fallback handling...
[2026-06-12 13:50:35,000.000 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 13:50:35,001.001 INFO    ] Checking for system updates...
[2026-06-12 13:50:35,021.021 INFO    ] 200
[2026-06-12 13:50:35,023.023 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:50:35,052.052 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 13:50:35,054.054 INFO    ] No update needed
[2026-06-12 13:50:35,055.055 INFO    ] Checking for camera pi updates...
[2026-06-12 13:50:35,074.074 INFO    ] 200
[2026-06-12 13:50:35,075.075 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:50:35,100.100 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 13:50:35,144.144 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 13:50:35,145.145 INFO    ] No camera update needed
[2026-06-12 13:50:35,146.146 INFO    ] Script finished. Safe exiting...
[2026-06-12 13:50:35,148.148 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 13:50:35,151.151 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 13:50:35,153.153 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 13:50:37,193.193 INFO    ] ================================================
[2026-06-12 13:50:37,208.208 INFO    ] Launching Daemon at Fri Jun 12 13:50:37 IST 2026
[2026-06-12 13:50:37,218.218 INFO    ] ================================================
[2026-06-12 13:50:37,554.554 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 13:50:37
[2026-06-12 13:50:37,867.867 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 13:50:38,009.009 INFO    ] Initializing speech engine...
[2026-06-12 13:50:38,015.015 INFO    ] 2026-06-12 13:50:38
[2026-06-12 13:50:38,219.219 INFO    ] 2026-06-12 13:50:38
[2026-06-12 13:50:38,247.247 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 13:50:38,430.430 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 13:50:38,440.440 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 13:50:38,586.586 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 13:50:38,638.638 INFO    ] time= 12/06/2026 13:50:38
[2026-06-12 13:50:38,661.661 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 13:50:38,667.667 INFO    ] Checking for existing commands in stream...
[2026-06-12 13:50:38,734.734 INFO    ] No existing commands found in stream
[2026-06-12 13:50:43,742.742 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 13:50:43,745.745 INFO    ] Waiting 2.33 seconds before fallback handling...
[2026-06-12 13:50:46,465.465 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 13:50:46,466.466 INFO    ] Checking for system updates...
[2026-06-12 13:50:46,487.487 INFO    ] 200
[2026-06-12 13:50:46,488.488 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:50:46,522.522 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 13:50:46,523.523 INFO    ] No update needed
[2026-06-12 13:50:46,524.524 INFO    ] Checking for camera pi updates...
[2026-06-12 13:50:46,543.543 INFO    ] 200
[2026-06-12 13:50:46,544.544 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:50:46,569.569 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 13:50:46,617.617 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 13:50:46,618.618 INFO    ] No camera update needed
[2026-06-12 13:50:46,619.619 INFO    ] Script finished. Safe exiting...
[2026-06-12 13:50:46,621.621 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 13:50:46,624.624 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 13:50:46,626.626 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 13:50:48,664.664 INFO    ] ================================================
[2026-06-12 13:50:48,680.680 INFO    ] Launching Daemon at Fri Jun 12 13:50:48 IST 2026
[2026-06-12 13:50:48,691.691 INFO    ] ================================================
[2026-06-12 13:50:49,040.040 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 13:50:49
[2026-06-12 13:50:49,382.382 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 13:50:49,537.537 INFO    ] Initializing speech engine...
[2026-06-12 13:50:49,542.542 INFO    ] 2026-06-12 13:50:49
[2026-06-12 13:50:49,746.746 INFO    ] 2026-06-12 13:50:49
[2026-06-12 13:50:49,775.775 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 13:50:49,909.909 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 13:50:49,962.962 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 13:50:50,099.099 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 13:50:50,164.164 INFO    ] time= 12/06/2026 13:50:50
[2026-06-12 13:50:50,191.191 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 13:50:50,197.197 INFO    ] Checking for existing commands in stream...
[2026-06-12 13:50:50,264.264 INFO    ] No existing commands found in stream
[2026-06-12 13:50:55,288.288 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 13:50:55,292.292 INFO    ] Waiting 2.75 seconds before fallback handling...
[2026-06-12 13:50:58,414.414 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 13:50:58,415.415 INFO    ] Checking for system updates...
[2026-06-12 13:50:58,436.436 INFO    ] 200
[2026-06-12 13:50:58,438.438 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:50:58,470.470 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 13:50:58,471.471 INFO    ] No update needed
[2026-06-12 13:50:58,473.473 INFO    ] Checking for camera pi updates...
[2026-06-12 13:50:58,495.495 INFO    ] 200
[2026-06-12 13:50:58,496.496 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:50:58,521.521 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 13:50:58,571.571 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 13:50:58,573.573 INFO    ] No camera update needed
[2026-06-12 13:50:58,574.574 INFO    ] Script finished. Safe exiting...
[2026-06-12 13:50:58,576.576 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 13:50:58,579.579 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 13:50:58,582.582 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 13:51:00,620.620 INFO    ] ================================================
[2026-06-12 13:51:00,635.635 INFO    ] Launching Daemon at Fri Jun 12 13:51:00 IST 2026
[2026-06-12 13:51:00,646.646 INFO    ] ================================================
[2026-06-12 13:51:01,016.016 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 13:51:01
[2026-06-12 13:51:01,328.328 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 13:51:01,467.467 INFO    ] Initializing speech engine...
[2026-06-12 13:51:01,477.477 INFO    ] 2026-06-12 13:51:01
[2026-06-12 13:51:01,681.681 INFO    ] 2026-06-12 13:51:01
[2026-06-12 13:51:01,711.711 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 13:51:01,849.849 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 13:51:01,852.852 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 13:51:01,979.979 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 13:51:01,982.982 INFO    ] time= 12/06/2026 13:51:01
[2026-06-12 13:51:01,984.984 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 13:51:01,987.987 INFO    ] Checking for existing commands in stream...
[2026-06-12 13:51:02,037.037 INFO    ] No existing commands found in stream
[2026-06-12 13:51:07,046.046 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 13:51:07,049.049 INFO    ] Waiting 3.68 seconds before fallback handling...
[2026-06-12 13:51:11,059.059 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 13:51:11,060.060 INFO    ] Checking for system updates...
[2026-06-12 13:51:11,082.082 INFO    ] 200
[2026-06-12 13:51:11,083.083 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:51:11,112.112 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 13:51:11,114.114 INFO    ] No update needed
[2026-06-12 13:51:11,115.115 INFO    ] Checking for camera pi updates...
[2026-06-12 13:51:11,135.135 INFO    ] 200
[2026-06-12 13:51:11,136.136 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:51:11,160.160 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 13:51:11,188.188 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 13:51:11,189.189 INFO    ] No camera update needed
[2026-06-12 13:51:11,191.191 INFO    ] Script finished. Safe exiting...
[2026-06-12 13:51:11,192.192 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 13:51:11,195.195 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 13:51:11,198.198 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 13:51:13,229.229 INFO    ] ================================================
[2026-06-12 13:51:13,244.244 INFO    ] Launching Daemon at Fri Jun 12 13:51:13 IST 2026
[2026-06-12 13:51:13,255.255 INFO    ] ================================================
[2026-06-12 13:51:13,624.624 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 13:51:13
[2026-06-12 13:51:13,936.936 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 13:51:14,065.065 INFO    ] Initializing speech engine...
[2026-06-12 13:51:14,069.069 INFO    ] 2026-06-12 13:51:14
[2026-06-12 13:51:14,288.288 INFO    ] 2026-06-12 13:51:14
[2026-06-12 13:51:14,316.316 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 13:51:14,503.503 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 13:51:14,512.512 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 13:51:14,644.644 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 13:51:14,708.708 INFO    ] time= 12/06/2026 13:51:14
[2026-06-12 13:51:14,735.735 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 13:51:14,742.742 INFO    ] Checking for existing commands in stream...
[2026-06-12 13:51:14,809.809 INFO    ] No existing commands found in stream
[2026-06-12 13:51:19,818.818 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 13:51:19,821.821 INFO    ] Waiting 1.45 seconds before fallback handling...
[2026-06-12 13:51:21,610.610 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 13:51:21,611.611 INFO    ] Checking for system updates...
[2026-06-12 13:51:21,632.632 INFO    ] 200
[2026-06-12 13:51:21,633.633 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:51:21,665.665 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 13:51:21,666.666 INFO    ] No update needed
[2026-06-12 13:51:21,667.667 INFO    ] Checking for camera pi updates...
[2026-06-12 13:51:21,686.686 INFO    ] 200
[2026-06-12 13:51:21,687.687 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:51:21,710.710 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 13:51:21,832.832 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 13:51:21,834.834 INFO    ] No camera update needed
[2026-06-12 13:51:21,835.835 INFO    ] Script finished. Safe exiting...
[2026-06-12 13:51:21,836.836 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 13:51:21,839.839 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 13:51:21,842.842 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 13:51:23,881.881 INFO    ] ================================================
[2026-06-12 13:51:23,896.896 INFO    ] Launching Daemon at Fri Jun 12 13:51:23 IST 2026
[2026-06-12 13:51:23,907.907 INFO    ] ================================================
[2026-06-12 13:51:24,269.269 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 13:51:24
[2026-06-12 13:51:24,579.579 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 13:51:24,722.722 INFO    ] Initializing speech engine...
[2026-06-12 13:51:24,726.726 INFO    ] 2026-06-12 13:51:24
[2026-06-12 13:51:24,932.932 INFO    ] 2026-06-12 13:51:24
[2026-06-12 13:51:24,961.961 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 13:51:25,147.147 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 13:51:25,156.156 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 13:51:25,287.287 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 13:51:25,351.351 INFO    ] time= 12/06/2026 13:51:25
[2026-06-12 13:51:25,379.379 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 13:51:25,381.381 INFO    ] Checking for existing commands in stream...
[2026-06-12 13:51:25,451.451 INFO    ] No existing commands found in stream
[2026-06-12 13:51:30,462.462 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 13:51:30,464.464 INFO    ] Waiting 3.42 seconds before fallback handling...
[2026-06-12 13:51:34,230.230 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 13:51:34,232.232 INFO    ] Checking for system updates...
[2026-06-12 13:51:34,252.252 INFO    ] 200
[2026-06-12 13:51:34,253.253 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:51:34,283.283 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 13:51:34,284.284 INFO    ] No update needed
[2026-06-12 13:51:34,286.286 INFO    ] Checking for camera pi updates...
[2026-06-12 13:51:34,306.306 INFO    ] 200
[2026-06-12 13:51:34,307.307 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:51:34,330.330 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 13:51:34,412.412 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 13:51:34,414.414 INFO    ] No camera update needed
[2026-06-12 13:51:34,415.415 INFO    ] Script finished. Safe exiting...
[2026-06-12 13:51:34,416.416 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 13:51:34,419.419 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 13:51:34,422.422 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 13:51:36,464.464 INFO    ] ================================================
[2026-06-12 13:51:36,479.479 INFO    ] Launching Daemon at Fri Jun 12 13:51:36 IST 2026
[2026-06-12 13:51:36,490.490 INFO    ] ================================================
[2026-06-12 13:51:36,818.818 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 13:51:36
[2026-06-12 13:51:37,130.130 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 13:51:37,259.259 INFO    ] Initializing speech engine...
[2026-06-12 13:51:37,264.264 INFO    ] 2026-06-12 13:51:37
[2026-06-12 13:51:37,478.478 INFO    ] 2026-06-12 13:51:37
[2026-06-12 13:51:37,507.507 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 13:51:37,692.692 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 13:51:37,696.696 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 13:51:37,829.829 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 13:51:37,899.899 INFO    ] time= 12/06/2026 13:51:37
[2026-06-12 13:51:37,924.924 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 13:51:37,930.930 INFO    ] Checking for existing commands in stream...
[2026-06-12 13:51:37,997.997 INFO    ] No existing commands found in stream
[2026-06-12 13:51:43,011.011 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 13:51:43,014.014 INFO    ] Waiting 1.74 seconds before fallback handling...
[2026-06-12 13:51:45,113.113 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 13:51:45,115.115 INFO    ] Checking for system updates...
[2026-06-12 13:51:45,136.136 INFO    ] 200
[2026-06-12 13:51:45,137.137 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:51:45,168.168 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 13:51:45,170.170 INFO    ] No update needed
[2026-06-12 13:51:45,171.171 INFO    ] Checking for camera pi updates...
[2026-06-12 13:51:45,192.192 INFO    ] 200
[2026-06-12 13:51:45,193.193 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:51:45,217.217 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 13:51:45,278.278 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 13:51:45,279.279 INFO    ] No camera update needed
[2026-06-12 13:51:45,281.281 INFO    ] Script finished. Safe exiting...
[2026-06-12 13:51:45,282.282 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 13:51:45,285.285 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 13:51:45,288.288 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 13:51:47,328.328 INFO    ] ================================================
[2026-06-12 13:51:47,343.343 INFO    ] Launching Daemon at Fri Jun 12 13:51:47 IST 2026
[2026-06-12 13:51:47,354.354 INFO    ] ================================================
[2026-06-12 13:51:47,706.706 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 13:51:47
[2026-06-12 13:51:48,023.023 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 13:51:48,161.161 INFO    ] Initializing speech engine...
[2026-06-12 13:51:48,171.171 INFO    ] 2026-06-12 13:51:48
[2026-06-12 13:51:48,375.375 INFO    ] 2026-06-12 13:51:48
[2026-06-12 13:51:48,403.403 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 13:51:48,525.525 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 13:51:48,588.588 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 13:51:48,722.722 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 13:51:48,779.779 INFO    ] time= 12/06/2026 13:51:48
[2026-06-12 13:51:48,816.816 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 13:51:48,823.823 INFO    ] Checking for existing commands in stream...
[2026-06-12 13:51:48,887.887 INFO    ] No existing commands found in stream
[2026-06-12 13:51:53,898.898 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 13:51:53,901.901 INFO    ] Waiting 2.25 seconds before fallback handling...
[2026-06-12 13:51:56,492.492 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 13:51:56,494.494 INFO    ] Checking for system updates...
[2026-06-12 13:51:56,515.515 INFO    ] 200
[2026-06-12 13:51:56,517.517 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:51:56,547.547 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 13:51:56,548.548 INFO    ] No update needed
[2026-06-12 13:51:56,549.549 INFO    ] Checking for camera pi updates...
[2026-06-12 13:51:56,572.572 INFO    ] 200
[2026-06-12 13:51:56,573.573 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:51:56,596.596 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 13:51:56,625.625 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 13:51:56,630.630 INFO    ] No camera update needed
[2026-06-12 13:51:56,632.632 INFO    ] Script finished. Safe exiting...
[2026-06-12 13:51:56,633.633 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 13:51:56,636.636 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 13:51:56,639.639 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 13:51:58,676.676 INFO    ] ================================================
[2026-06-12 13:51:58,691.691 INFO    ] Launching Daemon at Fri Jun 12 13:51:58 IST 2026
[2026-06-12 13:51:58,702.702 INFO    ] ================================================
[2026-06-12 13:51:59,034.034 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 13:51:59
[2026-06-12 13:51:59,346.346 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 13:51:59,488.488 INFO    ] Initializing speech engine...
[2026-06-12 13:51:59,493.493 INFO    ] 2026-06-12 13:51:59
[2026-06-12 13:51:59,698.698 INFO    ] 2026-06-12 13:51:59
[2026-06-12 13:51:59,727.727 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 13:51:59,915.915 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 13:51:59,919.919 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 13:52:00,108.108 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 13:52:00,144.144 INFO    ] time= 12/06/2026 13:52:00
[2026-06-12 13:52:00,150.150 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 13:52:00,155.155 INFO    ] Checking for existing commands in stream...
[2026-06-12 13:52:00,221.221 INFO    ] No existing commands found in stream
[2026-06-12 13:52:05,232.232 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 13:52:05,235.235 INFO    ] Waiting 2.65 seconds before fallback handling...
[2026-06-12 13:52:08,254.254 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 13:52:08,255.255 INFO    ] Checking for system updates...
[2026-06-12 13:52:08,276.276 INFO    ] 200
[2026-06-12 13:52:08,278.278 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:52:08,310.310 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 13:52:08,311.311 INFO    ] No update needed
[2026-06-12 13:52:08,312.312 INFO    ] Checking for camera pi updates...
[2026-06-12 13:52:08,331.331 INFO    ] 200
[2026-06-12 13:52:08,332.332 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:52:08,356.356 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 13:52:08,404.404 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 13:52:08,406.406 INFO    ] No camera update needed
[2026-06-12 13:52:08,407.407 INFO    ] Script finished. Safe exiting...
[2026-06-12 13:52:08,408.408 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 13:52:08,411.411 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 13:52:08,414.414 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 13:52:10,452.452 INFO    ] ================================================
[2026-06-12 13:52:10,469.469 INFO    ] Launching Daemon at Fri Jun 12 13:52:10 IST 2026
[2026-06-12 13:52:10,480.480 INFO    ] ================================================
[2026-06-12 13:52:10,819.819 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 13:52:10
[2026-06-12 13:52:11,132.132 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 13:52:11,263.263 INFO    ] Initializing speech engine...
[2026-06-12 13:52:11,271.271 INFO    ] 2026-06-12 13:52:11
[2026-06-12 13:52:11,482.482 INFO    ] 2026-06-12 13:52:11
[2026-06-12 13:52:11,511.511 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 13:52:11,695.695 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 13:52:11,703.703 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 13:52:11,832.832 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 13:52:11,899.899 INFO    ] time= 12/06/2026 13:52:11
[2026-06-12 13:52:11,922.922 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 13:52:11,929.929 INFO    ] Checking for existing commands in stream...
[2026-06-12 13:52:12,019.019 INFO    ] No existing commands found in stream
[2026-06-12 13:52:17,033.033 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 13:52:17,036.036 INFO    ] Waiting 2.05 seconds before fallback handling...
[2026-06-12 13:52:19,413.413 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 13:52:19,415.415 INFO    ] Checking for system updates...
[2026-06-12 13:52:19,435.435 INFO    ] 200
[2026-06-12 13:52:19,436.436 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:52:19,469.469 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 13:52:19,470.470 INFO    ] No update needed
[2026-06-12 13:52:19,472.472 INFO    ] Checking for camera pi updates...
[2026-06-12 13:52:19,492.492 INFO    ] 200
[2026-06-12 13:52:19,494.494 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:52:19,518.518 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 13:52:19,549.549 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 13:52:19,551.551 INFO    ] No camera update needed
[2026-06-12 13:52:19,552.552 INFO    ] Script finished. Safe exiting...
[2026-06-12 13:52:19,553.553 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 13:52:19,556.556 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 13:52:19,559.559 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 13:52:21,599.599 INFO    ] ================================================
[2026-06-12 13:52:21,615.615 INFO    ] Launching Daemon at Fri Jun 12 13:52:21 IST 2026
[2026-06-12 13:52:21,626.626 INFO    ] ================================================
[2026-06-12 13:52:21,967.967 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 13:52:21
[2026-06-12 13:52:22,278.278 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 13:52:22,421.421 INFO    ] Initializing speech engine...
[2026-06-12 13:52:22,426.426 INFO    ] 2026-06-12 13:52:22
[2026-06-12 13:52:22,629.629 INFO    ] 2026-06-12 13:52:22
[2026-06-12 13:52:22,658.658 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 13:52:22,841.841 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 13:52:22,851.851 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 13:52:23,000.000 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 13:52:23,047.047 INFO    ] time= 12/06/2026 13:52:23
[2026-06-12 13:52:23,070.070 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 13:52:23,076.076 INFO    ] Checking for existing commands in stream...
[2026-06-12 13:52:23,143.143 INFO    ] No existing commands found in stream
[2026-06-12 13:52:28,172.172 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 13:52:28,175.175 INFO    ] Waiting 0.85 seconds before fallback handling...
[2026-06-12 13:52:29,422.422 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 13:52:29,424.424 INFO    ] Checking for system updates...
[2026-06-12 13:52:29,444.444 INFO    ] 200
[2026-06-12 13:52:29,446.446 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:52:29,478.478 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 13:52:29,480.480 INFO    ] No update needed
[2026-06-12 13:52:29,481.481 INFO    ] Checking for camera pi updates...
[2026-06-12 13:52:29,501.501 INFO    ] 200
[2026-06-12 13:52:29,502.502 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:52:29,525.525 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 13:52:29,592.592 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 13:52:29,594.594 INFO    ] No camera update needed
[2026-06-12 13:52:29,595.595 INFO    ] Script finished. Safe exiting...
[2026-06-12 13:52:29,596.596 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 13:52:29,600.600 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 13:52:29,603.603 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 13:52:31,634.634 INFO    ] ================================================
[2026-06-12 13:52:31,644.644 INFO    ] Launching Daemon at Fri Jun 12 13:52:31 IST 2026
[2026-06-12 13:52:31,650.650 INFO    ] ================================================
[2026-06-12 13:52:31,972.972 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 13:52:31
[2026-06-12 13:52:32,290.290 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 13:52:32,432.432 INFO    ] Initializing speech engine...
[2026-06-12 13:52:32,441.441 INFO    ] 2026-06-12 13:52:32
[2026-06-12 13:52:32,647.647 INFO    ] 2026-06-12 13:52:32
[2026-06-12 13:52:32,676.676 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 13:52:32,862.862 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 13:52:32,872.872 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 13:52:33,016.016 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 13:52:33,069.069 INFO    ] time= 12/06/2026 13:52:33
[2026-06-12 13:52:33,092.092 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 13:52:33,098.098 INFO    ] Checking for existing commands in stream...
[2026-06-12 13:52:33,165.165 INFO    ] No existing commands found in stream
[2026-06-12 13:52:38,179.179 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 13:52:38,182.182 INFO    ] Waiting 2.69 seconds before fallback handling...
[2026-06-12 13:52:41,265.265 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 13:52:41,267.267 INFO    ] Checking for system updates...
[2026-06-12 13:52:41,288.288 INFO    ] 200
[2026-06-12 13:52:41,289.289 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:52:41,319.319 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 13:52:41,321.321 INFO    ] No update needed
[2026-06-12 13:52:41,322.322 INFO    ] Checking for camera pi updates...
[2026-06-12 13:52:41,342.342 INFO    ] 200
[2026-06-12 13:52:41,344.344 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:52:41,366.366 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 13:52:41,409.409 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 13:52:41,411.411 INFO    ] No camera update needed
[2026-06-12 13:52:41,412.412 INFO    ] Script finished. Safe exiting...
[2026-06-12 13:52:41,413.413 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 13:52:41,416.416 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 13:52:41,419.419 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 13:52:43,456.456 INFO    ] ================================================
[2026-06-12 13:52:43,472.472 INFO    ] Launching Daemon at Fri Jun 12 13:52:43 IST 2026
[2026-06-12 13:52:43,482.482 INFO    ] ================================================
[2026-06-12 13:52:43,820.820 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 13:52:43
[2026-06-12 13:52:44,131.131 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 13:52:44,261.261 INFO    ] Initializing speech engine...
[2026-06-12 13:52:44,265.265 INFO    ] 2026-06-12 13:52:44
[2026-06-12 13:52:44,484.484 INFO    ] 2026-06-12 13:52:44
[2026-06-12 13:52:44,513.513 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 13:52:44,701.701 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 13:52:44,709.709 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 13:52:44,843.843 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 13:52:44,889.889 INFO    ] time= 12/06/2026 13:52:44
[2026-06-12 13:52:44,934.934 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 13:52:44,952.952 INFO    ] Checking for existing commands in stream...
[2026-06-12 13:52:45,028.028 INFO    ] No existing commands found in stream
[2026-06-12 13:52:50,038.038 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 13:52:50,041.041 INFO    ] Waiting 2.93 seconds before fallback handling...
[2026-06-12 13:52:53,329.329 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 13:52:53,331.331 INFO    ] Checking for system updates...
[2026-06-12 13:52:53,351.351 INFO    ] 200
[2026-06-12 13:52:53,353.353 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:52:53,382.382 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 13:52:53,383.383 INFO    ] No update needed
[2026-06-12 13:52:53,384.384 INFO    ] Checking for camera pi updates...
[2026-06-12 13:52:53,405.405 INFO    ] 200
[2026-06-12 13:52:53,406.406 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:52:53,430.430 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 13:52:53,461.461 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 13:52:53,463.463 INFO    ] No camera update needed
[2026-06-12 13:52:53,464.464 INFO    ] Script finished. Safe exiting...
[2026-06-12 13:52:53,465.465 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 13:52:53,468.468 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 13:52:53,471.471 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 13:52:55,504.504 INFO    ] ================================================
[2026-06-12 13:52:55,513.513 INFO    ] Launching Daemon at Fri Jun 12 13:52:55 IST 2026
[2026-06-12 13:52:55,519.519 INFO    ] ================================================
[2026-06-12 13:52:55,834.834 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 13:52:55
[2026-06-12 13:52:56,172.172 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 13:52:56,310.310 INFO    ] Initializing speech engine...
[2026-06-12 13:52:56,314.314 INFO    ] 2026-06-12 13:52:56
[2026-06-12 13:52:56,542.542 INFO    ] 2026-06-12 13:52:56
[2026-06-12 13:52:56,571.571 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 13:52:56,699.699 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 13:52:56,752.752 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 13:52:56,899.899 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 13:52:56,930.930 INFO    ] time= 12/06/2026 13:52:56
[2026-06-12 13:52:56,978.978 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 13:52:57,002.002 INFO    ] Checking for existing commands in stream...
[2026-06-12 13:52:57,074.074 INFO    ] No existing commands found in stream
[2026-06-12 13:53:02,081.081 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 13:53:02,083.083 INFO    ] Waiting 1.34 seconds before fallback handling...
[2026-06-12 13:53:03,750.750 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 13:53:03,751.751 INFO    ] Checking for system updates...
[2026-06-12 13:53:03,771.771 INFO    ] 200
[2026-06-12 13:53:03,773.773 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:53:03,804.804 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 13:53:03,806.806 INFO    ] No update needed
[2026-06-12 13:53:03,807.807 INFO    ] Checking for camera pi updates...
[2026-06-12 13:53:03,827.827 INFO    ] 200
[2026-06-12 13:53:03,828.828 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:53:03,852.852 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 13:53:03,900.900 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 13:53:03,902.902 INFO    ] No camera update needed
[2026-06-12 13:53:03,903.903 INFO    ] Script finished. Safe exiting...
[2026-06-12 13:53:03,904.904 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 13:53:03,907.907 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 13:53:03,910.910 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 13:53:05,949.949 INFO    ] ================================================
[2026-06-12 13:53:05,964.964 INFO    ] Launching Daemon at Fri Jun 12 13:53:05 IST 2026
[2026-06-12 13:53:05,976.976 INFO    ] ================================================
[2026-06-12 13:53:06,500.500 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 13:53:06
[2026-06-12 13:53:06,812.812 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 13:53:06,946.946 INFO    ] Initializing speech engine...
[2026-06-12 13:53:06,955.955 INFO    ] 2026-06-12 13:53:06
[2026-06-12 13:53:07,178.178 INFO    ] 2026-06-12 13:53:07
[2026-06-12 13:53:07,209.209 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 13:53:07,396.396 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 13:53:07,406.406 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 13:53:07,536.536 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 13:53:07,597.597 INFO    ] time= 12/06/2026 13:53:07
[2026-06-12 13:53:07,659.659 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 13:53:07,683.683 INFO    ] Checking for existing commands in stream...
[2026-06-12 13:53:07,755.755 INFO    ] No existing commands found in stream
[2026-06-12 13:53:12,765.765 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 13:53:12,768.768 INFO    ] Waiting 0.38 seconds before fallback handling...
[2026-06-12 13:53:13,522.522 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 13:53:13,524.524 INFO    ] Checking for system updates...
[2026-06-12 13:53:13,544.544 INFO    ] 200
[2026-06-12 13:53:13,545.545 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:53:13,577.577 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 13:53:13,578.578 INFO    ] No update needed
[2026-06-12 13:53:13,580.580 INFO    ] Checking for camera pi updates...
[2026-06-12 13:53:13,599.599 INFO    ] 200
[2026-06-12 13:53:13,600.600 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:53:13,626.626 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 13:53:13,666.666 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 13:53:13,667.667 INFO    ] No camera update needed
[2026-06-12 13:53:13,669.669 INFO    ] Script finished. Safe exiting...
[2026-06-12 13:53:13,670.670 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 13:53:13,673.673 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 13:53:13,676.676 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 13:53:15,713.713 INFO    ] ================================================
[2026-06-12 13:53:15,729.729 INFO    ] Launching Daemon at Fri Jun 12 13:53:15 IST 2026
[2026-06-12 13:53:15,741.741 INFO    ] ================================================
[2026-06-12 13:53:16,115.115 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 13:53:16
[2026-06-12 13:53:16,456.456 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 13:53:16,611.611 INFO    ] Initializing speech engine...
[2026-06-12 13:53:16,615.615 INFO    ] 2026-06-12 13:53:16
[2026-06-12 13:53:16,822.822 INFO    ] 2026-06-12 13:53:16
[2026-06-12 13:53:16,851.851 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 13:53:16,984.984 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 13:53:17,036.036 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 13:53:17,170.170 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 13:53:17,233.233 INFO    ] time= 12/06/2026 13:53:17
[2026-06-12 13:53:17,265.265 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 13:53:17,271.271 INFO    ] Checking for existing commands in stream...
[2026-06-12 13:53:17,338.338 INFO    ] No existing commands found in stream
[2026-06-12 13:53:22,353.353 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 13:53:22,356.356 INFO    ] Waiting 3.22 seconds before fallback handling...
[2026-06-12 13:53:25,952.952 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 13:53:25,954.954 INFO    ] Checking for system updates...
[2026-06-12 13:53:25,976.976 INFO    ] 200
[2026-06-12 13:53:25,977.977 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:53:26,007.007 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 13:53:26,008.008 INFO    ] No update needed
[2026-06-12 13:53:26,010.010 INFO    ] Checking for camera pi updates...
[2026-06-12 13:53:26,031.031 INFO    ] 200
[2026-06-12 13:53:26,032.032 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:53:26,055.055 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 13:53:26,114.114 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 13:53:26,116.116 INFO    ] No camera update needed
[2026-06-12 13:53:26,117.117 INFO    ] Script finished. Safe exiting...
[2026-06-12 13:53:26,118.118 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 13:53:26,121.121 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 13:53:26,124.124 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 13:53:28,153.153 INFO    ] ================================================
[2026-06-12 13:53:28,162.162 INFO    ] Launching Daemon at Fri Jun 12 13:53:28 IST 2026
[2026-06-12 13:53:28,168.168 INFO    ] ================================================
[2026-06-12 13:53:28,524.524 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 13:53:28
[2026-06-12 13:53:28,844.844 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 13:53:28,989.989 INFO    ] Initializing speech engine...
[2026-06-12 13:53:28,994.994 INFO    ] 2026-06-12 13:53:28
[2026-06-12 13:53:29,200.200 INFO    ] 2026-06-12 13:53:29
[2026-06-12 13:53:29,228.228 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 13:53:29,362.362 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 13:53:29,415.415 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 13:53:29,553.553 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 13:53:29,620.620 INFO    ] time= 12/06/2026 13:53:29
[2026-06-12 13:53:29,644.644 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 13:53:29,651.651 INFO    ] Checking for existing commands in stream...
[2026-06-12 13:53:29,717.717 INFO    ] No existing commands found in stream
[2026-06-12 13:53:34,732.732 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 13:53:34,734.734 INFO    ] Waiting 1.64 seconds before fallback handling...
[2026-06-12 13:53:36,743.743 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 13:53:36,745.745 INFO    ] Checking for system updates...
[2026-06-12 13:53:36,767.767 INFO    ] 200
[2026-06-12 13:53:36,769.769 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:53:36,801.801 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 13:53:36,802.802 INFO    ] No update needed
[2026-06-12 13:53:36,803.803 INFO    ] Checking for camera pi updates...
[2026-06-12 13:53:36,824.824 INFO    ] 200
[2026-06-12 13:53:36,825.825 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:53:36,850.850 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 13:53:37,000.000 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 13:53:37,001.001 INFO    ] No camera update needed
[2026-06-12 13:53:37,002.002 INFO    ] Script finished. Safe exiting...
[2026-06-12 13:53:37,004.004 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 13:53:37,007.007 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 13:53:37,009.009 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 13:53:39,048.048 INFO    ] ================================================
[2026-06-12 13:53:39,064.064 INFO    ] Launching Daemon at Fri Jun 12 13:53:39 IST 2026
[2026-06-12 13:53:39,076.076 INFO    ] ================================================
[2026-06-12 13:53:39,425.425 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 13:53:39
[2026-06-12 13:53:39,736.736 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 13:53:39,878.878 INFO    ] Initializing speech engine...
[2026-06-12 13:53:39,883.883 INFO    ] 2026-06-12 13:53:39
[2026-06-12 13:53:40,085.085 INFO    ] 2026-06-12 13:53:40
[2026-06-12 13:53:40,115.115 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 13:53:40,296.296 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 13:53:40,300.300 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 13:53:40,435.435 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 13:53:40,501.501 INFO    ] time= 12/06/2026 13:53:40
[2026-06-12 13:53:40,525.525 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 13:53:40,595.595 INFO    ] Checking for existing commands in stream...
[2026-06-12 13:53:40,715.715 INFO    ] No existing commands found in stream
[2026-06-12 13:53:45,726.726 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 13:53:45,728.728 INFO    ] Waiting 3.82 seconds before fallback handling...
[2026-06-12 13:53:49,938.938 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 13:53:49,939.939 INFO    ] Checking for system updates...
[2026-06-12 13:53:49,961.961 INFO    ] 200
[2026-06-12 13:53:49,963.963 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:53:49,993.993 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 13:53:49,995.995 INFO    ] No update needed
[2026-06-12 13:53:49,996.996 INFO    ] Checking for camera pi updates...
[2026-06-12 13:53:50,015.015 INFO    ] 200
[2026-06-12 13:53:50,017.017 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:53:50,042.042 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 13:53:50,082.082 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 13:53:50,083.083 INFO    ] No camera update needed
[2026-06-12 13:53:50,085.085 INFO    ] Script finished. Safe exiting...
[2026-06-12 13:53:50,086.086 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 13:53:50,089.089 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 13:53:50,092.092 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 13:53:52,130.130 INFO    ] ================================================
[2026-06-12 13:53:52,146.146 INFO    ] Launching Daemon at Fri Jun 12 13:53:52 IST 2026
[2026-06-12 13:53:52,158.158 INFO    ] ================================================
[2026-06-12 13:53:52,505.505 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 13:53:52
[2026-06-12 13:53:52,815.815 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 13:53:52,957.957 INFO    ] Initializing speech engine...
[2026-06-12 13:53:52,963.963 INFO    ] 2026-06-12 13:53:52
[2026-06-12 13:53:53,164.164 INFO    ] 2026-06-12 13:53:53
[2026-06-12 13:53:53,192.192 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 13:53:53,380.380 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 13:53:53,391.391 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 13:53:53,513.513 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 13:53:53,563.563 INFO    ] time= 12/06/2026 13:53:53
[2026-06-12 13:53:53,611.611 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 13:53:53,618.618 INFO    ] Checking for existing commands in stream...
[2026-06-12 13:53:53,684.684 INFO    ] No existing commands found in stream
[2026-06-12 13:53:58,694.694 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 13:53:58,697.697 INFO    ] Waiting 3.50 seconds before fallback handling...
[2026-06-12 13:54:02,505.505 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 13:54:02,507.507 INFO    ] Checking for system updates...
[2026-06-12 13:54:02,529.529 INFO    ] 200
[2026-06-12 13:54:02,531.531 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:54:02,561.561 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 13:54:02,562.562 INFO    ] No update needed
[2026-06-12 13:54:02,564.564 INFO    ] Checking for camera pi updates...
[2026-06-12 13:54:02,588.588 INFO    ] 200
[2026-06-12 13:54:02,591.591 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:54:02,618.618 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 13:54:02,652.652 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 13:54:02,654.654 INFO    ] No camera update needed
[2026-06-12 13:54:02,655.655 INFO    ] Script finished. Safe exiting...
[2026-06-12 13:54:02,656.656 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 13:54:02,659.659 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 13:54:02,662.662 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 13:54:04,701.701 INFO    ] ================================================
[2026-06-12 13:54:04,718.718 INFO    ] Launching Daemon at Fri Jun 12 13:54:04 IST 2026
[2026-06-12 13:54:04,730.730 INFO    ] ================================================
[2026-06-12 13:54:05,076.076 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 13:54:05
[2026-06-12 13:54:05,388.388 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 13:54:05,524.524 INFO    ] Initializing speech engine...
[2026-06-12 13:54:05,535.535 INFO    ] 2026-06-12 13:54:05
[2026-06-12 13:54:05,724.724 INFO    ] 2026-06-12 13:54:05
[2026-06-12 13:54:05,766.766 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 13:54:05,925.925 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 13:54:05,968.968 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 13:54:06,137.137 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 13:54:06,140.140 INFO    ] time= 12/06/2026 13:54:06
[2026-06-12 13:54:06,191.191 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 13:54:06,236.236 INFO    ] Checking for existing commands in stream...
[2026-06-12 13:54:06,335.335 INFO    ] No existing commands found in stream
[2026-06-12 13:54:11,354.354 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 13:54:11,358.358 INFO    ] Waiting 0.36 seconds before fallback handling...
[2026-06-12 13:54:12,075.075 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 13:54:12,076.076 INFO    ] Checking for system updates...
[2026-06-12 13:54:12,097.097 INFO    ] 200
[2026-06-12 13:54:12,098.098 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:54:12,127.127 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 13:54:12,129.129 INFO    ] No update needed
[2026-06-12 13:54:12,130.130 INFO    ] Checking for camera pi updates...
[2026-06-12 13:54:12,149.149 INFO    ] 200
[2026-06-12 13:54:12,150.150 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:54:12,175.175 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 13:54:12,243.243 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 13:54:12,245.245 INFO    ] No camera update needed
[2026-06-12 13:54:12,246.246 INFO    ] Script finished. Safe exiting...
[2026-06-12 13:54:12,247.247 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 13:54:12,250.250 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 13:54:12,253.253 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 13:54:14,292.292 INFO    ] ================================================
[2026-06-12 13:54:14,309.309 INFO    ] Launching Daemon at Fri Jun 12 13:54:14 IST 2026
[2026-06-12 13:54:14,320.320 INFO    ] ================================================
[2026-06-12 13:54:14,628.628 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 13:54:14
[2026-06-12 13:54:14,940.940 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 13:54:15,082.082 INFO    ] Initializing speech engine...
[2026-06-12 13:54:15,088.088 INFO    ] 2026-06-12 13:54:15
[2026-06-12 13:54:15,291.291 INFO    ] 2026-06-12 13:54:15
[2026-06-12 13:54:15,318.318 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 13:54:15,502.502 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 13:54:15,510.510 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 13:54:15,632.632 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 13:54:15,693.693 INFO    ] time= 12/06/2026 13:54:15
[2026-06-12 13:54:15,731.731 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 13:54:15,733.733 INFO    ] Checking for existing commands in stream...
[2026-06-12 13:54:15,802.802 INFO    ] No existing commands found in stream
[2026-06-12 13:54:20,812.812 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 13:54:20,813.813 INFO    ] Waiting 0.08 seconds before fallback handling...
[2026-06-12 13:54:21,236.236 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 13:54:21,238.238 INFO    ] Checking for system updates...
[2026-06-12 13:54:21,258.258 INFO    ] 200
[2026-06-12 13:54:21,259.259 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:54:21,294.294 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 13:54:21,295.295 INFO    ] No update needed
[2026-06-12 13:54:21,296.296 INFO    ] Checking for camera pi updates...
[2026-06-12 13:54:21,317.317 INFO    ] 200
[2026-06-12 13:54:21,318.318 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:54:21,343.343 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 13:54:21,392.392 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 13:54:21,393.393 INFO    ] No camera update needed
[2026-06-12 13:54:21,395.395 INFO    ] Script finished. Safe exiting...
[2026-06-12 13:54:21,396.396 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 13:54:21,399.399 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 13:54:21,402.402 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 13:54:23,440.440 INFO    ] ================================================
[2026-06-12 13:54:23,456.456 INFO    ] Launching Daemon at Fri Jun 12 13:54:23 IST 2026
[2026-06-12 13:54:23,467.467 INFO    ] ================================================
[2026-06-12 13:54:23,844.844 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 13:54:23
[2026-06-12 13:54:24,191.191 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 13:54:24,343.343 INFO    ] Initializing speech engine...
[2026-06-12 13:54:24,348.348 INFO    ] 2026-06-12 13:54:24
[2026-06-12 13:54:24,556.556 INFO    ] 2026-06-12 13:54:24
[2026-06-12 13:54:24,588.588 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 13:54:24,710.710 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 13:54:24,773.773 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 13:54:24,917.917 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 13:54:24,979.979 INFO    ] time= 12/06/2026 13:54:24
[2026-06-12 13:54:25,003.003 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 13:54:25,009.009 INFO    ] Checking for existing commands in stream...
[2026-06-12 13:54:25,076.076 INFO    ] No existing commands found in stream
[2026-06-12 13:54:30,108.108 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 13:54:30,112.112 INFO    ] Waiting 2.09 seconds before fallback handling...
[2026-06-12 13:54:32,515.515 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 13:54:32,516.516 INFO    ] Checking for system updates...
[2026-06-12 13:54:32,539.539 INFO    ] 200
[2026-06-12 13:54:32,540.540 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:54:32,570.570 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 13:54:32,572.572 INFO    ] No update needed
[2026-06-12 13:54:32,573.573 INFO    ] Checking for camera pi updates...
[2026-06-12 13:54:32,593.593 INFO    ] 200
[2026-06-12 13:54:32,594.594 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:54:32,621.621 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 13:54:32,650.650 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 13:54:32,652.652 INFO    ] No camera update needed
[2026-06-12 13:54:32,653.653 INFO    ] Script finished. Safe exiting...
[2026-06-12 13:54:32,654.654 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 13:54:32,658.658 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 13:54:32,661.661 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 13:54:34,699.699 INFO    ] ================================================
[2026-06-12 13:54:34,715.715 INFO    ] Launching Daemon at Fri Jun 12 13:54:34 IST 2026
[2026-06-12 13:54:34,727.727 INFO    ] ================================================
[2026-06-12 13:54:35,058.058 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 13:54:35
[2026-06-12 13:54:35,370.370 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 13:54:35,508.508 INFO    ] Initializing speech engine...
[2026-06-12 13:54:35,516.516 INFO    ] 2026-06-12 13:54:35
[2026-06-12 13:54:35,725.725 INFO    ] 2026-06-12 13:54:35
[2026-06-12 13:54:35,743.743 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 13:54:35,890.890 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 13:54:35,933.933 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 13:54:36,103.103 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 13:54:36,131.131 INFO    ] time= 12/06/2026 13:54:36
[2026-06-12 13:54:36,184.184 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 13:54:36,205.205 INFO    ] Checking for existing commands in stream...
[2026-06-12 13:54:36,262.262 INFO    ] No existing commands found in stream
[2026-06-12 13:54:41,271.271 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 13:54:41,274.274 INFO    ] Waiting 3.70 seconds before fallback handling...
[2026-06-12 13:54:45,324.324 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 13:54:45,325.325 INFO    ] Checking for system updates...
[2026-06-12 13:54:45,346.346 INFO    ] 200
[2026-06-12 13:54:45,347.347 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:54:45,379.379 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 13:54:45,381.381 INFO    ] No update needed
[2026-06-12 13:54:45,382.382 INFO    ] Checking for camera pi updates...
[2026-06-12 13:54:45,401.401 INFO    ] 200
[2026-06-12 13:54:45,402.402 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:54:45,425.425 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 13:54:45,473.473 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 13:54:45,474.474 INFO    ] No camera update needed
[2026-06-12 13:54:45,475.475 INFO    ] Script finished. Safe exiting...
[2026-06-12 13:54:45,476.476 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 13:54:45,479.479 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 13:54:45,482.482 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 13:54:47,522.522 INFO    ] ================================================
[2026-06-12 13:54:47,537.537 INFO    ] Launching Daemon at Fri Jun 12 13:54:47 IST 2026
[2026-06-12 13:54:47,549.549 INFO    ] ================================================
[2026-06-12 13:54:47,943.943 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 13:54:47
[2026-06-12 13:54:48,288.288 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 13:54:48,442.442 INFO    ] Initializing speech engine...
[2026-06-12 13:54:48,448.448 INFO    ] 2026-06-12 13:54:48
[2026-06-12 13:54:48,658.658 INFO    ] 2026-06-12 13:54:48
[2026-06-12 13:54:48,687.687 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 13:54:48,873.873 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 13:54:48,883.883 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 13:54:49,020.020 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 13:54:49,084.084 INFO    ] time= 12/06/2026 13:54:49
[2026-06-12 13:54:49,107.107 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 13:54:49,114.114 INFO    ] Checking for existing commands in stream...
[2026-06-12 13:54:49,181.181 INFO    ] No existing commands found in stream
[2026-06-12 13:54:54,191.191 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 13:54:54,194.194 INFO    ] Waiting 2.64 seconds before fallback handling...
[2026-06-12 13:54:57,198.198 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 13:54:57,199.199 INFO    ] Checking for system updates...
[2026-06-12 13:54:57,220.220 INFO    ] 200
[2026-06-12 13:54:57,222.222 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:54:57,252.252 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 13:54:57,253.253 INFO    ] No update needed
[2026-06-12 13:54:57,254.254 INFO    ] Checking for camera pi updates...
[2026-06-12 13:54:57,276.276 INFO    ] 200
[2026-06-12 13:54:57,277.277 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:54:57,305.305 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 13:54:57,361.361 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 13:54:57,363.363 INFO    ] No camera update needed
[2026-06-12 13:54:57,364.364 INFO    ] Script finished. Safe exiting...
[2026-06-12 13:54:57,366.366 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 13:54:57,369.369 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 13:54:57,372.372 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 13:54:59,410.410 INFO    ] ================================================
[2026-06-12 13:54:59,426.426 INFO    ] Launching Daemon at Fri Jun 12 13:54:59 IST 2026
[2026-06-12 13:54:59,437.437 INFO    ] ================================================
[2026-06-12 13:54:59,776.776 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 13:54:59
[2026-06-12 13:55:00,086.086 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 13:55:00,222.222 INFO    ] Initializing speech engine...
[2026-06-12 13:55:00,230.230 INFO    ] 2026-06-12 13:55:00
[2026-06-12 13:55:00,434.434 INFO    ] 2026-06-12 13:55:00
[2026-06-12 13:55:00,462.462 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 13:55:00,645.645 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 13:55:00,648.648 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 13:55:00,776.776 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 13:55:00,832.832 INFO    ] time= 12/06/2026 13:55:00
[2026-06-12 13:55:00,872.872 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 13:55:00,877.877 INFO    ] Checking for existing commands in stream...
[2026-06-12 13:55:00,948.948 INFO    ] No existing commands found in stream
[2026-06-12 13:55:05,953.953 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 13:55:05,956.956 INFO    ] Waiting 4.00 seconds before fallback handling...
[2026-06-12 13:55:10,298.298 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 13:55:10,299.299 INFO    ] Checking for system updates...
[2026-06-12 13:55:10,320.320 INFO    ] 200
[2026-06-12 13:55:10,321.321 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:55:10,353.353 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 13:55:10,354.354 INFO    ] No update needed
[2026-06-12 13:55:10,356.356 INFO    ] Checking for camera pi updates...
[2026-06-12 13:55:10,375.375 INFO    ] 200
[2026-06-12 13:55:10,376.376 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:55:10,400.400 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 13:55:10,432.432 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 13:55:10,433.433 INFO    ] No camera update needed
[2026-06-12 13:55:10,434.434 INFO    ] Script finished. Safe exiting...
[2026-06-12 13:55:10,436.436 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 13:55:10,438.438 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 13:55:10,441.441 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 13:55:12,482.482 INFO    ] ================================================
[2026-06-12 13:55:12,498.498 INFO    ] Launching Daemon at Fri Jun 12 13:55:12 IST 2026
[2026-06-12 13:55:12,509.509 INFO    ] ================================================
[2026-06-12 13:55:12,876.876 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 13:55:12
[2026-06-12 13:55:13,220.220 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 13:55:13,377.377 INFO    ] Initializing speech engine...
[2026-06-12 13:55:13,382.382 INFO    ] 2026-06-12 13:55:13
[2026-06-12 13:55:13,591.591 INFO    ] 2026-06-12 13:55:13
[2026-06-12 13:55:13,620.620 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 13:55:13,804.804 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 13:55:13,808.808 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 13:55:13,955.955 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 13:55:14,012.012 INFO    ] time= 12/06/2026 13:55:13
[2026-06-12 13:55:14,036.036 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 13:55:14,042.042 INFO    ] Checking for existing commands in stream...
[2026-06-12 13:55:14,110.110 INFO    ] No existing commands found in stream
[2026-06-12 13:55:19,119.119 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 13:55:19,123.123 INFO    ] Waiting 1.07 seconds before fallback handling...
[2026-06-12 13:55:20,577.577 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 13:55:20,578.578 INFO    ] Checking for system updates...
[2026-06-12 13:55:20,599.599 INFO    ] 200
[2026-06-12 13:55:20,601.601 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:55:20,630.630 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 13:55:20,632.632 INFO    ] No update needed
[2026-06-12 13:55:20,633.633 INFO    ] Checking for camera pi updates...
[2026-06-12 13:55:20,652.652 INFO    ] 200
[2026-06-12 13:55:20,653.653 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:55:20,676.676 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 13:55:20,719.719 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 13:55:20,721.721 INFO    ] No camera update needed
[2026-06-12 13:55:20,722.722 INFO    ] Script finished. Safe exiting...
[2026-06-12 13:55:20,723.723 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 13:55:20,726.726 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 13:55:20,729.729 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 13:55:22,769.769 INFO    ] ================================================
[2026-06-12 13:55:22,785.785 INFO    ] Launching Daemon at Fri Jun 12 13:55:22 IST 2026
[2026-06-12 13:55:22,796.796 INFO    ] ================================================
[2026-06-12 13:55:23,140.140 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 13:55:23
[2026-06-12 13:55:23,452.452 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 13:55:23,586.586 INFO    ] Initializing speech engine...
[2026-06-12 13:55:23,590.590 INFO    ] 2026-06-12 13:55:23
[2026-06-12 13:55:23,793.793 INFO    ] 2026-06-12 13:55:23
[2026-06-12 13:55:23,828.828 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 13:55:23,986.986 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 13:55:24,030.030 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 13:55:24,199.199 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 13:55:24,251.251 INFO    ] time= 12/06/2026 13:55:24
[2026-06-12 13:55:24,291.291 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 13:55:24,309.309 INFO    ] Checking for existing commands in stream...
[2026-06-12 13:55:24,386.386 INFO    ] No existing commands found in stream
[2026-06-12 13:55:29,396.396 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 13:55:29,399.399 INFO    ] Waiting 2.04 seconds before fallback handling...
[2026-06-12 13:55:31,779.779 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 13:55:31,780.780 INFO    ] Checking for system updates...
[2026-06-12 13:55:31,803.803 INFO    ] 200
[2026-06-12 13:55:31,804.804 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:55:31,848.848 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 13:55:31,850.850 INFO    ] No update needed
[2026-06-12 13:55:31,852.852 INFO    ] Checking for camera pi updates...
[2026-06-12 13:55:31,875.875 INFO    ] 200
[2026-06-12 13:55:31,877.877 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:55:31,902.902 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 13:55:31,937.937 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 13:55:31,939.939 INFO    ] No camera update needed
[2026-06-12 13:55:31,940.940 INFO    ] Script finished. Safe exiting...
[2026-06-12 13:55:31,942.942 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 13:55:31,947.947 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 13:55:31,951.951 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 13:55:33,982.982 INFO    ] ================================================
[2026-06-12 13:55:34,998.998 INFO    ] Launching Daemon at Fri Jun 12 13:55:33 IST 2026
[2026-06-12 13:55:34,009.009 INFO    ] ================================================
[2026-06-12 13:55:34,350.350 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 13:55:34
[2026-06-12 13:55:34,664.664 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 13:55:34,794.794 INFO    ] Initializing speech engine...
[2026-06-12 13:55:34,798.798 INFO    ] 2026-06-12 13:55:34
[2026-06-12 13:55:35,014.014 INFO    ] 2026-06-12 13:55:34
[2026-06-12 13:55:35,042.042 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 13:55:35,226.226 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 13:55:35,235.235 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 13:55:35,365.365 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 13:55:35,431.431 INFO    ] time= 12/06/2026 13:55:35
[2026-06-12 13:55:35,454.454 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 13:55:35,461.461 INFO    ] Checking for existing commands in stream...
[2026-06-12 13:55:35,526.526 INFO    ] No existing commands found in stream
[2026-06-12 13:55:40,537.537 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 13:55:40,539.539 INFO    ] Waiting 2.54 seconds before fallback handling...
[2026-06-12 13:55:43,469.469 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 13:55:43,471.471 INFO    ] Checking for system updates...
[2026-06-12 13:55:43,491.491 INFO    ] 200
[2026-06-12 13:55:43,493.493 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:55:43,522.522 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 13:55:43,523.523 INFO    ] No update needed
[2026-06-12 13:55:43,524.524 INFO    ] Checking for camera pi updates...
[2026-06-12 13:55:43,546.546 INFO    ] 200
[2026-06-12 13:55:43,547.547 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:55:43,572.572 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 13:55:43,710.710 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 13:55:43,712.712 INFO    ] No camera update needed
[2026-06-12 13:55:43,713.713 INFO    ] Script finished. Safe exiting...
[2026-06-12 13:55:43,715.715 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 13:55:43,718.718 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 13:55:43,721.721 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 13:55:45,760.760 INFO    ] ================================================
[2026-06-12 13:55:45,776.776 INFO    ] Launching Daemon at Fri Jun 12 13:55:45 IST 2026
[2026-06-12 13:55:45,787.787 INFO    ] ================================================
[2026-06-12 13:55:46,111.111 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 13:55:46
[2026-06-12 13:55:46,423.423 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 13:55:46,553.553 INFO    ] Initializing speech engine...
[2026-06-12 13:55:46,561.561 INFO    ] 2026-06-12 13:55:46
[2026-06-12 13:55:46,775.775 INFO    ] 2026-06-12 13:55:46
[2026-06-12 13:55:46,803.803 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 13:55:46,990.990 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 13:55:47,000.000 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 13:55:47,129.129 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 13:55:47,183.183 INFO    ] time= 12/06/2026 13:55:47
[2026-06-12 13:55:47,218.218 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 13:55:47,224.224 INFO    ] Checking for existing commands in stream...
[2026-06-12 13:55:47,296.296 INFO    ] No existing commands found in stream
[2026-06-12 13:55:52,310.310 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 13:55:52,313.313 INFO    ] Waiting 3.57 seconds before fallback handling...
[2026-06-12 13:55:56,236.236 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 13:55:56,237.237 INFO    ] Checking for system updates...
[2026-06-12 13:55:56,258.258 INFO    ] 200
[2026-06-12 13:55:56,259.259 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:55:56,288.288 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 13:55:56,290.290 INFO    ] No update needed
[2026-06-12 13:55:56,292.292 INFO    ] Checking for camera pi updates...
[2026-06-12 13:55:56,311.311 INFO    ] 200
[2026-06-12 13:55:56,312.312 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:55:56,335.335 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 13:55:56,365.365 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 13:55:56,367.367 INFO    ] No camera update needed
[2026-06-12 13:55:56,368.368 INFO    ] Script finished. Safe exiting...
[2026-06-12 13:55:56,369.369 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 13:55:56,372.372 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 13:55:56,375.375 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 13:55:58,412.412 INFO    ] ================================================
[2026-06-12 13:55:58,427.427 INFO    ] Launching Daemon at Fri Jun 12 13:55:58 IST 2026
[2026-06-12 13:55:58,438.438 INFO    ] ================================================
[2026-06-12 13:55:58,773.773 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 13:55:58
[2026-06-12 13:55:59,089.089 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 13:55:59,234.234 INFO    ] Initializing speech engine...
[2026-06-12 13:55:59,239.239 INFO    ] 2026-06-12 13:55:59
[2026-06-12 13:55:59,442.442 INFO    ] 2026-06-12 13:55:59
[2026-06-12 13:55:59,470.470 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 13:55:59,592.592 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 13:55:59,657.657 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 13:55:59,800.800 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 13:55:59,859.859 INFO    ] time= 12/06/2026 13:55:59
[2026-06-12 13:55:59,886.886 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 13:55:59,892.892 INFO    ] Checking for existing commands in stream...
[2026-06-12 13:55:59,960.960 INFO    ] No existing commands found in stream
[2026-06-12 13:56:04,969.969 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 13:56:04,972.972 INFO    ] Waiting 3.34 seconds before fallback handling...
[2026-06-12 13:56:08,681.681 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 13:56:08,682.682 INFO    ] Checking for system updates...
[2026-06-12 13:56:08,704.704 INFO    ] 200
[2026-06-12 13:56:08,705.705 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:56:08,736.736 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 13:56:08,738.738 INFO    ] No update needed
[2026-06-12 13:56:08,739.739 INFO    ] Checking for camera pi updates...
[2026-06-12 13:56:08,760.760 INFO    ] 200
[2026-06-12 13:56:08,761.761 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:56:08,784.784 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 13:56:08,821.821 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 13:56:08,822.822 INFO    ] No camera update needed
[2026-06-12 13:56:08,824.824 INFO    ] Script finished. Safe exiting...
[2026-06-12 13:56:08,825.825 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 13:56:08,828.828 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 13:56:08,831.831 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 13:56:10,868.868 INFO    ] ================================================
[2026-06-12 13:56:10,884.884 INFO    ] Launching Daemon at Fri Jun 12 13:56:10 IST 2026
[2026-06-12 13:56:10,895.895 INFO    ] ================================================
[2026-06-12 13:56:11,295.295 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 13:56:11
[2026-06-12 13:56:11,635.635 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 13:56:11,789.789 INFO    ] Initializing speech engine...
[2026-06-12 13:56:11,794.794 INFO    ] 2026-06-12 13:56:11
[2026-06-12 13:56:12,002.002 INFO    ] 2026-06-12 13:56:11
[2026-06-12 13:56:12,031.031 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 13:56:12,214.214 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 13:56:12,217.217 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 13:56:12,364.364 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 13:56:12,421.421 INFO    ] time= 12/06/2026 13:56:12
[2026-06-12 13:56:12,444.444 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 13:56:12,451.451 INFO    ] Checking for existing commands in stream...
[2026-06-12 13:56:12,541.541 INFO    ] No existing commands found in stream
[2026-06-12 13:56:17,566.566 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 13:56:17,569.569 INFO    ] Waiting 3.34 seconds before fallback handling...
[2026-06-12 13:56:21,300.300 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 13:56:21,301.301 INFO    ] Checking for system updates...
[2026-06-12 13:56:21,323.323 INFO    ] 200
[2026-06-12 13:56:21,325.325 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:56:21,360.360 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 13:56:21,361.361 INFO    ] No update needed
[2026-06-12 13:56:21,363.363 INFO    ] Checking for camera pi updates...
[2026-06-12 13:56:21,385.385 INFO    ] 200
[2026-06-12 13:56:21,386.386 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:56:21,411.411 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 13:56:21,437.437 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 13:56:21,439.439 INFO    ] No camera update needed
[2026-06-12 13:56:21,440.440 INFO    ] Script finished. Safe exiting...
[2026-06-12 13:56:21,442.442 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 13:56:21,445.445 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 13:56:21,448.448 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 13:56:23,486.486 INFO    ] ================================================
[2026-06-12 13:56:23,501.501 INFO    ] Launching Daemon at Fri Jun 12 13:56:23 IST 2026
[2026-06-12 13:56:23,513.513 INFO    ] ================================================
[2026-06-12 13:56:23,867.867 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 13:56:23
[2026-06-12 13:56:24,178.178 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 13:56:24,321.321 INFO    ] Initializing speech engine...
[2026-06-12 13:56:24,325.325 INFO    ] 2026-06-12 13:56:24
[2026-06-12 13:56:24,531.531 INFO    ] 2026-06-12 13:56:24
[2026-06-12 13:56:24,559.559 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 13:56:24,693.693 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 13:56:24,747.747 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 13:56:24,886.886 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 13:56:24,950.950 INFO    ] time= 12/06/2026 13:56:24
[2026-06-12 13:56:24,978.978 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 13:56:24,985.985 INFO    ] Checking for existing commands in stream...
[2026-06-12 13:56:25,052.052 INFO    ] No existing commands found in stream
[2026-06-12 13:56:30,061.061 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 13:56:30,063.063 INFO    ] Waiting 2.11 seconds before fallback handling...
[2026-06-12 13:56:32,490.490 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 13:56:32,492.492 INFO    ] Checking for system updates...
[2026-06-12 13:56:32,515.515 INFO    ] 200
[2026-06-12 13:56:32,517.517 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:56:32,551.551 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 13:56:32,553.553 INFO    ] No update needed
[2026-06-12 13:56:32,554.554 INFO    ] Checking for camera pi updates...
[2026-06-12 13:56:32,578.578 INFO    ] 200
[2026-06-12 13:56:32,580.580 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:56:32,606.606 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 13:56:32,634.634 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 13:56:32,636.636 INFO    ] No camera update needed
[2026-06-12 13:56:32,638.638 INFO    ] Script finished. Safe exiting...
[2026-06-12 13:56:32,639.639 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 13:56:32,643.643 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 13:56:32,646.646 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 13:56:34,685.685 INFO    ] ================================================
[2026-06-12 13:56:34,700.700 INFO    ] Launching Daemon at Fri Jun 12 13:56:34 IST 2026
[2026-06-12 13:56:34,711.711 INFO    ] ================================================
[2026-06-12 13:56:35,056.056 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 13:56:35
[2026-06-12 13:56:35,366.366 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 13:56:35,496.496 INFO    ] Initializing speech engine...
[2026-06-12 13:56:35,500.500 INFO    ] 2026-06-12 13:56:35
[2026-06-12 13:56:35,717.717 INFO    ] 2026-06-12 13:56:35
[2026-06-12 13:56:35,746.746 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 13:56:35,934.934 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 13:56:35,942.942 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 13:56:36,066.066 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 13:56:36,127.127 INFO    ] time= 12/06/2026 13:56:36
[2026-06-12 13:56:36,162.162 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 13:56:36,172.172 INFO    ] Checking for existing commands in stream...
[2026-06-12 13:56:36,264.264 INFO    ] No existing commands found in stream
[2026-06-12 13:56:41,272.272 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 13:56:41,275.275 INFO    ] Waiting 2.96 seconds before fallback handling...
[2026-06-12 13:56:44,604.604 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 13:56:44,605.605 INFO    ] Checking for system updates...
[2026-06-12 13:56:44,627.627 INFO    ] 200
[2026-06-12 13:56:44,628.628 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:56:44,660.660 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 13:56:44,661.661 INFO    ] No update needed
[2026-06-12 13:56:44,663.663 INFO    ] Checking for camera pi updates...
[2026-06-12 13:56:44,683.683 INFO    ] 200
[2026-06-12 13:56:44,684.684 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:56:44,708.708 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 13:56:44,748.748 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 13:56:44,750.750 INFO    ] No camera update needed
[2026-06-12 13:56:44,751.751 INFO    ] Script finished. Safe exiting...
[2026-06-12 13:56:44,752.752 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 13:56:44,755.755 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 13:56:44,758.758 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 13:56:46,797.797 INFO    ] ================================================
[2026-06-12 13:56:46,812.812 INFO    ] Launching Daemon at Fri Jun 12 13:56:46 IST 2026
[2026-06-12 13:56:46,822.822 INFO    ] ================================================
[2026-06-12 13:56:47,145.145 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 13:56:47
[2026-06-12 13:56:47,459.459 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 13:56:47,589.589 INFO    ] Initializing speech engine...
[2026-06-12 13:56:47,594.594 INFO    ] 2026-06-12 13:56:47
[2026-06-12 13:56:47,812.812 INFO    ] 2026-06-12 13:56:47
[2026-06-12 13:56:47,841.841 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 13:56:48,026.026 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 13:56:48,036.036 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 13:56:48,167.167 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 13:56:48,226.226 INFO    ] time= 12/06/2026 13:56:48
[2026-06-12 13:56:48,260.260 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 13:56:48,266.266 INFO    ] Checking for existing commands in stream...
[2026-06-12 13:56:48,332.332 INFO    ] No existing commands found in stream
[2026-06-12 13:56:53,343.343 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 13:56:53,345.345 INFO    ] Waiting 1.90 seconds before fallback handling...
[2026-06-12 13:56:55,594.594 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 13:56:55,595.595 INFO    ] Checking for system updates...
[2026-06-12 13:56:55,615.615 INFO    ] 200
[2026-06-12 13:56:55,617.617 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:56:55,649.649 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 13:56:55,650.650 INFO    ] No update needed
[2026-06-12 13:56:55,652.652 INFO    ] Checking for camera pi updates...
[2026-06-12 13:56:55,672.672 INFO    ] 200
[2026-06-12 13:56:55,673.673 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:56:55,696.696 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 13:56:55,743.743 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 13:56:55,745.745 INFO    ] No camera update needed
[2026-06-12 13:56:55,746.746 INFO    ] Script finished. Safe exiting...
[2026-06-12 13:56:55,747.747 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 13:56:55,750.750 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 13:56:55,754.754 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 13:56:57,793.793 INFO    ] ================================================
[2026-06-12 13:56:57,808.808 INFO    ] Launching Daemon at Fri Jun 12 13:56:57 IST 2026
[2026-06-12 13:56:57,819.819 INFO    ] ================================================
[2026-06-12 13:56:58,153.153 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 13:56:58
[2026-06-12 13:56:58,464.464 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 13:56:58,597.597 INFO    ] Initializing speech engine...
[2026-06-12 13:56:58,600.600 INFO    ] 2026-06-12 13:56:58
[2026-06-12 13:56:58,792.792 INFO    ] 2026-06-12 13:56:58
[2026-06-12 13:56:58,839.839 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 13:56:59,008.008 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 13:56:59,066.066 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 13:56:59,210.210 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 13:56:59,246.246 INFO    ] time= 12/06/2026 13:56:59
[2026-06-12 13:56:59,294.294 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 13:56:59,319.319 INFO    ] Checking for existing commands in stream...
[2026-06-12 13:56:59,398.398 INFO    ] No existing commands found in stream
[2026-06-12 13:57:04,407.407 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 13:57:04,410.410 INFO    ] Waiting 0.54 seconds before fallback handling...
[2026-06-12 13:57:05,295.295 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 13:57:05,296.296 INFO    ] Checking for system updates...
[2026-06-12 13:57:05,317.317 INFO    ] 200
[2026-06-12 13:57:05,318.318 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:57:05,347.347 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 13:57:05,349.349 INFO    ] No update needed
[2026-06-12 13:57:05,351.351 INFO    ] Checking for camera pi updates...
[2026-06-12 13:57:05,369.369 INFO    ] 200
[2026-06-12 13:57:05,371.371 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:57:05,395.395 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 13:57:05,463.463 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 13:57:05,465.465 INFO    ] No camera update needed
[2026-06-12 13:57:05,466.466 INFO    ] Script finished. Safe exiting...
[2026-06-12 13:57:05,467.467 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 13:57:05,470.470 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 13:57:05,473.473 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 13:57:07,511.511 INFO    ] ================================================
[2026-06-12 13:57:07,527.527 INFO    ] Launching Daemon at Fri Jun 12 13:57:07 IST 2026
[2026-06-12 13:57:07,538.538 INFO    ] ================================================
[2026-06-12 13:57:07,922.922 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 13:57:07
[2026-06-12 13:57:08,263.263 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 13:57:08,413.413 INFO    ] Initializing speech engine...
[2026-06-12 13:57:08,419.419 INFO    ] 2026-06-12 13:57:08
[2026-06-12 13:57:08,626.626 INFO    ] 2026-06-12 13:57:08
[2026-06-12 13:57:08,654.654 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 13:57:08,838.838 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 13:57:08,848.848 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 13:57:08,992.992 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 13:57:09,045.045 INFO    ] time= 12/06/2026 13:57:09
[2026-06-12 13:57:09,068.068 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 13:57:09,074.074 INFO    ] Checking for existing commands in stream...
[2026-06-12 13:57:09,140.140 INFO    ] No existing commands found in stream
[2026-06-12 13:57:14,151.151 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 13:57:14,154.154 INFO    ] Waiting 3.42 seconds before fallback handling...
[2026-06-12 13:57:17,966.966 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 13:57:17,967.967 INFO    ] Checking for system updates...
[2026-06-12 13:57:17,989.989 INFO    ] 200
[2026-06-12 13:57:17,991.991 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:57:18,024.024 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 13:57:18,025.025 INFO    ] No update needed
[2026-06-12 13:57:18,027.027 INFO    ] Checking for camera pi updates...
[2026-06-12 13:57:18,050.050 INFO    ] 200
[2026-06-12 13:57:18,052.052 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:57:18,075.075 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 13:57:18,132.132 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 13:57:18,134.134 INFO    ] No camera update needed
[2026-06-12 13:57:18,135.135 INFO    ] Script finished. Safe exiting...
[2026-06-12 13:57:18,137.137 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 13:57:18,140.140 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 13:57:18,143.143 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 13:57:20,181.181 INFO    ] ================================================
[2026-06-12 13:57:20,196.196 INFO    ] Launching Daemon at Fri Jun 12 13:57:20 IST 2026
[2026-06-12 13:57:20,207.207 INFO    ] ================================================
[2026-06-12 13:57:20,570.570 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 13:57:20
[2026-06-12 13:57:20,889.889 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 13:57:21,033.033 INFO    ] Initializing speech engine...
[2026-06-12 13:57:21,039.039 INFO    ] 2026-06-12 13:57:21
[2026-06-12 13:57:21,243.243 INFO    ] 2026-06-12 13:57:21
[2026-06-12 13:57:21,271.271 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 13:57:21,452.452 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 13:57:21,453.453 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 13:57:21,609.609 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 13:57:21,651.651 INFO    ] time= 12/06/2026 13:57:21
[2026-06-12 13:57:21,691.691 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 13:57:21,714.714 INFO    ] Checking for existing commands in stream...
[2026-06-12 13:57:21,836.836 INFO    ] No existing commands found in stream
[2026-06-12 13:57:26,853.853 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 13:57:26,855.855 INFO    ] Waiting 2.75 seconds before fallback handling...
[2026-06-12 13:57:30,007.007 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 13:57:30,008.008 INFO    ] Checking for system updates...
[2026-06-12 13:57:30,030.030 INFO    ] 200
[2026-06-12 13:57:30,032.032 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:57:30,065.065 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 13:57:30,066.066 INFO    ] No update needed
[2026-06-12 13:57:30,067.067 INFO    ] Checking for camera pi updates...
[2026-06-12 13:57:30,090.090 INFO    ] 200
[2026-06-12 13:57:30,091.091 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:57:30,116.116 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 13:57:30,195.195 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 13:57:30,196.196 INFO    ] No camera update needed
[2026-06-12 13:57:30,198.198 INFO    ] Script finished. Safe exiting...
[2026-06-12 13:57:30,199.199 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 13:57:30,203.203 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 13:57:30,205.205 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 13:57:32,250.250 INFO    ] ================================================
[2026-06-12 13:57:32,268.268 INFO    ] Launching Daemon at Fri Jun 12 13:57:32 IST 2026
[2026-06-12 13:57:32,279.279 INFO    ] ================================================
[2026-06-12 13:57:32,617.617 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 13:57:32
[2026-06-12 13:57:32,929.929 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 13:57:33,062.062 INFO    ] Initializing speech engine...
[2026-06-12 13:57:33,066.066 INFO    ] 2026-06-12 13:57:33
[2026-06-12 13:57:33,257.257 INFO    ] 2026-06-12 13:57:33
[2026-06-12 13:57:33,301.301 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 13:57:33,443.443 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 13:57:33,465.465 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 13:57:33,620.620 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 13:57:33,667.667 INFO    ] time= 12/06/2026 13:57:33
[2026-06-12 13:57:33,681.681 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 13:57:33,722.722 INFO    ] Checking for existing commands in stream...
[2026-06-12 13:57:33,862.862 INFO    ] No existing commands found in stream
[2026-06-12 13:57:38,871.871 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 13:57:38,873.873 INFO    ] Waiting 0.81 seconds before fallback handling...
[2026-06-12 13:57:40,023.023 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 13:57:40,025.025 INFO    ] Checking for system updates...
[2026-06-12 13:57:40,045.045 INFO    ] 200
[2026-06-12 13:57:40,047.047 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:57:40,077.077 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 13:57:40,079.079 INFO    ] No update needed
[2026-06-12 13:57:40,080.080 INFO    ] Checking for camera pi updates...
[2026-06-12 13:57:40,100.100 INFO    ] 200
[2026-06-12 13:57:40,101.101 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:57:40,124.124 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 13:57:40,169.169 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 13:57:40,170.170 INFO    ] No camera update needed
[2026-06-12 13:57:40,172.172 INFO    ] Script finished. Safe exiting...
[2026-06-12 13:57:40,173.173 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 13:57:40,176.176 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 13:57:40,179.179 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 13:57:42,217.217 INFO    ] ================================================
[2026-06-12 13:57:42,233.233 INFO    ] Launching Daemon at Fri Jun 12 13:57:42 IST 2026
[2026-06-12 13:57:42,244.244 INFO    ] ================================================
[2026-06-12 13:57:42,619.619 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 13:57:42
[2026-06-12 13:57:42,935.935 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 13:57:43,091.091 INFO    ] Initializing speech engine...
[2026-06-12 13:57:43,105.105 INFO    ] 2026-06-12 13:57:43
[2026-06-12 13:57:43,331.331 INFO    ] 2026-06-12 13:57:43
[2026-06-12 13:57:43,359.359 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 13:57:43,542.542 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 13:57:43,551.551 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 13:57:43,672.672 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 13:57:43,728.728 INFO    ] time= 12/06/2026 13:57:43
[2026-06-12 13:57:43,762.762 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 13:57:43,772.772 INFO    ] Checking for existing commands in stream...
[2026-06-12 13:57:43,843.843 INFO    ] No existing commands found in stream
[2026-06-12 13:57:48,856.856 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 13:57:48,859.859 INFO    ] Waiting 1.87 seconds before fallback handling...
[2026-06-12 13:57:51,120.120 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 13:57:51,122.122 INFO    ] Checking for system updates...
[2026-06-12 13:57:51,162.162 INFO    ] 200
[2026-06-12 13:57:51,165.165 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:57:51,217.217 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 13:57:51,220.220 INFO    ] No update needed
[2026-06-12 13:57:51,222.222 INFO    ] Checking for camera pi updates...
[2026-06-12 13:57:51,259.259 INFO    ] 200
[2026-06-12 13:57:51,262.262 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:57:51,302.302 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 13:57:51,435.435 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 13:57:51,438.438 INFO    ] No camera update needed
[2026-06-12 13:57:51,440.440 INFO    ] Script finished. Safe exiting...
[2026-06-12 13:57:51,442.442 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 13:57:51,447.447 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 13:57:51,453.453 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 13:57:53,493.493 INFO    ] ================================================
[2026-06-12 13:57:53,508.508 INFO    ] Launching Daemon at Fri Jun 12 13:57:53 IST 2026
[2026-06-12 13:57:53,519.519 INFO    ] ================================================
[2026-06-12 13:57:53,850.850 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 13:57:53
[2026-06-12 13:57:54,164.164 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 13:57:54,304.304 INFO    ] Initializing speech engine...
[2026-06-12 13:57:54,310.310 INFO    ] 2026-06-12 13:57:54
[2026-06-12 13:57:54,511.511 INFO    ] 2026-06-12 13:57:54
[2026-06-12 13:57:54,540.540 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 13:57:54,724.724 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 13:57:54,734.734 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 13:57:54,861.861 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 13:57:54,925.925 INFO    ] time= 12/06/2026 13:57:54
[2026-06-12 13:57:54,951.951 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 13:57:54,958.958 INFO    ] Checking for existing commands in stream...
[2026-06-12 13:57:55,024.024 INFO    ] No existing commands found in stream
[2026-06-12 13:58:00,038.038 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 13:58:00,041.041 INFO    ] Waiting 3.78 seconds before fallback handling...
[2026-06-12 13:58:04,190.190 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 13:58:04,192.192 INFO    ] Checking for system updates...
[2026-06-12 13:58:04,212.212 INFO    ] 200
[2026-06-12 13:58:04,214.214 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:58:04,244.244 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 13:58:04,245.245 INFO    ] No update needed
[2026-06-12 13:58:04,247.247 INFO    ] Checking for camera pi updates...
[2026-06-12 13:58:04,267.267 INFO    ] 200
[2026-06-12 13:58:04,269.269 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:58:04,296.296 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 13:58:04,343.343 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 13:58:04,345.345 INFO    ] No camera update needed
[2026-06-12 13:58:04,346.346 INFO    ] Script finished. Safe exiting...
[2026-06-12 13:58:04,347.347 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 13:58:04,351.351 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 13:58:04,354.354 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 13:58:06,392.392 INFO    ] ================================================
[2026-06-12 13:58:06,408.408 INFO    ] Launching Daemon at Fri Jun 12 13:58:06 IST 2026
[2026-06-12 13:58:06,419.419 INFO    ] ================================================
[2026-06-12 13:58:06,800.800 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 13:58:06
[2026-06-12 13:58:07,121.121 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 13:58:07,254.254 INFO    ] Initializing speech engine...
[2026-06-12 13:58:07,267.267 INFO    ] 2026-06-12 13:58:07
[2026-06-12 13:58:07,474.474 INFO    ] 2026-06-12 13:58:07
[2026-06-12 13:58:07,503.503 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 13:58:07,635.635 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 13:58:07,687.687 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 13:58:07,823.823 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 13:58:07,889.889 INFO    ] time= 12/06/2026 13:58:07
[2026-06-12 13:58:07,913.913 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 13:58:07,920.920 INFO    ] Checking for existing commands in stream...
[2026-06-12 13:58:07,986.986 INFO    ] No existing commands found in stream
[2026-06-12 13:58:12,996.996 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 13:58:12,998.998 INFO    ] Waiting 0.98 seconds before fallback handling...
[2026-06-12 13:58:14,339.339 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 13:58:14,340.340 INFO    ] Checking for system updates...
[2026-06-12 13:58:14,360.360 INFO    ] 200
[2026-06-12 13:58:14,362.362 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:58:14,392.392 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 13:58:14,393.393 INFO    ] No update needed
[2026-06-12 13:58:14,395.395 INFO    ] Checking for camera pi updates...
[2026-06-12 13:58:14,416.416 INFO    ] 200
[2026-06-12 13:58:14,417.417 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:58:14,443.443 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 13:58:14,472.472 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 13:58:14,474.474 INFO    ] No camera update needed
[2026-06-12 13:58:14,475.475 INFO    ] Script finished. Safe exiting...
[2026-06-12 13:58:14,476.476 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 13:58:14,479.479 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 13:58:14,482.482 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 13:58:16,520.520 INFO    ] ================================================
[2026-06-12 13:58:16,536.536 INFO    ] Launching Daemon at Fri Jun 12 13:58:16 IST 2026
[2026-06-12 13:58:16,548.548 INFO    ] ================================================
[2026-06-12 13:58:16,907.907 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 13:58:16
[2026-06-12 13:58:17,228.228 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 13:58:17,372.372 INFO    ] Initializing speech engine...
[2026-06-12 13:58:17,377.377 INFO    ] 2026-06-12 13:58:17
[2026-06-12 13:58:17,581.581 INFO    ] 2026-06-12 13:58:17
[2026-06-12 13:58:17,611.611 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 13:58:17,793.793 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 13:58:17,803.803 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 13:58:17,926.926 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 13:58:17,974.974 INFO    ] time= 12/06/2026 13:58:17
[2026-06-12 13:58:18,017.017 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 13:58:18,027.027 INFO    ] Checking for existing commands in stream...
[2026-06-12 13:58:18,098.098 INFO    ] No existing commands found in stream
[2026-06-12 13:58:23,107.107 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 13:58:23,110.110 INFO    ] Waiting 1.75 seconds before fallback handling...
[2026-06-12 13:58:25,227.227 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 13:58:25,228.228 INFO    ] Checking for system updates...
[2026-06-12 13:58:25,249.249 INFO    ] 200
[2026-06-12 13:58:25,251.251 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:58:25,283.283 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 13:58:25,285.285 INFO    ] No update needed
[2026-06-12 13:58:25,286.286 INFO    ] Checking for camera pi updates...
[2026-06-12 13:58:25,307.307 INFO    ] 200
[2026-06-12 13:58:25,309.309 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:58:25,332.332 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 13:58:25,357.357 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 13:58:25,359.359 INFO    ] No camera update needed
[2026-06-12 13:58:25,360.360 INFO    ] Script finished. Safe exiting...
[2026-06-12 13:58:25,362.362 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 13:58:25,365.365 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 13:58:25,368.368 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 13:58:27,406.406 INFO    ] ================================================
[2026-06-12 13:58:27,422.422 INFO    ] Launching Daemon at Fri Jun 12 13:58:27 IST 2026
[2026-06-12 13:58:27,433.433 INFO    ] ================================================
[2026-06-12 13:58:27,787.787 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 13:58:27
[2026-06-12 13:58:28,131.131 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 13:58:28,286.286 INFO    ] Initializing speech engine...
[2026-06-12 13:58:28,292.292 INFO    ] 2026-06-12 13:58:28
[2026-06-12 13:58:28,500.500 INFO    ] 2026-06-12 13:58:28
[2026-06-12 13:58:28,529.529 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 13:58:28,713.713 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 13:58:28,723.723 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 13:58:28,865.865 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 13:58:28,923.923 INFO    ] time= 12/06/2026 13:58:28
[2026-06-12 13:58:28,946.946 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 13:58:28,952.952 INFO    ] Checking for existing commands in stream...
[2026-06-12 13:58:29,019.019 INFO    ] No existing commands found in stream
[2026-06-12 13:58:34,034.034 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 13:58:34,037.037 INFO    ] Waiting 2.57 seconds before fallback handling...
[2026-06-12 13:58:36,986.986 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 13:58:36,987.987 INFO    ] Checking for system updates...
[2026-06-12 13:58:37,008.008 INFO    ] 200
[2026-06-12 13:58:37,009.009 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:58:37,039.039 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 13:58:37,040.040 INFO    ] No update needed
[2026-06-12 13:58:37,042.042 INFO    ] Checking for camera pi updates...
[2026-06-12 13:58:37,061.061 INFO    ] 200
[2026-06-12 13:58:37,062.062 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:58:37,086.086 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 13:58:37,117.117 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 13:58:37,118.118 INFO    ] No camera update needed
[2026-06-12 13:58:37,119.119 INFO    ] Script finished. Safe exiting...
[2026-06-12 13:58:37,121.121 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 13:58:37,123.123 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 13:58:37,126.126 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 13:58:39,164.164 INFO    ] ================================================
[2026-06-12 13:58:39,178.178 INFO    ] Launching Daemon at Fri Jun 12 13:58:39 IST 2026
[2026-06-12 13:58:39,190.190 INFO    ] ================================================
[2026-06-12 13:58:39,543.543 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 13:58:39
[2026-06-12 13:58:39,885.885 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 13:58:40,036.036 INFO    ] Initializing speech engine...
[2026-06-12 13:58:40,042.042 INFO    ] 2026-06-12 13:58:40
[2026-06-12 13:58:40,250.250 INFO    ] 2026-06-12 13:58:40
[2026-06-12 13:58:40,279.279 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 13:58:40,463.463 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 13:58:40,472.472 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 13:58:40,608.608 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 13:58:40,670.670 INFO    ] time= 12/06/2026 13:58:40
[2026-06-12 13:58:40,694.694 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 13:58:40,700.700 INFO    ] Checking for existing commands in stream...
[2026-06-12 13:58:40,767.767 INFO    ] No existing commands found in stream
[2026-06-12 13:58:45,776.776 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 13:58:45,780.780 INFO    ] Waiting 2.03 seconds before fallback handling...
[2026-06-12 13:58:48,195.195 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 13:58:48,197.197 INFO    ] Checking for system updates...
[2026-06-12 13:58:48,217.217 INFO    ] 200
[2026-06-12 13:58:48,219.219 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:58:48,249.249 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 13:58:48,251.251 INFO    ] No update needed
[2026-06-12 13:58:48,252.252 INFO    ] Checking for camera pi updates...
[2026-06-12 13:58:48,272.272 INFO    ] 200
[2026-06-12 13:58:48,273.273 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:58:48,296.296 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 13:58:48,331.331 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 13:58:48,333.333 INFO    ] No camera update needed
[2026-06-12 13:58:48,334.334 INFO    ] Script finished. Safe exiting...
[2026-06-12 13:58:48,335.335 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 13:58:48,339.339 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 13:58:48,342.342 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 13:58:50,379.379 INFO    ] ================================================
[2026-06-12 13:58:50,395.395 INFO    ] Launching Daemon at Fri Jun 12 13:58:50 IST 2026
[2026-06-12 13:58:50,406.406 INFO    ] ================================================
[2026-06-12 13:58:50,746.746 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 13:58:50
[2026-06-12 13:58:51,057.057 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 13:58:51,200.200 INFO    ] Initializing speech engine...
[2026-06-12 13:58:51,205.205 INFO    ] 2026-06-12 13:58:51
[2026-06-12 13:58:51,412.412 INFO    ] 2026-06-12 13:58:51
[2026-06-12 13:58:51,440.440 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 13:58:51,627.627 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 13:58:51,630.630 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 13:58:51,768.768 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 13:58:51,832.832 INFO    ] time= 12/06/2026 13:58:51
[2026-06-12 13:58:51,860.860 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 13:58:51,861.861 INFO    ] Checking for existing commands in stream...
[2026-06-12 13:58:51,933.933 INFO    ] No existing commands found in stream
[2026-06-12 13:58:56,942.942 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 13:58:56,945.945 INFO    ] Waiting 2.68 seconds before fallback handling...
[2026-06-12 13:59:00,132.132 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 13:59:00,133.133 INFO    ] Checking for system updates...
[2026-06-12 13:59:00,156.156 INFO    ] 200
[2026-06-12 13:59:00,157.157 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:59:00,190.190 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 13:59:00,192.192 INFO    ] No update needed
[2026-06-12 13:59:00,193.193 INFO    ] Checking for camera pi updates...
[2026-06-12 13:59:00,212.212 INFO    ] 200
[2026-06-12 13:59:00,214.214 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:59:00,237.237 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 13:59:00,274.274 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 13:59:00,276.276 INFO    ] No camera update needed
[2026-06-12 13:59:00,277.277 INFO    ] Script finished. Safe exiting...
[2026-06-12 13:59:00,278.278 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 13:59:00,282.282 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 13:59:00,285.285 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 13:59:02,317.317 INFO    ] ================================================
[2026-06-12 13:59:02,333.333 INFO    ] Launching Daemon at Fri Jun 12 13:59:02 IST 2026
[2026-06-12 13:59:02,344.344 INFO    ] ================================================
[2026-06-12 13:59:02,751.751 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 13:59:02
[2026-06-12 13:59:03,108.108 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 13:59:03,256.256 INFO    ] Initializing speech engine...
[2026-06-12 13:59:03,262.262 INFO    ] 2026-06-12 13:59:03
[2026-06-12 13:59:03,481.481 INFO    ] 2026-06-12 13:59:03
[2026-06-12 13:59:03,529.529 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 13:59:03,686.686 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 13:59:03,730.730 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 13:59:03,893.893 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 13:59:03,955.955 INFO    ] time= 12/06/2026 13:59:03
[2026-06-12 13:59:03,994.994 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 13:59:04,000.000 INFO    ] Checking for existing commands in stream...
[2026-06-12 13:59:04,075.075 INFO    ] No existing commands found in stream
[2026-06-12 13:59:09,084.084 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 13:59:09,087.087 INFO    ] Waiting 1.65 seconds before fallback handling...
[2026-06-12 13:59:11,118.118 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 13:59:11,120.120 INFO    ] Checking for system updates...
[2026-06-12 13:59:11,141.141 INFO    ] 200
[2026-06-12 13:59:11,142.142 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:59:11,172.172 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 13:59:11,173.173 INFO    ] No update needed
[2026-06-12 13:59:11,174.174 INFO    ] Checking for camera pi updates...
[2026-06-12 13:59:11,197.197 INFO    ] 200
[2026-06-12 13:59:11,198.198 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:59:11,221.221 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 13:59:11,254.254 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 13:59:11,255.255 INFO    ] No camera update needed
[2026-06-12 13:59:11,257.257 INFO    ] Script finished. Safe exiting...
[2026-06-12 13:59:11,258.258 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 13:59:11,261.261 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 13:59:11,264.264 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 13:59:13,301.301 INFO    ] ================================================
[2026-06-12 13:59:13,316.316 INFO    ] Launching Daemon at Fri Jun 12 13:59:13 IST 2026
[2026-06-12 13:59:13,327.327 INFO    ] ================================================
[2026-06-12 13:59:13,685.685 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 13:59:13
[2026-06-12 13:59:13,996.996 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 13:59:14,139.139 INFO    ] Initializing speech engine...
[2026-06-12 13:59:14,144.144 INFO    ] 2026-06-12 13:59:14
[2026-06-12 13:59:14,346.346 INFO    ] 2026-06-12 13:59:14
[2026-06-12 13:59:14,374.374 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 13:59:14,496.496 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 13:59:14,557.557 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 13:59:14,687.687 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 13:59:14,738.738 INFO    ] time= 12/06/2026 13:59:14
[2026-06-12 13:59:14,765.765 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 13:59:14,786.786 INFO    ] Checking for existing commands in stream...
[2026-06-12 13:59:14,857.857 INFO    ] No existing commands found in stream
[2026-06-12 13:59:19,866.866 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 13:59:19,869.869 INFO    ] Waiting 1.07 seconds before fallback handling...
[2026-06-12 13:59:21,329.329 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 13:59:21,330.330 INFO    ] Checking for system updates...
[2026-06-12 13:59:21,351.351 INFO    ] 200
[2026-06-12 13:59:21,352.352 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:59:21,382.382 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 13:59:21,383.383 INFO    ] No update needed
[2026-06-12 13:59:21,384.384 INFO    ] Checking for camera pi updates...
[2026-06-12 13:59:21,403.403 INFO    ] 200
[2026-06-12 13:59:21,404.404 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:59:21,427.427 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 13:59:21,470.470 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 13:59:21,472.472 INFO    ] No camera update needed
[2026-06-12 13:59:21,474.474 INFO    ] Script finished. Safe exiting...
[2026-06-12 13:59:21,475.475 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 13:59:21,479.479 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 13:59:21,482.482 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 13:59:23,514.514 INFO    ] ================================================
[2026-06-12 13:59:23,522.522 INFO    ] Launching Daemon at Fri Jun 12 13:59:23 IST 2026
[2026-06-12 13:59:23,528.528 INFO    ] ================================================
[2026-06-12 13:59:23,878.878 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 13:59:23
[2026-06-12 13:59:24,190.190 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 13:59:24,323.323 INFO    ] Initializing speech engine...
[2026-06-12 13:59:24,327.327 INFO    ] 2026-06-12 13:59:24
[2026-06-12 13:59:24,553.553 INFO    ] 2026-06-12 13:59:24
[2026-06-12 13:59:24,583.583 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 13:59:24,778.778 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 13:59:24,788.788 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 13:59:24,920.920 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 13:59:24,941.941 INFO    ] time= 12/06/2026 13:59:24
[2026-06-12 13:59:25,002.002 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 13:59:25,027.027 INFO    ] Checking for existing commands in stream...
[2026-06-12 13:59:25,103.103 INFO    ] No existing commands found in stream
[2026-06-12 13:59:30,112.112 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 13:59:30,115.115 INFO    ] Waiting 1.34 seconds before fallback handling...
[2026-06-12 13:59:31,800.800 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 13:59:31,801.801 INFO    ] Checking for system updates...
[2026-06-12 13:59:31,822.822 INFO    ] 200
[2026-06-12 13:59:31,824.824 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:59:31,855.855 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 13:59:31,857.857 INFO    ] No update needed
[2026-06-12 13:59:31,858.858 INFO    ] Checking for camera pi updates...
[2026-06-12 13:59:31,880.880 INFO    ] 200
[2026-06-12 13:59:31,881.881 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:59:31,905.905 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 13:59:31,945.945 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 13:59:31,947.947 INFO    ] No camera update needed
[2026-06-12 13:59:31,948.948 INFO    ] Script finished. Safe exiting...
[2026-06-12 13:59:31,950.950 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 13:59:31,953.953 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 13:59:31,956.956 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 13:59:33,987.987 INFO    ] ================================================
[2026-06-12 13:59:34,003.003 INFO    ] Launching Daemon at Fri Jun 12 13:59:33 IST 2026
[2026-06-12 13:59:34,014.014 INFO    ] ================================================
[2026-06-12 13:59:34,353.353 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 13:59:34
[2026-06-12 13:59:34,669.669 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 13:59:34,810.810 INFO    ] Initializing speech engine...
[2026-06-12 13:59:34,815.815 INFO    ] 2026-06-12 13:59:34
[2026-06-12 13:59:35,018.018 INFO    ] 2026-06-12 13:59:35
[2026-06-12 13:59:35,047.047 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 13:59:35,232.232 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 13:59:35,242.242 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 13:59:35,370.370 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 13:59:35,436.436 INFO    ] time= 12/06/2026 13:59:35
[2026-06-12 13:59:35,464.464 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 13:59:35,470.470 INFO    ] Checking for existing commands in stream...
[2026-06-12 13:59:35,537.537 INFO    ] No existing commands found in stream
[2026-06-12 13:59:40,547.547 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 13:59:40,550.550 INFO    ] Waiting 3.60 seconds before fallback handling...
[2026-06-12 13:59:44,487.487 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 13:59:44,489.489 INFO    ] Checking for system updates...
[2026-06-12 13:59:44,510.510 INFO    ] 200
[2026-06-12 13:59:44,511.511 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:59:44,541.541 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 13:59:44,543.543 INFO    ] No update needed
[2026-06-12 13:59:44,545.545 INFO    ] Checking for camera pi updates...
[2026-06-12 13:59:44,564.564 INFO    ] 200
[2026-06-12 13:59:44,566.566 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:59:44,589.589 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 13:59:44,638.638 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 13:59:44,640.640 INFO    ] No camera update needed
[2026-06-12 13:59:44,641.641 INFO    ] Script finished. Safe exiting...
[2026-06-12 13:59:44,643.643 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 13:59:44,646.646 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 13:59:44,649.649 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 13:59:46,687.687 INFO    ] ================================================
[2026-06-12 13:59:46,703.703 INFO    ] Launching Daemon at Fri Jun 12 13:59:46 IST 2026
[2026-06-12 13:59:46,714.714 INFO    ] ================================================
[2026-06-12 13:59:47,062.062 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 13:59:47
[2026-06-12 13:59:47,394.394 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 13:59:47,539.539 INFO    ] Initializing speech engine...
[2026-06-12 13:59:47,549.549 INFO    ] 2026-06-12 13:59:47
[2026-06-12 13:59:47,759.759 INFO    ] 2026-06-12 13:59:47
[2026-06-12 13:59:47,787.787 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 13:59:47,972.972 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 13:59:47,982.982 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 13:59:48,110.110 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 13:59:48,164.164 INFO    ] time= 12/06/2026 13:59:48
[2026-06-12 13:59:48,202.202 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 13:59:48,204.204 INFO    ] Checking for existing commands in stream...
[2026-06-12 13:59:48,299.299 INFO    ] No existing commands found in stream
[2026-06-12 13:59:53,309.309 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 13:59:53,312.312 INFO    ] Waiting 2.71 seconds before fallback handling...
[2026-06-12 13:59:56,410.410 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 13:59:56,412.412 INFO    ] Checking for system updates...
[2026-06-12 13:59:56,433.433 INFO    ] 200
[2026-06-12 13:59:56,434.434 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:59:56,465.465 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 13:59:56,467.467 INFO    ] No update needed
[2026-06-12 13:59:56,468.468 INFO    ] Checking for camera pi updates...
[2026-06-12 13:59:56,490.490 INFO    ] 200
[2026-06-12 13:59:56,492.492 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 13:59:56,515.515 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 13:59:56,668.668 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 13:59:56,670.670 INFO    ] No camera update needed
[2026-06-12 13:59:56,671.671 INFO    ] Script finished. Safe exiting...
[2026-06-12 13:59:56,672.672 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 13:59:56,675.675 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 13:59:56,678.678 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 13:59:58,718.718 INFO    ] ================================================
[2026-06-12 13:59:58,734.734 INFO    ] Launching Daemon at Fri Jun 12 13:59:58 IST 2026
[2026-06-12 13:59:58,745.745 INFO    ] ================================================
[2026-06-12 13:59:59,086.086 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 13:59:59
[2026-06-12 13:59:59,400.400 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 13:59:59,530.530 INFO    ] Initializing speech engine...
[2026-06-12 13:59:59,534.534 INFO    ] 2026-06-12 13:59:59
[2026-06-12 13:59:59,749.749 INFO    ] 2026-06-12 13:59:59
[2026-06-12 13:59:59,779.779 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 13:59:59,963.963 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 13:59:59,973.973 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 14:00:00,094.094 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 14:00:00,155.155 INFO    ] time= 12/06/2026 14:00:00
[2026-06-12 14:00:00,189.189 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 14:00:00,194.194 INFO    ] Checking for existing commands in stream...
[2026-06-12 14:00:00,266.266 INFO    ] No existing commands found in stream
[2026-06-12 14:00:05,280.280 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 14:00:05,283.283 INFO    ] Waiting 2.95 seconds before fallback handling...
[2026-06-12 14:00:10,008.008 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 14:00:10,010.010 INFO    ] Checking for system updates...
[2026-06-12 14:00:10,046.046 INFO    ] 200
[2026-06-12 14:00:10,049.049 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:00:10,106.106 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 14:00:10,109.109 INFO    ] No update needed
[2026-06-12 14:00:10,111.111 INFO    ] Checking for camera pi updates...
[2026-06-12 14:00:10,145.145 INFO    ] 200
[2026-06-12 14:00:10,147.147 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:00:10,172.172 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 14:00:10,205.205 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 14:00:10,207.207 INFO    ] No camera update needed
[2026-06-12 14:00:10,208.208 INFO    ] Script finished. Safe exiting...
[2026-06-12 14:00:10,209.209 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 14:00:10,213.213 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 14:00:10,215.215 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 14:00:12,253.253 INFO    ] ================================================
[2026-06-12 14:00:12,269.269 INFO    ] Launching Daemon at Fri Jun 12 14:00:12 IST 2026
[2026-06-12 14:00:12,281.281 INFO    ] ================================================
[2026-06-12 14:00:12,630.630 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 14:00:12
[2026-06-12 14:00:12,961.961 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 14:00:13,098.098 INFO    ] Initializing speech engine...
[2026-06-12 14:00:13,103.103 INFO    ] 2026-06-12 14:00:13
[2026-06-12 14:00:13,321.321 INFO    ] 2026-06-12 14:00:13
[2026-06-12 14:00:13,352.352 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 14:00:13,545.545 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 14:00:13,555.555 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 14:00:13,727.727 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 14:00:13,772.772 INFO    ] time= 12/06/2026 14:00:13
[2026-06-12 14:00:13,781.781 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 14:00:13,783.783 INFO    ] Checking for existing commands in stream...
[2026-06-12 14:00:13,848.848 INFO    ] No existing commands found in stream
[2026-06-12 14:00:18,859.859 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 14:00:18,862.862 INFO    ] Waiting 2.13 seconds before fallback handling...
[2026-06-12 14:00:21,352.352 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 14:00:21,353.353 INFO    ] Checking for system updates...
[2026-06-12 14:00:21,374.374 INFO    ] 200
[2026-06-12 14:00:21,375.375 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:00:21,407.407 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 14:00:21,408.408 INFO    ] No update needed
[2026-06-12 14:00:21,409.409 INFO    ] Checking for camera pi updates...
[2026-06-12 14:00:21,433.433 INFO    ] 200
[2026-06-12 14:00:21,435.435 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:00:21,458.458 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 14:00:21,512.512 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 14:00:21,513.513 INFO    ] No camera update needed
[2026-06-12 14:00:21,515.515 INFO    ] Script finished. Safe exiting...
[2026-06-12 14:00:21,516.516 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 14:00:21,519.519 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 14:00:21,522.522 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 14:00:23,560.560 INFO    ] ================================================
[2026-06-12 14:00:23,576.576 INFO    ] Launching Daemon at Fri Jun 12 14:00:23 IST 2026
[2026-06-12 14:00:23,587.587 INFO    ] ================================================
[2026-06-12 14:00:23,916.916 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 14:00:23
[2026-06-12 14:00:24,227.227 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 14:00:24,357.357 INFO    ] Initializing speech engine...
[2026-06-12 14:00:24,366.366 INFO    ] 2026-06-12 14:00:24
[2026-06-12 14:00:24,581.581 INFO    ] 2026-06-12 14:00:24
[2026-06-12 14:00:24,609.609 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 14:00:24,732.732 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 14:00:24,796.796 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 14:00:24,932.932 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 14:00:24,995.995 INFO    ] time= 12/06/2026 14:00:24
[2026-06-12 14:00:25,028.028 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 14:00:25,030.030 INFO    ] Checking for existing commands in stream...
[2026-06-12 14:00:25,105.105 INFO    ] No existing commands found in stream
[2026-06-12 14:00:30,114.114 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 14:00:30,117.117 INFO    ] Waiting 2.36 seconds before fallback handling...
[2026-06-12 14:00:32,845.845 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 14:00:32,846.846 INFO    ] Checking for system updates...
[2026-06-12 14:00:32,867.867 INFO    ] 200
[2026-06-12 14:00:32,868.868 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:00:32,897.897 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 14:00:32,899.899 INFO    ] No update needed
[2026-06-12 14:00:32,900.900 INFO    ] Checking for camera pi updates...
[2026-06-12 14:00:32,920.920 INFO    ] 200
[2026-06-12 14:00:32,922.922 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:00:32,944.944 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 14:00:33,001.001 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 14:00:33,003.003 INFO    ] No camera update needed
[2026-06-12 14:00:33,004.004 INFO    ] Script finished. Safe exiting...
[2026-06-12 14:00:33,005.005 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 14:00:33,008.008 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 14:00:33,011.011 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 14:00:35,050.050 INFO    ] ================================================
[2026-06-12 14:00:35,066.066 INFO    ] Launching Daemon at Fri Jun 12 14:00:35 IST 2026
[2026-06-12 14:00:35,076.076 INFO    ] ================================================
[2026-06-12 14:00:35,444.444 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 14:00:35
[2026-06-12 14:00:35,777.777 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 14:00:35,928.928 INFO    ] Initializing speech engine...
[2026-06-12 14:00:35,934.934 INFO    ] 2026-06-12 14:00:35
[2026-06-12 14:00:36,141.141 INFO    ] 2026-06-12 14:00:36
[2026-06-12 14:00:36,170.170 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 14:00:36,355.355 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 14:00:36,365.365 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 14:00:36,494.494 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 14:00:36,558.558 INFO    ] time= 12/06/2026 14:00:36
[2026-06-12 14:00:36,585.585 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 14:00:36,592.592 INFO    ] Checking for existing commands in stream...
[2026-06-12 14:00:36,659.659 INFO    ] No existing commands found in stream
[2026-06-12 14:00:41,668.668 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 14:00:41,672.672 INFO    ] Waiting 0.80 seconds before fallback handling...
[2026-06-12 14:00:42,826.826 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 14:00:42,827.827 INFO    ] Checking for system updates...
[2026-06-12 14:00:42,851.851 INFO    ] 200
[2026-06-12 14:00:42,853.853 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:00:42,883.883 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 14:00:42,884.884 INFO    ] No update needed
[2026-06-12 14:00:42,886.886 INFO    ] Checking for camera pi updates...
[2026-06-12 14:00:42,905.905 INFO    ] 200
[2026-06-12 14:00:42,906.906 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:00:42,929.929 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 14:00:42,987.987 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 14:00:42,988.988 INFO    ] No camera update needed
[2026-06-12 14:00:42,990.990 INFO    ] Script finished. Safe exiting...
[2026-06-12 14:00:42,991.991 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 14:00:42,994.994 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 14:00:42,997.997 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 14:00:45,034.034 INFO    ] ================================================
[2026-06-12 14:00:45,050.050 INFO    ] Launching Daemon at Fri Jun 12 14:00:45 IST 2026
[2026-06-12 14:00:45,060.060 INFO    ] ================================================
[2026-06-12 14:00:45,420.420 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 14:00:45
[2026-06-12 14:00:45,754.754 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 14:00:45,899.899 INFO    ] Initializing speech engine...
[2026-06-12 14:00:45,910.910 INFO    ] 2026-06-12 14:00:45
[2026-06-12 14:00:46,117.117 INFO    ] 2026-06-12 14:00:46
[2026-06-12 14:00:46,146.146 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 14:00:46,330.330 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 14:00:46,339.339 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 14:00:46,480.480 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 14:00:46,538.538 INFO    ] time= 12/06/2026 14:00:46
[2026-06-12 14:00:46,560.560 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 14:00:46,567.567 INFO    ] Checking for existing commands in stream...
[2026-06-12 14:00:46,633.633 INFO    ] No existing commands found in stream
[2026-06-12 14:00:51,648.648 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 14:00:51,651.651 INFO    ] Waiting 0.11 seconds before fallback handling...
[2026-06-12 14:00:52,122.122 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 14:00:52,124.124 INFO    ] Checking for system updates...
[2026-06-12 14:00:52,144.144 INFO    ] 200
[2026-06-12 14:00:52,145.145 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:00:52,175.175 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 14:00:52,176.176 INFO    ] No update needed
[2026-06-12 14:00:52,178.178 INFO    ] Checking for camera pi updates...
[2026-06-12 14:00:52,197.197 INFO    ] 200
[2026-06-12 14:00:52,198.198 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:00:52,221.221 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 14:00:52,268.268 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 14:00:52,270.270 INFO    ] No camera update needed
[2026-06-12 14:00:52,271.271 INFO    ] Script finished. Safe exiting...
[2026-06-12 14:00:52,272.272 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 14:00:52,275.275 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 14:00:52,278.278 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 14:00:54,322.322 INFO    ] ================================================
[2026-06-12 14:00:54,337.337 INFO    ] Launching Daemon at Fri Jun 12 14:00:54 IST 2026
[2026-06-12 14:00:54,348.348 INFO    ] ================================================
[2026-06-12 14:00:54,712.712 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 14:00:54
[2026-06-12 14:00:55,044.044 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 14:00:55,189.189 INFO    ] Initializing speech engine...
[2026-06-12 14:00:55,200.200 INFO    ] 2026-06-12 14:00:55
[2026-06-12 14:00:55,409.409 INFO    ] 2026-06-12 14:00:55
[2026-06-12 14:00:55,437.437 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 14:00:55,628.628 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 14:00:55,632.632 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 14:00:55,767.767 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 14:00:55,830.830 INFO    ] time= 12/06/2026 14:00:55
[2026-06-12 14:00:55,863.863 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 14:00:55,870.870 INFO    ] Checking for existing commands in stream...
[2026-06-12 14:00:55,939.939 INFO    ] No existing commands found in stream
[2026-06-12 14:01:00,953.953 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 14:01:00,956.956 INFO    ] Waiting 0.22 seconds before fallback handling...
[2026-06-12 14:01:01,529.529 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 14:01:01,530.530 INFO    ] Checking for system updates...
[2026-06-12 14:01:01,551.551 INFO    ] 200
[2026-06-12 14:01:01,552.552 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:01:01,584.584 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 14:01:01,585.585 INFO    ] No update needed
[2026-06-12 14:01:01,587.587 INFO    ] Checking for camera pi updates...
[2026-06-12 14:01:01,606.606 INFO    ] 200
[2026-06-12 14:01:01,607.607 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:01:01,631.631 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 14:01:01,661.661 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 14:01:01,662.662 INFO    ] No camera update needed
[2026-06-12 14:01:01,663.663 INFO    ] Script finished. Safe exiting...
[2026-06-12 14:01:01,664.664 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 14:01:01,667.667 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 14:01:01,670.670 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 14:01:03,703.703 INFO    ] ================================================
[2026-06-12 14:01:03,718.718 INFO    ] Launching Daemon at Fri Jun 12 14:01:03 IST 2026
[2026-06-12 14:01:03,728.728 INFO    ] ================================================
[2026-06-12 14:01:04,062.062 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 14:01:04
[2026-06-12 14:01:04,381.381 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 14:01:04,514.514 INFO    ] Initializing speech engine...
[2026-06-12 14:01:04,517.517 INFO    ] 2026-06-12 14:01:04
[2026-06-12 14:01:04,735.735 INFO    ] 2026-06-12 14:01:04
[2026-06-12 14:01:04,764.764 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 14:01:04,901.901 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 14:01:04,949.949 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 14:01:05,086.086 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 14:01:05,152.152 INFO    ] time= 12/06/2026 14:01:05
[2026-06-12 14:01:05,177.177 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 14:01:05,184.184 INFO    ] Checking for existing commands in stream...
[2026-06-12 14:01:05,249.249 INFO    ] No existing commands found in stream
[2026-06-12 14:01:10,260.260 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 14:01:10,263.263 INFO    ] Waiting 2.98 seconds before fallback handling...
[2026-06-12 14:01:13,602.602 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 14:01:13,603.603 INFO    ] Checking for system updates...
[2026-06-12 14:01:13,623.623 INFO    ] 200
[2026-06-12 14:01:13,624.624 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:01:13,656.656 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 14:01:13,657.657 INFO    ] No update needed
[2026-06-12 14:01:13,658.658 INFO    ] Checking for camera pi updates...
[2026-06-12 14:01:13,677.677 INFO    ] 200
[2026-06-12 14:01:13,678.678 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:01:13,703.703 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 14:01:13,754.754 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 14:01:13,755.755 INFO    ] No camera update needed
[2026-06-12 14:01:13,757.757 INFO    ] Script finished. Safe exiting...
[2026-06-12 14:01:13,758.758 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 14:01:13,761.761 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 14:01:13,764.764 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 14:01:15,801.801 INFO    ] ================================================
[2026-06-12 14:01:15,816.816 INFO    ] Launching Daemon at Fri Jun 12 14:01:15 IST 2026
[2026-06-12 14:01:15,827.827 INFO    ] ================================================
[2026-06-12 14:01:16,167.167 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 14:01:16
[2026-06-12 14:01:16,477.477 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 14:01:16,623.623 INFO    ] Initializing speech engine...
[2026-06-12 14:01:16,628.628 INFO    ] 2026-06-12 14:01:16
[2026-06-12 14:01:16,841.841 INFO    ] 2026-06-12 14:01:16
[2026-06-12 14:01:16,871.871 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 14:01:17,064.064 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 14:01:17,067.067 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 14:01:17,204.204 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 14:01:17,265.265 INFO    ] time= 12/06/2026 14:01:17
[2026-06-12 14:01:17,298.298 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 14:01:17,309.309 INFO    ] Checking for existing commands in stream...
[2026-06-12 14:01:17,384.384 INFO    ] No existing commands found in stream
[2026-06-12 14:01:22,393.393 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 14:01:22,396.396 INFO    ] Waiting 3.73 seconds before fallback handling...
[2026-06-12 14:01:26,483.483 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 14:01:26,484.484 INFO    ] Checking for system updates...
[2026-06-12 14:01:26,504.504 INFO    ] 200
[2026-06-12 14:01:26,506.506 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:01:26,537.537 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 14:01:26,539.539 INFO    ] No update needed
[2026-06-12 14:01:26,540.540 INFO    ] Checking for camera pi updates...
[2026-06-12 14:01:26,559.559 INFO    ] 200
[2026-06-12 14:01:26,561.561 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:01:26,586.586 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 14:01:26,633.633 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 14:01:26,635.635 INFO    ] No camera update needed
[2026-06-12 14:01:26,636.636 INFO    ] Script finished. Safe exiting...
[2026-06-12 14:01:26,637.637 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 14:01:26,640.640 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 14:01:26,643.643 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 14:01:28,680.680 INFO    ] ================================================
[2026-06-12 14:01:28,696.696 INFO    ] Launching Daemon at Fri Jun 12 14:01:28 IST 2026
[2026-06-12 14:01:28,706.706 INFO    ] ================================================
[2026-06-12 14:01:29,091.091 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 14:01:29
[2026-06-12 14:01:29,422.422 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 14:01:29,571.571 INFO    ] Initializing speech engine...
[2026-06-12 14:01:29,576.576 INFO    ] 2026-06-12 14:01:29
[2026-06-12 14:01:29,783.783 INFO    ] 2026-06-12 14:01:29
[2026-06-12 14:01:29,811.811 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 14:01:29,933.933 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 14:01:29,976.976 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 14:01:30,134.134 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 14:01:30,198.198 INFO    ] time= 12/06/2026 14:01:30
[2026-06-12 14:01:30,227.227 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 14:01:30,230.230 INFO    ] Checking for existing commands in stream...
[2026-06-12 14:01:30,362.362 INFO    ] No existing commands found in stream
[2026-06-12 14:01:35,372.372 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 14:01:35,376.376 INFO    ] Waiting 1.62 seconds before fallback handling...
[2026-06-12 14:01:37,364.364 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 14:01:37,365.365 INFO    ] Checking for system updates...
[2026-06-12 14:01:37,388.388 INFO    ] 200
[2026-06-12 14:01:37,389.389 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:01:37,419.419 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 14:01:37,420.420 INFO    ] No update needed
[2026-06-12 14:01:37,421.421 INFO    ] Checking for camera pi updates...
[2026-06-12 14:01:37,441.441 INFO    ] 200
[2026-06-12 14:01:37,442.442 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:01:37,466.466 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 14:01:37,519.519 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 14:01:37,524.524 INFO    ] No camera update needed
[2026-06-12 14:01:37,526.526 INFO    ] Script finished. Safe exiting...
[2026-06-12 14:01:37,527.527 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 14:01:37,531.531 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 14:01:37,534.534 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 14:01:39,572.572 INFO    ] ================================================
[2026-06-12 14:01:39,587.587 INFO    ] Launching Daemon at Fri Jun 12 14:01:39 IST 2026
[2026-06-12 14:01:39,598.598 INFO    ] ================================================
[2026-06-12 14:01:39,940.940 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 14:01:39
[2026-06-12 14:01:40,251.251 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 14:01:40,380.380 INFO    ] Initializing speech engine...
[2026-06-12 14:01:40,388.388 INFO    ] 2026-06-12 14:01:40
[2026-06-12 14:01:40,598.598 INFO    ] 2026-06-12 14:01:40
[2026-06-12 14:01:40,628.628 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 14:01:40,811.811 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 14:01:40,820.820 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 14:01:40,958.958 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 14:01:41,014.014 INFO    ] time= 12/06/2026 14:01:40
[2026-06-12 14:01:41,038.038 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 14:01:41,044.044 INFO    ] Checking for existing commands in stream...
[2026-06-12 14:01:41,109.109 INFO    ] No existing commands found in stream
[2026-06-12 14:01:46,120.120 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 14:01:46,123.123 INFO    ] Waiting 3.49 seconds before fallback handling...
[2026-06-12 14:01:49,942.942 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 14:01:49,944.944 INFO    ] Checking for system updates...
[2026-06-12 14:01:49,963.963 INFO    ] 200
[2026-06-12 14:01:49,965.965 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:01:49,994.994 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 14:01:49,995.995 INFO    ] No update needed
[2026-06-12 14:01:49,997.997 INFO    ] Checking for camera pi updates...
[2026-06-12 14:01:50,017.017 INFO    ] 200
[2026-06-12 14:01:50,018.018 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:01:50,041.041 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 14:01:50,085.085 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 14:01:50,087.087 INFO    ] No camera update needed
[2026-06-12 14:01:50,088.088 INFO    ] Script finished. Safe exiting...
[2026-06-12 14:01:50,089.089 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 14:01:50,092.092 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 14:01:50,095.095 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 14:01:52,133.133 INFO    ] ================================================
[2026-06-12 14:01:52,149.149 INFO    ] Launching Daemon at Fri Jun 12 14:01:52 IST 2026
[2026-06-12 14:01:52,160.160 INFO    ] ================================================
[2026-06-12 14:01:52,503.503 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 14:01:52
[2026-06-12 14:01:52,816.816 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 14:01:52,952.952 INFO    ] Initializing speech engine...
[2026-06-12 14:01:52,962.962 INFO    ] 2026-06-12 14:01:52
[2026-06-12 14:01:53,166.166 INFO    ] 2026-06-12 14:01:53
[2026-06-12 14:01:53,196.196 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 14:01:53,380.380 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 14:01:53,390.390 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 14:01:53,520.520 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 14:01:53,584.584 INFO    ] time= 12/06/2026 14:01:53
[2026-06-12 14:01:53,612.612 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 14:01:53,618.618 INFO    ] Checking for existing commands in stream...
[2026-06-12 14:01:53,685.685 INFO    ] No existing commands found in stream
[2026-06-12 14:01:58,694.694 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 14:01:58,697.697 INFO    ] Waiting 3.91 seconds before fallback handling...
[2026-06-12 14:02:02,981.981 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 14:02:02,982.982 INFO    ] Checking for system updates...
[2026-06-12 14:02:03,003.003 INFO    ] 200
[2026-06-12 14:02:03,004.004 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:02:03,034.034 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 14:02:03,035.035 INFO    ] No update needed
[2026-06-12 14:02:03,037.037 INFO    ] Checking for camera pi updates...
[2026-06-12 14:02:03,056.056 INFO    ] 200
[2026-06-12 14:02:03,057.057 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:02:03,080.080 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 14:02:03,125.125 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 14:02:03,126.126 INFO    ] No camera update needed
[2026-06-12 14:02:03,128.128 INFO    ] Script finished. Safe exiting...
[2026-06-12 14:02:03,129.129 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 14:02:03,132.132 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 14:02:03,135.135 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 14:02:05,176.176 INFO    ] ================================================
[2026-06-12 14:02:05,191.191 INFO    ] Launching Daemon at Fri Jun 12 14:02:05 IST 2026
[2026-06-12 14:02:05,202.202 INFO    ] ================================================
[2026-06-12 14:02:05,587.587 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 14:02:05
[2026-06-12 14:02:05,918.918 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 14:02:06,069.069 INFO    ] Initializing speech engine...
[2026-06-12 14:02:06,074.074 INFO    ] 2026-06-12 14:02:06
[2026-06-12 14:02:06,280.280 INFO    ] 2026-06-12 14:02:06
[2026-06-12 14:02:06,309.309 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 14:02:06,494.494 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 14:02:06,504.504 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 14:02:06,626.626 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 14:02:06,687.687 INFO    ] time= 12/06/2026 14:02:06
[2026-06-12 14:02:06,721.721 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 14:02:06,727.727 INFO    ] Checking for existing commands in stream...
[2026-06-12 14:02:06,798.798 INFO    ] No existing commands found in stream
[2026-06-12 14:02:11,812.812 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 14:02:11,815.815 INFO    ] Waiting 0.14 seconds before fallback handling...
[2026-06-12 14:02:12,318.318 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 14:02:12,320.320 INFO    ] Checking for system updates...
[2026-06-12 14:02:12,341.341 INFO    ] 200
[2026-06-12 14:02:12,342.342 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:02:12,374.374 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 14:02:12,375.375 INFO    ] No update needed
[2026-06-12 14:02:12,377.377 INFO    ] Checking for camera pi updates...
[2026-06-12 14:02:12,397.397 INFO    ] 200
[2026-06-12 14:02:12,398.398 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:02:12,421.421 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 14:02:12,483.483 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 14:02:12,484.484 INFO    ] No camera update needed
[2026-06-12 14:02:12,486.486 INFO    ] Script finished. Safe exiting...
[2026-06-12 14:02:12,487.487 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 14:02:12,490.490 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 14:02:12,493.493 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 14:02:14,530.530 INFO    ] ================================================
[2026-06-12 14:02:14,546.546 INFO    ] Launching Daemon at Fri Jun 12 14:02:14 IST 2026
[2026-06-12 14:02:14,557.557 INFO    ] ================================================
[2026-06-12 14:02:14,893.893 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 14:02:14
[2026-06-12 14:02:15,205.205 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 14:02:15,335.335 INFO    ] Initializing speech engine...
[2026-06-12 14:02:15,339.339 INFO    ] 2026-06-12 14:02:15
[2026-06-12 14:02:15,581.581 INFO    ] 2026-06-12 14:02:15
[2026-06-12 14:02:15,611.611 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 14:02:15,751.751 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 14:02:15,752.752 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 14:02:15,852.852 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 14:02:15,856.856 INFO    ] time= 12/06/2026 14:02:15
[2026-06-12 14:02:15,860.860 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 14:02:15,891.891 INFO    ] Checking for existing commands in stream...
[2026-06-12 14:02:15,964.964 INFO    ] No existing commands found in stream
[2026-06-12 14:02:20,971.971 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 14:02:20,973.973 INFO    ] Waiting 0.76 seconds before fallback handling...
[2026-06-12 14:02:22,078.078 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 14:02:22,080.080 INFO    ] Checking for system updates...
[2026-06-12 14:02:22,103.103 INFO    ] 200
[2026-06-12 14:02:22,105.105 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:02:22,138.138 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 14:02:22,139.139 INFO    ] No update needed
[2026-06-12 14:02:22,141.141 INFO    ] Checking for camera pi updates...
[2026-06-12 14:02:22,160.160 INFO    ] 200
[2026-06-12 14:02:22,162.162 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:02:22,185.185 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 14:02:22,233.233 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 14:02:22,235.235 INFO    ] No camera update needed
[2026-06-12 14:02:22,236.236 INFO    ] Script finished. Safe exiting...
[2026-06-12 14:02:22,237.237 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 14:02:22,241.241 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 14:02:22,244.244 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 14:02:24,282.282 INFO    ] ================================================
[2026-06-12 14:02:24,297.297 INFO    ] Launching Daemon at Fri Jun 12 14:02:24 IST 2026
[2026-06-12 14:02:24,308.308 INFO    ] ================================================
[2026-06-12 14:02:24,639.639 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 14:02:24
[2026-06-12 14:02:24,950.950 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 14:02:25,080.080 INFO    ] Initializing speech engine...
[2026-06-12 14:02:25,085.085 INFO    ] 2026-06-12 14:02:25
[2026-06-12 14:02:25,302.302 INFO    ] 2026-06-12 14:02:25
[2026-06-12 14:02:25,335.335 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 14:02:25,522.522 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 14:02:25,531.531 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 14:02:25,659.659 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 14:02:25,706.706 INFO    ] time= 12/06/2026 14:02:25
[2026-06-12 14:02:25,708.708 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 14:02:25,725.725 INFO    ] Checking for existing commands in stream...
[2026-06-12 14:02:25,826.826 INFO    ] No existing commands found in stream
[2026-06-12 14:02:30,837.837 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 14:02:30,839.839 INFO    ] Waiting 0.44 seconds before fallback handling...
[2026-06-12 14:02:31,596.596 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 14:02:31,598.598 INFO    ] Checking for system updates...
[2026-06-12 14:02:31,625.625 INFO    ] 200
[2026-06-12 14:02:31,627.627 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:02:31,663.663 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 14:02:31,665.665 INFO    ] No update needed
[2026-06-12 14:02:31,666.666 INFO    ] Checking for camera pi updates...
[2026-06-12 14:02:31,688.688 INFO    ] 200
[2026-06-12 14:02:31,690.690 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:02:31,717.717 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 14:02:31,747.747 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 14:02:31,748.748 INFO    ] No camera update needed
[2026-06-12 14:02:31,750.750 INFO    ] Script finished. Safe exiting...
[2026-06-12 14:02:31,751.751 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 14:02:31,755.755 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 14:02:31,758.758 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 14:02:33,797.797 INFO    ] ================================================
[2026-06-12 14:02:33,813.813 INFO    ] Launching Daemon at Fri Jun 12 14:02:33 IST 2026
[2026-06-12 14:02:33,824.824 INFO    ] ================================================
[2026-06-12 14:02:34,179.179 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 14:02:34
[2026-06-12 14:02:34,491.491 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 14:02:34,621.621 INFO    ] Initializing speech engine...
[2026-06-12 14:02:34,626.626 INFO    ] 2026-06-12 14:02:34
[2026-06-12 14:02:34,854.854 INFO    ] 2026-06-12 14:02:34
[2026-06-12 14:02:34,885.885 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 14:02:35,080.080 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 14:02:35,084.084 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 14:02:35,221.221 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 14:02:35,272.272 INFO    ] time= 12/06/2026 14:02:35
[2026-06-12 14:02:35,333.333 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 14:02:35,335.335 INFO    ] Checking for existing commands in stream...
[2026-06-12 14:02:35,407.407 INFO    ] No existing commands found in stream
[2026-06-12 14:02:40,417.417 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 14:02:40,420.420 INFO    ] Waiting 2.07 seconds before fallback handling...
[2026-06-12 14:02:42,874.874 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 14:02:42,875.875 INFO    ] Checking for system updates...
[2026-06-12 14:02:42,895.895 INFO    ] 200
[2026-06-12 14:02:42,897.897 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:02:42,930.930 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 14:02:42,932.932 INFO    ] No update needed
[2026-06-12 14:02:42,933.933 INFO    ] Checking for camera pi updates...
[2026-06-12 14:02:42,952.952 INFO    ] 200
[2026-06-12 14:02:42,953.953 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:02:42,976.976 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 14:02:43,014.014 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 14:02:43,016.016 INFO    ] No camera update needed
[2026-06-12 14:02:43,017.017 INFO    ] Script finished. Safe exiting...
[2026-06-12 14:02:43,018.018 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 14:02:43,021.021 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 14:02:43,024.024 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 14:02:45,062.062 INFO    ] ================================================
[2026-06-12 14:02:45,078.078 INFO    ] Launching Daemon at Fri Jun 12 14:02:45 IST 2026
[2026-06-12 14:02:45,089.089 INFO    ] ================================================
[2026-06-12 14:02:45,459.459 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 14:02:45
[2026-06-12 14:02:45,779.779 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 14:02:45,922.922 INFO    ] Initializing speech engine...
[2026-06-12 14:02:45,927.927 INFO    ] 2026-06-12 14:02:45
[2026-06-12 14:02:46,131.131 INFO    ] 2026-06-12 14:02:46
[2026-06-12 14:02:46,160.160 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 14:02:46,343.343 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 14:02:46,351.351 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 14:02:46,476.476 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 14:02:46,544.544 INFO    ] time= 12/06/2026 14:02:46
[2026-06-12 14:02:46,570.570 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 14:02:46,577.577 INFO    ] Checking for existing commands in stream...
[2026-06-12 14:02:46,643.643 INFO    ] No existing commands found in stream
[2026-06-12 14:02:51,657.657 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 14:02:51,660.660 INFO    ] Waiting 1.55 seconds before fallback handling...
[2026-06-12 14:02:53,616.616 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 14:02:53,618.618 INFO    ] Checking for system updates...
[2026-06-12 14:02:53,638.638 INFO    ] 200
[2026-06-12 14:02:53,640.640 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:02:53,669.669 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 14:02:53,671.671 INFO    ] No update needed
[2026-06-12 14:02:53,672.672 INFO    ] Checking for camera pi updates...
[2026-06-12 14:02:53,692.692 INFO    ] 200
[2026-06-12 14:02:53,693.693 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:02:53,716.716 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 14:02:53,764.764 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 14:02:53,765.765 INFO    ] No camera update needed
[2026-06-12 14:02:53,766.766 INFO    ] Script finished. Safe exiting...
[2026-06-12 14:02:53,768.768 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 14:02:53,771.771 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 14:02:53,774.774 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 14:02:55,812.812 INFO    ] ================================================
[2026-06-12 14:02:55,828.828 INFO    ] Launching Daemon at Fri Jun 12 14:02:55 IST 2026
[2026-06-12 14:02:55,840.840 INFO    ] ================================================
[2026-06-12 14:02:56,209.209 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 14:02:56
[2026-06-12 14:02:56,523.523 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 14:02:56,659.659 INFO    ] Initializing speech engine...
[2026-06-12 14:02:56,672.672 INFO    ] 2026-06-12 14:02:56
[2026-06-12 14:02:56,889.889 INFO    ] 2026-06-12 14:02:56
[2026-06-12 14:02:56,919.919 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 14:02:57,114.114 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 14:02:57,118.118 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 14:02:57,255.255 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 14:02:57,301.301 INFO    ] time= 12/06/2026 14:02:57
[2026-06-12 14:02:57,344.344 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 14:02:57,362.362 INFO    ] Checking for existing commands in stream...
[2026-06-12 14:02:57,463.463 INFO    ] No existing commands found in stream
[2026-06-12 14:03:02,471.471 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 14:03:02,472.472 INFO    ] Waiting 0.88 seconds before fallback handling...
[2026-06-12 14:03:03,695.695 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 14:03:03,697.697 INFO    ] Checking for system updates...
[2026-06-12 14:03:03,718.718 INFO    ] 200
[2026-06-12 14:03:03,719.719 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:03:03,749.749 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 14:03:03,750.750 INFO    ] No update needed
[2026-06-12 14:03:03,752.752 INFO    ] Checking for camera pi updates...
[2026-06-12 14:03:03,772.772 INFO    ] 200
[2026-06-12 14:03:03,773.773 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:03:03,798.798 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 14:03:03,848.848 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 14:03:03,849.849 INFO    ] No camera update needed
[2026-06-12 14:03:03,850.850 INFO    ] Script finished. Safe exiting...
[2026-06-12 14:03:03,852.852 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 14:03:03,855.855 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 14:03:03,857.857 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 14:03:05,895.895 INFO    ] ================================================
[2026-06-12 14:03:05,912.912 INFO    ] Launching Daemon at Fri Jun 12 14:03:05 IST 2026
[2026-06-12 14:03:05,922.922 INFO    ] ================================================
[2026-06-12 14:03:06,251.251 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 14:03:06
[2026-06-12 14:03:06,564.564 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 14:03:06,692.692 INFO    ] Initializing speech engine...
[2026-06-12 14:03:06,696.696 INFO    ] 2026-06-12 14:03:06
[2026-06-12 14:03:06,913.913 INFO    ] 2026-06-12 14:03:06
[2026-06-12 14:03:06,941.941 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 14:03:07,063.063 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 14:03:07,125.125 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 14:03:07,263.263 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 14:03:07,329.329 INFO    ] time= 12/06/2026 14:03:07
[2026-06-12 14:03:07,353.353 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 14:03:07,359.359 INFO    ] Checking for existing commands in stream...
[2026-06-12 14:03:07,428.428 INFO    ] No existing commands found in stream
[2026-06-12 14:03:12,436.436 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 14:03:12,439.439 INFO    ] Waiting 1.33 seconds before fallback handling...
[2026-06-12 14:03:14,142.142 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 14:03:14,144.144 INFO    ] Checking for system updates...
[2026-06-12 14:03:14,165.165 INFO    ] 200
[2026-06-12 14:03:14,166.166 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:03:14,197.197 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 14:03:14,199.199 INFO    ] No update needed
[2026-06-12 14:03:14,200.200 INFO    ] Checking for camera pi updates...
[2026-06-12 14:03:14,220.220 INFO    ] 200
[2026-06-12 14:03:14,221.221 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:03:14,243.243 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 14:03:14,283.283 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 14:03:14,285.285 INFO    ] No camera update needed
[2026-06-12 14:03:14,286.286 INFO    ] Script finished. Safe exiting...
[2026-06-12 14:03:14,287.287 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 14:03:14,290.290 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 14:03:14,293.293 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 14:03:16,332.332 INFO    ] ================================================
[2026-06-12 14:03:16,348.348 INFO    ] Launching Daemon at Fri Jun 12 14:03:16 IST 2026
[2026-06-12 14:03:16,359.359 INFO    ] ================================================
[2026-06-12 14:03:16,698.698 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 14:03:16
[2026-06-12 14:03:17,015.015 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 14:03:17,147.147 INFO    ] Initializing speech engine...
[2026-06-12 14:03:17,151.151 INFO    ] 2026-06-12 14:03:17
[2026-06-12 14:03:17,371.371 INFO    ] 2026-06-12 14:03:17
[2026-06-12 14:03:17,411.411 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 14:03:17,611.611 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 14:03:17,615.615 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 14:03:17,753.753 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 14:03:17,820.820 INFO    ] time= 12/06/2026 14:03:17
[2026-06-12 14:03:17,849.849 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 14:03:17,860.860 INFO    ] Checking for existing commands in stream...
[2026-06-12 14:03:17,935.935 INFO    ] No existing commands found in stream
[2026-06-12 14:03:22,946.946 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 14:03:22,948.948 INFO    ] Waiting 2.17 seconds before fallback handling...
[2026-06-12 14:03:25,504.504 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 14:03:25,506.506 INFO    ] Checking for system updates...
[2026-06-12 14:03:25,526.526 INFO    ] 200
[2026-06-12 14:03:25,528.528 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:03:25,558.558 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 14:03:25,559.559 INFO    ] No update needed
[2026-06-12 14:03:25,561.561 INFO    ] Checking for camera pi updates...
[2026-06-12 14:03:25,580.580 INFO    ] 200
[2026-06-12 14:03:25,582.582 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:03:25,605.605 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 14:03:25,645.645 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 14:03:25,647.647 INFO    ] No camera update needed
[2026-06-12 14:03:25,648.648 INFO    ] Script finished. Safe exiting...
[2026-06-12 14:03:25,650.650 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 14:03:25,653.653 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 14:03:25,656.656 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 14:03:27,696.696 INFO    ] ================================================
[2026-06-12 14:03:27,712.712 INFO    ] Launching Daemon at Fri Jun 12 14:03:27 IST 2026
[2026-06-12 14:03:27,723.723 INFO    ] ================================================
[2026-06-12 14:03:28,065.065 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 14:03:28
[2026-06-12 14:03:28,381.381 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 14:03:28,514.514 INFO    ] Initializing speech engine...
[2026-06-12 14:03:28,527.527 INFO    ] 2026-06-12 14:03:28
[2026-06-12 14:03:28,732.732 INFO    ] 2026-06-12 14:03:28
[2026-06-12 14:03:28,761.761 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 14:03:28,884.884 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 14:03:28,946.946 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 14:03:29,076.076 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 14:03:29,122.122 INFO    ] time= 12/06/2026 14:03:29
[2026-06-12 14:03:29,155.155 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 14:03:29,176.176 INFO    ] Checking for existing commands in stream...
[2026-06-12 14:03:29,248.248 INFO    ] No existing commands found in stream
[2026-06-12 14:03:34,257.257 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 14:03:34,260.260 INFO    ] Waiting 3.30 seconds before fallback handling...
[2026-06-12 14:03:37,986.986 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 14:03:37,987.987 INFO    ] Checking for system updates...
[2026-06-12 14:03:38,008.008 INFO    ] 200
[2026-06-12 14:03:38,010.010 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:03:38,041.041 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 14:03:38,043.043 INFO    ] No update needed
[2026-06-12 14:03:38,044.044 INFO    ] Checking for camera pi updates...
[2026-06-12 14:03:38,063.063 INFO    ] 200
[2026-06-12 14:03:38,065.065 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:03:38,090.090 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 14:03:38,136.136 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 14:03:38,138.138 INFO    ] No camera update needed
[2026-06-12 14:03:38,139.139 INFO    ] Script finished. Safe exiting...
[2026-06-12 14:03:38,141.141 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 14:03:38,144.144 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 14:03:38,147.147 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 14:03:40,187.187 INFO    ] ================================================
[2026-06-12 14:03:40,203.203 INFO    ] Launching Daemon at Fri Jun 12 14:03:40 IST 2026
[2026-06-12 14:03:40,214.214 INFO    ] ================================================
[2026-06-12 14:03:40,584.584 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 14:03:40
[2026-06-12 14:03:40,918.918 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 14:03:41,069.069 INFO    ] Initializing speech engine...
[2026-06-12 14:03:41,073.073 INFO    ] 2026-06-12 14:03:41
[2026-06-12 14:03:41,284.284 INFO    ] 2026-06-12 14:03:41
[2026-06-12 14:03:41,313.313 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 14:03:41,502.502 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 14:03:41,512.512 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 14:03:41,645.645 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 14:03:41,698.698 INFO    ] time= 12/06/2026 14:03:41
[2026-06-12 14:03:41,726.726 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 14:03:41,749.749 INFO    ] Checking for existing commands in stream...
[2026-06-12 14:03:41,823.823 INFO    ] No existing commands found in stream
[2026-06-12 14:03:46,833.833 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 14:03:46,836.836 INFO    ] Waiting 1.25 seconds before fallback handling...
[2026-06-12 14:03:48,515.515 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 14:03:48,516.516 INFO    ] Checking for system updates...
[2026-06-12 14:03:48,537.537 INFO    ] 200
[2026-06-12 14:03:48,538.538 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:03:48,570.570 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 14:03:48,572.572 INFO    ] No update needed
[2026-06-12 14:03:48,573.573 INFO    ] Checking for camera pi updates...
[2026-06-12 14:03:48,594.594 INFO    ] 200
[2026-06-12 14:03:48,595.595 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:03:48,621.621 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 14:03:48,687.687 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 14:03:48,688.688 INFO    ] No camera update needed
[2026-06-12 14:03:48,690.690 INFO    ] Script finished. Safe exiting...
[2026-06-12 14:03:48,691.691 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 14:03:48,694.694 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 14:03:48,698.698 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 14:03:50,737.737 INFO    ] ================================================
[2026-06-12 14:03:50,752.752 INFO    ] Launching Daemon at Fri Jun 12 14:03:50 IST 2026
[2026-06-12 14:03:50,764.764 INFO    ] ================================================
[2026-06-12 14:03:51,134.134 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 14:03:51
[2026-06-12 14:03:51,468.468 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 14:03:51,620.620 INFO    ] Initializing speech engine...
[2026-06-12 14:03:51,625.625 INFO    ] 2026-06-12 14:03:51
[2026-06-12 14:03:51,831.831 INFO    ] 2026-06-12 14:03:51
[2026-06-12 14:03:51,860.860 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 14:03:51,983.983 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 14:03:52,046.046 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 14:03:52,181.181 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 14:03:52,251.251 INFO    ] time= 12/06/2026 14:03:52
[2026-06-12 14:03:52,275.275 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 14:03:52,282.282 INFO    ] Checking for existing commands in stream...
[2026-06-12 14:03:52,349.349 INFO    ] No existing commands found in stream
[2026-06-12 14:03:57,358.358 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 14:03:57,361.361 INFO    ] Waiting 3.05 seconds before fallback handling...
[2026-06-12 14:04:00,781.781 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 14:04:00,782.782 INFO    ] Checking for system updates...
[2026-06-12 14:04:00,803.803 INFO    ] 200
[2026-06-12 14:04:00,804.804 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:04:00,834.834 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 14:04:00,835.835 INFO    ] No update needed
[2026-06-12 14:04:00,837.837 INFO    ] Checking for camera pi updates...
[2026-06-12 14:04:00,856.856 INFO    ] 200
[2026-06-12 14:04:00,858.858 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:04:00,881.881 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 14:04:00,909.909 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 14:04:00,911.911 INFO    ] No camera update needed
[2026-06-12 14:04:00,912.912 INFO    ] Script finished. Safe exiting...
[2026-06-12 14:04:00,913.913 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 14:04:00,917.917 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 14:04:00,920.920 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 14:04:02,946.946 INFO    ] ================================================
[2026-06-12 14:04:02,955.955 INFO    ] Launching Daemon at Fri Jun 12 14:04:02 IST 2026
[2026-06-12 14:04:02,961.961 INFO    ] ================================================
[2026-06-12 14:04:03,315.315 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 14:04:03
[2026-06-12 14:04:03,631.631 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 14:04:03,763.763 INFO    ] Initializing speech engine...
[2026-06-12 14:04:03,771.771 INFO    ] 2026-06-12 14:04:03
[2026-06-12 14:04:03,983.983 INFO    ] 2026-06-12 14:04:03
[2026-06-12 14:04:04,012.012 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 14:04:04,169.169 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 14:04:04,198.198 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 14:04:04,335.335 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 14:04:04,402.402 INFO    ] time= 12/06/2026 14:04:04
[2026-06-12 14:04:04,426.426 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 14:04:04,433.433 INFO    ] Checking for existing commands in stream...
[2026-06-12 14:04:04,499.499 INFO    ] No existing commands found in stream
[2026-06-12 14:04:09,508.508 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 14:04:09,511.511 INFO    ] Waiting 0.07 seconds before fallback handling...
[2026-06-12 14:04:09,902.902 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 14:04:09,903.903 INFO    ] Checking for system updates...
[2026-06-12 14:04:09,924.924 INFO    ] 200
[2026-06-12 14:04:09,926.926 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:04:09,956.956 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 14:04:09,958.958 INFO    ] No update needed
[2026-06-12 14:04:09,959.959 INFO    ] Checking for camera pi updates...
[2026-06-12 14:04:09,981.981 INFO    ] 200
[2026-06-12 14:04:09,982.982 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:04:10,006.006 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 14:04:10,156.156 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 14:04:10,158.158 INFO    ] No camera update needed
[2026-06-12 14:04:10,159.159 INFO    ] Script finished. Safe exiting...
[2026-06-12 14:04:10,160.160 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 14:04:10,163.163 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 14:04:10,166.166 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 14:04:12,205.205 INFO    ] ================================================
[2026-06-12 14:04:12,220.220 INFO    ] Launching Daemon at Fri Jun 12 14:04:12 IST 2026
[2026-06-12 14:04:12,232.232 INFO    ] ================================================
[2026-06-12 14:04:12,571.571 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 14:04:12
[2026-06-12 14:04:12,905.905 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 14:04:13,057.057 INFO    ] Initializing speech engine...
[2026-06-12 14:04:13,063.063 INFO    ] 2026-06-12 14:04:13
[2026-06-12 14:04:13,271.271 INFO    ] 2026-06-12 14:04:13
[2026-06-12 14:04:13,300.300 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 14:04:13,487.487 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 14:04:13,496.496 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 14:04:13,628.628 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 14:04:13,687.687 INFO    ] time= 12/06/2026 14:04:13
[2026-06-12 14:04:13,720.720 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 14:04:13,727.727 INFO    ] Checking for existing commands in stream...
[2026-06-12 14:04:13,794.794 INFO    ] No existing commands found in stream
[2026-06-12 14:04:18,819.819 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 14:04:18,822.822 INFO    ] Waiting 2.12 seconds before fallback handling...
[2026-06-12 14:04:21,293.293 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 14:04:21,295.295 INFO    ] Checking for system updates...
[2026-06-12 14:04:21,315.315 INFO    ] 200
[2026-06-12 14:04:21,316.316 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:04:21,348.348 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 14:04:21,350.350 INFO    ] No update needed
[2026-06-12 14:04:21,351.351 INFO    ] Checking for camera pi updates...
[2026-06-12 14:04:21,373.373 INFO    ] 200
[2026-06-12 14:04:21,374.374 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:04:21,397.397 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 14:04:21,440.440 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 14:04:21,442.442 INFO    ] No camera update needed
[2026-06-12 14:04:21,443.443 INFO    ] Script finished. Safe exiting...
[2026-06-12 14:04:21,445.445 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 14:04:21,448.448 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 14:04:21,451.451 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 14:04:23,490.490 INFO    ] ================================================
[2026-06-12 14:04:23,505.505 INFO    ] Launching Daemon at Fri Jun 12 14:04:23 IST 2026
[2026-06-12 14:04:23,516.516 INFO    ] ================================================
[2026-06-12 14:04:23,888.888 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 14:04:23
[2026-06-12 14:04:24,200.200 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 14:04:24,328.328 INFO    ] Initializing speech engine...
[2026-06-12 14:04:24,333.333 INFO    ] 2026-06-12 14:04:24
[2026-06-12 14:04:24,552.552 INFO    ] 2026-06-12 14:04:24
[2026-06-12 14:04:24,581.581 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 14:04:24,765.765 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 14:04:24,778.778 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 14:04:24,906.906 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 14:04:24,962.962 INFO    ] time= 12/06/2026 14:04:24
[2026-06-12 14:04:24,991.991 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 14:04:25,001.001 INFO    ] Checking for existing commands in stream...
[2026-06-12 14:04:25,073.073 INFO    ] No existing commands found in stream
[2026-06-12 14:04:30,082.082 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 14:04:30,085.085 INFO    ] Waiting 0.31 seconds before fallback handling...
[2026-06-12 14:04:30,786.786 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 14:04:30,787.787 INFO    ] Checking for system updates...
[2026-06-12 14:04:30,809.809 INFO    ] 200
[2026-06-12 14:04:30,810.810 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:04:30,840.840 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 14:04:30,842.842 INFO    ] No update needed
[2026-06-12 14:04:30,843.843 INFO    ] Checking for camera pi updates...
[2026-06-12 14:04:30,862.862 INFO    ] 200
[2026-06-12 14:04:30,864.864 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:04:30,886.886 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 14:04:30,940.940 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 14:04:30,941.941 INFO    ] No camera update needed
[2026-06-12 14:04:30,943.943 INFO    ] Script finished. Safe exiting...
[2026-06-12 14:04:30,944.944 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 14:04:30,947.947 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 14:04:30,950.950 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 14:04:32,983.983 INFO    ] ================================================
[2026-06-12 14:04:33,998.998 INFO    ] Launching Daemon at Fri Jun 12 14:04:32 IST 2026
[2026-06-12 14:04:33,009.009 INFO    ] ================================================
[2026-06-12 14:04:33,351.351 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 14:04:33
[2026-06-12 14:04:33,663.663 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 14:04:33,805.805 INFO    ] Initializing speech engine...
[2026-06-12 14:04:33,810.810 INFO    ] 2026-06-12 14:04:33
[2026-06-12 14:04:34,015.015 INFO    ] 2026-06-12 14:04:33
[2026-06-12 14:04:34,045.045 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 14:04:34,183.183 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 14:04:34,231.231 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 14:04:34,369.369 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 14:04:34,423.423 INFO    ] time= 12/06/2026 14:04:34
[2026-06-12 14:04:34,461.461 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 14:04:34,463.463 INFO    ] Checking for existing commands in stream...
[2026-06-12 14:04:34,535.535 INFO    ] No existing commands found in stream
[2026-06-12 14:04:39,544.544 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 14:04:39,547.547 INFO    ] Waiting 0.26 seconds before fallback handling...
[2026-06-12 14:04:40,165.165 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 14:04:40,166.166 INFO    ] Checking for system updates...
[2026-06-12 14:04:40,187.187 INFO    ] 200
[2026-06-12 14:04:40,188.188 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:04:40,223.223 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 14:04:40,224.224 INFO    ] No update needed
[2026-06-12 14:04:40,225.225 INFO    ] Checking for camera pi updates...
[2026-06-12 14:04:40,244.244 INFO    ] 200
[2026-06-12 14:04:40,245.245 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:04:40,270.270 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 14:04:40,314.314 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 14:04:40,316.316 INFO    ] No camera update needed
[2026-06-12 14:04:40,317.317 INFO    ] Script finished. Safe exiting...
[2026-06-12 14:04:40,318.318 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 14:04:40,321.321 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 14:04:40,324.324 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 14:04:42,363.363 INFO    ] ================================================
[2026-06-12 14:04:42,379.379 INFO    ] Launching Daemon at Fri Jun 12 14:04:42 IST 2026
[2026-06-12 14:04:42,391.391 INFO    ] ================================================
[2026-06-12 14:04:42,733.733 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 14:04:42
[2026-06-12 14:04:43,046.046 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 14:04:43,189.189 INFO    ] Initializing speech engine...
[2026-06-12 14:04:43,194.194 INFO    ] 2026-06-12 14:04:43
[2026-06-12 14:04:43,400.400 INFO    ] 2026-06-12 14:04:43
[2026-06-12 14:04:43,429.429 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 14:04:43,615.615 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 14:04:43,626.626 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 14:04:43,757.757 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 14:04:43,825.825 INFO    ] time= 12/06/2026 14:04:43
[2026-06-12 14:04:43,849.849 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 14:04:43,856.856 INFO    ] Checking for existing commands in stream...
[2026-06-12 14:04:43,922.922 INFO    ] No existing commands found in stream
[2026-06-12 14:04:48,933.933 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 14:04:48,935.935 INFO    ] Waiting 2.33 seconds before fallback handling...
[2026-06-12 14:04:51,628.628 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 14:04:51,629.629 INFO    ] Checking for system updates...
[2026-06-12 14:04:51,650.650 INFO    ] 200
[2026-06-12 14:04:51,651.651 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:04:51,680.680 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 14:04:51,682.682 INFO    ] No update needed
[2026-06-12 14:04:51,683.683 INFO    ] Checking for camera pi updates...
[2026-06-12 14:04:51,704.704 INFO    ] 200
[2026-06-12 14:04:51,706.706 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:04:51,728.728 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 14:04:51,794.794 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 14:04:51,796.796 INFO    ] No camera update needed
[2026-06-12 14:04:51,797.797 INFO    ] Script finished. Safe exiting...
[2026-06-12 14:04:51,798.798 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 14:04:51,802.802 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 14:04:51,804.804 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 14:04:53,844.844 INFO    ] ================================================
[2026-06-12 14:04:53,860.860 INFO    ] Launching Daemon at Fri Jun 12 14:04:53 IST 2026
[2026-06-12 14:04:53,872.872 INFO    ] ================================================
[2026-06-12 14:04:54,222.222 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 14:04:54
[2026-06-12 14:04:54,561.561 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 14:04:54,714.714 INFO    ] Initializing speech engine...
[2026-06-12 14:04:54,719.719 INFO    ] 2026-06-12 14:04:54
[2026-06-12 14:04:54,926.926 INFO    ] 2026-06-12 14:04:54
[2026-06-12 14:04:54,954.954 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 14:04:55,138.138 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 14:04:55,148.148 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 14:04:55,276.276 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 14:04:55,335.335 INFO    ] time= 12/06/2026 14:04:55
[2026-06-12 14:04:55,367.367 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 14:04:55,373.373 INFO    ] Checking for existing commands in stream...
[2026-06-12 14:04:55,463.463 INFO    ] No existing commands found in stream
[2026-06-12 14:05:00,472.472 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 14:05:00,475.475 INFO    ] Waiting 3.15 seconds before fallback handling...
[2026-06-12 14:05:03,997.997 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 14:05:03,998.998 INFO    ] Checking for system updates...
[2026-06-12 14:05:04,019.019 INFO    ] 200
[2026-06-12 14:05:04,021.021 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:05:04,053.053 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 14:05:04,055.055 INFO    ] No update needed
[2026-06-12 14:05:04,056.056 INFO    ] Checking for camera pi updates...
[2026-06-12 14:05:04,078.078 INFO    ] 200
[2026-06-12 14:05:04,080.080 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:05:04,104.104 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 14:05:04,147.147 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 14:05:04,148.148 INFO    ] No camera update needed
[2026-06-12 14:05:04,150.150 INFO    ] Script finished. Safe exiting...
[2026-06-12 14:05:04,151.151 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 14:05:04,154.154 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 14:05:04,157.157 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 14:05:06,196.196 INFO    ] ================================================
[2026-06-12 14:05:06,211.211 INFO    ] Launching Daemon at Fri Jun 12 14:05:06 IST 2026
[2026-06-12 14:05:06,223.223 INFO    ] ================================================
[2026-06-12 14:05:06,588.588 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 14:05:06
[2026-06-12 14:05:06,906.906 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 14:05:07,042.042 INFO    ] Initializing speech engine...
[2026-06-12 14:05:07,046.046 INFO    ] 2026-06-12 14:05:07
[2026-06-12 14:05:07,276.276 INFO    ] 2026-06-12 14:05:07
[2026-06-12 14:05:07,307.307 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 14:05:07,486.486 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 14:05:07,510.510 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 14:05:07,657.657 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 14:05:07,727.727 INFO    ] time= 12/06/2026 14:05:07
[2026-06-12 14:05:07,756.756 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 14:05:07,758.758 INFO    ] Checking for existing commands in stream...
[2026-06-12 14:05:07,833.833 INFO    ] No existing commands found in stream
[2026-06-12 14:05:12,844.844 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 14:05:12,846.846 INFO    ] Waiting 0.70 seconds before fallback handling...
[2026-06-12 14:05:13,919.919 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 14:05:13,921.921 INFO    ] Checking for system updates...
[2026-06-12 14:05:13,941.941 INFO    ] 200
[2026-06-12 14:05:13,943.943 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:05:13,974.974 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 14:05:13,975.975 INFO    ] No update needed
[2026-06-12 14:05:13,977.977 INFO    ] Checking for camera pi updates...
[2026-06-12 14:05:13,997.997 INFO    ] 200
[2026-06-12 14:05:13,998.998 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:05:14,021.021 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 14:05:14,064.064 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 14:05:14,066.066 INFO    ] No camera update needed
[2026-06-12 14:05:14,067.067 INFO    ] Script finished. Safe exiting...
[2026-06-12 14:05:14,068.068 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 14:05:14,071.071 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 14:05:14,074.074 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 14:05:16,112.112 INFO    ] ================================================
[2026-06-12 14:05:16,128.128 INFO    ] Launching Daemon at Fri Jun 12 14:05:16 IST 2026
[2026-06-12 14:05:16,138.138 INFO    ] ================================================
[2026-06-12 14:05:16,466.466 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 14:05:16
[2026-06-12 14:05:16,785.785 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 14:05:16,929.929 INFO    ] Initializing speech engine...
[2026-06-12 14:05:16,934.934 INFO    ] 2026-06-12 14:05:16
[2026-06-12 14:05:17,137.137 INFO    ] 2026-06-12 14:05:17
[2026-06-12 14:05:17,167.167 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 14:05:17,351.351 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 14:05:17,360.360 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 14:05:17,499.499 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 14:05:17,546.546 INFO    ] time= 12/06/2026 14:05:17
[2026-06-12 14:05:17,589.589 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 14:05:17,618.618 INFO    ] Checking for existing commands in stream...
[2026-06-12 14:05:17,735.735 INFO    ] No existing commands found in stream
[2026-06-12 14:05:22,746.746 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 14:05:22,749.749 INFO    ] Waiting 1.08 seconds before fallback handling...
[2026-06-12 14:05:24,122.122 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 14:05:24,123.123 INFO    ] Checking for system updates...
[2026-06-12 14:05:24,143.143 INFO    ] 200
[2026-06-12 14:05:24,145.145 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:05:24,174.174 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 14:05:24,176.176 INFO    ] No update needed
[2026-06-12 14:05:24,177.177 INFO    ] Checking for camera pi updates...
[2026-06-12 14:05:24,196.196 INFO    ] 200
[2026-06-12 14:05:24,197.197 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:05:24,220.220 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 14:05:24,281.281 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 14:05:24,282.282 INFO    ] No camera update needed
[2026-06-12 14:05:24,284.284 INFO    ] Script finished. Safe exiting...
[2026-06-12 14:05:24,285.285 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 14:05:24,288.288 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 14:05:24,291.291 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 14:05:26,328.328 INFO    ] ================================================
[2026-06-12 14:05:26,343.343 INFO    ] Launching Daemon at Fri Jun 12 14:05:26 IST 2026
[2026-06-12 14:05:26,354.354 INFO    ] ================================================
[2026-06-12 14:05:26,696.696 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 14:05:26
[2026-06-12 14:05:27,009.009 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 14:05:27,146.146 INFO    ] Initializing speech engine...
[2026-06-12 14:05:27,155.155 INFO    ] 2026-06-12 14:05:27
[2026-06-12 14:05:27,359.359 INFO    ] 2026-06-12 14:05:27
[2026-06-12 14:05:27,388.388 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 14:05:27,571.571 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 14:05:27,574.574 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 14:05:27,707.707 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 14:05:27,769.769 INFO    ] time= 12/06/2026 14:05:27
[2026-06-12 14:05:27,801.801 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 14:05:27,803.803 INFO    ] Checking for existing commands in stream...
[2026-06-12 14:05:27,875.875 INFO    ] No existing commands found in stream
[2026-06-12 14:05:32,884.884 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 14:05:32,887.887 INFO    ] Waiting 0.45 seconds before fallback handling...
[2026-06-12 14:05:33,656.656 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 14:05:33,658.658 INFO    ] Checking for system updates...
[2026-06-12 14:05:33,679.679 INFO    ] 200
[2026-06-12 14:05:33,681.681 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:05:33,713.713 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 14:05:33,714.714 INFO    ] No update needed
[2026-06-12 14:05:33,715.715 INFO    ] Checking for camera pi updates...
[2026-06-12 14:05:33,734.734 INFO    ] 200
[2026-06-12 14:05:33,735.735 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:05:33,761.761 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 14:05:33,807.807 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 14:05:33,808.808 INFO    ] No camera update needed
[2026-06-12 14:05:33,809.809 INFO    ] Script finished. Safe exiting...
[2026-06-12 14:05:33,811.811 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 14:05:33,814.814 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 14:05:33,816.816 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 14:05:35,855.855 INFO    ] ================================================
[2026-06-12 14:05:35,870.870 INFO    ] Launching Daemon at Fri Jun 12 14:05:35 IST 2026
[2026-06-12 14:05:35,882.882 INFO    ] ================================================
[2026-06-12 14:05:36,255.255 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 14:05:36
[2026-06-12 14:05:36,596.596 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 14:05:36,748.748 INFO    ] Initializing speech engine...
[2026-06-12 14:05:36,752.752 INFO    ] 2026-06-12 14:05:36
[2026-06-12 14:05:36,965.965 INFO    ] 2026-06-12 14:05:36
[2026-06-12 14:05:36,995.995 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 14:05:37,178.178 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 14:05:37,182.182 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 14:05:37,328.328 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 14:05:37,386.386 INFO    ] time= 12/06/2026 14:05:37
[2026-06-12 14:05:37,409.409 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 14:05:37,415.415 INFO    ] Checking for existing commands in stream...
[2026-06-12 14:05:37,481.481 INFO    ] No existing commands found in stream
[2026-06-12 14:05:42,491.491 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 14:05:42,494.494 INFO    ] Waiting 0.31 seconds before fallback handling...
[2026-06-12 14:05:43,177.177 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 14:05:43,179.179 INFO    ] Checking for system updates...
[2026-06-12 14:05:43,201.201 INFO    ] 200
[2026-06-12 14:05:43,202.202 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:05:43,234.234 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 14:05:43,236.236 INFO    ] No update needed
[2026-06-12 14:05:43,237.237 INFO    ] Checking for camera pi updates...
[2026-06-12 14:05:43,256.256 INFO    ] 200
[2026-06-12 14:05:43,258.258 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:05:43,281.281 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 14:05:43,325.325 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 14:05:43,327.327 INFO    ] No camera update needed
[2026-06-12 14:05:43,328.328 INFO    ] Script finished. Safe exiting...
[2026-06-12 14:05:43,329.329 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 14:05:43,332.332 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 14:05:43,335.335 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 14:05:45,374.374 INFO    ] ================================================
[2026-06-12 14:05:45,390.390 INFO    ] Launching Daemon at Fri Jun 12 14:05:45 IST 2026
[2026-06-12 14:05:45,401.401 INFO    ] ================================================
[2026-06-12 14:05:45,744.744 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 14:05:45
[2026-06-12 14:05:46,059.059 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 14:05:46,203.203 INFO    ] Initializing speech engine...
[2026-06-12 14:05:46,208.208 INFO    ] 2026-06-12 14:05:46
[2026-06-12 14:05:46,411.411 INFO    ] 2026-06-12 14:05:46
[2026-06-12 14:05:46,439.439 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 14:05:46,624.624 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 14:05:46,633.633 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 14:05:46,761.761 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 14:05:46,827.827 INFO    ] time= 12/06/2026 14:05:46
[2026-06-12 14:05:46,851.851 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 14:05:46,857.857 INFO    ] Checking for existing commands in stream...
[2026-06-12 14:05:46,923.923 INFO    ] No existing commands found in stream
[2026-06-12 14:05:51,937.937 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 14:05:51,940.940 INFO    ] Waiting 3.22 seconds before fallback handling...
[2026-06-12 14:05:55,521.521 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 14:05:55,522.522 INFO    ] Checking for system updates...
[2026-06-12 14:05:55,542.542 INFO    ] 200
[2026-06-12 14:05:55,543.543 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:05:55,573.573 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 14:05:55,574.574 INFO    ] No update needed
[2026-06-12 14:05:55,575.575 INFO    ] Checking for camera pi updates...
[2026-06-12 14:05:55,598.598 INFO    ] 200
[2026-06-12 14:05:55,599.599 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:05:55,622.622 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 14:05:55,667.667 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 14:05:55,669.669 INFO    ] No camera update needed
[2026-06-12 14:05:55,670.670 INFO    ] Script finished. Safe exiting...
[2026-06-12 14:05:55,671.671 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 14:05:55,674.674 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 14:05:55,677.677 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 14:05:57,716.716 INFO    ] ================================================
[2026-06-12 14:05:57,731.731 INFO    ] Launching Daemon at Fri Jun 12 14:05:57 IST 2026
[2026-06-12 14:05:57,743.743 INFO    ] ================================================
[2026-06-12 14:05:58,132.132 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 14:05:58
[2026-06-12 14:05:58,466.466 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 14:05:58,621.621 INFO    ] Initializing speech engine...
[2026-06-12 14:05:58,627.627 INFO    ] 2026-06-12 14:05:58
[2026-06-12 14:05:58,830.830 INFO    ] 2026-06-12 14:05:58
[2026-06-12 14:05:58,859.859 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 14:05:59,043.043 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 14:05:59,053.053 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 14:05:59,179.179 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 14:05:59,233.233 INFO    ] time= 12/06/2026 14:05:59
[2026-06-12 14:05:59,267.267 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 14:05:59,272.272 INFO    ] Checking for existing commands in stream...
[2026-06-12 14:05:59,344.344 INFO    ] Found 1 existing command(s) in stream
[2026-06-12 14:05:59,361.361 INFO    ] Checking historical command: ID=1781253354640-0
[2026-06-12 14:05:59,371.371 INFO    ] process_and_cleanup_command: msg_id=1781253354640-0
[2026-06-12 14:05:59,372.372 INFO    ] is_command_expired: timestamp=2026-06-12T08:35:54.514Z, expiry=30s
[2026-06-12 14:05:59,480.480 INFO    ] Command removed from stream: 1781253354640-0. returning for processing...
[2026-06-12 14:05:59,483.483 INFO    ] ***** get_valid_command
[2026-06-12 14:05:59,486.486 INFO    ] {'source': 'webapp', 'command': 'start-order', 'timestamp': '2026-06-12T08:35:54.514Z', 'timeout': '10', 'data': '{"request_id":"start-order-1781253354514-ve4rfctju","orderId":"TM09202301260612140508315","is_vending":false}'}
[2026-06-12 14:05:59,492.492 INFO    ] ***** Parsed command data: {'orderId': 'TM09202301260612140508315', 'request_id': 'start-order-1781253354514-ve4rfctju', 'is_vending': False}
[2026-06-12 14:05:59,496.496 INFO    ] Handling start order...
[2026-06-12 14:05:59,499.499 INFO    ] handle_start_order_command
[2026-06-12 14:05:59,505.505 INFO    ] _send_start_order_success: request_id=start-order-1781253354514-ve4rfctju, order_id=TM09202301260612140508315
[2026-06-12 14:05:59,508.508 INFO    ] [_send_start_order_success] Adding message to stream: machine:TM09202301
[2026-06-12 14:05:59,564.564 INFO    ] [_send_start_order_success] Message added to stream with ID: 1781253359612-0
[2026-06-12 14:05:59,568.568 INFO    ] ✅ Start-order command succeeded - order locked, waiting for process-order command
[2026-06-12 14:05:59,571.571 INFO    ] Checking for system updates...
[2026-06-12 14:05:59,602.602 INFO    ] 200
[2026-06-12 14:05:59,606.606 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:05:59,642.642 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 14:05:59,644.644 INFO    ] No update needed
[2026-06-12 14:05:59,645.645 INFO    ] Checking for camera pi updates...
[2026-06-12 14:05:59,708.708 INFO    ] 200
[2026-06-12 14:05:59,711.711 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:05:59,765.765 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 14:05:59,839.839 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 14:05:59,842.842 INFO    ] No camera update needed
[2026-06-12 14:05:59,845.845 INFO    ] Script finished. Safe exiting...
[2026-06-12 14:05:59,849.849 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 14:05:59,856.856 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 14:05:59,862.862 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-06-12 14:05:59,868.868 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 14:06:01,901.901 INFO    ] ================================================
[2026-06-12 14:06:01,910.910 INFO    ] Launching Daemon at Fri Jun 12 14:06:01 IST 2026
[2026-06-12 14:06:01,917.917 INFO    ] ================================================
[2026-06-12 14:06:02,250.250 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 14:06:02
[2026-06-12 14:06:02,562.562 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 14:06:02,693.693 INFO    ] Initializing speech engine...
[2026-06-12 14:06:02,696.696 INFO    ] 2026-06-12 14:06:02
[2026-06-12 14:06:02,912.912 INFO    ] 2026-06-12 14:06:02
[2026-06-12 14:06:02,941.941 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 14:06:03,065.065 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 14:06:03,129.129 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 14:06:03,260.260 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 14:06:03,321.321 INFO    ] time= 12/06/2026 14:06:03
[2026-06-12 14:06:03,352.352 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 14:06:03,363.363 INFO    ] Checking for existing commands in stream...
[2026-06-12 14:06:03,437.437 INFO    ] Found 2 existing command(s) in stream
[2026-06-12 14:06:03,439.439 INFO    ] Checking historical command: ID=1781253359612-0
[2026-06-12 14:06:03,464.464 INFO    ] process_and_cleanup_command: msg_id=1781253359612-0
[2026-06-12 14:06:03,466.466 INFO    ] is_command_expired: timestamp=2026-06-12T08:35:59.506633Z, expiry=30s
[2026-06-12 14:06:03,579.579 INFO    ] Command removed from stream: 1781253359612-0. returning for processing...
[2026-06-12 14:06:03,582.582 INFO    ] ***** get_valid_command
[2026-06-12 14:06:03,587.587 INFO    ] {'metadata_request_id': 'start-order-1781253354514-ve4rfctju', 'message_type': 'command_response', 'metadata_order_id': 'TM09202301260612140508315', 'timestamp': '2026-06-12T08:35:59.506633Z', 'status': 'success', 'imei': 'TM09202301', 'message': 'start-order success'}
[2026-06-12 14:06:03,590.590 INFO    ] Checking historical command: ID=1781253360877-0
[2026-06-12 14:06:03,593.593 INFO    ] process_and_cleanup_command: msg_id=1781253360877-0
[2026-06-12 14:06:03,596.596 INFO    ] is_command_expired: timestamp=2026-06-12T08:36:00.578Z, expiry=30s
[2026-06-12 14:06:03,642.642 INFO    ] Command removed from stream: 1781253360877-0. returning for processing...
[2026-06-12 14:06:03,646.646 INFO    ] ***** get_valid_command
[2026-06-12 14:06:03,648.648 INFO    ] {'command': 'process-order', 'timeout': '60', 'data': '{"request_id":"process-order-1781253360577-9ljj9w6ho","orderId":"TM09202301260612140508315","is_vending":false,"accessCode":"78594710"}', 'source': 'webapp', 'timestamp': '2026-06-12T08:36:00.578Z'}
[2026-06-12 14:06:03,651.651 INFO    ] ***** Parsed command data: {'orderId': 'TM09202301260612140508315', 'is_vending': False, 'accessCode': '78594710', 'request_id': 'process-order-1781253360577-9ljj9w6ho'}
[2026-06-12 14:06:03,654.654 INFO    ] Handling process order...
[2026-06-12 14:06:03,657.657 INFO    ] Processing process-order command...
[2026-06-12 14:06:03,661.661 INFO    ] 🔍 Lock file Order ID: TM09202301260612140508315, TS: 2026-06-12 14:05:59
[2026-06-12 14:06:03,669.669 INFO    ] ✅ Order lock valid for TM09202301260612140508315
[2026-06-12 14:06:03,672.672 INFO    ] Received access code in process-order, skipping PHP API call
[2026-06-12 14:06:03,676.676 INFO    ] processing access code 78594710 for order TM09202301260612140508315
[2026-06-12 14:06:03,680.680 INFO    ] 🔍 Lock file Order ID: TM09202301260612140508315, TS: 2026-06-12 14:05:59
[2026-06-12 14:06:03,683.683 INFO    ] ✅ Order lock valid for TM09202301260612140508315
[2026-06-12 14:06:03,685.685 INFO    ] 2026-06-12 14:06:03
[2026-06-12 14:06:03,717.717 INFO    ] 200
[2026-06-12 14:06:03,720.720 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:06:03,725.725 INFO    ] 78594710
[2026-06-12 14:06:03,729.729 INFO    ] 2026-06-12 14:06:03
[2026-06-12 14:06:03,734.734 INFO    ] session id :366260299
[2026-06-12 14:06:03,738.738 INFO    ] http://localhost:5000/v2/getOrderByAccessCode?access_code=78594710&imei=TM09202301&session_id=366260299
[2026-06-12 14:06:04,407.407 INFO    ] 200
[2026-06-12 14:06:04,433.433 INFO    ] {"status": true, "msg": "Order Data", "data": {"bill_amount": "20", "access_code": "78594710", "order_id": "TM09202301260612140508315", "mobile": "7384700684", "proposed_sku_json": [{"unit_price": 10, "qty": 2, "skuid": "4500688", "offer_desc": "", "offer_id": "", "door_id": "1", "tray_id": "13", "sku_total": 20, "mrp": "10", "image_url": "https://images.tinymart.in/product/4500688-125.webp", "name": "Modern Kitchens Potato waffers Cream onion 24gm"}], "invoice_bill": "20"}, "rstatus": true}
[2026-06-12 14:06:04,442.442 INFO    ] 20
[2026-06-12 14:06:04,447.447 INFO    ] TM09202301260612140508315
[2026-06-12 14:06:04,455.455 INFO    ] 7384700684
[2026-06-12 14:06:04,459.459 INFO    ] 2026-06-12 14:06:04
[2026-06-12 14:06:04,466.466 INFO    ] Door Opening for user mobile ending with  zero six eight four 
[2026-06-12 14:06:04,467.467 INFO    ] Door Opening for user mobile ending with  zero six eight four 
[2026-06-12 14:06:04,469.469 INFO    ] 7dbcd2c13a570b8f154f7c8d4f145368
[2026-06-12 14:06:04,475.475 INFO    ] 2026-06-12 14:06:04
[2026-06-12 14:06:04,476.476 INFO    ] creating audio file
[2026-06-12 14:06:04,524.524 INFO    ] Calling gTTS API with 60s timeout...
[2026-06-12 14:06:05,121.121 INFO    ] gTTS API call completed successfully
[2026-06-12 14:06:07,048.048 INFO    ] 2026-06-12 14:06:07
[2026-06-12 14:06:07,049.049 INFO    ] playing audio file
[2026-06-12 14:06:07,059.059 INFO    ] 2026-06-12 14:06:07
[2026-06-12 14:06:07,061.061 INFO    ] 2026-06-12 14:06:07
[2026-06-12 14:06:07,063.063 INFO    ] publish_status: order_id=TM09202301260612140508315
[2026-06-12 14:06:07,064.064 INFO    ] [publish_status] Adding message to stream: order:TM09202301260612140508315
[2026-06-12 14:06:07,147.147 INFO    ] [publish_status] Message added to stream with ID: 1781253367196-0
[2026-06-12 14:06:07,148.148 INFO    ] Published to order:TM09202301260612140508315: {'server_response': '{"status": true, "rstatus": true, "data": {"bill_amount": "20", "mobile": "7384700684", "order_id": "TM09202301260612140508315", "invoice_bill": "20", "proposed_sku_json": [{"sku_total": 20, "offer_id": "", "name": "Modern Kitchens Potato waffers Cream onion 24gm", "door_id": "1", "skuid": "4500688", "image_url": "https://images.tinymart.in/product/4500688-125.webp", "offer_desc": "", "mrp": "10", "unit_price": 10, "qty": 2, "tray_id": "13"}], "access_code": "78594710"}, "msg": "Order Data"}', 'server_status': 'order-started', 'order_id': 'TM09202301260612140508315', 'timestamp': '2026-06-12T08:36:07.062127Z'} (ID: 1781253367196-0)
[2026-06-12 14:06:07,482.482 INFO    ] {'server_response': {'status': True, 'rstatus': True, 'data': {'bill_amount': '20', 'mobile': '7384700684', 'order_id': 'TM09202301260612140508315', 'invoice_bill': '20', 'proposed_sku_json': [{'sku_total': 20, 'offer_id': '', 'name': 'Modern Kitchens Potato waffers Cream onion 24gm', 'door_id': '1', 'skuid': '4500688', 'image_url': 'https://images.tinymart.in/product/4500688-125.webp', 'offer_desc': '', 'mrp': '10', 'unit_price': 10, 'qty': 2, 'tray_id': '13'}], 'access_code': '78594710'}, 'msg': 'Order Data'}, 'server_status': 'order-started', 'order_id': 'TM09202301260612140508315'}
[2026-06-12 14:06:07,484.484 INFO    ] 200
[2026-06-12 14:06:07,487.487 INFO    ] {"data":{"server_response":{"status":true,"rstatus":true,"data":{"bill_amount":"20","mobile":"7384700684","order_id":"TM09202301260612140508315","invoice_bill":"20","proposed_sku_json":[{"sku_total":20,"offer_id":"","name":"Modern Kitchens Potato waffers Cream onion 24gm","door_id":"1","skuid":"4500688","image_url":"https:\/\/images.tinymart.in\/product\/4500688-125.webp","offer_desc":"","mrp":"10","unit_price":10,"qty":2,"tray_id":"13"}],"access_code":"78594710"},"msg":"Order Data"},"server_status":"order-started","order_id":"TM09202301260612140508315"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-12 14:06:07,489.489 INFO    ] {'response': {'status': True, 'data': 'order updated successfully', 'code': 'ORDER_EXISTS', 'msg': 'order updated successfully'}, 'data': {'server_response': {'status': True, 'msg': 'Order Data', 'data': {'bill_amount': '20', 'mobile': '7384700684', 'order_id': 'TM09202301260612140508315', 'invoice_bill': '20', 'proposed_sku_json': [{'image_url': 'https://images.tinymart.in/product/4500688-125.webp', 'offer_id': '', 'name': 'Modern Kitchens Potato waffers Cream onion 24gm', 'skuid': '4500688', 'tray_id': '13', 'sku_total': 20, 'qty': 2, 'mrp': '10', 'door_id': '1', 'unit_price': 10, 'offer_desc': ''}], 'access_code': '78594710'}, 'rstatus': True}, 'server_status': 'order-started', 'order_id': 'TM09202301260612140508315'}}
[2026-06-12 14:06:07,492.492 INFO    ] 2026-06-12 14:06:07
[2026-06-12 14:06:07,538.538 INFO    ] 200
[2026-06-12 14:06:07,541.541 INFO    ] True
[2026-06-12 14:06:07,668.668 INFO    ] 200
[2026-06-12 14:06:07,670.670 INFO    ] {"error": {"tmessage": "In Progress", "umessage": "In Progress", "data": {}, "code": 20001}, "SectionSKU": {"Header": "Thank you for bearing with us :)", "skus": []}, "rstatus": false, "SectionStatus": {"Header": " Your order is under process  ", "SubHeader": "Please wait while we process your order", "UI_Header": "", "Note": ""}, "status": "False", "voiceNote": "Please Wait", "SectionMain": {"Header": "Processing Order"}}
[2026-06-12 14:06:07,672.672 INFO    ] {'SectionSKU': {'skus': [], 'Header': 'Thank you for bearing with us :)'}, 'voiceNote': 'Please Wait', 'status': 'False', 'error': {'tmessage': 'In Progress', 'code': 20001, 'umessage': 'In Progress', 'data': {}}, 'SectionStatus': {'Note': '', 'SubHeader': 'Please wait while we process your order', 'UI_Header': '', 'Header': ' Your order is under process  '}, 'SectionMain': {'Header': 'Processing Order'}, 'rstatus': False}
[2026-06-12 14:06:07,673.673 INFO    ] *** process_order ***
[2026-06-12 14:06:08,806.806 INFO    ] 200
[2026-06-12 14:06:08,808.808 INFO    ] {"delay": 0, "SectionSKU": {"Header": "Thank you for bearing with us :)", "skus": []}, "rstatus": true, "SectionStatus": {"Header": " Your order is under process  ", "SubHeader": "Please wait while we process your order", "UI_Header": "", "Note": ""}, "status": "True", "voiceNote": "Please Wait", "SectionMain": {"Header": "Processing Order"}}
[2026-06-12 14:06:08,809.809 INFO    ] {'SectionSKU': {'skus': [], 'Header': 'Thank you for bearing with us :)'}, 'voiceNote': 'Please Wait', 'status': 'True', 'delay': 0, 'SectionMain': {'Header': 'Processing Order'}, 'SectionStatus': {'Note': '', 'SubHeader': 'Please wait while we process your order', 'UI_Header': '', 'Header': ' Your order is under process  '}, 'rstatus': True}
[2026-06-12 14:06:08,810.810 INFO    ] *** process_order ***
[2026-06-12 14:06:08,812.812 INFO    ] publish_status: order_id=TM09202301260612140508315
[2026-06-12 14:06:08,813.813 INFO    ] [publish_status] Adding message to stream: order:TM09202301260612140508315
[2026-06-12 14:06:08,894.894 INFO    ] [publish_status] Message added to stream with ID: 1781253368943-0
[2026-06-12 14:06:08,896.896 INFO    ] Published to order:TM09202301260612140508315: {'server_response': '{"SectionSKU": {"skus": [], "Header": "Thank you for bearing with us :)"}, "voiceNote": "Door is open...", "status": "True", "delay": 0, "SectionMain": {"Header": "Processing Order"}, "SectionStatus": {"Note": "", "SubHeader": "You can pull the door now.", "UI_Header": "", "Header": " Your order is under process  "}, "rstatus": true}', 'server_status': 'doorOpened', 'order_id': 'TM09202301260612140508315'} (ID: 1781253368943-0)
[2026-06-12 14:06:09,945.945 INFO    ] 2026-06-12 14:06:09
[2026-06-12 14:06:09,952.952 INFO    ] publish_status: order_id=TM09202301260612140508315
[2026-06-12 14:06:09,955.955 INFO    ] [publish_status] Adding message to stream: order:TM09202301260612140508315
[2026-06-12 14:06:10,047.047 INFO    ] [publish_status] Message added to stream with ID: 1781253370095-0
[2026-06-12 14:06:10,050.050 INFO    ] Published to order:TM09202301260612140508315: {'server_response': '{"SectionSKU": {"skus": [], "Header": "Thank you for bearing with us :)"}, "voiceNote": "Please Wait", "status": "True", "delay": 0, "SectionMain": {"Header": "Processing Order"}, "SectionStatus": {"Note": "", "SubHeader": "Please wait while we process your order", "UI_Header": "", "Header": " Your order is under process  "}, "rstatus": true}', 'server_status': 'processOrder', 'order_id': 'TM09202301260612140508315', 'timestamp': '2026-06-12T08:36:09.948568Z'} (ID: 1781253370095-0)
[2026-06-12 14:06:10,172.172 INFO    ] {'server_response': {'SectionSKU': {'skus': [], 'Header': 'Thank you for bearing with us :)'}, 'voiceNote': 'Please Wait', 'status': 'True', 'delay': 0, 'SectionMain': {'Header': 'Processing Order'}, 'SectionStatus': {'Note': '', 'SubHeader': 'Please wait while we process your order', 'UI_Header': '', 'Header': ' Your order is under process  '}, 'rstatus': True}, 'server_status': 'processOrder', 'order_id': 'TM09202301260612140508315'}
[2026-06-12 14:06:10,173.173 INFO    ] 200
[2026-06-12 14:06:10,175.175 INFO    ] {"data":{"server_response":{"SectionSKU":{"skus":[],"Header":"Thank you for bearing with us :)"},"voiceNote":"Please Wait","status":"true","delay":0,"SectionMain":{"Header":"Processing Order"},"SectionStatus":{"Note":"","SubHeader":"Please wait while we process your order","UI_Header":"","Header":" Your order is under process  "},"rstatus":true},"server_status":"processOrder","order_id":"TM09202301260612140508315"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-12 14:06:10,176.176 INFO    ] {'response': {'status': True, 'data': 'order updated successfully', 'code': 'ORDER_EXISTS', 'msg': 'order updated successfully'}, 'data': {'server_response': {'SectionSKU': {'Header': 'Thank you for bearing with us :)', 'skus': []}, 'voiceNote': 'Please Wait', 'status': 'true', 'delay': 0, 'SectionMain': {'Header': 'Processing Order'}, 'SectionStatus': {'Note': '', 'Header': ' Your order is under process  ', 'UI_Header': '', 'SubHeader': 'Please wait while we process your order'}, 'rstatus': True}, 'server_status': 'processOrder', 'order_id': 'TM09202301260612140508315'}}
[2026-06-12 14:06:10,178.178 INFO    ] 2026-06-12 14:06:10
[2026-06-12 14:06:10,180.180 INFO    ] None
[2026-06-12 14:06:10,181.181 INFO    ] Opening Door now
[2026-06-12 14:06:10,182.182 INFO    ] Opening Door now
[2026-06-12 14:06:10,183.183 INFO    ] 08e5d1063504bf393c26f0bfa436e9f9
[2026-06-12 14:06:10,185.185 INFO    ] 2026-06-12 14:06:10
[2026-06-12 14:06:10,186.186 INFO    ] playing audio file
[2026-06-12 14:06:10,196.196 INFO    ] 2026-06-12 14:06:10
[2026-06-12 14:06:10,198.198 INFO    ] 2026-06-12 14:06:10
[2026-06-12 14:06:13,234.234 INFO    ] 200
[2026-06-12 14:06:13,235.235 INFO    ] {"error": {"tmessage": "In Progress", "umessage": "In Progress", "data": {}, "code": 20001}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"name": "Modern Kitchens Potato waffers Cream onion 24gm", "qty": 2}]}, "rstatus": false, "SectionStatus": {"Header": "Please Close Door 1", "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"}, "status": "False", "voiceNote": "Door 1 is open now", "SectionMain": {"Header": "Door Open"}}
[2026-06-12 14:06:13,237.237 INFO    ] {'SectionSKU': {'skus': [{'name': 'Modern Kitchens Potato waffers Cream onion 24gm', 'qty': 2}], 'Header': 'Pick the below items from the door'}, 'voiceNote': 'Door 1 is open now', 'status': 'False', 'error': {'tmessage': 'In Progress', 'code': 20001, 'umessage': 'In Progress', 'data': {}}, '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'}, 'SectionMain': {'Header': 'Door Open'}, 'rstatus': False}
[2026-06-12 14:06:16,271.271 INFO    ] 200
[2026-06-12 14:06:16,272.272 INFO    ] {"error": {"tmessage": "In Progress", "umessage": "In Progress", "data": {}, "code": 20001}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"name": "Modern Kitchens Potato waffers Cream onion 24gm", "qty": 2}]}, "rstatus": false, "SectionStatus": {"Header": "Please Close Door 1", "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"}, "status": "False", "voiceNote": "Please close door 1", "SectionMain": {"Header": "Door Open"}}
[2026-06-12 14:06:16,274.274 INFO    ] {'SectionSKU': {'skus': [{'name': 'Modern Kitchens Potato waffers Cream onion 24gm', 'qty': 2}], 'Header': 'Pick the below items from the door'}, 'voiceNote': 'Please close door 1', 'status': 'False', 'error': {'tmessage': 'In Progress', 'code': 20001, 'umessage': 'In Progress', 'data': {}}, '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'}, 'SectionMain': {'Header': 'Door Open'}, 'rstatus': False}
[2026-06-12 14:06:19,317.317 INFO    ] 200
[2026-06-12 14:06:19,319.319 INFO    ] {"error": {"tmessage": "In Progress", "umessage": "In Progress", "data": {}, "code": 20001}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"name": "Modern Kitchens Potato waffers Cream onion 24gm", "qty": 2}]}, "rstatus": false, "SectionStatus": {"Header": "Please Close Door 1", "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"}, "status": "False", "voiceNote": "Please close door 1", "SectionMain": {"Header": "Door Open"}}
[2026-06-12 14:06:19,321.321 INFO    ] Please close door 1
[2026-06-12 14:06:19,323.323 INFO    ] Please close door 1
[2026-06-12 14:06:19,325.325 INFO    ] 787c302d53ab591e55c034b99c7aadd2
[2026-06-12 14:06:19,326.326 INFO    ] 2026-06-12 14:06:19
[2026-06-12 14:06:19,328.328 INFO    ] playing audio file
[2026-06-12 14:06:19,338.338 INFO    ] 2026-06-12 14:06:19
[2026-06-12 14:06:19,340.340 INFO    ] publish_status: order_id=TM09202301260612140508315
[2026-06-12 14:06:19,342.342 INFO    ] [publish_status] Adding message to stream: order:TM09202301260612140508315
[2026-06-12 14:06:19,410.410 INFO    ] [publish_status] Message added to stream with ID: 1781253379458-0
[2026-06-12 14:06:19,411.411 INFO    ] Published to order:TM09202301260612140508315: {'server_response': '{"SectionSKU": {"skus": [{"name": "Modern Kitchens Potato waffers Cream onion 24gm", "qty": 2}], "Header": "Pick the below items from the door"}, "voiceNote": "Please close door 1", "status": "False", "error": {"tmessage": "In Progress", "code": 20001, "umessage": "In Progress", "data": {}}, "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"}, "SectionMain": {"Header": "Door Open"}, "rstatus": false}', 'server_status': 'OrderStatus', 'order_id': 'TM09202301260612140508315', 'timestamp': '2026-06-12T08:36:19.339191Z'} (ID: 1781253379458-0)
[2026-06-12 14:06:19,810.810 INFO    ] {'server_response': {'SectionSKU': {'skus': [{'name': 'Modern Kitchens Potato waffers Cream onion 24gm', 'qty': 2}], 'Header': 'Pick the below items from the door'}, 'voiceNote': 'Please close door 1', 'status': 'False', 'error': {'tmessage': 'In Progress', 'code': 20001, 'umessage': 'In Progress', 'data': {}}, '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'}, 'SectionMain': {'Header': 'Door Open'}, 'rstatus': False}, 'server_status': 'OrderStatus', 'order_id': 'TM09202301260612140508315'}
[2026-06-12 14:06:19,812.812 INFO    ] 200
[2026-06-12 14:06:19,813.813 INFO    ] {"data":{"server_response":{"SectionSKU":{"skus":[{"name":"Modern Kitchens Potato waffers Cream onion 24gm","qty":2}],"Header":"Pick the below items from the door"},"voiceNote":"Please close door 1","status":"false","error":{"tmessage":"In Progress","code":20001,"umessage":"In Progress","data":[]},"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"},"SectionMain":{"Header":"Door Open"},"rstatus":false},"server_status":"OrderStatus","order_id":"TM09202301260612140508315"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-12 14:06:19,815.815 INFO    ] {'response': {'status': True, 'data': 'order updated successfully', 'code': 'ORDER_EXISTS', 'msg': 'order updated successfully'}, 'data': {'server_response': {'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'Modern Kitchens Potato waffers Cream onion 24gm', 'qty': 2}]}, 'voiceNote': 'Please close door 1', 'status': 'false', 'error': {'tmessage': 'In Progress', 'data': [], 'umessage': 'In Progress', 'code': 20001}, 'SectionStatus': {'Note': 'Please Close the door after picking up products', 'Header': 'Please Close Door 1', 'UI_Header': 'DOOR 1\nIS \nOPEN \nNOW', 'SubHeader': 'Please Pick the Products and close the door'}, 'SectionMain': {'Header': 'Door Open'}, 'rstatus': False}, 'server_status': 'OrderStatus', 'order_id': 'TM09202301260612140508315'}}
[2026-06-12 14:06:19,817.817 INFO    ] {'SectionSKU': {'skus': [{'name': 'Modern Kitchens Potato waffers Cream onion 24gm', 'qty': 2}], 'Header': 'Pick the below items from the door'}, 'voiceNote': 'Please close door 1', 'status': 'False', 'error': {'tmessage': 'In Progress', 'code': 20001, 'umessage': 'In Progress', 'data': {}}, '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'}, 'SectionMain': {'Header': 'Door Open'}, 'rstatus': False}
[2026-06-12 14:06:22,873.873 INFO    ] 200
[2026-06-12 14:06:22,875.875 INFO    ] {"error": {"tmessage": "In Progress", "umessage": "In Progress", "data": {}, "code": 20001}, "delay": 1000, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"name": "Modern Kitchens Potato waffers Cream onion 24gm", "qty": 2}]}, "rstatus": false, "SectionStatus": {"Header": "Door 1 is closed now", "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"}, "status": "False", "voiceNote": "Door 1 is closed now", "SectionMain": {"Header": "Door Close"}}
[2026-06-12 14:06:22,879.879 INFO    ] {'SectionSKU': {'skus': [{'name': 'Modern Kitchens Potato waffers Cream onion 24gm', 'qty': 2}], 'Header': 'Pick the below items from the door'}, 'voiceNote': 'Door 1 is closed now', 'status': 'False', 'delay': 1000, 'error': {'tmessage': 'In Progress', 'code': 20001, 'umessage': 'In Progress', 'data': {}}, 'SectionStatus': {'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', 'Header': 'Door 1 is closed now'}, 'SectionMain': {'Header': 'Door Close'}, 'rstatus': False}
[2026-06-12 14:06:25,934.934 INFO    ] 200
[2026-06-12 14:06:25,937.937 INFO    ] {"delay": 100, "SectionSKU": {"Header": "If you like us, tell others... else tell us", "skus": []}, "rstatus": true, "SectionStatus": {"Header": " Order is complete ", "SubHeader": "Please wait for invoice to generate", "UI_Header": "", "Note": "If any due amount, clear at https://go.tinymart.in"}, "status": "True", "voiceNote": "Transaction Completed", "SectionMain": {"Header": "Door Closed"}}
[2026-06-12 14:06:25,940.940 INFO    ] {'SectionSKU': {'skus': [], 'Header': 'If you like us, tell others... else tell us'}, 'voiceNote': 'Transaction Completed', 'status': 'True', 'delay': 100, 'SectionMain': {'Header': 'Door Closed'}, '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}
[2026-06-12 14:06:25,943.943 INFO    ] 2026-06-12 14:06:25
[2026-06-12 14:06:25,946.946 INFO    ] Order Completed 
[2026-06-12 14:06:25,948.948 INFO    ] Order Completed 
[2026-06-12 14:06:25,951.951 INFO    ] 193c8a8cf3bf490ccfe0b23598544a83
[2026-06-12 14:06:25,954.954 INFO    ] 2026-06-12 14:06:25
[2026-06-12 14:06:25,956.956 INFO    ] playing audio file
[2026-06-12 14:06:25,974.974 INFO    ] 2026-06-12 14:06:25
[2026-06-12 14:06:25,977.977 INFO    ] {'SectionSKU': {'skus': [], 'Header': 'If you like us, tell others... else tell us'}, 'voiceNote': 'Transaction Completed', 'status': 'True', 'delay': 100, 'SectionMain': {'Header': 'Door Closed'}, '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}
[2026-06-12 14:06:25,981.981 INFO    ] 2026-06-12 14:06:25
[2026-06-12 14:06:26,728.728 INFO    ] 200
[2026-06-12 14:06:26,730.730 INFO    ] {"bill_amount": 20, "imei": "TM09202301", "skus": [{"qty": 2, "skuid": "4500688", "sku_total": 20, "offer_id": "", "unit_price": "10", "tray_id": "13", "door_id": "", "mrp": "10", "image_url": "https://images.tinymart.in/product/4500688-125.webp", "name": "Modern Kitchens Potato waffers Cream onion 24gm per peice"}], "rstatus": true, "orderId": "TM09202301260612140508315", "anomaly": 0, "res": true, "total_amount": 20, "cart_offer_desc": "", "order_status": "", "userId": "7384700684"}
[2026-06-12 14:06:26,732.732 INFO    ] {'res': True, 'bill_amount': 20, 'total_amount': 20, 'cart_offer_desc': '', 'order_status': '', 'anomaly': 0, 'orderId': 'TM09202301260612140508315', 'imei': 'TM09202301', 'skus': [{'image_url': 'https://images.tinymart.in/product/4500688-125.webp', 'offer_id': '', 'name': 'Modern Kitchens Potato waffers Cream onion 24gm per peice', 'door_id': '', 'skuid': '4500688', 'sku_total': 20, 'mrp': '10', 'unit_price': '10', 'qty': 2, 'tray_id': '13'}], 'userId': '7384700684', 'rstatus': True}
[2026-06-12 14:06:26,734.734 INFO    ] {'res': True, 'bill_amount': 20, 'total_amount': 20, 'cart_offer_desc': '', 'order_status': '', 'anomaly': 0, 'orderId': 'TM09202301260612140508315', 'imei': 'TM09202301', 'skus': [{'image_url': 'https://images.tinymart.in/product/4500688-125.webp', 'offer_id': '', 'name': 'Modern Kitchens Potato waffers Cream onion 24gm per peice', 'door_id': '', 'skuid': '4500688', 'sku_total': 20, 'mrp': '10', 'unit_price': '10', 'qty': 2, 'tray_id': '13'}], 'userId': '7384700684', 'rstatus': True}
[2026-06-12 14:06:26,735.735 INFO    ] 2026-06-12 14:06:26
[2026-06-12 14:06:26,737.737 INFO    ] 2026-06-12 14:06:26
[2026-06-12 14:06:26,738.738 INFO    ] 20
[2026-06-12 14:06:26,740.740 INFO    ] 2026-06-12 14:06:26
[2026-06-12 14:06:26,741.741 INFO    ] 2026-06-12 14:06:26
[2026-06-12 14:06:26,743.743 INFO    ]  Your Bill Amount is 20
[2026-06-12 14:06:26,744.744 INFO    ]  Your Bill Amount is 20
[2026-06-12 14:06:26,745.745 INFO    ] 69e7720cf62ffa67ab0522541575e508
[2026-06-12 14:06:26,752.752 INFO    ] 2026-06-12 14:06:26
[2026-06-12 14:06:26,754.754 INFO    ] playing audio file
[2026-06-12 14:06:26,772.772 INFO    ] 2026-06-12 14:06:26
[2026-06-12 14:06:26,775.775 INFO    ] 2026-06-12 14:06:26
[2026-06-12 14:06:26,779.779 INFO    ] publish_status: order_id=TM09202301260612140508315
[2026-06-12 14:06:26,782.782 INFO    ] [publish_status] Adding message to stream: order:TM09202301260612140508315
[2026-06-12 14:06:26,851.851 INFO    ] [publish_status] Message added to stream with ID: 1781253386897-0
[2026-06-12 14:06:26,854.854 INFO    ] Published to order:TM09202301260612140508315: {'server_response': '{"res": true, "bill_amount": 20, "total_amount": 20, "cart_offer_desc": "", "order_status": "", "anomaly": 0, "orderId": "TM09202301260612140508315", "imei": "TM09202301", "skus": [{"image_url": "https://images.tinymart.in/product/4500688-125.webp", "offer_id": "", "name": "Modern Kitchens Potato waffers Cream onion 24gm per peice", "door_id": "", "skuid": "4500688", "sku_total": 20, "mrp": "10", "unit_price": "10", "qty": 2, "tray_id": "13"}], "userId": "7384700684", "rstatus": true}', 'server_status': 'invoiceOrder', 'order_id': 'TM09202301260612140508315', 'timestamp': '2026-06-12T08:36:26.777164Z'} (ID: 1781253386897-0)
[2026-06-12 14:06:27,695.695 INFO    ] {'server_response': {'res': True, 'bill_amount': 20, 'total_amount': 20, 'cart_offer_desc': '', 'order_status': '', 'anomaly': 0, 'orderId': 'TM09202301260612140508315', 'imei': 'TM09202301', 'skus': [{'image_url': 'https://images.tinymart.in/product/4500688-125.webp', 'offer_id': '', 'name': 'Modern Kitchens Potato waffers Cream onion 24gm per peice', 'door_id': '', 'skuid': '4500688', 'sku_total': 20, 'mrp': '10', 'unit_price': '10', 'qty': 2, 'tray_id': '13'}], 'userId': '7384700684', 'rstatus': True}, 'server_status': 'invoiceOrder', 'order_id': 'TM09202301260612140508315'}
[2026-06-12 14:06:27,697.697 INFO    ] 200
[2026-06-12 14:06:27,700.700 INFO    ] {"data":{"server_response":{"res":true,"bill_amount":20,"total_amount":20,"cart_offer_desc":"","order_status":"","anomaly":0,"orderId":"TM09202301260612140508315","imei":"TM09202301","skus":[{"image_url":"https:\/\/images.tinymart.in\/product\/4500688-125.webp","offer_id":"","name":"Modern Kitchens Potato waffers Cream onion 24gm per peice","door_id":"","skuid":"4500688","sku_total":20,"mrp":"10","unit_price":"10","qty":2,"tray_id":"13"}],"userId":"7384700684","rstatus":true},"server_status":"invoiceOrder","order_id":"TM09202301260612140508315"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-12 14:06:27,703.703 INFO    ] {'response': {'status': True, 'data': 'order updated successfully', 'code': 'ORDER_EXISTS', 'msg': 'order updated successfully'}, 'data': {'server_response': {'res': True, 'bill_amount': 20, 'rstatus': True, 'cart_offer_desc': '', 'order_status': '', 'anomaly': 0, 'total_amount': 20, 'skus': [{'image_url': 'https://images.tinymart.in/product/4500688-125.webp', 'offer_id': '', 'name': 'Modern Kitchens Potato waffers Cream onion 24gm per peice', 'skuid': '4500688', 'tray_id': '13', 'sku_total': 20, 'mrp': '10', 'door_id': '', 'qty': 2, 'unit_price': '10'}], 'orderId': 'TM09202301260612140508315', 'imei': 'TM09202301', 'userId': '7384700684'}, 'server_status': 'invoiceOrder', 'order_id': 'TM09202301260612140508315'}}
[2026-06-12 14:06:27,706.706 INFO    ] {'response': {'status': True, 'data': 'order updated successfully', 'code': 'ORDER_EXISTS', 'msg': 'order updated successfully'}, 'data': {'server_response': {'res': True, 'bill_amount': 20, 'rstatus': True, 'cart_offer_desc': '', 'order_status': '', 'anomaly': 0, 'total_amount': 20, 'skus': [{'image_url': 'https://images.tinymart.in/product/4500688-125.webp', 'offer_id': '', 'name': 'Modern Kitchens Potato waffers Cream onion 24gm per peice', 'skuid': '4500688', 'tray_id': '13', 'sku_total': 20, 'mrp': '10', 'door_id': '', 'qty': 2, 'unit_price': '10'}], 'orderId': 'TM09202301260612140508315', 'imei': 'TM09202301', 'userId': '7384700684'}, 'server_status': 'invoiceOrder', 'order_id': 'TM09202301260612140508315'}}
[2026-06-12 14:06:27,709.709 INFO    ] 2026-06-12 14:06:27
[2026-06-12 14:06:28,806.806 INFO    ] 200
[2026-06-12 14:06:28,807.807 INFO    ] {"order_items": [], "tray_sync": ["no_entry", "no_entry", "no_entry", "no_entry", "no_entry", "no_entry"], "orders": [], "order_items_synced": [], "orders_synced": [], "orders_data_synced": [], "status": true, "orders_data": [], "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"]}
[2026-06-12 14:06:28,809.809 INFO    ] 2026-06-12 14:06:28
[2026-06-12 14:06:28,885.885 INFO    ] 200
[2026-06-12 14:06:28,887.887 INFO    ] True
[2026-06-12 14:06:28,888.888 INFO    ] cleanup_start_order_file_after_processing: order_id=TM09202301260612140508315
[2026-06-12 14:06:28,890.890 INFO    ] start order file deleted
[2026-06-12 14:06:28,891.891 INFO    ] Checking for system updates...
[2026-06-12 14:06:28,910.910 INFO    ] 200
[2026-06-12 14:06:28,912.912 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:06:28,942.942 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 14:06:28,943.943 INFO    ] No update needed
[2026-06-12 14:06:28,944.944 INFO    ] Checking for camera pi updates...
[2026-06-12 14:06:28,965.965 INFO    ] 200
[2026-06-12 14:06:28,966.966 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:06:28,989.989 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 14:06:29,049.049 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 14:06:29,051.051 INFO    ] No camera update needed
[2026-06-12 14:06:29,052.052 INFO    ] Script finished. Safe exiting...
[2026-06-12 14:06:29,053.053 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 14:06:29,056.056 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 14:06:29,059.059 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 14:06:31,098.098 INFO    ] ================================================
[2026-06-12 14:06:31,114.114 INFO    ] Launching Daemon at Fri Jun 12 14:06:31 IST 2026
[2026-06-12 14:06:31,126.126 INFO    ] ================================================
[2026-06-12 14:06:31,502.502 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 14:06:31
[2026-06-12 14:06:31,848.848 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 14:06:32,008.008 INFO    ] Initializing speech engine...
[2026-06-12 14:06:32,014.014 INFO    ] 2026-06-12 14:06:32
[2026-06-12 14:06:32,219.219 INFO    ] 2026-06-12 14:06:32
[2026-06-12 14:06:32,249.249 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 14:06:32,433.433 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 14:06:32,443.443 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 14:06:32,573.573 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 14:06:32,637.637 INFO    ] time= 12/06/2026 14:06:32
[2026-06-12 14:06:32,664.664 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 14:06:32,670.670 INFO    ] Checking for existing commands in stream...
[2026-06-12 14:06:32,738.738 INFO    ] No existing commands found in stream
[2026-06-12 14:06:37,747.747 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 14:06:37,749.749 INFO    ] Waiting 3.73 seconds before fallback handling...
[2026-06-12 14:06:41,803.803 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 14:06:41,804.804 INFO    ] Checking for system updates...
[2026-06-12 14:06:41,825.825 INFO    ] 200
[2026-06-12 14:06:41,826.826 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:06:41,856.856 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 14:06:41,857.857 INFO    ] No update needed
[2026-06-12 14:06:41,859.859 INFO    ] Checking for camera pi updates...
[2026-06-12 14:06:41,878.878 INFO    ] 200
[2026-06-12 14:06:41,880.880 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:06:41,905.905 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 14:06:41,947.947 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 14:06:41,949.949 INFO    ] No camera update needed
[2026-06-12 14:06:41,950.950 INFO    ] Script finished. Safe exiting...
[2026-06-12 14:06:41,951.951 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 14:06:41,955.955 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 14:06:41,958.958 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 14:06:44,996.996 INFO    ] ================================================
[2026-06-12 14:06:44,013.013 INFO    ] Launching Daemon at Fri Jun 12 14:06:44 IST 2026
[2026-06-12 14:06:44,024.024 INFO    ] ================================================
[2026-06-12 14:06:44,405.405 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 14:06:44
[2026-06-12 14:06:44,741.741 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 14:06:44,880.880 INFO    ] Initializing speech engine...
[2026-06-12 14:06:44,894.894 INFO    ] 2026-06-12 14:06:44
[2026-06-12 14:06:45,098.098 INFO    ] 2026-06-12 14:06:45
[2026-06-12 14:06:45,123.123 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 14:06:45,329.329 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 14:06:45,333.333 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 14:06:45,469.469 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 14:06:45,537.537 INFO    ] time= 12/06/2026 14:06:45
[2026-06-12 14:06:45,561.561 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 14:06:45,568.568 INFO    ] Checking for existing commands in stream...
[2026-06-12 14:06:45,635.635 INFO    ] No existing commands found in stream
[2026-06-12 14:06:50,650.650 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 14:06:50,653.653 INFO    ] Waiting 0.16 seconds before fallback handling...
[2026-06-12 14:06:51,167.167 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 14:06:51,169.169 INFO    ] Checking for system updates...
[2026-06-12 14:06:51,190.190 INFO    ] 200
[2026-06-12 14:06:51,191.191 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:06:51,221.221 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 14:06:51,223.223 INFO    ] No update needed
[2026-06-12 14:06:51,224.224 INFO    ] Checking for camera pi updates...
[2026-06-12 14:06:51,245.245 INFO    ] 200
[2026-06-12 14:06:51,246.246 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:06:51,273.273 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 14:06:51,308.308 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 14:06:51,310.310 INFO    ] No camera update needed
[2026-06-12 14:06:51,312.312 INFO    ] Script finished. Safe exiting...
[2026-06-12 14:06:51,313.313 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 14:06:51,316.316 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 14:06:51,319.319 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 14:06:53,357.357 INFO    ] ================================================
[2026-06-12 14:06:53,373.373 INFO    ] Launching Daemon at Fri Jun 12 14:06:53 IST 2026
[2026-06-12 14:06:53,384.384 INFO    ] ================================================
[2026-06-12 14:06:53,738.738 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 14:06:53
[2026-06-12 14:06:54,074.074 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 14:06:54,223.223 INFO    ] Initializing speech engine...
[2026-06-12 14:06:54,229.229 INFO    ] 2026-06-12 14:06:54
[2026-06-12 14:06:54,435.435 INFO    ] 2026-06-12 14:06:54
[2026-06-12 14:06:54,464.464 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 14:06:54,647.647 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 14:06:54,657.657 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 14:06:54,785.785 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 14:06:54,855.855 INFO    ] time= 12/06/2026 14:06:54
[2026-06-12 14:06:54,879.879 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 14:06:54,886.886 INFO    ] Checking for existing commands in stream...
[2026-06-12 14:06:54,951.951 INFO    ] No existing commands found in stream
[2026-06-12 14:06:59,962.962 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 14:06:59,965.965 INFO    ] Waiting 3.16 seconds before fallback handling...
[2026-06-12 14:07:03,493.493 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 14:07:03,495.495 INFO    ] Checking for system updates...
[2026-06-12 14:07:03,515.515 INFO    ] 200
[2026-06-12 14:07:03,517.517 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:07:03,547.547 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 14:07:03,548.548 INFO    ] No update needed
[2026-06-12 14:07:03,550.550 INFO    ] Checking for camera pi updates...
[2026-06-12 14:07:03,569.569 INFO    ] 200
[2026-06-12 14:07:03,571.571 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:07:03,594.594 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 14:07:03,681.681 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 14:07:03,682.682 INFO    ] No camera update needed
[2026-06-12 14:07:03,684.684 INFO    ] Script finished. Safe exiting...
[2026-06-12 14:07:03,685.685 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 14:07:03,688.688 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 14:07:03,691.691 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 14:07:05,730.730 INFO    ] ================================================
[2026-06-12 14:07:05,745.745 INFO    ] Launching Daemon at Fri Jun 12 14:07:05 IST 2026
[2026-06-12 14:07:05,756.756 INFO    ] ================================================
[2026-06-12 14:07:06,104.104 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 14:07:06
[2026-06-12 14:07:06,416.416 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 14:07:06,558.558 INFO    ] Initializing speech engine...
[2026-06-12 14:07:06,563.563 INFO    ] 2026-06-12 14:07:06
[2026-06-12 14:07:06,765.765 INFO    ] 2026-06-12 14:07:06
[2026-06-12 14:07:06,794.794 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 14:07:06,978.978 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 14:07:06,988.988 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 14:07:07,109.109 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 14:07:07,164.164 INFO    ] time= 12/06/2026 14:07:07
[2026-06-12 14:07:07,206.206 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 14:07:07,208.208 INFO    ] Checking for existing commands in stream...
[2026-06-12 14:07:07,278.278 INFO    ] No existing commands found in stream
[2026-06-12 14:07:12,288.288 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 14:07:12,291.291 INFO    ] Waiting 3.84 seconds before fallback handling...
[2026-06-12 14:07:16,491.491 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 14:07:16,493.493 INFO    ] Checking for system updates...
[2026-06-12 14:07:16,513.513 INFO    ] 200
[2026-06-12 14:07:16,514.514 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:07:16,546.546 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 14:07:16,547.547 INFO    ] No update needed
[2026-06-12 14:07:16,548.548 INFO    ] Checking for camera pi updates...
[2026-06-12 14:07:16,567.567 INFO    ] 200
[2026-06-12 14:07:16,568.568 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:07:16,591.591 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 14:07:16,650.650 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 14:07:16,651.651 INFO    ] No camera update needed
[2026-06-12 14:07:16,653.653 INFO    ] Script finished. Safe exiting...
[2026-06-12 14:07:16,654.654 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 14:07:16,657.657 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 14:07:16,659.659 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 14:07:18,699.699 INFO    ] ================================================
[2026-06-12 14:07:18,715.715 INFO    ] Launching Daemon at Fri Jun 12 14:07:18 IST 2026
[2026-06-12 14:07:18,726.726 INFO    ] ================================================
[2026-06-12 14:07:19,076.076 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 14:07:19
[2026-06-12 14:07:19,409.409 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 14:07:19,554.554 INFO    ] Initializing speech engine...
[2026-06-12 14:07:19,563.563 INFO    ] 2026-06-12 14:07:19
[2026-06-12 14:07:19,772.772 INFO    ] 2026-06-12 14:07:19
[2026-06-12 14:07:19,802.802 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 14:07:19,927.927 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 14:07:19,991.991 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 14:07:20,136.136 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 14:07:20,199.199 INFO    ] time= 12/06/2026 14:07:20
[2026-06-12 14:07:20,223.223 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 14:07:20,230.230 INFO    ] Checking for existing commands in stream...
[2026-06-12 14:07:20,297.297 INFO    ] No existing commands found in stream
[2026-06-12 14:07:25,312.312 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 14:07:25,315.315 INFO    ] Waiting 1.23 seconds before fallback handling...
[2026-06-12 14:07:26,882.882 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 14:07:26,884.884 INFO    ] Checking for system updates...
[2026-06-12 14:07:26,904.904 INFO    ] 200
[2026-06-12 14:07:26,906.906 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:07:26,938.938 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 14:07:26,939.939 INFO    ] No update needed
[2026-06-12 14:07:26,941.941 INFO    ] Checking for camera pi updates...
[2026-06-12 14:07:26,961.961 INFO    ] 200
[2026-06-12 14:07:26,963.963 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:07:26,985.985 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 14:07:27,029.029 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 14:07:27,031.031 INFO    ] No camera update needed
[2026-06-12 14:07:27,032.032 INFO    ] Script finished. Safe exiting...
[2026-06-12 14:07:27,033.033 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 14:07:27,036.036 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 14:07:27,040.040 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 14:07:29,079.079 INFO    ] ================================================
[2026-06-12 14:07:29,095.095 INFO    ] Launching Daemon at Fri Jun 12 14:07:29 IST 2026
[2026-06-12 14:07:29,107.107 INFO    ] ================================================
[2026-06-12 14:07:29,487.487 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 14:07:29
[2026-06-12 14:07:29,821.821 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 14:07:29,958.958 INFO    ] Initializing speech engine...
[2026-06-12 14:07:29,966.966 INFO    ] 2026-06-12 14:07:29
[2026-06-12 14:07:30,185.185 INFO    ] 2026-06-12 14:07:30
[2026-06-12 14:07:30,214.214 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 14:07:30,338.338 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 14:07:30,401.401 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 14:07:30,547.547 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 14:07:30,611.611 INFO    ] time= 12/06/2026 14:07:30
[2026-06-12 14:07:30,634.634 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 14:07:30,641.641 INFO    ] Checking for existing commands in stream...
[2026-06-12 14:07:30,708.708 INFO    ] No existing commands found in stream
[2026-06-12 14:07:35,718.718 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 14:07:35,721.721 INFO    ] Waiting 1.64 seconds before fallback handling...
[2026-06-12 14:07:37,734.734 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 14:07:37,736.736 INFO    ] Checking for system updates...
[2026-06-12 14:07:37,758.758 INFO    ] 200
[2026-06-12 14:07:37,759.759 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:07:37,789.789 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 14:07:37,790.790 INFO    ] No update needed
[2026-06-12 14:07:37,792.792 INFO    ] Checking for camera pi updates...
[2026-06-12 14:07:37,811.811 INFO    ] 200
[2026-06-12 14:07:37,812.812 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:07:37,835.835 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 14:07:37,874.874 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 14:07:37,875.875 INFO    ] No camera update needed
[2026-06-12 14:07:37,877.877 INFO    ] Script finished. Safe exiting...
[2026-06-12 14:07:37,878.878 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 14:07:37,881.881 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 14:07:37,884.884 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 14:07:39,922.922 INFO    ] ================================================
[2026-06-12 14:07:39,938.938 INFO    ] Launching Daemon at Fri Jun 12 14:07:39 IST 2026
[2026-06-12 14:07:39,949.949 INFO    ] ================================================
[2026-06-12 14:07:40,320.320 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 14:07:40
[2026-06-12 14:07:40,637.637 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 14:07:40,776.776 INFO    ] Initializing speech engine...
[2026-06-12 14:07:40,785.785 INFO    ] 2026-06-12 14:07:40
[2026-06-12 14:07:40,990.990 INFO    ] 2026-06-12 14:07:40
[2026-06-12 14:07:41,018.018 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 14:07:41,202.202 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 14:07:41,206.206 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 14:07:41,342.342 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 14:07:41,409.409 INFO    ] time= 12/06/2026 14:07:41
[2026-06-12 14:07:41,433.433 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 14:07:41,439.439 INFO    ] Checking for existing commands in stream...
[2026-06-12 14:07:41,507.507 INFO    ] No existing commands found in stream
[2026-06-12 14:07:46,521.521 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 14:07:46,524.524 INFO    ] Waiting 1.59 seconds before fallback handling...
[2026-06-12 14:07:48,442.442 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 14:07:48,444.444 INFO    ] Checking for system updates...
[2026-06-12 14:07:48,470.470 INFO    ] 200
[2026-06-12 14:07:48,471.471 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:07:48,501.501 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 14:07:48,503.503 INFO    ] No update needed
[2026-06-12 14:07:48,504.504 INFO    ] Checking for camera pi updates...
[2026-06-12 14:07:48,524.524 INFO    ] 200
[2026-06-12 14:07:48,526.526 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:07:48,548.548 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 14:07:48,596.596 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 14:07:48,598.598 INFO    ] No camera update needed
[2026-06-12 14:07:48,599.599 INFO    ] Script finished. Safe exiting...
[2026-06-12 14:07:48,601.601 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 14:07:48,604.604 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 14:07:48,606.606 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 14:07:50,645.645 INFO    ] ================================================
[2026-06-12 14:07:50,661.661 INFO    ] Launching Daemon at Fri Jun 12 14:07:50 IST 2026
[2026-06-12 14:07:50,672.672 INFO    ] ================================================
[2026-06-12 14:07:51,016.016 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 14:07:51
[2026-06-12 14:07:51,351.351 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 14:07:51,501.501 INFO    ] Initializing speech engine...
[2026-06-12 14:07:51,506.506 INFO    ] 2026-06-12 14:07:51
[2026-06-12 14:07:51,715.715 INFO    ] 2026-06-12 14:07:51
[2026-06-12 14:07:51,744.744 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 14:07:51,927.927 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 14:07:51,931.931 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 14:07:52,132.132 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 14:07:52,156.156 INFO    ] time= 12/06/2026 14:07:52
[2026-06-12 14:07:52,162.162 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 14:07:52,164.164 INFO    ] Checking for existing commands in stream...
[2026-06-12 14:07:52,230.230 INFO    ] No existing commands found in stream
[2026-06-12 14:07:57,245.245 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 14:07:57,248.248 INFO    ] Waiting 2.25 seconds before fallback handling...
[2026-06-12 14:07:59,858.858 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 14:07:59,859.859 INFO    ] Checking for system updates...
[2026-06-12 14:07:59,880.880 INFO    ] 200
[2026-06-12 14:07:59,882.882 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:07:59,912.912 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 14:07:59,913.913 INFO    ] No update needed
[2026-06-12 14:07:59,915.915 INFO    ] Checking for camera pi updates...
[2026-06-12 14:07:59,934.934 INFO    ] 200
[2026-06-12 14:07:59,935.935 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:07:59,958.958 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 14:08:00,004.004 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 14:08:00,005.005 INFO    ] No camera update needed
[2026-06-12 14:08:00,007.007 INFO    ] Script finished. Safe exiting...
[2026-06-12 14:08:00,008.008 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 14:08:00,011.011 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 14:08:00,014.014 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 14:08:02,047.047 INFO    ] ================================================
[2026-06-12 14:08:02,059.059 INFO    ] Launching Daemon at Fri Jun 12 14:08:02 IST 2026
[2026-06-12 14:08:02,067.067 INFO    ] ================================================
[2026-06-12 14:08:02,414.414 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 14:08:02
[2026-06-12 14:08:02,740.740 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 14:08:02,870.870 INFO    ] Initializing speech engine...
[2026-06-12 14:08:02,874.874 INFO    ] 2026-06-12 14:08:02
[2026-06-12 14:08:03,101.101 INFO    ] 2026-06-12 14:08:03
[2026-06-12 14:08:03,132.132 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 14:08:03,324.324 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 14:08:03,334.334 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 14:08:03,469.469 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 14:08:03,541.541 INFO    ] time= 12/06/2026 14:08:03
[2026-06-12 14:08:03,566.566 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 14:08:03,573.573 INFO    ] Checking for existing commands in stream...
[2026-06-12 14:08:03,642.642 INFO    ] No existing commands found in stream
[2026-06-12 14:08:08,652.652 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 14:08:08,655.655 INFO    ] Waiting 2.45 seconds before fallback handling...
[2026-06-12 14:08:12,494.494 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 14:08:12,496.496 INFO    ] Checking for system updates...
[2026-06-12 14:08:12,531.531 INFO    ] 200
[2026-06-12 14:08:12,534.534 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:08:12,585.585 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 14:08:12,587.587 INFO    ] No update needed
[2026-06-12 14:08:12,589.589 INFO    ] Checking for camera pi updates...
[2026-06-12 14:08:12,623.623 INFO    ] 200
[2026-06-12 14:08:12,625.625 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:08:12,659.659 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 14:08:12,717.717 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 14:08:12,718.718 INFO    ] No camera update needed
[2026-06-12 14:08:12,720.720 INFO    ] Script finished. Safe exiting...
[2026-06-12 14:08:12,721.721 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 14:08:12,724.724 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 14:08:12,726.726 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 14:08:14,764.764 INFO    ] ================================================
[2026-06-12 14:08:14,779.779 INFO    ] Launching Daemon at Fri Jun 12 14:08:14 IST 2026
[2026-06-12 14:08:14,790.790 INFO    ] ================================================
[2026-06-12 14:08:15,182.182 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 14:08:15
[2026-06-12 14:08:15,512.512 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 14:08:15,655.655 INFO    ] Initializing speech engine...
[2026-06-12 14:08:15,663.663 INFO    ] 2026-06-12 14:08:15
[2026-06-12 14:08:15,872.872 INFO    ] 2026-06-12 14:08:15
[2026-06-12 14:08:15,902.902 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 14:08:16,086.086 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 14:08:16,095.095 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 14:08:16,224.224 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 14:08:16,291.291 INFO    ] time= 12/06/2026 14:08:16
[2026-06-12 14:08:16,315.315 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 14:08:16,321.321 INFO    ] Checking for existing commands in stream...
[2026-06-12 14:08:16,388.388 INFO    ] No existing commands found in stream
[2026-06-12 14:08:21,402.402 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 14:08:21,405.405 INFO    ] Waiting 1.67 seconds before fallback handling...
[2026-06-12 14:08:23,463.463 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 14:08:23,465.465 INFO    ] Checking for system updates...
[2026-06-12 14:08:23,485.485 INFO    ] 200
[2026-06-12 14:08:23,487.487 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:08:23,518.518 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 14:08:23,519.519 INFO    ] No update needed
[2026-06-12 14:08:23,521.521 INFO    ] Checking for camera pi updates...
[2026-06-12 14:08:23,542.542 INFO    ] 200
[2026-06-12 14:08:23,544.544 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:08:23,566.566 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 14:08:23,708.708 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 14:08:23,709.709 INFO    ] No camera update needed
[2026-06-12 14:08:23,711.711 INFO    ] Script finished. Safe exiting...
[2026-06-12 14:08:23,712.712 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 14:08:23,715.715 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 14:08:23,719.719 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 14:08:25,758.758 INFO    ] ================================================
[2026-06-12 14:08:25,773.773 INFO    ] Launching Daemon at Fri Jun 12 14:08:25 IST 2026
[2026-06-12 14:08:25,785.785 INFO    ] ================================================
[2026-06-12 14:08:26,143.143 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 14:08:26
[2026-06-12 14:08:26,471.471 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 14:08:26,613.613 INFO    ] Initializing speech engine...
[2026-06-12 14:08:26,622.622 INFO    ] 2026-06-12 14:08:26
[2026-06-12 14:08:26,827.827 INFO    ] 2026-06-12 14:08:26
[2026-06-12 14:08:26,856.856 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 14:08:27,040.040 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 14:08:27,050.050 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 14:08:27,172.172 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 14:08:27,222.222 INFO    ] time= 12/06/2026 14:08:27
[2026-06-12 14:08:27,267.267 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 14:08:27,276.276 INFO    ] Checking for existing commands in stream...
[2026-06-12 14:08:27,343.343 INFO    ] No existing commands found in stream
[2026-06-12 14:08:32,366.366 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 14:08:32,368.368 INFO    ] Waiting 2.50 seconds before fallback handling...
[2026-06-12 14:08:35,237.237 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 14:08:35,239.239 INFO    ] Checking for system updates...
[2026-06-12 14:08:35,260.260 INFO    ] 200
[2026-06-12 14:08:35,262.262 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:08:35,291.291 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 14:08:35,292.292 INFO    ] No update needed
[2026-06-12 14:08:35,294.294 INFO    ] Checking for camera pi updates...
[2026-06-12 14:08:35,313.313 INFO    ] 200
[2026-06-12 14:08:35,315.315 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:08:35,337.337 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 14:08:35,367.367 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 14:08:35,368.368 INFO    ] No camera update needed
[2026-06-12 14:08:35,370.370 INFO    ] Script finished. Safe exiting...
[2026-06-12 14:08:35,371.371 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 14:08:35,374.374 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 14:08:35,377.377 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 14:08:37,416.416 INFO    ] ================================================
[2026-06-12 14:08:37,432.432 INFO    ] Launching Daemon at Fri Jun 12 14:08:37 IST 2026
[2026-06-12 14:08:37,443.443 INFO    ] ================================================
[2026-06-12 14:08:37,808.808 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 14:08:37
[2026-06-12 14:08:38,123.123 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 14:08:38,272.272 INFO    ] Initializing speech engine...
[2026-06-12 14:08:38,277.277 INFO    ] 2026-06-12 14:08:38
[2026-06-12 14:08:38,492.492 INFO    ] 2026-06-12 14:08:38
[2026-06-12 14:08:38,523.523 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 14:08:38,672.672 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 14:08:38,724.724 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 14:08:38,867.867 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 14:08:38,923.923 INFO    ] time= 12/06/2026 14:08:38
[2026-06-12 14:08:38,964.964 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 14:08:38,975.975 INFO    ] Checking for existing commands in stream...
[2026-06-12 14:08:39,078.078 INFO    ] No existing commands found in stream
[2026-06-12 14:08:44,086.086 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 14:08:44,089.089 INFO    ] Waiting 1.13 seconds before fallback handling...
[2026-06-12 14:08:45,623.623 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 14:08:45,625.625 INFO    ] Checking for system updates...
[2026-06-12 14:08:45,645.645 INFO    ] 200
[2026-06-12 14:08:45,646.646 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:08:45,675.675 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 14:08:45,677.677 INFO    ] No update needed
[2026-06-12 14:08:45,678.678 INFO    ] Checking for camera pi updates...
[2026-06-12 14:08:45,697.697 INFO    ] 200
[2026-06-12 14:08:45,698.698 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:08:45,720.720 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 14:08:45,790.790 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 14:08:45,792.792 INFO    ] No camera update needed
[2026-06-12 14:08:45,793.793 INFO    ] Script finished. Safe exiting...
[2026-06-12 14:08:45,794.794 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 14:08:45,797.797 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 14:08:45,800.800 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 14:08:47,839.839 INFO    ] ================================================
[2026-06-12 14:08:47,855.855 INFO    ] Launching Daemon at Fri Jun 12 14:08:47 IST 2026
[2026-06-12 14:08:47,866.866 INFO    ] ================================================
[2026-06-12 14:08:48,225.225 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 14:08:48
[2026-06-12 14:08:48,535.535 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 14:08:48,678.678 INFO    ] Initializing speech engine...
[2026-06-12 14:08:48,683.683 INFO    ] 2026-06-12 14:08:48
[2026-06-12 14:08:48,888.888 INFO    ] 2026-06-12 14:08:48
[2026-06-12 14:08:48,916.916 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 14:08:49,103.103 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 14:08:49,113.113 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 14:08:49,237.237 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 14:08:49,299.299 INFO    ] time= 12/06/2026 14:08:49
[2026-06-12 14:08:49,323.323 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 14:08:49,339.339 INFO    ] Checking for existing commands in stream...
[2026-06-12 14:08:49,412.412 INFO    ] No existing commands found in stream
[2026-06-12 14:08:54,421.421 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 14:08:54,424.424 INFO    ] Waiting 1.37 seconds before fallback handling...
[2026-06-12 14:08:56,186.186 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 14:08:56,187.187 INFO    ] Checking for system updates...
[2026-06-12 14:08:56,212.212 INFO    ] 200
[2026-06-12 14:08:56,213.213 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:08:56,243.243 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 14:08:56,244.244 INFO    ] No update needed
[2026-06-12 14:08:56,246.246 INFO    ] Checking for camera pi updates...
[2026-06-12 14:08:56,266.266 INFO    ] 200
[2026-06-12 14:08:56,267.267 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:08:56,293.293 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 14:08:56,333.333 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 14:08:56,335.335 INFO    ] No camera update needed
[2026-06-12 14:08:56,336.336 INFO    ] Script finished. Safe exiting...
[2026-06-12 14:08:56,338.338 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 14:08:56,341.341 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 14:08:56,344.344 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 14:08:58,383.383 INFO    ] ================================================
[2026-06-12 14:08:58,399.399 INFO    ] Launching Daemon at Fri Jun 12 14:08:58 IST 2026
[2026-06-12 14:08:58,410.410 INFO    ] ================================================
[2026-06-12 14:08:58,784.784 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 14:08:58
[2026-06-12 14:08:59,103.103 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 14:08:59,247.247 INFO    ] Initializing speech engine...
[2026-06-12 14:08:59,253.253 INFO    ] 2026-06-12 14:08:59
[2026-06-12 14:08:59,463.463 INFO    ] 2026-06-12 14:08:59
[2026-06-12 14:08:59,491.491 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 14:08:59,614.614 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 14:08:59,676.676 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 14:08:59,810.810 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 14:08:59,868.868 INFO    ] time= 12/06/2026 14:08:59
[2026-06-12 14:08:59,897.897 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 14:08:59,907.907 INFO    ] Checking for existing commands in stream...
[2026-06-12 14:08:59,979.979 INFO    ] No existing commands found in stream
[2026-06-12 14:09:04,988.988 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 14:09:04,991.991 INFO    ] Waiting 0.90 seconds before fallback handling...
[2026-06-12 14:09:06,285.285 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 14:09:06,287.287 INFO    ] Checking for system updates...
[2026-06-12 14:09:06,307.307 INFO    ] 200
[2026-06-12 14:09:06,308.308 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:09:06,337.337 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 14:09:06,339.339 INFO    ] No update needed
[2026-06-12 14:09:06,340.340 INFO    ] Checking for camera pi updates...
[2026-06-12 14:09:06,359.359 INFO    ] 200
[2026-06-12 14:09:06,361.361 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:09:06,383.383 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 14:09:06,439.439 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 14:09:06,441.441 INFO    ] No camera update needed
[2026-06-12 14:09:06,442.442 INFO    ] Script finished. Safe exiting...
[2026-06-12 14:09:06,443.443 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 14:09:06,446.446 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 14:09:06,449.449 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 14:09:08,487.487 INFO    ] ================================================
[2026-06-12 14:09:08,503.503 INFO    ] Launching Daemon at Fri Jun 12 14:09:08 IST 2026
[2026-06-12 14:09:08,513.513 INFO    ] ================================================
[2026-06-12 14:09:08,845.845 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 14:09:08
[2026-06-12 14:09:09,157.157 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 14:09:09,287.287 INFO    ] Initializing speech engine...
[2026-06-12 14:09:09,295.295 INFO    ] 2026-06-12 14:09:09
[2026-06-12 14:09:09,512.512 INFO    ] 2026-06-12 14:09:09
[2026-06-12 14:09:09,541.541 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 14:09:09,725.725 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 14:09:09,729.729 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 14:09:09,866.866 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 14:09:09,930.930 INFO    ] time= 12/06/2026 14:09:09
[2026-06-12 14:09:09,958.958 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 14:09:09,965.965 INFO    ] Checking for existing commands in stream...
[2026-06-12 14:09:10,032.032 INFO    ] No existing commands found in stream
[2026-06-12 14:09:15,041.041 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 14:09:15,044.044 INFO    ] Waiting 3.95 seconds before fallback handling...
[2026-06-12 14:09:19,353.353 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 14:09:19,354.354 INFO    ] Checking for system updates...
[2026-06-12 14:09:19,374.374 INFO    ] 200
[2026-06-12 14:09:19,376.376 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:09:19,405.405 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 14:09:19,407.407 INFO    ] No update needed
[2026-06-12 14:09:19,408.408 INFO    ] Checking for camera pi updates...
[2026-06-12 14:09:19,430.430 INFO    ] 200
[2026-06-12 14:09:19,432.432 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:09:19,455.455 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 14:09:19,512.512 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 14:09:19,513.513 INFO    ] No camera update needed
[2026-06-12 14:09:19,515.515 INFO    ] Script finished. Safe exiting...
[2026-06-12 14:09:19,516.516 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 14:09:19,519.519 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 14:09:19,522.522 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 14:09:21,561.561 INFO    ] ================================================
[2026-06-12 14:09:21,576.576 INFO    ] Launching Daemon at Fri Jun 12 14:09:21 IST 2026
[2026-06-12 14:09:21,587.587 INFO    ] ================================================
[2026-06-12 14:09:21,943.943 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 14:09:21
[2026-06-12 14:09:22,278.278 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 14:09:22,429.429 INFO    ] Initializing speech engine...
[2026-06-12 14:09:22,434.434 INFO    ] 2026-06-12 14:09:22
[2026-06-12 14:09:22,642.642 INFO    ] 2026-06-12 14:09:22
[2026-06-12 14:09:22,671.671 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 14:09:22,854.854 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 14:09:22,857.857 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 14:09:22,994.994 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 14:09:23,060.060 INFO    ] time= 12/06/2026 14:09:23
[2026-06-12 14:09:23,084.084 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 14:09:23,086.086 INFO    ] Checking for existing commands in stream...
[2026-06-12 14:09:23,156.156 INFO    ] No existing commands found in stream
[2026-06-12 14:09:28,167.167 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 14:09:28,171.171 INFO    ] Waiting 1.17 seconds before fallback handling...
[2026-06-12 14:09:29,704.704 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 14:09:29,706.706 INFO    ] Checking for system updates...
[2026-06-12 14:09:29,726.726 INFO    ] 200
[2026-06-12 14:09:29,727.727 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:09:29,757.757 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 14:09:29,759.759 INFO    ] No update needed
[2026-06-12 14:09:29,760.760 INFO    ] Checking for camera pi updates...
[2026-06-12 14:09:29,781.781 INFO    ] 200
[2026-06-12 14:09:29,782.782 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:09:29,805.805 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 14:09:29,857.857 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 14:09:29,858.858 INFO    ] No camera update needed
[2026-06-12 14:09:29,860.860 INFO    ] Script finished. Safe exiting...
[2026-06-12 14:09:29,861.861 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 14:09:29,864.864 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 14:09:29,871.871 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 14:09:31,909.909 INFO    ] ================================================
[2026-06-12 14:09:31,925.925 INFO    ] Launching Daemon at Fri Jun 12 14:09:31 IST 2026
[2026-06-12 14:09:31,936.936 INFO    ] ================================================
[2026-06-12 14:09:32,264.264 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 14:09:32
[2026-06-12 14:09:32,603.603 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 14:09:32,737.737 INFO    ] Initializing speech engine...
[2026-06-12 14:09:32,741.741 INFO    ] 2026-06-12 14:09:32
[2026-06-12 14:09:32,975.975 INFO    ] 2026-06-12 14:09:32
[2026-06-12 14:09:33,005.005 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 14:09:33,202.202 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 14:09:33,205.205 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 14:09:33,343.343 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 14:09:33,405.405 INFO    ] time= 12/06/2026 14:09:33
[2026-06-12 14:09:33,448.448 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 14:09:33,454.454 INFO    ] Checking for existing commands in stream...
[2026-06-12 14:09:33,552.552 INFO    ] No existing commands found in stream
[2026-06-12 14:09:38,561.561 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 14:09:38,564.564 INFO    ] Waiting 1.66 seconds before fallback handling...
[2026-06-12 14:09:40,609.609 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 14:09:40,612.612 INFO    ] Checking for system updates...
[2026-06-12 14:09:40,647.647 INFO    ] 200
[2026-06-12 14:09:40,649.649 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:09:40,706.706 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 14:09:40,708.708 INFO    ] No update needed
[2026-06-12 14:09:40,710.710 INFO    ] Checking for camera pi updates...
[2026-06-12 14:09:40,744.744 INFO    ] 200
[2026-06-12 14:09:40,746.746 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:09:40,772.772 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 14:09:40,800.800 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 14:09:40,801.801 INFO    ] No camera update needed
[2026-06-12 14:09:40,803.803 INFO    ] Script finished. Safe exiting...
[2026-06-12 14:09:40,804.804 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 14:09:40,807.807 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 14:09:40,809.809 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 14:09:42,847.847 INFO    ] ================================================
[2026-06-12 14:09:42,862.862 INFO    ] Launching Daemon at Fri Jun 12 14:09:42 IST 2026
[2026-06-12 14:09:42,873.873 INFO    ] ================================================
[2026-06-12 14:09:43,243.243 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 14:09:43
[2026-06-12 14:09:43,558.558 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 14:09:43,701.701 INFO    ] Initializing speech engine...
[2026-06-12 14:09:43,706.706 INFO    ] 2026-06-12 14:09:43
[2026-06-12 14:09:43,908.908 INFO    ] 2026-06-12 14:09:43
[2026-06-12 14:09:43,936.936 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 14:09:44,119.119 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 14:09:44,123.123 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 14:09:44,259.259 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 14:09:44,325.325 INFO    ] time= 12/06/2026 14:09:44
[2026-06-12 14:09:44,349.349 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 14:09:44,356.356 INFO    ] Checking for existing commands in stream...
[2026-06-12 14:09:44,422.422 INFO    ] No existing commands found in stream
[2026-06-12 14:09:49,431.431 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 14:09:49,434.434 INFO    ] Waiting 2.52 seconds before fallback handling...
[2026-06-12 14:09:52,302.302 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 14:09:52,304.304 INFO    ] Checking for system updates...
[2026-06-12 14:09:52,324.324 INFO    ] 200
[2026-06-12 14:09:52,325.325 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:09:52,357.357 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 14:09:52,358.358 INFO    ] No update needed
[2026-06-12 14:09:52,360.360 INFO    ] Checking for camera pi updates...
[2026-06-12 14:09:52,379.379 INFO    ] 200
[2026-06-12 14:09:52,380.380 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:09:52,405.405 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 14:09:52,451.451 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 14:09:52,452.452 INFO    ] No camera update needed
[2026-06-12 14:09:52,453.453 INFO    ] Script finished. Safe exiting...
[2026-06-12 14:09:52,454.454 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 14:09:52,457.457 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 14:09:52,460.460 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 14:09:54,500.500 INFO    ] ================================================
[2026-06-12 14:09:54,516.516 INFO    ] Launching Daemon at Fri Jun 12 14:09:54 IST 2026
[2026-06-12 14:09:54,528.528 INFO    ] ================================================
[2026-06-12 14:09:54,870.870 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 14:09:54
[2026-06-12 14:09:55,206.206 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 14:09:55,349.349 INFO    ] Initializing speech engine...
[2026-06-12 14:09:55,358.358 INFO    ] 2026-06-12 14:09:55
[2026-06-12 14:09:55,569.569 INFO    ] 2026-06-12 14:09:55
[2026-06-12 14:09:55,598.598 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 14:09:55,735.735 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 14:09:55,784.784 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 14:09:55,919.919 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 14:09:55,980.980 INFO    ] time= 12/06/2026 14:09:55
[2026-06-12 14:09:56,012.012 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 14:09:56,014.014 INFO    ] Checking for existing commands in stream...
[2026-06-12 14:09:56,085.085 INFO    ] No existing commands found in stream
[2026-06-12 14:10:01,099.099 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 14:10:01,103.103 INFO    ] Waiting 3.88 seconds before fallback handling...
[2026-06-12 14:10:08,241.241 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 14:10:08,244.244 INFO    ] Checking for system updates...
[2026-06-12 14:10:08,299.299 INFO    ] 200
[2026-06-12 14:10:08,302.302 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:10:08,344.344 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 14:10:08,345.345 INFO    ] No update needed
[2026-06-12 14:10:08,347.347 INFO    ] Checking for camera pi updates...
[2026-06-12 14:10:08,368.368 INFO    ] 200
[2026-06-12 14:10:08,370.370 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:10:08,392.392 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 14:10:08,445.445 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 14:10:08,447.447 INFO    ] No camera update needed
[2026-06-12 14:10:08,448.448 INFO    ] Script finished. Safe exiting...
[2026-06-12 14:10:08,449.449 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 14:10:08,452.452 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 14:10:08,455.455 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 14:10:10,494.494 INFO    ] ================================================
[2026-06-12 14:10:10,510.510 INFO    ] Launching Daemon at Fri Jun 12 14:10:10 IST 2026
[2026-06-12 14:10:10,522.522 INFO    ] ================================================
[2026-06-12 14:10:10,881.881 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 14:10:10
[2026-06-12 14:10:11,218.218 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 14:10:11,365.365 INFO    ] Initializing speech engine...
[2026-06-12 14:10:11,367.367 INFO    ] 2026-06-12 14:10:11
[2026-06-12 14:10:11,584.584 INFO    ] 2026-06-12 14:10:11
[2026-06-12 14:10:11,613.613 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 14:10:11,746.746 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 14:10:11,800.800 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 14:10:11,938.938 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 14:10:12,006.006 INFO    ] time= 12/06/2026 14:10:11
[2026-06-12 14:10:12,030.030 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 14:10:12,037.037 INFO    ] Checking for existing commands in stream...
[2026-06-12 14:10:12,104.104 INFO    ] No existing commands found in stream
[2026-06-12 14:10:17,118.118 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 14:10:17,121.121 INFO    ] Waiting 1.45 seconds before fallback handling...
[2026-06-12 14:10:18,926.926 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 14:10:18,928.928 INFO    ] Checking for system updates...
[2026-06-12 14:10:18,949.949 INFO    ] 200
[2026-06-12 14:10:18,950.950 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:10:18,982.982 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 14:10:18,984.984 INFO    ] No update needed
[2026-06-12 14:10:18,985.985 INFO    ] Checking for camera pi updates...
[2026-06-12 14:10:19,008.008 INFO    ] 200
[2026-06-12 14:10:19,009.009 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:10:19,034.034 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 14:10:19,100.100 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 14:10:19,102.102 INFO    ] No camera update needed
[2026-06-12 14:10:19,103.103 INFO    ] Script finished. Safe exiting...
[2026-06-12 14:10:19,105.105 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 14:10:19,108.108 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 14:10:19,111.111 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 14:10:21,149.149 INFO    ] ================================================
[2026-06-12 14:10:21,165.165 INFO    ] Launching Daemon at Fri Jun 12 14:10:21 IST 2026
[2026-06-12 14:10:21,177.177 INFO    ] ================================================
[2026-06-12 14:10:21,513.513 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 14:10:21
[2026-06-12 14:10:21,826.826 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 14:10:21,971.971 INFO    ] Initializing speech engine...
[2026-06-12 14:10:21,976.976 INFO    ] 2026-06-12 14:10:21
[2026-06-12 14:10:22,179.179 INFO    ] 2026-06-12 14:10:22
[2026-06-12 14:10:22,208.208 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 14:10:22,330.330 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 14:10:22,393.393 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 14:10:22,523.523 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 14:10:22,584.584 INFO    ] time= 12/06/2026 14:10:22
[2026-06-12 14:10:22,618.618 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 14:10:22,623.623 INFO    ] Checking for existing commands in stream...
[2026-06-12 14:10:22,699.699 INFO    ] No existing commands found in stream
[2026-06-12 14:10:27,726.726 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 14:10:27,728.728 INFO    ] Waiting 3.34 seconds before fallback handling...
[2026-06-12 14:10:31,454.454 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 14:10:31,455.455 INFO    ] Checking for system updates...
[2026-06-12 14:10:31,475.475 INFO    ] 200
[2026-06-12 14:10:31,477.477 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:10:31,506.506 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 14:10:31,508.508 INFO    ] No update needed
[2026-06-12 14:10:31,509.509 INFO    ] Checking for camera pi updates...
[2026-06-12 14:10:31,528.528 INFO    ] 200
[2026-06-12 14:10:31,529.529 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:10:31,552.552 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 14:10:31,679.679 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 14:10:31,681.681 INFO    ] No camera update needed
[2026-06-12 14:10:31,682.682 INFO    ] Script finished. Safe exiting...
[2026-06-12 14:10:31,683.683 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 14:10:31,686.686 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 14:10:31,689.689 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 14:10:33,720.720 INFO    ] ================================================
[2026-06-12 14:10:33,736.736 INFO    ] Launching Daemon at Fri Jun 12 14:10:33 IST 2026
[2026-06-12 14:10:33,747.747 INFO    ] ================================================
[2026-06-12 14:10:34,100.100 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 14:10:34
[2026-06-12 14:10:34,412.412 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 14:10:34,542.542 INFO    ] Initializing speech engine...
[2026-06-12 14:10:34,550.550 INFO    ] 2026-06-12 14:10:34
[2026-06-12 14:10:34,752.752 INFO    ] 2026-06-12 14:10:34
[2026-06-12 14:10:34,781.781 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 14:10:34,957.957 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 14:10:35,009.009 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 14:10:35,155.155 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 14:10:35,223.223 INFO    ] time= 12/06/2026 14:10:35
[2026-06-12 14:10:35,249.249 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 14:10:35,260.260 INFO    ] Checking for existing commands in stream...
[2026-06-12 14:10:35,354.354 INFO    ] No existing commands found in stream
[2026-06-12 14:10:40,363.363 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 14:10:40,366.366 INFO    ] Waiting 0.49 seconds before fallback handling...
[2026-06-12 14:10:41,244.244 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 14:10:41,246.246 INFO    ] Checking for system updates...
[2026-06-12 14:10:41,267.267 INFO    ] 200
[2026-06-12 14:10:41,269.269 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:10:41,301.301 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 14:10:41,303.303 INFO    ] No update needed
[2026-06-12 14:10:41,304.304 INFO    ] Checking for camera pi updates...
[2026-06-12 14:10:41,326.326 INFO    ] 200
[2026-06-12 14:10:41,327.327 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:10:41,351.351 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 14:10:41,397.397 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 14:10:41,398.398 INFO    ] No camera update needed
[2026-06-12 14:10:41,400.400 INFO    ] Script finished. Safe exiting...
[2026-06-12 14:10:41,401.401 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 14:10:41,404.404 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 14:10:41,407.407 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 14:10:43,447.447 INFO    ] ================================================
[2026-06-12 14:10:43,462.462 INFO    ] Launching Daemon at Fri Jun 12 14:10:43 IST 2026
[2026-06-12 14:10:43,474.474 INFO    ] ================================================
[2026-06-12 14:10:43,820.820 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 14:10:43
[2026-06-12 14:10:44,137.137 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 14:10:44,281.281 INFO    ] Initializing speech engine...
[2026-06-12 14:10:44,286.286 INFO    ] 2026-06-12 14:10:44
[2026-06-12 14:10:44,490.490 INFO    ] 2026-06-12 14:10:44
[2026-06-12 14:10:44,520.520 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 14:10:44,703.703 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 14:10:44,707.707 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 14:10:44,840.840 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 14:10:44,901.901 INFO    ] time= 12/06/2026 14:10:44
[2026-06-12 14:10:44,934.934 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 14:10:44,940.940 INFO    ] Checking for existing commands in stream...
[2026-06-12 14:10:45,007.007 INFO    ] No existing commands found in stream
[2026-06-12 14:10:50,016.016 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 14:10:50,019.019 INFO    ] Waiting 2.14 seconds before fallback handling...
[2026-06-12 14:10:52,532.532 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 14:10:52,534.534 INFO    ] Checking for system updates...
[2026-06-12 14:10:52,555.555 INFO    ] 200
[2026-06-12 14:10:52,557.557 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:10:52,586.586 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 14:10:52,587.587 INFO    ] No update needed
[2026-06-12 14:10:52,589.589 INFO    ] Checking for camera pi updates...
[2026-06-12 14:10:52,609.609 INFO    ] 200
[2026-06-12 14:10:52,611.611 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:10:52,635.635 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 14:10:52,694.694 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 14:10:52,695.695 INFO    ] No camera update needed
[2026-06-12 14:10:52,696.696 INFO    ] Script finished. Safe exiting...
[2026-06-12 14:10:52,698.698 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 14:10:52,701.701 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 14:10:52,704.704 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 14:10:54,744.744 INFO    ] ================================================
[2026-06-12 14:10:54,759.759 INFO    ] Launching Daemon at Fri Jun 12 14:10:54 IST 2026
[2026-06-12 14:10:54,771.771 INFO    ] ================================================
[2026-06-12 14:10:55,124.124 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 14:10:55
[2026-06-12 14:10:55,437.437 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 14:10:55,568.568 INFO    ] Initializing speech engine...
[2026-06-12 14:10:55,576.576 INFO    ] 2026-06-12 14:10:55
[2026-06-12 14:10:55,790.790 INFO    ] 2026-06-12 14:10:55
[2026-06-12 14:10:55,819.819 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 14:10:55,949.949 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 14:10:56,008.008 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 14:10:56,139.139 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 14:10:56,201.201 INFO    ] time= 12/06/2026 14:10:56
[2026-06-12 14:10:56,240.240 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 14:10:56,246.246 INFO    ] Checking for existing commands in stream...
[2026-06-12 14:10:56,314.314 INFO    ] No existing commands found in stream
[2026-06-12 14:11:01,327.327 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 14:11:01,340.340 INFO    ] Waiting 0.03 seconds before fallback handling...
[2026-06-12 14:11:01,712.712 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 14:11:01,714.714 INFO    ] Checking for system updates...
[2026-06-12 14:11:01,738.738 INFO    ] 200
[2026-06-12 14:11:01,740.740 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:11:01,779.779 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 14:11:01,781.781 INFO    ] No update needed
[2026-06-12 14:11:01,783.783 INFO    ] Checking for camera pi updates...
[2026-06-12 14:11:01,808.808 INFO    ] 200
[2026-06-12 14:11:01,810.810 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:11:01,848.848 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 14:11:01,896.896 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 14:11:01,898.898 INFO    ] No camera update needed
[2026-06-12 14:11:01,900.900 INFO    ] Script finished. Safe exiting...
[2026-06-12 14:11:01,902.902 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 14:11:01,906.906 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 14:11:01,910.910 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 14:11:03,951.951 INFO    ] ================================================
[2026-06-12 14:11:03,967.967 INFO    ] Launching Daemon at Fri Jun 12 14:11:03 IST 2026
[2026-06-12 14:11:03,978.978 INFO    ] ================================================
[2026-06-12 14:11:04,337.337 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 14:11:04
[2026-06-12 14:11:04,648.648 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 14:11:04,792.792 INFO    ] Initializing speech engine...
[2026-06-12 14:11:04,797.797 INFO    ] 2026-06-12 14:11:04
[2026-06-12 14:11:05,000.000 INFO    ] 2026-06-12 14:11:04
[2026-06-12 14:11:05,029.029 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 14:11:05,213.213 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 14:11:05,222.222 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 14:11:05,353.353 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 14:11:05,420.420 INFO    ] time= 12/06/2026 14:11:05
[2026-06-12 14:11:05,444.444 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 14:11:05,451.451 INFO    ] Checking for existing commands in stream...
[2026-06-12 14:11:05,523.523 INFO    ] No existing commands found in stream
[2026-06-12 14:11:10,537.537 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 14:11:10,540.540 INFO    ] Waiting 2.02 seconds before fallback handling...
[2026-06-12 14:11:12,916.916 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 14:11:12,917.917 INFO    ] Checking for system updates...
[2026-06-12 14:11:12,937.937 INFO    ] 200
[2026-06-12 14:11:12,939.939 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:11:12,969.969 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 14:11:12,971.971 INFO    ] No update needed
[2026-06-12 14:11:12,972.972 INFO    ] Checking for camera pi updates...
[2026-06-12 14:11:12,992.992 INFO    ] 200
[2026-06-12 14:11:12,993.993 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:11:13,017.017 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 14:11:13,060.060 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 14:11:13,061.061 INFO    ] No camera update needed
[2026-06-12 14:11:13,063.063 INFO    ] Script finished. Safe exiting...
[2026-06-12 14:11:13,064.064 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 14:11:13,067.067 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 14:11:13,069.069 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 14:11:15,108.108 INFO    ] ================================================
[2026-06-12 14:11:15,123.123 INFO    ] Launching Daemon at Fri Jun 12 14:11:15 IST 2026
[2026-06-12 14:11:15,134.134 INFO    ] ================================================
[2026-06-12 14:11:15,455.455 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 14:11:15
[2026-06-12 14:11:15,767.767 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 14:11:15,909.909 INFO    ] Initializing speech engine...
[2026-06-12 14:11:15,915.915 INFO    ] 2026-06-12 14:11:15
[2026-06-12 14:11:16,120.120 INFO    ] 2026-06-12 14:11:16
[2026-06-12 14:11:16,148.148 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 14:11:16,272.272 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 14:11:16,335.335 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 14:11:16,471.471 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 14:11:16,528.528 INFO    ] time= 12/06/2026 14:11:16
[2026-06-12 14:11:16,563.563 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 14:11:16,568.568 INFO    ] Checking for existing commands in stream...
[2026-06-12 14:11:16,640.640 INFO    ] No existing commands found in stream
[2026-06-12 14:11:21,650.650 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 14:11:21,652.652 INFO    ] Waiting 3.05 seconds before fallback handling...
[2026-06-12 14:11:25,103.103 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 14:11:25,104.104 INFO    ] Checking for system updates...
[2026-06-12 14:11:25,125.125 INFO    ] 200
[2026-06-12 14:11:25,127.127 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:11:25,159.159 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 14:11:25,160.160 INFO    ] No update needed
[2026-06-12 14:11:25,162.162 INFO    ] Checking for camera pi updates...
[2026-06-12 14:11:25,183.183 INFO    ] 200
[2026-06-12 14:11:25,185.185 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:11:25,210.210 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 14:11:25,263.263 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 14:11:25,265.265 INFO    ] No camera update needed
[2026-06-12 14:11:25,266.266 INFO    ] Script finished. Safe exiting...
[2026-06-12 14:11:25,268.268 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 14:11:25,271.271 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 14:11:25,274.274 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 14:11:27,312.312 INFO    ] ================================================
[2026-06-12 14:11:27,327.327 INFO    ] Launching Daemon at Fri Jun 12 14:11:27 IST 2026
[2026-06-12 14:11:27,339.339 INFO    ] ================================================
[2026-06-12 14:11:27,695.695 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 14:11:27
[2026-06-12 14:11:28,035.035 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 14:11:28,188.188 INFO    ] Initializing speech engine...
[2026-06-12 14:11:28,194.194 INFO    ] 2026-06-12 14:11:28
[2026-06-12 14:11:28,405.405 INFO    ] 2026-06-12 14:11:28
[2026-06-12 14:11:28,434.434 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 14:11:28,620.620 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 14:11:28,629.629 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 14:11:28,762.762 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 14:11:28,829.829 INFO    ] time= 12/06/2026 14:11:28
[2026-06-12 14:11:28,854.854 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 14:11:28,860.860 INFO    ] Checking for existing commands in stream...
[2026-06-12 14:11:28,928.928 INFO    ] No existing commands found in stream
[2026-06-12 14:11:33,942.942 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 14:11:33,946.946 INFO    ] Waiting 3.87 seconds before fallback handling...
[2026-06-12 14:11:38,233.233 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 14:11:38,235.235 INFO    ] Checking for system updates...
[2026-06-12 14:11:38,257.257 INFO    ] 200
[2026-06-12 14:11:38,258.258 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:11:38,291.291 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 14:11:38,292.292 INFO    ] No update needed
[2026-06-12 14:11:38,294.294 INFO    ] Checking for camera pi updates...
[2026-06-12 14:11:38,313.313 INFO    ] 200
[2026-06-12 14:11:38,315.315 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:11:38,338.338 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 14:11:38,378.378 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 14:11:38,380.380 INFO    ] No camera update needed
[2026-06-12 14:11:38,381.381 INFO    ] Script finished. Safe exiting...
[2026-06-12 14:11:38,383.383 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 14:11:38,386.386 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 14:11:38,389.389 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 14:11:40,427.427 INFO    ] ================================================
[2026-06-12 14:11:40,442.442 INFO    ] Launching Daemon at Fri Jun 12 14:11:40 IST 2026
[2026-06-12 14:11:40,453.453 INFO    ] ================================================
[2026-06-12 14:11:40,823.823 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 14:11:40
[2026-06-12 14:11:41,137.137 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 14:11:41,279.279 INFO    ] Initializing speech engine...
[2026-06-12 14:11:41,284.284 INFO    ] 2026-06-12 14:11:41
[2026-06-12 14:11:41,490.490 INFO    ] 2026-06-12 14:11:41
[2026-06-12 14:11:41,518.518 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 14:11:41,703.703 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 14:11:41,706.706 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 14:11:41,843.843 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 14:11:41,907.907 INFO    ] time= 12/06/2026 14:11:41
[2026-06-12 14:11:41,934.934 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 14:11:41,936.936 INFO    ] Checking for existing commands in stream...
[2026-06-12 14:11:42,008.008 INFO    ] No existing commands found in stream
[2026-06-12 14:11:47,017.017 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 14:11:47,020.020 INFO    ] Waiting 3.05 seconds before fallback handling...
[2026-06-12 14:11:50,420.420 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 14:11:50,422.422 INFO    ] Checking for system updates...
[2026-06-12 14:11:50,442.442 INFO    ] 200
[2026-06-12 14:11:50,443.443 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:11:50,473.473 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 14:11:50,474.474 INFO    ] No update needed
[2026-06-12 14:11:50,475.475 INFO    ] Checking for camera pi updates...
[2026-06-12 14:11:50,496.496 INFO    ] 200
[2026-06-12 14:11:50,498.498 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:11:50,524.524 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 14:11:50,580.580 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 14:11:50,581.581 INFO    ] No camera update needed
[2026-06-12 14:11:50,582.582 INFO    ] Script finished. Safe exiting...
[2026-06-12 14:11:50,583.583 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 14:11:50,586.586 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 14:11:50,589.589 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 14:11:52,626.626 INFO    ] ================================================
[2026-06-12 14:11:52,641.641 INFO    ] Launching Daemon at Fri Jun 12 14:11:52 IST 2026
[2026-06-12 14:11:52,651.651 INFO    ] ================================================
[2026-06-12 14:11:52,999.999 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 14:11:52
[2026-06-12 14:11:53,311.311 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 14:11:53,443.443 INFO    ] Initializing speech engine...
[2026-06-12 14:11:53,447.447 INFO    ] 2026-06-12 14:11:53
[2026-06-12 14:11:53,663.663 INFO    ] 2026-06-12 14:11:53
[2026-06-12 14:11:53,692.692 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 14:11:53,878.878 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 14:11:53,887.887 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 14:11:54,010.010 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 14:11:54,071.071 INFO    ] time= 12/06/2026 14:11:54
[2026-06-12 14:11:54,109.109 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 14:11:54,115.115 INFO    ] Checking for existing commands in stream...
[2026-06-12 14:11:54,184.184 INFO    ] No existing commands found in stream
[2026-06-12 14:11:59,192.192 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 14:11:59,195.195 INFO    ] Waiting 2.30 seconds before fallback handling...
[2026-06-12 14:12:01,930.930 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 14:12:01,933.933 INFO    ] Checking for system updates...
[2026-06-12 14:12:01,959.959 INFO    ] 200
[2026-06-12 14:12:01,960.960 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:12:01,998.998 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 14:12:02,000.000 INFO    ] No update needed
[2026-06-12 14:12:02,001.001 INFO    ] Checking for camera pi updates...
[2026-06-12 14:12:02,029.029 INFO    ] 200
[2026-06-12 14:12:02,031.031 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:12:02,069.069 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 14:12:02,105.105 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 14:12:02,107.107 INFO    ] No camera update needed
[2026-06-12 14:12:02,108.108 INFO    ] Script finished. Safe exiting...
[2026-06-12 14:12:02,110.110 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 14:12:02,115.115 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 14:12:02,118.118 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 14:12:04,159.159 INFO    ] ================================================
[2026-06-12 14:12:04,175.175 INFO    ] Launching Daemon at Fri Jun 12 14:12:04 IST 2026
[2026-06-12 14:12:04,186.186 INFO    ] ================================================
[2026-06-12 14:12:04,531.531 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 14:12:04
[2026-06-12 14:12:04,843.843 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 14:12:04,975.975 INFO    ] Initializing speech engine...
[2026-06-12 14:12:04,978.978 INFO    ] 2026-06-12 14:12:04
[2026-06-12 14:12:05,201.201 INFO    ] 2026-06-12 14:12:05
[2026-06-12 14:12:05,230.230 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 14:12:05,371.371 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 14:12:05,372.372 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 14:12:05,482.482 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 14:12:05,483.483 INFO    ] time= 12/06/2026 14:12:05
[2026-06-12 14:12:05,484.484 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 14:12:05,486.486 INFO    ] Checking for existing commands in stream...
[2026-06-12 14:12:05,574.574 INFO    ] No existing commands found in stream
[2026-06-12 14:12:10,609.609 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 14:12:10,612.612 INFO    ] Waiting 3.74 seconds before fallback handling...
[2026-06-12 14:12:14,734.734 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 14:12:14,735.735 INFO    ] Checking for system updates...
[2026-06-12 14:12:14,756.756 INFO    ] 200
[2026-06-12 14:12:14,757.757 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:12:14,789.789 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 14:12:14,791.791 INFO    ] No update needed
[2026-06-12 14:12:14,793.793 INFO    ] Checking for camera pi updates...
[2026-06-12 14:12:14,812.812 INFO    ] 200
[2026-06-12 14:12:14,813.813 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:12:14,836.836 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 14:12:14,914.914 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 14:12:14,916.916 INFO    ] No camera update needed
[2026-06-12 14:12:14,917.917 INFO    ] Script finished. Safe exiting...
[2026-06-12 14:12:14,918.918 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 14:12:14,922.922 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 14:12:14,925.925 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 14:12:16,963.963 INFO    ] ================================================
[2026-06-12 14:12:16,978.978 INFO    ] Launching Daemon at Fri Jun 12 14:12:16 IST 2026
[2026-06-12 14:12:16,988.988 INFO    ] ================================================
[2026-06-12 14:12:17,374.374 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 14:12:17
[2026-06-12 14:12:17,706.706 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 14:12:17,859.859 INFO    ] Initializing speech engine...
[2026-06-12 14:12:17,863.863 INFO    ] 2026-06-12 14:12:17
[2026-06-12 14:12:18,071.071 INFO    ] 2026-06-12 14:12:18
[2026-06-12 14:12:18,101.101 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 14:12:18,286.286 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 14:12:18,296.296 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 14:12:18,424.424 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 14:12:18,485.485 INFO    ] time= 12/06/2026 14:12:18
[2026-06-12 14:12:18,518.518 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 14:12:18,525.525 INFO    ] Checking for existing commands in stream...
[2026-06-12 14:12:18,616.616 INFO    ] No existing commands found in stream
[2026-06-12 14:12:23,623.623 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 14:12:23,627.627 INFO    ] Waiting 1.56 seconds before fallback handling...
[2026-06-12 14:12:25,583.583 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 14:12:25,584.584 INFO    ] Checking for system updates...
[2026-06-12 14:12:25,606.606 INFO    ] 200
[2026-06-12 14:12:25,607.607 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:12:25,641.641 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 14:12:25,643.643 INFO    ] No update needed
[2026-06-12 14:12:25,645.645 INFO    ] Checking for camera pi updates...
[2026-06-12 14:12:25,670.670 INFO    ] 200
[2026-06-12 14:12:25,671.671 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:12:25,696.696 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 14:12:25,746.746 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 14:12:25,748.748 INFO    ] No camera update needed
[2026-06-12 14:12:25,749.749 INFO    ] Script finished. Safe exiting...
[2026-06-12 14:12:25,751.751 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 14:12:25,754.754 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 14:12:25,757.757 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 14:12:27,794.794 INFO    ] ================================================
[2026-06-12 14:12:27,809.809 INFO    ] Launching Daemon at Fri Jun 12 14:12:27 IST 2026
[2026-06-12 14:12:27,820.820 INFO    ] ================================================
[2026-06-12 14:12:28,179.179 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 14:12:28
[2026-06-12 14:12:28,512.512 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 14:12:28,662.662 INFO    ] Initializing speech engine...
[2026-06-12 14:12:28,666.666 INFO    ] 2026-06-12 14:12:28
[2026-06-12 14:12:28,871.871 INFO    ] 2026-06-12 14:12:28
[2026-06-12 14:12:28,900.900 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 14:12:29,084.084 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 14:12:29,095.095 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 14:12:29,238.238 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 14:12:29,291.291 INFO    ] time= 12/06/2026 14:12:29
[2026-06-12 14:12:29,314.314 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 14:12:29,320.320 INFO    ] Checking for existing commands in stream...
[2026-06-12 14:12:29,387.387 INFO    ] No existing commands found in stream
[2026-06-12 14:12:34,411.411 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 14:12:34,414.414 INFO    ] Waiting 0.13 seconds before fallback handling...
[2026-06-12 14:12:34,877.877 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 14:12:34,879.879 INFO    ] Checking for system updates...
[2026-06-12 14:12:34,899.899 INFO    ] 200
[2026-06-12 14:12:34,901.901 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:12:34,932.932 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 14:12:34,934.934 INFO    ] No update needed
[2026-06-12 14:12:34,935.935 INFO    ] Checking for camera pi updates...
[2026-06-12 14:12:34,958.958 INFO    ] 200
[2026-06-12 14:12:34,959.959 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:12:34,984.984 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 14:12:35,123.123 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 14:12:35,125.125 INFO    ] No camera update needed
[2026-06-12 14:12:35,126.126 INFO    ] Script finished. Safe exiting...
[2026-06-12 14:12:35,127.127 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 14:12:35,131.131 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 14:12:35,134.134 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 14:12:37,165.165 INFO    ] ================================================
[2026-06-12 14:12:37,180.180 INFO    ] Launching Daemon at Fri Jun 12 14:12:37 IST 2026
[2026-06-12 14:12:37,190.190 INFO    ] ================================================
[2026-06-12 14:12:37,508.508 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 14:12:37
[2026-06-12 14:12:37,823.823 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 14:12:37,968.968 INFO    ] Initializing speech engine...
[2026-06-12 14:12:37,973.973 INFO    ] 2026-06-12 14:12:37
[2026-06-12 14:12:38,177.177 INFO    ] 2026-06-12 14:12:38
[2026-06-12 14:12:38,206.206 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 14:12:38,329.329 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 14:12:38,387.387 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 14:12:38,529.529 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 14:12:38,591.591 INFO    ] time= 12/06/2026 14:12:38
[2026-06-12 14:12:38,625.625 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 14:12:38,631.631 INFO    ] Checking for existing commands in stream...
[2026-06-12 14:12:38,699.699 INFO    ] No existing commands found in stream
[2026-06-12 14:12:43,708.708 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 14:12:43,711.711 INFO    ] Waiting 3.58 seconds before fallback handling...
[2026-06-12 14:12:47,651.651 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 14:12:47,653.653 INFO    ] Checking for system updates...
[2026-06-12 14:12:47,672.672 INFO    ] 200
[2026-06-12 14:12:47,674.674 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:12:47,703.703 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 14:12:47,705.705 INFO    ] No update needed
[2026-06-12 14:12:47,706.706 INFO    ] Checking for camera pi updates...
[2026-06-12 14:12:47,725.725 INFO    ] 200
[2026-06-12 14:12:47,726.726 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:12:47,749.749 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 14:12:47,809.809 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 14:12:47,811.811 INFO    ] No camera update needed
[2026-06-12 14:12:47,812.812 INFO    ] Script finished. Safe exiting...
[2026-06-12 14:12:47,813.813 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 14:12:47,816.816 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 14:12:47,819.819 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 14:12:49,856.856 INFO    ] ================================================
[2026-06-12 14:12:49,871.871 INFO    ] Launching Daemon at Fri Jun 12 14:12:49 IST 2026
[2026-06-12 14:12:49,882.882 INFO    ] ================================================
[2026-06-12 14:12:50,218.218 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 14:12:50
[2026-06-12 14:12:50,530.530 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 14:12:50,659.659 INFO    ] Initializing speech engine...
[2026-06-12 14:12:50,663.663 INFO    ] 2026-06-12 14:12:50
[2026-06-12 14:12:50,882.882 INFO    ] 2026-06-12 14:12:50
[2026-06-12 14:12:50,910.910 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 14:12:51,094.094 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 14:12:51,104.104 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 14:12:51,234.234 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 14:12:51,301.301 INFO    ] time= 12/06/2026 14:12:51
[2026-06-12 14:12:51,325.325 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 14:12:51,331.331 INFO    ] Checking for existing commands in stream...
[2026-06-12 14:12:51,398.398 INFO    ] No existing commands found in stream
[2026-06-12 14:12:56,422.422 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 14:12:56,425.425 INFO    ] Waiting 2.71 seconds before fallback handling...
[2026-06-12 14:12:59,522.522 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 14:12:59,523.523 INFO    ] Checking for system updates...
[2026-06-12 14:12:59,543.543 INFO    ] 200
[2026-06-12 14:12:59,545.545 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:12:59,577.577 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 14:12:59,579.579 INFO    ] No update needed
[2026-06-12 14:12:59,580.580 INFO    ] Checking for camera pi updates...
[2026-06-12 14:12:59,602.602 INFO    ] 200
[2026-06-12 14:12:59,603.603 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:12:59,626.626 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 14:12:59,678.678 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 14:12:59,680.680 INFO    ] No camera update needed
[2026-06-12 14:12:59,681.681 INFO    ] Script finished. Safe exiting...
[2026-06-12 14:12:59,682.682 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 14:12:59,685.685 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 14:12:59,688.688 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 14:13:01,726.726 INFO    ] ================================================
[2026-06-12 14:13:01,741.741 INFO    ] Launching Daemon at Fri Jun 12 14:13:01 IST 2026
[2026-06-12 14:13:01,752.752 INFO    ] ================================================
[2026-06-12 14:13:02,238.238 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 14:13:02
[2026-06-12 14:13:02,607.607 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 14:13:02,792.792 INFO    ] Initializing speech engine...
[2026-06-12 14:13:02,807.807 INFO    ] 2026-06-12 14:13:02
[2026-06-12 14:13:03,041.041 INFO    ] 2026-06-12 14:13:03
[2026-06-12 14:13:03,071.071 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 14:13:03,205.205 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 14:13:03,258.258 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 14:13:03,392.392 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 14:13:03,443.443 INFO    ] time= 12/06/2026 14:13:03
[2026-06-12 14:13:03,468.468 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 14:13:03,521.521 INFO    ] Checking for existing commands in stream...
[2026-06-12 14:13:03,613.613 INFO    ] No existing commands found in stream
[2026-06-12 14:13:08,623.623 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 14:13:08,626.626 INFO    ] Waiting 2.57 seconds before fallback handling...
[2026-06-12 14:13:11,573.573 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 14:13:11,575.575 INFO    ] Checking for system updates...
[2026-06-12 14:13:11,597.597 INFO    ] 200
[2026-06-12 14:13:11,598.598 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:13:11,630.630 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 14:13:11,632.632 INFO    ] No update needed
[2026-06-12 14:13:11,633.633 INFO    ] Checking for camera pi updates...
[2026-06-12 14:13:11,652.652 INFO    ] 200
[2026-06-12 14:13:11,653.653 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:13:11,680.680 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 14:13:11,740.740 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 14:13:11,742.742 INFO    ] No camera update needed
[2026-06-12 14:13:11,743.743 INFO    ] Script finished. Safe exiting...
[2026-06-12 14:13:11,744.744 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 14:13:11,747.747 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 14:13:11,750.750 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 14:13:13,787.787 INFO    ] ================================================
[2026-06-12 14:13:13,803.803 INFO    ] Launching Daemon at Fri Jun 12 14:13:13 IST 2026
[2026-06-12 14:13:13,813.813 INFO    ] ================================================
[2026-06-12 14:13:14,168.168 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 14:13:14
[2026-06-12 14:13:14,483.483 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 14:13:14,615.615 INFO    ] Initializing speech engine...
[2026-06-12 14:13:14,628.628 INFO    ] 2026-06-12 14:13:14
[2026-06-12 14:13:14,835.835 INFO    ] 2026-06-12 14:13:14
[2026-06-12 14:13:14,864.864 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 14:13:15,178.178 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 14:13:15,242.242 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 14:13:15,364.364 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 14:13:15,391.391 INFO    ] time= 12/06/2026 14:13:15
[2026-06-12 14:13:15,394.394 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 14:13:15,397.397 INFO    ] Checking for existing commands in stream...
[2026-06-12 14:13:15,466.466 INFO    ] No existing commands found in stream
[2026-06-12 14:13:20,476.476 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 14:13:20,479.479 INFO    ] Waiting 2.04 seconds before fallback handling...
[2026-06-12 14:13:22,954.954 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 14:13:22,956.956 INFO    ] Checking for system updates...
[2026-06-12 14:13:22,976.976 INFO    ] 200
[2026-06-12 14:13:22,977.977 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:13:23,009.009 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 14:13:23,010.010 INFO    ] No update needed
[2026-06-12 14:13:23,012.012 INFO    ] Checking for camera pi updates...
[2026-06-12 14:13:23,031.031 INFO    ] 200
[2026-06-12 14:13:23,032.032 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:13:23,055.055 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 14:13:23,103.103 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 14:13:23,105.105 INFO    ] No camera update needed
[2026-06-12 14:13:23,106.106 INFO    ] Script finished. Safe exiting...
[2026-06-12 14:13:23,107.107 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 14:13:23,111.111 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 14:13:23,113.113 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 14:13:25,152.152 INFO    ] ================================================
[2026-06-12 14:13:25,168.168 INFO    ] Launching Daemon at Fri Jun 12 14:13:25 IST 2026
[2026-06-12 14:13:25,179.179 INFO    ] ================================================
[2026-06-12 14:13:25,546.546 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 14:13:25
[2026-06-12 14:13:25,864.864 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 14:13:26,012.012 INFO    ] Initializing speech engine...
[2026-06-12 14:13:26,017.017 INFO    ] 2026-06-12 14:13:26
[2026-06-12 14:13:26,283.283 INFO    ] 2026-06-12 14:13:26
[2026-06-12 14:13:26,314.314 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 14:13:26,447.447 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 14:13:26,484.484 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 14:13:26,655.655 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 14:13:26,702.702 INFO    ] time= 12/06/2026 14:13:26
[2026-06-12 14:13:26,752.752 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 14:13:26,763.763 INFO    ] Checking for existing commands in stream...
[2026-06-12 14:13:26,839.839 INFO    ] No existing commands found in stream
[2026-06-12 14:13:31,850.850 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 14:13:31,852.852 INFO    ] Waiting 1.03 seconds before fallback handling...
[2026-06-12 14:13:33,282.282 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 14:13:33,285.285 INFO    ] Checking for system updates...
[2026-06-12 14:13:33,324.324 INFO    ] 200
[2026-06-12 14:13:33,327.327 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:13:33,378.378 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 14:13:33,381.381 INFO    ] No update needed
[2026-06-12 14:13:33,383.383 INFO    ] Checking for camera pi updates...
[2026-06-12 14:13:33,417.417 INFO    ] 200
[2026-06-12 14:13:33,419.419 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:13:33,446.446 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 14:13:33,492.492 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 14:13:33,494.494 INFO    ] No camera update needed
[2026-06-12 14:13:33,495.495 INFO    ] Script finished. Safe exiting...
[2026-06-12 14:13:33,496.496 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 14:13:33,499.499 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 14:13:33,502.502 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 14:13:35,539.539 INFO    ] ================================================
[2026-06-12 14:13:35,554.554 INFO    ] Launching Daemon at Fri Jun 12 14:13:35 IST 2026
[2026-06-12 14:13:35,565.565 INFO    ] ================================================
[2026-06-12 14:13:35,941.941 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 14:13:35
[2026-06-12 14:13:36,257.257 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 14:13:36,394.394 INFO    ] Initializing speech engine...
[2026-06-12 14:13:36,407.407 INFO    ] 2026-06-12 14:13:36
[2026-06-12 14:13:36,625.625 INFO    ] 2026-06-12 14:13:36
[2026-06-12 14:13:36,656.656 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 14:13:36,853.853 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 14:13:36,857.857 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 14:13:36,995.995 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 14:13:37,061.061 INFO    ] time= 12/06/2026 14:13:37
[2026-06-12 14:13:37,084.084 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 14:13:37,102.102 INFO    ] Checking for existing commands in stream...
[2026-06-12 14:13:37,176.176 INFO    ] No existing commands found in stream
[2026-06-12 14:13:42,187.187 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 14:13:42,190.190 INFO    ] Waiting 2.55 seconds before fallback handling...
[2026-06-12 14:13:45,109.109 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 14:13:45,111.111 INFO    ] Checking for system updates...
[2026-06-12 14:13:45,131.131 INFO    ] 200
[2026-06-12 14:13:45,133.133 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:13:45,164.164 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 14:13:45,166.166 INFO    ] No update needed
[2026-06-12 14:13:45,167.167 INFO    ] Checking for camera pi updates...
[2026-06-12 14:13:45,187.187 INFO    ] 200
[2026-06-12 14:13:45,189.189 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:13:45,211.211 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 14:13:45,264.264 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 14:13:45,266.266 INFO    ] No camera update needed
[2026-06-12 14:13:45,267.267 INFO    ] Script finished. Safe exiting...
[2026-06-12 14:13:45,268.268 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 14:13:45,271.271 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 14:13:45,274.274 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 14:13:47,311.311 INFO    ] ================================================
[2026-06-12 14:13:47,327.327 INFO    ] Launching Daemon at Fri Jun 12 14:13:47 IST 2026
[2026-06-12 14:13:47,337.337 INFO    ] ================================================
[2026-06-12 14:13:47,672.672 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 14:13:47
[2026-06-12 14:13:47,986.986 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 14:13:48,123.123 INFO    ] Initializing speech engine...
[2026-06-12 14:13:48,134.134 INFO    ] 2026-06-12 14:13:48
[2026-06-12 14:13:48,335.335 INFO    ] 2026-06-12 14:13:48
[2026-06-12 14:13:48,364.364 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 14:13:48,528.528 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 14:13:48,530.530 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 14:13:48,678.678 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 14:13:48,740.740 INFO    ] time= 12/06/2026 14:13:48
[2026-06-12 14:13:48,773.773 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 14:13:48,778.778 INFO    ] Checking for existing commands in stream...
[2026-06-12 14:13:48,877.877 INFO    ] No existing commands found in stream
[2026-06-12 14:13:53,890.890 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 14:13:53,893.893 INFO    ] Waiting 0.11 seconds before fallback handling...
[2026-06-12 14:13:54,356.356 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 14:13:54,358.358 INFO    ] Checking for system updates...
[2026-06-12 14:13:54,378.378 INFO    ] 200
[2026-06-12 14:13:54,380.380 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:13:54,410.410 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 14:13:54,412.412 INFO    ] No update needed
[2026-06-12 14:13:54,413.413 INFO    ] Checking for camera pi updates...
[2026-06-12 14:13:54,432.432 INFO    ] 200
[2026-06-12 14:13:54,434.434 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:13:54,459.459 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 14:13:54,501.501 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 14:13:54,502.502 INFO    ] No camera update needed
[2026-06-12 14:13:54,504.504 INFO    ] Script finished. Safe exiting...
[2026-06-12 14:13:54,505.505 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 14:13:54,508.508 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 14:13:54,511.511 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 14:13:56,550.550 INFO    ] ================================================
[2026-06-12 14:13:56,566.566 INFO    ] Launching Daemon at Fri Jun 12 14:13:56 IST 2026
[2026-06-12 14:13:56,576.576 INFO    ] ================================================
[2026-06-12 14:13:56,945.945 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 14:13:56
[2026-06-12 14:13:57,255.255 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 14:13:57,393.393 INFO    ] Initializing speech engine...
[2026-06-12 14:13:57,404.404 INFO    ] 2026-06-12 14:13:57
[2026-06-12 14:13:57,608.608 INFO    ] 2026-06-12 14:13:57
[2026-06-12 14:13:57,637.637 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 14:13:57,822.822 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 14:13:57,826.826 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 14:13:57,963.963 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 14:13:58,030.030 INFO    ] time= 12/06/2026 14:13:57
[2026-06-12 14:13:58,055.055 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 14:13:58,061.061 INFO    ] Checking for existing commands in stream...
[2026-06-12 14:13:58,127.127 INFO    ] No existing commands found in stream
[2026-06-12 14:14:03,137.137 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 14:14:03,140.140 INFO    ] Waiting 1.49 seconds before fallback handling...
[2026-06-12 14:14:04,982.982 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 14:14:04,983.983 INFO    ] Checking for system updates...
[2026-06-12 14:14:05,005.005 INFO    ] 200
[2026-06-12 14:14:05,006.006 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:14:05,037.037 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 14:14:05,039.039 INFO    ] No update needed
[2026-06-12 14:14:05,040.040 INFO    ] Checking for camera pi updates...
[2026-06-12 14:14:05,060.060 INFO    ] 200
[2026-06-12 14:14:05,061.061 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:14:05,084.084 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 14:14:05,135.135 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 14:14:05,136.136 INFO    ] No camera update needed
[2026-06-12 14:14:05,137.137 INFO    ] Script finished. Safe exiting...
[2026-06-12 14:14:05,138.138 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 14:14:05,141.141 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 14:14:05,144.144 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 14:14:07,182.182 INFO    ] ================================================
[2026-06-12 14:14:07,197.197 INFO    ] Launching Daemon at Fri Jun 12 14:14:07 IST 2026
[2026-06-12 14:14:07,208.208 INFO    ] ================================================
[2026-06-12 14:14:07,570.570 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 14:14:07
[2026-06-12 14:14:07,882.882 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 14:14:08,024.024 INFO    ] Initializing speech engine...
[2026-06-12 14:14:08,029.029 INFO    ] 2026-06-12 14:14:08
[2026-06-12 14:14:08,236.236 INFO    ] 2026-06-12 14:14:08
[2026-06-12 14:14:08,264.264 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 14:14:08,450.450 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 14:14:08,459.459 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 14:14:08,591.591 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 14:14:08,658.658 INFO    ] time= 12/06/2026 14:14:08
[2026-06-12 14:14:08,682.682 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 14:14:08,684.684 INFO    ] Checking for existing commands in stream...
[2026-06-12 14:14:08,756.756 INFO    ] No existing commands found in stream
[2026-06-12 14:14:13,770.770 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 14:14:13,773.773 INFO    ] Waiting 1.46 seconds before fallback handling...
[2026-06-12 14:14:15,581.581 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 14:14:15,582.582 INFO    ] Checking for system updates...
[2026-06-12 14:14:15,603.603 INFO    ] 200
[2026-06-12 14:14:15,604.604 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:14:15,636.636 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 14:14:15,637.637 INFO    ] No update needed
[2026-06-12 14:14:15,639.639 INFO    ] Checking for camera pi updates...
[2026-06-12 14:14:15,660.660 INFO    ] 200
[2026-06-12 14:14:15,662.662 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:14:15,686.686 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 14:14:15,746.746 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 14:14:15,748.748 INFO    ] No camera update needed
[2026-06-12 14:14:15,749.749 INFO    ] Script finished. Safe exiting...
[2026-06-12 14:14:15,751.751 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 14:14:15,754.754 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 14:14:15,757.757 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 14:14:17,795.795 INFO    ] ================================================
[2026-06-12 14:14:17,810.810 INFO    ] Launching Daemon at Fri Jun 12 14:14:17 IST 2026
[2026-06-12 14:14:17,821.821 INFO    ] ================================================
[2026-06-12 14:14:18,177.177 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 14:14:18
[2026-06-12 14:14:18,511.511 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 14:14:18,653.653 INFO    ] Initializing speech engine...
[2026-06-12 14:14:18,666.666 INFO    ] 2026-06-12 14:14:18
[2026-06-12 14:14:18,880.880 INFO    ] 2026-06-12 14:14:18
[2026-06-12 14:14:18,908.908 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 14:14:19,094.094 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 14:14:19,103.103 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 14:14:19,233.233 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 14:14:19,289.289 INFO    ] time= 12/06/2026 14:14:19
[2026-06-12 14:14:19,327.327 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 14:14:19,334.334 INFO    ] Checking for existing commands in stream...
[2026-06-12 14:14:19,425.425 INFO    ] No existing commands found in stream
[2026-06-12 14:14:24,440.440 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 14:14:24,443.443 INFO    ] Waiting 3.39 seconds before fallback handling...
[2026-06-12 14:14:28,257.257 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 14:14:28,259.259 INFO    ] Checking for system updates...
[2026-06-12 14:14:28,280.280 INFO    ] 200
[2026-06-12 14:14:28,281.281 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:14:28,311.311 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 14:14:28,312.312 INFO    ] No update needed
[2026-06-12 14:14:28,314.314 INFO    ] Checking for camera pi updates...
[2026-06-12 14:14:28,333.333 INFO    ] 200
[2026-06-12 14:14:28,334.334 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:14:28,358.358 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 14:14:28,459.459 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 14:14:28,460.460 INFO    ] No camera update needed
[2026-06-12 14:14:28,462.462 INFO    ] Script finished. Safe exiting...
[2026-06-12 14:14:28,463.463 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 14:14:28,467.467 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 14:14:28,469.469 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 14:14:30,507.507 INFO    ] ================================================
[2026-06-12 14:14:30,522.522 INFO    ] Launching Daemon at Fri Jun 12 14:14:30 IST 2026
[2026-06-12 14:14:30,533.533 INFO    ] ================================================
[2026-06-12 14:14:30,907.907 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 14:14:30
[2026-06-12 14:14:31,239.239 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 14:14:31,416.416 INFO    ] Initializing speech engine...
[2026-06-12 14:14:31,422.422 INFO    ] 2026-06-12 14:14:31
[2026-06-12 14:14:31,653.653 INFO    ] 2026-06-12 14:14:31
[2026-06-12 14:14:31,686.686 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 14:14:31,884.884 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 14:14:31,894.894 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 14:14:32,035.035 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 14:14:32,100.100 INFO    ] time= 12/06/2026 14:14:32
[2026-06-12 14:14:32,125.125 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 14:14:32,131.131 INFO    ] Checking for existing commands in stream...
[2026-06-12 14:14:32,197.197 INFO    ] No existing commands found in stream
[2026-06-12 14:14:37,208.208 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 14:14:37,211.211 INFO    ] Waiting 3.80 seconds before fallback handling...
[2026-06-12 14:14:41,386.386 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 14:14:41,389.389 INFO    ] Checking for system updates...
[2026-06-12 14:14:41,410.410 INFO    ] 200
[2026-06-12 14:14:41,412.412 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:14:41,444.444 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 14:14:41,445.445 INFO    ] No update needed
[2026-06-12 14:14:41,446.446 INFO    ] Checking for camera pi updates...
[2026-06-12 14:14:41,467.467 INFO    ] 200
[2026-06-12 14:14:41,468.468 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:14:41,492.492 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 14:14:41,641.641 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 14:14:41,642.642 INFO    ] No camera update needed
[2026-06-12 14:14:41,644.644 INFO    ] Script finished. Safe exiting...
[2026-06-12 14:14:41,645.645 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 14:14:41,648.648 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 14:14:41,650.650 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 14:14:43,688.688 INFO    ] ================================================
[2026-06-12 14:14:43,703.703 INFO    ] Launching Daemon at Fri Jun 12 14:14:43 IST 2026
[2026-06-12 14:14:43,714.714 INFO    ] ================================================
[2026-06-12 14:14:44,051.051 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 14:14:44
[2026-06-12 14:14:44,368.368 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 14:14:44,512.512 INFO    ] Initializing speech engine...
[2026-06-12 14:14:44,517.517 INFO    ] 2026-06-12 14:14:44
[2026-06-12 14:14:44,721.721 INFO    ] 2026-06-12 14:14:44
[2026-06-12 14:14:44,749.749 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 14:14:44,933.933 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 14:14:44,937.937 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 14:14:45,074.074 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 14:14:45,138.138 INFO    ] time= 12/06/2026 14:14:45
[2026-06-12 14:14:45,165.165 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 14:14:45,172.172 INFO    ] Checking for existing commands in stream...
[2026-06-12 14:14:45,238.238 INFO    ] No existing commands found in stream
[2026-06-12 14:14:50,247.247 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 14:14:50,250.250 INFO    ] Waiting 1.87 seconds before fallback handling...
[2026-06-12 14:14:52,475.475 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 14:14:52,477.477 INFO    ] Checking for system updates...
[2026-06-12 14:14:52,497.497 INFO    ] 200
[2026-06-12 14:14:52,498.498 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:14:52,528.528 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 14:14:52,529.529 INFO    ] No update needed
[2026-06-12 14:14:52,531.531 INFO    ] Checking for camera pi updates...
[2026-06-12 14:14:52,551.551 INFO    ] 200
[2026-06-12 14:14:52,552.552 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:14:52,575.575 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 14:14:52,702.702 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 14:14:52,703.703 INFO    ] No camera update needed
[2026-06-12 14:14:52,705.705 INFO    ] Script finished. Safe exiting...
[2026-06-12 14:14:52,706.706 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 14:14:52,709.709 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 14:14:52,712.712 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 14:14:54,752.752 INFO    ] ================================================
[2026-06-12 14:14:54,766.766 INFO    ] Launching Daemon at Fri Jun 12 14:14:54 IST 2026
[2026-06-12 14:14:54,777.777 INFO    ] ================================================
[2026-06-12 14:14:55,156.156 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 14:14:55
[2026-06-12 14:14:55,493.493 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 14:14:55,644.644 INFO    ] Initializing speech engine...
[2026-06-12 14:14:55,649.649 INFO    ] 2026-06-12 14:14:55
[2026-06-12 14:14:55,856.856 INFO    ] 2026-06-12 14:14:55
[2026-06-12 14:14:55,885.885 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 14:14:56,070.070 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 14:14:56,082.082 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 14:14:56,272.272 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 14:14:56,297.297 INFO    ] time= 12/06/2026 14:14:56
[2026-06-12 14:14:56,303.303 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 14:14:56,305.305 INFO    ] Checking for existing commands in stream...
[2026-06-12 14:14:56,372.372 INFO    ] No existing commands found in stream
[2026-06-12 14:15:01,385.385 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 14:15:01,389.389 INFO    ] Waiting 3.38 seconds before fallback handling...
[2026-06-12 14:15:05,126.126 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 14:15:05,128.128 INFO    ] Checking for system updates...
[2026-06-12 14:15:05,149.149 INFO    ] 200
[2026-06-12 14:15:05,150.150 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:15:05,183.183 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 14:15:05,184.184 INFO    ] No update needed
[2026-06-12 14:15:05,185.185 INFO    ] Checking for camera pi updates...
[2026-06-12 14:15:05,208.208 INFO    ] 200
[2026-06-12 14:15:05,210.210 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:15:05,237.237 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 14:15:05,312.312 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 14:15:05,314.314 INFO    ] No camera update needed
[2026-06-12 14:15:05,315.315 INFO    ] Script finished. Safe exiting...
[2026-06-12 14:15:05,316.316 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 14:15:05,319.319 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 14:15:05,323.323 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 14:15:07,361.361 INFO    ] ================================================
[2026-06-12 14:15:07,376.376 INFO    ] Launching Daemon at Fri Jun 12 14:15:07 IST 2026
[2026-06-12 14:15:07,386.386 INFO    ] ================================================
[2026-06-12 14:15:07,755.755 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 14:15:07
[2026-06-12 14:15:08,072.072 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 14:15:08,217.217 INFO    ] Initializing speech engine...
[2026-06-12 14:15:08,222.222 INFO    ] 2026-06-12 14:15:08
[2026-06-12 14:15:08,425.425 INFO    ] 2026-06-12 14:15:08
[2026-06-12 14:15:08,454.454 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 14:15:08,638.638 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 14:15:08,647.647 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 14:15:08,775.775 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 14:15:08,836.836 INFO    ] time= 12/06/2026 14:15:08
[2026-06-12 14:15:08,868.868 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 14:15:08,870.870 INFO    ] Checking for existing commands in stream...
[2026-06-12 14:15:08,942.942 INFO    ] No existing commands found in stream
[2026-06-12 14:15:13,956.956 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 14:15:13,959.959 INFO    ] Waiting 2.83 seconds before fallback handling...
[2026-06-12 14:15:17,141.141 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 14:15:17,143.143 INFO    ] Checking for system updates...
[2026-06-12 14:15:17,164.164 INFO    ] 200
[2026-06-12 14:15:17,166.166 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:15:17,196.196 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 14:15:17,197.197 INFO    ] No update needed
[2026-06-12 14:15:17,198.198 INFO    ] Checking for camera pi updates...
[2026-06-12 14:15:17,217.217 INFO    ] 200
[2026-06-12 14:15:17,219.219 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:15:17,241.241 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 14:15:17,274.274 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 14:15:17,275.275 INFO    ] No camera update needed
[2026-06-12 14:15:17,277.277 INFO    ] Script finished. Safe exiting...
[2026-06-12 14:15:17,278.278 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 14:15:17,281.281 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 14:15:17,284.284 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 14:15:19,326.326 INFO    ] ================================================
[2026-06-12 14:15:19,341.341 INFO    ] Launching Daemon at Fri Jun 12 14:15:19 IST 2026
[2026-06-12 14:15:19,351.351 INFO    ] ================================================
[2026-06-12 14:15:19,699.699 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 14:15:19
[2026-06-12 14:15:20,012.012 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 14:15:20,143.143 INFO    ] Initializing speech engine...
[2026-06-12 14:15:20,151.151 INFO    ] 2026-06-12 14:15:20
[2026-06-12 14:15:20,364.364 INFO    ] 2026-06-12 14:15:20
[2026-06-12 14:15:20,393.393 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 14:15:20,579.579 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 14:15:20,589.589 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 14:15:20,717.717 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 14:15:20,774.774 INFO    ] time= 12/06/2026 14:15:20
[2026-06-12 14:15:20,810.810 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 14:15:20,815.815 INFO    ] Checking for existing commands in stream...
[2026-06-12 14:15:20,888.888 INFO    ] No existing commands found in stream
[2026-06-12 14:15:25,897.897 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 14:15:25,900.900 INFO    ] Waiting 2.53 seconds before fallback handling...
[2026-06-12 14:15:28,771.771 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 14:15:28,773.773 INFO    ] Checking for system updates...
[2026-06-12 14:15:28,793.793 INFO    ] 200
[2026-06-12 14:15:28,794.794 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:15:28,827.827 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 14:15:28,828.828 INFO    ] No update needed
[2026-06-12 14:15:28,829.829 INFO    ] Checking for camera pi updates...
[2026-06-12 14:15:28,850.850 INFO    ] 200
[2026-06-12 14:15:28,851.851 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:15:28,874.874 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 14:15:28,982.982 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 14:15:28,984.984 INFO    ] No camera update needed
[2026-06-12 14:15:28,985.985 INFO    ] Script finished. Safe exiting...
[2026-06-12 14:15:28,986.986 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 14:15:28,989.989 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 14:15:28,992.992 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 14:15:31,032.032 INFO    ] ================================================
[2026-06-12 14:15:31,047.047 INFO    ] Launching Daemon at Fri Jun 12 14:15:31 IST 2026
[2026-06-12 14:15:31,058.058 INFO    ] ================================================
[2026-06-12 14:15:31,447.447 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 14:15:31
[2026-06-12 14:15:31,825.825 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 14:15:32,004.004 INFO    ] Initializing speech engine...
[2026-06-12 14:15:32,012.012 INFO    ] 2026-06-12 14:15:32
[2026-06-12 14:15:32,232.232 INFO    ] 2026-06-12 14:15:32
[2026-06-12 14:15:32,269.269 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 14:15:32,388.388 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 14:15:32,403.403 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 14:15:32,550.550 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 14:15:32,599.599 INFO    ] time= 12/06/2026 14:15:32
[2026-06-12 14:15:32,660.660 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 14:15:32,689.689 INFO    ] Checking for existing commands in stream...
[2026-06-12 14:15:32,770.770 INFO    ] No existing commands found in stream
[2026-06-12 14:15:37,784.784 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 14:15:37,787.787 INFO    ] Waiting 0.66 seconds before fallback handling...
[2026-06-12 14:15:38,779.779 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 14:15:38,781.781 INFO    ] Checking for system updates...
[2026-06-12 14:15:38,803.803 INFO    ] 200
[2026-06-12 14:15:38,804.804 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:15:38,839.839 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 14:15:38,841.841 INFO    ] No update needed
[2026-06-12 14:15:38,842.842 INFO    ] Checking for camera pi updates...
[2026-06-12 14:15:38,864.864 INFO    ] 200
[2026-06-12 14:15:38,865.865 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:15:38,891.891 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 14:15:38,936.936 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 14:15:38,938.938 INFO    ] No camera update needed
[2026-06-12 14:15:38,939.939 INFO    ] Script finished. Safe exiting...
[2026-06-12 14:15:38,941.941 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 14:15:38,944.944 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 14:15:38,947.947 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 14:15:40,985.985 INFO    ] ================================================
[2026-06-12 14:15:41,001.001 INFO    ] Launching Daemon at Fri Jun 12 14:15:40 IST 2026
[2026-06-12 14:15:41,012.012 INFO    ] ================================================
[2026-06-12 14:15:41,360.360 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 14:15:41
[2026-06-12 14:15:41,675.675 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 14:15:41,813.813 INFO    ] Initializing speech engine...
[2026-06-12 14:15:41,823.823 INFO    ] 2026-06-12 14:15:41
[2026-06-12 14:15:42,031.031 INFO    ] 2026-06-12 14:15:42
[2026-06-12 14:15:42,059.059 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 14:15:42,248.248 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 14:15:42,256.256 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 14:15:42,386.386 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 14:15:42,452.452 INFO    ] time= 12/06/2026 14:15:42
[2026-06-12 14:15:42,482.482 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 14:15:42,488.488 INFO    ] Checking for existing commands in stream...
[2026-06-12 14:15:42,556.556 INFO    ] No existing commands found in stream
[2026-06-12 14:15:47,565.565 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 14:15:47,568.568 INFO    ] Waiting 0.92 seconds before fallback handling...
[2026-06-12 14:15:48,868.868 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 14:15:48,870.870 INFO    ] Checking for system updates...
[2026-06-12 14:15:48,890.890 INFO    ] 200
[2026-06-12 14:15:48,891.891 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:15:48,920.920 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 14:15:48,922.922 INFO    ] No update needed
[2026-06-12 14:15:48,923.923 INFO    ] Checking for camera pi updates...
[2026-06-12 14:15:48,942.942 INFO    ] 200
[2026-06-12 14:15:48,944.944 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:15:48,968.968 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 14:15:49,021.021 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 14:15:49,023.023 INFO    ] No camera update needed
[2026-06-12 14:15:49,024.024 INFO    ] Script finished. Safe exiting...
[2026-06-12 14:15:49,025.025 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 14:15:49,028.028 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 14:15:49,031.031 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 14:15:51,071.071 INFO    ] ================================================
[2026-06-12 14:15:51,086.086 INFO    ] Launching Daemon at Fri Jun 12 14:15:51 IST 2026
[2026-06-12 14:15:51,097.097 INFO    ] ================================================
[2026-06-12 14:15:51,453.453 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 14:15:51
[2026-06-12 14:15:51,766.766 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 14:15:51,910.910 INFO    ] Initializing speech engine...
[2026-06-12 14:15:51,915.915 INFO    ] 2026-06-12 14:15:51
[2026-06-12 14:15:52,120.120 INFO    ] 2026-06-12 14:15:52
[2026-06-12 14:15:52,149.149 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 14:15:52,335.335 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 14:15:52,344.344 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 14:15:52,475.475 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 14:15:52,542.542 INFO    ] time= 12/06/2026 14:15:52
[2026-06-12 14:15:52,566.566 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 14:15:52,572.572 INFO    ] Checking for existing commands in stream...
[2026-06-12 14:15:52,638.638 INFO    ] No existing commands found in stream
[2026-06-12 14:15:57,648.648 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 14:15:57,651.651 INFO    ] Waiting 1.35 seconds before fallback handling...
[2026-06-12 14:15:59,370.370 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 14:15:59,371.371 INFO    ] Checking for system updates...
[2026-06-12 14:15:59,393.393 INFO    ] 200
[2026-06-12 14:15:59,394.394 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:15:59,426.426 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 14:15:59,427.427 INFO    ] No update needed
[2026-06-12 14:15:59,428.428 INFO    ] Checking for camera pi updates...
[2026-06-12 14:15:59,448.448 INFO    ] 200
[2026-06-12 14:15:59,449.449 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:15:59,472.472 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 14:15:59,514.514 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 14:15:59,515.515 INFO    ] No camera update needed
[2026-06-12 14:15:59,517.517 INFO    ] Script finished. Safe exiting...
[2026-06-12 14:15:59,518.518 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 14:15:59,521.521 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 14:15:59,524.524 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 14:16:01,563.563 INFO    ] ================================================
[2026-06-12 14:16:01,578.578 INFO    ] Launching Daemon at Fri Jun 12 14:16:01 IST 2026
[2026-06-12 14:16:01,589.589 INFO    ] ================================================
[2026-06-12 14:16:02,086.086 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 14:16:02
[2026-06-12 14:16:02,458.458 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 14:16:02,628.628 INFO    ] Initializing speech engine...
[2026-06-12 14:16:02,632.632 INFO    ] 2026-06-12 14:16:02
[2026-06-12 14:16:02,885.885 INFO    ] 2026-06-12 14:16:02
[2026-06-12 14:16:02,915.915 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 14:16:03,039.039 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 14:16:03,102.102 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 14:16:03,236.236 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 14:16:03,302.302 INFO    ] time= 12/06/2026 14:16:03
[2026-06-12 14:16:03,336.336 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 14:16:03,342.342 INFO    ] Checking for existing commands in stream...
[2026-06-12 14:16:03,411.411 INFO    ] No existing commands found in stream
[2026-06-12 14:16:08,425.425 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 14:16:08,428.428 INFO    ] Waiting 2.65 seconds before fallback handling...
[2026-06-12 14:16:11,427.427 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 14:16:11,429.429 INFO    ] Checking for system updates...
[2026-06-12 14:16:11,450.450 INFO    ] 200
[2026-06-12 14:16:11,452.452 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:16:11,481.481 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 14:16:11,482.482 INFO    ] No update needed
[2026-06-12 14:16:11,484.484 INFO    ] Checking for camera pi updates...
[2026-06-12 14:16:11,505.505 INFO    ] 200
[2026-06-12 14:16:11,506.506 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:16:11,530.530 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 14:16:11,584.584 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 14:16:11,585.585 INFO    ] No camera update needed
[2026-06-12 14:16:11,586.586 INFO    ] Script finished. Safe exiting...
[2026-06-12 14:16:11,588.588 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 14:16:11,591.591 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 14:16:11,593.593 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 14:16:13,633.633 INFO    ] ================================================
[2026-06-12 14:16:13,649.649 INFO    ] Launching Daemon at Fri Jun 12 14:16:13 IST 2026
[2026-06-12 14:16:13,660.660 INFO    ] ================================================
[2026-06-12 14:16:14,022.022 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 14:16:14
[2026-06-12 14:16:14,362.362 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 14:16:14,515.515 INFO    ] Initializing speech engine...
[2026-06-12 14:16:14,521.521 INFO    ] 2026-06-12 14:16:14
[2026-06-12 14:16:14,731.731 INFO    ] 2026-06-12 14:16:14
[2026-06-12 14:16:14,760.760 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 14:16:14,894.894 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 14:16:14,948.948 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 14:16:15,089.089 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 14:16:15,157.157 INFO    ] time= 12/06/2026 14:16:15
[2026-06-12 14:16:15,182.182 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 14:16:15,188.188 INFO    ] Checking for existing commands in stream...
[2026-06-12 14:16:15,257.257 INFO    ] No existing commands found in stream
[2026-06-12 14:16:20,272.272 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 14:16:20,275.275 INFO    ] Waiting 2.77 seconds before fallback handling...
[2026-06-12 14:16:23,389.389 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 14:16:23,391.391 INFO    ] Checking for system updates...
[2026-06-12 14:16:23,411.411 INFO    ] 200
[2026-06-12 14:16:23,413.413 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:16:23,445.445 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 14:16:23,446.446 INFO    ] No update needed
[2026-06-12 14:16:23,448.448 INFO    ] Checking for camera pi updates...
[2026-06-12 14:16:23,471.471 INFO    ] 200
[2026-06-12 14:16:23,472.472 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:16:23,499.499 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 14:16:23,546.546 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 14:16:23,548.548 INFO    ] No camera update needed
[2026-06-12 14:16:23,549.549 INFO    ] Script finished. Safe exiting...
[2026-06-12 14:16:23,550.550 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 14:16:23,554.554 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 14:16:23,557.557 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 14:16:25,596.596 INFO    ] ================================================
[2026-06-12 14:16:25,617.617 INFO    ] Launching Daemon at Fri Jun 12 14:16:25 IST 2026
[2026-06-12 14:16:25,628.628 INFO    ] ================================================
[2026-06-12 14:16:25,990.990 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 14:16:25
[2026-06-12 14:16:26,302.302 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 14:16:26,432.432 INFO    ] Initializing speech engine...
[2026-06-12 14:16:26,433.433 INFO    ] 2026-06-12 14:16:26
[2026-06-12 14:16:26,652.652 INFO    ] 2026-06-12 14:16:26
[2026-06-12 14:16:26,680.680 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 14:16:26,843.843 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 14:16:26,866.866 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 14:16:26,995.995 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 14:16:27,051.051 INFO    ] time= 12/06/2026 14:16:27
[2026-06-12 14:16:27,093.093 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 14:16:27,095.095 INFO    ] Checking for existing commands in stream...
[2026-06-12 14:16:27,166.166 INFO    ] No existing commands found in stream
[2026-06-12 14:16:32,171.171 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 14:16:32,173.173 INFO    ] Waiting 3.97 seconds before fallback handling...
[2026-06-12 14:16:36,516.516 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 14:16:36,518.518 INFO    ] Checking for system updates...
[2026-06-12 14:16:36,539.539 INFO    ] 200
[2026-06-12 14:16:36,540.540 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:16:36,570.570 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 14:16:36,572.572 INFO    ] No update needed
[2026-06-12 14:16:36,573.573 INFO    ] Checking for camera pi updates...
[2026-06-12 14:16:36,592.592 INFO    ] 200
[2026-06-12 14:16:36,594.594 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:16:36,618.618 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 14:16:36,668.668 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 14:16:36,669.669 INFO    ] No camera update needed
[2026-06-12 14:16:36,671.671 INFO    ] Script finished. Safe exiting...
[2026-06-12 14:16:36,672.672 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 14:16:36,675.675 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 14:16:36,678.678 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 14:16:38,717.717 INFO    ] ================================================
[2026-06-12 14:16:38,733.733 INFO    ] Launching Daemon at Fri Jun 12 14:16:38 IST 2026
[2026-06-12 14:16:38,744.744 INFO    ] ================================================
[2026-06-12 14:16:39,108.108 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 14:16:39
[2026-06-12 14:16:39,421.421 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 14:16:39,550.550 INFO    ] Initializing speech engine...
[2026-06-12 14:16:39,555.555 INFO    ] 2026-06-12 14:16:39
[2026-06-12 14:16:39,771.771 INFO    ] 2026-06-12 14:16:39
[2026-06-12 14:16:39,801.801 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 14:16:39,953.953 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 14:16:39,986.986 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 14:16:40,121.121 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 14:16:40,188.188 INFO    ] time= 12/06/2026 14:16:40
[2026-06-12 14:16:40,212.212 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 14:16:40,218.218 INFO    ] Checking for existing commands in stream...
[2026-06-12 14:16:40,282.282 INFO    ] No existing commands found in stream
[2026-06-12 14:16:45,293.293 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 14:16:45,295.295 INFO    ] Waiting 3.64 seconds before fallback handling...
[2026-06-12 14:16:49,294.294 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 14:16:49,295.295 INFO    ] Checking for system updates...
[2026-06-12 14:16:49,317.317 INFO    ] 200
[2026-06-12 14:16:49,318.318 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:16:49,350.350 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 14:16:49,351.351 INFO    ] No update needed
[2026-06-12 14:16:49,352.352 INFO    ] Checking for camera pi updates...
[2026-06-12 14:16:49,372.372 INFO    ] 200
[2026-06-12 14:16:49,374.374 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:16:49,396.396 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 14:16:49,537.537 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 14:16:49,538.538 INFO    ] No camera update needed
[2026-06-12 14:16:49,540.540 INFO    ] Script finished. Safe exiting...
[2026-06-12 14:16:49,541.541 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 14:16:49,544.544 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 14:16:49,547.547 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 14:16:51,585.585 INFO    ] ================================================
[2026-06-12 14:16:51,601.601 INFO    ] Launching Daemon at Fri Jun 12 14:16:51 IST 2026
[2026-06-12 14:16:51,612.612 INFO    ] ================================================
[2026-06-12 14:16:51,981.981 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 14:16:51
[2026-06-12 14:16:52,316.316 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 14:16:52,466.466 INFO    ] Initializing speech engine...
[2026-06-12 14:16:52,472.472 INFO    ] 2026-06-12 14:16:52
[2026-06-12 14:16:52,680.680 INFO    ] 2026-06-12 14:16:52
[2026-06-12 14:16:52,709.709 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 14:16:52,892.892 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 14:16:52,896.896 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 14:16:53,053.053 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 14:16:53,102.102 INFO    ] time= 12/06/2026 14:16:53
[2026-06-12 14:16:53,124.124 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 14:16:53,130.130 INFO    ] Checking for existing commands in stream...
[2026-06-12 14:16:53,219.219 INFO    ] No existing commands found in stream
[2026-06-12 14:16:58,229.229 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 14:16:58,232.232 INFO    ] Waiting 2.07 seconds before fallback handling...
[2026-06-12 14:17:00,639.639 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 14:17:00,641.641 INFO    ] Checking for system updates...
[2026-06-12 14:17:00,661.661 INFO    ] 200
[2026-06-12 14:17:00,663.663 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:17:00,695.695 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 14:17:00,696.696 INFO    ] No update needed
[2026-06-12 14:17:00,697.697 INFO    ] Checking for camera pi updates...
[2026-06-12 14:17:00,717.717 INFO    ] 200
[2026-06-12 14:17:00,719.719 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:17:00,742.742 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 14:17:00,811.811 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 14:17:00,812.812 INFO    ] No camera update needed
[2026-06-12 14:17:00,813.813 INFO    ] Script finished. Safe exiting...
[2026-06-12 14:17:00,814.814 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 14:17:00,817.817 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 14:17:00,820.820 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 14:17:02,843.843 INFO    ] ================================================
[2026-06-12 14:17:02,853.853 INFO    ] Launching Daemon at Fri Jun 12 14:17:02 IST 2026
[2026-06-12 14:17:02,859.859 INFO    ] ================================================
[2026-06-12 14:17:03,184.184 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 14:17:03
[2026-06-12 14:17:03,499.499 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 14:17:03,642.642 INFO    ] Initializing speech engine...
[2026-06-12 14:17:03,647.647 INFO    ] 2026-06-12 14:17:03
[2026-06-12 14:17:03,851.851 INFO    ] 2026-06-12 14:17:03
[2026-06-12 14:17:03,880.880 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 14:17:04,063.063 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 14:17:04,066.066 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 14:17:04,199.199 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 14:17:04,262.262 INFO    ] time= 12/06/2026 14:17:04
[2026-06-12 14:17:04,294.294 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 14:17:04,296.296 INFO    ] Checking for existing commands in stream...
[2026-06-12 14:17:04,367.367 INFO    ] No existing commands found in stream
[2026-06-12 14:17:09,376.376 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 14:17:09,379.379 INFO    ] Waiting 2.90 seconds before fallback handling...
[2026-06-12 14:17:12,637.637 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 14:17:12,639.639 INFO    ] Checking for system updates...
[2026-06-12 14:17:12,661.661 INFO    ] 200
[2026-06-12 14:17:12,662.662 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:17:12,697.697 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 14:17:12,699.699 INFO    ] No update needed
[2026-06-12 14:17:12,701.701 INFO    ] Checking for camera pi updates...
[2026-06-12 14:17:12,724.724 INFO    ] 200
[2026-06-12 14:17:12,725.725 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:17:12,753.753 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 14:17:12,801.801 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 14:17:12,802.802 INFO    ] No camera update needed
[2026-06-12 14:17:12,803.803 INFO    ] Script finished. Safe exiting...
[2026-06-12 14:17:12,805.805 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 14:17:12,809.809 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 14:17:12,812.812 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 14:17:14,852.852 INFO    ] ================================================
[2026-06-12 14:17:14,866.866 INFO    ] Launching Daemon at Fri Jun 12 14:17:14 IST 2026
[2026-06-12 14:17:14,877.877 INFO    ] ================================================
[2026-06-12 14:17:15,208.208 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 14:17:15
[2026-06-12 14:17:15,526.526 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 14:17:15,669.669 INFO    ] Initializing speech engine...
[2026-06-12 14:17:15,679.679 INFO    ] 2026-06-12 14:17:15
[2026-06-12 14:17:15,897.897 INFO    ] 2026-06-12 14:17:15
[2026-06-12 14:17:15,928.928 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 14:17:16,126.126 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 14:17:16,134.134 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 14:17:16,272.272 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 14:17:16,333.333 INFO    ] time= 12/06/2026 14:17:16
[2026-06-12 14:17:16,368.368 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 14:17:16,374.374 INFO    ] Checking for existing commands in stream...
[2026-06-12 14:17:16,451.451 INFO    ] No existing commands found in stream
[2026-06-12 14:17:21,460.460 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 14:17:21,463.463 INFO    ] Waiting 3.87 seconds before fallback handling...
[2026-06-12 14:17:25,711.711 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 14:17:25,713.713 INFO    ] Checking for system updates...
[2026-06-12 14:17:25,734.734 INFO    ] 200
[2026-06-12 14:17:25,736.736 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:17:25,768.768 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 14:17:25,769.769 INFO    ] No update needed
[2026-06-12 14:17:25,771.771 INFO    ] Checking for camera pi updates...
[2026-06-12 14:17:25,791.791 INFO    ] 200
[2026-06-12 14:17:25,793.793 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:17:25,816.816 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 14:17:25,866.866 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 14:17:25,867.867 INFO    ] No camera update needed
[2026-06-12 14:17:25,868.868 INFO    ] Script finished. Safe exiting...
[2026-06-12 14:17:25,870.870 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 14:17:25,873.873 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 14:17:25,876.876 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 14:17:27,914.914 INFO    ] ================================================
[2026-06-12 14:17:27,930.930 INFO    ] Launching Daemon at Fri Jun 12 14:17:27 IST 2026
[2026-06-12 14:17:27,940.940 INFO    ] ================================================
[2026-06-12 14:17:28,267.267 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 14:17:28
[2026-06-12 14:17:28,580.580 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 14:17:28,719.719 INFO    ] Initializing speech engine...
[2026-06-12 14:17:28,729.729 INFO    ] 2026-06-12 14:17:28
[2026-06-12 14:17:28,935.935 INFO    ] 2026-06-12 14:17:28
[2026-06-12 14:17:28,963.963 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 14:17:29,126.126 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 14:17:29,128.128 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 14:17:29,274.274 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 14:17:29,298.298 INFO    ] time= 12/06/2026 14:17:29
[2026-06-12 14:17:29,349.349 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 14:17:29,382.382 INFO    ] Checking for existing commands in stream...
[2026-06-12 14:17:29,510.510 INFO    ] No existing commands found in stream
[2026-06-12 14:17:34,542.542 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 14:17:34,545.545 INFO    ] Waiting 2.28 seconds before fallback handling...
[2026-06-12 14:17:37,208.208 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 14:17:37,210.210 INFO    ] Checking for system updates...
[2026-06-12 14:17:37,230.230 INFO    ] 200
[2026-06-12 14:17:37,231.231 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:17:37,260.260 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 14:17:37,262.262 INFO    ] No update needed
[2026-06-12 14:17:37,263.263 INFO    ] Checking for camera pi updates...
[2026-06-12 14:17:37,282.282 INFO    ] 200
[2026-06-12 14:17:37,283.283 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:17:37,307.307 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 14:17:37,367.367 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 14:17:37,368.368 INFO    ] No camera update needed
[2026-06-12 14:17:37,370.370 INFO    ] Script finished. Safe exiting...
[2026-06-12 14:17:37,371.371 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 14:17:37,374.374 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 14:17:37,377.377 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 14:17:39,415.415 INFO    ] ================================================
[2026-06-12 14:17:39,431.431 INFO    ] Launching Daemon at Fri Jun 12 14:17:39 IST 2026
[2026-06-12 14:17:39,441.441 INFO    ] ================================================
[2026-06-12 14:17:39,781.781 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 14:17:39
[2026-06-12 14:17:40,096.096 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 14:17:40,233.233 INFO    ] Initializing speech engine...
[2026-06-12 14:17:40,246.246 INFO    ] 2026-06-12 14:17:40
[2026-06-12 14:17:40,467.467 INFO    ] 2026-06-12 14:17:40
[2026-06-12 14:17:40,499.499 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 14:17:40,632.632 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 14:17:40,700.700 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 14:17:40,846.846 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 14:17:40,898.898 INFO    ] time= 12/06/2026 14:17:40
[2026-06-12 14:17:40,938.938 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 14:17:40,950.950 INFO    ] Checking for existing commands in stream...
[2026-06-12 14:17:41,028.028 INFO    ] No existing commands found in stream
[2026-06-12 14:17:46,037.037 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 14:17:46,040.040 INFO    ] Waiting 2.26 seconds before fallback handling...
[2026-06-12 14:17:48,657.657 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 14:17:48,658.658 INFO    ] Checking for system updates...
[2026-06-12 14:17:48,679.679 INFO    ] 200
[2026-06-12 14:17:48,681.681 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:17:48,712.712 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 14:17:48,714.714 INFO    ] No update needed
[2026-06-12 14:17:48,715.715 INFO    ] Checking for camera pi updates...
[2026-06-12 14:17:48,735.735 INFO    ] 200
[2026-06-12 14:17:48,737.737 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:17:48,759.759 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 14:17:48,803.803 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 14:17:48,805.805 INFO    ] No camera update needed
[2026-06-12 14:17:48,806.806 INFO    ] Script finished. Safe exiting...
[2026-06-12 14:17:48,807.807 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 14:17:48,810.810 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 14:17:48,813.813 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 14:17:50,852.852 INFO    ] ================================================
[2026-06-12 14:17:50,867.867 INFO    ] Launching Daemon at Fri Jun 12 14:17:50 IST 2026
[2026-06-12 14:17:50,878.878 INFO    ] ================================================
[2026-06-12 14:17:51,253.253 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 14:17:51
[2026-06-12 14:17:51,591.591 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 14:17:51,732.732 INFO    ] Initializing speech engine...
[2026-06-12 14:17:51,745.745 INFO    ] 2026-06-12 14:17:51
[2026-06-12 14:17:51,961.961 INFO    ] 2026-06-12 14:17:51
[2026-06-12 14:17:51,991.991 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 14:17:52,177.177 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 14:17:52,186.186 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 14:17:52,336.336 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 14:17:52,384.384 INFO    ] time= 12/06/2026 14:17:52
[2026-06-12 14:17:52,406.406 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 14:17:52,412.412 INFO    ] Checking for existing commands in stream...
[2026-06-12 14:17:52,479.479 INFO    ] No existing commands found in stream
[2026-06-12 14:17:57,504.504 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 14:17:57,507.507 INFO    ] Waiting 0.32 seconds before fallback handling...
[2026-06-12 14:17:58,207.207 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 14:17:58,209.209 INFO    ] Checking for system updates...
[2026-06-12 14:17:58,231.231 INFO    ] 200
[2026-06-12 14:17:58,232.232 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:17:58,263.263 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 14:17:58,264.264 INFO    ] No update needed
[2026-06-12 14:17:58,265.265 INFO    ] Checking for camera pi updates...
[2026-06-12 14:17:58,285.285 INFO    ] 200
[2026-06-12 14:17:58,286.286 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:17:58,310.310 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 14:17:58,400.400 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 14:17:58,402.402 INFO    ] No camera update needed
[2026-06-12 14:17:58,403.403 INFO    ] Script finished. Safe exiting...
[2026-06-12 14:17:58,404.404 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 14:17:58,408.408 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 14:17:58,411.411 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 14:18:00,449.449 INFO    ] ================================================
[2026-06-12 14:18:00,464.464 INFO    ] Launching Daemon at Fri Jun 12 14:18:00 IST 2026
[2026-06-12 14:18:00,475.475 INFO    ] ================================================
[2026-06-12 14:18:00,875.875 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 14:18:00
[2026-06-12 14:18:01,280.280 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 14:18:01,527.527 INFO    ] Initializing speech engine...
[2026-06-12 14:18:01,532.532 INFO    ] 2026-06-12 14:18:01
[2026-06-12 14:18:01,811.811 INFO    ] 2026-06-12 14:18:01
[2026-06-12 14:18:01,831.831 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 14:18:01,988.988 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 14:18:01,998.998 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 14:18:02,146.146 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 14:18:02,209.209 INFO    ] time= 12/06/2026 14:18:02
[2026-06-12 14:18:02,247.247 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 14:18:02,258.258 INFO    ] Checking for existing commands in stream...
[2026-06-12 14:18:02,334.334 INFO    ] No existing commands found in stream
[2026-06-12 14:18:07,343.343 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 14:18:07,352.352 INFO    ] Waiting 1.68 seconds before fallback handling...
[2026-06-12 14:18:09,416.416 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 14:18:09,418.418 INFO    ] Checking for system updates...
[2026-06-12 14:18:09,439.439 INFO    ] 200
[2026-06-12 14:18:09,440.440 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:18:09,470.470 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 14:18:09,472.472 INFO    ] No update needed
[2026-06-12 14:18:09,473.473 INFO    ] Checking for camera pi updates...
[2026-06-12 14:18:09,496.496 INFO    ] 200
[2026-06-12 14:18:09,497.497 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:18:09,522.522 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 14:18:09,566.566 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 14:18:09,568.568 INFO    ] No camera update needed
[2026-06-12 14:18:09,569.569 INFO    ] Script finished. Safe exiting...
[2026-06-12 14:18:09,571.571 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 14:18:09,574.574 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 14:18:09,577.577 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 14:18:11,614.614 INFO    ] ================================================
[2026-06-12 14:18:11,630.630 INFO    ] Launching Daemon at Fri Jun 12 14:18:11 IST 2026
[2026-06-12 14:18:11,641.641 INFO    ] ================================================
[2026-06-12 14:18:11,993.993 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 14:18:11
[2026-06-12 14:18:12,333.333 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 14:18:12,484.484 INFO    ] Initializing speech engine...
[2026-06-12 14:18:12,491.491 INFO    ] 2026-06-12 14:18:12
[2026-06-12 14:18:12,699.699 INFO    ] 2026-06-12 14:18:12
[2026-06-12 14:18:12,728.728 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 14:18:12,917.917 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 14:18:12,927.927 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 14:18:13,058.058 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 14:18:13,127.127 INFO    ] time= 12/06/2026 14:18:13
[2026-06-12 14:18:13,152.152 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 14:18:13,158.158 INFO    ] Checking for existing commands in stream...
[2026-06-12 14:18:13,226.226 INFO    ] No existing commands found in stream
[2026-06-12 14:18:18,236.236 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 14:18:18,239.239 INFO    ] Waiting 2.36 seconds before fallback handling...
[2026-06-12 14:18:20,956.956 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 14:18:20,958.958 INFO    ] Checking for system updates...
[2026-06-12 14:18:20,980.980 INFO    ] 200
[2026-06-12 14:18:20,981.981 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:18:21,014.014 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 14:18:21,015.015 INFO    ] No update needed
[2026-06-12 14:18:21,016.016 INFO    ] Checking for camera pi updates...
[2026-06-12 14:18:21,036.036 INFO    ] 200
[2026-06-12 14:18:21,038.038 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:18:21,061.061 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 14:18:21,125.125 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 14:18:21,126.126 INFO    ] No camera update needed
[2026-06-12 14:18:21,128.128 INFO    ] Script finished. Safe exiting...
[2026-06-12 14:18:21,129.129 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 14:18:21,132.132 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 14:18:21,135.135 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 14:18:23,174.174 INFO    ] ================================================
[2026-06-12 14:18:23,190.190 INFO    ] Launching Daemon at Fri Jun 12 14:18:23 IST 2026
[2026-06-12 14:18:23,201.201 INFO    ] ================================================
[2026-06-12 14:18:23,548.548 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 14:18:23
[2026-06-12 14:18:23,892.892 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 14:18:24,045.045 INFO    ] Initializing speech engine...
[2026-06-12 14:18:24,051.051 INFO    ] 2026-06-12 14:18:24
[2026-06-12 14:18:24,259.259 INFO    ] 2026-06-12 14:18:24
[2026-06-12 14:18:24,289.289 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 14:18:24,480.480 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 14:18:24,491.491 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 14:18:24,632.632 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 14:18:24,690.690 INFO    ] time= 12/06/2026 14:18:24
[2026-06-12 14:18:24,714.714 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 14:18:24,720.720 INFO    ] Checking for existing commands in stream...
[2026-06-12 14:18:24,811.811 INFO    ] No existing commands found in stream
[2026-06-12 14:18:29,821.821 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 14:18:29,824.824 INFO    ] Waiting 3.45 seconds before fallback handling...
[2026-06-12 14:18:33,658.658 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 14:18:33,660.660 INFO    ] Checking for system updates...
[2026-06-12 14:18:33,681.681 INFO    ] 200
[2026-06-12 14:18:33,682.682 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:18:33,712.712 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 14:18:33,714.714 INFO    ] No update needed
[2026-06-12 14:18:33,715.715 INFO    ] Checking for camera pi updates...
[2026-06-12 14:18:33,734.734 INFO    ] 200
[2026-06-12 14:18:33,736.736 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:18:33,759.759 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 14:18:33,812.812 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 14:18:33,814.814 INFO    ] No camera update needed
[2026-06-12 14:18:33,815.815 INFO    ] Script finished. Safe exiting...
[2026-06-12 14:18:33,817.817 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 14:18:33,820.820 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 14:18:33,823.823 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 14:18:35,861.861 INFO    ] ================================================
[2026-06-12 14:18:35,877.877 INFO    ] Launching Daemon at Fri Jun 12 14:18:35 IST 2026
[2026-06-12 14:18:35,888.888 INFO    ] ================================================
[2026-06-12 14:18:36,218.218 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 14:18:36
[2026-06-12 14:18:36,530.530 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 14:18:36,660.660 INFO    ] Initializing speech engine...
[2026-06-12 14:18:36,664.664 INFO    ] 2026-06-12 14:18:36
[2026-06-12 14:18:36,896.896 INFO    ] 2026-06-12 14:18:36
[2026-06-12 14:18:36,925.925 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 14:18:37,099.099 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 14:18:37,108.108 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 14:18:37,235.235 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 14:18:37,298.298 INFO    ] time= 12/06/2026 14:18:37
[2026-06-12 14:18:37,331.331 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 14:18:37,337.337 INFO    ] Checking for existing commands in stream...
[2026-06-12 14:18:37,405.405 INFO    ] No existing commands found in stream
[2026-06-12 14:18:42,414.414 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 14:18:42,416.416 INFO    ] Waiting 1.69 seconds before fallback handling...
[2026-06-12 14:18:44,449.449 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 14:18:44,450.450 INFO    ] Checking for system updates...
[2026-06-12 14:18:44,471.471 INFO    ] 200
[2026-06-12 14:18:44,473.473 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:18:44,503.503 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 14:18:44,504.504 INFO    ] No update needed
[2026-06-12 14:18:44,506.506 INFO    ] Checking for camera pi updates...
[2026-06-12 14:18:44,525.525 INFO    ] 200
[2026-06-12 14:18:44,527.527 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:18:44,551.551 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 14:18:44,644.644 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 14:18:44,645.645 INFO    ] No camera update needed
[2026-06-12 14:18:44,646.646 INFO    ] Script finished. Safe exiting...
[2026-06-12 14:18:44,648.648 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 14:18:44,651.651 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 14:18:44,653.653 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 14:18:46,695.695 INFO    ] ================================================
[2026-06-12 14:18:46,711.711 INFO    ] Launching Daemon at Fri Jun 12 14:18:46 IST 2026
[2026-06-12 14:18:46,722.722 INFO    ] ================================================
[2026-06-12 14:18:47,069.069 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 14:18:47
[2026-06-12 14:18:47,386.386 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 14:18:47,524.524 INFO    ] Initializing speech engine...
[2026-06-12 14:18:47,535.535 INFO    ] 2026-06-12 14:18:47
[2026-06-12 14:18:47,738.738 INFO    ] 2026-06-12 14:18:47
[2026-06-12 14:18:47,766.766 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 14:18:47,951.951 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 14:18:47,959.959 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 14:18:48,064.064 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 14:18:48,065.065 INFO    ] time= 12/06/2026 14:18:48
[2026-06-12 14:18:48,067.067 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 14:18:48,089.089 INFO    ] Checking for existing commands in stream...
[2026-06-12 14:18:48,186.186 INFO    ] No existing commands found in stream
[2026-06-12 14:18:53,193.193 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 14:18:53,195.195 INFO    ] Waiting 2.54 seconds before fallback handling...
[2026-06-12 14:18:56,108.108 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 14:18:56,109.109 INFO    ] Checking for system updates...
[2026-06-12 14:18:56,130.130 INFO    ] 200
[2026-06-12 14:18:56,131.131 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:18:56,161.161 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 14:18:56,162.162 INFO    ] No update needed
[2026-06-12 14:18:56,163.163 INFO    ] Checking for camera pi updates...
[2026-06-12 14:18:56,182.182 INFO    ] 200
[2026-06-12 14:18:56,184.184 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:18:56,207.207 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 14:18:56,345.345 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 14:18:56,346.346 INFO    ] No camera update needed
[2026-06-12 14:18:56,347.347 INFO    ] Script finished. Safe exiting...
[2026-06-12 14:18:56,349.349 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 14:18:56,352.352 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 14:18:56,355.355 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 14:18:58,393.393 INFO    ] ================================================
[2026-06-12 14:18:58,408.408 INFO    ] Launching Daemon at Fri Jun 12 14:18:58 IST 2026
[2026-06-12 14:18:58,419.419 INFO    ] ================================================
[2026-06-12 14:18:58,776.776 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 14:18:58
[2026-06-12 14:18:59,115.115 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 14:18:59,270.270 INFO    ] Initializing speech engine...
[2026-06-12 14:18:59,274.274 INFO    ] 2026-06-12 14:18:59
[2026-06-12 14:18:59,482.482 INFO    ] 2026-06-12 14:18:59
[2026-06-12 14:18:59,511.511 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 14:18:59,696.696 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 14:18:59,700.700 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 14:18:59,863.863 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 14:18:59,908.908 INFO    ] time= 12/06/2026 14:18:59
[2026-06-12 14:18:59,929.929 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 14:18:59,936.936 INFO    ] Checking for existing commands in stream...
[2026-06-12 14:19:00,004.004 INFO    ] No existing commands found in stream
[2026-06-12 14:19:05,018.018 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 14:19:05,021.021 INFO    ] Waiting 0.60 seconds before fallback handling...
[2026-06-12 14:19:06,015.015 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 14:19:06,017.017 INFO    ] Checking for system updates...
[2026-06-12 14:19:06,038.038 INFO    ] 200
[2026-06-12 14:19:06,040.040 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:19:06,070.070 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 14:19:06,071.071 INFO    ] No update needed
[2026-06-12 14:19:06,073.073 INFO    ] Checking for camera pi updates...
[2026-06-12 14:19:06,092.092 INFO    ] 200
[2026-06-12 14:19:06,093.093 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:19:06,116.116 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 14:19:06,215.215 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 14:19:06,216.216 INFO    ] No camera update needed
[2026-06-12 14:19:06,218.218 INFO    ] Script finished. Safe exiting...
[2026-06-12 14:19:06,219.219 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 14:19:06,222.222 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 14:19:06,225.225 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 14:19:08,265.265 INFO    ] ================================================
[2026-06-12 14:19:08,280.280 INFO    ] Launching Daemon at Fri Jun 12 14:19:08 IST 2026
[2026-06-12 14:19:08,291.291 INFO    ] ================================================
[2026-06-12 14:19:08,663.663 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 14:19:08
[2026-06-12 14:19:08,998.998 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 14:19:09,150.150 INFO    ] Initializing speech engine...
[2026-06-12 14:19:09,156.156 INFO    ] 2026-06-12 14:19:09
[2026-06-12 14:19:09,364.364 INFO    ] 2026-06-12 14:19:09
[2026-06-12 14:19:09,393.393 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 14:19:09,579.579 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 14:19:09,583.583 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 14:19:09,723.723 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 14:19:09,791.791 INFO    ] time= 12/06/2026 14:19:09
[2026-06-12 14:19:09,815.815 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 14:19:09,822.822 INFO    ] Checking for existing commands in stream...
[2026-06-12 14:19:09,890.890 INFO    ] No existing commands found in stream
[2026-06-12 14:19:14,899.899 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 14:19:14,903.903 INFO    ] Waiting 2.38 seconds before fallback handling...
[2026-06-12 14:19:17,685.685 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 14:19:17,686.686 INFO    ] Checking for system updates...
[2026-06-12 14:19:17,708.708 INFO    ] 200
[2026-06-12 14:19:17,709.709 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:19:17,744.744 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 14:19:17,745.745 INFO    ] No update needed
[2026-06-12 14:19:17,747.747 INFO    ] Checking for camera pi updates...
[2026-06-12 14:19:17,768.768 INFO    ] 200
[2026-06-12 14:19:17,770.770 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:19:17,793.793 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 14:19:17,856.856 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 14:19:17,857.857 INFO    ] No camera update needed
[2026-06-12 14:19:17,859.859 INFO    ] Script finished. Safe exiting...
[2026-06-12 14:19:17,860.860 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 14:19:17,863.863 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 14:19:17,866.866 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 14:19:19,905.905 INFO    ] ================================================
[2026-06-12 14:19:19,921.921 INFO    ] Launching Daemon at Fri Jun 12 14:19:19 IST 2026
[2026-06-12 14:19:19,932.932 INFO    ] ================================================
[2026-06-12 14:19:20,274.274 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 14:19:20
[2026-06-12 14:19:20,607.607 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 14:19:20,757.757 INFO    ] Initializing speech engine...
[2026-06-12 14:19:20,763.763 INFO    ] 2026-06-12 14:19:20
[2026-06-12 14:19:20,968.968 INFO    ] 2026-06-12 14:19:20
[2026-06-12 14:19:20,997.997 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 14:19:21,179.179 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 14:19:21,183.183 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 14:19:21,319.319 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 14:19:21,385.385 INFO    ] time= 12/06/2026 14:19:21
[2026-06-12 14:19:21,410.410 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 14:19:21,416.416 INFO    ] Checking for existing commands in stream...
[2026-06-12 14:19:21,483.483 INFO    ] No existing commands found in stream
[2026-06-12 14:19:26,513.513 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 14:19:26,516.516 INFO    ] Waiting 0.80 seconds before fallback handling...
[2026-06-12 14:19:27,656.656 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 14:19:27,657.657 INFO    ] Checking for system updates...
[2026-06-12 14:19:27,681.681 INFO    ] 200
[2026-06-12 14:19:27,682.682 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:19:27,712.712 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 14:19:27,713.713 INFO    ] No update needed
[2026-06-12 14:19:27,714.714 INFO    ] Checking for camera pi updates...
[2026-06-12 14:19:27,734.734 INFO    ] 200
[2026-06-12 14:19:27,735.735 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:19:27,758.758 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 14:19:27,804.804 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 14:19:27,805.805 INFO    ] No camera update needed
[2026-06-12 14:19:27,807.807 INFO    ] Script finished. Safe exiting...
[2026-06-12 14:19:27,808.808 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 14:19:27,811.811 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 14:19:27,814.814 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 14:19:29,852.852 INFO    ] ================================================
[2026-06-12 14:19:29,868.868 INFO    ] Launching Daemon at Fri Jun 12 14:19:29 IST 2026
[2026-06-12 14:19:29,879.879 INFO    ] ================================================
[2026-06-12 14:19:30,247.247 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 14:19:30
[2026-06-12 14:19:30,566.566 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 14:19:30,707.707 INFO    ] Initializing speech engine...
[2026-06-12 14:19:30,710.710 INFO    ] 2026-06-12 14:19:30
[2026-06-12 14:19:30,908.908 INFO    ] 2026-06-12 14:19:30
[2026-06-12 14:19:30,954.954 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 14:19:31,100.100 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 14:19:31,162.162 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 14:19:31,294.294 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 14:19:31,349.349 INFO    ] time= 12/06/2026 14:19:31
[2026-06-12 14:19:31,391.391 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 14:19:31,397.397 INFO    ] Checking for existing commands in stream...
[2026-06-12 14:19:31,463.463 INFO    ] No existing commands found in stream
[2026-06-12 14:19:36,473.473 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 14:19:36,476.476 INFO    ] Waiting 1.10 seconds before fallback handling...
[2026-06-12 14:19:37,965.965 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 14:19:37,966.966 INFO    ] Checking for system updates...
[2026-06-12 14:19:37,987.987 INFO    ] 200
[2026-06-12 14:19:37,988.988 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:19:38,017.017 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 14:19:38,019.019 INFO    ] No update needed
[2026-06-12 14:19:38,020.020 INFO    ] Checking for camera pi updates...
[2026-06-12 14:19:38,039.039 INFO    ] 200
[2026-06-12 14:19:38,041.041 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:19:38,063.063 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 14:19:38,123.123 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 14:19:38,124.124 INFO    ] No camera update needed
[2026-06-12 14:19:38,125.125 INFO    ] Script finished. Safe exiting...
[2026-06-12 14:19:38,127.127 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 14:19:38,130.130 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 14:19:38,132.132 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 14:19:40,171.171 INFO    ] ================================================
[2026-06-12 14:19:40,187.187 INFO    ] Launching Daemon at Fri Jun 12 14:19:40 IST 2026
[2026-06-12 14:19:40,198.198 INFO    ] ================================================
[2026-06-12 14:19:40,523.523 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 14:19:40
[2026-06-12 14:19:40,835.835 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 14:19:40,978.978 INFO    ] Initializing speech engine...
[2026-06-12 14:19:40,983.983 INFO    ] 2026-06-12 14:19:40
[2026-06-12 14:19:41,187.187 INFO    ] 2026-06-12 14:19:41
[2026-06-12 14:19:41,216.216 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 14:19:41,403.403 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 14:19:41,412.412 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 14:19:41,540.540 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 14:19:41,601.601 INFO    ] time= 12/06/2026 14:19:41
[2026-06-12 14:19:41,633.633 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 14:19:41,635.635 INFO    ] Checking for existing commands in stream...
[2026-06-12 14:19:41,707.707 INFO    ] No existing commands found in stream
[2026-06-12 14:19:46,731.731 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 14:19:46,734.734 INFO    ] Waiting 0.44 seconds before fallback handling...
[2026-06-12 14:19:47,635.635 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 14:19:47,636.636 INFO    ] Checking for system updates...
[2026-06-12 14:19:47,658.658 INFO    ] 200
[2026-06-12 14:19:47,659.659 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:19:47,689.689 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 14:19:47,690.690 INFO    ] No update needed
[2026-06-12 14:19:47,692.692 INFO    ] Checking for camera pi updates...
[2026-06-12 14:19:47,711.711 INFO    ] 200
[2026-06-12 14:19:47,712.712 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:19:47,737.737 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 14:19:47,784.784 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 14:19:47,786.786 INFO    ] No camera update needed
[2026-06-12 14:19:47,787.787 INFO    ] Script finished. Safe exiting...
[2026-06-12 14:19:47,788.788 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 14:19:47,791.791 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 14:19:47,794.794 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 14:19:49,832.832 INFO    ] ================================================
[2026-06-12 14:19:49,848.848 INFO    ] Launching Daemon at Fri Jun 12 14:19:49 IST 2026
[2026-06-12 14:19:49,859.859 INFO    ] ================================================
[2026-06-12 14:19:50,217.217 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 14:19:50
[2026-06-12 14:19:50,532.532 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 14:19:50,682.682 INFO    ] Initializing speech engine...
[2026-06-12 14:19:50,687.687 INFO    ] 2026-06-12 14:19:50
[2026-06-12 14:19:50,897.897 INFO    ] 2026-06-12 14:19:50
[2026-06-12 14:19:50,927.927 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 14:19:51,056.056 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 14:19:51,115.115 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 14:19:51,253.253 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 14:19:51,314.314 INFO    ] time= 12/06/2026 14:19:51
[2026-06-12 14:19:51,348.348 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 14:19:51,350.350 INFO    ] Checking for existing commands in stream...
[2026-06-12 14:19:51,423.423 INFO    ] No existing commands found in stream
[2026-06-12 14:19:56,437.437 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 14:19:56,440.440 INFO    ] Waiting 3.02 seconds before fallback handling...
[2026-06-12 14:19:59,853.853 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 14:19:59,855.855 INFO    ] Checking for system updates...
[2026-06-12 14:19:59,877.877 INFO    ] 200
[2026-06-12 14:19:59,879.879 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:19:59,910.910 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 14:19:59,911.911 INFO    ] No update needed
[2026-06-12 14:19:59,913.913 INFO    ] Checking for camera pi updates...
[2026-06-12 14:19:59,933.933 INFO    ] 200
[2026-06-12 14:19:59,934.934 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:19:59,958.958 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 14:20:00,012.012 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 14:20:00,013.013 INFO    ] No camera update needed
[2026-06-12 14:20:00,015.015 INFO    ] Script finished. Safe exiting...
[2026-06-12 14:20:00,016.016 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 14:20:00,019.019 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 14:20:00,022.022 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 14:20:02,055.055 INFO    ] ================================================
[2026-06-12 14:20:02,112.112 INFO    ] Launching Daemon at Fri Jun 12 14:20:02 IST 2026
[2026-06-12 14:20:02,143.143 INFO    ] ================================================
[2026-06-12 14:20:02,606.606 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 14:20:02
[2026-06-12 14:20:02,998.998 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 14:20:03,144.144 INFO    ] Initializing speech engine...
[2026-06-12 14:20:03,147.147 INFO    ] 2026-06-12 14:20:03
[2026-06-12 14:20:03,372.372 INFO    ] 2026-06-12 14:20:03
[2026-06-12 14:20:03,401.401 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 14:20:03,533.533 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 14:20:03,586.586 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 14:20:03,719.719 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 14:20:03,788.788 INFO    ] time= 12/06/2026 14:20:03
[2026-06-12 14:20:03,813.813 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 14:20:03,819.819 INFO    ] Checking for existing commands in stream...
[2026-06-12 14:20:03,886.886 INFO    ] No existing commands found in stream
[2026-06-12 14:20:08,911.911 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 14:20:08,914.914 INFO    ] Waiting 2.75 seconds before fallback handling...
[2026-06-12 14:20:12,039.039 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 14:20:12,041.041 INFO    ] Checking for system updates...
[2026-06-12 14:20:12,062.062 INFO    ] 200
[2026-06-12 14:20:12,064.064 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:20:12,095.095 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 14:20:12,096.096 INFO    ] No update needed
[2026-06-12 14:20:12,098.098 INFO    ] Checking for camera pi updates...
[2026-06-12 14:20:12,118.118 INFO    ] 200
[2026-06-12 14:20:12,119.119 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:20:12,143.143 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 14:20:12,191.191 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 14:20:12,192.192 INFO    ] No camera update needed
[2026-06-12 14:20:12,194.194 INFO    ] Script finished. Safe exiting...
[2026-06-12 14:20:12,195.195 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 14:20:12,198.198 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 14:20:12,201.201 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 14:20:14,241.241 INFO    ] ================================================
[2026-06-12 14:20:14,256.256 INFO    ] Launching Daemon at Fri Jun 12 14:20:14 IST 2026
[2026-06-12 14:20:14,267.267 INFO    ] ================================================
[2026-06-12 14:20:14,650.650 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 14:20:14
[2026-06-12 14:20:14,985.985 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 14:20:15,120.120 INFO    ] Initializing speech engine...
[2026-06-12 14:20:15,132.132 INFO    ] 2026-06-12 14:20:15
[2026-06-12 14:20:15,339.339 INFO    ] 2026-06-12 14:20:15
[2026-06-12 14:20:15,367.367 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 14:20:15,551.551 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 14:20:15,554.554 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 14:20:15,683.683 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 14:20:15,739.739 INFO    ] time= 12/06/2026 14:20:15
[2026-06-12 14:20:15,782.782 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 14:20:15,789.789 INFO    ] Checking for existing commands in stream...
[2026-06-12 14:20:15,855.855 INFO    ] No existing commands found in stream
[2026-06-12 14:20:20,862.862 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 14:20:20,866.866 INFO    ] Waiting 3.44 seconds before fallback handling...
[2026-06-12 14:20:24,693.693 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 14:20:24,695.695 INFO    ] Checking for system updates...
[2026-06-12 14:20:24,716.716 INFO    ] 200
[2026-06-12 14:20:24,717.717 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:20:24,749.749 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 14:20:24,750.750 INFO    ] No update needed
[2026-06-12 14:20:24,752.752 INFO    ] Checking for camera pi updates...
[2026-06-12 14:20:24,773.773 INFO    ] 200
[2026-06-12 14:20:24,774.774 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:20:24,797.797 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 14:20:24,842.842 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 14:20:24,844.844 INFO    ] No camera update needed
[2026-06-12 14:20:24,845.845 INFO    ] Script finished. Safe exiting...
[2026-06-12 14:20:24,846.846 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 14:20:24,850.850 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 14:20:24,852.852 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 14:20:26,890.890 INFO    ] ================================================
[2026-06-12 14:20:26,906.906 INFO    ] Launching Daemon at Fri Jun 12 14:20:26 IST 2026
[2026-06-12 14:20:26,917.917 INFO    ] ================================================
[2026-06-12 14:20:27,270.270 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 14:20:27
[2026-06-12 14:20:27,582.582 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 14:20:27,716.716 INFO    ] Initializing speech engine...
[2026-06-12 14:20:27,724.724 INFO    ] 2026-06-12 14:20:27
[2026-06-12 14:20:27,949.949 INFO    ] 2026-06-12 14:20:27
[2026-06-12 14:20:27,979.979 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 14:20:28,172.172 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 14:20:28,176.176 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 14:20:28,316.316 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 14:20:28,367.367 INFO    ] time= 12/06/2026 14:20:28
[2026-06-12 14:20:28,419.419 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 14:20:28,421.421 INFO    ] Checking for existing commands in stream...
[2026-06-12 14:20:28,497.497 INFO    ] No existing commands found in stream
[2026-06-12 14:20:33,516.516 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 14:20:33,519.519 INFO    ] Waiting 0.65 seconds before fallback handling...
[2026-06-12 14:20:34,534.534 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 14:20:34,535.535 INFO    ] Checking for system updates...
[2026-06-12 14:20:34,556.556 INFO    ] 200
[2026-06-12 14:20:34,557.557 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:20:34,588.588 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 14:20:34,589.589 INFO    ] No update needed
[2026-06-12 14:20:34,591.591 INFO    ] Checking for camera pi updates...
[2026-06-12 14:20:34,610.610 INFO    ] 200
[2026-06-12 14:20:34,611.611 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:20:34,633.633 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 14:20:34,676.676 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 14:20:34,677.677 INFO    ] No camera update needed
[2026-06-12 14:20:34,678.678 INFO    ] Script finished. Safe exiting...
[2026-06-12 14:20:34,680.680 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 14:20:34,683.683 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 14:20:34,685.685 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 14:20:36,722.722 INFO    ] ================================================
[2026-06-12 14:20:36,738.738 INFO    ] Launching Daemon at Fri Jun 12 14:20:36 IST 2026
[2026-06-12 14:20:36,748.748 INFO    ] ================================================
[2026-06-12 14:20:37,087.087 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 14:20:37
[2026-06-12 14:20:37,424.424 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 14:20:37,573.573 INFO    ] Initializing speech engine...
[2026-06-12 14:20:37,579.579 INFO    ] 2026-06-12 14:20:37
[2026-06-12 14:20:37,785.785 INFO    ] 2026-06-12 14:20:37
[2026-06-12 14:20:37,814.814 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 14:20:37,997.997 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 14:20:38,006.006 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 14:20:38,134.134 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 14:20:38,190.190 INFO    ] time= 12/06/2026 14:20:38
[2026-06-12 14:20:38,227.227 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 14:20:38,233.233 INFO    ] Checking for existing commands in stream...
[2026-06-12 14:20:38,323.323 INFO    ] No existing commands found in stream
[2026-06-12 14:20:43,333.333 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 14:20:43,336.336 INFO    ] Waiting 1.33 seconds before fallback handling...
[2026-06-12 14:20:45,058.058 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 14:20:45,060.060 INFO    ] Checking for system updates...
[2026-06-12 14:20:45,083.083 INFO    ] 200
[2026-06-12 14:20:45,084.084 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:20:45,116.116 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 14:20:45,118.118 INFO    ] No update needed
[2026-06-12 14:20:45,119.119 INFO    ] Checking for camera pi updates...
[2026-06-12 14:20:45,140.140 INFO    ] 200
[2026-06-12 14:20:45,142.142 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:20:45,165.165 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 14:20:45,216.216 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 14:20:45,218.218 INFO    ] No camera update needed
[2026-06-12 14:20:45,219.219 INFO    ] Script finished. Safe exiting...
[2026-06-12 14:20:45,221.221 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 14:20:45,224.224 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 14:20:45,227.227 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 14:20:47,265.265 INFO    ] ================================================
[2026-06-12 14:20:47,281.281 INFO    ] Launching Daemon at Fri Jun 12 14:20:47 IST 2026
[2026-06-12 14:20:47,291.291 INFO    ] ================================================
[2026-06-12 14:20:47,647.647 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 14:20:47
[2026-06-12 14:20:47,963.963 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 14:20:48,096.096 INFO    ] Initializing speech engine...
[2026-06-12 14:20:48,108.108 INFO    ] 2026-06-12 14:20:48
[2026-06-12 14:20:48,315.315 INFO    ] 2026-06-12 14:20:48
[2026-06-12 14:20:48,343.343 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 14:20:48,528.528 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 14:20:48,540.540 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 14:20:48,664.664 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 14:20:48,666.666 INFO    ] time= 12/06/2026 14:20:48
[2026-06-12 14:20:48,667.667 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 14:20:48,669.669 INFO    ] Checking for existing commands in stream...
[2026-06-12 14:20:48,761.761 INFO    ] No existing commands found in stream
[2026-06-12 14:20:53,784.784 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 14:20:53,787.787 INFO    ] Waiting 1.42 seconds before fallback handling...
[2026-06-12 14:20:55,528.528 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 14:20:55,530.530 INFO    ] Checking for system updates...
[2026-06-12 14:20:55,551.551 INFO    ] 200
[2026-06-12 14:20:55,553.553 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_HEALTH_CHECK"}
[2026-06-12 14:20:55,555.555 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping update check
[2026-06-12 14:20:55,556.556 INFO    ] Checking for camera pi updates...
[2026-06-12 14:20:55,578.578 INFO    ] 200
[2026-06-12 14:20:55,579.579 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_HEALTH_CHECK"}
[2026-06-12 14:20:55,581.581 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping camera update check
[2026-06-12 14:20:55,582.582 INFO    ] Script finished. Safe exiting...
[2026-06-12 14:20:55,584.584 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 14:20:55,587.587 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 14:20:55,590.590 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 14:20:57,614.614 INFO    ] ================================================
[2026-06-12 14:20:57,623.623 INFO    ] Launching Daemon at Fri Jun 12 14:20:57 IST 2026
[2026-06-12 14:20:57,629.629 INFO    ] ================================================
[2026-06-12 14:20:57,960.960 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 14:20:57
[2026-06-12 14:20:58,309.309 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 14:20:58,442.442 INFO    ] Initializing speech engine...
[2026-06-12 14:20:58,454.454 INFO    ] 2026-06-12 14:20:58
[2026-06-12 14:20:58,661.661 INFO    ] 2026-06-12 14:20:58
[2026-06-12 14:20:58,689.689 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 14:20:58,815.815 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 14:20:58,873.873 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 14:20:59,009.009 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 14:20:59,068.068 INFO    ] time= 12/06/2026 14:20:59
[2026-06-12 14:20:59,100.100 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 14:20:59,106.106 INFO    ] Checking for existing commands in stream...
[2026-06-12 14:20:59,172.172 INFO    ] No existing commands found in stream
[2026-06-12 14:21:04,181.181 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 14:21:04,184.184 INFO    ] Waiting 2.42 seconds before fallback handling...
[2026-06-12 14:21:07,273.273 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 14:21:07,275.275 INFO    ] Checking for system updates...
[2026-06-12 14:21:07,295.295 INFO    ] 200
[2026-06-12 14:21:07,296.296 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:21:07,326.326 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 14:21:07,327.327 INFO    ] No update needed
[2026-06-12 14:21:07,328.328 INFO    ] Checking for camera pi updates...
[2026-06-12 14:21:07,348.348 INFO    ] 200
[2026-06-12 14:21:07,350.350 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:21:07,373.373 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 14:21:07,419.419 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 14:21:07,420.420 INFO    ] No camera update needed
[2026-06-12 14:21:07,422.422 INFO    ] Script finished. Safe exiting...
[2026-06-12 14:21:07,423.423 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 14:21:07,426.426 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 14:21:07,429.429 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 14:21:09,467.467 INFO    ] ================================================
[2026-06-12 14:21:09,483.483 INFO    ] Launching Daemon at Fri Jun 12 14:21:09 IST 2026
[2026-06-12 14:21:09,493.493 INFO    ] ================================================
[2026-06-12 14:21:09,871.871 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 14:21:09
[2026-06-12 14:21:10,208.208 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 14:21:10,366.366 INFO    ] Initializing speech engine...
[2026-06-12 14:21:10,374.374 INFO    ] 2026-06-12 14:21:10
[2026-06-12 14:21:10,576.576 INFO    ] 2026-06-12 14:21:10
[2026-06-12 14:21:10,606.606 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 14:21:10,793.793 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 14:21:10,803.803 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 14:21:10,926.926 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 14:21:10,977.977 INFO    ] time= 12/06/2026 14:21:10
[2026-06-12 14:21:11,026.026 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 14:21:11,028.028 INFO    ] Checking for existing commands in stream...
[2026-06-12 14:21:11,100.100 INFO    ] No existing commands found in stream
[2026-06-12 14:21:16,115.115 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 14:21:16,118.118 INFO    ] Waiting 1.07 seconds before fallback handling...
[2026-06-12 14:21:17,567.567 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 14:21:17,570.570 INFO    ] Checking for system updates...
[2026-06-12 14:21:17,593.593 INFO    ] 200
[2026-06-12 14:21:17,594.594 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:21:17,624.624 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 14:21:17,625.625 INFO    ] No update needed
[2026-06-12 14:21:17,627.627 INFO    ] Checking for camera pi updates...
[2026-06-12 14:21:17,646.646 INFO    ] 200
[2026-06-12 14:21:17,648.648 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:21:17,671.671 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 14:21:17,712.712 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 14:21:17,714.714 INFO    ] No camera update needed
[2026-06-12 14:21:17,715.715 INFO    ] Script finished. Safe exiting...
[2026-06-12 14:21:17,717.717 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 14:21:17,720.720 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 14:21:17,723.723 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 14:21:19,762.762 INFO    ] ================================================
[2026-06-12 14:21:19,777.777 INFO    ] Launching Daemon at Fri Jun 12 14:21:19 IST 2026
[2026-06-12 14:21:19,788.788 INFO    ] ================================================
[2026-06-12 14:21:20,132.132 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 14:21:20
[2026-06-12 14:21:20,449.449 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 14:21:20,592.592 INFO    ] Initializing speech engine...
[2026-06-12 14:21:20,597.597 INFO    ] 2026-06-12 14:21:20
[2026-06-12 14:21:20,802.802 INFO    ] 2026-06-12 14:21:20
[2026-06-12 14:21:20,831.831 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 14:21:21,013.013 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 14:21:21,023.023 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 14:21:21,163.163 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 14:21:21,220.220 INFO    ] time= 12/06/2026 14:21:21
[2026-06-12 14:21:21,243.243 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 14:21:21,250.250 INFO    ] Checking for existing commands in stream...
[2026-06-12 14:21:21,316.316 INFO    ] No existing commands found in stream
[2026-06-12 14:21:26,330.330 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 14:21:26,333.333 INFO    ] Waiting 3.30 seconds before fallback handling...
[2026-06-12 14:21:30,018.018 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 14:21:30,019.019 INFO    ] Checking for system updates...
[2026-06-12 14:21:30,041.041 INFO    ] 200
[2026-06-12 14:21:30,043.043 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:21:30,072.072 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 14:21:30,074.074 INFO    ] No update needed
[2026-06-12 14:21:30,075.075 INFO    ] Checking for camera pi updates...
[2026-06-12 14:21:30,095.095 INFO    ] 200
[2026-06-12 14:21:30,096.096 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:21:30,121.121 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 14:21:30,160.160 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 14:21:30,162.162 INFO    ] No camera update needed
[2026-06-12 14:21:30,163.163 INFO    ] Script finished. Safe exiting...
[2026-06-12 14:21:30,164.164 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 14:21:30,167.167 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 14:21:30,170.170 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 14:21:32,209.209 INFO    ] ================================================
[2026-06-12 14:21:32,224.224 INFO    ] Launching Daemon at Fri Jun 12 14:21:32 IST 2026
[2026-06-12 14:21:32,234.234 INFO    ] ================================================
[2026-06-12 14:21:32,556.556 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 14:21:32
[2026-06-12 14:21:32,868.868 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 14:21:32,999.999 INFO    ] Initializing speech engine...
[2026-06-12 14:21:33,004.004 INFO    ] 2026-06-12 14:21:33
[2026-06-12 14:21:33,218.218 INFO    ] 2026-06-12 14:21:33
[2026-06-12 14:21:33,246.246 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 14:21:33,397.397 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 14:21:33,442.442 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 14:21:33,608.608 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 14:21:33,665.665 INFO    ] time= 12/06/2026 14:21:33
[2026-06-12 14:21:33,705.705 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 14:21:33,717.717 INFO    ] Checking for existing commands in stream...
[2026-06-12 14:21:33,794.794 INFO    ] No existing commands found in stream
[2026-06-12 14:21:38,808.808 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 14:21:38,811.811 INFO    ] Waiting 2.56 seconds before fallback handling...
[2026-06-12 14:21:41,715.715 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 14:21:41,716.716 INFO    ] Checking for system updates...
[2026-06-12 14:21:41,737.737 INFO    ] 200
[2026-06-12 14:21:41,738.738 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:21:41,772.772 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 14:21:41,774.774 INFO    ] No update needed
[2026-06-12 14:21:41,775.775 INFO    ] Checking for camera pi updates...
[2026-06-12 14:21:41,794.794 INFO    ] 200
[2026-06-12 14:21:41,796.796 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:21:41,818.818 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 14:21:41,872.872 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 14:21:41,873.873 INFO    ] No camera update needed
[2026-06-12 14:21:41,874.874 INFO    ] Script finished. Safe exiting...
[2026-06-12 14:21:41,876.876 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 14:21:41,879.879 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 14:21:41,881.881 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 14:21:43,919.919 INFO    ] ================================================
[2026-06-12 14:21:43,934.934 INFO    ] Launching Daemon at Fri Jun 12 14:21:43 IST 2026
[2026-06-12 14:21:43,945.945 INFO    ] ================================================
[2026-06-12 14:21:44,298.298 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 14:21:44
[2026-06-12 14:21:44,635.635 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 14:21:44,786.786 INFO    ] Initializing speech engine...
[2026-06-12 14:21:44,792.792 INFO    ] 2026-06-12 14:21:44
[2026-06-12 14:21:45,001.001 INFO    ] 2026-06-12 14:21:44
[2026-06-12 14:21:45,030.030 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 14:21:45,214.214 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 14:21:45,224.224 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 14:21:45,361.361 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 14:21:45,424.424 INFO    ] time= 12/06/2026 14:21:45
[2026-06-12 14:21:45,447.447 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 14:21:45,453.453 INFO    ] Checking for existing commands in stream...
[2026-06-12 14:21:45,518.518 INFO    ] No existing commands found in stream
[2026-06-12 14:21:50,530.530 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 14:21:50,533.533 INFO    ] Waiting 0.26 seconds before fallback handling...
[2026-06-12 14:21:51,127.127 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 14:21:51,128.128 INFO    ] Checking for system updates...
[2026-06-12 14:21:51,149.149 INFO    ] 200
[2026-06-12 14:21:51,151.151 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:21:51,180.180 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 14:21:51,181.181 INFO    ] No update needed
[2026-06-12 14:21:51,183.183 INFO    ] Checking for camera pi updates...
[2026-06-12 14:21:51,202.202 INFO    ] 200
[2026-06-12 14:21:51,203.203 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:21:51,228.228 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 14:21:51,270.270 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 14:21:51,272.272 INFO    ] No camera update needed
[2026-06-12 14:21:51,273.273 INFO    ] Script finished. Safe exiting...
[2026-06-12 14:21:51,274.274 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 14:21:51,277.277 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 14:21:51,280.280 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 14:21:53,317.317 INFO    ] ================================================
[2026-06-12 14:21:53,332.332 INFO    ] Launching Daemon at Fri Jun 12 14:21:53 IST 2026
[2026-06-12 14:21:53,343.343 INFO    ] ================================================
[2026-06-12 14:21:53,684.684 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 14:21:53
[2026-06-12 14:21:54,002.002 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 14:21:54,135.135 INFO    ] Initializing speech engine...
[2026-06-12 14:21:54,142.142 INFO    ] 2026-06-12 14:21:54
[2026-06-12 14:21:54,355.355 INFO    ] 2026-06-12 14:21:54
[2026-06-12 14:21:54,383.383 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 14:21:54,566.566 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 14:21:54,569.569 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 14:21:54,697.697 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 14:21:54,753.753 INFO    ] time= 12/06/2026 14:21:54
[2026-06-12 14:21:54,787.787 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 14:21:54,797.797 INFO    ] Checking for existing commands in stream...
[2026-06-12 14:21:54,869.869 INFO    ] No existing commands found in stream
[2026-06-12 14:21:59,878.878 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 14:21:59,881.881 INFO    ] Waiting 3.93 seconds before fallback handling...
[2026-06-12 14:22:04,153.153 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 14:22:04,154.154 INFO    ] Checking for system updates...
[2026-06-12 14:22:04,175.175 INFO    ] 200
[2026-06-12 14:22:04,177.177 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:22:04,206.206 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 14:22:04,207.207 INFO    ] No update needed
[2026-06-12 14:22:04,209.209 INFO    ] Checking for camera pi updates...
[2026-06-12 14:22:04,228.228 INFO    ] 200
[2026-06-12 14:22:04,229.229 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:22:04,253.253 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 14:22:04,296.296 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 14:22:04,297.297 INFO    ] No camera update needed
[2026-06-12 14:22:04,299.299 INFO    ] Script finished. Safe exiting...
[2026-06-12 14:22:04,300.300 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 14:22:04,303.303 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 14:22:04,306.306 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 14:22:06,343.343 INFO    ] ================================================
[2026-06-12 14:22:06,359.359 INFO    ] Launching Daemon at Fri Jun 12 14:22:06 IST 2026
[2026-06-12 14:22:06,369.369 INFO    ] ================================================
[2026-06-12 14:22:06,741.741 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 14:22:06
[2026-06-12 14:22:07,058.058 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 14:22:07,189.189 INFO    ] Initializing speech engine...
[2026-06-12 14:22:07,193.193 INFO    ] 2026-06-12 14:22:07
[2026-06-12 14:22:07,409.409 INFO    ] 2026-06-12 14:22:07
[2026-06-12 14:22:07,437.437 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 14:22:07,610.610 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 14:22:07,623.623 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 14:22:07,757.757 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 14:22:07,813.813 INFO    ] time= 12/06/2026 14:22:07
[2026-06-12 14:22:07,851.851 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 14:22:07,857.857 INFO    ] Checking for existing commands in stream...
[2026-06-12 14:22:07,948.948 INFO    ] No existing commands found in stream
[2026-06-12 14:22:12,956.956 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 14:22:12,959.959 INFO    ] Waiting 0.54 seconds before fallback handling...
[2026-06-12 14:22:13,879.879 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 14:22:13,881.881 INFO    ] Checking for system updates...
[2026-06-12 14:22:13,902.902 INFO    ] 200
[2026-06-12 14:22:13,904.904 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:22:13,933.933 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 14:22:13,935.935 INFO    ] No update needed
[2026-06-12 14:22:13,936.936 INFO    ] Checking for camera pi updates...
[2026-06-12 14:22:13,957.957 INFO    ] 200
[2026-06-12 14:22:13,958.958 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:22:13,981.981 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 14:22:14,025.025 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 14:22:14,026.026 INFO    ] No camera update needed
[2026-06-12 14:22:14,028.028 INFO    ] Script finished. Safe exiting...
[2026-06-12 14:22:14,029.029 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 14:22:14,032.032 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 14:22:14,035.035 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 14:22:16,074.074 INFO    ] ================================================
[2026-06-12 14:22:16,090.090 INFO    ] Launching Daemon at Fri Jun 12 14:22:16 IST 2026
[2026-06-12 14:22:16,101.101 INFO    ] ================================================
[2026-06-12 14:22:16,479.479 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 14:22:16
[2026-06-12 14:22:16,791.791 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 14:22:16,923.923 INFO    ] Initializing speech engine...
[2026-06-12 14:22:16,927.927 INFO    ] 2026-06-12 14:22:16
[2026-06-12 14:22:17,145.145 INFO    ] 2026-06-12 14:22:17
[2026-06-12 14:22:17,175.175 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 14:22:17,370.370 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 14:22:17,379.379 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 14:22:17,511.511 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 14:22:17,579.579 INFO    ] time= 12/06/2026 14:22:17
[2026-06-12 14:22:17,604.604 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 14:22:17,611.611 INFO    ] Checking for existing commands in stream...
[2026-06-12 14:22:17,702.702 INFO    ] No existing commands found in stream
[2026-06-12 14:22:22,716.716 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 14:22:22,719.719 INFO    ] Waiting 1.29 seconds before fallback handling...
[2026-06-12 14:22:24,398.398 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 14:22:24,400.400 INFO    ] Checking for system updates...
[2026-06-12 14:22:24,422.422 INFO    ] 200
[2026-06-12 14:22:24,423.423 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:22:24,455.455 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 14:22:24,457.457 INFO    ] No update needed
[2026-06-12 14:22:24,458.458 INFO    ] Checking for camera pi updates...
[2026-06-12 14:22:24,481.481 INFO    ] 200
[2026-06-12 14:22:24,482.482 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:22:24,509.509 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 14:22:24,555.555 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 14:22:24,557.557 INFO    ] No camera update needed
[2026-06-12 14:22:24,558.558 INFO    ] Script finished. Safe exiting...
[2026-06-12 14:22:24,559.559 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 14:22:24,563.563 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 14:22:24,566.566 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 14:22:26,605.605 INFO    ] ================================================
[2026-06-12 14:22:26,622.622 INFO    ] Launching Daemon at Fri Jun 12 14:22:26 IST 2026
[2026-06-12 14:22:26,633.633 INFO    ] ================================================
[2026-06-12 14:22:26,969.969 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 14:22:26
[2026-06-12 14:22:27,305.305 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 14:22:27,457.457 INFO    ] Initializing speech engine...
[2026-06-12 14:22:27,462.462 INFO    ] 2026-06-12 14:22:27
[2026-06-12 14:22:27,668.668 INFO    ] 2026-06-12 14:22:27
[2026-06-12 14:22:27,697.697 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 14:22:27,841.841 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 14:22:27,884.884 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 14:22:28,019.019 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 14:22:28,082.082 INFO    ] time= 12/06/2026 14:22:28
[2026-06-12 14:22:28,115.115 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 14:22:28,121.121 INFO    ] Checking for existing commands in stream...
[2026-06-12 14:22:28,188.188 INFO    ] No existing commands found in stream
[2026-06-12 14:22:33,208.208 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 14:22:33,211.211 INFO    ] Waiting 2.10 seconds before fallback handling...
[2026-06-12 14:22:35,684.684 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 14:22:35,686.686 INFO    ] Checking for system updates...
[2026-06-12 14:22:35,707.707 INFO    ] 200
[2026-06-12 14:22:35,710.710 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:22:35,742.742 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 14:22:35,743.743 INFO    ] No update needed
[2026-06-12 14:22:35,745.745 INFO    ] Checking for camera pi updates...
[2026-06-12 14:22:35,766.766 INFO    ] 200
[2026-06-12 14:22:35,768.768 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:22:35,791.791 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 14:22:35,840.840 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 14:22:35,842.842 INFO    ] No camera update needed
[2026-06-12 14:22:35,843.843 INFO    ] Script finished. Safe exiting...
[2026-06-12 14:22:35,844.844 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 14:22:35,848.848 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 14:22:35,851.851 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 14:22:37,888.888 INFO    ] ================================================
[2026-06-12 14:22:37,904.904 INFO    ] Launching Daemon at Fri Jun 12 14:22:37 IST 2026
[2026-06-12 14:22:37,915.915 INFO    ] ================================================
[2026-06-12 14:22:38,287.287 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 14:22:38
[2026-06-12 14:22:38,620.620 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 14:22:38,769.769 INFO    ] Initializing speech engine...
[2026-06-12 14:22:38,774.774 INFO    ] 2026-06-12 14:22:38
[2026-06-12 14:22:38,985.985 INFO    ] 2026-06-12 14:22:38
[2026-06-12 14:22:39,013.013 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 14:22:39,135.135 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 14:22:39,198.198 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 14:22:39,319.319 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 14:22:39,340.340 INFO    ] time= 12/06/2026 14:22:39
[2026-06-12 14:22:39,406.406 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 14:22:39,431.431 INFO    ] Checking for existing commands in stream...
[2026-06-12 14:22:39,503.503 INFO    ] No existing commands found in stream
[2026-06-12 14:22:44,517.517 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 14:22:44,520.520 INFO    ] Waiting 2.79 seconds before fallback handling...
[2026-06-12 14:22:52,661.661 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 14:22:52,663.663 INFO    ] Checking for system updates...
[2026-06-12 14:22:52,685.685 INFO    ] 200
[2026-06-12 14:22:52,686.686 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:22:52,718.718 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 14:22:52,719.719 INFO    ] No update needed
[2026-06-12 14:22:52,720.720 INFO    ] Checking for camera pi updates...
[2026-06-12 14:22:52,739.739 INFO    ] 200
[2026-06-12 14:22:52,741.741 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:22:52,767.767 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 14:22:52,807.807 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 14:22:52,808.808 INFO    ] No camera update needed
[2026-06-12 14:22:52,809.809 INFO    ] Script finished. Safe exiting...
[2026-06-12 14:22:52,811.811 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 14:22:52,814.814 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 14:22:52,816.816 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 14:22:54,854.854 INFO    ] ================================================
[2026-06-12 14:22:54,869.869 INFO    ] Launching Daemon at Fri Jun 12 14:22:54 IST 2026
[2026-06-12 14:22:54,880.880 INFO    ] ================================================
[2026-06-12 14:22:55,257.257 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 14:22:55
[2026-06-12 14:22:55,593.593 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 14:22:55,732.732 INFO    ] Initializing speech engine...
[2026-06-12 14:22:55,740.740 INFO    ] 2026-06-12 14:22:55
[2026-06-12 14:22:55,960.960 INFO    ] 2026-06-12 14:22:55
[2026-06-12 14:22:55,991.991 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 14:22:56,115.115 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 14:22:56,179.179 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 14:22:56,321.321 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 14:22:56,385.385 INFO    ] time= 12/06/2026 14:22:56
[2026-06-12 14:22:56,406.406 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 14:22:56,417.417 INFO    ] Checking for existing commands in stream...
[2026-06-12 14:22:56,488.488 INFO    ] No existing commands found in stream
[2026-06-12 14:23:01,499.499 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 14:23:01,502.502 INFO    ] Waiting 0.82 seconds before fallback handling...
[2026-06-12 14:23:02,642.642 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 14:23:02,644.644 INFO    ] Checking for system updates...
[2026-06-12 14:23:02,664.664 INFO    ] 200
[2026-06-12 14:23:02,666.666 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:23:02,705.705 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 14:23:02,708.708 INFO    ] No update needed
[2026-06-12 14:23:02,710.710 INFO    ] Checking for camera pi updates...
[2026-06-12 14:23:02,729.729 INFO    ] 200
[2026-06-12 14:23:02,731.731 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:23:02,755.755 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 14:23:02,791.791 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 14:23:02,792.792 INFO    ] No camera update needed
[2026-06-12 14:23:02,794.794 INFO    ] Script finished. Safe exiting...
[2026-06-12 14:23:02,795.795 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 14:23:02,798.798 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 14:23:02,801.801 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 14:23:04,839.839 INFO    ] ================================================
[2026-06-12 14:23:04,854.854 INFO    ] Launching Daemon at Fri Jun 12 14:23:04 IST 2026
[2026-06-12 14:23:04,865.865 INFO    ] ================================================
[2026-06-12 14:23:05,259.259 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 14:23:05
[2026-06-12 14:23:05,593.593 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 14:23:05,745.745 INFO    ] Initializing speech engine...
[2026-06-12 14:23:05,748.748 INFO    ] 2026-06-12 14:23:05
[2026-06-12 14:23:05,968.968 INFO    ] 2026-06-12 14:23:05
[2026-06-12 14:23:05,998.998 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 14:23:06,184.184 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 14:23:06,188.188 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 14:23:06,336.336 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 14:23:06,393.393 INFO    ] time= 12/06/2026 14:23:06
[2026-06-12 14:23:06,417.417 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 14:23:06,424.424 INFO    ] Checking for existing commands in stream...
[2026-06-12 14:23:06,491.491 INFO    ] No existing commands found in stream
[2026-06-12 14:23:11,500.500 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 14:23:11,504.504 INFO    ] Waiting 2.34 seconds before fallback handling...
[2026-06-12 14:23:14,152.152 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 14:23:14,153.153 INFO    ] Checking for system updates...
[2026-06-12 14:23:14,174.174 INFO    ] 200
[2026-06-12 14:23:14,175.175 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:23:14,209.209 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 14:23:14,211.211 INFO    ] No update needed
[2026-06-12 14:23:14,212.212 INFO    ] Checking for camera pi updates...
[2026-06-12 14:23:14,232.232 INFO    ] 200
[2026-06-12 14:23:14,233.233 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:23:14,257.257 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 14:23:14,395.395 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 14:23:14,397.397 INFO    ] No camera update needed
[2026-06-12 14:23:14,398.398 INFO    ] Script finished. Safe exiting...
[2026-06-12 14:23:14,400.400 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 14:23:14,403.403 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 14:23:14,406.406 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 14:23:16,445.445 INFO    ] ================================================
[2026-06-12 14:23:16,460.460 INFO    ] Launching Daemon at Fri Jun 12 14:23:16 IST 2026
[2026-06-12 14:23:16,471.471 INFO    ] ================================================
[2026-06-12 14:23:16,834.834 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 14:23:16
[2026-06-12 14:23:17,153.153 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 14:23:17,289.289 INFO    ] Initializing speech engine...
[2026-06-12 14:23:17,293.293 INFO    ] 2026-06-12 14:23:17
[2026-06-12 14:23:17,522.522 INFO    ] 2026-06-12 14:23:17
[2026-06-12 14:23:17,553.553 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 14:23:17,701.701 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 14:23:17,752.752 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 14:23:17,917.917 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 14:23:17,975.975 INFO    ] time= 12/06/2026 14:23:17
[2026-06-12 14:23:17,999.999 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 14:23:18,005.005 INFO    ] Checking for existing commands in stream...
[2026-06-12 14:23:18,075.075 INFO    ] No existing commands found in stream
[2026-06-12 14:23:23,086.086 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 14:23:23,089.089 INFO    ] Waiting 0.37 seconds before fallback handling...
[2026-06-12 14:23:23,824.824 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 14:23:23,826.826 INFO    ] Checking for system updates...
[2026-06-12 14:23:23,847.847 INFO    ] 200
[2026-06-12 14:23:23,848.848 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:23:23,877.877 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 14:23:23,879.879 INFO    ] No update needed
[2026-06-12 14:23:23,880.880 INFO    ] Checking for camera pi updates...
[2026-06-12 14:23:23,900.900 INFO    ] 200
[2026-06-12 14:23:23,902.902 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:23:23,926.926 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 14:23:23,973.973 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 14:23:23,975.975 INFO    ] No camera update needed
[2026-06-12 14:23:23,976.976 INFO    ] Script finished. Safe exiting...
[2026-06-12 14:23:23,977.977 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 14:23:23,980.980 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 14:23:23,983.983 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 14:23:26,021.021 INFO    ] ================================================
[2026-06-12 14:23:26,036.036 INFO    ] Launching Daemon at Fri Jun 12 14:23:26 IST 2026
[2026-06-12 14:23:26,047.047 INFO    ] ================================================
[2026-06-12 14:23:26,395.395 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 14:23:26
[2026-06-12 14:23:26,727.727 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 14:23:26,867.867 INFO    ] Initializing speech engine...
[2026-06-12 14:23:26,881.881 INFO    ] 2026-06-12 14:23:26
[2026-06-12 14:23:27,093.093 INFO    ] 2026-06-12 14:23:27
[2026-06-12 14:23:27,123.123 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 14:23:27,308.308 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 14:23:27,319.319 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 14:23:27,450.450 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 14:23:27,517.517 INFO    ] time= 12/06/2026 14:23:27
[2026-06-12 14:23:27,542.542 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 14:23:27,548.548 INFO    ] Checking for existing commands in stream...
[2026-06-12 14:23:27,617.617 INFO    ] No existing commands found in stream
[2026-06-12 14:23:32,621.621 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 14:23:32,623.623 INFO    ] Waiting 3.09 seconds before fallback handling...
[2026-06-12 14:23:36,073.073 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 14:23:36,075.075 INFO    ] Checking for system updates...
[2026-06-12 14:23:36,095.095 INFO    ] 200
[2026-06-12 14:23:36,097.097 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:23:36,127.127 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 14:23:36,128.128 INFO    ] No update needed
[2026-06-12 14:23:36,130.130 INFO    ] Checking for camera pi updates...
[2026-06-12 14:23:36,150.150 INFO    ] 200
[2026-06-12 14:23:36,151.151 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:23:36,174.174 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 14:23:36,252.252 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 14:23:36,254.254 INFO    ] No camera update needed
[2026-06-12 14:23:36,255.255 INFO    ] Script finished. Safe exiting...
[2026-06-12 14:23:36,257.257 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 14:23:36,260.260 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 14:23:36,263.263 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 14:23:38,302.302 INFO    ] ================================================
[2026-06-12 14:23:38,317.317 INFO    ] Launching Daemon at Fri Jun 12 14:23:38 IST 2026
[2026-06-12 14:23:38,328.328 INFO    ] ================================================
[2026-06-12 14:23:38,666.666 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 14:23:38
[2026-06-12 14:23:38,977.977 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 14:23:39,105.105 INFO    ] Initializing speech engine...
[2026-06-12 14:23:39,114.114 INFO    ] 2026-06-12 14:23:39
[2026-06-12 14:23:39,326.326 INFO    ] 2026-06-12 14:23:39
[2026-06-12 14:23:39,353.353 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 14:23:39,510.510 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 14:23:39,512.512 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 14:23:39,674.674 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 14:23:39,696.696 INFO    ] time= 12/06/2026 14:23:39
[2026-06-12 14:23:39,761.761 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 14:23:39,786.786 INFO    ] Checking for existing commands in stream...
[2026-06-12 14:23:39,895.895 INFO    ] No existing commands found in stream
[2026-06-12 14:23:44,907.907 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 14:23:44,909.909 INFO    ] Waiting 0.81 seconds before fallback handling...
[2026-06-12 14:23:46,086.086 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 14:23:46,087.087 INFO    ] Checking for system updates...
[2026-06-12 14:23:46,108.108 INFO    ] 200
[2026-06-12 14:23:46,110.110 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:23:46,139.139 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 14:23:46,141.141 INFO    ] No update needed
[2026-06-12 14:23:46,142.142 INFO    ] Checking for camera pi updates...
[2026-06-12 14:23:46,163.163 INFO    ] 200
[2026-06-12 14:23:46,164.164 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:23:46,191.191 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 14:23:46,244.244 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 14:23:46,245.245 INFO    ] No camera update needed
[2026-06-12 14:23:46,247.247 INFO    ] Script finished. Safe exiting...
[2026-06-12 14:23:46,248.248 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 14:23:46,251.251 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 14:23:46,254.254 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 14:23:48,293.293 INFO    ] ================================================
[2026-06-12 14:23:48,308.308 INFO    ] Launching Daemon at Fri Jun 12 14:23:48 IST 2026
[2026-06-12 14:23:48,319.319 INFO    ] ================================================
[2026-06-12 14:23:48,674.674 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 14:23:48
[2026-06-12 14:23:48,993.993 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 14:23:49,138.138 INFO    ] Initializing speech engine...
[2026-06-12 14:23:49,143.143 INFO    ] 2026-06-12 14:23:49
[2026-06-12 14:23:49,346.346 INFO    ] 2026-06-12 14:23:49
[2026-06-12 14:23:49,375.375 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 14:23:49,560.560 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 14:23:49,569.569 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 14:23:49,703.703 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 14:23:49,766.766 INFO    ] time= 12/06/2026 14:23:49
[2026-06-12 14:23:49,789.789 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 14:23:49,795.795 INFO    ] Checking for existing commands in stream...
[2026-06-12 14:23:49,860.860 INFO    ] No existing commands found in stream
[2026-06-12 14:23:54,871.871 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 14:23:54,874.874 INFO    ] Waiting 1.76 seconds before fallback handling...
[2026-06-12 14:23:57,025.025 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 14:23:57,027.027 INFO    ] Checking for system updates...
[2026-06-12 14:23:57,047.047 INFO    ] 200
[2026-06-12 14:23:57,048.048 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:23:57,080.080 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 14:23:57,081.081 INFO    ] No update needed
[2026-06-12 14:23:57,082.082 INFO    ] Checking for camera pi updates...
[2026-06-12 14:23:57,103.103 INFO    ] 200
[2026-06-12 14:23:57,104.104 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:23:57,127.127 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 14:23:57,175.175 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 14:23:57,176.176 INFO    ] No camera update needed
[2026-06-12 14:23:57,178.178 INFO    ] Script finished. Safe exiting...
[2026-06-12 14:23:57,179.179 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 14:23:57,182.182 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 14:23:57,185.185 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 14:23:59,224.224 INFO    ] ================================================
[2026-06-12 14:23:59,239.239 INFO    ] Launching Daemon at Fri Jun 12 14:23:59 IST 2026
[2026-06-12 14:23:59,249.249 INFO    ] ================================================
[2026-06-12 14:23:59,624.624 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 14:23:59
[2026-06-12 14:23:59,941.941 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 14:24:00,084.084 INFO    ] Initializing speech engine...
[2026-06-12 14:24:00,089.089 INFO    ] 2026-06-12 14:24:00
[2026-06-12 14:24:00,292.292 INFO    ] 2026-06-12 14:24:00
[2026-06-12 14:24:00,321.321 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 14:24:00,503.503 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 14:24:00,513.513 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 14:24:00,638.638 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 14:24:00,700.700 INFO    ] time= 12/06/2026 14:24:00
[2026-06-12 14:24:00,732.732 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 14:24:00,738.738 INFO    ] Checking for existing commands in stream...
[2026-06-12 14:24:00,804.804 INFO    ] No existing commands found in stream
[2026-06-12 14:24:05,818.818 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 14:24:05,821.821 INFO    ] Waiting 1.78 seconds before fallback handling...
[2026-06-12 14:24:07,977.977 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 14:24:07,978.978 INFO    ] Checking for system updates...
[2026-06-12 14:24:07,999.999 INFO    ] 200
[2026-06-12 14:24:08,000.000 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:24:08,030.030 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 14:24:08,031.031 INFO    ] No update needed
[2026-06-12 14:24:08,032.032 INFO    ] Checking for camera pi updates...
[2026-06-12 14:24:08,051.051 INFO    ] 200
[2026-06-12 14:24:08,053.053 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:24:08,075.075 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 14:24:08,118.118 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 14:24:08,119.119 INFO    ] No camera update needed
[2026-06-12 14:24:08,121.121 INFO    ] Script finished. Safe exiting...
[2026-06-12 14:24:08,122.122 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 14:24:08,125.125 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 14:24:08,127.127 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 14:24:10,166.166 INFO    ] ================================================
[2026-06-12 14:24:10,181.181 INFO    ] Launching Daemon at Fri Jun 12 14:24:10 IST 2026
[2026-06-12 14:24:10,192.192 INFO    ] ================================================
[2026-06-12 14:24:10,559.559 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 14:24:10
[2026-06-12 14:24:10,878.878 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 14:24:11,021.021 INFO    ] Initializing speech engine...
[2026-06-12 14:24:11,025.025 INFO    ] 2026-06-12 14:24:11
[2026-06-12 14:24:11,229.229 INFO    ] 2026-06-12 14:24:11
[2026-06-12 14:24:11,257.257 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 14:24:11,440.440 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 14:24:11,450.450 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 14:24:11,596.596 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 14:24:11,649.649 INFO    ] time= 12/06/2026 14:24:11
[2026-06-12 14:24:11,671.671 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 14:24:11,677.677 INFO    ] Checking for existing commands in stream...
[2026-06-12 14:24:11,743.743 INFO    ] No existing commands found in stream
[2026-06-12 14:24:16,757.757 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 14:24:16,760.760 INFO    ] Waiting 3.82 seconds before fallback handling...
[2026-06-12 14:24:20,965.965 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 14:24:20,967.967 INFO    ] Checking for system updates...
[2026-06-12 14:24:20,987.987 INFO    ] 200
[2026-06-12 14:24:20,988.988 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:24:21,023.023 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 14:24:21,024.024 INFO    ] No update needed
[2026-06-12 14:24:21,025.025 INFO    ] Checking for camera pi updates...
[2026-06-12 14:24:21,045.045 INFO    ] 200
[2026-06-12 14:24:21,047.047 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:24:21,071.071 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 14:24:21,110.110 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 14:24:21,112.112 INFO    ] No camera update needed
[2026-06-12 14:24:21,113.113 INFO    ] Script finished. Safe exiting...
[2026-06-12 14:24:21,114.114 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 14:24:21,117.117 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 14:24:21,120.120 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 14:24:23,158.158 INFO    ] ================================================
[2026-06-12 14:24:23,173.173 INFO    ] Launching Daemon at Fri Jun 12 14:24:23 IST 2026
[2026-06-12 14:24:23,184.184 INFO    ] ================================================
[2026-06-12 14:24:23,532.532 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 14:24:23
[2026-06-12 14:24:23,867.867 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 14:24:24,011.011 INFO    ] Initializing speech engine...
[2026-06-12 14:24:24,022.022 INFO    ] 2026-06-12 14:24:24
[2026-06-12 14:24:24,232.232 INFO    ] 2026-06-12 14:24:24
[2026-06-12 14:24:24,262.262 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 14:24:24,447.447 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 14:24:24,457.457 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 14:24:24,581.581 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 14:24:24,642.642 INFO    ] time= 12/06/2026 14:24:24
[2026-06-12 14:24:24,680.680 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 14:24:24,682.682 INFO    ] Checking for existing commands in stream...
[2026-06-12 14:24:24,757.757 INFO    ] No existing commands found in stream
[2026-06-12 14:24:29,782.782 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 14:24:29,785.785 INFO    ] Waiting 3.92 seconds before fallback handling...
[2026-06-12 14:24:34,097.097 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 14:24:34,098.098 INFO    ] Checking for system updates...
[2026-06-12 14:24:34,120.120 INFO    ] 200
[2026-06-12 14:24:34,122.122 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:24:34,156.156 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 14:24:34,157.157 INFO    ] No update needed
[2026-06-12 14:24:34,159.159 INFO    ] Checking for camera pi updates...
[2026-06-12 14:24:34,180.180 INFO    ] 200
[2026-06-12 14:24:34,182.182 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:24:34,205.205 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 14:24:34,257.257 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 14:24:34,258.258 INFO    ] No camera update needed
[2026-06-12 14:24:34,260.260 INFO    ] Script finished. Safe exiting...
[2026-06-12 14:24:34,261.261 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 14:24:34,265.265 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 14:24:34,268.268 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 14:24:36,306.306 INFO    ] ================================================
[2026-06-12 14:24:36,321.321 INFO    ] Launching Daemon at Fri Jun 12 14:24:36 IST 2026
[2026-06-12 14:24:36,332.332 INFO    ] ================================================
[2026-06-12 14:24:36,653.653 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 14:24:36
[2026-06-12 14:24:36,966.966 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 14:24:37,103.103 INFO    ] Initializing speech engine...
[2026-06-12 14:24:37,112.112 INFO    ] 2026-06-12 14:24:37
[2026-06-12 14:24:37,315.315 INFO    ] 2026-06-12 14:24:37
[2026-06-12 14:24:37,344.344 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 14:24:37,528.528 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 14:24:37,537.537 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 14:24:37,666.666 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 14:24:37,734.734 INFO    ] time= 12/06/2026 14:24:37
[2026-06-12 14:24:37,758.758 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 14:24:37,764.764 INFO    ] Checking for existing commands in stream...
[2026-06-12 14:24:37,854.854 INFO    ] No existing commands found in stream
[2026-06-12 14:24:42,868.868 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 14:24:42,871.871 INFO    ] Waiting 3.52 seconds before fallback handling...
[2026-06-12 14:24:46,746.746 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 14:24:46,747.747 INFO    ] Checking for system updates...
[2026-06-12 14:24:46,768.768 INFO    ] 200
[2026-06-12 14:24:46,769.769 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:24:46,799.799 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 14:24:46,800.800 INFO    ] No update needed
[2026-06-12 14:24:46,805.805 INFO    ] Checking for camera pi updates...
[2026-06-12 14:24:46,824.824 INFO    ] 200
[2026-06-12 14:24:46,826.826 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:24:46,848.848 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 14:24:46,897.897 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 14:24:46,899.899 INFO    ] No camera update needed
[2026-06-12 14:24:46,900.900 INFO    ] Script finished. Safe exiting...
[2026-06-12 14:24:46,901.901 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 14:24:46,904.904 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 14:24:46,907.907 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 14:24:48,946.946 INFO    ] ================================================
[2026-06-12 14:24:48,961.961 INFO    ] Launching Daemon at Fri Jun 12 14:24:48 IST 2026
[2026-06-12 14:24:48,971.971 INFO    ] ================================================
[2026-06-12 14:24:49,352.352 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 14:24:49
[2026-06-12 14:24:49,687.687 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 14:24:49,832.832 INFO    ] Initializing speech engine...
[2026-06-12 14:24:49,841.841 INFO    ] 2026-06-12 14:24:49
[2026-06-12 14:24:50,053.053 INFO    ] 2026-06-12 14:24:50
[2026-06-12 14:24:50,083.083 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 14:24:50,212.212 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 14:24:50,271.271 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 14:24:50,413.413 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 14:24:50,481.481 INFO    ] time= 12/06/2026 14:24:50
[2026-06-12 14:24:50,505.505 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 14:24:50,512.512 INFO    ] Checking for existing commands in stream...
[2026-06-12 14:24:50,629.629 INFO    ] No existing commands found in stream
[2026-06-12 14:24:55,639.639 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 14:24:55,642.642 INFO    ] Waiting 3.96 seconds before fallback handling...
[2026-06-12 14:24:59,992.992 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 14:24:59,993.993 INFO    ] Checking for system updates...
[2026-06-12 14:25:00,014.014 INFO    ] 200
[2026-06-12 14:25:00,015.015 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:25:00,051.051 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 14:25:00,052.052 INFO    ] No update needed
[2026-06-12 14:25:00,053.053 INFO    ] Checking for camera pi updates...
[2026-06-12 14:25:00,074.074 INFO    ] 200
[2026-06-12 14:25:00,075.075 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:25:00,099.099 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 14:25:00,150.150 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 14:25:00,152.152 INFO    ] No camera update needed
[2026-06-12 14:25:00,153.153 INFO    ] Script finished. Safe exiting...
[2026-06-12 14:25:00,154.154 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 14:25:00,157.157 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 14:25:00,160.160 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 14:25:02,209.209 INFO    ] ================================================
[2026-06-12 14:25:02,219.219 INFO    ] Launching Daemon at Fri Jun 12 14:25:02 IST 2026
[2026-06-12 14:25:02,226.226 INFO    ] ================================================
[2026-06-12 14:25:02,538.538 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 14:25:02
[2026-06-12 14:25:02,856.856 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 14:25:02,998.998 INFO    ] Initializing speech engine...
[2026-06-12 14:25:03,006.006 INFO    ] 2026-06-12 14:25:03
[2026-06-12 14:25:03,226.226 INFO    ] 2026-06-12 14:25:03
[2026-06-12 14:25:03,258.258 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 14:25:03,390.390 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 14:25:03,444.444 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 14:25:03,601.601 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 14:25:03,653.653 INFO    ] time= 12/06/2026 14:25:03
[2026-06-12 14:25:03,693.693 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 14:25:03,711.711 INFO    ] Checking for existing commands in stream...
[2026-06-12 14:25:03,813.813 INFO    ] No existing commands found in stream
[2026-06-12 14:25:08,822.822 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 14:25:08,824.824 INFO    ] Waiting 2.28 seconds before fallback handling...
[2026-06-12 14:25:11,446.446 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 14:25:11,448.448 INFO    ] Checking for system updates...
[2026-06-12 14:25:11,468.468 INFO    ] 200
[2026-06-12 14:25:11,469.469 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:25:11,502.502 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 14:25:11,503.503 INFO    ] No update needed
[2026-06-12 14:25:11,505.505 INFO    ] Checking for camera pi updates...
[2026-06-12 14:25:11,524.524 INFO    ] 200
[2026-06-12 14:25:11,525.525 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:25:11,548.548 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 14:25:11,650.650 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 14:25:11,651.651 INFO    ] No camera update needed
[2026-06-12 14:25:11,653.653 INFO    ] Script finished. Safe exiting...
[2026-06-12 14:25:11,654.654 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 14:25:11,658.658 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 14:25:11,661.661 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 14:25:13,698.698 INFO    ] ================================================
[2026-06-12 14:25:13,714.714 INFO    ] Launching Daemon at Fri Jun 12 14:25:13 IST 2026
[2026-06-12 14:25:13,725.725 INFO    ] ================================================
[2026-06-12 14:25:14,087.087 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 14:25:14
[2026-06-12 14:25:14,405.405 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 14:25:14,554.554 INFO    ] Initializing speech engine...
[2026-06-12 14:25:14,559.559 INFO    ] 2026-06-12 14:25:14
[2026-06-12 14:25:14,776.776 INFO    ] 2026-06-12 14:25:14
[2026-06-12 14:25:14,807.807 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 14:25:15,006.006 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 14:25:15,010.010 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 14:25:15,158.158 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 14:25:15,227.227 INFO    ] time= 12/06/2026 14:25:15
[2026-06-12 14:25:15,256.256 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 14:25:15,258.258 INFO    ] Checking for existing commands in stream...
[2026-06-12 14:25:15,336.336 INFO    ] No existing commands found in stream
[2026-06-12 14:25:20,345.345 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 14:25:20,347.347 INFO    ] Waiting 0.72 seconds before fallback handling...
[2026-06-12 14:25:21,500.500 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 14:25:21,502.502 INFO    ] Checking for system updates...
[2026-06-12 14:25:21,522.522 INFO    ] 200
[2026-06-12 14:25:21,524.524 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:25:21,556.556 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 14:25:21,557.557 INFO    ] No update needed
[2026-06-12 14:25:21,558.558 INFO    ] Checking for camera pi updates...
[2026-06-12 14:25:21,579.579 INFO    ] 200
[2026-06-12 14:25:21,580.580 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:25:21,605.605 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 14:25:21,747.747 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 14:25:21,748.748 INFO    ] No camera update needed
[2026-06-12 14:25:21,750.750 INFO    ] Script finished. Safe exiting...
[2026-06-12 14:25:21,751.751 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 14:25:21,754.754 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 14:25:21,757.757 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 14:25:23,786.786 INFO    ] ================================================
[2026-06-12 14:25:23,795.795 INFO    ] Launching Daemon at Fri Jun 12 14:25:23 IST 2026
[2026-06-12 14:25:23,801.801 INFO    ] ================================================
[2026-06-12 14:25:24,106.106 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 14:25:24
[2026-06-12 14:25:24,422.422 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 14:25:24,565.565 INFO    ] Initializing speech engine...
[2026-06-12 14:25:24,570.570 INFO    ] 2026-06-12 14:25:24
[2026-06-12 14:25:24,773.773 INFO    ] 2026-06-12 14:25:24
[2026-06-12 14:25:24,801.801 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 14:25:24,988.988 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 14:25:24,997.997 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 14:25:25,124.124 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 14:25:25,191.191 INFO    ] time= 12/06/2026 14:25:25
[2026-06-12 14:25:25,218.218 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 14:25:25,225.225 INFO    ] Checking for existing commands in stream...
[2026-06-12 14:25:25,289.289 INFO    ] No existing commands found in stream
[2026-06-12 14:25:30,297.297 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 14:25:30,300.300 INFO    ] Waiting 2.92 seconds before fallback handling...
[2026-06-12 14:25:33,634.634 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 14:25:33,636.636 INFO    ] Checking for system updates...
[2026-06-12 14:25:33,656.656 INFO    ] 200
[2026-06-12 14:25:33,657.657 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:25:33,689.689 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 14:25:33,691.691 INFO    ] No update needed
[2026-06-12 14:25:33,692.692 INFO    ] Checking for camera pi updates...
[2026-06-12 14:25:33,712.712 INFO    ] 200
[2026-06-12 14:25:33,713.713 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:25:33,736.736 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 14:25:33,780.780 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 14:25:33,782.782 INFO    ] No camera update needed
[2026-06-12 14:25:33,783.783 INFO    ] Script finished. Safe exiting...
[2026-06-12 14:25:33,785.785 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 14:25:33,788.788 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 14:25:33,791.791 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 14:25:35,829.829 INFO    ] ================================================
[2026-06-12 14:25:35,845.845 INFO    ] Launching Daemon at Fri Jun 12 14:25:35 IST 2026
[2026-06-12 14:25:35,856.856 INFO    ] ================================================
[2026-06-12 14:25:36,198.198 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 14:25:36
[2026-06-12 14:25:36,508.508 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 14:25:36,640.640 INFO    ] Initializing speech engine...
[2026-06-12 14:25:36,645.645 INFO    ] 2026-06-12 14:25:36
[2026-06-12 14:25:36,874.874 INFO    ] 2026-06-12 14:25:36
[2026-06-12 14:25:36,905.905 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 14:25:37,099.099 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 14:25:37,108.108 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 14:25:37,247.247 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 14:25:37,308.308 INFO    ] time= 12/06/2026 14:25:37
[2026-06-12 14:25:37,338.338 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 14:25:37,355.355 INFO    ] Checking for existing commands in stream...
[2026-06-12 14:25:37,430.430 INFO    ] No existing commands found in stream
[2026-06-12 14:25:42,441.441 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 14:25:42,444.444 INFO    ] Waiting 1.88 seconds before fallback handling...
[2026-06-12 14:25:44,698.698 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 14:25:44,700.700 INFO    ] Checking for system updates...
[2026-06-12 14:25:44,721.721 INFO    ] 200
[2026-06-12 14:25:44,722.722 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:25:44,753.753 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 14:25:44,754.754 INFO    ] No update needed
[2026-06-12 14:25:44,756.756 INFO    ] Checking for camera pi updates...
[2026-06-12 14:25:44,775.775 INFO    ] 200
[2026-06-12 14:25:44,777.777 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:25:44,800.800 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 14:25:44,848.848 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 14:25:44,850.850 INFO    ] No camera update needed
[2026-06-12 14:25:44,851.851 INFO    ] Script finished. Safe exiting...
[2026-06-12 14:25:44,853.853 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 14:25:44,856.856 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 14:25:44,859.859 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 14:25:46,898.898 INFO    ] ================================================
[2026-06-12 14:25:46,913.913 INFO    ] Launching Daemon at Fri Jun 12 14:25:46 IST 2026
[2026-06-12 14:25:46,924.924 INFO    ] ================================================
[2026-06-12 14:25:47,307.307 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 14:25:47
[2026-06-12 14:25:47,646.646 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 14:25:47,800.800 INFO    ] Initializing speech engine...
[2026-06-12 14:25:47,806.806 INFO    ] 2026-06-12 14:25:47
[2026-06-12 14:25:48,016.016 INFO    ] 2026-06-12 14:25:47
[2026-06-12 14:25:48,045.045 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 14:25:48,175.175 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 14:25:48,234.234 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 14:25:48,371.371 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 14:25:48,438.438 INFO    ] time= 12/06/2026 14:25:48
[2026-06-12 14:25:48,466.466 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 14:25:48,473.473 INFO    ] Checking for existing commands in stream...
[2026-06-12 14:25:48,540.540 INFO    ] No existing commands found in stream
[2026-06-12 14:25:53,573.573 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 14:25:53,576.576 INFO    ] Waiting 2.75 seconds before fallback handling...
[2026-06-12 14:25:56,690.690 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 14:25:56,692.692 INFO    ] Checking for system updates...
[2026-06-12 14:25:56,714.714 INFO    ] 200
[2026-06-12 14:25:56,715.715 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:25:56,748.748 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 14:25:56,750.750 INFO    ] No update needed
[2026-06-12 14:25:56,751.751 INFO    ] Checking for camera pi updates...
[2026-06-12 14:25:56,771.771 INFO    ] 200
[2026-06-12 14:25:56,773.773 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:25:56,798.798 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 14:25:56,848.848 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 14:25:56,849.849 INFO    ] No camera update needed
[2026-06-12 14:25:56,851.851 INFO    ] Script finished. Safe exiting...
[2026-06-12 14:25:56,852.852 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 14:25:56,855.855 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 14:25:56,858.858 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 14:25:58,896.896 INFO    ] ================================================
[2026-06-12 14:25:58,912.912 INFO    ] Launching Daemon at Fri Jun 12 14:25:58 IST 2026
[2026-06-12 14:25:58,922.922 INFO    ] ================================================
[2026-06-12 14:25:59,244.244 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 14:25:59
[2026-06-12 14:25:59,560.560 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 14:25:59,703.703 INFO    ] Initializing speech engine...
[2026-06-12 14:25:59,708.708 INFO    ] 2026-06-12 14:25:59
[2026-06-12 14:25:59,912.912 INFO    ] 2026-06-12 14:25:59
[2026-06-12 14:25:59,941.941 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 14:26:00,124.124 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 14:26:00,133.133 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 14:26:00,260.260 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 14:26:00,321.321 INFO    ] time= 12/06/2026 14:26:00
[2026-06-12 14:26:00,352.352 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 14:26:00,358.358 INFO    ] Checking for existing commands in stream...
[2026-06-12 14:26:00,426.426 INFO    ] No existing commands found in stream
[2026-06-12 14:26:05,435.435 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 14:26:05,437.437 INFO    ] Waiting 1.99 seconds before fallback handling...
[2026-06-12 14:26:07,779.779 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 14:26:07,781.781 INFO    ] Checking for system updates...
[2026-06-12 14:26:07,802.802 INFO    ] 200
[2026-06-12 14:26:07,804.804 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:26:07,833.833 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 14:26:07,835.835 INFO    ] No update needed
[2026-06-12 14:26:07,836.836 INFO    ] Checking for camera pi updates...
[2026-06-12 14:26:07,855.855 INFO    ] 200
[2026-06-12 14:26:07,856.856 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:26:07,879.879 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 14:26:07,920.920 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 14:26:07,921.921 INFO    ] No camera update needed
[2026-06-12 14:26:07,923.923 INFO    ] Script finished. Safe exiting...
[2026-06-12 14:26:07,924.924 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 14:26:07,927.927 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 14:26:07,930.930 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 14:26:09,969.969 INFO    ] ================================================
[2026-06-12 14:26:09,984.984 INFO    ] Launching Daemon at Fri Jun 12 14:26:09 IST 2026
[2026-06-12 14:26:10,995.995 INFO    ] ================================================
[2026-06-12 14:26:10,366.366 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 14:26:10
[2026-06-12 14:26:10,711.711 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 14:26:10,864.864 INFO    ] Initializing speech engine...
[2026-06-12 14:26:10,871.871 INFO    ] 2026-06-12 14:26:10
[2026-06-12 14:26:11,080.080 INFO    ] 2026-06-12 14:26:11
[2026-06-12 14:26:11,109.109 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 14:26:11,294.294 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 14:26:11,306.306 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 14:26:11,448.448 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 14:26:11,513.513 INFO    ] time= 12/06/2026 14:26:11
[2026-06-12 14:26:11,524.524 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 14:26:11,530.530 INFO    ] Checking for existing commands in stream...
[2026-06-12 14:26:11,622.622 INFO    ] No existing commands found in stream
[2026-06-12 14:26:16,642.642 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 14:26:16,645.645 INFO    ] Waiting 2.06 seconds before fallback handling...
[2026-06-12 14:26:19,081.081 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 14:26:19,082.082 INFO    ] Checking for system updates...
[2026-06-12 14:26:19,103.103 INFO    ] 200
[2026-06-12 14:26:19,105.105 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:26:19,135.135 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 14:26:19,137.137 INFO    ] No update needed
[2026-06-12 14:26:19,138.138 INFO    ] Checking for camera pi updates...
[2026-06-12 14:26:19,158.158 INFO    ] 200
[2026-06-12 14:26:19,159.159 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:26:19,185.185 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 14:26:19,241.241 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 14:26:19,242.242 INFO    ] No camera update needed
[2026-06-12 14:26:19,244.244 INFO    ] Script finished. Safe exiting...
[2026-06-12 14:26:19,245.245 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 14:26:19,248.248 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 14:26:19,251.251 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 14:26:21,290.290 INFO    ] ================================================
[2026-06-12 14:26:21,305.305 INFO    ] Launching Daemon at Fri Jun 12 14:26:21 IST 2026
[2026-06-12 14:26:21,316.316 INFO    ] ================================================
[2026-06-12 14:26:21,657.657 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 14:26:21
[2026-06-12 14:26:21,969.969 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 14:26:22,100.100 INFO    ] Initializing speech engine...
[2026-06-12 14:26:22,104.104 INFO    ] 2026-06-12 14:26:22
[2026-06-12 14:26:22,322.322 INFO    ] 2026-06-12 14:26:22
[2026-06-12 14:26:22,352.352 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 14:26:22,538.538 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 14:26:22,548.548 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 14:26:22,685.685 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 14:26:22,738.738 INFO    ] time= 12/06/2026 14:26:22
[2026-06-12 14:26:22,772.772 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 14:26:22,774.774 INFO    ] Checking for existing commands in stream...
[2026-06-12 14:26:22,846.846 INFO    ] No existing commands found in stream
[2026-06-12 14:26:27,860.860 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 14:26:27,863.863 INFO    ] Waiting 3.76 seconds before fallback handling...
[2026-06-12 14:26:31,949.949 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 14:26:31,951.951 INFO    ] Checking for system updates...
[2026-06-12 14:26:31,975.975 INFO    ] 200
[2026-06-12 14:26:31,976.976 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:26:32,011.011 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 14:26:32,012.012 INFO    ] No update needed
[2026-06-12 14:26:32,014.014 INFO    ] Checking for camera pi updates...
[2026-06-12 14:26:32,037.037 INFO    ] 200
[2026-06-12 14:26:32,038.038 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:26:32,067.067 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 14:26:32,104.104 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 14:26:32,106.106 INFO    ] No camera update needed
[2026-06-12 14:26:32,108.108 INFO    ] Script finished. Safe exiting...
[2026-06-12 14:26:32,110.110 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 14:26:32,114.114 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 14:26:32,117.117 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 14:26:34,156.156 INFO    ] ================================================
[2026-06-12 14:26:34,171.171 INFO    ] Launching Daemon at Fri Jun 12 14:26:34 IST 2026
[2026-06-12 14:26:34,182.182 INFO    ] ================================================
[2026-06-12 14:26:34,518.518 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 14:26:34
[2026-06-12 14:26:34,836.836 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 14:26:34,980.980 INFO    ] Initializing speech engine...
[2026-06-12 14:26:34,986.986 INFO    ] 2026-06-12 14:26:34
[2026-06-12 14:26:35,191.191 INFO    ] 2026-06-12 14:26:35
[2026-06-12 14:26:35,220.220 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 14:26:35,342.342 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 14:26:35,406.406 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 14:26:35,545.545 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 14:26:35,613.613 INFO    ] time= 12/06/2026 14:26:35
[2026-06-12 14:26:35,636.636 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 14:26:35,643.643 INFO    ] Checking for existing commands in stream...
[2026-06-12 14:26:35,710.710 INFO    ] No existing commands found in stream
[2026-06-12 14:26:40,719.719 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 14:26:40,722.722 INFO    ] Waiting 3.31 seconds before fallback handling...
[2026-06-12 14:26:44,369.369 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 14:26:44,371.371 INFO    ] Checking for system updates...
[2026-06-12 14:26:44,391.391 INFO    ] 200
[2026-06-12 14:26:44,392.392 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:26:44,425.425 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 14:26:44,426.426 INFO    ] No update needed
[2026-06-12 14:26:44,427.427 INFO    ] Checking for camera pi updates...
[2026-06-12 14:26:44,446.446 INFO    ] 200
[2026-06-12 14:26:44,448.448 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:26:44,470.470 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 14:26:44,617.617 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 14:26:44,619.619 INFO    ] No camera update needed
[2026-06-12 14:26:44,620.620 INFO    ] Script finished. Safe exiting...
[2026-06-12 14:26:44,621.621 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 14:26:44,624.624 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 14:26:44,627.627 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 14:26:46,666.666 INFO    ] ================================================
[2026-06-12 14:26:46,682.682 INFO    ] Launching Daemon at Fri Jun 12 14:26:46 IST 2026
[2026-06-12 14:26:46,692.692 INFO    ] ================================================
[2026-06-12 14:26:47,046.046 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 14:26:47
[2026-06-12 14:26:47,369.369 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 14:26:47,521.521 INFO    ] Initializing speech engine...
[2026-06-12 14:26:47,526.526 INFO    ] 2026-06-12 14:26:47
[2026-06-12 14:26:47,734.734 INFO    ] 2026-06-12 14:26:47
[2026-06-12 14:26:47,763.763 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 14:26:47,948.948 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 14:26:47,958.958 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 14:26:48,087.087 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 14:26:48,146.146 INFO    ] time= 12/06/2026 14:26:48
[2026-06-12 14:26:48,178.178 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 14:26:48,184.184 INFO    ] Checking for existing commands in stream...
[2026-06-12 14:26:48,251.251 INFO    ] No existing commands found in stream
[2026-06-12 14:26:53,265.265 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 14:26:53,268.268 INFO    ] Waiting 0.39 seconds before fallback handling...
[2026-06-12 14:26:54,002.002 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 14:26:54,003.003 INFO    ] Checking for system updates...
[2026-06-12 14:26:54,025.025 INFO    ] 200
[2026-06-12 14:26:54,027.027 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:26:54,060.060 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 14:26:54,061.061 INFO    ] No update needed
[2026-06-12 14:26:54,063.063 INFO    ] Checking for camera pi updates...
[2026-06-12 14:26:54,082.082 INFO    ] 200
[2026-06-12 14:26:54,084.084 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:26:54,107.107 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 14:26:54,160.160 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 14:26:54,162.162 INFO    ] No camera update needed
[2026-06-12 14:26:54,163.163 INFO    ] Script finished. Safe exiting...
[2026-06-12 14:26:54,165.165 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 14:26:54,168.168 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 14:26:54,171.171 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 14:26:56,212.212 INFO    ] ================================================
[2026-06-12 14:26:56,227.227 INFO    ] Launching Daemon at Fri Jun 12 14:26:56 IST 2026
[2026-06-12 14:26:56,238.238 INFO    ] ================================================
[2026-06-12 14:26:56,581.581 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 14:26:56
[2026-06-12 14:26:56,903.903 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 14:26:57,035.035 INFO    ] Initializing speech engine...
[2026-06-12 14:26:57,043.043 INFO    ] 2026-06-12 14:26:57
[2026-06-12 14:26:57,256.256 INFO    ] 2026-06-12 14:26:57
[2026-06-12 14:26:57,285.285 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 14:26:57,468.468 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 14:26:57,477.477 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 14:26:57,606.606 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 14:26:57,672.672 INFO    ] time= 12/06/2026 14:26:57
[2026-06-12 14:26:57,696.696 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 14:26:57,702.702 INFO    ] Checking for existing commands in stream...
[2026-06-12 14:26:57,768.768 INFO    ] No existing commands found in stream
[2026-06-12 14:27:02,781.781 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 14:27:02,783.783 INFO    ] Waiting 0.55 seconds before fallback handling...
[2026-06-12 14:27:03,693.693 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 14:27:03,694.694 INFO    ] Checking for system updates...
[2026-06-12 14:27:03,715.715 INFO    ] 200
[2026-06-12 14:27:03,716.716 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:27:03,748.748 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 14:27:03,749.749 INFO    ] No update needed
[2026-06-12 14:27:03,751.751 INFO    ] Checking for camera pi updates...
[2026-06-12 14:27:03,771.771 INFO    ] 200
[2026-06-12 14:27:03,772.772 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:27:03,796.796 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 14:27:03,845.845 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 14:27:03,846.846 INFO    ] No camera update needed
[2026-06-12 14:27:03,847.847 INFO    ] Script finished. Safe exiting...
[2026-06-12 14:27:03,848.848 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 14:27:03,852.852 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 14:27:03,854.854 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 14:27:05,893.893 INFO    ] ================================================
[2026-06-12 14:27:05,908.908 INFO    ] Launching Daemon at Fri Jun 12 14:27:05 IST 2026
[2026-06-12 14:27:05,920.920 INFO    ] ================================================
[2026-06-12 14:27:06,288.288 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 14:27:06
[2026-06-12 14:27:06,623.623 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 14:27:06,773.773 INFO    ] Initializing speech engine...
[2026-06-12 14:27:06,778.778 INFO    ] 2026-06-12 14:27:06
[2026-06-12 14:27:06,990.990 INFO    ] 2026-06-12 14:27:06
[2026-06-12 14:27:07,019.019 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 14:27:07,146.146 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 14:27:07,210.210 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 14:27:07,350.350 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 14:27:07,418.418 INFO    ] time= 12/06/2026 14:27:07
[2026-06-12 14:27:07,442.442 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 14:27:07,449.449 INFO    ] Checking for existing commands in stream...
[2026-06-12 14:27:07,520.520 INFO    ] No existing commands found in stream
[2026-06-12 14:27:12,529.529 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 14:27:12,533.533 INFO    ] Waiting 3.04 seconds before fallback handling...
[2026-06-12 14:27:15,960.960 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 14:27:15,962.962 INFO    ] Checking for system updates...
[2026-06-12 14:27:15,983.983 INFO    ] 200
[2026-06-12 14:27:15,984.984 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:27:16,014.014 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 14:27:16,015.015 INFO    ] No update needed
[2026-06-12 14:27:16,017.017 INFO    ] Checking for camera pi updates...
[2026-06-12 14:27:16,036.036 INFO    ] 200
[2026-06-12 14:27:16,037.037 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:27:16,061.061 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 14:27:16,113.113 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 14:27:16,114.114 INFO    ] No camera update needed
[2026-06-12 14:27:16,115.115 INFO    ] Script finished. Safe exiting...
[2026-06-12 14:27:16,116.116 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 14:27:16,120.120 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 14:27:16,122.122 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 14:27:18,161.161 INFO    ] ================================================
[2026-06-12 14:27:18,176.176 INFO    ] Launching Daemon at Fri Jun 12 14:27:18 IST 2026
[2026-06-12 14:27:18,187.187 INFO    ] ================================================
[2026-06-12 14:27:18,515.515 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 14:27:18
[2026-06-12 14:27:18,827.827 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 14:27:18,957.957 INFO    ] Initializing speech engine...
[2026-06-12 14:27:18,962.962 INFO    ] 2026-06-12 14:27:18
[2026-06-12 14:27:19,180.180 INFO    ] 2026-06-12 14:27:19
[2026-06-12 14:27:19,209.209 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 14:27:19,391.391 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 14:27:19,400.400 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 14:27:19,530.530 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 14:27:19,594.594 INFO    ] time= 12/06/2026 14:27:19
[2026-06-12 14:27:19,621.621 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 14:27:19,627.627 INFO    ] Checking for existing commands in stream...
[2026-06-12 14:27:19,716.716 INFO    ] No existing commands found in stream
[2026-06-12 14:27:24,730.730 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 14:27:24,733.733 INFO    ] Waiting 1.52 seconds before fallback handling...
[2026-06-12 14:27:26,621.621 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 14:27:26,622.622 INFO    ] Checking for system updates...
[2026-06-12 14:27:26,643.643 INFO    ] 200
[2026-06-12 14:27:26,644.644 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:27:26,674.674 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 14:27:26,675.675 INFO    ] No update needed
[2026-06-12 14:27:26,677.677 INFO    ] Checking for camera pi updates...
[2026-06-12 14:27:26,696.696 INFO    ] 200
[2026-06-12 14:27:26,697.697 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:27:26,720.720 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 14:27:26,856.856 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 14:27:26,858.858 INFO    ] No camera update needed
[2026-06-12 14:27:26,859.859 INFO    ] Script finished. Safe exiting...
[2026-06-12 14:27:26,860.860 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 14:27:26,863.863 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 14:27:26,866.866 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 14:27:28,905.905 INFO    ] ================================================
[2026-06-12 14:27:28,921.921 INFO    ] Launching Daemon at Fri Jun 12 14:27:28 IST 2026
[2026-06-12 14:27:28,933.933 INFO    ] ================================================
[2026-06-12 14:27:29,279.279 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 14:27:29
[2026-06-12 14:27:29,621.621 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 14:27:29,775.775 INFO    ] Initializing speech engine...
[2026-06-12 14:27:29,779.779 INFO    ] 2026-06-12 14:27:29
[2026-06-12 14:27:29,986.986 INFO    ] 2026-06-12 14:27:29
[2026-06-12 14:27:30,016.016 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 14:27:30,211.211 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 14:27:30,225.225 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 14:27:30,344.344 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 14:27:30,407.407 INFO    ] time= 12/06/2026 14:27:30
[2026-06-12 14:27:30,431.431 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 14:27:30,437.437 INFO    ] Checking for existing commands in stream...
[2026-06-12 14:27:30,505.505 INFO    ] No existing commands found in stream
[2026-06-12 14:27:35,520.520 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 14:27:35,523.523 INFO    ] Waiting 0.23 seconds before fallback handling...
[2026-06-12 14:27:36,122.122 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 14:27:36,123.123 INFO    ] Checking for system updates...
[2026-06-12 14:27:36,144.144 INFO    ] 200
[2026-06-12 14:27:36,146.146 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:27:36,176.176 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 14:27:36,177.177 INFO    ] No update needed
[2026-06-12 14:27:36,179.179 INFO    ] Checking for camera pi updates...
[2026-06-12 14:27:36,200.200 INFO    ] 200
[2026-06-12 14:27:36,201.201 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:27:36,227.227 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 14:27:36,266.266 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 14:27:36,267.267 INFO    ] No camera update needed
[2026-06-12 14:27:36,269.269 INFO    ] Script finished. Safe exiting...
[2026-06-12 14:27:36,270.270 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 14:27:36,273.273 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 14:27:36,277.277 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 14:27:38,316.316 INFO    ] ================================================
[2026-06-12 14:27:38,332.332 INFO    ] Launching Daemon at Fri Jun 12 14:27:38 IST 2026
[2026-06-12 14:27:38,342.342 INFO    ] ================================================
[2026-06-12 14:27:38,715.715 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 14:27:38
[2026-06-12 14:27:39,036.036 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 14:27:39,195.195 INFO    ] Initializing speech engine...
[2026-06-12 14:27:39,199.199 INFO    ] 2026-06-12 14:27:39
[2026-06-12 14:27:39,415.415 INFO    ] 2026-06-12 14:27:39
[2026-06-12 14:27:39,446.446 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 14:27:39,581.581 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 14:27:39,650.650 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 14:27:39,794.794 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 14:27:39,841.841 INFO    ] time= 12/06/2026 14:27:39
[2026-06-12 14:27:39,881.881 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 14:27:39,905.905 INFO    ] Checking for existing commands in stream...
[2026-06-12 14:27:39,981.981 INFO    ] No existing commands found in stream
[2026-06-12 14:27:44,992.992 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 14:27:44,995.995 INFO    ] Waiting 2.55 seconds before fallback handling...
[2026-06-12 14:27:47,932.932 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 14:27:47,933.933 INFO    ] Checking for system updates...
[2026-06-12 14:27:47,954.954 INFO    ] 200
[2026-06-12 14:27:47,956.956 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:27:47,988.988 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 14:27:47,990.990 INFO    ] No update needed
[2026-06-12 14:27:47,991.991 INFO    ] Checking for camera pi updates...
[2026-06-12 14:27:48,014.014 INFO    ] 200
[2026-06-12 14:27:48,015.015 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:27:48,038.038 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 14:27:48,084.084 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 14:27:48,085.085 INFO    ] No camera update needed
[2026-06-12 14:27:48,087.087 INFO    ] Script finished. Safe exiting...
[2026-06-12 14:27:48,088.088 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 14:27:48,091.091 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 14:27:48,094.094 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 14:27:50,132.132 INFO    ] ================================================
[2026-06-12 14:27:50,148.148 INFO    ] Launching Daemon at Fri Jun 12 14:27:50 IST 2026
[2026-06-12 14:27:50,160.160 INFO    ] ================================================
[2026-06-12 14:27:50,525.525 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 14:27:50
[2026-06-12 14:27:50,872.872 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 14:27:51,026.026 INFO    ] Initializing speech engine...
[2026-06-12 14:27:51,032.032 INFO    ] 2026-06-12 14:27:51
[2026-06-12 14:27:51,238.238 INFO    ] 2026-06-12 14:27:51
[2026-06-12 14:27:51,267.267 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 14:27:51,452.452 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 14:27:51,464.464 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 14:27:51,617.617 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 14:27:51,671.671 INFO    ] time= 12/06/2026 14:27:51
[2026-06-12 14:27:51,686.686 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 14:27:51,688.688 INFO    ] Checking for existing commands in stream...
[2026-06-12 14:27:51,756.756 INFO    ] No existing commands found in stream
[2026-06-12 14:27:56,770.770 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 14:27:56,774.774 INFO    ] Waiting 0.65 seconds before fallback handling...
[2026-06-12 14:27:57,818.818 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 14:27:57,819.819 INFO    ] Checking for system updates...
[2026-06-12 14:27:57,840.840 INFO    ] 200
[2026-06-12 14:27:57,842.842 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:27:57,873.873 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 14:27:57,874.874 INFO    ] No update needed
[2026-06-12 14:27:57,876.876 INFO    ] Checking for camera pi updates...
[2026-06-12 14:27:57,896.896 INFO    ] 200
[2026-06-12 14:27:57,898.898 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:27:57,921.921 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 14:27:57,957.957 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 14:27:57,958.958 INFO    ] No camera update needed
[2026-06-12 14:27:57,960.960 INFO    ] Script finished. Safe exiting...
[2026-06-12 14:27:57,961.961 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 14:27:57,965.965 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 14:27:57,968.968 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 14:28:00,006.006 INFO    ] ================================================
[2026-06-12 14:28:00,021.021 INFO    ] Launching Daemon at Fri Jun 12 14:28:00 IST 2026
[2026-06-12 14:28:00,033.033 INFO    ] ================================================
[2026-06-12 14:28:00,388.388 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 14:28:00
[2026-06-12 14:28:00,701.701 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 14:28:00,832.832 INFO    ] Initializing speech engine...
[2026-06-12 14:28:00,836.836 INFO    ] 2026-06-12 14:28:00
[2026-06-12 14:28:01,029.029 INFO    ] 2026-06-12 14:28:01
[2026-06-12 14:28:01,075.075 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 14:28:01,238.238 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 14:28:01,255.255 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 14:28:01,406.406 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 14:28:01,444.444 INFO    ] time= 12/06/2026 14:28:01
[2026-06-12 14:28:01,513.513 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 14:28:01,537.537 INFO    ] Checking for existing commands in stream...
[2026-06-12 14:28:01,633.633 INFO    ] No existing commands found in stream
[2026-06-12 14:28:06,642.642 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 14:28:06,645.645 INFO    ] Waiting 2.81 seconds before fallback handling...
[2026-06-12 14:28:09,831.831 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 14:28:09,833.833 INFO    ] Checking for system updates...
[2026-06-12 14:28:09,853.853 INFO    ] 200
[2026-06-12 14:28:09,854.854 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:28:09,884.884 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 14:28:09,885.885 INFO    ] No update needed
[2026-06-12 14:28:09,887.887 INFO    ] Checking for camera pi updates...
[2026-06-12 14:28:09,907.907 INFO    ] 200
[2026-06-12 14:28:09,909.909 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:28:09,933.933 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 14:28:09,973.973 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 14:28:09,974.974 INFO    ] No camera update needed
[2026-06-12 14:28:09,975.975 INFO    ] Script finished. Safe exiting...
[2026-06-12 14:28:09,976.976 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 14:28:09,979.979 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 14:28:09,982.982 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 14:28:12,020.020 INFO    ] ================================================
[2026-06-12 14:28:12,036.036 INFO    ] Launching Daemon at Fri Jun 12 14:28:12 IST 2026
[2026-06-12 14:28:12,048.048 INFO    ] ================================================
[2026-06-12 14:28:12,393.393 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 14:28:12
[2026-06-12 14:28:12,711.711 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 14:28:12,855.855 INFO    ] Initializing speech engine...
[2026-06-12 14:28:12,860.860 INFO    ] 2026-06-12 14:28:12
[2026-06-12 14:28:13,065.065 INFO    ] 2026-06-12 14:28:13
[2026-06-12 14:28:13,093.093 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 14:28:13,278.278 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 14:28:13,287.287 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 14:28:13,414.414 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 14:28:13,470.470 INFO    ] time= 12/06/2026 14:28:13
[2026-06-12 14:28:13,499.499 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 14:28:13,509.509 INFO    ] Checking for existing commands in stream...
[2026-06-12 14:28:13,581.581 INFO    ] No existing commands found in stream
[2026-06-12 14:28:18,605.605 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 14:28:18,608.608 INFO    ] Waiting 0.95 seconds before fallback handling...
[2026-06-12 14:28:19,911.911 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 14:28:19,913.913 INFO    ] Checking for system updates...
[2026-06-12 14:28:19,934.934 INFO    ] 200
[2026-06-12 14:28:19,936.936 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:28:19,965.965 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 14:28:19,967.967 INFO    ] No update needed
[2026-06-12 14:28:19,968.968 INFO    ] Checking for camera pi updates...
[2026-06-12 14:28:19,987.987 INFO    ] 200
[2026-06-12 14:28:19,988.988 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:28:20,015.015 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 14:28:20,057.057 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 14:28:20,059.059 INFO    ] No camera update needed
[2026-06-12 14:28:20,060.060 INFO    ] Script finished. Safe exiting...
[2026-06-12 14:28:20,061.061 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 14:28:20,064.064 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 14:28:20,067.067 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 14:28:22,107.107 INFO    ] ================================================
[2026-06-12 14:28:22,123.123 INFO    ] Launching Daemon at Fri Jun 12 14:28:22 IST 2026
[2026-06-12 14:28:22,135.135 INFO    ] ================================================
[2026-06-12 14:28:22,465.465 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 14:28:22
[2026-06-12 14:28:22,783.783 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 14:28:22,916.916 INFO    ] Initializing speech engine...
[2026-06-12 14:28:22,929.929 INFO    ] 2026-06-12 14:28:22
[2026-06-12 14:28:23,137.137 INFO    ] 2026-06-12 14:28:23
[2026-06-12 14:28:23,166.166 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 14:28:23,350.350 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 14:28:23,353.353 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 14:28:23,488.488 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 14:28:23,552.552 INFO    ] time= 12/06/2026 14:28:23
[2026-06-12 14:28:23,580.580 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 14:28:23,587.587 INFO    ] Checking for existing commands in stream...
[2026-06-12 14:28:23,653.653 INFO    ] No existing commands found in stream
[2026-06-12 14:28:28,686.686 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 14:28:28,699.699 INFO    ] Waiting 0.24 seconds before fallback handling...
[2026-06-12 14:28:29,337.337 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 14:28:29,339.339 INFO    ] Checking for system updates...
[2026-06-12 14:28:29,361.361 INFO    ] 200
[2026-06-12 14:28:29,363.363 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:28:29,393.393 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 14:28:29,395.395 INFO    ] No update needed
[2026-06-12 14:28:29,396.396 INFO    ] Checking for camera pi updates...
[2026-06-12 14:28:29,416.416 INFO    ] 200
[2026-06-12 14:28:29,417.417 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:28:29,441.441 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 14:28:29,479.479 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 14:28:29,481.481 INFO    ] No camera update needed
[2026-06-12 14:28:29,482.482 INFO    ] Script finished. Safe exiting...
[2026-06-12 14:28:29,483.483 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 14:28:29,487.487 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 14:28:29,490.490 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 14:28:31,528.528 INFO    ] ================================================
[2026-06-12 14:28:31,545.545 INFO    ] Launching Daemon at Fri Jun 12 14:28:31 IST 2026
[2026-06-12 14:28:31,556.556 INFO    ] ================================================
[2026-06-12 14:28:31,904.904 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 14:28:31
[2026-06-12 14:28:32,252.252 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 14:28:32,405.405 INFO    ] Initializing speech engine...
[2026-06-12 14:28:32,413.413 INFO    ] 2026-06-12 14:28:32
[2026-06-12 14:28:32,620.620 INFO    ] 2026-06-12 14:28:32
[2026-06-12 14:28:32,667.667 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 14:28:32,830.830 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 14:28:32,888.888 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 14:28:33,001.001 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 14:28:33,003.003 INFO    ] time= 12/06/2026 14:28:33
[2026-06-12 14:28:33,004.004 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 14:28:33,006.006 INFO    ] Checking for existing commands in stream...
[2026-06-12 14:28:33,070.070 INFO    ] No existing commands found in stream
[2026-06-12 14:28:38,079.079 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 14:28:38,082.082 INFO    ] Waiting 3.01 seconds before fallback handling...
[2026-06-12 14:28:41,453.453 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 14:28:41,455.455 INFO    ] Checking for system updates...
[2026-06-12 14:28:41,476.476 INFO    ] 200
[2026-06-12 14:28:41,477.477 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:28:41,510.510 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 14:28:41,512.512 INFO    ] No update needed
[2026-06-12 14:28:41,513.513 INFO    ] Checking for camera pi updates...
[2026-06-12 14:28:41,537.537 INFO    ] 200
[2026-06-12 14:28:41,538.538 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:28:41,564.564 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 14:28:41,604.604 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 14:28:41,605.605 INFO    ] No camera update needed
[2026-06-12 14:28:41,607.607 INFO    ] Script finished. Safe exiting...
[2026-06-12 14:28:41,608.608 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 14:28:41,612.612 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 14:28:41,615.615 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 14:28:43,653.653 INFO    ] ================================================
[2026-06-12 14:28:43,669.669 INFO    ] Launching Daemon at Fri Jun 12 14:28:43 IST 2026
[2026-06-12 14:28:43,680.680 INFO    ] ================================================
[2026-06-12 14:28:44,012.012 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 14:28:44
[2026-06-12 14:28:44,329.329 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 14:28:44,486.486 INFO    ] Initializing speech engine...
[2026-06-12 14:28:44,491.491 INFO    ] 2026-06-12 14:28:44
[2026-06-12 14:28:44,702.702 INFO    ] 2026-06-12 14:28:44
[2026-06-12 14:28:44,731.731 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 14:28:44,916.916 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 14:28:44,925.925 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 14:28:45,057.057 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 14:28:45,121.121 INFO    ] time= 12/06/2026 14:28:45
[2026-06-12 14:28:45,148.148 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 14:28:45,154.154 INFO    ] Checking for existing commands in stream...
[2026-06-12 14:28:45,245.245 INFO    ] No existing commands found in stream
[2026-06-12 14:28:50,260.260 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 14:28:50,263.263 INFO    ] Waiting 1.63 seconds before fallback handling...
[2026-06-12 14:28:52,259.259 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 14:28:52,261.261 INFO    ] Checking for system updates...
[2026-06-12 14:28:52,282.282 INFO    ] 200
[2026-06-12 14:28:52,283.283 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:28:52,313.313 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 14:28:52,315.315 INFO    ] No update needed
[2026-06-12 14:28:52,316.316 INFO    ] Checking for camera pi updates...
[2026-06-12 14:28:52,337.337 INFO    ] 200
[2026-06-12 14:28:52,339.339 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:28:52,363.363 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 14:28:52,411.411 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 14:28:52,412.412 INFO    ] No camera update needed
[2026-06-12 14:28:52,414.414 INFO    ] Script finished. Safe exiting...
[2026-06-12 14:28:52,415.415 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 14:28:52,418.418 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 14:28:52,421.421 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 14:28:54,462.462 INFO    ] ================================================
[2026-06-12 14:28:54,478.478 INFO    ] Launching Daemon at Fri Jun 12 14:28:54 IST 2026
[2026-06-12 14:28:54,489.489 INFO    ] ================================================
[2026-06-12 14:28:54,888.888 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 14:28:54
[2026-06-12 14:28:55,232.232 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 14:28:55,386.386 INFO    ] Initializing speech engine...
[2026-06-12 14:28:55,392.392 INFO    ] 2026-06-12 14:28:55
[2026-06-12 14:28:55,602.602 INFO    ] 2026-06-12 14:28:55
[2026-06-12 14:28:55,632.632 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 14:28:55,821.821 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 14:28:55,832.832 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 14:28:55,961.961 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 14:28:56,030.030 INFO    ] time= 12/06/2026 14:28:55
[2026-06-12 14:28:56,055.055 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 14:28:56,061.061 INFO    ] Checking for existing commands in stream...
[2026-06-12 14:28:56,130.130 INFO    ] No existing commands found in stream
[2026-06-12 14:29:01,140.140 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 14:29:01,143.143 INFO    ] Waiting 0.35 seconds before fallback handling...
[2026-06-12 14:29:01,837.837 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 14:29:01,839.839 INFO    ] Checking for system updates...
[2026-06-12 14:29:01,871.871 INFO    ] 200
[2026-06-12 14:29:01,873.873 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:29:01,913.913 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 14:29:01,914.914 INFO    ] No update needed
[2026-06-12 14:29:01,915.915 INFO    ] Checking for camera pi updates...
[2026-06-12 14:29:01,942.942 INFO    ] 200
[2026-06-12 14:29:01,944.944 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:29:01,968.968 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 14:29:02,044.044 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 14:29:02,046.046 INFO    ] No camera update needed
[2026-06-12 14:29:02,047.047 INFO    ] Script finished. Safe exiting...
[2026-06-12 14:29:02,049.049 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 14:29:02,054.054 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 14:29:02,059.059 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 14:29:04,098.098 INFO    ] ================================================
[2026-06-12 14:29:04,115.115 INFO    ] Launching Daemon at Fri Jun 12 14:29:04 IST 2026
[2026-06-12 14:29:04,126.126 INFO    ] ================================================
[2026-06-12 14:29:04,491.491 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 14:29:04
[2026-06-12 14:29:04,807.807 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 14:29:04,937.937 INFO    ] Initializing speech engine...
[2026-06-12 14:29:04,942.942 INFO    ] 2026-06-12 14:29:04
[2026-06-12 14:29:05,164.164 INFO    ] 2026-06-12 14:29:05
[2026-06-12 14:29:05,180.180 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 14:29:05,389.389 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 14:29:05,392.392 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 14:29:05,527.527 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 14:29:05,594.594 INFO    ] time= 12/06/2026 14:29:05
[2026-06-12 14:29:05,618.618 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 14:29:05,625.625 INFO    ] Checking for existing commands in stream...
[2026-06-12 14:29:05,692.692 INFO    ] No existing commands found in stream
[2026-06-12 14:29:10,702.702 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 14:29:10,705.705 INFO    ] Waiting 1.97 seconds before fallback handling...
[2026-06-12 14:29:13,157.157 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 14:29:13,158.158 INFO    ] Checking for system updates...
[2026-06-12 14:29:13,180.180 INFO    ] 200
[2026-06-12 14:29:13,181.181 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:29:13,214.214 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 14:29:13,215.215 INFO    ] No update needed
[2026-06-12 14:29:13,217.217 INFO    ] Checking for camera pi updates...
[2026-06-12 14:29:13,235.235 INFO    ] 200
[2026-06-12 14:29:13,237.237 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:29:13,262.262 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 14:29:13,308.308 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 14:29:13,309.309 INFO    ] No camera update needed
[2026-06-12 14:29:13,310.310 INFO    ] Script finished. Safe exiting...
[2026-06-12 14:29:13,312.312 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 14:29:13,315.315 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 14:29:13,317.317 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 14:29:15,358.358 INFO    ] ================================================
[2026-06-12 14:29:15,374.374 INFO    ] Launching Daemon at Fri Jun 12 14:29:15 IST 2026
[2026-06-12 14:29:15,386.386 INFO    ] ================================================
[2026-06-12 14:29:15,736.736 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 14:29:15
[2026-06-12 14:29:16,047.047 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 14:29:16,190.190 INFO    ] Initializing speech engine...
[2026-06-12 14:29:16,195.195 INFO    ] 2026-06-12 14:29:16
[2026-06-12 14:29:16,401.401 INFO    ] 2026-06-12 14:29:16
[2026-06-12 14:29:16,429.429 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 14:29:16,613.613 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 14:29:16,617.617 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 14:29:16,746.746 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 14:29:16,792.792 INFO    ] time= 12/06/2026 14:29:16
[2026-06-12 14:29:16,825.825 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 14:29:16,846.846 INFO    ] Checking for existing commands in stream...
[2026-06-12 14:29:16,917.917 INFO    ] No existing commands found in stream
[2026-06-12 14:29:21,927.927 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 14:29:21,930.930 INFO    ] Waiting 2.96 seconds before fallback handling...
[2026-06-12 14:29:25,255.255 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 14:29:25,256.256 INFO    ] Checking for system updates...
[2026-06-12 14:29:25,276.276 INFO    ] 200
[2026-06-12 14:29:25,278.278 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:29:25,310.310 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 14:29:25,311.311 INFO    ] No update needed
[2026-06-12 14:29:25,312.312 INFO    ] Checking for camera pi updates...
[2026-06-12 14:29:25,334.334 INFO    ] 200
[2026-06-12 14:29:25,335.335 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:29:25,358.358 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 14:29:25,401.401 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 14:29:25,402.402 INFO    ] No camera update needed
[2026-06-12 14:29:25,404.404 INFO    ] Script finished. Safe exiting...
[2026-06-12 14:29:25,405.405 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 14:29:25,408.408 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 14:29:25,411.411 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 14:29:27,450.450 INFO    ] ================================================
[2026-06-12 14:29:27,466.466 INFO    ] Launching Daemon at Fri Jun 12 14:29:27 IST 2026
[2026-06-12 14:29:27,477.477 INFO    ] ================================================
[2026-06-12 14:29:27,812.812 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 14:29:27
[2026-06-12 14:29:28,125.125 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 14:29:28,257.257 INFO    ] Initializing speech engine...
[2026-06-12 14:29:28,262.262 INFO    ] 2026-06-12 14:29:28
[2026-06-12 14:29:28,453.453 INFO    ] 2026-06-12 14:29:28
[2026-06-12 14:29:28,499.499 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 14:29:28,660.660 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 14:29:28,698.698 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 14:29:28,851.851 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 14:29:28,876.876 INFO    ] time= 12/06/2026 14:29:28
[2026-06-12 14:29:28,927.927 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 14:29:28,983.983 INFO    ] Checking for existing commands in stream...
[2026-06-12 14:29:29,060.060 INFO    ] No existing commands found in stream
[2026-06-12 14:29:34,071.071 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 14:29:34,074.074 INFO    ] Waiting 1.75 seconds before fallback handling...
[2026-06-12 14:29:36,164.164 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 14:29:36,165.165 INFO    ] Checking for system updates...
[2026-06-12 14:29:36,185.185 INFO    ] 200
[2026-06-12 14:29:36,187.187 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:29:36,221.221 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 14:29:36,223.223 INFO    ] No update needed
[2026-06-12 14:29:36,224.224 INFO    ] Checking for camera pi updates...
[2026-06-12 14:29:36,244.244 INFO    ] 200
[2026-06-12 14:29:36,246.246 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:29:36,268.268 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 14:29:36,313.313 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 14:29:36,315.315 INFO    ] No camera update needed
[2026-06-12 14:29:36,316.316 INFO    ] Script finished. Safe exiting...
[2026-06-12 14:29:36,317.317 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 14:29:36,320.320 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 14:29:36,323.323 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 14:29:38,362.362 INFO    ] ================================================
[2026-06-12 14:29:38,378.378 INFO    ] Launching Daemon at Fri Jun 12 14:29:38 IST 2026
[2026-06-12 14:29:38,388.388 INFO    ] ================================================
[2026-06-12 14:29:38,734.734 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 14:29:38
[2026-06-12 14:29:39,048.048 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 14:29:39,187.187 INFO    ] Initializing speech engine...
[2026-06-12 14:29:39,198.198 INFO    ] 2026-06-12 14:29:39
[2026-06-12 14:29:39,403.403 INFO    ] 2026-06-12 14:29:39
[2026-06-12 14:29:39,432.432 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 14:29:39,616.616 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 14:29:39,627.627 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 14:29:39,756.756 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 14:29:39,822.822 INFO    ] time= 12/06/2026 14:29:39
[2026-06-12 14:29:39,846.846 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 14:29:39,852.852 INFO    ] Checking for existing commands in stream...
[2026-06-12 14:29:39,917.917 INFO    ] No existing commands found in stream
[2026-06-12 14:29:44,926.926 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 14:29:44,929.929 INFO    ] Waiting 3.93 seconds before fallback handling...
[2026-06-12 14:29:49,227.227 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 14:29:49,229.229 INFO    ] Checking for system updates...
[2026-06-12 14:29:49,250.250 INFO    ] 200
[2026-06-12 14:29:49,251.251 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:29:49,284.284 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 14:29:49,285.285 INFO    ] No update needed
[2026-06-12 14:29:49,287.287 INFO    ] Checking for camera pi updates...
[2026-06-12 14:29:49,308.308 INFO    ] 200
[2026-06-12 14:29:49,309.309 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:29:49,336.336 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 14:29:49,378.378 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 14:29:49,379.379 INFO    ] No camera update needed
[2026-06-12 14:29:49,381.381 INFO    ] Script finished. Safe exiting...
[2026-06-12 14:29:49,382.382 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 14:29:49,385.385 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 14:29:49,388.388 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 14:29:51,428.428 INFO    ] ================================================
[2026-06-12 14:29:51,444.444 INFO    ] Launching Daemon at Fri Jun 12 14:29:51 IST 2026
[2026-06-12 14:29:51,455.455 INFO    ] ================================================
[2026-06-12 14:29:51,827.827 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 14:29:51
[2026-06-12 14:29:52,173.173 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 14:29:52,327.327 INFO    ] Initializing speech engine...
[2026-06-12 14:29:52,332.332 INFO    ] 2026-06-12 14:29:52
[2026-06-12 14:29:52,537.537 INFO    ] 2026-06-12 14:29:52
[2026-06-12 14:29:52,564.564 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 14:29:52,748.748 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 14:29:52,756.756 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 14:29:52,895.895 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 14:29:52,953.953 INFO    ] time= 12/06/2026 14:29:52
[2026-06-12 14:29:52,975.975 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 14:29:52,981.981 INFO    ] Checking for existing commands in stream...
[2026-06-12 14:29:53,048.048 INFO    ] No existing commands found in stream
[2026-06-12 14:29:58,062.062 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 14:29:58,064.064 INFO    ] Waiting 1.82 seconds before fallback handling...
[2026-06-12 14:30:00,237.237 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 14:30:00,239.239 INFO    ] Checking for system updates...
[2026-06-12 14:30:00,259.259 INFO    ] 200
[2026-06-12 14:30:00,261.261 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:30:00,290.290 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 14:30:00,291.291 INFO    ] No update needed
[2026-06-12 14:30:00,292.292 INFO    ] Checking for camera pi updates...
[2026-06-12 14:30:00,313.313 INFO    ] 200
[2026-06-12 14:30:00,314.314 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:30:00,338.338 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 14:30:00,385.385 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 14:30:00,386.386 INFO    ] No camera update needed
[2026-06-12 14:30:00,387.387 INFO    ] Script finished. Safe exiting...
[2026-06-12 14:30:00,389.389 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 14:30:00,392.392 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 14:30:00,394.394 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 14:30:02,440.440 INFO    ] ================================================
[2026-06-12 14:30:02,466.466 INFO    ] Launching Daemon at Fri Jun 12 14:30:02 IST 2026
[2026-06-12 14:30:02,480.480 INFO    ] ================================================
[2026-06-12 14:30:02,822.822 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 14:30:02
[2026-06-12 14:30:03,138.138 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 14:30:03,282.282 INFO    ] Initializing speech engine...
[2026-06-12 14:30:03,286.286 INFO    ] 2026-06-12 14:30:03
[2026-06-12 14:30:03,489.489 INFO    ] 2026-06-12 14:30:03
[2026-06-12 14:30:03,518.518 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 14:30:03,657.657 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 14:30:03,705.705 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 14:30:03,844.844 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 14:30:03,913.913 INFO    ] time= 12/06/2026 14:30:03
[2026-06-12 14:30:03,937.937 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 14:30:03,944.944 INFO    ] Checking for existing commands in stream...
[2026-06-12 14:30:04,011.011 INFO    ] No existing commands found in stream
[2026-06-12 14:30:09,020.020 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 14:30:09,023.023 INFO    ] Waiting 1.01 seconds before fallback handling...
[2026-06-12 14:30:10,388.388 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 14:30:10,390.390 INFO    ] Checking for system updates...
[2026-06-12 14:30:10,411.411 INFO    ] 200
[2026-06-12 14:30:10,412.412 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:30:10,442.442 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 14:30:10,443.443 INFO    ] No update needed
[2026-06-12 14:30:10,444.444 INFO    ] Checking for camera pi updates...
[2026-06-12 14:30:10,464.464 INFO    ] 200
[2026-06-12 14:30:10,465.465 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:30:10,488.488 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 14:30:10,540.540 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 14:30:10,541.541 INFO    ] No camera update needed
[2026-06-12 14:30:10,543.543 INFO    ] Script finished. Safe exiting...
[2026-06-12 14:30:10,544.544 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 14:30:10,547.547 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 14:30:10,549.549 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 14:30:12,587.587 INFO    ] ================================================
[2026-06-12 14:30:12,603.603 INFO    ] Launching Daemon at Fri Jun 12 14:30:12 IST 2026
[2026-06-12 14:30:12,614.614 INFO    ] ================================================
[2026-06-12 14:30:12,951.951 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 14:30:12
[2026-06-12 14:30:13,265.265 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 14:30:13,399.399 INFO    ] Initializing speech engine...
[2026-06-12 14:30:13,402.402 INFO    ] 2026-06-12 14:30:13
[2026-06-12 14:30:13,632.632 INFO    ] 2026-06-12 14:30:13
[2026-06-12 14:30:13,663.663 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 14:30:13,796.796 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 14:30:13,863.863 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 14:30:14,004.004 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 14:30:14,052.052 INFO    ] time= 12/06/2026 14:30:14
[2026-06-12 14:30:14,088.088 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 14:30:14,113.113 INFO    ] Checking for existing commands in stream...
[2026-06-12 14:30:14,190.190 INFO    ] No existing commands found in stream
[2026-06-12 14:30:19,200.200 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 14:30:19,202.202 INFO    ] Waiting 0.62 seconds before fallback handling...
[2026-06-12 14:30:20,217.217 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 14:30:20,219.219 INFO    ] Checking for system updates...
[2026-06-12 14:30:20,241.241 INFO    ] 200
[2026-06-12 14:30:20,242.242 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:30:20,274.274 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 14:30:20,276.276 INFO    ] No update needed
[2026-06-12 14:30:20,277.277 INFO    ] Checking for camera pi updates...
[2026-06-12 14:30:20,297.297 INFO    ] 200
[2026-06-12 14:30:20,298.298 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:30:20,321.321 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 14:30:20,368.368 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 14:30:20,369.369 INFO    ] No camera update needed
[2026-06-12 14:30:20,371.371 INFO    ] Script finished. Safe exiting...
[2026-06-12 14:30:20,372.372 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 14:30:20,376.376 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 14:30:20,379.379 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 14:30:22,410.410 INFO    ] ================================================
[2026-06-12 14:30:22,425.425 INFO    ] Launching Daemon at Fri Jun 12 14:30:22 IST 2026
[2026-06-12 14:30:22,436.436 INFO    ] ================================================
[2026-06-12 14:30:22,809.809 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 14:30:22
[2026-06-12 14:30:23,122.122 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 14:30:23,254.254 INFO    ] Initializing speech engine...
[2026-06-12 14:30:23,258.258 INFO    ] 2026-06-12 14:30:23
[2026-06-12 14:30:23,460.460 INFO    ] 2026-06-12 14:30:23
[2026-06-12 14:30:23,494.494 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 14:30:23,648.648 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 14:30:23,655.655 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 14:30:23,811.811 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 14:30:23,865.865 INFO    ] time= 12/06/2026 14:30:23
[2026-06-12 14:30:23,896.896 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 14:30:23,947.947 INFO    ] Checking for existing commands in stream...
[2026-06-12 14:30:24,046.046 INFO    ] No existing commands found in stream
[2026-06-12 14:30:29,056.056 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 14:30:29,058.058 INFO    ] Waiting 1.97 seconds before fallback handling...
[2026-06-12 14:30:31,405.405 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 14:30:31,406.406 INFO    ] Checking for system updates...
[2026-06-12 14:30:31,428.428 INFO    ] 200
[2026-06-12 14:30:31,430.430 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:30:31,462.462 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 14:30:31,464.464 INFO    ] No update needed
[2026-06-12 14:30:31,465.465 INFO    ] Checking for camera pi updates...
[2026-06-12 14:30:31,486.486 INFO    ] 200
[2026-06-12 14:30:31,487.487 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:30:31,521.521 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 14:30:31,575.575 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 14:30:31,576.576 INFO    ] No camera update needed
[2026-06-12 14:30:31,578.578 INFO    ] Script finished. Safe exiting...
[2026-06-12 14:30:31,580.580 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 14:30:31,584.584 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 14:30:31,588.588 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 14:30:33,620.620 INFO    ] ================================================
[2026-06-12 14:30:33,635.635 INFO    ] Launching Daemon at Fri Jun 12 14:30:33 IST 2026
[2026-06-12 14:30:33,646.646 INFO    ] ================================================
[2026-06-12 14:30:34,014.014 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 14:30:34
[2026-06-12 14:30:34,353.353 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 14:30:34,504.504 INFO    ] Initializing speech engine...
[2026-06-12 14:30:34,511.511 INFO    ] 2026-06-12 14:30:34
[2026-06-12 14:30:34,718.718 INFO    ] 2026-06-12 14:30:34
[2026-06-12 14:30:34,747.747 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 14:30:34,875.875 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 14:30:34,928.928 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 14:30:35,076.076 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 14:30:35,135.135 INFO    ] time= 12/06/2026 14:30:35
[2026-06-12 14:30:35,166.166 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 14:30:35,196.196 INFO    ] Checking for existing commands in stream...
[2026-06-12 14:30:35,290.290 INFO    ] No existing commands found in stream
[2026-06-12 14:30:40,301.301 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 14:30:40,304.304 INFO    ] Waiting 0.11 seconds before fallback handling...
[2026-06-12 14:30:40,746.746 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 14:30:40,747.747 INFO    ] Checking for system updates...
[2026-06-12 14:30:40,768.768 INFO    ] 200
[2026-06-12 14:30:40,770.770 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:30:40,800.800 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 14:30:40,802.802 INFO    ] No update needed
[2026-06-12 14:30:40,803.803 INFO    ] Checking for camera pi updates...
[2026-06-12 14:30:40,822.822 INFO    ] 200
[2026-06-12 14:30:40,824.824 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:30:40,847.847 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 14:30:40,996.996 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 14:30:40,998.998 INFO    ] No camera update needed
[2026-06-12 14:30:40,999.999 INFO    ] Script finished. Safe exiting...
[2026-06-12 14:30:41,001.001 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 14:30:41,004.004 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 14:30:41,007.007 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 14:30:43,045.045 INFO    ] ================================================
[2026-06-12 14:30:43,060.060 INFO    ] Launching Daemon at Fri Jun 12 14:30:43 IST 2026
[2026-06-12 14:30:43,070.070 INFO    ] ================================================
[2026-06-12 14:30:43,415.415 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 14:30:43
[2026-06-12 14:30:43,738.738 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 14:30:43,874.874 INFO    ] Initializing speech engine...
[2026-06-12 14:30:43,888.888 INFO    ] 2026-06-12 14:30:43
[2026-06-12 14:30:44,110.110 INFO    ] 2026-06-12 14:30:44
[2026-06-12 14:30:44,141.141 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 14:30:44,339.339 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 14:30:44,343.343 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 14:30:44,488.488 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 14:30:44,540.540 INFO    ] time= 12/06/2026 14:30:44
[2026-06-12 14:30:44,574.574 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 14:30:44,592.592 INFO    ] Checking for existing commands in stream...
[2026-06-12 14:30:44,669.669 INFO    ] No existing commands found in stream
[2026-06-12 14:30:49,678.678 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 14:30:49,681.681 INFO    ] Waiting 0.86 seconds before fallback handling...
[2026-06-12 14:30:50,942.942 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 14:30:50,944.944 INFO    ] Checking for system updates...
[2026-06-12 14:30:50,965.965 INFO    ] 200
[2026-06-12 14:30:50,967.967 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:30:50,996.996 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 14:30:50,997.997 INFO    ] No update needed
[2026-06-12 14:30:50,999.999 INFO    ] Checking for camera pi updates...
[2026-06-12 14:30:51,018.018 INFO    ] 200
[2026-06-12 14:30:51,019.019 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:30:51,042.042 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 14:30:51,083.083 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 14:30:51,085.085 INFO    ] No camera update needed
[2026-06-12 14:30:51,086.086 INFO    ] Script finished. Safe exiting...
[2026-06-12 14:30:51,087.087 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 14:30:51,090.090 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 14:30:51,093.093 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 14:30:53,131.131 INFO    ] ================================================
[2026-06-12 14:30:53,147.147 INFO    ] Launching Daemon at Fri Jun 12 14:30:53 IST 2026
[2026-06-12 14:30:53,157.157 INFO    ] ================================================
[2026-06-12 14:30:53,496.496 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 14:30:53
[2026-06-12 14:30:53,809.809 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 14:30:53,952.952 INFO    ] Initializing speech engine...
[2026-06-12 14:30:53,957.957 INFO    ] 2026-06-12 14:30:53
[2026-06-12 14:30:54,161.161 INFO    ] 2026-06-12 14:30:54
[2026-06-12 14:30:54,190.190 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 14:30:54,375.375 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 14:30:54,383.383 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 14:30:54,506.506 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 14:30:54,567.567 INFO    ] time= 12/06/2026 14:30:54
[2026-06-12 14:30:54,601.601 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 14:30:54,607.607 INFO    ] Checking for existing commands in stream...
[2026-06-12 14:30:54,679.679 INFO    ] No existing commands found in stream
[2026-06-12 14:30:59,711.711 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 14:30:59,720.720 INFO    ] Waiting 2.38 seconds before fallback handling...
[2026-06-12 14:31:02,453.453 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 14:31:02,455.455 INFO    ] Checking for system updates...
[2026-06-12 14:31:02,483.483 INFO    ] 200
[2026-06-12 14:31:02,485.485 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:31:02,524.524 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 14:31:02,526.526 INFO    ] No update needed
[2026-06-12 14:31:02,529.529 INFO    ] Checking for camera pi updates...
[2026-06-12 14:31:02,553.553 INFO    ] 200
[2026-06-12 14:31:02,555.555 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:31:02,584.584 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 14:31:02,612.612 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 14:31:02,614.614 INFO    ] No camera update needed
[2026-06-12 14:31:02,616.616 INFO    ] Script finished. Safe exiting...
[2026-06-12 14:31:02,618.618 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 14:31:02,623.623 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 14:31:02,627.627 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 14:31:04,666.666 INFO    ] ================================================
[2026-06-12 14:31:04,681.681 INFO    ] Launching Daemon at Fri Jun 12 14:31:04 IST 2026
[2026-06-12 14:31:04,692.692 INFO    ] ================================================
[2026-06-12 14:31:05,024.024 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 14:31:05
[2026-06-12 14:31:05,346.346 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 14:31:05,544.544 INFO    ] Initializing speech engine...
[2026-06-12 14:31:05,552.552 INFO    ] 2026-06-12 14:31:05
[2026-06-12 14:31:05,760.760 INFO    ] 2026-06-12 14:31:05
[2026-06-12 14:31:05,790.790 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 14:31:05,973.973 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 14:31:05,983.983 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 14:31:06,129.129 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 14:31:06,185.185 INFO    ] time= 12/06/2026 14:31:06
[2026-06-12 14:31:06,228.228 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 14:31:06,235.235 INFO    ] Checking for existing commands in stream...
[2026-06-12 14:31:06,302.302 INFO    ] No existing commands found in stream
[2026-06-12 14:31:11,317.317 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 14:31:11,320.320 INFO    ] Waiting 0.77 seconds before fallback handling...
[2026-06-12 14:31:12,478.478 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 14:31:12,480.480 INFO    ] Checking for system updates...
[2026-06-12 14:31:12,501.501 INFO    ] 200
[2026-06-12 14:31:12,503.503 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:31:12,533.533 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 14:31:12,534.534 INFO    ] No update needed
[2026-06-12 14:31:12,536.536 INFO    ] Checking for camera pi updates...
[2026-06-12 14:31:12,556.556 INFO    ] 200
[2026-06-12 14:31:12,557.557 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:31:12,580.580 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 14:31:12,630.630 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 14:31:12,631.631 INFO    ] No camera update needed
[2026-06-12 14:31:12,632.632 INFO    ] Script finished. Safe exiting...
[2026-06-12 14:31:12,634.634 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 14:31:12,637.637 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 14:31:12,639.639 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 14:31:14,678.678 INFO    ] ================================================
[2026-06-12 14:31:14,693.693 INFO    ] Launching Daemon at Fri Jun 12 14:31:14 IST 2026
[2026-06-12 14:31:14,704.704 INFO    ] ================================================
[2026-06-12 14:31:15,050.050 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 14:31:15
[2026-06-12 14:31:15,370.370 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 14:31:15,514.514 INFO    ] Initializing speech engine...
[2026-06-12 14:31:15,519.519 INFO    ] 2026-06-12 14:31:15
[2026-06-12 14:31:15,723.723 INFO    ] 2026-06-12 14:31:15
[2026-06-12 14:31:15,751.751 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 14:31:15,879.879 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 14:31:15,937.937 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 14:31:16,070.070 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 14:31:16,135.135 INFO    ] time= 12/06/2026 14:31:16
[2026-06-12 14:31:16,164.164 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 14:31:16,166.166 INFO    ] Checking for existing commands in stream...
[2026-06-12 14:31:16,237.237 INFO    ] No existing commands found in stream
[2026-06-12 14:31:21,246.246 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 14:31:21,249.249 INFO    ] Waiting 1.04 seconds before fallback handling...
[2026-06-12 14:31:22,665.665 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 14:31:22,666.666 INFO    ] Checking for system updates...
[2026-06-12 14:31:22,687.687 INFO    ] 200
[2026-06-12 14:31:22,688.688 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:31:22,719.719 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 14:31:22,720.720 INFO    ] No update needed
[2026-06-12 14:31:22,722.722 INFO    ] Checking for camera pi updates...
[2026-06-12 14:31:22,741.741 INFO    ] 200
[2026-06-12 14:31:22,742.742 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:31:22,767.767 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 14:31:22,811.811 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 14:31:22,812.812 INFO    ] No camera update needed
[2026-06-12 14:31:22,813.813 INFO    ] Script finished. Safe exiting...
[2026-06-12 14:31:22,814.814 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 14:31:22,817.817 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 14:31:22,820.820 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 14:31:24,858.858 INFO    ] ================================================
[2026-06-12 14:31:24,874.874 INFO    ] Launching Daemon at Fri Jun 12 14:31:24 IST 2026
[2026-06-12 14:31:24,884.884 INFO    ] ================================================
[2026-06-12 14:31:25,213.213 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 14:31:25
[2026-06-12 14:31:25,526.526 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 14:31:25,664.664 INFO    ] Initializing speech engine...
[2026-06-12 14:31:25,674.674 INFO    ] 2026-06-12 14:31:25
[2026-06-12 14:31:25,882.882 INFO    ] 2026-06-12 14:31:25
[2026-06-12 14:31:25,910.910 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 14:31:26,040.040 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 14:31:26,098.098 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 14:31:26,240.240 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 14:31:26,292.292 INFO    ] time= 12/06/2026 14:31:26
[2026-06-12 14:31:26,326.326 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 14:31:26,348.348 INFO    ] Checking for existing commands in stream...
[2026-06-12 14:31:26,452.452 INFO    ] No existing commands found in stream
[2026-06-12 14:31:31,461.461 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 14:31:31,464.464 INFO    ] Waiting 2.85 seconds before fallback handling...
[2026-06-12 14:31:34,646.646 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 14:31:34,647.647 INFO    ] Checking for system updates...
[2026-06-12 14:31:34,668.668 INFO    ] 200
[2026-06-12 14:31:34,669.669 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:31:34,700.700 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 14:31:34,702.702 INFO    ] No update needed
[2026-06-12 14:31:34,703.703 INFO    ] Checking for camera pi updates...
[2026-06-12 14:31:34,722.722 INFO    ] 200
[2026-06-12 14:31:34,724.724 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:31:34,747.747 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 14:31:34,788.788 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 14:31:34,789.789 INFO    ] No camera update needed
[2026-06-12 14:31:34,791.791 INFO    ] Script finished. Safe exiting...
[2026-06-12 14:31:34,792.792 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 14:31:34,795.795 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 14:31:34,798.798 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 14:31:36,836.836 INFO    ] ================================================
[2026-06-12 14:31:36,851.851 INFO    ] Launching Daemon at Fri Jun 12 14:31:36 IST 2026
[2026-06-12 14:31:36,862.862 INFO    ] ================================================
[2026-06-12 14:31:37,190.190 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 14:31:37
[2026-06-12 14:31:37,502.502 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 14:31:37,633.633 INFO    ] Initializing speech engine...
[2026-06-12 14:31:37,639.639 INFO    ] 2026-06-12 14:31:37
[2026-06-12 14:31:37,863.863 INFO    ] 2026-06-12 14:31:37
[2026-06-12 14:31:37,892.892 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 14:31:38,077.077 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 14:31:38,081.081 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 14:31:38,216.216 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 14:31:38,283.283 INFO    ] time= 12/06/2026 14:31:38
[2026-06-12 14:31:38,311.311 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 14:31:38,313.313 INFO    ] Checking for existing commands in stream...
[2026-06-12 14:31:38,384.384 INFO    ] No existing commands found in stream
[2026-06-12 14:31:43,398.398 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 14:31:43,401.401 INFO    ] Waiting 3.01 seconds before fallback handling...
[2026-06-12 14:31:46,775.775 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 14:31:46,777.777 INFO    ] Checking for system updates...
[2026-06-12 14:31:46,797.797 INFO    ] 200
[2026-06-12 14:31:46,799.799 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:31:46,831.831 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 14:31:46,832.832 INFO    ] No update needed
[2026-06-12 14:31:46,834.834 INFO    ] Checking for camera pi updates...
[2026-06-12 14:31:46,853.853 INFO    ] 200
[2026-06-12 14:31:46,854.854 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:31:46,877.877 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 14:31:46,905.905 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 14:31:46,907.907 INFO    ] No camera update needed
[2026-06-12 14:31:46,908.908 INFO    ] Script finished. Safe exiting...
[2026-06-12 14:31:46,909.909 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 14:31:46,912.912 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 14:31:46,915.915 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 14:31:48,954.954 INFO    ] ================================================
[2026-06-12 14:31:48,969.969 INFO    ] Launching Daemon at Fri Jun 12 14:31:48 IST 2026
[2026-06-12 14:31:48,980.980 INFO    ] ================================================
[2026-06-12 14:31:49,337.337 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 14:31:49
[2026-06-12 14:31:49,649.649 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 14:31:49,778.778 INFO    ] Initializing speech engine...
[2026-06-12 14:31:49,784.784 INFO    ] 2026-06-12 14:31:49
[2026-06-12 14:31:49,999.999 INFO    ] 2026-06-12 14:31:49
[2026-06-12 14:31:50,028.028 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 14:31:50,212.212 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 14:31:50,221.221 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 14:31:50,350.350 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 14:31:50,414.414 INFO    ] time= 12/06/2026 14:31:50
[2026-06-12 14:31:50,440.440 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 14:31:50,446.446 INFO    ] Checking for existing commands in stream...
[2026-06-12 14:31:50,513.513 INFO    ] No existing commands found in stream
[2026-06-12 14:31:55,517.517 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 14:31:55,520.520 INFO    ] Waiting 0.46 seconds before fallback handling...
[2026-06-12 14:31:56,315.315 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 14:31:56,317.317 INFO    ] Checking for system updates...
[2026-06-12 14:31:56,338.338 INFO    ] 200
[2026-06-12 14:31:56,339.339 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:31:56,369.369 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 14:31:56,371.371 INFO    ] No update needed
[2026-06-12 14:31:56,372.372 INFO    ] Checking for camera pi updates...
[2026-06-12 14:31:56,392.392 INFO    ] 200
[2026-06-12 14:31:56,393.393 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:31:56,416.416 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 14:31:56,466.466 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 14:31:56,467.467 INFO    ] No camera update needed
[2026-06-12 14:31:56,469.469 INFO    ] Script finished. Safe exiting...
[2026-06-12 14:31:56,470.470 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 14:31:56,473.473 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 14:31:56,476.476 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 14:31:58,513.513 INFO    ] ================================================
[2026-06-12 14:31:58,528.528 INFO    ] Launching Daemon at Fri Jun 12 14:31:58 IST 2026
[2026-06-12 14:31:58,540.540 INFO    ] ================================================
[2026-06-12 14:31:58,872.872 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 14:31:58
[2026-06-12 14:31:59,184.184 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 14:31:59,312.312 INFO    ] Initializing speech engine...
[2026-06-12 14:31:59,317.317 INFO    ] 2026-06-12 14:31:59
[2026-06-12 14:31:59,534.534 INFO    ] 2026-06-12 14:31:59
[2026-06-12 14:31:59,561.561 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 14:31:59,744.744 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 14:31:59,753.753 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 14:31:59,879.879 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 14:31:59,945.945 INFO    ] time= 12/06/2026 14:31:59
[2026-06-12 14:31:59,972.972 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 14:31:59,978.978 INFO    ] Checking for existing commands in stream...
[2026-06-12 14:32:00,067.067 INFO    ] No existing commands found in stream
[2026-06-12 14:32:05,081.081 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 14:32:05,084.084 INFO    ] Waiting 3.37 seconds before fallback handling...
[2026-06-12 14:32:08,852.852 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 14:32:08,855.855 INFO    ] Checking for system updates...
[2026-06-12 14:32:08,890.890 INFO    ] 200
[2026-06-12 14:32:08,893.893 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:32:08,944.944 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 14:32:08,947.947 INFO    ] No update needed
[2026-06-12 14:32:08,950.950 INFO    ] Checking for camera pi updates...
[2026-06-12 14:32:08,982.982 INFO    ] 200
[2026-06-12 14:32:08,983.983 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:32:09,008.008 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 14:32:09,053.053 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 14:32:09,055.055 INFO    ] No camera update needed
[2026-06-12 14:32:09,056.056 INFO    ] Script finished. Safe exiting...
[2026-06-12 14:32:09,057.057 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 14:32:09,060.060 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 14:32:09,063.063 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 14:32:11,089.089 INFO    ] ================================================
[2026-06-12 14:32:11,098.098 INFO    ] Launching Daemon at Fri Jun 12 14:32:11 IST 2026
[2026-06-12 14:32:11,105.105 INFO    ] ================================================
[2026-06-12 14:32:11,451.451 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 14:32:11
[2026-06-12 14:32:11,815.815 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 14:32:11,983.983 INFO    ] Initializing speech engine...
[2026-06-12 14:32:11,989.989 INFO    ] 2026-06-12 14:32:11
[2026-06-12 14:32:12,207.207 INFO    ] 2026-06-12 14:32:12
[2026-06-12 14:32:12,237.237 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 14:32:12,428.428 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 14:32:12,432.432 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 14:32:12,627.627 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 14:32:12,668.668 INFO    ] time= 12/06/2026 14:32:12
[2026-06-12 14:32:12,675.675 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 14:32:12,677.677 INFO    ] Checking for existing commands in stream...
[2026-06-12 14:32:12,747.747 INFO    ] No existing commands found in stream
[2026-06-12 14:32:17,762.762 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 14:32:17,765.765 INFO    ] Waiting 1.76 seconds before fallback handling...
[2026-06-12 14:32:19,887.887 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 14:32:19,889.889 INFO    ] Checking for system updates...
[2026-06-12 14:32:19,909.909 INFO    ] 200
[2026-06-12 14:32:19,911.911 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:32:19,944.944 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 14:32:19,945.945 INFO    ] No update needed
[2026-06-12 14:32:19,946.946 INFO    ] Checking for camera pi updates...
[2026-06-12 14:32:19,970.970 INFO    ] 200
[2026-06-12 14:32:19,971.971 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:32:19,998.998 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 14:32:20,030.030 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 14:32:20,031.031 INFO    ] No camera update needed
[2026-06-12 14:32:20,033.033 INFO    ] Script finished. Safe exiting...
[2026-06-12 14:32:20,034.034 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 14:32:20,037.037 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 14:32:20,040.040 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 14:32:22,086.086 INFO    ] ================================================
[2026-06-12 14:32:22,101.101 INFO    ] Launching Daemon at Fri Jun 12 14:32:22 IST 2026
[2026-06-12 14:32:22,112.112 INFO    ] ================================================
[2026-06-12 14:32:22,503.503 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 14:32:22
[2026-06-12 14:32:22,844.844 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 14:32:22,997.997 INFO    ] Initializing speech engine...
[2026-06-12 14:32:23,004.004 INFO    ] 2026-06-12 14:32:23
[2026-06-12 14:32:23,213.213 INFO    ] 2026-06-12 14:32:23
[2026-06-12 14:32:23,242.242 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 14:32:23,381.381 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 14:32:23,429.429 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 14:32:23,569.569 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 14:32:23,637.637 INFO    ] time= 12/06/2026 14:32:23
[2026-06-12 14:32:23,662.662 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 14:32:23,669.669 INFO    ] Checking for existing commands in stream...
[2026-06-12 14:32:23,735.735 INFO    ] No existing commands found in stream
[2026-06-12 14:32:28,746.746 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 14:32:28,749.749 INFO    ] Waiting 0.86 seconds before fallback handling...
[2026-06-12 14:32:30,011.011 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 14:32:30,013.013 INFO    ] Checking for system updates...
[2026-06-12 14:32:30,033.033 INFO    ] 200
[2026-06-12 14:32:30,034.034 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:32:30,066.066 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 14:32:30,067.067 INFO    ] No update needed
[2026-06-12 14:32:30,068.068 INFO    ] Checking for camera pi updates...
[2026-06-12 14:32:30,089.089 INFO    ] 200
[2026-06-12 14:32:30,090.090 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:32:30,113.113 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 14:32:30,164.164 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 14:32:30,165.165 INFO    ] No camera update needed
[2026-06-12 14:32:30,166.166 INFO    ] Script finished. Safe exiting...
[2026-06-12 14:32:30,167.167 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 14:32:30,170.170 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 14:32:30,173.173 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 14:32:32,215.215 INFO    ] ================================================
[2026-06-12 14:32:32,230.230 INFO    ] Launching Daemon at Fri Jun 12 14:32:32 IST 2026
[2026-06-12 14:32:32,240.240 INFO    ] ================================================
[2026-06-12 14:32:32,564.564 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 14:32:32
[2026-06-12 14:32:32,875.875 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 14:32:33,007.007 INFO    ] Initializing speech engine...
[2026-06-12 14:32:33,019.019 INFO    ] 2026-06-12 14:32:33
[2026-06-12 14:32:33,225.225 INFO    ] 2026-06-12 14:32:33
[2026-06-12 14:32:33,254.254 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 14:32:33,375.375 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 14:32:33,438.438 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 14:32:33,575.575 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 14:32:33,640.640 INFO    ] time= 12/06/2026 14:32:33
[2026-06-12 14:32:33,667.667 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 14:32:33,673.673 INFO    ] Checking for existing commands in stream...
[2026-06-12 14:32:33,740.740 INFO    ] No existing commands found in stream
[2026-06-12 14:32:38,772.772 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 14:32:38,775.775 INFO    ] Waiting 3.90 seconds before fallback handling...
[2026-06-12 14:32:43,147.147 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 14:32:43,148.148 INFO    ] Checking for system updates...
[2026-06-12 14:32:43,170.170 INFO    ] 200
[2026-06-12 14:32:43,171.171 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:32:43,201.201 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 14:32:43,202.202 INFO    ] No update needed
[2026-06-12 14:32:43,203.203 INFO    ] Checking for camera pi updates...
[2026-06-12 14:32:43,223.223 INFO    ] 200
[2026-06-12 14:32:43,225.225 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:32:43,247.247 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 14:32:43,387.387 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 14:32:43,388.388 INFO    ] No camera update needed
[2026-06-12 14:32:43,389.389 INFO    ] Script finished. Safe exiting...
[2026-06-12 14:32:43,391.391 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 14:32:43,394.394 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 14:32:43,396.396 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 14:32:45,433.433 INFO    ] ================================================
[2026-06-12 14:32:45,448.448 INFO    ] Launching Daemon at Fri Jun 12 14:32:45 IST 2026
[2026-06-12 14:32:45,459.459 INFO    ] ================================================
[2026-06-12 14:32:45,797.797 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 14:32:45
[2026-06-12 14:32:46,106.106 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 14:32:46,238.238 INFO    ] Initializing speech engine...
[2026-06-12 14:32:46,242.242 INFO    ] 2026-06-12 14:32:46
[2026-06-12 14:32:46,475.475 INFO    ] 2026-06-12 14:32:46
[2026-06-12 14:32:46,506.506 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 14:32:46,703.703 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 14:32:46,707.707 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 14:32:46,917.917 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 14:32:46,950.950 INFO    ] time= 12/06/2026 14:32:46
[2026-06-12 14:32:46,952.952 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 14:32:46,959.959 INFO    ] Checking for existing commands in stream...
[2026-06-12 14:32:47,056.056 INFO    ] No existing commands found in stream
[2026-06-12 14:32:52,064.064 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 14:32:52,067.067 INFO    ] Waiting 0.61 seconds before fallback handling...
[2026-06-12 14:32:53,158.158 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 14:32:53,159.159 INFO    ] Checking for system updates...
[2026-06-12 14:32:53,182.182 INFO    ] 200
[2026-06-12 14:32:53,184.184 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:32:53,216.216 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 14:32:53,218.218 INFO    ] No update needed
[2026-06-12 14:32:53,219.219 INFO    ] Checking for camera pi updates...
[2026-06-12 14:32:53,240.240 INFO    ] 200
[2026-06-12 14:32:53,242.242 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:32:53,269.269 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 14:32:53,371.371 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 14:32:53,372.372 INFO    ] No camera update needed
[2026-06-12 14:32:53,374.374 INFO    ] Script finished. Safe exiting...
[2026-06-12 14:32:53,375.375 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 14:32:53,378.378 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 14:32:53,382.382 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 14:32:55,421.421 INFO    ] ================================================
[2026-06-12 14:32:55,436.436 INFO    ] Launching Daemon at Fri Jun 12 14:32:55 IST 2026
[2026-06-12 14:32:55,447.447 INFO    ] ================================================
[2026-06-12 14:32:55,788.788 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 14:32:55
[2026-06-12 14:32:56,101.101 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 14:32:56,242.242 INFO    ] Initializing speech engine...
[2026-06-12 14:32:56,247.247 INFO    ] 2026-06-12 14:32:56
[2026-06-12 14:32:56,450.450 INFO    ] 2026-06-12 14:32:56
[2026-06-12 14:32:56,479.479 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 14:32:56,673.673 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 14:32:56,688.688 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 14:32:56,877.877 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 14:32:56,888.888 INFO    ] time= 12/06/2026 14:32:56
[2026-06-12 14:32:56,894.894 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 14:32:56,895.895 INFO    ] Checking for existing commands in stream...
[2026-06-12 14:32:56,985.985 INFO    ] No existing commands found in stream
[2026-06-12 14:33:01,991.991 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 14:33:01,993.993 INFO    ] Waiting 0.67 seconds before fallback handling...
[2026-06-12 14:33:03,088.088 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 14:33:03,091.091 INFO    ] Checking for system updates...
[2026-06-12 14:33:03,126.126 INFO    ] 200
[2026-06-12 14:33:03,128.128 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:33:03,195.195 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 14:33:03,197.197 INFO    ] No update needed
[2026-06-12 14:33:03,200.200 INFO    ] Checking for camera pi updates...
[2026-06-12 14:33:03,233.233 INFO    ] 200
[2026-06-12 14:33:03,235.235 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:33:03,277.277 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 14:33:03,322.322 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 14:33:03,324.324 INFO    ] No camera update needed
[2026-06-12 14:33:03,325.325 INFO    ] Script finished. Safe exiting...
[2026-06-12 14:33:03,326.326 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 14:33:03,329.329 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 14:33:03,332.332 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 14:33:05,370.370 INFO    ] ================================================
[2026-06-12 14:33:05,387.387 INFO    ] Launching Daemon at Fri Jun 12 14:33:05 IST 2026
[2026-06-12 14:33:05,399.399 INFO    ] ================================================
[2026-06-12 14:33:05,770.770 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 14:33:05
[2026-06-12 14:33:06,114.114 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 14:33:06,268.268 INFO    ] Initializing speech engine...
[2026-06-12 14:33:06,273.273 INFO    ] 2026-06-12 14:33:06
[2026-06-12 14:33:06,482.482 INFO    ] 2026-06-12 14:33:06
[2026-06-12 14:33:06,511.511 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 14:33:06,705.705 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 14:33:06,720.720 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 14:33:06,920.920 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 14:33:06,926.926 INFO    ] time= 12/06/2026 14:33:06
[2026-06-12 14:33:06,928.928 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 14:33:06,930.930 INFO    ] Checking for existing commands in stream...
[2026-06-12 14:33:07,023.023 INFO    ] No existing commands found in stream
[2026-06-12 14:33:12,037.037 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 14:33:12,041.041 INFO    ] Waiting 0.57 seconds before fallback handling...
[2026-06-12 14:33:13,076.076 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 14:33:13,077.077 INFO    ] Checking for system updates...
[2026-06-12 14:33:13,098.098 INFO    ] 200
[2026-06-12 14:33:13,100.100 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:33:13,132.132 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 14:33:13,134.134 INFO    ] No update needed
[2026-06-12 14:33:13,135.135 INFO    ] Checking for camera pi updates...
[2026-06-12 14:33:13,157.157 INFO    ] 200
[2026-06-12 14:33:13,158.158 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:33:13,182.182 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 14:33:13,224.224 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 14:33:13,226.226 INFO    ] No camera update needed
[2026-06-12 14:33:13,227.227 INFO    ] Script finished. Safe exiting...
[2026-06-12 14:33:13,229.229 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 14:33:13,232.232 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 14:33:13,235.235 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 14:33:15,275.275 INFO    ] ================================================
[2026-06-12 14:33:15,290.290 INFO    ] Launching Daemon at Fri Jun 12 14:33:15 IST 2026
[2026-06-12 14:33:15,301.301 INFO    ] ================================================
[2026-06-12 14:33:15,655.655 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 14:33:15
[2026-06-12 14:33:15,967.967 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 14:33:16,099.099 INFO    ] Initializing speech engine...
[2026-06-12 14:33:16,112.112 INFO    ] 2026-06-12 14:33:16
[2026-06-12 14:33:16,319.319 INFO    ] 2026-06-12 14:33:16
[2026-06-12 14:33:16,349.349 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 14:33:16,537.537 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 14:33:16,548.548 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 14:33:16,753.753 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 14:33:16,765.765 INFO    ] time= 12/06/2026 14:33:16
[2026-06-12 14:33:16,770.770 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 14:33:16,772.772 INFO    ] Checking for existing commands in stream...
[2026-06-12 14:33:16,864.864 INFO    ] No existing commands found in stream
[2026-06-12 14:33:21,878.878 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 14:33:21,881.881 INFO    ] Waiting 3.11 seconds before fallback handling...
[2026-06-12 14:33:25,461.461 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 14:33:25,462.462 INFO    ] Checking for system updates...
[2026-06-12 14:33:25,490.490 INFO    ] 200
[2026-06-12 14:33:25,492.492 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:33:25,524.524 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 14:33:25,525.525 INFO    ] No update needed
[2026-06-12 14:33:25,527.527 INFO    ] Checking for camera pi updates...
[2026-06-12 14:33:25,547.547 INFO    ] 200
[2026-06-12 14:33:25,548.548 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:33:25,571.571 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 14:33:25,625.625 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 14:33:25,627.627 INFO    ] No camera update needed
[2026-06-12 14:33:25,628.628 INFO    ] Script finished. Safe exiting...
[2026-06-12 14:33:25,629.629 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 14:33:25,632.632 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 14:33:25,635.635 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 14:33:27,673.673 INFO    ] ================================================
[2026-06-12 14:33:27,687.687 INFO    ] Launching Daemon at Fri Jun 12 14:33:27 IST 2026
[2026-06-12 14:33:27,698.698 INFO    ] ================================================
[2026-06-12 14:33:28,068.068 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 14:33:28
[2026-06-12 14:33:28,408.408 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 14:33:28,566.566 INFO    ] Initializing speech engine...
[2026-06-12 14:33:28,570.570 INFO    ] 2026-06-12 14:33:28
[2026-06-12 14:33:28,778.778 INFO    ] 2026-06-12 14:33:28
[2026-06-12 14:33:28,807.807 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 14:33:28,991.991 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 14:33:29,001.001 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 14:33:29,212.212 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 14:33:29,218.218 INFO    ] time= 12/06/2026 14:33:29
[2026-06-12 14:33:29,224.224 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 14:33:29,226.226 INFO    ] Checking for existing commands in stream...
[2026-06-12 14:33:29,315.315 INFO    ] No existing commands found in stream
[2026-06-12 14:33:34,330.330 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 14:33:34,333.333 INFO    ] Waiting 0.47 seconds before fallback handling...
[2026-06-12 14:33:35,260.260 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 14:33:35,261.261 INFO    ] Checking for system updates...
[2026-06-12 14:33:35,282.282 INFO    ] 200
[2026-06-12 14:33:35,284.284 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:33:35,314.314 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 14:33:35,315.315 INFO    ] No update needed
[2026-06-12 14:33:35,317.317 INFO    ] Checking for camera pi updates...
[2026-06-12 14:33:35,338.338 INFO    ] 200
[2026-06-12 14:33:35,339.339 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:33:35,367.367 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 14:33:35,420.420 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 14:33:35,421.421 INFO    ] No camera update needed
[2026-06-12 14:33:35,423.423 INFO    ] Script finished. Safe exiting...
[2026-06-12 14:33:35,424.424 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 14:33:35,427.427 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 14:33:35,430.430 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 14:33:37,469.469 INFO    ] ================================================
[2026-06-12 14:33:37,485.485 INFO    ] Launching Daemon at Fri Jun 12 14:33:37 IST 2026
[2026-06-12 14:33:37,496.496 INFO    ] ================================================
[2026-06-12 14:33:37,841.841 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 14:33:37
[2026-06-12 14:33:38,181.181 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 14:33:38,336.336 INFO    ] Initializing speech engine...
[2026-06-12 14:33:38,343.343 INFO    ] 2026-06-12 14:33:38
[2026-06-12 14:33:38,546.546 INFO    ] 2026-06-12 14:33:38
[2026-06-12 14:33:38,575.575 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 14:33:38,822.822 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 14:33:38,863.863 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 14:33:39,054.054 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 14:33:39,079.079 INFO    ] time= 12/06/2026 14:33:39
[2026-06-12 14:33:39,081.081 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 14:33:39,108.108 INFO    ] Checking for existing commands in stream...
[2026-06-12 14:33:39,188.188 INFO    ] No existing commands found in stream
[2026-06-12 14:33:44,198.198 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 14:33:44,202.202 INFO    ] Waiting 0.95 seconds before fallback handling...
[2026-06-12 14:33:45,591.591 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 14:33:45,592.592 INFO    ] Checking for system updates...
[2026-06-12 14:33:45,614.614 INFO    ] 200
[2026-06-12 14:33:45,615.615 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:33:45,648.648 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 14:33:45,650.650 INFO    ] No update needed
[2026-06-12 14:33:45,651.651 INFO    ] Checking for camera pi updates...
[2026-06-12 14:33:45,672.672 INFO    ] 200
[2026-06-12 14:33:45,674.674 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:33:45,697.697 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 14:33:45,737.737 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 14:33:45,739.739 INFO    ] No camera update needed
[2026-06-12 14:33:45,740.740 INFO    ] Script finished. Safe exiting...
[2026-06-12 14:33:45,742.742 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 14:33:45,745.745 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 14:33:45,748.748 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 14:33:47,786.786 INFO    ] ================================================
[2026-06-12 14:33:47,803.803 INFO    ] Launching Daemon at Fri Jun 12 14:33:47 IST 2026
[2026-06-12 14:33:47,813.813 INFO    ] ================================================
[2026-06-12 14:33:48,145.145 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 14:33:48
[2026-06-12 14:33:48,460.460 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 14:33:48,593.593 INFO    ] Initializing speech engine...
[2026-06-12 14:33:48,605.605 INFO    ] 2026-06-12 14:33:48
[2026-06-12 14:33:48,811.811 INFO    ] 2026-06-12 14:33:48
[2026-06-12 14:33:48,839.839 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 14:33:49,047.047 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 14:33:49,052.052 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 14:33:49,246.246 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 14:33:49,252.252 INFO    ] time= 12/06/2026 14:33:49
[2026-06-12 14:33:49,254.254 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 14:33:49,256.256 INFO    ] Checking for existing commands in stream...
[2026-06-12 14:33:49,346.346 INFO    ] No existing commands found in stream
[2026-06-12 14:33:54,355.355 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 14:33:54,358.358 INFO    ] Waiting 1.79 seconds before fallback handling...
[2026-06-12 14:33:56,607.607 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 14:33:56,609.609 INFO    ] Checking for system updates...
[2026-06-12 14:33:56,630.630 INFO    ] 200
[2026-06-12 14:33:56,632.632 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:33:56,661.661 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 14:33:56,663.663 INFO    ] No update needed
[2026-06-12 14:33:56,664.664 INFO    ] Checking for camera pi updates...
[2026-06-12 14:33:56,684.684 INFO    ] 200
[2026-06-12 14:33:56,686.686 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:33:56,710.710 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 14:33:56,759.759 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 14:33:56,760.760 INFO    ] No camera update needed
[2026-06-12 14:33:56,761.761 INFO    ] Script finished. Safe exiting...
[2026-06-12 14:33:56,763.763 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 14:33:56,766.766 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 14:33:56,768.768 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 14:33:58,806.806 INFO    ] ================================================
[2026-06-12 14:33:58,821.821 INFO    ] Launching Daemon at Fri Jun 12 14:33:58 IST 2026
[2026-06-12 14:33:58,832.832 INFO    ] ================================================
[2026-06-12 14:33:59,184.184 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 14:33:59
[2026-06-12 14:33:59,500.500 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 14:33:59,643.643 INFO    ] Initializing speech engine...
[2026-06-12 14:33:59,648.648 INFO    ] 2026-06-12 14:33:59
[2026-06-12 14:33:59,853.853 INFO    ] 2026-06-12 14:33:59
[2026-06-12 14:33:59,881.881 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 14:34:00,088.088 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 14:34:00,093.093 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 14:34:00,282.282 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 14:34:00,293.293 INFO    ] time= 12/06/2026 14:34:00
[2026-06-12 14:34:00,298.298 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 14:34:00,300.300 INFO    ] Checking for existing commands in stream...
[2026-06-12 14:34:00,390.390 INFO    ] No existing commands found in stream
[2026-06-12 14:34:05,404.404 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 14:34:05,407.407 INFO    ] Waiting 2.50 seconds before fallback handling...
[2026-06-12 14:34:08,399.399 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 14:34:08,401.401 INFO    ] Checking for system updates...
[2026-06-12 14:34:08,421.421 INFO    ] 200
[2026-06-12 14:34:08,423.423 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:34:08,454.454 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 14:34:08,456.456 INFO    ] No update needed
[2026-06-12 14:34:08,457.457 INFO    ] Checking for camera pi updates...
[2026-06-12 14:34:08,477.477 INFO    ] 200
[2026-06-12 14:34:08,479.479 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:34:08,503.503 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 14:34:08,554.554 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 14:34:08,555.555 INFO    ] No camera update needed
[2026-06-12 14:34:08,557.557 INFO    ] Script finished. Safe exiting...
[2026-06-12 14:34:08,558.558 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 14:34:08,561.561 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 14:34:08,564.564 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 14:34:10,602.602 INFO    ] ================================================
[2026-06-12 14:34:10,619.619 INFO    ] Launching Daemon at Fri Jun 12 14:34:10 IST 2026
[2026-06-12 14:34:10,632.632 INFO    ] ================================================
[2026-06-12 14:34:11,000.000 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 14:34:10
[2026-06-12 14:34:11,312.312 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 14:34:11,443.443 INFO    ] Initializing speech engine...
[2026-06-12 14:34:11,451.451 INFO    ] 2026-06-12 14:34:11
[2026-06-12 14:34:11,665.665 INFO    ] 2026-06-12 14:34:11
[2026-06-12 14:34:11,693.693 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 14:34:11,891.891 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 14:34:11,905.905 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 14:34:12,106.106 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 14:34:12,112.112 INFO    ] time= 12/06/2026 14:34:12
[2026-06-12 14:34:12,118.118 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 14:34:12,119.119 INFO    ] Checking for existing commands in stream...
[2026-06-12 14:34:12,212.212 INFO    ] No existing commands found in stream
[2026-06-12 14:34:17,221.221 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 14:34:17,224.224 INFO    ] Waiting 3.18 seconds before fallback handling...
[2026-06-12 14:34:20,907.907 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 14:34:20,909.909 INFO    ] Checking for system updates...
[2026-06-12 14:34:20,930.930 INFO    ] 200
[2026-06-12 14:34:20,931.931 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:34:20,961.961 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 14:34:20,963.963 INFO    ] No update needed
[2026-06-12 14:34:20,964.964 INFO    ] Checking for camera pi updates...
[2026-06-12 14:34:20,983.983 INFO    ] 200
[2026-06-12 14:34:20,985.985 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:34:21,010.010 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 14:34:21,055.055 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 14:34:21,056.056 INFO    ] No camera update needed
[2026-06-12 14:34:21,058.058 INFO    ] Script finished. Safe exiting...
[2026-06-12 14:34:21,059.059 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 14:34:21,062.062 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 14:34:21,066.066 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 14:34:23,106.106 INFO    ] ================================================
[2026-06-12 14:34:23,121.121 INFO    ] Launching Daemon at Fri Jun 12 14:34:23 IST 2026
[2026-06-12 14:34:23,132.132 INFO    ] ================================================
[2026-06-12 14:34:23,480.480 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 14:34:23
[2026-06-12 14:34:23,791.791 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 14:34:23,922.922 INFO    ] Initializing speech engine...
[2026-06-12 14:34:23,927.927 INFO    ] 2026-06-12 14:34:23
[2026-06-12 14:34:24,157.157 INFO    ] 2026-06-12 14:34:24
[2026-06-12 14:34:24,188.188 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 14:34:24,385.385 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 14:34:24,389.389 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 14:34:24,606.606 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 14:34:24,631.631 INFO    ] time= 12/06/2026 14:34:24
[2026-06-12 14:34:24,637.637 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 14:34:24,639.639 INFO    ] Checking for existing commands in stream...
[2026-06-12 14:34:24,737.737 INFO    ] No existing commands found in stream
[2026-06-12 14:34:29,746.746 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 14:34:29,749.749 INFO    ] Waiting 2.19 seconds before fallback handling...
[2026-06-12 14:34:32,354.354 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 14:34:32,356.356 INFO    ] Checking for system updates...
[2026-06-12 14:34:32,376.376 INFO    ] 200
[2026-06-12 14:34:32,378.378 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:34:32,410.410 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 14:34:32,412.412 INFO    ] No update needed
[2026-06-12 14:34:32,413.413 INFO    ] Checking for camera pi updates...
[2026-06-12 14:34:32,434.434 INFO    ] 200
[2026-06-12 14:34:32,435.435 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:34:32,461.461 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 14:34:32,511.511 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 14:34:32,512.512 INFO    ] No camera update needed
[2026-06-12 14:34:32,513.513 INFO    ] Script finished. Safe exiting...
[2026-06-12 14:34:32,515.515 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 14:34:32,518.518 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 14:34:32,521.521 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 14:34:34,561.561 INFO    ] ================================================
[2026-06-12 14:34:34,576.576 INFO    ] Launching Daemon at Fri Jun 12 14:34:34 IST 2026
[2026-06-12 14:34:34,588.588 INFO    ] ================================================
[2026-06-12 14:34:34,975.975 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 14:34:34
[2026-06-12 14:34:35,315.315 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 14:34:35,468.468 INFO    ] Initializing speech engine...
[2026-06-12 14:34:35,472.472 INFO    ] 2026-06-12 14:34:35
[2026-06-12 14:34:35,679.679 INFO    ] 2026-06-12 14:34:35
[2026-06-12 14:34:35,708.708 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 14:34:35,893.893 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 14:34:35,902.902 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 14:34:36,097.097 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 14:34:36,118.118 INFO    ] time= 12/06/2026 14:34:36
[2026-06-12 14:34:36,124.124 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 14:34:36,126.126 INFO    ] Checking for existing commands in stream...
[2026-06-12 14:34:36,216.216 INFO    ] No existing commands found in stream
[2026-06-12 14:34:41,240.240 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 14:34:41,244.244 INFO    ] Waiting 3.17 seconds before fallback handling...
[2026-06-12 14:34:44,920.920 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 14:34:44,921.921 INFO    ] Checking for system updates...
[2026-06-12 14:34:44,942.942 INFO    ] 200
[2026-06-12 14:34:44,943.943 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:34:44,973.973 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 14:34:44,975.975 INFO    ] No update needed
[2026-06-12 14:34:44,976.976 INFO    ] Checking for camera pi updates...
[2026-06-12 14:34:44,997.997 INFO    ] 200
[2026-06-12 14:34:44,998.998 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:34:45,025.025 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 14:34:45,173.173 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 14:34:45,175.175 INFO    ] No camera update needed
[2026-06-12 14:34:45,176.176 INFO    ] Script finished. Safe exiting...
[2026-06-12 14:34:45,178.178 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 14:34:45,181.181 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 14:34:45,184.184 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 14:34:47,223.223 INFO    ] ================================================
[2026-06-12 14:34:47,238.238 INFO    ] Launching Daemon at Fri Jun 12 14:34:47 IST 2026
[2026-06-12 14:34:47,248.248 INFO    ] ================================================
[2026-06-12 14:34:47,581.581 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 14:34:47
[2026-06-12 14:34:47,896.896 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 14:34:48,043.043 INFO    ] Initializing speech engine...
[2026-06-12 14:34:48,056.056 INFO    ] 2026-06-12 14:34:48
[2026-06-12 14:34:48,276.276 INFO    ] 2026-06-12 14:34:48
[2026-06-12 14:34:48,307.307 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 14:34:48,507.507 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 14:34:48,516.516 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 14:34:48,727.727 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 14:34:48,754.754 INFO    ] time= 12/06/2026 14:34:48
[2026-06-12 14:34:48,760.760 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 14:34:48,762.762 INFO    ] Checking for existing commands in stream...
[2026-06-12 14:34:48,860.860 INFO    ] No existing commands found in stream
[2026-06-12 14:34:53,869.869 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 14:34:53,872.872 INFO    ] Waiting 3.55 seconds before fallback handling...
[2026-06-12 14:34:57,913.913 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 14:34:57,914.914 INFO    ] Checking for system updates...
[2026-06-12 14:34:57,935.935 INFO    ] 200
[2026-06-12 14:34:57,936.936 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:34:57,967.967 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 14:34:57,969.969 INFO    ] No update needed
[2026-06-12 14:34:57,970.970 INFO    ] Checking for camera pi updates...
[2026-06-12 14:34:57,991.991 INFO    ] 200
[2026-06-12 14:34:57,992.992 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:34:58,016.016 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 14:34:58,066.066 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 14:34:58,067.067 INFO    ] No camera update needed
[2026-06-12 14:34:58,069.069 INFO    ] Script finished. Safe exiting...
[2026-06-12 14:34:58,070.070 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 14:34:58,073.073 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 14:34:58,076.076 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 14:35:00,114.114 INFO    ] ================================================
[2026-06-12 14:35:00,129.129 INFO    ] Launching Daemon at Fri Jun 12 14:35:00 IST 2026
[2026-06-12 14:35:00,139.139 INFO    ] ================================================
[2026-06-12 14:35:00,495.495 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 14:35:00
[2026-06-12 14:35:00,835.835 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 14:35:00,987.987 INFO    ] Initializing speech engine...
[2026-06-12 14:35:00,992.992 INFO    ] 2026-06-12 14:35:00
[2026-06-12 14:35:01,201.201 INFO    ] 2026-06-12 14:35:01
[2026-06-12 14:35:01,229.229 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 14:35:01,491.491 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 14:35:01,545.545 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 14:35:01,732.732 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 14:35:01,756.756 INFO    ] time= 12/06/2026 14:35:01
[2026-06-12 14:35:01,776.776 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 14:35:01,778.778 INFO    ] Checking for existing commands in stream...
[2026-06-12 14:35:01,912.912 INFO    ] No existing commands found in stream
[2026-06-12 14:35:06,921.921 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 14:35:06,924.924 INFO    ] Waiting 0.29 seconds before fallback handling...
[2026-06-12 14:35:07,692.692 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 14:35:07,693.693 INFO    ] Checking for system updates...
[2026-06-12 14:35:07,714.714 INFO    ] 200
[2026-06-12 14:35:07,715.715 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:35:07,745.745 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 14:35:07,747.747 INFO    ] No update needed
[2026-06-12 14:35:07,748.748 INFO    ] Checking for camera pi updates...
[2026-06-12 14:35:07,769.769 INFO    ] 200
[2026-06-12 14:35:07,770.770 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:35:07,795.795 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 14:35:07,821.821 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 14:35:07,823.823 INFO    ] No camera update needed
[2026-06-12 14:35:07,824.824 INFO    ] Script finished. Safe exiting...
[2026-06-12 14:35:07,825.825 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 14:35:07,828.828 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 14:35:07,832.832 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 14:35:09,870.870 INFO    ] ================================================
[2026-06-12 14:35:09,886.886 INFO    ] Launching Daemon at Fri Jun 12 14:35:09 IST 2026
[2026-06-12 14:35:09,897.897 INFO    ] ================================================
[2026-06-12 14:35:10,232.232 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 14:35:10
[2026-06-12 14:35:10,549.549 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 14:35:10,693.693 INFO    ] Initializing speech engine...
[2026-06-12 14:35:10,697.697 INFO    ] 2026-06-12 14:35:10
[2026-06-12 14:35:10,903.903 INFO    ] 2026-06-12 14:35:10
[2026-06-12 14:35:10,932.932 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 14:35:11,125.125 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 14:35:11,139.139 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 14:35:11,330.330 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 14:35:11,341.341 INFO    ] time= 12/06/2026 14:35:11
[2026-06-12 14:35:11,347.347 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 14:35:11,349.349 INFO    ] Checking for existing commands in stream...
[2026-06-12 14:35:11,440.440 INFO    ] No existing commands found in stream
[2026-06-12 14:35:16,448.448 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 14:35:16,452.452 INFO    ] Waiting 3.37 seconds before fallback handling...
[2026-06-12 14:35:20,285.285 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 14:35:20,287.287 INFO    ] Checking for system updates...
[2026-06-12 14:35:20,307.307 INFO    ] 200
[2026-06-12 14:35:20,308.308 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:35:20,338.338 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 14:35:20,339.339 INFO    ] No update needed
[2026-06-12 14:35:20,341.341 INFO    ] Checking for camera pi updates...
[2026-06-12 14:35:20,362.362 INFO    ] 200
[2026-06-12 14:35:20,363.363 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:35:20,387.387 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 14:35:20,434.434 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 14:35:20,436.436 INFO    ] No camera update needed
[2026-06-12 14:35:20,437.437 INFO    ] Script finished. Safe exiting...
[2026-06-12 14:35:20,438.438 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 14:35:20,442.442 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 14:35:20,444.444 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 14:35:22,483.483 INFO    ] ================================================
[2026-06-12 14:35:22,498.498 INFO    ] Launching Daemon at Fri Jun 12 14:35:22 IST 2026
[2026-06-12 14:35:22,509.509 INFO    ] ================================================
[2026-06-12 14:35:22,885.885 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 14:35:22
[2026-06-12 14:35:23,226.226 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 14:35:23,379.379 INFO    ] Initializing speech engine...
[2026-06-12 14:35:23,385.385 INFO    ] 2026-06-12 14:35:23
[2026-06-12 14:35:23,596.596 INFO    ] 2026-06-12 14:35:23
[2026-06-12 14:35:23,625.625 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 14:35:23,892.892 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 14:35:23,943.943 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 14:35:24,113.113 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 14:35:24,139.139 INFO    ] time= 12/06/2026 14:35:24
[2026-06-12 14:35:24,165.165 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 14:35:24,169.169 INFO    ] Checking for existing commands in stream...
[2026-06-12 14:35:24,248.248 INFO    ] No existing commands found in stream
[2026-06-12 14:35:29,259.259 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 14:35:29,263.263 INFO    ] Waiting 2.06 seconds before fallback handling...
[2026-06-12 14:35:31,818.818 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 14:35:31,820.820 INFO    ] Checking for system updates...
[2026-06-12 14:35:31,848.848 INFO    ] 200
[2026-06-12 14:35:31,850.850 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:35:31,895.895 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 14:35:31,897.897 INFO    ] No update needed
[2026-06-12 14:35:31,898.898 INFO    ] Checking for camera pi updates...
[2026-06-12 14:35:31,934.934 INFO    ] 200
[2026-06-12 14:35:31,935.935 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:35:31,964.964 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 14:35:32,004.004 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 14:35:32,006.006 INFO    ] No camera update needed
[2026-06-12 14:35:32,007.007 INFO    ] Script finished. Safe exiting...
[2026-06-12 14:35:32,009.009 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 14:35:32,013.013 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 14:35:32,016.016 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 14:35:34,055.055 INFO    ] ================================================
[2026-06-12 14:35:34,070.070 INFO    ] Launching Daemon at Fri Jun 12 14:35:34 IST 2026
[2026-06-12 14:35:34,081.081 INFO    ] ================================================
[2026-06-12 14:35:34,399.399 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 14:35:34
[2026-06-12 14:35:34,710.710 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 14:35:34,845.845 INFO    ] Initializing speech engine...
[2026-06-12 14:35:34,857.857 INFO    ] 2026-06-12 14:35:34
[2026-06-12 14:35:35,064.064 INFO    ] 2026-06-12 14:35:35
[2026-06-12 14:35:35,093.093 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 14:35:35,300.300 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 14:35:35,305.305 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 14:35:35,497.497 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 14:35:35,503.503 INFO    ] time= 12/06/2026 14:35:35
[2026-06-12 14:35:35,509.509 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 14:35:35,511.511 INFO    ] Checking for existing commands in stream...
[2026-06-12 14:35:35,601.601 INFO    ] No existing commands found in stream
[2026-06-12 14:35:40,615.615 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 14:35:40,618.618 INFO    ] Waiting 0.91 seconds before fallback handling...
[2026-06-12 14:35:42,002.002 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 14:35:42,004.004 INFO    ] Checking for system updates...
[2026-06-12 14:35:42,025.025 INFO    ] 200
[2026-06-12 14:35:42,026.026 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:35:42,056.056 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 14:35:42,058.058 INFO    ] No update needed
[2026-06-12 14:35:42,059.059 INFO    ] Checking for camera pi updates...
[2026-06-12 14:35:42,081.081 INFO    ] 200
[2026-06-12 14:35:42,083.083 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:35:42,108.108 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 14:35:42,155.155 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 14:35:42,157.157 INFO    ] No camera update needed
[2026-06-12 14:35:42,158.158 INFO    ] Script finished. Safe exiting...
[2026-06-12 14:35:42,160.160 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 14:35:42,163.163 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 14:35:42,166.166 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 14:35:44,206.206 INFO    ] ================================================
[2026-06-12 14:35:44,221.221 INFO    ] Launching Daemon at Fri Jun 12 14:35:44 IST 2026
[2026-06-12 14:35:44,232.232 INFO    ] ================================================
[2026-06-12 14:35:44,623.623 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 14:35:44
[2026-06-12 14:35:44,961.961 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 14:35:45,115.115 INFO    ] Initializing speech engine...
[2026-06-12 14:35:45,119.119 INFO    ] 2026-06-12 14:35:45
[2026-06-12 14:35:45,328.328 INFO    ] 2026-06-12 14:35:45
[2026-06-12 14:35:45,357.357 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 14:35:45,554.554 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 14:35:45,568.568 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 14:35:45,772.772 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 14:35:45,778.778 INFO    ] time= 12/06/2026 14:35:45
[2026-06-12 14:35:45,780.780 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 14:35:45,782.782 INFO    ] Checking for existing commands in stream...
[2026-06-12 14:35:45,900.900 INFO    ] No existing commands found in stream
[2026-06-12 14:35:50,910.910 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 14:35:50,913.913 INFO    ] Waiting 3.46 seconds before fallback handling...
[2026-06-12 14:35:54,875.875 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 14:35:54,877.877 INFO    ] Checking for system updates...
[2026-06-12 14:35:54,899.899 INFO    ] 200
[2026-06-12 14:35:54,900.900 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:35:54,930.930 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 14:35:54,931.931 INFO    ] No update needed
[2026-06-12 14:35:54,933.933 INFO    ] Checking for camera pi updates...
[2026-06-12 14:35:54,953.953 INFO    ] 200
[2026-06-12 14:35:54,955.955 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:35:54,979.979 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 14:35:55,079.079 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 14:35:55,080.080 INFO    ] No camera update needed
[2026-06-12 14:35:55,082.082 INFO    ] Script finished. Safe exiting...
[2026-06-12 14:35:55,083.083 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 14:35:55,086.086 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 14:35:55,089.089 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 14:35:57,126.126 INFO    ] ================================================
[2026-06-12 14:35:57,141.141 INFO    ] Launching Daemon at Fri Jun 12 14:35:57 IST 2026
[2026-06-12 14:35:57,152.152 INFO    ] ================================================
[2026-06-12 14:35:57,485.485 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 14:35:57
[2026-06-12 14:35:57,819.819 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 14:35:58,019.019 INFO    ] Initializing speech engine...
[2026-06-12 14:35:58,027.027 INFO    ] 2026-06-12 14:35:58
[2026-06-12 14:35:58,235.235 INFO    ] 2026-06-12 14:35:58
[2026-06-12 14:35:58,263.263 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 14:35:58,470.470 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 14:35:58,474.474 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 14:35:58,671.671 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 14:35:58,677.677 INFO    ] time= 12/06/2026 14:35:58
[2026-06-12 14:35:58,679.679 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 14:35:58,681.681 INFO    ] Checking for existing commands in stream...
[2026-06-12 14:35:58,771.771 INFO    ] No existing commands found in stream
[2026-06-12 14:36:03,786.786 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 14:36:03,789.789 INFO    ] Waiting 0.10 seconds before fallback handling...
[2026-06-12 14:36:04,356.356 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 14:36:04,357.357 INFO    ] Checking for system updates...
[2026-06-12 14:36:04,378.378 INFO    ] 200
[2026-06-12 14:36:04,380.380 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:36:04,410.410 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 14:36:04,411.411 INFO    ] No update needed
[2026-06-12 14:36:04,413.413 INFO    ] Checking for camera pi updates...
[2026-06-12 14:36:04,432.432 INFO    ] 200
[2026-06-12 14:36:04,433.433 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:36:04,458.458 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 14:36:04,519.519 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 14:36:04,520.520 INFO    ] No camera update needed
[2026-06-12 14:36:04,522.522 INFO    ] Script finished. Safe exiting...
[2026-06-12 14:36:04,523.523 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 14:36:04,526.526 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 14:36:04,529.529 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 14:36:06,567.567 INFO    ] ================================================
[2026-06-12 14:36:06,582.582 INFO    ] Launching Daemon at Fri Jun 12 14:36:06 IST 2026
[2026-06-12 14:36:06,593.593 INFO    ] ================================================
[2026-06-12 14:36:06,941.941 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 14:36:06
[2026-06-12 14:36:07,255.255 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 14:36:07,384.384 INFO    ] Initializing speech engine...
[2026-06-12 14:36:07,389.389 INFO    ] 2026-06-12 14:36:07
[2026-06-12 14:36:07,606.606 INFO    ] 2026-06-12 14:36:07
[2026-06-12 14:36:07,635.635 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 14:36:07,833.833 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 14:36:07,847.847 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 14:36:08,032.032 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 14:36:08,054.054 INFO    ] time= 12/06/2026 14:36:08
[2026-06-12 14:36:08,059.059 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 14:36:08,061.061 INFO    ] Checking for existing commands in stream...
[2026-06-12 14:36:08,152.152 INFO    ] No existing commands found in stream
[2026-06-12 14:36:13,166.166 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 14:36:13,169.169 INFO    ] Waiting 3.91 seconds before fallback handling...
[2026-06-12 14:36:17,593.593 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 14:36:17,596.596 INFO    ] Checking for system updates...
[2026-06-12 14:36:17,631.631 INFO    ] 200
[2026-06-12 14:36:17,634.634 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:36:17,687.687 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 14:36:17,689.689 INFO    ] No update needed
[2026-06-12 14:36:17,692.692 INFO    ] Checking for camera pi updates...
[2026-06-12 14:36:17,729.729 INFO    ] 200
[2026-06-12 14:36:17,732.732 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:36:17,772.772 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 14:36:17,837.837 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 14:36:17,840.840 INFO    ] No camera update needed
[2026-06-12 14:36:17,842.842 INFO    ] Script finished. Safe exiting...
[2026-06-12 14:36:17,845.845 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 14:36:17,850.850 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 14:36:17,855.855 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 14:36:19,894.894 INFO    ] ================================================
[2026-06-12 14:36:19,909.909 INFO    ] Launching Daemon at Fri Jun 12 14:36:19 IST 2026
[2026-06-12 14:36:19,920.920 INFO    ] ================================================
[2026-06-12 14:36:20,240.240 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 14:36:20
[2026-06-12 14:36:20,556.556 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 14:36:20,687.687 INFO    ] Initializing speech engine...
[2026-06-12 14:36:20,695.695 INFO    ] 2026-06-12 14:36:20
[2026-06-12 14:36:20,908.908 INFO    ] 2026-06-12 14:36:20
[2026-06-12 14:36:20,938.938 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 14:36:21,148.148 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 14:36:21,154.154 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 14:36:21,342.342 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 14:36:21,353.353 INFO    ] time= 12/06/2026 14:36:21
[2026-06-12 14:36:21,359.359 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 14:36:21,361.361 INFO    ] Checking for existing commands in stream...
[2026-06-12 14:36:21,452.452 INFO    ] No existing commands found in stream
[2026-06-12 14:36:26,477.477 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 14:36:26,479.479 INFO    ] Waiting 0.27 seconds before fallback handling...
[2026-06-12 14:36:27,209.209 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 14:36:27,210.210 INFO    ] Checking for system updates...
[2026-06-12 14:36:27,232.232 INFO    ] 200
[2026-06-12 14:36:27,234.234 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:36:27,267.267 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 14:36:27,269.269 INFO    ] No update needed
[2026-06-12 14:36:27,270.270 INFO    ] Checking for camera pi updates...
[2026-06-12 14:36:27,294.294 INFO    ] 200
[2026-06-12 14:36:27,296.296 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:36:27,320.320 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 14:36:27,361.361 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 14:36:27,362.362 INFO    ] No camera update needed
[2026-06-12 14:36:27,364.364 INFO    ] Script finished. Safe exiting...
[2026-06-12 14:36:27,365.365 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 14:36:27,368.368 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 14:36:27,371.371 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 14:36:29,413.413 INFO    ] ================================================
[2026-06-12 14:36:29,428.428 INFO    ] Launching Daemon at Fri Jun 12 14:36:29 IST 2026
[2026-06-12 14:36:29,439.439 INFO    ] ================================================
[2026-06-12 14:36:29,803.803 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 14:36:29
[2026-06-12 14:36:30,119.119 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 14:36:30,261.261 INFO    ] Initializing speech engine...
[2026-06-12 14:36:30,266.266 INFO    ] 2026-06-12 14:36:30
[2026-06-12 14:36:30,470.470 INFO    ] 2026-06-12 14:36:30
[2026-06-12 14:36:30,499.499 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 14:36:30,692.692 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 14:36:30,706.706 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 14:36:30,905.905 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 14:36:30,911.911 INFO    ] time= 12/06/2026 14:36:30
[2026-06-12 14:36:30,913.913 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 14:36:30,914.914 INFO    ] Checking for existing commands in stream...
[2026-06-12 14:36:31,005.005 INFO    ] No existing commands found in stream
[2026-06-12 14:36:36,018.018 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 14:36:36,021.021 INFO    ] Waiting 1.57 seconds before fallback handling...
[2026-06-12 14:36:38,014.014 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 14:36:38,016.016 INFO    ] Checking for system updates...
[2026-06-12 14:36:38,036.036 INFO    ] 200
[2026-06-12 14:36:38,037.037 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:36:38,072.072 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 14:36:38,073.073 INFO    ] No update needed
[2026-06-12 14:36:38,074.074 INFO    ] Checking for camera pi updates...
[2026-06-12 14:36:38,093.093 INFO    ] 200
[2026-06-12 14:36:38,094.094 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:36:38,118.118 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 14:36:38,160.160 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 14:36:38,162.162 INFO    ] No camera update needed
[2026-06-12 14:36:38,163.163 INFO    ] Script finished. Safe exiting...
[2026-06-12 14:36:38,164.164 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 14:36:38,167.167 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 14:36:38,170.170 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 14:36:40,210.210 INFO    ] ================================================
[2026-06-12 14:36:40,225.225 INFO    ] Launching Daemon at Fri Jun 12 14:36:40 IST 2026
[2026-06-12 14:36:40,236.236 INFO    ] ================================================
[2026-06-12 14:36:40,603.603 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 14:36:40
[2026-06-12 14:36:40,920.920 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 14:36:41,052.052 INFO    ] Initializing speech engine...
[2026-06-12 14:36:41,065.065 INFO    ] 2026-06-12 14:36:41
[2026-06-12 14:36:41,273.273 INFO    ] 2026-06-12 14:36:41
[2026-06-12 14:36:41,302.302 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 14:36:41,561.561 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 14:36:41,612.612 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 14:36:41,779.779 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 14:36:41,781.781 INFO    ] time= 12/06/2026 14:36:41
[2026-06-12 14:36:41,807.807 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 14:36:41,808.808 INFO    ] Checking for existing commands in stream...
[2026-06-12 14:36:41,904.904 INFO    ] No existing commands found in stream
[2026-06-12 14:36:46,915.915 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 14:36:46,917.917 INFO    ] Waiting 1.65 seconds before fallback handling...
[2026-06-12 14:36:49,042.042 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 14:36:49,043.043 INFO    ] Checking for system updates...
[2026-06-12 14:36:49,064.064 INFO    ] 200
[2026-06-12 14:36:49,065.065 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:36:49,095.095 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 14:36:49,097.097 INFO    ] No update needed
[2026-06-12 14:36:49,098.098 INFO    ] Checking for camera pi updates...
[2026-06-12 14:36:49,118.118 INFO    ] 200
[2026-06-12 14:36:49,119.119 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:36:49,145.145 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 14:36:49,287.287 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 14:36:49,288.288 INFO    ] No camera update needed
[2026-06-12 14:36:49,290.290 INFO    ] Script finished. Safe exiting...
[2026-06-12 14:36:49,291.291 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 14:36:49,294.294 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 14:36:49,297.297 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 14:36:51,339.339 INFO    ] ================================================
[2026-06-12 14:36:51,355.355 INFO    ] Launching Daemon at Fri Jun 12 14:36:51 IST 2026
[2026-06-12 14:36:51,366.366 INFO    ] ================================================
[2026-06-12 14:36:51,702.702 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 14:36:51
[2026-06-12 14:36:52,019.019 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 14:36:52,152.152 INFO    ] Initializing speech engine...
[2026-06-12 14:36:52,160.160 INFO    ] 2026-06-12 14:36:52
[2026-06-12 14:36:52,372.372 INFO    ] 2026-06-12 14:36:52
[2026-06-12 14:36:52,401.401 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 14:36:52,592.592 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 14:36:52,607.607 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 14:36:52,791.791 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 14:36:52,807.807 INFO    ] time= 12/06/2026 14:36:52
[2026-06-12 14:36:52,813.813 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 14:36:52,815.815 INFO    ] Checking for existing commands in stream...
[2026-06-12 14:36:52,908.908 INFO    ] No existing commands found in stream
[2026-06-12 14:36:57,923.923 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 14:36:57,925.925 INFO    ] Waiting 1.52 seconds before fallback handling...
[2026-06-12 14:36:59,919.919 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 14:36:59,921.921 INFO    ] Checking for system updates...
[2026-06-12 14:36:59,943.943 INFO    ] 200
[2026-06-12 14:36:59,944.944 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:36:59,974.974 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 14:36:59,975.975 INFO    ] No update needed
[2026-06-12 14:36:59,977.977 INFO    ] Checking for camera pi updates...
[2026-06-12 14:36:59,997.997 INFO    ] 200
[2026-06-12 14:36:59,999.999 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:37:00,022.022 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 14:37:00,069.069 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 14:37:00,071.071 INFO    ] No camera update needed
[2026-06-12 14:37:00,072.072 INFO    ] Script finished. Safe exiting...
[2026-06-12 14:37:00,073.073 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 14:37:00,076.076 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 14:37:00,079.079 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 14:37:02,113.113 INFO    ] ================================================
[2026-06-12 14:37:02,122.122 INFO    ] Launching Daemon at Fri Jun 12 14:37:02 IST 2026
[2026-06-12 14:37:02,129.129 INFO    ] ================================================
[2026-06-12 14:37:02,470.470 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 14:37:02
[2026-06-12 14:37:02,787.787 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 14:37:02,929.929 INFO    ] Initializing speech engine...
[2026-06-12 14:37:02,934.934 INFO    ] 2026-06-12 14:37:02
[2026-06-12 14:37:03,136.136 INFO    ] 2026-06-12 14:37:03
[2026-06-12 14:37:03,165.165 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 14:37:03,358.358 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 14:37:03,374.374 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 14:37:03,567.567 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 14:37:03,578.578 INFO    ] time= 12/06/2026 14:37:03
[2026-06-12 14:37:03,584.584 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 14:37:03,585.585 INFO    ] Checking for existing commands in stream...
[2026-06-12 14:37:03,676.676 INFO    ] No existing commands found in stream
[2026-06-12 14:37:08,690.690 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 14:37:08,693.693 INFO    ] Waiting 3.46 seconds before fallback handling...
[2026-06-12 14:37:12,602.602 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 14:37:12,604.604 INFO    ] Checking for system updates...
[2026-06-12 14:37:12,626.626 INFO    ] 200
[2026-06-12 14:37:12,627.627 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:37:12,658.658 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 14:37:12,659.659 INFO    ] No update needed
[2026-06-12 14:37:12,660.660 INFO    ] Checking for camera pi updates...
[2026-06-12 14:37:12,682.682 INFO    ] 200
[2026-06-12 14:37:12,683.683 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:37:12,706.706 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 14:37:12,761.761 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 14:37:12,762.762 INFO    ] No camera update needed
[2026-06-12 14:37:12,764.764 INFO    ] Script finished. Safe exiting...
[2026-06-12 14:37:12,765.765 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 14:37:12,768.768 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 14:37:12,771.771 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 14:37:14,811.811 INFO    ] ================================================
[2026-06-12 14:37:14,826.826 INFO    ] Launching Daemon at Fri Jun 12 14:37:14 IST 2026
[2026-06-12 14:37:14,837.837 INFO    ] ================================================
[2026-06-12 14:37:15,204.204 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 14:37:15
[2026-06-12 14:37:15,545.545 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 14:37:15,697.697 INFO    ] Initializing speech engine...
[2026-06-12 14:37:15,704.704 INFO    ] 2026-06-12 14:37:15
[2026-06-12 14:37:15,912.912 INFO    ] 2026-06-12 14:37:15
[2026-06-12 14:37:15,941.941 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 14:37:16,205.205 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 14:37:16,257.257 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 14:37:16,426.426 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 14:37:16,428.428 INFO    ] time= 12/06/2026 14:37:16
[2026-06-12 14:37:16,454.454 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 14:37:16,461.461 INFO    ] Checking for existing commands in stream...
[2026-06-12 14:37:16,561.561 INFO    ] No existing commands found in stream
[2026-06-12 14:37:21,570.570 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 14:37:21,573.573 INFO    ] Waiting 2.86 seconds before fallback handling...
[2026-06-12 14:37:24,914.914 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 14:37:24,916.916 INFO    ] Checking for system updates...
[2026-06-12 14:37:24,936.936 INFO    ] 200
[2026-06-12 14:37:24,938.938 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:37:24,969.969 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 14:37:24,970.970 INFO    ] No update needed
[2026-06-12 14:37:24,972.972 INFO    ] Checking for camera pi updates...
[2026-06-12 14:37:24,992.992 INFO    ] 200
[2026-06-12 14:37:24,994.994 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:37:25,020.020 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 14:37:25,090.090 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 14:37:25,091.091 INFO    ] No camera update needed
[2026-06-12 14:37:25,093.093 INFO    ] Script finished. Safe exiting...
[2026-06-12 14:37:25,094.094 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 14:37:25,097.097 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 14:37:25,100.100 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 14:37:27,138.138 INFO    ] ================================================
[2026-06-12 14:37:27,153.153 INFO    ] Launching Daemon at Fri Jun 12 14:37:27 IST 2026
[2026-06-12 14:37:27,164.164 INFO    ] ================================================
[2026-06-12 14:37:27,518.518 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 14:37:27
[2026-06-12 14:37:27,830.830 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 14:37:27,972.972 INFO    ] Initializing speech engine...
[2026-06-12 14:37:27,977.977 INFO    ] 2026-06-12 14:37:27
[2026-06-12 14:37:28,181.181 INFO    ] 2026-06-12 14:37:28
[2026-06-12 14:37:28,209.209 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 14:37:28,392.392 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 14:37:28,402.402 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 14:37:28,613.613 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 14:37:28,619.619 INFO    ] time= 12/06/2026 14:37:28
[2026-06-12 14:37:28,625.625 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 14:37:28,626.626 INFO    ] Checking for existing commands in stream...
[2026-06-12 14:37:28,715.715 INFO    ] No existing commands found in stream
[2026-06-12 14:37:33,724.724 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 14:37:33,726.726 INFO    ] Waiting 0.50 seconds before fallback handling...
[2026-06-12 14:37:34,699.699 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 14:37:34,701.701 INFO    ] Checking for system updates...
[2026-06-12 14:37:34,721.721 INFO    ] 200
[2026-06-12 14:37:34,722.722 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:37:34,756.756 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 14:37:34,757.757 INFO    ] No update needed
[2026-06-12 14:37:34,758.758 INFO    ] Checking for camera pi updates...
[2026-06-12 14:37:34,777.777 INFO    ] 200
[2026-06-12 14:37:34,778.778 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:37:34,804.804 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 14:37:35,860.860 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 14:37:35,863.863 INFO    ] No camera update needed
[2026-06-12 14:37:35,865.865 INFO    ] Script finished. Safe exiting...
[2026-06-12 14:37:35,867.867 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 14:37:35,873.873 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 14:37:35,878.878 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 14:37:37,919.919 INFO    ] ================================================
[2026-06-12 14:37:37,934.934 INFO    ] Launching Daemon at Fri Jun 12 14:37:37 IST 2026
[2026-06-12 14:37:37,945.945 INFO    ] ================================================
[2026-06-12 14:37:38,312.312 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 14:37:38
[2026-06-12 14:37:38,625.625 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 14:37:38,768.768 INFO    ] Initializing speech engine...
[2026-06-12 14:37:38,773.773 INFO    ] 2026-06-12 14:37:38
[2026-06-12 14:37:38,975.975 INFO    ] 2026-06-12 14:37:38
[2026-06-12 14:37:39,003.003 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 14:37:39,209.209 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 14:37:39,214.214 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 14:37:39,401.401 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 14:37:39,412.412 INFO    ] time= 12/06/2026 14:37:39
[2026-06-12 14:37:39,418.418 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 14:37:39,419.419 INFO    ] Checking for existing commands in stream...
[2026-06-12 14:37:39,509.509 INFO    ] No existing commands found in stream
[2026-06-12 14:37:44,518.518 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 14:37:44,521.521 INFO    ] Waiting 3.05 seconds before fallback handling...
[2026-06-12 14:37:48,053.053 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 14:37:48,055.055 INFO    ] Checking for system updates...
[2026-06-12 14:37:48,075.075 INFO    ] 200
[2026-06-12 14:37:48,077.077 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:37:48,109.109 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 14:37:48,111.111 INFO    ] No update needed
[2026-06-12 14:37:48,112.112 INFO    ] Checking for camera pi updates...
[2026-06-12 14:37:48,131.131 INFO    ] 200
[2026-06-12 14:37:48,132.132 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:37:48,155.155 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 14:37:48,204.204 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 14:37:48,206.206 INFO    ] No camera update needed
[2026-06-12 14:37:48,207.207 INFO    ] Script finished. Safe exiting...
[2026-06-12 14:37:48,208.208 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 14:37:48,211.211 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 14:37:48,214.214 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 14:37:50,252.252 INFO    ] ================================================
[2026-06-12 14:37:50,267.267 INFO    ] Launching Daemon at Fri Jun 12 14:37:50 IST 2026
[2026-06-12 14:37:50,278.278 INFO    ] ================================================
[2026-06-12 14:37:50,612.612 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 14:37:50
[2026-06-12 14:37:50,924.924 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 14:37:51,055.055 INFO    ] Initializing speech engine...
[2026-06-12 14:37:51,063.063 INFO    ] 2026-06-12 14:37:51
[2026-06-12 14:37:51,274.274 INFO    ] 2026-06-12 14:37:51
[2026-06-12 14:37:51,303.303 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 14:37:51,493.493 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 14:37:51,509.509 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 14:37:51,701.701 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 14:37:51,726.726 INFO    ] time= 12/06/2026 14:37:51
[2026-06-12 14:37:51,732.732 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 14:37:51,733.733 INFO    ] Checking for existing commands in stream...
[2026-06-12 14:37:51,829.829 INFO    ] No existing commands found in stream
[2026-06-12 14:37:56,842.842 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 14:37:56,843.843 INFO    ] Waiting 3.27 seconds before fallback handling...
[2026-06-12 14:38:00,561.561 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 14:38:00,563.563 INFO    ] Checking for system updates...
[2026-06-12 14:38:00,583.583 INFO    ] 200
[2026-06-12 14:38:00,584.584 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:38:00,614.614 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 14:38:00,616.616 INFO    ] No update needed
[2026-06-12 14:38:00,617.617 INFO    ] Checking for camera pi updates...
[2026-06-12 14:38:00,637.637 INFO    ] 200
[2026-06-12 14:38:00,638.638 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:38:00,663.663 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 14:38:00,762.762 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 14:38:00,764.764 INFO    ] No camera update needed
[2026-06-12 14:38:00,765.765 INFO    ] Script finished. Safe exiting...
[2026-06-12 14:38:00,766.766 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 14:38:00,770.770 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 14:38:00,773.773 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 14:38:02,812.812 INFO    ] ================================================
[2026-06-12 14:38:02,820.820 INFO    ] Launching Daemon at Fri Jun 12 14:38:02 IST 2026
[2026-06-12 14:38:02,826.826 INFO    ] ================================================
[2026-06-12 14:38:03,157.157 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 14:38:03
[2026-06-12 14:38:03,497.497 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 14:38:03,647.647 INFO    ] Initializing speech engine...
[2026-06-12 14:38:03,652.652 INFO    ] 2026-06-12 14:38:03
[2026-06-12 14:38:03,862.862 INFO    ] 2026-06-12 14:38:03
[2026-06-12 14:38:03,917.917 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 14:38:04,158.158 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 14:38:04,166.166 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 14:38:04,393.393 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 14:38:04,431.431 INFO    ] time= 12/06/2026 14:38:04
[2026-06-12 14:38:04,433.433 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 14:38:04,438.438 INFO    ] Checking for existing commands in stream...
[2026-06-12 14:38:04,529.529 INFO    ] No existing commands found in stream
[2026-06-12 14:38:09,543.543 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 14:38:09,546.546 INFO    ] Waiting 0.40 seconds before fallback handling...
[2026-06-12 14:38:10,405.405 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 14:38:10,406.406 INFO    ] Checking for system updates...
[2026-06-12 14:38:10,426.426 INFO    ] 200
[2026-06-12 14:38:10,428.428 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:38:10,459.459 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 14:38:10,461.461 INFO    ] No update needed
[2026-06-12 14:38:10,462.462 INFO    ] Checking for camera pi updates...
[2026-06-12 14:38:10,481.481 INFO    ] 200
[2026-06-12 14:38:10,482.482 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:38:10,505.505 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 14:38:10,549.549 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 14:38:10,551.551 INFO    ] No camera update needed
[2026-06-12 14:38:10,552.552 INFO    ] Script finished. Safe exiting...
[2026-06-12 14:38:10,553.553 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 14:38:10,556.556 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 14:38:10,559.559 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 14:38:12,597.597 INFO    ] ================================================
[2026-06-12 14:38:12,612.612 INFO    ] Launching Daemon at Fri Jun 12 14:38:12 IST 2026
[2026-06-12 14:38:12,622.622 INFO    ] ================================================
[2026-06-12 14:38:12,955.955 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 14:38:12
[2026-06-12 14:38:13,270.270 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 14:38:13,413.413 INFO    ] Initializing speech engine...
[2026-06-12 14:38:13,418.418 INFO    ] 2026-06-12 14:38:13
[2026-06-12 14:38:13,623.623 INFO    ] 2026-06-12 14:38:13
[2026-06-12 14:38:13,651.651 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 14:38:13,844.844 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 14:38:13,858.858 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 14:38:14,058.058 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 14:38:14,064.064 INFO    ] time= 12/06/2026 14:38:14
[2026-06-12 14:38:14,066.066 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 14:38:14,067.067 INFO    ] Checking for existing commands in stream...
[2026-06-12 14:38:14,157.157 INFO    ] No existing commands found in stream
[2026-06-12 14:38:19,166.166 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 14:38:19,169.169 INFO    ] Waiting 3.14 seconds before fallback handling...
[2026-06-12 14:38:22,800.800 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 14:38:22,801.801 INFO    ] Checking for system updates...
[2026-06-12 14:38:22,821.821 INFO    ] 200
[2026-06-12 14:38:22,823.823 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:38:22,852.852 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 14:38:22,854.854 INFO    ] No update needed
[2026-06-12 14:38:22,855.855 INFO    ] Checking for camera pi updates...
[2026-06-12 14:38:22,874.874 INFO    ] 200
[2026-06-12 14:38:22,875.875 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:38:22,898.898 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 14:38:22,944.944 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 14:38:22,945.945 INFO    ] No camera update needed
[2026-06-12 14:38:22,947.947 INFO    ] Script finished. Safe exiting...
[2026-06-12 14:38:22,948.948 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 14:38:22,951.951 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 14:38:22,954.954 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 14:38:24,993.993 INFO    ] ================================================
[2026-06-12 14:38:25,009.009 INFO    ] Launching Daemon at Fri Jun 12 14:38:25 IST 2026
[2026-06-12 14:38:25,020.020 INFO    ] ================================================
[2026-06-12 14:38:25,374.374 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 14:38:25
[2026-06-12 14:38:25,687.687 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 14:38:25,825.825 INFO    ] Initializing speech engine...
[2026-06-12 14:38:25,835.835 INFO    ] 2026-06-12 14:38:25
[2026-06-12 14:38:26,041.041 INFO    ] 2026-06-12 14:38:26
[2026-06-12 14:38:26,070.070 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 14:38:26,254.254 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 14:38:26,262.262 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 14:38:26,458.458 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 14:38:26,480.480 INFO    ] time= 12/06/2026 14:38:26
[2026-06-12 14:38:26,486.486 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 14:38:26,488.488 INFO    ] Checking for existing commands in stream...
[2026-06-12 14:38:26,577.577 INFO    ] No existing commands found in stream
[2026-06-12 14:38:31,586.586 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 14:38:31,589.589 INFO    ] Waiting 2.07 seconds before fallback handling...
[2026-06-12 14:38:34,125.125 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 14:38:34,127.127 INFO    ] Checking for system updates...
[2026-06-12 14:38:34,148.148 INFO    ] 200
[2026-06-12 14:38:34,150.150 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:38:34,180.180 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 14:38:34,181.181 INFO    ] No update needed
[2026-06-12 14:38:34,183.183 INFO    ] Checking for camera pi updates...
[2026-06-12 14:38:34,203.203 INFO    ] 200
[2026-06-12 14:38:34,204.204 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:38:34,227.227 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 14:38:34,274.274 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 14:38:34,275.275 INFO    ] No camera update needed
[2026-06-12 14:38:34,276.276 INFO    ] Script finished. Safe exiting...
[2026-06-12 14:38:34,278.278 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 14:38:34,281.281 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 14:38:34,283.283 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 14:38:36,323.323 INFO    ] ================================================
[2026-06-12 14:38:36,339.339 INFO    ] Launching Daemon at Fri Jun 12 14:38:36 IST 2026
[2026-06-12 14:38:36,355.355 INFO    ] ================================================
[2026-06-12 14:38:36,726.726 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 14:38:36
[2026-06-12 14:38:37,062.062 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 14:38:37,215.215 INFO    ] Initializing speech engine...
[2026-06-12 14:38:37,235.235 INFO    ] 2026-06-12 14:38:37
[2026-06-12 14:38:37,475.475 INFO    ] 2026-06-12 14:38:37
[2026-06-12 14:38:37,504.504 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 14:38:37,709.709 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 14:38:37,714.714 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 14:38:37,911.911 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 14:38:37,917.917 INFO    ] time= 12/06/2026 14:38:37
[2026-06-12 14:38:37,919.919 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 14:38:37,921.921 INFO    ] Checking for existing commands in stream...
[2026-06-12 14:38:38,013.013 INFO    ] No existing commands found in stream
[2026-06-12 14:38:43,027.027 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 14:38:43,031.031 INFO    ] Waiting 0.40 seconds before fallback handling...
[2026-06-12 14:38:43,911.911 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 14:38:43,913.913 INFO    ] Checking for system updates...
[2026-06-12 14:38:43,935.935 INFO    ] 200
[2026-06-12 14:38:43,936.936 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:38:43,968.968 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 14:38:43,969.969 INFO    ] No update needed
[2026-06-12 14:38:43,971.971 INFO    ] Checking for camera pi updates...
[2026-06-12 14:38:43,991.991 INFO    ] 200
[2026-06-12 14:38:43,992.992 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:38:44,016.016 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 14:38:44,127.127 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 14:38:44,128.128 INFO    ] No camera update needed
[2026-06-12 14:38:44,129.129 INFO    ] Script finished. Safe exiting...
[2026-06-12 14:38:44,131.131 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 14:38:44,134.134 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 14:38:44,137.137 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 14:38:46,175.175 INFO    ] ================================================
[2026-06-12 14:38:46,191.191 INFO    ] Launching Daemon at Fri Jun 12 14:38:46 IST 2026
[2026-06-12 14:38:46,202.202 INFO    ] ================================================
[2026-06-12 14:38:46,566.566 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 14:38:46
[2026-06-12 14:38:46,882.882 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 14:38:47,011.011 INFO    ] Initializing speech engine...
[2026-06-12 14:38:47,016.016 INFO    ] 2026-06-12 14:38:47
[2026-06-12 14:38:47,234.234 INFO    ] 2026-06-12 14:38:47
[2026-06-12 14:38:47,264.264 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 14:38:47,469.469 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 14:38:47,474.474 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 14:38:47,650.650 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 14:38:47,671.671 INFO    ] time= 12/06/2026 14:38:47
[2026-06-12 14:38:47,677.677 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 14:38:47,678.678 INFO    ] Checking for existing commands in stream...
[2026-06-12 14:38:47,768.768 INFO    ] No existing commands found in stream
[2026-06-12 14:38:52,782.782 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 14:38:52,785.785 INFO    ] Waiting 1.86 seconds before fallback handling...
[2026-06-12 14:38:55,082.082 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 14:38:55,083.083 INFO    ] Checking for system updates...
[2026-06-12 14:38:55,104.104 INFO    ] 200
[2026-06-12 14:38:55,105.105 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:38:55,136.136 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 14:38:55,138.138 INFO    ] No update needed
[2026-06-12 14:38:55,139.139 INFO    ] Checking for camera pi updates...
[2026-06-12 14:38:55,159.159 INFO    ] 200
[2026-06-12 14:38:55,160.160 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:38:55,185.185 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 14:38:55,336.336 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 14:38:55,338.338 INFO    ] No camera update needed
[2026-06-12 14:38:55,339.339 INFO    ] Script finished. Safe exiting...
[2026-06-12 14:38:55,340.340 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 14:38:55,343.343 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 14:38:55,346.346 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 14:38:57,384.384 INFO    ] ================================================
[2026-06-12 14:38:57,400.400 INFO    ] Launching Daemon at Fri Jun 12 14:38:57 IST 2026
[2026-06-12 14:38:57,411.411 INFO    ] ================================================
[2026-06-12 14:38:57,762.762 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 14:38:57
[2026-06-12 14:38:58,081.081 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 14:38:58,211.211 INFO    ] Initializing speech engine...
[2026-06-12 14:38:58,216.216 INFO    ] 2026-06-12 14:38:58
[2026-06-12 14:38:58,433.433 INFO    ] 2026-06-12 14:38:58
[2026-06-12 14:38:58,462.462 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 14:38:58,654.654 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 14:38:58,669.669 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 14:38:58,867.867 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 14:38:58,873.873 INFO    ] time= 12/06/2026 14:38:58
[2026-06-12 14:38:58,879.879 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 14:38:58,880.880 INFO    ] Checking for existing commands in stream...
[2026-06-12 14:38:58,971.971 INFO    ] No existing commands found in stream
[2026-06-12 14:39:03,985.985 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 14:39:03,987.987 INFO    ] Waiting 2.91 seconds before fallback handling...
[2026-06-12 14:39:07,290.290 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 14:39:07,292.292 INFO    ] Checking for system updates...
[2026-06-12 14:39:07,313.313 INFO    ] 200
[2026-06-12 14:39:07,314.314 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:39:07,343.343 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 14:39:07,345.345 INFO    ] No update needed
[2026-06-12 14:39:07,346.346 INFO    ] Checking for camera pi updates...
[2026-06-12 14:39:07,367.367 INFO    ] 200
[2026-06-12 14:39:07,369.369 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:39:07,391.391 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 14:39:07,446.446 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 14:39:07,448.448 INFO    ] No camera update needed
[2026-06-12 14:39:07,449.449 INFO    ] Script finished. Safe exiting...
[2026-06-12 14:39:07,450.450 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 14:39:07,453.453 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 14:39:07,456.456 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 14:39:09,495.495 INFO    ] ================================================
[2026-06-12 14:39:09,511.511 INFO    ] Launching Daemon at Fri Jun 12 14:39:09 IST 2026
[2026-06-12 14:39:09,522.522 INFO    ] ================================================
[2026-06-12 14:39:09,863.863 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 14:39:09
[2026-06-12 14:39:10,183.183 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 14:39:10,326.326 INFO    ] Initializing speech engine...
[2026-06-12 14:39:10,331.331 INFO    ] 2026-06-12 14:39:10
[2026-06-12 14:39:10,535.535 INFO    ] 2026-06-12 14:39:10
[2026-06-12 14:39:10,564.564 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 14:39:10,747.747 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 14:39:10,756.756 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 14:39:10,883.883 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 14:39:10,939.939 INFO    ] time= 12/06/2026 14:39:10
[2026-06-12 14:39:10,976.976 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 14:39:10,978.978 INFO    ] Checking for existing commands in stream...
[2026-06-12 14:39:11,074.074 INFO    ] No existing commands found in stream
[2026-06-12 14:39:16,088.088 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 14:39:16,091.091 INFO    ] Waiting 3.99 seconds before fallback handling...
[2026-06-12 14:39:20,483.483 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 14:39:20,484.484 INFO    ] Checking for system updates...
[2026-06-12 14:39:20,505.505 INFO    ] 200
[2026-06-12 14:39:20,507.507 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:39:20,536.536 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 14:39:20,538.538 INFO    ] No update needed
[2026-06-12 14:39:20,539.539 INFO    ] Checking for camera pi updates...
[2026-06-12 14:39:20,558.558 INFO    ] 200
[2026-06-12 14:39:20,560.560 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:39:20,585.585 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 14:39:20,627.627 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 14:39:20,629.629 INFO    ] No camera update needed
[2026-06-12 14:39:20,631.631 INFO    ] Script finished. Safe exiting...
[2026-06-12 14:39:20,632.632 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 14:39:20,635.635 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 14:39:20,638.638 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 14:39:22,668.668 INFO    ] ================================================
[2026-06-12 14:39:22,676.676 INFO    ] Launching Daemon at Fri Jun 12 14:39:22 IST 2026
[2026-06-12 14:39:22,683.683 INFO    ] ================================================
[2026-06-12 14:39:22,998.998 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 14:39:22
[2026-06-12 14:39:23,314.314 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 14:39:23,458.458 INFO    ] Initializing speech engine...
[2026-06-12 14:39:23,463.463 INFO    ] 2026-06-12 14:39:23
[2026-06-12 14:39:23,666.666 INFO    ] 2026-06-12 14:39:23
[2026-06-12 14:39:23,694.694 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 14:39:23,877.877 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 14:39:23,889.889 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 14:39:24,035.035 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 14:39:24,082.082 INFO    ] time= 12/06/2026 14:39:24
[2026-06-12 14:39:24,104.104 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 14:39:24,110.110 INFO    ] Checking for existing commands in stream...
[2026-06-12 14:39:24,177.177 INFO    ] No existing commands found in stream
[2026-06-12 14:39:29,185.185 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 14:39:29,188.188 INFO    ] Waiting 2.21 seconds before fallback handling...
[2026-06-12 14:39:31,752.752 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 14:39:31,754.754 INFO    ] Checking for system updates...
[2026-06-12 14:39:31,774.774 INFO    ] 200
[2026-06-12 14:39:31,775.775 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:39:31,808.808 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 14:39:31,809.809 INFO    ] No update needed
[2026-06-12 14:39:31,811.811 INFO    ] Checking for camera pi updates...
[2026-06-12 14:39:31,830.830 INFO    ] 200
[2026-06-12 14:39:31,831.831 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:39:31,854.854 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 14:39:31,908.908 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 14:39:31,909.909 INFO    ] No camera update needed
[2026-06-12 14:39:31,911.911 INFO    ] Script finished. Safe exiting...
[2026-06-12 14:39:31,912.912 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 14:39:31,915.915 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 14:39:31,919.919 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 14:39:33,951.951 INFO    ] ================================================
[2026-06-12 14:39:33,967.967 INFO    ] Launching Daemon at Fri Jun 12 14:39:33 IST 2026
[2026-06-12 14:39:33,978.978 INFO    ] ================================================
[2026-06-12 14:39:34,350.350 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 14:39:34
[2026-06-12 14:39:34,684.684 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 14:39:34,837.837 INFO    ] Initializing speech engine...
[2026-06-12 14:39:34,840.840 INFO    ] 2026-06-12 14:39:34
[2026-06-12 14:39:35,051.051 INFO    ] 2026-06-12 14:39:35
[2026-06-12 14:39:35,079.079 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 14:39:35,265.265 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 14:39:35,275.275 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 14:39:35,412.412 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 14:39:35,475.475 INFO    ] time= 12/06/2026 14:39:35
[2026-06-12 14:39:35,499.499 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 14:39:35,506.506 INFO    ] Checking for existing commands in stream...
[2026-06-12 14:39:35,574.574 INFO    ] No existing commands found in stream
[2026-06-12 14:39:40,588.588 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 14:39:40,591.591 INFO    ] Waiting 3.02 seconds before fallback handling...
[2026-06-12 14:39:44,011.011 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 14:39:44,012.012 INFO    ] Checking for system updates...
[2026-06-12 14:39:44,034.034 INFO    ] 200
[2026-06-12 14:39:44,035.035 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:39:44,068.068 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 14:39:44,069.069 INFO    ] No update needed
[2026-06-12 14:39:44,071.071 INFO    ] Checking for camera pi updates...
[2026-06-12 14:39:44,092.092 INFO    ] 200
[2026-06-12 14:39:44,093.093 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:39:44,120.120 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 14:39:44,161.161 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 14:39:44,163.163 INFO    ] No camera update needed
[2026-06-12 14:39:44,164.164 INFO    ] Script finished. Safe exiting...
[2026-06-12 14:39:44,165.165 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 14:39:44,168.168 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 14:39:44,171.171 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 14:39:46,209.209 INFO    ] ================================================
[2026-06-12 14:39:46,224.224 INFO    ] Launching Daemon at Fri Jun 12 14:39:46 IST 2026
[2026-06-12 14:39:46,236.236 INFO    ] ================================================
[2026-06-12 14:39:46,564.564 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 14:39:46
[2026-06-12 14:39:46,876.876 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 14:39:47,018.018 INFO    ] Initializing speech engine...
[2026-06-12 14:39:47,024.024 INFO    ] 2026-06-12 14:39:47
[2026-06-12 14:39:47,228.228 INFO    ] 2026-06-12 14:39:47
[2026-06-12 14:39:47,256.256 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 14:39:47,446.446 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 14:39:47,455.455 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 14:39:47,586.586 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 14:39:47,653.653 INFO    ] time= 12/06/2026 14:39:47
[2026-06-12 14:39:47,677.677 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 14:39:47,683.683 INFO    ] Checking for existing commands in stream...
[2026-06-12 14:39:47,755.755 INFO    ] No existing commands found in stream
[2026-06-12 14:39:52,764.764 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 14:39:52,767.767 INFO    ] Waiting 0.97 seconds before fallback handling...
[2026-06-12 14:39:54,101.101 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 14:39:54,102.102 INFO    ] Checking for system updates...
[2026-06-12 14:39:54,123.123 INFO    ] 200
[2026-06-12 14:39:54,124.124 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:39:54,154.154 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 14:39:54,156.156 INFO    ] No update needed
[2026-06-12 14:39:54,157.157 INFO    ] Checking for camera pi updates...
[2026-06-12 14:39:54,177.177 INFO    ] 200
[2026-06-12 14:39:54,179.179 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:39:54,206.206 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 14:39:54,253.253 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 14:39:54,254.254 INFO    ] No camera update needed
[2026-06-12 14:39:54,256.256 INFO    ] Script finished. Safe exiting...
[2026-06-12 14:39:54,257.257 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 14:39:54,260.260 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 14:39:54,263.263 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 14:39:56,301.301 INFO    ] ================================================
[2026-06-12 14:39:56,317.317 INFO    ] Launching Daemon at Fri Jun 12 14:39:56 IST 2026
[2026-06-12 14:39:56,329.329 INFO    ] ================================================
[2026-06-12 14:39:56,697.697 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 14:39:56
[2026-06-12 14:39:57,033.033 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 14:39:57,183.183 INFO    ] Initializing speech engine...
[2026-06-12 14:39:57,189.189 INFO    ] 2026-06-12 14:39:57
[2026-06-12 14:39:57,406.406 INFO    ] 2026-06-12 14:39:57
[2026-06-12 14:39:57,435.435 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 14:39:57,619.619 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 14:39:57,628.628 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 14:39:57,772.772 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 14:39:57,826.826 INFO    ] time= 12/06/2026 14:39:57
[2026-06-12 14:39:57,848.848 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 14:39:57,854.854 INFO    ] Checking for existing commands in stream...
[2026-06-12 14:39:57,920.920 INFO    ] No existing commands found in stream
[2026-06-12 14:40:02,932.932 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 14:40:02,934.934 INFO    ] Waiting 0.13 seconds before fallback handling...
[2026-06-12 14:40:07,077.077 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 14:40:07,080.080 INFO    ] Checking for system updates...
[2026-06-12 14:40:07,117.117 INFO    ] 200
[2026-06-12 14:40:07,119.119 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:40:07,178.178 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 14:40:07,181.181 INFO    ] No update needed
[2026-06-12 14:40:07,184.184 INFO    ] Checking for camera pi updates...
[2026-06-12 14:40:07,222.222 INFO    ] 200
[2026-06-12 14:40:07,225.225 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:40:07,265.265 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 14:40:07,294.294 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 14:40:07,296.296 INFO    ] No camera update needed
[2026-06-12 14:40:07,303.303 INFO    ] Script finished. Safe exiting...
[2026-06-12 14:40:07,304.304 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 14:40:07,308.308 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 14:40:07,311.311 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 14:40:09,349.349 INFO    ] ================================================
[2026-06-12 14:40:09,365.365 INFO    ] Launching Daemon at Fri Jun 12 14:40:09 IST 2026
[2026-06-12 14:40:09,377.377 INFO    ] ================================================
[2026-06-12 14:40:09,737.737 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 14:40:09
[2026-06-12 14:40:10,077.077 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 14:40:10,228.228 INFO    ] Initializing speech engine...
[2026-06-12 14:40:10,234.234 INFO    ] 2026-06-12 14:40:10
[2026-06-12 14:40:10,443.443 INFO    ] 2026-06-12 14:40:10
[2026-06-12 14:40:10,472.472 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 14:40:10,650.650 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 14:40:10,665.665 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 14:40:10,805.805 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 14:40:10,875.875 INFO    ] time= 12/06/2026 14:40:10
[2026-06-12 14:40:10,904.904 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 14:40:10,948.948 INFO    ] Checking for existing commands in stream...
[2026-06-12 14:40:11,028.028 INFO    ] No existing commands found in stream
[2026-06-12 14:40:16,042.042 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 14:40:16,045.045 INFO    ] Waiting 0.87 seconds before fallback handling...
[2026-06-12 14:40:17,301.301 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 14:40:17,303.303 INFO    ] Checking for system updates...
[2026-06-12 14:40:17,323.323 INFO    ] 200
[2026-06-12 14:40:17,325.325 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:40:17,358.358 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 14:40:17,360.360 INFO    ] No update needed
[2026-06-12 14:40:17,362.362 INFO    ] Checking for camera pi updates...
[2026-06-12 14:40:17,382.382 INFO    ] 200
[2026-06-12 14:40:17,384.384 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:40:17,407.407 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 14:40:17,449.449 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 14:40:17,450.450 INFO    ] No camera update needed
[2026-06-12 14:40:17,452.452 INFO    ] Script finished. Safe exiting...
[2026-06-12 14:40:17,453.453 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 14:40:17,456.456 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 14:40:17,459.459 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 14:40:19,497.497 INFO    ] ================================================
[2026-06-12 14:40:19,513.513 INFO    ] Launching Daemon at Fri Jun 12 14:40:19 IST 2026
[2026-06-12 14:40:19,525.525 INFO    ] ================================================
[2026-06-12 14:40:19,854.854 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 14:40:19
[2026-06-12 14:40:20,166.166 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 14:40:20,300.300 INFO    ] Initializing speech engine...
[2026-06-12 14:40:20,304.304 INFO    ] 2026-06-12 14:40:20
[2026-06-12 14:40:20,520.520 INFO    ] 2026-06-12 14:40:20
[2026-06-12 14:40:20,548.548 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 14:40:20,760.760 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 14:40:20,769.769 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 14:40:20,908.908 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 14:40:20,970.970 INFO    ] time= 12/06/2026 14:40:20
[2026-06-12 14:40:21,011.011 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 14:40:21,017.017 INFO    ] Checking for existing commands in stream...
[2026-06-12 14:40:21,092.092 INFO    ] No existing commands found in stream
[2026-06-12 14:40:26,102.102 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 14:40:26,105.105 INFO    ] Waiting 3.12 seconds before fallback handling...
[2026-06-12 14:40:29,619.619 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 14:40:29,620.620 INFO    ] Checking for system updates...
[2026-06-12 14:40:29,642.642 INFO    ] 200
[2026-06-12 14:40:29,643.643 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:40:29,673.673 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 14:40:29,674.674 INFO    ] No update needed
[2026-06-12 14:40:29,675.675 INFO    ] Checking for camera pi updates...
[2026-06-12 14:40:29,694.694 INFO    ] 200
[2026-06-12 14:40:29,695.695 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:40:29,722.722 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 14:40:29,766.766 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 14:40:29,768.768 INFO    ] No camera update needed
[2026-06-12 14:40:29,769.769 INFO    ] Script finished. Safe exiting...
[2026-06-12 14:40:29,770.770 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 14:40:29,773.773 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 14:40:29,776.776 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 14:40:31,814.814 INFO    ] ================================================
[2026-06-12 14:40:31,832.832 INFO    ] Launching Daemon at Fri Jun 12 14:40:31 IST 2026
[2026-06-12 14:40:31,842.842 INFO    ] ================================================
[2026-06-12 14:40:32,175.175 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 14:40:32
[2026-06-12 14:40:32,516.516 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 14:40:32,667.667 INFO    ] Initializing speech engine...
[2026-06-12 14:40:32,671.671 INFO    ] 2026-06-12 14:40:32
[2026-06-12 14:40:32,880.880 INFO    ] 2026-06-12 14:40:32
[2026-06-12 14:40:32,930.930 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 14:40:33,096.096 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 14:40:33,149.149 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 14:40:33,305.305 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 14:40:33,378.378 INFO    ] time= 12/06/2026 14:40:33
[2026-06-12 14:40:33,411.411 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 14:40:33,413.413 INFO    ] Checking for existing commands in stream...
[2026-06-12 14:40:33,489.489 INFO    ] No existing commands found in stream
[2026-06-12 14:40:38,500.500 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 14:40:38,503.503 INFO    ] Waiting 1.44 seconds before fallback handling...
[2026-06-12 14:40:40,324.324 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 14:40:40,326.326 INFO    ] Checking for system updates...
[2026-06-12 14:40:40,347.347 INFO    ] 200
[2026-06-12 14:40:40,348.348 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:40:40,378.378 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 14:40:40,379.379 INFO    ] No update needed
[2026-06-12 14:40:40,380.380 INFO    ] Checking for camera pi updates...
[2026-06-12 14:40:40,400.400 INFO    ] 200
[2026-06-12 14:40:40,401.401 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:40:40,424.424 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 14:40:40,469.469 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 14:40:40,470.470 INFO    ] No camera update needed
[2026-06-12 14:40:40,471.471 INFO    ] Script finished. Safe exiting...
[2026-06-12 14:40:40,473.473 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 14:40:40,475.475 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 14:40:40,478.478 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 14:40:42,516.516 INFO    ] ================================================
[2026-06-12 14:40:42,531.531 INFO    ] Launching Daemon at Fri Jun 12 14:40:42 IST 2026
[2026-06-12 14:40:42,542.542 INFO    ] ================================================
[2026-06-12 14:40:42,893.893 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 14:40:42
[2026-06-12 14:40:43,228.228 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 14:40:43,379.379 INFO    ] Initializing speech engine...
[2026-06-12 14:40:43,385.385 INFO    ] 2026-06-12 14:40:43
[2026-06-12 14:40:43,594.594 INFO    ] 2026-06-12 14:40:43
[2026-06-12 14:40:43,623.623 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 14:40:43,757.757 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 14:40:43,811.811 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 14:40:43,949.949 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 14:40:44,015.015 INFO    ] time= 12/06/2026 14:40:43
[2026-06-12 14:40:44,044.044 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 14:40:44,050.050 INFO    ] Checking for existing commands in stream...
[2026-06-12 14:40:44,118.118 INFO    ] No existing commands found in stream
[2026-06-12 14:40:49,143.143 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 14:40:49,146.146 INFO    ] Waiting 0.28 seconds before fallback handling...
[2026-06-12 14:40:49,803.803 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 14:40:49,804.804 INFO    ] Checking for system updates...
[2026-06-12 14:40:49,825.825 INFO    ] 200
[2026-06-12 14:40:49,826.826 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:40:49,858.858 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 14:40:49,860.860 INFO    ] No update needed
[2026-06-12 14:40:49,861.861 INFO    ] Checking for camera pi updates...
[2026-06-12 14:40:49,881.881 INFO    ] 200
[2026-06-12 14:40:49,882.882 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:40:49,906.906 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 14:40:49,948.948 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 14:40:49,949.949 INFO    ] No camera update needed
[2026-06-12 14:40:49,951.951 INFO    ] Script finished. Safe exiting...
[2026-06-12 14:40:49,952.952 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 14:40:49,955.955 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 14:40:49,958.958 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 14:40:52,995.995 INFO    ] ================================================
[2026-06-12 14:40:52,010.010 INFO    ] Launching Daemon at Fri Jun 12 14:40:52 IST 2026
[2026-06-12 14:40:52,020.020 INFO    ] ================================================
[2026-06-12 14:40:52,382.382 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 14:40:52
[2026-06-12 14:40:52,701.701 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 14:40:52,844.844 INFO    ] Initializing speech engine...
[2026-06-12 14:40:52,849.849 INFO    ] 2026-06-12 14:40:52
[2026-06-12 14:40:53,053.053 INFO    ] 2026-06-12 14:40:53
[2026-06-12 14:40:53,081.081 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 14:40:53,265.265 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 14:40:53,273.273 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 14:40:53,400.400 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 14:40:53,469.469 INFO    ] time= 12/06/2026 14:40:53
[2026-06-12 14:40:53,493.493 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 14:40:53,499.499 INFO    ] Checking for existing commands in stream...
[2026-06-12 14:40:53,589.589 INFO    ] No existing commands found in stream
[2026-06-12 14:40:58,598.598 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 14:40:58,601.601 INFO    ] Waiting 2.65 seconds before fallback handling...
[2026-06-12 14:41:01,671.671 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 14:41:01,674.674 INFO    ] Checking for system updates...
[2026-06-12 14:41:01,707.707 INFO    ] 200
[2026-06-12 14:41:01,709.709 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:41:01,758.758 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 14:41:01,761.761 INFO    ] No update needed
[2026-06-12 14:41:01,763.763 INFO    ] Checking for camera pi updates...
[2026-06-12 14:41:01,790.790 INFO    ] 200
[2026-06-12 14:41:01,792.792 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:41:01,823.823 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 14:41:01,963.963 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 14:41:01,965.965 INFO    ] No camera update needed
[2026-06-12 14:41:01,967.967 INFO    ] Script finished. Safe exiting...
[2026-06-12 14:41:01,969.969 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 14:41:01,973.973 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 14:41:01,977.977 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 14:41:04,015.015 INFO    ] ================================================
[2026-06-12 14:41:04,030.030 INFO    ] Launching Daemon at Fri Jun 12 14:41:04 IST 2026
[2026-06-12 14:41:04,041.041 INFO    ] ================================================
[2026-06-12 14:41:04,407.407 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 14:41:04
[2026-06-12 14:41:04,723.723 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 14:41:04,867.867 INFO    ] Initializing speech engine...
[2026-06-12 14:41:04,872.872 INFO    ] 2026-06-12 14:41:04
[2026-06-12 14:41:05,077.077 INFO    ] 2026-06-12 14:41:05
[2026-06-12 14:41:05,104.104 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 14:41:05,288.288 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 14:41:05,291.291 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 14:41:05,448.448 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 14:41:05,496.496 INFO    ] time= 12/06/2026 14:41:05
[2026-06-12 14:41:05,521.521 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 14:41:05,532.532 INFO    ] Checking for existing commands in stream...
[2026-06-12 14:41:05,605.605 INFO    ] No existing commands found in stream
[2026-06-12 14:41:10,616.616 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 14:41:10,619.619 INFO    ] Waiting 2.10 seconds before fallback handling...
[2026-06-12 14:41:13,100.100 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 14:41:13,102.102 INFO    ] Checking for system updates...
[2026-06-12 14:41:13,123.123 INFO    ] 200
[2026-06-12 14:41:13,125.125 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:41:13,157.157 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 14:41:13,158.158 INFO    ] No update needed
[2026-06-12 14:41:13,160.160 INFO    ] Checking for camera pi updates...
[2026-06-12 14:41:13,181.181 INFO    ] 200
[2026-06-12 14:41:13,183.183 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:41:13,207.207 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 14:41:13,256.256 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 14:41:13,257.257 INFO    ] No camera update needed
[2026-06-12 14:41:13,258.258 INFO    ] Script finished. Safe exiting...
[2026-06-12 14:41:13,259.259 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 14:41:13,263.263 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 14:41:13,265.265 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 14:41:15,303.303 INFO    ] ================================================
[2026-06-12 14:41:15,318.318 INFO    ] Launching Daemon at Fri Jun 12 14:41:15 IST 2026
[2026-06-12 14:41:15,328.328 INFO    ] ================================================
[2026-06-12 14:41:15,662.662 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 14:41:15
[2026-06-12 14:41:15,973.973 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 14:41:16,104.104 INFO    ] Initializing speech engine...
[2026-06-12 14:41:16,118.118 INFO    ] 2026-06-12 14:41:16
[2026-06-12 14:41:16,325.325 INFO    ] 2026-06-12 14:41:16
[2026-06-12 14:41:16,355.355 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 14:41:16,539.539 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 14:41:16,543.543 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 14:41:16,680.680 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 14:41:16,749.749 INFO    ] time= 12/06/2026 14:41:16
[2026-06-12 14:41:16,773.773 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 14:41:16,774.774 INFO    ] Checking for existing commands in stream...
[2026-06-12 14:41:16,847.847 INFO    ] No existing commands found in stream
[2026-06-12 14:41:21,855.855 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 14:41:21,858.858 INFO    ] Waiting 3.59 seconds before fallback handling...
[2026-06-12 14:41:25,829.829 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 14:41:25,831.831 INFO    ] Checking for system updates...
[2026-06-12 14:41:25,851.851 INFO    ] 200
[2026-06-12 14:41:25,852.852 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:41:25,882.882 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 14:41:25,883.883 INFO    ] No update needed
[2026-06-12 14:41:25,884.884 INFO    ] Checking for camera pi updates...
[2026-06-12 14:41:25,905.905 INFO    ] 200
[2026-06-12 14:41:25,906.906 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:41:25,929.929 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 14:41:25,986.986 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 14:41:25,987.987 INFO    ] No camera update needed
[2026-06-12 14:41:25,989.989 INFO    ] Script finished. Safe exiting...
[2026-06-12 14:41:25,990.990 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 14:41:25,993.993 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 14:41:25,996.996 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 14:41:28,034.034 INFO    ] ================================================
[2026-06-12 14:41:28,050.050 INFO    ] Launching Daemon at Fri Jun 12 14:41:28 IST 2026
[2026-06-12 14:41:28,062.062 INFO    ] ================================================
[2026-06-12 14:41:28,420.420 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 14:41:28
[2026-06-12 14:41:28,753.753 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 14:41:28,904.904 INFO    ] Initializing speech engine...
[2026-06-12 14:41:28,909.909 INFO    ] 2026-06-12 14:41:28
[2026-06-12 14:41:29,119.119 INFO    ] 2026-06-12 14:41:29
[2026-06-12 14:41:29,148.148 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 14:41:29,287.287 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 14:41:29,336.336 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 14:41:29,486.486 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 14:41:29,545.545 INFO    ] time= 12/06/2026 14:41:29
[2026-06-12 14:41:29,568.568 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 14:41:29,575.575 INFO    ] Checking for existing commands in stream...
[2026-06-12 14:41:29,642.642 INFO    ] No existing commands found in stream
[2026-06-12 14:41:34,656.656 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 14:41:34,659.659 INFO    ] Waiting 2.24 seconds before fallback handling...
[2026-06-12 14:41:37,325.325 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 14:41:37,327.327 INFO    ] Checking for system updates...
[2026-06-12 14:41:37,348.348 INFO    ] 200
[2026-06-12 14:41:37,350.350 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:41:37,382.382 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 14:41:37,384.384 INFO    ] No update needed
[2026-06-12 14:41:37,385.385 INFO    ] Checking for camera pi updates...
[2026-06-12 14:41:37,404.404 INFO    ] 200
[2026-06-12 14:41:37,406.406 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:41:37,430.430 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 14:41:37,478.478 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 14:41:37,479.479 INFO    ] No camera update needed
[2026-06-12 14:41:37,481.481 INFO    ] Script finished. Safe exiting...
[2026-06-12 14:41:37,482.482 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 14:41:37,485.485 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 14:41:37,488.488 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 14:41:39,526.526 INFO    ] ================================================
[2026-06-12 14:41:39,542.542 INFO    ] Launching Daemon at Fri Jun 12 14:41:39 IST 2026
[2026-06-12 14:41:39,553.553 INFO    ] ================================================
[2026-06-12 14:41:39,885.885 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 14:41:39
[2026-06-12 14:41:40,196.196 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 14:41:40,339.339 INFO    ] Initializing speech engine...
[2026-06-12 14:41:40,344.344 INFO    ] 2026-06-12 14:41:40
[2026-06-12 14:41:40,550.550 INFO    ] 2026-06-12 14:41:40
[2026-06-12 14:41:40,579.579 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 14:41:40,763.763 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 14:41:40,773.773 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 14:41:40,905.905 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 14:41:40,972.972 INFO    ] time= 12/06/2026 14:41:40
[2026-06-12 14:41:40,997.997 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 14:41:41,003.003 INFO    ] Checking for existing commands in stream...
[2026-06-12 14:41:41,070.070 INFO    ] No existing commands found in stream
[2026-06-12 14:41:46,079.079 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 14:41:46,082.082 INFO    ] Waiting 2.30 seconds before fallback handling...
[2026-06-12 14:41:48,775.775 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 14:41:48,777.777 INFO    ] Checking for system updates...
[2026-06-12 14:41:48,797.797 INFO    ] 200
[2026-06-12 14:41:48,799.799 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:41:48,828.828 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 14:41:48,830.830 INFO    ] No update needed
[2026-06-12 14:41:48,831.831 INFO    ] Checking for camera pi updates...
[2026-06-12 14:41:48,850.850 INFO    ] 200
[2026-06-12 14:41:48,852.852 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:41:48,874.874 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 14:41:48,915.915 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 14:41:48,916.916 INFO    ] No camera update needed
[2026-06-12 14:41:48,918.918 INFO    ] Script finished. Safe exiting...
[2026-06-12 14:41:48,919.919 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 14:41:48,922.922 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 14:41:48,925.925 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 14:41:50,966.966 INFO    ] ================================================
[2026-06-12 14:41:50,981.981 INFO    ] Launching Daemon at Fri Jun 12 14:41:50 IST 2026
[2026-06-12 14:41:50,992.992 INFO    ] ================================================
[2026-06-12 14:41:51,358.358 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 14:41:51
[2026-06-12 14:41:51,692.692 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 14:41:51,830.830 INFO    ] Initializing speech engine...
[2026-06-12 14:41:51,839.839 INFO    ] 2026-06-12 14:41:51
[2026-06-12 14:41:52,057.057 INFO    ] 2026-06-12 14:41:52
[2026-06-12 14:41:52,086.086 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 14:41:52,273.273 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 14:41:52,283.283 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 14:41:52,416.416 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 14:41:52,480.480 INFO    ] time= 12/06/2026 14:41:52
[2026-06-12 14:41:52,509.509 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 14:41:52,516.516 INFO    ] Checking for existing commands in stream...
[2026-06-12 14:41:52,584.584 INFO    ] No existing commands found in stream
[2026-06-12 14:41:57,613.613 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 14:41:57,617.617 INFO    ] Waiting 2.18 seconds before fallback handling...
[2026-06-12 14:42:00,180.180 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 14:42:00,182.182 INFO    ] Checking for system updates...
[2026-06-12 14:42:00,202.202 INFO    ] 200
[2026-06-12 14:42:00,203.203 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:42:00,234.234 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 14:42:00,236.236 INFO    ] No update needed
[2026-06-12 14:42:00,237.237 INFO    ] Checking for camera pi updates...
[2026-06-12 14:42:00,256.256 INFO    ] 200
[2026-06-12 14:42:00,257.257 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:42:00,281.281 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 14:42:00,335.335 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 14:42:00,336.336 INFO    ] No camera update needed
[2026-06-12 14:42:00,337.337 INFO    ] Script finished. Safe exiting...
[2026-06-12 14:42:00,338.338 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 14:42:00,342.342 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 14:42:00,344.344 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 14:42:02,376.376 INFO    ] ================================================
[2026-06-12 14:42:02,391.391 INFO    ] Launching Daemon at Fri Jun 12 14:42:02 IST 2026
[2026-06-12 14:42:02,397.397 INFO    ] ================================================
[2026-06-12 14:42:02,729.729 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 14:42:02
[2026-06-12 14:42:03,041.041 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 14:42:03,170.170 INFO    ] Initializing speech engine...
[2026-06-12 14:42:03,175.175 INFO    ] 2026-06-12 14:42:03
[2026-06-12 14:42:03,397.397 INFO    ] 2026-06-12 14:42:03
[2026-06-12 14:42:03,427.427 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 14:42:03,550.550 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 14:42:03,613.613 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 14:42:03,747.747 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 14:42:03,803.803 INFO    ] time= 12/06/2026 14:42:03
[2026-06-12 14:42:03,832.832 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 14:42:03,848.848 INFO    ] Checking for existing commands in stream...
[2026-06-12 14:42:03,921.921 INFO    ] No existing commands found in stream
[2026-06-12 14:42:08,929.929 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 14:42:08,932.932 INFO    ] Waiting 3.90 seconds before fallback handling...
[2026-06-12 14:42:13,219.219 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 14:42:13,220.220 INFO    ] Checking for system updates...
[2026-06-12 14:42:13,241.241 INFO    ] 200
[2026-06-12 14:42:13,242.242 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:42:13,273.273 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 14:42:13,274.274 INFO    ] No update needed
[2026-06-12 14:42:13,275.275 INFO    ] Checking for camera pi updates...
[2026-06-12 14:42:13,295.295 INFO    ] 200
[2026-06-12 14:42:13,297.297 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:42:13,321.321 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 14:42:13,356.356 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 14:42:13,357.357 INFO    ] No camera update needed
[2026-06-12 14:42:13,358.358 INFO    ] Script finished. Safe exiting...
[2026-06-12 14:42:13,360.360 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 14:42:13,363.363 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 14:42:13,365.365 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 14:42:15,405.405 INFO    ] ================================================
[2026-06-12 14:42:15,421.421 INFO    ] Launching Daemon at Fri Jun 12 14:42:15 IST 2026
[2026-06-12 14:42:15,431.431 INFO    ] ================================================
[2026-06-12 14:42:15,793.793 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 14:42:15
[2026-06-12 14:42:16,105.105 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 14:42:16,235.235 INFO    ] Initializing speech engine...
[2026-06-12 14:42:16,243.243 INFO    ] 2026-06-12 14:42:16
[2026-06-12 14:42:16,453.453 INFO    ] 2026-06-12 14:42:16
[2026-06-12 14:42:16,483.483 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 14:42:16,667.667 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 14:42:16,676.676 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 14:42:16,827.827 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 14:42:16,878.878 INFO    ] time= 12/06/2026 14:42:16
[2026-06-12 14:42:16,899.899 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 14:42:16,906.906 INFO    ] Checking for existing commands in stream...
[2026-06-12 14:42:16,973.973 INFO    ] No existing commands found in stream
[2026-06-12 14:42:21,982.982 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 14:42:21,985.985 INFO    ] Waiting 0.58 seconds before fallback handling...
[2026-06-12 14:42:22,918.918 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 14:42:22,920.920 INFO    ] Checking for system updates...
[2026-06-12 14:42:22,940.940 INFO    ] 200
[2026-06-12 14:42:22,942.942 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:42:22,972.972 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 14:42:22,973.973 INFO    ] No update needed
[2026-06-12 14:42:22,974.974 INFO    ] Checking for camera pi updates...
[2026-06-12 14:42:22,993.993 INFO    ] 200
[2026-06-12 14:42:22,994.994 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:42:23,019.019 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 14:42:23,062.062 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 14:42:23,063.063 INFO    ] No camera update needed
[2026-06-12 14:42:23,065.065 INFO    ] Script finished. Safe exiting...
[2026-06-12 14:42:23,066.066 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 14:42:23,069.069 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 14:42:23,072.072 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 14:42:25,113.113 INFO    ] ================================================
[2026-06-12 14:42:25,129.129 INFO    ] Launching Daemon at Fri Jun 12 14:42:25 IST 2026
[2026-06-12 14:42:25,140.140 INFO    ] ================================================
[2026-06-12 14:42:25,517.517 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 14:42:25
[2026-06-12 14:42:25,857.857 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 14:42:26,009.009 INFO    ] Initializing speech engine...
[2026-06-12 14:42:26,014.014 INFO    ] 2026-06-12 14:42:26
[2026-06-12 14:42:26,222.222 INFO    ] 2026-06-12 14:42:26
[2026-06-12 14:42:26,250.250 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 14:42:26,435.435 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 14:42:26,445.445 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 14:42:26,586.586 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 14:42:26,644.644 INFO    ] time= 12/06/2026 14:42:26
[2026-06-12 14:42:26,667.667 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 14:42:26,674.674 INFO    ] Checking for existing commands in stream...
[2026-06-12 14:42:26,740.740 INFO    ] No existing commands found in stream
[2026-06-12 14:42:31,763.763 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 14:42:31,766.766 INFO    ] Waiting 2.74 seconds before fallback handling...
[2026-06-12 14:42:34,828.828 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 14:42:34,831.831 INFO    ] Checking for system updates...
[2026-06-12 14:42:34,868.868 INFO    ] 200
[2026-06-12 14:42:34,871.871 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:42:34,930.930 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 14:42:34,933.933 INFO    ] No update needed
[2026-06-12 14:42:34,936.936 INFO    ] Checking for camera pi updates...
[2026-06-12 14:42:34,974.974 INFO    ] 200
[2026-06-12 14:42:34,977.977 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:42:35,016.016 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 14:42:35,070.070 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 14:42:35,071.071 INFO    ] No camera update needed
[2026-06-12 14:42:35,073.073 INFO    ] Script finished. Safe exiting...
[2026-06-12 14:42:35,074.074 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 14:42:35,077.077 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 14:42:35,080.080 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 14:42:37,119.119 INFO    ] ================================================
[2026-06-12 14:42:37,142.142 INFO    ] Launching Daemon at Fri Jun 12 14:42:37 IST 2026
[2026-06-12 14:42:37,153.153 INFO    ] ================================================
[2026-06-12 14:42:37,476.476 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 14:42:37
[2026-06-12 14:42:37,788.788 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 14:42:37,925.925 INFO    ] Initializing speech engine...
[2026-06-12 14:42:37,935.935 INFO    ] 2026-06-12 14:42:37
[2026-06-12 14:42:38,137.137 INFO    ] 2026-06-12 14:42:38
[2026-06-12 14:42:38,166.166 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 14:42:38,350.350 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 14:42:38,358.358 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 14:42:38,508.508 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 14:42:38,555.555 INFO    ] time= 12/06/2026 14:42:38
[2026-06-12 14:42:38,577.577 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 14:42:38,583.583 INFO    ] Checking for existing commands in stream...
[2026-06-12 14:42:38,650.650 INFO    ] No existing commands found in stream
[2026-06-12 14:42:43,664.664 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 14:42:43,667.667 INFO    ] Waiting 1.29 seconds before fallback handling...
[2026-06-12 14:42:45,346.346 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 14:42:45,348.348 INFO    ] Checking for system updates...
[2026-06-12 14:42:45,388.388 INFO    ] 200
[2026-06-12 14:42:45,391.391 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:42:45,442.442 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 14:42:45,445.445 INFO    ] No update needed
[2026-06-12 14:42:45,447.447 INFO    ] Checking for camera pi updates...
[2026-06-12 14:42:45,482.482 INFO    ] 200
[2026-06-12 14:42:45,485.485 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:42:45,530.530 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 14:42:45,577.577 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 14:42:45,580.580 INFO    ] No camera update needed
[2026-06-12 14:42:45,582.582 INFO    ] Script finished. Safe exiting...
[2026-06-12 14:42:45,585.585 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 14:42:45,590.590 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 14:42:45,595.595 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 14:42:47,636.636 INFO    ] ================================================
[2026-06-12 14:42:47,652.652 INFO    ] Launching Daemon at Fri Jun 12 14:42:47 IST 2026
[2026-06-12 14:42:47,664.664 INFO    ] ================================================
[2026-06-12 14:42:48,020.020 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 14:42:48
[2026-06-12 14:42:48,333.333 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 14:42:48,462.462 INFO    ] Initializing speech engine...
[2026-06-12 14:42:48,470.470 INFO    ] 2026-06-12 14:42:48
[2026-06-12 14:42:48,681.681 INFO    ] 2026-06-12 14:42:48
[2026-06-12 14:42:48,710.710 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 14:42:48,892.892 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 14:42:48,902.902 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 14:42:49,047.047 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 14:42:49,101.101 INFO    ] time= 12/06/2026 14:42:49
[2026-06-12 14:42:49,122.122 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 14:42:49,128.128 INFO    ] Checking for existing commands in stream...
[2026-06-12 14:42:49,194.194 INFO    ] No existing commands found in stream
[2026-06-12 14:42:54,214.214 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 14:42:54,216.216 INFO    ] Waiting 3.02 seconds before fallback handling...
[2026-06-12 14:42:57,629.629 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 14:42:57,631.631 INFO    ] Checking for system updates...
[2026-06-12 14:42:57,652.652 INFO    ] 200
[2026-06-12 14:42:57,654.654 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:42:57,684.684 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 14:42:57,685.685 INFO    ] No update needed
[2026-06-12 14:42:57,687.687 INFO    ] Checking for camera pi updates...
[2026-06-12 14:42:57,707.707 INFO    ] 200
[2026-06-12 14:42:57,708.708 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:42:57,731.731 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 14:42:57,774.774 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 14:42:57,775.775 INFO    ] No camera update needed
[2026-06-12 14:42:57,777.777 INFO    ] Script finished. Safe exiting...
[2026-06-12 14:42:57,778.778 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 14:42:57,781.781 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 14:42:57,784.784 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 14:42:59,824.824 INFO    ] ================================================
[2026-06-12 14:42:59,840.840 INFO    ] Launching Daemon at Fri Jun 12 14:42:59 IST 2026
[2026-06-12 14:42:59,851.851 INFO    ] ================================================
[2026-06-12 14:43:00,200.200 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 14:43:00
[2026-06-12 14:43:00,518.518 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 14:43:00,662.662 INFO    ] Initializing speech engine...
[2026-06-12 14:43:00,673.673 INFO    ] 2026-06-12 14:43:00
[2026-06-12 14:43:00,889.889 INFO    ] 2026-06-12 14:43:00
[2026-06-12 14:43:00,920.920 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 14:43:01,118.118 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 14:43:01,122.122 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 14:43:01,266.266 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 14:43:01,329.329 INFO    ] time= 12/06/2026 14:43:01
[2026-06-12 14:43:01,368.368 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 14:43:01,375.375 INFO    ] Checking for existing commands in stream...
[2026-06-12 14:43:01,473.473 INFO    ] No existing commands found in stream
[2026-06-12 14:43:06,487.487 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 14:43:06,490.490 INFO    ] Waiting 1.43 seconds before fallback handling...
[2026-06-12 14:43:08,318.318 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 14:43:08,320.320 INFO    ] Checking for system updates...
[2026-06-12 14:43:08,340.340 INFO    ] 200
[2026-06-12 14:43:08,341.341 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:43:08,373.373 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 14:43:08,375.375 INFO    ] No update needed
[2026-06-12 14:43:08,376.376 INFO    ] Checking for camera pi updates...
[2026-06-12 14:43:08,396.396 INFO    ] 200
[2026-06-12 14:43:08,397.397 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:43:08,422.422 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 14:43:08,562.562 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 14:43:08,563.563 INFO    ] No camera update needed
[2026-06-12 14:43:08,564.564 INFO    ] Script finished. Safe exiting...
[2026-06-12 14:43:08,565.565 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 14:43:08,568.568 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 14:43:08,571.571 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 14:43:10,602.602 INFO    ] ================================================
[2026-06-12 14:43:10,611.611 INFO    ] Launching Daemon at Fri Jun 12 14:43:10 IST 2026
[2026-06-12 14:43:10,617.617 INFO    ] ================================================
[2026-06-12 14:43:10,943.943 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 14:43:10
[2026-06-12 14:43:11,299.299 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 14:43:11,443.443 INFO    ] Initializing speech engine...
[2026-06-12 14:43:11,448.448 INFO    ] 2026-06-12 14:43:11
[2026-06-12 14:43:11,651.651 INFO    ] 2026-06-12 14:43:11
[2026-06-12 14:43:11,681.681 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 14:43:11,865.865 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 14:43:11,874.874 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 14:43:12,004.004 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 14:43:12,067.067 INFO    ] time= 12/06/2026 14:43:12
[2026-06-12 14:43:12,094.094 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 14:43:12,096.096 INFO    ] Checking for existing commands in stream...
[2026-06-12 14:43:12,191.191 INFO    ] No existing commands found in stream
[2026-06-12 14:43:17,200.200 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 14:43:17,203.203 INFO    ] Waiting 2.01 seconds before fallback handling...
[2026-06-12 14:43:19,606.606 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 14:43:19,607.607 INFO    ] Checking for system updates...
[2026-06-12 14:43:19,629.629 INFO    ] 200
[2026-06-12 14:43:19,630.630 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:43:19,662.662 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 14:43:19,664.664 INFO    ] No update needed
[2026-06-12 14:43:19,665.665 INFO    ] Checking for camera pi updates...
[2026-06-12 14:43:19,684.684 INFO    ] 200
[2026-06-12 14:43:19,686.686 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:43:19,709.709 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 14:43:19,778.778 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 14:43:19,779.779 INFO    ] No camera update needed
[2026-06-12 14:43:19,781.781 INFO    ] Script finished. Safe exiting...
[2026-06-12 14:43:19,782.782 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 14:43:19,785.785 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 14:43:19,788.788 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 14:43:21,825.825 INFO    ] ================================================
[2026-06-12 14:43:21,841.841 INFO    ] Launching Daemon at Fri Jun 12 14:43:21 IST 2026
[2026-06-12 14:43:21,853.853 INFO    ] ================================================
[2026-06-12 14:43:22,218.218 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 14:43:22
[2026-06-12 14:43:22,529.529 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 14:43:22,662.662 INFO    ] Initializing speech engine...
[2026-06-12 14:43:22,666.666 INFO    ] 2026-06-12 14:43:22
[2026-06-12 14:43:22,897.897 INFO    ] 2026-06-12 14:43:22
[2026-06-12 14:43:22,928.928 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 14:43:23,128.128 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 14:43:23,132.132 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 14:43:23,275.275 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 14:43:23,332.332 INFO    ] time= 12/06/2026 14:43:23
[2026-06-12 14:43:23,375.375 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 14:43:23,377.377 INFO    ] Checking for existing commands in stream...
[2026-06-12 14:43:23,452.452 INFO    ] No existing commands found in stream
[2026-06-12 14:43:28,463.463 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 14:43:28,465.465 INFO    ] Waiting 2.31 seconds before fallback handling...
[2026-06-12 14:43:31,119.119 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 14:43:31,121.121 INFO    ] Checking for system updates...
[2026-06-12 14:43:31,141.141 INFO    ] 200
[2026-06-12 14:43:31,143.143 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:43:31,175.175 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 14:43:31,177.177 INFO    ] No update needed
[2026-06-12 14:43:31,178.178 INFO    ] Checking for camera pi updates...
[2026-06-12 14:43:31,198.198 INFO    ] 200
[2026-06-12 14:43:31,199.199 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:43:31,222.222 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 14:43:31,266.266 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 14:43:31,267.267 INFO    ] No camera update needed
[2026-06-12 14:43:31,268.268 INFO    ] Script finished. Safe exiting...
[2026-06-12 14:43:31,270.270 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 14:43:31,273.273 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 14:43:31,275.275 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 14:43:33,298.298 INFO    ] ================================================
[2026-06-12 14:43:33,307.307 INFO    ] Launching Daemon at Fri Jun 12 14:43:33 IST 2026
[2026-06-12 14:43:33,313.313 INFO    ] ================================================
[2026-06-12 14:43:33,666.666 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 14:43:33
[2026-06-12 14:43:33,978.978 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 14:43:34,121.121 INFO    ] Initializing speech engine...
[2026-06-12 14:43:34,126.126 INFO    ] 2026-06-12 14:43:34
[2026-06-12 14:43:34,331.331 INFO    ] 2026-06-12 14:43:34
[2026-06-12 14:43:34,361.361 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 14:43:34,547.547 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 14:43:34,556.556 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 14:43:34,709.709 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 14:43:34,759.759 INFO    ] time= 12/06/2026 14:43:34
[2026-06-12 14:43:34,781.781 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 14:43:34,787.787 INFO    ] Checking for existing commands in stream...
[2026-06-12 14:43:34,855.855 INFO    ] No existing commands found in stream
[2026-06-12 14:43:39,869.869 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 14:43:39,873.873 INFO    ] Waiting 0.99 seconds before fallback handling...
[2026-06-12 14:43:41,269.269 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 14:43:41,271.271 INFO    ] Checking for system updates...
[2026-06-12 14:43:41,293.293 INFO    ] 200
[2026-06-12 14:43:41,294.294 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:43:41,326.326 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 14:43:41,328.328 INFO    ] No update needed
[2026-06-12 14:43:41,329.329 INFO    ] Checking for camera pi updates...
[2026-06-12 14:43:41,351.351 INFO    ] 200
[2026-06-12 14:43:41,352.352 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:43:41,377.377 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 14:43:41,422.422 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 14:43:41,424.424 INFO    ] No camera update needed
[2026-06-12 14:43:41,425.425 INFO    ] Script finished. Safe exiting...
[2026-06-12 14:43:41,426.426 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 14:43:41,430.430 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 14:43:41,433.433 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 14:43:43,473.473 INFO    ] ================================================
[2026-06-12 14:43:43,490.490 INFO    ] Launching Daemon at Fri Jun 12 14:43:43 IST 2026
[2026-06-12 14:43:43,502.502 INFO    ] ================================================
[2026-06-12 14:43:43,823.823 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 14:43:43
[2026-06-12 14:43:44,135.135 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 14:43:44,267.267 INFO    ] Initializing speech engine...
[2026-06-12 14:43:44,271.271 INFO    ] 2026-06-12 14:43:44
[2026-06-12 14:43:44,499.499 INFO    ] 2026-06-12 14:43:44
[2026-06-12 14:43:44,529.529 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 14:43:44,724.724 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 14:43:44,728.728 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 14:43:44,859.859 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 14:43:44,921.921 INFO    ] time= 12/06/2026 14:43:44
[2026-06-12 14:43:44,952.952 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 14:43:44,959.959 INFO    ] Checking for existing commands in stream...
[2026-06-12 14:43:45,069.069 INFO    ] No existing commands found in stream
[2026-06-12 14:43:50,081.081 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 14:43:50,084.084 INFO    ] Waiting 2.98 seconds before fallback handling...
[2026-06-12 14:43:53,941.941 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 14:43:53,944.944 INFO    ] Checking for system updates...
[2026-06-12 14:43:53,982.982 INFO    ] 200
[2026-06-12 14:43:53,985.985 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:43:54,043.043 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 14:43:54,045.045 INFO    ] No update needed
[2026-06-12 14:43:54,048.048 INFO    ] Checking for camera pi updates...
[2026-06-12 14:43:54,084.084 INFO    ] 200
[2026-06-12 14:43:54,086.086 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:43:54,117.117 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 14:43:54,167.167 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 14:43:54,169.169 INFO    ] No camera update needed
[2026-06-12 14:43:54,170.170 INFO    ] Script finished. Safe exiting...
[2026-06-12 14:43:54,172.172 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 14:43:54,174.174 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 14:43:54,177.177 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 14:43:56,215.215 INFO    ] ================================================
[2026-06-12 14:43:56,230.230 INFO    ] Launching Daemon at Fri Jun 12 14:43:56 IST 2026
[2026-06-12 14:43:56,242.242 INFO    ] ================================================
[2026-06-12 14:43:56,586.586 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 14:43:56
[2026-06-12 14:43:56,924.924 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 14:43:57,074.074 INFO    ] Initializing speech engine...
[2026-06-12 14:43:57,080.080 INFO    ] 2026-06-12 14:43:57
[2026-06-12 14:43:57,288.288 INFO    ] 2026-06-12 14:43:57
[2026-06-12 14:43:57,317.317 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 14:43:57,504.504 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 14:43:57,514.514 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 14:43:57,639.639 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 14:43:57,702.702 INFO    ] time= 12/06/2026 14:43:57
[2026-06-12 14:43:57,735.735 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 14:43:57,741.741 INFO    ] Checking for existing commands in stream...
[2026-06-12 14:43:57,832.832 INFO    ] No existing commands found in stream
[2026-06-12 14:44:02,847.847 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 14:44:02,850.850 INFO    ] Waiting 1.82 seconds before fallback handling...
[2026-06-12 14:44:05,088.088 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 14:44:05,090.090 INFO    ] Checking for system updates...
[2026-06-12 14:44:05,113.113 INFO    ] 200
[2026-06-12 14:44:05,115.115 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:44:05,149.149 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 14:44:05,150.150 INFO    ] No update needed
[2026-06-12 14:44:05,152.152 INFO    ] Checking for camera pi updates...
[2026-06-12 14:44:05,174.174 INFO    ] 200
[2026-06-12 14:44:05,175.175 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:44:05,199.199 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 14:44:05,245.245 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 14:44:05,247.247 INFO    ] No camera update needed
[2026-06-12 14:44:05,248.248 INFO    ] Script finished. Safe exiting...
[2026-06-12 14:44:05,250.250 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 14:44:05,253.253 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 14:44:05,256.256 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 14:44:07,293.293 INFO    ] ================================================
[2026-06-12 14:44:07,308.308 INFO    ] Launching Daemon at Fri Jun 12 14:44:07 IST 2026
[2026-06-12 14:44:07,319.319 INFO    ] ================================================
[2026-06-12 14:44:07,674.674 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 14:44:07
[2026-06-12 14:44:07,988.988 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 14:44:08,120.120 INFO    ] Initializing speech engine...
[2026-06-12 14:44:08,123.123 INFO    ] 2026-06-12 14:44:08
[2026-06-12 14:44:08,344.344 INFO    ] 2026-06-12 14:44:08
[2026-06-12 14:44:08,374.374 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 14:44:08,560.560 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 14:44:08,570.570 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 14:44:08,767.767 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 14:44:08,793.793 INFO    ] time= 12/06/2026 14:44:08
[2026-06-12 14:44:08,799.799 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 14:44:08,800.800 INFO    ] Checking for existing commands in stream...
[2026-06-12 14:44:08,867.867 INFO    ] No existing commands found in stream
[2026-06-12 14:44:13,876.876 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 14:44:13,879.879 INFO    ] Waiting 3.92 seconds before fallback handling...
[2026-06-12 14:44:18,170.170 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 14:44:18,171.171 INFO    ] Checking for system updates...
[2026-06-12 14:44:18,191.191 INFO    ] 200
[2026-06-12 14:44:18,193.193 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:44:18,222.222 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 14:44:18,224.224 INFO    ] No update needed
[2026-06-12 14:44:18,225.225 INFO    ] Checking for camera pi updates...
[2026-06-12 14:44:18,248.248 INFO    ] 200
[2026-06-12 14:44:18,249.249 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:44:18,272.272 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 14:44:18,330.330 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 14:44:18,331.331 INFO    ] No camera update needed
[2026-06-12 14:44:18,332.332 INFO    ] Script finished. Safe exiting...
[2026-06-12 14:44:18,334.334 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 14:44:18,337.337 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 14:44:18,339.339 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 14:44:20,379.379 INFO    ] ================================================
[2026-06-12 14:44:20,394.394 INFO    ] Launching Daemon at Fri Jun 12 14:44:20 IST 2026
[2026-06-12 14:44:20,405.405 INFO    ] ================================================
[2026-06-12 14:44:20,759.759 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 14:44:20
[2026-06-12 14:44:21,093.093 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 14:44:21,231.231 INFO    ] Initializing speech engine...
[2026-06-12 14:44:21,243.243 INFO    ] 2026-06-12 14:44:21
[2026-06-12 14:44:21,449.449 INFO    ] 2026-06-12 14:44:21
[2026-06-12 14:44:21,478.478 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 14:44:21,662.662 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 14:44:21,665.665 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 14:44:21,821.821 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 14:44:21,871.871 INFO    ] time= 12/06/2026 14:44:21
[2026-06-12 14:44:21,891.891 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 14:44:21,898.898 INFO    ] Checking for existing commands in stream...
[2026-06-12 14:44:21,965.965 INFO    ] No existing commands found in stream
[2026-06-12 14:44:26,979.979 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 14:44:26,981.981 INFO    ] Waiting 3.98 seconds before fallback handling...
[2026-06-12 14:44:31,298.298 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 14:44:31,300.300 INFO    ] Checking for system updates...
[2026-06-12 14:44:31,324.324 INFO    ] 200
[2026-06-12 14:44:31,326.326 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:44:31,359.359 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 14:44:31,361.361 INFO    ] No update needed
[2026-06-12 14:44:31,362.362 INFO    ] Checking for camera pi updates...
[2026-06-12 14:44:31,383.383 INFO    ] 200
[2026-06-12 14:44:31,385.385 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:44:31,409.409 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 14:44:31,438.438 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 14:44:31,440.440 INFO    ] No camera update needed
[2026-06-12 14:44:31,442.442 INFO    ] Script finished. Safe exiting...
[2026-06-12 14:44:31,443.443 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 14:44:31,447.447 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 14:44:31,450.450 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 14:44:33,481.481 INFO    ] ================================================
[2026-06-12 14:44:33,497.497 INFO    ] Launching Daemon at Fri Jun 12 14:44:33 IST 2026
[2026-06-12 14:44:33,507.507 INFO    ] ================================================
[2026-06-12 14:44:33,833.833 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 14:44:33
[2026-06-12 14:44:34,145.145 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 14:44:34,285.285 INFO    ] Initializing speech engine...
[2026-06-12 14:44:34,295.295 INFO    ] 2026-06-12 14:44:34
[2026-06-12 14:44:34,511.511 INFO    ] 2026-06-12 14:44:34
[2026-06-12 14:44:34,542.542 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 14:44:34,674.674 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 14:44:34,707.707 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 14:44:34,884.884 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 14:44:34,946.946 INFO    ] time= 12/06/2026 14:44:34
[2026-06-12 14:44:34,986.986 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 14:44:34,992.992 INFO    ] Checking for existing commands in stream...
[2026-06-12 14:44:35,094.094 INFO    ] No existing commands found in stream
[2026-06-12 14:44:40,103.103 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 14:44:40,106.106 INFO    ] Waiting 0.96 seconds before fallback handling...
[2026-06-12 14:44:41,433.433 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 14:44:41,434.434 INFO    ] Checking for system updates...
[2026-06-12 14:44:41,455.455 INFO    ] 200
[2026-06-12 14:44:41,456.456 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:44:41,486.486 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 14:44:41,488.488 INFO    ] No update needed
[2026-06-12 14:44:41,489.489 INFO    ] Checking for camera pi updates...
[2026-06-12 14:44:41,508.508 INFO    ] 200
[2026-06-12 14:44:41,510.510 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:44:41,534.534 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 14:44:41,580.580 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 14:44:41,582.582 INFO    ] No camera update needed
[2026-06-12 14:44:41,583.583 INFO    ] Script finished. Safe exiting...
[2026-06-12 14:44:41,584.584 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 14:44:41,588.588 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 14:44:41,591.591 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 14:44:43,630.630 INFO    ] ================================================
[2026-06-12 14:44:43,645.645 INFO    ] Launching Daemon at Fri Jun 12 14:44:43 IST 2026
[2026-06-12 14:44:43,656.656 INFO    ] ================================================
[2026-06-12 14:44:44,013.013 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 14:44:44
[2026-06-12 14:44:44,352.352 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 14:44:44,492.492 INFO    ] Initializing speech engine...
[2026-06-12 14:44:44,505.505 INFO    ] 2026-06-12 14:44:44
[2026-06-12 14:44:44,718.718 INFO    ] 2026-06-12 14:44:44
[2026-06-12 14:44:44,747.747 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 14:44:44,890.890 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 14:44:44,939.939 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 14:44:45,119.119 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 14:44:45,164.164 INFO    ] time= 12/06/2026 14:44:45
[2026-06-12 14:44:45,169.169 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 14:44:45,176.176 INFO    ] Checking for existing commands in stream...
[2026-06-12 14:44:45,243.243 INFO    ] No existing commands found in stream
[2026-06-12 14:44:50,258.258 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 14:44:50,261.261 INFO    ] Waiting 3.24 seconds before fallback handling...
[2026-06-12 14:44:53,934.934 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 14:44:53,936.936 INFO    ] Checking for system updates...
[2026-06-12 14:44:53,956.956 INFO    ] 200
[2026-06-12 14:44:53,957.957 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:44:53,990.990 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 14:44:53,991.991 INFO    ] No update needed
[2026-06-12 14:44:53,993.993 INFO    ] Checking for camera pi updates...
[2026-06-12 14:44:54,012.012 INFO    ] 200
[2026-06-12 14:44:54,014.014 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:44:54,039.039 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 14:44:54,084.084 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 14:44:54,086.086 INFO    ] No camera update needed
[2026-06-12 14:44:54,087.087 INFO    ] Script finished. Safe exiting...
[2026-06-12 14:44:54,089.089 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 14:44:54,092.092 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 14:44:54,095.095 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 14:44:56,132.132 INFO    ] ================================================
[2026-06-12 14:44:56,147.147 INFO    ] Launching Daemon at Fri Jun 12 14:44:56 IST 2026
[2026-06-12 14:44:56,158.158 INFO    ] ================================================
[2026-06-12 14:44:56,490.490 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 14:44:56
[2026-06-12 14:44:56,804.804 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 14:44:56,941.941 INFO    ] Initializing speech engine...
[2026-06-12 14:44:56,955.955 INFO    ] 2026-06-12 14:44:56
[2026-06-12 14:44:57,171.171 INFO    ] 2026-06-12 14:44:57
[2026-06-12 14:44:57,201.201 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 14:44:57,334.334 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 14:44:57,392.392 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 14:44:57,542.542 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 14:44:57,594.594 INFO    ] time= 12/06/2026 14:44:57
[2026-06-12 14:44:57,626.626 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 14:44:57,650.650 INFO    ] Checking for existing commands in stream...
[2026-06-12 14:44:57,726.726 INFO    ] No existing commands found in stream
[2026-06-12 14:45:02,731.731 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 14:45:02,733.733 INFO    ] Waiting 3.41 seconds before fallback handling...
[2026-06-12 14:45:06,544.544 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 14:45:06,546.546 INFO    ] Checking for system updates...
[2026-06-12 14:45:06,566.566 INFO    ] 200
[2026-06-12 14:45:06,567.567 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:45:06,597.597 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 14:45:06,599.599 INFO    ] No update needed
[2026-06-12 14:45:06,600.600 INFO    ] Checking for camera pi updates...
[2026-06-12 14:45:06,619.619 INFO    ] 200
[2026-06-12 14:45:06,621.621 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:45:06,646.646 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 14:45:06,704.704 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 14:45:06,706.706 INFO    ] No camera update needed
[2026-06-12 14:45:06,707.707 INFO    ] Script finished. Safe exiting...
[2026-06-12 14:45:06,708.708 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 14:45:06,711.711 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 14:45:06,714.714 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 14:45:08,752.752 INFO    ] ================================================
[2026-06-12 14:45:08,766.766 INFO    ] Launching Daemon at Fri Jun 12 14:45:08 IST 2026
[2026-06-12 14:45:08,777.777 INFO    ] ================================================
[2026-06-12 14:45:09,107.107 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 14:45:09
[2026-06-12 14:45:09,417.417 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 14:45:09,559.559 INFO    ] Initializing speech engine...
[2026-06-12 14:45:09,563.563 INFO    ] 2026-06-12 14:45:09
[2026-06-12 14:45:09,772.772 INFO    ] 2026-06-12 14:45:09
[2026-06-12 14:45:09,802.802 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 14:45:09,988.988 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 14:45:09,996.996 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 14:45:10,129.129 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 14:45:10,190.190 INFO    ] time= 12/06/2026 14:45:10
[2026-06-12 14:45:10,224.224 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 14:45:10,230.230 INFO    ] Checking for existing commands in stream...
[2026-06-12 14:45:10,298.298 INFO    ] No existing commands found in stream
[2026-06-12 14:45:15,306.306 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 14:45:15,309.309 INFO    ] Waiting 1.41 seconds before fallback handling...
[2026-06-12 14:45:17,078.078 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 14:45:17,079.079 INFO    ] Checking for system updates...
[2026-06-12 14:45:17,099.099 INFO    ] 200
[2026-06-12 14:45:17,101.101 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:45:17,130.130 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 14:45:17,132.132 INFO    ] No update needed
[2026-06-12 14:45:17,133.133 INFO    ] Checking for camera pi updates...
[2026-06-12 14:45:17,152.152 INFO    ] 200
[2026-06-12 14:45:17,154.154 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:45:17,176.176 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 14:45:17,316.316 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 14:45:17,317.317 INFO    ] No camera update needed
[2026-06-12 14:45:17,319.319 INFO    ] Script finished. Safe exiting...
[2026-06-12 14:45:17,320.320 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 14:45:17,323.323 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 14:45:17,326.326 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 14:45:19,367.367 INFO    ] ================================================
[2026-06-12 14:45:19,382.382 INFO    ] Launching Daemon at Fri Jun 12 14:45:19 IST 2026
[2026-06-12 14:45:19,393.393 INFO    ] ================================================
[2026-06-12 14:45:19,734.734 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 14:45:19
[2026-06-12 14:45:20,044.044 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 14:45:20,174.174 INFO    ] Initializing speech engine...
[2026-06-12 14:45:20,187.187 INFO    ] 2026-06-12 14:45:20
[2026-06-12 14:45:20,393.393 INFO    ] 2026-06-12 14:45:20
[2026-06-12 14:45:20,421.421 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 14:45:20,604.604 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 14:45:20,613.613 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 14:45:20,740.740 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 14:45:20,807.807 INFO    ] time= 12/06/2026 14:45:20
[2026-06-12 14:45:20,831.831 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 14:45:20,837.837 INFO    ] Checking for existing commands in stream...
[2026-06-12 14:45:20,905.905 INFO    ] No existing commands found in stream
[2026-06-12 14:45:25,919.919 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 14:45:25,922.922 INFO    ] Waiting 0.64 seconds before fallback handling...
[2026-06-12 14:45:26,935.935 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 14:45:26,936.936 INFO    ] Checking for system updates...
[2026-06-12 14:45:26,961.961 INFO    ] 200
[2026-06-12 14:45:26,962.962 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:45:26,994.994 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 14:45:26,996.996 INFO    ] No update needed
[2026-06-12 14:45:26,997.997 INFO    ] Checking for camera pi updates...
[2026-06-12 14:45:27,019.019 INFO    ] 200
[2026-06-12 14:45:27,020.020 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:45:27,044.044 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 14:45:27,089.089 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 14:45:27,091.091 INFO    ] No camera update needed
[2026-06-12 14:45:27,092.092 INFO    ] Script finished. Safe exiting...
[2026-06-12 14:45:27,094.094 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 14:45:27,097.097 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 14:45:27,100.100 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 14:45:29,145.145 INFO    ] ================================================
[2026-06-12 14:45:29,161.161 INFO    ] Launching Daemon at Fri Jun 12 14:45:29 IST 2026
[2026-06-12 14:45:29,171.171 INFO    ] ================================================
[2026-06-12 14:45:29,499.499 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 14:45:29
[2026-06-12 14:45:29,815.815 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 14:45:29,959.959 INFO    ] Initializing speech engine...
[2026-06-12 14:45:29,965.965 INFO    ] 2026-06-12 14:45:29
[2026-06-12 14:45:30,169.169 INFO    ] 2026-06-12 14:45:30
[2026-06-12 14:45:30,198.198 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 14:45:30,380.380 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 14:45:30,389.389 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 14:45:30,540.540 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 14:45:30,588.588 INFO    ] time= 12/06/2026 14:45:30
[2026-06-12 14:45:30,610.610 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 14:45:30,616.616 INFO    ] Checking for existing commands in stream...
[2026-06-12 14:45:30,683.683 INFO    ] No existing commands found in stream
[2026-06-12 14:45:35,692.692 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 14:45:35,694.694 INFO    ] Waiting 0.11 seconds before fallback handling...
[2026-06-12 14:45:36,174.174 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 14:45:36,175.175 INFO    ] Checking for system updates...
[2026-06-12 14:45:36,196.196 INFO    ] 200
[2026-06-12 14:45:36,197.197 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:45:36,229.229 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 14:45:36,230.230 INFO    ] No update needed
[2026-06-12 14:45:36,233.233 INFO    ] Checking for camera pi updates...
[2026-06-12 14:45:36,252.252 INFO    ] 200
[2026-06-12 14:45:36,253.253 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:45:36,276.276 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 14:45:36,322.322 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 14:45:36,324.324 INFO    ] No camera update needed
[2026-06-12 14:45:36,325.325 INFO    ] Script finished. Safe exiting...
[2026-06-12 14:45:36,326.326 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 14:45:36,329.329 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 14:45:36,332.332 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 14:45:38,370.370 INFO    ] ================================================
[2026-06-12 14:45:38,385.385 INFO    ] Launching Daemon at Fri Jun 12 14:45:38 IST 2026
[2026-06-12 14:45:38,396.396 INFO    ] ================================================
[2026-06-12 14:45:38,741.741 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 14:45:38
[2026-06-12 14:45:39,052.052 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 14:45:39,183.183 INFO    ] Initializing speech engine...
[2026-06-12 14:45:39,187.187 INFO    ] 2026-06-12 14:45:39
[2026-06-12 14:45:39,400.400 INFO    ] 2026-06-12 14:45:39
[2026-06-12 14:45:39,427.427 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 14:45:39,577.577 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 14:45:39,643.643 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 14:45:39,784.784 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 14:45:39,840.840 INFO    ] time= 12/06/2026 14:45:39
[2026-06-12 14:45:39,878.878 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 14:45:39,890.890 INFO    ] Checking for existing commands in stream...
[2026-06-12 14:45:39,966.966 INFO    ] No existing commands found in stream
[2026-06-12 14:45:44,975.975 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 14:45:44,978.978 INFO    ] Waiting 2.67 seconds before fallback handling...
[2026-06-12 14:45:48,018.018 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 14:45:48,020.020 INFO    ] Checking for system updates...
[2026-06-12 14:45:48,041.041 INFO    ] 200
[2026-06-12 14:45:48,042.042 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:45:48,076.076 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 14:45:48,077.077 INFO    ] No update needed
[2026-06-12 14:45:48,078.078 INFO    ] Checking for camera pi updates...
[2026-06-12 14:45:48,098.098 INFO    ] 200
[2026-06-12 14:45:48,100.100 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:45:48,124.124 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 14:45:48,164.164 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 14:45:48,166.166 INFO    ] No camera update needed
[2026-06-12 14:45:48,167.167 INFO    ] Script finished. Safe exiting...
[2026-06-12 14:45:48,168.168 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 14:45:48,171.171 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 14:45:48,174.174 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 14:45:50,212.212 INFO    ] ================================================
[2026-06-12 14:45:50,228.228 INFO    ] Launching Daemon at Fri Jun 12 14:45:50 IST 2026
[2026-06-12 14:45:50,239.239 INFO    ] ================================================
[2026-06-12 14:45:50,620.620 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 14:45:50
[2026-06-12 14:45:50,953.953 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 14:45:51,091.091 INFO    ] Initializing speech engine...
[2026-06-12 14:45:51,095.095 INFO    ] 2026-06-12 14:45:51
[2026-06-12 14:45:51,320.320 INFO    ] 2026-06-12 14:45:51
[2026-06-12 14:45:51,348.348 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 14:45:51,536.536 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 14:45:51,545.545 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 14:45:51,697.697 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 14:45:51,748.748 INFO    ] time= 12/06/2026 14:45:51
[2026-06-12 14:45:51,773.773 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 14:45:51,779.779 INFO    ] Checking for existing commands in stream...
[2026-06-12 14:45:51,872.872 INFO    ] No existing commands found in stream
[2026-06-12 14:45:56,881.881 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 14:45:56,884.884 INFO    ] Waiting 2.15 seconds before fallback handling...
[2026-06-12 14:45:59,409.409 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 14:45:59,411.411 INFO    ] Checking for system updates...
[2026-06-12 14:45:59,432.432 INFO    ] 200
[2026-06-12 14:45:59,434.434 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:45:59,468.468 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 14:45:59,469.469 INFO    ] No update needed
[2026-06-12 14:45:59,471.471 INFO    ] Checking for camera pi updates...
[2026-06-12 14:45:59,493.493 INFO    ] 200
[2026-06-12 14:45:59,495.495 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:45:59,520.520 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 14:45:59,564.564 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 14:45:59,565.565 INFO    ] No camera update needed
[2026-06-12 14:45:59,567.567 INFO    ] Script finished. Safe exiting...
[2026-06-12 14:45:59,568.568 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 14:45:59,572.572 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 14:45:59,575.575 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 14:46:01,606.606 INFO    ] ================================================
[2026-06-12 14:46:01,622.622 INFO    ] Launching Daemon at Fri Jun 12 14:46:01 IST 2026
[2026-06-12 14:46:01,632.632 INFO    ] ================================================
[2026-06-12 14:46:02,083.083 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 14:46:02
[2026-06-12 14:46:02,510.510 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 14:46:02,684.684 INFO    ] Initializing speech engine...
[2026-06-12 14:46:02,703.703 INFO    ] 2026-06-12 14:46:02
[2026-06-12 14:46:02,963.963 INFO    ] 2026-06-12 14:46:02
[2026-06-12 14:46:03,007.007 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 14:46:03,185.185 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 14:46:03,188.188 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 14:46:03,317.317 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 14:46:03,378.378 INFO    ] time= 12/06/2026 14:46:03
[2026-06-12 14:46:03,402.402 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 14:46:03,418.418 INFO    ] Checking for existing commands in stream...
[2026-06-12 14:46:03,488.488 INFO    ] No existing commands found in stream
[2026-06-12 14:46:08,499.499 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 14:46:08,502.502 INFO    ] Waiting 2.99 seconds before fallback handling...
[2026-06-12 14:46:11,877.877 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 14:46:11,879.879 INFO    ] Checking for system updates...
[2026-06-12 14:46:11,900.900 INFO    ] 200
[2026-06-12 14:46:11,901.901 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:46:11,932.932 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 14:46:11,934.934 INFO    ] No update needed
[2026-06-12 14:46:11,935.935 INFO    ] Checking for camera pi updates...
[2026-06-12 14:46:11,955.955 INFO    ] 200
[2026-06-12 14:46:11,956.956 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:46:11,980.980 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 14:46:12,085.085 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 14:46:12,086.086 INFO    ] No camera update needed
[2026-06-12 14:46:12,088.088 INFO    ] Script finished. Safe exiting...
[2026-06-12 14:46:12,089.089 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 14:46:12,092.092 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 14:46:12,095.095 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 14:46:14,133.133 INFO    ] ================================================
[2026-06-12 14:46:14,148.148 INFO    ] Launching Daemon at Fri Jun 12 14:46:14 IST 2026
[2026-06-12 14:46:14,159.159 INFO    ] ================================================
[2026-06-12 14:46:14,508.508 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 14:46:14
[2026-06-12 14:46:14,839.839 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 14:46:14,976.976 INFO    ] Initializing speech engine...
[2026-06-12 14:46:14,979.979 INFO    ] 2026-06-12 14:46:14
[2026-06-12 14:46:15,198.198 INFO    ] 2026-06-12 14:46:15
[2026-06-12 14:46:15,227.227 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 14:46:15,411.411 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 14:46:15,415.415 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 14:46:15,543.543 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 14:46:15,594.594 INFO    ] time= 12/06/2026 14:46:15
[2026-06-12 14:46:15,633.633 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 14:46:15,644.644 INFO    ] Checking for existing commands in stream...
[2026-06-12 14:46:15,715.715 INFO    ] No existing commands found in stream
[2026-06-12 14:46:20,730.730 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 14:46:20,733.733 INFO    ] Waiting 2.62 seconds before fallback handling...
[2026-06-12 14:46:23,764.764 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 14:46:23,766.766 INFO    ] Checking for system updates...
[2026-06-12 14:46:23,789.789 INFO    ] 200
[2026-06-12 14:46:23,790.790 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:46:23,822.822 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 14:46:23,824.824 INFO    ] No update needed
[2026-06-12 14:46:23,825.825 INFO    ] Checking for camera pi updates...
[2026-06-12 14:46:23,845.845 INFO    ] 200
[2026-06-12 14:46:23,846.846 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:46:23,869.869 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 14:46:23,912.912 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 14:46:23,914.914 INFO    ] No camera update needed
[2026-06-12 14:46:23,915.915 INFO    ] Script finished. Safe exiting...
[2026-06-12 14:46:23,916.916 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 14:46:23,920.920 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 14:46:23,923.923 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 14:46:25,962.962 INFO    ] ================================================
[2026-06-12 14:46:25,977.977 INFO    ] Launching Daemon at Fri Jun 12 14:46:25 IST 2026
[2026-06-12 14:46:25,987.987 INFO    ] ================================================
[2026-06-12 14:46:26,336.336 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 14:46:26
[2026-06-12 14:46:26,647.647 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 14:46:26,787.787 INFO    ] Initializing speech engine...
[2026-06-12 14:46:26,795.795 INFO    ] 2026-06-12 14:46:26
[2026-06-12 14:46:27,010.010 INFO    ] 2026-06-12 14:46:26
[2026-06-12 14:46:27,040.040 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 14:46:27,172.172 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 14:46:27,230.230 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 14:46:27,378.378 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 14:46:27,450.450 INFO    ] time= 12/06/2026 14:46:27
[2026-06-12 14:46:27,483.483 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 14:46:27,490.490 INFO    ] Checking for existing commands in stream...
[2026-06-12 14:46:27,587.587 INFO    ] No existing commands found in stream
[2026-06-12 14:46:32,595.595 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 14:46:32,597.597 INFO    ] Waiting 2.15 seconds before fallback handling...
[2026-06-12 14:46:35,130.130 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 14:46:35,131.131 INFO    ] Checking for system updates...
[2026-06-12 14:46:35,152.152 INFO    ] 200
[2026-06-12 14:46:35,153.153 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:46:35,185.185 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 14:46:35,186.186 INFO    ] No update needed
[2026-06-12 14:46:35,187.187 INFO    ] Checking for camera pi updates...
[2026-06-12 14:46:35,208.208 INFO    ] 200
[2026-06-12 14:46:35,209.209 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:46:35,234.234 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 14:46:35,279.279 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 14:46:35,281.281 INFO    ] No camera update needed
[2026-06-12 14:46:35,282.282 INFO    ] Script finished. Safe exiting...
[2026-06-12 14:46:35,283.283 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 14:46:35,287.287 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 14:46:35,290.290 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 14:46:37,328.328 INFO    ] ================================================
[2026-06-12 14:46:37,344.344 INFO    ] Launching Daemon at Fri Jun 12 14:46:37 IST 2026
[2026-06-12 14:46:37,354.354 INFO    ] ================================================
[2026-06-12 14:46:37,707.707 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 14:46:37
[2026-06-12 14:46:38,027.027 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 14:46:38,170.170 INFO    ] Initializing speech engine...
[2026-06-12 14:46:38,176.176 INFO    ] 2026-06-12 14:46:38
[2026-06-12 14:46:38,380.380 INFO    ] 2026-06-12 14:46:38
[2026-06-12 14:46:38,408.408 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 14:46:38,591.591 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 14:46:38,601.601 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 14:46:38,729.729 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 14:46:38,788.788 INFO    ] time= 12/06/2026 14:46:38
[2026-06-12 14:46:38,822.822 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 14:46:38,892.892 INFO    ] Checking for existing commands in stream...
[2026-06-12 14:46:39,014.014 INFO    ] No existing commands found in stream
[2026-06-12 14:46:44,024.024 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 14:46:44,027.027 INFO    ] Waiting 0.57 seconds before fallback handling...
[2026-06-12 14:46:45,000.000 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 14:46:45,001.001 INFO    ] Checking for system updates...
[2026-06-12 14:46:45,022.022 INFO    ] 200
[2026-06-12 14:46:45,024.024 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:46:45,055.055 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 14:46:45,056.056 INFO    ] No update needed
[2026-06-12 14:46:45,057.057 INFO    ] Checking for camera pi updates...
[2026-06-12 14:46:45,077.077 INFO    ] 200
[2026-06-12 14:46:45,079.079 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:46:45,103.103 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 14:46:45,141.141 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 14:46:45,143.143 INFO    ] No camera update needed
[2026-06-12 14:46:45,144.144 INFO    ] Script finished. Safe exiting...
[2026-06-12 14:46:45,145.145 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 14:46:45,148.148 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 14:46:45,151.151 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 14:46:47,189.189 INFO    ] ================================================
[2026-06-12 14:46:47,205.205 INFO    ] Launching Daemon at Fri Jun 12 14:46:47 IST 2026
[2026-06-12 14:46:47,215.215 INFO    ] ================================================
[2026-06-12 14:46:47,560.560 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 14:46:47
[2026-06-12 14:46:47,872.872 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 14:46:48,002.002 INFO    ] Initializing speech engine...
[2026-06-12 14:46:48,007.007 INFO    ] 2026-06-12 14:46:48
[2026-06-12 14:46:48,232.232 INFO    ] 2026-06-12 14:46:48
[2026-06-12 14:46:48,262.262 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 14:46:48,456.456 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 14:46:48,460.460 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 14:46:48,597.597 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 14:46:48,648.648 INFO    ] time= 12/06/2026 14:46:48
[2026-06-12 14:46:48,685.685 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 14:46:48,703.703 INFO    ] Checking for existing commands in stream...
[2026-06-12 14:46:48,778.778 INFO    ] No existing commands found in stream
[2026-06-12 14:46:53,787.787 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 14:46:53,790.790 INFO    ] Waiting 1.82 seconds before fallback handling...
[2026-06-12 14:46:55,996.996 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 14:46:55,997.997 INFO    ] Checking for system updates...
[2026-06-12 14:46:56,021.021 INFO    ] 200
[2026-06-12 14:46:56,022.022 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:46:56,054.054 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 14:46:56,055.055 INFO    ] No update needed
[2026-06-12 14:46:56,057.057 INFO    ] Checking for camera pi updates...
[2026-06-12 14:46:56,078.078 INFO    ] 200
[2026-06-12 14:46:56,080.080 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:46:56,103.103 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 14:46:56,151.151 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 14:46:56,153.153 INFO    ] No camera update needed
[2026-06-12 14:46:56,154.154 INFO    ] Script finished. Safe exiting...
[2026-06-12 14:46:56,155.155 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 14:46:56,158.158 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 14:46:56,161.161 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 14:46:58,199.199 INFO    ] ================================================
[2026-06-12 14:46:58,214.214 INFO    ] Launching Daemon at Fri Jun 12 14:46:58 IST 2026
[2026-06-12 14:46:58,225.225 INFO    ] ================================================
[2026-06-12 14:46:58,583.583 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 14:46:58
[2026-06-12 14:46:58,899.899 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 14:46:59,047.047 INFO    ] Initializing speech engine...
[2026-06-12 14:46:59,052.052 INFO    ] 2026-06-12 14:46:59
[2026-06-12 14:46:59,257.257 INFO    ] 2026-06-12 14:46:59
[2026-06-12 14:46:59,285.285 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 14:46:59,468.468 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 14:46:59,472.472 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 14:46:59,608.608 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 14:46:59,675.675 INFO    ] time= 12/06/2026 14:46:59
[2026-06-12 14:46:59,699.699 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 14:46:59,706.706 INFO    ] Checking for existing commands in stream...
[2026-06-12 14:46:59,773.773 INFO    ] No existing commands found in stream
[2026-06-12 14:47:04,787.787 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 14:47:04,790.790 INFO    ] Waiting 3.31 seconds before fallback handling...
[2026-06-12 14:47:08,562.562 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 14:47:08,564.564 INFO    ] Checking for system updates...
[2026-06-12 14:47:08,584.584 INFO    ] 200
[2026-06-12 14:47:08,585.585 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:47:08,615.615 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 14:47:08,616.616 INFO    ] No update needed
[2026-06-12 14:47:08,617.617 INFO    ] Checking for camera pi updates...
[2026-06-12 14:47:08,638.638 INFO    ] 200
[2026-06-12 14:47:08,640.640 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:47:08,662.662 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 14:47:08,729.729 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 14:47:08,731.731 INFO    ] No camera update needed
[2026-06-12 14:47:08,732.732 INFO    ] Script finished. Safe exiting...
[2026-06-12 14:47:08,733.733 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 14:47:08,740.740 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 14:47:08,743.743 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 14:47:10,784.784 INFO    ] ================================================
[2026-06-12 14:47:10,800.800 INFO    ] Launching Daemon at Fri Jun 12 14:47:10 IST 2026
[2026-06-12 14:47:10,811.811 INFO    ] ================================================
[2026-06-12 14:47:11,180.180 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 14:47:11
[2026-06-12 14:47:11,496.496 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 14:47:11,643.643 INFO    ] Initializing speech engine...
[2026-06-12 14:47:11,648.648 INFO    ] 2026-06-12 14:47:11
[2026-06-12 14:47:11,852.852 INFO    ] 2026-06-12 14:47:11
[2026-06-12 14:47:11,880.880 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 14:47:12,063.063 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 14:47:12,066.066 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 14:47:12,198.198 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 14:47:12,266.266 INFO    ] time= 12/06/2026 14:47:12
[2026-06-12 14:47:12,292.292 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 14:47:12,294.294 INFO    ] Checking for existing commands in stream...
[2026-06-12 14:47:12,389.389 INFO    ] No existing commands found in stream
[2026-06-12 14:47:17,398.398 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 14:47:17,401.401 INFO    ] Waiting 1.85 seconds before fallback handling...
[2026-06-12 14:47:19,588.588 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 14:47:19,590.590 INFO    ] Checking for system updates...
[2026-06-12 14:47:19,611.611 INFO    ] 200
[2026-06-12 14:47:19,612.612 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:47:19,643.643 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 14:47:19,645.645 INFO    ] No update needed
[2026-06-12 14:47:19,647.647 INFO    ] Checking for camera pi updates...
[2026-06-12 14:47:19,670.670 INFO    ] 200
[2026-06-12 14:47:19,672.672 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:47:19,717.717 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 14:47:19,863.863 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 14:47:19,864.864 INFO    ] No camera update needed
[2026-06-12 14:47:19,865.865 INFO    ] Script finished. Safe exiting...
[2026-06-12 14:47:19,866.866 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 14:47:19,869.869 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 14:47:19,872.872 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 14:47:21,910.910 INFO    ] ================================================
[2026-06-12 14:47:21,926.926 INFO    ] Launching Daemon at Fri Jun 12 14:47:21 IST 2026
[2026-06-12 14:47:21,937.937 INFO    ] ================================================
[2026-06-12 14:47:22,273.273 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 14:47:22
[2026-06-12 14:47:22,585.585 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 14:47:22,714.714 INFO    ] Initializing speech engine...
[2026-06-12 14:47:22,723.723 INFO    ] 2026-06-12 14:47:22
[2026-06-12 14:47:22,937.937 INFO    ] 2026-06-12 14:47:22
[2026-06-12 14:47:22,965.965 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 14:47:23,150.150 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 14:47:23,153.153 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 14:47:23,264.264 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 14:47:23,265.265 INFO    ] time= 12/06/2026 14:47:23
[2026-06-12 14:47:23,267.267 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 14:47:23,268.268 INFO    ] Checking for existing commands in stream...
[2026-06-12 14:47:23,335.335 INFO    ] No existing commands found in stream
[2026-06-12 14:47:28,343.343 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 14:47:28,346.346 INFO    ] Waiting 0.13 seconds before fallback handling...
[2026-06-12 14:47:28,846.846 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 14:47:28,848.848 INFO    ] Checking for system updates...
[2026-06-12 14:47:28,868.868 INFO    ] 200
[2026-06-12 14:47:28,870.870 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:47:28,900.900 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 14:47:28,901.901 INFO    ] No update needed
[2026-06-12 14:47:28,902.902 INFO    ] Checking for camera pi updates...
[2026-06-12 14:47:28,922.922 INFO    ] 200
[2026-06-12 14:47:28,923.923 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:47:28,947.947 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 14:47:28,993.993 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 14:47:28,994.994 INFO    ] No camera update needed
[2026-06-12 14:47:28,995.995 INFO    ] Script finished. Safe exiting...
[2026-06-12 14:47:28,996.996 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 14:47:28,999.999 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 14:47:29,007.007 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 14:47:31,044.044 INFO    ] ================================================
[2026-06-12 14:47:31,061.061 INFO    ] Launching Daemon at Fri Jun 12 14:47:31 IST 2026
[2026-06-12 14:47:31,072.072 INFO    ] ================================================
[2026-06-12 14:47:31,424.424 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 14:47:31
[2026-06-12 14:47:31,765.765 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 14:47:31,912.912 INFO    ] Initializing speech engine...
[2026-06-12 14:47:31,916.916 INFO    ] 2026-06-12 14:47:31
[2026-06-12 14:47:32,148.148 INFO    ] 2026-06-12 14:47:32
[2026-06-12 14:47:32,178.178 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 14:47:32,372.372 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 14:47:32,375.375 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 14:47:32,515.515 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 14:47:32,567.567 INFO    ] time= 12/06/2026 14:47:32
[2026-06-12 14:47:32,594.594 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 14:47:32,616.616 INFO    ] Checking for existing commands in stream...
[2026-06-12 14:47:32,691.691 INFO    ] No existing commands found in stream
[2026-06-12 14:47:37,700.700 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 14:47:37,703.703 INFO    ] Waiting 2.71 seconds before fallback handling...
[2026-06-12 14:47:40,816.816 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 14:47:40,818.818 INFO    ] Checking for system updates...
[2026-06-12 14:47:40,838.838 INFO    ] 200
[2026-06-12 14:47:40,839.839 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:47:40,869.869 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 14:47:40,871.871 INFO    ] No update needed
[2026-06-12 14:47:40,873.873 INFO    ] Checking for camera pi updates...
[2026-06-12 14:47:40,892.892 INFO    ] 200
[2026-06-12 14:47:40,893.893 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:47:40,917.917 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 14:47:40,962.962 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 14:47:40,963.963 INFO    ] No camera update needed
[2026-06-12 14:47:40,965.965 INFO    ] Script finished. Safe exiting...
[2026-06-12 14:47:40,966.966 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 14:47:40,969.969 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 14:47:40,972.972 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 14:47:43,009.009 INFO    ] ================================================
[2026-06-12 14:47:43,024.024 INFO    ] Launching Daemon at Fri Jun 12 14:47:43 IST 2026
[2026-06-12 14:47:43,035.035 INFO    ] ================================================
[2026-06-12 14:47:43,418.418 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 14:47:43
[2026-06-12 14:47:43,746.746 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 14:47:43,883.883 INFO    ] Initializing speech engine...
[2026-06-12 14:47:43,896.896 INFO    ] 2026-06-12 14:47:43
[2026-06-12 14:47:44,106.106 INFO    ] 2026-06-12 14:47:44
[2026-06-12 14:47:44,135.135 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 14:47:44,319.319 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 14:47:44,327.327 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 14:47:44,473.473 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 14:47:44,525.525 INFO    ] time= 12/06/2026 14:47:44
[2026-06-12 14:47:44,548.548 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 14:47:44,554.554 INFO    ] Checking for existing commands in stream...
[2026-06-12 14:47:44,621.621 INFO    ] No existing commands found in stream
[2026-06-12 14:47:49,641.641 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 14:47:49,644.644 INFO    ] Waiting 2.00 seconds before fallback handling...
[2026-06-12 14:47:52,062.062 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 14:47:52,063.063 INFO    ] Checking for system updates...
[2026-06-12 14:47:52,085.085 INFO    ] 200
[2026-06-12 14:47:52,087.087 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:47:52,117.117 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 14:47:52,119.119 INFO    ] No update needed
[2026-06-12 14:47:52,120.120 INFO    ] Checking for camera pi updates...
[2026-06-12 14:47:52,140.140 INFO    ] 200
[2026-06-12 14:47:52,141.141 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:47:52,165.165 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 14:47:52,234.234 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 14:47:52,236.236 INFO    ] No camera update needed
[2026-06-12 14:47:52,237.237 INFO    ] Script finished. Safe exiting...
[2026-06-12 14:47:52,238.238 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 14:47:52,241.241 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 14:47:52,244.244 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 14:47:54,281.281 INFO    ] ================================================
[2026-06-12 14:47:54,297.297 INFO    ] Launching Daemon at Fri Jun 12 14:47:54 IST 2026
[2026-06-12 14:47:54,308.308 INFO    ] ================================================
[2026-06-12 14:47:54,647.647 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 14:47:54
[2026-06-12 14:47:54,959.959 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 14:47:55,093.093 INFO    ] Initializing speech engine...
[2026-06-12 14:47:55,101.101 INFO    ] 2026-06-12 14:47:55
[2026-06-12 14:47:55,322.322 INFO    ] 2026-06-12 14:47:55
[2026-06-12 14:47:55,353.353 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 14:47:55,483.483 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 14:47:55,546.546 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 14:47:55,688.688 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 14:47:55,739.739 INFO    ] time= 12/06/2026 14:47:55
[2026-06-12 14:47:55,771.771 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 14:47:55,794.794 INFO    ] Checking for existing commands in stream...
[2026-06-12 14:47:55,870.870 INFO    ] No existing commands found in stream
[2026-06-12 14:48:00,879.879 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 14:48:00,882.882 INFO    ] Waiting 3.68 seconds before fallback handling...
[2026-06-12 14:48:04,950.950 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 14:48:04,951.951 INFO    ] Checking for system updates...
[2026-06-12 14:48:04,972.972 INFO    ] 200
[2026-06-12 14:48:04,973.973 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:48:05,003.003 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 14:48:05,004.004 INFO    ] No update needed
[2026-06-12 14:48:05,005.005 INFO    ] Checking for camera pi updates...
[2026-06-12 14:48:05,025.025 INFO    ] 200
[2026-06-12 14:48:05,027.027 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:48:05,049.049 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 14:48:05,095.095 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 14:48:05,096.096 INFO    ] No camera update needed
[2026-06-12 14:48:05,097.097 INFO    ] Script finished. Safe exiting...
[2026-06-12 14:48:05,098.098 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 14:48:05,102.102 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 14:48:05,104.104 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 14:48:07,142.142 INFO    ] ================================================
[2026-06-12 14:48:07,157.157 INFO    ] Launching Daemon at Fri Jun 12 14:48:07 IST 2026
[2026-06-12 14:48:07,169.169 INFO    ] ================================================
[2026-06-12 14:48:07,502.502 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 14:48:07
[2026-06-12 14:48:07,834.834 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 14:48:07,989.989 INFO    ] Initializing speech engine...
[2026-06-12 14:48:07,996.996 INFO    ] 2026-06-12 14:48:07
[2026-06-12 14:48:08,213.213 INFO    ] 2026-06-12 14:48:08
[2026-06-12 14:48:08,245.245 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 14:48:08,383.383 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 14:48:08,431.431 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 14:48:08,569.569 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 14:48:08,625.625 INFO    ] time= 12/06/2026 14:48:08
[2026-06-12 14:48:08,659.659 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 14:48:08,665.665 INFO    ] Checking for existing commands in stream...
[2026-06-12 14:48:08,737.737 INFO    ] No existing commands found in stream
[2026-06-12 14:48:13,750.750 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 14:48:13,752.752 INFO    ] Waiting 3.98 seconds before fallback handling...
[2026-06-12 14:48:18,126.126 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 14:48:18,128.128 INFO    ] Checking for system updates...
[2026-06-12 14:48:18,148.148 INFO    ] 200
[2026-06-12 14:48:18,150.150 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:48:18,179.179 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 14:48:18,180.180 INFO    ] No update needed
[2026-06-12 14:48:18,182.182 INFO    ] Checking for camera pi updates...
[2026-06-12 14:48:18,204.204 INFO    ] 200
[2026-06-12 14:48:18,206.206 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:48:18,230.230 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 14:48:18,272.272 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 14:48:18,274.274 INFO    ] No camera update needed
[2026-06-12 14:48:18,275.275 INFO    ] Script finished. Safe exiting...
[2026-06-12 14:48:18,276.276 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 14:48:18,279.279 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 14:48:18,282.282 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 14:48:20,323.323 INFO    ] ================================================
[2026-06-12 14:48:20,339.339 INFO    ] Launching Daemon at Fri Jun 12 14:48:20 IST 2026
[2026-06-12 14:48:20,350.350 INFO    ] ================================================
[2026-06-12 14:48:20,691.691 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 14:48:20
[2026-06-12 14:48:21,008.008 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 14:48:21,141.141 INFO    ] Initializing speech engine...
[2026-06-12 14:48:21,150.150 INFO    ] 2026-06-12 14:48:21
[2026-06-12 14:48:21,376.376 INFO    ] 2026-06-12 14:48:21
[2026-06-12 14:48:21,406.406 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 14:48:21,602.602 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 14:48:21,606.606 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 14:48:21,752.752 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 14:48:21,821.821 INFO    ] time= 12/06/2026 14:48:21
[2026-06-12 14:48:21,849.849 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 14:48:21,851.851 INFO    ] Checking for existing commands in stream...
[2026-06-12 14:48:21,953.953 INFO    ] No existing commands found in stream
[2026-06-12 14:48:26,966.966 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 14:48:26,969.969 INFO    ] Waiting 3.07 seconds before fallback handling...
[2026-06-12 14:48:30,435.435 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 14:48:30,436.436 INFO    ] Checking for system updates...
[2026-06-12 14:48:30,458.458 INFO    ] 200
[2026-06-12 14:48:30,459.459 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:48:30,491.491 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 14:48:30,492.492 INFO    ] No update needed
[2026-06-12 14:48:30,494.494 INFO    ] Checking for camera pi updates...
[2026-06-12 14:48:30,514.514 INFO    ] 200
[2026-06-12 14:48:30,515.515 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:48:30,540.540 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 14:48:30,602.602 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 14:48:30,603.603 INFO    ] No camera update needed
[2026-06-12 14:48:30,604.604 INFO    ] Script finished. Safe exiting...
[2026-06-12 14:48:30,606.606 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 14:48:30,609.609 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 14:48:30,612.612 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 14:48:32,645.645 INFO    ] ================================================
[2026-06-12 14:48:32,660.660 INFO    ] Launching Daemon at Fri Jun 12 14:48:32 IST 2026
[2026-06-12 14:48:32,672.672 INFO    ] ================================================
[2026-06-12 14:48:33,061.061 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 14:48:33
[2026-06-12 14:48:33,399.399 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 14:48:33,549.549 INFO    ] Initializing speech engine...
[2026-06-12 14:48:33,555.555 INFO    ] 2026-06-12 14:48:33
[2026-06-12 14:48:33,763.763 INFO    ] 2026-06-12 14:48:33
[2026-06-12 14:48:33,791.791 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 14:48:33,976.976 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 14:48:33,988.988 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 14:48:34,130.130 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 14:48:34,185.185 INFO    ] time= 12/06/2026 14:48:34
[2026-06-12 14:48:34,206.206 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 14:48:34,212.212 INFO    ] Checking for existing commands in stream...
[2026-06-12 14:48:34,281.281 INFO    ] No existing commands found in stream
[2026-06-12 14:48:39,290.290 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 14:48:39,293.293 INFO    ] Waiting 3.05 seconds before fallback handling...
[2026-06-12 14:48:42,754.754 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 14:48:42,756.756 INFO    ] Checking for system updates...
[2026-06-12 14:48:42,777.777 INFO    ] 200
[2026-06-12 14:48:42,779.779 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:48:42,811.811 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 14:48:42,812.812 INFO    ] No update needed
[2026-06-12 14:48:42,814.814 INFO    ] Checking for camera pi updates...
[2026-06-12 14:48:42,836.836 INFO    ] 200
[2026-06-12 14:48:42,837.837 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:48:42,862.862 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 14:48:42,915.915 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 14:48:42,916.916 INFO    ] No camera update needed
[2026-06-12 14:48:42,918.918 INFO    ] Script finished. Safe exiting...
[2026-06-12 14:48:42,919.919 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 14:48:42,923.923 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 14:48:42,926.926 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 14:48:44,966.966 INFO    ] ================================================
[2026-06-12 14:48:44,981.981 INFO    ] Launching Daemon at Fri Jun 12 14:48:44 IST 2026
[2026-06-12 14:48:44,992.992 INFO    ] ================================================
[2026-06-12 14:48:45,312.312 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 14:48:45
[2026-06-12 14:48:45,626.626 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 14:48:45,767.767 INFO    ] Initializing speech engine...
[2026-06-12 14:48:45,773.773 INFO    ] 2026-06-12 14:48:45
[2026-06-12 14:48:45,976.976 INFO    ] 2026-06-12 14:48:45
[2026-06-12 14:48:46,005.005 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 14:48:46,187.187 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 14:48:46,190.190 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 14:48:46,356.356 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 14:48:46,405.405 INFO    ] time= 12/06/2026 14:48:46
[2026-06-12 14:48:46,415.415 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 14:48:46,421.421 INFO    ] Checking for existing commands in stream...
[2026-06-12 14:48:46,487.487 INFO    ] No existing commands found in stream
[2026-06-12 14:48:51,496.496 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 14:48:51,499.499 INFO    ] Waiting 2.85 seconds before fallback handling...
[2026-06-12 14:48:54,716.716 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 14:48:54,717.717 INFO    ] Checking for system updates...
[2026-06-12 14:48:54,738.738 INFO    ] 200
[2026-06-12 14:48:54,739.739 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:48:54,769.769 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 14:48:54,771.771 INFO    ] No update needed
[2026-06-12 14:48:54,772.772 INFO    ] Checking for camera pi updates...
[2026-06-12 14:48:54,792.792 INFO    ] 200
[2026-06-12 14:48:54,793.793 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:48:54,817.817 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 14:48:54,900.900 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 14:48:54,901.901 INFO    ] No camera update needed
[2026-06-12 14:48:54,903.903 INFO    ] Script finished. Safe exiting...
[2026-06-12 14:48:54,904.904 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 14:48:54,907.907 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 14:48:54,911.911 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 14:48:56,949.949 INFO    ] ================================================
[2026-06-12 14:48:56,964.964 INFO    ] Launching Daemon at Fri Jun 12 14:48:56 IST 2026
[2026-06-12 14:48:56,975.975 INFO    ] ================================================
[2026-06-12 14:48:57,320.320 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 14:48:57
[2026-06-12 14:48:57,658.658 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 14:48:57,809.809 INFO    ] Initializing speech engine...
[2026-06-12 14:48:57,814.814 INFO    ] 2026-06-12 14:48:57
[2026-06-12 14:48:58,022.022 INFO    ] 2026-06-12 14:48:58
[2026-06-12 14:48:58,052.052 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 14:48:58,235.235 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 14:48:58,245.245 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 14:48:58,390.390 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 14:48:58,443.443 INFO    ] time= 12/06/2026 14:48:58
[2026-06-12 14:48:58,466.466 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 14:48:58,473.473 INFO    ] Checking for existing commands in stream...
[2026-06-12 14:48:58,540.540 INFO    ] No existing commands found in stream
[2026-06-12 14:49:03,559.559 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 14:49:03,562.562 INFO    ] Waiting 2.81 seconds before fallback handling...
[2026-06-12 14:49:06,808.808 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 14:49:06,810.810 INFO    ] Checking for system updates...
[2026-06-12 14:49:06,832.832 INFO    ] 200
[2026-06-12 14:49:06,833.833 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:49:06,865.865 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 14:49:06,867.867 INFO    ] No update needed
[2026-06-12 14:49:06,868.868 INFO    ] Checking for camera pi updates...
[2026-06-12 14:49:06,888.888 INFO    ] 200
[2026-06-12 14:49:06,890.890 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:49:06,914.914 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 14:49:06,960.960 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 14:49:06,962.962 INFO    ] No camera update needed
[2026-06-12 14:49:06,963.963 INFO    ] Script finished. Safe exiting...
[2026-06-12 14:49:06,964.964 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 14:49:06,967.967 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 14:49:06,970.970 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 14:49:09,009.009 INFO    ] ================================================
[2026-06-12 14:49:09,025.025 INFO    ] Launching Daemon at Fri Jun 12 14:49:09 IST 2026
[2026-06-12 14:49:09,036.036 INFO    ] ================================================
[2026-06-12 14:49:09,425.425 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 14:49:09
[2026-06-12 14:49:09,758.758 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 14:49:09,908.908 INFO    ] Initializing speech engine...
[2026-06-12 14:49:09,915.915 INFO    ] 2026-06-12 14:49:09
[2026-06-12 14:49:10,123.123 INFO    ] 2026-06-12 14:49:10
[2026-06-12 14:49:10,152.152 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 14:49:10,341.341 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 14:49:10,352.352 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 14:49:10,488.488 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 14:49:10,552.552 INFO    ] time= 12/06/2026 14:49:10
[2026-06-12 14:49:10,575.575 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 14:49:10,582.582 INFO    ] Checking for existing commands in stream...
[2026-06-12 14:49:10,653.653 INFO    ] No existing commands found in stream
[2026-06-12 14:49:15,673.673 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 14:49:15,676.676 INFO    ] Waiting 0.09 seconds before fallback handling...
[2026-06-12 14:49:16,179.179 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 14:49:16,180.180 INFO    ] Checking for system updates...
[2026-06-12 14:49:16,202.202 INFO    ] 200
[2026-06-12 14:49:16,204.204 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:49:16,234.234 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 14:49:16,235.235 INFO    ] No update needed
[2026-06-12 14:49:16,237.237 INFO    ] Checking for camera pi updates...
[2026-06-12 14:49:16,256.256 INFO    ] 200
[2026-06-12 14:49:16,258.258 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:49:16,281.281 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 14:49:16,328.328 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 14:49:16,330.330 INFO    ] No camera update needed
[2026-06-12 14:49:16,331.331 INFO    ] Script finished. Safe exiting...
[2026-06-12 14:49:16,332.332 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 14:49:16,336.336 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 14:49:16,339.339 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 14:49:18,377.377 INFO    ] ================================================
[2026-06-12 14:49:18,392.392 INFO    ] Launching Daemon at Fri Jun 12 14:49:18 IST 2026
[2026-06-12 14:49:18,403.403 INFO    ] ================================================
[2026-06-12 14:49:18,747.747 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 14:49:18
[2026-06-12 14:49:19,061.061 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 14:49:19,191.191 INFO    ] Initializing speech engine...
[2026-06-12 14:49:19,194.194 INFO    ] 2026-06-12 14:49:19
[2026-06-12 14:49:19,410.410 INFO    ] 2026-06-12 14:49:19
[2026-06-12 14:49:19,453.453 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 14:49:19,646.646 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 14:49:19,652.652 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 14:49:19,776.776 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 14:49:19,828.828 INFO    ] time= 12/06/2026 14:49:19
[2026-06-12 14:49:19,851.851 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 14:49:19,857.857 INFO    ] Checking for existing commands in stream...
[2026-06-12 14:49:19,924.924 INFO    ] No existing commands found in stream
[2026-06-12 14:49:24,938.938 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 14:49:24,941.941 INFO    ] Waiting 2.55 seconds before fallback handling...
[2026-06-12 14:49:27,897.897 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 14:49:27,898.898 INFO    ] Checking for system updates...
[2026-06-12 14:49:27,918.918 INFO    ] 200
[2026-06-12 14:49:27,920.920 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:49:27,950.950 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 14:49:27,951.951 INFO    ] No update needed
[2026-06-12 14:49:27,953.953 INFO    ] Checking for camera pi updates...
[2026-06-12 14:49:27,974.974 INFO    ] 200
[2026-06-12 14:49:27,975.975 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:49:28,000.000 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 14:49:28,142.142 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 14:49:28,144.144 INFO    ] No camera update needed
[2026-06-12 14:49:28,145.145 INFO    ] Script finished. Safe exiting...
[2026-06-12 14:49:28,146.146 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 14:49:28,149.149 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 14:49:28,152.152 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 14:49:30,190.190 INFO    ] ================================================
[2026-06-12 14:49:30,206.206 INFO    ] Launching Daemon at Fri Jun 12 14:49:30 IST 2026
[2026-06-12 14:49:30,217.217 INFO    ] ================================================
[2026-06-12 14:49:30,545.545 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 14:49:30
[2026-06-12 14:49:30,856.856 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 14:49:30,989.989 INFO    ] Initializing speech engine...
[2026-06-12 14:49:31,003.003 INFO    ] 2026-06-12 14:49:30
[2026-06-12 14:49:31,208.208 INFO    ] 2026-06-12 14:49:31
[2026-06-12 14:49:31,238.238 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 14:49:31,425.425 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 14:49:31,434.434 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 14:49:31,571.571 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 14:49:31,641.641 INFO    ] time= 12/06/2026 14:49:31
[2026-06-12 14:49:31,673.673 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 14:49:31,680.680 INFO    ] Checking for existing commands in stream...
[2026-06-12 14:49:31,750.750 INFO    ] No existing commands found in stream
[2026-06-12 14:49:36,759.759 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 14:49:36,762.762 INFO    ] Waiting 3.02 seconds before fallback handling...
[2026-06-12 14:49:40,177.177 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 14:49:40,179.179 INFO    ] Checking for system updates...
[2026-06-12 14:49:40,200.200 INFO    ] 200
[2026-06-12 14:49:40,202.202 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:49:40,232.232 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 14:49:40,233.233 INFO    ] No update needed
[2026-06-12 14:49:40,234.234 INFO    ] Checking for camera pi updates...
[2026-06-12 14:49:40,253.253 INFO    ] 200
[2026-06-12 14:49:40,254.254 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:49:40,277.277 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 14:49:40,327.327 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 14:49:40,328.328 INFO    ] No camera update needed
[2026-06-12 14:49:40,330.330 INFO    ] Script finished. Safe exiting...
[2026-06-12 14:49:40,331.331 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 14:49:40,334.334 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 14:49:40,336.336 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 14:49:42,374.374 INFO    ] ================================================
[2026-06-12 14:49:42,389.389 INFO    ] Launching Daemon at Fri Jun 12 14:49:42 IST 2026
[2026-06-12 14:49:42,401.401 INFO    ] ================================================
[2026-06-12 14:49:42,764.764 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 14:49:42
[2026-06-12 14:49:43,100.100 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 14:49:43,249.249 INFO    ] Initializing speech engine...
[2026-06-12 14:49:43,255.255 INFO    ] 2026-06-12 14:49:43
[2026-06-12 14:49:43,462.462 INFO    ] 2026-06-12 14:49:43
[2026-06-12 14:49:43,491.491 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 14:49:43,674.674 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 14:49:43,684.684 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 14:49:43,829.829 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 14:49:43,882.882 INFO    ] time= 12/06/2026 14:49:43
[2026-06-12 14:49:43,905.905 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 14:49:43,911.911 INFO    ] Checking for existing commands in stream...
[2026-06-12 14:49:43,978.978 INFO    ] No existing commands found in stream
[2026-06-12 14:49:48,992.992 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 14:49:48,995.995 INFO    ] Waiting 2.07 seconds before fallback handling...
[2026-06-12 14:49:51,485.485 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 14:49:51,486.486 INFO    ] Checking for system updates...
[2026-06-12 14:49:51,507.507 INFO    ] 200
[2026-06-12 14:49:51,509.509 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:49:51,539.539 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 14:49:51,541.541 INFO    ] No update needed
[2026-06-12 14:49:51,542.542 INFO    ] Checking for camera pi updates...
[2026-06-12 14:49:51,562.562 INFO    ] 200
[2026-06-12 14:49:51,563.563 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:49:51,586.586 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 14:49:51,639.639 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 14:49:51,640.640 INFO    ] No camera update needed
[2026-06-12 14:49:51,642.642 INFO    ] Script finished. Safe exiting...
[2026-06-12 14:49:51,643.643 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 14:49:51,646.646 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 14:49:51,649.649 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 14:49:53,679.679 INFO    ] ================================================
[2026-06-12 14:49:53,688.688 INFO    ] Launching Daemon at Fri Jun 12 14:49:53 IST 2026
[2026-06-12 14:49:53,695.695 INFO    ] ================================================
[2026-06-12 14:49:54,012.012 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 14:49:54
[2026-06-12 14:49:54,325.325 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 14:49:54,458.458 INFO    ] Initializing speech engine...
[2026-06-12 14:49:54,462.462 INFO    ] 2026-06-12 14:49:54
[2026-06-12 14:49:54,692.692 INFO    ] 2026-06-12 14:49:54
[2026-06-12 14:49:54,723.723 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 14:49:54,855.855 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 14:49:54,887.887 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 14:49:55,042.042 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 14:49:55,074.074 INFO    ] time= 12/06/2026 14:49:55
[2026-06-12 14:49:55,144.144 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 14:49:55,172.172 INFO    ] Checking for existing commands in stream...
[2026-06-12 14:49:55,250.250 INFO    ] No existing commands found in stream
[2026-06-12 14:50:00,259.259 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 14:50:00,262.262 INFO    ] Waiting 0.67 seconds before fallback handling...
[2026-06-12 14:50:01,302.302 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 14:50:01,304.304 INFO    ] Checking for system updates...
[2026-06-12 14:50:01,324.324 INFO    ] 200
[2026-06-12 14:50:01,325.325 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:50:01,354.354 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 14:50:01,356.356 INFO    ] No update needed
[2026-06-12 14:50:01,357.357 INFO    ] Checking for camera pi updates...
[2026-06-12 14:50:01,376.376 INFO    ] 200
[2026-06-12 14:50:01,378.378 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:50:01,403.403 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 14:50:01,444.444 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 14:50:01,445.445 INFO    ] No camera update needed
[2026-06-12 14:50:01,446.446 INFO    ] Script finished. Safe exiting...
[2026-06-12 14:50:01,448.448 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 14:50:01,451.451 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 14:50:01,453.453 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 14:50:03,489.489 INFO    ] ================================================
[2026-06-12 14:50:03,505.505 INFO    ] Launching Daemon at Fri Jun 12 14:50:03 IST 2026
[2026-06-12 14:50:03,516.516 INFO    ] ================================================
[2026-06-12 14:50:03,875.875 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 14:50:03
[2026-06-12 14:50:04,187.187 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 14:50:04,318.318 INFO    ] Initializing speech engine...
[2026-06-12 14:50:04,322.322 INFO    ] 2026-06-12 14:50:04
[2026-06-12 14:50:04,543.543 INFO    ] 2026-06-12 14:50:04
[2026-06-12 14:50:04,572.572 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 14:50:04,760.760 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 14:50:04,764.764 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 14:50:04,900.900 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 14:50:04,964.964 INFO    ] time= 12/06/2026 14:50:04
[2026-06-12 14:50:04,991.991 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 14:50:04,997.997 INFO    ] Checking for existing commands in stream...
[2026-06-12 14:50:05,066.066 INFO    ] No existing commands found in stream
[2026-06-12 14:50:10,079.079 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 14:50:10,082.082 INFO    ] Waiting 3.43 seconds before fallback handling...
[2026-06-12 14:50:13,896.896 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 14:50:13,897.897 INFO    ] Checking for system updates...
[2026-06-12 14:50:13,918.918 INFO    ] 200
[2026-06-12 14:50:13,919.919 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:50:13,948.948 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 14:50:13,950.950 INFO    ] No update needed
[2026-06-12 14:50:13,951.951 INFO    ] Checking for camera pi updates...
[2026-06-12 14:50:13,973.973 INFO    ] 200
[2026-06-12 14:50:13,974.974 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:50:13,997.997 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 14:50:14,040.040 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 14:50:14,042.042 INFO    ] No camera update needed
[2026-06-12 14:50:14,043.043 INFO    ] Script finished. Safe exiting...
[2026-06-12 14:50:14,044.044 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 14:50:14,047.047 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 14:50:14,050.050 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 14:50:16,089.089 INFO    ] ================================================
[2026-06-12 14:50:16,104.104 INFO    ] Launching Daemon at Fri Jun 12 14:50:16 IST 2026
[2026-06-12 14:50:16,115.115 INFO    ] ================================================
[2026-06-12 14:50:16,480.480 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 14:50:16
[2026-06-12 14:50:16,792.792 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 14:50:16,924.924 INFO    ] Initializing speech engine...
[2026-06-12 14:50:16,931.931 INFO    ] 2026-06-12 14:50:16
[2026-06-12 14:50:17,146.146 INFO    ] 2026-06-12 14:50:17
[2026-06-12 14:50:17,174.174 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 14:50:17,299.299 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 14:50:17,362.362 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 14:50:17,503.503 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 14:50:17,571.571 INFO    ] time= 12/06/2026 14:50:17
[2026-06-12 14:50:17,596.596 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 14:50:17,602.602 INFO    ] Checking for existing commands in stream...
[2026-06-12 14:50:17,670.670 INFO    ] No existing commands found in stream
[2026-06-12 14:50:22,684.684 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 14:50:22,687.687 INFO    ] Waiting 2.84 seconds before fallback handling...
[2026-06-12 14:50:25,908.908 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 14:50:25,910.910 INFO    ] Checking for system updates...
[2026-06-12 14:50:25,931.931 INFO    ] 200
[2026-06-12 14:50:25,932.932 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:50:25,964.964 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 14:50:25,965.965 INFO    ] No update needed
[2026-06-12 14:50:25,967.967 INFO    ] Checking for camera pi updates...
[2026-06-12 14:50:25,989.989 INFO    ] 200
[2026-06-12 14:50:25,991.991 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:50:26,014.014 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 14:50:26,068.068 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 14:50:26,070.070 INFO    ] No camera update needed
[2026-06-12 14:50:26,072.072 INFO    ] Script finished. Safe exiting...
[2026-06-12 14:50:26,073.073 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 14:50:26,076.076 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 14:50:26,079.079 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 14:50:28,117.117 INFO    ] ================================================
[2026-06-12 14:50:28,132.132 INFO    ] Launching Daemon at Fri Jun 12 14:50:28 IST 2026
[2026-06-12 14:50:28,143.143 INFO    ] ================================================
[2026-06-12 14:50:28,494.494 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 14:50:28
[2026-06-12 14:50:28,806.806 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 14:50:28,937.937 INFO    ] Initializing speech engine...
[2026-06-12 14:50:28,942.942 INFO    ] 2026-06-12 14:50:28
[2026-06-12 14:50:29,143.143 INFO    ] 2026-06-12 14:50:29
[2026-06-12 14:50:29,177.177 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 14:50:29,329.329 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 14:50:29,335.335 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 14:50:29,495.495 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 14:50:29,543.543 INFO    ] time= 12/06/2026 14:50:29
[2026-06-12 14:50:29,605.605 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 14:50:29,639.639 INFO    ] Checking for existing commands in stream...
[2026-06-12 14:50:29,724.724 INFO    ] No existing commands found in stream
[2026-06-12 14:50:34,735.735 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 14:50:34,737.737 INFO    ] Waiting 2.18 seconds before fallback handling...
[2026-06-12 14:50:37,335.335 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 14:50:37,337.337 INFO    ] Checking for system updates...
[2026-06-12 14:50:37,358.358 INFO    ] 200
[2026-06-12 14:50:37,359.359 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:50:37,391.391 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 14:50:37,392.392 INFO    ] No update needed
[2026-06-12 14:50:37,393.393 INFO    ] Checking for camera pi updates...
[2026-06-12 14:50:37,412.412 INFO    ] 200
[2026-06-12 14:50:37,413.413 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:50:37,438.438 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 14:50:37,476.476 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 14:50:37,477.477 INFO    ] No camera update needed
[2026-06-12 14:50:37,478.478 INFO    ] Script finished. Safe exiting...
[2026-06-12 14:50:37,480.480 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 14:50:37,483.483 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 14:50:37,485.485 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 14:50:39,523.523 INFO    ] ================================================
[2026-06-12 14:50:39,539.539 INFO    ] Launching Daemon at Fri Jun 12 14:50:39 IST 2026
[2026-06-12 14:50:39,551.551 INFO    ] ================================================
[2026-06-12 14:50:39,888.888 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 14:50:39
[2026-06-12 14:50:40,207.207 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 14:50:40,353.353 INFO    ] Initializing speech engine...
[2026-06-12 14:50:40,359.359 INFO    ] 2026-06-12 14:50:40
[2026-06-12 14:50:40,565.565 INFO    ] 2026-06-12 14:50:40
[2026-06-12 14:50:40,593.593 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 14:50:40,778.778 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 14:50:40,787.787 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 14:50:40,892.892 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 14:50:40,894.894 INFO    ] time= 12/06/2026 14:50:40
[2026-06-12 14:50:40,895.895 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 14:50:40,896.896 INFO    ] Checking for existing commands in stream...
[2026-06-12 14:50:40,963.963 INFO    ] No existing commands found in stream
[2026-06-12 14:50:45,972.972 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 14:50:45,975.975 INFO    ] Waiting 1.10 seconds before fallback handling...
[2026-06-12 14:50:47,477.477 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 14:50:47,478.478 INFO    ] Checking for system updates...
[2026-06-12 14:50:47,499.499 INFO    ] 200
[2026-06-12 14:50:47,501.501 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:50:47,531.531 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 14:50:47,533.533 INFO    ] No update needed
[2026-06-12 14:50:47,534.534 INFO    ] Checking for camera pi updates...
[2026-06-12 14:50:47,553.553 INFO    ] 200
[2026-06-12 14:50:47,555.555 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:50:47,577.577 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 14:50:47,622.622 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 14:50:47,623.623 INFO    ] No camera update needed
[2026-06-12 14:50:47,625.625 INFO    ] Script finished. Safe exiting...
[2026-06-12 14:50:47,626.626 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 14:50:47,629.629 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 14:50:47,633.633 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 14:50:49,673.673 INFO    ] ================================================
[2026-06-12 14:50:49,689.689 INFO    ] Launching Daemon at Fri Jun 12 14:50:49 IST 2026
[2026-06-12 14:50:49,700.700 INFO    ] ================================================
[2026-06-12 14:50:50,041.041 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 14:50:50
[2026-06-12 14:50:50,358.358 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 14:50:50,506.506 INFO    ] Initializing speech engine...
[2026-06-12 14:50:50,511.511 INFO    ] 2026-06-12 14:50:50
[2026-06-12 14:50:50,714.714 INFO    ] 2026-06-12 14:50:50
[2026-06-12 14:50:50,742.742 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 14:50:50,926.926 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 14:50:50,935.935 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 14:50:51,062.062 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 14:50:51,123.123 INFO    ] time= 12/06/2026 14:50:51
[2026-06-12 14:50:51,155.155 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 14:50:51,162.162 INFO    ] Checking for existing commands in stream...
[2026-06-12 14:50:51,256.256 INFO    ] No existing commands found in stream
[2026-06-12 14:50:56,264.264 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 14:50:56,267.267 INFO    ] Waiting 1.34 seconds before fallback handling...
[2026-06-12 14:50:58,240.240 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 14:50:58,242.242 INFO    ] Checking for system updates...
[2026-06-12 14:50:58,263.263 INFO    ] 200
[2026-06-12 14:50:58,264.264 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:50:58,294.294 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 14:50:58,295.295 INFO    ] No update needed
[2026-06-12 14:50:58,296.296 INFO    ] Checking for camera pi updates...
[2026-06-12 14:50:58,316.316 INFO    ] 200
[2026-06-12 14:50:58,317.317 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:50:58,340.340 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 14:50:58,412.412 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 14:50:58,413.413 INFO    ] No camera update needed
[2026-06-12 14:50:58,415.415 INFO    ] Script finished. Safe exiting...
[2026-06-12 14:50:58,416.416 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 14:50:58,419.419 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 14:50:58,422.422 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 14:51:00,461.461 INFO    ] ================================================
[2026-06-12 14:51:00,476.476 INFO    ] Launching Daemon at Fri Jun 12 14:51:00 IST 2026
[2026-06-12 14:51:00,487.487 INFO    ] ================================================
[2026-06-12 14:51:00,854.854 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 14:51:00
[2026-06-12 14:51:01,263.263 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 14:51:01,550.550 INFO    ] Initializing speech engine...
[2026-06-12 14:51:01,554.554 INFO    ] 2026-06-12 14:51:01
[2026-06-12 14:51:01,805.805 INFO    ] 2026-06-12 14:51:01
[2026-06-12 14:51:01,826.826 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 14:51:01,985.985 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 14:51:01,995.995 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 14:51:02,140.140 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 14:51:02,200.200 INFO    ] time= 12/06/2026 14:51:02
[2026-06-12 14:51:02,250.250 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 14:51:02,256.256 INFO    ] Checking for existing commands in stream...
[2026-06-12 14:51:02,326.326 INFO    ] No existing commands found in stream
[2026-06-12 14:51:07,336.336 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 14:51:07,337.337 INFO    ] Waiting 2.29 seconds before fallback handling...
[2026-06-12 14:51:09,988.988 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 14:51:09,989.989 INFO    ] Checking for system updates...
[2026-06-12 14:51:10,010.010 INFO    ] 200
[2026-06-12 14:51:10,011.011 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:51:10,041.041 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 14:51:10,043.043 INFO    ] No update needed
[2026-06-12 14:51:10,044.044 INFO    ] Checking for camera pi updates...
[2026-06-12 14:51:10,063.063 INFO    ] 200
[2026-06-12 14:51:10,065.065 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:51:10,089.089 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 14:51:10,134.134 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 14:51:10,136.136 INFO    ] No camera update needed
[2026-06-12 14:51:10,137.137 INFO    ] Script finished. Safe exiting...
[2026-06-12 14:51:10,139.139 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 14:51:10,142.142 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 14:51:10,145.145 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 14:51:12,185.185 INFO    ] ================================================
[2026-06-12 14:51:12,201.201 INFO    ] Launching Daemon at Fri Jun 12 14:51:12 IST 2026
[2026-06-12 14:51:12,211.211 INFO    ] ================================================
[2026-06-12 14:51:12,541.541 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 14:51:12
[2026-06-12 14:51:12,853.853 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 14:51:12,987.987 INFO    ] Initializing speech engine...
[2026-06-12 14:51:12,991.991 INFO    ] 2026-06-12 14:51:12
[2026-06-12 14:51:13,196.196 INFO    ] 2026-06-12 14:51:13
[2026-06-12 14:51:13,230.230 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 14:51:13,390.390 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 14:51:13,438.438 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 14:51:13,601.601 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 14:51:13,663.663 INFO    ] time= 12/06/2026 14:51:13
[2026-06-12 14:51:13,699.699 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 14:51:13,710.710 INFO    ] Checking for existing commands in stream...
[2026-06-12 14:51:13,786.786 INFO    ] No existing commands found in stream
[2026-06-12 14:51:18,797.797 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 14:51:18,799.799 INFO    ] Waiting 2.40 seconds before fallback handling...
[2026-06-12 14:51:21,563.563 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 14:51:21,565.565 INFO    ] Checking for system updates...
[2026-06-12 14:51:21,585.585 INFO    ] 200
[2026-06-12 14:51:21,586.586 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:51:21,618.618 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 14:51:21,620.620 INFO    ] No update needed
[2026-06-12 14:51:21,621.621 INFO    ] Checking for camera pi updates...
[2026-06-12 14:51:21,640.640 INFO    ] 200
[2026-06-12 14:51:21,642.642 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:51:21,665.665 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 14:51:21,751.751 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 14:51:21,753.753 INFO    ] No camera update needed
[2026-06-12 14:51:21,754.754 INFO    ] Script finished. Safe exiting...
[2026-06-12 14:51:21,755.755 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 14:51:21,758.758 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 14:51:21,761.761 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 14:51:23,801.801 INFO    ] ================================================
[2026-06-12 14:51:24,063.063 INFO    ] Launching Daemon at Fri Jun 12 14:51:24 IST 2026
[2026-06-12 14:51:24,075.075 INFO    ] ================================================
[2026-06-12 14:51:24,446.446 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 14:51:24
[2026-06-12 14:51:24,757.757 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 14:51:24,889.889 INFO    ] Initializing speech engine...
[2026-06-12 14:51:24,902.902 INFO    ] 2026-06-12 14:51:24
[2026-06-12 14:51:25,109.109 INFO    ] 2026-06-12 14:51:25
[2026-06-12 14:51:25,139.139 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 14:51:25,324.324 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 14:51:25,333.333 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 14:51:25,474.474 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 14:51:25,532.532 INFO    ] time= 12/06/2026 14:51:25
[2026-06-12 14:51:25,555.555 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 14:51:25,561.561 INFO    ] Checking for existing commands in stream...
[2026-06-12 14:51:25,628.628 INFO    ] No existing commands found in stream
[2026-06-12 14:51:30,637.637 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 14:51:30,640.640 INFO    ] Waiting 3.97 seconds before fallback handling...
[2026-06-12 14:51:34,995.995 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 14:51:35,263.263 INFO    ] Checking for system updates...
[2026-06-12 14:51:35,283.283 INFO    ] 200
[2026-06-12 14:51:35,284.284 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:51:35,314.314 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 14:51:35,316.316 INFO    ] No update needed
[2026-06-12 14:51:35,317.317 INFO    ] Checking for camera pi updates...
[2026-06-12 14:51:35,336.336 INFO    ] 200
[2026-06-12 14:51:35,337.337 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:51:35,362.362 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 14:51:35,406.406 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 14:51:35,408.408 INFO    ] No camera update needed
[2026-06-12 14:51:35,409.409 INFO    ] Script finished. Safe exiting...
[2026-06-12 14:51:35,410.410 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 14:51:35,413.413 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 14:51:35,416.416 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 14:51:37,456.456 INFO    ] ================================================
[2026-06-12 14:51:37,472.472 INFO    ] Launching Daemon at Fri Jun 12 14:51:37 IST 2026
[2026-06-12 14:51:37,483.483 INFO    ] ================================================
[2026-06-12 14:51:37,862.862 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 14:51:37
[2026-06-12 14:51:38,205.205 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 14:51:38,358.358 INFO    ] Initializing speech engine...
[2026-06-12 14:51:38,363.363 INFO    ] 2026-06-12 14:51:38
[2026-06-12 14:51:38,572.572 INFO    ] 2026-06-12 14:51:38
[2026-06-12 14:51:38,602.602 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 14:51:38,785.785 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 14:51:38,795.795 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 14:51:38,925.925 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 14:51:38,984.984 INFO    ] time= 12/06/2026 14:51:38
[2026-06-12 14:51:39,017.017 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 14:51:39,024.024 INFO    ] Checking for existing commands in stream...
[2026-06-12 14:51:39,091.091 INFO    ] No existing commands found in stream
[2026-06-12 14:51:44,116.116 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 14:51:44,120.120 INFO    ] Waiting 0.58 seconds before fallback handling...
[2026-06-12 14:51:45,143.143 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 14:51:45,145.145 INFO    ] Checking for system updates...
[2026-06-12 14:51:45,166.166 INFO    ] 200
[2026-06-12 14:51:45,167.167 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:51:45,199.199 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 14:51:45,201.201 INFO    ] No update needed
[2026-06-12 14:51:45,202.202 INFO    ] Checking for camera pi updates...
[2026-06-12 14:51:45,221.221 INFO    ] 200
[2026-06-12 14:51:45,222.222 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:51:45,245.245 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 14:51:45,291.291 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 14:51:45,292.292 INFO    ] No camera update needed
[2026-06-12 14:51:45,302.302 INFO    ] Script finished. Safe exiting...
[2026-06-12 14:51:45,304.304 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 14:51:45,307.307 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 14:51:45,310.310 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 14:51:47,348.348 INFO    ] ================================================
[2026-06-12 14:51:47,363.363 INFO    ] Launching Daemon at Fri Jun 12 14:51:47 IST 2026
[2026-06-12 14:51:47,374.374 INFO    ] ================================================
[2026-06-12 14:51:47,763.763 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 14:51:47
[2026-06-12 14:51:48,106.106 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 14:51:48,262.262 INFO    ] Initializing speech engine...
[2026-06-12 14:51:48,267.267 INFO    ] 2026-06-12 14:51:48
[2026-06-12 14:51:48,475.475 INFO    ] 2026-06-12 14:51:48
[2026-06-12 14:51:48,504.504 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 14:51:48,688.688 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 14:51:48,698.698 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 14:51:48,885.885 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 14:51:48,933.933 INFO    ] time= 12/06/2026 14:51:48
[2026-06-12 14:51:48,944.944 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 14:51:48,946.946 INFO    ] Checking for existing commands in stream...
[2026-06-12 14:51:49,016.016 INFO    ] No existing commands found in stream
[2026-06-12 14:51:54,040.040 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 14:51:54,042.042 INFO    ] Waiting 2.14 seconds before fallback handling...
[2026-06-12 14:51:56,555.555 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 14:51:56,557.557 INFO    ] Checking for system updates...
[2026-06-12 14:51:56,578.578 INFO    ] 200
[2026-06-12 14:51:56,579.579 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:51:56,610.610 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 14:51:56,612.612 INFO    ] No update needed
[2026-06-12 14:51:56,613.613 INFO    ] Checking for camera pi updates...
[2026-06-12 14:51:56,632.632 INFO    ] 200
[2026-06-12 14:51:56,634.634 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:51:56,657.657 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 14:51:56,698.698 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 14:51:56,700.700 INFO    ] No camera update needed
[2026-06-12 14:51:56,701.701 INFO    ] Script finished. Safe exiting...
[2026-06-12 14:51:56,703.703 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 14:51:56,706.706 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 14:51:56,709.709 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 14:51:58,748.748 INFO    ] ================================================
[2026-06-12 14:51:58,763.763 INFO    ] Launching Daemon at Fri Jun 12 14:51:58 IST 2026
[2026-06-12 14:51:58,774.774 INFO    ] ================================================
[2026-06-12 14:51:59,143.143 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 14:51:59
[2026-06-12 14:51:59,454.454 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 14:51:59,586.586 INFO    ] Initializing speech engine...
[2026-06-12 14:51:59,591.591 INFO    ] 2026-06-12 14:51:59
[2026-06-12 14:51:59,787.787 INFO    ] 2026-06-12 14:51:59
[2026-06-12 14:51:59,828.828 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 14:51:59,950.950 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 14:51:59,973.973 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 14:52:00,086.086 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 14:52:00,091.091 INFO    ] time= 12/06/2026 14:52:00
[2026-06-12 14:52:00,098.098 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 14:52:00,147.147 INFO    ] Checking for existing commands in stream...
[2026-06-12 14:52:00,261.261 INFO    ] No existing commands found in stream
[2026-06-12 14:52:05,290.290 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 14:52:05,293.293 INFO    ] Waiting 0.52 seconds before fallback handling...
[2026-06-12 14:52:06,185.185 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 14:52:06,186.186 INFO    ] Checking for system updates...
[2026-06-12 14:52:06,207.207 INFO    ] 200
[2026-06-12 14:52:06,209.209 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:52:06,239.239 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 14:52:06,240.240 INFO    ] No update needed
[2026-06-12 14:52:06,241.241 INFO    ] Checking for camera pi updates...
[2026-06-12 14:52:06,261.261 INFO    ] 200
[2026-06-12 14:52:06,262.262 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:52:06,284.284 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 14:52:06,325.325 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 14:52:06,326.326 INFO    ] No camera update needed
[2026-06-12 14:52:06,327.327 INFO    ] Script finished. Safe exiting...
[2026-06-12 14:52:06,328.328 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 14:52:06,332.332 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 14:52:06,334.334 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 14:52:08,371.371 INFO    ] ================================================
[2026-06-12 14:52:08,386.386 INFO    ] Launching Daemon at Fri Jun 12 14:52:08 IST 2026
[2026-06-12 14:52:08,397.397 INFO    ] ================================================
[2026-06-12 14:52:08,731.731 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 14:52:08
[2026-06-12 14:52:09,043.043 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 14:52:09,185.185 INFO    ] Initializing speech engine...
[2026-06-12 14:52:09,190.190 INFO    ] 2026-06-12 14:52:09
[2026-06-12 14:52:09,396.396 INFO    ] 2026-06-12 14:52:09
[2026-06-12 14:52:09,414.414 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 14:52:09,549.549 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 14:52:09,592.592 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 14:52:09,751.751 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 14:52:09,810.810 INFO    ] time= 12/06/2026 14:52:09
[2026-06-12 14:52:09,843.843 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 14:52:09,850.850 INFO    ] Checking for existing commands in stream...
[2026-06-12 14:52:09,915.915 INFO    ] No existing commands found in stream
[2026-06-12 14:52:14,926.926 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 14:52:14,929.929 INFO    ] Waiting 3.73 seconds before fallback handling...
[2026-06-12 14:52:19,002.002 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 14:52:19,004.004 INFO    ] Checking for system updates...
[2026-06-12 14:52:19,024.024 INFO    ] 200
[2026-06-12 14:52:19,026.026 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:52:19,057.057 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 14:52:19,058.058 INFO    ] No update needed
[2026-06-12 14:52:19,059.059 INFO    ] Checking for camera pi updates...
[2026-06-12 14:52:19,078.078 INFO    ] 200
[2026-06-12 14:52:19,080.080 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:52:19,105.105 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 14:52:19,145.145 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 14:52:19,146.146 INFO    ] No camera update needed
[2026-06-12 14:52:19,148.148 INFO    ] Script finished. Safe exiting...
[2026-06-12 14:52:19,149.149 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 14:52:19,152.152 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 14:52:19,155.155 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 14:52:21,194.194 INFO    ] ================================================
[2026-06-12 14:52:21,209.209 INFO    ] Launching Daemon at Fri Jun 12 14:52:21 IST 2026
[2026-06-12 14:52:21,219.219 INFO    ] ================================================
[2026-06-12 14:52:21,551.551 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 14:52:21
[2026-06-12 14:52:21,879.879 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 14:52:22,018.018 INFO    ] Initializing speech engine...
[2026-06-12 14:52:22,028.028 INFO    ] 2026-06-12 14:52:22
[2026-06-12 14:52:22,233.233 INFO    ] 2026-06-12 14:52:22
[2026-06-12 14:52:22,261.261 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 14:52:22,446.446 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 14:52:22,455.455 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 14:52:22,589.589 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 14:52:22,651.651 INFO    ] time= 12/06/2026 14:52:22
[2026-06-12 14:52:22,675.675 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 14:52:22,681.681 INFO    ] Checking for existing commands in stream...
[2026-06-12 14:52:22,748.748 INFO    ] No existing commands found in stream
[2026-06-12 14:52:27,777.777 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 14:52:27,780.780 INFO    ] Waiting 2.58 seconds before fallback handling...
[2026-06-12 14:52:30,784.784 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 14:52:30,786.786 INFO    ] Checking for system updates...
[2026-06-12 14:52:30,806.806 INFO    ] 200
[2026-06-12 14:52:30,808.808 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:52:30,837.837 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 14:52:30,838.838 INFO    ] No update needed
[2026-06-12 14:52:30,840.840 INFO    ] Checking for camera pi updates...
[2026-06-12 14:52:30,861.861 INFO    ] 200
[2026-06-12 14:52:30,862.862 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:52:30,887.887 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 14:52:30,927.927 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 14:52:30,928.928 INFO    ] No camera update needed
[2026-06-12 14:52:30,930.930 INFO    ] Script finished. Safe exiting...
[2026-06-12 14:52:30,931.931 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 14:52:30,934.934 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 14:52:30,937.937 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 14:52:32,959.959 INFO    ] ================================================
[2026-06-12 14:52:32,967.967 INFO    ] Launching Daemon at Fri Jun 12 14:52:32 IST 2026
[2026-06-12 14:52:32,974.974 INFO    ] ================================================
[2026-06-12 14:52:33,288.288 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 14:52:33
[2026-06-12 14:52:33,607.607 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 14:52:33,740.740 INFO    ] Initializing speech engine...
[2026-06-12 14:52:33,744.744 INFO    ] 2026-06-12 14:52:33
[2026-06-12 14:52:33,938.938 INFO    ] 2026-06-12 14:52:33
[2026-06-12 14:52:33,983.983 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 14:52:34,143.143 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 14:52:34,210.210 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 14:52:34,361.361 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 14:52:34,414.414 INFO    ] time= 12/06/2026 14:52:34
[2026-06-12 14:52:34,454.454 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 14:52:34,460.460 INFO    ] Checking for existing commands in stream...
[2026-06-12 14:52:34,537.537 INFO    ] No existing commands found in stream
[2026-06-12 14:52:39,561.561 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 14:52:39,564.564 INFO    ] Waiting 1.72 seconds before fallback handling...
[2026-06-12 14:52:41,679.679 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 14:52:41,680.680 INFO    ] Checking for system updates...
[2026-06-12 14:52:41,701.701 INFO    ] 200
[2026-06-12 14:52:41,702.702 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:52:41,732.732 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 14:52:41,734.734 INFO    ] No update needed
[2026-06-12 14:52:41,735.735 INFO    ] Checking for camera pi updates...
[2026-06-12 14:52:41,755.755 INFO    ] 200
[2026-06-12 14:52:41,756.756 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:52:41,779.779 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 14:52:41,837.837 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 14:52:41,838.838 INFO    ] No camera update needed
[2026-06-12 14:52:41,840.840 INFO    ] Script finished. Safe exiting...
[2026-06-12 14:52:41,841.841 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 14:52:41,844.844 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 14:52:41,847.847 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 14:52:43,884.884 INFO    ] ================================================
[2026-06-12 14:52:43,899.899 INFO    ] Launching Daemon at Fri Jun 12 14:52:43 IST 2026
[2026-06-12 14:52:43,911.911 INFO    ] ================================================
[2026-06-12 14:52:44,241.241 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 14:52:44
[2026-06-12 14:52:44,559.559 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 14:52:44,695.695 INFO    ] Initializing speech engine...
[2026-06-12 14:52:44,699.699 INFO    ] 2026-06-12 14:52:44
[2026-06-12 14:52:44,931.931 INFO    ] 2026-06-12 14:52:44
[2026-06-12 14:52:44,962.962 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 14:52:45,160.160 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 14:52:45,163.163 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 14:52:45,310.310 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 14:52:45,379.379 INFO    ] time= 12/06/2026 14:52:45
[2026-06-12 14:52:45,408.408 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 14:52:45,410.410 INFO    ] Checking for existing commands in stream...
[2026-06-12 14:52:45,512.512 INFO    ] No existing commands found in stream
[2026-06-12 14:52:50,522.522 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 14:52:50,524.524 INFO    ] Waiting 1.68 seconds before fallback handling...
[2026-06-12 14:52:52,547.547 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 14:52:52,549.549 INFO    ] Checking for system updates...
[2026-06-12 14:52:52,569.569 INFO    ] 200
[2026-06-12 14:52:52,571.571 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:52:52,600.600 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 14:52:52,602.602 INFO    ] No update needed
[2026-06-12 14:52:52,603.603 INFO    ] Checking for camera pi updates...
[2026-06-12 14:52:52,622.622 INFO    ] 200
[2026-06-12 14:52:52,623.623 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:52:52,646.646 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 14:52:52,690.690 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 14:52:52,692.692 INFO    ] No camera update needed
[2026-06-12 14:52:52,693.693 INFO    ] Script finished. Safe exiting...
[2026-06-12 14:52:52,694.694 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 14:52:52,697.697 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 14:52:52,700.700 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 14:52:54,738.738 INFO    ] ================================================
[2026-06-12 14:52:54,754.754 INFO    ] Launching Daemon at Fri Jun 12 14:52:54 IST 2026
[2026-06-12 14:52:54,765.765 INFO    ] ================================================
[2026-06-12 14:52:55,119.119 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 14:52:55
[2026-06-12 14:52:55,458.458 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 14:52:55,614.614 INFO    ] Initializing speech engine...
[2026-06-12 14:52:55,619.619 INFO    ] 2026-06-12 14:52:55
[2026-06-12 14:52:55,828.828 INFO    ] 2026-06-12 14:52:55
[2026-06-12 14:52:55,857.857 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 14:52:56,041.041 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 14:52:56,053.053 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 14:52:56,189.189 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 14:52:56,246.246 INFO    ] time= 12/06/2026 14:52:56
[2026-06-12 14:52:56,270.270 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 14:52:56,276.276 INFO    ] Checking for existing commands in stream...
[2026-06-12 14:52:56,343.343 INFO    ] No existing commands found in stream
[2026-06-12 14:52:59,372.372 INFO    ] Received new command: ID=1781256179337-0
[2026-06-12 14:52:59,375.375 INFO    ] process_and_cleanup_command: msg_id=1781256179337-0
[2026-06-12 14:52:59,378.378 INFO    ] is_command_expired: timestamp=2026-06-12T09:22:57.761Z, expiry=30s
[2026-06-12 14:52:59,467.467 INFO    ] Command removed from stream: 1781256179337-0. returning for processing...
[2026-06-12 14:52:59,470.470 INFO    ] ***** get_valid_command
[2026-06-12 14:52:59,472.472 INFO    ] {'timeout': '10', 'data': '{"request_id":"start-order-1781256177761-bxjwphq16","orderId":"TM09202301260612145214373","is_vending":false}', 'timestamp': '2026-06-12T09:22:57.761Z', 'command': 'start-order', 'source': 'webapp'}
[2026-06-12 14:52:59,475.475 INFO    ] ***** Parsed command data: {'is_vending': False, 'request_id': 'start-order-1781256177761-bxjwphq16', 'orderId': 'TM09202301260612145214373'}
[2026-06-12 14:52:59,478.478 INFO    ] Handling start order...
[2026-06-12 14:52:59,481.481 INFO    ] handle_start_order_command
[2026-06-12 14:52:59,488.488 INFO    ] _send_start_order_success: request_id=start-order-1781256177761-bxjwphq16, order_id=TM09202301260612145214373
[2026-06-12 14:52:59,491.491 INFO    ] [_send_start_order_success] Adding message to stream: machine:TM09202301
[2026-06-12 14:52:59,550.550 INFO    ] [_send_start_order_success] Message added to stream with ID: 1781256179583-0
[2026-06-12 14:52:59,553.553 INFO    ] ✅ Start-order command succeeded - order locked, waiting for process-order command
[2026-06-12 14:52:59,556.556 INFO    ] Checking for system updates...
[2026-06-12 14:52:59,602.602 INFO    ] 200
[2026-06-12 14:52:59,605.605 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:52:59,650.650 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 14:52:59,652.652 INFO    ] No update needed
[2026-06-12 14:52:59,653.653 INFO    ] Checking for camera pi updates...
[2026-06-12 14:52:59,672.672 INFO    ] 200
[2026-06-12 14:52:59,673.673 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:52:59,696.696 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 14:52:59,738.738 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 14:52:59,739.739 INFO    ] No camera update needed
[2026-06-12 14:52:59,741.741 INFO    ] Script finished. Safe exiting...
[2026-06-12 14:52:59,742.742 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 14:52:59,745.745 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 14:52:59,748.748 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 14:53:01,781.781 INFO    ] ================================================
[2026-06-12 14:53:01,793.793 INFO    ] Launching Daemon at Fri Jun 12 14:53:01 IST 2026
[2026-06-12 14:53:01,804.804 INFO    ] ================================================
[2026-06-12 14:53:02,178.178 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 14:53:02
[2026-06-12 14:53:02,548.548 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 14:53:02,698.698 INFO    ] Initializing speech engine...
[2026-06-12 14:53:02,702.702 INFO    ] 2026-06-12 14:53:02
[2026-06-12 14:53:02,934.934 INFO    ] 2026-06-12 14:53:02
[2026-06-12 14:53:02,964.964 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 14:53:03,086.086 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 14:53:03,149.149 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 14:53:03,302.302 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 14:53:03,355.355 INFO    ] time= 12/06/2026 14:53:03
[2026-06-12 14:53:03,377.377 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 14:53:03,383.383 INFO    ] Checking for existing commands in stream...
[2026-06-12 14:53:03,451.451 INFO    ] Found 2 existing command(s) in stream
[2026-06-12 14:53:03,477.477 INFO    ] Checking historical command: ID=1781256179583-0
[2026-06-12 14:53:03,478.478 INFO    ] process_and_cleanup_command: msg_id=1781256179583-0
[2026-06-12 14:53:03,505.505 INFO    ] is_command_expired: timestamp=2026-06-12T09:22:59.489350Z, expiry=30s
[2026-06-12 14:53:03,590.590 INFO    ] Command removed from stream: 1781256179583-0. returning for processing...
[2026-06-12 14:53:03,594.594 INFO    ] ***** get_valid_command
[2026-06-12 14:53:03,596.596 INFO    ] {'imei': 'TM09202301', 'message_type': 'command_response', 'message': 'start-order success', 'metadata_order_id': 'TM09202301260612145214373', 'metadata_request_id': 'start-order-1781256177761-bxjwphq16', 'timestamp': '2026-06-12T09:22:59.489350Z', 'status': 'success'}
[2026-06-12 14:53:03,600.600 INFO    ] Checking historical command: ID=1781256180653-0
[2026-06-12 14:53:03,604.604 INFO    ] process_and_cleanup_command: msg_id=1781256180653-0
[2026-06-12 14:53:03,607.607 INFO    ] is_command_expired: timestamp=2026-06-12T09:22:59.075Z, expiry=30s
[2026-06-12 14:53:03,667.667 INFO    ] Command removed from stream: 1781256180653-0. returning for processing...
[2026-06-12 14:53:03,672.672 INFO    ] ***** get_valid_command
[2026-06-12 14:53:03,676.676 INFO    ] {'command': 'process-order', 'timestamp': '2026-06-12T09:22:59.075Z', 'source': 'webapp', 'timeout': '60', 'data': '{"request_id":"process-order-1781256179075-9m0pla2g1","orderId":"TM09202301260612145214373","is_vending":false,"accessCode":"48764789"}'}
[2026-06-12 14:53:03,681.681 INFO    ] ***** Parsed command data: {'is_vending': False, 'accessCode': '48764789', 'request_id': 'process-order-1781256179075-9m0pla2g1', 'orderId': 'TM09202301260612145214373'}
[2026-06-12 14:53:03,685.685 INFO    ] Handling process order...
[2026-06-12 14:53:03,689.689 INFO    ] Processing process-order command...
[2026-06-12 14:53:03,695.695 INFO    ] 🔍 Lock file Order ID: TM09202301260612145214373, TS: 2026-06-12 14:52:59
[2026-06-12 14:53:03,705.705 INFO    ] ✅ Order lock valid for TM09202301260612145214373
[2026-06-12 14:53:03,709.709 INFO    ] Received access code in process-order, skipping PHP API call
[2026-06-12 14:53:03,715.715 INFO    ] processing access code 48764789 for order TM09202301260612145214373
[2026-06-12 14:53:03,721.721 INFO    ] 🔍 Lock file Order ID: TM09202301260612145214373, TS: 2026-06-12 14:52:59
[2026-06-12 14:53:03,727.727 INFO    ] ✅ Order lock valid for TM09202301260612145214373
[2026-06-12 14:53:03,730.730 INFO    ] 2026-06-12 14:53:03
[2026-06-12 14:53:03,804.804 INFO    ] 200
[2026-06-12 14:53:03,807.807 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:53:03,832.832 INFO    ] 48764789
[2026-06-12 14:53:03,850.850 INFO    ] 2026-06-12 14:53:03
[2026-06-12 14:53:03,860.860 INFO    ] session id :222416407
[2026-06-12 14:53:03,863.863 INFO    ] http://localhost:5000/v2/getOrderByAccessCode?access_code=48764789&imei=TM09202301&session_id=222416407
[2026-06-12 14:53:05,174.174 INFO    ] 200
[2026-06-12 14:53:05,176.176 INFO    ] {"status": true, "msg": "Order Data", "data": {"bill_amount": "25", "access_code": "48764789", "order_id": "TM09202301260612145214373", "mobile": "7060017551", "proposed_sku_json": [{"unit_price": 25, "qty": 1, "skuid": "4500662", "offer_desc": "", "offer_id": "", "door_id": "2", "tray_id": "32", "sku_total": 25, "mrp": "25", "image_url": "https://images.tinymart.in/product/4500662-3783.jpg", "name": "Paper Boat Mixed fruit 160ml"}], "invoice_bill": "25"}, "rstatus": true}
[2026-06-12 14:53:05,177.177 INFO    ] 25
[2026-06-12 14:53:05,179.179 INFO    ] TM09202301260612145214373
[2026-06-12 14:53:05,180.180 INFO    ] 7060017551
[2026-06-12 14:53:05,181.181 INFO    ] 2026-06-12 14:53:05
[2026-06-12 14:53:05,182.182 INFO    ] Door Opening for user mobile ending with  seven five five one 
[2026-06-12 14:53:05,184.184 INFO    ] Door Opening for user mobile ending with  seven five five one 
[2026-06-12 14:53:05,185.185 INFO    ] 88db40340ad8043d30356d17dd819704
[2026-06-12 14:53:05,186.186 INFO    ] 2026-06-12 14:53:05
[2026-06-12 14:53:05,188.188 INFO    ] playing audio file
[2026-06-12 14:53:05,197.197 INFO    ] 2026-06-12 14:53:05
[2026-06-12 14:53:05,199.199 INFO    ] 2026-06-12 14:53:05
[2026-06-12 14:53:05,201.201 INFO    ] publish_status: order_id=TM09202301260612145214373
[2026-06-12 14:53:05,202.202 INFO    ] [publish_status] Adding message to stream: order:TM09202301260612145214373
[2026-06-12 14:53:05,292.292 INFO    ] [publish_status] Message added to stream with ID: 1781256185325-0
[2026-06-12 14:53:05,295.295 INFO    ] Published to order:TM09202301260612145214373: {'server_response': '{"msg": "Order Data", "rstatus": true, "data": {"mobile": "7060017551", "access_code": "48764789", "order_id": "TM09202301260612145214373", "proposed_sku_json": [{"mrp": "25", "tray_id": "32", "name": "Paper Boat Mixed fruit 160ml", "unit_price": 25, "door_id": "2", "offer_desc": "", "qty": 1, "offer_id": "", "sku_total": 25, "image_url": "https://images.tinymart.in/product/4500662-3783.jpg", "skuid": "4500662"}], "invoice_bill": "25", "bill_amount": "25"}, "status": true}', 'timestamp': '2026-06-12T09:23:05.200094Z', 'server_status': 'order-started', 'order_id': 'TM09202301260612145214373'} (ID: 1781256185325-0)
[2026-06-12 14:53:05,673.673 INFO    ] {'server_response': {'msg': 'Order Data', 'rstatus': True, 'data': {'mobile': '7060017551', 'access_code': '48764789', 'order_id': 'TM09202301260612145214373', 'proposed_sku_json': [{'mrp': '25', 'tray_id': '32', 'name': 'Paper Boat Mixed fruit 160ml', 'unit_price': 25, 'door_id': '2', 'offer_desc': '', 'qty': 1, 'offer_id': '', 'sku_total': 25, 'image_url': 'https://images.tinymart.in/product/4500662-3783.jpg', 'skuid': '4500662'}], 'invoice_bill': '25', 'bill_amount': '25'}, 'status': True}, 'server_status': 'order-started', 'order_id': 'TM09202301260612145214373'}
[2026-06-12 14:53:05,674.674 INFO    ] 200
[2026-06-12 14:53:05,675.675 INFO    ] {"data":{"server_response":{"msg":"Order Data","rstatus":true,"data":{"mobile":"7060017551","access_code":"48764789","order_id":"TM09202301260612145214373","proposed_sku_json":[{"mrp":"25","tray_id":"32","name":"Paper Boat Mixed fruit 160ml","unit_price":25,"door_id":"2","offer_desc":"","qty":1,"offer_id":"","sku_total":25,"image_url":"https:\/\/images.tinymart.in\/product\/4500662-3783.jpg","skuid":"4500662"}],"invoice_bill":"25","bill_amount":"25"},"status":true},"server_status":"order-started","order_id":"TM09202301260612145214373"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-12 14:53:05,677.677 INFO    ] {'response': {'code': 'ORDER_EXISTS', 'msg': 'order updated successfully', 'data': 'order updated successfully', 'status': True}, 'data': {'server_response': {'status': True, 'msg': 'Order Data', 'data': {'mobile': '7060017551', 'access_code': '48764789', 'order_id': 'TM09202301260612145214373', 'proposed_sku_json': [{'image_url': 'https://images.tinymart.in/product/4500662-3783.jpg', 'tray_id': '32', 'offer_id': '', 'unit_price': 25, 'name': 'Paper Boat Mixed fruit 160ml', 'offer_desc': '', 'door_id': '2', 'skuid': '4500662', 'qty': 1, 'sku_total': 25, 'mrp': '25'}], 'invoice_bill': '25', 'bill_amount': '25'}, 'rstatus': True}, 'server_status': 'order-started', 'order_id': 'TM09202301260612145214373'}}
[2026-06-12 14:53:05,678.678 INFO    ] 2026-06-12 14:53:05
[2026-06-12 14:53:05,706.706 INFO    ] 200
[2026-06-12 14:53:05,708.708 INFO    ] True
[2026-06-12 14:53:05,805.805 INFO    ] 200
[2026-06-12 14:53:05,808.808 INFO    ] {"error": {"tmessage": "In Progress", "umessage": "In Progress", "data": {}, "code": 20001}, "SectionSKU": {"Header": "Thank you for bearing with us :)", "skus": []}, "rstatus": false, "SectionStatus": {"Header": " Your order is under process  ", "SubHeader": "Please wait while we process your order", "UI_Header": "", "Note": ""}, "status": "False", "voiceNote": "Please Wait", "SectionMain": {"Header": "Processing Order"}}
[2026-06-12 14:53:05,810.810 INFO    ] {'rstatus': False, 'error': {'umessage': 'In Progress', 'data': {}, 'code': 20001, 'tmessage': 'In Progress'}, 'SectionSKU': {'Header': 'Thank you for bearing with us :)', 'skus': []}, 'SectionStatus': {'SubHeader': 'Please wait while we process your order', 'UI_Header': '', 'Note': '', 'Header': ' Your order is under process  '}, 'voiceNote': 'Please Wait', 'SectionMain': {'Header': 'Processing Order'}, 'status': 'False'}
[2026-06-12 14:53:05,813.813 INFO    ] *** process_order ***
[2026-06-12 14:53:06,943.943 INFO    ] 200
[2026-06-12 14:53:06,944.944 INFO    ] {"delay": 0, "SectionSKU": {"Header": "Thank you for bearing with us :)", "skus": []}, "rstatus": true, "SectionStatus": {"Header": " Your order is under process  ", "SubHeader": "Please wait while we process your order", "UI_Header": "", "Note": ""}, "status": "True", "voiceNote": "Please Wait", "SectionMain": {"Header": "Processing Order"}}
[2026-06-12 14:53:06,946.946 INFO    ] {'rstatus': True, 'delay': 0, 'SectionSKU': {'Header': 'Thank you for bearing with us :)', 'skus': []}, 'SectionStatus': {'SubHeader': 'Please wait while we process your order', 'UI_Header': '', 'Note': '', 'Header': ' Your order is under process  '}, 'voiceNote': 'Please Wait', 'SectionMain': {'Header': 'Processing Order'}, 'status': 'True'}
[2026-06-12 14:53:06,947.947 INFO    ] *** process_order ***
[2026-06-12 14:53:06,948.948 INFO    ] publish_status: order_id=TM09202301260612145214373
[2026-06-12 14:53:06,952.952 INFO    ] [publish_status] Adding message to stream: order:TM09202301260612145214373
[2026-06-12 14:53:07,018.018 INFO    ] [publish_status] Message added to stream with ID: 1781256187053-0
[2026-06-12 14:53:07,020.020 INFO    ] Published to order:TM09202301260612145214373: {'server_response': '{"rstatus": true, "delay": 0, "SectionSKU": {"Header": "Thank you for bearing with us :)", "skus": []}, "SectionStatus": {"SubHeader": "You can pull the door now.", "UI_Header": "", "Header": " Your order is under process  ", "Note": ""}, "voiceNote": "Door is open...", "SectionMain": {"Header": "Processing Order"}, "status": "True"}', 'server_status': 'doorOpened', 'order_id': 'TM09202301260612145214373'} (ID: 1781256187053-0)
[2026-06-12 14:53:08,079.079 INFO    ] 2026-06-12 14:53:08
[2026-06-12 14:53:08,082.082 INFO    ] publish_status: order_id=TM09202301260612145214373
[2026-06-12 14:53:08,085.085 INFO    ] [publish_status] Adding message to stream: order:TM09202301260612145214373
[2026-06-12 14:53:08,150.150 INFO    ] [publish_status] Message added to stream with ID: 1781256188184-0
[2026-06-12 14:53:08,153.153 INFO    ] Published to order:TM09202301260612145214373: {'server_response': '{"rstatus": true, "delay": 0, "SectionSKU": {"Header": "Thank you for bearing with us :)", "skus": []}, "SectionStatus": {"SubHeader": "Please wait while we process your order", "UI_Header": "", "Note": "", "Header": " Your order is under process  "}, "voiceNote": "Please Wait", "SectionMain": {"Header": "Processing Order"}, "status": "True"}', 'timestamp': '2026-06-12T09:23:08.081243Z', 'server_status': 'processOrder', 'order_id': 'TM09202301260612145214373'} (ID: 1781256188184-0)
[2026-06-12 14:53:08,275.275 INFO    ] {'server_response': {'rstatus': True, 'delay': 0, 'SectionSKU': {'Header': 'Thank you for bearing with us :)', 'skus': []}, 'SectionStatus': {'SubHeader': 'Please wait while we process your order', 'UI_Header': '', 'Note': '', 'Header': ' Your order is under process  '}, 'voiceNote': 'Please Wait', 'SectionMain': {'Header': 'Processing Order'}, 'status': 'True'}, 'server_status': 'processOrder', 'order_id': 'TM09202301260612145214373'}
[2026-06-12 14:53:08,277.277 INFO    ] 200
[2026-06-12 14:53:08,278.278 INFO    ] {"data":{"server_response":{"rstatus":true,"delay":0,"SectionSKU":{"Header":"Thank you for bearing with us :)","skus":[]},"SectionStatus":{"SubHeader":"Please wait while we process your order","UI_Header":"","Note":"","Header":" Your order is under process  "},"voiceNote":"Please Wait","SectionMain":{"Header":"Processing Order"},"status":"true"},"server_status":"processOrder","order_id":"TM09202301260612145214373"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-12 14:53:08,280.280 INFO    ] {'response': {'code': 'ORDER_EXISTS', 'msg': 'order updated successfully', 'data': 'order updated successfully', 'status': True}, 'data': {'server_response': {'rstatus': True, 'delay': 0, 'SectionSKU': {'Header': 'Thank you for bearing with us :)', 'skus': []}, 'status': 'true', 'voiceNote': 'Please Wait', 'SectionMain': {'Header': 'Processing Order'}, 'SectionStatus': {'SubHeader': 'Please wait while we process your order', 'UI_Header': '', 'Header': ' Your order is under process  ', 'Note': ''}}, 'server_status': 'processOrder', 'order_id': 'TM09202301260612145214373'}}
[2026-06-12 14:53:08,281.281 INFO    ] 2026-06-12 14:53:08
[2026-06-12 14:53:08,282.282 INFO    ] None
[2026-06-12 14:53:08,284.284 INFO    ] Opening Door now
[2026-06-12 14:53:08,285.285 INFO    ] Opening Door now
[2026-06-12 14:53:08,286.286 INFO    ] 08e5d1063504bf393c26f0bfa436e9f9
[2026-06-12 14:53:08,287.287 INFO    ] 2026-06-12 14:53:08
[2026-06-12 14:53:08,289.289 INFO    ] playing audio file
[2026-06-12 14:53:08,299.299 INFO    ] 2026-06-12 14:53:08
[2026-06-12 14:53:08,301.301 INFO    ] 2026-06-12 14:53:08
[2026-06-12 14:53:11,383.383 INFO    ] 200
[2026-06-12 14:53:11,385.385 INFO    ] {"error": {"tmessage": "In Progress", "umessage": "In Progress", "data": {}, "code": 20001}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"name": "Paper Boat Mixed fruit 160ml", "qty": 1}]}, "rstatus": false, "SectionStatus": {"Header": "Please Close Door 2", "SubHeader": "Please Pick the Products and close the door", "UI_Header": "DOOR 2\nIS \nOPEN \nNOW", "Note": "Please Close the door after picking up products"}, "status": "False", "voiceNote": "Door 2 is open now", "SectionMain": {"Header": "Door Open"}}
[2026-06-12 14:53:11,387.387 INFO    ] {'rstatus': False, 'error': {'umessage': 'In Progress', 'data': {}, 'code': 20001, 'tmessage': 'In Progress'}, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'Paper Boat Mixed fruit 160ml', 'qty': 1}]}, 'SectionStatus': {'SubHeader': 'Please Pick the Products and close the door', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'Note': 'Please Close the door after picking up products', 'Header': 'Please Close Door 2'}, 'voiceNote': 'Door 2 is open now', 'SectionMain': {'Header': 'Door Open'}, 'status': 'False'}
[2026-06-12 14:53:14,423.423 INFO    ] 200
[2026-06-12 14:53:14,424.424 INFO    ] {"error": {"tmessage": "In Progress", "umessage": "In Progress", "data": {}, "code": 20001}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"name": "Paper Boat Mixed fruit 160ml", "qty": 1}]}, "rstatus": false, "SectionStatus": {"Header": "Please Close Door 2", "SubHeader": "Please Pick the Products and close the door", "UI_Header": "DOOR 2\nIS \nOPEN \nNOW", "Note": "Please Close the door after picking up products"}, "status": "False", "voiceNote": "Please close door 2", "SectionMain": {"Header": "Door Open"}}
[2026-06-12 14:53:14,425.425 INFO    ] {'rstatus': False, 'error': {'umessage': 'In Progress', 'data': {}, 'code': 20001, 'tmessage': 'In Progress'}, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'Paper Boat Mixed fruit 160ml', 'qty': 1}]}, 'SectionStatus': {'SubHeader': 'Please Pick the Products and close the door', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'Note': 'Please Close the door after picking up products', 'Header': 'Please Close Door 2'}, 'voiceNote': 'Please close door 2', 'SectionMain': {'Header': 'Door Open'}, 'status': 'False'}
[2026-06-12 14:53:17,468.468 INFO    ] 200
[2026-06-12 14:53:17,469.469 INFO    ] {"error": {"tmessage": "In Progress", "umessage": "In Progress", "data": {}, "code": 20001}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"name": "Paper Boat Mixed fruit 160ml", "qty": 1}]}, "rstatus": false, "SectionStatus": {"Header": "Please Close Door 2", "SubHeader": "Please Pick the Products and close the door", "UI_Header": "DOOR 2\nIS \nOPEN \nNOW", "Note": "Please Close the door after picking up products"}, "status": "False", "voiceNote": "Please close door 2", "SectionMain": {"Header": "Door Open"}}
[2026-06-12 14:53:17,471.471 INFO    ] Please close door 2
[2026-06-12 14:53:17,472.472 INFO    ] Please close door 2
[2026-06-12 14:53:17,474.474 INFO    ] 758e46684c76e887a5f58d4738034bed
[2026-06-12 14:53:17,475.475 INFO    ] 2026-06-12 14:53:17
[2026-06-12 14:53:17,477.477 INFO    ] playing audio file
[2026-06-12 14:53:17,487.487 INFO    ] 2026-06-12 14:53:17
[2026-06-12 14:53:17,489.489 INFO    ] publish_status: order_id=TM09202301260612145214373
[2026-06-12 14:53:17,490.490 INFO    ] [publish_status] Adding message to stream: order:TM09202301260612145214373
[2026-06-12 14:53:17,581.581 INFO    ] [publish_status] Message added to stream with ID: 1781256197606-0
[2026-06-12 14:53:17,582.582 INFO    ] Published to order:TM09202301260612145214373: {'server_response': '{"rstatus": false, "error": {"umessage": "In Progress", "data": {}, "code": 20001, "tmessage": "In Progress"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"name": "Paper Boat Mixed fruit 160ml", "qty": 1}]}, "SectionStatus": {"SubHeader": "Please Pick the Products and close the door", "UI_Header": "DOOR 2\\nIS \\nOPEN \\nNOW", "Note": "Please Close the door after picking up products", "Header": "Please Close Door 2"}, "voiceNote": "Please close door 2", "SectionMain": {"Header": "Door Open"}, "status": "False"}', 'timestamp': '2026-06-12T09:23:17.488107Z', 'server_status': 'OrderStatus', 'order_id': 'TM09202301260612145214373'} (ID: 1781256197606-0)
[2026-06-12 14:53:18,006.006 INFO    ] {'server_response': {'rstatus': False, 'error': {'umessage': 'In Progress', 'data': {}, 'code': 20001, 'tmessage': 'In Progress'}, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'Paper Boat Mixed fruit 160ml', 'qty': 1}]}, 'SectionStatus': {'SubHeader': 'Please Pick the Products and close the door', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'Note': 'Please Close the door after picking up products', 'Header': 'Please Close Door 2'}, 'voiceNote': 'Please close door 2', 'SectionMain': {'Header': 'Door Open'}, 'status': 'False'}, 'server_status': 'OrderStatus', 'order_id': 'TM09202301260612145214373'}
[2026-06-12 14:53:18,008.008 INFO    ] 200
[2026-06-12 14:53:18,010.010 INFO    ] {"data":{"server_response":{"rstatus":false,"error":{"umessage":"In Progress","data":[],"code":20001,"tmessage":"In Progress"},"SectionSKU":{"Header":"Pick the below items from the door","skus":[{"name":"Paper Boat Mixed fruit 160ml","qty":1}]},"SectionStatus":{"SubHeader":"Please Pick the Products and close the door","UI_Header":"DOOR 2\nIS \nOPEN \nNOW","Note":"Please Close the door after picking up products","Header":"Please Close Door 2"},"voiceNote":"Please close door 2","SectionMain":{"Header":"Door Open"},"status":"false"},"server_status":"OrderStatus","order_id":"TM09202301260612145214373"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-12 14:53:18,011.011 INFO    ] {'response': {'code': 'ORDER_EXISTS', 'msg': 'order updated successfully', 'data': 'order updated successfully', 'status': True}, 'data': {'server_response': {'rstatus': False, 'error': {'umessage': 'In Progress', 'code': 20001, 'tmessage': 'In Progress', 'data': []}, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'Paper Boat Mixed fruit 160ml', 'qty': 1}]}, 'status': 'false', 'voiceNote': 'Please close door 2', 'SectionMain': {'Header': 'Door Open'}, 'SectionStatus': {'SubHeader': 'Please Pick the Products and close the door', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'Header': 'Please Close Door 2', 'Note': 'Please Close the door after picking up products'}}, 'server_status': 'OrderStatus', 'order_id': 'TM09202301260612145214373'}}
[2026-06-12 14:53:18,013.013 INFO    ] {'rstatus': False, 'error': {'umessage': 'In Progress', 'data': {}, 'code': 20001, 'tmessage': 'In Progress'}, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'Paper Boat Mixed fruit 160ml', 'qty': 1}]}, 'SectionStatus': {'SubHeader': 'Please Pick the Products and close the door', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'Note': 'Please Close the door after picking up products', 'Header': 'Please Close Door 2'}, 'voiceNote': 'Please close door 2', 'SectionMain': {'Header': 'Door Open'}, 'status': 'False'}
[2026-06-12 14:53:21,045.045 INFO    ] 200
[2026-06-12 14:53:21,046.046 INFO    ] {"error": {"tmessage": "In Progress", "umessage": "In Progress", "data": {}, "code": 20001}, "delay": 1000, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"name": "Paper Boat Mixed fruit 160ml", "qty": 1}]}, "rstatus": false, "SectionStatus": {"Header": "Door 2 is closed now", "SubHeader": "Please wait for invoice to generate", "UI_Header": "DOOR 2\nIS \nCLOSED \nNOW", "Note": "If any due amount, clear at https://go.tinymart.in"}, "status": "False", "voiceNote": "Door 2 is closed now", "SectionMain": {"Header": "Door Close"}}
[2026-06-12 14:53:21,048.048 INFO    ] {'rstatus': False, 'delay': 1000, 'error': {'umessage': 'In Progress', 'data': {}, 'code': 20001, 'tmessage': 'In Progress'}, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'Paper Boat Mixed fruit 160ml', 'qty': 1}]}, 'status': 'False', 'voiceNote': 'Door 2 is closed now', 'SectionMain': {'Header': 'Door Close'}, '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'}}
[2026-06-12 14:53:24,105.105 INFO    ] 200
[2026-06-12 14:53:24,108.108 INFO    ] {"delay": 100, "SectionSKU": {"Header": "If you like us, tell others... else tell us", "skus": []}, "rstatus": true, "SectionStatus": {"Header": " Order is complete ", "SubHeader": "Please wait for invoice to generate", "UI_Header": "", "Note": "If any due amount, clear at https://go.tinymart.in"}, "status": "True", "voiceNote": "Transaction Completed", "SectionMain": {"Header": "Door Closed"}}
[2026-06-12 14:53:24,111.111 INFO    ] {'rstatus': True, 'delay': 100, 'SectionSKU': {'Header': 'If you like us, tell others... else tell us', 'skus': []}, 'SectionStatus': {'SubHeader': 'Please wait for invoice to generate', 'UI_Header': '', 'Note': 'If any due amount, clear at https://go.tinymart.in', 'Header': ' Order is complete '}, 'voiceNote': 'Transaction Completed', 'SectionMain': {'Header': 'Door Closed'}, 'status': 'True'}
[2026-06-12 14:53:24,114.114 INFO    ] 2026-06-12 14:53:24
[2026-06-12 14:53:24,117.117 INFO    ] Order Completed 
[2026-06-12 14:53:24,120.120 INFO    ] Order Completed 
[2026-06-12 14:53:24,123.123 INFO    ] 193c8a8cf3bf490ccfe0b23598544a83
[2026-06-12 14:53:24,126.126 INFO    ] 2026-06-12 14:53:24
[2026-06-12 14:53:24,128.128 INFO    ] playing audio file
[2026-06-12 14:53:24,145.145 INFO    ] 2026-06-12 14:53:24
[2026-06-12 14:53:24,148.148 INFO    ] {'rstatus': True, 'delay': 100, 'SectionSKU': {'Header': 'If you like us, tell others... else tell us', 'skus': []}, 'SectionStatus': {'SubHeader': 'Please wait for invoice to generate', 'UI_Header': '', 'Note': 'If any due amount, clear at https://go.tinymart.in', 'Header': ' Order is complete '}, 'voiceNote': 'Transaction Completed', 'SectionMain': {'Header': 'Door Closed'}, 'status': 'True'}
[2026-06-12 14:53:24,152.152 INFO    ] 2026-06-12 14:53:24
[2026-06-12 14:53:24,684.684 INFO    ] 200
[2026-06-12 14:53:24,685.685 INFO    ] {"bill_amount": 25, "imei": "TM09202301", "skus": [{"qty": 1, "skuid": "4500662", "sku_total": 25, "offer_id": "", "unit_price": "25", "tray_id": "32", "door_id": "", "mrp": "25", "image_url": "https://images.tinymart.in/product/4500662-3783.jpg", "name": "Paper Boat Mixed fruit 160ml per peice"}], "rstatus": true, "orderId": "TM09202301260612145214373", "anomaly": 0, "res": true, "total_amount": 25, "cart_offer_desc": "", "order_status": "", "userId": "7060017551"}
[2026-06-12 14:53:24,687.687 INFO    ] {'imei': 'TM09202301', 'rstatus': True, 'total_amount': 25, 'orderId': 'TM09202301260612145214373', 'res': True, 'userId': '7060017551', 'order_status': '', 'cart_offer_desc': '', 'bill_amount': 25, 'anomaly': 0, 'skus': [{'image_url': 'https://images.tinymart.in/product/4500662-3783.jpg', 'tray_id': '32', 'offer_id': '', 'unit_price': '25', 'door_id': '', 'mrp': '25', 'qty': 1, 'sku_total': 25, 'name': 'Paper Boat Mixed fruit 160ml per peice', 'skuid': '4500662'}]}
[2026-06-12 14:53:24,688.688 INFO    ] {'imei': 'TM09202301', 'rstatus': True, 'total_amount': 25, 'orderId': 'TM09202301260612145214373', 'res': True, 'userId': '7060017551', 'order_status': '', 'cart_offer_desc': '', 'bill_amount': 25, 'anomaly': 0, 'skus': [{'image_url': 'https://images.tinymart.in/product/4500662-3783.jpg', 'tray_id': '32', 'offer_id': '', 'unit_price': '25', 'door_id': '', 'mrp': '25', 'qty': 1, 'sku_total': 25, 'name': 'Paper Boat Mixed fruit 160ml per peice', 'skuid': '4500662'}]}
[2026-06-12 14:53:24,690.690 INFO    ] 2026-06-12 14:53:24
[2026-06-12 14:53:24,691.691 INFO    ] 2026-06-12 14:53:24
[2026-06-12 14:53:24,693.693 INFO    ] 25
[2026-06-12 14:53:24,694.694 INFO    ] 2026-06-12 14:53:24
[2026-06-12 14:53:24,695.695 INFO    ] 2026-06-12 14:53:24
[2026-06-12 14:53:24,696.696 INFO    ]  Your Bill Amount is 25
[2026-06-12 14:53:24,698.698 INFO    ]  Your Bill Amount is 25
[2026-06-12 14:53:24,700.700 INFO    ] da20fb15704d31a40267abf7bb69dedc
[2026-06-12 14:53:24,705.705 INFO    ] 2026-06-12 14:53:24
[2026-06-12 14:53:24,707.707 INFO    ] playing audio file
[2026-06-12 14:53:24,717.717 INFO    ] 2026-06-12 14:53:24
[2026-06-12 14:53:24,719.719 INFO    ] 2026-06-12 14:53:24
[2026-06-12 14:53:24,721.721 INFO    ] publish_status: order_id=TM09202301260612145214373
[2026-06-12 14:53:24,722.722 INFO    ] [publish_status] Adding message to stream: order:TM09202301260612145214373
[2026-06-12 14:53:24,790.790 INFO    ] [publish_status] Message added to stream with ID: 1781256204816-0
[2026-06-12 14:53:24,792.792 INFO    ] Published to order:TM09202301260612145214373: {'server_response': '{"imei": "TM09202301", "rstatus": true, "total_amount": 25, "orderId": "TM09202301260612145214373", "res": true, "userId": "7060017551", "order_status": "", "cart_offer_desc": "", "bill_amount": 25, "anomaly": 0, "skus": [{"image_url": "https://images.tinymart.in/product/4500662-3783.jpg", "tray_id": "32", "offer_id": "", "unit_price": "25", "door_id": "", "mrp": "25", "qty": 1, "sku_total": 25, "name": "Paper Boat Mixed fruit 160ml per peice", "skuid": "4500662"}]}', 'timestamp': '2026-06-12T09:23:24.719765Z', 'server_status': 'invoiceOrder', 'order_id': 'TM09202301260612145214373'} (ID: 1781256204816-0)
[2026-06-12 14:53:25,612.612 INFO    ] {'server_response': {'imei': 'TM09202301', 'rstatus': True, 'total_amount': 25, 'orderId': 'TM09202301260612145214373', 'res': True, 'userId': '7060017551', 'order_status': '', 'cart_offer_desc': '', 'bill_amount': 25, 'anomaly': 0, 'skus': [{'image_url': 'https://images.tinymart.in/product/4500662-3783.jpg', 'tray_id': '32', 'offer_id': '', 'unit_price': '25', 'door_id': '', 'mrp': '25', 'qty': 1, 'sku_total': 25, 'name': 'Paper Boat Mixed fruit 160ml per peice', 'skuid': '4500662'}]}, 'server_status': 'invoiceOrder', 'order_id': 'TM09202301260612145214373'}
[2026-06-12 14:53:25,613.613 INFO    ] 200
[2026-06-12 14:53:25,614.614 INFO    ] {"data":{"server_response":{"imei":"TM09202301","rstatus":true,"total_amount":25,"orderId":"TM09202301260612145214373","res":true,"userId":"7060017551","order_status":"","cart_offer_desc":"","bill_amount":25,"anomaly":0,"skus":[{"image_url":"https:\/\/images.tinymart.in\/product\/4500662-3783.jpg","tray_id":"32","offer_id":"","unit_price":"25","door_id":"","mrp":"25","qty":1,"sku_total":25,"name":"Paper Boat Mixed fruit 160ml per peice","skuid":"4500662"}]},"server_status":"invoiceOrder","order_id":"TM09202301260612145214373"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-12 14:53:25,616.616 INFO    ] {'response': {'code': 'ORDER_EXISTS', 'msg': 'order updated successfully', 'data': 'order updated successfully', 'status': True}, 'data': {'server_response': {'imei': 'TM09202301', 'rstatus': True, 'skus': [{'image_url': 'https://images.tinymart.in/product/4500662-3783.jpg', 'tray_id': '32', 'qty': 1, 'unit_price': '25', 'name': 'Paper Boat Mixed fruit 160ml per peice', 'door_id': '', 'skuid': '4500662', 'offer_id': '', 'sku_total': 25, 'mrp': '25'}], 'orderId': 'TM09202301260612145214373', 'res': True, 'order_status': '', 'cart_offer_desc': '', 'total_amount': 25, 'userId': '7060017551', 'anomaly': 0, 'bill_amount': 25}, 'server_status': 'invoiceOrder', 'order_id': 'TM09202301260612145214373'}}
[2026-06-12 14:53:25,617.617 INFO    ] {'response': {'code': 'ORDER_EXISTS', 'msg': 'order updated successfully', 'data': 'order updated successfully', 'status': True}, 'data': {'server_response': {'imei': 'TM09202301', 'rstatus': True, 'skus': [{'image_url': 'https://images.tinymart.in/product/4500662-3783.jpg', 'tray_id': '32', 'qty': 1, 'unit_price': '25', 'name': 'Paper Boat Mixed fruit 160ml per peice', 'door_id': '', 'skuid': '4500662', 'offer_id': '', 'sku_total': 25, 'mrp': '25'}], 'orderId': 'TM09202301260612145214373', 'res': True, 'order_status': '', 'cart_offer_desc': '', 'total_amount': 25, 'userId': '7060017551', 'anomaly': 0, 'bill_amount': 25}, 'server_status': 'invoiceOrder', 'order_id': 'TM09202301260612145214373'}}
[2026-06-12 14:53:25,618.618 INFO    ] 2026-06-12 14:53:25
[2026-06-12 14:53:26,138.138 INFO    ] 200
[2026-06-12 14:53:26,140.140 INFO    ] {"order_items": [], "tray_sync": ["no_entry", "no_entry", "no_entry", "no_entry", "no_entry", "no_entry"], "orders": [], "order_items_synced": [], "orders_synced": [], "orders_data_synced": [], "status": true, "orders_data": [], "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"]}
[2026-06-12 14:53:26,141.141 INFO    ] 2026-06-12 14:53:26
[2026-06-12 14:53:26,201.201 INFO    ] 200
[2026-06-12 14:53:26,202.202 INFO    ] True
[2026-06-12 14:53:26,203.203 INFO    ] cleanup_start_order_file_after_processing: order_id=TM09202301260612145214373
[2026-06-12 14:53:26,205.205 INFO    ] start order file deleted
[2026-06-12 14:53:26,207.207 INFO    ] Checking for system updates...
[2026-06-12 14:53:26,226.226 INFO    ] 200
[2026-06-12 14:53:26,227.227 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:53:26,258.258 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 14:53:26,260.260 INFO    ] No update needed
[2026-06-12 14:53:26,261.261 INFO    ] Checking for camera pi updates...
[2026-06-12 14:53:26,281.281 INFO    ] 200
[2026-06-12 14:53:26,282.282 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:53:26,305.305 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 14:53:26,351.351 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 14:53:26,352.352 INFO    ] No camera update needed
[2026-06-12 14:53:26,354.354 INFO    ] Script finished. Safe exiting...
[2026-06-12 14:53:26,355.355 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 14:53:26,358.358 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 14:53:26,361.361 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 14:53:28,400.400 INFO    ] ================================================
[2026-06-12 14:53:28,416.416 INFO    ] Launching Daemon at Fri Jun 12 14:53:28 IST 2026
[2026-06-12 14:53:28,427.427 INFO    ] ================================================
[2026-06-12 14:53:28,821.821 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 14:53:28
[2026-06-12 14:53:29,160.160 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 14:53:29,306.306 INFO    ] Initializing speech engine...
[2026-06-12 14:53:29,317.317 INFO    ] 2026-06-12 14:53:29
[2026-06-12 14:53:29,523.523 INFO    ] 2026-06-12 14:53:29
[2026-06-12 14:53:29,552.552 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 14:53:29,735.735 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 14:53:29,745.745 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 14:53:29,874.874 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 14:53:29,941.941 INFO    ] time= 12/06/2026 14:53:29
[2026-06-12 14:53:29,965.965 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 14:53:29,972.972 INFO    ] Checking for existing commands in stream...
[2026-06-12 14:53:30,041.041 INFO    ] No existing commands found in stream
[2026-06-12 14:53:35,071.071 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 14:53:35,075.075 INFO    ] Waiting 3.00 seconds before fallback handling...
[2026-06-12 14:53:38,454.454 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 14:53:38,456.456 INFO    ] Checking for system updates...
[2026-06-12 14:53:38,477.477 INFO    ] 200
[2026-06-12 14:53:38,478.478 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:53:38,508.508 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 14:53:38,510.510 INFO    ] No update needed
[2026-06-12 14:53:38,511.511 INFO    ] Checking for camera pi updates...
[2026-06-12 14:53:38,531.531 INFO    ] 200
[2026-06-12 14:53:38,532.532 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:53:38,555.555 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 14:53:38,694.694 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 14:53:38,695.695 INFO    ] No camera update needed
[2026-06-12 14:53:38,697.697 INFO    ] Script finished. Safe exiting...
[2026-06-12 14:53:38,698.698 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 14:53:38,702.702 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 14:53:38,705.705 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 14:53:40,743.743 INFO    ] ================================================
[2026-06-12 14:53:40,759.759 INFO    ] Launching Daemon at Fri Jun 12 14:53:40 IST 2026
[2026-06-12 14:53:40,770.770 INFO    ] ================================================
[2026-06-12 14:53:41,144.144 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 14:53:41
[2026-06-12 14:53:41,460.460 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 14:53:41,604.604 INFO    ] Initializing speech engine...
[2026-06-12 14:53:41,609.609 INFO    ] 2026-06-12 14:53:41
[2026-06-12 14:53:41,813.813 INFO    ] 2026-06-12 14:53:41
[2026-06-12 14:53:41,841.841 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 14:53:42,025.025 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 14:53:42,029.029 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 14:53:42,162.162 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 14:53:42,213.213 INFO    ] time= 12/06/2026 14:53:42
[2026-06-12 14:53:42,255.255 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 14:53:42,261.261 INFO    ] Checking for existing commands in stream...
[2026-06-12 14:53:42,327.327 INFO    ] No existing commands found in stream
[2026-06-12 14:53:47,337.337 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 14:53:47,340.340 INFO    ] Waiting 1.77 seconds before fallback handling...
[2026-06-12 14:53:49,498.498 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 14:53:49,500.500 INFO    ] Checking for system updates...
[2026-06-12 14:53:49,520.520 INFO    ] 200
[2026-06-12 14:53:49,522.522 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:53:49,551.551 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 14:53:49,553.553 INFO    ] No update needed
[2026-06-12 14:53:49,554.554 INFO    ] Checking for camera pi updates...
[2026-06-12 14:53:49,573.573 INFO    ] 200
[2026-06-12 14:53:49,575.575 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:53:49,600.600 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 14:53:49,643.643 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 14:53:49,644.644 INFO    ] No camera update needed
[2026-06-12 14:53:49,645.645 INFO    ] Script finished. Safe exiting...
[2026-06-12 14:53:49,647.647 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 14:53:49,650.650 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 14:53:49,653.653 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 14:53:51,693.693 INFO    ] ================================================
[2026-06-12 14:53:51,709.709 INFO    ] Launching Daemon at Fri Jun 12 14:53:51 IST 2026
[2026-06-12 14:53:51,720.720 INFO    ] ================================================
[2026-06-12 14:53:52,084.084 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 14:53:52
[2026-06-12 14:53:52,425.425 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 14:53:52,572.572 INFO    ] Initializing speech engine...
[2026-06-12 14:53:52,583.583 INFO    ] 2026-06-12 14:53:52
[2026-06-12 14:53:52,793.793 INFO    ] 2026-06-12 14:53:52
[2026-06-12 14:53:52,822.822 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 14:53:53,011.011 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 14:53:53,021.021 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 14:53:53,173.173 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 14:53:53,229.229 INFO    ] time= 12/06/2026 14:53:53
[2026-06-12 14:53:53,250.250 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 14:53:53,252.252 INFO    ] Checking for existing commands in stream...
[2026-06-12 14:53:53,320.320 INFO    ] No existing commands found in stream
[2026-06-12 14:53:58,334.334 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 14:53:58,337.337 INFO    ] Waiting 0.06 seconds before fallback handling...
[2026-06-12 14:53:58,774.774 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 14:53:58,775.775 INFO    ] Checking for system updates...
[2026-06-12 14:53:58,796.796 INFO    ] 200
[2026-06-12 14:53:58,797.797 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:53:58,827.827 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 14:53:58,829.829 INFO    ] No update needed
[2026-06-12 14:53:58,830.830 INFO    ] Checking for camera pi updates...
[2026-06-12 14:53:58,851.851 INFO    ] 200
[2026-06-12 14:53:58,852.852 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:53:58,877.877 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 14:53:58,929.929 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 14:53:58,931.931 INFO    ] No camera update needed
[2026-06-12 14:53:58,932.932 INFO    ] Script finished. Safe exiting...
[2026-06-12 14:53:58,934.934 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 14:53:58,937.937 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 14:53:58,940.940 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 14:54:00,980.980 INFO    ] ================================================
[2026-06-12 14:54:01,995.995 INFO    ] Launching Daemon at Fri Jun 12 14:54:00 IST 2026
[2026-06-12 14:54:01,006.006 INFO    ] ================================================
[2026-06-12 14:54:01,363.363 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 14:54:01
[2026-06-12 14:54:01,682.682 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 14:54:01,817.817 INFO    ] Initializing speech engine...
[2026-06-12 14:54:01,821.821 INFO    ] 2026-06-12 14:54:01
[2026-06-12 14:54:02,150.150 INFO    ] 2026-06-12 14:54:02
[2026-06-12 14:54:02,175.175 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 14:54:02,404.404 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 14:54:02,412.412 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 14:54:02,599.599 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 14:54:02,661.661 INFO    ] time= 12/06/2026 14:54:02
[2026-06-12 14:54:02,674.674 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 14:54:02,677.677 INFO    ] Checking for existing commands in stream...
[2026-06-12 14:54:02,759.759 INFO    ] No existing commands found in stream
[2026-06-12 14:54:07,770.770 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 14:54:07,773.773 INFO    ] Waiting 0.61 seconds before fallback handling...
[2026-06-12 14:54:08,762.762 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 14:54:08,764.764 INFO    ] Checking for system updates...
[2026-06-12 14:54:08,784.784 INFO    ] 200
[2026-06-12 14:54:08,785.785 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:54:08,815.815 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 14:54:08,817.817 INFO    ] No update needed
[2026-06-12 14:54:08,818.818 INFO    ] Checking for camera pi updates...
[2026-06-12 14:54:08,837.837 INFO    ] 200
[2026-06-12 14:54:08,838.838 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:54:08,863.863 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 14:54:08,925.925 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 14:54:08,927.927 INFO    ] No camera update needed
[2026-06-12 14:54:08,928.928 INFO    ] Script finished. Safe exiting...
[2026-06-12 14:54:08,929.929 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 14:54:08,932.932 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 14:54:08,935.935 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 14:54:10,974.974 INFO    ] ================================================
[2026-06-12 14:54:10,990.990 INFO    ] Launching Daemon at Fri Jun 12 14:54:10 IST 2026
[2026-06-12 14:54:11,001.001 INFO    ] ================================================
[2026-06-12 14:54:11,362.362 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 14:54:11
[2026-06-12 14:54:11,677.677 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 14:54:11,820.820 INFO    ] Initializing speech engine...
[2026-06-12 14:54:11,824.824 INFO    ] 2026-06-12 14:54:11
[2026-06-12 14:54:12,028.028 INFO    ] 2026-06-12 14:54:12
[2026-06-12 14:54:12,056.056 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 14:54:12,240.240 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 14:54:12,248.248 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 14:54:12,394.394 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 14:54:12,453.453 INFO    ] time= 12/06/2026 14:54:12
[2026-06-12 14:54:12,470.470 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 14:54:12,475.475 INFO    ] Checking for existing commands in stream...
[2026-06-12 14:54:12,542.542 INFO    ] No existing commands found in stream
[2026-06-12 14:54:17,556.556 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 14:54:17,559.559 INFO    ] Waiting 3.47 seconds before fallback handling...
[2026-06-12 14:54:21,610.610 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 14:54:21,612.612 INFO    ] Checking for system updates...
[2026-06-12 14:54:21,632.632 INFO    ] 200
[2026-06-12 14:54:21,634.634 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:54:21,663.663 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 14:54:21,664.664 INFO    ] No update needed
[2026-06-12 14:54:21,666.666 INFO    ] Checking for camera pi updates...
[2026-06-12 14:54:21,686.686 INFO    ] 200
[2026-06-12 14:54:21,688.688 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:54:21,713.713 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 14:54:21,793.793 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 14:54:21,795.795 INFO    ] No camera update needed
[2026-06-12 14:54:21,796.796 INFO    ] Script finished. Safe exiting...
[2026-06-12 14:54:21,797.797 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 14:54:21,801.801 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 14:54:21,803.803 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 14:54:23,843.843 INFO    ] ================================================
[2026-06-12 14:54:23,859.859 INFO    ] Launching Daemon at Fri Jun 12 14:54:23 IST 2026
[2026-06-12 14:54:23,870.870 INFO    ] ================================================
[2026-06-12 14:54:24,254.254 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 14:54:24
[2026-06-12 14:54:24,597.597 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 14:54:24,752.752 INFO    ] Initializing speech engine...
[2026-06-12 14:54:24,756.756 INFO    ] 2026-06-12 14:54:24
[2026-06-12 14:54:24,966.966 INFO    ] 2026-06-12 14:54:24
[2026-06-12 14:54:24,994.994 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 14:54:25,134.134 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 14:54:25,183.183 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 14:54:25,333.333 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 14:54:25,393.393 INFO    ] time= 12/06/2026 14:54:25
[2026-06-12 14:54:25,415.415 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 14:54:25,422.422 INFO    ] Checking for existing commands in stream...
[2026-06-12 14:54:25,489.489 INFO    ] No existing commands found in stream
[2026-06-12 14:54:30,522.522 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 14:54:30,526.526 INFO    ] Waiting 2.20 seconds before fallback handling...
[2026-06-12 14:54:33,051.051 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 14:54:33,053.053 INFO    ] Checking for system updates...
[2026-06-12 14:54:33,073.073 INFO    ] 200
[2026-06-12 14:54:33,075.075 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:54:33,105.105 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 14:54:33,106.106 INFO    ] No update needed
[2026-06-12 14:54:33,107.107 INFO    ] Checking for camera pi updates...
[2026-06-12 14:54:33,127.127 INFO    ] 200
[2026-06-12 14:54:33,128.128 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:54:33,153.153 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 14:54:33,197.197 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 14:54:33,199.199 INFO    ] No camera update needed
[2026-06-12 14:54:33,200.200 INFO    ] Script finished. Safe exiting...
[2026-06-12 14:54:33,202.202 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 14:54:33,205.205 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 14:54:33,208.208 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 14:54:35,247.247 INFO    ] ================================================
[2026-06-12 14:54:35,263.263 INFO    ] Launching Daemon at Fri Jun 12 14:54:35 IST 2026
[2026-06-12 14:54:35,274.274 INFO    ] ================================================
[2026-06-12 14:54:35,637.637 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 14:54:35
[2026-06-12 14:54:35,949.949 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 14:54:36,078.078 INFO    ] Initializing speech engine...
[2026-06-12 14:54:36,083.083 INFO    ] 2026-06-12 14:54:36
[2026-06-12 14:54:36,303.303 INFO    ] 2026-06-12 14:54:36
[2026-06-12 14:54:36,333.333 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 14:54:36,507.507 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 14:54:36,521.521 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 14:54:36,661.661 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 14:54:36,725.725 INFO    ] time= 12/06/2026 14:54:36
[2026-06-12 14:54:36,754.754 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 14:54:36,760.760 INFO    ] Checking for existing commands in stream...
[2026-06-12 14:54:36,828.828 INFO    ] No existing commands found in stream
[2026-06-12 14:54:41,837.837 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 14:54:41,840.840 INFO    ] Waiting 0.72 seconds before fallback handling...
[2026-06-12 14:54:42,976.976 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 14:54:42,978.978 INFO    ] Checking for system updates...
[2026-06-12 14:54:42,998.998 INFO    ] 200
[2026-06-12 14:54:42,999.999 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:54:43,029.029 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 14:54:43,030.030 INFO    ] No update needed
[2026-06-12 14:54:43,032.032 INFO    ] Checking for camera pi updates...
[2026-06-12 14:54:43,051.051 INFO    ] 200
[2026-06-12 14:54:43,052.052 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:54:43,075.075 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 14:54:43,121.121 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 14:54:43,122.122 INFO    ] No camera update needed
[2026-06-12 14:54:43,123.123 INFO    ] Script finished. Safe exiting...
[2026-06-12 14:54:43,125.125 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 14:54:43,128.128 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 14:54:43,130.130 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 14:54:45,173.173 INFO    ] ================================================
[2026-06-12 14:54:45,188.188 INFO    ] Launching Daemon at Fri Jun 12 14:54:45 IST 2026
[2026-06-12 14:54:45,200.200 INFO    ] ================================================
[2026-06-12 14:54:45,548.548 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 14:54:45
[2026-06-12 14:54:45,864.864 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 14:54:45,996.996 INFO    ] Initializing speech engine...
[2026-06-12 14:54:46,001.001 INFO    ] 2026-06-12 14:54:45
[2026-06-12 14:54:46,210.210 INFO    ] 2026-06-12 14:54:46
[2026-06-12 14:54:46,239.239 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 14:54:46,398.398 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 14:54:46,441.441 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 14:54:46,618.618 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 14:54:46,690.690 INFO    ] time= 12/06/2026 14:54:46
[2026-06-12 14:54:46,715.715 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 14:54:46,722.722 INFO    ] Checking for existing commands in stream...
[2026-06-12 14:54:46,795.795 INFO    ] No existing commands found in stream
[2026-06-12 14:54:51,804.804 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 14:54:51,811.811 INFO    ] Waiting 2.54 seconds before fallback handling...
[2026-06-12 14:54:54,741.741 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 14:54:54,743.743 INFO    ] Checking for system updates...
[2026-06-12 14:54:54,763.763 INFO    ] 200
[2026-06-12 14:54:54,765.765 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:54:54,795.795 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 14:54:54,797.797 INFO    ] No update needed
[2026-06-12 14:54:54,798.798 INFO    ] Checking for camera pi updates...
[2026-06-12 14:54:54,817.817 INFO    ] 200
[2026-06-12 14:54:54,818.818 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:54:54,843.843 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 14:54:54,889.889 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 14:54:54,891.891 INFO    ] No camera update needed
[2026-06-12 14:54:54,892.892 INFO    ] Script finished. Safe exiting...
[2026-06-12 14:54:54,893.893 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 14:54:54,896.896 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 14:54:54,899.899 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 14:54:56,937.937 INFO    ] ================================================
[2026-06-12 14:54:56,954.954 INFO    ] Launching Daemon at Fri Jun 12 14:54:56 IST 2026
[2026-06-12 14:54:56,964.964 INFO    ] ================================================
[2026-06-12 14:54:57,294.294 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 14:54:57
[2026-06-12 14:54:57,605.605 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 14:54:57,747.747 INFO    ] Initializing speech engine...
[2026-06-12 14:54:57,752.752 INFO    ] 2026-06-12 14:54:57
[2026-06-12 14:54:57,956.956 INFO    ] 2026-06-12 14:54:57
[2026-06-12 14:54:57,986.986 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 14:54:58,169.169 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 14:54:58,178.178 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 14:54:58,327.327 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 14:54:58,376.376 INFO    ] time= 12/06/2026 14:54:58
[2026-06-12 14:54:58,398.398 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 14:54:58,403.403 INFO    ] Checking for existing commands in stream...
[2026-06-12 14:54:58,470.470 INFO    ] No existing commands found in stream
[2026-06-12 14:55:03,489.489 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 14:55:03,492.492 INFO    ] Waiting 1.77 seconds before fallback handling...
[2026-06-12 14:55:05,601.601 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 14:55:05,603.603 INFO    ] Checking for system updates...
[2026-06-12 14:55:05,623.623 INFO    ] 200
[2026-06-12 14:55:05,624.624 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:55:05,656.656 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 14:55:05,657.657 INFO    ] No update needed
[2026-06-12 14:55:05,659.659 INFO    ] Checking for camera pi updates...
[2026-06-12 14:55:05,677.677 INFO    ] 200
[2026-06-12 14:55:05,679.679 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:55:05,705.705 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 14:55:05,750.750 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 14:55:05,752.752 INFO    ] No camera update needed
[2026-06-12 14:55:05,753.753 INFO    ] Script finished. Safe exiting...
[2026-06-12 14:55:05,754.754 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 14:55:05,757.757 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 14:55:05,760.760 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 14:55:07,799.799 INFO    ] ================================================
[2026-06-12 14:55:07,815.815 INFO    ] Launching Daemon at Fri Jun 12 14:55:07 IST 2026
[2026-06-12 14:55:07,828.828 INFO    ] ================================================
[2026-06-12 14:55:08,187.187 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 14:55:08
[2026-06-12 14:55:08,500.500 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 14:55:08,631.631 INFO    ] Initializing speech engine...
[2026-06-12 14:55:08,636.636 INFO    ] 2026-06-12 14:55:08
[2026-06-12 14:55:08,867.867 INFO    ] 2026-06-12 14:55:08
[2026-06-12 14:55:08,898.898 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 14:55:09,099.099 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 14:55:09,103.103 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 14:55:09,263.263 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 14:55:09,325.325 INFO    ] time= 12/06/2026 14:55:09
[2026-06-12 14:55:09,351.351 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 14:55:09,358.358 INFO    ] Checking for existing commands in stream...
[2026-06-12 14:55:09,430.430 INFO    ] No existing commands found in stream
[2026-06-12 14:55:14,440.440 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 14:55:14,443.443 INFO    ] Waiting 1.64 seconds before fallback handling...
[2026-06-12 14:55:16,465.465 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 14:55:16,466.466 INFO    ] Checking for system updates...
[2026-06-12 14:55:16,487.487 INFO    ] 200
[2026-06-12 14:55:16,489.489 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:55:16,521.521 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 14:55:16,522.522 INFO    ] No update needed
[2026-06-12 14:55:16,523.523 INFO    ] Checking for camera pi updates...
[2026-06-12 14:55:16,543.543 INFO    ] 200
[2026-06-12 14:55:16,545.545 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:55:16,568.568 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 14:55:16,615.615 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 14:55:16,616.616 INFO    ] No camera update needed
[2026-06-12 14:55:16,617.617 INFO    ] Script finished. Safe exiting...
[2026-06-12 14:55:16,618.618 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 14:55:16,622.622 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 14:55:16,624.624 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 14:55:18,663.663 INFO    ] ================================================
[2026-06-12 14:55:18,678.678 INFO    ] Launching Daemon at Fri Jun 12 14:55:18 IST 2026
[2026-06-12 14:55:18,689.689 INFO    ] ================================================
[2026-06-12 14:55:19,024.024 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 14:55:19
[2026-06-12 14:55:19,339.339 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 14:55:19,483.483 INFO    ] Initializing speech engine...
[2026-06-12 14:55:19,532.532 INFO    ] 2026-06-12 14:55:19
[2026-06-12 14:55:19,762.762 INFO    ] 2026-06-12 14:55:19
[2026-06-12 14:55:19,780.780 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 14:55:19,990.990 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 14:55:20,039.039 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 14:55:20,207.207 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 14:55:20,211.211 INFO    ] time= 12/06/2026 14:55:20
[2026-06-12 14:55:20,236.236 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 14:55:20,238.238 INFO    ] Checking for existing commands in stream...
[2026-06-12 14:55:20,336.336 INFO    ] No existing commands found in stream
[2026-06-12 14:55:25,346.346 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 14:55:25,349.349 INFO    ] Waiting 3.34 seconds before fallback handling...
[2026-06-12 14:55:29,086.086 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 14:55:29,087.087 INFO    ] Checking for system updates...
[2026-06-12 14:55:29,108.108 INFO    ] 200
[2026-06-12 14:55:29,110.110 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:55:29,142.142 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 14:55:29,143.143 INFO    ] No update needed
[2026-06-12 14:55:29,144.144 INFO    ] Checking for camera pi updates...
[2026-06-12 14:55:29,163.163 INFO    ] 200
[2026-06-12 14:55:29,165.165 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:55:29,187.187 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 14:55:29,228.228 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 14:55:29,230.230 INFO    ] No camera update needed
[2026-06-12 14:55:29,231.231 INFO    ] Script finished. Safe exiting...
[2026-06-12 14:55:29,232.232 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 14:55:29,235.235 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 14:55:29,238.238 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 14:55:31,277.277 INFO    ] ================================================
[2026-06-12 14:55:31,295.295 INFO    ] Launching Daemon at Fri Jun 12 14:55:31 IST 2026
[2026-06-12 14:55:31,307.307 INFO    ] ================================================
[2026-06-12 14:55:31,654.654 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 14:55:31
[2026-06-12 14:55:32,003.003 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 14:55:32,144.144 INFO    ] Initializing speech engine...
[2026-06-12 14:55:32,148.148 INFO    ] 2026-06-12 14:55:32
[2026-06-12 14:55:32,342.342 INFO    ] 2026-06-12 14:55:32
[2026-06-12 14:55:32,390.390 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 14:55:32,549.549 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 14:55:32,591.591 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 14:55:32,760.760 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 14:55:32,818.818 INFO    ] time= 12/06/2026 14:55:32
[2026-06-12 14:55:32,859.859 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 14:55:32,871.871 INFO    ] Checking for existing commands in stream...
[2026-06-12 14:55:32,948.948 INFO    ] No existing commands found in stream
[2026-06-12 14:55:37,959.959 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 14:55:37,962.962 INFO    ] Waiting 3.23 seconds before fallback handling...
[2026-06-12 14:55:41,584.584 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 14:55:41,586.586 INFO    ] Checking for system updates...
[2026-06-12 14:55:41,606.606 INFO    ] 200
[2026-06-12 14:55:41,608.608 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:55:41,638.638 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 14:55:41,640.640 INFO    ] No update needed
[2026-06-12 14:55:41,641.641 INFO    ] Checking for camera pi updates...
[2026-06-12 14:55:41,664.664 INFO    ] 200
[2026-06-12 14:55:41,665.665 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:55:41,688.688 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 14:55:41,827.827 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 14:55:41,828.828 INFO    ] No camera update needed
[2026-06-12 14:55:41,829.829 INFO    ] Script finished. Safe exiting...
[2026-06-12 14:55:41,831.831 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 14:55:41,834.834 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 14:55:41,837.837 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 14:55:43,875.875 INFO    ] ================================================
[2026-06-12 14:55:43,891.891 INFO    ] Launching Daemon at Fri Jun 12 14:55:43 IST 2026
[2026-06-12 14:55:43,907.907 INFO    ] ================================================
[2026-06-12 14:55:44,243.243 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 14:55:44
[2026-06-12 14:55:44,561.561 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 14:55:44,698.698 INFO    ] Initializing speech engine...
[2026-06-12 14:55:44,706.706 INFO    ] 2026-06-12 14:55:44
[2026-06-12 14:55:44,932.932 INFO    ] 2026-06-12 14:55:44
[2026-06-12 14:55:44,963.963 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 14:55:45,117.117 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 14:55:45,165.165 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 14:55:45,307.307 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 14:55:45,359.359 INFO    ] time= 12/06/2026 14:55:45
[2026-06-12 14:55:45,392.392 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 14:55:45,416.416 INFO    ] Checking for existing commands in stream...
[2026-06-12 14:55:45,520.520 INFO    ] No existing commands found in stream
[2026-06-12 14:55:50,529.529 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 14:55:50,532.532 INFO    ] Waiting 3.38 seconds before fallback handling...
[2026-06-12 14:55:54,266.266 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 14:55:54,267.267 INFO    ] Checking for system updates...
[2026-06-12 14:55:54,287.287 INFO    ] 200
[2026-06-12 14:55:54,289.289 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:55:54,321.321 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 14:55:54,323.323 INFO    ] No update needed
[2026-06-12 14:55:54,324.324 INFO    ] Checking for camera pi updates...
[2026-06-12 14:55:54,344.344 INFO    ] 200
[2026-06-12 14:55:54,346.346 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:55:54,370.370 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 14:55:54,424.424 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 14:55:54,425.425 INFO    ] No camera update needed
[2026-06-12 14:55:54,426.426 INFO    ] Script finished. Safe exiting...
[2026-06-12 14:55:54,427.427 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 14:55:54,430.430 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 14:55:54,433.433 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 14:55:56,471.471 INFO    ] ================================================
[2026-06-12 14:55:56,486.486 INFO    ] Launching Daemon at Fri Jun 12 14:55:56 IST 2026
[2026-06-12 14:55:56,502.502 INFO    ] ================================================
[2026-06-12 14:55:56,869.869 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 14:55:56
[2026-06-12 14:55:57,184.184 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 14:55:57,320.320 INFO    ] Initializing speech engine...
[2026-06-12 14:55:57,330.330 INFO    ] 2026-06-12 14:55:57
[2026-06-12 14:55:57,534.534 INFO    ] 2026-06-12 14:55:57
[2026-06-12 14:55:57,562.562 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 14:55:57,746.746 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 14:55:57,756.756 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 14:55:57,916.916 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 14:55:57,966.966 INFO    ] time= 12/06/2026 14:55:57
[2026-06-12 14:55:57,976.976 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 14:55:57,982.982 INFO    ] Checking for existing commands in stream...
[2026-06-12 14:55:58,049.049 INFO    ] No existing commands found in stream
[2026-06-12 14:56:03,063.063 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 14:56:03,066.066 INFO    ] Waiting 0.91 seconds before fallback handling...
[2026-06-12 14:56:04,333.333 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 14:56:04,335.335 INFO    ] Checking for system updates...
[2026-06-12 14:56:04,357.357 INFO    ] 200
[2026-06-12 14:56:04,358.358 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:56:04,387.387 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 14:56:04,389.389 INFO    ] No update needed
[2026-06-12 14:56:04,390.390 INFO    ] Checking for camera pi updates...
[2026-06-12 14:56:04,409.409 INFO    ] 200
[2026-06-12 14:56:04,410.410 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:56:04,435.435 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 14:56:04,482.482 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 14:56:04,484.484 INFO    ] No camera update needed
[2026-06-12 14:56:04,485.485 INFO    ] Script finished. Safe exiting...
[2026-06-12 14:56:04,486.486 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 14:56:04,489.489 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 14:56:04,492.492 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 14:56:06,532.532 INFO    ] ================================================
[2026-06-12 14:56:06,548.548 INFO    ] Launching Daemon at Fri Jun 12 14:56:06 IST 2026
[2026-06-12 14:56:06,561.561 INFO    ] ================================================
[2026-06-12 14:56:06,902.902 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 14:56:06
[2026-06-12 14:56:07,216.216 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 14:56:07,355.355 INFO    ] Initializing speech engine...
[2026-06-12 14:56:07,365.365 INFO    ] 2026-06-12 14:56:07
[2026-06-12 14:56:07,574.574 INFO    ] 2026-06-12 14:56:07
[2026-06-12 14:56:07,604.604 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 14:56:07,792.792 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 14:56:07,800.800 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 14:56:07,947.947 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 14:56:08,004.004 INFO    ] time= 12/06/2026 14:56:07
[2026-06-12 14:56:08,027.027 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 14:56:08,033.033 INFO    ] Checking for existing commands in stream...
[2026-06-12 14:56:08,101.101 INFO    ] No existing commands found in stream
[2026-06-12 14:56:13,114.114 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 14:56:13,117.117 INFO    ] Waiting 0.76 seconds before fallback handling...
[2026-06-12 14:56:14,287.287 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 14:56:14,288.288 INFO    ] Checking for system updates...
[2026-06-12 14:56:14,309.309 INFO    ] 200
[2026-06-12 14:56:14,310.310 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:56:14,342.342 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 14:56:14,344.344 INFO    ] No update needed
[2026-06-12 14:56:14,345.345 INFO    ] Checking for camera pi updates...
[2026-06-12 14:56:14,364.364 INFO    ] 200
[2026-06-12 14:56:14,365.365 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:56:14,387.387 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 14:56:14,452.452 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 14:56:14,453.453 INFO    ] No camera update needed
[2026-06-12 14:56:14,454.454 INFO    ] Script finished. Safe exiting...
[2026-06-12 14:56:14,456.456 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 14:56:14,459.459 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 14:56:14,461.461 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 14:56:16,500.500 INFO    ] ================================================
[2026-06-12 14:56:16,517.517 INFO    ] Launching Daemon at Fri Jun 12 14:56:16 IST 2026
[2026-06-12 14:56:16,527.527 INFO    ] ================================================
[2026-06-12 14:56:16,858.858 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 14:56:16
[2026-06-12 14:56:17,171.171 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 14:56:17,302.302 INFO    ] Initializing speech engine...
[2026-06-12 14:56:17,310.310 INFO    ] 2026-06-12 14:56:17
[2026-06-12 14:56:17,521.521 INFO    ] 2026-06-12 14:56:17
[2026-06-12 14:56:17,551.551 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 14:56:17,734.734 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 14:56:17,743.743 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 14:56:17,887.887 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 14:56:17,940.940 INFO    ] time= 12/06/2026 14:56:17
[2026-06-12 14:56:17,962.962 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 14:56:17,968.968 INFO    ] Checking for existing commands in stream...
[2026-06-12 14:56:18,034.034 INFO    ] No existing commands found in stream
[2026-06-12 14:56:23,048.048 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 14:56:23,051.051 INFO    ] Waiting 0.26 seconds before fallback handling...
[2026-06-12 14:56:23,686.686 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 14:56:23,688.688 INFO    ] Checking for system updates...
[2026-06-12 14:56:23,709.709 INFO    ] 200
[2026-06-12 14:56:23,711.711 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:56:23,745.745 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 14:56:23,747.747 INFO    ] No update needed
[2026-06-12 14:56:23,749.749 INFO    ] Checking for camera pi updates...
[2026-06-12 14:56:23,770.770 INFO    ] 200
[2026-06-12 14:56:23,771.771 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:56:23,794.794 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 14:56:23,837.837 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 14:56:23,838.838 INFO    ] No camera update needed
[2026-06-12 14:56:23,840.840 INFO    ] Script finished. Safe exiting...
[2026-06-12 14:56:23,841.841 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 14:56:23,845.845 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 14:56:23,848.848 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 14:56:25,887.887 INFO    ] ================================================
[2026-06-12 14:56:25,903.903 INFO    ] Launching Daemon at Fri Jun 12 14:56:25 IST 2026
[2026-06-12 14:56:25,914.914 INFO    ] ================================================
[2026-06-12 14:56:26,261.261 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 14:56:26
[2026-06-12 14:56:26,573.573 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 14:56:26,706.706 INFO    ] Initializing speech engine...
[2026-06-12 14:56:26,709.709 INFO    ] 2026-06-12 14:56:26
[2026-06-12 14:56:26,938.938 INFO    ] 2026-06-12 14:56:26
[2026-06-12 14:56:26,973.973 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 14:56:27,168.168 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 14:56:27,175.175 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 14:56:27,315.315 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 14:56:27,356.356 INFO    ] time= 12/06/2026 14:56:27
[2026-06-12 14:56:27,397.397 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 14:56:27,423.423 INFO    ] Checking for existing commands in stream...
[2026-06-12 14:56:27,498.498 INFO    ] No existing commands found in stream
[2026-06-12 14:56:32,509.509 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 14:56:32,512.512 INFO    ] Waiting 3.27 seconds before fallback handling...
[2026-06-12 14:56:36,172.172 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 14:56:36,173.173 INFO    ] Checking for system updates...
[2026-06-12 14:56:36,193.193 INFO    ] 200
[2026-06-12 14:56:36,195.195 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:56:36,226.226 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 14:56:36,228.228 INFO    ] No update needed
[2026-06-12 14:56:36,229.229 INFO    ] Checking for camera pi updates...
[2026-06-12 14:56:36,248.248 INFO    ] 200
[2026-06-12 14:56:36,249.249 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:56:36,273.273 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 14:56:36,325.325 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 14:56:36,326.326 INFO    ] No camera update needed
[2026-06-12 14:56:36,327.327 INFO    ] Script finished. Safe exiting...
[2026-06-12 14:56:36,329.329 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 14:56:36,332.332 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 14:56:36,334.334 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 14:56:38,372.372 INFO    ] ================================================
[2026-06-12 14:56:38,387.387 INFO    ] Launching Daemon at Fri Jun 12 14:56:38 IST 2026
[2026-06-12 14:56:38,398.398 INFO    ] ================================================
[2026-06-12 14:56:38,726.726 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 14:56:38
[2026-06-12 14:56:39,038.038 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 14:56:39,181.181 INFO    ] Initializing speech engine...
[2026-06-12 14:56:39,187.187 INFO    ] 2026-06-12 14:56:39
[2026-06-12 14:56:39,391.391 INFO    ] 2026-06-12 14:56:39
[2026-06-12 14:56:39,418.418 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 14:56:39,603.603 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 14:56:39,606.606 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 14:56:39,743.743 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 14:56:39,810.810 INFO    ] time= 12/06/2026 14:56:39
[2026-06-12 14:56:39,834.834 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 14:56:39,841.841 INFO    ] Checking for existing commands in stream...
[2026-06-12 14:56:39,908.908 INFO    ] No existing commands found in stream
[2026-06-12 14:56:44,922.922 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 14:56:44,925.925 INFO    ] Waiting 2.36 seconds before fallback handling...
[2026-06-12 14:56:47,648.648 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 14:56:47,649.649 INFO    ] Checking for system updates...
[2026-06-12 14:56:47,671.671 INFO    ] 200
[2026-06-12 14:56:47,673.673 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:56:47,703.703 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 14:56:47,705.705 INFO    ] No update needed
[2026-06-12 14:56:47,706.706 INFO    ] Checking for camera pi updates...
[2026-06-12 14:56:47,726.726 INFO    ] 200
[2026-06-12 14:56:47,728.728 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:56:47,751.751 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 14:56:47,794.794 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 14:56:47,795.795 INFO    ] No camera update needed
[2026-06-12 14:56:47,796.796 INFO    ] Script finished. Safe exiting...
[2026-06-12 14:56:47,797.797 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 14:56:47,801.801 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 14:56:47,803.803 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 14:56:49,843.843 INFO    ] ================================================
[2026-06-12 14:56:49,858.858 INFO    ] Launching Daemon at Fri Jun 12 14:56:49 IST 2026
[2026-06-12 14:56:49,869.869 INFO    ] ================================================
[2026-06-12 14:56:50,217.217 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 14:56:50
[2026-06-12 14:56:50,557.557 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 14:56:50,713.713 INFO    ] Initializing speech engine...
[2026-06-12 14:56:50,720.720 INFO    ] 2026-06-12 14:56:50
[2026-06-12 14:56:50,923.923 INFO    ] 2026-06-12 14:56:50
[2026-06-12 14:56:50,952.952 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 14:56:51,135.135 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 14:56:51,144.144 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 14:56:51,271.271 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 14:56:51,327.327 INFO    ] time= 12/06/2026 14:56:51
[2026-06-12 14:56:51,361.361 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 14:56:51,366.366 INFO    ] Checking for existing commands in stream...
[2026-06-12 14:56:51,438.438 INFO    ] No existing commands found in stream
[2026-06-12 14:56:56,448.448 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 14:56:56,451.451 INFO    ] Waiting 0.02 seconds before fallback handling...
[2026-06-12 14:56:56,823.823 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 14:56:56,825.825 INFO    ] Checking for system updates...
[2026-06-12 14:56:56,845.845 INFO    ] 200
[2026-06-12 14:56:56,847.847 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:56:56,881.881 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 14:56:56,883.883 INFO    ] No update needed
[2026-06-12 14:56:56,884.884 INFO    ] Checking for camera pi updates...
[2026-06-12 14:56:56,903.903 INFO    ] 200
[2026-06-12 14:56:56,904.904 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:56:56,927.927 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 14:56:56,970.970 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 14:56:56,972.972 INFO    ] No camera update needed
[2026-06-12 14:56:56,973.973 INFO    ] Script finished. Safe exiting...
[2026-06-12 14:56:56,974.974 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 14:56:56,977.977 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 14:56:56,980.980 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 14:56:59,019.019 INFO    ] ================================================
[2026-06-12 14:56:59,034.034 INFO    ] Launching Daemon at Fri Jun 12 14:56:59 IST 2026
[2026-06-12 14:56:59,046.046 INFO    ] ================================================
[2026-06-12 14:56:59,416.416 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 14:56:59
[2026-06-12 14:56:59,729.729 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 14:56:59,864.864 INFO    ] Initializing speech engine...
[2026-06-12 14:56:59,872.872 INFO    ] 2026-06-12 14:56:59
[2026-06-12 14:57:00,097.097 INFO    ] 2026-06-12 14:57:00
[2026-06-12 14:57:00,128.128 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 14:57:00,327.327 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 14:57:00,330.330 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 14:57:00,500.500 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 14:57:00,552.552 INFO    ] time= 12/06/2026 14:57:00
[2026-06-12 14:57:00,578.578 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 14:57:00,585.585 INFO    ] Checking for existing commands in stream...
[2026-06-12 14:57:00,656.656 INFO    ] No existing commands found in stream
[2026-06-12 14:57:05,665.665 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 14:57:05,668.668 INFO    ] Waiting 1.50 seconds before fallback handling...
[2026-06-12 14:57:07,574.574 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 14:57:07,575.575 INFO    ] Checking for system updates...
[2026-06-12 14:57:07,596.596 INFO    ] 200
[2026-06-12 14:57:07,598.598 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:57:07,628.628 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 14:57:07,629.629 INFO    ] No update needed
[2026-06-12 14:57:07,631.631 INFO    ] Checking for camera pi updates...
[2026-06-12 14:57:07,650.650 INFO    ] 200
[2026-06-12 14:57:07,651.651 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:57:07,676.676 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 14:57:07,719.719 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 14:57:07,721.721 INFO    ] No camera update needed
[2026-06-12 14:57:07,722.722 INFO    ] Script finished. Safe exiting...
[2026-06-12 14:57:07,723.723 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 14:57:07,726.726 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 14:57:07,729.729 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 14:57:09,766.766 INFO    ] ================================================
[2026-06-12 14:57:09,782.782 INFO    ] Launching Daemon at Fri Jun 12 14:57:09 IST 2026
[2026-06-12 14:57:09,793.793 INFO    ] ================================================
[2026-06-12 14:57:10,135.135 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 14:57:10
[2026-06-12 14:57:10,445.445 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 14:57:10,587.587 INFO    ] Initializing speech engine...
[2026-06-12 14:57:10,595.595 INFO    ] 2026-06-12 14:57:10
[2026-06-12 14:57:10,813.813 INFO    ] 2026-06-12 14:57:10
[2026-06-12 14:57:10,844.844 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 14:57:11,042.042 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 14:57:11,052.052 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 14:57:11,184.184 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 14:57:11,240.240 INFO    ] time= 12/06/2026 14:57:11
[2026-06-12 14:57:11,285.285 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 14:57:11,292.292 INFO    ] Checking for existing commands in stream...
[2026-06-12 14:57:11,367.367 INFO    ] No existing commands found in stream
[2026-06-12 14:57:16,377.377 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 14:57:16,380.380 INFO    ] Waiting 0.43 seconds before fallback handling...
[2026-06-12 14:57:19,673.673 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 14:57:19,675.675 INFO    ] Checking for system updates...
[2026-06-12 14:57:19,711.711 INFO    ] 200
[2026-06-12 14:57:19,714.714 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:57:19,773.773 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 14:57:19,775.775 INFO    ] No update needed
[2026-06-12 14:57:19,777.777 INFO    ] Checking for camera pi updates...
[2026-06-12 14:57:19,810.810 INFO    ] 200
[2026-06-12 14:57:19,811.811 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:57:19,834.834 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 14:57:19,875.875 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 14:57:19,877.877 INFO    ] No camera update needed
[2026-06-12 14:57:19,878.878 INFO    ] Script finished. Safe exiting...
[2026-06-12 14:57:19,879.879 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 14:57:19,882.882 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 14:57:19,885.885 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 14:57:21,922.922 INFO    ] ================================================
[2026-06-12 14:57:21,938.938 INFO    ] Launching Daemon at Fri Jun 12 14:57:21 IST 2026
[2026-06-12 14:57:21,949.949 INFO    ] ================================================
[2026-06-12 14:57:22,309.309 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 14:57:22
[2026-06-12 14:57:22,651.651 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 14:57:22,805.805 INFO    ] Initializing speech engine...
[2026-06-12 14:57:22,810.810 INFO    ] 2026-06-12 14:57:22
[2026-06-12 14:57:23,015.015 INFO    ] 2026-06-12 14:57:22
[2026-06-12 14:57:23,044.044 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 14:57:23,227.227 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 14:57:23,239.239 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 14:57:23,417.417 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 14:57:23,455.455 INFO    ] time= 12/06/2026 14:57:23
[2026-06-12 14:57:23,461.461 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 14:57:23,463.463 INFO    ] Checking for existing commands in stream...
[2026-06-12 14:57:23,531.531 INFO    ] No existing commands found in stream
[2026-06-12 14:57:28,564.564 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 14:57:28,567.567 INFO    ] Waiting 2.70 seconds before fallback handling...
[2026-06-12 14:57:31,663.663 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 14:57:31,664.664 INFO    ] Checking for system updates...
[2026-06-12 14:57:31,685.685 INFO    ] 200
[2026-06-12 14:57:31,686.686 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:57:31,721.721 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 14:57:31,723.723 INFO    ] No update needed
[2026-06-12 14:57:31,725.725 INFO    ] Checking for camera pi updates...
[2026-06-12 14:57:31,754.754 INFO    ] 200
[2026-06-12 14:57:31,756.756 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:57:31,785.785 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 14:57:31,834.834 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 14:57:31,836.836 INFO    ] No camera update needed
[2026-06-12 14:57:31,838.838 INFO    ] Script finished. Safe exiting...
[2026-06-12 14:57:31,840.840 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 14:57:31,844.844 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 14:57:31,848.848 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 14:57:33,881.881 INFO    ] ================================================
[2026-06-12 14:57:33,897.897 INFO    ] Launching Daemon at Fri Jun 12 14:57:33 IST 2026
[2026-06-12 14:57:33,908.908 INFO    ] ================================================
[2026-06-12 14:57:34,239.239 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 14:57:34
[2026-06-12 14:57:34,551.551 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 14:57:34,682.682 INFO    ] Initializing speech engine...
[2026-06-12 14:57:34,685.685 INFO    ] 2026-06-12 14:57:34
[2026-06-12 14:57:34,902.902 INFO    ] 2026-06-12 14:57:34
[2026-06-12 14:57:34,931.931 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 14:57:35,114.114 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 14:57:35,123.123 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 14:57:35,264.264 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 14:57:35,321.321 INFO    ] time= 12/06/2026 14:57:35
[2026-06-12 14:57:35,345.345 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 14:57:35,351.351 INFO    ] Checking for existing commands in stream...
[2026-06-12 14:57:35,419.419 INFO    ] No existing commands found in stream
[2026-06-12 14:57:40,428.428 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 14:57:40,431.431 INFO    ] Waiting 0.20 seconds before fallback handling...
[2026-06-12 14:57:41,031.031 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 14:57:41,032.032 INFO    ] Checking for system updates...
[2026-06-12 14:57:41,054.054 INFO    ] 200
[2026-06-12 14:57:41,056.056 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:57:41,091.091 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 14:57:41,093.093 INFO    ] No update needed
[2026-06-12 14:57:41,095.095 INFO    ] Checking for camera pi updates...
[2026-06-12 14:57:41,117.117 INFO    ] 200
[2026-06-12 14:57:41,118.118 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:57:41,144.144 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 14:57:41,191.191 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 14:57:41,192.192 INFO    ] No camera update needed
[2026-06-12 14:57:41,194.194 INFO    ] Script finished. Safe exiting...
[2026-06-12 14:57:41,195.195 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 14:57:41,198.198 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 14:57:41,201.201 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 14:57:43,241.241 INFO    ] ================================================
[2026-06-12 14:57:43,257.257 INFO    ] Launching Daemon at Fri Jun 12 14:57:43 IST 2026
[2026-06-12 14:57:43,269.269 INFO    ] ================================================
[2026-06-12 14:57:43,648.648 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 14:57:43
[2026-06-12 14:57:43,993.993 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 14:57:44,149.149 INFO    ] Initializing speech engine...
[2026-06-12 14:57:44,154.154 INFO    ] 2026-06-12 14:57:44
[2026-06-12 14:57:44,360.360 INFO    ] 2026-06-12 14:57:44
[2026-06-12 14:57:44,389.389 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 14:57:44,573.573 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 14:57:44,584.584 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 14:57:44,737.737 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 14:57:44,797.797 INFO    ] time= 12/06/2026 14:57:44
[2026-06-12 14:57:44,803.803 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 14:57:44,808.808 INFO    ] Checking for existing commands in stream...
[2026-06-12 14:57:44,876.876 INFO    ] No existing commands found in stream
[2026-06-12 14:57:49,891.891 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 14:57:49,894.894 INFO    ] Waiting 3.19 seconds before fallback handling...
[2026-06-12 14:57:53,515.515 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 14:57:53,517.517 INFO    ] Checking for system updates...
[2026-06-12 14:57:53,538.538 INFO    ] 200
[2026-06-12 14:57:53,539.539 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:57:53,572.572 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 14:57:53,574.574 INFO    ] No update needed
[2026-06-12 14:57:53,575.575 INFO    ] Checking for camera pi updates...
[2026-06-12 14:57:53,599.599 INFO    ] 200
[2026-06-12 14:57:53,600.600 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:57:53,626.626 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 14:57:53,762.762 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 14:57:53,764.764 INFO    ] No camera update needed
[2026-06-12 14:57:53,765.765 INFO    ] Script finished. Safe exiting...
[2026-06-12 14:57:53,767.767 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 14:57:53,770.770 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 14:57:53,773.773 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 14:57:55,811.811 INFO    ] ================================================
[2026-06-12 14:57:55,827.827 INFO    ] Launching Daemon at Fri Jun 12 14:57:55 IST 2026
[2026-06-12 14:57:55,837.837 INFO    ] ================================================
[2026-06-12 14:57:56,168.168 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 14:57:56
[2026-06-12 14:57:56,481.481 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 14:57:56,612.612 INFO    ] Initializing speech engine...
[2026-06-12 14:57:56,620.620 INFO    ] 2026-06-12 14:57:56
[2026-06-12 14:57:56,835.835 INFO    ] 2026-06-12 14:57:56
[2026-06-12 14:57:56,864.864 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 14:57:57,049.049 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 14:57:57,053.053 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 14:57:57,190.190 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 14:57:57,241.241 INFO    ] time= 12/06/2026 14:57:57
[2026-06-12 14:57:57,276.276 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 14:57:57,300.300 INFO    ] Checking for existing commands in stream...
[2026-06-12 14:57:57,408.408 INFO    ] No existing commands found in stream
[2026-06-12 14:58:02,416.416 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 14:58:02,418.418 INFO    ] Waiting 3.09 seconds before fallback handling...
[2026-06-12 14:58:05,948.948 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 14:58:05,951.951 INFO    ] Checking for system updates...
[2026-06-12 14:58:05,986.986 INFO    ] 200
[2026-06-12 14:58:05,989.989 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:58:06,041.041 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 14:58:06,044.044 INFO    ] No update needed
[2026-06-12 14:58:06,046.046 INFO    ] Checking for camera pi updates...
[2026-06-12 14:58:06,066.066 INFO    ] 200
[2026-06-12 14:58:06,067.067 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:58:06,090.090 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 14:58:06,144.144 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 14:58:06,150.150 INFO    ] No camera update needed
[2026-06-12 14:58:06,151.151 INFO    ] Script finished. Safe exiting...
[2026-06-12 14:58:06,153.153 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 14:58:06,157.157 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 14:58:06,161.161 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 14:58:08,200.200 INFO    ] ================================================
[2026-06-12 14:58:08,216.216 INFO    ] Launching Daemon at Fri Jun 12 14:58:08 IST 2026
[2026-06-12 14:58:08,231.231 INFO    ] ================================================
[2026-06-12 14:58:08,563.563 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 14:58:08
[2026-06-12 14:58:08,875.875 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 14:58:09,007.007 INFO    ] Initializing speech engine...
[2026-06-12 14:58:09,020.020 INFO    ] 2026-06-12 14:58:09
[2026-06-12 14:58:09,226.226 INFO    ] 2026-06-12 14:58:09
[2026-06-12 14:58:09,256.256 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 14:58:09,440.440 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 14:58:09,444.444 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 14:58:09,577.577 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 14:58:09,639.639 INFO    ] time= 12/06/2026 14:58:09
[2026-06-12 14:58:09,672.672 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 14:58:09,678.678 INFO    ] Checking for existing commands in stream...
[2026-06-12 14:58:09,745.745 INFO    ] No existing commands found in stream
[2026-06-12 14:58:14,754.754 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 14:58:14,757.757 INFO    ] Waiting 1.24 seconds before fallback handling...
[2026-06-12 14:58:16,377.377 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 14:58:16,378.378 INFO    ] Checking for system updates...
[2026-06-12 14:58:16,400.400 INFO    ] 200
[2026-06-12 14:58:16,401.401 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:58:16,431.431 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 14:58:16,432.432 INFO    ] No update needed
[2026-06-12 14:58:16,434.434 INFO    ] Checking for camera pi updates...
[2026-06-12 14:58:16,453.453 INFO    ] 200
[2026-06-12 14:58:16,454.454 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:58:16,479.479 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 14:58:16,531.531 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 14:58:16,533.533 INFO    ] No camera update needed
[2026-06-12 14:58:16,534.534 INFO    ] Script finished. Safe exiting...
[2026-06-12 14:58:16,535.535 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 14:58:16,538.538 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 14:58:16,541.541 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 14:58:18,580.580 INFO    ] ================================================
[2026-06-12 14:58:18,595.595 INFO    ] Launching Daemon at Fri Jun 12 14:58:18 IST 2026
[2026-06-12 14:58:18,606.606 INFO    ] ================================================
[2026-06-12 14:58:18,956.956 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 14:58:18
[2026-06-12 14:58:19,267.267 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 14:58:19,406.406 INFO    ] Initializing speech engine...
[2026-06-12 14:58:19,416.416 INFO    ] 2026-06-12 14:58:19
[2026-06-12 14:58:19,622.622 INFO    ] 2026-06-12 14:58:19
[2026-06-12 14:58:19,652.652 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 14:58:19,838.838 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 14:58:19,842.842 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 14:58:19,982.982 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 14:58:20,050.050 INFO    ] time= 12/06/2026 14:58:19
[2026-06-12 14:58:20,074.074 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 14:58:20,081.081 INFO    ] Checking for existing commands in stream...
[2026-06-12 14:58:20,149.149 INFO    ] No existing commands found in stream
[2026-06-12 14:58:25,158.158 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 14:58:25,161.161 INFO    ] Waiting 3.08 seconds before fallback handling...
[2026-06-12 14:58:28,617.617 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 14:58:28,618.618 INFO    ] Checking for system updates...
[2026-06-12 14:58:28,640.640 INFO    ] 200
[2026-06-12 14:58:28,642.642 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:58:28,674.674 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 14:58:28,676.676 INFO    ] No update needed
[2026-06-12 14:58:28,678.678 INFO    ] Checking for camera pi updates...
[2026-06-12 14:58:28,697.697 INFO    ] 200
[2026-06-12 14:58:28,698.698 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:58:28,722.722 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 14:58:28,773.773 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 14:58:28,774.774 INFO    ] No camera update needed
[2026-06-12 14:58:28,775.775 INFO    ] Script finished. Safe exiting...
[2026-06-12 14:58:28,777.777 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 14:58:28,780.780 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 14:58:28,783.783 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 14:58:30,820.820 INFO    ] ================================================
[2026-06-12 14:58:30,835.835 INFO    ] Launching Daemon at Fri Jun 12 14:58:30 IST 2026
[2026-06-12 14:58:30,846.846 INFO    ] ================================================
[2026-06-12 14:58:31,205.205 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 14:58:31
[2026-06-12 14:58:31,517.517 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 14:58:31,660.660 INFO    ] Initializing speech engine...
[2026-06-12 14:58:31,665.665 INFO    ] 2026-06-12 14:58:31
[2026-06-12 14:58:31,871.871 INFO    ] 2026-06-12 14:58:31
[2026-06-12 14:58:31,901.901 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 14:58:32,039.039 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 14:58:32,097.097 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 14:58:32,246.246 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 14:58:32,311.311 INFO    ] time= 12/06/2026 14:58:32
[2026-06-12 14:58:32,357.357 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 14:58:32,364.364 INFO    ] Checking for existing commands in stream...
[2026-06-12 14:58:32,434.434 INFO    ] No existing commands found in stream
[2026-06-12 14:58:37,448.448 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 14:58:37,451.451 INFO    ] Waiting 3.67 seconds before fallback handling...
[2026-06-12 14:58:41,495.495 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 14:58:41,497.497 INFO    ] Checking for system updates...
[2026-06-12 14:58:41,518.518 INFO    ] 200
[2026-06-12 14:58:41,520.520 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:58:41,553.553 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 14:58:41,554.554 INFO    ] No update needed
[2026-06-12 14:58:41,555.555 INFO    ] Checking for camera pi updates...
[2026-06-12 14:58:41,574.574 INFO    ] 200
[2026-06-12 14:58:41,575.575 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:58:41,598.598 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 14:58:41,642.642 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 14:58:41,644.644 INFO    ] No camera update needed
[2026-06-12 14:58:41,645.645 INFO    ] Script finished. Safe exiting...
[2026-06-12 14:58:41,646.646 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 14:58:41,649.649 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 14:58:41,652.652 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 14:58:43,692.692 INFO    ] ================================================
[2026-06-12 14:58:43,707.707 INFO    ] Launching Daemon at Fri Jun 12 14:58:43 IST 2026
[2026-06-12 14:58:43,718.718 INFO    ] ================================================
[2026-06-12 14:58:44,114.114 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 14:58:44
[2026-06-12 14:58:44,455.455 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 14:58:44,605.605 INFO    ] Initializing speech engine...
[2026-06-12 14:58:44,611.611 INFO    ] 2026-06-12 14:58:44
[2026-06-12 14:58:44,816.816 INFO    ] 2026-06-12 14:58:44
[2026-06-12 14:58:44,846.846 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 14:58:45,029.029 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 14:58:45,039.039 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 14:58:45,169.169 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 14:58:45,236.236 INFO    ] time= 12/06/2026 14:58:45
[2026-06-12 14:58:45,260.260 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 14:58:45,266.266 INFO    ] Checking for existing commands in stream...
[2026-06-12 14:58:45,332.332 INFO    ] No existing commands found in stream
[2026-06-12 14:58:50,342.342 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 14:58:50,345.345 INFO    ] Waiting 3.28 seconds before fallback handling...
[2026-06-12 14:58:53,997.997 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 14:58:53,998.998 INFO    ] Checking for system updates...
[2026-06-12 14:58:54,020.020 INFO    ] 200
[2026-06-12 14:58:54,021.021 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:58:54,053.053 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 14:58:54,054.054 INFO    ] No update needed
[2026-06-12 14:58:54,055.055 INFO    ] Checking for camera pi updates...
[2026-06-12 14:58:54,075.075 INFO    ] 200
[2026-06-12 14:58:54,076.076 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:58:54,099.099 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 14:58:54,149.149 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 14:58:54,151.151 INFO    ] No camera update needed
[2026-06-12 14:58:54,152.152 INFO    ] Script finished. Safe exiting...
[2026-06-12 14:58:54,153.153 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 14:58:54,156.156 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 14:58:54,159.159 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 14:58:56,196.196 INFO    ] ================================================
[2026-06-12 14:58:56,212.212 INFO    ] Launching Daemon at Fri Jun 12 14:58:56 IST 2026
[2026-06-12 14:58:56,222.222 INFO    ] ================================================
[2026-06-12 14:58:56,604.604 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 14:58:56
[2026-06-12 14:58:56,940.940 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 14:58:57,091.091 INFO    ] Initializing speech engine...
[2026-06-12 14:58:57,097.097 INFO    ] 2026-06-12 14:58:57
[2026-06-12 14:58:57,306.306 INFO    ] 2026-06-12 14:58:57
[2026-06-12 14:58:57,335.335 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 14:58:57,519.519 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 14:58:57,529.529 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 14:58:57,723.723 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 14:58:57,745.745 INFO    ] time= 12/06/2026 14:58:57
[2026-06-12 14:58:57,751.751 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 14:58:57,753.753 INFO    ] Checking for existing commands in stream...
[2026-06-12 14:58:57,820.820 INFO    ] No existing commands found in stream
[2026-06-12 14:59:02,830.830 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 14:59:02,833.833 INFO    ] Waiting 0.98 seconds before fallback handling...
[2026-06-12 14:59:04,227.227 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 14:59:04,228.228 INFO    ] Checking for system updates...
[2026-06-12 14:59:04,251.251 INFO    ] 200
[2026-06-12 14:59:04,252.252 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:59:04,285.285 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 14:59:04,286.286 INFO    ] No update needed
[2026-06-12 14:59:04,288.288 INFO    ] Checking for camera pi updates...
[2026-06-12 14:59:04,310.310 INFO    ] 200
[2026-06-12 14:59:04,311.311 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:59:04,335.335 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 14:59:04,388.388 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 14:59:04,390.390 INFO    ] No camera update needed
[2026-06-12 14:59:04,392.392 INFO    ] Script finished. Safe exiting...
[2026-06-12 14:59:04,393.393 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 14:59:04,396.396 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 14:59:04,399.399 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 14:59:06,438.438 INFO    ] ================================================
[2026-06-12 14:59:06,453.453 INFO    ] Launching Daemon at Fri Jun 12 14:59:06 IST 2026
[2026-06-12 14:59:06,463.463 INFO    ] ================================================
[2026-06-12 14:59:06,807.807 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 14:59:06
[2026-06-12 14:59:07,125.125 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 14:59:07,270.270 INFO    ] Initializing speech engine...
[2026-06-12 14:59:07,275.275 INFO    ] 2026-06-12 14:59:07
[2026-06-12 14:59:07,481.481 INFO    ] 2026-06-12 14:59:07
[2026-06-12 14:59:07,510.510 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 14:59:07,694.694 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 14:59:07,703.703 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 14:59:07,843.843 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 14:59:07,900.900 INFO    ] time= 12/06/2026 14:59:07
[2026-06-12 14:59:07,924.924 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 14:59:07,930.930 INFO    ] Checking for existing commands in stream...
[2026-06-12 14:59:07,997.997 INFO    ] No existing commands found in stream
[2026-06-12 14:59:13,011.011 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 14:59:13,014.014 INFO    ] Waiting 1.49 seconds before fallback handling...
[2026-06-12 14:59:14,897.897 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 14:59:14,898.898 INFO    ] Checking for system updates...
[2026-06-12 14:59:14,920.920 INFO    ] 200
[2026-06-12 14:59:14,922.922 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:59:14,954.954 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 14:59:14,955.955 INFO    ] No update needed
[2026-06-12 14:59:14,957.957 INFO    ] Checking for camera pi updates...
[2026-06-12 14:59:14,977.977 INFO    ] 200
[2026-06-12 14:59:14,979.979 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:59:15,002.002 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 14:59:15,065.065 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 14:59:15,067.067 INFO    ] No camera update needed
[2026-06-12 14:59:15,068.068 INFO    ] Script finished. Safe exiting...
[2026-06-12 14:59:15,069.069 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 14:59:15,072.072 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 14:59:15,075.075 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 14:59:17,112.112 INFO    ] ================================================
[2026-06-12 14:59:17,127.127 INFO    ] Launching Daemon at Fri Jun 12 14:59:17 IST 2026
[2026-06-12 14:59:17,138.138 INFO    ] ================================================
[2026-06-12 14:59:17,501.501 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 14:59:17
[2026-06-12 14:59:17,824.824 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 14:59:17,968.968 INFO    ] Initializing speech engine...
[2026-06-12 14:59:17,973.973 INFO    ] 2026-06-12 14:59:17
[2026-06-12 14:59:18,178.178 INFO    ] 2026-06-12 14:59:18
[2026-06-12 14:59:18,208.208 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 14:59:18,393.393 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 14:59:18,402.402 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 14:59:18,549.549 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 14:59:18,602.602 INFO    ] time= 12/06/2026 14:59:18
[2026-06-12 14:59:18,625.625 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 14:59:18,632.632 INFO    ] Checking for existing commands in stream...
[2026-06-12 14:59:18,699.699 INFO    ] No existing commands found in stream
[2026-06-12 14:59:23,713.713 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 14:59:23,716.716 INFO    ] Waiting 3.53 seconds before fallback handling...
[2026-06-12 14:59:27,659.659 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 14:59:27,661.661 INFO    ] Checking for system updates...
[2026-06-12 14:59:27,683.683 INFO    ] 200
[2026-06-12 14:59:27,685.685 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:59:27,717.717 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 14:59:27,719.719 INFO    ] No update needed
[2026-06-12 14:59:27,721.721 INFO    ] Checking for camera pi updates...
[2026-06-12 14:59:27,740.740 INFO    ] 200
[2026-06-12 14:59:27,742.742 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:59:27,767.767 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 14:59:27,824.824 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 14:59:27,826.826 INFO    ] No camera update needed
[2026-06-12 14:59:27,827.827 INFO    ] Script finished. Safe exiting...
[2026-06-12 14:59:27,829.829 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 14:59:27,832.832 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 14:59:27,835.835 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 14:59:29,873.873 INFO    ] ================================================
[2026-06-12 14:59:29,888.888 INFO    ] Launching Daemon at Fri Jun 12 14:59:29 IST 2026
[2026-06-12 14:59:29,899.899 INFO    ] ================================================
[2026-06-12 14:59:30,298.298 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 14:59:30
[2026-06-12 14:59:30,639.639 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 14:59:30,793.793 INFO    ] Initializing speech engine...
[2026-06-12 14:59:30,798.798 INFO    ] 2026-06-12 14:59:30
[2026-06-12 14:59:31,010.010 INFO    ] 2026-06-12 14:59:30
[2026-06-12 14:59:31,039.039 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 14:59:31,226.226 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 14:59:31,229.229 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 14:59:31,383.383 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 14:59:31,446.446 INFO    ] time= 12/06/2026 14:59:31
[2026-06-12 14:59:31,485.485 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 14:59:31,492.492 INFO    ] Checking for existing commands in stream...
[2026-06-12 14:59:31,588.588 INFO    ] No existing commands found in stream
[2026-06-12 14:59:36,603.603 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 14:59:36,607.607 INFO    ] Waiting 3.22 seconds before fallback handling...
[2026-06-12 14:59:40,230.230 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 14:59:40,231.231 INFO    ] Checking for system updates...
[2026-06-12 14:59:40,252.252 INFO    ] 200
[2026-06-12 14:59:40,254.254 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:59:40,286.286 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 14:59:40,288.288 INFO    ] No update needed
[2026-06-12 14:59:40,289.289 INFO    ] Checking for camera pi updates...
[2026-06-12 14:59:40,310.310 INFO    ] 200
[2026-06-12 14:59:40,312.312 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:59:40,337.337 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 14:59:40,397.397 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 14:59:40,398.398 INFO    ] No camera update needed
[2026-06-12 14:59:40,400.400 INFO    ] Script finished. Safe exiting...
[2026-06-12 14:59:40,401.401 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 14:59:40,404.404 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 14:59:40,407.407 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 14:59:42,447.447 INFO    ] ================================================
[2026-06-12 14:59:42,463.463 INFO    ] Launching Daemon at Fri Jun 12 14:59:42 IST 2026
[2026-06-12 14:59:42,473.473 INFO    ] ================================================
[2026-06-12 14:59:42,823.823 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 14:59:42
[2026-06-12 14:59:43,136.136 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 14:59:43,274.274 INFO    ] Initializing speech engine...
[2026-06-12 14:59:43,282.282 INFO    ] 2026-06-12 14:59:43
[2026-06-12 14:59:43,489.489 INFO    ] 2026-06-12 14:59:43
[2026-06-12 14:59:43,518.518 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 14:59:43,705.705 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 14:59:43,715.715 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 14:59:43,865.865 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 14:59:43,914.914 INFO    ] time= 12/06/2026 14:59:43
[2026-06-12 14:59:43,937.937 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 14:59:43,943.943 INFO    ] Checking for existing commands in stream...
[2026-06-12 14:59:44,010.010 INFO    ] No existing commands found in stream
[2026-06-12 14:59:49,019.019 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 14:59:49,022.022 INFO    ] Waiting 3.03 seconds before fallback handling...
[2026-06-12 14:59:52,407.407 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 14:59:52,408.408 INFO    ] Checking for system updates...
[2026-06-12 14:59:52,430.430 INFO    ] 200
[2026-06-12 14:59:52,432.432 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:59:52,465.465 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 14:59:52,466.466 INFO    ] No update needed
[2026-06-12 14:59:52,468.468 INFO    ] Checking for camera pi updates...
[2026-06-12 14:59:52,494.494 INFO    ] 200
[2026-06-12 14:59:52,495.495 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 14:59:52,518.518 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 14:59:52,562.562 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 14:59:52,564.564 INFO    ] No camera update needed
[2026-06-12 14:59:52,565.565 INFO    ] Script finished. Safe exiting...
[2026-06-12 14:59:52,566.566 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 14:59:52,569.569 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 14:59:52,572.572 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 14:59:54,609.609 INFO    ] ================================================
[2026-06-12 14:59:54,625.625 INFO    ] Launching Daemon at Fri Jun 12 14:59:54 IST 2026
[2026-06-12 14:59:54,635.635 INFO    ] ================================================
[2026-06-12 14:59:55,003.003 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 14:59:55
[2026-06-12 14:59:55,314.314 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 14:59:55,457.457 INFO    ] Initializing speech engine...
[2026-06-12 14:59:55,462.462 INFO    ] 2026-06-12 14:59:55
[2026-06-12 14:59:55,664.664 INFO    ] 2026-06-12 14:59:55
[2026-06-12 14:59:55,692.692 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 14:59:55,876.876 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 14:59:55,884.884 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 14:59:56,013.013 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 14:59:56,064.064 INFO    ] time= 12/06/2026 14:59:56
[2026-06-12 14:59:56,104.104 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 14:59:56,126.126 INFO    ] Checking for existing commands in stream...
[2026-06-12 14:59:56,203.203 INFO    ] No existing commands found in stream
[2026-06-12 15:00:01,217.217 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 15:00:01,220.220 INFO    ] Waiting 3.96 seconds before fallback handling...
[2026-06-12 15:00:10,297.297 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 15:00:10,300.300 INFO    ] Checking for system updates...
[2026-06-12 15:00:10,340.340 INFO    ] 200
[2026-06-12 15:00:10,342.342 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:00:10,395.395 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 15:00:10,398.398 INFO    ] No update needed
[2026-06-12 15:00:10,400.400 INFO    ] Checking for camera pi updates...
[2026-06-12 15:00:10,433.433 INFO    ] 200
[2026-06-12 15:00:10,436.436 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:00:10,479.479 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 15:00:10,538.538 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 15:00:10,540.540 INFO    ] No camera update needed
[2026-06-12 15:00:10,541.541 INFO    ] Script finished. Safe exiting...
[2026-06-12 15:00:10,543.543 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 15:00:10,546.546 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 15:00:10,548.548 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 15:00:12,587.587 INFO    ] ================================================
[2026-06-12 15:00:12,602.602 INFO    ] Launching Daemon at Fri Jun 12 15:00:12 IST 2026
[2026-06-12 15:00:12,613.613 INFO    ] ================================================
[2026-06-12 15:00:12,940.940 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 15:00:12
[2026-06-12 15:00:13,256.256 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 15:00:13,401.401 INFO    ] Initializing speech engine...
[2026-06-12 15:00:13,406.406 INFO    ] 2026-06-12 15:00:13
[2026-06-12 15:00:13,612.612 INFO    ] 2026-06-12 15:00:13
[2026-06-12 15:00:13,641.641 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 15:00:13,827.827 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 15:00:13,836.836 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 15:00:13,968.968 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 15:00:14,036.036 INFO    ] time= 12/06/2026 15:00:13
[2026-06-12 15:00:14,060.060 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 15:00:14,062.062 INFO    ] Checking for existing commands in stream...
[2026-06-12 15:00:14,135.135 INFO    ] No existing commands found in stream
[2026-06-12 15:00:19,149.149 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 15:00:19,152.152 INFO    ] Waiting 3.84 seconds before fallback handling...
[2026-06-12 15:00:23,466.466 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 15:00:23,469.469 INFO    ] Checking for system updates...
[2026-06-12 15:00:23,505.505 INFO    ] 200
[2026-06-12 15:00:23,507.507 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:00:23,564.564 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 15:00:23,566.566 INFO    ] No update needed
[2026-06-12 15:00:23,567.567 INFO    ] Checking for camera pi updates...
[2026-06-12 15:00:23,586.586 INFO    ] 200
[2026-06-12 15:00:23,587.587 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:00:23,612.612 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 15:00:23,660.660 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 15:00:23,661.661 INFO    ] No camera update needed
[2026-06-12 15:00:23,662.662 INFO    ] Script finished. Safe exiting...
[2026-06-12 15:00:23,664.664 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 15:00:23,667.667 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 15:00:23,669.669 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 15:00:25,707.707 INFO    ] ================================================
[2026-06-12 15:00:25,722.722 INFO    ] Launching Daemon at Fri Jun 12 15:00:25 IST 2026
[2026-06-12 15:00:25,733.733 INFO    ] ================================================
[2026-06-12 15:00:26,080.080 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 15:00:26
[2026-06-12 15:00:26,391.391 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 15:00:26,525.525 INFO    ] Initializing speech engine...
[2026-06-12 15:00:26,533.533 INFO    ] 2026-06-12 15:00:26
[2026-06-12 15:00:26,760.760 INFO    ] 2026-06-12 15:00:26
[2026-06-12 15:00:26,790.790 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 15:00:26,989.989 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 15:00:26,998.998 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 15:00:27,150.150 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 15:00:27,203.203 INFO    ] time= 12/06/2026 15:00:27
[2026-06-12 15:00:27,237.237 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 15:00:27,239.239 INFO    ] Checking for existing commands in stream...
[2026-06-12 15:00:27,315.315 INFO    ] No existing commands found in stream
[2026-06-12 15:00:32,323.323 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 15:00:32,326.326 INFO    ] Waiting 1.84 seconds before fallback handling...
[2026-06-12 15:00:34,572.572 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 15:00:34,573.573 INFO    ] Checking for system updates...
[2026-06-12 15:00:34,594.594 INFO    ] 200
[2026-06-12 15:00:34,595.595 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:00:34,625.625 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 15:00:34,627.627 INFO    ] No update needed
[2026-06-12 15:00:34,628.628 INFO    ] Checking for camera pi updates...
[2026-06-12 15:00:34,651.651 INFO    ] 200
[2026-06-12 15:00:34,652.652 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:00:34,675.675 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 15:00:34,737.737 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 15:00:34,738.738 INFO    ] No camera update needed
[2026-06-12 15:00:34,740.740 INFO    ] Script finished. Safe exiting...
[2026-06-12 15:00:34,741.741 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 15:00:34,744.744 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 15:00:34,747.747 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 15:00:36,788.788 INFO    ] ================================================
[2026-06-12 15:00:36,804.804 INFO    ] Launching Daemon at Fri Jun 12 15:00:36 IST 2026
[2026-06-12 15:00:36,814.814 INFO    ] ================================================
[2026-06-12 15:00:37,141.141 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 15:00:37
[2026-06-12 15:00:37,459.459 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 15:00:37,602.602 INFO    ] Initializing speech engine...
[2026-06-12 15:00:37,608.608 INFO    ] 2026-06-12 15:00:37
[2026-06-12 15:00:37,813.813 INFO    ] 2026-06-12 15:00:37
[2026-06-12 15:00:37,841.841 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 15:00:38,025.025 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 15:00:38,034.034 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 15:00:38,174.174 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 15:00:38,231.231 INFO    ] time= 12/06/2026 15:00:38
[2026-06-12 15:00:38,255.255 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 15:00:38,261.261 INFO    ] Checking for existing commands in stream...
[2026-06-12 15:00:38,328.328 INFO    ] No existing commands found in stream
[2026-06-12 15:00:43,337.337 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 15:00:43,340.340 INFO    ] Waiting 0.92 seconds before fallback handling...
[2026-06-12 15:00:44,660.660 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 15:00:44,662.662 INFO    ] Checking for system updates...
[2026-06-12 15:00:44,683.683 INFO    ] 200
[2026-06-12 15:00:44,684.684 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:00:44,717.717 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 15:00:44,719.719 INFO    ] No update needed
[2026-06-12 15:00:44,720.720 INFO    ] Checking for camera pi updates...
[2026-06-12 15:00:44,742.742 INFO    ] 200
[2026-06-12 15:00:44,744.744 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:00:44,767.767 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 15:00:44,810.810 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 15:00:44,811.811 INFO    ] No camera update needed
[2026-06-12 15:00:44,813.813 INFO    ] Script finished. Safe exiting...
[2026-06-12 15:00:44,814.814 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 15:00:44,817.817 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 15:00:44,821.821 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 15:00:46,863.863 INFO    ] ================================================
[2026-06-12 15:00:46,878.878 INFO    ] Launching Daemon at Fri Jun 12 15:00:46 IST 2026
[2026-06-12 15:00:46,889.889 INFO    ] ================================================
[2026-06-12 15:00:47,234.234 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 15:00:47
[2026-06-12 15:00:47,547.547 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 15:00:47,691.691 INFO    ] Initializing speech engine...
[2026-06-12 15:00:47,697.697 INFO    ] 2026-06-12 15:00:47
[2026-06-12 15:00:47,905.905 INFO    ] 2026-06-12 15:00:47
[2026-06-12 15:00:47,935.935 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 15:00:48,122.122 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 15:00:48,132.132 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 15:00:48,265.265 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 15:00:48,333.333 INFO    ] time= 12/06/2026 15:00:48
[2026-06-12 15:00:48,358.358 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 15:00:48,364.364 INFO    ] Checking for existing commands in stream...
[2026-06-12 15:00:48,431.431 INFO    ] No existing commands found in stream
[2026-06-12 15:00:53,442.442 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 15:00:53,445.445 INFO    ] Waiting 2.82 seconds before fallback handling...
[2026-06-12 15:00:56,601.601 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 15:00:56,603.603 INFO    ] Checking for system updates...
[2026-06-12 15:00:56,628.628 INFO    ] 200
[2026-06-12 15:00:56,629.629 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:00:56,659.659 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 15:00:56,661.661 INFO    ] No update needed
[2026-06-12 15:00:56,662.662 INFO    ] Checking for camera pi updates...
[2026-06-12 15:00:56,682.682 INFO    ] 200
[2026-06-12 15:00:56,684.684 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:00:56,706.706 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 15:00:56,752.752 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 15:00:56,754.754 INFO    ] No camera update needed
[2026-06-12 15:00:56,755.755 INFO    ] Script finished. Safe exiting...
[2026-06-12 15:00:56,756.756 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 15:00:56,759.759 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 15:00:56,762.762 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 15:00:58,800.800 INFO    ] ================================================
[2026-06-12 15:00:58,815.815 INFO    ] Launching Daemon at Fri Jun 12 15:00:58 IST 2026
[2026-06-12 15:00:58,826.826 INFO    ] ================================================
[2026-06-12 15:00:59,156.156 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 15:00:59
[2026-06-12 15:00:59,466.466 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 15:00:59,602.602 INFO    ] Initializing speech engine...
[2026-06-12 15:00:59,612.612 INFO    ] 2026-06-12 15:00:59
[2026-06-12 15:00:59,816.816 INFO    ] 2026-06-12 15:00:59
[2026-06-12 15:00:59,843.843 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 15:01:00,026.026 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 15:01:00,029.029 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 15:01:00,165.165 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 15:01:00,232.232 INFO    ] time= 12/06/2026 15:01:00
[2026-06-12 15:01:00,255.255 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 15:01:00,261.261 INFO    ] Checking for existing commands in stream...
[2026-06-12 15:01:00,327.327 INFO    ] No existing commands found in stream
[2026-06-12 15:01:05,332.332 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 15:01:05,335.335 INFO    ] Waiting 1.38 seconds before fallback handling...
[2026-06-12 15:01:07,085.085 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 15:01:07,087.087 INFO    ] Checking for system updates...
[2026-06-12 15:01:07,107.107 INFO    ] 200
[2026-06-12 15:01:07,108.108 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:01:07,141.141 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 15:01:07,142.142 INFO    ] No update needed
[2026-06-12 15:01:07,144.144 INFO    ] Checking for camera pi updates...
[2026-06-12 15:01:07,163.163 INFO    ] 200
[2026-06-12 15:01:07,164.164 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:01:07,189.189 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 15:01:07,232.232 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 15:01:07,234.234 INFO    ] No camera update needed
[2026-06-12 15:01:07,235.235 INFO    ] Script finished. Safe exiting...
[2026-06-12 15:01:07,236.236 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 15:01:07,239.239 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 15:01:07,242.242 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 15:01:09,282.282 INFO    ] ================================================
[2026-06-12 15:01:09,297.297 INFO    ] Launching Daemon at Fri Jun 12 15:01:09 IST 2026
[2026-06-12 15:01:09,308.308 INFO    ] ================================================
[2026-06-12 15:01:09,648.648 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 15:01:09
[2026-06-12 15:01:09,961.961 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 15:01:10,098.098 INFO    ] Initializing speech engine...
[2026-06-12 15:01:10,107.107 INFO    ] 2026-06-12 15:01:10
[2026-06-12 15:01:10,311.311 INFO    ] 2026-06-12 15:01:10
[2026-06-12 15:01:10,339.339 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 15:01:10,521.521 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 15:01:10,525.525 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 15:01:10,686.686 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 15:01:10,729.729 INFO    ] time= 12/06/2026 15:01:10
[2026-06-12 15:01:10,750.750 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 15:01:10,756.756 INFO    ] Checking for existing commands in stream...
[2026-06-12 15:01:10,823.823 INFO    ] No existing commands found in stream
[2026-06-12 15:01:15,832.832 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 15:01:15,835.835 INFO    ] Waiting 2.36 seconds before fallback handling...
[2026-06-12 15:01:18,575.575 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 15:01:18,577.577 INFO    ] Checking for system updates...
[2026-06-12 15:01:18,597.597 INFO    ] 200
[2026-06-12 15:01:18,598.598 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:01:18,632.632 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 15:01:18,633.633 INFO    ] No update needed
[2026-06-12 15:01:18,634.634 INFO    ] Checking for camera pi updates...
[2026-06-12 15:01:18,655.655 INFO    ] 200
[2026-06-12 15:01:18,656.656 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:01:18,679.679 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 15:01:18,732.732 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 15:01:18,734.734 INFO    ] No camera update needed
[2026-06-12 15:01:18,735.735 INFO    ] Script finished. Safe exiting...
[2026-06-12 15:01:18,736.736 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 15:01:18,739.739 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 15:01:18,742.742 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 15:01:20,780.780 INFO    ] ================================================
[2026-06-12 15:01:20,795.795 INFO    ] Launching Daemon at Fri Jun 12 15:01:20 IST 2026
[2026-06-12 15:01:20,806.806 INFO    ] ================================================
[2026-06-12 15:01:21,165.165 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 15:01:21
[2026-06-12 15:01:21,477.477 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 15:01:21,621.621 INFO    ] Initializing speech engine...
[2026-06-12 15:01:21,626.626 INFO    ] 2026-06-12 15:01:21
[2026-06-12 15:01:21,832.832 INFO    ] 2026-06-12 15:01:21
[2026-06-12 15:01:21,862.862 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 15:01:21,984.984 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 15:01:22,028.028 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 15:01:22,183.183 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 15:01:22,245.245 INFO    ] time= 12/06/2026 15:01:22
[2026-06-12 15:01:22,284.284 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 15:01:22,290.290 INFO    ] Checking for existing commands in stream...
[2026-06-12 15:01:22,358.358 INFO    ] No existing commands found in stream
[2026-06-12 15:01:27,367.367 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 15:01:27,369.369 INFO    ] Waiting 1.07 seconds before fallback handling...
[2026-06-12 15:01:28,840.840 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 15:01:28,842.842 INFO    ] Checking for system updates...
[2026-06-12 15:01:28,863.863 INFO    ] 200
[2026-06-12 15:01:28,864.864 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:01:28,897.897 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 15:01:28,899.899 INFO    ] No update needed
[2026-06-12 15:01:28,900.900 INFO    ] Checking for camera pi updates...
[2026-06-12 15:01:28,922.922 INFO    ] 200
[2026-06-12 15:01:28,924.924 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:01:28,947.947 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 15:01:28,997.997 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 15:01:28,999.999 INFO    ] No camera update needed
[2026-06-12 15:01:29,000.000 INFO    ] Script finished. Safe exiting...
[2026-06-12 15:01:29,002.002 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 15:01:29,005.005 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 15:01:29,008.008 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 15:01:31,048.048 INFO    ] ================================================
[2026-06-12 15:01:31,064.064 INFO    ] Launching Daemon at Fri Jun 12 15:01:31 IST 2026
[2026-06-12 15:01:31,075.075 INFO    ] ================================================
[2026-06-12 15:01:31,434.434 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 15:01:31
[2026-06-12 15:01:31,777.777 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 15:01:31,922.922 INFO    ] Initializing speech engine...
[2026-06-12 15:01:31,936.936 INFO    ] 2026-06-12 15:01:31
[2026-06-12 15:01:32,158.158 INFO    ] 2026-06-12 15:01:32
[2026-06-12 15:01:32,189.189 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 15:01:32,377.377 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 15:01:32,381.381 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 15:01:32,537.537 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 15:01:32,586.586 INFO    ] time= 12/06/2026 15:01:32
[2026-06-12 15:01:32,608.608 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 15:01:32,614.614 INFO    ] Checking for existing commands in stream...
[2026-06-12 15:01:32,704.704 INFO    ] No existing commands found in stream
[2026-06-12 15:01:37,713.713 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 15:01:37,716.716 INFO    ] Waiting 0.40 seconds before fallback handling...
[2026-06-12 15:01:38,536.536 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 15:01:38,537.537 INFO    ] Checking for system updates...
[2026-06-12 15:01:38,559.559 INFO    ] 200
[2026-06-12 15:01:38,561.561 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:01:38,590.590 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 15:01:38,592.592 INFO    ] No update needed
[2026-06-12 15:01:38,593.593 INFO    ] Checking for camera pi updates...
[2026-06-12 15:01:38,616.616 INFO    ] 200
[2026-06-12 15:01:38,617.617 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:01:38,641.641 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 15:01:38,684.684 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 15:01:38,685.685 INFO    ] No camera update needed
[2026-06-12 15:01:38,686.686 INFO    ] Script finished. Safe exiting...
[2026-06-12 15:01:38,687.687 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 15:01:38,691.691 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 15:01:38,693.693 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 15:01:40,731.731 INFO    ] ================================================
[2026-06-12 15:01:40,746.746 INFO    ] Launching Daemon at Fri Jun 12 15:01:40 IST 2026
[2026-06-12 15:01:40,757.757 INFO    ] ================================================
[2026-06-12 15:01:41,120.120 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 15:01:41
[2026-06-12 15:01:41,433.433 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 15:01:41,563.563 INFO    ] Initializing speech engine...
[2026-06-12 15:01:41,566.566 INFO    ] 2026-06-12 15:01:41
[2026-06-12 15:01:41,787.787 INFO    ] 2026-06-12 15:01:41
[2026-06-12 15:01:41,815.815 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 15:01:42,003.003 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 15:01:42,013.013 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 15:01:42,209.209 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 15:01:42,235.235 INFO    ] time= 12/06/2026 15:01:42
[2026-06-12 15:01:42,240.240 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 15:01:42,242.242 INFO    ] Checking for existing commands in stream...
[2026-06-12 15:01:42,311.311 INFO    ] No existing commands found in stream
[2026-06-12 15:01:47,320.320 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 15:01:47,323.323 INFO    ] Waiting 2.45 seconds before fallback handling...
[2026-06-12 15:01:50,189.189 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 15:01:50,191.191 INFO    ] Checking for system updates...
[2026-06-12 15:01:50,213.213 INFO    ] 200
[2026-06-12 15:01:50,215.215 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:01:50,247.247 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 15:01:50,248.248 INFO    ] No update needed
[2026-06-12 15:01:50,249.249 INFO    ] Checking for camera pi updates...
[2026-06-12 15:01:50,270.270 INFO    ] 200
[2026-06-12 15:01:50,271.271 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:01:50,296.296 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 15:01:50,342.342 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 15:01:50,344.344 INFO    ] No camera update needed
[2026-06-12 15:01:50,345.345 INFO    ] Script finished. Safe exiting...
[2026-06-12 15:01:50,346.346 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 15:01:50,349.349 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 15:01:50,352.352 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 15:01:52,390.390 INFO    ] ================================================
[2026-06-12 15:01:52,406.406 INFO    ] Launching Daemon at Fri Jun 12 15:01:52 IST 2026
[2026-06-12 15:01:52,416.416 INFO    ] ================================================
[2026-06-12 15:01:52,752.752 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 15:01:52
[2026-06-12 15:01:53,065.065 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 15:01:53,210.210 INFO    ] Initializing speech engine...
[2026-06-12 15:01:53,215.215 INFO    ] 2026-06-12 15:01:53
[2026-06-12 15:01:53,419.419 INFO    ] 2026-06-12 15:01:53
[2026-06-12 15:01:53,449.449 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 15:01:53,634.634 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 15:01:53,644.644 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 15:01:53,785.785 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 15:01:53,843.843 INFO    ] time= 12/06/2026 15:01:53
[2026-06-12 15:01:53,867.867 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 15:01:53,873.873 INFO    ] Checking for existing commands in stream...
[2026-06-12 15:01:53,965.965 INFO    ] No existing commands found in stream
[2026-06-12 15:01:58,974.974 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 15:01:58,977.977 INFO    ] Waiting 0.16 seconds before fallback handling...
[2026-06-12 15:01:59,538.538 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 15:01:59,540.540 INFO    ] Checking for system updates...
[2026-06-12 15:01:59,560.560 INFO    ] 200
[2026-06-12 15:01:59,562.562 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:01:59,592.592 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 15:01:59,593.593 INFO    ] No update needed
[2026-06-12 15:01:59,595.595 INFO    ] Checking for camera pi updates...
[2026-06-12 15:01:59,616.616 INFO    ] 200
[2026-06-12 15:01:59,617.617 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:01:59,643.643 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 15:01:59,767.767 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 15:01:59,768.768 INFO    ] No camera update needed
[2026-06-12 15:01:59,770.770 INFO    ] Script finished. Safe exiting...
[2026-06-12 15:01:59,771.771 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 15:01:59,774.774 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 15:01:59,777.777 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 15:02:01,813.813 INFO    ] ================================================
[2026-06-12 15:02:01,827.827 INFO    ] Launching Daemon at Fri Jun 12 15:02:01 IST 2026
[2026-06-12 15:02:01,838.838 INFO    ] ================================================
[2026-06-12 15:02:02,204.204 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 15:02:02
[2026-06-12 15:02:02,587.587 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 15:02:02,740.740 INFO    ] Initializing speech engine...
[2026-06-12 15:02:02,745.745 INFO    ] 2026-06-12 15:02:02
[2026-06-12 15:02:02,956.956 INFO    ] 2026-06-12 15:02:02
[2026-06-12 15:02:02,984.984 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 15:02:03,170.170 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 15:02:03,182.182 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 15:02:03,373.373 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 15:02:03,398.398 INFO    ] time= 12/06/2026 15:02:03
[2026-06-12 15:02:03,404.404 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 15:02:03,405.405 INFO    ] Checking for existing commands in stream...
[2026-06-12 15:02:03,496.496 INFO    ] No existing commands found in stream
[2026-06-12 15:02:08,506.506 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 15:02:08,515.515 INFO    ] Waiting 2.94 seconds before fallback handling...
[2026-06-12 15:02:11,929.929 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 15:02:11,931.931 INFO    ] Checking for system updates...
[2026-06-12 15:02:11,951.951 INFO    ] 200
[2026-06-12 15:02:11,953.953 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:02:11,985.985 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 15:02:11,986.986 INFO    ] No update needed
[2026-06-12 15:02:11,987.987 INFO    ] Checking for camera pi updates...
[2026-06-12 15:02:12,007.007 INFO    ] 200
[2026-06-12 15:02:12,009.009 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:02:12,034.034 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 15:02:12,171.171 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 15:02:12,173.173 INFO    ] No camera update needed
[2026-06-12 15:02:12,174.174 INFO    ] Script finished. Safe exiting...
[2026-06-12 15:02:12,175.175 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 15:02:12,178.178 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 15:02:12,181.181 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 15:02:14,220.220 INFO    ] ================================================
[2026-06-12 15:02:14,237.237 INFO    ] Launching Daemon at Fri Jun 12 15:02:14 IST 2026
[2026-06-12 15:02:14,248.248 INFO    ] ================================================
[2026-06-12 15:02:14,608.608 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 15:02:14
[2026-06-12 15:02:14,926.926 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 15:02:15,071.071 INFO    ] Initializing speech engine...
[2026-06-12 15:02:15,076.076 INFO    ] 2026-06-12 15:02:15
[2026-06-12 15:02:15,282.282 INFO    ] 2026-06-12 15:02:15
[2026-06-12 15:02:15,310.310 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 15:02:15,496.496 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 15:02:15,507.507 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 15:02:15,701.701 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 15:02:15,725.725 INFO    ] time= 12/06/2026 15:02:15
[2026-06-12 15:02:15,731.731 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 15:02:15,732.732 INFO    ] Checking for existing commands in stream...
[2026-06-12 15:02:15,800.800 INFO    ] No existing commands found in stream
[2026-06-12 15:02:20,809.809 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 15:02:20,812.812 INFO    ] Waiting 1.76 seconds before fallback handling...
[2026-06-12 15:02:22,988.988 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 15:02:22,989.989 INFO    ] Checking for system updates...
[2026-06-12 15:02:23,010.010 INFO    ] 200
[2026-06-12 15:02:23,012.012 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:02:23,045.045 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 15:02:23,046.046 INFO    ] No update needed
[2026-06-12 15:02:23,048.048 INFO    ] Checking for camera pi updates...
[2026-06-12 15:02:23,071.071 INFO    ] 200
[2026-06-12 15:02:23,072.072 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:02:23,099.099 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 15:02:23,141.141 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 15:02:23,142.142 INFO    ] No camera update needed
[2026-06-12 15:02:23,144.144 INFO    ] Script finished. Safe exiting...
[2026-06-12 15:02:23,145.145 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 15:02:23,148.148 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 15:02:23,151.151 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 15:02:25,191.191 INFO    ] ================================================
[2026-06-12 15:02:25,206.206 INFO    ] Launching Daemon at Fri Jun 12 15:02:25 IST 2026
[2026-06-12 15:02:25,218.218 INFO    ] ================================================
[2026-06-12 15:02:25,572.572 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 15:02:25
[2026-06-12 15:02:25,883.883 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 15:02:26,025.025 INFO    ] Initializing speech engine...
[2026-06-12 15:02:26,030.030 INFO    ] 2026-06-12 15:02:26
[2026-06-12 15:02:26,233.233 INFO    ] 2026-06-12 15:02:26
[2026-06-12 15:02:26,261.261 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 15:02:26,444.444 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 15:02:26,453.453 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 15:02:26,632.632 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 15:02:26,670.670 INFO    ] time= 12/06/2026 15:02:26
[2026-06-12 15:02:26,672.672 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 15:02:26,677.677 INFO    ] Checking for existing commands in stream...
[2026-06-12 15:02:26,767.767 INFO    ] No existing commands found in stream
[2026-06-12 15:02:31,771.771 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 15:02:31,773.773 INFO    ] Waiting 2.46 seconds before fallback handling...
[2026-06-12 15:02:34,628.628 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 15:02:34,630.630 INFO    ] Checking for system updates...
[2026-06-12 15:02:34,650.650 INFO    ] 200
[2026-06-12 15:02:34,651.651 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:02:34,684.684 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 15:02:34,685.685 INFO    ] No update needed
[2026-06-12 15:02:34,686.686 INFO    ] Checking for camera pi updates...
[2026-06-12 15:02:34,705.705 INFO    ] 200
[2026-06-12 15:02:34,707.707 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:02:34,730.730 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 15:02:34,792.792 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 15:02:34,793.793 INFO    ] No camera update needed
[2026-06-12 15:02:34,794.794 INFO    ] Script finished. Safe exiting...
[2026-06-12 15:02:34,795.795 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 15:02:34,798.798 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 15:02:34,801.801 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 15:02:36,833.833 INFO    ] ================================================
[2026-06-12 15:02:36,843.843 INFO    ] Launching Daemon at Fri Jun 12 15:02:36 IST 2026
[2026-06-12 15:02:36,849.849 INFO    ] ================================================
[2026-06-12 15:02:37,161.161 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 15:02:37
[2026-06-12 15:02:37,474.474 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 15:02:37,605.605 INFO    ] Initializing speech engine...
[2026-06-12 15:02:37,610.610 INFO    ] 2026-06-12 15:02:37
[2026-06-12 15:02:37,832.832 INFO    ] 2026-06-12 15:02:37
[2026-06-12 15:02:37,860.860 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 15:02:38,043.043 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 15:02:38,046.046 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 15:02:38,208.208 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 15:02:38,252.252 INFO    ] time= 12/06/2026 15:02:38
[2026-06-12 15:02:38,274.274 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 15:02:38,280.280 INFO    ] Checking for existing commands in stream...
[2026-06-12 15:02:38,347.347 INFO    ] No existing commands found in stream
[2026-06-12 15:02:43,361.361 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 15:02:43,363.363 INFO    ] Waiting 1.90 seconds before fallback handling...
[2026-06-12 15:02:45,688.688 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 15:02:45,689.689 INFO    ] Checking for system updates...
[2026-06-12 15:02:45,711.711 INFO    ] 200
[2026-06-12 15:02:45,713.713 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:02:45,746.746 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 15:02:45,748.748 INFO    ] No update needed
[2026-06-12 15:02:45,749.749 INFO    ] Checking for camera pi updates...
[2026-06-12 15:02:45,771.771 INFO    ] 200
[2026-06-12 15:02:45,772.772 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:02:45,798.798 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 15:02:45,857.857 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 15:02:45,858.858 INFO    ] No camera update needed
[2026-06-12 15:02:45,859.859 INFO    ] Script finished. Safe exiting...
[2026-06-12 15:02:45,861.861 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 15:02:45,864.864 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 15:02:45,867.867 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 15:02:47,908.908 INFO    ] ================================================
[2026-06-12 15:02:47,923.923 INFO    ] Launching Daemon at Fri Jun 12 15:02:47 IST 2026
[2026-06-12 15:02:47,934.934 INFO    ] ================================================
[2026-06-12 15:02:48,259.259 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 15:02:48
[2026-06-12 15:02:48,573.573 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 15:02:48,703.703 INFO    ] Initializing speech engine...
[2026-06-12 15:02:48,706.706 INFO    ] 2026-06-12 15:02:48
[2026-06-12 15:02:48,921.921 INFO    ] 2026-06-12 15:02:48
[2026-06-12 15:02:48,949.949 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 15:02:49,133.133 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 15:02:49,142.142 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 15:02:49,321.321 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 15:02:49,359.359 INFO    ] time= 12/06/2026 15:02:49
[2026-06-12 15:02:49,361.361 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 15:02:49,367.367 INFO    ] Checking for existing commands in stream...
[2026-06-12 15:02:49,457.457 INFO    ] No existing commands found in stream
[2026-06-12 15:02:54,466.466 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 15:02:54,469.469 INFO    ] Waiting 3.20 seconds before fallback handling...
[2026-06-12 15:02:58,082.082 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 15:02:58,083.083 INFO    ] Checking for system updates...
[2026-06-12 15:02:58,104.104 INFO    ] 200
[2026-06-12 15:02:58,106.106 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:02:58,138.138 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 15:02:58,139.139 INFO    ] No update needed
[2026-06-12 15:02:58,141.141 INFO    ] Checking for camera pi updates...
[2026-06-12 15:02:58,160.160 INFO    ] 200
[2026-06-12 15:02:58,162.162 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:02:58,185.185 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 15:02:58,230.230 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 15:02:58,231.231 INFO    ] No camera update needed
[2026-06-12 15:02:58,233.233 INFO    ] Script finished. Safe exiting...
[2026-06-12 15:02:58,234.234 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 15:02:58,237.237 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 15:02:58,239.239 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 15:03:00,278.278 INFO    ] ================================================
[2026-06-12 15:03:00,293.293 INFO    ] Launching Daemon at Fri Jun 12 15:03:00 IST 2026
[2026-06-12 15:03:00,304.304 INFO    ] ================================================
[2026-06-12 15:03:00,634.634 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 15:03:00
[2026-06-12 15:03:00,948.948 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 15:03:01,080.080 INFO    ] Initializing speech engine...
[2026-06-12 15:03:01,085.085 INFO    ] 2026-06-12 15:03:01
[2026-06-12 15:03:01,290.290 INFO    ] 2026-06-12 15:03:01
[2026-06-12 15:03:01,323.323 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 15:03:01,551.551 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 15:03:01,561.561 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 15:03:01,729.729 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 15:03:01,733.733 INFO    ] time= 12/06/2026 15:03:01
[2026-06-12 15:03:01,754.754 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 15:03:01,756.756 INFO    ] Checking for existing commands in stream...
[2026-06-12 15:03:01,916.916 INFO    ] No existing commands found in stream
[2026-06-12 15:03:06,955.955 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 15:03:06,958.958 INFO    ] Waiting 1.46 seconds before fallback handling...
[2026-06-12 15:03:08,872.872 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 15:03:08,875.875 INFO    ] Checking for system updates...
[2026-06-12 15:03:08,914.914 INFO    ] 200
[2026-06-12 15:03:08,917.917 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:03:08,970.970 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 15:03:08,972.972 INFO    ] No update needed
[2026-06-12 15:03:08,975.975 INFO    ] Checking for camera pi updates...
[2026-06-12 15:03:09,009.009 INFO    ] 200
[2026-06-12 15:03:09,012.012 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:03:09,056.056 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 15:03:09,100.100 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 15:03:09,101.101 INFO    ] No camera update needed
[2026-06-12 15:03:09,103.103 INFO    ] Script finished. Safe exiting...
[2026-06-12 15:03:09,104.104 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 15:03:09,107.107 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 15:03:09,109.109 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 15:03:11,147.147 INFO    ] ================================================
[2026-06-12 15:03:11,163.163 INFO    ] Launching Daemon at Fri Jun 12 15:03:11 IST 2026
[2026-06-12 15:03:11,175.175 INFO    ] ================================================
[2026-06-12 15:03:11,541.541 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 15:03:11
[2026-06-12 15:03:11,854.854 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 15:03:11,991.991 INFO    ] Initializing speech engine...
[2026-06-12 15:03:11,998.998 INFO    ] 2026-06-12 15:03:11
[2026-06-12 15:03:12,223.223 INFO    ] 2026-06-12 15:03:12
[2026-06-12 15:03:12,254.254 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 15:03:12,452.452 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 15:03:12,461.461 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 15:03:12,599.599 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 15:03:12,662.662 INFO    ] time= 12/06/2026 15:03:12
[2026-06-12 15:03:12,700.700 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 15:03:12,702.702 INFO    ] Checking for existing commands in stream...
[2026-06-12 15:03:12,804.804 INFO    ] No existing commands found in stream
[2026-06-12 15:03:17,818.818 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 15:03:17,821.821 INFO    ] Waiting 0.04 seconds before fallback handling...
[2026-06-12 15:03:18,264.264 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 15:03:18,265.265 INFO    ] Checking for system updates...
[2026-06-12 15:03:18,285.285 INFO    ] 200
[2026-06-12 15:03:18,287.287 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:03:18,317.317 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 15:03:18,318.318 INFO    ] No update needed
[2026-06-12 15:03:18,320.320 INFO    ] Checking for camera pi updates...
[2026-06-12 15:03:18,342.342 INFO    ] 200
[2026-06-12 15:03:18,343.343 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:03:18,375.375 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 15:03:18,419.419 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 15:03:18,421.421 INFO    ] No camera update needed
[2026-06-12 15:03:18,422.422 INFO    ] Script finished. Safe exiting...
[2026-06-12 15:03:18,424.424 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 15:03:18,427.427 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 15:03:18,429.429 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 15:03:20,468.468 INFO    ] ================================================
[2026-06-12 15:03:20,483.483 INFO    ] Launching Daemon at Fri Jun 12 15:03:20 IST 2026
[2026-06-12 15:03:20,495.495 INFO    ] ================================================
[2026-06-12 15:03:20,868.868 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 15:03:20
[2026-06-12 15:03:21,184.184 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 15:03:21,327.327 INFO    ] Initializing speech engine...
[2026-06-12 15:03:21,332.332 INFO    ] 2026-06-12 15:03:21
[2026-06-12 15:03:21,534.534 INFO    ] 2026-06-12 15:03:21
[2026-06-12 15:03:21,564.564 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 15:03:21,746.746 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 15:03:21,756.756 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 15:03:21,895.895 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 15:03:21,952.952 INFO    ] time= 12/06/2026 15:03:21
[2026-06-12 15:03:21,975.975 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 15:03:21,981.981 INFO    ] Checking for existing commands in stream...
[2026-06-12 15:03:22,048.048 INFO    ] No existing commands found in stream
[2026-06-12 15:03:27,080.080 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 15:03:27,083.083 INFO    ] Waiting 3.58 seconds before fallback handling...
[2026-06-12 15:03:31,127.127 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 15:03:31,129.129 INFO    ] Checking for system updates...
[2026-06-12 15:03:31,149.149 INFO    ] 200
[2026-06-12 15:03:31,151.151 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:03:31,181.181 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 15:03:31,182.182 INFO    ] No update needed
[2026-06-12 15:03:31,183.183 INFO    ] Checking for camera pi updates...
[2026-06-12 15:03:31,203.203 INFO    ] 200
[2026-06-12 15:03:31,205.205 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:03:31,228.228 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 15:03:31,371.371 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 15:03:31,372.372 INFO    ] No camera update needed
[2026-06-12 15:03:31,373.373 INFO    ] Script finished. Safe exiting...
[2026-06-12 15:03:31,375.375 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 15:03:31,378.378 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 15:03:31,381.381 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 15:03:33,415.415 INFO    ] ================================================
[2026-06-12 15:03:33,434.434 INFO    ] Launching Daemon at Fri Jun 12 15:03:33 IST 2026
[2026-06-12 15:03:33,446.446 INFO    ] ================================================
[2026-06-12 15:03:33,783.783 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 15:03:33
[2026-06-12 15:03:34,097.097 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 15:03:34,235.235 INFO    ] Initializing speech engine...
[2026-06-12 15:03:34,246.246 INFO    ] 2026-06-12 15:03:34
[2026-06-12 15:03:34,452.452 INFO    ] 2026-06-12 15:03:34
[2026-06-12 15:03:34,481.481 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 15:03:34,667.667 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 15:03:34,676.676 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 15:03:34,831.831 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 15:03:34,876.876 INFO    ] time= 12/06/2026 15:03:34
[2026-06-12 15:03:34,897.897 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 15:03:34,904.904 INFO    ] Checking for existing commands in stream...
[2026-06-12 15:03:34,995.995 INFO    ] No existing commands found in stream
[2026-06-12 15:03:40,004.004 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 15:03:40,007.007 INFO    ] Waiting 3.51 seconds before fallback handling...
[2026-06-12 15:03:43,959.959 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 15:03:43,961.961 INFO    ] Checking for system updates...
[2026-06-12 15:03:43,981.981 INFO    ] 200
[2026-06-12 15:03:43,983.983 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:03:44,015.015 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 15:03:44,017.017 INFO    ] No update needed
[2026-06-12 15:03:44,018.018 INFO    ] Checking for camera pi updates...
[2026-06-12 15:03:44,037.037 INFO    ] 200
[2026-06-12 15:03:44,039.039 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:03:44,062.062 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 15:03:44,092.092 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 15:03:44,093.093 INFO    ] No camera update needed
[2026-06-12 15:03:44,094.094 INFO    ] Script finished. Safe exiting...
[2026-06-12 15:03:44,096.096 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 15:03:44,099.099 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 15:03:44,101.101 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 15:03:46,139.139 INFO    ] ================================================
[2026-06-12 15:03:46,155.155 INFO    ] Launching Daemon at Fri Jun 12 15:03:46 IST 2026
[2026-06-12 15:03:46,166.166 INFO    ] ================================================
[2026-06-12 15:03:46,499.499 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 15:03:46
[2026-06-12 15:03:46,811.811 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 15:03:46,942.942 INFO    ] Initializing speech engine...
[2026-06-12 15:03:46,946.946 INFO    ] 2026-06-12 15:03:46
[2026-06-12 15:03:47,164.164 INFO    ] 2026-06-12 15:03:47
[2026-06-12 15:03:47,193.193 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 15:03:47,380.380 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 15:03:47,390.390 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 15:03:47,540.540 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 15:03:47,589.589 INFO    ] time= 12/06/2026 15:03:47
[2026-06-12 15:03:47,612.612 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 15:03:47,617.617 INFO    ] Checking for existing commands in stream...
[2026-06-12 15:03:47,709.709 INFO    ] No existing commands found in stream
[2026-06-12 15:03:52,718.718 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 15:03:52,721.721 INFO    ] Waiting 3.30 seconds before fallback handling...
[2026-06-12 15:03:56,469.469 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 15:03:56,471.471 INFO    ] Checking for system updates...
[2026-06-12 15:03:56,492.492 INFO    ] 200
[2026-06-12 15:03:56,494.494 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:03:56,524.524 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 15:03:56,525.525 INFO    ] No update needed
[2026-06-12 15:03:56,526.526 INFO    ] Checking for camera pi updates...
[2026-06-12 15:03:56,545.545 INFO    ] 200
[2026-06-12 15:03:56,547.547 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:03:56,570.570 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 15:03:56,618.618 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 15:03:56,620.620 INFO    ] No camera update needed
[2026-06-12 15:03:56,621.621 INFO    ] Script finished. Safe exiting...
[2026-06-12 15:03:56,622.622 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 15:03:56,625.625 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 15:03:56,628.628 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 15:03:58,666.666 INFO    ] ================================================
[2026-06-12 15:03:58,682.682 INFO    ] Launching Daemon at Fri Jun 12 15:03:58 IST 2026
[2026-06-12 15:03:58,693.693 INFO    ] ================================================
[2026-06-12 15:03:59,068.068 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 15:03:59
[2026-06-12 15:03:59,410.410 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 15:03:59,552.552 INFO    ] Initializing speech engine...
[2026-06-12 15:03:59,565.565 INFO    ] 2026-06-12 15:03:59
[2026-06-12 15:03:59,769.769 INFO    ] 2026-06-12 15:03:59
[2026-06-12 15:03:59,797.797 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 15:03:59,979.979 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 15:03:59,988.988 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 15:04:00,180.180 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 15:04:00,205.205 INFO    ] time= 12/06/2026 15:04:00
[2026-06-12 15:04:00,210.210 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 15:04:00,212.212 INFO    ] Checking for existing commands in stream...
[2026-06-12 15:04:00,279.279 INFO    ] No existing commands found in stream
[2026-06-12 15:04:05,293.293 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 15:04:05,296.296 INFO    ] Waiting 1.04 seconds before fallback handling...
[2026-06-12 15:04:06,773.773 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 15:04:06,774.774 INFO    ] Checking for system updates...
[2026-06-12 15:04:06,794.794 INFO    ] 200
[2026-06-12 15:04:06,796.796 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:04:06,825.825 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 15:04:06,827.827 INFO    ] No update needed
[2026-06-12 15:04:06,828.828 INFO    ] Checking for camera pi updates...
[2026-06-12 15:04:06,849.849 INFO    ] 200
[2026-06-12 15:04:06,851.851 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:04:06,874.874 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 15:04:06,900.900 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 15:04:06,902.902 INFO    ] No camera update needed
[2026-06-12 15:04:06,903.903 INFO    ] Script finished. Safe exiting...
[2026-06-12 15:04:06,904.904 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 15:04:06,907.907 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 15:04:06,910.910 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 15:04:08,948.948 INFO    ] ================================================
[2026-06-12 15:04:08,963.963 INFO    ] Launching Daemon at Fri Jun 12 15:04:08 IST 2026
[2026-06-12 15:04:08,974.974 INFO    ] ================================================
[2026-06-12 15:04:09,313.313 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 15:04:09
[2026-06-12 15:04:09,628.628 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 15:04:09,771.771 INFO    ] Initializing speech engine...
[2026-06-12 15:04:09,777.777 INFO    ] 2026-06-12 15:04:09
[2026-06-12 15:04:09,979.979 INFO    ] 2026-06-12 15:04:09
[2026-06-12 15:04:10,009.009 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 15:04:10,192.192 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 15:04:10,202.202 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 15:04:10,393.393 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 15:04:10,417.417 INFO    ] time= 12/06/2026 15:04:10
[2026-06-12 15:04:10,423.423 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 15:04:10,424.424 INFO    ] Checking for existing commands in stream...
[2026-06-12 15:04:10,491.491 INFO    ] No existing commands found in stream
[2026-06-12 15:04:15,505.505 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 15:04:15,508.508 INFO    ] Waiting 0.02 seconds before fallback handling...
[2026-06-12 15:04:15,950.950 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 15:04:15,952.952 INFO    ] Checking for system updates...
[2026-06-12 15:04:15,973.973 INFO    ] 200
[2026-06-12 15:04:15,974.974 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:04:16,004.004 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 15:04:16,005.005 INFO    ] No update needed
[2026-06-12 15:04:16,007.007 INFO    ] Checking for camera pi updates...
[2026-06-12 15:04:16,026.026 INFO    ] 200
[2026-06-12 15:04:16,027.027 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:04:16,052.052 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 15:04:16,192.192 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 15:04:16,193.193 INFO    ] No camera update needed
[2026-06-12 15:04:16,195.195 INFO    ] Script finished. Safe exiting...
[2026-06-12 15:04:16,196.196 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 15:04:16,199.199 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 15:04:16,202.202 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 15:04:18,241.241 INFO    ] ================================================
[2026-06-12 15:04:18,256.256 INFO    ] Launching Daemon at Fri Jun 12 15:04:18 IST 2026
[2026-06-12 15:04:18,267.267 INFO    ] ================================================
[2026-06-12 15:04:18,621.621 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 15:04:18
[2026-06-12 15:04:18,960.960 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 15:04:19,112.112 INFO    ] Initializing speech engine...
[2026-06-12 15:04:19,117.117 INFO    ] 2026-06-12 15:04:19
[2026-06-12 15:04:19,323.323 INFO    ] 2026-06-12 15:04:19
[2026-06-12 15:04:19,352.352 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 15:04:19,535.535 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 15:04:19,546.546 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 15:04:19,737.737 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 15:04:19,761.761 INFO    ] time= 12/06/2026 15:04:19
[2026-06-12 15:04:19,767.767 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 15:04:19,768.768 INFO    ] Checking for existing commands in stream...
[2026-06-12 15:04:19,835.835 INFO    ] No existing commands found in stream
[2026-06-12 15:04:24,868.868 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 15:04:24,871.871 INFO    ] Waiting 0.57 seconds before fallback handling...
[2026-06-12 15:04:25,856.856 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 15:04:25,858.858 INFO    ] Checking for system updates...
[2026-06-12 15:04:25,879.879 INFO    ] 200
[2026-06-12 15:04:25,881.881 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:04:25,911.911 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 15:04:25,913.913 INFO    ] No update needed
[2026-06-12 15:04:25,914.914 INFO    ] Checking for camera pi updates...
[2026-06-12 15:04:25,933.933 INFO    ] 200
[2026-06-12 15:04:25,935.935 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:04:25,958.958 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 15:04:26,006.006 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 15:04:26,007.007 INFO    ] No camera update needed
[2026-06-12 15:04:26,009.009 INFO    ] Script finished. Safe exiting...
[2026-06-12 15:04:26,010.010 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 15:04:26,013.013 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 15:04:26,016.016 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 15:04:28,055.055 INFO    ] ================================================
[2026-06-12 15:04:28,070.070 INFO    ] Launching Daemon at Fri Jun 12 15:04:28 IST 2026
[2026-06-12 15:04:28,081.081 INFO    ] ================================================
[2026-06-12 15:04:28,464.464 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 15:04:28
[2026-06-12 15:04:28,800.800 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 15:04:28,952.952 INFO    ] Initializing speech engine...
[2026-06-12 15:04:28,958.958 INFO    ] 2026-06-12 15:04:28
[2026-06-12 15:04:29,164.164 INFO    ] 2026-06-12 15:04:29
[2026-06-12 15:04:29,193.193 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 15:04:29,377.377 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 15:04:29,387.387 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 15:04:29,536.536 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 15:04:29,585.585 INFO    ] time= 12/06/2026 15:04:29
[2026-06-12 15:04:29,607.607 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 15:04:29,613.613 INFO    ] Checking for existing commands in stream...
[2026-06-12 15:04:29,680.680 INFO    ] No existing commands found in stream
[2026-06-12 15:04:34,692.692 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 15:04:34,696.696 INFO    ] Waiting 0.28 seconds before fallback handling...
[2026-06-12 15:04:35,396.396 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 15:04:35,397.397 INFO    ] Checking for system updates...
[2026-06-12 15:04:35,418.418 INFO    ] 200
[2026-06-12 15:04:35,420.420 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:04:35,450.450 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 15:04:35,451.451 INFO    ] No update needed
[2026-06-12 15:04:35,452.452 INFO    ] Checking for camera pi updates...
[2026-06-12 15:04:35,472.472 INFO    ] 200
[2026-06-12 15:04:35,473.473 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:04:35,497.497 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 15:04:35,532.532 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 15:04:35,533.533 INFO    ] No camera update needed
[2026-06-12 15:04:35,535.535 INFO    ] Script finished. Safe exiting...
[2026-06-12 15:04:35,536.536 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 15:04:35,539.539 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 15:04:35,542.542 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 15:04:37,579.579 INFO    ] ================================================
[2026-06-12 15:04:37,594.594 INFO    ] Launching Daemon at Fri Jun 12 15:04:37 IST 2026
[2026-06-12 15:04:37,605.605 INFO    ] ================================================
[2026-06-12 15:04:37,954.954 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 15:04:37
[2026-06-12 15:04:38,266.266 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 15:04:38,409.409 INFO    ] Initializing speech engine...
[2026-06-12 15:04:38,414.414 INFO    ] 2026-06-12 15:04:38
[2026-06-12 15:04:38,619.619 INFO    ] 2026-06-12 15:04:38
[2026-06-12 15:04:38,649.649 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 15:04:38,837.837 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 15:04:38,841.841 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 15:04:39,039.039 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 15:04:39,067.067 INFO    ] time= 12/06/2026 15:04:39
[2026-06-12 15:04:39,073.073 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 15:04:39,075.075 INFO    ] Checking for existing commands in stream...
[2026-06-12 15:04:39,159.159 INFO    ] No existing commands found in stream
[2026-06-12 15:04:44,172.172 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 15:04:44,175.175 INFO    ] Waiting 3.32 seconds before fallback handling...
[2026-06-12 15:04:47,911.911 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 15:04:47,912.912 INFO    ] Checking for system updates...
[2026-06-12 15:04:47,934.934 INFO    ] 200
[2026-06-12 15:04:47,935.935 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:04:47,965.965 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 15:04:47,966.966 INFO    ] No update needed
[2026-06-12 15:04:47,968.968 INFO    ] Checking for camera pi updates...
[2026-06-12 15:04:47,989.989 INFO    ] 200
[2026-06-12 15:04:47,991.991 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:04:48,014.014 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 15:04:48,094.094 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 15:04:48,095.095 INFO    ] No camera update needed
[2026-06-12 15:04:48,096.096 INFO    ] Script finished. Safe exiting...
[2026-06-12 15:04:48,098.098 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 15:04:48,101.101 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 15:04:48,104.104 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 15:04:50,142.142 INFO    ] ================================================
[2026-06-12 15:04:50,158.158 INFO    ] Launching Daemon at Fri Jun 12 15:04:50 IST 2026
[2026-06-12 15:04:50,168.168 INFO    ] ================================================
[2026-06-12 15:04:50,510.510 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 15:04:50
[2026-06-12 15:04:50,843.843 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 15:04:50,993.993 INFO    ] Initializing speech engine...
[2026-06-12 15:04:50,999.999 INFO    ] 2026-06-12 15:04:50
[2026-06-12 15:04:51,209.209 INFO    ] 2026-06-12 15:04:51
[2026-06-12 15:04:51,239.239 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 15:04:51,426.426 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 15:04:51,436.436 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 15:04:51,627.627 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 15:04:51,656.656 INFO    ] time= 12/06/2026 15:04:51
[2026-06-12 15:04:51,662.662 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 15:04:51,664.664 INFO    ] Checking for existing commands in stream...
[2026-06-12 15:04:51,733.733 INFO    ] No existing commands found in stream
[2026-06-12 15:04:56,747.747 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 15:04:56,750.750 INFO    ] Waiting 1.84 seconds before fallback handling...
[2026-06-12 15:04:59,000.000 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 15:04:59,001.001 INFO    ] Checking for system updates...
[2026-06-12 15:04:59,023.023 INFO    ] 200
[2026-06-12 15:04:59,024.024 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:04:59,054.054 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 15:04:59,055.055 INFO    ] No update needed
[2026-06-12 15:04:59,056.056 INFO    ] Checking for camera pi updates...
[2026-06-12 15:04:59,076.076 INFO    ] 200
[2026-06-12 15:04:59,077.077 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:04:59,100.100 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 15:04:59,154.154 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 15:04:59,156.156 INFO    ] No camera update needed
[2026-06-12 15:04:59,157.157 INFO    ] Script finished. Safe exiting...
[2026-06-12 15:04:59,158.158 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 15:04:59,161.161 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 15:04:59,164.164 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 15:05:01,212.212 INFO    ] ================================================
[2026-06-12 15:05:01,254.254 INFO    ] Launching Daemon at Fri Jun 12 15:05:01 IST 2026
[2026-06-12 15:05:01,303.303 INFO    ] ================================================
[2026-06-12 15:05:01,791.791 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 15:05:01
[2026-06-12 15:05:02,166.166 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 15:05:02,349.349 INFO    ] Initializing speech engine...
[2026-06-12 15:05:02,367.367 INFO    ] 2026-06-12 15:05:02
[2026-06-12 15:05:02,572.572 INFO    ] 2026-06-12 15:05:02
[2026-06-12 15:05:02,606.606 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 15:05:02,764.764 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 15:05:02,806.806 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 15:05:02,972.972 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 15:05:03,035.035 INFO    ] time= 12/06/2026 15:05:02
[2026-06-12 15:05:03,070.070 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 15:05:03,081.081 INFO    ] Checking for existing commands in stream...
[2026-06-12 15:05:03,158.158 INFO    ] No existing commands found in stream
[2026-06-12 15:05:08,172.172 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 15:05:08,174.174 INFO    ] Waiting 3.21 seconds before fallback handling...
[2026-06-12 15:05:11,819.819 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 15:05:11,820.820 INFO    ] Checking for system updates...
[2026-06-12 15:05:11,842.842 INFO    ] 200
[2026-06-12 15:05:11,843.843 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:05:11,873.873 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 15:05:11,874.874 INFO    ] No update needed
[2026-06-12 15:05:11,875.875 INFO    ] Checking for camera pi updates...
[2026-06-12 15:05:11,894.894 INFO    ] 200
[2026-06-12 15:05:11,896.896 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:05:11,920.920 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 15:05:11,970.970 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 15:05:11,971.971 INFO    ] No camera update needed
[2026-06-12 15:05:11,973.973 INFO    ] Script finished. Safe exiting...
[2026-06-12 15:05:11,974.974 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 15:05:11,977.977 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 15:05:11,979.979 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 15:05:14,017.017 INFO    ] ================================================
[2026-06-12 15:05:14,032.032 INFO    ] Launching Daemon at Fri Jun 12 15:05:14 IST 2026
[2026-06-12 15:05:14,043.043 INFO    ] ================================================
[2026-06-12 15:05:14,404.404 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 15:05:14
[2026-06-12 15:05:14,741.741 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 15:05:14,881.881 INFO    ] Initializing speech engine...
[2026-06-12 15:05:14,894.894 INFO    ] 2026-06-12 15:05:14
[2026-06-12 15:05:15,106.106 INFO    ] 2026-06-12 15:05:15
[2026-06-12 15:05:15,135.135 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 15:05:15,322.322 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 15:05:15,333.333 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 15:05:15,527.527 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 15:05:15,551.551 INFO    ] time= 12/06/2026 15:05:15
[2026-06-12 15:05:15,557.557 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 15:05:15,559.559 INFO    ] Checking for existing commands in stream...
[2026-06-12 15:05:15,627.627 INFO    ] No existing commands found in stream
[2026-06-12 15:05:20,646.646 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 15:05:20,650.650 INFO    ] Waiting 1.00 seconds before fallback handling...
[2026-06-12 15:05:22,047.047 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 15:05:22,048.048 INFO    ] Checking for system updates...
[2026-06-12 15:05:22,069.069 INFO    ] 200
[2026-06-12 15:05:22,071.071 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:05:22,101.101 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 15:05:22,102.102 INFO    ] No update needed
[2026-06-12 15:05:22,103.103 INFO    ] Checking for camera pi updates...
[2026-06-12 15:05:22,124.124 INFO    ] 200
[2026-06-12 15:05:22,126.126 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:05:22,150.150 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 15:05:22,227.227 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 15:05:22,228.228 INFO    ] No camera update needed
[2026-06-12 15:05:22,230.230 INFO    ] Script finished. Safe exiting...
[2026-06-12 15:05:22,231.231 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 15:05:22,234.234 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 15:05:22,237.237 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 15:05:24,274.274 INFO    ] ================================================
[2026-06-12 15:05:24,289.289 INFO    ] Launching Daemon at Fri Jun 12 15:05:24 IST 2026
[2026-06-12 15:05:24,300.300 INFO    ] ================================================
[2026-06-12 15:05:24,654.654 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 15:05:24
[2026-06-12 15:05:24,971.971 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 15:05:25,104.104 INFO    ] Initializing speech engine...
[2026-06-12 15:05:25,109.109 INFO    ] 2026-06-12 15:05:25
[2026-06-12 15:05:25,338.338 INFO    ] 2026-06-12 15:05:25
[2026-06-12 15:05:25,369.369 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 15:05:25,567.567 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 15:05:25,577.577 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 15:05:25,733.733 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 15:05:25,789.789 INFO    ] time= 12/06/2026 15:05:25
[2026-06-12 15:05:25,816.816 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 15:05:25,821.821 INFO    ] Checking for existing commands in stream...
[2026-06-12 15:05:25,892.892 INFO    ] No existing commands found in stream
[2026-06-12 15:05:30,903.903 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 15:05:30,905.905 INFO    ] Waiting 2.45 seconds before fallback handling...
[2026-06-12 15:05:33,792.792 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 15:05:33,794.794 INFO    ] Checking for system updates...
[2026-06-12 15:05:33,834.834 INFO    ] 200
[2026-06-12 15:05:33,837.837 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:05:33,891.891 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 15:05:33,894.894 INFO    ] No update needed
[2026-06-12 15:05:33,897.897 INFO    ] Checking for camera pi updates...
[2026-06-12 15:05:33,923.923 INFO    ] 200
[2026-06-12 15:05:33,925.925 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:05:33,950.950 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 15:05:34,070.070 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 15:05:34,071.071 INFO    ] No camera update needed
[2026-06-12 15:05:34,073.073 INFO    ] Script finished. Safe exiting...
[2026-06-12 15:05:34,074.074 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 15:05:34,077.077 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 15:05:34,080.080 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 15:05:36,119.119 INFO    ] ================================================
[2026-06-12 15:05:36,134.134 INFO    ] Launching Daemon at Fri Jun 12 15:05:36 IST 2026
[2026-06-12 15:05:36,146.146 INFO    ] ================================================
[2026-06-12 15:05:36,476.476 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 15:05:36
[2026-06-12 15:05:36,788.788 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 15:05:36,930.930 INFO    ] Initializing speech engine...
[2026-06-12 15:05:36,935.935 INFO    ] 2026-06-12 15:05:36
[2026-06-12 15:05:37,138.138 INFO    ] 2026-06-12 15:05:37
[2026-06-12 15:05:37,166.166 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 15:05:37,349.349 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 15:05:37,357.357 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 15:05:37,537.537 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 15:05:37,566.566 INFO    ] time= 12/06/2026 15:05:37
[2026-06-12 15:05:37,577.577 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 15:05:37,582.582 INFO    ] Checking for existing commands in stream...
[2026-06-12 15:05:37,649.649 INFO    ] No existing commands found in stream
[2026-06-12 15:05:42,663.663 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 15:05:42,666.666 INFO    ] Waiting 1.81 seconds before fallback handling...
[2026-06-12 15:05:44,866.866 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 15:05:44,868.868 INFO    ] Checking for system updates...
[2026-06-12 15:05:44,889.889 INFO    ] 200
[2026-06-12 15:05:44,891.891 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:05:44,921.921 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 15:05:44,922.922 INFO    ] No update needed
[2026-06-12 15:05:44,924.924 INFO    ] Checking for camera pi updates...
[2026-06-12 15:05:44,943.943 INFO    ] 200
[2026-06-12 15:05:44,945.945 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:05:44,969.969 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 15:05:45,024.024 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 15:05:45,026.026 INFO    ] No camera update needed
[2026-06-12 15:05:45,027.027 INFO    ] Script finished. Safe exiting...
[2026-06-12 15:05:45,029.029 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 15:05:45,032.032 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 15:05:45,035.035 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 15:05:47,066.066 INFO    ] ================================================
[2026-06-12 15:05:47,075.075 INFO    ] Launching Daemon at Fri Jun 12 15:05:47 IST 2026
[2026-06-12 15:05:47,081.081 INFO    ] ================================================
[2026-06-12 15:05:47,406.406 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 15:05:47
[2026-06-12 15:05:47,722.722 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 15:05:47,861.861 INFO    ] Initializing speech engine...
[2026-06-12 15:05:47,871.871 INFO    ] 2026-06-12 15:05:47
[2026-06-12 15:05:48,075.075 INFO    ] 2026-06-12 15:05:48
[2026-06-12 15:05:48,104.104 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 15:05:48,288.288 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 15:05:48,297.297 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 15:05:48,490.490 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 15:05:48,515.515 INFO    ] time= 12/06/2026 15:05:48
[2026-06-12 15:05:48,517.517 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 15:05:48,522.522 INFO    ] Checking for existing commands in stream...
[2026-06-12 15:05:48,590.590 INFO    ] No existing commands found in stream
[2026-06-12 15:05:53,599.599 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 15:05:53,602.602 INFO    ] Waiting 1.82 seconds before fallback handling...
[2026-06-12 15:05:55,824.824 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 15:05:55,826.826 INFO    ] Checking for system updates...
[2026-06-12 15:05:55,846.846 INFO    ] 200
[2026-06-12 15:05:55,848.848 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:05:55,880.880 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 15:05:55,882.882 INFO    ] No update needed
[2026-06-12 15:05:55,883.883 INFO    ] Checking for camera pi updates...
[2026-06-12 15:05:55,904.904 INFO    ] 200
[2026-06-12 15:05:55,905.905 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:05:55,931.931 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 15:05:55,970.970 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 15:05:55,972.972 INFO    ] No camera update needed
[2026-06-12 15:05:55,973.973 INFO    ] Script finished. Safe exiting...
[2026-06-12 15:05:55,974.974 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 15:05:55,978.978 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 15:05:55,981.981 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 15:05:58,020.020 INFO    ] ================================================
[2026-06-12 15:05:58,036.036 INFO    ] Launching Daemon at Fri Jun 12 15:05:58 IST 2026
[2026-06-12 15:05:58,047.047 INFO    ] ================================================
[2026-06-12 15:05:58,378.378 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 15:05:58
[2026-06-12 15:05:58,691.691 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 15:05:58,828.828 INFO    ] Initializing speech engine...
[2026-06-12 15:05:58,837.837 INFO    ] 2026-06-12 15:05:58
[2026-06-12 15:05:59,043.043 INFO    ] 2026-06-12 15:05:59
[2026-06-12 15:05:59,072.072 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 15:05:59,256.256 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 15:05:59,266.266 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 15:05:59,404.404 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 15:05:59,462.462 INFO    ] time= 12/06/2026 15:05:59
[2026-06-12 15:05:59,484.484 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 15:05:59,490.490 INFO    ] Checking for existing commands in stream...
[2026-06-12 15:05:59,557.557 INFO    ] No existing commands found in stream
[2026-06-12 15:06:04,581.581 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 15:06:04,584.584 INFO    ] Waiting 0.38 seconds before fallback handling...
[2026-06-12 15:06:05,363.363 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 15:06:05,364.364 INFO    ] Checking for system updates...
[2026-06-12 15:06:05,385.385 INFO    ] 200
[2026-06-12 15:06:05,386.386 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:06:05,419.419 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 15:06:05,420.420 INFO    ] No update needed
[2026-06-12 15:06:05,421.421 INFO    ] Checking for camera pi updates...
[2026-06-12 15:06:05,440.440 INFO    ] 200
[2026-06-12 15:06:05,442.442 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:06:05,465.465 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 15:06:05,521.521 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 15:06:05,522.522 INFO    ] No camera update needed
[2026-06-12 15:06:05,523.523 INFO    ] Script finished. Safe exiting...
[2026-06-12 15:06:05,524.524 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 15:06:05,527.527 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 15:06:05,530.530 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 15:06:07,568.568 INFO    ] ================================================
[2026-06-12 15:06:07,583.583 INFO    ] Launching Daemon at Fri Jun 12 15:06:07 IST 2026
[2026-06-12 15:06:07,594.594 INFO    ] ================================================
[2026-06-12 15:06:07,955.955 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 15:06:07
[2026-06-12 15:06:08,266.266 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 15:06:08,407.407 INFO    ] Initializing speech engine...
[2026-06-12 15:06:08,412.412 INFO    ] 2026-06-12 15:06:08
[2026-06-12 15:06:08,615.615 INFO    ] 2026-06-12 15:06:08
[2026-06-12 15:06:08,644.644 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 15:06:08,853.853 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 15:06:08,858.858 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 15:06:09,056.056 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 15:06:09,062.062 INFO    ] time= 12/06/2026 15:06:09
[2026-06-12 15:06:09,064.064 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 15:06:09,065.065 INFO    ] Checking for existing commands in stream...
[2026-06-12 15:06:09,157.157 INFO    ] No existing commands found in stream
[2026-06-12 15:06:14,166.166 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 15:06:14,169.169 INFO    ] Waiting 1.71 seconds before fallback handling...
[2026-06-12 15:06:17,320.320 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 15:06:17,322.322 INFO    ] Checking for system updates...
[2026-06-12 15:06:17,359.359 INFO    ] 200
[2026-06-12 15:06:17,362.362 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:06:17,418.418 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 15:06:17,420.420 INFO    ] No update needed
[2026-06-12 15:06:17,423.423 INFO    ] Checking for camera pi updates...
[2026-06-12 15:06:17,450.450 INFO    ] 200
[2026-06-12 15:06:17,452.452 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:06:17,475.475 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 15:06:17,622.622 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 15:06:17,623.623 INFO    ] No camera update needed
[2026-06-12 15:06:17,625.625 INFO    ] Script finished. Safe exiting...
[2026-06-12 15:06:17,626.626 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 15:06:17,629.629 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 15:06:17,632.632 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 15:06:19,673.673 INFO    ] ================================================
[2026-06-12 15:06:19,688.688 INFO    ] Launching Daemon at Fri Jun 12 15:06:19 IST 2026
[2026-06-12 15:06:19,699.699 INFO    ] ================================================
[2026-06-12 15:06:20,068.068 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 15:06:20
[2026-06-12 15:06:20,380.380 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 15:06:20,510.510 INFO    ] Initializing speech engine...
[2026-06-12 15:06:20,513.513 INFO    ] 2026-06-12 15:06:20
[2026-06-12 15:06:20,730.730 INFO    ] 2026-06-12 15:06:20
[2026-06-12 15:06:20,757.757 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 15:06:20,941.941 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 15:06:20,949.949 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 15:06:21,099.099 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 15:06:21,148.148 INFO    ] time= 12/06/2026 15:06:21
[2026-06-12 15:06:21,169.169 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 15:06:21,175.175 INFO    ] Checking for existing commands in stream...
[2026-06-12 15:06:21,266.266 INFO    ] No existing commands found in stream
[2026-06-12 15:06:26,275.275 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 15:06:26,277.277 INFO    ] Waiting 3.70 seconds before fallback handling...
[2026-06-12 15:06:30,402.402 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 15:06:30,404.404 INFO    ] Checking for system updates...
[2026-06-12 15:06:30,424.424 INFO    ] 200
[2026-06-12 15:06:30,425.425 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:06:30,457.457 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 15:06:30,459.459 INFO    ] No update needed
[2026-06-12 15:06:30,460.460 INFO    ] Checking for camera pi updates...
[2026-06-12 15:06:30,479.479 INFO    ] 200
[2026-06-12 15:06:30,481.481 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:06:30,507.507 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 15:06:30,549.549 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 15:06:30,551.551 INFO    ] No camera update needed
[2026-06-12 15:06:30,552.552 INFO    ] Script finished. Safe exiting...
[2026-06-12 15:06:30,553.553 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 15:06:30,556.556 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 15:06:30,559.559 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 15:06:32,597.597 INFO    ] ================================================
[2026-06-12 15:06:32,612.612 INFO    ] Launching Daemon at Fri Jun 12 15:06:32 IST 2026
[2026-06-12 15:06:32,624.624 INFO    ] ================================================
[2026-06-12 15:06:32,979.979 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 15:06:32
[2026-06-12 15:06:33,291.291 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 15:06:33,434.434 INFO    ] Initializing speech engine...
[2026-06-12 15:06:33,439.439 INFO    ] 2026-06-12 15:06:33
[2026-06-12 15:06:33,643.643 INFO    ] 2026-06-12 15:06:33
[2026-06-12 15:06:33,672.672 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 15:06:33,859.859 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 15:06:33,867.867 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 15:06:34,059.059 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 15:06:34,088.088 INFO    ] time= 12/06/2026 15:06:34
[2026-06-12 15:06:34,094.094 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 15:06:34,096.096 INFO    ] Checking for existing commands in stream...
[2026-06-12 15:06:34,188.188 INFO    ] No existing commands found in stream
[2026-06-12 15:06:39,197.197 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 15:06:39,201.201 INFO    ] Waiting 0.02 seconds before fallback handling...
[2026-06-12 15:06:39,615.615 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 15:06:39,617.617 INFO    ] Checking for system updates...
[2026-06-12 15:06:39,639.639 INFO    ] 200
[2026-06-12 15:06:39,641.641 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:06:39,671.671 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 15:06:39,673.673 INFO    ] No update needed
[2026-06-12 15:06:39,674.674 INFO    ] Checking for camera pi updates...
[2026-06-12 15:06:39,694.694 INFO    ] 200
[2026-06-12 15:06:39,695.695 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:06:39,719.719 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 15:06:39,806.806 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 15:06:39,807.807 INFO    ] No camera update needed
[2026-06-12 15:06:39,808.808 INFO    ] Script finished. Safe exiting...
[2026-06-12 15:06:39,810.810 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 15:06:39,813.813 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 15:06:39,816.816 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 15:06:41,854.854 INFO    ] ================================================
[2026-06-12 15:06:41,870.870 INFO    ] Launching Daemon at Fri Jun 12 15:06:41 IST 2026
[2026-06-12 15:06:41,882.882 INFO    ] ================================================
[2026-06-12 15:06:42,223.223 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 15:06:42
[2026-06-12 15:06:42,534.534 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 15:06:42,665.665 INFO    ] Initializing speech engine...
[2026-06-12 15:06:42,670.670 INFO    ] 2026-06-12 15:06:42
[2026-06-12 15:06:42,877.877 INFO    ] 2026-06-12 15:06:42
[2026-06-12 15:06:42,907.907 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 15:06:43,126.126 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 15:06:43,130.130 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 15:06:43,273.273 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 15:06:43,340.340 INFO    ] time= 12/06/2026 15:06:43
[2026-06-12 15:06:43,373.373 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 15:06:43,380.380 INFO    ] Checking for existing commands in stream...
[2026-06-12 15:06:43,477.477 INFO    ] No existing commands found in stream
[2026-06-12 15:06:48,485.485 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 15:06:48,488.488 INFO    ] Waiting 0.70 seconds before fallback handling...
[2026-06-12 15:06:49,564.564 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 15:06:49,565.565 INFO    ] Checking for system updates...
[2026-06-12 15:06:49,586.586 INFO    ] 200
[2026-06-12 15:06:49,588.588 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:06:49,618.618 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 15:06:49,619.619 INFO    ] No update needed
[2026-06-12 15:06:49,621.621 INFO    ] Checking for camera pi updates...
[2026-06-12 15:06:49,640.640 INFO    ] 200
[2026-06-12 15:06:49,641.641 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:06:49,664.664 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 15:06:49,718.718 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 15:06:49,720.720 INFO    ] No camera update needed
[2026-06-12 15:06:49,721.721 INFO    ] Script finished. Safe exiting...
[2026-06-12 15:06:49,722.722 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 15:06:49,725.725 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 15:06:49,728.728 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 15:06:51,765.765 INFO    ] ================================================
[2026-06-12 15:06:51,781.781 INFO    ] Launching Daemon at Fri Jun 12 15:06:51 IST 2026
[2026-06-12 15:06:51,791.791 INFO    ] ================================================
[2026-06-12 15:06:52,142.142 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 15:06:52
[2026-06-12 15:06:52,453.453 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 15:06:52,583.583 INFO    ] Initializing speech engine...
[2026-06-12 15:06:52,587.587 INFO    ] 2026-06-12 15:06:52
[2026-06-12 15:06:52,784.784 INFO    ] 2026-06-12 15:06:52
[2026-06-12 15:06:52,823.823 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 15:06:52,979.979 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 15:06:53,046.046 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 15:06:53,190.190 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 15:06:53,248.248 INFO    ] time= 12/06/2026 15:06:53
[2026-06-12 15:06:53,292.292 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 15:06:53,293.293 INFO    ] Checking for existing commands in stream...
[2026-06-12 15:06:53,394.394 INFO    ] No existing commands found in stream
[2026-06-12 15:06:58,403.403 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 15:06:58,406.406 INFO    ] Waiting 3.99 seconds before fallback handling...
[2026-06-12 15:07:02,732.732 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 15:07:02,734.734 INFO    ] Checking for system updates...
[2026-06-12 15:07:02,758.758 INFO    ] 200
[2026-06-12 15:07:02,760.760 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:07:02,798.798 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 15:07:02,800.800 INFO    ] No update needed
[2026-06-12 15:07:02,802.802 INFO    ] Checking for camera pi updates...
[2026-06-12 15:07:02,823.823 INFO    ] 200
[2026-06-12 15:07:02,824.824 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:07:02,846.846 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 15:07:02,879.879 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 15:07:02,881.881 INFO    ] No camera update needed
[2026-06-12 15:07:02,883.883 INFO    ] Script finished. Safe exiting...
[2026-06-12 15:07:02,885.885 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 15:07:02,890.890 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 15:07:02,894.894 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 15:07:04,932.932 INFO    ] ================================================
[2026-06-12 15:07:04,947.947 INFO    ] Launching Daemon at Fri Jun 12 15:07:04 IST 2026
[2026-06-12 15:07:04,958.958 INFO    ] ================================================
[2026-06-12 15:07:05,306.306 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 15:07:05
[2026-06-12 15:07:05,618.618 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 15:07:05,753.753 INFO    ] Initializing speech engine...
[2026-06-12 15:07:05,766.766 INFO    ] 2026-06-12 15:07:05
[2026-06-12 15:07:05,995.995 INFO    ] 2026-06-12 15:07:05
[2026-06-12 15:07:06,024.024 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 15:07:06,211.211 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 15:07:06,220.220 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 15:07:06,412.412 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 15:07:06,441.441 INFO    ] time= 12/06/2026 15:07:06
[2026-06-12 15:07:06,446.446 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 15:07:06,448.448 INFO    ] Checking for existing commands in stream...
[2026-06-12 15:07:06,516.516 INFO    ] No existing commands found in stream
[2026-06-12 15:07:11,530.530 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 15:07:11,533.533 INFO    ] Waiting 2.58 seconds before fallback handling...
[2026-06-12 15:07:14,884.884 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 15:07:14,886.886 INFO    ] Checking for system updates...
[2026-06-12 15:07:14,906.906 INFO    ] 200
[2026-06-12 15:07:14,907.907 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:07:14,937.937 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 15:07:14,938.938 INFO    ] No update needed
[2026-06-12 15:07:14,939.939 INFO    ] Checking for camera pi updates...
[2026-06-12 15:07:14,961.961 INFO    ] 200
[2026-06-12 15:07:14,962.962 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:07:14,985.985 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 15:07:15,030.030 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 15:07:15,032.032 INFO    ] No camera update needed
[2026-06-12 15:07:15,035.035 INFO    ] Script finished. Safe exiting...
[2026-06-12 15:07:15,037.037 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 15:07:15,042.042 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 15:07:15,048.048 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 15:07:17,087.087 INFO    ] ================================================
[2026-06-12 15:07:17,102.102 INFO    ] Launching Daemon at Fri Jun 12 15:07:17 IST 2026
[2026-06-12 15:07:17,112.112 INFO    ] ================================================
[2026-06-12 15:07:17,499.499 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 15:07:17
[2026-06-12 15:07:17,833.833 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 15:07:17,986.986 INFO    ] Initializing speech engine...
[2026-06-12 15:07:17,989.989 INFO    ] 2026-06-12 15:07:17
[2026-06-12 15:07:18,194.194 INFO    ] 2026-06-12 15:07:18
[2026-06-12 15:07:18,223.223 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 15:07:18,405.405 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 15:07:18,415.415 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 15:07:18,606.606 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 15:07:18,632.632 INFO    ] time= 12/06/2026 15:07:18
[2026-06-12 15:07:18,638.638 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 15:07:18,640.640 INFO    ] Checking for existing commands in stream...
[2026-06-12 15:07:18,706.706 INFO    ] No existing commands found in stream
[2026-06-12 15:07:23,725.725 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 15:07:23,728.728 INFO    ] Waiting 1.69 seconds before fallback handling...
[2026-06-12 15:07:25,878.878 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 15:07:25,880.880 INFO    ] Checking for system updates...
[2026-06-12 15:07:25,901.901 INFO    ] 200
[2026-06-12 15:07:25,902.902 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:07:25,932.932 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 15:07:25,933.933 INFO    ] No update needed
[2026-06-12 15:07:25,935.935 INFO    ] Checking for camera pi updates...
[2026-06-12 15:07:25,954.954 INFO    ] 200
[2026-06-12 15:07:25,955.955 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:07:25,981.981 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 15:07:26,032.032 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 15:07:26,033.033 INFO    ] No camera update needed
[2026-06-12 15:07:26,035.035 INFO    ] Script finished. Safe exiting...
[2026-06-12 15:07:26,036.036 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 15:07:26,039.039 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 15:07:26,042.042 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 15:07:28,079.079 INFO    ] ================================================
[2026-06-12 15:07:28,094.094 INFO    ] Launching Daemon at Fri Jun 12 15:07:28 IST 2026
[2026-06-12 15:07:28,105.105 INFO    ] ================================================
[2026-06-12 15:07:28,428.428 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 15:07:28
[2026-06-12 15:07:28,739.739 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 15:07:28,883.883 INFO    ] Initializing speech engine...
[2026-06-12 15:07:28,889.889 INFO    ] 2026-06-12 15:07:28
[2026-06-12 15:07:29,092.092 INFO    ] 2026-06-12 15:07:29
[2026-06-12 15:07:29,121.121 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 15:07:29,308.308 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 15:07:29,316.316 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 15:07:29,501.501 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 15:07:29,539.539 INFO    ] time= 12/06/2026 15:07:29
[2026-06-12 15:07:29,541.541 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 15:07:29,547.547 INFO    ] Checking for existing commands in stream...
[2026-06-12 15:07:29,638.638 INFO    ] No existing commands found in stream
[2026-06-12 15:07:34,647.647 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 15:07:34,650.650 INFO    ] Waiting 1.13 seconds before fallback handling...
[2026-06-12 15:07:36,172.172 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 15:07:36,173.173 INFO    ] Checking for system updates...
[2026-06-12 15:07:36,193.193 INFO    ] 200
[2026-06-12 15:07:36,195.195 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:07:36,226.226 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 15:07:36,227.227 INFO    ] No update needed
[2026-06-12 15:07:36,229.229 INFO    ] Checking for camera pi updates...
[2026-06-12 15:07:36,249.249 INFO    ] 200
[2026-06-12 15:07:36,250.250 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:07:36,273.273 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 15:07:36,339.339 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 15:07:36,341.341 INFO    ] No camera update needed
[2026-06-12 15:07:36,342.342 INFO    ] Script finished. Safe exiting...
[2026-06-12 15:07:36,343.343 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 15:07:36,346.346 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 15:07:36,349.349 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 15:07:38,386.386 INFO    ] ================================================
[2026-06-12 15:07:38,401.401 INFO    ] Launching Daemon at Fri Jun 12 15:07:38 IST 2026
[2026-06-12 15:07:38,412.412 INFO    ] ================================================
[2026-06-12 15:07:38,735.735 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 15:07:38
[2026-06-12 15:07:39,052.052 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 15:07:39,184.184 INFO    ] Initializing speech engine...
[2026-06-12 15:07:39,192.192 INFO    ] 2026-06-12 15:07:39
[2026-06-12 15:07:39,407.407 INFO    ] 2026-06-12 15:07:39
[2026-06-12 15:07:39,435.435 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 15:07:39,619.619 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 15:07:39,629.629 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 15:07:39,780.780 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 15:07:39,834.834 INFO    ] time= 12/06/2026 15:07:39
[2026-06-12 15:07:39,850.850 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 15:07:39,856.856 INFO    ] Checking for existing commands in stream...
[2026-06-12 15:07:39,946.946 INFO    ] No existing commands found in stream
[2026-06-12 15:07:44,961.961 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 15:07:44,964.964 INFO    ] Waiting 1.03 seconds before fallback handling...
[2026-06-12 15:07:46,421.421 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 15:07:46,422.422 INFO    ] Checking for system updates...
[2026-06-12 15:07:46,444.444 INFO    ] 200
[2026-06-12 15:07:46,445.445 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:07:46,478.478 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 15:07:46,479.479 INFO    ] No update needed
[2026-06-12 15:07:46,481.481 INFO    ] Checking for camera pi updates...
[2026-06-12 15:07:46,500.500 INFO    ] 200
[2026-06-12 15:07:46,501.501 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:07:46,525.525 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 15:07:46,570.570 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 15:07:46,571.571 INFO    ] No camera update needed
[2026-06-12 15:07:46,572.572 INFO    ] Script finished. Safe exiting...
[2026-06-12 15:07:46,574.574 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 15:07:46,576.576 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 15:07:46,579.579 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 15:07:48,619.619 INFO    ] ================================================
[2026-06-12 15:07:48,634.634 INFO    ] Launching Daemon at Fri Jun 12 15:07:48 IST 2026
[2026-06-12 15:07:48,645.645 INFO    ] ================================================
[2026-06-12 15:07:48,980.980 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 15:07:48
[2026-06-12 15:07:49,296.296 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 15:07:49,444.444 INFO    ] Initializing speech engine...
[2026-06-12 15:07:49,447.447 INFO    ] 2026-06-12 15:07:49
[2026-06-12 15:07:49,649.649 INFO    ] 2026-06-12 15:07:49
[2026-06-12 15:07:49,677.677 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 15:07:49,859.859 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 15:07:49,863.863 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 15:07:50,039.039 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 15:07:50,083.083 INFO    ] time= 12/06/2026 15:07:50
[2026-06-12 15:07:50,088.088 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 15:07:50,094.094 INFO    ] Checking for existing commands in stream...
[2026-06-12 15:07:50,184.184 INFO    ] No existing commands found in stream
[2026-06-12 15:07:55,198.198 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 15:07:55,201.201 INFO    ] Waiting 0.17 seconds before fallback handling...
[2026-06-12 15:07:55,741.741 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 15:07:55,743.743 INFO    ] Checking for system updates...
[2026-06-12 15:07:55,763.763 INFO    ] 200
[2026-06-12 15:07:55,764.764 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:07:55,794.794 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 15:07:55,796.796 INFO    ] No update needed
[2026-06-12 15:07:55,797.797 INFO    ] Checking for camera pi updates...
[2026-06-12 15:07:55,817.817 INFO    ] 200
[2026-06-12 15:07:55,818.818 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:07:55,843.843 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 15:07:55,891.891 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 15:07:55,893.893 INFO    ] No camera update needed
[2026-06-12 15:07:55,894.894 INFO    ] Script finished. Safe exiting...
[2026-06-12 15:07:55,895.895 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 15:07:55,898.898 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 15:07:55,901.901 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 15:07:57,939.939 INFO    ] ================================================
[2026-06-12 15:07:57,955.955 INFO    ] Launching Daemon at Fri Jun 12 15:07:57 IST 2026
[2026-06-12 15:07:57,966.966 INFO    ] ================================================
[2026-06-12 15:07:58,309.309 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 15:07:58
[2026-06-12 15:07:58,644.644 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 15:07:58,783.783 INFO    ] Initializing speech engine...
[2026-06-12 15:07:58,791.791 INFO    ] 2026-06-12 15:07:58
[2026-06-12 15:07:59,008.008 INFO    ] 2026-06-12 15:07:58
[2026-06-12 15:07:59,036.036 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 15:07:59,221.221 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 15:07:59,231.231 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 15:07:59,405.405 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 15:07:59,445.445 INFO    ] time= 12/06/2026 15:07:59
[2026-06-12 15:07:59,455.455 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 15:07:59,461.461 INFO    ] Checking for existing commands in stream...
[2026-06-12 15:07:59,528.528 INFO    ] No existing commands found in stream
[2026-06-12 15:08:04,542.542 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 15:08:04,545.545 INFO    ] Waiting 2.59 seconds before fallback handling...
[2026-06-12 15:08:07,560.560 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 15:08:07,562.562 INFO    ] Checking for system updates...
[2026-06-12 15:08:07,582.582 INFO    ] 200
[2026-06-12 15:08:07,584.584 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:08:07,613.613 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 15:08:07,615.615 INFO    ] No update needed
[2026-06-12 15:08:07,616.616 INFO    ] Checking for camera pi updates...
[2026-06-12 15:08:07,636.636 INFO    ] 200
[2026-06-12 15:08:07,637.637 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:08:07,661.661 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 15:08:07,708.708 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 15:08:07,709.709 INFO    ] No camera update needed
[2026-06-12 15:08:07,710.710 INFO    ] Script finished. Safe exiting...
[2026-06-12 15:08:07,712.712 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 15:08:07,715.715 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 15:08:07,717.717 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 15:08:09,756.756 INFO    ] ================================================
[2026-06-12 15:08:09,772.772 INFO    ] Launching Daemon at Fri Jun 12 15:08:09 IST 2026
[2026-06-12 15:08:09,783.783 INFO    ] ================================================
[2026-06-12 15:08:10,171.171 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 15:08:10
[2026-06-12 15:08:10,504.504 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 15:08:10,657.657 INFO    ] Initializing speech engine...
[2026-06-12 15:08:10,661.661 INFO    ] 2026-06-12 15:08:10
[2026-06-12 15:08:10,866.866 INFO    ] 2026-06-12 15:08:10
[2026-06-12 15:08:10,896.896 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 15:08:11,080.080 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 15:08:11,089.089 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 15:08:11,274.274 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 15:08:11,308.308 INFO    ] time= 12/06/2026 15:08:11
[2026-06-12 15:08:11,314.314 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 15:08:11,316.316 INFO    ] Checking for existing commands in stream...
[2026-06-12 15:08:11,406.406 INFO    ] No existing commands found in stream
[2026-06-12 15:08:16,421.421 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 15:08:16,424.424 INFO    ] Waiting 2.79 seconds before fallback handling...
[2026-06-12 15:08:19,613.613 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 15:08:19,615.615 INFO    ] Checking for system updates...
[2026-06-12 15:08:19,636.636 INFO    ] 200
[2026-06-12 15:08:19,638.638 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:08:19,670.670 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 15:08:19,672.672 INFO    ] No update needed
[2026-06-12 15:08:19,673.673 INFO    ] Checking for camera pi updates...
[2026-06-12 15:08:19,693.693 INFO    ] 200
[2026-06-12 15:08:19,694.694 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:08:19,717.717 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 15:08:19,854.854 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 15:08:19,855.855 INFO    ] No camera update needed
[2026-06-12 15:08:19,857.857 INFO    ] Script finished. Safe exiting...
[2026-06-12 15:08:19,858.858 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 15:08:19,862.862 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 15:08:19,865.865 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 15:08:21,903.903 INFO    ] ================================================
[2026-06-12 15:08:21,918.918 INFO    ] Launching Daemon at Fri Jun 12 15:08:21 IST 2026
[2026-06-12 15:08:21,929.929 INFO    ] ================================================
[2026-06-12 15:08:22,290.290 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 15:08:22
[2026-06-12 15:08:22,624.624 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 15:08:22,774.774 INFO    ] Initializing speech engine...
[2026-06-12 15:08:22,779.779 INFO    ] 2026-06-12 15:08:22
[2026-06-12 15:08:22,985.985 INFO    ] 2026-06-12 15:08:22
[2026-06-12 15:08:23,014.014 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 15:08:23,197.197 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 15:08:23,207.207 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 15:08:23,396.396 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 15:08:23,424.424 INFO    ] time= 12/06/2026 15:08:23
[2026-06-12 15:08:23,429.429 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 15:08:23,431.431 INFO    ] Checking for existing commands in stream...
[2026-06-12 15:08:23,498.498 INFO    ] No existing commands found in stream
[2026-06-12 15:08:28,523.523 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 15:08:28,526.526 INFO    ] Waiting 3.12 seconds before fallback handling...
[2026-06-12 15:08:32,050.050 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 15:08:32,053.053 INFO    ] Checking for system updates...
[2026-06-12 15:08:32,080.080 INFO    ] 200
[2026-06-12 15:08:32,083.083 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:08:32,119.119 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 15:08:32,121.121 INFO    ] No update needed
[2026-06-12 15:08:32,123.123 INFO    ] Checking for camera pi updates...
[2026-06-12 15:08:32,147.147 INFO    ] 200
[2026-06-12 15:08:32,149.149 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:08:32,175.175 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 15:08:32,208.208 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 15:08:32,209.209 INFO    ] No camera update needed
[2026-06-12 15:08:32,211.211 INFO    ] Script finished. Safe exiting...
[2026-06-12 15:08:32,213.213 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 15:08:32,217.217 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 15:08:32,221.221 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 15:08:34,252.252 INFO    ] ================================================
[2026-06-12 15:08:34,267.267 INFO    ] Launching Daemon at Fri Jun 12 15:08:34 IST 2026
[2026-06-12 15:08:34,278.278 INFO    ] ================================================
[2026-06-12 15:08:34,645.645 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 15:08:34
[2026-06-12 15:08:34,967.967 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 15:08:35,111.111 INFO    ] Initializing speech engine...
[2026-06-12 15:08:35,116.116 INFO    ] 2026-06-12 15:08:35
[2026-06-12 15:08:35,319.319 INFO    ] 2026-06-12 15:08:35
[2026-06-12 15:08:35,348.348 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 15:08:35,530.530 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 15:08:35,534.534 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 15:08:35,690.690 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 15:08:35,738.738 INFO    ] time= 12/06/2026 15:08:35
[2026-06-12 15:08:35,760.760 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 15:08:35,767.767 INFO    ] Checking for existing commands in stream...
[2026-06-12 15:08:35,833.833 INFO    ] No existing commands found in stream
[2026-06-12 15:08:40,862.862 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 15:08:40,865.865 INFO    ] Waiting 2.51 seconds before fallback handling...
[2026-06-12 15:08:43,769.769 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 15:08:43,771.771 INFO    ] Checking for system updates...
[2026-06-12 15:08:43,792.792 INFO    ] 200
[2026-06-12 15:08:43,794.794 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:08:43,824.824 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 15:08:43,825.825 INFO    ] No update needed
[2026-06-12 15:08:43,826.826 INFO    ] Checking for camera pi updates...
[2026-06-12 15:08:43,848.848 INFO    ] 200
[2026-06-12 15:08:43,849.849 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:08:43,873.873 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 15:08:43,923.923 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 15:08:43,924.924 INFO    ] No camera update needed
[2026-06-12 15:08:43,925.925 INFO    ] Script finished. Safe exiting...
[2026-06-12 15:08:43,927.927 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 15:08:43,930.930 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 15:08:43,933.933 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 15:08:45,972.972 INFO    ] ================================================
[2026-06-12 15:08:45,992.992 INFO    ] Launching Daemon at Fri Jun 12 15:08:45 IST 2026
[2026-06-12 15:08:46,003.003 INFO    ] ================================================
[2026-06-12 15:08:46,374.374 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 15:08:46
[2026-06-12 15:08:46,712.712 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 15:08:46,863.863 INFO    ] Initializing speech engine...
[2026-06-12 15:08:46,868.868 INFO    ] 2026-06-12 15:08:46
[2026-06-12 15:08:47,075.075 INFO    ] 2026-06-12 15:08:47
[2026-06-12 15:08:47,106.106 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 15:08:47,298.298 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 15:08:47,315.315 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 15:08:47,495.495 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 15:08:47,521.521 INFO    ] time= 12/06/2026 15:08:47
[2026-06-12 15:08:47,526.526 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 15:08:47,528.528 INFO    ] Checking for existing commands in stream...
[2026-06-12 15:08:47,620.620 INFO    ] No existing commands found in stream
[2026-06-12 15:08:52,630.630 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 15:08:52,633.633 INFO    ] Waiting 1.14 seconds before fallback handling...
[2026-06-12 15:08:54,167.167 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 15:08:54,169.169 INFO    ] Checking for system updates...
[2026-06-12 15:08:54,190.190 INFO    ] 200
[2026-06-12 15:08:54,192.192 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:08:54,221.221 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 15:08:54,223.223 INFO    ] No update needed
[2026-06-12 15:08:54,224.224 INFO    ] Checking for camera pi updates...
[2026-06-12 15:08:54,244.244 INFO    ] 200
[2026-06-12 15:08:54,246.246 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:08:54,276.276 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 15:08:54,311.311 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 15:08:54,312.312 INFO    ] No camera update needed
[2026-06-12 15:08:54,314.314 INFO    ] Script finished. Safe exiting...
[2026-06-12 15:08:54,315.315 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 15:08:54,318.318 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 15:08:54,321.321 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 15:08:56,359.359 INFO    ] ================================================
[2026-06-12 15:08:56,375.375 INFO    ] Launching Daemon at Fri Jun 12 15:08:56 IST 2026
[2026-06-12 15:08:56,386.386 INFO    ] ================================================
[2026-06-12 15:08:56,757.757 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 15:08:56
[2026-06-12 15:08:57,093.093 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 15:08:57,248.248 INFO    ] Initializing speech engine...
[2026-06-12 15:08:57,253.253 INFO    ] 2026-06-12 15:08:57
[2026-06-12 15:08:57,458.458 INFO    ] 2026-06-12 15:08:57
[2026-06-12 15:08:57,487.487 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 15:08:57,673.673 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 15:08:57,685.685 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 15:08:57,868.868 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 15:08:57,901.901 INFO    ] time= 12/06/2026 15:08:57
[2026-06-12 15:08:57,903.903 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 15:08:57,908.908 INFO    ] Checking for existing commands in stream...
[2026-06-12 15:08:57,976.976 INFO    ] No existing commands found in stream
[2026-06-12 15:09:02,985.985 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 15:09:02,996.996 INFO    ] Waiting 2.39 seconds before fallback handling...
[2026-06-12 15:09:05,828.828 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 15:09:05,830.830 INFO    ] Checking for system updates...
[2026-06-12 15:09:05,859.859 INFO    ] 200
[2026-06-12 15:09:05,861.861 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:09:05,892.892 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 15:09:05,893.893 INFO    ] No update needed
[2026-06-12 15:09:05,895.895 INFO    ] Checking for camera pi updates...
[2026-06-12 15:09:05,914.914 INFO    ] 200
[2026-06-12 15:09:05,915.915 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:09:05,940.940 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 15:09:06,012.012 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 15:09:06,013.013 INFO    ] No camera update needed
[2026-06-12 15:09:06,015.015 INFO    ] Script finished. Safe exiting...
[2026-06-12 15:09:06,016.016 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 15:09:06,019.019 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 15:09:06,022.022 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 15:09:08,054.054 INFO    ] ================================================
[2026-06-12 15:09:08,076.076 INFO    ] Launching Daemon at Fri Jun 12 15:09:08 IST 2026
[2026-06-12 15:09:08,088.088 INFO    ] ================================================
[2026-06-12 15:09:08,448.448 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 15:09:08
[2026-06-12 15:09:08,763.763 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 15:09:08,892.892 INFO    ] Initializing speech engine...
[2026-06-12 15:09:08,896.896 INFO    ] 2026-06-12 15:09:08
[2026-06-12 15:09:09,116.116 INFO    ] 2026-06-12 15:09:09
[2026-06-12 15:09:09,145.145 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 15:09:09,266.266 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 15:09:09,329.329 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 15:09:09,533.533 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 15:09:09,556.556 INFO    ] time= 12/06/2026 15:09:09
[2026-06-12 15:09:09,562.562 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 15:09:09,564.564 INFO    ] Checking for existing commands in stream...
[2026-06-12 15:09:09,630.630 INFO    ] No existing commands found in stream
[2026-06-12 15:09:14,663.663 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 15:09:14,666.666 INFO    ] Waiting 3.72 seconds before fallback handling...
[2026-06-12 15:09:18,747.747 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 15:09:18,757.757 INFO    ] Checking for system updates...
[2026-06-12 15:09:18,794.794 INFO    ] 200
[2026-06-12 15:09:18,797.797 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:09:18,850.850 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 15:09:18,853.853 INFO    ] No update needed
[2026-06-12 15:09:18,855.855 INFO    ] Checking for camera pi updates...
[2026-06-12 15:09:18,891.891 INFO    ] 200
[2026-06-12 15:09:18,894.894 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:09:18,935.935 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 15:09:19,013.013 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 15:09:19,016.016 INFO    ] No camera update needed
[2026-06-12 15:09:19,019.019 INFO    ] Script finished. Safe exiting...
[2026-06-12 15:09:19,023.023 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 15:09:19,030.030 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 15:09:19,036.036 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 15:09:21,066.066 INFO    ] ================================================
[2026-06-12 15:09:21,075.075 INFO    ] Launching Daemon at Fri Jun 12 15:09:21 IST 2026
[2026-06-12 15:09:21,082.082 INFO    ] ================================================
[2026-06-12 15:09:21,405.405 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 15:09:21
[2026-06-12 15:09:21,744.744 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 15:09:21,890.890 INFO    ] Initializing speech engine...
[2026-06-12 15:09:21,904.904 INFO    ] 2026-06-12 15:09:21
[2026-06-12 15:09:22,134.134 INFO    ] 2026-06-12 15:09:22
[2026-06-12 15:09:22,165.165 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 15:09:22,337.337 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 15:09:22,370.370 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 15:09:22,525.525 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 15:09:22,591.591 INFO    ] time= 12/06/2026 15:09:22
[2026-06-12 15:09:22,617.617 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 15:09:22,624.624 INFO    ] Checking for existing commands in stream...
[2026-06-12 15:09:22,721.721 INFO    ] No existing commands found in stream
[2026-06-12 15:09:27,730.730 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 15:09:27,732.732 INFO    ] Waiting 1.95 seconds before fallback handling...
[2026-06-12 15:09:30,022.022 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 15:09:30,023.023 INFO    ] Checking for system updates...
[2026-06-12 15:09:30,117.117 INFO    ] 200
[2026-06-12 15:09:30,118.118 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_HEALTH_CHECK"}
[2026-06-12 15:09:30,120.120 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping update check
[2026-06-12 15:09:30,122.122 INFO    ] Checking for camera pi updates...
[2026-06-12 15:09:30,264.264 INFO    ] 200
[2026-06-12 15:09:30,266.266 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_HEALTH_CHECK"}
[2026-06-12 15:09:30,268.268 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping camera update check
[2026-06-12 15:09:30,270.270 INFO    ] Script finished. Safe exiting...
[2026-06-12 15:09:30,271.271 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 15:09:30,275.275 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 15:09:30,278.278 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 15:09:32,302.302 INFO    ] ================================================
[2026-06-12 15:09:32,310.310 INFO    ] Launching Daemon at Fri Jun 12 15:09:32 IST 2026
[2026-06-12 15:09:32,317.317 INFO    ] ================================================
[2026-06-12 15:09:32,641.641 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 15:09:32
[2026-06-12 15:09:32,961.961 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 15:09:33,103.103 INFO    ] Initializing speech engine...
[2026-06-12 15:09:33,113.113 INFO    ] 2026-06-12 15:09:33
[2026-06-12 15:09:33,317.317 INFO    ] 2026-06-12 15:09:33
[2026-06-12 15:09:33,346.346 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 15:09:33,530.530 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 15:09:33,540.540 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 15:09:33,670.670 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 15:09:33,736.736 INFO    ] time= 12/06/2026 15:09:33
[2026-06-12 15:09:33,761.761 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 15:09:33,766.766 INFO    ] Checking for existing commands in stream...
[2026-06-12 15:09:33,834.834 INFO    ] No existing commands found in stream
[2026-06-12 15:09:38,848.848 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 15:09:38,851.851 INFO    ] Waiting 3.69 seconds before fallback handling...
[2026-06-12 15:09:42,937.937 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 15:09:42,938.938 INFO    ] Checking for system updates...
[2026-06-12 15:09:42,959.959 INFO    ] 200
[2026-06-12 15:09:42,961.961 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:09:42,990.990 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 15:09:42,992.992 INFO    ] No update needed
[2026-06-12 15:09:42,993.993 INFO    ] Checking for camera pi updates...
[2026-06-12 15:09:43,014.014 INFO    ] 200
[2026-06-12 15:09:43,015.015 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:09:43,038.038 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 15:09:43,090.090 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 15:09:43,091.091 INFO    ] No camera update needed
[2026-06-12 15:09:43,092.092 INFO    ] Script finished. Safe exiting...
[2026-06-12 15:09:43,094.094 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 15:09:43,097.097 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 15:09:43,100.100 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 15:09:45,140.140 INFO    ] ================================================
[2026-06-12 15:09:45,155.155 INFO    ] Launching Daemon at Fri Jun 12 15:09:45 IST 2026
[2026-06-12 15:09:45,166.166 INFO    ] ================================================
[2026-06-12 15:09:45,509.509 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 15:09:45
[2026-06-12 15:09:45,826.826 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 15:09:45,960.960 INFO    ] Initializing speech engine...
[2026-06-12 15:09:45,973.973 INFO    ] 2026-06-12 15:09:45
[2026-06-12 15:09:46,178.178 INFO    ] 2026-06-12 15:09:46
[2026-06-12 15:09:46,206.206 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 15:09:46,389.389 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 15:09:46,392.392 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 15:09:46,579.579 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 15:09:46,616.616 INFO    ] time= 12/06/2026 15:09:46
[2026-06-12 15:09:46,618.618 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 15:09:46,624.624 INFO    ] Checking for existing commands in stream...
[2026-06-12 15:09:46,714.714 INFO    ] No existing commands found in stream
[2026-06-12 15:09:51,723.723 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 15:09:51,725.725 INFO    ] Waiting 2.71 seconds before fallback handling...
[2026-06-12 15:09:54,830.830 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 15:09:54,832.832 INFO    ] Checking for system updates...
[2026-06-12 15:09:54,853.853 INFO    ] 200
[2026-06-12 15:09:54,855.855 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:09:54,884.884 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 15:09:54,888.888 INFO    ] No update needed
[2026-06-12 15:09:54,889.889 INFO    ] Checking for camera pi updates...
[2026-06-12 15:09:54,909.909 INFO    ] 200
[2026-06-12 15:09:54,910.910 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:09:54,938.938 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 15:09:54,978.978 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 15:09:54,980.980 INFO    ] No camera update needed
[2026-06-12 15:09:54,981.981 INFO    ] Script finished. Safe exiting...
[2026-06-12 15:09:54,983.983 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 15:09:54,986.986 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 15:09:54,988.988 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 15:09:57,025.025 INFO    ] ================================================
[2026-06-12 15:09:57,041.041 INFO    ] Launching Daemon at Fri Jun 12 15:09:57 IST 2026
[2026-06-12 15:09:57,052.052 INFO    ] ================================================
[2026-06-12 15:09:57,380.380 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 15:09:57
[2026-06-12 15:09:57,694.694 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 15:09:57,825.825 INFO    ] Initializing speech engine...
[2026-06-12 15:09:57,829.829 INFO    ] 2026-06-12 15:09:57
[2026-06-12 15:09:58,049.049 INFO    ] 2026-06-12 15:09:58
[2026-06-12 15:09:58,077.077 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 15:09:58,266.266 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 15:09:58,275.275 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 15:09:58,416.416 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 15:09:58,477.477 INFO    ] time= 12/06/2026 15:09:58
[2026-06-12 15:09:58,500.500 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 15:09:58,506.506 INFO    ] Checking for existing commands in stream...
[2026-06-12 15:09:58,574.574 INFO    ] No existing commands found in stream
[2026-06-12 15:10:03,602.602 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 15:10:03,604.604 INFO    ] Waiting 3.87 seconds before fallback handling...
[2026-06-12 15:10:08,679.679 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 15:10:08,682.682 INFO    ] Checking for system updates...
[2026-06-12 15:10:08,718.718 INFO    ] 200
[2026-06-12 15:10:08,721.721 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:10:08,773.773 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 15:10:08,776.776 INFO    ] No update needed
[2026-06-12 15:10:08,779.779 INFO    ] Checking for camera pi updates...
[2026-06-12 15:10:08,813.813 INFO    ] 200
[2026-06-12 15:10:08,814.814 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:10:08,840.840 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 15:10:08,888.888 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 15:10:08,889.889 INFO    ] No camera update needed
[2026-06-12 15:10:08,891.891 INFO    ] Script finished. Safe exiting...
[2026-06-12 15:10:08,892.892 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 15:10:08,896.896 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 15:10:08,899.899 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 15:10:10,937.937 INFO    ] ================================================
[2026-06-12 15:10:10,952.952 INFO    ] Launching Daemon at Fri Jun 12 15:10:10 IST 2026
[2026-06-12 15:10:10,963.963 INFO    ] ================================================
[2026-06-12 15:10:11,296.296 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 15:10:11
[2026-06-12 15:10:11,606.606 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 15:10:11,748.748 INFO    ] Initializing speech engine...
[2026-06-12 15:10:11,753.753 INFO    ] 2026-06-12 15:10:11
[2026-06-12 15:10:11,954.954 INFO    ] 2026-06-12 15:10:11
[2026-06-12 15:10:11,983.983 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 15:10:12,167.167 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 15:10:12,176.176 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 15:10:12,325.325 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 15:10:12,372.372 INFO    ] time= 12/06/2026 15:10:12
[2026-06-12 15:10:12,396.396 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 15:10:12,401.401 INFO    ] Checking for existing commands in stream...
[2026-06-12 15:10:12,468.468 INFO    ] No existing commands found in stream
[2026-06-12 15:10:17,482.482 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 15:10:17,485.485 INFO    ] Waiting 3.58 seconds before fallback handling...
[2026-06-12 15:10:21,468.468 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 15:10:21,470.470 INFO    ] Checking for system updates...
[2026-06-12 15:10:21,490.490 INFO    ] 200
[2026-06-12 15:10:21,492.492 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:10:21,522.522 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 15:10:21,523.523 INFO    ] No update needed
[2026-06-12 15:10:21,525.525 INFO    ] Checking for camera pi updates...
[2026-06-12 15:10:21,545.545 INFO    ] 200
[2026-06-12 15:10:21,546.546 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:10:21,569.569 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 15:10:21,712.712 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 15:10:21,713.713 INFO    ] No camera update needed
[2026-06-12 15:10:21,714.714 INFO    ] Script finished. Safe exiting...
[2026-06-12 15:10:21,715.715 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 15:10:21,718.718 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 15:10:21,721.721 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 15:10:23,761.761 INFO    ] ================================================
[2026-06-12 15:10:23,776.776 INFO    ] Launching Daemon at Fri Jun 12 15:10:23 IST 2026
[2026-06-12 15:10:23,787.787 INFO    ] ================================================
[2026-06-12 15:10:24,154.154 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 15:10:24
[2026-06-12 15:10:24,498.498 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 15:10:24,653.653 INFO    ] Initializing speech engine...
[2026-06-12 15:10:24,657.657 INFO    ] 2026-06-12 15:10:24
[2026-06-12 15:10:24,865.865 INFO    ] 2026-06-12 15:10:24
[2026-06-12 15:10:24,894.894 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 15:10:25,077.077 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 15:10:25,091.091 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 15:10:25,284.284 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 15:10:25,307.307 INFO    ] time= 12/06/2026 15:10:25
[2026-06-12 15:10:25,313.313 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 15:10:25,315.315 INFO    ] Checking for existing commands in stream...
[2026-06-12 15:10:25,405.405 INFO    ] No existing commands found in stream
[2026-06-12 15:10:30,415.415 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 15:10:30,418.418 INFO    ] Waiting 3.12 seconds before fallback handling...
[2026-06-12 15:10:33,956.956 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 15:10:33,957.957 INFO    ] Checking for system updates...
[2026-06-12 15:10:33,978.978 INFO    ] 200
[2026-06-12 15:10:33,979.979 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:10:34,010.010 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 15:10:34,011.011 INFO    ] No update needed
[2026-06-12 15:10:34,012.012 INFO    ] Checking for camera pi updates...
[2026-06-12 15:10:34,031.031 INFO    ] 200
[2026-06-12 15:10:34,033.033 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:10:34,061.061 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 15:10:34,132.132 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 15:10:34,133.133 INFO    ] No camera update needed
[2026-06-12 15:10:34,134.134 INFO    ] Script finished. Safe exiting...
[2026-06-12 15:10:34,135.135 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 15:10:34,138.138 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 15:10:34,141.141 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 15:10:36,178.178 INFO    ] ================================================
[2026-06-12 15:10:36,194.194 INFO    ] Launching Daemon at Fri Jun 12 15:10:36 IST 2026
[2026-06-12 15:10:36,205.205 INFO    ] ================================================
[2026-06-12 15:10:36,550.550 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 15:10:36
[2026-06-12 15:10:36,868.868 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 15:10:37,012.012 INFO    ] Initializing speech engine...
[2026-06-12 15:10:37,018.018 INFO    ] 2026-06-12 15:10:37
[2026-06-12 15:10:37,221.221 INFO    ] 2026-06-12 15:10:37
[2026-06-12 15:10:37,253.253 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 15:10:37,436.436 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 15:10:37,440.440 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 15:10:37,592.592 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 15:10:37,648.648 INFO    ] time= 12/06/2026 15:10:37
[2026-06-12 15:10:37,670.670 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 15:10:37,676.676 INFO    ] Checking for existing commands in stream...
[2026-06-12 15:10:37,743.743 INFO    ] No existing commands found in stream
[2026-06-12 15:10:42,752.752 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 15:10:42,755.755 INFO    ] Waiting 2.16 seconds before fallback handling...
[2026-06-12 15:10:45,317.317 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 15:10:45,318.318 INFO    ] Checking for system updates...
[2026-06-12 15:10:45,340.340 INFO    ] 200
[2026-06-12 15:10:45,341.341 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:10:45,374.374 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 15:10:45,375.375 INFO    ] No update needed
[2026-06-12 15:10:45,376.376 INFO    ] Checking for camera pi updates...
[2026-06-12 15:10:45,395.395 INFO    ] 200
[2026-06-12 15:10:45,397.397 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:10:45,420.420 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 15:10:45,463.463 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 15:10:45,464.464 INFO    ] No camera update needed
[2026-06-12 15:10:45,466.466 INFO    ] Script finished. Safe exiting...
[2026-06-12 15:10:45,467.467 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 15:10:45,470.470 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 15:10:45,473.473 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 15:10:47,511.511 INFO    ] ================================================
[2026-06-12 15:10:47,526.526 INFO    ] Launching Daemon at Fri Jun 12 15:10:47 IST 2026
[2026-06-12 15:10:47,537.537 INFO    ] ================================================
[2026-06-12 15:10:47,905.905 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 15:10:47
[2026-06-12 15:10:48,247.247 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 15:10:48,398.398 INFO    ] Initializing speech engine...
[2026-06-12 15:10:48,404.404 INFO    ] 2026-06-12 15:10:48
[2026-06-12 15:10:48,613.613 INFO    ] 2026-06-12 15:10:48
[2026-06-12 15:10:48,641.641 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 15:10:48,824.824 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 15:10:48,836.836 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 15:10:49,025.025 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 15:10:49,050.050 INFO    ] time= 12/06/2026 15:10:49
[2026-06-12 15:10:49,056.056 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 15:10:49,058.058 INFO    ] Checking for existing commands in stream...
[2026-06-12 15:10:49,125.125 INFO    ] No existing commands found in stream
[2026-06-12 15:10:54,144.144 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 15:10:54,147.147 INFO    ] Waiting 2.41 seconds before fallback handling...
[2026-06-12 15:10:56,947.947 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 15:10:56,949.949 INFO    ] Checking for system updates...
[2026-06-12 15:10:56,972.972 INFO    ] 200
[2026-06-12 15:10:56,973.973 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:10:57,004.004 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 15:10:57,006.006 INFO    ] No update needed
[2026-06-12 15:10:57,007.007 INFO    ] Checking for camera pi updates...
[2026-06-12 15:10:57,027.027 INFO    ] 200
[2026-06-12 15:10:57,028.028 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:10:57,055.055 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 15:10:57,102.102 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 15:10:57,104.104 INFO    ] No camera update needed
[2026-06-12 15:10:57,105.105 INFO    ] Script finished. Safe exiting...
[2026-06-12 15:10:57,106.106 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 15:10:57,109.109 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 15:10:57,112.112 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 15:10:59,150.150 INFO    ] ================================================
[2026-06-12 15:10:59,165.165 INFO    ] Launching Daemon at Fri Jun 12 15:10:59 IST 2026
[2026-06-12 15:10:59,176.176 INFO    ] ================================================
[2026-06-12 15:10:59,544.544 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 15:10:59
[2026-06-12 15:10:59,888.888 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 15:11:00,041.041 INFO    ] Initializing speech engine...
[2026-06-12 15:11:00,047.047 INFO    ] 2026-06-12 15:11:00
[2026-06-12 15:11:00,241.241 INFO    ] 2026-06-12 15:11:00
[2026-06-12 15:11:00,275.275 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 15:11:00,419.419 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 15:11:00,479.479 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 15:11:00,637.637 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 15:11:00,694.694 INFO    ] time= 12/06/2026 15:11:00
[2026-06-12 15:11:00,717.717 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 15:11:00,724.724 INFO    ] Checking for existing commands in stream...
[2026-06-12 15:11:00,796.796 INFO    ] No existing commands found in stream
[2026-06-12 15:11:05,823.823 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 15:11:05,826.826 INFO    ] Waiting 1.59 seconds before fallback handling...
[2026-06-12 15:11:07,805.805 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 15:11:07,807.807 INFO    ] Checking for system updates...
[2026-06-12 15:11:07,828.828 INFO    ] 200
[2026-06-12 15:11:07,829.829 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:11:07,859.859 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 15:11:07,861.861 INFO    ] No update needed
[2026-06-12 15:11:07,862.862 INFO    ] Checking for camera pi updates...
[2026-06-12 15:11:07,882.882 INFO    ] 200
[2026-06-12 15:11:07,884.884 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:11:07,908.908 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 15:11:07,963.963 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 15:11:07,964.964 INFO    ] No camera update needed
[2026-06-12 15:11:07,966.966 INFO    ] Script finished. Safe exiting...
[2026-06-12 15:11:07,967.967 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 15:11:07,971.971 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 15:11:07,974.974 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 15:11:10,013.013 INFO    ] ================================================
[2026-06-12 15:11:10,028.028 INFO    ] Launching Daemon at Fri Jun 12 15:11:10 IST 2026
[2026-06-12 15:11:10,039.039 INFO    ] ================================================
[2026-06-12 15:11:10,368.368 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 15:11:10
[2026-06-12 15:11:10,684.684 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 15:11:10,819.819 INFO    ] Initializing speech engine...
[2026-06-12 15:11:10,823.823 INFO    ] 2026-06-12 15:11:10
[2026-06-12 15:11:11,017.017 INFO    ] 2026-06-12 15:11:11
[2026-06-12 15:11:11,063.063 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 15:11:11,224.224 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 15:11:11,274.274 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 15:11:11,439.439 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 15:11:11,502.502 INFO    ] time= 12/06/2026 15:11:11
[2026-06-12 15:11:11,538.538 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 15:11:11,550.550 INFO    ] Checking for existing commands in stream...
[2026-06-12 15:11:11,628.628 INFO    ] No existing commands found in stream
[2026-06-12 15:11:16,638.638 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 15:11:16,641.641 INFO    ] Waiting 1.70 seconds before fallback handling...
[2026-06-12 15:11:18,735.735 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 15:11:18,737.737 INFO    ] Checking for system updates...
[2026-06-12 15:11:18,759.759 INFO    ] 200
[2026-06-12 15:11:18,761.761 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:11:18,791.791 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 15:11:18,792.792 INFO    ] No update needed
[2026-06-12 15:11:18,794.794 INFO    ] Checking for camera pi updates...
[2026-06-12 15:11:18,813.813 INFO    ] 200
[2026-06-12 15:11:18,814.814 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:11:18,837.837 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 15:11:18,934.934 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 15:11:18,936.936 INFO    ] No camera update needed
[2026-06-12 15:11:18,937.937 INFO    ] Script finished. Safe exiting...
[2026-06-12 15:11:18,938.938 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 15:11:18,942.942 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 15:11:18,945.945 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 15:11:20,984.984 INFO    ] ================================================
[2026-06-12 15:11:21,999.999 INFO    ] Launching Daemon at Fri Jun 12 15:11:20 IST 2026
[2026-06-12 15:11:21,010.010 INFO    ] ================================================
[2026-06-12 15:11:21,375.375 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 15:11:21
[2026-06-12 15:11:21,696.696 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 15:11:21,839.839 INFO    ] Initializing speech engine...
[2026-06-12 15:11:21,845.845 INFO    ] 2026-06-12 15:11:21
[2026-06-12 15:11:22,051.051 INFO    ] 2026-06-12 15:11:22
[2026-06-12 15:11:22,080.080 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 15:11:22,268.268 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 15:11:22,271.271 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 15:11:22,409.409 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 15:11:22,477.477 INFO    ] time= 12/06/2026 15:11:22
[2026-06-12 15:11:22,501.501 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 15:11:22,508.508 INFO    ] Checking for existing commands in stream...
[2026-06-12 15:11:22,575.575 INFO    ] No existing commands found in stream
[2026-06-12 15:11:27,584.584 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 15:11:27,587.587 INFO    ] Waiting 2.28 seconds before fallback handling...
[2026-06-12 15:11:30,289.289 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 15:11:30,291.291 INFO    ] Checking for system updates...
[2026-06-12 15:11:30,312.312 INFO    ] 200
[2026-06-12 15:11:30,314.314 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:11:30,351.351 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 15:11:30,353.353 INFO    ] No update needed
[2026-06-12 15:11:30,354.354 INFO    ] Checking for camera pi updates...
[2026-06-12 15:11:30,375.375 INFO    ] 200
[2026-06-12 15:11:30,377.377 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:11:30,404.404 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 15:11:30,502.502 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 15:11:30,503.503 INFO    ] No camera update needed
[2026-06-12 15:11:30,505.505 INFO    ] Script finished. Safe exiting...
[2026-06-12 15:11:30,506.506 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 15:11:30,510.510 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 15:11:30,513.513 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 15:11:32,545.545 INFO    ] ================================================
[2026-06-12 15:11:32,555.555 INFO    ] Launching Daemon at Fri Jun 12 15:11:32 IST 2026
[2026-06-12 15:11:32,562.562 INFO    ] ================================================
[2026-06-12 15:11:32,883.883 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 15:11:32
[2026-06-12 15:11:33,199.199 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 15:11:33,342.342 INFO    ] Initializing speech engine...
[2026-06-12 15:11:33,347.347 INFO    ] 2026-06-12 15:11:33
[2026-06-12 15:11:33,552.552 INFO    ] 2026-06-12 15:11:33
[2026-06-12 15:11:33,581.581 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 15:11:33,704.704 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 15:11:33,768.768 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 15:11:33,906.906 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 15:11:33,964.964 INFO    ] time= 12/06/2026 15:11:33
[2026-06-12 15:11:33,997.997 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 15:11:33,999.999 INFO    ] Checking for existing commands in stream...
[2026-06-12 15:11:34,071.071 INFO    ] No existing commands found in stream
[2026-06-12 15:11:39,080.080 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 15:11:39,083.083 INFO    ] Waiting 3.61 seconds before fallback handling...
[2026-06-12 15:11:43,076.076 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 15:11:43,077.077 INFO    ] Checking for system updates...
[2026-06-12 15:11:43,097.097 INFO    ] 200
[2026-06-12 15:11:43,099.099 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:11:43,128.128 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 15:11:43,130.130 INFO    ] No update needed
[2026-06-12 15:11:43,131.131 INFO    ] Checking for camera pi updates...
[2026-06-12 15:11:43,150.150 INFO    ] 200
[2026-06-12 15:11:43,152.152 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:11:43,175.175 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 15:11:43,214.214 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 15:11:43,215.215 INFO    ] No camera update needed
[2026-06-12 15:11:43,217.217 INFO    ] Script finished. Safe exiting...
[2026-06-12 15:11:43,218.218 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 15:11:43,221.221 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 15:11:43,224.224 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 15:11:45,263.263 INFO    ] ================================================
[2026-06-12 15:11:45,278.278 INFO    ] Launching Daemon at Fri Jun 12 15:11:45 IST 2026
[2026-06-12 15:11:45,289.289 INFO    ] ================================================
[2026-06-12 15:11:45,656.656 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 15:11:45
[2026-06-12 15:11:45,972.972 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 15:11:46,107.107 INFO    ] Initializing speech engine...
[2026-06-12 15:11:46,111.111 INFO    ] 2026-06-12 15:11:46
[2026-06-12 15:11:46,343.343 INFO    ] 2026-06-12 15:11:46
[2026-06-12 15:11:46,374.374 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 15:11:46,524.524 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 15:11:46,578.578 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 15:11:46,722.722 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 15:11:46,779.779 INFO    ] time= 12/06/2026 15:11:46
[2026-06-12 15:11:46,814.814 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 15:11:46,832.832 INFO    ] Checking for existing commands in stream...
[2026-06-12 15:11:46,963.963 INFO    ] No existing commands found in stream
[2026-06-12 15:11:51,973.973 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 15:11:51,975.975 INFO    ] Waiting 3.09 seconds before fallback handling...
[2026-06-12 15:11:55,455.455 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 15:11:55,457.457 INFO    ] Checking for system updates...
[2026-06-12 15:11:55,480.480 INFO    ] 200
[2026-06-12 15:11:55,481.481 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:11:55,514.514 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 15:11:55,515.515 INFO    ] No update needed
[2026-06-12 15:11:55,517.517 INFO    ] Checking for camera pi updates...
[2026-06-12 15:11:55,536.536 INFO    ] 200
[2026-06-12 15:11:55,538.538 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:11:55,561.561 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 15:11:55,620.620 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 15:11:55,622.622 INFO    ] No camera update needed
[2026-06-12 15:11:55,623.623 INFO    ] Script finished. Safe exiting...
[2026-06-12 15:11:55,624.624 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 15:11:55,627.627 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 15:11:55,630.630 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 15:11:57,668.668 INFO    ] ================================================
[2026-06-12 15:11:57,684.684 INFO    ] Launching Daemon at Fri Jun 12 15:11:57 IST 2026
[2026-06-12 15:11:57,695.695 INFO    ] ================================================
[2026-06-12 15:11:58,079.079 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 15:11:58
[2026-06-12 15:11:58,424.424 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 15:11:58,577.577 INFO    ] Initializing speech engine...
[2026-06-12 15:11:58,584.584 INFO    ] 2026-06-12 15:11:58
[2026-06-12 15:11:58,795.795 INFO    ] 2026-06-12 15:11:58
[2026-06-12 15:11:58,825.825 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 15:11:59,012.012 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 15:11:59,022.022 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 15:11:59,179.179 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 15:11:59,223.223 INFO    ] time= 12/06/2026 15:11:59
[2026-06-12 15:11:59,247.247 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 15:11:59,253.253 INFO    ] Checking for existing commands in stream...
[2026-06-12 15:11:59,321.321 INFO    ] No existing commands found in stream
[2026-06-12 15:12:04,351.351 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 15:12:04,354.354 INFO    ] Waiting 1.11 seconds before fallback handling...
[2026-06-12 15:12:05,867.867 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 15:12:05,868.868 INFO    ] Checking for system updates...
[2026-06-12 15:12:05,889.889 INFO    ] 200
[2026-06-12 15:12:05,891.891 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:12:05,923.923 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 15:12:05,924.924 INFO    ] No update needed
[2026-06-12 15:12:05,926.926 INFO    ] Checking for camera pi updates...
[2026-06-12 15:12:05,953.953 INFO    ] 200
[2026-06-12 15:12:05,955.955 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:12:05,977.977 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 15:12:06,007.007 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 15:12:06,009.009 INFO    ] No camera update needed
[2026-06-12 15:12:06,010.010 INFO    ] Script finished. Safe exiting...
[2026-06-12 15:12:06,011.011 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 15:12:06,014.014 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 15:12:06,017.017 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 15:12:08,055.055 INFO    ] ================================================
[2026-06-12 15:12:08,071.071 INFO    ] Launching Daemon at Fri Jun 12 15:12:08 IST 2026
[2026-06-12 15:12:08,082.082 INFO    ] ================================================
[2026-06-12 15:12:08,441.441 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 15:12:08
[2026-06-12 15:12:08,761.761 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 15:12:08,894.894 INFO    ] Initializing speech engine...
[2026-06-12 15:12:08,899.899 INFO    ] 2026-06-12 15:12:08
[2026-06-12 15:12:09,106.106 INFO    ] 2026-06-12 15:12:09
[2026-06-12 15:12:09,138.138 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 15:12:09,299.299 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 15:12:09,334.334 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 15:12:09,513.513 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 15:12:09,576.576 INFO    ] time= 12/06/2026 15:12:09
[2026-06-12 15:12:09,606.606 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 15:12:09,624.624 INFO    ] Checking for existing commands in stream...
[2026-06-12 15:12:09,729.729 INFO    ] No existing commands found in stream
[2026-06-12 15:12:14,743.743 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 15:12:14,746.746 INFO    ] Waiting 2.04 seconds before fallback handling...
[2026-06-12 15:12:17,164.164 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 15:12:17,166.166 INFO    ] Checking for system updates...
[2026-06-12 15:12:17,186.186 INFO    ] 200
[2026-06-12 15:12:17,187.187 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:12:17,217.217 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 15:12:17,218.218 INFO    ] No update needed
[2026-06-12 15:12:17,220.220 INFO    ] Checking for camera pi updates...
[2026-06-12 15:12:17,239.239 INFO    ] 200
[2026-06-12 15:12:17,241.241 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:12:17,266.266 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 15:12:17,312.312 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 15:12:17,313.313 INFO    ] No camera update needed
[2026-06-12 15:12:17,315.315 INFO    ] Script finished. Safe exiting...
[2026-06-12 15:12:17,316.316 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 15:12:17,319.319 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 15:12:17,322.322 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 15:12:19,361.361 INFO    ] ================================================
[2026-06-12 15:12:19,377.377 INFO    ] Launching Daemon at Fri Jun 12 15:12:19 IST 2026
[2026-06-12 15:12:19,388.388 INFO    ] ================================================
[2026-06-12 15:12:19,749.749 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 15:12:19
[2026-06-12 15:12:20,093.093 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 15:12:20,240.240 INFO    ] Initializing speech engine...
[2026-06-12 15:12:20,250.250 INFO    ] 2026-06-12 15:12:20
[2026-06-12 15:12:20,464.464 INFO    ] 2026-06-12 15:12:20
[2026-06-12 15:12:20,493.493 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 15:12:20,683.683 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 15:12:20,692.692 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 15:12:20,865.865 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 15:12:20,912.912 INFO    ] time= 12/06/2026 15:12:20
[2026-06-12 15:12:20,922.922 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 15:12:20,924.924 INFO    ] Checking for existing commands in stream...
[2026-06-12 15:12:20,993.993 INFO    ] No existing commands found in stream
[2026-06-12 15:12:26,008.008 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 15:12:26,011.011 INFO    ] Waiting 0.33 seconds before fallback handling...
[2026-06-12 15:12:26,774.774 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 15:12:26,776.776 INFO    ] Checking for system updates...
[2026-06-12 15:12:26,796.796 INFO    ] 200
[2026-06-12 15:12:26,798.798 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:12:26,827.827 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 15:12:26,829.829 INFO    ] No update needed
[2026-06-12 15:12:26,831.831 INFO    ] Checking for camera pi updates...
[2026-06-12 15:12:26,850.850 INFO    ] 200
[2026-06-12 15:12:26,852.852 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:12:26,875.875 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 15:12:27,020.020 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 15:12:27,022.022 INFO    ] No camera update needed
[2026-06-12 15:12:27,023.023 INFO    ] Script finished. Safe exiting...
[2026-06-12 15:12:27,024.024 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 15:12:27,028.028 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 15:12:27,031.031 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 15:12:29,069.069 INFO    ] ================================================
[2026-06-12 15:12:29,085.085 INFO    ] Launching Daemon at Fri Jun 12 15:12:29 IST 2026
[2026-06-12 15:12:29,096.096 INFO    ] ================================================
[2026-06-12 15:12:29,464.464 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 15:12:29
[2026-06-12 15:12:29,812.812 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 15:12:29,968.968 INFO    ] Initializing speech engine...
[2026-06-12 15:12:29,975.975 INFO    ] 2026-06-12 15:12:29
[2026-06-12 15:12:30,179.179 INFO    ] 2026-06-12 15:12:30
[2026-06-12 15:12:30,207.207 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 15:12:30,396.396 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 15:12:30,406.406 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 15:12:30,543.543 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 15:12:30,606.606 INFO    ] time= 12/06/2026 15:12:30
[2026-06-12 15:12:30,630.630 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 15:12:30,636.636 INFO    ] Checking for existing commands in stream...
[2026-06-12 15:12:30,706.706 INFO    ] No existing commands found in stream
[2026-06-12 15:12:35,720.720 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 15:12:35,724.724 INFO    ] Waiting 1.02 seconds before fallback handling...
[2026-06-12 15:12:37,128.128 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 15:12:37,130.130 INFO    ] Checking for system updates...
[2026-06-12 15:12:37,151.151 INFO    ] 200
[2026-06-12 15:12:37,153.153 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:12:37,183.183 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 15:12:37,184.184 INFO    ] No update needed
[2026-06-12 15:12:37,186.186 INFO    ] Checking for camera pi updates...
[2026-06-12 15:12:37,207.207 INFO    ] 200
[2026-06-12 15:12:37,208.208 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:12:37,237.237 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 15:12:37,292.292 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 15:12:37,293.293 INFO    ] No camera update needed
[2026-06-12 15:12:37,295.295 INFO    ] Script finished. Safe exiting...
[2026-06-12 15:12:37,296.296 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 15:12:37,300.300 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 15:12:37,303.303 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 15:12:39,344.344 INFO    ] ================================================
[2026-06-12 15:12:39,360.360 INFO    ] Launching Daemon at Fri Jun 12 15:12:39 IST 2026
[2026-06-12 15:12:39,371.371 INFO    ] ================================================
[2026-06-12 15:12:39,758.758 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 15:12:39
[2026-06-12 15:12:40,103.103 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 15:12:40,258.258 INFO    ] Initializing speech engine...
[2026-06-12 15:12:40,263.263 INFO    ] 2026-06-12 15:12:40
[2026-06-12 15:12:40,472.472 INFO    ] 2026-06-12 15:12:40
[2026-06-12 15:12:40,498.498 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 15:12:40,684.684 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 15:12:40,693.693 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 15:12:40,833.833 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 15:12:40,890.890 INFO    ] time= 12/06/2026 15:12:40
[2026-06-12 15:12:40,914.914 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 15:12:40,921.921 INFO    ] Checking for existing commands in stream...
[2026-06-12 15:12:40,987.987 INFO    ] No existing commands found in stream
[2026-06-12 15:12:46,002.002 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 15:12:46,006.006 INFO    ] Waiting 0.14 seconds before fallback handling...
[2026-06-12 15:12:46,529.529 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 15:12:46,530.530 INFO    ] Checking for system updates...
[2026-06-12 15:12:46,551.551 INFO    ] 200
[2026-06-12 15:12:46,553.553 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:12:46,583.583 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 15:12:46,585.585 INFO    ] No update needed
[2026-06-12 15:12:46,586.586 INFO    ] Checking for camera pi updates...
[2026-06-12 15:12:46,606.606 INFO    ] 200
[2026-06-12 15:12:46,608.608 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:12:46,633.633 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 15:12:46,677.677 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 15:12:46,679.679 INFO    ] No camera update needed
[2026-06-12 15:12:46,680.680 INFO    ] Script finished. Safe exiting...
[2026-06-12 15:12:46,681.681 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 15:12:46,684.684 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 15:12:46,687.687 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 15:12:48,725.725 INFO    ] ================================================
[2026-06-12 15:12:48,743.743 INFO    ] Launching Daemon at Fri Jun 12 15:12:48 IST 2026
[2026-06-12 15:12:48,754.754 INFO    ] ================================================
[2026-06-12 15:12:49,120.120 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 15:12:49
[2026-06-12 15:12:49,433.433 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 15:12:49,565.565 INFO    ] Initializing speech engine...
[2026-06-12 15:12:49,577.577 INFO    ] 2026-06-12 15:12:49
[2026-06-12 15:12:49,784.784 INFO    ] 2026-06-12 15:12:49
[2026-06-12 15:12:49,813.813 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 15:12:49,998.998 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 15:12:50,002.002 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 15:12:50,137.137 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 15:12:50,201.201 INFO    ] time= 12/06/2026 15:12:50
[2026-06-12 15:12:50,229.229 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 15:12:50,235.235 INFO    ] Checking for existing commands in stream...
[2026-06-12 15:12:50,301.301 INFO    ] No existing commands found in stream
[2026-06-12 15:12:55,315.315 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 15:12:55,318.318 INFO    ] Waiting 0.20 seconds before fallback handling...
[2026-06-12 15:12:55,876.876 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 15:12:55,877.877 INFO    ] Checking for system updates...
[2026-06-12 15:12:55,897.897 INFO    ] 200
[2026-06-12 15:12:55,899.899 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:12:55,930.930 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 15:12:55,932.932 INFO    ] No update needed
[2026-06-12 15:12:55,933.933 INFO    ] Checking for camera pi updates...
[2026-06-12 15:12:55,955.955 INFO    ] 200
[2026-06-12 15:12:55,957.957 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:12:55,984.984 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 15:12:56,026.026 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 15:12:56,027.027 INFO    ] No camera update needed
[2026-06-12 15:12:56,028.028 INFO    ] Script finished. Safe exiting...
[2026-06-12 15:12:56,030.030 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 15:12:56,033.033 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 15:12:56,035.035 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 15:12:58,075.075 INFO    ] ================================================
[2026-06-12 15:12:58,092.092 INFO    ] Launching Daemon at Fri Jun 12 15:12:58 IST 2026
[2026-06-12 15:12:58,104.104 INFO    ] ================================================
[2026-06-12 15:12:58,452.452 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 15:12:58
[2026-06-12 15:12:58,768.768 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 15:12:58,907.907 INFO    ] Initializing speech engine...
[2026-06-12 15:12:58,917.917 INFO    ] 2026-06-12 15:12:58
[2026-06-12 15:12:59,122.122 INFO    ] 2026-06-12 15:12:59
[2026-06-12 15:12:59,150.150 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 15:12:59,354.354 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 15:12:59,358.358 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 15:12:59,509.509 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 15:12:59,563.563 INFO    ] time= 12/06/2026 15:12:59
[2026-06-12 15:12:59,609.609 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 15:12:59,611.611 INFO    ] Checking for existing commands in stream...
[2026-06-12 15:12:59,716.716 INFO    ] No existing commands found in stream
[2026-06-12 15:13:04,725.725 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 15:13:04,728.728 INFO    ] Waiting 0.14 seconds before fallback handling...
[2026-06-12 15:13:05,236.236 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 15:13:05,238.238 INFO    ] Checking for system updates...
[2026-06-12 15:13:05,259.259 INFO    ] 200
[2026-06-12 15:13:05,260.260 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:13:05,293.293 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 15:13:05,295.295 INFO    ] No update needed
[2026-06-12 15:13:05,296.296 INFO    ] Checking for camera pi updates...
[2026-06-12 15:13:05,316.316 INFO    ] 200
[2026-06-12 15:13:05,317.317 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:13:05,340.340 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 15:13:05,382.382 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 15:13:05,384.384 INFO    ] No camera update needed
[2026-06-12 15:13:05,385.385 INFO    ] Script finished. Safe exiting...
[2026-06-12 15:13:05,386.386 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 15:13:05,390.390 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 15:13:05,393.393 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 15:13:07,432.432 INFO    ] ================================================
[2026-06-12 15:13:07,448.448 INFO    ] Launching Daemon at Fri Jun 12 15:13:07 IST 2026
[2026-06-12 15:13:07,460.460 INFO    ] ================================================
[2026-06-12 15:13:07,815.815 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 15:13:07
[2026-06-12 15:13:08,160.160 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 15:13:08,315.315 INFO    ] Initializing speech engine...
[2026-06-12 15:13:08,318.318 INFO    ] 2026-06-12 15:13:08
[2026-06-12 15:13:08,525.525 INFO    ] 2026-06-12 15:13:08
[2026-06-12 15:13:08,555.555 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 15:13:08,738.738 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 15:13:08,748.748 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 15:13:08,897.897 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 15:13:08,946.946 INFO    ] time= 12/06/2026 15:13:08
[2026-06-12 15:13:08,967.967 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 15:13:08,973.973 INFO    ] Checking for existing commands in stream...
[2026-06-12 15:13:09,040.040 INFO    ] No existing commands found in stream
[2026-06-12 15:13:14,070.070 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 15:13:14,074.074 INFO    ] Waiting 1.01 seconds before fallback handling...
[2026-06-12 15:13:15,499.499 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 15:13:15,501.501 INFO    ] Checking for system updates...
[2026-06-12 15:13:15,522.522 INFO    ] 200
[2026-06-12 15:13:15,524.524 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:13:15,554.554 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 15:13:15,556.556 INFO    ] No update needed
[2026-06-12 15:13:15,557.557 INFO    ] Checking for camera pi updates...
[2026-06-12 15:13:15,578.578 INFO    ] 200
[2026-06-12 15:13:15,579.579 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:13:15,602.602 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 15:13:15,651.651 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 15:13:15,652.652 INFO    ] No camera update needed
[2026-06-12 15:13:15,653.653 INFO    ] Script finished. Safe exiting...
[2026-06-12 15:13:15,654.654 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 15:13:15,657.657 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 15:13:15,661.661 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 15:13:17,701.701 INFO    ] ================================================
[2026-06-12 15:13:17,717.717 INFO    ] Launching Daemon at Fri Jun 12 15:13:17 IST 2026
[2026-06-12 15:13:17,729.729 INFO    ] ================================================
[2026-06-12 15:13:18,104.104 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 15:13:18
[2026-06-12 15:13:18,448.448 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 15:13:18,601.601 INFO    ] Initializing speech engine...
[2026-06-12 15:13:18,606.606 INFO    ] 2026-06-12 15:13:18
[2026-06-12 15:13:18,815.815 INFO    ] 2026-06-12 15:13:18
[2026-06-12 15:13:18,844.844 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 15:13:19,155.155 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 15:13:19,208.208 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 15:13:19,370.370 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 15:13:19,373.373 INFO    ] time= 12/06/2026 15:13:19
[2026-06-12 15:13:19,376.376 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 15:13:19,379.379 INFO    ] Checking for existing commands in stream...
[2026-06-12 15:13:19,449.449 INFO    ] No existing commands found in stream
[2026-06-12 15:13:24,460.460 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 15:13:24,464.464 INFO    ] Waiting 2.72 seconds before fallback handling...
[2026-06-12 15:13:27,636.636 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 15:13:27,637.637 INFO    ] Checking for system updates...
[2026-06-12 15:13:27,660.660 INFO    ] 200
[2026-06-12 15:13:27,661.661 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:13:27,693.693 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 15:13:27,695.695 INFO    ] No update needed
[2026-06-12 15:13:27,696.696 INFO    ] Checking for camera pi updates...
[2026-06-12 15:13:27,717.717 INFO    ] 200
[2026-06-12 15:13:27,718.718 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:13:27,745.745 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 15:13:27,788.788 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 15:13:27,790.790 INFO    ] No camera update needed
[2026-06-12 15:13:27,792.792 INFO    ] Script finished. Safe exiting...
[2026-06-12 15:13:27,793.793 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 15:13:27,796.796 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 15:13:27,799.799 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 15:13:29,839.839 INFO    ] ================================================
[2026-06-12 15:13:29,855.855 INFO    ] Launching Daemon at Fri Jun 12 15:13:29 IST 2026
[2026-06-12 15:13:29,867.867 INFO    ] ================================================
[2026-06-12 15:13:30,217.217 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 15:13:30
[2026-06-12 15:13:30,535.535 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 15:13:30,684.684 INFO    ] Initializing speech engine...
[2026-06-12 15:13:30,690.690 INFO    ] 2026-06-12 15:13:30
[2026-06-12 15:13:30,911.911 INFO    ] 2026-06-12 15:13:30
[2026-06-12 15:13:30,942.942 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 15:13:31,144.144 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 15:13:31,153.153 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 15:13:31,289.289 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 15:13:31,356.356 INFO    ] time= 12/06/2026 15:13:31
[2026-06-12 15:13:31,386.386 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 15:13:31,407.407 INFO    ] Checking for existing commands in stream...
[2026-06-12 15:13:31,483.483 INFO    ] No existing commands found in stream
[2026-06-12 15:13:36,516.516 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 15:13:36,519.519 INFO    ] Waiting 3.18 seconds before fallback handling...
[2026-06-12 15:13:40,055.055 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 15:13:40,056.056 INFO    ] Checking for system updates...
[2026-06-12 15:13:40,078.078 INFO    ] 200
[2026-06-12 15:13:40,080.080 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:13:40,110.110 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 15:13:40,111.111 INFO    ] No update needed
[2026-06-12 15:13:40,113.113 INFO    ] Checking for camera pi updates...
[2026-06-12 15:13:40,134.134 INFO    ] 200
[2026-06-12 15:13:40,135.135 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:13:40,158.158 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 15:13:40,211.211 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 15:13:40,212.212 INFO    ] No camera update needed
[2026-06-12 15:13:40,214.214 INFO    ] Script finished. Safe exiting...
[2026-06-12 15:13:40,215.215 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 15:13:40,218.218 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 15:13:40,221.221 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 15:13:42,259.259 INFO    ] ================================================
[2026-06-12 15:13:42,275.275 INFO    ] Launching Daemon at Fri Jun 12 15:13:42 IST 2026
[2026-06-12 15:13:42,288.288 INFO    ] ================================================
[2026-06-12 15:13:42,641.641 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 15:13:42
[2026-06-12 15:13:42,954.954 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 15:13:43,082.082 INFO    ] Initializing speech engine...
[2026-06-12 15:13:43,087.087 INFO    ] 2026-06-12 15:13:43
[2026-06-12 15:13:43,305.305 INFO    ] 2026-06-12 15:13:43
[2026-06-12 15:13:43,334.334 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 15:13:43,521.521 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 15:13:43,529.529 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 15:13:43,677.677 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 15:13:43,730.730 INFO    ] time= 12/06/2026 15:13:43
[2026-06-12 15:13:43,753.753 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 15:13:43,759.759 INFO    ] Checking for existing commands in stream...
[2026-06-12 15:13:43,825.825 INFO    ] No existing commands found in stream
[2026-06-12 15:13:48,836.836 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 15:13:48,838.838 INFO    ] Waiting 0.64 seconds before fallback handling...
[2026-06-12 15:13:49,875.875 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 15:13:49,876.876 INFO    ] Checking for system updates...
[2026-06-12 15:13:49,897.897 INFO    ] 200
[2026-06-12 15:13:49,898.898 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:13:49,928.928 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 15:13:49,929.929 INFO    ] No update needed
[2026-06-12 15:13:49,931.931 INFO    ] Checking for camera pi updates...
[2026-06-12 15:13:49,950.950 INFO    ] 200
[2026-06-12 15:13:49,951.951 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:13:49,976.976 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 15:13:50,028.028 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 15:13:50,029.029 INFO    ] No camera update needed
[2026-06-12 15:13:50,031.031 INFO    ] Script finished. Safe exiting...
[2026-06-12 15:13:50,032.032 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 15:13:50,035.035 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 15:13:50,038.038 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 15:13:52,080.080 INFO    ] ================================================
[2026-06-12 15:13:52,097.097 INFO    ] Launching Daemon at Fri Jun 12 15:13:52 IST 2026
[2026-06-12 15:13:52,109.109 INFO    ] ================================================
[2026-06-12 15:13:52,458.458 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 15:13:52
[2026-06-12 15:13:52,769.769 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 15:13:52,899.899 INFO    ] Initializing speech engine...
[2026-06-12 15:13:52,904.904 INFO    ] 2026-06-12 15:13:52
[2026-06-12 15:13:53,122.122 INFO    ] 2026-06-12 15:13:53
[2026-06-12 15:13:53,152.152 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 15:13:53,342.342 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 15:13:53,346.346 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 15:13:53,488.488 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 15:13:53,524.524 INFO    ] time= 12/06/2026 15:13:53
[2026-06-12 15:13:53,573.573 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 15:13:53,598.598 INFO    ] Checking for existing commands in stream...
[2026-06-12 15:13:53,676.676 INFO    ] No existing commands found in stream
[2026-06-12 15:13:58,686.686 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 15:13:58,689.689 INFO    ] Waiting 3.85 seconds before fallback handling...
[2026-06-12 15:14:02,857.857 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 15:14:02,859.859 INFO    ] Checking for system updates...
[2026-06-12 15:14:02,879.879 INFO    ] 200
[2026-06-12 15:14:02,881.881 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:14:02,914.914 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 15:14:02,916.916 INFO    ] No update needed
[2026-06-12 15:14:02,917.917 INFO    ] Checking for camera pi updates...
[2026-06-12 15:14:02,943.943 INFO    ] 200
[2026-06-12 15:14:02,945.945 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:14:02,986.986 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 15:14:03,023.023 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 15:14:03,025.025 INFO    ] No camera update needed
[2026-06-12 15:14:03,028.028 INFO    ] Script finished. Safe exiting...
[2026-06-12 15:14:03,029.029 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 15:14:03,032.032 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 15:14:03,035.035 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 15:14:05,074.074 INFO    ] ================================================
[2026-06-12 15:14:05,089.089 INFO    ] Launching Daemon at Fri Jun 12 15:14:05 IST 2026
[2026-06-12 15:14:05,101.101 INFO    ] ================================================
[2026-06-12 15:14:05,436.436 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 15:14:05
[2026-06-12 15:14:05,765.765 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 15:14:05,902.902 INFO    ] Initializing speech engine...
[2026-06-12 15:14:05,910.910 INFO    ] 2026-06-12 15:14:05
[2026-06-12 15:14:06,098.098 INFO    ] 2026-06-12 15:14:06
[2026-06-12 15:14:06,143.143 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 15:14:06,304.304 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 15:14:06,357.357 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 15:14:06,523.523 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 15:14:06,585.585 INFO    ] time= 12/06/2026 15:14:06
[2026-06-12 15:14:06,625.625 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 15:14:06,632.632 INFO    ] Checking for existing commands in stream...
[2026-06-12 15:14:06,704.704 INFO    ] No existing commands found in stream
[2026-06-12 15:14:11,715.715 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 15:14:11,717.717 INFO    ] Waiting 2.67 seconds before fallback handling...
[2026-06-12 15:14:16,037.037 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 15:14:16,040.040 INFO    ] Checking for system updates...
[2026-06-12 15:14:16,075.075 INFO    ] 200
[2026-06-12 15:14:16,078.078 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:14:16,130.130 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 15:14:16,133.133 INFO    ] No update needed
[2026-06-12 15:14:16,136.136 INFO    ] Checking for camera pi updates...
[2026-06-12 15:14:16,169.169 INFO    ] 200
[2026-06-12 15:14:16,172.172 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:14:16,197.197 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 15:14:16,241.241 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 15:14:16,243.243 INFO    ] No camera update needed
[2026-06-12 15:14:16,244.244 INFO    ] Script finished. Safe exiting...
[2026-06-12 15:14:16,245.245 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 15:14:16,248.248 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 15:14:16,251.251 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 15:14:18,290.290 INFO    ] ================================================
[2026-06-12 15:14:18,306.306 INFO    ] Launching Daemon at Fri Jun 12 15:14:18 IST 2026
[2026-06-12 15:14:18,317.317 INFO    ] ================================================
[2026-06-12 15:14:18,659.659 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 15:14:18
[2026-06-12 15:14:18,970.970 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 15:14:19,113.113 INFO    ] Initializing speech engine...
[2026-06-12 15:14:19,118.118 INFO    ] 2026-06-12 15:14:19
[2026-06-12 15:14:19,321.321 INFO    ] 2026-06-12 15:14:19
[2026-06-12 15:14:19,349.349 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 15:14:19,532.532 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 15:14:19,542.542 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 15:14:19,689.689 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 15:14:19,737.737 INFO    ] time= 12/06/2026 15:14:19
[2026-06-12 15:14:19,759.759 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 15:14:19,765.765 INFO    ] Checking for existing commands in stream...
[2026-06-12 15:14:19,831.831 INFO    ] No existing commands found in stream
[2026-06-12 15:14:24,841.841 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 15:14:24,843.843 INFO    ] Waiting 1.06 seconds before fallback handling...
[2026-06-12 15:14:26,333.333 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 15:14:26,334.334 INFO    ] Checking for system updates...
[2026-06-12 15:14:26,356.356 INFO    ] 200
[2026-06-12 15:14:26,357.357 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:14:26,388.388 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 15:14:26,389.389 INFO    ] No update needed
[2026-06-12 15:14:26,391.391 INFO    ] Checking for camera pi updates...
[2026-06-12 15:14:26,412.412 INFO    ] 200
[2026-06-12 15:14:26,414.414 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:14:26,440.440 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 15:14:26,491.491 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 15:14:26,492.492 INFO    ] No camera update needed
[2026-06-12 15:14:26,494.494 INFO    ] Script finished. Safe exiting...
[2026-06-12 15:14:26,495.495 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 15:14:26,498.498 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 15:14:26,501.501 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 15:14:28,543.543 INFO    ] ================================================
[2026-06-12 15:14:28,559.559 INFO    ] Launching Daemon at Fri Jun 12 15:14:28 IST 2026
[2026-06-12 15:14:28,571.571 INFO    ] ================================================
[2026-06-12 15:14:28,892.892 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 15:14:28
[2026-06-12 15:14:29,204.204 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 15:14:29,337.337 INFO    ] Initializing speech engine...
[2026-06-12 15:14:29,342.342 INFO    ] 2026-06-12 15:14:29
[2026-06-12 15:14:29,573.573 INFO    ] 2026-06-12 15:14:29
[2026-06-12 15:14:29,605.605 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 15:14:29,738.738 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 15:14:29,802.802 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 15:14:29,954.954 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 15:14:30,002.002 INFO    ] time= 12/06/2026 15:14:29
[2026-06-12 15:14:30,042.042 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 15:14:30,060.060 INFO    ] Checking for existing commands in stream...
[2026-06-12 15:14:30,137.137 INFO    ] No existing commands found in stream
[2026-06-12 15:14:35,147.147 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 15:14:35,150.150 INFO    ] Waiting 1.54 seconds before fallback handling...
[2026-06-12 15:14:37,080.080 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 15:14:37,082.082 INFO    ] Checking for system updates...
[2026-06-12 15:14:37,107.107 INFO    ] 200
[2026-06-12 15:14:37,109.109 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:14:37,138.138 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 15:14:37,140.140 INFO    ] No update needed
[2026-06-12 15:14:37,141.141 INFO    ] Checking for camera pi updates...
[2026-06-12 15:14:37,161.161 INFO    ] 200
[2026-06-12 15:14:37,163.163 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:14:37,185.185 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 15:14:37,230.230 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 15:14:37,231.231 INFO    ] No camera update needed
[2026-06-12 15:14:37,232.232 INFO    ] Script finished. Safe exiting...
[2026-06-12 15:14:37,234.234 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 15:14:37,236.236 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 15:14:37,239.239 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 15:14:39,278.278 INFO    ] ================================================
[2026-06-12 15:14:39,294.294 INFO    ] Launching Daemon at Fri Jun 12 15:14:39 IST 2026
[2026-06-12 15:14:39,305.305 INFO    ] ================================================
[2026-06-12 15:14:39,668.668 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 15:14:39
[2026-06-12 15:14:39,980.980 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 15:14:40,115.115 INFO    ] Initializing speech engine...
[2026-06-12 15:14:40,123.123 INFO    ] 2026-06-12 15:14:40
[2026-06-12 15:14:40,353.353 INFO    ] 2026-06-12 15:14:40
[2026-06-12 15:14:40,384.384 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 15:14:40,587.587 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 15:14:40,591.591 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 15:14:40,737.737 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 15:14:40,800.800 INFO    ] time= 12/06/2026 15:14:40
[2026-06-12 15:14:40,825.825 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 15:14:40,843.843 INFO    ] Checking for existing commands in stream...
[2026-06-12 15:14:40,921.921 INFO    ] No existing commands found in stream
[2026-06-12 15:14:45,931.931 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 15:14:45,934.934 INFO    ] Waiting 0.16 seconds before fallback handling...
[2026-06-12 15:14:46,451.451 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 15:14:46,453.453 INFO    ] Checking for system updates...
[2026-06-12 15:14:46,473.473 INFO    ] 200
[2026-06-12 15:14:46,475.475 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:14:46,505.505 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 15:14:46,506.506 INFO    ] No update needed
[2026-06-12 15:14:46,508.508 INFO    ] Checking for camera pi updates...
[2026-06-12 15:14:46,529.529 INFO    ] 200
[2026-06-12 15:14:46,531.531 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:14:46,556.556 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 15:14:46,600.600 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 15:14:46,601.601 INFO    ] No camera update needed
[2026-06-12 15:14:46,603.603 INFO    ] Script finished. Safe exiting...
[2026-06-12 15:14:46,604.604 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 15:14:46,608.608 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 15:14:46,611.611 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 15:14:48,650.650 INFO    ] ================================================
[2026-06-12 15:14:48,666.666 INFO    ] Launching Daemon at Fri Jun 12 15:14:48 IST 2026
[2026-06-12 15:14:48,678.678 INFO    ] ================================================
[2026-06-12 15:14:49,003.003 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 15:14:49
[2026-06-12 15:14:49,315.315 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 15:14:49,457.457 INFO    ] Initializing speech engine...
[2026-06-12 15:14:49,462.462 INFO    ] 2026-06-12 15:14:49
[2026-06-12 15:14:49,664.664 INFO    ] 2026-06-12 15:14:49
[2026-06-12 15:14:49,693.693 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 15:14:49,874.874 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 15:14:49,878.878 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 15:14:50,034.034 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 15:14:50,082.082 INFO    ] time= 12/06/2026 15:14:50
[2026-06-12 15:14:50,103.103 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 15:14:50,110.110 INFO    ] Checking for existing commands in stream...
[2026-06-12 15:14:50,176.176 INFO    ] No existing commands found in stream
[2026-06-12 15:14:55,190.190 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 15:14:55,193.193 INFO    ] Waiting 0.67 seconds before fallback handling...
[2026-06-12 15:14:56,224.224 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 15:14:56,226.226 INFO    ] Checking for system updates...
[2026-06-12 15:14:56,247.247 INFO    ] 200
[2026-06-12 15:14:56,248.248 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:14:56,278.278 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 15:14:56,280.280 INFO    ] No update needed
[2026-06-12 15:14:56,281.281 INFO    ] Checking for camera pi updates...
[2026-06-12 15:14:56,301.301 INFO    ] 200
[2026-06-12 15:14:56,302.302 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:14:56,327.327 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 15:14:56,372.372 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 15:14:56,374.374 INFO    ] No camera update needed
[2026-06-12 15:14:56,375.375 INFO    ] Script finished. Safe exiting...
[2026-06-12 15:14:56,376.376 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 15:14:56,380.380 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 15:14:56,383.383 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 15:14:58,422.422 INFO    ] ================================================
[2026-06-12 15:14:58,438.438 INFO    ] Launching Daemon at Fri Jun 12 15:14:58 IST 2026
[2026-06-12 15:14:58,450.450 INFO    ] ================================================
[2026-06-12 15:14:58,831.831 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 15:14:58
[2026-06-12 15:14:59,176.176 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 15:14:59,333.333 INFO    ] Initializing speech engine...
[2026-06-12 15:14:59,339.339 INFO    ] 2026-06-12 15:14:59
[2026-06-12 15:14:59,534.534 INFO    ] 2026-06-12 15:14:59
[2026-06-12 15:14:59,568.568 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 15:14:59,776.776 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 15:14:59,786.786 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 15:14:59,909.909 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 15:14:59,981.981 INFO    ] time= 12/06/2026 15:14:59
[2026-06-12 15:15:00,009.009 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 15:15:00,015.015 INFO    ] Checking for existing commands in stream...
[2026-06-12 15:15:00,082.082 INFO    ] No existing commands found in stream
[2026-06-12 15:15:05,097.097 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 15:15:05,100.100 INFO    ] Waiting 2.56 seconds before fallback handling...
[2026-06-12 15:15:08,056.056 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 15:15:08,057.057 INFO    ] Checking for system updates...
[2026-06-12 15:15:08,078.078 INFO    ] 200
[2026-06-12 15:15:08,080.080 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:15:08,110.110 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 15:15:08,112.112 INFO    ] No update needed
[2026-06-12 15:15:08,113.113 INFO    ] Checking for camera pi updates...
[2026-06-12 15:15:08,134.134 INFO    ] 200
[2026-06-12 15:15:08,135.135 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:15:08,161.161 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 15:15:08,213.213 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 15:15:08,215.215 INFO    ] No camera update needed
[2026-06-12 15:15:08,216.216 INFO    ] Script finished. Safe exiting...
[2026-06-12 15:15:08,217.217 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 15:15:08,221.221 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 15:15:08,224.224 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 15:15:10,267.267 INFO    ] ================================================
[2026-06-12 15:15:10,283.283 INFO    ] Launching Daemon at Fri Jun 12 15:15:10 IST 2026
[2026-06-12 15:15:10,295.295 INFO    ] ================================================
[2026-06-12 15:15:10,678.678 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 15:15:10
[2026-06-12 15:15:11,021.021 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 15:15:11,175.175 INFO    ] Initializing speech engine...
[2026-06-12 15:15:11,181.181 INFO    ] 2026-06-12 15:15:11
[2026-06-12 15:15:11,392.392 INFO    ] 2026-06-12 15:15:11
[2026-06-12 15:15:11,422.422 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 15:15:11,582.582 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 15:15:11,584.584 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 15:15:11,726.726 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 15:15:11,759.759 INFO    ] time= 12/06/2026 15:15:11
[2026-06-12 15:15:11,813.813 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 15:15:11,882.882 INFO    ] Checking for existing commands in stream...
[2026-06-12 15:15:11,994.994 INFO    ] No existing commands found in stream
[2026-06-12 15:15:17,013.013 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 15:15:17,016.016 INFO    ] Waiting 2.84 seconds before fallback handling...
[2026-06-12 15:15:20,234.234 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 15:15:20,236.236 INFO    ] Checking for system updates...
[2026-06-12 15:15:20,257.257 INFO    ] 200
[2026-06-12 15:15:20,258.258 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:15:20,293.293 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 15:15:20,294.294 INFO    ] No update needed
[2026-06-12 15:15:20,296.296 INFO    ] Checking for camera pi updates...
[2026-06-12 15:15:20,316.316 INFO    ] 200
[2026-06-12 15:15:20,317.317 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:15:20,342.342 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 15:15:20,387.387 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 15:15:20,389.389 INFO    ] No camera update needed
[2026-06-12 15:15:20,391.391 INFO    ] Script finished. Safe exiting...
[2026-06-12 15:15:20,392.392 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 15:15:20,395.395 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 15:15:20,398.398 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 15:15:22,438.438 INFO    ] ================================================
[2026-06-12 15:15:22,455.455 INFO    ] Launching Daemon at Fri Jun 12 15:15:22 IST 2026
[2026-06-12 15:15:22,466.466 INFO    ] ================================================
[2026-06-12 15:15:22,822.822 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 15:15:22
[2026-06-12 15:15:23,140.140 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 15:15:23,273.273 INFO    ] Initializing speech engine...
[2026-06-12 15:15:23,286.286 INFO    ] 2026-06-12 15:15:23
[2026-06-12 15:15:23,493.493 INFO    ] 2026-06-12 15:15:23
[2026-06-12 15:15:23,523.523 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 15:15:23,707.707 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 15:15:23,716.716 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 15:15:23,857.857 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 15:15:23,915.915 INFO    ] time= 12/06/2026 15:15:23
[2026-06-12 15:15:23,938.938 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 15:15:23,944.944 INFO    ] Checking for existing commands in stream...
[2026-06-12 15:15:24,011.011 INFO    ] No existing commands found in stream
[2026-06-12 15:15:29,020.020 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 15:15:29,023.023 INFO    ] Waiting 2.35 seconds before fallback handling...
[2026-06-12 15:15:31,731.731 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 15:15:31,733.733 INFO    ] Checking for system updates...
[2026-06-12 15:15:31,754.754 INFO    ] 200
[2026-06-12 15:15:31,756.756 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:15:31,787.787 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 15:15:31,789.789 INFO    ] No update needed
[2026-06-12 15:15:31,790.790 INFO    ] Checking for camera pi updates...
[2026-06-12 15:15:31,810.810 INFO    ] 200
[2026-06-12 15:15:31,811.811 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:15:31,834.834 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 15:15:31,879.879 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 15:15:31,881.881 INFO    ] No camera update needed
[2026-06-12 15:15:31,882.882 INFO    ] Script finished. Safe exiting...
[2026-06-12 15:15:31,883.883 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 15:15:31,887.887 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 15:15:31,891.891 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 15:15:33,924.924 INFO    ] ================================================
[2026-06-12 15:15:33,940.940 INFO    ] Launching Daemon at Fri Jun 12 15:15:33 IST 2026
[2026-06-12 15:15:33,951.951 INFO    ] ================================================
[2026-06-12 15:15:34,302.302 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 15:15:34
[2026-06-12 15:15:34,625.625 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 15:15:34,765.765 INFO    ] Initializing speech engine...
[2026-06-12 15:15:34,768.768 INFO    ] 2026-06-12 15:15:34
[2026-06-12 15:15:34,980.980 INFO    ] 2026-06-12 15:15:34
[2026-06-12 15:15:35,009.009 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 15:15:35,168.168 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 15:15:35,213.213 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 15:15:35,389.389 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 15:15:35,436.436 INFO    ] time= 12/06/2026 15:15:35
[2026-06-12 15:15:35,471.471 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 15:15:35,495.495 INFO    ] Checking for existing commands in stream...
[2026-06-12 15:15:35,603.603 INFO    ] No existing commands found in stream
[2026-06-12 15:15:40,612.612 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 15:15:40,615.615 INFO    ] Waiting 2.76 seconds before fallback handling...
[2026-06-12 15:15:43,766.766 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 15:15:43,767.767 INFO    ] Checking for system updates...
[2026-06-12 15:15:43,788.788 INFO    ] 200
[2026-06-12 15:15:43,789.789 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:15:43,821.821 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 15:15:43,822.822 INFO    ] No update needed
[2026-06-12 15:15:43,824.824 INFO    ] Checking for camera pi updates...
[2026-06-12 15:15:43,843.843 INFO    ] 200
[2026-06-12 15:15:43,844.844 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:15:43,869.869 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 15:15:43,916.916 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 15:15:43,917.917 INFO    ] No camera update needed
[2026-06-12 15:15:43,918.918 INFO    ] Script finished. Safe exiting...
[2026-06-12 15:15:43,920.920 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 15:15:43,923.923 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 15:15:43,925.925 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 15:15:45,964.964 INFO    ] ================================================
[2026-06-12 15:15:45,980.980 INFO    ] Launching Daemon at Fri Jun 12 15:15:45 IST 2026
[2026-06-12 15:15:45,991.991 INFO    ] ================================================
[2026-06-12 15:15:46,330.330 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 15:15:46
[2026-06-12 15:15:46,651.651 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 15:15:46,792.792 INFO    ] Initializing speech engine...
[2026-06-12 15:15:46,802.802 INFO    ] 2026-06-12 15:15:46
[2026-06-12 15:15:47,005.005 INFO    ] 2026-06-12 15:15:46
[2026-06-12 15:15:47,035.035 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 15:15:47,218.218 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 15:15:47,227.227 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 15:15:47,352.352 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 15:15:47,404.404 INFO    ] time= 12/06/2026 15:15:47
[2026-06-12 15:15:47,437.437 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 15:15:47,448.448 INFO    ] Checking for existing commands in stream...
[2026-06-12 15:15:47,545.545 INFO    ] No existing commands found in stream
[2026-06-12 15:15:52,559.559 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 15:15:52,562.562 INFO    ] Waiting 1.84 seconds before fallback handling...
[2026-06-12 15:15:54,774.774 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 15:15:54,775.775 INFO    ] Checking for system updates...
[2026-06-12 15:15:54,796.796 INFO    ] 200
[2026-06-12 15:15:54,797.797 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:15:54,827.827 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 15:15:54,828.828 INFO    ] No update needed
[2026-06-12 15:15:54,830.830 INFO    ] Checking for camera pi updates...
[2026-06-12 15:15:54,850.850 INFO    ] 200
[2026-06-12 15:15:54,852.852 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:15:54,876.876 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 15:15:54,929.929 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 15:15:54,931.931 INFO    ] No camera update needed
[2026-06-12 15:15:54,932.932 INFO    ] Script finished. Safe exiting...
[2026-06-12 15:15:54,933.933 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 15:15:54,936.936 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 15:15:54,939.939 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 15:15:56,979.979 INFO    ] ================================================
[2026-06-12 15:15:57,995.995 INFO    ] Launching Daemon at Fri Jun 12 15:15:56 IST 2026
[2026-06-12 15:15:57,006.006 INFO    ] ================================================
[2026-06-12 15:15:57,367.367 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 15:15:57
[2026-06-12 15:15:57,679.679 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 15:15:57,821.821 INFO    ] Initializing speech engine...
[2026-06-12 15:15:57,826.826 INFO    ] 2026-06-12 15:15:57
[2026-06-12 15:15:58,029.029 INFO    ] 2026-06-12 15:15:58
[2026-06-12 15:15:58,059.059 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 15:15:58,242.242 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 15:15:58,250.250 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 15:15:58,385.385 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 15:15:58,448.448 INFO    ] time= 12/06/2026 15:15:58
[2026-06-12 15:15:58,471.471 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 15:15:58,477.477 INFO    ] Checking for existing commands in stream...
[2026-06-12 15:15:58,544.544 INFO    ] No existing commands found in stream
[2026-06-12 15:16:03,553.553 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 15:16:03,556.556 INFO    ] Waiting 0.78 seconds before fallback handling...
[2026-06-12 15:16:04,716.716 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 15:16:04,717.717 INFO    ] Checking for system updates...
[2026-06-12 15:16:04,737.737 INFO    ] 200
[2026-06-12 15:16:04,738.738 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:16:04,768.768 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 15:16:04,769.769 INFO    ] No update needed
[2026-06-12 15:16:04,771.771 INFO    ] Checking for camera pi updates...
[2026-06-12 15:16:04,791.791 INFO    ] 200
[2026-06-12 15:16:04,792.792 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:16:04,817.817 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 15:16:04,862.862 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 15:16:04,864.864 INFO    ] No camera update needed
[2026-06-12 15:16:04,865.865 INFO    ] Script finished. Safe exiting...
[2026-06-12 15:16:04,866.866 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 15:16:04,869.869 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 15:16:04,872.872 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 15:16:06,913.913 INFO    ] ================================================
[2026-06-12 15:16:06,928.928 INFO    ] Launching Daemon at Fri Jun 12 15:16:06 IST 2026
[2026-06-12 15:16:06,939.939 INFO    ] ================================================
[2026-06-12 15:16:07,296.296 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 15:16:07
[2026-06-12 15:16:07,638.638 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 15:16:07,790.790 INFO    ] Initializing speech engine...
[2026-06-12 15:16:07,796.796 INFO    ] 2026-06-12 15:16:07
[2026-06-12 15:16:08,005.005 INFO    ] 2026-06-12 15:16:07
[2026-06-12 15:16:08,034.034 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 15:16:08,221.221 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 15:16:08,232.232 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 15:16:08,412.412 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 15:16:08,452.452 INFO    ] time= 12/06/2026 15:16:08
[2026-06-12 15:16:08,458.458 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 15:16:08,461.461 INFO    ] Checking for existing commands in stream...
[2026-06-12 15:16:08,529.529 INFO    ] No existing commands found in stream
[2026-06-12 15:16:13,543.543 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 15:16:13,546.546 INFO    ] Waiting 3.45 seconds before fallback handling...
[2026-06-12 15:16:17,378.378 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 15:16:17,380.380 INFO    ] Checking for system updates...
[2026-06-12 15:16:17,403.403 INFO    ] 200
[2026-06-12 15:16:17,404.404 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:16:17,437.437 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 15:16:17,438.438 INFO    ] No update needed
[2026-06-12 15:16:17,440.440 INFO    ] Checking for camera pi updates...
[2026-06-12 15:16:17,460.460 INFO    ] 200
[2026-06-12 15:16:17,461.461 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:16:17,485.485 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 15:16:17,527.527 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 15:16:17,528.528 INFO    ] No camera update needed
[2026-06-12 15:16:17,530.530 INFO    ] Script finished. Safe exiting...
[2026-06-12 15:16:17,531.531 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 15:16:17,535.535 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 15:16:17,537.537 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 15:16:19,571.571 INFO    ] ================================================
[2026-06-12 15:16:19,581.581 INFO    ] Launching Daemon at Fri Jun 12 15:16:19 IST 2026
[2026-06-12 15:16:19,587.587 INFO    ] ================================================
[2026-06-12 15:16:19,926.926 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 15:16:19
[2026-06-12 15:16:20,278.278 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 15:16:20,434.434 INFO    ] Initializing speech engine...
[2026-06-12 15:16:20,438.438 INFO    ] 2026-06-12 15:16:20
[2026-06-12 15:16:20,646.646 INFO    ] 2026-06-12 15:16:20
[2026-06-12 15:16:20,675.675 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 15:16:20,862.862 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 15:16:20,873.873 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 15:16:21,057.057 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 15:16:21,090.090 INFO    ] time= 12/06/2026 15:16:21
[2026-06-12 15:16:21,096.096 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 15:16:21,098.098 INFO    ] Checking for existing commands in stream...
[2026-06-12 15:16:21,165.165 INFO    ] No existing commands found in stream
[2026-06-12 15:16:26,175.175 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 15:16:26,178.178 INFO    ] Waiting 0.45 seconds before fallback handling...
[2026-06-12 15:16:27,020.020 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 15:16:27,022.022 INFO    ] Checking for system updates...
[2026-06-12 15:16:27,042.042 INFO    ] 200
[2026-06-12 15:16:27,043.043 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:16:27,075.075 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 15:16:27,077.077 INFO    ] No update needed
[2026-06-12 15:16:27,078.078 INFO    ] Checking for camera pi updates...
[2026-06-12 15:16:27,099.099 INFO    ] 200
[2026-06-12 15:16:27,100.100 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:16:27,123.123 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 15:16:27,167.167 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 15:16:27,168.168 INFO    ] No camera update needed
[2026-06-12 15:16:27,170.170 INFO    ] Script finished. Safe exiting...
[2026-06-12 15:16:27,171.171 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 15:16:27,174.174 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 15:16:27,177.177 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 15:16:29,215.215 INFO    ] ================================================
[2026-06-12 15:16:29,231.231 INFO    ] Launching Daemon at Fri Jun 12 15:16:29 IST 2026
[2026-06-12 15:16:29,242.242 INFO    ] ================================================
[2026-06-12 15:16:29,602.602 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 15:16:29
[2026-06-12 15:16:29,947.947 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 15:16:30,101.101 INFO    ] Initializing speech engine...
[2026-06-12 15:16:30,104.104 INFO    ] 2026-06-12 15:16:30
[2026-06-12 15:16:30,305.305 INFO    ] 2026-06-12 15:16:30
[2026-06-12 15:16:30,334.334 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 15:16:30,519.519 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 15:16:30,528.528 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 15:16:30,672.672 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 15:16:30,726.726 INFO    ] time= 12/06/2026 15:16:30
[2026-06-12 15:16:30,748.748 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 15:16:30,754.754 INFO    ] Checking for existing commands in stream...
[2026-06-12 15:16:30,820.820 INFO    ] No existing commands found in stream
[2026-06-12 15:16:35,834.834 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 15:16:35,837.837 INFO    ] Waiting 0.62 seconds before fallback handling...
[2026-06-12 15:16:36,860.860 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 15:16:36,862.862 INFO    ] Checking for system updates...
[2026-06-12 15:16:36,882.882 INFO    ] 200
[2026-06-12 15:16:36,883.883 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:16:36,913.913 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 15:16:36,914.914 INFO    ] No update needed
[2026-06-12 15:16:36,915.915 INFO    ] Checking for camera pi updates...
[2026-06-12 15:16:36,934.934 INFO    ] 200
[2026-06-12 15:16:36,935.935 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:16:36,958.958 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 15:16:37,100.100 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 15:16:37,102.102 INFO    ] No camera update needed
[2026-06-12 15:16:37,103.103 INFO    ] Script finished. Safe exiting...
[2026-06-12 15:16:37,104.104 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 15:16:37,107.107 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 15:16:37,110.110 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 15:16:39,142.142 INFO    ] ================================================
[2026-06-12 15:16:39,158.158 INFO    ] Launching Daemon at Fri Jun 12 15:16:39 IST 2026
[2026-06-12 15:16:39,169.169 INFO    ] ================================================
[2026-06-12 15:16:39,555.555 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 15:16:39
[2026-06-12 15:16:39,898.898 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 15:16:40,049.049 INFO    ] Initializing speech engine...
[2026-06-12 15:16:40,056.056 INFO    ] 2026-06-12 15:16:40
[2026-06-12 15:16:40,263.263 INFO    ] 2026-06-12 15:16:40
[2026-06-12 15:16:40,292.292 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 15:16:40,477.477 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 15:16:40,487.487 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 15:16:40,660.660 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 15:16:40,699.699 INFO    ] time= 12/06/2026 15:16:40
[2026-06-12 15:16:40,709.709 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 15:16:40,711.711 INFO    ] Checking for existing commands in stream...
[2026-06-12 15:16:40,801.801 INFO    ] No existing commands found in stream
[2026-06-12 15:16:45,815.815 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 15:16:45,818.818 INFO    ] Waiting 2.38 seconds before fallback handling...
[2026-06-12 15:16:48,593.593 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 15:16:48,595.595 INFO    ] Checking for system updates...
[2026-06-12 15:16:48,615.615 INFO    ] 200
[2026-06-12 15:16:48,617.617 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:16:48,647.647 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 15:16:48,649.649 INFO    ] No update needed
[2026-06-12 15:16:48,650.650 INFO    ] Checking for camera pi updates...
[2026-06-12 15:16:48,670.670 INFO    ] 200
[2026-06-12 15:16:48,672.672 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:16:48,695.695 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 15:16:48,739.739 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 15:16:48,741.741 INFO    ] No camera update needed
[2026-06-12 15:16:48,742.742 INFO    ] Script finished. Safe exiting...
[2026-06-12 15:16:48,743.743 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 15:16:48,746.746 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 15:16:48,749.749 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 15:16:50,789.789 INFO    ] ================================================
[2026-06-12 15:16:50,804.804 INFO    ] Launching Daemon at Fri Jun 12 15:16:50 IST 2026
[2026-06-12 15:16:50,816.816 INFO    ] ================================================
[2026-06-12 15:16:51,147.147 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 15:16:51
[2026-06-12 15:16:51,460.460 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 15:16:51,589.589 INFO    ] Initializing speech engine...
[2026-06-12 15:16:51,594.594 INFO    ] 2026-06-12 15:16:51
[2026-06-12 15:16:51,822.822 INFO    ] 2026-06-12 15:16:51
[2026-06-12 15:16:51,853.853 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 15:16:52,052.052 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 15:16:52,056.056 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 15:16:52,196.196 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 15:16:52,247.247 INFO    ] time= 12/06/2026 15:16:52
[2026-06-12 15:16:52,287.287 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 15:16:52,304.304 INFO    ] Checking for existing commands in stream...
[2026-06-12 15:16:52,381.381 INFO    ] No existing commands found in stream
[2026-06-12 15:16:57,395.395 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 15:16:57,398.398 INFO    ] Waiting 2.49 seconds before fallback handling...
[2026-06-12 15:17:00,273.273 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 15:17:00,275.275 INFO    ] Checking for system updates...
[2026-06-12 15:17:00,296.296 INFO    ] 200
[2026-06-12 15:17:00,298.298 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:17:00,330.330 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 15:17:00,331.331 INFO    ] No update needed
[2026-06-12 15:17:00,332.332 INFO    ] Checking for camera pi updates...
[2026-06-12 15:17:00,351.351 INFO    ] 200
[2026-06-12 15:17:00,353.353 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:17:00,375.375 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 15:17:00,420.420 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 15:17:00,421.421 INFO    ] No camera update needed
[2026-06-12 15:17:00,423.423 INFO    ] Script finished. Safe exiting...
[2026-06-12 15:17:00,424.424 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 15:17:00,427.427 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 15:17:00,430.430 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 15:17:02,455.455 INFO    ] ================================================
[2026-06-12 15:17:02,464.464 INFO    ] Launching Daemon at Fri Jun 12 15:17:02 IST 2026
[2026-06-12 15:17:02,470.470 INFO    ] ================================================
[2026-06-12 15:17:02,807.807 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 15:17:02
[2026-06-12 15:17:03,130.130 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 15:17:03,260.260 INFO    ] Initializing speech engine...
[2026-06-12 15:17:03,274.274 INFO    ] 2026-06-12 15:17:03
[2026-06-12 15:17:03,483.483 INFO    ] 2026-06-12 15:17:03
[2026-06-12 15:17:03,512.512 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 15:17:03,697.697 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 15:17:03,700.700 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 15:17:03,840.840 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 15:17:03,904.904 INFO    ] time= 12/06/2026 15:17:03
[2026-06-12 15:17:03,931.931 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 15:17:03,937.937 INFO    ] Checking for existing commands in stream...
[2026-06-12 15:17:04,029.029 INFO    ] No existing commands found in stream
[2026-06-12 15:17:09,036.036 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 15:17:09,038.038 INFO    ] Waiting 3.17 seconds before fallback handling...
[2026-06-12 15:17:12,617.617 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 15:17:12,619.619 INFO    ] Checking for system updates...
[2026-06-12 15:17:12,639.639 INFO    ] 200
[2026-06-12 15:17:12,641.641 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:17:12,673.673 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 15:17:12,674.674 INFO    ] No update needed
[2026-06-12 15:17:12,675.675 INFO    ] Checking for camera pi updates...
[2026-06-12 15:17:12,695.695 INFO    ] 200
[2026-06-12 15:17:12,696.696 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:17:12,719.719 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 15:17:12,764.764 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 15:17:12,766.766 INFO    ] No camera update needed
[2026-06-12 15:17:12,767.767 INFO    ] Script finished. Safe exiting...
[2026-06-12 15:17:12,768.768 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 15:17:12,771.771 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 15:17:12,774.774 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 15:17:14,812.812 INFO    ] ================================================
[2026-06-12 15:17:14,828.828 INFO    ] Launching Daemon at Fri Jun 12 15:17:14 IST 2026
[2026-06-12 15:17:14,839.839 INFO    ] ================================================
[2026-06-12 15:17:15,230.230 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 15:17:15
[2026-06-12 15:17:15,572.572 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 15:17:15,723.723 INFO    ] Initializing speech engine...
[2026-06-12 15:17:15,728.728 INFO    ] 2026-06-12 15:17:15
[2026-06-12 15:17:15,935.935 INFO    ] 2026-06-12 15:17:15
[2026-06-12 15:17:15,963.963 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 15:17:16,146.146 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 15:17:16,150.150 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 15:17:16,285.285 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 15:17:16,352.352 INFO    ] time= 12/06/2026 15:17:16
[2026-06-12 15:17:16,376.376 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 15:17:16,383.383 INFO    ] Checking for existing commands in stream...
[2026-06-12 15:17:16,473.473 INFO    ] No existing commands found in stream
[2026-06-12 15:17:21,482.482 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 15:17:21,485.485 INFO    ] Waiting 1.31 seconds before fallback handling...
[2026-06-12 15:17:23,174.174 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 15:17:23,176.176 INFO    ] Checking for system updates...
[2026-06-12 15:17:23,197.197 INFO    ] 200
[2026-06-12 15:17:23,198.198 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:17:23,230.230 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 15:17:23,232.232 INFO    ] No update needed
[2026-06-12 15:17:23,233.233 INFO    ] Checking for camera pi updates...
[2026-06-12 15:17:23,253.253 INFO    ] 200
[2026-06-12 15:17:23,255.255 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:17:23,279.279 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 15:17:23,321.321 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 15:17:23,322.322 INFO    ] No camera update needed
[2026-06-12 15:17:23,324.324 INFO    ] Script finished. Safe exiting...
[2026-06-12 15:17:23,325.325 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 15:17:23,328.328 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 15:17:23,331.331 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 15:17:25,369.369 INFO    ] ================================================
[2026-06-12 15:17:25,386.386 INFO    ] Launching Daemon at Fri Jun 12 15:17:25 IST 2026
[2026-06-12 15:17:25,396.396 INFO    ] ================================================
[2026-06-12 15:17:25,725.725 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 15:17:25
[2026-06-12 15:17:26,042.042 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 15:17:26,186.186 INFO    ] Initializing speech engine...
[2026-06-12 15:17:26,192.192 INFO    ] 2026-06-12 15:17:26
[2026-06-12 15:17:26,397.397 INFO    ] 2026-06-12 15:17:26
[2026-06-12 15:17:26,425.425 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 15:17:26,613.613 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 15:17:26,624.624 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 15:17:26,801.801 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 15:17:26,839.839 INFO    ] time= 12/06/2026 15:17:26
[2026-06-12 15:17:26,844.844 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 15:17:26,846.846 INFO    ] Checking for existing commands in stream...
[2026-06-12 15:17:26,913.913 INFO    ] No existing commands found in stream
[2026-06-12 15:17:31,926.926 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 15:17:31,928.928 INFO    ] Waiting 2.53 seconds before fallback handling...
[2026-06-12 15:17:34,847.847 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 15:17:34,849.849 INFO    ] Checking for system updates...
[2026-06-12 15:17:34,870.870 INFO    ] 200
[2026-06-12 15:17:34,871.871 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:17:34,901.901 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 15:17:34,903.903 INFO    ] No update needed
[2026-06-12 15:17:34,904.904 INFO    ] Checking for camera pi updates...
[2026-06-12 15:17:34,923.923 INFO    ] 200
[2026-06-12 15:17:34,924.924 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:17:34,947.947 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 15:17:34,996.996 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 15:17:34,998.998 INFO    ] No camera update needed
[2026-06-12 15:17:34,999.999 INFO    ] Script finished. Safe exiting...
[2026-06-12 15:17:35,000.000 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 15:17:35,003.003 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 15:17:35,007.007 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 15:17:37,045.045 INFO    ] ================================================
[2026-06-12 15:17:37,061.061 INFO    ] Launching Daemon at Fri Jun 12 15:17:37 IST 2026
[2026-06-12 15:17:37,073.073 INFO    ] ================================================
[2026-06-12 15:17:37,437.437 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 15:17:37
[2026-06-12 15:17:37,747.747 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 15:17:37,888.888 INFO    ] Initializing speech engine...
[2026-06-12 15:17:37,899.899 INFO    ] 2026-06-12 15:17:37
[2026-06-12 15:17:38,113.113 INFO    ] 2026-06-12 15:17:38
[2026-06-12 15:17:38,143.143 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 15:17:38,280.280 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 15:17:38,322.322 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 15:17:38,488.488 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 15:17:38,540.540 INFO    ] time= 12/06/2026 15:17:38
[2026-06-12 15:17:38,573.573 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 15:17:38,596.596 INFO    ] Checking for existing commands in stream...
[2026-06-12 15:17:38,677.677 INFO    ] No existing commands found in stream
[2026-06-12 15:17:43,686.686 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 15:17:43,689.689 INFO    ] Waiting 0.14 seconds before fallback handling...
[2026-06-12 15:17:44,194.194 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 15:17:44,195.195 INFO    ] Checking for system updates...
[2026-06-12 15:17:44,217.217 INFO    ] 200
[2026-06-12 15:17:44,219.219 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:17:44,249.249 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 15:17:44,251.251 INFO    ] No update needed
[2026-06-12 15:17:44,252.252 INFO    ] Checking for camera pi updates...
[2026-06-12 15:17:44,274.274 INFO    ] 200
[2026-06-12 15:17:44,276.276 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:17:44,298.298 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 15:17:44,346.346 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 15:17:44,347.347 INFO    ] No camera update needed
[2026-06-12 15:17:44,348.348 INFO    ] Script finished. Safe exiting...
[2026-06-12 15:17:44,350.350 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 15:17:44,353.353 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 15:17:44,355.355 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 15:17:46,393.393 INFO    ] ================================================
[2026-06-12 15:17:46,408.408 INFO    ] Launching Daemon at Fri Jun 12 15:17:46 IST 2026
[2026-06-12 15:17:46,419.419 INFO    ] ================================================
[2026-06-12 15:17:46,796.796 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 15:17:46
[2026-06-12 15:17:47,134.134 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 15:17:47,286.286 INFO    ] Initializing speech engine...
[2026-06-12 15:17:47,291.291 INFO    ] 2026-06-12 15:17:47
[2026-06-12 15:17:47,502.502 INFO    ] 2026-06-12 15:17:47
[2026-06-12 15:17:47,530.530 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 15:17:47,718.718 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 15:17:47,730.730 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 15:17:47,885.885 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 15:17:47,946.946 INFO    ] time= 12/06/2026 15:17:47
[2026-06-12 15:17:47,952.952 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 15:17:47,958.958 INFO    ] Checking for existing commands in stream...
[2026-06-12 15:17:48,026.026 INFO    ] No existing commands found in stream
[2026-06-12 15:17:53,040.040 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 15:17:53,044.044 INFO    ] Waiting 1.92 seconds before fallback handling...
[2026-06-12 15:17:55,363.363 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 15:17:55,365.365 INFO    ] Checking for system updates...
[2026-06-12 15:17:55,385.385 INFO    ] 200
[2026-06-12 15:17:55,387.387 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:17:55,421.421 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 15:17:55,422.422 INFO    ] No update needed
[2026-06-12 15:17:55,423.423 INFO    ] Checking for camera pi updates...
[2026-06-12 15:17:55,443.443 INFO    ] 200
[2026-06-12 15:17:55,444.444 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:17:55,473.473 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 15:17:55,517.517 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 15:17:55,519.519 INFO    ] No camera update needed
[2026-06-12 15:17:55,520.520 INFO    ] Script finished. Safe exiting...
[2026-06-12 15:17:55,521.521 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 15:17:55,524.524 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 15:17:55,527.527 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 15:17:57,556.556 INFO    ] ================================================
[2026-06-12 15:17:57,565.565 INFO    ] Launching Daemon at Fri Jun 12 15:17:57 IST 2026
[2026-06-12 15:17:57,571.571 INFO    ] ================================================
[2026-06-12 15:17:57,923.923 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 15:17:57
[2026-06-12 15:17:58,235.235 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 15:17:58,377.377 INFO    ] Initializing speech engine...
[2026-06-12 15:17:58,382.382 INFO    ] 2026-06-12 15:17:58
[2026-06-12 15:17:58,584.584 INFO    ] 2026-06-12 15:17:58
[2026-06-12 15:17:58,613.613 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 15:17:58,797.797 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 15:17:58,807.807 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 15:17:58,955.955 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 15:17:59,003.003 INFO    ] time= 12/06/2026 15:17:58
[2026-06-12 15:17:59,025.025 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 15:17:59,032.032 INFO    ] Checking for existing commands in stream...
[2026-06-12 15:17:59,096.096 INFO    ] No existing commands found in stream
[2026-06-12 15:18:04,106.106 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 15:18:04,109.109 INFO    ] Waiting 1.01 seconds before fallback handling...
[2026-06-12 15:18:05,533.533 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 15:18:05,535.535 INFO    ] Checking for system updates...
[2026-06-12 15:18:05,564.564 INFO    ] 200
[2026-06-12 15:18:05,567.567 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:18:05,600.600 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 15:18:05,601.601 INFO    ] No update needed
[2026-06-12 15:18:05,603.603 INFO    ] Checking for camera pi updates...
[2026-06-12 15:18:05,623.623 INFO    ] 200
[2026-06-12 15:18:05,624.624 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:18:05,647.647 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 15:18:06,732.732 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 15:18:06,735.735 INFO    ] No camera update needed
[2026-06-12 15:18:06,737.737 INFO    ] Script finished. Safe exiting...
[2026-06-12 15:18:06,739.739 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 15:18:06,745.745 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 15:18:06,750.750 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 15:18:08,789.789 INFO    ] ================================================
[2026-06-12 15:18:08,805.805 INFO    ] Launching Daemon at Fri Jun 12 15:18:08 IST 2026
[2026-06-12 15:18:08,816.816 INFO    ] ================================================
[2026-06-12 15:18:09,163.163 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 15:18:09
[2026-06-12 15:18:09,477.477 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 15:18:09,609.609 INFO    ] Initializing speech engine...
[2026-06-12 15:18:09,613.613 INFO    ] 2026-06-12 15:18:09
[2026-06-12 15:18:09,831.831 INFO    ] 2026-06-12 15:18:09
[2026-06-12 15:18:09,861.861 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 15:18:10,051.051 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 15:18:10,062.062 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 15:18:10,203.203 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 15:18:10,263.263 INFO    ] time= 12/06/2026 15:18:10
[2026-06-12 15:18:10,288.288 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 15:18:10,293.293 INFO    ] Checking for existing commands in stream...
[2026-06-12 15:18:10,362.362 INFO    ] No existing commands found in stream
[2026-06-12 15:18:15,371.371 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 15:18:15,374.374 INFO    ] Waiting 3.96 seconds before fallback handling...
[2026-06-12 15:18:19,711.711 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 15:18:19,712.712 INFO    ] Checking for system updates...
[2026-06-12 15:18:19,732.732 INFO    ] 200
[2026-06-12 15:18:19,734.734 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:18:19,766.766 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 15:18:19,767.767 INFO    ] No update needed
[2026-06-12 15:18:19,769.769 INFO    ] Checking for camera pi updates...
[2026-06-12 15:18:19,789.789 INFO    ] 200
[2026-06-12 15:18:19,791.791 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:18:19,815.815 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 15:18:19,897.897 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 15:18:19,898.898 INFO    ] No camera update needed
[2026-06-12 15:18:19,899.899 INFO    ] Script finished. Safe exiting...
[2026-06-12 15:18:19,901.901 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 15:18:19,904.904 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 15:18:19,906.906 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 15:18:21,944.944 INFO    ] ================================================
[2026-06-12 15:18:21,961.961 INFO    ] Launching Daemon at Fri Jun 12 15:18:21 IST 2026
[2026-06-12 15:18:21,972.972 INFO    ] ================================================
[2026-06-12 15:18:22,301.301 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 15:18:22
[2026-06-12 15:18:22,618.618 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 15:18:22,763.763 INFO    ] Initializing speech engine...
[2026-06-12 15:18:22,768.768 INFO    ] 2026-06-12 15:18:22
[2026-06-12 15:18:22,972.972 INFO    ] 2026-06-12 15:18:22
[2026-06-12 15:18:23,000.000 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 15:18:23,185.185 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 15:18:23,193.193 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 15:18:23,343.343 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 15:18:23,397.397 INFO    ] time= 12/06/2026 15:18:23
[2026-06-12 15:18:23,413.413 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 15:18:23,420.420 INFO    ] Checking for existing commands in stream...
[2026-06-12 15:18:23,510.510 INFO    ] No existing commands found in stream
[2026-06-12 15:18:28,524.524 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 15:18:28,527.527 INFO    ] Waiting 3.55 seconds before fallback handling...
[2026-06-12 15:18:32,422.422 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 15:18:32,424.424 INFO    ] Checking for system updates...
[2026-06-12 15:18:32,444.444 INFO    ] 200
[2026-06-12 15:18:32,446.446 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:18:32,480.480 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 15:18:32,481.481 INFO    ] No update needed
[2026-06-12 15:18:32,483.483 INFO    ] Checking for camera pi updates...
[2026-06-12 15:18:32,502.502 INFO    ] 200
[2026-06-12 15:18:32,503.503 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:18:32,528.528 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 15:18:32,563.563 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 15:18:32,565.565 INFO    ] No camera update needed
[2026-06-12 15:18:32,566.566 INFO    ] Script finished. Safe exiting...
[2026-06-12 15:18:32,567.567 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 15:18:32,570.570 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 15:18:32,573.573 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 15:18:34,611.611 INFO    ] ================================================
[2026-06-12 15:18:34,626.626 INFO    ] Launching Daemon at Fri Jun 12 15:18:34 IST 2026
[2026-06-12 15:18:34,637.637 INFO    ] ================================================
[2026-06-12 15:18:34,981.981 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 15:18:34
[2026-06-12 15:18:35,294.294 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 15:18:35,425.425 INFO    ] Initializing speech engine...
[2026-06-12 15:18:35,428.428 INFO    ] 2026-06-12 15:18:35
[2026-06-12 15:18:35,643.643 INFO    ] 2026-06-12 15:18:35
[2026-06-12 15:18:35,672.672 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 15:18:35,857.857 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 15:18:35,865.865 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 15:18:36,011.011 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 15:18:36,063.063 INFO    ] time= 12/06/2026 15:18:36
[2026-06-12 15:18:36,087.087 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 15:18:36,093.093 INFO    ] Checking for existing commands in stream...
[2026-06-12 15:18:36,160.160 INFO    ] No existing commands found in stream
[2026-06-12 15:18:41,174.174 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 15:18:41,176.176 INFO    ] Waiting 1.68 seconds before fallback handling...
[2026-06-12 15:18:43,251.251 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 15:18:43,253.253 INFO    ] Checking for system updates...
[2026-06-12 15:18:43,274.274 INFO    ] 200
[2026-06-12 15:18:43,275.275 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:18:43,308.308 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 15:18:43,309.309 INFO    ] No update needed
[2026-06-12 15:18:43,310.310 INFO    ] Checking for camera pi updates...
[2026-06-12 15:18:43,330.330 INFO    ] 200
[2026-06-12 15:18:43,331.331 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:18:43,355.355 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 15:18:43,502.502 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 15:18:43,504.504 INFO    ] No camera update needed
[2026-06-12 15:18:43,505.505 INFO    ] Script finished. Safe exiting...
[2026-06-12 15:18:43,506.506 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 15:18:43,509.509 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 15:18:43,512.512 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 15:18:45,551.551 INFO    ] ================================================
[2026-06-12 15:18:45,567.567 INFO    ] Launching Daemon at Fri Jun 12 15:18:45 IST 2026
[2026-06-12 15:18:45,578.578 INFO    ] ================================================
[2026-06-12 15:18:45,947.947 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 15:18:45
[2026-06-12 15:18:46,260.260 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 15:18:46,391.391 INFO    ] Initializing speech engine...
[2026-06-12 15:18:46,398.398 INFO    ] 2026-06-12 15:18:46
[2026-06-12 15:18:46,610.610 INFO    ] 2026-06-12 15:18:46
[2026-06-12 15:18:46,639.639 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 15:18:46,823.823 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 15:18:46,826.826 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 15:18:46,973.973 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 15:18:47,031.031 INFO    ] time= 12/06/2026 15:18:46
[2026-06-12 15:18:47,053.053 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 15:18:47,060.060 INFO    ] Checking for existing commands in stream...
[2026-06-12 15:18:47,125.125 INFO    ] No existing commands found in stream
[2026-06-12 15:18:52,134.134 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 15:18:52,137.137 INFO    ] Waiting 0.13 seconds before fallback handling...
[2026-06-12 15:18:52,623.623 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 15:18:52,624.624 INFO    ] Checking for system updates...
[2026-06-12 15:18:52,645.645 INFO    ] 200
[2026-06-12 15:18:52,646.646 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:18:52,675.675 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 15:18:52,677.677 INFO    ] No update needed
[2026-06-12 15:18:52,678.678 INFO    ] Checking for camera pi updates...
[2026-06-12 15:18:52,699.699 INFO    ] 200
[2026-06-12 15:18:52,700.700 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:18:52,725.725 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 15:18:52,784.784 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 15:18:52,785.785 INFO    ] No camera update needed
[2026-06-12 15:18:52,786.786 INFO    ] Script finished. Safe exiting...
[2026-06-12 15:18:52,788.788 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 15:18:52,791.791 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 15:18:52,793.793 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 15:18:54,831.831 INFO    ] ================================================
[2026-06-12 15:18:54,847.847 INFO    ] Launching Daemon at Fri Jun 12 15:18:54 IST 2026
[2026-06-12 15:18:54,859.859 INFO    ] ================================================
[2026-06-12 15:18:55,240.240 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 15:18:55
[2026-06-12 15:18:55,578.578 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 15:18:55,732.732 INFO    ] Initializing speech engine...
[2026-06-12 15:18:55,737.737 INFO    ] 2026-06-12 15:18:55
[2026-06-12 15:18:55,954.954 INFO    ] 2026-06-12 15:18:55
[2026-06-12 15:18:55,984.984 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 15:18:56,142.142 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 15:18:56,183.183 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 15:18:56,331.331 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 15:18:56,379.379 INFO    ] time= 12/06/2026 15:18:56
[2026-06-12 15:18:56,401.401 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 15:18:56,408.408 INFO    ] Checking for existing commands in stream...
[2026-06-12 15:18:56,474.474 INFO    ] No existing commands found in stream
[2026-06-12 15:19:01,489.489 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 15:19:01,492.492 INFO    ] Waiting 0.64 seconds before fallback handling...
[2026-06-12 15:19:02,501.501 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 15:19:02,503.503 INFO    ] Checking for system updates...
[2026-06-12 15:19:02,536.536 INFO    ] 200
[2026-06-12 15:19:02,538.538 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:19:02,568.568 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 15:19:02,570.570 INFO    ] No update needed
[2026-06-12 15:19:02,572.572 INFO    ] Checking for camera pi updates...
[2026-06-12 15:19:02,597.597 INFO    ] 200
[2026-06-12 15:19:02,599.599 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:19:02,625.625 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 15:19:02,662.662 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 15:19:02,664.664 INFO    ] No camera update needed
[2026-06-12 15:19:02,665.665 INFO    ] Script finished. Safe exiting...
[2026-06-12 15:19:02,667.667 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 15:19:02,670.670 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 15:19:02,673.673 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 15:19:04,711.711 INFO    ] ================================================
[2026-06-12 15:19:04,726.726 INFO    ] Launching Daemon at Fri Jun 12 15:19:04 IST 2026
[2026-06-12 15:19:04,738.738 INFO    ] ================================================
[2026-06-12 15:19:05,091.091 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 15:19:05
[2026-06-12 15:19:05,402.402 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 15:19:05,532.532 INFO    ] Initializing speech engine...
[2026-06-12 15:19:05,540.540 INFO    ] 2026-06-12 15:19:05
[2026-06-12 15:19:05,765.765 INFO    ] 2026-06-12 15:19:05
[2026-06-12 15:19:05,795.795 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 15:19:05,979.979 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 15:19:05,990.990 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 15:19:06,174.174 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 15:19:06,207.207 INFO    ] time= 12/06/2026 15:19:06
[2026-06-12 15:19:06,213.213 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 15:19:06,215.215 INFO    ] Checking for existing commands in stream...
[2026-06-12 15:19:06,282.282 INFO    ] No existing commands found in stream
[2026-06-12 15:19:11,296.296 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 15:19:11,300.300 INFO    ] Waiting 2.57 seconds before fallback handling...
[2026-06-12 15:19:14,260.260 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 15:19:14,262.262 INFO    ] Checking for system updates...
[2026-06-12 15:19:14,283.283 INFO    ] 200
[2026-06-12 15:19:14,284.284 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:19:14,317.317 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 15:19:14,318.318 INFO    ] No update needed
[2026-06-12 15:19:14,320.320 INFO    ] Checking for camera pi updates...
[2026-06-12 15:19:14,341.341 INFO    ] 200
[2026-06-12 15:19:14,342.342 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:19:14,369.369 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 15:19:14,414.414 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 15:19:14,416.416 INFO    ] No camera update needed
[2026-06-12 15:19:14,417.417 INFO    ] Script finished. Safe exiting...
[2026-06-12 15:19:14,418.418 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 15:19:14,422.422 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 15:19:14,425.425 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 15:19:16,463.463 INFO    ] ================================================
[2026-06-12 15:19:16,479.479 INFO    ] Launching Daemon at Fri Jun 12 15:19:16 IST 2026
[2026-06-12 15:19:16,489.489 INFO    ] ================================================
[2026-06-12 15:19:16,840.840 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 15:19:16
[2026-06-12 15:19:17,178.178 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 15:19:17,319.319 INFO    ] Initializing speech engine...
[2026-06-12 15:19:17,328.328 INFO    ] 2026-06-12 15:19:17
[2026-06-12 15:19:17,547.547 INFO    ] 2026-06-12 15:19:17
[2026-06-12 15:19:17,577.577 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 15:19:17,764.764 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 15:19:17,768.768 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 15:19:17,906.906 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 15:19:17,975.975 INFO    ] time= 12/06/2026 15:19:17
[2026-06-12 15:19:17,999.999 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 15:19:18,005.005 INFO    ] Checking for existing commands in stream...
[2026-06-12 15:19:18,078.078 INFO    ] No existing commands found in stream
[2026-06-12 15:19:23,087.087 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 15:19:23,091.091 INFO    ] Waiting 2.44 seconds before fallback handling...
[2026-06-12 15:19:25,936.936 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 15:19:25,938.938 INFO    ] Checking for system updates...
[2026-06-12 15:19:25,960.960 INFO    ] 200
[2026-06-12 15:19:25,962.962 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:19:25,994.994 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 15:19:25,995.995 INFO    ] No update needed
[2026-06-12 15:19:25,997.997 INFO    ] Checking for camera pi updates...
[2026-06-12 15:19:26,017.017 INFO    ] 200
[2026-06-12 15:19:26,019.019 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:19:26,044.044 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 15:19:26,089.089 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 15:19:26,091.091 INFO    ] No camera update needed
[2026-06-12 15:19:26,092.092 INFO    ] Script finished. Safe exiting...
[2026-06-12 15:19:26,094.094 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 15:19:26,097.097 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 15:19:26,100.100 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 15:19:28,140.140 INFO    ] ================================================
[2026-06-12 15:19:28,155.155 INFO    ] Launching Daemon at Fri Jun 12 15:19:28 IST 2026
[2026-06-12 15:19:28,166.166 INFO    ] ================================================
[2026-06-12 15:19:28,492.492 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 15:19:28
[2026-06-12 15:19:28,804.804 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 15:19:28,938.938 INFO    ] Initializing speech engine...
[2026-06-12 15:19:28,941.941 INFO    ] 2026-06-12 15:19:28
[2026-06-12 15:19:29,161.161 INFO    ] 2026-06-12 15:19:29
[2026-06-12 15:19:29,188.188 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 15:19:29,378.378 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 15:19:29,388.388 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 15:19:29,544.544 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 15:19:29,589.589 INFO    ] time= 12/06/2026 15:19:29
[2026-06-12 15:19:29,610.610 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 15:19:29,612.612 INFO    ] Checking for existing commands in stream...
[2026-06-12 15:19:29,694.694 INFO    ] No existing commands found in stream
[2026-06-12 15:19:34,717.717 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 15:19:34,720.720 INFO    ] Waiting 3.32 seconds before fallback handling...
[2026-06-12 15:19:38,478.478 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 15:19:38,481.481 INFO    ] Checking for system updates...
[2026-06-12 15:19:38,516.516 INFO    ] 200
[2026-06-12 15:19:38,519.519 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:19:38,571.571 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 15:19:38,574.574 INFO    ] No update needed
[2026-06-12 15:19:38,576.576 INFO    ] Checking for camera pi updates...
[2026-06-12 15:19:38,606.606 INFO    ] 200
[2026-06-12 15:19:38,608.608 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:19:38,632.632 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 15:19:38,685.685 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 15:19:38,686.686 INFO    ] No camera update needed
[2026-06-12 15:19:38,687.687 INFO    ] Script finished. Safe exiting...
[2026-06-12 15:19:38,689.689 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 15:19:38,692.692 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 15:19:38,694.694 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 15:19:40,732.732 INFO    ] ================================================
[2026-06-12 15:19:40,747.747 INFO    ] Launching Daemon at Fri Jun 12 15:19:40 IST 2026
[2026-06-12 15:19:40,759.759 INFO    ] ================================================
[2026-06-12 15:19:41,103.103 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 15:19:41
[2026-06-12 15:19:41,416.416 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 15:19:41,546.546 INFO    ] Initializing speech engine...
[2026-06-12 15:19:41,554.554 INFO    ] 2026-06-12 15:19:41
[2026-06-12 15:19:41,767.767 INFO    ] 2026-06-12 15:19:41
[2026-06-12 15:19:41,796.796 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 15:19:41,983.983 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 15:19:41,992.992 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 15:19:42,170.170 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 15:19:42,200.200 INFO    ] time= 12/06/2026 15:19:42
[2026-06-12 15:19:42,216.216 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 15:19:42,222.222 INFO    ] Checking for existing commands in stream...
[2026-06-12 15:19:42,287.287 INFO    ] No existing commands found in stream
[2026-06-12 15:19:47,298.298 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 15:19:47,301.301 INFO    ] Waiting 1.15 seconds before fallback handling...
[2026-06-12 15:19:48,912.912 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 15:19:48,914.914 INFO    ] Checking for system updates...
[2026-06-12 15:19:48,934.934 INFO    ] 200
[2026-06-12 15:19:48,935.935 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:19:48,967.967 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 15:19:48,969.969 INFO    ] No update needed
[2026-06-12 15:19:48,970.970 INFO    ] Checking for camera pi updates...
[2026-06-12 15:19:48,989.989 INFO    ] 200
[2026-06-12 15:19:48,991.991 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:19:49,015.015 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 15:19:49,062.062 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 15:19:49,063.063 INFO    ] No camera update needed
[2026-06-12 15:19:49,065.065 INFO    ] Script finished. Safe exiting...
[2026-06-12 15:19:49,066.066 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 15:19:49,069.069 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 15:19:49,072.072 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 15:19:51,111.111 INFO    ] ================================================
[2026-06-12 15:19:51,125.125 INFO    ] Launching Daemon at Fri Jun 12 15:19:51 IST 2026
[2026-06-12 15:19:51,136.136 INFO    ] ================================================
[2026-06-12 15:19:51,495.495 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 15:19:51
[2026-06-12 15:19:51,807.807 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 15:19:51,950.950 INFO    ] Initializing speech engine...
[2026-06-12 15:19:51,954.954 INFO    ] 2026-06-12 15:19:51
[2026-06-12 15:19:52,161.161 INFO    ] 2026-06-12 15:19:52
[2026-06-12 15:19:52,191.191 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 15:19:52,376.376 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 15:19:52,385.385 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 15:19:52,538.538 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 15:19:52,593.593 INFO    ] time= 12/06/2026 15:19:52
[2026-06-12 15:19:52,609.609 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 15:19:52,616.616 INFO    ] Checking for existing commands in stream...
[2026-06-12 15:19:52,683.683 INFO    ] No existing commands found in stream
[2026-06-12 15:19:57,692.692 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 15:19:57,695.695 INFO    ] Waiting 0.81 seconds before fallback handling...
[2026-06-12 15:19:58,904.904 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 15:19:58,905.905 INFO    ] Checking for system updates...
[2026-06-12 15:19:58,927.927 INFO    ] 200
[2026-06-12 15:19:58,928.928 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:19:58,960.960 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 15:19:58,962.962 INFO    ] No update needed
[2026-06-12 15:19:58,963.963 INFO    ] Checking for camera pi updates...
[2026-06-12 15:19:58,982.982 INFO    ] 200
[2026-06-12 15:19:58,984.984 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:19:59,008.008 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 15:19:59,068.068 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 15:19:59,070.070 INFO    ] No camera update needed
[2026-06-12 15:19:59,071.071 INFO    ] Script finished. Safe exiting...
[2026-06-12 15:19:59,072.072 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 15:19:59,075.075 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 15:19:59,078.078 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 15:20:01,116.116 INFO    ] ================================================
[2026-06-12 15:20:01,131.131 INFO    ] Launching Daemon at Fri Jun 12 15:20:01 IST 2026
[2026-06-12 15:20:01,142.142 INFO    ] ================================================
[2026-06-12 15:20:01,479.479 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 15:20:01
[2026-06-12 15:20:01,825.825 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 15:20:02,412.412 INFO    ] Initializing speech engine...
[2026-06-12 15:20:02,414.414 INFO    ] 2026-06-12 15:20:02
[2026-06-12 15:20:02,752.752 INFO    ] 2026-06-12 15:20:02
[2026-06-12 15:20:02,766.766 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 15:20:02,900.900 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 15:20:02,907.907 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 15:20:03,099.099 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 15:20:03,157.157 INFO    ] time= 12/06/2026 15:20:03
[2026-06-12 15:20:03,193.193 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 15:20:03,194.194 INFO    ] Checking for existing commands in stream...
[2026-06-12 15:20:03,267.267 INFO    ] No existing commands found in stream
[2026-06-12 15:20:08,276.276 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 15:20:08,285.285 INFO    ] Waiting 2.94 seconds before fallback handling...
[2026-06-12 15:20:11,652.652 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 15:20:11,654.654 INFO    ] Checking for system updates...
[2026-06-12 15:20:11,675.675 INFO    ] 200
[2026-06-12 15:20:11,677.677 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:20:11,709.709 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 15:20:11,710.710 INFO    ] No update needed
[2026-06-12 15:20:11,712.712 INFO    ] Checking for camera pi updates...
[2026-06-12 15:20:11,731.731 INFO    ] 200
[2026-06-12 15:20:11,732.732 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:20:11,756.756 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 15:20:11,807.807 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 15:20:11,808.808 INFO    ] No camera update needed
[2026-06-12 15:20:11,810.810 INFO    ] Script finished. Safe exiting...
[2026-06-12 15:20:11,811.811 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 15:20:11,814.814 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 15:20:11,817.817 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 15:20:13,855.855 INFO    ] ================================================
[2026-06-12 15:20:13,872.872 INFO    ] Launching Daemon at Fri Jun 12 15:20:13 IST 2026
[2026-06-12 15:20:13,883.883 INFO    ] ================================================
[2026-06-12 15:20:14,230.230 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 15:20:14
[2026-06-12 15:20:14,572.572 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 15:20:14,726.726 INFO    ] Initializing speech engine...
[2026-06-12 15:20:14,732.732 INFO    ] 2026-06-12 15:20:14
[2026-06-12 15:20:14,938.938 INFO    ] 2026-06-12 15:20:14
[2026-06-12 15:20:14,967.967 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 15:20:15,160.160 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 15:20:15,165.165 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 15:20:15,349.349 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 15:20:15,382.382 INFO    ] time= 12/06/2026 15:20:15
[2026-06-12 15:20:15,388.388 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 15:20:15,390.390 INFO    ] Checking for existing commands in stream...
[2026-06-12 15:20:15,457.457 INFO    ] No existing commands found in stream
[2026-06-12 15:20:20,472.472 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 15:20:20,475.475 INFO    ] Waiting 2.59 seconds before fallback handling...
[2026-06-12 15:20:23,464.464 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 15:20:23,466.466 INFO    ] Checking for system updates...
[2026-06-12 15:20:23,488.488 INFO    ] 200
[2026-06-12 15:20:23,490.490 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:20:23,520.520 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 15:20:23,521.521 INFO    ] No update needed
[2026-06-12 15:20:23,523.523 INFO    ] Checking for camera pi updates...
[2026-06-12 15:20:23,543.543 INFO    ] 200
[2026-06-12 15:20:23,544.544 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:20:23,569.569 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 15:20:23,610.610 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 15:20:23,612.612 INFO    ] No camera update needed
[2026-06-12 15:20:23,613.613 INFO    ] Script finished. Safe exiting...
[2026-06-12 15:20:23,614.614 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 15:20:23,617.617 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 15:20:23,620.620 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 15:20:25,658.658 INFO    ] ================================================
[2026-06-12 15:20:25,674.674 INFO    ] Launching Daemon at Fri Jun 12 15:20:25 IST 2026
[2026-06-12 15:20:25,685.685 INFO    ] ================================================
[2026-06-12 15:20:26,052.052 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 15:20:26
[2026-06-12 15:20:26,370.370 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 15:20:26,503.503 INFO    ] Initializing speech engine...
[2026-06-12 15:20:26,515.515 INFO    ] 2026-06-12 15:20:26
[2026-06-12 15:20:26,721.721 INFO    ] 2026-06-12 15:20:26
[2026-06-12 15:20:26,750.750 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 15:20:26,872.872 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 15:20:26,935.935 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 15:20:27,089.089 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 15:20:27,143.143 INFO    ] time= 12/06/2026 15:20:27
[2026-06-12 15:20:27,164.164 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 15:20:27,171.171 INFO    ] Checking for existing commands in stream...
[2026-06-12 15:20:27,237.237 INFO    ] No existing commands found in stream
[2026-06-12 15:20:32,262.262 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 15:20:32,264.264 INFO    ] Waiting 1.71 seconds before fallback handling...
[2026-06-12 15:20:34,367.367 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 15:20:34,368.368 INFO    ] Checking for system updates...
[2026-06-12 15:20:34,390.390 INFO    ] 200
[2026-06-12 15:20:34,392.392 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:20:34,422.422 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 15:20:34,423.423 INFO    ] No update needed
[2026-06-12 15:20:34,424.424 INFO    ] Checking for camera pi updates...
[2026-06-12 15:20:34,445.445 INFO    ] 200
[2026-06-12 15:20:34,446.446 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:20:34,469.469 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 15:20:34,510.510 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 15:20:34,512.512 INFO    ] No camera update needed
[2026-06-12 15:20:34,513.513 INFO    ] Script finished. Safe exiting...
[2026-06-12 15:20:34,514.514 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 15:20:34,517.517 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 15:20:34,520.520 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 15:20:36,558.558 INFO    ] ================================================
[2026-06-12 15:20:36,573.573 INFO    ] Launching Daemon at Fri Jun 12 15:20:36 IST 2026
[2026-06-12 15:20:36,585.585 INFO    ] ================================================
[2026-06-12 15:20:36,983.983 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 15:20:36
[2026-06-12 15:20:37,331.331 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 15:20:37,472.472 INFO    ] Initializing speech engine...
[2026-06-12 15:20:37,488.488 INFO    ] 2026-06-12 15:20:37
[2026-06-12 15:20:37,699.699 INFO    ] 2026-06-12 15:20:37
[2026-06-12 15:20:37,728.728 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 15:20:37,913.913 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 15:20:37,917.917 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 15:20:38,053.053 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 15:20:38,121.121 INFO    ] time= 12/06/2026 15:20:38
[2026-06-12 15:20:38,145.145 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 15:20:38,152.152 INFO    ] Checking for existing commands in stream...
[2026-06-12 15:20:38,220.220 INFO    ] No existing commands found in stream
[2026-06-12 15:20:43,234.234 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 15:20:43,237.237 INFO    ] Waiting 0.49 seconds before fallback handling...
[2026-06-12 15:20:44,112.112 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 15:20:44,114.114 INFO    ] Checking for system updates...
[2026-06-12 15:20:44,135.135 INFO    ] 200
[2026-06-12 15:20:44,137.137 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:20:44,169.169 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 15:20:44,171.171 INFO    ] No update needed
[2026-06-12 15:20:44,172.172 INFO    ] Checking for camera pi updates...
[2026-06-12 15:20:44,192.192 INFO    ] 200
[2026-06-12 15:20:44,194.194 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:20:44,216.216 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 15:20:44,259.259 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 15:20:44,261.261 INFO    ] No camera update needed
[2026-06-12 15:20:44,262.262 INFO    ] Script finished. Safe exiting...
[2026-06-12 15:20:44,263.263 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 15:20:44,266.266 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 15:20:44,269.269 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 15:20:46,307.307 INFO    ] ================================================
[2026-06-12 15:20:46,326.326 INFO    ] Launching Daemon at Fri Jun 12 15:20:46 IST 2026
[2026-06-12 15:20:46,337.337 INFO    ] ================================================
[2026-06-12 15:20:46,680.680 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 15:20:46
[2026-06-12 15:20:46,992.992 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 15:20:47,123.123 INFO    ] Initializing speech engine...
[2026-06-12 15:20:47,127.127 INFO    ] 2026-06-12 15:20:47
[2026-06-12 15:20:47,351.351 INFO    ] 2026-06-12 15:20:47
[2026-06-12 15:20:47,382.382 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 15:20:47,584.584 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 15:20:47,588.588 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 15:20:47,728.728 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 15:20:47,790.790 INFO    ] time= 12/06/2026 15:20:47
[2026-06-12 15:20:47,830.830 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 15:20:47,837.837 INFO    ] Checking for existing commands in stream...
[2026-06-12 15:20:47,912.912 INFO    ] No existing commands found in stream
[2026-06-12 15:20:52,923.923 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 15:20:52,930.930 INFO    ] Waiting 0.35 seconds before fallback handling...
[2026-06-12 15:20:53,630.630 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 15:20:53,632.632 INFO    ] Checking for system updates...
[2026-06-12 15:20:53,653.653 INFO    ] 200
[2026-06-12 15:20:53,654.654 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:20:53,687.687 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 15:20:53,688.688 INFO    ] No update needed
[2026-06-12 15:20:53,690.690 INFO    ] Checking for camera pi updates...
[2026-06-12 15:20:53,712.712 INFO    ] 200
[2026-06-12 15:20:53,713.713 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:20:53,738.738 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 15:20:53,878.878 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 15:20:53,879.879 INFO    ] No camera update needed
[2026-06-12 15:20:53,881.881 INFO    ] Script finished. Safe exiting...
[2026-06-12 15:20:53,882.882 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 15:20:53,885.885 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 15:20:53,889.889 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 15:20:55,928.928 INFO    ] ================================================
[2026-06-12 15:20:55,944.944 INFO    ] Launching Daemon at Fri Jun 12 15:20:55 IST 2026
[2026-06-12 15:20:55,954.954 INFO    ] ================================================
[2026-06-12 15:20:56,324.324 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 15:20:56
[2026-06-12 15:20:56,636.636 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 15:20:56,780.780 INFO    ] Initializing speech engine...
[2026-06-12 15:20:56,786.786 INFO    ] 2026-06-12 15:20:56
[2026-06-12 15:20:56,992.992 INFO    ] 2026-06-12 15:20:56
[2026-06-12 15:20:57,021.021 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 15:20:57,176.176 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 15:20:57,210.210 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 15:20:57,347.347 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 15:20:57,399.399 INFO    ] time= 12/06/2026 15:20:57
[2026-06-12 15:20:57,438.438 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 15:20:57,456.456 INFO    ] Checking for existing commands in stream...
[2026-06-12 15:20:57,533.533 INFO    ] No existing commands found in stream
[2026-06-12 15:21:02,541.541 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 15:21:02,543.543 INFO    ] Waiting 2.71 seconds before fallback handling...
[2026-06-12 15:21:05,640.640 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 15:21:05,642.642 INFO    ] Checking for system updates...
[2026-06-12 15:21:05,662.662 INFO    ] 200
[2026-06-12 15:21:05,663.663 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:21:05,696.696 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 15:21:05,698.698 INFO    ] No update needed
[2026-06-12 15:21:05,699.699 INFO    ] Checking for camera pi updates...
[2026-06-12 15:21:05,718.718 INFO    ] 200
[2026-06-12 15:21:05,719.719 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:21:05,744.744 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 15:21:05,788.788 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 15:21:05,790.790 INFO    ] No camera update needed
[2026-06-12 15:21:05,791.791 INFO    ] Script finished. Safe exiting...
[2026-06-12 15:21:05,792.792 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 15:21:05,795.795 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 15:21:05,798.798 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 15:21:07,835.835 INFO    ] ================================================
[2026-06-12 15:21:07,851.851 INFO    ] Launching Daemon at Fri Jun 12 15:21:07 IST 2026
[2026-06-12 15:21:07,862.862 INFO    ] ================================================
[2026-06-12 15:21:08,216.216 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 15:21:08
[2026-06-12 15:21:08,534.534 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 15:21:08,678.678 INFO    ] Initializing speech engine...
[2026-06-12 15:21:08,683.683 INFO    ] 2026-06-12 15:21:08
[2026-06-12 15:21:08,888.888 INFO    ] 2026-06-12 15:21:08
[2026-06-12 15:21:08,917.917 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 15:21:09,100.100 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 15:21:09,110.110 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 15:21:09,255.255 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 15:21:09,309.309 INFO    ] time= 12/06/2026 15:21:09
[2026-06-12 15:21:09,335.335 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 15:21:09,337.337 INFO    ] Checking for existing commands in stream...
[2026-06-12 15:21:09,403.403 INFO    ] No existing commands found in stream
[2026-06-12 15:21:14,412.412 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 15:21:14,415.415 INFO    ] Waiting 3.92 seconds before fallback handling...
[2026-06-12 15:21:18,713.713 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 15:21:18,714.714 INFO    ] Checking for system updates...
[2026-06-12 15:21:18,736.736 INFO    ] 200
[2026-06-12 15:21:18,737.737 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:21:18,771.771 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 15:21:18,773.773 INFO    ] No update needed
[2026-06-12 15:21:18,774.774 INFO    ] Checking for camera pi updates...
[2026-06-12 15:21:18,794.794 INFO    ] 200
[2026-06-12 15:21:18,796.796 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:21:18,820.820 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 15:21:18,869.869 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 15:21:18,871.871 INFO    ] No camera update needed
[2026-06-12 15:21:18,872.872 INFO    ] Script finished. Safe exiting...
[2026-06-12 15:21:18,873.873 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 15:21:18,876.876 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 15:21:18,879.879 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 15:21:20,918.918 INFO    ] ================================================
[2026-06-12 15:21:20,933.933 INFO    ] Launching Daemon at Fri Jun 12 15:21:20 IST 2026
[2026-06-12 15:21:20,944.944 INFO    ] ================================================
[2026-06-12 15:21:21,280.280 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 15:21:21
[2026-06-12 15:21:21,592.592 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 15:21:21,722.722 INFO    ] Initializing speech engine...
[2026-06-12 15:21:21,730.730 INFO    ] 2026-06-12 15:21:21
[2026-06-12 15:21:21,940.940 INFO    ] 2026-06-12 15:21:21
[2026-06-12 15:21:21,969.969 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 15:21:22,151.151 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 15:21:22,154.154 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 15:21:22,309.309 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 15:21:22,356.356 INFO    ] time= 12/06/2026 15:21:22
[2026-06-12 15:21:22,379.379 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 15:21:22,385.385 INFO    ] Checking for existing commands in stream...
[2026-06-12 15:21:22,453.453 INFO    ] No existing commands found in stream
[2026-06-12 15:21:27,462.462 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 15:21:27,465.465 INFO    ] Waiting 0.39 seconds before fallback handling...
[2026-06-12 15:21:28,222.222 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 15:21:28,223.223 INFO    ] Checking for system updates...
[2026-06-12 15:21:28,245.245 INFO    ] 200
[2026-06-12 15:21:28,246.246 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:21:28,276.276 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 15:21:28,277.277 INFO    ] No update needed
[2026-06-12 15:21:28,278.278 INFO    ] Checking for camera pi updates...
[2026-06-12 15:21:28,299.299 INFO    ] 200
[2026-06-12 15:21:28,300.300 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:21:28,325.325 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 15:21:28,370.370 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 15:21:28,372.372 INFO    ] No camera update needed
[2026-06-12 15:21:28,373.373 INFO    ] Script finished. Safe exiting...
[2026-06-12 15:21:28,374.374 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 15:21:28,377.377 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 15:21:28,380.380 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 15:21:30,420.420 INFO    ] ================================================
[2026-06-12 15:21:30,437.437 INFO    ] Launching Daemon at Fri Jun 12 15:21:30 IST 2026
[2026-06-12 15:21:30,449.449 INFO    ] ================================================
[2026-06-12 15:21:30,810.810 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 15:21:30
[2026-06-12 15:21:31,149.149 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 15:21:31,301.301 INFO    ] Initializing speech engine...
[2026-06-12 15:21:31,307.307 INFO    ] 2026-06-12 15:21:31
[2026-06-12 15:21:31,535.535 INFO    ] 2026-06-12 15:21:31
[2026-06-12 15:21:31,567.567 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 15:21:31,762.762 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 15:21:31,773.773 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 15:21:31,938.938 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 15:21:31,984.984 INFO    ] time= 12/06/2026 15:21:31
[2026-06-12 15:21:32,007.007 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 15:21:32,014.014 INFO    ] Checking for existing commands in stream...
[2026-06-12 15:21:32,083.083 INFO    ] No existing commands found in stream
[2026-06-12 15:21:37,093.093 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 15:21:37,096.096 INFO    ] Waiting 3.80 seconds before fallback handling...
[2026-06-12 15:21:41,212.212 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 15:21:41,213.213 INFO    ] Checking for system updates...
[2026-06-12 15:21:41,238.238 INFO    ] 200
[2026-06-12 15:21:41,239.239 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_HEALTH_CHECK"}
[2026-06-12 15:21:41,241.241 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping update check
[2026-06-12 15:21:41,243.243 INFO    ] Checking for camera pi updates...
[2026-06-12 15:21:41,278.278 INFO    ] 200
[2026-06-12 15:21:41,279.279 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_HEALTH_CHECK"}
[2026-06-12 15:21:41,281.281 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping camera update check
[2026-06-12 15:21:41,282.282 INFO    ] Script finished. Safe exiting...
[2026-06-12 15:21:41,283.283 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 15:21:41,286.286 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 15:21:41,289.289 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 15:21:43,321.321 INFO    ] ================================================
[2026-06-12 15:21:43,337.337 INFO    ] Launching Daemon at Fri Jun 12 15:21:43 IST 2026
[2026-06-12 15:21:43,348.348 INFO    ] ================================================
[2026-06-12 15:21:43,696.696 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 15:21:43
[2026-06-12 15:21:44,008.008 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 15:21:44,140.140 INFO    ] Initializing speech engine...
[2026-06-12 15:21:44,148.148 INFO    ] 2026-06-12 15:21:44
[2026-06-12 15:21:44,361.361 INFO    ] 2026-06-12 15:21:44
[2026-06-12 15:21:44,390.390 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 15:21:44,575.575 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 15:21:44,579.579 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 15:21:44,737.737 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 15:21:44,785.785 INFO    ] time= 12/06/2026 15:21:44
[2026-06-12 15:21:44,807.807 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 15:21:44,814.814 INFO    ] Checking for existing commands in stream...
[2026-06-12 15:21:44,882.882 INFO    ] No existing commands found in stream
[2026-06-12 15:21:49,891.891 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 15:21:49,894.894 INFO    ] Waiting 0.72 seconds before fallback handling...
[2026-06-12 15:21:51,000.000 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 15:21:51,002.002 INFO    ] Checking for system updates...
[2026-06-12 15:21:51,023.023 INFO    ] 200
[2026-06-12 15:21:51,024.024 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:21:51,054.054 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 15:21:51,056.056 INFO    ] No update needed
[2026-06-12 15:21:51,057.057 INFO    ] Checking for camera pi updates...
[2026-06-12 15:21:51,077.077 INFO    ] 200
[2026-06-12 15:21:51,078.078 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:21:51,102.102 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 15:21:51,149.149 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 15:21:51,150.150 INFO    ] No camera update needed
[2026-06-12 15:21:51,152.152 INFO    ] Script finished. Safe exiting...
[2026-06-12 15:21:51,153.153 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 15:21:51,156.156 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 15:21:51,159.159 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 15:21:53,198.198 INFO    ] ================================================
[2026-06-12 15:21:53,213.213 INFO    ] Launching Daemon at Fri Jun 12 15:21:53 IST 2026
[2026-06-12 15:21:53,224.224 INFO    ] ================================================
[2026-06-12 15:21:53,594.594 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 15:21:53
[2026-06-12 15:21:53,918.918 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 15:21:54,063.063 INFO    ] Initializing speech engine...
[2026-06-12 15:21:54,068.068 INFO    ] 2026-06-12 15:21:54
[2026-06-12 15:21:54,272.272 INFO    ] 2026-06-12 15:21:54
[2026-06-12 15:21:54,301.301 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 15:21:54,486.486 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 15:21:54,489.489 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 15:21:54,641.641 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 15:21:54,695.695 INFO    ] time= 12/06/2026 15:21:54
[2026-06-12 15:21:54,717.717 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 15:21:54,723.723 INFO    ] Checking for existing commands in stream...
[2026-06-12 15:21:54,788.788 INFO    ] No existing commands found in stream
[2026-06-12 15:21:59,798.798 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 15:21:59,802.802 INFO    ] Waiting 2.37 seconds before fallback handling...
[2026-06-12 15:22:02,515.515 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 15:22:02,517.517 INFO    ] Checking for system updates...
[2026-06-12 15:22:02,538.538 INFO    ] 200
[2026-06-12 15:22:02,540.540 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:22:02,591.591 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 15:22:02,592.592 INFO    ] No update needed
[2026-06-12 15:22:02,593.593 INFO    ] Checking for camera pi updates...
[2026-06-12 15:22:02,613.613 INFO    ] 200
[2026-06-12 15:22:02,614.614 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:22:02,643.643 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 15:22:02,729.729 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 15:22:02,731.731 INFO    ] No camera update needed
[2026-06-12 15:22:02,732.732 INFO    ] Script finished. Safe exiting...
[2026-06-12 15:22:02,733.733 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 15:22:02,736.736 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 15:22:02,739.739 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 15:22:04,778.778 INFO    ] ================================================
[2026-06-12 15:22:04,794.794 INFO    ] Launching Daemon at Fri Jun 12 15:22:04 IST 2026
[2026-06-12 15:22:04,805.805 INFO    ] ================================================
[2026-06-12 15:22:05,174.174 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 15:22:05
[2026-06-12 15:22:05,486.486 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 15:22:05,619.619 INFO    ] Initializing speech engine...
[2026-06-12 15:22:05,624.624 INFO    ] 2026-06-12 15:22:05
[2026-06-12 15:22:05,868.868 INFO    ] 2026-06-12 15:22:05
[2026-06-12 15:22:05,898.898 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 15:22:06,091.091 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 15:22:06,099.099 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 15:22:06,237.237 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 15:22:06,299.299 INFO    ] time= 12/06/2026 15:22:06
[2026-06-12 15:22:06,342.342 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 15:22:06,344.344 INFO    ] Checking for existing commands in stream...
[2026-06-12 15:22:06,447.447 INFO    ] No existing commands found in stream
[2026-06-12 15:22:11,461.461 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 15:22:11,464.464 INFO    ] Waiting 1.07 seconds before fallback handling...
[2026-06-12 15:22:12,931.931 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 15:22:12,933.933 INFO    ] Checking for system updates...
[2026-06-12 15:22:12,954.954 INFO    ] 200
[2026-06-12 15:22:12,956.956 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:22:12,989.989 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 15:22:12,990.990 INFO    ] No update needed
[2026-06-12 15:22:12,992.992 INFO    ] Checking for camera pi updates...
[2026-06-12 15:22:13,012.012 INFO    ] 200
[2026-06-12 15:22:13,014.014 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:22:13,039.039 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 15:22:13,081.081 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 15:22:13,083.083 INFO    ] No camera update needed
[2026-06-12 15:22:13,084.084 INFO    ] Script finished. Safe exiting...
[2026-06-12 15:22:13,085.085 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 15:22:13,088.088 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 15:22:13,092.092 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 15:22:15,131.131 INFO    ] ================================================
[2026-06-12 15:22:15,147.147 INFO    ] Launching Daemon at Fri Jun 12 15:22:15 IST 2026
[2026-06-12 15:22:15,158.158 INFO    ] ================================================
[2026-06-12 15:22:15,492.492 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 15:22:15
[2026-06-12 15:22:15,804.804 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 15:22:15,935.935 INFO    ] Initializing speech engine...
[2026-06-12 15:22:15,940.940 INFO    ] 2026-06-12 15:22:15
[2026-06-12 15:22:16,170.170 INFO    ] 2026-06-12 15:22:16
[2026-06-12 15:22:16,201.201 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 15:22:16,333.333 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 15:22:16,391.391 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 15:22:16,541.541 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 15:22:16,603.603 INFO    ] time= 12/06/2026 15:22:16
[2026-06-12 15:22:16,632.632 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 15:22:16,649.649 INFO    ] Checking for existing commands in stream...
[2026-06-12 15:22:16,726.726 INFO    ] No existing commands found in stream
[2026-06-12 15:22:21,735.735 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 15:22:21,738.738 INFO    ] Waiting 1.01 seconds before fallback handling...
[2026-06-12 15:22:23,153.153 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 15:22:23,154.154 INFO    ] Checking for system updates...
[2026-06-12 15:22:23,174.174 INFO    ] 200
[2026-06-12 15:22:23,175.175 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:22:23,206.206 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 15:22:23,207.207 INFO    ] No update needed
[2026-06-12 15:22:23,208.208 INFO    ] Checking for camera pi updates...
[2026-06-12 15:22:23,228.228 INFO    ] 200
[2026-06-12 15:22:23,229.229 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:22:23,253.253 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 15:22:23,299.299 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 15:22:23,300.300 INFO    ] No camera update needed
[2026-06-12 15:22:23,302.302 INFO    ] Script finished. Safe exiting...
[2026-06-12 15:22:23,303.303 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 15:22:23,306.306 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 15:22:23,309.309 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 15:22:25,347.347 INFO    ] ================================================
[2026-06-12 15:22:25,363.363 INFO    ] Launching Daemon at Fri Jun 12 15:22:25 IST 2026
[2026-06-12 15:22:25,374.374 INFO    ] ================================================
[2026-06-12 15:22:25,712.712 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 15:22:25
[2026-06-12 15:22:26,026.026 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 15:22:26,161.161 INFO    ] Initializing speech engine...
[2026-06-12 15:22:26,169.169 INFO    ] 2026-06-12 15:22:26
[2026-06-12 15:22:26,393.393 INFO    ] 2026-06-12 15:22:26
[2026-06-12 15:22:26,424.424 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 15:22:26,624.624 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 15:22:26,632.632 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 15:22:26,769.769 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 15:22:26,837.837 INFO    ] time= 12/06/2026 15:22:26
[2026-06-12 15:22:26,871.871 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 15:22:26,877.877 INFO    ] Checking for existing commands in stream...
[2026-06-12 15:22:26,948.948 INFO    ] No existing commands found in stream
[2026-06-12 15:22:31,958.958 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 15:22:31,960.960 INFO    ] Waiting 3.96 seconds before fallback handling...
[2026-06-12 15:22:36,313.313 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 15:22:36,314.314 INFO    ] Checking for system updates...
[2026-06-12 15:22:36,335.335 INFO    ] 200
[2026-06-12 15:22:36,336.336 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:22:36,368.368 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 15:22:36,370.370 INFO    ] No update needed
[2026-06-12 15:22:36,372.372 INFO    ] Checking for camera pi updates...
[2026-06-12 15:22:36,391.391 INFO    ] 200
[2026-06-12 15:22:36,393.393 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:22:36,416.416 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 15:22:36,463.463 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 15:22:36,464.464 INFO    ] No camera update needed
[2026-06-12 15:22:36,465.465 INFO    ] Script finished. Safe exiting...
[2026-06-12 15:22:36,467.467 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 15:22:36,470.470 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 15:22:36,473.473 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 15:22:38,513.513 INFO    ] ================================================
[2026-06-12 15:22:38,529.529 INFO    ] Launching Daemon at Fri Jun 12 15:22:38 IST 2026
[2026-06-12 15:22:38,540.540 INFO    ] ================================================
[2026-06-12 15:22:38,882.882 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 15:22:38
[2026-06-12 15:22:39,193.193 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 15:22:39,324.324 INFO    ] Initializing speech engine...
[2026-06-12 15:22:39,332.332 INFO    ] 2026-06-12 15:22:39
[2026-06-12 15:22:39,544.544 INFO    ] 2026-06-12 15:22:39
[2026-06-12 15:22:39,573.573 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 15:22:39,760.760 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 15:22:39,768.768 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 15:22:39,905.905 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 15:22:39,967.967 INFO    ] time= 12/06/2026 15:22:39
[2026-06-12 15:22:39,991.991 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 15:22:39,997.997 INFO    ] Checking for existing commands in stream...
[2026-06-12 15:22:40,064.064 INFO    ] No existing commands found in stream
[2026-06-12 15:22:45,097.097 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 15:22:45,099.099 INFO    ] Waiting 1.68 seconds before fallback handling...
[2026-06-12 15:22:47,161.161 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 15:22:47,162.162 INFO    ] Checking for system updates...
[2026-06-12 15:22:47,184.184 INFO    ] 200
[2026-06-12 15:22:47,185.185 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:22:47,217.217 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 15:22:47,218.218 INFO    ] No update needed
[2026-06-12 15:22:47,220.220 INFO    ] Checking for camera pi updates...
[2026-06-12 15:22:47,239.239 INFO    ] 200
[2026-06-12 15:22:47,241.241 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:22:47,267.267 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 15:22:47,312.312 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 15:22:47,313.313 INFO    ] No camera update needed
[2026-06-12 15:22:47,315.315 INFO    ] Script finished. Safe exiting...
[2026-06-12 15:22:47,316.316 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 15:22:47,319.319 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 15:22:47,322.322 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 15:22:49,346.346 INFO    ] ================================================
[2026-06-12 15:22:49,354.354 INFO    ] Launching Daemon at Fri Jun 12 15:22:49 IST 2026
[2026-06-12 15:22:49,361.361 INFO    ] ================================================
[2026-06-12 15:22:49,708.708 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 15:22:49
[2026-06-12 15:22:50,021.021 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 15:22:50,152.152 INFO    ] Initializing speech engine...
[2026-06-12 15:22:50,155.155 INFO    ] 2026-06-12 15:22:50
[2026-06-12 15:22:50,372.372 INFO    ] 2026-06-12 15:22:50
[2026-06-12 15:22:50,401.401 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 15:22:50,585.585 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 15:22:50,594.594 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 15:22:50,781.781 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 15:22:50,813.813 INFO    ] time= 12/06/2026 15:22:50
[2026-06-12 15:22:50,815.815 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 15:22:50,821.821 INFO    ] Checking for existing commands in stream...
[2026-06-12 15:22:50,888.888 INFO    ] No existing commands found in stream
[2026-06-12 15:22:55,897.897 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 15:22:55,900.900 INFO    ] Waiting 0.20 seconds before fallback handling...
[2026-06-12 15:22:56,491.491 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 15:22:56,493.493 INFO    ] Checking for system updates...
[2026-06-12 15:22:56,513.513 INFO    ] 200
[2026-06-12 15:22:56,514.514 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:22:56,544.544 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 15:22:56,546.546 INFO    ] No update needed
[2026-06-12 15:22:56,547.547 INFO    ] Checking for camera pi updates...
[2026-06-12 15:22:56,567.567 INFO    ] 200
[2026-06-12 15:22:56,568.568 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:22:56,591.591 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 15:22:56,730.730 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 15:22:56,732.732 INFO    ] No camera update needed
[2026-06-12 15:22:56,733.733 INFO    ] Script finished. Safe exiting...
[2026-06-12 15:22:56,734.734 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 15:22:56,737.737 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 15:22:56,740.740 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 15:22:58,778.778 INFO    ] ================================================
[2026-06-12 15:22:58,793.793 INFO    ] Launching Daemon at Fri Jun 12 15:22:58 IST 2026
[2026-06-12 15:22:58,805.805 INFO    ] ================================================
[2026-06-12 15:22:59,165.165 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 15:22:59
[2026-06-12 15:22:59,482.482 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 15:22:59,614.614 INFO    ] Initializing speech engine...
[2026-06-12 15:22:59,628.628 INFO    ] 2026-06-12 15:22:59
[2026-06-12 15:22:59,834.834 INFO    ] 2026-06-12 15:22:59
[2026-06-12 15:22:59,862.862 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 15:23:00,046.046 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 15:23:00,056.056 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 15:23:00,199.199 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 15:23:00,252.252 INFO    ] time= 12/06/2026 15:23:00
[2026-06-12 15:23:00,274.274 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 15:23:00,280.280 INFO    ] Checking for existing commands in stream...
[2026-06-12 15:23:00,347.347 INFO    ] No existing commands found in stream
[2026-06-12 15:23:05,356.356 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 15:23:05,358.358 INFO    ] Waiting 0.41 seconds before fallback handling...
[2026-06-12 15:23:06,201.201 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 15:23:06,203.203 INFO    ] Checking for system updates...
[2026-06-12 15:23:06,223.223 INFO    ] 200
[2026-06-12 15:23:06,225.225 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:23:06,257.257 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 15:23:06,258.258 INFO    ] No update needed
[2026-06-12 15:23:06,260.260 INFO    ] Checking for camera pi updates...
[2026-06-12 15:23:06,280.280 INFO    ] 200
[2026-06-12 15:23:06,282.282 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:23:06,306.306 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 15:23:06,352.352 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 15:23:06,353.353 INFO    ] No camera update needed
[2026-06-12 15:23:06,354.354 INFO    ] Script finished. Safe exiting...
[2026-06-12 15:23:06,356.356 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 15:23:06,359.359 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 15:23:06,361.361 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 15:23:08,400.400 INFO    ] ================================================
[2026-06-12 15:23:08,416.416 INFO    ] Launching Daemon at Fri Jun 12 15:23:08 IST 2026
[2026-06-12 15:23:08,427.427 INFO    ] ================================================
[2026-06-12 15:23:08,753.753 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 15:23:08
[2026-06-12 15:23:09,064.064 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 15:23:09,194.194 INFO    ] Initializing speech engine...
[2026-06-12 15:23:09,198.198 INFO    ] 2026-06-12 15:23:09
[2026-06-12 15:23:09,416.416 INFO    ] 2026-06-12 15:23:09
[2026-06-12 15:23:09,446.446 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 15:23:09,631.631 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 15:23:09,640.640 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 15:23:09,786.786 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 15:23:09,839.839 INFO    ] time= 12/06/2026 15:23:09
[2026-06-12 15:23:09,862.862 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 15:23:09,869.869 INFO    ] Checking for existing commands in stream...
[2026-06-12 15:23:09,936.936 INFO    ] No existing commands found in stream
[2026-06-12 15:23:14,950.950 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 15:23:14,953.953 INFO    ] Waiting 3.74 seconds before fallback handling...
[2026-06-12 15:23:19,065.065 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 15:23:19,066.066 INFO    ] Checking for system updates...
[2026-06-12 15:23:19,088.088 INFO    ] 200
[2026-06-12 15:23:19,089.089 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:23:19,119.119 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 15:23:19,120.120 INFO    ] No update needed
[2026-06-12 15:23:19,122.122 INFO    ] Checking for camera pi updates...
[2026-06-12 15:23:19,141.141 INFO    ] 200
[2026-06-12 15:23:19,142.142 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:23:19,165.165 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 15:23:19,209.209 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 15:23:19,210.210 INFO    ] No camera update needed
[2026-06-12 15:23:19,212.212 INFO    ] Script finished. Safe exiting...
[2026-06-12 15:23:19,213.213 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 15:23:19,216.216 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 15:23:19,218.218 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 15:23:21,258.258 INFO    ] ================================================
[2026-06-12 15:23:21,273.273 INFO    ] Launching Daemon at Fri Jun 12 15:23:21 IST 2026
[2026-06-12 15:23:21,284.284 INFO    ] ================================================
[2026-06-12 15:23:21,653.653 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 15:23:21
[2026-06-12 15:23:21,964.964 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 15:23:22,092.092 INFO    ] Initializing speech engine...
[2026-06-12 15:23:22,096.096 INFO    ] 2026-06-12 15:23:22
[2026-06-12 15:23:22,317.317 INFO    ] 2026-06-12 15:23:22
[2026-06-12 15:23:22,348.348 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 15:23:22,547.547 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 15:23:22,551.551 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 15:23:22,696.696 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 15:23:22,738.738 INFO    ] time= 12/06/2026 15:23:22
[2026-06-12 15:23:22,783.783 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 15:23:22,800.800 INFO    ] Checking for existing commands in stream...
[2026-06-12 15:23:22,875.875 INFO    ] No existing commands found in stream
[2026-06-12 15:23:27,912.912 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 15:23:27,917.917 INFO    ] Waiting 1.73 seconds before fallback handling...
[2026-06-12 15:23:30,055.055 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 15:23:30,057.057 INFO    ] Checking for system updates...
[2026-06-12 15:23:30,077.077 INFO    ] 200
[2026-06-12 15:23:30,079.079 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:23:30,112.112 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 15:23:30,113.113 INFO    ] No update needed
[2026-06-12 15:23:30,114.114 INFO    ] Checking for camera pi updates...
[2026-06-12 15:23:30,137.137 INFO    ] 200
[2026-06-12 15:23:30,138.138 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:23:30,161.161 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 15:23:30,220.220 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 15:23:30,221.221 INFO    ] No camera update needed
[2026-06-12 15:23:30,223.223 INFO    ] Script finished. Safe exiting...
[2026-06-12 15:23:30,224.224 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 15:23:30,227.227 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 15:23:30,230.230 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 15:23:32,264.264 INFO    ] ================================================
[2026-06-12 15:23:32,274.274 INFO    ] Launching Daemon at Fri Jun 12 15:23:32 IST 2026
[2026-06-12 15:23:32,281.281 INFO    ] ================================================
[2026-06-12 15:23:32,633.633 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 15:23:32
[2026-06-12 15:23:32,974.974 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 15:23:33,126.126 INFO    ] Initializing speech engine...
[2026-06-12 15:23:33,131.131 INFO    ] 2026-06-12 15:23:33
[2026-06-12 15:23:33,339.339 INFO    ] 2026-06-12 15:23:33
[2026-06-12 15:23:33,368.368 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 15:23:33,551.551 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 15:23:33,561.561 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 15:23:33,707.707 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 15:23:33,761.761 INFO    ] time= 12/06/2026 15:23:33
[2026-06-12 15:23:33,782.782 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 15:23:33,788.788 INFO    ] Checking for existing commands in stream...
[2026-06-12 15:23:33,855.855 INFO    ] No existing commands found in stream
[2026-06-12 15:23:38,887.887 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 15:23:38,891.891 INFO    ] Waiting 3.67 seconds before fallback handling...
[2026-06-12 15:23:42,925.925 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 15:23:42,927.927 INFO    ] Checking for system updates...
[2026-06-12 15:23:42,948.948 INFO    ] 200
[2026-06-12 15:23:42,950.950 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:23:42,995.995 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 15:23:42,996.996 INFO    ] No update needed
[2026-06-12 15:23:42,997.997 INFO    ] Checking for camera pi updates...
[2026-06-12 15:23:43,018.018 INFO    ] 200
[2026-06-12 15:23:43,019.019 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:23:43,044.044 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 15:23:43,088.088 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 15:23:43,089.089 INFO    ] No camera update needed
[2026-06-12 15:23:43,091.091 INFO    ] Script finished. Safe exiting...
[2026-06-12 15:23:43,092.092 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 15:23:43,095.095 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 15:23:43,098.098 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 15:23:45,137.137 INFO    ] ================================================
[2026-06-12 15:23:45,153.153 INFO    ] Launching Daemon at Fri Jun 12 15:23:45 IST 2026
[2026-06-12 15:23:45,165.165 INFO    ] ================================================
[2026-06-12 15:23:45,501.501 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 15:23:45
[2026-06-12 15:23:45,812.812 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 15:23:45,944.944 INFO    ] Initializing speech engine...
[2026-06-12 15:23:45,954.954 INFO    ] 2026-06-12 15:23:45
[2026-06-12 15:23:46,178.178 INFO    ] 2026-06-12 15:23:46
[2026-06-12 15:23:46,208.208 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 15:23:46,406.406 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 15:23:46,410.410 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 15:23:46,549.549 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 15:23:46,601.601 INFO    ] time= 12/06/2026 15:23:46
[2026-06-12 15:23:46,633.633 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 15:23:46,657.657 INFO    ] Checking for existing commands in stream...
[2026-06-12 15:23:46,733.733 INFO    ] No existing commands found in stream
[2026-06-12 15:23:51,743.743 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 15:23:51,746.746 INFO    ] Waiting 1.45 seconds before fallback handling...
[2026-06-12 15:23:53,601.601 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 15:23:53,603.603 INFO    ] Checking for system updates...
[2026-06-12 15:23:53,624.624 INFO    ] 200
[2026-06-12 15:23:53,625.625 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:23:53,658.658 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 15:23:53,660.660 INFO    ] No update needed
[2026-06-12 15:23:53,661.661 INFO    ] Checking for camera pi updates...
[2026-06-12 15:23:53,683.683 INFO    ] 200
[2026-06-12 15:23:53,685.685 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:23:53,709.709 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 15:23:53,755.755 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 15:23:53,757.757 INFO    ] No camera update needed
[2026-06-12 15:23:53,758.758 INFO    ] Script finished. Safe exiting...
[2026-06-12 15:23:53,760.760 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 15:23:53,763.763 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 15:23:53,766.766 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 15:23:55,808.808 INFO    ] ================================================
[2026-06-12 15:23:55,823.823 INFO    ] Launching Daemon at Fri Jun 12 15:23:55 IST 2026
[2026-06-12 15:23:55,834.834 INFO    ] ================================================
[2026-06-12 15:23:56,167.167 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 15:23:56
[2026-06-12 15:23:56,479.479 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 15:23:56,620.620 INFO    ] Initializing speech engine...
[2026-06-12 15:23:56,625.625 INFO    ] 2026-06-12 15:23:56
[2026-06-12 15:23:56,827.827 INFO    ] 2026-06-12 15:23:56
[2026-06-12 15:23:56,857.857 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 15:23:57,040.040 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 15:23:57,049.049 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 15:23:57,234.234 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 15:23:57,266.266 INFO    ] time= 12/06/2026 15:23:57
[2026-06-12 15:23:57,268.268 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 15:23:57,274.274 INFO    ] Checking for existing commands in stream...
[2026-06-12 15:23:57,339.339 INFO    ] No existing commands found in stream
[2026-06-12 15:24:02,348.348 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 15:24:02,350.350 INFO    ] Waiting 2.22 seconds before fallback handling...
[2026-06-12 15:24:04,954.954 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 15:24:04,956.956 INFO    ] Checking for system updates...
[2026-06-12 15:24:04,977.977 INFO    ] 200
[2026-06-12 15:24:04,978.978 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:24:05,010.010 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 15:24:05,012.012 INFO    ] No update needed
[2026-06-12 15:24:05,013.013 INFO    ] Checking for camera pi updates...
[2026-06-12 15:24:05,033.033 INFO    ] 200
[2026-06-12 15:24:05,035.035 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:24:05,059.059 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 15:24:05,086.086 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 15:24:05,087.087 INFO    ] No camera update needed
[2026-06-12 15:24:05,088.088 INFO    ] Script finished. Safe exiting...
[2026-06-12 15:24:05,089.089 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 15:24:05,092.092 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 15:24:05,095.095 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 15:24:07,134.134 INFO    ] ================================================
[2026-06-12 15:24:07,150.150 INFO    ] Launching Daemon at Fri Jun 12 15:24:07 IST 2026
[2026-06-12 15:24:07,161.161 INFO    ] ================================================
[2026-06-12 15:24:07,533.533 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 15:24:07
[2026-06-12 15:24:07,850.850 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 15:24:07,983.983 INFO    ] Initializing speech engine...
[2026-06-12 15:24:07,991.991 INFO    ] 2026-06-12 15:24:07
[2026-06-12 15:24:08,204.204 INFO    ] 2026-06-12 15:24:08
[2026-06-12 15:24:08,232.232 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 15:24:08,395.395 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 15:24:08,419.419 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 15:24:08,612.612 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 15:24:08,644.644 INFO    ] time= 12/06/2026 15:24:08
[2026-06-12 15:24:08,650.650 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 15:24:08,652.652 INFO    ] Checking for existing commands in stream...
[2026-06-12 15:24:08,717.717 INFO    ] No existing commands found in stream
[2026-06-12 15:24:13,727.727 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 15:24:13,730.730 INFO    ] Waiting 2.37 seconds before fallback handling...
[2026-06-12 15:24:16,509.509 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 15:24:16,511.511 INFO    ] Checking for system updates...
[2026-06-12 15:24:16,532.532 INFO    ] 200
[2026-06-12 15:24:16,534.534 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:24:16,563.563 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 15:24:16,565.565 INFO    ] No update needed
[2026-06-12 15:24:16,566.566 INFO    ] Checking for camera pi updates...
[2026-06-12 15:24:16,586.586 INFO    ] 200
[2026-06-12 15:24:16,587.587 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:24:16,614.614 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 15:24:16,654.654 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 15:24:16,656.656 INFO    ] No camera update needed
[2026-06-12 15:24:16,657.657 INFO    ] Script finished. Safe exiting...
[2026-06-12 15:24:16,658.658 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 15:24:16,661.661 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 15:24:16,664.664 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 15:24:18,702.702 INFO    ] ================================================
[2026-06-12 15:24:18,717.717 INFO    ] Launching Daemon at Fri Jun 12 15:24:18 IST 2026
[2026-06-12 15:24:18,729.729 INFO    ] ================================================
[2026-06-12 15:24:19,076.076 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 15:24:19
[2026-06-12 15:24:19,390.390 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 15:24:19,519.519 INFO    ] Initializing speech engine...
[2026-06-12 15:24:19,524.524 INFO    ] 2026-06-12 15:24:19
[2026-06-12 15:24:19,743.743 INFO    ] 2026-06-12 15:24:19
[2026-06-12 15:24:19,772.772 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 15:24:19,957.957 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 15:24:19,961.961 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 15:24:20,126.126 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 15:24:20,171.171 INFO    ] time= 12/06/2026 15:24:20
[2026-06-12 15:24:20,193.193 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 15:24:20,199.199 INFO    ] Checking for existing commands in stream...
[2026-06-12 15:24:20,267.267 INFO    ] No existing commands found in stream
[2026-06-12 15:24:25,280.280 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 15:24:25,282.282 INFO    ] Waiting 2.05 seconds before fallback handling...
[2026-06-12 15:24:27,637.637 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 15:24:27,639.639 INFO    ] Checking for system updates...
[2026-06-12 15:24:27,660.660 INFO    ] 200
[2026-06-12 15:24:27,661.661 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:24:27,694.694 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 15:24:27,695.695 INFO    ] No update needed
[2026-06-12 15:24:27,696.696 INFO    ] Checking for camera pi updates...
[2026-06-12 15:24:27,715.715 INFO    ] 200
[2026-06-12 15:24:27,717.717 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:24:27,741.741 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 15:24:27,802.802 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 15:24:27,803.803 INFO    ] No camera update needed
[2026-06-12 15:24:27,804.804 INFO    ] Script finished. Safe exiting...
[2026-06-12 15:24:27,806.806 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 15:24:27,808.808 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 15:24:27,811.811 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 15:24:29,850.850 INFO    ] ================================================
[2026-06-12 15:24:29,865.865 INFO    ] Launching Daemon at Fri Jun 12 15:24:29 IST 2026
[2026-06-12 15:24:29,877.877 INFO    ] ================================================
[2026-06-12 15:24:30,233.233 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 15:24:30
[2026-06-12 15:24:30,573.573 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 15:24:30,728.728 INFO    ] Initializing speech engine...
[2026-06-12 15:24:30,733.733 INFO    ] 2026-06-12 15:24:30
[2026-06-12 15:24:30,942.942 INFO    ] 2026-06-12 15:24:30
[2026-06-12 15:24:30,971.971 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 15:24:31,158.158 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 15:24:31,167.167 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 15:24:31,315.315 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 15:24:31,369.369 INFO    ] time= 12/06/2026 15:24:31
[2026-06-12 15:24:31,392.392 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 15:24:31,398.398 INFO    ] Checking for existing commands in stream...
[2026-06-12 15:24:31,466.466 INFO    ] No existing commands found in stream
[2026-06-12 15:24:36,476.476 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 15:24:36,479.479 INFO    ] Waiting 1.36 seconds before fallback handling...
[2026-06-12 15:24:38,220.220 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 15:24:38,222.222 INFO    ] Checking for system updates...
[2026-06-12 15:24:38,242.242 INFO    ] 200
[2026-06-12 15:24:38,244.244 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:24:38,274.274 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 15:24:38,276.276 INFO    ] No update needed
[2026-06-12 15:24:38,277.277 INFO    ] Checking for camera pi updates...
[2026-06-12 15:24:38,297.297 INFO    ] 200
[2026-06-12 15:24:38,298.298 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:24:38,323.323 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 15:24:38,367.367 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 15:24:38,369.369 INFO    ] No camera update needed
[2026-06-12 15:24:38,370.370 INFO    ] Script finished. Safe exiting...
[2026-06-12 15:24:38,372.372 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 15:24:38,375.375 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 15:24:38,377.377 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 15:24:40,416.416 INFO    ] ================================================
[2026-06-12 15:24:40,431.431 INFO    ] Launching Daemon at Fri Jun 12 15:24:40 IST 2026
[2026-06-12 15:24:40,443.443 INFO    ] ================================================
[2026-06-12 15:24:40,784.784 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 15:24:40
[2026-06-12 15:24:41,096.096 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 15:24:41,237.237 INFO    ] Initializing speech engine...
[2026-06-12 15:24:41,242.242 INFO    ] 2026-06-12 15:24:41
[2026-06-12 15:24:41,445.445 INFO    ] 2026-06-12 15:24:41
[2026-06-12 15:24:41,473.473 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 15:24:41,656.656 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 15:24:41,665.665 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 15:24:41,808.808 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 15:24:41,872.872 INFO    ] time= 12/06/2026 15:24:41
[2026-06-12 15:24:41,883.883 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 15:24:41,888.888 INFO    ] Checking for existing commands in stream...
[2026-06-12 15:24:41,955.955 INFO    ] No existing commands found in stream
[2026-06-12 15:24:46,969.969 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 15:24:46,972.972 INFO    ] Waiting 3.98 seconds before fallback handling...
[2026-06-12 15:24:51,312.312 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 15:24:51,314.314 INFO    ] Checking for system updates...
[2026-06-12 15:24:51,335.335 INFO    ] 200
[2026-06-12 15:24:51,336.336 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:24:51,369.369 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 15:24:51,370.370 INFO    ] No update needed
[2026-06-12 15:24:51,372.372 INFO    ] Checking for camera pi updates...
[2026-06-12 15:24:51,392.392 INFO    ] 200
[2026-06-12 15:24:51,393.393 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:24:51,420.420 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 15:24:51,477.477 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 15:24:51,478.478 INFO    ] No camera update needed
[2026-06-12 15:24:51,480.480 INFO    ] Script finished. Safe exiting...
[2026-06-12 15:24:51,481.481 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 15:24:51,484.484 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 15:24:51,488.488 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 15:24:53,525.525 INFO    ] ================================================
[2026-06-12 15:24:53,541.541 INFO    ] Launching Daemon at Fri Jun 12 15:24:53 IST 2026
[2026-06-12 15:24:53,552.552 INFO    ] ================================================
[2026-06-12 15:24:53,920.920 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 15:24:53
[2026-06-12 15:24:54,233.233 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 15:24:54,371.371 INFO    ] Initializing speech engine...
[2026-06-12 15:24:54,378.378 INFO    ] 2026-06-12 15:24:54
[2026-06-12 15:24:54,587.587 INFO    ] 2026-06-12 15:24:54
[2026-06-12 15:24:54,616.616 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 15:24:54,801.801 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 15:24:54,810.810 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 15:24:54,938.938 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 15:24:55,000.000 INFO    ] time= 12/06/2026 15:24:54
[2026-06-12 15:24:55,033.033 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 15:24:55,040.040 INFO    ] Checking for existing commands in stream...
[2026-06-12 15:24:55,107.107 INFO    ] No existing commands found in stream
[2026-06-12 15:25:00,116.116 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 15:25:00,119.119 INFO    ] Waiting 2.02 seconds before fallback handling...
[2026-06-12 15:25:02,500.500 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 15:25:02,501.501 INFO    ] Checking for system updates...
[2026-06-12 15:25:02,524.524 INFO    ] 200
[2026-06-12 15:25:02,525.525 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:25:02,557.557 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 15:25:02,559.559 INFO    ] No update needed
[2026-06-12 15:25:02,560.560 INFO    ] Checking for camera pi updates...
[2026-06-12 15:25:02,581.581 INFO    ] 200
[2026-06-12 15:25:02,582.582 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:25:02,608.608 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 15:25:02,654.654 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 15:25:02,656.656 INFO    ] No camera update needed
[2026-06-12 15:25:02,657.657 INFO    ] Script finished. Safe exiting...
[2026-06-12 15:25:02,658.658 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 15:25:02,662.662 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 15:25:02,665.665 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 15:25:04,702.702 INFO    ] ================================================
[2026-06-12 15:25:04,718.718 INFO    ] Launching Daemon at Fri Jun 12 15:25:04 IST 2026
[2026-06-12 15:25:04,729.729 INFO    ] ================================================
[2026-06-12 15:25:05,057.057 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 15:25:05
[2026-06-12 15:25:05,367.367 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 15:25:05,511.511 INFO    ] Initializing speech engine...
[2026-06-12 15:25:05,524.524 INFO    ] 2026-06-12 15:25:05
[2026-06-12 15:25:05,734.734 INFO    ] 2026-06-12 15:25:05
[2026-06-12 15:25:05,762.762 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 15:25:05,948.948 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 15:25:05,951.951 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 15:25:06,088.088 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 15:25:06,156.156 INFO    ] time= 12/06/2026 15:25:06
[2026-06-12 15:25:06,181.181 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 15:25:06,182.182 INFO    ] Checking for existing commands in stream...
[2026-06-12 15:25:06,254.254 INFO    ] No existing commands found in stream
[2026-06-12 15:25:11,263.263 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 15:25:11,265.265 INFO    ] Waiting 2.71 seconds before fallback handling...
[2026-06-12 15:25:14,400.400 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 15:25:14,403.403 INFO    ] Checking for system updates...
[2026-06-12 15:25:14,442.442 INFO    ] 200
[2026-06-12 15:25:14,445.445 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:25:14,496.496 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 15:25:14,499.499 INFO    ] No update needed
[2026-06-12 15:25:14,501.501 INFO    ] Checking for camera pi updates...
[2026-06-12 15:25:14,535.535 INFO    ] 200
[2026-06-12 15:25:14,538.538 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:25:14,580.580 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 15:25:14,687.687 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 15:25:14,688.688 INFO    ] No camera update needed
[2026-06-12 15:25:14,689.689 INFO    ] Script finished. Safe exiting...
[2026-06-12 15:25:14,691.691 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 15:25:14,694.694 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 15:25:14,696.696 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 15:25:16,735.735 INFO    ] ================================================
[2026-06-12 15:25:16,750.750 INFO    ] Launching Daemon at Fri Jun 12 15:25:16 IST 2026
[2026-06-12 15:25:16,761.761 INFO    ] ================================================
[2026-06-12 15:25:17,086.086 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 15:25:17
[2026-06-12 15:25:17,397.397 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 15:25:17,540.540 INFO    ] Initializing speech engine...
[2026-06-12 15:25:17,545.545 INFO    ] 2026-06-12 15:25:17
[2026-06-12 15:25:17,751.751 INFO    ] 2026-06-12 15:25:17
[2026-06-12 15:25:17,779.779 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 15:25:17,965.965 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 15:25:17,975.975 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 15:25:18,126.126 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 15:25:18,176.176 INFO    ] time= 12/06/2026 15:25:18
[2026-06-12 15:25:18,198.198 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 15:25:18,204.204 INFO    ] Checking for existing commands in stream...
[2026-06-12 15:25:18,271.271 INFO    ] No existing commands found in stream
[2026-06-12 15:25:23,281.281 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 15:25:23,284.284 INFO    ] Waiting 1.72 seconds before fallback handling...
[2026-06-12 15:25:25,430.430 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 15:25:25,432.432 INFO    ] Checking for system updates...
[2026-06-12 15:25:25,453.453 INFO    ] 200
[2026-06-12 15:25:25,454.454 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:25:25,484.484 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 15:25:25,485.485 INFO    ] No update needed
[2026-06-12 15:25:25,487.487 INFO    ] Checking for camera pi updates...
[2026-06-12 15:25:25,506.506 INFO    ] 200
[2026-06-12 15:25:25,507.507 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:25:25,530.530 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 15:25:25,576.576 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 15:25:25,577.577 INFO    ] No camera update needed
[2026-06-12 15:25:25,578.578 INFO    ] Script finished. Safe exiting...
[2026-06-12 15:25:25,579.579 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 15:25:25,582.582 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 15:25:25,585.585 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 15:25:27,622.622 INFO    ] ================================================
[2026-06-12 15:25:27,637.637 INFO    ] Launching Daemon at Fri Jun 12 15:25:27 IST 2026
[2026-06-12 15:25:27,648.648 INFO    ] ================================================
[2026-06-12 15:25:27,979.979 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 15:25:27
[2026-06-12 15:25:28,294.294 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 15:25:28,439.439 INFO    ] Initializing speech engine...
[2026-06-12 15:25:28,444.444 INFO    ] 2026-06-12 15:25:28
[2026-06-12 15:25:28,648.648 INFO    ] 2026-06-12 15:25:28
[2026-06-12 15:25:28,676.676 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 15:25:28,859.859 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 15:25:28,868.868 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 15:25:29,012.012 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 15:25:29,065.065 INFO    ] time= 12/06/2026 15:25:29
[2026-06-12 15:25:29,087.087 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 15:25:29,093.093 INFO    ] Checking for existing commands in stream...
[2026-06-12 15:25:29,157.157 INFO    ] No existing commands found in stream
[2026-06-12 15:25:34,168.168 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 15:25:34,171.171 INFO    ] Waiting 1.52 seconds before fallback handling...
[2026-06-12 15:25:36,089.089 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 15:25:36,090.090 INFO    ] Checking for system updates...
[2026-06-12 15:25:36,112.112 INFO    ] 200
[2026-06-12 15:25:36,113.113 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:25:36,146.146 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 15:25:36,147.147 INFO    ] No update needed
[2026-06-12 15:25:36,148.148 INFO    ] Checking for camera pi updates...
[2026-06-12 15:25:36,167.167 INFO    ] 200
[2026-06-12 15:25:36,169.169 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:25:36,198.198 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 15:25:36,242.242 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 15:25:36,244.244 INFO    ] No camera update needed
[2026-06-12 15:25:36,245.245 INFO    ] Script finished. Safe exiting...
[2026-06-12 15:25:36,246.246 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 15:25:36,249.249 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 15:25:36,252.252 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 15:25:38,291.291 INFO    ] ================================================
[2026-06-12 15:25:38,306.306 INFO    ] Launching Daemon at Fri Jun 12 15:25:38 IST 2026
[2026-06-12 15:25:38,317.317 INFO    ] ================================================
[2026-06-12 15:25:38,662.662 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 15:25:38
[2026-06-12 15:25:38,980.980 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 15:25:39,114.114 INFO    ] Initializing speech engine...
[2026-06-12 15:25:39,127.127 INFO    ] 2026-06-12 15:25:39
[2026-06-12 15:25:39,334.334 INFO    ] 2026-06-12 15:25:39
[2026-06-12 15:25:39,364.364 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 15:25:39,549.549 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 15:25:39,557.557 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 15:25:39,698.698 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 15:25:39,756.756 INFO    ] time= 12/06/2026 15:25:39
[2026-06-12 15:25:39,779.779 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 15:25:39,785.785 INFO    ] Checking for existing commands in stream...
[2026-06-12 15:25:39,852.852 INFO    ] No existing commands found in stream
[2026-06-12 15:25:44,861.861 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 15:25:44,864.864 INFO    ] Waiting 3.86 seconds before fallback handling...
[2026-06-12 15:25:49,129.129 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 15:25:49,131.131 INFO    ] Checking for system updates...
[2026-06-12 15:25:49,151.151 INFO    ] 200
[2026-06-12 15:25:49,153.153 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:25:49,185.185 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 15:25:49,186.186 INFO    ] No update needed
[2026-06-12 15:25:49,187.187 INFO    ] Checking for camera pi updates...
[2026-06-12 15:25:49,206.206 INFO    ] 200
[2026-06-12 15:25:49,208.208 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:25:49,231.231 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 15:25:49,282.282 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 15:25:49,283.283 INFO    ] No camera update needed
[2026-06-12 15:25:49,285.285 INFO    ] Script finished. Safe exiting...
[2026-06-12 15:25:49,286.286 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 15:25:49,289.289 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 15:25:49,293.293 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 15:25:51,330.330 INFO    ] ================================================
[2026-06-12 15:25:51,345.345 INFO    ] Launching Daemon at Fri Jun 12 15:25:51 IST 2026
[2026-06-12 15:25:51,355.355 INFO    ] ================================================
[2026-06-12 15:25:51,682.682 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 15:25:51
[2026-06-12 15:25:51,994.994 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 15:25:52,126.126 INFO    ] Initializing speech engine...
[2026-06-12 15:25:52,131.131 INFO    ] 2026-06-12 15:25:52
[2026-06-12 15:25:52,362.362 INFO    ] 2026-06-12 15:25:52
[2026-06-12 15:25:52,392.392 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 15:25:52,591.591 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 15:25:52,601.601 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 15:25:52,735.735 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 15:25:52,786.786 INFO    ] time= 12/06/2026 15:25:52
[2026-06-12 15:25:52,821.821 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 15:25:52,844.844 INFO    ] Checking for existing commands in stream...
[2026-06-12 15:25:52,946.946 INFO    ] No existing commands found in stream
[2026-06-12 15:25:57,955.955 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 15:25:57,958.958 INFO    ] Waiting 0.80 seconds before fallback handling...
[2026-06-12 15:25:59,118.118 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 15:25:59,120.120 INFO    ] Checking for system updates...
[2026-06-12 15:25:59,140.140 INFO    ] 200
[2026-06-12 15:25:59,141.141 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:25:59,173.173 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 15:25:59,174.174 INFO    ] No update needed
[2026-06-12 15:25:59,176.176 INFO    ] Checking for camera pi updates...
[2026-06-12 15:25:59,196.196 INFO    ] 200
[2026-06-12 15:25:59,197.197 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:25:59,220.220 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 15:25:59,268.268 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 15:25:59,269.269 INFO    ] No camera update needed
[2026-06-12 15:25:59,271.271 INFO    ] Script finished. Safe exiting...
[2026-06-12 15:25:59,272.272 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 15:25:59,275.275 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 15:25:59,277.277 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 15:26:01,315.315 INFO    ] ================================================
[2026-06-12 15:26:01,330.330 INFO    ] Launching Daemon at Fri Jun 12 15:26:01 IST 2026
[2026-06-12 15:26:01,341.341 INFO    ] ================================================
[2026-06-12 15:26:01,841.841 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 15:26:01
[2026-06-12 15:26:02,259.259 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 15:26:02,448.448 INFO    ] Initializing speech engine...
[2026-06-12 15:26:02,456.456 INFO    ] 2026-06-12 15:26:02
[2026-06-12 15:26:02,646.646 INFO    ] 2026-06-12 15:26:02
[2026-06-12 15:26:02,693.693 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 15:26:02,852.852 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 15:26:02,901.901 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 15:26:03,068.068 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 15:26:03,130.130 INFO    ] time= 12/06/2026 15:26:03
[2026-06-12 15:26:03,154.154 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 15:26:03,171.171 INFO    ] Checking for existing commands in stream...
[2026-06-12 15:26:03,273.273 INFO    ] No existing commands found in stream
[2026-06-12 15:26:08,287.287 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 15:26:08,290.290 INFO    ] Waiting 1.27 seconds before fallback handling...
[2026-06-12 15:26:09,938.938 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 15:26:09,939.939 INFO    ] Checking for system updates...
[2026-06-12 15:26:09,961.961 INFO    ] 200
[2026-06-12 15:26:09,962.962 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:26:09,992.992 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 15:26:09,993.993 INFO    ] No update needed
[2026-06-12 15:26:09,994.994 INFO    ] Checking for camera pi updates...
[2026-06-12 15:26:10,014.014 INFO    ] 200
[2026-06-12 15:26:10,016.016 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:26:10,039.039 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 15:26:10,080.080 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 15:26:10,081.081 INFO    ] No camera update needed
[2026-06-12 15:26:10,082.082 INFO    ] Script finished. Safe exiting...
[2026-06-12 15:26:10,084.084 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 15:26:10,086.086 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 15:26:10,089.089 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 15:26:12,128.128 INFO    ] ================================================
[2026-06-12 15:26:12,144.144 INFO    ] Launching Daemon at Fri Jun 12 15:26:12 IST 2026
[2026-06-12 15:26:12,155.155 INFO    ] ================================================
[2026-06-12 15:26:12,503.503 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 15:26:12
[2026-06-12 15:26:12,814.814 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 15:26:12,948.948 INFO    ] Initializing speech engine...
[2026-06-12 15:26:12,961.961 INFO    ] 2026-06-12 15:26:12
[2026-06-12 15:26:13,180.180 INFO    ] 2026-06-12 15:26:13
[2026-06-12 15:26:13,211.211 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 15:26:13,409.409 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 15:26:13,419.419 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 15:26:13,555.555 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 15:26:13,619.619 INFO    ] time= 12/06/2026 15:26:13
[2026-06-12 15:26:13,646.646 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 15:26:13,648.648 INFO    ] Checking for existing commands in stream...
[2026-06-12 15:26:13,742.742 INFO    ] No existing commands found in stream
[2026-06-12 15:26:18,751.751 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 15:26:18,753.753 INFO    ] Waiting 1.01 seconds before fallback handling...
[2026-06-12 15:26:20,112.112 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 15:26:20,114.114 INFO    ] Checking for system updates...
[2026-06-12 15:26:20,135.135 INFO    ] 200
[2026-06-12 15:26:20,136.136 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:26:20,166.166 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 15:26:20,167.167 INFO    ] No update needed
[2026-06-12 15:26:20,169.169 INFO    ] Checking for camera pi updates...
[2026-06-12 15:26:20,188.188 INFO    ] 200
[2026-06-12 15:26:20,189.189 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:26:20,212.212 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 15:26:20,253.253 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 15:26:20,255.255 INFO    ] No camera update needed
[2026-06-12 15:26:20,256.256 INFO    ] Script finished. Safe exiting...
[2026-06-12 15:26:20,257.257 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 15:26:20,260.260 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 15:26:20,263.263 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 15:26:22,302.302 INFO    ] ================================================
[2026-06-12 15:26:22,317.317 INFO    ] Launching Daemon at Fri Jun 12 15:26:22 IST 2026
[2026-06-12 15:26:22,328.328 INFO    ] ================================================
[2026-06-12 15:26:22,666.666 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 15:26:22
[2026-06-12 15:26:22,978.978 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 15:26:23,116.116 INFO    ] Initializing speech engine...
[2026-06-12 15:26:23,126.126 INFO    ] 2026-06-12 15:26:23
[2026-06-12 15:26:23,329.329 INFO    ] 2026-06-12 15:26:23
[2026-06-12 15:26:23,358.358 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 15:26:23,541.541 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 15:26:23,550.550 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 15:26:23,689.689 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 15:26:23,746.746 INFO    ] time= 12/06/2026 15:26:23
[2026-06-12 15:26:23,769.769 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 15:26:23,775.775 INFO    ] Checking for existing commands in stream...
[2026-06-12 15:26:23,865.865 INFO    ] No existing commands found in stream
[2026-06-12 15:26:28,874.874 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 15:26:28,876.876 INFO    ] Waiting 3.46 seconds before fallback handling...
[2026-06-12 15:26:32,735.735 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 15:26:32,738.738 INFO    ] Checking for system updates...
[2026-06-12 15:26:32,778.778 INFO    ] 200
[2026-06-12 15:26:32,780.780 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:26:32,839.839 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 15:26:32,841.841 INFO    ] No update needed
[2026-06-12 15:26:32,844.844 INFO    ] Checking for camera pi updates...
[2026-06-12 15:26:32,875.875 INFO    ] 200
[2026-06-12 15:26:32,876.876 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:26:32,899.899 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 15:26:32,946.946 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 15:26:32,947.947 INFO    ] No camera update needed
[2026-06-12 15:26:32,948.948 INFO    ] Script finished. Safe exiting...
[2026-06-12 15:26:32,949.949 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 15:26:32,952.952 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 15:26:32,955.955 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 15:26:35,995.995 INFO    ] ================================================
[2026-06-12 15:26:35,010.010 INFO    ] Launching Daemon at Fri Jun 12 15:26:35 IST 2026
[2026-06-12 15:26:35,021.021 INFO    ] ================================================
[2026-06-12 15:26:35,365.365 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 15:26:35
[2026-06-12 15:26:35,701.701 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 15:26:35,851.851 INFO    ] Initializing speech engine...
[2026-06-12 15:26:35,857.857 INFO    ] 2026-06-12 15:26:35
[2026-06-12 15:26:36,063.063 INFO    ] 2026-06-12 15:26:36
[2026-06-12 15:26:36,092.092 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 15:26:36,275.275 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 15:26:36,285.285 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 15:26:36,435.435 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 15:26:36,483.483 INFO    ] time= 12/06/2026 15:26:36
[2026-06-12 15:26:36,506.506 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 15:26:36,511.511 INFO    ] Checking for existing commands in stream...
[2026-06-12 15:26:36,579.579 INFO    ] No existing commands found in stream
[2026-06-12 15:26:41,593.593 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 15:26:41,596.596 INFO    ] Waiting 2.65 seconds before fallback handling...
[2026-06-12 15:26:44,616.616 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 15:26:44,617.617 INFO    ] Checking for system updates...
[2026-06-12 15:26:44,638.638 INFO    ] 200
[2026-06-12 15:26:44,639.639 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:26:44,671.671 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 15:26:44,673.673 INFO    ] No update needed
[2026-06-12 15:26:44,674.674 INFO    ] Checking for camera pi updates...
[2026-06-12 15:26:44,694.694 INFO    ] 200
[2026-06-12 15:26:44,695.695 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:26:44,720.720 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 15:26:44,761.761 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 15:26:44,762.762 INFO    ] No camera update needed
[2026-06-12 15:26:44,764.764 INFO    ] Script finished. Safe exiting...
[2026-06-12 15:26:44,765.765 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 15:26:44,768.768 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 15:26:44,772.772 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 15:26:46,810.810 INFO    ] ================================================
[2026-06-12 15:26:46,825.825 INFO    ] Launching Daemon at Fri Jun 12 15:26:46 IST 2026
[2026-06-12 15:26:46,835.835 INFO    ] ================================================
[2026-06-12 15:26:47,162.162 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 15:26:47
[2026-06-12 15:26:47,474.474 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 15:26:47,604.604 INFO    ] Initializing speech engine...
[2026-06-12 15:26:47,607.607 INFO    ] 2026-06-12 15:26:47
[2026-06-12 15:26:47,838.838 INFO    ] 2026-06-12 15:26:47
[2026-06-12 15:26:47,869.869 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 15:26:48,068.068 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 15:26:48,078.078 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 15:26:48,218.218 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 15:26:48,282.282 INFO    ] time= 12/06/2026 15:26:48
[2026-06-12 15:26:48,315.315 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 15:26:48,317.317 INFO    ] Checking for existing commands in stream...
[2026-06-12 15:26:48,392.392 INFO    ] No existing commands found in stream
[2026-06-12 15:26:53,403.403 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 15:26:53,406.406 INFO    ] Waiting 1.48 seconds before fallback handling...
[2026-06-12 15:26:55,275.275 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 15:26:55,277.277 INFO    ] Checking for system updates...
[2026-06-12 15:26:55,314.314 INFO    ] 200
[2026-06-12 15:26:55,316.316 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:26:55,379.379 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 15:26:55,382.382 INFO    ] No update needed
[2026-06-12 15:26:55,385.385 INFO    ] Checking for camera pi updates...
[2026-06-12 15:26:55,411.411 INFO    ] 200
[2026-06-12 15:26:55,413.413 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:26:55,436.436 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 15:26:55,482.482 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 15:26:55,484.484 INFO    ] No camera update needed
[2026-06-12 15:26:55,485.485 INFO    ] Script finished. Safe exiting...
[2026-06-12 15:26:55,486.486 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 15:26:55,490.490 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 15:26:55,493.493 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 15:26:57,531.531 INFO    ] ================================================
[2026-06-12 15:26:57,546.546 INFO    ] Launching Daemon at Fri Jun 12 15:26:57 IST 2026
[2026-06-12 15:26:57,557.557 INFO    ] ================================================
[2026-06-12 15:26:57,947.947 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 15:26:57
[2026-06-12 15:26:58,285.285 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 15:26:58,435.435 INFO    ] Initializing speech engine...
[2026-06-12 15:26:58,441.441 INFO    ] 2026-06-12 15:26:58
[2026-06-12 15:26:58,649.649 INFO    ] 2026-06-12 15:26:58
[2026-06-12 15:26:58,678.678 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 15:26:58,863.863 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 15:26:58,873.873 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 15:26:59,024.024 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 15:26:59,072.072 INFO    ] time= 12/06/2026 15:26:59
[2026-06-12 15:26:59,094.094 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 15:26:59,101.101 INFO    ] Checking for existing commands in stream...
[2026-06-12 15:26:59,167.167 INFO    ] No existing commands found in stream
[2026-06-12 15:27:04,182.182 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 15:27:04,185.185 INFO    ] Waiting 2.84 seconds before fallback handling...
[2026-06-12 15:27:07,368.368 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 15:27:07,369.369 INFO    ] Checking for system updates...
[2026-06-12 15:27:07,392.392 INFO    ] 200
[2026-06-12 15:27:07,393.393 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:27:07,423.423 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 15:27:07,425.425 INFO    ] No update needed
[2026-06-12 15:27:07,426.426 INFO    ] Checking for camera pi updates...
[2026-06-12 15:27:07,447.447 INFO    ] 200
[2026-06-12 15:27:07,449.449 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:27:07,474.474 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 15:27:07,615.615 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 15:27:07,616.616 INFO    ] No camera update needed
[2026-06-12 15:27:07,618.618 INFO    ] Script finished. Safe exiting...
[2026-06-12 15:27:07,619.619 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 15:27:07,622.622 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 15:27:07,625.625 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 15:27:09,664.664 INFO    ] ================================================
[2026-06-12 15:27:09,679.679 INFO    ] Launching Daemon at Fri Jun 12 15:27:09 IST 2026
[2026-06-12 15:27:09,690.690 INFO    ] ================================================
[2026-06-12 15:27:10,045.045 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 15:27:10
[2026-06-12 15:27:10,365.365 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 15:27:10,499.499 INFO    ] Initializing speech engine...
[2026-06-12 15:27:10,503.503 INFO    ] 2026-06-12 15:27:10
[2026-06-12 15:27:10,696.696 INFO    ] 2026-06-12 15:27:10
[2026-06-12 15:27:10,742.742 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 15:27:10,939.939 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 15:27:10,971.971 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 15:27:11,117.117 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 15:27:11,175.175 INFO    ] time= 12/06/2026 15:27:11
[2026-06-12 15:27:11,220.220 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 15:27:11,222.222 INFO    ] Checking for existing commands in stream...
[2026-06-12 15:27:11,298.298 INFO    ] No existing commands found in stream
[2026-06-12 15:27:16,309.309 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 15:27:16,312.312 INFO    ] Waiting 1.25 seconds before fallback handling...
[2026-06-12 15:27:17,978.978 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 15:27:17,980.980 INFO    ] Checking for system updates...
[2026-06-12 15:27:18,001.001 INFO    ] 200
[2026-06-12 15:27:18,002.002 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:27:18,035.035 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 15:27:18,037.037 INFO    ] No update needed
[2026-06-12 15:27:18,038.038 INFO    ] Checking for camera pi updates...
[2026-06-12 15:27:18,059.059 INFO    ] 200
[2026-06-12 15:27:18,061.061 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:27:18,084.084 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 15:27:18,155.155 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 15:27:18,156.156 INFO    ] No camera update needed
[2026-06-12 15:27:18,158.158 INFO    ] Script finished. Safe exiting...
[2026-06-12 15:27:18,159.159 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 15:27:18,162.162 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 15:27:18,165.165 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 15:27:20,203.203 INFO    ] ================================================
[2026-06-12 15:27:20,218.218 INFO    ] Launching Daemon at Fri Jun 12 15:27:20 IST 2026
[2026-06-12 15:27:20,229.229 INFO    ] ================================================
[2026-06-12 15:27:20,553.553 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 15:27:20
[2026-06-12 15:27:20,865.865 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 15:27:20,998.998 INFO    ] Initializing speech engine...
[2026-06-12 15:27:21,003.003 INFO    ] 2026-06-12 15:27:20
[2026-06-12 15:27:21,221.221 INFO    ] 2026-06-12 15:27:21
[2026-06-12 15:27:21,240.240 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 15:27:21,411.411 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 15:27:21,465.465 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 15:27:21,610.610 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 15:27:21,663.663 INFO    ] time= 12/06/2026 15:27:21
[2026-06-12 15:27:21,698.698 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 15:27:21,716.716 INFO    ] Checking for existing commands in stream...
[2026-06-12 15:27:21,819.819 INFO    ] No existing commands found in stream
[2026-06-12 15:27:26,828.828 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 15:27:26,831.831 INFO    ] Waiting 2.28 seconds before fallback handling...
[2026-06-12 15:27:29,543.543 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 15:27:29,546.546 INFO    ] Checking for system updates...
[2026-06-12 15:27:29,583.583 INFO    ] 200
[2026-06-12 15:27:29,585.585 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:27:29,637.637 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 15:27:29,639.639 INFO    ] No update needed
[2026-06-12 15:27:29,642.642 INFO    ] Checking for camera pi updates...
[2026-06-12 15:27:29,669.669 INFO    ] 200
[2026-06-12 15:27:29,671.671 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:27:29,694.694 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 15:27:29,736.736 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 15:27:29,738.738 INFO    ] No camera update needed
[2026-06-12 15:27:29,739.739 INFO    ] Script finished. Safe exiting...
[2026-06-12 15:27:29,741.741 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 15:27:29,743.743 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 15:27:29,746.746 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 15:27:31,784.784 INFO    ] ================================================
[2026-06-12 15:27:31,801.801 INFO    ] Launching Daemon at Fri Jun 12 15:27:31 IST 2026
[2026-06-12 15:27:31,813.813 INFO    ] ================================================
[2026-06-12 15:27:32,196.196 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 15:27:32
[2026-06-12 15:27:32,543.543 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 15:27:32,684.684 INFO    ] Initializing speech engine...
[2026-06-12 15:27:32,689.689 INFO    ] 2026-06-12 15:27:32
[2026-06-12 15:27:32,913.913 INFO    ] 2026-06-12 15:27:32
[2026-06-12 15:27:32,942.942 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 15:27:33,130.130 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 15:27:33,140.140 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 15:27:33,265.265 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 15:27:33,311.311 INFO    ] time= 12/06/2026 15:27:33
[2026-06-12 15:27:33,351.351 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 15:27:33,367.367 INFO    ] Checking for existing commands in stream...
[2026-06-12 15:27:33,440.440 INFO    ] No existing commands found in stream
[2026-06-12 15:27:38,454.454 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 15:27:38,456.456 INFO    ] Waiting 3.68 seconds before fallback handling...
[2026-06-12 15:27:42,537.537 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 15:27:42,539.539 INFO    ] Checking for system updates...
[2026-06-12 15:27:42,561.561 INFO    ] 200
[2026-06-12 15:27:42,562.562 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:27:42,597.597 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 15:27:42,599.599 INFO    ] No update needed
[2026-06-12 15:27:42,600.600 INFO    ] Checking for camera pi updates...
[2026-06-12 15:27:42,620.620 INFO    ] 200
[2026-06-12 15:27:42,622.622 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:27:42,645.645 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 15:27:42,706.706 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 15:27:42,708.708 INFO    ] No camera update needed
[2026-06-12 15:27:42,709.709 INFO    ] Script finished. Safe exiting...
[2026-06-12 15:27:42,711.711 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 15:27:42,714.714 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 15:27:42,717.717 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 15:27:44,754.754 INFO    ] ================================================
[2026-06-12 15:27:44,770.770 INFO    ] Launching Daemon at Fri Jun 12 15:27:44 IST 2026
[2026-06-12 15:27:44,781.781 INFO    ] ================================================
[2026-06-12 15:27:45,129.129 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 15:27:45
[2026-06-12 15:27:45,442.442 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 15:27:45,573.573 INFO    ] Initializing speech engine...
[2026-06-12 15:27:45,580.580 INFO    ] 2026-06-12 15:27:45
[2026-06-12 15:27:45,792.792 INFO    ] 2026-06-12 15:27:45
[2026-06-12 15:27:45,821.821 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 15:27:46,004.004 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 15:27:46,013.013 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 15:27:46,164.164 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 15:27:46,212.212 INFO    ] time= 12/06/2026 15:27:46
[2026-06-12 15:27:46,235.235 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 15:27:46,241.241 INFO    ] Checking for existing commands in stream...
[2026-06-12 15:27:46,306.306 INFO    ] No existing commands found in stream
[2026-06-12 15:27:51,317.317 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 15:27:51,319.319 INFO    ] Waiting 3.51 seconds before fallback handling...
[2026-06-12 15:27:55,239.239 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 15:27:55,241.241 INFO    ] Checking for system updates...
[2026-06-12 15:27:55,262.262 INFO    ] 200
[2026-06-12 15:27:55,263.263 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:27:55,294.294 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 15:27:55,296.296 INFO    ] No update needed
[2026-06-12 15:27:55,297.297 INFO    ] Checking for camera pi updates...
[2026-06-12 15:27:55,318.318 INFO    ] 200
[2026-06-12 15:27:55,319.319 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:27:55,345.345 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 15:27:55,399.399 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 15:27:55,401.401 INFO    ] No camera update needed
[2026-06-12 15:27:55,402.402 INFO    ] Script finished. Safe exiting...
[2026-06-12 15:27:55,404.404 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 15:27:55,407.407 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 15:27:55,410.410 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 15:27:57,450.450 INFO    ] ================================================
[2026-06-12 15:27:57,465.465 INFO    ] Launching Daemon at Fri Jun 12 15:27:57 IST 2026
[2026-06-12 15:27:57,476.476 INFO    ] ================================================
[2026-06-12 15:27:57,807.807 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 15:27:57
[2026-06-12 15:27:58,120.120 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 15:27:58,250.250 INFO    ] Initializing speech engine...
[2026-06-12 15:27:58,257.257 INFO    ] 2026-06-12 15:27:58
[2026-06-12 15:27:58,469.469 INFO    ] 2026-06-12 15:27:58
[2026-06-12 15:27:58,498.498 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 15:27:58,682.682 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 15:27:58,692.692 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 15:27:58,884.884 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 15:27:58,909.909 INFO    ] time= 12/06/2026 15:27:58
[2026-06-12 15:27:58,915.915 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 15:27:58,917.917 INFO    ] Checking for existing commands in stream...
[2026-06-12 15:27:58,984.984 INFO    ] No existing commands found in stream
[2026-06-12 15:28:03,997.997 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 15:28:04,000.000 INFO    ] Waiting 2.94 seconds before fallback handling...
[2026-06-12 15:28:07,349.349 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 15:28:07,351.351 INFO    ] Checking for system updates...
[2026-06-12 15:28:07,371.371 INFO    ] 200
[2026-06-12 15:28:07,373.373 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:28:07,402.402 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 15:28:07,404.404 INFO    ] No update needed
[2026-06-12 15:28:07,405.405 INFO    ] Checking for camera pi updates...
[2026-06-12 15:28:07,425.425 INFO    ] 200
[2026-06-12 15:28:07,426.426 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:28:07,449.449 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 15:28:07,495.495 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 15:28:07,497.497 INFO    ] No camera update needed
[2026-06-12 15:28:07,498.498 INFO    ] Script finished. Safe exiting...
[2026-06-12 15:28:07,499.499 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 15:28:07,502.502 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 15:28:07,505.505 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 15:28:09,547.547 INFO    ] ================================================
[2026-06-12 15:28:09,563.563 INFO    ] Launching Daemon at Fri Jun 12 15:28:09 IST 2026
[2026-06-12 15:28:09,573.573 INFO    ] ================================================
[2026-06-12 15:28:09,947.947 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 15:28:09
[2026-06-12 15:28:10,291.291 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 15:28:10,443.443 INFO    ] Initializing speech engine...
[2026-06-12 15:28:10,447.447 INFO    ] 2026-06-12 15:28:10
[2026-06-12 15:28:10,656.656 INFO    ] 2026-06-12 15:28:10
[2026-06-12 15:28:10,685.685 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 15:28:10,868.868 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 15:28:10,877.877 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 15:28:11,039.039 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 15:28:11,078.078 INFO    ] time= 12/06/2026 15:28:11
[2026-06-12 15:28:11,099.099 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 15:28:11,105.105 INFO    ] Checking for existing commands in stream...
[2026-06-12 15:28:11,172.172 INFO    ] No existing commands found in stream
[2026-06-12 15:28:16,196.196 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 15:28:16,200.200 INFO    ] Waiting 1.43 seconds before fallback handling...
[2026-06-12 15:28:18,007.007 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 15:28:18,009.009 INFO    ] Checking for system updates...
[2026-06-12 15:28:18,030.030 INFO    ] 200
[2026-06-12 15:28:18,031.031 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:28:18,061.061 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 15:28:18,062.062 INFO    ] No update needed
[2026-06-12 15:28:18,064.064 INFO    ] Checking for camera pi updates...
[2026-06-12 15:28:18,083.083 INFO    ] 200
[2026-06-12 15:28:18,084.084 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:28:18,109.109 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 15:28:18,156.156 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 15:28:18,157.157 INFO    ] No camera update needed
[2026-06-12 15:28:18,159.159 INFO    ] Script finished. Safe exiting...
[2026-06-12 15:28:18,161.161 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 15:28:18,164.164 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 15:28:18,166.166 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 15:28:20,204.204 INFO    ] ================================================
[2026-06-12 15:28:20,219.219 INFO    ] Launching Daemon at Fri Jun 12 15:28:20 IST 2026
[2026-06-12 15:28:20,229.229 INFO    ] ================================================
[2026-06-12 15:28:20,601.601 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 15:28:20
[2026-06-12 15:28:20,944.944 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 15:28:21,087.087 INFO    ] Initializing speech engine...
[2026-06-12 15:28:21,095.095 INFO    ] 2026-06-12 15:28:21
[2026-06-12 15:28:21,316.316 INFO    ] 2026-06-12 15:28:21
[2026-06-12 15:28:21,345.345 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 15:28:21,535.535 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 15:28:21,545.545 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 15:28:21,712.712 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 15:28:21,758.758 INFO    ] time= 12/06/2026 15:28:21
[2026-06-12 15:28:21,778.778 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 15:28:21,780.780 INFO    ] Checking for existing commands in stream...
[2026-06-12 15:28:21,851.851 INFO    ] No existing commands found in stream
[2026-06-12 15:28:26,862.862 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 15:28:26,865.865 INFO    ] Waiting 1.61 seconds before fallback handling...
[2026-06-12 15:28:28,868.868 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 15:28:28,870.870 INFO    ] Checking for system updates...
[2026-06-12 15:28:28,891.891 INFO    ] 200
[2026-06-12 15:28:28,892.892 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:28:28,922.922 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 15:28:28,923.923 INFO    ] No update needed
[2026-06-12 15:28:28,925.925 INFO    ] Checking for camera pi updates...
[2026-06-12 15:28:28,944.944 INFO    ] 200
[2026-06-12 15:28:28,945.945 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:28:28,968.968 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 15:28:29,019.019 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 15:28:29,021.021 INFO    ] No camera update needed
[2026-06-12 15:28:29,022.022 INFO    ] Script finished. Safe exiting...
[2026-06-12 15:28:29,027.027 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 15:28:29,030.030 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 15:28:29,033.033 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 15:28:31,071.071 INFO    ] ================================================
[2026-06-12 15:28:31,086.086 INFO    ] Launching Daemon at Fri Jun 12 15:28:31 IST 2026
[2026-06-12 15:28:31,097.097 INFO    ] ================================================
[2026-06-12 15:28:31,493.493 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 15:28:31
[2026-06-12 15:28:31,834.834 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 15:28:31,976.976 INFO    ] Initializing speech engine...
[2026-06-12 15:28:31,982.982 INFO    ] 2026-06-12 15:28:31
[2026-06-12 15:28:32,209.209 INFO    ] 2026-06-12 15:28:32
[2026-06-12 15:28:32,241.241 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 15:28:32,444.444 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 15:28:32,457.457 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 15:28:32,619.619 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 15:28:32,677.677 INFO    ] time= 12/06/2026 15:28:32
[2026-06-12 15:28:32,709.709 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 15:28:32,717.717 INFO    ] Checking for existing commands in stream...
[2026-06-12 15:28:32,796.796 INFO    ] No existing commands found in stream
[2026-06-12 15:28:37,805.805 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 15:28:37,808.808 INFO    ] Waiting 1.43 seconds before fallback handling...
[2026-06-12 15:28:39,588.588 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 15:28:39,590.590 INFO    ] Checking for system updates...
[2026-06-12 15:28:39,610.610 INFO    ] 200
[2026-06-12 15:28:39,612.612 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:28:39,642.642 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 15:28:39,643.643 INFO    ] No update needed
[2026-06-12 15:28:39,644.644 INFO    ] Checking for camera pi updates...
[2026-06-12 15:28:39,665.665 INFO    ] 200
[2026-06-12 15:28:39,666.666 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:28:39,689.689 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 15:28:39,787.787 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 15:28:39,789.789 INFO    ] No camera update needed
[2026-06-12 15:28:39,790.790 INFO    ] Script finished. Safe exiting...
[2026-06-12 15:28:39,791.791 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 15:28:39,794.794 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 15:28:39,797.797 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 15:28:41,834.834 INFO    ] ================================================
[2026-06-12 15:28:41,850.850 INFO    ] Launching Daemon at Fri Jun 12 15:28:41 IST 2026
[2026-06-12 15:28:41,860.860 INFO    ] ================================================
[2026-06-12 15:28:42,236.236 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 15:28:42
[2026-06-12 15:28:42,578.578 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 15:28:42,734.734 INFO    ] Initializing speech engine...
[2026-06-12 15:28:42,739.739 INFO    ] 2026-06-12 15:28:42
[2026-06-12 15:28:42,945.945 INFO    ] 2026-06-12 15:28:42
[2026-06-12 15:28:42,975.975 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 15:28:43,159.159 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 15:28:43,171.171 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 15:28:43,374.374 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 15:28:43,386.386 INFO    ] time= 12/06/2026 15:28:43
[2026-06-12 15:28:43,391.391 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 15:28:43,393.393 INFO    ] Checking for existing commands in stream...
[2026-06-12 15:28:43,460.460 INFO    ] No existing commands found in stream
[2026-06-12 15:28:48,470.470 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 15:28:48,473.473 INFO    ] Waiting 3.41 seconds before fallback handling...
[2026-06-12 15:28:52,279.279 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 15:28:52,281.281 INFO    ] Checking for system updates...
[2026-06-12 15:28:52,303.303 INFO    ] 200
[2026-06-12 15:28:52,305.305 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:28:52,337.337 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 15:28:52,339.339 INFO    ] No update needed
[2026-06-12 15:28:52,340.340 INFO    ] Checking for camera pi updates...
[2026-06-12 15:28:52,360.360 INFO    ] 200
[2026-06-12 15:28:52,362.362 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:28:52,387.387 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 15:28:52,446.446 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 15:28:52,448.448 INFO    ] No camera update needed
[2026-06-12 15:28:52,449.449 INFO    ] Script finished. Safe exiting...
[2026-06-12 15:28:52,451.451 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 15:28:52,454.454 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 15:28:52,457.457 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 15:28:54,495.495 INFO    ] ================================================
[2026-06-12 15:28:54,509.509 INFO    ] Launching Daemon at Fri Jun 12 15:28:54 IST 2026
[2026-06-12 15:28:54,520.520 INFO    ] ================================================
[2026-06-12 15:28:54,864.864 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 15:28:54
[2026-06-12 15:28:55,178.178 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 15:28:55,307.307 INFO    ] Initializing speech engine...
[2026-06-12 15:28:55,316.316 INFO    ] 2026-06-12 15:28:55
[2026-06-12 15:28:55,527.527 INFO    ] 2026-06-12 15:28:55
[2026-06-12 15:28:55,555.555 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 15:28:55,738.738 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 15:28:55,748.748 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 15:28:55,897.897 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 15:28:55,945.945 INFO    ] time= 12/06/2026 15:28:55
[2026-06-12 15:28:55,967.967 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 15:28:55,973.973 INFO    ] Checking for existing commands in stream...
[2026-06-12 15:28:56,040.040 INFO    ] No existing commands found in stream
[2026-06-12 15:29:01,049.049 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 15:29:01,052.052 INFO    ] Waiting 0.05 seconds before fallback handling...
[2026-06-12 15:29:01,516.516 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 15:29:01,518.518 INFO    ] Checking for system updates...
[2026-06-12 15:29:01,543.543 INFO    ] 200
[2026-06-12 15:29:01,545.545 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:29:01,588.588 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 15:29:01,592.592 INFO    ] No update needed
[2026-06-12 15:29:01,594.594 INFO    ] Checking for camera pi updates...
[2026-06-12 15:29:01,625.625 INFO    ] 200
[2026-06-12 15:29:01,628.628 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:29:01,671.671 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 15:29:01,717.717 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 15:29:01,719.719 INFO    ] No camera update needed
[2026-06-12 15:29:01,721.721 INFO    ] Script finished. Safe exiting...
[2026-06-12 15:29:01,723.723 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 15:29:01,728.728 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 15:29:01,732.732 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 15:29:03,773.773 INFO    ] ================================================
[2026-06-12 15:29:03,788.788 INFO    ] Launching Daemon at Fri Jun 12 15:29:03 IST 2026
[2026-06-12 15:29:03,799.799 INFO    ] ================================================
[2026-06-12 15:29:04,152.152 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 15:29:04
[2026-06-12 15:29:04,464.464 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 15:29:04,606.606 INFO    ] Initializing speech engine...
[2026-06-12 15:29:04,611.611 INFO    ] 2026-06-12 15:29:04
[2026-06-12 15:29:04,812.812 INFO    ] 2026-06-12 15:29:04
[2026-06-12 15:29:04,841.841 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 15:29:05,024.024 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 15:29:05,032.032 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 15:29:05,177.177 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 15:29:05,228.228 INFO    ] time= 12/06/2026 15:29:05
[2026-06-12 15:29:05,251.251 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 15:29:05,258.258 INFO    ] Checking for existing commands in stream...
[2026-06-12 15:29:05,329.329 INFO    ] No existing commands found in stream
[2026-06-12 15:29:10,339.339 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 15:29:10,342.342 INFO    ] Waiting 3.34 seconds before fallback handling...
[2026-06-12 15:29:14,057.057 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 15:29:14,058.058 INFO    ] Checking for system updates...
[2026-06-12 15:29:14,079.079 INFO    ] 200
[2026-06-12 15:29:14,080.080 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:29:14,113.113 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 15:29:14,114.114 INFO    ] No update needed
[2026-06-12 15:29:14,115.115 INFO    ] Checking for camera pi updates...
[2026-06-12 15:29:14,135.135 INFO    ] 200
[2026-06-12 15:29:14,136.136 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:29:14,159.159 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 15:29:14,300.300 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 15:29:14,302.302 INFO    ] No camera update needed
[2026-06-12 15:29:14,303.303 INFO    ] Script finished. Safe exiting...
[2026-06-12 15:29:14,304.304 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 15:29:14,307.307 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 15:29:14,310.310 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 15:29:16,349.349 INFO    ] ================================================
[2026-06-12 15:29:16,364.364 INFO    ] Launching Daemon at Fri Jun 12 15:29:16 IST 2026
[2026-06-12 15:29:16,375.375 INFO    ] ================================================
[2026-06-12 15:29:16,726.726 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 15:29:16
[2026-06-12 15:29:17,043.043 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 15:29:17,181.181 INFO    ] Initializing speech engine...
[2026-06-12 15:29:17,185.185 INFO    ] 2026-06-12 15:29:17
[2026-06-12 15:29:17,408.408 INFO    ] 2026-06-12 15:29:17
[2026-06-12 15:29:17,448.448 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 15:29:17,652.652 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 15:29:17,656.656 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 15:29:17,791.791 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 15:29:17,855.855 INFO    ] time= 12/06/2026 15:29:17
[2026-06-12 15:29:17,883.883 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 15:29:17,889.889 INFO    ] Checking for existing commands in stream...
[2026-06-12 15:29:17,956.956 INFO    ] No existing commands found in stream
[2026-06-12 15:29:22,965.965 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 15:29:22,968.968 INFO    ] Waiting 3.67 seconds before fallback handling...
[2026-06-12 15:29:27,068.068 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 15:29:27,070.070 INFO    ] Checking for system updates...
[2026-06-12 15:29:27,091.091 INFO    ] 200
[2026-06-12 15:29:27,092.092 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:29:27,122.122 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 15:29:27,124.124 INFO    ] No update needed
[2026-06-12 15:29:27,125.125 INFO    ] Checking for camera pi updates...
[2026-06-12 15:29:27,150.150 INFO    ] 200
[2026-06-12 15:29:27,151.151 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:29:27,176.176 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 15:29:27,241.241 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 15:29:27,242.242 INFO    ] No camera update needed
[2026-06-12 15:29:27,244.244 INFO    ] Script finished. Safe exiting...
[2026-06-12 15:29:27,245.245 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 15:29:27,248.248 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 15:29:27,251.251 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 15:29:29,288.288 INFO    ] ================================================
[2026-06-12 15:29:29,304.304 INFO    ] Launching Daemon at Fri Jun 12 15:29:29 IST 2026
[2026-06-12 15:29:29,315.315 INFO    ] ================================================
[2026-06-12 15:29:29,652.652 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 15:29:29
[2026-06-12 15:29:29,968.968 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 15:29:30,111.111 INFO    ] Initializing speech engine...
[2026-06-12 15:29:30,116.116 INFO    ] 2026-06-12 15:29:30
[2026-06-12 15:29:30,319.319 INFO    ] 2026-06-12 15:29:30
[2026-06-12 15:29:30,347.347 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 15:29:30,531.531 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 15:29:30,539.539 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 15:29:30,688.688 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 15:29:30,736.736 INFO    ] time= 12/06/2026 15:29:30
[2026-06-12 15:29:30,758.758 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 15:29:30,764.764 INFO    ] Checking for existing commands in stream...
[2026-06-12 15:29:30,831.831 INFO    ] No existing commands found in stream
[2026-06-12 15:29:35,845.845 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 15:29:35,848.848 INFO    ] Waiting 2.69 seconds before fallback handling...
[2026-06-12 15:29:38,934.934 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 15:29:38,935.935 INFO    ] Checking for system updates...
[2026-06-12 15:29:38,956.956 INFO    ] 200
[2026-06-12 15:29:38,957.957 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:29:38,989.989 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 15:29:38,991.991 INFO    ] No update needed
[2026-06-12 15:29:38,992.992 INFO    ] Checking for camera pi updates...
[2026-06-12 15:29:39,011.011 INFO    ] 200
[2026-06-12 15:29:39,013.013 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:29:39,038.038 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 15:29:39,084.084 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 15:29:39,086.086 INFO    ] No camera update needed
[2026-06-12 15:29:39,087.087 INFO    ] Script finished. Safe exiting...
[2026-06-12 15:29:39,088.088 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 15:29:39,091.091 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 15:29:39,094.094 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 15:29:41,132.132 INFO    ] ================================================
[2026-06-12 15:29:41,147.147 INFO    ] Launching Daemon at Fri Jun 12 15:29:41 IST 2026
[2026-06-12 15:29:41,157.157 INFO    ] ================================================
[2026-06-12 15:29:41,496.496 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 15:29:41
[2026-06-12 15:29:41,816.816 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 15:29:41,960.960 INFO    ] Initializing speech engine...
[2026-06-12 15:29:41,964.964 INFO    ] 2026-06-12 15:29:41
[2026-06-12 15:29:42,167.167 INFO    ] 2026-06-12 15:29:42
[2026-06-12 15:29:42,196.196 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 15:29:42,379.379 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 15:29:42,389.389 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 15:29:42,538.538 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 15:29:42,586.586 INFO    ] time= 12/06/2026 15:29:42
[2026-06-12 15:29:42,608.608 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 15:29:42,614.614 INFO    ] Checking for existing commands in stream...
[2026-06-12 15:29:42,681.681 INFO    ] No existing commands found in stream
[2026-06-12 15:29:47,710.710 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 15:29:47,713.713 INFO    ] Waiting 2.01 seconds before fallback handling...
[2026-06-12 15:29:50,107.107 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 15:29:50,109.109 INFO    ] Checking for system updates...
[2026-06-12 15:29:50,132.132 INFO    ] 200
[2026-06-12 15:29:50,133.133 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:29:50,164.164 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 15:29:50,166.166 INFO    ] No update needed
[2026-06-12 15:29:50,167.167 INFO    ] Checking for camera pi updates...
[2026-06-12 15:29:50,187.187 INFO    ] 200
[2026-06-12 15:29:50,188.188 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:29:50,212.212 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 15:29:50,267.267 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 15:29:50,268.268 INFO    ] No camera update needed
[2026-06-12 15:29:50,270.270 INFO    ] Script finished. Safe exiting...
[2026-06-12 15:29:50,271.271 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 15:29:50,275.275 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 15:29:50,278.278 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 15:29:52,317.317 INFO    ] ================================================
[2026-06-12 15:29:52,332.332 INFO    ] Launching Daemon at Fri Jun 12 15:29:52 IST 2026
[2026-06-12 15:29:52,343.343 INFO    ] ================================================
[2026-06-12 15:29:52,671.671 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 15:29:52
[2026-06-12 15:29:52,983.983 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 15:29:53,114.114 INFO    ] Initializing speech engine...
[2026-06-12 15:29:53,119.119 INFO    ] 2026-06-12 15:29:53
[2026-06-12 15:29:53,315.315 INFO    ] 2026-06-12 15:29:53
[2026-06-12 15:29:53,355.355 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 15:29:53,564.564 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 15:29:53,579.579 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 15:29:53,724.724 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 15:29:53,782.782 INFO    ] time= 12/06/2026 15:29:53
[2026-06-12 15:29:53,817.817 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 15:29:53,828.828 INFO    ] Checking for existing commands in stream...
[2026-06-12 15:29:53,903.903 INFO    ] No existing commands found in stream
[2026-06-12 15:29:58,914.914 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 15:29:58,916.916 INFO    ] Waiting 0.18 seconds before fallback handling...
[2026-06-12 15:29:59,439.439 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 15:29:59,442.442 INFO    ] Checking for system updates...
[2026-06-12 15:29:59,466.466 INFO    ] 200
[2026-06-12 15:29:59,468.468 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:29:59,497.497 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 15:29:59,499.499 INFO    ] No update needed
[2026-06-12 15:29:59,500.500 INFO    ] Checking for camera pi updates...
[2026-06-12 15:29:59,520.520 INFO    ] 200
[2026-06-12 15:29:59,522.522 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:29:59,545.545 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 15:29:59,588.588 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 15:29:59,589.589 INFO    ] No camera update needed
[2026-06-12 15:29:59,591.591 INFO    ] Script finished. Safe exiting...
[2026-06-12 15:29:59,592.592 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 15:29:59,595.595 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 15:29:59,597.597 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 15:30:01,658.658 INFO    ] ================================================
[2026-06-12 15:30:01,685.685 INFO    ] Launching Daemon at Fri Jun 12 15:30:01 IST 2026
[2026-06-12 15:30:01,708.708 INFO    ] ================================================
[2026-06-12 15:30:02,242.242 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 15:30:02
[2026-06-12 15:30:02,667.667 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 15:30:02,864.864 INFO    ] Initializing speech engine...
[2026-06-12 15:30:02,867.867 INFO    ] 2026-06-12 15:30:02
[2026-06-12 15:30:03,076.076 INFO    ] 2026-06-12 15:30:03
[2026-06-12 15:30:03,108.108 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 15:30:03,241.241 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 15:30:03,294.294 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 15:30:03,456.456 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 15:30:03,519.519 INFO    ] time= 12/06/2026 15:30:03
[2026-06-12 15:30:03,558.558 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 15:30:03,560.560 INFO    ] Checking for existing commands in stream...
[2026-06-12 15:30:03,637.637 INFO    ] No existing commands found in stream
[2026-06-12 15:30:08,646.646 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 15:30:08,649.649 INFO    ] Waiting 2.34 seconds before fallback handling...
[2026-06-12 15:30:11,396.396 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 15:30:11,398.398 INFO    ] Checking for system updates...
[2026-06-12 15:30:11,418.418 INFO    ] 200
[2026-06-12 15:30:11,420.420 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:30:11,450.450 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 15:30:11,452.452 INFO    ] No update needed
[2026-06-12 15:30:11,453.453 INFO    ] Checking for camera pi updates...
[2026-06-12 15:30:11,474.474 INFO    ] 200
[2026-06-12 15:30:11,476.476 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:30:11,499.499 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 15:30:11,542.542 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 15:30:11,544.544 INFO    ] No camera update needed
[2026-06-12 15:30:11,545.545 INFO    ] Script finished. Safe exiting...
[2026-06-12 15:30:11,546.546 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 15:30:11,549.549 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 15:30:11,552.552 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 15:30:13,589.589 INFO    ] ================================================
[2026-06-12 15:30:13,604.604 INFO    ] Launching Daemon at Fri Jun 12 15:30:13 IST 2026
[2026-06-12 15:30:13,615.615 INFO    ] ================================================
[2026-06-12 15:30:13,953.953 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 15:30:13
[2026-06-12 15:30:14,265.265 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 15:30:14,401.401 INFO    ] Initializing speech engine...
[2026-06-12 15:30:14,409.409 INFO    ] 2026-06-12 15:30:14
[2026-06-12 15:30:14,615.615 INFO    ] 2026-06-12 15:30:14
[2026-06-12 15:30:14,644.644 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 15:30:14,826.826 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 15:30:14,835.835 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 15:30:14,985.985 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 15:30:15,032.032 INFO    ] time= 12/06/2026 15:30:14
[2026-06-12 15:30:15,054.054 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 15:30:15,060.060 INFO    ] Checking for existing commands in stream...
[2026-06-12 15:30:15,125.125 INFO    ] No existing commands found in stream
[2026-06-12 15:30:20,136.136 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 15:30:20,138.138 INFO    ] Waiting 1.62 seconds before fallback handling...
[2026-06-12 15:30:22,145.145 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 15:30:22,147.147 INFO    ] Checking for system updates...
[2026-06-12 15:30:22,167.167 INFO    ] 200
[2026-06-12 15:30:22,168.168 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:30:22,201.201 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 15:30:22,203.203 INFO    ] No update needed
[2026-06-12 15:30:22,204.204 INFO    ] Checking for camera pi updates...
[2026-06-12 15:30:22,224.224 INFO    ] 200
[2026-06-12 15:30:22,226.226 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:30:22,249.249 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 15:30:22,288.288 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 15:30:22,290.290 INFO    ] No camera update needed
[2026-06-12 15:30:22,291.291 INFO    ] Script finished. Safe exiting...
[2026-06-12 15:30:22,292.292 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 15:30:22,295.295 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 15:30:22,298.298 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 15:30:24,337.337 INFO    ] ================================================
[2026-06-12 15:30:24,352.352 INFO    ] Launching Daemon at Fri Jun 12 15:30:24 IST 2026
[2026-06-12 15:30:24,363.363 INFO    ] ================================================
[2026-06-12 15:30:24,743.743 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 15:30:24
[2026-06-12 15:30:25,080.080 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 15:30:25,225.225 INFO    ] Initializing speech engine...
[2026-06-12 15:30:25,236.236 INFO    ] 2026-06-12 15:30:25
[2026-06-12 15:30:25,443.443 INFO    ] 2026-06-12 15:30:25
[2026-06-12 15:30:25,472.472 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 15:30:25,656.656 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 15:30:25,667.667 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 15:30:25,800.800 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 15:30:25,862.862 INFO    ] time= 12/06/2026 15:30:25
[2026-06-12 15:30:25,887.887 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 15:30:25,893.893 INFO    ] Checking for existing commands in stream...
[2026-06-12 15:30:25,960.960 INFO    ] No existing commands found in stream
[2026-06-12 15:30:30,974.974 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 15:30:30,977.977 INFO    ] Waiting 2.77 seconds before fallback handling...
[2026-06-12 15:30:35,587.587 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 15:30:35,591.591 INFO    ] Checking for system updates...
[2026-06-12 15:30:35,628.628 INFO    ] 200
[2026-06-12 15:30:35,631.631 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:30:35,686.686 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 15:30:35,689.689 INFO    ] No update needed
[2026-06-12 15:30:35,692.692 INFO    ] Checking for camera pi updates...
[2026-06-12 15:30:35,725.725 INFO    ] 200
[2026-06-12 15:30:35,726.726 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:30:35,750.750 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 15:30:35,832.832 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 15:30:35,833.833 INFO    ] No camera update needed
[2026-06-12 15:30:35,834.834 INFO    ] Script finished. Safe exiting...
[2026-06-12 15:30:35,836.836 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 15:30:35,839.839 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 15:30:35,842.842 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 15:30:37,881.881 INFO    ] ================================================
[2026-06-12 15:30:37,896.896 INFO    ] Launching Daemon at Fri Jun 12 15:30:37 IST 2026
[2026-06-12 15:30:37,907.907 INFO    ] ================================================
[2026-06-12 15:30:38,246.246 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 15:30:38
[2026-06-12 15:30:38,558.558 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 15:30:38,688.688 INFO    ] Initializing speech engine...
[2026-06-12 15:30:38,697.697 INFO    ] 2026-06-12 15:30:38
[2026-06-12 15:30:38,910.910 INFO    ] 2026-06-12 15:30:38
[2026-06-12 15:30:38,938.938 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 15:30:39,120.120 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 15:30:39,129.129 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 15:30:39,274.274 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 15:30:39,327.327 INFO    ] time= 12/06/2026 15:30:39
[2026-06-12 15:30:39,349.349 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 15:30:39,356.356 INFO    ] Checking for existing commands in stream...
[2026-06-12 15:30:39,423.423 INFO    ] No existing commands found in stream
[2026-06-12 15:30:44,432.432 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 15:30:44,435.435 INFO    ] Waiting 0.91 seconds before fallback handling...
[2026-06-12 15:30:45,762.762 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 15:30:45,764.764 INFO    ] Checking for system updates...
[2026-06-12 15:30:45,785.785 INFO    ] 200
[2026-06-12 15:30:45,786.786 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:30:45,817.817 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 15:30:45,818.818 INFO    ] No update needed
[2026-06-12 15:30:45,820.820 INFO    ] Checking for camera pi updates...
[2026-06-12 15:30:45,840.840 INFO    ] 200
[2026-06-12 15:30:45,841.841 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:30:45,864.864 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 15:30:45,912.912 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 15:30:45,913.913 INFO    ] No camera update needed
[2026-06-12 15:30:45,915.915 INFO    ] Script finished. Safe exiting...
[2026-06-12 15:30:45,916.916 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 15:30:45,919.919 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 15:30:45,922.922 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 15:30:47,962.962 INFO    ] ================================================
[2026-06-12 15:30:47,978.978 INFO    ] Launching Daemon at Fri Jun 12 15:30:47 IST 2026
[2026-06-12 15:30:47,989.989 INFO    ] ================================================
[2026-06-12 15:30:48,325.325 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 15:30:48
[2026-06-12 15:30:48,644.644 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 15:30:48,783.783 INFO    ] Initializing speech engine...
[2026-06-12 15:30:48,792.792 INFO    ] 2026-06-12 15:30:48
[2026-06-12 15:30:48,997.997 INFO    ] 2026-06-12 15:30:48
[2026-06-12 15:30:49,026.026 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 15:30:49,208.208 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 15:30:49,217.217 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 15:30:49,363.363 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 15:30:49,415.415 INFO    ] time= 12/06/2026 15:30:49
[2026-06-12 15:30:49,438.438 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 15:30:49,507.507 INFO    ] Checking for existing commands in stream...
[2026-06-12 15:30:49,628.628 INFO    ] No existing commands found in stream
[2026-06-12 15:30:54,638.638 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 15:30:54,641.641 INFO    ] Waiting 1.03 seconds before fallback handling...
[2026-06-12 15:30:56,077.077 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 15:30:56,078.078 INFO    ] Checking for system updates...
[2026-06-12 15:30:56,100.100 INFO    ] 200
[2026-06-12 15:30:56,101.101 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:30:56,132.132 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 15:30:56,133.133 INFO    ] No update needed
[2026-06-12 15:30:56,134.134 INFO    ] Checking for camera pi updates...
[2026-06-12 15:30:56,161.161 INFO    ] 200
[2026-06-12 15:30:56,163.163 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:30:56,187.187 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 15:30:56,257.257 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 15:30:56,259.259 INFO    ] No camera update needed
[2026-06-12 15:30:56,260.260 INFO    ] Script finished. Safe exiting...
[2026-06-12 15:30:56,261.261 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 15:30:56,264.264 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 15:30:56,267.267 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 15:30:58,308.308 INFO    ] ================================================
[2026-06-12 15:30:58,323.323 INFO    ] Launching Daemon at Fri Jun 12 15:30:58 IST 2026
[2026-06-12 15:30:58,334.334 INFO    ] ================================================
[2026-06-12 15:30:58,668.668 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 15:30:58
[2026-06-12 15:30:58,986.986 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 15:30:59,131.131 INFO    ] Initializing speech engine...
[2026-06-12 15:30:59,136.136 INFO    ] 2026-06-12 15:30:59
[2026-06-12 15:30:59,340.340 INFO    ] 2026-06-12 15:30:59
[2026-06-12 15:30:59,369.369 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 15:30:59,554.554 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 15:30:59,562.562 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 15:30:59,738.738 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 15:30:59,777.777 INFO    ] time= 12/06/2026 15:30:59
[2026-06-12 15:30:59,782.782 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 15:30:59,789.789 INFO    ] Checking for existing commands in stream...
[2026-06-12 15:30:59,854.854 INFO    ] No existing commands found in stream
[2026-06-12 15:31:04,862.862 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 15:31:04,871.871 INFO    ] Waiting 1.07 seconds before fallback handling...
[2026-06-12 15:31:06,333.333 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 15:31:06,334.334 INFO    ] Checking for system updates...
[2026-06-12 15:31:06,355.355 INFO    ] 200
[2026-06-12 15:31:06,356.356 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:31:06,386.386 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 15:31:06,387.387 INFO    ] No update needed
[2026-06-12 15:31:06,388.388 INFO    ] Checking for camera pi updates...
[2026-06-12 15:31:06,410.410 INFO    ] 200
[2026-06-12 15:31:06,411.411 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:31:06,434.434 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 15:31:06,480.480 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 15:31:06,481.481 INFO    ] No camera update needed
[2026-06-12 15:31:06,482.482 INFO    ] Script finished. Safe exiting...
[2026-06-12 15:31:06,484.484 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 15:31:06,486.486 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 15:31:06,489.489 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 15:31:08,527.527 INFO    ] ================================================
[2026-06-12 15:31:08,543.543 INFO    ] Launching Daemon at Fri Jun 12 15:31:08 IST 2026
[2026-06-12 15:31:08,554.554 INFO    ] ================================================
[2026-06-12 15:31:08,875.875 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 15:31:08
[2026-06-12 15:31:09,186.186 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 15:31:09,318.318 INFO    ] Initializing speech engine...
[2026-06-12 15:31:09,322.322 INFO    ] 2026-06-12 15:31:09
[2026-06-12 15:31:09,549.549 INFO    ] 2026-06-12 15:31:09
[2026-06-12 15:31:09,579.579 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 15:31:09,774.774 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 15:31:09,785.785 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 15:31:09,915.915 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 15:31:09,967.967 INFO    ] time= 12/06/2026 15:31:09
[2026-06-12 15:31:10,000.000 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 15:31:10,022.022 INFO    ] Checking for existing commands in stream...
[2026-06-12 15:31:10,096.096 INFO    ] No existing commands found in stream
[2026-06-12 15:31:15,107.107 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 15:31:15,110.110 INFO    ] Waiting 2.24 seconds before fallback handling...
[2026-06-12 15:31:17,703.703 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 15:31:17,704.704 INFO    ] Checking for system updates...
[2026-06-12 15:31:17,725.725 INFO    ] 200
[2026-06-12 15:31:17,726.726 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:31:17,756.756 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 15:31:17,757.757 INFO    ] No update needed
[2026-06-12 15:31:17,759.759 INFO    ] Checking for camera pi updates...
[2026-06-12 15:31:17,778.778 INFO    ] 200
[2026-06-12 15:31:17,779.779 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:31:17,804.804 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 15:31:17,926.926 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 15:31:17,927.927 INFO    ] No camera update needed
[2026-06-12 15:31:17,929.929 INFO    ] Script finished. Safe exiting...
[2026-06-12 15:31:17,930.930 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 15:31:17,933.933 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 15:31:17,936.936 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 15:31:19,974.974 INFO    ] ================================================
[2026-06-12 15:31:19,989.989 INFO    ] Launching Daemon at Fri Jun 12 15:31:19 IST 2026
[2026-06-12 15:31:20,000.000 INFO    ] ================================================
[2026-06-12 15:31:20,340.340 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 15:31:20
[2026-06-12 15:31:20,652.652 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 15:31:20,783.783 INFO    ] Initializing speech engine...
[2026-06-12 15:31:20,786.786 INFO    ] 2026-06-12 15:31:20
[2026-06-12 15:31:21,002.002 INFO    ] 2026-06-12 15:31:20
[2026-06-12 15:31:21,032.032 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 15:31:21,215.215 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 15:31:21,218.218 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 15:31:21,355.355 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 15:31:21,423.423 INFO    ] time= 12/06/2026 15:31:21
[2026-06-12 15:31:21,447.447 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 15:31:21,453.453 INFO    ] Checking for existing commands in stream...
[2026-06-12 15:31:21,520.520 INFO    ] No existing commands found in stream
[2026-06-12 15:31:26,529.529 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 15:31:26,532.532 INFO    ] Waiting 1.19 seconds before fallback handling...
[2026-06-12 15:31:28,103.103 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 15:31:28,104.104 INFO    ] Checking for system updates...
[2026-06-12 15:31:28,125.125 INFO    ] 200
[2026-06-12 15:31:28,126.126 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:31:28,160.160 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 15:31:28,161.161 INFO    ] No update needed
[2026-06-12 15:31:28,162.162 INFO    ] Checking for camera pi updates...
[2026-06-12 15:31:28,182.182 INFO    ] 200
[2026-06-12 15:31:28,184.184 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:31:28,207.207 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 15:31:28,265.265 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 15:31:28,266.266 INFO    ] No camera update needed
[2026-06-12 15:31:28,268.268 INFO    ] Script finished. Safe exiting...
[2026-06-12 15:31:28,269.269 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 15:31:28,272.272 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 15:31:28,275.275 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 15:31:30,313.313 INFO    ] ================================================
[2026-06-12 15:31:30,329.329 INFO    ] Launching Daemon at Fri Jun 12 15:31:30 IST 2026
[2026-06-12 15:31:30,340.340 INFO    ] ================================================
[2026-06-12 15:31:30,707.707 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 15:31:30
[2026-06-12 15:31:31,021.021 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 15:31:31,152.152 INFO    ] Initializing speech engine...
[2026-06-12 15:31:31,155.155 INFO    ] 2026-06-12 15:31:31
[2026-06-12 15:31:31,368.368 INFO    ] 2026-06-12 15:31:31
[2026-06-12 15:31:31,420.420 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 15:31:31,660.660 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 15:31:31,670.670 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 15:31:31,825.825 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 15:31:31,874.874 INFO    ] time= 12/06/2026 15:31:31
[2026-06-12 15:31:31,915.915 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 15:31:31,938.938 INFO    ] Checking for existing commands in stream...
[2026-06-12 15:31:32,015.015 INFO    ] No existing commands found in stream
[2026-06-12 15:31:37,024.024 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 15:31:37,026.026 INFO    ] Waiting 1.04 seconds before fallback handling...
[2026-06-12 15:31:38,425.425 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 15:31:38,426.426 INFO    ] Checking for system updates...
[2026-06-12 15:31:38,447.447 INFO    ] 200
[2026-06-12 15:31:38,448.448 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:31:38,480.480 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 15:31:38,481.481 INFO    ] No update needed
[2026-06-12 15:31:38,483.483 INFO    ] Checking for camera pi updates...
[2026-06-12 15:31:38,504.504 INFO    ] 200
[2026-06-12 15:31:38,505.505 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:31:38,528.528 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 15:31:38,571.571 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 15:31:38,572.572 INFO    ] No camera update needed
[2026-06-12 15:31:38,574.574 INFO    ] Script finished. Safe exiting...
[2026-06-12 15:31:38,575.575 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 15:31:38,578.578 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 15:31:38,581.581 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 15:31:40,619.619 INFO    ] ================================================
[2026-06-12 15:31:40,634.634 INFO    ] Launching Daemon at Fri Jun 12 15:31:40 IST 2026
[2026-06-12 15:31:40,646.646 INFO    ] ================================================
[2026-06-12 15:31:40,971.971 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 15:31:40
[2026-06-12 15:31:41,283.283 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 15:31:41,415.415 INFO    ] Initializing speech engine...
[2026-06-12 15:31:41,422.422 INFO    ] 2026-06-12 15:31:41
[2026-06-12 15:31:41,635.635 INFO    ] 2026-06-12 15:31:41
[2026-06-12 15:31:41,665.665 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 15:31:41,844.844 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 15:31:41,856.856 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 15:31:42,008.008 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 15:31:42,060.060 INFO    ] time= 12/06/2026 15:31:42
[2026-06-12 15:31:42,083.083 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 15:31:42,089.089 INFO    ] Checking for existing commands in stream...
[2026-06-12 15:31:42,154.154 INFO    ] No existing commands found in stream
[2026-06-12 15:31:47,165.165 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 15:31:47,172.172 INFO    ] Waiting 3.36 seconds before fallback handling...
[2026-06-12 15:31:50,903.903 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 15:31:50,905.905 INFO    ] Checking for system updates...
[2026-06-12 15:31:50,925.925 INFO    ] 200
[2026-06-12 15:31:50,927.927 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:31:50,957.957 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 15:31:50,958.958 INFO    ] No update needed
[2026-06-12 15:31:50,959.959 INFO    ] Checking for camera pi updates...
[2026-06-12 15:31:50,979.979 INFO    ] 200
[2026-06-12 15:31:50,980.980 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:31:51,006.006 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 15:31:51,048.048 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 15:31:51,049.049 INFO    ] No camera update needed
[2026-06-12 15:31:51,051.051 INFO    ] Script finished. Safe exiting...
[2026-06-12 15:31:51,052.052 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 15:31:51,055.055 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 15:31:51,058.058 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 15:31:53,099.099 INFO    ] ================================================
[2026-06-12 15:31:53,114.114 INFO    ] Launching Daemon at Fri Jun 12 15:31:53 IST 2026
[2026-06-12 15:31:53,125.125 INFO    ] ================================================
[2026-06-12 15:31:53,475.475 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 15:31:53
[2026-06-12 15:31:53,794.794 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 15:31:53,941.941 INFO    ] Initializing speech engine...
[2026-06-12 15:31:53,946.946 INFO    ] 2026-06-12 15:31:53
[2026-06-12 15:31:54,151.151 INFO    ] 2026-06-12 15:31:54
[2026-06-12 15:31:54,180.180 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 15:31:54,364.364 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 15:31:54,374.374 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 15:31:54,523.523 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 15:31:54,578.578 INFO    ] time= 12/06/2026 15:31:54
[2026-06-12 15:31:54,594.594 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 15:31:54,600.600 INFO    ] Checking for existing commands in stream...
[2026-06-12 15:31:54,674.674 INFO    ] No existing commands found in stream
[2026-06-12 15:31:59,701.701 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 15:31:59,704.704 INFO    ] Waiting 1.88 seconds before fallback handling...
[2026-06-12 15:32:01,938.938 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 15:32:01,940.940 INFO    ] Checking for system updates...
[2026-06-12 15:32:01,968.968 INFO    ] 200
[2026-06-12 15:32:01,970.970 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:32:02,007.007 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 15:32:02,009.009 INFO    ] No update needed
[2026-06-12 15:32:02,010.010 INFO    ] Checking for camera pi updates...
[2026-06-12 15:32:02,034.034 INFO    ] 200
[2026-06-12 15:32:02,036.036 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:32:02,064.064 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 15:32:02,102.102 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 15:32:02,104.104 INFO    ] No camera update needed
[2026-06-12 15:32:02,105.105 INFO    ] Script finished. Safe exiting...
[2026-06-12 15:32:02,108.108 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 15:32:02,112.112 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 15:32:02,116.116 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 15:32:04,156.156 INFO    ] ================================================
[2026-06-12 15:32:04,172.172 INFO    ] Launching Daemon at Fri Jun 12 15:32:04 IST 2026
[2026-06-12 15:32:04,183.183 INFO    ] ================================================
[2026-06-12 15:32:04,532.532 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 15:32:04
[2026-06-12 15:32:04,845.845 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 15:32:04,979.979 INFO    ] Initializing speech engine...
[2026-06-12 15:32:04,991.991 INFO    ] 2026-06-12 15:32:04
[2026-06-12 15:32:05,199.199 INFO    ] 2026-06-12 15:32:05
[2026-06-12 15:32:05,227.227 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 15:32:05,412.412 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 15:32:05,421.421 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 15:32:05,603.603 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 15:32:05,653.653 INFO    ] time= 12/06/2026 15:32:05
[2026-06-12 15:32:05,658.658 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 15:32:05,660.660 INFO    ] Checking for existing commands in stream...
[2026-06-12 15:32:05,751.751 INFO    ] No existing commands found in stream
[2026-06-12 15:32:10,765.765 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 15:32:10,768.768 INFO    ] Waiting 1.23 seconds before fallback handling...
[2026-06-12 15:32:12,365.365 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 15:32:12,366.366 INFO    ] Checking for system updates...
[2026-06-12 15:32:12,386.386 INFO    ] 200
[2026-06-12 15:32:12,388.388 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:32:12,423.423 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 15:32:12,424.424 INFO    ] No update needed
[2026-06-12 15:32:12,425.425 INFO    ] Checking for camera pi updates...
[2026-06-12 15:32:12,444.444 INFO    ] 200
[2026-06-12 15:32:12,445.445 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:32:12,470.470 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 15:32:12,519.519 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 15:32:12,520.520 INFO    ] No camera update needed
[2026-06-12 15:32:12,522.522 INFO    ] Script finished. Safe exiting...
[2026-06-12 15:32:12,523.523 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 15:32:12,526.526 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 15:32:12,528.528 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 15:32:14,568.568 INFO    ] ================================================
[2026-06-12 15:32:14,584.584 INFO    ] Launching Daemon at Fri Jun 12 15:32:14 IST 2026
[2026-06-12 15:32:14,595.595 INFO    ] ================================================
[2026-06-12 15:32:14,941.941 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 15:32:14
[2026-06-12 15:32:15,253.253 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 15:32:15,391.391 INFO    ] Initializing speech engine...
[2026-06-12 15:32:15,400.400 INFO    ] 2026-06-12 15:32:15
[2026-06-12 15:32:15,607.607 INFO    ] 2026-06-12 15:32:15
[2026-06-12 15:32:15,635.635 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 15:32:15,822.822 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 15:32:15,831.831 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 15:32:15,978.978 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 15:32:16,033.033 INFO    ] time= 12/06/2026 15:32:15
[2026-06-12 15:32:16,055.055 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 15:32:16,062.062 INFO    ] Checking for existing commands in stream...
[2026-06-12 15:32:16,127.127 INFO    ] No existing commands found in stream
[2026-06-12 15:32:21,137.137 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 15:32:21,138.138 INFO    ] Waiting 1.97 seconds before fallback handling...
[2026-06-12 15:32:23,430.430 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 15:32:23,433.433 INFO    ] Checking for system updates...
[2026-06-12 15:32:23,469.469 INFO    ] 200
[2026-06-12 15:32:23,472.472 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:32:23,524.524 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 15:32:23,526.526 INFO    ] No update needed
[2026-06-12 15:32:23,528.528 INFO    ] Checking for camera pi updates...
[2026-06-12 15:32:23,562.562 INFO    ] 200
[2026-06-12 15:32:23,565.565 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:32:23,606.606 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 15:32:23,660.660 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 15:32:23,662.662 INFO    ] No camera update needed
[2026-06-12 15:32:23,663.663 INFO    ] Script finished. Safe exiting...
[2026-06-12 15:32:23,664.664 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 15:32:23,667.667 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 15:32:23,670.670 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 15:32:25,707.707 INFO    ] ================================================
[2026-06-12 15:32:25,723.723 INFO    ] Launching Daemon at Fri Jun 12 15:32:25 IST 2026
[2026-06-12 15:32:25,734.734 INFO    ] ================================================
[2026-06-12 15:32:26,104.104 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 15:32:26
[2026-06-12 15:32:26,422.422 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 15:32:26,553.553 INFO    ] Initializing speech engine...
[2026-06-12 15:32:26,561.561 INFO    ] 2026-06-12 15:32:26
[2026-06-12 15:32:26,772.772 INFO    ] 2026-06-12 15:32:26
[2026-06-12 15:32:26,802.802 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 15:32:26,985.985 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 15:32:26,993.993 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 15:32:27,121.121 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 15:32:27,187.187 INFO    ] time= 12/06/2026 15:32:27
[2026-06-12 15:32:27,214.214 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 15:32:27,216.216 INFO    ] Checking for existing commands in stream...
[2026-06-12 15:32:27,288.288 INFO    ] No existing commands found in stream
[2026-06-12 15:32:32,307.307 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 15:32:32,310.310 INFO    ] Waiting 2.00 seconds before fallback handling...
[2026-06-12 15:32:34,656.656 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 15:32:34,657.657 INFO    ] Checking for system updates...
[2026-06-12 15:32:34,678.678 INFO    ] 200
[2026-06-12 15:32:34,679.679 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:32:34,709.709 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 15:32:34,711.711 INFO    ] No update needed
[2026-06-12 15:32:34,712.712 INFO    ] Checking for camera pi updates...
[2026-06-12 15:32:34,732.732 INFO    ] 200
[2026-06-12 15:32:34,733.733 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:32:34,756.756 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 15:32:34,804.804 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 15:32:34,805.805 INFO    ] No camera update needed
[2026-06-12 15:32:34,806.806 INFO    ] Script finished. Safe exiting...
[2026-06-12 15:32:34,808.808 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 15:32:34,811.811 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 15:32:34,814.814 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 15:32:36,851.851 INFO    ] ================================================
[2026-06-12 15:32:36,872.872 INFO    ] Launching Daemon at Fri Jun 12 15:32:36 IST 2026
[2026-06-12 15:32:36,883.883 INFO    ] ================================================
[2026-06-12 15:32:37,214.214 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 15:32:37
[2026-06-12 15:32:37,531.531 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 15:32:37,663.663 INFO    ] Initializing speech engine...
[2026-06-12 15:32:37,671.671 INFO    ] 2026-06-12 15:32:37
[2026-06-12 15:32:37,883.883 INFO    ] 2026-06-12 15:32:37
[2026-06-12 15:32:37,912.912 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 15:32:38,097.097 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 15:32:38,105.105 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 15:32:38,247.247 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 15:32:38,303.303 INFO    ] time= 12/06/2026 15:32:38
[2026-06-12 15:32:38,327.327 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 15:32:38,334.334 INFO    ] Checking for existing commands in stream...
[2026-06-12 15:32:38,401.401 INFO    ] No existing commands found in stream
[2026-06-12 15:32:43,410.410 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 15:32:43,413.413 INFO    ] Waiting 0.01 seconds before fallback handling...
[2026-06-12 15:32:43,807.807 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 15:32:43,809.809 INFO    ] Checking for system updates...
[2026-06-12 15:32:43,832.832 INFO    ] 200
[2026-06-12 15:32:43,833.833 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:32:43,868.868 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 15:32:43,870.870 INFO    ] No update needed
[2026-06-12 15:32:43,871.871 INFO    ] Checking for camera pi updates...
[2026-06-12 15:32:43,893.893 INFO    ] 200
[2026-06-12 15:32:43,895.895 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:32:43,918.918 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 15:32:43,964.964 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 15:32:43,966.966 INFO    ] No camera update needed
[2026-06-12 15:32:43,967.967 INFO    ] Script finished. Safe exiting...
[2026-06-12 15:32:43,969.969 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 15:32:43,972.972 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 15:32:43,975.975 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 15:32:46,015.015 INFO    ] ================================================
[2026-06-12 15:32:46,031.031 INFO    ] Launching Daemon at Fri Jun 12 15:32:46 IST 2026
[2026-06-12 15:32:46,042.042 INFO    ] ================================================
[2026-06-12 15:32:46,394.394 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 15:32:46
[2026-06-12 15:32:46,715.715 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 15:32:46,908.908 INFO    ] Initializing speech engine...
[2026-06-12 15:32:46,914.914 INFO    ] 2026-06-12 15:32:46
[2026-06-12 15:32:47,117.117 INFO    ] 2026-06-12 15:32:47
[2026-06-12 15:32:47,147.147 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 15:32:47,330.330 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 15:32:47,338.338 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 15:32:47,493.493 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 15:32:47,537.537 INFO    ] time= 12/06/2026 15:32:47
[2026-06-12 15:32:47,558.558 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 15:32:47,564.564 INFO    ] Checking for existing commands in stream...
[2026-06-12 15:32:47,631.631 INFO    ] No existing commands found in stream
[2026-06-12 15:32:52,660.660 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 15:32:52,663.663 INFO    ] Waiting 3.24 seconds before fallback handling...
[2026-06-12 15:32:56,294.294 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 15:32:56,295.295 INFO    ] Checking for system updates...
[2026-06-12 15:32:56,316.316 INFO    ] 200
[2026-06-12 15:32:56,317.317 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:32:56,347.347 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 15:32:56,348.348 INFO    ] No update needed
[2026-06-12 15:32:56,350.350 INFO    ] Checking for camera pi updates...
[2026-06-12 15:32:56,370.370 INFO    ] 200
[2026-06-12 15:32:56,371.371 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:32:56,396.396 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 15:32:56,442.442 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 15:32:56,443.443 INFO    ] No camera update needed
[2026-06-12 15:32:56,444.444 INFO    ] Script finished. Safe exiting...
[2026-06-12 15:32:56,445.445 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 15:32:56,448.448 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 15:32:56,451.451 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 15:32:58,490.490 INFO    ] ================================================
[2026-06-12 15:32:58,505.505 INFO    ] Launching Daemon at Fri Jun 12 15:32:58 IST 2026
[2026-06-12 15:32:58,516.516 INFO    ] ================================================
[2026-06-12 15:32:58,871.871 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 15:32:58
[2026-06-12 15:32:59,187.187 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 15:32:59,330.330 INFO    ] Initializing speech engine...
[2026-06-12 15:32:59,335.335 INFO    ] 2026-06-12 15:32:59
[2026-06-12 15:32:59,537.537 INFO    ] 2026-06-12 15:32:59
[2026-06-12 15:32:59,567.567 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 15:32:59,750.750 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 15:32:59,758.758 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 15:32:59,903.903 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 15:32:59,956.956 INFO    ] time= 12/06/2026 15:32:59
[2026-06-12 15:32:59,978.978 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 15:32:59,984.984 INFO    ] Checking for existing commands in stream...
[2026-06-12 15:33:00,050.050 INFO    ] No existing commands found in stream
[2026-06-12 15:33:05,060.060 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 15:33:05,063.063 INFO    ] Waiting 3.20 seconds before fallback handling...
[2026-06-12 15:33:08,833.833 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 15:33:08,835.835 INFO    ] Checking for system updates...
[2026-06-12 15:33:08,857.857 INFO    ] 200
[2026-06-12 15:33:08,858.858 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:33:08,890.890 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 15:33:08,892.892 INFO    ] No update needed
[2026-06-12 15:33:08,894.894 INFO    ] Checking for camera pi updates...
[2026-06-12 15:33:08,913.913 INFO    ] 200
[2026-06-12 15:33:08,914.914 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:33:08,939.939 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 15:33:08,992.992 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 15:33:08,994.994 INFO    ] No camera update needed
[2026-06-12 15:33:08,995.995 INFO    ] Script finished. Safe exiting...
[2026-06-12 15:33:08,996.996 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 15:33:09,000.000 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 15:33:09,003.003 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 15:33:11,043.043 INFO    ] ================================================
[2026-06-12 15:33:11,059.059 INFO    ] Launching Daemon at Fri Jun 12 15:33:11 IST 2026
[2026-06-12 15:33:11,070.070 INFO    ] ================================================
[2026-06-12 15:33:11,432.432 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 15:33:11
[2026-06-12 15:33:11,744.744 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 15:33:11,875.875 INFO    ] Initializing speech engine...
[2026-06-12 15:33:11,887.887 INFO    ] 2026-06-12 15:33:11
[2026-06-12 15:33:12,093.093 INFO    ] 2026-06-12 15:33:12
[2026-06-12 15:33:12,121.121 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 15:33:12,304.304 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 15:33:12,313.313 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 15:33:12,457.457 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 15:33:12,509.509 INFO    ] time= 12/06/2026 15:33:12
[2026-06-12 15:33:12,531.531 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 15:33:12,537.537 INFO    ] Checking for existing commands in stream...
[2026-06-12 15:33:12,602.602 INFO    ] No existing commands found in stream
[2026-06-12 15:33:17,612.612 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 15:33:17,615.615 INFO    ] Waiting 2.24 seconds before fallback handling...
[2026-06-12 15:33:20,216.216 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 15:33:20,218.218 INFO    ] Checking for system updates...
[2026-06-12 15:33:20,239.239 INFO    ] 200
[2026-06-12 15:33:20,241.241 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:33:20,271.271 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 15:33:20,272.272 INFO    ] No update needed
[2026-06-12 15:33:20,274.274 INFO    ] Checking for camera pi updates...
[2026-06-12 15:33:20,292.292 INFO    ] 200
[2026-06-12 15:33:20,294.294 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:33:20,319.319 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 15:33:20,462.462 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 15:33:20,464.464 INFO    ] No camera update needed
[2026-06-12 15:33:20,465.465 INFO    ] Script finished. Safe exiting...
[2026-06-12 15:33:20,466.466 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 15:33:20,469.469 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 15:33:20,472.472 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 15:33:22,510.510 INFO    ] ================================================
[2026-06-12 15:33:22,526.526 INFO    ] Launching Daemon at Fri Jun 12 15:33:22 IST 2026
[2026-06-12 15:33:22,537.537 INFO    ] ================================================
[2026-06-12 15:33:22,879.879 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 15:33:22
[2026-06-12 15:33:23,213.213 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 15:33:23,364.364 INFO    ] Initializing speech engine...
[2026-06-12 15:33:23,369.369 INFO    ] 2026-06-12 15:33:23
[2026-06-12 15:33:23,577.577 INFO    ] 2026-06-12 15:33:23
[2026-06-12 15:33:23,606.606 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 15:33:23,791.791 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 15:33:23,801.801 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 15:33:23,956.956 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 15:33:24,000.000 INFO    ] time= 12/06/2026 15:33:23
[2026-06-12 15:33:24,021.021 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 15:33:24,027.027 INFO    ] Checking for existing commands in stream...
[2026-06-12 15:33:24,094.094 INFO    ] No existing commands found in stream
[2026-06-12 15:33:29,109.109 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 15:33:29,112.112 INFO    ] Waiting 2.77 seconds before fallback handling...
[2026-06-12 15:33:32,218.218 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 15:33:32,220.220 INFO    ] Checking for system updates...
[2026-06-12 15:33:32,244.244 INFO    ] 200
[2026-06-12 15:33:32,245.245 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:33:32,278.278 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 15:33:32,280.280 INFO    ] No update needed
[2026-06-12 15:33:32,282.282 INFO    ] Checking for camera pi updates...
[2026-06-12 15:33:32,304.304 INFO    ] 200
[2026-06-12 15:33:32,306.306 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:33:32,336.336 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 15:33:32,368.368 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 15:33:32,370.370 INFO    ] No camera update needed
[2026-06-12 15:33:32,372.372 INFO    ] Script finished. Safe exiting...
[2026-06-12 15:33:32,374.374 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 15:33:32,377.377 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 15:33:32,380.380 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 15:33:34,418.418 INFO    ] ================================================
[2026-06-12 15:33:34,434.434 INFO    ] Launching Daemon at Fri Jun 12 15:33:34 IST 2026
[2026-06-12 15:33:34,444.444 INFO    ] ================================================
[2026-06-12 15:33:34,822.822 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 15:33:34
[2026-06-12 15:33:35,156.156 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 15:33:35,300.300 INFO    ] Initializing speech engine...
[2026-06-12 15:33:35,311.311 INFO    ] 2026-06-12 15:33:35
[2026-06-12 15:33:35,522.522 INFO    ] 2026-06-12 15:33:35
[2026-06-12 15:33:35,552.552 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 15:33:35,736.736 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 15:33:35,746.746 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 15:33:35,892.892 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 15:33:35,945.945 INFO    ] time= 12/06/2026 15:33:35
[2026-06-12 15:33:35,968.968 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 15:33:35,974.974 INFO    ] Checking for existing commands in stream...
[2026-06-12 15:33:36,041.041 INFO    ] No existing commands found in stream
[2026-06-12 15:33:41,066.066 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 15:33:41,069.069 INFO    ] Waiting 3.23 seconds before fallback handling...
[2026-06-12 15:33:44,698.698 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 15:33:44,700.700 INFO    ] Checking for system updates...
[2026-06-12 15:33:44,721.721 INFO    ] 200
[2026-06-12 15:33:44,722.722 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:33:44,753.753 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 15:33:44,754.754 INFO    ] No update needed
[2026-06-12 15:33:44,755.755 INFO    ] Checking for camera pi updates...
[2026-06-12 15:33:44,775.775 INFO    ] 200
[2026-06-12 15:33:44,776.776 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:33:44,801.801 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 15:33:44,845.845 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 15:33:44,846.846 INFO    ] No camera update needed
[2026-06-12 15:33:44,848.848 INFO    ] Script finished. Safe exiting...
[2026-06-12 15:33:44,849.849 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 15:33:44,852.852 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 15:33:44,855.855 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 15:33:46,895.895 INFO    ] ================================================
[2026-06-12 15:33:46,910.910 INFO    ] Launching Daemon at Fri Jun 12 15:33:46 IST 2026
[2026-06-12 15:33:46,921.921 INFO    ] ================================================
[2026-06-12 15:33:47,286.286 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 15:33:47
[2026-06-12 15:33:47,599.599 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 15:33:47,728.728 INFO    ] Initializing speech engine...
[2026-06-12 15:33:47,737.737 INFO    ] 2026-06-12 15:33:47
[2026-06-12 15:33:47,963.963 INFO    ] 2026-06-12 15:33:47
[2026-06-12 15:33:47,993.993 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 15:33:48,190.190 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 15:33:48,194.194 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 15:33:48,342.342 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 15:33:48,396.396 INFO    ] time= 12/06/2026 15:33:48
[2026-06-12 15:33:48,430.430 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 15:33:48,441.441 INFO    ] Checking for existing commands in stream...
[2026-06-12 15:33:48,543.543 INFO    ] No existing commands found in stream
[2026-06-12 15:33:53,557.557 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 15:33:53,559.559 INFO    ] Waiting 3.21 seconds before fallback handling...
[2026-06-12 15:33:57,169.169 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 15:33:57,170.170 INFO    ] Checking for system updates...
[2026-06-12 15:33:57,191.191 INFO    ] 200
[2026-06-12 15:33:57,193.193 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:33:57,223.223 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 15:33:57,224.224 INFO    ] No update needed
[2026-06-12 15:33:57,225.225 INFO    ] Checking for camera pi updates...
[2026-06-12 15:33:57,245.245 INFO    ] 200
[2026-06-12 15:33:57,246.246 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:33:57,269.269 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 15:33:57,315.315 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 15:33:57,316.316 INFO    ] No camera update needed
[2026-06-12 15:33:57,318.318 INFO    ] Script finished. Safe exiting...
[2026-06-12 15:33:57,319.319 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 15:33:57,322.322 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 15:33:57,325.325 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 15:33:59,363.363 INFO    ] ================================================
[2026-06-12 15:33:59,378.378 INFO    ] Launching Daemon at Fri Jun 12 15:33:59 IST 2026
[2026-06-12 15:33:59,388.388 INFO    ] ================================================
[2026-06-12 15:33:59,726.726 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 15:33:59
[2026-06-12 15:34:00,037.037 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 15:34:00,180.180 INFO    ] Initializing speech engine...
[2026-06-12 15:34:00,185.185 INFO    ] 2026-06-12 15:34:00
[2026-06-12 15:34:00,388.388 INFO    ] 2026-06-12 15:34:00
[2026-06-12 15:34:00,418.418 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 15:34:00,605.605 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 15:34:00,615.615 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 15:34:00,755.755 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 15:34:00,814.814 INFO    ] time= 12/06/2026 15:34:00
[2026-06-12 15:34:00,837.837 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 15:34:00,843.843 INFO    ] Checking for existing commands in stream...
[2026-06-12 15:34:00,911.911 INFO    ] No existing commands found in stream
[2026-06-12 15:34:05,922.922 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 15:34:05,926.926 INFO    ] Waiting 2.59 seconds before fallback handling...
[2026-06-12 15:34:08,894.894 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 15:34:08,895.895 INFO    ] Checking for system updates...
[2026-06-12 15:34:08,916.916 INFO    ] 200
[2026-06-12 15:34:08,917.917 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:34:08,947.947 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 15:34:08,948.948 INFO    ] No update needed
[2026-06-12 15:34:08,950.950 INFO    ] Checking for camera pi updates...
[2026-06-12 15:34:08,969.969 INFO    ] 200
[2026-06-12 15:34:08,970.970 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:34:08,993.993 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 15:34:09,038.038 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 15:34:09,040.040 INFO    ] No camera update needed
[2026-06-12 15:34:09,041.041 INFO    ] Script finished. Safe exiting...
[2026-06-12 15:34:09,042.042 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 15:34:09,045.045 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 15:34:09,048.048 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 15:34:11,087.087 INFO    ] ================================================
[2026-06-12 15:34:11,103.103 INFO    ] Launching Daemon at Fri Jun 12 15:34:11 IST 2026
[2026-06-12 15:34:11,114.114 INFO    ] ================================================
[2026-06-12 15:34:11,479.479 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 15:34:11
[2026-06-12 15:34:11,791.791 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 15:34:11,943.943 INFO    ] Initializing speech engine...
[2026-06-12 15:34:11,950.950 INFO    ] 2026-06-12 15:34:11
[2026-06-12 15:34:12,164.164 INFO    ] 2026-06-12 15:34:12
[2026-06-12 15:34:12,195.195 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 15:34:12,393.393 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 15:34:12,402.402 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 15:34:12,533.533 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 15:34:12,580.580 INFO    ] time= 12/06/2026 15:34:12
[2026-06-12 15:34:12,618.618 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 15:34:12,641.641 INFO    ] Checking for existing commands in stream...
[2026-06-12 15:34:12,717.717 INFO    ] No existing commands found in stream
[2026-06-12 15:34:17,726.726 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 15:34:17,729.729 INFO    ] Waiting 1.06 seconds before fallback handling...
[2026-06-12 15:34:19,169.169 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 15:34:19,170.170 INFO    ] Checking for system updates...
[2026-06-12 15:34:19,191.191 INFO    ] 200
[2026-06-12 15:34:19,192.192 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:34:19,222.222 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 15:34:19,223.223 INFO    ] No update needed
[2026-06-12 15:34:19,225.225 INFO    ] Checking for camera pi updates...
[2026-06-12 15:34:19,247.247 INFO    ] 200
[2026-06-12 15:34:19,248.248 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:34:19,273.273 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 15:34:19,320.320 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 15:34:19,322.322 INFO    ] No camera update needed
[2026-06-12 15:34:19,323.323 INFO    ] Script finished. Safe exiting...
[2026-06-12 15:34:19,324.324 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 15:34:19,327.327 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 15:34:19,330.330 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 15:34:21,368.368 INFO    ] ================================================
[2026-06-12 15:34:21,383.383 INFO    ] Launching Daemon at Fri Jun 12 15:34:21 IST 2026
[2026-06-12 15:34:21,394.394 INFO    ] ================================================
[2026-06-12 15:34:21,752.752 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 15:34:21
[2026-06-12 15:34:22,072.072 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 15:34:22,204.204 INFO    ] Initializing speech engine...
[2026-06-12 15:34:22,212.212 INFO    ] 2026-06-12 15:34:22
[2026-06-12 15:34:22,424.424 INFO    ] 2026-06-12 15:34:22
[2026-06-12 15:34:22,453.453 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 15:34:22,638.638 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 15:34:22,648.648 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 15:34:22,796.796 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 15:34:22,850.850 INFO    ] time= 12/06/2026 15:34:22
[2026-06-12 15:34:22,866.866 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 15:34:22,872.872 INFO    ] Checking for existing commands in stream...
[2026-06-12 15:34:22,939.939 INFO    ] No existing commands found in stream
[2026-06-12 15:34:27,953.953 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 15:34:27,956.956 INFO    ] Waiting 1.80 seconds before fallback handling...
[2026-06-12 15:34:30,161.161 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 15:34:30,162.162 INFO    ] Checking for system updates...
[2026-06-12 15:34:30,183.183 INFO    ] 200
[2026-06-12 15:34:30,184.184 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:34:30,214.214 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 15:34:30,215.215 INFO    ] No update needed
[2026-06-12 15:34:30,216.216 INFO    ] Checking for camera pi updates...
[2026-06-12 15:34:30,235.235 INFO    ] 200
[2026-06-12 15:34:30,237.237 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:34:30,262.262 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 15:34:30,310.310 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 15:34:30,312.312 INFO    ] No camera update needed
[2026-06-12 15:34:30,313.313 INFO    ] Script finished. Safe exiting...
[2026-06-12 15:34:30,315.315 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 15:34:30,318.318 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 15:34:30,321.321 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 15:34:32,353.353 INFO    ] ================================================
[2026-06-12 15:34:32,363.363 INFO    ] Launching Daemon at Fri Jun 12 15:34:32 IST 2026
[2026-06-12 15:34:32,370.370 INFO    ] ================================================
[2026-06-12 15:34:32,720.720 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 15:34:32
[2026-06-12 15:34:33,053.053 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 15:34:33,202.202 INFO    ] Initializing speech engine...
[2026-06-12 15:34:33,208.208 INFO    ] 2026-06-12 15:34:33
[2026-06-12 15:34:33,414.414 INFO    ] 2026-06-12 15:34:33
[2026-06-12 15:34:33,443.443 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 15:34:33,627.627 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 15:34:33,638.638 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 15:34:33,781.781 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 15:34:33,833.833 INFO    ] time= 12/06/2026 15:34:33
[2026-06-12 15:34:33,857.857 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 15:34:33,863.863 INFO    ] Checking for existing commands in stream...
[2026-06-12 15:34:33,930.930 INFO    ] No existing commands found in stream
[2026-06-12 15:34:38,940.940 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 15:34:38,943.943 INFO    ] Waiting 3.45 seconds before fallback handling...
[2026-06-12 15:34:42,752.752 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 15:34:42,754.754 INFO    ] Checking for system updates...
[2026-06-12 15:34:42,776.776 INFO    ] 200
[2026-06-12 15:34:42,777.777 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:34:42,808.808 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 15:34:42,809.809 INFO    ] No update needed
[2026-06-12 15:34:42,811.811 INFO    ] Checking for camera pi updates...
[2026-06-12 15:34:42,830.830 INFO    ] 200
[2026-06-12 15:34:42,832.832 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:34:42,855.855 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 15:34:42,911.911 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 15:34:42,913.913 INFO    ] No camera update needed
[2026-06-12 15:34:42,914.914 INFO    ] Script finished. Safe exiting...
[2026-06-12 15:34:42,915.915 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 15:34:42,918.918 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 15:34:42,922.922 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 15:34:44,959.959 INFO    ] ================================================
[2026-06-12 15:34:44,975.975 INFO    ] Launching Daemon at Fri Jun 12 15:34:44 IST 2026
[2026-06-12 15:34:44,986.986 INFO    ] ================================================
[2026-06-12 15:34:45,331.331 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 15:34:45
[2026-06-12 15:34:45,642.642 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 15:34:45,776.776 INFO    ] Initializing speech engine...
[2026-06-12 15:34:45,788.788 INFO    ] 2026-06-12 15:34:45
[2026-06-12 15:34:45,993.993 INFO    ] 2026-06-12 15:34:45
[2026-06-12 15:34:46,022.022 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 15:34:46,212.212 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 15:34:46,228.228 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 15:34:46,406.406 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 15:34:46,430.430 INFO    ] time= 12/06/2026 15:34:46
[2026-06-12 15:34:46,436.436 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 15:34:46,437.437 INFO    ] Checking for existing commands in stream...
[2026-06-12 15:34:46,505.505 INFO    ] No existing commands found in stream
[2026-06-12 15:34:51,537.537 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 15:34:51,540.540 INFO    ] Waiting 3.29 seconds before fallback handling...
[2026-06-12 15:34:55,213.213 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 15:34:55,215.215 INFO    ] Checking for system updates...
[2026-06-12 15:34:55,235.235 INFO    ] 200
[2026-06-12 15:34:55,236.236 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:34:55,266.266 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 15:34:55,268.268 INFO    ] No update needed
[2026-06-12 15:34:55,269.269 INFO    ] Checking for camera pi updates...
[2026-06-12 15:34:55,288.288 INFO    ] 200
[2026-06-12 15:34:55,290.290 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:34:55,314.314 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 15:34:55,366.366 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 15:34:55,367.367 INFO    ] No camera update needed
[2026-06-12 15:34:55,368.368 INFO    ] Script finished. Safe exiting...
[2026-06-12 15:34:55,369.369 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 15:34:55,373.373 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 15:34:55,375.375 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 15:34:57,414.414 INFO    ] ================================================
[2026-06-12 15:34:57,429.429 INFO    ] Launching Daemon at Fri Jun 12 15:34:57 IST 2026
[2026-06-12 15:34:57,440.440 INFO    ] ================================================
[2026-06-12 15:34:57,786.786 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 15:34:57
[2026-06-12 15:34:58,120.120 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 15:34:58,269.269 INFO    ] Initializing speech engine...
[2026-06-12 15:34:58,275.275 INFO    ] 2026-06-12 15:34:58
[2026-06-12 15:34:58,480.480 INFO    ] 2026-06-12 15:34:58
[2026-06-12 15:34:58,509.509 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 15:34:58,694.694 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 15:34:58,706.706 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 15:34:58,897.897 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 15:34:58,922.922 INFO    ] time= 12/06/2026 15:34:58
[2026-06-12 15:34:58,928.928 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 15:34:58,929.929 INFO    ] Checking for existing commands in stream...
[2026-06-12 15:34:58,996.996 INFO    ] No existing commands found in stream
[2026-06-12 15:35:04,009.009 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 15:35:04,011.011 INFO    ] Waiting 0.20 seconds before fallback handling...
[2026-06-12 15:35:04,588.588 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 15:35:04,590.590 INFO    ] Checking for system updates...
[2026-06-12 15:35:04,616.616 INFO    ] 200
[2026-06-12 15:35:04,618.618 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:35:04,654.654 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 15:35:04,656.656 INFO    ] No update needed
[2026-06-12 15:35:04,657.657 INFO    ] Checking for camera pi updates...
[2026-06-12 15:35:04,680.680 INFO    ] 200
[2026-06-12 15:35:04,685.685 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:35:04,721.721 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 15:35:04,769.769 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 15:35:04,770.770 INFO    ] No camera update needed
[2026-06-12 15:35:04,772.772 INFO    ] Script finished. Safe exiting...
[2026-06-12 15:35:04,773.773 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 15:35:04,776.776 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 15:35:04,778.778 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 15:35:06,817.817 INFO    ] ================================================
[2026-06-12 15:35:06,833.833 INFO    ] Launching Daemon at Fri Jun 12 15:35:06 IST 2026
[2026-06-12 15:35:06,844.844 INFO    ] ================================================
[2026-06-12 15:35:07,186.186 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 15:35:07
[2026-06-12 15:35:07,502.502 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 15:35:07,637.637 INFO    ] Initializing speech engine...
[2026-06-12 15:35:07,641.641 INFO    ] 2026-06-12 15:35:07
[2026-06-12 15:35:07,872.872 INFO    ] 2026-06-12 15:35:07
[2026-06-12 15:35:07,902.902 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 15:35:08,100.100 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 15:35:08,104.104 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 15:35:08,252.252 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 15:35:08,321.321 INFO    ] time= 12/06/2026 15:35:08
[2026-06-12 15:35:08,350.350 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 15:35:08,357.357 INFO    ] Checking for existing commands in stream...
[2026-06-12 15:35:08,430.430 INFO    ] No existing commands found in stream
[2026-06-12 15:35:13,439.439 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 15:35:13,442.442 INFO    ] Waiting 0.94 seconds before fallback handling...
[2026-06-12 15:35:14,753.753 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 15:35:14,755.755 INFO    ] Checking for system updates...
[2026-06-12 15:35:14,781.781 INFO    ] 200
[2026-06-12 15:35:14,782.782 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:35:14,812.812 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 15:35:14,813.813 INFO    ] No update needed
[2026-06-12 15:35:14,814.814 INFO    ] Checking for camera pi updates...
[2026-06-12 15:35:14,834.834 INFO    ] 200
[2026-06-12 15:35:14,836.836 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:35:14,863.863 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 15:35:15,025.025 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 15:35:15,027.027 INFO    ] No camera update needed
[2026-06-12 15:35:15,028.028 INFO    ] Script finished. Safe exiting...
[2026-06-12 15:35:15,029.029 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 15:35:15,032.032 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 15:35:15,035.035 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 15:35:17,073.073 INFO    ] ================================================
[2026-06-12 15:35:17,089.089 INFO    ] Launching Daemon at Fri Jun 12 15:35:17 IST 2026
[2026-06-12 15:35:17,099.099 INFO    ] ================================================
[2026-06-12 15:35:17,473.473 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 15:35:17
[2026-06-12 15:35:17,789.789 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 15:35:17,933.933 INFO    ] Initializing speech engine...
[2026-06-12 15:35:17,938.938 INFO    ] 2026-06-12 15:35:17
[2026-06-12 15:35:18,143.143 INFO    ] 2026-06-12 15:35:18
[2026-06-12 15:35:18,171.171 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 15:35:18,355.355 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 15:35:18,365.365 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 15:35:18,514.514 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 15:35:18,561.561 INFO    ] time= 12/06/2026 15:35:18
[2026-06-12 15:35:18,584.584 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 15:35:18,590.590 INFO    ] Checking for existing commands in stream...
[2026-06-12 15:35:18,680.680 INFO    ] No existing commands found in stream
[2026-06-12 15:35:23,689.689 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 15:35:23,692.692 INFO    ] Waiting 3.80 seconds before fallback handling...
[2026-06-12 15:35:27,882.882 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 15:35:27,884.884 INFO    ] Checking for system updates...
[2026-06-12 15:35:27,904.904 INFO    ] 200
[2026-06-12 15:35:27,905.905 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:35:27,935.935 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 15:35:27,936.936 INFO    ] No update needed
[2026-06-12 15:35:27,937.937 INFO    ] Checking for camera pi updates...
[2026-06-12 15:35:27,957.957 INFO    ] 200
[2026-06-12 15:35:27,959.959 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:35:27,984.984 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 15:35:28,128.128 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 15:35:28,130.130 INFO    ] No camera update needed
[2026-06-12 15:35:28,131.131 INFO    ] Script finished. Safe exiting...
[2026-06-12 15:35:28,133.133 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 15:35:28,136.136 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 15:35:28,138.138 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 15:35:30,178.178 INFO    ] ================================================
[2026-06-12 15:35:30,193.193 INFO    ] Launching Daemon at Fri Jun 12 15:35:30 IST 2026
[2026-06-12 15:35:30,204.204 INFO    ] ================================================
[2026-06-12 15:35:30,544.544 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 15:35:30
[2026-06-12 15:35:30,856.856 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 15:35:30,990.990 INFO    ] Initializing speech engine...
[2026-06-12 15:35:30,995.995 INFO    ] 2026-06-12 15:35:30
[2026-06-12 15:35:31,215.215 INFO    ] 2026-06-12 15:35:31
[2026-06-12 15:35:31,245.245 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 15:35:31,432.432 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 15:35:31,442.442 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 15:35:31,573.573 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 15:35:31,634.634 INFO    ] time= 12/06/2026 15:35:31
[2026-06-12 15:35:31,666.666 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 15:35:31,673.673 INFO    ] Checking for existing commands in stream...
[2026-06-12 15:35:31,741.741 INFO    ] No existing commands found in stream
[2026-06-12 15:35:36,750.750 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 15:35:36,753.753 INFO    ] Waiting 1.54 seconds before fallback handling...
[2026-06-12 15:35:38,677.677 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 15:35:38,679.679 INFO    ] Checking for system updates...
[2026-06-12 15:35:38,718.718 INFO    ] 200
[2026-06-12 15:35:38,721.721 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:35:38,773.773 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 15:35:38,775.775 INFO    ] No update needed
[2026-06-12 15:35:38,777.777 INFO    ] Checking for camera pi updates...
[2026-06-12 15:35:38,812.812 INFO    ] 200
[2026-06-12 15:35:38,814.814 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:35:38,840.840 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 15:35:38,886.886 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 15:35:38,888.888 INFO    ] No camera update needed
[2026-06-12 15:35:38,889.889 INFO    ] Script finished. Safe exiting...
[2026-06-12 15:35:38,891.891 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 15:35:38,894.894 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 15:35:38,896.896 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 15:35:40,934.934 INFO    ] ================================================
[2026-06-12 15:35:40,950.950 INFO    ] Launching Daemon at Fri Jun 12 15:35:40 IST 2026
[2026-06-12 15:35:40,969.969 INFO    ] ================================================
[2026-06-12 15:35:41,299.299 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 15:35:41
[2026-06-12 15:35:41,616.616 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 15:35:41,759.759 INFO    ] Initializing speech engine...
[2026-06-12 15:35:41,764.764 INFO    ] 2026-06-12 15:35:41
[2026-06-12 15:35:41,967.967 INFO    ] 2026-06-12 15:35:41
[2026-06-12 15:35:41,996.996 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 15:35:42,194.194 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 15:35:42,203.203 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 15:35:42,336.336 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 15:35:42,397.397 INFO    ] time= 12/06/2026 15:35:42
[2026-06-12 15:35:42,437.437 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 15:35:42,444.444 INFO    ] Checking for existing commands in stream...
[2026-06-12 15:35:42,520.520 INFO    ] No existing commands found in stream
[2026-06-12 15:35:47,530.530 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 15:35:47,533.533 INFO    ] Waiting 2.00 seconds before fallback handling...
[2026-06-12 15:35:49,922.922 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 15:35:49,923.923 INFO    ] Checking for system updates...
[2026-06-12 15:35:49,943.943 INFO    ] 200
[2026-06-12 15:35:49,945.945 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:35:49,976.976 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 15:35:49,977.977 INFO    ] No update needed
[2026-06-12 15:35:49,978.978 INFO    ] Checking for camera pi updates...
[2026-06-12 15:35:49,998.998 INFO    ] 200
[2026-06-12 15:35:50,000.000 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:35:50,024.024 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 15:35:50,066.066 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 15:35:50,068.068 INFO    ] No camera update needed
[2026-06-12 15:35:50,069.069 INFO    ] Script finished. Safe exiting...
[2026-06-12 15:35:50,070.070 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 15:35:50,073.073 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 15:35:50,076.076 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 15:35:52,113.113 INFO    ] ================================================
[2026-06-12 15:35:52,128.128 INFO    ] Launching Daemon at Fri Jun 12 15:35:52 IST 2026
[2026-06-12 15:35:52,139.139 INFO    ] ================================================
[2026-06-12 15:35:52,497.497 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 15:35:52
[2026-06-12 15:35:52,809.809 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 15:35:52,963.963 INFO    ] Initializing speech engine...
[2026-06-12 15:35:52,968.968 INFO    ] 2026-06-12 15:35:52
[2026-06-12 15:35:53,177.177 INFO    ] 2026-06-12 15:35:53
[2026-06-12 15:35:53,206.206 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 15:35:53,393.393 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 15:35:53,403.403 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 15:35:53,547.547 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 15:35:53,601.601 INFO    ] time= 12/06/2026 15:35:53
[2026-06-12 15:35:53,623.623 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 15:35:53,630.630 INFO    ] Checking for existing commands in stream...
[2026-06-12 15:35:53,697.697 INFO    ] No existing commands found in stream
[2026-06-12 15:35:58,730.730 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 15:35:58,733.733 INFO    ] Waiting 2.70 seconds before fallback handling...
[2026-06-12 15:36:01,815.815 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 15:36:01,818.818 INFO    ] Checking for system updates...
[2026-06-12 15:36:01,853.853 INFO    ] 200
[2026-06-12 15:36:01,855.855 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:36:01,898.898 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 15:36:01,901.901 INFO    ] No update needed
[2026-06-12 15:36:01,903.903 INFO    ] Checking for camera pi updates...
[2026-06-12 15:36:01,926.926 INFO    ] 200
[2026-06-12 15:36:01,929.929 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:36:01,960.960 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 15:36:02,003.003 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 15:36:02,005.005 INFO    ] No camera update needed
[2026-06-12 15:36:02,007.007 INFO    ] Script finished. Safe exiting...
[2026-06-12 15:36:02,009.009 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 15:36:02,013.013 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 15:36:02,016.016 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 15:36:04,057.057 INFO    ] ================================================
[2026-06-12 15:36:04,075.075 INFO    ] Launching Daemon at Fri Jun 12 15:36:04 IST 2026
[2026-06-12 15:36:04,086.086 INFO    ] ================================================
[2026-06-12 15:36:04,418.418 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 15:36:04
[2026-06-12 15:36:04,736.736 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 15:36:04,881.881 INFO    ] Initializing speech engine...
[2026-06-12 15:36:04,886.886 INFO    ] 2026-06-12 15:36:04
[2026-06-12 15:36:05,091.091 INFO    ] 2026-06-12 15:36:05
[2026-06-12 15:36:05,120.120 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 15:36:05,303.303 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 15:36:05,312.312 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 15:36:05,447.447 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 15:36:05,505.505 INFO    ] time= 12/06/2026 15:36:05
[2026-06-12 15:36:05,532.532 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 15:36:05,534.534 INFO    ] Checking for existing commands in stream...
[2026-06-12 15:36:05,637.637 INFO    ] No existing commands found in stream
[2026-06-12 15:36:10,642.642 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 15:36:10,645.645 INFO    ] Waiting 0.77 seconds before fallback handling...
[2026-06-12 15:36:11,813.813 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 15:36:11,815.815 INFO    ] Checking for system updates...
[2026-06-12 15:36:11,836.836 INFO    ] 200
[2026-06-12 15:36:11,837.837 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:36:11,867.867 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 15:36:11,869.869 INFO    ] No update needed
[2026-06-12 15:36:11,870.870 INFO    ] Checking for camera pi updates...
[2026-06-12 15:36:11,890.890 INFO    ] 200
[2026-06-12 15:36:11,892.892 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:36:11,915.915 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 15:36:11,962.962 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 15:36:11,964.964 INFO    ] No camera update needed
[2026-06-12 15:36:11,965.965 INFO    ] Script finished. Safe exiting...
[2026-06-12 15:36:11,966.966 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 15:36:11,970.970 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 15:36:11,973.973 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 15:36:14,012.012 INFO    ] ================================================
[2026-06-12 15:36:14,027.027 INFO    ] Launching Daemon at Fri Jun 12 15:36:14 IST 2026
[2026-06-12 15:36:14,038.038 INFO    ] ================================================
[2026-06-12 15:36:14,426.426 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 15:36:14
[2026-06-12 15:36:14,746.746 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 15:36:14,906.906 INFO    ] Initializing speech engine...
[2026-06-12 15:36:14,919.919 INFO    ] 2026-06-12 15:36:14
[2026-06-12 15:36:15,147.147 INFO    ] 2026-06-12 15:36:15
[2026-06-12 15:36:15,177.177 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 15:36:15,364.364 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 15:36:15,367.367 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 15:36:15,504.504 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 15:36:15,568.568 INFO    ] time= 12/06/2026 15:36:15
[2026-06-12 15:36:15,597.597 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 15:36:15,603.603 INFO    ] Checking for existing commands in stream...
[2026-06-12 15:36:15,671.671 INFO    ] No existing commands found in stream
[2026-06-12 15:36:20,680.680 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 15:36:20,683.683 INFO    ] Waiting 2.25 seconds before fallback handling...
[2026-06-12 15:36:23,310.310 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 15:36:23,312.312 INFO    ] Checking for system updates...
[2026-06-12 15:36:23,334.334 INFO    ] 200
[2026-06-12 15:36:23,335.335 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:36:23,368.368 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 15:36:23,370.370 INFO    ] No update needed
[2026-06-12 15:36:23,371.371 INFO    ] Checking for camera pi updates...
[2026-06-12 15:36:23,390.390 INFO    ] 200
[2026-06-12 15:36:23,392.392 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:36:23,417.417 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 15:36:23,467.467 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 15:36:23,469.469 INFO    ] No camera update needed
[2026-06-12 15:36:23,470.470 INFO    ] Script finished. Safe exiting...
[2026-06-12 15:36:23,472.472 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 15:36:23,475.475 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 15:36:23,478.478 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 15:36:25,516.516 INFO    ] ================================================
[2026-06-12 15:36:25,531.531 INFO    ] Launching Daemon at Fri Jun 12 15:36:25 IST 2026
[2026-06-12 15:36:25,542.542 INFO    ] ================================================
[2026-06-12 15:36:25,907.907 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 15:36:25
[2026-06-12 15:36:26,224.224 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 15:36:26,357.357 INFO    ] Initializing speech engine...
[2026-06-12 15:36:26,361.361 INFO    ] 2026-06-12 15:36:26
[2026-06-12 15:36:26,555.555 INFO    ] 2026-06-12 15:36:26
[2026-06-12 15:36:26,600.600 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 15:36:26,760.760 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 15:36:26,797.797 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 15:36:26,974.974 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 15:36:27,027.027 INFO    ] time= 12/06/2026 15:36:26
[2026-06-12 15:36:27,061.061 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 15:36:27,083.083 INFO    ] Checking for existing commands in stream...
[2026-06-12 15:36:27,159.159 INFO    ] No existing commands found in stream
[2026-06-12 15:36:32,169.169 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 15:36:32,171.171 INFO    ] Waiting 2.80 seconds before fallback handling...
[2026-06-12 15:36:35,373.373 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 15:36:35,375.375 INFO    ] Checking for system updates...
[2026-06-12 15:36:35,395.395 INFO    ] 200
[2026-06-12 15:36:35,397.397 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:36:35,426.426 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 15:36:35,428.428 INFO    ] No update needed
[2026-06-12 15:36:35,429.429 INFO    ] Checking for camera pi updates...
[2026-06-12 15:36:35,448.448 INFO    ] 200
[2026-06-12 15:36:35,450.450 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:36:35,472.472 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 15:36:35,538.538 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 15:36:35,540.540 INFO    ] No camera update needed
[2026-06-12 15:36:35,541.541 INFO    ] Script finished. Safe exiting...
[2026-06-12 15:36:35,543.543 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 15:36:35,546.546 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 15:36:35,550.550 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 15:36:37,588.588 INFO    ] ================================================
[2026-06-12 15:36:37,604.604 INFO    ] Launching Daemon at Fri Jun 12 15:36:37 IST 2026
[2026-06-12 15:36:37,615.615 INFO    ] ================================================
[2026-06-12 15:36:37,970.970 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 15:36:37
[2026-06-12 15:36:38,287.287 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 15:36:38,432.432 INFO    ] Initializing speech engine...
[2026-06-12 15:36:38,438.438 INFO    ] 2026-06-12 15:36:38
[2026-06-12 15:36:38,641.641 INFO    ] 2026-06-12 15:36:38
[2026-06-12 15:36:38,669.669 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 15:36:38,855.855 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 15:36:38,864.864 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 15:36:39,045.045 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 15:36:39,082.082 INFO    ] time= 12/06/2026 15:36:39
[2026-06-12 15:36:39,085.085 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 15:36:39,091.091 INFO    ] Checking for existing commands in stream...
[2026-06-12 15:36:39,159.159 INFO    ] Found 1 existing command(s) in stream
[2026-06-12 15:36:39,184.184 INFO    ] Checking historical command: ID=1781258793411-0
[2026-06-12 15:36:39,186.186 INFO    ] process_and_cleanup_command: msg_id=1781258793411-0
[2026-06-12 15:36:39,208.208 INFO    ] is_command_expired: timestamp=2026-06-12T10:06:31.557Z, expiry=30s
[2026-06-12 15:36:39,297.297 INFO    ] Command removed from stream: 1781258793411-0. returning for processing...
[2026-06-12 15:36:39,300.300 INFO    ] ***** get_valid_command
[2026-06-12 15:36:39,303.303 INFO    ] {'source': 'webapp', 'timeout': '10', 'timestamp': '2026-06-12T10:06:31.557Z', 'command': 'start-order', 'data': '{"request_id":"start-order-1781258791557-emkb7dzf3","orderId":"TM09202301260612153538092","is_vending":false}'}
[2026-06-12 15:36:39,307.307 INFO    ] ***** Parsed command data: {'is_vending': False, 'request_id': 'start-order-1781258791557-emkb7dzf3', 'orderId': 'TM09202301260612153538092'}
[2026-06-12 15:36:39,312.312 INFO    ] Handling start order...
[2026-06-12 15:36:39,315.315 INFO    ] handle_start_order_command
[2026-06-12 15:36:39,322.322 INFO    ] _send_start_order_success: request_id=start-order-1781258791557-emkb7dzf3, order_id=TM09202301260612153538092
[2026-06-12 15:36:39,325.325 INFO    ] [_send_start_order_success] Adding message to stream: machine:TM09202301
[2026-06-12 15:36:39,393.393 INFO    ] [_send_start_order_success] Message added to stream with ID: 1781258799416-0
[2026-06-12 15:36:39,397.397 INFO    ] ✅ Start-order command succeeded - order locked, waiting for process-order command
[2026-06-12 15:36:39,402.402 INFO    ] Checking for system updates...
[2026-06-12 15:36:39,432.432 INFO    ] 200
[2026-06-12 15:36:39,435.435 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:36:39,508.508 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 15:36:39,510.510 INFO    ] No update needed
[2026-06-12 15:36:39,535.535 INFO    ] Checking for camera pi updates...
[2026-06-12 15:36:39,568.568 INFO    ] 200
[2026-06-12 15:36:39,571.571 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:36:39,649.649 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 15:36:39,695.695 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 15:36:39,698.698 INFO    ] No camera update needed
[2026-06-12 15:36:39,701.701 INFO    ] Script finished. Safe exiting...
[2026-06-12 15:36:39,704.704 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 15:36:39,709.709 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 15:36:39,715.715 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-06-12 15:36:39,721.721 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 15:36:41,762.762 INFO    ] ================================================
[2026-06-12 15:36:41,777.777 INFO    ] Launching Daemon at Fri Jun 12 15:36:41 IST 2026
[2026-06-12 15:36:41,788.788 INFO    ] ================================================
[2026-06-12 15:36:42,142.142 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 15:36:42
[2026-06-12 15:36:42,455.455 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 15:36:42,589.589 INFO    ] Initializing speech engine...
[2026-06-12 15:36:42,602.602 INFO    ] 2026-06-12 15:36:42
[2026-06-12 15:36:42,811.811 INFO    ] 2026-06-12 15:36:42
[2026-06-12 15:36:42,842.842 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 15:36:43,028.028 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 15:36:43,036.036 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 15:36:43,168.168 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 15:36:43,232.232 INFO    ] time= 12/06/2026 15:36:43
[2026-06-12 15:36:43,260.260 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 15:36:43,266.266 INFO    ] Checking for existing commands in stream...
[2026-06-12 15:36:43,360.360 INFO    ] Found 2 existing command(s) in stream
[2026-06-12 15:36:43,362.362 INFO    ] Checking historical command: ID=1781258799416-0
[2026-06-12 15:36:43,387.387 INFO    ] process_and_cleanup_command: msg_id=1781258799416-0
[2026-06-12 15:36:43,390.390 INFO    ] is_command_expired: timestamp=2026-06-12T10:06:39.323250Z, expiry=30s
[2026-06-12 15:36:43,476.476 INFO    ] Command removed from stream: 1781258799416-0. returning for processing...
[2026-06-12 15:36:43,479.479 INFO    ] ***** get_valid_command
[2026-06-12 15:36:43,482.482 INFO    ] {'metadata_order_id': 'TM09202301260612153538092', 'imei': 'TM09202301', 'message_type': 'command_response', 'message': 'start-order success', 'status': 'success', 'metadata_request_id': 'start-order-1781258791557-emkb7dzf3', 'timestamp': '2026-06-12T10:06:39.323250Z'}
[2026-06-12 15:36:43,487.487 INFO    ] Checking historical command: ID=1781258800918-0
[2026-06-12 15:36:43,491.491 INFO    ] process_and_cleanup_command: msg_id=1781258800918-0
[2026-06-12 15:36:43,493.493 INFO    ] is_command_expired: timestamp=2026-06-12T10:06:39.130Z, expiry=30s
[2026-06-12 15:36:43,568.568 INFO    ] Command removed from stream: 1781258800918-0. returning for processing...
[2026-06-12 15:36:43,572.572 INFO    ] ***** get_valid_command
[2026-06-12 15:36:43,576.576 INFO    ] {'source': 'webapp', 'command': 'process-order', 'timeout': '60', 'data': '{"request_id":"process-order-1781258799130-9z3b79m4k","orderId":"TM09202301260612153538092","is_vending":false,"accessCode":"43454420"}', 'timestamp': '2026-06-12T10:06:39.130Z'}
[2026-06-12 15:36:43,579.579 INFO    ] ***** Parsed command data: {'request_id': 'process-order-1781258799130-9z3b79m4k', 'is_vending': False, 'accessCode': '43454420', 'orderId': 'TM09202301260612153538092'}
[2026-06-12 15:36:43,584.584 INFO    ] Handling process order...
[2026-06-12 15:36:43,588.588 INFO    ] Processing process-order command...
[2026-06-12 15:36:43,595.595 INFO    ] 🔍 Lock file Order ID: TM09202301260612153538092, TS: 2026-06-12 15:36:39
[2026-06-12 15:36:43,605.605 INFO    ] ✅ Order lock valid for TM09202301260612153538092
[2026-06-12 15:36:43,609.609 INFO    ] Received access code in process-order, skipping PHP API call
[2026-06-12 15:36:43,613.613 INFO    ] processing access code 43454420 for order TM09202301260612153538092
[2026-06-12 15:36:43,617.617 INFO    ] 🔍 Lock file Order ID: TM09202301260612153538092, TS: 2026-06-12 15:36:39
[2026-06-12 15:36:43,623.623 INFO    ] ✅ Order lock valid for TM09202301260612153538092
[2026-06-12 15:36:43,624.624 INFO    ] 2026-06-12 15:36:43
[2026-06-12 15:36:43,692.692 INFO    ] 200
[2026-06-12 15:36:43,714.714 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:36:43,720.720 INFO    ] 43454420
[2026-06-12 15:36:43,742.742 INFO    ] 2026-06-12 15:36:43
[2026-06-12 15:36:43,748.748 INFO    ] session id :756689109
[2026-06-12 15:36:43,751.751 INFO    ] http://localhost:5000/v2/getOrderByAccessCode?access_code=43454420&imei=TM09202301&session_id=756689109
[2026-06-12 15:36:44,456.456 INFO    ] 200
[2026-06-12 15:36:44,458.458 INFO    ] {"status": true, "msg": "Order Data", "data": {"bill_amount": "25", "access_code": "43454420", "order_id": "TM09202301260612153538092", "mobile": "7060017551", "proposed_sku_json": [{"unit_price": 25, "qty": 1, "skuid": "4500662", "offer_desc": "", "offer_id": "", "door_id": "2", "tray_id": "32", "sku_total": 25, "mrp": "25", "image_url": "https://images.tinymart.in/product/4500662-3783.jpg", "name": "Paper Boat Mixed fruit 160ml"}], "invoice_bill": "25"}, "rstatus": true}
[2026-06-12 15:36:44,459.459 INFO    ] 25
[2026-06-12 15:36:44,461.461 INFO    ] TM09202301260612153538092
[2026-06-12 15:36:44,462.462 INFO    ] 7060017551
[2026-06-12 15:36:44,463.463 INFO    ] 2026-06-12 15:36:44
[2026-06-12 15:36:44,464.464 INFO    ] Door Opening for user mobile ending with  seven five five one 
[2026-06-12 15:36:44,465.465 INFO    ] Door Opening for user mobile ending with  seven five five one 
[2026-06-12 15:36:44,467.467 INFO    ] 88db40340ad8043d30356d17dd819704
[2026-06-12 15:36:44,468.468 INFO    ] 2026-06-12 15:36:44
[2026-06-12 15:36:44,469.469 INFO    ] playing audio file
[2026-06-12 15:36:44,479.479 INFO    ] 2026-06-12 15:36:44
[2026-06-12 15:36:44,480.480 INFO    ] 2026-06-12 15:36:44
[2026-06-12 15:36:44,482.482 INFO    ] publish_status: order_id=TM09202301260612153538092
[2026-06-12 15:36:44,483.483 INFO    ] [publish_status] Adding message to stream: order:TM09202301260612153538092
[2026-06-12 15:36:44,551.551 INFO    ] [publish_status] Message added to stream with ID: 1781258804577-0
[2026-06-12 15:36:44,552.552 INFO    ] Published to order:TM09202301260612153538092: {'server_response': '{"status": true, "rstatus": true, "msg": "Order Data", "data": {"bill_amount": "25", "order_id": "TM09202301260612153538092", "mobile": "7060017551", "invoice_bill": "25", "proposed_sku_json": [{"qty": 1, "tray_id": "32", "offer_desc": "", "door_id": "2", "offer_id": "", "name": "Paper Boat Mixed fruit 160ml", "unit_price": 25, "sku_total": 25, "skuid": "4500662", "mrp": "25", "image_url": "https://images.tinymart.in/product/4500662-3783.jpg"}], "access_code": "43454420"}}', 'timestamp': '2026-06-12T10:06:44.481738Z', 'order_id': 'TM09202301260612153538092', 'server_status': 'order-started'} (ID: 1781258804577-0)
[2026-06-12 15:36:44,937.937 INFO    ] {'server_response': {'status': True, 'rstatus': True, 'msg': 'Order Data', 'data': {'bill_amount': '25', 'order_id': 'TM09202301260612153538092', 'mobile': '7060017551', 'invoice_bill': '25', 'proposed_sku_json': [{'qty': 1, 'tray_id': '32', 'offer_desc': '', 'door_id': '2', 'offer_id': '', 'name': 'Paper Boat Mixed fruit 160ml', 'unit_price': 25, 'sku_total': 25, 'skuid': '4500662', 'mrp': '25', 'image_url': 'https://images.tinymart.in/product/4500662-3783.jpg'}], 'access_code': '43454420'}}, 'order_id': 'TM09202301260612153538092', 'server_status': 'order-started'}
[2026-06-12 15:36:44,938.938 INFO    ] 200
[2026-06-12 15:36:44,939.939 INFO    ] {"data":{"server_response":{"status":true,"rstatus":true,"msg":"Order Data","data":{"bill_amount":"25","order_id":"TM09202301260612153538092","mobile":"7060017551","invoice_bill":"25","proposed_sku_json":[{"qty":1,"tray_id":"32","offer_desc":"","door_id":"2","offer_id":"","name":"Paper Boat Mixed fruit 160ml","unit_price":25,"sku_total":25,"skuid":"4500662","mrp":"25","image_url":"https:\/\/images.tinymart.in\/product\/4500662-3783.jpg"}],"access_code":"43454420"}},"order_id":"TM09202301260612153538092","server_status":"order-started"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-12 15:36:44,941.941 INFO    ] {'response': {'status': True, 'data': 'order updated successfully', 'code': 'ORDER_EXISTS', 'msg': 'order updated successfully'}, 'data': {'server_response': {'status': True, 'rstatus': True, 'msg': 'Order Data', 'data': {'mobile': '7060017551', 'order_id': 'TM09202301260612153538092', 'invoice_bill': '25', 'proposed_sku_json': [{'qty': 1, 'image_url': 'https://images.tinymart.in/product/4500662-3783.jpg', 'offer_desc': '', 'tray_id': '32', 'door_id': '2', 'name': 'Paper Boat Mixed fruit 160ml', 'unit_price': 25, 'offer_id': '', 'sku_total': 25, 'mrp': '25', 'skuid': '4500662'}], 'bill_amount': '25', 'access_code': '43454420'}}, 'order_id': 'TM09202301260612153538092', 'server_status': 'order-started'}}
[2026-06-12 15:36:44,942.942 INFO    ] 2026-06-12 15:36:44
[2026-06-12 15:36:44,970.970 INFO    ] 200
[2026-06-12 15:36:44,972.972 INFO    ] True
[2026-06-12 15:36:45,070.070 INFO    ] 200
[2026-06-12 15:36:45,071.071 INFO    ] {"error": {"tmessage": "In Progress", "umessage": "In Progress", "data": {}, "code": 20001}, "SectionSKU": {"Header": "Thank you for bearing with us :)", "skus": []}, "rstatus": false, "SectionStatus": {"Header": " Your order is under process  ", "SubHeader": "Please wait while we process your order", "UI_Header": "", "Note": ""}, "status": "False", "voiceNote": "Please Wait", "SectionMain": {"Header": "Processing Order"}}
[2026-06-12 15:36:45,073.073 INFO    ] {'rstatus': False, 'SectionMain': {'Header': 'Processing Order'}, 'SectionSKU': {'skus': [], 'Header': 'Thank you for bearing with us :)'}, 'error': {'tmessage': 'In Progress', 'code': 20001, 'data': {}, 'umessage': 'In Progress'}, 'SectionStatus': {'Note': '', 'SubHeader': 'Please wait while we process your order', 'UI_Header': '', 'Header': ' Your order is under process  '}, 'voiceNote': 'Please Wait', 'status': 'False'}
[2026-06-12 15:36:45,075.075 INFO    ] *** process_order ***
[2026-06-12 15:36:46,221.221 INFO    ] 200
[2026-06-12 15:36:46,222.222 INFO    ] {"delay": 0, "SectionSKU": {"Header": "Thank you for bearing with us :)", "skus": []}, "rstatus": true, "SectionStatus": {"Header": " Your order is under process  ", "SubHeader": "Please wait while we process your order", "UI_Header": "", "Note": ""}, "status": "True", "voiceNote": "Please Wait", "SectionMain": {"Header": "Processing Order"}}
[2026-06-12 15:36:46,230.230 INFO    ] {'rstatus': True, 'SectionMain': {'Header': 'Processing Order'}, 'SectionSKU': {'skus': [], 'Header': 'Thank you for bearing with us :)'}, 'delay': 0, 'status': 'True', 'SectionStatus': {'Note': '', 'SubHeader': 'Please wait while we process your order', 'UI_Header': '', 'Header': ' Your order is under process  '}, 'voiceNote': 'Please Wait'}
[2026-06-12 15:36:46,231.231 INFO    ] *** process_order ***
[2026-06-12 15:36:46,232.232 INFO    ] publish_status: order_id=TM09202301260612153538092
[2026-06-12 15:36:46,234.234 INFO    ] [publish_status] Adding message to stream: order:TM09202301260612153538092
[2026-06-12 15:36:46,300.300 INFO    ] [publish_status] Message added to stream with ID: 1781258806327-0
[2026-06-12 15:36:46,301.301 INFO    ] Published to order:TM09202301260612153538092: {'server_response': '{"status": "True", "SectionMain": {"Header": "Processing Order"}, "SectionSKU": {"skus": [], "Header": "Thank you for bearing with us :)"}, "delay": 0, "rstatus": true, "SectionStatus": {"Note": "", "SubHeader": "You can pull the door now.", "UI_Header": "", "Header": " Your order is under process  "}, "voiceNote": "Door is open..."}', 'order_id': 'TM09202301260612153538092', 'server_status': 'doorOpened'} (ID: 1781258806327-0)
[2026-06-12 15:36:47,358.358 INFO    ] 2026-06-12 15:36:47
[2026-06-12 15:36:47,361.361 INFO    ] publish_status: order_id=TM09202301260612153538092
[2026-06-12 15:36:47,364.364 INFO    ] [publish_status] Adding message to stream: order:TM09202301260612153538092
[2026-06-12 15:36:47,465.465 INFO    ] [publish_status] Message added to stream with ID: 1781258807491-0
[2026-06-12 15:36:47,468.468 INFO    ] Published to order:TM09202301260612153538092: {'server_response': '{"rstatus": true, "SectionMain": {"Header": "Processing Order"}, "SectionSKU": {"skus": [], "Header": "Thank you for bearing with us :)"}, "delay": 0, "status": "True", "SectionStatus": {"Note": "", "SubHeader": "Please wait while we process your order", "UI_Header": "", "Header": " Your order is under process  "}, "voiceNote": "Please Wait"}', 'timestamp': '2026-06-12T10:06:47.359445Z', 'order_id': 'TM09202301260612153538092', 'server_status': 'processOrder'} (ID: 1781258807491-0)
[2026-06-12 15:36:47,604.604 INFO    ] {'server_response': {'rstatus': True, 'SectionMain': {'Header': 'Processing Order'}, 'SectionSKU': {'skus': [], 'Header': 'Thank you for bearing with us :)'}, 'delay': 0, 'status': 'True', 'SectionStatus': {'Note': '', 'SubHeader': 'Please wait while we process your order', 'UI_Header': '', 'Header': ' Your order is under process  '}, 'voiceNote': 'Please Wait'}, 'order_id': 'TM09202301260612153538092', 'server_status': 'processOrder'}
[2026-06-12 15:36:47,605.605 INFO    ] 200
[2026-06-12 15:36:47,606.606 INFO    ] {"data":{"server_response":{"rstatus":true,"SectionMain":{"Header":"Processing Order"},"SectionSKU":{"skus":[],"Header":"Thank you for bearing with us :)"},"delay":0,"status":"true","SectionStatus":{"Note":"","SubHeader":"Please wait while we process your order","UI_Header":"","Header":" Your order is under process  "},"voiceNote":"Please Wait"},"order_id":"TM09202301260612153538092","server_status":"processOrder"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-12 15:36:47,608.608 INFO    ] {'response': {'status': True, 'data': 'order updated successfully', 'code': 'ORDER_EXISTS', 'msg': 'order updated successfully'}, 'data': {'server_response': {'rstatus': True, 'SectionMain': {'Header': 'Processing Order'}, 'SectionSKU': {'skus': [], 'Header': 'Thank you for bearing with us :)'}, 'delay': 0, 'status': 'true', 'voiceNote': 'Please Wait', 'SectionStatus': {'Note': '', 'SubHeader': 'Please wait while we process your order', 'UI_Header': '', 'Header': ' Your order is under process  '}}, 'order_id': 'TM09202301260612153538092', 'server_status': 'processOrder'}}
[2026-06-12 15:36:47,616.616 INFO    ] 2026-06-12 15:36:47
[2026-06-12 15:36:47,617.617 INFO    ] None
[2026-06-12 15:36:47,619.619 INFO    ] Opening Door now
[2026-06-12 15:36:47,621.621 INFO    ] Opening Door now
[2026-06-12 15:36:47,622.622 INFO    ] 08e5d1063504bf393c26f0bfa436e9f9
[2026-06-12 15:36:47,624.624 INFO    ] 2026-06-12 15:36:47
[2026-06-12 15:36:47,625.625 INFO    ] playing audio file
[2026-06-12 15:36:47,635.635 INFO    ] 2026-06-12 15:36:47
[2026-06-12 15:36:47,637.637 INFO    ] 2026-06-12 15:36:47
[2026-06-12 15:36:50,772.772 INFO    ] 200
[2026-06-12 15:36:50,773.773 INFO    ] {"error": {"tmessage": "In Progress", "umessage": "In Progress", "data": {}, "code": 20001}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"name": "Paper Boat Mixed fruit 160ml", "qty": 1}]}, "rstatus": false, "SectionStatus": {"Header": "Please Close Door 2", "SubHeader": "Please Pick the Products and close the door", "UI_Header": "DOOR 2\nIS \nOPEN \nNOW", "Note": "Please Close the door after picking up products"}, "status": "False", "voiceNote": "Door 2 is open now", "SectionMain": {"Header": "Door Open"}}
[2026-06-12 15:36:50,776.776 INFO    ] {'rstatus': False, 'SectionMain': {'Header': 'Door Open'}, 'SectionSKU': {'skus': [{'name': 'Paper Boat Mixed fruit 160ml', 'qty': 1}], 'Header': 'Pick the below items from the door'}, 'error': {'tmessage': 'In Progress', 'code': 20001, 'data': {}, 'umessage': 'In Progress'}, 'SectionStatus': {'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', 'Header': 'Please Close Door 2'}, 'voiceNote': 'Door 2 is open now', 'status': 'False'}
[2026-06-12 15:36:53,959.959 INFO    ] 200
[2026-06-12 15:36:53,961.961 INFO    ] {"error": {"tmessage": "In Progress", "umessage": "In Progress", "data": {}, "code": 20001}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"name": "Paper Boat Mixed fruit 160ml", "qty": 1}]}, "rstatus": false, "SectionStatus": {"Header": "Please Close Door 2", "SubHeader": "Please Pick the Products and close the door", "UI_Header": "DOOR 2\nIS \nOPEN \nNOW", "Note": "Please Close the door after picking up products"}, "status": "False", "voiceNote": "Please close door 2", "SectionMain": {"Header": "Door Open"}}
[2026-06-12 15:36:53,963.963 INFO    ] {'rstatus': False, 'SectionMain': {'Header': 'Door Open'}, 'SectionSKU': {'skus': [{'name': 'Paper Boat Mixed fruit 160ml', 'qty': 1}], 'Header': 'Pick the below items from the door'}, 'error': {'tmessage': 'In Progress', 'code': 20001, 'data': {}, 'umessage': 'In Progress'}, 'SectionStatus': {'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', 'Header': 'Please Close Door 2'}, 'voiceNote': 'Please close door 2', 'status': 'False'}
[2026-06-12 15:36:57,129.129 INFO    ] 200
[2026-06-12 15:36:57,131.131 INFO    ] {"error": {"tmessage": "In Progress", "umessage": "In Progress", "data": {}, "code": 20001}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"name": "Paper Boat Mixed fruit 160ml", "qty": 1}]}, "rstatus": false, "SectionStatus": {"Header": "Please Close Door 2", "SubHeader": "Please Pick the Products and close the door", "UI_Header": "DOOR 2\nIS \nOPEN \nNOW", "Note": "Please Close the door after picking up products"}, "status": "False", "voiceNote": "Please close door 2", "SectionMain": {"Header": "Door Open"}}
[2026-06-12 15:36:57,133.133 INFO    ] Please close door 2
[2026-06-12 15:36:57,134.134 INFO    ] Please close door 2
[2026-06-12 15:36:57,136.136 INFO    ] 758e46684c76e887a5f58d4738034bed
[2026-06-12 15:36:57,138.138 INFO    ] 2026-06-12 15:36:57
[2026-06-12 15:36:57,139.139 INFO    ] playing audio file
[2026-06-12 15:36:57,152.152 INFO    ] 2026-06-12 15:36:57
[2026-06-12 15:36:57,159.159 INFO    ] publish_status: order_id=TM09202301260612153538092
[2026-06-12 15:36:57,161.161 INFO    ] [publish_status] Adding message to stream: order:TM09202301260612153538092
[2026-06-12 15:36:57,230.230 INFO    ] [publish_status] Message added to stream with ID: 1781258817257-0
[2026-06-12 15:36:57,231.231 INFO    ] Published to order:TM09202301260612153538092: {'server_response': '{"rstatus": false, "SectionMain": {"Header": "Door Open"}, "SectionSKU": {"skus": [{"name": "Paper Boat Mixed fruit 160ml", "qty": 1}], "Header": "Pick the below items from the door"}, "error": {"tmessage": "In Progress", "code": 20001, "data": {}, "umessage": "In Progress"}, "SectionStatus": {"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", "Header": "Please Close Door 2"}, "voiceNote": "Please close door 2", "status": "False"}', 'timestamp': '2026-06-12T10:06:57.154664Z', 'order_id': 'TM09202301260612153538092', 'server_status': 'OrderStatus'} (ID: 1781258817257-0)
[2026-06-12 15:36:57,612.612 INFO    ] {'server_response': {'rstatus': False, 'SectionMain': {'Header': 'Door Open'}, 'SectionSKU': {'skus': [{'name': 'Paper Boat Mixed fruit 160ml', 'qty': 1}], 'Header': 'Pick the below items from the door'}, 'error': {'tmessage': 'In Progress', 'code': 20001, 'data': {}, 'umessage': 'In Progress'}, 'SectionStatus': {'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', 'Header': 'Please Close Door 2'}, 'voiceNote': 'Please close door 2', 'status': 'False'}, 'order_id': 'TM09202301260612153538092', 'server_status': 'OrderStatus'}
[2026-06-12 15:36:57,614.614 INFO    ] 200
[2026-06-12 15:36:57,615.615 INFO    ] {"data":{"server_response":{"rstatus":false,"SectionMain":{"Header":"Door Open"},"SectionSKU":{"skus":[{"name":"Paper Boat Mixed fruit 160ml","qty":1}],"Header":"Pick the below items from the door"},"error":{"tmessage":"In Progress","code":20001,"data":[],"umessage":"In Progress"},"SectionStatus":{"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","Header":"Please Close Door 2"},"voiceNote":"Please close door 2","status":"false"},"order_id":"TM09202301260612153538092","server_status":"OrderStatus"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-12 15:36:57,617.617 INFO    ] {'response': {'status': True, 'data': 'order updated successfully', 'code': 'ORDER_EXISTS', 'msg': 'order updated successfully'}, 'data': {'server_response': {'rstatus': False, 'SectionMain': {'Header': 'Door Open'}, 'SectionSKU': {'skus': [{'name': 'Paper Boat Mixed fruit 160ml', 'qty': 1}], 'Header': 'Pick the below items from the door'}, 'error': {'tmessage': 'In Progress', 'data': [], 'code': 20001, 'umessage': 'In Progress'}, 'SectionStatus': {'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', 'Header': 'Please Close Door 2'}, 'voiceNote': 'Please close door 2', 'status': 'false'}, 'order_id': 'TM09202301260612153538092', 'server_status': 'OrderStatus'}}
[2026-06-12 15:36:57,619.619 INFO    ] {'rstatus': False, 'SectionMain': {'Header': 'Door Open'}, 'SectionSKU': {'skus': [{'name': 'Paper Boat Mixed fruit 160ml', 'qty': 1}], 'Header': 'Pick the below items from the door'}, 'error': {'tmessage': 'In Progress', 'code': 20001, 'data': {}, 'umessage': 'In Progress'}, 'SectionStatus': {'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', 'Header': 'Please Close Door 2'}, 'voiceNote': 'Please close door 2', 'status': 'False'}
[2026-06-12 15:37:00,653.653 INFO    ] 200
[2026-06-12 15:37:00,655.655 INFO    ] {"delay": 100, "SectionSKU": {"Header": "If you like us, tell others... else tell us", "skus": []}, "rstatus": true, "SectionStatus": {"Header": " Order is complete ", "SubHeader": "Please wait for invoice to generate", "UI_Header": "", "Note": "If any due amount, clear at https://go.tinymart.in"}, "status": "True", "voiceNote": "Transaction Completed", "SectionMain": {"Header": "Door Closed"}}
[2026-06-12 15:37:00,657.657 INFO    ] {'rstatus': True, 'SectionMain': {'Header': 'Door Closed'}, 'SectionSKU': {'skus': [], 'Header': 'If you like us, tell others... else tell us'}, 'delay': 100, '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 '}, 'voiceNote': 'Transaction Completed'}
[2026-06-12 15:37:00,658.658 INFO    ] 2026-06-12 15:37:00
[2026-06-12 15:37:00,660.660 INFO    ] Order Completed 
[2026-06-12 15:37:00,661.661 INFO    ] Order Completed 
[2026-06-12 15:37:00,663.663 INFO    ] 193c8a8cf3bf490ccfe0b23598544a83
[2026-06-12 15:37:00,665.665 INFO    ] 2026-06-12 15:37:00
[2026-06-12 15:37:00,666.666 INFO    ] playing audio file
[2026-06-12 15:37:00,678.678 INFO    ] 2026-06-12 15:37:00
[2026-06-12 15:37:00,680.680 INFO    ] {'rstatus': True, 'SectionMain': {'Header': 'Door Closed'}, 'SectionSKU': {'skus': [], 'Header': 'If you like us, tell others... else tell us'}, 'delay': 100, '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 '}, 'voiceNote': 'Transaction Completed'}
[2026-06-12 15:37:00,682.682 INFO    ] 2026-06-12 15:37:00
[2026-06-12 15:37:01,423.423 INFO    ] 200
[2026-06-12 15:37:01,424.424 INFO    ] {"anomaly": 0, "skus": [{"image_url": "https://images.tinymart.in/product/4500662-3783.jpg", "qty": 1, "skuid": "4500662", "unit_price": "25", "tray_id": "32", "sku_total": 25.0, "mrp": "25", "door_id": "", "name": "Paper Boat Mixed fruit 160ml per peice"}], "total_amount": 25.0, "orderId": "TM09202301260612153538092", "res": "True", "rstatus": true, "logic": "WBL"}
[2026-06-12 15:37:01,425.425 INFO    ] {'rstatus': True, 'skus': [{'qty': 1, 'image_url': 'https://images.tinymart.in/product/4500662-3783.jpg', 'sku_total': 25.0, 'door_id': '', 'tray_id': '32', 'name': 'Paper Boat Mixed fruit 160ml per peice', 'unit_price': '25', 'skuid': '4500662', 'mrp': '25'}], 'logic': 'WBL', 'total_amount': 25.0, 'res': 'True', 'anomaly': 0, 'orderId': 'TM09202301260612153538092'}
[2026-06-12 15:37:01,427.427 INFO    ] {'rstatus': True, 'skus': [{'qty': 1, 'image_url': 'https://images.tinymart.in/product/4500662-3783.jpg', 'sku_total': 25.0, 'door_id': '', 'tray_id': '32', 'name': 'Paper Boat Mixed fruit 160ml per peice', 'unit_price': '25', 'skuid': '4500662', 'mrp': '25'}], 'logic': 'WBL', 'total_amount': 25.0, 'res': 'True', 'anomaly': 0, 'orderId': 'TM09202301260612153538092'}
[2026-06-12 15:37:01,428.428 INFO    ] 2026-06-12 15:37:01
[2026-06-12 15:37:01,430.430 INFO    ] 2026-06-12 15:37:01
[2026-06-12 15:37:01,431.431 INFO    ] 25
[2026-06-12 15:37:01,432.432 INFO    ] 2026-06-12 15:37:01
[2026-06-12 15:37:01,434.434 INFO    ] 2026-06-12 15:37:01
[2026-06-12 15:37:01,435.435 INFO    ]  Your Bill Amount is 25
[2026-06-12 15:37:01,436.436 INFO    ]  Your Bill Amount is 25
[2026-06-12 15:37:01,438.438 INFO    ] da20fb15704d31a40267abf7bb69dedc
[2026-06-12 15:37:01,439.439 INFO    ] 2026-06-12 15:37:01
[2026-06-12 15:37:01,440.440 INFO    ] playing audio file
[2026-06-12 15:37:01,451.451 INFO    ] 2026-06-12 15:37:01
[2026-06-12 15:37:01,452.452 INFO    ] 2026-06-12 15:37:01
[2026-06-12 15:37:01,454.454 INFO    ] publish_status: order_id=TM09202301260612153538092
[2026-06-12 15:37:01,456.456 INFO    ] [publish_status] Adding message to stream: order:TM09202301260612153538092
[2026-06-12 15:37:01,537.537 INFO    ] [publish_status] Message added to stream with ID: 1781258821556-0
[2026-06-12 15:37:01,539.539 INFO    ] Published to order:TM09202301260612153538092: {'server_response': '{"rstatus": true, "skus": [{"qty": 1, "image_url": "https://images.tinymart.in/product/4500662-3783.jpg", "sku_total": 25.0, "door_id": "", "tray_id": "32", "name": "Paper Boat Mixed fruit 160ml per peice", "unit_price": "25", "skuid": "4500662", "mrp": "25"}], "logic": "WBL", "total_amount": 25.0, "res": "True", "anomaly": 0, "orderId": "TM09202301260612153538092"}', 'timestamp': '2026-06-12T10:07:01.453638Z', 'order_id': 'TM09202301260612153538092', 'server_status': 'invoiceOrder'} (ID: 1781258821556-0)
[2026-06-12 15:37:01,996.996 INFO    ] {'server_response': {'rstatus': True, 'skus': [{'qty': 1, 'image_url': 'https://images.tinymart.in/product/4500662-3783.jpg', 'sku_total': 25.0, 'door_id': '', 'tray_id': '32', 'name': 'Paper Boat Mixed fruit 160ml per peice', 'unit_price': '25', 'skuid': '4500662', 'mrp': '25'}], 'logic': 'WBL', 'total_amount': 25.0, 'res': 'True', 'anomaly': 0, 'orderId': 'TM09202301260612153538092'}, 'order_id': 'TM09202301260612153538092', 'server_status': 'invoiceOrder'}
[2026-06-12 15:37:01,998.998 INFO    ] 200
[2026-06-12 15:37:02,000.000 INFO    ] {"data":{"server_response":{"rstatus":true,"skus":[{"qty":1,"image_url":"https:\/\/images.tinymart.in\/product\/4500662-3783.jpg","sku_total":25,"door_id":"","tray_id":"32","name":"Paper Boat Mixed fruit 160ml per peice","unit_price":"25","skuid":"4500662","mrp":"25"}],"logic":"WBL","total_amount":25,"res":"true","anomaly":0,"orderId":"TM09202301260612153538092"},"order_id":"TM09202301260612153538092","server_status":"invoiceOrder"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-12 15:37:02,002.002 INFO    ] {'response': {'status': True, 'data': 'order updated successfully', 'code': 'ORDER_EXISTS', 'msg': 'order updated successfully'}, 'data': {'server_response': {'rstatus': True, 'skus': [{'qty': 1, 'image_url': 'https://images.tinymart.in/product/4500662-3783.jpg', 'sku_total': 25, 'door_id': '', 'tray_id': '32', 'name': 'Paper Boat Mixed fruit 160ml per peice', 'unit_price': '25', 'skuid': '4500662', 'mrp': '25'}], 'anomaly': 0, 'total_amount': 25, 'res': 'true', 'logic': 'WBL', 'orderId': 'TM09202301260612153538092'}, 'order_id': 'TM09202301260612153538092', 'server_status': 'invoiceOrder'}}
[2026-06-12 15:37:02,004.004 INFO    ] {'response': {'status': True, 'data': 'order updated successfully', 'code': 'ORDER_EXISTS', 'msg': 'order updated successfully'}, 'data': {'server_response': {'rstatus': True, 'skus': [{'qty': 1, 'image_url': 'https://images.tinymart.in/product/4500662-3783.jpg', 'sku_total': 25, 'door_id': '', 'tray_id': '32', 'name': 'Paper Boat Mixed fruit 160ml per peice', 'unit_price': '25', 'skuid': '4500662', 'mrp': '25'}], 'anomaly': 0, 'total_amount': 25, 'res': 'true', 'logic': 'WBL', 'orderId': 'TM09202301260612153538092'}, 'order_id': 'TM09202301260612153538092', 'server_status': 'invoiceOrder'}}
[2026-06-12 15:37:02,006.006 INFO    ] 2026-06-12 15:37:02
[2026-06-12 15:37:03,244.244 INFO    ] 200
[2026-06-12 15:37:03,247.247 INFO    ] {"order_items": [], "tray_sync": ["TM09202301260612153538092", "TM09202301260612153538092", "TM09202301260612153538092", "TM09202301260612153538092", "TM09202301260612153538092", "TM09202301260612153538092"], "orders": [], "order_items_synced": [], "orders_synced": [], "orders_data_synced": [], "status": true, "orders_data": [], "tray_synced": ["TM09202301260612153538092", "TM09202301260612153538092", "TM09202301260612153538092", "TM09202301260612153538092", "TM09202301260612153538092", "TM09202301260612153538092", "TM09202301260612153538092", "TM09202301260612153538092", "TM09202301260612153538092", "TM09202301260612153538092", "TM09202301260612153538092", "TM09202301260612153538092", "TM09202301260612153538092", "TM09202301260612153538092", "TM09202301260612153538092", "TM09202301260612153538092", "TM09202301260612153538092", "TM09202301260612153538092", "TM09202301260612153538092", "TM09202301260612153538092", "TM09202301260612153538092", "TM09202301260612153538092", "TM09202301260612153538092", "TM09202301260612153538092", "TM09202301260612153538092", "TM09202301260612153538092", "TM09202301260612153538092"]}
[2026-06-12 15:37:03,250.250 INFO    ] 2026-06-12 15:37:03
[2026-06-12 15:37:03,347.347 INFO    ] 200
[2026-06-12 15:37:03,350.350 INFO    ] True
[2026-06-12 15:37:03,352.352 INFO    ] cleanup_start_order_file_after_processing: order_id=TM09202301260612153538092
[2026-06-12 15:37:03,353.353 INFO    ] start order file deleted
[2026-06-12 15:37:03,355.355 INFO    ] Checking for system updates...
[2026-06-12 15:37:03,376.376 INFO    ] 200
[2026-06-12 15:37:03,378.378 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:37:03,410.410 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 15:37:03,411.411 INFO    ] No update needed
[2026-06-12 15:37:03,412.412 INFO    ] Checking for camera pi updates...
[2026-06-12 15:37:03,432.432 INFO    ] 200
[2026-06-12 15:37:03,434.434 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:37:03,457.457 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 15:37:03,506.506 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 15:37:03,508.508 INFO    ] No camera update needed
[2026-06-12 15:37:03,509.509 INFO    ] Script finished. Safe exiting...
[2026-06-12 15:37:03,511.511 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 15:37:03,515.515 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 15:37:03,519.519 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 15:37:05,557.557 INFO    ] ================================================
[2026-06-12 15:37:05,572.572 INFO    ] Launching Daemon at Fri Jun 12 15:37:05 IST 2026
[2026-06-12 15:37:05,583.583 INFO    ] ================================================
[2026-06-12 15:37:05,954.954 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 15:37:05
[2026-06-12 15:37:06,295.295 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 15:37:06,464.464 INFO    ] Initializing speech engine...
[2026-06-12 15:37:06,470.470 INFO    ] 2026-06-12 15:37:06
[2026-06-12 15:37:06,665.665 INFO    ] 2026-06-12 15:37:06
[2026-06-12 15:37:06,694.694 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 15:37:06,879.879 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 15:37:06,883.883 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 15:37:07,037.037 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 15:37:07,091.091 INFO    ] time= 12/06/2026 15:37:07
[2026-06-12 15:37:07,113.113 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 15:37:07,120.120 INFO    ] Checking for existing commands in stream...
[2026-06-12 15:37:07,187.187 INFO    ] No existing commands found in stream
[2026-06-12 15:37:12,202.202 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 15:37:12,205.205 INFO    ] Waiting 1.10 seconds before fallback handling...
[2026-06-12 15:37:13,743.743 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 15:37:13,744.744 INFO    ] Checking for system updates...
[2026-06-12 15:37:13,765.765 INFO    ] 200
[2026-06-12 15:37:13,766.766 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:37:13,797.797 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 15:37:13,799.799 INFO    ] No update needed
[2026-06-12 15:37:13,800.800 INFO    ] Checking for camera pi updates...
[2026-06-12 15:37:13,820.820 INFO    ] 200
[2026-06-12 15:37:13,821.821 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:37:13,846.846 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 15:37:13,889.889 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 15:37:13,891.891 INFO    ] No camera update needed
[2026-06-12 15:37:13,892.892 INFO    ] Script finished. Safe exiting...
[2026-06-12 15:37:13,893.893 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 15:37:13,896.896 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 15:37:13,899.899 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 15:37:15,936.936 INFO    ] ================================================
[2026-06-12 15:37:15,951.951 INFO    ] Launching Daemon at Fri Jun 12 15:37:15 IST 2026
[2026-06-12 15:37:15,962.962 INFO    ] ================================================
[2026-06-12 15:37:16,301.301 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 15:37:16
[2026-06-12 15:37:16,617.617 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 15:37:16,749.749 INFO    ] Initializing speech engine...
[2026-06-12 15:37:16,754.754 INFO    ] 2026-06-12 15:37:16
[2026-06-12 15:37:16,968.968 INFO    ] 2026-06-12 15:37:16
[2026-06-12 15:37:16,996.996 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 15:37:17,216.216 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 15:37:17,219.219 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 15:37:17,367.367 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 15:37:17,416.416 INFO    ] time= 12/06/2026 15:37:17
[2026-06-12 15:37:17,438.438 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 15:37:17,440.440 INFO    ] Checking for existing commands in stream...
[2026-06-12 15:37:17,505.505 INFO    ] No existing commands found in stream
[2026-06-12 15:37:22,514.514 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 15:37:22,517.517 INFO    ] Waiting 0.56 seconds before fallback handling...
[2026-06-12 15:37:23,462.462 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 15:37:23,463.463 INFO    ] Checking for system updates...
[2026-06-12 15:37:23,484.484 INFO    ] 200
[2026-06-12 15:37:23,485.485 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:37:23,515.515 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 15:37:23,516.516 INFO    ] No update needed
[2026-06-12 15:37:23,517.517 INFO    ] Checking for camera pi updates...
[2026-06-12 15:37:23,538.538 INFO    ] 200
[2026-06-12 15:37:23,539.539 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:37:23,562.562 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 15:37:23,612.612 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 15:37:23,613.613 INFO    ] No camera update needed
[2026-06-12 15:37:23,615.615 INFO    ] Script finished. Safe exiting...
[2026-06-12 15:37:23,616.616 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 15:37:23,619.619 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 15:37:23,622.622 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 15:37:25,660.660 INFO    ] ================================================
[2026-06-12 15:37:25,676.676 INFO    ] Launching Daemon at Fri Jun 12 15:37:25 IST 2026
[2026-06-12 15:37:25,687.687 INFO    ] ================================================
[2026-06-12 15:37:26,078.078 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 15:37:26
[2026-06-12 15:37:26,419.419 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 15:37:26,563.563 INFO    ] Initializing speech engine...
[2026-06-12 15:37:26,575.575 INFO    ] 2026-06-12 15:37:26
[2026-06-12 15:37:26,789.789 INFO    ] 2026-06-12 15:37:26
[2026-06-12 15:37:26,818.818 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 15:37:27,003.003 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 15:37:27,013.013 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 15:37:27,159.159 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 15:37:27,210.210 INFO    ] time= 12/06/2026 15:37:27
[2026-06-12 15:37:27,234.234 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 15:37:27,240.240 INFO    ] Checking for existing commands in stream...
[2026-06-12 15:37:27,308.308 INFO    ] No existing commands found in stream
[2026-06-12 15:37:32,321.321 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 15:37:32,323.323 INFO    ] Waiting 1.26 seconds before fallback handling...
[2026-06-12 15:37:33,975.975 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 15:37:33,976.976 INFO    ] Checking for system updates...
[2026-06-12 15:37:33,998.998 INFO    ] 200
[2026-06-12 15:37:34,000.000 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:37:34,030.030 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 15:37:34,031.031 INFO    ] No update needed
[2026-06-12 15:37:34,032.032 INFO    ] Checking for camera pi updates...
[2026-06-12 15:37:34,051.051 INFO    ] 200
[2026-06-12 15:37:34,053.053 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:37:34,076.076 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 15:37:34,119.119 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 15:37:34,120.120 INFO    ] No camera update needed
[2026-06-12 15:37:34,122.122 INFO    ] Script finished. Safe exiting...
[2026-06-12 15:37:34,123.123 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 15:37:34,126.126 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 15:37:34,128.128 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 15:37:36,166.166 INFO    ] ================================================
[2026-06-12 15:37:36,181.181 INFO    ] Launching Daemon at Fri Jun 12 15:37:36 IST 2026
[2026-06-12 15:37:36,192.192 INFO    ] ================================================
[2026-06-12 15:37:36,556.556 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 15:37:36
[2026-06-12 15:37:36,900.900 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 15:37:37,052.052 INFO    ] Initializing speech engine...
[2026-06-12 15:37:37,057.057 INFO    ] 2026-06-12 15:37:37
[2026-06-12 15:37:37,266.266 INFO    ] 2026-06-12 15:37:37
[2026-06-12 15:37:37,295.295 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 15:37:37,480.480 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 15:37:37,491.491 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 15:37:37,635.635 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 15:37:37,690.690 INFO    ] time= 12/06/2026 15:37:37
[2026-06-12 15:37:37,712.712 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 15:37:37,717.717 INFO    ] Checking for existing commands in stream...
[2026-06-12 15:37:37,785.785 INFO    ] No existing commands found in stream
[2026-06-12 15:37:42,809.809 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 15:37:42,813.813 INFO    ] Waiting 0.84 seconds before fallback handling...
[2026-06-12 15:37:44,071.071 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 15:37:44,072.072 INFO    ] Checking for system updates...
[2026-06-12 15:37:44,093.093 INFO    ] 200
[2026-06-12 15:37:44,094.094 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:37:44,125.125 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 15:37:44,126.126 INFO    ] No update needed
[2026-06-12 15:37:44,128.128 INFO    ] Checking for camera pi updates...
[2026-06-12 15:37:44,148.148 INFO    ] 200
[2026-06-12 15:37:44,150.150 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:37:44,175.175 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 15:37:44,226.226 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 15:37:44,228.228 INFO    ] No camera update needed
[2026-06-12 15:37:44,229.229 INFO    ] Script finished. Safe exiting...
[2026-06-12 15:37:44,231.231 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 15:37:44,234.234 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 15:37:44,237.237 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 15:37:46,275.275 INFO    ] ================================================
[2026-06-12 15:37:46,291.291 INFO    ] Launching Daemon at Fri Jun 12 15:37:46 IST 2026
[2026-06-12 15:37:46,301.301 INFO    ] ================================================
[2026-06-12 15:37:46,655.655 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 15:37:46
[2026-06-12 15:37:46,969.969 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 15:37:47,111.111 INFO    ] Initializing speech engine...
[2026-06-12 15:37:47,116.116 INFO    ] 2026-06-12 15:37:47
[2026-06-12 15:37:47,321.321 INFO    ] 2026-06-12 15:37:47
[2026-06-12 15:37:47,348.348 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 15:37:47,532.532 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 15:37:47,536.536 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 15:37:47,687.687 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 15:37:47,740.740 INFO    ] time= 12/06/2026 15:37:47
[2026-06-12 15:37:47,762.762 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 15:37:47,769.769 INFO    ] Checking for existing commands in stream...
[2026-06-12 15:37:47,835.835 INFO    ] No existing commands found in stream
[2026-06-12 15:37:52,868.868 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 15:37:52,871.871 INFO    ] Waiting 3.64 seconds before fallback handling...
[2026-06-12 15:37:56,944.944 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 15:37:56,945.945 INFO    ] Checking for system updates...
[2026-06-12 15:37:56,966.966 INFO    ] 200
[2026-06-12 15:37:56,967.967 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:37:57,000.000 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 15:37:57,001.001 INFO    ] No update needed
[2026-06-12 15:37:57,003.003 INFO    ] Checking for camera pi updates...
[2026-06-12 15:37:57,025.025 INFO    ] 200
[2026-06-12 15:37:57,026.026 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:37:57,051.051 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 15:37:57,094.094 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 15:37:57,095.095 INFO    ] No camera update needed
[2026-06-12 15:37:57,096.096 INFO    ] Script finished. Safe exiting...
[2026-06-12 15:37:57,098.098 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 15:37:57,101.101 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 15:37:57,104.104 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 15:37:59,145.145 INFO    ] ================================================
[2026-06-12 15:37:59,161.161 INFO    ] Launching Daemon at Fri Jun 12 15:37:59 IST 2026
[2026-06-12 15:37:59,171.171 INFO    ] ================================================
[2026-06-12 15:37:59,532.532 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 15:37:59
[2026-06-12 15:37:59,845.845 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 15:37:59,987.987 INFO    ] Initializing speech engine...
[2026-06-12 15:37:59,992.992 INFO    ] 2026-06-12 15:37:59
[2026-06-12 15:38:00,195.195 INFO    ] 2026-06-12 15:38:00
[2026-06-12 15:38:00,223.223 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 15:38:00,406.406 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 15:38:00,414.414 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 15:38:00,554.554 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 15:38:00,612.612 INFO    ] time= 12/06/2026 15:38:00
[2026-06-12 15:38:00,633.633 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 15:38:00,640.640 INFO    ] Checking for existing commands in stream...
[2026-06-12 15:38:00,706.706 INFO    ] No existing commands found in stream
[2026-06-12 15:38:05,715.715 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 15:38:05,718.718 INFO    ] Waiting 2.45 seconds before fallback handling...
[2026-06-12 15:38:08,565.565 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 15:38:08,566.566 INFO    ] Checking for system updates...
[2026-06-12 15:38:08,586.586 INFO    ] 200
[2026-06-12 15:38:08,588.588 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:38:08,619.619 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 15:38:08,621.621 INFO    ] No update needed
[2026-06-12 15:38:08,622.622 INFO    ] Checking for camera pi updates...
[2026-06-12 15:38:08,641.641 INFO    ] 200
[2026-06-12 15:38:08,642.642 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:38:08,665.665 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 15:38:08,711.711 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 15:38:08,713.713 INFO    ] No camera update needed
[2026-06-12 15:38:08,714.714 INFO    ] Script finished. Safe exiting...
[2026-06-12 15:38:08,715.715 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 15:38:08,718.718 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 15:38:08,721.721 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 15:38:10,760.760 INFO    ] ================================================
[2026-06-12 15:38:10,780.780 INFO    ] Launching Daemon at Fri Jun 12 15:38:10 IST 2026
[2026-06-12 15:38:10,791.791 INFO    ] ================================================
[2026-06-12 15:38:11,114.114 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 15:38:11
[2026-06-12 15:38:11,427.427 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 15:38:11,557.557 INFO    ] Initializing speech engine...
[2026-06-12 15:38:11,566.566 INFO    ] 2026-06-12 15:38:11
[2026-06-12 15:38:11,782.782 INFO    ] 2026-06-12 15:38:11
[2026-06-12 15:38:11,810.810 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 15:38:11,996.996 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 15:38:12,005.005 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 15:38:12,145.145 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 15:38:12,203.203 INFO    ] time= 12/06/2026 15:38:12
[2026-06-12 15:38:12,227.227 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 15:38:12,233.233 INFO    ] Checking for existing commands in stream...
[2026-06-12 15:38:12,300.300 INFO    ] No existing commands found in stream
[2026-06-12 15:38:17,329.329 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 15:38:17,332.332 INFO    ] Waiting 3.09 seconds before fallback handling...
[2026-06-12 15:38:20,760.760 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 15:38:20,762.762 INFO    ] Checking for system updates...
[2026-06-12 15:38:20,784.784 INFO    ] 200
[2026-06-12 15:38:20,786.786 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:38:20,822.822 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 15:38:20,823.823 INFO    ] No update needed
[2026-06-12 15:38:20,825.825 INFO    ] Checking for camera pi updates...
[2026-06-12 15:38:20,848.848 INFO    ] 200
[2026-06-12 15:38:20,850.850 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:38:20,876.876 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 15:38:20,921.921 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 15:38:20,922.922 INFO    ] No camera update needed
[2026-06-12 15:38:20,924.924 INFO    ] Script finished. Safe exiting...
[2026-06-12 15:38:20,925.925 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 15:38:20,929.929 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 15:38:20,932.932 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 15:38:22,956.956 INFO    ] ================================================
[2026-06-12 15:38:22,964.964 INFO    ] Launching Daemon at Fri Jun 12 15:38:22 IST 2026
[2026-06-12 15:38:22,971.971 INFO    ] ================================================
[2026-06-12 15:38:23,320.320 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 15:38:23
[2026-06-12 15:38:23,639.639 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 15:38:23,771.771 INFO    ] Initializing speech engine...
[2026-06-12 15:38:23,779.779 INFO    ] 2026-06-12 15:38:23
[2026-06-12 15:38:23,990.990 INFO    ] 2026-06-12 15:38:23
[2026-06-12 15:38:24,019.019 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 15:38:24,207.207 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 15:38:24,238.238 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 15:38:24,408.408 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 15:38:24,464.464 INFO    ] time= 12/06/2026 15:38:24
[2026-06-12 15:38:24,486.486 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 15:38:24,493.493 INFO    ] Checking for existing commands in stream...
[2026-06-12 15:38:24,563.563 INFO    ] No existing commands found in stream
[2026-06-12 15:38:29,573.573 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 15:38:29,576.576 INFO    ] Waiting 0.23 seconds before fallback handling...
[2026-06-12 15:38:30,164.164 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 15:38:30,165.165 INFO    ] Checking for system updates...
[2026-06-12 15:38:30,185.185 INFO    ] 200
[2026-06-12 15:38:30,187.187 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:38:30,219.219 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 15:38:30,220.220 INFO    ] No update needed
[2026-06-12 15:38:30,222.222 INFO    ] Checking for camera pi updates...
[2026-06-12 15:38:30,241.241 INFO    ] 200
[2026-06-12 15:38:30,242.242 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:38:30,266.266 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 15:38:30,301.301 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 15:38:30,302.302 INFO    ] No camera update needed
[2026-06-12 15:38:30,303.303 INFO    ] Script finished. Safe exiting...
[2026-06-12 15:38:30,304.304 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 15:38:30,307.307 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 15:38:30,310.310 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 15:38:32,341.341 INFO    ] ================================================
[2026-06-12 15:38:32,350.350 INFO    ] Launching Daemon at Fri Jun 12 15:38:32 IST 2026
[2026-06-12 15:38:32,357.357 INFO    ] ================================================
[2026-06-12 15:38:32,682.682 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 15:38:32
[2026-06-12 15:38:33,001.001 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 15:38:33,140.140 INFO    ] Initializing speech engine...
[2026-06-12 15:38:33,148.148 INFO    ] 2026-06-12 15:38:33
[2026-06-12 15:38:33,366.366 INFO    ] 2026-06-12 15:38:33
[2026-06-12 15:38:33,397.397 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 15:38:33,594.594 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 15:38:33,604.604 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 15:38:33,741.741 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 15:38:33,798.798 INFO    ] time= 12/06/2026 15:38:33
[2026-06-12 15:38:33,838.838 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 15:38:33,844.844 INFO    ] Checking for existing commands in stream...
[2026-06-12 15:38:33,921.921 INFO    ] No existing commands found in stream
[2026-06-12 15:38:38,928.928 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 15:38:38,930.930 INFO    ] Waiting 0.60 seconds before fallback handling...
[2026-06-12 15:38:39,868.868 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 15:38:39,870.870 INFO    ] Checking for system updates...
[2026-06-12 15:38:39,890.890 INFO    ] 200
[2026-06-12 15:38:39,892.892 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:38:39,921.921 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 15:38:39,923.923 INFO    ] No update needed
[2026-06-12 15:38:39,924.924 INFO    ] Checking for camera pi updates...
[2026-06-12 15:38:39,944.944 INFO    ] 200
[2026-06-12 15:38:39,945.945 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:38:39,976.976 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 15:38:40,203.203 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 15:38:40,205.205 INFO    ] No camera update needed
[2026-06-12 15:38:40,206.206 INFO    ] Script finished. Safe exiting...
[2026-06-12 15:38:40,207.207 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 15:38:40,211.211 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 15:38:40,214.214 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 15:38:42,251.251 INFO    ] ================================================
[2026-06-12 15:38:42,266.266 INFO    ] Launching Daemon at Fri Jun 12 15:38:42 IST 2026
[2026-06-12 15:38:42,277.277 INFO    ] ================================================
[2026-06-12 15:38:42,647.647 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 15:38:42
[2026-06-12 15:38:42,958.958 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 15:38:43,102.102 INFO    ] Initializing speech engine...
[2026-06-12 15:38:43,107.107 INFO    ] 2026-06-12 15:38:43
[2026-06-12 15:38:43,312.312 INFO    ] 2026-06-12 15:38:43
[2026-06-12 15:38:43,341.341 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 15:38:43,525.525 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 15:38:43,529.529 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 15:38:43,659.659 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 15:38:43,725.725 INFO    ] time= 12/06/2026 15:38:43
[2026-06-12 15:38:43,758.758 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 15:38:43,764.764 INFO    ] Checking for existing commands in stream...
[2026-06-12 15:38:43,830.830 INFO    ] No existing commands found in stream
[2026-06-12 15:38:48,841.841 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 15:38:48,844.844 INFO    ] Waiting 0.01 seconds before fallback handling...
[2026-06-12 15:38:49,222.222 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 15:38:49,223.223 INFO    ] Checking for system updates...
[2026-06-12 15:38:49,244.244 INFO    ] 200
[2026-06-12 15:38:49,245.245 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:38:49,275.275 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 15:38:49,276.276 INFO    ] No update needed
[2026-06-12 15:38:49,277.277 INFO    ] Checking for camera pi updates...
[2026-06-12 15:38:49,297.297 INFO    ] 200
[2026-06-12 15:38:49,298.298 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:38:49,321.321 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 15:38:49,354.354 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 15:38:49,355.355 INFO    ] No camera update needed
[2026-06-12 15:38:49,356.356 INFO    ] Script finished. Safe exiting...
[2026-06-12 15:38:49,357.357 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 15:38:49,360.360 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 15:38:49,363.363 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 15:38:51,402.402 INFO    ] ================================================
[2026-06-12 15:38:51,417.417 INFO    ] Launching Daemon at Fri Jun 12 15:38:51 IST 2026
[2026-06-12 15:38:51,428.428 INFO    ] ================================================
[2026-06-12 15:38:51,784.784 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 15:38:51
[2026-06-12 15:38:52,139.139 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 15:38:52,291.291 INFO    ] Initializing speech engine...
[2026-06-12 15:38:52,296.296 INFO    ] 2026-06-12 15:38:52
[2026-06-12 15:38:52,507.507 INFO    ] 2026-06-12 15:38:52
[2026-06-12 15:38:52,536.536 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 15:38:52,671.671 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 15:38:52,725.725 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 15:38:52,932.932 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 15:38:52,955.955 INFO    ] time= 12/06/2026 15:38:52
[2026-06-12 15:38:52,961.961 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 15:38:52,963.963 INFO    ] Checking for existing commands in stream...
[2026-06-12 15:38:53,029.029 INFO    ] No existing commands found in stream
[2026-06-12 15:38:58,040.040 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 15:38:58,043.043 INFO    ] Waiting 0.28 seconds before fallback handling...
[2026-06-12 15:38:58,719.719 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 15:38:58,720.720 INFO    ] Checking for system updates...
[2026-06-12 15:38:58,741.741 INFO    ] 200
[2026-06-12 15:38:58,743.743 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:38:58,773.773 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 15:38:58,774.774 INFO    ] No update needed
[2026-06-12 15:38:58,776.776 INFO    ] Checking for camera pi updates...
[2026-06-12 15:38:58,795.795 INFO    ] 200
[2026-06-12 15:38:58,796.796 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:38:58,819.819 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 15:38:58,862.862 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 15:38:58,864.864 INFO    ] No camera update needed
[2026-06-12 15:38:58,865.865 INFO    ] Script finished. Safe exiting...
[2026-06-12 15:38:58,866.866 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 15:38:58,870.870 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 15:38:58,873.873 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 15:39:00,910.910 INFO    ] ================================================
[2026-06-12 15:39:00,926.926 INFO    ] Launching Daemon at Fri Jun 12 15:39:00 IST 2026
[2026-06-12 15:39:00,937.937 INFO    ] ================================================
[2026-06-12 15:39:01,404.404 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 15:39:01
[2026-06-12 15:39:01,774.774 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 15:39:01,977.977 INFO    ] Initializing speech engine...
[2026-06-12 15:39:01,989.989 INFO    ] 2026-06-12 15:39:01
[2026-06-12 15:39:02,192.192 INFO    ] 2026-06-12 15:39:02
[2026-06-12 15:39:02,236.236 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 15:39:02,384.384 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 15:39:02,442.442 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 15:39:02,636.636 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 15:39:02,672.672 INFO    ] time= 12/06/2026 15:39:02
[2026-06-12 15:39:02,679.679 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 15:39:02,681.681 INFO    ] Checking for existing commands in stream...
[2026-06-12 15:39:02,747.747 INFO    ] No existing commands found in stream
[2026-06-12 15:39:07,756.756 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 15:39:07,759.759 INFO    ] Waiting 2.54 seconds before fallback handling...
[2026-06-12 15:39:10,661.661 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 15:39:10,662.662 INFO    ] Checking for system updates...
[2026-06-12 15:39:10,682.682 INFO    ] 200
[2026-06-12 15:39:10,683.683 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:39:10,713.713 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 15:39:10,715.715 INFO    ] No update needed
[2026-06-12 15:39:10,716.716 INFO    ] Checking for camera pi updates...
[2026-06-12 15:39:10,736.736 INFO    ] 200
[2026-06-12 15:39:10,738.738 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:39:10,762.762 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 15:39:10,802.802 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 15:39:10,803.803 INFO    ] No camera update needed
[2026-06-12 15:39:10,805.805 INFO    ] Script finished. Safe exiting...
[2026-06-12 15:39:10,806.806 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 15:39:10,809.809 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 15:39:10,812.812 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 15:39:12,851.851 INFO    ] ================================================
[2026-06-12 15:39:12,866.866 INFO    ] Launching Daemon at Fri Jun 12 15:39:12 IST 2026
[2026-06-12 15:39:12,877.877 INFO    ] ================================================
[2026-06-12 15:39:13,252.252 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 15:39:13
[2026-06-12 15:39:13,591.591 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 15:39:13,745.745 INFO    ] Initializing speech engine...
[2026-06-12 15:39:13,751.751 INFO    ] 2026-06-12 15:39:13
[2026-06-12 15:39:13,956.956 INFO    ] 2026-06-12 15:39:13
[2026-06-12 15:39:13,985.985 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 15:39:14,140.140 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 15:39:14,175.175 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 15:39:14,314.314 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 15:39:14,382.382 INFO    ] time= 12/06/2026 15:39:14
[2026-06-12 15:39:14,406.406 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 15:39:14,412.412 INFO    ] Checking for existing commands in stream...
[2026-06-12 15:39:14,480.480 INFO    ] No existing commands found in stream
[2026-06-12 15:39:19,489.489 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 15:39:19,491.491 INFO    ] Waiting 1.90 seconds before fallback handling...
[2026-06-12 15:39:21,776.776 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 15:39:21,778.778 INFO    ] Checking for system updates...
[2026-06-12 15:39:21,799.799 INFO    ] 200
[2026-06-12 15:39:21,800.800 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:39:21,832.832 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 15:39:21,834.834 INFO    ] No update needed
[2026-06-12 15:39:21,835.835 INFO    ] Checking for camera pi updates...
[2026-06-12 15:39:21,857.857 INFO    ] 200
[2026-06-12 15:39:21,859.859 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:39:21,883.883 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 15:39:21,929.929 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 15:39:21,931.931 INFO    ] No camera update needed
[2026-06-12 15:39:21,932.932 INFO    ] Script finished. Safe exiting...
[2026-06-12 15:39:21,933.933 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 15:39:21,936.936 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 15:39:21,940.940 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 15:39:23,978.978 INFO    ] ================================================
[2026-06-12 15:39:23,994.994 INFO    ] Launching Daemon at Fri Jun 12 15:39:23 IST 2026
[2026-06-12 15:39:24,005.005 INFO    ] ================================================
[2026-06-12 15:39:24,340.340 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 15:39:24
[2026-06-12 15:39:24,651.651 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 15:39:24,782.782 INFO    ] Initializing speech engine...
[2026-06-12 15:39:24,785.785 INFO    ] 2026-06-12 15:39:24
[2026-06-12 15:39:25,003.003 INFO    ] 2026-06-12 15:39:24
[2026-06-12 15:39:25,033.033 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 15:39:25,217.217 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 15:39:25,227.227 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 15:39:25,358.358 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 15:39:25,425.425 INFO    ] time= 12/06/2026 15:39:25
[2026-06-12 15:39:25,449.449 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 15:39:25,456.456 INFO    ] Checking for existing commands in stream...
[2026-06-12 15:39:25,521.521 INFO    ] No existing commands found in stream
[2026-06-12 15:39:30,532.532 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 15:39:30,535.535 INFO    ] Waiting 2.64 seconds before fallback handling...
[2026-06-12 15:39:33,498.498 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 15:39:33,500.500 INFO    ] Checking for system updates...
[2026-06-12 15:39:33,520.520 INFO    ] 200
[2026-06-12 15:39:33,521.521 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:39:33,561.561 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 15:39:33,563.563 INFO    ] No update needed
[2026-06-12 15:39:33,564.564 INFO    ] Checking for camera pi updates...
[2026-06-12 15:39:33,588.588 INFO    ] 200
[2026-06-12 15:39:33,590.590 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:39:33,621.621 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 15:39:33,759.759 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 15:39:33,760.760 INFO    ] No camera update needed
[2026-06-12 15:39:33,761.761 INFO    ] Script finished. Safe exiting...
[2026-06-12 15:39:33,762.762 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 15:39:33,765.765 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 15:39:33,768.768 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 15:39:35,805.805 INFO    ] ================================================
[2026-06-12 15:39:35,821.821 INFO    ] Launching Daemon at Fri Jun 12 15:39:35 IST 2026
[2026-06-12 15:39:35,832.832 INFO    ] ================================================
[2026-06-12 15:39:36,180.180 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 15:39:36
[2026-06-12 15:39:36,493.493 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 15:39:36,625.625 INFO    ] Initializing speech engine...
[2026-06-12 15:39:36,628.628 INFO    ] 2026-06-12 15:39:36
[2026-06-12 15:39:36,838.838 INFO    ] 2026-06-12 15:39:36
[2026-06-12 15:39:36,866.866 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 15:39:37,024.024 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 15:39:37,087.087 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 15:39:37,243.243 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 15:39:37,297.297 INFO    ] time= 12/06/2026 15:39:37
[2026-06-12 15:39:37,319.319 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 15:39:37,325.325 INFO    ] Checking for existing commands in stream...
[2026-06-12 15:39:37,431.431 INFO    ] No existing commands found in stream
[2026-06-12 15:39:42,441.441 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 15:39:42,444.444 INFO    ] Waiting 3.40 seconds before fallback handling...
[2026-06-12 15:39:46,248.248 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 15:39:46,250.250 INFO    ] Checking for system updates...
[2026-06-12 15:39:46,270.270 INFO    ] 200
[2026-06-12 15:39:46,272.272 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:39:46,303.303 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 15:39:46,305.305 INFO    ] No update needed
[2026-06-12 15:39:46,307.307 INFO    ] Checking for camera pi updates...
[2026-06-12 15:39:46,327.327 INFO    ] 200
[2026-06-12 15:39:46,329.329 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:39:46,352.352 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 15:39:46,394.394 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 15:39:46,396.396 INFO    ] No camera update needed
[2026-06-12 15:39:46,397.397 INFO    ] Script finished. Safe exiting...
[2026-06-12 15:39:46,399.399 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 15:39:46,402.402 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 15:39:46,405.405 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 15:39:48,444.444 INFO    ] ================================================
[2026-06-12 15:39:48,460.460 INFO    ] Launching Daemon at Fri Jun 12 15:39:48 IST 2026
[2026-06-12 15:39:48,471.471 INFO    ] ================================================
[2026-06-12 15:39:48,807.807 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 15:39:48
[2026-06-12 15:39:49,121.121 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 15:39:49,263.263 INFO    ] Initializing speech engine...
[2026-06-12 15:39:49,268.268 INFO    ] 2026-06-12 15:39:49
[2026-06-12 15:39:49,470.470 INFO    ] 2026-06-12 15:39:49
[2026-06-12 15:39:49,499.499 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 15:39:49,682.682 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 15:39:49,691.691 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 15:39:49,835.835 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 15:39:49,887.887 INFO    ] time= 12/06/2026 15:39:49
[2026-06-12 15:39:49,909.909 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 15:39:49,915.915 INFO    ] Checking for existing commands in stream...
[2026-06-12 15:39:50,005.005 INFO    ] No existing commands found in stream
[2026-06-12 15:39:55,019.019 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 15:39:55,022.022 INFO    ] Waiting 2.89 seconds before fallback handling...
[2026-06-12 15:39:58,275.275 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 15:39:58,276.276 INFO    ] Checking for system updates...
[2026-06-12 15:39:58,298.298 INFO    ] 200
[2026-06-12 15:39:58,299.299 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:39:58,329.329 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 15:39:58,330.330 INFO    ] No update needed
[2026-06-12 15:39:58,332.332 INFO    ] Checking for camera pi updates...
[2026-06-12 15:39:58,352.352 INFO    ] 200
[2026-06-12 15:39:58,353.353 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:39:58,376.376 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 15:39:58,420.420 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 15:39:58,421.421 INFO    ] No camera update needed
[2026-06-12 15:39:58,423.423 INFO    ] Script finished. Safe exiting...
[2026-06-12 15:39:58,424.424 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 15:39:58,427.427 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 15:39:58,429.429 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 15:40:00,467.467 INFO    ] ================================================
[2026-06-12 15:40:00,483.483 INFO    ] Launching Daemon at Fri Jun 12 15:40:00 IST 2026
[2026-06-12 15:40:00,494.494 INFO    ] ================================================
[2026-06-12 15:40:00,833.833 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 15:40:00
[2026-06-12 15:40:01,151.151 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 15:40:01,295.295 INFO    ] Initializing speech engine...
[2026-06-12 15:40:01,300.300 INFO    ] 2026-06-12 15:40:01
[2026-06-12 15:40:01,679.679 INFO    ] 2026-06-12 15:40:01
[2026-06-12 15:40:01,704.704 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 15:40:01,862.862 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 15:40:01,865.865 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 15:40:01,996.996 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 15:40:01,998.998 INFO    ] time= 12/06/2026 15:40:01
[2026-06-12 15:40:02,001.001 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 15:40:02,003.003 INFO    ] Checking for existing commands in stream...
[2026-06-12 15:40:02,158.158 INFO    ] No existing commands found in stream
[2026-06-12 15:40:07,186.186 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 15:40:07,189.189 INFO    ] Waiting 2.23 seconds before fallback handling...
[2026-06-12 15:40:09,832.832 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 15:40:09,834.834 INFO    ] Checking for system updates...
[2026-06-12 15:40:09,855.855 INFO    ] 200
[2026-06-12 15:40:09,856.856 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:40:09,887.887 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 15:40:09,889.889 INFO    ] No update needed
[2026-06-12 15:40:09,890.890 INFO    ] Checking for camera pi updates...
[2026-06-12 15:40:09,909.909 INFO    ] 200
[2026-06-12 15:40:09,911.911 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:40:09,933.933 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 15:40:09,981.981 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 15:40:09,982.982 INFO    ] No camera update needed
[2026-06-12 15:40:09,983.983 INFO    ] Script finished. Safe exiting...
[2026-06-12 15:40:09,985.985 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 15:40:09,988.988 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 15:40:09,991.991 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 15:40:12,028.028 INFO    ] ================================================
[2026-06-12 15:40:12,044.044 INFO    ] Launching Daemon at Fri Jun 12 15:40:12 IST 2026
[2026-06-12 15:40:12,055.055 INFO    ] ================================================
[2026-06-12 15:40:12,412.412 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 15:40:12
[2026-06-12 15:40:12,753.753 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 15:40:12,906.906 INFO    ] Initializing speech engine...
[2026-06-12 15:40:12,909.909 INFO    ] 2026-06-12 15:40:12
[2026-06-12 15:40:13,119.119 INFO    ] 2026-06-12 15:40:13
[2026-06-12 15:40:13,148.148 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 15:40:13,335.335 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 15:40:13,345.345 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 15:40:13,539.539 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 15:40:13,565.565 INFO    ] time= 12/06/2026 15:40:13
[2026-06-12 15:40:13,571.571 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 15:40:13,573.573 INFO    ] Checking for existing commands in stream...
[2026-06-12 15:40:13,665.665 INFO    ] No existing commands found in stream
[2026-06-12 15:40:18,674.674 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 15:40:18,678.678 INFO    ] Waiting 1.31 seconds before fallback handling...
[2026-06-12 15:40:20,380.380 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 15:40:20,381.381 INFO    ] Checking for system updates...
[2026-06-12 15:40:20,402.402 INFO    ] 200
[2026-06-12 15:40:20,404.404 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:40:20,433.433 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 15:40:20,434.434 INFO    ] No update needed
[2026-06-12 15:40:20,436.436 INFO    ] Checking for camera pi updates...
[2026-06-12 15:40:20,456.456 INFO    ] 200
[2026-06-12 15:40:20,458.458 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:40:20,481.481 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 15:40:20,525.525 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 15:40:20,527.527 INFO    ] No camera update needed
[2026-06-12 15:40:20,528.528 INFO    ] Script finished. Safe exiting...
[2026-06-12 15:40:20,529.529 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 15:40:20,532.532 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 15:40:20,535.535 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 15:40:22,572.572 INFO    ] ================================================
[2026-06-12 15:40:22,588.588 INFO    ] Launching Daemon at Fri Jun 12 15:40:22 IST 2026
[2026-06-12 15:40:22,598.598 INFO    ] ================================================
[2026-06-12 15:40:22,940.940 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 15:40:22
[2026-06-12 15:40:23,255.255 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 15:40:23,388.388 INFO    ] Initializing speech engine...
[2026-06-12 15:40:23,392.392 INFO    ] 2026-06-12 15:40:23
[2026-06-12 15:40:23,587.587 INFO    ] 2026-06-12 15:40:23
[2026-06-12 15:40:23,632.632 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 15:40:23,858.858 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 15:40:23,872.872 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 15:40:24,029.029 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 15:40:24,086.086 INFO    ] time= 12/06/2026 15:40:24
[2026-06-12 15:40:24,111.111 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 15:40:24,118.118 INFO    ] Checking for existing commands in stream...
[2026-06-12 15:40:24,190.190 INFO    ] No existing commands found in stream
[2026-06-12 15:40:29,199.199 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 15:40:29,207.207 INFO    ] Waiting 2.15 seconds before fallback handling...
[2026-06-12 15:40:31,726.726 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 15:40:31,727.727 INFO    ] Checking for system updates...
[2026-06-12 15:40:31,750.750 INFO    ] 200
[2026-06-12 15:40:31,752.752 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:40:31,788.788 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 15:40:31,790.790 INFO    ] No update needed
[2026-06-12 15:40:31,792.792 INFO    ] Checking for camera pi updates...
[2026-06-12 15:40:31,820.820 INFO    ] 200
[2026-06-12 15:40:31,822.822 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:40:31,851.851 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 15:40:31,880.880 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 15:40:31,881.881 INFO    ] No camera update needed
[2026-06-12 15:40:31,883.883 INFO    ] Script finished. Safe exiting...
[2026-06-12 15:40:31,885.885 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 15:40:31,888.888 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 15:40:31,891.891 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 15:40:33,930.930 INFO    ] ================================================
[2026-06-12 15:40:33,945.945 INFO    ] Launching Daemon at Fri Jun 12 15:40:33 IST 2026
[2026-06-12 15:40:33,956.956 INFO    ] ================================================
[2026-06-12 15:40:34,311.311 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 15:40:34
[2026-06-12 15:40:34,632.632 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 15:40:34,807.807 INFO    ] Initializing speech engine...
[2026-06-12 15:40:34,828.828 INFO    ] 2026-06-12 15:40:34
[2026-06-12 15:40:35,035.035 INFO    ] 2026-06-12 15:40:35
[2026-06-12 15:40:35,064.064 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 15:40:35,247.247 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 15:40:35,257.257 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 15:40:35,396.396 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 15:40:35,455.455 INFO    ] time= 12/06/2026 15:40:35
[2026-06-12 15:40:35,476.476 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 15:40:35,482.482 INFO    ] Checking for existing commands in stream...
[2026-06-12 15:40:35,551.551 INFO    ] No existing commands found in stream
[2026-06-12 15:40:40,560.560 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 15:40:40,563.563 INFO    ] Waiting 2.64 seconds before fallback handling...
[2026-06-12 15:40:43,547.547 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 15:40:43,549.549 INFO    ] Checking for system updates...
[2026-06-12 15:40:43,569.569 INFO    ] 200
[2026-06-12 15:40:43,571.571 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:40:43,600.600 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 15:40:43,602.602 INFO    ] No update needed
[2026-06-12 15:40:43,603.603 INFO    ] Checking for camera pi updates...
[2026-06-12 15:40:43,622.622 INFO    ] 200
[2026-06-12 15:40:43,623.623 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:40:43,646.646 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 15:40:43,699.699 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 15:40:43,700.700 INFO    ] No camera update needed
[2026-06-12 15:40:43,702.702 INFO    ] Script finished. Safe exiting...
[2026-06-12 15:40:43,703.703 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 15:40:43,706.706 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 15:40:43,709.709 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 15:40:45,746.746 INFO    ] ================================================
[2026-06-12 15:40:45,762.762 INFO    ] Launching Daemon at Fri Jun 12 15:40:45 IST 2026
[2026-06-12 15:40:45,773.773 INFO    ] ================================================
[2026-06-12 15:40:46,146.146 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 15:40:46
[2026-06-12 15:40:46,475.475 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 15:40:46,604.604 INFO    ] Initializing speech engine...
[2026-06-12 15:40:46,609.609 INFO    ] 2026-06-12 15:40:46
[2026-06-12 15:40:46,828.828 INFO    ] 2026-06-12 15:40:46
[2026-06-12 15:40:46,857.857 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 15:40:47,042.042 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 15:40:47,052.052 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 15:40:47,203.203 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 15:40:47,258.258 INFO    ] time= 12/06/2026 15:40:47
[2026-06-12 15:40:47,274.274 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 15:40:47,281.281 INFO    ] Checking for existing commands in stream...
[2026-06-12 15:40:47,353.353 INFO    ] No existing commands found in stream
[2026-06-12 15:40:52,367.367 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 15:40:52,370.370 INFO    ] Waiting 2.79 seconds before fallback handling...
[2026-06-12 15:40:55,564.564 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 15:40:55,565.565 INFO    ] Checking for system updates...
[2026-06-12 15:40:55,586.586 INFO    ] 200
[2026-06-12 15:40:55,587.587 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:40:55,620.620 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 15:40:55,621.621 INFO    ] No update needed
[2026-06-12 15:40:55,622.622 INFO    ] Checking for camera pi updates...
[2026-06-12 15:40:55,641.641 INFO    ] 200
[2026-06-12 15:40:55,643.643 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:40:55,667.667 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 15:40:55,707.707 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 15:40:55,708.708 INFO    ] No camera update needed
[2026-06-12 15:40:55,710.710 INFO    ] Script finished. Safe exiting...
[2026-06-12 15:40:55,711.711 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 15:40:55,714.714 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 15:40:55,717.717 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 15:40:57,756.756 INFO    ] ================================================
[2026-06-12 15:40:57,771.771 INFO    ] Launching Daemon at Fri Jun 12 15:40:57 IST 2026
[2026-06-12 15:40:57,782.782 INFO    ] ================================================
[2026-06-12 15:40:58,167.167 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 15:40:58
[2026-06-12 15:40:58,511.511 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 15:40:58,662.662 INFO    ] Initializing speech engine...
[2026-06-12 15:40:58,668.668 INFO    ] 2026-06-12 15:40:58
[2026-06-12 15:40:58,876.876 INFO    ] 2026-06-12 15:40:58
[2026-06-12 15:40:58,905.905 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 15:40:59,096.096 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 15:40:59,101.101 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 15:40:59,293.293 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 15:40:59,320.320 INFO    ] time= 12/06/2026 15:40:59
[2026-06-12 15:40:59,322.322 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 15:40:59,324.324 INFO    ] Checking for existing commands in stream...
[2026-06-12 15:40:59,391.391 INFO    ] No existing commands found in stream
[2026-06-12 15:41:04,405.405 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 15:41:04,409.409 INFO    ] Waiting 3.56 seconds before fallback handling...
[2026-06-12 15:41:08,355.355 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 15:41:08,357.357 INFO    ] Checking for system updates...
[2026-06-12 15:41:08,378.378 INFO    ] 200
[2026-06-12 15:41:08,379.379 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:41:08,411.411 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 15:41:08,413.413 INFO    ] No update needed
[2026-06-12 15:41:08,415.415 INFO    ] Checking for camera pi updates...
[2026-06-12 15:41:08,436.436 INFO    ] 200
[2026-06-12 15:41:08,437.437 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:41:08,460.460 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 15:41:08,504.504 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 15:41:08,506.506 INFO    ] No camera update needed
[2026-06-12 15:41:08,507.507 INFO    ] Script finished. Safe exiting...
[2026-06-12 15:41:08,508.508 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 15:41:08,512.512 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 15:41:08,515.515 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 15:41:10,553.553 INFO    ] ================================================
[2026-06-12 15:41:10,568.568 INFO    ] Launching Daemon at Fri Jun 12 15:41:10 IST 2026
[2026-06-12 15:41:10,579.579 INFO    ] ================================================
[2026-06-12 15:41:10,952.952 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 15:41:10
[2026-06-12 15:41:11,268.268 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 15:41:11,411.411 INFO    ] Initializing speech engine...
[2026-06-12 15:41:11,416.416 INFO    ] 2026-06-12 15:41:11
[2026-06-12 15:41:11,619.619 INFO    ] 2026-06-12 15:41:11
[2026-06-12 15:41:11,651.651 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 15:41:11,835.835 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 15:41:11,844.844 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 15:41:11,988.988 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 15:41:12,043.043 INFO    ] time= 12/06/2026 15:41:11
[2026-06-12 15:41:12,067.067 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 15:41:12,072.072 INFO    ] Checking for existing commands in stream...
[2026-06-12 15:41:12,140.140 INFO    ] No existing commands found in stream
[2026-06-12 15:41:17,154.154 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 15:41:17,156.156 INFO    ] Waiting 2.84 seconds before fallback handling...
[2026-06-12 15:41:21,662.662 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 15:41:21,665.665 INFO    ] Checking for system updates...
[2026-06-12 15:41:21,701.701 INFO    ] 200
[2026-06-12 15:41:21,703.703 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:41:21,759.759 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 15:41:21,761.761 INFO    ] No update needed
[2026-06-12 15:41:21,763.763 INFO    ] Checking for camera pi updates...
[2026-06-12 15:41:21,796.796 INFO    ] 200
[2026-06-12 15:41:21,798.798 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:41:21,821.821 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 15:41:21,902.902 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 15:41:21,904.904 INFO    ] No camera update needed
[2026-06-12 15:41:21,905.905 INFO    ] Script finished. Safe exiting...
[2026-06-12 15:41:21,906.906 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 15:41:21,909.909 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 15:41:21,912.912 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 15:41:23,953.953 INFO    ] ================================================
[2026-06-12 15:41:23,969.969 INFO    ] Launching Daemon at Fri Jun 12 15:41:23 IST 2026
[2026-06-12 15:41:23,980.980 INFO    ] ================================================
[2026-06-12 15:41:24,321.321 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 15:41:24
[2026-06-12 15:41:24,635.635 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 15:41:24,765.765 INFO    ] Initializing speech engine...
[2026-06-12 15:41:24,774.774 INFO    ] 2026-06-12 15:41:24
[2026-06-12 15:41:24,990.990 INFO    ] 2026-06-12 15:41:24
[2026-06-12 15:41:25,019.019 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 15:41:25,205.205 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 15:41:25,213.213 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 15:41:25,361.361 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 15:41:25,413.413 INFO    ] time= 12/06/2026 15:41:25
[2026-06-12 15:41:25,437.437 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 15:41:25,443.443 INFO    ] Checking for existing commands in stream...
[2026-06-12 15:41:25,511.511 INFO    ] No existing commands found in stream
[2026-06-12 15:41:30,520.520 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 15:41:30,522.522 INFO    ] Waiting 3.12 seconds before fallback handling...
[2026-06-12 15:41:34,038.038 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 15:41:34,039.039 INFO    ] Checking for system updates...
[2026-06-12 15:41:34,061.061 INFO    ] 200
[2026-06-12 15:41:34,062.062 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:41:34,092.092 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 15:41:34,093.093 INFO    ] No update needed
[2026-06-12 15:41:34,095.095 INFO    ] Checking for camera pi updates...
[2026-06-12 15:41:34,115.115 INFO    ] 200
[2026-06-12 15:41:34,116.116 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:41:34,139.139 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 15:41:34,184.184 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 15:41:34,185.185 INFO    ] No camera update needed
[2026-06-12 15:41:34,186.186 INFO    ] Script finished. Safe exiting...
[2026-06-12 15:41:34,187.187 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 15:41:34,191.191 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 15:41:34,193.193 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 15:41:36,235.235 INFO    ] ================================================
[2026-06-12 15:41:36,250.250 INFO    ] Launching Daemon at Fri Jun 12 15:41:36 IST 2026
[2026-06-12 15:41:36,261.261 INFO    ] ================================================
[2026-06-12 15:41:36,619.619 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 15:41:36
[2026-06-12 15:41:36,957.957 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 15:41:37,110.110 INFO    ] Initializing speech engine...
[2026-06-12 15:41:37,116.116 INFO    ] 2026-06-12 15:41:37
[2026-06-12 15:41:37,327.327 INFO    ] 2026-06-12 15:41:37
[2026-06-12 15:41:37,356.356 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 15:41:37,545.545 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 15:41:37,555.555 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 15:41:37,710.710 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 15:41:37,767.767 INFO    ] time= 12/06/2026 15:41:37
[2026-06-12 15:41:37,811.811 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 15:41:37,823.823 INFO    ] Checking for existing commands in stream...
[2026-06-12 15:41:37,897.897 INFO    ] No existing commands found in stream
[2026-06-12 15:41:42,908.908 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 15:41:42,912.912 INFO    ] Waiting 0.86 seconds before fallback handling...
[2026-06-12 15:41:44,176.176 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 15:41:44,177.177 INFO    ] Checking for system updates...
[2026-06-12 15:41:44,198.198 INFO    ] 200
[2026-06-12 15:41:44,200.200 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:41:44,230.230 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 15:41:44,231.231 INFO    ] No update needed
[2026-06-12 15:41:44,233.233 INFO    ] Checking for camera pi updates...
[2026-06-12 15:41:44,252.252 INFO    ] 200
[2026-06-12 15:41:44,253.253 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:41:44,276.276 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 15:41:44,413.413 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 15:41:44,415.415 INFO    ] No camera update needed
[2026-06-12 15:41:44,416.416 INFO    ] Script finished. Safe exiting...
[2026-06-12 15:41:44,417.417 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 15:41:44,421.421 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 15:41:44,424.424 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 15:41:46,463.463 INFO    ] ================================================
[2026-06-12 15:41:46,478.478 INFO    ] Launching Daemon at Fri Jun 12 15:41:46 IST 2026
[2026-06-12 15:41:46,489.489 INFO    ] ================================================
[2026-06-12 15:41:46,847.847 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 15:41:46
[2026-06-12 15:41:47,186.186 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 15:41:47,338.338 INFO    ] Initializing speech engine...
[2026-06-12 15:41:47,343.343 INFO    ] 2026-06-12 15:41:47
[2026-06-12 15:41:47,551.551 INFO    ] 2026-06-12 15:41:47
[2026-06-12 15:41:47,581.581 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 15:41:47,767.767 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 15:41:47,776.776 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 15:41:47,922.922 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 15:41:47,973.973 INFO    ] time= 12/06/2026 15:41:47
[2026-06-12 15:41:47,998.998 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 15:41:48,004.004 INFO    ] Checking for existing commands in stream...
[2026-06-12 15:41:48,095.095 INFO    ] No existing commands found in stream
[2026-06-12 15:41:53,109.109 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 15:41:53,113.113 INFO    ] Waiting 3.04 seconds before fallback handling...
[2026-06-12 15:41:56,579.579 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 15:41:56,581.581 INFO    ] Checking for system updates...
[2026-06-12 15:41:56,601.601 INFO    ] 200
[2026-06-12 15:41:56,603.603 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:41:56,633.633 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 15:41:56,634.634 INFO    ] No update needed
[2026-06-12 15:41:56,636.636 INFO    ] Checking for camera pi updates...
[2026-06-12 15:41:56,655.655 INFO    ] 200
[2026-06-12 15:41:56,657.657 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:41:56,680.680 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 15:41:56,725.725 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 15:41:56,727.727 INFO    ] No camera update needed
[2026-06-12 15:41:56,728.728 INFO    ] Script finished. Safe exiting...
[2026-06-12 15:41:56,729.729 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 15:41:56,733.733 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 15:41:56,736.736 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 15:41:58,774.774 INFO    ] ================================================
[2026-06-12 15:41:58,790.790 INFO    ] Launching Daemon at Fri Jun 12 15:41:58 IST 2026
[2026-06-12 15:41:58,802.802 INFO    ] ================================================
[2026-06-12 15:41:59,137.137 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 15:41:59
[2026-06-12 15:41:59,454.454 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 15:41:59,589.589 INFO    ] Initializing speech engine...
[2026-06-12 15:41:59,598.598 INFO    ] 2026-06-12 15:41:59
[2026-06-12 15:41:59,825.825 INFO    ] 2026-06-12 15:41:59
[2026-06-12 15:41:59,856.856 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 15:42:00,054.054 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 15:42:00,058.058 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 15:42:00,202.202 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 15:42:00,250.250 INFO    ] time= 12/06/2026 15:42:00
[2026-06-12 15:42:00,300.300 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 15:42:00,307.307 INFO    ] Checking for existing commands in stream...
[2026-06-12 15:42:00,384.384 INFO    ] No existing commands found in stream
[2026-06-12 15:42:05,392.392 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 15:42:05,395.395 INFO    ] Waiting 1.56 seconds before fallback handling...
[2026-06-12 15:42:07,358.358 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 15:42:07,360.360 INFO    ] Checking for system updates...
[2026-06-12 15:42:07,382.382 INFO    ] 200
[2026-06-12 15:42:07,383.383 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:42:07,417.417 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 15:42:07,418.418 INFO    ] No update needed
[2026-06-12 15:42:07,419.419 INFO    ] Checking for camera pi updates...
[2026-06-12 15:42:07,439.439 INFO    ] 200
[2026-06-12 15:42:07,441.441 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:42:07,466.466 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 15:42:07,509.509 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 15:42:07,510.510 INFO    ] No camera update needed
[2026-06-12 15:42:07,512.512 INFO    ] Script finished. Safe exiting...
[2026-06-12 15:42:07,513.513 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 15:42:07,516.516 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 15:42:07,519.519 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 15:42:09,557.557 INFO    ] ================================================
[2026-06-12 15:42:09,573.573 INFO    ] Launching Daemon at Fri Jun 12 15:42:09 IST 2026
[2026-06-12 15:42:09,584.584 INFO    ] ================================================
[2026-06-12 15:42:09,921.921 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 15:42:09
[2026-06-12 15:42:10,233.233 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 15:42:10,367.367 INFO    ] Initializing speech engine...
[2026-06-12 15:42:10,371.371 INFO    ] 2026-06-12 15:42:10
[2026-06-12 15:42:10,600.600 INFO    ] 2026-06-12 15:42:10
[2026-06-12 15:42:10,631.631 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 15:42:10,830.830 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 15:42:10,834.834 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 15:42:10,978.978 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 15:42:11,036.036 INFO    ] time= 12/06/2026 15:42:10
[2026-06-12 15:42:11,065.065 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 15:42:11,082.082 INFO    ] Checking for existing commands in stream...
[2026-06-12 15:42:11,186.186 INFO    ] No existing commands found in stream
[2026-06-12 15:42:16,195.195 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 15:42:16,197.197 INFO    ] Waiting 1.08 seconds before fallback handling...
[2026-06-12 15:42:17,650.650 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 15:42:17,652.652 INFO    ] Checking for system updates...
[2026-06-12 15:42:17,680.680 INFO    ] 200
[2026-06-12 15:42:17,681.681 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:42:17,713.713 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 15:42:17,714.714 INFO    ] No update needed
[2026-06-12 15:42:17,715.715 INFO    ] Checking for camera pi updates...
[2026-06-12 15:42:17,737.737 INFO    ] 200
[2026-06-12 15:42:17,738.738 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:42:17,761.761 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 15:42:17,819.819 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 15:42:17,820.820 INFO    ] No camera update needed
[2026-06-12 15:42:17,822.822 INFO    ] Script finished. Safe exiting...
[2026-06-12 15:42:17,823.823 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 15:42:17,826.826 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 15:42:17,830.830 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 15:42:19,871.871 INFO    ] ================================================
[2026-06-12 15:42:19,892.892 INFO    ] Launching Daemon at Fri Jun 12 15:42:19 IST 2026
[2026-06-12 15:42:19,904.904 INFO    ] ================================================
[2026-06-12 15:42:20,241.241 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 15:42:20
[2026-06-12 15:42:20,556.556 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 15:42:20,689.689 INFO    ] Initializing speech engine...
[2026-06-12 15:42:20,692.692 INFO    ] 2026-06-12 15:42:20
[2026-06-12 15:42:20,885.885 INFO    ] 2026-06-12 15:42:20
[2026-06-12 15:42:20,931.931 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 15:42:21,088.088 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 15:42:21,131.131 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 15:42:21,301.301 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 15:42:21,344.344 INFO    ] time= 12/06/2026 15:42:21
[2026-06-12 15:42:21,384.384 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 15:42:21,406.406 INFO    ] Checking for existing commands in stream...
[2026-06-12 15:42:21,483.483 INFO    ] No existing commands found in stream
[2026-06-12 15:42:26,492.492 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 15:42:26,495.495 INFO    ] Waiting 0.16 seconds before fallback handling...
[2026-06-12 15:42:27,054.054 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 15:42:27,055.055 INFO    ] Checking for system updates...
[2026-06-12 15:42:27,076.076 INFO    ] 200
[2026-06-12 15:42:27,077.077 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:42:27,107.107 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 15:42:27,108.108 INFO    ] No update needed
[2026-06-12 15:42:27,109.109 INFO    ] Checking for camera pi updates...
[2026-06-12 15:42:27,130.130 INFO    ] 200
[2026-06-12 15:42:27,131.131 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:42:27,156.156 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 15:42:27,183.183 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 15:42:27,184.184 INFO    ] No camera update needed
[2026-06-12 15:42:27,186.186 INFO    ] Script finished. Safe exiting...
[2026-06-12 15:42:27,187.187 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 15:42:27,191.191 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 15:42:27,194.194 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 15:42:29,232.232 INFO    ] ================================================
[2026-06-12 15:42:29,249.249 INFO    ] Launching Daemon at Fri Jun 12 15:42:29 IST 2026
[2026-06-12 15:42:29,261.261 INFO    ] ================================================
[2026-06-12 15:42:29,585.585 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 15:42:29
[2026-06-12 15:42:29,897.897 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 15:42:30,051.051 INFO    ] Initializing speech engine...
[2026-06-12 15:42:30,059.059 INFO    ] 2026-06-12 15:42:30
[2026-06-12 15:42:30,279.279 INFO    ] 2026-06-12 15:42:30
[2026-06-12 15:42:30,311.311 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 15:42:30,444.444 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 15:42:30,497.497 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 15:42:30,655.655 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 15:42:30,712.712 INFO    ] time= 12/06/2026 15:42:30
[2026-06-12 15:42:30,759.759 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 15:42:30,765.765 INFO    ] Checking for existing commands in stream...
[2026-06-12 15:42:30,841.841 INFO    ] No existing commands found in stream
[2026-06-12 15:42:35,852.852 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 15:42:35,855.855 INFO    ] Waiting 2.51 seconds before fallback handling...
[2026-06-12 15:42:38,698.698 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 15:42:38,700.700 INFO    ] Checking for system updates...
[2026-06-12 15:42:38,720.720 INFO    ] 200
[2026-06-12 15:42:38,722.722 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:42:38,753.753 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 15:42:38,754.754 INFO    ] No update needed
[2026-06-12 15:42:38,755.755 INFO    ] Checking for camera pi updates...
[2026-06-12 15:42:38,776.776 INFO    ] 200
[2026-06-12 15:42:38,777.777 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:42:38,801.801 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 15:42:38,847.847 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 15:42:38,848.848 INFO    ] No camera update needed
[2026-06-12 15:42:38,850.850 INFO    ] Script finished. Safe exiting...
[2026-06-12 15:42:38,851.851 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 15:42:38,854.854 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 15:42:38,857.857 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 15:42:40,895.895 INFO    ] ================================================
[2026-06-12 15:42:40,912.912 INFO    ] Launching Daemon at Fri Jun 12 15:42:40 IST 2026
[2026-06-12 15:42:40,923.923 INFO    ] ================================================
[2026-06-12 15:42:41,278.278 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 15:42:41
[2026-06-12 15:42:41,617.617 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 15:42:41,769.769 INFO    ] Initializing speech engine...
[2026-06-12 15:42:41,773.773 INFO    ] 2026-06-12 15:42:41
[2026-06-12 15:42:41,979.979 INFO    ] 2026-06-12 15:42:41
[2026-06-12 15:42:42,008.008 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 15:42:42,193.193 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 15:42:42,205.205 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 15:42:42,396.396 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 15:42:42,421.421 INFO    ] time= 12/06/2026 15:42:42
[2026-06-12 15:42:42,427.427 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 15:42:42,429.429 INFO    ] Checking for existing commands in stream...
[2026-06-12 15:42:42,496.496 INFO    ] No existing commands found in stream
[2026-06-12 15:42:47,511.511 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 15:42:47,514.514 INFO    ] Waiting 3.56 seconds before fallback handling...
[2026-06-12 15:42:51,459.459 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 15:42:51,461.461 INFO    ] Checking for system updates...
[2026-06-12 15:42:51,482.482 INFO    ] 200
[2026-06-12 15:42:51,483.483 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:42:51,513.513 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 15:42:51,514.514 INFO    ] No update needed
[2026-06-12 15:42:51,516.516 INFO    ] Checking for camera pi updates...
[2026-06-12 15:42:51,535.535 INFO    ] 200
[2026-06-12 15:42:51,537.537 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:42:51,560.560 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 15:42:51,604.604 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 15:42:51,606.606 INFO    ] No camera update needed
[2026-06-12 15:42:51,607.607 INFO    ] Script finished. Safe exiting...
[2026-06-12 15:42:51,608.608 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 15:42:51,612.612 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 15:42:51,615.615 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 15:42:53,653.653 INFO    ] ================================================
[2026-06-12 15:42:53,668.668 INFO    ] Launching Daemon at Fri Jun 12 15:42:53 IST 2026
[2026-06-12 15:42:53,679.679 INFO    ] ================================================
[2026-06-12 15:42:54,004.004 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 15:42:54
[2026-06-12 15:42:54,316.316 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 15:42:54,457.457 INFO    ] Initializing speech engine...
[2026-06-12 15:42:54,463.463 INFO    ] 2026-06-12 15:42:54
[2026-06-12 15:42:54,664.664 INFO    ] 2026-06-12 15:42:54
[2026-06-12 15:42:54,692.692 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 15:42:54,875.875 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 15:42:54,884.884 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 15:42:55,027.027 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 15:42:55,078.078 INFO    ] time= 12/06/2026 15:42:55
[2026-06-12 15:42:55,102.102 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 15:42:55,107.107 INFO    ] Checking for existing commands in stream...
[2026-06-12 15:42:55,174.174 INFO    ] No existing commands found in stream
[2026-06-12 15:43:00,187.187 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 15:43:00,190.190 INFO    ] Waiting 2.54 seconds before fallback handling...
[2026-06-12 15:43:03,127.127 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 15:43:03,130.130 INFO    ] Checking for system updates...
[2026-06-12 15:43:03,167.167 INFO    ] 200
[2026-06-12 15:43:03,170.170 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:43:03,218.218 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 15:43:03,220.220 INFO    ] No update needed
[2026-06-12 15:43:03,221.221 INFO    ] Checking for camera pi updates...
[2026-06-12 15:43:03,240.240 INFO    ] 200
[2026-06-12 15:43:03,242.242 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:43:03,266.266 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 15:43:03,312.312 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 15:43:03,313.313 INFO    ] No camera update needed
[2026-06-12 15:43:03,314.314 INFO    ] Script finished. Safe exiting...
[2026-06-12 15:43:03,316.316 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 15:43:03,319.319 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 15:43:03,321.321 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 15:43:05,361.361 INFO    ] ================================================
[2026-06-12 15:43:05,376.376 INFO    ] Launching Daemon at Fri Jun 12 15:43:05 IST 2026
[2026-06-12 15:43:05,387.387 INFO    ] ================================================
[2026-06-12 15:43:05,752.752 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 15:43:05
[2026-06-12 15:43:06,085.085 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 15:43:06,237.237 INFO    ] Initializing speech engine...
[2026-06-12 15:43:06,243.243 INFO    ] 2026-06-12 15:43:06
[2026-06-12 15:43:06,452.452 INFO    ] 2026-06-12 15:43:06
[2026-06-12 15:43:06,480.480 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 15:43:06,665.665 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 15:43:06,676.676 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 15:43:06,859.859 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 15:43:06,891.891 INFO    ] time= 12/06/2026 15:43:06
[2026-06-12 15:43:06,897.897 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 15:43:06,899.899 INFO    ] Checking for existing commands in stream...
[2026-06-12 15:43:06,966.966 INFO    ] No existing commands found in stream
[2026-06-12 15:43:11,981.981 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 15:43:11,984.984 INFO    ] Waiting 2.38 seconds before fallback handling...
[2026-06-12 15:43:14,778.778 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 15:43:14,780.780 INFO    ] Checking for system updates...
[2026-06-12 15:43:14,800.800 INFO    ] 200
[2026-06-12 15:43:14,802.802 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:43:14,834.834 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 15:43:14,836.836 INFO    ] No update needed
[2026-06-12 15:43:14,837.837 INFO    ] Checking for camera pi updates...
[2026-06-12 15:43:14,856.856 INFO    ] 200
[2026-06-12 15:43:14,857.857 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:43:14,880.880 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 15:43:14,924.924 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 15:43:14,925.925 INFO    ] No camera update needed
[2026-06-12 15:43:14,926.926 INFO    ] Script finished. Safe exiting...
[2026-06-12 15:43:14,927.927 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 15:43:14,931.931 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 15:43:14,933.933 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 15:43:16,972.972 INFO    ] ================================================
[2026-06-12 15:43:16,987.987 INFO    ] Launching Daemon at Fri Jun 12 15:43:16 IST 2026
[2026-06-12 15:43:17,998.998 INFO    ] ================================================
[2026-06-12 15:43:17,343.343 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 15:43:17
[2026-06-12 15:43:17,659.659 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 15:43:17,802.802 INFO    ] Initializing speech engine...
[2026-06-12 15:43:17,808.808 INFO    ] 2026-06-12 15:43:17
[2026-06-12 15:43:18,014.014 INFO    ] 2026-06-12 15:43:17
[2026-06-12 15:43:18,042.042 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 15:43:18,226.226 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 15:43:18,235.235 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 15:43:18,375.375 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 15:43:18,432.432 INFO    ] time= 12/06/2026 15:43:18
[2026-06-12 15:43:18,456.456 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 15:43:18,462.462 INFO    ] Checking for existing commands in stream...
[2026-06-12 15:43:18,529.529 INFO    ] No existing commands found in stream
[2026-06-12 15:43:23,538.538 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 15:43:23,541.541 INFO    ] Waiting 1.86 seconds before fallback handling...
[2026-06-12 15:43:25,792.792 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 15:43:25,793.793 INFO    ] Checking for system updates...
[2026-06-12 15:43:25,814.814 INFO    ] 200
[2026-06-12 15:43:25,815.815 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:43:25,845.845 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 15:43:25,846.846 INFO    ] No update needed
[2026-06-12 15:43:25,848.848 INFO    ] Checking for camera pi updates...
[2026-06-12 15:43:25,868.868 INFO    ] 200
[2026-06-12 15:43:25,870.870 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:43:25,894.894 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 15:43:25,936.936 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 15:43:25,938.938 INFO    ] No camera update needed
[2026-06-12 15:43:25,939.939 INFO    ] Script finished. Safe exiting...
[2026-06-12 15:43:25,940.940 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 15:43:25,943.943 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 15:43:25,946.946 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 15:43:27,985.985 INFO    ] ================================================
[2026-06-12 15:43:28,000.000 INFO    ] Launching Daemon at Fri Jun 12 15:43:27 IST 2026
[2026-06-12 15:43:28,011.011 INFO    ] ================================================
[2026-06-12 15:43:28,379.379 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 15:43:28
[2026-06-12 15:43:28,694.694 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 15:43:28,831.831 INFO    ] Initializing speech engine...
[2026-06-12 15:43:28,844.844 INFO    ] 2026-06-12 15:43:28
[2026-06-12 15:43:29,063.063 INFO    ] 2026-06-12 15:43:29
[2026-06-12 15:43:29,094.094 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 15:43:29,294.294 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 15:43:29,298.298 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 15:43:29,446.446 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 15:43:29,504.504 INFO    ] time= 12/06/2026 15:43:29
[2026-06-12 15:43:29,545.545 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 15:43:29,547.547 INFO    ] Checking for existing commands in stream...
[2026-06-12 15:43:29,649.649 INFO    ] No existing commands found in stream
[2026-06-12 15:43:34,654.654 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 15:43:34,657.657 INFO    ] Waiting 2.70 seconds before fallback handling...
[2026-06-12 15:43:37,741.741 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 15:43:37,742.742 INFO    ] Checking for system updates...
[2026-06-12 15:43:37,762.762 INFO    ] 200
[2026-06-12 15:43:37,764.764 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:43:37,796.796 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 15:43:37,797.797 INFO    ] No update needed
[2026-06-12 15:43:37,798.798 INFO    ] Checking for camera pi updates...
[2026-06-12 15:43:37,819.819 INFO    ] 200
[2026-06-12 15:43:37,820.820 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:43:37,845.845 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 15:43:37,890.890 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 15:43:37,892.892 INFO    ] No camera update needed
[2026-06-12 15:43:37,893.893 INFO    ] Script finished. Safe exiting...
[2026-06-12 15:43:37,894.894 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 15:43:37,897.897 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 15:43:37,900.900 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 15:43:39,937.937 INFO    ] ================================================
[2026-06-12 15:43:39,952.952 INFO    ] Launching Daemon at Fri Jun 12 15:43:39 IST 2026
[2026-06-12 15:43:39,967.967 INFO    ] ================================================
[2026-06-12 15:43:40,341.341 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 15:43:40
[2026-06-12 15:43:40,680.680 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 15:43:40,831.831 INFO    ] Initializing speech engine...
[2026-06-12 15:43:40,837.837 INFO    ] 2026-06-12 15:43:40
[2026-06-12 15:43:41,045.045 INFO    ] 2026-06-12 15:43:41
[2026-06-12 15:43:41,074.074 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 15:43:41,259.259 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 15:43:41,270.270 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 15:43:41,452.452 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 15:43:41,485.485 INFO    ] time= 12/06/2026 15:43:41
[2026-06-12 15:43:41,491.491 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 15:43:41,493.493 INFO    ] Checking for existing commands in stream...
[2026-06-12 15:43:41,559.559 INFO    ] No existing commands found in stream
[2026-06-12 15:43:46,569.569 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 15:43:46,572.572 INFO    ] Waiting 0.57 seconds before fallback handling...
[2026-06-12 15:43:47,519.519 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 15:43:47,520.520 INFO    ] Checking for system updates...
[2026-06-12 15:43:47,541.541 INFO    ] 200
[2026-06-12 15:43:47,543.543 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:43:47,572.572 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 15:43:47,574.574 INFO    ] No update needed
[2026-06-12 15:43:47,575.575 INFO    ] Checking for camera pi updates...
[2026-06-12 15:43:47,596.596 INFO    ] 200
[2026-06-12 15:43:47,597.597 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:43:47,623.623 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 15:43:47,766.766 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 15:43:47,768.768 INFO    ] No camera update needed
[2026-06-12 15:43:47,769.769 INFO    ] Script finished. Safe exiting...
[2026-06-12 15:43:47,771.771 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 15:43:47,774.774 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 15:43:47,777.777 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 15:43:49,815.815 INFO    ] ================================================
[2026-06-12 15:43:49,830.830 INFO    ] Launching Daemon at Fri Jun 12 15:43:49 IST 2026
[2026-06-12 15:43:49,842.842 INFO    ] ================================================
[2026-06-12 15:43:50,199.199 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 15:43:50
[2026-06-12 15:43:50,520.520 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 15:43:50,652.652 INFO    ] Initializing speech engine...
[2026-06-12 15:43:50,665.665 INFO    ] 2026-06-12 15:43:50
[2026-06-12 15:43:50,872.872 INFO    ] 2026-06-12 15:43:50
[2026-06-12 15:43:50,901.901 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 15:43:51,085.085 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 15:43:51,096.096 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 15:43:51,287.287 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 15:43:51,312.312 INFO    ] time= 12/06/2026 15:43:51
[2026-06-12 15:43:51,317.317 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 15:43:51,319.319 INFO    ] Checking for existing commands in stream...
[2026-06-12 15:43:51,386.386 INFO    ] No existing commands found in stream
[2026-06-12 15:43:56,395.395 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 15:43:56,398.398 INFO    ] Waiting 2.95 seconds before fallback handling...
[2026-06-12 15:43:59,740.740 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 15:43:59,742.742 INFO    ] Checking for system updates...
[2026-06-12 15:43:59,762.762 INFO    ] 200
[2026-06-12 15:43:59,764.764 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:43:59,793.793 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 15:43:59,795.795 INFO    ] No update needed
[2026-06-12 15:43:59,796.796 INFO    ] Checking for camera pi updates...
[2026-06-12 15:43:59,816.816 INFO    ] 200
[2026-06-12 15:43:59,817.817 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:43:59,840.840 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 15:43:59,900.900 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 15:43:59,902.902 INFO    ] No camera update needed
[2026-06-12 15:43:59,903.903 INFO    ] Script finished. Safe exiting...
[2026-06-12 15:43:59,904.904 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 15:43:59,908.908 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 15:43:59,911.911 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 15:44:01,944.944 INFO    ] ================================================
[2026-06-12 15:44:01,956.956 INFO    ] Launching Daemon at Fri Jun 12 15:44:01 IST 2026
[2026-06-12 15:44:01,966.966 INFO    ] ================================================
[2026-06-12 15:44:02,326.326 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 15:44:02
[2026-06-12 15:44:02,718.718 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 15:44:02,872.872 INFO    ] Initializing speech engine...
[2026-06-12 15:44:02,883.883 INFO    ] 2026-06-12 15:44:02
[2026-06-12 15:44:03,096.096 INFO    ] 2026-06-12 15:44:03
[2026-06-12 15:44:03,125.125 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 15:44:03,312.312 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 15:44:03,316.316 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 15:44:03,460.460 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 15:44:03,523.523 INFO    ] time= 12/06/2026 15:44:03
[2026-06-12 15:44:03,548.548 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 15:44:03,554.554 INFO    ] Checking for existing commands in stream...
[2026-06-12 15:44:03,626.626 INFO    ] No existing commands found in stream
[2026-06-12 15:44:08,646.646 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 15:44:08,654.654 INFO    ] Waiting 0.73 seconds before fallback handling...
[2026-06-12 15:44:09,798.798 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 15:44:09,799.799 INFO    ] Checking for system updates...
[2026-06-12 15:44:09,822.822 INFO    ] 200
[2026-06-12 15:44:09,823.823 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:44:09,855.855 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 15:44:09,857.857 INFO    ] No update needed
[2026-06-12 15:44:09,859.859 INFO    ] Checking for camera pi updates...
[2026-06-12 15:44:09,879.879 INFO    ] 200
[2026-06-12 15:44:09,881.881 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:44:09,904.904 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 15:44:09,996.996 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 15:44:09,998.998 INFO    ] No camera update needed
[2026-06-12 15:44:09,999.999 INFO    ] Script finished. Safe exiting...
[2026-06-12 15:44:10,001.001 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 15:44:10,004.004 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 15:44:10,007.007 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 15:44:12,046.046 INFO    ] ================================================
[2026-06-12 15:44:12,062.062 INFO    ] Launching Daemon at Fri Jun 12 15:44:12 IST 2026
[2026-06-12 15:44:12,073.073 INFO    ] ================================================
[2026-06-12 15:44:12,436.436 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 15:44:12
[2026-06-12 15:44:12,775.775 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 15:44:12,927.927 INFO    ] Initializing speech engine...
[2026-06-12 15:44:12,932.932 INFO    ] 2026-06-12 15:44:12
[2026-06-12 15:44:13,142.142 INFO    ] 2026-06-12 15:44:13
[2026-06-12 15:44:13,171.171 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 15:44:13,359.359 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 15:44:13,368.368 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 15:44:13,514.514 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 15:44:13,568.568 INFO    ] time= 12/06/2026 15:44:13
[2026-06-12 15:44:13,591.591 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 15:44:13,597.597 INFO    ] Checking for existing commands in stream...
[2026-06-12 15:44:13,665.665 INFO    ] No existing commands found in stream
[2026-06-12 15:44:18,690.690 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 15:44:18,693.693 INFO    ] Waiting 0.29 seconds before fallback handling...
[2026-06-12 15:44:19,379.379 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 15:44:19,381.381 INFO    ] Checking for system updates...
[2026-06-12 15:44:19,401.401 INFO    ] 200
[2026-06-12 15:44:19,403.403 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:44:19,435.435 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 15:44:19,437.437 INFO    ] No update needed
[2026-06-12 15:44:19,438.438 INFO    ] Checking for camera pi updates...
[2026-06-12 15:44:19,458.458 INFO    ] 200
[2026-06-12 15:44:19,459.459 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:44:19,483.483 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 15:44:19,531.531 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 15:44:19,533.533 INFO    ] No camera update needed
[2026-06-12 15:44:19,534.534 INFO    ] Script finished. Safe exiting...
[2026-06-12 15:44:19,536.536 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 15:44:19,539.539 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 15:44:19,542.542 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 15:44:21,580.580 INFO    ] ================================================
[2026-06-12 15:44:21,596.596 INFO    ] Launching Daemon at Fri Jun 12 15:44:21 IST 2026
[2026-06-12 15:44:21,607.607 INFO    ] ================================================
[2026-06-12 15:44:21,963.963 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 15:44:21
[2026-06-12 15:44:22,301.301 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 15:44:22,451.451 INFO    ] Initializing speech engine...
[2026-06-12 15:44:22,457.457 INFO    ] 2026-06-12 15:44:22
[2026-06-12 15:44:22,665.665 INFO    ] 2026-06-12 15:44:22
[2026-06-12 15:44:22,694.694 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 15:44:22,880.880 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 15:44:22,889.889 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 15:44:23,045.045 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 15:44:23,108.108 INFO    ] time= 12/06/2026 15:44:23
[2026-06-12 15:44:23,115.115 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 15:44:23,117.117 INFO    ] Checking for existing commands in stream...
[2026-06-12 15:44:23,207.207 INFO    ] No existing commands found in stream
[2026-06-12 15:44:28,222.222 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 15:44:28,225.225 INFO    ] Waiting 1.35 seconds before fallback handling...
[2026-06-12 15:44:29,958.958 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 15:44:29,960.960 INFO    ] Checking for system updates...
[2026-06-12 15:44:29,980.980 INFO    ] 200
[2026-06-12 15:44:29,982.982 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:44:30,012.012 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 15:44:30,013.013 INFO    ] No update needed
[2026-06-12 15:44:30,014.014 INFO    ] Checking for camera pi updates...
[2026-06-12 15:44:30,034.034 INFO    ] 200
[2026-06-12 15:44:30,035.035 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:44:30,060.060 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 15:44:30,110.110 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 15:44:30,111.111 INFO    ] No camera update needed
[2026-06-12 15:44:30,113.113 INFO    ] Script finished. Safe exiting...
[2026-06-12 15:44:30,114.114 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 15:44:30,117.117 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 15:44:30,120.120 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 15:44:32,152.152 INFO    ] ================================================
[2026-06-12 15:44:32,162.162 INFO    ] Launching Daemon at Fri Jun 12 15:44:32 IST 2026
[2026-06-12 15:44:32,168.168 INFO    ] ================================================
[2026-06-12 15:44:32,498.498 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 15:44:32
[2026-06-12 15:44:32,850.850 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 15:44:32,992.992 INFO    ] Initializing speech engine...
[2026-06-12 15:44:32,997.997 INFO    ] 2026-06-12 15:44:32
[2026-06-12 15:44:33,183.183 INFO    ] 2026-06-12 15:44:33
[2026-06-12 15:44:33,217.217 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 15:44:33,427.427 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 15:44:33,437.437 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 15:44:33,584.584 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 15:44:33,637.637 INFO    ] time= 12/06/2026 15:44:33
[2026-06-12 15:44:33,660.660 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 15:44:33,666.666 INFO    ] Checking for existing commands in stream...
[2026-06-12 15:44:33,737.737 INFO    ] No existing commands found in stream
[2026-06-12 15:44:38,770.770 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 15:44:38,773.773 INFO    ] Waiting 2.85 seconds before fallback handling...
[2026-06-12 15:44:41,999.999 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 15:44:42,001.001 INFO    ] Checking for system updates...
[2026-06-12 15:44:42,021.021 INFO    ] 200
[2026-06-12 15:44:42,023.023 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:44:42,052.052 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 15:44:42,054.054 INFO    ] No update needed
[2026-06-12 15:44:42,055.055 INFO    ] Checking for camera pi updates...
[2026-06-12 15:44:42,075.075 INFO    ] 200
[2026-06-12 15:44:42,076.076 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:44:42,099.099 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 15:44:42,143.143 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 15:44:42,145.145 INFO    ] No camera update needed
[2026-06-12 15:44:42,146.146 INFO    ] Script finished. Safe exiting...
[2026-06-12 15:44:42,147.147 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 15:44:42,151.151 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 15:44:42,154.154 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 15:44:44,193.193 INFO    ] ================================================
[2026-06-12 15:44:44,208.208 INFO    ] Launching Daemon at Fri Jun 12 15:44:44 IST 2026
[2026-06-12 15:44:44,219.219 INFO    ] ================================================
[2026-06-12 15:44:44,552.552 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 15:44:44
[2026-06-12 15:44:44,865.865 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 15:44:44,999.999 INFO    ] Initializing speech engine...
[2026-06-12 15:44:45,008.008 INFO    ] 2026-06-12 15:44:45
[2026-06-12 15:44:45,234.234 INFO    ] 2026-06-12 15:44:45
[2026-06-12 15:44:45,265.265 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 15:44:45,397.397 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 15:44:45,464.464 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 15:44:45,606.606 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 15:44:45,658.658 INFO    ] time= 12/06/2026 15:44:45
[2026-06-12 15:44:45,691.691 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 15:44:45,715.715 INFO    ] Checking for existing commands in stream...
[2026-06-12 15:44:45,791.791 INFO    ] No existing commands found in stream
[2026-06-12 15:44:50,802.802 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 15:44:50,804.804 INFO    ] Waiting 3.46 seconds before fallback handling...
[2026-06-12 15:44:54,660.660 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 15:44:54,661.661 INFO    ] Checking for system updates...
[2026-06-12 15:44:54,682.682 INFO    ] 200
[2026-06-12 15:44:54,683.683 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:44:54,713.713 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 15:44:54,714.714 INFO    ] No update needed
[2026-06-12 15:44:54,715.715 INFO    ] Checking for camera pi updates...
[2026-06-12 15:44:54,734.734 INFO    ] 200
[2026-06-12 15:44:54,735.735 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:44:54,758.758 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 15:44:54,803.803 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 15:44:54,804.804 INFO    ] No camera update needed
[2026-06-12 15:44:54,806.806 INFO    ] Script finished. Safe exiting...
[2026-06-12 15:44:54,807.807 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 15:44:54,810.810 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 15:44:54,813.813 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 15:44:56,850.850 INFO    ] ================================================
[2026-06-12 15:44:56,865.865 INFO    ] Launching Daemon at Fri Jun 12 15:44:56 IST 2026
[2026-06-12 15:44:56,876.876 INFO    ] ================================================
[2026-06-12 15:44:57,211.211 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 15:44:57
[2026-06-12 15:44:57,527.527 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 15:44:57,661.661 INFO    ] Initializing speech engine...
[2026-06-12 15:44:57,671.671 INFO    ] 2026-06-12 15:44:57
[2026-06-12 15:44:57,901.901 INFO    ] 2026-06-12 15:44:57
[2026-06-12 15:44:57,932.932 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 15:44:58,132.132 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 15:44:58,146.146 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 15:44:58,287.287 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 15:44:58,346.346 INFO    ] time= 12/06/2026 15:44:58
[2026-06-12 15:44:58,382.382 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 15:44:58,388.388 INFO    ] Checking for existing commands in stream...
[2026-06-12 15:44:58,463.463 INFO    ] No existing commands found in stream
[2026-06-12 15:45:03,473.473 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 15:45:03,474.474 INFO    ] Waiting 3.83 seconds before fallback handling...
[2026-06-12 15:45:07,703.703 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 15:45:07,705.705 INFO    ] Checking for system updates...
[2026-06-12 15:45:07,725.725 INFO    ] 200
[2026-06-12 15:45:07,727.727 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:45:07,758.758 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 15:45:07,760.760 INFO    ] No update needed
[2026-06-12 15:45:07,761.761 INFO    ] Checking for camera pi updates...
[2026-06-12 15:45:07,781.781 INFO    ] 200
[2026-06-12 15:45:07,782.782 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:45:07,805.805 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 15:45:07,855.855 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 15:45:07,856.856 INFO    ] No camera update needed
[2026-06-12 15:45:07,857.857 INFO    ] Script finished. Safe exiting...
[2026-06-12 15:45:07,859.859 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 15:45:07,862.862 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 15:45:07,865.865 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 15:45:09,903.903 INFO    ] ================================================
[2026-06-12 15:45:09,918.918 INFO    ] Launching Daemon at Fri Jun 12 15:45:09 IST 2026
[2026-06-12 15:45:09,929.929 INFO    ] ================================================
[2026-06-12 15:45:10,258.258 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 15:45:10
[2026-06-12 15:45:10,570.570 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 15:45:10,712.712 INFO    ] Initializing speech engine...
[2026-06-12 15:45:10,717.717 INFO    ] 2026-06-12 15:45:10
[2026-06-12 15:45:10,921.921 INFO    ] 2026-06-12 15:45:10
[2026-06-12 15:45:10,949.949 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 15:45:14,195.195 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 15:45:14,197.197 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 15:45:14,315.315 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 15:45:14,318.318 INFO    ] time= 12/06/2026 15:45:14
[2026-06-12 15:45:14,321.321 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 15:45:14,324.324 INFO    ] Checking for existing commands in stream...
[2026-06-12 15:45:14,384.384 INFO    ] No existing commands found in stream
[2026-06-12 15:45:19,394.394 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 15:45:19,398.398 INFO    ] Waiting 0.53 seconds before fallback handling...
[2026-06-12 15:45:20,369.369 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 15:45:20,371.371 INFO    ] Checking for system updates...
[2026-06-12 15:45:20,392.392 INFO    ] 200
[2026-06-12 15:45:20,393.393 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:45:20,423.423 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 15:45:20,424.424 INFO    ] No update needed
[2026-06-12 15:45:20,426.426 INFO    ] Checking for camera pi updates...
[2026-06-12 15:45:20,445.445 INFO    ] 200
[2026-06-12 15:45:20,447.447 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:45:20,471.471 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 15:45:20,593.593 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 15:45:20,595.595 INFO    ] No camera update needed
[2026-06-12 15:45:20,596.596 INFO    ] Script finished. Safe exiting...
[2026-06-12 15:45:20,597.597 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 15:45:20,605.605 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 15:45:20,609.609 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 15:45:22,651.651 INFO    ] ================================================
[2026-06-12 15:45:22,666.666 INFO    ] Launching Daemon at Fri Jun 12 15:45:22 IST 2026
[2026-06-12 15:45:22,678.678 INFO    ] ================================================
[2026-06-12 15:45:23,037.037 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 15:45:23
[2026-06-12 15:45:23,356.356 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 15:45:23,501.501 INFO    ] Initializing speech engine...
[2026-06-12 15:45:23,506.506 INFO    ] 2026-06-12 15:45:23
[2026-06-12 15:45:23,708.708 INFO    ] 2026-06-12 15:45:23
[2026-06-12 15:45:23,737.737 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 15:45:23,920.920 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 15:45:23,930.930 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 15:45:24,083.083 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 15:45:24,127.127 INFO    ] time= 12/06/2026 15:45:24
[2026-06-12 15:45:24,149.149 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 15:45:24,155.155 INFO    ] Checking for existing commands in stream...
[2026-06-12 15:45:24,222.222 INFO    ] No existing commands found in stream
[2026-06-12 15:45:28,112.112 INFO    ] Received new command: ID=1781259328014-0
[2026-06-12 15:45:28,115.115 INFO    ] process_and_cleanup_command: msg_id=1781259328014-0
[2026-06-12 15:45:28,117.117 INFO    ] is_command_expired: timestamp=2026-06-12T10:15:27.487Z, expiry=30s
[2026-06-12 15:45:28,207.207 INFO    ] Command removed from stream: 1781259328014-0. returning for processing...
[2026-06-12 15:45:28,210.210 INFO    ] ***** get_valid_command
[2026-06-12 15:45:28,212.212 INFO    ] {'command': 'start-order', 'data': '{"request_id":"start-order-1781259327487-y48udi5q6","orderId":"TM09202301260612154439372","is_vending":false}', 'timestamp': '2026-06-12T10:15:27.487Z', 'timeout': '10', 'source': 'webapp'}
[2026-06-12 15:45:28,215.215 INFO    ] ***** Parsed command data: {'orderId': 'TM09202301260612154439372', 'is_vending': False, 'request_id': 'start-order-1781259327487-y48udi5q6'}
[2026-06-12 15:45:28,217.217 INFO    ] Handling start order...
[2026-06-12 15:45:28,220.220 INFO    ] handle_start_order_command
[2026-06-12 15:45:28,226.226 INFO    ] _send_start_order_success: request_id=start-order-1781259327487-y48udi5q6, order_id=TM09202301260612154439372
[2026-06-12 15:45:28,229.229 INFO    ] [_send_start_order_success] Adding message to stream: machine:TM09202301
[2026-06-12 15:45:28,301.301 INFO    ] [_send_start_order_success] Message added to stream with ID: 1781259328321-0
[2026-06-12 15:45:28,304.304 INFO    ] ✅ Start-order command succeeded - order locked, waiting for process-order command
[2026-06-12 15:45:28,306.306 INFO    ] Checking for system updates...
[2026-06-12 15:45:28,355.355 INFO    ] 200
[2026-06-12 15:45:28,358.358 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:45:28,403.403 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 15:45:28,404.404 INFO    ] No update needed
[2026-06-12 15:45:28,405.405 INFO    ] Checking for camera pi updates...
[2026-06-12 15:45:28,426.426 INFO    ] 200
[2026-06-12 15:45:28,428.428 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:45:28,450.450 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 15:45:28,504.504 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 15:45:28,505.505 INFO    ] No camera update needed
[2026-06-12 15:45:28,506.506 INFO    ] Script finished. Safe exiting...
[2026-06-12 15:45:28,507.507 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 15:45:28,510.510 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 15:45:28,513.513 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 15:45:30,551.551 INFO    ] ================================================
[2026-06-12 15:45:30,566.566 INFO    ] Launching Daemon at Fri Jun 12 15:45:30 IST 2026
[2026-06-12 15:45:30,577.577 INFO    ] ================================================
[2026-06-12 15:45:30,931.931 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 15:45:30
[2026-06-12 15:45:31,248.248 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 15:45:31,385.385 INFO    ] Initializing speech engine...
[2026-06-12 15:45:31,399.399 INFO    ] 2026-06-12 15:45:31
[2026-06-12 15:45:31,621.621 INFO    ] 2026-06-12 15:45:31
[2026-06-12 15:45:31,651.651 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 15:45:31,853.853 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 15:45:31,856.856 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 15:45:32,004.004 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 15:45:32,068.068 INFO    ] time= 12/06/2026 15:45:32
[2026-06-12 15:45:32,097.097 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 15:45:32,103.103 INFO    ] Checking for existing commands in stream...
[2026-06-12 15:45:32,189.189 INFO    ] Found 2 existing command(s) in stream
[2026-06-12 15:45:32,207.207 INFO    ] Checking historical command: ID=1781259328321-0
[2026-06-12 15:45:32,221.221 INFO    ] process_and_cleanup_command: msg_id=1781259328321-0
[2026-06-12 15:45:32,223.223 INFO    ] is_command_expired: timestamp=2026-06-12T10:15:28.227640Z, expiry=30s
[2026-06-12 15:45:32,352.352 INFO    ] Command removed from stream: 1781259328321-0. returning for processing...
[2026-06-12 15:45:32,357.357 INFO    ] ***** get_valid_command
[2026-06-12 15:45:32,360.360 INFO    ] {'message': 'start-order success', 'metadata_request_id': 'start-order-1781259327487-y48udi5q6', 'imei': 'TM09202301', 'timestamp': '2026-06-12T10:15:28.227640Z', 'message_type': 'command_response', 'status': 'success', 'metadata_order_id': 'TM09202301260612154439372'}
[2026-06-12 15:45:32,365.365 INFO    ] Checking historical command: ID=1781259331149-0
[2026-06-12 15:45:32,369.369 INFO    ] process_and_cleanup_command: msg_id=1781259331149-0
[2026-06-12 15:45:32,374.374 INFO    ] is_command_expired: timestamp=2026-06-12T10:15:30.559Z, expiry=30s
[2026-06-12 15:45:32,438.438 INFO    ] Command removed from stream: 1781259331149-0. returning for processing...
[2026-06-12 15:45:32,442.442 INFO    ] ***** get_valid_command
[2026-06-12 15:45:32,445.445 INFO    ] {'command': 'process-order', 'timestamp': '2026-06-12T10:15:30.559Z', 'source': 'webapp', 'data': '{"request_id":"process-order-1781259330559-0d00f56jz","orderId":"TM09202301260612154439372","is_vending":false,"accessCode":"92775897"}', 'timeout': '60'}
[2026-06-12 15:45:32,450.450 INFO    ] ***** Parsed command data: {'accessCode': '92775897', 'is_vending': False, 'orderId': 'TM09202301260612154439372', 'request_id': 'process-order-1781259330559-0d00f56jz'}
[2026-06-12 15:45:32,454.454 INFO    ] Handling process order...
[2026-06-12 15:45:32,457.457 INFO    ] Processing process-order command...
[2026-06-12 15:45:32,463.463 INFO    ] 🔍 Lock file Order ID: TM09202301260612154439372, TS: 2026-06-12 15:45:28
[2026-06-12 15:45:32,473.473 INFO    ] ✅ Order lock valid for TM09202301260612154439372
[2026-06-12 15:45:32,477.477 INFO    ] Received access code in process-order, skipping PHP API call
[2026-06-12 15:45:32,481.481 INFO    ] processing access code 92775897 for order TM09202301260612154439372
[2026-06-12 15:45:32,487.487 INFO    ] 🔍 Lock file Order ID: TM09202301260612154439372, TS: 2026-06-12 15:45:28
[2026-06-12 15:45:32,490.490 INFO    ] ✅ Order lock valid for TM09202301260612154439372
[2026-06-12 15:45:32,495.495 INFO    ] 2026-06-12 15:45:32
[2026-06-12 15:45:32,529.529 INFO    ] 200
[2026-06-12 15:45:32,534.534 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:45:32,540.540 INFO    ] 92775897
[2026-06-12 15:45:32,545.545 INFO    ] 2026-06-12 15:45:32
[2026-06-12 15:45:32,551.551 INFO    ] session id :982541283
[2026-06-12 15:45:32,556.556 INFO    ] http://localhost:5000/v2/getOrderByAccessCode?access_code=92775897&imei=TM09202301&session_id=982541283
[2026-06-12 15:45:33,347.347 INFO    ] 200
[2026-06-12 15:45:33,353.353 INFO    ] {"status": true, "msg": "Order Data", "data": {"bill_amount": "30", "access_code": "92775897", "order_id": "TM09202301260612154439372", "mobile": "8930866683", "proposed_sku_json": [{"unit_price": 30, "qty": 1, "skuid": "186084", "offer_desc": "", "offer_id": "", "door_id": "2", "tray_id": "37", "sku_total": 30, "mrp": "30", "image_url": "https://images.tinymart.in/product/186084-5395.png", "name": "KITKAT Nestle 4 Finger Chocolate 38g"}], "invoice_bill": "30"}, "rstatus": true}
[2026-06-12 15:45:33,370.370 INFO    ] 30
[2026-06-12 15:45:33,374.374 INFO    ] TM09202301260612154439372
[2026-06-12 15:45:33,382.382 INFO    ] 8930866683
[2026-06-12 15:45:33,387.387 INFO    ] 2026-06-12 15:45:33
[2026-06-12 15:45:33,392.392 INFO    ] Door Opening for user mobile ending with  six six eight three 
[2026-06-12 15:45:33,394.394 INFO    ] Door Opening for user mobile ending with  six six eight three 
[2026-06-12 15:45:33,395.395 INFO    ] 37831b304fdedfebdedb4a2f014e4203
[2026-06-12 15:45:33,401.401 INFO    ] 2026-06-12 15:45:33
[2026-06-12 15:45:33,402.402 INFO    ] creating audio file
[2026-06-12 15:45:33,438.438 INFO    ] Calling gTTS API with 60s timeout...
[2026-06-12 15:45:34,307.307 INFO    ] gTTS API call completed successfully
[2026-06-12 15:45:34,967.967 INFO    ] 2026-06-12 15:45:34
[2026-06-12 15:45:34,968.968 INFO    ] playing audio file
[2026-06-12 15:45:34,978.978 INFO    ] 2026-06-12 15:45:34
[2026-06-12 15:45:34,980.980 INFO    ] 2026-06-12 15:45:34
[2026-06-12 15:45:34,982.982 INFO    ] publish_status: order_id=TM09202301260612154439372
[2026-06-12 15:45:34,983.983 INFO    ] [publish_status] Adding message to stream: order:TM09202301260612154439372
[2026-06-12 15:45:35,050.050 INFO    ] [publish_status] Message added to stream with ID: 1781259335070-0
[2026-06-12 15:45:35,051.051 INFO    ] Published to order:TM09202301260612154439372: {'order_id': 'TM09202301260612154439372', 'server_response': '{"msg": "Order Data", "status": true, "data": {"order_id": "TM09202301260612154439372", "bill_amount": "30", "access_code": "92775897", "invoice_bill": "30", "mobile": "8930866683", "proposed_sku_json": [{"unit_price": 30, "mrp": "30", "tray_id": "37", "offer_id": "", "skuid": "186084", "sku_total": 30, "door_id": "2", "qty": 1, "offer_desc": "", "image_url": "https://images.tinymart.in/product/186084-5395.png", "name": "KITKAT Nestle 4 Finger Chocolate 38g"}]}, "rstatus": true}', 'server_status': 'order-started', 'timestamp': '2026-06-12T10:15:34.981210Z'} (ID: 1781259335070-0)
[2026-06-12 15:45:35,423.423 INFO    ] {'order_id': 'TM09202301260612154439372', 'server_response': {'msg': 'Order Data', 'status': True, 'data': {'order_id': 'TM09202301260612154439372', 'bill_amount': '30', 'access_code': '92775897', 'invoice_bill': '30', 'mobile': '8930866683', 'proposed_sku_json': [{'unit_price': 30, 'mrp': '30', 'tray_id': '37', 'offer_id': '', 'skuid': '186084', 'sku_total': 30, 'door_id': '2', 'qty': 1, 'offer_desc': '', 'image_url': 'https://images.tinymart.in/product/186084-5395.png', 'name': 'KITKAT Nestle 4 Finger Chocolate 38g'}]}, 'rstatus': True}, 'server_status': 'order-started'}
[2026-06-12 15:45:35,425.425 INFO    ] 200
[2026-06-12 15:45:35,426.426 INFO    ] {"data":{"order_id":"TM09202301260612154439372","server_response":{"msg":"Order Data","status":true,"data":{"order_id":"TM09202301260612154439372","bill_amount":"30","access_code":"92775897","invoice_bill":"30","mobile":"8930866683","proposed_sku_json":[{"unit_price":30,"mrp":"30","tray_id":"37","offer_id":"","skuid":"186084","sku_total":30,"door_id":"2","qty":1,"offer_desc":"","image_url":"https:\/\/images.tinymart.in\/product\/186084-5395.png","name":"KITKAT Nestle 4 Finger Chocolate 38g"}]},"rstatus":true},"server_status":"order-started"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-12 15:45:35,427.427 INFO    ] {'data': {'order_id': 'TM09202301260612154439372', 'server_response': {'msg': 'Order Data', 'status': True, 'data': {'order_id': 'TM09202301260612154439372', 'bill_amount': '30', 'access_code': '92775897', 'invoice_bill': '30', 'mobile': '8930866683', 'proposed_sku_json': [{'unit_price': 30, 'tray_id': '37', 'offer_desc': '', 'offer_id': '', 'skuid': '186084', 'sku_total': 30, 'door_id': '2', 'qty': 1, 'mrp': '30', 'image_url': 'https://images.tinymart.in/product/186084-5395.png', 'name': 'KITKAT Nestle 4 Finger Chocolate 38g'}]}, 'rstatus': True}, 'server_status': 'order-started'}, 'response': {'msg': 'order updated successfully', 'code': 'ORDER_EXISTS', 'status': True, 'data': 'order updated successfully'}}
[2026-06-12 15:45:35,429.429 INFO    ] 2026-06-12 15:45:35
[2026-06-12 15:45:35,457.457 INFO    ] 200
[2026-06-12 15:45:35,459.459 INFO    ] True
[2026-06-12 15:45:35,543.543 INFO    ] 200
[2026-06-12 15:45:35,545.545 INFO    ] {"error": {"tmessage": "In Progress", "umessage": "In Progress", "data": {}, "code": 20001}, "SectionSKU": {"Header": "Thank you for bearing with us :)", "skus": []}, "rstatus": false, "SectionStatus": {"Header": " Your order is under process  ", "SubHeader": "Please wait while we process your order", "UI_Header": "", "Note": ""}, "status": "False", "voiceNote": "Please Wait", "SectionMain": {"Header": "Processing Order"}}
[2026-06-12 15:45:35,546.546 INFO    ] {'rstatus': False, 'SectionStatus': {'SubHeader': 'Please wait while we process your order', 'Note': '', 'Header': ' Your order is under process  ', 'UI_Header': ''}, 'error': {'code': 20001, 'umessage': 'In Progress', 'data': {}, 'tmessage': 'In Progress'}, 'SectionMain': {'Header': 'Processing Order'}, 'status': 'False', 'SectionSKU': {'skus': [], 'Header': 'Thank you for bearing with us :)'}, 'voiceNote': 'Please Wait'}
[2026-06-12 15:45:35,548.548 INFO    ] *** process_order ***
[2026-06-12 15:45:36,697.697 INFO    ] 200
[2026-06-12 15:45:36,699.699 INFO    ] {"delay": 0, "SectionSKU": {"Header": "Thank you for bearing with us :)", "skus": []}, "rstatus": true, "SectionStatus": {"Header": " Your order is under process  ", "SubHeader": "Please wait while we process your order", "UI_Header": "", "Note": ""}, "status": "True", "voiceNote": "Please Wait", "SectionMain": {"Header": "Processing Order"}}
[2026-06-12 15:45:36,700.700 INFO    ] {'rstatus': True, 'SectionStatus': {'SubHeader': 'Please wait while we process your order', 'Note': '', 'Header': ' Your order is under process  ', 'UI_Header': ''}, 'SectionMain': {'Header': 'Processing Order'}, 'status': 'True', 'SectionSKU': {'skus': [], 'Header': 'Thank you for bearing with us :)'}, 'voiceNote': 'Please Wait', 'delay': 0}
[2026-06-12 15:45:36,702.702 INFO    ] *** process_order ***
[2026-06-12 15:45:36,703.703 INFO    ] publish_status: order_id=TM09202301260612154439372
[2026-06-12 15:45:36,704.704 INFO    ] [publish_status] Adding message to stream: order:TM09202301260612154439372
[2026-06-12 15:45:36,787.787 INFO    ] [publish_status] Message added to stream with ID: 1781259336807-0
[2026-06-12 15:45:36,788.788 INFO    ] Published to order:TM09202301260612154439372: {'order_id': 'TM09202301260612154439372', 'server_response': '{"rstatus": true, "SectionStatus": {"SubHeader": "You can pull the door now.", "Note": "", "Header": " Your order is under process  ", "UI_Header": ""}, "SectionMain": {"Header": "Processing Order"}, "status": "True", "SectionSKU": {"skus": [], "Header": "Thank you for bearing with us :)"}, "voiceNote": "Door is open...", "delay": 0}', 'server_status': 'doorOpened'} (ID: 1781259336807-0)
[2026-06-12 15:45:37,845.845 INFO    ] 2026-06-12 15:45:37
[2026-06-12 15:45:37,849.849 INFO    ] publish_status: order_id=TM09202301260612154439372
[2026-06-12 15:45:37,852.852 INFO    ] [publish_status] Adding message to stream: order:TM09202301260612154439372
[2026-06-12 15:45:37,948.948 INFO    ] [publish_status] Message added to stream with ID: 1781259337968-0
[2026-06-12 15:45:37,950.950 INFO    ] Published to order:TM09202301260612154439372: {'order_id': 'TM09202301260612154439372', 'server_response': '{"rstatus": true, "SectionStatus": {"SubHeader": "Please wait while we process your order", "Note": "", "Header": " Your order is under process  ", "UI_Header": ""}, "SectionMain": {"Header": "Processing Order"}, "status": "True", "SectionSKU": {"skus": [], "Header": "Thank you for bearing with us :)"}, "voiceNote": "Please Wait", "delay": 0}', 'server_status': 'processOrder', 'timestamp': '2026-06-12T10:15:37.847014Z'} (ID: 1781259337968-0)
[2026-06-12 15:45:38,086.086 INFO    ] {'order_id': 'TM09202301260612154439372', 'server_response': {'rstatus': True, 'SectionStatus': {'SubHeader': 'Please wait while we process your order', 'Note': '', 'Header': ' Your order is under process  ', 'UI_Header': ''}, 'SectionMain': {'Header': 'Processing Order'}, 'status': 'True', 'SectionSKU': {'skus': [], 'Header': 'Thank you for bearing with us :)'}, 'voiceNote': 'Please Wait', 'delay': 0}, 'server_status': 'processOrder'}
[2026-06-12 15:45:38,087.087 INFO    ] 200
[2026-06-12 15:45:38,088.088 INFO    ] {"data":{"order_id":"TM09202301260612154439372","server_response":{"rstatus":true,"SectionStatus":{"SubHeader":"Please wait while we process your order","Note":"","Header":" Your order is under process  ","UI_Header":""},"SectionMain":{"Header":"Processing Order"},"status":"true","SectionSKU":{"skus":[],"Header":"Thank you for bearing with us :)"},"voiceNote":"Please Wait","delay":0},"server_status":"processOrder"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-12 15:45:38,090.090 INFO    ] {'data': {'order_id': 'TM09202301260612154439372', 'server_response': {'rstatus': True, 'SectionStatus': {'Header': ' Your order is under process  ', 'Note': '', 'SubHeader': 'Please wait while we process your order', 'UI_Header': ''}, 'SectionMain': {'Header': 'Processing Order'}, 'status': 'true', 'SectionSKU': {'Header': 'Thank you for bearing with us :)', 'skus': []}, 'voiceNote': 'Please Wait', 'delay': 0}, 'server_status': 'processOrder'}, 'response': {'msg': 'order updated successfully', 'code': 'ORDER_EXISTS', 'status': True, 'data': 'order updated successfully'}}
[2026-06-12 15:45:38,092.092 INFO    ] 2026-06-12 15:45:38
[2026-06-12 15:45:38,093.093 INFO    ] None
[2026-06-12 15:45:38,094.094 INFO    ] Opening Door now
[2026-06-12 15:45:38,096.096 INFO    ] Opening Door now
[2026-06-12 15:45:38,097.097 INFO    ] 08e5d1063504bf393c26f0bfa436e9f9
[2026-06-12 15:45:38,099.099 INFO    ] 2026-06-12 15:45:38
[2026-06-12 15:45:38,101.101 INFO    ] playing audio file
[2026-06-12 15:45:38,111.111 INFO    ] 2026-06-12 15:45:38
[2026-06-12 15:45:38,113.113 INFO    ] 2026-06-12 15:45:38
[2026-06-12 15:45:41,164.164 INFO    ] 200
[2026-06-12 15:45:41,165.165 INFO    ] {"error": {"tmessage": "In Progress", "umessage": "In Progress", "data": {}, "code": 20001}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"name": "KITKAT Nestle 4 Finger Chocolate 38g", "qty": 1}]}, "rstatus": false, "SectionStatus": {"Header": "Please Close Door 2", "SubHeader": "Please Pick the Products and close the door", "UI_Header": "DOOR 2\nIS \nOPEN \nNOW", "Note": "Please Close the door after picking up products"}, "status": "False", "voiceNote": "Door 2 is open now", "SectionMain": {"Header": "Door Open"}}
[2026-06-12 15:45:41,167.167 INFO    ] {'rstatus': False, 'SectionStatus': {'SubHeader': 'Please Pick the Products and close the door', 'Note': 'Please Close the door after picking up products', 'Header': 'Please Close Door 2', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW'}, 'error': {'code': 20001, 'umessage': 'In Progress', 'data': {}, 'tmessage': 'In Progress'}, 'SectionMain': {'Header': 'Door Open'}, 'status': 'False', 'SectionSKU': {'skus': [{'qty': 1, 'name': 'KITKAT Nestle 4 Finger Chocolate 38g'}], 'Header': 'Pick the below items from the door'}, 'voiceNote': 'Door 2 is open now'}
[2026-06-12 15:45:44,346.346 INFO    ] 200
[2026-06-12 15:45:44,348.348 INFO    ] {"error": {"tmessage": "In Progress", "umessage": "In Progress", "data": {}, "code": 20001}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"name": "KITKAT Nestle 4 Finger Chocolate 38g", "qty": 1}]}, "rstatus": false, "SectionStatus": {"Header": "Please Close Door 2", "SubHeader": "Please Pick the Products and close the door", "UI_Header": "DOOR 2\nIS \nOPEN \nNOW", "Note": "Please Close the door after picking up products"}, "status": "False", "voiceNote": "Please close door 2", "SectionMain": {"Header": "Door Open"}}
[2026-06-12 15:45:44,350.350 INFO    ] {'rstatus': False, 'SectionStatus': {'SubHeader': 'Please Pick the Products and close the door', 'Note': 'Please Close the door after picking up products', 'Header': 'Please Close Door 2', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW'}, 'error': {'code': 20001, 'umessage': 'In Progress', 'data': {}, 'tmessage': 'In Progress'}, 'SectionMain': {'Header': 'Door Open'}, 'status': 'False', 'SectionSKU': {'skus': [{'qty': 1, 'name': 'KITKAT Nestle 4 Finger Chocolate 38g'}], 'Header': 'Pick the below items from the door'}, 'voiceNote': 'Please close door 2'}
[2026-06-12 15:45:47,380.380 INFO    ] 200
[2026-06-12 15:45:47,381.381 INFO    ] {"error": {"tmessage": "In Progress", "umessage": "In Progress", "data": {}, "code": 20001}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"name": "KITKAT Nestle 4 Finger Chocolate 38g", "qty": 1}]}, "rstatus": false, "SectionStatus": {"Header": "Please Close Door 2", "SubHeader": "Please Pick the Products and close the door", "UI_Header": "DOOR 2\nIS \nOPEN \nNOW", "Note": "Please Close the door after picking up products"}, "status": "False", "voiceNote": "Please close door 2", "SectionMain": {"Header": "Door Open"}}
[2026-06-12 15:45:47,383.383 INFO    ] Please close door 2
[2026-06-12 15:45:47,384.384 INFO    ] Please close door 2
[2026-06-12 15:45:47,385.385 INFO    ] 758e46684c76e887a5f58d4738034bed
[2026-06-12 15:45:47,387.387 INFO    ] 2026-06-12 15:45:47
[2026-06-12 15:45:47,388.388 INFO    ] playing audio file
[2026-06-12 15:45:47,398.398 INFO    ] 2026-06-12 15:45:47
[2026-06-12 15:45:47,400.400 INFO    ] publish_status: order_id=TM09202301260612154439372
[2026-06-12 15:45:47,402.402 INFO    ] [publish_status] Adding message to stream: order:TM09202301260612154439372
[2026-06-12 15:45:47,500.500 INFO    ] [publish_status] Message added to stream with ID: 1781259347521-0
[2026-06-12 15:45:47,502.502 INFO    ] Published to order:TM09202301260612154439372: {'order_id': 'TM09202301260612154439372', 'server_response': '{"rstatus": false, "SectionStatus": {"SubHeader": "Please Pick the Products and close the door", "Note": "Please Close the door after picking up products", "Header": "Please Close Door 2", "UI_Header": "DOOR 2\\nIS \\nOPEN \\nNOW"}, "error": {"code": 20001, "umessage": "In Progress", "data": {}, "tmessage": "In Progress"}, "SectionMain": {"Header": "Door Open"}, "status": "False", "SectionSKU": {"skus": [{"qty": 1, "name": "KITKAT Nestle 4 Finger Chocolate 38g"}], "Header": "Pick the below items from the door"}, "voiceNote": "Please close door 2"}', 'server_status': 'OrderStatus', 'timestamp': '2026-06-12T10:15:47.399610Z'} (ID: 1781259347521-0)
[2026-06-12 15:45:47,923.923 INFO    ] {'order_id': 'TM09202301260612154439372', 'server_response': {'rstatus': False, 'SectionStatus': {'SubHeader': 'Please Pick the Products and close the door', 'Note': 'Please Close the door after picking up products', 'Header': 'Please Close Door 2', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW'}, 'error': {'code': 20001, 'umessage': 'In Progress', 'data': {}, 'tmessage': 'In Progress'}, 'SectionMain': {'Header': 'Door Open'}, 'status': 'False', 'SectionSKU': {'skus': [{'qty': 1, 'name': 'KITKAT Nestle 4 Finger Chocolate 38g'}], 'Header': 'Pick the below items from the door'}, 'voiceNote': 'Please close door 2'}, 'server_status': 'OrderStatus'}
[2026-06-12 15:45:47,925.925 INFO    ] 200
[2026-06-12 15:45:47,926.926 INFO    ] {"data":{"order_id":"TM09202301260612154439372","server_response":{"rstatus":false,"SectionStatus":{"SubHeader":"Please Pick the Products and close the door","Note":"Please Close the door after picking up products","Header":"Please Close Door 2","UI_Header":"DOOR 2\nIS \nOPEN \nNOW"},"error":{"code":20001,"umessage":"In Progress","data":[],"tmessage":"In Progress"},"SectionMain":{"Header":"Door Open"},"status":"false","SectionSKU":{"skus":[{"qty":1,"name":"KITKAT Nestle 4 Finger Chocolate 38g"}],"Header":"Pick the below items from the door"},"voiceNote":"Please close door 2"},"server_status":"OrderStatus"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-12 15:45:47,928.928 INFO    ] {'data': {'order_id': 'TM09202301260612154439372', 'server_response': {'rstatus': False, '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'}, 'error': {'code': 20001, 'tmessage': 'In Progress', 'data': [], 'umessage': 'In Progress'}, 'SectionMain': {'Header': 'Door Open'}, 'status': 'false', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'KITKAT Nestle 4 Finger Chocolate 38g'}]}, 'voiceNote': 'Please close door 2'}, 'server_status': 'OrderStatus'}, 'response': {'msg': 'order updated successfully', 'code': 'ORDER_EXISTS', 'status': True, 'data': 'order updated successfully'}}
[2026-06-12 15:45:47,930.930 INFO    ] {'rstatus': False, 'SectionStatus': {'SubHeader': 'Please Pick the Products and close the door', 'Note': 'Please Close the door after picking up products', 'Header': 'Please Close Door 2', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW'}, 'error': {'code': 20001, 'umessage': 'In Progress', 'data': {}, 'tmessage': 'In Progress'}, 'SectionMain': {'Header': 'Door Open'}, 'status': 'False', 'SectionSKU': {'skus': [{'qty': 1, 'name': 'KITKAT Nestle 4 Finger Chocolate 38g'}], 'Header': 'Pick the below items from the door'}, 'voiceNote': 'Please close door 2'}
[2026-06-12 15:45:51,006.006 INFO    ] 200
[2026-06-12 15:45:51,007.007 INFO    ] {"error": {"tmessage": "In Progress", "umessage": "In Progress", "data": {}, "code": 20001}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"name": "KITKAT Nestle 4 Finger Chocolate 38g", "qty": 1}]}, "rstatus": false, "SectionStatus": {"Header": "Please Close Door 2", "SubHeader": "Please Pick the Products and close the door", "UI_Header": "DOOR 2\nIS \nOPEN \nNOW", "Note": "Please Close the door after picking up products"}, "status": "False", "voiceNote": "Please close door 2", "SectionMain": {"Header": "Door Open"}}
[2026-06-12 15:45:51,009.009 INFO    ] {'rstatus': False, 'SectionStatus': {'SubHeader': 'Please Pick the Products and close the door', 'Note': 'Please Close the door after picking up products', 'Header': 'Please Close Door 2', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW'}, 'error': {'code': 20001, 'umessage': 'In Progress', 'data': {}, 'tmessage': 'In Progress'}, 'SectionMain': {'Header': 'Door Open'}, 'status': 'False', 'SectionSKU': {'skus': [{'qty': 1, 'name': 'KITKAT Nestle 4 Finger Chocolate 38g'}], 'Header': 'Pick the below items from the door'}, 'voiceNote': 'Please close door 2'}
[2026-06-12 15:45:54,043.043 INFO    ] 200
[2026-06-12 15:45:54,044.044 INFO    ] {"delay": 100, "SectionSKU": {"Header": "If you like us, tell others... else tell us", "skus": []}, "rstatus": true, "SectionStatus": {"Header": " Order is complete ", "SubHeader": "Please wait for invoice to generate", "UI_Header": "", "Note": "If any due amount, clear at https://go.tinymart.in"}, "status": "True", "voiceNote": "Transaction Completed", "SectionMain": {"Header": "Door Closed"}}
[2026-06-12 15:45:54,046.046 INFO    ] {'rstatus': True, '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': ''}, 'SectionMain': {'Header': 'Door Closed'}, 'status': 'True', 'SectionSKU': {'skus': [], 'Header': 'If you like us, tell others... else tell us'}, 'voiceNote': 'Transaction Completed', 'delay': 100}
[2026-06-12 15:45:54,048.048 INFO    ] 2026-06-12 15:45:54
[2026-06-12 15:45:54,049.049 INFO    ] Order Completed 
[2026-06-12 15:45:54,051.051 INFO    ] Order Completed 
[2026-06-12 15:45:54,052.052 INFO    ] 193c8a8cf3bf490ccfe0b23598544a83
[2026-06-12 15:45:54,054.054 INFO    ] 2026-06-12 15:45:54
[2026-06-12 15:45:54,055.055 INFO    ] playing audio file
[2026-06-12 15:45:54,065.065 INFO    ] 2026-06-12 15:45:54
[2026-06-12 15:45:54,067.067 INFO    ] {'rstatus': True, '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': ''}, 'SectionMain': {'Header': 'Door Closed'}, 'status': 'True', 'SectionSKU': {'skus': [], 'Header': 'If you like us, tell others... else tell us'}, 'voiceNote': 'Transaction Completed', 'delay': 100}
[2026-06-12 15:45:54,069.069 INFO    ] 2026-06-12 15:45:54
[2026-06-12 15:45:54,437.437 INFO    ] 200
[2026-06-12 15:45:54,443.443 INFO    ] {"anomaly": 0, "skus": [{"image_url": "https://images.tinymart.in/product/186084-5395.png", "qty": 1, "skuid": "186084", "unit_price": "30", "tray_id": "37", "sku_total": 30.0, "mrp": "30", "door_id": "", "name": "KITKAT Nestle 4 Finger Chocolate 38g per peice"}], "total_amount": 30.0, "orderId": "TM09202301260612154439372", "res": "True", "rstatus": true, "logic": "WBL"}
[2026-06-12 15:45:54,446.446 INFO    ] {'total_amount': 30.0, 'anomaly': 0, 'skus': [{'unit_price': '30', 'tray_id': '37', 'name': 'KITKAT Nestle 4 Finger Chocolate 38g per peice', 'skuid': '186084', 'sku_total': 30.0, 'door_id': '', 'qty': 1, 'mrp': '30', 'image_url': 'https://images.tinymart.in/product/186084-5395.png'}], 'rstatus': True, 'res': 'True', 'orderId': 'TM09202301260612154439372', 'logic': 'WBL'}
[2026-06-12 15:45:54,449.449 INFO    ] {'total_amount': 30.0, 'anomaly': 0, 'skus': [{'unit_price': '30', 'tray_id': '37', 'name': 'KITKAT Nestle 4 Finger Chocolate 38g per peice', 'skuid': '186084', 'sku_total': 30.0, 'door_id': '', 'qty': 1, 'mrp': '30', 'image_url': 'https://images.tinymart.in/product/186084-5395.png'}], 'rstatus': True, 'res': 'True', 'orderId': 'TM09202301260612154439372', 'logic': 'WBL'}
[2026-06-12 15:45:54,452.452 INFO    ] 2026-06-12 15:45:54
[2026-06-12 15:45:54,455.455 INFO    ] 2026-06-12 15:45:54
[2026-06-12 15:45:54,458.458 INFO    ] 30
[2026-06-12 15:45:54,461.461 INFO    ] 2026-06-12 15:45:54
[2026-06-12 15:45:54,462.462 INFO    ] 2026-06-12 15:45:54
[2026-06-12 15:45:54,464.464 INFO    ]  Your Bill Amount is 30
[2026-06-12 15:45:54,465.465 INFO    ]  Your Bill Amount is 30
[2026-06-12 15:45:54,467.467 INFO    ] 83d7bc98008395bac4df4c2fc2d248eb
[2026-06-12 15:45:54,469.469 INFO    ] 2026-06-12 15:45:54
[2026-06-12 15:45:54,470.470 INFO    ] playing audio file
[2026-06-12 15:45:54,481.481 INFO    ] 2026-06-12 15:45:54
[2026-06-12 15:45:54,483.483 INFO    ] 2026-06-12 15:45:54
[2026-06-12 15:45:54,485.485 INFO    ] publish_status: order_id=TM09202301260612154439372
[2026-06-12 15:45:54,487.487 INFO    ] [publish_status] Adding message to stream: order:TM09202301260612154439372
[2026-06-12 15:45:54,557.557 INFO    ] [publish_status] Message added to stream with ID: 1781259354578-0
[2026-06-12 15:45:54,559.559 INFO    ] Published to order:TM09202301260612154439372: {'order_id': 'TM09202301260612154439372', 'server_response': '{"total_amount": 30.0, "anomaly": 0, "skus": [{"unit_price": "30", "tray_id": "37", "name": "KITKAT Nestle 4 Finger Chocolate 38g per peice", "skuid": "186084", "sku_total": 30.0, "door_id": "", "qty": 1, "mrp": "30", "image_url": "https://images.tinymart.in/product/186084-5395.png"}], "rstatus": true, "res": "True", "orderId": "TM09202301260612154439372", "logic": "WBL"}', 'server_status': 'invoiceOrder', 'timestamp': '2026-06-12T10:15:54.484572Z'} (ID: 1781259354578-0)
[2026-06-12 15:45:55,470.470 INFO    ] {'order_id': 'TM09202301260612154439372', 'server_response': {'total_amount': 30.0, 'anomaly': 0, 'skus': [{'unit_price': '30', 'tray_id': '37', 'name': 'KITKAT Nestle 4 Finger Chocolate 38g per peice', 'skuid': '186084', 'sku_total': 30.0, 'door_id': '', 'qty': 1, 'mrp': '30', 'image_url': 'https://images.tinymart.in/product/186084-5395.png'}], 'rstatus': True, 'res': 'True', 'orderId': 'TM09202301260612154439372', 'logic': 'WBL'}, 'server_status': 'invoiceOrder'}
[2026-06-12 15:45:55,473.473 INFO    ] 200
[2026-06-12 15:45:55,476.476 INFO    ] {"data":{"order_id":"TM09202301260612154439372","server_response":{"total_amount":30,"anomaly":0,"skus":[{"unit_price":"30","tray_id":"37","name":"KITKAT Nestle 4 Finger Chocolate 38g per peice","skuid":"186084","sku_total":30,"door_id":"","qty":1,"mrp":"30","image_url":"https:\/\/images.tinymart.in\/product\/186084-5395.png"}],"rstatus":true,"res":"true","orderId":"TM09202301260612154439372","logic":"WBL"},"server_status":"invoiceOrder"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-12 15:45:55,480.480 INFO    ] {'data': {'order_id': 'TM09202301260612154439372', 'server_response': {'total_amount': 30, 'anomaly': 0, 'skus': [{'unit_price': '30', 'sku_total': 30, 'name': 'KITKAT Nestle 4 Finger Chocolate 38g per peice', 'skuid': '186084', 'tray_id': '37', 'door_id': '', 'qty': 1, 'mrp': '30', 'image_url': 'https://images.tinymart.in/product/186084-5395.png'}], 'logic': 'WBL', 'rstatus': True, 'orderId': 'TM09202301260612154439372', 'res': 'true'}, 'server_status': 'invoiceOrder'}, 'response': {'msg': 'order updated successfully', 'code': 'ORDER_EXISTS', 'status': True, 'data': 'order updated successfully'}}
[2026-06-12 15:45:55,483.483 INFO    ] {'data': {'order_id': 'TM09202301260612154439372', 'server_response': {'total_amount': 30, 'anomaly': 0, 'skus': [{'unit_price': '30', 'sku_total': 30, 'name': 'KITKAT Nestle 4 Finger Chocolate 38g per peice', 'skuid': '186084', 'tray_id': '37', 'door_id': '', 'qty': 1, 'mrp': '30', 'image_url': 'https://images.tinymart.in/product/186084-5395.png'}], 'logic': 'WBL', 'rstatus': True, 'orderId': 'TM09202301260612154439372', 'res': 'true'}, 'server_status': 'invoiceOrder'}, 'response': {'msg': 'order updated successfully', 'code': 'ORDER_EXISTS', 'status': True, 'data': 'order updated successfully'}}
[2026-06-12 15:45:55,486.486 INFO    ] 2026-06-12 15:45:55
[2026-06-12 15:45:56,580.580 INFO    ] 200
[2026-06-12 15:45:56,582.582 INFO    ] {"order_items": [], "tray_sync": ["no_entry", "no_entry", "no_entry", "no_entry", "no_entry", "no_entry"], "orders": [], "order_items_synced": [], "orders_synced": [], "orders_data_synced": [], "status": true, "orders_data": [], "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"]}
[2026-06-12 15:45:56,583.583 INFO    ] 2026-06-12 15:45:56
[2026-06-12 15:45:56,649.649 INFO    ] 200
[2026-06-12 15:45:56,651.651 INFO    ] True
[2026-06-12 15:45:56,652.652 INFO    ] cleanup_start_order_file_after_processing: order_id=TM09202301260612154439372
[2026-06-12 15:45:56,654.654 INFO    ] start order file deleted
[2026-06-12 15:45:56,656.656 INFO    ] Checking for system updates...
[2026-06-12 15:45:56,675.675 INFO    ] 200
[2026-06-12 15:45:56,676.676 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:45:56,710.710 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 15:45:56,712.712 INFO    ] No update needed
[2026-06-12 15:45:56,713.713 INFO    ] Checking for camera pi updates...
[2026-06-12 15:45:56,732.732 INFO    ] 200
[2026-06-12 15:45:56,733.733 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:45:56,758.758 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 15:45:56,814.814 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 15:45:56,815.815 INFO    ] No camera update needed
[2026-06-12 15:45:56,816.816 INFO    ] Script finished. Safe exiting...
[2026-06-12 15:45:56,817.817 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 15:45:56,821.821 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 15:45:56,823.823 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 15:45:58,862.862 INFO    ] ================================================
[2026-06-12 15:45:58,878.878 INFO    ] Launching Daemon at Fri Jun 12 15:45:58 IST 2026
[2026-06-12 15:45:58,888.888 INFO    ] ================================================
[2026-06-12 15:45:59,226.226 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 15:45:59
[2026-06-12 15:45:59,539.539 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 15:45:59,676.676 INFO    ] Initializing speech engine...
[2026-06-12 15:45:59,687.687 INFO    ] 2026-06-12 15:45:59
[2026-06-12 15:45:59,891.891 INFO    ] 2026-06-12 15:45:59
[2026-06-12 15:45:59,920.920 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 15:46:00,104.104 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 15:46:00,113.113 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 15:46:00,243.243 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 15:46:00,310.310 INFO    ] time= 12/06/2026 15:46:00
[2026-06-12 15:46:00,334.334 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 15:46:00,340.340 INFO    ] Checking for existing commands in stream...
[2026-06-12 15:46:00,430.430 INFO    ] No existing commands found in stream
[2026-06-12 15:46:05,440.440 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 15:46:05,443.443 INFO    ] Waiting 1.95 seconds before fallback handling...
[2026-06-12 15:46:07,738.738 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 15:46:07,740.740 INFO    ] Checking for system updates...
[2026-06-12 15:46:07,760.760 INFO    ] 200
[2026-06-12 15:46:07,761.761 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:46:07,792.792 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 15:46:07,793.793 INFO    ] No update needed
[2026-06-12 15:46:07,794.794 INFO    ] Checking for camera pi updates...
[2026-06-12 15:46:07,813.813 INFO    ] 200
[2026-06-12 15:46:07,815.815 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:46:07,837.837 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 15:46:07,885.885 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 15:46:07,886.886 INFO    ] No camera update needed
[2026-06-12 15:46:07,887.887 INFO    ] Script finished. Safe exiting...
[2026-06-12 15:46:07,889.889 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 15:46:07,892.892 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 15:46:07,895.895 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 15:46:09,933.933 INFO    ] ================================================
[2026-06-12 15:46:09,950.950 INFO    ] Launching Daemon at Fri Jun 12 15:46:09 IST 2026
[2026-06-12 15:46:09,962.962 INFO    ] ================================================
[2026-06-12 15:46:10,319.319 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 15:46:10
[2026-06-12 15:46:10,660.660 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 15:46:10,814.814 INFO    ] Initializing speech engine...
[2026-06-12 15:46:10,819.819 INFO    ] 2026-06-12 15:46:10
[2026-06-12 15:46:11,024.024 INFO    ] 2026-06-12 15:46:11
[2026-06-12 15:46:11,054.054 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 15:46:11,238.238 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 15:46:11,241.241 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 15:46:11,388.388 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 15:46:11,446.446 INFO    ] time= 12/06/2026 15:46:11
[2026-06-12 15:46:11,469.469 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 15:46:11,475.475 INFO    ] Checking for existing commands in stream...
[2026-06-12 15:46:11,566.566 INFO    ] No existing commands found in stream
[2026-06-12 15:46:16,581.581 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 15:46:16,584.584 INFO    ] Waiting 2.00 seconds before fallback handling...
[2026-06-12 15:46:18,974.974 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 15:46:18,976.976 INFO    ] Checking for system updates...
[2026-06-12 15:46:18,997.997 INFO    ] 200
[2026-06-12 15:46:18,998.998 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:46:19,033.033 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 15:46:19,034.034 INFO    ] No update needed
[2026-06-12 15:46:19,035.035 INFO    ] Checking for camera pi updates...
[2026-06-12 15:46:19,054.054 INFO    ] 200
[2026-06-12 15:46:19,056.056 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:46:19,080.080 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 15:46:19,122.122 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 15:46:19,123.123 INFO    ] No camera update needed
[2026-06-12 15:46:19,125.125 INFO    ] Script finished. Safe exiting...
[2026-06-12 15:46:19,126.126 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 15:46:19,129.129 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 15:46:19,132.132 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 15:46:21,171.171 INFO    ] ================================================
[2026-06-12 15:46:21,187.187 INFO    ] Launching Daemon at Fri Jun 12 15:46:21 IST 2026
[2026-06-12 15:46:21,199.199 INFO    ] ================================================
[2026-06-12 15:46:21,552.552 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 15:46:21
[2026-06-12 15:46:21,891.891 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 15:46:22,046.046 INFO    ] Initializing speech engine...
[2026-06-12 15:46:22,050.050 INFO    ] 2026-06-12 15:46:22
[2026-06-12 15:46:22,256.256 INFO    ] 2026-06-12 15:46:22
[2026-06-12 15:46:22,285.285 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 15:46:22,434.434 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 15:46:22,471.471 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 15:46:22,630.630 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 15:46:22,678.678 INFO    ] time= 12/06/2026 15:46:22
[2026-06-12 15:46:22,700.700 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 15:46:22,707.707 INFO    ] Checking for existing commands in stream...
[2026-06-12 15:46:22,773.773 INFO    ] No existing commands found in stream
[2026-06-12 15:46:27,783.783 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 15:46:27,786.786 INFO    ] Waiting 0.88 seconds before fallback handling...
[2026-06-12 15:46:29,073.073 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 15:46:29,075.075 INFO    ] Checking for system updates...
[2026-06-12 15:46:29,097.097 INFO    ] 200
[2026-06-12 15:46:29,098.098 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:46:29,130.130 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 15:46:29,131.131 INFO    ] No update needed
[2026-06-12 15:46:29,133.133 INFO    ] Checking for camera pi updates...
[2026-06-12 15:46:29,153.153 INFO    ] 200
[2026-06-12 15:46:29,155.155 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:46:29,182.182 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 15:46:29,223.223 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 15:46:29,224.224 INFO    ] No camera update needed
[2026-06-12 15:46:29,226.226 INFO    ] Script finished. Safe exiting...
[2026-06-12 15:46:29,227.227 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 15:46:29,230.230 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 15:46:29,233.233 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 15:46:31,274.274 INFO    ] ================================================
[2026-06-12 15:46:31,290.290 INFO    ] Launching Daemon at Fri Jun 12 15:46:31 IST 2026
[2026-06-12 15:46:31,301.301 INFO    ] ================================================
[2026-06-12 15:46:31,697.697 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 15:46:31
[2026-06-12 15:46:32,080.080 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 15:46:32,229.229 INFO    ] Initializing speech engine...
[2026-06-12 15:46:32,245.245 INFO    ] 2026-06-12 15:46:32
[2026-06-12 15:46:32,459.459 INFO    ] 2026-06-12 15:46:32
[2026-06-12 15:46:32,489.489 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 15:46:32,676.676 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 15:46:32,686.686 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 15:46:32,887.887 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 15:46:32,909.909 INFO    ] time= 12/06/2026 15:46:32
[2026-06-12 15:46:32,916.916 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 15:46:32,917.917 INFO    ] Checking for existing commands in stream...
[2026-06-12 15:46:32,984.984 INFO    ] No existing commands found in stream
[2026-06-12 15:46:37,994.994 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 15:46:38,000.000 INFO    ] Waiting 1.81 seconds before fallback handling...
[2026-06-12 15:46:40,155.155 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 15:46:40,157.157 INFO    ] Checking for system updates...
[2026-06-12 15:46:40,178.178 INFO    ] 200
[2026-06-12 15:46:40,180.180 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:46:40,209.209 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 15:46:40,211.211 INFO    ] No update needed
[2026-06-12 15:46:40,212.212 INFO    ] Checking for camera pi updates...
[2026-06-12 15:46:40,232.232 INFO    ] 200
[2026-06-12 15:46:40,233.233 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:46:40,256.256 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 15:46:40,290.290 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 15:46:40,291.291 INFO    ] No camera update needed
[2026-06-12 15:46:40,293.293 INFO    ] Script finished. Safe exiting...
[2026-06-12 15:46:40,294.294 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 15:46:40,298.298 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 15:46:40,301.301 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 15:46:42,339.339 INFO    ] ================================================
[2026-06-12 15:46:42,355.355 INFO    ] Launching Daemon at Fri Jun 12 15:46:42 IST 2026
[2026-06-12 15:46:42,366.366 INFO    ] ================================================
[2026-06-12 15:46:42,689.689 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 15:46:42
[2026-06-12 15:46:43,002.002 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 15:46:43,136.136 INFO    ] Initializing speech engine...
[2026-06-12 15:46:43,145.145 INFO    ] 2026-06-12 15:46:43
[2026-06-12 15:46:43,368.368 INFO    ] 2026-06-12 15:46:43
[2026-06-12 15:46:43,399.399 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 15:46:43,537.537 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 15:46:43,599.599 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 15:46:43,754.754 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 15:46:43,818.818 INFO    ] time= 12/06/2026 15:46:43
[2026-06-12 15:46:43,843.843 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 15:46:43,855.855 INFO    ] Checking for existing commands in stream...
[2026-06-12 15:46:43,929.929 INFO    ] No existing commands found in stream
[2026-06-12 15:46:48,940.940 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 15:46:48,943.943 INFO    ] Waiting 0.29 seconds before fallback handling...
[2026-06-12 15:46:49,628.628 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 15:46:49,630.630 INFO    ] Checking for system updates...
[2026-06-12 15:46:49,650.650 INFO    ] 200
[2026-06-12 15:46:49,651.651 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:46:49,683.683 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 15:46:49,684.684 INFO    ] No update needed
[2026-06-12 15:46:49,685.685 INFO    ] Checking for camera pi updates...
[2026-06-12 15:46:49,705.705 INFO    ] 200
[2026-06-12 15:46:49,706.706 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:46:49,729.729 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 15:46:49,844.844 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 15:46:49,845.845 INFO    ] No camera update needed
[2026-06-12 15:46:49,847.847 INFO    ] Script finished. Safe exiting...
[2026-06-12 15:46:49,848.848 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 15:46:49,851.851 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 15:46:49,854.854 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 15:46:51,893.893 INFO    ] ================================================
[2026-06-12 15:46:51,909.909 INFO    ] Launching Daemon at Fri Jun 12 15:46:51 IST 2026
[2026-06-12 15:46:51,921.921 INFO    ] ================================================
[2026-06-12 15:46:52,274.274 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 15:46:52
[2026-06-12 15:46:52,609.609 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 15:46:52,749.749 INFO    ] Initializing speech engine...
[2026-06-12 15:46:52,762.762 INFO    ] 2026-06-12 15:46:52
[2026-06-12 15:46:52,975.975 INFO    ] 2026-06-12 15:46:52
[2026-06-12 15:46:53,004.004 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 15:46:53,190.190 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 15:46:53,200.200 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 15:46:53,332.332 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 15:46:53,399.399 INFO    ] time= 12/06/2026 15:46:53
[2026-06-12 15:46:53,424.424 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 15:46:53,431.431 INFO    ] Checking for existing commands in stream...
[2026-06-12 15:46:53,523.523 INFO    ] No existing commands found in stream
[2026-06-12 15:46:58,532.532 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 15:46:58,536.536 INFO    ] Waiting 3.85 seconds before fallback handling...
[2026-06-12 15:47:02,765.765 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 15:47:02,767.767 INFO    ] Checking for system updates...
[2026-06-12 15:47:02,788.788 INFO    ] 200
[2026-06-12 15:47:02,789.789 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:47:02,820.820 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 15:47:02,821.821 INFO    ] No update needed
[2026-06-12 15:47:02,822.822 INFO    ] Checking for camera pi updates...
[2026-06-12 15:47:02,842.842 INFO    ] 200
[2026-06-12 15:47:02,843.843 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:47:02,867.867 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 15:47:02,924.924 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 15:47:02,925.925 INFO    ] No camera update needed
[2026-06-12 15:47:02,926.926 INFO    ] Script finished. Safe exiting...
[2026-06-12 15:47:02,928.928 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 15:47:02,931.931 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 15:47:02,934.934 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 15:47:04,974.974 INFO    ] ================================================
[2026-06-12 15:47:04,990.990 INFO    ] Launching Daemon at Fri Jun 12 15:47:04 IST 2026
[2026-06-12 15:47:05,002.002 INFO    ] ================================================
[2026-06-12 15:47:05,364.364 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 15:47:05
[2026-06-12 15:47:05,696.696 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 15:47:05,847.847 INFO    ] Initializing speech engine...
[2026-06-12 15:47:05,853.853 INFO    ] 2026-06-12 15:47:05
[2026-06-12 15:47:06,062.062 INFO    ] 2026-06-12 15:47:06
[2026-06-12 15:47:06,092.092 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 15:47:06,277.277 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 15:47:06,287.287 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 15:47:06,485.485 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 15:47:06,511.511 INFO    ] time= 12/06/2026 15:47:06
[2026-06-12 15:47:06,517.517 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 15:47:06,519.519 INFO    ] Checking for existing commands in stream...
[2026-06-12 15:47:06,586.586 INFO    ] No existing commands found in stream
[2026-06-12 15:47:11,595.595 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 15:47:11,598.598 INFO    ] Waiting 3.71 seconds before fallback handling...
[2026-06-12 15:47:15,727.727 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 15:47:15,728.728 INFO    ] Checking for system updates...
[2026-06-12 15:47:15,749.749 INFO    ] 200
[2026-06-12 15:47:15,751.751 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:47:15,781.781 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 15:47:15,783.783 INFO    ] No update needed
[2026-06-12 15:47:15,784.784 INFO    ] Checking for camera pi updates...
[2026-06-12 15:47:15,804.804 INFO    ] 200
[2026-06-12 15:47:15,805.805 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:47:15,830.830 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 15:47:15,878.878 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 15:47:15,880.880 INFO    ] No camera update needed
[2026-06-12 15:47:15,881.881 INFO    ] Script finished. Safe exiting...
[2026-06-12 15:47:15,882.882 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 15:47:15,885.885 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 15:47:15,888.888 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 15:47:17,927.927 INFO    ] ================================================
[2026-06-12 15:47:17,942.942 INFO    ] Launching Daemon at Fri Jun 12 15:47:17 IST 2026
[2026-06-12 15:47:17,954.954 INFO    ] ================================================
[2026-06-12 15:47:18,306.306 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 15:47:18
[2026-06-12 15:47:18,620.620 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 15:47:18,762.762 INFO    ] Initializing speech engine...
[2026-06-12 15:47:18,770.770 INFO    ] 2026-06-12 15:47:18
[2026-06-12 15:47:18,992.992 INFO    ] 2026-06-12 15:47:18
[2026-06-12 15:47:19,023.023 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 15:47:19,160.160 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 15:47:19,223.223 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 15:47:19,365.365 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 15:47:19,412.412 INFO    ] time= 12/06/2026 15:47:19
[2026-06-12 15:47:19,451.451 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 15:47:19,474.474 INFO    ] Checking for existing commands in stream...
[2026-06-12 15:47:19,577.577 INFO    ] No existing commands found in stream
[2026-06-12 15:47:24,586.586 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 15:47:24,588.588 INFO    ] Waiting 2.43 seconds before fallback handling...
[2026-06-12 15:47:27,399.399 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 15:47:27,400.400 INFO    ] Checking for system updates...
[2026-06-12 15:47:27,421.421 INFO    ] 200
[2026-06-12 15:47:27,422.422 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:47:27,452.452 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 15:47:27,453.453 INFO    ] No update needed
[2026-06-12 15:47:27,454.454 INFO    ] Checking for camera pi updates...
[2026-06-12 15:47:27,473.473 INFO    ] 200
[2026-06-12 15:47:27,475.475 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:47:27,499.499 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 15:47:27,529.529 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 15:47:27,531.531 INFO    ] No camera update needed
[2026-06-12 15:47:27,532.532 INFO    ] Script finished. Safe exiting...
[2026-06-12 15:47:27,533.533 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 15:47:27,536.536 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 15:47:27,539.539 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 15:47:29,577.577 INFO    ] ================================================
[2026-06-12 15:47:29,593.593 INFO    ] Launching Daemon at Fri Jun 12 15:47:29 IST 2026
[2026-06-12 15:47:29,603.603 INFO    ] ================================================
[2026-06-12 15:47:29,982.982 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 15:47:29
[2026-06-12 15:47:30,321.321 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 15:47:30,467.467 INFO    ] Initializing speech engine...
[2026-06-12 15:47:30,477.477 INFO    ] 2026-06-12 15:47:30
[2026-06-12 15:47:30,686.686 INFO    ] 2026-06-12 15:47:30
[2026-06-12 15:47:30,715.715 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 15:47:30,848.848 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 15:47:30,901.901 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 15:47:31,058.058 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 15:47:31,112.112 INFO    ] time= 12/06/2026 15:47:31
[2026-06-12 15:47:31,134.134 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 15:47:31,140.140 INFO    ] Checking for existing commands in stream...
[2026-06-12 15:47:31,207.207 INFO    ] No existing commands found in stream
[2026-06-12 15:47:36,222.222 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 15:47:36,225.225 INFO    ] Waiting 2.49 seconds before fallback handling...
[2026-06-12 15:47:39,102.102 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 15:47:39,104.104 INFO    ] Checking for system updates...
[2026-06-12 15:47:39,126.126 INFO    ] 200
[2026-06-12 15:47:39,127.127 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:47:39,157.157 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 15:47:39,158.158 INFO    ] No update needed
[2026-06-12 15:47:39,160.160 INFO    ] Checking for camera pi updates...
[2026-06-12 15:47:39,179.179 INFO    ] 200
[2026-06-12 15:47:39,180.180 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:47:39,203.203 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 15:47:39,258.258 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 15:47:39,259.259 INFO    ] No camera update needed
[2026-06-12 15:47:39,261.261 INFO    ] Script finished. Safe exiting...
[2026-06-12 15:47:39,262.262 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 15:47:39,265.265 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 15:47:39,268.268 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 15:47:41,308.308 INFO    ] ================================================
[2026-06-12 15:47:41,323.323 INFO    ] Launching Daemon at Fri Jun 12 15:47:41 IST 2026
[2026-06-12 15:47:41,334.334 INFO    ] ================================================
[2026-06-12 15:47:41,677.677 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 15:47:41
[2026-06-12 15:47:41,990.990 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 15:47:42,125.125 INFO    ] Initializing speech engine...
[2026-06-12 15:47:42,139.139 INFO    ] 2026-06-12 15:47:42
[2026-06-12 15:47:42,358.358 INFO    ] 2026-06-12 15:47:42
[2026-06-12 15:47:42,389.389 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 15:47:42,588.588 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 15:47:42,592.592 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 15:47:42,741.741 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 15:47:42,805.805 INFO    ] time= 12/06/2026 15:47:42
[2026-06-12 15:47:42,839.839 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 15:47:42,846.846 INFO    ] Checking for existing commands in stream...
[2026-06-12 15:47:42,919.919 INFO    ] No existing commands found in stream
[2026-06-12 15:47:47,938.938 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 15:47:47,941.941 INFO    ] Waiting 3.59 seconds before fallback handling...
[2026-06-12 15:47:51,883.883 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 15:47:51,884.884 INFO    ] Checking for system updates...
[2026-06-12 15:47:51,905.905 INFO    ] 200
[2026-06-12 15:47:51,906.906 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:47:51,937.937 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 15:47:51,939.939 INFO    ] No update needed
[2026-06-12 15:47:51,940.940 INFO    ] Checking for camera pi updates...
[2026-06-12 15:47:51,960.960 INFO    ] 200
[2026-06-12 15:47:51,961.961 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:47:51,984.984 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 15:47:52,026.026 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 15:47:52,027.027 INFO    ] No camera update needed
[2026-06-12 15:47:52,029.029 INFO    ] Script finished. Safe exiting...
[2026-06-12 15:47:52,030.030 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 15:47:52,033.033 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 15:47:52,036.036 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 15:47:54,073.073 INFO    ] ================================================
[2026-06-12 15:47:54,090.090 INFO    ] Launching Daemon at Fri Jun 12 15:47:54 IST 2026
[2026-06-12 15:47:54,101.101 INFO    ] ================================================
[2026-06-12 15:47:54,501.501 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 15:47:54
[2026-06-12 15:47:54,841.841 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 15:47:54,993.993 INFO    ] Initializing speech engine...
[2026-06-12 15:47:54,999.999 INFO    ] 2026-06-12 15:47:54
[2026-06-12 15:47:55,206.206 INFO    ] 2026-06-12 15:47:55
[2026-06-12 15:47:55,236.236 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 15:47:55,421.421 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 15:47:55,433.433 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 15:47:55,621.621 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 15:47:55,649.649 INFO    ] time= 12/06/2026 15:47:55
[2026-06-12 15:47:55,655.655 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 15:47:55,657.657 INFO    ] Checking for existing commands in stream...
[2026-06-12 15:47:55,724.724 INFO    ] No existing commands found in stream
[2026-06-12 15:48:00,734.734 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 15:48:00,737.737 INFO    ] Waiting 3.04 seconds before fallback handling...
[2026-06-12 15:48:04,140.140 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 15:48:04,141.141 INFO    ] Checking for system updates...
[2026-06-12 15:48:04,163.163 INFO    ] 200
[2026-06-12 15:48:04,164.164 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:48:04,197.197 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 15:48:04,198.198 INFO    ] No update needed
[2026-06-12 15:48:04,200.200 INFO    ] Checking for camera pi updates...
[2026-06-12 15:48:04,222.222 INFO    ] 200
[2026-06-12 15:48:04,223.223 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:48:04,247.247 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 15:48:04,289.289 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 15:48:04,290.290 INFO    ] No camera update needed
[2026-06-12 15:48:04,292.292 INFO    ] Script finished. Safe exiting...
[2026-06-12 15:48:04,293.293 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 15:48:04,296.296 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 15:48:04,299.299 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 15:48:06,339.339 INFO    ] ================================================
[2026-06-12 15:48:06,354.354 INFO    ] Launching Daemon at Fri Jun 12 15:48:06 IST 2026
[2026-06-12 15:48:06,365.365 INFO    ] ================================================
[2026-06-12 15:48:06,731.731 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 15:48:06
[2026-06-12 15:48:07,043.043 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 15:48:07,176.176 INFO    ] Initializing speech engine...
[2026-06-12 15:48:07,179.179 INFO    ] 2026-06-12 15:48:07
[2026-06-12 15:48:07,408.408 INFO    ] 2026-06-12 15:48:07
[2026-06-12 15:48:07,439.439 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 15:48:07,637.637 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 15:48:07,641.641 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 15:48:07,788.788 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 15:48:07,858.858 INFO    ] time= 12/06/2026 15:48:07
[2026-06-12 15:48:07,886.886 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 15:48:07,893.893 INFO    ] Checking for existing commands in stream...
[2026-06-12 15:48:07,965.965 INFO    ] No existing commands found in stream
[2026-06-12 15:48:12,974.974 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 15:48:12,976.976 INFO    ] Waiting 3.82 seconds before fallback handling...
[2026-06-12 15:48:17,145.145 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 15:48:17,147.147 INFO    ] Checking for system updates...
[2026-06-12 15:48:17,168.168 INFO    ] 200
[2026-06-12 15:48:17,170.170 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:48:17,199.199 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 15:48:17,201.201 INFO    ] No update needed
[2026-06-12 15:48:17,202.202 INFO    ] Checking for camera pi updates...
[2026-06-12 15:48:17,221.221 INFO    ] 200
[2026-06-12 15:48:17,223.223 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:48:17,245.245 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 15:48:17,344.344 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 15:48:17,346.346 INFO    ] No camera update needed
[2026-06-12 15:48:17,347.347 INFO    ] Script finished. Safe exiting...
[2026-06-12 15:48:17,348.348 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 15:48:17,351.351 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 15:48:17,354.354 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 15:48:19,392.392 INFO    ] ================================================
[2026-06-12 15:48:19,408.408 INFO    ] Launching Daemon at Fri Jun 12 15:48:19 IST 2026
[2026-06-12 15:48:19,421.421 INFO    ] ================================================
[2026-06-12 15:48:19,779.779 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 15:48:19
[2026-06-12 15:48:20,089.089 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 15:48:20,221.221 INFO    ] Initializing speech engine...
[2026-06-12 15:48:20,224.224 INFO    ] 2026-06-12 15:48:20
[2026-06-12 15:48:20,443.443 INFO    ] 2026-06-12 15:48:20
[2026-06-12 15:48:20,472.472 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 15:48:20,658.658 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 15:48:20,668.668 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 15:48:20,819.819 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 15:48:20,869.869 INFO    ] time= 12/06/2026 15:48:20
[2026-06-12 15:48:20,891.891 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 15:48:20,896.896 INFO    ] Checking for existing commands in stream...
[2026-06-12 15:48:20,965.965 INFO    ] No existing commands found in stream
[2026-06-12 15:48:25,979.979 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 15:48:25,982.982 INFO    ] Waiting 0.64 seconds before fallback handling...
[2026-06-12 15:48:27,000.000 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 15:48:27,002.002 INFO    ] Checking for system updates...
[2026-06-12 15:48:27,023.023 INFO    ] 200
[2026-06-12 15:48:27,025.025 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:48:27,055.055 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 15:48:27,056.056 INFO    ] No update needed
[2026-06-12 15:48:27,058.058 INFO    ] Checking for camera pi updates...
[2026-06-12 15:48:27,078.078 INFO    ] 200
[2026-06-12 15:48:27,079.079 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:48:27,104.104 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 15:48:27,146.146 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 15:48:27,148.148 INFO    ] No camera update needed
[2026-06-12 15:48:27,149.149 INFO    ] Script finished. Safe exiting...
[2026-06-12 15:48:27,150.150 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 15:48:27,153.153 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 15:48:27,156.156 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 15:48:29,193.193 INFO    ] ================================================
[2026-06-12 15:48:29,208.208 INFO    ] Launching Daemon at Fri Jun 12 15:48:29 IST 2026
[2026-06-12 15:48:29,219.219 INFO    ] ================================================
[2026-06-12 15:48:29,584.584 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 15:48:29
[2026-06-12 15:48:29,928.928 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 15:48:30,082.082 INFO    ] Initializing speech engine...
[2026-06-12 15:48:30,087.087 INFO    ] 2026-06-12 15:48:30
[2026-06-12 15:48:30,295.295 INFO    ] 2026-06-12 15:48:30
[2026-06-12 15:48:30,324.324 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 15:48:30,508.508 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 15:48:30,520.520 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 15:48:30,703.703 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 15:48:30,737.737 INFO    ] time= 12/06/2026 15:48:30
[2026-06-12 15:48:30,743.743 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 15:48:30,744.744 INFO    ] Checking for existing commands in stream...
[2026-06-12 15:48:30,812.812 INFO    ] No existing commands found in stream
[2026-06-12 15:48:35,837.837 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 15:48:35,840.840 INFO    ] Waiting 2.88 seconds before fallback handling...
[2026-06-12 15:48:39,109.109 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 15:48:39,111.111 INFO    ] Checking for system updates...
[2026-06-12 15:48:39,133.133 INFO    ] 200
[2026-06-12 15:48:39,135.135 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:48:39,165.165 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 15:48:39,166.166 INFO    ] No update needed
[2026-06-12 15:48:39,168.168 INFO    ] Checking for camera pi updates...
[2026-06-12 15:48:39,188.188 INFO    ] 200
[2026-06-12 15:48:39,189.189 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:48:39,214.214 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 15:48:39,255.255 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 15:48:39,257.257 INFO    ] No camera update needed
[2026-06-12 15:48:39,258.258 INFO    ] Script finished. Safe exiting...
[2026-06-12 15:48:39,259.259 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 15:48:39,263.263 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 15:48:39,266.266 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 15:48:41,305.305 INFO    ] ================================================
[2026-06-12 15:48:41,321.321 INFO    ] Launching Daemon at Fri Jun 12 15:48:41 IST 2026
[2026-06-12 15:48:41,331.331 INFO    ] ================================================
[2026-06-12 15:48:41,670.670 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 15:48:41
[2026-06-12 15:48:41,989.989 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 15:48:42,134.134 INFO    ] Initializing speech engine...
[2026-06-12 15:48:42,139.139 INFO    ] 2026-06-12 15:48:42
[2026-06-12 15:48:42,341.341 INFO    ] 2026-06-12 15:48:42
[2026-06-12 15:48:42,371.371 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 15:48:42,553.553 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 15:48:42,563.563 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 15:48:42,708.708 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 15:48:42,761.761 INFO    ] time= 12/06/2026 15:48:42
[2026-06-12 15:48:42,783.783 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 15:48:42,790.790 INFO    ] Checking for existing commands in stream...
[2026-06-12 15:48:42,856.856 INFO    ] No existing commands found in stream
[2026-06-12 15:48:47,862.862 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 15:48:47,865.865 INFO    ] Waiting 1.67 seconds before fallback handling...
[2026-06-12 15:48:49,907.907 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 15:48:49,909.909 INFO    ] Checking for system updates...
[2026-06-12 15:48:49,931.931 INFO    ] 200
[2026-06-12 15:48:49,932.932 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:48:49,963.963 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 15:48:49,964.964 INFO    ] No update needed
[2026-06-12 15:48:49,965.965 INFO    ] Checking for camera pi updates...
[2026-06-12 15:48:49,985.985 INFO    ] 200
[2026-06-12 15:48:49,986.986 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:48:50,010.010 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 15:48:50,130.130 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 15:48:50,132.132 INFO    ] No camera update needed
[2026-06-12 15:48:50,133.133 INFO    ] Script finished. Safe exiting...
[2026-06-12 15:48:50,134.134 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 15:48:50,138.138 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 15:48:50,141.141 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 15:48:52,181.181 INFO    ] ================================================
[2026-06-12 15:48:52,197.197 INFO    ] Launching Daemon at Fri Jun 12 15:48:52 IST 2026
[2026-06-12 15:48:52,208.208 INFO    ] ================================================
[2026-06-12 15:48:52,542.542 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 15:48:52
[2026-06-12 15:48:52,855.855 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 15:48:52,986.986 INFO    ] Initializing speech engine...
[2026-06-12 15:48:52,994.994 INFO    ] 2026-06-12 15:48:52
[2026-06-12 15:48:53,206.206 INFO    ] 2026-06-12 15:48:53
[2026-06-12 15:48:53,234.234 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 15:48:53,418.418 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 15:48:53,427.427 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 15:48:53,572.572 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 15:48:53,626.626 INFO    ] time= 12/06/2026 15:48:53
[2026-06-12 15:48:53,649.649 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 15:48:53,655.655 INFO    ] Checking for existing commands in stream...
[2026-06-12 15:48:53,722.722 INFO    ] No existing commands found in stream
[2026-06-12 15:48:58,746.746 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 15:48:58,749.749 INFO    ] Waiting 1.43 seconds before fallback handling...
[2026-06-12 15:49:00,594.594 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 15:49:00,597.597 INFO    ] Checking for system updates...
[2026-06-12 15:49:00,633.633 INFO    ] 200
[2026-06-12 15:49:00,636.636 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:49:00,694.694 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 15:49:00,696.696 INFO    ] No update needed
[2026-06-12 15:49:00,699.699 INFO    ] Checking for camera pi updates...
[2026-06-12 15:49:00,734.734 INFO    ] 200
[2026-06-12 15:49:00,736.736 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:49:00,760.760 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 15:49:00,803.803 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 15:49:00,805.805 INFO    ] No camera update needed
[2026-06-12 15:49:00,806.806 INFO    ] Script finished. Safe exiting...
[2026-06-12 15:49:00,807.807 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 15:49:00,810.810 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 15:49:00,813.813 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 15:49:02,846.846 INFO    ] ================================================
[2026-06-12 15:49:02,856.856 INFO    ] Launching Daemon at Fri Jun 12 15:49:02 IST 2026
[2026-06-12 15:49:02,868.868 INFO    ] ================================================
[2026-06-12 15:49:03,176.176 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 15:49:03
[2026-06-12 15:49:03,487.487 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 15:49:03,628.628 INFO    ] Initializing speech engine...
[2026-06-12 15:49:03,633.633 INFO    ] 2026-06-12 15:49:03
[2026-06-12 15:49:03,836.836 INFO    ] 2026-06-12 15:49:03
[2026-06-12 15:49:03,865.865 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 15:49:04,046.046 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 15:49:04,055.055 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 15:49:04,184.184 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 15:49:04,248.248 INFO    ] time= 12/06/2026 15:49:04
[2026-06-12 15:49:04,275.275 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 15:49:04,281.281 INFO    ] Checking for existing commands in stream...
[2026-06-12 15:49:04,372.372 INFO    ] No existing commands found in stream
[2026-06-12 15:49:09,381.381 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 15:49:09,384.384 INFO    ] Waiting 2.93 seconds before fallback handling...
[2026-06-12 15:49:12,708.708 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 15:49:12,710.710 INFO    ] Checking for system updates...
[2026-06-12 15:49:12,730.730 INFO    ] 200
[2026-06-12 15:49:12,732.732 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:49:12,762.762 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 15:49:12,763.763 INFO    ] No update needed
[2026-06-12 15:49:12,765.765 INFO    ] Checking for camera pi updates...
[2026-06-12 15:49:12,785.785 INFO    ] 200
[2026-06-12 15:49:12,786.786 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:49:12,811.811 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 15:49:12,869.869 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 15:49:12,871.871 INFO    ] No camera update needed
[2026-06-12 15:49:12,872.872 INFO    ] Script finished. Safe exiting...
[2026-06-12 15:49:12,873.873 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 15:49:12,876.876 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 15:49:12,879.879 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 15:49:14,918.918 INFO    ] ================================================
[2026-06-12 15:49:14,933.933 INFO    ] Launching Daemon at Fri Jun 12 15:49:14 IST 2026
[2026-06-12 15:49:14,944.944 INFO    ] ================================================
[2026-06-12 15:49:15,295.295 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 15:49:15
[2026-06-12 15:49:15,611.611 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 15:49:15,743.743 INFO    ] Initializing speech engine...
[2026-06-12 15:49:15,751.751 INFO    ] 2026-06-12 15:49:15
[2026-06-12 15:49:15,962.962 INFO    ] 2026-06-12 15:49:15
[2026-06-12 15:49:15,992.992 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 15:49:16,123.123 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 15:49:16,176.176 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 15:49:16,309.309 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 15:49:16,376.376 INFO    ] time= 12/06/2026 15:49:16
[2026-06-12 15:49:16,403.403 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 15:49:16,410.410 INFO    ] Checking for existing commands in stream...
[2026-06-12 15:49:16,499.499 INFO    ] No existing commands found in stream
[2026-06-12 15:49:21,508.508 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 15:49:21,511.511 INFO    ] Waiting 3.58 seconds before fallback handling...
[2026-06-12 15:49:25,485.485 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 15:49:25,486.486 INFO    ] Checking for system updates...
[2026-06-12 15:49:25,507.507 INFO    ] 200
[2026-06-12 15:49:25,508.508 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:49:25,543.543 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 15:49:25,544.544 INFO    ] No update needed
[2026-06-12 15:49:25,545.545 INFO    ] Checking for camera pi updates...
[2026-06-12 15:49:25,564.564 INFO    ] 200
[2026-06-12 15:49:25,566.566 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:49:25,592.592 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 15:49:25,640.640 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 15:49:25,642.642 INFO    ] No camera update needed
[2026-06-12 15:49:25,643.643 INFO    ] Script finished. Safe exiting...
[2026-06-12 15:49:25,644.644 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 15:49:25,647.647 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 15:49:25,650.650 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 15:49:27,691.691 INFO    ] ================================================
[2026-06-12 15:49:27,707.707 INFO    ] Launching Daemon at Fri Jun 12 15:49:27 IST 2026
[2026-06-12 15:49:27,717.717 INFO    ] ================================================
[2026-06-12 15:49:28,075.075 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 15:49:28
[2026-06-12 15:49:28,385.385 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 15:49:28,514.514 INFO    ] Initializing speech engine...
[2026-06-12 15:49:28,519.519 INFO    ] 2026-06-12 15:49:28
[2026-06-12 15:49:28,736.736 INFO    ] 2026-06-12 15:49:28
[2026-06-12 15:49:28,766.766 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 15:49:28,955.955 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 15:49:28,965.965 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 15:49:29,148.148 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 15:49:29,182.182 INFO    ] time= 12/06/2026 15:49:29
[2026-06-12 15:49:29,188.188 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 15:49:29,195.195 INFO    ] Checking for existing commands in stream...
[2026-06-12 15:49:29,263.263 INFO    ] No existing commands found in stream
[2026-06-12 15:49:34,272.272 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 15:49:34,274.274 INFO    ] Waiting 0.09 seconds before fallback handling...
[2026-06-12 15:49:34,757.757 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 15:49:34,759.759 INFO    ] Checking for system updates...
[2026-06-12 15:49:34,780.780 INFO    ] 200
[2026-06-12 15:49:34,782.782 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:49:34,811.811 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 15:49:34,813.813 INFO    ] No update needed
[2026-06-12 15:49:34,815.815 INFO    ] Checking for camera pi updates...
[2026-06-12 15:49:34,835.835 INFO    ] 200
[2026-06-12 15:49:34,836.836 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:49:34,860.860 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 15:49:34,920.920 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 15:49:34,921.921 INFO    ] No camera update needed
[2026-06-12 15:49:34,922.922 INFO    ] Script finished. Safe exiting...
[2026-06-12 15:49:34,924.924 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 15:49:34,927.927 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 15:49:34,929.929 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 15:49:36,967.967 INFO    ] ================================================
[2026-06-12 15:49:36,982.982 INFO    ] Launching Daemon at Fri Jun 12 15:49:36 IST 2026
[2026-06-12 15:49:36,993.993 INFO    ] ================================================
[2026-06-12 15:49:37,341.341 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 15:49:37
[2026-06-12 15:49:37,675.675 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 15:49:37,827.827 INFO    ] Initializing speech engine...
[2026-06-12 15:49:37,832.832 INFO    ] 2026-06-12 15:49:37
[2026-06-12 15:49:38,037.037 INFO    ] 2026-06-12 15:49:38
[2026-06-12 15:49:38,065.065 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 15:49:38,247.247 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 15:49:38,257.257 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 15:49:38,396.396 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 15:49:38,454.454 INFO    ] time= 12/06/2026 15:49:38
[2026-06-12 15:49:38,477.477 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 15:49:38,483.483 INFO    ] Checking for existing commands in stream...
[2026-06-12 15:49:38,551.551 INFO    ] No existing commands found in stream
[2026-06-12 15:49:43,565.565 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 15:49:43,568.568 INFO    ] Waiting 0.43 seconds before fallback handling...
[2026-06-12 15:49:44,405.405 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 15:49:44,406.406 INFO    ] Checking for system updates...
[2026-06-12 15:49:44,428.428 INFO    ] 200
[2026-06-12 15:49:44,429.429 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:49:44,464.464 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 15:49:44,466.466 INFO    ] No update needed
[2026-06-12 15:49:44,467.467 INFO    ] Checking for camera pi updates...
[2026-06-12 15:49:44,490.490 INFO    ] 200
[2026-06-12 15:49:44,492.492 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:49:44,515.515 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 15:49:44,561.561 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 15:49:44,562.562 INFO    ] No camera update needed
[2026-06-12 15:49:44,564.564 INFO    ] Script finished. Safe exiting...
[2026-06-12 15:49:44,565.565 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 15:49:44,568.568 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 15:49:44,571.571 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 15:49:46,610.610 INFO    ] ================================================
[2026-06-12 15:49:46,625.625 INFO    ] Launching Daemon at Fri Jun 12 15:49:46 IST 2026
[2026-06-12 15:49:46,635.635 INFO    ] ================================================
[2026-06-12 15:49:47,010.010 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 15:49:47
[2026-06-12 15:49:47,321.321 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 15:49:47,451.451 INFO    ] Initializing speech engine...
[2026-06-12 15:49:47,459.459 INFO    ] 2026-06-12 15:49:47
[2026-06-12 15:49:47,670.670 INFO    ] 2026-06-12 15:49:47
[2026-06-12 15:49:47,699.699 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 15:49:47,882.882 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 15:49:47,892.892 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 15:49:48,035.035 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 15:49:48,088.088 INFO    ] time= 12/06/2026 15:49:48
[2026-06-12 15:49:48,111.111 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 15:49:48,116.116 INFO    ] Checking for existing commands in stream...
[2026-06-12 15:49:48,183.183 INFO    ] No existing commands found in stream
[2026-06-12 15:49:53,192.192 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 15:49:53,195.195 INFO    ] Waiting 2.19 seconds before fallback handling...
[2026-06-12 15:49:55,745.745 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 15:49:55,746.746 INFO    ] Checking for system updates...
[2026-06-12 15:49:55,767.767 INFO    ] 200
[2026-06-12 15:49:55,768.768 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:49:55,801.801 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 15:49:55,802.802 INFO    ] No update needed
[2026-06-12 15:49:55,804.804 INFO    ] Checking for camera pi updates...
[2026-06-12 15:49:55,823.823 INFO    ] 200
[2026-06-12 15:49:55,825.825 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:49:55,848.848 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 15:49:55,896.896 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 15:49:55,898.898 INFO    ] No camera update needed
[2026-06-12 15:49:55,899.899 INFO    ] Script finished. Safe exiting...
[2026-06-12 15:49:55,900.900 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 15:49:55,903.903 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 15:49:55,906.906 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 15:49:57,944.944 INFO    ] ================================================
[2026-06-12 15:49:57,959.959 INFO    ] Launching Daemon at Fri Jun 12 15:49:57 IST 2026
[2026-06-12 15:49:57,969.969 INFO    ] ================================================
[2026-06-12 15:49:58,293.293 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 15:49:58
[2026-06-12 15:49:58,604.604 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 15:49:58,733.733 INFO    ] Initializing speech engine...
[2026-06-12 15:49:58,737.737 INFO    ] 2026-06-12 15:49:58
[2026-06-12 15:49:58,952.952 INFO    ] 2026-06-12 15:49:58
[2026-06-12 15:49:58,981.981 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 15:49:59,167.167 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 15:49:59,177.177 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 15:49:59,328.328 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 15:49:59,376.376 INFO    ] time= 12/06/2026 15:49:59
[2026-06-12 15:49:59,399.399 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 15:49:59,405.405 INFO    ] Checking for existing commands in stream...
[2026-06-12 15:49:59,471.471 INFO    ] No existing commands found in stream
[2026-06-12 15:50:04,482.482 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 15:50:04,485.485 INFO    ] Waiting 2.32 seconds before fallback handling...
[2026-06-12 15:50:08,698.698 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 15:50:08,701.701 INFO    ] Checking for system updates...
[2026-06-12 15:50:08,736.736 INFO    ] 200
[2026-06-12 15:50:08,739.739 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:50:08,792.792 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 15:50:08,795.795 INFO    ] No update needed
[2026-06-12 15:50:08,797.797 INFO    ] Checking for camera pi updates...
[2026-06-12 15:50:08,831.831 INFO    ] 200
[2026-06-12 15:50:08,833.833 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:50:08,863.863 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 15:50:09,002.002 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 15:50:09,003.003 INFO    ] No camera update needed
[2026-06-12 15:50:09,004.004 INFO    ] Script finished. Safe exiting...
[2026-06-12 15:50:09,006.006 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 15:50:09,008.008 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 15:50:09,011.011 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 15:50:11,052.052 INFO    ] ================================================
[2026-06-12 15:50:11,067.067 INFO    ] Launching Daemon at Fri Jun 12 15:50:11 IST 2026
[2026-06-12 15:50:11,078.078 INFO    ] ================================================
[2026-06-12 15:50:11,418.418 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 15:50:11
[2026-06-12 15:50:11,729.729 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 15:50:11,861.861 INFO    ] Initializing speech engine...
[2026-06-12 15:50:11,870.870 INFO    ] 2026-06-12 15:50:11
[2026-06-12 15:50:12,092.092 INFO    ] 2026-06-12 15:50:12
[2026-06-12 15:50:12,124.124 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 15:50:12,318.318 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 15:50:12,327.327 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 15:50:12,511.511 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 15:50:12,558.558 INFO    ] time= 12/06/2026 15:50:12
[2026-06-12 15:50:12,560.560 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 15:50:12,566.566 INFO    ] Checking for existing commands in stream...
[2026-06-12 15:50:12,637.637 INFO    ] No existing commands found in stream
[2026-06-12 15:50:17,646.646 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 15:50:17,648.648 INFO    ] Waiting 1.05 seconds before fallback handling...
[2026-06-12 15:50:19,106.106 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 15:50:19,108.108 INFO    ] Checking for system updates...
[2026-06-12 15:50:19,128.128 INFO    ] 200
[2026-06-12 15:50:19,129.129 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:50:19,161.161 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 15:50:19,162.162 INFO    ] No update needed
[2026-06-12 15:50:19,163.163 INFO    ] Checking for camera pi updates...
[2026-06-12 15:50:19,183.183 INFO    ] 200
[2026-06-12 15:50:19,185.185 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:50:19,207.207 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 15:50:19,254.254 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 15:50:19,256.256 INFO    ] No camera update needed
[2026-06-12 15:50:19,257.257 INFO    ] Script finished. Safe exiting...
[2026-06-12 15:50:19,258.258 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 15:50:19,261.261 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 15:50:19,264.264 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 15:50:21,303.303 INFO    ] ================================================
[2026-06-12 15:50:21,319.319 INFO    ] Launching Daemon at Fri Jun 12 15:50:21 IST 2026
[2026-06-12 15:50:21,331.331 INFO    ] ================================================
[2026-06-12 15:50:21,669.669 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 15:50:21
[2026-06-12 15:50:21,982.982 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 15:50:22,114.114 INFO    ] Initializing speech engine...
[2026-06-12 15:50:22,122.122 INFO    ] 2026-06-12 15:50:22
[2026-06-12 15:50:22,336.336 INFO    ] 2026-06-12 15:50:22
[2026-06-12 15:50:22,365.365 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 15:50:22,552.552 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 15:50:22,561.561 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 15:50:22,758.758 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 15:50:22,783.783 INFO    ] time= 12/06/2026 15:50:22
[2026-06-12 15:50:22,788.788 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 15:50:22,790.790 INFO    ] Checking for existing commands in stream...
[2026-06-12 15:50:22,882.882 INFO    ] No existing commands found in stream
[2026-06-12 15:50:27,891.891 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 15:50:27,894.894 INFO    ] Waiting 2.32 seconds before fallback handling...
[2026-06-12 15:50:30,574.574 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 15:50:30,575.575 INFO    ] Checking for system updates...
[2026-06-12 15:50:30,596.596 INFO    ] 200
[2026-06-12 15:50:30,597.597 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:50:30,629.629 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 15:50:30,631.631 INFO    ] No update needed
[2026-06-12 15:50:30,632.632 INFO    ] Checking for camera pi updates...
[2026-06-12 15:50:30,651.651 INFO    ] 200
[2026-06-12 15:50:30,653.653 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:50:30,677.677 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 15:50:30,718.718 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 15:50:30,719.719 INFO    ] No camera update needed
[2026-06-12 15:50:30,721.721 INFO    ] Script finished. Safe exiting...
[2026-06-12 15:50:30,722.722 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 15:50:30,725.725 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 15:50:30,728.728 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 15:50:32,759.759 INFO    ] ================================================
[2026-06-12 15:50:32,775.775 INFO    ] Launching Daemon at Fri Jun 12 15:50:32 IST 2026
[2026-06-12 15:50:32,785.785 INFO    ] ================================================
[2026-06-12 15:50:33,153.153 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 15:50:33
[2026-06-12 15:50:33,485.485 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 15:50:33,627.627 INFO    ] Initializing speech engine...
[2026-06-12 15:50:33,632.632 INFO    ] 2026-06-12 15:50:33
[2026-06-12 15:50:33,836.836 INFO    ] 2026-06-12 15:50:33
[2026-06-12 15:50:33,864.864 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 15:50:34,048.048 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 15:50:34,057.057 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 15:50:34,252.252 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 15:50:34,277.277 INFO    ] time= 12/06/2026 15:50:34
[2026-06-12 15:50:34,282.282 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 15:50:34,284.284 INFO    ] Checking for existing commands in stream...
[2026-06-12 15:50:34,350.350 INFO    ] No existing commands found in stream
[2026-06-12 15:50:39,370.370 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 15:50:39,373.373 INFO    ] Waiting 2.28 seconds before fallback handling...
[2026-06-12 15:50:42,115.115 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 15:50:42,118.118 INFO    ] Checking for system updates...
[2026-06-12 15:50:42,154.154 INFO    ] 200
[2026-06-12 15:50:42,156.156 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:50:42,215.215 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 15:50:42,217.217 INFO    ] No update needed
[2026-06-12 15:50:42,220.220 INFO    ] Checking for camera pi updates...
[2026-06-12 15:50:42,253.253 INFO    ] 200
[2026-06-12 15:50:42,256.256 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:50:42,296.296 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 15:50:42,345.345 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 15:50:42,346.346 INFO    ] No camera update needed
[2026-06-12 15:50:42,348.348 INFO    ] Script finished. Safe exiting...
[2026-06-12 15:50:42,349.349 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 15:50:42,352.352 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 15:50:42,355.355 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 15:50:44,393.393 INFO    ] ================================================
[2026-06-12 15:50:44,409.409 INFO    ] Launching Daemon at Fri Jun 12 15:50:44 IST 2026
[2026-06-12 15:50:44,420.420 INFO    ] ================================================
[2026-06-12 15:50:44,745.745 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 15:50:44
[2026-06-12 15:50:45,058.058 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 15:50:45,194.194 INFO    ] Initializing speech engine...
[2026-06-12 15:50:45,203.203 INFO    ] 2026-06-12 15:50:45
[2026-06-12 15:50:45,407.407 INFO    ] 2026-06-12 15:50:45
[2026-06-12 15:50:45,436.436 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 15:50:45,619.619 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 15:50:45,628.628 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 15:50:45,793.793 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 15:50:45,832.832 INFO    ] time= 12/06/2026 15:50:45
[2026-06-12 15:50:45,847.847 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 15:50:45,854.854 INFO    ] Checking for existing commands in stream...
[2026-06-12 15:50:45,920.920 INFO    ] No existing commands found in stream
[2026-06-12 15:50:50,934.934 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 15:50:50,937.937 INFO    ] Waiting 0.01 seconds before fallback handling...
[2026-06-12 15:50:51,346.346 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 15:50:51,347.347 INFO    ] Checking for system updates...
[2026-06-12 15:50:51,368.368 INFO    ] 200
[2026-06-12 15:50:51,369.369 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:50:51,403.403 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 15:50:51,404.404 INFO    ] No update needed
[2026-06-12 15:50:51,405.405 INFO    ] Checking for camera pi updates...
[2026-06-12 15:50:51,426.426 INFO    ] 200
[2026-06-12 15:50:51,427.427 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:50:51,452.452 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 15:50:51,507.507 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 15:50:51,509.509 INFO    ] No camera update needed
[2026-06-12 15:50:51,510.510 INFO    ] Script finished. Safe exiting...
[2026-06-12 15:50:51,511.511 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 15:50:51,514.514 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 15:50:51,517.517 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 15:50:53,548.548 INFO    ] ================================================
[2026-06-12 15:50:53,564.564 INFO    ] Launching Daemon at Fri Jun 12 15:50:53 IST 2026
[2026-06-12 15:50:53,575.575 INFO    ] ================================================
[2026-06-12 15:50:53,902.902 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 15:50:53
[2026-06-12 15:50:54,214.214 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 15:50:54,346.346 INFO    ] Initializing speech engine...
[2026-06-12 15:50:54,351.351 INFO    ] 2026-06-12 15:50:54
[2026-06-12 15:50:54,580.580 INFO    ] 2026-06-12 15:50:54
[2026-06-12 15:50:54,610.610 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 15:50:54,808.808 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 15:50:54,818.818 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 15:50:54,974.974 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 15:50:55,031.031 INFO    ] time= 12/06/2026 15:50:54
[2026-06-12 15:50:55,052.052 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 15:50:55,059.059 INFO    ] Checking for existing commands in stream...
[2026-06-12 15:50:55,135.135 INFO    ] No existing commands found in stream
[2026-06-12 15:51:00,144.144 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 15:51:00,146.146 INFO    ] Waiting 0.39 seconds before fallback handling...
[2026-06-12 15:51:00,951.951 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 15:51:00,953.953 INFO    ] Checking for system updates...
[2026-06-12 15:51:00,973.973 INFO    ] 200
[2026-06-12 15:51:00,975.975 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:51:01,007.007 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 15:51:01,008.008 INFO    ] No update needed
[2026-06-12 15:51:01,010.010 INFO    ] Checking for camera pi updates...
[2026-06-12 15:51:01,034.034 INFO    ] 200
[2026-06-12 15:51:01,036.036 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:51:01,059.059 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 15:51:01,100.100 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 15:51:01,102.102 INFO    ] No camera update needed
[2026-06-12 15:51:01,103.103 INFO    ] Script finished. Safe exiting...
[2026-06-12 15:51:01,104.104 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 15:51:01,107.107 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 15:51:01,110.110 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 15:51:03,143.143 INFO    ] ================================================
[2026-06-12 15:51:03,158.158 INFO    ] Launching Daemon at Fri Jun 12 15:51:03 IST 2026
[2026-06-12 15:51:03,169.169 INFO    ] ================================================
[2026-06-12 15:51:03,516.516 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 15:51:03
[2026-06-12 15:51:03,827.827 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 15:51:03,970.970 INFO    ] Initializing speech engine...
[2026-06-12 15:51:03,975.975 INFO    ] 2026-06-12 15:51:03
[2026-06-12 15:51:04,180.180 INFO    ] 2026-06-12 15:51:04
[2026-06-12 15:51:04,209.209 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 15:51:04,395.395 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 15:51:04,404.404 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 15:51:04,581.581 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 15:51:04,625.625 INFO    ] time= 12/06/2026 15:51:04
[2026-06-12 15:51:04,627.627 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 15:51:04,633.633 INFO    ] Checking for existing commands in stream...
[2026-06-12 15:51:04,700.700 INFO    ] No existing commands found in stream
[2026-06-12 15:51:09,720.720 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 15:51:09,722.722 INFO    ] Waiting 0.82 seconds before fallback handling...
[2026-06-12 15:51:10,957.957 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 15:51:10,958.958 INFO    ] Checking for system updates...
[2026-06-12 15:51:10,979.979 INFO    ] 200
[2026-06-12 15:51:10,980.980 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:51:11,010.010 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 15:51:11,011.011 INFO    ] No update needed
[2026-06-12 15:51:11,012.012 INFO    ] Checking for camera pi updates...
[2026-06-12 15:51:11,032.032 INFO    ] 200
[2026-06-12 15:51:11,034.034 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:51:11,057.057 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 15:51:11,122.122 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 15:51:11,123.123 INFO    ] No camera update needed
[2026-06-12 15:51:11,124.124 INFO    ] Script finished. Safe exiting...
[2026-06-12 15:51:11,125.125 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 15:51:11,128.128 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 15:51:11,131.131 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 15:51:13,170.170 INFO    ] ================================================
[2026-06-12 15:51:13,185.185 INFO    ] Launching Daemon at Fri Jun 12 15:51:13 IST 2026
[2026-06-12 15:51:13,195.195 INFO    ] ================================================
[2026-06-12 15:51:13,565.565 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 15:51:13
[2026-06-12 15:51:13,898.898 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 15:51:14,048.048 INFO    ] Initializing speech engine...
[2026-06-12 15:51:14,053.053 INFO    ] 2026-06-12 15:51:14
[2026-06-12 15:51:14,262.262 INFO    ] 2026-06-12 15:51:14
[2026-06-12 15:51:14,291.291 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 15:51:14,478.478 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 15:51:14,488.488 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 15:51:14,634.634 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 15:51:14,688.688 INFO    ] time= 12/06/2026 15:51:14
[2026-06-12 15:51:14,712.712 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 15:51:14,717.717 INFO    ] Checking for existing commands in stream...
[2026-06-12 15:51:14,785.785 INFO    ] No existing commands found in stream
[2026-06-12 15:51:19,795.795 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 15:51:19,798.798 INFO    ] Waiting 3.56 seconds before fallback handling...
[2026-06-12 15:51:23,690.690 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 15:51:23,692.692 INFO    ] Checking for system updates...
[2026-06-12 15:51:23,712.712 INFO    ] 200
[2026-06-12 15:51:23,714.714 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:51:23,743.743 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 15:51:23,745.745 INFO    ] No update needed
[2026-06-12 15:51:23,746.746 INFO    ] Checking for camera pi updates...
[2026-06-12 15:51:23,765.765 INFO    ] 200
[2026-06-12 15:51:23,767.767 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:51:23,790.790 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 15:51:23,840.840 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 15:51:23,842.842 INFO    ] No camera update needed
[2026-06-12 15:51:23,843.843 INFO    ] Script finished. Safe exiting...
[2026-06-12 15:51:23,844.844 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 15:51:23,847.847 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 15:51:23,851.851 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 15:51:25,888.888 INFO    ] ================================================
[2026-06-12 15:51:25,904.904 INFO    ] Launching Daemon at Fri Jun 12 15:51:25 IST 2026
[2026-06-12 15:51:25,916.916 INFO    ] ================================================
[2026-06-12 15:51:26,260.260 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 15:51:26
[2026-06-12 15:51:26,572.572 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 15:51:26,703.703 INFO    ] Initializing speech engine...
[2026-06-12 15:51:26,710.710 INFO    ] 2026-06-12 15:51:26
[2026-06-12 15:51:26,921.921 INFO    ] 2026-06-12 15:51:26
[2026-06-12 15:51:26,949.949 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 15:51:27,133.133 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 15:51:27,142.142 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 15:51:27,333.333 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 15:51:27,361.361 INFO    ] time= 12/06/2026 15:51:27
[2026-06-12 15:51:27,363.363 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 15:51:27,368.368 INFO    ] Checking for existing commands in stream...
[2026-06-12 15:51:27,459.459 INFO    ] No existing commands found in stream
[2026-06-12 15:51:32,472.472 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 15:51:32,473.473 INFO    ] Waiting 1.87 seconds before fallback handling...
[2026-06-12 15:51:34,746.746 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 15:51:34,747.747 INFO    ] Checking for system updates...
[2026-06-12 15:51:34,767.767 INFO    ] 200
[2026-06-12 15:51:34,769.769 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:51:34,800.800 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 15:51:34,802.802 INFO    ] No update needed
[2026-06-12 15:51:34,803.803 INFO    ] Checking for camera pi updates...
[2026-06-12 15:51:34,823.823 INFO    ] 200
[2026-06-12 15:51:34,824.824 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:51:34,848.848 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 15:51:34,892.892 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 15:51:34,893.893 INFO    ] No camera update needed
[2026-06-12 15:51:34,894.894 INFO    ] Script finished. Safe exiting...
[2026-06-12 15:51:34,896.896 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 15:51:34,898.898 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 15:51:34,901.901 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 15:51:36,932.932 INFO    ] ================================================
[2026-06-12 15:51:36,940.940 INFO    ] Launching Daemon at Fri Jun 12 15:51:36 IST 2026
[2026-06-12 15:51:36,946.946 INFO    ] ================================================
[2026-06-12 15:51:37,322.322 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 15:51:37
[2026-06-12 15:51:37,660.660 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 15:51:37,796.796 INFO    ] Initializing speech engine...
[2026-06-12 15:51:37,799.799 INFO    ] 2026-06-12 15:51:37
[2026-06-12 15:51:38,005.005 INFO    ] 2026-06-12 15:51:37
[2026-06-12 15:51:38,042.042 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 15:51:38,211.211 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 15:51:38,255.255 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 15:51:38,381.381 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 15:51:38,383.383 INFO    ] time= 12/06/2026 15:51:38
[2026-06-12 15:51:38,438.438 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 15:51:38,481.481 INFO    ] Checking for existing commands in stream...
[2026-06-12 15:51:38,625.625 INFO    ] No existing commands found in stream
[2026-06-12 15:51:43,635.635 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 15:51:43,636.636 INFO    ] Waiting 3.60 seconds before fallback handling...
[2026-06-12 15:51:47,644.644 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 15:51:47,645.645 INFO    ] Checking for system updates...
[2026-06-12 15:51:47,666.666 INFO    ] 200
[2026-06-12 15:51:47,667.667 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:51:47,697.697 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 15:51:47,698.698 INFO    ] No update needed
[2026-06-12 15:51:47,700.700 INFO    ] Checking for camera pi updates...
[2026-06-12 15:51:47,719.719 INFO    ] 200
[2026-06-12 15:51:47,720.720 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:51:47,745.745 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 15:51:47,789.789 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 15:51:47,791.791 INFO    ] No camera update needed
[2026-06-12 15:51:47,792.792 INFO    ] Script finished. Safe exiting...
[2026-06-12 15:51:47,793.793 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 15:51:47,796.796 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 15:51:47,799.799 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 15:51:49,837.837 INFO    ] ================================================
[2026-06-12 15:51:49,852.852 INFO    ] Launching Daemon at Fri Jun 12 15:51:49 IST 2026
[2026-06-12 15:51:49,862.862 INFO    ] ================================================
[2026-06-12 15:51:50,211.211 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 15:51:50
[2026-06-12 15:51:50,523.523 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 15:51:50,654.654 INFO    ] Initializing speech engine...
[2026-06-12 15:51:50,661.661 INFO    ] 2026-06-12 15:51:50
[2026-06-12 15:51:50,873.873 INFO    ] 2026-06-12 15:51:50
[2026-06-12 15:51:50,902.902 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 15:51:51,085.085 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 15:51:51,095.095 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 15:51:51,219.219 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 15:51:51,280.280 INFO    ] time= 12/06/2026 15:51:51
[2026-06-12 15:51:51,312.312 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 15:51:51,318.318 INFO    ] Checking for existing commands in stream...
[2026-06-12 15:51:51,433.433 INFO    ] No existing commands found in stream
[2026-06-12 15:51:56,443.443 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 15:51:56,446.446 INFO    ] Waiting 3.88 seconds before fallback handling...
[2026-06-12 15:52:00,762.762 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 15:52:00,765.765 INFO    ] Checking for system updates...
[2026-06-12 15:52:00,800.800 INFO    ] 200
[2026-06-12 15:52:00,803.803 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:52:00,854.854 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 15:52:00,856.856 INFO    ] No update needed
[2026-06-12 15:52:00,857.857 INFO    ] Checking for camera pi updates...
[2026-06-12 15:52:00,876.876 INFO    ] 200
[2026-06-12 15:52:00,878.878 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:52:00,900.900 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 15:52:00,939.939 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 15:52:00,941.941 INFO    ] No camera update needed
[2026-06-12 15:52:00,942.942 INFO    ] Script finished. Safe exiting...
[2026-06-12 15:52:00,943.943 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 15:52:00,946.946 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 15:52:00,949.949 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 15:52:02,974.974 INFO    ] ================================================
[2026-06-12 15:52:02,982.982 INFO    ] Launching Daemon at Fri Jun 12 15:52:02 IST 2026
[2026-06-12 15:52:02,988.988 INFO    ] ================================================
[2026-06-12 15:52:03,359.359 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 15:52:03
[2026-06-12 15:52:03,695.695 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 15:52:03,848.848 INFO    ] Initializing speech engine...
[2026-06-12 15:52:03,852.852 INFO    ] 2026-06-12 15:52:03
[2026-06-12 15:52:04,061.061 INFO    ] 2026-06-12 15:52:04
[2026-06-12 15:52:04,091.091 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 15:52:04,279.279 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 15:52:04,289.289 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 15:52:04,470.470 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 15:52:04,514.514 INFO    ] time= 12/06/2026 15:52:04
[2026-06-12 15:52:04,520.520 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 15:52:04,522.522 INFO    ] Checking for existing commands in stream...
[2026-06-12 15:52:04,590.590 INFO    ] No existing commands found in stream
[2026-06-12 15:52:09,622.622 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 15:52:09,625.625 INFO    ] Waiting 0.28 seconds before fallback handling...
[2026-06-12 15:52:10,338.338 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 15:52:10,340.340 INFO    ] Checking for system updates...
[2026-06-12 15:52:10,362.362 INFO    ] 200
[2026-06-12 15:52:10,363.363 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:52:10,393.393 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 15:52:10,395.395 INFO    ] No update needed
[2026-06-12 15:52:10,396.396 INFO    ] Checking for camera pi updates...
[2026-06-12 15:52:10,416.416 INFO    ] 200
[2026-06-12 15:52:10,417.417 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:52:10,442.442 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 15:52:10,578.578 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 15:52:10,580.580 INFO    ] No camera update needed
[2026-06-12 15:52:10,581.581 INFO    ] Script finished. Safe exiting...
[2026-06-12 15:52:10,582.582 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 15:52:10,585.585 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 15:52:10,588.588 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 15:52:12,626.626 INFO    ] ================================================
[2026-06-12 15:52:12,641.641 INFO    ] Launching Daemon at Fri Jun 12 15:52:12 IST 2026
[2026-06-12 15:52:12,652.652 INFO    ] ================================================
[2026-06-12 15:52:12,980.980 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 15:52:12
[2026-06-12 15:52:13,296.296 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 15:52:13,435.435 INFO    ] Initializing speech engine...
[2026-06-12 15:52:13,445.445 INFO    ] 2026-06-12 15:52:13
[2026-06-12 15:52:13,649.649 INFO    ] 2026-06-12 15:52:13
[2026-06-12 15:52:13,677.677 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 15:52:13,862.862 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 15:52:13,870.870 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 15:52:14,060.060 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 15:52:14,088.088 INFO    ] time= 12/06/2026 15:52:14
[2026-06-12 15:52:14,093.093 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 15:52:14,095.095 INFO    ] Checking for existing commands in stream...
[2026-06-12 15:52:14,162.162 INFO    ] No existing commands found in stream
[2026-06-12 15:52:19,176.176 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 15:52:19,179.179 INFO    ] Waiting 3.15 seconds before fallback handling...
[2026-06-12 15:52:22,729.729 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 15:52:22,731.731 INFO    ] Checking for system updates...
[2026-06-12 15:52:22,751.751 INFO    ] 200
[2026-06-12 15:52:22,753.753 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:52:22,783.783 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 15:52:22,785.785 INFO    ] No update needed
[2026-06-12 15:52:22,786.786 INFO    ] Checking for camera pi updates...
[2026-06-12 15:52:22,806.806 INFO    ] 200
[2026-06-12 15:52:22,808.808 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:52:22,833.833 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 15:52:22,862.862 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 15:52:22,863.863 INFO    ] No camera update needed
[2026-06-12 15:52:22,864.864 INFO    ] Script finished. Safe exiting...
[2026-06-12 15:52:22,866.866 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 15:52:22,869.869 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 15:52:22,872.872 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 15:52:24,911.911 INFO    ] ================================================
[2026-06-12 15:52:24,926.926 INFO    ] Launching Daemon at Fri Jun 12 15:52:24 IST 2026
[2026-06-12 15:52:24,936.936 INFO    ] ================================================
[2026-06-12 15:52:25,277.277 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 15:52:25
[2026-06-12 15:52:25,588.588 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 15:52:25,730.730 INFO    ] Initializing speech engine...
[2026-06-12 15:52:25,735.735 INFO    ] 2026-06-12 15:52:25
[2026-06-12 15:52:25,939.939 INFO    ] 2026-06-12 15:52:25
[2026-06-12 15:52:25,967.967 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 15:52:26,151.151 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 15:52:26,163.163 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 15:52:26,354.354 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 15:52:26,379.379 INFO    ] time= 12/06/2026 15:52:26
[2026-06-12 15:52:26,384.384 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 15:52:26,386.386 INFO    ] Checking for existing commands in stream...
[2026-06-12 15:52:26,476.476 INFO    ] No existing commands found in stream
[2026-06-12 15:52:31,491.491 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 15:52:31,494.494 INFO    ] Waiting 0.29 seconds before fallback handling...
[2026-06-12 15:52:32,180.180 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 15:52:32,181.181 INFO    ] Checking for system updates...
[2026-06-12 15:52:32,206.206 INFO    ] 200
[2026-06-12 15:52:32,208.208 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:52:32,245.245 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 15:52:32,247.247 INFO    ] No update needed
[2026-06-12 15:52:32,249.249 INFO    ] Checking for camera pi updates...
[2026-06-12 15:52:32,270.270 INFO    ] 200
[2026-06-12 15:52:32,272.272 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:52:32,300.300 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 15:52:32,339.339 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 15:52:32,341.341 INFO    ] No camera update needed
[2026-06-12 15:52:32,343.343 INFO    ] Script finished. Safe exiting...
[2026-06-12 15:52:32,344.344 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 15:52:32,348.348 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 15:52:32,352.352 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 15:52:34,392.392 INFO    ] ================================================
[2026-06-12 15:52:34,407.407 INFO    ] Launching Daemon at Fri Jun 12 15:52:34 IST 2026
[2026-06-12 15:52:34,418.418 INFO    ] ================================================
[2026-06-12 15:52:34,770.770 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 15:52:34
[2026-06-12 15:52:35,083.083 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 15:52:35,212.212 INFO    ] Initializing speech engine...
[2026-06-12 15:52:35,217.217 INFO    ] 2026-06-12 15:52:35
[2026-06-12 15:52:35,440.440 INFO    ] 2026-06-12 15:52:35
[2026-06-12 15:52:35,468.468 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 15:52:35,655.655 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 15:52:35,666.666 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 15:52:35,841.841 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 15:52:35,877.877 INFO    ] time= 12/06/2026 15:52:35
[2026-06-12 15:52:35,892.892 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 15:52:35,894.894 INFO    ] Checking for existing commands in stream...
[2026-06-12 15:52:35,961.961 INFO    ] No existing commands found in stream
[2026-06-12 15:52:40,975.975 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 15:52:40,978.978 INFO    ] Waiting 3.11 seconds before fallback handling...
[2026-06-12 15:52:44,500.500 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 15:52:44,502.502 INFO    ] Checking for system updates...
[2026-06-12 15:52:44,523.523 INFO    ] 200
[2026-06-12 15:52:44,525.525 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:52:44,557.557 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 15:52:44,558.558 INFO    ] No update needed
[2026-06-12 15:52:44,560.560 INFO    ] Checking for camera pi updates...
[2026-06-12 15:52:44,579.579 INFO    ] 200
[2026-06-12 15:52:44,581.581 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:52:44,604.604 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 15:52:44,654.654 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 15:52:44,656.656 INFO    ] No camera update needed
[2026-06-12 15:52:44,657.657 INFO    ] Script finished. Safe exiting...
[2026-06-12 15:52:44,658.658 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 15:52:44,662.662 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 15:52:44,665.665 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 15:52:46,703.703 INFO    ] ================================================
[2026-06-12 15:52:46,718.718 INFO    ] Launching Daemon at Fri Jun 12 15:52:46 IST 2026
[2026-06-12 15:52:46,729.729 INFO    ] ================================================
[2026-06-12 15:52:47,053.053 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 15:52:47
[2026-06-12 15:52:47,369.369 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 15:52:47,500.500 INFO    ] Initializing speech engine...
[2026-06-12 15:52:47,504.504 INFO    ] 2026-06-12 15:52:47
[2026-06-12 15:52:47,719.719 INFO    ] 2026-06-12 15:52:47
[2026-06-12 15:52:47,748.748 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 15:52:47,931.931 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 15:52:47,941.941 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 15:52:48,089.089 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 15:52:48,137.137 INFO    ] time= 12/06/2026 15:52:48
[2026-06-12 15:52:48,159.159 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 15:52:48,165.165 INFO    ] Checking for existing commands in stream...
[2026-06-12 15:52:48,230.230 INFO    ] No existing commands found in stream
[2026-06-12 15:52:53,241.241 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 15:52:53,244.244 INFO    ] Waiting 3.47 seconds before fallback handling...
[2026-06-12 15:52:57,055.055 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 15:52:57,058.058 INFO    ] Checking for system updates...
[2026-06-12 15:52:57,095.095 INFO    ] 200
[2026-06-12 15:52:57,098.098 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:52:57,158.158 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 15:52:57,161.161 INFO    ] No update needed
[2026-06-12 15:52:57,163.163 INFO    ] Checking for camera pi updates...
[2026-06-12 15:52:57,198.198 INFO    ] 200
[2026-06-12 15:52:57,201.201 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:52:57,224.224 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 15:52:57,270.270 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 15:52:57,271.271 INFO    ] No camera update needed
[2026-06-12 15:52:57,273.273 INFO    ] Script finished. Safe exiting...
[2026-06-12 15:52:57,274.274 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 15:52:57,277.277 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 15:52:57,280.280 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 15:52:59,320.320 INFO    ] ================================================
[2026-06-12 15:52:59,336.336 INFO    ] Launching Daemon at Fri Jun 12 15:52:59 IST 2026
[2026-06-12 15:52:59,347.347 INFO    ] ================================================
[2026-06-12 15:52:59,715.715 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 15:52:59
[2026-06-12 15:53:00,026.026 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 15:53:00,171.171 INFO    ] Initializing speech engine...
[2026-06-12 15:53:00,175.175 INFO    ] 2026-06-12 15:53:00
[2026-06-12 15:53:00,379.379 INFO    ] 2026-06-12 15:53:00
[2026-06-12 15:53:00,407.407 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 15:53:00,594.594 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 15:53:00,597.597 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 15:53:00,784.784 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 15:53:00,821.821 INFO    ] time= 12/06/2026 15:53:00
[2026-06-12 15:53:00,824.824 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 15:53:00,829.829 INFO    ] Checking for existing commands in stream...
[2026-06-12 15:53:00,919.919 INFO    ] No existing commands found in stream
[2026-06-12 15:53:05,928.928 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 15:53:05,932.932 INFO    ] Waiting 1.80 seconds before fallback handling...
[2026-06-12 15:53:08,144.144 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 15:53:08,145.145 INFO    ] Checking for system updates...
[2026-06-12 15:53:08,167.167 INFO    ] 200
[2026-06-12 15:53:08,168.168 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:53:08,198.198 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 15:53:08,199.199 INFO    ] No update needed
[2026-06-12 15:53:08,200.200 INFO    ] Checking for camera pi updates...
[2026-06-12 15:53:08,221.221 INFO    ] 200
[2026-06-12 15:53:08,222.222 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:53:08,244.244 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 15:53:08,297.297 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 15:53:08,299.299 INFO    ] No camera update needed
[2026-06-12 15:53:08,300.300 INFO    ] Script finished. Safe exiting...
[2026-06-12 15:53:08,302.302 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 15:53:08,304.304 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 15:53:08,307.307 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 15:53:10,345.345 INFO    ] ================================================
[2026-06-12 15:53:10,361.361 INFO    ] Launching Daemon at Fri Jun 12 15:53:10 IST 2026
[2026-06-12 15:53:10,372.372 INFO    ] ================================================
[2026-06-12 15:53:10,707.707 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 15:53:10
[2026-06-12 15:53:11,026.026 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 15:53:11,171.171 INFO    ] Initializing speech engine...
[2026-06-12 15:53:11,176.176 INFO    ] 2026-06-12 15:53:11
[2026-06-12 15:53:11,379.379 INFO    ] 2026-06-12 15:53:11
[2026-06-12 15:53:11,408.408 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 15:53:11,591.591 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 15:53:11,600.600 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 15:53:11,791.791 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 15:53:11,816.816 INFO    ] time= 12/06/2026 15:53:11
[2026-06-12 15:53:11,822.822 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 15:53:11,824.824 INFO    ] Checking for existing commands in stream...
[2026-06-12 15:53:11,895.895 INFO    ] No existing commands found in stream
[2026-06-12 15:53:16,923.923 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 15:53:16,925.925 INFO    ] Waiting 3.61 seconds before fallback handling...
[2026-06-12 15:53:20,947.947 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 15:53:20,948.948 INFO    ] Checking for system updates...
[2026-06-12 15:53:20,969.969 INFO    ] 200
[2026-06-12 15:53:20,971.971 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:53:21,003.003 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 15:53:21,004.004 INFO    ] No update needed
[2026-06-12 15:53:21,005.005 INFO    ] Checking for camera pi updates...
[2026-06-12 15:53:21,025.025 INFO    ] 200
[2026-06-12 15:53:21,026.026 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:53:21,049.049 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 15:53:21,093.093 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 15:53:21,094.094 INFO    ] No camera update needed
[2026-06-12 15:53:21,095.095 INFO    ] Script finished. Safe exiting...
[2026-06-12 15:53:21,097.097 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 15:53:21,100.100 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 15:53:21,103.103 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 15:53:23,143.143 INFO    ] ================================================
[2026-06-12 15:53:23,158.158 INFO    ] Launching Daemon at Fri Jun 12 15:53:23 IST 2026
[2026-06-12 15:53:23,169.169 INFO    ] ================================================
[2026-06-12 15:53:23,529.529 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 15:53:23
[2026-06-12 15:53:23,868.868 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 15:53:24,022.022 INFO    ] Initializing speech engine...
[2026-06-12 15:53:24,027.027 INFO    ] 2026-06-12 15:53:24
[2026-06-12 15:53:24,233.233 INFO    ] 2026-06-12 15:53:24
[2026-06-12 15:53:24,262.262 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 15:53:24,446.446 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 15:53:24,458.458 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 15:53:24,646.646 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 15:53:24,674.674 INFO    ] time= 12/06/2026 15:53:24
[2026-06-12 15:53:24,680.680 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 15:53:24,681.681 INFO    ] Checking for existing commands in stream...
[2026-06-12 15:53:24,772.772 INFO    ] No existing commands found in stream
[2026-06-12 15:53:29,787.787 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 15:53:29,790.790 INFO    ] Waiting 2.39 seconds before fallback handling...
[2026-06-12 15:53:32,555.555 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 15:53:32,557.557 INFO    ] Checking for system updates...
[2026-06-12 15:53:32,578.578 INFO    ] 200
[2026-06-12 15:53:32,580.580 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:53:32,616.616 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 15:53:32,618.618 INFO    ] No update needed
[2026-06-12 15:53:32,619.619 INFO    ] Checking for camera pi updates...
[2026-06-12 15:53:32,639.639 INFO    ] 200
[2026-06-12 15:53:32,640.640 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:53:32,664.664 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 15:53:32,786.786 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 15:53:32,789.789 INFO    ] No camera update needed
[2026-06-12 15:53:32,791.791 INFO    ] Script finished. Safe exiting...
[2026-06-12 15:53:32,794.794 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 15:53:32,800.800 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 15:53:32,806.806 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 15:53:34,846.846 INFO    ] ================================================
[2026-06-12 15:53:34,862.862 INFO    ] Launching Daemon at Fri Jun 12 15:53:34 IST 2026
[2026-06-12 15:53:34,873.873 INFO    ] ================================================
[2026-06-12 15:53:35,197.197 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 15:53:35
[2026-06-12 15:53:35,509.509 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 15:53:35,652.652 INFO    ] Initializing speech engine...
[2026-06-12 15:53:35,657.657 INFO    ] 2026-06-12 15:53:35
[2026-06-12 15:53:35,861.861 INFO    ] 2026-06-12 15:53:35
[2026-06-12 15:53:35,889.889 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 15:53:36,073.073 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 15:53:36,082.082 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 15:53:36,271.271 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 15:53:36,299.299 INFO    ] time= 12/06/2026 15:53:36
[2026-06-12 15:53:36,304.304 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 15:53:36,306.306 INFO    ] Checking for existing commands in stream...
[2026-06-12 15:53:36,373.373 INFO    ] No existing commands found in stream
[2026-06-12 15:53:41,387.387 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 15:53:41,390.390 INFO    ] Waiting 0.05 seconds before fallback handling...
[2026-06-12 15:53:41,818.818 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 15:53:41,819.819 INFO    ] Checking for system updates...
[2026-06-12 15:53:41,840.840 INFO    ] 200
[2026-06-12 15:53:41,841.841 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:53:41,873.873 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 15:53:41,874.874 INFO    ] No update needed
[2026-06-12 15:53:41,875.875 INFO    ] Checking for camera pi updates...
[2026-06-12 15:53:41,895.895 INFO    ] 200
[2026-06-12 15:53:41,896.896 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:53:41,920.920 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 15:53:41,966.966 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 15:53:41,967.967 INFO    ] No camera update needed
[2026-06-12 15:53:41,968.968 INFO    ] Script finished. Safe exiting...
[2026-06-12 15:53:41,969.969 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 15:53:41,973.973 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 15:53:41,975.975 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 15:53:44,014.014 INFO    ] ================================================
[2026-06-12 15:53:44,029.029 INFO    ] Launching Daemon at Fri Jun 12 15:53:44 IST 2026
[2026-06-12 15:53:44,040.040 INFO    ] ================================================
[2026-06-12 15:53:44,398.398 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 15:53:44
[2026-06-12 15:53:44,733.733 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 15:53:44,885.885 INFO    ] Initializing speech engine...
[2026-06-12 15:53:44,889.889 INFO    ] 2026-06-12 15:53:44
[2026-06-12 15:53:45,097.097 INFO    ] 2026-06-12 15:53:45
[2026-06-12 15:53:45,126.126 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 15:53:45,310.310 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 15:53:45,313.313 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 15:53:45,505.505 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 15:53:45,537.537 INFO    ] time= 12/06/2026 15:53:45
[2026-06-12 15:53:45,544.544 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 15:53:45,546.546 INFO    ] Checking for existing commands in stream...
[2026-06-12 15:53:45,613.613 INFO    ] No existing commands found in stream
[2026-06-12 15:53:50,642.642 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 15:53:50,646.646 INFO    ] Waiting 3.77 seconds before fallback handling...
[2026-06-12 15:53:54,840.840 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 15:53:54,842.842 INFO    ] Checking for system updates...
[2026-06-12 15:53:54,862.862 INFO    ] 200
[2026-06-12 15:53:54,864.864 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:53:54,895.895 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 15:53:54,897.897 INFO    ] No update needed
[2026-06-12 15:53:54,898.898 INFO    ] Checking for camera pi updates...
[2026-06-12 15:53:54,918.918 INFO    ] 200
[2026-06-12 15:53:54,920.920 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:53:54,942.942 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 15:53:54,986.986 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 15:53:54,987.987 INFO    ] No camera update needed
[2026-06-12 15:53:54,988.988 INFO    ] Script finished. Safe exiting...
[2026-06-12 15:53:54,990.990 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 15:53:54,993.993 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 15:53:54,995.995 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 15:53:57,028.028 INFO    ] ================================================
[2026-06-12 15:53:57,036.036 INFO    ] Launching Daemon at Fri Jun 12 15:53:57 IST 2026
[2026-06-12 15:53:57,042.042 INFO    ] ================================================
[2026-06-12 15:53:57,416.416 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 15:53:57
[2026-06-12 15:53:57,749.749 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 15:53:57,899.899 INFO    ] Initializing speech engine...
[2026-06-12 15:53:57,905.905 INFO    ] 2026-06-12 15:53:57
[2026-06-12 15:53:58,111.111 INFO    ] 2026-06-12 15:53:58
[2026-06-12 15:53:58,141.141 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 15:53:58,325.325 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 15:53:58,335.335 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 15:53:58,514.514 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 15:53:58,552.552 INFO    ] time= 12/06/2026 15:53:58
[2026-06-12 15:53:58,554.554 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 15:53:58,559.559 INFO    ] Checking for existing commands in stream...
[2026-06-12 15:53:58,650.650 INFO    ] No existing commands found in stream
[2026-06-12 15:54:03,664.664 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 15:54:03,668.668 INFO    ] Waiting 0.27 seconds before fallback handling...
[2026-06-12 15:54:04,341.341 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 15:54:04,342.342 INFO    ] Checking for system updates...
[2026-06-12 15:54:04,363.363 INFO    ] 200
[2026-06-12 15:54:04,365.365 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:54:04,395.395 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 15:54:04,396.396 INFO    ] No update needed
[2026-06-12 15:54:04,397.397 INFO    ] Checking for camera pi updates...
[2026-06-12 15:54:04,418.418 INFO    ] 200
[2026-06-12 15:54:04,419.419 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:54:04,446.446 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 15:54:04,491.491 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 15:54:04,492.492 INFO    ] No camera update needed
[2026-06-12 15:54:04,494.494 INFO    ] Script finished. Safe exiting...
[2026-06-12 15:54:04,495.495 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 15:54:04,498.498 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 15:54:04,501.501 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 15:54:06,540.540 INFO    ] ================================================
[2026-06-12 15:54:06,555.555 INFO    ] Launching Daemon at Fri Jun 12 15:54:06 IST 2026
[2026-06-12 15:54:06,566.566 INFO    ] ================================================
[2026-06-12 15:54:06,929.929 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 15:54:06
[2026-06-12 15:54:07,262.262 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 15:54:07,401.401 INFO    ] Initializing speech engine...
[2026-06-12 15:54:07,413.413 INFO    ] 2026-06-12 15:54:07
[2026-06-12 15:54:07,622.622 INFO    ] 2026-06-12 15:54:07
[2026-06-12 15:54:07,653.653 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 15:54:07,836.836 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 15:54:07,847.847 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 15:54:08,032.032 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 15:54:08,065.065 INFO    ] time= 12/06/2026 15:54:08
[2026-06-12 15:54:08,071.071 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 15:54:08,073.073 INFO    ] Checking for existing commands in stream...
[2026-06-12 15:54:08,165.165 INFO    ] No existing commands found in stream
[2026-06-12 15:54:13,179.179 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 15:54:13,183.183 INFO    ] Waiting 2.77 seconds before fallback handling...
[2026-06-12 15:54:16,367.367 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 15:54:16,369.369 INFO    ] Checking for system updates...
[2026-06-12 15:54:16,391.391 INFO    ] 200
[2026-06-12 15:54:16,392.392 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:54:16,424.424 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 15:54:16,426.426 INFO    ] No update needed
[2026-06-12 15:54:16,427.427 INFO    ] Checking for camera pi updates...
[2026-06-12 15:54:16,447.447 INFO    ] 200
[2026-06-12 15:54:16,448.448 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:54:16,471.471 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 15:54:16,608.608 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 15:54:16,609.609 INFO    ] No camera update needed
[2026-06-12 15:54:16,611.611 INFO    ] Script finished. Safe exiting...
[2026-06-12 15:54:16,612.612 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 15:54:16,615.615 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 15:54:16,618.618 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 15:54:18,643.643 INFO    ] ================================================
[2026-06-12 15:54:18,651.651 INFO    ] Launching Daemon at Fri Jun 12 15:54:18 IST 2026
[2026-06-12 15:54:18,657.657 INFO    ] ================================================
[2026-06-12 15:54:19,005.005 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 15:54:19
[2026-06-12 15:54:19,316.316 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 15:54:19,458.458 INFO    ] Initializing speech engine...
[2026-06-12 15:54:19,464.464 INFO    ] 2026-06-12 15:54:19
[2026-06-12 15:54:19,667.667 INFO    ] 2026-06-12 15:54:19
[2026-06-12 15:54:19,696.696 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 15:54:19,880.880 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 15:54:19,883.883 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 15:54:20,050.050 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 15:54:20,072.072 INFO    ] time= 12/06/2026 15:54:20
[2026-06-12 15:54:20,113.113 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 15:54:20,130.130 INFO    ] Checking for existing commands in stream...
[2026-06-12 15:54:20,201.201 INFO    ] No existing commands found in stream
[2026-06-12 15:54:25,210.210 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 15:54:25,213.213 INFO    ] Waiting 0.26 seconds before fallback handling...
[2026-06-12 15:54:25,898.898 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 15:54:25,899.899 INFO    ] Checking for system updates...
[2026-06-12 15:54:25,920.920 INFO    ] 200
[2026-06-12 15:54:25,922.922 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:54:25,953.953 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 15:54:25,955.955 INFO    ] No update needed
[2026-06-12 15:54:25,956.956 INFO    ] Checking for camera pi updates...
[2026-06-12 15:54:25,975.975 INFO    ] 200
[2026-06-12 15:54:25,976.976 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:54:25,999.999 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 15:54:26,043.043 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 15:54:26,044.044 INFO    ] No camera update needed
[2026-06-12 15:54:26,045.045 INFO    ] Script finished. Safe exiting...
[2026-06-12 15:54:26,047.047 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 15:54:26,050.050 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 15:54:26,053.053 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 15:54:28,093.093 INFO    ] ================================================
[2026-06-12 15:54:28,108.108 INFO    ] Launching Daemon at Fri Jun 12 15:54:28 IST 2026
[2026-06-12 15:54:28,119.119 INFO    ] ================================================
[2026-06-12 15:54:28,513.513 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 15:54:28
[2026-06-12 15:54:28,847.847 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 15:54:28,997.997 INFO    ] Initializing speech engine...
[2026-06-12 15:54:29,002.002 INFO    ] 2026-06-12 15:54:28
[2026-06-12 15:54:29,213.213 INFO    ] 2026-06-12 15:54:29
[2026-06-12 15:54:29,243.243 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 15:54:29,429.429 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 15:54:29,439.439 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 15:54:29,636.636 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 15:54:29,662.662 INFO    ] time= 12/06/2026 15:54:29
[2026-06-12 15:54:29,667.667 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 15:54:29,669.669 INFO    ] Checking for existing commands in stream...
[2026-06-12 15:54:29,761.761 INFO    ] No existing commands found in stream
[2026-06-12 15:54:34,770.770 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 15:54:34,774.774 INFO    ] Waiting 3.53 seconds before fallback handling...
[2026-06-12 15:54:38,747.747 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 15:54:38,749.749 INFO    ] Checking for system updates...
[2026-06-12 15:54:38,770.770 INFO    ] 200
[2026-06-12 15:54:38,771.771 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:54:38,803.803 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 15:54:38,804.804 INFO    ] No update needed
[2026-06-12 15:54:38,806.806 INFO    ] Checking for camera pi updates...
[2026-06-12 15:54:38,829.829 INFO    ] 200
[2026-06-12 15:54:38,830.830 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:54:38,856.856 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 15:54:38,927.927 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 15:54:38,928.928 INFO    ] No camera update needed
[2026-06-12 15:54:38,930.930 INFO    ] Script finished. Safe exiting...
[2026-06-12 15:54:38,931.931 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 15:54:38,934.934 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 15:54:38,937.937 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 15:54:40,975.975 INFO    ] ================================================
[2026-06-12 15:54:40,990.990 INFO    ] Launching Daemon at Fri Jun 12 15:54:40 IST 2026
[2026-06-12 15:54:41,000.000 INFO    ] ================================================
[2026-06-12 15:54:41,331.331 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 15:54:41
[2026-06-12 15:54:41,646.646 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 15:54:41,778.778 INFO    ] Initializing speech engine...
[2026-06-12 15:54:41,791.791 INFO    ] 2026-06-12 15:54:41
[2026-06-12 15:54:41,998.998 INFO    ] 2026-06-12 15:54:41
[2026-06-12 15:54:42,027.027 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 15:54:42,214.214 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 15:54:42,223.223 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 15:54:42,385.385 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 15:54:42,426.426 INFO    ] time= 12/06/2026 15:54:42
[2026-06-12 15:54:42,447.447 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 15:54:42,453.453 INFO    ] Checking for existing commands in stream...
[2026-06-12 15:54:42,544.544 INFO    ] No existing commands found in stream
[2026-06-12 15:54:47,558.558 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 15:54:47,561.561 INFO    ] Waiting 2.15 seconds before fallback handling...
[2026-06-12 15:54:50,127.127 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 15:54:50,128.128 INFO    ] Checking for system updates...
[2026-06-12 15:54:50,149.149 INFO    ] 200
[2026-06-12 15:54:50,151.151 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:54:50,181.181 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 15:54:50,183.183 INFO    ] No update needed
[2026-06-12 15:54:50,184.184 INFO    ] Checking for camera pi updates...
[2026-06-12 15:54:50,203.203 INFO    ] 200
[2026-06-12 15:54:50,205.205 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:54:50,229.229 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 15:54:50,275.275 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 15:54:50,277.277 INFO    ] No camera update needed
[2026-06-12 15:54:50,278.278 INFO    ] Script finished. Safe exiting...
[2026-06-12 15:54:50,279.279 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 15:54:50,282.282 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 15:54:50,285.285 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 15:54:52,316.316 INFO    ] ================================================
[2026-06-12 15:54:52,324.324 INFO    ] Launching Daemon at Fri Jun 12 15:54:52 IST 2026
[2026-06-12 15:54:52,330.330 INFO    ] ================================================
[2026-06-12 15:54:52,640.640 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 15:54:52
[2026-06-12 15:54:52,951.951 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 15:54:53,080.080 INFO    ] Initializing speech engine...
[2026-06-12 15:54:53,088.088 INFO    ] 2026-06-12 15:54:53
[2026-06-12 15:54:53,303.303 INFO    ] 2026-06-12 15:54:53
[2026-06-12 15:54:53,332.332 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 15:54:53,514.514 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 15:54:53,524.524 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 15:54:53,706.706 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 15:54:53,743.743 INFO    ] time= 12/06/2026 15:54:53
[2026-06-12 15:54:53,749.749 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 15:54:53,751.751 INFO    ] Checking for existing commands in stream...
[2026-06-12 15:54:53,842.842 INFO    ] No existing commands found in stream
[2026-06-12 15:54:58,856.856 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 15:54:58,859.859 INFO    ] Waiting 2.65 seconds before fallback handling...
[2026-06-12 15:55:01,890.890 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 15:55:01,892.892 INFO    ] Checking for system updates...
[2026-06-12 15:55:01,918.918 INFO    ] 200
[2026-06-12 15:55:01,920.920 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:55:01,961.961 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 15:55:01,963.963 INFO    ] No update needed
[2026-06-12 15:55:01,965.965 INFO    ] Checking for camera pi updates...
[2026-06-12 15:55:01,993.993 INFO    ] 200
[2026-06-12 15:55:01,995.995 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:55:02,029.029 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 15:55:02,062.062 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 15:55:02,065.065 INFO    ] No camera update needed
[2026-06-12 15:55:02,067.067 INFO    ] Script finished. Safe exiting...
[2026-06-12 15:55:02,070.070 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 15:55:02,077.077 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 15:55:02,083.083 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 15:55:04,123.123 INFO    ] ================================================
[2026-06-12 15:55:04,138.138 INFO    ] Launching Daemon at Fri Jun 12 15:55:04 IST 2026
[2026-06-12 15:55:04,149.149 INFO    ] ================================================
[2026-06-12 15:55:04,493.493 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 15:55:04
[2026-06-12 15:55:04,809.809 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 15:55:04,943.943 INFO    ] Initializing speech engine...
[2026-06-12 15:55:04,957.957 INFO    ] 2026-06-12 15:55:04
[2026-06-12 15:55:05,162.162 INFO    ] 2026-06-12 15:55:05
[2026-06-12 15:55:05,179.179 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 15:55:05,374.374 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 15:55:05,383.383 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 15:55:05,565.565 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 15:55:05,605.605 INFO    ] time= 12/06/2026 15:55:05
[2026-06-12 15:55:05,616.616 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 15:55:05,621.621 INFO    ] Checking for existing commands in stream...
[2026-06-12 15:55:05,712.712 INFO    ] No existing commands found in stream
[2026-06-12 15:55:10,721.721 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 15:55:10,724.724 INFO    ] Waiting 1.87 seconds before fallback handling...
[2026-06-12 15:55:12,969.969 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 15:55:12,971.971 INFO    ] Checking for system updates...
[2026-06-12 15:55:12,991.991 INFO    ] 200
[2026-06-12 15:55:12,992.992 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:55:13,022.022 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 15:55:13,024.024 INFO    ] No update needed
[2026-06-12 15:55:13,025.025 INFO    ] Checking for camera pi updates...
[2026-06-12 15:55:13,044.044 INFO    ] 200
[2026-06-12 15:55:13,046.046 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:55:13,070.070 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 15:55:13,122.122 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 15:55:13,124.124 INFO    ] No camera update needed
[2026-06-12 15:55:13,125.125 INFO    ] Script finished. Safe exiting...
[2026-06-12 15:55:13,126.126 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 15:55:13,129.129 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 15:55:13,132.132 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 15:55:15,171.171 INFO    ] ================================================
[2026-06-12 15:55:15,187.187 INFO    ] Launching Daemon at Fri Jun 12 15:55:15 IST 2026
[2026-06-12 15:55:15,198.198 INFO    ] ================================================
[2026-06-12 15:55:15,552.552 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 15:55:15
[2026-06-12 15:55:15,864.864 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 15:55:15,999.999 INFO    ] Initializing speech engine...
[2026-06-12 15:55:16,004.004 INFO    ] 2026-06-12 15:55:16
[2026-06-12 15:55:16,233.233 INFO    ] 2026-06-12 15:55:16
[2026-06-12 15:55:16,256.256 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 15:55:16,461.461 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 15:55:16,465.465 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 15:55:16,604.604 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 15:55:16,660.660 INFO    ] time= 12/06/2026 15:55:16
[2026-06-12 15:55:16,709.709 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 15:55:16,711.711 INFO    ] Checking for existing commands in stream...
[2026-06-12 15:55:16,786.786 INFO    ] No existing commands found in stream
[2026-06-12 15:55:21,796.796 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 15:55:21,799.799 INFO    ] Waiting 0.03 seconds before fallback handling...
[2026-06-12 15:55:22,178.178 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 15:55:22,179.179 INFO    ] Checking for system updates...
[2026-06-12 15:55:22,200.200 INFO    ] 200
[2026-06-12 15:55:22,202.202 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:55:22,233.233 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 15:55:22,235.235 INFO    ] No update needed
[2026-06-12 15:55:22,236.236 INFO    ] Checking for camera pi updates...
[2026-06-12 15:55:22,257.257 INFO    ] 200
[2026-06-12 15:55:22,259.259 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:55:22,281.281 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 15:55:22,334.334 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 15:55:22,335.335 INFO    ] No camera update needed
[2026-06-12 15:55:22,337.337 INFO    ] Script finished. Safe exiting...
[2026-06-12 15:55:22,338.338 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 15:55:22,341.341 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 15:55:22,344.344 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 15:55:24,381.381 INFO    ] ================================================
[2026-06-12 15:55:24,396.396 INFO    ] Launching Daemon at Fri Jun 12 15:55:24 IST 2026
[2026-06-12 15:55:24,407.407 INFO    ] ================================================
[2026-06-12 15:55:24,784.784 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 15:55:24
[2026-06-12 15:55:25,117.117 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 15:55:25,266.266 INFO    ] Initializing speech engine...
[2026-06-12 15:55:25,272.272 INFO    ] 2026-06-12 15:55:25
[2026-06-12 15:55:25,476.476 INFO    ] 2026-06-12 15:55:25
[2026-06-12 15:55:25,505.505 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 15:55:25,688.688 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 15:55:25,699.699 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 15:55:25,889.889 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 15:55:25,912.912 INFO    ] time= 12/06/2026 15:55:25
[2026-06-12 15:55:25,918.918 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 15:55:25,920.920 INFO    ] Checking for existing commands in stream...
[2026-06-12 15:55:26,011.011 INFO    ] No existing commands found in stream
[2026-06-12 15:55:31,032.032 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 15:55:31,035.035 INFO    ] Waiting 1.19 seconds before fallback handling...
[2026-06-12 15:55:32,634.634 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 15:55:32,636.636 INFO    ] Checking for system updates...
[2026-06-12 15:55:32,657.657 INFO    ] 200
[2026-06-12 15:55:32,658.658 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:55:32,690.690 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 15:55:32,692.692 INFO    ] No update needed
[2026-06-12 15:55:32,693.693 INFO    ] Checking for camera pi updates...
[2026-06-12 15:55:32,713.713 INFO    ] 200
[2026-06-12 15:55:32,715.715 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:55:32,738.738 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 15:55:32,785.785 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 15:55:32,786.786 INFO    ] No camera update needed
[2026-06-12 15:55:32,788.788 INFO    ] Script finished. Safe exiting...
[2026-06-12 15:55:32,789.789 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 15:55:32,792.792 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 15:55:32,795.795 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 15:55:34,833.833 INFO    ] ================================================
[2026-06-12 15:55:34,848.848 INFO    ] Launching Daemon at Fri Jun 12 15:55:34 IST 2026
[2026-06-12 15:55:34,858.858 INFO    ] ================================================
[2026-06-12 15:55:35,229.229 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 15:55:35
[2026-06-12 15:55:35,566.566 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 15:55:35,716.716 INFO    ] Initializing speech engine...
[2026-06-12 15:55:35,721.721 INFO    ] 2026-06-12 15:55:35
[2026-06-12 15:55:35,930.930 INFO    ] 2026-06-12 15:55:35
[2026-06-12 15:55:35,959.959 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 15:55:36,145.145 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 15:55:36,156.156 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 15:55:36,350.350 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 15:55:36,375.375 INFO    ] time= 12/06/2026 15:55:36
[2026-06-12 15:55:36,381.381 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 15:55:36,383.383 INFO    ] Checking for existing commands in stream...
[2026-06-12 15:55:36,454.454 INFO    ] No existing commands found in stream
[2026-06-12 15:55:41,473.473 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 15:55:41,484.484 INFO    ] Waiting 1.06 seconds before fallback handling...
[2026-06-12 15:55:42,975.975 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 15:55:42,977.977 INFO    ] Checking for system updates...
[2026-06-12 15:55:42,998.998 INFO    ] 200
[2026-06-12 15:55:43,000.000 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:55:43,032.032 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 15:55:43,033.033 INFO    ] No update needed
[2026-06-12 15:55:43,035.035 INFO    ] Checking for camera pi updates...
[2026-06-12 15:55:43,055.055 INFO    ] 200
[2026-06-12 15:55:43,057.057 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:55:43,080.080 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 15:55:43,137.137 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 15:55:43,139.139 INFO    ] No camera update needed
[2026-06-12 15:55:43,140.140 INFO    ] Script finished. Safe exiting...
[2026-06-12 15:55:43,142.142 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 15:55:43,145.145 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 15:55:43,148.148 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 15:55:45,187.187 INFO    ] ================================================
[2026-06-12 15:55:45,202.202 INFO    ] Launching Daemon at Fri Jun 12 15:55:45 IST 2026
[2026-06-12 15:55:45,212.212 INFO    ] ================================================
[2026-06-12 15:55:45,563.563 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 15:55:45
[2026-06-12 15:55:45,879.879 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 15:55:46,024.024 INFO    ] Initializing speech engine...
[2026-06-12 15:55:46,029.029 INFO    ] 2026-06-12 15:55:46
[2026-06-12 15:55:46,235.235 INFO    ] 2026-06-12 15:55:46
[2026-06-12 15:55:46,262.262 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 15:55:46,447.447 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 15:55:46,456.456 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 15:55:46,636.636 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 15:55:46,665.665 INFO    ] time= 12/06/2026 15:55:46
[2026-06-12 15:55:46,676.676 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 15:55:46,682.682 INFO    ] Checking for existing commands in stream...
[2026-06-12 15:55:46,750.750 INFO    ] No existing commands found in stream
[2026-06-12 15:55:51,774.774 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 15:55:51,777.777 INFO    ] Waiting 2.75 seconds before fallback handling...
[2026-06-12 15:55:54,945.945 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 15:55:54,947.947 INFO    ] Checking for system updates...
[2026-06-12 15:55:54,967.967 INFO    ] 200
[2026-06-12 15:55:54,968.968 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:55:54,998.998 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 15:55:54,999.999 INFO    ] No update needed
[2026-06-12 15:55:55,000.000 INFO    ] Checking for camera pi updates...
[2026-06-12 15:55:55,021.021 INFO    ] 200
[2026-06-12 15:55:55,023.023 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:55:55,045.045 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 15:55:55,096.096 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 15:55:55,098.098 INFO    ] No camera update needed
[2026-06-12 15:55:55,099.099 INFO    ] Script finished. Safe exiting...
[2026-06-12 15:55:55,101.101 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 15:55:55,104.104 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 15:55:55,106.106 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 15:55:57,144.144 INFO    ] ================================================
[2026-06-12 15:55:57,159.159 INFO    ] Launching Daemon at Fri Jun 12 15:55:57 IST 2026
[2026-06-12 15:55:57,170.170 INFO    ] ================================================
[2026-06-12 15:55:57,551.551 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 15:55:57
[2026-06-12 15:55:57,886.886 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 15:55:58,037.037 INFO    ] Initializing speech engine...
[2026-06-12 15:55:58,043.043 INFO    ] 2026-06-12 15:55:58
[2026-06-12 15:55:58,251.251 INFO    ] 2026-06-12 15:55:58
[2026-06-12 15:55:58,280.280 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 15:55:58,465.465 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 15:55:58,474.474 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 15:55:58,668.668 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 15:55:58,693.693 INFO    ] time= 12/06/2026 15:55:58
[2026-06-12 15:55:58,698.698 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 15:55:58,700.700 INFO    ] Checking for existing commands in stream...
[2026-06-12 15:55:58,791.791 INFO    ] No existing commands found in stream
[2026-06-12 15:56:03,800.800 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 15:56:03,803.803 INFO    ] Waiting 3.28 seconds before fallback handling...
[2026-06-12 15:56:07,465.465 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 15:56:07,471.471 INFO    ] Checking for system updates...
[2026-06-12 15:56:07,492.492 INFO    ] 200
[2026-06-12 15:56:07,493.493 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:56:07,525.525 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 15:56:07,526.526 INFO    ] No update needed
[2026-06-12 15:56:07,528.528 INFO    ] Checking for camera pi updates...
[2026-06-12 15:56:07,548.548 INFO    ] 200
[2026-06-12 15:56:07,550.550 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:56:07,573.573 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 15:56:07,613.613 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 15:56:07,614.614 INFO    ] No camera update needed
[2026-06-12 15:56:07,615.615 INFO    ] Script finished. Safe exiting...
[2026-06-12 15:56:07,617.617 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 15:56:07,620.620 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 15:56:07,622.622 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 15:56:09,660.660 INFO    ] ================================================
[2026-06-12 15:56:09,677.677 INFO    ] Launching Daemon at Fri Jun 12 15:56:09 IST 2026
[2026-06-12 15:56:09,688.688 INFO    ] ================================================
[2026-06-12 15:56:10,030.030 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 15:56:10
[2026-06-12 15:56:10,342.342 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 15:56:10,482.482 INFO    ] Initializing speech engine...
[2026-06-12 15:56:10,487.487 INFO    ] 2026-06-12 15:56:10
[2026-06-12 15:56:10,690.690 INFO    ] 2026-06-12 15:56:10
[2026-06-12 15:56:10,718.718 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 15:56:10,900.900 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 15:56:10,903.903 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 15:56:11,049.049 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 15:56:11,106.106 INFO    ] time= 12/06/2026 15:56:11
[2026-06-12 15:56:11,128.128 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 15:56:11,134.134 INFO    ] Checking for existing commands in stream...
[2026-06-12 15:56:11,202.202 INFO    ] No existing commands found in stream
[2026-06-12 15:56:16,210.210 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 15:56:16,213.213 INFO    ] Waiting 3.13 seconds before fallback handling...
[2026-06-12 15:56:19,756.756 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 15:56:19,757.757 INFO    ] Checking for system updates...
[2026-06-12 15:56:19,777.777 INFO    ] 200
[2026-06-12 15:56:19,779.779 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:56:19,809.809 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 15:56:19,810.810 INFO    ] No update needed
[2026-06-12 15:56:19,811.811 INFO    ] Checking for camera pi updates...
[2026-06-12 15:56:19,830.830 INFO    ] 200
[2026-06-12 15:56:19,832.832 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:56:19,856.856 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 15:56:19,998.998 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 15:56:19,999.999 INFO    ] No camera update needed
[2026-06-12 15:56:20,001.001 INFO    ] Script finished. Safe exiting...
[2026-06-12 15:56:20,002.002 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 15:56:20,005.005 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 15:56:20,008.008 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 15:56:22,045.045 INFO    ] ================================================
[2026-06-12 15:56:22,061.061 INFO    ] Launching Daemon at Fri Jun 12 15:56:22 IST 2026
[2026-06-12 15:56:22,071.071 INFO    ] ================================================
[2026-06-12 15:56:22,456.456 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 15:56:22
[2026-06-12 15:56:22,794.794 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 15:56:22,944.944 INFO    ] Initializing speech engine...
[2026-06-12 15:56:22,949.949 INFO    ] 2026-06-12 15:56:22
[2026-06-12 15:56:23,156.156 INFO    ] 2026-06-12 15:56:23
[2026-06-12 15:56:23,185.185 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 15:56:23,367.367 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 15:56:23,371.371 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 15:56:23,534.534 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 15:56:23,583.583 INFO    ] time= 12/06/2026 15:56:23
[2026-06-12 15:56:23,599.599 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 15:56:23,605.605 INFO    ] Checking for existing commands in stream...
[2026-06-12 15:56:23,672.672 INFO    ] No existing commands found in stream
[2026-06-12 15:56:28,696.696 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 15:56:28,700.700 INFO    ] Waiting 0.96 seconds before fallback handling...
[2026-06-12 15:56:30,014.014 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 15:56:30,016.016 INFO    ] Checking for system updates...
[2026-06-12 15:56:30,036.036 INFO    ] 200
[2026-06-12 15:56:30,038.038 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:56:30,070.070 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 15:56:30,072.072 INFO    ] No update needed
[2026-06-12 15:56:30,073.073 INFO    ] Checking for camera pi updates...
[2026-06-12 15:56:30,092.092 INFO    ] 200
[2026-06-12 15:56:30,093.093 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:56:30,116.116 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 15:56:30,144.144 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 15:56:30,145.145 INFO    ] No camera update needed
[2026-06-12 15:56:30,146.146 INFO    ] Script finished. Safe exiting...
[2026-06-12 15:56:30,148.148 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 15:56:30,151.151 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 15:56:30,154.154 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 15:56:32,188.188 INFO    ] ================================================
[2026-06-12 15:56:32,198.198 INFO    ] Launching Daemon at Fri Jun 12 15:56:32 IST 2026
[2026-06-12 15:56:32,205.205 INFO    ] ================================================
[2026-06-12 15:56:32,513.513 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 15:56:32
[2026-06-12 15:56:32,824.824 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 15:56:32,955.955 INFO    ] Initializing speech engine...
[2026-06-12 15:56:32,963.963 INFO    ] 2026-06-12 15:56:32
[2026-06-12 15:56:33,173.173 INFO    ] 2026-06-12 15:56:33
[2026-06-12 15:56:33,201.201 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 15:56:33,384.384 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 15:56:33,394.394 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 15:56:33,564.564 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 15:56:33,608.608 INFO    ] time= 12/06/2026 15:56:33
[2026-06-12 15:56:33,613.613 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 15:56:33,620.620 INFO    ] Checking for existing commands in stream...
[2026-06-12 15:56:33,710.710 INFO    ] No existing commands found in stream
[2026-06-12 15:56:38,718.718 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 15:56:38,721.721 INFO    ] Waiting 1.25 seconds before fallback handling...
[2026-06-12 15:56:40,353.353 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 15:56:40,354.354 INFO    ] Checking for system updates...
[2026-06-12 15:56:40,374.374 INFO    ] 200
[2026-06-12 15:56:40,376.376 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:56:40,408.408 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 15:56:40,409.409 INFO    ] No update needed
[2026-06-12 15:56:40,411.411 INFO    ] Checking for camera pi updates...
[2026-06-12 15:56:40,431.431 INFO    ] 200
[2026-06-12 15:56:40,432.432 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:56:40,457.457 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 15:56:40,502.502 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 15:56:40,503.503 INFO    ] No camera update needed
[2026-06-12 15:56:40,505.505 INFO    ] Script finished. Safe exiting...
[2026-06-12 15:56:40,506.506 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 15:56:40,509.509 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 15:56:40,511.511 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 15:56:42,550.550 INFO    ] ================================================
[2026-06-12 15:56:42,566.566 INFO    ] Launching Daemon at Fri Jun 12 15:56:42 IST 2026
[2026-06-12 15:56:42,577.577 INFO    ] ================================================
[2026-06-12 15:56:42,916.916 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 15:56:42
[2026-06-12 15:56:43,228.228 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 15:56:43,360.360 INFO    ] Initializing speech engine...
[2026-06-12 15:56:43,372.372 INFO    ] 2026-06-12 15:56:43
[2026-06-12 15:56:43,578.578 INFO    ] 2026-06-12 15:56:43
[2026-06-12 15:56:43,606.606 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 15:56:43,790.790 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 15:56:43,794.794 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 15:56:43,946.946 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 15:56:43,999.999 INFO    ] time= 12/06/2026 15:56:43
[2026-06-12 15:56:44,021.021 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 15:56:44,027.027 INFO    ] Checking for existing commands in stream...
[2026-06-12 15:56:44,094.094 INFO    ] No existing commands found in stream
[2026-06-12 15:56:49,102.102 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 15:56:49,105.105 INFO    ] Waiting 3.74 seconds before fallback handling...
[2026-06-12 15:56:53,289.289 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 15:56:53,291.291 INFO    ] Checking for system updates...
[2026-06-12 15:56:53,311.311 INFO    ] 200
[2026-06-12 15:56:53,313.313 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:56:53,343.343 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 15:56:53,344.344 INFO    ] No update needed
[2026-06-12 15:56:53,345.345 INFO    ] Checking for camera pi updates...
[2026-06-12 15:56:53,365.365 INFO    ] 200
[2026-06-12 15:56:53,366.366 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:56:53,392.392 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 15:56:53,449.449 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 15:56:53,450.450 INFO    ] No camera update needed
[2026-06-12 15:56:53,452.452 INFO    ] Script finished. Safe exiting...
[2026-06-12 15:56:53,453.453 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 15:56:53,456.456 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 15:56:53,459.459 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 15:56:55,497.497 INFO    ] ================================================
[2026-06-12 15:56:55,511.511 INFO    ] Launching Daemon at Fri Jun 12 15:56:55 IST 2026
[2026-06-12 15:56:55,522.522 INFO    ] ================================================
[2026-06-12 15:56:55,862.862 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 15:56:55
[2026-06-12 15:56:56,174.174 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 15:56:56,311.311 INFO    ] Initializing speech engine...
[2026-06-12 15:56:56,321.321 INFO    ] 2026-06-12 15:56:56
[2026-06-12 15:56:56,525.525 INFO    ] 2026-06-12 15:56:56
[2026-06-12 15:56:56,553.553 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 15:56:56,736.736 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 15:56:56,739.739 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 15:56:56,885.885 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 15:56:56,943.943 INFO    ] time= 12/06/2026 15:56:56
[2026-06-12 15:56:56,965.965 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 15:56:56,972.972 INFO    ] Checking for existing commands in stream...
[2026-06-12 15:56:57,038.038 INFO    ] No existing commands found in stream
[2026-06-12 15:57:02,051.051 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 15:57:02,053.053 INFO    ] Waiting 3.80 seconds before fallback handling...
[2026-06-12 15:57:06,261.261 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 15:57:06,262.262 INFO    ] Checking for system updates...
[2026-06-12 15:57:06,284.284 INFO    ] 200
[2026-06-12 15:57:06,285.285 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:57:06,314.314 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 15:57:06,316.316 INFO    ] No update needed
[2026-06-12 15:57:06,317.317 INFO    ] Checking for camera pi updates...
[2026-06-12 15:57:06,336.336 INFO    ] 200
[2026-06-12 15:57:06,338.338 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:57:06,371.371 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 15:57:06,417.417 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 15:57:06,418.418 INFO    ] No camera update needed
[2026-06-12 15:57:06,420.420 INFO    ] Script finished. Safe exiting...
[2026-06-12 15:57:06,421.421 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 15:57:06,424.424 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 15:57:06,426.426 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 15:57:08,464.464 INFO    ] ================================================
[2026-06-12 15:57:08,479.479 INFO    ] Launching Daemon at Fri Jun 12 15:57:08 IST 2026
[2026-06-12 15:57:08,490.490 INFO    ] ================================================
[2026-06-12 15:57:08,872.872 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 15:57:08
[2026-06-12 15:57:09,210.210 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 15:57:09,354.354 INFO    ] Initializing speech engine...
[2026-06-12 15:57:09,365.365 INFO    ] 2026-06-12 15:57:09
[2026-06-12 15:57:09,572.572 INFO    ] 2026-06-12 15:57:09
[2026-06-12 15:57:09,601.601 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 15:57:09,783.783 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 15:57:09,787.787 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 15:57:09,983.983 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 15:57:10,010.010 INFO    ] time= 12/06/2026 15:57:09
[2026-06-12 15:57:10,016.016 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 15:57:10,018.018 INFO    ] Checking for existing commands in stream...
[2026-06-12 15:57:10,108.108 INFO    ] No existing commands found in stream
[2026-06-12 15:57:15,127.127 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 15:57:15,131.131 INFO    ] Waiting 3.34 seconds before fallback handling...
[2026-06-12 15:57:18,903.903 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 15:57:18,905.905 INFO    ] Checking for system updates...
[2026-06-12 15:57:18,925.925 INFO    ] 200
[2026-06-12 15:57:18,927.927 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:57:18,961.961 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 15:57:18,962.962 INFO    ] No update needed
[2026-06-12 15:57:18,963.963 INFO    ] Checking for camera pi updates...
[2026-06-12 15:57:18,983.983 INFO    ] 200
[2026-06-12 15:57:18,985.985 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:57:19,008.008 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 15:57:19,055.055 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 15:57:19,056.056 INFO    ] No camera update needed
[2026-06-12 15:57:19,058.058 INFO    ] Script finished. Safe exiting...
[2026-06-12 15:57:19,059.059 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 15:57:19,062.062 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 15:57:19,065.065 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 15:57:21,102.102 INFO    ] ================================================
[2026-06-12 15:57:21,120.120 INFO    ] Launching Daemon at Fri Jun 12 15:57:21 IST 2026
[2026-06-12 15:57:21,131.131 INFO    ] ================================================
[2026-06-12 15:57:21,499.499 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 15:57:21
[2026-06-12 15:57:21,834.834 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 15:57:21,984.984 INFO    ] Initializing speech engine...
[2026-06-12 15:57:21,989.989 INFO    ] 2026-06-12 15:57:21
[2026-06-12 15:57:22,197.197 INFO    ] 2026-06-12 15:57:22
[2026-06-12 15:57:22,226.226 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 15:57:22,415.415 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 15:57:22,425.425 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 15:57:22,606.606 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 15:57:22,646.646 INFO    ] time= 12/06/2026 15:57:22
[2026-06-12 15:57:22,652.652 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 15:57:22,654.654 INFO    ] Checking for existing commands in stream...
[2026-06-12 15:57:22,723.723 INFO    ] No existing commands found in stream
[2026-06-12 15:57:27,755.755 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 15:57:27,758.758 INFO    ] Waiting 0.48 seconds before fallback handling...
[2026-06-12 15:57:28,647.647 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 15:57:28,649.649 INFO    ] Checking for system updates...
[2026-06-12 15:57:28,669.669 INFO    ] 200
[2026-06-12 15:57:28,671.671 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:57:28,703.703 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 15:57:28,704.704 INFO    ] No update needed
[2026-06-12 15:57:28,706.706 INFO    ] Checking for camera pi updates...
[2026-06-12 15:57:28,730.730 INFO    ] 200
[2026-06-12 15:57:28,731.731 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:57:28,755.755 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 15:57:28,803.803 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 15:57:28,804.804 INFO    ] No camera update needed
[2026-06-12 15:57:28,805.805 INFO    ] Script finished. Safe exiting...
[2026-06-12 15:57:28,807.807 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 15:57:28,810.810 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 15:57:28,812.812 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 15:57:30,851.851 INFO    ] ================================================
[2026-06-12 15:57:30,867.867 INFO    ] Launching Daemon at Fri Jun 12 15:57:30 IST 2026
[2026-06-12 15:57:30,877.877 INFO    ] ================================================
[2026-06-12 15:57:31,237.237 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 15:57:31
[2026-06-12 15:57:31,574.574 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 15:57:31,710.710 INFO    ] Initializing speech engine...
[2026-06-12 15:57:31,715.715 INFO    ] 2026-06-12 15:57:31
[2026-06-12 15:57:31,958.958 INFO    ] 2026-06-12 15:57:31
[2026-06-12 15:57:31,990.990 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 15:57:32,188.188 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 15:57:32,198.198 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 15:57:32,370.370 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 15:57:32,400.400 INFO    ] time= 12/06/2026 15:57:32
[2026-06-12 15:57:32,402.402 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 15:57:32,414.414 INFO    ] Checking for existing commands in stream...
[2026-06-12 15:57:32,510.510 INFO    ] No existing commands found in stream
[2026-06-12 15:57:37,521.521 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 15:57:37,524.524 INFO    ] Waiting 3.90 seconds before fallback handling...
[2026-06-12 15:57:42,623.623 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 15:57:42,626.626 INFO    ] Checking for system updates...
[2026-06-12 15:57:42,663.663 INFO    ] 200
[2026-06-12 15:57:42,666.666 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:57:42,725.725 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 15:57:42,728.728 INFO    ] No update needed
[2026-06-12 15:57:42,731.731 INFO    ] Checking for camera pi updates...
[2026-06-12 15:57:42,755.755 INFO    ] 200
[2026-06-12 15:57:42,756.756 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:57:42,784.784 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 15:57:42,830.830 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 15:57:42,832.832 INFO    ] No camera update needed
[2026-06-12 15:57:42,833.833 INFO    ] Script finished. Safe exiting...
[2026-06-12 15:57:42,834.834 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 15:57:42,838.838 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 15:57:42,840.840 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 15:57:44,878.878 INFO    ] ================================================
[2026-06-12 15:57:44,893.893 INFO    ] Launching Daemon at Fri Jun 12 15:57:44 IST 2026
[2026-06-12 15:57:44,904.904 INFO    ] ================================================
[2026-06-12 15:57:45,256.256 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 15:57:45
[2026-06-12 15:57:45,574.574 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 15:57:45,706.706 INFO    ] Initializing speech engine...
[2026-06-12 15:57:45,719.719 INFO    ] 2026-06-12 15:57:45
[2026-06-12 15:57:45,925.925 INFO    ] 2026-06-12 15:57:45
[2026-06-12 15:57:45,955.955 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 15:57:46,138.138 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 15:57:46,147.147 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 15:57:46,290.290 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 15:57:46,343.343 INFO    ] time= 12/06/2026 15:57:46
[2026-06-12 15:57:46,365.365 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 15:57:46,370.370 INFO    ] Checking for existing commands in stream...
[2026-06-12 15:57:46,486.486 INFO    ] No existing commands found in stream
[2026-06-12 15:57:51,495.495 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 15:57:51,498.498 INFO    ] Waiting 0.41 seconds before fallback handling...
[2026-06-12 15:57:52,339.339 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 15:57:52,340.340 INFO    ] Checking for system updates...
[2026-06-12 15:57:52,361.361 INFO    ] 200
[2026-06-12 15:57:52,362.362 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:57:52,393.393 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 15:57:52,394.394 INFO    ] No update needed
[2026-06-12 15:57:52,396.396 INFO    ] Checking for camera pi updates...
[2026-06-12 15:57:52,416.416 INFO    ] 200
[2026-06-12 15:57:52,418.418 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:57:52,442.442 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 15:57:52,486.486 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 15:57:52,487.487 INFO    ] No camera update needed
[2026-06-12 15:57:52,488.488 INFO    ] Script finished. Safe exiting...
[2026-06-12 15:57:52,490.490 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 15:57:52,493.493 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 15:57:52,495.495 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 15:57:54,533.533 INFO    ] ================================================
[2026-06-12 15:57:54,548.548 INFO    ] Launching Daemon at Fri Jun 12 15:57:54 IST 2026
[2026-06-12 15:57:54,559.559 INFO    ] ================================================
[2026-06-12 15:57:54,914.914 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 15:57:54
[2026-06-12 15:57:55,228.228 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 15:57:55,358.358 INFO    ] Initializing speech engine...
[2026-06-12 15:57:55,366.366 INFO    ] 2026-06-12 15:57:55
[2026-06-12 15:57:55,577.577 INFO    ] 2026-06-12 15:57:55
[2026-06-12 15:57:55,607.607 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 15:57:55,790.790 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 15:57:55,793.793 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 15:57:55,945.945 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 15:57:55,999.999 INFO    ] time= 12/06/2026 15:57:55
[2026-06-12 15:57:56,021.021 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 15:57:56,027.027 INFO    ] Checking for existing commands in stream...
[2026-06-12 15:57:56,092.092 INFO    ] No existing commands found in stream
[2026-06-12 15:58:01,103.103 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 15:58:01,105.105 INFO    ] Waiting 3.23 seconds before fallback handling...
[2026-06-12 15:58:04,687.687 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 15:58:04,688.688 INFO    ] Checking for system updates...
[2026-06-12 15:58:04,711.711 INFO    ] 200
[2026-06-12 15:58:04,712.712 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:58:04,744.744 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 15:58:04,745.745 INFO    ] No update needed
[2026-06-12 15:58:04,746.746 INFO    ] Checking for camera pi updates...
[2026-06-12 15:58:04,766.766 INFO    ] 200
[2026-06-12 15:58:04,768.768 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:58:04,792.792 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 15:58:04,834.834 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 15:58:04,835.835 INFO    ] No camera update needed
[2026-06-12 15:58:04,836.836 INFO    ] Script finished. Safe exiting...
[2026-06-12 15:58:04,838.838 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 15:58:04,841.841 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 15:58:04,844.844 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 15:58:06,885.885 INFO    ] ================================================
[2026-06-12 15:58:06,900.900 INFO    ] Launching Daemon at Fri Jun 12 15:58:06 IST 2026
[2026-06-12 15:58:06,910.910 INFO    ] ================================================
[2026-06-12 15:58:07,243.243 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 15:58:07
[2026-06-12 15:58:07,554.554 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 15:58:07,683.683 INFO    ] Initializing speech engine...
[2026-06-12 15:58:07,686.686 INFO    ] 2026-06-12 15:58:07
[2026-06-12 15:58:07,901.901 INFO    ] 2026-06-12 15:58:07
[2026-06-12 15:58:07,930.930 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 15:58:08,112.112 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 15:58:08,122.122 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 15:58:08,259.259 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 15:58:08,316.316 INFO    ] time= 12/06/2026 15:58:08
[2026-06-12 15:58:08,338.338 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 15:58:08,344.344 INFO    ] Checking for existing commands in stream...
[2026-06-12 15:58:08,410.410 INFO    ] No existing commands found in stream
[2026-06-12 15:58:13,419.419 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 15:58:13,422.422 INFO    ] Waiting 0.33 seconds before fallback handling...
[2026-06-12 15:58:14,168.168 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 15:58:14,169.169 INFO    ] Checking for system updates...
[2026-06-12 15:58:14,190.190 INFO    ] 200
[2026-06-12 15:58:14,192.192 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:58:14,222.222 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 15:58:14,223.223 INFO    ] No update needed
[2026-06-12 15:58:14,224.224 INFO    ] Checking for camera pi updates...
[2026-06-12 15:58:14,245.245 INFO    ] 200
[2026-06-12 15:58:14,246.246 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:58:14,272.272 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 15:58:14,311.311 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 15:58:14,312.312 INFO    ] No camera update needed
[2026-06-12 15:58:14,313.313 INFO    ] Script finished. Safe exiting...
[2026-06-12 15:58:14,315.315 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 15:58:14,318.318 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 15:58:14,321.321 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 15:58:16,359.359 INFO    ] ================================================
[2026-06-12 15:58:16,374.374 INFO    ] Launching Daemon at Fri Jun 12 15:58:16 IST 2026
[2026-06-12 15:58:16,385.385 INFO    ] ================================================
[2026-06-12 15:58:16,747.747 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 15:58:16
[2026-06-12 15:58:17,058.058 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 15:58:17,201.201 INFO    ] Initializing speech engine...
[2026-06-12 15:58:17,205.205 INFO    ] 2026-06-12 15:58:17
[2026-06-12 15:58:17,408.408 INFO    ] 2026-06-12 15:58:17
[2026-06-12 15:58:17,436.436 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 15:58:17,618.618 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 15:58:17,628.628 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 15:58:17,778.778 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 15:58:17,826.826 INFO    ] time= 12/06/2026 15:58:17
[2026-06-12 15:58:17,847.847 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 15:58:17,853.853 INFO    ] Checking for existing commands in stream...
[2026-06-12 15:58:17,920.920 INFO    ] No existing commands found in stream
[2026-06-12 15:58:22,952.952 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 15:58:22,955.955 INFO    ] Waiting 0.89 seconds before fallback handling...
[2026-06-12 15:58:24,226.226 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 15:58:24,227.227 INFO    ] Checking for system updates...
[2026-06-12 15:58:24,249.249 INFO    ] 200
[2026-06-12 15:58:24,251.251 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:58:24,283.283 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 15:58:24,284.284 INFO    ] No update needed
[2026-06-12 15:58:24,285.285 INFO    ] Checking for camera pi updates...
[2026-06-12 15:58:24,308.308 INFO    ] 200
[2026-06-12 15:58:24,310.310 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:58:24,335.335 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 15:58:24,472.472 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 15:58:24,474.474 INFO    ] No camera update needed
[2026-06-12 15:58:24,475.475 INFO    ] Script finished. Safe exiting...
[2026-06-12 15:58:24,477.477 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 15:58:24,480.480 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 15:58:24,483.483 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 15:58:26,521.521 INFO    ] ================================================
[2026-06-12 15:58:26,536.536 INFO    ] Launching Daemon at Fri Jun 12 15:58:26 IST 2026
[2026-06-12 15:58:26,546.546 INFO    ] ================================================
[2026-06-12 15:58:26,899.899 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 15:58:26
[2026-06-12 15:58:27,216.216 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 15:58:27,350.350 INFO    ] Initializing speech engine...
[2026-06-12 15:58:27,355.355 INFO    ] 2026-06-12 15:58:27
[2026-06-12 15:58:27,584.584 INFO    ] 2026-06-12 15:58:27
[2026-06-12 15:58:27,615.615 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 15:58:27,814.814 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 15:58:27,820.820 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 15:58:27,966.966 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 15:58:28,038.038 INFO    ] time= 12/06/2026 15:58:27
[2026-06-12 15:58:28,064.064 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 15:58:28,071.071 INFO    ] Checking for existing commands in stream...
[2026-06-12 15:58:28,142.142 INFO    ] No existing commands found in stream
[2026-06-12 15:58:33,151.151 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 15:58:33,154.154 INFO    ] Waiting 3.04 seconds before fallback handling...
[2026-06-12 15:58:36,580.580 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 15:58:36,582.582 INFO    ] Checking for system updates...
[2026-06-12 15:58:36,603.603 INFO    ] 200
[2026-06-12 15:58:36,604.604 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:58:36,635.635 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 15:58:36,637.637 INFO    ] No update needed
[2026-06-12 15:58:36,638.638 INFO    ] Checking for camera pi updates...
[2026-06-12 15:58:36,658.658 INFO    ] 200
[2026-06-12 15:58:36,660.660 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:58:36,684.684 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 15:58:36,724.724 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 15:58:36,726.726 INFO    ] No camera update needed
[2026-06-12 15:58:36,727.727 INFO    ] Script finished. Safe exiting...
[2026-06-12 15:58:36,728.728 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 15:58:36,731.731 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 15:58:36,734.734 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 15:58:38,774.774 INFO    ] ================================================
[2026-06-12 15:58:38,789.789 INFO    ] Launching Daemon at Fri Jun 12 15:58:38 IST 2026
[2026-06-12 15:58:38,800.800 INFO    ] ================================================
[2026-06-12 15:58:39,162.162 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 15:58:39
[2026-06-12 15:58:39,474.474 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 15:58:39,604.604 INFO    ] Initializing speech engine...
[2026-06-12 15:58:39,612.612 INFO    ] 2026-06-12 15:58:39
[2026-06-12 15:58:39,825.825 INFO    ] 2026-06-12 15:58:39
[2026-06-12 15:58:39,854.854 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 15:58:39,980.980 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 15:58:40,038.038 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 15:58:40,196.196 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 15:58:40,243.243 INFO    ] time= 12/06/2026 15:58:40
[2026-06-12 15:58:40,265.265 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 15:58:40,272.272 INFO    ] Checking for existing commands in stream...
[2026-06-12 15:58:40,338.338 INFO    ] No existing commands found in stream
[2026-06-12 15:58:45,347.347 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 15:58:45,350.350 INFO    ] Waiting 1.28 seconds before fallback handling...
[2026-06-12 15:58:47,054.054 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 15:58:47,056.056 INFO    ] Checking for system updates...
[2026-06-12 15:58:47,077.077 INFO    ] 200
[2026-06-12 15:58:47,078.078 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:58:47,108.108 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 15:58:47,110.110 INFO    ] No update needed
[2026-06-12 15:58:47,111.111 INFO    ] Checking for camera pi updates...
[2026-06-12 15:58:47,131.131 INFO    ] 200
[2026-06-12 15:58:47,132.132 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:58:47,157.157 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 15:58:47,207.207 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 15:58:47,208.208 INFO    ] No camera update needed
[2026-06-12 15:58:47,210.210 INFO    ] Script finished. Safe exiting...
[2026-06-12 15:58:47,211.211 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 15:58:47,214.214 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 15:58:47,217.217 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 15:58:49,255.255 INFO    ] ================================================
[2026-06-12 15:58:49,270.270 INFO    ] Launching Daemon at Fri Jun 12 15:58:49 IST 2026
[2026-06-12 15:58:49,281.281 INFO    ] ================================================
[2026-06-12 15:58:49,628.628 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 15:58:49
[2026-06-12 15:58:49,941.941 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 15:58:50,071.071 INFO    ] Initializing speech engine...
[2026-06-12 15:58:50,080.080 INFO    ] 2026-06-12 15:58:50
[2026-06-12 15:58:50,292.292 INFO    ] 2026-06-12 15:58:50
[2026-06-12 15:58:50,320.320 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 15:58:50,503.503 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 15:58:50,514.514 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 15:58:50,658.658 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 15:58:50,710.710 INFO    ] time= 12/06/2026 15:58:50
[2026-06-12 15:58:50,732.732 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 15:58:50,739.739 INFO    ] Checking for existing commands in stream...
[2026-06-12 15:58:50,829.829 INFO    ] No existing commands found in stream
[2026-06-12 15:58:55,843.843 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 15:58:55,851.851 INFO    ] Waiting 0.02 seconds before fallback handling...
[2026-06-12 15:58:56,266.266 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 15:58:56,267.267 INFO    ] Checking for system updates...
[2026-06-12 15:58:56,287.287 INFO    ] 200
[2026-06-12 15:58:56,289.289 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:58:56,320.320 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 15:58:56,322.322 INFO    ] No update needed
[2026-06-12 15:58:56,323.323 INFO    ] Checking for camera pi updates...
[2026-06-12 15:58:56,343.343 INFO    ] 200
[2026-06-12 15:58:56,345.345 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:58:56,369.369 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 15:58:56,423.423 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 15:58:56,424.424 INFO    ] No camera update needed
[2026-06-12 15:58:56,425.425 INFO    ] Script finished. Safe exiting...
[2026-06-12 15:58:56,427.427 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 15:58:56,430.430 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 15:58:56,432.432 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 15:58:58,470.470 INFO    ] ================================================
[2026-06-12 15:58:58,485.485 INFO    ] Launching Daemon at Fri Jun 12 15:58:58 IST 2026
[2026-06-12 15:58:58,496.496 INFO    ] ================================================
[2026-06-12 15:58:58,849.849 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 15:58:58
[2026-06-12 15:58:59,165.165 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 15:58:59,303.303 INFO    ] Initializing speech engine...
[2026-06-12 15:58:59,312.312 INFO    ] 2026-06-12 15:58:59
[2026-06-12 15:58:59,518.518 INFO    ] 2026-06-12 15:58:59
[2026-06-12 15:58:59,545.545 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 15:58:59,729.729 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 15:58:59,738.738 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 15:58:59,872.872 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 15:58:59,935.935 INFO    ] time= 12/06/2026 15:58:59
[2026-06-12 15:58:59,958.958 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 15:58:59,964.964 INFO    ] Checking for existing commands in stream...
[2026-06-12 15:59:00,053.053 INFO    ] No existing commands found in stream
[2026-06-12 15:59:05,067.067 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 15:59:05,070.070 INFO    ] Waiting 1.25 seconds before fallback handling...
[2026-06-12 15:59:06,705.705 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 15:59:06,715.715 INFO    ] Checking for system updates...
[2026-06-12 15:59:06,737.737 INFO    ] 200
[2026-06-12 15:59:06,739.739 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:59:06,770.770 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 15:59:06,772.772 INFO    ] No update needed
[2026-06-12 15:59:06,773.773 INFO    ] Checking for camera pi updates...
[2026-06-12 15:59:06,793.793 INFO    ] 200
[2026-06-12 15:59:06,795.795 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:59:06,821.821 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 15:59:06,876.876 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 15:59:06,877.877 INFO    ] No camera update needed
[2026-06-12 15:59:06,878.878 INFO    ] Script finished. Safe exiting...
[2026-06-12 15:59:06,880.880 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 15:59:06,883.883 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 15:59:06,885.885 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 15:59:08,923.923 INFO    ] ================================================
[2026-06-12 15:59:08,938.938 INFO    ] Launching Daemon at Fri Jun 12 15:59:08 IST 2026
[2026-06-12 15:59:08,949.949 INFO    ] ================================================
[2026-06-12 15:59:09,283.283 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 15:59:09
[2026-06-12 15:59:09,593.593 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 15:59:09,726.726 INFO    ] Initializing speech engine...
[2026-06-12 15:59:09,735.735 INFO    ] 2026-06-12 15:59:09
[2026-06-12 15:59:09,958.958 INFO    ] 2026-06-12 15:59:09
[2026-06-12 15:59:09,988.988 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 15:59:10,183.183 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 15:59:10,187.187 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 15:59:10,332.332 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 15:59:10,401.401 INFO    ] time= 12/06/2026 15:59:10
[2026-06-12 15:59:10,412.412 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 15:59:10,430.430 INFO    ] Checking for existing commands in stream...
[2026-06-12 15:59:10,531.531 INFO    ] No existing commands found in stream
[2026-06-12 15:59:15,540.540 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 15:59:15,543.543 INFO    ] Waiting 1.05 seconds before fallback handling...
[2026-06-12 15:59:17,006.006 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 15:59:17,007.007 INFO    ] Checking for system updates...
[2026-06-12 15:59:17,027.027 INFO    ] 200
[2026-06-12 15:59:17,029.029 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:59:17,060.060 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 15:59:17,061.061 INFO    ] No update needed
[2026-06-12 15:59:17,062.062 INFO    ] Checking for camera pi updates...
[2026-06-12 15:59:17,082.082 INFO    ] 200
[2026-06-12 15:59:17,084.084 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:59:17,106.106 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 15:59:17,138.138 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 15:59:17,139.139 INFO    ] No camera update needed
[2026-06-12 15:59:17,141.141 INFO    ] Script finished. Safe exiting...
[2026-06-12 15:59:17,142.142 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 15:59:17,145.145 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 15:59:17,147.147 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 15:59:19,186.186 INFO    ] ================================================
[2026-06-12 15:59:19,201.201 INFO    ] Launching Daemon at Fri Jun 12 15:59:19 IST 2026
[2026-06-12 15:59:19,211.211 INFO    ] ================================================
[2026-06-12 15:59:19,564.564 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 15:59:19
[2026-06-12 15:59:19,899.899 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 15:59:20,048.048 INFO    ] Initializing speech engine...
[2026-06-12 15:59:20,054.054 INFO    ] 2026-06-12 15:59:20
[2026-06-12 15:59:20,274.274 INFO    ] 2026-06-12 15:59:20
[2026-06-12 15:59:20,303.303 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 15:59:20,487.487 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 15:59:20,491.491 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 15:59:20,633.633 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 15:59:20,635.635 INFO    ] time= 12/06/2026 15:59:20
[2026-06-12 15:59:20,637.637 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 15:59:20,706.706 INFO    ] Checking for existing commands in stream...
[2026-06-12 15:59:20,798.798 INFO    ] No existing commands found in stream
[2026-06-12 15:59:25,809.809 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 15:59:25,812.812 INFO    ] Waiting 2.28 seconds before fallback handling...
[2026-06-12 15:59:28,482.482 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 15:59:28,483.483 INFO    ] Checking for system updates...
[2026-06-12 15:59:28,505.505 INFO    ] 200
[2026-06-12 15:59:28,506.506 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:59:28,539.539 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 15:59:28,540.540 INFO    ] No update needed
[2026-06-12 15:59:28,542.542 INFO    ] Checking for camera pi updates...
[2026-06-12 15:59:28,562.562 INFO    ] 200
[2026-06-12 15:59:28,564.564 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:59:28,588.588 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 15:59:28,632.632 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 15:59:28,634.634 INFO    ] No camera update needed
[2026-06-12 15:59:28,635.635 INFO    ] Script finished. Safe exiting...
[2026-06-12 15:59:28,636.636 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 15:59:28,639.639 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 15:59:28,642.642 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 15:59:30,681.681 INFO    ] ================================================
[2026-06-12 15:59:30,696.696 INFO    ] Launching Daemon at Fri Jun 12 15:59:30 IST 2026
[2026-06-12 15:59:30,708.708 INFO    ] ================================================
[2026-06-12 15:59:31,076.076 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 15:59:31
[2026-06-12 15:59:31,408.408 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 15:59:31,563.563 INFO    ] Initializing speech engine...
[2026-06-12 15:59:31,569.569 INFO    ] 2026-06-12 15:59:31
[2026-06-12 15:59:31,761.761 INFO    ] 2026-06-12 15:59:31
[2026-06-12 15:59:31,809.809 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 15:59:31,982.982 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 15:59:32,036.036 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 15:59:32,201.201 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 15:59:32,260.260 INFO    ] time= 12/06/2026 15:59:32
[2026-06-12 15:59:32,293.293 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 15:59:32,295.295 INFO    ] Checking for existing commands in stream...
[2026-06-12 15:59:32,368.368 INFO    ] No existing commands found in stream
[2026-06-12 15:59:37,382.382 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 15:59:37,385.385 INFO    ] Waiting 1.03 seconds before fallback handling...
[2026-06-12 15:59:38,823.823 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 15:59:38,824.824 INFO    ] Checking for system updates...
[2026-06-12 15:59:38,845.845 INFO    ] 200
[2026-06-12 15:59:38,847.847 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:59:38,878.878 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 15:59:38,880.880 INFO    ] No update needed
[2026-06-12 15:59:38,881.881 INFO    ] Checking for camera pi updates...
[2026-06-12 15:59:38,900.900 INFO    ] 200
[2026-06-12 15:59:38,902.902 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:59:38,924.924 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 15:59:38,983.983 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 15:59:38,985.985 INFO    ] No camera update needed
[2026-06-12 15:59:38,986.986 INFO    ] Script finished. Safe exiting...
[2026-06-12 15:59:38,987.987 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 15:59:38,990.990 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 15:59:38,993.993 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 15:59:41,031.031 INFO    ] ================================================
[2026-06-12 15:59:41,047.047 INFO    ] Launching Daemon at Fri Jun 12 15:59:41 IST 2026
[2026-06-12 15:59:41,058.058 INFO    ] ================================================
[2026-06-12 15:59:41,421.421 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 15:59:41
[2026-06-12 15:59:41,734.734 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 15:59:41,864.864 INFO    ] Initializing speech engine...
[2026-06-12 15:59:41,877.877 INFO    ] 2026-06-12 15:59:41
[2026-06-12 15:59:42,088.088 INFO    ] 2026-06-12 15:59:42
[2026-06-12 15:59:42,117.117 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 15:59:42,301.301 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 15:59:42,310.310 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 15:59:42,459.459 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 15:59:42,508.508 INFO    ] time= 12/06/2026 15:59:42
[2026-06-12 15:59:42,530.530 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 15:59:42,536.536 INFO    ] Checking for existing commands in stream...
[2026-06-12 15:59:42,603.603 INFO    ] No existing commands found in stream
[2026-06-12 15:59:47,627.627 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 15:59:47,631.631 INFO    ] Waiting 3.67 seconds before fallback handling...
[2026-06-12 15:59:51,660.660 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 15:59:51,661.661 INFO    ] Checking for system updates...
[2026-06-12 15:59:51,682.682 INFO    ] 200
[2026-06-12 15:59:51,683.683 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:59:51,715.715 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 15:59:51,717.717 INFO    ] No update needed
[2026-06-12 15:59:51,718.718 INFO    ] Checking for camera pi updates...
[2026-06-12 15:59:51,740.740 INFO    ] 200
[2026-06-12 15:59:51,742.742 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 15:59:51,765.765 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 15:59:51,820.820 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 15:59:51,822.822 INFO    ] No camera update needed
[2026-06-12 15:59:51,823.823 INFO    ] Script finished. Safe exiting...
[2026-06-12 15:59:51,824.824 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 15:59:51,827.827 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 15:59:51,830.830 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 15:59:53,869.869 INFO    ] ================================================
[2026-06-12 15:59:53,884.884 INFO    ] Launching Daemon at Fri Jun 12 15:59:53 IST 2026
[2026-06-12 15:59:53,903.903 INFO    ] ================================================
[2026-06-12 15:59:54,252.252 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 15:59:54
[2026-06-12 15:59:54,562.562 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 15:59:54,704.704 INFO    ] Initializing speech engine...
[2026-06-12 15:59:54,709.709 INFO    ] 2026-06-12 15:59:54
[2026-06-12 15:59:54,911.911 INFO    ] 2026-06-12 15:59:54
[2026-06-12 15:59:54,941.941 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 15:59:55,123.123 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 15:59:55,132.132 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 15:59:55,316.316 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 15:59:55,347.347 INFO    ] time= 12/06/2026 15:59:55
[2026-06-12 15:59:55,349.349 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 15:59:55,355.355 INFO    ] Checking for existing commands in stream...
[2026-06-12 15:59:55,422.422 INFO    ] No existing commands found in stream
[2026-06-12 16:00:00,436.436 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 16:00:00,438.438 INFO    ] Waiting 0.17 seconds before fallback handling...
[2026-06-12 16:00:01,033.033 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 16:00:01,035.035 INFO    ] Checking for system updates...
[2026-06-12 16:00:01,056.056 INFO    ] 200
[2026-06-12 16:00:01,057.057 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:00:01,090.090 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 16:00:01,091.091 INFO    ] No update needed
[2026-06-12 16:00:01,092.092 INFO    ] Checking for camera pi updates...
[2026-06-12 16:00:01,117.117 INFO    ] 200
[2026-06-12 16:00:01,118.118 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:00:01,141.141 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 16:00:01,188.188 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 16:00:01,189.189 INFO    ] No camera update needed
[2026-06-12 16:00:01,190.190 INFO    ] Script finished. Safe exiting...
[2026-06-12 16:00:01,192.192 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 16:00:01,195.195 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 16:00:01,198.198 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 16:00:03,245.245 INFO    ] ================================================
[2026-06-12 16:00:03,292.292 INFO    ] Launching Daemon at Fri Jun 12 16:00:03 IST 2026
[2026-06-12 16:00:03,316.316 INFO    ] ================================================
[2026-06-12 16:00:04,233.233 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 16:00:04
[2026-06-12 16:00:04,579.579 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 16:00:04,715.715 INFO    ] Initializing speech engine...
[2026-06-12 16:00:04,726.726 INFO    ] 2026-06-12 16:00:04
[2026-06-12 16:00:04,929.929 INFO    ] 2026-06-12 16:00:04
[2026-06-12 16:00:04,957.957 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 16:00:05,091.091 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 16:00:05,144.144 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 16:00:05,274.274 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 16:00:05,335.335 INFO    ] time= 12/06/2026 16:00:05
[2026-06-12 16:00:05,363.363 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 16:00:05,373.373 INFO    ] Checking for existing commands in stream...
[2026-06-12 16:00:05,445.445 INFO    ] No existing commands found in stream
[2026-06-12 16:00:10,464.464 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 16:00:10,466.466 INFO    ] Waiting 3.67 seconds before fallback handling...
[2026-06-12 16:00:14,560.560 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 16:00:14,562.562 INFO    ] Checking for system updates...
[2026-06-12 16:00:14,582.582 INFO    ] 200
[2026-06-12 16:00:14,584.584 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:00:14,614.614 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 16:00:14,615.615 INFO    ] No update needed
[2026-06-12 16:00:14,617.617 INFO    ] Checking for camera pi updates...
[2026-06-12 16:00:14,636.636 INFO    ] 200
[2026-06-12 16:00:14,637.637 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:00:14,662.662 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 16:00:14,709.709 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 16:00:14,710.710 INFO    ] No camera update needed
[2026-06-12 16:00:14,712.712 INFO    ] Script finished. Safe exiting...
[2026-06-12 16:00:14,713.713 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 16:00:14,716.716 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 16:00:14,718.718 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 16:00:16,757.757 INFO    ] ================================================
[2026-06-12 16:00:16,777.777 INFO    ] Launching Daemon at Fri Jun 12 16:00:16 IST 2026
[2026-06-12 16:00:16,788.788 INFO    ] ================================================
[2026-06-12 16:00:17,174.174 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 16:00:17
[2026-06-12 16:00:17,515.515 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 16:00:17,668.668 INFO    ] Initializing speech engine...
[2026-06-12 16:00:17,675.675 INFO    ] 2026-06-12 16:00:17
[2026-06-12 16:00:17,885.885 INFO    ] 2026-06-12 16:00:17
[2026-06-12 16:00:17,914.914 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 16:00:18,105.105 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 16:00:18,115.115 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 16:00:18,297.297 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 16:00:18,337.337 INFO    ] time= 12/06/2026 16:00:18
[2026-06-12 16:00:18,343.343 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 16:00:18,345.345 INFO    ] Checking for existing commands in stream...
[2026-06-12 16:00:18,417.417 INFO    ] No existing commands found in stream
[2026-06-12 16:00:23,432.432 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 16:00:23,435.435 INFO    ] Waiting 0.52 seconds before fallback handling...
[2026-06-12 16:00:24,338.338 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 16:00:24,340.340 INFO    ] Checking for system updates...
[2026-06-12 16:00:24,361.361 INFO    ] 200
[2026-06-12 16:00:24,363.363 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:00:24,393.393 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 16:00:24,394.394 INFO    ] No update needed
[2026-06-12 16:00:24,396.396 INFO    ] Checking for camera pi updates...
[2026-06-12 16:00:24,415.415 INFO    ] 200
[2026-06-12 16:00:24,416.416 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:00:24,441.441 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 16:00:24,498.498 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 16:00:24,499.499 INFO    ] No camera update needed
[2026-06-12 16:00:24,501.501 INFO    ] Script finished. Safe exiting...
[2026-06-12 16:00:24,502.502 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 16:00:24,505.505 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 16:00:24,507.507 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 16:00:26,545.545 INFO    ] ================================================
[2026-06-12 16:00:26,561.561 INFO    ] Launching Daemon at Fri Jun 12 16:00:26 IST 2026
[2026-06-12 16:00:26,573.573 INFO    ] ================================================
[2026-06-12 16:00:26,972.972 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 16:00:26
[2026-06-12 16:00:27,312.312 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 16:00:27,463.463 INFO    ] Initializing speech engine...
[2026-06-12 16:00:27,470.470 INFO    ] 2026-06-12 16:00:27
[2026-06-12 16:00:27,686.686 INFO    ] 2026-06-12 16:00:27
[2026-06-12 16:00:27,716.716 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 16:00:27,904.904 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 16:00:27,913.913 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 16:00:28,098.098 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 16:00:28,132.132 INFO    ] time= 12/06/2026 16:00:28
[2026-06-12 16:00:28,149.149 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 16:00:28,156.156 INFO    ] Checking for existing commands in stream...
[2026-06-12 16:00:28,226.226 INFO    ] No existing commands found in stream
[2026-06-12 16:00:33,235.235 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 16:00:33,237.237 INFO    ] Waiting 1.22 seconds before fallback handling...
[2026-06-12 16:00:34,856.856 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 16:00:34,857.857 INFO    ] Checking for system updates...
[2026-06-12 16:00:34,879.879 INFO    ] 200
[2026-06-12 16:00:34,881.881 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:00:34,913.913 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 16:00:34,914.914 INFO    ] No update needed
[2026-06-12 16:00:34,916.916 INFO    ] Checking for camera pi updates...
[2026-06-12 16:00:34,936.936 INFO    ] 200
[2026-06-12 16:00:34,938.938 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:00:34,961.961 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 16:00:35,004.004 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 16:00:35,006.006 INFO    ] No camera update needed
[2026-06-12 16:00:35,007.007 INFO    ] Script finished. Safe exiting...
[2026-06-12 16:00:35,008.008 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 16:00:35,012.012 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 16:00:35,014.014 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 16:00:37,046.046 INFO    ] ================================================
[2026-06-12 16:00:37,056.056 INFO    ] Launching Daemon at Fri Jun 12 16:00:37 IST 2026
[2026-06-12 16:00:37,063.063 INFO    ] ================================================
[2026-06-12 16:00:37,390.390 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 16:00:37
[2026-06-12 16:00:37,713.713 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 16:00:37,871.871 INFO    ] Initializing speech engine...
[2026-06-12 16:00:37,886.886 INFO    ] 2026-06-12 16:00:37
[2026-06-12 16:00:38,095.095 INFO    ] 2026-06-12 16:00:38
[2026-06-12 16:00:38,124.124 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 16:00:38,293.293 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 16:00:38,359.359 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 16:00:38,495.495 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 16:00:38,547.547 INFO    ] time= 12/06/2026 16:00:38
[2026-06-12 16:00:38,589.589 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 16:00:38,591.591 INFO    ] Checking for existing commands in stream...
[2026-06-12 16:00:38,686.686 INFO    ] No existing commands found in stream
[2026-06-12 16:00:43,711.711 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 16:00:43,715.715 INFO    ] Waiting 0.49 seconds before fallback handling...
[2026-06-12 16:00:44,630.630 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 16:00:44,631.631 INFO    ] Checking for system updates...
[2026-06-12 16:00:44,654.654 INFO    ] 200
[2026-06-12 16:00:44,655.655 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:00:44,688.688 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 16:00:44,689.689 INFO    ] No update needed
[2026-06-12 16:00:44,691.691 INFO    ] Checking for camera pi updates...
[2026-06-12 16:00:44,712.712 INFO    ] 200
[2026-06-12 16:00:44,714.714 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:00:44,740.740 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 16:00:44,786.786 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 16:00:44,788.788 INFO    ] No camera update needed
[2026-06-12 16:00:44,789.789 INFO    ] Script finished. Safe exiting...
[2026-06-12 16:00:44,791.791 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 16:00:44,794.794 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 16:00:44,797.797 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 16:00:46,837.837 INFO    ] ================================================
[2026-06-12 16:00:46,853.853 INFO    ] Launching Daemon at Fri Jun 12 16:00:46 IST 2026
[2026-06-12 16:00:46,865.865 INFO    ] ================================================
[2026-06-12 16:00:47,193.193 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 16:00:47
[2026-06-12 16:00:47,505.505 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 16:00:47,649.649 INFO    ] Initializing speech engine...
[2026-06-12 16:00:47,654.654 INFO    ] 2026-06-12 16:00:47
[2026-06-12 16:00:47,859.859 INFO    ] 2026-06-12 16:00:47
[2026-06-12 16:00:47,888.888 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 16:00:48,079.079 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 16:00:48,089.089 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 16:00:48,223.223 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 16:00:48,264.264 INFO    ] time= 12/06/2026 16:00:48
[2026-06-12 16:00:48,307.307 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 16:00:48,331.331 INFO    ] Checking for existing commands in stream...
[2026-06-12 16:00:48,457.457 INFO    ] No existing commands found in stream
[2026-06-12 16:00:53,471.471 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 16:00:53,474.474 INFO    ] Waiting 2.57 seconds before fallback handling...
[2026-06-12 16:00:56,479.479 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 16:00:56,481.481 INFO    ] Checking for system updates...
[2026-06-12 16:00:56,502.502 INFO    ] 200
[2026-06-12 16:00:56,503.503 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:00:56,536.536 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 16:00:56,537.537 INFO    ] No update needed
[2026-06-12 16:00:56,538.538 INFO    ] Checking for camera pi updates...
[2026-06-12 16:00:56,559.559 INFO    ] 200
[2026-06-12 16:00:56,561.561 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:00:56,585.585 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 16:00:56,627.627 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 16:00:56,628.628 INFO    ] No camera update needed
[2026-06-12 16:00:56,629.629 INFO    ] Script finished. Safe exiting...
[2026-06-12 16:00:56,631.631 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 16:00:56,634.634 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 16:00:56,636.636 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 16:00:58,677.677 INFO    ] ================================================
[2026-06-12 16:00:58,693.693 INFO    ] Launching Daemon at Fri Jun 12 16:00:58 IST 2026
[2026-06-12 16:00:58,704.704 INFO    ] ================================================
[2026-06-12 16:00:59,078.078 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 16:00:59
[2026-06-12 16:00:59,420.420 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 16:00:59,579.579 INFO    ] Initializing speech engine...
[2026-06-12 16:00:59,586.586 INFO    ] 2026-06-12 16:00:59
[2026-06-12 16:00:59,786.786 INFO    ] 2026-06-12 16:00:59
[2026-06-12 16:00:59,815.815 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 16:00:59,942.942 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 16:01:00,000.000 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 16:01:00,153.153 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 16:01:00,207.207 INFO    ] time= 12/06/2026 16:01:00
[2026-06-12 16:01:00,228.228 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 16:01:00,235.235 INFO    ] Checking for existing commands in stream...
[2026-06-12 16:01:00,302.302 INFO    ] No existing commands found in stream
[2026-06-12 16:01:05,316.316 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 16:01:05,320.320 INFO    ] Waiting 3.45 seconds before fallback handling...
[2026-06-12 16:01:09,182.182 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 16:01:09,183.183 INFO    ] Checking for system updates...
[2026-06-12 16:01:09,204.204 INFO    ] 200
[2026-06-12 16:01:09,205.205 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:01:09,235.235 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 16:01:09,237.237 INFO    ] No update needed
[2026-06-12 16:01:09,238.238 INFO    ] Checking for camera pi updates...
[2026-06-12 16:01:09,259.259 INFO    ] 200
[2026-06-12 16:01:09,261.261 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:01:09,286.286 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 16:01:09,342.342 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 16:01:09,343.343 INFO    ] No camera update needed
[2026-06-12 16:01:09,344.344 INFO    ] Script finished. Safe exiting...
[2026-06-12 16:01:09,346.346 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 16:01:09,349.349 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 16:01:09,352.352 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 16:01:11,391.391 INFO    ] ================================================
[2026-06-12 16:01:11,406.406 INFO    ] Launching Daemon at Fri Jun 12 16:01:11 IST 2026
[2026-06-12 16:01:11,416.416 INFO    ] ================================================
[2026-06-12 16:01:11,755.755 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 16:01:11
[2026-06-12 16:01:12,066.066 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 16:01:12,209.209 INFO    ] Initializing speech engine...
[2026-06-12 16:01:12,214.214 INFO    ] 2026-06-12 16:01:12
[2026-06-12 16:01:12,417.417 INFO    ] 2026-06-12 16:01:12
[2026-06-12 16:01:12,445.445 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 16:01:12,629.629 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 16:01:12,637.637 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 16:01:12,818.818 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 16:01:12,852.852 INFO    ] time= 12/06/2026 16:01:12
[2026-06-12 16:01:12,858.858 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 16:01:12,863.863 INFO    ] Checking for existing commands in stream...
[2026-06-12 16:01:12,930.930 INFO    ] No existing commands found in stream
[2026-06-12 16:01:17,949.949 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 16:01:17,952.952 INFO    ] Waiting 3.99 seconds before fallback handling...
[2026-06-12 16:01:22,361.361 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 16:01:22,362.362 INFO    ] Checking for system updates...
[2026-06-12 16:01:22,382.382 INFO    ] 200
[2026-06-12 16:01:22,384.384 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:01:22,413.413 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 16:01:22,415.415 INFO    ] No update needed
[2026-06-12 16:01:22,416.416 INFO    ] Checking for camera pi updates...
[2026-06-12 16:01:22,436.436 INFO    ] 200
[2026-06-12 16:01:22,437.437 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:01:22,460.460 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 16:01:22,502.502 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 16:01:22,503.503 INFO    ] No camera update needed
[2026-06-12 16:01:22,504.504 INFO    ] Script finished. Safe exiting...
[2026-06-12 16:01:22,506.506 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 16:01:22,509.509 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 16:01:22,511.511 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 16:01:24,550.550 INFO    ] ================================================
[2026-06-12 16:01:24,564.564 INFO    ] Launching Daemon at Fri Jun 12 16:01:24 IST 2026
[2026-06-12 16:01:24,575.575 INFO    ] ================================================
[2026-06-12 16:01:24,899.899 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 16:01:24
[2026-06-12 16:01:25,211.211 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 16:01:25,343.343 INFO    ] Initializing speech engine...
[2026-06-12 16:01:25,348.348 INFO    ] 2026-06-12 16:01:25
[2026-06-12 16:01:25,575.575 INFO    ] 2026-06-12 16:01:25
[2026-06-12 16:01:25,606.606 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 16:01:25,737.737 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 16:01:25,795.795 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 16:01:25,944.944 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 16:01:25,996.996 INFO    ] time= 12/06/2026 16:01:25
[2026-06-12 16:01:26,040.040 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 16:01:26,051.051 INFO    ] Checking for existing commands in stream...
[2026-06-12 16:01:26,126.126 INFO    ] No existing commands found in stream
[2026-06-12 16:01:31,136.136 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 16:01:31,139.139 INFO    ] Waiting 1.03 seconds before fallback handling...
[2026-06-12 16:01:32,535.535 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 16:01:32,537.537 INFO    ] Checking for system updates...
[2026-06-12 16:01:32,562.562 INFO    ] 200
[2026-06-12 16:01:32,563.563 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:01:32,598.598 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 16:01:32,600.600 INFO    ] No update needed
[2026-06-12 16:01:32,602.602 INFO    ] Checking for camera pi updates...
[2026-06-12 16:01:32,625.625 INFO    ] 200
[2026-06-12 16:01:32,626.626 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:01:32,654.654 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 16:01:32,683.683 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 16:01:32,684.684 INFO    ] No camera update needed
[2026-06-12 16:01:32,686.686 INFO    ] Script finished. Safe exiting...
[2026-06-12 16:01:32,688.688 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 16:01:32,692.692 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 16:01:32,696.696 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 16:01:34,736.736 INFO    ] ================================================
[2026-06-12 16:01:34,751.751 INFO    ] Launching Daemon at Fri Jun 12 16:01:34 IST 2026
[2026-06-12 16:01:34,762.762 INFO    ] ================================================
[2026-06-12 16:01:35,108.108 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 16:01:35
[2026-06-12 16:01:35,419.419 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 16:01:35,561.561 INFO    ] Initializing speech engine...
[2026-06-12 16:01:35,567.567 INFO    ] 2026-06-12 16:01:35
[2026-06-12 16:01:35,772.772 INFO    ] 2026-06-12 16:01:35
[2026-06-12 16:01:35,800.800 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 16:01:35,988.988 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 16:01:35,997.997 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 16:01:36,139.139 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 16:01:36,198.198 INFO    ] time= 12/06/2026 16:01:36
[2026-06-12 16:01:36,222.222 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 16:01:36,224.224 INFO    ] Checking for existing commands in stream...
[2026-06-12 16:01:36,320.320 INFO    ] No existing commands found in stream
[2026-06-12 16:01:41,329.329 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 16:01:41,332.332 INFO    ] Waiting 2.10 seconds before fallback handling...
[2026-06-12 16:01:43,795.795 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 16:01:43,797.797 INFO    ] Checking for system updates...
[2026-06-12 16:01:43,818.818 INFO    ] 200
[2026-06-12 16:01:43,820.820 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:01:43,849.849 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 16:01:43,851.851 INFO    ] No update needed
[2026-06-12 16:01:43,852.852 INFO    ] Checking for camera pi updates...
[2026-06-12 16:01:43,873.873 INFO    ] 200
[2026-06-12 16:01:43,874.874 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:01:43,901.901 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 16:01:43,949.949 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 16:01:43,950.950 INFO    ] No camera update needed
[2026-06-12 16:01:43,952.952 INFO    ] Script finished. Safe exiting...
[2026-06-12 16:01:43,953.953 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 16:01:43,956.956 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 16:01:43,958.958 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 16:01:46,996.996 INFO    ] ================================================
[2026-06-12 16:01:46,012.012 INFO    ] Launching Daemon at Fri Jun 12 16:01:46 IST 2026
[2026-06-12 16:01:46,023.023 INFO    ] ================================================
[2026-06-12 16:01:46,375.375 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 16:01:46
[2026-06-12 16:01:46,686.686 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 16:01:46,829.829 INFO    ] Initializing speech engine...
[2026-06-12 16:01:46,834.834 INFO    ] 2026-06-12 16:01:46
[2026-06-12 16:01:47,036.036 INFO    ] 2026-06-12 16:01:47
[2026-06-12 16:01:47,065.065 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 16:01:47,249.249 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 16:01:47,258.258 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 16:01:47,393.393 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 16:01:47,460.460 INFO    ] time= 12/06/2026 16:01:47
[2026-06-12 16:01:47,494.494 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 16:01:47,501.501 INFO    ] Checking for existing commands in stream...
[2026-06-12 16:01:47,604.604 INFO    ] No existing commands found in stream
[2026-06-12 16:01:52,618.618 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 16:01:52,621.621 INFO    ] Waiting 3.37 seconds before fallback handling...
[2026-06-12 16:01:58,454.454 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 16:01:58,457.457 INFO    ] Checking for system updates...
[2026-06-12 16:01:58,495.495 INFO    ] 200
[2026-06-12 16:01:58,497.497 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:01:58,548.548 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 16:01:58,550.550 INFO    ] No update needed
[2026-06-12 16:01:58,551.551 INFO    ] Checking for camera pi updates...
[2026-06-12 16:01:58,571.571 INFO    ] 200
[2026-06-12 16:01:58,573.573 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:01:58,595.595 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 16:01:58,652.652 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 16:01:58,653.653 INFO    ] No camera update needed
[2026-06-12 16:01:58,654.654 INFO    ] Script finished. Safe exiting...
[2026-06-12 16:01:58,656.656 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 16:01:58,659.659 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 16:01:58,661.661 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 16:02:00,700.700 INFO    ] ================================================
[2026-06-12 16:02:00,715.715 INFO    ] Launching Daemon at Fri Jun 12 16:02:00 IST 2026
[2026-06-12 16:02:00,726.726 INFO    ] ================================================
[2026-06-12 16:02:01,066.066 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 16:02:01
[2026-06-12 16:02:01,482.482 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 16:02:01,638.638 INFO    ] Initializing speech engine...
[2026-06-12 16:02:01,644.644 INFO    ] 2026-06-12 16:02:01
[2026-06-12 16:02:01,859.859 INFO    ] 2026-06-12 16:02:01
[2026-06-12 16:02:01,897.897 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 16:02:02,063.063 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 16:02:02,067.067 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 16:02:02,191.191 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 16:02:02,193.193 INFO    ] time= 12/06/2026 16:02:02
[2026-06-12 16:02:02,221.221 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 16:02:02,230.230 INFO    ] Checking for existing commands in stream...
[2026-06-12 16:02:02,308.308 INFO    ] No existing commands found in stream
[2026-06-12 16:02:07,335.335 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 16:02:07,338.338 INFO    ] Waiting 0.10 seconds before fallback handling...
[2026-06-12 16:02:07,793.793 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 16:02:07,794.794 INFO    ] Checking for system updates...
[2026-06-12 16:02:07,821.821 INFO    ] 200
[2026-06-12 16:02:07,823.823 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:02:07,864.864 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 16:02:07,866.866 INFO    ] No update needed
[2026-06-12 16:02:07,868.868 INFO    ] Checking for camera pi updates...
[2026-06-12 16:02:07,893.893 INFO    ] 200
[2026-06-12 16:02:07,895.895 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:02:07,923.923 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 16:02:07,964.964 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 16:02:07,965.965 INFO    ] No camera update needed
[2026-06-12 16:02:07,967.967 INFO    ] Script finished. Safe exiting...
[2026-06-12 16:02:07,968.968 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 16:02:07,972.972 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 16:02:07,976.976 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 16:02:10,000.000 INFO    ] ================================================
[2026-06-12 16:02:10,009.009 INFO    ] Launching Daemon at Fri Jun 12 16:02:10 IST 2026
[2026-06-12 16:02:10,015.015 INFO    ] ================================================
[2026-06-12 16:02:10,329.329 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 16:02:10
[2026-06-12 16:02:10,656.656 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 16:02:10,802.802 INFO    ] Initializing speech engine...
[2026-06-12 16:02:10,813.813 INFO    ] 2026-06-12 16:02:10
[2026-06-12 16:02:11,033.033 INFO    ] 2026-06-12 16:02:11
[2026-06-12 16:02:11,062.062 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 16:02:11,248.248 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 16:02:11,252.252 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 16:02:11,404.404 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 16:02:11,458.458 INFO    ] time= 12/06/2026 16:02:11
[2026-06-12 16:02:11,498.498 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 16:02:11,500.500 INFO    ] Checking for existing commands in stream...
[2026-06-12 16:02:11,573.573 INFO    ] No existing commands found in stream
[2026-06-12 16:02:16,587.587 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 16:02:16,590.590 INFO    ] Waiting 2.23 seconds before fallback handling...
[2026-06-12 16:02:19,178.178 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 16:02:19,180.180 INFO    ] Checking for system updates...
[2026-06-12 16:02:19,200.200 INFO    ] 200
[2026-06-12 16:02:19,201.201 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:02:19,231.231 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 16:02:19,232.232 INFO    ] No update needed
[2026-06-12 16:02:19,233.233 INFO    ] Checking for camera pi updates...
[2026-06-12 16:02:19,254.254 INFO    ] 200
[2026-06-12 16:02:19,255.255 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:02:19,280.280 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 16:02:19,323.323 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 16:02:19,325.325 INFO    ] No camera update needed
[2026-06-12 16:02:19,326.326 INFO    ] Script finished. Safe exiting...
[2026-06-12 16:02:19,327.327 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 16:02:19,330.330 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 16:02:19,333.333 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 16:02:21,372.372 INFO    ] ================================================
[2026-06-12 16:02:21,387.387 INFO    ] Launching Daemon at Fri Jun 12 16:02:21 IST 2026
[2026-06-12 16:02:21,397.397 INFO    ] ================================================
[2026-06-12 16:02:21,750.750 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 16:02:21
[2026-06-12 16:02:22,063.063 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 16:02:22,194.194 INFO    ] Initializing speech engine...
[2026-06-12 16:02:22,202.202 INFO    ] 2026-06-12 16:02:22
[2026-06-12 16:02:22,420.420 INFO    ] 2026-06-12 16:02:22
[2026-06-12 16:02:22,449.449 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 16:02:22,595.595 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 16:02:22,638.638 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 16:02:22,768.768 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 16:02:22,829.829 INFO    ] time= 12/06/2026 16:02:22
[2026-06-12 16:02:22,864.864 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 16:02:22,869.869 INFO    ] Checking for existing commands in stream...
[2026-06-12 16:02:22,940.940 INFO    ] No existing commands found in stream
[2026-06-12 16:02:27,959.959 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 16:02:27,962.962 INFO    ] Waiting 1.56 seconds before fallback handling...
[2026-06-12 16:02:29,923.923 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 16:02:29,925.925 INFO    ] Checking for system updates...
[2026-06-12 16:02:29,945.945 INFO    ] 200
[2026-06-12 16:02:29,946.946 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:02:29,978.978 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 16:02:29,979.979 INFO    ] No update needed
[2026-06-12 16:02:29,981.981 INFO    ] Checking for camera pi updates...
[2026-06-12 16:02:30,000.000 INFO    ] 200
[2026-06-12 16:02:30,001.001 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:02:30,024.024 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 16:02:30,070.070 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 16:02:30,072.072 INFO    ] No camera update needed
[2026-06-12 16:02:30,073.073 INFO    ] Script finished. Safe exiting...
[2026-06-12 16:02:30,074.074 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 16:02:30,077.077 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 16:02:30,080.080 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 16:02:32,118.118 INFO    ] ================================================
[2026-06-12 16:02:32,137.137 INFO    ] Launching Daemon at Fri Jun 12 16:02:32 IST 2026
[2026-06-12 16:02:32,148.148 INFO    ] ================================================
[2026-06-12 16:02:32,497.497 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 16:02:32
[2026-06-12 16:02:32,817.817 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 16:02:32,961.961 INFO    ] Initializing speech engine...
[2026-06-12 16:02:32,966.966 INFO    ] 2026-06-12 16:02:32
[2026-06-12 16:02:33,173.173 INFO    ] 2026-06-12 16:02:33
[2026-06-12 16:02:33,203.203 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 16:02:33,326.326 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 16:02:33,379.379 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 16:02:33,528.528 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 16:02:33,597.597 INFO    ] time= 12/06/2026 16:02:33
[2026-06-12 16:02:33,621.621 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 16:02:33,628.628 INFO    ] Checking for existing commands in stream...
[2026-06-12 16:02:33,694.694 INFO    ] No existing commands found in stream
[2026-06-12 16:02:38,704.704 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 16:02:38,707.707 INFO    ] Waiting 1.30 seconds before fallback handling...
[2026-06-12 16:02:40,414.414 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 16:02:40,416.416 INFO    ] Checking for system updates...
[2026-06-12 16:02:40,437.437 INFO    ] 200
[2026-06-12 16:02:40,439.439 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:02:40,470.470 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 16:02:40,472.472 INFO    ] No update needed
[2026-06-12 16:02:40,473.473 INFO    ] Checking for camera pi updates...
[2026-06-12 16:02:40,492.492 INFO    ] 200
[2026-06-12 16:02:40,493.493 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:02:40,517.517 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 16:02:40,655.655 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 16:02:40,657.657 INFO    ] No camera update needed
[2026-06-12 16:02:40,658.658 INFO    ] Script finished. Safe exiting...
[2026-06-12 16:02:40,659.659 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 16:02:40,662.662 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 16:02:40,666.666 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 16:02:42,706.706 INFO    ] ================================================
[2026-06-12 16:02:42,722.722 INFO    ] Launching Daemon at Fri Jun 12 16:02:42 IST 2026
[2026-06-12 16:02:42,732.732 INFO    ] ================================================
[2026-06-12 16:02:43,092.092 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 16:02:43
[2026-06-12 16:02:43,404.404 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 16:02:43,534.534 INFO    ] Initializing speech engine...
[2026-06-12 16:02:43,538.538 INFO    ] 2026-06-12 16:02:43
[2026-06-12 16:02:43,757.757 INFO    ] 2026-06-12 16:02:43
[2026-06-12 16:02:43,787.787 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 16:02:43,973.973 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 16:02:43,977.977 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 16:02:44,114.114 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 16:02:44,178.178 INFO    ] time= 12/06/2026 16:02:44
[2026-06-12 16:02:44,207.207 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 16:02:44,214.214 INFO    ] Checking for existing commands in stream...
[2026-06-12 16:02:44,281.281 INFO    ] No existing commands found in stream
[2026-06-12 16:02:49,290.290 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 16:02:49,293.293 INFO    ] Waiting 3.77 seconds before fallback handling...
[2026-06-12 16:02:53,417.417 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 16:02:53,418.418 INFO    ] Checking for system updates...
[2026-06-12 16:02:53,441.441 INFO    ] 200
[2026-06-12 16:02:53,443.443 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:02:53,472.472 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 16:02:53,473.473 INFO    ] No update needed
[2026-06-12 16:02:53,475.475 INFO    ] Checking for camera pi updates...
[2026-06-12 16:02:53,497.497 INFO    ] 200
[2026-06-12 16:02:53,498.498 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:02:53,521.521 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 16:02:53,562.562 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 16:02:53,563.563 INFO    ] No camera update needed
[2026-06-12 16:02:53,565.565 INFO    ] Script finished. Safe exiting...
[2026-06-12 16:02:53,566.566 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 16:02:53,569.569 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 16:02:53,572.572 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 16:02:55,609.609 INFO    ] ================================================
[2026-06-12 16:02:55,624.624 INFO    ] Launching Daemon at Fri Jun 12 16:02:55 IST 2026
[2026-06-12 16:02:55,635.635 INFO    ] ================================================
[2026-06-12 16:02:55,986.986 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 16:02:55
[2026-06-12 16:02:56,297.297 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 16:02:56,440.440 INFO    ] Initializing speech engine...
[2026-06-12 16:02:56,446.446 INFO    ] 2026-06-12 16:02:56
[2026-06-12 16:02:56,658.658 INFO    ] 2026-06-12 16:02:56
[2026-06-12 16:02:56,687.687 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 16:02:56,873.873 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 16:02:56,876.876 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 16:02:57,067.067 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 16:02:57,104.104 INFO    ] time= 12/06/2026 16:02:57
[2026-06-12 16:02:57,107.107 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 16:02:57,113.113 INFO    ] Checking for existing commands in stream...
[2026-06-12 16:02:57,181.181 INFO    ] No existing commands found in stream
[2026-06-12 16:03:02,189.189 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 16:03:02,191.191 INFO    ] Waiting 0.67 seconds before fallback handling...
[2026-06-12 16:03:05,705.705 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 16:03:05,707.707 INFO    ] Checking for system updates...
[2026-06-12 16:03:05,728.728 INFO    ] 200
[2026-06-12 16:03:05,730.730 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:03:05,762.762 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 16:03:05,763.763 INFO    ] No update needed
[2026-06-12 16:03:05,764.764 INFO    ] Checking for camera pi updates...
[2026-06-12 16:03:05,784.784 INFO    ] 200
[2026-06-12 16:03:05,786.786 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:03:05,810.810 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 16:03:05,877.877 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 16:03:05,878.878 INFO    ] No camera update needed
[2026-06-12 16:03:05,880.880 INFO    ] Script finished. Safe exiting...
[2026-06-12 16:03:05,881.881 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 16:03:05,884.884 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 16:03:05,887.887 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 16:03:07,924.924 INFO    ] ================================================
[2026-06-12 16:03:07,939.939 INFO    ] Launching Daemon at Fri Jun 12 16:03:07 IST 2026
[2026-06-12 16:03:07,950.950 INFO    ] ================================================
[2026-06-12 16:03:08,309.309 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 16:03:08
[2026-06-12 16:03:08,621.621 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 16:03:08,752.752 INFO    ] Initializing speech engine...
[2026-06-12 16:03:08,756.756 INFO    ] 2026-06-12 16:03:08
[2026-06-12 16:03:08,975.975 INFO    ] 2026-06-12 16:03:08
[2026-06-12 16:03:09,004.004 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 16:03:09,177.177 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 16:03:09,179.179 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 16:03:09,349.349 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 16:03:09,406.406 INFO    ] time= 12/06/2026 16:03:09
[2026-06-12 16:03:09,440.440 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 16:03:09,450.450 INFO    ] Checking for existing commands in stream...
[2026-06-12 16:03:09,521.521 INFO    ] No existing commands found in stream
[2026-06-12 16:03:14,545.545 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 16:03:14,548.548 INFO    ] Waiting 0.83 seconds before fallback handling...
[2026-06-12 16:03:15,784.784 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 16:03:15,786.786 INFO    ] Checking for system updates...
[2026-06-12 16:03:15,806.806 INFO    ] 200
[2026-06-12 16:03:15,808.808 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:03:15,838.838 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 16:03:15,839.839 INFO    ] No update needed
[2026-06-12 16:03:15,840.840 INFO    ] Checking for camera pi updates...
[2026-06-12 16:03:15,861.861 INFO    ] 200
[2026-06-12 16:03:15,862.862 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:03:15,885.885 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 16:03:15,942.942 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 16:03:15,943.943 INFO    ] No camera update needed
[2026-06-12 16:03:15,944.944 INFO    ] Script finished. Safe exiting...
[2026-06-12 16:03:15,946.946 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 16:03:15,948.948 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 16:03:15,951.951 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 16:03:17,990.990 INFO    ] ================================================
[2026-06-12 16:03:18,005.005 INFO    ] Launching Daemon at Fri Jun 12 16:03:17 IST 2026
[2026-06-12 16:03:18,016.016 INFO    ] ================================================
[2026-06-12 16:03:18,355.355 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 16:03:18
[2026-06-12 16:03:18,666.666 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 16:03:18,808.808 INFO    ] Initializing speech engine...
[2026-06-12 16:03:18,813.813 INFO    ] 2026-06-12 16:03:18
[2026-06-12 16:03:19,016.016 INFO    ] 2026-06-12 16:03:18
[2026-06-12 16:03:19,044.044 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 16:03:19,228.228 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 16:03:19,238.238 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 16:03:19,422.422 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 16:03:19,455.455 INFO    ] time= 12/06/2026 16:03:19
[2026-06-12 16:03:19,460.460 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 16:03:19,462.462 INFO    ] Checking for existing commands in stream...
[2026-06-12 16:03:19,529.529 INFO    ] No existing commands found in stream
[2026-06-12 16:03:24,538.538 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 16:03:24,541.541 INFO    ] Waiting 1.61 seconds before fallback handling...
[2026-06-12 16:03:26,557.557 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 16:03:26,559.559 INFO    ] Checking for system updates...
[2026-06-12 16:03:26,579.579 INFO    ] 200
[2026-06-12 16:03:26,580.580 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:03:26,610.610 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 16:03:26,611.611 INFO    ] No update needed
[2026-06-12 16:03:26,612.612 INFO    ] Checking for camera pi updates...
[2026-06-12 16:03:26,632.632 INFO    ] 200
[2026-06-12 16:03:26,634.634 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:03:26,656.656 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 16:03:26,710.710 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 16:03:26,711.711 INFO    ] No camera update needed
[2026-06-12 16:03:26,713.713 INFO    ] Script finished. Safe exiting...
[2026-06-12 16:03:26,714.714 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 16:03:26,717.717 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 16:03:26,719.719 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 16:03:28,758.758 INFO    ] ================================================
[2026-06-12 16:03:28,773.773 INFO    ] Launching Daemon at Fri Jun 12 16:03:28 IST 2026
[2026-06-12 16:03:28,784.784 INFO    ] ================================================
[2026-06-12 16:03:29,124.124 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 16:03:29
[2026-06-12 16:03:29,436.436 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 16:03:29,579.579 INFO    ] Initializing speech engine...
[2026-06-12 16:03:29,584.584 INFO    ] 2026-06-12 16:03:29
[2026-06-12 16:03:29,789.789 INFO    ] 2026-06-12 16:03:29
[2026-06-12 16:03:29,819.819 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 16:03:29,957.957 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 16:03:30,006.006 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 16:03:30,146.146 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 16:03:30,215.215 INFO    ] time= 12/06/2026 16:03:30
[2026-06-12 16:03:30,241.241 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 16:03:30,248.248 INFO    ] Checking for existing commands in stream...
[2026-06-12 16:03:30,321.321 INFO    ] No existing commands found in stream
[2026-06-12 16:03:35,330.330 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 16:03:35,333.333 INFO    ] Waiting 0.74 seconds before fallback handling...
[2026-06-12 16:03:36,471.471 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 16:03:36,472.472 INFO    ] Checking for system updates...
[2026-06-12 16:03:36,493.493 INFO    ] 200
[2026-06-12 16:03:36,495.495 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:03:36,526.526 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 16:03:36,528.528 INFO    ] No update needed
[2026-06-12 16:03:36,529.529 INFO    ] Checking for camera pi updates...
[2026-06-12 16:03:36,549.549 INFO    ] 200
[2026-06-12 16:03:36,550.550 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:03:36,575.575 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 16:03:36,669.669 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 16:03:36,671.671 INFO    ] No camera update needed
[2026-06-12 16:03:36,672.672 INFO    ] Script finished. Safe exiting...
[2026-06-12 16:03:36,673.673 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 16:03:36,676.676 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 16:03:36,679.679 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 16:03:38,716.716 INFO    ] ================================================
[2026-06-12 16:03:38,732.732 INFO    ] Launching Daemon at Fri Jun 12 16:03:38 IST 2026
[2026-06-12 16:03:38,742.742 INFO    ] ================================================
[2026-06-12 16:03:39,089.089 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 16:03:39
[2026-06-12 16:03:39,429.429 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 16:03:39,574.574 INFO    ] Initializing speech engine...
[2026-06-12 16:03:39,585.585 INFO    ] 2026-06-12 16:03:39
[2026-06-12 16:03:39,792.792 INFO    ] 2026-06-12 16:03:39
[2026-06-12 16:03:39,821.821 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 16:03:40,004.004 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 16:03:40,007.007 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 16:03:40,155.155 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 16:03:40,211.211 INFO    ] time= 12/06/2026 16:03:40
[2026-06-12 16:03:40,235.235 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 16:03:40,242.242 INFO    ] Checking for existing commands in stream...
[2026-06-12 16:03:40,308.308 INFO    ] No existing commands found in stream
[2026-06-12 16:03:45,338.338 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 16:03:45,341.341 INFO    ] Waiting 2.83 seconds before fallback handling...
[2026-06-12 16:03:48,567.567 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 16:03:48,569.569 INFO    ] Checking for system updates...
[2026-06-12 16:03:48,589.589 INFO    ] 200
[2026-06-12 16:03:48,591.591 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:03:48,620.620 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 16:03:48,621.621 INFO    ] No update needed
[2026-06-12 16:03:48,622.622 INFO    ] Checking for camera pi updates...
[2026-06-12 16:03:48,642.642 INFO    ] 200
[2026-06-12 16:03:48,643.643 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:03:48,667.667 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 16:03:48,705.705 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 16:03:48,706.706 INFO    ] No camera update needed
[2026-06-12 16:03:48,708.708 INFO    ] Script finished. Safe exiting...
[2026-06-12 16:03:48,709.709 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 16:03:48,712.712 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 16:03:48,715.715 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 16:03:50,753.753 INFO    ] ================================================
[2026-06-12 16:03:50,768.768 INFO    ] Launching Daemon at Fri Jun 12 16:03:50 IST 2026
[2026-06-12 16:03:50,779.779 INFO    ] ================================================
[2026-06-12 16:03:51,151.151 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 16:03:51
[2026-06-12 16:03:51,467.467 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 16:03:51,597.597 INFO    ] Initializing speech engine...
[2026-06-12 16:03:51,602.602 INFO    ] 2026-06-12 16:03:51
[2026-06-12 16:03:51,818.818 INFO    ] 2026-06-12 16:03:51
[2026-06-12 16:03:51,847.847 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 16:03:52,029.029 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 16:03:52,032.032 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 16:03:52,183.183 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 16:03:52,235.235 INFO    ] time= 12/06/2026 16:03:52
[2026-06-12 16:03:52,257.257 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 16:03:52,264.264 INFO    ] Checking for existing commands in stream...
[2026-06-12 16:03:52,328.328 INFO    ] No existing commands found in stream
[2026-06-12 16:03:57,339.339 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 16:03:57,342.342 INFO    ] Waiting 1.73 seconds before fallback handling...
[2026-06-12 16:03:59,486.486 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 16:03:59,487.487 INFO    ] Checking for system updates...
[2026-06-12 16:03:59,509.509 INFO    ] 200
[2026-06-12 16:03:59,511.511 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:03:59,540.540 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 16:03:59,542.542 INFO    ] No update needed
[2026-06-12 16:03:59,543.543 INFO    ] Checking for camera pi updates...
[2026-06-12 16:03:59,562.562 INFO    ] 200
[2026-06-12 16:03:59,563.563 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:03:59,588.588 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 16:03:59,631.631 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 16:03:59,632.632 INFO    ] No camera update needed
[2026-06-12 16:03:59,633.633 INFO    ] Script finished. Safe exiting...
[2026-06-12 16:03:59,635.635 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 16:03:59,638.638 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 16:03:59,641.641 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 16:04:01,709.709 INFO    ] ================================================
[2026-06-12 16:04:01,752.752 INFO    ] Launching Daemon at Fri Jun 12 16:04:01 IST 2026
[2026-06-12 16:04:01,764.764 INFO    ] ================================================
[2026-06-12 16:04:02,188.188 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 16:04:02
[2026-06-12 16:04:02,570.570 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 16:04:02,727.727 INFO    ] Initializing speech engine...
[2026-06-12 16:04:02,735.735 INFO    ] 2026-06-12 16:04:02
[2026-06-12 16:04:02,931.931 INFO    ] 2026-06-12 16:04:02
[2026-06-12 16:04:02,972.972 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 16:04:03,127.127 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 16:04:03,167.167 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 16:04:03,320.320 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 16:04:03,346.346 INFO    ] time= 12/06/2026 16:04:03
[2026-06-12 16:04:03,413.413 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 16:04:03,437.437 INFO    ] Checking for existing commands in stream...
[2026-06-12 16:04:03,508.508 INFO    ] No existing commands found in stream
[2026-06-12 16:04:08,517.517 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 16:04:08,530.530 INFO    ] Waiting 3.64 seconds before fallback handling...
[2026-06-12 16:04:12,545.545 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 16:04:12,547.547 INFO    ] Checking for system updates...
[2026-06-12 16:04:12,568.568 INFO    ] 200
[2026-06-12 16:04:12,570.570 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:04:12,601.601 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 16:04:12,602.602 INFO    ] No update needed
[2026-06-12 16:04:12,604.604 INFO    ] Checking for camera pi updates...
[2026-06-12 16:04:12,623.623 INFO    ] 200
[2026-06-12 16:04:12,625.625 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:04:12,649.649 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 16:04:12,689.689 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 16:04:12,691.691 INFO    ] No camera update needed
[2026-06-12 16:04:12,692.692 INFO    ] Script finished. Safe exiting...
[2026-06-12 16:04:12,693.693 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 16:04:12,696.696 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 16:04:12,699.699 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 16:04:14,738.738 INFO    ] ================================================
[2026-06-12 16:04:14,753.753 INFO    ] Launching Daemon at Fri Jun 12 16:04:14 IST 2026
[2026-06-12 16:04:14,764.764 INFO    ] ================================================
[2026-06-12 16:04:15,137.137 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 16:04:15
[2026-06-12 16:04:15,474.474 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 16:04:15,623.623 INFO    ] Initializing speech engine...
[2026-06-12 16:04:15,628.628 INFO    ] 2026-06-12 16:04:15
[2026-06-12 16:04:15,835.835 INFO    ] 2026-06-12 16:04:15
[2026-06-12 16:04:15,864.864 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 16:04:16,046.046 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 16:04:16,056.056 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 16:04:16,202.202 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 16:04:16,256.256 INFO    ] time= 12/06/2026 16:04:16
[2026-06-12 16:04:16,277.277 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 16:04:16,284.284 INFO    ] Checking for existing commands in stream...
[2026-06-12 16:04:16,351.351 INFO    ] No existing commands found in stream
[2026-06-12 16:04:21,365.365 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 16:04:21,368.368 INFO    ] Waiting 2.76 seconds before fallback handling...
[2026-06-12 16:04:24,558.558 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 16:04:24,560.560 INFO    ] Checking for system updates...
[2026-06-12 16:04:24,581.581 INFO    ] 200
[2026-06-12 16:04:24,583.583 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:04:24,615.615 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 16:04:24,616.616 INFO    ] No update needed
[2026-06-12 16:04:24,617.617 INFO    ] Checking for camera pi updates...
[2026-06-12 16:04:24,638.638 INFO    ] 200
[2026-06-12 16:04:24,639.639 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:04:24,663.663 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 16:04:24,703.703 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 16:04:24,704.704 INFO    ] No camera update needed
[2026-06-12 16:04:24,705.705 INFO    ] Script finished. Safe exiting...
[2026-06-12 16:04:24,707.707 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 16:04:24,710.710 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 16:04:24,712.712 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 16:04:26,750.750 INFO    ] ================================================
[2026-06-12 16:04:26,766.766 INFO    ] Launching Daemon at Fri Jun 12 16:04:26 IST 2026
[2026-06-12 16:04:26,777.777 INFO    ] ================================================
[2026-06-12 16:04:27,144.144 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 16:04:27
[2026-06-12 16:04:27,482.482 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 16:04:27,632.632 INFO    ] Initializing speech engine...
[2026-06-12 16:04:27,638.638 INFO    ] 2026-06-12 16:04:27
[2026-06-12 16:04:27,843.843 INFO    ] 2026-06-12 16:04:27
[2026-06-12 16:04:27,872.872 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 16:04:28,057.057 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 16:04:28,067.067 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 16:04:28,252.252 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 16:04:28,286.286 INFO    ] time= 12/06/2026 16:04:28
[2026-06-12 16:04:28,291.291 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 16:04:28,293.293 INFO    ] Checking for existing commands in stream...
[2026-06-12 16:04:28,361.361 INFO    ] No existing commands found in stream
[2026-06-12 16:04:33,391.391 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 16:04:33,394.394 INFO    ] Waiting 0.92 seconds before fallback handling...
[2026-06-12 16:04:34,711.711 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 16:04:34,713.713 INFO    ] Checking for system updates...
[2026-06-12 16:04:34,733.733 INFO    ] 200
[2026-06-12 16:04:34,735.735 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:04:34,764.764 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 16:04:34,766.766 INFO    ] No update needed
[2026-06-12 16:04:34,767.767 INFO    ] Checking for camera pi updates...
[2026-06-12 16:04:34,788.788 INFO    ] 200
[2026-06-12 16:04:34,789.789 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:04:34,815.815 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 16:04:34,867.867 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 16:04:34,868.868 INFO    ] No camera update needed
[2026-06-12 16:04:34,870.870 INFO    ] Script finished. Safe exiting...
[2026-06-12 16:04:34,871.871 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 16:04:34,875.875 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 16:04:34,878.878 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 16:04:36,918.918 INFO    ] ================================================
[2026-06-12 16:04:36,934.934 INFO    ] Launching Daemon at Fri Jun 12 16:04:36 IST 2026
[2026-06-12 16:04:36,946.946 INFO    ] ================================================
[2026-06-12 16:04:37,320.320 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 16:04:37
[2026-06-12 16:04:37,636.636 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 16:04:37,783.783 INFO    ] Initializing speech engine...
[2026-06-12 16:04:37,790.790 INFO    ] 2026-06-12 16:04:37
[2026-06-12 16:04:37,989.989 INFO    ] 2026-06-12 16:04:37
[2026-06-12 16:04:38,016.016 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 16:04:38,199.199 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 16:04:38,208.208 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 16:04:38,357.357 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 16:04:38,405.405 INFO    ] time= 12/06/2026 16:04:38
[2026-06-12 16:04:38,426.426 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 16:04:38,433.433 INFO    ] Checking for existing commands in stream...
[2026-06-12 16:04:38,499.499 INFO    ] No existing commands found in stream
[2026-06-12 16:04:43,508.508 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 16:04:43,511.511 INFO    ] Waiting 1.18 seconds before fallback handling...
[2026-06-12 16:04:45,124.124 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 16:04:45,125.125 INFO    ] Checking for system updates...
[2026-06-12 16:04:45,147.147 INFO    ] 200
[2026-06-12 16:04:45,148.148 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:04:45,180.180 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 16:04:45,182.182 INFO    ] No update needed
[2026-06-12 16:04:45,183.183 INFO    ] Checking for camera pi updates...
[2026-06-12 16:04:45,203.203 INFO    ] 200
[2026-06-12 16:04:45,204.204 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:04:45,228.228 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 16:04:45,376.376 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 16:04:45,377.377 INFO    ] No camera update needed
[2026-06-12 16:04:45,378.378 INFO    ] Script finished. Safe exiting...
[2026-06-12 16:04:45,380.380 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 16:04:45,383.383 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 16:04:45,385.385 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 16:04:47,416.416 INFO    ] ================================================
[2026-06-12 16:04:47,425.425 INFO    ] Launching Daemon at Fri Jun 12 16:04:47 IST 2026
[2026-06-12 16:04:47,431.431 INFO    ] ================================================
[2026-06-12 16:04:47,783.783 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 16:04:47
[2026-06-12 16:04:48,099.099 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 16:04:48,228.228 INFO    ] Initializing speech engine...
[2026-06-12 16:04:48,232.232 INFO    ] 2026-06-12 16:04:48
[2026-06-12 16:04:48,447.447 INFO    ] 2026-06-12 16:04:48
[2026-06-12 16:04:48,476.476 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 16:04:48,596.596 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 16:04:48,663.663 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 16:04:48,803.803 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 16:04:48,855.855 INFO    ] time= 12/06/2026 16:04:48
[2026-06-12 16:04:48,888.888 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 16:04:48,910.910 INFO    ] Checking for existing commands in stream...
[2026-06-12 16:04:49,013.013 INFO    ] No existing commands found in stream
[2026-06-12 16:04:54,022.022 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 16:04:54,025.025 INFO    ] Waiting 1.82 seconds before fallback handling...
[2026-06-12 16:04:56,225.225 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 16:04:56,227.227 INFO    ] Checking for system updates...
[2026-06-12 16:04:56,248.248 INFO    ] 200
[2026-06-12 16:04:56,250.250 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:04:56,282.282 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 16:04:56,284.284 INFO    ] No update needed
[2026-06-12 16:04:56,285.285 INFO    ] Checking for camera pi updates...
[2026-06-12 16:04:56,304.304 INFO    ] 200
[2026-06-12 16:04:56,305.305 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:04:56,328.328 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 16:04:56,376.376 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 16:04:56,377.377 INFO    ] No camera update needed
[2026-06-12 16:04:56,378.378 INFO    ] Script finished. Safe exiting...
[2026-06-12 16:04:56,380.380 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 16:04:56,383.383 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 16:04:56,385.385 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 16:04:58,427.427 INFO    ] ================================================
[2026-06-12 16:04:58,442.442 INFO    ] Launching Daemon at Fri Jun 12 16:04:58 IST 2026
[2026-06-12 16:04:58,452.452 INFO    ] ================================================
[2026-06-12 16:04:58,771.771 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 16:04:58
[2026-06-12 16:04:59,083.083 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 16:04:59,213.213 INFO    ] Initializing speech engine...
[2026-06-12 16:04:59,217.217 INFO    ] 2026-06-12 16:04:59
[2026-06-12 16:04:59,436.436 INFO    ] 2026-06-12 16:04:59
[2026-06-12 16:04:59,479.479 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 16:04:59,677.677 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 16:04:59,700.700 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 16:04:59,872.872 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 16:04:59,882.882 INFO    ] time= 12/06/2026 16:04:59
[2026-06-12 16:04:59,884.884 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 16:04:59,885.885 INFO    ] Checking for existing commands in stream...
[2026-06-12 16:04:59,952.952 INFO    ] No existing commands found in stream
[2026-06-12 16:05:04,966.966 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 16:05:04,970.970 INFO    ] Waiting 3.99 seconds before fallback handling...
[2026-06-12 16:05:09,365.365 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 16:05:09,366.366 INFO    ] Checking for system updates...
[2026-06-12 16:05:09,389.389 INFO    ] 200
[2026-06-12 16:05:09,391.391 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:05:09,425.425 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 16:05:09,427.427 INFO    ] No update needed
[2026-06-12 16:05:09,428.428 INFO    ] Checking for camera pi updates...
[2026-06-12 16:05:09,452.452 INFO    ] 200
[2026-06-12 16:05:09,453.453 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:05:09,479.479 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 16:05:09,526.526 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 16:05:09,527.527 INFO    ] No camera update needed
[2026-06-12 16:05:09,529.529 INFO    ] Script finished. Safe exiting...
[2026-06-12 16:05:09,530.530 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 16:05:09,534.534 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 16:05:09,537.537 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 16:05:11,576.576 INFO    ] ================================================
[2026-06-12 16:05:11,591.591 INFO    ] Launching Daemon at Fri Jun 12 16:05:11 IST 2026
[2026-06-12 16:05:11,601.601 INFO    ] ================================================
[2026-06-12 16:05:11,936.936 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 16:05:11
[2026-06-12 16:05:12,254.254 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 16:05:12,386.386 INFO    ] Initializing speech engine...
[2026-06-12 16:05:12,394.394 INFO    ] 2026-06-12 16:05:12
[2026-06-12 16:05:12,605.605 INFO    ] 2026-06-12 16:05:12
[2026-06-12 16:05:12,634.634 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 16:05:12,817.817 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 16:05:12,826.826 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 16:05:12,966.966 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 16:05:13,024.024 INFO    ] time= 12/06/2026 16:05:12
[2026-06-12 16:05:13,046.046 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 16:05:13,053.053 INFO    ] Checking for existing commands in stream...
[2026-06-12 16:05:13,120.120 INFO    ] No existing commands found in stream
[2026-06-12 16:05:16,028.028 INFO    ] Received new command: ID=1781260515886-0
[2026-06-12 16:05:16,031.031 INFO    ] process_and_cleanup_command: msg_id=1781260515886-0
[2026-06-12 16:05:16,033.033 INFO    ] is_command_expired: timestamp=2026-06-12T10:35:15.252Z, expiry=30s
[2026-06-12 16:05:16,126.126 INFO    ] Command removed from stream: 1781260515886-0. returning for processing...
[2026-06-12 16:05:16,128.128 INFO    ] ***** get_valid_command
[2026-06-12 16:05:16,131.131 INFO    ] {'source': 'webapp', 'command': 'start-order', 'timeout': '10', 'data': '{"request_id":"start-order-1781260515251-sq2qp1rqi","orderId":"TM09202301260612160427456","is_vending":false}', 'timestamp': '2026-06-12T10:35:15.252Z'}
[2026-06-12 16:05:16,133.133 INFO    ] ***** Parsed command data: {'orderId': 'TM09202301260612160427456', 'request_id': 'start-order-1781260515251-sq2qp1rqi', 'is_vending': False}
[2026-06-12 16:05:16,136.136 INFO    ] Handling start order...
[2026-06-12 16:05:16,138.138 INFO    ] handle_start_order_command
[2026-06-12 16:05:16,144.144 INFO    ] _send_start_order_success: request_id=start-order-1781260515251-sq2qp1rqi, order_id=TM09202301260612160427456
[2026-06-12 16:05:16,146.146 INFO    ] [_send_start_order_success] Adding message to stream: machine:TM09202301
[2026-06-12 16:05:16,209.209 INFO    ] [_send_start_order_success] Message added to stream with ID: 1781260516227-0
[2026-06-12 16:05:16,212.212 INFO    ] ✅ Start-order command succeeded - order locked, waiting for process-order command
[2026-06-12 16:05:16,214.214 INFO    ] Checking for system updates...
[2026-06-12 16:05:16,256.256 INFO    ] 200
[2026-06-12 16:05:16,259.259 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:05:16,316.316 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 16:05:16,317.317 INFO    ] No update needed
[2026-06-12 16:05:16,318.318 INFO    ] Checking for camera pi updates...
[2026-06-12 16:05:16,341.341 INFO    ] 200
[2026-06-12 16:05:16,342.342 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:05:16,367.367 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 16:05:16,415.415 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 16:05:16,416.416 INFO    ] No camera update needed
[2026-06-12 16:05:16,417.417 INFO    ] Script finished. Safe exiting...
[2026-06-12 16:05:16,418.418 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 16:05:16,422.422 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 16:05:16,424.424 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 16:05:18,461.461 INFO    ] ================================================
[2026-06-12 16:05:18,476.476 INFO    ] Launching Daemon at Fri Jun 12 16:05:18 IST 2026
[2026-06-12 16:05:18,487.487 INFO    ] ================================================
[2026-06-12 16:05:18,841.841 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 16:05:18
[2026-06-12 16:05:19,155.155 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 16:05:19,286.286 INFO    ] Initializing speech engine...
[2026-06-12 16:05:19,294.294 INFO    ] 2026-06-12 16:05:19
[2026-06-12 16:05:19,508.508 INFO    ] 2026-06-12 16:05:19
[2026-06-12 16:05:19,538.538 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 16:05:19,723.723 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 16:05:19,726.726 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 16:05:19,930.930 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 16:05:19,955.955 INFO    ] time= 12/06/2026 16:05:19
[2026-06-12 16:05:19,961.961 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 16:05:19,962.962 INFO    ] Checking for existing commands in stream...
[2026-06-12 16:05:20,031.031 INFO    ] Found 2 existing command(s) in stream
[2026-06-12 16:05:20,038.038 INFO    ] Checking historical command: ID=1781260516227-0
[2026-06-12 16:05:20,059.059 INFO    ] process_and_cleanup_command: msg_id=1781260516227-0
[2026-06-12 16:05:20,061.061 INFO    ] is_command_expired: timestamp=2026-06-12T10:35:16.145352Z, expiry=30s
[2026-06-12 16:05:20,171.171 INFO    ] Command removed from stream: 1781260516227-0. returning for processing...
[2026-06-12 16:05:20,174.174 INFO    ] ***** get_valid_command
[2026-06-12 16:05:20,177.177 INFO    ] {'status': 'success', 'timestamp': '2026-06-12T10:35:16.145352Z', 'imei': 'TM09202301', 'metadata_order_id': 'TM09202301260612160427456', 'metadata_request_id': 'start-order-1781260515251-sq2qp1rqi', 'message': 'start-order success', 'message_type': 'command_response'}
[2026-06-12 16:05:20,182.182 INFO    ] Checking historical command: ID=1781260519426-0
[2026-06-12 16:05:20,186.186 INFO    ] process_and_cleanup_command: msg_id=1781260519426-0
[2026-06-12 16:05:20,188.188 INFO    ] is_command_expired: timestamp=2026-06-12T10:35:18.784Z, expiry=30s
[2026-06-12 16:05:20,257.257 INFO    ] Command removed from stream: 1781260519426-0. returning for processing...
[2026-06-12 16:05:20,262.262 INFO    ] ***** get_valid_command
[2026-06-12 16:05:20,267.267 INFO    ] {'command': 'process-order', 'source': 'webapp', 'data': '{"request_id":"process-order-1781260518784-lwtb3135r","orderId":"TM09202301260612160427456","is_vending":false,"accessCode":"56696977"}', 'timestamp': '2026-06-12T10:35:18.784Z', 'timeout': '60'}
[2026-06-12 16:05:20,272.272 INFO    ] ***** Parsed command data: {'is_vending': False, 'accessCode': '56696977', 'orderId': 'TM09202301260612160427456', 'request_id': 'process-order-1781260518784-lwtb3135r'}
[2026-06-12 16:05:20,276.276 INFO    ] Handling process order...
[2026-06-12 16:05:20,280.280 INFO    ] Processing process-order command...
[2026-06-12 16:05:20,285.285 INFO    ] 🔍 Lock file Order ID: TM09202301260612160427456, TS: 2026-06-12 16:05:16
[2026-06-12 16:05:20,295.295 INFO    ] ✅ Order lock valid for TM09202301260612160427456
[2026-06-12 16:05:20,300.300 INFO    ] Received access code in process-order, skipping PHP API call
[2026-06-12 16:05:20,304.304 INFO    ] processing access code 56696977 for order TM09202301260612160427456
[2026-06-12 16:05:20,308.308 INFO    ] 🔍 Lock file Order ID: TM09202301260612160427456, TS: 2026-06-12 16:05:16
[2026-06-12 16:05:20,314.314 INFO    ] ✅ Order lock valid for TM09202301260612160427456
[2026-06-12 16:05:20,318.318 INFO    ] 2026-06-12 16:05:20
[2026-06-12 16:05:20,389.389 INFO    ] 200
[2026-06-12 16:05:20,392.392 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:05:20,417.417 INFO    ] 56696977
[2026-06-12 16:05:20,419.419 INFO    ] 2026-06-12 16:05:20
[2026-06-12 16:05:20,445.445 INFO    ] session id :882826654
[2026-06-12 16:05:20,448.448 INFO    ] http://localhost:5000/v2/getOrderByAccessCode?access_code=56696977&imei=TM09202301&session_id=882826654
[2026-06-12 16:05:21,187.187 INFO    ] 200
[2026-06-12 16:05:21,188.188 INFO    ] {"status": true, "msg": "Order Data", "data": {"bill_amount": "36", "access_code": "56696977", "order_id": "TM09202301260612160427456", "mobile": "8760668440", "proposed_sku_json": [{"unit_price": 36, "qty": 1, "skuid": "166327", "offer_desc": "", "offer_id": "166327_0901", "door_id": "2", "tray_id": "42", "sku_total": 36, "mrp": "38", "image_url": "https://images.tinymart.in/product/166327-5644.jpg", "name": "Epigamia Chocolate Milkshake 200g"}], "invoice_bill": "36"}, "rstatus": true}
[2026-06-12 16:05:21,190.190 INFO    ] 36
[2026-06-12 16:05:21,191.191 INFO    ] TM09202301260612160427456
[2026-06-12 16:05:21,193.193 INFO    ] 8760668440
[2026-06-12 16:05:21,194.194 INFO    ] 2026-06-12 16:05:21
[2026-06-12 16:05:21,195.195 INFO    ] Door Opening for user mobile ending with  eight four four zero 
[2026-06-12 16:05:21,196.196 INFO    ] Door Opening for user mobile ending with  eight four four zero 
[2026-06-12 16:05:21,198.198 INFO    ] 9670c3a1a12b3bb53d4f7a2f92514be9
[2026-06-12 16:05:21,199.199 INFO    ] 2026-06-12 16:05:21
[2026-06-12 16:05:21,200.200 INFO    ] creating audio file
[2026-06-12 16:05:21,236.236 INFO    ] Calling gTTS API with 60s timeout...
[2026-06-12 16:05:21,764.764 INFO    ] gTTS API call completed successfully
[2026-06-12 16:05:22,421.421 INFO    ] 2026-06-12 16:05:22
[2026-06-12 16:05:22,422.422 INFO    ] playing audio file
[2026-06-12 16:05:22,432.432 INFO    ] 2026-06-12 16:05:22
[2026-06-12 16:05:22,434.434 INFO    ] 2026-06-12 16:05:22
[2026-06-12 16:05:22,436.436 INFO    ] publish_status: order_id=TM09202301260612160427456
[2026-06-12 16:05:22,438.438 INFO    ] [publish_status] Adding message to stream: order:TM09202301260612160427456
[2026-06-12 16:05:22,498.498 INFO    ] [publish_status] Message added to stream with ID: 1781260522517-0
[2026-06-12 16:05:22,499.499 INFO    ] Published to order:TM09202301260612160427456: {'server_status': 'order-started', 'timestamp': '2026-06-12T10:35:22.435395Z', 'order_id': 'TM09202301260612160427456', 'server_response': '{"status": true, "data": {"proposed_sku_json": [{"tray_id": "42", "qty": 1, "image_url": "https://images.tinymart.in/product/166327-5644.jpg", "offer_desc": "", "sku_total": 36, "mrp": "38", "unit_price": 36, "skuid": "166327", "offer_id": "166327_0901", "name": "Epigamia Chocolate Milkshake 200g", "door_id": "2"}], "order_id": "TM09202301260612160427456", "invoice_bill": "36", "mobile": "8760668440", "bill_amount": "36", "access_code": "56696977"}, "rstatus": true, "msg": "Order Data"}'} (ID: 1781260522517-0)
[2026-06-12 16:05:22,877.877 INFO    ] {'server_status': 'order-started', 'order_id': 'TM09202301260612160427456', 'server_response': {'status': True, 'data': {'proposed_sku_json': [{'tray_id': '42', 'qty': 1, 'image_url': 'https://images.tinymart.in/product/166327-5644.jpg', 'offer_desc': '', 'sku_total': 36, 'mrp': '38', 'unit_price': 36, 'skuid': '166327', 'offer_id': '166327_0901', 'name': 'Epigamia Chocolate Milkshake 200g', 'door_id': '2'}], 'order_id': 'TM09202301260612160427456', 'invoice_bill': '36', 'mobile': '8760668440', 'bill_amount': '36', 'access_code': '56696977'}, 'rstatus': True, 'msg': 'Order Data'}}
[2026-06-12 16:05:22,879.879 INFO    ] 200
[2026-06-12 16:05:22,880.880 INFO    ] {"data":{"server_status":"order-started","order_id":"TM09202301260612160427456","server_response":{"status":true,"data":{"proposed_sku_json":[{"tray_id":"42","qty":1,"image_url":"https:\/\/images.tinymart.in\/product\/166327-5644.jpg","offer_desc":"","sku_total":36,"mrp":"38","unit_price":36,"skuid":"166327","offer_id":"166327_0901","name":"Epigamia Chocolate Milkshake 200g","door_id":"2"}],"order_id":"TM09202301260612160427456","invoice_bill":"36","mobile":"8760668440","bill_amount":"36","access_code":"56696977"},"rstatus":true,"msg":"Order Data"}},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-12 16:05:22,882.882 INFO    ] {'response': {'status': True, 'data': 'order updated successfully', 'code': 'ORDER_EXISTS', 'msg': 'order updated successfully'}, 'data': {'server_status': 'order-started', 'order_id': 'TM09202301260612160427456', 'server_response': {'status': True, 'data': {'invoice_bill': '36', 'bill_amount': '36', 'proposed_sku_json': [{'tray_id': '42', 'offer_desc': '', 'skuid': '166327', 'sku_total': 36, 'image_url': 'https://images.tinymart.in/product/166327-5644.jpg', 'unit_price': 36, 'mrp': '38', 'offer_id': '166327_0901', 'qty': 1, 'name': 'Epigamia Chocolate Milkshake 200g', 'door_id': '2'}], 'order_id': 'TM09202301260612160427456', 'access_code': '56696977', 'mobile': '8760668440'}, 'rstatus': True, 'msg': 'Order Data'}}}
[2026-06-12 16:05:22,884.884 INFO    ] 2026-06-12 16:05:22
[2026-06-12 16:05:22,909.909 INFO    ] 200
[2026-06-12 16:05:22,911.911 INFO    ] True
[2026-06-12 16:05:22,993.993 INFO    ] 200
[2026-06-12 16:05:22,995.995 INFO    ] {"error": {"tmessage": "In Progress", "umessage": "In Progress", "data": {}, "code": 20001}, "SectionSKU": {"Header": "Thank you for bearing with us :)", "skus": []}, "rstatus": false, "SectionStatus": {"Header": " Your order is under process  ", "SubHeader": "Please wait while we process your order", "UI_Header": "", "Note": ""}, "status": "False", "voiceNote": "Please Wait", "SectionMain": {"Header": "Processing Order"}}
[2026-06-12 16:05:22,997.997 INFO    ] {'rstatus': False, 'voiceNote': 'Please Wait', 'SectionSKU': {'skus': [], 'Header': 'Thank you for bearing with us :)'}, 'error': {'umessage': 'In Progress', 'tmessage': 'In Progress', 'data': {}, 'code': 20001}, 'SectionMain': {'Header': 'Processing Order'}, 'status': 'False', 'SectionStatus': {'SubHeader': 'Please wait while we process your order', 'UI_Header': '', 'Note': '', 'Header': ' Your order is under process  '}}
[2026-06-12 16:05:22,999.999 INFO    ] *** process_order ***
[2026-06-12 16:05:24,148.148 INFO    ] 200
[2026-06-12 16:05:24,150.150 INFO    ] {"delay": 0, "SectionSKU": {"Header": "Thank you for bearing with us :)", "skus": []}, "rstatus": true, "SectionStatus": {"Header": " Your order is under process  ", "SubHeader": "Please wait while we process your order", "UI_Header": "", "Note": ""}, "status": "True", "voiceNote": "Please Wait", "SectionMain": {"Header": "Processing Order"}}
[2026-06-12 16:05:24,152.152 INFO    ] {'rstatus': True, 'delay': 0, 'voiceNote': 'Please Wait', 'SectionSKU': {'skus': [], 'Header': 'Thank you for bearing with us :)'}, 'SectionMain': {'Header': 'Processing Order'}, 'status': 'True', 'SectionStatus': {'SubHeader': 'Please wait while we process your order', 'UI_Header': '', 'Note': '', 'Header': ' Your order is under process  '}}
[2026-06-12 16:05:24,153.153 INFO    ] *** process_order ***
[2026-06-12 16:05:24,155.155 INFO    ] publish_status: order_id=TM09202301260612160427456
[2026-06-12 16:05:24,156.156 INFO    ] [publish_status] Adding message to stream: order:TM09202301260612160427456
[2026-06-12 16:05:24,246.246 INFO    ] [publish_status] Message added to stream with ID: 1781260524264-0
[2026-06-12 16:05:24,247.247 INFO    ] Published to order:TM09202301260612160427456: {'server_status': 'doorOpened', 'order_id': 'TM09202301260612160427456', 'server_response': '{"rstatus": true, "delay": 0, "voiceNote": "Door is open...", "SectionSKU": {"skus": [], "Header": "Thank you for bearing with us :)"}, "SectionMain": {"Header": "Processing Order"}, "status": "True", "SectionStatus": {"SubHeader": "You can pull the door now.", "UI_Header": "", "Note": "", "Header": " Your order is under process  "}}'} (ID: 1781260524264-0)
[2026-06-12 16:05:25,306.306 INFO    ] 2026-06-12 16:05:25
[2026-06-12 16:05:25,309.309 INFO    ] publish_status: order_id=TM09202301260612160427456
[2026-06-12 16:05:25,312.312 INFO    ] [publish_status] Adding message to stream: order:TM09202301260612160427456
[2026-06-12 16:05:25,398.398 INFO    ] [publish_status] Message added to stream with ID: 1781260525415-0
[2026-06-12 16:05:25,403.403 INFO    ] Published to order:TM09202301260612160427456: {'server_status': 'processOrder', 'timestamp': '2026-06-12T10:35:25.307429Z', 'order_id': 'TM09202301260612160427456', 'server_response': '{"rstatus": true, "delay": 0, "voiceNote": "Please Wait", "SectionSKU": {"skus": [], "Header": "Thank you for bearing with us :)"}, "SectionMain": {"Header": "Processing Order"}, "status": "True", "SectionStatus": {"SubHeader": "Please wait while we process your order", "UI_Header": "", "Note": "", "Header": " Your order is under process  "}}'} (ID: 1781260525415-0)
[2026-06-12 16:05:25,540.540 INFO    ] {'server_status': 'processOrder', 'order_id': 'TM09202301260612160427456', 'server_response': {'rstatus': True, 'delay': 0, 'voiceNote': 'Please Wait', 'SectionSKU': {'skus': [], 'Header': 'Thank you for bearing with us :)'}, 'SectionMain': {'Header': 'Processing Order'}, 'status': 'True', 'SectionStatus': {'SubHeader': 'Please wait while we process your order', 'UI_Header': '', 'Note': '', 'Header': ' Your order is under process  '}}}
[2026-06-12 16:05:25,544.544 INFO    ] 200
[2026-06-12 16:05:25,547.547 INFO    ] {"data":{"server_status":"processOrder","order_id":"TM09202301260612160427456","server_response":{"rstatus":true,"delay":0,"voiceNote":"Please Wait","SectionSKU":{"skus":[],"Header":"Thank you for bearing with us :)"},"SectionMain":{"Header":"Processing Order"},"status":"true","SectionStatus":{"SubHeader":"Please wait while we process your order","UI_Header":"","Note":"","Header":" Your order is under process  "}}},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-12 16:05:25,550.550 INFO    ] {'response': {'status': True, 'data': 'order updated successfully', 'code': 'ORDER_EXISTS', 'msg': 'order updated successfully'}, 'data': {'server_status': 'processOrder', 'order_id': 'TM09202301260612160427456', 'server_response': {'rstatus': True, 'delay': 0, 'voiceNote': 'Please Wait', 'SectionSKU': {'skus': [], 'Header': 'Thank you for bearing with us :)'}, 'SectionMain': {'Header': 'Processing Order'}, 'status': 'true', 'SectionStatus': {'SubHeader': 'Please wait while we process your order', 'UI_Header': '', 'Note': '', 'Header': ' Your order is under process  '}}}}
[2026-06-12 16:05:25,554.554 INFO    ] 2026-06-12 16:05:25
[2026-06-12 16:05:25,558.558 INFO    ] None
[2026-06-12 16:05:25,561.561 INFO    ] Opening Door now
[2026-06-12 16:05:25,564.564 INFO    ] Opening Door now
[2026-06-12 16:05:25,567.567 INFO    ] 08e5d1063504bf393c26f0bfa436e9f9
[2026-06-12 16:05:25,571.571 INFO    ] 2026-06-12 16:05:25
[2026-06-12 16:05:25,574.574 INFO    ] playing audio file
[2026-06-12 16:05:25,593.593 INFO    ] 2026-06-12 16:05:25
[2026-06-12 16:05:25,597.597 INFO    ] 2026-06-12 16:05:25
[2026-06-12 16:05:28,802.802 INFO    ] 200
[2026-06-12 16:05:28,804.804 INFO    ] {"error": {"tmessage": "In Progress", "umessage": "In Progress", "data": {}, "code": 20001}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"name": "Epigamia Chocolate Milkshake 200g", "qty": 1}]}, "rstatus": false, "SectionStatus": {"Header": "Please Close Door 2", "SubHeader": "Please Pick the Products and close the door", "UI_Header": "DOOR 2\nIS \nOPEN \nNOW", "Note": "Please Close the door after picking up products"}, "status": "False", "voiceNote": "Door 2 is open now", "SectionMain": {"Header": "Door Open"}}
[2026-06-12 16:05:28,806.806 INFO    ] {'rstatus': False, 'voiceNote': 'Door 2 is open now', 'SectionSKU': {'skus': [{'qty': 1, 'name': 'Epigamia Chocolate Milkshake 200g'}], 'Header': 'Pick the below items from the door'}, 'error': {'umessage': 'In Progress', 'tmessage': 'In Progress', 'data': {}, 'code': 20001}, 'SectionMain': {'Header': 'Door Open'}, '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'}}
[2026-06-12 16:05:31,924.924 INFO    ] 200
[2026-06-12 16:05:31,926.926 INFO    ] {"error": {"tmessage": "In Progress", "umessage": "In Progress", "data": {}, "code": 20001}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"name": "Epigamia Chocolate Milkshake 200g", "qty": 1}]}, "rstatus": false, "SectionStatus": {"Header": "Please Close Door 2", "SubHeader": "Please Pick the Products and close the door", "UI_Header": "DOOR 2\nIS \nOPEN \nNOW", "Note": "Please Close the door after picking up products"}, "status": "False", "voiceNote": "Please close door 2", "SectionMain": {"Header": "Door Open"}}
[2026-06-12 16:05:31,928.928 INFO    ] {'rstatus': False, 'voiceNote': 'Please close door 2', 'SectionSKU': {'skus': [{'qty': 1, 'name': 'Epigamia Chocolate Milkshake 200g'}], 'Header': 'Pick the below items from the door'}, 'error': {'umessage': 'In Progress', 'tmessage': 'In Progress', 'data': {}, 'code': 20001}, 'SectionMain': {'Header': 'Door Open'}, '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'}}
[2026-06-12 16:05:35,073.073 INFO    ] 200
[2026-06-12 16:05:35,074.074 INFO    ] {"error": {"tmessage": "In Progress", "umessage": "In Progress", "data": {}, "code": 20001}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"name": "Epigamia Chocolate Milkshake 200g", "qty": 1}]}, "rstatus": false, "SectionStatus": {"Header": "Please Close Door 2", "SubHeader": "Please Pick the Products and close the door", "UI_Header": "DOOR 2\nIS \nOPEN \nNOW", "Note": "Please Close the door after picking up products"}, "status": "False", "voiceNote": "Please close door 2", "SectionMain": {"Header": "Door Open"}}
[2026-06-12 16:05:35,076.076 INFO    ] Please close door 2
[2026-06-12 16:05:35,078.078 INFO    ] Please close door 2
[2026-06-12 16:05:35,080.080 INFO    ] 758e46684c76e887a5f58d4738034bed
[2026-06-12 16:05:35,082.082 INFO    ] 2026-06-12 16:05:35
[2026-06-12 16:05:35,084.084 INFO    ] playing audio file
[2026-06-12 16:05:35,095.095 INFO    ] 2026-06-12 16:05:35
[2026-06-12 16:05:35,098.098 INFO    ] publish_status: order_id=TM09202301260612160427456
[2026-06-12 16:05:35,100.100 INFO    ] [publish_status] Adding message to stream: order:TM09202301260612160427456
[2026-06-12 16:05:35,728.728 INFO    ] [publish_status] Message added to stream with ID: 1781260535746-0
[2026-06-12 16:05:35,729.729 INFO    ] Published to order:TM09202301260612160427456: {'server_status': 'OrderStatus', 'timestamp': '2026-06-12T10:35:35.096998Z', 'order_id': 'TM09202301260612160427456', 'server_response': '{"rstatus": false, "voiceNote": "Please close door 2", "SectionSKU": {"skus": [{"qty": 1, "name": "Epigamia Chocolate Milkshake 200g"}], "Header": "Pick the below items from the door"}, "error": {"umessage": "In Progress", "tmessage": "In Progress", "data": {}, "code": 20001}, "SectionMain": {"Header": "Door Open"}, "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"}}'} (ID: 1781260535746-0)
[2026-06-12 16:05:36,151.151 INFO    ] {'server_status': 'OrderStatus', 'order_id': 'TM09202301260612160427456', 'server_response': {'rstatus': False, 'voiceNote': 'Please close door 2', 'SectionSKU': {'skus': [{'qty': 1, 'name': 'Epigamia Chocolate Milkshake 200g'}], 'Header': 'Pick the below items from the door'}, 'error': {'umessage': 'In Progress', 'tmessage': 'In Progress', 'data': {}, 'code': 20001}, 'SectionMain': {'Header': 'Door Open'}, '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'}}}
[2026-06-12 16:05:36,153.153 INFO    ] 200
[2026-06-12 16:05:36,155.155 INFO    ] {"data":{"server_status":"OrderStatus","order_id":"TM09202301260612160427456","server_response":{"rstatus":false,"voiceNote":"Please close door 2","SectionSKU":{"skus":[{"qty":1,"name":"Epigamia Chocolate Milkshake 200g"}],"Header":"Pick the below items from the door"},"error":{"umessage":"In Progress","tmessage":"In Progress","data":[],"code":20001},"SectionMain":{"Header":"Door Open"},"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"}}},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-12 16:05:36,157.157 INFO    ] {'response': {'status': True, 'data': 'order updated successfully', 'code': 'ORDER_EXISTS', 'msg': 'order updated successfully'}, 'data': {'server_status': 'OrderStatus', 'order_id': 'TM09202301260612160427456', 'server_response': {'rstatus': False, 'voiceNote': 'Please close door 2', 'error': {'umessage': 'In Progress', 'tmessage': 'In Progress', 'data': [], 'code': 20001}, 'SectionSKU': {'skus': [{'qty': 1, 'name': 'Epigamia Chocolate Milkshake 200g'}], 'Header': 'Pick the below items from the door'}, 'SectionMain': {'Header': 'Door Open'}, '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'}}}}
[2026-06-12 16:05:36,158.158 INFO    ] {'rstatus': False, 'voiceNote': 'Please close door 2', 'SectionSKU': {'skus': [{'qty': 1, 'name': 'Epigamia Chocolate Milkshake 200g'}], 'Header': 'Pick the below items from the door'}, 'error': {'umessage': 'In Progress', 'tmessage': 'In Progress', 'data': {}, 'code': 20001}, 'SectionMain': {'Header': 'Door Open'}, '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'}}
[2026-06-12 16:05:39,193.193 INFO    ] 200
[2026-06-12 16:05:39,195.195 INFO    ] {"delay": 100, "SectionSKU": {"Header": "If you like us, tell others... else tell us", "skus": []}, "rstatus": true, "SectionStatus": {"Header": " Order is complete ", "SubHeader": "Please wait for invoice to generate", "UI_Header": "", "Note": "If any due amount, clear at https://go.tinymart.in"}, "status": "True", "voiceNote": "Transaction Completed", "SectionMain": {"Header": "Door Closed"}}
[2026-06-12 16:05:39,197.197 INFO    ] {'rstatus': True, 'delay': 100, 'voiceNote': 'Transaction Completed', 'SectionSKU': {'skus': [], 'Header': 'If you like us, tell others... else tell us'}, 'SectionMain': {'Header': 'Door Closed'}, '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 '}}
[2026-06-12 16:05:39,199.199 INFO    ] 2026-06-12 16:05:39
[2026-06-12 16:05:39,201.201 INFO    ] Order Completed 
[2026-06-12 16:05:39,202.202 INFO    ] Order Completed 
[2026-06-12 16:05:39,204.204 INFO    ] 193c8a8cf3bf490ccfe0b23598544a83
[2026-06-12 16:05:39,206.206 INFO    ] 2026-06-12 16:05:39
[2026-06-12 16:05:39,207.207 INFO    ] playing audio file
[2026-06-12 16:05:39,219.219 INFO    ] 2026-06-12 16:05:39
[2026-06-12 16:05:39,221.221 INFO    ] {'rstatus': True, 'delay': 100, 'voiceNote': 'Transaction Completed', 'SectionSKU': {'skus': [], 'Header': 'If you like us, tell others... else tell us'}, 'SectionMain': {'Header': 'Door Closed'}, '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 '}}
[2026-06-12 16:05:39,223.223 INFO    ] 2026-06-12 16:05:39
[2026-06-12 16:05:39,573.573 INFO    ] 200
[2026-06-12 16:05:39,575.575 INFO    ] {"anomaly": 0, "skus": [{"image_url": "https://images.tinymart.in/product/4500669-3919.webp", "qty": 1, "skuid": "4500669", "unit_price": "40", "tray_id": "38", "sku_total": 40.0, "mrp": "40", "door_id": "", "name": "Rite Bite Sports Bar 40gm per peice"}, {"image_url": "https://images.tinymart.in/product/166327-5644.jpg", "qty": 1, "skuid": "166327", "unit_price": "36", "tray_id": "42", "sku_total": 36.0, "mrp": "38", "door_id": "", "name": "Epigamia Chocolate Milkshake 200g per peice"}], "total_amount": 76.0, "orderId": "TM09202301260612160427456", "res": "True", "rstatus": true, "logic": "WBL"}
[2026-06-12 16:05:39,577.577 INFO    ] {'rstatus': True, 'logic': 'WBL', 'skus': [{'tray_id': '38', 'image_url': 'https://images.tinymart.in/product/4500669-3919.webp', 'sku_total': 40.0, 'mrp': '40', 'unit_price': '40', 'skuid': '4500669', 'qty': 1, 'name': 'Rite Bite Sports Bar 40gm per peice', 'door_id': ''}, {'tray_id': '42', 'image_url': 'https://images.tinymart.in/product/166327-5644.jpg', 'sku_total': 36.0, 'mrp': '38', 'unit_price': '36', 'skuid': '166327', 'qty': 1, 'name': 'Epigamia Chocolate Milkshake 200g per peice', 'door_id': ''}], 'orderId': 'TM09202301260612160427456', 'total_amount': 76.0, 'anomaly': 0, 'res': 'True'}
[2026-06-12 16:05:39,578.578 INFO    ] {'rstatus': True, 'logic': 'WBL', 'skus': [{'tray_id': '38', 'image_url': 'https://images.tinymart.in/product/4500669-3919.webp', 'sku_total': 40.0, 'mrp': '40', 'unit_price': '40', 'skuid': '4500669', 'qty': 1, 'name': 'Rite Bite Sports Bar 40gm per peice', 'door_id': ''}, {'tray_id': '42', 'image_url': 'https://images.tinymart.in/product/166327-5644.jpg', 'sku_total': 36.0, 'mrp': '38', 'unit_price': '36', 'skuid': '166327', 'qty': 1, 'name': 'Epigamia Chocolate Milkshake 200g per peice', 'door_id': ''}], 'orderId': 'TM09202301260612160427456', 'total_amount': 76.0, 'anomaly': 0, 'res': 'True'}
[2026-06-12 16:05:39,580.580 INFO    ] 2026-06-12 16:05:39
[2026-06-12 16:05:39,582.582 INFO    ] 2026-06-12 16:05:39
[2026-06-12 16:05:39,583.583 INFO    ] 36
[2026-06-12 16:05:39,584.584 INFO    ] 2026-06-12 16:05:39
[2026-06-12 16:05:39,586.586 INFO    ] 2026-06-12 16:05:39
[2026-06-12 16:05:39,587.587 INFO    ]  You had Picked Excess of 40 Your Bill Amount is 76
[2026-06-12 16:05:39,589.589 INFO    ]  You had Picked Excess of 40 Your Bill Amount is 76
[2026-06-12 16:05:39,590.590 INFO    ] 0d462eaa5a33c02e4b7081b4f6091150
[2026-06-12 16:05:39,592.592 INFO    ] 2026-06-12 16:05:39
[2026-06-12 16:05:39,593.593 INFO    ] creating audio file
[2026-06-12 16:05:39,595.595 INFO    ] Calling gTTS API with 60s timeout...
[2026-06-12 16:05:40,287.287 INFO    ] gTTS API call completed successfully
[2026-06-12 16:05:40,933.933 INFO    ] 2026-06-12 16:05:40
[2026-06-12 16:05:40,935.935 INFO    ] playing audio file
[2026-06-12 16:05:40,945.945 INFO    ] 2026-06-12 16:05:40
[2026-06-12 16:05:40,947.947 INFO    ] 2026-06-12 16:05:40
[2026-06-12 16:05:40,949.949 INFO    ] publish_status: order_id=TM09202301260612160427456
[2026-06-12 16:05:40,950.950 INFO    ] [publish_status] Adding message to stream: order:TM09202301260612160427456
[2026-06-12 16:05:41,019.019 INFO    ] [publish_status] Message added to stream with ID: 1781260541038-0
[2026-06-12 16:05:41,021.021 INFO    ] Published to order:TM09202301260612160427456: {'server_status': 'invoiceOrder', 'timestamp': '2026-06-12T10:35:40.948020Z', 'order_id': 'TM09202301260612160427456', 'server_response': '{"rstatus": true, "logic": "WBL", "skus": [{"tray_id": "38", "image_url": "https://images.tinymart.in/product/4500669-3919.webp", "sku_total": 40.0, "mrp": "40", "unit_price": "40", "skuid": "4500669", "qty": 1, "name": "Rite Bite Sports Bar 40gm per peice", "door_id": ""}, {"tray_id": "42", "image_url": "https://images.tinymart.in/product/166327-5644.jpg", "sku_total": 36.0, "mrp": "38", "unit_price": "36", "skuid": "166327", "qty": 1, "name": "Epigamia Chocolate Milkshake 200g per peice", "door_id": ""}], "orderId": "TM09202301260612160427456", "total_amount": 76.0, "anomaly": 0, "res": "True"}'} (ID: 1781260541038-0)
[2026-06-12 16:05:41,629.629 INFO    ] {'server_status': 'invoiceOrder', 'order_id': 'TM09202301260612160427456', 'server_response': {'rstatus': True, 'logic': 'WBL', 'skus': [{'tray_id': '38', 'image_url': 'https://images.tinymart.in/product/4500669-3919.webp', 'sku_total': 40.0, 'mrp': '40', 'unit_price': '40', 'skuid': '4500669', 'qty': 1, 'name': 'Rite Bite Sports Bar 40gm per peice', 'door_id': ''}, {'tray_id': '42', 'image_url': 'https://images.tinymart.in/product/166327-5644.jpg', 'sku_total': 36.0, 'mrp': '38', 'unit_price': '36', 'skuid': '166327', 'qty': 1, 'name': 'Epigamia Chocolate Milkshake 200g per peice', 'door_id': ''}], 'orderId': 'TM09202301260612160427456', 'total_amount': 76.0, 'anomaly': 0, 'res': 'True'}}
[2026-06-12 16:05:42,363.363 INFO    ] 200
[2026-06-12 16:05:42,365.365 INFO    ] {"data":{"server_status":"invoiceOrder","order_id":"TM09202301260612160427456","server_response":{"rstatus":true,"logic":"WBL","skus":[{"tray_id":"38","image_url":"https:\/\/images.tinymart.in\/product\/4500669-3919.webp","sku_total":40,"mrp":"40","unit_price":"40","skuid":"4500669","qty":1,"name":"Rite Bite Sports Bar 40gm per peice","door_id":""},{"tray_id":"42","image_url":"https:\/\/images.tinymart.in\/product\/166327-5644.jpg","sku_total":36,"mrp":"38","unit_price":"36","skuid":"166327","qty":1,"name":"Epigamia Chocolate Milkshake 200g per peice","door_id":""}],"orderId":"TM09202301260612160427456","total_amount":76,"anomaly":0,"res":"true"}},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-12 16:05:42,369.369 INFO    ] {'response': {'status': True, 'data': 'order updated successfully', 'code': 'ORDER_EXISTS', 'msg': 'order updated successfully'}, 'data': {'server_status': 'invoiceOrder', 'order_id': 'TM09202301260612160427456', 'server_response': {'logic': 'WBL', 'rstatus': True, 'orderId': 'TM09202301260612160427456', 'res': 'true', 'total_amount': 76, 'anomaly': 0, 'skus': [{'tray_id': '38', 'qty': 1, 'sku_total': 40, 'skuid': '4500669', 'unit_price': '40', 'mrp': '40', 'image_url': 'https://images.tinymart.in/product/4500669-3919.webp', 'name': 'Rite Bite Sports Bar 40gm per peice', 'door_id': ''}, {'tray_id': '42', 'qty': 1, 'sku_total': 36, 'skuid': '166327', 'unit_price': '36', 'mrp': '38', 'image_url': 'https://images.tinymart.in/product/166327-5644.jpg', 'name': 'Epigamia Chocolate Milkshake 200g per peice', 'door_id': ''}]}}}
[2026-06-12 16:05:42,372.372 INFO    ] {'response': {'status': True, 'data': 'order updated successfully', 'code': 'ORDER_EXISTS', 'msg': 'order updated successfully'}, 'data': {'server_status': 'invoiceOrder', 'order_id': 'TM09202301260612160427456', 'server_response': {'logic': 'WBL', 'rstatus': True, 'orderId': 'TM09202301260612160427456', 'res': 'true', 'total_amount': 76, 'anomaly': 0, 'skus': [{'tray_id': '38', 'qty': 1, 'sku_total': 40, 'skuid': '4500669', 'unit_price': '40', 'mrp': '40', 'image_url': 'https://images.tinymart.in/product/4500669-3919.webp', 'name': 'Rite Bite Sports Bar 40gm per peice', 'door_id': ''}, {'tray_id': '42', 'qty': 1, 'sku_total': 36, 'skuid': '166327', 'unit_price': '36', 'mrp': '38', 'image_url': 'https://images.tinymart.in/product/166327-5644.jpg', 'name': 'Epigamia Chocolate Milkshake 200g per peice', 'door_id': ''}]}}}
[2026-06-12 16:05:42,375.375 INFO    ] 2026-06-12 16:05:42
[2026-06-12 16:05:43,648.648 INFO    ] 200
[2026-06-12 16:05:43,650.650 INFO    ] {"order_items": [], "tray_sync": ["no_entry", "no_entry", "no_entry", "no_entry", "no_entry", "no_entry"], "orders": [], "order_items_synced": [], "orders_synced": [], "orders_data_synced": [], "status": true, "orders_data": [], "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"]}
[2026-06-12 16:05:43,651.651 INFO    ] 2026-06-12 16:05:43
[2026-06-12 16:05:43,729.729 INFO    ] 200
[2026-06-12 16:05:43,730.730 INFO    ] True
[2026-06-12 16:05:43,732.732 INFO    ] cleanup_start_order_file_after_processing: order_id=TM09202301260612160427456
[2026-06-12 16:05:43,734.734 INFO    ] start order file deleted
[2026-06-12 16:05:43,735.735 INFO    ] Checking for system updates...
[2026-06-12 16:05:43,756.756 INFO    ] 200
[2026-06-12 16:05:43,758.758 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:05:43,790.790 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 16:05:43,792.792 INFO    ] No update needed
[2026-06-12 16:05:43,793.793 INFO    ] Checking for camera pi updates...
[2026-06-12 16:05:43,815.815 INFO    ] 200
[2026-06-12 16:05:43,816.816 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:05:43,862.862 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 16:05:43,909.909 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 16:05:43,912.912 INFO    ] No camera update needed
[2026-06-12 16:05:43,914.914 INFO    ] Script finished. Safe exiting...
[2026-06-12 16:05:43,917.917 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 16:05:43,922.922 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 16:05:43,925.925 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 16:05:45,963.963 INFO    ] ================================================
[2026-06-12 16:05:45,978.978 INFO    ] Launching Daemon at Fri Jun 12 16:05:45 IST 2026
[2026-06-12 16:05:45,989.989 INFO    ] ================================================
[2026-06-12 16:05:46,336.336 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 16:05:46
[2026-06-12 16:05:46,650.650 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 16:05:46,783.783 INFO    ] Initializing speech engine...
[2026-06-12 16:05:46,787.787 INFO    ] 2026-06-12 16:05:46
[2026-06-12 16:05:47,002.002 INFO    ] 2026-06-12 16:05:46
[2026-06-12 16:05:47,031.031 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 16:05:47,215.215 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 16:05:47,218.218 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 16:05:47,354.354 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 16:05:47,420.420 INFO    ] time= 12/06/2026 16:05:47
[2026-06-12 16:05:47,444.444 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 16:05:47,450.450 INFO    ] Checking for existing commands in stream...
[2026-06-12 16:05:47,517.517 INFO    ] No existing commands found in stream
[2026-06-12 16:05:52,546.546 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 16:05:52,549.549 INFO    ] Waiting 2.38 seconds before fallback handling...
[2026-06-12 16:05:55,450.450 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 16:05:55,451.451 INFO    ] Checking for system updates...
[2026-06-12 16:05:55,472.472 INFO    ] 200
[2026-06-12 16:05:55,473.473 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:05:55,505.505 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 16:05:55,507.507 INFO    ] No update needed
[2026-06-12 16:05:55,508.508 INFO    ] Checking for camera pi updates...
[2026-06-12 16:05:55,527.527 INFO    ] 200
[2026-06-12 16:05:55,529.529 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:05:55,553.553 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 16:05:55,597.597 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 16:05:55,598.598 INFO    ] No camera update needed
[2026-06-12 16:05:55,599.599 INFO    ] Script finished. Safe exiting...
[2026-06-12 16:05:55,601.601 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 16:05:55,604.604 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 16:05:55,606.606 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 16:05:57,648.648 INFO    ] ================================================
[2026-06-12 16:05:57,664.664 INFO    ] Launching Daemon at Fri Jun 12 16:05:57 IST 2026
[2026-06-12 16:05:57,676.676 INFO    ] ================================================
[2026-06-12 16:05:58,043.043 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 16:05:58
[2026-06-12 16:05:58,361.361 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 16:05:58,506.506 INFO    ] Initializing speech engine...
[2026-06-12 16:05:58,512.512 INFO    ] 2026-06-12 16:05:58
[2026-06-12 16:05:58,716.716 INFO    ] 2026-06-12 16:05:58
[2026-06-12 16:05:58,744.744 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 16:05:58,928.928 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 16:05:58,938.938 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 16:05:59,078.078 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 16:05:59,135.135 INFO    ] time= 12/06/2026 16:05:59
[2026-06-12 16:05:59,159.159 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 16:05:59,165.165 INFO    ] Checking for existing commands in stream...
[2026-06-12 16:05:59,232.232 INFO    ] No existing commands found in stream
[2026-06-12 16:06:04,245.245 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 16:06:04,247.247 INFO    ] Waiting 1.91 seconds before fallback handling...
[2026-06-12 16:06:06,560.560 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 16:06:06,561.561 INFO    ] Checking for system updates...
[2026-06-12 16:06:06,581.581 INFO    ] 200
[2026-06-12 16:06:06,583.583 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:06:06,615.615 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 16:06:06,616.616 INFO    ] No update needed
[2026-06-12 16:06:06,617.617 INFO    ] Checking for camera pi updates...
[2026-06-12 16:06:06,637.637 INFO    ] 200
[2026-06-12 16:06:06,639.639 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:06:06,663.663 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 16:06:06,716.716 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 16:06:06,718.718 INFO    ] No camera update needed
[2026-06-12 16:06:06,719.719 INFO    ] Script finished. Safe exiting...
[2026-06-12 16:06:06,720.720 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 16:06:06,723.723 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 16:06:06,726.726 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 16:06:08,763.763 INFO    ] ================================================
[2026-06-12 16:06:08,780.780 INFO    ] Launching Daemon at Fri Jun 12 16:06:08 IST 2026
[2026-06-12 16:06:08,792.792 INFO    ] ================================================
[2026-06-12 16:06:09,155.155 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 16:06:09
[2026-06-12 16:06:09,495.495 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 16:06:09,645.645 INFO    ] Initializing speech engine...
[2026-06-12 16:06:09,652.652 INFO    ] 2026-06-12 16:06:09
[2026-06-12 16:06:09,858.858 INFO    ] 2026-06-12 16:06:09
[2026-06-12 16:06:09,887.887 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 16:06:10,069.069 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 16:06:10,079.079 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 16:06:10,219.219 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 16:06:10,276.276 INFO    ] time= 12/06/2026 16:06:10
[2026-06-12 16:06:10,299.299 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 16:06:10,306.306 INFO    ] Checking for existing commands in stream...
[2026-06-12 16:06:10,396.396 INFO    ] No existing commands found in stream
[2026-06-12 16:06:15,411.411 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 16:06:15,414.414 INFO    ] Waiting 2.32 seconds before fallback handling...
[2026-06-12 16:06:18,584.584 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 16:06:18,585.585 INFO    ] Checking for system updates...
[2026-06-12 16:06:18,607.607 INFO    ] 200
[2026-06-12 16:06:18,608.608 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:06:18,644.644 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 16:06:18,647.647 INFO    ] No update needed
[2026-06-12 16:06:18,649.649 INFO    ] Checking for camera pi updates...
[2026-06-12 16:06:18,692.692 INFO    ] 200
[2026-06-12 16:06:18,695.695 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:06:18,746.746 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 16:06:18,795.795 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 16:06:18,796.796 INFO    ] No camera update needed
[2026-06-12 16:06:18,798.798 INFO    ] Script finished. Safe exiting...
[2026-06-12 16:06:18,799.799 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 16:06:18,802.802 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 16:06:18,805.805 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 16:06:20,844.844 INFO    ] ================================================
[2026-06-12 16:06:20,864.864 INFO    ] Launching Daemon at Fri Jun 12 16:06:20 IST 2026
[2026-06-12 16:06:20,875.875 INFO    ] ================================================
[2026-06-12 16:06:21,238.238 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 16:06:21
[2026-06-12 16:06:21,555.555 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 16:06:21,698.698 INFO    ] Initializing speech engine...
[2026-06-12 16:06:21,704.704 INFO    ] 2026-06-12 16:06:21
[2026-06-12 16:06:21,907.907 INFO    ] 2026-06-12 16:06:21
[2026-06-12 16:06:21,936.936 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 16:06:22,120.120 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 16:06:22,129.129 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 16:06:22,264.264 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 16:06:22,327.327 INFO    ] time= 12/06/2026 16:06:22
[2026-06-12 16:06:22,351.351 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 16:06:22,356.356 INFO    ] Checking for existing commands in stream...
[2026-06-12 16:06:22,423.423 INFO    ] No existing commands found in stream
[2026-06-12 16:06:27,432.432 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 16:06:27,435.435 INFO    ] Waiting 2.38 seconds before fallback handling...
[2026-06-12 16:06:30,201.201 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 16:06:30,203.203 INFO    ] Checking for system updates...
[2026-06-12 16:06:30,223.223 INFO    ] 200
[2026-06-12 16:06:30,224.224 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:06:30,256.256 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 16:06:30,258.258 INFO    ] No update needed
[2026-06-12 16:06:30,259.259 INFO    ] Checking for camera pi updates...
[2026-06-12 16:06:30,281.281 INFO    ] 200
[2026-06-12 16:06:30,282.282 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:06:30,309.309 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 16:06:30,341.341 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 16:06:30,343.343 INFO    ] No camera update needed
[2026-06-12 16:06:30,344.344 INFO    ] Script finished. Safe exiting...
[2026-06-12 16:06:30,345.345 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 16:06:30,348.348 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 16:06:30,352.352 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 16:06:32,395.395 INFO    ] ================================================
[2026-06-12 16:06:32,410.410 INFO    ] Launching Daemon at Fri Jun 12 16:06:32 IST 2026
[2026-06-12 16:06:32,421.421 INFO    ] ================================================
[2026-06-12 16:06:32,764.764 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 16:06:32
[2026-06-12 16:06:33,098.098 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 16:06:33,249.249 INFO    ] Initializing speech engine...
[2026-06-12 16:06:33,255.255 INFO    ] 2026-06-12 16:06:33
[2026-06-12 16:06:33,467.467 INFO    ] 2026-06-12 16:06:33
[2026-06-12 16:06:33,496.496 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 16:06:33,683.683 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 16:06:33,692.692 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 16:06:33,829.829 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 16:06:33,892.892 INFO    ] time= 12/06/2026 16:06:33
[2026-06-12 16:06:33,917.917 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 16:06:33,923.923 INFO    ] Checking for existing commands in stream...
[2026-06-12 16:06:33,991.991 INFO    ] No existing commands found in stream
[2026-06-12 16:06:39,005.005 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 16:06:39,008.008 INFO    ] Waiting 2.78 seconds before fallback handling...
[2026-06-12 16:06:42,240.240 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 16:06:42,242.242 INFO    ] Checking for system updates...
[2026-06-12 16:06:42,262.262 INFO    ] 200
[2026-06-12 16:06:42,264.264 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:06:42,293.293 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 16:06:42,294.294 INFO    ] No update needed
[2026-06-12 16:06:42,296.296 INFO    ] Checking for camera pi updates...
[2026-06-12 16:06:42,318.318 INFO    ] 200
[2026-06-12 16:06:42,320.320 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:06:42,344.344 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 16:06:42,392.392 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 16:06:42,393.393 INFO    ] No camera update needed
[2026-06-12 16:06:42,394.394 INFO    ] Script finished. Safe exiting...
[2026-06-12 16:06:42,396.396 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 16:06:42,398.398 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 16:06:42,401.401 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 16:06:44,439.439 INFO    ] ================================================
[2026-06-12 16:06:44,454.454 INFO    ] Launching Daemon at Fri Jun 12 16:06:44 IST 2026
[2026-06-12 16:06:44,465.465 INFO    ] ================================================
[2026-06-12 16:06:44,840.840 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 16:06:44
[2026-06-12 16:06:45,157.157 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 16:06:45,301.301 INFO    ] Initializing speech engine...
[2026-06-12 16:06:45,306.306 INFO    ] 2026-06-12 16:06:45
[2026-06-12 16:06:45,510.510 INFO    ] 2026-06-12 16:06:45
[2026-06-12 16:06:45,539.539 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 16:06:45,722.722 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 16:06:45,726.726 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 16:06:45,883.883 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 16:06:45,937.937 INFO    ] time= 12/06/2026 16:06:45
[2026-06-12 16:06:45,953.953 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 16:06:45,959.959 INFO    ] Checking for existing commands in stream...
[2026-06-12 16:06:46,026.026 INFO    ] No existing commands found in stream
[2026-06-12 16:06:51,059.059 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 16:06:51,062.062 INFO    ] Waiting 3.31 seconds before fallback handling...
[2026-06-12 16:06:54,781.781 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 16:06:54,782.782 INFO    ] Checking for system updates...
[2026-06-12 16:06:54,806.806 INFO    ] 200
[2026-06-12 16:06:54,807.807 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:06:54,842.842 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 16:06:54,843.843 INFO    ] No update needed
[2026-06-12 16:06:54,845.845 INFO    ] Checking for camera pi updates...
[2026-06-12 16:06:54,868.868 INFO    ] 200
[2026-06-12 16:06:54,869.869 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:06:54,895.895 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 16:06:55,037.037 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 16:06:55,039.039 INFO    ] No camera update needed
[2026-06-12 16:06:55,040.040 INFO    ] Script finished. Safe exiting...
[2026-06-12 16:06:55,042.042 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 16:06:55,045.045 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 16:06:55,048.048 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 16:06:57,088.088 INFO    ] ================================================
[2026-06-12 16:06:57,103.103 INFO    ] Launching Daemon at Fri Jun 12 16:06:57 IST 2026
[2026-06-12 16:06:57,114.114 INFO    ] ================================================
[2026-06-12 16:06:57,492.492 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 16:06:57
[2026-06-12 16:06:57,808.808 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 16:06:57,939.939 INFO    ] Initializing speech engine...
[2026-06-12 16:06:57,943.943 INFO    ] 2026-06-12 16:06:57
[2026-06-12 16:06:58,159.159 INFO    ] 2026-06-12 16:06:58
[2026-06-12 16:06:58,189.189 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 16:06:58,372.372 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 16:06:58,381.381 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 16:06:58,507.507 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 16:06:58,564.564 INFO    ] time= 12/06/2026 16:06:58
[2026-06-12 16:06:58,593.593 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 16:06:58,603.603 INFO    ] Checking for existing commands in stream...
[2026-06-12 16:06:58,674.674 INFO    ] No existing commands found in stream
[2026-06-12 16:07:03,688.688 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 16:07:03,692.692 INFO    ] Waiting 3.61 seconds before fallback handling...
[2026-06-12 16:07:07,665.665 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 16:07:07,667.667 INFO    ] Checking for system updates...
[2026-06-12 16:07:07,687.687 INFO    ] 200
[2026-06-12 16:07:07,689.689 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:07:07,721.721 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 16:07:07,723.723 INFO    ] No update needed
[2026-06-12 16:07:07,724.724 INFO    ] Checking for camera pi updates...
[2026-06-12 16:07:07,744.744 INFO    ] 200
[2026-06-12 16:07:07,746.746 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:07:07,770.770 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 16:07:07,814.814 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 16:07:07,815.815 INFO    ] No camera update needed
[2026-06-12 16:07:07,816.816 INFO    ] Script finished. Safe exiting...
[2026-06-12 16:07:07,818.818 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 16:07:07,821.821 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 16:07:07,824.824 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 16:07:09,861.861 INFO    ] ================================================
[2026-06-12 16:07:09,877.877 INFO    ] Launching Daemon at Fri Jun 12 16:07:09 IST 2026
[2026-06-12 16:07:09,888.888 INFO    ] ================================================
[2026-06-12 16:07:10,255.255 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 16:07:10
[2026-06-12 16:07:10,567.567 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 16:07:10,702.702 INFO    ] Initializing speech engine...
[2026-06-12 16:07:10,705.705 INFO    ] 2026-06-12 16:07:10
[2026-06-12 16:07:10,896.896 INFO    ] 2026-06-12 16:07:10
[2026-06-12 16:07:10,941.941 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 16:07:11,102.102 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 16:07:11,137.137 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 16:07:11,315.315 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 16:07:11,363.363 INFO    ] time= 12/06/2026 16:07:11
[2026-06-12 16:07:11,402.402 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 16:07:11,425.425 INFO    ] Checking for existing commands in stream...
[2026-06-12 16:07:11,502.502 INFO    ] No existing commands found in stream
[2026-06-12 16:07:16,512.512 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 16:07:16,515.515 INFO    ] Waiting 2.94 seconds before fallback handling...
[2026-06-12 16:07:19,880.880 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 16:07:19,881.881 INFO    ] Checking for system updates...
[2026-06-12 16:07:19,902.902 INFO    ] 200
[2026-06-12 16:07:19,903.903 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:07:19,937.937 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 16:07:19,938.938 INFO    ] No update needed
[2026-06-12 16:07:19,940.940 INFO    ] Checking for camera pi updates...
[2026-06-12 16:07:19,960.960 INFO    ] 200
[2026-06-12 16:07:19,962.962 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:07:19,986.986 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 16:07:20,033.033 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 16:07:20,034.034 INFO    ] No camera update needed
[2026-06-12 16:07:20,035.035 INFO    ] Script finished. Safe exiting...
[2026-06-12 16:07:20,037.037 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 16:07:20,039.039 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 16:07:20,042.042 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 16:07:22,081.081 INFO    ] ================================================
[2026-06-12 16:07:22,097.097 INFO    ] Launching Daemon at Fri Jun 12 16:07:22 IST 2026
[2026-06-12 16:07:22,108.108 INFO    ] ================================================
[2026-06-12 16:07:22,466.466 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 16:07:22
[2026-06-12 16:07:22,778.778 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 16:07:22,920.920 INFO    ] Initializing speech engine...
[2026-06-12 16:07:22,925.925 INFO    ] 2026-06-12 16:07:22
[2026-06-12 16:07:23,127.127 INFO    ] 2026-06-12 16:07:23
[2026-06-12 16:07:23,155.155 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 16:07:23,340.340 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 16:07:23,349.349 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 16:07:23,488.488 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 16:07:23,546.546 INFO    ] time= 12/06/2026 16:07:23
[2026-06-12 16:07:23,570.570 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 16:07:23,575.575 INFO    ] Checking for existing commands in stream...
[2026-06-12 16:07:23,642.642 INFO    ] No existing commands found in stream
[2026-06-12 16:07:28,651.651 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 16:07:28,654.654 INFO    ] Waiting 0.55 seconds before fallback handling...
[2026-06-12 16:07:29,585.585 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 16:07:29,587.587 INFO    ] Checking for system updates...
[2026-06-12 16:07:29,607.607 INFO    ] 200
[2026-06-12 16:07:29,609.609 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:07:29,641.641 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 16:07:29,642.642 INFO    ] No update needed
[2026-06-12 16:07:29,644.644 INFO    ] Checking for camera pi updates...
[2026-06-12 16:07:29,662.662 INFO    ] 200
[2026-06-12 16:07:29,664.664 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:07:29,689.689 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 16:07:29,741.741 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 16:07:29,742.742 INFO    ] No camera update needed
[2026-06-12 16:07:29,743.743 INFO    ] Script finished. Safe exiting...
[2026-06-12 16:07:29,744.744 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 16:07:29,747.747 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 16:07:29,750.750 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 16:07:31,781.781 INFO    ] ================================================
[2026-06-12 16:07:31,791.791 INFO    ] Launching Daemon at Fri Jun 12 16:07:31 IST 2026
[2026-06-12 16:07:31,798.798 INFO    ] ================================================
[2026-06-12 16:07:32,131.131 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 16:07:32
[2026-06-12 16:07:32,474.474 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 16:07:32,618.618 INFO    ] Initializing speech engine...
[2026-06-12 16:07:32,623.623 INFO    ] 2026-06-12 16:07:32
[2026-06-12 16:07:32,830.830 INFO    ] 2026-06-12 16:07:32
[2026-06-12 16:07:32,858.858 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 16:07:32,980.980 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 16:07:33,014.014 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 16:07:33,183.183 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 16:07:33,251.251 INFO    ] time= 12/06/2026 16:07:33
[2026-06-12 16:07:33,275.275 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 16:07:33,281.281 INFO    ] Checking for existing commands in stream...
[2026-06-12 16:07:33,348.348 INFO    ] No existing commands found in stream
[2026-06-12 16:07:38,357.357 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 16:07:38,360.360 INFO    ] Waiting 2.25 seconds before fallback handling...
[2026-06-12 16:07:40,979.979 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 16:07:40,981.981 INFO    ] Checking for system updates...
[2026-06-12 16:07:41,001.001 INFO    ] 200
[2026-06-12 16:07:41,002.002 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:07:41,035.035 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 16:07:41,036.036 INFO    ] No update needed
[2026-06-12 16:07:41,037.037 INFO    ] Checking for camera pi updates...
[2026-06-12 16:07:41,058.058 INFO    ] 200
[2026-06-12 16:07:41,059.059 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:07:41,086.086 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 16:07:41,143.143 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 16:07:41,144.144 INFO    ] No camera update needed
[2026-06-12 16:07:41,145.145 INFO    ] Script finished. Safe exiting...
[2026-06-12 16:07:41,147.147 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 16:07:41,150.150 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 16:07:41,153.153 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 16:07:43,190.190 INFO    ] ================================================
[2026-06-12 16:07:43,207.207 INFO    ] Launching Daemon at Fri Jun 12 16:07:43 IST 2026
[2026-06-12 16:07:43,219.219 INFO    ] ================================================
[2026-06-12 16:07:43,610.610 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 16:07:43
[2026-06-12 16:07:43,951.951 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 16:07:44,092.092 INFO    ] Initializing speech engine...
[2026-06-12 16:07:44,104.104 INFO    ] 2026-06-12 16:07:44
[2026-06-12 16:07:44,317.317 INFO    ] 2026-06-12 16:07:44
[2026-06-12 16:07:44,347.347 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 16:07:44,490.490 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 16:07:44,534.534 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 16:07:44,663.663 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 16:07:44,720.720 INFO    ] time= 12/06/2026 16:07:44
[2026-06-12 16:07:44,750.750 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 16:07:44,766.766 INFO    ] Checking for existing commands in stream...
[2026-06-12 16:07:44,837.837 INFO    ] No existing commands found in stream
[2026-06-12 16:07:49,847.847 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 16:07:49,850.850 INFO    ] Waiting 1.34 seconds before fallback handling...
[2026-06-12 16:07:52,225.225 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 16:07:52,228.228 INFO    ] Checking for system updates...
[2026-06-12 16:07:52,265.265 INFO    ] 200
[2026-06-12 16:07:52,268.268 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:07:52,323.323 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 16:07:52,326.326 INFO    ] No update needed
[2026-06-12 16:07:52,329.329 INFO    ] Checking for camera pi updates...
[2026-06-12 16:07:52,363.363 INFO    ] 200
[2026-06-12 16:07:52,366.366 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:07:52,406.406 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 16:07:52,458.458 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 16:07:52,460.460 INFO    ] No camera update needed
[2026-06-12 16:07:52,461.461 INFO    ] Script finished. Safe exiting...
[2026-06-12 16:07:52,463.463 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 16:07:52,466.466 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 16:07:52,469.469 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 16:07:54,507.507 INFO    ] ================================================
[2026-06-12 16:07:54,523.523 INFO    ] Launching Daemon at Fri Jun 12 16:07:54 IST 2026
[2026-06-12 16:07:54,535.535 INFO    ] ================================================
[2026-06-12 16:07:54,898.898 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 16:07:54
[2026-06-12 16:07:55,210.210 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 16:07:55,352.352 INFO    ] Initializing speech engine...
[2026-06-12 16:07:55,358.358 INFO    ] 2026-06-12 16:07:55
[2026-06-12 16:07:55,563.563 INFO    ] 2026-06-12 16:07:55
[2026-06-12 16:07:55,591.591 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 16:07:55,775.775 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 16:07:55,784.784 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 16:07:55,925.925 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 16:07:55,983.983 INFO    ] time= 12/06/2026 16:07:55
[2026-06-12 16:07:56,005.005 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 16:07:56,012.012 INFO    ] Checking for existing commands in stream...
[2026-06-12 16:07:56,102.102 INFO    ] No existing commands found in stream
[2026-06-12 16:08:01,116.116 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 16:08:01,119.119 INFO    ] Waiting 2.87 seconds before fallback handling...
[2026-06-12 16:08:04,371.371 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 16:08:04,373.373 INFO    ] Checking for system updates...
[2026-06-12 16:08:04,393.393 INFO    ] 200
[2026-06-12 16:08:04,394.394 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:08:04,424.424 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 16:08:04,425.425 INFO    ] No update needed
[2026-06-12 16:08:04,427.427 INFO    ] Checking for camera pi updates...
[2026-06-12 16:08:04,445.445 INFO    ] 200
[2026-06-12 16:08:04,447.447 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:08:04,472.472 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 16:08:04,525.525 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 16:08:04,527.527 INFO    ] No camera update needed
[2026-06-12 16:08:04,528.528 INFO    ] Script finished. Safe exiting...
[2026-06-12 16:08:04,529.529 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 16:08:04,532.532 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 16:08:04,535.535 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 16:08:06,574.574 INFO    ] ================================================
[2026-06-12 16:08:06,589.589 INFO    ] Launching Daemon at Fri Jun 12 16:08:06 IST 2026
[2026-06-12 16:08:06,596.596 INFO    ] ================================================
[2026-06-12 16:08:06,898.898 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 16:08:06
[2026-06-12 16:08:07,217.217 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 16:08:07,356.356 INFO    ] Initializing speech engine...
[2026-06-12 16:08:07,364.364 INFO    ] 2026-06-12 16:08:07
[2026-06-12 16:08:07,585.585 INFO    ] 2026-06-12 16:08:07
[2026-06-12 16:08:07,617.617 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 16:08:07,750.750 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 16:08:07,804.804 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 16:08:07,959.959 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 16:08:08,021.021 INFO    ] time= 12/06/2026 16:08:07
[2026-06-12 16:08:08,050.050 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 16:08:08,061.061 INFO    ] Checking for existing commands in stream...
[2026-06-12 16:08:08,132.132 INFO    ] No existing commands found in stream
[2026-06-12 16:08:13,142.142 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 16:08:13,144.144 INFO    ] Waiting 2.13 seconds before fallback handling...
[2026-06-12 16:08:15,627.627 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 16:08:15,629.629 INFO    ] Checking for system updates...
[2026-06-12 16:08:15,650.650 INFO    ] 200
[2026-06-12 16:08:15,652.652 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:08:15,684.684 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 16:08:15,685.685 INFO    ] No update needed
[2026-06-12 16:08:15,686.686 INFO    ] Checking for camera pi updates...
[2026-06-12 16:08:15,706.706 INFO    ] 200
[2026-06-12 16:08:15,707.707 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:08:15,734.734 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 16:08:15,775.775 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 16:08:15,776.776 INFO    ] No camera update needed
[2026-06-12 16:08:15,778.778 INFO    ] Script finished. Safe exiting...
[2026-06-12 16:08:15,779.779 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 16:08:15,782.782 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 16:08:15,785.785 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 16:08:17,825.825 INFO    ] ================================================
[2026-06-12 16:08:17,841.841 INFO    ] Launching Daemon at Fri Jun 12 16:08:17 IST 2026
[2026-06-12 16:08:17,852.852 INFO    ] ================================================
[2026-06-12 16:08:18,196.196 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 16:08:18
[2026-06-12 16:08:18,513.513 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 16:08:18,652.652 INFO    ] Initializing speech engine...
[2026-06-12 16:08:18,660.660 INFO    ] 2026-06-12 16:08:18
[2026-06-12 16:08:18,867.867 INFO    ] 2026-06-12 16:08:18
[2026-06-12 16:08:18,896.896 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 16:08:19,083.083 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 16:08:19,091.091 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 16:08:19,233.233 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 16:08:19,398.398 INFO    ] time= 12/06/2026 16:08:19
[2026-06-12 16:08:19,402.402 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 16:08:19,409.409 INFO    ] Checking for existing commands in stream...
[2026-06-12 16:08:19,536.536 INFO    ] No existing commands found in stream
[2026-06-12 16:08:24,546.546 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 16:08:24,549.549 INFO    ] Waiting 3.58 seconds before fallback handling...
[2026-06-12 16:08:28,540.540 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 16:08:28,542.542 INFO    ] Checking for system updates...
[2026-06-12 16:08:28,562.562 INFO    ] 200
[2026-06-12 16:08:28,564.564 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:08:28,594.594 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 16:08:28,595.595 INFO    ] No update needed
[2026-06-12 16:08:28,596.596 INFO    ] Checking for camera pi updates...
[2026-06-12 16:08:28,615.615 INFO    ] 200
[2026-06-12 16:08:28,616.616 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:08:28,641.641 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 16:08:28,699.699 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 16:08:28,700.700 INFO    ] No camera update needed
[2026-06-12 16:08:28,702.702 INFO    ] Script finished. Safe exiting...
[2026-06-12 16:08:28,703.703 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 16:08:28,706.706 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 16:08:28,709.709 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 16:08:30,746.746 INFO    ] ================================================
[2026-06-12 16:08:30,762.762 INFO    ] Launching Daemon at Fri Jun 12 16:08:30 IST 2026
[2026-06-12 16:08:30,773.773 INFO    ] ================================================
[2026-06-12 16:08:31,128.128 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 16:08:31
[2026-06-12 16:08:31,440.440 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 16:08:31,574.574 INFO    ] Initializing speech engine...
[2026-06-12 16:08:31,577.577 INFO    ] 2026-06-12 16:08:31
[2026-06-12 16:08:31,782.782 INFO    ] 2026-06-12 16:08:31
[2026-06-12 16:08:31,833.833 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 16:08:32,004.004 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 16:08:32,030.030 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 16:08:32,193.193 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 16:08:32,241.241 INFO    ] time= 12/06/2026 16:08:32
[2026-06-12 16:08:32,273.273 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 16:08:32,335.335 INFO    ] Checking for existing commands in stream...
[2026-06-12 16:08:32,464.464 INFO    ] No existing commands found in stream
[2026-06-12 16:08:37,473.473 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 16:08:37,475.475 INFO    ] Waiting 1.32 seconds before fallback handling...
[2026-06-12 16:08:39,189.189 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 16:08:39,191.191 INFO    ] Checking for system updates...
[2026-06-12 16:08:39,211.211 INFO    ] 200
[2026-06-12 16:08:39,213.213 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:08:39,242.242 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 16:08:39,244.244 INFO    ] No update needed
[2026-06-12 16:08:39,245.245 INFO    ] Checking for camera pi updates...
[2026-06-12 16:08:39,264.264 INFO    ] 200
[2026-06-12 16:08:39,266.266 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:08:39,290.290 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 16:08:39,346.346 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 16:08:39,348.348 INFO    ] No camera update needed
[2026-06-12 16:08:39,349.349 INFO    ] Script finished. Safe exiting...
[2026-06-12 16:08:39,350.350 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 16:08:39,353.353 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 16:08:39,356.356 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 16:08:41,395.395 INFO    ] ================================================
[2026-06-12 16:08:41,411.411 INFO    ] Launching Daemon at Fri Jun 12 16:08:41 IST 2026
[2026-06-12 16:08:41,422.422 INFO    ] ================================================
[2026-06-12 16:08:41,770.770 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 16:08:41
[2026-06-12 16:08:42,084.084 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 16:08:42,218.218 INFO    ] Initializing speech engine...
[2026-06-12 16:08:42,223.223 INFO    ] 2026-06-12 16:08:42
[2026-06-12 16:08:42,454.454 INFO    ] 2026-06-12 16:08:42
[2026-06-12 16:08:42,483.483 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 16:08:42,683.683 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 16:08:42,687.687 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 16:08:42,836.836 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 16:08:42,884.884 INFO    ] time= 12/06/2026 16:08:42
[2026-06-12 16:08:42,925.925 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 16:08:42,937.937 INFO    ] Checking for existing commands in stream...
[2026-06-12 16:08:43,040.040 INFO    ] No existing commands found in stream
[2026-06-12 16:08:48,049.049 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 16:08:48,052.052 INFO    ] Waiting 2.54 seconds before fallback handling...
[2026-06-12 16:08:50,963.963 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 16:08:50,964.964 INFO    ] Checking for system updates...
[2026-06-12 16:08:50,986.986 INFO    ] 200
[2026-06-12 16:08:50,988.988 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:08:51,022.022 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 16:08:51,024.024 INFO    ] No update needed
[2026-06-12 16:08:51,026.026 INFO    ] Checking for camera pi updates...
[2026-06-12 16:08:51,047.047 INFO    ] 200
[2026-06-12 16:08:51,048.048 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:08:51,073.073 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 16:08:51,123.123 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 16:08:51,125.125 INFO    ] No camera update needed
[2026-06-12 16:08:51,126.126 INFO    ] Script finished. Safe exiting...
[2026-06-12 16:08:51,128.128 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 16:08:51,131.131 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 16:08:51,134.134 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 16:08:53,173.173 INFO    ] ================================================
[2026-06-12 16:08:53,189.189 INFO    ] Launching Daemon at Fri Jun 12 16:08:53 IST 2026
[2026-06-12 16:08:53,200.200 INFO    ] ================================================
[2026-06-12 16:08:53,566.566 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 16:08:53
[2026-06-12 16:08:53,880.880 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 16:08:54,012.012 INFO    ] Initializing speech engine...
[2026-06-12 16:08:54,017.017 INFO    ] 2026-06-12 16:08:54
[2026-06-12 16:08:54,223.223 INFO    ] 2026-06-12 16:08:54
[2026-06-12 16:08:54,257.257 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 16:08:54,415.415 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 16:08:54,453.453 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 16:08:54,625.625 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 16:08:54,707.707 INFO    ] time= 12/06/2026 16:08:54
[2026-06-12 16:08:54,733.733 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 16:08:54,740.740 INFO    ] Checking for existing commands in stream...
[2026-06-12 16:08:54,811.811 INFO    ] No existing commands found in stream
[2026-06-12 16:08:59,821.821 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 16:08:59,824.824 INFO    ] Waiting 2.28 seconds before fallback handling...
[2026-06-12 16:09:02,486.486 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 16:09:02,488.488 INFO    ] Checking for system updates...
[2026-06-12 16:09:02,512.512 INFO    ] 200
[2026-06-12 16:09:02,514.514 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:09:02,552.552 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 16:09:02,555.555 INFO    ] No update needed
[2026-06-12 16:09:02,557.557 INFO    ] Checking for camera pi updates...
[2026-06-12 16:09:02,589.589 INFO    ] 200
[2026-06-12 16:09:02,591.591 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:09:02,625.625 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 16:09:02,744.744 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 16:09:02,745.745 INFO    ] No camera update needed
[2026-06-12 16:09:02,746.746 INFO    ] Script finished. Safe exiting...
[2026-06-12 16:09:02,748.748 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 16:09:02,751.751 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 16:09:02,754.754 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 16:09:04,793.793 INFO    ] ================================================
[2026-06-12 16:09:04,810.810 INFO    ] Launching Daemon at Fri Jun 12 16:09:04 IST 2026
[2026-06-12 16:09:04,820.820 INFO    ] ================================================
[2026-06-12 16:09:05,183.183 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 16:09:05
[2026-06-12 16:09:05,524.524 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 16:09:05,678.678 INFO    ] Initializing speech engine...
[2026-06-12 16:09:05,682.682 INFO    ] 2026-06-12 16:09:05
[2026-06-12 16:09:05,892.892 INFO    ] 2026-06-12 16:09:05
[2026-06-12 16:09:05,923.923 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 16:09:06,122.122 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 16:09:06,132.132 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 16:09:06,318.318 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 16:09:06,353.353 INFO    ] time= 12/06/2026 16:09:06
[2026-06-12 16:09:06,358.358 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 16:09:06,360.360 INFO    ] Checking for existing commands in stream...
[2026-06-12 16:09:06,428.428 INFO    ] No existing commands found in stream
[2026-06-12 16:09:11,437.437 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 16:09:11,440.440 INFO    ] Waiting 1.93 seconds before fallback handling...
[2026-06-12 16:09:13,759.759 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 16:09:13,761.761 INFO    ] Checking for system updates...
[2026-06-12 16:09:13,781.781 INFO    ] 200
[2026-06-12 16:09:13,783.783 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:09:13,813.813 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 16:09:13,814.814 INFO    ] No update needed
[2026-06-12 16:09:13,815.815 INFO    ] Checking for camera pi updates...
[2026-06-12 16:09:13,836.836 INFO    ] 200
[2026-06-12 16:09:13,837.837 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:09:13,861.861 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 16:09:13,906.906 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 16:09:13,907.907 INFO    ] No camera update needed
[2026-06-12 16:09:13,908.908 INFO    ] Script finished. Safe exiting...
[2026-06-12 16:09:13,910.910 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 16:09:13,913.913 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 16:09:13,915.915 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 16:09:15,955.955 INFO    ] ================================================
[2026-06-12 16:09:15,970.970 INFO    ] Launching Daemon at Fri Jun 12 16:09:15 IST 2026
[2026-06-12 16:09:15,982.982 INFO    ] ================================================
[2026-06-12 16:09:16,344.344 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 16:09:16
[2026-06-12 16:09:16,681.681 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 16:09:16,833.833 INFO    ] Initializing speech engine...
[2026-06-12 16:09:16,838.838 INFO    ] 2026-06-12 16:09:16
[2026-06-12 16:09:17,048.048 INFO    ] 2026-06-12 16:09:17
[2026-06-12 16:09:17,077.077 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 16:09:17,265.265 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 16:09:17,275.275 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 16:09:17,404.404 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 16:09:17,463.463 INFO    ] time= 12/06/2026 16:09:17
[2026-06-12 16:09:17,497.497 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 16:09:17,503.503 INFO    ] Checking for existing commands in stream...
[2026-06-12 16:09:17,597.597 INFO    ] No existing commands found in stream
[2026-06-12 16:09:22,606.606 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 16:09:22,609.609 INFO    ] Waiting 3.64 seconds before fallback handling...
[2026-06-12 16:09:26,640.640 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 16:09:26,641.641 INFO    ] Checking for system updates...
[2026-06-12 16:09:26,662.662 INFO    ] 200
[2026-06-12 16:09:26,663.663 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:09:26,698.698 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 16:09:26,700.700 INFO    ] No update needed
[2026-06-12 16:09:26,701.701 INFO    ] Checking for camera pi updates...
[2026-06-12 16:09:26,721.721 INFO    ] 200
[2026-06-12 16:09:26,722.722 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:09:26,747.747 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 16:09:26,832.832 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 16:09:26,833.833 INFO    ] No camera update needed
[2026-06-12 16:09:26,835.835 INFO    ] Script finished. Safe exiting...
[2026-06-12 16:09:26,836.836 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 16:09:26,839.839 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 16:09:26,842.842 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 16:09:28,882.882 INFO    ] ================================================
[2026-06-12 16:09:28,898.898 INFO    ] Launching Daemon at Fri Jun 12 16:09:28 IST 2026
[2026-06-12 16:09:28,909.909 INFO    ] ================================================
[2026-06-12 16:09:29,283.283 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 16:09:29
[2026-06-12 16:09:29,627.627 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 16:09:29,779.779 INFO    ] Initializing speech engine...
[2026-06-12 16:09:29,784.784 INFO    ] 2026-06-12 16:09:29
[2026-06-12 16:09:29,994.994 INFO    ] 2026-06-12 16:09:29
[2026-06-12 16:09:30,023.023 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 16:09:30,208.208 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 16:09:30,221.221 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 16:09:30,379.379 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 16:09:30,429.429 INFO    ] time= 12/06/2026 16:09:30
[2026-06-12 16:09:30,439.439 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 16:09:30,446.446 INFO    ] Checking for existing commands in stream...
[2026-06-12 16:09:30,513.513 INFO    ] No existing commands found in stream
[2026-06-12 16:09:35,522.522 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 16:09:35,526.526 INFO    ] Waiting 0.07 seconds before fallback handling...
[2026-06-12 16:09:36,002.002 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 16:09:36,004.004 INFO    ] Checking for system updates...
[2026-06-12 16:09:36,024.024 INFO    ] 200
[2026-06-12 16:09:36,026.026 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:09:36,055.055 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 16:09:36,057.057 INFO    ] No update needed
[2026-06-12 16:09:36,058.058 INFO    ] Checking for camera pi updates...
[2026-06-12 16:09:36,077.077 INFO    ] 200
[2026-06-12 16:09:36,079.079 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:09:36,103.103 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 16:09:36,152.152 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 16:09:36,154.154 INFO    ] No camera update needed
[2026-06-12 16:09:36,155.155 INFO    ] Script finished. Safe exiting...
[2026-06-12 16:09:36,156.156 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 16:09:36,160.160 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 16:09:36,163.163 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 16:09:38,202.202 INFO    ] ================================================
[2026-06-12 16:09:38,217.217 INFO    ] Launching Daemon at Fri Jun 12 16:09:38 IST 2026
[2026-06-12 16:09:38,228.228 INFO    ] ================================================
[2026-06-12 16:09:39,766.766 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 16:09:38
[2026-06-12 16:09:40,141.141 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 16:09:40,272.272 INFO    ] Initializing speech engine...
[2026-06-12 16:09:40,280.280 INFO    ] 2026-06-12 16:09:40
[2026-06-12 16:09:40,493.493 INFO    ] 2026-06-12 16:09:40
[2026-06-12 16:09:40,524.524 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 16:09:40,710.710 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 16:09:40,720.720 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 16:09:40,865.865 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 16:09:40,919.919 INFO    ] time= 12/06/2026 16:09:40
[2026-06-12 16:09:40,943.943 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 16:09:40,949.949 INFO    ] Checking for existing commands in stream...
[2026-06-12 16:09:41,017.017 INFO    ] No existing commands found in stream
[2026-06-12 16:09:46,026.026 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 16:09:46,029.029 INFO    ] Waiting 0.40 seconds before fallback handling...
[2026-06-12 16:09:46,822.822 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 16:09:46,824.824 INFO    ] Checking for system updates...
[2026-06-12 16:09:46,846.846 INFO    ] 200
[2026-06-12 16:09:46,847.847 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:09:46,880.880 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 16:09:46,881.881 INFO    ] No update needed
[2026-06-12 16:09:46,883.883 INFO    ] Checking for camera pi updates...
[2026-06-12 16:09:46,902.902 INFO    ] 200
[2026-06-12 16:09:46,904.904 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:09:46,928.928 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 16:09:46,982.982 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 16:09:46,984.984 INFO    ] No camera update needed
[2026-06-12 16:09:46,985.985 INFO    ] Script finished. Safe exiting...
[2026-06-12 16:09:46,986.986 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 16:09:46,990.990 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 16:09:46,993.993 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 16:09:49,033.033 INFO    ] ================================================
[2026-06-12 16:09:49,049.049 INFO    ] Launching Daemon at Fri Jun 12 16:09:49 IST 2026
[2026-06-12 16:09:49,060.060 INFO    ] ================================================
[2026-06-12 16:09:49,428.428 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 16:09:49
[2026-06-12 16:09:49,744.744 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 16:09:49,892.892 INFO    ] Initializing speech engine...
[2026-06-12 16:09:49,898.898 INFO    ] 2026-06-12 16:09:49
[2026-06-12 16:09:50,114.114 INFO    ] 2026-06-12 16:09:50
[2026-06-12 16:09:50,145.145 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 16:09:50,323.323 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 16:09:50,347.347 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 16:09:50,492.492 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 16:09:50,548.548 INFO    ] time= 12/06/2026 16:09:50
[2026-06-12 16:09:50,572.572 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 16:09:50,595.595 INFO    ] Checking for existing commands in stream...
[2026-06-12 16:09:50,698.698 INFO    ] No existing commands found in stream
[2026-06-12 16:09:55,707.707 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 16:09:55,710.710 INFO    ] Waiting 3.01 seconds before fallback handling...
[2026-06-12 16:09:59,123.123 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 16:09:59,124.124 INFO    ] Checking for system updates...
[2026-06-12 16:09:59,145.145 INFO    ] 200
[2026-06-12 16:09:59,146.146 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:09:59,176.176 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 16:09:59,178.178 INFO    ] No update needed
[2026-06-12 16:09:59,179.179 INFO    ] Checking for camera pi updates...
[2026-06-12 16:09:59,201.201 INFO    ] 200
[2026-06-12 16:09:59,202.202 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:09:59,228.228 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 16:09:59,269.269 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 16:09:59,270.270 INFO    ] No camera update needed
[2026-06-12 16:09:59,272.272 INFO    ] Script finished. Safe exiting...
[2026-06-12 16:09:59,273.273 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 16:09:59,276.276 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 16:09:59,279.279 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 16:10:01,317.317 INFO    ] ================================================
[2026-06-12 16:10:01,333.333 INFO    ] Launching Daemon at Fri Jun 12 16:10:01 IST 2026
[2026-06-12 16:10:01,343.343 INFO    ] ================================================
[2026-06-12 16:10:01,711.711 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 16:10:01
[2026-06-12 16:10:02,181.181 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 16:10:02,522.522 INFO    ] Initializing speech engine...
[2026-06-12 16:10:02,524.524 INFO    ] 2026-06-12 16:10:02
[2026-06-12 16:10:02,838.838 INFO    ] 2026-06-12 16:10:02
[2026-06-12 16:10:02,891.891 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 16:10:03,074.074 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 16:10:03,105.105 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 16:10:03,256.256 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 16:10:03,258.258 INFO    ] time= 12/06/2026 16:10:03
[2026-06-12 16:10:03,259.259 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 16:10:03,260.260 INFO    ] Checking for existing commands in stream...
[2026-06-12 16:10:03,344.344 INFO    ] No existing commands found in stream
[2026-06-12 16:10:08,377.377 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 16:10:08,381.381 INFO    ] Waiting 2.73 seconds before fallback handling...
[2026-06-12 16:10:11,537.537 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 16:10:11,539.539 INFO    ] Checking for system updates...
[2026-06-12 16:10:11,560.560 INFO    ] 200
[2026-06-12 16:10:11,561.561 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:10:11,591.591 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 16:10:11,592.592 INFO    ] No update needed
[2026-06-12 16:10:11,594.594 INFO    ] Checking for camera pi updates...
[2026-06-12 16:10:11,614.614 INFO    ] 200
[2026-06-12 16:10:11,615.615 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:10:11,638.638 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 16:10:11,686.686 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 16:10:11,687.687 INFO    ] No camera update needed
[2026-06-12 16:10:11,689.689 INFO    ] Script finished. Safe exiting...
[2026-06-12 16:10:11,690.690 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 16:10:11,693.693 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 16:10:11,696.696 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 16:10:13,735.735 INFO    ] ================================================
[2026-06-12 16:10:13,750.750 INFO    ] Launching Daemon at Fri Jun 12 16:10:13 IST 2026
[2026-06-12 16:10:13,762.762 INFO    ] ================================================
[2026-06-12 16:10:14,122.122 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 16:10:14
[2026-06-12 16:10:14,464.464 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 16:10:14,603.603 INFO    ] Initializing speech engine...
[2026-06-12 16:10:14,611.611 INFO    ] 2026-06-12 16:10:14
[2026-06-12 16:10:14,830.830 INFO    ] 2026-06-12 16:10:14
[2026-06-12 16:10:14,859.859 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 16:10:15,043.043 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 16:10:15,053.053 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 16:10:15,203.203 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 16:10:15,251.251 INFO    ] time= 12/06/2026 16:10:15
[2026-06-12 16:10:15,273.273 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 16:10:15,280.280 INFO    ] Checking for existing commands in stream...
[2026-06-12 16:10:15,369.369 INFO    ] No existing commands found in stream
[2026-06-12 16:10:20,379.379 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 16:10:20,382.382 INFO    ] Waiting 3.90 seconds before fallback handling...
[2026-06-12 16:10:24,713.713 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 16:10:24,715.715 INFO    ] Checking for system updates...
[2026-06-12 16:10:24,736.736 INFO    ] 200
[2026-06-12 16:10:24,737.737 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:10:24,770.770 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 16:10:24,771.771 INFO    ] No update needed
[2026-06-12 16:10:24,773.773 INFO    ] Checking for camera pi updates...
[2026-06-12 16:10:24,792.792 INFO    ] 200
[2026-06-12 16:10:24,794.794 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:10:24,817.817 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 16:10:24,905.905 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 16:10:24,906.906 INFO    ] No camera update needed
[2026-06-12 16:10:24,907.907 INFO    ] Script finished. Safe exiting...
[2026-06-12 16:10:24,908.908 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 16:10:24,912.912 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 16:10:24,914.914 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 16:10:26,953.953 INFO    ] ================================================
[2026-06-12 16:10:26,968.968 INFO    ] Launching Daemon at Fri Jun 12 16:10:26 IST 2026
[2026-06-12 16:10:26,979.979 INFO    ] ================================================
[2026-06-12 16:10:27,339.339 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 16:10:27
[2026-06-12 16:10:27,657.657 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 16:10:27,805.805 INFO    ] Initializing speech engine...
[2026-06-12 16:10:27,811.811 INFO    ] 2026-06-12 16:10:27
[2026-06-12 16:10:28,028.028 INFO    ] 2026-06-12 16:10:27
[2026-06-12 16:10:28,058.058 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 16:10:28,257.257 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 16:10:28,260.260 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 16:10:28,400.400 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 16:10:28,462.462 INFO    ] time= 12/06/2026 16:10:28
[2026-06-12 16:10:28,502.502 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 16:10:28,508.508 INFO    ] Checking for existing commands in stream...
[2026-06-12 16:10:28,610.610 INFO    ] No existing commands found in stream
[2026-06-12 16:10:33,618.618 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 16:10:33,620.620 INFO    ] Waiting 3.02 seconds before fallback handling...
[2026-06-12 16:10:36,996.996 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 16:10:36,998.998 INFO    ] Checking for system updates...
[2026-06-12 16:10:37,018.018 INFO    ] 200
[2026-06-12 16:10:37,020.020 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:10:37,054.054 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 16:10:37,056.056 INFO    ] No update needed
[2026-06-12 16:10:37,057.057 INFO    ] Checking for camera pi updates...
[2026-06-12 16:10:37,076.076 INFO    ] 200
[2026-06-12 16:10:37,077.077 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:10:37,100.100 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 16:10:37,401.401 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 16:10:37,402.402 INFO    ] No camera update needed
[2026-06-12 16:10:37,404.404 INFO    ] Script finished. Safe exiting...
[2026-06-12 16:10:37,405.405 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 16:10:37,408.408 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 16:10:37,411.411 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 16:10:39,448.448 INFO    ] ================================================
[2026-06-12 16:10:39,465.465 INFO    ] Launching Daemon at Fri Jun 12 16:10:39 IST 2026
[2026-06-12 16:10:39,477.477 INFO    ] ================================================
[2026-06-12 16:10:39,821.821 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 16:10:39
[2026-06-12 16:10:40,133.133 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 16:10:40,264.264 INFO    ] Initializing speech engine...
[2026-06-12 16:10:40,271.271 INFO    ] 2026-06-12 16:10:40
[2026-06-12 16:10:40,486.486 INFO    ] 2026-06-12 16:10:40
[2026-06-12 16:10:40,514.514 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 16:10:40,699.699 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 16:10:40,709.709 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 16:10:40,853.853 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 16:10:40,907.907 INFO    ] time= 12/06/2026 16:10:40
[2026-06-12 16:10:40,930.930 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 16:10:40,935.935 INFO    ] Checking for existing commands in stream...
[2026-06-12 16:10:41,003.003 INFO    ] No existing commands found in stream
[2026-06-12 16:10:46,017.017 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 16:10:46,020.020 INFO    ] Waiting 2.26 seconds before fallback handling...
[2026-06-12 16:10:48,667.667 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 16:10:48,668.668 INFO    ] Checking for system updates...
[2026-06-12 16:10:48,689.689 INFO    ] 200
[2026-06-12 16:10:48,691.691 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:10:48,723.723 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 16:10:48,724.724 INFO    ] No update needed
[2026-06-12 16:10:48,726.726 INFO    ] Checking for camera pi updates...
[2026-06-12 16:10:48,745.745 INFO    ] 200
[2026-06-12 16:10:48,746.746 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:10:48,769.769 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 16:10:48,807.807 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 16:10:48,809.809 INFO    ] No camera update needed
[2026-06-12 16:10:48,810.810 INFO    ] Script finished. Safe exiting...
[2026-06-12 16:10:48,811.811 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 16:10:48,814.814 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 16:10:48,817.817 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 16:10:50,855.855 INFO    ] ================================================
[2026-06-12 16:10:50,873.873 INFO    ] Launching Daemon at Fri Jun 12 16:10:50 IST 2026
[2026-06-12 16:10:50,884.884 INFO    ] ================================================
[2026-06-12 16:10:51,244.244 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 16:10:51
[2026-06-12 16:10:51,583.583 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 16:10:51,734.734 INFO    ] Initializing speech engine...
[2026-06-12 16:10:51,739.739 INFO    ] 2026-06-12 16:10:51
[2026-06-12 16:10:51,946.946 INFO    ] 2026-06-12 16:10:51
[2026-06-12 16:10:51,975.975 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 16:10:52,158.158 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 16:10:52,169.169 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 16:10:52,312.312 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 16:10:52,365.365 INFO    ] time= 12/06/2026 16:10:52
[2026-06-12 16:10:52,391.391 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 16:10:52,393.393 INFO    ] Checking for existing commands in stream...
[2026-06-12 16:10:52,460.460 INFO    ] No existing commands found in stream
[2026-06-12 16:10:57,474.474 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 16:10:57,477.477 INFO    ] Waiting 3.90 seconds before fallback handling...
[2026-06-12 16:11:01,767.767 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 16:11:01,770.770 INFO    ] Checking for system updates...
[2026-06-12 16:11:01,804.804 INFO    ] 200
[2026-06-12 16:11:01,806.806 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:11:01,873.873 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 16:11:01,876.876 INFO    ] No update needed
[2026-06-12 16:11:01,878.878 INFO    ] Checking for camera pi updates...
[2026-06-12 16:11:01,914.914 INFO    ] 200
[2026-06-12 16:11:01,916.916 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:11:01,947.947 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 16:11:01,979.979 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 16:11:01,982.982 INFO    ] No camera update needed
[2026-06-12 16:11:01,984.984 INFO    ] Script finished. Safe exiting...
[2026-06-12 16:11:01,986.986 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 16:11:01,991.991 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 16:11:01,995.995 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 16:11:04,034.034 INFO    ] ================================================
[2026-06-12 16:11:04,049.049 INFO    ] Launching Daemon at Fri Jun 12 16:11:04 IST 2026
[2026-06-12 16:11:04,060.060 INFO    ] ================================================
[2026-06-12 16:11:04,417.417 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 16:11:04
[2026-06-12 16:11:04,728.728 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 16:11:04,861.861 INFO    ] Initializing speech engine...
[2026-06-12 16:11:04,874.874 INFO    ] 2026-06-12 16:11:04
[2026-06-12 16:11:05,082.082 INFO    ] 2026-06-12 16:11:05
[2026-06-12 16:11:05,112.112 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 16:11:05,297.297 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 16:11:05,307.307 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 16:11:05,458.458 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 16:11:05,507.507 INFO    ] time= 12/06/2026 16:11:05
[2026-06-12 16:11:05,529.529 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 16:11:05,536.536 INFO    ] Checking for existing commands in stream...
[2026-06-12 16:11:05,603.603 INFO    ] No existing commands found in stream
[2026-06-12 16:11:10,617.617 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 16:11:10,620.620 INFO    ] Waiting 3.44 seconds before fallback handling...
[2026-06-12 16:11:14,440.440 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 16:11:14,441.441 INFO    ] Checking for system updates...
[2026-06-12 16:11:14,464.464 INFO    ] 200
[2026-06-12 16:11:14,465.465 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:11:14,495.495 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 16:11:14,496.496 INFO    ] No update needed
[2026-06-12 16:11:14,498.498 INFO    ] Checking for camera pi updates...
[2026-06-12 16:11:14,518.518 INFO    ] 200
[2026-06-12 16:11:14,519.519 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:11:14,542.542 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 16:11:14,679.679 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 16:11:14,681.681 INFO    ] No camera update needed
[2026-06-12 16:11:14,682.682 INFO    ] Script finished. Safe exiting...
[2026-06-12 16:11:14,683.683 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 16:11:14,686.686 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 16:11:14,689.689 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 16:11:16,727.727 INFO    ] ================================================
[2026-06-12 16:11:16,743.743 INFO    ] Launching Daemon at Fri Jun 12 16:11:16 IST 2026
[2026-06-12 16:11:16,755.755 INFO    ] ================================================
[2026-06-12 16:11:17,126.126 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 16:11:17
[2026-06-12 16:11:17,441.441 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 16:11:17,585.585 INFO    ] Initializing speech engine...
[2026-06-12 16:11:17,589.589 INFO    ] 2026-06-12 16:11:17
[2026-06-12 16:11:17,794.794 INFO    ] 2026-06-12 16:11:17
[2026-06-12 16:11:17,823.823 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 16:11:18,011.011 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 16:11:18,019.019 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 16:11:18,152.152 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 16:11:18,215.215 INFO    ] time= 12/06/2026 16:11:18
[2026-06-12 16:11:18,243.243 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 16:11:18,250.250 INFO    ] Checking for existing commands in stream...
[2026-06-12 16:11:18,317.317 INFO    ] No existing commands found in stream
[2026-06-12 16:11:23,341.341 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 16:11:23,344.344 INFO    ] Waiting 2.49 seconds before fallback handling...
[2026-06-12 16:11:26,227.227 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 16:11:26,229.229 INFO    ] Checking for system updates...
[2026-06-12 16:11:26,250.250 INFO    ] 200
[2026-06-12 16:11:26,251.251 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:11:26,282.282 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 16:11:26,283.283 INFO    ] No update needed
[2026-06-12 16:11:26,285.285 INFO    ] Checking for camera pi updates...
[2026-06-12 16:11:26,305.305 INFO    ] 200
[2026-06-12 16:11:26,307.307 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:11:26,331.331 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 16:11:26,377.377 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 16:11:26,379.379 INFO    ] No camera update needed
[2026-06-12 16:11:26,380.380 INFO    ] Script finished. Safe exiting...
[2026-06-12 16:11:26,382.382 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 16:11:26,385.385 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 16:11:26,388.388 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 16:11:28,428.428 INFO    ] ================================================
[2026-06-12 16:11:28,444.444 INFO    ] Launching Daemon at Fri Jun 12 16:11:28 IST 2026
[2026-06-12 16:11:28,455.455 INFO    ] ================================================
[2026-06-12 16:11:28,814.814 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 16:11:28
[2026-06-12 16:11:29,126.126 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 16:11:29,258.258 INFO    ] Initializing speech engine...
[2026-06-12 16:11:29,270.270 INFO    ] 2026-06-12 16:11:29
[2026-06-12 16:11:29,477.477 INFO    ] 2026-06-12 16:11:29
[2026-06-12 16:11:29,507.507 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 16:11:29,649.649 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 16:11:29,696.696 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 16:11:29,839.839 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 16:11:29,900.900 INFO    ] time= 12/06/2026 16:11:29
[2026-06-12 16:11:29,924.924 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 16:11:29,931.931 INFO    ] Checking for existing commands in stream...
[2026-06-12 16:11:29,996.996 INFO    ] No existing commands found in stream
[2026-06-12 16:11:35,007.007 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 16:11:35,010.010 INFO    ] Waiting 1.94 seconds before fallback handling...
[2026-06-12 16:11:37,360.360 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 16:11:37,361.361 INFO    ] Checking for system updates...
[2026-06-12 16:11:37,382.382 INFO    ] 200
[2026-06-12 16:11:37,383.383 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:11:37,415.415 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 16:11:37,416.416 INFO    ] No update needed
[2026-06-12 16:11:37,418.418 INFO    ] Checking for camera pi updates...
[2026-06-12 16:11:37,438.438 INFO    ] 200
[2026-06-12 16:11:37,439.439 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:11:37,463.463 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 16:11:37,516.516 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 16:11:37,517.517 INFO    ] No camera update needed
[2026-06-12 16:11:37,518.518 INFO    ] Script finished. Safe exiting...
[2026-06-12 16:11:37,520.520 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 16:11:37,523.523 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 16:11:37,525.525 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 16:11:39,565.565 INFO    ] ================================================
[2026-06-12 16:11:39,581.581 INFO    ] Launching Daemon at Fri Jun 12 16:11:39 IST 2026
[2026-06-12 16:11:39,592.592 INFO    ] ================================================
[2026-06-12 16:11:39,921.921 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 16:11:39
[2026-06-12 16:11:40,235.235 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 16:11:40,372.372 INFO    ] Initializing speech engine...
[2026-06-12 16:11:40,385.385 INFO    ] 2026-06-12 16:11:40
[2026-06-12 16:11:40,599.599 INFO    ] 2026-06-12 16:11:40
[2026-06-12 16:11:40,629.629 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 16:11:40,815.815 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 16:11:40,819.819 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 16:11:40,983.983 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 16:11:41,038.038 INFO    ] time= 12/06/2026 16:11:40
[2026-06-12 16:11:41,049.049 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 16:11:41,055.055 INFO    ] Checking for existing commands in stream...
[2026-06-12 16:11:41,123.123 INFO    ] No existing commands found in stream
[2026-06-12 16:11:46,136.136 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 16:11:46,140.140 INFO    ] Waiting 3.97 seconds before fallback handling...
[2026-06-12 16:11:50,530.530 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 16:11:50,532.532 INFO    ] Checking for system updates...
[2026-06-12 16:11:50,552.552 INFO    ] 200
[2026-06-12 16:11:50,554.554 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:11:50,583.583 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 16:11:50,584.584 INFO    ] No update needed
[2026-06-12 16:11:50,585.585 INFO    ] Checking for camera pi updates...
[2026-06-12 16:11:50,605.605 INFO    ] 200
[2026-06-12 16:11:50,606.606 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:11:50,631.631 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 16:11:50,694.694 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 16:11:50,695.695 INFO    ] No camera update needed
[2026-06-12 16:11:50,696.696 INFO    ] Script finished. Safe exiting...
[2026-06-12 16:11:50,698.698 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 16:11:50,701.701 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 16:11:50,703.703 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 16:11:52,742.742 INFO    ] ================================================
[2026-06-12 16:11:52,758.758 INFO    ] Launching Daemon at Fri Jun 12 16:11:52 IST 2026
[2026-06-12 16:11:52,770.770 INFO    ] ================================================
[2026-06-12 16:11:53,138.138 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 16:11:53
[2026-06-12 16:11:53,453.453 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 16:11:53,595.595 INFO    ] Initializing speech engine...
[2026-06-12 16:11:53,604.604 INFO    ] 2026-06-12 16:11:53
[2026-06-12 16:11:53,822.822 INFO    ] 2026-06-12 16:11:53
[2026-06-12 16:11:53,853.853 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 16:11:54,052.052 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 16:11:54,062.062 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 16:11:54,194.194 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 16:11:54,251.251 INFO    ] time= 12/06/2026 16:11:54
[2026-06-12 16:11:54,280.280 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 16:11:54,303.303 INFO    ] Checking for existing commands in stream...
[2026-06-12 16:11:54,378.378 INFO    ] No existing commands found in stream
[2026-06-12 16:11:59,389.389 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 16:11:59,392.392 INFO    ] Waiting 3.13 seconds before fallback handling...
[2026-06-12 16:12:02,927.927 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 16:12:02,929.929 INFO    ] Checking for system updates...
[2026-06-12 16:12:02,949.949 INFO    ] 200
[2026-06-12 16:12:02,951.951 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:12:02,981.981 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 16:12:02,982.982 INFO    ] No update needed
[2026-06-12 16:12:02,983.983 INFO    ] Checking for camera pi updates...
[2026-06-12 16:12:03,002.002 INFO    ] 200
[2026-06-12 16:12:03,004.004 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:12:03,026.026 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 16:12:03,068.068 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 16:12:03,069.069 INFO    ] No camera update needed
[2026-06-12 16:12:03,071.071 INFO    ] Script finished. Safe exiting...
[2026-06-12 16:12:03,072.072 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 16:12:03,075.075 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 16:12:03,078.078 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 16:12:05,117.117 INFO    ] ================================================
[2026-06-12 16:12:05,132.132 INFO    ] Launching Daemon at Fri Jun 12 16:12:05 IST 2026
[2026-06-12 16:12:05,142.142 INFO    ] ================================================
[2026-06-12 16:12:05,510.510 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 16:12:05
[2026-06-12 16:12:05,827.827 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 16:12:05,993.993 INFO    ] Initializing speech engine...
[2026-06-12 16:12:06,005.005 INFO    ] 2026-06-12 16:12:05
[2026-06-12 16:12:06,212.212 INFO    ] 2026-06-12 16:12:06
[2026-06-12 16:12:06,241.241 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 16:12:06,425.425 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 16:12:06,435.435 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 16:12:06,568.568 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 16:12:06,632.632 INFO    ] time= 12/06/2026 16:12:06
[2026-06-12 16:12:06,659.659 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 16:12:06,666.666 INFO    ] Checking for existing commands in stream...
[2026-06-12 16:12:06,733.733 INFO    ] No existing commands found in stream
[2026-06-12 16:12:11,747.747 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 16:12:11,750.750 INFO    ] Waiting 0.61 seconds before fallback handling...
[2026-06-12 16:12:12,781.781 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 16:12:12,783.783 INFO    ] Checking for system updates...
[2026-06-12 16:12:12,805.805 INFO    ] 200
[2026-06-12 16:12:12,806.806 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:12:12,840.840 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 16:12:12,842.842 INFO    ] No update needed
[2026-06-12 16:12:12,843.843 INFO    ] Checking for camera pi updates...
[2026-06-12 16:12:12,864.864 INFO    ] 200
[2026-06-12 16:12:12,866.866 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:12:12,892.892 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 16:12:12,935.935 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 16:12:12,936.936 INFO    ] No camera update needed
[2026-06-12 16:12:12,938.938 INFO    ] Script finished. Safe exiting...
[2026-06-12 16:12:12,939.939 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 16:12:12,942.942 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 16:12:12,945.945 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 16:12:14,985.985 INFO    ] ================================================
[2026-06-12 16:12:15,001.001 INFO    ] Launching Daemon at Fri Jun 12 16:12:14 IST 2026
[2026-06-12 16:12:15,012.012 INFO    ] ================================================
[2026-06-12 16:12:15,332.332 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 16:12:15
[2026-06-12 16:12:15,647.647 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 16:12:15,790.790 INFO    ] Initializing speech engine...
[2026-06-12 16:12:15,795.795 INFO    ] 2026-06-12 16:12:15
[2026-06-12 16:12:16,002.002 INFO    ] 2026-06-12 16:12:15
[2026-06-12 16:12:16,030.030 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 16:12:16,154.154 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 16:12:16,212.212 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 16:12:16,355.355 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 16:12:16,426.426 INFO    ] time= 12/06/2026 16:12:16
[2026-06-12 16:12:16,451.451 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 16:12:16,457.457 INFO    ] Checking for existing commands in stream...
[2026-06-12 16:12:16,525.525 INFO    ] No existing commands found in stream
[2026-06-12 16:12:21,557.557 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 16:12:21,560.560 INFO    ] Waiting 1.15 seconds before fallback handling...
[2026-06-12 16:12:23,087.087 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 16:12:23,089.089 INFO    ] Checking for system updates...
[2026-06-12 16:12:23,109.109 INFO    ] 200
[2026-06-12 16:12:23,110.110 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:12:23,140.140 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 16:12:23,142.142 INFO    ] No update needed
[2026-06-12 16:12:23,143.143 INFO    ] Checking for camera pi updates...
[2026-06-12 16:12:23,163.163 INFO    ] 200
[2026-06-12 16:12:23,165.165 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:12:23,187.187 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 16:12:23,229.229 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 16:12:23,230.230 INFO    ] No camera update needed
[2026-06-12 16:12:23,231.231 INFO    ] Script finished. Safe exiting...
[2026-06-12 16:12:23,233.233 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 16:12:23,235.235 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 16:12:23,238.238 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 16:12:25,276.276 INFO    ] ================================================
[2026-06-12 16:12:25,291.291 INFO    ] Launching Daemon at Fri Jun 12 16:12:25 IST 2026
[2026-06-12 16:12:25,302.302 INFO    ] ================================================
[2026-06-12 16:12:25,660.660 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 16:12:25
[2026-06-12 16:12:26,002.002 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 16:12:26,149.149 INFO    ] Initializing speech engine...
[2026-06-12 16:12:26,159.159 INFO    ] 2026-06-12 16:12:26
[2026-06-12 16:12:26,371.371 INFO    ] 2026-06-12 16:12:26
[2026-06-12 16:12:26,400.400 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 16:12:26,586.586 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 16:12:26,590.590 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 16:12:26,744.744 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 16:12:26,798.798 INFO    ] time= 12/06/2026 16:12:26
[2026-06-12 16:12:26,821.821 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 16:12:26,827.827 INFO    ] Checking for existing commands in stream...
[2026-06-12 16:12:26,895.895 INFO    ] No existing commands found in stream
[2026-06-12 16:12:31,910.910 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 16:12:31,914.914 INFO    ] Waiting 0.35 seconds before fallback handling...
[2026-06-12 16:12:32,593.593 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 16:12:32,595.595 INFO    ] Checking for system updates...
[2026-06-12 16:12:32,626.626 INFO    ] 200
[2026-06-12 16:12:32,628.628 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:12:32,664.664 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 16:12:32,666.666 INFO    ] No update needed
[2026-06-12 16:12:32,668.668 INFO    ] Checking for camera pi updates...
[2026-06-12 16:12:32,691.691 INFO    ] 200
[2026-06-12 16:12:32,692.692 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:12:32,715.715 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 16:12:32,756.756 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 16:12:32,758.758 INFO    ] No camera update needed
[2026-06-12 16:12:32,760.760 INFO    ] Script finished. Safe exiting...
[2026-06-12 16:12:32,761.761 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 16:12:32,764.764 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 16:12:32,767.767 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 16:12:34,805.805 INFO    ] ================================================
[2026-06-12 16:12:34,820.820 INFO    ] Launching Daemon at Fri Jun 12 16:12:34 IST 2026
[2026-06-12 16:12:34,831.831 INFO    ] ================================================
[2026-06-12 16:12:35,192.192 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 16:12:35
[2026-06-12 16:12:35,534.534 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 16:12:35,687.687 INFO    ] Initializing speech engine...
[2026-06-12 16:12:35,691.691 INFO    ] 2026-06-12 16:12:35
[2026-06-12 16:12:35,901.901 INFO    ] 2026-06-12 16:12:35
[2026-06-12 16:12:35,929.929 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 16:12:36,113.113 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 16:12:36,117.117 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 16:12:36,304.304 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 16:12:36,339.339 INFO    ] time= 12/06/2026 16:12:36
[2026-06-12 16:12:36,345.345 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 16:12:36,351.351 INFO    ] Checking for existing commands in stream...
[2026-06-12 16:12:36,418.418 INFO    ] No existing commands found in stream
[2026-06-12 16:12:41,433.433 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 16:12:41,436.436 INFO    ] Waiting 2.87 seconds before fallback handling...
[2026-06-12 16:12:44,736.736 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 16:12:44,737.737 INFO    ] Checking for system updates...
[2026-06-12 16:12:44,758.758 INFO    ] 200
[2026-06-12 16:12:44,760.760 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:12:44,790.790 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 16:12:44,792.792 INFO    ] No update needed
[2026-06-12 16:12:44,793.793 INFO    ] Checking for camera pi updates...
[2026-06-12 16:12:44,813.813 INFO    ] 200
[2026-06-12 16:12:44,816.816 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:12:44,842.842 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 16:12:44,884.884 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 16:12:44,886.886 INFO    ] No camera update needed
[2026-06-12 16:12:44,887.887 INFO    ] Script finished. Safe exiting...
[2026-06-12 16:12:44,888.888 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 16:12:44,891.891 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 16:12:44,894.894 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 16:12:46,932.932 INFO    ] ================================================
[2026-06-12 16:12:46,947.947 INFO    ] Launching Daemon at Fri Jun 12 16:12:46 IST 2026
[2026-06-12 16:12:46,958.958 INFO    ] ================================================
[2026-06-12 16:12:47,354.354 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 16:12:47
[2026-06-12 16:12:47,668.668 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 16:12:47,799.799 INFO    ] Initializing speech engine...
[2026-06-12 16:12:47,807.807 INFO    ] 2026-06-12 16:12:47
[2026-06-12 16:12:48,020.020 INFO    ] 2026-06-12 16:12:47
[2026-06-12 16:12:48,050.050 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 16:12:48,233.233 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 16:12:48,237.237 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 16:12:48,366.366 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 16:12:48,432.432 INFO    ] time= 12/06/2026 16:12:48
[2026-06-12 16:12:48,464.464 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 16:12:48,470.470 INFO    ] Checking for existing commands in stream...
[2026-06-12 16:12:48,538.538 INFO    ] No existing commands found in stream
[2026-06-12 16:12:53,567.567 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 16:12:53,570.570 INFO    ] Waiting 0.56 seconds before fallback handling...
[2026-06-12 16:12:54,500.500 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 16:12:54,502.502 INFO    ] Checking for system updates...
[2026-06-12 16:12:54,522.522 INFO    ] 200
[2026-06-12 16:12:54,524.524 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:12:54,558.558 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 16:12:54,559.559 INFO    ] No update needed
[2026-06-12 16:12:54,561.561 INFO    ] Checking for camera pi updates...
[2026-06-12 16:12:54,580.580 INFO    ] 200
[2026-06-12 16:12:54,582.582 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:12:54,608.608 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 16:12:54,653.653 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 16:12:54,655.655 INFO    ] No camera update needed
[2026-06-12 16:12:54,656.656 INFO    ] Script finished. Safe exiting...
[2026-06-12 16:12:54,657.657 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 16:12:54,660.660 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 16:12:54,663.663 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 16:12:56,700.700 INFO    ] ================================================
[2026-06-12 16:12:56,716.716 INFO    ] Launching Daemon at Fri Jun 12 16:12:56 IST 2026
[2026-06-12 16:12:56,727.727 INFO    ] ================================================
[2026-06-12 16:12:57,087.087 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 16:12:57
[2026-06-12 16:12:57,428.428 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 16:12:57,580.580 INFO    ] Initializing speech engine...
[2026-06-12 16:12:57,586.586 INFO    ] 2026-06-12 16:12:57
[2026-06-12 16:12:57,795.795 INFO    ] 2026-06-12 16:12:57
[2026-06-12 16:12:57,824.824 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 16:12:58,012.012 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 16:12:58,023.023 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 16:12:58,167.167 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 16:12:58,228.228 INFO    ] time= 12/06/2026 16:12:58
[2026-06-12 16:12:58,244.244 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 16:12:58,250.250 INFO    ] Checking for existing commands in stream...
[2026-06-12 16:12:58,319.319 INFO    ] No existing commands found in stream
[2026-06-12 16:13:03,343.343 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 16:13:03,344.344 INFO    ] Waiting 2.03 seconds before fallback handling...
[2026-06-12 16:13:05,731.731 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 16:13:05,733.733 INFO    ] Checking for system updates...
[2026-06-12 16:13:05,754.754 INFO    ] 200
[2026-06-12 16:13:05,756.756 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:13:05,788.788 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 16:13:05,790.790 INFO    ] No update needed
[2026-06-12 16:13:05,791.791 INFO    ] Checking for camera pi updates...
[2026-06-12 16:13:05,811.811 INFO    ] 200
[2026-06-12 16:13:05,812.812 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:13:05,840.840 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 16:13:05,884.884 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 16:13:05,886.886 INFO    ] No camera update needed
[2026-06-12 16:13:05,887.887 INFO    ] Script finished. Safe exiting...
[2026-06-12 16:13:05,888.888 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 16:13:05,892.892 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 16:13:05,895.895 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 16:13:07,933.933 INFO    ] ================================================
[2026-06-12 16:13:07,949.949 INFO    ] Launching Daemon at Fri Jun 12 16:13:07 IST 2026
[2026-06-12 16:13:07,960.960 INFO    ] ================================================
[2026-06-12 16:13:08,330.330 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 16:13:08
[2026-06-12 16:13:08,664.664 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 16:13:08,810.810 INFO    ] Initializing speech engine...
[2026-06-12 16:13:08,820.820 INFO    ] 2026-06-12 16:13:08
[2026-06-12 16:13:09,030.030 INFO    ] 2026-06-12 16:13:09
[2026-06-12 16:13:09,060.060 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 16:13:09,247.247 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 16:13:09,257.257 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 16:13:09,408.408 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 16:13:09,457.457 INFO    ] time= 12/06/2026 16:13:09
[2026-06-12 16:13:09,480.480 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 16:13:09,487.487 INFO    ] Checking for existing commands in stream...
[2026-06-12 16:13:09,554.554 INFO    ] No existing commands found in stream
[2026-06-12 16:13:14,564.564 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 16:13:14,567.567 INFO    ] Waiting 0.84 seconds before fallback handling...
[2026-06-12 16:13:15,751.751 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 16:13:15,753.753 INFO    ] Checking for system updates...
[2026-06-12 16:13:15,773.773 INFO    ] 200
[2026-06-12 16:13:15,775.775 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:13:15,807.807 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 16:13:15,809.809 INFO    ] No update needed
[2026-06-12 16:13:15,810.810 INFO    ] Checking for camera pi updates...
[2026-06-12 16:13:15,831.831 INFO    ] 200
[2026-06-12 16:13:15,832.832 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:13:15,855.855 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 16:13:15,998.998 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 16:13:16,000.000 INFO    ] No camera update needed
[2026-06-12 16:13:16,001.001 INFO    ] Script finished. Safe exiting...
[2026-06-12 16:13:16,002.002 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 16:13:16,005.005 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 16:13:16,008.008 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 16:13:18,046.046 INFO    ] ================================================
[2026-06-12 16:13:18,061.061 INFO    ] Launching Daemon at Fri Jun 12 16:13:18 IST 2026
[2026-06-12 16:13:18,072.072 INFO    ] ================================================
[2026-06-12 16:13:18,413.413 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 16:13:18
[2026-06-12 16:13:18,752.752 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 16:13:18,895.895 INFO    ] Initializing speech engine...
[2026-06-12 16:13:18,906.906 INFO    ] 2026-06-12 16:13:18
[2026-06-12 16:13:19,113.113 INFO    ] 2026-06-12 16:13:19
[2026-06-12 16:13:19,142.142 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 16:13:19,456.456 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 16:13:19,514.514 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 16:13:19,667.667 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 16:13:19,670.670 INFO    ] time= 12/06/2026 16:13:19
[2026-06-12 16:13:19,673.673 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 16:13:19,676.676 INFO    ] Checking for existing commands in stream...
[2026-06-12 16:13:19,744.744 INFO    ] No existing commands found in stream
[2026-06-12 16:13:24,754.754 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 16:13:24,757.757 INFO    ] Waiting 1.07 seconds before fallback handling...
[2026-06-12 16:13:26,215.215 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 16:13:26,216.216 INFO    ] Checking for system updates...
[2026-06-12 16:13:26,239.239 INFO    ] 200
[2026-06-12 16:13:26,240.240 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:13:26,277.277 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 16:13:26,278.278 INFO    ] No update needed
[2026-06-12 16:13:26,280.280 INFO    ] Checking for camera pi updates...
[2026-06-12 16:13:26,302.302 INFO    ] 200
[2026-06-12 16:13:26,303.303 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:13:26,326.326 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 16:13:26,368.368 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 16:13:26,370.370 INFO    ] No camera update needed
[2026-06-12 16:13:26,371.371 INFO    ] Script finished. Safe exiting...
[2026-06-12 16:13:26,373.373 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 16:13:26,376.376 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 16:13:26,379.379 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 16:13:28,418.418 INFO    ] ================================================
[2026-06-12 16:13:28,434.434 INFO    ] Launching Daemon at Fri Jun 12 16:13:28 IST 2026
[2026-06-12 16:13:28,444.444 INFO    ] ================================================
[2026-06-12 16:13:28,827.827 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 16:13:28
[2026-06-12 16:13:29,163.163 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 16:13:29,313.313 INFO    ] Initializing speech engine...
[2026-06-12 16:13:29,318.318 INFO    ] 2026-06-12 16:13:29
[2026-06-12 16:13:29,528.528 INFO    ] 2026-06-12 16:13:29
[2026-06-12 16:13:29,557.557 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 16:13:29,739.739 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 16:13:29,743.743 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 16:13:29,899.899 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 16:13:29,947.947 INFO    ] time= 12/06/2026 16:13:29
[2026-06-12 16:13:29,969.969 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 16:13:29,975.975 INFO    ] Checking for existing commands in stream...
[2026-06-12 16:13:30,041.041 INFO    ] No existing commands found in stream
[2026-06-12 16:13:35,055.055 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 16:13:35,059.059 INFO    ] Waiting 2.42 seconds before fallback handling...
[2026-06-12 16:13:40,537.537 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 16:13:40,540.540 INFO    ] Checking for system updates...
[2026-06-12 16:13:40,576.576 INFO    ] 200
[2026-06-12 16:13:40,579.579 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:13:40,639.639 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 16:13:40,642.642 INFO    ] No update needed
[2026-06-12 16:13:40,644.644 INFO    ] Checking for camera pi updates...
[2026-06-12 16:13:40,675.675 INFO    ] 200
[2026-06-12 16:13:40,676.676 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:13:40,699.699 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 16:13:40,742.742 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 16:13:40,748.748 INFO    ] No camera update needed
[2026-06-12 16:13:40,750.750 INFO    ] Script finished. Safe exiting...
[2026-06-12 16:13:40,751.751 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 16:13:40,754.754 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 16:13:40,757.757 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 16:13:42,795.795 INFO    ] ================================================
[2026-06-12 16:13:42,810.810 INFO    ] Launching Daemon at Fri Jun 12 16:13:42 IST 2026
[2026-06-12 16:13:42,821.821 INFO    ] ================================================
[2026-06-12 16:13:43,196.196 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 16:13:43
[2026-06-12 16:13:43,513.513 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 16:13:43,647.647 INFO    ] Initializing speech engine...
[2026-06-12 16:13:43,652.652 INFO    ] 2026-06-12 16:13:43
[2026-06-12 16:13:43,880.880 INFO    ] 2026-06-12 16:13:43
[2026-06-12 16:13:43,925.925 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 16:13:44,097.097 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 16:13:44,107.107 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 16:13:44,234.234 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 16:13:44,296.296 INFO    ] time= 12/06/2026 16:13:44
[2026-06-12 16:13:44,329.329 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 16:13:44,335.335 INFO    ] Checking for existing commands in stream...
[2026-06-12 16:13:44,403.403 INFO    ] No existing commands found in stream
[2026-06-12 16:13:49,412.412 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 16:13:49,415.415 INFO    ] Waiting 0.81 seconds before fallback handling...
[2026-06-12 16:13:50,632.632 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 16:13:50,633.633 INFO    ] Checking for system updates...
[2026-06-12 16:13:50,654.654 INFO    ] 200
[2026-06-12 16:13:50,655.655 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:13:50,686.686 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 16:13:50,688.688 INFO    ] No update needed
[2026-06-12 16:13:50,689.689 INFO    ] Checking for camera pi updates...
[2026-06-12 16:13:50,709.709 INFO    ] 200
[2026-06-12 16:13:50,711.711 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:13:50,735.735 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 16:13:50,779.779 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 16:13:50,781.781 INFO    ] No camera update needed
[2026-06-12 16:13:50,787.787 INFO    ] Script finished. Safe exiting...
[2026-06-12 16:13:50,788.788 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 16:13:50,791.791 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 16:13:50,794.794 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 16:13:52,831.831 INFO    ] ================================================
[2026-06-12 16:13:52,847.847 INFO    ] Launching Daemon at Fri Jun 12 16:13:52 IST 2026
[2026-06-12 16:13:52,858.858 INFO    ] ================================================
[2026-06-12 16:13:53,212.212 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 16:13:53
[2026-06-12 16:13:53,527.527 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 16:13:53,666.666 INFO    ] Initializing speech engine...
[2026-06-12 16:13:53,675.675 INFO    ] 2026-06-12 16:13:53
[2026-06-12 16:13:53,898.898 INFO    ] 2026-06-12 16:13:53
[2026-06-12 16:13:53,928.928 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 16:13:54,125.125 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 16:13:54,129.129 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 16:13:54,275.275 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 16:13:54,345.345 INFO    ] time= 12/06/2026 16:13:54
[2026-06-12 16:13:54,371.371 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 16:13:54,378.378 INFO    ] Checking for existing commands in stream...
[2026-06-12 16:13:54,448.448 INFO    ] No existing commands found in stream
[2026-06-12 16:13:59,459.459 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 16:13:59,462.462 INFO    ] Waiting 0.63 seconds before fallback handling...
[2026-06-12 16:14:00,456.456 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 16:14:00,458.458 INFO    ] Checking for system updates...
[2026-06-12 16:14:00,478.478 INFO    ] 200
[2026-06-12 16:14:00,480.480 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:14:00,512.512 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 16:14:00,513.513 INFO    ] No update needed
[2026-06-12 16:14:00,515.515 INFO    ] Checking for camera pi updates...
[2026-06-12 16:14:00,535.535 INFO    ] 200
[2026-06-12 16:14:00,537.537 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:14:00,562.562 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 16:14:00,613.613 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 16:14:00,614.614 INFO    ] No camera update needed
[2026-06-12 16:14:00,616.616 INFO    ] Script finished. Safe exiting...
[2026-06-12 16:14:00,617.617 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 16:14:00,620.620 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 16:14:00,623.623 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 16:14:02,648.648 INFO    ] ================================================
[2026-06-12 16:14:02,656.656 INFO    ] Launching Daemon at Fri Jun 12 16:14:02 IST 2026
[2026-06-12 16:14:02,662.662 INFO    ] ================================================
[2026-06-12 16:14:03,017.017 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 16:14:03
[2026-06-12 16:14:03,335.335 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 16:14:03,479.479 INFO    ] Initializing speech engine...
[2026-06-12 16:14:03,484.484 INFO    ] 2026-06-12 16:14:03
[2026-06-12 16:14:03,688.688 INFO    ] 2026-06-12 16:14:03
[2026-06-12 16:14:03,717.717 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 16:14:03,839.839 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 16:14:03,902.902 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 16:14:04,040.040 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 16:14:04,108.108 INFO    ] time= 12/06/2026 16:14:04
[2026-06-12 16:14:04,134.134 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 16:14:04,136.136 INFO    ] Checking for existing commands in stream...
[2026-06-12 16:14:04,206.206 INFO    ] No existing commands found in stream
[2026-06-12 16:14:09,216.216 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 16:14:09,219.219 INFO    ] Waiting 2.93 seconds before fallback handling...
[2026-06-12 16:14:12,558.558 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 16:14:12,559.559 INFO    ] Checking for system updates...
[2026-06-12 16:14:12,580.580 INFO    ] 200
[2026-06-12 16:14:12,581.581 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:14:12,612.612 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 16:14:12,613.613 INFO    ] No update needed
[2026-06-12 16:14:12,614.614 INFO    ] Checking for camera pi updates...
[2026-06-12 16:14:12,634.634 INFO    ] 200
[2026-06-12 16:14:12,636.636 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:14:12,660.660 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 16:14:12,716.716 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 16:14:12,718.718 INFO    ] No camera update needed
[2026-06-12 16:14:12,719.719 INFO    ] Script finished. Safe exiting...
[2026-06-12 16:14:12,720.720 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 16:14:12,723.723 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 16:14:12,726.726 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 16:14:14,763.763 INFO    ] ================================================
[2026-06-12 16:14:14,779.779 INFO    ] Launching Daemon at Fri Jun 12 16:14:14 IST 2026
[2026-06-12 16:14:14,790.790 INFO    ] ================================================
[2026-06-12 16:14:15,147.147 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 16:14:15
[2026-06-12 16:14:15,482.482 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 16:14:15,622.622 INFO    ] Initializing speech engine...
[2026-06-12 16:14:15,634.634 INFO    ] 2026-06-12 16:14:15
[2026-06-12 16:14:15,845.845 INFO    ] 2026-06-12 16:14:15
[2026-06-12 16:14:15,875.875 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 16:14:16,060.060 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 16:14:16,070.070 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 16:14:16,221.221 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 16:14:16,270.270 INFO    ] time= 12/06/2026 16:14:16
[2026-06-12 16:14:16,293.293 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 16:14:16,299.299 INFO    ] Checking for existing commands in stream...
[2026-06-12 16:14:16,366.366 INFO    ] No existing commands found in stream
[2026-06-12 16:14:21,380.380 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 16:14:21,384.384 INFO    ] Waiting 1.01 seconds before fallback handling...
[2026-06-12 16:14:22,814.814 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 16:14:22,816.816 INFO    ] Checking for system updates...
[2026-06-12 16:14:22,836.836 INFO    ] 200
[2026-06-12 16:14:22,838.838 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:14:22,870.870 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 16:14:22,871.871 INFO    ] No update needed
[2026-06-12 16:14:22,872.872 INFO    ] Checking for camera pi updates...
[2026-06-12 16:14:22,893.893 INFO    ] 200
[2026-06-12 16:14:22,894.894 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:14:22,917.917 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 16:14:22,967.967 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 16:14:22,968.968 INFO    ] No camera update needed
[2026-06-12 16:14:22,970.970 INFO    ] Script finished. Safe exiting...
[2026-06-12 16:14:22,971.971 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 16:14:22,974.974 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 16:14:22,977.977 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 16:14:25,015.015 INFO    ] ================================================
[2026-06-12 16:14:25,030.030 INFO    ] Launching Daemon at Fri Jun 12 16:14:25 IST 2026
[2026-06-12 16:14:25,041.041 INFO    ] ================================================
[2026-06-12 16:14:25,395.395 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 16:14:25
[2026-06-12 16:14:25,731.731 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 16:14:25,883.883 INFO    ] Initializing speech engine...
[2026-06-12 16:14:25,888.888 INFO    ] 2026-06-12 16:14:25
[2026-06-12 16:14:26,098.098 INFO    ] 2026-06-12 16:14:26
[2026-06-12 16:14:26,127.127 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 16:14:26,311.311 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 16:14:26,321.321 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 16:14:26,467.467 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 16:14:26,520.520 INFO    ] time= 12/06/2026 16:14:26
[2026-06-12 16:14:26,543.543 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 16:14:26,549.549 INFO    ] Checking for existing commands in stream...
[2026-06-12 16:14:26,640.640 INFO    ] No existing commands found in stream
[2026-06-12 16:14:31,652.652 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 16:14:31,654.654 INFO    ] Waiting 2.27 seconds before fallback handling...
[2026-06-12 16:14:34,333.333 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 16:14:34,334.334 INFO    ] Checking for system updates...
[2026-06-12 16:14:34,355.355 INFO    ] 200
[2026-06-12 16:14:34,356.356 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:14:34,388.388 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 16:14:34,390.390 INFO    ] No update needed
[2026-06-12 16:14:34,391.391 INFO    ] Checking for camera pi updates...
[2026-06-12 16:14:34,411.411 INFO    ] 200
[2026-06-12 16:14:34,413.413 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:14:34,435.435 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 16:14:34,487.487 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 16:14:34,488.488 INFO    ] No camera update needed
[2026-06-12 16:14:34,489.489 INFO    ] Script finished. Safe exiting...
[2026-06-12 16:14:34,491.491 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 16:14:34,494.494 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 16:14:34,496.496 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 16:14:36,533.533 INFO    ] ================================================
[2026-06-12 16:14:36,548.548 INFO    ] Launching Daemon at Fri Jun 12 16:14:36 IST 2026
[2026-06-12 16:14:36,559.559 INFO    ] ================================================
[2026-06-12 16:14:36,935.935 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 16:14:36
[2026-06-12 16:14:37,272.272 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 16:14:37,409.409 INFO    ] Initializing speech engine...
[2026-06-12 16:14:37,419.419 INFO    ] 2026-06-12 16:14:37
[2026-06-12 16:14:37,623.623 INFO    ] 2026-06-12 16:14:37
[2026-06-12 16:14:37,651.651 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 16:14:37,833.833 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 16:14:37,842.842 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 16:14:37,971.971 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 16:14:38,038.038 INFO    ] time= 12/06/2026 16:14:37
[2026-06-12 16:14:38,062.062 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 16:14:38,068.068 INFO    ] Checking for existing commands in stream...
[2026-06-12 16:14:38,158.158 INFO    ] No existing commands found in stream
[2026-06-12 16:14:43,182.182 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 16:14:43,185.185 INFO    ] Waiting 0.02 seconds before fallback handling...
[2026-06-12 16:14:43,570.570 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 16:14:43,571.571 INFO    ] Checking for system updates...
[2026-06-12 16:14:43,592.592 INFO    ] 200
[2026-06-12 16:14:43,593.593 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:14:43,625.625 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 16:14:43,627.627 INFO    ] No update needed
[2026-06-12 16:14:43,628.628 INFO    ] Checking for camera pi updates...
[2026-06-12 16:14:43,647.647 INFO    ] 200
[2026-06-12 16:14:43,648.648 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:14:43,672.672 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 16:14:43,715.715 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 16:14:43,716.716 INFO    ] No camera update needed
[2026-06-12 16:14:43,717.717 INFO    ] Script finished. Safe exiting...
[2026-06-12 16:14:43,719.719 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 16:14:43,722.722 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 16:14:43,725.725 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 16:14:45,762.762 INFO    ] ================================================
[2026-06-12 16:14:45,778.778 INFO    ] Launching Daemon at Fri Jun 12 16:14:45 IST 2026
[2026-06-12 16:14:45,789.789 INFO    ] ================================================
[2026-06-12 16:14:46,154.154 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 16:14:46
[2026-06-12 16:14:46,491.491 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 16:14:46,629.629 INFO    ] Initializing speech engine...
[2026-06-12 16:14:46,637.637 INFO    ] 2026-06-12 16:14:46
[2026-06-12 16:14:46,855.855 INFO    ] 2026-06-12 16:14:46
[2026-06-12 16:14:46,888.888 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 16:14:47,074.074 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 16:14:47,084.084 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 16:14:47,211.211 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 16:14:47,273.273 INFO    ] time= 12/06/2026 16:14:47
[2026-06-12 16:14:47,306.306 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 16:14:47,311.311 INFO    ] Checking for existing commands in stream...
[2026-06-12 16:14:47,380.380 INFO    ] No existing commands found in stream
[2026-06-12 16:14:52,389.389 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 16:14:52,393.393 INFO    ] Waiting 3.54 seconds before fallback handling...
[2026-06-12 16:14:56,284.284 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 16:14:56,286.286 INFO    ] Checking for system updates...
[2026-06-12 16:14:56,308.308 INFO    ] 200
[2026-06-12 16:14:56,310.310 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:14:56,342.342 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 16:14:56,344.344 INFO    ] No update needed
[2026-06-12 16:14:56,345.345 INFO    ] Checking for camera pi updates...
[2026-06-12 16:14:56,364.364 INFO    ] 200
[2026-06-12 16:14:56,366.366 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:14:56,391.391 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 16:14:56,433.433 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 16:14:56,435.435 INFO    ] No camera update needed
[2026-06-12 16:14:56,436.436 INFO    ] Script finished. Safe exiting...
[2026-06-12 16:14:56,437.437 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 16:14:56,441.441 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 16:14:56,444.444 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 16:14:58,482.482 INFO    ] ================================================
[2026-06-12 16:14:58,497.497 INFO    ] Launching Daemon at Fri Jun 12 16:14:58 IST 2026
[2026-06-12 16:14:58,507.507 INFO    ] ================================================
[2026-06-12 16:14:58,854.854 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 16:14:58
[2026-06-12 16:14:59,166.166 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 16:14:59,304.304 INFO    ] Initializing speech engine...
[2026-06-12 16:14:59,313.313 INFO    ] 2026-06-12 16:14:59
[2026-06-12 16:14:59,518.518 INFO    ] 2026-06-12 16:14:59
[2026-06-12 16:14:59,547.547 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 16:14:59,734.734 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 16:14:59,743.743 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 16:14:59,870.870 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 16:14:59,932.932 INFO    ] time= 12/06/2026 16:14:59
[2026-06-12 16:14:59,957.957 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 16:14:59,968.968 INFO    ] Checking for existing commands in stream...
[2026-06-12 16:15:00,040.040 INFO    ] No existing commands found in stream
[2026-06-12 16:15:05,049.049 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 16:15:05,052.052 INFO    ] Waiting 0.13 seconds before fallback handling...
[2026-06-12 16:15:05,523.523 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 16:15:05,524.524 INFO    ] Checking for system updates...
[2026-06-12 16:15:05,547.547 INFO    ] 200
[2026-06-12 16:15:05,548.548 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:15:05,583.583 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 16:15:05,585.585 INFO    ] No update needed
[2026-06-12 16:15:05,586.586 INFO    ] Checking for camera pi updates...
[2026-06-12 16:15:05,612.612 INFO    ] 200
[2026-06-12 16:15:05,614.614 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:15:05,643.643 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 16:15:05,683.683 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 16:15:05,685.685 INFO    ] No camera update needed
[2026-06-12 16:15:05,686.686 INFO    ] Script finished. Safe exiting...
[2026-06-12 16:15:05,688.688 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 16:15:05,692.692 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 16:15:05,695.695 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 16:15:07,719.719 INFO    ] ================================================
[2026-06-12 16:15:07,728.728 INFO    ] Launching Daemon at Fri Jun 12 16:15:07 IST 2026
[2026-06-12 16:15:07,735.735 INFO    ] ================================================
[2026-06-12 16:15:08,049.049 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 16:15:08
[2026-06-12 16:15:08,381.381 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 16:15:08,520.520 INFO    ] Initializing speech engine...
[2026-06-12 16:15:08,533.533 INFO    ] 2026-06-12 16:15:08
[2026-06-12 16:15:08,751.751 INFO    ] 2026-06-12 16:15:08
[2026-06-12 16:15:08,782.782 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 16:15:08,972.972 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 16:15:08,981.981 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 16:15:09,111.111 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 16:15:09,173.173 INFO    ] time= 12/06/2026 16:15:09
[2026-06-12 16:15:09,211.211 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 16:15:09,216.216 INFO    ] Checking for existing commands in stream...
[2026-06-12 16:15:09,287.287 INFO    ] No existing commands found in stream
[2026-06-12 16:15:14,301.301 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 16:15:14,304.304 INFO    ] Waiting 0.19 seconds before fallback handling...
[2026-06-12 16:15:15,214.214 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 16:15:15,215.215 INFO    ] Checking for system updates...
[2026-06-12 16:15:15,236.236 INFO    ] 200
[2026-06-12 16:15:15,237.237 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:15:15,269.269 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 16:15:15,271.271 INFO    ] No update needed
[2026-06-12 16:15:15,272.272 INFO    ] Checking for camera pi updates...
[2026-06-12 16:15:15,295.295 INFO    ] 200
[2026-06-12 16:15:15,297.297 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:15:15,324.324 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 16:15:15,367.367 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 16:15:15,368.368 INFO    ] No camera update needed
[2026-06-12 16:15:15,370.370 INFO    ] Script finished. Safe exiting...
[2026-06-12 16:15:15,371.371 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 16:15:15,375.375 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 16:15:15,378.378 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 16:15:17,418.418 INFO    ] ================================================
[2026-06-12 16:15:17,434.434 INFO    ] Launching Daemon at Fri Jun 12 16:15:17 IST 2026
[2026-06-12 16:15:17,444.444 INFO    ] ================================================
[2026-06-12 16:15:17,780.780 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 16:15:17
[2026-06-12 16:15:18,097.097 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 16:15:18,241.241 INFO    ] Initializing speech engine...
[2026-06-12 16:15:18,247.247 INFO    ] 2026-06-12 16:15:18
[2026-06-12 16:15:18,451.451 INFO    ] 2026-06-12 16:15:18
[2026-06-12 16:15:18,480.480 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 16:15:18,664.664 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 16:15:18,674.674 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 16:15:18,801.801 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 16:15:18,865.865 INFO    ] time= 12/06/2026 16:15:18
[2026-06-12 16:15:18,893.893 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 16:15:18,898.898 INFO    ] Checking for existing commands in stream...
[2026-06-12 16:15:18,989.989 INFO    ] No existing commands found in stream
[2026-06-12 16:15:23,998.998 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 16:15:24,001.001 INFO    ] Waiting 3.63 seconds before fallback handling...
[2026-06-12 16:15:28,035.035 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 16:15:28,037.037 INFO    ] Checking for system updates...
[2026-06-12 16:15:28,059.059 INFO    ] 200
[2026-06-12 16:15:28,060.060 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:15:28,092.092 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 16:15:28,094.094 INFO    ] No update needed
[2026-06-12 16:15:28,095.095 INFO    ] Checking for camera pi updates...
[2026-06-12 16:15:28,114.114 INFO    ] 200
[2026-06-12 16:15:28,115.115 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:15:28,138.138 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 16:15:28,283.283 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 16:15:28,285.285 INFO    ] No camera update needed
[2026-06-12 16:15:28,286.286 INFO    ] Script finished. Safe exiting...
[2026-06-12 16:15:28,287.287 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 16:15:28,290.290 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 16:15:28,293.293 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 16:15:30,334.334 INFO    ] ================================================
[2026-06-12 16:15:30,350.350 INFO    ] Launching Daemon at Fri Jun 12 16:15:30 IST 2026
[2026-06-12 16:15:30,361.361 INFO    ] ================================================
[2026-06-12 16:15:30,699.699 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 16:15:30
[2026-06-12 16:15:31,015.015 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 16:15:31,157.157 INFO    ] Initializing speech engine...
[2026-06-12 16:15:31,162.162 INFO    ] 2026-06-12 16:15:31
[2026-06-12 16:15:31,366.366 INFO    ] 2026-06-12 16:15:31
[2026-06-12 16:15:31,396.396 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 16:15:31,580.580 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 16:15:31,590.590 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 16:15:31,741.741 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 16:15:31,805.805 INFO    ] time= 12/06/2026 16:15:31
[2026-06-12 16:15:31,831.831 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 16:15:31,837.837 INFO    ] Checking for existing commands in stream...
[2026-06-12 16:15:31,908.908 INFO    ] No existing commands found in stream
[2026-06-12 16:15:36,927.927 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 16:15:36,930.930 INFO    ] Waiting 1.09 seconds before fallback handling...
[2026-06-12 16:15:38,402.402 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 16:15:38,404.404 INFO    ] Checking for system updates...
[2026-06-12 16:15:38,426.426 INFO    ] 200
[2026-06-12 16:15:38,427.427 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:15:38,459.459 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 16:15:38,461.461 INFO    ] No update needed
[2026-06-12 16:15:38,462.462 INFO    ] Checking for camera pi updates...
[2026-06-12 16:15:38,483.483 INFO    ] 200
[2026-06-12 16:15:38,484.484 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:15:38,508.508 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 16:15:38,553.553 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 16:15:38,554.554 INFO    ] No camera update needed
[2026-06-12 16:15:38,556.556 INFO    ] Script finished. Safe exiting...
[2026-06-12 16:15:38,557.557 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 16:15:38,560.560 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 16:15:38,563.563 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 16:15:40,603.603 INFO    ] ================================================
[2026-06-12 16:15:40,619.619 INFO    ] Launching Daemon at Fri Jun 12 16:15:40 IST 2026
[2026-06-12 16:15:40,630.630 INFO    ] ================================================
[2026-06-12 16:15:40,963.963 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 16:15:40
[2026-06-12 16:15:41,283.283 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 16:15:41,421.421 INFO    ] Initializing speech engine...
[2026-06-12 16:15:41,432.432 INFO    ] 2026-06-12 16:15:41
[2026-06-12 16:15:41,636.636 INFO    ] 2026-06-12 16:15:41
[2026-06-12 16:15:41,664.664 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 16:15:41,851.851 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 16:15:41,862.862 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 16:15:42,005.005 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 16:15:42,058.058 INFO    ] time= 12/06/2026 16:15:42
[2026-06-12 16:15:42,080.080 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 16:15:42,086.086 INFO    ] Checking for existing commands in stream...
[2026-06-12 16:15:42,195.195 INFO    ] No existing commands found in stream
[2026-06-12 16:15:47,209.209 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 16:15:47,212.212 INFO    ] Waiting 1.24 seconds before fallback handling...
[2026-06-12 16:15:48,868.868 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 16:15:48,870.870 INFO    ] Checking for system updates...
[2026-06-12 16:15:48,898.898 INFO    ] 200
[2026-06-12 16:15:48,899.899 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:15:48,941.941 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 16:15:48,943.943 INFO    ] No update needed
[2026-06-12 16:15:48,944.944 INFO    ] Checking for camera pi updates...
[2026-06-12 16:15:48,966.966 INFO    ] 200
[2026-06-12 16:15:48,968.968 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:15:48,990.990 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 16:15:49,038.038 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 16:15:49,040.040 INFO    ] No camera update needed
[2026-06-12 16:15:49,041.041 INFO    ] Script finished. Safe exiting...
[2026-06-12 16:15:49,042.042 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 16:15:49,045.045 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 16:15:49,048.048 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 16:15:51,081.081 INFO    ] ================================================
[2026-06-12 16:15:51,090.090 INFO    ] Launching Daemon at Fri Jun 12 16:15:51 IST 2026
[2026-06-12 16:15:51,097.097 INFO    ] ================================================
[2026-06-12 16:15:51,412.412 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 16:15:51
[2026-06-12 16:15:51,752.752 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 16:15:51,921.921 INFO    ] Initializing speech engine...
[2026-06-12 16:15:51,926.926 INFO    ] 2026-06-12 16:15:51
[2026-06-12 16:15:52,121.121 INFO    ] 2026-06-12 16:15:52
[2026-06-12 16:15:52,172.172 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 16:15:52,418.418 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 16:15:52,423.423 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 16:15:52,601.601 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 16:15:52,664.664 INFO    ] time= 12/06/2026 16:15:52
[2026-06-12 16:15:52,691.691 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 16:15:52,699.699 INFO    ] Checking for existing commands in stream...
[2026-06-12 16:15:52,772.772 INFO    ] No existing commands found in stream
[2026-06-12 16:15:57,783.783 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 16:15:57,786.786 INFO    ] Waiting 1.43 seconds before fallback handling...
[2026-06-12 16:15:59,561.561 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 16:15:59,563.563 INFO    ] Checking for system updates...
[2026-06-12 16:15:59,584.584 INFO    ] 200
[2026-06-12 16:15:59,585.585 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:15:59,615.615 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 16:15:59,617.617 INFO    ] No update needed
[2026-06-12 16:15:59,618.618 INFO    ] Checking for camera pi updates...
[2026-06-12 16:15:59,637.637 INFO    ] 200
[2026-06-12 16:15:59,639.639 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:15:59,662.662 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 16:15:59,726.726 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 16:15:59,728.728 INFO    ] No camera update needed
[2026-06-12 16:15:59,729.729 INFO    ] Script finished. Safe exiting...
[2026-06-12 16:15:59,731.731 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 16:15:59,734.734 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 16:15:59,737.737 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 16:16:01,775.775 INFO    ] ================================================
[2026-06-12 16:16:01,790.790 INFO    ] Launching Daemon at Fri Jun 12 16:16:01 IST 2026
[2026-06-12 16:16:01,801.801 INFO    ] ================================================
[2026-06-12 16:16:02,233.233 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 16:16:02
[2026-06-12 16:16:02,605.605 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 16:16:02,790.790 INFO    ] Initializing speech engine...
[2026-06-12 16:16:02,796.796 INFO    ] 2026-06-12 16:16:02
[2026-06-12 16:16:03,037.037 INFO    ] 2026-06-12 16:16:02
[2026-06-12 16:16:03,070.070 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 16:16:03,209.209 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 16:16:03,257.257 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 16:16:03,395.395 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 16:16:03,466.466 INFO    ] time= 12/06/2026 16:16:03
[2026-06-12 16:16:03,490.490 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 16:16:03,497.497 INFO    ] Checking for existing commands in stream...
[2026-06-12 16:16:03,563.563 INFO    ] No existing commands found in stream
[2026-06-12 16:16:08,588.588 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 16:16:08,591.591 INFO    ] Waiting 1.15 seconds before fallback handling...
[2026-06-12 16:16:10,161.161 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 16:16:10,163.163 INFO    ] Checking for system updates...
[2026-06-12 16:16:10,184.184 INFO    ] 200
[2026-06-12 16:16:10,186.186 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:16:10,221.221 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 16:16:10,222.222 INFO    ] No update needed
[2026-06-12 16:16:10,223.223 INFO    ] Checking for camera pi updates...
[2026-06-12 16:16:10,245.245 INFO    ] 200
[2026-06-12 16:16:10,247.247 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:16:10,270.270 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 16:16:10,308.308 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 16:16:10,310.310 INFO    ] No camera update needed
[2026-06-12 16:16:10,311.311 INFO    ] Script finished. Safe exiting...
[2026-06-12 16:16:10,313.313 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 16:16:10,316.316 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 16:16:10,319.319 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 16:16:12,360.360 INFO    ] ================================================
[2026-06-12 16:16:12,376.376 INFO    ] Launching Daemon at Fri Jun 12 16:16:12 IST 2026
[2026-06-12 16:16:12,387.387 INFO    ] ================================================
[2026-06-12 16:16:12,721.721 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 16:16:12
[2026-06-12 16:16:13,031.031 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 16:16:13,174.174 INFO    ] Initializing speech engine...
[2026-06-12 16:16:13,179.179 INFO    ] 2026-06-12 16:16:13
[2026-06-12 16:16:13,384.384 INFO    ] 2026-06-12 16:16:13
[2026-06-12 16:16:13,413.413 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 16:16:13,601.601 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 16:16:13,609.609 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 16:16:13,756.756 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 16:16:13,810.810 INFO    ] time= 12/06/2026 16:16:13
[2026-06-12 16:16:13,832.832 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 16:16:13,839.839 INFO    ] Checking for existing commands in stream...
[2026-06-12 16:16:13,905.905 INFO    ] No existing commands found in stream
[2026-06-12 16:16:18,916.916 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 16:16:18,919.919 INFO    ] Waiting 1.70 seconds before fallback handling...
[2026-06-12 16:16:21,035.035 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 16:16:21,037.037 INFO    ] Checking for system updates...
[2026-06-12 16:16:21,058.058 INFO    ] 200
[2026-06-12 16:16:21,060.060 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:16:21,091.091 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 16:16:21,093.093 INFO    ] No update needed
[2026-06-12 16:16:21,094.094 INFO    ] Checking for camera pi updates...
[2026-06-12 16:16:21,113.113 INFO    ] 200
[2026-06-12 16:16:21,115.115 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:16:21,139.139 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 16:16:21,192.192 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 16:16:21,194.194 INFO    ] No camera update needed
[2026-06-12 16:16:21,195.195 INFO    ] Script finished. Safe exiting...
[2026-06-12 16:16:21,196.196 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 16:16:21,199.199 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 16:16:21,202.202 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 16:16:23,240.240 INFO    ] ================================================
[2026-06-12 16:16:23,256.256 INFO    ] Launching Daemon at Fri Jun 12 16:16:23 IST 2026
[2026-06-12 16:16:23,266.266 INFO    ] ================================================
[2026-06-12 16:16:23,626.626 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 16:16:23
[2026-06-12 16:16:23,944.944 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 16:16:24,088.088 INFO    ] Initializing speech engine...
[2026-06-12 16:16:24,093.093 INFO    ] 2026-06-12 16:16:24
[2026-06-12 16:16:24,297.297 INFO    ] 2026-06-12 16:16:24
[2026-06-12 16:16:24,325.325 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 16:16:24,509.509 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 16:16:24,517.517 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 16:16:24,646.646 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 16:16:24,713.713 INFO    ] time= 12/06/2026 16:16:24
[2026-06-12 16:16:24,737.737 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 16:16:24,744.744 INFO    ] Checking for existing commands in stream...
[2026-06-12 16:16:24,810.810 INFO    ] No existing commands found in stream
[2026-06-12 16:16:29,819.819 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 16:16:29,822.822 INFO    ] Waiting 2.65 seconds before fallback handling...
[2026-06-12 16:16:32,834.834 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 16:16:32,836.836 INFO    ] Checking for system updates...
[2026-06-12 16:16:32,856.856 INFO    ] 200
[2026-06-12 16:16:32,858.858 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:16:32,888.888 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 16:16:32,889.889 INFO    ] No update needed
[2026-06-12 16:16:32,891.891 INFO    ] Checking for camera pi updates...
[2026-06-12 16:16:32,910.910 INFO    ] 200
[2026-06-12 16:16:32,912.912 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:16:32,937.937 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 16:16:32,980.980 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 16:16:32,981.981 INFO    ] No camera update needed
[2026-06-12 16:16:32,983.983 INFO    ] Script finished. Safe exiting...
[2026-06-12 16:16:32,984.984 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 16:16:32,987.987 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 16:16:32,990.990 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 16:16:35,030.030 INFO    ] ================================================
[2026-06-12 16:16:35,045.045 INFO    ] Launching Daemon at Fri Jun 12 16:16:35 IST 2026
[2026-06-12 16:16:35,056.056 INFO    ] ================================================
[2026-06-12 16:16:35,411.411 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 16:16:35
[2026-06-12 16:16:35,721.721 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 16:16:35,852.852 INFO    ] Initializing speech engine...
[2026-06-12 16:16:35,860.860 INFO    ] 2026-06-12 16:16:35
[2026-06-12 16:16:36,074.074 INFO    ] 2026-06-12 16:16:36
[2026-06-12 16:16:36,103.103 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 16:16:36,289.289 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 16:16:36,298.298 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 16:16:36,445.445 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 16:16:36,493.493 INFO    ] time= 12/06/2026 16:16:36
[2026-06-12 16:16:36,529.529 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 16:16:36,531.531 INFO    ] Checking for existing commands in stream...
[2026-06-12 16:16:36,608.608 INFO    ] No existing commands found in stream
[2026-06-12 16:16:41,632.632 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 16:16:41,635.635 INFO    ] Waiting 2.21 seconds before fallback handling...
[2026-06-12 16:16:44,245.245 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 16:16:44,246.246 INFO    ] Checking for system updates...
[2026-06-12 16:16:44,268.268 INFO    ] 200
[2026-06-12 16:16:44,270.270 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:16:44,305.305 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 16:16:44,306.306 INFO    ] No update needed
[2026-06-12 16:16:44,308.308 INFO    ] Checking for camera pi updates...
[2026-06-12 16:16:44,331.331 INFO    ] 200
[2026-06-12 16:16:44,332.332 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:16:44,358.358 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 16:16:44,404.404 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 16:16:44,405.405 INFO    ] No camera update needed
[2026-06-12 16:16:44,407.407 INFO    ] Script finished. Safe exiting...
[2026-06-12 16:16:44,408.408 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 16:16:44,412.412 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 16:16:44,415.415 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 16:16:46,454.454 INFO    ] ================================================
[2026-06-12 16:16:46,470.470 INFO    ] Launching Daemon at Fri Jun 12 16:16:46 IST 2026
[2026-06-12 16:16:46,482.482 INFO    ] ================================================
[2026-06-12 16:16:46,869.869 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 16:16:46
[2026-06-12 16:16:47,209.209 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 16:16:47,361.361 INFO    ] Initializing speech engine...
[2026-06-12 16:16:47,367.367 INFO    ] 2026-06-12 16:16:47
[2026-06-12 16:16:47,574.574 INFO    ] 2026-06-12 16:16:47
[2026-06-12 16:16:47,603.603 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 16:16:47,786.786 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 16:16:47,796.796 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 16:16:47,924.924 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 16:16:47,991.991 INFO    ] time= 12/06/2026 16:16:47
[2026-06-12 16:16:48,016.016 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 16:16:48,022.022 INFO    ] Checking for existing commands in stream...
[2026-06-12 16:16:48,090.090 INFO    ] Found 1 existing command(s) in stream
[2026-06-12 16:16:48,115.115 INFO    ] Checking historical command: ID=1781261206033-0
[2026-06-12 16:16:48,117.117 INFO    ] process_and_cleanup_command: msg_id=1781261206033-0
[2026-06-12 16:16:48,144.144 INFO    ] is_command_expired: timestamp=2026-06-12T10:46:45.619Z, expiry=30s
[2026-06-12 16:16:48,230.230 INFO    ] Command removed from stream: 1781261206033-0. returning for processing...
[2026-06-12 16:16:48,233.233 INFO    ] ***** get_valid_command
[2026-06-12 16:16:48,238.238 INFO    ] {'timeout': '10', 'source': 'webapp', 'command': 'start-order', 'timestamp': '2026-06-12T10:46:45.619Z', 'data': '{"request_id":"start-order-1781261205619-6twmt1q6w","orderId":"TM09202301260612161602598","is_vending":false}'}
[2026-06-12 16:16:48,243.243 INFO    ] ***** Parsed command data: {'orderId': 'TM09202301260612161602598', 'is_vending': False, 'request_id': 'start-order-1781261205619-6twmt1q6w'}
[2026-06-12 16:16:48,246.246 INFO    ] Handling start order...
[2026-06-12 16:16:48,250.250 INFO    ] handle_start_order_command
[2026-06-12 16:16:48,257.257 INFO    ] _send_start_order_success: request_id=start-order-1781261205619-6twmt1q6w, order_id=TM09202301260612161602598
[2026-06-12 16:16:48,261.261 INFO    ] [_send_start_order_success] Adding message to stream: machine:TM09202301
[2026-06-12 16:16:48,330.330 INFO    ] [_send_start_order_success] Message added to stream with ID: 1781261208344-0
[2026-06-12 16:16:48,335.335 INFO    ] ✅ Start-order command succeeded - order locked, waiting for process-order command
[2026-06-12 16:16:48,340.340 INFO    ] Checking for system updates...
[2026-06-12 16:16:48,375.375 INFO    ] 200
[2026-06-12 16:16:48,377.377 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:16:48,441.441 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 16:16:48,463.463 INFO    ] No update needed
[2026-06-12 16:16:48,468.468 INFO    ] Checking for camera pi updates...
[2026-06-12 16:16:48,506.506 INFO    ] 200
[2026-06-12 16:16:48,509.509 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:16:48,583.583 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 16:16:48,632.632 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 16:16:48,635.635 INFO    ] No camera update needed
[2026-06-12 16:16:48,639.639 INFO    ] Script finished. Safe exiting...
[2026-06-12 16:16:48,642.642 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 16:16:48,649.649 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 16:16:48,656.656 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-06-12 16:16:48,663.663 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 16:16:50,696.696 INFO    ] ================================================
[2026-06-12 16:16:50,711.711 INFO    ] Launching Daemon at Fri Jun 12 16:16:50 IST 2026
[2026-06-12 16:16:50,722.722 INFO    ] ================================================
[2026-06-12 16:16:51,073.073 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 16:16:51
[2026-06-12 16:16:51,412.412 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 16:16:51,565.565 INFO    ] Initializing speech engine...
[2026-06-12 16:16:51,570.570 INFO    ] 2026-06-12 16:16:51
[2026-06-12 16:16:51,781.781 INFO    ] 2026-06-12 16:16:51
[2026-06-12 16:16:51,810.810 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 16:16:51,997.997 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 16:16:52,006.006 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 16:16:52,137.137 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 16:16:52,201.201 INFO    ] time= 12/06/2026 16:16:52
[2026-06-12 16:16:52,230.230 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 16:16:52,236.236 INFO    ] Checking for existing commands in stream...
[2026-06-12 16:16:52,329.329 INFO    ] Found 2 existing command(s) in stream
[2026-06-12 16:16:52,336.336 INFO    ] Checking historical command: ID=1781261208344-0
[2026-06-12 16:16:52,359.359 INFO    ] process_and_cleanup_command: msg_id=1781261208344-0
[2026-06-12 16:16:52,362.362 INFO    ] is_command_expired: timestamp=2026-06-12T10:46:48.258270Z, expiry=30s
[2026-06-12 16:16:52,448.448 INFO    ] Command removed from stream: 1781261208344-0. returning for processing...
[2026-06-12 16:16:52,451.451 INFO    ] ***** get_valid_command
[2026-06-12 16:16:52,455.455 INFO    ] {'message': 'start-order success', 'imei': 'TM09202301', 'metadata_request_id': 'start-order-1781261205619-6twmt1q6w', 'status': 'success', 'metadata_order_id': 'TM09202301260612161602598', 'message_type': 'command_response', 'timestamp': '2026-06-12T10:46:48.258270Z'}
[2026-06-12 16:16:52,460.460 INFO    ] Checking historical command: ID=1781261209499-0
[2026-06-12 16:16:52,464.464 INFO    ] process_and_cleanup_command: msg_id=1781261209499-0
[2026-06-12 16:16:52,466.466 INFO    ] is_command_expired: timestamp=2026-06-12T10:46:49.145Z, expiry=30s
[2026-06-12 16:16:52,528.528 INFO    ] Command removed from stream: 1781261209499-0. returning for processing...
[2026-06-12 16:16:52,532.532 INFO    ] ***** get_valid_command
[2026-06-12 16:16:52,538.538 INFO    ] {'timeout': '60', 'command': 'process-order', 'data': '{"request_id":"process-order-1781261209145-6yqosxvew","orderId":"TM09202301260612161602598","is_vending":false,"accessCode":"30262579"}', 'timestamp': '2026-06-12T10:46:49.145Z', 'source': 'webapp'}
[2026-06-12 16:16:52,542.542 INFO    ] ***** Parsed command data: {'accessCode': '30262579', 'request_id': 'process-order-1781261209145-6yqosxvew', 'orderId': 'TM09202301260612161602598', 'is_vending': False}
[2026-06-12 16:16:52,546.546 INFO    ] Handling process order...
[2026-06-12 16:16:52,549.549 INFO    ] Processing process-order command...
[2026-06-12 16:16:52,555.555 INFO    ] 🔍 Lock file Order ID: TM09202301260612161602598, TS: 2026-06-12 16:16:48
[2026-06-12 16:16:52,566.566 INFO    ] ✅ Order lock valid for TM09202301260612161602598
[2026-06-12 16:16:52,571.571 INFO    ] Received access code in process-order, skipping PHP API call
[2026-06-12 16:16:52,576.576 INFO    ] processing access code 30262579 for order TM09202301260612161602598
[2026-06-12 16:16:52,580.580 INFO    ] 🔍 Lock file Order ID: TM09202301260612161602598, TS: 2026-06-12 16:16:48
[2026-06-12 16:16:52,586.586 INFO    ] ✅ Order lock valid for TM09202301260612161602598
[2026-06-12 16:16:52,591.591 INFO    ] 2026-06-12 16:16:52
[2026-06-12 16:16:52,619.619 INFO    ] 200
[2026-06-12 16:16:52,621.621 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:16:52,623.623 INFO    ] 30262579
[2026-06-12 16:16:52,680.680 INFO    ] 2026-06-12 16:16:52
[2026-06-12 16:16:52,689.689 INFO    ] session id :303698264
[2026-06-12 16:16:52,711.711 INFO    ] http://localhost:5000/v2/getOrderByAccessCode?access_code=30262579&imei=TM09202301&session_id=303698264
[2026-06-12 16:16:53,396.396 INFO    ] 200
[2026-06-12 16:16:53,398.398 INFO    ] {"status": true, "msg": "Order Data", "data": {"bill_amount": "40", "access_code": "30262579", "order_id": "TM09202301260612161602598", "mobile": "8919435351", "proposed_sku_json": [{"unit_price": 40, "qty": 1, "skuid": "4500669", "offer_desc": "", "offer_id": "", "door_id": "2", "tray_id": "38", "sku_total": 40, "mrp": "40", "image_url": "https://images.tinymart.in/product/4500669-3919.webp", "name": "Rite Bite Sports Bar 40gm"}], "invoice_bill": "40"}, "rstatus": true}
[2026-06-12 16:16:53,399.399 INFO    ] 40
[2026-06-12 16:16:53,401.401 INFO    ] TM09202301260612161602598
[2026-06-12 16:16:53,402.402 INFO    ] 8919435351
[2026-06-12 16:16:53,403.403 INFO    ] 2026-06-12 16:16:53
[2026-06-12 16:16:53,404.404 INFO    ] Door Opening for user mobile ending with  five three five one 
[2026-06-12 16:16:53,406.406 INFO    ] Door Opening for user mobile ending with  five three five one 
[2026-06-12 16:16:53,407.407 INFO    ] 0c60a6c841665ca2a811944566494658
[2026-06-12 16:16:53,413.413 INFO    ] 2026-06-12 16:16:53
[2026-06-12 16:16:53,414.414 INFO    ] creating audio file
[2026-06-12 16:16:53,449.449 INFO    ] Calling gTTS API with 60s timeout...
[2026-06-12 16:16:54,081.081 INFO    ] gTTS API call completed successfully
[2026-06-12 16:16:54,756.756 INFO    ] 2026-06-12 16:16:54
[2026-06-12 16:16:54,757.757 INFO    ] playing audio file
[2026-06-12 16:16:54,767.767 INFO    ] 2026-06-12 16:16:54
[2026-06-12 16:16:54,769.769 INFO    ] 2026-06-12 16:16:54
[2026-06-12 16:16:54,771.771 INFO    ] publish_status: order_id=TM09202301260612161602598
[2026-06-12 16:16:54,772.772 INFO    ] [publish_status] Adding message to stream: order:TM09202301260612161602598
[2026-06-12 16:16:54,874.874 INFO    ] [publish_status] Message added to stream with ID: 1781261214882-0
[2026-06-12 16:16:54,875.875 INFO    ] Published to order:TM09202301260612161602598: {'server_status': 'order-started', 'server_response': '{"rstatus": true, "data": {"bill_amount": "40", "mobile": "8919435351", "invoice_bill": "40", "access_code": "30262579", "proposed_sku_json": [{"mrp": "40", "image_url": "https://images.tinymart.in/product/4500669-3919.webp", "name": "Rite Bite Sports Bar 40gm", "offer_id": "", "skuid": "4500669", "tray_id": "38", "unit_price": 40, "offer_desc": "", "door_id": "2", "qty": 1, "sku_total": 40}], "order_id": "TM09202301260612161602598"}, "msg": "Order Data", "status": true}', 'timestamp': '2026-06-12T10:46:54.770085Z', 'order_id': 'TM09202301260612161602598'} (ID: 1781261214882-0)
[2026-06-12 16:16:55,274.274 INFO    ] {'server_status': 'order-started', 'server_response': {'rstatus': True, 'data': {'bill_amount': '40', 'mobile': '8919435351', 'invoice_bill': '40', 'access_code': '30262579', 'proposed_sku_json': [{'mrp': '40', 'image_url': 'https://images.tinymart.in/product/4500669-3919.webp', 'name': 'Rite Bite Sports Bar 40gm', 'offer_id': '', 'skuid': '4500669', 'tray_id': '38', 'unit_price': 40, 'offer_desc': '', 'door_id': '2', 'qty': 1, 'sku_total': 40}], 'order_id': 'TM09202301260612161602598'}, 'msg': 'Order Data', 'status': True}, 'order_id': 'TM09202301260612161602598'}
[2026-06-12 16:16:55,276.276 INFO    ] 200
[2026-06-12 16:16:55,279.279 INFO    ] {"data":{"server_status":"order-started","server_response":{"rstatus":true,"data":{"bill_amount":"40","mobile":"8919435351","invoice_bill":"40","access_code":"30262579","proposed_sku_json":[{"mrp":"40","image_url":"https:\/\/images.tinymart.in\/product\/4500669-3919.webp","name":"Rite Bite Sports Bar 40gm","offer_id":"","skuid":"4500669","tray_id":"38","unit_price":40,"offer_desc":"","door_id":"2","qty":1,"sku_total":40}],"order_id":"TM09202301260612161602598"},"msg":"Order Data","status":true},"order_id":"TM09202301260612161602598"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-12 16:16:55,282.282 INFO    ] {'data': {'server_status': 'order-started', 'server_response': {'msg': 'Order Data', 'data': {'bill_amount': '40', 'mobile': '8919435351', 'order_id': 'TM09202301260612161602598', 'access_code': '30262579', 'invoice_bill': '40', 'proposed_sku_json': [{'mrp': '40', 'sku_total': 40, 'name': 'Rite Bite Sports Bar 40gm', 'offer_id': '', 'skuid': '4500669', 'tray_id': '38', 'unit_price': 40, 'offer_desc': '', 'door_id': '2', 'qty': 1, 'image_url': 'https://images.tinymart.in/product/4500669-3919.webp'}]}, 'rstatus': True, 'status': True}, 'order_id': 'TM09202301260612161602598'}, 'response': {'code': 'ORDER_EXISTS', 'data': 'order updated successfully', 'msg': 'order updated successfully', 'status': True}}
[2026-06-12 16:16:55,284.284 INFO    ] 2026-06-12 16:16:55
[2026-06-12 16:16:55,327.327 INFO    ] 200
[2026-06-12 16:16:55,330.330 INFO    ] True
[2026-06-12 16:16:55,463.463 INFO    ] 200
[2026-06-12 16:16:55,465.465 INFO    ] {"error": {"tmessage": "In Progress", "umessage": "In Progress", "data": {}, "code": 20001}, "SectionSKU": {"Header": "Thank you for bearing with us :)", "skus": []}, "rstatus": false, "SectionStatus": {"Header": " Your order is under process  ", "SubHeader": "Please wait while we process your order", "UI_Header": "", "Note": ""}, "status": "False", "voiceNote": "Please Wait", "SectionMain": {"Header": "Processing Order"}}
[2026-06-12 16:16:55,466.466 INFO    ] {'error': {'umessage': 'In Progress', 'data': {}, 'tmessage': 'In Progress', 'code': 20001}, 'SectionMain': {'Header': 'Processing Order'}, 'rstatus': False, 'status': 'False', 'voiceNote': 'Please Wait', 'SectionStatus': {'Header': ' Your order is under process  ', 'UI_Header': '', 'SubHeader': 'Please wait while we process your order', 'Note': ''}, 'SectionSKU': {'Header': 'Thank you for bearing with us :)', 'skus': []}}
[2026-06-12 16:16:55,468.468 INFO    ] *** process_order ***
[2026-06-12 16:16:56,657.657 INFO    ] 200
[2026-06-12 16:16:56,658.658 INFO    ] {"delay": 0, "SectionSKU": {"Header": "Thank you for bearing with us :)", "skus": []}, "rstatus": true, "SectionStatus": {"Header": " Your order is under process  ", "SubHeader": "Please wait while we process your order", "UI_Header": "", "Note": ""}, "status": "True", "voiceNote": "Please Wait", "SectionMain": {"Header": "Processing Order"}}
[2026-06-12 16:16:56,660.660 INFO    ] {'SectionMain': {'Header': 'Processing Order'}, 'delay': 0, 'rstatus': True, 'status': 'True', 'voiceNote': 'Please Wait', 'SectionStatus': {'Header': ' Your order is under process  ', 'UI_Header': '', 'SubHeader': 'Please wait while we process your order', 'Note': ''}, 'SectionSKU': {'Header': 'Thank you for bearing with us :)', 'skus': []}}
[2026-06-12 16:16:56,661.661 INFO    ] *** process_order ***
[2026-06-12 16:16:56,663.663 INFO    ] publish_status: order_id=TM09202301260612161602598
[2026-06-12 16:16:56,664.664 INFO    ] [publish_status] Adding message to stream: order:TM09202301260612161602598
[2026-06-12 16:16:56,750.750 INFO    ] [publish_status] Message added to stream with ID: 1781261216766-0
[2026-06-12 16:16:56,751.751 INFO    ] Published to order:TM09202301260612161602598: {'server_status': 'doorOpened', 'server_response': '{"SectionMain": {"Header": "Processing Order"}, "delay": 0, "SectionSKU": {"Header": "Thank you for bearing with us :)", "skus": []}, "SectionStatus": {"Header": " Your order is under process  ", "UI_Header": "", "SubHeader": "You can pull the door now.", "Note": ""}, "status": "True", "voiceNote": "Door is open...", "rstatus": true}', 'order_id': 'TM09202301260612161602598'} (ID: 1781261216766-0)
[2026-06-12 16:16:57,808.808 INFO    ] 2026-06-12 16:16:57
[2026-06-12 16:16:57,812.812 INFO    ] publish_status: order_id=TM09202301260612161602598
[2026-06-12 16:16:57,815.815 INFO    ] [publish_status] Adding message to stream: order:TM09202301260612161602598
[2026-06-12 16:16:57,909.909 INFO    ] [publish_status] Message added to stream with ID: 1781261217916-0
[2026-06-12 16:16:57,912.912 INFO    ] Published to order:TM09202301260612161602598: {'server_status': 'processOrder', 'server_response': '{"SectionMain": {"Header": "Processing Order"}, "delay": 0, "rstatus": true, "status": "True", "voiceNote": "Please Wait", "SectionStatus": {"Header": " Your order is under process  ", "UI_Header": "", "SubHeader": "Please wait while we process your order", "Note": ""}, "SectionSKU": {"Header": "Thank you for bearing with us :)", "skus": []}}', 'timestamp': '2026-06-12T10:46:57.810313Z', 'order_id': 'TM09202301260612161602598'} (ID: 1781261217916-0)
[2026-06-12 16:16:58,042.042 INFO    ] {'server_status': 'processOrder', 'server_response': {'SectionMain': {'Header': 'Processing Order'}, 'delay': 0, 'rstatus': True, 'status': 'True', 'voiceNote': 'Please Wait', 'SectionStatus': {'Header': ' Your order is under process  ', 'UI_Header': '', 'SubHeader': 'Please wait while we process your order', 'Note': ''}, 'SectionSKU': {'Header': 'Thank you for bearing with us :)', 'skus': []}}, 'order_id': 'TM09202301260612161602598'}
[2026-06-12 16:16:58,045.045 INFO    ] 200
[2026-06-12 16:16:58,048.048 INFO    ] {"data":{"server_status":"processOrder","server_response":{"SectionMain":{"Header":"Processing Order"},"delay":0,"rstatus":true,"status":"true","voiceNote":"Please Wait","SectionStatus":{"Header":" Your order is under process  ","UI_Header":"","SubHeader":"Please wait while we process your order","Note":""},"SectionSKU":{"Header":"Thank you for bearing with us :)","skus":[]}},"order_id":"TM09202301260612161602598"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-12 16:16:58,051.051 INFO    ] {'data': {'server_status': 'processOrder', 'server_response': {'SectionMain': {'Header': 'Processing Order'}, 'delay': 0, 'SectionStatus': {'Header': ' Your order is under process  ', 'UI_Header': '', 'SubHeader': 'Please wait while we process your order', 'Note': ''}, 'voiceNote': 'Please Wait', 'status': 'true', 'rstatus': True, 'SectionSKU': {'Header': 'Thank you for bearing with us :)', 'skus': []}}, 'order_id': 'TM09202301260612161602598'}, 'response': {'code': 'ORDER_EXISTS', 'data': 'order updated successfully', 'msg': 'order updated successfully', 'status': True}}
[2026-06-12 16:16:58,053.053 INFO    ] 2026-06-12 16:16:58
[2026-06-12 16:16:58,055.055 INFO    ] None
[2026-06-12 16:16:58,058.058 INFO    ] Opening Door now
[2026-06-12 16:16:58,060.060 INFO    ] Opening Door now
[2026-06-12 16:16:58,063.063 INFO    ] 08e5d1063504bf393c26f0bfa436e9f9
[2026-06-12 16:16:58,066.066 INFO    ] 2026-06-12 16:16:58
[2026-06-12 16:16:58,068.068 INFO    ] playing audio file
[2026-06-12 16:16:58,079.079 INFO    ] 2026-06-12 16:16:58
[2026-06-12 16:16:58,081.081 INFO    ] 2026-06-12 16:16:58
[2026-06-12 16:17:01,288.288 INFO    ] 200
[2026-06-12 16:17:01,290.290 INFO    ] {"error": {"tmessage": "In Progress", "umessage": "In Progress", "data": {}, "code": 20001}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"name": "Rite Bite Sports Bar 40gm", "qty": 1}]}, "rstatus": false, "SectionStatus": {"Header": "Please Close Door 2", "SubHeader": "Please Pick the Products and close the door", "UI_Header": "DOOR 2\nIS \nOPEN \nNOW", "Note": "Please Close the door after picking up products"}, "status": "False", "voiceNote": "Door 2 is open now", "SectionMain": {"Header": "Door Open"}}
[2026-06-12 16:17:01,293.293 INFO    ] {'error': {'umessage': 'In Progress', 'data': {}, 'tmessage': 'In Progress', 'code': 20001}, 'SectionMain': {'Header': 'Door Open'}, 'rstatus': False, 'status': 'False', 'voiceNote': 'Door 2 is open now', 'SectionStatus': {'Header': 'Please Close Door 2', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'SubHeader': 'Please Pick the Products and close the door', 'Note': 'Please Close the door after picking up products'}, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'Rite Bite Sports Bar 40gm', 'qty': 1}]}}
[2026-06-12 16:17:04,487.487 INFO    ] 200
[2026-06-12 16:17:04,489.489 INFO    ] {"error": {"tmessage": "In Progress", "umessage": "In Progress", "data": {}, "code": 20001}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"name": "Rite Bite Sports Bar 40gm", "qty": 1}]}, "rstatus": false, "SectionStatus": {"Header": "Please Close Door 2", "SubHeader": "Please Pick the Products and close the door", "UI_Header": "DOOR 2\nIS \nOPEN \nNOW", "Note": "Please Close the door after picking up products"}, "status": "False", "voiceNote": "Please close door 2", "SectionMain": {"Header": "Door Open"}}
[2026-06-12 16:17:04,491.491 INFO    ] {'error': {'umessage': 'In Progress', 'data': {}, 'tmessage': 'In Progress', 'code': 20001}, 'SectionMain': {'Header': 'Door Open'}, 'rstatus': False, 'status': 'False', 'voiceNote': 'Please close door 2', 'SectionStatus': {'Header': 'Please Close Door 2', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'SubHeader': 'Please Pick the Products and close the door', 'Note': 'Please Close the door after picking up products'}, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'Rite Bite Sports Bar 40gm', 'qty': 1}]}}
[2026-06-12 16:17:07,530.530 INFO    ] 200
[2026-06-12 16:17:07,532.532 INFO    ] {"error": {"tmessage": "In Progress", "umessage": "In Progress", "data": {}, "code": 20001}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"name": "Rite Bite Sports Bar 40gm", "qty": 1}]}, "rstatus": false, "SectionStatus": {"Header": "Please Close Door 2", "SubHeader": "Please Pick the Products and close the door", "UI_Header": "DOOR 2\nIS \nOPEN \nNOW", "Note": "Please Close the door after picking up products"}, "status": "False", "voiceNote": "Please close door 2", "SectionMain": {"Header": "Door Open"}}
[2026-06-12 16:17:07,534.534 INFO    ] Please close door 2
[2026-06-12 16:17:07,535.535 INFO    ] Please close door 2
[2026-06-12 16:17:07,537.537 INFO    ] 758e46684c76e887a5f58d4738034bed
[2026-06-12 16:17:07,538.538 INFO    ] 2026-06-12 16:17:07
[2026-06-12 16:17:07,539.539 INFO    ] playing audio file
[2026-06-12 16:17:07,550.550 INFO    ] 2026-06-12 16:17:07
[2026-06-12 16:17:07,552.552 INFO    ] publish_status: order_id=TM09202301260612161602598
[2026-06-12 16:17:07,554.554 INFO    ] [publish_status] Adding message to stream: order:TM09202301260612161602598
[2026-06-12 16:17:07,646.646 INFO    ] [publish_status] Message added to stream with ID: 1781261227662-0
[2026-06-12 16:17:07,647.647 INFO    ] Published to order:TM09202301260612161602598: {'server_status': 'OrderStatus', 'server_response': '{"error": {"umessage": "In Progress", "data": {}, "tmessage": "In Progress", "code": 20001}, "SectionMain": {"Header": "Door Open"}, "rstatus": false, "status": "False", "voiceNote": "Please close door 2", "SectionStatus": {"Header": "Please Close Door 2", "UI_Header": "DOOR 2\\nIS \\nOPEN \\nNOW", "SubHeader": "Please Pick the Products and close the door", "Note": "Please Close the door after picking up products"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"name": "Rite Bite Sports Bar 40gm", "qty": 1}]}}', 'timestamp': '2026-06-12T10:47:07.551250Z', 'order_id': 'TM09202301260612161602598'} (ID: 1781261227662-0)
[2026-06-12 16:17:08,066.066 INFO    ] {'server_status': 'OrderStatus', 'server_response': {'error': {'umessage': 'In Progress', 'data': {}, 'tmessage': 'In Progress', 'code': 20001}, 'SectionMain': {'Header': 'Door Open'}, 'rstatus': False, 'status': 'False', 'voiceNote': 'Please close door 2', 'SectionStatus': {'Header': 'Please Close Door 2', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'SubHeader': 'Please Pick the Products and close the door', 'Note': 'Please Close the door after picking up products'}, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'Rite Bite Sports Bar 40gm', 'qty': 1}]}}, 'order_id': 'TM09202301260612161602598'}
[2026-06-12 16:17:08,068.068 INFO    ] 200
[2026-06-12 16:17:08,069.069 INFO    ] {"data":{"server_status":"OrderStatus","server_response":{"error":{"umessage":"In Progress","data":[],"tmessage":"In Progress","code":20001},"SectionMain":{"Header":"Door Open"},"rstatus":false,"status":"false","voiceNote":"Please close door 2","SectionStatus":{"Header":"Please Close Door 2","UI_Header":"DOOR 2\nIS \nOPEN \nNOW","SubHeader":"Please Pick the Products and close the door","Note":"Please Close the door after picking up products"},"SectionSKU":{"Header":"Pick the below items from the door","skus":[{"name":"Rite Bite Sports Bar 40gm","qty":1}]}},"order_id":"TM09202301260612161602598"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-12 16:17:08,071.071 INFO    ] {'data': {'server_status': 'OrderStatus', 'server_response': {'error': {'umessage': 'In Progress', 'data': [], 'tmessage': 'In Progress', 'code': 20001}, 'SectionMain': {'Header': 'Door Open'}, 'SectionStatus': {'Header': 'Please Close Door 2', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'SubHeader': 'Please Pick the Products and close the door', 'Note': 'Please Close the door after picking up products'}, 'voiceNote': 'Please close door 2', 'status': 'false', 'rstatus': False, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'Rite Bite Sports Bar 40gm', 'qty': 1}]}}, 'order_id': 'TM09202301260612161602598'}, 'response': {'code': 'ORDER_EXISTS', 'data': 'order updated successfully', 'msg': 'order updated successfully', 'status': True}}
[2026-06-12 16:17:08,073.073 INFO    ] {'error': {'umessage': 'In Progress', 'data': {}, 'tmessage': 'In Progress', 'code': 20001}, 'SectionMain': {'Header': 'Door Open'}, 'rstatus': False, 'status': 'False', 'voiceNote': 'Please close door 2', 'SectionStatus': {'Header': 'Please Close Door 2', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'SubHeader': 'Please Pick the Products and close the door', 'Note': 'Please Close the door after picking up products'}, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'Rite Bite Sports Bar 40gm', 'qty': 1}]}}
[2026-06-12 16:17:11,114.114 INFO    ] 200
[2026-06-12 16:17:11,116.116 INFO    ] {"delay": 100, "SectionSKU": {"Header": "If you like us, tell others... else tell us", "skus": []}, "rstatus": true, "SectionStatus": {"Header": " Order is complete ", "SubHeader": "Please wait for invoice to generate", "UI_Header": "", "Note": "If any due amount, clear at https://go.tinymart.in"}, "status": "True", "voiceNote": "Transaction Completed", "SectionMain": {"Header": "Door Closed"}}
[2026-06-12 16:17:11,118.118 INFO    ] {'SectionMain': {'Header': 'Door Closed'}, 'delay': 100, 'rstatus': True, 'status': 'True', 'voiceNote': 'Transaction Completed', 'SectionStatus': {'Header': ' Order is complete ', 'UI_Header': '', 'SubHeader': 'Please wait for invoice to generate', 'Note': 'If any due amount, clear at https://go.tinymart.in'}, 'SectionSKU': {'Header': 'If you like us, tell others... else tell us', 'skus': []}}
[2026-06-12 16:17:11,120.120 INFO    ] 2026-06-12 16:17:11
[2026-06-12 16:17:11,121.121 INFO    ] Order Completed 
[2026-06-12 16:17:11,123.123 INFO    ] Order Completed 
[2026-06-12 16:17:11,125.125 INFO    ] 193c8a8cf3bf490ccfe0b23598544a83
[2026-06-12 16:17:11,127.127 INFO    ] 2026-06-12 16:17:11
[2026-06-12 16:17:11,129.129 INFO    ] playing audio file
[2026-06-12 16:17:11,143.143 INFO    ] 2026-06-12 16:17:11
[2026-06-12 16:17:11,145.145 INFO    ] {'SectionMain': {'Header': 'Door Closed'}, 'delay': 100, 'rstatus': True, 'status': 'True', 'voiceNote': 'Transaction Completed', 'SectionStatus': {'Header': ' Order is complete ', 'UI_Header': '', 'SubHeader': 'Please wait for invoice to generate', 'Note': 'If any due amount, clear at https://go.tinymart.in'}, 'SectionSKU': {'Header': 'If you like us, tell others... else tell us', 'skus': []}}
[2026-06-12 16:17:11,148.148 INFO    ] 2026-06-12 16:17:11
[2026-06-12 16:17:12,193.193 INFO    ] 200
[2026-06-12 16:17:12,194.194 INFO    ] {"anomaly": 0, "skus": [{"image_url": "https://images.tinymart.in/product/4500669-3919.webp", "qty": 1, "skuid": "4500669", "unit_price": "40", "tray_id": "38", "sku_total": 40.0, "mrp": "40", "door_id": "", "name": "Rite Bite Sports Bar 40gm per peice"}], "total_amount": 40.0, "orderId": "TM09202301260612161602598", "res": "True", "rstatus": true, "logic": "WBL"}
[2026-06-12 16:17:12,196.196 INFO    ] {'res': 'True', 'skus': [{'mrp': '40', 'door_id': '', 'name': 'Rite Bite Sports Bar 40gm per peice', 'skuid': '4500669', 'tray_id': '38', 'unit_price': '40', 'sku_total': 40.0, 'qty': 1, 'image_url': 'https://images.tinymart.in/product/4500669-3919.webp'}], 'logic': 'WBL', 'total_amount': 40.0, 'orderId': 'TM09202301260612161602598', 'anomaly': 0, 'rstatus': True}
[2026-06-12 16:17:12,197.197 INFO    ] {'res': 'True', 'skus': [{'mrp': '40', 'door_id': '', 'name': 'Rite Bite Sports Bar 40gm per peice', 'skuid': '4500669', 'tray_id': '38', 'unit_price': '40', 'sku_total': 40.0, 'qty': 1, 'image_url': 'https://images.tinymart.in/product/4500669-3919.webp'}], 'logic': 'WBL', 'total_amount': 40.0, 'orderId': 'TM09202301260612161602598', 'anomaly': 0, 'rstatus': True}
[2026-06-12 16:17:12,200.200 INFO    ] 2026-06-12 16:17:12
[2026-06-12 16:17:12,201.201 INFO    ] 2026-06-12 16:17:12
[2026-06-12 16:17:12,202.202 INFO    ] 40
[2026-06-12 16:17:12,204.204 INFO    ] 2026-06-12 16:17:12
[2026-06-12 16:17:12,205.205 INFO    ] 2026-06-12 16:17:12
[2026-06-12 16:17:12,206.206 INFO    ]  Your Bill Amount is 40
[2026-06-12 16:17:12,207.207 INFO    ]  Your Bill Amount is 40
[2026-06-12 16:17:12,209.209 INFO    ] 88965e4060b051d18121185ac205626e
[2026-06-12 16:17:12,214.214 INFO    ] 2026-06-12 16:17:12
[2026-06-12 16:17:12,215.215 INFO    ] playing audio file
[2026-06-12 16:17:12,226.226 INFO    ] 2026-06-12 16:17:12
[2026-06-12 16:17:12,227.227 INFO    ] 2026-06-12 16:17:12
[2026-06-12 16:17:12,229.229 INFO    ] publish_status: order_id=TM09202301260612161602598
[2026-06-12 16:17:12,231.231 INFO    ] [publish_status] Adding message to stream: order:TM09202301260612161602598
[2026-06-12 16:17:12,298.298 INFO    ] [publish_status] Message added to stream with ID: 1781261232315-0
[2026-06-12 16:17:12,300.300 INFO    ] Published to order:TM09202301260612161602598: {'server_status': 'invoiceOrder', 'server_response': '{"res": "True", "skus": [{"mrp": "40", "door_id": "", "name": "Rite Bite Sports Bar 40gm per peice", "skuid": "4500669", "tray_id": "38", "unit_price": "40", "sku_total": 40.0, "qty": 1, "image_url": "https://images.tinymart.in/product/4500669-3919.webp"}], "logic": "WBL", "total_amount": 40.0, "orderId": "TM09202301260612161602598", "anomaly": 0, "rstatus": true}', 'timestamp': '2026-06-12T10:47:12.228738Z', 'order_id': 'TM09202301260612161602598'} (ID: 1781261232315-0)
[2026-06-12 16:17:12,722.722 INFO    ] {'server_status': 'invoiceOrder', 'server_response': {'res': 'True', 'skus': [{'mrp': '40', 'door_id': '', 'name': 'Rite Bite Sports Bar 40gm per peice', 'skuid': '4500669', 'tray_id': '38', 'unit_price': '40', 'sku_total': 40.0, 'qty': 1, 'image_url': 'https://images.tinymart.in/product/4500669-3919.webp'}], 'logic': 'WBL', 'total_amount': 40.0, 'orderId': 'TM09202301260612161602598', 'anomaly': 0, 'rstatus': True}, 'order_id': 'TM09202301260612161602598'}
[2026-06-12 16:17:12,724.724 INFO    ] 200
[2026-06-12 16:17:12,725.725 INFO    ] {"data":{"server_status":"invoiceOrder","server_response":{"res":"true","skus":[{"mrp":"40","door_id":"","name":"Rite Bite Sports Bar 40gm per peice","skuid":"4500669","tray_id":"38","unit_price":"40","sku_total":40,"qty":1,"image_url":"https:\/\/images.tinymart.in\/product\/4500669-3919.webp"}],"logic":"WBL","total_amount":40,"orderId":"TM09202301260612161602598","anomaly":0,"rstatus":true},"order_id":"TM09202301260612161602598"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-12 16:17:12,727.727 INFO    ] {'data': {'server_status': 'invoiceOrder', 'server_response': {'res': 'true', 'skus': [{'mrp': '40', 'name': 'Rite Bite Sports Bar 40gm per peice', 'skuid': '4500669', 'tray_id': '38', 'unit_price': '40', 'image_url': 'https://images.tinymart.in/product/4500669-3919.webp', 'door_id': '', 'qty': 1, 'sku_total': 40}], 'logic': 'WBL', 'total_amount': 40, 'orderId': 'TM09202301260612161602598', 'anomaly': 0, 'rstatus': True}, 'order_id': 'TM09202301260612161602598'}, 'response': {'code': 'ORDER_EXISTS', 'data': 'order updated successfully', 'msg': 'order updated successfully', 'status': True}}
[2026-06-12 16:17:12,729.729 INFO    ] {'data': {'server_status': 'invoiceOrder', 'server_response': {'res': 'true', 'skus': [{'mrp': '40', 'name': 'Rite Bite Sports Bar 40gm per peice', 'skuid': '4500669', 'tray_id': '38', 'unit_price': '40', 'image_url': 'https://images.tinymart.in/product/4500669-3919.webp', 'door_id': '', 'qty': 1, 'sku_total': 40}], 'logic': 'WBL', 'total_amount': 40, 'orderId': 'TM09202301260612161602598', 'anomaly': 0, 'rstatus': True}, 'order_id': 'TM09202301260612161602598'}, 'response': {'code': 'ORDER_EXISTS', 'data': 'order updated successfully', 'msg': 'order updated successfully', 'status': True}}
[2026-06-12 16:17:12,731.731 INFO    ] 2026-06-12 16:17:12
[2026-06-12 16:17:15,548.548 INFO    ] 200
[2026-06-12 16:17:15,551.551 INFO    ] {"order_items": [], "tray_sync": ["TM09202301260612161602598", "TM09202301260612161602598", "TM09202301260612161602598", "TM09202301260612161602598", "TM09202301260612161602598", "TM09202301260612161602598"], "orders": [], "order_items_synced": ["TM09202301260612161602598_0"], "orders_synced": [], "orders_data_synced": [], "status": true, "orders_data": [], "tray_synced": ["TM09202301260612161602598", "TM09202301260612161602598", "TM09202301260612161602598", "TM09202301260612161602598", "TM09202301260612161602598", "TM09202301260612161602598", "TM09202301260612161602598", "TM09202301260612161602598", "TM09202301260612161602598", "TM09202301260612161602598", "TM09202301260612161602598", "TM09202301260612161602598", "TM09202301260612161602598", "TM09202301260612161602598", "TM09202301260612161602598", "TM09202301260612161602598", "TM09202301260612161602598", "TM09202301260612161602598", "TM09202301260612161602598", "TM09202301260612161602598", "TM09202301260612161602598", "TM09202301260612161602598", "TM09202301260612161602598", "TM09202301260612161602598", "TM09202301260612161602598", "TM09202301260612161602598", "TM09202301260612161602598"]}
[2026-06-12 16:17:15,553.553 INFO    ] 2026-06-12 16:17:15
[2026-06-12 16:17:15,647.647 INFO    ] 200
[2026-06-12 16:17:15,648.648 INFO    ] True
[2026-06-12 16:17:15,651.651 INFO    ] cleanup_start_order_file_after_processing: order_id=TM09202301260612161602598
[2026-06-12 16:17:15,653.653 INFO    ] start order file deleted
[2026-06-12 16:17:15,655.655 INFO    ] Checking for system updates...
[2026-06-12 16:17:15,679.679 INFO    ] 200
[2026-06-12 16:17:15,681.681 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:17:15,716.716 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 16:17:15,718.718 INFO    ] No update needed
[2026-06-12 16:17:15,720.720 INFO    ] Checking for camera pi updates...
[2026-06-12 16:17:15,744.744 INFO    ] 200
[2026-06-12 16:17:15,745.745 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:17:15,772.772 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 16:17:15,811.811 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 16:17:15,813.813 INFO    ] No camera update needed
[2026-06-12 16:17:15,815.815 INFO    ] Script finished. Safe exiting...
[2026-06-12 16:17:15,817.817 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 16:17:15,821.821 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 16:17:15,824.824 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 16:17:17,864.864 INFO    ] ================================================
[2026-06-12 16:17:17,879.879 INFO    ] Launching Daemon at Fri Jun 12 16:17:17 IST 2026
[2026-06-12 16:17:17,890.890 INFO    ] ================================================
[2026-06-12 16:17:18,244.244 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 16:17:18
[2026-06-12 16:17:18,562.562 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 16:17:18,706.706 INFO    ] Initializing speech engine...
[2026-06-12 16:17:18,711.711 INFO    ] 2026-06-12 16:17:18
[2026-06-12 16:17:18,914.914 INFO    ] 2026-06-12 16:17:18
[2026-06-12 16:17:18,942.942 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 16:17:19,127.127 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 16:17:19,135.135 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 16:17:19,258.258 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 16:17:19,319.319 INFO    ] time= 12/06/2026 16:17:19
[2026-06-12 16:17:19,352.352 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 16:17:19,357.357 INFO    ] Checking for existing commands in stream...
[2026-06-12 16:17:19,429.429 INFO    ] No existing commands found in stream
[2026-06-12 16:17:24,461.461 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 16:17:24,464.464 INFO    ] Waiting 1.59 seconds before fallback handling...
[2026-06-12 16:17:26,467.467 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 16:17:26,469.469 INFO    ] Checking for system updates...
[2026-06-12 16:17:26,489.489 INFO    ] 200
[2026-06-12 16:17:26,491.491 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:17:26,520.520 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 16:17:26,522.522 INFO    ] No update needed
[2026-06-12 16:17:26,523.523 INFO    ] Checking for camera pi updates...
[2026-06-12 16:17:26,543.543 INFO    ] 200
[2026-06-12 16:17:26,545.545 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:17:26,568.568 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 16:17:26,618.618 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 16:17:26,620.620 INFO    ] No camera update needed
[2026-06-12 16:17:26,621.621 INFO    ] Script finished. Safe exiting...
[2026-06-12 16:17:26,622.622 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 16:17:26,625.625 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 16:17:26,628.628 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 16:17:28,674.674 INFO    ] ================================================
[2026-06-12 16:17:28,690.690 INFO    ] Launching Daemon at Fri Jun 12 16:17:28 IST 2026
[2026-06-12 16:17:28,701.701 INFO    ] ================================================
[2026-06-12 16:17:29,063.063 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 16:17:29
[2026-06-12 16:17:29,408.408 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 16:17:29,560.560 INFO    ] Initializing speech engine...
[2026-06-12 16:17:29,565.565 INFO    ] 2026-06-12 16:17:29
[2026-06-12 16:17:29,775.775 INFO    ] 2026-06-12 16:17:29
[2026-06-12 16:17:29,804.804 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 16:17:29,992.992 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 16:17:30,002.002 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 16:17:30,144.144 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 16:17:30,202.202 INFO    ] time= 12/06/2026 16:17:30
[2026-06-12 16:17:30,226.226 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 16:17:30,233.233 INFO    ] Checking for existing commands in stream...
[2026-06-12 16:17:30,301.301 INFO    ] No existing commands found in stream
[2026-06-12 16:17:35,315.315 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 16:17:35,318.318 INFO    ] Waiting 2.44 seconds before fallback handling...
[2026-06-12 16:17:38,163.163 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 16:17:38,165.165 INFO    ] Checking for system updates...
[2026-06-12 16:17:38,186.186 INFO    ] 200
[2026-06-12 16:17:38,187.187 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:17:38,220.220 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 16:17:38,221.221 INFO    ] No update needed
[2026-06-12 16:17:38,223.223 INFO    ] Checking for camera pi updates...
[2026-06-12 16:17:38,244.244 INFO    ] 200
[2026-06-12 16:17:38,245.245 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:17:38,270.270 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 16:17:38,335.335 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 16:17:38,336.336 INFO    ] No camera update needed
[2026-06-12 16:17:38,338.338 INFO    ] Script finished. Safe exiting...
[2026-06-12 16:17:38,339.339 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 16:17:38,342.342 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 16:17:38,345.345 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 16:17:40,385.385 INFO    ] ================================================
[2026-06-12 16:17:40,401.401 INFO    ] Launching Daemon at Fri Jun 12 16:17:40 IST 2026
[2026-06-12 16:17:40,411.411 INFO    ] ================================================
[2026-06-12 16:17:40,773.773 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 16:17:40
[2026-06-12 16:17:41,114.114 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 16:17:41,266.266 INFO    ] Initializing speech engine...
[2026-06-12 16:17:41,272.272 INFO    ] 2026-06-12 16:17:41
[2026-06-12 16:17:41,483.483 INFO    ] 2026-06-12 16:17:41
[2026-06-12 16:17:41,512.512 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 16:17:41,699.699 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 16:17:41,708.708 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 16:17:41,850.850 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 16:17:41,909.909 INFO    ] time= 12/06/2026 16:17:41
[2026-06-12 16:17:41,932.932 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 16:17:41,939.939 INFO    ] Checking for existing commands in stream...
[2026-06-12 16:17:42,007.007 INFO    ] No existing commands found in stream
[2026-06-12 16:17:47,039.039 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 16:17:47,044.044 INFO    ] Waiting 0.37 seconds before fallback handling...
[2026-06-12 16:17:47,789.789 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 16:17:47,791.791 INFO    ] Checking for system updates...
[2026-06-12 16:17:47,811.811 INFO    ] 200
[2026-06-12 16:17:47,813.813 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:17:47,843.843 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 16:17:47,845.845 INFO    ] No update needed
[2026-06-12 16:17:47,846.846 INFO    ] Checking for camera pi updates...
[2026-06-12 16:17:47,865.865 INFO    ] 200
[2026-06-12 16:17:47,867.867 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:17:47,890.890 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 16:17:47,955.955 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 16:17:47,956.956 INFO    ] No camera update needed
[2026-06-12 16:17:47,958.958 INFO    ] Script finished. Safe exiting...
[2026-06-12 16:17:47,959.959 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 16:17:47,962.962 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 16:17:47,965.965 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 16:17:50,003.003 INFO    ] ================================================
[2026-06-12 16:17:50,018.018 INFO    ] Launching Daemon at Fri Jun 12 16:17:50 IST 2026
[2026-06-12 16:17:50,029.029 INFO    ] ================================================
[2026-06-12 16:17:50,414.414 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 16:17:50
[2026-06-12 16:17:50,751.751 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 16:17:50,902.902 INFO    ] Initializing speech engine...
[2026-06-12 16:17:50,907.907 INFO    ] 2026-06-12 16:17:50
[2026-06-12 16:17:51,114.114 INFO    ] 2026-06-12 16:17:51
[2026-06-12 16:17:51,143.143 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 16:17:51,326.326 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 16:17:51,336.336 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 16:17:51,480.480 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 16:17:51,533.533 INFO    ] time= 12/06/2026 16:17:51
[2026-06-12 16:17:51,555.555 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 16:17:51,561.561 INFO    ] Checking for existing commands in stream...
[2026-06-12 16:17:51,651.651 INFO    ] No existing commands found in stream
[2026-06-12 16:17:56,665.665 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 16:17:56,668.668 INFO    ] Waiting 3.60 seconds before fallback handling...
[2026-06-12 16:18:00,822.822 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 16:18:00,824.824 INFO    ] Checking for system updates...
[2026-06-12 16:18:00,846.846 INFO    ] 200
[2026-06-12 16:18:00,847.847 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:18:00,879.879 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 16:18:00,881.881 INFO    ] No update needed
[2026-06-12 16:18:00,882.882 INFO    ] Checking for camera pi updates...
[2026-06-12 16:18:00,902.902 INFO    ] 200
[2026-06-12 16:18:00,903.903 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:18:00,928.928 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 16:18:00,988.988 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 16:18:00,989.989 INFO    ] No camera update needed
[2026-06-12 16:18:00,991.991 INFO    ] Script finished. Safe exiting...
[2026-06-12 16:18:00,992.992 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 16:18:00,996.996 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 16:18:00,998.998 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 16:18:03,032.032 INFO    ] ================================================
[2026-06-12 16:18:03,048.048 INFO    ] Launching Daemon at Fri Jun 12 16:18:03 IST 2026
[2026-06-12 16:18:03,058.058 INFO    ] ================================================
[2026-06-12 16:18:03,410.410 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 16:18:03
[2026-06-12 16:18:03,726.726 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 16:18:03,870.870 INFO    ] Initializing speech engine...
[2026-06-12 16:18:03,875.875 INFO    ] 2026-06-12 16:18:03
[2026-06-12 16:18:04,077.077 INFO    ] 2026-06-12 16:18:04
[2026-06-12 16:18:04,106.106 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 16:18:04,291.291 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 16:18:04,299.299 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 16:18:04,454.454 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 16:18:04,508.508 INFO    ] time= 12/06/2026 16:18:04
[2026-06-12 16:18:04,518.518 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 16:18:04,525.525 INFO    ] Checking for existing commands in stream...
[2026-06-12 16:18:04,614.614 INFO    ] No existing commands found in stream
[2026-06-12 16:18:09,623.623 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 16:18:09,626.626 INFO    ] Waiting 1.73 seconds before fallback handling...
[2026-06-12 16:18:11,763.763 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 16:18:11,764.764 INFO    ] Checking for system updates...
[2026-06-12 16:18:11,784.784 INFO    ] 200
[2026-06-12 16:18:11,785.785 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:18:11,817.817 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 16:18:11,819.819 INFO    ] No update needed
[2026-06-12 16:18:11,820.820 INFO    ] Checking for camera pi updates...
[2026-06-12 16:18:11,839.839 INFO    ] 200
[2026-06-12 16:18:11,841.841 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:18:11,865.865 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 16:18:11,918.918 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 16:18:11,919.919 INFO    ] No camera update needed
[2026-06-12 16:18:11,921.921 INFO    ] Script finished. Safe exiting...
[2026-06-12 16:18:11,922.922 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 16:18:11,925.925 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 16:18:11,928.928 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 16:18:13,967.967 INFO    ] ================================================
[2026-06-12 16:18:13,982.982 INFO    ] Launching Daemon at Fri Jun 12 16:18:13 IST 2026
[2026-06-12 16:18:13,993.993 INFO    ] ================================================
[2026-06-12 16:18:14,321.321 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 16:18:14
[2026-06-12 16:18:14,635.635 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 16:18:14,771.771 INFO    ] Initializing speech engine...
[2026-06-12 16:18:14,784.784 INFO    ] 2026-06-12 16:18:14
[2026-06-12 16:18:15,004.004 INFO    ] 2026-06-12 16:18:14
[2026-06-12 16:18:15,035.035 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 16:18:15,234.234 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 16:18:15,238.238 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 16:18:15,386.386 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 16:18:15,450.450 INFO    ] time= 12/06/2026 16:18:15
[2026-06-12 16:18:15,483.483 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 16:18:15,485.485 INFO    ] Checking for existing commands in stream...
[2026-06-12 16:18:15,561.561 INFO    ] No existing commands found in stream
[2026-06-12 16:18:20,571.571 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 16:18:20,574.574 INFO    ] Waiting 0.47 seconds before fallback handling...
[2026-06-12 16:18:21,423.423 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 16:18:21,425.425 INFO    ] Checking for system updates...
[2026-06-12 16:18:21,446.446 INFO    ] 200
[2026-06-12 16:18:21,447.447 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:18:21,477.477 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 16:18:21,479.479 INFO    ] No update needed
[2026-06-12 16:18:21,480.480 INFO    ] Checking for camera pi updates...
[2026-06-12 16:18:21,500.500 INFO    ] 200
[2026-06-12 16:18:21,502.502 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:18:21,525.525 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 16:18:21,581.581 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 16:18:21,582.582 INFO    ] No camera update needed
[2026-06-12 16:18:21,584.584 INFO    ] Script finished. Safe exiting...
[2026-06-12 16:18:21,585.585 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 16:18:21,588.588 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 16:18:21,591.591 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 16:18:23,633.633 INFO    ] ================================================
[2026-06-12 16:18:23,650.650 INFO    ] Launching Daemon at Fri Jun 12 16:18:23 IST 2026
[2026-06-12 16:18:23,662.662 INFO    ] ================================================
[2026-06-12 16:18:23,999.999 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 16:18:23
[2026-06-12 16:18:24,316.316 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 16:18:24,454.454 INFO    ] Initializing speech engine...
[2026-06-12 16:18:24,462.462 INFO    ] 2026-06-12 16:18:24
[2026-06-12 16:18:24,670.670 INFO    ] 2026-06-12 16:18:24
[2026-06-12 16:18:24,699.699 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 16:18:24,883.883 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 16:18:24,891.891 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 16:18:25,036.036 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 16:18:25,089.089 INFO    ] time= 12/06/2026 16:18:25
[2026-06-12 16:18:25,111.111 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 16:18:25,118.118 INFO    ] Checking for existing commands in stream...
[2026-06-12 16:18:25,185.185 INFO    ] No existing commands found in stream
[2026-06-12 16:18:30,199.199 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 16:18:30,202.202 INFO    ] Waiting 1.64 seconds before fallback handling...
[2026-06-12 16:18:32,199.199 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 16:18:32,201.201 INFO    ] Checking for system updates...
[2026-06-12 16:18:32,240.240 INFO    ] 200
[2026-06-12 16:18:32,242.242 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:18:32,281.281 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 16:18:32,283.283 INFO    ] No update needed
[2026-06-12 16:18:32,284.284 INFO    ] Checking for camera pi updates...
[2026-06-12 16:18:32,303.303 INFO    ] 200
[2026-06-12 16:18:32,304.304 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:18:32,328.328 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 16:18:32,358.358 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 16:18:32,359.359 INFO    ] No camera update needed
[2026-06-12 16:18:32,361.361 INFO    ] Script finished. Safe exiting...
[2026-06-12 16:18:32,362.362 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 16:18:32,365.365 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 16:18:32,368.368 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 16:18:34,408.408 INFO    ] ================================================
[2026-06-12 16:18:34,424.424 INFO    ] Launching Daemon at Fri Jun 12 16:18:34 IST 2026
[2026-06-12 16:18:34,435.435 INFO    ] ================================================
[2026-06-12 16:18:34,798.798 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 16:18:34
[2026-06-12 16:18:35,110.110 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 16:18:35,244.244 INFO    ] Initializing speech engine...
[2026-06-12 16:18:35,247.247 INFO    ] 2026-06-12 16:18:35
[2026-06-12 16:18:35,479.479 INFO    ] 2026-06-12 16:18:35
[2026-06-12 16:18:35,510.510 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 16:18:35,707.707 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 16:18:35,711.711 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 16:18:35,856.856 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 16:18:35,928.928 INFO    ] time= 12/06/2026 16:18:35
[2026-06-12 16:18:35,942.942 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 16:18:35,959.959 INFO    ] Checking for existing commands in stream...
[2026-06-12 16:18:36,036.036 INFO    ] No existing commands found in stream
[2026-06-12 16:18:41,045.045 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 16:18:41,048.048 INFO    ] Waiting 2.72 seconds before fallback handling...
[2026-06-12 16:18:44,142.142 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 16:18:44,144.144 INFO    ] Checking for system updates...
[2026-06-12 16:18:44,165.165 INFO    ] 200
[2026-06-12 16:18:44,167.167 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:18:44,196.196 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 16:18:44,198.198 INFO    ] No update needed
[2026-06-12 16:18:44,199.199 INFO    ] Checking for camera pi updates...
[2026-06-12 16:18:44,220.220 INFO    ] 200
[2026-06-12 16:18:44,221.221 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:18:44,244.244 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 16:18:44,294.294 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 16:18:44,296.296 INFO    ] No camera update needed
[2026-06-12 16:18:44,297.297 INFO    ] Script finished. Safe exiting...
[2026-06-12 16:18:44,298.298 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 16:18:44,301.301 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 16:18:44,304.304 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 16:18:46,342.342 INFO    ] ================================================
[2026-06-12 16:18:46,357.357 INFO    ] Launching Daemon at Fri Jun 12 16:18:46 IST 2026
[2026-06-12 16:18:46,368.368 INFO    ] ================================================
[2026-06-12 16:18:46,732.732 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 16:18:46
[2026-06-12 16:18:47,050.050 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 16:18:47,181.181 INFO    ] Initializing speech engine...
[2026-06-12 16:18:47,189.189 INFO    ] 2026-06-12 16:18:47
[2026-06-12 16:18:47,407.407 INFO    ] 2026-06-12 16:18:47
[2026-06-12 16:18:47,436.436 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 16:18:47,624.624 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 16:18:47,634.634 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 16:18:47,780.780 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 16:18:47,835.835 INFO    ] time= 12/06/2026 16:18:47
[2026-06-12 16:18:47,858.858 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 16:18:47,864.864 INFO    ] Checking for existing commands in stream...
[2026-06-12 16:18:47,932.932 INFO    ] No existing commands found in stream
[2026-06-12 16:18:52,946.946 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 16:18:52,950.950 INFO    ] Waiting 2.60 seconds before fallback handling...
[2026-06-12 16:18:55,924.924 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 16:18:55,926.926 INFO    ] Checking for system updates...
[2026-06-12 16:18:55,946.946 INFO    ] 200
[2026-06-12 16:18:55,948.948 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:18:55,980.980 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 16:18:55,981.981 INFO    ] No update needed
[2026-06-12 16:18:55,982.982 INFO    ] Checking for camera pi updates...
[2026-06-12 16:18:56,002.002 INFO    ] 200
[2026-06-12 16:18:56,004.004 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:18:56,028.028 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 16:18:56,077.077 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 16:18:56,079.079 INFO    ] No camera update needed
[2026-06-12 16:18:56,080.080 INFO    ] Script finished. Safe exiting...
[2026-06-12 16:18:56,081.081 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 16:18:56,084.084 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 16:18:56,087.087 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 16:18:58,127.127 INFO    ] ================================================
[2026-06-12 16:18:58,143.143 INFO    ] Launching Daemon at Fri Jun 12 16:18:58 IST 2026
[2026-06-12 16:18:58,153.153 INFO    ] ================================================
[2026-06-12 16:18:58,519.519 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 16:18:58
[2026-06-12 16:18:58,830.830 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 16:18:58,972.972 INFO    ] Initializing speech engine...
[2026-06-12 16:18:58,978.978 INFO    ] 2026-06-12 16:18:58
[2026-06-12 16:18:59,184.184 INFO    ] 2026-06-12 16:18:59
[2026-06-12 16:18:59,213.213 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 16:18:59,396.396 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 16:18:59,400.400 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 16:18:59,538.538 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 16:18:59,606.606 INFO    ] time= 12/06/2026 16:18:59
[2026-06-12 16:18:59,629.629 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 16:18:59,636.636 INFO    ] Checking for existing commands in stream...
[2026-06-12 16:18:59,703.703 INFO    ] No existing commands found in stream
[2026-06-12 16:19:04,717.717 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 16:19:04,720.720 INFO    ] Waiting 1.89 seconds before fallback handling...
[2026-06-12 16:19:06,988.988 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 16:19:06,989.989 INFO    ] Checking for system updates...
[2026-06-12 16:19:07,010.010 INFO    ] 200
[2026-06-12 16:19:07,011.011 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:19:07,040.040 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 16:19:07,042.042 INFO    ] No update needed
[2026-06-12 16:19:07,043.043 INFO    ] Checking for camera pi updates...
[2026-06-12 16:19:07,064.064 INFO    ] 200
[2026-06-12 16:19:07,065.065 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:19:07,090.090 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 16:19:07,144.144 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 16:19:07,146.146 INFO    ] No camera update needed
[2026-06-12 16:19:07,147.147 INFO    ] Script finished. Safe exiting...
[2026-06-12 16:19:07,148.148 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 16:19:07,151.151 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 16:19:07,154.154 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 16:19:09,192.192 INFO    ] ================================================
[2026-06-12 16:19:09,207.207 INFO    ] Launching Daemon at Fri Jun 12 16:19:09 IST 2026
[2026-06-12 16:19:09,219.219 INFO    ] ================================================
[2026-06-12 16:19:09,580.580 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 16:19:09
[2026-06-12 16:19:09,916.916 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 16:19:10,047.047 INFO    ] Initializing speech engine...
[2026-06-12 16:19:10,051.051 INFO    ] 2026-06-12 16:19:10
[2026-06-12 16:19:10,270.270 INFO    ] 2026-06-12 16:19:10
[2026-06-12 16:19:10,299.299 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 16:19:10,485.485 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 16:19:10,494.494 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 16:19:10,618.618 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 16:19:10,668.668 INFO    ] time= 12/06/2026 16:19:10
[2026-06-12 16:19:10,698.698 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 16:19:10,720.720 INFO    ] Checking for existing commands in stream...
[2026-06-12 16:19:10,792.792 INFO    ] No existing commands found in stream
[2026-06-12 16:19:15,801.801 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 16:19:15,804.804 INFO    ] Waiting 2.20 seconds before fallback handling...
[2026-06-12 16:19:18,394.394 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 16:19:18,395.395 INFO    ] Checking for system updates...
[2026-06-12 16:19:18,415.415 INFO    ] 200
[2026-06-12 16:19:18,417.417 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:19:18,449.449 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 16:19:18,450.450 INFO    ] No update needed
[2026-06-12 16:19:18,452.452 INFO    ] Checking for camera pi updates...
[2026-06-12 16:19:18,471.471 INFO    ] 200
[2026-06-12 16:19:18,472.472 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:19:18,495.495 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 16:19:18,534.534 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 16:19:18,536.536 INFO    ] No camera update needed
[2026-06-12 16:19:18,538.538 INFO    ] Script finished. Safe exiting...
[2026-06-12 16:19:18,540.540 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 16:19:18,544.544 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 16:19:18,548.548 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 16:19:20,581.581 INFO    ] ================================================
[2026-06-12 16:19:20,596.596 INFO    ] Launching Daemon at Fri Jun 12 16:19:20 IST 2026
[2026-06-12 16:19:20,608.608 INFO    ] ================================================
[2026-06-12 16:19:20,951.951 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 16:19:20
[2026-06-12 16:19:21,264.264 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 16:19:21,402.402 INFO    ] Initializing speech engine...
[2026-06-12 16:19:21,411.411 INFO    ] 2026-06-12 16:19:21
[2026-06-12 16:19:21,618.618 INFO    ] 2026-06-12 16:19:21
[2026-06-12 16:19:21,646.646 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 16:19:21,834.834 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 16:19:21,842.842 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 16:19:21,995.995 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 16:19:22,044.044 INFO    ] time= 12/06/2026 16:19:22
[2026-06-12 16:19:22,066.066 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 16:19:22,072.072 INFO    ] Checking for existing commands in stream...
[2026-06-12 16:19:22,141.141 INFO    ] No existing commands found in stream
[2026-06-12 16:19:27,150.150 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 16:19:27,153.153 INFO    ] Waiting 3.40 seconds before fallback handling...
[2026-06-12 16:19:32,817.817 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 16:19:32,820.820 INFO    ] Checking for system updates...
[2026-06-12 16:19:32,856.856 INFO    ] 200
[2026-06-12 16:19:32,859.859 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:19:32,913.913 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 16:19:32,915.915 INFO    ] No update needed
[2026-06-12 16:19:32,918.918 INFO    ] Checking for camera pi updates...
[2026-06-12 16:19:32,949.949 INFO    ] 200
[2026-06-12 16:19:32,951.951 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:19:32,976.976 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 16:19:33,024.024 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 16:19:33,026.026 INFO    ] No camera update needed
[2026-06-12 16:19:33,027.027 INFO    ] Script finished. Safe exiting...
[2026-06-12 16:19:33,029.029 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 16:19:33,032.032 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 16:19:33,035.035 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 16:19:35,074.074 INFO    ] ================================================
[2026-06-12 16:19:35,090.090 INFO    ] Launching Daemon at Fri Jun 12 16:19:35 IST 2026
[2026-06-12 16:19:35,100.100 INFO    ] ================================================
[2026-06-12 16:19:35,447.447 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 16:19:35
[2026-06-12 16:19:35,785.785 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 16:19:35,936.936 INFO    ] Initializing speech engine...
[2026-06-12 16:19:35,941.941 INFO    ] 2026-06-12 16:19:35
[2026-06-12 16:19:36,150.150 INFO    ] 2026-06-12 16:19:36
[2026-06-12 16:19:36,178.178 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 16:19:36,365.365 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 16:19:36,374.374 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 16:19:36,509.509 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 16:19:36,571.571 INFO    ] time= 12/06/2026 16:19:36
[2026-06-12 16:19:36,594.594 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 16:19:36,600.600 INFO    ] Checking for existing commands in stream...
[2026-06-12 16:19:36,669.669 INFO    ] No existing commands found in stream
[2026-06-12 16:19:41,702.702 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 16:19:41,711.711 INFO    ] Waiting 3.06 seconds before fallback handling...
[2026-06-12 16:19:45,156.156 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 16:19:45,158.158 INFO    ] Checking for system updates...
[2026-06-12 16:19:45,180.180 INFO    ] 200
[2026-06-12 16:19:45,182.182 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:19:45,216.216 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 16:19:45,218.218 INFO    ] No update needed
[2026-06-12 16:19:45,219.219 INFO    ] Checking for camera pi updates...
[2026-06-12 16:19:45,241.241 INFO    ] 200
[2026-06-12 16:19:45,243.243 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:19:45,266.266 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 16:19:45,406.406 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 16:19:45,407.407 INFO    ] No camera update needed
[2026-06-12 16:19:45,409.409 INFO    ] Script finished. Safe exiting...
[2026-06-12 16:19:45,410.410 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 16:19:45,413.413 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 16:19:45,416.416 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 16:19:47,455.455 INFO    ] ================================================
[2026-06-12 16:19:47,471.471 INFO    ] Launching Daemon at Fri Jun 12 16:19:47 IST 2026
[2026-06-12 16:19:47,482.482 INFO    ] ================================================
[2026-06-12 16:19:47,857.857 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 16:19:47
[2026-06-12 16:19:48,170.170 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 16:19:48,300.300 INFO    ] Initializing speech engine...
[2026-06-12 16:19:48,308.308 INFO    ] 2026-06-12 16:19:48
[2026-06-12 16:19:48,523.523 INFO    ] 2026-06-12 16:19:48
[2026-06-12 16:19:48,551.551 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 16:19:48,736.736 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 16:19:48,740.740 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 16:19:48,893.893 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 16:19:48,944.944 INFO    ] time= 12/06/2026 16:19:48
[2026-06-12 16:19:48,968.968 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 16:19:48,975.975 INFO    ] Checking for existing commands in stream...
[2026-06-12 16:19:49,042.042 INFO    ] No existing commands found in stream
[2026-06-12 16:19:54,051.051 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 16:19:54,054.054 INFO    ] Waiting 0.67 seconds before fallback handling...
[2026-06-12 16:19:55,118.118 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 16:19:55,120.120 INFO    ] Checking for system updates...
[2026-06-12 16:19:55,141.141 INFO    ] 200
[2026-06-12 16:19:55,142.142 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:19:55,174.174 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 16:19:55,176.176 INFO    ] No update needed
[2026-06-12 16:19:55,177.177 INFO    ] Checking for camera pi updates...
[2026-06-12 16:19:55,200.200 INFO    ] 200
[2026-06-12 16:19:55,201.201 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:19:55,224.224 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 16:19:55,265.265 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 16:19:55,267.267 INFO    ] No camera update needed
[2026-06-12 16:19:55,268.268 INFO    ] Script finished. Safe exiting...
[2026-06-12 16:19:55,270.270 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 16:19:55,273.273 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 16:19:55,276.276 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 16:19:57,316.316 INFO    ] ================================================
[2026-06-12 16:19:57,332.332 INFO    ] Launching Daemon at Fri Jun 12 16:19:57 IST 2026
[2026-06-12 16:19:57,343.343 INFO    ] ================================================
[2026-06-12 16:19:57,677.677 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 16:19:57
[2026-06-12 16:19:57,990.990 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 16:19:58,120.120 INFO    ] Initializing speech engine...
[2026-06-12 16:19:58,124.124 INFO    ] 2026-06-12 16:19:58
[2026-06-12 16:19:58,343.343 INFO    ] 2026-06-12 16:19:58
[2026-06-12 16:19:58,373.373 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 16:19:58,543.543 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 16:19:58,562.562 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 16:19:58,715.715 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 16:19:58,769.769 INFO    ] time= 12/06/2026 16:19:58
[2026-06-12 16:19:58,792.792 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 16:19:58,798.798 INFO    ] Checking for existing commands in stream...
[2026-06-12 16:19:58,889.889 INFO    ] No existing commands found in stream
[2026-06-12 16:20:03,898.898 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 16:20:03,901.901 INFO    ] Waiting 0.34 seconds before fallback handling...
[2026-06-12 16:20:07,157.157 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 16:20:07,160.160 INFO    ] Checking for system updates...
[2026-06-12 16:20:07,195.195 INFO    ] 200
[2026-06-12 16:20:07,198.198 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:20:07,258.258 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 16:20:07,261.261 INFO    ] No update needed
[2026-06-12 16:20:07,263.263 INFO    ] Checking for camera pi updates...
[2026-06-12 16:20:07,299.299 INFO    ] 200
[2026-06-12 16:20:07,301.301 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:20:07,325.325 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 16:20:07,368.368 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 16:20:07,369.369 INFO    ] No camera update needed
[2026-06-12 16:20:07,371.371 INFO    ] Script finished. Safe exiting...
[2026-06-12 16:20:07,372.372 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 16:20:07,375.375 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 16:20:07,377.377 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 16:20:09,417.417 INFO    ] ================================================
[2026-06-12 16:20:09,433.433 INFO    ] Launching Daemon at Fri Jun 12 16:20:09 IST 2026
[2026-06-12 16:20:09,444.444 INFO    ] ================================================
[2026-06-12 16:20:09,804.804 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 16:20:09
[2026-06-12 16:20:10,120.120 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 16:20:10,254.254 INFO    ] Initializing speech engine...
[2026-06-12 16:20:10,259.259 INFO    ] 2026-06-12 16:20:10
[2026-06-12 16:20:10,492.492 INFO    ] 2026-06-12 16:20:10
[2026-06-12 16:20:10,523.523 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 16:20:10,656.656 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 16:20:10,709.709 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 16:20:10,867.867 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 16:20:10,924.924 INFO    ] time= 12/06/2026 16:20:10
[2026-06-12 16:20:10,959.959 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 16:20:10,977.977 INFO    ] Checking for existing commands in stream...
[2026-06-12 16:20:11,052.052 INFO    ] No existing commands found in stream
[2026-06-12 16:20:16,063.063 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 16:20:16,066.066 INFO    ] Waiting 0.92 seconds before fallback handling...
[2026-06-12 16:20:17,312.312 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 16:20:17,313.313 INFO    ] Checking for system updates...
[2026-06-12 16:20:17,334.334 INFO    ] 200
[2026-06-12 16:20:17,335.335 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:20:17,367.367 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 16:20:17,368.368 INFO    ] No update needed
[2026-06-12 16:20:17,370.370 INFO    ] Checking for camera pi updates...
[2026-06-12 16:20:17,389.389 INFO    ] 200
[2026-06-12 16:20:17,391.391 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:20:17,416.416 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 16:20:17,468.468 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 16:20:17,470.470 INFO    ] No camera update needed
[2026-06-12 16:20:17,471.471 INFO    ] Script finished. Safe exiting...
[2026-06-12 16:20:17,472.472 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 16:20:17,475.475 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 16:20:17,478.478 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 16:20:19,518.518 INFO    ] ================================================
[2026-06-12 16:20:19,533.533 INFO    ] Launching Daemon at Fri Jun 12 16:20:19 IST 2026
[2026-06-12 16:20:19,544.544 INFO    ] ================================================
[2026-06-12 16:20:19,891.891 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 16:20:19
[2026-06-12 16:20:20,232.232 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 16:20:20,372.372 INFO    ] Initializing speech engine...
[2026-06-12 16:20:20,380.380 INFO    ] 2026-06-12 16:20:20
[2026-06-12 16:20:20,601.601 INFO    ] 2026-06-12 16:20:20
[2026-06-12 16:20:20,630.630 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 16:20:20,818.818 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 16:20:20,821.821 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 16:20:20,953.953 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 16:20:21,014.014 INFO    ] time= 12/06/2026 16:20:20
[2026-06-12 16:20:21,045.045 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 16:20:21,056.056 INFO    ] Checking for existing commands in stream...
[2026-06-12 16:20:21,130.130 INFO    ] No existing commands found in stream
[2026-06-12 16:20:26,145.145 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 16:20:26,148.148 INFO    ] Waiting 3.61 seconds before fallback handling...
[2026-06-12 16:20:30,134.134 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 16:20:30,135.135 INFO    ] Checking for system updates...
[2026-06-12 16:20:30,155.155 INFO    ] 200
[2026-06-12 16:20:30,157.157 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:20:30,186.186 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 16:20:30,187.187 INFO    ] No update needed
[2026-06-12 16:20:30,189.189 INFO    ] Checking for camera pi updates...
[2026-06-12 16:20:30,209.209 INFO    ] 200
[2026-06-12 16:20:30,211.211 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:20:30,236.236 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 16:20:30,300.300 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 16:20:30,301.301 INFO    ] No camera update needed
[2026-06-12 16:20:30,303.303 INFO    ] Script finished. Safe exiting...
[2026-06-12 16:20:30,304.304 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 16:20:30,307.307 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 16:20:30,309.309 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 16:20:32,340.340 INFO    ] ================================================
[2026-06-12 16:20:32,349.349 INFO    ] Launching Daemon at Fri Jun 12 16:20:32 IST 2026
[2026-06-12 16:20:32,356.356 INFO    ] ================================================
[2026-06-12 16:20:32,681.681 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 16:20:32
[2026-06-12 16:20:33,018.018 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 16:20:33,161.161 INFO    ] Initializing speech engine...
[2026-06-12 16:20:33,166.166 INFO    ] 2026-06-12 16:20:33
[2026-06-12 16:20:33,370.370 INFO    ] 2026-06-12 16:20:33
[2026-06-12 16:20:33,398.398 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 16:20:33,582.582 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 16:20:33,591.591 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 16:20:33,735.735 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 16:20:33,787.787 INFO    ] time= 12/06/2026 16:20:33
[2026-06-12 16:20:33,810.810 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 16:20:33,816.816 INFO    ] Checking for existing commands in stream...
[2026-06-12 16:20:33,906.906 INFO    ] No existing commands found in stream
[2026-06-12 16:20:38,915.915 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 16:20:38,918.918 INFO    ] Waiting 3.30 seconds before fallback handling...
[2026-06-12 16:20:42,603.603 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 16:20:42,605.605 INFO    ] Checking for system updates...
[2026-06-12 16:20:42,625.625 INFO    ] 200
[2026-06-12 16:20:42,626.626 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:20:42,656.656 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 16:20:42,657.657 INFO    ] No update needed
[2026-06-12 16:20:42,658.658 INFO    ] Checking for camera pi updates...
[2026-06-12 16:20:42,681.681 INFO    ] 200
[2026-06-12 16:20:42,682.682 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:20:42,707.707 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 16:20:42,767.767 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 16:20:42,768.768 INFO    ] No camera update needed
[2026-06-12 16:20:42,770.770 INFO    ] Script finished. Safe exiting...
[2026-06-12 16:20:42,771.771 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 16:20:42,774.774 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 16:20:42,777.777 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 16:20:44,815.815 INFO    ] ================================================
[2026-06-12 16:20:44,831.831 INFO    ] Launching Daemon at Fri Jun 12 16:20:44 IST 2026
[2026-06-12 16:20:44,842.842 INFO    ] ================================================
[2026-06-12 16:20:45,228.228 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 16:20:45
[2026-06-12 16:20:45,570.570 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 16:20:45,724.724 INFO    ] Initializing speech engine...
[2026-06-12 16:20:45,728.728 INFO    ] 2026-06-12 16:20:45
[2026-06-12 16:20:45,936.936 INFO    ] 2026-06-12 16:20:45
[2026-06-12 16:20:45,965.965 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 16:20:46,153.153 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 16:20:46,163.163 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 16:20:46,292.292 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 16:20:46,360.360 INFO    ] time= 12/06/2026 16:20:46
[2026-06-12 16:20:46,384.384 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 16:20:46,390.390 INFO    ] Checking for existing commands in stream...
[2026-06-12 16:20:46,458.458 INFO    ] No existing commands found in stream
[2026-06-12 16:20:51,472.472 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 16:20:51,475.475 INFO    ] Waiting 3.73 seconds before fallback handling...
[2026-06-12 16:20:55,565.565 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 16:20:55,566.566 INFO    ] Checking for system updates...
[2026-06-12 16:20:55,587.587 INFO    ] 200
[2026-06-12 16:20:55,588.588 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:20:55,623.623 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 16:20:55,625.625 INFO    ] No update needed
[2026-06-12 16:20:55,626.626 INFO    ] Checking for camera pi updates...
[2026-06-12 16:20:55,645.645 INFO    ] 200
[2026-06-12 16:20:55,647.647 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:20:55,672.672 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 16:20:55,714.714 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 16:20:55,715.715 INFO    ] No camera update needed
[2026-06-12 16:20:55,716.716 INFO    ] Script finished. Safe exiting...
[2026-06-12 16:20:55,718.718 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 16:20:55,721.721 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 16:20:55,724.724 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 16:20:57,762.762 INFO    ] ================================================
[2026-06-12 16:20:57,777.777 INFO    ] Launching Daemon at Fri Jun 12 16:20:57 IST 2026
[2026-06-12 16:20:57,788.788 INFO    ] ================================================
[2026-06-12 16:20:58,171.171 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 16:20:58
[2026-06-12 16:20:58,512.512 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 16:20:58,668.668 INFO    ] Initializing speech engine...
[2026-06-12 16:20:58,672.672 INFO    ] 2026-06-12 16:20:58
[2026-06-12 16:20:58,878.878 INFO    ] 2026-06-12 16:20:58
[2026-06-12 16:20:58,907.907 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 16:20:59,090.090 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 16:20:59,100.100 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 16:20:59,240.240 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 16:20:59,297.297 INFO    ] time= 12/06/2026 16:20:59
[2026-06-12 16:20:59,322.322 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 16:20:59,328.328 INFO    ] Checking for existing commands in stream...
[2026-06-12 16:20:59,395.395 INFO    ] No existing commands found in stream
[2026-06-12 16:21:04,409.409 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 16:21:04,413.413 INFO    ] Waiting 1.58 seconds before fallback handling...
[2026-06-12 16:21:06,415.415 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 16:21:06,417.417 INFO    ] Checking for system updates...
[2026-06-12 16:21:06,438.438 INFO    ] 200
[2026-06-12 16:21:06,439.439 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:21:06,472.472 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 16:21:06,474.474 INFO    ] No update needed
[2026-06-12 16:21:06,475.475 INFO    ] Checking for camera pi updates...
[2026-06-12 16:21:06,496.496 INFO    ] 200
[2026-06-12 16:21:06,498.498 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:21:06,523.523 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 16:21:06,563.563 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 16:21:06,564.564 INFO    ] No camera update needed
[2026-06-12 16:21:06,565.565 INFO    ] Script finished. Safe exiting...
[2026-06-12 16:21:06,567.567 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 16:21:06,570.570 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 16:21:06,573.573 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 16:21:08,612.612 INFO    ] ================================================
[2026-06-12 16:21:08,627.627 INFO    ] Launching Daemon at Fri Jun 12 16:21:08 IST 2026
[2026-06-12 16:21:08,638.638 INFO    ] ================================================
[2026-06-12 16:21:08,964.964 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 16:21:08
[2026-06-12 16:21:09,275.275 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 16:21:09,407.407 INFO    ] Initializing speech engine...
[2026-06-12 16:21:09,415.415 INFO    ] 2026-06-12 16:21:09
[2026-06-12 16:21:09,629.629 INFO    ] 2026-06-12 16:21:09
[2026-06-12 16:21:09,658.658 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 16:21:09,843.843 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 16:21:09,846.846 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 16:21:10,000.000 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 16:21:10,054.054 INFO    ] time= 12/06/2026 16:21:10
[2026-06-12 16:21:10,076.076 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 16:21:10,082.082 INFO    ] Checking for existing commands in stream...
[2026-06-12 16:21:10,150.150 INFO    ] No existing commands found in stream
[2026-06-12 16:21:15,159.159 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 16:21:15,162.162 INFO    ] Waiting 1.28 seconds before fallback handling...
[2026-06-12 16:21:16,845.845 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 16:21:16,846.846 INFO    ] Checking for system updates...
[2026-06-12 16:21:16,867.867 INFO    ] 200
[2026-06-12 16:21:16,868.868 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:21:16,900.900 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 16:21:16,902.902 INFO    ] No update needed
[2026-06-12 16:21:16,904.904 INFO    ] Checking for camera pi updates...
[2026-06-12 16:21:16,925.925 INFO    ] 200
[2026-06-12 16:21:16,926.926 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:21:16,952.952 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 16:21:16,991.991 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 16:21:16,992.992 INFO    ] No camera update needed
[2026-06-12 16:21:16,994.994 INFO    ] Script finished. Safe exiting...
[2026-06-12 16:21:16,995.995 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 16:21:16,998.998 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 16:21:17,001.001 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 16:21:19,039.039 INFO    ] ================================================
[2026-06-12 16:21:19,055.055 INFO    ] Launching Daemon at Fri Jun 12 16:21:19 IST 2026
[2026-06-12 16:21:19,066.066 INFO    ] ================================================
[2026-06-12 16:21:19,402.402 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 16:21:19
[2026-06-12 16:21:19,713.713 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 16:21:19,844.844 INFO    ] Initializing speech engine...
[2026-06-12 16:21:19,852.852 INFO    ] 2026-06-12 16:21:19
[2026-06-12 16:21:20,063.063 INFO    ] 2026-06-12 16:21:20
[2026-06-12 16:21:20,092.092 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 16:21:20,276.276 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 16:21:20,284.284 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 16:21:20,460.460 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 16:21:20,494.494 INFO    ] time= 12/06/2026 16:21:20
[2026-06-12 16:21:20,504.504 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 16:21:20,511.511 INFO    ] Checking for existing commands in stream...
[2026-06-12 16:21:20,577.577 INFO    ] No existing commands found in stream
[2026-06-12 16:21:25,591.591 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 16:21:25,594.594 INFO    ] Waiting 2.06 seconds before fallback handling...
[2026-06-12 16:21:28,037.037 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 16:21:28,038.038 INFO    ] Checking for system updates...
[2026-06-12 16:21:28,060.060 INFO    ] 200
[2026-06-12 16:21:28,061.061 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:21:28,091.091 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 16:21:28,092.092 INFO    ] No update needed
[2026-06-12 16:21:28,094.094 INFO    ] Checking for camera pi updates...
[2026-06-12 16:21:28,113.113 INFO    ] 200
[2026-06-12 16:21:28,114.114 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:21:28,137.137 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 16:21:28,175.175 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 16:21:28,177.177 INFO    ] No camera update needed
[2026-06-12 16:21:28,178.178 INFO    ] Script finished. Safe exiting...
[2026-06-12 16:21:28,179.179 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 16:21:28,182.182 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 16:21:28,185.185 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 16:21:30,224.224 INFO    ] ================================================
[2026-06-12 16:21:30,240.240 INFO    ] Launching Daemon at Fri Jun 12 16:21:30 IST 2026
[2026-06-12 16:21:30,251.251 INFO    ] ================================================
[2026-06-12 16:21:30,623.623 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 16:21:30
[2026-06-12 16:21:30,964.964 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 16:21:31,108.108 INFO    ] Initializing speech engine...
[2026-06-12 16:21:31,116.116 INFO    ] 2026-06-12 16:21:31
[2026-06-12 16:21:31,336.336 INFO    ] 2026-06-12 16:21:31
[2026-06-12 16:21:31,368.368 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 16:21:31,518.518 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 16:21:31,546.546 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 16:21:31,712.712 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 16:21:31,753.753 INFO    ] time= 12/06/2026 16:21:31
[2026-06-12 16:21:31,811.811 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 16:21:31,856.856 INFO    ] Checking for existing commands in stream...
[2026-06-12 16:21:31,984.984 INFO    ] No existing commands found in stream
[2026-06-12 16:21:37,013.013 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 16:21:37,016.016 INFO    ] Waiting 1.40 seconds before fallback handling...
[2026-06-12 16:21:38,787.787 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 16:21:38,788.788 INFO    ] Checking for system updates...
[2026-06-12 16:21:38,809.809 INFO    ] 200
[2026-06-12 16:21:38,810.810 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:21:38,840.840 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 16:21:38,841.841 INFO    ] No update needed
[2026-06-12 16:21:38,843.843 INFO    ] Checking for camera pi updates...
[2026-06-12 16:21:38,864.864 INFO    ] 200
[2026-06-12 16:21:38,866.866 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:21:38,889.889 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 16:21:38,926.926 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 16:21:38,927.927 INFO    ] No camera update needed
[2026-06-12 16:21:38,928.928 INFO    ] Script finished. Safe exiting...
[2026-06-12 16:21:38,930.930 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 16:21:38,933.933 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 16:21:38,936.936 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 16:21:40,974.974 INFO    ] ================================================
[2026-06-12 16:21:40,990.990 INFO    ] Launching Daemon at Fri Jun 12 16:21:40 IST 2026
[2026-06-12 16:21:41,000.000 INFO    ] ================================================
[2026-06-12 16:21:41,358.358 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 16:21:41
[2026-06-12 16:21:41,700.700 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 16:21:41,855.855 INFO    ] Initializing speech engine...
[2026-06-12 16:21:41,859.859 INFO    ] 2026-06-12 16:21:41
[2026-06-12 16:21:42,067.067 INFO    ] 2026-06-12 16:21:42
[2026-06-12 16:21:42,096.096 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 16:21:42,280.280 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 16:21:42,291.291 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 16:21:42,423.423 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 16:21:42,485.485 INFO    ] time= 12/06/2026 16:21:42
[2026-06-12 16:21:42,510.510 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 16:21:42,516.516 INFO    ] Checking for existing commands in stream...
[2026-06-12 16:21:42,583.583 INFO    ] No existing commands found in stream
[2026-06-12 16:21:47,598.598 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 16:21:47,601.601 INFO    ] Waiting 1.85 seconds before fallback handling...
[2026-06-12 16:21:49,882.882 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 16:21:49,883.883 INFO    ] Checking for system updates...
[2026-06-12 16:21:49,904.904 INFO    ] 200
[2026-06-12 16:21:49,906.906 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:21:49,936.936 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 16:21:49,937.937 INFO    ] No update needed
[2026-06-12 16:21:49,939.939 INFO    ] Checking for camera pi updates...
[2026-06-12 16:21:49,958.958 INFO    ] 200
[2026-06-12 16:21:49,959.959 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:21:49,983.983 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 16:21:50,125.125 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 16:21:50,127.127 INFO    ] No camera update needed
[2026-06-12 16:21:50,128.128 INFO    ] Script finished. Safe exiting...
[2026-06-12 16:21:50,130.130 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 16:21:50,133.133 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 16:21:50,136.136 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 16:21:52,174.174 INFO    ] ================================================
[2026-06-12 16:21:52,190.190 INFO    ] Launching Daemon at Fri Jun 12 16:21:52 IST 2026
[2026-06-12 16:21:52,202.202 INFO    ] ================================================
[2026-06-12 16:21:52,554.554 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 16:21:52
[2026-06-12 16:21:52,866.866 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 16:21:53,000.000 INFO    ] Initializing speech engine...
[2026-06-12 16:21:53,003.003 INFO    ] 2026-06-12 16:21:53
[2026-06-12 16:21:53,230.230 INFO    ] 2026-06-12 16:21:53
[2026-06-12 16:21:53,260.260 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 16:21:53,381.381 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 16:21:53,443.443 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 16:21:53,581.581 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 16:21:53,646.646 INFO    ] time= 12/06/2026 16:21:53
[2026-06-12 16:21:53,670.670 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 16:21:53,676.676 INFO    ] Checking for existing commands in stream...
[2026-06-12 16:21:53,743.743 INFO    ] No existing commands found in stream
[2026-06-12 16:21:58,757.757 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 16:21:58,760.760 INFO    ] Waiting 2.25 seconds before fallback handling...
[2026-06-12 16:22:01,648.648 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 16:22:01,654.654 INFO    ] Checking for system updates...
[2026-06-12 16:22:01,692.692 INFO    ] 200
[2026-06-12 16:22:01,694.694 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:22:01,744.744 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 16:22:01,746.746 INFO    ] No update needed
[2026-06-12 16:22:01,748.748 INFO    ] Checking for camera pi updates...
[2026-06-12 16:22:01,784.784 INFO    ] 200
[2026-06-12 16:22:01,786.786 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:22:01,849.849 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 16:22:01,912.912 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 16:22:01,913.913 INFO    ] No camera update needed
[2026-06-12 16:22:01,915.915 INFO    ] Script finished. Safe exiting...
[2026-06-12 16:22:01,918.918 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 16:22:01,925.925 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 16:22:01,931.931 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 16:22:03,965.965 INFO    ] ================================================
[2026-06-12 16:22:03,981.981 INFO    ] Launching Daemon at Fri Jun 12 16:22:03 IST 2026
[2026-06-12 16:22:03,993.993 INFO    ] ================================================
[2026-06-12 16:22:04,323.323 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 16:22:04
[2026-06-12 16:22:04,634.634 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 16:22:04,767.767 INFO    ] Initializing speech engine...
[2026-06-12 16:22:04,772.772 INFO    ] 2026-06-12 16:22:04
[2026-06-12 16:22:05,001.001 INFO    ] 2026-06-12 16:22:04
[2026-06-12 16:22:05,032.032 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 16:22:05,230.230 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 16:22:05,233.233 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 16:22:05,378.378 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 16:22:05,444.444 INFO    ] time= 12/06/2026 16:22:05
[2026-06-12 16:22:05,474.474 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 16:22:05,485.485 INFO    ] Checking for existing commands in stream...
[2026-06-12 16:22:05,583.583 INFO    ] No existing commands found in stream
[2026-06-12 16:22:10,592.592 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 16:22:10,594.594 INFO    ] Waiting 3.64 seconds before fallback handling...
[2026-06-12 16:22:14,641.641 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 16:22:14,642.642 INFO    ] Checking for system updates...
[2026-06-12 16:22:14,663.663 INFO    ] 200
[2026-06-12 16:22:14,664.664 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:22:14,694.694 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 16:22:14,695.695 INFO    ] No update needed
[2026-06-12 16:22:14,697.697 INFO    ] Checking for camera pi updates...
[2026-06-12 16:22:14,720.720 INFO    ] 200
[2026-06-12 16:22:14,721.721 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:22:14,744.744 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 16:22:14,786.786 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 16:22:14,787.787 INFO    ] No camera update needed
[2026-06-12 16:22:14,789.789 INFO    ] Script finished. Safe exiting...
[2026-06-12 16:22:14,790.790 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 16:22:14,793.793 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 16:22:14,796.796 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 16:22:16,835.835 INFO    ] ================================================
[2026-06-12 16:22:16,852.852 INFO    ] Launching Daemon at Fri Jun 12 16:22:16 IST 2026
[2026-06-12 16:22:16,863.863 INFO    ] ================================================
[2026-06-12 16:22:17,214.214 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 16:22:17
[2026-06-12 16:22:17,530.530 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 16:22:17,674.674 INFO    ] Initializing speech engine...
[2026-06-12 16:22:17,678.678 INFO    ] 2026-06-12 16:22:17
[2026-06-12 16:22:17,882.882 INFO    ] 2026-06-12 16:22:17
[2026-06-12 16:22:17,912.912 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 16:22:18,100.100 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 16:22:18,109.109 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 16:22:18,307.307 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 16:22:18,332.332 INFO    ] time= 12/06/2026 16:22:18
[2026-06-12 16:22:18,338.338 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 16:22:18,340.340 INFO    ] Checking for existing commands in stream...
[2026-06-12 16:22:18,407.407 INFO    ] No existing commands found in stream
[2026-06-12 16:22:23,421.421 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 16:22:23,424.424 INFO    ] Waiting 1.40 seconds before fallback handling...
[2026-06-12 16:22:25,217.217 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 16:22:25,218.218 INFO    ] Checking for system updates...
[2026-06-12 16:22:25,239.239 INFO    ] 200
[2026-06-12 16:22:25,240.240 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:22:25,273.273 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 16:22:25,274.274 INFO    ] No update needed
[2026-06-12 16:22:25,275.275 INFO    ] Checking for camera pi updates...
[2026-06-12 16:22:25,296.296 INFO    ] 200
[2026-06-12 16:22:25,297.297 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:22:25,320.320 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 16:22:25,349.349 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 16:22:25,351.351 INFO    ] No camera update needed
[2026-06-12 16:22:25,352.352 INFO    ] Script finished. Safe exiting...
[2026-06-12 16:22:25,353.353 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 16:22:25,356.356 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 16:22:25,359.359 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 16:22:27,400.400 INFO    ] ================================================
[2026-06-12 16:22:27,416.416 INFO    ] Launching Daemon at Fri Jun 12 16:22:27 IST 2026
[2026-06-12 16:22:27,427.427 INFO    ] ================================================
[2026-06-12 16:22:27,752.752 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 16:22:27
[2026-06-12 16:22:28,063.063 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 16:22:28,206.206 INFO    ] Initializing speech engine...
[2026-06-12 16:22:28,211.211 INFO    ] 2026-06-12 16:22:28
[2026-06-12 16:22:28,425.425 INFO    ] 2026-06-12 16:22:28
[2026-06-12 16:22:28,454.454 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 16:22:28,641.641 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 16:22:28,650.650 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 16:22:28,797.797 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 16:22:28,850.850 INFO    ] time= 12/06/2026 16:22:28
[2026-06-12 16:22:28,874.874 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 16:22:28,880.880 INFO    ] Checking for existing commands in stream...
[2026-06-12 16:22:28,972.972 INFO    ] No existing commands found in stream
[2026-06-12 16:22:33,987.987 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 16:22:33,990.990 INFO    ] Waiting 0.62 seconds before fallback handling...
[2026-06-12 16:22:34,989.989 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 16:22:34,991.991 INFO    ] Checking for system updates...
[2026-06-12 16:22:35,011.011 INFO    ] 200
[2026-06-12 16:22:35,013.013 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:22:35,042.042 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 16:22:35,044.044 INFO    ] No update needed
[2026-06-12 16:22:35,045.045 INFO    ] Checking for camera pi updates...
[2026-06-12 16:22:35,066.066 INFO    ] 200
[2026-06-12 16:22:35,068.068 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:22:35,092.092 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 16:22:35,144.144 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 16:22:35,145.145 INFO    ] No camera update needed
[2026-06-12 16:22:35,147.147 INFO    ] Script finished. Safe exiting...
[2026-06-12 16:22:35,148.148 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 16:22:35,151.151 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 16:22:35,155.155 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 16:22:37,192.192 INFO    ] ================================================
[2026-06-12 16:22:37,208.208 INFO    ] Launching Daemon at Fri Jun 12 16:22:37 IST 2026
[2026-06-12 16:22:37,219.219 INFO    ] ================================================
[2026-06-12 16:22:37,580.580 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 16:22:37
[2026-06-12 16:22:37,892.892 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 16:22:38,022.022 INFO    ] Initializing speech engine...
[2026-06-12 16:22:38,030.030 INFO    ] 2026-06-12 16:22:38
[2026-06-12 16:22:38,240.240 INFO    ] 2026-06-12 16:22:38
[2026-06-12 16:22:38,269.269 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 16:22:38,453.453 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 16:22:38,457.457 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 16:22:38,608.608 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 16:22:38,661.661 INFO    ] time= 12/06/2026 16:22:38
[2026-06-12 16:22:38,683.683 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 16:22:38,690.690 INFO    ] Checking for existing commands in stream...
[2026-06-12 16:22:38,757.757 INFO    ] No existing commands found in stream
[2026-06-12 16:22:43,789.789 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 16:22:43,792.792 INFO    ] Waiting 2.63 seconds before fallback handling...
[2026-06-12 16:22:46,758.758 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 16:22:46,760.760 INFO    ] Checking for system updates...
[2026-06-12 16:22:46,796.796 INFO    ] 200
[2026-06-12 16:22:46,798.798 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:22:46,863.863 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 16:22:46,870.870 INFO    ] No update needed
[2026-06-12 16:22:46,872.872 INFO    ] Checking for camera pi updates...
[2026-06-12 16:22:46,902.902 INFO    ] 200
[2026-06-12 16:22:46,904.904 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:22:46,941.941 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 16:22:46,989.989 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 16:22:46,990.990 INFO    ] No camera update needed
[2026-06-12 16:22:46,991.991 INFO    ] Script finished. Safe exiting...
[2026-06-12 16:22:46,993.993 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 16:22:46,996.996 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 16:22:46,998.998 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 16:22:49,037.037 INFO    ] ================================================
[2026-06-12 16:22:49,053.053 INFO    ] Launching Daemon at Fri Jun 12 16:22:49 IST 2026
[2026-06-12 16:22:49,064.064 INFO    ] ================================================
[2026-06-12 16:22:49,395.395 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 16:22:49
[2026-06-12 16:22:49,712.712 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 16:22:49,844.844 INFO    ] Initializing speech engine...
[2026-06-12 16:22:49,852.852 INFO    ] 2026-06-12 16:22:49
[2026-06-12 16:22:50,067.067 INFO    ] 2026-06-12 16:22:50
[2026-06-12 16:22:50,096.096 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 16:22:50,280.280 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 16:22:50,289.289 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 16:22:50,439.439 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 16:22:50,487.487 INFO    ] time= 12/06/2026 16:22:50
[2026-06-12 16:22:50,510.510 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 16:22:50,515.515 INFO    ] Checking for existing commands in stream...
[2026-06-12 16:22:50,582.582 INFO    ] No existing commands found in stream
[2026-06-12 16:22:55,596.596 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 16:22:55,599.599 INFO    ] Waiting 0.12 seconds before fallback handling...
[2026-06-12 16:22:56,089.089 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 16:22:56,091.091 INFO    ] Checking for system updates...
[2026-06-12 16:22:56,111.111 INFO    ] 200
[2026-06-12 16:22:56,113.113 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:22:56,143.143 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 16:22:56,144.144 INFO    ] No update needed
[2026-06-12 16:22:56,146.146 INFO    ] Checking for camera pi updates...
[2026-06-12 16:22:56,165.165 INFO    ] 200
[2026-06-12 16:22:56,166.166 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:22:56,189.189 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 16:22:56,231.231 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 16:22:56,232.232 INFO    ] No camera update needed
[2026-06-12 16:22:56,233.233 INFO    ] Script finished. Safe exiting...
[2026-06-12 16:22:56,234.234 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 16:22:56,237.237 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 16:22:56,240.240 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 16:22:58,279.279 INFO    ] ================================================
[2026-06-12 16:22:58,295.295 INFO    ] Launching Daemon at Fri Jun 12 16:22:58 IST 2026
[2026-06-12 16:22:58,307.307 INFO    ] ================================================
[2026-06-12 16:22:58,672.672 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 16:22:58
[2026-06-12 16:22:59,010.010 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 16:22:59,165.165 INFO    ] Initializing speech engine...
[2026-06-12 16:22:59,169.169 INFO    ] 2026-06-12 16:22:59
[2026-06-12 16:22:59,379.379 INFO    ] 2026-06-12 16:22:59
[2026-06-12 16:22:59,408.408 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 16:22:59,538.538 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 16:22:59,597.597 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 16:22:59,737.737 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 16:22:59,802.802 INFO    ] time= 12/06/2026 16:22:59
[2026-06-12 16:22:59,830.830 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 16:22:59,837.837 INFO    ] Checking for existing commands in stream...
[2026-06-12 16:22:59,905.905 INFO    ] No existing commands found in stream
[2026-06-12 16:23:04,930.930 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 16:23:04,933.933 INFO    ] Waiting 1.55 seconds before fallback handling...
[2026-06-12 16:23:06,882.882 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 16:23:06,884.884 INFO    ] Checking for system updates...
[2026-06-12 16:23:06,905.905 INFO    ] 200
[2026-06-12 16:23:06,906.906 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:23:06,936.936 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 16:23:06,937.937 INFO    ] No update needed
[2026-06-12 16:23:06,939.939 INFO    ] Checking for camera pi updates...
[2026-06-12 16:23:06,958.958 INFO    ] 200
[2026-06-12 16:23:06,960.960 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:23:06,983.983 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 16:23:07,021.021 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 16:23:07,022.022 INFO    ] No camera update needed
[2026-06-12 16:23:07,024.024 INFO    ] Script finished. Safe exiting...
[2026-06-12 16:23:07,025.025 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 16:23:07,028.028 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 16:23:07,031.031 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 16:23:09,070.070 INFO    ] ================================================
[2026-06-12 16:23:09,086.086 INFO    ] Launching Daemon at Fri Jun 12 16:23:09 IST 2026
[2026-06-12 16:23:09,098.098 INFO    ] ================================================
[2026-06-12 16:23:09,454.454 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 16:23:09
[2026-06-12 16:23:09,768.768 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 16:23:09,905.905 INFO    ] Initializing speech engine...
[2026-06-12 16:23:09,915.915 INFO    ] 2026-06-12 16:23:09
[2026-06-12 16:23:10,118.118 INFO    ] 2026-06-12 16:23:10
[2026-06-12 16:23:10,147.147 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 16:23:10,330.330 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 16:23:10,339.339 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 16:23:10,479.479 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 16:23:10,535.535 INFO    ] time= 12/06/2026 16:23:10
[2026-06-12 16:23:10,558.558 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 16:23:10,565.565 INFO    ] Checking for existing commands in stream...
[2026-06-12 16:23:10,631.631 INFO    ] No existing commands found in stream
[2026-06-12 16:23:15,635.635 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 16:23:15,638.638 INFO    ] Waiting 2.69 seconds before fallback handling...
[2026-06-12 16:23:23,772.772 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 16:23:23,774.774 INFO    ] Checking for system updates...
[2026-06-12 16:23:23,794.794 INFO    ] 200
[2026-06-12 16:23:23,796.796 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:23:23,828.828 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 16:23:23,829.829 INFO    ] No update needed
[2026-06-12 16:23:23,831.831 INFO    ] Checking for camera pi updates...
[2026-06-12 16:23:23,853.853 INFO    ] 200
[2026-06-12 16:23:23,854.854 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:23:23,879.879 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 16:23:23,928.928 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 16:23:23,929.929 INFO    ] No camera update needed
[2026-06-12 16:23:23,930.930 INFO    ] Script finished. Safe exiting...
[2026-06-12 16:23:23,932.932 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 16:23:23,935.935 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 16:23:23,937.937 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 16:23:25,977.977 INFO    ] ================================================
[2026-06-12 16:23:25,992.992 INFO    ] Launching Daemon at Fri Jun 12 16:23:25 IST 2026
[2026-06-12 16:23:26,002.002 INFO    ] ================================================
[2026-06-12 16:23:26,365.365 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 16:23:26
[2026-06-12 16:23:26,678.678 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 16:23:26,821.821 INFO    ] Initializing speech engine...
[2026-06-12 16:23:26,826.826 INFO    ] 2026-06-12 16:23:26
[2026-06-12 16:23:27,031.031 INFO    ] 2026-06-12 16:23:27
[2026-06-12 16:23:27,061.061 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 16:23:27,245.245 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 16:23:27,254.254 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 16:23:27,403.403 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 16:23:27,456.456 INFO    ] time= 12/06/2026 16:23:27
[2026-06-12 16:23:27,479.479 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 16:23:27,485.485 INFO    ] Checking for existing commands in stream...
[2026-06-12 16:23:27,553.553 INFO    ] No existing commands found in stream
[2026-06-12 16:23:32,561.561 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 16:23:32,563.563 INFO    ] Waiting 1.83 seconds before fallback handling...
[2026-06-12 16:23:34,803.803 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 16:23:34,804.804 INFO    ] Checking for system updates...
[2026-06-12 16:23:34,825.825 INFO    ] 200
[2026-06-12 16:23:34,826.826 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:23:34,858.858 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 16:23:34,860.860 INFO    ] No update needed
[2026-06-12 16:23:34,861.861 INFO    ] Checking for camera pi updates...
[2026-06-12 16:23:34,880.880 INFO    ] 200
[2026-06-12 16:23:34,882.882 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:23:34,905.905 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 16:23:34,993.993 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 16:23:34,994.994 INFO    ] No camera update needed
[2026-06-12 16:23:34,995.995 INFO    ] Script finished. Safe exiting...
[2026-06-12 16:23:34,997.997 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 16:23:35,000.000 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 16:23:35,003.003 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 16:23:37,045.045 INFO    ] ================================================
[2026-06-12 16:23:37,065.065 INFO    ] Launching Daemon at Fri Jun 12 16:23:37 IST 2026
[2026-06-12 16:23:37,076.076 INFO    ] ================================================
[2026-06-12 16:23:37,428.428 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 16:23:37
[2026-06-12 16:23:37,742.742 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 16:23:37,879.879 INFO    ] Initializing speech engine...
[2026-06-12 16:23:37,887.887 INFO    ] 2026-06-12 16:23:37
[2026-06-12 16:23:38,095.095 INFO    ] 2026-06-12 16:23:38
[2026-06-12 16:23:38,124.124 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 16:23:38,309.309 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 16:23:38,312.312 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 16:23:38,450.450 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 16:23:38,518.518 INFO    ] time= 12/06/2026 16:23:38
[2026-06-12 16:23:38,543.543 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 16:23:38,550.550 INFO    ] Checking for existing commands in stream...
[2026-06-12 16:23:38,617.617 INFO    ] No existing commands found in stream
[2026-06-12 16:23:43,636.636 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 16:23:43,639.639 INFO    ] Waiting 3.40 seconds before fallback handling...
[2026-06-12 16:23:47,458.458 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 16:23:47,459.459 INFO    ] Checking for system updates...
[2026-06-12 16:23:47,480.480 INFO    ] 200
[2026-06-12 16:23:47,482.482 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:23:47,512.512 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 16:23:47,513.513 INFO    ] No update needed
[2026-06-12 16:23:47,515.515 INFO    ] Checking for camera pi updates...
[2026-06-12 16:23:47,535.535 INFO    ] 200
[2026-06-12 16:23:47,537.537 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:23:47,563.563 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 16:23:47,617.617 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 16:23:47,619.619 INFO    ] No camera update needed
[2026-06-12 16:23:47,620.620 INFO    ] Script finished. Safe exiting...
[2026-06-12 16:23:47,622.622 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 16:23:47,625.625 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 16:23:47,628.628 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 16:23:49,666.666 INFO    ] ================================================
[2026-06-12 16:23:49,682.682 INFO    ] Launching Daemon at Fri Jun 12 16:23:49 IST 2026
[2026-06-12 16:23:49,692.692 INFO    ] ================================================
[2026-06-12 16:23:50,067.067 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 16:23:50
[2026-06-12 16:23:50,400.400 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 16:23:50,541.541 INFO    ] Initializing speech engine...
[2026-06-12 16:23:50,553.553 INFO    ] 2026-06-12 16:23:50
[2026-06-12 16:23:50,764.764 INFO    ] 2026-06-12 16:23:50
[2026-06-12 16:23:50,795.795 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 16:23:50,980.980 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 16:23:50,989.989 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 16:23:51,141.141 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 16:23:51,190.190 INFO    ] time= 12/06/2026 16:23:51
[2026-06-12 16:23:51,212.212 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 16:23:51,219.219 INFO    ] Checking for existing commands in stream...
[2026-06-12 16:23:51,286.286 INFO    ] No existing commands found in stream
[2026-06-12 16:23:56,301.301 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 16:23:56,304.304 INFO    ] Waiting 0.80 seconds before fallback handling...
[2026-06-12 16:23:57,501.501 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 16:23:57,502.502 INFO    ] Checking for system updates...
[2026-06-12 16:23:57,525.525 INFO    ] 200
[2026-06-12 16:23:57,527.527 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:23:57,559.559 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 16:23:57,561.561 INFO    ] No update needed
[2026-06-12 16:23:57,562.562 INFO    ] Checking for camera pi updates...
[2026-06-12 16:23:57,582.582 INFO    ] 200
[2026-06-12 16:23:57,583.583 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:23:57,607.607 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 16:23:57,759.759 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 16:23:57,760.760 INFO    ] No camera update needed
[2026-06-12 16:23:57,762.762 INFO    ] Script finished. Safe exiting...
[2026-06-12 16:23:57,763.763 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 16:23:57,766.766 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 16:23:57,769.769 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 16:23:59,807.807 INFO    ] ================================================
[2026-06-12 16:23:59,822.822 INFO    ] Launching Daemon at Fri Jun 12 16:23:59 IST 2026
[2026-06-12 16:23:59,833.833 INFO    ] ================================================
[2026-06-12 16:24:00,204.204 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 16:24:00
[2026-06-12 16:24:00,539.539 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 16:24:00,688.688 INFO    ] Initializing speech engine...
[2026-06-12 16:24:00,693.693 INFO    ] 2026-06-12 16:24:00
[2026-06-12 16:24:00,901.901 INFO    ] 2026-06-12 16:24:00
[2026-06-12 16:24:00,930.930 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 16:24:01,113.113 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 16:24:01,118.118 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 16:24:01,271.271 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 16:24:01,274.274 INFO    ] time= 12/06/2026 16:24:01
[2026-06-12 16:24:01,289.289 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 16:24:01,292.292 INFO    ] Checking for existing commands in stream...
[2026-06-12 16:24:01,362.362 INFO    ] No existing commands found in stream
[2026-06-12 16:24:06,371.371 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 16:24:06,374.374 INFO    ] Waiting 3.09 seconds before fallback handling...
[2026-06-12 16:24:09,842.842 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 16:24:09,844.844 INFO    ] Checking for system updates...
[2026-06-12 16:24:09,865.865 INFO    ] 200
[2026-06-12 16:24:09,866.866 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:24:09,896.896 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 16:24:09,898.898 INFO    ] No update needed
[2026-06-12 16:24:09,899.899 INFO    ] Checking for camera pi updates...
[2026-06-12 16:24:09,918.918 INFO    ] 200
[2026-06-12 16:24:09,919.919 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:24:09,943.943 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 16:24:09,983.983 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 16:24:09,984.984 INFO    ] No camera update needed
[2026-06-12 16:24:09,986.986 INFO    ] Script finished. Safe exiting...
[2026-06-12 16:24:09,987.987 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 16:24:09,990.990 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 16:24:09,993.993 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 16:24:12,032.032 INFO    ] ================================================
[2026-06-12 16:24:12,048.048 INFO    ] Launching Daemon at Fri Jun 12 16:24:12 IST 2026
[2026-06-12 16:24:12,058.058 INFO    ] ================================================
[2026-06-12 16:24:12,406.406 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 16:24:12
[2026-06-12 16:24:12,741.741 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 16:24:12,885.885 INFO    ] Initializing speech engine...
[2026-06-12 16:24:12,896.896 INFO    ] 2026-06-12 16:24:12
[2026-06-12 16:24:13,106.106 INFO    ] 2026-06-12 16:24:13
[2026-06-12 16:24:13,134.134 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 16:24:13,322.322 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 16:24:13,331.331 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 16:24:13,484.484 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 16:24:13,533.533 INFO    ] time= 12/06/2026 16:24:13
[2026-06-12 16:24:13,556.556 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 16:24:13,562.562 INFO    ] Checking for existing commands in stream...
[2026-06-12 16:24:13,630.630 INFO    ] No existing commands found in stream
[2026-06-12 16:24:18,639.639 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 16:24:18,643.643 INFO    ] Waiting 2.95 seconds before fallback handling...
[2026-06-12 16:24:21,996.996 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 16:24:21,997.997 INFO    ] Checking for system updates...
[2026-06-12 16:24:22,018.018 INFO    ] 200
[2026-06-12 16:24:22,020.020 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:24:22,052.052 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 16:24:22,054.054 INFO    ] No update needed
[2026-06-12 16:24:22,055.055 INFO    ] Checking for camera pi updates...
[2026-06-12 16:24:22,078.078 INFO    ] 200
[2026-06-12 16:24:22,080.080 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:24:22,107.107 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 16:24:22,149.149 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 16:24:22,150.150 INFO    ] No camera update needed
[2026-06-12 16:24:22,152.152 INFO    ] Script finished. Safe exiting...
[2026-06-12 16:24:22,153.153 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 16:24:22,156.156 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 16:24:22,160.160 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 16:24:24,198.198 INFO    ] ================================================
[2026-06-12 16:24:24,214.214 INFO    ] Launching Daemon at Fri Jun 12 16:24:24 IST 2026
[2026-06-12 16:24:24,224.224 INFO    ] ================================================
[2026-06-12 16:24:24,588.588 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 16:24:24
[2026-06-12 16:24:24,921.921 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 16:24:25,069.069 INFO    ] Initializing speech engine...
[2026-06-12 16:24:25,078.078 INFO    ] 2026-06-12 16:24:25
[2026-06-12 16:24:25,287.287 INFO    ] 2026-06-12 16:24:25
[2026-06-12 16:24:25,316.316 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 16:24:25,500.500 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 16:24:25,512.512 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 16:24:25,704.704 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 16:24:25,728.728 INFO    ] time= 12/06/2026 16:24:25
[2026-06-12 16:24:25,734.734 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 16:24:25,735.735 INFO    ] Checking for existing commands in stream...
[2026-06-12 16:24:25,803.803 INFO    ] No existing commands found in stream
[2026-06-12 16:24:30,817.817 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 16:24:30,821.821 INFO    ] Waiting 3.91 seconds before fallback handling...
[2026-06-12 16:24:35,127.127 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 16:24:35,128.128 INFO    ] Checking for system updates...
[2026-06-12 16:24:35,149.149 INFO    ] 200
[2026-06-12 16:24:35,151.151 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:24:35,181.181 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 16:24:35,182.182 INFO    ] No update needed
[2026-06-12 16:24:35,184.184 INFO    ] Checking for camera pi updates...
[2026-06-12 16:24:35,204.204 INFO    ] 200
[2026-06-12 16:24:35,205.205 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:24:35,232.232 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 16:24:35,286.286 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 16:24:35,287.287 INFO    ] No camera update needed
[2026-06-12 16:24:35,289.289 INFO    ] Script finished. Safe exiting...
[2026-06-12 16:24:35,291.291 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 16:24:35,294.294 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 16:24:35,297.297 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 16:24:37,335.335 INFO    ] ================================================
[2026-06-12 16:24:37,350.350 INFO    ] Launching Daemon at Fri Jun 12 16:24:37 IST 2026
[2026-06-12 16:24:37,361.361 INFO    ] ================================================
[2026-06-12 16:24:37,723.723 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 16:24:37
[2026-06-12 16:24:38,058.058 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 16:24:38,208.208 INFO    ] Initializing speech engine...
[2026-06-12 16:24:38,215.215 INFO    ] 2026-06-12 16:24:38
[2026-06-12 16:24:38,420.420 INFO    ] 2026-06-12 16:24:38
[2026-06-12 16:24:38,450.450 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 16:24:38,635.635 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 16:24:38,644.644 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 16:24:38,774.774 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 16:24:38,842.842 INFO    ] time= 12/06/2026 16:24:38
[2026-06-12 16:24:38,869.869 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 16:24:38,876.876 INFO    ] Checking for existing commands in stream...
[2026-06-12 16:24:38,966.966 INFO    ] No existing commands found in stream
[2026-06-12 16:24:43,981.981 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 16:24:43,984.984 INFO    ] Waiting 2.65 seconds before fallback handling...
[2026-06-12 16:24:47,079.079 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 16:24:47,081.081 INFO    ] Checking for system updates...
[2026-06-12 16:24:47,102.102 INFO    ] 200
[2026-06-12 16:24:47,103.103 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:24:47,136.136 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 16:24:47,137.137 INFO    ] No update needed
[2026-06-12 16:24:47,138.138 INFO    ] Checking for camera pi updates...
[2026-06-12 16:24:47,158.158 INFO    ] 200
[2026-06-12 16:24:47,159.159 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:24:47,183.183 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 16:24:47,225.225 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 16:24:47,227.227 INFO    ] No camera update needed
[2026-06-12 16:24:47,228.228 INFO    ] Script finished. Safe exiting...
[2026-06-12 16:24:47,229.229 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 16:24:47,232.232 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 16:24:47,235.235 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 16:24:49,274.274 INFO    ] ================================================
[2026-06-12 16:24:49,289.289 INFO    ] Launching Daemon at Fri Jun 12 16:24:49 IST 2026
[2026-06-12 16:24:49,300.300 INFO    ] ================================================
[2026-06-12 16:24:49,650.650 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 16:24:49
[2026-06-12 16:24:49,963.963 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 16:24:50,094.094 INFO    ] Initializing speech engine...
[2026-06-12 16:24:50,102.102 INFO    ] 2026-06-12 16:24:50
[2026-06-12 16:24:50,314.314 INFO    ] 2026-06-12 16:24:50
[2026-06-12 16:24:50,342.342 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 16:24:50,525.525 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 16:24:50,535.535 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 16:24:50,716.716 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 16:24:50,753.753 INFO    ] time= 12/06/2026 16:24:50
[2026-06-12 16:24:50,756.756 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 16:24:50,762.762 INFO    ] Checking for existing commands in stream...
[2026-06-12 16:24:50,828.828 INFO    ] No existing commands found in stream
[2026-06-12 16:24:55,842.842 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 16:24:55,845.845 INFO    ] Waiting 1.12 seconds before fallback handling...
[2026-06-12 16:24:57,414.414 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 16:24:57,415.415 INFO    ] Checking for system updates...
[2026-06-12 16:24:57,436.436 INFO    ] 200
[2026-06-12 16:24:57,437.437 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:24:57,467.467 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 16:24:57,469.469 INFO    ] No update needed
[2026-06-12 16:24:57,470.470 INFO    ] Checking for camera pi updates...
[2026-06-12 16:24:57,491.491 INFO    ] 200
[2026-06-12 16:24:57,492.492 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:24:57,516.516 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 16:24:57,555.555 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 16:24:57,556.556 INFO    ] No camera update needed
[2026-06-12 16:24:57,557.557 INFO    ] Script finished. Safe exiting...
[2026-06-12 16:24:57,559.559 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 16:24:57,562.562 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 16:24:57,564.564 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 16:24:59,603.603 INFO    ] ================================================
[2026-06-12 16:24:59,618.618 INFO    ] Launching Daemon at Fri Jun 12 16:24:59 IST 2026
[2026-06-12 16:24:59,628.628 INFO    ] ================================================
[2026-06-12 16:24:59,973.973 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 16:24:59
[2026-06-12 16:25:00,286.286 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 16:25:00,429.429 INFO    ] Initializing speech engine...
[2026-06-12 16:25:00,434.434 INFO    ] 2026-06-12 16:25:00
[2026-06-12 16:25:00,637.637 INFO    ] 2026-06-12 16:25:00
[2026-06-12 16:25:00,666.666 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 16:25:00,849.849 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 16:25:00,852.852 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 16:25:00,993.993 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 16:25:01,054.054 INFO    ] time= 12/06/2026 16:25:01
[2026-06-12 16:25:01,079.079 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 16:25:01,085.085 INFO    ] Checking for existing commands in stream...
[2026-06-12 16:25:01,175.175 INFO    ] No existing commands found in stream
[2026-06-12 16:25:06,189.189 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 16:25:06,192.192 INFO    ] Waiting 2.89 seconds before fallback handling...
[2026-06-12 16:25:09,504.504 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 16:25:09,505.505 INFO    ] Checking for system updates...
[2026-06-12 16:25:09,526.526 INFO    ] 200
[2026-06-12 16:25:09,528.528 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:25:09,559.559 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 16:25:09,561.561 INFO    ] No update needed
[2026-06-12 16:25:09,562.562 INFO    ] Checking for camera pi updates...
[2026-06-12 16:25:09,582.582 INFO    ] 200
[2026-06-12 16:25:09,583.583 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:25:09,607.607 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 16:25:09,653.653 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 16:25:09,654.654 INFO    ] No camera update needed
[2026-06-12 16:25:09,655.655 INFO    ] Script finished. Safe exiting...
[2026-06-12 16:25:09,657.657 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 16:25:09,660.660 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 16:25:09,662.662 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 16:25:11,701.701 INFO    ] ================================================
[2026-06-12 16:25:11,717.717 INFO    ] Launching Daemon at Fri Jun 12 16:25:11 IST 2026
[2026-06-12 16:25:11,727.727 INFO    ] ================================================
[2026-06-12 16:25:12,057.057 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 16:25:12
[2026-06-12 16:25:12,373.373 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 16:25:12,507.507 INFO    ] Initializing speech engine...
[2026-06-12 16:25:12,516.516 INFO    ] 2026-06-12 16:25:12
[2026-06-12 16:25:12,738.738 INFO    ] 2026-06-12 16:25:12
[2026-06-12 16:25:12,768.768 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 16:25:12,965.965 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 16:25:12,974.974 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 16:25:13,113.113 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 16:25:13,177.177 INFO    ] time= 12/06/2026 16:25:13
[2026-06-12 16:25:13,209.209 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 16:25:13,211.211 INFO    ] Checking for existing commands in stream...
[2026-06-12 16:25:13,286.286 INFO    ] No existing commands found in stream
[2026-06-12 16:25:18,295.295 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 16:25:18,298.298 INFO    ] Waiting 0.17 seconds before fallback handling...
[2026-06-12 16:25:18,856.856 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 16:25:18,858.858 INFO    ] Checking for system updates...
[2026-06-12 16:25:18,879.879 INFO    ] 200
[2026-06-12 16:25:18,881.881 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:25:18,913.913 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 16:25:18,914.914 INFO    ] No update needed
[2026-06-12 16:25:18,915.915 INFO    ] Checking for camera pi updates...
[2026-06-12 16:25:18,941.941 INFO    ] 200
[2026-06-12 16:25:18,943.943 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:25:18,968.968 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 16:25:19,007.007 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 16:25:19,008.008 INFO    ] No camera update needed
[2026-06-12 16:25:19,010.010 INFO    ] Script finished. Safe exiting...
[2026-06-12 16:25:19,011.011 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 16:25:19,014.014 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 16:25:19,017.017 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 16:25:21,054.054 INFO    ] ================================================
[2026-06-12 16:25:21,070.070 INFO    ] Launching Daemon at Fri Jun 12 16:25:21 IST 2026
[2026-06-12 16:25:21,080.080 INFO    ] ================================================
[2026-06-12 16:25:21,442.442 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 16:25:21
[2026-06-12 16:25:21,759.759 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 16:25:21,902.902 INFO    ] Initializing speech engine...
[2026-06-12 16:25:21,907.907 INFO    ] 2026-06-12 16:25:21
[2026-06-12 16:25:22,158.158 INFO    ] 2026-06-12 16:25:22
[2026-06-12 16:25:22,188.188 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 16:25:22,371.371 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 16:25:22,379.379 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 16:25:22,529.529 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 16:25:22,583.583 INFO    ] time= 12/06/2026 16:25:22
[2026-06-12 16:25:22,598.598 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 16:25:22,605.605 INFO    ] Checking for existing commands in stream...
[2026-06-12 16:25:22,672.672 INFO    ] No existing commands found in stream
[2026-06-12 16:25:27,686.686 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 16:25:27,688.688 INFO    ] Waiting 2.24 seconds before fallback handling...
[2026-06-12 16:25:30,305.305 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 16:25:30,307.307 INFO    ] Checking for system updates...
[2026-06-12 16:25:30,329.329 INFO    ] 200
[2026-06-12 16:25:30,330.330 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:25:30,361.361 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 16:25:30,362.362 INFO    ] No update needed
[2026-06-12 16:25:30,363.363 INFO    ] Checking for camera pi updates...
[2026-06-12 16:25:30,383.383 INFO    ] 200
[2026-06-12 16:25:30,384.384 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:25:30,408.408 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 16:25:30,465.465 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 16:25:30,466.466 INFO    ] No camera update needed
[2026-06-12 16:25:30,467.467 INFO    ] Script finished. Safe exiting...
[2026-06-12 16:25:30,468.468 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 16:25:30,472.472 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 16:25:30,474.474 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 16:25:32,516.516 INFO    ] ================================================
[2026-06-12 16:25:32,531.531 INFO    ] Launching Daemon at Fri Jun 12 16:25:32 IST 2026
[2026-06-12 16:25:32,542.542 INFO    ] ================================================
[2026-06-12 16:25:32,868.868 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 16:25:32
[2026-06-12 16:25:33,179.179 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 16:25:33,323.323 INFO    ] Initializing speech engine...
[2026-06-12 16:25:33,328.328 INFO    ] 2026-06-12 16:25:33
[2026-06-12 16:25:33,533.533 INFO    ] 2026-06-12 16:25:33
[2026-06-12 16:25:33,563.563 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 16:25:33,750.750 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 16:25:33,758.758 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 16:25:33,936.936 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 16:25:33,966.966 INFO    ] time= 12/06/2026 16:25:33
[2026-06-12 16:25:33,983.983 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 16:25:33,989.989 INFO    ] Checking for existing commands in stream...
[2026-06-12 16:25:34,057.057 INFO    ] No existing commands found in stream
[2026-06-12 16:25:39,071.071 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 16:25:39,074.074 INFO    ] Waiting 2.45 seconds before fallback handling...
[2026-06-12 16:25:41,945.945 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 16:25:41,946.946 INFO    ] Checking for system updates...
[2026-06-12 16:25:41,968.968 INFO    ] 200
[2026-06-12 16:25:41,970.970 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:25:42,001.001 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 16:25:42,003.003 INFO    ] No update needed
[2026-06-12 16:25:42,004.004 INFO    ] Checking for camera pi updates...
[2026-06-12 16:25:42,024.024 INFO    ] 200
[2026-06-12 16:25:42,025.025 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:25:42,049.049 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 16:25:42,101.101 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 16:25:42,103.103 INFO    ] No camera update needed
[2026-06-12 16:25:42,104.104 INFO    ] Script finished. Safe exiting...
[2026-06-12 16:25:42,105.105 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 16:25:42,108.108 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 16:25:42,111.111 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 16:25:44,149.149 INFO    ] ================================================
[2026-06-12 16:25:44,164.164 INFO    ] Launching Daemon at Fri Jun 12 16:25:44 IST 2026
[2026-06-12 16:25:44,175.175 INFO    ] ================================================
[2026-06-12 16:25:44,540.540 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 16:25:44
[2026-06-12 16:25:44,873.873 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 16:25:45,008.008 INFO    ] Initializing speech engine...
[2026-06-12 16:25:45,017.017 INFO    ] 2026-06-12 16:25:45
[2026-06-12 16:25:45,234.234 INFO    ] 2026-06-12 16:25:45
[2026-06-12 16:25:45,264.264 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 16:25:45,449.449 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 16:25:45,459.459 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 16:25:45,595.595 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 16:25:45,657.657 INFO    ] time= 12/06/2026 16:25:45
[2026-06-12 16:25:45,682.682 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 16:25:45,688.688 INFO    ] Checking for existing commands in stream...
[2026-06-12 16:25:45,756.756 INFO    ] No existing commands found in stream
[2026-06-12 16:25:50,781.781 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 16:25:50,784.784 INFO    ] Waiting 3.27 seconds before fallback handling...
[2026-06-12 16:25:54,424.424 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 16:25:54,426.426 INFO    ] Checking for system updates...
[2026-06-12 16:25:54,447.447 INFO    ] 200
[2026-06-12 16:25:54,448.448 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:25:54,480.480 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 16:25:54,481.481 INFO    ] No update needed
[2026-06-12 16:25:54,483.483 INFO    ] Checking for camera pi updates...
[2026-06-12 16:25:54,502.502 INFO    ] 200
[2026-06-12 16:25:54,504.504 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:25:54,527.527 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 16:25:54,570.570 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 16:25:54,571.571 INFO    ] No camera update needed
[2026-06-12 16:25:54,573.573 INFO    ] Script finished. Safe exiting...
[2026-06-12 16:25:54,574.574 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 16:25:54,577.577 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 16:25:54,580.580 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 16:25:56,618.618 INFO    ] ================================================
[2026-06-12 16:25:56,633.633 INFO    ] Launching Daemon at Fri Jun 12 16:25:56 IST 2026
[2026-06-12 16:25:56,644.644 INFO    ] ================================================
[2026-06-12 16:25:56,980.980 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 16:25:56
[2026-06-12 16:25:57,295.295 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 16:25:57,428.428 INFO    ] Initializing speech engine...
[2026-06-12 16:25:57,438.438 INFO    ] 2026-06-12 16:25:57
[2026-06-12 16:25:57,660.660 INFO    ] 2026-06-12 16:25:57
[2026-06-12 16:25:57,691.691 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 16:25:57,887.887 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 16:25:57,896.896 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 16:25:58,035.035 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 16:25:58,105.105 INFO    ] time= 12/06/2026 16:25:58
[2026-06-12 16:25:58,130.130 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 16:25:58,137.137 INFO    ] Checking for existing commands in stream...
[2026-06-12 16:25:58,207.207 INFO    ] No existing commands found in stream
[2026-06-12 16:26:03,237.237 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 16:26:03,240.240 INFO    ] Waiting 0.96 seconds before fallback handling...
[2026-06-12 16:26:04,564.564 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 16:26:04,566.566 INFO    ] Checking for system updates...
[2026-06-12 16:26:04,586.586 INFO    ] 200
[2026-06-12 16:26:04,587.587 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:26:04,619.619 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 16:26:04,620.620 INFO    ] No update needed
[2026-06-12 16:26:04,622.622 INFO    ] Checking for camera pi updates...
[2026-06-12 16:26:04,641.641 INFO    ] 200
[2026-06-12 16:26:04,643.643 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:26:04,668.668 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 16:26:04,711.711 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 16:26:04,713.713 INFO    ] No camera update needed
[2026-06-12 16:26:04,714.714 INFO    ] Script finished. Safe exiting...
[2026-06-12 16:26:04,715.715 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 16:26:04,718.718 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 16:26:04,721.721 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 16:26:06,759.759 INFO    ] ================================================
[2026-06-12 16:26:06,775.775 INFO    ] Launching Daemon at Fri Jun 12 16:26:06 IST 2026
[2026-06-12 16:26:06,786.786 INFO    ] ================================================
[2026-06-12 16:26:07,147.147 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 16:26:07
[2026-06-12 16:26:07,478.478 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 16:26:07,620.620 INFO    ] Initializing speech engine...
[2026-06-12 16:26:07,631.631 INFO    ] 2026-06-12 16:26:07
[2026-06-12 16:26:07,837.837 INFO    ] 2026-06-12 16:26:07
[2026-06-12 16:26:07,865.865 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 16:26:08,049.049 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 16:26:08,059.059 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 16:26:08,244.244 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 16:26:08,276.276 INFO    ] time= 12/06/2026 16:26:08
[2026-06-12 16:26:08,283.283 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 16:26:08,284.284 INFO    ] Checking for existing commands in stream...
[2026-06-12 16:26:08,351.351 INFO    ] No existing commands found in stream
[2026-06-12 16:26:13,365.365 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 16:26:13,368.368 INFO    ] Waiting 0.93 seconds before fallback handling...
[2026-06-12 16:26:14,642.642 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 16:26:14,643.643 INFO    ] Checking for system updates...
[2026-06-12 16:26:14,665.665 INFO    ] 200
[2026-06-12 16:26:14,666.666 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:26:14,698.698 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 16:26:14,700.700 INFO    ] No update needed
[2026-06-12 16:26:14,701.701 INFO    ] Checking for camera pi updates...
[2026-06-12 16:26:14,722.722 INFO    ] 200
[2026-06-12 16:26:14,723.723 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:26:14,749.749 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 16:26:14,798.798 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 16:26:14,800.800 INFO    ] No camera update needed
[2026-06-12 16:26:14,801.801 INFO    ] Script finished. Safe exiting...
[2026-06-12 16:26:14,803.803 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 16:26:14,806.806 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 16:26:14,809.809 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 16:26:16,849.849 INFO    ] ================================================
[2026-06-12 16:26:16,865.865 INFO    ] Launching Daemon at Fri Jun 12 16:26:16 IST 2026
[2026-06-12 16:26:16,876.876 INFO    ] ================================================
[2026-06-12 16:26:17,216.216 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 16:26:17
[2026-06-12 16:26:17,533.533 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 16:26:17,664.664 INFO    ] Initializing speech engine...
[2026-06-12 16:26:17,672.672 INFO    ] 2026-06-12 16:26:17
[2026-06-12 16:26:17,884.884 INFO    ] 2026-06-12 16:26:17
[2026-06-12 16:26:17,914.914 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 16:26:18,099.099 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 16:26:18,110.110 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 16:26:18,301.301 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 16:26:18,326.326 INFO    ] time= 12/06/2026 16:26:18
[2026-06-12 16:26:18,328.328 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 16:26:18,333.333 INFO    ] Checking for existing commands in stream...
[2026-06-12 16:26:18,401.401 INFO    ] No existing commands found in stream
[2026-06-12 16:26:23,415.415 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 16:26:23,417.417 INFO    ] Waiting 1.23 seconds before fallback handling...
[2026-06-12 16:26:25,042.042 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 16:26:25,043.043 INFO    ] Checking for system updates...
[2026-06-12 16:26:25,064.064 INFO    ] 200
[2026-06-12 16:26:25,065.065 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:26:25,097.097 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 16:26:25,098.098 INFO    ] No update needed
[2026-06-12 16:26:25,099.099 INFO    ] Checking for camera pi updates...
[2026-06-12 16:26:25,121.121 INFO    ] 200
[2026-06-12 16:26:25,123.123 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:26:25,145.145 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 16:26:25,187.187 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 16:26:25,188.188 INFO    ] No camera update needed
[2026-06-12 16:26:25,189.189 INFO    ] Script finished. Safe exiting...
[2026-06-12 16:26:25,191.191 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 16:26:25,194.194 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 16:26:25,196.196 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 16:26:27,235.235 INFO    ] ================================================
[2026-06-12 16:26:27,251.251 INFO    ] Launching Daemon at Fri Jun 12 16:26:27 IST 2026
[2026-06-12 16:26:27,261.261 INFO    ] ================================================
[2026-06-12 16:26:27,604.604 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 16:26:27
[2026-06-12 16:26:27,916.916 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 16:26:28,048.048 INFO    ] Initializing speech engine...
[2026-06-12 16:26:28,052.052 INFO    ] 2026-06-12 16:26:28
[2026-06-12 16:26:28,278.278 INFO    ] 2026-06-12 16:26:28
[2026-06-12 16:26:28,301.301 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 16:26:28,502.502 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 16:26:28,505.505 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 16:26:28,655.655 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 16:26:28,720.720 INFO    ] time= 12/06/2026 16:26:28
[2026-06-12 16:26:28,742.742 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 16:26:28,747.747 INFO    ] Checking for existing commands in stream...
[2026-06-12 16:26:28,848.848 INFO    ] No existing commands found in stream
[2026-06-12 16:26:33,857.857 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 16:26:33,860.860 INFO    ] Waiting 0.69 seconds before fallback handling...
[2026-06-12 16:26:34,916.916 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 16:26:34,917.917 INFO    ] Checking for system updates...
[2026-06-12 16:26:34,938.938 INFO    ] 200
[2026-06-12 16:26:34,939.939 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:26:34,968.968 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 16:26:34,970.970 INFO    ] No update needed
[2026-06-12 16:26:34,971.971 INFO    ] Checking for camera pi updates...
[2026-06-12 16:26:34,993.993 INFO    ] 200
[2026-06-12 16:26:34,995.995 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:26:35,017.017 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 16:26:35,063.063 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 16:26:35,064.064 INFO    ] No camera update needed
[2026-06-12 16:26:35,066.066 INFO    ] Script finished. Safe exiting...
[2026-06-12 16:26:35,067.067 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 16:26:35,070.070 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 16:26:35,073.073 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 16:26:37,111.111 INFO    ] ================================================
[2026-06-12 16:26:37,132.132 INFO    ] Launching Daemon at Fri Jun 12 16:26:37 IST 2026
[2026-06-12 16:26:37,142.142 INFO    ] ================================================
[2026-06-12 16:26:37,505.505 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 16:26:37
[2026-06-12 16:26:37,820.820 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 16:26:37,956.956 INFO    ] Initializing speech engine...
[2026-06-12 16:26:37,966.966 INFO    ] 2026-06-12 16:26:37
[2026-06-12 16:26:38,169.169 INFO    ] 2026-06-12 16:26:38
[2026-06-12 16:26:38,198.198 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 16:26:38,379.379 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 16:26:38,383.383 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 16:26:38,516.516 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 16:26:38,582.582 INFO    ] time= 12/06/2026 16:26:38
[2026-06-12 16:26:38,609.609 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 16:26:38,615.615 INFO    ] Checking for existing commands in stream...
[2026-06-12 16:26:38,683.683 INFO    ] No existing commands found in stream
[2026-06-12 16:26:43,697.697 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 16:26:43,700.700 INFO    ] Waiting 0.02 seconds before fallback handling...
[2026-06-12 16:26:44,064.064 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 16:26:44,075.075 INFO    ] Checking for system updates...
[2026-06-12 16:26:44,096.096 INFO    ] 200
[2026-06-12 16:26:44,098.098 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:26:44,127.127 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 16:26:44,129.129 INFO    ] No update needed
[2026-06-12 16:26:44,130.130 INFO    ] Checking for camera pi updates...
[2026-06-12 16:26:44,150.150 INFO    ] 200
[2026-06-12 16:26:44,151.151 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:26:44,176.176 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 16:26:44,218.218 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 16:26:44,220.220 INFO    ] No camera update needed
[2026-06-12 16:26:44,221.221 INFO    ] Script finished. Safe exiting...
[2026-06-12 16:26:44,223.223 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 16:26:44,226.226 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 16:26:44,229.229 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 16:26:46,268.268 INFO    ] ================================================
[2026-06-12 16:26:46,283.283 INFO    ] Launching Daemon at Fri Jun 12 16:26:46 IST 2026
[2026-06-12 16:26:46,294.294 INFO    ] ================================================
[2026-06-12 16:26:46,638.638 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 16:26:46
[2026-06-12 16:26:46,948.948 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 16:26:47,089.089 INFO    ] Initializing speech engine...
[2026-06-12 16:26:47,094.094 INFO    ] 2026-06-12 16:26:47
[2026-06-12 16:26:47,296.296 INFO    ] 2026-06-12 16:26:47
[2026-06-12 16:26:47,325.325 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 16:26:47,507.507 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 16:26:47,516.516 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 16:26:47,659.659 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 16:26:47,712.712 INFO    ] time= 12/06/2026 16:26:47
[2026-06-12 16:26:47,734.734 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 16:26:47,740.740 INFO    ] Checking for existing commands in stream...
[2026-06-12 16:26:47,805.805 INFO    ] No existing commands found in stream
[2026-06-12 16:26:52,816.816 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 16:26:52,818.818 INFO    ] Waiting 1.64 seconds before fallback handling...
[2026-06-12 16:26:54,852.852 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 16:26:54,853.853 INFO    ] Checking for system updates...
[2026-06-12 16:26:54,873.873 INFO    ] 200
[2026-06-12 16:26:54,874.874 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:26:54,906.906 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 16:26:54,907.907 INFO    ] No update needed
[2026-06-12 16:26:54,909.909 INFO    ] Checking for camera pi updates...
[2026-06-12 16:26:54,929.929 INFO    ] 200
[2026-06-12 16:26:54,931.931 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:26:54,954.954 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 16:26:54,996.996 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 16:26:54,997.997 INFO    ] No camera update needed
[2026-06-12 16:26:54,999.999 INFO    ] Script finished. Safe exiting...
[2026-06-12 16:26:55,000.000 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 16:26:55,003.003 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 16:26:55,006.006 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 16:26:57,045.045 INFO    ] ================================================
[2026-06-12 16:26:57,059.059 INFO    ] Launching Daemon at Fri Jun 12 16:26:57 IST 2026
[2026-06-12 16:26:57,070.070 INFO    ] ================================================
[2026-06-12 16:26:57,403.403 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 16:26:57
[2026-06-12 16:26:57,715.715 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 16:26:57,857.857 INFO    ] Initializing speech engine...
[2026-06-12 16:26:57,862.862 INFO    ] 2026-06-12 16:26:57
[2026-06-12 16:26:58,064.064 INFO    ] 2026-06-12 16:26:58
[2026-06-12 16:26:58,094.094 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 16:26:58,276.276 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 16:26:58,279.279 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 16:26:58,430.430 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 16:26:58,482.482 INFO    ] time= 12/06/2026 16:26:58
[2026-06-12 16:26:58,504.504 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 16:26:58,511.511 INFO    ] Checking for existing commands in stream...
[2026-06-12 16:26:58,577.577 INFO    ] No existing commands found in stream
[2026-06-12 16:27:03,586.586 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 16:27:03,589.589 INFO    ] Waiting 2.14 seconds before fallback handling...
[2026-06-12 16:27:06,133.133 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 16:27:06,134.134 INFO    ] Checking for system updates...
[2026-06-12 16:27:06,155.155 INFO    ] 200
[2026-06-12 16:27:06,156.156 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:27:06,187.187 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 16:27:06,189.189 INFO    ] No update needed
[2026-06-12 16:27:06,190.190 INFO    ] Checking for camera pi updates...
[2026-06-12 16:27:06,209.209 INFO    ] 200
[2026-06-12 16:27:06,211.211 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:27:06,233.233 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 16:27:06,280.280 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 16:27:06,282.282 INFO    ] No camera update needed
[2026-06-12 16:27:06,283.283 INFO    ] Script finished. Safe exiting...
[2026-06-12 16:27:06,284.284 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 16:27:06,287.287 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 16:27:06,291.291 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 16:27:08,329.329 INFO    ] ================================================
[2026-06-12 16:27:08,344.344 INFO    ] Launching Daemon at Fri Jun 12 16:27:08 IST 2026
[2026-06-12 16:27:08,355.355 INFO    ] ================================================
[2026-06-12 16:27:08,718.718 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 16:27:08
[2026-06-12 16:27:09,047.047 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 16:27:09,195.195 INFO    ] Initializing speech engine...
[2026-06-12 16:27:09,200.200 INFO    ] 2026-06-12 16:27:09
[2026-06-12 16:27:09,406.406 INFO    ] 2026-06-12 16:27:09
[2026-06-12 16:27:09,436.436 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 16:27:09,620.620 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 16:27:09,623.623 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 16:27:09,776.776 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 16:27:09,830.830 INFO    ] time= 12/06/2026 16:27:09
[2026-06-12 16:27:09,852.852 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 16:27:09,858.858 INFO    ] Checking for existing commands in stream...
[2026-06-12 16:27:09,925.925 INFO    ] No existing commands found in stream
[2026-06-12 16:27:14,940.940 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 16:27:14,943.943 INFO    ] Waiting 0.13 seconds before fallback handling...
[2026-06-12 16:27:15,460.460 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 16:27:15,462.462 INFO    ] Checking for system updates...
[2026-06-12 16:27:15,482.482 INFO    ] 200
[2026-06-12 16:27:15,484.484 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:27:15,513.513 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 16:27:15,515.515 INFO    ] No update needed
[2026-06-12 16:27:15,516.516 INFO    ] Checking for camera pi updates...
[2026-06-12 16:27:15,535.535 INFO    ] 200
[2026-06-12 16:27:15,537.537 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:27:15,560.560 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 16:27:15,608.608 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 16:27:15,609.609 INFO    ] No camera update needed
[2026-06-12 16:27:15,611.611 INFO    ] Script finished. Safe exiting...
[2026-06-12 16:27:15,612.612 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 16:27:15,615.615 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 16:27:15,618.618 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 16:27:17,658.658 INFO    ] ================================================
[2026-06-12 16:27:17,673.673 INFO    ] Launching Daemon at Fri Jun 12 16:27:17 IST 2026
[2026-06-12 16:27:17,683.683 INFO    ] ================================================
[2026-06-12 16:27:18,021.021 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 16:27:18
[2026-06-12 16:27:18,336.336 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 16:27:18,474.474 INFO    ] Initializing speech engine...
[2026-06-12 16:27:18,484.484 INFO    ] 2026-06-12 16:27:18
[2026-06-12 16:27:18,687.687 INFO    ] 2026-06-12 16:27:18
[2026-06-12 16:27:18,716.716 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 16:27:18,900.900 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 16:27:18,909.909 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 16:27:19,055.055 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 16:27:19,109.109 INFO    ] time= 12/06/2026 16:27:19
[2026-06-12 16:27:19,131.131 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 16:27:19,137.137 INFO    ] Checking for existing commands in stream...
[2026-06-12 16:27:19,204.204 INFO    ] No existing commands found in stream
[2026-06-12 16:27:24,213.213 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 16:27:24,216.216 INFO    ] Waiting 2.16 seconds before fallback handling...
[2026-06-12 16:27:26,771.771 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 16:27:26,773.773 INFO    ] Checking for system updates...
[2026-06-12 16:27:26,793.793 INFO    ] 200
[2026-06-12 16:27:26,795.795 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:27:26,827.827 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 16:27:26,829.829 INFO    ] No update needed
[2026-06-12 16:27:26,830.830 INFO    ] Checking for camera pi updates...
[2026-06-12 16:27:26,850.850 INFO    ] 200
[2026-06-12 16:27:26,851.851 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:27:26,876.876 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 16:27:26,902.902 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 16:27:26,904.904 INFO    ] No camera update needed
[2026-06-12 16:27:26,905.905 INFO    ] Script finished. Safe exiting...
[2026-06-12 16:27:26,906.906 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 16:27:26,909.909 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 16:27:26,912.912 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 16:27:28,950.950 INFO    ] ================================================
[2026-06-12 16:27:28,965.965 INFO    ] Launching Daemon at Fri Jun 12 16:27:28 IST 2026
[2026-06-12 16:27:28,975.975 INFO    ] ================================================
[2026-06-12 16:27:29,322.322 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 16:27:29
[2026-06-12 16:27:29,656.656 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 16:27:29,805.805 INFO    ] Initializing speech engine...
[2026-06-12 16:27:29,811.811 INFO    ] 2026-06-12 16:27:29
[2026-06-12 16:27:30,021.021 INFO    ] 2026-06-12 16:27:30
[2026-06-12 16:27:30,050.050 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 16:27:30,237.237 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 16:27:30,245.245 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 16:27:30,376.376 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 16:27:30,441.441 INFO    ] time= 12/06/2026 16:27:30
[2026-06-12 16:27:30,469.469 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 16:27:30,476.476 INFO    ] Checking for existing commands in stream...
[2026-06-12 16:27:30,567.567 INFO    ] No existing commands found in stream
[2026-06-12 16:27:35,581.581 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 16:27:35,584.584 INFO    ] Waiting 1.04 seconds before fallback handling...
[2026-06-12 16:27:36,981.981 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 16:27:36,982.982 INFO    ] Checking for system updates...
[2026-06-12 16:27:37,003.003 INFO    ] 200
[2026-06-12 16:27:37,004.004 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:27:37,034.034 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 16:27:37,035.035 INFO    ] No update needed
[2026-06-12 16:27:37,037.037 INFO    ] Checking for camera pi updates...
[2026-06-12 16:27:37,057.057 INFO    ] 200
[2026-06-12 16:27:37,059.059 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:27:37,083.083 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 16:27:37,124.124 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 16:27:37,126.126 INFO    ] No camera update needed
[2026-06-12 16:27:37,127.127 INFO    ] Script finished. Safe exiting...
[2026-06-12 16:27:37,128.128 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 16:27:37,132.132 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 16:27:37,135.135 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 16:27:39,173.173 INFO    ] ================================================
[2026-06-12 16:27:39,188.188 INFO    ] Launching Daemon at Fri Jun 12 16:27:39 IST 2026
[2026-06-12 16:27:39,198.198 INFO    ] ================================================
[2026-06-12 16:27:39,553.553 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 16:27:39
[2026-06-12 16:27:39,887.887 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 16:27:40,037.037 INFO    ] Initializing speech engine...
[2026-06-12 16:27:40,042.042 INFO    ] 2026-06-12 16:27:40
[2026-06-12 16:27:40,249.249 INFO    ] 2026-06-12 16:27:40
[2026-06-12 16:27:40,278.278 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 16:27:40,463.463 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 16:27:40,473.473 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 16:27:40,610.610 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 16:27:40,675.675 INFO    ] time= 12/06/2026 16:27:40
[2026-06-12 16:27:40,691.691 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 16:27:40,697.697 INFO    ] Checking for existing commands in stream...
[2026-06-12 16:27:40,764.764 INFO    ] No existing commands found in stream
[2026-06-12 16:27:45,779.779 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 16:27:45,782.782 INFO    ] Waiting 1.71 seconds before fallback handling...
[2026-06-12 16:27:47,899.899 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 16:27:47,901.901 INFO    ] Checking for system updates...
[2026-06-12 16:27:47,921.921 INFO    ] 200
[2026-06-12 16:27:47,923.923 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:27:47,952.952 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 16:27:47,954.954 INFO    ] No update needed
[2026-06-12 16:27:47,955.955 INFO    ] Checking for camera pi updates...
[2026-06-12 16:27:47,974.974 INFO    ] 200
[2026-06-12 16:27:47,976.976 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:27:47,999.999 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 16:27:48,056.056 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 16:27:48,057.057 INFO    ] No camera update needed
[2026-06-12 16:27:48,059.059 INFO    ] Script finished. Safe exiting...
[2026-06-12 16:27:48,060.060 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 16:27:48,063.063 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 16:27:48,066.066 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 16:27:50,105.105 INFO    ] ================================================
[2026-06-12 16:27:50,120.120 INFO    ] Launching Daemon at Fri Jun 12 16:27:50 IST 2026
[2026-06-12 16:27:50,131.131 INFO    ] ================================================
[2026-06-12 16:27:50,462.462 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 16:27:50
[2026-06-12 16:27:50,778.778 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 16:27:50,922.922 INFO    ] Initializing speech engine...
[2026-06-12 16:27:50,927.927 INFO    ] 2026-06-12 16:27:50
[2026-06-12 16:27:51,130.130 INFO    ] 2026-06-12 16:27:51
[2026-06-12 16:27:51,159.159 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 16:27:51,343.343 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 16:27:51,354.354 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 16:27:51,545.545 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 16:27:51,569.569 INFO    ] time= 12/06/2026 16:27:51
[2026-06-12 16:27:51,574.574 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 16:27:51,576.576 INFO    ] Checking for existing commands in stream...
[2026-06-12 16:27:51,642.642 INFO    ] No existing commands found in stream
[2026-06-12 16:27:56,656.656 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 16:27:56,659.659 INFO    ] Waiting 0.02 seconds before fallback handling...
[2026-06-12 16:27:57,023.023 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 16:27:57,025.025 INFO    ] Checking for system updates...
[2026-06-12 16:27:57,045.045 INFO    ] 200
[2026-06-12 16:27:57,047.047 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:27:57,078.078 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 16:27:57,079.079 INFO    ] No update needed
[2026-06-12 16:27:57,080.080 INFO    ] Checking for camera pi updates...
[2026-06-12 16:27:57,101.101 INFO    ] 200
[2026-06-12 16:27:57,103.103 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:27:57,126.126 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 16:27:57,189.189 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 16:27:57,191.191 INFO    ] No camera update needed
[2026-06-12 16:27:57,192.192 INFO    ] Script finished. Safe exiting...
[2026-06-12 16:27:57,194.194 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 16:27:57,197.197 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 16:27:57,200.200 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 16:27:59,238.238 INFO    ] ================================================
[2026-06-12 16:27:59,253.253 INFO    ] Launching Daemon at Fri Jun 12 16:27:59 IST 2026
[2026-06-12 16:27:59,263.263 INFO    ] ================================================
[2026-06-12 16:27:59,591.591 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 16:27:59
[2026-06-12 16:27:59,903.903 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 16:28:00,031.031 INFO    ] Initializing speech engine...
[2026-06-12 16:28:00,036.036 INFO    ] 2026-06-12 16:28:00
[2026-06-12 16:28:00,252.252 INFO    ] 2026-06-12 16:28:00
[2026-06-12 16:28:00,283.283 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 16:28:00,479.479 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 16:28:00,483.483 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 16:28:00,625.625 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 16:28:00,677.677 INFO    ] time= 12/06/2026 16:28:00
[2026-06-12 16:28:00,706.706 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 16:28:00,728.728 INFO    ] Checking for existing commands in stream...
[2026-06-12 16:28:00,805.805 INFO    ] No existing commands found in stream
[2026-06-12 16:28:05,819.819 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 16:28:05,822.822 INFO    ] Waiting 1.81 seconds before fallback handling...
[2026-06-12 16:28:08,000.000 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 16:28:08,002.002 INFO    ] Checking for system updates...
[2026-06-12 16:28:08,026.026 INFO    ] 200
[2026-06-12 16:28:08,027.027 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:28:08,057.057 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 16:28:08,059.059 INFO    ] No update needed
[2026-06-12 16:28:08,060.060 INFO    ] Checking for camera pi updates...
[2026-06-12 16:28:08,079.079 INFO    ] 200
[2026-06-12 16:28:08,081.081 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:28:08,103.103 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 16:28:08,244.244 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 16:28:08,246.246 INFO    ] No camera update needed
[2026-06-12 16:28:08,247.247 INFO    ] Script finished. Safe exiting...
[2026-06-12 16:28:08,248.248 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 16:28:08,251.251 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 16:28:08,254.254 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 16:28:10,293.293 INFO    ] ================================================
[2026-06-12 16:28:10,312.312 INFO    ] Launching Daemon at Fri Jun 12 16:28:10 IST 2026
[2026-06-12 16:28:10,322.322 INFO    ] ================================================
[2026-06-12 16:28:10,670.670 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 16:28:10
[2026-06-12 16:28:10,981.981 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 16:28:11,113.113 INFO    ] Initializing speech engine...
[2026-06-12 16:28:11,117.117 INFO    ] 2026-06-12 16:28:11
[2026-06-12 16:28:11,334.334 INFO    ] 2026-06-12 16:28:11
[2026-06-12 16:28:11,363.363 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 16:28:11,544.544 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 16:28:11,548.548 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 16:28:11,699.699 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 16:28:11,752.752 INFO    ] time= 12/06/2026 16:28:11
[2026-06-12 16:28:11,773.773 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 16:28:11,779.779 INFO    ] Checking for existing commands in stream...
[2026-06-12 16:28:11,846.846 INFO    ] No existing commands found in stream
[2026-06-12 16:28:16,852.852 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 16:28:16,855.855 INFO    ] Waiting 0.11 seconds before fallback handling...
[2026-06-12 16:28:17,330.330 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 16:28:17,332.332 INFO    ] Checking for system updates...
[2026-06-12 16:28:17,352.352 INFO    ] 200
[2026-06-12 16:28:17,353.353 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:28:17,383.383 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 16:28:17,384.384 INFO    ] No update needed
[2026-06-12 16:28:17,385.385 INFO    ] Checking for camera pi updates...
[2026-06-12 16:28:17,405.405 INFO    ] 200
[2026-06-12 16:28:17,406.406 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:28:17,428.428 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 16:28:17,475.475 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 16:28:17,476.476 INFO    ] No camera update needed
[2026-06-12 16:28:17,477.477 INFO    ] Script finished. Safe exiting...
[2026-06-12 16:28:17,478.478 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 16:28:17,481.481 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 16:28:17,484.484 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 16:28:19,530.530 INFO    ] ================================================
[2026-06-12 16:28:19,545.545 INFO    ] Launching Daemon at Fri Jun 12 16:28:19 IST 2026
[2026-06-12 16:28:19,556.556 INFO    ] ================================================
[2026-06-12 16:28:19,901.901 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 16:28:19
[2026-06-12 16:28:20,211.211 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 16:28:20,344.344 INFO    ] Initializing speech engine...
[2026-06-12 16:28:20,353.353 INFO    ] 2026-06-12 16:28:20
[2026-06-12 16:28:20,574.574 INFO    ] 2026-06-12 16:28:20
[2026-06-12 16:28:20,604.604 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 16:28:20,799.799 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 16:28:20,808.808 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 16:28:21,013.013 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 16:28:21,040.040 INFO    ] time= 12/06/2026 16:28:21
[2026-06-12 16:28:21,046.046 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 16:28:21,048.048 INFO    ] Checking for existing commands in stream...
[2026-06-12 16:28:21,119.119 INFO    ] No existing commands found in stream
[2026-06-12 16:28:26,128.128 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 16:28:26,131.131 INFO    ] Waiting 2.98 seconds before fallback handling...
[2026-06-12 16:28:29,481.481 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 16:28:29,482.482 INFO    ] Checking for system updates...
[2026-06-12 16:28:29,503.503 INFO    ] 200
[2026-06-12 16:28:29,504.504 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:28:29,536.536 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 16:28:29,538.538 INFO    ] No update needed
[2026-06-12 16:28:29,539.539 INFO    ] Checking for camera pi updates...
[2026-06-12 16:28:29,565.565 INFO    ] 200
[2026-06-12 16:28:29,567.567 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:28:29,589.589 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 16:28:29,644.644 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 16:28:29,646.646 INFO    ] No camera update needed
[2026-06-12 16:28:29,647.647 INFO    ] Script finished. Safe exiting...
[2026-06-12 16:28:29,648.648 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 16:28:29,651.651 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 16:28:29,654.654 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 16:28:31,684.684 INFO    ] ================================================
[2026-06-12 16:28:31,694.694 INFO    ] Launching Daemon at Fri Jun 12 16:28:31 IST 2026
[2026-06-12 16:28:31,701.701 INFO    ] ================================================
[2026-06-12 16:28:32,023.023 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 16:28:32
[2026-06-12 16:28:32,335.335 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 16:28:32,470.470 INFO    ] Initializing speech engine...
[2026-06-12 16:28:32,479.479 INFO    ] 2026-06-12 16:28:32
[2026-06-12 16:28:32,682.682 INFO    ] 2026-06-12 16:28:32
[2026-06-12 16:28:32,712.712 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 16:28:32,894.894 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 16:28:32,903.903 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 16:28:33,047.047 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 16:28:33,099.099 INFO    ] time= 12/06/2026 16:28:33
[2026-06-12 16:28:33,121.121 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 16:28:33,128.128 INFO    ] Checking for existing commands in stream...
[2026-06-12 16:28:33,218.218 INFO    ] No existing commands found in stream
[2026-06-12 16:28:38,227.227 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 16:28:38,230.230 INFO    ] Waiting 2.56 seconds before fallback handling...
[2026-06-12 16:28:41,189.189 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 16:28:41,190.190 INFO    ] Checking for system updates...
[2026-06-12 16:28:41,211.211 INFO    ] 200
[2026-06-12 16:28:41,213.213 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:28:41,242.242 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 16:28:41,243.243 INFO    ] No update needed
[2026-06-12 16:28:41,245.245 INFO    ] Checking for camera pi updates...
[2026-06-12 16:28:41,264.264 INFO    ] 200
[2026-06-12 16:28:41,265.265 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:28:41,290.290 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 16:28:41,375.375 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 16:28:41,376.376 INFO    ] No camera update needed
[2026-06-12 16:28:41,377.377 INFO    ] Script finished. Safe exiting...
[2026-06-12 16:28:41,379.379 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 16:28:41,382.382 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 16:28:41,384.384 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 16:28:43,424.424 INFO    ] ================================================
[2026-06-12 16:28:43,439.439 INFO    ] Launching Daemon at Fri Jun 12 16:28:43 IST 2026
[2026-06-12 16:28:43,449.449 INFO    ] ================================================
[2026-06-12 16:28:43,814.814 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 16:28:43
[2026-06-12 16:28:44,125.125 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 16:28:44,259.259 INFO    ] Initializing speech engine...
[2026-06-12 16:28:44,272.272 INFO    ] 2026-06-12 16:28:44
[2026-06-12 16:28:44,486.486 INFO    ] 2026-06-12 16:28:44
[2026-06-12 16:28:44,516.516 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 16:28:44,712.712 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 16:28:44,716.716 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 16:28:44,863.863 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 16:28:44,922.922 INFO    ] time= 12/06/2026 16:28:44
[2026-06-12 16:28:44,950.950 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 16:28:44,961.961 INFO    ] Checking for existing commands in stream...
[2026-06-12 16:28:45,062.062 INFO    ] No existing commands found in stream
[2026-06-12 16:28:50,071.071 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 16:28:50,074.074 INFO    ] Waiting 0.66 seconds before fallback handling...
[2026-06-12 16:28:51,074.074 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 16:28:51,075.075 INFO    ] Checking for system updates...
[2026-06-12 16:28:51,096.096 INFO    ] 200
[2026-06-12 16:28:51,098.098 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:28:51,128.128 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 16:28:51,129.129 INFO    ] No update needed
[2026-06-12 16:28:51,131.131 INFO    ] Checking for camera pi updates...
[2026-06-12 16:28:51,150.150 INFO    ] 200
[2026-06-12 16:28:51,152.152 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:28:51,175.175 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 16:28:51,213.213 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 16:28:51,214.214 INFO    ] No camera update needed
[2026-06-12 16:28:51,215.215 INFO    ] Script finished. Safe exiting...
[2026-06-12 16:28:51,217.217 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 16:28:51,220.220 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 16:28:51,222.222 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 16:28:53,261.261 INFO    ] ================================================
[2026-06-12 16:28:53,276.276 INFO    ] Launching Daemon at Fri Jun 12 16:28:53 IST 2026
[2026-06-12 16:28:53,286.286 INFO    ] ================================================
[2026-06-12 16:28:53,626.626 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 16:28:53
[2026-06-12 16:28:53,937.937 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 16:28:54,067.067 INFO    ] Initializing speech engine...
[2026-06-12 16:28:54,070.070 INFO    ] 2026-06-12 16:28:54
[2026-06-12 16:28:54,286.286 INFO    ] 2026-06-12 16:28:54
[2026-06-12 16:28:54,314.314 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 16:28:54,498.498 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 16:28:54,506.506 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 16:28:54,651.651 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 16:28:54,704.704 INFO    ] time= 12/06/2026 16:28:54
[2026-06-12 16:28:54,726.726 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 16:28:54,733.733 INFO    ] Checking for existing commands in stream...
[2026-06-12 16:28:54,799.799 INFO    ] No existing commands found in stream
[2026-06-12 16:28:59,832.832 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 16:28:59,835.835 INFO    ] Waiting 2.42 seconds before fallback handling...
[2026-06-12 16:29:02,573.573 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 16:29:02,575.575 INFO    ] Checking for system updates...
[2026-06-12 16:29:02,595.595 INFO    ] 200
[2026-06-12 16:29:02,596.596 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:29:02,626.626 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 16:29:02,628.628 INFO    ] No update needed
[2026-06-12 16:29:02,629.629 INFO    ] Checking for camera pi updates...
[2026-06-12 16:29:02,651.651 INFO    ] 200
[2026-06-12 16:29:02,652.652 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:29:02,675.675 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 16:29:02,711.711 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 16:29:02,713.713 INFO    ] No camera update needed
[2026-06-12 16:29:02,714.714 INFO    ] Script finished. Safe exiting...
[2026-06-12 16:29:02,715.715 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 16:29:02,718.718 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 16:29:02,721.721 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 16:29:04,761.761 INFO    ] ================================================
[2026-06-12 16:29:04,776.776 INFO    ] Launching Daemon at Fri Jun 12 16:29:04 IST 2026
[2026-06-12 16:29:04,787.787 INFO    ] ================================================
[2026-06-12 16:29:05,158.158 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 16:29:05
[2026-06-12 16:29:05,497.497 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 16:29:05,640.640 INFO    ] Initializing speech engine...
[2026-06-12 16:29:05,644.644 INFO    ] 2026-06-12 16:29:05
[2026-06-12 16:29:05,867.867 INFO    ] 2026-06-12 16:29:05
[2026-06-12 16:29:05,898.898 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 16:29:06,022.022 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 16:29:06,086.086 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 16:29:06,223.223 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 16:29:06,285.285 INFO    ] time= 12/06/2026 16:29:06
[2026-06-12 16:29:06,319.319 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 16:29:06,321.321 INFO    ] Checking for existing commands in stream...
[2026-06-12 16:29:06,393.393 INFO    ] No existing commands found in stream
[2026-06-12 16:29:11,408.408 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 16:29:11,411.411 INFO    ] Waiting 2.45 seconds before fallback handling...
[2026-06-12 16:29:14,251.251 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 16:29:14,252.252 INFO    ] Checking for system updates...
[2026-06-12 16:29:14,273.273 INFO    ] 200
[2026-06-12 16:29:14,274.274 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:29:14,304.304 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 16:29:14,306.306 INFO    ] No update needed
[2026-06-12 16:29:14,307.307 INFO    ] Checking for camera pi updates...
[2026-06-12 16:29:14,327.327 INFO    ] 200
[2026-06-12 16:29:14,328.328 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:29:14,352.352 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 16:29:14,393.393 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 16:29:14,394.394 INFO    ] No camera update needed
[2026-06-12 16:29:14,395.395 INFO    ] Script finished. Safe exiting...
[2026-06-12 16:29:14,397.397 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 16:29:14,400.400 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 16:29:14,403.403 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 16:29:16,441.441 INFO    ] ================================================
[2026-06-12 16:29:16,456.456 INFO    ] Launching Daemon at Fri Jun 12 16:29:16 IST 2026
[2026-06-12 16:29:16,467.467 INFO    ] ================================================
[2026-06-12 16:29:16,816.816 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 16:29:16
[2026-06-12 16:29:17,127.127 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 16:29:17,271.271 INFO    ] Initializing speech engine...
[2026-06-12 16:29:17,276.276 INFO    ] 2026-06-12 16:29:17
[2026-06-12 16:29:17,481.481 INFO    ] 2026-06-12 16:29:17
[2026-06-12 16:29:17,510.510 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 16:29:17,696.696 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 16:29:17,706.706 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 16:29:17,856.856 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 16:29:17,906.906 INFO    ] time= 12/06/2026 16:29:17
[2026-06-12 16:29:17,927.927 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 16:29:17,934.934 INFO    ] Checking for existing commands in stream...
[2026-06-12 16:29:18,001.001 INFO    ] No existing commands found in stream
[2026-06-12 16:29:23,010.010 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 16:29:23,013.013 INFO    ] Waiting 1.25 seconds before fallback handling...
[2026-06-12 16:29:24,650.650 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 16:29:24,652.652 INFO    ] Checking for system updates...
[2026-06-12 16:29:24,674.674 INFO    ] 200
[2026-06-12 16:29:24,675.675 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:29:24,705.705 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 16:29:24,707.707 INFO    ] No update needed
[2026-06-12 16:29:24,708.708 INFO    ] Checking for camera pi updates...
[2026-06-12 16:29:24,728.728 INFO    ] 200
[2026-06-12 16:29:24,729.729 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:29:24,753.753 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 16:29:24,805.805 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 16:29:24,806.806 INFO    ] No camera update needed
[2026-06-12 16:29:24,811.811 INFO    ] Script finished. Safe exiting...
[2026-06-12 16:29:24,813.813 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 16:29:24,816.816 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 16:29:24,820.820 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 16:29:26,859.859 INFO    ] ================================================
[2026-06-12 16:29:26,875.875 INFO    ] Launching Daemon at Fri Jun 12 16:29:26 IST 2026
[2026-06-12 16:29:26,886.886 INFO    ] ================================================
[2026-06-12 16:29:27,231.231 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 16:29:27
[2026-06-12 16:29:27,563.563 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 16:29:27,712.712 INFO    ] Initializing speech engine...
[2026-06-12 16:29:27,717.717 INFO    ] 2026-06-12 16:29:27
[2026-06-12 16:29:27,923.923 INFO    ] 2026-06-12 16:29:27
[2026-06-12 16:29:27,952.952 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 16:29:28,136.136 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 16:29:28,146.146 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 16:29:28,290.290 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 16:29:28,341.341 INFO    ] time= 12/06/2026 16:29:28
[2026-06-12 16:29:28,365.365 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 16:29:28,372.372 INFO    ] Checking for existing commands in stream...
[2026-06-12 16:29:28,438.438 INFO    ] No existing commands found in stream
[2026-06-12 16:29:33,453.453 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 16:29:33,456.456 INFO    ] Waiting 0.57 seconds before fallback handling...
[2026-06-12 16:29:34,415.415 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 16:29:34,417.417 INFO    ] Checking for system updates...
[2026-06-12 16:29:34,438.438 INFO    ] 200
[2026-06-12 16:29:34,440.440 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:29:34,472.472 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 16:29:34,474.474 INFO    ] No update needed
[2026-06-12 16:29:34,475.475 INFO    ] Checking for camera pi updates...
[2026-06-12 16:29:34,495.495 INFO    ] 200
[2026-06-12 16:29:34,497.497 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:29:34,520.520 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 16:29:34,567.567 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 16:29:34,568.568 INFO    ] No camera update needed
[2026-06-12 16:29:34,570.570 INFO    ] Script finished. Safe exiting...
[2026-06-12 16:29:34,571.571 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 16:29:34,574.574 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 16:29:34,577.577 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 16:29:36,615.615 INFO    ] ================================================
[2026-06-12 16:29:36,630.630 INFO    ] Launching Daemon at Fri Jun 12 16:29:36 IST 2026
[2026-06-12 16:29:36,640.640 INFO    ] ================================================
[2026-06-12 16:29:36,994.994 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 16:29:36
[2026-06-12 16:29:37,311.311 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 16:29:37,444.444 INFO    ] Initializing speech engine...
[2026-06-12 16:29:37,456.456 INFO    ] 2026-06-12 16:29:37
[2026-06-12 16:29:37,664.664 INFO    ] 2026-06-12 16:29:37
[2026-06-12 16:29:37,692.692 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 16:29:37,877.877 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 16:29:37,887.887 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 16:29:38,035.035 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 16:29:38,083.083 INFO    ] time= 12/06/2026 16:29:38
[2026-06-12 16:29:38,105.105 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 16:29:38,112.112 INFO    ] Checking for existing commands in stream...
[2026-06-12 16:29:38,202.202 INFO    ] No existing commands found in stream
[2026-06-12 16:29:43,211.211 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 16:29:43,214.214 INFO    ] Waiting 3.06 seconds before fallback handling...
[2026-06-12 16:29:46,654.654 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 16:29:46,656.656 INFO    ] Checking for system updates...
[2026-06-12 16:29:46,678.678 INFO    ] 200
[2026-06-12 16:29:46,680.680 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:29:46,712.712 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 16:29:46,713.713 INFO    ] No update needed
[2026-06-12 16:29:46,715.715 INFO    ] Checking for camera pi updates...
[2026-06-12 16:29:46,734.734 INFO    ] 200
[2026-06-12 16:29:46,736.736 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:29:46,759.759 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 16:29:46,807.807 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 16:29:46,808.808 INFO    ] No camera update needed
[2026-06-12 16:29:46,810.810 INFO    ] Script finished. Safe exiting...
[2026-06-12 16:29:46,811.811 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 16:29:46,814.814 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 16:29:46,817.817 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 16:29:48,857.857 INFO    ] ================================================
[2026-06-12 16:29:48,872.872 INFO    ] Launching Daemon at Fri Jun 12 16:29:48 IST 2026
[2026-06-12 16:29:48,882.882 INFO    ] ================================================
[2026-06-12 16:29:49,234.234 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 16:29:49
[2026-06-12 16:29:49,549.549 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 16:29:49,679.679 INFO    ] Initializing speech engine...
[2026-06-12 16:29:49,684.684 INFO    ] 2026-06-12 16:29:49
[2026-06-12 16:29:49,900.900 INFO    ] 2026-06-12 16:29:49
[2026-06-12 16:29:49,930.930 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 16:29:50,113.113 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 16:29:50,122.122 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 16:29:50,266.266 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 16:29:50,319.319 INFO    ] time= 12/06/2026 16:29:50
[2026-06-12 16:29:50,341.341 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 16:29:50,347.347 INFO    ] Checking for existing commands in stream...
[2026-06-12 16:29:50,413.413 INFO    ] No existing commands found in stream
[2026-06-12 16:29:55,427.427 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 16:29:55,430.430 INFO    ] Waiting 2.46 seconds before fallback handling...
[2026-06-12 16:29:58,296.296 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 16:29:58,298.298 INFO    ] Checking for system updates...
[2026-06-12 16:29:58,319.319 INFO    ] 200
[2026-06-12 16:29:58,321.321 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:29:58,351.351 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 16:29:58,352.352 INFO    ] No update needed
[2026-06-12 16:29:58,353.353 INFO    ] Checking for camera pi updates...
[2026-06-12 16:29:58,373.373 INFO    ] 200
[2026-06-12 16:29:58,374.374 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:29:58,399.399 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 16:29:58,438.438 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 16:29:58,440.440 INFO    ] No camera update needed
[2026-06-12 16:29:58,441.441 INFO    ] Script finished. Safe exiting...
[2026-06-12 16:29:58,442.442 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 16:29:58,445.445 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 16:29:58,448.448 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 16:30:00,487.487 INFO    ] ================================================
[2026-06-12 16:30:00,502.502 INFO    ] Launching Daemon at Fri Jun 12 16:30:00 IST 2026
[2026-06-12 16:30:00,513.513 INFO    ] ================================================
[2026-06-12 16:30:00,870.870 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 16:30:00
[2026-06-12 16:30:01,187.187 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 16:30:01,331.331 INFO    ] Initializing speech engine...
[2026-06-12 16:30:01,336.336 INFO    ] 2026-06-12 16:30:01
[2026-06-12 16:30:01,561.561 INFO    ] 2026-06-12 16:30:01
[2026-06-12 16:30:01,611.611 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 16:30:01,872.872 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 16:30:01,897.897 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 16:30:02,048.048 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 16:30:02,055.055 INFO    ] time= 12/06/2026 16:30:02
[2026-06-12 16:30:02,058.058 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 16:30:02,060.060 INFO    ] Checking for existing commands in stream...
[2026-06-12 16:30:02,135.135 INFO    ] No existing commands found in stream
[2026-06-12 16:30:07,144.144 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 16:30:07,147.147 INFO    ] Waiting 1.93 seconds before fallback handling...
[2026-06-12 16:30:09,478.478 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 16:30:09,480.480 INFO    ] Checking for system updates...
[2026-06-12 16:30:09,500.500 INFO    ] 200
[2026-06-12 16:30:09,502.502 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:30:09,534.534 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 16:30:09,535.535 INFO    ] No update needed
[2026-06-12 16:30:09,536.536 INFO    ] Checking for camera pi updates...
[2026-06-12 16:30:09,557.557 INFO    ] 200
[2026-06-12 16:30:09,558.558 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:30:09,581.581 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 16:30:09,729.729 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 16:30:09,730.730 INFO    ] No camera update needed
[2026-06-12 16:30:09,732.732 INFO    ] Script finished. Safe exiting...
[2026-06-12 16:30:09,733.733 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 16:30:09,736.736 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 16:30:09,738.738 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 16:30:11,781.781 INFO    ] ================================================
[2026-06-12 16:30:11,796.796 INFO    ] Launching Daemon at Fri Jun 12 16:30:11 IST 2026
[2026-06-12 16:30:11,807.807 INFO    ] ================================================
[2026-06-12 16:30:12,130.130 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 16:30:12
[2026-06-12 16:30:12,441.441 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 16:30:12,576.576 INFO    ] Initializing speech engine...
[2026-06-12 16:30:12,589.589 INFO    ] 2026-06-12 16:30:12
[2026-06-12 16:30:12,807.807 INFO    ] 2026-06-12 16:30:12
[2026-06-12 16:30:12,838.838 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 16:30:13,035.035 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 16:30:13,045.045 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 16:30:13,180.180 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 16:30:13,227.227 INFO    ] time= 12/06/2026 16:30:13
[2026-06-12 16:30:13,272.272 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 16:30:13,284.284 INFO    ] Checking for existing commands in stream...
[2026-06-12 16:30:13,358.358 INFO    ] No existing commands found in stream
[2026-06-12 16:30:18,369.369 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 16:30:18,372.372 INFO    ] Waiting 0.24 seconds before fallback handling...
[2026-06-12 16:30:19,006.006 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 16:30:19,008.008 INFO    ] Checking for system updates...
[2026-06-12 16:30:19,028.028 INFO    ] 200
[2026-06-12 16:30:19,030.030 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:30:19,060.060 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 16:30:19,062.062 INFO    ] No update needed
[2026-06-12 16:30:19,063.063 INFO    ] Checking for camera pi updates...
[2026-06-12 16:30:19,083.083 INFO    ] 200
[2026-06-12 16:30:19,085.085 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:30:19,108.108 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 16:30:19,149.149 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 16:30:19,150.150 INFO    ] No camera update needed
[2026-06-12 16:30:19,152.152 INFO    ] Script finished. Safe exiting...
[2026-06-12 16:30:19,153.153 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 16:30:19,156.156 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 16:30:19,159.159 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 16:30:21,197.197 INFO    ] ================================================
[2026-06-12 16:30:21,213.213 INFO    ] Launching Daemon at Fri Jun 12 16:30:21 IST 2026
[2026-06-12 16:30:21,223.223 INFO    ] ================================================
[2026-06-12 16:30:21,549.549 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 16:30:21
[2026-06-12 16:30:21,860.860 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 16:30:21,989.989 INFO    ] Initializing speech engine...
[2026-06-12 16:30:21,994.994 INFO    ] 2026-06-12 16:30:21
[2026-06-12 16:30:22,214.214 INFO    ] 2026-06-12 16:30:22
[2026-06-12 16:30:22,244.244 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 16:30:22,412.412 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 16:30:22,431.431 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 16:30:22,568.568 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 16:30:22,639.639 INFO    ] time= 12/06/2026 16:30:22
[2026-06-12 16:30:22,663.663 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 16:30:22,669.669 INFO    ] Checking for existing commands in stream...
[2026-06-12 16:30:22,737.737 INFO    ] No existing commands found in stream
[2026-06-12 16:30:27,746.746 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 16:30:27,749.749 INFO    ] Waiting 3.01 seconds before fallback handling...
[2026-06-12 16:30:31,225.225 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 16:30:31,227.227 INFO    ] Checking for system updates...
[2026-06-12 16:30:31,247.247 INFO    ] 200
[2026-06-12 16:30:31,249.249 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:30:31,280.280 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 16:30:31,282.282 INFO    ] No update needed
[2026-06-12 16:30:31,283.283 INFO    ] Checking for camera pi updates...
[2026-06-12 16:30:31,304.304 INFO    ] 200
[2026-06-12 16:30:31,306.306 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:30:31,333.333 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 16:30:31,386.386 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 16:30:31,387.387 INFO    ] No camera update needed
[2026-06-12 16:30:31,389.389 INFO    ] Script finished. Safe exiting...
[2026-06-12 16:30:31,390.390 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 16:30:31,393.393 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 16:30:31,396.396 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 16:30:33,428.428 INFO    ] ================================================
[2026-06-12 16:30:33,443.443 INFO    ] Launching Daemon at Fri Jun 12 16:30:33 IST 2026
[2026-06-12 16:30:33,455.455 INFO    ] ================================================
[2026-06-12 16:30:33,813.813 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 16:30:33
[2026-06-12 16:30:34,128.128 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 16:30:34,262.262 INFO    ] Initializing speech engine...
[2026-06-12 16:30:34,274.274 INFO    ] 2026-06-12 16:30:34
[2026-06-12 16:30:34,480.480 INFO    ] 2026-06-12 16:30:34
[2026-06-12 16:30:34,510.510 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 16:30:34,693.693 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 16:30:34,701.701 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 16:30:34,840.840 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 16:30:34,884.884 INFO    ] time= 12/06/2026 16:30:34
[2026-06-12 16:30:34,924.924 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 16:30:34,938.938 INFO    ] Checking for existing commands in stream...
[2026-06-12 16:30:35,018.018 INFO    ] No existing commands found in stream
[2026-06-12 16:30:40,026.026 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 16:30:40,028.028 INFO    ] Waiting 1.41 seconds before fallback handling...
[2026-06-12 16:30:41,800.800 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 16:30:41,802.802 INFO    ] Checking for system updates...
[2026-06-12 16:30:41,822.822 INFO    ] 200
[2026-06-12 16:30:41,824.824 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:30:41,858.858 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 16:30:41,860.860 INFO    ] No update needed
[2026-06-12 16:30:41,861.861 INFO    ] Checking for camera pi updates...
[2026-06-12 16:30:41,881.881 INFO    ] 200
[2026-06-12 16:30:41,883.883 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:30:41,907.907 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 16:30:41,950.950 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 16:30:41,951.951 INFO    ] No camera update needed
[2026-06-12 16:30:41,953.953 INFO    ] Script finished. Safe exiting...
[2026-06-12 16:30:41,954.954 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 16:30:41,957.957 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 16:30:41,960.960 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 16:30:43,991.991 INFO    ] ================================================
[2026-06-12 16:30:44,008.008 INFO    ] Launching Daemon at Fri Jun 12 16:30:44 IST 2026
[2026-06-12 16:30:44,018.018 INFO    ] ================================================
[2026-06-12 16:30:44,353.353 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 16:30:44
[2026-06-12 16:30:44,687.687 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 16:30:44,841.841 INFO    ] Initializing speech engine...
[2026-06-12 16:30:44,846.846 INFO    ] 2026-06-12 16:30:44
[2026-06-12 16:30:45,056.056 INFO    ] 2026-06-12 16:30:45
[2026-06-12 16:30:45,084.084 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 16:30:45,273.273 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 16:30:45,282.282 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 16:30:45,460.460 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 16:30:45,500.500 INFO    ] time= 12/06/2026 16:30:45
[2026-06-12 16:30:45,505.505 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 16:30:45,512.512 INFO    ] Checking for existing commands in stream...
[2026-06-12 16:30:45,580.580 INFO    ] No existing commands found in stream
[2026-06-12 16:30:50,594.594 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 16:30:50,597.597 INFO    ] Waiting 0.86 seconds before fallback handling...
[2026-06-12 16:30:51,873.873 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 16:30:51,874.874 INFO    ] Checking for system updates...
[2026-06-12 16:30:51,895.895 INFO    ] 200
[2026-06-12 16:30:51,896.896 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:30:51,927.927 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 16:30:51,928.928 INFO    ] No update needed
[2026-06-12 16:30:51,930.930 INFO    ] Checking for camera pi updates...
[2026-06-12 16:30:51,949.949 INFO    ] 200
[2026-06-12 16:30:51,951.951 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:30:51,975.975 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 16:30:52,021.021 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 16:30:52,022.022 INFO    ] No camera update needed
[2026-06-12 16:30:52,024.024 INFO    ] Script finished. Safe exiting...
[2026-06-12 16:30:52,025.025 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 16:30:52,028.028 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 16:30:52,031.031 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 16:30:54,070.070 INFO    ] ================================================
[2026-06-12 16:30:54,086.086 INFO    ] Launching Daemon at Fri Jun 12 16:30:54 IST 2026
[2026-06-12 16:30:54,097.097 INFO    ] ================================================
[2026-06-12 16:30:54,449.449 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 16:30:54
[2026-06-12 16:30:54,768.768 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 16:30:54,917.917 INFO    ] Initializing speech engine...
[2026-06-12 16:30:54,924.924 INFO    ] 2026-06-12 16:30:54
[2026-06-12 16:30:55,130.130 INFO    ] 2026-06-12 16:30:55
[2026-06-12 16:30:55,158.158 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 16:30:55,344.344 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 16:30:55,353.353 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 16:30:55,538.538 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 16:30:55,570.570 INFO    ] time= 12/06/2026 16:30:55
[2026-06-12 16:30:55,577.577 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 16:30:55,579.579 INFO    ] Checking for existing commands in stream...
[2026-06-12 16:30:55,646.646 INFO    ] No existing commands found in stream
[2026-06-12 16:31:00,660.660 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 16:31:00,663.663 INFO    ] Waiting 0.00 seconds before fallback handling...
[2026-06-12 16:31:01,051.051 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 16:31:01,052.052 INFO    ] Checking for system updates...
[2026-06-12 16:31:01,073.073 INFO    ] 200
[2026-06-12 16:31:01,075.075 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:31:01,109.109 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 16:31:01,111.111 INFO    ] No update needed
[2026-06-12 16:31:01,112.112 INFO    ] Checking for camera pi updates...
[2026-06-12 16:31:01,134.134 INFO    ] 200
[2026-06-12 16:31:01,136.136 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:31:01,159.159 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 16:31:01,204.204 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 16:31:01,205.205 INFO    ] No camera update needed
[2026-06-12 16:31:01,207.207 INFO    ] Script finished. Safe exiting...
[2026-06-12 16:31:01,208.208 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 16:31:01,211.211 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 16:31:01,214.214 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 16:31:03,247.247 INFO    ] ================================================
[2026-06-12 16:31:03,263.263 INFO    ] Launching Daemon at Fri Jun 12 16:31:03 IST 2026
[2026-06-12 16:31:03,274.274 INFO    ] ================================================
[2026-06-12 16:31:03,630.630 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 16:31:03
[2026-06-12 16:31:03,942.942 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 16:31:04,072.072 INFO    ] Initializing speech engine...
[2026-06-12 16:31:04,076.076 INFO    ] 2026-06-12 16:31:04
[2026-06-12 16:31:04,294.294 INFO    ] 2026-06-12 16:31:04
[2026-06-12 16:31:04,324.324 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 16:31:04,508.508 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 16:31:04,512.512 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 16:31:04,647.647 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 16:31:04,708.708 INFO    ] time= 12/06/2026 16:31:04
[2026-06-12 16:31:04,741.741 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 16:31:04,747.747 INFO    ] Checking for existing commands in stream...
[2026-06-12 16:31:04,839.839 INFO    ] No existing commands found in stream
[2026-06-12 16:31:09,847.847 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 16:31:09,850.850 INFO    ] Waiting 2.89 seconds before fallback handling...
[2026-06-12 16:31:13,122.122 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 16:31:13,124.124 INFO    ] Checking for system updates...
[2026-06-12 16:31:13,144.144 INFO    ] 200
[2026-06-12 16:31:13,146.146 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:31:13,180.180 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 16:31:13,181.181 INFO    ] No update needed
[2026-06-12 16:31:13,182.182 INFO    ] Checking for camera pi updates...
[2026-06-12 16:31:13,202.202 INFO    ] 200
[2026-06-12 16:31:13,204.204 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:31:13,226.226 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 16:31:13,271.271 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 16:31:13,273.273 INFO    ] No camera update needed
[2026-06-12 16:31:13,274.274 INFO    ] Script finished. Safe exiting...
[2026-06-12 16:31:13,275.275 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 16:31:13,278.278 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 16:31:13,281.281 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 16:31:15,320.320 INFO    ] ================================================
[2026-06-12 16:31:15,336.336 INFO    ] Launching Daemon at Fri Jun 12 16:31:15 IST 2026
[2026-06-12 16:31:15,348.348 INFO    ] ================================================
[2026-06-12 16:31:15,673.673 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 16:31:15
[2026-06-12 16:31:15,984.984 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 16:31:16,116.116 INFO    ] Initializing speech engine...
[2026-06-12 16:31:16,128.128 INFO    ] 2026-06-12 16:31:16
[2026-06-12 16:31:16,337.337 INFO    ] 2026-06-12 16:31:16
[2026-06-12 16:31:16,367.367 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 16:31:16,552.552 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 16:31:16,561.561 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 16:31:16,688.688 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 16:31:16,745.745 INFO    ] time= 12/06/2026 16:31:16
[2026-06-12 16:31:16,781.781 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 16:31:16,790.790 INFO    ] Checking for existing commands in stream...
[2026-06-12 16:31:16,858.858 INFO    ] No existing commands found in stream
[2026-06-12 16:31:21,867.867 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 16:31:21,870.870 INFO    ] Waiting 0.94 seconds before fallback handling...
[2026-06-12 16:31:23,207.207 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 16:31:23,209.209 INFO    ] Checking for system updates...
[2026-06-12 16:31:23,230.230 INFO    ] 200
[2026-06-12 16:31:23,232.232 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:31:23,262.262 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 16:31:23,264.264 INFO    ] No update needed
[2026-06-12 16:31:23,265.265 INFO    ] Checking for camera pi updates...
[2026-06-12 16:31:23,286.286 INFO    ] 200
[2026-06-12 16:31:23,287.287 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:31:23,315.315 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 16:31:23,357.357 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 16:31:23,358.358 INFO    ] No camera update needed
[2026-06-12 16:31:23,360.360 INFO    ] Script finished. Safe exiting...
[2026-06-12 16:31:23,361.361 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 16:31:23,364.364 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 16:31:23,367.367 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 16:31:25,408.408 INFO    ] ================================================
[2026-06-12 16:31:25,423.423 INFO    ] Launching Daemon at Fri Jun 12 16:31:25 IST 2026
[2026-06-12 16:31:25,435.435 INFO    ] ================================================
[2026-06-12 16:31:25,766.766 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 16:31:25
[2026-06-12 16:31:26,082.082 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 16:31:26,215.215 INFO    ] Initializing speech engine...
[2026-06-12 16:31:26,228.228 INFO    ] 2026-06-12 16:31:26
[2026-06-12 16:31:26,434.434 INFO    ] 2026-06-12 16:31:26
[2026-06-12 16:31:26,464.464 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 16:31:26,646.646 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 16:31:26,656.656 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 16:31:26,799.799 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 16:31:26,850.850 INFO    ] time= 12/06/2026 16:31:26
[2026-06-12 16:31:26,874.874 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 16:31:26,880.880 INFO    ] Checking for existing commands in stream...
[2026-06-12 16:31:26,947.947 INFO    ] No existing commands found in stream
[2026-06-12 16:31:31,951.951 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 16:31:31,953.953 INFO    ] Waiting 3.08 seconds before fallback handling...
[2026-06-12 16:31:35,436.436 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 16:31:35,437.437 INFO    ] Checking for system updates...
[2026-06-12 16:31:35,458.458 INFO    ] 200
[2026-06-12 16:31:35,460.460 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:31:35,491.491 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 16:31:35,492.492 INFO    ] No update needed
[2026-06-12 16:31:35,494.494 INFO    ] Checking for camera pi updates...
[2026-06-12 16:31:35,513.513 INFO    ] 200
[2026-06-12 16:31:35,515.515 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:31:35,540.540 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 16:31:35,595.595 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 16:31:35,597.597 INFO    ] No camera update needed
[2026-06-12 16:31:35,598.598 INFO    ] Script finished. Safe exiting...
[2026-06-12 16:31:35,600.600 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 16:31:35,603.603 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 16:31:35,606.606 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 16:31:37,645.645 INFO    ] ================================================
[2026-06-12 16:31:37,661.661 INFO    ] Launching Daemon at Fri Jun 12 16:31:37 IST 2026
[2026-06-12 16:31:37,673.673 INFO    ] ================================================
[2026-06-12 16:31:38,043.043 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 16:31:38
[2026-06-12 16:31:38,354.354 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 16:31:38,496.496 INFO    ] Initializing speech engine...
[2026-06-12 16:31:38,501.501 INFO    ] 2026-06-12 16:31:38
[2026-06-12 16:31:38,704.704 INFO    ] 2026-06-12 16:31:38
[2026-06-12 16:31:38,732.732 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 16:31:38,914.914 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 16:31:38,923.923 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 16:31:39,073.073 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 16:31:39,126.126 INFO    ] time= 12/06/2026 16:31:39
[2026-06-12 16:31:39,142.142 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 16:31:39,148.148 INFO    ] Checking for existing commands in stream...
[2026-06-12 16:31:39,215.215 INFO    ] No existing commands found in stream
[2026-06-12 16:31:44,224.224 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 16:31:44,226.226 INFO    ] Waiting 2.78 seconds before fallback handling...
[2026-06-12 16:31:47,405.405 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 16:31:47,407.407 INFO    ] Checking for system updates...
[2026-06-12 16:31:47,428.428 INFO    ] 200
[2026-06-12 16:31:47,429.429 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:31:47,459.459 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 16:31:47,461.461 INFO    ] No update needed
[2026-06-12 16:31:47,462.462 INFO    ] Checking for camera pi updates...
[2026-06-12 16:31:47,483.483 INFO    ] 200
[2026-06-12 16:31:47,485.485 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:31:47,513.513 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 16:31:47,559.559 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 16:31:47,561.561 INFO    ] No camera update needed
[2026-06-12 16:31:47,562.562 INFO    ] Script finished. Safe exiting...
[2026-06-12 16:31:47,564.564 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 16:31:47,567.567 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 16:31:47,570.570 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 16:31:49,611.611 INFO    ] ================================================
[2026-06-12 16:31:49,627.627 INFO    ] Launching Daemon at Fri Jun 12 16:31:49 IST 2026
[2026-06-12 16:31:49,638.638 INFO    ] ================================================
[2026-06-12 16:31:49,994.994 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 16:31:49
[2026-06-12 16:31:50,312.312 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 16:31:50,447.447 INFO    ] Initializing speech engine...
[2026-06-12 16:31:50,455.455 INFO    ] 2026-06-12 16:31:50
[2026-06-12 16:31:50,667.667 INFO    ] 2026-06-12 16:31:50
[2026-06-12 16:31:50,696.696 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 16:31:50,881.881 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 16:31:50,891.891 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 16:31:51,039.039 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 16:31:51,088.088 INFO    ] time= 12/06/2026 16:31:51
[2026-06-12 16:31:51,111.111 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 16:31:51,116.116 INFO    ] Checking for existing commands in stream...
[2026-06-12 16:31:51,184.184 INFO    ] No existing commands found in stream
[2026-06-12 16:31:56,198.198 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 16:31:56,201.201 INFO    ] Waiting 1.32 seconds before fallback handling...
[2026-06-12 16:31:57,906.906 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 16:31:57,908.908 INFO    ] Checking for system updates...
[2026-06-12 16:31:57,929.929 INFO    ] 200
[2026-06-12 16:31:57,930.930 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:31:57,963.963 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 16:31:57,965.965 INFO    ] No update needed
[2026-06-12 16:31:57,966.966 INFO    ] Checking for camera pi updates...
[2026-06-12 16:31:57,986.986 INFO    ] 200
[2026-06-12 16:31:57,988.988 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:31:58,013.013 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 16:31:58,065.065 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 16:31:58,067.067 INFO    ] No camera update needed
[2026-06-12 16:31:58,068.068 INFO    ] Script finished. Safe exiting...
[2026-06-12 16:31:58,070.070 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 16:31:58,073.073 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 16:31:58,076.076 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 16:32:00,115.115 INFO    ] ================================================
[2026-06-12 16:32:00,132.132 INFO    ] Launching Daemon at Fri Jun 12 16:32:00 IST 2026
[2026-06-12 16:32:00,143.143 INFO    ] ================================================
[2026-06-12 16:32:00,498.498 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 16:32:00
[2026-06-12 16:32:00,810.810 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 16:32:00,953.953 INFO    ] Initializing speech engine...
[2026-06-12 16:32:00,957.957 INFO    ] 2026-06-12 16:32:00
[2026-06-12 16:32:01,162.162 INFO    ] 2026-06-12 16:32:01
[2026-06-12 16:32:01,190.190 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 16:32:01,328.328 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 16:32:01,376.376 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 16:32:01,498.498 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 16:32:01,538.538 INFO    ] time= 12/06/2026 16:32:01
[2026-06-12 16:32:01,546.546 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 16:32:01,548.548 INFO    ] Checking for existing commands in stream...
[2026-06-12 16:32:01,638.638 INFO    ] No existing commands found in stream
[2026-06-12 16:32:06,648.648 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 16:32:06,651.651 INFO    ] Waiting 1.94 seconds before fallback handling...
[2026-06-12 16:32:08,984.984 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 16:32:08,986.986 INFO    ] Checking for system updates...
[2026-06-12 16:32:09,006.006 INFO    ] 200
[2026-06-12 16:32:09,008.008 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:32:09,038.038 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 16:32:09,039.039 INFO    ] No update needed
[2026-06-12 16:32:09,041.041 INFO    ] Checking for camera pi updates...
[2026-06-12 16:32:09,060.060 INFO    ] 200
[2026-06-12 16:32:09,061.061 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:32:09,084.084 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 16:32:09,138.138 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 16:32:09,140.140 INFO    ] No camera update needed
[2026-06-12 16:32:09,141.141 INFO    ] Script finished. Safe exiting...
[2026-06-12 16:32:09,142.142 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 16:32:09,145.145 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 16:32:09,148.148 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 16:32:11,186.186 INFO    ] ================================================
[2026-06-12 16:32:11,202.202 INFO    ] Launching Daemon at Fri Jun 12 16:32:11 IST 2026
[2026-06-12 16:32:11,213.213 INFO    ] ================================================
[2026-06-12 16:32:11,570.570 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 16:32:11
[2026-06-12 16:32:11,911.911 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 16:32:12,059.059 INFO    ] Initializing speech engine...
[2026-06-12 16:32:12,072.072 INFO    ] 2026-06-12 16:32:12
[2026-06-12 16:32:12,281.281 INFO    ] 2026-06-12 16:32:12
[2026-06-12 16:32:12,310.310 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 16:32:12,494.494 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 16:32:12,504.504 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 16:32:12,650.650 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 16:32:12,703.703 INFO    ] time= 12/06/2026 16:32:12
[2026-06-12 16:32:12,726.726 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 16:32:12,732.732 INFO    ] Checking for existing commands in stream...
[2026-06-12 16:32:12,799.799 INFO    ] No existing commands found in stream
[2026-06-12 16:32:17,808.808 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 16:32:17,812.812 INFO    ] Waiting 2.67 seconds before fallback handling...
[2026-06-12 16:32:20,869.869 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 16:32:20,870.870 INFO    ] Checking for system updates...
[2026-06-12 16:32:20,892.892 INFO    ] 200
[2026-06-12 16:32:20,893.893 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:32:20,925.925 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 16:32:20,926.926 INFO    ] No update needed
[2026-06-12 16:32:20,927.927 INFO    ] Checking for camera pi updates...
[2026-06-12 16:32:20,946.946 INFO    ] 200
[2026-06-12 16:32:20,948.948 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:32:20,982.982 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 16:32:21,121.121 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 16:32:21,122.122 INFO    ] No camera update needed
[2026-06-12 16:32:21,123.123 INFO    ] Script finished. Safe exiting...
[2026-06-12 16:32:21,124.124 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 16:32:21,127.127 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 16:32:21,130.130 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 16:32:23,154.154 INFO    ] ================================================
[2026-06-12 16:32:23,164.164 INFO    ] Launching Daemon at Fri Jun 12 16:32:23 IST 2026
[2026-06-12 16:32:23,170.170 INFO    ] ================================================
[2026-06-12 16:32:23,540.540 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 16:32:23
[2026-06-12 16:32:23,874.874 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 16:32:24,023.023 INFO    ] Initializing speech engine...
[2026-06-12 16:32:24,034.034 INFO    ] 2026-06-12 16:32:24
[2026-06-12 16:32:24,250.250 INFO    ] 2026-06-12 16:32:24
[2026-06-12 16:32:24,280.280 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 16:32:24,484.484 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 16:32:24,499.499 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 16:32:24,684.684 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 16:32:24,710.710 INFO    ] time= 12/06/2026 16:32:24
[2026-06-12 16:32:24,715.715 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 16:32:24,717.717 INFO    ] Checking for existing commands in stream...
[2026-06-12 16:32:24,786.786 INFO    ] Found 1 existing command(s) in stream
[2026-06-12 16:32:24,788.788 INFO    ] Checking historical command: ID=1781262141718-0
[2026-06-12 16:32:24,815.815 INFO    ] process_and_cleanup_command: msg_id=1781262141718-0
[2026-06-12 16:32:24,822.822 INFO    ] is_command_expired: timestamp=2026-06-12T11:02:21.066Z, expiry=30s
[2026-06-12 16:32:24,904.904 INFO    ] Command removed from stream: 1781262141718-0. returning for processing...
[2026-06-12 16:32:24,906.906 INFO    ] ***** get_valid_command
[2026-06-12 16:32:24,938.938 INFO    ] {'source': 'webapp', 'data': '{"request_id":"start-order-1781262141066-p1q7i7ew4","orderId":"TM09202301260612163138594","is_vending":false}', 'timeout': '10', 'timestamp': '2026-06-12T11:02:21.066Z', 'command': 'start-order'}
[2026-06-12 16:32:24,942.942 INFO    ] ***** Parsed command data: {'is_vending': False, 'orderId': 'TM09202301260612163138594', 'request_id': 'start-order-1781262141066-p1q7i7ew4'}
[2026-06-12 16:32:24,945.945 INFO    ] Handling start order...
[2026-06-12 16:32:24,951.951 INFO    ] handle_start_order_command
[2026-06-12 16:32:24,958.958 INFO    ] _send_start_order_success: request_id=start-order-1781262141066-p1q7i7ew4, order_id=TM09202301260612163138594
[2026-06-12 16:32:24,962.962 INFO    ] [_send_start_order_success] Adding message to stream: machine:TM09202301
[2026-06-12 16:32:25,030.030 INFO    ] [_send_start_order_success] Message added to stream with ID: 1781262145045-0
[2026-06-12 16:32:25,033.033 INFO    ] ✅ Start-order command succeeded - order locked, waiting for process-order command
[2026-06-12 16:32:25,035.035 INFO    ] Checking for system updates...
[2026-06-12 16:32:25,068.068 INFO    ] 200
[2026-06-12 16:32:25,073.073 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_HEALTH_CHECK"}
[2026-06-12 16:32:25,078.078 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping update check
[2026-06-12 16:32:25,085.085 INFO    ] Checking for camera pi updates...
[2026-06-12 16:32:25,161.161 INFO    ] 200
[2026-06-12 16:32:25,164.164 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_HEALTH_CHECK"}
[2026-06-12 16:32:25,191.191 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping camera update check
[2026-06-12 16:32:25,217.217 INFO    ] Script finished. Safe exiting...
[2026-06-12 16:32:25,220.220 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 16:32:25,226.226 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 16:32:25,231.231 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-06-12 16:32:25,237.237 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 16:32:27,279.279 INFO    ] ================================================
[2026-06-12 16:32:27,295.295 INFO    ] Launching Daemon at Fri Jun 12 16:32:27 IST 2026
[2026-06-12 16:32:27,311.311 INFO    ] ================================================
[2026-06-12 16:32:27,651.651 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 16:32:27
[2026-06-12 16:32:27,973.973 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 16:32:28,114.114 INFO    ] Initializing speech engine...
[2026-06-12 16:32:28,124.124 INFO    ] 2026-06-12 16:32:28
[2026-06-12 16:32:28,337.337 INFO    ] 2026-06-12 16:32:28
[2026-06-12 16:32:28,365.365 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 16:32:28,492.492 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 16:32:28,509.509 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 16:32:28,700.700 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 16:32:28,757.757 INFO    ] time= 12/06/2026 16:32:28
[2026-06-12 16:32:28,804.804 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 16:32:28,823.823 INFO    ] Checking for existing commands in stream...
[2026-06-12 16:32:28,977.977 INFO    ] Found 2 existing command(s) in stream
[2026-06-12 16:32:28,981.981 INFO    ] Checking historical command: ID=1781262145045-0
[2026-06-12 16:32:28,983.983 INFO    ] process_and_cleanup_command: msg_id=1781262145045-0
[2026-06-12 16:32:28,986.986 INFO    ] is_command_expired: timestamp=2026-06-12T11:02:24.960102Z, expiry=30s
[2026-06-12 16:32:29,070.070 INFO    ] Command removed from stream: 1781262145045-0. returning for processing...
[2026-06-12 16:32:29,073.073 INFO    ] ***** get_valid_command
[2026-06-12 16:32:29,077.077 INFO    ] {'message': 'start-order success', 'metadata_request_id': 'start-order-1781262141066-p1q7i7ew4', 'metadata_order_id': 'TM09202301260612163138594', 'status': 'success', 'imei': 'TM09202301', 'message_type': 'command_response', 'timestamp': '2026-06-12T11:02:24.960102Z'}
[2026-06-12 16:32:29,081.081 INFO    ] Checking historical command: ID=1781262146472-0
[2026-06-12 16:32:29,085.085 INFO    ] process_and_cleanup_command: msg_id=1781262146472-0
[2026-06-12 16:32:29,088.088 INFO    ] is_command_expired: timestamp=2026-06-12T11:02:25.845Z, expiry=30s
[2026-06-12 16:32:29,149.149 INFO    ] Command removed from stream: 1781262146472-0. returning for processing...
[2026-06-12 16:32:29,153.153 INFO    ] ***** get_valid_command
[2026-06-12 16:32:29,156.156 INFO    ] {'command': 'process-order', 'source': 'webapp', 'timestamp': '2026-06-12T11:02:25.845Z', 'data': '{"request_id":"process-order-1781262145845-yl412hirh","orderId":"TM09202301260612163138594","is_vending":false,"accessCode":"97964688"}', 'timeout': '60'}
[2026-06-12 16:32:29,159.159 INFO    ] ***** Parsed command data: {'accessCode': '97964688', 'is_vending': False, 'orderId': 'TM09202301260612163138594', 'request_id': 'process-order-1781262145845-yl412hirh'}
[2026-06-12 16:32:29,164.164 INFO    ] Handling process order...
[2026-06-12 16:32:29,168.168 INFO    ] Processing process-order command...
[2026-06-12 16:32:29,173.173 INFO    ] 🔍 Lock file Order ID: TM09202301260612163138594, TS: 2026-06-12 16:32:24
[2026-06-12 16:32:29,185.185 INFO    ] ✅ Order lock valid for TM09202301260612163138594
[2026-06-12 16:32:29,189.189 INFO    ] Received access code in process-order, skipping PHP API call
[2026-06-12 16:32:29,194.194 INFO    ] processing access code 97964688 for order TM09202301260612163138594
[2026-06-12 16:32:29,210.210 INFO    ] 🔍 Lock file Order ID: TM09202301260612163138594, TS: 2026-06-12 16:32:24
[2026-06-12 16:32:29,214.214 INFO    ] ✅ Order lock valid for TM09202301260612163138594
[2026-06-12 16:32:29,219.219 INFO    ] 2026-06-12 16:32:29
[2026-06-12 16:32:29,292.292 INFO    ] 200
[2026-06-12 16:32:29,295.295 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:32:29,321.321 INFO    ] 97964688
[2026-06-12 16:32:29,343.343 INFO    ] 2026-06-12 16:32:29
[2026-06-12 16:32:29,349.349 INFO    ] session id :289669672
[2026-06-12 16:32:29,351.351 INFO    ] http://localhost:5000/v2/getOrderByAccessCode?access_code=97964688&imei=TM09202301&session_id=289669672
[2026-06-12 16:32:30,006.006 INFO    ] 200
[2026-06-12 16:32:30,008.008 INFO    ] {"status": true, "msg": "Order Data", "data": {"bill_amount": "20", "access_code": "97964688", "order_id": "TM09202301260612163138594", "mobile": "8250594481", "proposed_sku_json": [{"unit_price": 10, "qty": 2, "skuid": "4500646", "offer_desc": "", "offer_id": "", "door_id": "1", "tray_id": "12", "sku_total": 20, "mrp": "10", "image_url": "https://images.tinymart.in/product/4500646-2968.webp", "name": "Modern Kitchens Moong daal 30g"}], "invoice_bill": "20"}, "rstatus": true}
[2026-06-12 16:32:30,009.009 INFO    ] 20
[2026-06-12 16:32:30,011.011 INFO    ] TM09202301260612163138594
[2026-06-12 16:32:30,012.012 INFO    ] 8250594481
[2026-06-12 16:32:30,013.013 INFO    ] 2026-06-12 16:32:30
[2026-06-12 16:32:30,015.015 INFO    ] Door Opening for user mobile ending with  four four eight one 
[2026-06-12 16:32:30,016.016 INFO    ] Door Opening for user mobile ending with  four four eight one 
[2026-06-12 16:32:30,017.017 INFO    ] d82a0c4064e6f072a37574c0b0486b85
[2026-06-12 16:32:30,023.023 INFO    ] 2026-06-12 16:32:30
[2026-06-12 16:32:30,024.024 INFO    ] playing audio file
[2026-06-12 16:32:30,034.034 INFO    ] 2026-06-12 16:32:30
[2026-06-12 16:32:30,036.036 INFO    ] 2026-06-12 16:32:30
[2026-06-12 16:32:30,038.038 INFO    ] publish_status: order_id=TM09202301260612163138594
[2026-06-12 16:32:30,040.040 INFO    ] [publish_status] Adding message to stream: order:TM09202301260612163138594
[2026-06-12 16:32:30,122.122 INFO    ] [publish_status] Message added to stream with ID: 1781262150138-0
[2026-06-12 16:32:30,123.123 INFO    ] Published to order:TM09202301260612163138594: {'server_status': 'order-started', 'order_id': 'TM09202301260612163138594', 'server_response': '{"status": true, "msg": "Order Data", "data": {"order_id": "TM09202301260612163138594", "mobile": "8250594481", "proposed_sku_json": [{"name": "Modern Kitchens Moong daal 30g", "door_id": "1", "sku_total": 20, "skuid": "4500646", "qty": 2, "tray_id": "12", "offer_desc": "", "mrp": "10", "offer_id": "", "image_url": "https://images.tinymart.in/product/4500646-2968.webp", "unit_price": 10}], "invoice_bill": "20", "access_code": "97964688", "bill_amount": "20"}, "rstatus": true}', 'timestamp': '2026-06-12T11:02:30.037681Z'} (ID: 1781262150138-0)
[2026-06-12 16:32:30,468.468 INFO    ] {'server_status': 'order-started', 'order_id': 'TM09202301260612163138594', 'server_response': {'status': True, 'msg': 'Order Data', 'data': {'order_id': 'TM09202301260612163138594', 'mobile': '8250594481', 'proposed_sku_json': [{'name': 'Modern Kitchens Moong daal 30g', 'door_id': '1', 'sku_total': 20, 'skuid': '4500646', 'qty': 2, 'tray_id': '12', 'offer_desc': '', 'mrp': '10', 'offer_id': '', 'image_url': 'https://images.tinymart.in/product/4500646-2968.webp', 'unit_price': 10}], 'invoice_bill': '20', 'access_code': '97964688', 'bill_amount': '20'}, 'rstatus': True}}
[2026-06-12 16:32:30,470.470 INFO    ] 200
[2026-06-12 16:32:30,471.471 INFO    ] {"data":{"server_status":"order-started","order_id":"TM09202301260612163138594","server_response":{"status":true,"msg":"Order Data","data":{"order_id":"TM09202301260612163138594","mobile":"8250594481","proposed_sku_json":[{"name":"Modern Kitchens Moong daal 30g","door_id":"1","sku_total":20,"skuid":"4500646","qty":2,"tray_id":"12","offer_desc":"","mrp":"10","offer_id":"","image_url":"https:\/\/images.tinymart.in\/product\/4500646-2968.webp","unit_price":10}],"invoice_bill":"20","access_code":"97964688","bill_amount":"20"},"rstatus":true}},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-12 16:32:30,473.473 INFO    ] {'response': {'status': True, 'data': 'order updated successfully', 'code': 'ORDER_EXISTS', 'msg': 'order updated successfully'}, 'data': {'server_status': 'order-started', 'order_id': 'TM09202301260612163138594', 'server_response': {'status': True, 'msg': 'Order Data', 'data': {'proposed_sku_json': [{'door_id': '1', 'sku_total': 20, 'skuid': '4500646', 'qty': 2, 'name': 'Modern Kitchens Moong daal 30g', 'offer_desc': '', 'mrp': '10', 'tray_id': '12', 'offer_id': '', 'image_url': 'https://images.tinymart.in/product/4500646-2968.webp', 'unit_price': 10}], 'mobile': '8250594481', 'order_id': 'TM09202301260612163138594', 'invoice_bill': '20', 'access_code': '97964688', 'bill_amount': '20'}, 'rstatus': True}}}
[2026-06-12 16:32:30,474.474 INFO    ] 2026-06-12 16:32:30
[2026-06-12 16:32:30,499.499 INFO    ] 200
[2026-06-12 16:32:30,501.501 INFO    ] True
[2026-06-12 16:32:30,588.588 INFO    ] 200
[2026-06-12 16:32:30,590.590 INFO    ] {"error": {"tmessage": "In Progress", "umessage": "In Progress", "data": {}, "code": 20001}, "SectionSKU": {"Header": "Thank you for bearing with us :)", "skus": []}, "rstatus": false, "SectionStatus": {"Header": " Your order is under process  ", "SubHeader": "Please wait while we process your order", "UI_Header": "", "Note": ""}, "status": "False", "voiceNote": "Please Wait", "SectionMain": {"Header": "Processing Order"}}
[2026-06-12 16:32:30,592.592 INFO    ] {'voiceNote': 'Please Wait', 'SectionSKU': {'skus': [], 'Header': 'Thank you for bearing with us :)'}, 'status': 'False', 'SectionMain': {'Header': 'Processing Order'}, 'rstatus': False, 'error': {'umessage': 'In Progress', 'code': 20001, 'data': {}, 'tmessage': 'In Progress'}, 'SectionStatus': {'Note': '', 'SubHeader': 'Please wait while we process your order', 'Header': ' Your order is under process  ', 'UI_Header': ''}}
[2026-06-12 16:32:30,593.593 INFO    ] *** process_order ***
[2026-06-12 16:32:31,724.724 INFO    ] 200
[2026-06-12 16:32:31,725.725 INFO    ] {"delay": 0, "SectionSKU": {"Header": "Thank you for bearing with us :)", "skus": []}, "rstatus": true, "SectionStatus": {"Header": " Your order is under process  ", "SubHeader": "Please wait while we process your order", "UI_Header": "", "Note": ""}, "status": "True", "voiceNote": "Please Wait", "SectionMain": {"Header": "Processing Order"}}
[2026-06-12 16:32:31,727.727 INFO    ] {'delay': 0, 'voiceNote': 'Please Wait', 'SectionSKU': {'skus': [], 'Header': 'Thank you for bearing with us :)'}, 'status': 'True', 'SectionMain': {'Header': 'Processing Order'}, 'rstatus': True, 'SectionStatus': {'Note': '', 'SubHeader': 'Please wait while we process your order', 'Header': ' Your order is under process  ', 'UI_Header': ''}}
[2026-06-12 16:32:31,729.729 INFO    ] *** process_order ***
[2026-06-12 16:32:31,731.731 INFO    ] publish_status: order_id=TM09202301260612163138594
[2026-06-12 16:32:31,732.732 INFO    ] [publish_status] Adding message to stream: order:TM09202301260612163138594
[2026-06-12 16:32:31,821.821 INFO    ] [publish_status] Message added to stream with ID: 1781262151837-0
[2026-06-12 16:32:31,823.823 INFO    ] Published to order:TM09202301260612163138594: {'server_status': 'doorOpened', 'order_id': 'TM09202301260612163138594', 'server_response': '{"delay": 0, "SectionMain": {"Header": "Processing Order"}, "SectionSKU": {"skus": [], "Header": "Thank you for bearing with us :)"}, "status": "True", "voiceNote": "Door is open...", "SectionStatus": {"Header": " Your order is under process  ", "SubHeader": "You can pull the door now.", "Note": "", "UI_Header": ""}, "rstatus": true}'} (ID: 1781262151837-0)
[2026-06-12 16:32:32,913.913 INFO    ] 2026-06-12 16:32:32
[2026-06-12 16:32:32,915.915 INFO    ] publish_status: order_id=TM09202301260612163138594
[2026-06-12 16:32:32,918.918 INFO    ] [publish_status] Adding message to stream: order:TM09202301260612163138594
[2026-06-12 16:32:32,984.984 INFO    ] [publish_status] Message added to stream with ID: 1781262152999-0
[2026-06-12 16:32:32,988.988 INFO    ] Published to order:TM09202301260612163138594: {'server_status': 'processOrder', 'order_id': 'TM09202301260612163138594', 'server_response': '{"delay": 0, "voiceNote": "Please Wait", "SectionSKU": {"skus": [], "Header": "Thank you for bearing with us :)"}, "status": "True", "SectionMain": {"Header": "Processing Order"}, "rstatus": true, "SectionStatus": {"Note": "", "SubHeader": "Please wait while we process your order", "Header": " Your order is under process  ", "UI_Header": ""}}', 'timestamp': '2026-06-12T11:02:32.914243Z'} (ID: 1781262152999-0)
[2026-06-12 16:32:33,141.141 INFO    ] {'server_status': 'processOrder', 'order_id': 'TM09202301260612163138594', 'server_response': {'delay': 0, 'voiceNote': 'Please Wait', 'SectionSKU': {'skus': [], 'Header': 'Thank you for bearing with us :)'}, 'status': 'True', 'SectionMain': {'Header': 'Processing Order'}, 'rstatus': True, 'SectionStatus': {'Note': '', 'SubHeader': 'Please wait while we process your order', 'Header': ' Your order is under process  ', 'UI_Header': ''}}}
[2026-06-12 16:32:33,142.142 INFO    ] 200
[2026-06-12 16:32:33,143.143 INFO    ] {"data":{"server_status":"processOrder","order_id":"TM09202301260612163138594","server_response":{"delay":0,"voiceNote":"Please Wait","SectionSKU":{"skus":[],"Header":"Thank you for bearing with us :)"},"status":"true","SectionMain":{"Header":"Processing Order"},"rstatus":true,"SectionStatus":{"Note":"","SubHeader":"Please wait while we process your order","Header":" Your order is under process  ","UI_Header":""}}},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-12 16:32:33,145.145 INFO    ] {'response': {'status': True, 'data': 'order updated successfully', 'code': 'ORDER_EXISTS', 'msg': 'order updated successfully'}, 'data': {'server_status': 'processOrder', 'order_id': 'TM09202301260612163138594', 'server_response': {'SectionStatus': {'Header': ' Your order is under process  ', 'SubHeader': 'Please wait while we process your order', 'Note': '', 'UI_Header': ''}, 'delay': 0, 'SectionMain': {'Header': 'Processing Order'}, 'SectionSKU': {'skus': [], 'Header': 'Thank you for bearing with us :)'}, 'status': 'true', 'voiceNote': 'Please Wait', 'rstatus': True}}}
[2026-06-12 16:32:33,146.146 INFO    ] 2026-06-12 16:32:33
[2026-06-12 16:32:33,148.148 INFO    ] None
[2026-06-12 16:32:33,149.149 INFO    ] Opening Door now
[2026-06-12 16:32:33,151.151 INFO    ] Opening Door now
[2026-06-12 16:32:33,152.152 INFO    ] 08e5d1063504bf393c26f0bfa436e9f9
[2026-06-12 16:32:33,154.154 INFO    ] 2026-06-12 16:32:33
[2026-06-12 16:32:33,156.156 INFO    ] playing audio file
[2026-06-12 16:32:33,167.167 INFO    ] 2026-06-12 16:32:33
[2026-06-12 16:32:33,169.169 INFO    ] 2026-06-12 16:32:33
[2026-06-12 16:32:36,538.538 INFO    ] 200
[2026-06-12 16:32:36,540.540 INFO    ] {"error": {"tmessage": "In Progress", "umessage": "In Progress", "data": {}, "code": 20001}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"name": "Modern Kitchens Moong daal 30g", "qty": 2}]}, "rstatus": false, "SectionStatus": {"Header": "Please Close Door 1", "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"}, "status": "False", "voiceNote": "Door 1 is open now", "SectionMain": {"Header": "Door Open"}}
[2026-06-12 16:32:36,541.541 INFO    ] {'voiceNote': 'Door 1 is open now', 'SectionSKU': {'skus': [{'name': 'Modern Kitchens Moong daal 30g', 'qty': 2}], 'Header': 'Pick the below items from the door'}, 'status': 'False', 'SectionMain': {'Header': 'Door Open'}, 'rstatus': False, 'error': {'umessage': 'In Progress', 'code': 20001, 'data': {}, 'tmessage': 'In Progress'}, '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'}}
[2026-06-12 16:32:39,577.577 INFO    ] 200
[2026-06-12 16:32:39,578.578 INFO    ] {"error": {"tmessage": "In Progress", "umessage": "In Progress", "data": {}, "code": 20001}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"name": "Modern Kitchens Moong daal 30g", "qty": 2}]}, "rstatus": false, "SectionStatus": {"Header": "Please Close Door 1", "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"}, "status": "False", "voiceNote": "Please close door 1", "SectionMain": {"Header": "Door Open"}}
[2026-06-12 16:32:39,580.580 INFO    ] {'voiceNote': 'Please close door 1', 'SectionSKU': {'skus': [{'name': 'Modern Kitchens Moong daal 30g', 'qty': 2}], 'Header': 'Pick the below items from the door'}, 'status': 'False', 'SectionMain': {'Header': 'Door Open'}, 'rstatus': False, 'error': {'umessage': 'In Progress', 'code': 20001, 'data': {}, 'tmessage': 'In Progress'}, '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'}}
[2026-06-12 16:32:42,808.808 INFO    ] 200
[2026-06-12 16:32:42,810.810 INFO    ] {"error": {"tmessage": "In Progress", "umessage": "In Progress", "data": {}, "code": 20001}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"name": "Modern Kitchens Moong daal 30g", "qty": 2}]}, "rstatus": false, "SectionStatus": {"Header": "Please Close Door 1", "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"}, "status": "False", "voiceNote": "Please close door 1", "SectionMain": {"Header": "Door Open"}}
[2026-06-12 16:32:42,812.812 INFO    ] Please close door 1
[2026-06-12 16:32:42,814.814 INFO    ] Please close door 1
[2026-06-12 16:32:42,816.816 INFO    ] 787c302d53ab591e55c034b99c7aadd2
[2026-06-12 16:32:42,817.817 INFO    ] 2026-06-12 16:32:42
[2026-06-12 16:32:42,819.819 INFO    ] playing audio file
[2026-06-12 16:32:42,830.830 INFO    ] 2026-06-12 16:32:42
[2026-06-12 16:32:42,832.832 INFO    ] publish_status: order_id=TM09202301260612163138594
[2026-06-12 16:32:42,834.834 INFO    ] [publish_status] Adding message to stream: order:TM09202301260612163138594
[2026-06-12 16:32:42,924.924 INFO    ] [publish_status] Message added to stream with ID: 1781262162939-0
[2026-06-12 16:32:42,926.926 INFO    ] Published to order:TM09202301260612163138594: {'server_status': 'OrderStatus', 'order_id': 'TM09202301260612163138594', 'server_response': '{"voiceNote": "Please close door 1", "SectionSKU": {"skus": [{"name": "Modern Kitchens Moong daal 30g", "qty": 2}], "Header": "Pick the below items from the door"}, "status": "False", "SectionMain": {"Header": "Door Open"}, "rstatus": false, "error": {"umessage": "In Progress", "code": 20001, "data": {}, "tmessage": "In Progress"}, "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"}}', 'timestamp': '2026-06-12T11:02:42.831479Z'} (ID: 1781262162939-0)
[2026-06-12 16:32:43,366.366 INFO    ] {'server_status': 'OrderStatus', 'order_id': 'TM09202301260612163138594', 'server_response': {'voiceNote': 'Please close door 1', 'SectionSKU': {'skus': [{'name': 'Modern Kitchens Moong daal 30g', 'qty': 2}], 'Header': 'Pick the below items from the door'}, 'status': 'False', 'SectionMain': {'Header': 'Door Open'}, 'rstatus': False, 'error': {'umessage': 'In Progress', 'code': 20001, 'data': {}, 'tmessage': 'In Progress'}, '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'}}}
[2026-06-12 16:32:43,367.367 INFO    ] 200
[2026-06-12 16:32:43,369.369 INFO    ] {"data":{"server_status":"OrderStatus","order_id":"TM09202301260612163138594","server_response":{"voiceNote":"Please close door 1","SectionSKU":{"skus":[{"name":"Modern Kitchens Moong daal 30g","qty":2}],"Header":"Pick the below items from the door"},"status":"false","SectionMain":{"Header":"Door Open"},"rstatus":false,"error":{"umessage":"In Progress","code":20001,"data":[],"tmessage":"In Progress"},"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"}}},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-12 16:32:43,371.371 INFO    ] {'response': {'status': True, 'data': 'order updated successfully', 'code': 'ORDER_EXISTS', 'msg': 'order updated successfully'}, 'data': {'server_status': 'OrderStatus', 'order_id': 'TM09202301260612163138594', 'server_response': {'SectionStatus': {'Header': 'Please Close Door 1', 'SubHeader': 'Please Pick the Products and close the door', 'Note': 'Please Close the door after picking up products', 'UI_Header': 'DOOR 1\nIS \nOPEN \nNOW'}, 'SectionMain': {'Header': 'Door Open'}, 'SectionSKU': {'skus': [{'name': 'Modern Kitchens Moong daal 30g', 'qty': 2}], 'Header': 'Pick the below items from the door'}, 'status': 'false', 'voiceNote': 'Please close door 1', 'error': {'umessage': 'In Progress', 'data': [], 'code': 20001, 'tmessage': 'In Progress'}, 'rstatus': False}}}
[2026-06-12 16:32:43,372.372 INFO    ] {'voiceNote': 'Please close door 1', 'SectionSKU': {'skus': [{'name': 'Modern Kitchens Moong daal 30g', 'qty': 2}], 'Header': 'Pick the below items from the door'}, 'status': 'False', 'SectionMain': {'Header': 'Door Open'}, 'rstatus': False, 'error': {'umessage': 'In Progress', 'code': 20001, 'data': {}, 'tmessage': 'In Progress'}, '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'}}
[2026-06-12 16:32:46,409.409 INFO    ] 200
[2026-06-12 16:32:46,410.410 INFO    ] {"delay": 100, "SectionSKU": {"Header": "If you like us, tell others... else tell us", "skus": []}, "rstatus": true, "SectionStatus": {"Header": " Order is complete ", "SubHeader": "Please wait for invoice to generate", "UI_Header": "", "Note": "If any due amount, clear at https://go.tinymart.in"}, "status": "True", "voiceNote": "Transaction Completed", "SectionMain": {"Header": "Door Closed"}}
[2026-06-12 16:32:46,412.412 INFO    ] {'delay': 100, 'voiceNote': 'Transaction Completed', 'SectionSKU': {'skus': [], 'Header': 'If you like us, tell others... else tell us'}, 'status': 'True', 'SectionMain': {'Header': 'Door Closed'}, 'rstatus': True, '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': ''}}
[2026-06-12 16:32:46,414.414 INFO    ] 2026-06-12 16:32:46
[2026-06-12 16:32:46,416.416 INFO    ] Order Completed 
[2026-06-12 16:32:46,418.418 INFO    ] Order Completed 
[2026-06-12 16:32:46,419.419 INFO    ] 193c8a8cf3bf490ccfe0b23598544a83
[2026-06-12 16:32:46,424.424 INFO    ] 2026-06-12 16:32:46
[2026-06-12 16:32:46,426.426 INFO    ] playing audio file
[2026-06-12 16:32:46,436.436 INFO    ] 2026-06-12 16:32:46
[2026-06-12 16:32:46,439.439 INFO    ] {'delay': 100, 'voiceNote': 'Transaction Completed', 'SectionSKU': {'skus': [], 'Header': 'If you like us, tell others... else tell us'}, 'status': 'True', 'SectionMain': {'Header': 'Door Closed'}, 'rstatus': True, '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': ''}}
[2026-06-12 16:32:46,441.441 INFO    ] 2026-06-12 16:32:46
[2026-06-12 16:32:47,580.580 INFO    ] 200
[2026-06-12 16:32:47,582.582 INFO    ] {"anomaly": 0, "skus": [{"image_url": "https://images.tinymart.in/product/4500646-2968.webp", "qty": 2, "skuid": "4500646", "unit_price": "10", "tray_id": "12", "sku_total": 20.0, "mrp": "10", "door_id": "", "name": "Modern Kitchens Moong daal 30g per peice"}], "total_amount": 20.0, "orderId": "TM09202301260612163138594", "res": "True", "rstatus": true, "logic": "WBL"}
[2026-06-12 16:32:47,584.584 INFO    ] {'skus': [{'door_id': '', 'sku_total': 20.0, 'unit_price': '10', 'qty': 2, 'name': 'Modern Kitchens Moong daal 30g per peice', 'mrp': '10', 'tray_id': '12', 'image_url': 'https://images.tinymart.in/product/4500646-2968.webp', 'skuid': '4500646'}], 'res': 'True', 'total_amount': 20.0, 'logic': 'WBL', 'anomaly': 0, 'rstatus': True, 'orderId': 'TM09202301260612163138594'}
[2026-06-12 16:32:47,585.585 INFO    ] {'skus': [{'door_id': '', 'sku_total': 20.0, 'unit_price': '10', 'qty': 2, 'name': 'Modern Kitchens Moong daal 30g per peice', 'mrp': '10', 'tray_id': '12', 'image_url': 'https://images.tinymart.in/product/4500646-2968.webp', 'skuid': '4500646'}], 'res': 'True', 'total_amount': 20.0, 'logic': 'WBL', 'anomaly': 0, 'rstatus': True, 'orderId': 'TM09202301260612163138594'}
[2026-06-12 16:32:47,586.586 INFO    ] 2026-06-12 16:32:47
[2026-06-12 16:32:47,588.588 INFO    ] 2026-06-12 16:32:47
[2026-06-12 16:32:47,589.589 INFO    ] 20
[2026-06-12 16:32:47,590.590 INFO    ] 2026-06-12 16:32:47
[2026-06-12 16:32:47,592.592 INFO    ] 2026-06-12 16:32:47
[2026-06-12 16:32:47,593.593 INFO    ]  Your Bill Amount is 20
[2026-06-12 16:32:47,595.595 INFO    ]  Your Bill Amount is 20
[2026-06-12 16:32:47,598.598 INFO    ] 69e7720cf62ffa67ab0522541575e508
[2026-06-12 16:32:47,600.600 INFO    ] 2026-06-12 16:32:47
[2026-06-12 16:32:47,603.603 INFO    ] playing audio file
[2026-06-12 16:32:47,620.620 INFO    ] 2026-06-12 16:32:47
[2026-06-12 16:32:47,623.623 INFO    ] 2026-06-12 16:32:47
[2026-06-12 16:32:47,627.627 INFO    ] publish_status: order_id=TM09202301260612163138594
[2026-06-12 16:32:47,630.630 INFO    ] [publish_status] Adding message to stream: order:TM09202301260612163138594
[2026-06-12 16:32:47,692.692 INFO    ] [publish_status] Message added to stream with ID: 1781262167707-0
[2026-06-12 16:32:47,695.695 INFO    ] Published to order:TM09202301260612163138594: {'server_status': 'invoiceOrder', 'order_id': 'TM09202301260612163138594', 'server_response': '{"skus": [{"door_id": "", "sku_total": 20.0, "unit_price": "10", "qty": 2, "name": "Modern Kitchens Moong daal 30g per peice", "mrp": "10", "tray_id": "12", "image_url": "https://images.tinymart.in/product/4500646-2968.webp", "skuid": "4500646"}], "res": "True", "total_amount": 20.0, "logic": "WBL", "anomaly": 0, "rstatus": true, "orderId": "TM09202301260612163138594"}', 'timestamp': '2026-06-12T11:02:47.625224Z'} (ID: 1781262167707-0)
[2026-06-12 16:32:48,191.191 INFO    ] {'server_status': 'invoiceOrder', 'order_id': 'TM09202301260612163138594', 'server_response': {'skus': [{'door_id': '', 'sku_total': 20.0, 'unit_price': '10', 'qty': 2, 'name': 'Modern Kitchens Moong daal 30g per peice', 'mrp': '10', 'tray_id': '12', 'image_url': 'https://images.tinymart.in/product/4500646-2968.webp', 'skuid': '4500646'}], 'res': 'True', 'total_amount': 20.0, 'logic': 'WBL', 'anomaly': 0, 'rstatus': True, 'orderId': 'TM09202301260612163138594'}}
[2026-06-12 16:32:48,192.192 INFO    ] 200
[2026-06-12 16:32:48,193.193 INFO    ] {"data":{"server_status":"invoiceOrder","order_id":"TM09202301260612163138594","server_response":{"skus":[{"door_id":"","sku_total":20,"unit_price":"10","qty":2,"name":"Modern Kitchens Moong daal 30g per peice","mrp":"10","tray_id":"12","image_url":"https:\/\/images.tinymart.in\/product\/4500646-2968.webp","skuid":"4500646"}],"res":"true","total_amount":20,"logic":"WBL","anomaly":0,"rstatus":true,"orderId":"TM09202301260612163138594"}},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-12 16:32:48,195.195 INFO    ] {'response': {'status': True, 'data': 'order updated successfully', 'code': 'ORDER_EXISTS', 'msg': 'order updated successfully'}, 'data': {'server_status': 'invoiceOrder', 'order_id': 'TM09202301260612163138594', 'server_response': {'skus': [{'door_id': '', 'sku_total': 20, 'unit_price': '10', 'qty': 2, 'name': 'Modern Kitchens Moong daal 30g per peice', 'mrp': '10', 'tray_id': '12', 'image_url': 'https://images.tinymart.in/product/4500646-2968.webp', 'skuid': '4500646'}], 'res': 'true', 'total_amount': 20, 'anomaly': 0, 'orderId': 'TM09202301260612163138594', 'rstatus': True, 'logic': 'WBL'}}}
[2026-06-12 16:32:48,197.197 INFO    ] {'response': {'status': True, 'data': 'order updated successfully', 'code': 'ORDER_EXISTS', 'msg': 'order updated successfully'}, 'data': {'server_status': 'invoiceOrder', 'order_id': 'TM09202301260612163138594', 'server_response': {'skus': [{'door_id': '', 'sku_total': 20, 'unit_price': '10', 'qty': 2, 'name': 'Modern Kitchens Moong daal 30g per peice', 'mrp': '10', 'tray_id': '12', 'image_url': 'https://images.tinymart.in/product/4500646-2968.webp', 'skuid': '4500646'}], 'res': 'true', 'total_amount': 20, 'anomaly': 0, 'orderId': 'TM09202301260612163138594', 'rstatus': True, 'logic': 'WBL'}}}
[2026-06-12 16:32:48,198.198 INFO    ] 2026-06-12 16:32:48
[2026-06-12 16:32:51,369.369 INFO    ] 200
[2026-06-12 16:32:51,370.370 INFO    ] {"order_items": [], "tray_sync": ["TM09202301260612163138594", "TM09202301260612163138594", "TM09202301260612163138594", "TM09202301260612163138594", "TM09202301260612163138594", "TM09202301260612163138594"], "orders": [], "order_items_synced": ["TM09202301260612163138594_0"], "orders_synced": [], "orders_data_synced": [], "status": true, "orders_data": [], "tray_synced": ["TM09202301260612163138594", "TM09202301260612163138594", "TM09202301260612163138594", "TM09202301260612163138594", "TM09202301260612163138594", "TM09202301260612163138594", "TM09202301260612163138594", "TM09202301260612163138594", "TM09202301260612163138594", "TM09202301260612163138594", "TM09202301260612163138594", "TM09202301260612163138594", "TM09202301260612163138594", "TM09202301260612163138594", "TM09202301260612163138594", "TM09202301260612163138594", "TM09202301260612163138594", "TM09202301260612163138594", "TM09202301260612163138594", "TM09202301260612163138594", "TM09202301260612163138594", "TM09202301260612163138594", "TM09202301260612163138594", "TM09202301260612163138594", "TM09202301260612163138594", "TM09202301260612163138594", "TM09202301260612163138594"]}
[2026-06-12 16:32:51,372.372 INFO    ] 2026-06-12 16:32:51
[2026-06-12 16:32:51,441.441 INFO    ] 200
[2026-06-12 16:32:51,442.442 INFO    ] True
[2026-06-12 16:32:51,443.443 INFO    ] cleanup_start_order_file_after_processing: order_id=TM09202301260612163138594
[2026-06-12 16:32:51,451.451 INFO    ] start order file deleted
[2026-06-12 16:32:51,453.453 INFO    ] Checking for system updates...
[2026-06-12 16:32:51,472.472 INFO    ] 200
[2026-06-12 16:32:51,474.474 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:32:51,511.511 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 16:32:51,512.512 INFO    ] No update needed
[2026-06-12 16:32:51,513.513 INFO    ] Checking for camera pi updates...
[2026-06-12 16:32:51,532.532 INFO    ] 200
[2026-06-12 16:32:51,534.534 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:32:51,557.557 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 16:32:51,582.582 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 16:32:51,584.584 INFO    ] No camera update needed
[2026-06-12 16:32:51,585.585 INFO    ] Script finished. Safe exiting...
[2026-06-12 16:32:51,587.587 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 16:32:51,591.591 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 16:32:51,594.594 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 16:32:53,633.633 INFO    ] ================================================
[2026-06-12 16:32:53,649.649 INFO    ] Launching Daemon at Fri Jun 12 16:32:53 IST 2026
[2026-06-12 16:32:53,660.660 INFO    ] ================================================
[2026-06-12 16:32:54,011.011 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 16:32:54
[2026-06-12 16:32:54,323.323 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 16:32:54,452.452 INFO    ] Initializing speech engine...
[2026-06-12 16:32:54,461.461 INFO    ] 2026-06-12 16:32:54
[2026-06-12 16:32:54,651.651 INFO    ] 2026-06-12 16:32:54
[2026-06-12 16:32:54,683.683 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 16:32:54,890.890 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 16:32:54,894.894 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 16:32:55,084.084 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 16:32:55,122.122 INFO    ] time= 12/06/2026 16:32:55
[2026-06-12 16:32:55,127.127 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 16:32:55,129.129 INFO    ] Checking for existing commands in stream...
[2026-06-12 16:32:55,196.196 INFO    ] No existing commands found in stream
[2026-06-12 16:33:00,210.210 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 16:33:00,213.213 INFO    ] Waiting 1.27 seconds before fallback handling...
[2026-06-12 16:33:01,883.883 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 16:33:01,886.886 INFO    ] Checking for system updates...
[2026-06-12 16:33:01,928.928 INFO    ] 200
[2026-06-12 16:33:01,930.930 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:33:01,987.987 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 16:33:01,988.988 INFO    ] No update needed
[2026-06-12 16:33:01,990.990 INFO    ] Checking for camera pi updates...
[2026-06-12 16:33:02,013.013 INFO    ] 200
[2026-06-12 16:33:02,015.015 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:33:02,045.045 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 16:33:02,092.092 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 16:33:02,094.094 INFO    ] No camera update needed
[2026-06-12 16:33:02,096.096 INFO    ] Script finished. Safe exiting...
[2026-06-12 16:33:02,098.098 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 16:33:02,102.102 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 16:33:02,107.107 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 16:33:04,147.147 INFO    ] ================================================
[2026-06-12 16:33:04,164.164 INFO    ] Launching Daemon at Fri Jun 12 16:33:04 IST 2026
[2026-06-12 16:33:04,176.176 INFO    ] ================================================
[2026-06-12 16:33:04,501.501 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 16:33:04
[2026-06-12 16:33:04,814.814 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 16:33:04,944.944 INFO    ] Initializing speech engine...
[2026-06-12 16:33:04,952.952 INFO    ] 2026-06-12 16:33:04
[2026-06-12 16:33:05,166.166 INFO    ] 2026-06-12 16:33:05
[2026-06-12 16:33:05,196.196 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 16:33:05,381.381 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 16:33:05,395.395 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 16:33:05,544.544 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 16:33:05,595.595 INFO    ] time= 12/06/2026 16:33:05
[2026-06-12 16:33:05,616.616 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 16:33:05,622.622 INFO    ] Checking for existing commands in stream...
[2026-06-12 16:33:05,689.689 INFO    ] No existing commands found in stream
[2026-06-12 16:33:10,698.698 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 16:33:10,706.706 INFO    ] Waiting 1.08 seconds before fallback handling...
[2026-06-12 16:33:12,165.165 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 16:33:12,167.167 INFO    ] Checking for system updates...
[2026-06-12 16:33:12,187.187 INFO    ] 200
[2026-06-12 16:33:12,189.189 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:33:12,219.219 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 16:33:12,220.220 INFO    ] No update needed
[2026-06-12 16:33:12,222.222 INFO    ] Checking for camera pi updates...
[2026-06-12 16:33:12,248.248 INFO    ] 200
[2026-06-12 16:33:12,250.250 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:33:12,278.278 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 16:33:12,325.325 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 16:33:12,326.326 INFO    ] No camera update needed
[2026-06-12 16:33:12,327.327 INFO    ] Script finished. Safe exiting...
[2026-06-12 16:33:12,329.329 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 16:33:12,332.332 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 16:33:12,335.335 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 16:33:14,374.374 INFO    ] ================================================
[2026-06-12 16:33:14,390.390 INFO    ] Launching Daemon at Fri Jun 12 16:33:14 IST 2026
[2026-06-12 16:33:14,401.401 INFO    ] ================================================
[2026-06-12 16:33:14,748.748 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 16:33:14
[2026-06-12 16:33:15,083.083 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 16:33:15,234.234 INFO    ] Initializing speech engine...
[2026-06-12 16:33:15,240.240 INFO    ] 2026-06-12 16:33:15
[2026-06-12 16:33:15,450.450 INFO    ] 2026-06-12 16:33:15
[2026-06-12 16:33:15,479.479 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 16:33:15,667.667 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 16:33:15,677.677 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 16:33:15,822.822 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 16:33:15,877.877 INFO    ] time= 12/06/2026 16:33:15
[2026-06-12 16:33:15,901.901 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 16:33:15,908.908 INFO    ] Checking for existing commands in stream...
[2026-06-12 16:33:15,976.976 INFO    ] No existing commands found in stream
[2026-06-12 16:33:20,990.990 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 16:33:20,993.993 INFO    ] Waiting 1.66 seconds before fallback handling...
[2026-06-12 16:33:23,074.074 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 16:33:23,076.076 INFO    ] Checking for system updates...
[2026-06-12 16:33:23,101.101 INFO    ] 200
[2026-06-12 16:33:23,102.102 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:33:23,141.141 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 16:33:23,143.143 INFO    ] No update needed
[2026-06-12 16:33:23,145.145 INFO    ] Checking for camera pi updates...
[2026-06-12 16:33:23,169.169 INFO    ] 200
[2026-06-12 16:33:23,172.172 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:33:23,198.198 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 16:33:23,240.240 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 16:33:23,242.242 INFO    ] No camera update needed
[2026-06-12 16:33:23,244.244 INFO    ] Script finished. Safe exiting...
[2026-06-12 16:33:23,245.245 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 16:33:23,249.249 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 16:33:23,253.253 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 16:33:25,285.285 INFO    ] ================================================
[2026-06-12 16:33:25,300.300 INFO    ] Launching Daemon at Fri Jun 12 16:33:25 IST 2026
[2026-06-12 16:33:25,311.311 INFO    ] ================================================
[2026-06-12 16:33:25,677.677 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 16:33:25
[2026-06-12 16:33:26,014.014 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 16:33:26,164.164 INFO    ] Initializing speech engine...
[2026-06-12 16:33:26,170.170 INFO    ] 2026-06-12 16:33:26
[2026-06-12 16:33:26,380.380 INFO    ] 2026-06-12 16:33:26
[2026-06-12 16:33:26,409.409 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 16:33:26,595.595 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 16:33:26,604.604 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 16:33:26,732.732 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 16:33:26,794.794 INFO    ] time= 12/06/2026 16:33:26
[2026-06-12 16:33:26,828.828 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 16:33:26,834.834 INFO    ] Checking for existing commands in stream...
[2026-06-12 16:33:26,902.902 INFO    ] No existing commands found in stream
[2026-06-12 16:33:31,932.932 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 16:33:31,935.935 INFO    ] Waiting 0.66 seconds before fallback handling...
[2026-06-12 16:33:32,990.990 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 16:33:32,991.991 INFO    ] Checking for system updates...
[2026-06-12 16:33:33,012.012 INFO    ] 200
[2026-06-12 16:33:33,013.013 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:33:33,047.047 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 16:33:33,049.049 INFO    ] No update needed
[2026-06-12 16:33:33,050.050 INFO    ] Checking for camera pi updates...
[2026-06-12 16:33:33,070.070 INFO    ] 200
[2026-06-12 16:33:33,071.071 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:33:33,094.094 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 16:33:33,129.129 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 16:33:33,130.130 INFO    ] No camera update needed
[2026-06-12 16:33:33,132.132 INFO    ] Script finished. Safe exiting...
[2026-06-12 16:33:33,133.133 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 16:33:33,136.136 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 16:33:33,139.139 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 16:33:35,178.178 INFO    ] ================================================
[2026-06-12 16:33:35,194.194 INFO    ] Launching Daemon at Fri Jun 12 16:33:35 IST 2026
[2026-06-12 16:33:35,205.205 INFO    ] ================================================
[2026-06-12 16:33:35,538.538 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 16:33:35
[2026-06-12 16:33:35,850.850 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 16:33:35,997.997 INFO    ] Initializing speech engine...
[2026-06-12 16:33:36,002.002 INFO    ] 2026-06-12 16:33:35
[2026-06-12 16:33:36,217.217 INFO    ] 2026-06-12 16:33:36
[2026-06-12 16:33:36,248.248 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 16:33:36,445.445 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 16:33:36,455.455 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 16:33:36,591.591 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 16:33:36,654.654 INFO    ] time= 12/06/2026 16:33:36
[2026-06-12 16:33:36,677.677 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 16:33:36,694.694 INFO    ] Checking for existing commands in stream...
[2026-06-12 16:33:36,780.780 INFO    ] No existing commands found in stream
[2026-06-12 16:33:41,804.804 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 16:33:41,806.806 INFO    ] Waiting 3.93 seconds before fallback handling...
[2026-06-12 16:33:46,136.136 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 16:33:46,138.138 INFO    ] Checking for system updates...
[2026-06-12 16:33:46,159.159 INFO    ] 200
[2026-06-12 16:33:46,160.160 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:33:46,192.192 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 16:33:46,194.194 INFO    ] No update needed
[2026-06-12 16:33:46,195.195 INFO    ] Checking for camera pi updates...
[2026-06-12 16:33:46,215.215 INFO    ] 200
[2026-06-12 16:33:46,216.216 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:33:46,239.239 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 16:33:46,325.325 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 16:33:46,327.327 INFO    ] No camera update needed
[2026-06-12 16:33:46,328.328 INFO    ] Script finished. Safe exiting...
[2026-06-12 16:33:46,330.330 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 16:33:46,333.333 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 16:33:46,336.336 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 16:33:48,374.374 INFO    ] ================================================
[2026-06-12 16:33:48,389.389 INFO    ] Launching Daemon at Fri Jun 12 16:33:48 IST 2026
[2026-06-12 16:33:48,400.400 INFO    ] ================================================
[2026-06-12 16:33:48,750.750 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 16:33:48
[2026-06-12 16:33:49,083.083 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 16:33:49,222.222 INFO    ] Initializing speech engine...
[2026-06-12 16:33:49,235.235 INFO    ] 2026-06-12 16:33:49
[2026-06-12 16:33:49,445.445 INFO    ] 2026-06-12 16:33:49
[2026-06-12 16:33:49,474.474 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 16:33:49,658.658 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 16:33:49,668.668 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 16:33:49,811.811 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 16:33:49,863.863 INFO    ] time= 12/06/2026 16:33:49
[2026-06-12 16:33:49,886.886 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 16:33:49,892.892 INFO    ] Checking for existing commands in stream...
[2026-06-12 16:33:49,959.959 INFO    ] No existing commands found in stream
[2026-06-12 16:33:54,973.973 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 16:33:54,976.976 INFO    ] Waiting 1.44 seconds before fallback handling...
[2026-06-12 16:33:56,792.792 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 16:33:56,793.793 INFO    ] Checking for system updates...
[2026-06-12 16:33:56,814.814 INFO    ] 200
[2026-06-12 16:33:56,815.815 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:33:56,847.847 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 16:33:56,849.849 INFO    ] No update needed
[2026-06-12 16:33:56,850.850 INFO    ] Checking for camera pi updates...
[2026-06-12 16:33:56,869.869 INFO    ] 200
[2026-06-12 16:33:56,871.871 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:33:56,894.894 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 16:33:57,013.013 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 16:33:57,014.014 INFO    ] No camera update needed
[2026-06-12 16:33:57,016.016 INFO    ] Script finished. Safe exiting...
[2026-06-12 16:33:57,017.017 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 16:33:57,020.020 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 16:33:57,023.023 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 16:33:59,062.062 INFO    ] ================================================
[2026-06-12 16:33:59,077.077 INFO    ] Launching Daemon at Fri Jun 12 16:33:59 IST 2026
[2026-06-12 16:33:59,088.088 INFO    ] ================================================
[2026-06-12 16:33:59,439.439 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 16:33:59
[2026-06-12 16:33:59,756.756 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 16:33:59,900.900 INFO    ] Initializing speech engine...
[2026-06-12 16:33:59,905.905 INFO    ] 2026-06-12 16:33:59
[2026-06-12 16:34:00,109.109 INFO    ] 2026-06-12 16:34:00
[2026-06-12 16:34:00,137.137 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 16:34:00,321.321 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 16:34:00,324.324 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 16:34:00,485.485 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 16:34:00,529.529 INFO    ] time= 12/06/2026 16:34:00
[2026-06-12 16:34:00,550.550 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 16:34:00,556.556 INFO    ] Checking for existing commands in stream...
[2026-06-12 16:34:00,622.622 INFO    ] No existing commands found in stream
[2026-06-12 16:34:05,636.636 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 16:34:05,639.639 INFO    ] Waiting 0.74 seconds before fallback handling...
[2026-06-12 16:34:06,752.752 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 16:34:06,754.754 INFO    ] Checking for system updates...
[2026-06-12 16:34:06,774.774 INFO    ] 200
[2026-06-12 16:34:06,775.775 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:34:06,807.807 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 16:34:06,808.808 INFO    ] No update needed
[2026-06-12 16:34:06,810.810 INFO    ] Checking for camera pi updates...
[2026-06-12 16:34:06,831.831 INFO    ] 200
[2026-06-12 16:34:06,833.833 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:34:06,856.856 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 16:34:06,912.912 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 16:34:06,914.914 INFO    ] No camera update needed
[2026-06-12 16:34:06,915.915 INFO    ] Script finished. Safe exiting...
[2026-06-12 16:34:06,916.916 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 16:34:06,919.919 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 16:34:06,922.922 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 16:34:08,961.961 INFO    ] ================================================
[2026-06-12 16:34:08,977.977 INFO    ] Launching Daemon at Fri Jun 12 16:34:08 IST 2026
[2026-06-12 16:34:08,989.989 INFO    ] ================================================
[2026-06-12 16:34:09,348.348 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 16:34:09
[2026-06-12 16:34:09,682.682 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 16:34:09,830.830 INFO    ] Initializing speech engine...
[2026-06-12 16:34:09,836.836 INFO    ] 2026-06-12 16:34:09
[2026-06-12 16:34:10,043.043 INFO    ] 2026-06-12 16:34:10
[2026-06-12 16:34:10,072.072 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 16:34:10,246.246 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 16:34:10,259.259 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 16:34:10,395.395 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 16:34:10,463.463 INFO    ] time= 12/06/2026 16:34:10
[2026-06-12 16:34:10,486.486 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 16:34:10,493.493 INFO    ] Checking for existing commands in stream...
[2026-06-12 16:34:10,583.583 INFO    ] No existing commands found in stream
[2026-06-12 16:34:15,592.592 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 16:34:15,595.595 INFO    ] Waiting 1.77 seconds before fallback handling...
[2026-06-12 16:34:17,771.771 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 16:34:17,773.773 INFO    ] Checking for system updates...
[2026-06-12 16:34:17,793.793 INFO    ] 200
[2026-06-12 16:34:17,795.795 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:34:17,826.826 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 16:34:17,828.828 INFO    ] No update needed
[2026-06-12 16:34:17,829.829 INFO    ] Checking for camera pi updates...
[2026-06-12 16:34:17,850.850 INFO    ] 200
[2026-06-12 16:34:17,851.851 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:34:17,875.875 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 16:34:17,920.920 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 16:34:17,922.922 INFO    ] No camera update needed
[2026-06-12 16:34:17,923.923 INFO    ] Script finished. Safe exiting...
[2026-06-12 16:34:17,925.925 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 16:34:17,928.928 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 16:34:17,931.931 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 16:34:19,969.969 INFO    ] ================================================
[2026-06-12 16:34:19,985.985 INFO    ] Launching Daemon at Fri Jun 12 16:34:19 IST 2026
[2026-06-12 16:34:20,996.996 INFO    ] ================================================
[2026-06-12 16:34:20,350.350 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 16:34:20
[2026-06-12 16:34:20,664.664 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 16:34:20,812.812 INFO    ] Initializing speech engine...
[2026-06-12 16:34:20,816.816 INFO    ] 2026-06-12 16:34:20
[2026-06-12 16:34:21,019.019 INFO    ] 2026-06-12 16:34:21
[2026-06-12 16:34:21,047.047 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 16:34:21,233.233 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 16:34:21,243.243 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 16:34:21,386.386 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 16:34:21,440.440 INFO    ] time= 12/06/2026 16:34:21
[2026-06-12 16:34:21,461.461 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 16:34:21,468.468 INFO    ] Checking for existing commands in stream...
[2026-06-12 16:34:21,535.535 INFO    ] No existing commands found in stream
[2026-06-12 16:34:26,542.542 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 16:34:26,545.545 INFO    ] Waiting 3.27 seconds before fallback handling...
[2026-06-12 16:34:30,192.192 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 16:34:30,194.194 INFO    ] Checking for system updates...
[2026-06-12 16:34:30,214.214 INFO    ] 200
[2026-06-12 16:34:30,215.215 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:34:30,248.248 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 16:34:30,249.249 INFO    ] No update needed
[2026-06-12 16:34:30,250.250 INFO    ] Checking for camera pi updates...
[2026-06-12 16:34:30,269.269 INFO    ] 200
[2026-06-12 16:34:30,271.271 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:34:30,294.294 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 16:34:30,433.433 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 16:34:30,434.434 INFO    ] No camera update needed
[2026-06-12 16:34:30,435.435 INFO    ] Script finished. Safe exiting...
[2026-06-12 16:34:30,437.437 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 16:34:30,440.440 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 16:34:30,442.442 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 16:34:32,478.478 INFO    ] ================================================
[2026-06-12 16:34:32,488.488 INFO    ] Launching Daemon at Fri Jun 12 16:34:32 IST 2026
[2026-06-12 16:34:32,494.494 INFO    ] ================================================
[2026-06-12 16:34:32,841.841 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 16:34:32
[2026-06-12 16:34:33,157.157 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 16:34:33,300.300 INFO    ] Initializing speech engine...
[2026-06-12 16:34:33,306.306 INFO    ] 2026-06-12 16:34:33
[2026-06-12 16:34:33,508.508 INFO    ] 2026-06-12 16:34:33
[2026-06-12 16:34:33,536.536 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 16:34:33,721.721 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 16:34:33,730.730 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 16:34:33,923.923 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 16:34:33,946.946 INFO    ] time= 12/06/2026 16:34:33
[2026-06-12 16:34:33,952.952 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 16:34:33,954.954 INFO    ] Checking for existing commands in stream...
[2026-06-12 16:34:34,021.021 INFO    ] No existing commands found in stream
[2026-06-12 16:34:39,030.030 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 16:34:39,033.033 INFO    ] Waiting 0.58 seconds before fallback handling...
[2026-06-12 16:34:40,014.014 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 16:34:40,015.015 INFO    ] Checking for system updates...
[2026-06-12 16:34:40,035.035 INFO    ] 200
[2026-06-12 16:34:40,037.037 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:34:40,066.066 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 16:34:40,067.067 INFO    ] No update needed
[2026-06-12 16:34:40,069.069 INFO    ] Checking for camera pi updates...
[2026-06-12 16:34:40,089.089 INFO    ] 200
[2026-06-12 16:34:40,090.090 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:34:40,114.114 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 16:34:40,161.161 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 16:34:40,163.163 INFO    ] No camera update needed
[2026-06-12 16:34:40,164.164 INFO    ] Script finished. Safe exiting...
[2026-06-12 16:34:40,165.165 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 16:34:40,168.168 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 16:34:40,171.171 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 16:34:42,210.210 INFO    ] ================================================
[2026-06-12 16:34:42,226.226 INFO    ] Launching Daemon at Fri Jun 12 16:34:42 IST 2026
[2026-06-12 16:34:42,238.238 INFO    ] ================================================
[2026-06-12 16:34:42,603.603 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 16:34:42
[2026-06-12 16:34:42,937.937 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 16:34:43,087.087 INFO    ] Initializing speech engine...
[2026-06-12 16:34:43,093.093 INFO    ] 2026-06-12 16:34:43
[2026-06-12 16:34:43,300.300 INFO    ] 2026-06-12 16:34:43
[2026-06-12 16:34:43,329.329 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 16:34:43,513.513 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 16:34:43,523.523 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 16:34:43,681.681 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 16:34:43,720.720 INFO    ] time= 12/06/2026 16:34:43
[2026-06-12 16:34:43,742.742 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 16:34:43,747.747 INFO    ] Checking for existing commands in stream...
[2026-06-12 16:34:43,838.838 INFO    ] No existing commands found in stream
[2026-06-12 16:34:48,848.848 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 16:34:48,851.851 INFO    ] Waiting 3.97 seconds before fallback handling...
[2026-06-12 16:34:53,210.210 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 16:34:53,212.212 INFO    ] Checking for system updates...
[2026-06-12 16:34:53,233.233 INFO    ] 200
[2026-06-12 16:34:53,234.234 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:34:53,265.265 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 16:34:53,266.266 INFO    ] No update needed
[2026-06-12 16:34:53,268.268 INFO    ] Checking for camera pi updates...
[2026-06-12 16:34:53,287.287 INFO    ] 200
[2026-06-12 16:34:53,288.288 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:34:53,312.312 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 16:34:53,351.351 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 16:34:53,353.353 INFO    ] No camera update needed
[2026-06-12 16:34:53,354.354 INFO    ] Script finished. Safe exiting...
[2026-06-12 16:34:53,356.356 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 16:34:53,359.359 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 16:34:53,362.362 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 16:34:55,402.402 INFO    ] ================================================
[2026-06-12 16:34:55,418.418 INFO    ] Launching Daemon at Fri Jun 12 16:34:55 IST 2026
[2026-06-12 16:34:55,429.429 INFO    ] ================================================
[2026-06-12 16:34:55,792.792 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 16:34:55
[2026-06-12 16:34:56,123.123 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 16:34:56,274.274 INFO    ] Initializing speech engine...
[2026-06-12 16:34:56,280.280 INFO    ] 2026-06-12 16:34:56
[2026-06-12 16:34:56,487.487 INFO    ] 2026-06-12 16:34:56
[2026-06-12 16:34:56,515.515 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 16:34:56,701.701 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 16:34:56,710.710 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 16:34:56,864.864 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 16:34:56,908.908 INFO    ] time= 12/06/2026 16:34:56
[2026-06-12 16:34:56,931.931 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 16:34:56,937.937 INFO    ] Checking for existing commands in stream...
[2026-06-12 16:34:57,029.029 INFO    ] No existing commands found in stream
[2026-06-12 16:35:02,048.048 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 16:35:02,050.050 INFO    ] Waiting 1.97 seconds before fallback handling...
[2026-06-12 16:35:04,443.443 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 16:35:04,444.444 INFO    ] Checking for system updates...
[2026-06-12 16:35:04,465.465 INFO    ] 200
[2026-06-12 16:35:04,466.466 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:35:04,498.498 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 16:35:04,500.500 INFO    ] No update needed
[2026-06-12 16:35:04,501.501 INFO    ] Checking for camera pi updates...
[2026-06-12 16:35:04,523.523 INFO    ] 200
[2026-06-12 16:35:04,524.524 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:35:04,547.547 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 16:35:04,631.631 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 16:35:04,633.633 INFO    ] No camera update needed
[2026-06-12 16:35:04,634.634 INFO    ] Script finished. Safe exiting...
[2026-06-12 16:35:04,636.636 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 16:35:04,639.639 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 16:35:04,642.642 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 16:35:06,681.681 INFO    ] ================================================
[2026-06-12 16:35:06,697.697 INFO    ] Launching Daemon at Fri Jun 12 16:35:06 IST 2026
[2026-06-12 16:35:06,708.708 INFO    ] ================================================
[2026-06-12 16:35:07,096.096 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 16:35:07
[2026-06-12 16:35:07,434.434 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 16:35:07,584.584 INFO    ] Initializing speech engine...
[2026-06-12 16:35:07,589.589 INFO    ] 2026-06-12 16:35:07
[2026-06-12 16:35:07,797.797 INFO    ] 2026-06-12 16:35:07
[2026-06-12 16:35:07,825.825 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 16:35:07,968.968 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 16:35:08,012.012 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 16:35:08,211.211 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 16:35:08,236.236 INFO    ] time= 12/06/2026 16:35:08
[2026-06-12 16:35:08,242.242 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 16:35:08,244.244 INFO    ] Checking for existing commands in stream...
[2026-06-12 16:35:08,335.335 INFO    ] No existing commands found in stream
[2026-06-12 16:35:13,344.344 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 16:35:13,347.347 INFO    ] Waiting 1.20 seconds before fallback handling...
[2026-06-12 16:35:14,875.875 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 16:35:14,877.877 INFO    ] Checking for system updates...
[2026-06-12 16:35:14,899.899 INFO    ] 200
[2026-06-12 16:35:14,900.900 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:35:14,930.930 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 16:35:14,932.932 INFO    ] No update needed
[2026-06-12 16:35:14,933.933 INFO    ] Checking for camera pi updates...
[2026-06-12 16:35:14,953.953 INFO    ] 200
[2026-06-12 16:35:14,954.954 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:35:14,979.979 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 16:35:15,020.020 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 16:35:15,022.022 INFO    ] No camera update needed
[2026-06-12 16:35:15,023.023 INFO    ] Script finished. Safe exiting...
[2026-06-12 16:35:15,024.024 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 16:35:15,027.027 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 16:35:15,030.030 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 16:35:17,069.069 INFO    ] ================================================
[2026-06-12 16:35:17,084.084 INFO    ] Launching Daemon at Fri Jun 12 16:35:17 IST 2026
[2026-06-12 16:35:17,096.096 INFO    ] ================================================
[2026-06-12 16:35:17,444.444 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 16:35:17
[2026-06-12 16:35:17,756.756 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 16:35:17,888.888 INFO    ] Initializing speech engine...
[2026-06-12 16:35:17,900.900 INFO    ] 2026-06-12 16:35:17
[2026-06-12 16:35:18,106.106 INFO    ] 2026-06-12 16:35:18
[2026-06-12 16:35:18,135.135 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 16:35:18,316.316 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 16:35:18,319.319 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 16:35:18,480.480 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 16:35:18,534.534 INFO    ] time= 12/06/2026 16:35:18
[2026-06-12 16:35:18,544.544 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 16:35:18,550.550 INFO    ] Checking for existing commands in stream...
[2026-06-12 16:35:18,617.617 INFO    ] No existing commands found in stream
[2026-06-12 16:35:23,631.631 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 16:35:23,634.634 INFO    ] Waiting 0.80 seconds before fallback handling...
[2026-06-12 16:35:24,771.771 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 16:35:24,772.772 INFO    ] Checking for system updates...
[2026-06-12 16:35:24,793.793 INFO    ] 200
[2026-06-12 16:35:24,794.794 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:35:24,824.824 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 16:35:24,825.825 INFO    ] No update needed
[2026-06-12 16:35:24,826.826 INFO    ] Checking for camera pi updates...
[2026-06-12 16:35:24,846.846 INFO    ] 200
[2026-06-12 16:35:24,847.847 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:35:24,871.871 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 16:35:24,917.917 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 16:35:24,918.918 INFO    ] No camera update needed
[2026-06-12 16:35:24,920.920 INFO    ] Script finished. Safe exiting...
[2026-06-12 16:35:24,921.921 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 16:35:24,924.924 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 16:35:24,927.927 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 16:35:26,965.965 INFO    ] ================================================
[2026-06-12 16:35:26,980.980 INFO    ] Launching Daemon at Fri Jun 12 16:35:26 IST 2026
[2026-06-12 16:35:26,992.992 INFO    ] ================================================
[2026-06-12 16:35:27,326.326 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 16:35:27
[2026-06-12 16:35:27,637.637 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 16:35:27,771.771 INFO    ] Initializing speech engine...
[2026-06-12 16:35:27,776.776 INFO    ] 2026-06-12 16:35:27
[2026-06-12 16:35:28,008.008 INFO    ] 2026-06-12 16:35:27
[2026-06-12 16:35:28,038.038 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 16:35:28,161.161 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 16:35:28,163.163 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 16:35:28,282.282 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 16:35:28,318.318 INFO    ] time= 12/06/2026 16:35:28
[2026-06-12 16:35:28,364.364 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 16:35:28,377.377 INFO    ] Checking for existing commands in stream...
[2026-06-12 16:35:28,461.461 INFO    ] No existing commands found in stream
[2026-06-12 16:35:33,491.491 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 16:35:33,494.494 INFO    ] Waiting 2.35 seconds before fallback handling...
[2026-06-12 16:35:36,206.206 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 16:35:36,207.207 INFO    ] Checking for system updates...
[2026-06-12 16:35:36,229.229 INFO    ] 200
[2026-06-12 16:35:36,230.230 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:35:36,260.260 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 16:35:36,261.261 INFO    ] No update needed
[2026-06-12 16:35:36,262.262 INFO    ] Checking for camera pi updates...
[2026-06-12 16:35:36,281.281 INFO    ] 200
[2026-06-12 16:35:36,283.283 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:35:36,307.307 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 16:35:36,349.349 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 16:35:36,350.350 INFO    ] No camera update needed
[2026-06-12 16:35:36,352.352 INFO    ] Script finished. Safe exiting...
[2026-06-12 16:35:36,353.353 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 16:35:36,356.356 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 16:35:36,358.358 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 16:35:38,398.398 INFO    ] ================================================
[2026-06-12 16:35:38,414.414 INFO    ] Launching Daemon at Fri Jun 12 16:35:38 IST 2026
[2026-06-12 16:35:38,425.425 INFO    ] ================================================
[2026-06-12 16:35:38,768.768 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 16:35:38
[2026-06-12 16:35:39,080.080 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 16:35:39,210.210 INFO    ] Initializing speech engine...
[2026-06-12 16:35:39,218.218 INFO    ] 2026-06-12 16:35:39
[2026-06-12 16:35:39,431.431 INFO    ] 2026-06-12 16:35:39
[2026-06-12 16:35:39,460.460 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 16:35:39,646.646 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 16:35:39,655.655 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 16:35:39,786.786 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 16:35:39,855.855 INFO    ] time= 12/06/2026 16:35:39
[2026-06-12 16:35:39,892.892 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 16:35:39,917.917 INFO    ] Checking for existing commands in stream...
[2026-06-12 16:35:40,019.019 INFO    ] No existing commands found in stream
[2026-06-12 16:35:45,029.029 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 16:35:45,032.032 INFO    ] Waiting 1.50 seconds before fallback handling...
[2026-06-12 16:35:46,868.868 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 16:35:46,869.869 INFO    ] Checking for system updates...
[2026-06-12 16:35:46,890.890 INFO    ] 200
[2026-06-12 16:35:46,892.892 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:35:46,924.924 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 16:35:46,925.925 INFO    ] No update needed
[2026-06-12 16:35:46,926.926 INFO    ] Checking for camera pi updates...
[2026-06-12 16:35:46,946.946 INFO    ] 200
[2026-06-12 16:35:46,948.948 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:35:46,970.970 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 16:35:47,011.011 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 16:35:47,012.012 INFO    ] No camera update needed
[2026-06-12 16:35:47,013.013 INFO    ] Script finished. Safe exiting...
[2026-06-12 16:35:47,015.015 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 16:35:47,018.018 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 16:35:47,020.020 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 16:35:49,059.059 INFO    ] ================================================
[2026-06-12 16:35:49,075.075 INFO    ] Launching Daemon at Fri Jun 12 16:35:49 IST 2026
[2026-06-12 16:35:49,086.086 INFO    ] ================================================
[2026-06-12 16:35:49,418.418 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 16:35:49
[2026-06-12 16:35:49,736.736 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 16:35:49,884.884 INFO    ] Initializing speech engine...
[2026-06-12 16:35:49,889.889 INFO    ] 2026-06-12 16:35:49
[2026-06-12 16:35:50,094.094 INFO    ] 2026-06-12 16:35:50
[2026-06-12 16:35:50,123.123 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 16:35:50,305.305 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 16:35:50,315.315 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 16:35:50,442.442 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 16:35:50,503.503 INFO    ] time= 12/06/2026 16:35:50
[2026-06-12 16:35:50,535.535 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 16:35:50,542.542 INFO    ] Checking for existing commands in stream...
[2026-06-12 16:35:50,612.612 INFO    ] No existing commands found in stream
[2026-06-12 16:35:55,622.622 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 16:35:55,630.630 INFO    ] Waiting 3.72 seconds before fallback handling...
[2026-06-12 16:35:59,760.760 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 16:35:59,761.761 INFO    ] Checking for system updates...
[2026-06-12 16:35:59,782.782 INFO    ] 200
[2026-06-12 16:35:59,783.783 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:35:59,816.816 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 16:35:59,817.817 INFO    ] No update needed
[2026-06-12 16:35:59,819.819 INFO    ] Checking for camera pi updates...
[2026-06-12 16:35:59,842.842 INFO    ] 200
[2026-06-12 16:35:59,843.843 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:35:59,866.866 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 16:35:59,932.932 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 16:35:59,934.934 INFO    ] No camera update needed
[2026-06-12 16:35:59,935.935 INFO    ] Script finished. Safe exiting...
[2026-06-12 16:35:59,937.937 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 16:35:59,940.940 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 16:35:59,943.943 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 16:36:01,976.976 INFO    ] ================================================
[2026-06-12 16:36:01,988.988 INFO    ] Launching Daemon at Fri Jun 12 16:36:01 IST 2026
[2026-06-12 16:36:02,996.996 INFO    ] ================================================
[2026-06-12 16:36:02,386.386 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 16:36:02
[2026-06-12 16:36:02,733.733 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 16:36:02,865.865 INFO    ] Initializing speech engine...
[2026-06-12 16:36:02,873.873 INFO    ] 2026-06-12 16:36:02
[2026-06-12 16:36:03,087.087 INFO    ] 2026-06-12 16:36:03
[2026-06-12 16:36:03,117.117 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 16:36:03,302.302 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 16:36:03,305.305 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 16:36:03,444.444 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 16:36:03,511.511 INFO    ] time= 12/06/2026 16:36:03
[2026-06-12 16:36:03,535.535 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 16:36:03,542.542 INFO    ] Checking for existing commands in stream...
[2026-06-12 16:36:03,609.609 INFO    ] No existing commands found in stream
[2026-06-12 16:36:08,618.618 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 16:36:08,621.621 INFO    ] Waiting 2.65 seconds before fallback handling...
[2026-06-12 16:36:11,646.646 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 16:36:11,647.647 INFO    ] Checking for system updates...
[2026-06-12 16:36:11,668.668 INFO    ] 200
[2026-06-12 16:36:11,669.669 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:36:11,701.701 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 16:36:11,702.702 INFO    ] No update needed
[2026-06-12 16:36:11,704.704 INFO    ] Checking for camera pi updates...
[2026-06-12 16:36:11,722.722 INFO    ] 200
[2026-06-12 16:36:11,724.724 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:36:11,747.747 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 16:36:11,787.787 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 16:36:11,789.789 INFO    ] No camera update needed
[2026-06-12 16:36:11,790.790 INFO    ] Script finished. Safe exiting...
[2026-06-12 16:36:11,791.791 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 16:36:11,798.798 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 16:36:11,801.801 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 16:36:13,841.841 INFO    ] ================================================
[2026-06-12 16:36:13,863.863 INFO    ] Launching Daemon at Fri Jun 12 16:36:13 IST 2026
[2026-06-12 16:36:13,874.874 INFO    ] ================================================
[2026-06-12 16:36:14,243.243 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 16:36:14
[2026-06-12 16:36:14,557.557 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 16:36:14,699.699 INFO    ] Initializing speech engine...
[2026-06-12 16:36:14,709.709 INFO    ] 2026-06-12 16:36:14
[2026-06-12 16:36:14,923.923 INFO    ] 2026-06-12 16:36:14
[2026-06-12 16:36:14,953.953 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 16:36:15,151.151 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 16:36:15,160.160 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 16:36:15,294.294 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 16:36:15,347.347 INFO    ] time= 12/06/2026 16:36:15
[2026-06-12 16:36:15,375.375 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 16:36:15,397.397 INFO    ] Checking for existing commands in stream...
[2026-06-12 16:36:15,472.472 INFO    ] No existing commands found in stream
[2026-06-12 16:36:20,482.482 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 16:36:20,485.485 INFO    ] Waiting 1.35 seconds before fallback handling...
[2026-06-12 16:36:22,226.226 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 16:36:22,227.227 INFO    ] Checking for system updates...
[2026-06-12 16:36:22,249.249 INFO    ] 200
[2026-06-12 16:36:22,250.250 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:36:22,283.283 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 16:36:22,284.284 INFO    ] No update needed
[2026-06-12 16:36:22,285.285 INFO    ] Checking for camera pi updates...
[2026-06-12 16:36:22,304.304 INFO    ] 200
[2026-06-12 16:36:22,306.306 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:36:22,328.328 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 16:36:22,390.390 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 16:36:22,391.391 INFO    ] No camera update needed
[2026-06-12 16:36:22,392.392 INFO    ] Script finished. Safe exiting...
[2026-06-12 16:36:22,394.394 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 16:36:22,397.397 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 16:36:22,399.399 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 16:36:24,437.437 INFO    ] ================================================
[2026-06-12 16:36:24,453.453 INFO    ] Launching Daemon at Fri Jun 12 16:36:24 IST 2026
[2026-06-12 16:36:24,464.464 INFO    ] ================================================
[2026-06-12 16:36:24,815.815 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 16:36:24
[2026-06-12 16:36:25,130.130 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 16:36:25,273.273 INFO    ] Initializing speech engine...
[2026-06-12 16:36:25,279.279 INFO    ] 2026-06-12 16:36:25
[2026-06-12 16:36:25,483.483 INFO    ] 2026-06-12 16:36:25
[2026-06-12 16:36:25,513.513 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 16:36:25,707.707 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 16:36:25,713.713 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 16:36:25,851.851 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 16:36:25,912.912 INFO    ] time= 12/06/2026 16:36:25
[2026-06-12 16:36:25,951.951 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 16:36:25,957.957 INFO    ] Checking for existing commands in stream...
[2026-06-12 16:36:26,059.059 INFO    ] No existing commands found in stream
[2026-06-12 16:36:31,073.073 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 16:36:31,076.076 INFO    ] Waiting 0.44 seconds before fallback handling...
[2026-06-12 16:36:31,894.894 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 16:36:31,896.896 INFO    ] Checking for system updates...
[2026-06-12 16:36:31,925.925 INFO    ] 200
[2026-06-12 16:36:31,926.926 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:36:31,963.963 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 16:36:31,965.965 INFO    ] No update needed
[2026-06-12 16:36:31,966.966 INFO    ] Checking for camera pi updates...
[2026-06-12 16:36:31,988.988 INFO    ] 200
[2026-06-12 16:36:31,989.989 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:36:32,015.015 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 16:36:32,143.143 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 16:36:32,145.145 INFO    ] No camera update needed
[2026-06-12 16:36:32,146.146 INFO    ] Script finished. Safe exiting...
[2026-06-12 16:36:32,148.148 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 16:36:32,152.152 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 16:36:32,155.155 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 16:36:34,194.194 INFO    ] ================================================
[2026-06-12 16:36:34,209.209 INFO    ] Launching Daemon at Fri Jun 12 16:36:34 IST 2026
[2026-06-12 16:36:34,221.221 INFO    ] ================================================
[2026-06-12 16:36:34,577.577 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 16:36:34
[2026-06-12 16:36:34,913.913 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 16:36:35,065.065 INFO    ] Initializing speech engine...
[2026-06-12 16:36:35,071.071 INFO    ] 2026-06-12 16:36:35
[2026-06-12 16:36:35,281.281 INFO    ] 2026-06-12 16:36:35
[2026-06-12 16:36:35,311.311 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 16:36:35,497.497 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 16:36:35,508.508 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 16:36:35,698.698 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 16:36:35,732.732 INFO    ] time= 12/06/2026 16:36:35
[2026-06-12 16:36:35,738.738 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 16:36:35,740.740 INFO    ] Checking for existing commands in stream...
[2026-06-12 16:36:35,808.808 INFO    ] No existing commands found in stream
[2026-06-12 16:36:40,828.828 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 16:36:40,831.831 INFO    ] Waiting 0.23 seconds before fallback handling...
[2026-06-12 16:36:41,445.445 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 16:36:41,447.447 INFO    ] Checking for system updates...
[2026-06-12 16:36:41,467.467 INFO    ] 200
[2026-06-12 16:36:41,469.469 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:36:41,499.499 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 16:36:41,500.500 INFO    ] No update needed
[2026-06-12 16:36:41,502.502 INFO    ] Checking for camera pi updates...
[2026-06-12 16:36:41,523.523 INFO    ] 200
[2026-06-12 16:36:41,524.524 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:36:41,548.548 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 16:36:41,591.591 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 16:36:41,593.593 INFO    ] No camera update needed
[2026-06-12 16:36:41,594.594 INFO    ] Script finished. Safe exiting...
[2026-06-12 16:36:41,595.595 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 16:36:41,598.598 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 16:36:41,602.602 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 16:36:43,640.640 INFO    ] ================================================
[2026-06-12 16:36:43,657.657 INFO    ] Launching Daemon at Fri Jun 12 16:36:43 IST 2026
[2026-06-12 16:36:43,668.668 INFO    ] ================================================
[2026-06-12 16:36:44,026.026 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 16:36:44
[2026-06-12 16:36:44,338.338 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 16:36:44,480.480 INFO    ] Initializing speech engine...
[2026-06-12 16:36:44,486.486 INFO    ] 2026-06-12 16:36:44
[2026-06-12 16:36:44,690.690 INFO    ] 2026-06-12 16:36:44
[2026-06-12 16:36:44,726.726 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 16:36:44,930.930 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 16:36:44,935.935 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 16:36:45,109.109 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 16:36:45,135.135 INFO    ] time= 12/06/2026 16:36:45
[2026-06-12 16:36:45,141.141 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 16:36:45,142.142 INFO    ] Checking for existing commands in stream...
[2026-06-12 16:36:45,208.208 INFO    ] No existing commands found in stream
[2026-06-12 16:36:50,219.219 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 16:36:50,222.222 INFO    ] Waiting 2.91 seconds before fallback handling...
[2026-06-12 16:36:53,532.532 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 16:36:53,533.533 INFO    ] Checking for system updates...
[2026-06-12 16:36:53,554.554 INFO    ] 200
[2026-06-12 16:36:53,556.556 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:36:53,587.587 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 16:36:53,589.589 INFO    ] No update needed
[2026-06-12 16:36:53,591.591 INFO    ] Checking for camera pi updates...
[2026-06-12 16:36:53,611.611 INFO    ] 200
[2026-06-12 16:36:53,613.613 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:36:53,636.636 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 16:36:53,743.743 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 16:36:53,744.744 INFO    ] No camera update needed
[2026-06-12 16:36:53,746.746 INFO    ] Script finished. Safe exiting...
[2026-06-12 16:36:53,747.747 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 16:36:53,750.750 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 16:36:53,753.753 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 16:36:55,792.792 INFO    ] ================================================
[2026-06-12 16:36:55,807.807 INFO    ] Launching Daemon at Fri Jun 12 16:36:55 IST 2026
[2026-06-12 16:36:55,819.819 INFO    ] ================================================
[2026-06-12 16:36:56,157.157 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 16:36:56
[2026-06-12 16:36:56,469.469 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 16:36:56,602.602 INFO    ] Initializing speech engine...
[2026-06-12 16:36:56,606.606 INFO    ] 2026-06-12 16:36:56
[2026-06-12 16:36:56,808.808 INFO    ] 2026-06-12 16:36:56
[2026-06-12 16:36:56,840.840 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 16:36:57,063.063 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 16:36:57,066.066 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 16:36:57,214.214 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 16:36:57,258.258 INFO    ] time= 12/06/2026 16:36:57
[2026-06-12 16:36:57,303.303 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 16:36:57,314.314 INFO    ] Checking for existing commands in stream...
[2026-06-12 16:36:57,414.414 INFO    ] No existing commands found in stream
[2026-06-12 16:37:02,421.421 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 16:37:02,423.423 INFO    ] Waiting 3.46 seconds before fallback handling...
[2026-06-12 16:37:06,234.234 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 16:37:06,235.235 INFO    ] Checking for system updates...
[2026-06-12 16:37:06,256.256 INFO    ] 200
[2026-06-12 16:37:06,257.257 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:37:06,289.289 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 16:37:06,291.291 INFO    ] No update needed
[2026-06-12 16:37:06,292.292 INFO    ] Checking for camera pi updates...
[2026-06-12 16:37:06,311.311 INFO    ] 200
[2026-06-12 16:37:06,312.312 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:37:06,335.335 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 16:37:06,384.384 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 16:37:06,386.386 INFO    ] No camera update needed
[2026-06-12 16:37:06,387.387 INFO    ] Script finished. Safe exiting...
[2026-06-12 16:37:06,388.388 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 16:37:06,391.391 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 16:37:06,394.394 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 16:37:08,433.433 INFO    ] ================================================
[2026-06-12 16:37:08,448.448 INFO    ] Launching Daemon at Fri Jun 12 16:37:08 IST 2026
[2026-06-12 16:37:08,459.459 INFO    ] ================================================
[2026-06-12 16:37:08,834.834 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 16:37:08
[2026-06-12 16:37:09,150.150 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 16:37:09,294.294 INFO    ] Initializing speech engine...
[2026-06-12 16:37:09,299.299 INFO    ] 2026-06-12 16:37:09
[2026-06-12 16:37:09,502.502 INFO    ] 2026-06-12 16:37:09
[2026-06-12 16:37:09,531.531 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 16:37:09,712.712 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 16:37:09,722.722 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 16:37:09,897.897 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 16:37:09,931.931 INFO    ] time= 12/06/2026 16:37:09
[2026-06-12 16:37:09,941.941 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 16:37:09,947.947 INFO    ] Checking for existing commands in stream...
[2026-06-12 16:37:10,014.014 INFO    ] No existing commands found in stream
[2026-06-12 16:37:15,028.028 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 16:37:15,031.031 INFO    ] Waiting 3.65 seconds before fallback handling...
[2026-06-12 16:37:20,706.706 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 16:37:20,709.709 INFO    ] Checking for system updates...
[2026-06-12 16:37:20,745.745 INFO    ] 200
[2026-06-12 16:37:20,747.747 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:37:20,787.787 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 16:37:20,788.788 INFO    ] No update needed
[2026-06-12 16:37:20,790.790 INFO    ] Checking for camera pi updates...
[2026-06-12 16:37:20,809.809 INFO    ] 200
[2026-06-12 16:37:20,811.811 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:37:20,834.834 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 16:37:20,880.880 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 16:37:20,882.882 INFO    ] No camera update needed
[2026-06-12 16:37:20,883.883 INFO    ] Script finished. Safe exiting...
[2026-06-12 16:37:20,884.884 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 16:37:20,887.887 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 16:37:20,890.890 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 16:37:22,930.930 INFO    ] ================================================
[2026-06-12 16:37:22,945.945 INFO    ] Launching Daemon at Fri Jun 12 16:37:22 IST 2026
[2026-06-12 16:37:22,956.956 INFO    ] ================================================
[2026-06-12 16:37:23,291.291 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 16:37:23
[2026-06-12 16:37:23,607.607 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 16:37:23,746.746 INFO    ] Initializing speech engine...
[2026-06-12 16:37:23,757.757 INFO    ] 2026-06-12 16:37:23
[2026-06-12 16:37:23,961.961 INFO    ] 2026-06-12 16:37:23
[2026-06-12 16:37:23,989.989 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 16:37:24,171.171 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 16:37:24,174.174 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 16:37:24,310.310 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 16:37:24,377.377 INFO    ] time= 12/06/2026 16:37:24
[2026-06-12 16:37:24,401.401 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 16:37:24,407.407 INFO    ] Checking for existing commands in stream...
[2026-06-12 16:37:24,473.473 INFO    ] No existing commands found in stream
[2026-06-12 16:37:29,482.482 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 16:37:29,485.485 INFO    ] Waiting 3.96 seconds before fallback handling...
[2026-06-12 16:37:33,826.826 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 16:37:33,827.827 INFO    ] Checking for system updates...
[2026-06-12 16:37:33,848.848 INFO    ] 200
[2026-06-12 16:37:33,849.849 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:37:33,880.880 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 16:37:33,881.881 INFO    ] No update needed
[2026-06-12 16:37:33,882.882 INFO    ] Checking for camera pi updates...
[2026-06-12 16:37:33,901.901 INFO    ] 200
[2026-06-12 16:37:33,903.903 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:37:33,927.927 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 16:37:33,965.965 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 16:37:33,967.967 INFO    ] No camera update needed
[2026-06-12 16:37:33,968.968 INFO    ] Script finished. Safe exiting...
[2026-06-12 16:37:33,969.969 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 16:37:33,972.972 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 16:37:33,975.975 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 16:37:36,014.014 INFO    ] ================================================
[2026-06-12 16:37:36,028.028 INFO    ] Launching Daemon at Fri Jun 12 16:37:36 IST 2026
[2026-06-12 16:37:36,039.039 INFO    ] ================================================
[2026-06-12 16:37:36,409.409 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 16:37:36
[2026-06-12 16:37:36,725.725 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 16:37:36,857.857 INFO    ] Initializing speech engine...
[2026-06-12 16:37:36,862.862 INFO    ] 2026-06-12 16:37:36
[2026-06-12 16:37:37,088.088 INFO    ] 2026-06-12 16:37:37
[2026-06-12 16:37:37,118.118 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 16:37:37,316.316 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 16:37:37,320.320 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 16:37:37,462.462 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 16:37:37,525.525 INFO    ] time= 12/06/2026 16:37:37
[2026-06-12 16:37:37,558.558 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 16:37:37,569.569 INFO    ] Checking for existing commands in stream...
[2026-06-12 16:37:37,666.666 INFO    ] No existing commands found in stream
[2026-06-12 16:37:42,675.675 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 16:37:42,678.678 INFO    ] Waiting 2.44 seconds before fallback handling...
[2026-06-12 16:37:45,437.437 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 16:37:45,438.438 INFO    ] Checking for system updates...
[2026-06-12 16:37:45,458.458 INFO    ] 200
[2026-06-12 16:37:45,460.460 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:37:45,489.489 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 16:37:45,491.491 INFO    ] No update needed
[2026-06-12 16:37:45,492.492 INFO    ] Checking for camera pi updates...
[2026-06-12 16:37:45,514.514 INFO    ] 200
[2026-06-12 16:37:45,515.515 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:37:45,538.538 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 16:37:45,581.581 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 16:37:45,582.582 INFO    ] No camera update needed
[2026-06-12 16:37:45,584.584 INFO    ] Script finished. Safe exiting...
[2026-06-12 16:37:45,585.585 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 16:37:45,588.588 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 16:37:45,590.590 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 16:37:47,631.631 INFO    ] ================================================
[2026-06-12 16:37:47,646.646 INFO    ] Launching Daemon at Fri Jun 12 16:37:47 IST 2026
[2026-06-12 16:37:47,658.658 INFO    ] ================================================
[2026-06-12 16:37:47,992.992 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 16:37:47
[2026-06-12 16:37:48,302.302 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 16:37:48,432.432 INFO    ] Initializing speech engine...
[2026-06-12 16:37:48,440.440 INFO    ] 2026-06-12 16:37:48
[2026-06-12 16:37:48,650.650 INFO    ] 2026-06-12 16:37:48
[2026-06-12 16:37:48,678.678 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 16:37:48,860.860 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 16:37:48,864.864 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 16:37:49,020.020 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 16:37:49,067.067 INFO    ] time= 12/06/2026 16:37:49
[2026-06-12 16:37:49,089.089 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 16:37:49,095.095 INFO    ] Checking for existing commands in stream...
[2026-06-12 16:37:49,162.162 INFO    ] No existing commands found in stream
[2026-06-12 16:37:54,176.176 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 16:37:54,179.179 INFO    ] Waiting 3.65 seconds before fallback handling...
[2026-06-12 16:37:58,217.217 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 16:37:58,218.218 INFO    ] Checking for system updates...
[2026-06-12 16:37:58,238.238 INFO    ] 200
[2026-06-12 16:37:58,240.240 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:37:58,271.271 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 16:37:58,272.272 INFO    ] No update needed
[2026-06-12 16:37:58,274.274 INFO    ] Checking for camera pi updates...
[2026-06-12 16:37:58,292.292 INFO    ] 200
[2026-06-12 16:37:58,294.294 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:37:58,316.316 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 16:37:58,357.357 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 16:37:58,358.358 INFO    ] No camera update needed
[2026-06-12 16:37:58,360.360 INFO    ] Script finished. Safe exiting...
[2026-06-12 16:37:58,361.361 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 16:37:58,364.364 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 16:37:58,366.366 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 16:38:00,404.404 INFO    ] ================================================
[2026-06-12 16:38:00,418.418 INFO    ] Launching Daemon at Fri Jun 12 16:38:00 IST 2026
[2026-06-12 16:38:00,429.429 INFO    ] ================================================
[2026-06-12 16:38:00,812.812 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 16:38:00
[2026-06-12 16:38:01,146.146 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 16:38:01,296.296 INFO    ] Initializing speech engine...
[2026-06-12 16:38:01,301.301 INFO    ] 2026-06-12 16:38:01
[2026-06-12 16:38:01,508.508 INFO    ] 2026-06-12 16:38:01
[2026-06-12 16:38:01,537.537 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 16:38:01,720.720 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 16:38:01,724.724 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 16:38:01,870.870 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 16:38:01,922.922 INFO    ] time= 12/06/2026 16:38:01
[2026-06-12 16:38:01,973.973 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 16:38:01,976.976 INFO    ] Checking for existing commands in stream...
[2026-06-12 16:38:02,059.059 INFO    ] No existing commands found in stream
[2026-06-12 16:38:07,082.082 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 16:38:07,085.085 INFO    ] Waiting 2.86 seconds before fallback handling...
[2026-06-12 16:38:10,377.377 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 16:38:10,379.379 INFO    ] Checking for system updates...
[2026-06-12 16:38:10,399.399 INFO    ] 200
[2026-06-12 16:38:10,401.401 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:38:10,430.430 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 16:38:10,431.431 INFO    ] No update needed
[2026-06-12 16:38:10,433.433 INFO    ] Checking for camera pi updates...
[2026-06-12 16:38:10,453.453 INFO    ] 200
[2026-06-12 16:38:10,454.454 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:38:10,477.477 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 16:38:10,519.519 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 16:38:10,521.521 INFO    ] No camera update needed
[2026-06-12 16:38:10,522.522 INFO    ] Script finished. Safe exiting...
[2026-06-12 16:38:10,524.524 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 16:38:10,526.526 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 16:38:10,529.529 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 16:38:12,569.569 INFO    ] ================================================
[2026-06-12 16:38:12,585.585 INFO    ] Launching Daemon at Fri Jun 12 16:38:12 IST 2026
[2026-06-12 16:38:12,596.596 INFO    ] ================================================
[2026-06-12 16:38:12,925.925 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 16:38:12
[2026-06-12 16:38:13,239.239 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 16:38:13,374.374 INFO    ] Initializing speech engine...
[2026-06-12 16:38:13,378.378 INFO    ] 2026-06-12 16:38:13
[2026-06-12 16:38:13,606.606 INFO    ] 2026-06-12 16:38:13
[2026-06-12 16:38:13,637.637 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 16:38:13,834.834 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 16:38:13,844.844 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 16:38:13,977.977 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 16:38:14,038.038 INFO    ] time= 12/06/2026 16:38:13
[2026-06-12 16:38:14,062.062 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 16:38:14,084.084 INFO    ] Checking for existing commands in stream...
[2026-06-12 16:38:14,159.159 INFO    ] No existing commands found in stream
[2026-06-12 16:38:19,170.170 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 16:38:19,173.173 INFO    ] Waiting 1.01 seconds before fallback handling...
[2026-06-12 16:38:20,548.548 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 16:38:20,550.550 INFO    ] Checking for system updates...
[2026-06-12 16:38:20,571.571 INFO    ] 200
[2026-06-12 16:38:20,572.572 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:38:20,605.605 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 16:38:20,606.606 INFO    ] No update needed
[2026-06-12 16:38:20,607.607 INFO    ] Checking for camera pi updates...
[2026-06-12 16:38:20,626.626 INFO    ] 200
[2026-06-12 16:38:20,628.628 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:38:20,652.652 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 16:38:20,701.701 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 16:38:20,702.702 INFO    ] No camera update needed
[2026-06-12 16:38:20,703.703 INFO    ] Script finished. Safe exiting...
[2026-06-12 16:38:20,705.705 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 16:38:20,707.707 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 16:38:20,710.710 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 16:38:22,749.749 INFO    ] ================================================
[2026-06-12 16:38:22,764.764 INFO    ] Launching Daemon at Fri Jun 12 16:38:22 IST 2026
[2026-06-12 16:38:22,775.775 INFO    ] ================================================
[2026-06-12 16:38:23,141.141 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 16:38:23
[2026-06-12 16:38:23,457.457 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 16:38:23,600.600 INFO    ] Initializing speech engine...
[2026-06-12 16:38:23,605.605 INFO    ] 2026-06-12 16:38:23
[2026-06-12 16:38:23,809.809 INFO    ] 2026-06-12 16:38:23
[2026-06-12 16:38:23,838.838 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 16:38:24,021.021 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 16:38:24,024.024 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 16:38:24,175.175 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 16:38:24,228.228 INFO    ] time= 12/06/2026 16:38:24
[2026-06-12 16:38:24,250.250 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 16:38:24,256.256 INFO    ] Checking for existing commands in stream...
[2026-06-12 16:38:24,323.323 INFO    ] No existing commands found in stream
[2026-06-12 16:38:29,332.332 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 16:38:29,335.335 INFO    ] Waiting 3.97 seconds before fallback handling...
[2026-06-12 16:38:33,687.687 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 16:38:33,689.689 INFO    ] Checking for system updates...
[2026-06-12 16:38:33,710.710 INFO    ] 200
[2026-06-12 16:38:33,712.712 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:38:33,741.741 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 16:38:33,743.743 INFO    ] No update needed
[2026-06-12 16:38:33,744.744 INFO    ] Checking for camera pi updates...
[2026-06-12 16:38:33,763.763 INFO    ] 200
[2026-06-12 16:38:33,764.764 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:38:33,787.787 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 16:38:33,925.925 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 16:38:33,927.927 INFO    ] No camera update needed
[2026-06-12 16:38:33,928.928 INFO    ] Script finished. Safe exiting...
[2026-06-12 16:38:33,929.929 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 16:38:33,932.932 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 16:38:33,935.935 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 16:38:35,974.974 INFO    ] ================================================
[2026-06-12 16:38:35,990.990 INFO    ] Launching Daemon at Fri Jun 12 16:38:35 IST 2026
[2026-06-12 16:38:36,001.001 INFO    ] ================================================
[2026-06-12 16:38:36,387.387 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 16:38:36
[2026-06-12 16:38:36,726.726 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 16:38:36,878.878 INFO    ] Initializing speech engine...
[2026-06-12 16:38:36,885.885 INFO    ] 2026-06-12 16:38:36
[2026-06-12 16:38:37,092.092 INFO    ] 2026-06-12 16:38:37
[2026-06-12 16:38:37,121.121 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 16:38:37,305.305 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 16:38:37,315.315 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 16:38:37,431.431 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 16:38:37,442.442 INFO    ] time= 12/06/2026 16:38:37
[2026-06-12 16:38:37,468.468 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 16:38:37,524.524 INFO    ] Checking for existing commands in stream...
[2026-06-12 16:38:37,624.624 INFO    ] No existing commands found in stream
[2026-06-12 16:38:42,635.635 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 16:38:42,637.637 INFO    ] Waiting 3.26 seconds before fallback handling...
[2026-06-12 16:38:46,304.304 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 16:38:46,305.305 INFO    ] Checking for system updates...
[2026-06-12 16:38:46,325.325 INFO    ] 200
[2026-06-12 16:38:46,327.327 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:38:46,356.356 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 16:38:46,358.358 INFO    ] No update needed
[2026-06-12 16:38:46,359.359 INFO    ] Checking for camera pi updates...
[2026-06-12 16:38:46,378.378 INFO    ] 200
[2026-06-12 16:38:46,379.379 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:38:46,406.406 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 16:38:46,478.478 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 16:38:46,480.480 INFO    ] No camera update needed
[2026-06-12 16:38:46,481.481 INFO    ] Script finished. Safe exiting...
[2026-06-12 16:38:46,482.482 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 16:38:46,485.485 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 16:38:46,488.488 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 16:38:48,527.527 INFO    ] ================================================
[2026-06-12 16:38:48,543.543 INFO    ] Launching Daemon at Fri Jun 12 16:38:48 IST 2026
[2026-06-12 16:38:48,554.554 INFO    ] ================================================
[2026-06-12 16:38:48,897.897 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 16:38:48
[2026-06-12 16:38:49,213.213 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 16:38:49,357.357 INFO    ] Initializing speech engine...
[2026-06-12 16:38:49,362.362 INFO    ] 2026-06-12 16:38:49
[2026-06-12 16:38:49,565.565 INFO    ] 2026-06-12 16:38:49
[2026-06-12 16:38:49,594.594 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 16:38:49,777.777 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 16:38:49,785.785 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 16:38:49,915.915 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 16:38:49,979.979 INFO    ] time= 12/06/2026 16:38:49
[2026-06-12 16:38:50,006.006 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 16:38:50,011.011 INFO    ] Checking for existing commands in stream...
[2026-06-12 16:38:50,079.079 INFO    ] No existing commands found in stream
[2026-06-12 16:38:55,088.088 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 16:38:55,091.091 INFO    ] Waiting 3.37 seconds before fallback handling...
[2026-06-12 16:38:58,837.837 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 16:38:58,839.839 INFO    ] Checking for system updates...
[2026-06-12 16:38:58,859.859 INFO    ] 200
[2026-06-12 16:38:58,861.861 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:38:58,891.891 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 16:38:58,892.892 INFO    ] No update needed
[2026-06-12 16:38:58,893.893 INFO    ] Checking for camera pi updates...
[2026-06-12 16:38:58,912.912 INFO    ] 200
[2026-06-12 16:38:58,914.914 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:38:58,938.938 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 16:38:58,985.985 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 16:38:58,987.987 INFO    ] No camera update needed
[2026-06-12 16:38:58,988.988 INFO    ] Script finished. Safe exiting...
[2026-06-12 16:38:58,989.989 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 16:38:58,992.992 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 16:38:58,995.995 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 16:39:01,036.036 INFO    ] ================================================
[2026-06-12 16:39:01,052.052 INFO    ] Launching Daemon at Fri Jun 12 16:39:01 IST 2026
[2026-06-12 16:39:01,063.063 INFO    ] ================================================
[2026-06-12 16:39:01,538.538 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 16:39:01
[2026-06-12 16:39:01,915.915 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 16:39:02,083.083 INFO    ] Initializing speech engine...
[2026-06-12 16:39:02,088.088 INFO    ] 2026-06-12 16:39:02
[2026-06-12 16:39:02,304.304 INFO    ] 2026-06-12 16:39:02
[2026-06-12 16:39:02,353.353 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 16:39:02,512.512 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 16:39:02,564.564 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 16:39:02,702.702 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 16:39:02,766.766 INFO    ] time= 12/06/2026 16:39:02
[2026-06-12 16:39:02,792.792 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 16:39:02,798.798 INFO    ] Checking for existing commands in stream...
[2026-06-12 16:39:02,865.865 INFO    ] No existing commands found in stream
[2026-06-12 16:39:07,895.895 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 16:39:07,898.898 INFO    ] Waiting 1.25 seconds before fallback handling...
[2026-06-12 16:39:09,521.521 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 16:39:09,522.522 INFO    ] Checking for system updates...
[2026-06-12 16:39:09,543.543 INFO    ] 200
[2026-06-12 16:39:09,544.544 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:39:09,574.574 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 16:39:09,575.575 INFO    ] No update needed
[2026-06-12 16:39:09,576.576 INFO    ] Checking for camera pi updates...
[2026-06-12 16:39:09,596.596 INFO    ] 200
[2026-06-12 16:39:09,597.597 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:39:09,620.620 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 16:39:09,663.663 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 16:39:09,664.664 INFO    ] No camera update needed
[2026-06-12 16:39:09,665.665 INFO    ] Script finished. Safe exiting...
[2026-06-12 16:39:09,666.666 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 16:39:09,669.669 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 16:39:09,672.672 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 16:39:11,713.713 INFO    ] ================================================
[2026-06-12 16:39:11,728.728 INFO    ] Launching Daemon at Fri Jun 12 16:39:11 IST 2026
[2026-06-12 16:39:11,739.739 INFO    ] ================================================
[2026-06-12 16:39:12,078.078 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 16:39:12
[2026-06-12 16:39:12,395.395 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 16:39:12,538.538 INFO    ] Initializing speech engine...
[2026-06-12 16:39:12,544.544 INFO    ] 2026-06-12 16:39:12
[2026-06-12 16:39:12,751.751 INFO    ] 2026-06-12 16:39:12
[2026-06-12 16:39:12,780.780 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 16:39:12,962.962 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 16:39:12,966.966 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 16:39:13,129.129 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 16:39:13,173.173 INFO    ] time= 12/06/2026 16:39:13
[2026-06-12 16:39:13,193.193 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 16:39:13,200.200 INFO    ] Checking for existing commands in stream...
[2026-06-12 16:39:13,289.289 INFO    ] No existing commands found in stream
[2026-06-12 16:39:18,298.298 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 16:39:18,301.301 INFO    ] Waiting 0.38 seconds before fallback handling...
[2026-06-12 16:39:19,054.054 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 16:39:19,056.056 INFO    ] Checking for system updates...
[2026-06-12 16:39:19,077.077 INFO    ] 200
[2026-06-12 16:39:19,079.079 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:39:19,109.109 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 16:39:19,110.110 INFO    ] No update needed
[2026-06-12 16:39:19,112.112 INFO    ] Checking for camera pi updates...
[2026-06-12 16:39:19,132.132 INFO    ] 200
[2026-06-12 16:39:19,134.134 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:39:19,157.157 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 16:39:19,203.203 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 16:39:19,204.204 INFO    ] No camera update needed
[2026-06-12 16:39:19,205.205 INFO    ] Script finished. Safe exiting...
[2026-06-12 16:39:19,206.206 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 16:39:19,209.209 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 16:39:19,212.212 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 16:39:21,252.252 INFO    ] ================================================
[2026-06-12 16:39:21,267.267 INFO    ] Launching Daemon at Fri Jun 12 16:39:21 IST 2026
[2026-06-12 16:39:21,278.278 INFO    ] ================================================
[2026-06-12 16:39:21,670.670 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 16:39:21
[2026-06-12 16:39:22,010.010 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 16:39:22,160.160 INFO    ] Initializing speech engine...
[2026-06-12 16:39:22,166.166 INFO    ] 2026-06-12 16:39:22
[2026-06-12 16:39:22,377.377 INFO    ] 2026-06-12 16:39:22
[2026-06-12 16:39:22,406.406 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 16:39:22,590.590 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 16:39:22,600.600 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 16:39:22,734.734 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 16:39:22,798.798 INFO    ] time= 12/06/2026 16:39:22
[2026-06-12 16:39:22,825.825 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 16:39:22,831.831 INFO    ] Checking for existing commands in stream...
[2026-06-12 16:39:22,899.899 INFO    ] No existing commands found in stream
[2026-06-12 16:39:27,923.923 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 16:39:27,926.926 INFO    ] Waiting 0.66 seconds before fallback handling...
[2026-06-12 16:39:28,994.994 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 16:39:28,996.996 INFO    ] Checking for system updates...
[2026-06-12 16:39:29,016.016 INFO    ] 200
[2026-06-12 16:39:29,018.018 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:39:29,050.050 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 16:39:29,052.052 INFO    ] No update needed
[2026-06-12 16:39:29,053.053 INFO    ] Checking for camera pi updates...
[2026-06-12 16:39:29,072.072 INFO    ] 200
[2026-06-12 16:39:29,073.073 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:39:29,097.097 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 16:39:29,141.141 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 16:39:29,142.142 INFO    ] No camera update needed
[2026-06-12 16:39:29,143.143 INFO    ] Script finished. Safe exiting...
[2026-06-12 16:39:29,145.145 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 16:39:29,147.147 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 16:39:29,150.150 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 16:39:31,188.188 INFO    ] ================================================
[2026-06-12 16:39:31,203.203 INFO    ] Launching Daemon at Fri Jun 12 16:39:31 IST 2026
[2026-06-12 16:39:31,214.214 INFO    ] ================================================
[2026-06-12 16:39:31,583.583 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 16:39:31
[2026-06-12 16:39:31,930.930 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 16:39:32,073.073 INFO    ] Initializing speech engine...
[2026-06-12 16:39:32,077.077 INFO    ] 2026-06-12 16:39:32
[2026-06-12 16:39:32,306.306 INFO    ] 2026-06-12 16:39:32
[2026-06-12 16:39:32,337.337 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 16:39:32,504.504 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 16:39:32,537.537 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 16:39:32,677.677 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 16:39:32,746.746 INFO    ] time= 12/06/2026 16:39:32
[2026-06-12 16:39:32,784.784 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 16:39:32,791.791 INFO    ] Checking for existing commands in stream...
[2026-06-12 16:39:32,863.863 INFO    ] No existing commands found in stream
[2026-06-12 16:39:37,872.872 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 16:39:37,875.875 INFO    ] Waiting 1.27 seconds before fallback handling...
[2026-06-12 16:39:39,501.501 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 16:39:39,502.502 INFO    ] Checking for system updates...
[2026-06-12 16:39:39,527.527 INFO    ] 200
[2026-06-12 16:39:39,529.529 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:39:39,558.558 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 16:39:39,560.560 INFO    ] No update needed
[2026-06-12 16:39:39,561.561 INFO    ] Checking for camera pi updates...
[2026-06-12 16:39:39,580.580 INFO    ] 200
[2026-06-12 16:39:39,582.582 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:39:39,604.604 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 16:39:39,654.654 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 16:39:39,655.655 INFO    ] No camera update needed
[2026-06-12 16:39:39,656.656 INFO    ] Script finished. Safe exiting...
[2026-06-12 16:39:39,658.658 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 16:39:39,661.661 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 16:39:39,663.663 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 16:39:41,702.702 INFO    ] ================================================
[2026-06-12 16:39:41,718.718 INFO    ] Launching Daemon at Fri Jun 12 16:39:41 IST 2026
[2026-06-12 16:39:41,729.729 INFO    ] ================================================
[2026-06-12 16:39:42,079.079 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 16:39:42
[2026-06-12 16:39:42,397.397 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 16:39:42,535.535 INFO    ] Initializing speech engine...
[2026-06-12 16:39:42,548.548 INFO    ] 2026-06-12 16:39:42
[2026-06-12 16:39:42,768.768 INFO    ] 2026-06-12 16:39:42
[2026-06-12 16:39:42,799.799 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 16:39:42,932.932 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 16:39:42,998.998 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 16:39:43,149.149 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 16:39:43,221.221 INFO    ] time= 12/06/2026 16:39:43
[2026-06-12 16:39:43,246.246 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 16:39:43,253.253 INFO    ] Checking for existing commands in stream...
[2026-06-12 16:39:43,323.323 INFO    ] No existing commands found in stream
[2026-06-12 16:39:48,333.333 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 16:39:48,336.336 INFO    ] Waiting 1.89 seconds before fallback handling...
[2026-06-12 16:39:50,582.582 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 16:39:50,584.584 INFO    ] Checking for system updates...
[2026-06-12 16:39:50,604.604 INFO    ] 200
[2026-06-12 16:39:50,605.605 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:39:50,637.637 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 16:39:50,638.638 INFO    ] No update needed
[2026-06-12 16:39:50,640.640 INFO    ] Checking for camera pi updates...
[2026-06-12 16:39:50,661.661 INFO    ] 200
[2026-06-12 16:39:50,662.662 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:39:50,686.686 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 16:39:50,729.729 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 16:39:50,730.730 INFO    ] No camera update needed
[2026-06-12 16:39:50,732.732 INFO    ] Script finished. Safe exiting...
[2026-06-12 16:39:50,733.733 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 16:39:50,736.736 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 16:39:50,738.738 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 16:39:52,776.776 INFO    ] ================================================
[2026-06-12 16:39:52,802.802 INFO    ] Launching Daemon at Fri Jun 12 16:39:52 IST 2026
[2026-06-12 16:39:52,813.813 INFO    ] ================================================
[2026-06-12 16:39:53,149.149 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 16:39:53
[2026-06-12 16:39:53,461.461 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 16:39:53,596.596 INFO    ] Initializing speech engine...
[2026-06-12 16:39:53,599.599 INFO    ] 2026-06-12 16:39:53
[2026-06-12 16:39:53,828.828 INFO    ] 2026-06-12 16:39:53
[2026-06-12 16:39:53,858.858 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 16:39:54,055.055 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 16:39:54,059.059 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 16:39:54,206.206 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 16:39:54,265.265 INFO    ] time= 12/06/2026 16:39:54
[2026-06-12 16:39:54,289.289 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 16:39:54,305.305 INFO    ] Checking for existing commands in stream...
[2026-06-12 16:39:54,408.408 INFO    ] No existing commands found in stream
[2026-06-12 16:39:59,422.422 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 16:39:59,425.425 INFO    ] Waiting 1.54 seconds before fallback handling...
[2026-06-12 16:40:01,343.343 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 16:40:01,344.344 INFO    ] Checking for system updates...
[2026-06-12 16:40:01,366.366 INFO    ] 200
[2026-06-12 16:40:01,368.368 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:40:01,402.402 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 16:40:01,404.404 INFO    ] No update needed
[2026-06-12 16:40:01,405.405 INFO    ] Checking for camera pi updates...
[2026-06-12 16:40:01,426.426 INFO    ] 200
[2026-06-12 16:40:01,429.429 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:40:01,526.526 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 16:40:01,582.582 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 16:40:01,585.585 INFO    ] No camera update needed
[2026-06-12 16:40:01,588.588 INFO    ] Script finished. Safe exiting...
[2026-06-12 16:40:01,611.611 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 16:40:01,624.624 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 16:40:01,630.630 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 16:40:03,663.663 INFO    ] ================================================
[2026-06-12 16:40:03,678.678 INFO    ] Launching Daemon at Fri Jun 12 16:40:03 IST 2026
[2026-06-12 16:40:03,689.689 INFO    ] ================================================
[2026-06-12 16:40:04,029.029 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 16:40:04
[2026-06-12 16:40:04,342.342 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 16:40:04,477.477 INFO    ] Initializing speech engine...
[2026-06-12 16:40:04,485.485 INFO    ] 2026-06-12 16:40:04
[2026-06-12 16:40:04,700.700 INFO    ] 2026-06-12 16:40:04
[2026-06-12 16:40:04,729.729 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 16:40:04,915.915 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 16:40:04,925.925 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 16:40:05,117.117 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 16:40:05,142.142 INFO    ] time= 12/06/2026 16:40:05
[2026-06-12 16:40:05,148.148 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 16:40:05,149.149 INFO    ] Checking for existing commands in stream...
[2026-06-12 16:40:05,216.216 INFO    ] No existing commands found in stream
[2026-06-12 16:40:10,230.230 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 16:40:10,233.233 INFO    ] Waiting 3.81 seconds before fallback handling...
[2026-06-12 16:40:14,451.451 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 16:40:14,452.452 INFO    ] Checking for system updates...
[2026-06-12 16:40:14,473.473 INFO    ] 200
[2026-06-12 16:40:14,474.474 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:40:14,508.508 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 16:40:14,509.509 INFO    ] No update needed
[2026-06-12 16:40:14,511.511 INFO    ] Checking for camera pi updates...
[2026-06-12 16:40:14,530.530 INFO    ] 200
[2026-06-12 16:40:14,531.531 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:40:14,555.555 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 16:40:14,598.598 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 16:40:14,599.599 INFO    ] No camera update needed
[2026-06-12 16:40:14,601.601 INFO    ] Script finished. Safe exiting...
[2026-06-12 16:40:14,602.602 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 16:40:14,605.605 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 16:40:14,608.608 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 16:40:16,645.645 INFO    ] ================================================
[2026-06-12 16:40:16,660.660 INFO    ] Launching Daemon at Fri Jun 12 16:40:16 IST 2026
[2026-06-12 16:40:16,671.671 INFO    ] ================================================
[2026-06-12 16:40:17,030.030 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 16:40:17
[2026-06-12 16:40:17,346.346 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 16:40:17,494.494 INFO    ] Initializing speech engine...
[2026-06-12 16:40:17,499.499 INFO    ] 2026-06-12 16:40:17
[2026-06-12 16:40:17,713.713 INFO    ] 2026-06-12 16:40:17
[2026-06-12 16:40:17,743.743 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 16:40:17,939.939 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 16:40:17,967.967 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 16:40:18,102.102 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 16:40:18,104.104 INFO    ] time= 12/06/2026 16:40:18
[2026-06-12 16:40:18,106.106 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 16:40:18,107.107 INFO    ] Checking for existing commands in stream...
[2026-06-12 16:40:18,171.171 INFO    ] No existing commands found in stream
[2026-06-12 16:40:23,179.179 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 16:40:23,182.182 INFO    ] Waiting 3.95 seconds before fallback handling...
[2026-06-12 16:40:27,526.526 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 16:40:27,528.528 INFO    ] Checking for system updates...
[2026-06-12 16:40:27,549.549 INFO    ] 200
[2026-06-12 16:40:27,551.551 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:40:27,581.581 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 16:40:27,582.582 INFO    ] No update needed
[2026-06-12 16:40:27,584.584 INFO    ] Checking for camera pi updates...
[2026-06-12 16:40:27,603.603 INFO    ] 200
[2026-06-12 16:40:27,605.605 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:40:27,628.628 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 16:40:27,671.671 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 16:40:27,673.673 INFO    ] No camera update needed
[2026-06-12 16:40:27,674.674 INFO    ] Script finished. Safe exiting...
[2026-06-12 16:40:27,675.675 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 16:40:27,678.678 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 16:40:27,681.681 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 16:40:29,723.723 INFO    ] ================================================
[2026-06-12 16:40:29,738.738 INFO    ] Launching Daemon at Fri Jun 12 16:40:29 IST 2026
[2026-06-12 16:40:29,749.749 INFO    ] ================================================
[2026-06-12 16:40:30,092.092 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 16:40:30
[2026-06-12 16:40:30,402.402 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 16:40:30,535.535 INFO    ] Initializing speech engine...
[2026-06-12 16:40:30,539.539 INFO    ] 2026-06-12 16:40:30
[2026-06-12 16:40:30,766.766 INFO    ] 2026-06-12 16:40:30
[2026-06-12 16:40:30,796.796 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 16:40:30,994.994 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 16:40:31,003.003 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 16:40:31,142.142 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 16:40:31,196.196 INFO    ] time= 12/06/2026 16:40:31
[2026-06-12 16:40:31,230.230 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 16:40:31,247.247 INFO    ] Checking for existing commands in stream...
[2026-06-12 16:40:31,318.318 INFO    ] No existing commands found in stream
[2026-06-12 16:40:36,327.327 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 16:40:36,330.330 INFO    ] Waiting 2.72 seconds before fallback handling...
[2026-06-12 16:40:39,440.440 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 16:40:39,441.441 INFO    ] Checking for system updates...
[2026-06-12 16:40:39,462.462 INFO    ] 200
[2026-06-12 16:40:39,463.463 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:40:39,493.493 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 16:40:39,495.495 INFO    ] No update needed
[2026-06-12 16:40:39,496.496 INFO    ] Checking for camera pi updates...
[2026-06-12 16:40:39,515.515 INFO    ] 200
[2026-06-12 16:40:39,516.516 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:40:39,541.541 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 16:40:39,678.678 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 16:40:39,679.679 INFO    ] No camera update needed
[2026-06-12 16:40:39,681.681 INFO    ] Script finished. Safe exiting...
[2026-06-12 16:40:39,682.682 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 16:40:39,685.685 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 16:40:39,687.687 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 16:40:41,725.725 INFO    ] ================================================
[2026-06-12 16:40:41,740.740 INFO    ] Launching Daemon at Fri Jun 12 16:40:41 IST 2026
[2026-06-12 16:40:41,752.752 INFO    ] ================================================
[2026-06-12 16:40:42,107.107 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 16:40:42
[2026-06-12 16:40:42,417.417 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 16:40:42,557.557 INFO    ] Initializing speech engine...
[2026-06-12 16:40:42,565.565 INFO    ] 2026-06-12 16:40:42
[2026-06-12 16:40:42,781.781 INFO    ] 2026-06-12 16:40:42
[2026-06-12 16:40:42,811.811 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 16:40:43,008.008 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 16:40:43,017.017 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 16:40:43,149.149 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 16:40:43,216.216 INFO    ] time= 12/06/2026 16:40:43
[2026-06-12 16:40:43,249.249 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 16:40:43,255.255 INFO    ] Checking for existing commands in stream...
[2026-06-12 16:40:43,331.331 INFO    ] No existing commands found in stream
[2026-06-12 16:40:48,340.340 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 16:40:48,343.343 INFO    ] Waiting 3.03 seconds before fallback handling...
[2026-06-12 16:40:51,750.750 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 16:40:51,751.751 INFO    ] Checking for system updates...
[2026-06-12 16:40:51,771.771 INFO    ] 200
[2026-06-12 16:40:51,773.773 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:40:51,802.802 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 16:40:51,803.803 INFO    ] No update needed
[2026-06-12 16:40:51,805.805 INFO    ] Checking for camera pi updates...
[2026-06-12 16:40:51,825.825 INFO    ] 200
[2026-06-12 16:40:51,826.826 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:40:51,849.849 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 16:40:51,902.902 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 16:40:51,904.904 INFO    ] No camera update needed
[2026-06-12 16:40:51,905.905 INFO    ] Script finished. Safe exiting...
[2026-06-12 16:40:51,906.906 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 16:40:51,909.909 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 16:40:51,912.912 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 16:40:53,950.950 INFO    ] ================================================
[2026-06-12 16:40:53,966.966 INFO    ] Launching Daemon at Fri Jun 12 16:40:53 IST 2026
[2026-06-12 16:40:53,976.976 INFO    ] ================================================
[2026-06-12 16:40:54,331.331 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 16:40:54
[2026-06-12 16:40:54,666.666 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 16:40:54,815.815 INFO    ] Initializing speech engine...
[2026-06-12 16:40:54,821.821 INFO    ] 2026-06-12 16:40:54
[2026-06-12 16:40:55,028.028 INFO    ] 2026-06-12 16:40:55
[2026-06-12 16:40:55,057.057 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 16:40:55,242.242 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 16:40:55,252.252 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 16:40:55,391.391 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 16:40:55,447.447 INFO    ] time= 12/06/2026 16:40:55
[2026-06-12 16:40:55,471.471 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 16:40:55,477.477 INFO    ] Checking for existing commands in stream...
[2026-06-12 16:40:55,545.545 INFO    ] No existing commands found in stream
[2026-06-12 16:41:00,564.564 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 16:41:00,567.567 INFO    ] Waiting 3.47 seconds before fallback handling...
[2026-06-12 16:41:04,414.414 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 16:41:04,416.416 INFO    ] Checking for system updates...
[2026-06-12 16:41:04,436.436 INFO    ] 200
[2026-06-12 16:41:04,438.438 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:41:04,468.468 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 16:41:04,469.469 INFO    ] No update needed
[2026-06-12 16:41:04,471.471 INFO    ] Checking for camera pi updates...
[2026-06-12 16:41:04,490.490 INFO    ] 200
[2026-06-12 16:41:04,492.492 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:41:04,516.516 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 16:41:04,568.568 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 16:41:04,569.569 INFO    ] No camera update needed
[2026-06-12 16:41:04,571.571 INFO    ] Script finished. Safe exiting...
[2026-06-12 16:41:04,572.572 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 16:41:04,575.575 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 16:41:04,577.577 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 16:41:06,615.615 INFO    ] ================================================
[2026-06-12 16:41:06,630.630 INFO    ] Launching Daemon at Fri Jun 12 16:41:06 IST 2026
[2026-06-12 16:41:06,641.641 INFO    ] ================================================
[2026-06-12 16:41:06,981.981 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 16:41:06
[2026-06-12 16:41:07,293.293 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 16:41:07,436.436 INFO    ] Initializing speech engine...
[2026-06-12 16:41:07,441.441 INFO    ] 2026-06-12 16:41:07
[2026-06-12 16:41:07,644.644 INFO    ] 2026-06-12 16:41:07
[2026-06-12 16:41:07,673.673 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 16:41:07,854.854 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 16:41:07,864.864 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 16:41:07,993.993 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 16:41:08,057.057 INFO    ] time= 12/06/2026 16:41:08
[2026-06-12 16:41:08,084.084 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 16:41:08,090.090 INFO    ] Checking for existing commands in stream...
[2026-06-12 16:41:08,156.156 INFO    ] No existing commands found in stream
[2026-06-12 16:41:13,166.166 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 16:41:13,169.169 INFO    ] Waiting 3.10 seconds before fallback handling...
[2026-06-12 16:41:16,663.663 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 16:41:16,664.664 INFO    ] Checking for system updates...
[2026-06-12 16:41:16,685.685 INFO    ] 200
[2026-06-12 16:41:16,686.686 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:41:16,715.715 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 16:41:16,717.717 INFO    ] No update needed
[2026-06-12 16:41:16,718.718 INFO    ] Checking for camera pi updates...
[2026-06-12 16:41:16,740.740 INFO    ] 200
[2026-06-12 16:41:16,742.742 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:41:16,766.766 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 16:41:16,815.815 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 16:41:16,816.816 INFO    ] No camera update needed
[2026-06-12 16:41:16,818.818 INFO    ] Script finished. Safe exiting...
[2026-06-12 16:41:16,819.819 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 16:41:16,822.822 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 16:41:16,825.825 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 16:41:18,863.863 INFO    ] ================================================
[2026-06-12 16:41:18,880.880 INFO    ] Launching Daemon at Fri Jun 12 16:41:18 IST 2026
[2026-06-12 16:41:18,891.891 INFO    ] ================================================
[2026-06-12 16:41:19,241.241 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 16:41:19
[2026-06-12 16:41:19,558.558 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 16:41:19,689.689 INFO    ] Initializing speech engine...
[2026-06-12 16:41:19,694.694 INFO    ] 2026-06-12 16:41:19
[2026-06-12 16:41:19,910.910 INFO    ] 2026-06-12 16:41:19
[2026-06-12 16:41:19,939.939 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 16:41:20,124.124 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 16:41:20,127.127 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 16:41:20,289.289 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 16:41:20,331.331 INFO    ] time= 12/06/2026 16:41:20
[2026-06-12 16:41:20,354.354 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 16:41:20,360.360 INFO    ] Checking for existing commands in stream...
[2026-06-12 16:41:20,427.427 INFO    ] No existing commands found in stream
[2026-06-12 16:41:25,452.452 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 16:41:25,454.454 INFO    ] Waiting 1.97 seconds before fallback handling...
[2026-06-12 16:41:27,876.876 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 16:41:27,878.878 INFO    ] Checking for system updates...
[2026-06-12 16:41:27,899.899 INFO    ] 200
[2026-06-12 16:41:27,900.900 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:41:27,932.932 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 16:41:27,933.933 INFO    ] No update needed
[2026-06-12 16:41:27,935.935 INFO    ] Checking for camera pi updates...
[2026-06-12 16:41:27,954.954 INFO    ] 200
[2026-06-12 16:41:27,955.955 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:41:27,980.980 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 16:41:28,021.021 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 16:41:28,023.023 INFO    ] No camera update needed
[2026-06-12 16:41:28,024.024 INFO    ] Script finished. Safe exiting...
[2026-06-12 16:41:28,025.025 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 16:41:28,029.029 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 16:41:28,032.032 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 16:41:30,070.070 INFO    ] ================================================
[2026-06-12 16:41:30,086.086 INFO    ] Launching Daemon at Fri Jun 12 16:41:30 IST 2026
[2026-06-12 16:41:30,097.097 INFO    ] ================================================
[2026-06-12 16:41:30,418.418 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 16:41:30
[2026-06-12 16:41:30,730.730 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 16:41:30,859.859 INFO    ] Initializing speech engine...
[2026-06-12 16:41:30,864.864 INFO    ] 2026-06-12 16:41:30
[2026-06-12 16:41:31,083.083 INFO    ] 2026-06-12 16:41:31
[2026-06-12 16:41:31,113.113 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 16:41:31,298.298 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 16:41:31,307.307 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 16:41:31,449.449 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 16:41:31,506.506 INFO    ] time= 12/06/2026 16:41:31
[2026-06-12 16:41:31,531.531 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 16:41:31,536.536 INFO    ] Checking for existing commands in stream...
[2026-06-12 16:41:31,604.604 INFO    ] No existing commands found in stream
[2026-06-12 16:41:36,613.613 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 16:41:36,616.616 INFO    ] Waiting 2.59 seconds before fallback handling...
[2026-06-12 16:41:39,589.589 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 16:41:39,591.591 INFO    ] Checking for system updates...
[2026-06-12 16:41:39,611.611 INFO    ] 200
[2026-06-12 16:41:39,613.613 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:41:39,642.642 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 16:41:39,643.643 INFO    ] No update needed
[2026-06-12 16:41:39,645.645 INFO    ] Checking for camera pi updates...
[2026-06-12 16:41:39,664.664 INFO    ] 200
[2026-06-12 16:41:39,665.665 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:41:39,688.688 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 16:41:39,731.731 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 16:41:39,732.732 INFO    ] No camera update needed
[2026-06-12 16:41:39,734.734 INFO    ] Script finished. Safe exiting...
[2026-06-12 16:41:39,735.735 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 16:41:39,738.738 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 16:41:39,740.740 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 16:41:41,780.780 INFO    ] ================================================
[2026-06-12 16:41:41,795.795 INFO    ] Launching Daemon at Fri Jun 12 16:41:41 IST 2026
[2026-06-12 16:41:41,806.806 INFO    ] ================================================
[2026-06-12 16:41:42,126.126 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 16:41:42
[2026-06-12 16:41:42,437.437 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 16:41:42,571.571 INFO    ] Initializing speech engine...
[2026-06-12 16:41:42,584.584 INFO    ] 2026-06-12 16:41:42
[2026-06-12 16:41:42,799.799 INFO    ] 2026-06-12 16:41:42
[2026-06-12 16:41:42,830.830 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 16:41:43,025.025 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 16:41:43,028.028 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 16:41:43,173.173 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 16:41:43,242.242 INFO    ] time= 12/06/2026 16:41:43
[2026-06-12 16:41:43,270.270 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 16:41:43,272.272 INFO    ] Checking for existing commands in stream...
[2026-06-12 16:41:43,347.347 INFO    ] No existing commands found in stream
[2026-06-12 16:41:48,356.356 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 16:41:48,359.359 INFO    ] Waiting 0.78 seconds before fallback handling...
[2026-06-12 16:41:49,513.513 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 16:41:49,515.515 INFO    ] Checking for system updates...
[2026-06-12 16:41:49,535.535 INFO    ] 200
[2026-06-12 16:41:49,536.536 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:41:49,568.568 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 16:41:49,569.569 INFO    ] No update needed
[2026-06-12 16:41:49,571.571 INFO    ] Checking for camera pi updates...
[2026-06-12 16:41:49,590.590 INFO    ] 200
[2026-06-12 16:41:49,591.591 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:41:49,615.615 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 16:41:49,655.655 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 16:41:49,656.656 INFO    ] No camera update needed
[2026-06-12 16:41:49,658.658 INFO    ] Script finished. Safe exiting...
[2026-06-12 16:41:49,659.659 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 16:41:49,662.662 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 16:41:49,665.665 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 16:41:51,702.702 INFO    ] ================================================
[2026-06-12 16:41:51,717.717 INFO    ] Launching Daemon at Fri Jun 12 16:41:51 IST 2026
[2026-06-12 16:41:51,728.728 INFO    ] ================================================
[2026-06-12 16:41:52,070.070 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 16:41:52
[2026-06-12 16:41:52,382.382 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 16:41:52,513.513 INFO    ] Initializing speech engine...
[2026-06-12 16:41:52,520.520 INFO    ] 2026-06-12 16:41:52
[2026-06-12 16:41:52,735.735 INFO    ] 2026-06-12 16:41:52
[2026-06-12 16:41:52,763.763 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 16:41:52,949.949 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 16:41:52,958.958 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 16:41:53,106.106 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 16:41:53,160.160 INFO    ] time= 12/06/2026 16:41:53
[2026-06-12 16:41:53,182.182 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 16:41:53,188.188 INFO    ] Checking for existing commands in stream...
[2026-06-12 16:41:53,256.256 INFO    ] No existing commands found in stream
[2026-06-12 16:41:58,265.265 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 16:41:58,268.268 INFO    ] Waiting 1.19 seconds before fallback handling...
[2026-06-12 16:41:59,855.855 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 16:41:59,857.857 INFO    ] Checking for system updates...
[2026-06-12 16:41:59,877.877 INFO    ] 200
[2026-06-12 16:41:59,879.879 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:41:59,908.908 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 16:41:59,910.910 INFO    ] No update needed
[2026-06-12 16:41:59,911.911 INFO    ] Checking for camera pi updates...
[2026-06-12 16:41:59,932.932 INFO    ] 200
[2026-06-12 16:41:59,933.933 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:41:59,959.959 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 16:42:00,005.005 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 16:42:00,007.007 INFO    ] No camera update needed
[2026-06-12 16:42:00,008.008 INFO    ] Script finished. Safe exiting...
[2026-06-12 16:42:00,009.009 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 16:42:00,013.013 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 16:42:00,016.016 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 16:42:02,075.075 INFO    ] ================================================
[2026-06-12 16:42:02,105.105 INFO    ] Launching Daemon at Fri Jun 12 16:42:02 IST 2026
[2026-06-12 16:42:02,125.125 INFO    ] ================================================
[2026-06-12 16:42:02,519.519 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 16:42:02
[2026-06-12 16:42:02,918.918 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 16:42:03,085.085 INFO    ] Initializing speech engine...
[2026-06-12 16:42:03,093.093 INFO    ] 2026-06-12 16:42:03
[2026-06-12 16:42:03,313.313 INFO    ] 2026-06-12 16:42:03
[2026-06-12 16:42:03,343.343 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 16:42:03,472.472 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 16:42:03,535.535 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 16:42:03,681.681 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 16:42:03,749.749 INFO    ] time= 12/06/2026 16:42:03
[2026-06-12 16:42:03,779.779 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 16:42:03,781.781 INFO    ] Checking for existing commands in stream...
[2026-06-12 16:42:03,854.854 INFO    ] No existing commands found in stream
[2026-06-12 16:42:08,862.862 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 16:42:08,865.865 INFO    ] Waiting 3.34 seconds before fallback handling...
[2026-06-12 16:42:12,570.570 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 16:42:12,571.571 INFO    ] Checking for system updates...
[2026-06-12 16:42:12,592.592 INFO    ] 200
[2026-06-12 16:42:12,593.593 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:42:12,623.623 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 16:42:12,624.624 INFO    ] No update needed
[2026-06-12 16:42:12,626.626 INFO    ] Checking for camera pi updates...
[2026-06-12 16:42:12,645.645 INFO    ] 200
[2026-06-12 16:42:12,646.646 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:42:12,671.671 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 16:42:12,714.714 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 16:42:12,716.716 INFO    ] No camera update needed
[2026-06-12 16:42:12,717.717 INFO    ] Script finished. Safe exiting...
[2026-06-12 16:42:12,718.718 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 16:42:12,721.721 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 16:42:12,724.724 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 16:42:14,762.762 INFO    ] ================================================
[2026-06-12 16:42:14,778.778 INFO    ] Launching Daemon at Fri Jun 12 16:42:14 IST 2026
[2026-06-12 16:42:14,790.790 INFO    ] ================================================
[2026-06-12 16:42:15,138.138 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 16:42:15
[2026-06-12 16:42:15,453.453 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 16:42:15,585.585 INFO    ] Initializing speech engine...
[2026-06-12 16:42:15,593.593 INFO    ] 2026-06-12 16:42:15
[2026-06-12 16:42:15,804.804 INFO    ] 2026-06-12 16:42:15
[2026-06-12 16:42:15,833.833 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 16:42:16,016.016 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 16:42:16,019.019 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 16:42:16,154.154 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 16:42:16,218.218 INFO    ] time= 12/06/2026 16:42:16
[2026-06-12 16:42:16,245.245 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 16:42:16,251.251 INFO    ] Checking for existing commands in stream...
[2026-06-12 16:42:16,318.318 INFO    ] No existing commands found in stream
[2026-06-12 16:42:21,332.332 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 16:42:21,334.334 INFO    ] Waiting 0.51 seconds before fallback handling...
[2026-06-12 16:42:22,248.248 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 16:42:22,249.249 INFO    ] Checking for system updates...
[2026-06-12 16:42:22,270.270 INFO    ] 200
[2026-06-12 16:42:22,272.272 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:42:22,302.302 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 16:42:22,303.303 INFO    ] No update needed
[2026-06-12 16:42:22,305.305 INFO    ] Checking for camera pi updates...
[2026-06-12 16:42:22,325.325 INFO    ] 200
[2026-06-12 16:42:22,327.327 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:42:22,353.353 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 16:42:22,385.385 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 16:42:22,387.387 INFO    ] No camera update needed
[2026-06-12 16:42:22,388.388 INFO    ] Script finished. Safe exiting...
[2026-06-12 16:42:22,389.389 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 16:42:22,392.392 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 16:42:22,395.395 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 16:42:24,435.435 INFO    ] ================================================
[2026-06-12 16:42:24,450.450 INFO    ] Launching Daemon at Fri Jun 12 16:42:24 IST 2026
[2026-06-12 16:42:24,462.462 INFO    ] ================================================
[2026-06-12 16:42:24,805.805 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 16:42:24
[2026-06-12 16:42:25,116.116 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 16:42:25,252.252 INFO    ] Initializing speech engine...
[2026-06-12 16:42:25,260.260 INFO    ] 2026-06-12 16:42:25
[2026-06-12 16:42:25,468.468 INFO    ] 2026-06-12 16:42:25
[2026-06-12 16:42:25,496.496 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 16:42:25,681.681 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 16:42:25,685.685 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 16:42:25,838.838 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 16:42:25,889.889 INFO    ] time= 12/06/2026 16:42:25
[2026-06-12 16:42:25,913.913 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 16:42:25,920.920 INFO    ] Checking for existing commands in stream...
[2026-06-12 16:42:25,987.987 INFO    ] No existing commands found in stream
[2026-06-12 16:42:31,000.000 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 16:42:31,002.002 INFO    ] Waiting 0.71 seconds before fallback handling...
[2026-06-12 16:42:32,072.072 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 16:42:32,073.073 INFO    ] Checking for system updates...
[2026-06-12 16:42:32,093.093 INFO    ] 200
[2026-06-12 16:42:32,095.095 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:42:32,135.135 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 16:42:32,140.140 INFO    ] No update needed
[2026-06-12 16:42:32,142.142 INFO    ] Checking for camera pi updates...
[2026-06-12 16:42:32,168.168 INFO    ] 200
[2026-06-12 16:42:32,170.170 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:42:32,196.196 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 16:42:32,265.265 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 16:42:32,267.267 INFO    ] No camera update needed
[2026-06-12 16:42:32,268.268 INFO    ] Script finished. Safe exiting...
[2026-06-12 16:42:32,270.270 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 16:42:32,274.274 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 16:42:32,277.277 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 16:42:34,310.310 INFO    ] ================================================
[2026-06-12 16:42:34,326.326 INFO    ] Launching Daemon at Fri Jun 12 16:42:34 IST 2026
[2026-06-12 16:42:34,337.337 INFO    ] ================================================
[2026-06-12 16:42:34,717.717 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 16:42:34
[2026-06-12 16:42:35,049.049 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 16:42:35,199.199 INFO    ] Initializing speech engine...
[2026-06-12 16:42:35,205.205 INFO    ] 2026-06-12 16:42:35
[2026-06-12 16:42:35,411.411 INFO    ] 2026-06-12 16:42:35
[2026-06-12 16:42:35,440.440 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 16:42:35,603.603 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 16:42:35,627.627 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 16:42:35,780.780 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 16:42:35,832.832 INFO    ] time= 12/06/2026 16:42:35
[2026-06-12 16:42:35,855.855 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 16:42:35,862.862 INFO    ] Checking for existing commands in stream...
[2026-06-12 16:42:35,929.929 INFO    ] No existing commands found in stream
[2026-06-12 16:42:40,938.938 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 16:42:40,941.941 INFO    ] Waiting 3.37 seconds before fallback handling...
[2026-06-12 16:42:44,701.701 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 16:42:44,703.703 INFO    ] Checking for system updates...
[2026-06-12 16:42:44,723.723 INFO    ] 200
[2026-06-12 16:42:44,724.724 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:42:44,756.756 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 16:42:44,757.757 INFO    ] No update needed
[2026-06-12 16:42:44,758.758 INFO    ] Checking for camera pi updates...
[2026-06-12 16:42:44,778.778 INFO    ] 200
[2026-06-12 16:42:44,779.779 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:42:44,802.802 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 16:42:44,946.946 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 16:42:44,947.947 INFO    ] No camera update needed
[2026-06-12 16:42:44,949.949 INFO    ] Script finished. Safe exiting...
[2026-06-12 16:42:44,950.950 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 16:42:44,953.953 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 16:42:44,956.956 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 16:42:47,997.997 INFO    ] ================================================
[2026-06-12 16:42:47,013.013 INFO    ] Launching Daemon at Fri Jun 12 16:42:47 IST 2026
[2026-06-12 16:42:47,024.024 INFO    ] ================================================
[2026-06-12 16:42:47,400.400 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 16:42:47
[2026-06-12 16:42:47,733.733 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 16:42:47,876.876 INFO    ] Initializing speech engine...
[2026-06-12 16:42:47,885.885 INFO    ] 2026-06-12 16:42:47
[2026-06-12 16:42:48,094.094 INFO    ] 2026-06-12 16:42:48
[2026-06-12 16:42:48,123.123 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 16:42:48,309.309 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 16:42:48,321.321 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 16:42:48,438.438 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 16:42:48,440.440 INFO    ] time= 12/06/2026 16:42:48
[2026-06-12 16:42:48,457.457 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 16:42:48,520.520 INFO    ] Checking for existing commands in stream...
[2026-06-12 16:42:48,621.621 INFO    ] No existing commands found in stream
[2026-06-12 16:42:53,632.632 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 16:42:53,635.635 INFO    ] Waiting 1.46 seconds before fallback handling...
[2026-06-12 16:42:55,513.513 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 16:42:55,514.514 INFO    ] Checking for system updates...
[2026-06-12 16:42:55,535.535 INFO    ] 200
[2026-06-12 16:42:55,537.537 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:42:55,567.567 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 16:42:55,569.569 INFO    ] No update needed
[2026-06-12 16:42:55,570.570 INFO    ] Checking for camera pi updates...
[2026-06-12 16:42:55,590.590 INFO    ] 200
[2026-06-12 16:42:55,591.591 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:42:55,614.614 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 16:42:55,657.657 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 16:42:55,658.658 INFO    ] No camera update needed
[2026-06-12 16:42:55,659.659 INFO    ] Script finished. Safe exiting...
[2026-06-12 16:42:55,661.661 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 16:42:55,664.664 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 16:42:55,667.667 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 16:42:57,706.706 INFO    ] ================================================
[2026-06-12 16:42:57,722.722 INFO    ] Launching Daemon at Fri Jun 12 16:42:57 IST 2026
[2026-06-12 16:42:57,733.733 INFO    ] ================================================
[2026-06-12 16:42:58,083.083 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 16:42:58
[2026-06-12 16:42:58,398.398 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 16:42:58,542.542 INFO    ] Initializing speech engine...
[2026-06-12 16:42:58,547.547 INFO    ] 2026-06-12 16:42:58
[2026-06-12 16:42:58,750.750 INFO    ] 2026-06-12 16:42:58
[2026-06-12 16:42:58,779.779 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 16:42:58,971.971 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 16:42:58,988.988 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 16:42:59,170.170 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 16:42:59,192.192 INFO    ] time= 12/06/2026 16:42:59
[2026-06-12 16:42:59,198.198 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 16:42:59,200.200 INFO    ] Checking for existing commands in stream...
[2026-06-12 16:42:59,267.267 INFO    ] No existing commands found in stream
[2026-06-12 16:43:04,291.291 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 16:43:04,294.294 INFO    ] Waiting 2.35 seconds before fallback handling...
[2026-06-12 16:43:06,993.993 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 16:43:06,994.994 INFO    ] Checking for system updates...
[2026-06-12 16:43:07,015.015 INFO    ] 200
[2026-06-12 16:43:07,016.016 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:43:07,048.048 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 16:43:07,050.050 INFO    ] No update needed
[2026-06-12 16:43:07,052.052 INFO    ] Checking for camera pi updates...
[2026-06-12 16:43:07,071.071 INFO    ] 200
[2026-06-12 16:43:07,072.072 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:43:07,095.095 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 16:43:07,146.146 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 16:43:07,147.147 INFO    ] No camera update needed
[2026-06-12 16:43:07,148.148 INFO    ] Script finished. Safe exiting...
[2026-06-12 16:43:07,150.150 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 16:43:07,153.153 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 16:43:07,156.156 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 16:43:09,196.196 INFO    ] ================================================
[2026-06-12 16:43:09,211.211 INFO    ] Launching Daemon at Fri Jun 12 16:43:09 IST 2026
[2026-06-12 16:43:09,222.222 INFO    ] ================================================
[2026-06-12 16:43:09,579.579 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 16:43:09
[2026-06-12 16:43:09,910.910 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 16:43:10,059.059 INFO    ] Initializing speech engine...
[2026-06-12 16:43:10,064.064 INFO    ] 2026-06-12 16:43:10
[2026-06-12 16:43:10,269.269 INFO    ] 2026-06-12 16:43:10
[2026-06-12 16:43:10,298.298 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 16:43:10,481.481 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 16:43:10,491.491 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 16:43:10,638.638 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 16:43:10,687.687 INFO    ] time= 12/06/2026 16:43:10
[2026-06-12 16:43:10,709.709 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 16:43:10,715.715 INFO    ] Checking for existing commands in stream...
[2026-06-12 16:43:10,781.781 INFO    ] No existing commands found in stream
[2026-06-12 16:43:15,795.795 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 16:43:15,798.798 INFO    ] Waiting 3.06 seconds before fallback handling...
[2026-06-12 16:43:19,247.247 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 16:43:19,249.249 INFO    ] Checking for system updates...
[2026-06-12 16:43:19,270.270 INFO    ] 200
[2026-06-12 16:43:19,271.271 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:43:19,302.302 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 16:43:19,303.303 INFO    ] No update needed
[2026-06-12 16:43:19,304.304 INFO    ] Checking for camera pi updates...
[2026-06-12 16:43:19,323.323 INFO    ] 200
[2026-06-12 16:43:19,325.325 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:43:19,348.348 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 16:43:19,388.388 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 16:43:19,390.390 INFO    ] No camera update needed
[2026-06-12 16:43:19,391.391 INFO    ] Script finished. Safe exiting...
[2026-06-12 16:43:19,392.392 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 16:43:19,396.396 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 16:43:19,398.398 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 16:43:21,438.438 INFO    ] ================================================
[2026-06-12 16:43:21,453.453 INFO    ] Launching Daemon at Fri Jun 12 16:43:21 IST 2026
[2026-06-12 16:43:21,463.463 INFO    ] ================================================
[2026-06-12 16:43:21,796.796 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 16:43:21
[2026-06-12 16:43:22,109.109 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 16:43:22,243.243 INFO    ] Initializing speech engine...
[2026-06-12 16:43:22,257.257 INFO    ] 2026-06-12 16:43:22
[2026-06-12 16:43:22,471.471 INFO    ] 2026-06-12 16:43:22
[2026-06-12 16:43:22,502.502 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 16:43:22,697.697 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 16:43:22,707.707 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 16:43:22,837.837 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 16:43:22,888.888 INFO    ] time= 12/06/2026 16:43:22
[2026-06-12 16:43:22,921.921 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 16:43:22,943.943 INFO    ] Checking for existing commands in stream...
[2026-06-12 16:43:23,019.019 INFO    ] No existing commands found in stream
[2026-06-12 16:43:28,028.028 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 16:43:28,031.031 INFO    ] Waiting 1.01 seconds before fallback handling...
[2026-06-12 16:43:29,937.937 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 16:43:29,940.940 INFO    ] Checking for system updates...
[2026-06-12 16:43:29,976.976 INFO    ] 200
[2026-06-12 16:43:29,979.979 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:43:30,033.033 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 16:43:30,035.035 INFO    ] No update needed
[2026-06-12 16:43:30,037.037 INFO    ] Checking for camera pi updates...
[2026-06-12 16:43:30,074.074 INFO    ] 200
[2026-06-12 16:43:30,076.076 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:43:30,118.118 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 16:43:30,177.177 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 16:43:30,178.178 INFO    ] No camera update needed
[2026-06-12 16:43:30,180.180 INFO    ] Script finished. Safe exiting...
[2026-06-12 16:43:30,181.181 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 16:43:30,184.184 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 16:43:30,187.187 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 16:43:32,217.217 INFO    ] ================================================
[2026-06-12 16:43:32,225.225 INFO    ] Launching Daemon at Fri Jun 12 16:43:32 IST 2026
[2026-06-12 16:43:32,232.232 INFO    ] ================================================
[2026-06-12 16:43:32,551.551 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 16:43:32
[2026-06-12 16:43:32,883.883 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 16:43:33,032.032 INFO    ] Initializing speech engine...
[2026-06-12 16:43:33,038.038 INFO    ] 2026-06-12 16:43:33
[2026-06-12 16:43:33,247.247 INFO    ] 2026-06-12 16:43:33
[2026-06-12 16:43:33,275.275 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 16:43:33,460.460 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 16:43:33,471.471 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 16:43:33,658.658 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 16:43:33,691.691 INFO    ] time= 12/06/2026 16:43:33
[2026-06-12 16:43:33,698.698 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 16:43:33,700.700 INFO    ] Checking for existing commands in stream...
[2026-06-12 16:43:33,766.766 INFO    ] No existing commands found in stream
[2026-06-12 16:43:38,799.799 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 16:43:38,802.802 INFO    ] Waiting 1.25 seconds before fallback handling...
[2026-06-12 16:43:40,453.453 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 16:43:40,454.454 INFO    ] Checking for system updates...
[2026-06-12 16:43:40,475.475 INFO    ] 200
[2026-06-12 16:43:40,476.476 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:43:40,507.507 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 16:43:40,508.508 INFO    ] No update needed
[2026-06-12 16:43:40,509.509 INFO    ] Checking for camera pi updates...
[2026-06-12 16:43:40,529.529 INFO    ] 200
[2026-06-12 16:43:40,530.530 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:43:40,553.553 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 16:43:40,604.604 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 16:43:40,606.606 INFO    ] No camera update needed
[2026-06-12 16:43:40,607.607 INFO    ] Script finished. Safe exiting...
[2026-06-12 16:43:40,609.609 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 16:43:40,612.612 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 16:43:40,615.615 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 16:43:42,653.653 INFO    ] ================================================
[2026-06-12 16:43:42,669.669 INFO    ] Launching Daemon at Fri Jun 12 16:43:42 IST 2026
[2026-06-12 16:43:42,680.680 INFO    ] ================================================
[2026-06-12 16:43:43,037.037 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 16:43:43
[2026-06-12 16:43:43,370.370 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 16:43:43,520.520 INFO    ] Initializing speech engine...
[2026-06-12 16:43:43,525.525 INFO    ] 2026-06-12 16:43:43
[2026-06-12 16:43:43,733.733 INFO    ] 2026-06-12 16:43:43
[2026-06-12 16:43:43,763.763 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 16:43:43,952.952 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 16:43:43,962.962 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 16:43:44,108.108 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 16:43:44,162.162 INFO    ] time= 12/06/2026 16:43:44
[2026-06-12 16:43:44,187.187 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 16:43:44,193.193 INFO    ] Checking for existing commands in stream...
[2026-06-12 16:43:44,262.262 INFO    ] No existing commands found in stream
[2026-06-12 16:43:49,271.271 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 16:43:49,274.274 INFO    ] Waiting 3.32 seconds before fallback handling...
[2026-06-12 16:43:52,990.990 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 16:43:52,991.991 INFO    ] Checking for system updates...
[2026-06-12 16:43:53,012.012 INFO    ] 200
[2026-06-12 16:43:53,013.013 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:43:53,043.043 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 16:43:53,045.045 INFO    ] No update needed
[2026-06-12 16:43:53,046.046 INFO    ] Checking for camera pi updates...
[2026-06-12 16:43:53,065.065 INFO    ] 200
[2026-06-12 16:43:53,067.067 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:43:53,090.090 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 16:43:53,152.152 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 16:43:53,153.153 INFO    ] No camera update needed
[2026-06-12 16:43:53,154.154 INFO    ] Script finished. Safe exiting...
[2026-06-12 16:43:53,156.156 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 16:43:53,159.159 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 16:43:53,162.162 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 16:43:55,202.202 INFO    ] ================================================
[2026-06-12 16:43:55,218.218 INFO    ] Launching Daemon at Fri Jun 12 16:43:55 IST 2026
[2026-06-12 16:43:55,229.229 INFO    ] ================================================
[2026-06-12 16:43:55,588.588 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 16:43:55
[2026-06-12 16:43:55,902.902 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 16:43:56,035.035 INFO    ] Initializing speech engine...
[2026-06-12 16:43:56,038.038 INFO    ] 2026-06-12 16:43:56
[2026-06-12 16:43:56,264.264 INFO    ] 2026-06-12 16:43:56
[2026-06-12 16:43:56,293.293 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 16:43:56,483.483 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 16:43:56,493.493 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 16:43:56,637.637 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 16:43:56,696.696 INFO    ] time= 12/06/2026 16:43:56
[2026-06-12 16:43:56,733.733 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 16:43:56,735.735 INFO    ] Checking for existing commands in stream...
[2026-06-12 16:43:56,810.810 INFO    ] No existing commands found in stream
[2026-06-12 16:44:01,820.820 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 16:44:01,823.823 INFO    ] Waiting 3.99 seconds before fallback handling...
[2026-06-12 16:44:06,227.227 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 16:44:06,228.228 INFO    ] Checking for system updates...
[2026-06-12 16:44:06,250.250 INFO    ] 200
[2026-06-12 16:44:06,251.251 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:44:06,281.281 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 16:44:06,282.282 INFO    ] No update needed
[2026-06-12 16:44:06,283.283 INFO    ] Checking for camera pi updates...
[2026-06-12 16:44:06,302.302 INFO    ] 200
[2026-06-12 16:44:06,303.303 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:44:06,327.327 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 16:44:06,368.368 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 16:44:06,369.369 INFO    ] No camera update needed
[2026-06-12 16:44:06,371.371 INFO    ] Script finished. Safe exiting...
[2026-06-12 16:44:06,372.372 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 16:44:06,375.375 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 16:44:06,377.377 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 16:44:08,417.417 INFO    ] ================================================
[2026-06-12 16:44:08,433.433 INFO    ] Launching Daemon at Fri Jun 12 16:44:08 IST 2026
[2026-06-12 16:44:08,444.444 INFO    ] ================================================
[2026-06-12 16:44:08,800.800 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 16:44:08
[2026-06-12 16:44:09,116.116 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 16:44:09,251.251 INFO    ] Initializing speech engine...
[2026-06-12 16:44:09,264.264 INFO    ] 2026-06-12 16:44:09
[2026-06-12 16:44:09,470.470 INFO    ] 2026-06-12 16:44:09
[2026-06-12 16:44:09,499.499 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 16:44:09,683.683 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 16:44:09,692.692 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 16:44:09,819.819 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 16:44:09,886.886 INFO    ] time= 12/06/2026 16:44:09
[2026-06-12 16:44:09,913.913 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 16:44:09,919.919 INFO    ] Checking for existing commands in stream...
[2026-06-12 16:44:09,987.987 INFO    ] No existing commands found in stream
[2026-06-12 16:44:15,001.001 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 16:44:15,004.004 INFO    ] Waiting 2.09 seconds before fallback handling...
[2026-06-12 16:44:17,459.459 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 16:44:17,461.461 INFO    ] Checking for system updates...
[2026-06-12 16:44:17,481.481 INFO    ] 200
[2026-06-12 16:44:17,483.483 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:44:17,512.512 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 16:44:17,513.513 INFO    ] No update needed
[2026-06-12 16:44:17,515.515 INFO    ] Checking for camera pi updates...
[2026-06-12 16:44:17,534.534 INFO    ] 200
[2026-06-12 16:44:17,535.535 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:44:17,558.558 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 16:44:17,634.634 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 16:44:17,635.635 INFO    ] No camera update needed
[2026-06-12 16:44:17,636.636 INFO    ] Script finished. Safe exiting...
[2026-06-12 16:44:17,638.638 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 16:44:17,641.641 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 16:44:17,644.644 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 16:44:19,682.682 INFO    ] ================================================
[2026-06-12 16:44:19,697.697 INFO    ] Launching Daemon at Fri Jun 12 16:44:19 IST 2026
[2026-06-12 16:44:19,708.708 INFO    ] ================================================
[2026-06-12 16:44:20,048.048 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 16:44:20
[2026-06-12 16:44:20,362.362 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 16:44:20,492.492 INFO    ] Initializing speech engine...
[2026-06-12 16:44:20,500.500 INFO    ] 2026-06-12 16:44:20
[2026-06-12 16:44:20,711.711 INFO    ] 2026-06-12 16:44:20
[2026-06-12 16:44:20,741.741 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 16:44:20,926.926 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 16:44:20,936.936 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 16:44:21,085.085 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 16:44:21,139.139 INFO    ] time= 12/06/2026 16:44:21
[2026-06-12 16:44:21,161.161 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 16:44:21,167.167 INFO    ] Checking for existing commands in stream...
[2026-06-12 16:44:21,234.234 INFO    ] No existing commands found in stream
[2026-06-12 16:44:26,247.247 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 16:44:26,250.250 INFO    ] Waiting 2.89 seconds before fallback handling...
[2026-06-12 16:44:29,550.550 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 16:44:29,551.551 INFO    ] Checking for system updates...
[2026-06-12 16:44:29,572.572 INFO    ] 200
[2026-06-12 16:44:29,574.574 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:44:29,604.604 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 16:44:29,605.605 INFO    ] No update needed
[2026-06-12 16:44:29,606.606 INFO    ] Checking for camera pi updates...
[2026-06-12 16:44:29,626.626 INFO    ] 200
[2026-06-12 16:44:29,627.627 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:44:29,650.650 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 16:44:29,702.702 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 16:44:29,703.703 INFO    ] No camera update needed
[2026-06-12 16:44:29,705.705 INFO    ] Script finished. Safe exiting...
[2026-06-12 16:44:29,706.706 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 16:44:29,709.709 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 16:44:29,712.712 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 16:44:31,752.752 INFO    ] ================================================
[2026-06-12 16:44:31,765.765 INFO    ] Launching Daemon at Fri Jun 12 16:44:31 IST 2026
[2026-06-12 16:44:31,772.772 INFO    ] ================================================
[2026-06-12 16:44:32,100.100 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 16:44:32
[2026-06-12 16:44:32,437.437 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 16:44:32,574.574 INFO    ] Initializing speech engine...
[2026-06-12 16:44:32,585.585 INFO    ] 2026-06-12 16:44:32
[2026-06-12 16:44:32,797.797 INFO    ] 2026-06-12 16:44:32
[2026-06-12 16:44:32,825.825 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 16:44:33,020.020 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 16:44:33,034.034 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 16:44:33,214.214 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 16:44:33,239.239 INFO    ] time= 12/06/2026 16:44:33
[2026-06-12 16:44:33,244.244 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 16:44:33,246.246 INFO    ] Checking for existing commands in stream...
[2026-06-12 16:44:33,313.313 INFO    ] No existing commands found in stream
[2026-06-12 16:44:38,327.327 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 16:44:38,330.330 INFO    ] Waiting 0.37 seconds before fallback handling...
[2026-06-12 16:44:39,083.083 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 16:44:39,084.084 INFO    ] Checking for system updates...
[2026-06-12 16:44:39,104.104 INFO    ] 200
[2026-06-12 16:44:39,106.106 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:44:39,140.140 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 16:44:39,141.141 INFO    ] No update needed
[2026-06-12 16:44:39,142.142 INFO    ] Checking for camera pi updates...
[2026-06-12 16:44:39,162.162 INFO    ] 200
[2026-06-12 16:44:39,163.163 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:44:39,185.185 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 16:44:39,237.237 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 16:44:39,238.238 INFO    ] No camera update needed
[2026-06-12 16:44:39,239.239 INFO    ] Script finished. Safe exiting...
[2026-06-12 16:44:39,241.241 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 16:44:39,244.244 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 16:44:39,246.246 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 16:44:41,285.285 INFO    ] ================================================
[2026-06-12 16:44:41,300.300 INFO    ] Launching Daemon at Fri Jun 12 16:44:41 IST 2026
[2026-06-12 16:44:41,311.311 INFO    ] ================================================
[2026-06-12 16:44:41,669.669 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 16:44:41
[2026-06-12 16:44:42,003.003 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 16:44:42,152.152 INFO    ] Initializing speech engine...
[2026-06-12 16:44:42,158.158 INFO    ] 2026-06-12 16:44:42
[2026-06-12 16:44:42,366.366 INFO    ] 2026-06-12 16:44:42
[2026-06-12 16:44:42,395.395 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 16:44:42,527.527 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 16:44:42,580.580 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 16:44:42,725.725 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 16:44:42,788.788 INFO    ] time= 12/06/2026 16:44:42
[2026-06-12 16:44:42,811.811 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 16:44:42,818.818 INFO    ] Checking for existing commands in stream...
[2026-06-12 16:44:42,884.884 INFO    ] No existing commands found in stream
[2026-06-12 16:44:47,899.899 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 16:44:47,902.902 INFO    ] Waiting 2.20 seconds before fallback handling...
[2026-06-12 16:44:50,511.511 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 16:44:50,512.512 INFO    ] Checking for system updates...
[2026-06-12 16:44:50,533.533 INFO    ] 200
[2026-06-12 16:44:50,534.534 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:44:50,564.564 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 16:44:50,565.565 INFO    ] No update needed
[2026-06-12 16:44:50,567.567 INFO    ] Checking for camera pi updates...
[2026-06-12 16:44:50,586.586 INFO    ] 200
[2026-06-12 16:44:50,587.587 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:44:50,610.610 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 16:44:50,750.750 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 16:44:50,752.752 INFO    ] No camera update needed
[2026-06-12 16:44:50,753.753 INFO    ] Script finished. Safe exiting...
[2026-06-12 16:44:50,754.754 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 16:44:50,757.757 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 16:44:50,760.760 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 16:44:52,800.800 INFO    ] ================================================
[2026-06-12 16:44:52,815.815 INFO    ] Launching Daemon at Fri Jun 12 16:44:52 IST 2026
[2026-06-12 16:44:52,827.827 INFO    ] ================================================
[2026-06-12 16:44:53,171.171 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 16:44:53
[2026-06-12 16:44:53,482.482 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 16:44:53,625.625 INFO    ] Initializing speech engine...
[2026-06-12 16:44:53,631.631 INFO    ] 2026-06-12 16:44:53
[2026-06-12 16:44:53,834.834 INFO    ] 2026-06-12 16:44:53
[2026-06-12 16:44:53,862.862 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 16:44:54,048.048 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 16:44:54,056.056 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 16:44:54,202.202 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 16:44:54,256.256 INFO    ] time= 12/06/2026 16:44:54
[2026-06-12 16:44:54,279.279 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 16:44:54,285.285 INFO    ] Checking for existing commands in stream...
[2026-06-12 16:44:54,352.352 INFO    ] No existing commands found in stream
[2026-06-12 16:44:59,366.366 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 16:44:59,369.369 INFO    ] Waiting 0.38 seconds before fallback handling...
[2026-06-12 16:45:00,172.172 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 16:45:00,173.173 INFO    ] Checking for system updates...
[2026-06-12 16:45:00,194.194 INFO    ] 200
[2026-06-12 16:45:00,195.195 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:45:00,227.227 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 16:45:00,229.229 INFO    ] No update needed
[2026-06-12 16:45:00,230.230 INFO    ] Checking for camera pi updates...
[2026-06-12 16:45:00,251.251 INFO    ] 200
[2026-06-12 16:45:00,252.252 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:45:00,275.275 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 16:45:00,332.332 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 16:45:00,333.333 INFO    ] No camera update needed
[2026-06-12 16:45:00,335.335 INFO    ] Script finished. Safe exiting...
[2026-06-12 16:45:00,336.336 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 16:45:00,339.339 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 16:45:00,342.342 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 16:45:02,376.376 INFO    ] ================================================
[2026-06-12 16:45:02,387.387 INFO    ] Launching Daemon at Fri Jun 12 16:45:02 IST 2026
[2026-06-12 16:45:02,395.395 INFO    ] ================================================
[2026-06-12 16:45:02,750.750 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 16:45:02
[2026-06-12 16:45:03,112.112 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 16:45:03,247.247 INFO    ] Initializing speech engine...
[2026-06-12 16:45:03,255.255 INFO    ] 2026-06-12 16:45:03
[2026-06-12 16:45:03,465.465 INFO    ] 2026-06-12 16:45:03
[2026-06-12 16:45:03,495.495 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 16:45:03,677.677 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 16:45:03,680.680 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 16:45:03,811.811 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 16:45:03,874.874 INFO    ] time= 12/06/2026 16:45:03
[2026-06-12 16:45:03,905.905 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 16:45:03,911.911 INFO    ] Checking for existing commands in stream...
[2026-06-12 16:45:03,978.978 INFO    ] No existing commands found in stream
[2026-06-12 16:45:08,997.997 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 16:45:09,000.000 INFO    ] Waiting 3.02 seconds before fallback handling...
[2026-06-12 16:45:12,352.352 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 16:45:12,354.354 INFO    ] Checking for system updates...
[2026-06-12 16:45:12,398.398 INFO    ] 200
[2026-06-12 16:45:12,400.400 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:45:12,432.432 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 16:45:12,433.433 INFO    ] No update needed
[2026-06-12 16:45:12,435.435 INFO    ] Checking for camera pi updates...
[2026-06-12 16:45:12,455.455 INFO    ] 200
[2026-06-12 16:45:12,456.456 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:45:12,480.480 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 16:45:12,531.531 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 16:45:12,533.533 INFO    ] No camera update needed
[2026-06-12 16:45:12,534.534 INFO    ] Script finished. Safe exiting...
[2026-06-12 16:45:12,535.535 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 16:45:12,538.538 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 16:45:12,541.541 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 16:45:14,580.580 INFO    ] ================================================
[2026-06-12 16:45:14,595.595 INFO    ] Launching Daemon at Fri Jun 12 16:45:14 IST 2026
[2026-06-12 16:45:14,606.606 INFO    ] ================================================
[2026-06-12 16:45:14,960.960 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 16:45:14
[2026-06-12 16:45:15,290.290 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 16:45:15,432.432 INFO    ] Initializing speech engine...
[2026-06-12 16:45:15,442.442 INFO    ] 2026-06-12 16:45:15
[2026-06-12 16:45:15,649.649 INFO    ] 2026-06-12 16:45:15
[2026-06-12 16:45:15,678.678 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 16:45:15,862.862 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 16:45:15,871.871 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 16:45:16,002.002 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 16:45:16,069.069 INFO    ] time= 12/06/2026 16:45:16
[2026-06-12 16:45:16,093.093 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 16:45:16,100.100 INFO    ] Checking for existing commands in stream...
[2026-06-12 16:45:16,166.166 INFO    ] No existing commands found in stream
[2026-06-12 16:45:21,199.199 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 16:45:21,202.202 INFO    ] Waiting 2.41 seconds before fallback handling...
[2026-06-12 16:45:23,991.991 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 16:45:23,992.992 INFO    ] Checking for system updates...
[2026-06-12 16:45:24,013.013 INFO    ] 200
[2026-06-12 16:45:24,014.014 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:45:24,046.046 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 16:45:24,048.048 INFO    ] No update needed
[2026-06-12 16:45:24,049.049 INFO    ] Checking for camera pi updates...
[2026-06-12 16:45:24,068.068 INFO    ] 200
[2026-06-12 16:45:24,069.069 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:45:24,092.092 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 16:45:24,136.136 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 16:45:24,137.137 INFO    ] No camera update needed
[2026-06-12 16:45:24,138.138 INFO    ] Script finished. Safe exiting...
[2026-06-12 16:45:24,140.140 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 16:45:24,143.143 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 16:45:24,145.145 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 16:45:26,183.183 INFO    ] ================================================
[2026-06-12 16:45:26,198.198 INFO    ] Launching Daemon at Fri Jun 12 16:45:26 IST 2026
[2026-06-12 16:45:26,209.209 INFO    ] ================================================
[2026-06-12 16:45:26,545.545 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 16:45:26
[2026-06-12 16:45:26,862.862 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 16:45:27,006.006 INFO    ] Initializing speech engine...
[2026-06-12 16:45:27,011.011 INFO    ] 2026-06-12 16:45:27
[2026-06-12 16:45:27,215.215 INFO    ] 2026-06-12 16:45:27
[2026-06-12 16:45:27,244.244 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 16:45:27,386.386 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 16:45:27,428.428 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 16:45:27,565.565 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 16:45:27,629.629 INFO    ] time= 12/06/2026 16:45:27
[2026-06-12 16:45:27,656.656 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 16:45:27,662.662 INFO    ] Checking for existing commands in stream...
[2026-06-12 16:45:27,728.728 INFO    ] No existing commands found in stream
[2026-06-12 16:45:32,736.736 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 16:45:32,738.738 INFO    ] Waiting 3.92 seconds before fallback handling...
[2026-06-12 16:45:37,050.050 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 16:45:37,051.051 INFO    ] Checking for system updates...
[2026-06-12 16:45:37,072.072 INFO    ] 200
[2026-06-12 16:45:37,074.074 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:45:37,105.105 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 16:45:37,106.106 INFO    ] No update needed
[2026-06-12 16:45:37,108.108 INFO    ] Checking for camera pi updates...
[2026-06-12 16:45:37,127.127 INFO    ] 200
[2026-06-12 16:45:37,128.128 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:45:37,153.153 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 16:45:37,209.209 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 16:45:37,211.211 INFO    ] No camera update needed
[2026-06-12 16:45:37,212.212 INFO    ] Script finished. Safe exiting...
[2026-06-12 16:45:37,213.213 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 16:45:37,216.216 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 16:45:37,219.219 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 16:45:39,258.258 INFO    ] ================================================
[2026-06-12 16:45:39,274.274 INFO    ] Launching Daemon at Fri Jun 12 16:45:39 IST 2026
[2026-06-12 16:45:39,285.285 INFO    ] ================================================
[2026-06-12 16:45:39,652.652 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 16:45:39
[2026-06-12 16:45:39,983.983 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 16:45:40,127.127 INFO    ] Initializing speech engine...
[2026-06-12 16:45:40,138.138 INFO    ] 2026-06-12 16:45:40
[2026-06-12 16:45:40,348.348 INFO    ] 2026-06-12 16:45:40
[2026-06-12 16:45:40,376.376 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 16:45:40,564.564 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 16:45:40,573.573 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 16:45:40,715.715 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 16:45:40,774.774 INFO    ] time= 12/06/2026 16:45:40
[2026-06-12 16:45:40,798.798 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 16:45:40,804.804 INFO    ] Checking for existing commands in stream...
[2026-06-12 16:45:40,872.872 INFO    ] No existing commands found in stream
[2026-06-12 16:45:45,886.886 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 16:45:45,889.889 INFO    ] Waiting 1.02 seconds before fallback handling...
[2026-06-12 16:45:47,318.318 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 16:45:47,320.320 INFO    ] Checking for system updates...
[2026-06-12 16:45:47,341.341 INFO    ] 200
[2026-06-12 16:45:47,342.342 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:45:47,372.372 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 16:45:47,374.374 INFO    ] No update needed
[2026-06-12 16:45:47,375.375 INFO    ] Checking for camera pi updates...
[2026-06-12 16:45:47,395.395 INFO    ] 200
[2026-06-12 16:45:47,396.396 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:45:47,419.419 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 16:45:47,463.463 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 16:45:47,465.465 INFO    ] No camera update needed
[2026-06-12 16:45:47,466.466 INFO    ] Script finished. Safe exiting...
[2026-06-12 16:45:47,467.467 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 16:45:47,471.471 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 16:45:47,474.474 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 16:45:49,511.511 INFO    ] ================================================
[2026-06-12 16:45:49,528.528 INFO    ] Launching Daemon at Fri Jun 12 16:45:49 IST 2026
[2026-06-12 16:45:49,539.539 INFO    ] ================================================
[2026-06-12 16:45:49,902.902 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 16:45:49
[2026-06-12 16:45:50,231.231 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 16:45:50,379.379 INFO    ] Initializing speech engine...
[2026-06-12 16:45:50,384.384 INFO    ] 2026-06-12 16:45:50
[2026-06-12 16:45:50,590.590 INFO    ] 2026-06-12 16:45:50
[2026-06-12 16:45:50,619.619 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 16:45:50,801.801 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 16:45:50,814.814 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 16:45:50,992.992 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 16:45:51,028.028 INFO    ] time= 12/06/2026 16:45:51
[2026-06-12 16:45:51,031.031 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 16:45:51,037.037 INFO    ] Checking for existing commands in stream...
[2026-06-12 16:45:51,103.103 INFO    ] No existing commands found in stream
[2026-06-12 16:45:56,128.128 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 16:45:56,136.136 INFO    ] Waiting 3.97 seconds before fallback handling...
[2026-06-12 16:46:00,492.492 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 16:46:00,494.494 INFO    ] Checking for system updates...
[2026-06-12 16:46:00,514.514 INFO    ] 200
[2026-06-12 16:46:00,516.516 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:46:00,546.546 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 16:46:00,548.548 INFO    ] No update needed
[2026-06-12 16:46:00,549.549 INFO    ] Checking for camera pi updates...
[2026-06-12 16:46:00,569.569 INFO    ] 200
[2026-06-12 16:46:00,570.570 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:46:00,593.593 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 16:46:00,638.638 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 16:46:00,640.640 INFO    ] No camera update needed
[2026-06-12 16:46:00,641.641 INFO    ] Script finished. Safe exiting...
[2026-06-12 16:46:00,642.642 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 16:46:00,645.645 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 16:46:00,648.648 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 16:46:02,674.674 INFO    ] ================================================
[2026-06-12 16:46:02,683.683 INFO    ] Launching Daemon at Fri Jun 12 16:46:02 IST 2026
[2026-06-12 16:46:02,689.689 INFO    ] ================================================
[2026-06-12 16:46:03,068.068 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 16:46:03
[2026-06-12 16:46:03,389.389 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 16:46:03,531.531 INFO    ] Initializing speech engine...
[2026-06-12 16:46:03,536.536 INFO    ] 2026-06-12 16:46:03
[2026-06-12 16:46:03,737.737 INFO    ] 2026-06-12 16:46:03
[2026-06-12 16:46:03,766.766 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 16:46:03,947.947 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 16:46:03,957.957 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 16:46:04,094.094 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 16:46:04,153.153 INFO    ] time= 12/06/2026 16:46:04
[2026-06-12 16:46:04,187.187 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 16:46:04,193.193 INFO    ] Checking for existing commands in stream...
[2026-06-12 16:46:04,267.267 INFO    ] No existing commands found in stream
[2026-06-12 16:46:09,278.278 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 16:46:09,281.281 INFO    ] Waiting 2.36 seconds before fallback handling...
[2026-06-12 16:46:12,022.022 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 16:46:12,023.023 INFO    ] Checking for system updates...
[2026-06-12 16:46:12,043.043 INFO    ] 200
[2026-06-12 16:46:12,044.044 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:46:12,075.075 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 16:46:12,076.076 INFO    ] No update needed
[2026-06-12 16:46:12,077.077 INFO    ] Checking for camera pi updates...
[2026-06-12 16:46:12,096.096 INFO    ] 200
[2026-06-12 16:46:12,098.098 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:46:12,121.121 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 16:46:12,156.156 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 16:46:12,158.158 INFO    ] No camera update needed
[2026-06-12 16:46:12,159.159 INFO    ] Script finished. Safe exiting...
[2026-06-12 16:46:12,160.160 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 16:46:12,163.163 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 16:46:12,166.166 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 16:46:14,205.205 INFO    ] ================================================
[2026-06-12 16:46:14,221.221 INFO    ] Launching Daemon at Fri Jun 12 16:46:14 IST 2026
[2026-06-12 16:46:14,232.232 INFO    ] ================================================
[2026-06-12 16:46:14,566.566 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 16:46:14
[2026-06-12 16:46:14,890.890 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 16:46:15,024.024 INFO    ] Initializing speech engine...
[2026-06-12 16:46:15,033.033 INFO    ] 2026-06-12 16:46:15
[2026-06-12 16:46:15,257.257 INFO    ] 2026-06-12 16:46:15
[2026-06-12 16:46:15,287.287 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 16:46:15,484.484 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 16:46:15,494.494 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 16:46:15,636.636 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 16:46:15,702.702 INFO    ] time= 12/06/2026 16:46:15
[2026-06-12 16:46:15,727.727 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 16:46:15,733.733 INFO    ] Checking for existing commands in stream...
[2026-06-12 16:46:15,828.828 INFO    ] No existing commands found in stream
[2026-06-12 16:46:20,838.838 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 16:46:20,841.841 INFO    ] Waiting 0.01 seconds before fallback handling...
[2026-06-12 16:46:21,248.248 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 16:46:21,250.250 INFO    ] Checking for system updates...
[2026-06-12 16:46:21,271.271 INFO    ] 200
[2026-06-12 16:46:21,272.272 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:46:21,303.303 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 16:46:21,304.304 INFO    ] No update needed
[2026-06-12 16:46:21,306.306 INFO    ] Checking for camera pi updates...
[2026-06-12 16:46:21,325.325 INFO    ] 200
[2026-06-12 16:46:21,326.326 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:46:21,349.349 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 16:46:21,392.392 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 16:46:21,394.394 INFO    ] No camera update needed
[2026-06-12 16:46:21,395.395 INFO    ] Script finished. Safe exiting...
[2026-06-12 16:46:21,397.397 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 16:46:21,400.400 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 16:46:21,403.403 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 16:46:23,447.447 INFO    ] ================================================
[2026-06-12 16:46:23,462.462 INFO    ] Launching Daemon at Fri Jun 12 16:46:23 IST 2026
[2026-06-12 16:46:23,474.474 INFO    ] ================================================
[2026-06-12 16:46:23,814.814 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 16:46:23
[2026-06-12 16:46:24,124.124 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 16:46:24,257.257 INFO    ] Initializing speech engine...
[2026-06-12 16:46:24,265.265 INFO    ] 2026-06-12 16:46:24
[2026-06-12 16:46:24,488.488 INFO    ] 2026-06-12 16:46:24
[2026-06-12 16:46:24,518.518 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 16:46:24,712.712 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 16:46:24,716.716 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 16:46:24,857.857 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 16:46:24,915.915 INFO    ] time= 12/06/2026 16:46:24
[2026-06-12 16:46:24,948.948 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 16:46:24,960.960 INFO    ] Checking for existing commands in stream...
[2026-06-12 16:46:25,035.035 INFO    ] No existing commands found in stream
[2026-06-12 16:46:30,049.049 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 16:46:30,052.052 INFO    ] Waiting 3.82 seconds before fallback handling...
[2026-06-12 16:46:34,273.273 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 16:46:34,275.275 INFO    ] Checking for system updates...
[2026-06-12 16:46:34,296.296 INFO    ] 200
[2026-06-12 16:46:34,297.297 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:46:34,327.327 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 16:46:34,328.328 INFO    ] No update needed
[2026-06-12 16:46:34,330.330 INFO    ] Checking for camera pi updates...
[2026-06-12 16:46:34,349.349 INFO    ] 200
[2026-06-12 16:46:34,350.350 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:46:34,375.375 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 16:46:34,421.421 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 16:46:34,423.423 INFO    ] No camera update needed
[2026-06-12 16:46:34,424.424 INFO    ] Script finished. Safe exiting...
[2026-06-12 16:46:34,425.425 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 16:46:34,428.428 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 16:46:34,431.431 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 16:46:36,468.468 INFO    ] ================================================
[2026-06-12 16:46:36,484.484 INFO    ] Launching Daemon at Fri Jun 12 16:46:36 IST 2026
[2026-06-12 16:46:36,496.496 INFO    ] ================================================
[2026-06-12 16:46:36,866.866 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 16:46:36
[2026-06-12 16:46:37,179.179 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 16:46:37,321.321 INFO    ] Initializing speech engine...
[2026-06-12 16:46:37,326.326 INFO    ] 2026-06-12 16:46:37
[2026-06-12 16:46:37,528.528 INFO    ] 2026-06-12 16:46:37
[2026-06-12 16:46:37,558.558 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 16:46:37,741.741 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 16:46:37,749.749 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 16:46:37,899.899 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 16:46:37,947.947 INFO    ] time= 12/06/2026 16:46:37
[2026-06-12 16:46:37,969.969 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 16:46:37,976.976 INFO    ] Checking for existing commands in stream...
[2026-06-12 16:46:38,066.066 INFO    ] No existing commands found in stream
[2026-06-12 16:46:43,075.075 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 16:46:43,078.078 INFO    ] Waiting 4.00 seconds before fallback handling...
[2026-06-12 16:46:48,724.724 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 16:46:48,726.726 INFO    ] Checking for system updates...
[2026-06-12 16:46:48,762.762 INFO    ] 200
[2026-06-12 16:46:48,765.765 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:46:48,816.816 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 16:46:48,817.817 INFO    ] No update needed
[2026-06-12 16:46:48,818.818 INFO    ] Checking for camera pi updates...
[2026-06-12 16:46:48,837.837 INFO    ] 200
[2026-06-12 16:46:48,838.838 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:46:48,861.861 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 16:46:48,903.903 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 16:46:48,904.904 INFO    ] No camera update needed
[2026-06-12 16:46:48,906.906 INFO    ] Script finished. Safe exiting...
[2026-06-12 16:46:48,907.907 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 16:46:48,910.910 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 16:46:48,913.913 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 16:46:50,952.952 INFO    ] ================================================
[2026-06-12 16:46:50,968.968 INFO    ] Launching Daemon at Fri Jun 12 16:46:50 IST 2026
[2026-06-12 16:46:50,979.979 INFO    ] ================================================
[2026-06-12 16:46:51,353.353 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 16:46:51
[2026-06-12 16:46:51,670.670 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 16:46:51,807.807 INFO    ] Initializing speech engine...
[2026-06-12 16:46:51,820.820 INFO    ] 2026-06-12 16:46:51
[2026-06-12 16:46:52,038.038 INFO    ] 2026-06-12 16:46:52
[2026-06-12 16:46:52,070.070 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 16:46:52,264.264 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 16:46:52,268.268 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 16:46:52,406.406 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 16:46:52,462.462 INFO    ] time= 12/06/2026 16:46:52
[2026-06-12 16:46:52,491.491 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 16:46:52,513.513 INFO    ] Checking for existing commands in stream...
[2026-06-12 16:46:52,615.615 INFO    ] No existing commands found in stream
[2026-06-12 16:46:57,624.624 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 16:46:57,627.627 INFO    ] Waiting 1.19 seconds before fallback handling...
[2026-06-12 16:46:59,194.194 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 16:46:59,196.196 INFO    ] Checking for system updates...
[2026-06-12 16:46:59,218.218 INFO    ] 200
[2026-06-12 16:46:59,219.219 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:46:59,248.248 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 16:46:59,250.250 INFO    ] No update needed
[2026-06-12 16:46:59,251.251 INFO    ] Checking for camera pi updates...
[2026-06-12 16:46:59,270.270 INFO    ] 200
[2026-06-12 16:46:59,272.272 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:46:59,295.295 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 16:46:59,441.441 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 16:46:59,443.443 INFO    ] No camera update needed
[2026-06-12 16:46:59,444.444 INFO    ] Script finished. Safe exiting...
[2026-06-12 16:46:59,445.445 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 16:46:59,448.448 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 16:46:59,451.451 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 16:47:01,509.509 INFO    ] ================================================
[2026-06-12 16:47:01,556.556 INFO    ] Launching Daemon at Fri Jun 12 16:47:01 IST 2026
[2026-06-12 16:47:01,570.570 INFO    ] ================================================
[2026-06-12 16:47:01,965.965 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 16:47:01
[2026-06-12 16:47:02,341.341 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 16:47:02,517.517 INFO    ] Initializing speech engine...
[2026-06-12 16:47:02,524.524 INFO    ] 2026-06-12 16:47:02
[2026-06-12 16:47:02,745.745 INFO    ] 2026-06-12 16:47:02
[2026-06-12 16:47:02,773.773 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 16:47:02,898.898 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 16:47:02,961.961 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 16:47:03,101.101 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 16:47:03,168.168 INFO    ] time= 12/06/2026 16:47:03
[2026-06-12 16:47:03,193.193 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 16:47:03,199.199 INFO    ] Checking for existing commands in stream...
[2026-06-12 16:47:03,267.267 INFO    ] No existing commands found in stream
[2026-06-12 16:47:08,277.277 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 16:47:08,280.280 INFO    ] Waiting 2.03 seconds before fallback handling...
[2026-06-12 16:47:10,726.726 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 16:47:10,727.727 INFO    ] Checking for system updates...
[2026-06-12 16:47:10,749.749 INFO    ] 200
[2026-06-12 16:47:10,751.751 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:47:10,781.781 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 16:47:10,782.782 INFO    ] No update needed
[2026-06-12 16:47:10,784.784 INFO    ] Checking for camera pi updates...
[2026-06-12 16:47:10,803.803 INFO    ] 200
[2026-06-12 16:47:10,804.804 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:47:10,827.827 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 16:47:10,878.878 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 16:47:10,879.879 INFO    ] No camera update needed
[2026-06-12 16:47:10,881.881 INFO    ] Script finished. Safe exiting...
[2026-06-12 16:47:10,882.882 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 16:47:10,885.885 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 16:47:10,888.888 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 16:47:12,927.927 INFO    ] ================================================
[2026-06-12 16:47:12,943.943 INFO    ] Launching Daemon at Fri Jun 12 16:47:12 IST 2026
[2026-06-12 16:47:12,954.954 INFO    ] ================================================
[2026-06-12 16:47:13,285.285 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 16:47:13
[2026-06-12 16:47:13,602.602 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 16:47:13,735.735 INFO    ] Initializing speech engine...
[2026-06-12 16:47:13,749.749 INFO    ] 2026-06-12 16:47:13
[2026-06-12 16:47:13,955.955 INFO    ] 2026-06-12 16:47:13
[2026-06-12 16:47:13,983.983 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 16:47:14,151.151 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 16:47:14,169.169 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 16:47:14,325.325 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 16:47:14,374.374 INFO    ] time= 12/06/2026 16:47:14
[2026-06-12 16:47:14,395.395 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 16:47:14,401.401 INFO    ] Checking for existing commands in stream...
[2026-06-12 16:47:14,467.467 INFO    ] No existing commands found in stream
[2026-06-12 16:47:19,476.476 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 16:47:19,479.479 INFO    ] Waiting 1.31 seconds before fallback handling...
[2026-06-12 16:47:21,168.168 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 16:47:21,170.170 INFO    ] Checking for system updates...
[2026-06-12 16:47:21,191.191 INFO    ] 200
[2026-06-12 16:47:21,192.192 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:47:21,222.222 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 16:47:21,223.223 INFO    ] No update needed
[2026-06-12 16:47:21,224.224 INFO    ] Checking for camera pi updates...
[2026-06-12 16:47:21,243.243 INFO    ] 200
[2026-06-12 16:47:21,245.245 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:47:21,269.269 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 16:47:21,299.299 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 16:47:21,300.300 INFO    ] No camera update needed
[2026-06-12 16:47:21,302.302 INFO    ] Script finished. Safe exiting...
[2026-06-12 16:47:21,303.303 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 16:47:21,306.306 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 16:47:21,309.309 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 16:47:23,347.347 INFO    ] ================================================
[2026-06-12 16:47:23,363.363 INFO    ] Launching Daemon at Fri Jun 12 16:47:23 IST 2026
[2026-06-12 16:47:23,375.375 INFO    ] ================================================
[2026-06-12 16:47:23,745.745 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 16:47:23
[2026-06-12 16:47:24,062.062 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 16:47:24,194.194 INFO    ] Initializing speech engine...
[2026-06-12 16:47:24,208.208 INFO    ] 2026-06-12 16:47:24
[2026-06-12 16:47:24,412.412 INFO    ] 2026-06-12 16:47:24
[2026-06-12 16:47:24,440.440 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 16:47:24,624.624 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 16:47:24,634.634 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 16:47:24,776.776 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 16:47:24,828.828 INFO    ] time= 12/06/2026 16:47:24
[2026-06-12 16:47:24,851.851 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 16:47:24,857.857 INFO    ] Checking for existing commands in stream...
[2026-06-12 16:47:24,923.923 INFO    ] No existing commands found in stream
[2026-06-12 16:47:29,937.937 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 16:47:29,940.940 INFO    ] Waiting 3.48 seconds before fallback handling...
[2026-06-12 16:47:33,797.797 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 16:47:33,798.798 INFO    ] Checking for system updates...
[2026-06-12 16:47:33,819.819 INFO    ] 200
[2026-06-12 16:47:33,820.820 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:47:33,850.850 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 16:47:33,851.851 INFO    ] No update needed
[2026-06-12 16:47:33,853.853 INFO    ] Checking for camera pi updates...
[2026-06-12 16:47:33,872.872 INFO    ] 200
[2026-06-12 16:47:33,873.873 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:47:33,896.896 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 16:47:33,951.951 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 16:47:33,953.953 INFO    ] No camera update needed
[2026-06-12 16:47:33,954.954 INFO    ] Script finished. Safe exiting...
[2026-06-12 16:47:33,955.955 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 16:47:33,958.958 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 16:47:33,961.961 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 16:47:36,999.999 INFO    ] ================================================
[2026-06-12 16:47:36,014.014 INFO    ] Launching Daemon at Fri Jun 12 16:47:36 IST 2026
[2026-06-12 16:47:36,025.025 INFO    ] ================================================
[2026-06-12 16:47:36,388.388 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 16:47:36
[2026-06-12 16:47:36,703.703 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 16:47:36,831.831 INFO    ] Initializing speech engine...
[2026-06-12 16:47:36,836.836 INFO    ] 2026-06-12 16:47:36
[2026-06-12 16:47:37,053.053 INFO    ] 2026-06-12 16:47:37
[2026-06-12 16:47:37,083.083 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 16:47:37,268.268 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 16:47:37,277.277 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 16:47:37,428.428 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 16:47:37,476.476 INFO    ] time= 12/06/2026 16:47:37
[2026-06-12 16:47:37,499.499 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 16:47:37,505.505 INFO    ] Checking for existing commands in stream...
[2026-06-12 16:47:37,573.573 INFO    ] No existing commands found in stream
[2026-06-12 16:47:42,587.587 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 16:47:42,589.589 INFO    ] Waiting 2.72 seconds before fallback handling...
[2026-06-12 16:47:45,744.744 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 16:47:45,746.746 INFO    ] Checking for system updates...
[2026-06-12 16:47:45,767.767 INFO    ] 200
[2026-06-12 16:47:45,769.769 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:47:45,801.801 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 16:47:45,803.803 INFO    ] No update needed
[2026-06-12 16:47:45,804.804 INFO    ] Checking for camera pi updates...
[2026-06-12 16:47:45,823.823 INFO    ] 200
[2026-06-12 16:47:45,825.825 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:47:45,848.848 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 16:47:45,892.892 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 16:47:45,894.894 INFO    ] No camera update needed
[2026-06-12 16:47:45,895.895 INFO    ] Script finished. Safe exiting...
[2026-06-12 16:47:45,897.897 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 16:47:45,900.900 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 16:47:45,903.903 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 16:47:47,941.941 INFO    ] ================================================
[2026-06-12 16:47:47,956.956 INFO    ] Launching Daemon at Fri Jun 12 16:47:47 IST 2026
[2026-06-12 16:47:47,967.967 INFO    ] ================================================
[2026-06-12 16:47:48,298.298 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 16:47:48
[2026-06-12 16:47:48,616.616 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 16:47:48,760.760 INFO    ] Initializing speech engine...
[2026-06-12 16:47:48,764.764 INFO    ] 2026-06-12 16:47:48
[2026-06-12 16:47:48,969.969 INFO    ] 2026-06-12 16:47:48
[2026-06-12 16:47:48,997.997 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 16:47:49,181.181 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 16:47:49,190.190 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 16:47:49,340.340 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 16:47:49,387.387 INFO    ] time= 12/06/2026 16:47:49
[2026-06-12 16:47:49,410.410 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 16:47:49,416.416 INFO    ] Checking for existing commands in stream...
[2026-06-12 16:47:49,481.481 INFO    ] No existing commands found in stream
[2026-06-12 16:47:54,491.491 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 16:47:54,494.494 INFO    ] Waiting 3.53 seconds before fallback handling...
[2026-06-12 16:47:58,410.410 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 16:47:58,412.412 INFO    ] Checking for system updates...
[2026-06-12 16:47:58,432.432 INFO    ] 200
[2026-06-12 16:47:58,433.433 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:47:58,463.463 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 16:47:58,464.464 INFO    ] No update needed
[2026-06-12 16:47:58,465.465 INFO    ] Checking for camera pi updates...
[2026-06-12 16:47:58,485.485 INFO    ] 200
[2026-06-12 16:47:58,487.487 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:47:58,511.511 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 16:47:58,552.552 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 16:47:58,554.554 INFO    ] No camera update needed
[2026-06-12 16:47:58,555.555 INFO    ] Script finished. Safe exiting...
[2026-06-12 16:47:58,556.556 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 16:47:58,559.559 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 16:47:58,562.562 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 16:48:00,600.600 INFO    ] ================================================
[2026-06-12 16:48:00,617.617 INFO    ] Launching Daemon at Fri Jun 12 16:48:00 IST 2026
[2026-06-12 16:48:00,628.628 INFO    ] ================================================
[2026-06-12 16:48:00,985.985 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 16:48:00
[2026-06-12 16:48:01,301.301 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 16:48:01,439.439 INFO    ] Initializing speech engine...
[2026-06-12 16:48:01,449.449 INFO    ] 2026-06-12 16:48:01
[2026-06-12 16:48:01,653.653 INFO    ] 2026-06-12 16:48:01
[2026-06-12 16:48:01,681.681 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 16:48:01,891.891 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 16:48:01,910.910 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 16:48:02,065.065 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 16:48:02,068.068 INFO    ] time= 12/06/2026 16:48:02
[2026-06-12 16:48:02,070.070 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 16:48:02,072.072 INFO    ] Checking for existing commands in stream...
[2026-06-12 16:48:02,200.200 INFO    ] No existing commands found in stream
[2026-06-12 16:48:07,211.211 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 16:48:07,213.213 INFO    ] Waiting 3.15 seconds before fallback handling...
[2026-06-12 16:48:10,742.742 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 16:48:10,743.743 INFO    ] Checking for system updates...
[2026-06-12 16:48:10,764.764 INFO    ] 200
[2026-06-12 16:48:10,766.766 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:48:10,796.796 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 16:48:10,797.797 INFO    ] No update needed
[2026-06-12 16:48:10,798.798 INFO    ] Checking for camera pi updates...
[2026-06-12 16:48:10,820.820 INFO    ] 200
[2026-06-12 16:48:10,821.821 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:48:10,846.846 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 16:48:10,892.892 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 16:48:10,893.893 INFO    ] No camera update needed
[2026-06-12 16:48:10,894.894 INFO    ] Script finished. Safe exiting...
[2026-06-12 16:48:10,895.895 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 16:48:10,898.898 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 16:48:10,901.901 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 16:48:12,939.939 INFO    ] ================================================
[2026-06-12 16:48:12,955.955 INFO    ] Launching Daemon at Fri Jun 12 16:48:12 IST 2026
[2026-06-12 16:48:12,966.966 INFO    ] ================================================
[2026-06-12 16:48:13,315.315 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 16:48:13
[2026-06-12 16:48:13,626.626 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 16:48:13,759.759 INFO    ] Initializing speech engine...
[2026-06-12 16:48:13,763.763 INFO    ] 2026-06-12 16:48:13
[2026-06-12 16:48:13,954.954 INFO    ] 2026-06-12 16:48:13
[2026-06-12 16:48:13,998.998 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 16:48:14,154.154 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 16:48:14,172.172 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 16:48:14,344.344 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 16:48:14,368.368 INFO    ] time= 12/06/2026 16:48:14
[2026-06-12 16:48:14,424.424 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 16:48:14,463.463 INFO    ] Checking for existing commands in stream...
[2026-06-12 16:48:14,547.547 INFO    ] No existing commands found in stream
[2026-06-12 16:48:19,558.558 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 16:48:19,561.561 INFO    ] Waiting 2.17 seconds before fallback handling...
[2026-06-12 16:48:22,065.065 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 16:48:22,067.067 INFO    ] Checking for system updates...
[2026-06-12 16:48:22,090.090 INFO    ] 200
[2026-06-12 16:48:22,092.092 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_HEALTH_CHECK"}
[2026-06-12 16:48:22,094.094 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping update check
[2026-06-12 16:48:22,095.095 INFO    ] Checking for camera pi updates...
[2026-06-12 16:48:22,121.121 INFO    ] 200
[2026-06-12 16:48:22,122.122 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_HEALTH_CHECK"}
[2026-06-12 16:48:22,124.124 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping camera update check
[2026-06-12 16:48:22,125.125 INFO    ] Script finished. Safe exiting...
[2026-06-12 16:48:22,126.126 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 16:48:22,130.130 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 16:48:22,134.134 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 16:48:24,165.165 INFO    ] ================================================
[2026-06-12 16:48:24,181.181 INFO    ] Launching Daemon at Fri Jun 12 16:48:24 IST 2026
[2026-06-12 16:48:24,192.192 INFO    ] ================================================
[2026-06-12 16:48:24,552.552 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 16:48:24
[2026-06-12 16:48:24,872.872 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 16:48:25,016.016 INFO    ] Initializing speech engine...
[2026-06-12 16:48:25,022.022 INFO    ] 2026-06-12 16:48:25
[2026-06-12 16:48:25,227.227 INFO    ] 2026-06-12 16:48:25
[2026-06-12 16:48:25,256.256 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 16:48:25,439.439 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 16:48:25,448.448 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 16:48:25,603.603 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 16:48:25,646.646 INFO    ] time= 12/06/2026 16:48:25
[2026-06-12 16:48:25,669.669 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 16:48:25,675.675 INFO    ] Checking for existing commands in stream...
[2026-06-12 16:48:25,741.741 INFO    ] No existing commands found in stream
[2026-06-12 16:48:30,755.755 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 16:48:30,758.758 INFO    ] Waiting 0.99 seconds before fallback handling...
[2026-06-12 16:48:32,140.140 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 16:48:32,141.141 INFO    ] Checking for system updates...
[2026-06-12 16:48:32,164.164 INFO    ] 200
[2026-06-12 16:48:32,166.166 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:48:32,200.200 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 16:48:32,202.202 INFO    ] No update needed
[2026-06-12 16:48:32,204.204 INFO    ] Checking for camera pi updates...
[2026-06-12 16:48:32,226.226 INFO    ] 200
[2026-06-12 16:48:32,228.228 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:48:32,259.259 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 16:48:32,291.291 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 16:48:32,293.293 INFO    ] No camera update needed
[2026-06-12 16:48:32,294.294 INFO    ] Script finished. Safe exiting...
[2026-06-12 16:48:32,296.296 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 16:48:32,300.300 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 16:48:32,303.303 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 16:48:34,344.344 INFO    ] ================================================
[2026-06-12 16:48:34,359.359 INFO    ] Launching Daemon at Fri Jun 12 16:48:34 IST 2026
[2026-06-12 16:48:34,370.370 INFO    ] ================================================
[2026-06-12 16:48:34,732.732 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 16:48:34
[2026-06-12 16:48:35,047.047 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 16:48:35,186.186 INFO    ] Initializing speech engine...
[2026-06-12 16:48:35,196.196 INFO    ] 2026-06-12 16:48:35
[2026-06-12 16:48:35,402.402 INFO    ] 2026-06-12 16:48:35
[2026-06-12 16:48:35,430.430 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 16:48:35,586.586 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 16:48:35,587.587 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 16:48:35,749.749 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 16:48:35,781.781 INFO    ] time= 12/06/2026 16:48:35
[2026-06-12 16:48:35,831.831 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 16:48:35,853.853 INFO    ] Checking for existing commands in stream...
[2026-06-12 16:48:35,949.949 INFO    ] No existing commands found in stream
[2026-06-12 16:48:40,962.962 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 16:48:40,964.964 INFO    ] Waiting 3.67 seconds before fallback handling...
[2026-06-12 16:48:45,018.018 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 16:48:45,020.020 INFO    ] Checking for system updates...
[2026-06-12 16:48:45,042.042 INFO    ] 200
[2026-06-12 16:48:45,043.043 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:48:45,075.075 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 16:48:45,077.077 INFO    ] No update needed
[2026-06-12 16:48:45,078.078 INFO    ] Checking for camera pi updates...
[2026-06-12 16:48:45,097.097 INFO    ] 200
[2026-06-12 16:48:45,099.099 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:48:45,122.122 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 16:48:45,173.173 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 16:48:45,174.174 INFO    ] No camera update needed
[2026-06-12 16:48:45,175.175 INFO    ] Script finished. Safe exiting...
[2026-06-12 16:48:45,177.177 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 16:48:45,180.180 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 16:48:45,183.183 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 16:48:47,221.221 INFO    ] ================================================
[2026-06-12 16:48:47,237.237 INFO    ] Launching Daemon at Fri Jun 12 16:48:47 IST 2026
[2026-06-12 16:48:47,248.248 INFO    ] ================================================
[2026-06-12 16:48:47,619.619 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 16:48:47
[2026-06-12 16:48:47,962.962 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 16:48:48,113.113 INFO    ] Initializing speech engine...
[2026-06-12 16:48:48,119.119 INFO    ] 2026-06-12 16:48:48
[2026-06-12 16:48:48,328.328 INFO    ] 2026-06-12 16:48:48
[2026-06-12 16:48:48,357.357 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 16:48:48,541.541 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 16:48:48,550.550 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 16:48:48,694.694 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 16:48:48,748.748 INFO    ] time= 12/06/2026 16:48:48
[2026-06-12 16:48:48,770.770 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 16:48:48,776.776 INFO    ] Checking for existing commands in stream...
[2026-06-12 16:48:48,843.843 INFO    ] No existing commands found in stream
[2026-06-12 16:48:53,857.857 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 16:48:53,861.861 INFO    ] Waiting 2.99 seconds before fallback handling...
[2026-06-12 16:48:57,253.253 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 16:48:57,254.254 INFO    ] Checking for system updates...
[2026-06-12 16:48:57,275.275 INFO    ] 200
[2026-06-12 16:48:57,277.277 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:48:57,307.307 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 16:48:57,309.309 INFO    ] No update needed
[2026-06-12 16:48:57,310.310 INFO    ] Checking for camera pi updates...
[2026-06-12 16:48:57,330.330 INFO    ] 200
[2026-06-12 16:48:57,332.332 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:48:57,355.355 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 16:48:57,398.398 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 16:48:57,400.400 INFO    ] No camera update needed
[2026-06-12 16:48:57,401.401 INFO    ] Script finished. Safe exiting...
[2026-06-12 16:48:57,403.403 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 16:48:57,406.406 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 16:48:57,409.409 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 16:48:59,449.449 INFO    ] ================================================
[2026-06-12 16:48:59,465.465 INFO    ] Launching Daemon at Fri Jun 12 16:48:59 IST 2026
[2026-06-12 16:48:59,477.477 INFO    ] ================================================
[2026-06-12 16:48:59,816.816 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 16:48:59
[2026-06-12 16:49:00,144.144 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 16:49:00,297.297 INFO    ] Initializing speech engine...
[2026-06-12 16:49:00,304.304 INFO    ] 2026-06-12 16:49:00
[2026-06-12 16:49:00,518.518 INFO    ] 2026-06-12 16:49:00
[2026-06-12 16:49:00,547.547 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 16:49:00,735.735 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 16:49:00,746.746 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 16:49:00,893.893 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 16:49:00,948.948 INFO    ] time= 12/06/2026 16:49:00
[2026-06-12 16:49:00,971.971 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 16:49:00,977.977 INFO    ] Checking for existing commands in stream...
[2026-06-12 16:49:01,045.045 INFO    ] No existing commands found in stream
[2026-06-12 16:49:06,076.076 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 16:49:06,079.079 INFO    ] Waiting 0.39 seconds before fallback handling...
[2026-06-12 16:49:06,873.873 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 16:49:06,875.875 INFO    ] Checking for system updates...
[2026-06-12 16:49:06,896.896 INFO    ] 200
[2026-06-12 16:49:06,897.897 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:49:06,928.928 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 16:49:06,929.929 INFO    ] No update needed
[2026-06-12 16:49:06,931.931 INFO    ] Checking for camera pi updates...
[2026-06-12 16:49:06,952.952 INFO    ] 200
[2026-06-12 16:49:06,953.953 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:49:06,976.976 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 16:49:07,003.003 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 16:49:07,004.004 INFO    ] No camera update needed
[2026-06-12 16:49:07,005.005 INFO    ] Script finished. Safe exiting...
[2026-06-12 16:49:07,007.007 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 16:49:07,010.010 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 16:49:07,012.012 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 16:49:09,051.051 INFO    ] ================================================
[2026-06-12 16:49:09,068.068 INFO    ] Launching Daemon at Fri Jun 12 16:49:09 IST 2026
[2026-06-12 16:49:09,079.079 INFO    ] ================================================
[2026-06-12 16:49:09,425.425 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 16:49:09
[2026-06-12 16:49:09,740.740 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 16:49:09,869.869 INFO    ] Initializing speech engine...
[2026-06-12 16:49:09,874.874 INFO    ] 2026-06-12 16:49:09
[2026-06-12 16:49:10,092.092 INFO    ] 2026-06-12 16:49:10
[2026-06-12 16:49:10,120.120 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 16:49:10,305.305 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 16:49:10,315.315 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 16:49:10,468.468 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 16:49:10,517.517 INFO    ] time= 12/06/2026 16:49:10
[2026-06-12 16:49:10,539.539 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 16:49:10,546.546 INFO    ] Checking for existing commands in stream...
[2026-06-12 16:49:10,613.613 INFO    ] No existing commands found in stream
[2026-06-12 16:49:15,619.619 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 16:49:15,622.622 INFO    ] Waiting 0.25 seconds before fallback handling...
[2026-06-12 16:49:16,222.222 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 16:49:16,223.223 INFO    ] Checking for system updates...
[2026-06-12 16:49:16,245.245 INFO    ] 200
[2026-06-12 16:49:16,246.246 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:49:16,276.276 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 16:49:16,277.277 INFO    ] No update needed
[2026-06-12 16:49:16,278.278 INFO    ] Checking for camera pi updates...
[2026-06-12 16:49:16,298.298 INFO    ] 200
[2026-06-12 16:49:16,299.299 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:49:16,322.322 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 16:49:16,367.367 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 16:49:16,369.369 INFO    ] No camera update needed
[2026-06-12 16:49:16,370.370 INFO    ] Script finished. Safe exiting...
[2026-06-12 16:49:16,371.371 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 16:49:16,374.374 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 16:49:16,377.377 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 16:49:18,416.416 INFO    ] ================================================
[2026-06-12 16:49:18,432.432 INFO    ] Launching Daemon at Fri Jun 12 16:49:18 IST 2026
[2026-06-12 16:49:18,444.444 INFO    ] ================================================
[2026-06-12 16:49:18,803.803 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 16:49:18
[2026-06-12 16:49:19,118.118 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 16:49:19,252.252 INFO    ] Initializing speech engine...
[2026-06-12 16:49:19,256.256 INFO    ] 2026-06-12 16:49:19
[2026-06-12 16:49:19,450.450 INFO    ] 2026-06-12 16:49:19
[2026-06-12 16:49:19,495.495 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 16:49:19,656.656 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 16:49:19,701.701 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 16:49:19,873.873 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 16:49:19,916.916 INFO    ] time= 12/06/2026 16:49:19
[2026-06-12 16:49:19,961.961 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 16:49:19,984.984 INFO    ] Checking for existing commands in stream...
[2026-06-12 16:49:20,066.066 INFO    ] No existing commands found in stream
[2026-06-12 16:49:25,075.075 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 16:49:25,078.078 INFO    ] Waiting 2.41 seconds before fallback handling...
[2026-06-12 16:49:27,895.895 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 16:49:27,897.897 INFO    ] Checking for system updates...
[2026-06-12 16:49:27,918.918 INFO    ] 200
[2026-06-12 16:49:27,919.919 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:49:27,950.950 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 16:49:27,951.951 INFO    ] No update needed
[2026-06-12 16:49:27,953.953 INFO    ] Checking for camera pi updates...
[2026-06-12 16:49:27,972.972 INFO    ] 200
[2026-06-12 16:49:27,974.974 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:49:27,998.998 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 16:49:28,056.056 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 16:49:28,057.057 INFO    ] No camera update needed
[2026-06-12 16:49:28,059.059 INFO    ] Script finished. Safe exiting...
[2026-06-12 16:49:28,060.060 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 16:49:28,064.064 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 16:49:28,067.067 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 16:49:30,104.104 INFO    ] ================================================
[2026-06-12 16:49:30,119.119 INFO    ] Launching Daemon at Fri Jun 12 16:49:30 IST 2026
[2026-06-12 16:49:30,130.130 INFO    ] ================================================
[2026-06-12 16:49:30,471.471 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 16:49:30
[2026-06-12 16:49:30,787.787 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 16:49:30,918.918 INFO    ] Initializing speech engine...
[2026-06-12 16:49:30,926.926 INFO    ] 2026-06-12 16:49:30
[2026-06-12 16:49:31,146.146 INFO    ] 2026-06-12 16:49:31
[2026-06-12 16:49:31,177.177 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 16:49:31,371.371 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 16:49:31,380.380 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 16:49:31,527.527 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 16:49:31,594.594 INFO    ] time= 12/06/2026 16:49:31
[2026-06-12 16:49:31,617.617 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 16:49:31,624.624 INFO    ] Checking for existing commands in stream...
[2026-06-12 16:49:31,693.693 INFO    ] No existing commands found in stream
[2026-06-12 16:49:36,717.717 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 16:49:36,720.720 INFO    ] Waiting 0.81 seconds before fallback handling...
[2026-06-12 16:49:37,960.960 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 16:49:37,962.962 INFO    ] Checking for system updates...
[2026-06-12 16:49:37,982.982 INFO    ] 200
[2026-06-12 16:49:37,983.983 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:49:38,013.013 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 16:49:38,014.014 INFO    ] No update needed
[2026-06-12 16:49:38,015.015 INFO    ] Checking for camera pi updates...
[2026-06-12 16:49:38,034.034 INFO    ] 200
[2026-06-12 16:49:38,036.036 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:49:38,061.061 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 16:49:38,108.108 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 16:49:38,109.109 INFO    ] No camera update needed
[2026-06-12 16:49:38,111.111 INFO    ] Script finished. Safe exiting...
[2026-06-12 16:49:38,112.112 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 16:49:38,115.115 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 16:49:38,117.117 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 16:49:40,156.156 INFO    ] ================================================
[2026-06-12 16:49:40,172.172 INFO    ] Launching Daemon at Fri Jun 12 16:49:40 IST 2026
[2026-06-12 16:49:40,183.183 INFO    ] ================================================
[2026-06-12 16:49:40,556.556 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 16:49:40
[2026-06-12 16:49:40,868.868 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 16:49:41,003.003 INFO    ] Initializing speech engine...
[2026-06-12 16:49:41,006.006 INFO    ] 2026-06-12 16:49:41
[2026-06-12 16:49:41,223.223 INFO    ] 2026-06-12 16:49:41
[2026-06-12 16:49:41,253.253 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 16:49:41,438.438 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 16:49:41,447.447 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 16:49:41,595.595 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 16:49:41,648.648 INFO    ] time= 12/06/2026 16:49:41
[2026-06-12 16:49:41,672.672 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 16:49:41,678.678 INFO    ] Checking for existing commands in stream...
[2026-06-12 16:49:41,749.749 INFO    ] No existing commands found in stream
[2026-06-12 16:49:46,763.763 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 16:49:46,766.766 INFO    ] Waiting 2.65 seconds before fallback handling...
[2026-06-12 16:49:49,824.824 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 16:49:49,826.826 INFO    ] Checking for system updates...
[2026-06-12 16:49:49,846.846 INFO    ] 200
[2026-06-12 16:49:49,848.848 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:49:49,881.881 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 16:49:49,882.882 INFO    ] No update needed
[2026-06-12 16:49:49,884.884 INFO    ] Checking for camera pi updates...
[2026-06-12 16:49:49,903.903 INFO    ] 200
[2026-06-12 16:49:49,905.905 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:49:49,932.932 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 16:49:49,977.977 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 16:49:49,978.978 INFO    ] No camera update needed
[2026-06-12 16:49:49,980.980 INFO    ] Script finished. Safe exiting...
[2026-06-12 16:49:49,981.981 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 16:49:49,985.985 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 16:49:49,988.988 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 16:49:52,025.025 INFO    ] ================================================
[2026-06-12 16:49:52,041.041 INFO    ] Launching Daemon at Fri Jun 12 16:49:52 IST 2026
[2026-06-12 16:49:52,052.052 INFO    ] ================================================
[2026-06-12 16:49:52,435.435 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 16:49:52
[2026-06-12 16:49:52,759.759 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 16:49:52,903.903 INFO    ] Initializing speech engine...
[2026-06-12 16:49:52,907.907 INFO    ] 2026-06-12 16:49:52
[2026-06-12 16:49:53,112.112 INFO    ] 2026-06-12 16:49:53
[2026-06-12 16:49:53,140.140 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 16:49:53,325.325 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 16:49:53,335.335 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 16:49:53,514.514 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 16:49:53,543.543 INFO    ] time= 12/06/2026 16:49:53
[2026-06-12 16:49:53,554.554 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 16:49:53,559.559 INFO    ] Checking for existing commands in stream...
[2026-06-12 16:49:53,627.627 INFO    ] No existing commands found in stream
[2026-06-12 16:49:58,660.660 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 16:49:58,663.663 INFO    ] Waiting 0.20 seconds before fallback handling...
[2026-06-12 16:49:59,248.248 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 16:49:59,249.249 INFO    ] Checking for system updates...
[2026-06-12 16:49:59,270.270 INFO    ] 200
[2026-06-12 16:49:59,271.271 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:49:59,301.301 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 16:49:59,302.302 INFO    ] No update needed
[2026-06-12 16:49:59,304.304 INFO    ] Checking for camera pi updates...
[2026-06-12 16:49:59,323.323 INFO    ] 200
[2026-06-12 16:49:59,324.324 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:49:59,347.347 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 16:49:59,401.401 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 16:49:59,402.402 INFO    ] No camera update needed
[2026-06-12 16:49:59,404.404 INFO    ] Script finished. Safe exiting...
[2026-06-12 16:49:59,405.405 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 16:49:59,408.408 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 16:49:59,411.411 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 16:50:01,465.465 INFO    ] ================================================
[2026-06-12 16:50:01,547.547 INFO    ] Launching Daemon at Fri Jun 12 16:50:01 IST 2026
[2026-06-12 16:50:01,578.578 INFO    ] ================================================
[2026-06-12 16:50:02,105.105 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 16:50:02
[2026-06-12 16:50:02,504.504 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 16:50:02,702.702 INFO    ] Initializing speech engine...
[2026-06-12 16:50:02,709.709 INFO    ] 2026-06-12 16:50:02
[2026-06-12 16:50:02,933.933 INFO    ] 2026-06-12 16:50:02
[2026-06-12 16:50:02,966.966 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 16:50:03,151.151 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 16:50:03,160.160 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 16:50:03,307.307 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 16:50:03,359.359 INFO    ] time= 12/06/2026 16:50:03
[2026-06-12 16:50:03,383.383 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 16:50:03,390.390 INFO    ] Checking for existing commands in stream...
[2026-06-12 16:50:03,457.457 INFO    ] No existing commands found in stream
[2026-06-12 16:50:08,490.490 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 16:50:08,493.493 INFO    ] Waiting 1.20 seconds before fallback handling...
[2026-06-12 16:50:10,097.097 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 16:50:10,098.098 INFO    ] Checking for system updates...
[2026-06-12 16:50:10,121.121 INFO    ] 200
[2026-06-12 16:50:10,123.123 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:50:10,156.156 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 16:50:10,157.157 INFO    ] No update needed
[2026-06-12 16:50:10,159.159 INFO    ] Checking for camera pi updates...
[2026-06-12 16:50:10,179.179 INFO    ] 200
[2026-06-12 16:50:10,180.180 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:50:10,204.204 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 16:50:10,253.253 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 16:50:10,254.254 INFO    ] No camera update needed
[2026-06-12 16:50:10,256.256 INFO    ] Script finished. Safe exiting...
[2026-06-12 16:50:10,257.257 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 16:50:10,261.261 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 16:50:10,264.264 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 16:50:12,301.301 INFO    ] ================================================
[2026-06-12 16:50:12,316.316 INFO    ] Launching Daemon at Fri Jun 12 16:50:12 IST 2026
[2026-06-12 16:50:12,327.327 INFO    ] ================================================
[2026-06-12 16:50:12,700.700 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 16:50:12
[2026-06-12 16:50:13,017.017 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 16:50:13,150.150 INFO    ] Initializing speech engine...
[2026-06-12 16:50:13,164.164 INFO    ] 2026-06-12 16:50:13
[2026-06-12 16:50:13,373.373 INFO    ] 2026-06-12 16:50:13
[2026-06-12 16:50:13,402.402 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 16:50:13,587.587 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 16:50:13,596.596 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 16:50:13,756.756 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 16:50:13,806.806 INFO    ] time= 12/06/2026 16:50:13
[2026-06-12 16:50:13,817.817 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 16:50:13,823.823 INFO    ] Checking for existing commands in stream...
[2026-06-12 16:50:13,890.890 INFO    ] No existing commands found in stream
[2026-06-12 16:50:18,904.904 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 16:50:18,907.907 INFO    ] Waiting 3.98 seconds before fallback handling...
[2026-06-12 16:50:23,260.260 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 16:50:23,262.262 INFO    ] Checking for system updates...
[2026-06-12 16:50:23,284.284 INFO    ] 200
[2026-06-12 16:50:23,285.285 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:50:23,315.315 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 16:50:23,316.316 INFO    ] No update needed
[2026-06-12 16:50:23,318.318 INFO    ] Checking for camera pi updates...
[2026-06-12 16:50:23,337.337 INFO    ] 200
[2026-06-12 16:50:23,338.338 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:50:23,361.361 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 16:50:23,402.402 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 16:50:23,404.404 INFO    ] No camera update needed
[2026-06-12 16:50:23,405.405 INFO    ] Script finished. Safe exiting...
[2026-06-12 16:50:23,406.406 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 16:50:23,409.409 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 16:50:23,412.412 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 16:50:25,452.452 INFO    ] ================================================
[2026-06-12 16:50:25,467.467 INFO    ] Launching Daemon at Fri Jun 12 16:50:25 IST 2026
[2026-06-12 16:50:25,478.478 INFO    ] ================================================
[2026-06-12 16:50:25,837.837 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 16:50:25
[2026-06-12 16:50:26,182.182 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 16:50:26,337.337 INFO    ] Initializing speech engine...
[2026-06-12 16:50:26,342.342 INFO    ] 2026-06-12 16:50:26
[2026-06-12 16:50:26,549.549 INFO    ] 2026-06-12 16:50:26
[2026-06-12 16:50:26,579.579 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 16:50:26,766.766 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 16:50:26,776.776 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 16:50:26,931.931 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 16:50:26,974.974 INFO    ] time= 12/06/2026 16:50:26
[2026-06-12 16:50:26,996.996 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 16:50:27,002.002 INFO    ] Checking for existing commands in stream...
[2026-06-12 16:50:27,069.069 INFO    ] No existing commands found in stream
[2026-06-12 16:50:32,083.083 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 16:50:32,085.085 INFO    ] Waiting 2.54 seconds before fallback handling...
[2026-06-12 16:50:35,121.121 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 16:50:35,123.123 INFO    ] Checking for system updates...
[2026-06-12 16:50:35,144.144 INFO    ] 200
[2026-06-12 16:50:35,145.145 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:50:35,177.177 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 16:50:35,179.179 INFO    ] No update needed
[2026-06-12 16:50:35,180.180 INFO    ] Checking for camera pi updates...
[2026-06-12 16:50:35,201.201 INFO    ] 200
[2026-06-12 16:50:35,202.202 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:50:35,225.225 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 16:50:35,275.275 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 16:50:35,276.276 INFO    ] No camera update needed
[2026-06-12 16:50:35,277.277 INFO    ] Script finished. Safe exiting...
[2026-06-12 16:50:35,278.278 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 16:50:35,282.282 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 16:50:35,284.284 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 16:50:37,322.322 INFO    ] ================================================
[2026-06-12 16:50:37,337.337 INFO    ] Launching Daemon at Fri Jun 12 16:50:37 IST 2026
[2026-06-12 16:50:37,348.348 INFO    ] ================================================
[2026-06-12 16:50:37,694.694 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 16:50:37
[2026-06-12 16:50:38,006.006 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 16:50:38,137.137 INFO    ] Initializing speech engine...
[2026-06-12 16:50:38,145.145 INFO    ] 2026-06-12 16:50:38
[2026-06-12 16:50:38,361.361 INFO    ] 2026-06-12 16:50:38
[2026-06-12 16:50:38,389.389 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 16:50:38,577.577 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 16:50:38,585.585 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 16:50:38,739.739 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 16:50:38,788.788 INFO    ] time= 12/06/2026 16:50:38
[2026-06-12 16:50:38,811.811 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 16:50:38,817.817 INFO    ] Checking for existing commands in stream...
[2026-06-12 16:50:38,910.910 INFO    ] No existing commands found in stream
[2026-06-12 16:50:43,919.919 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 16:50:43,922.922 INFO    ] Waiting 3.85 seconds before fallback handling...
[2026-06-12 16:50:48,199.199 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 16:50:48,201.201 INFO    ] Checking for system updates...
[2026-06-12 16:50:48,221.221 INFO    ] 200
[2026-06-12 16:50:48,223.223 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:50:48,253.253 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 16:50:48,254.254 INFO    ] No update needed
[2026-06-12 16:50:48,256.256 INFO    ] Checking for camera pi updates...
[2026-06-12 16:50:48,276.276 INFO    ] 200
[2026-06-12 16:50:48,278.278 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:50:48,301.301 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 16:50:48,344.344 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 16:50:48,345.345 INFO    ] No camera update needed
[2026-06-12 16:50:48,346.346 INFO    ] Script finished. Safe exiting...
[2026-06-12 16:50:48,347.347 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 16:50:48,350.350 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 16:50:48,353.353 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 16:50:50,392.392 INFO    ] ================================================
[2026-06-12 16:50:50,408.408 INFO    ] Launching Daemon at Fri Jun 12 16:50:50 IST 2026
[2026-06-12 16:50:50,418.418 INFO    ] ================================================
[2026-06-12 16:50:50,762.762 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 16:50:50
[2026-06-12 16:50:51,077.077 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 16:50:51,206.206 INFO    ] Initializing speech engine...
[2026-06-12 16:50:51,210.210 INFO    ] 2026-06-12 16:50:51
[2026-06-12 16:50:51,429.429 INFO    ] 2026-06-12 16:50:51
[2026-06-12 16:50:51,462.462 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 16:50:51,648.648 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 16:50:51,658.658 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 16:50:51,791.791 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 16:50:51,855.855 INFO    ] time= 12/06/2026 16:50:51
[2026-06-12 16:50:51,888.888 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 16:50:51,895.895 INFO    ] Checking for existing commands in stream...
[2026-06-12 16:50:51,968.968 INFO    ] No existing commands found in stream
[2026-06-12 16:50:56,977.977 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 16:50:56,980.980 INFO    ] Waiting 2.10 seconds before fallback handling...
[2026-06-12 16:50:59,397.397 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 16:50:59,399.399 INFO    ] Checking for system updates...
[2026-06-12 16:50:59,421.421 INFO    ] 200
[2026-06-12 16:50:59,423.423 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:50:59,454.454 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 16:50:59,455.455 INFO    ] No update needed
[2026-06-12 16:50:59,457.457 INFO    ] Checking for camera pi updates...
[2026-06-12 16:50:59,477.477 INFO    ] 200
[2026-06-12 16:50:59,479.479 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:50:59,504.504 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 16:50:59,552.552 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 16:50:59,553.553 INFO    ] No camera update needed
[2026-06-12 16:50:59,554.554 INFO    ] Script finished. Safe exiting...
[2026-06-12 16:50:59,556.556 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 16:50:59,559.559 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 16:50:59,562.562 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 16:51:01,590.590 INFO    ] ================================================
[2026-06-12 16:51:01,601.601 INFO    ] Launching Daemon at Fri Jun 12 16:51:01 IST 2026
[2026-06-12 16:51:01,609.609 INFO    ] ================================================
[2026-06-12 16:51:02,025.025 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 16:51:02
[2026-06-12 16:51:02,409.409 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 16:51:02,562.562 INFO    ] Initializing speech engine...
[2026-06-12 16:51:02,573.573 INFO    ] 2026-06-12 16:51:02
[2026-06-12 16:51:02,804.804 INFO    ] 2026-06-12 16:51:02
[2026-06-12 16:51:02,836.836 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 16:51:03,027.027 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 16:51:03,039.039 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 16:51:03,226.226 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 16:51:03,265.265 INFO    ] time= 12/06/2026 16:51:03
[2026-06-12 16:51:03,271.271 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 16:51:03,273.273 INFO    ] Checking for existing commands in stream...
[2026-06-12 16:51:03,343.343 INFO    ] No existing commands found in stream
[2026-06-12 16:51:08,376.376 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 16:51:08,378.378 INFO    ] Waiting 0.73 seconds before fallback handling...
[2026-06-12 16:51:09,410.410 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 16:51:09,412.412 INFO    ] Checking for system updates...
[2026-06-12 16:51:09,433.433 INFO    ] 200
[2026-06-12 16:51:09,434.434 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:51:09,464.464 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 16:51:09,466.466 INFO    ] No update needed
[2026-06-12 16:51:09,467.467 INFO    ] Checking for camera pi updates...
[2026-06-12 16:51:09,488.488 INFO    ] 200
[2026-06-12 16:51:09,490.490 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:51:09,526.526 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 16:51:09,677.677 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 16:51:09,680.680 INFO    ] No camera update needed
[2026-06-12 16:51:09,682.682 INFO    ] Script finished. Safe exiting...
[2026-06-12 16:51:09,685.685 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 16:51:09,692.692 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 16:51:09,698.698 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 16:51:11,729.729 INFO    ] ================================================
[2026-06-12 16:51:11,738.738 INFO    ] Launching Daemon at Fri Jun 12 16:51:11 IST 2026
[2026-06-12 16:51:11,744.744 INFO    ] ================================================
[2026-06-12 16:51:12,047.047 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 16:51:12
[2026-06-12 16:51:12,362.362 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 16:51:12,494.494 INFO    ] Initializing speech engine...
[2026-06-12 16:51:12,498.498 INFO    ] 2026-06-12 16:51:12
[2026-06-12 16:51:12,690.690 INFO    ] 2026-06-12 16:51:12
[2026-06-12 16:51:12,738.738 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 16:51:12,897.897 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 16:51:12,946.946 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 16:51:13,109.109 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 16:51:13,156.156 INFO    ] time= 12/06/2026 16:51:13
[2026-06-12 16:51:13,196.196 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 16:51:13,219.219 INFO    ] Checking for existing commands in stream...
[2026-06-12 16:51:13,295.295 INFO    ] No existing commands found in stream
[2026-06-12 16:51:18,306.306 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 16:51:18,309.309 INFO    ] Waiting 1.06 seconds before fallback handling...
[2026-06-12 16:51:19,739.739 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 16:51:19,741.741 INFO    ] Checking for system updates...
[2026-06-12 16:51:19,763.763 INFO    ] 200
[2026-06-12 16:51:19,764.764 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:51:19,794.794 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 16:51:19,795.795 INFO    ] No update needed
[2026-06-12 16:51:19,796.796 INFO    ] Checking for camera pi updates...
[2026-06-12 16:51:19,816.816 INFO    ] 200
[2026-06-12 16:51:19,817.817 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:51:19,842.842 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 16:51:19,971.971 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 16:51:19,972.972 INFO    ] No camera update needed
[2026-06-12 16:51:19,973.973 INFO    ] Script finished. Safe exiting...
[2026-06-12 16:51:19,975.975 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 16:51:19,978.978 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 16:51:19,980.980 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 16:51:22,009.009 INFO    ] ================================================
[2026-06-12 16:51:22,018.018 INFO    ] Launching Daemon at Fri Jun 12 16:51:22 IST 2026
[2026-06-12 16:51:22,024.024 INFO    ] ================================================
[2026-06-12 16:51:22,343.343 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 16:51:22
[2026-06-12 16:51:22,658.658 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 16:51:22,793.793 INFO    ] Initializing speech engine...
[2026-06-12 16:51:22,798.798 INFO    ] 2026-06-12 16:51:22
[2026-06-12 16:51:23,018.018 INFO    ] 2026-06-12 16:51:22
[2026-06-12 16:51:23,047.047 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 16:51:23,196.196 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 16:51:23,198.198 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 16:51:23,341.341 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 16:51:23,372.372 INFO    ] time= 12/06/2026 16:51:23
[2026-06-12 16:51:23,433.433 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 16:51:23,469.469 INFO    ] Checking for existing commands in stream...
[2026-06-12 16:51:23,569.569 INFO    ] No existing commands found in stream
[2026-06-12 16:51:28,578.578 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 16:51:28,581.581 INFO    ] Waiting 3.40 seconds before fallback handling...
[2026-06-12 16:51:32,352.352 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 16:51:32,354.354 INFO    ] Checking for system updates...
[2026-06-12 16:51:32,374.374 INFO    ] 200
[2026-06-12 16:51:32,376.376 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:51:32,406.406 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 16:51:32,407.407 INFO    ] No update needed
[2026-06-12 16:51:32,408.408 INFO    ] Checking for camera pi updates...
[2026-06-12 16:51:32,428.428 INFO    ] 200
[2026-06-12 16:51:32,429.429 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:51:32,452.452 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 16:51:32,481.481 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 16:51:32,483.483 INFO    ] No camera update needed
[2026-06-12 16:51:32,484.484 INFO    ] Script finished. Safe exiting...
[2026-06-12 16:51:32,485.485 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 16:51:32,488.488 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 16:51:32,491.491 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 16:51:34,530.530 INFO    ] ================================================
[2026-06-12 16:51:34,546.546 INFO    ] Launching Daemon at Fri Jun 12 16:51:34 IST 2026
[2026-06-12 16:51:34,557.557 INFO    ] ================================================
[2026-06-12 16:51:34,926.926 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 16:51:34
[2026-06-12 16:51:35,238.238 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 16:51:35,368.368 INFO    ] Initializing speech engine...
[2026-06-12 16:51:35,382.382 INFO    ] 2026-06-12 16:51:35
[2026-06-12 16:51:35,587.587 INFO    ] 2026-06-12 16:51:35
[2026-06-12 16:51:35,616.616 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 16:51:35,739.739 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 16:51:35,801.801 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 16:51:35,936.936 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 16:51:35,992.992 INFO    ] time= 12/06/2026 16:51:35
[2026-06-12 16:51:36,027.027 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 16:51:36,032.032 INFO    ] Checking for existing commands in stream...
[2026-06-12 16:51:36,126.126 INFO    ] No existing commands found in stream
[2026-06-12 16:51:41,135.135 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 16:51:41,137.137 INFO    ] Waiting 0.58 seconds before fallback handling...
[2026-06-12 16:51:42,099.099 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 16:51:42,100.100 INFO    ] Checking for system updates...
[2026-06-12 16:51:42,121.121 INFO    ] 200
[2026-06-12 16:51:42,122.122 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:51:42,154.154 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 16:51:42,156.156 INFO    ] No update needed
[2026-06-12 16:51:42,157.157 INFO    ] Checking for camera pi updates...
[2026-06-12 16:51:42,176.176 INFO    ] 200
[2026-06-12 16:51:42,177.177 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:51:42,201.201 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 16:51:42,249.249 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 16:51:42,251.251 INFO    ] No camera update needed
[2026-06-12 16:51:42,252.252 INFO    ] Script finished. Safe exiting...
[2026-06-12 16:51:42,253.253 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 16:51:42,256.256 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 16:51:42,259.259 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 16:51:44,297.297 INFO    ] ================================================
[2026-06-12 16:51:44,312.312 INFO    ] Launching Daemon at Fri Jun 12 16:51:44 IST 2026
[2026-06-12 16:51:44,323.323 INFO    ] ================================================
[2026-06-12 16:51:44,708.708 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 16:51:44
[2026-06-12 16:51:45,053.053 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 16:51:45,205.205 INFO    ] Initializing speech engine...
[2026-06-12 16:51:45,211.211 INFO    ] 2026-06-12 16:51:45
[2026-06-12 16:51:45,421.421 INFO    ] 2026-06-12 16:51:45
[2026-06-12 16:51:45,451.451 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 16:51:45,581.581 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 16:51:45,640.640 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 16:51:45,807.807 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 16:51:45,857.857 INFO    ] time= 12/06/2026 16:51:45
[2026-06-12 16:51:45,874.874 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 16:51:45,880.880 INFO    ] Checking for existing commands in stream...
[2026-06-12 16:51:45,948.948 INFO    ] No existing commands found in stream
[2026-06-12 16:51:50,973.973 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 16:51:50,976.976 INFO    ] Waiting 2.41 seconds before fallback handling...
[2026-06-12 16:51:53,758.758 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 16:51:53,759.759 INFO    ] Checking for system updates...
[2026-06-12 16:51:53,780.780 INFO    ] 200
[2026-06-12 16:51:53,782.782 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:51:53,811.811 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 16:51:53,813.813 INFO    ] No update needed
[2026-06-12 16:51:53,814.814 INFO    ] Checking for camera pi updates...
[2026-06-12 16:51:53,835.835 INFO    ] 200
[2026-06-12 16:51:53,836.836 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:51:53,859.859 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 16:51:53,911.911 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 16:51:53,913.913 INFO    ] No camera update needed
[2026-06-12 16:51:53,914.914 INFO    ] Script finished. Safe exiting...
[2026-06-12 16:51:53,915.915 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 16:51:53,918.918 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 16:51:53,921.921 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 16:51:55,959.959 INFO    ] ================================================
[2026-06-12 16:51:55,974.974 INFO    ] Launching Daemon at Fri Jun 12 16:51:55 IST 2026
[2026-06-12 16:51:55,984.984 INFO    ] ================================================
[2026-06-12 16:51:56,333.333 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 16:51:56
[2026-06-12 16:51:56,646.646 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 16:51:56,777.777 INFO    ] Initializing speech engine...
[2026-06-12 16:51:56,781.781 INFO    ] 2026-06-12 16:51:56
[2026-06-12 16:51:56,999.999 INFO    ] 2026-06-12 16:51:56
[2026-06-12 16:51:57,028.028 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 16:51:57,214.214 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 16:51:57,218.218 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 16:51:57,349.349 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 16:51:57,405.405 INFO    ] time= 12/06/2026 16:51:57
[2026-06-12 16:51:57,449.449 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 16:51:57,451.451 INFO    ] Checking for existing commands in stream...
[2026-06-12 16:51:57,522.522 INFO    ] No existing commands found in stream
[2026-06-12 16:52:02,531.531 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 16:52:02,533.533 INFO    ] Waiting 3.50 seconds before fallback handling...
[2026-06-12 16:52:06,454.454 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 16:52:06,457.457 INFO    ] Checking for system updates...
[2026-06-12 16:52:06,492.492 INFO    ] 200
[2026-06-12 16:52:06,495.495 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:52:06,547.547 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 16:52:06,549.549 INFO    ] No update needed
[2026-06-12 16:52:06,552.552 INFO    ] Checking for camera pi updates...
[2026-06-12 16:52:06,581.581 INFO    ] 200
[2026-06-12 16:52:06,583.583 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:52:06,605.605 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 16:52:06,662.662 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 16:52:06,664.664 INFO    ] No camera update needed
[2026-06-12 16:52:06,665.665 INFO    ] Script finished. Safe exiting...
[2026-06-12 16:52:06,666.666 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 16:52:06,669.669 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 16:52:06,672.672 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 16:52:08,712.712 INFO    ] ================================================
[2026-06-12 16:52:08,727.727 INFO    ] Launching Daemon at Fri Jun 12 16:52:08 IST 2026
[2026-06-12 16:52:08,738.738 INFO    ] ================================================
[2026-06-12 16:52:09,077.077 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 16:52:09
[2026-06-12 16:52:09,390.390 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 16:52:09,521.521 INFO    ] Initializing speech engine...
[2026-06-12 16:52:09,525.525 INFO    ] 2026-06-12 16:52:09
[2026-06-12 16:52:09,744.744 INFO    ] 2026-06-12 16:52:09
[2026-06-12 16:52:09,774.774 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 16:52:09,955.955 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 16:52:09,963.963 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 16:52:10,119.119 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 16:52:10,172.172 INFO    ] time= 12/06/2026 16:52:10
[2026-06-12 16:52:10,195.195 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 16:52:10,202.202 INFO    ] Checking for existing commands in stream...
[2026-06-12 16:52:10,269.269 INFO    ] No existing commands found in stream
[2026-06-12 16:52:15,278.278 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 16:52:15,281.281 INFO    ] Waiting 2.62 seconds before fallback handling...
[2026-06-12 16:52:18,298.298 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 16:52:18,300.300 INFO    ] Checking for system updates...
[2026-06-12 16:52:18,320.320 INFO    ] 200
[2026-06-12 16:52:18,322.322 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:52:18,354.354 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 16:52:18,355.355 INFO    ] No update needed
[2026-06-12 16:52:18,356.356 INFO    ] Checking for camera pi updates...
[2026-06-12 16:52:18,376.376 INFO    ] 200
[2026-06-12 16:52:18,377.377 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:52:18,402.402 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 16:52:18,459.459 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 16:52:18,461.461 INFO    ] No camera update needed
[2026-06-12 16:52:18,462.462 INFO    ] Script finished. Safe exiting...
[2026-06-12 16:52:18,463.463 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 16:52:18,466.466 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 16:52:18,469.469 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 16:52:20,509.509 INFO    ] ================================================
[2026-06-12 16:52:20,524.524 INFO    ] Launching Daemon at Fri Jun 12 16:52:20 IST 2026
[2026-06-12 16:52:20,535.535 INFO    ] ================================================
[2026-06-12 16:52:20,905.905 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 16:52:20
[2026-06-12 16:52:21,223.223 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 16:52:21,368.368 INFO    ] Initializing speech engine...
[2026-06-12 16:52:21,373.373 INFO    ] 2026-06-12 16:52:21
[2026-06-12 16:52:21,576.576 INFO    ] 2026-06-12 16:52:21
[2026-06-12 16:52:21,605.605 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 16:52:21,789.789 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 16:52:21,797.797 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 16:52:21,942.942 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 16:52:21,995.995 INFO    ] time= 12/06/2026 16:52:21
[2026-06-12 16:52:22,018.018 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 16:52:22,024.024 INFO    ] Checking for existing commands in stream...
[2026-06-12 16:52:22,089.089 INFO    ] No existing commands found in stream
[2026-06-12 16:52:27,100.100 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 16:52:27,103.103 INFO    ] Waiting 2.65 seconds before fallback handling...
[2026-06-12 16:52:30,193.193 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 16:52:30,194.194 INFO    ] Checking for system updates...
[2026-06-12 16:52:30,215.215 INFO    ] 200
[2026-06-12 16:52:30,217.217 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:52:30,249.249 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 16:52:30,251.251 INFO    ] No update needed
[2026-06-12 16:52:30,253.253 INFO    ] Checking for camera pi updates...
[2026-06-12 16:52:30,272.272 INFO    ] 200
[2026-06-12 16:52:30,274.274 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:52:30,297.297 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 16:52:30,338.338 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 16:52:30,340.340 INFO    ] No camera update needed
[2026-06-12 16:52:30,342.342 INFO    ] Script finished. Safe exiting...
[2026-06-12 16:52:30,343.343 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 16:52:30,346.346 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 16:52:30,349.349 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 16:52:32,391.391 INFO    ] ================================================
[2026-06-12 16:52:32,406.406 INFO    ] Launching Daemon at Fri Jun 12 16:52:32 IST 2026
[2026-06-12 16:52:32,416.416 INFO    ] ================================================
[2026-06-12 16:52:32,793.793 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 16:52:32
[2026-06-12 16:52:33,116.116 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 16:52:33,259.259 INFO    ] Initializing speech engine...
[2026-06-12 16:52:33,264.264 INFO    ] 2026-06-12 16:52:33
[2026-06-12 16:52:33,469.469 INFO    ] 2026-06-12 16:52:33
[2026-06-12 16:52:33,497.497 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 16:52:33,680.680 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 16:52:33,684.684 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 16:52:33,820.820 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 16:52:33,886.886 INFO    ] time= 12/06/2026 16:52:33
[2026-06-12 16:52:33,910.910 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 16:52:33,917.917 INFO    ] Checking for existing commands in stream...
[2026-06-12 16:52:33,981.981 INFO    ] No existing commands found in stream
[2026-06-12 16:52:38,992.992 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 16:52:38,995.995 INFO    ] Waiting 1.39 seconds before fallback handling...
[2026-06-12 16:52:40,794.794 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 16:52:40,796.796 INFO    ] Checking for system updates...
[2026-06-12 16:52:40,817.817 INFO    ] 200
[2026-06-12 16:52:40,818.818 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:52:40,848.848 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 16:52:40,850.850 INFO    ] No update needed
[2026-06-12 16:52:40,852.852 INFO    ] Checking for camera pi updates...
[2026-06-12 16:52:40,874.874 INFO    ] 200
[2026-06-12 16:52:40,875.875 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:52:40,901.901 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 16:52:40,944.944 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 16:52:40,946.946 INFO    ] No camera update needed
[2026-06-12 16:52:40,947.947 INFO    ] Script finished. Safe exiting...
[2026-06-12 16:52:40,949.949 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 16:52:40,952.952 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 16:52:40,955.955 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 16:52:42,994.994 INFO    ] ================================================
[2026-06-12 16:52:43,009.009 INFO    ] Launching Daemon at Fri Jun 12 16:52:43 IST 2026
[2026-06-12 16:52:43,020.020 INFO    ] ================================================
[2026-06-12 16:52:43,368.368 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 16:52:43
[2026-06-12 16:52:43,679.679 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 16:52:43,809.809 INFO    ] Initializing speech engine...
[2026-06-12 16:52:43,813.813 INFO    ] 2026-06-12 16:52:43
[2026-06-12 16:52:44,028.028 INFO    ] 2026-06-12 16:52:44
[2026-06-12 16:52:44,057.057 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 16:52:44,240.240 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 16:52:44,248.248 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 16:52:44,377.377 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 16:52:44,444.444 INFO    ] time= 12/06/2026 16:52:44
[2026-06-12 16:52:44,468.468 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 16:52:44,474.474 INFO    ] Checking for existing commands in stream...
[2026-06-12 16:52:44,540.540 INFO    ] No existing commands found in stream
[2026-06-12 16:52:49,554.554 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 16:52:49,557.557 INFO    ] Waiting 2.28 seconds before fallback handling...
[2026-06-12 16:52:52,222.222 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 16:52:52,223.223 INFO    ] Checking for system updates...
[2026-06-12 16:52:52,244.244 INFO    ] 200
[2026-06-12 16:52:52,245.245 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:52:52,280.280 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 16:52:52,281.281 INFO    ] No update needed
[2026-06-12 16:52:52,283.283 INFO    ] Checking for camera pi updates...
[2026-06-12 16:52:52,302.302 INFO    ] 200
[2026-06-12 16:52:52,303.303 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:52:52,327.327 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 16:52:52,374.374 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 16:52:52,376.376 INFO    ] No camera update needed
[2026-06-12 16:52:52,377.377 INFO    ] Script finished. Safe exiting...
[2026-06-12 16:52:52,378.378 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 16:52:52,382.382 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 16:52:52,384.384 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 16:52:54,422.422 INFO    ] ================================================
[2026-06-12 16:52:54,437.437 INFO    ] Launching Daemon at Fri Jun 12 16:52:54 IST 2026
[2026-06-12 16:52:54,448.448 INFO    ] ================================================
[2026-06-12 16:52:54,802.802 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 16:52:54
[2026-06-12 16:52:55,114.114 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 16:52:55,258.258 INFO    ] Initializing speech engine...
[2026-06-12 16:52:55,263.263 INFO    ] 2026-06-12 16:52:55
[2026-06-12 16:52:55,468.468 INFO    ] 2026-06-12 16:52:55
[2026-06-12 16:52:55,496.496 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 16:52:55,682.682 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 16:52:55,691.691 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 16:52:55,823.823 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 16:52:55,882.882 INFO    ] time= 12/06/2026 16:52:55
[2026-06-12 16:52:55,915.915 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 16:52:55,922.922 INFO    ] Checking for existing commands in stream...
[2026-06-12 16:52:55,989.989 INFO    ] No existing commands found in stream
[2026-06-12 16:53:00,998.998 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 16:53:01,001.001 INFO    ] Waiting 0.94 seconds before fallback handling...
[2026-06-12 16:53:02,277.277 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 16:53:02,279.279 INFO    ] Checking for system updates...
[2026-06-12 16:53:02,304.304 INFO    ] 200
[2026-06-12 16:53:02,305.305 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:53:02,345.345 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 16:53:02,347.347 INFO    ] No update needed
[2026-06-12 16:53:02,349.349 INFO    ] Checking for camera pi updates...
[2026-06-12 16:53:02,380.380 INFO    ] 200
[2026-06-12 16:53:02,381.381 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:53:02,404.404 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 16:53:02,482.482 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 16:53:02,484.484 INFO    ] No camera update needed
[2026-06-12 16:53:02,486.486 INFO    ] Script finished. Safe exiting...
[2026-06-12 16:53:02,488.488 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 16:53:02,494.494 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 16:53:02,498.498 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 16:53:04,537.537 INFO    ] ================================================
[2026-06-12 16:53:04,552.552 INFO    ] Launching Daemon at Fri Jun 12 16:53:04 IST 2026
[2026-06-12 16:53:04,563.563 INFO    ] ================================================
[2026-06-12 16:53:04,929.929 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 16:53:04
[2026-06-12 16:53:05,271.271 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 16:53:05,424.424 INFO    ] Initializing speech engine...
[2026-06-12 16:53:05,429.429 INFO    ] 2026-06-12 16:53:05
[2026-06-12 16:53:05,638.638 INFO    ] 2026-06-12 16:53:05
[2026-06-12 16:53:05,673.673 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 16:53:05,867.867 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 16:53:05,876.876 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 16:53:06,021.021 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 16:53:06,076.076 INFO    ] time= 12/06/2026 16:53:06
[2026-06-12 16:53:06,098.098 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 16:53:06,104.104 INFO    ] Checking for existing commands in stream...
[2026-06-12 16:53:06,171.171 INFO    ] No existing commands found in stream
[2026-06-12 16:53:11,186.186 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 16:53:11,189.189 INFO    ] Waiting 3.62 seconds before fallback handling...
[2026-06-12 16:53:15,191.191 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 16:53:15,192.192 INFO    ] Checking for system updates...
[2026-06-12 16:53:15,213.213 INFO    ] 200
[2026-06-12 16:53:15,214.214 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:53:15,245.245 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 16:53:15,246.246 INFO    ] No update needed
[2026-06-12 16:53:15,247.247 INFO    ] Checking for camera pi updates...
[2026-06-12 16:53:15,267.267 INFO    ] 200
[2026-06-12 16:53:15,268.268 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:53:15,292.292 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 16:53:15,418.418 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 16:53:15,419.419 INFO    ] No camera update needed
[2026-06-12 16:53:15,420.420 INFO    ] Script finished. Safe exiting...
[2026-06-12 16:53:15,422.422 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 16:53:15,424.424 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 16:53:15,427.427 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 16:53:17,464.464 INFO    ] ================================================
[2026-06-12 16:53:17,480.480 INFO    ] Launching Daemon at Fri Jun 12 16:53:17 IST 2026
[2026-06-12 16:53:17,491.491 INFO    ] ================================================
[2026-06-12 16:53:17,885.885 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 16:53:17
[2026-06-12 16:53:18,228.228 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 16:53:18,379.379 INFO    ] Initializing speech engine...
[2026-06-12 16:53:18,385.385 INFO    ] 2026-06-12 16:53:18
[2026-06-12 16:53:18,594.594 INFO    ] 2026-06-12 16:53:18
[2026-06-12 16:53:18,624.624 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 16:53:18,808.808 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 16:53:18,817.817 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 16:53:18,977.977 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 16:53:19,027.027 INFO    ] time= 12/06/2026 16:53:18
[2026-06-12 16:53:19,039.039 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 16:53:19,044.044 INFO    ] Checking for existing commands in stream...
[2026-06-12 16:53:19,112.112 INFO    ] No existing commands found in stream
[2026-06-12 16:53:24,137.137 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 16:53:24,140.140 INFO    ] Waiting 0.42 seconds before fallback handling...
[2026-06-12 16:53:24,940.940 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 16:53:24,942.942 INFO    ] Checking for system updates...
[2026-06-12 16:53:24,963.963 INFO    ] 200
[2026-06-12 16:53:24,965.965 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:53:24,994.994 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 16:53:24,996.996 INFO    ] No update needed
[2026-06-12 16:53:24,997.997 INFO    ] Checking for camera pi updates...
[2026-06-12 16:53:25,017.017 INFO    ] 200
[2026-06-12 16:53:25,019.019 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:53:25,041.041 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 16:53:25,100.100 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 16:53:25,101.101 INFO    ] No camera update needed
[2026-06-12 16:53:25,103.103 INFO    ] Script finished. Safe exiting...
[2026-06-12 16:53:25,104.104 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 16:53:25,107.107 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 16:53:25,110.110 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 16:53:27,147.147 INFO    ] ================================================
[2026-06-12 16:53:27,162.162 INFO    ] Launching Daemon at Fri Jun 12 16:53:27 IST 2026
[2026-06-12 16:53:27,173.173 INFO    ] ================================================
[2026-06-12 16:53:27,543.543 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 16:53:27
[2026-06-12 16:53:27,857.857 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 16:53:28,000.000 INFO    ] Initializing speech engine...
[2026-06-12 16:53:28,004.004 INFO    ] 2026-06-12 16:53:28
[2026-06-12 16:53:28,209.209 INFO    ] 2026-06-12 16:53:28
[2026-06-12 16:53:28,240.240 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 16:53:28,426.426 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 16:53:28,437.437 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 16:53:28,586.586 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 16:53:28,634.634 INFO    ] time= 12/06/2026 16:53:28
[2026-06-12 16:53:28,657.657 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 16:53:28,663.663 INFO    ] Checking for existing commands in stream...
[2026-06-12 16:53:28,730.730 INFO    ] No existing commands found in stream
[2026-06-12 16:53:33,744.744 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 16:53:33,747.747 INFO    ] Waiting 1.90 seconds before fallback handling...
[2026-06-12 16:53:36,045.045 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 16:53:36,047.047 INFO    ] Checking for system updates...
[2026-06-12 16:53:36,067.067 INFO    ] 200
[2026-06-12 16:53:36,069.069 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:53:36,098.098 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 16:53:36,100.100 INFO    ] No update needed
[2026-06-12 16:53:36,101.101 INFO    ] Checking for camera pi updates...
[2026-06-12 16:53:36,122.122 INFO    ] 200
[2026-06-12 16:53:36,123.123 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:53:36,146.146 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 16:53:36,183.183 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 16:53:36,185.185 INFO    ] No camera update needed
[2026-06-12 16:53:36,186.186 INFO    ] Script finished. Safe exiting...
[2026-06-12 16:53:36,187.187 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 16:53:36,190.190 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 16:53:36,193.193 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 16:53:38,232.232 INFO    ] ================================================
[2026-06-12 16:53:38,248.248 INFO    ] Launching Daemon at Fri Jun 12 16:53:38 IST 2026
[2026-06-12 16:53:38,258.258 INFO    ] ================================================
[2026-06-12 16:53:38,622.622 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 16:53:38
[2026-06-12 16:53:38,967.967 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 16:53:39,122.122 INFO    ] Initializing speech engine...
[2026-06-12 16:53:39,129.129 INFO    ] 2026-06-12 16:53:39
[2026-06-12 16:53:39,337.337 INFO    ] 2026-06-12 16:53:39
[2026-06-12 16:53:39,366.366 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 16:53:39,552.552 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 16:53:39,562.562 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 16:53:39,701.701 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 16:53:39,758.758 INFO    ] time= 12/06/2026 16:53:39
[2026-06-12 16:53:39,783.783 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 16:53:39,788.788 INFO    ] Checking for existing commands in stream...
[2026-06-12 16:53:39,856.856 INFO    ] No existing commands found in stream
[2026-06-12 16:53:44,883.883 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 16:53:44,886.886 INFO    ] Waiting 1.42 seconds before fallback handling...
[2026-06-12 16:53:46,686.686 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 16:53:46,688.688 INFO    ] Checking for system updates...
[2026-06-12 16:53:46,708.708 INFO    ] 200
[2026-06-12 16:53:46,710.710 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:53:46,743.743 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 16:53:46,744.744 INFO    ] No update needed
[2026-06-12 16:53:46,746.746 INFO    ] Checking for camera pi updates...
[2026-06-12 16:53:46,769.769 INFO    ] 200
[2026-06-12 16:53:46,771.771 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:53:46,795.795 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 16:53:46,857.857 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 16:53:46,859.859 INFO    ] No camera update needed
[2026-06-12 16:53:46,861.861 INFO    ] Script finished. Safe exiting...
[2026-06-12 16:53:46,862.862 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 16:53:46,865.865 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 16:53:46,868.868 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 16:53:48,907.907 INFO    ] ================================================
[2026-06-12 16:53:48,923.923 INFO    ] Launching Daemon at Fri Jun 12 16:53:48 IST 2026
[2026-06-12 16:53:48,933.933 INFO    ] ================================================
[2026-06-12 16:53:49,284.284 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 16:53:49
[2026-06-12 16:53:49,597.597 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 16:53:49,727.727 INFO    ] Initializing speech engine...
[2026-06-12 16:53:49,732.732 INFO    ] 2026-06-12 16:53:49
[2026-06-12 16:53:49,950.950 INFO    ] 2026-06-12 16:53:49
[2026-06-12 16:53:49,979.979 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 16:53:50,166.166 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 16:53:50,175.175 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 16:53:50,326.326 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 16:53:50,377.377 INFO    ] time= 12/06/2026 16:53:50
[2026-06-12 16:53:50,398.398 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 16:53:50,404.404 INFO    ] Checking for existing commands in stream...
[2026-06-12 16:53:50,472.472 INFO    ] No existing commands found in stream
[2026-06-12 16:53:55,481.481 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 16:53:55,483.483 INFO    ] Waiting 0.81 seconds before fallback handling...
[2026-06-12 16:53:56,690.690 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 16:53:56,692.692 INFO    ] Checking for system updates...
[2026-06-12 16:53:56,714.714 INFO    ] 200
[2026-06-12 16:53:56,715.715 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:53:56,748.748 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 16:53:56,750.750 INFO    ] No update needed
[2026-06-12 16:53:56,751.751 INFO    ] Checking for camera pi updates...
[2026-06-12 16:53:56,773.773 INFO    ] 200
[2026-06-12 16:53:56,775.775 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:53:56,800.800 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 16:53:56,855.855 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 16:53:56,857.857 INFO    ] No camera update needed
[2026-06-12 16:53:56,858.858 INFO    ] Script finished. Safe exiting...
[2026-06-12 16:53:56,860.860 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 16:53:56,863.863 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 16:53:56,866.866 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 16:53:58,904.904 INFO    ] ================================================
[2026-06-12 16:53:58,920.920 INFO    ] Launching Daemon at Fri Jun 12 16:53:58 IST 2026
[2026-06-12 16:53:58,931.931 INFO    ] ================================================
[2026-06-12 16:53:59,283.283 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 16:53:59
[2026-06-12 16:53:59,594.594 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 16:53:59,736.736 INFO    ] Initializing speech engine...
[2026-06-12 16:53:59,741.741 INFO    ] 2026-06-12 16:53:59
[2026-06-12 16:53:59,946.946 INFO    ] 2026-06-12 16:53:59
[2026-06-12 16:53:59,974.974 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 16:54:00,161.161 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 16:54:00,169.169 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 16:54:00,316.316 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 16:54:00,369.369 INFO    ] time= 12/06/2026 16:54:00
[2026-06-12 16:54:00,393.393 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 16:54:00,399.399 INFO    ] Checking for existing commands in stream...
[2026-06-12 16:54:00,467.467 INFO    ] No existing commands found in stream
[2026-06-12 16:54:05,481.481 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 16:54:05,484.484 INFO    ] Waiting 0.06 seconds before fallback handling...
[2026-06-12 16:54:05,912.912 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 16:54:05,913.913 INFO    ] Checking for system updates...
[2026-06-12 16:54:05,934.934 INFO    ] 200
[2026-06-12 16:54:05,935.935 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:54:05,967.967 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 16:54:05,968.968 INFO    ] No update needed
[2026-06-12 16:54:05,970.970 INFO    ] Checking for camera pi updates...
[2026-06-12 16:54:05,989.989 INFO    ] 200
[2026-06-12 16:54:05,991.991 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:54:06,013.013 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 16:54:06,056.056 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 16:54:06,057.057 INFO    ] No camera update needed
[2026-06-12 16:54:06,058.058 INFO    ] Script finished. Safe exiting...
[2026-06-12 16:54:06,060.060 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 16:54:06,063.063 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 16:54:06,065.065 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 16:54:08,103.103 INFO    ] ================================================
[2026-06-12 16:54:08,119.119 INFO    ] Launching Daemon at Fri Jun 12 16:54:08 IST 2026
[2026-06-12 16:54:08,131.131 INFO    ] ================================================
[2026-06-12 16:54:08,467.467 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 16:54:08
[2026-06-12 16:54:08,783.783 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 16:54:08,916.916 INFO    ] Initializing speech engine...
[2026-06-12 16:54:08,921.921 INFO    ] 2026-06-12 16:54:08
[2026-06-12 16:54:09,130.130 INFO    ] 2026-06-12 16:54:09
[2026-06-12 16:54:09,159.159 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 16:54:09,317.317 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 16:54:09,370.370 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 16:54:09,527.527 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 16:54:09,584.584 INFO    ] time= 12/06/2026 16:54:09
[2026-06-12 16:54:09,633.633 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 16:54:09,635.635 INFO    ] Checking for existing commands in stream...
[2026-06-12 16:54:09,738.738 INFO    ] No existing commands found in stream
[2026-06-12 16:54:14,747.747 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 16:54:14,751.751 INFO    ] Waiting 0.41 seconds before fallback handling...
[2026-06-12 16:54:15,538.538 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 16:54:15,540.540 INFO    ] Checking for system updates...
[2026-06-12 16:54:15,562.562 INFO    ] 200
[2026-06-12 16:54:15,563.563 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:54:15,593.593 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 16:54:15,594.594 INFO    ] No update needed
[2026-06-12 16:54:15,596.596 INFO    ] Checking for camera pi updates...
[2026-06-12 16:54:15,615.615 INFO    ] 200
[2026-06-12 16:54:15,617.617 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:54:15,642.642 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 16:54:15,690.690 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 16:54:15,691.691 INFO    ] No camera update needed
[2026-06-12 16:54:15,693.693 INFO    ] Script finished. Safe exiting...
[2026-06-12 16:54:15,694.694 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 16:54:15,697.697 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 16:54:15,700.700 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 16:54:17,737.737 INFO    ] ================================================
[2026-06-12 16:54:17,753.753 INFO    ] Launching Daemon at Fri Jun 12 16:54:17 IST 2026
[2026-06-12 16:54:17,764.764 INFO    ] ================================================
[2026-06-12 16:54:18,125.125 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 16:54:18
[2026-06-12 16:54:18,444.444 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 16:54:18,587.587 INFO    ] Initializing speech engine...
[2026-06-12 16:54:18,592.592 INFO    ] 2026-06-12 16:54:18
[2026-06-12 16:54:18,797.797 INFO    ] 2026-06-12 16:54:18
[2026-06-12 16:54:18,825.825 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 16:54:19,009.009 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 16:54:19,019.019 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 16:54:19,170.170 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 16:54:19,219.219 INFO    ] time= 12/06/2026 16:54:19
[2026-06-12 16:54:19,241.241 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 16:54:19,247.247 INFO    ] Checking for existing commands in stream...
[2026-06-12 16:54:19,313.313 INFO    ] No existing commands found in stream
[2026-06-12 16:54:24,327.327 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 16:54:24,330.330 INFO    ] Waiting 2.46 seconds before fallback handling...
[2026-06-12 16:54:27,193.193 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 16:54:27,195.195 INFO    ] Checking for system updates...
[2026-06-12 16:54:27,217.217 INFO    ] 200
[2026-06-12 16:54:27,218.218 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:54:27,250.250 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 16:54:27,252.252 INFO    ] No update needed
[2026-06-12 16:54:27,253.253 INFO    ] Checking for camera pi updates...
[2026-06-12 16:54:27,274.274 INFO    ] 200
[2026-06-12 16:54:27,275.275 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:54:27,301.301 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 16:54:27,349.349 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 16:54:27,351.351 INFO    ] No camera update needed
[2026-06-12 16:54:27,352.352 INFO    ] Script finished. Safe exiting...
[2026-06-12 16:54:27,354.354 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 16:54:27,357.357 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 16:54:27,360.360 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 16:54:29,401.401 INFO    ] ================================================
[2026-06-12 16:54:29,417.417 INFO    ] Launching Daemon at Fri Jun 12 16:54:29 IST 2026
[2026-06-12 16:54:29,429.429 INFO    ] ================================================
[2026-06-12 16:54:29,812.812 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 16:54:29
[2026-06-12 16:54:30,157.157 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 16:54:30,312.312 INFO    ] Initializing speech engine...
[2026-06-12 16:54:30,316.316 INFO    ] 2026-06-12 16:54:30
[2026-06-12 16:54:30,527.527 INFO    ] 2026-06-12 16:54:30
[2026-06-12 16:54:30,556.556 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 16:54:30,743.743 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 16:54:30,747.747 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 16:54:30,883.883 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 16:54:30,939.939 INFO    ] time= 12/06/2026 16:54:30
[2026-06-12 16:54:30,978.978 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 16:54:30,985.985 INFO    ] Checking for existing commands in stream...
[2026-06-12 16:54:31,052.052 INFO    ] No existing commands found in stream
[2026-06-12 16:54:36,077.077 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 16:54:36,080.080 INFO    ] Waiting 0.62 seconds before fallback handling...
[2026-06-12 16:54:37,331.331 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 16:54:37,332.332 INFO    ] Checking for system updates...
[2026-06-12 16:54:37,352.352 INFO    ] 200
[2026-06-12 16:54:37,354.354 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:54:37,386.386 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 16:54:37,387.387 INFO    ] No update needed
[2026-06-12 16:54:37,388.388 INFO    ] Checking for camera pi updates...
[2026-06-12 16:54:37,410.410 INFO    ] 200
[2026-06-12 16:54:37,412.412 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:54:37,435.435 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 16:54:37,479.479 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 16:54:37,481.481 INFO    ] No camera update needed
[2026-06-12 16:54:37,482.482 INFO    ] Script finished. Safe exiting...
[2026-06-12 16:54:37,483.483 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 16:54:37,486.486 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 16:54:37,489.489 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 16:54:39,527.527 INFO    ] ================================================
[2026-06-12 16:54:39,543.543 INFO    ] Launching Daemon at Fri Jun 12 16:54:39 IST 2026
[2026-06-12 16:54:39,554.554 INFO    ] ================================================
[2026-06-12 16:54:39,881.881 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 16:54:39
[2026-06-12 16:54:40,195.195 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 16:54:40,337.337 INFO    ] Initializing speech engine...
[2026-06-12 16:54:40,342.342 INFO    ] 2026-06-12 16:54:40
[2026-06-12 16:54:40,547.547 INFO    ] 2026-06-12 16:54:40
[2026-06-12 16:54:40,576.576 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 16:54:40,889.889 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 16:54:40,953.953 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 16:54:42,070.070 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 16:54:42,072.072 INFO    ] time= 12/06/2026 16:54:42
[2026-06-12 16:54:42,073.073 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 16:54:42,075.075 INFO    ] Checking for existing commands in stream...
[2026-06-12 16:54:42,131.131 INFO    ] No existing commands found in stream
[2026-06-12 16:54:47,140.140 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 16:54:47,143.143 INFO    ] Waiting 3.50 seconds before fallback handling...
[2026-06-12 16:54:51,060.060 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 16:54:51,061.061 INFO    ] Checking for system updates...
[2026-06-12 16:54:51,082.082 INFO    ] 200
[2026-06-12 16:54:51,083.083 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:54:51,113.113 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 16:54:51,114.114 INFO    ] No update needed
[2026-06-12 16:54:51,115.115 INFO    ] Checking for camera pi updates...
[2026-06-12 16:54:51,136.136 INFO    ] 200
[2026-06-12 16:54:51,137.137 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:54:51,160.160 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 16:54:51,216.216 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 16:54:51,217.217 INFO    ] No camera update needed
[2026-06-12 16:54:51,219.219 INFO    ] Script finished. Safe exiting...
[2026-06-12 16:54:51,220.220 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 16:54:51,223.223 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 16:54:51,226.226 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 16:54:53,263.263 INFO    ] ================================================
[2026-06-12 16:54:53,279.279 INFO    ] Launching Daemon at Fri Jun 12 16:54:53 IST 2026
[2026-06-12 16:54:53,290.290 INFO    ] ================================================
[2026-06-12 16:54:53,680.680 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 16:54:53
[2026-06-12 16:54:54,022.022 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 16:54:54,177.177 INFO    ] Initializing speech engine...
[2026-06-12 16:54:54,180.180 INFO    ] 2026-06-12 16:54:54
[2026-06-12 16:54:54,391.391 INFO    ] 2026-06-12 16:54:54
[2026-06-12 16:54:54,420.420 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 16:54:54,607.607 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 16:54:54,619.619 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 16:54:54,741.741 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 16:54:54,802.802 INFO    ] time= 12/06/2026 16:54:54
[2026-06-12 16:54:54,833.833 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 16:54:54,844.844 INFO    ] Checking for existing commands in stream...
[2026-06-12 16:54:54,939.939 INFO    ] No existing commands found in stream
[2026-06-12 16:54:59,954.954 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 16:54:59,957.957 INFO    ] Waiting 0.76 seconds before fallback handling...
[2026-06-12 16:55:01,088.088 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 16:55:01,090.090 INFO    ] Checking for system updates...
[2026-06-12 16:55:01,111.111 INFO    ] 200
[2026-06-12 16:55:01,112.112 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:55:01,147.147 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 16:55:01,148.148 INFO    ] No update needed
[2026-06-12 16:55:01,149.149 INFO    ] Checking for camera pi updates...
[2026-06-12 16:55:01,169.169 INFO    ] 200
[2026-06-12 16:55:01,170.170 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:55:01,194.194 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 16:55:01,255.255 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 16:55:01,256.256 INFO    ] No camera update needed
[2026-06-12 16:55:01,258.258 INFO    ] Script finished. Safe exiting...
[2026-06-12 16:55:01,259.259 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 16:55:01,262.262 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 16:55:01,264.264 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 16:55:03,293.293 INFO    ] ================================================
[2026-06-12 16:55:03,301.301 INFO    ] Launching Daemon at Fri Jun 12 16:55:03 IST 2026
[2026-06-12 16:55:03,307.307 INFO    ] ================================================
[2026-06-12 16:55:03,662.662 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 16:55:03
[2026-06-12 16:55:03,979.979 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 16:55:04,116.116 INFO    ] Initializing speech engine...
[2026-06-12 16:55:04,125.125 INFO    ] 2026-06-12 16:55:04
[2026-06-12 16:55:04,351.351 INFO    ] 2026-06-12 16:55:04
[2026-06-12 16:55:04,382.382 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 16:55:04,516.516 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 16:55:04,574.574 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 16:55:04,728.728 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 16:55:04,769.769 INFO    ] time= 12/06/2026 16:55:04
[2026-06-12 16:55:04,813.813 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 16:55:04,836.836 INFO    ] Checking for existing commands in stream...
[2026-06-12 16:55:04,912.912 INFO    ] No existing commands found in stream
[2026-06-12 16:55:09,923.923 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 16:55:09,926.926 INFO    ] Waiting 1.28 seconds before fallback handling...
[2026-06-12 16:55:11,543.543 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 16:55:11,545.545 INFO    ] Checking for system updates...
[2026-06-12 16:55:11,565.565 INFO    ] 200
[2026-06-12 16:55:11,566.566 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:55:11,596.596 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 16:55:11,597.597 INFO    ] No update needed
[2026-06-12 16:55:11,598.598 INFO    ] Checking for camera pi updates...
[2026-06-12 16:55:11,619.619 INFO    ] 200
[2026-06-12 16:55:11,620.620 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:55:11,643.643 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 16:55:11,708.708 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 16:55:11,709.709 INFO    ] No camera update needed
[2026-06-12 16:55:11,710.710 INFO    ] Script finished. Safe exiting...
[2026-06-12 16:55:11,712.712 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 16:55:11,715.715 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 16:55:11,717.717 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 16:55:13,755.755 INFO    ] ================================================
[2026-06-12 16:55:13,770.770 INFO    ] Launching Daemon at Fri Jun 12 16:55:13 IST 2026
[2026-06-12 16:55:13,780.780 INFO    ] ================================================
[2026-06-12 16:55:14,124.124 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 16:55:14
[2026-06-12 16:55:14,436.436 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 16:55:14,568.568 INFO    ] Initializing speech engine...
[2026-06-12 16:55:14,572.572 INFO    ] 2026-06-12 16:55:14
[2026-06-12 16:55:14,783.783 INFO    ] 2026-06-12 16:55:14
[2026-06-12 16:55:14,812.812 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 16:55:14,975.975 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 16:55:15,037.037 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 16:55:15,180.180 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 16:55:15,247.247 INFO    ] time= 12/06/2026 16:55:15
[2026-06-12 16:55:15,287.287 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 16:55:15,289.289 INFO    ] Checking for existing commands in stream...
[2026-06-12 16:55:15,364.364 INFO    ] No existing commands found in stream
[2026-06-12 16:55:20,375.375 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 16:55:20,377.377 INFO    ] Waiting 3.78 seconds before fallback handling...
[2026-06-12 16:55:24,534.534 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 16:55:24,535.535 INFO    ] Checking for system updates...
[2026-06-12 16:55:24,557.557 INFO    ] 200
[2026-06-12 16:55:24,558.558 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:55:24,590.590 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 16:55:24,591.591 INFO    ] No update needed
[2026-06-12 16:55:24,593.593 INFO    ] Checking for camera pi updates...
[2026-06-12 16:55:24,612.612 INFO    ] 200
[2026-06-12 16:55:24,613.613 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:55:24,637.637 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 16:55:24,790.790 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 16:55:24,791.791 INFO    ] No camera update needed
[2026-06-12 16:55:24,792.792 INFO    ] Script finished. Safe exiting...
[2026-06-12 16:55:24,794.794 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 16:55:24,797.797 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 16:55:24,799.799 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 16:55:26,836.836 INFO    ] ================================================
[2026-06-12 16:55:26,852.852 INFO    ] Launching Daemon at Fri Jun 12 16:55:26 IST 2026
[2026-06-12 16:55:26,863.863 INFO    ] ================================================
[2026-06-12 16:55:27,207.207 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 16:55:27
[2026-06-12 16:55:27,542.542 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 16:55:27,697.697 INFO    ] Initializing speech engine...
[2026-06-12 16:55:27,703.703 INFO    ] 2026-06-12 16:55:27
[2026-06-12 16:55:27,910.910 INFO    ] 2026-06-12 16:55:27
[2026-06-12 16:55:27,940.940 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 16:55:28,125.125 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 16:55:28,135.135 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 16:55:28,259.259 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 16:55:28,320.320 INFO    ] time= 12/06/2026 16:55:28
[2026-06-12 16:55:28,355.355 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 16:55:28,361.361 INFO    ] Checking for existing commands in stream...
[2026-06-12 16:55:28,434.434 INFO    ] No existing commands found in stream
[2026-06-12 16:55:33,458.458 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 16:55:33,462.462 INFO    ] Waiting 1.39 seconds before fallback handling...
[2026-06-12 16:55:35,217.217 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 16:55:35,218.218 INFO    ] Checking for system updates...
[2026-06-12 16:55:35,240.240 INFO    ] 200
[2026-06-12 16:55:35,241.241 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:55:35,270.270 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 16:55:35,272.272 INFO    ] No update needed
[2026-06-12 16:55:35,273.273 INFO    ] Checking for camera pi updates...
[2026-06-12 16:55:35,292.292 INFO    ] 200
[2026-06-12 16:55:35,294.294 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:55:35,318.318 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 16:55:35,375.375 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 16:55:35,376.376 INFO    ] No camera update needed
[2026-06-12 16:55:35,377.377 INFO    ] Script finished. Safe exiting...
[2026-06-12 16:55:35,378.378 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 16:55:35,382.382 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 16:55:35,384.384 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 16:55:37,424.424 INFO    ] ================================================
[2026-06-12 16:55:37,439.439 INFO    ] Launching Daemon at Fri Jun 12 16:55:37 IST 2026
[2026-06-12 16:55:37,450.450 INFO    ] ================================================
[2026-06-12 16:55:37,806.806 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 16:55:37
[2026-06-12 16:55:38,121.121 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 16:55:38,253.253 INFO    ] Initializing speech engine...
[2026-06-12 16:55:38,261.261 INFO    ] 2026-06-12 16:55:38
[2026-06-12 16:55:38,472.472 INFO    ] 2026-06-12 16:55:38
[2026-06-12 16:55:38,501.501 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 16:55:38,637.637 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 16:55:38,684.684 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 16:55:38,818.818 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 16:55:38,885.885 INFO    ] time= 12/06/2026 16:55:38
[2026-06-12 16:55:38,911.911 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 16:55:38,917.917 INFO    ] Checking for existing commands in stream...
[2026-06-12 16:55:38,987.987 INFO    ] No existing commands found in stream
[2026-06-12 16:55:43,998.998 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 16:55:44,000.000 INFO    ] Waiting 3.18 seconds before fallback handling...
[2026-06-12 16:55:47,534.534 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 16:55:47,536.536 INFO    ] Checking for system updates...
[2026-06-12 16:55:47,556.556 INFO    ] 200
[2026-06-12 16:55:47,558.558 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:55:47,590.590 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 16:55:47,591.591 INFO    ] No update needed
[2026-06-12 16:55:47,592.592 INFO    ] Checking for camera pi updates...
[2026-06-12 16:55:47,612.612 INFO    ] 200
[2026-06-12 16:55:47,613.613 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:55:47,637.637 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 16:55:47,687.687 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 16:55:47,688.688 INFO    ] No camera update needed
[2026-06-12 16:55:47,689.689 INFO    ] Script finished. Safe exiting...
[2026-06-12 16:55:47,691.691 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 16:55:47,694.694 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 16:55:47,697.697 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 16:55:49,737.737 INFO    ] ================================================
[2026-06-12 16:55:49,752.752 INFO    ] Launching Daemon at Fri Jun 12 16:55:49 IST 2026
[2026-06-12 16:55:49,762.762 INFO    ] ================================================
[2026-06-12 16:55:50,101.101 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 16:55:50
[2026-06-12 16:55:50,416.416 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 16:55:50,560.560 INFO    ] Initializing speech engine...
[2026-06-12 16:55:50,565.565 INFO    ] 2026-06-12 16:55:50
[2026-06-12 16:55:50,770.770 INFO    ] 2026-06-12 16:55:50
[2026-06-12 16:55:50,797.797 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 16:55:50,983.983 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 16:55:50,991.991 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 16:55:51,121.121 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 16:55:51,188.188 INFO    ] time= 12/06/2026 16:55:51
[2026-06-12 16:55:51,212.212 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 16:55:51,218.218 INFO    ] Checking for existing commands in stream...
[2026-06-12 16:55:51,285.285 INFO    ] No existing commands found in stream
[2026-06-12 16:55:56,294.294 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 16:55:56,297.297 INFO    ] Waiting 2.74 seconds before fallback handling...
[2026-06-12 16:55:59,385.385 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 16:55:59,386.386 INFO    ] Checking for system updates...
[2026-06-12 16:55:59,408.408 INFO    ] 200
[2026-06-12 16:55:59,410.410 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:55:59,442.442 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 16:55:59,443.443 INFO    ] No update needed
[2026-06-12 16:55:59,445.445 INFO    ] Checking for camera pi updates...
[2026-06-12 16:55:59,465.465 INFO    ] 200
[2026-06-12 16:55:59,466.466 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:55:59,489.489 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 16:55:59,534.534 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 16:55:59,535.535 INFO    ] No camera update needed
[2026-06-12 16:55:59,536.536 INFO    ] Script finished. Safe exiting...
[2026-06-12 16:55:59,538.538 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 16:55:59,541.541 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 16:55:59,544.544 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 16:56:01,577.577 INFO    ] ================================================
[2026-06-12 16:56:01,591.591 INFO    ] Launching Daemon at Fri Jun 12 16:56:01 IST 2026
[2026-06-12 16:56:01,601.601 INFO    ] ================================================
[2026-06-12 16:56:02,018.018 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 16:56:02
[2026-06-12 16:56:02,392.392 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 16:56:02,545.545 INFO    ] Initializing speech engine...
[2026-06-12 16:56:02,550.550 INFO    ] 2026-06-12 16:56:02
[2026-06-12 16:56:02,761.761 INFO    ] 2026-06-12 16:56:02
[2026-06-12 16:56:02,790.790 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 16:56:02,935.935 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 16:56:02,979.979 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 16:56:03,119.119 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 16:56:03,187.187 INFO    ] time= 12/06/2026 16:56:03
[2026-06-12 16:56:03,212.212 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 16:56:03,214.214 INFO    ] Checking for existing commands in stream...
[2026-06-12 16:56:03,286.286 INFO    ] No existing commands found in stream
[2026-06-12 16:56:08,301.301 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 16:56:08,304.304 INFO    ] Waiting 1.91 seconds before fallback handling...
[2026-06-12 16:56:10,577.577 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 16:56:10,579.579 INFO    ] Checking for system updates...
[2026-06-12 16:56:10,600.600 INFO    ] 200
[2026-06-12 16:56:10,601.601 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:56:10,632.632 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 16:56:10,634.634 INFO    ] No update needed
[2026-06-12 16:56:10,635.635 INFO    ] Checking for camera pi updates...
[2026-06-12 16:56:10,656.656 INFO    ] 200
[2026-06-12 16:56:10,657.657 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:56:10,682.682 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 16:56:10,727.727 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 16:56:10,728.728 INFO    ] No camera update needed
[2026-06-12 16:56:10,730.730 INFO    ] Script finished. Safe exiting...
[2026-06-12 16:56:10,731.731 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 16:56:10,734.734 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 16:56:10,737.737 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 16:56:12,777.777 INFO    ] ================================================
[2026-06-12 16:56:12,793.793 INFO    ] Launching Daemon at Fri Jun 12 16:56:12 IST 2026
[2026-06-12 16:56:12,804.804 INFO    ] ================================================
[2026-06-12 16:56:13,149.149 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 16:56:13
[2026-06-12 16:56:13,465.465 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 16:56:13,598.598 INFO    ] Initializing speech engine...
[2026-06-12 16:56:13,611.611 INFO    ] 2026-06-12 16:56:13
[2026-06-12 16:56:13,816.816 INFO    ] 2026-06-12 16:56:13
[2026-06-12 16:56:13,845.845 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 16:56:14,027.027 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 16:56:14,036.036 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 16:56:14,177.177 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 16:56:14,233.233 INFO    ] time= 12/06/2026 16:56:14
[2026-06-12 16:56:14,257.257 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 16:56:14,264.264 INFO    ] Checking for existing commands in stream...
[2026-06-12 16:56:14,330.330 INFO    ] No existing commands found in stream
[2026-06-12 16:56:19,344.344 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 16:56:19,347.347 INFO    ] Waiting 2.33 seconds before fallback handling...
[2026-06-12 16:56:22,019.019 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 16:56:22,021.021 INFO    ] Checking for system updates...
[2026-06-12 16:56:22,041.041 INFO    ] 200
[2026-06-12 16:56:22,042.042 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:56:22,075.075 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 16:56:22,076.076 INFO    ] No update needed
[2026-06-12 16:56:22,077.077 INFO    ] Checking for camera pi updates...
[2026-06-12 16:56:22,100.100 INFO    ] 200
[2026-06-12 16:56:22,101.101 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:56:22,124.124 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 16:56:22,169.169 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 16:56:22,170.170 INFO    ] No camera update needed
[2026-06-12 16:56:22,172.172 INFO    ] Script finished. Safe exiting...
[2026-06-12 16:56:22,173.173 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 16:56:22,176.176 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 16:56:22,178.178 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 16:56:24,215.215 INFO    ] ================================================
[2026-06-12 16:56:24,231.231 INFO    ] Launching Daemon at Fri Jun 12 16:56:24 IST 2026
[2026-06-12 16:56:24,242.242 INFO    ] ================================================
[2026-06-12 16:56:24,599.599 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 16:56:24
[2026-06-12 16:56:24,939.939 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 16:56:25,097.097 INFO    ] Initializing speech engine...
[2026-06-12 16:56:25,101.101 INFO    ] 2026-06-12 16:56:25
[2026-06-12 16:56:25,310.310 INFO    ] 2026-06-12 16:56:25
[2026-06-12 16:56:25,340.340 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 16:56:25,525.525 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 16:56:25,529.529 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 16:56:25,693.693 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 16:56:25,737.737 INFO    ] time= 12/06/2026 16:56:25
[2026-06-12 16:56:25,760.760 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 16:56:25,766.766 INFO    ] Checking for existing commands in stream...
[2026-06-12 16:56:25,834.834 INFO    ] No existing commands found in stream
[2026-06-12 16:56:30,858.858 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 16:56:30,862.862 INFO    ] Waiting 1.50 seconds before fallback handling...
[2026-06-12 16:56:32,725.725 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 16:56:32,726.726 INFO    ] Checking for system updates...
[2026-06-12 16:56:32,748.748 INFO    ] 200
[2026-06-12 16:56:32,750.750 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:56:32,784.784 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 16:56:32,786.786 INFO    ] No update needed
[2026-06-12 16:56:32,787.787 INFO    ] Checking for camera pi updates...
[2026-06-12 16:56:32,809.809 INFO    ] 200
[2026-06-12 16:56:32,811.811 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:56:32,835.835 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 16:56:32,882.882 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 16:56:32,884.884 INFO    ] No camera update needed
[2026-06-12 16:56:32,885.885 INFO    ] Script finished. Safe exiting...
[2026-06-12 16:56:32,886.886 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 16:56:32,890.890 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 16:56:32,893.893 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 16:56:34,931.931 INFO    ] ================================================
[2026-06-12 16:56:34,946.946 INFO    ] Launching Daemon at Fri Jun 12 16:56:34 IST 2026
[2026-06-12 16:56:34,957.957 INFO    ] ================================================
[2026-06-12 16:56:35,311.311 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 16:56:35
[2026-06-12 16:56:35,627.627 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 16:56:35,771.771 INFO    ] Initializing speech engine...
[2026-06-12 16:56:35,776.776 INFO    ] 2026-06-12 16:56:35
[2026-06-12 16:56:35,980.980 INFO    ] 2026-06-12 16:56:35
[2026-06-12 16:56:36,008.008 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 16:56:36,166.166 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 16:56:36,195.195 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 16:56:36,327.327 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 16:56:36,389.389 INFO    ] time= 12/06/2026 16:56:36
[2026-06-12 16:56:36,421.421 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 16:56:36,423.423 INFO    ] Checking for existing commands in stream...
[2026-06-12 16:56:36,495.495 INFO    ] No existing commands found in stream
[2026-06-12 16:56:41,504.504 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 16:56:41,507.507 INFO    ] Waiting 0.49 seconds before fallback handling...
[2026-06-12 16:56:42,346.346 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 16:56:42,348.348 INFO    ] Checking for system updates...
[2026-06-12 16:56:42,369.369 INFO    ] 200
[2026-06-12 16:56:42,371.371 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:56:42,400.400 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 16:56:42,402.402 INFO    ] No update needed
[2026-06-12 16:56:42,403.403 INFO    ] Checking for camera pi updates...
[2026-06-12 16:56:42,423.423 INFO    ] 200
[2026-06-12 16:56:42,425.425 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:56:42,449.449 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 16:56:42,502.502 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 16:56:42,503.503 INFO    ] No camera update needed
[2026-06-12 16:56:42,505.505 INFO    ] Script finished. Safe exiting...
[2026-06-12 16:56:42,506.506 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 16:56:42,510.510 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 16:56:42,513.513 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 16:56:44,551.551 INFO    ] ================================================
[2026-06-12 16:56:44,566.566 INFO    ] Launching Daemon at Fri Jun 12 16:56:44 IST 2026
[2026-06-12 16:56:44,577.577 INFO    ] ================================================
[2026-06-12 16:56:44,937.937 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 16:56:44
[2026-06-12 16:56:45,254.254 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 16:56:45,394.394 INFO    ] Initializing speech engine...
[2026-06-12 16:56:45,404.404 INFO    ] 2026-06-12 16:56:45
[2026-06-12 16:56:45,608.608 INFO    ] 2026-06-12 16:56:45
[2026-06-12 16:56:45,637.637 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 16:56:45,821.821 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 16:56:45,831.831 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 16:56:45,964.964 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 16:56:46,026.026 INFO    ] time= 12/06/2026 16:56:45
[2026-06-12 16:56:46,049.049 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 16:56:46,051.051 INFO    ] Checking for existing commands in stream...
[2026-06-12 16:56:46,123.123 INFO    ] No existing commands found in stream
[2026-06-12 16:56:51,137.137 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 16:56:51,140.140 INFO    ] Waiting 2.37 seconds before fallback handling...
[2026-06-12 16:56:53,895.895 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 16:56:53,897.897 INFO    ] Checking for system updates...
[2026-06-12 16:56:53,917.917 INFO    ] 200
[2026-06-12 16:56:53,919.919 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:56:53,954.954 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 16:56:53,955.955 INFO    ] No update needed
[2026-06-12 16:56:53,956.956 INFO    ] Checking for camera pi updates...
[2026-06-12 16:56:53,978.978 INFO    ] 200
[2026-06-12 16:56:53,980.980 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:56:54,005.005 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 16:56:54,063.063 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 16:56:54,065.065 INFO    ] No camera update needed
[2026-06-12 16:56:54,066.066 INFO    ] Script finished. Safe exiting...
[2026-06-12 16:56:54,067.067 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 16:56:54,071.071 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 16:56:54,074.074 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 16:56:56,112.112 INFO    ] ================================================
[2026-06-12 16:56:56,128.128 INFO    ] Launching Daemon at Fri Jun 12 16:56:56 IST 2026
[2026-06-12 16:56:56,140.140 INFO    ] ================================================
[2026-06-12 16:56:56,517.517 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 16:56:56
[2026-06-12 16:56:56,828.828 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 16:56:56,960.960 INFO    ] Initializing speech engine...
[2026-06-12 16:56:56,965.965 INFO    ] 2026-06-12 16:56:56
[2026-06-12 16:56:57,155.155 INFO    ] 2026-06-12 16:56:57
[2026-06-12 16:56:57,201.201 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 16:56:57,355.355 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 16:56:57,413.413 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 16:56:57,555.555 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 16:56:57,622.622 INFO    ] time= 12/06/2026 16:56:57
[2026-06-12 16:56:57,650.650 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 16:56:57,656.656 INFO    ] Checking for existing commands in stream...
[2026-06-12 16:56:57,722.722 INFO    ] No existing commands found in stream
[2026-06-12 16:57:02,731.731 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 16:57:02,733.733 INFO    ] Waiting 1.50 seconds before fallback handling...
[2026-06-12 16:57:04,586.586 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 16:57:04,588.588 INFO    ] Checking for system updates...
[2026-06-12 16:57:04,609.609 INFO    ] 200
[2026-06-12 16:57:04,611.611 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:57:04,640.640 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 16:57:04,642.642 INFO    ] No update needed
[2026-06-12 16:57:04,643.643 INFO    ] Checking for camera pi updates...
[2026-06-12 16:57:04,665.665 INFO    ] 200
[2026-06-12 16:57:04,666.666 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:57:04,690.690 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 16:57:04,746.746 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 16:57:04,747.747 INFO    ] No camera update needed
[2026-06-12 16:57:04,749.749 INFO    ] Script finished. Safe exiting...
[2026-06-12 16:57:04,750.750 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 16:57:04,753.753 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 16:57:04,756.756 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 16:57:06,794.794 INFO    ] ================================================
[2026-06-12 16:57:06,810.810 INFO    ] Launching Daemon at Fri Jun 12 16:57:06 IST 2026
[2026-06-12 16:57:06,822.822 INFO    ] ================================================
[2026-06-12 16:57:07,159.159 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 16:57:07
[2026-06-12 16:57:07,471.471 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 16:57:07,603.603 INFO    ] Initializing speech engine...
[2026-06-12 16:57:07,608.608 INFO    ] 2026-06-12 16:57:07
[2026-06-12 16:57:07,835.835 INFO    ] 2026-06-12 16:57:07
[2026-06-12 16:57:07,865.865 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 16:57:08,063.063 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 16:57:08,067.067 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 16:57:08,213.213 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 16:57:08,284.284 INFO    ] time= 12/06/2026 16:57:08
[2026-06-12 16:57:08,310.310 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 16:57:08,316.316 INFO    ] Checking for existing commands in stream...
[2026-06-12 16:57:08,388.388 INFO    ] No existing commands found in stream
[2026-06-12 16:57:13,398.398 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 16:57:13,401.401 INFO    ] Waiting 2.38 seconds before fallback handling...
[2026-06-12 16:57:16,156.156 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 16:57:16,157.157 INFO    ] Checking for system updates...
[2026-06-12 16:57:16,178.178 INFO    ] 200
[2026-06-12 16:57:16,179.179 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:57:16,210.210 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 16:57:16,211.211 INFO    ] No update needed
[2026-06-12 16:57:16,212.212 INFO    ] Checking for camera pi updates...
[2026-06-12 16:57:16,232.232 INFO    ] 200
[2026-06-12 16:57:16,234.234 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:57:16,256.256 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 16:57:16,323.323 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 16:57:16,324.324 INFO    ] No camera update needed
[2026-06-12 16:57:16,325.325 INFO    ] Script finished. Safe exiting...
[2026-06-12 16:57:16,327.327 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 16:57:16,330.330 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 16:57:16,333.333 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 16:57:18,370.370 INFO    ] ================================================
[2026-06-12 16:57:18,386.386 INFO    ] Launching Daemon at Fri Jun 12 16:57:18 IST 2026
[2026-06-12 16:57:18,398.398 INFO    ] ================================================
[2026-06-12 16:57:18,745.745 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 16:57:18
[2026-06-12 16:57:19,056.056 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 16:57:19,193.193 INFO    ] Initializing speech engine...
[2026-06-12 16:57:19,201.201 INFO    ] 2026-06-12 16:57:19
[2026-06-12 16:57:19,408.408 INFO    ] 2026-06-12 16:57:19
[2026-06-12 16:57:19,437.437 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 16:57:19,621.621 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 16:57:19,625.625 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 16:57:19,755.755 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 16:57:19,816.816 INFO    ] time= 12/06/2026 16:57:19
[2026-06-12 16:57:19,846.846 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 16:57:19,856.856 INFO    ] Checking for existing commands in stream...
[2026-06-12 16:57:19,930.930 INFO    ] No existing commands found in stream
[2026-06-12 16:57:24,939.939 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 16:57:24,942.942 INFO    ] Waiting 1.12 seconds before fallback handling...
[2026-06-12 16:57:26,438.438 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 16:57:26,439.439 INFO    ] Checking for system updates...
[2026-06-12 16:57:26,460.460 INFO    ] 200
[2026-06-12 16:57:26,462.462 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:57:26,492.492 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 16:57:26,493.493 INFO    ] No update needed
[2026-06-12 16:57:26,494.494 INFO    ] Checking for camera pi updates...
[2026-06-12 16:57:26,515.515 INFO    ] 200
[2026-06-12 16:57:26,516.516 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:57:26,541.541 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 16:57:26,678.678 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 16:57:26,679.679 INFO    ] No camera update needed
[2026-06-12 16:57:26,681.681 INFO    ] Script finished. Safe exiting...
[2026-06-12 16:57:26,682.682 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 16:57:26,685.685 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 16:57:26,688.688 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 16:57:28,726.726 INFO    ] ================================================
[2026-06-12 16:57:28,741.741 INFO    ] Launching Daemon at Fri Jun 12 16:57:28 IST 2026
[2026-06-12 16:57:28,752.752 INFO    ] ================================================
[2026-06-12 16:57:29,121.121 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 16:57:29
[2026-06-12 16:57:29,457.457 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 16:57:29,606.606 INFO    ] Initializing speech engine...
[2026-06-12 16:57:29,612.612 INFO    ] 2026-06-12 16:57:29
[2026-06-12 16:57:29,820.820 INFO    ] 2026-06-12 16:57:29
[2026-06-12 16:57:29,849.849 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 16:57:29,999.999 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 16:57:30,039.039 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 16:57:30,192.192 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 16:57:30,246.246 INFO    ] time= 12/06/2026 16:57:30
[2026-06-12 16:57:30,268.268 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 16:57:30,275.275 INFO    ] Checking for existing commands in stream...
[2026-06-12 16:57:30,342.342 INFO    ] No existing commands found in stream
[2026-06-12 16:57:35,356.356 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 16:57:35,366.366 INFO    ] Waiting 2.37 seconds before fallback handling...
[2026-06-12 16:57:40,223.223 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 16:57:40,226.226 INFO    ] Checking for system updates...
[2026-06-12 16:57:40,263.263 INFO    ] 200
[2026-06-12 16:57:40,266.266 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:57:40,324.324 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 16:57:40,325.325 INFO    ] No update needed
[2026-06-12 16:57:40,327.327 INFO    ] Checking for camera pi updates...
[2026-06-12 16:57:40,346.346 INFO    ] 200
[2026-06-12 16:57:40,347.347 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:57:40,375.375 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 16:57:40,454.454 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 16:57:40,455.455 INFO    ] No camera update needed
[2026-06-12 16:57:40,457.457 INFO    ] Script finished. Safe exiting...
[2026-06-12 16:57:40,458.458 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 16:57:40,461.461 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 16:57:40,464.464 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 16:57:42,503.503 INFO    ] ================================================
[2026-06-12 16:57:42,518.518 INFO    ] Launching Daemon at Fri Jun 12 16:57:42 IST 2026
[2026-06-12 16:57:42,529.529 INFO    ] ================================================
[2026-06-12 16:57:42,878.878 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 16:57:42
[2026-06-12 16:57:43,212.212 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 16:57:43,361.361 INFO    ] Initializing speech engine...
[2026-06-12 16:57:43,367.367 INFO    ] 2026-06-12 16:57:43
[2026-06-12 16:57:43,574.574 INFO    ] 2026-06-12 16:57:43
[2026-06-12 16:57:43,602.602 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 16:57:43,786.786 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 16:57:43,795.795 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 16:57:43,944.944 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 16:57:43,992.992 INFO    ] time= 12/06/2026 16:57:43
[2026-06-12 16:57:44,013.013 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 16:57:44,020.020 INFO    ] Checking for existing commands in stream...
[2026-06-12 16:57:44,086.086 INFO    ] No existing commands found in stream
[2026-06-12 16:57:49,111.111 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 16:57:49,114.114 INFO    ] Waiting 3.62 seconds before fallback handling...
[2026-06-12 16:57:53,153.153 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 16:57:53,154.154 INFO    ] Checking for system updates...
[2026-06-12 16:57:53,175.175 INFO    ] 200
[2026-06-12 16:57:53,177.177 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:57:53,209.209 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 16:57:53,210.210 INFO    ] No update needed
[2026-06-12 16:57:53,212.212 INFO    ] Checking for camera pi updates...
[2026-06-12 16:57:53,232.232 INFO    ] 200
[2026-06-12 16:57:53,233.233 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:57:53,258.258 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 16:57:53,302.302 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 16:57:53,303.303 INFO    ] No camera update needed
[2026-06-12 16:57:53,304.304 INFO    ] Script finished. Safe exiting...
[2026-06-12 16:57:53,306.306 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 16:57:53,309.309 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 16:57:53,312.312 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 16:57:55,351.351 INFO    ] ================================================
[2026-06-12 16:57:55,366.366 INFO    ] Launching Daemon at Fri Jun 12 16:57:55 IST 2026
[2026-06-12 16:57:55,377.377 INFO    ] ================================================
[2026-06-12 16:57:55,735.735 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 16:57:55
[2026-06-12 16:57:56,048.048 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 16:57:56,189.189 INFO    ] Initializing speech engine...
[2026-06-12 16:57:56,199.199 INFO    ] 2026-06-12 16:57:56
[2026-06-12 16:57:56,412.412 INFO    ] 2026-06-12 16:57:56
[2026-06-12 16:57:56,442.442 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 16:57:56,638.638 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 16:57:56,642.642 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 16:57:56,787.787 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 16:57:56,846.846 INFO    ] time= 12/06/2026 16:57:56
[2026-06-12 16:57:56,874.874 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 16:57:56,885.885 INFO    ] Checking for existing commands in stream...
[2026-06-12 16:57:56,962.962 INFO    ] No existing commands found in stream
[2026-06-12 16:58:01,970.970 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 16:58:01,973.973 INFO    ] Waiting 2.15 seconds before fallback handling...
[2026-06-12 16:58:04,492.492 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 16:58:04,493.493 INFO    ] Checking for system updates...
[2026-06-12 16:58:04,514.514 INFO    ] 200
[2026-06-12 16:58:04,516.516 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:58:04,547.547 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 16:58:04,549.549 INFO    ] No update needed
[2026-06-12 16:58:04,550.550 INFO    ] Checking for camera pi updates...
[2026-06-12 16:58:04,569.569 INFO    ] 200
[2026-06-12 16:58:04,570.570 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:58:04,597.597 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 16:58:04,644.644 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 16:58:04,645.645 INFO    ] No camera update needed
[2026-06-12 16:58:04,647.647 INFO    ] Script finished. Safe exiting...
[2026-06-12 16:58:04,648.648 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 16:58:04,651.651 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 16:58:04,654.654 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 16:58:06,692.692 INFO    ] ================================================
[2026-06-12 16:58:06,708.708 INFO    ] Launching Daemon at Fri Jun 12 16:58:06 IST 2026
[2026-06-12 16:58:06,718.718 INFO    ] ================================================
[2026-06-12 16:58:07,076.076 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 16:58:07
[2026-06-12 16:58:07,388.388 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 16:58:07,531.531 INFO    ] Initializing speech engine...
[2026-06-12 16:58:07,536.536 INFO    ] 2026-06-12 16:58:07
[2026-06-12 16:58:07,738.738 INFO    ] 2026-06-12 16:58:07
[2026-06-12 16:58:07,768.768 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 16:58:07,950.950 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 16:58:07,954.954 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 16:58:08,088.088 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 16:58:08,155.155 INFO    ] time= 12/06/2026 16:58:08
[2026-06-12 16:58:08,179.179 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 16:58:08,186.186 INFO    ] Checking for existing commands in stream...
[2026-06-12 16:58:08,252.252 INFO    ] No existing commands found in stream
[2026-06-12 16:58:13,261.261 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 16:58:13,264.264 INFO    ] Waiting 3.78 seconds before fallback handling...
[2026-06-12 16:58:17,423.423 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 16:58:17,424.424 INFO    ] Checking for system updates...
[2026-06-12 16:58:17,444.444 INFO    ] 200
[2026-06-12 16:58:17,446.446 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:58:17,475.475 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 16:58:17,477.477 INFO    ] No update needed
[2026-06-12 16:58:17,478.478 INFO    ] Checking for camera pi updates...
[2026-06-12 16:58:17,498.498 INFO    ] 200
[2026-06-12 16:58:17,500.500 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:58:17,523.523 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 16:58:17,581.581 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 16:58:17,583.583 INFO    ] No camera update needed
[2026-06-12 16:58:17,584.584 INFO    ] Script finished. Safe exiting...
[2026-06-12 16:58:17,586.586 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 16:58:17,588.588 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 16:58:17,591.591 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 16:58:19,631.631 INFO    ] ================================================
[2026-06-12 16:58:19,646.646 INFO    ] Launching Daemon at Fri Jun 12 16:58:19 IST 2026
[2026-06-12 16:58:19,657.657 INFO    ] ================================================
[2026-06-12 16:58:20,004.004 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 16:58:20
[2026-06-12 16:58:20,316.316 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 16:58:20,458.458 INFO    ] Initializing speech engine...
[2026-06-12 16:58:20,462.462 INFO    ] 2026-06-12 16:58:20
[2026-06-12 16:58:20,665.665 INFO    ] 2026-06-12 16:58:20
[2026-06-12 16:58:20,693.693 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 16:58:20,815.815 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 16:58:20,878.878 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 16:58:21,014.014 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 16:58:21,073.073 INFO    ] time= 12/06/2026 16:58:21
[2026-06-12 16:58:21,105.105 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 16:58:21,111.111 INFO    ] Checking for existing commands in stream...
[2026-06-12 16:58:21,178.178 INFO    ] No existing commands found in stream
[2026-06-12 16:58:26,211.211 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 16:58:26,214.214 INFO    ] Waiting 3.39 seconds before fallback handling...
[2026-06-12 16:58:29,949.949 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 16:58:29,951.951 INFO    ] Checking for system updates...
[2026-06-12 16:58:29,972.972 INFO    ] 200
[2026-06-12 16:58:29,973.973 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:58:30,003.003 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 16:58:30,005.005 INFO    ] No update needed
[2026-06-12 16:58:30,006.006 INFO    ] Checking for camera pi updates...
[2026-06-12 16:58:30,026.026 INFO    ] 200
[2026-06-12 16:58:30,027.027 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:58:30,050.050 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 16:58:30,094.094 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 16:58:30,096.096 INFO    ] No camera update needed
[2026-06-12 16:58:30,097.097 INFO    ] Script finished. Safe exiting...
[2026-06-12 16:58:30,098.098 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 16:58:30,102.102 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 16:58:30,104.104 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 16:58:32,135.135 INFO    ] ================================================
[2026-06-12 16:58:32,144.144 INFO    ] Launching Daemon at Fri Jun 12 16:58:32 IST 2026
[2026-06-12 16:58:32,151.151 INFO    ] ================================================
[2026-06-12 16:58:32,511.511 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 16:58:32
[2026-06-12 16:58:32,857.857 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 16:58:33,007.007 INFO    ] Initializing speech engine...
[2026-06-12 16:58:33,013.013 INFO    ] 2026-06-12 16:58:33
[2026-06-12 16:58:33,218.218 INFO    ] 2026-06-12 16:58:33
[2026-06-12 16:58:33,246.246 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 16:58:33,430.430 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 16:58:33,440.440 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 16:58:33,579.579 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 16:58:33,637.637 INFO    ] time= 12/06/2026 16:58:33
[2026-06-12 16:58:33,660.660 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 16:58:33,666.666 INFO    ] Checking for existing commands in stream...
[2026-06-12 16:58:33,756.756 INFO    ] No existing commands found in stream
[2026-06-12 16:58:38,770.770 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 16:58:38,773.773 INFO    ] Waiting 0.28 seconds before fallback handling...
[2026-06-12 16:58:39,456.456 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 16:58:39,458.458 INFO    ] Checking for system updates...
[2026-06-12 16:58:39,479.479 INFO    ] 200
[2026-06-12 16:58:39,480.480 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:58:39,510.510 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 16:58:39,512.512 INFO    ] No update needed
[2026-06-12 16:58:39,513.513 INFO    ] Checking for camera pi updates...
[2026-06-12 16:58:39,533.533 INFO    ] 200
[2026-06-12 16:58:39,535.535 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:58:39,557.557 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 16:58:39,608.608 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 16:58:39,609.609 INFO    ] No camera update needed
[2026-06-12 16:58:39,611.611 INFO    ] Script finished. Safe exiting...
[2026-06-12 16:58:39,612.612 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 16:58:39,615.615 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 16:58:39,618.618 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 16:58:41,655.655 INFO    ] ================================================
[2026-06-12 16:58:41,670.670 INFO    ] Launching Daemon at Fri Jun 12 16:58:41 IST 2026
[2026-06-12 16:58:41,681.681 INFO    ] ================================================
[2026-06-12 16:58:42,032.032 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 16:58:42
[2026-06-12 16:58:42,344.344 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 16:58:42,474.474 INFO    ] Initializing speech engine...
[2026-06-12 16:58:42,477.477 INFO    ] 2026-06-12 16:58:42
[2026-06-12 16:58:42,694.694 INFO    ] 2026-06-12 16:58:42
[2026-06-12 16:58:42,723.723 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 16:58:42,906.906 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 16:58:42,916.916 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 16:58:43,045.045 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 16:58:43,111.111 INFO    ] time= 12/06/2026 16:58:43
[2026-06-12 16:58:43,135.135 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 16:58:43,141.141 INFO    ] Checking for existing commands in stream...
[2026-06-12 16:58:43,208.208 INFO    ] No existing commands found in stream
[2026-06-12 16:58:48,222.222 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 16:58:48,225.225 INFO    ] Waiting 2.98 seconds before fallback handling...
[2026-06-12 16:58:51,615.615 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 16:58:51,616.616 INFO    ] Checking for system updates...
[2026-06-12 16:58:51,637.637 INFO    ] 200
[2026-06-12 16:58:51,639.639 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:58:51,668.668 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 16:58:51,670.670 INFO    ] No update needed
[2026-06-12 16:58:51,671.671 INFO    ] Checking for camera pi updates...
[2026-06-12 16:58:51,691.691 INFO    ] 200
[2026-06-12 16:58:51,692.692 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:58:51,716.716 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 16:58:51,769.769 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 16:58:51,770.770 INFO    ] No camera update needed
[2026-06-12 16:58:51,771.771 INFO    ] Script finished. Safe exiting...
[2026-06-12 16:58:51,773.773 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 16:58:51,776.776 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 16:58:51,779.779 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 16:58:53,817.817 INFO    ] ================================================
[2026-06-12 16:58:53,832.832 INFO    ] Launching Daemon at Fri Jun 12 16:58:53 IST 2026
[2026-06-12 16:58:53,842.842 INFO    ] ================================================
[2026-06-12 16:58:54,167.167 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 16:58:54
[2026-06-12 16:58:54,479.479 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 16:58:54,609.609 INFO    ] Initializing speech engine...
[2026-06-12 16:58:54,614.614 INFO    ] 2026-06-12 16:58:54
[2026-06-12 16:58:54,832.832 INFO    ] 2026-06-12 16:58:54
[2026-06-12 16:58:54,861.861 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 16:58:55,046.046 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 16:58:55,050.050 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 16:58:55,208.208 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 16:58:55,257.257 INFO    ] time= 12/06/2026 16:58:55
[2026-06-12 16:58:55,279.279 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 16:58:55,285.285 INFO    ] Checking for existing commands in stream...
[2026-06-12 16:58:55,353.353 INFO    ] No existing commands found in stream
[2026-06-12 16:59:00,362.362 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 16:59:00,365.365 INFO    ] Waiting 1.25 seconds before fallback handling...
[2026-06-12 16:59:01,925.925 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 16:59:01,927.927 INFO    ] Checking for system updates...
[2026-06-12 16:59:01,949.949 INFO    ] 200
[2026-06-12 16:59:01,951.951 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:59:01,994.994 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 16:59:01,995.995 INFO    ] No update needed
[2026-06-12 16:59:01,996.996 INFO    ] Checking for camera pi updates...
[2026-06-12 16:59:02,016.016 INFO    ] 200
[2026-06-12 16:59:02,018.018 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:59:02,047.047 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 16:59:02,083.083 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 16:59:02,086.086 INFO    ] No camera update needed
[2026-06-12 16:59:02,088.088 INFO    ] Script finished. Safe exiting...
[2026-06-12 16:59:02,091.091 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 16:59:02,095.095 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 16:59:02,099.099 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 16:59:04,137.137 INFO    ] ================================================
[2026-06-12 16:59:04,152.152 INFO    ] Launching Daemon at Fri Jun 12 16:59:04 IST 2026
[2026-06-12 16:59:04,162.162 INFO    ] ================================================
[2026-06-12 16:59:04,512.512 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 16:59:04
[2026-06-12 16:59:04,823.823 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 16:59:04,954.954 INFO    ] Initializing speech engine...
[2026-06-12 16:59:04,966.966 INFO    ] 2026-06-12 16:59:04
[2026-06-12 16:59:05,175.175 INFO    ] 2026-06-12 16:59:05
[2026-06-12 16:59:05,203.203 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 16:59:05,342.342 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 16:59:05,352.352 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 16:59:05,513.513 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 16:59:05,546.546 INFO    ] time= 12/06/2026 16:59:05
[2026-06-12 16:59:05,605.605 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 16:59:05,638.638 INFO    ] Checking for existing commands in stream...
[2026-06-12 16:59:05,709.709 INFO    ] No existing commands found in stream
[2026-06-12 16:59:10,719.719 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 16:59:10,722.722 INFO    ] Waiting 3.33 seconds before fallback handling...
[2026-06-12 16:59:14,435.435 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 16:59:14,436.436 INFO    ] Checking for system updates...
[2026-06-12 16:59:14,457.457 INFO    ] 200
[2026-06-12 16:59:14,458.458 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:59:14,492.492 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 16:59:14,494.494 INFO    ] No update needed
[2026-06-12 16:59:14,495.495 INFO    ] Checking for camera pi updates...
[2026-06-12 16:59:14,517.517 INFO    ] 200
[2026-06-12 16:59:14,518.518 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:59:14,542.542 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 16:59:14,583.583 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 16:59:14,584.584 INFO    ] No camera update needed
[2026-06-12 16:59:14,586.586 INFO    ] Script finished. Safe exiting...
[2026-06-12 16:59:14,587.587 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 16:59:14,590.590 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 16:59:14,593.593 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 16:59:16,631.631 INFO    ] ================================================
[2026-06-12 16:59:16,646.646 INFO    ] Launching Daemon at Fri Jun 12 16:59:16 IST 2026
[2026-06-12 16:59:16,657.657 INFO    ] ================================================
[2026-06-12 16:59:16,987.987 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 16:59:16
[2026-06-12 16:59:17,303.303 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 16:59:17,434.434 INFO    ] Initializing speech engine...
[2026-06-12 16:59:17,442.442 INFO    ] 2026-06-12 16:59:17
[2026-06-12 16:59:17,654.654 INFO    ] 2026-06-12 16:59:17
[2026-06-12 16:59:17,682.682 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 16:59:17,865.865 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 16:59:17,874.874 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 16:59:18,018.018 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 16:59:18,070.070 INFO    ] time= 12/06/2026 16:59:18
[2026-06-12 16:59:18,093.093 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 16:59:18,098.098 INFO    ] Checking for existing commands in stream...
[2026-06-12 16:59:18,165.165 INFO    ] No existing commands found in stream
[2026-06-12 16:59:23,179.179 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 16:59:23,182.182 INFO    ] Waiting 1.99 seconds before fallback handling...
[2026-06-12 16:59:25,581.581 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 16:59:25,582.582 INFO    ] Checking for system updates...
[2026-06-12 16:59:25,604.604 INFO    ] 200
[2026-06-12 16:59:25,606.606 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:59:25,638.638 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 16:59:25,640.640 INFO    ] No update needed
[2026-06-12 16:59:25,641.641 INFO    ] Checking for camera pi updates...
[2026-06-12 16:59:25,661.661 INFO    ] 200
[2026-06-12 16:59:25,663.663 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:59:25,688.688 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 16:59:25,735.735 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 16:59:25,737.737 INFO    ] No camera update needed
[2026-06-12 16:59:25,738.738 INFO    ] Script finished. Safe exiting...
[2026-06-12 16:59:25,739.739 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 16:59:25,743.743 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 16:59:25,746.746 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 16:59:27,784.784 INFO    ] ================================================
[2026-06-12 16:59:27,799.799 INFO    ] Launching Daemon at Fri Jun 12 16:59:27 IST 2026
[2026-06-12 16:59:27,810.810 INFO    ] ================================================
[2026-06-12 16:59:28,167.167 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 16:59:28
[2026-06-12 16:59:28,478.478 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 16:59:28,612.612 INFO    ] Initializing speech engine...
[2026-06-12 16:59:28,615.615 INFO    ] 2026-06-12 16:59:28
[2026-06-12 16:59:28,824.824 INFO    ] 2026-06-12 16:59:28
[2026-06-12 16:59:28,853.853 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 16:59:29,071.071 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 16:59:29,076.076 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 16:59:29,218.218 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 16:59:29,284.284 INFO    ] time= 12/06/2026 16:59:29
[2026-06-12 16:59:29,322.322 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 16:59:29,324.324 INFO    ] Checking for existing commands in stream...
[2026-06-12 16:59:29,400.400 INFO    ] No existing commands found in stream
[2026-06-12 16:59:34,408.408 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 16:59:34,411.411 INFO    ] Waiting 1.50 seconds before fallback handling...
[2026-06-12 16:59:36,296.296 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 16:59:36,297.297 INFO    ] Checking for system updates...
[2026-06-12 16:59:36,318.318 INFO    ] 200
[2026-06-12 16:59:36,320.320 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:59:36,350.350 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 16:59:36,351.351 INFO    ] No update needed
[2026-06-12 16:59:36,352.352 INFO    ] Checking for camera pi updates...
[2026-06-12 16:59:36,372.372 INFO    ] 200
[2026-06-12 16:59:36,374.374 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:59:36,398.398 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 16:59:36,438.438 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 16:59:36,439.439 INFO    ] No camera update needed
[2026-06-12 16:59:36,440.440 INFO    ] Script finished. Safe exiting...
[2026-06-12 16:59:36,442.442 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 16:59:36,445.445 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 16:59:36,447.447 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 16:59:38,484.484 INFO    ] ================================================
[2026-06-12 16:59:38,499.499 INFO    ] Launching Daemon at Fri Jun 12 16:59:38 IST 2026
[2026-06-12 16:59:38,510.510 INFO    ] ================================================
[2026-06-12 16:59:38,858.858 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 16:59:38
[2026-06-12 16:59:39,169.169 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 16:59:39,311.311 INFO    ] Initializing speech engine...
[2026-06-12 16:59:39,316.316 INFO    ] 2026-06-12 16:59:39
[2026-06-12 16:59:39,518.518 INFO    ] 2026-06-12 16:59:39
[2026-06-12 16:59:39,548.548 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 16:59:39,732.732 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 16:59:39,741.741 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 16:59:39,869.869 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 16:59:39,937.937 INFO    ] time= 12/06/2026 16:59:39
[2026-06-12 16:59:39,961.961 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 16:59:39,968.968 INFO    ] Checking for existing commands in stream...
[2026-06-12 16:59:40,034.034 INFO    ] No existing commands found in stream
[2026-06-12 16:59:45,042.042 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 16:59:45,045.045 INFO    ] Waiting 2.28 seconds before fallback handling...
[2026-06-12 16:59:47,725.725 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 16:59:47,727.727 INFO    ] Checking for system updates...
[2026-06-12 16:59:47,749.749 INFO    ] 200
[2026-06-12 16:59:47,750.750 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:59:47,780.780 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 16:59:47,781.781 INFO    ] No update needed
[2026-06-12 16:59:47,782.782 INFO    ] Checking for camera pi updates...
[2026-06-12 16:59:47,802.802 INFO    ] 200
[2026-06-12 16:59:47,804.804 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:59:47,827.827 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 16:59:47,931.931 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 16:59:47,939.939 INFO    ] No camera update needed
[2026-06-12 16:59:47,941.941 INFO    ] Script finished. Safe exiting...
[2026-06-12 16:59:47,942.942 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 16:59:47,946.946 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 16:59:47,952.952 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 16:59:49,990.990 INFO    ] ================================================
[2026-06-12 16:59:50,004.004 INFO    ] Launching Daemon at Fri Jun 12 16:59:49 IST 2026
[2026-06-12 16:59:50,015.015 INFO    ] ================================================
[2026-06-12 16:59:50,373.373 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 16:59:50
[2026-06-12 16:59:50,704.704 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 16:59:50,843.843 INFO    ] Initializing speech engine...
[2026-06-12 16:59:50,851.851 INFO    ] 2026-06-12 16:59:50
[2026-06-12 16:59:51,066.066 INFO    ] 2026-06-12 16:59:51
[2026-06-12 16:59:51,095.095 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 16:59:51,279.279 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 16:59:51,290.290 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 16:59:51,432.432 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 16:59:51,486.486 INFO    ] time= 12/06/2026 16:59:51
[2026-06-12 16:59:51,508.508 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 16:59:51,514.514 INFO    ] Checking for existing commands in stream...
[2026-06-12 16:59:51,609.609 INFO    ] No existing commands found in stream
[2026-06-12 16:59:56,623.623 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 16:59:56,626.626 INFO    ] Waiting 2.64 seconds before fallback handling...
[2026-06-12 16:59:59,633.633 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 16:59:59,635.635 INFO    ] Checking for system updates...
[2026-06-12 16:59:59,655.655 INFO    ] 200
[2026-06-12 16:59:59,656.656 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:59:59,690.690 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 16:59:59,691.691 INFO    ] No update needed
[2026-06-12 16:59:59,693.693 INFO    ] Checking for camera pi updates...
[2026-06-12 16:59:59,712.712 INFO    ] 200
[2026-06-12 16:59:59,713.713 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 16:59:59,737.737 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 16:59:59,784.784 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 16:59:59,785.785 INFO    ] No camera update needed
[2026-06-12 16:59:59,786.786 INFO    ] Script finished. Safe exiting...
[2026-06-12 16:59:59,787.787 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 16:59:59,790.790 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 16:59:59,793.793 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 17:00:01,871.871 INFO    ] ================================================
[2026-06-12 17:00:01,893.893 INFO    ] Launching Daemon at Fri Jun 12 17:00:01 IST 2026
[2026-06-12 17:00:01,946.946 INFO    ] ================================================
[2026-06-12 17:00:03,278.278 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 17:00:03
[2026-06-12 17:00:04,180.180 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 17:00:04,355.355 INFO    ] Initializing speech engine...
[2026-06-12 17:00:04,359.359 INFO    ] 2026-06-12 17:00:04
[2026-06-12 17:00:04,586.586 INFO    ] 2026-06-12 17:00:04
[2026-06-12 17:00:04,616.616 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 17:00:04,802.802 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 17:00:04,835.835 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 17:00:04,977.977 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 17:00:05,028.028 INFO    ] time= 12/06/2026 17:00:04
[2026-06-12 17:00:05,062.062 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 17:00:05,085.085 INFO    ] Checking for existing commands in stream...
[2026-06-12 17:00:05,162.162 INFO    ] No existing commands found in stream
[2026-06-12 17:00:10,171.171 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 17:00:10,174.174 INFO    ] Waiting 3.63 seconds before fallback handling...
[2026-06-12 17:00:14,228.228 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 17:00:14,231.231 INFO    ] Checking for system updates...
[2026-06-12 17:00:14,271.271 INFO    ] 200
[2026-06-12 17:00:14,273.273 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:00:14,325.325 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 17:00:14,327.327 INFO    ] No update needed
[2026-06-12 17:00:14,330.330 INFO    ] Checking for camera pi updates...
[2026-06-12 17:00:14,360.360 INFO    ] 200
[2026-06-12 17:00:14,362.362 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:00:14,384.384 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 17:00:14,443.443 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 17:00:14,444.444 INFO    ] No camera update needed
[2026-06-12 17:00:14,446.446 INFO    ] Script finished. Safe exiting...
[2026-06-12 17:00:14,447.447 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 17:00:14,450.450 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 17:00:14,453.453 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 17:00:16,490.490 INFO    ] ================================================
[2026-06-12 17:00:16,505.505 INFO    ] Launching Daemon at Fri Jun 12 17:00:16 IST 2026
[2026-06-12 17:00:16,516.516 INFO    ] ================================================
[2026-06-12 17:00:16,866.866 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 17:00:16
[2026-06-12 17:00:17,204.204 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 17:00:17,337.337 INFO    ] Initializing speech engine...
[2026-06-12 17:00:17,345.345 INFO    ] 2026-06-12 17:00:17
[2026-06-12 17:00:17,557.557 INFO    ] 2026-06-12 17:00:17
[2026-06-12 17:00:17,586.586 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 17:00:17,770.770 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 17:00:17,778.778 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 17:00:17,917.917 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 17:00:17,974.974 INFO    ] time= 12/06/2026 17:00:17
[2026-06-12 17:00:17,997.997 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 17:00:18,004.004 INFO    ] Checking for existing commands in stream...
[2026-06-12 17:00:18,071.071 INFO    ] No existing commands found in stream
[2026-06-12 17:00:23,085.085 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 17:00:23,088.088 INFO    ] Waiting 1.77 seconds before fallback handling...
[2026-06-12 17:00:25,258.258 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 17:00:25,259.259 INFO    ] Checking for system updates...
[2026-06-12 17:00:25,280.280 INFO    ] 200
[2026-06-12 17:00:25,282.282 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:00:25,313.313 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 17:00:25,315.315 INFO    ] No update needed
[2026-06-12 17:00:25,316.316 INFO    ] Checking for camera pi updates...
[2026-06-12 17:00:25,335.335 INFO    ] 200
[2026-06-12 17:00:25,337.337 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:00:25,361.361 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 17:00:25,411.411 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 17:00:25,412.412 INFO    ] No camera update needed
[2026-06-12 17:00:25,413.413 INFO    ] Script finished. Safe exiting...
[2026-06-12 17:00:25,415.415 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 17:00:25,418.418 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 17:00:25,421.421 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 17:00:27,458.458 INFO    ] ================================================
[2026-06-12 17:00:27,473.473 INFO    ] Launching Daemon at Fri Jun 12 17:00:27 IST 2026
[2026-06-12 17:00:27,484.484 INFO    ] ================================================
[2026-06-12 17:00:27,848.848 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 17:00:27
[2026-06-12 17:00:28,182.182 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 17:00:28,313.313 INFO    ] Initializing speech engine...
[2026-06-12 17:00:28,317.317 INFO    ] 2026-06-12 17:00:28
[2026-06-12 17:00:28,530.530 INFO    ] 2026-06-12 17:00:28
[2026-06-12 17:00:28,560.560 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 17:00:28,742.742 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 17:00:28,752.752 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 17:00:28,872.872 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 17:00:28,927.927 INFO    ] time= 12/06/2026 17:00:28
[2026-06-12 17:00:28,961.961 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 17:00:28,971.971 INFO    ] Checking for existing commands in stream...
[2026-06-12 17:00:29,042.042 INFO    ] No existing commands found in stream
[2026-06-12 17:00:34,051.051 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 17:00:34,054.054 INFO    ] Waiting 0.76 seconds before fallback handling...
[2026-06-12 17:00:35,190.190 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 17:00:35,192.192 INFO    ] Checking for system updates...
[2026-06-12 17:00:35,213.213 INFO    ] 200
[2026-06-12 17:00:35,215.215 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:00:35,246.246 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 17:00:35,248.248 INFO    ] No update needed
[2026-06-12 17:00:35,249.249 INFO    ] Checking for camera pi updates...
[2026-06-12 17:00:35,268.268 INFO    ] 200
[2026-06-12 17:00:35,270.270 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:00:35,293.293 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 17:00:35,336.336 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 17:00:35,337.337 INFO    ] No camera update needed
[2026-06-12 17:00:35,339.339 INFO    ] Script finished. Safe exiting...
[2026-06-12 17:00:35,340.340 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 17:00:35,343.343 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 17:00:35,346.346 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 17:00:37,383.383 INFO    ] ================================================
[2026-06-12 17:00:37,399.399 INFO    ] Launching Daemon at Fri Jun 12 17:00:37 IST 2026
[2026-06-12 17:00:37,410.410 INFO    ] ================================================
[2026-06-12 17:00:37,775.775 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 17:00:37
[2026-06-12 17:00:38,116.116 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 17:00:38,264.264 INFO    ] Initializing speech engine...
[2026-06-12 17:00:38,269.269 INFO    ] 2026-06-12 17:00:38
[2026-06-12 17:00:38,474.474 INFO    ] 2026-06-12 17:00:38
[2026-06-12 17:00:38,503.503 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 17:00:38,688.688 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 17:00:38,698.698 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 17:00:38,828.828 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 17:00:38,887.887 INFO    ] time= 12/06/2026 17:00:38
[2026-06-12 17:00:38,921.921 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 17:00:38,928.928 INFO    ] Checking for existing commands in stream...
[2026-06-12 17:00:38,995.995 INFO    ] No existing commands found in stream
[2026-06-12 17:00:44,004.004 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 17:00:44,007.007 INFO    ] Waiting 2.86 seconds before fallback handling...
[2026-06-12 17:00:47,252.252 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 17:00:47,253.253 INFO    ] Checking for system updates...
[2026-06-12 17:00:47,275.275 INFO    ] 200
[2026-06-12 17:00:47,276.276 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:00:47,309.309 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 17:00:47,311.311 INFO    ] No update needed
[2026-06-12 17:00:47,312.312 INFO    ] Checking for camera pi updates...
[2026-06-12 17:00:47,332.332 INFO    ] 200
[2026-06-12 17:00:47,334.334 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:00:47,358.358 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 17:00:47,409.409 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 17:00:47,411.411 INFO    ] No camera update needed
[2026-06-12 17:00:47,412.412 INFO    ] Script finished. Safe exiting...
[2026-06-12 17:00:47,413.413 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 17:00:47,416.416 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 17:00:47,419.419 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 17:00:49,458.458 INFO    ] ================================================
[2026-06-12 17:00:49,473.473 INFO    ] Launching Daemon at Fri Jun 12 17:00:49 IST 2026
[2026-06-12 17:00:49,484.484 INFO    ] ================================================
[2026-06-12 17:00:49,811.811 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 17:00:49
[2026-06-12 17:00:50,129.129 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 17:00:50,264.264 INFO    ] Initializing speech engine...
[2026-06-12 17:00:50,268.268 INFO    ] 2026-06-12 17:00:50
[2026-06-12 17:00:50,499.499 INFO    ] 2026-06-12 17:00:50
[2026-06-12 17:00:50,530.530 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 17:00:50,730.730 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 17:00:50,734.734 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 17:00:50,878.878 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 17:00:50,934.934 INFO    ] time= 12/06/2026 17:00:50
[2026-06-12 17:00:50,964.964 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 17:00:50,987.987 INFO    ] Checking for existing commands in stream...
[2026-06-12 17:00:51,065.065 INFO    ] No existing commands found in stream
[2026-06-12 17:00:56,074.074 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 17:00:56,077.077 INFO    ] Waiting 2.32 seconds before fallback handling...
[2026-06-12 17:00:58,776.776 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 17:00:58,778.778 INFO    ] Checking for system updates...
[2026-06-12 17:00:58,800.800 INFO    ] 200
[2026-06-12 17:00:58,801.801 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:00:58,831.831 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 17:00:58,832.832 INFO    ] No update needed
[2026-06-12 17:00:58,834.834 INFO    ] Checking for camera pi updates...
[2026-06-12 17:00:58,854.854 INFO    ] 200
[2026-06-12 17:00:58,855.855 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:00:58,878.878 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 17:00:58,931.931 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 17:00:58,932.932 INFO    ] No camera update needed
[2026-06-12 17:00:58,934.934 INFO    ] Script finished. Safe exiting...
[2026-06-12 17:00:58,935.935 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 17:00:58,938.938 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 17:00:58,941.941 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 17:01:00,978.978 INFO    ] ================================================
[2026-06-12 17:01:00,994.994 INFO    ] Launching Daemon at Fri Jun 12 17:01:00 IST 2026
[2026-06-12 17:01:01,004.004 INFO    ] ================================================
[2026-06-12 17:01:01,330.330 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 17:01:01
[2026-06-12 17:01:01,752.752 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 17:01:01,955.955 INFO    ] Initializing speech engine...
[2026-06-12 17:01:01,959.959 INFO    ] 2026-06-12 17:01:01
[2026-06-12 17:01:02,189.189 INFO    ] 2026-06-12 17:01:02
[2026-06-12 17:01:02,222.222 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 17:01:02,363.363 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 17:01:02,435.435 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 17:01:02,586.586 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 17:01:02,635.635 INFO    ] time= 12/06/2026 17:01:02
[2026-06-12 17:01:02,702.702 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 17:01:02,707.707 INFO    ] Checking for existing commands in stream...
[2026-06-12 17:01:02,776.776 INFO    ] No existing commands found in stream
[2026-06-12 17:01:07,785.785 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 17:01:07,788.788 INFO    ] Waiting 0.42 seconds before fallback handling...
[2026-06-12 17:01:08,566.566 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 17:01:08,567.567 INFO    ] Checking for system updates...
[2026-06-12 17:01:08,587.587 INFO    ] 200
[2026-06-12 17:01:08,589.589 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:01:08,618.618 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 17:01:08,620.620 INFO    ] No update needed
[2026-06-12 17:01:08,621.621 INFO    ] Checking for camera pi updates...
[2026-06-12 17:01:08,641.641 INFO    ] 200
[2026-06-12 17:01:08,643.643 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:01:08,667.667 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 17:01:08,707.707 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 17:01:08,708.708 INFO    ] No camera update needed
[2026-06-12 17:01:08,710.710 INFO    ] Script finished. Safe exiting...
[2026-06-12 17:01:08,711.711 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 17:01:08,714.714 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 17:01:08,717.717 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 17:01:10,754.754 INFO    ] ================================================
[2026-06-12 17:01:10,770.770 INFO    ] Launching Daemon at Fri Jun 12 17:01:10 IST 2026
[2026-06-12 17:01:10,781.781 INFO    ] ================================================
[2026-06-12 17:01:11,129.129 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 17:01:11
[2026-06-12 17:01:11,447.447 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 17:01:11,586.586 INFO    ] Initializing speech engine...
[2026-06-12 17:01:11,596.596 INFO    ] 2026-06-12 17:01:11
[2026-06-12 17:01:11,799.799 INFO    ] 2026-06-12 17:01:11
[2026-06-12 17:01:11,829.829 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 17:01:11,971.971 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 17:01:12,015.015 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 17:01:12,145.145 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 17:01:12,196.196 INFO    ] time= 12/06/2026 17:01:12
[2026-06-12 17:01:12,244.244 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 17:01:12,246.246 INFO    ] Checking for existing commands in stream...
[2026-06-12 17:01:12,317.317 INFO    ] No existing commands found in stream
[2026-06-12 17:01:17,331.331 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 17:01:17,334.334 INFO    ] Waiting 3.74 seconds before fallback handling...
[2026-06-12 17:01:21,456.456 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 17:01:21,457.457 INFO    ] Checking for system updates...
[2026-06-12 17:01:21,478.478 INFO    ] 200
[2026-06-12 17:01:21,479.479 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:01:21,510.510 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 17:01:21,511.511 INFO    ] No update needed
[2026-06-12 17:01:21,512.512 INFO    ] Checking for camera pi updates...
[2026-06-12 17:01:21,533.533 INFO    ] 200
[2026-06-12 17:01:21,534.534 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:01:21,560.560 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 17:01:21,603.603 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 17:01:21,604.604 INFO    ] No camera update needed
[2026-06-12 17:01:21,605.605 INFO    ] Script finished. Safe exiting...
[2026-06-12 17:01:21,607.607 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 17:01:21,610.610 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 17:01:21,613.613 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 17:01:23,652.652 INFO    ] ================================================
[2026-06-12 17:01:23,668.668 INFO    ] Launching Daemon at Fri Jun 12 17:01:23 IST 2026
[2026-06-12 17:01:23,680.680 INFO    ] ================================================
[2026-06-12 17:01:24,028.028 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 17:01:24
[2026-06-12 17:01:24,346.346 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 17:01:24,481.481 INFO    ] Initializing speech engine...
[2026-06-12 17:01:24,485.485 INFO    ] 2026-06-12 17:01:24
[2026-06-12 17:01:24,714.714 INFO    ] 2026-06-12 17:01:24
[2026-06-12 17:01:24,745.745 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 17:01:24,941.941 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 17:01:24,945.945 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 17:01:25,092.092 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 17:01:25,164.164 INFO    ] time= 12/06/2026 17:01:25
[2026-06-12 17:01:25,189.189 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 17:01:25,191.191 INFO    ] Checking for existing commands in stream...
[2026-06-12 17:01:25,265.265 INFO    ] No existing commands found in stream
[2026-06-12 17:01:30,276.276 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 17:01:30,279.279 INFO    ] Waiting 2.12 seconds before fallback handling...
[2026-06-12 17:01:32,727.727 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 17:01:32,728.728 INFO    ] Checking for system updates...
[2026-06-12 17:01:32,749.749 INFO    ] 200
[2026-06-12 17:01:32,750.750 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:01:32,782.782 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 17:01:32,783.783 INFO    ] No update needed
[2026-06-12 17:01:32,785.785 INFO    ] Checking for camera pi updates...
[2026-06-12 17:01:32,804.804 INFO    ] 200
[2026-06-12 17:01:32,805.805 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:01:32,830.830 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 17:01:32,857.857 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 17:01:32,859.859 INFO    ] No camera update needed
[2026-06-12 17:01:32,860.860 INFO    ] Script finished. Safe exiting...
[2026-06-12 17:01:32,861.861 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 17:01:32,864.864 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 17:01:32,867.867 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 17:01:34,904.904 INFO    ] ================================================
[2026-06-12 17:01:34,920.920 INFO    ] Launching Daemon at Fri Jun 12 17:01:34 IST 2026
[2026-06-12 17:01:34,932.932 INFO    ] ================================================
[2026-06-12 17:01:35,305.305 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 17:01:35
[2026-06-12 17:01:35,624.624 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 17:01:35,767.767 INFO    ] Initializing speech engine...
[2026-06-12 17:01:35,777.777 INFO    ] 2026-06-12 17:01:35
[2026-06-12 17:01:35,994.994 INFO    ] 2026-06-12 17:01:35
[2026-06-12 17:01:36,025.025 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 17:01:36,221.221 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 17:01:36,225.225 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 17:01:36,371.371 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 17:01:36,435.435 INFO    ] time= 12/06/2026 17:01:36
[2026-06-12 17:01:36,470.470 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 17:01:36,472.472 INFO    ] Checking for existing commands in stream...
[2026-06-12 17:01:36,546.546 INFO    ] No existing commands found in stream
[2026-06-12 17:01:41,557.557 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 17:01:41,560.560 INFO    ] Waiting 0.22 seconds before fallback handling...
[2026-06-12 17:01:42,150.150 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 17:01:42,152.152 INFO    ] Checking for system updates...
[2026-06-12 17:01:42,174.174 INFO    ] 200
[2026-06-12 17:01:42,175.175 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:01:42,208.208 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 17:01:42,210.210 INFO    ] No update needed
[2026-06-12 17:01:42,211.211 INFO    ] Checking for camera pi updates...
[2026-06-12 17:01:42,231.231 INFO    ] 200
[2026-06-12 17:01:42,233.233 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:01:42,257.257 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 17:01:42,393.393 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 17:01:42,395.395 INFO    ] No camera update needed
[2026-06-12 17:01:42,396.396 INFO    ] Script finished. Safe exiting...
[2026-06-12 17:01:42,397.397 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 17:01:42,401.401 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 17:01:42,404.404 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 17:01:44,444.444 INFO    ] ================================================
[2026-06-12 17:01:44,459.459 INFO    ] Launching Daemon at Fri Jun 12 17:01:44 IST 2026
[2026-06-12 17:01:44,470.470 INFO    ] ================================================
[2026-06-12 17:01:44,838.838 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 17:01:44
[2026-06-12 17:01:45,178.178 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 17:01:45,330.330 INFO    ] Initializing speech engine...
[2026-06-12 17:01:45,336.336 INFO    ] 2026-06-12 17:01:45
[2026-06-12 17:01:45,545.545 INFO    ] 2026-06-12 17:01:45
[2026-06-12 17:01:45,575.575 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 17:01:45,763.763 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 17:01:45,773.773 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 17:01:45,925.925 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 17:01:45,981.981 INFO    ] time= 12/06/2026 17:01:45
[2026-06-12 17:01:45,997.997 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 17:01:46,004.004 INFO    ] Checking for existing commands in stream...
[2026-06-12 17:01:46,072.072 INFO    ] No existing commands found in stream
[2026-06-12 17:01:51,082.082 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 17:01:51,085.085 INFO    ] Waiting 3.82 seconds before fallback handling...
[2026-06-12 17:01:55,864.864 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 17:01:55,867.867 INFO    ] Checking for system updates...
[2026-06-12 17:01:55,905.905 INFO    ] 200
[2026-06-12 17:01:55,907.907 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:01:55,937.937 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 17:01:55,938.938 INFO    ] No update needed
[2026-06-12 17:01:55,939.939 INFO    ] Checking for camera pi updates...
[2026-06-12 17:01:55,958.958 INFO    ] 200
[2026-06-12 17:01:55,960.960 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:01:55,984.984 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 17:01:56,025.025 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 17:01:56,027.027 INFO    ] No camera update needed
[2026-06-12 17:01:56,028.028 INFO    ] Script finished. Safe exiting...
[2026-06-12 17:01:56,029.029 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 17:01:56,032.032 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 17:01:56,035.035 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 17:01:58,073.073 INFO    ] ================================================
[2026-06-12 17:01:58,088.088 INFO    ] Launching Daemon at Fri Jun 12 17:01:58 IST 2026
[2026-06-12 17:01:58,099.099 INFO    ] ================================================
[2026-06-12 17:01:58,440.440 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 17:01:58
[2026-06-12 17:01:58,760.760 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 17:01:58,905.905 INFO    ] Initializing speech engine...
[2026-06-12 17:01:58,911.911 INFO    ] 2026-06-12 17:01:58
[2026-06-12 17:01:59,119.119 INFO    ] 2026-06-12 17:01:59
[2026-06-12 17:01:59,150.150 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 17:01:59,349.349 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 17:01:59,358.358 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 17:01:59,491.491 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 17:01:59,537.537 INFO    ] time= 12/06/2026 17:01:59
[2026-06-12 17:01:59,575.575 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 17:01:59,598.598 INFO    ] Checking for existing commands in stream...
[2026-06-12 17:01:59,675.675 INFO    ] No existing commands found in stream
[2026-06-12 17:02:04,684.684 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 17:02:04,686.686 INFO    ] Waiting 3.12 seconds before fallback handling...
[2026-06-12 17:02:08,173.173 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 17:02:08,174.174 INFO    ] Checking for system updates...
[2026-06-12 17:02:08,196.196 INFO    ] 200
[2026-06-12 17:02:08,197.197 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:02:08,228.228 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 17:02:08,229.229 INFO    ] No update needed
[2026-06-12 17:02:08,231.231 INFO    ] Checking for camera pi updates...
[2026-06-12 17:02:08,252.252 INFO    ] 200
[2026-06-12 17:02:08,254.254 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:02:08,280.280 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 17:02:08,365.365 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 17:02:08,366.366 INFO    ] No camera update needed
[2026-06-12 17:02:08,368.368 INFO    ] Script finished. Safe exiting...
[2026-06-12 17:02:08,369.369 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 17:02:08,372.372 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 17:02:08,375.375 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 17:02:10,417.417 INFO    ] ================================================
[2026-06-12 17:02:10,432.432 INFO    ] Launching Daemon at Fri Jun 12 17:02:10 IST 2026
[2026-06-12 17:02:10,443.443 INFO    ] ================================================
[2026-06-12 17:02:10,773.773 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 17:02:10
[2026-06-12 17:02:11,086.086 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 17:02:11,237.237 INFO    ] Initializing speech engine...
[2026-06-12 17:02:11,243.243 INFO    ] 2026-06-12 17:02:11
[2026-06-12 17:02:11,450.450 INFO    ] 2026-06-12 17:02:11
[2026-06-12 17:02:11,479.479 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 17:02:11,663.663 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 17:02:11,672.672 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 17:02:11,803.803 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 17:02:11,870.870 INFO    ] time= 12/06/2026 17:02:11
[2026-06-12 17:02:11,894.894 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 17:02:11,901.901 INFO    ] Checking for existing commands in stream...
[2026-06-12 17:02:11,967.967 INFO    ] No existing commands found in stream
[2026-06-12 17:02:16,982.982 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 17:02:16,985.985 INFO    ] Waiting 3.61 seconds before fallback handling...
[2026-06-12 17:02:20,977.977 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 17:02:20,978.978 INFO    ] Checking for system updates...
[2026-06-12 17:02:20,999.999 INFO    ] 200
[2026-06-12 17:02:21,001.001 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:02:21,030.030 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 17:02:21,032.032 INFO    ] No update needed
[2026-06-12 17:02:21,033.033 INFO    ] Checking for camera pi updates...
[2026-06-12 17:02:21,054.054 INFO    ] 200
[2026-06-12 17:02:21,055.055 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:02:21,080.080 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 17:02:21,136.136 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 17:02:21,138.138 INFO    ] No camera update needed
[2026-06-12 17:02:21,139.139 INFO    ] Script finished. Safe exiting...
[2026-06-12 17:02:21,140.140 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 17:02:21,144.144 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 17:02:21,146.146 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 17:02:23,184.184 INFO    ] ================================================
[2026-06-12 17:02:23,199.199 INFO    ] Launching Daemon at Fri Jun 12 17:02:23 IST 2026
[2026-06-12 17:02:23,210.210 INFO    ] ================================================
[2026-06-12 17:02:23,582.582 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 17:02:23
[2026-06-12 17:02:23,898.898 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 17:02:24,036.036 INFO    ] Initializing speech engine...
[2026-06-12 17:02:24,045.045 INFO    ] 2026-06-12 17:02:24
[2026-06-12 17:02:24,250.250 INFO    ] 2026-06-12 17:02:24
[2026-06-12 17:02:24,278.278 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 17:02:24,462.462 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 17:02:24,471.471 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 17:02:24,597.597 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 17:02:24,658.658 INFO    ] time= 12/06/2026 17:02:24
[2026-06-12 17:02:24,690.690 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 17:02:24,692.692 INFO    ] Checking for existing commands in stream...
[2026-06-12 17:02:24,761.761 INFO    ] No existing commands found in stream
[2026-06-12 17:02:29,772.772 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 17:02:29,774.774 INFO    ] Waiting 3.78 seconds before fallback handling...
[2026-06-12 17:02:34,139.139 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 17:02:34,141.141 INFO    ] Checking for system updates...
[2026-06-12 17:02:34,163.163 INFO    ] 200
[2026-06-12 17:02:34,164.164 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:02:34,194.194 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 17:02:34,195.195 INFO    ] No update needed
[2026-06-12 17:02:34,196.196 INFO    ] Checking for camera pi updates...
[2026-06-12 17:02:34,216.216 INFO    ] 200
[2026-06-12 17:02:34,217.217 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:02:34,241.241 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 17:02:34,285.285 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 17:02:34,287.287 INFO    ] No camera update needed
[2026-06-12 17:02:34,288.288 INFO    ] Script finished. Safe exiting...
[2026-06-12 17:02:34,289.289 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 17:02:34,293.293 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 17:02:34,295.295 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 17:02:36,332.332 INFO    ] ================================================
[2026-06-12 17:02:36,349.349 INFO    ] Launching Daemon at Fri Jun 12 17:02:36 IST 2026
[2026-06-12 17:02:36,360.360 INFO    ] ================================================
[2026-06-12 17:02:36,715.715 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 17:02:36
[2026-06-12 17:02:37,035.035 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 17:02:37,172.172 INFO    ] Initializing speech engine...
[2026-06-12 17:02:37,182.182 INFO    ] 2026-06-12 17:02:37
[2026-06-12 17:02:37,386.386 INFO    ] 2026-06-12 17:02:37
[2026-06-12 17:02:37,414.414 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 17:02:37,597.597 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 17:02:37,605.605 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 17:02:37,745.745 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 17:02:37,801.801 INFO    ] time= 12/06/2026 17:02:37
[2026-06-12 17:02:37,826.826 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 17:02:37,831.831 INFO    ] Checking for existing commands in stream...
[2026-06-12 17:02:37,898.898 INFO    ] No existing commands found in stream
[2026-06-12 17:02:42,912.912 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 17:02:42,915.915 INFO    ] Waiting 1.38 seconds before fallback handling...
[2026-06-12 17:02:44,697.697 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 17:02:44,698.698 INFO    ] Checking for system updates...
[2026-06-12 17:02:44,719.719 INFO    ] 200
[2026-06-12 17:02:44,720.720 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:02:44,753.753 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 17:02:44,755.755 INFO    ] No update needed
[2026-06-12 17:02:44,757.757 INFO    ] Checking for camera pi updates...
[2026-06-12 17:02:44,776.776 INFO    ] 200
[2026-06-12 17:02:44,777.777 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:02:44,805.805 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 17:02:44,867.867 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 17:02:44,868.868 INFO    ] No camera update needed
[2026-06-12 17:02:44,869.869 INFO    ] Script finished. Safe exiting...
[2026-06-12 17:02:44,871.871 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 17:02:44,874.874 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 17:02:44,876.876 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 17:02:46,916.916 INFO    ] ================================================
[2026-06-12 17:02:46,932.932 INFO    ] Launching Daemon at Fri Jun 12 17:02:46 IST 2026
[2026-06-12 17:02:46,942.942 INFO    ] ================================================
[2026-06-12 17:02:47,331.331 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 17:02:47
[2026-06-12 17:02:47,681.681 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 17:02:47,838.838 INFO    ] Initializing speech engine...
[2026-06-12 17:02:47,842.842 INFO    ] 2026-06-12 17:02:47
[2026-06-12 17:02:48,053.053 INFO    ] 2026-06-12 17:02:48
[2026-06-12 17:02:48,082.082 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 17:02:48,268.268 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 17:02:48,279.279 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 17:02:48,403.403 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 17:02:48,475.475 INFO    ] time= 12/06/2026 17:02:48
[2026-06-12 17:02:48,503.503 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 17:02:48,510.510 INFO    ] Checking for existing commands in stream...
[2026-06-12 17:02:48,577.577 INFO    ] No existing commands found in stream
[2026-06-12 17:02:53,587.587 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 17:02:53,590.590 INFO    ] Waiting 2.21 seconds before fallback handling...
[2026-06-12 17:02:56,199.199 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 17:02:56,201.201 INFO    ] Checking for system updates...
[2026-06-12 17:02:56,222.222 INFO    ] 200
[2026-06-12 17:02:56,223.223 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:02:56,258.258 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 17:02:56,259.259 INFO    ] No update needed
[2026-06-12 17:02:56,261.261 INFO    ] Checking for camera pi updates...
[2026-06-12 17:02:56,281.281 INFO    ] 200
[2026-06-12 17:02:56,283.283 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:02:56,308.308 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 17:02:56,353.353 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 17:02:56,355.355 INFO    ] No camera update needed
[2026-06-12 17:02:56,356.356 INFO    ] Script finished. Safe exiting...
[2026-06-12 17:02:56,357.357 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 17:02:56,360.360 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 17:02:56,363.363 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 17:02:58,394.394 INFO    ] ================================================
[2026-06-12 17:02:58,408.408 INFO    ] Launching Daemon at Fri Jun 12 17:02:58 IST 2026
[2026-06-12 17:02:58,419.419 INFO    ] ================================================
[2026-06-12 17:02:58,785.785 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 17:02:58
[2026-06-12 17:02:59,101.101 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 17:02:59,235.235 INFO    ] Initializing speech engine...
[2026-06-12 17:02:59,238.238 INFO    ] 2026-06-12 17:02:59
[2026-06-12 17:02:59,432.432 INFO    ] 2026-06-12 17:02:59
[2026-06-12 17:02:59,477.477 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 17:02:59,704.704 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 17:02:59,708.708 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 17:02:59,850.850 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 17:02:59,896.896 INFO    ] time= 12/06/2026 17:02:59
[2026-06-12 17:02:59,935.935 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 17:02:59,959.959 INFO    ] Checking for existing commands in stream...
[2026-06-12 17:03:00,035.035 INFO    ] No existing commands found in stream
[2026-06-12 17:03:05,046.046 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 17:03:05,049.049 INFO    ] Waiting 2.92 seconds before fallback handling...
[2026-06-12 17:03:08,324.324 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 17:03:08,326.326 INFO    ] Checking for system updates...
[2026-06-12 17:03:08,423.423 INFO    ] 200
[2026-06-12 17:03:08,425.425 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_HEALTH_CHECK"}
[2026-06-12 17:03:08,426.426 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping update check
[2026-06-12 17:03:08,428.428 INFO    ] Checking for camera pi updates...
[2026-06-12 17:03:08,594.594 INFO    ] 200
[2026-06-12 17:03:08,595.595 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_HEALTH_CHECK"}
[2026-06-12 17:03:08,597.597 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping camera update check
[2026-06-12 17:03:08,598.598 INFO    ] Script finished. Safe exiting...
[2026-06-12 17:03:08,600.600 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 17:03:08,603.603 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 17:03:08,606.606 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 17:03:10,638.638 INFO    ] ================================================
[2026-06-12 17:03:10,654.654 INFO    ] Launching Daemon at Fri Jun 12 17:03:10 IST 2026
[2026-06-12 17:03:10,665.665 INFO    ] ================================================
[2026-06-12 17:03:11,043.043 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 17:03:11
[2026-06-12 17:03:11,360.360 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 17:03:11,494.494 INFO    ] Initializing speech engine...
[2026-06-12 17:03:11,499.499 INFO    ] 2026-06-12 17:03:11
[2026-06-12 17:03:11,714.714 INFO    ] 2026-06-12 17:03:11
[2026-06-12 17:03:11,743.743 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 17:03:11,963.963 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 17:03:11,966.966 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 17:03:12,108.108 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 17:03:12,164.164 INFO    ] time= 12/06/2026 17:03:12
[2026-06-12 17:03:12,215.215 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 17:03:12,222.222 INFO    ] Checking for existing commands in stream...
[2026-06-12 17:03:12,321.321 INFO    ] No existing commands found in stream
[2026-06-12 17:03:17,330.330 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 17:03:17,333.333 INFO    ] Waiting 2.50 seconds before fallback handling...
[2026-06-12 17:03:20,252.252 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 17:03:20,254.254 INFO    ] Checking for system updates...
[2026-06-12 17:03:20,275.275 INFO    ] 200
[2026-06-12 17:03:20,277.277 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:03:20,311.311 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 17:03:20,312.312 INFO    ] No update needed
[2026-06-12 17:03:20,313.313 INFO    ] Checking for camera pi updates...
[2026-06-12 17:03:20,334.334 INFO    ] 200
[2026-06-12 17:03:20,335.335 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:03:20,358.358 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 17:03:20,408.408 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 17:03:20,410.410 INFO    ] No camera update needed
[2026-06-12 17:03:20,411.411 INFO    ] Script finished. Safe exiting...
[2026-06-12 17:03:20,412.412 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 17:03:20,415.415 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 17:03:20,418.418 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 17:03:22,457.457 INFO    ] ================================================
[2026-06-12 17:03:22,473.473 INFO    ] Launching Daemon at Fri Jun 12 17:03:22 IST 2026
[2026-06-12 17:03:22,485.485 INFO    ] ================================================
[2026-06-12 17:03:22,846.846 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 17:03:22
[2026-06-12 17:03:23,157.157 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 17:03:23,288.288 INFO    ] Initializing speech engine...
[2026-06-12 17:03:23,292.292 INFO    ] 2026-06-12 17:03:23
[2026-06-12 17:03:23,510.510 INFO    ] 2026-06-12 17:03:23
[2026-06-12 17:03:23,539.539 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 17:03:23,727.727 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 17:03:23,736.736 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 17:03:23,889.889 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 17:03:23,944.944 INFO    ] time= 12/06/2026 17:03:23
[2026-06-12 17:03:23,961.961 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 17:03:23,967.967 INFO    ] Checking for existing commands in stream...
[2026-06-12 17:03:24,035.035 INFO    ] No existing commands found in stream
[2026-06-12 17:03:29,049.049 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 17:03:29,052.052 INFO    ] Waiting 2.72 seconds before fallback handling...
[2026-06-12 17:03:32,106.106 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 17:03:32,109.109 INFO    ] Checking for system updates...
[2026-06-12 17:03:32,144.144 INFO    ] 200
[2026-06-12 17:03:32,147.147 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:03:32,199.199 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 17:03:32,201.201 INFO    ] No update needed
[2026-06-12 17:03:32,204.204 INFO    ] Checking for camera pi updates...
[2026-06-12 17:03:32,233.233 INFO    ] 200
[2026-06-12 17:03:32,234.234 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:03:32,259.259 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 17:03:32,290.290 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 17:03:32,291.291 INFO    ] No camera update needed
[2026-06-12 17:03:32,293.293 INFO    ] Script finished. Safe exiting...
[2026-06-12 17:03:32,294.294 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 17:03:32,297.297 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 17:03:32,299.299 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 17:03:34,340.340 INFO    ] ================================================
[2026-06-12 17:03:34,355.355 INFO    ] Launching Daemon at Fri Jun 12 17:03:34 IST 2026
[2026-06-12 17:03:34,367.367 INFO    ] ================================================
[2026-06-12 17:03:34,737.737 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 17:03:34
[2026-06-12 17:03:35,080.080 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 17:03:35,222.222 INFO    ] Initializing speech engine...
[2026-06-12 17:03:35,235.235 INFO    ] 2026-06-12 17:03:35
[2026-06-12 17:03:35,449.449 INFO    ] 2026-06-12 17:03:35
[2026-06-12 17:03:35,479.479 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 17:03:35,667.667 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 17:03:35,677.677 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 17:03:35,829.829 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 17:03:35,880.880 INFO    ] time= 12/06/2026 17:03:35
[2026-06-12 17:03:35,903.903 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 17:03:35,908.908 INFO    ] Checking for existing commands in stream...
[2026-06-12 17:03:35,977.977 INFO    ] No existing commands found in stream
[2026-06-12 17:03:41,002.002 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 17:03:41,005.005 INFO    ] Waiting 0.92 seconds before fallback handling...
[2026-06-12 17:03:42,281.281 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 17:03:42,282.282 INFO    ] Checking for system updates...
[2026-06-12 17:03:42,303.303 INFO    ] 200
[2026-06-12 17:03:42,305.305 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:03:42,338.338 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 17:03:42,340.340 INFO    ] No update needed
[2026-06-12 17:03:42,341.341 INFO    ] Checking for camera pi updates...
[2026-06-12 17:03:42,360.360 INFO    ] 200
[2026-06-12 17:03:42,362.362 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:03:42,384.384 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 17:03:42,434.434 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 17:03:42,436.436 INFO    ] No camera update needed
[2026-06-12 17:03:42,437.437 INFO    ] Script finished. Safe exiting...
[2026-06-12 17:03:42,438.438 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 17:03:42,441.441 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 17:03:42,444.444 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 17:03:44,482.482 INFO    ] ================================================
[2026-06-12 17:03:44,498.498 INFO    ] Launching Daemon at Fri Jun 12 17:03:44 IST 2026
[2026-06-12 17:03:44,509.509 INFO    ] ================================================
[2026-06-12 17:03:44,869.869 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 17:03:44
[2026-06-12 17:03:45,213.213 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 17:03:45,369.369 INFO    ] Initializing speech engine...
[2026-06-12 17:03:45,374.374 INFO    ] 2026-06-12 17:03:45
[2026-06-12 17:03:45,580.580 INFO    ] 2026-06-12 17:03:45
[2026-06-12 17:03:45,610.610 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 17:03:45,794.794 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 17:03:45,804.804 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 17:03:45,938.938 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 17:03:46,001.001 INFO    ] time= 12/06/2026 17:03:45
[2026-06-12 17:03:46,023.023 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 17:03:46,030.030 INFO    ] Checking for existing commands in stream...
[2026-06-12 17:03:46,120.120 INFO    ] No existing commands found in stream
[2026-06-12 17:03:51,135.135 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 17:03:51,138.138 INFO    ] Waiting 0.85 seconds before fallback handling...
[2026-06-12 17:03:52,382.382 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 17:03:52,383.383 INFO    ] Checking for system updates...
[2026-06-12 17:03:52,406.406 INFO    ] 200
[2026-06-12 17:03:52,407.407 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:03:52,442.442 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 17:03:52,444.444 INFO    ] No update needed
[2026-06-12 17:03:52,445.445 INFO    ] Checking for camera pi updates...
[2026-06-12 17:03:52,469.469 INFO    ] 200
[2026-06-12 17:03:52,470.470 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:03:52,495.495 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 17:03:52,635.635 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 17:03:52,637.637 INFO    ] No camera update needed
[2026-06-12 17:03:52,638.638 INFO    ] Script finished. Safe exiting...
[2026-06-12 17:03:52,640.640 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 17:03:52,643.643 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 17:03:52,647.647 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 17:03:54,687.687 INFO    ] ================================================
[2026-06-12 17:03:54,703.703 INFO    ] Launching Daemon at Fri Jun 12 17:03:54 IST 2026
[2026-06-12 17:03:54,714.714 INFO    ] ================================================
[2026-06-12 17:03:55,042.042 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 17:03:55
[2026-06-12 17:03:55,354.354 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 17:03:55,486.486 INFO    ] Initializing speech engine...
[2026-06-12 17:03:55,490.490 INFO    ] 2026-06-12 17:03:55
[2026-06-12 17:03:55,682.682 INFO    ] 2026-06-12 17:03:55
[2026-06-12 17:03:55,727.727 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 17:03:55,889.889 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 17:03:55,947.947 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 17:03:56,110.110 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 17:03:56,174.174 INFO    ] time= 12/06/2026 17:03:56
[2026-06-12 17:03:56,210.210 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 17:03:56,216.216 INFO    ] Checking for existing commands in stream...
[2026-06-12 17:03:56,315.315 INFO    ] No existing commands found in stream
[2026-06-12 17:04:01,323.323 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 17:04:01,327.327 INFO    ] Waiting 2.55 seconds before fallback handling...
[2026-06-12 17:04:04,239.239 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 17:04:04,241.241 INFO    ] Checking for system updates...
[2026-06-12 17:04:04,261.261 INFO    ] 200
[2026-06-12 17:04:04,262.262 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:04:04,292.292 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 17:04:04,294.294 INFO    ] No update needed
[2026-06-12 17:04:04,295.295 INFO    ] Checking for camera pi updates...
[2026-06-12 17:04:04,315.315 INFO    ] 200
[2026-06-12 17:04:04,316.316 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:04:04,341.341 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 17:04:04,386.386 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 17:04:04,388.388 INFO    ] No camera update needed
[2026-06-12 17:04:04,389.389 INFO    ] Script finished. Safe exiting...
[2026-06-12 17:04:04,390.390 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 17:04:04,393.393 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 17:04:04,396.396 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 17:04:06,437.437 INFO    ] ================================================
[2026-06-12 17:04:06,452.452 INFO    ] Launching Daemon at Fri Jun 12 17:04:06 IST 2026
[2026-06-12 17:04:06,462.462 INFO    ] ================================================
[2026-06-12 17:04:06,831.831 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 17:04:06
[2026-06-12 17:04:07,146.146 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 17:04:07,280.280 INFO    ] Initializing speech engine...
[2026-06-12 17:04:07,283.283 INFO    ] 2026-06-12 17:04:07
[2026-06-12 17:04:07,512.512 INFO    ] 2026-06-12 17:04:07
[2026-06-12 17:04:07,543.543 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 17:04:07,743.743 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 17:04:07,748.748 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 17:04:07,912.912 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 17:04:07,970.970 INFO    ] time= 12/06/2026 17:04:07
[2026-06-12 17:04:07,994.994 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 17:04:08,001.001 INFO    ] Checking for existing commands in stream...
[2026-06-12 17:04:08,073.073 INFO    ] No existing commands found in stream
[2026-06-12 17:04:13,097.097 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 17:04:13,100.100 INFO    ] Waiting 0.71 seconds before fallback handling...
[2026-06-12 17:04:14,192.192 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 17:04:14,194.194 INFO    ] Checking for system updates...
[2026-06-12 17:04:14,214.214 INFO    ] 200
[2026-06-12 17:04:14,216.216 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:04:14,246.246 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 17:04:14,247.247 INFO    ] No update needed
[2026-06-12 17:04:14,249.249 INFO    ] Checking for camera pi updates...
[2026-06-12 17:04:14,268.268 INFO    ] 200
[2026-06-12 17:04:14,270.270 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:04:14,293.293 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 17:04:14,344.344 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 17:04:14,346.346 INFO    ] No camera update needed
[2026-06-12 17:04:14,347.347 INFO    ] Script finished. Safe exiting...
[2026-06-12 17:04:14,349.349 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 17:04:14,352.352 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 17:04:14,355.355 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 17:04:16,395.395 INFO    ] ================================================
[2026-06-12 17:04:16,411.411 INFO    ] Launching Daemon at Fri Jun 12 17:04:16 IST 2026
[2026-06-12 17:04:16,422.422 INFO    ] ================================================
[2026-06-12 17:04:16,782.782 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 17:04:16
[2026-06-12 17:04:17,100.100 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 17:04:17,232.232 INFO    ] Initializing speech engine...
[2026-06-12 17:04:17,235.235 INFO    ] 2026-06-12 17:04:17
[2026-06-12 17:04:17,453.453 INFO    ] 2026-06-12 17:04:17
[2026-06-12 17:04:17,481.481 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 17:04:17,665.665 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 17:04:17,675.675 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 17:04:17,813.813 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 17:04:17,869.869 INFO    ] time= 12/06/2026 17:04:17
[2026-06-12 17:04:17,893.893 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 17:04:17,899.899 INFO    ] Checking for existing commands in stream...
[2026-06-12 17:04:17,964.964 INFO    ] No existing commands found in stream
[2026-06-12 17:04:22,974.974 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 17:04:22,977.977 INFO    ] Waiting 2.36 seconds before fallback handling...
[2026-06-12 17:04:25,735.735 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 17:04:25,737.737 INFO    ] Checking for system updates...
[2026-06-12 17:04:25,760.760 INFO    ] 200
[2026-06-12 17:04:25,762.762 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:04:25,800.800 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 17:04:25,802.802 INFO    ] No update needed
[2026-06-12 17:04:25,803.803 INFO    ] Checking for camera pi updates...
[2026-06-12 17:04:25,826.826 INFO    ] 200
[2026-06-12 17:04:25,828.828 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:04:25,853.853 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 17:04:25,903.903 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 17:04:25,904.904 INFO    ] No camera update needed
[2026-06-12 17:04:25,906.906 INFO    ] Script finished. Safe exiting...
[2026-06-12 17:04:25,908.908 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 17:04:25,912.912 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 17:04:25,915.915 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 17:04:27,941.941 INFO    ] ================================================
[2026-06-12 17:04:27,951.951 INFO    ] Launching Daemon at Fri Jun 12 17:04:27 IST 2026
[2026-06-12 17:04:27,957.957 INFO    ] ================================================
[2026-06-12 17:04:28,289.289 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 17:04:28
[2026-06-12 17:04:28,636.636 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 17:04:28,785.785 INFO    ] Initializing speech engine...
[2026-06-12 17:04:28,790.790 INFO    ] 2026-06-12 17:04:28
[2026-06-12 17:04:29,000.000 INFO    ] 2026-06-12 17:04:28
[2026-06-12 17:04:29,033.033 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 17:04:29,193.193 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 17:04:29,400.400 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 17:04:29,584.584 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 17:04:29,587.587 INFO    ] time= 12/06/2026 17:04:29
[2026-06-12 17:04:29,614.614 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 17:04:29,615.615 INFO    ] Checking for existing commands in stream...
[2026-06-12 17:04:29,714.714 INFO    ] No existing commands found in stream
[2026-06-12 17:04:34,724.724 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 17:04:34,727.727 INFO    ] Waiting 0.55 seconds before fallback handling...
[2026-06-12 17:04:35,653.653 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 17:04:35,654.654 INFO    ] Checking for system updates...
[2026-06-12 17:04:35,675.675 INFO    ] 200
[2026-06-12 17:04:35,676.676 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:04:35,705.705 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 17:04:35,707.707 INFO    ] No update needed
[2026-06-12 17:04:35,708.708 INFO    ] Checking for camera pi updates...
[2026-06-12 17:04:35,727.727 INFO    ] 200
[2026-06-12 17:04:35,728.728 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:04:35,753.753 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 17:04:35,797.797 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 17:04:35,799.799 INFO    ] No camera update needed
[2026-06-12 17:04:35,801.801 INFO    ] Script finished. Safe exiting...
[2026-06-12 17:04:35,802.802 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 17:04:35,805.805 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 17:04:35,808.808 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 17:04:37,846.846 INFO    ] ================================================
[2026-06-12 17:04:37,861.861 INFO    ] Launching Daemon at Fri Jun 12 17:04:37 IST 2026
[2026-06-12 17:04:37,872.872 INFO    ] ================================================
[2026-06-12 17:04:38,225.225 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 17:04:38
[2026-06-12 17:04:38,542.542 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 17:04:38,677.677 INFO    ] Initializing speech engine...
[2026-06-12 17:04:38,682.682 INFO    ] 2026-06-12 17:04:38
[2026-06-12 17:04:38,912.912 INFO    ] 2026-06-12 17:04:38
[2026-06-12 17:04:38,943.943 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 17:04:39,142.142 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 17:04:39,146.146 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 17:04:39,285.285 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 17:04:39,342.342 INFO    ] time= 12/06/2026 17:04:39
[2026-06-12 17:04:39,371.371 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 17:04:39,394.394 INFO    ] Checking for existing commands in stream...
[2026-06-12 17:04:39,497.497 INFO    ] No existing commands found in stream
[2026-06-12 17:04:44,506.506 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 17:04:44,508.508 INFO    ] Waiting 2.11 seconds before fallback handling...
[2026-06-12 17:04:47,017.017 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 17:04:47,018.018 INFO    ] Checking for system updates...
[2026-06-12 17:04:47,039.039 INFO    ] 200
[2026-06-12 17:04:47,041.041 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:04:47,071.071 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 17:04:47,072.072 INFO    ] No update needed
[2026-06-12 17:04:47,074.074 INFO    ] Checking for camera pi updates...
[2026-06-12 17:04:47,093.093 INFO    ] 200
[2026-06-12 17:04:47,094.094 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:04:47,117.117 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 17:04:47,162.162 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 17:04:47,164.164 INFO    ] No camera update needed
[2026-06-12 17:04:47,165.165 INFO    ] Script finished. Safe exiting...
[2026-06-12 17:04:47,166.166 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 17:04:47,170.170 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 17:04:47,173.173 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 17:04:49,210.210 INFO    ] ================================================
[2026-06-12 17:04:49,225.225 INFO    ] Launching Daemon at Fri Jun 12 17:04:49 IST 2026
[2026-06-12 17:04:49,236.236 INFO    ] ================================================
[2026-06-12 17:04:49,582.582 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 17:04:49
[2026-06-12 17:04:49,899.899 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 17:04:50,043.043 INFO    ] Initializing speech engine...
[2026-06-12 17:04:50,048.048 INFO    ] 2026-06-12 17:04:50
[2026-06-12 17:04:50,251.251 INFO    ] 2026-06-12 17:04:50
[2026-06-12 17:04:50,279.279 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 17:04:50,463.463 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 17:04:50,472.472 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 17:04:50,611.611 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 17:04:50,668.668 INFO    ] time= 12/06/2026 17:04:50
[2026-06-12 17:04:50,692.692 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 17:04:50,698.698 INFO    ] Checking for existing commands in stream...
[2026-06-12 17:04:50,765.765 INFO    ] No existing commands found in stream
[2026-06-12 17:04:55,777.777 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 17:04:55,779.779 INFO    ] Waiting 0.33 seconds before fallback handling...
[2026-06-12 17:04:56,447.447 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 17:04:56,450.450 INFO    ] Checking for system updates...
[2026-06-12 17:04:56,486.486 INFO    ] 200
[2026-06-12 17:04:56,489.489 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:04:56,547.547 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 17:04:56,550.550 INFO    ] No update needed
[2026-06-12 17:04:56,552.552 INFO    ] Checking for camera pi updates...
[2026-06-12 17:04:56,585.585 INFO    ] 200
[2026-06-12 17:04:56,586.586 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:04:56,609.609 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 17:04:56,655.655 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 17:04:56,656.656 INFO    ] No camera update needed
[2026-06-12 17:04:56,658.658 INFO    ] Script finished. Safe exiting...
[2026-06-12 17:04:56,659.659 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 17:04:56,662.662 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 17:04:56,665.665 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 17:04:58,704.704 INFO    ] ================================================
[2026-06-12 17:04:58,720.720 INFO    ] Launching Daemon at Fri Jun 12 17:04:58 IST 2026
[2026-06-12 17:04:58,731.731 INFO    ] ================================================
[2026-06-12 17:04:59,103.103 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 17:04:59
[2026-06-12 17:04:59,419.419 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 17:04:59,555.555 INFO    ] Initializing speech engine...
[2026-06-12 17:04:59,558.558 INFO    ] 2026-06-12 17:04:59
[2026-06-12 17:04:59,762.762 INFO    ] 2026-06-12 17:04:59
[2026-06-12 17:04:59,796.796 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 17:05:00,018.018 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 17:05:00,028.028 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 17:05:00,166.166 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 17:05:00,227.227 INFO    ] time= 12/06/2026 17:05:00
[2026-06-12 17:05:00,262.262 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 17:05:00,268.268 INFO    ] Checking for existing commands in stream...
[2026-06-12 17:05:00,370.370 INFO    ] No existing commands found in stream
[2026-06-12 17:05:05,379.379 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 17:05:05,382.382 INFO    ] Waiting 3.94 seconds before fallback handling...
[2026-06-12 17:05:09,715.715 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 17:05:09,716.716 INFO    ] Checking for system updates...
[2026-06-12 17:05:09,737.737 INFO    ] 200
[2026-06-12 17:05:09,738.738 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:05:09,770.770 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 17:05:09,772.772 INFO    ] No update needed
[2026-06-12 17:05:09,773.773 INFO    ] Checking for camera pi updates...
[2026-06-12 17:05:09,793.793 INFO    ] 200
[2026-06-12 17:05:09,794.794 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:05:09,817.817 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 17:05:09,869.869 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 17:05:09,870.870 INFO    ] No camera update needed
[2026-06-12 17:05:09,872.872 INFO    ] Script finished. Safe exiting...
[2026-06-12 17:05:09,873.873 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 17:05:09,876.876 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 17:05:09,879.879 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 17:05:11,917.917 INFO    ] ================================================
[2026-06-12 17:05:11,933.933 INFO    ] Launching Daemon at Fri Jun 12 17:05:11 IST 2026
[2026-06-12 17:05:11,944.944 INFO    ] ================================================
[2026-06-12 17:05:12,300.300 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 17:05:12
[2026-06-12 17:05:12,636.636 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 17:05:12,788.788 INFO    ] Initializing speech engine...
[2026-06-12 17:05:12,794.794 INFO    ] 2026-06-12 17:05:12
[2026-06-12 17:05:13,003.003 INFO    ] 2026-06-12 17:05:12
[2026-06-12 17:05:13,031.031 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 17:05:13,216.216 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 17:05:13,226.226 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 17:05:13,407.407 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 17:05:13,446.446 INFO    ] time= 12/06/2026 17:05:13
[2026-06-12 17:05:13,451.451 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 17:05:13,453.453 INFO    ] Checking for existing commands in stream...
[2026-06-12 17:05:13,520.520 INFO    ] No existing commands found in stream
[2026-06-12 17:05:18,535.535 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 17:05:18,538.538 INFO    ] Waiting 0.19 seconds before fallback handling...
[2026-06-12 17:05:19,108.108 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 17:05:19,109.109 INFO    ] Checking for system updates...
[2026-06-12 17:05:19,130.130 INFO    ] 200
[2026-06-12 17:05:19,132.132 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:05:19,164.164 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 17:05:19,166.166 INFO    ] No update needed
[2026-06-12 17:05:19,167.167 INFO    ] Checking for camera pi updates...
[2026-06-12 17:05:19,189.189 INFO    ] 200
[2026-06-12 17:05:19,191.191 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:05:19,215.215 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 17:05:19,277.277 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 17:05:19,278.278 INFO    ] No camera update needed
[2026-06-12 17:05:19,280.280 INFO    ] Script finished. Safe exiting...
[2026-06-12 17:05:19,281.281 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 17:05:19,285.285 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 17:05:19,288.288 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 17:05:21,319.319 INFO    ] ================================================
[2026-06-12 17:05:21,335.335 INFO    ] Launching Daemon at Fri Jun 12 17:05:21 IST 2026
[2026-06-12 17:05:21,345.345 INFO    ] ================================================
[2026-06-12 17:05:21,714.714 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 17:05:21
[2026-06-12 17:05:22,032.032 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 17:05:22,175.175 INFO    ] Initializing speech engine...
[2026-06-12 17:05:22,179.179 INFO    ] 2026-06-12 17:05:22
[2026-06-12 17:05:22,397.397 INFO    ] 2026-06-12 17:05:22
[2026-06-12 17:05:22,426.426 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 17:05:22,640.640 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 17:05:22,645.645 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 17:05:22,822.822 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 17:05:22,848.848 INFO    ] time= 12/06/2026 17:05:22
[2026-06-12 17:05:22,853.853 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 17:05:22,855.855 INFO    ] Checking for existing commands in stream...
[2026-06-12 17:05:22,923.923 INFO    ] No existing commands found in stream
[2026-06-12 17:05:27,937.937 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 17:05:27,940.940 INFO    ] Waiting 1.06 seconds before fallback handling...
[2026-06-12 17:05:29,426.426 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 17:05:29,429.429 INFO    ] Checking for system updates...
[2026-06-12 17:05:29,464.464 INFO    ] 200
[2026-06-12 17:05:29,467.467 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:05:29,538.538 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 17:05:29,541.541 INFO    ] No update needed
[2026-06-12 17:05:29,543.543 INFO    ] Checking for camera pi updates...
[2026-06-12 17:05:29,563.563 INFO    ] 200
[2026-06-12 17:05:29,565.565 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:05:29,587.587 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 17:05:29,629.629 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 17:05:29,633.633 INFO    ] No camera update needed
[2026-06-12 17:05:29,635.635 INFO    ] Script finished. Safe exiting...
[2026-06-12 17:05:29,636.636 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 17:05:29,639.639 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 17:05:29,642.642 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 17:05:31,683.683 INFO    ] ================================================
[2026-06-12 17:05:31,700.700 INFO    ] Launching Daemon at Fri Jun 12 17:05:31 IST 2026
[2026-06-12 17:05:31,712.712 INFO    ] ================================================
[2026-06-12 17:05:32,077.077 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 17:05:32
[2026-06-12 17:05:32,451.451 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 17:05:32,582.582 INFO    ] Initializing speech engine...
[2026-06-12 17:05:32,587.587 INFO    ] 2026-06-12 17:05:32
[2026-06-12 17:05:32,816.816 INFO    ] 2026-06-12 17:05:32
[2026-06-12 17:05:32,846.846 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 17:05:33,043.043 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 17:05:33,047.047 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 17:05:33,192.192 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 17:05:33,249.249 INFO    ] time= 12/06/2026 17:05:33
[2026-06-12 17:05:33,284.284 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 17:05:33,295.295 INFO    ] Checking for existing commands in stream...
[2026-06-12 17:05:33,372.372 INFO    ] No existing commands found in stream
[2026-06-12 17:05:38,396.396 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 17:05:38,399.399 INFO    ] Waiting 0.77 seconds before fallback handling...
[2026-06-12 17:05:39,571.571 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 17:05:39,572.572 INFO    ] Checking for system updates...
[2026-06-12 17:05:39,592.592 INFO    ] 200
[2026-06-12 17:05:39,594.594 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:05:39,623.623 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 17:05:39,624.624 INFO    ] No update needed
[2026-06-12 17:05:39,626.626 INFO    ] Checking for camera pi updates...
[2026-06-12 17:05:39,645.645 INFO    ] 200
[2026-06-12 17:05:39,647.647 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:05:39,673.673 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 17:05:39,717.717 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 17:05:39,718.718 INFO    ] No camera update needed
[2026-06-12 17:05:39,720.720 INFO    ] Script finished. Safe exiting...
[2026-06-12 17:05:39,721.721 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 17:05:39,724.724 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 17:05:39,727.727 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 17:05:41,766.766 INFO    ] ================================================
[2026-06-12 17:05:41,781.781 INFO    ] Launching Daemon at Fri Jun 12 17:05:41 IST 2026
[2026-06-12 17:05:41,792.792 INFO    ] ================================================
[2026-06-12 17:05:42,128.128 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 17:05:42
[2026-06-12 17:05:42,442.442 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 17:05:42,585.585 INFO    ] Initializing speech engine...
[2026-06-12 17:05:42,590.590 INFO    ] 2026-06-12 17:05:42
[2026-06-12 17:05:42,796.796 INFO    ] 2026-06-12 17:05:42
[2026-06-12 17:05:42,826.826 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 17:05:43,012.012 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 17:05:43,015.015 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 17:05:43,153.153 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 17:05:43,217.217 INFO    ] time= 12/06/2026 17:05:43
[2026-06-12 17:05:43,244.244 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 17:05:43,251.251 INFO    ] Checking for existing commands in stream...
[2026-06-12 17:05:43,318.318 INFO    ] No existing commands found in stream
[2026-06-12 17:05:48,327.327 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 17:05:48,330.330 INFO    ] Waiting 2.36 seconds before fallback handling...
[2026-06-12 17:05:51,090.090 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 17:05:51,092.092 INFO    ] Checking for system updates...
[2026-06-12 17:05:51,114.114 INFO    ] 200
[2026-06-12 17:05:51,115.115 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:05:51,147.147 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 17:05:51,149.149 INFO    ] No update needed
[2026-06-12 17:05:51,150.150 INFO    ] Checking for camera pi updates...
[2026-06-12 17:05:51,172.172 INFO    ] 200
[2026-06-12 17:05:51,173.173 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:05:51,199.199 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 17:05:51,244.244 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 17:05:51,246.246 INFO    ] No camera update needed
[2026-06-12 17:05:51,247.247 INFO    ] Script finished. Safe exiting...
[2026-06-12 17:05:51,248.248 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 17:05:51,252.252 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 17:05:51,255.255 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 17:05:53,294.294 INFO    ] ================================================
[2026-06-12 17:05:53,309.309 INFO    ] Launching Daemon at Fri Jun 12 17:05:53 IST 2026
[2026-06-12 17:05:53,321.321 INFO    ] ================================================
[2026-06-12 17:05:53,704.704 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 17:05:53
[2026-06-12 17:05:54,042.042 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 17:05:54,193.193 INFO    ] Initializing speech engine...
[2026-06-12 17:05:54,198.198 INFO    ] 2026-06-12 17:05:54
[2026-06-12 17:05:54,408.408 INFO    ] 2026-06-12 17:05:54
[2026-06-12 17:05:54,438.438 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 17:05:54,609.609 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 17:05:54,629.629 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 17:05:54,784.784 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 17:05:54,845.845 INFO    ] time= 12/06/2026 17:05:54
[2026-06-12 17:05:54,862.862 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 17:05:54,868.868 INFO    ] Checking for existing commands in stream...
[2026-06-12 17:05:54,936.936 INFO    ] No existing commands found in stream
[2026-06-12 17:05:59,951.951 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 17:05:59,954.954 INFO    ] Waiting 3.94 seconds before fallback handling...
[2026-06-12 17:06:04,300.300 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 17:06:04,302.302 INFO    ] Checking for system updates...
[2026-06-12 17:06:04,323.323 INFO    ] 200
[2026-06-12 17:06:04,325.325 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:06:04,357.357 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 17:06:04,359.359 INFO    ] No update needed
[2026-06-12 17:06:04,360.360 INFO    ] Checking for camera pi updates...
[2026-06-12 17:06:04,380.380 INFO    ] 200
[2026-06-12 17:06:04,381.381 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:06:04,408.408 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 17:06:04,453.453 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 17:06:04,454.454 INFO    ] No camera update needed
[2026-06-12 17:06:04,456.456 INFO    ] Script finished. Safe exiting...
[2026-06-12 17:06:04,457.457 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 17:06:04,460.460 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 17:06:04,463.463 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 17:06:06,502.502 INFO    ] ================================================
[2026-06-12 17:06:06,517.517 INFO    ] Launching Daemon at Fri Jun 12 17:06:06 IST 2026
[2026-06-12 17:06:06,528.528 INFO    ] ================================================
[2026-06-12 17:06:06,876.876 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 17:06:06
[2026-06-12 17:06:07,214.214 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 17:06:07,367.367 INFO    ] Initializing speech engine...
[2026-06-12 17:06:07,372.372 INFO    ] 2026-06-12 17:06:07
[2026-06-12 17:06:07,579.579 INFO    ] 2026-06-12 17:06:07
[2026-06-12 17:06:07,608.608 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 17:06:07,791.791 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 17:06:07,802.802 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 17:06:07,941.941 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 17:06:07,999.999 INFO    ] time= 12/06/2026 17:06:07
[2026-06-12 17:06:08,022.022 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 17:06:08,028.028 INFO    ] Checking for existing commands in stream...
[2026-06-12 17:06:08,095.095 INFO    ] No existing commands found in stream
[2026-06-12 17:06:13,109.109 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 17:06:13,113.113 INFO    ] Waiting 2.22 seconds before fallback handling...
[2026-06-12 17:06:15,761.761 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 17:06:15,763.763 INFO    ] Checking for system updates...
[2026-06-12 17:06:15,783.783 INFO    ] 200
[2026-06-12 17:06:15,785.785 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:06:15,814.814 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 17:06:15,816.816 INFO    ] No update needed
[2026-06-12 17:06:15,817.817 INFO    ] Checking for camera pi updates...
[2026-06-12 17:06:15,836.836 INFO    ] 200
[2026-06-12 17:06:15,838.838 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:06:15,860.860 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 17:06:15,905.905 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 17:06:15,907.907 INFO    ] No camera update needed
[2026-06-12 17:06:15,908.908 INFO    ] Script finished. Safe exiting...
[2026-06-12 17:06:15,909.909 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 17:06:15,912.912 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 17:06:15,915.915 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 17:06:17,953.953 INFO    ] ================================================
[2026-06-12 17:06:17,968.968 INFO    ] Launching Daemon at Fri Jun 12 17:06:17 IST 2026
[2026-06-12 17:06:17,980.980 INFO    ] ================================================
[2026-06-12 17:06:18,337.337 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 17:06:18
[2026-06-12 17:06:18,678.678 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 17:06:18,825.825 INFO    ] Initializing speech engine...
[2026-06-12 17:06:18,835.835 INFO    ] 2026-06-12 17:06:18
[2026-06-12 17:06:19,045.045 INFO    ] 2026-06-12 17:06:19
[2026-06-12 17:06:19,074.074 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 17:06:19,257.257 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 17:06:19,261.261 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 17:06:19,418.418 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 17:06:19,466.466 INFO    ] time= 12/06/2026 17:06:19
[2026-06-12 17:06:19,488.488 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 17:06:19,494.494 INFO    ] Checking for existing commands in stream...
[2026-06-12 17:06:19,560.560 INFO    ] No existing commands found in stream
[2026-06-12 17:06:24,575.575 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 17:06:24,578.578 INFO    ] Waiting 0.08 seconds before fallback handling...
[2026-06-12 17:06:25,053.053 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 17:06:25,054.054 INFO    ] Checking for system updates...
[2026-06-12 17:06:25,074.074 INFO    ] 200
[2026-06-12 17:06:25,076.076 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:06:25,107.107 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 17:06:25,109.109 INFO    ] No update needed
[2026-06-12 17:06:25,110.110 INFO    ] Checking for camera pi updates...
[2026-06-12 17:06:25,129.129 INFO    ] 200
[2026-06-12 17:06:25,131.131 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:06:25,153.153 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 17:06:25,221.221 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 17:06:25,223.223 INFO    ] No camera update needed
[2026-06-12 17:06:25,224.224 INFO    ] Script finished. Safe exiting...
[2026-06-12 17:06:25,225.225 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 17:06:25,228.228 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 17:06:25,231.231 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 17:06:27,268.268 INFO    ] ================================================
[2026-06-12 17:06:27,283.283 INFO    ] Launching Daemon at Fri Jun 12 17:06:27 IST 2026
[2026-06-12 17:06:27,294.294 INFO    ] ================================================
[2026-06-12 17:06:27,616.616 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 17:06:27
[2026-06-12 17:06:27,930.930 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 17:06:28,073.073 INFO    ] Initializing speech engine...
[2026-06-12 17:06:28,078.078 INFO    ] 2026-06-12 17:06:28
[2026-06-12 17:06:28,284.284 INFO    ] 2026-06-12 17:06:28
[2026-06-12 17:06:28,313.313 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 17:06:28,442.442 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 17:06:28,503.503 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 17:06:28,644.644 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 17:06:28,711.711 INFO    ] time= 12/06/2026 17:06:28
[2026-06-12 17:06:28,735.735 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 17:06:28,742.742 INFO    ] Checking for existing commands in stream...
[2026-06-12 17:06:28,810.810 INFO    ] No existing commands found in stream
[2026-06-12 17:06:33,819.819 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 17:06:33,822.822 INFO    ] Waiting 3.86 seconds before fallback handling...
[2026-06-12 17:06:38,080.080 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 17:06:38,081.081 INFO    ] Checking for system updates...
[2026-06-12 17:06:38,102.102 INFO    ] 200
[2026-06-12 17:06:38,103.103 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:06:38,133.133 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 17:06:38,135.135 INFO    ] No update needed
[2026-06-12 17:06:38,136.136 INFO    ] Checking for camera pi updates...
[2026-06-12 17:06:38,157.157 INFO    ] 200
[2026-06-12 17:06:38,158.158 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:06:38,181.181 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 17:06:38,223.223 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 17:06:38,224.224 INFO    ] No camera update needed
[2026-06-12 17:06:38,225.225 INFO    ] Script finished. Safe exiting...
[2026-06-12 17:06:38,227.227 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 17:06:38,230.230 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 17:06:38,233.233 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 17:06:40,273.273 INFO    ] ================================================
[2026-06-12 17:06:40,289.289 INFO    ] Launching Daemon at Fri Jun 12 17:06:40 IST 2026
[2026-06-12 17:06:40,300.300 INFO    ] ================================================
[2026-06-12 17:06:40,647.647 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 17:06:40
[2026-06-12 17:06:40,967.967 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 17:06:41,106.106 INFO    ] Initializing speech engine...
[2026-06-12 17:06:41,116.116 INFO    ] 2026-06-12 17:06:41
[2026-06-12 17:06:41,321.321 INFO    ] 2026-06-12 17:06:41
[2026-06-12 17:06:41,350.350 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 17:06:41,533.533 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 17:06:41,542.542 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 17:06:41,687.687 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 17:06:41,740.740 INFO    ] time= 12/06/2026 17:06:41
[2026-06-12 17:06:41,763.763 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 17:06:41,769.769 INFO    ] Checking for existing commands in stream...
[2026-06-12 17:06:41,835.835 INFO    ] No existing commands found in stream
[2026-06-12 17:06:46,854.854 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 17:06:46,857.857 INFO    ] Waiting 2.57 seconds before fallback handling...
[2026-06-12 17:06:49,815.815 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 17:06:49,817.817 INFO    ] Checking for system updates...
[2026-06-12 17:06:49,838.838 INFO    ] 200
[2026-06-12 17:06:49,839.839 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:06:49,869.869 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 17:06:49,870.870 INFO    ] No update needed
[2026-06-12 17:06:49,872.872 INFO    ] Checking for camera pi updates...
[2026-06-12 17:06:49,891.891 INFO    ] 200
[2026-06-12 17:06:49,893.893 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:06:49,916.916 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 17:06:49,969.969 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 17:06:49,970.970 INFO    ] No camera update needed
[2026-06-12 17:06:49,972.972 INFO    ] Script finished. Safe exiting...
[2026-06-12 17:06:49,973.973 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 17:06:49,976.976 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 17:06:49,979.979 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 17:06:52,017.017 INFO    ] ================================================
[2026-06-12 17:06:52,032.032 INFO    ] Launching Daemon at Fri Jun 12 17:06:52 IST 2026
[2026-06-12 17:06:52,043.043 INFO    ] ================================================
[2026-06-12 17:06:52,400.400 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 17:06:52
[2026-06-12 17:06:52,717.717 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 17:06:52,855.855 INFO    ] Initializing speech engine...
[2026-06-12 17:06:52,865.865 INFO    ] 2026-06-12 17:06:52
[2026-06-12 17:06:53,069.069 INFO    ] 2026-06-12 17:06:53
[2026-06-12 17:06:53,098.098 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 17:06:53,281.281 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 17:06:53,284.284 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 17:06:53,420.420 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 17:06:53,487.487 INFO    ] time= 12/06/2026 17:06:53
[2026-06-12 17:06:53,510.510 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 17:06:53,517.517 INFO    ] Checking for existing commands in stream...
[2026-06-12 17:06:53,583.583 INFO    ] No existing commands found in stream
[2026-06-12 17:06:58,612.612 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 17:06:58,615.615 INFO    ] Waiting 0.07 seconds before fallback handling...
[2026-06-12 17:06:59,051.051 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 17:06:59,053.053 INFO    ] Checking for system updates...
[2026-06-12 17:06:59,074.074 INFO    ] 200
[2026-06-12 17:06:59,076.076 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:06:59,105.105 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 17:06:59,106.106 INFO    ] No update needed
[2026-06-12 17:06:59,108.108 INFO    ] Checking for camera pi updates...
[2026-06-12 17:06:59,127.127 INFO    ] 200
[2026-06-12 17:06:59,129.129 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:06:59,153.153 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 17:06:59,238.238 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 17:06:59,240.240 INFO    ] No camera update needed
[2026-06-12 17:06:59,241.241 INFO    ] Script finished. Safe exiting...
[2026-06-12 17:06:59,242.242 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 17:06:59,245.245 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 17:06:59,248.248 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 17:07:01,286.286 INFO    ] ================================================
[2026-06-12 17:07:01,302.302 INFO    ] Launching Daemon at Fri Jun 12 17:07:01 IST 2026
[2026-06-12 17:07:01,313.313 INFO    ] ================================================
[2026-06-12 17:07:01,704.704 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 17:07:01
[2026-06-12 17:07:02,105.105 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 17:07:02,378.378 INFO    ] Initializing speech engine...
[2026-06-12 17:07:02,385.385 INFO    ] 2026-06-12 17:07:02
[2026-06-12 17:07:02,642.642 INFO    ] 2026-06-12 17:07:02
[2026-06-12 17:07:02,665.665 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 17:07:02,888.888 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 17:07:02,898.898 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 17:07:03,084.084 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 17:07:03,116.116 INFO    ] time= 12/06/2026 17:07:03
[2026-06-12 17:07:03,122.122 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 17:07:03,124.124 INFO    ] Checking for existing commands in stream...
[2026-06-12 17:07:03,192.192 INFO    ] No existing commands found in stream
[2026-06-12 17:07:08,203.203 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 17:07:08,206.206 INFO    ] Waiting 3.70 seconds before fallback handling...
[2026-06-12 17:07:12,301.301 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 17:07:12,302.302 INFO    ] Checking for system updates...
[2026-06-12 17:07:12,322.322 INFO    ] 200
[2026-06-12 17:07:12,324.324 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:07:12,353.353 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 17:07:12,355.355 INFO    ] No update needed
[2026-06-12 17:07:12,356.356 INFO    ] Checking for camera pi updates...
[2026-06-12 17:07:12,375.375 INFO    ] 200
[2026-06-12 17:07:12,376.376 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:07:12,399.399 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 17:07:12,447.447 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 17:07:12,448.448 INFO    ] No camera update needed
[2026-06-12 17:07:12,449.449 INFO    ] Script finished. Safe exiting...
[2026-06-12 17:07:12,451.451 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 17:07:12,454.454 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 17:07:12,456.456 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 17:07:14,494.494 INFO    ] ================================================
[2026-06-12 17:07:14,509.509 INFO    ] Launching Daemon at Fri Jun 12 17:07:14 IST 2026
[2026-06-12 17:07:14,519.519 INFO    ] ================================================
[2026-06-12 17:07:14,881.881 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 17:07:14
[2026-06-12 17:07:15,226.226 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 17:07:15,381.381 INFO    ] Initializing speech engine...
[2026-06-12 17:07:15,384.384 INFO    ] 2026-06-12 17:07:15
[2026-06-12 17:07:15,592.592 INFO    ] 2026-06-12 17:07:15
[2026-06-12 17:07:15,620.620 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 17:07:15,805.805 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 17:07:15,815.815 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 17:07:15,955.955 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 17:07:16,012.012 INFO    ] time= 12/06/2026 17:07:15
[2026-06-12 17:07:16,035.035 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 17:07:16,042.042 INFO    ] Checking for existing commands in stream...
[2026-06-12 17:07:16,108.108 INFO    ] No existing commands found in stream
[2026-06-12 17:07:21,118.118 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 17:07:21,121.121 INFO    ] Waiting 2.02 seconds before fallback handling...
[2026-06-12 17:07:23,576.576 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 17:07:23,577.577 INFO    ] Checking for system updates...
[2026-06-12 17:07:23,599.599 INFO    ] 200
[2026-06-12 17:07:23,601.601 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:07:23,630.630 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 17:07:23,632.632 INFO    ] No update needed
[2026-06-12 17:07:23,633.633 INFO    ] Checking for camera pi updates...
[2026-06-12 17:07:23,652.652 INFO    ] 200
[2026-06-12 17:07:23,654.654 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:07:23,678.678 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 17:07:23,737.737 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 17:07:23,738.738 INFO    ] No camera update needed
[2026-06-12 17:07:23,740.740 INFO    ] Script finished. Safe exiting...
[2026-06-12 17:07:23,741.741 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 17:07:23,745.745 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 17:07:23,748.748 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 17:07:25,788.788 INFO    ] ================================================
[2026-06-12 17:07:25,803.803 INFO    ] Launching Daemon at Fri Jun 12 17:07:25 IST 2026
[2026-06-12 17:07:25,814.814 INFO    ] ================================================
[2026-06-12 17:07:26,189.189 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 17:07:26
[2026-06-12 17:07:26,503.503 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 17:07:26,652.652 INFO    ] Initializing speech engine...
[2026-06-12 17:07:26,656.656 INFO    ] 2026-06-12 17:07:26
[2026-06-12 17:07:26,860.860 INFO    ] 2026-06-12 17:07:26
[2026-06-12 17:07:26,889.889 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 17:07:27,075.075 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 17:07:27,078.078 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 17:07:27,233.233 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 17:07:27,286.286 INFO    ] time= 12/06/2026 17:07:27
[2026-06-12 17:07:27,310.310 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 17:07:27,316.316 INFO    ] Checking for existing commands in stream...
[2026-06-12 17:07:27,384.384 INFO    ] No existing commands found in stream
[2026-06-12 17:07:32,392.392 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 17:07:32,394.394 INFO    ] Waiting 3.77 seconds before fallback handling...
[2026-06-12 17:07:36,521.521 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 17:07:36,523.523 INFO    ] Checking for system updates...
[2026-06-12 17:07:36,543.543 INFO    ] 200
[2026-06-12 17:07:36,544.544 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:07:36,573.573 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 17:07:36,575.575 INFO    ] No update needed
[2026-06-12 17:07:36,576.576 INFO    ] Checking for camera pi updates...
[2026-06-12 17:07:36,597.597 INFO    ] 200
[2026-06-12 17:07:36,598.598 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:07:36,622.622 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 17:07:36,663.663 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 17:07:36,664.664 INFO    ] No camera update needed
[2026-06-12 17:07:36,666.666 INFO    ] Script finished. Safe exiting...
[2026-06-12 17:07:36,667.667 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 17:07:36,670.670 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 17:07:36,673.673 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 17:07:38,712.712 INFO    ] ================================================
[2026-06-12 17:07:38,728.728 INFO    ] Launching Daemon at Fri Jun 12 17:07:38 IST 2026
[2026-06-12 17:07:38,738.738 INFO    ] ================================================
[2026-06-12 17:07:39,102.102 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 17:07:39
[2026-06-12 17:07:39,421.421 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 17:07:39,564.564 INFO    ] Initializing speech engine...
[2026-06-12 17:07:39,568.568 INFO    ] 2026-06-12 17:07:39
[2026-06-12 17:07:39,770.770 INFO    ] 2026-06-12 17:07:39
[2026-06-12 17:07:39,799.799 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 17:07:39,987.987 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 17:07:39,995.995 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 17:07:40,118.118 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 17:07:40,119.119 INFO    ] time= 12/06/2026 17:07:40
[2026-06-12 17:07:40,163.163 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 17:07:40,214.214 INFO    ] Checking for existing commands in stream...
[2026-06-12 17:07:40,295.295 INFO    ] No existing commands found in stream
[2026-06-12 17:07:45,304.304 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 17:07:45,307.307 INFO    ] Waiting 0.25 seconds before fallback handling...
[2026-06-12 17:07:45,968.968 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 17:07:45,969.969 INFO    ] Checking for system updates...
[2026-06-12 17:07:45,989.989 INFO    ] 200
[2026-06-12 17:07:45,991.991 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:07:46,021.021 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 17:07:46,022.022 INFO    ] No update needed
[2026-06-12 17:07:46,023.023 INFO    ] Checking for camera pi updates...
[2026-06-12 17:07:46,043.043 INFO    ] 200
[2026-06-12 17:07:46,044.044 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:07:46,069.069 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 17:07:46,111.111 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 17:07:46,112.112 INFO    ] No camera update needed
[2026-06-12 17:07:46,114.114 INFO    ] Script finished. Safe exiting...
[2026-06-12 17:07:46,115.115 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 17:07:46,118.118 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 17:07:46,121.121 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 17:07:48,160.160 INFO    ] ================================================
[2026-06-12 17:07:48,175.175 INFO    ] Launching Daemon at Fri Jun 12 17:07:48 IST 2026
[2026-06-12 17:07:48,186.186 INFO    ] ================================================
[2026-06-12 17:07:48,518.518 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 17:07:48
[2026-06-12 17:07:48,835.835 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 17:07:48,984.984 INFO    ] Initializing speech engine...
[2026-06-12 17:07:48,989.989 INFO    ] 2026-06-12 17:07:48
[2026-06-12 17:07:49,206.206 INFO    ] 2026-06-12 17:07:49
[2026-06-12 17:07:49,236.236 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 17:07:49,438.438 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 17:07:49,448.448 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 17:07:49,590.590 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 17:07:49,659.659 INFO    ] time= 12/06/2026 17:07:49
[2026-06-12 17:07:49,688.688 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 17:07:49,690.690 INFO    ] Checking for existing commands in stream...
[2026-06-12 17:07:49,768.768 INFO    ] No existing commands found in stream
[2026-06-12 17:07:54,782.782 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 17:07:54,784.784 INFO    ] Waiting 0.99 seconds before fallback handling...
[2026-06-12 17:07:56,675.675 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 17:07:56,676.676 INFO    ] Checking for system updates...
[2026-06-12 17:07:56,706.706 INFO    ] 200
[2026-06-12 17:07:56,708.708 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:07:56,767.767 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 17:07:56,770.770 INFO    ] No update needed
[2026-06-12 17:07:56,772.772 INFO    ] Checking for camera pi updates...
[2026-06-12 17:07:56,800.800 INFO    ] 200
[2026-06-12 17:07:56,801.801 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:07:56,824.824 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 17:07:56,867.867 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 17:07:56,868.868 INFO    ] No camera update needed
[2026-06-12 17:07:56,869.869 INFO    ] Script finished. Safe exiting...
[2026-06-12 17:07:56,871.871 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 17:07:56,874.874 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 17:07:56,877.877 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 17:07:58,914.914 INFO    ] ================================================
[2026-06-12 17:07:58,930.930 INFO    ] Launching Daemon at Fri Jun 12 17:07:58 IST 2026
[2026-06-12 17:07:58,941.941 INFO    ] ================================================
[2026-06-12 17:07:59,335.335 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 17:07:59
[2026-06-12 17:07:59,676.676 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 17:07:59,830.830 INFO    ] Initializing speech engine...
[2026-06-12 17:07:59,838.838 INFO    ] 2026-06-12 17:07:59
[2026-06-12 17:08:00,041.041 INFO    ] 2026-06-12 17:08:00
[2026-06-12 17:08:00,070.070 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 17:08:00,255.255 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 17:08:00,268.268 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 17:08:00,396.396 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 17:08:00,455.455 INFO    ] time= 12/06/2026 17:08:00
[2026-06-12 17:08:00,488.488 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 17:08:00,495.495 INFO    ] Checking for existing commands in stream...
[2026-06-12 17:08:00,562.562 INFO    ] No existing commands found in stream
[2026-06-12 17:08:05,594.594 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 17:08:05,598.598 INFO    ] Waiting 3.53 seconds before fallback handling...
[2026-06-12 17:08:09,479.479 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 17:08:09,481.481 INFO    ] Checking for system updates...
[2026-06-12 17:08:09,503.503 INFO    ] 200
[2026-06-12 17:08:09,504.504 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:08:09,536.536 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 17:08:09,538.538 INFO    ] No update needed
[2026-06-12 17:08:09,539.539 INFO    ] Checking for camera pi updates...
[2026-06-12 17:08:09,559.559 INFO    ] 200
[2026-06-12 17:08:09,560.560 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:08:09,585.585 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 17:08:09,721.721 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 17:08:09,723.723 INFO    ] No camera update needed
[2026-06-12 17:08:09,724.724 INFO    ] Script finished. Safe exiting...
[2026-06-12 17:08:09,725.725 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 17:08:09,729.729 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 17:08:09,732.732 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 17:08:11,771.771 INFO    ] ================================================
[2026-06-12 17:08:11,786.786 INFO    ] Launching Daemon at Fri Jun 12 17:08:11 IST 2026
[2026-06-12 17:08:11,797.797 INFO    ] ================================================
[2026-06-12 17:08:12,161.161 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 17:08:12
[2026-06-12 17:08:12,477.477 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 17:08:12,609.609 INFO    ] Initializing speech engine...
[2026-06-12 17:08:12,622.622 INFO    ] 2026-06-12 17:08:12
[2026-06-12 17:08:12,829.829 INFO    ] 2026-06-12 17:08:12
[2026-06-12 17:08:12,858.858 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 17:08:13,044.044 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 17:08:13,053.053 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 17:08:13,197.197 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 17:08:13,249.249 INFO    ] time= 12/06/2026 17:08:13
[2026-06-12 17:08:13,272.272 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 17:08:13,278.278 INFO    ] Checking for existing commands in stream...
[2026-06-12 17:08:13,345.345 INFO    ] No existing commands found in stream
[2026-06-12 17:08:18,359.359 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 17:08:18,362.362 INFO    ] Waiting 3.99 seconds before fallback handling...
[2026-06-12 17:08:22,739.739 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 17:08:22,740.740 INFO    ] Checking for system updates...
[2026-06-12 17:08:22,761.761 INFO    ] 200
[2026-06-12 17:08:22,762.762 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:08:22,793.793 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 17:08:22,794.794 INFO    ] No update needed
[2026-06-12 17:08:22,795.795 INFO    ] Checking for camera pi updates...
[2026-06-12 17:08:22,814.814 INFO    ] 200
[2026-06-12 17:08:22,816.816 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:08:22,839.839 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 17:08:22,889.889 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 17:08:22,890.890 INFO    ] No camera update needed
[2026-06-12 17:08:22,892.892 INFO    ] Script finished. Safe exiting...
[2026-06-12 17:08:22,893.893 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 17:08:22,896.896 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 17:08:22,898.898 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 17:08:24,938.938 INFO    ] ================================================
[2026-06-12 17:08:24,953.953 INFO    ] Launching Daemon at Fri Jun 12 17:08:24 IST 2026
[2026-06-12 17:08:24,964.964 INFO    ] ================================================
[2026-06-12 17:08:25,329.329 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 17:08:25
[2026-06-12 17:08:25,641.641 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 17:08:25,771.771 INFO    ] Initializing speech engine...
[2026-06-12 17:08:25,775.775 INFO    ] 2026-06-12 17:08:25
[2026-06-12 17:08:25,994.994 INFO    ] 2026-06-12 17:08:25
[2026-06-12 17:08:26,023.023 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 17:08:26,208.208 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 17:08:26,212.212 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 17:08:26,365.365 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 17:08:26,419.419 INFO    ] time= 12/06/2026 17:08:26
[2026-06-12 17:08:26,441.441 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 17:08:26,447.447 INFO    ] Checking for existing commands in stream...
[2026-06-12 17:08:26,514.514 INFO    ] No existing commands found in stream
[2026-06-12 17:08:31,527.527 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 17:08:31,529.529 INFO    ] Waiting 2.27 seconds before fallback handling...
[2026-06-12 17:08:34,407.407 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 17:08:34,408.408 INFO    ] Checking for system updates...
[2026-06-12 17:08:34,430.430 INFO    ] 200
[2026-06-12 17:08:34,431.431 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:08:34,461.461 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 17:08:34,462.462 INFO    ] No update needed
[2026-06-12 17:08:34,464.464 INFO    ] Checking for camera pi updates...
[2026-06-12 17:08:34,482.482 INFO    ] 200
[2026-06-12 17:08:34,484.484 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:08:34,507.507 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 17:08:34,547.547 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 17:08:34,549.549 INFO    ] No camera update needed
[2026-06-12 17:08:34,550.550 INFO    ] Script finished. Safe exiting...
[2026-06-12 17:08:34,551.551 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 17:08:34,554.554 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 17:08:34,557.557 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 17:08:36,595.595 INFO    ] ================================================
[2026-06-12 17:08:36,611.611 INFO    ] Launching Daemon at Fri Jun 12 17:08:36 IST 2026
[2026-06-12 17:08:36,622.622 INFO    ] ================================================
[2026-06-12 17:08:36,966.966 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 17:08:36
[2026-06-12 17:08:37,305.305 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 17:08:37,451.451 INFO    ] Initializing speech engine...
[2026-06-12 17:08:37,461.461 INFO    ] 2026-06-12 17:08:37
[2026-06-12 17:08:37,673.673 INFO    ] 2026-06-12 17:08:37
[2026-06-12 17:08:37,702.702 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 17:08:37,889.889 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 17:08:37,898.898 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 17:08:38,036.036 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 17:08:38,099.099 INFO    ] time= 12/06/2026 17:08:38
[2026-06-12 17:08:38,123.123 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 17:08:38,130.130 INFO    ] Checking for existing commands in stream...
[2026-06-12 17:08:38,221.221 INFO    ] No existing commands found in stream
[2026-06-12 17:08:43,236.236 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 17:08:43,239.239 INFO    ] Waiting 2.72 seconds before fallback handling...
[2026-06-12 17:08:46,425.425 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 17:08:46,427.427 INFO    ] Checking for system updates...
[2026-06-12 17:08:46,447.447 INFO    ] 200
[2026-06-12 17:08:46,449.449 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:08:46,479.479 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 17:08:46,480.480 INFO    ] No update needed
[2026-06-12 17:08:46,482.482 INFO    ] Checking for camera pi updates...
[2026-06-12 17:08:46,501.501 INFO    ] 200
[2026-06-12 17:08:46,502.502 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:08:46,525.525 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 17:08:46,572.572 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 17:08:46,574.574 INFO    ] No camera update needed
[2026-06-12 17:08:46,575.575 INFO    ] Script finished. Safe exiting...
[2026-06-12 17:08:46,577.577 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 17:08:46,580.580 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 17:08:46,583.583 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 17:08:48,622.622 INFO    ] ================================================
[2026-06-12 17:08:48,638.638 INFO    ] Launching Daemon at Fri Jun 12 17:08:48 IST 2026
[2026-06-12 17:08:48,649.649 INFO    ] ================================================
[2026-06-12 17:08:49,001.001 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 17:08:48
[2026-06-12 17:08:49,316.316 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 17:08:49,454.454 INFO    ] Initializing speech engine...
[2026-06-12 17:08:49,464.464 INFO    ] 2026-06-12 17:08:49
[2026-06-12 17:08:49,670.670 INFO    ] 2026-06-12 17:08:49
[2026-06-12 17:08:49,699.699 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 17:08:49,884.884 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 17:08:49,888.888 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 17:08:50,035.035 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 17:08:50,094.094 INFO    ] time= 12/06/2026 17:08:50
[2026-06-12 17:08:50,116.116 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 17:08:50,123.123 INFO    ] Checking for existing commands in stream...
[2026-06-12 17:08:50,190.190 INFO    ] No existing commands found in stream
[2026-06-12 17:08:55,199.199 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 17:08:55,202.202 INFO    ] Waiting 0.45 seconds before fallback handling...
[2026-06-12 17:08:56,041.041 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 17:08:56,043.043 INFO    ] Checking for system updates...
[2026-06-12 17:08:56,063.063 INFO    ] 200
[2026-06-12 17:08:56,065.065 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:08:56,095.095 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 17:08:56,097.097 INFO    ] No update needed
[2026-06-12 17:08:56,098.098 INFO    ] Checking for camera pi updates...
[2026-06-12 17:08:56,117.117 INFO    ] 200
[2026-06-12 17:08:56,119.119 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:08:56,142.142 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 17:08:56,195.195 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 17:08:56,196.196 INFO    ] No camera update needed
[2026-06-12 17:08:56,197.197 INFO    ] Script finished. Safe exiting...
[2026-06-12 17:08:56,199.199 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 17:08:56,202.202 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 17:08:56,205.205 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 17:08:58,243.243 INFO    ] ================================================
[2026-06-12 17:08:58,258.258 INFO    ] Launching Daemon at Fri Jun 12 17:08:58 IST 2026
[2026-06-12 17:08:58,269.269 INFO    ] ================================================
[2026-06-12 17:08:58,649.649 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 17:08:58
[2026-06-12 17:08:58,990.990 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 17:08:59,143.143 INFO    ] Initializing speech engine...
[2026-06-12 17:08:59,147.147 INFO    ] 2026-06-12 17:08:59
[2026-06-12 17:08:59,355.355 INFO    ] 2026-06-12 17:08:59
[2026-06-12 17:08:59,383.383 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 17:08:59,567.567 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 17:08:59,576.576 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 17:08:59,751.751 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 17:08:59,790.790 INFO    ] time= 12/06/2026 17:08:59
[2026-06-12 17:08:59,796.796 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 17:08:59,802.802 INFO    ] Checking for existing commands in stream...
[2026-06-12 17:08:59,869.869 INFO    ] No existing commands found in stream
[2026-06-12 17:09:04,884.884 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 17:09:04,887.887 INFO    ] Waiting 1.06 seconds before fallback handling...
[2026-06-12 17:09:06,373.373 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 17:09:06,375.375 INFO    ] Checking for system updates...
[2026-06-12 17:09:06,396.396 INFO    ] 200
[2026-06-12 17:09:06,397.397 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:09:06,431.431 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 17:09:06,432.432 INFO    ] No update needed
[2026-06-12 17:09:06,434.434 INFO    ] Checking for camera pi updates...
[2026-06-12 17:09:06,456.456 INFO    ] 200
[2026-06-12 17:09:06,458.458 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:09:06,483.483 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 17:09:06,537.537 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 17:09:06,538.538 INFO    ] No camera update needed
[2026-06-12 17:09:06,540.540 INFO    ] Script finished. Safe exiting...
[2026-06-12 17:09:06,541.541 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 17:09:06,544.544 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 17:09:06,546.546 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 17:09:08,585.585 INFO    ] ================================================
[2026-06-12 17:09:08,600.600 INFO    ] Launching Daemon at Fri Jun 12 17:09:08 IST 2026
[2026-06-12 17:09:08,612.612 INFO    ] ================================================
[2026-06-12 17:09:08,971.971 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 17:09:08
[2026-06-12 17:09:09,283.283 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 17:09:09,414.414 INFO    ] Initializing speech engine...
[2026-06-12 17:09:09,418.418 INFO    ] 2026-06-12 17:09:09
[2026-06-12 17:09:09,621.621 INFO    ] 2026-06-12 17:09:09
[2026-06-12 17:09:09,656.656 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 17:09:09,812.812 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 17:09:09,856.856 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 17:09:10,024.024 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 17:09:10,066.066 INFO    ] time= 12/06/2026 17:09:10
[2026-06-12 17:09:10,109.109 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 17:09:10,133.133 INFO    ] Checking for existing commands in stream...
[2026-06-12 17:09:10,211.211 INFO    ] No existing commands found in stream
[2026-06-12 17:09:15,220.220 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 17:09:15,223.223 INFO    ] Waiting 1.51 seconds before fallback handling...
[2026-06-12 17:09:17,129.129 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 17:09:17,130.130 INFO    ] Checking for system updates...
[2026-06-12 17:09:17,151.151 INFO    ] 200
[2026-06-12 17:09:17,152.152 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:09:17,182.182 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 17:09:17,183.183 INFO    ] No update needed
[2026-06-12 17:09:17,184.184 INFO    ] Checking for camera pi updates...
[2026-06-12 17:09:17,203.203 INFO    ] 200
[2026-06-12 17:09:17,205.205 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:09:17,230.230 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 17:09:17,297.297 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 17:09:17,298.298 INFO    ] No camera update needed
[2026-06-12 17:09:17,300.300 INFO    ] Script finished. Safe exiting...
[2026-06-12 17:09:17,301.301 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 17:09:17,304.304 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 17:09:17,307.307 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 17:09:19,345.345 INFO    ] ================================================
[2026-06-12 17:09:19,361.361 INFO    ] Launching Daemon at Fri Jun 12 17:09:19 IST 2026
[2026-06-12 17:09:19,373.373 INFO    ] ================================================
[2026-06-12 17:09:19,710.710 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 17:09:19
[2026-06-12 17:09:20,026.026 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 17:09:20,159.159 INFO    ] Initializing speech engine...
[2026-06-12 17:09:20,162.162 INFO    ] 2026-06-12 17:09:20
[2026-06-12 17:09:20,355.355 INFO    ] 2026-06-12 17:09:20
[2026-06-12 17:09:20,399.399 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 17:09:20,558.558 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 17:09:20,602.602 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 17:09:20,769.769 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 17:09:20,823.823 INFO    ] time= 12/06/2026 17:09:20
[2026-06-12 17:09:20,878.878 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 17:09:20,880.880 INFO    ] Checking for existing commands in stream...
[2026-06-12 17:09:20,955.955 INFO    ] No existing commands found in stream
[2026-06-12 17:09:25,966.966 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 17:09:25,969.969 INFO    ] Waiting 2.18 seconds before fallback handling...
[2026-06-12 17:09:28,532.532 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 17:09:28,533.533 INFO    ] Checking for system updates...
[2026-06-12 17:09:28,555.555 INFO    ] 200
[2026-06-12 17:09:28,556.556 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:09:28,588.588 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 17:09:28,590.590 INFO    ] No update needed
[2026-06-12 17:09:28,591.591 INFO    ] Checking for camera pi updates...
[2026-06-12 17:09:28,610.610 INFO    ] 200
[2026-06-12 17:09:28,612.612 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:09:28,634.634 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 17:09:28,675.675 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 17:09:28,677.677 INFO    ] No camera update needed
[2026-06-12 17:09:28,678.678 INFO    ] Script finished. Safe exiting...
[2026-06-12 17:09:28,679.679 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 17:09:28,682.682 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 17:09:28,685.685 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 17:09:30,723.723 INFO    ] ================================================
[2026-06-12 17:09:30,739.739 INFO    ] Launching Daemon at Fri Jun 12 17:09:30 IST 2026
[2026-06-12 17:09:30,750.750 INFO    ] ================================================
[2026-06-12 17:09:31,109.109 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 17:09:31
[2026-06-12 17:09:31,449.449 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 17:09:31,614.614 INFO    ] Initializing speech engine...
[2026-06-12 17:09:31,621.621 INFO    ] 2026-06-12 17:09:31
[2026-06-12 17:09:31,841.841 INFO    ] 2026-06-12 17:09:31
[2026-06-12 17:09:31,871.871 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 17:09:32,072.072 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 17:09:32,085.085 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 17:09:32,227.227 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 17:09:32,292.292 INFO    ] time= 12/06/2026 17:09:32
[2026-06-12 17:09:32,323.323 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 17:09:32,329.329 INFO    ] Checking for existing commands in stream...
[2026-06-12 17:09:32,397.397 INFO    ] No existing commands found in stream
[2026-06-12 17:09:37,407.407 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 17:09:37,410.410 INFO    ] Waiting 1.95 seconds before fallback handling...
[2026-06-12 17:09:39,749.749 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 17:09:39,751.751 INFO    ] Checking for system updates...
[2026-06-12 17:09:39,771.771 INFO    ] 200
[2026-06-12 17:09:39,773.773 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:09:39,805.805 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 17:09:39,807.807 INFO    ] No update needed
[2026-06-12 17:09:39,808.808 INFO    ] Checking for camera pi updates...
[2026-06-12 17:09:39,829.829 INFO    ] 200
[2026-06-12 17:09:39,831.831 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:09:39,856.856 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 17:09:39,898.898 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 17:09:39,899.899 INFO    ] No camera update needed
[2026-06-12 17:09:39,901.901 INFO    ] Script finished. Safe exiting...
[2026-06-12 17:09:39,902.902 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 17:09:39,906.906 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 17:09:39,908.908 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 17:09:41,948.948 INFO    ] ================================================
[2026-06-12 17:09:41,964.964 INFO    ] Launching Daemon at Fri Jun 12 17:09:41 IST 2026
[2026-06-12 17:09:41,974.974 INFO    ] ================================================
[2026-06-12 17:09:42,315.315 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 17:09:42
[2026-06-12 17:09:42,631.631 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 17:09:42,771.771 INFO    ] Initializing speech engine...
[2026-06-12 17:09:42,780.780 INFO    ] 2026-06-12 17:09:42
[2026-06-12 17:09:42,984.984 INFO    ] 2026-06-12 17:09:42
[2026-06-12 17:09:43,014.014 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 17:09:43,197.197 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 17:09:43,205.205 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 17:09:43,345.345 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 17:09:43,403.403 INFO    ] time= 12/06/2026 17:09:43
[2026-06-12 17:09:43,425.425 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 17:09:43,431.431 INFO    ] Checking for existing commands in stream...
[2026-06-12 17:09:43,498.498 INFO    ] No existing commands found in stream
[2026-06-12 17:09:48,512.512 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 17:09:48,515.515 INFO    ] Waiting 1.81 seconds before fallback handling...
[2026-06-12 17:09:50,721.721 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 17:09:50,722.722 INFO    ] Checking for system updates...
[2026-06-12 17:09:50,743.743 INFO    ] 200
[2026-06-12 17:09:50,744.744 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:09:50,774.774 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 17:09:50,775.775 INFO    ] No update needed
[2026-06-12 17:09:50,776.776 INFO    ] Checking for camera pi updates...
[2026-06-12 17:09:50,797.797 INFO    ] 200
[2026-06-12 17:09:50,798.798 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:09:50,822.822 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 17:09:50,865.865 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 17:09:50,866.866 INFO    ] No camera update needed
[2026-06-12 17:09:50,868.868 INFO    ] Script finished. Safe exiting...
[2026-06-12 17:09:50,869.869 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 17:09:50,872.872 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 17:09:50,875.875 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 17:09:52,913.913 INFO    ] ================================================
[2026-06-12 17:09:52,929.929 INFO    ] Launching Daemon at Fri Jun 12 17:09:52 IST 2026
[2026-06-12 17:09:52,940.940 INFO    ] ================================================
[2026-06-12 17:09:53,285.285 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 17:09:53
[2026-06-12 17:09:53,623.623 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 17:09:53,774.774 INFO    ] Initializing speech engine...
[2026-06-12 17:09:53,780.780 INFO    ] 2026-06-12 17:09:53
[2026-06-12 17:09:53,991.991 INFO    ] 2026-06-12 17:09:53
[2026-06-12 17:09:54,020.020 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 17:09:54,212.212 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 17:09:54,222.222 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 17:09:54,359.359 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 17:09:54,423.423 INFO    ] time= 12/06/2026 17:09:54
[2026-06-12 17:09:54,447.447 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 17:09:54,453.453 INFO    ] Checking for existing commands in stream...
[2026-06-12 17:09:54,549.549 INFO    ] No existing commands found in stream
[2026-06-12 17:09:59,559.559 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 17:09:59,562.562 INFO    ] Waiting 1.76 seconds before fallback handling...
[2026-06-12 17:10:01,727.727 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 17:10:01,731.731 INFO    ] Checking for system updates...
[2026-06-12 17:10:01,802.802 INFO    ] 200
[2026-06-12 17:10:01,805.805 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:10:01,954.954 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 17:10:01,957.957 INFO    ] No update needed
[2026-06-12 17:10:01,970.970 INFO    ] Checking for camera pi updates...
[2026-06-12 17:10:02,047.047 INFO    ] 200
[2026-06-12 17:10:02,049.049 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:10:02,179.179 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 17:10:02,263.263 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 17:10:02,266.266 INFO    ] No camera update needed
[2026-06-12 17:10:02,268.268 INFO    ] Script finished. Safe exiting...
[2026-06-12 17:10:02,270.270 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 17:10:02,275.275 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 17:10:02,279.279 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 17:10:04,312.312 INFO    ] ================================================
[2026-06-12 17:10:04,327.327 INFO    ] Launching Daemon at Fri Jun 12 17:10:04 IST 2026
[2026-06-12 17:10:04,339.339 INFO    ] ================================================
[2026-06-12 17:10:04,668.668 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 17:10:04
[2026-06-12 17:10:04,983.983 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 17:10:05,118.118 INFO    ] Initializing speech engine...
[2026-06-12 17:10:05,122.122 INFO    ] 2026-06-12 17:10:05
[2026-06-12 17:10:05,352.352 INFO    ] 2026-06-12 17:10:05
[2026-06-12 17:10:05,383.383 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 17:10:05,580.580 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 17:10:05,583.583 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 17:10:05,722.722 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 17:10:05,768.768 INFO    ] time= 12/06/2026 17:10:05
[2026-06-12 17:10:05,818.818 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 17:10:05,829.829 INFO    ] Checking for existing commands in stream...
[2026-06-12 17:10:05,932.932 INFO    ] No existing commands found in stream
[2026-06-12 17:10:10,941.941 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 17:10:10,944.944 INFO    ] Waiting 1.71 seconds before fallback handling...
[2026-06-12 17:10:13,018.018 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 17:10:13,020.020 INFO    ] Checking for system updates...
[2026-06-12 17:10:13,040.040 INFO    ] 200
[2026-06-12 17:10:13,042.042 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:10:13,073.073 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 17:10:13,074.074 INFO    ] No update needed
[2026-06-12 17:10:13,075.075 INFO    ] Checking for camera pi updates...
[2026-06-12 17:10:13,095.095 INFO    ] 200
[2026-06-12 17:10:13,097.097 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:10:13,121.121 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 17:10:13,258.258 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 17:10:13,259.259 INFO    ] No camera update needed
[2026-06-12 17:10:13,260.260 INFO    ] Script finished. Safe exiting...
[2026-06-12 17:10:13,262.262 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 17:10:13,265.265 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 17:10:13,267.267 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 17:10:15,306.306 INFO    ] ================================================
[2026-06-12 17:10:15,321.321 INFO    ] Launching Daemon at Fri Jun 12 17:10:15 IST 2026
[2026-06-12 17:10:15,332.332 INFO    ] ================================================
[2026-06-12 17:10:15,675.675 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 17:10:15
[2026-06-12 17:10:16,017.017 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 17:10:16,172.172 INFO    ] Initializing speech engine...
[2026-06-12 17:10:16,176.176 INFO    ] 2026-06-12 17:10:16
[2026-06-12 17:10:16,382.382 INFO    ] 2026-06-12 17:10:16
[2026-06-12 17:10:16,411.411 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 17:10:16,594.594 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 17:10:16,604.604 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 17:10:16,748.748 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 17:10:16,801.801 INFO    ] time= 12/06/2026 17:10:16
[2026-06-12 17:10:16,823.823 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 17:10:16,830.830 INFO    ] Checking for existing commands in stream...
[2026-06-12 17:10:16,896.896 INFO    ] No existing commands found in stream
[2026-06-12 17:10:21,915.915 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 17:10:21,919.919 INFO    ] Waiting 3.37 seconds before fallback handling...
[2026-06-12 17:10:25,730.730 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 17:10:25,732.732 INFO    ] Checking for system updates...
[2026-06-12 17:10:25,753.753 INFO    ] 200
[2026-06-12 17:10:25,754.754 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:10:25,785.785 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 17:10:25,787.787 INFO    ] No update needed
[2026-06-12 17:10:25,788.788 INFO    ] Checking for camera pi updates...
[2026-06-12 17:10:25,809.809 INFO    ] 200
[2026-06-12 17:10:25,810.810 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:10:25,834.834 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 17:10:25,887.887 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 17:10:25,889.889 INFO    ] No camera update needed
[2026-06-12 17:10:25,891.891 INFO    ] Script finished. Safe exiting...
[2026-06-12 17:10:25,892.892 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 17:10:25,895.895 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 17:10:25,898.898 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 17:10:27,936.936 INFO    ] ================================================
[2026-06-12 17:10:27,952.952 INFO    ] Launching Daemon at Fri Jun 12 17:10:27 IST 2026
[2026-06-12 17:10:27,963.963 INFO    ] ================================================
[2026-06-12 17:10:28,294.294 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 17:10:28
[2026-06-12 17:10:28,606.606 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 17:10:28,748.748 INFO    ] Initializing speech engine...
[2026-06-12 17:10:28,753.753 INFO    ] 2026-06-12 17:10:28
[2026-06-12 17:10:28,955.955 INFO    ] 2026-06-12 17:10:28
[2026-06-12 17:10:28,983.983 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 17:10:29,106.106 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 17:10:29,168.168 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 17:10:29,298.298 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 17:10:29,349.349 INFO    ] time= 12/06/2026 17:10:29
[2026-06-12 17:10:29,378.378 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 17:10:29,399.399 INFO    ] Checking for existing commands in stream...
[2026-06-12 17:10:29,471.471 INFO    ] No existing commands found in stream
[2026-06-12 17:10:34,485.485 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 17:10:34,487.487 INFO    ] Waiting 3.00 seconds before fallback handling...
[2026-06-12 17:10:37,866.866 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 17:10:37,867.867 INFO    ] Checking for system updates...
[2026-06-12 17:10:37,887.887 INFO    ] 200
[2026-06-12 17:10:37,889.889 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:10:37,919.919 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 17:10:37,920.920 INFO    ] No update needed
[2026-06-12 17:10:37,921.921 INFO    ] Checking for camera pi updates...
[2026-06-12 17:10:37,940.940 INFO    ] 200
[2026-06-12 17:10:37,942.942 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:10:37,964.964 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 17:10:38,010.010 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 17:10:38,011.011 INFO    ] No camera update needed
[2026-06-12 17:10:38,013.013 INFO    ] Script finished. Safe exiting...
[2026-06-12 17:10:38,014.014 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 17:10:38,017.017 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 17:10:38,019.019 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 17:10:40,058.058 INFO    ] ================================================
[2026-06-12 17:10:40,073.073 INFO    ] Launching Daemon at Fri Jun 12 17:10:40 IST 2026
[2026-06-12 17:10:40,084.084 INFO    ] ================================================
[2026-06-12 17:10:40,435.435 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 17:10:40
[2026-06-12 17:10:40,746.746 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 17:10:40,887.887 INFO    ] Initializing speech engine...
[2026-06-12 17:10:40,893.893 INFO    ] 2026-06-12 17:10:40
[2026-06-12 17:10:41,095.095 INFO    ] 2026-06-12 17:10:41
[2026-06-12 17:10:41,132.132 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 17:10:41,316.316 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 17:10:41,320.320 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 17:10:41,484.484 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 17:10:41,527.527 INFO    ] time= 12/06/2026 17:10:41
[2026-06-12 17:10:41,550.550 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 17:10:41,552.552 INFO    ] Checking for existing commands in stream...
[2026-06-12 17:10:41,623.623 INFO    ] No existing commands found in stream
[2026-06-12 17:10:46,637.637 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 17:10:46,640.640 INFO    ] Waiting 3.42 seconds before fallback handling...
[2026-06-12 17:10:50,469.469 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 17:10:50,470.470 INFO    ] Checking for system updates...
[2026-06-12 17:10:50,493.493 INFO    ] 200
[2026-06-12 17:10:50,494.494 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:10:50,527.527 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 17:10:50,528.528 INFO    ] No update needed
[2026-06-12 17:10:50,530.530 INFO    ] Checking for camera pi updates...
[2026-06-12 17:10:50,549.549 INFO    ] 200
[2026-06-12 17:10:50,551.551 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:10:50,576.576 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 17:10:50,630.630 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 17:10:50,631.631 INFO    ] No camera update needed
[2026-06-12 17:10:50,633.633 INFO    ] Script finished. Safe exiting...
[2026-06-12 17:10:50,634.634 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 17:10:50,637.637 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 17:10:50,640.640 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 17:10:52,682.682 INFO    ] ================================================
[2026-06-12 17:10:52,698.698 INFO    ] Launching Daemon at Fri Jun 12 17:10:52 IST 2026
[2026-06-12 17:10:52,710.710 INFO    ] ================================================
[2026-06-12 17:10:53,048.048 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 17:10:53
[2026-06-12 17:10:53,364.364 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 17:10:53,496.496 INFO    ] Initializing speech engine...
[2026-06-12 17:10:53,499.499 INFO    ] 2026-06-12 17:10:53
[2026-06-12 17:10:53,716.716 INFO    ] 2026-06-12 17:10:53
[2026-06-12 17:10:53,744.744 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 17:10:53,926.926 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 17:10:53,935.935 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 17:10:54,075.075 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 17:10:54,132.132 INFO    ] time= 12/06/2026 17:10:54
[2026-06-12 17:10:54,155.155 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 17:10:54,161.161 INFO    ] Checking for existing commands in stream...
[2026-06-12 17:10:54,228.228 INFO    ] No existing commands found in stream
[2026-06-12 17:10:59,237.237 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 17:10:59,240.240 INFO    ] Waiting 3.45 seconds before fallback handling...
[2026-06-12 17:11:03,060.060 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 17:11:03,061.061 INFO    ] Checking for system updates...
[2026-06-12 17:11:03,083.083 INFO    ] 200
[2026-06-12 17:11:03,084.084 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:11:03,114.114 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 17:11:03,116.116 INFO    ] No update needed
[2026-06-12 17:11:03,117.117 INFO    ] Checking for camera pi updates...
[2026-06-12 17:11:03,136.136 INFO    ] 200
[2026-06-12 17:11:03,138.138 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:11:03,161.161 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 17:11:03,206.206 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 17:11:03,208.208 INFO    ] No camera update needed
[2026-06-12 17:11:03,209.209 INFO    ] Script finished. Safe exiting...
[2026-06-12 17:11:03,211.211 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 17:11:03,214.214 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 17:11:03,217.217 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 17:11:05,257.257 INFO    ] ================================================
[2026-06-12 17:11:05,275.275 INFO    ] Launching Daemon at Fri Jun 12 17:11:05 IST 2026
[2026-06-12 17:11:05,288.288 INFO    ] ================================================
[2026-06-12 17:11:05,638.638 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 17:11:05
[2026-06-12 17:11:05,948.948 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 17:11:06,083.083 INFO    ] Initializing speech engine...
[2026-06-12 17:11:06,091.091 INFO    ] 2026-06-12 17:11:06
[2026-06-12 17:11:06,299.299 INFO    ] 2026-06-12 17:11:06
[2026-06-12 17:11:06,329.329 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 17:11:06,514.514 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 17:11:06,523.523 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 17:11:06,668.668 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 17:11:06,729.729 INFO    ] time= 12/06/2026 17:11:06
[2026-06-12 17:11:06,744.744 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 17:11:06,751.751 INFO    ] Checking for existing commands in stream...
[2026-06-12 17:11:06,818.818 INFO    ] No existing commands found in stream
[2026-06-12 17:11:11,827.827 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 17:11:11,830.830 INFO    ] Waiting 3.38 seconds before fallback handling...
[2026-06-12 17:11:15,589.589 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 17:11:15,591.591 INFO    ] Checking for system updates...
[2026-06-12 17:11:15,611.611 INFO    ] 200
[2026-06-12 17:11:15,612.612 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:11:15,644.644 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 17:11:15,645.645 INFO    ] No update needed
[2026-06-12 17:11:15,646.646 INFO    ] Checking for camera pi updates...
[2026-06-12 17:11:15,668.668 INFO    ] 200
[2026-06-12 17:11:15,669.669 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:11:15,694.694 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 17:11:15,742.742 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 17:11:15,743.743 INFO    ] No camera update needed
[2026-06-12 17:11:15,745.745 INFO    ] Script finished. Safe exiting...
[2026-06-12 17:11:15,746.746 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 17:11:15,749.749 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 17:11:15,752.752 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 17:11:17,791.791 INFO    ] ================================================
[2026-06-12 17:11:17,806.806 INFO    ] Launching Daemon at Fri Jun 12 17:11:17 IST 2026
[2026-06-12 17:11:17,818.818 INFO    ] ================================================
[2026-06-12 17:11:18,174.174 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 17:11:18
[2026-06-12 17:11:18,512.512 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 17:11:18,661.661 INFO    ] Initializing speech engine...
[2026-06-12 17:11:18,667.667 INFO    ] 2026-06-12 17:11:18
[2026-06-12 17:11:18,875.875 INFO    ] 2026-06-12 17:11:18
[2026-06-12 17:11:18,905.905 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 17:11:19,087.087 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 17:11:19,091.091 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 17:11:19,277.277 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 17:11:19,311.311 INFO    ] time= 12/06/2026 17:11:19
[2026-06-12 17:11:19,317.317 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 17:11:19,323.323 INFO    ] Checking for existing commands in stream...
[2026-06-12 17:11:19,389.389 INFO    ] No existing commands found in stream
[2026-06-12 17:11:24,399.399 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 17:11:24,402.402 INFO    ] Waiting 1.40 seconds before fallback handling...
[2026-06-12 17:11:26,169.169 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 17:11:26,170.170 INFO    ] Checking for system updates...
[2026-06-12 17:11:26,191.191 INFO    ] 200
[2026-06-12 17:11:26,193.193 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:11:26,223.223 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 17:11:26,224.224 INFO    ] No update needed
[2026-06-12 17:11:26,226.226 INFO    ] Checking for camera pi updates...
[2026-06-12 17:11:26,246.246 INFO    ] 200
[2026-06-12 17:11:26,248.248 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:11:26,272.272 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 17:11:26,320.320 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 17:11:26,321.321 INFO    ] No camera update needed
[2026-06-12 17:11:26,322.322 INFO    ] Script finished. Safe exiting...
[2026-06-12 17:11:26,323.323 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 17:11:26,326.326 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 17:11:26,329.329 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 17:11:28,367.367 INFO    ] ================================================
[2026-06-12 17:11:28,384.384 INFO    ] Launching Daemon at Fri Jun 12 17:11:28 IST 2026
[2026-06-12 17:11:28,395.395 INFO    ] ================================================
[2026-06-12 17:11:28,731.731 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 17:11:28
[2026-06-12 17:11:29,047.047 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 17:11:29,192.192 INFO    ] Initializing speech engine...
[2026-06-12 17:11:29,197.197 INFO    ] 2026-06-12 17:11:29
[2026-06-12 17:11:29,401.401 INFO    ] 2026-06-12 17:11:29
[2026-06-12 17:11:29,429.429 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 17:11:29,620.620 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 17:11:29,624.624 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 17:11:29,776.776 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 17:11:29,842.842 INFO    ] time= 12/06/2026 17:11:29
[2026-06-12 17:11:29,868.868 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 17:11:29,875.875 INFO    ] Checking for existing commands in stream...
[2026-06-12 17:11:29,997.997 INFO    ] No existing commands found in stream
[2026-06-12 17:11:35,008.008 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 17:11:35,011.011 INFO    ] Waiting 3.16 seconds before fallback handling...
[2026-06-12 17:11:38,596.596 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 17:11:38,599.599 INFO    ] Checking for system updates...
[2026-06-12 17:11:38,635.635 INFO    ] 200
[2026-06-12 17:11:38,638.638 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:11:38,694.694 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 17:11:38,696.696 INFO    ] No update needed
[2026-06-12 17:11:38,699.699 INFO    ] Checking for camera pi updates...
[2026-06-12 17:11:38,729.729 INFO    ] 200
[2026-06-12 17:11:38,730.730 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:11:38,753.753 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 17:11:38,800.800 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 17:11:38,801.801 INFO    ] No camera update needed
[2026-06-12 17:11:38,802.802 INFO    ] Script finished. Safe exiting...
[2026-06-12 17:11:38,804.804 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 17:11:38,807.807 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 17:11:38,809.809 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 17:11:40,848.848 INFO    ] ================================================
[2026-06-12 17:11:40,864.864 INFO    ] Launching Daemon at Fri Jun 12 17:11:40 IST 2026
[2026-06-12 17:11:40,875.875 INFO    ] ================================================
[2026-06-12 17:11:41,246.246 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 17:11:41
[2026-06-12 17:11:41,568.568 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 17:11:41,706.706 INFO    ] Initializing speech engine...
[2026-06-12 17:11:41,715.715 INFO    ] 2026-06-12 17:11:41
[2026-06-12 17:11:41,921.921 INFO    ] 2026-06-12 17:11:41
[2026-06-12 17:11:41,950.950 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 17:11:42,135.135 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 17:11:42,144.144 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 17:11:42,292.292 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 17:11:42,342.342 INFO    ] time= 12/06/2026 17:11:42
[2026-06-12 17:11:42,363.363 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 17:11:42,373.373 INFO    ] Checking for existing commands in stream...
[2026-06-12 17:11:42,439.439 INFO    ] No existing commands found in stream
[2026-06-12 17:11:47,448.448 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 17:11:47,451.451 INFO    ] Waiting 1.87 seconds before fallback handling...
[2026-06-12 17:11:49,697.697 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 17:11:49,699.699 INFO    ] Checking for system updates...
[2026-06-12 17:11:49,719.719 INFO    ] 200
[2026-06-12 17:11:49,721.721 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:11:49,751.751 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 17:11:49,753.753 INFO    ] No update needed
[2026-06-12 17:11:49,754.754 INFO    ] Checking for camera pi updates...
[2026-06-12 17:11:49,773.773 INFO    ] 200
[2026-06-12 17:11:49,775.775 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:11:49,798.798 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 17:11:49,849.849 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 17:11:49,850.850 INFO    ] No camera update needed
[2026-06-12 17:11:49,852.852 INFO    ] Script finished. Safe exiting...
[2026-06-12 17:11:49,853.853 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 17:11:49,856.856 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 17:11:49,859.859 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 17:11:51,902.902 INFO    ] ================================================
[2026-06-12 17:11:51,917.917 INFO    ] Launching Daemon at Fri Jun 12 17:11:51 IST 2026
[2026-06-12 17:11:51,929.929 INFO    ] ================================================
[2026-06-12 17:11:52,276.276 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 17:11:52
[2026-06-12 17:11:52,592.592 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 17:11:52,723.723 INFO    ] Initializing speech engine...
[2026-06-12 17:11:52,727.727 INFO    ] 2026-06-12 17:11:52
[2026-06-12 17:11:52,936.936 INFO    ] 2026-06-12 17:11:52
[2026-06-12 17:11:52,964.964 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 17:11:53,185.185 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 17:11:53,189.189 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 17:11:53,328.328 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 17:11:53,384.384 INFO    ] time= 12/06/2026 17:11:53
[2026-06-12 17:11:53,418.418 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 17:11:53,440.440 INFO    ] Checking for existing commands in stream...
[2026-06-12 17:11:53,537.537 INFO    ] No existing commands found in stream
[2026-06-12 17:11:58,546.546 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 17:11:58,549.549 INFO    ] Waiting 2.35 seconds before fallback handling...
[2026-06-12 17:12:01,319.319 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 17:12:01,321.321 INFO    ] Checking for system updates...
[2026-06-12 17:12:01,342.342 INFO    ] 200
[2026-06-12 17:12:01,344.344 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:12:01,440.440 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 17:12:01,442.442 INFO    ] No update needed
[2026-06-12 17:12:01,445.445 INFO    ] Checking for camera pi updates...
[2026-06-12 17:12:01,493.493 INFO    ] 200
[2026-06-12 17:12:01,495.495 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:12:01,550.550 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 17:12:01,617.617 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 17:12:01,619.619 INFO    ] No camera update needed
[2026-06-12 17:12:01,622.622 INFO    ] Script finished. Safe exiting...
[2026-06-12 17:12:01,624.624 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 17:12:01,629.629 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 17:12:01,635.635 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 17:12:03,674.674 INFO    ] ================================================
[2026-06-12 17:12:03,690.690 INFO    ] Launching Daemon at Fri Jun 12 17:12:03 IST 2026
[2026-06-12 17:12:03,702.702 INFO    ] ================================================
[2026-06-12 17:12:04,032.032 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 17:12:04
[2026-06-12 17:12:04,343.343 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 17:12:04,473.473 INFO    ] Initializing speech engine...
[2026-06-12 17:12:04,477.477 INFO    ] 2026-06-12 17:12:04
[2026-06-12 17:12:04,695.695 INFO    ] 2026-06-12 17:12:04
[2026-06-12 17:12:04,724.724 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 17:12:04,910.910 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 17:12:04,920.920 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 17:12:05,047.047 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 17:12:05,103.103 INFO    ] time= 12/06/2026 17:12:05
[2026-06-12 17:12:05,138.138 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 17:12:05,143.143 INFO    ] Checking for existing commands in stream...
[2026-06-12 17:12:05,215.215 INFO    ] No existing commands found in stream
[2026-06-12 17:12:10,224.224 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 17:12:10,227.227 INFO    ] Waiting 0.94 seconds before fallback handling...
[2026-06-12 17:12:11,572.572 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 17:12:11,574.574 INFO    ] Checking for system updates...
[2026-06-12 17:12:11,594.594 INFO    ] 200
[2026-06-12 17:12:11,595.595 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:12:11,625.625 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 17:12:11,626.626 INFO    ] No update needed
[2026-06-12 17:12:11,627.627 INFO    ] Checking for camera pi updates...
[2026-06-12 17:12:11,647.647 INFO    ] 200
[2026-06-12 17:12:11,648.648 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:12:11,671.671 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 17:12:11,775.775 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 17:12:11,777.777 INFO    ] No camera update needed
[2026-06-12 17:12:11,778.778 INFO    ] Script finished. Safe exiting...
[2026-06-12 17:12:11,779.779 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 17:12:11,782.782 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 17:12:11,785.785 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 17:12:13,825.825 INFO    ] ================================================
[2026-06-12 17:12:13,841.841 INFO    ] Launching Daemon at Fri Jun 12 17:12:13 IST 2026
[2026-06-12 17:12:13,851.851 INFO    ] ================================================
[2026-06-12 17:12:14,236.236 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 17:12:14
[2026-06-12 17:12:14,574.574 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 17:12:14,728.728 INFO    ] Initializing speech engine...
[2026-06-12 17:12:14,732.732 INFO    ] 2026-06-12 17:12:14
[2026-06-12 17:12:14,940.940 INFO    ] 2026-06-12 17:12:14
[2026-06-12 17:12:14,969.969 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 17:12:15,154.154 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 17:12:15,164.164 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 17:12:15,308.308 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 17:12:15,363.363 INFO    ] time= 12/06/2026 17:12:15
[2026-06-12 17:12:15,385.385 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 17:12:15,391.391 INFO    ] Checking for existing commands in stream...
[2026-06-12 17:12:15,458.458 INFO    ] No existing commands found in stream
[2026-06-12 17:12:20,473.473 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 17:12:20,476.476 INFO    ] Waiting 3.37 seconds before fallback handling...
[2026-06-12 17:12:24,196.196 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 17:12:24,198.198 INFO    ] Checking for system updates...
[2026-06-12 17:12:24,218.218 INFO    ] 200
[2026-06-12 17:12:24,220.220 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:12:24,250.250 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 17:12:24,252.252 INFO    ] No update needed
[2026-06-12 17:12:24,253.253 INFO    ] Checking for camera pi updates...
[2026-06-12 17:12:24,273.273 INFO    ] 200
[2026-06-12 17:12:24,274.274 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:12:24,298.298 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 17:12:24,438.438 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 17:12:24,439.439 INFO    ] No camera update needed
[2026-06-12 17:12:24,441.441 INFO    ] Script finished. Safe exiting...
[2026-06-12 17:12:24,442.442 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 17:12:24,445.445 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 17:12:24,448.448 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 17:12:26,487.487 INFO    ] ================================================
[2026-06-12 17:12:26,504.504 INFO    ] Launching Daemon at Fri Jun 12 17:12:26 IST 2026
[2026-06-12 17:12:26,514.514 INFO    ] ================================================
[2026-06-12 17:12:26,882.882 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 17:12:26
[2026-06-12 17:12:27,198.198 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 17:12:27,345.345 INFO    ] Initializing speech engine...
[2026-06-12 17:12:27,350.350 INFO    ] 2026-06-12 17:12:27
[2026-06-12 17:12:27,553.553 INFO    ] 2026-06-12 17:12:27
[2026-06-12 17:12:27,582.582 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 17:12:27,764.764 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 17:12:27,773.773 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 17:12:27,913.913 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 17:12:27,969.969 INFO    ] time= 12/06/2026 17:12:27
[2026-06-12 17:12:27,992.992 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 17:12:27,999.999 INFO    ] Checking for existing commands in stream...
[2026-06-12 17:12:28,065.065 INFO    ] No existing commands found in stream
[2026-06-12 17:12:33,077.077 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 17:12:33,078.078 INFO    ] Waiting 3.81 seconds before fallback handling...
[2026-06-12 17:12:37,274.274 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 17:12:37,276.276 INFO    ] Checking for system updates...
[2026-06-12 17:12:37,296.296 INFO    ] 200
[2026-06-12 17:12:37,298.298 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:12:37,328.328 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 17:12:37,329.329 INFO    ] No update needed
[2026-06-12 17:12:37,331.331 INFO    ] Checking for camera pi updates...
[2026-06-12 17:12:37,350.350 INFO    ] 200
[2026-06-12 17:12:37,352.352 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:12:37,374.374 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 17:12:37,426.426 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 17:12:37,427.427 INFO    ] No camera update needed
[2026-06-12 17:12:37,429.429 INFO    ] Script finished. Safe exiting...
[2026-06-12 17:12:37,430.430 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 17:12:37,433.433 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 17:12:37,436.436 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 17:12:39,476.476 INFO    ] ================================================
[2026-06-12 17:12:39,491.491 INFO    ] Launching Daemon at Fri Jun 12 17:12:39 IST 2026
[2026-06-12 17:12:39,501.501 INFO    ] ================================================
[2026-06-12 17:12:39,873.873 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 17:12:39
[2026-06-12 17:12:40,191.191 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 17:12:40,324.324 INFO    ] Initializing speech engine...
[2026-06-12 17:12:40,329.329 INFO    ] 2026-06-12 17:12:40
[2026-06-12 17:12:40,557.557 INFO    ] 2026-06-12 17:12:40
[2026-06-12 17:12:40,588.588 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 17:12:40,783.783 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 17:12:40,794.794 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 17:12:40,939.939 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 17:12:41,005.005 INFO    ] time= 12/06/2026 17:12:40
[2026-06-12 17:12:41,030.030 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 17:12:41,032.032 INFO    ] Checking for existing commands in stream...
[2026-06-12 17:12:41,108.108 INFO    ] No existing commands found in stream
[2026-06-12 17:12:46,112.112 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 17:12:46,115.115 INFO    ] Waiting 1.30 seconds before fallback handling...
[2026-06-12 17:12:52,814.814 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 17:12:52,815.815 INFO    ] Checking for system updates...
[2026-06-12 17:12:52,836.836 INFO    ] 200
[2026-06-12 17:12:52,838.838 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:12:52,870.870 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 17:12:52,871.871 INFO    ] No update needed
[2026-06-12 17:12:52,872.872 INFO    ] Checking for camera pi updates...
[2026-06-12 17:12:52,894.894 INFO    ] 200
[2026-06-12 17:12:52,896.896 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:12:52,920.920 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 17:12:52,961.961 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 17:12:52,962.962 INFO    ] No camera update needed
[2026-06-12 17:12:52,964.964 INFO    ] Script finished. Safe exiting...
[2026-06-12 17:12:52,965.965 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 17:12:52,968.968 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 17:12:52,971.971 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 17:12:55,009.009 INFO    ] ================================================
[2026-06-12 17:12:55,025.025 INFO    ] Launching Daemon at Fri Jun 12 17:12:55 IST 2026
[2026-06-12 17:12:55,035.035 INFO    ] ================================================
[2026-06-12 17:12:55,384.384 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 17:12:55
[2026-06-12 17:12:55,694.694 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 17:12:55,837.837 INFO    ] Initializing speech engine...
[2026-06-12 17:12:55,842.842 INFO    ] 2026-06-12 17:12:55
[2026-06-12 17:12:56,044.044 INFO    ] 2026-06-12 17:12:56
[2026-06-12 17:12:56,072.072 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 17:12:56,217.217 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 17:12:56,218.218 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 17:12:56,392.392 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 17:12:56,454.454 INFO    ] time= 12/06/2026 17:12:56
[2026-06-12 17:12:56,487.487 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 17:12:56,494.494 INFO    ] Checking for existing commands in stream...
[2026-06-12 17:12:56,569.569 INFO    ] No existing commands found in stream
[2026-06-12 17:13:01,583.583 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 17:13:01,586.586 INFO    ] Waiting 2.10 seconds before fallback handling...
[2026-06-12 17:13:04,033.033 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 17:13:04,035.035 INFO    ] Checking for system updates...
[2026-06-12 17:13:04,056.056 INFO    ] 200
[2026-06-12 17:13:04,058.058 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:13:04,088.088 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 17:13:04,089.089 INFO    ] No update needed
[2026-06-12 17:13:04,091.091 INFO    ] Checking for camera pi updates...
[2026-06-12 17:13:04,111.111 INFO    ] 200
[2026-06-12 17:13:04,112.112 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:13:04,136.136 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 17:13:04,178.178 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 17:13:04,180.180 INFO    ] No camera update needed
[2026-06-12 17:13:04,181.181 INFO    ] Script finished. Safe exiting...
[2026-06-12 17:13:04,182.182 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 17:13:04,186.186 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 17:13:04,189.189 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 17:13:06,226.226 INFO    ] ================================================
[2026-06-12 17:13:06,241.241 INFO    ] Launching Daemon at Fri Jun 12 17:13:06 IST 2026
[2026-06-12 17:13:06,252.252 INFO    ] ================================================
[2026-06-12 17:13:06,619.619 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 17:13:06
[2026-06-12 17:13:06,938.938 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 17:13:07,069.069 INFO    ] Initializing speech engine...
[2026-06-12 17:13:07,077.077 INFO    ] 2026-06-12 17:13:07
[2026-06-12 17:13:07,290.290 INFO    ] 2026-06-12 17:13:07
[2026-06-12 17:13:07,319.319 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 17:13:07,501.501 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 17:13:07,510.510 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 17:13:07,643.643 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 17:13:07,706.706 INFO    ] time= 12/06/2026 17:13:07
[2026-06-12 17:13:07,729.729 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 17:13:07,735.735 INFO    ] Checking for existing commands in stream...
[2026-06-12 17:13:07,803.803 INFO    ] No existing commands found in stream
[2026-06-12 17:13:12,817.817 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 17:13:12,820.820 INFO    ] Waiting 0.47 seconds before fallback handling...
[2026-06-12 17:13:13,667.667 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 17:13:13,669.669 INFO    ] Checking for system updates...
[2026-06-12 17:13:13,689.689 INFO    ] 200
[2026-06-12 17:13:13,691.691 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:13:13,720.720 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 17:13:13,721.721 INFO    ] No update needed
[2026-06-12 17:13:13,723.723 INFO    ] Checking for camera pi updates...
[2026-06-12 17:13:13,742.742 INFO    ] 200
[2026-06-12 17:13:13,743.743 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:13:13,766.766 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 17:13:13,819.819 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 17:13:13,821.821 INFO    ] No camera update needed
[2026-06-12 17:13:13,822.822 INFO    ] Script finished. Safe exiting...
[2026-06-12 17:13:13,823.823 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 17:13:13,826.826 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 17:13:13,829.829 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 17:13:15,866.866 INFO    ] ================================================
[2026-06-12 17:13:15,882.882 INFO    ] Launching Daemon at Fri Jun 12 17:13:15 IST 2026
[2026-06-12 17:13:15,893.893 INFO    ] ================================================
[2026-06-12 17:13:16,260.260 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 17:13:16
[2026-06-12 17:13:16,576.576 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 17:13:16,715.715 INFO    ] Initializing speech engine...
[2026-06-12 17:13:16,727.727 INFO    ] 2026-06-12 17:13:16
[2026-06-12 17:13:16,929.929 INFO    ] 2026-06-12 17:13:16
[2026-06-12 17:13:16,959.959 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 17:13:17,090.090 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 17:13:17,142.142 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 17:13:17,295.295 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 17:13:17,348.348 INFO    ] time= 12/06/2026 17:13:17
[2026-06-12 17:13:17,370.370 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 17:13:17,376.376 INFO    ] Checking for existing commands in stream...
[2026-06-12 17:13:17,444.444 INFO    ] No existing commands found in stream
[2026-06-12 17:13:22,458.458 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 17:13:22,461.461 INFO    ] Waiting 1.15 seconds before fallback handling...
[2026-06-12 17:13:23,994.994 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 17:13:23,995.995 INFO    ] Checking for system updates...
[2026-06-12 17:13:24,016.016 INFO    ] 200
[2026-06-12 17:13:24,017.017 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:13:24,047.047 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 17:13:24,048.048 INFO    ] No update needed
[2026-06-12 17:13:24,050.050 INFO    ] Checking for camera pi updates...
[2026-06-12 17:13:24,070.070 INFO    ] 200
[2026-06-12 17:13:24,072.072 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:13:24,097.097 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 17:13:24,146.146 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 17:13:24,147.147 INFO    ] No camera update needed
[2026-06-12 17:13:24,149.149 INFO    ] Script finished. Safe exiting...
[2026-06-12 17:13:24,150.150 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 17:13:24,153.153 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 17:13:24,156.156 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 17:13:26,193.193 INFO    ] ================================================
[2026-06-12 17:13:26,215.215 INFO    ] Launching Daemon at Fri Jun 12 17:13:26 IST 2026
[2026-06-12 17:13:26,225.225 INFO    ] ================================================
[2026-06-12 17:13:26,590.590 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 17:13:26
[2026-06-12 17:13:26,905.905 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 17:13:27,048.048 INFO    ] Initializing speech engine...
[2026-06-12 17:13:27,053.053 INFO    ] 2026-06-12 17:13:27
[2026-06-12 17:13:27,254.254 INFO    ] 2026-06-12 17:13:27
[2026-06-12 17:13:27,283.283 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 17:13:27,595.595 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 17:13:27,661.661 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 17:13:27,810.810 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 17:13:27,813.813 INFO    ] time= 12/06/2026 17:13:27
[2026-06-12 17:13:27,816.816 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 17:13:27,818.818 INFO    ] Checking for existing commands in stream...
[2026-06-12 17:13:27,887.887 INFO    ] No existing commands found in stream
[2026-06-12 17:13:32,897.897 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 17:13:32,900.900 INFO    ] Waiting 3.36 seconds before fallback handling...
[2026-06-12 17:13:36,662.662 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 17:13:36,664.664 INFO    ] Checking for system updates...
[2026-06-12 17:13:36,700.700 INFO    ] 200
[2026-06-12 17:13:36,702.702 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:13:36,735.735 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 17:13:36,736.736 INFO    ] No update needed
[2026-06-12 17:13:36,737.737 INFO    ] Checking for camera pi updates...
[2026-06-12 17:13:36,756.756 INFO    ] 200
[2026-06-12 17:13:36,758.758 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:13:36,781.781 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 17:13:36,831.831 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 17:13:36,832.832 INFO    ] No camera update needed
[2026-06-12 17:13:36,834.834 INFO    ] Script finished. Safe exiting...
[2026-06-12 17:13:36,835.835 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 17:13:36,838.838 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 17:13:36,840.840 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 17:13:38,878.878 INFO    ] ================================================
[2026-06-12 17:13:38,893.893 INFO    ] Launching Daemon at Fri Jun 12 17:13:38 IST 2026
[2026-06-12 17:13:38,904.904 INFO    ] ================================================
[2026-06-12 17:13:39,229.229 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 17:13:39
[2026-06-12 17:13:39,540.540 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 17:13:39,671.671 INFO    ] Initializing speech engine...
[2026-06-12 17:13:39,683.683 INFO    ] 2026-06-12 17:13:39
[2026-06-12 17:13:39,888.888 INFO    ] 2026-06-12 17:13:39
[2026-06-12 17:13:39,917.917 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 17:13:40,099.099 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 17:13:40,102.102 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 17:13:40,258.258 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 17:13:40,307.307 INFO    ] time= 12/06/2026 17:13:40
[2026-06-12 17:13:40,328.328 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 17:13:40,334.334 INFO    ] Checking for existing commands in stream...
[2026-06-12 17:13:40,401.401 INFO    ] No existing commands found in stream
[2026-06-12 17:13:45,414.414 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 17:13:45,417.417 INFO    ] Waiting 0.56 seconds before fallback handling...
[2026-06-12 17:13:46,885.885 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 17:13:46,886.886 INFO    ] Checking for system updates...
[2026-06-12 17:13:46,907.907 INFO    ] 200
[2026-06-12 17:13:46,908.908 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:13:46,941.941 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 17:13:46,943.943 INFO    ] No update needed
[2026-06-12 17:13:46,946.946 INFO    ] Checking for camera pi updates...
[2026-06-12 17:13:46,983.983 INFO    ] 200
[2026-06-12 17:13:46,986.986 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:13:47,028.028 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 17:13:47,075.075 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 17:13:47,077.077 INFO    ] No camera update needed
[2026-06-12 17:13:47,078.078 INFO    ] Script finished. Safe exiting...
[2026-06-12 17:13:47,079.079 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 17:13:47,082.082 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 17:13:47,085.085 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 17:13:49,122.122 INFO    ] ================================================
[2026-06-12 17:13:49,137.137 INFO    ] Launching Daemon at Fri Jun 12 17:13:49 IST 2026
[2026-06-12 17:13:49,148.148 INFO    ] ================================================
[2026-06-12 17:13:49,514.514 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 17:13:49
[2026-06-12 17:13:49,825.825 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 17:13:49,959.959 INFO    ] Initializing speech engine...
[2026-06-12 17:13:49,962.962 INFO    ] 2026-06-12 17:13:49
[2026-06-12 17:13:50,166.166 INFO    ] 2026-06-12 17:13:50
[2026-06-12 17:13:50,200.200 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 17:13:50,365.365 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 17:13:50,428.428 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 17:13:50,578.578 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 17:13:50,642.642 INFO    ] time= 12/06/2026 17:13:50
[2026-06-12 17:13:50,671.671 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 17:13:50,677.677 INFO    ] Checking for existing commands in stream...
[2026-06-12 17:13:50,754.754 INFO    ] No existing commands found in stream
[2026-06-12 17:13:55,763.763 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 17:13:55,771.771 INFO    ] Waiting 1.89 seconds before fallback handling...
[2026-06-12 17:14:01,349.349 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 17:14:01,352.352 INFO    ] Checking for system updates...
[2026-06-12 17:14:01,390.390 INFO    ] 200
[2026-06-12 17:14:01,392.392 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:14:01,452.452 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 17:14:01,455.455 INFO    ] No update needed
[2026-06-12 17:14:01,457.457 INFO    ] Checking for camera pi updates...
[2026-06-12 17:14:01,491.491 INFO    ] 200
[2026-06-12 17:14:01,494.494 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:14:01,525.525 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 17:14:01,559.559 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 17:14:01,560.560 INFO    ] No camera update needed
[2026-06-12 17:14:01,562.562 INFO    ] Script finished. Safe exiting...
[2026-06-12 17:14:01,563.563 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 17:14:01,566.566 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 17:14:01,569.569 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 17:14:03,602.602 INFO    ] ================================================
[2026-06-12 17:14:03,617.617 INFO    ] Launching Daemon at Fri Jun 12 17:14:03 IST 2026
[2026-06-12 17:14:03,628.628 INFO    ] ================================================
[2026-06-12 17:14:03,952.952 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 17:14:03
[2026-06-12 17:14:04,269.269 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 17:14:04,413.413 INFO    ] Initializing speech engine...
[2026-06-12 17:14:04,418.418 INFO    ] 2026-06-12 17:14:04
[2026-06-12 17:14:04,623.623 INFO    ] 2026-06-12 17:14:04
[2026-06-12 17:14:04,651.651 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 17:14:04,834.834 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 17:14:04,837.837 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 17:14:04,984.984 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 17:14:05,041.041 INFO    ] time= 12/06/2026 17:14:04
[2026-06-12 17:14:05,064.064 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 17:14:05,070.070 INFO    ] Checking for existing commands in stream...
[2026-06-12 17:14:05,137.137 INFO    ] No existing commands found in stream
[2026-06-12 17:14:10,169.169 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 17:14:10,172.172 INFO    ] Waiting 3.03 seconds before fallback handling...
[2026-06-12 17:14:13,661.661 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 17:14:13,662.662 INFO    ] Checking for system updates...
[2026-06-12 17:14:13,683.683 INFO    ] 200
[2026-06-12 17:14:13,684.684 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:14:13,718.718 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 17:14:13,719.719 INFO    ] No update needed
[2026-06-12 17:14:13,721.721 INFO    ] Checking for camera pi updates...
[2026-06-12 17:14:13,740.740 INFO    ] 200
[2026-06-12 17:14:13,741.741 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:14:13,764.764 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 17:14:13,853.853 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 17:14:13,855.855 INFO    ] No camera update needed
[2026-06-12 17:14:13,856.856 INFO    ] Script finished. Safe exiting...
[2026-06-12 17:14:13,857.857 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 17:14:13,860.860 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 17:14:13,863.863 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 17:14:15,901.901 INFO    ] ================================================
[2026-06-12 17:14:15,916.916 INFO    ] Launching Daemon at Fri Jun 12 17:14:15 IST 2026
[2026-06-12 17:14:15,927.927 INFO    ] ================================================
[2026-06-12 17:14:16,295.295 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 17:14:16
[2026-06-12 17:14:16,609.609 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 17:14:16,741.741 INFO    ] Initializing speech engine...
[2026-06-12 17:14:16,749.749 INFO    ] 2026-06-12 17:14:16
[2026-06-12 17:14:16,965.965 INFO    ] 2026-06-12 17:14:16
[2026-06-12 17:14:16,993.993 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 17:14:17,181.181 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 17:14:17,189.189 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 17:14:17,315.315 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 17:14:17,375.375 INFO    ] time= 12/06/2026 17:14:17
[2026-06-12 17:14:17,411.411 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 17:14:17,421.421 INFO    ] Checking for existing commands in stream...
[2026-06-12 17:14:17,541.541 INFO    ] No existing commands found in stream
[2026-06-12 17:14:22,551.551 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 17:14:22,553.553 INFO    ] Waiting 2.35 seconds before fallback handling...
[2026-06-12 17:14:25,303.303 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 17:14:25,305.305 INFO    ] Checking for system updates...
[2026-06-12 17:14:25,326.326 INFO    ] 200
[2026-06-12 17:14:25,327.327 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:14:25,357.357 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 17:14:25,358.358 INFO    ] No update needed
[2026-06-12 17:14:25,360.360 INFO    ] Checking for camera pi updates...
[2026-06-12 17:14:25,379.379 INFO    ] 200
[2026-06-12 17:14:25,381.381 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:14:25,404.404 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 17:14:25,452.452 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 17:14:25,454.454 INFO    ] No camera update needed
[2026-06-12 17:14:25,455.455 INFO    ] Script finished. Safe exiting...
[2026-06-12 17:14:25,456.456 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 17:14:25,459.459 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 17:14:25,463.463 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 17:14:27,501.501 INFO    ] ================================================
[2026-06-12 17:14:27,516.516 INFO    ] Launching Daemon at Fri Jun 12 17:14:27 IST 2026
[2026-06-12 17:14:27,526.526 INFO    ] ================================================
[2026-06-12 17:14:27,886.886 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 17:14:27
[2026-06-12 17:14:28,221.221 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 17:14:28,371.371 INFO    ] Initializing speech engine...
[2026-06-12 17:14:28,376.376 INFO    ] 2026-06-12 17:14:28
[2026-06-12 17:14:28,583.583 INFO    ] 2026-06-12 17:14:28
[2026-06-12 17:14:28,613.613 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 17:14:28,798.798 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 17:14:28,808.808 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 17:14:28,982.982 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 17:14:29,044.044 INFO    ] time= 12/06/2026 17:14:28
[2026-06-12 17:14:29,052.052 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 17:14:29,054.054 INFO    ] Checking for existing commands in stream...
[2026-06-12 17:14:29,122.122 INFO    ] No existing commands found in stream
[2026-06-12 17:14:34,156.156 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 17:14:34,159.159 INFO    ] Waiting 2.29 seconds before fallback handling...
[2026-06-12 17:14:37,901.901 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 17:14:37,903.903 INFO    ] Checking for system updates...
[2026-06-12 17:14:37,924.924 INFO    ] 200
[2026-06-12 17:14:37,925.925 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:14:37,955.955 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 17:14:37,956.956 INFO    ] No update needed
[2026-06-12 17:14:37,958.958 INFO    ] Checking for camera pi updates...
[2026-06-12 17:14:37,977.977 INFO    ] 200
[2026-06-12 17:14:37,979.979 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:14:38,008.008 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 17:14:38,068.068 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 17:14:38,070.070 INFO    ] No camera update needed
[2026-06-12 17:14:38,071.071 INFO    ] Script finished. Safe exiting...
[2026-06-12 17:14:38,072.072 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 17:14:38,076.076 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 17:14:38,079.079 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 17:14:40,117.117 INFO    ] ================================================
[2026-06-12 17:14:40,132.132 INFO    ] Launching Daemon at Fri Jun 12 17:14:40 IST 2026
[2026-06-12 17:14:40,143.143 INFO    ] ================================================
[2026-06-12 17:14:40,480.480 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 17:14:40
[2026-06-12 17:14:40,793.793 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 17:14:40,929.929 INFO    ] Initializing speech engine...
[2026-06-12 17:14:40,933.933 INFO    ] 2026-06-12 17:14:40
[2026-06-12 17:14:41,163.163 INFO    ] 2026-06-12 17:14:41
[2026-06-12 17:14:41,194.194 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 17:14:41,327.327 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 17:14:41,380.380 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 17:14:41,543.543 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 17:14:41,609.609 INFO    ] time= 12/06/2026 17:14:41
[2026-06-12 17:14:41,644.644 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 17:14:41,651.651 INFO    ] Checking for existing commands in stream...
[2026-06-12 17:14:41,776.776 INFO    ] No existing commands found in stream
[2026-06-12 17:14:46,787.787 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 17:14:46,790.790 INFO    ] Waiting 3.81 seconds before fallback handling...
[2026-06-12 17:14:51,010.010 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 17:14:51,012.012 INFO    ] Checking for system updates...
[2026-06-12 17:14:51,032.032 INFO    ] 200
[2026-06-12 17:14:51,034.034 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:14:51,064.064 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 17:14:51,065.065 INFO    ] No update needed
[2026-06-12 17:14:51,067.067 INFO    ] Checking for camera pi updates...
[2026-06-12 17:14:51,086.086 INFO    ] 200
[2026-06-12 17:14:51,088.088 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:14:51,111.111 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 17:14:51,160.160 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 17:14:51,162.162 INFO    ] No camera update needed
[2026-06-12 17:14:51,163.163 INFO    ] Script finished. Safe exiting...
[2026-06-12 17:14:51,164.164 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 17:14:51,168.168 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 17:14:51,171.171 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 17:14:53,210.210 INFO    ] ================================================
[2026-06-12 17:14:53,225.225 INFO    ] Launching Daemon at Fri Jun 12 17:14:53 IST 2026
[2026-06-12 17:14:53,236.236 INFO    ] ================================================
[2026-06-12 17:14:53,598.598 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 17:14:53
[2026-06-12 17:14:53,935.935 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 17:14:54,088.088 INFO    ] Initializing speech engine...
[2026-06-12 17:14:54,093.093 INFO    ] 2026-06-12 17:14:54
[2026-06-12 17:14:54,298.298 INFO    ] 2026-06-12 17:14:54
[2026-06-12 17:14:54,326.326 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 17:14:54,510.510 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 17:14:54,520.520 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 17:14:54,712.712 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 17:14:54,737.737 INFO    ] time= 12/06/2026 17:14:54
[2026-06-12 17:14:54,742.742 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 17:14:54,744.744 INFO    ] Checking for existing commands in stream...
[2026-06-12 17:14:54,811.811 INFO    ] No existing commands found in stream
[2026-06-12 17:14:59,825.825 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 17:14:59,828.828 INFO    ] Waiting 2.05 seconds before fallback handling...
[2026-06-12 17:15:02,446.446 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 17:15:02,448.448 INFO    ] Checking for system updates...
[2026-06-12 17:15:02,473.473 INFO    ] 200
[2026-06-12 17:15:02,475.475 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:15:02,511.511 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 17:15:02,513.513 INFO    ] No update needed
[2026-06-12 17:15:02,515.515 INFO    ] Checking for camera pi updates...
[2026-06-12 17:15:02,537.537 INFO    ] 200
[2026-06-12 17:15:02,539.539 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:15:02,570.570 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 17:15:02,612.612 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 17:15:02,614.614 INFO    ] No camera update needed
[2026-06-12 17:15:02,616.616 INFO    ] Script finished. Safe exiting...
[2026-06-12 17:15:02,618.618 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 17:15:02,624.624 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 17:15:02,628.628 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 17:15:04,660.660 INFO    ] ================================================
[2026-06-12 17:15:04,675.675 INFO    ] Launching Daemon at Fri Jun 12 17:15:04 IST 2026
[2026-06-12 17:15:04,686.686 INFO    ] ================================================
[2026-06-12 17:15:05,027.027 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 17:15:05
[2026-06-12 17:15:05,338.338 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 17:15:05,473.473 INFO    ] Initializing speech engine...
[2026-06-12 17:15:05,486.486 INFO    ] 2026-06-12 17:15:05
[2026-06-12 17:15:05,704.704 INFO    ] 2026-06-12 17:15:05
[2026-06-12 17:15:05,735.735 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 17:15:05,934.934 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 17:15:05,937.937 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 17:15:06,085.085 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 17:15:06,149.149 INFO    ] time= 12/06/2026 17:15:06
[2026-06-12 17:15:06,183.183 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 17:15:06,185.185 INFO    ] Checking for existing commands in stream...
[2026-06-12 17:15:06,261.261 INFO    ] No existing commands found in stream
[2026-06-12 17:15:11,272.272 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 17:15:11,274.274 INFO    ] Waiting 3.15 seconds before fallback handling...
[2026-06-12 17:15:14,811.811 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 17:15:14,812.812 INFO    ] Checking for system updates...
[2026-06-12 17:15:14,833.833 INFO    ] 200
[2026-06-12 17:15:14,834.834 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:15:14,864.864 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 17:15:14,865.865 INFO    ] No update needed
[2026-06-12 17:15:14,866.866 INFO    ] Checking for camera pi updates...
[2026-06-12 17:15:14,885.885 INFO    ] 200
[2026-06-12 17:15:14,887.887 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:15:14,910.910 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 17:15:14,960.960 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 17:15:14,961.961 INFO    ] No camera update needed
[2026-06-12 17:15:14,963.963 INFO    ] Script finished. Safe exiting...
[2026-06-12 17:15:14,964.964 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 17:15:14,967.967 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 17:15:14,970.970 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 17:15:17,008.008 INFO    ] ================================================
[2026-06-12 17:15:17,023.023 INFO    ] Launching Daemon at Fri Jun 12 17:15:17 IST 2026
[2026-06-12 17:15:17,034.034 INFO    ] ================================================
[2026-06-12 17:15:17,377.377 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 17:15:17
[2026-06-12 17:15:17,694.694 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 17:15:17,836.836 INFO    ] Initializing speech engine...
[2026-06-12 17:15:17,841.841 INFO    ] 2026-06-12 17:15:17
[2026-06-12 17:15:18,045.045 INFO    ] 2026-06-12 17:15:18
[2026-06-12 17:15:18,073.073 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 17:15:18,258.258 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 17:15:18,266.266 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 17:15:18,396.396 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 17:15:18,450.450 INFO    ] time= 12/06/2026 17:15:18
[2026-06-12 17:15:18,484.484 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 17:15:18,489.489 INFO    ] Checking for existing commands in stream...
[2026-06-12 17:15:18,560.560 INFO    ] No existing commands found in stream
[2026-06-12 17:15:23,574.574 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 17:15:23,577.577 INFO    ] Waiting 0.25 seconds before fallback handling...
[2026-06-12 17:15:24,201.201 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 17:15:24,202.202 INFO    ] Checking for system updates...
[2026-06-12 17:15:24,223.223 INFO    ] 200
[2026-06-12 17:15:24,224.224 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:15:24,254.254 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 17:15:24,256.256 INFO    ] No update needed
[2026-06-12 17:15:24,257.257 INFO    ] Checking for camera pi updates...
[2026-06-12 17:15:24,278.278 INFO    ] 200
[2026-06-12 17:15:24,280.280 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:15:24,302.302 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 17:15:24,348.348 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 17:15:24,349.349 INFO    ] No camera update needed
[2026-06-12 17:15:24,350.350 INFO    ] Script finished. Safe exiting...
[2026-06-12 17:15:24,352.352 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 17:15:24,355.355 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 17:15:24,357.357 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 17:15:26,396.396 INFO    ] ================================================
[2026-06-12 17:15:26,412.412 INFO    ] Launching Daemon at Fri Jun 12 17:15:26 IST 2026
[2026-06-12 17:15:26,422.422 INFO    ] ================================================
[2026-06-12 17:15:26,760.760 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 17:15:26
[2026-06-12 17:15:27,076.076 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 17:15:27,215.215 INFO    ] Initializing speech engine...
[2026-06-12 17:15:27,225.225 INFO    ] 2026-06-12 17:15:27
[2026-06-12 17:15:27,429.429 INFO    ] 2026-06-12 17:15:27
[2026-06-12 17:15:27,457.457 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 17:15:27,642.642 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 17:15:27,651.651 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 17:15:27,776.776 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 17:15:27,843.843 INFO    ] time= 12/06/2026 17:15:27
[2026-06-12 17:15:27,871.871 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 17:15:27,876.876 INFO    ] Checking for existing commands in stream...
[2026-06-12 17:15:27,943.943 INFO    ] No existing commands found in stream
[2026-06-12 17:15:32,956.956 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 17:15:32,958.958 INFO    ] Waiting 2.21 seconds before fallback handling...
[2026-06-12 17:15:35,527.527 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 17:15:35,529.529 INFO    ] Checking for system updates...
[2026-06-12 17:15:35,550.550 INFO    ] 200
[2026-06-12 17:15:35,551.551 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:15:35,581.581 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 17:15:35,582.582 INFO    ] No update needed
[2026-06-12 17:15:35,583.583 INFO    ] Checking for camera pi updates...
[2026-06-12 17:15:35,603.603 INFO    ] 200
[2026-06-12 17:15:35,604.604 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:15:35,628.628 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 17:15:35,678.678 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 17:15:35,680.680 INFO    ] No camera update needed
[2026-06-12 17:15:35,681.681 INFO    ] Script finished. Safe exiting...
[2026-06-12 17:15:35,682.682 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 17:15:35,685.685 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 17:15:35,688.688 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 17:15:37,726.726 INFO    ] ================================================
[2026-06-12 17:15:37,742.742 INFO    ] Launching Daemon at Fri Jun 12 17:15:37 IST 2026
[2026-06-12 17:15:37,753.753 INFO    ] ================================================
[2026-06-12 17:15:38,109.109 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 17:15:38
[2026-06-12 17:15:38,423.423 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 17:15:38,557.557 INFO    ] Initializing speech engine...
[2026-06-12 17:15:38,561.561 INFO    ] 2026-06-12 17:15:38
[2026-06-12 17:15:38,791.791 INFO    ] 2026-06-12 17:15:38
[2026-06-12 17:15:38,821.821 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 17:15:39,019.019 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 17:15:39,022.022 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 17:15:39,180.180 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 17:15:39,241.241 INFO    ] time= 12/06/2026 17:15:39
[2026-06-12 17:15:39,267.267 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 17:15:39,274.274 INFO    ] Checking for existing commands in stream...
[2026-06-12 17:15:39,346.346 INFO    ] No existing commands found in stream
[2026-06-12 17:15:44,375.375 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 17:15:44,378.378 INFO    ] Waiting 2.02 seconds before fallback handling...
[2026-06-12 17:15:46,762.762 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 17:15:46,764.764 INFO    ] Checking for system updates...
[2026-06-12 17:15:46,784.784 INFO    ] 200
[2026-06-12 17:15:46,786.786 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:15:46,816.816 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 17:15:46,817.817 INFO    ] No update needed
[2026-06-12 17:15:46,819.819 INFO    ] Checking for camera pi updates...
[2026-06-12 17:15:46,839.839 INFO    ] 200
[2026-06-12 17:15:46,841.841 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:15:46,864.864 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 17:15:46,907.907 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 17:15:46,909.909 INFO    ] No camera update needed
[2026-06-12 17:15:46,911.911 INFO    ] Script finished. Safe exiting...
[2026-06-12 17:15:46,912.912 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 17:15:46,915.915 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 17:15:46,918.918 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 17:15:48,957.957 INFO    ] ================================================
[2026-06-12 17:15:48,973.973 INFO    ] Launching Daemon at Fri Jun 12 17:15:48 IST 2026
[2026-06-12 17:15:48,985.985 INFO    ] ================================================
[2026-06-12 17:15:49,315.315 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 17:15:49
[2026-06-12 17:15:49,626.626 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 17:15:49,768.768 INFO    ] Initializing speech engine...
[2026-06-12 17:15:49,773.773 INFO    ] 2026-06-12 17:15:49
[2026-06-12 17:15:49,976.976 INFO    ] 2026-06-12 17:15:49
[2026-06-12 17:15:50,004.004 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 17:15:50,158.158 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 17:15:50,192.192 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 17:15:50,334.334 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 17:15:50,406.406 INFO    ] time= 12/06/2026 17:15:50
[2026-06-12 17:15:50,435.435 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 17:15:50,441.441 INFO    ] Checking for existing commands in stream...
[2026-06-12 17:15:50,568.568 INFO    ] No existing commands found in stream
[2026-06-12 17:15:55,578.578 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 17:15:55,581.581 INFO    ] Waiting 1.38 seconds before fallback handling...
[2026-06-12 17:15:57,323.323 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 17:15:57,324.324 INFO    ] Checking for system updates...
[2026-06-12 17:15:57,345.345 INFO    ] 200
[2026-06-12 17:15:57,346.346 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:15:57,379.379 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 17:15:57,381.381 INFO    ] No update needed
[2026-06-12 17:15:57,382.382 INFO    ] Checking for camera pi updates...
[2026-06-12 17:15:57,401.401 INFO    ] 200
[2026-06-12 17:15:57,403.403 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:15:57,425.425 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 17:15:57,472.472 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 17:15:57,474.474 INFO    ] No camera update needed
[2026-06-12 17:15:57,475.475 INFO    ] Script finished. Safe exiting...
[2026-06-12 17:15:57,476.476 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 17:15:57,479.479 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 17:15:57,482.482 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 17:15:59,521.521 INFO    ] ================================================
[2026-06-12 17:15:59,536.536 INFO    ] Launching Daemon at Fri Jun 12 17:15:59 IST 2026
[2026-06-12 17:15:59,547.547 INFO    ] ================================================
[2026-06-12 17:15:59,888.888 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 17:15:59
[2026-06-12 17:16:00,200.200 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 17:16:00,333.333 INFO    ] Initializing speech engine...
[2026-06-12 17:16:00,338.338 INFO    ] 2026-06-12 17:16:00
[2026-06-12 17:16:00,540.540 INFO    ] 2026-06-12 17:16:00
[2026-06-12 17:16:00,575.575 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 17:16:00,732.732 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 17:16:00,777.777 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 17:16:00,944.944 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 17:16:01,001.001 INFO    ] time= 12/06/2026 17:16:00
[2026-06-12 17:16:01,031.031 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 17:16:01,054.054 INFO    ] Checking for existing commands in stream...
[2026-06-12 17:16:01,132.132 INFO    ] No existing commands found in stream
[2026-06-12 17:16:06,141.141 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 17:16:06,144.144 INFO    ] Waiting 3.69 seconds before fallback handling...
[2026-06-12 17:16:10,194.194 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 17:16:10,195.195 INFO    ] Checking for system updates...
[2026-06-12 17:16:10,216.216 INFO    ] 200
[2026-06-12 17:16:10,217.217 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:16:10,248.248 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 17:16:10,250.250 INFO    ] No update needed
[2026-06-12 17:16:10,251.251 INFO    ] Checking for camera pi updates...
[2026-06-12 17:16:10,271.271 INFO    ] 200
[2026-06-12 17:16:10,272.272 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:16:10,295.295 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 17:16:10,339.339 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 17:16:10,340.340 INFO    ] No camera update needed
[2026-06-12 17:16:10,342.342 INFO    ] Script finished. Safe exiting...
[2026-06-12 17:16:10,343.343 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 17:16:10,346.346 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 17:16:10,348.348 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 17:16:12,388.388 INFO    ] ================================================
[2026-06-12 17:16:12,403.403 INFO    ] Launching Daemon at Fri Jun 12 17:16:12 IST 2026
[2026-06-12 17:16:12,414.414 INFO    ] ================================================
[2026-06-12 17:16:12,740.740 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 17:16:12
[2026-06-12 17:16:13,056.056 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 17:16:13,200.200 INFO    ] Initializing speech engine...
[2026-06-12 17:16:13,205.205 INFO    ] 2026-06-12 17:16:13
[2026-06-12 17:16:13,408.408 INFO    ] 2026-06-12 17:16:13
[2026-06-12 17:16:13,437.437 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 17:16:13,619.619 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 17:16:13,629.629 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 17:16:13,779.779 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 17:16:13,827.827 INFO    ] time= 12/06/2026 17:16:13
[2026-06-12 17:16:13,849.849 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 17:16:13,855.855 INFO    ] Checking for existing commands in stream...
[2026-06-12 17:16:13,922.922 INFO    ] No existing commands found in stream
[2026-06-12 17:16:18,936.936 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 17:16:18,939.939 INFO    ] Waiting 1.74 seconds before fallback handling...
[2026-06-12 17:16:21,031.031 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 17:16:21,033.033 INFO    ] Checking for system updates...
[2026-06-12 17:16:21,053.053 INFO    ] 200
[2026-06-12 17:16:21,055.055 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:16:21,085.085 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 17:16:21,086.086 INFO    ] No update needed
[2026-06-12 17:16:21,087.087 INFO    ] Checking for camera pi updates...
[2026-06-12 17:16:21,107.107 INFO    ] 200
[2026-06-12 17:16:21,108.108 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:16:21,133.133 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 17:16:21,185.185 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 17:16:21,186.186 INFO    ] No camera update needed
[2026-06-12 17:16:21,188.188 INFO    ] Script finished. Safe exiting...
[2026-06-12 17:16:21,189.189 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 17:16:21,192.192 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 17:16:21,195.195 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 17:16:23,235.235 INFO    ] ================================================
[2026-06-12 17:16:23,251.251 INFO    ] Launching Daemon at Fri Jun 12 17:16:23 IST 2026
[2026-06-12 17:16:23,262.262 INFO    ] ================================================
[2026-06-12 17:16:23,629.629 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 17:16:23
[2026-06-12 17:16:23,947.947 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 17:16:24,091.091 INFO    ] Initializing speech engine...
[2026-06-12 17:16:24,096.096 INFO    ] 2026-06-12 17:16:24
[2026-06-12 17:16:24,299.299 INFO    ] 2026-06-12 17:16:24
[2026-06-12 17:16:24,329.329 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 17:16:24,513.513 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 17:16:24,523.523 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 17:16:24,666.666 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 17:16:24,719.719 INFO    ] time= 12/06/2026 17:16:24
[2026-06-12 17:16:24,741.741 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 17:16:24,748.748 INFO    ] Checking for existing commands in stream...
[2026-06-12 17:16:24,814.814 INFO    ] No existing commands found in stream
[2026-06-12 17:16:29,833.833 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 17:16:29,836.836 INFO    ] Waiting 0.10 seconds before fallback handling...
[2026-06-12 17:16:30,289.289 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 17:16:30,291.291 INFO    ] Checking for system updates...
[2026-06-12 17:16:30,311.311 INFO    ] 200
[2026-06-12 17:16:30,312.312 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:16:30,342.342 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 17:16:30,343.343 INFO    ] No update needed
[2026-06-12 17:16:30,344.344 INFO    ] Checking for camera pi updates...
[2026-06-12 17:16:30,363.363 INFO    ] 200
[2026-06-12 17:16:30,365.365 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:16:30,388.388 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 17:16:30,430.430 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 17:16:30,431.431 INFO    ] No camera update needed
[2026-06-12 17:16:30,432.432 INFO    ] Script finished. Safe exiting...
[2026-06-12 17:16:30,434.434 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 17:16:30,436.436 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 17:16:30,439.439 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 17:16:32,484.484 INFO    ] ================================================
[2026-06-12 17:16:32,500.500 INFO    ] Launching Daemon at Fri Jun 12 17:16:32 IST 2026
[2026-06-12 17:16:32,511.511 INFO    ] ================================================
[2026-06-12 17:16:32,845.845 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 17:16:32
[2026-06-12 17:16:33,161.161 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 17:16:33,305.305 INFO    ] Initializing speech engine...
[2026-06-12 17:16:33,310.310 INFO    ] 2026-06-12 17:16:33
[2026-06-12 17:16:33,513.513 INFO    ] 2026-06-12 17:16:33
[2026-06-12 17:16:33,541.541 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 17:16:33,725.725 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 17:16:33,733.733 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 17:16:33,884.884 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 17:16:33,933.933 INFO    ] time= 12/06/2026 17:16:33
[2026-06-12 17:16:33,954.954 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 17:16:33,961.961 INFO    ] Checking for existing commands in stream...
[2026-06-12 17:16:34,027.027 INFO    ] No existing commands found in stream
[2026-06-12 17:16:39,036.036 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 17:16:39,039.039 INFO    ] Waiting 3.19 seconds before fallback handling...
[2026-06-12 17:16:42,634.634 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 17:16:42,636.636 INFO    ] Checking for system updates...
[2026-06-12 17:16:42,656.656 INFO    ] 200
[2026-06-12 17:16:42,657.657 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:16:42,687.687 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 17:16:42,689.689 INFO    ] No update needed
[2026-06-12 17:16:42,690.690 INFO    ] Checking for camera pi updates...
[2026-06-12 17:16:42,709.709 INFO    ] 200
[2026-06-12 17:16:42,711.711 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:16:42,734.734 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 17:16:42,877.877 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 17:16:42,878.878 INFO    ] No camera update needed
[2026-06-12 17:16:42,880.880 INFO    ] Script finished. Safe exiting...
[2026-06-12 17:16:42,881.881 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 17:16:42,884.884 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 17:16:42,887.887 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 17:16:44,925.925 INFO    ] ================================================
[2026-06-12 17:16:44,941.941 INFO    ] Launching Daemon at Fri Jun 12 17:16:44 IST 2026
[2026-06-12 17:16:44,953.953 INFO    ] ================================================
[2026-06-12 17:16:45,300.300 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 17:16:45
[2026-06-12 17:16:45,614.614 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 17:16:45,746.746 INFO    ] Initializing speech engine...
[2026-06-12 17:16:45,750.750 INFO    ] 2026-06-12 17:16:45
[2026-06-12 17:16:45,968.968 INFO    ] 2026-06-12 17:16:45
[2026-06-12 17:16:45,998.998 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 17:16:46,126.126 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 17:16:46,185.185 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 17:16:46,321.321 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 17:16:46,389.389 INFO    ] time= 12/06/2026 17:16:46
[2026-06-12 17:16:46,413.413 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 17:16:46,419.419 INFO    ] Checking for existing commands in stream...
[2026-06-12 17:16:46,486.486 INFO    ] No existing commands found in stream
[2026-06-12 17:16:51,495.495 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 17:16:51,498.498 INFO    ] Waiting 0.58 seconds before fallback handling...
[2026-06-12 17:16:52,451.451 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 17:16:52,453.453 INFO    ] Checking for system updates...
[2026-06-12 17:16:52,473.473 INFO    ] 200
[2026-06-12 17:16:52,474.474 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:16:52,509.509 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 17:16:52,511.511 INFO    ] No update needed
[2026-06-12 17:16:52,513.513 INFO    ] Checking for camera pi updates...
[2026-06-12 17:16:52,535.535 INFO    ] 200
[2026-06-12 17:16:52,536.536 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:16:52,559.559 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 17:16:52,607.607 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 17:16:52,608.608 INFO    ] No camera update needed
[2026-06-12 17:16:52,609.609 INFO    ] Script finished. Safe exiting...
[2026-06-12 17:16:52,611.611 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 17:16:52,614.614 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 17:16:52,617.617 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 17:16:54,656.656 INFO    ] ================================================
[2026-06-12 17:16:54,672.672 INFO    ] Launching Daemon at Fri Jun 12 17:16:54 IST 2026
[2026-06-12 17:16:54,683.683 INFO    ] ================================================
[2026-06-12 17:16:55,020.020 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 17:16:55
[2026-06-12 17:16:55,338.338 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 17:16:55,488.488 INFO    ] Initializing speech engine...
[2026-06-12 17:16:55,501.501 INFO    ] 2026-06-12 17:16:55
[2026-06-12 17:16:55,738.738 INFO    ] 2026-06-12 17:16:55
[2026-06-12 17:16:55,766.766 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 17:16:55,949.949 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 17:16:55,958.958 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 17:16:56,085.085 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 17:16:56,154.154 INFO    ] time= 12/06/2026 17:16:56
[2026-06-12 17:16:56,178.178 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 17:16:56,184.184 INFO    ] Checking for existing commands in stream...
[2026-06-12 17:16:56,251.251 INFO    ] No existing commands found in stream
[2026-06-12 17:17:01,265.265 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 17:17:01,268.268 INFO    ] Waiting 2.32 seconds before fallback handling...
[2026-06-12 17:17:03,975.975 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 17:17:03,976.976 INFO    ] Checking for system updates...
[2026-06-12 17:17:03,997.997 INFO    ] 200
[2026-06-12 17:17:03,998.998 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:17:04,028.028 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 17:17:04,029.029 INFO    ] No update needed
[2026-06-12 17:17:04,031.031 INFO    ] Checking for camera pi updates...
[2026-06-12 17:17:04,050.050 INFO    ] 200
[2026-06-12 17:17:04,071.071 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:17:04,095.095 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 17:17:04,138.138 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 17:17:04,139.139 INFO    ] No camera update needed
[2026-06-12 17:17:04,140.140 INFO    ] Script finished. Safe exiting...
[2026-06-12 17:17:04,142.142 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 17:17:04,145.145 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 17:17:04,147.147 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 17:17:06,187.187 INFO    ] ================================================
[2026-06-12 17:17:06,204.204 INFO    ] Launching Daemon at Fri Jun 12 17:17:06 IST 2026
[2026-06-12 17:17:06,215.215 INFO    ] ================================================
[2026-06-12 17:17:06,542.542 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 17:17:06
[2026-06-12 17:17:06,856.856 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 17:17:06,989.989 INFO    ] Initializing speech engine...
[2026-06-12 17:17:06,994.994 INFO    ] 2026-06-12 17:17:06
[2026-06-12 17:17:07,202.202 INFO    ] 2026-06-12 17:17:07
[2026-06-12 17:17:07,231.231 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 17:17:07,388.388 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 17:17:07,451.451 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 17:17:07,598.598 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 17:17:07,665.665 INFO    ] time= 12/06/2026 17:17:07
[2026-06-12 17:17:07,697.697 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 17:17:07,704.704 INFO    ] Checking for existing commands in stream...
[2026-06-12 17:17:07,771.771 INFO    ] No existing commands found in stream
[2026-06-12 17:17:12,780.780 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 17:17:12,782.782 INFO    ] Waiting 3.71 seconds before fallback handling...
[2026-06-12 17:17:16,872.872 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 17:17:16,874.874 INFO    ] Checking for system updates...
[2026-06-12 17:17:16,894.894 INFO    ] 200
[2026-06-12 17:17:16,895.895 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:17:16,925.925 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 17:17:16,927.927 INFO    ] No update needed
[2026-06-12 17:17:16,928.928 INFO    ] Checking for camera pi updates...
[2026-06-12 17:17:16,948.948 INFO    ] 200
[2026-06-12 17:17:16,949.949 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:17:16,974.974 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 17:17:17,035.035 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 17:17:17,036.036 INFO    ] No camera update needed
[2026-06-12 17:17:17,037.037 INFO    ] Script finished. Safe exiting...
[2026-06-12 17:17:17,038.038 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 17:17:17,041.041 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 17:17:17,044.044 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 17:17:19,083.083 INFO    ] ================================================
[2026-06-12 17:17:19,099.099 INFO    ] Launching Daemon at Fri Jun 12 17:17:19 IST 2026
[2026-06-12 17:17:19,110.110 INFO    ] ================================================
[2026-06-12 17:17:19,464.464 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 17:17:19
[2026-06-12 17:17:19,801.801 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 17:17:19,947.947 INFO    ] Initializing speech engine...
[2026-06-12 17:17:19,955.955 INFO    ] 2026-06-12 17:17:19
[2026-06-12 17:17:20,166.166 INFO    ] 2026-06-12 17:17:20
[2026-06-12 17:17:20,197.197 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 17:17:20,383.383 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 17:17:20,387.387 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 17:17:20,521.521 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 17:17:20,589.589 INFO    ] time= 12/06/2026 17:17:20
[2026-06-12 17:17:20,617.617 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 17:17:20,619.619 INFO    ] Checking for existing commands in stream...
[2026-06-12 17:17:20,691.691 INFO    ] No existing commands found in stream
[2026-06-12 17:17:25,715.715 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 17:17:25,719.719 INFO    ] Waiting 0.67 seconds before fallback handling...
[2026-06-12 17:17:26,773.773 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 17:17:26,775.775 INFO    ] Checking for system updates...
[2026-06-12 17:17:26,796.796 INFO    ] 200
[2026-06-12 17:17:26,797.797 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:17:26,827.827 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 17:17:26,828.828 INFO    ] No update needed
[2026-06-12 17:17:26,830.830 INFO    ] Checking for camera pi updates...
[2026-06-12 17:17:26,851.851 INFO    ] 200
[2026-06-12 17:17:26,852.852 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:17:26,878.878 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 17:17:26,929.929 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 17:17:26,930.930 INFO    ] No camera update needed
[2026-06-12 17:17:26,932.932 INFO    ] Script finished. Safe exiting...
[2026-06-12 17:17:26,933.933 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 17:17:26,936.936 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 17:17:26,939.939 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 17:17:28,979.979 INFO    ] ================================================
[2026-06-12 17:17:29,995.995 INFO    ] Launching Daemon at Fri Jun 12 17:17:28 IST 2026
[2026-06-12 17:17:29,006.006 INFO    ] ================================================
[2026-06-12 17:17:29,383.383 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 17:17:29
[2026-06-12 17:17:29,700.700 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 17:17:29,831.831 INFO    ] Initializing speech engine...
[2026-06-12 17:17:29,835.835 INFO    ] 2026-06-12 17:17:29
[2026-06-12 17:17:30,051.051 INFO    ] 2026-06-12 17:17:30
[2026-06-12 17:17:30,081.081 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 17:17:30,264.264 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 17:17:30,267.267 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 17:17:30,400.400 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 17:17:30,457.457 INFO    ] time= 12/06/2026 17:17:30
[2026-06-12 17:17:30,495.495 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 17:17:30,497.497 INFO    ] Checking for existing commands in stream...
[2026-06-12 17:17:30,568.568 INFO    ] No existing commands found in stream
[2026-06-12 17:17:35,582.582 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 17:17:35,585.585 INFO    ] Waiting 0.83 seconds before fallback handling...
[2026-06-12 17:17:36,757.757 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 17:17:36,759.759 INFO    ] Checking for system updates...
[2026-06-12 17:17:36,780.780 INFO    ] 200
[2026-06-12 17:17:36,781.781 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:17:36,811.811 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 17:17:36,813.813 INFO    ] No update needed
[2026-06-12 17:17:36,814.814 INFO    ] Checking for camera pi updates...
[2026-06-12 17:17:36,833.833 INFO    ] 200
[2026-06-12 17:17:36,834.834 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:17:36,857.857 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 17:17:36,908.908 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 17:17:36,909.909 INFO    ] No camera update needed
[2026-06-12 17:17:36,910.910 INFO    ] Script finished. Safe exiting...
[2026-06-12 17:17:36,912.912 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 17:17:36,915.915 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 17:17:36,917.917 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 17:17:38,955.955 INFO    ] ================================================
[2026-06-12 17:17:38,971.971 INFO    ] Launching Daemon at Fri Jun 12 17:17:38 IST 2026
[2026-06-12 17:17:38,982.982 INFO    ] ================================================
[2026-06-12 17:17:39,316.316 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 17:17:39
[2026-06-12 17:17:39,631.631 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 17:17:39,762.762 INFO    ] Initializing speech engine...
[2026-06-12 17:17:39,771.771 INFO    ] 2026-06-12 17:17:39
[2026-06-12 17:17:39,982.982 INFO    ] 2026-06-12 17:17:39
[2026-06-12 17:17:40,012.012 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 17:17:40,134.134 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 17:17:40,187.187 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 17:17:40,334.334 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 17:17:40,395.395 INFO    ] time= 12/06/2026 17:17:40
[2026-06-12 17:17:40,428.428 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 17:17:40,430.430 INFO    ] Checking for existing commands in stream...
[2026-06-12 17:17:40,501.501 INFO    ] No existing commands found in stream
[2026-06-12 17:17:45,509.509 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 17:17:45,511.511 INFO    ] Waiting 1.13 seconds before fallback handling...
[2026-06-12 17:17:46,950.950 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 17:17:46,953.953 INFO    ] Checking for system updates...
[2026-06-12 17:17:46,990.990 INFO    ] 200
[2026-06-12 17:17:46,993.993 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:17:47,044.044 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 17:17:47,046.046 INFO    ] No update needed
[2026-06-12 17:17:47,047.047 INFO    ] Checking for camera pi updates...
[2026-06-12 17:17:47,066.066 INFO    ] 200
[2026-06-12 17:17:47,067.067 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:17:47,090.090 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 17:17:47,139.139 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 17:17:47,141.141 INFO    ] No camera update needed
[2026-06-12 17:17:47,142.142 INFO    ] Script finished. Safe exiting...
[2026-06-12 17:17:47,143.143 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 17:17:47,146.146 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 17:17:47,149.149 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 17:17:49,189.189 INFO    ] ================================================
[2026-06-12 17:17:49,206.206 INFO    ] Launching Daemon at Fri Jun 12 17:17:49 IST 2026
[2026-06-12 17:17:49,217.217 INFO    ] ================================================
[2026-06-12 17:17:49,545.545 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 17:17:49
[2026-06-12 17:17:49,857.857 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 17:17:49,987.987 INFO    ] Initializing speech engine...
[2026-06-12 17:17:49,991.991 INFO    ] 2026-06-12 17:17:49
[2026-06-12 17:17:50,210.210 INFO    ] 2026-06-12 17:17:50
[2026-06-12 17:17:50,238.238 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 17:17:50,362.362 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 17:17:50,425.425 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 17:17:50,564.564 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 17:17:50,628.628 INFO    ] time= 12/06/2026 17:17:50
[2026-06-12 17:17:50,656.656 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 17:17:50,663.663 INFO    ] Checking for existing commands in stream...
[2026-06-12 17:17:50,731.731 INFO    ] No existing commands found in stream
[2026-06-12 17:17:55,740.740 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 17:17:55,743.743 INFO    ] Waiting 1.41 seconds before fallback handling...
[2026-06-12 17:17:57,532.532 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 17:17:57,533.533 INFO    ] Checking for system updates...
[2026-06-12 17:17:57,554.554 INFO    ] 200
[2026-06-12 17:17:57,555.555 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:17:57,587.587 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 17:17:57,589.589 INFO    ] No update needed
[2026-06-12 17:17:57,590.590 INFO    ] Checking for camera pi updates...
[2026-06-12 17:17:57,610.610 INFO    ] 200
[2026-06-12 17:17:57,611.611 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:17:57,635.635 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 17:17:57,676.676 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 17:17:57,677.677 INFO    ] No camera update needed
[2026-06-12 17:17:57,679.679 INFO    ] Script finished. Safe exiting...
[2026-06-12 17:17:57,680.680 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 17:17:57,683.683 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 17:17:57,686.686 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 17:17:59,727.727 INFO    ] ================================================
[2026-06-12 17:17:59,742.742 INFO    ] Launching Daemon at Fri Jun 12 17:17:59 IST 2026
[2026-06-12 17:17:59,754.754 INFO    ] ================================================
[2026-06-12 17:18:00,122.122 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 17:18:00
[2026-06-12 17:18:00,433.433 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 17:18:00,580.580 INFO    ] Initializing speech engine...
[2026-06-12 17:18:00,585.585 INFO    ] 2026-06-12 17:18:00
[2026-06-12 17:18:00,791.791 INFO    ] 2026-06-12 17:18:00
[2026-06-12 17:18:00,819.819 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 17:18:00,943.943 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 17:18:01,006.006 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 17:18:01,139.139 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 17:18:01,199.199 INFO    ] time= 12/06/2026 17:18:01
[2026-06-12 17:18:01,229.229 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 17:18:01,240.240 INFO    ] Checking for existing commands in stream...
[2026-06-12 17:18:01,313.313 INFO    ] No existing commands found in stream
[2026-06-12 17:18:06,324.324 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 17:18:06,327.327 INFO    ] Waiting 2.63 seconds before fallback handling...
[2026-06-12 17:18:09,343.343 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 17:18:09,345.345 INFO    ] Checking for system updates...
[2026-06-12 17:18:09,365.365 INFO    ] 200
[2026-06-12 17:18:09,367.367 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:18:09,401.401 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 17:18:09,403.403 INFO    ] No update needed
[2026-06-12 17:18:09,404.404 INFO    ] Checking for camera pi updates...
[2026-06-12 17:18:09,423.423 INFO    ] 200
[2026-06-12 17:18:09,424.424 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:18:09,449.449 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 17:18:09,494.494 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 17:18:09,496.496 INFO    ] No camera update needed
[2026-06-12 17:18:09,497.497 INFO    ] Script finished. Safe exiting...
[2026-06-12 17:18:09,498.498 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 17:18:09,501.501 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 17:18:09,504.504 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 17:18:11,546.546 INFO    ] ================================================
[2026-06-12 17:18:11,562.562 INFO    ] Launching Daemon at Fri Jun 12 17:18:11 IST 2026
[2026-06-12 17:18:11,573.573 INFO    ] ================================================
[2026-06-12 17:18:11,912.912 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 17:18:11
[2026-06-12 17:18:12,231.231 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 17:18:12,364.364 INFO    ] Initializing speech engine...
[2026-06-12 17:18:12,372.372 INFO    ] 2026-06-12 17:18:12
[2026-06-12 17:18:12,586.586 INFO    ] 2026-06-12 17:18:12
[2026-06-12 17:18:12,615.615 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 17:18:12,798.798 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 17:18:12,807.807 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 17:18:12,936.936 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 17:18:12,987.987 INFO    ] time= 12/06/2026 17:18:12
[2026-06-12 17:18:13,022.022 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 17:18:13,032.032 INFO    ] Checking for existing commands in stream...
[2026-06-12 17:18:13,104.104 INFO    ] No existing commands found in stream
[2026-06-12 17:18:18,112.112 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 17:18:18,115.115 INFO    ] Waiting 1.58 seconds before fallback handling...
[2026-06-12 17:18:20,029.029 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 17:18:20,031.031 INFO    ] Checking for system updates...
[2026-06-12 17:18:20,053.053 INFO    ] 200
[2026-06-12 17:18:20,054.054 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:18:20,084.084 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 17:18:20,085.085 INFO    ] No update needed
[2026-06-12 17:18:20,087.087 INFO    ] Checking for camera pi updates...
[2026-06-12 17:18:20,106.106 INFO    ] 200
[2026-06-12 17:18:20,107.107 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:18:20,130.130 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 17:18:20,177.177 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 17:18:20,178.178 INFO    ] No camera update needed
[2026-06-12 17:18:20,180.180 INFO    ] Script finished. Safe exiting...
[2026-06-12 17:18:20,181.181 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 17:18:20,184.184 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 17:18:20,187.187 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 17:18:22,224.224 INFO    ] ================================================
[2026-06-12 17:18:22,239.239 INFO    ] Launching Daemon at Fri Jun 12 17:18:22 IST 2026
[2026-06-12 17:18:22,250.250 INFO    ] ================================================
[2026-06-12 17:18:22,606.606 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 17:18:22
[2026-06-12 17:18:22,919.919 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 17:18:23,062.062 INFO    ] Initializing speech engine...
[2026-06-12 17:18:23,067.067 INFO    ] 2026-06-12 17:18:23
[2026-06-12 17:18:23,271.271 INFO    ] 2026-06-12 17:18:23
[2026-06-12 17:18:23,302.302 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 17:18:23,487.487 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 17:18:23,496.496 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 17:18:23,627.627 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 17:18:23,691.691 INFO    ] time= 12/06/2026 17:18:23
[2026-06-12 17:18:23,720.720 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 17:18:23,726.726 INFO    ] Checking for existing commands in stream...
[2026-06-12 17:18:23,794.794 INFO    ] No existing commands found in stream
[2026-06-12 17:18:28,803.803 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 17:18:28,805.805 INFO    ] Waiting 2.22 seconds before fallback handling...
[2026-06-12 17:18:31,394.394 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 17:18:31,396.396 INFO    ] Checking for system updates...
[2026-06-12 17:18:31,418.418 INFO    ] 200
[2026-06-12 17:18:31,420.420 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:18:31,453.453 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 17:18:31,454.454 INFO    ] No update needed
[2026-06-12 17:18:31,456.456 INFO    ] Checking for camera pi updates...
[2026-06-12 17:18:31,475.475 INFO    ] 200
[2026-06-12 17:18:31,477.477 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:18:31,501.501 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 17:18:31,546.546 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 17:18:31,548.548 INFO    ] No camera update needed
[2026-06-12 17:18:31,550.550 INFO    ] Script finished. Safe exiting...
[2026-06-12 17:18:31,551.551 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 17:18:31,554.554 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 17:18:31,557.557 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 17:18:33,590.590 INFO    ] ================================================
[2026-06-12 17:18:33,605.605 INFO    ] Launching Daemon at Fri Jun 12 17:18:33 IST 2026
[2026-06-12 17:18:33,616.616 INFO    ] ================================================
[2026-06-12 17:18:33,975.975 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 17:18:33
[2026-06-12 17:18:34,314.314 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 17:18:34,466.466 INFO    ] Initializing speech engine...
[2026-06-12 17:18:34,471.471 INFO    ] 2026-06-12 17:18:34
[2026-06-12 17:18:34,681.681 INFO    ] 2026-06-12 17:18:34
[2026-06-12 17:18:34,710.710 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 17:18:34,895.895 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 17:18:34,899.899 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 17:18:35,037.037 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 17:18:35,097.097 INFO    ] time= 12/06/2026 17:18:35
[2026-06-12 17:18:35,130.130 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 17:18:35,137.137 INFO    ] Checking for existing commands in stream...
[2026-06-12 17:18:35,207.207 INFO    ] No existing commands found in stream
[2026-06-12 17:18:40,222.222 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 17:18:40,225.225 INFO    ] Waiting 0.26 seconds before fallback handling...
[2026-06-12 17:18:40,873.873 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 17:18:40,875.875 INFO    ] Checking for system updates...
[2026-06-12 17:18:40,896.896 INFO    ] 200
[2026-06-12 17:18:40,897.897 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:18:40,930.930 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 17:18:40,931.931 INFO    ] No update needed
[2026-06-12 17:18:40,932.932 INFO    ] Checking for camera pi updates...
[2026-06-12 17:18:40,954.954 INFO    ] 200
[2026-06-12 17:18:40,955.955 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:18:40,978.978 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 17:18:41,027.027 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 17:18:41,028.028 INFO    ] No camera update needed
[2026-06-12 17:18:41,029.029 INFO    ] Script finished. Safe exiting...
[2026-06-12 17:18:41,031.031 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 17:18:41,034.034 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 17:18:41,036.036 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 17:18:43,075.075 INFO    ] ================================================
[2026-06-12 17:18:43,090.090 INFO    ] Launching Daemon at Fri Jun 12 17:18:43 IST 2026
[2026-06-12 17:18:43,101.101 INFO    ] ================================================
[2026-06-12 17:18:43,457.457 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 17:18:43
[2026-06-12 17:18:43,775.775 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 17:18:43,909.909 INFO    ] Initializing speech engine...
[2026-06-12 17:18:43,913.913 INFO    ] 2026-06-12 17:18:43
[2026-06-12 17:18:44,110.110 INFO    ] 2026-06-12 17:18:44
[2026-06-12 17:18:44,150.150 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 17:18:44,308.308 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 17:18:44,335.335 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 17:18:44,496.496 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 17:18:44,520.520 INFO    ] time= 12/06/2026 17:18:44
[2026-06-12 17:18:44,571.571 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 17:18:44,617.617 INFO    ] Checking for existing commands in stream...
[2026-06-12 17:18:44,702.702 INFO    ] No existing commands found in stream
[2026-06-12 17:18:49,713.713 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 17:18:49,716.716 INFO    ] Waiting 1.80 seconds before fallback handling...
[2026-06-12 17:18:51,911.911 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 17:18:51,913.913 INFO    ] Checking for system updates...
[2026-06-12 17:18:51,935.935 INFO    ] 200
[2026-06-12 17:18:51,937.937 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:18:51,967.967 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 17:18:51,968.968 INFO    ] No update needed
[2026-06-12 17:18:51,969.969 INFO    ] Checking for camera pi updates...
[2026-06-12 17:18:51,992.992 INFO    ] 200
[2026-06-12 17:18:51,993.993 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:18:52,016.016 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 17:18:52,161.161 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 17:18:52,162.162 INFO    ] No camera update needed
[2026-06-12 17:18:52,167.167 INFO    ] Script finished. Safe exiting...
[2026-06-12 17:18:52,168.168 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 17:18:52,171.171 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 17:18:52,174.174 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 17:18:54,212.212 INFO    ] ================================================
[2026-06-12 17:18:54,227.227 INFO    ] Launching Daemon at Fri Jun 12 17:18:54 IST 2026
[2026-06-12 17:18:54,238.238 INFO    ] ================================================
[2026-06-12 17:18:54,579.579 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 17:18:54
[2026-06-12 17:18:54,895.895 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 17:18:55,039.039 INFO    ] Initializing speech engine...
[2026-06-12 17:18:55,044.044 INFO    ] 2026-06-12 17:18:55
[2026-06-12 17:18:55,249.249 INFO    ] 2026-06-12 17:18:55
[2026-06-12 17:18:55,276.276 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 17:18:55,462.462 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 17:18:55,472.472 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 17:18:55,615.615 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 17:18:55,668.668 INFO    ] time= 12/06/2026 17:18:55
[2026-06-12 17:18:55,691.691 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 17:18:55,697.697 INFO    ] Checking for existing commands in stream...
[2026-06-12 17:18:55,787.787 INFO    ] No existing commands found in stream
[2026-06-12 17:19:00,800.800 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 17:19:00,801.801 INFO    ] Waiting 0.26 seconds before fallback handling...
[2026-06-12 17:19:01,515.515 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 17:19:01,517.517 INFO    ] Checking for system updates...
[2026-06-12 17:19:01,545.545 INFO    ] 200
[2026-06-12 17:19:01,547.547 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:19:01,590.590 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 17:19:01,592.592 INFO    ] No update needed
[2026-06-12 17:19:01,595.595 INFO    ] Checking for camera pi updates...
[2026-06-12 17:19:01,624.624 INFO    ] 200
[2026-06-12 17:19:01,627.627 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:19:01,665.665 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 17:19:01,718.718 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 17:19:01,719.719 INFO    ] No camera update needed
[2026-06-12 17:19:01,721.721 INFO    ] Script finished. Safe exiting...
[2026-06-12 17:19:01,723.723 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 17:19:01,727.727 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 17:19:01,731.731 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 17:19:03,771.771 INFO    ] ================================================
[2026-06-12 17:19:03,786.786 INFO    ] Launching Daemon at Fri Jun 12 17:19:03 IST 2026
[2026-06-12 17:19:03,798.798 INFO    ] ================================================
[2026-06-12 17:19:04,173.173 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 17:19:04
[2026-06-12 17:19:04,512.512 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 17:19:04,652.652 INFO    ] Initializing speech engine...
[2026-06-12 17:19:04,655.655 INFO    ] 2026-06-12 17:19:04
[2026-06-12 17:19:04,878.878 INFO    ] 2026-06-12 17:19:04
[2026-06-12 17:19:04,907.907 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 17:19:05,095.095 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 17:19:05,105.105 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 17:19:05,247.247 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 17:19:05,313.313 INFO    ] time= 12/06/2026 17:19:05
[2026-06-12 17:19:05,350.350 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 17:19:05,352.352 INFO    ] Checking for existing commands in stream...
[2026-06-12 17:19:05,422.422 INFO    ] No existing commands found in stream
[2026-06-12 17:19:10,433.433 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 17:19:10,436.436 INFO    ] Waiting 0.27 seconds before fallback handling...
[2026-06-12 17:19:11,054.054 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 17:19:11,056.056 INFO    ] Checking for system updates...
[2026-06-12 17:19:11,076.076 INFO    ] 200
[2026-06-12 17:19:11,077.077 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:19:11,109.109 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 17:19:11,111.111 INFO    ] No update needed
[2026-06-12 17:19:11,112.112 INFO    ] Checking for camera pi updates...
[2026-06-12 17:19:11,131.131 INFO    ] 200
[2026-06-12 17:19:11,132.132 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:19:11,155.155 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 17:19:11,199.199 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 17:19:11,201.201 INFO    ] No camera update needed
[2026-06-12 17:19:11,202.202 INFO    ] Script finished. Safe exiting...
[2026-06-12 17:19:11,203.203 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 17:19:11,206.206 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 17:19:11,209.209 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 17:19:13,248.248 INFO    ] ================================================
[2026-06-12 17:19:13,263.263 INFO    ] Launching Daemon at Fri Jun 12 17:19:13 IST 2026
[2026-06-12 17:19:13,275.275 INFO    ] ================================================
[2026-06-12 17:19:13,611.611 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 17:19:13
[2026-06-12 17:19:13,924.924 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 17:19:14,054.054 INFO    ] Initializing speech engine...
[2026-06-12 17:19:14,058.058 INFO    ] 2026-06-12 17:19:14
[2026-06-12 17:19:14,277.277 INFO    ] 2026-06-12 17:19:14
[2026-06-12 17:19:14,306.306 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 17:19:14,493.493 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 17:19:14,502.502 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 17:19:14,650.650 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 17:19:14,704.704 INFO    ] time= 12/06/2026 17:19:14
[2026-06-12 17:19:14,727.727 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 17:19:14,733.733 INFO    ] Checking for existing commands in stream...
[2026-06-12 17:19:14,800.800 INFO    ] No existing commands found in stream
[2026-06-12 17:19:19,810.810 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 17:19:19,813.813 INFO    ] Waiting 0.41 seconds before fallback handling...
[2026-06-12 17:19:20,592.592 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 17:19:20,593.593 INFO    ] Checking for system updates...
[2026-06-12 17:19:20,614.614 INFO    ] 200
[2026-06-12 17:19:20,615.615 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:19:20,646.646 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 17:19:20,647.647 INFO    ] No update needed
[2026-06-12 17:19:20,649.649 INFO    ] Checking for camera pi updates...
[2026-06-12 17:19:20,668.668 INFO    ] 200
[2026-06-12 17:19:20,669.669 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:19:20,692.692 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 17:19:20,740.740 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 17:19:20,742.742 INFO    ] No camera update needed
[2026-06-12 17:19:20,743.743 INFO    ] Script finished. Safe exiting...
[2026-06-12 17:19:20,744.744 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 17:19:20,747.747 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 17:19:20,750.750 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 17:19:22,788.788 INFO    ] ================================================
[2026-06-12 17:19:22,803.803 INFO    ] Launching Daemon at Fri Jun 12 17:19:22 IST 2026
[2026-06-12 17:19:22,815.815 INFO    ] ================================================
[2026-06-12 17:19:23,142.142 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 17:19:23
[2026-06-12 17:19:23,459.459 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 17:19:23,603.603 INFO    ] Initializing speech engine...
[2026-06-12 17:19:23,609.609 INFO    ] 2026-06-12 17:19:23
[2026-06-12 17:19:23,813.813 INFO    ] 2026-06-12 17:19:23
[2026-06-12 17:19:23,841.841 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 17:19:24,024.024 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 17:19:24,034.034 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 17:19:24,163.163 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 17:19:24,229.229 INFO    ] time= 12/06/2026 17:19:24
[2026-06-12 17:19:24,254.254 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 17:19:24,260.260 INFO    ] Checking for existing commands in stream...
[2026-06-12 17:19:24,327.327 INFO    ] No existing commands found in stream
[2026-06-12 17:19:29,346.346 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 17:19:29,349.349 INFO    ] Waiting 0.85 seconds before fallback handling...
[2026-06-12 17:19:30,614.614 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 17:19:30,616.616 INFO    ] Checking for system updates...
[2026-06-12 17:19:30,636.636 INFO    ] 200
[2026-06-12 17:19:30,637.637 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:19:30,670.670 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 17:19:30,672.672 INFO    ] No update needed
[2026-06-12 17:19:30,673.673 INFO    ] Checking for camera pi updates...
[2026-06-12 17:19:30,693.693 INFO    ] 200
[2026-06-12 17:19:30,695.695 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:19:30,719.719 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 17:19:30,810.810 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 17:19:30,811.811 INFO    ] No camera update needed
[2026-06-12 17:19:30,812.812 INFO    ] Script finished. Safe exiting...
[2026-06-12 17:19:30,813.813 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 17:19:30,816.816 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 17:19:30,819.819 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 17:19:32,852.852 INFO    ] ================================================
[2026-06-12 17:19:32,867.867 INFO    ] Launching Daemon at Fri Jun 12 17:19:32 IST 2026
[2026-06-12 17:19:32,879.879 INFO    ] ================================================
[2026-06-12 17:19:33,217.217 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 17:19:33
[2026-06-12 17:19:33,534.534 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 17:19:33,672.672 INFO    ] Initializing speech engine...
[2026-06-12 17:19:33,685.685 INFO    ] 2026-06-12 17:19:33
[2026-06-12 17:19:33,905.905 INFO    ] 2026-06-12 17:19:33
[2026-06-12 17:19:33,936.936 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 17:19:34,069.069 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 17:19:34,107.107 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 17:19:34,279.279 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 17:19:34,326.326 INFO    ] time= 12/06/2026 17:19:34
[2026-06-12 17:19:34,366.366 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 17:19:34,388.388 INFO    ] Checking for existing commands in stream...
[2026-06-12 17:19:34,492.492 INFO    ] No existing commands found in stream
[2026-06-12 17:19:39,506.506 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 17:19:39,509.509 INFO    ] Waiting 3.62 seconds before fallback handling...
[2026-06-12 17:19:43,525.525 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 17:19:43,526.526 INFO    ] Checking for system updates...
[2026-06-12 17:19:43,547.547 INFO    ] 200
[2026-06-12 17:19:43,548.548 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:19:43,578.578 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 17:19:43,580.580 INFO    ] No update needed
[2026-06-12 17:19:43,581.581 INFO    ] Checking for camera pi updates...
[2026-06-12 17:19:43,602.602 INFO    ] 200
[2026-06-12 17:19:43,603.603 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:19:43,628.628 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 17:19:43,722.722 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 17:19:43,724.724 INFO    ] No camera update needed
[2026-06-12 17:19:43,725.725 INFO    ] Script finished. Safe exiting...
[2026-06-12 17:19:43,726.726 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 17:19:43,730.730 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 17:19:43,733.733 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 17:19:45,772.772 INFO    ] ================================================
[2026-06-12 17:19:45,788.788 INFO    ] Launching Daemon at Fri Jun 12 17:19:45 IST 2026
[2026-06-12 17:19:45,799.799 INFO    ] ================================================
[2026-06-12 17:19:46,144.144 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 17:19:46
[2026-06-12 17:19:46,461.461 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 17:19:46,592.592 INFO    ] Initializing speech engine...
[2026-06-12 17:19:46,600.600 INFO    ] 2026-06-12 17:19:46
[2026-06-12 17:19:46,811.811 INFO    ] 2026-06-12 17:19:46
[2026-06-12 17:19:46,841.841 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 17:19:47,023.023 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 17:19:47,032.032 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 17:19:47,177.177 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 17:19:47,230.230 INFO    ] time= 12/06/2026 17:19:47
[2026-06-12 17:19:47,252.252 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 17:19:47,258.258 INFO    ] Checking for existing commands in stream...
[2026-06-12 17:19:47,325.325 INFO    ] No existing commands found in stream
[2026-06-12 17:19:52,334.334 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 17:19:52,336.336 INFO    ] Waiting 3.75 seconds before fallback handling...
[2026-06-12 17:19:56,456.456 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 17:19:56,457.457 INFO    ] Checking for system updates...
[2026-06-12 17:19:56,478.478 INFO    ] 200
[2026-06-12 17:19:56,479.479 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:19:56,511.511 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 17:19:56,512.512 INFO    ] No update needed
[2026-06-12 17:19:56,514.514 INFO    ] Checking for camera pi updates...
[2026-06-12 17:19:56,535.535 INFO    ] 200
[2026-06-12 17:19:56,536.536 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:19:56,560.560 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 17:19:56,611.611 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 17:19:56,612.612 INFO    ] No camera update needed
[2026-06-12 17:19:56,614.614 INFO    ] Script finished. Safe exiting...
[2026-06-12 17:19:56,615.615 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 17:19:56,618.618 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 17:19:56,621.621 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 17:19:58,660.660 INFO    ] ================================================
[2026-06-12 17:19:58,676.676 INFO    ] Launching Daemon at Fri Jun 12 17:19:58 IST 2026
[2026-06-12 17:19:58,687.687 INFO    ] ================================================
[2026-06-12 17:19:59,039.039 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 17:19:59
[2026-06-12 17:19:59,377.377 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 17:19:59,527.527 INFO    ] Initializing speech engine...
[2026-06-12 17:19:59,533.533 INFO    ] 2026-06-12 17:19:59
[2026-06-12 17:19:59,740.740 INFO    ] 2026-06-12 17:19:59
[2026-06-12 17:19:59,769.769 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 17:19:59,954.954 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 17:19:59,963.963 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 17:20:00,118.118 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 17:20:00,162.162 INFO    ] time= 12/06/2026 17:20:00
[2026-06-12 17:20:00,183.183 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 17:20:00,190.190 INFO    ] Checking for existing commands in stream...
[2026-06-12 17:20:00,257.257 INFO    ] No existing commands found in stream
[2026-06-12 17:20:05,271.271 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 17:20:05,275.275 INFO    ] Waiting 0.94 seconds before fallback handling...
[2026-06-12 17:20:08,049.049 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 17:20:08,052.052 INFO    ] Checking for system updates...
[2026-06-12 17:20:08,093.093 INFO    ] 200
[2026-06-12 17:20:08,096.096 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:20:08,133.133 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 17:20:08,134.134 INFO    ] No update needed
[2026-06-12 17:20:08,136.136 INFO    ] Checking for camera pi updates...
[2026-06-12 17:20:08,155.155 INFO    ] 200
[2026-06-12 17:20:08,157.157 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:20:08,180.180 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 17:20:08,223.223 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 17:20:08,225.225 INFO    ] No camera update needed
[2026-06-12 17:20:08,226.226 INFO    ] Script finished. Safe exiting...
[2026-06-12 17:20:08,227.227 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 17:20:08,231.231 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 17:20:08,234.234 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 17:20:10,273.273 INFO    ] ================================================
[2026-06-12 17:20:10,288.288 INFO    ] Launching Daemon at Fri Jun 12 17:20:10 IST 2026
[2026-06-12 17:20:10,300.300 INFO    ] ================================================
[2026-06-12 17:20:10,676.676 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 17:20:10
[2026-06-12 17:20:11,016.016 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 17:20:11,173.173 INFO    ] Initializing speech engine...
[2026-06-12 17:20:11,177.177 INFO    ] 2026-06-12 17:20:11
[2026-06-12 17:20:11,384.384 INFO    ] 2026-06-12 17:20:11
[2026-06-12 17:20:11,414.414 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 17:20:11,600.600 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 17:20:11,612.612 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 17:20:11,759.759 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 17:20:11,807.807 INFO    ] time= 12/06/2026 17:20:11
[2026-06-12 17:20:11,830.830 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 17:20:11,836.836 INFO    ] Checking for existing commands in stream...
[2026-06-12 17:20:11,904.904 INFO    ] No existing commands found in stream
[2026-06-12 17:20:16,913.913 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 17:20:16,916.916 INFO    ] Waiting 3.11 seconds before fallback handling...
[2026-06-12 17:20:20,369.369 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 17:20:20,371.371 INFO    ] Checking for system updates...
[2026-06-12 17:20:20,392.392 INFO    ] 200
[2026-06-12 17:20:20,393.393 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:20:20,423.423 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 17:20:20,424.424 INFO    ] No update needed
[2026-06-12 17:20:20,425.425 INFO    ] Checking for camera pi updates...
[2026-06-12 17:20:20,445.445 INFO    ] 200
[2026-06-12 17:20:20,446.446 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:20:20,469.469 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 17:20:20,513.513 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 17:20:20,514.514 INFO    ] No camera update needed
[2026-06-12 17:20:20,515.515 INFO    ] Script finished. Safe exiting...
[2026-06-12 17:20:20,516.516 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 17:20:20,519.519 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 17:20:20,522.522 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 17:20:22,560.560 INFO    ] ================================================
[2026-06-12 17:20:22,576.576 INFO    ] Launching Daemon at Fri Jun 12 17:20:22 IST 2026
[2026-06-12 17:20:22,588.588 INFO    ] ================================================
[2026-06-12 17:20:22,922.922 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 17:20:22
[2026-06-12 17:20:23,242.242 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 17:20:23,387.387 INFO    ] Initializing speech engine...
[2026-06-12 17:20:23,393.393 INFO    ] 2026-06-12 17:20:23
[2026-06-12 17:20:23,597.597 INFO    ] 2026-06-12 17:20:23
[2026-06-12 17:20:23,625.625 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 17:20:23,809.809 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 17:20:23,818.818 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 17:20:23,946.946 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 17:20:24,013.013 INFO    ] time= 12/06/2026 17:20:23
[2026-06-12 17:20:24,036.036 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 17:20:24,043.043 INFO    ] Checking for existing commands in stream...
[2026-06-12 17:20:24,107.107 INFO    ] No existing commands found in stream
[2026-06-12 17:20:29,118.118 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 17:20:29,121.121 INFO    ] Waiting 1.23 seconds before fallback handling...
[2026-06-12 17:20:30,736.736 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 17:20:30,737.737 INFO    ] Checking for system updates...
[2026-06-12 17:20:30,759.759 INFO    ] 200
[2026-06-12 17:20:30,760.760 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:20:30,794.794 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 17:20:30,795.795 INFO    ] No update needed
[2026-06-12 17:20:30,796.796 INFO    ] Checking for camera pi updates...
[2026-06-12 17:20:30,815.815 INFO    ] 200
[2026-06-12 17:20:30,817.817 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:20:30,841.841 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 17:20:30,889.889 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 17:20:30,890.890 INFO    ] No camera update needed
[2026-06-12 17:20:30,891.891 INFO    ] Script finished. Safe exiting...
[2026-06-12 17:20:30,893.893 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 17:20:30,896.896 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 17:20:30,898.898 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 17:20:32,932.932 INFO    ] ================================================
[2026-06-12 17:20:32,948.948 INFO    ] Launching Daemon at Fri Jun 12 17:20:32 IST 2026
[2026-06-12 17:20:32,959.959 INFO    ] ================================================
[2026-06-12 17:20:33,294.294 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 17:20:33
[2026-06-12 17:20:33,607.607 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 17:20:33,745.745 INFO    ] Initializing speech engine...
[2026-06-12 17:20:33,756.756 INFO    ] 2026-06-12 17:20:33
[2026-06-12 17:20:33,959.959 INFO    ] 2026-06-12 17:20:33
[2026-06-12 17:20:33,989.989 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 17:20:34,174.174 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 17:20:34,184.184 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 17:20:34,381.381 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 17:20:34,404.404 INFO    ] time= 12/06/2026 17:20:34
[2026-06-12 17:20:34,410.410 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 17:20:34,412.412 INFO    ] Checking for existing commands in stream...
[2026-06-12 17:20:34,479.479 INFO    ] No existing commands found in stream
[2026-06-12 17:20:39,493.493 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 17:20:39,497.497 INFO    ] Waiting 0.09 seconds before fallback handling...
[2026-06-12 17:20:39,931.931 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 17:20:39,932.932 INFO    ] Checking for system updates...
[2026-06-12 17:20:39,953.953 INFO    ] 200
[2026-06-12 17:20:39,954.954 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:20:39,986.986 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 17:20:39,987.987 INFO    ] No update needed
[2026-06-12 17:20:39,989.989 INFO    ] Checking for camera pi updates...
[2026-06-12 17:20:40,012.012 INFO    ] 200
[2026-06-12 17:20:40,013.013 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:20:40,036.036 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 17:20:40,082.082 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 17:20:40,083.083 INFO    ] No camera update needed
[2026-06-12 17:20:40,085.085 INFO    ] Script finished. Safe exiting...
[2026-06-12 17:20:40,086.086 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 17:20:40,089.089 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 17:20:40,092.092 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 17:20:42,131.131 INFO    ] ================================================
[2026-06-12 17:20:42,147.147 INFO    ] Launching Daemon at Fri Jun 12 17:20:42 IST 2026
[2026-06-12 17:20:42,158.158 INFO    ] ================================================
[2026-06-12 17:20:42,529.529 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 17:20:42
[2026-06-12 17:20:42,848.848 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 17:20:42,986.986 INFO    ] Initializing speech engine...
[2026-06-12 17:20:42,998.998 INFO    ] 2026-06-12 17:20:42
[2026-06-12 17:20:43,219.219 INFO    ] 2026-06-12 17:20:43
[2026-06-12 17:20:43,250.250 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 17:20:43,448.448 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 17:20:43,451.451 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 17:20:43,592.592 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 17:20:43,643.643 INFO    ] time= 12/06/2026 17:20:43
[2026-06-12 17:20:43,677.677 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 17:20:43,700.700 INFO    ] Checking for existing commands in stream...
[2026-06-12 17:20:43,775.775 INFO    ] No existing commands found in stream
[2026-06-12 17:20:48,786.786 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 17:20:48,789.789 INFO    ] Waiting 0.79 seconds before fallback handling...
[2026-06-12 17:20:49,968.968 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 17:20:49,970.970 INFO    ] Checking for system updates...
[2026-06-12 17:20:49,990.990 INFO    ] 200
[2026-06-12 17:20:49,991.991 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:20:50,025.025 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 17:20:50,027.027 INFO    ] No update needed
[2026-06-12 17:20:50,028.028 INFO    ] Checking for camera pi updates...
[2026-06-12 17:20:50,048.048 INFO    ] 200
[2026-06-12 17:20:50,050.050 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:20:50,073.073 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 17:20:50,115.115 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 17:20:50,117.117 INFO    ] No camera update needed
[2026-06-12 17:20:50,118.118 INFO    ] Script finished. Safe exiting...
[2026-06-12 17:20:50,119.119 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 17:20:50,124.124 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 17:20:50,128.128 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 17:20:52,168.168 INFO    ] ================================================
[2026-06-12 17:20:52,183.183 INFO    ] Launching Daemon at Fri Jun 12 17:20:52 IST 2026
[2026-06-12 17:20:52,194.194 INFO    ] ================================================
[2026-06-12 17:20:52,546.546 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 17:20:52
[2026-06-12 17:20:52,863.863 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 17:20:52,995.995 INFO    ] Initializing speech engine...
[2026-06-12 17:20:52,998.998 INFO    ] 2026-06-12 17:20:52
[2026-06-12 17:20:53,216.216 INFO    ] 2026-06-12 17:20:53
[2026-06-12 17:20:53,245.245 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 17:20:53,429.429 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 17:20:53,439.439 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 17:20:53,567.567 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 17:20:53,626.626 INFO    ] time= 12/06/2026 17:20:53
[2026-06-12 17:20:53,658.658 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 17:20:53,664.664 INFO    ] Checking for existing commands in stream...
[2026-06-12 17:20:53,732.732 INFO    ] No existing commands found in stream
[2026-06-12 17:20:58,746.746 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 17:20:58,749.749 INFO    ] Waiting 2.70 seconds before fallback handling...
[2026-06-12 17:21:01,818.818 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 17:21:01,821.821 INFO    ] Checking for system updates...
[2026-06-12 17:21:01,862.862 INFO    ] 200
[2026-06-12 17:21:01,865.865 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:21:01,942.942 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 17:21:01,944.944 INFO    ] No update needed
[2026-06-12 17:21:01,948.948 INFO    ] Checking for camera pi updates...
[2026-06-12 17:21:01,980.980 INFO    ] 200
[2026-06-12 17:21:01,982.982 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:21:02,015.015 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 17:21:02,043.043 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 17:21:02,045.045 INFO    ] No camera update needed
[2026-06-12 17:21:02,047.047 INFO    ] Script finished. Safe exiting...
[2026-06-12 17:21:02,052.052 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 17:21:02,057.057 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 17:21:02,062.062 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 17:21:04,103.103 INFO    ] ================================================
[2026-06-12 17:21:04,118.118 INFO    ] Launching Daemon at Fri Jun 12 17:21:04 IST 2026
[2026-06-12 17:21:04,129.129 INFO    ] ================================================
[2026-06-12 17:21:04,490.490 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 17:21:04
[2026-06-12 17:21:04,828.828 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 17:21:04,979.979 INFO    ] Initializing speech engine...
[2026-06-12 17:21:04,985.985 INFO    ] 2026-06-12 17:21:04
[2026-06-12 17:21:05,192.192 INFO    ] 2026-06-12 17:21:05
[2026-06-12 17:21:05,221.221 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 17:21:05,409.409 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 17:21:05,419.419 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 17:21:05,579.579 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 17:21:05,633.633 INFO    ] time= 12/06/2026 17:21:05
[2026-06-12 17:21:05,643.643 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 17:21:05,645.645 INFO    ] Checking for existing commands in stream...
[2026-06-12 17:21:05,739.739 INFO    ] No existing commands found in stream
[2026-06-12 17:21:10,753.753 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 17:21:10,756.756 INFO    ] Waiting 2.53 seconds before fallback handling...
[2026-06-12 17:21:13,707.707 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 17:21:13,709.709 INFO    ] Checking for system updates...
[2026-06-12 17:21:13,730.730 INFO    ] 200
[2026-06-12 17:21:13,731.731 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:21:13,761.761 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 17:21:13,762.762 INFO    ] No update needed
[2026-06-12 17:21:13,764.764 INFO    ] Checking for camera pi updates...
[2026-06-12 17:21:13,783.783 INFO    ] 200
[2026-06-12 17:21:13,784.784 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:21:13,808.808 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 17:21:13,850.850 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 17:21:13,852.852 INFO    ] No camera update needed
[2026-06-12 17:21:13,853.853 INFO    ] Script finished. Safe exiting...
[2026-06-12 17:21:13,855.855 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 17:21:13,858.858 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 17:21:13,861.861 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 17:21:15,901.901 INFO    ] ================================================
[2026-06-12 17:21:15,917.917 INFO    ] Launching Daemon at Fri Jun 12 17:21:15 IST 2026
[2026-06-12 17:21:15,928.928 INFO    ] ================================================
[2026-06-12 17:21:16,279.279 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 17:21:16
[2026-06-12 17:21:16,596.596 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 17:21:16,740.740 INFO    ] Initializing speech engine...
[2026-06-12 17:21:16,745.745 INFO    ] 2026-06-12 17:21:16
[2026-06-12 17:21:16,950.950 INFO    ] 2026-06-12 17:21:16
[2026-06-12 17:21:16,979.979 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 17:21:17,116.116 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 17:21:17,164.164 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 17:21:17,307.307 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 17:21:17,369.369 INFO    ] time= 12/06/2026 17:21:17
[2026-06-12 17:21:17,394.394 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 17:21:17,399.399 INFO    ] Checking for existing commands in stream...
[2026-06-12 17:21:17,467.467 INFO    ] No existing commands found in stream
[2026-06-12 17:21:22,476.476 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 17:21:22,479.479 INFO    ] Waiting 3.14 seconds before fallback handling...
[2026-06-12 17:21:25,976.976 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 17:21:25,977.977 INFO    ] Checking for system updates...
[2026-06-12 17:21:25,999.999 INFO    ] 200
[2026-06-12 17:21:26,001.001 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:21:26,033.033 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 17:21:26,034.034 INFO    ] No update needed
[2026-06-12 17:21:26,036.036 INFO    ] Checking for camera pi updates...
[2026-06-12 17:21:26,055.055 INFO    ] 200
[2026-06-12 17:21:26,057.057 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:21:26,080.080 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 17:21:26,129.129 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 17:21:26,130.130 INFO    ] No camera update needed
[2026-06-12 17:21:26,132.132 INFO    ] Script finished. Safe exiting...
[2026-06-12 17:21:26,133.133 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 17:21:26,136.136 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 17:21:26,140.140 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 17:21:28,172.172 INFO    ] ================================================
[2026-06-12 17:21:28,188.188 INFO    ] Launching Daemon at Fri Jun 12 17:21:28 IST 2026
[2026-06-12 17:21:28,198.198 INFO    ] ================================================
[2026-06-12 17:21:28,531.531 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 17:21:28
[2026-06-12 17:21:28,844.844 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 17:21:28,981.981 INFO    ] Initializing speech engine...
[2026-06-12 17:21:28,994.994 INFO    ] 2026-06-12 17:21:28
[2026-06-12 17:21:29,212.212 INFO    ] 2026-06-12 17:21:29
[2026-06-12 17:21:29,243.243 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 17:21:29,441.441 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 17:21:29,452.452 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 17:21:29,585.585 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 17:21:29,636.636 INFO    ] time= 12/06/2026 17:21:29
[2026-06-12 17:21:29,671.671 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 17:21:29,693.693 INFO    ] Checking for existing commands in stream...
[2026-06-12 17:21:29,769.769 INFO    ] No existing commands found in stream
[2026-06-12 17:21:34,779.779 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 17:21:34,782.782 INFO    ] Waiting 2.01 seconds before fallback handling...
[2026-06-12 17:21:37,154.154 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 17:21:37,156.156 INFO    ] Checking for system updates...
[2026-06-12 17:21:37,176.176 INFO    ] 200
[2026-06-12 17:21:37,177.177 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:21:37,211.211 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 17:21:37,212.212 INFO    ] No update needed
[2026-06-12 17:21:37,214.214 INFO    ] Checking for camera pi updates...
[2026-06-12 17:21:37,234.234 INFO    ] 200
[2026-06-12 17:21:37,235.235 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:21:37,258.258 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 17:21:37,296.296 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 17:21:37,297.297 INFO    ] No camera update needed
[2026-06-12 17:21:37,299.299 INFO    ] Script finished. Safe exiting...
[2026-06-12 17:21:37,300.300 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 17:21:37,303.303 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 17:21:37,305.305 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 17:21:39,344.344 INFO    ] ================================================
[2026-06-12 17:21:39,360.360 INFO    ] Launching Daemon at Fri Jun 12 17:21:39 IST 2026
[2026-06-12 17:21:39,371.371 INFO    ] ================================================
[2026-06-12 17:21:39,725.725 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 17:21:39
[2026-06-12 17:21:40,064.064 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 17:21:40,217.217 INFO    ] Initializing speech engine...
[2026-06-12 17:21:40,223.223 INFO    ] 2026-06-12 17:21:40
[2026-06-12 17:21:40,427.427 INFO    ] 2026-06-12 17:21:40
[2026-06-12 17:21:40,456.456 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 17:21:40,604.604 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 17:21:40,606.606 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 17:21:40,716.716 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 17:21:40,718.718 INFO    ] time= 12/06/2026 17:21:40
[2026-06-12 17:21:40,719.719 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 17:21:40,745.745 INFO    ] Checking for existing commands in stream...
[2026-06-12 17:21:40,872.872 INFO    ] No existing commands found in stream
[2026-06-12 17:21:45,901.901 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 17:21:45,904.904 INFO    ] Waiting 0.37 seconds before fallback handling...
[2026-06-12 17:21:46,632.632 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 17:21:46,633.633 INFO    ] Checking for system updates...
[2026-06-12 17:21:46,654.654 INFO    ] 200
[2026-06-12 17:21:46,655.655 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:21:46,685.685 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 17:21:46,686.686 INFO    ] No update needed
[2026-06-12 17:21:46,688.688 INFO    ] Checking for camera pi updates...
[2026-06-12 17:21:46,707.707 INFO    ] 200
[2026-06-12 17:21:46,709.709 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:21:46,732.732 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 17:21:46,780.780 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 17:21:46,782.782 INFO    ] No camera update needed
[2026-06-12 17:21:46,783.783 INFO    ] Script finished. Safe exiting...
[2026-06-12 17:21:46,784.784 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 17:21:46,787.787 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 17:21:46,791.791 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 17:21:48,829.829 INFO    ] ================================================
[2026-06-12 17:21:48,845.845 INFO    ] Launching Daemon at Fri Jun 12 17:21:48 IST 2026
[2026-06-12 17:21:48,856.856 INFO    ] ================================================
[2026-06-12 17:21:49,191.191 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 17:21:49
[2026-06-12 17:21:49,502.502 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 17:21:49,632.632 INFO    ] Initializing speech engine...
[2026-06-12 17:21:49,637.637 INFO    ] 2026-06-12 17:21:49
[2026-06-12 17:21:49,856.856 INFO    ] 2026-06-12 17:21:49
[2026-06-12 17:21:49,884.884 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 17:21:50,071.071 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 17:21:50,080.080 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 17:21:50,211.211 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 17:21:50,265.265 INFO    ] time= 12/06/2026 17:21:50
[2026-06-12 17:21:50,290.290 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 17:21:50,305.305 INFO    ] Checking for existing commands in stream...
[2026-06-12 17:21:50,402.402 INFO    ] No existing commands found in stream
[2026-06-12 17:21:55,416.416 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 17:21:55,419.419 INFO    ] Waiting 1.60 seconds before fallback handling...
[2026-06-12 17:21:57,427.427 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 17:21:57,428.428 INFO    ] Checking for system updates...
[2026-06-12 17:21:57,452.452 INFO    ] 200
[2026-06-12 17:21:57,454.454 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:21:57,484.484 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 17:21:57,486.486 INFO    ] No update needed
[2026-06-12 17:21:57,487.487 INFO    ] Checking for camera pi updates...
[2026-06-12 17:21:57,507.507 INFO    ] 200
[2026-06-12 17:21:57,508.508 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:21:57,532.532 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 17:21:57,585.585 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 17:21:57,586.586 INFO    ] No camera update needed
[2026-06-12 17:21:57,588.588 INFO    ] Script finished. Safe exiting...
[2026-06-12 17:21:57,589.589 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 17:21:57,593.593 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 17:21:57,596.596 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 17:21:59,627.627 INFO    ] ================================================
[2026-06-12 17:21:59,642.642 INFO    ] Launching Daemon at Fri Jun 12 17:21:59 IST 2026
[2026-06-12 17:21:59,653.653 INFO    ] ================================================
[2026-06-12 17:22:00,024.024 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 17:22:00
[2026-06-12 17:22:00,341.341 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 17:22:00,476.476 INFO    ] Initializing speech engine...
[2026-06-12 17:22:00,480.480 INFO    ] 2026-06-12 17:22:00
[2026-06-12 17:22:00,687.687 INFO    ] 2026-06-12 17:22:00
[2026-06-12 17:22:00,721.721 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 17:22:00,877.877 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 17:22:00,921.921 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 17:22:01,090.090 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 17:22:01,152.152 INFO    ] time= 12/06/2026 17:22:01
[2026-06-12 17:22:01,192.192 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 17:22:01,203.203 INFO    ] Checking for existing commands in stream...
[2026-06-12 17:22:01,273.273 INFO    ] No existing commands found in stream
[2026-06-12 17:22:06,284.284 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 17:22:06,287.287 INFO    ] Waiting 1.21 seconds before fallback handling...
[2026-06-12 17:22:07,877.877 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 17:22:07,878.878 INFO    ] Checking for system updates...
[2026-06-12 17:22:07,899.899 INFO    ] 200
[2026-06-12 17:22:07,901.901 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:22:07,930.930 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 17:22:07,932.932 INFO    ] No update needed
[2026-06-12 17:22:07,933.933 INFO    ] Checking for camera pi updates...
[2026-06-12 17:22:07,952.952 INFO    ] 200
[2026-06-12 17:22:07,953.953 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:22:07,976.976 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 17:22:08,021.021 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 17:22:08,022.022 INFO    ] No camera update needed
[2026-06-12 17:22:08,023.023 INFO    ] Script finished. Safe exiting...
[2026-06-12 17:22:08,025.025 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 17:22:08,028.028 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 17:22:08,030.030 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 17:22:10,069.069 INFO    ] ================================================
[2026-06-12 17:22:10,085.085 INFO    ] Launching Daemon at Fri Jun 12 17:22:10 IST 2026
[2026-06-12 17:22:10,096.096 INFO    ] ================================================
[2026-06-12 17:22:10,458.458 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 17:22:10
[2026-06-12 17:22:10,774.774 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 17:22:10,916.916 INFO    ] Initializing speech engine...
[2026-06-12 17:22:10,926.926 INFO    ] 2026-06-12 17:22:10
[2026-06-12 17:22:11,142.142 INFO    ] 2026-06-12 17:22:11
[2026-06-12 17:22:11,173.173 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 17:22:11,367.367 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 17:22:11,372.372 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 17:22:11,513.513 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 17:22:11,575.575 INFO    ] time= 12/06/2026 17:22:11
[2026-06-12 17:22:11,602.602 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 17:22:11,619.619 INFO    ] Checking for existing commands in stream...
[2026-06-12 17:22:11,695.695 INFO    ] No existing commands found in stream
[2026-06-12 17:22:16,704.704 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 17:22:16,707.707 INFO    ] Waiting 1.91 seconds before fallback handling...
[2026-06-12 17:22:19,004.004 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 17:22:19,005.005 INFO    ] Checking for system updates...
[2026-06-12 17:22:19,026.026 INFO    ] 200
[2026-06-12 17:22:19,027.027 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:22:19,063.063 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 17:22:19,064.064 INFO    ] No update needed
[2026-06-12 17:22:19,066.066 INFO    ] Checking for camera pi updates...
[2026-06-12 17:22:19,085.085 INFO    ] 200
[2026-06-12 17:22:19,087.087 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:22:19,110.110 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 17:22:19,137.137 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 17:22:19,138.138 INFO    ] No camera update needed
[2026-06-12 17:22:19,139.139 INFO    ] Script finished. Safe exiting...
[2026-06-12 17:22:19,141.141 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 17:22:19,144.144 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 17:22:19,147.147 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 17:22:21,184.184 INFO    ] ================================================
[2026-06-12 17:22:21,200.200 INFO    ] Launching Daemon at Fri Jun 12 17:22:21 IST 2026
[2026-06-12 17:22:21,210.210 INFO    ] ================================================
[2026-06-12 17:22:21,544.544 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 17:22:21
[2026-06-12 17:22:21,856.856 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 17:22:21,985.985 INFO    ] Initializing speech engine...
[2026-06-12 17:22:21,988.988 INFO    ] 2026-06-12 17:22:21
[2026-06-12 17:22:22,207.207 INFO    ] 2026-06-12 17:22:22
[2026-06-12 17:22:22,237.237 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 17:22:22,407.407 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 17:22:22,426.426 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 17:22:22,565.565 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 17:22:22,634.634 INFO    ] time= 12/06/2026 17:22:22
[2026-06-12 17:22:22,659.659 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 17:22:22,665.665 INFO    ] Checking for existing commands in stream...
[2026-06-12 17:22:22,733.733 INFO    ] No existing commands found in stream
[2026-06-12 17:22:27,742.742 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 17:22:27,745.745 INFO    ] Waiting 1.87 seconds before fallback handling...
[2026-06-12 17:22:29,972.972 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 17:22:29,974.974 INFO    ] Checking for system updates...
[2026-06-12 17:22:29,994.994 INFO    ] 200
[2026-06-12 17:22:29,996.996 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:22:30,028.028 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 17:22:30,029.029 INFO    ] No update needed
[2026-06-12 17:22:30,030.030 INFO    ] Checking for camera pi updates...
[2026-06-12 17:22:30,049.049 INFO    ] 200
[2026-06-12 17:22:30,051.051 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:22:30,074.074 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 17:22:30,141.141 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 17:22:30,142.142 INFO    ] No camera update needed
[2026-06-12 17:22:30,143.143 INFO    ] Script finished. Safe exiting...
[2026-06-12 17:22:30,145.145 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 17:22:30,148.148 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 17:22:30,150.150 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 17:22:32,194.194 INFO    ] ================================================
[2026-06-12 17:22:32,210.210 INFO    ] Launching Daemon at Fri Jun 12 17:22:32 IST 2026
[2026-06-12 17:22:32,220.220 INFO    ] ================================================
[2026-06-12 17:22:32,548.548 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 17:22:32
[2026-06-12 17:22:32,888.888 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 17:22:33,041.041 INFO    ] Initializing speech engine...
[2026-06-12 17:22:33,046.046 INFO    ] 2026-06-12 17:22:33
[2026-06-12 17:22:33,254.254 INFO    ] 2026-06-12 17:22:33
[2026-06-12 17:22:33,282.282 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 17:22:33,464.464 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 17:22:33,480.480 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 17:22:33,613.613 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 17:22:33,676.676 INFO    ] time= 12/06/2026 17:22:33
[2026-06-12 17:22:33,699.699 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 17:22:33,705.705 INFO    ] Checking for existing commands in stream...
[2026-06-12 17:22:33,773.773 INFO    ] No existing commands found in stream
[2026-06-12 17:22:38,782.782 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 17:22:38,785.785 INFO    ] Waiting 1.39 seconds before fallback handling...
[2026-06-12 17:22:40,559.559 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 17:22:40,561.561 INFO    ] Checking for system updates...
[2026-06-12 17:22:40,584.584 INFO    ] 200
[2026-06-12 17:22:40,585.585 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:22:40,618.618 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 17:22:40,620.620 INFO    ] No update needed
[2026-06-12 17:22:40,621.621 INFO    ] Checking for camera pi updates...
[2026-06-12 17:22:40,641.641 INFO    ] 200
[2026-06-12 17:22:40,642.642 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:22:40,665.665 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 17:22:40,709.709 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 17:22:40,711.711 INFO    ] No camera update needed
[2026-06-12 17:22:40,712.712 INFO    ] Script finished. Safe exiting...
[2026-06-12 17:22:40,713.713 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 17:22:40,717.717 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 17:22:40,720.720 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 17:22:42,757.757 INFO    ] ================================================
[2026-06-12 17:22:42,773.773 INFO    ] Launching Daemon at Fri Jun 12 17:22:42 IST 2026
[2026-06-12 17:22:42,784.784 INFO    ] ================================================
[2026-06-12 17:22:43,125.125 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 17:22:43
[2026-06-12 17:22:43,441.441 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 17:22:43,585.585 INFO    ] Initializing speech engine...
[2026-06-12 17:22:43,591.591 INFO    ] 2026-06-12 17:22:43
[2026-06-12 17:22:43,794.794 INFO    ] 2026-06-12 17:22:43
[2026-06-12 17:22:43,823.823 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 17:22:44,005.005 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 17:22:44,009.009 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 17:22:44,136.136 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 17:22:44,197.197 INFO    ] time= 12/06/2026 17:22:44
[2026-06-12 17:22:44,226.226 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 17:22:44,236.236 INFO    ] Checking for existing commands in stream...
[2026-06-12 17:22:44,308.308 INFO    ] No existing commands found in stream
[2026-06-12 17:22:49,317.317 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 17:22:49,320.320 INFO    ] Waiting 2.19 seconds before fallback handling...
[2026-06-12 17:22:51,898.898 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 17:22:51,899.899 INFO    ] Checking for system updates...
[2026-06-12 17:22:51,920.920 INFO    ] 200
[2026-06-12 17:22:51,922.922 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:22:51,952.952 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 17:22:51,953.953 INFO    ] No update needed
[2026-06-12 17:22:51,954.954 INFO    ] Checking for camera pi updates...
[2026-06-12 17:22:51,975.975 INFO    ] 200
[2026-06-12 17:22:51,976.976 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:22:51,999.999 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 17:22:52,046.046 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 17:22:52,047.047 INFO    ] No camera update needed
[2026-06-12 17:22:52,048.048 INFO    ] Script finished. Safe exiting...
[2026-06-12 17:22:52,050.050 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 17:22:52,053.053 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 17:22:52,056.056 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 17:22:54,093.093 INFO    ] ================================================
[2026-06-12 17:22:54,109.109 INFO    ] Launching Daemon at Fri Jun 12 17:22:54 IST 2026
[2026-06-12 17:22:54,119.119 INFO    ] ================================================
[2026-06-12 17:22:54,465.465 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 17:22:54
[2026-06-12 17:22:54,780.780 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 17:22:54,924.924 INFO    ] Initializing speech engine...
[2026-06-12 17:22:54,929.929 INFO    ] 2026-06-12 17:22:54
[2026-06-12 17:22:55,136.136 INFO    ] 2026-06-12 17:22:55
[2026-06-12 17:22:55,166.166 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 17:22:55,353.353 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 17:22:55,362.362 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 17:22:55,493.493 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 17:22:55,561.561 INFO    ] time= 12/06/2026 17:22:55
[2026-06-12 17:22:55,585.585 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 17:22:55,592.592 INFO    ] Checking for existing commands in stream...
[2026-06-12 17:22:55,682.682 INFO    ] No existing commands found in stream
[2026-06-12 17:23:00,691.691 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 17:23:00,692.692 INFO    ] Waiting 1.54 seconds before fallback handling...
[2026-06-12 17:23:02,534.534 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 17:23:02,536.536 INFO    ] Checking for system updates...
[2026-06-12 17:23:02,556.556 INFO    ] 200
[2026-06-12 17:23:02,558.558 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:23:02,590.590 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 17:23:02,592.592 INFO    ] No update needed
[2026-06-12 17:23:02,593.593 INFO    ] Checking for camera pi updates...
[2026-06-12 17:23:02,615.615 INFO    ] 200
[2026-06-12 17:23:02,616.616 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:23:02,642.642 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 17:23:02,668.668 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 17:23:02,669.669 INFO    ] No camera update needed
[2026-06-12 17:23:02,671.671 INFO    ] Script finished. Safe exiting...
[2026-06-12 17:23:02,672.672 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 17:23:02,675.675 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 17:23:02,678.678 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 17:23:04,709.709 INFO    ] ================================================
[2026-06-12 17:23:04,717.717 INFO    ] Launching Daemon at Fri Jun 12 17:23:04 IST 2026
[2026-06-12 17:23:04,724.724 INFO    ] ================================================
[2026-06-12 17:23:05,036.036 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 17:23:05
[2026-06-12 17:23:05,347.347 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 17:23:05,508.508 INFO    ] Initializing speech engine...
[2026-06-12 17:23:05,519.519 INFO    ] 2026-06-12 17:23:05
[2026-06-12 17:23:05,727.727 INFO    ] 2026-06-12 17:23:05
[2026-06-12 17:23:05,755.755 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 17:23:05,938.938 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 17:23:05,942.942 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 17:23:06,078.078 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 17:23:06,145.145 INFO    ] time= 12/06/2026 17:23:06
[2026-06-12 17:23:06,169.169 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 17:23:06,171.171 INFO    ] Checking for existing commands in stream...
[2026-06-12 17:23:06,243.243 INFO    ] No existing commands found in stream
[2026-06-12 17:23:11,252.252 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 17:23:11,255.255 INFO    ] Waiting 0.76 seconds before fallback handling...
[2026-06-12 17:23:12,375.375 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 17:23:12,377.377 INFO    ] Checking for system updates...
[2026-06-12 17:23:12,397.397 INFO    ] 200
[2026-06-12 17:23:12,398.398 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:23:12,428.428 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 17:23:12,430.430 INFO    ] No update needed
[2026-06-12 17:23:12,431.431 INFO    ] Checking for camera pi updates...
[2026-06-12 17:23:12,450.450 INFO    ] 200
[2026-06-12 17:23:12,451.451 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:23:12,474.474 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 17:23:12,620.620 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 17:23:12,622.622 INFO    ] No camera update needed
[2026-06-12 17:23:12,623.623 INFO    ] Script finished. Safe exiting...
[2026-06-12 17:23:12,624.624 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 17:23:12,627.627 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 17:23:12,630.630 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 17:23:14,668.668 INFO    ] ================================================
[2026-06-12 17:23:14,683.683 INFO    ] Launching Daemon at Fri Jun 12 17:23:14 IST 2026
[2026-06-12 17:23:14,694.694 INFO    ] ================================================
[2026-06-12 17:23:15,062.062 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 17:23:15
[2026-06-12 17:23:15,374.374 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 17:23:15,504.504 INFO    ] Initializing speech engine...
[2026-06-12 17:23:15,508.508 INFO    ] 2026-06-12 17:23:15
[2026-06-12 17:23:15,727.727 INFO    ] 2026-06-12 17:23:15
[2026-06-12 17:23:15,756.756 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 17:23:15,880.880 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 17:23:15,945.945 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 17:23:16,084.084 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 17:23:16,153.153 INFO    ] time= 12/06/2026 17:23:16
[2026-06-12 17:23:16,178.178 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 17:23:16,183.183 INFO    ] Checking for existing commands in stream...
[2026-06-12 17:23:16,252.252 INFO    ] No existing commands found in stream
[2026-06-12 17:23:21,261.261 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 17:23:21,263.263 INFO    ] Waiting 3.63 seconds before fallback handling...
[2026-06-12 17:23:25,280.280 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 17:23:25,282.282 INFO    ] Checking for system updates...
[2026-06-12 17:23:25,302.302 INFO    ] 200
[2026-06-12 17:23:25,304.304 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:23:25,336.336 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 17:23:25,338.338 INFO    ] No update needed
[2026-06-12 17:23:25,339.339 INFO    ] Checking for camera pi updates...
[2026-06-12 17:23:25,360.360 INFO    ] 200
[2026-06-12 17:23:25,361.361 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:23:25,385.385 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 17:23:25,436.436 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 17:23:25,438.438 INFO    ] No camera update needed
[2026-06-12 17:23:25,439.439 INFO    ] Script finished. Safe exiting...
[2026-06-12 17:23:25,441.441 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 17:23:25,444.444 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 17:23:25,447.447 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 17:23:27,485.485 INFO    ] ================================================
[2026-06-12 17:23:27,500.500 INFO    ] Launching Daemon at Fri Jun 12 17:23:27 IST 2026
[2026-06-12 17:23:27,511.511 INFO    ] ================================================
[2026-06-12 17:23:27,870.870 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 17:23:27
[2026-06-12 17:23:28,189.189 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 17:23:28,323.323 INFO    ] Initializing speech engine...
[2026-06-12 17:23:28,328.328 INFO    ] 2026-06-12 17:23:28
[2026-06-12 17:23:28,548.548 INFO    ] 2026-06-12 17:23:28
[2026-06-12 17:23:28,578.578 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 17:23:28,768.768 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 17:23:28,772.772 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 17:23:28,919.919 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 17:23:28,977.977 INFO    ] time= 12/06/2026 17:23:28
[2026-06-12 17:23:28,999.999 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 17:23:29,005.005 INFO    ] Checking for existing commands in stream...
[2026-06-12 17:23:29,112.112 INFO    ] No existing commands found in stream
[2026-06-12 17:23:34,123.123 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 17:23:34,126.126 INFO    ] Waiting 1.08 seconds before fallback handling...
[2026-06-12 17:23:35,567.567 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 17:23:35,568.568 INFO    ] Checking for system updates...
[2026-06-12 17:23:35,589.589 INFO    ] 200
[2026-06-12 17:23:35,591.591 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:23:35,620.620 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 17:23:35,621.621 INFO    ] No update needed
[2026-06-12 17:23:35,623.623 INFO    ] Checking for camera pi updates...
[2026-06-12 17:23:35,642.642 INFO    ] 200
[2026-06-12 17:23:35,644.644 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:23:35,669.669 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 17:23:35,712.712 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 17:23:35,713.713 INFO    ] No camera update needed
[2026-06-12 17:23:35,715.715 INFO    ] Script finished. Safe exiting...
[2026-06-12 17:23:35,716.716 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 17:23:35,719.719 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 17:23:35,722.722 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 17:23:37,760.760 INFO    ] ================================================
[2026-06-12 17:23:37,774.774 INFO    ] Launching Daemon at Fri Jun 12 17:23:37 IST 2026
[2026-06-12 17:23:37,785.785 INFO    ] ================================================
[2026-06-12 17:23:38,144.144 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 17:23:38
[2026-06-12 17:23:38,457.457 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 17:23:38,595.595 INFO    ] Initializing speech engine...
[2026-06-12 17:23:38,605.605 INFO    ] 2026-06-12 17:23:38
[2026-06-12 17:23:38,811.811 INFO    ] 2026-06-12 17:23:38
[2026-06-12 17:23:38,840.840 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 17:23:39,025.025 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 17:23:39,028.028 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 17:23:39,162.162 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 17:23:39,224.224 INFO    ] time= 12/06/2026 17:23:39
[2026-06-12 17:23:39,258.258 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 17:23:39,265.265 INFO    ] Checking for existing commands in stream...
[2026-06-12 17:23:39,332.332 INFO    ] No existing commands found in stream
[2026-06-12 17:23:44,341.341 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 17:23:44,344.344 INFO    ] Waiting 1.68 seconds before fallback handling...
[2026-06-12 17:23:46,409.409 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 17:23:46,411.411 INFO    ] Checking for system updates...
[2026-06-12 17:23:46,432.432 INFO    ] 200
[2026-06-12 17:23:46,433.433 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:23:46,464.464 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 17:23:46,465.465 INFO    ] No update needed
[2026-06-12 17:23:46,467.467 INFO    ] Checking for camera pi updates...
[2026-06-12 17:23:46,486.486 INFO    ] 200
[2026-06-12 17:23:46,488.488 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:23:46,511.511 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 17:23:46,553.553 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 17:23:46,554.554 INFO    ] No camera update needed
[2026-06-12 17:23:46,555.555 INFO    ] Script finished. Safe exiting...
[2026-06-12 17:23:46,557.557 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 17:23:46,560.560 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 17:23:46,563.563 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 17:23:48,601.601 INFO    ] ================================================
[2026-06-12 17:23:48,617.617 INFO    ] Launching Daemon at Fri Jun 12 17:23:48 IST 2026
[2026-06-12 17:23:48,629.629 INFO    ] ================================================
[2026-06-12 17:23:49,016.016 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 17:23:49
[2026-06-12 17:23:49,352.352 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 17:23:49,495.495 INFO    ] Initializing speech engine...
[2026-06-12 17:23:49,500.500 INFO    ] 2026-06-12 17:23:49
[2026-06-12 17:23:49,704.704 INFO    ] 2026-06-12 17:23:49
[2026-06-12 17:23:49,733.733 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 17:23:49,918.918 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 17:23:49,928.928 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 17:23:50,051.051 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 17:23:50,102.102 INFO    ] time= 12/06/2026 17:23:50
[2026-06-12 17:23:50,142.142 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 17:23:50,153.153 INFO    ] Checking for existing commands in stream...
[2026-06-12 17:23:50,225.225 INFO    ] No existing commands found in stream
[2026-06-12 17:23:55,234.234 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 17:23:55,237.237 INFO    ] Waiting 1.54 seconds before fallback handling...
[2026-06-12 17:23:57,158.158 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 17:23:57,160.160 INFO    ] Checking for system updates...
[2026-06-12 17:23:57,180.180 INFO    ] 200
[2026-06-12 17:23:57,182.182 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:23:57,211.211 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 17:23:57,212.212 INFO    ] No update needed
[2026-06-12 17:23:57,214.214 INFO    ] Checking for camera pi updates...
[2026-06-12 17:23:57,233.233 INFO    ] 200
[2026-06-12 17:23:57,234.234 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:23:57,259.259 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 17:23:57,339.339 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 17:23:57,340.340 INFO    ] No camera update needed
[2026-06-12 17:23:57,342.342 INFO    ] Script finished. Safe exiting...
[2026-06-12 17:23:57,343.343 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 17:23:57,346.346 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 17:23:57,348.348 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 17:23:59,386.386 INFO    ] ================================================
[2026-06-12 17:23:59,402.402 INFO    ] Launching Daemon at Fri Jun 12 17:23:59 IST 2026
[2026-06-12 17:23:59,414.414 INFO    ] ================================================
[2026-06-12 17:23:59,781.781 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 17:23:59
[2026-06-12 17:24:00,097.097 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 17:24:00,227.227 INFO    ] Initializing speech engine...
[2026-06-12 17:24:00,232.232 INFO    ] 2026-06-12 17:24:00
[2026-06-12 17:24:00,452.452 INFO    ] 2026-06-12 17:24:00
[2026-06-12 17:24:00,481.481 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 17:24:00,605.605 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 17:24:00,669.669 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 17:24:00,805.805 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 17:24:00,863.863 INFO    ] time= 12/06/2026 17:24:00
[2026-06-12 17:24:00,898.898 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 17:24:00,904.904 INFO    ] Checking for existing commands in stream...
[2026-06-12 17:24:00,977.977 INFO    ] No existing commands found in stream
[2026-06-12 17:24:05,986.986 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 17:24:05,988.988 INFO    ] Waiting 0.01 seconds before fallback handling...
[2026-06-12 17:24:06,359.359 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 17:24:06,361.361 INFO    ] Checking for system updates...
[2026-06-12 17:24:06,381.381 INFO    ] 200
[2026-06-12 17:24:06,383.383 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:24:06,414.414 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 17:24:06,416.416 INFO    ] No update needed
[2026-06-12 17:24:06,417.417 INFO    ] Checking for camera pi updates...
[2026-06-12 17:24:06,437.437 INFO    ] 200
[2026-06-12 17:24:06,438.438 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:24:06,462.462 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 17:24:06,502.502 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 17:24:06,503.503 INFO    ] No camera update needed
[2026-06-12 17:24:06,504.504 INFO    ] Script finished. Safe exiting...
[2026-06-12 17:24:06,505.505 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 17:24:06,508.508 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 17:24:06,511.511 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 17:24:08,549.549 INFO    ] ================================================
[2026-06-12 17:24:08,565.565 INFO    ] Launching Daemon at Fri Jun 12 17:24:08 IST 2026
[2026-06-12 17:24:08,576.576 INFO    ] ================================================
[2026-06-12 17:24:08,911.911 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 17:24:08
[2026-06-12 17:24:09,222.222 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 17:24:09,352.352 INFO    ] Initializing speech engine...
[2026-06-12 17:24:09,357.357 INFO    ] 2026-06-12 17:24:09
[2026-06-12 17:24:09,577.577 INFO    ] 2026-06-12 17:24:09
[2026-06-12 17:24:09,604.604 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 17:24:09,776.776 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 17:24:09,795.795 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 17:24:09,933.933 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 17:24:10,001.001 INFO    ] time= 12/06/2026 17:24:09
[2026-06-12 17:24:10,024.024 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 17:24:10,031.031 INFO    ] Checking for existing commands in stream...
[2026-06-12 17:24:10,098.098 INFO    ] No existing commands found in stream
[2026-06-12 17:24:15,107.107 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 17:24:15,110.110 INFO    ] Waiting 2.19 seconds before fallback handling...
[2026-06-12 17:24:17,664.664 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 17:24:17,666.666 INFO    ] Checking for system updates...
[2026-06-12 17:24:17,686.686 INFO    ] 200
[2026-06-12 17:24:17,687.687 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:24:17,717.717 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 17:24:17,718.718 INFO    ] No update needed
[2026-06-12 17:24:17,720.720 INFO    ] Checking for camera pi updates...
[2026-06-12 17:24:17,741.741 INFO    ] 200
[2026-06-12 17:24:17,743.743 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:24:17,765.765 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 17:24:17,824.824 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 17:24:17,825.825 INFO    ] No camera update needed
[2026-06-12 17:24:17,827.827 INFO    ] Script finished. Safe exiting...
[2026-06-12 17:24:17,828.828 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 17:24:17,831.831 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 17:24:17,834.834 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 17:24:19,873.873 INFO    ] ================================================
[2026-06-12 17:24:19,888.888 INFO    ] Launching Daemon at Fri Jun 12 17:24:19 IST 2026
[2026-06-12 17:24:19,899.899 INFO    ] ================================================
[2026-06-12 17:24:20,259.259 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 17:24:20
[2026-06-12 17:24:20,601.601 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 17:24:20,752.752 INFO    ] Initializing speech engine...
[2026-06-12 17:24:20,758.758 INFO    ] 2026-06-12 17:24:20
[2026-06-12 17:24:20,969.969 INFO    ] 2026-06-12 17:24:20
[2026-06-12 17:24:20,998.998 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 17:24:21,185.185 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 17:24:21,189.189 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 17:24:21,349.349 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 17:24:21,399.399 INFO    ] time= 12/06/2026 17:24:21
[2026-06-12 17:24:21,422.422 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 17:24:21,428.428 INFO    ] Checking for existing commands in stream...
[2026-06-12 17:24:21,496.496 INFO    ] No existing commands found in stream
[2026-06-12 17:24:26,511.511 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 17:24:26,514.514 INFO    ] Waiting 1.17 seconds before fallback handling...
[2026-06-12 17:24:28,041.041 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 17:24:28,043.043 INFO    ] Checking for system updates...
[2026-06-12 17:24:28,063.063 INFO    ] 200
[2026-06-12 17:24:28,065.065 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:24:28,095.095 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 17:24:28,096.096 INFO    ] No update needed
[2026-06-12 17:24:28,098.098 INFO    ] Checking for camera pi updates...
[2026-06-12 17:24:28,118.118 INFO    ] 200
[2026-06-12 17:24:28,120.120 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:24:28,146.146 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 17:24:28,204.204 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 17:24:28,205.205 INFO    ] No camera update needed
[2026-06-12 17:24:28,207.207 INFO    ] Script finished. Safe exiting...
[2026-06-12 17:24:28,208.208 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 17:24:28,212.212 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 17:24:28,215.215 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 17:24:30,254.254 INFO    ] ================================================
[2026-06-12 17:24:30,269.269 INFO    ] Launching Daemon at Fri Jun 12 17:24:30 IST 2026
[2026-06-12 17:24:30,280.280 INFO    ] ================================================
[2026-06-12 17:24:30,665.665 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 17:24:30
[2026-06-12 17:24:31,006.006 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 17:24:31,159.159 INFO    ] Initializing speech engine...
[2026-06-12 17:24:31,164.164 INFO    ] 2026-06-12 17:24:31
[2026-06-12 17:24:31,373.373 INFO    ] 2026-06-12 17:24:31
[2026-06-12 17:24:31,403.403 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 17:24:31,602.602 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 17:24:31,606.606 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 17:24:31,769.769 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 17:24:31,826.826 INFO    ] time= 12/06/2026 17:24:31
[2026-06-12 17:24:31,852.852 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 17:24:31,927.927 INFO    ] Checking for existing commands in stream...
[2026-06-12 17:24:32,057.057 INFO    ] No existing commands found in stream
[2026-06-12 17:24:37,068.068 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 17:24:37,071.071 INFO    ] Waiting 3.03 seconds before fallback handling...
[2026-06-12 17:24:40,978.978 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 17:24:40,981.981 INFO    ] Checking for system updates...
[2026-06-12 17:24:41,018.018 INFO    ] 200
[2026-06-12 17:24:41,020.020 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:24:41,068.068 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 17:24:41,069.069 INFO    ] No update needed
[2026-06-12 17:24:41,071.071 INFO    ] Checking for camera pi updates...
[2026-06-12 17:24:41,091.091 INFO    ] 200
[2026-06-12 17:24:41,093.093 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:24:41,117.117 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 17:24:41,205.205 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 17:24:41,206.206 INFO    ] No camera update needed
[2026-06-12 17:24:41,207.207 INFO    ] Script finished. Safe exiting...
[2026-06-12 17:24:41,209.209 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 17:24:41,212.212 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 17:24:41,214.214 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 17:24:43,252.252 INFO    ] ================================================
[2026-06-12 17:24:43,267.267 INFO    ] Launching Daemon at Fri Jun 12 17:24:43 IST 2026
[2026-06-12 17:24:43,279.279 INFO    ] ================================================
[2026-06-12 17:24:43,645.645 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 17:24:43
[2026-06-12 17:24:43,985.985 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 17:24:44,139.139 INFO    ] Initializing speech engine...
[2026-06-12 17:24:44,143.143 INFO    ] 2026-06-12 17:24:44
[2026-06-12 17:24:44,350.350 INFO    ] 2026-06-12 17:24:44
[2026-06-12 17:24:44,380.380 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 17:24:44,564.564 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 17:24:44,574.574 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 17:24:44,708.708 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 17:24:44,771.771 INFO    ] time= 12/06/2026 17:24:44
[2026-06-12 17:24:44,794.794 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 17:24:44,800.800 INFO    ] Checking for existing commands in stream...
[2026-06-12 17:24:44,867.867 INFO    ] No existing commands found in stream
[2026-06-12 17:24:49,876.876 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 17:24:49,880.880 INFO    ] Waiting 1.57 seconds before fallback handling...
[2026-06-12 17:24:51,841.841 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 17:24:51,843.843 INFO    ] Checking for system updates...
[2026-06-12 17:24:51,863.863 INFO    ] 200
[2026-06-12 17:24:51,865.865 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:24:51,899.899 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 17:24:51,900.900 INFO    ] No update needed
[2026-06-12 17:24:51,901.901 INFO    ] Checking for camera pi updates...
[2026-06-12 17:24:51,920.920 INFO    ] 200
[2026-06-12 17:24:51,922.922 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:24:51,947.947 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 17:24:51,990.990 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 17:24:51,992.992 INFO    ] No camera update needed
[2026-06-12 17:24:51,993.993 INFO    ] Script finished. Safe exiting...
[2026-06-12 17:24:51,994.994 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 17:24:51,997.997 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 17:24:52,000.000 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 17:24:54,037.037 INFO    ] ================================================
[2026-06-12 17:24:54,052.052 INFO    ] Launching Daemon at Fri Jun 12 17:24:54 IST 2026
[2026-06-12 17:24:54,064.064 INFO    ] ================================================
[2026-06-12 17:24:54,415.415 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 17:24:54
[2026-06-12 17:24:54,732.732 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 17:24:54,876.876 INFO    ] Initializing speech engine...
[2026-06-12 17:24:54,881.881 INFO    ] 2026-06-12 17:24:54
[2026-06-12 17:24:55,084.084 INFO    ] 2026-06-12 17:24:55
[2026-06-12 17:24:55,113.113 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 17:24:55,297.297 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 17:24:55,306.306 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 17:24:55,451.451 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 17:24:55,502.502 INFO    ] time= 12/06/2026 17:24:55
[2026-06-12 17:24:55,525.525 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 17:24:55,532.532 INFO    ] Checking for existing commands in stream...
[2026-06-12 17:24:55,598.598 INFO    ] No existing commands found in stream
[2026-06-12 17:25:00,612.612 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 17:25:00,615.615 INFO    ] Waiting 3.26 seconds before fallback handling...
[2026-06-12 17:25:04,273.273 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 17:25:04,275.275 INFO    ] Checking for system updates...
[2026-06-12 17:25:04,295.295 INFO    ] 200
[2026-06-12 17:25:04,296.296 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:25:04,328.328 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 17:25:04,330.330 INFO    ] No update needed
[2026-06-12 17:25:04,331.331 INFO    ] Checking for camera pi updates...
[2026-06-12 17:25:04,350.350 INFO    ] 200
[2026-06-12 17:25:04,352.352 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:25:04,378.378 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 17:25:04,419.419 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 17:25:04,420.420 INFO    ] No camera update needed
[2026-06-12 17:25:04,422.422 INFO    ] Script finished. Safe exiting...
[2026-06-12 17:25:04,423.423 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 17:25:04,426.426 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 17:25:04,429.429 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 17:25:06,467.467 INFO    ] ================================================
[2026-06-12 17:25:06,483.483 INFO    ] Launching Daemon at Fri Jun 12 17:25:06 IST 2026
[2026-06-12 17:25:06,494.494 INFO    ] ================================================
[2026-06-12 17:25:06,856.856 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 17:25:06
[2026-06-12 17:25:07,168.168 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 17:25:07,305.305 INFO    ] Initializing speech engine...
[2026-06-12 17:25:07,315.315 INFO    ] 2026-06-12 17:25:07
[2026-06-12 17:25:07,519.519 INFO    ] 2026-06-12 17:25:07
[2026-06-12 17:25:07,547.547 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 17:25:07,732.732 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 17:25:07,740.740 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 17:25:07,866.866 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 17:25:07,928.928 INFO    ] time= 12/06/2026 17:25:07
[2026-06-12 17:25:07,960.960 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 17:25:07,966.966 INFO    ] Checking for existing commands in stream...
[2026-06-12 17:25:08,057.057 INFO    ] No existing commands found in stream
[2026-06-12 17:25:13,071.071 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 17:25:13,074.074 INFO    ] Waiting 0.66 seconds before fallback handling...
[2026-06-12 17:25:14,125.125 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 17:25:14,126.126 INFO    ] Checking for system updates...
[2026-06-12 17:25:14,147.147 INFO    ] 200
[2026-06-12 17:25:14,148.148 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:25:14,178.178 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 17:25:14,180.180 INFO    ] No update needed
[2026-06-12 17:25:14,181.181 INFO    ] Checking for camera pi updates...
[2026-06-12 17:25:14,201.201 INFO    ] 200
[2026-06-12 17:25:14,202.202 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:25:14,227.227 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 17:25:14,367.367 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 17:25:14,368.368 INFO    ] No camera update needed
[2026-06-12 17:25:14,370.370 INFO    ] Script finished. Safe exiting...
[2026-06-12 17:25:14,371.371 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 17:25:14,375.375 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 17:25:14,377.377 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 17:25:16,417.417 INFO    ] ================================================
[2026-06-12 17:25:16,434.434 INFO    ] Launching Daemon at Fri Jun 12 17:25:16 IST 2026
[2026-06-12 17:25:16,446.446 INFO    ] ================================================
[2026-06-12 17:25:16,806.806 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 17:25:16
[2026-06-12 17:25:17,117.117 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 17:25:17,258.258 INFO    ] Initializing speech engine...
[2026-06-12 17:25:17,264.264 INFO    ] 2026-06-12 17:25:17
[2026-06-12 17:25:17,466.466 INFO    ] 2026-06-12 17:25:17
[2026-06-12 17:25:17,493.493 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 17:25:17,676.676 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 17:25:17,679.679 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 17:25:17,810.810 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 17:25:17,872.872 INFO    ] time= 12/06/2026 17:25:17
[2026-06-12 17:25:17,904.904 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 17:25:17,911.911 INFO    ] Checking for existing commands in stream...
[2026-06-12 17:25:17,977.977 INFO    ] No existing commands found in stream
[2026-06-12 17:25:22,991.991 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 17:25:22,994.994 INFO    ] Waiting 3.59 seconds before fallback handling...
[2026-06-12 17:25:26,931.931 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 17:25:26,933.933 INFO    ] Checking for system updates...
[2026-06-12 17:25:26,953.953 INFO    ] 200
[2026-06-12 17:25:26,954.954 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:25:26,984.984 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 17:25:26,985.985 INFO    ] No update needed
[2026-06-12 17:25:26,986.986 INFO    ] Checking for camera pi updates...
[2026-06-12 17:25:27,005.005 INFO    ] 200
[2026-06-12 17:25:27,007.007 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:25:27,029.029 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 17:25:27,073.073 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 17:25:27,074.074 INFO    ] No camera update needed
[2026-06-12 17:25:27,076.076 INFO    ] Script finished. Safe exiting...
[2026-06-12 17:25:27,077.077 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 17:25:27,080.080 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 17:25:27,083.083 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 17:25:29,123.123 INFO    ] ================================================
[2026-06-12 17:25:29,139.139 INFO    ] Launching Daemon at Fri Jun 12 17:25:29 IST 2026
[2026-06-12 17:25:29,149.149 INFO    ] ================================================
[2026-06-12 17:25:29,497.497 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 17:25:29
[2026-06-12 17:25:29,816.816 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 17:25:29,961.961 INFO    ] Initializing speech engine...
[2026-06-12 17:25:29,965.965 INFO    ] 2026-06-12 17:25:29
[2026-06-12 17:25:30,168.168 INFO    ] 2026-06-12 17:25:30
[2026-06-12 17:25:30,198.198 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 17:25:30,382.382 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 17:25:30,391.391 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 17:25:30,521.521 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 17:25:30,587.587 INFO    ] time= 12/06/2026 17:25:30
[2026-06-12 17:25:30,611.611 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 17:25:30,618.618 INFO    ] Checking for existing commands in stream...
[2026-06-12 17:25:30,707.707 INFO    ] No existing commands found in stream
[2026-06-12 17:25:35,716.716 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 17:25:35,719.719 INFO    ] Waiting 0.03 seconds before fallback handling...
[2026-06-12 17:25:36,107.107 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 17:25:36,109.109 INFO    ] Checking for system updates...
[2026-06-12 17:25:36,129.129 INFO    ] 200
[2026-06-12 17:25:36,131.131 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:25:36,160.160 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 17:25:36,161.161 INFO    ] No update needed
[2026-06-12 17:25:36,163.163 INFO    ] Checking for camera pi updates...
[2026-06-12 17:25:36,183.183 INFO    ] 200
[2026-06-12 17:25:36,184.184 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:25:36,207.207 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 17:25:36,252.252 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 17:25:36,253.253 INFO    ] No camera update needed
[2026-06-12 17:25:36,255.255 INFO    ] Script finished. Safe exiting...
[2026-06-12 17:25:36,256.256 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 17:25:36,259.259 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 17:25:36,261.261 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 17:25:38,302.302 INFO    ] ================================================
[2026-06-12 17:25:38,317.317 INFO    ] Launching Daemon at Fri Jun 12 17:25:38 IST 2026
[2026-06-12 17:25:38,329.329 INFO    ] ================================================
[2026-06-12 17:25:38,683.683 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 17:25:38
[2026-06-12 17:25:39,019.019 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 17:25:39,171.171 INFO    ] Initializing speech engine...
[2026-06-12 17:25:39,177.177 INFO    ] 2026-06-12 17:25:39
[2026-06-12 17:25:39,386.386 INFO    ] 2026-06-12 17:25:39
[2026-06-12 17:25:39,415.415 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 17:25:39,602.602 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 17:25:39,613.613 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 17:25:39,742.742 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 17:25:39,795.795 INFO    ] time= 12/06/2026 17:25:39
[2026-06-12 17:25:39,839.839 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 17:25:39,841.841 INFO    ] Checking for existing commands in stream...
[2026-06-12 17:25:39,914.914 INFO    ] No existing commands found in stream
[2026-06-12 17:25:44,929.929 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 17:25:44,932.932 INFO    ] Waiting 0.68 seconds before fallback handling...
[2026-06-12 17:25:45,995.995 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 17:25:45,997.997 INFO    ] Checking for system updates...
[2026-06-12 17:25:46,019.019 INFO    ] 200
[2026-06-12 17:25:46,020.020 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:25:46,050.050 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 17:25:46,052.052 INFO    ] No update needed
[2026-06-12 17:25:46,053.053 INFO    ] Checking for camera pi updates...
[2026-06-12 17:25:46,073.073 INFO    ] 200
[2026-06-12 17:25:46,074.074 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:25:46,096.096 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 17:25:46,141.141 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 17:25:46,142.142 INFO    ] No camera update needed
[2026-06-12 17:25:46,143.143 INFO    ] Script finished. Safe exiting...
[2026-06-12 17:25:46,145.145 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 17:25:46,148.148 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 17:25:46,150.150 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 17:25:48,189.189 INFO    ] ================================================
[2026-06-12 17:25:48,204.204 INFO    ] Launching Daemon at Fri Jun 12 17:25:48 IST 2026
[2026-06-12 17:25:48,215.215 INFO    ] ================================================
[2026-06-12 17:25:48,553.553 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 17:25:48
[2026-06-12 17:25:48,864.864 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 17:25:49,002.002 INFO    ] Initializing speech engine...
[2026-06-12 17:25:49,011.011 INFO    ] 2026-06-12 17:25:49
[2026-06-12 17:25:49,218.218 INFO    ] 2026-06-12 17:25:49
[2026-06-12 17:25:49,246.246 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 17:25:49,431.431 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 17:25:49,434.434 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 17:25:49,570.570 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 17:25:49,638.638 INFO    ] time= 12/06/2026 17:25:49
[2026-06-12 17:25:49,662.662 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 17:25:49,669.669 INFO    ] Checking for existing commands in stream...
[2026-06-12 17:25:49,735.735 INFO    ] No existing commands found in stream
[2026-06-12 17:25:54,768.768 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 17:25:54,771.771 INFO    ] Waiting 2.26 seconds before fallback handling...
[2026-06-12 17:25:57,373.373 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 17:25:57,375.375 INFO    ] Checking for system updates...
[2026-06-12 17:25:57,395.395 INFO    ] 200
[2026-06-12 17:25:57,396.396 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:25:57,428.428 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 17:25:57,429.429 INFO    ] No update needed
[2026-06-12 17:25:57,431.431 INFO    ] Checking for camera pi updates...
[2026-06-12 17:25:57,450.450 INFO    ] 200
[2026-06-12 17:25:57,451.451 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:25:57,475.475 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 17:25:57,520.520 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 17:25:57,522.522 INFO    ] No camera update needed
[2026-06-12 17:25:57,523.523 INFO    ] Script finished. Safe exiting...
[2026-06-12 17:25:57,524.524 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 17:25:57,527.527 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 17:25:57,530.530 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 17:25:59,567.567 INFO    ] ================================================
[2026-06-12 17:25:59,582.582 INFO    ] Launching Daemon at Fri Jun 12 17:25:59 IST 2026
[2026-06-12 17:25:59,593.593 INFO    ] ================================================
[2026-06-12 17:25:59,958.958 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 17:25:59
[2026-06-12 17:26:00,269.269 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 17:26:00,406.406 INFO    ] Initializing speech engine...
[2026-06-12 17:26:00,416.416 INFO    ] 2026-06-12 17:26:00
[2026-06-12 17:26:00,619.619 INFO    ] 2026-06-12 17:26:00
[2026-06-12 17:26:00,648.648 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 17:26:00,832.832 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 17:26:00,835.835 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 17:26:00,972.972 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 17:26:01,039.039 INFO    ] time= 12/06/2026 17:26:00
[2026-06-12 17:26:01,062.062 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 17:26:01,069.069 INFO    ] Checking for existing commands in stream...
[2026-06-12 17:26:01,135.135 INFO    ] No existing commands found in stream
[2026-06-12 17:26:06,143.143 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 17:26:06,146.146 INFO    ] Waiting 3.04 seconds before fallback handling...
[2026-06-12 17:26:09,590.590 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 17:26:09,591.591 INFO    ] Checking for system updates...
[2026-06-12 17:26:09,611.611 INFO    ] 200
[2026-06-12 17:26:09,613.613 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:26:09,645.645 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 17:26:09,646.646 INFO    ] No update needed
[2026-06-12 17:26:09,647.647 INFO    ] Checking for camera pi updates...
[2026-06-12 17:26:09,666.666 INFO    ] 200
[2026-06-12 17:26:09,668.668 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:26:09,692.692 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 17:26:09,741.741 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 17:26:09,742.742 INFO    ] No camera update needed
[2026-06-12 17:26:09,744.744 INFO    ] Script finished. Safe exiting...
[2026-06-12 17:26:09,745.745 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 17:26:09,748.748 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 17:26:09,750.750 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 17:26:11,790.790 INFO    ] ================================================
[2026-06-12 17:26:11,805.805 INFO    ] Launching Daemon at Fri Jun 12 17:26:11 IST 2026
[2026-06-12 17:26:11,816.816 INFO    ] ================================================
[2026-06-12 17:26:12,175.175 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 17:26:12
[2026-06-12 17:26:12,487.487 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 17:26:12,629.629 INFO    ] Initializing speech engine...
[2026-06-12 17:26:12,634.634 INFO    ] 2026-06-12 17:26:12
[2026-06-12 17:26:12,836.836 INFO    ] 2026-06-12 17:26:12
[2026-06-12 17:26:12,864.864 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 17:26:13,048.048 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 17:26:13,058.058 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 17:26:13,194.194 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 17:26:13,257.257 INFO    ] time= 12/06/2026 17:26:13
[2026-06-12 17:26:13,280.280 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 17:26:13,287.287 INFO    ] Checking for existing commands in stream...
[2026-06-12 17:26:13,354.354 INFO    ] No existing commands found in stream
[2026-06-12 17:26:18,368.368 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 17:26:18,371.371 INFO    ] Waiting 3.79 seconds before fallback handling...
[2026-06-12 17:26:22,535.535 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 17:26:22,536.536 INFO    ] Checking for system updates...
[2026-06-12 17:26:22,558.558 INFO    ] 200
[2026-06-12 17:26:22,559.559 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:26:22,588.588 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 17:26:22,590.590 INFO    ] No update needed
[2026-06-12 17:26:22,591.591 INFO    ] Checking for camera pi updates...
[2026-06-12 17:26:22,610.610 INFO    ] 200
[2026-06-12 17:26:22,611.611 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:26:22,635.635 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 17:26:22,696.696 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 17:26:22,697.697 INFO    ] No camera update needed
[2026-06-12 17:26:22,699.699 INFO    ] Script finished. Safe exiting...
[2026-06-12 17:26:22,700.700 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 17:26:22,703.703 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 17:26:22,706.706 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 17:26:24,744.744 INFO    ] ================================================
[2026-06-12 17:26:24,760.760 INFO    ] Launching Daemon at Fri Jun 12 17:26:24 IST 2026
[2026-06-12 17:26:24,770.770 INFO    ] ================================================
[2026-06-12 17:26:25,101.101 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 17:26:25
[2026-06-12 17:26:25,412.412 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 17:26:25,542.542 INFO    ] Initializing speech engine...
[2026-06-12 17:26:25,550.550 INFO    ] 2026-06-12 17:26:25
[2026-06-12 17:26:25,763.763 INFO    ] 2026-06-12 17:26:25
[2026-06-12 17:26:25,792.792 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 17:26:25,978.978 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 17:26:25,987.987 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 17:26:26,128.128 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 17:26:26,186.186 INFO    ] time= 12/06/2026 17:26:26
[2026-06-12 17:26:26,209.209 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 17:26:26,216.216 INFO    ] Checking for existing commands in stream...
[2026-06-12 17:26:26,283.283 INFO    ] No existing commands found in stream
[2026-06-12 17:26:31,297.297 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 17:26:31,299.299 INFO    ] Waiting 0.68 seconds before fallback handling...
[2026-06-12 17:26:32,394.394 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 17:26:32,395.395 INFO    ] Checking for system updates...
[2026-06-12 17:26:32,422.422 INFO    ] 200
[2026-06-12 17:26:32,424.424 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:26:32,462.462 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 17:26:32,463.463 INFO    ] No update needed
[2026-06-12 17:26:32,465.465 INFO    ] Checking for camera pi updates...
[2026-06-12 17:26:32,492.492 INFO    ] 200
[2026-06-12 17:26:32,494.494 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:26:32,520.520 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 17:26:32,554.554 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 17:26:32,556.556 INFO    ] No camera update needed
[2026-06-12 17:26:32,557.557 INFO    ] Script finished. Safe exiting...
[2026-06-12 17:26:32,559.559 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 17:26:32,563.563 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 17:26:32,566.566 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 17:26:34,604.604 INFO    ] ================================================
[2026-06-12 17:26:34,619.619 INFO    ] Launching Daemon at Fri Jun 12 17:26:34 IST 2026
[2026-06-12 17:26:34,629.629 INFO    ] ================================================
[2026-06-12 17:26:35,009.009 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 17:26:35
[2026-06-12 17:26:35,346.346 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 17:26:35,498.498 INFO    ] Initializing speech engine...
[2026-06-12 17:26:35,502.502 INFO    ] 2026-06-12 17:26:35
[2026-06-12 17:26:35,708.708 INFO    ] 2026-06-12 17:26:35
[2026-06-12 17:26:35,737.737 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 17:26:35,922.922 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 17:26:35,933.933 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 17:26:36,075.075 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 17:26:36,128.128 INFO    ] time= 12/06/2026 17:26:36
[2026-06-12 17:26:36,152.152 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 17:26:36,157.157 INFO    ] Checking for existing commands in stream...
[2026-06-12 17:26:36,224.224 INFO    ] No existing commands found in stream
[2026-06-12 17:26:41,238.238 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 17:26:41,246.246 INFO    ] Waiting 1.45 seconds before fallback handling...
[2026-06-12 17:26:43,050.050 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 17:26:43,052.052 INFO    ] Checking for system updates...
[2026-06-12 17:26:43,072.072 INFO    ] 200
[2026-06-12 17:26:43,073.073 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:26:43,103.103 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 17:26:43,104.104 INFO    ] No update needed
[2026-06-12 17:26:43,106.106 INFO    ] Checking for camera pi updates...
[2026-06-12 17:26:43,126.126 INFO    ] 200
[2026-06-12 17:26:43,127.127 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:26:43,150.150 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 17:26:43,222.222 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 17:26:43,224.224 INFO    ] No camera update needed
[2026-06-12 17:26:43,225.225 INFO    ] Script finished. Safe exiting...
[2026-06-12 17:26:43,226.226 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 17:26:43,229.229 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 17:26:43,232.232 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 17:26:45,269.269 INFO    ] ================================================
[2026-06-12 17:26:45,284.284 INFO    ] Launching Daemon at Fri Jun 12 17:26:45 IST 2026
[2026-06-12 17:26:45,295.295 INFO    ] ================================================
[2026-06-12 17:26:45,640.640 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 17:26:45
[2026-06-12 17:26:45,952.952 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 17:26:46,084.084 INFO    ] Initializing speech engine...
[2026-06-12 17:26:46,097.097 INFO    ] 2026-06-12 17:26:46
[2026-06-12 17:26:46,303.303 INFO    ] 2026-06-12 17:26:46
[2026-06-12 17:26:46,331.331 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 17:26:46,515.515 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 17:26:46,525.525 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 17:26:46,653.653 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 17:26:46,720.720 INFO    ] time= 12/06/2026 17:26:46
[2026-06-12 17:26:46,744.744 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 17:26:46,750.750 INFO    ] Checking for existing commands in stream...
[2026-06-12 17:26:46,817.817 INFO    ] No existing commands found in stream
[2026-06-12 17:26:51,831.831 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 17:26:51,834.834 INFO    ] Waiting 3.96 seconds before fallback handling...
[2026-06-12 17:26:56,181.181 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 17:26:56,183.183 INFO    ] Checking for system updates...
[2026-06-12 17:26:56,204.204 INFO    ] 200
[2026-06-12 17:26:56,206.206 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:26:56,237.237 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 17:26:56,239.239 INFO    ] No update needed
[2026-06-12 17:26:56,240.240 INFO    ] Checking for camera pi updates...
[2026-06-12 17:26:56,260.260 INFO    ] 200
[2026-06-12 17:26:56,261.261 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:26:56,287.287 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 17:26:56,331.331 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 17:26:56,332.332 INFO    ] No camera update needed
[2026-06-12 17:26:56,334.334 INFO    ] Script finished. Safe exiting...
[2026-06-12 17:26:56,335.335 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 17:26:56,338.338 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 17:26:56,340.340 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 17:26:58,378.378 INFO    ] ================================================
[2026-06-12 17:26:58,393.393 INFO    ] Launching Daemon at Fri Jun 12 17:26:58 IST 2026
[2026-06-12 17:26:58,404.404 INFO    ] ================================================
[2026-06-12 17:26:58,764.764 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 17:26:58
[2026-06-12 17:26:59,077.077 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 17:26:59,209.209 INFO    ] Initializing speech engine...
[2026-06-12 17:26:59,214.214 INFO    ] 2026-06-12 17:26:59
[2026-06-12 17:26:59,410.410 INFO    ] 2026-06-12 17:26:59
[2026-06-12 17:26:59,443.443 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 17:26:59,649.649 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 17:26:59,659.659 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 17:26:59,786.786 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 17:26:59,852.852 INFO    ] time= 12/06/2026 17:26:59
[2026-06-12 17:26:59,879.879 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 17:26:59,886.886 INFO    ] Checking for existing commands in stream...
[2026-06-12 17:26:59,975.975 INFO    ] No existing commands found in stream
[2026-06-12 17:27:04,984.984 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 17:27:04,987.987 INFO    ] Waiting 2.43 seconds before fallback handling...
[2026-06-12 17:27:07,803.803 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 17:27:07,805.805 INFO    ] Checking for system updates...
[2026-06-12 17:27:07,826.826 INFO    ] 200
[2026-06-12 17:27:07,827.827 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:27:07,861.861 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 17:27:07,862.862 INFO    ] No update needed
[2026-06-12 17:27:07,864.864 INFO    ] Checking for camera pi updates...
[2026-06-12 17:27:07,882.882 INFO    ] 200
[2026-06-12 17:27:07,884.884 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:27:07,908.908 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 17:27:07,959.959 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 17:27:07,961.961 INFO    ] No camera update needed
[2026-06-12 17:27:07,962.962 INFO    ] Script finished. Safe exiting...
[2026-06-12 17:27:07,963.963 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 17:27:07,966.966 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 17:27:07,969.969 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 17:27:10,008.008 INFO    ] ================================================
[2026-06-12 17:27:10,023.023 INFO    ] Launching Daemon at Fri Jun 12 17:27:10 IST 2026
[2026-06-12 17:27:10,044.044 INFO    ] ================================================
[2026-06-12 17:27:10,370.370 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 17:27:10
[2026-06-12 17:27:10,680.680 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 17:27:10,822.822 INFO    ] Initializing speech engine...
[2026-06-12 17:27:10,827.827 INFO    ] 2026-06-12 17:27:10
[2026-06-12 17:27:11,030.030 INFO    ] 2026-06-12 17:27:11
[2026-06-12 17:27:11,059.059 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 17:27:11,246.246 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 17:27:11,254.254 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 17:27:11,410.410 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 17:27:11,455.455 INFO    ] time= 12/06/2026 17:27:11
[2026-06-12 17:27:11,476.476 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 17:27:11,482.482 INFO    ] Checking for existing commands in stream...
[2026-06-12 17:27:11,549.549 INFO    ] No existing commands found in stream
[2026-06-12 17:27:16,558.558 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 17:27:16,561.561 INFO    ] Waiting 1.25 seconds before fallback handling...
[2026-06-12 17:27:18,176.176 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 17:27:18,178.178 INFO    ] Checking for system updates...
[2026-06-12 17:27:18,199.199 INFO    ] 200
[2026-06-12 17:27:18,200.200 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:27:18,232.232 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 17:27:18,233.233 INFO    ] No update needed
[2026-06-12 17:27:18,234.234 INFO    ] Checking for camera pi updates...
[2026-06-12 17:27:18,253.253 INFO    ] 200
[2026-06-12 17:27:18,254.254 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:27:18,279.279 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 17:27:18,426.426 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 17:27:18,428.428 INFO    ] No camera update needed
[2026-06-12 17:27:18,429.429 INFO    ] Script finished. Safe exiting...
[2026-06-12 17:27:18,430.430 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 17:27:18,433.433 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 17:27:18,436.436 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 17:27:20,474.474 INFO    ] ================================================
[2026-06-12 17:27:20,489.489 INFO    ] Launching Daemon at Fri Jun 12 17:27:20 IST 2026
[2026-06-12 17:27:20,500.500 INFO    ] ================================================
[2026-06-12 17:27:20,832.832 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 17:27:20
[2026-06-12 17:27:21,147.147 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 17:27:21,290.290 INFO    ] Initializing speech engine...
[2026-06-12 17:27:21,295.295 INFO    ] 2026-06-12 17:27:21
[2026-06-12 17:27:21,496.496 INFO    ] 2026-06-12 17:27:21
[2026-06-12 17:27:21,525.525 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 17:27:21,707.707 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 17:27:21,716.716 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 17:27:21,845.845 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 17:27:21,911.911 INFO    ] time= 12/06/2026 17:27:21
[2026-06-12 17:27:21,936.936 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 17:27:21,941.941 INFO    ] Checking for existing commands in stream...
[2026-06-12 17:27:22,009.009 INFO    ] No existing commands found in stream
[2026-06-12 17:27:27,018.018 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 17:27:27,022.022 INFO    ] Waiting 1.12 seconds before fallback handling...
[2026-06-12 17:27:28,521.521 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 17:27:28,523.523 INFO    ] Checking for system updates...
[2026-06-12 17:27:28,544.544 INFO    ] 200
[2026-06-12 17:27:28,545.545 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:27:28,577.577 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 17:27:28,579.579 INFO    ] No update needed
[2026-06-12 17:27:28,580.580 INFO    ] Checking for camera pi updates...
[2026-06-12 17:27:28,600.600 INFO    ] 200
[2026-06-12 17:27:28,602.602 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:27:28,625.625 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 17:27:28,672.672 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 17:27:28,673.673 INFO    ] No camera update needed
[2026-06-12 17:27:28,675.675 INFO    ] Script finished. Safe exiting...
[2026-06-12 17:27:28,676.676 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 17:27:28,679.679 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 17:27:28,682.682 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 17:27:30,720.720 INFO    ] ================================================
[2026-06-12 17:27:30,735.735 INFO    ] Launching Daemon at Fri Jun 12 17:27:30 IST 2026
[2026-06-12 17:27:30,745.745 INFO    ] ================================================
[2026-06-12 17:27:31,134.134 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 17:27:31
[2026-06-12 17:27:31,478.478 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 17:27:31,623.623 INFO    ] Initializing speech engine...
[2026-06-12 17:27:31,630.630 INFO    ] 2026-06-12 17:27:31
[2026-06-12 17:27:31,865.865 INFO    ] 2026-06-12 17:27:31
[2026-06-12 17:27:31,897.897 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 17:27:32,038.038 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 17:27:32,040.040 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 17:27:32,159.159 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 17:27:32,184.184 INFO    ] time= 12/06/2026 17:27:32
[2026-06-12 17:27:32,234.234 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 17:27:32,269.269 INFO    ] Checking for existing commands in stream...
[2026-06-12 17:27:32,399.399 INFO    ] No existing commands found in stream
[2026-06-12 17:27:37,410.410 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 17:27:37,412.412 INFO    ] Waiting 3.92 seconds before fallback handling...
[2026-06-12 17:27:41,730.730 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 17:27:41,731.731 INFO    ] Checking for system updates...
[2026-06-12 17:27:41,753.753 INFO    ] 200
[2026-06-12 17:27:41,754.754 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:27:41,783.783 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 17:27:41,785.785 INFO    ] No update needed
[2026-06-12 17:27:41,786.786 INFO    ] Checking for camera pi updates...
[2026-06-12 17:27:41,806.806 INFO    ] 200
[2026-06-12 17:27:41,808.808 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:27:41,831.831 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 17:27:41,861.861 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 17:27:41,862.862 INFO    ] No camera update needed
[2026-06-12 17:27:41,864.864 INFO    ] Script finished. Safe exiting...
[2026-06-12 17:27:41,865.865 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 17:27:41,868.868 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 17:27:41,871.871 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 17:27:43,909.909 INFO    ] ================================================
[2026-06-12 17:27:43,925.925 INFO    ] Launching Daemon at Fri Jun 12 17:27:43 IST 2026
[2026-06-12 17:27:43,935.935 INFO    ] ================================================
[2026-06-12 17:27:44,318.318 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 17:27:44
[2026-06-12 17:27:44,651.651 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 17:27:44,789.789 INFO    ] Initializing speech engine...
[2026-06-12 17:27:44,803.803 INFO    ] 2026-06-12 17:27:44
[2026-06-12 17:27:45,012.012 INFO    ] 2026-06-12 17:27:44
[2026-06-12 17:27:45,042.042 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 17:27:45,228.228 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 17:27:45,237.237 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 17:27:45,381.381 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 17:27:45,434.434 INFO    ] time= 12/06/2026 17:27:45
[2026-06-12 17:27:45,456.456 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 17:27:45,462.462 INFO    ] Checking for existing commands in stream...
[2026-06-12 17:27:45,529.529 INFO    ] No existing commands found in stream
[2026-06-12 17:27:50,543.543 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 17:27:50,546.546 INFO    ] Waiting 2.89 seconds before fallback handling...
[2026-06-12 17:27:53,830.830 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 17:27:53,832.832 INFO    ] Checking for system updates...
[2026-06-12 17:27:53,853.853 INFO    ] 200
[2026-06-12 17:27:53,854.854 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:27:53,884.884 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 17:27:53,886.886 INFO    ] No update needed
[2026-06-12 17:27:53,887.887 INFO    ] Checking for camera pi updates...
[2026-06-12 17:27:53,907.907 INFO    ] 200
[2026-06-12 17:27:53,909.909 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:27:53,935.935 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 17:27:53,994.994 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 17:27:53,996.996 INFO    ] No camera update needed
[2026-06-12 17:27:53,997.997 INFO    ] Script finished. Safe exiting...
[2026-06-12 17:27:53,998.998 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 17:27:54,002.002 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 17:27:54,005.005 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 17:27:56,043.043 INFO    ] ================================================
[2026-06-12 17:27:56,058.058 INFO    ] Launching Daemon at Fri Jun 12 17:27:56 IST 2026
[2026-06-12 17:27:56,068.068 INFO    ] ================================================
[2026-06-12 17:27:56,407.407 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 17:27:56
[2026-06-12 17:27:56,716.716 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 17:27:56,851.851 INFO    ] Initializing speech engine...
[2026-06-12 17:27:56,864.864 INFO    ] 2026-06-12 17:27:56
[2026-06-12 17:27:57,079.079 INFO    ] 2026-06-12 17:27:57
[2026-06-12 17:27:57,110.110 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 17:27:57,305.305 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 17:27:57,309.309 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 17:27:57,446.446 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 17:27:57,487.487 INFO    ] time= 12/06/2026 17:27:57
[2026-06-12 17:27:57,530.530 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 17:27:57,553.553 INFO    ] Checking for existing commands in stream...
[2026-06-12 17:27:57,653.653 INFO    ] No existing commands found in stream
[2026-06-12 17:28:02,661.661 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 17:28:02,662.662 INFO    ] Waiting 3.07 seconds before fallback handling...
[2026-06-12 17:28:06,132.132 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 17:28:06,133.133 INFO    ] Checking for system updates...
[2026-06-12 17:28:06,154.154 INFO    ] 200
[2026-06-12 17:28:06,155.155 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:28:06,185.185 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 17:28:06,186.186 INFO    ] No update needed
[2026-06-12 17:28:06,188.188 INFO    ] Checking for camera pi updates...
[2026-06-12 17:28:06,207.207 INFO    ] 200
[2026-06-12 17:28:06,209.209 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:28:06,232.232 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 17:28:06,276.276 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 17:28:06,278.278 INFO    ] No camera update needed
[2026-06-12 17:28:06,279.279 INFO    ] Script finished. Safe exiting...
[2026-06-12 17:28:06,280.280 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 17:28:06,284.284 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 17:28:06,287.287 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 17:28:08,324.324 INFO    ] ================================================
[2026-06-12 17:28:08,339.339 INFO    ] Launching Daemon at Fri Jun 12 17:28:08 IST 2026
[2026-06-12 17:28:08,350.350 INFO    ] ================================================
[2026-06-12 17:28:08,697.697 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 17:28:08
[2026-06-12 17:28:09,013.013 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 17:28:09,145.145 INFO    ] Initializing speech engine...
[2026-06-12 17:28:09,158.158 INFO    ] 2026-06-12 17:28:09
[2026-06-12 17:28:09,364.364 INFO    ] 2026-06-12 17:28:09
[2026-06-12 17:28:09,393.393 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 17:28:09,576.576 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 17:28:09,585.585 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 17:28:09,706.706 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 17:28:09,762.762 INFO    ] time= 12/06/2026 17:28:09
[2026-06-12 17:28:09,795.795 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 17:28:09,806.806 INFO    ] Checking for existing commands in stream...
[2026-06-12 17:28:09,900.900 INFO    ] No existing commands found in stream
[2026-06-12 17:28:14,909.909 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 17:28:14,912.912 INFO    ] Waiting 3.53 seconds before fallback handling...
[2026-06-12 17:28:18,825.825 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 17:28:18,826.826 INFO    ] Checking for system updates...
[2026-06-12 17:28:18,846.846 INFO    ] 200
[2026-06-12 17:28:18,848.848 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:28:18,879.879 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 17:28:18,881.881 INFO    ] No update needed
[2026-06-12 17:28:18,882.882 INFO    ] Checking for camera pi updates...
[2026-06-12 17:28:18,902.902 INFO    ] 200
[2026-06-12 17:28:18,903.903 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:28:18,927.927 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 17:28:19,002.002 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 17:28:19,004.004 INFO    ] No camera update needed
[2026-06-12 17:28:19,005.005 INFO    ] Script finished. Safe exiting...
[2026-06-12 17:28:19,006.006 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 17:28:19,009.009 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 17:28:19,012.012 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 17:28:21,050.050 INFO    ] ================================================
[2026-06-12 17:28:21,065.065 INFO    ] Launching Daemon at Fri Jun 12 17:28:21 IST 2026
[2026-06-12 17:28:21,076.076 INFO    ] ================================================
[2026-06-12 17:28:21,412.412 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 17:28:21
[2026-06-12 17:28:21,723.723 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 17:28:21,865.865 INFO    ] Initializing speech engine...
[2026-06-12 17:28:21,871.871 INFO    ] 2026-06-12 17:28:21
[2026-06-12 17:28:22,075.075 INFO    ] 2026-06-12 17:28:22
[2026-06-12 17:28:22,105.105 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 17:28:22,290.290 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 17:28:22,299.299 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 17:28:22,486.486 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 17:28:22,518.518 INFO    ] time= 12/06/2026 17:28:22
[2026-06-12 17:28:22,520.520 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 17:28:22,526.526 INFO    ] Checking for existing commands in stream...
[2026-06-12 17:28:22,593.593 INFO    ] No existing commands found in stream
[2026-06-12 17:28:27,602.602 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 17:28:27,605.605 INFO    ] Waiting 3.98 seconds before fallback handling...
[2026-06-12 17:28:31,921.921 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 17:28:31,923.923 INFO    ] Checking for system updates...
[2026-06-12 17:28:31,946.946 INFO    ] 200
[2026-06-12 17:28:31,948.948 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:28:31,982.982 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 17:28:31,984.984 INFO    ] No update needed
[2026-06-12 17:28:31,985.985 INFO    ] Checking for camera pi updates...
[2026-06-12 17:28:32,007.007 INFO    ] 200
[2026-06-12 17:28:32,008.008 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:28:32,035.035 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 17:28:32,089.089 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 17:28:32,091.091 INFO    ] No camera update needed
[2026-06-12 17:28:32,093.093 INFO    ] Script finished. Safe exiting...
[2026-06-12 17:28:32,094.094 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 17:28:32,098.098 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 17:28:32,101.101 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 17:28:34,140.140 INFO    ] ================================================
[2026-06-12 17:28:34,155.155 INFO    ] Launching Daemon at Fri Jun 12 17:28:34 IST 2026
[2026-06-12 17:28:34,166.166 INFO    ] ================================================
[2026-06-12 17:28:34,525.525 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 17:28:34
[2026-06-12 17:28:34,842.842 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 17:28:34,974.974 INFO    ] Initializing speech engine...
[2026-06-12 17:28:34,982.982 INFO    ] 2026-06-12 17:28:34
[2026-06-12 17:28:35,194.194 INFO    ] 2026-06-12 17:28:35
[2026-06-12 17:28:35,223.223 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 17:28:35,406.406 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 17:28:35,415.415 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 17:28:35,543.543 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 17:28:35,605.605 INFO    ] time= 12/06/2026 17:28:35
[2026-06-12 17:28:35,638.638 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 17:28:35,640.640 INFO    ] Checking for existing commands in stream...
[2026-06-12 17:28:35,712.712 INFO    ] No existing commands found in stream
[2026-06-12 17:28:40,726.726 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 17:28:40,729.729 INFO    ] Waiting 1.00 seconds before fallback handling...
[2026-06-12 17:28:42,082.082 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 17:28:42,084.084 INFO    ] Checking for system updates...
[2026-06-12 17:28:42,104.104 INFO    ] 200
[2026-06-12 17:28:42,106.106 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:28:42,135.135 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 17:28:42,137.137 INFO    ] No update needed
[2026-06-12 17:28:42,138.138 INFO    ] Checking for camera pi updates...
[2026-06-12 17:28:42,158.158 INFO    ] 200
[2026-06-12 17:28:42,159.159 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:28:42,182.182 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 17:28:42,238.238 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 17:28:42,240.240 INFO    ] No camera update needed
[2026-06-12 17:28:42,241.241 INFO    ] Script finished. Safe exiting...
[2026-06-12 17:28:42,243.243 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 17:28:42,246.246 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 17:28:42,249.249 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 17:28:44,287.287 INFO    ] ================================================
[2026-06-12 17:28:44,302.302 INFO    ] Launching Daemon at Fri Jun 12 17:28:44 IST 2026
[2026-06-12 17:28:44,312.312 INFO    ] ================================================
[2026-06-12 17:28:44,640.640 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 17:28:44
[2026-06-12 17:28:44,951.951 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 17:28:45,082.082 INFO    ] Initializing speech engine...
[2026-06-12 17:28:45,090.090 INFO    ] 2026-06-12 17:28:45
[2026-06-12 17:28:45,305.305 INFO    ] 2026-06-12 17:28:45
[2026-06-12 17:28:45,333.333 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 17:28:45,523.523 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 17:28:45,532.532 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 17:28:45,673.673 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 17:28:45,737.737 INFO    ] time= 12/06/2026 17:28:45
[2026-06-12 17:28:45,763.763 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 17:28:45,769.769 INFO    ] Checking for existing commands in stream...
[2026-06-12 17:28:45,889.889 INFO    ] No existing commands found in stream
[2026-06-12 17:28:50,900.900 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 17:28:50,903.903 INFO    ] Waiting 1.10 seconds before fallback handling...
[2026-06-12 17:28:52,391.391 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 17:28:52,392.392 INFO    ] Checking for system updates...
[2026-06-12 17:28:52,414.414 INFO    ] 200
[2026-06-12 17:28:52,415.415 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:28:52,445.445 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 17:28:52,446.446 INFO    ] No update needed
[2026-06-12 17:28:52,447.447 INFO    ] Checking for camera pi updates...
[2026-06-12 17:28:52,469.469 INFO    ] 200
[2026-06-12 17:28:52,471.471 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:28:52,495.495 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 17:28:52,543.543 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 17:28:52,544.544 INFO    ] No camera update needed
[2026-06-12 17:28:52,545.545 INFO    ] Script finished. Safe exiting...
[2026-06-12 17:28:52,546.546 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 17:28:52,549.549 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 17:28:52,552.552 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 17:28:54,592.592 INFO    ] ================================================
[2026-06-12 17:28:54,607.607 INFO    ] Launching Daemon at Fri Jun 12 17:28:54 IST 2026
[2026-06-12 17:28:54,617.617 INFO    ] ================================================
[2026-06-12 17:28:54,958.958 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 17:28:54
[2026-06-12 17:28:55,269.269 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 17:28:55,402.402 INFO    ] Initializing speech engine...
[2026-06-12 17:28:55,410.410 INFO    ] 2026-06-12 17:28:55
[2026-06-12 17:28:55,633.633 INFO    ] 2026-06-12 17:28:55
[2026-06-12 17:28:55,663.663 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 17:28:55,857.857 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 17:28:55,861.861 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 17:28:55,998.998 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 17:28:56,049.049 INFO    ] time= 12/06/2026 17:28:56
[2026-06-12 17:28:56,094.094 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 17:28:56,105.105 INFO    ] Checking for existing commands in stream...
[2026-06-12 17:28:56,180.180 INFO    ] No existing commands found in stream
[2026-06-12 17:29:01,189.189 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 17:29:01,192.192 INFO    ] Waiting 2.37 seconds before fallback handling...
[2026-06-12 17:29:03,925.925 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 17:29:03,927.927 INFO    ] Checking for system updates...
[2026-06-12 17:29:03,948.948 INFO    ] 200
[2026-06-12 17:29:03,949.949 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:29:03,979.979 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 17:29:03,981.981 INFO    ] No update needed
[2026-06-12 17:29:03,982.982 INFO    ] Checking for camera pi updates...
[2026-06-12 17:29:04,002.002 INFO    ] 200
[2026-06-12 17:29:04,003.003 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:29:04,026.026 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 17:29:04,085.085 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 17:29:04,087.087 INFO    ] No camera update needed
[2026-06-12 17:29:04,088.088 INFO    ] Script finished. Safe exiting...
[2026-06-12 17:29:04,089.089 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 17:29:04,092.092 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 17:29:04,095.095 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 17:29:06,132.132 INFO    ] ================================================
[2026-06-12 17:29:06,147.147 INFO    ] Launching Daemon at Fri Jun 12 17:29:06 IST 2026
[2026-06-12 17:29:06,158.158 INFO    ] ================================================
[2026-06-12 17:29:06,511.511 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 17:29:06
[2026-06-12 17:29:06,826.826 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 17:29:06,958.958 INFO    ] Initializing speech engine...
[2026-06-12 17:29:06,962.962 INFO    ] 2026-06-12 17:29:06
[2026-06-12 17:29:07,178.178 INFO    ] 2026-06-12 17:29:07
[2026-06-12 17:29:07,208.208 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 17:29:07,390.390 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 17:29:07,394.394 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 17:29:07,529.529 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 17:29:07,596.596 INFO    ] time= 12/06/2026 17:29:07
[2026-06-12 17:29:07,619.619 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 17:29:07,621.621 INFO    ] Checking for existing commands in stream...
[2026-06-12 17:29:07,693.693 INFO    ] No existing commands found in stream
[2026-06-12 17:29:12,703.703 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 17:29:12,711.711 INFO    ] Waiting 1.06 seconds before fallback handling...
[2026-06-12 17:29:14,108.108 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 17:29:14,110.110 INFO    ] Checking for system updates...
[2026-06-12 17:29:14,131.131 INFO    ] 200
[2026-06-12 17:29:14,132.132 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:29:14,161.161 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 17:29:14,163.163 INFO    ] No update needed
[2026-06-12 17:29:14,164.164 INFO    ] Checking for camera pi updates...
[2026-06-12 17:29:14,185.185 INFO    ] 200
[2026-06-12 17:29:14,186.186 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:29:14,211.211 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 17:29:14,260.260 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 17:29:14,261.261 INFO    ] No camera update needed
[2026-06-12 17:29:14,262.262 INFO    ] Script finished. Safe exiting...
[2026-06-12 17:29:14,264.264 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 17:29:14,266.266 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 17:29:14,269.269 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 17:29:16,308.308 INFO    ] ================================================
[2026-06-12 17:29:16,323.323 INFO    ] Launching Daemon at Fri Jun 12 17:29:16 IST 2026
[2026-06-12 17:29:16,334.334 INFO    ] ================================================
[2026-06-12 17:29:16,668.668 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 17:29:16
[2026-06-12 17:29:16,978.978 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 17:29:17,107.107 INFO    ] Initializing speech engine...
[2026-06-12 17:29:17,115.115 INFO    ] 2026-06-12 17:29:17
[2026-06-12 17:29:17,303.303 INFO    ] 2026-06-12 17:29:17
[2026-06-12 17:29:17,336.336 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 17:29:17,481.481 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 17:29:17,519.519 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 17:29:17,680.680 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 17:29:17,742.742 INFO    ] time= 12/06/2026 17:29:17
[2026-06-12 17:29:17,773.773 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 17:29:17,775.775 INFO    ] Checking for existing commands in stream...
[2026-06-12 17:29:17,846.846 INFO    ] No existing commands found in stream
[2026-06-12 17:29:22,855.855 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 17:29:22,858.858 INFO    ] Waiting 0.72 seconds before fallback handling...
[2026-06-12 17:29:23,959.959 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 17:29:23,961.961 INFO    ] Checking for system updates...
[2026-06-12 17:29:23,982.982 INFO    ] 200
[2026-06-12 17:29:23,983.983 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:29:24,015.015 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 17:29:24,016.016 INFO    ] No update needed
[2026-06-12 17:29:24,017.017 INFO    ] Checking for camera pi updates...
[2026-06-12 17:29:24,040.040 INFO    ] 200
[2026-06-12 17:29:24,042.042 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:29:24,068.068 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 17:29:24,107.107 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 17:29:24,108.108 INFO    ] No camera update needed
[2026-06-12 17:29:24,110.110 INFO    ] Script finished. Safe exiting...
[2026-06-12 17:29:24,111.111 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 17:29:24,114.114 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 17:29:24,117.117 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 17:29:26,155.155 INFO    ] ================================================
[2026-06-12 17:29:26,171.171 INFO    ] Launching Daemon at Fri Jun 12 17:29:26 IST 2026
[2026-06-12 17:29:26,182.182 INFO    ] ================================================
[2026-06-12 17:29:26,509.509 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 17:29:26
[2026-06-12 17:29:26,821.821 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 17:29:26,958.958 INFO    ] Initializing speech engine...
[2026-06-12 17:29:26,968.968 INFO    ] 2026-06-12 17:29:26
[2026-06-12 17:29:27,171.171 INFO    ] 2026-06-12 17:29:27
[2026-06-12 17:29:27,199.199 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 17:29:27,383.383 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 17:29:27,386.386 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 17:29:27,522.522 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 17:29:27,589.589 INFO    ] time= 12/06/2026 17:29:27
[2026-06-12 17:29:27,613.613 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 17:29:27,619.619 INFO    ] Checking for existing commands in stream...
[2026-06-12 17:29:27,686.686 INFO    ] No existing commands found in stream
[2026-06-12 17:29:32,689.689 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 17:29:32,690.690 INFO    ] Waiting 1.42 seconds before fallback handling...
[2026-06-12 17:29:34,473.473 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 17:29:34,475.475 INFO    ] Checking for system updates...
[2026-06-12 17:29:34,495.495 INFO    ] 200
[2026-06-12 17:29:34,497.497 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:29:34,530.530 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 17:29:34,532.532 INFO    ] No update needed
[2026-06-12 17:29:34,533.533 INFO    ] Checking for camera pi updates...
[2026-06-12 17:29:34,552.552 INFO    ] 200
[2026-06-12 17:29:34,554.554 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:29:34,576.576 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 17:29:34,619.619 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 17:29:34,620.620 INFO    ] No camera update needed
[2026-06-12 17:29:34,622.622 INFO    ] Script finished. Safe exiting...
[2026-06-12 17:29:34,623.623 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 17:29:34,626.626 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 17:29:34,629.629 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 17:29:36,666.666 INFO    ] ================================================
[2026-06-12 17:29:36,681.681 INFO    ] Launching Daemon at Fri Jun 12 17:29:36 IST 2026
[2026-06-12 17:29:36,692.692 INFO    ] ================================================
[2026-06-12 17:29:37,026.026 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 17:29:37
[2026-06-12 17:29:37,336.336 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 17:29:37,468.468 INFO    ] Initializing speech engine...
[2026-06-12 17:29:37,482.482 INFO    ] 2026-06-12 17:29:37
[2026-06-12 17:29:37,687.687 INFO    ] 2026-06-12 17:29:37
[2026-06-12 17:29:37,716.716 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 17:29:37,902.902 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 17:29:37,905.905 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 17:29:38,035.035 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 17:29:38,096.096 INFO    ] time= 12/06/2026 17:29:38
[2026-06-12 17:29:38,126.126 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 17:29:38,137.137 INFO    ] Checking for existing commands in stream...
[2026-06-12 17:29:38,232.232 INFO    ] No existing commands found in stream
[2026-06-12 17:29:43,241.241 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 17:29:43,244.244 INFO    ] Waiting 0.65 seconds before fallback handling...
[2026-06-12 17:29:44,245.245 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 17:29:44,247.247 INFO    ] Checking for system updates...
[2026-06-12 17:29:44,268.268 INFO    ] 200
[2026-06-12 17:29:44,270.270 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:29:44,301.301 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 17:29:44,303.303 INFO    ] No update needed
[2026-06-12 17:29:44,304.304 INFO    ] Checking for camera pi updates...
[2026-06-12 17:29:44,323.323 INFO    ] 200
[2026-06-12 17:29:44,324.324 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:29:44,348.348 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 17:29:44,428.428 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 17:29:44,430.430 INFO    ] No camera update needed
[2026-06-12 17:29:44,431.431 INFO    ] Script finished. Safe exiting...
[2026-06-12 17:29:44,432.432 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 17:29:44,435.435 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 17:29:44,438.438 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 17:29:46,477.477 INFO    ] ================================================
[2026-06-12 17:29:46,492.492 INFO    ] Launching Daemon at Fri Jun 12 17:29:46 IST 2026
[2026-06-12 17:29:46,503.503 INFO    ] ================================================
[2026-06-12 17:29:46,862.862 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 17:29:46
[2026-06-12 17:29:47,195.195 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 17:29:47,346.346 INFO    ] Initializing speech engine...
[2026-06-12 17:29:47,351.351 INFO    ] 2026-06-12 17:29:47
[2026-06-12 17:29:47,560.560 INFO    ] 2026-06-12 17:29:47
[2026-06-12 17:29:47,590.590 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 17:29:47,778.778 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 17:29:47,787.787 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 17:29:47,919.919 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 17:29:47,984.984 INFO    ] time= 12/06/2026 17:29:47
[2026-06-12 17:29:48,012.012 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 17:29:48,014.014 INFO    ] Checking for existing commands in stream...
[2026-06-12 17:29:48,087.087 INFO    ] No existing commands found in stream
[2026-06-12 17:29:53,101.101 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 17:29:53,104.104 INFO    ] Waiting 2.71 seconds before fallback handling...
[2026-06-12 17:29:56,192.192 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 17:29:56,194.194 INFO    ] Checking for system updates...
[2026-06-12 17:29:56,215.215 INFO    ] 200
[2026-06-12 17:29:56,216.216 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:29:56,250.250 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 17:29:56,252.252 INFO    ] No update needed
[2026-06-12 17:29:56,253.253 INFO    ] Checking for camera pi updates...
[2026-06-12 17:29:56,272.272 INFO    ] 200
[2026-06-12 17:29:56,273.273 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:29:56,297.297 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 17:29:56,359.359 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 17:29:56,360.360 INFO    ] No camera update needed
[2026-06-12 17:29:56,361.361 INFO    ] Script finished. Safe exiting...
[2026-06-12 17:29:56,363.363 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 17:29:56,366.366 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 17:29:56,368.368 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 17:29:58,406.406 INFO    ] ================================================
[2026-06-12 17:29:58,421.421 INFO    ] Launching Daemon at Fri Jun 12 17:29:58 IST 2026
[2026-06-12 17:29:58,432.432 INFO    ] ================================================
[2026-06-12 17:29:58,787.787 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 17:29:58
[2026-06-12 17:29:59,121.121 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 17:29:59,259.259 INFO    ] Initializing speech engine...
[2026-06-12 17:29:59,272.272 INFO    ] 2026-06-12 17:29:59
[2026-06-12 17:29:59,486.486 INFO    ] 2026-06-12 17:29:59
[2026-06-12 17:29:59,514.514 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 17:29:59,697.697 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 17:29:59,707.707 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 17:29:59,846.846 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 17:29:59,910.910 INFO    ] time= 12/06/2026 17:29:59
[2026-06-12 17:29:59,943.943 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 17:29:59,945.945 INFO    ] Checking for existing commands in stream...
[2026-06-12 17:30:00,020.020 INFO    ] No existing commands found in stream
[2026-06-12 17:30:05,030.030 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 17:30:05,032.032 INFO    ] Waiting 3.46 seconds before fallback handling...
[2026-06-12 17:30:08,855.855 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 17:30:08,857.857 INFO    ] Checking for system updates...
[2026-06-12 17:30:08,878.878 INFO    ] 200
[2026-06-12 17:30:08,880.880 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:30:08,912.912 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 17:30:08,914.914 INFO    ] No update needed
[2026-06-12 17:30:08,915.915 INFO    ] Checking for camera pi updates...
[2026-06-12 17:30:08,934.934 INFO    ] 200
[2026-06-12 17:30:08,935.935 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:30:08,961.961 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 17:30:09,008.008 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 17:30:09,009.009 INFO    ] No camera update needed
[2026-06-12 17:30:09,011.011 INFO    ] Script finished. Safe exiting...
[2026-06-12 17:30:09,012.012 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 17:30:09,015.015 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 17:30:09,018.018 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 17:30:11,055.055 INFO    ] ================================================
[2026-06-12 17:30:11,071.071 INFO    ] Launching Daemon at Fri Jun 12 17:30:11 IST 2026
[2026-06-12 17:30:11,083.083 INFO    ] ================================================
[2026-06-12 17:30:11,444.444 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 17:30:11
[2026-06-12 17:30:11,764.764 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 17:30:11,921.921 INFO    ] Initializing speech engine...
[2026-06-12 17:30:11,926.926 INFO    ] 2026-06-12 17:30:11
[2026-06-12 17:30:12,130.130 INFO    ] 2026-06-12 17:30:12
[2026-06-12 17:30:12,159.159 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 17:30:12,347.347 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 17:30:12,351.351 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 17:30:12,480.480 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 17:30:12,551.551 INFO    ] time= 12/06/2026 17:30:12
[2026-06-12 17:30:12,578.578 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 17:30:12,585.585 INFO    ] Checking for existing commands in stream...
[2026-06-12 17:30:12,652.652 INFO    ] No existing commands found in stream
[2026-06-12 17:30:17,661.661 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 17:30:17,664.664 INFO    ] Waiting 0.37 seconds before fallback handling...
[2026-06-12 17:30:18,422.422 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 17:30:18,423.423 INFO    ] Checking for system updates...
[2026-06-12 17:30:18,444.444 INFO    ] 200
[2026-06-12 17:30:18,445.445 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:30:18,477.477 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 17:30:18,479.479 INFO    ] No update needed
[2026-06-12 17:30:18,480.480 INFO    ] Checking for camera pi updates...
[2026-06-12 17:30:18,500.500 INFO    ] 200
[2026-06-12 17:30:18,501.501 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:30:18,526.526 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 17:30:18,597.597 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 17:30:18,599.599 INFO    ] No camera update needed
[2026-06-12 17:30:18,600.600 INFO    ] Script finished. Safe exiting...
[2026-06-12 17:30:18,601.601 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 17:30:18,604.604 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 17:30:18,607.607 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 17:30:20,636.636 INFO    ] ================================================
[2026-06-12 17:30:20,645.645 INFO    ] Launching Daemon at Fri Jun 12 17:30:20 IST 2026
[2026-06-12 17:30:20,651.651 INFO    ] ================================================
[2026-06-12 17:30:21,061.061 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 17:30:21
[2026-06-12 17:30:21,405.405 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 17:30:21,555.555 INFO    ] Initializing speech engine...
[2026-06-12 17:30:21,561.561 INFO    ] 2026-06-12 17:30:21
[2026-06-12 17:30:21,767.767 INFO    ] 2026-06-12 17:30:21
[2026-06-12 17:30:21,796.796 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 17:30:21,980.980 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 17:30:21,983.983 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 17:30:22,125.125 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 17:30:22,199.199 INFO    ] time= 12/06/2026 17:30:22
[2026-06-12 17:30:22,225.225 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 17:30:22,231.231 INFO    ] Checking for existing commands in stream...
[2026-06-12 17:30:22,299.299 INFO    ] No existing commands found in stream
[2026-06-12 17:30:27,313.313 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 17:30:27,316.316 INFO    ] Waiting 3.50 seconds before fallback handling...
[2026-06-12 17:30:31,199.199 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 17:30:31,201.201 INFO    ] Checking for system updates...
[2026-06-12 17:30:31,222.222 INFO    ] 200
[2026-06-12 17:30:31,224.224 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:30:31,256.256 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 17:30:31,257.257 INFO    ] No update needed
[2026-06-12 17:30:31,259.259 INFO    ] Checking for camera pi updates...
[2026-06-12 17:30:31,278.278 INFO    ] 200
[2026-06-12 17:30:31,279.279 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:30:31,304.304 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 17:30:31,343.343 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 17:30:31,344.344 INFO    ] No camera update needed
[2026-06-12 17:30:31,345.345 INFO    ] Script finished. Safe exiting...
[2026-06-12 17:30:31,347.347 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 17:30:31,350.350 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 17:30:31,353.353 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 17:30:33,384.384 INFO    ] ================================================
[2026-06-12 17:30:33,400.400 INFO    ] Launching Daemon at Fri Jun 12 17:30:33 IST 2026
[2026-06-12 17:30:33,411.411 INFO    ] ================================================
[2026-06-12 17:30:33,773.773 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 17:30:33
[2026-06-12 17:30:34,089.089 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 17:30:34,234.234 INFO    ] Initializing speech engine...
[2026-06-12 17:30:34,239.239 INFO    ] 2026-06-12 17:30:34
[2026-06-12 17:30:34,443.443 INFO    ] 2026-06-12 17:30:34
[2026-06-12 17:30:34,471.471 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 17:30:34,658.658 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 17:30:34,666.666 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 17:30:34,792.792 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 17:30:34,850.850 INFO    ] time= 12/06/2026 17:30:34
[2026-06-12 17:30:34,887.887 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 17:30:34,893.893 INFO    ] Checking for existing commands in stream...
[2026-06-12 17:30:34,960.960 INFO    ] No existing commands found in stream
[2026-06-12 17:30:39,969.969 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 17:30:39,972.972 INFO    ] Waiting 1.32 seconds before fallback handling...
[2026-06-12 17:30:41,724.724 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 17:30:41,725.725 INFO    ] Checking for system updates...
[2026-06-12 17:30:41,747.747 INFO    ] 200
[2026-06-12 17:30:41,748.748 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:30:41,781.781 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 17:30:41,782.782 INFO    ] No update needed
[2026-06-12 17:30:41,784.784 INFO    ] Checking for camera pi updates...
[2026-06-12 17:30:41,806.806 INFO    ] 200
[2026-06-12 17:30:41,807.807 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:30:41,833.833 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 17:30:41,878.878 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 17:30:41,880.880 INFO    ] No camera update needed
[2026-06-12 17:30:41,881.881 INFO    ] Script finished. Safe exiting...
[2026-06-12 17:30:41,882.882 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 17:30:41,886.886 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 17:30:41,889.889 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 17:30:43,928.928 INFO    ] ================================================
[2026-06-12 17:30:43,944.944 INFO    ] Launching Daemon at Fri Jun 12 17:30:43 IST 2026
[2026-06-12 17:30:43,956.956 INFO    ] ================================================
[2026-06-12 17:30:44,313.313 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 17:30:44
[2026-06-12 17:30:44,652.652 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 17:30:44,797.797 INFO    ] Initializing speech engine...
[2026-06-12 17:30:44,807.807 INFO    ] 2026-06-12 17:30:44
[2026-06-12 17:30:45,017.017 INFO    ] 2026-06-12 17:30:44
[2026-06-12 17:30:45,047.047 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 17:30:45,236.236 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 17:30:45,246.246 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 17:30:45,369.369 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 17:30:45,420.420 INFO    ] time= 12/06/2026 17:30:45
[2026-06-12 17:30:45,467.467 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 17:30:45,471.471 INFO    ] Checking for existing commands in stream...
[2026-06-12 17:30:45,545.545 INFO    ] No existing commands found in stream
[2026-06-12 17:30:50,559.559 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 17:30:50,568.568 INFO    ] Waiting 0.14 seconds before fallback handling...
[2026-06-12 17:30:51,088.088 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 17:30:51,090.090 INFO    ] Checking for system updates...
[2026-06-12 17:30:51,110.110 INFO    ] 200
[2026-06-12 17:30:51,112.112 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:30:51,142.142 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 17:30:51,143.143 INFO    ] No update needed
[2026-06-12 17:30:51,144.144 INFO    ] Checking for camera pi updates...
[2026-06-12 17:30:51,163.163 INFO    ] 200
[2026-06-12 17:30:51,165.165 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:30:51,188.188 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 17:30:51,235.235 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 17:30:51,237.237 INFO    ] No camera update needed
[2026-06-12 17:30:51,238.238 INFO    ] Script finished. Safe exiting...
[2026-06-12 17:30:51,239.239 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 17:30:51,242.242 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 17:30:51,245.245 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 17:30:53,285.285 INFO    ] ================================================
[2026-06-12 17:30:53,300.300 INFO    ] Launching Daemon at Fri Jun 12 17:30:53 IST 2026
[2026-06-12 17:30:53,312.312 INFO    ] ================================================
[2026-06-12 17:30:53,678.678 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 17:30:53
[2026-06-12 17:30:53,990.990 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 17:30:54,123.123 INFO    ] Initializing speech engine...
[2026-06-12 17:30:54,128.128 INFO    ] 2026-06-12 17:30:54
[2026-06-12 17:30:54,358.358 INFO    ] 2026-06-12 17:30:54
[2026-06-12 17:30:54,389.389 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 17:30:54,587.587 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 17:30:54,591.591 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 17:30:54,737.737 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 17:30:54,800.800 INFO    ] time= 12/06/2026 17:30:54
[2026-06-12 17:30:54,830.830 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 17:30:54,846.846 INFO    ] Checking for existing commands in stream...
[2026-06-12 17:30:54,944.944 INFO    ] No existing commands found in stream
[2026-06-12 17:30:59,953.953 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 17:30:59,955.955 INFO    ] Waiting 0.77 seconds before fallback handling...
[2026-06-12 17:31:01,093.093 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 17:31:01,094.094 INFO    ] Checking for system updates...
[2026-06-12 17:31:01,116.116 INFO    ] 200
[2026-06-12 17:31:01,118.118 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:31:01,148.148 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 17:31:01,149.149 INFO    ] No update needed
[2026-06-12 17:31:01,151.151 INFO    ] Checking for camera pi updates...
[2026-06-12 17:31:01,171.171 INFO    ] 200
[2026-06-12 17:31:01,172.172 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:31:01,197.197 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 17:31:01,232.232 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 17:31:01,233.233 INFO    ] No camera update needed
[2026-06-12 17:31:01,235.235 INFO    ] Script finished. Safe exiting...
[2026-06-12 17:31:01,236.236 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 17:31:01,239.239 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 17:31:01,242.242 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 17:31:03,273.273 INFO    ] ================================================
[2026-06-12 17:31:03,289.289 INFO    ] Launching Daemon at Fri Jun 12 17:31:03 IST 2026
[2026-06-12 17:31:03,301.301 INFO    ] ================================================
[2026-06-12 17:31:03,662.662 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 17:31:03
[2026-06-12 17:31:03,996.996 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 17:31:04,136.136 INFO    ] Initializing speech engine...
[2026-06-12 17:31:04,148.148 INFO    ] 2026-06-12 17:31:04
[2026-06-12 17:31:04,338.338 INFO    ] 2026-06-12 17:31:04
[2026-06-12 17:31:04,371.371 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 17:31:04,517.517 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 17:31:04,579.579 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 17:31:04,718.718 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 17:31:04,782.782 INFO    ] time= 12/06/2026 17:31:04
[2026-06-12 17:31:04,809.809 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 17:31:04,815.815 INFO    ] Checking for existing commands in stream...
[2026-06-12 17:31:04,882.882 INFO    ] No existing commands found in stream
[2026-06-12 17:31:09,902.902 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 17:31:09,905.905 INFO    ] Waiting 2.52 seconds before fallback handling...
[2026-06-12 17:31:12,833.833 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 17:31:12,835.835 INFO    ] Checking for system updates...
[2026-06-12 17:31:12,856.856 INFO    ] 200
[2026-06-12 17:31:12,857.857 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:31:12,889.889 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 17:31:12,891.891 INFO    ] No update needed
[2026-06-12 17:31:12,892.892 INFO    ] Checking for camera pi updates...
[2026-06-12 17:31:12,912.912 INFO    ] 200
[2026-06-12 17:31:12,913.913 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:31:12,937.937 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 17:31:12,991.991 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 17:31:12,993.993 INFO    ] No camera update needed
[2026-06-12 17:31:12,994.994 INFO    ] Script finished. Safe exiting...
[2026-06-12 17:31:12,995.995 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 17:31:12,998.998 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 17:31:13,001.001 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 17:31:15,041.041 INFO    ] ================================================
[2026-06-12 17:31:15,056.056 INFO    ] Launching Daemon at Fri Jun 12 17:31:15 IST 2026
[2026-06-12 17:31:15,068.068 INFO    ] ================================================
[2026-06-12 17:31:15,417.417 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 17:31:15
[2026-06-12 17:31:15,732.732 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 17:31:15,863.863 INFO    ] Initializing speech engine...
[2026-06-12 17:31:15,871.871 INFO    ] 2026-06-12 17:31:15
[2026-06-12 17:31:16,086.086 INFO    ] 2026-06-12 17:31:16
[2026-06-12 17:31:16,115.115 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 17:31:16,299.299 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 17:31:16,307.307 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 17:31:16,433.433 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 17:31:16,494.494 INFO    ] time= 12/06/2026 17:31:16
[2026-06-12 17:31:16,532.532 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 17:31:16,538.538 INFO    ] Checking for existing commands in stream...
[2026-06-12 17:31:16,605.605 INFO    ] No existing commands found in stream
[2026-06-12 17:31:21,612.612 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 17:31:21,615.615 INFO    ] Waiting 3.45 seconds before fallback handling...
[2026-06-12 17:31:25,461.461 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 17:31:25,462.462 INFO    ] Checking for system updates...
[2026-06-12 17:31:25,482.482 INFO    ] 200
[2026-06-12 17:31:25,484.484 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:31:25,515.515 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 17:31:25,517.517 INFO    ] No update needed
[2026-06-12 17:31:25,518.518 INFO    ] Checking for camera pi updates...
[2026-06-12 17:31:25,537.537 INFO    ] 200
[2026-06-12 17:31:25,539.539 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:31:25,563.563 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 17:31:25,703.703 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 17:31:25,704.704 INFO    ] No camera update needed
[2026-06-12 17:31:25,706.706 INFO    ] Script finished. Safe exiting...
[2026-06-12 17:31:25,707.707 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 17:31:25,710.710 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 17:31:25,713.713 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 17:31:27,751.751 INFO    ] ================================================
[2026-06-12 17:31:27,767.767 INFO    ] Launching Daemon at Fri Jun 12 17:31:27 IST 2026
[2026-06-12 17:31:27,777.777 INFO    ] ================================================
[2026-06-12 17:31:28,118.118 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 17:31:28
[2026-06-12 17:31:28,452.452 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 17:31:28,589.589 INFO    ] Initializing speech engine...
[2026-06-12 17:31:28,592.592 INFO    ] 2026-06-12 17:31:28
[2026-06-12 17:31:28,811.811 INFO    ] 2026-06-12 17:31:28
[2026-06-12 17:31:28,842.842 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 17:31:29,025.025 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 17:31:29,034.034 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 17:31:29,178.178 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 17:31:29,237.237 INFO    ] time= 12/06/2026 17:31:29
[2026-06-12 17:31:29,253.253 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 17:31:29,259.259 INFO    ] Checking for existing commands in stream...
[2026-06-12 17:31:29,326.326 INFO    ] No existing commands found in stream
[2026-06-12 17:31:34,340.340 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 17:31:34,343.343 INFO    ] Waiting 1.67 seconds before fallback handling...
[2026-06-12 17:31:36,392.392 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 17:31:36,394.394 INFO    ] Checking for system updates...
[2026-06-12 17:31:36,415.415 INFO    ] 200
[2026-06-12 17:31:36,416.416 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:31:36,448.448 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 17:31:36,449.449 INFO    ] No update needed
[2026-06-12 17:31:36,451.451 INFO    ] Checking for camera pi updates...
[2026-06-12 17:31:36,474.474 INFO    ] 200
[2026-06-12 17:31:36,475.475 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:31:36,502.502 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 17:31:36,548.548 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 17:31:36,549.549 INFO    ] No camera update needed
[2026-06-12 17:31:36,551.551 INFO    ] Script finished. Safe exiting...
[2026-06-12 17:31:36,552.552 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 17:31:36,555.555 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 17:31:36,558.558 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 17:31:38,596.596 INFO    ] ================================================
[2026-06-12 17:31:38,612.612 INFO    ] Launching Daemon at Fri Jun 12 17:31:38 IST 2026
[2026-06-12 17:31:38,623.623 INFO    ] ================================================
[2026-06-12 17:31:38,959.959 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 17:31:38
[2026-06-12 17:31:39,272.272 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 17:31:39,402.402 INFO    ] Initializing speech engine...
[2026-06-12 17:31:39,406.406 INFO    ] 2026-06-12 17:31:39
[2026-06-12 17:31:39,624.624 INFO    ] 2026-06-12 17:31:39
[2026-06-12 17:31:39,654.654 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 17:31:39,840.840 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 17:31:39,850.850 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 17:31:39,996.996 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 17:31:40,049.049 INFO    ] time= 12/06/2026 17:31:40
[2026-06-12 17:31:40,073.073 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 17:31:40,078.078 INFO    ] Checking for existing commands in stream...
[2026-06-12 17:31:40,145.145 INFO    ] No existing commands found in stream
[2026-06-12 17:31:45,156.156 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 17:31:45,158.158 INFO    ] Waiting 0.79 seconds before fallback handling...
[2026-06-12 17:31:46,306.306 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 17:31:46,307.307 INFO    ] Checking for system updates...
[2026-06-12 17:31:46,328.328 INFO    ] 200
[2026-06-12 17:31:46,329.329 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:31:46,360.360 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 17:31:46,361.361 INFO    ] No update needed
[2026-06-12 17:31:46,362.362 INFO    ] Checking for camera pi updates...
[2026-06-12 17:31:46,382.382 INFO    ] 200
[2026-06-12 17:31:46,383.383 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:31:46,406.406 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 17:31:46,471.471 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 17:31:46,472.472 INFO    ] No camera update needed
[2026-06-12 17:31:46,474.474 INFO    ] Script finished. Safe exiting...
[2026-06-12 17:31:46,475.475 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 17:31:46,478.478 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 17:31:46,481.481 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 17:31:48,520.520 INFO    ] ================================================
[2026-06-12 17:31:48,535.535 INFO    ] Launching Daemon at Fri Jun 12 17:31:48 IST 2026
[2026-06-12 17:31:48,546.546 INFO    ] ================================================
[2026-06-12 17:31:48,914.914 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 17:31:48
[2026-06-12 17:31:49,231.231 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 17:31:49,365.365 INFO    ] Initializing speech engine...
[2026-06-12 17:31:49,377.377 INFO    ] 2026-06-12 17:31:49
[2026-06-12 17:31:49,582.582 INFO    ] 2026-06-12 17:31:49
[2026-06-12 17:31:49,611.611 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 17:31:49,748.748 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 17:31:49,797.797 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 17:31:49,926.926 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 17:31:49,982.982 INFO    ] time= 12/06/2026 17:31:49
[2026-06-12 17:31:50,021.021 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 17:31:50,026.026 INFO    ] Checking for existing commands in stream...
[2026-06-12 17:31:50,096.096 INFO    ] No existing commands found in stream
[2026-06-12 17:31:55,106.106 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 17:31:55,109.109 INFO    ] Waiting 0.91 seconds before fallback handling...
[2026-06-12 17:31:56,816.816 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 17:31:56,818.818 INFO    ] Checking for system updates...
[2026-06-12 17:31:56,841.841 INFO    ] 200
[2026-06-12 17:31:56,844.844 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:31:56,897.897 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 17:31:56,900.900 INFO    ] No update needed
[2026-06-12 17:31:56,903.903 INFO    ] Checking for camera pi updates...
[2026-06-12 17:31:56,940.940 INFO    ] 200
[2026-06-12 17:31:56,941.941 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:31:56,968.968 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 17:31:57,009.009 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 17:31:57,011.011 INFO    ] No camera update needed
[2026-06-12 17:31:57,012.012 INFO    ] Script finished. Safe exiting...
[2026-06-12 17:31:57,013.013 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 17:31:57,016.016 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 17:31:57,019.019 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 17:31:59,058.058 INFO    ] ================================================
[2026-06-12 17:31:59,073.073 INFO    ] Launching Daemon at Fri Jun 12 17:31:59 IST 2026
[2026-06-12 17:31:59,084.084 INFO    ] ================================================
[2026-06-12 17:31:59,420.420 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 17:31:59
[2026-06-12 17:31:59,737.737 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 17:31:59,880.880 INFO    ] Initializing speech engine...
[2026-06-12 17:31:59,885.885 INFO    ] 2026-06-12 17:31:59
[2026-06-12 17:32:00,090.090 INFO    ] 2026-06-12 17:32:00
[2026-06-12 17:32:00,119.119 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 17:32:00,302.302 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 17:32:00,306.306 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 17:32:00,447.447 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 17:32:00,508.508 INFO    ] time= 12/06/2026 17:32:00
[2026-06-12 17:32:00,532.532 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 17:32:00,539.539 INFO    ] Checking for existing commands in stream...
[2026-06-12 17:32:00,604.604 INFO    ] No existing commands found in stream
[2026-06-12 17:32:05,613.613 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 17:32:05,615.615 INFO    ] Waiting 2.98 seconds before fallback handling...
[2026-06-12 17:32:08,988.988 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 17:32:08,989.989 INFO    ] Checking for system updates...
[2026-06-12 17:32:09,011.011 INFO    ] 200
[2026-06-12 17:32:09,013.013 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:32:09,045.045 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 17:32:09,046.046 INFO    ] No update needed
[2026-06-12 17:32:09,047.047 INFO    ] Checking for camera pi updates...
[2026-06-12 17:32:09,067.067 INFO    ] 200
[2026-06-12 17:32:09,068.068 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:32:09,093.093 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 17:32:09,135.135 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 17:32:09,136.136 INFO    ] No camera update needed
[2026-06-12 17:32:09,138.138 INFO    ] Script finished. Safe exiting...
[2026-06-12 17:32:09,139.139 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 17:32:09,142.142 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 17:32:09,145.145 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 17:32:11,183.183 INFO    ] ================================================
[2026-06-12 17:32:11,198.198 INFO    ] Launching Daemon at Fri Jun 12 17:32:11 IST 2026
[2026-06-12 17:32:11,209.209 INFO    ] ================================================
[2026-06-12 17:32:11,550.550 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 17:32:11
[2026-06-12 17:32:11,863.863 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 17:32:11,993.993 INFO    ] Initializing speech engine...
[2026-06-12 17:32:12,001.001 INFO    ] 2026-06-12 17:32:11
[2026-06-12 17:32:12,214.214 INFO    ] 2026-06-12 17:32:12
[2026-06-12 17:32:12,243.243 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 17:32:12,426.426 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 17:32:12,430.430 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 17:32:12,558.558 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 17:32:12,619.619 INFO    ] time= 12/06/2026 17:32:12
[2026-06-12 17:32:12,653.653 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 17:32:12,658.658 INFO    ] Checking for existing commands in stream...
[2026-06-12 17:32:12,730.730 INFO    ] No existing commands found in stream
[2026-06-12 17:32:17,744.744 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 17:32:17,747.747 INFO    ] Waiting 1.41 seconds before fallback handling...
[2026-06-12 17:32:19,556.556 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 17:32:19,558.558 INFO    ] Checking for system updates...
[2026-06-12 17:32:19,579.579 INFO    ] 200
[2026-06-12 17:32:19,580.580 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:32:19,610.610 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 17:32:19,611.611 INFO    ] No update needed
[2026-06-12 17:32:19,612.612 INFO    ] Checking for camera pi updates...
[2026-06-12 17:32:19,634.634 INFO    ] 200
[2026-06-12 17:32:19,635.635 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:32:19,660.660 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 17:32:19,704.704 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 17:32:19,705.705 INFO    ] No camera update needed
[2026-06-12 17:32:19,706.706 INFO    ] Script finished. Safe exiting...
[2026-06-12 17:32:19,708.708 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 17:32:19,711.711 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 17:32:19,713.713 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 17:32:21,752.752 INFO    ] ================================================
[2026-06-12 17:32:21,767.767 INFO    ] Launching Daemon at Fri Jun 12 17:32:21 IST 2026
[2026-06-12 17:32:21,777.777 INFO    ] ================================================
[2026-06-12 17:32:22,136.136 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 17:32:22
[2026-06-12 17:32:22,448.448 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 17:32:22,590.590 INFO    ] Initializing speech engine...
[2026-06-12 17:32:22,595.595 INFO    ] 2026-06-12 17:32:22
[2026-06-12 17:32:22,799.799 INFO    ] 2026-06-12 17:32:22
[2026-06-12 17:32:22,831.831 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 17:32:22,954.954 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 17:32:23,017.017 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 17:32:23,154.154 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 17:32:23,218.218 INFO    ] time= 12/06/2026 17:32:23
[2026-06-12 17:32:23,245.245 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 17:32:23,251.251 INFO    ] Checking for existing commands in stream...
[2026-06-12 17:32:23,318.318 INFO    ] No existing commands found in stream
[2026-06-12 17:32:28,327.327 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 17:32:28,330.330 INFO    ] Waiting 0.14 seconds before fallback handling...
[2026-06-12 17:32:28,815.815 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 17:32:28,817.817 INFO    ] Checking for system updates...
[2026-06-12 17:32:28,838.838 INFO    ] 200
[2026-06-12 17:32:28,839.839 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:32:28,872.872 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 17:32:28,873.873 INFO    ] No update needed
[2026-06-12 17:32:28,875.875 INFO    ] Checking for camera pi updates...
[2026-06-12 17:32:28,894.894 INFO    ] 200
[2026-06-12 17:32:28,895.895 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:32:28,920.920 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 17:32:28,958.958 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 17:32:28,959.959 INFO    ] No camera update needed
[2026-06-12 17:32:28,961.961 INFO    ] Script finished. Safe exiting...
[2026-06-12 17:32:28,962.962 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 17:32:28,965.965 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 17:32:28,968.968 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 17:32:31,007.007 INFO    ] ================================================
[2026-06-12 17:32:31,022.022 INFO    ] Launching Daemon at Fri Jun 12 17:32:31 IST 2026
[2026-06-12 17:32:31,032.032 INFO    ] ================================================
[2026-06-12 17:32:31,393.393 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 17:32:31
[2026-06-12 17:32:31,722.722 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 17:32:31,865.865 INFO    ] Initializing speech engine...
[2026-06-12 17:32:31,873.873 INFO    ] 2026-06-12 17:32:31
[2026-06-12 17:32:32,111.111 INFO    ] 2026-06-12 17:32:32
[2026-06-12 17:32:32,146.146 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 17:32:32,346.346 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 17:32:32,350.350 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 17:32:32,492.492 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 17:32:32,550.550 INFO    ] time= 12/06/2026 17:32:32
[2026-06-12 17:32:32,589.589 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 17:32:32,596.596 INFO    ] Checking for existing commands in stream...
[2026-06-12 17:32:32,662.662 INFO    ] No existing commands found in stream
[2026-06-12 17:32:37,673.673 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 17:32:37,675.675 INFO    ] Waiting 2.85 seconds before fallback handling...
[2026-06-12 17:32:40,902.902 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 17:32:40,904.904 INFO    ] Checking for system updates...
[2026-06-12 17:32:40,924.924 INFO    ] 200
[2026-06-12 17:32:40,925.925 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:32:40,960.960 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 17:32:40,961.961 INFO    ] No update needed
[2026-06-12 17:32:40,963.963 INFO    ] Checking for camera pi updates...
[2026-06-12 17:32:40,983.983 INFO    ] 200
[2026-06-12 17:32:40,984.984 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:32:41,007.007 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 17:32:41,058.058 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 17:32:41,060.060 INFO    ] No camera update needed
[2026-06-12 17:32:41,061.061 INFO    ] Script finished. Safe exiting...
[2026-06-12 17:32:41,062.062 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 17:32:41,065.065 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 17:32:41,068.068 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 17:32:43,106.106 INFO    ] ================================================
[2026-06-12 17:32:43,121.121 INFO    ] Launching Daemon at Fri Jun 12 17:32:43 IST 2026
[2026-06-12 17:32:43,132.132 INFO    ] ================================================
[2026-06-12 17:32:43,507.507 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 17:32:43
[2026-06-12 17:32:43,844.844 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 17:32:43,996.996 INFO    ] Initializing speech engine...
[2026-06-12 17:32:44,002.002 INFO    ] 2026-06-12 17:32:43
[2026-06-12 17:32:44,211.211 INFO    ] 2026-06-12 17:32:44
[2026-06-12 17:32:44,241.241 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 17:32:44,428.428 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 17:32:44,438.438 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 17:32:44,568.568 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 17:32:44,632.632 INFO    ] time= 12/06/2026 17:32:44
[2026-06-12 17:32:44,661.661 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 17:32:44,668.668 INFO    ] Checking for existing commands in stream...
[2026-06-12 17:32:44,735.735 INFO    ] No existing commands found in stream
[2026-06-12 17:32:49,748.748 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 17:32:49,750.750 INFO    ] Waiting 0.21 seconds before fallback handling...
[2026-06-12 17:32:50,272.272 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 17:32:50,274.274 INFO    ] Checking for system updates...
[2026-06-12 17:32:50,298.298 INFO    ] 200
[2026-06-12 17:32:50,299.299 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:32:50,333.333 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 17:32:50,334.334 INFO    ] No update needed
[2026-06-12 17:32:50,336.336 INFO    ] Checking for camera pi updates...
[2026-06-12 17:32:50,364.364 INFO    ] 200
[2026-06-12 17:32:50,366.366 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:32:50,395.395 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 17:32:50,437.437 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 17:32:50,439.439 INFO    ] No camera update needed
[2026-06-12 17:32:50,441.441 INFO    ] Script finished. Safe exiting...
[2026-06-12 17:32:50,443.443 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 17:32:50,447.447 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 17:32:50,451.451 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 17:32:52,475.475 INFO    ] ================================================
[2026-06-12 17:32:52,483.483 INFO    ] Launching Daemon at Fri Jun 12 17:32:52 IST 2026
[2026-06-12 17:32:52,489.489 INFO    ] ================================================
[2026-06-12 17:32:52,812.812 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 17:32:52
[2026-06-12 17:32:53,132.132 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 17:32:53,264.264 INFO    ] Initializing speech engine...
[2026-06-12 17:32:53,267.267 INFO    ] 2026-06-12 17:32:53
[2026-06-12 17:32:53,486.486 INFO    ] 2026-06-12 17:32:53
[2026-06-12 17:32:53,515.515 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 17:32:53,638.638 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 17:32:53,700.700 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 17:32:53,841.841 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 17:32:53,908.908 INFO    ] time= 12/06/2026 17:32:53
[2026-06-12 17:32:53,932.932 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 17:32:53,939.939 INFO    ] Checking for existing commands in stream...
[2026-06-12 17:32:54,006.006 INFO    ] No existing commands found in stream
[2026-06-12 17:32:59,019.019 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 17:32:59,020.020 INFO    ] Waiting 0.31 seconds before fallback handling...
[2026-06-12 17:32:59,715.715 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 17:32:59,716.716 INFO    ] Checking for system updates...
[2026-06-12 17:32:59,738.738 INFO    ] 200
[2026-06-12 17:32:59,739.739 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:32:59,769.769 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 17:32:59,771.771 INFO    ] No update needed
[2026-06-12 17:32:59,772.772 INFO    ] Checking for camera pi updates...
[2026-06-12 17:32:59,793.793 INFO    ] 200
[2026-06-12 17:32:59,794.794 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:32:59,819.819 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 17:32:59,862.862 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 17:32:59,863.863 INFO    ] No camera update needed
[2026-06-12 17:32:59,864.864 INFO    ] Script finished. Safe exiting...
[2026-06-12 17:32:59,865.865 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 17:32:59,868.868 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 17:32:59,871.871 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 17:33:01,906.906 INFO    ] ================================================
[2026-06-12 17:33:01,923.923 INFO    ] Launching Daemon at Fri Jun 12 17:33:01 IST 2026
[2026-06-12 17:33:01,945.945 INFO    ] ================================================
[2026-06-12 17:33:02,349.349 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 17:33:02
[2026-06-12 17:33:02,755.755 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 17:33:02,920.920 INFO    ] Initializing speech engine...
[2026-06-12 17:33:02,925.925 INFO    ] 2026-06-12 17:33:02
[2026-06-12 17:33:03,133.133 INFO    ] 2026-06-12 17:33:03
[2026-06-12 17:33:03,161.161 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 17:33:03,344.344 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 17:33:03,348.348 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 17:33:03,507.507 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 17:33:03,557.557 INFO    ] time= 12/06/2026 17:33:03
[2026-06-12 17:33:03,579.579 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 17:33:03,586.586 INFO    ] Checking for existing commands in stream...
[2026-06-12 17:33:03,654.654 INFO    ] No existing commands found in stream
[2026-06-12 17:33:08,679.679 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 17:33:08,682.682 INFO    ] Waiting 1.35 seconds before fallback handling...
[2026-06-12 17:33:10,413.413 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 17:33:10,415.415 INFO    ] Checking for system updates...
[2026-06-12 17:33:10,435.435 INFO    ] 200
[2026-06-12 17:33:10,437.437 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:33:10,469.469 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 17:33:10,470.470 INFO    ] No update needed
[2026-06-12 17:33:10,472.472 INFO    ] Checking for camera pi updates...
[2026-06-12 17:33:10,492.492 INFO    ] 200
[2026-06-12 17:33:10,494.494 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:33:10,517.517 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 17:33:10,603.603 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 17:33:10,605.605 INFO    ] No camera update needed
[2026-06-12 17:33:10,606.606 INFO    ] Script finished. Safe exiting...
[2026-06-12 17:33:10,608.608 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 17:33:10,611.611 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 17:33:10,614.614 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 17:33:12,656.656 INFO    ] ================================================
[2026-06-12 17:33:12,671.671 INFO    ] Launching Daemon at Fri Jun 12 17:33:12 IST 2026
[2026-06-12 17:33:12,681.681 INFO    ] ================================================
[2026-06-12 17:33:13,050.050 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 17:33:13
[2026-06-12 17:33:13,369.369 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 17:33:13,514.514 INFO    ] Initializing speech engine...
[2026-06-12 17:33:13,519.519 INFO    ] 2026-06-12 17:33:13
[2026-06-12 17:33:13,725.725 INFO    ] 2026-06-12 17:33:13
[2026-06-12 17:33:13,753.753 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 17:33:13,936.936 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 17:33:13,946.946 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 17:33:14,076.076 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 17:33:14,143.143 INFO    ] time= 12/06/2026 17:33:14
[2026-06-12 17:33:14,167.167 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 17:33:14,174.174 INFO    ] Checking for existing commands in stream...
[2026-06-12 17:33:14,241.241 INFO    ] No existing commands found in stream
[2026-06-12 17:33:19,250.250 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 17:33:19,253.253 INFO    ] Waiting 3.64 seconds before fallback handling...
[2026-06-12 17:33:23,280.280 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 17:33:23,282.282 INFO    ] Checking for system updates...
[2026-06-12 17:33:23,303.303 INFO    ] 200
[2026-06-12 17:33:23,304.304 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:33:23,336.336 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 17:33:23,338.338 INFO    ] No update needed
[2026-06-12 17:33:23,339.339 INFO    ] Checking for camera pi updates...
[2026-06-12 17:33:23,358.358 INFO    ] 200
[2026-06-12 17:33:23,359.359 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:33:23,382.382 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 17:33:23,436.436 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 17:33:23,437.437 INFO    ] No camera update needed
[2026-06-12 17:33:23,438.438 INFO    ] Script finished. Safe exiting...
[2026-06-12 17:33:23,440.440 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 17:33:23,443.443 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 17:33:23,446.446 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 17:33:25,485.485 INFO    ] ================================================
[2026-06-12 17:33:25,500.500 INFO    ] Launching Daemon at Fri Jun 12 17:33:25 IST 2026
[2026-06-12 17:33:25,511.511 INFO    ] ================================================
[2026-06-12 17:33:25,858.858 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 17:33:25
[2026-06-12 17:33:26,171.171 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 17:33:26,312.312 INFO    ] Initializing speech engine...
[2026-06-12 17:33:26,320.320 INFO    ] 2026-06-12 17:33:26
[2026-06-12 17:33:26,538.538 INFO    ] 2026-06-12 17:33:26
[2026-06-12 17:33:26,569.569 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 17:33:26,704.704 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 17:33:26,767.767 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 17:33:26,915.915 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 17:33:26,967.967 INFO    ] time= 12/06/2026 17:33:26
[2026-06-12 17:33:27,000.000 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 17:33:27,025.025 INFO    ] Checking for existing commands in stream...
[2026-06-12 17:33:27,101.101 INFO    ] No existing commands found in stream
[2026-06-12 17:33:32,109.109 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 17:33:32,111.111 INFO    ] Waiting 2.55 seconds before fallback handling...
[2026-06-12 17:33:35,035.035 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 17:33:35,037.037 INFO    ] Checking for system updates...
[2026-06-12 17:33:35,058.058 INFO    ] 200
[2026-06-12 17:33:35,059.059 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:33:35,092.092 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 17:33:35,094.094 INFO    ] No update needed
[2026-06-12 17:33:35,095.095 INFO    ] Checking for camera pi updates...
[2026-06-12 17:33:35,118.118 INFO    ] 200
[2026-06-12 17:33:35,120.120 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:33:35,145.145 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 17:33:35,195.195 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 17:33:35,196.196 INFO    ] No camera update needed
[2026-06-12 17:33:35,197.197 INFO    ] Script finished. Safe exiting...
[2026-06-12 17:33:35,199.199 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 17:33:35,202.202 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 17:33:35,205.205 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 17:33:37,243.243 INFO    ] ================================================
[2026-06-12 17:33:37,258.258 INFO    ] Launching Daemon at Fri Jun 12 17:33:37 IST 2026
[2026-06-12 17:33:37,269.269 INFO    ] ================================================
[2026-06-12 17:33:37,613.613 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 17:33:37
[2026-06-12 17:33:37,926.926 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 17:33:38,058.058 INFO    ] Initializing speech engine...
[2026-06-12 17:33:38,063.063 INFO    ] 2026-06-12 17:33:38
[2026-06-12 17:33:38,292.292 INFO    ] 2026-06-12 17:33:38
[2026-06-12 17:33:38,322.322 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 17:33:38,517.517 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 17:33:38,521.521 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 17:33:38,667.667 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 17:33:38,726.726 INFO    ] time= 12/06/2026 17:33:38
[2026-06-12 17:33:38,755.755 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 17:33:38,766.766 INFO    ] Checking for existing commands in stream...
[2026-06-12 17:33:38,841.841 INFO    ] No existing commands found in stream
[2026-06-12 17:33:43,852.852 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 17:33:43,854.854 INFO    ] Waiting 0.02 seconds before fallback handling...
[2026-06-12 17:33:44,222.222 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 17:33:44,224.224 INFO    ] Checking for system updates...
[2026-06-12 17:33:44,245.245 INFO    ] 200
[2026-06-12 17:33:44,247.247 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:33:44,279.279 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 17:33:44,281.281 INFO    ] No update needed
[2026-06-12 17:33:44,282.282 INFO    ] Checking for camera pi updates...
[2026-06-12 17:33:44,303.303 INFO    ] 200
[2026-06-12 17:33:44,304.304 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:33:44,327.327 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 17:33:44,366.366 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 17:33:44,368.368 INFO    ] No camera update needed
[2026-06-12 17:33:44,369.369 INFO    ] Script finished. Safe exiting...
[2026-06-12 17:33:44,371.371 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 17:33:44,374.374 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 17:33:44,377.377 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 17:33:46,416.416 INFO    ] ================================================
[2026-06-12 17:33:46,431.431 INFO    ] Launching Daemon at Fri Jun 12 17:33:46 IST 2026
[2026-06-12 17:33:46,442.442 INFO    ] ================================================
[2026-06-12 17:33:46,828.828 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 17:33:46
[2026-06-12 17:33:47,165.165 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 17:33:47,314.314 INFO    ] Initializing speech engine...
[2026-06-12 17:33:47,320.320 INFO    ] 2026-06-12 17:33:47
[2026-06-12 17:33:47,527.527 INFO    ] 2026-06-12 17:33:47
[2026-06-12 17:33:47,556.556 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 17:33:47,740.740 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 17:33:47,750.750 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 17:33:47,895.895 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 17:33:47,948.948 INFO    ] time= 12/06/2026 17:33:47
[2026-06-12 17:33:47,972.972 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 17:33:47,978.978 INFO    ] Checking for existing commands in stream...
[2026-06-12 17:33:48,045.045 INFO    ] No existing commands found in stream
[2026-06-12 17:33:53,059.059 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 17:33:53,063.063 INFO    ] Waiting 0.33 seconds before fallback handling...
[2026-06-12 17:33:53,752.752 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 17:33:53,754.754 INFO    ] Checking for system updates...
[2026-06-12 17:33:53,774.774 INFO    ] 200
[2026-06-12 17:33:53,776.776 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:33:53,809.809 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 17:33:53,810.810 INFO    ] No update needed
[2026-06-12 17:33:53,812.812 INFO    ] Checking for camera pi updates...
[2026-06-12 17:33:53,834.834 INFO    ] 200
[2026-06-12 17:33:53,836.836 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:33:53,862.862 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 17:33:53,900.900 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 17:33:53,902.902 INFO    ] No camera update needed
[2026-06-12 17:33:53,903.903 INFO    ] Script finished. Safe exiting...
[2026-06-12 17:33:53,904.904 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 17:33:53,907.907 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 17:33:53,911.911 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 17:33:55,955.955 INFO    ] ================================================
[2026-06-12 17:33:55,970.970 INFO    ] Launching Daemon at Fri Jun 12 17:33:55 IST 2026
[2026-06-12 17:33:55,981.981 INFO    ] ================================================
[2026-06-12 17:33:56,333.333 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 17:33:56
[2026-06-12 17:33:56,644.644 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 17:33:56,787.787 INFO    ] Initializing speech engine...
[2026-06-12 17:33:56,792.792 INFO    ] 2026-06-12 17:33:56
[2026-06-12 17:33:56,998.998 INFO    ] 2026-06-12 17:33:56
[2026-06-12 17:33:57,027.027 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 17:33:57,164.164 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 17:33:57,211.211 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 17:33:57,359.359 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 17:33:57,417.417 INFO    ] time= 12/06/2026 17:33:57
[2026-06-12 17:33:57,440.440 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 17:33:57,446.446 INFO    ] Checking for existing commands in stream...
[2026-06-12 17:33:57,512.512 INFO    ] No existing commands found in stream
[2026-06-12 17:34:02,521.521 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 17:34:02,524.524 INFO    ] Waiting 2.38 seconds before fallback handling...
[2026-06-12 17:34:05,282.282 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 17:34:05,283.283 INFO    ] Checking for system updates...
[2026-06-12 17:34:05,305.305 INFO    ] 200
[2026-06-12 17:34:05,306.306 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:34:05,338.338 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 17:34:05,339.339 INFO    ] No update needed
[2026-06-12 17:34:05,340.340 INFO    ] Checking for camera pi updates...
[2026-06-12 17:34:05,359.359 INFO    ] 200
[2026-06-12 17:34:05,361.361 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:34:05,385.385 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 17:34:05,427.427 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 17:34:05,429.429 INFO    ] No camera update needed
[2026-06-12 17:34:05,430.430 INFO    ] Script finished. Safe exiting...
[2026-06-12 17:34:05,431.431 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 17:34:05,434.434 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 17:34:05,437.437 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 17:34:07,470.470 INFO    ] ================================================
[2026-06-12 17:34:07,480.480 INFO    ] Launching Daemon at Fri Jun 12 17:34:07 IST 2026
[2026-06-12 17:34:07,487.487 INFO    ] ================================================
[2026-06-12 17:34:07,818.818 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 17:34:07
[2026-06-12 17:34:08,145.145 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 17:34:08,327.327 INFO    ] Initializing speech engine...
[2026-06-12 17:34:08,334.334 INFO    ] 2026-06-12 17:34:08
[2026-06-12 17:34:08,533.533 INFO    ] 2026-06-12 17:34:08
[2026-06-12 17:34:08,562.562 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 17:34:08,746.746 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 17:34:08,756.756 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 17:34:08,884.884 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 17:34:08,950.950 INFO    ] time= 12/06/2026 17:34:08
[2026-06-12 17:34:08,974.974 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 17:34:08,981.981 INFO    ] Checking for existing commands in stream...
[2026-06-12 17:34:09,048.048 INFO    ] No existing commands found in stream
[2026-06-12 17:34:14,062.062 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 17:34:14,070.070 INFO    ] Waiting 0.07 seconds before fallback handling...
[2026-06-12 17:34:14,479.479 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 17:34:14,481.481 INFO    ] Checking for system updates...
[2026-06-12 17:34:14,501.501 INFO    ] 200
[2026-06-12 17:34:14,502.502 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:34:14,532.532 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 17:34:14,534.534 INFO    ] No update needed
[2026-06-12 17:34:14,535.535 INFO    ] Checking for camera pi updates...
[2026-06-12 17:34:14,554.554 INFO    ] 200
[2026-06-12 17:34:14,555.555 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:34:14,579.579 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 17:34:14,622.622 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 17:34:14,623.623 INFO    ] No camera update needed
[2026-06-12 17:34:14,624.624 INFO    ] Script finished. Safe exiting...
[2026-06-12 17:34:14,626.626 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 17:34:14,628.628 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 17:34:14,631.631 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 17:34:16,669.669 INFO    ] ================================================
[2026-06-12 17:34:16,685.685 INFO    ] Launching Daemon at Fri Jun 12 17:34:16 IST 2026
[2026-06-12 17:34:16,695.695 INFO    ] ================================================
[2026-06-12 17:34:17,028.028 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 17:34:17
[2026-06-12 17:34:17,344.344 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 17:34:17,488.488 INFO    ] Initializing speech engine...
[2026-06-12 17:34:17,494.494 INFO    ] 2026-06-12 17:34:17
[2026-06-12 17:34:17,698.698 INFO    ] 2026-06-12 17:34:17
[2026-06-12 17:34:17,726.726 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 17:34:17,910.910 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 17:34:17,919.919 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 17:34:18,048.048 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 17:34:18,112.112 INFO    ] time= 12/06/2026 17:34:18
[2026-06-12 17:34:18,140.140 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 17:34:18,146.146 INFO    ] Checking for existing commands in stream...
[2026-06-12 17:34:18,213.213 INFO    ] No existing commands found in stream
[2026-06-12 17:34:23,227.227 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 17:34:23,230.230 INFO    ] Waiting 0.33 seconds before fallback handling...
[2026-06-12 17:34:23,933.933 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 17:34:23,934.934 INFO    ] Checking for system updates...
[2026-06-12 17:34:23,955.955 INFO    ] 200
[2026-06-12 17:34:23,956.956 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:34:23,986.986 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 17:34:23,987.987 INFO    ] No update needed
[2026-06-12 17:34:23,989.989 INFO    ] Checking for camera pi updates...
[2026-06-12 17:34:24,013.013 INFO    ] 200
[2026-06-12 17:34:24,014.014 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:34:24,037.037 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 17:34:24,085.085 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 17:34:24,087.087 INFO    ] No camera update needed
[2026-06-12 17:34:24,088.088 INFO    ] Script finished. Safe exiting...
[2026-06-12 17:34:24,090.090 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 17:34:24,093.093 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 17:34:24,096.096 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 17:34:26,136.136 INFO    ] ================================================
[2026-06-12 17:34:26,151.151 INFO    ] Launching Daemon at Fri Jun 12 17:34:26 IST 2026
[2026-06-12 17:34:26,162.162 INFO    ] ================================================
[2026-06-12 17:34:26,519.519 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 17:34:26
[2026-06-12 17:34:26,832.832 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 17:34:26,966.966 INFO    ] Initializing speech engine...
[2026-06-12 17:34:26,974.974 INFO    ] 2026-06-12 17:34:26
[2026-06-12 17:34:27,200.200 INFO    ] 2026-06-12 17:34:27
[2026-06-12 17:34:27,230.230 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 17:34:27,426.426 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 17:34:27,435.435 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 17:34:27,574.574 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 17:34:27,643.643 INFO    ] time= 12/06/2026 17:34:27
[2026-06-12 17:34:27,672.672 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 17:34:27,678.678 INFO    ] Checking for existing commands in stream...
[2026-06-12 17:34:27,749.749 INFO    ] No existing commands found in stream
[2026-06-12 17:34:32,757.757 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 17:34:32,759.759 INFO    ] Waiting 0.58 seconds before fallback handling...
[2026-06-12 17:34:33,718.718 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 17:34:33,720.720 INFO    ] Checking for system updates...
[2026-06-12 17:34:33,740.740 INFO    ] 200
[2026-06-12 17:34:33,742.742 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:34:33,772.772 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 17:34:33,773.773 INFO    ] No update needed
[2026-06-12 17:34:33,774.774 INFO    ] Checking for camera pi updates...
[2026-06-12 17:34:33,795.795 INFO    ] 200
[2026-06-12 17:34:33,796.796 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:34:33,821.821 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 17:34:33,863.863 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 17:34:33,865.865 INFO    ] No camera update needed
[2026-06-12 17:34:33,866.866 INFO    ] Script finished. Safe exiting...
[2026-06-12 17:34:33,868.868 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 17:34:33,871.871 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 17:34:33,874.874 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 17:34:35,912.912 INFO    ] ================================================
[2026-06-12 17:34:35,927.927 INFO    ] Launching Daemon at Fri Jun 12 17:34:35 IST 2026
[2026-06-12 17:34:35,937.937 INFO    ] ================================================
[2026-06-12 17:34:36,265.265 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 17:34:36
[2026-06-12 17:34:36,577.577 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 17:34:36,720.720 INFO    ] Initializing speech engine...
[2026-06-12 17:34:36,725.725 INFO    ] 2026-06-12 17:34:36
[2026-06-12 17:34:36,929.929 INFO    ] 2026-06-12 17:34:36
[2026-06-12 17:34:36,958.958 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 17:34:37,144.144 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 17:34:37,147.147 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 17:34:37,271.271 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 17:34:37,273.273 INFO    ] time= 12/06/2026 17:34:37
[2026-06-12 17:34:37,274.274 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 17:34:37,275.275 INFO    ] Checking for existing commands in stream...
[2026-06-12 17:34:37,341.341 INFO    ] No existing commands found in stream
[2026-06-12 17:34:42,349.349 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 17:34:42,352.352 INFO    ] Waiting 2.60 seconds before fallback handling...
[2026-06-12 17:34:45,302.302 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 17:34:45,304.304 INFO    ] Checking for system updates...
[2026-06-12 17:34:45,324.324 INFO    ] 200
[2026-06-12 17:34:45,326.326 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:34:45,358.358 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 17:34:45,359.359 INFO    ] No update needed
[2026-06-12 17:34:45,361.361 INFO    ] Checking for camera pi updates...
[2026-06-12 17:34:45,380.380 INFO    ] 200
[2026-06-12 17:34:45,381.381 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:34:45,404.404 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 17:34:45,455.455 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 17:34:45,456.456 INFO    ] No camera update needed
[2026-06-12 17:34:45,458.458 INFO    ] Script finished. Safe exiting...
[2026-06-12 17:34:45,459.459 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 17:34:45,462.462 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 17:34:45,465.465 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 17:34:47,504.504 INFO    ] ================================================
[2026-06-12 17:34:47,519.519 INFO    ] Launching Daemon at Fri Jun 12 17:34:47 IST 2026
[2026-06-12 17:34:47,530.530 INFO    ] ================================================
[2026-06-12 17:34:47,905.905 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 17:34:47
[2026-06-12 17:34:48,223.223 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 17:34:48,364.364 INFO    ] Initializing speech engine...
[2026-06-12 17:34:48,373.373 INFO    ] 2026-06-12 17:34:48
[2026-06-12 17:34:48,588.588 INFO    ] 2026-06-12 17:34:48
[2026-06-12 17:34:48,618.618 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 17:34:48,741.741 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 17:34:48,805.805 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 17:34:48,954.954 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 17:34:49,012.012 INFO    ] time= 12/06/2026 17:34:48
[2026-06-12 17:34:49,036.036 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 17:34:49,042.042 INFO    ] Checking for existing commands in stream...
[2026-06-12 17:34:49,109.109 INFO    ] No existing commands found in stream
[2026-06-12 17:34:54,124.124 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 17:34:54,127.127 INFO    ] Waiting 1.03 seconds before fallback handling...
[2026-06-12 17:34:55,522.522 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 17:34:55,523.523 INFO    ] Checking for system updates...
[2026-06-12 17:34:55,543.543 INFO    ] 200
[2026-06-12 17:34:55,545.545 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:34:55,575.575 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 17:34:55,576.576 INFO    ] No update needed
[2026-06-12 17:34:55,577.577 INFO    ] Checking for camera pi updates...
[2026-06-12 17:34:55,597.597 INFO    ] 200
[2026-06-12 17:34:55,598.598 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:34:55,623.623 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 17:34:55,677.677 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 17:34:55,679.679 INFO    ] No camera update needed
[2026-06-12 17:34:55,680.680 INFO    ] Script finished. Safe exiting...
[2026-06-12 17:34:55,682.682 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 17:34:55,685.685 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 17:34:55,688.688 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 17:34:57,727.727 INFO    ] ================================================
[2026-06-12 17:34:57,742.742 INFO    ] Launching Daemon at Fri Jun 12 17:34:57 IST 2026
[2026-06-12 17:34:57,753.753 INFO    ] ================================================
[2026-06-12 17:34:58,117.117 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 17:34:58
[2026-06-12 17:34:58,429.429 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 17:34:58,555.555 INFO    ] Initializing speech engine...
[2026-06-12 17:34:58,559.559 INFO    ] 2026-06-12 17:34:58
[2026-06-12 17:34:58,750.750 INFO    ] 2026-06-12 17:34:58
[2026-06-12 17:34:58,788.788 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 17:34:59,001.001 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 17:34:59,011.011 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 17:34:59,160.160 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 17:34:59,208.208 INFO    ] time= 12/06/2026 17:34:59
[2026-06-12 17:34:59,231.231 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 17:34:59,236.236 INFO    ] Checking for existing commands in stream...
[2026-06-12 17:34:59,307.307 INFO    ] No existing commands found in stream
[2026-06-12 17:35:04,316.316 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 17:35:04,319.319 INFO    ] Waiting 3.66 seconds before fallback handling...
[2026-06-12 17:35:08,341.341 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 17:35:08,342.342 INFO    ] Checking for system updates...
[2026-06-12 17:35:08,363.363 INFO    ] 200
[2026-06-12 17:35:08,364.364 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:35:08,395.395 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 17:35:08,397.397 INFO    ] No update needed
[2026-06-12 17:35:08,398.398 INFO    ] Checking for camera pi updates...
[2026-06-12 17:35:08,417.417 INFO    ] 200
[2026-06-12 17:35:08,419.419 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:35:08,441.441 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 17:35:08,482.482 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 17:35:08,483.483 INFO    ] No camera update needed
[2026-06-12 17:35:08,485.485 INFO    ] Script finished. Safe exiting...
[2026-06-12 17:35:08,486.486 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 17:35:08,490.490 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 17:35:08,493.493 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 17:35:10,531.531 INFO    ] ================================================
[2026-06-12 17:35:10,547.547 INFO    ] Launching Daemon at Fri Jun 12 17:35:10 IST 2026
[2026-06-12 17:35:10,558.558 INFO    ] ================================================
[2026-06-12 17:35:10,941.941 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 17:35:10
[2026-06-12 17:35:11,276.276 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 17:35:11,421.421 INFO    ] Initializing speech engine...
[2026-06-12 17:35:11,431.431 INFO    ] 2026-06-12 17:35:11
[2026-06-12 17:35:11,642.642 INFO    ] 2026-06-12 17:35:11
[2026-06-12 17:35:11,671.671 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 17:35:11,859.859 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 17:35:11,871.871 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 17:35:12,015.015 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 17:35:12,069.069 INFO    ] time= 12/06/2026 17:35:12
[2026-06-12 17:35:12,093.093 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 17:35:12,099.099 INFO    ] Checking for existing commands in stream...
[2026-06-12 17:35:12,167.167 INFO    ] No existing commands found in stream
[2026-06-12 17:35:17,200.200 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 17:35:17,203.203 INFO    ] Waiting 2.75 seconds before fallback handling...
[2026-06-12 17:35:20,343.343 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 17:35:20,344.344 INFO    ] Checking for system updates...
[2026-06-12 17:35:20,365.365 INFO    ] 200
[2026-06-12 17:35:20,366.366 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:35:20,396.396 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 17:35:20,398.398 INFO    ] No update needed
[2026-06-12 17:35:20,399.399 INFO    ] Checking for camera pi updates...
[2026-06-12 17:35:20,418.418 INFO    ] 200
[2026-06-12 17:35:20,420.420 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:35:20,443.443 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 17:35:20,487.487 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 17:35:20,488.488 INFO    ] No camera update needed
[2026-06-12 17:35:20,490.490 INFO    ] Script finished. Safe exiting...
[2026-06-12 17:35:20,491.491 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 17:35:20,494.494 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 17:35:20,497.497 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 17:35:22,535.535 INFO    ] ================================================
[2026-06-12 17:35:22,550.550 INFO    ] Launching Daemon at Fri Jun 12 17:35:22 IST 2026
[2026-06-12 17:35:22,561.561 INFO    ] ================================================
[2026-06-12 17:35:22,925.925 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 17:35:22
[2026-06-12 17:35:23,238.238 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 17:35:23,371.371 INFO    ] Initializing speech engine...
[2026-06-12 17:35:23,375.375 INFO    ] 2026-06-12 17:35:23
[2026-06-12 17:35:23,593.593 INFO    ] 2026-06-12 17:35:23
[2026-06-12 17:35:23,622.622 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 17:35:23,807.807 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 17:35:23,816.816 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 17:35:23,946.946 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 17:35:24,005.005 INFO    ] time= 12/06/2026 17:35:23
[2026-06-12 17:35:24,038.038 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 17:35:24,045.045 INFO    ] Checking for existing commands in stream...
[2026-06-12 17:35:24,112.112 INFO    ] No existing commands found in stream
[2026-06-12 17:35:29,126.126 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 17:35:29,129.129 INFO    ] Waiting 1.44 seconds before fallback handling...
[2026-06-12 17:35:32,218.218 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 17:35:32,220.220 INFO    ] Checking for system updates...
[2026-06-12 17:35:32,240.240 INFO    ] 200
[2026-06-12 17:35:32,242.242 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:35:32,271.271 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 17:35:32,272.272 INFO    ] No update needed
[2026-06-12 17:35:32,274.274 INFO    ] Checking for camera pi updates...
[2026-06-12 17:35:32,297.297 INFO    ] 200
[2026-06-12 17:35:32,299.299 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:35:32,351.351 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 17:35:32,384.384 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 17:35:32,387.387 INFO    ] No camera update needed
[2026-06-12 17:35:32,389.389 INFO    ] Script finished. Safe exiting...
[2026-06-12 17:35:32,391.391 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 17:35:32,394.394 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 17:35:32,397.397 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 17:35:34,434.434 INFO    ] ================================================
[2026-06-12 17:35:34,450.450 INFO    ] Launching Daemon at Fri Jun 12 17:35:34 IST 2026
[2026-06-12 17:35:34,461.461 INFO    ] ================================================
[2026-06-12 17:35:34,801.801 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 17:35:34
[2026-06-12 17:35:35,116.116 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 17:35:35,258.258 INFO    ] Initializing speech engine...
[2026-06-12 17:35:35,263.263 INFO    ] 2026-06-12 17:35:35
[2026-06-12 17:35:35,467.467 INFO    ] 2026-06-12 17:35:35
[2026-06-12 17:35:35,495.495 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 17:35:35,678.678 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 17:35:35,687.687 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 17:35:35,812.812 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 17:35:35,869.869 INFO    ] time= 12/06/2026 17:35:35
[2026-06-12 17:35:35,898.898 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 17:35:35,908.908 INFO    ] Checking for existing commands in stream...
[2026-06-12 17:35:36,003.003 INFO    ] No existing commands found in stream
[2026-06-12 17:35:41,012.012 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 17:35:41,015.015 INFO    ] Waiting 1.14 seconds before fallback handling...
[2026-06-12 17:35:42,533.533 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 17:35:42,534.534 INFO    ] Checking for system updates...
[2026-06-12 17:35:42,554.554 INFO    ] 200
[2026-06-12 17:35:42,555.555 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:35:42,590.590 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 17:35:42,591.591 INFO    ] No update needed
[2026-06-12 17:35:42,593.593 INFO    ] Checking for camera pi updates...
[2026-06-12 17:35:42,612.612 INFO    ] 200
[2026-06-12 17:35:42,613.613 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:35:42,636.636 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 17:35:42,776.776 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 17:35:42,777.777 INFO    ] No camera update needed
[2026-06-12 17:35:42,778.778 INFO    ] Script finished. Safe exiting...
[2026-06-12 17:35:42,780.780 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 17:35:42,783.783 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 17:35:42,785.785 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 17:35:44,825.825 INFO    ] ================================================
[2026-06-12 17:35:44,840.840 INFO    ] Launching Daemon at Fri Jun 12 17:35:44 IST 2026
[2026-06-12 17:35:44,852.852 INFO    ] ================================================
[2026-06-12 17:35:45,226.226 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 17:35:45
[2026-06-12 17:35:45,542.542 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 17:35:45,685.685 INFO    ] Initializing speech engine...
[2026-06-12 17:35:45,690.690 INFO    ] 2026-06-12 17:35:45
[2026-06-12 17:35:45,895.895 INFO    ] 2026-06-12 17:35:45
[2026-06-12 17:35:45,923.923 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 17:35:46,107.107 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 17:35:46,115.115 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 17:35:46,242.242 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 17:35:46,304.304 INFO    ] time= 12/06/2026 17:35:46
[2026-06-12 17:35:46,336.336 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 17:35:46,342.342 INFO    ] Checking for existing commands in stream...
[2026-06-12 17:35:46,432.432 INFO    ] No existing commands found in stream
[2026-06-12 17:35:51,441.441 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 17:35:51,444.444 INFO    ] Waiting 0.54 seconds before fallback handling...
[2026-06-12 17:35:55,261.261 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 17:35:55,264.264 INFO    ] Checking for system updates...
[2026-06-12 17:35:55,300.300 INFO    ] 200
[2026-06-12 17:35:55,302.302 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:35:55,351.351 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 17:35:55,352.352 INFO    ] No update needed
[2026-06-12 17:35:55,353.353 INFO    ] Checking for camera pi updates...
[2026-06-12 17:35:55,372.372 INFO    ] 200
[2026-06-12 17:35:55,374.374 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:35:55,400.400 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 17:35:55,443.443 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 17:35:55,445.445 INFO    ] No camera update needed
[2026-06-12 17:35:55,446.446 INFO    ] Script finished. Safe exiting...
[2026-06-12 17:35:55,447.447 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 17:35:55,450.450 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 17:35:55,453.453 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 17:35:57,490.490 INFO    ] ================================================
[2026-06-12 17:35:57,506.506 INFO    ] Launching Daemon at Fri Jun 12 17:35:57 IST 2026
[2026-06-12 17:35:57,517.517 INFO    ] ================================================
[2026-06-12 17:35:57,863.863 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 17:35:57
[2026-06-12 17:35:58,197.197 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 17:35:58,349.349 INFO    ] Initializing speech engine...
[2026-06-12 17:35:58,353.353 INFO    ] 2026-06-12 17:35:58
[2026-06-12 17:35:58,558.558 INFO    ] 2026-06-12 17:35:58
[2026-06-12 17:35:58,587.587 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 17:35:58,769.769 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 17:35:58,773.773 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 17:35:58,905.905 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 17:35:58,963.963 INFO    ] time= 12/06/2026 17:35:58
[2026-06-12 17:35:58,996.996 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 17:35:59,006.006 INFO    ] Checking for existing commands in stream...
[2026-06-12 17:35:59,096.096 INFO    ] No existing commands found in stream
[2026-06-12 17:36:04,106.106 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 17:36:04,109.109 INFO    ] Waiting 3.86 seconds before fallback handling...
[2026-06-12 17:36:08,386.386 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 17:36:08,387.387 INFO    ] Checking for system updates...
[2026-06-12 17:36:08,408.408 INFO    ] 200
[2026-06-12 17:36:08,409.409 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:36:08,441.441 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 17:36:08,442.442 INFO    ] No update needed
[2026-06-12 17:36:08,444.444 INFO    ] Checking for camera pi updates...
[2026-06-12 17:36:08,466.466 INFO    ] 200
[2026-06-12 17:36:08,467.467 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:36:08,490.490 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 17:36:08,540.540 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 17:36:08,542.542 INFO    ] No camera update needed
[2026-06-12 17:36:08,543.543 INFO    ] Script finished. Safe exiting...
[2026-06-12 17:36:08,544.544 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 17:36:08,547.547 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 17:36:08,550.550 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 17:36:10,589.589 INFO    ] ================================================
[2026-06-12 17:36:10,605.605 INFO    ] Launching Daemon at Fri Jun 12 17:36:10 IST 2026
[2026-06-12 17:36:10,616.616 INFO    ] ================================================
[2026-06-12 17:36:10,983.983 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 17:36:10
[2026-06-12 17:36:11,316.316 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 17:36:11,466.466 INFO    ] Initializing speech engine...
[2026-06-12 17:36:11,472.472 INFO    ] 2026-06-12 17:36:11
[2026-06-12 17:36:11,681.681 INFO    ] 2026-06-12 17:36:11
[2026-06-12 17:36:11,711.711 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 17:36:11,845.845 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 17:36:11,898.898 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 17:36:12,038.038 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 17:36:12,102.102 INFO    ] time= 12/06/2026 17:36:12
[2026-06-12 17:36:12,131.131 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 17:36:12,132.132 INFO    ] Checking for existing commands in stream...
[2026-06-12 17:36:12,205.205 INFO    ] No existing commands found in stream
[2026-06-12 17:36:17,219.219 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 17:36:17,222.222 INFO    ] Waiting 1.38 seconds before fallback handling...
[2026-06-12 17:36:19,016.016 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 17:36:19,018.018 INFO    ] Checking for system updates...
[2026-06-12 17:36:19,039.039 INFO    ] 200
[2026-06-12 17:36:19,041.041 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:36:19,075.075 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 17:36:19,076.076 INFO    ] No update needed
[2026-06-12 17:36:19,078.078 INFO    ] Checking for camera pi updates...
[2026-06-12 17:36:19,106.106 INFO    ] 200
[2026-06-12 17:36:19,107.107 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:36:19,133.133 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 17:36:19,179.179 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 17:36:19,181.181 INFO    ] No camera update needed
[2026-06-12 17:36:19,182.182 INFO    ] Script finished. Safe exiting...
[2026-06-12 17:36:19,184.184 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 17:36:19,187.187 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 17:36:19,190.190 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 17:36:21,229.229 INFO    ] ================================================
[2026-06-12 17:36:21,244.244 INFO    ] Launching Daemon at Fri Jun 12 17:36:21 IST 2026
[2026-06-12 17:36:21,256.256 INFO    ] ================================================
[2026-06-12 17:36:21,606.606 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 17:36:21
[2026-06-12 17:36:21,919.919 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 17:36:22,063.063 INFO    ] Initializing speech engine...
[2026-06-12 17:36:22,068.068 INFO    ] 2026-06-12 17:36:22
[2026-06-12 17:36:22,275.275 INFO    ] 2026-06-12 17:36:22
[2026-06-12 17:36:22,306.306 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 17:36:22,492.492 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 17:36:22,501.501 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 17:36:22,634.634 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 17:36:22,698.698 INFO    ] time= 12/06/2026 17:36:22
[2026-06-12 17:36:22,726.726 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 17:36:22,732.732 INFO    ] Checking for existing commands in stream...
[2026-06-12 17:36:22,825.825 INFO    ] No existing commands found in stream
[2026-06-12 17:36:27,849.849 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 17:36:27,852.852 INFO    ] Waiting 2.28 seconds before fallback handling...
[2026-06-12 17:36:30,515.515 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 17:36:30,516.516 INFO    ] Checking for system updates...
[2026-06-12 17:36:30,538.538 INFO    ] 200
[2026-06-12 17:36:30,539.539 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:36:30,571.571 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 17:36:30,572.572 INFO    ] No update needed
[2026-06-12 17:36:30,573.573 INFO    ] Checking for camera pi updates...
[2026-06-12 17:36:30,592.592 INFO    ] 200
[2026-06-12 17:36:30,593.593 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:36:30,619.619 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 17:36:30,672.672 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 17:36:30,674.674 INFO    ] No camera update needed
[2026-06-12 17:36:30,675.675 INFO    ] Script finished. Safe exiting...
[2026-06-12 17:36:30,676.676 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 17:36:30,679.679 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 17:36:30,682.682 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 17:36:32,723.723 INFO    ] ================================================
[2026-06-12 17:36:32,738.738 INFO    ] Launching Daemon at Fri Jun 12 17:36:32 IST 2026
[2026-06-12 17:36:32,750.750 INFO    ] ================================================
[2026-06-12 17:36:33,116.116 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 17:36:33
[2026-06-12 17:36:33,429.429 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 17:36:33,563.563 INFO    ] Initializing speech engine...
[2026-06-12 17:36:33,566.566 INFO    ] 2026-06-12 17:36:33
[2026-06-12 17:36:33,795.795 INFO    ] 2026-06-12 17:36:33
[2026-06-12 17:36:33,826.826 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 17:36:33,969.969 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 17:36:34,026.026 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 17:36:34,175.175 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 17:36:34,239.239 INFO    ] time= 12/06/2026 17:36:34
[2026-06-12 17:36:34,272.272 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 17:36:34,274.274 INFO    ] Checking for existing commands in stream...
[2026-06-12 17:36:34,352.352 INFO    ] No existing commands found in stream
[2026-06-12 17:36:39,361.361 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 17:36:39,364.364 INFO    ] Waiting 3.60 seconds before fallback handling...
[2026-06-12 17:36:43,333.333 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 17:36:43,334.334 INFO    ] Checking for system updates...
[2026-06-12 17:36:43,354.354 INFO    ] 200
[2026-06-12 17:36:43,355.355 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:36:43,385.385 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 17:36:43,386.386 INFO    ] No update needed
[2026-06-12 17:36:43,387.387 INFO    ] Checking for camera pi updates...
[2026-06-12 17:36:43,406.406 INFO    ] 200
[2026-06-12 17:36:43,407.407 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:36:43,430.430 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 17:36:43,472.472 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 17:36:43,473.473 INFO    ] No camera update needed
[2026-06-12 17:36:43,475.475 INFO    ] Script finished. Safe exiting...
[2026-06-12 17:36:43,476.476 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 17:36:43,479.479 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 17:36:43,482.482 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 17:36:45,523.523 INFO    ] ================================================
[2026-06-12 17:36:45,539.539 INFO    ] Launching Daemon at Fri Jun 12 17:36:45 IST 2026
[2026-06-12 17:36:45,550.550 INFO    ] ================================================
[2026-06-12 17:36:45,886.886 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 17:36:45
[2026-06-12 17:36:46,202.202 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 17:36:46,340.340 INFO    ] Initializing speech engine...
[2026-06-12 17:36:46,343.343 INFO    ] 2026-06-12 17:36:46
[2026-06-12 17:36:46,572.572 INFO    ] 2026-06-12 17:36:46
[2026-06-12 17:36:46,603.603 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 17:36:46,736.736 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 17:36:46,803.803 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 17:36:46,946.946 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 17:36:46,997.997 INFO    ] time= 12/06/2026 17:36:46
[2026-06-12 17:36:47,029.029 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 17:36:47,053.053 INFO    ] Checking for existing commands in stream...
[2026-06-12 17:36:47,132.132 INFO    ] No existing commands found in stream
[2026-06-12 17:36:52,141.141 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 17:36:52,144.144 INFO    ] Waiting 2.31 seconds before fallback handling...
[2026-06-12 17:36:54,828.828 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 17:36:54,830.830 INFO    ] Checking for system updates...
[2026-06-12 17:36:54,850.850 INFO    ] 200
[2026-06-12 17:36:54,852.852 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:36:54,882.882 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 17:36:54,884.884 INFO    ] No update needed
[2026-06-12 17:36:54,885.885 INFO    ] Checking for camera pi updates...
[2026-06-12 17:36:54,904.904 INFO    ] 200
[2026-06-12 17:36:54,906.906 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:36:54,928.928 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 17:36:54,976.976 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 17:36:54,977.977 INFO    ] No camera update needed
[2026-06-12 17:36:54,979.979 INFO    ] Script finished. Safe exiting...
[2026-06-12 17:36:54,980.980 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 17:36:54,983.983 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 17:36:54,986.986 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 17:36:57,024.024 INFO    ] ================================================
[2026-06-12 17:36:57,041.041 INFO    ] Launching Daemon at Fri Jun 12 17:36:57 IST 2026
[2026-06-12 17:36:57,052.052 INFO    ] ================================================
[2026-06-12 17:36:57,425.425 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 17:36:57
[2026-06-12 17:36:57,745.745 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 17:36:57,879.879 INFO    ] Initializing speech engine...
[2026-06-12 17:36:57,882.882 INFO    ] 2026-06-12 17:36:57
[2026-06-12 17:36:58,094.094 INFO    ] 2026-06-12 17:36:58
[2026-06-12 17:36:58,122.122 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 17:36:58,280.280 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 17:36:58,312.312 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 17:36:58,488.488 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 17:36:58,551.551 INFO    ] time= 12/06/2026 17:36:58
[2026-06-12 17:36:58,585.585 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 17:36:58,596.596 INFO    ] Checking for existing commands in stream...
[2026-06-12 17:36:58,699.699 INFO    ] No existing commands found in stream
[2026-06-12 17:37:03,713.713 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 17:37:03,716.716 INFO    ] Waiting 2.84 seconds before fallback handling...
[2026-06-12 17:37:06,941.941 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 17:37:06,943.943 INFO    ] Checking for system updates...
[2026-06-12 17:37:06,963.963 INFO    ] 200
[2026-06-12 17:37:06,965.965 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:37:06,994.994 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 17:37:06,995.995 INFO    ] No update needed
[2026-06-12 17:37:06,997.997 INFO    ] Checking for camera pi updates...
[2026-06-12 17:37:07,017.017 INFO    ] 200
[2026-06-12 17:37:07,018.018 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:37:07,041.041 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 17:37:07,122.122 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 17:37:07,124.124 INFO    ] No camera update needed
[2026-06-12 17:37:07,125.125 INFO    ] Script finished. Safe exiting...
[2026-06-12 17:37:07,126.126 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 17:37:07,129.129 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 17:37:07,132.132 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 17:37:09,172.172 INFO    ] ================================================
[2026-06-12 17:37:09,188.188 INFO    ] Launching Daemon at Fri Jun 12 17:37:09 IST 2026
[2026-06-12 17:37:09,199.199 INFO    ] ================================================
[2026-06-12 17:37:09,525.525 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 17:37:09
[2026-06-12 17:37:09,838.838 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 17:37:09,982.982 INFO    ] Initializing speech engine...
[2026-06-12 17:37:09,987.987 INFO    ] 2026-06-12 17:37:09
[2026-06-12 17:37:10,193.193 INFO    ] 2026-06-12 17:37:10
[2026-06-12 17:37:10,223.223 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 17:37:10,412.412 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 17:37:10,420.420 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 17:37:10,605.605 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 17:37:10,644.644 INFO    ] time= 12/06/2026 17:37:10
[2026-06-12 17:37:10,646.646 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 17:37:10,652.652 INFO    ] Checking for existing commands in stream...
[2026-06-12 17:37:10,720.720 INFO    ] No existing commands found in stream
[2026-06-12 17:37:15,729.729 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 17:37:15,732.732 INFO    ] Waiting 3.14 seconds before fallback handling...
[2026-06-12 17:37:19,275.275 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 17:37:19,277.277 INFO    ] Checking for system updates...
[2026-06-12 17:37:19,298.298 INFO    ] 200
[2026-06-12 17:37:19,299.299 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:37:19,329.329 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 17:37:19,330.330 INFO    ] No update needed
[2026-06-12 17:37:19,332.332 INFO    ] Checking for camera pi updates...
[2026-06-12 17:37:19,351.351 INFO    ] 200
[2026-06-12 17:37:19,352.352 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:37:19,375.375 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 17:37:19,413.413 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 17:37:19,415.415 INFO    ] No camera update needed
[2026-06-12 17:37:19,416.416 INFO    ] Script finished. Safe exiting...
[2026-06-12 17:37:19,417.417 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 17:37:19,421.421 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 17:37:19,423.423 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 17:37:21,465.465 INFO    ] ================================================
[2026-06-12 17:37:21,482.482 INFO    ] Launching Daemon at Fri Jun 12 17:37:21 IST 2026
[2026-06-12 17:37:21,493.493 INFO    ] ================================================
[2026-06-12 17:37:21,840.840 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 17:37:21
[2026-06-12 17:37:22,154.154 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 17:37:22,290.290 INFO    ] Initializing speech engine...
[2026-06-12 17:37:22,301.301 INFO    ] 2026-06-12 17:37:22
[2026-06-12 17:37:22,507.507 INFO    ] 2026-06-12 17:37:22
[2026-06-12 17:37:22,535.535 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 17:37:22,718.718 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 17:37:22,727.727 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 17:37:22,854.854 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 17:37:22,916.916 INFO    ] time= 12/06/2026 17:37:22
[2026-06-12 17:37:22,948.948 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 17:37:22,950.950 INFO    ] Checking for existing commands in stream...
[2026-06-12 17:37:23,044.044 INFO    ] No existing commands found in stream
[2026-06-12 17:37:28,053.053 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 17:37:28,055.055 INFO    ] Waiting 0.89 seconds before fallback handling...
[2026-06-12 17:37:29,338.338 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 17:37:29,340.340 INFO    ] Checking for system updates...
[2026-06-12 17:37:29,360.360 INFO    ] 200
[2026-06-12 17:37:29,362.362 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:37:29,392.392 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 17:37:29,393.393 INFO    ] No update needed
[2026-06-12 17:37:29,394.394 INFO    ] Checking for camera pi updates...
[2026-06-12 17:37:29,413.413 INFO    ] 200
[2026-06-12 17:37:29,415.415 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:37:29,439.439 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 17:37:29,485.485 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 17:37:29,486.486 INFO    ] No camera update needed
[2026-06-12 17:37:29,487.487 INFO    ] Script finished. Safe exiting...
[2026-06-12 17:37:29,488.488 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 17:37:29,492.492 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 17:37:29,494.494 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 17:37:31,533.533 INFO    ] ================================================
[2026-06-12 17:37:31,549.549 INFO    ] Launching Daemon at Fri Jun 12 17:37:31 IST 2026
[2026-06-12 17:37:31,561.561 INFO    ] ================================================
[2026-06-12 17:37:31,937.937 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 17:37:31
[2026-06-12 17:37:32,315.315 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 17:37:32,490.490 INFO    ] Initializing speech engine...
[2026-06-12 17:37:32,495.495 INFO    ] 2026-06-12 17:37:32
[2026-06-12 17:37:32,707.707 INFO    ] 2026-06-12 17:37:32
[2026-06-12 17:37:32,736.736 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 17:37:32,869.869 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 17:37:32,926.926 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 17:37:33,087.087 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 17:37:33,135.135 INFO    ] time= 12/06/2026 17:37:33
[2026-06-12 17:37:33,184.184 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 17:37:33,206.206 INFO    ] Checking for existing commands in stream...
[2026-06-12 17:37:33,302.302 INFO    ] No existing commands found in stream
[2026-06-12 17:37:38,311.311 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 17:37:38,318.318 INFO    ] Waiting 2.86 seconds before fallback handling...
[2026-06-12 17:37:41,575.575 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 17:37:41,577.577 INFO    ] Checking for system updates...
[2026-06-12 17:37:41,598.598 INFO    ] 200
[2026-06-12 17:37:41,599.599 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:37:41,630.630 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 17:37:41,632.632 INFO    ] No update needed
[2026-06-12 17:37:41,633.633 INFO    ] Checking for camera pi updates...
[2026-06-12 17:37:41,652.652 INFO    ] 200
[2026-06-12 17:37:41,654.654 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:37:41,678.678 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 17:37:41,725.725 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 17:37:41,727.727 INFO    ] No camera update needed
[2026-06-12 17:37:41,728.728 INFO    ] Script finished. Safe exiting...
[2026-06-12 17:37:41,729.729 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 17:37:41,732.732 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 17:37:41,735.735 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 17:37:43,772.772 INFO    ] ================================================
[2026-06-12 17:37:43,788.788 INFO    ] Launching Daemon at Fri Jun 12 17:37:43 IST 2026
[2026-06-12 17:37:43,799.799 INFO    ] ================================================
[2026-06-12 17:37:44,127.127 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 17:37:44
[2026-06-12 17:37:44,444.444 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 17:37:44,588.588 INFO    ] Initializing speech engine...
[2026-06-12 17:37:44,593.593 INFO    ] 2026-06-12 17:37:44
[2026-06-12 17:37:44,796.796 INFO    ] 2026-06-12 17:37:44
[2026-06-12 17:37:44,824.824 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 17:37:45,009.009 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 17:37:45,017.017 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 17:37:45,147.147 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 17:37:45,214.214 INFO    ] time= 12/06/2026 17:37:45
[2026-06-12 17:37:45,238.238 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 17:37:45,244.244 INFO    ] Checking for existing commands in stream...
[2026-06-12 17:37:45,311.311 INFO    ] No existing commands found in stream
[2026-06-12 17:37:50,341.341 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 17:37:50,344.344 INFO    ] Waiting 2.76 seconds before fallback handling...
[2026-06-12 17:37:53,497.497 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 17:37:53,499.499 INFO    ] Checking for system updates...
[2026-06-12 17:37:53,521.521 INFO    ] 200
[2026-06-12 17:37:53,523.523 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:37:53,552.552 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 17:37:53,554.554 INFO    ] No update needed
[2026-06-12 17:37:53,555.555 INFO    ] Checking for camera pi updates...
[2026-06-12 17:37:53,575.575 INFO    ] 200
[2026-06-12 17:37:53,576.576 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:37:53,599.599 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 17:37:53,741.741 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 17:37:53,743.743 INFO    ] No camera update needed
[2026-06-12 17:37:53,744.744 INFO    ] Script finished. Safe exiting...
[2026-06-12 17:37:53,746.746 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 17:37:53,749.749 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 17:37:53,752.752 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 17:37:55,791.791 INFO    ] ================================================
[2026-06-12 17:37:55,812.812 INFO    ] Launching Daemon at Fri Jun 12 17:37:55 IST 2026
[2026-06-12 17:37:55,823.823 INFO    ] ================================================
[2026-06-12 17:37:56,155.155 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 17:37:56
[2026-06-12 17:37:56,472.472 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 17:37:56,604.604 INFO    ] Initializing speech engine...
[2026-06-12 17:37:56,608.608 INFO    ] 2026-06-12 17:37:56
[2026-06-12 17:37:56,824.824 INFO    ] 2026-06-12 17:37:56
[2026-06-12 17:37:56,853.853 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 17:37:57,039.039 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 17:37:57,048.048 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 17:37:57,178.178 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 17:37:57,244.244 INFO    ] time= 12/06/2026 17:37:57
[2026-06-12 17:37:57,268.268 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 17:37:57,275.275 INFO    ] Checking for existing commands in stream...
[2026-06-12 17:37:57,342.342 INFO    ] No existing commands found in stream
[2026-06-12 17:38:02,351.351 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 17:38:02,354.354 INFO    ] Waiting 0.18 seconds before fallback handling...
[2026-06-12 17:38:02,877.877 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 17:38:02,880.880 INFO    ] Checking for system updates...
[2026-06-12 17:38:02,909.909 INFO    ] 200
[2026-06-12 17:38:02,910.910 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:38:02,943.943 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 17:38:02,945.945 INFO    ] No update needed
[2026-06-12 17:38:02,947.947 INFO    ] Checking for camera pi updates...
[2026-06-12 17:38:02,968.968 INFO    ] 200
[2026-06-12 17:38:02,969.969 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:38:02,994.994 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 17:38:03,044.044 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 17:38:03,045.045 INFO    ] No camera update needed
[2026-06-12 17:38:03,046.046 INFO    ] Script finished. Safe exiting...
[2026-06-12 17:38:03,048.048 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 17:38:03,051.051 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 17:38:03,054.054 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 17:38:05,091.091 INFO    ] ================================================
[2026-06-12 17:38:05,107.107 INFO    ] Launching Daemon at Fri Jun 12 17:38:05 IST 2026
[2026-06-12 17:38:05,118.118 INFO    ] ================================================
[2026-06-12 17:38:05,467.467 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 17:38:05
[2026-06-12 17:38:05,784.784 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 17:38:05,927.927 INFO    ] Initializing speech engine...
[2026-06-12 17:38:05,933.933 INFO    ] 2026-06-12 17:38:05
[2026-06-12 17:38:06,120.120 INFO    ] 2026-06-12 17:38:06
[2026-06-12 17:38:06,152.152 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 17:38:06,315.315 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 17:38:06,363.363 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 17:38:06,498.498 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 17:38:06,564.564 INFO    ] time= 12/06/2026 17:38:06
[2026-06-12 17:38:06,591.591 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 17:38:06,597.597 INFO    ] Checking for existing commands in stream...
[2026-06-12 17:38:06,664.664 INFO    ] No existing commands found in stream
[2026-06-12 17:38:11,678.678 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 17:38:11,681.681 INFO    ] Waiting 3.69 seconds before fallback handling...
[2026-06-12 17:38:15,754.754 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 17:38:15,756.756 INFO    ] Checking for system updates...
[2026-06-12 17:38:15,776.776 INFO    ] 200
[2026-06-12 17:38:15,777.777 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:38:15,807.807 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 17:38:15,808.808 INFO    ] No update needed
[2026-06-12 17:38:15,809.809 INFO    ] Checking for camera pi updates...
[2026-06-12 17:38:15,829.829 INFO    ] 200
[2026-06-12 17:38:15,830.830 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:38:15,853.853 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 17:38:15,904.904 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 17:38:15,906.906 INFO    ] No camera update needed
[2026-06-12 17:38:15,907.907 INFO    ] Script finished. Safe exiting...
[2026-06-12 17:38:15,908.908 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 17:38:15,911.911 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 17:38:15,914.914 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 17:38:17,953.953 INFO    ] ================================================
[2026-06-12 17:38:17,970.970 INFO    ] Launching Daemon at Fri Jun 12 17:38:17 IST 2026
[2026-06-12 17:38:17,980.980 INFO    ] ================================================
[2026-06-12 17:38:18,344.344 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 17:38:18
[2026-06-12 17:38:18,687.687 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 17:38:18,841.841 INFO    ] Initializing speech engine...
[2026-06-12 17:38:18,845.845 INFO    ] 2026-06-12 17:38:18
[2026-06-12 17:38:19,052.052 INFO    ] 2026-06-12 17:38:19
[2026-06-12 17:38:19,082.082 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 17:38:19,266.266 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 17:38:19,276.276 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 17:38:19,397.397 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 17:38:19,468.468 INFO    ] time= 12/06/2026 17:38:19
[2026-06-12 17:38:19,496.496 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 17:38:19,502.502 INFO    ] Checking for existing commands in stream...
[2026-06-12 17:38:19,592.592 INFO    ] No existing commands found in stream
[2026-06-12 17:38:24,606.606 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 17:38:24,610.610 INFO    ] Waiting 0.39 seconds before fallback handling...
[2026-06-12 17:38:25,383.383 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 17:38:25,384.384 INFO    ] Checking for system updates...
[2026-06-12 17:38:25,405.405 INFO    ] 200
[2026-06-12 17:38:25,407.407 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:38:25,441.441 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 17:38:25,443.443 INFO    ] No update needed
[2026-06-12 17:38:25,444.444 INFO    ] Checking for camera pi updates...
[2026-06-12 17:38:25,464.464 INFO    ] 200
[2026-06-12 17:38:25,465.465 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:38:25,488.488 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 17:38:25,532.532 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 17:38:25,534.534 INFO    ] No camera update needed
[2026-06-12 17:38:25,535.535 INFO    ] Script finished. Safe exiting...
[2026-06-12 17:38:25,536.536 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 17:38:25,539.539 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 17:38:25,542.542 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 17:38:27,580.580 INFO    ] ================================================
[2026-06-12 17:38:27,596.596 INFO    ] Launching Daemon at Fri Jun 12 17:38:27 IST 2026
[2026-06-12 17:38:27,607.607 INFO    ] ================================================
[2026-06-12 17:38:27,933.933 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 17:38:27
[2026-06-12 17:38:28,246.246 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 17:38:28,376.376 INFO    ] Initializing speech engine...
[2026-06-12 17:38:28,380.380 INFO    ] 2026-06-12 17:38:28
[2026-06-12 17:38:28,573.573 INFO    ] 2026-06-12 17:38:28
[2026-06-12 17:38:28,618.618 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 17:38:28,778.778 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 17:38:28,846.846 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 17:38:28,988.988 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 17:38:29,044.044 INFO    ] time= 12/06/2026 17:38:28
[2026-06-12 17:38:29,073.073 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 17:38:29,096.096 INFO    ] Checking for existing commands in stream...
[2026-06-12 17:38:29,198.198 INFO    ] No existing commands found in stream
[2026-06-12 17:38:34,207.207 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 17:38:34,210.210 INFO    ] Waiting 2.79 seconds before fallback handling...
[2026-06-12 17:38:37,403.403 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 17:38:37,404.404 INFO    ] Checking for system updates...
[2026-06-12 17:38:37,424.424 INFO    ] 200
[2026-06-12 17:38:37,426.426 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:38:37,457.457 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 17:38:37,459.459 INFO    ] No update needed
[2026-06-12 17:38:37,460.460 INFO    ] Checking for camera pi updates...
[2026-06-12 17:38:37,479.479 INFO    ] 200
[2026-06-12 17:38:37,480.480 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:38:37,503.503 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 17:38:37,541.541 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 17:38:37,542.542 INFO    ] No camera update needed
[2026-06-12 17:38:37,543.543 INFO    ] Script finished. Safe exiting...
[2026-06-12 17:38:37,544.544 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 17:38:37,547.547 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 17:38:37,550.550 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 17:38:39,588.588 INFO    ] ================================================
[2026-06-12 17:38:39,603.603 INFO    ] Launching Daemon at Fri Jun 12 17:38:39 IST 2026
[2026-06-12 17:38:39,614.614 INFO    ] ================================================
[2026-06-12 17:38:39,956.956 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 17:38:39
[2026-06-12 17:38:40,268.268 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 17:38:40,405.405 INFO    ] Initializing speech engine...
[2026-06-12 17:38:40,415.415 INFO    ] 2026-06-12 17:38:40
[2026-06-12 17:38:40,619.619 INFO    ] 2026-06-12 17:38:40
[2026-06-12 17:38:40,648.648 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 17:38:40,831.831 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 17:38:40,840.840 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 17:38:40,989.989 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 17:38:41,037.037 INFO    ] time= 12/06/2026 17:38:41
[2026-06-12 17:38:41,059.059 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 17:38:41,065.065 INFO    ] Checking for existing commands in stream...
[2026-06-12 17:38:41,132.132 INFO    ] No existing commands found in stream
[2026-06-12 17:38:46,151.151 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 17:38:46,154.154 INFO    ] Waiting 3.14 seconds before fallback handling...
[2026-06-12 17:38:49,651.651 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 17:38:49,652.652 INFO    ] Checking for system updates...
[2026-06-12 17:38:49,673.673 INFO    ] 200
[2026-06-12 17:38:49,674.674 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:38:49,705.705 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 17:38:49,707.707 INFO    ] No update needed
[2026-06-12 17:38:49,708.708 INFO    ] Checking for camera pi updates...
[2026-06-12 17:38:49,727.727 INFO    ] 200
[2026-06-12 17:38:49,728.728 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:38:49,751.751 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 17:38:49,798.798 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 17:38:49,799.799 INFO    ] No camera update needed
[2026-06-12 17:38:49,801.801 INFO    ] Script finished. Safe exiting...
[2026-06-12 17:38:49,802.802 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 17:38:49,806.806 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 17:38:49,809.809 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 17:38:51,847.847 INFO    ] ================================================
[2026-06-12 17:38:51,863.863 INFO    ] Launching Daemon at Fri Jun 12 17:38:51 IST 2026
[2026-06-12 17:38:51,874.874 INFO    ] ================================================
[2026-06-12 17:38:52,240.240 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 17:38:52
[2026-06-12 17:38:52,552.552 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 17:38:52,685.685 INFO    ] Initializing speech engine...
[2026-06-12 17:38:52,689.689 INFO    ] 2026-06-12 17:38:52
[2026-06-12 17:38:52,881.881 INFO    ] 2026-06-12 17:38:52
[2026-06-12 17:38:52,928.928 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 17:38:53,154.154 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 17:38:53,158.158 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 17:38:53,307.307 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 17:38:53,371.371 INFO    ] time= 12/06/2026 17:38:53
[2026-06-12 17:38:53,406.406 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 17:38:53,413.413 INFO    ] Checking for existing commands in stream...
[2026-06-12 17:38:53,512.512 INFO    ] No existing commands found in stream
[2026-06-12 17:38:58,521.521 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 17:38:58,524.524 INFO    ] Waiting 0.37 seconds before fallback handling...
[2026-06-12 17:38:59,274.274 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 17:38:59,275.275 INFO    ] Checking for system updates...
[2026-06-12 17:38:59,296.296 INFO    ] 200
[2026-06-12 17:38:59,297.297 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:38:59,327.327 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 17:38:59,329.329 INFO    ] No update needed
[2026-06-12 17:38:59,330.330 INFO    ] Checking for camera pi updates...
[2026-06-12 17:38:59,350.350 INFO    ] 200
[2026-06-12 17:38:59,352.352 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:38:59,375.375 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 17:38:59,435.435 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 17:38:59,437.437 INFO    ] No camera update needed
[2026-06-12 17:38:59,438.438 INFO    ] Script finished. Safe exiting...
[2026-06-12 17:38:59,439.439 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 17:38:59,442.442 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 17:38:59,445.445 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 17:39:01,470.470 INFO    ] ================================================
[2026-06-12 17:39:01,480.480 INFO    ] Launching Daemon at Fri Jun 12 17:39:01 IST 2026
[2026-06-12 17:39:01,490.490 INFO    ] ================================================
[2026-06-12 17:39:01,844.844 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 17:39:01
[2026-06-12 17:39:02,212.212 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 17:39:02,351.351 INFO    ] Initializing speech engine...
[2026-06-12 17:39:02,363.363 INFO    ] 2026-06-12 17:39:02
[2026-06-12 17:39:02,570.570 INFO    ] 2026-06-12 17:39:02
[2026-06-12 17:39:02,600.600 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 17:39:02,784.784 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 17:39:02,794.794 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 17:39:02,940.940 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 17:39:02,992.992 INFO    ] time= 12/06/2026 17:39:02
[2026-06-12 17:39:03,015.015 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 17:39:03,021.021 INFO    ] Checking for existing commands in stream...
[2026-06-12 17:39:03,089.089 INFO    ] No existing commands found in stream
[2026-06-12 17:39:08,098.098 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 17:39:08,101.101 INFO    ] Waiting 2.83 seconds before fallback handling...
[2026-06-12 17:39:11,302.302 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 17:39:11,303.303 INFO    ] Checking for system updates...
[2026-06-12 17:39:11,323.323 INFO    ] 200
[2026-06-12 17:39:11,325.325 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:39:11,354.354 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 17:39:11,356.356 INFO    ] No update needed
[2026-06-12 17:39:11,357.357 INFO    ] Checking for camera pi updates...
[2026-06-12 17:39:11,376.376 INFO    ] 200
[2026-06-12 17:39:11,377.377 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:39:11,400.400 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 17:39:11,446.446 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 17:39:11,447.447 INFO    ] No camera update needed
[2026-06-12 17:39:11,449.449 INFO    ] Script finished. Safe exiting...
[2026-06-12 17:39:11,450.450 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 17:39:11,453.453 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 17:39:11,456.456 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 17:39:13,494.494 INFO    ] ================================================
[2026-06-12 17:39:13,509.509 INFO    ] Launching Daemon at Fri Jun 12 17:39:13 IST 2026
[2026-06-12 17:39:13,521.521 INFO    ] ================================================
[2026-06-12 17:39:13,918.918 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 17:39:13
[2026-06-12 17:39:14,259.259 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 17:39:14,416.416 INFO    ] Initializing speech engine...
[2026-06-12 17:39:14,423.423 INFO    ] 2026-06-12 17:39:14
[2026-06-12 17:39:14,626.626 INFO    ] 2026-06-12 17:39:14
[2026-06-12 17:39:14,655.655 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 17:39:14,838.838 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 17:39:14,847.847 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 17:39:14,978.978 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 17:39:15,046.046 INFO    ] time= 12/06/2026 17:39:14
[2026-06-12 17:39:15,070.070 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 17:39:15,076.076 INFO    ] Checking for existing commands in stream...
[2026-06-12 17:39:15,143.143 INFO    ] No existing commands found in stream
[2026-06-12 17:39:20,158.158 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 17:39:20,161.161 INFO    ] Waiting 0.92 seconds before fallback handling...
[2026-06-12 17:39:21,500.500 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 17:39:21,502.502 INFO    ] Checking for system updates...
[2026-06-12 17:39:21,525.525 INFO    ] 200
[2026-06-12 17:39:21,526.526 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:39:21,559.559 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 17:39:21,561.561 INFO    ] No update needed
[2026-06-12 17:39:21,562.562 INFO    ] Checking for camera pi updates...
[2026-06-12 17:39:21,583.583 INFO    ] 200
[2026-06-12 17:39:21,585.585 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:39:21,611.611 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 17:39:21,716.716 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 17:39:21,718.718 INFO    ] No camera update needed
[2026-06-12 17:39:21,719.719 INFO    ] Script finished. Safe exiting...
[2026-06-12 17:39:21,721.721 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 17:39:21,724.724 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 17:39:21,727.727 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 17:39:23,768.768 INFO    ] ================================================
[2026-06-12 17:39:23,783.783 INFO    ] Launching Daemon at Fri Jun 12 17:39:23 IST 2026
[2026-06-12 17:39:23,794.794 INFO    ] ================================================
[2026-06-12 17:39:24,141.141 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 17:39:24
[2026-06-12 17:39:24,451.451 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 17:39:24,582.582 INFO    ] Initializing speech engine...
[2026-06-12 17:39:24,590.590 INFO    ] 2026-06-12 17:39:24
[2026-06-12 17:39:24,804.804 INFO    ] 2026-06-12 17:39:24
[2026-06-12 17:39:24,833.833 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 17:39:25,020.020 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 17:39:25,030.030 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 17:39:25,153.153 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 17:39:25,215.215 INFO    ] time= 12/06/2026 17:39:25
[2026-06-12 17:39:25,253.253 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 17:39:25,255.255 INFO    ] Checking for existing commands in stream...
[2026-06-12 17:39:25,328.328 INFO    ] No existing commands found in stream
[2026-06-12 17:39:30,342.342 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 17:39:30,346.346 INFO    ] Waiting 2.91 seconds before fallback handling...
[2026-06-12 17:39:33,675.675 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 17:39:33,676.676 INFO    ] Checking for system updates...
[2026-06-12 17:39:33,697.697 INFO    ] 200
[2026-06-12 17:39:33,698.698 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:39:33,731.731 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 17:39:33,733.733 INFO    ] No update needed
[2026-06-12 17:39:33,734.734 INFO    ] Checking for camera pi updates...
[2026-06-12 17:39:33,753.753 INFO    ] 200
[2026-06-12 17:39:33,754.754 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:39:33,779.779 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 17:39:33,837.837 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 17:39:33,838.838 INFO    ] No camera update needed
[2026-06-12 17:39:33,840.840 INFO    ] Script finished. Safe exiting...
[2026-06-12 17:39:33,841.841 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 17:39:33,844.844 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 17:39:33,847.847 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 17:39:35,884.884 INFO    ] ================================================
[2026-06-12 17:39:35,898.898 INFO    ] Launching Daemon at Fri Jun 12 17:39:35 IST 2026
[2026-06-12 17:39:35,909.909 INFO    ] ================================================
[2026-06-12 17:39:36,320.320 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 17:39:36
[2026-06-12 17:39:36,663.663 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 17:39:36,821.821 INFO    ] Initializing speech engine...
[2026-06-12 17:39:36,826.826 INFO    ] 2026-06-12 17:39:36
[2026-06-12 17:39:37,033.033 INFO    ] 2026-06-12 17:39:37
[2026-06-12 17:39:37,062.062 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 17:39:37,246.246 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 17:39:37,255.255 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 17:39:37,415.415 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 17:39:37,454.454 INFO    ] time= 12/06/2026 17:39:37
[2026-06-12 17:39:37,476.476 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 17:39:37,482.482 INFO    ] Checking for existing commands in stream...
[2026-06-12 17:39:37,548.548 INFO    ] No existing commands found in stream
[2026-06-12 17:39:42,563.563 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 17:39:42,566.566 INFO    ] Waiting 0.72 seconds before fallback handling...
[2026-06-12 17:39:43,685.685 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 17:39:43,686.686 INFO    ] Checking for system updates...
[2026-06-12 17:39:43,707.707 INFO    ] 200
[2026-06-12 17:39:43,708.708 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:39:43,740.740 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 17:39:43,742.742 INFO    ] No update needed
[2026-06-12 17:39:43,743.743 INFO    ] Checking for camera pi updates...
[2026-06-12 17:39:43,762.762 INFO    ] 200
[2026-06-12 17:39:43,763.763 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:39:43,788.788 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 17:39:43,836.836 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 17:39:43,837.837 INFO    ] No camera update needed
[2026-06-12 17:39:43,838.838 INFO    ] Script finished. Safe exiting...
[2026-06-12 17:39:43,840.840 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 17:39:43,843.843 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 17:39:43,845.845 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 17:39:45,883.883 INFO    ] ================================================
[2026-06-12 17:39:45,898.898 INFO    ] Launching Daemon at Fri Jun 12 17:39:45 IST 2026
[2026-06-12 17:39:45,908.908 INFO    ] ================================================
[2026-06-12 17:39:46,300.300 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 17:39:46
[2026-06-12 17:39:46,628.628 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 17:39:46,762.762 INFO    ] Initializing speech engine...
[2026-06-12 17:39:46,776.776 INFO    ] 2026-06-12 17:39:46
[2026-06-12 17:39:46,980.980 INFO    ] 2026-06-12 17:39:46
[2026-06-12 17:39:47,008.008 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 17:39:47,198.198 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 17:39:47,207.207 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 17:39:47,337.337 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 17:39:47,392.392 INFO    ] time= 12/06/2026 17:39:47
[2026-06-12 17:39:47,411.411 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 17:39:47,433.433 INFO    ] Checking for existing commands in stream...
[2026-06-12 17:39:47,504.504 INFO    ] No existing commands found in stream
[2026-06-12 17:39:52,513.513 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 17:39:52,516.516 INFO    ] Waiting 2.73 seconds before fallback handling...
[2026-06-12 17:39:55,646.646 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 17:39:55,647.647 INFO    ] Checking for system updates...
[2026-06-12 17:39:55,668.668 INFO    ] 200
[2026-06-12 17:39:55,669.669 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:39:55,702.702 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 17:39:55,703.703 INFO    ] No update needed
[2026-06-12 17:39:55,704.704 INFO    ] Checking for camera pi updates...
[2026-06-12 17:39:55,725.725 INFO    ] 200
[2026-06-12 17:39:55,726.726 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:39:55,751.751 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 17:39:55,817.817 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 17:39:55,818.818 INFO    ] No camera update needed
[2026-06-12 17:39:55,819.819 INFO    ] Script finished. Safe exiting...
[2026-06-12 17:39:55,821.821 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 17:39:55,824.824 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 17:39:55,827.827 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 17:39:57,864.864 INFO    ] ================================================
[2026-06-12 17:39:57,879.879 INFO    ] Launching Daemon at Fri Jun 12 17:39:57 IST 2026
[2026-06-12 17:39:57,890.890 INFO    ] ================================================
[2026-06-12 17:39:58,280.280 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 17:39:58
[2026-06-12 17:39:58,601.601 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 17:39:58,735.735 INFO    ] Initializing speech engine...
[2026-06-12 17:39:58,743.743 INFO    ] 2026-06-12 17:39:58
[2026-06-12 17:39:58,953.953 INFO    ] 2026-06-12 17:39:58
[2026-06-12 17:39:58,981.981 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 17:39:59,141.141 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 17:39:59,173.173 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 17:39:59,351.351 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 17:39:59,385.385 INFO    ] time= 12/06/2026 17:39:59
[2026-06-12 17:39:59,432.432 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 17:39:59,463.463 INFO    ] Checking for existing commands in stream...
[2026-06-12 17:39:59,539.539 INFO    ] No existing commands found in stream
[2026-06-12 17:40:04,550.550 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 17:40:04,553.553 INFO    ] Waiting 1.46 seconds before fallback handling...
[2026-06-12 17:40:09,106.106 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 17:40:09,108.108 INFO    ] Checking for system updates...
[2026-06-12 17:40:09,144.144 INFO    ] 200
[2026-06-12 17:40:09,146.146 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:40:09,197.197 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 17:40:09,199.199 INFO    ] No update needed
[2026-06-12 17:40:09,200.200 INFO    ] Checking for camera pi updates...
[2026-06-12 17:40:09,220.220 INFO    ] 200
[2026-06-12 17:40:09,222.222 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:40:09,246.246 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 17:40:09,292.292 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 17:40:09,293.293 INFO    ] No camera update needed
[2026-06-12 17:40:09,294.294 INFO    ] Script finished. Safe exiting...
[2026-06-12 17:40:09,296.296 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 17:40:09,298.298 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 17:40:09,301.301 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 17:40:11,339.339 INFO    ] ================================================
[2026-06-12 17:40:11,354.354 INFO    ] Launching Daemon at Fri Jun 12 17:40:11 IST 2026
[2026-06-12 17:40:11,365.365 INFO    ] ================================================
[2026-06-12 17:40:11,710.710 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 17:40:11
[2026-06-12 17:40:12,028.028 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 17:40:12,173.173 INFO    ] Initializing speech engine...
[2026-06-12 17:40:12,179.179 INFO    ] 2026-06-12 17:40:12
[2026-06-12 17:40:12,382.382 INFO    ] 2026-06-12 17:40:12
[2026-06-12 17:40:12,412.412 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 17:40:12,596.596 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 17:40:12,605.605 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 17:40:12,734.734 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 17:40:12,798.798 INFO    ] time= 12/06/2026 17:40:12
[2026-06-12 17:40:12,826.826 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 17:40:12,833.833 INFO    ] Checking for existing commands in stream...
[2026-06-12 17:40:12,900.900 INFO    ] No existing commands found in stream
[2026-06-12 17:40:17,909.909 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 17:40:17,912.912 INFO    ] Waiting 3.29 seconds before fallback handling...
[2026-06-12 17:40:21,575.575 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 17:40:21,576.576 INFO    ] Checking for system updates...
[2026-06-12 17:40:21,597.597 INFO    ] 200
[2026-06-12 17:40:21,598.598 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:40:21,633.633 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 17:40:21,634.634 INFO    ] No update needed
[2026-06-12 17:40:21,636.636 INFO    ] Checking for camera pi updates...
[2026-06-12 17:40:21,662.662 INFO    ] 200
[2026-06-12 17:40:21,663.663 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:40:21,688.688 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 17:40:21,729.729 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 17:40:21,731.731 INFO    ] No camera update needed
[2026-06-12 17:40:21,732.732 INFO    ] Script finished. Safe exiting...
[2026-06-12 17:40:21,733.733 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 17:40:21,737.737 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 17:40:21,740.740 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 17:40:23,779.779 INFO    ] ================================================
[2026-06-12 17:40:23,795.795 INFO    ] Launching Daemon at Fri Jun 12 17:40:23 IST 2026
[2026-06-12 17:40:23,806.806 INFO    ] ================================================
[2026-06-12 17:40:24,156.156 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 17:40:24
[2026-06-12 17:40:24,468.468 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 17:40:24,596.596 INFO    ] Initializing speech engine...
[2026-06-12 17:40:24,601.601 INFO    ] 2026-06-12 17:40:24
[2026-06-12 17:40:24,817.817 INFO    ] 2026-06-12 17:40:24
[2026-06-12 17:40:24,846.846 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 17:40:25,030.030 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 17:40:25,039.039 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 17:40:25,189.189 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 17:40:25,235.235 INFO    ] time= 12/06/2026 17:40:25
[2026-06-12 17:40:25,260.260 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 17:40:25,262.262 INFO    ] Checking for existing commands in stream...
[2026-06-12 17:40:25,333.333 INFO    ] No existing commands found in stream
[2026-06-12 17:40:30,347.347 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 17:40:30,349.349 INFO    ] Waiting 3.52 seconds before fallback handling...
[2026-06-12 17:40:34,279.279 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 17:40:34,280.280 INFO    ] Checking for system updates...
[2026-06-12 17:40:34,302.302 INFO    ] 200
[2026-06-12 17:40:34,304.304 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:40:34,336.336 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 17:40:34,337.337 INFO    ] No update needed
[2026-06-12 17:40:34,338.338 INFO    ] Checking for camera pi updates...
[2026-06-12 17:40:34,357.357 INFO    ] 200
[2026-06-12 17:40:34,358.358 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:40:34,384.384 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 17:40:34,423.423 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 17:40:34,425.425 INFO    ] No camera update needed
[2026-06-12 17:40:34,426.426 INFO    ] Script finished. Safe exiting...
[2026-06-12 17:40:34,427.427 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 17:40:34,430.430 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 17:40:34,433.433 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 17:40:36,471.471 INFO    ] ================================================
[2026-06-12 17:40:36,486.486 INFO    ] Launching Daemon at Fri Jun 12 17:40:36 IST 2026
[2026-06-12 17:40:36,497.497 INFO    ] ================================================
[2026-06-12 17:40:36,858.858 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 17:40:36
[2026-06-12 17:40:37,204.204 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 17:40:37,357.357 INFO    ] Initializing speech engine...
[2026-06-12 17:40:37,362.362 INFO    ] 2026-06-12 17:40:37
[2026-06-12 17:40:37,562.562 INFO    ] 2026-06-12 17:40:37
[2026-06-12 17:40:37,591.591 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 17:40:37,773.773 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 17:40:37,782.782 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 17:40:37,904.904 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 17:40:37,959.959 INFO    ] time= 12/06/2026 17:40:37
[2026-06-12 17:40:37,993.993 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 17:40:38,003.003 INFO    ] Checking for existing commands in stream...
[2026-06-12 17:40:38,074.074 INFO    ] No existing commands found in stream
[2026-06-12 17:40:43,088.088 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 17:40:43,091.091 INFO    ] Waiting 1.45 seconds before fallback handling...
[2026-06-12 17:40:44,924.924 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 17:40:44,925.925 INFO    ] Checking for system updates...
[2026-06-12 17:40:44,951.951 INFO    ] 200
[2026-06-12 17:40:44,952.952 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:40:44,982.982 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 17:40:44,983.983 INFO    ] No update needed
[2026-06-12 17:40:44,985.985 INFO    ] Checking for camera pi updates...
[2026-06-12 17:40:45,004.004 INFO    ] 200
[2026-06-12 17:40:45,005.005 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:40:45,031.031 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 17:40:45,080.080 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 17:40:45,081.081 INFO    ] No camera update needed
[2026-06-12 17:40:45,082.082 INFO    ] Script finished. Safe exiting...
[2026-06-12 17:40:45,083.083 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 17:40:45,086.086 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 17:40:45,089.089 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 17:40:47,130.130 INFO    ] ================================================
[2026-06-12 17:40:47,145.145 INFO    ] Launching Daemon at Fri Jun 12 17:40:47 IST 2026
[2026-06-12 17:40:47,157.157 INFO    ] ================================================
[2026-06-12 17:40:47,541.541 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 17:40:47
[2026-06-12 17:40:47,885.885 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 17:40:48,037.037 INFO    ] Initializing speech engine...
[2026-06-12 17:40:48,043.043 INFO    ] 2026-06-12 17:40:48
[2026-06-12 17:40:48,258.258 INFO    ] 2026-06-12 17:40:48
[2026-06-12 17:40:48,287.287 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 17:40:48,475.475 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 17:40:48,485.485 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 17:40:48,632.632 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 17:40:48,686.686 INFO    ] time= 12/06/2026 17:40:48
[2026-06-12 17:40:48,710.710 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 17:40:48,715.715 INFO    ] Checking for existing commands in stream...
[2026-06-12 17:40:48,784.784 INFO    ] No existing commands found in stream
[2026-06-12 17:40:53,803.803 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 17:40:53,806.806 INFO    ] Waiting 0.37 seconds before fallback handling...
[2026-06-12 17:40:54,544.544 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 17:40:54,545.545 INFO    ] Checking for system updates...
[2026-06-12 17:40:54,568.568 INFO    ] 200
[2026-06-12 17:40:54,570.570 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:40:54,601.601 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 17:40:54,602.602 INFO    ] No update needed
[2026-06-12 17:40:54,604.604 INFO    ] Checking for camera pi updates...
[2026-06-12 17:40:54,625.625 INFO    ] 200
[2026-06-12 17:40:54,627.627 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:40:54,652.652 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 17:40:54,694.694 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 17:40:54,695.695 INFO    ] No camera update needed
[2026-06-12 17:40:54,697.697 INFO    ] Script finished. Safe exiting...
[2026-06-12 17:40:54,698.698 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 17:40:54,701.701 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 17:40:54,704.704 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 17:40:56,744.744 INFO    ] ================================================
[2026-06-12 17:40:56,760.760 INFO    ] Launching Daemon at Fri Jun 12 17:40:56 IST 2026
[2026-06-12 17:40:56,772.772 INFO    ] ================================================
[2026-06-12 17:40:57,146.146 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 17:40:57
[2026-06-12 17:40:57,493.493 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 17:40:57,640.640 INFO    ] Initializing speech engine...
[2026-06-12 17:40:57,649.649 INFO    ] 2026-06-12 17:40:57
[2026-06-12 17:40:57,861.861 INFO    ] 2026-06-12 17:40:57
[2026-06-12 17:40:57,890.890 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 17:40:58,076.076 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 17:40:58,086.086 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 17:40:58,215.215 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 17:40:58,284.284 INFO    ] time= 12/06/2026 17:40:58
[2026-06-12 17:40:58,307.307 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 17:40:58,313.313 INFO    ] Checking for existing commands in stream...
[2026-06-12 17:40:58,381.381 INFO    ] No existing commands found in stream
[2026-06-12 17:41:03,391.391 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 17:41:03,394.394 INFO    ] Waiting 3.82 seconds before fallback handling...
[2026-06-12 17:41:07,617.617 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 17:41:07,619.619 INFO    ] Checking for system updates...
[2026-06-12 17:41:07,641.641 INFO    ] 200
[2026-06-12 17:41:07,643.643 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:41:07,677.677 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 17:41:07,678.678 INFO    ] No update needed
[2026-06-12 17:41:07,679.679 INFO    ] Checking for camera pi updates...
[2026-06-12 17:41:07,701.701 INFO    ] 200
[2026-06-12 17:41:07,703.703 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:41:07,728.728 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 17:41:07,767.767 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 17:41:07,768.768 INFO    ] No camera update needed
[2026-06-12 17:41:07,770.770 INFO    ] Script finished. Safe exiting...
[2026-06-12 17:41:07,771.771 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 17:41:07,775.775 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 17:41:07,778.778 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 17:41:09,816.816 INFO    ] ================================================
[2026-06-12 17:41:09,832.832 INFO    ] Launching Daemon at Fri Jun 12 17:41:09 IST 2026
[2026-06-12 17:41:09,843.843 INFO    ] ================================================
[2026-06-12 17:41:10,184.184 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 17:41:10
[2026-06-12 17:41:10,496.496 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 17:41:10,628.628 INFO    ] Initializing speech engine...
[2026-06-12 17:41:10,636.636 INFO    ] 2026-06-12 17:41:10
[2026-06-12 17:41:10,850.850 INFO    ] 2026-06-12 17:41:10
[2026-06-12 17:41:10,880.880 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 17:41:11,066.066 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 17:41:11,076.076 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 17:41:11,218.218 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 17:41:11,276.276 INFO    ] time= 12/06/2026 17:41:11
[2026-06-12 17:41:11,302.302 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 17:41:11,309.309 INFO    ] Checking for existing commands in stream...
[2026-06-12 17:41:11,378.378 INFO    ] No existing commands found in stream
[2026-06-12 17:41:16,388.388 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 17:41:16,392.392 INFO    ] Waiting 3.26 seconds before fallback handling...
[2026-06-12 17:41:21,359.359 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 17:41:21,362.362 INFO    ] Checking for system updates...
[2026-06-12 17:41:21,403.403 INFO    ] 200
[2026-06-12 17:41:21,406.406 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:41:21,456.456 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 17:41:21,459.459 INFO    ] No update needed
[2026-06-12 17:41:21,461.461 INFO    ] Checking for camera pi updates...
[2026-06-12 17:41:21,487.487 INFO    ] 200
[2026-06-12 17:41:21,489.489 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:41:21,516.516 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 17:41:21,558.558 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 17:41:21,560.560 INFO    ] No camera update needed
[2026-06-12 17:41:21,561.561 INFO    ] Script finished. Safe exiting...
[2026-06-12 17:41:21,563.563 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 17:41:21,566.566 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 17:41:21,569.569 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 17:41:23,611.611 INFO    ] ================================================
[2026-06-12 17:41:23,627.627 INFO    ] Launching Daemon at Fri Jun 12 17:41:23 IST 2026
[2026-06-12 17:41:23,637.637 INFO    ] ================================================
[2026-06-12 17:41:24,006.006 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 17:41:24
[2026-06-12 17:41:24,317.317 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 17:41:24,459.459 INFO    ] Initializing speech engine...
[2026-06-12 17:41:24,464.464 INFO    ] 2026-06-12 17:41:24
[2026-06-12 17:41:24,665.665 INFO    ] 2026-06-12 17:41:24
[2026-06-12 17:41:24,694.694 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 17:41:24,877.877 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 17:41:24,880.880 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 17:41:25,081.081 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 17:41:25,106.106 INFO    ] time= 12/06/2026 17:41:25
[2026-06-12 17:41:25,111.111 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 17:41:25,113.113 INFO    ] Checking for existing commands in stream...
[2026-06-12 17:41:25,179.179 INFO    ] No existing commands found in stream
[2026-06-12 17:41:30,188.188 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 17:41:30,191.191 INFO    ] Waiting 0.56 seconds before fallback handling...
[2026-06-12 17:41:31,144.144 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 17:41:31,145.145 INFO    ] Checking for system updates...
[2026-06-12 17:41:31,166.166 INFO    ] 200
[2026-06-12 17:41:31,168.168 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:41:31,200.200 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 17:41:31,202.202 INFO    ] No update needed
[2026-06-12 17:41:31,203.203 INFO    ] Checking for camera pi updates...
[2026-06-12 17:41:31,222.222 INFO    ] 200
[2026-06-12 17:41:31,223.223 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:41:31,246.246 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 17:41:31,282.282 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 17:41:31,284.284 INFO    ] No camera update needed
[2026-06-12 17:41:31,285.285 INFO    ] Script finished. Safe exiting...
[2026-06-12 17:41:31,286.286 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 17:41:31,289.289 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 17:41:31,292.292 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 17:41:33,326.326 INFO    ] ================================================
[2026-06-12 17:41:33,342.342 INFO    ] Launching Daemon at Fri Jun 12 17:41:33 IST 2026
[2026-06-12 17:41:33,353.353 INFO    ] ================================================
[2026-06-12 17:41:33,713.713 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 17:41:33
[2026-06-12 17:41:34,025.025 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 17:41:34,167.167 INFO    ] Initializing speech engine...
[2026-06-12 17:41:34,172.172 INFO    ] 2026-06-12 17:41:34
[2026-06-12 17:41:34,377.377 INFO    ] 2026-06-12 17:41:34
[2026-06-12 17:41:34,406.406 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 17:41:34,591.591 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 17:41:34,600.600 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 17:41:34,724.724 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 17:41:34,785.785 INFO    ] time= 12/06/2026 17:41:34
[2026-06-12 17:41:34,819.819 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 17:41:34,824.824 INFO    ] Checking for existing commands in stream...
[2026-06-12 17:41:34,897.897 INFO    ] No existing commands found in stream
[2026-06-12 17:41:39,921.921 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 17:41:39,924.924 INFO    ] Waiting 0.09 seconds before fallback handling...
[2026-06-12 17:41:40,426.426 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 17:41:40,427.427 INFO    ] Checking for system updates...
[2026-06-12 17:41:40,451.451 INFO    ] 200
[2026-06-12 17:41:40,452.452 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:41:40,485.485 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 17:41:40,486.486 INFO    ] No update needed
[2026-06-12 17:41:40,488.488 INFO    ] Checking for camera pi updates...
[2026-06-12 17:41:40,508.508 INFO    ] 200
[2026-06-12 17:41:40,509.509 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:41:40,535.535 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 17:41:40,613.613 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 17:41:40,615.615 INFO    ] No camera update needed
[2026-06-12 17:41:40,616.616 INFO    ] Script finished. Safe exiting...
[2026-06-12 17:41:40,617.617 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 17:41:40,621.621 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 17:41:40,624.624 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 17:41:42,662.662 INFO    ] ================================================
[2026-06-12 17:41:42,677.677 INFO    ] Launching Daemon at Fri Jun 12 17:41:42 IST 2026
[2026-06-12 17:41:42,688.688 INFO    ] ================================================
[2026-06-12 17:41:43,036.036 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 17:41:43
[2026-06-12 17:41:43,348.348 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 17:41:43,478.478 INFO    ] Initializing speech engine...
[2026-06-12 17:41:43,487.487 INFO    ] 2026-06-12 17:41:43
[2026-06-12 17:41:43,702.702 INFO    ] 2026-06-12 17:41:43
[2026-06-12 17:41:43,731.731 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 17:41:43,917.917 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 17:41:43,921.921 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 17:41:44,055.055 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 17:41:44,126.126 INFO    ] time= 12/06/2026 17:41:44
[2026-06-12 17:41:44,151.151 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 17:41:44,152.152 INFO    ] Checking for existing commands in stream...
[2026-06-12 17:41:44,224.224 INFO    ] No existing commands found in stream
[2026-06-12 17:41:49,233.233 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 17:41:49,236.236 INFO    ] Waiting 1.61 seconds before fallback handling...
[2026-06-12 17:41:51,197.197 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 17:41:51,199.199 INFO    ] Checking for system updates...
[2026-06-12 17:41:51,221.221 INFO    ] 200
[2026-06-12 17:41:51,222.222 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:41:51,255.255 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 17:41:51,256.256 INFO    ] No update needed
[2026-06-12 17:41:51,258.258 INFO    ] Checking for camera pi updates...
[2026-06-12 17:41:51,277.277 INFO    ] 200
[2026-06-12 17:41:51,278.278 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:41:51,304.304 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 17:41:51,350.350 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 17:41:51,352.352 INFO    ] No camera update needed
[2026-06-12 17:41:51,353.353 INFO    ] Script finished. Safe exiting...
[2026-06-12 17:41:51,354.354 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 17:41:51,357.357 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 17:41:51,360.360 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 17:41:53,397.397 INFO    ] ================================================
[2026-06-12 17:41:53,414.414 INFO    ] Launching Daemon at Fri Jun 12 17:41:53 IST 2026
[2026-06-12 17:41:53,425.425 INFO    ] ================================================
[2026-06-12 17:41:53,769.769 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 17:41:53
[2026-06-12 17:41:54,088.088 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 17:41:54,231.231 INFO    ] Initializing speech engine...
[2026-06-12 17:41:54,236.236 INFO    ] 2026-06-12 17:41:54
[2026-06-12 17:41:54,441.441 INFO    ] 2026-06-12 17:41:54
[2026-06-12 17:41:54,469.469 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 17:41:54,653.653 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 17:41:54,662.662 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 17:41:54,790.790 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 17:41:54,854.854 INFO    ] time= 12/06/2026 17:41:54
[2026-06-12 17:41:54,881.881 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 17:41:54,887.887 INFO    ] Checking for existing commands in stream...
[2026-06-12 17:41:54,977.977 INFO    ] No existing commands found in stream
[2026-06-12 17:41:59,986.986 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 17:41:59,989.989 INFO    ] Waiting 0.31 seconds before fallback handling...
[2026-06-12 17:42:00,685.685 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 17:42:00,687.687 INFO    ] Checking for system updates...
[2026-06-12 17:42:00,707.707 INFO    ] 200
[2026-06-12 17:42:00,708.708 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:42:00,741.741 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 17:42:00,742.742 INFO    ] No update needed
[2026-06-12 17:42:00,744.744 INFO    ] Checking for camera pi updates...
[2026-06-12 17:42:00,764.764 INFO    ] 200
[2026-06-12 17:42:00,766.766 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:42:00,789.789 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 17:42:00,842.842 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 17:42:00,843.843 INFO    ] No camera update needed
[2026-06-12 17:42:00,845.845 INFO    ] Script finished. Safe exiting...
[2026-06-12 17:42:00,846.846 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 17:42:00,849.849 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 17:42:00,852.852 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 17:42:02,884.884 INFO    ] ================================================
[2026-06-12 17:42:02,901.901 INFO    ] Launching Daemon at Fri Jun 12 17:42:02 IST 2026
[2026-06-12 17:42:02,912.912 INFO    ] ================================================
[2026-06-12 17:42:03,263.263 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 17:42:03
[2026-06-12 17:42:03,576.576 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 17:42:03,720.720 INFO    ] Initializing speech engine...
[2026-06-12 17:42:03,724.724 INFO    ] 2026-06-12 17:42:03
[2026-06-12 17:42:03,931.931 INFO    ] 2026-06-12 17:42:03
[2026-06-12 17:42:03,964.964 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 17:42:04,097.097 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 17:42:04,146.146 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 17:42:04,310.310 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 17:42:04,367.367 INFO    ] time= 12/06/2026 17:42:04
[2026-06-12 17:42:04,413.413 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 17:42:04,419.419 INFO    ] Checking for existing commands in stream...
[2026-06-12 17:42:04,495.495 INFO    ] No existing commands found in stream
[2026-06-12 17:42:09,506.506 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 17:42:09,509.509 INFO    ] Waiting 1.72 seconds before fallback handling...
[2026-06-12 17:42:11,619.619 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 17:42:11,620.620 INFO    ] Checking for system updates...
[2026-06-12 17:42:11,641.641 INFO    ] 200
[2026-06-12 17:42:11,642.642 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:42:11,672.672 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 17:42:11,674.674 INFO    ] No update needed
[2026-06-12 17:42:11,675.675 INFO    ] Checking for camera pi updates...
[2026-06-12 17:42:11,696.696 INFO    ] 200
[2026-06-12 17:42:11,697.697 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:42:11,720.720 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 17:42:11,861.861 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 17:42:11,863.863 INFO    ] No camera update needed
[2026-06-12 17:42:11,864.864 INFO    ] Script finished. Safe exiting...
[2026-06-12 17:42:11,865.865 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 17:42:11,868.868 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 17:42:11,871.871 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 17:42:13,909.909 INFO    ] ================================================
[2026-06-12 17:42:13,924.924 INFO    ] Launching Daemon at Fri Jun 12 17:42:13 IST 2026
[2026-06-12 17:42:13,936.936 INFO    ] ================================================
[2026-06-12 17:42:14,316.316 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 17:42:14
[2026-06-12 17:42:14,660.660 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 17:42:14,797.797 INFO    ] Initializing speech engine...
[2026-06-12 17:42:14,810.810 INFO    ] 2026-06-12 17:42:14
[2026-06-12 17:42:15,016.016 INFO    ] 2026-06-12 17:42:14
[2026-06-12 17:42:15,046.046 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 17:42:15,228.228 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 17:42:15,238.238 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 17:42:15,359.359 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 17:42:15,410.410 INFO    ] time= 12/06/2026 17:42:15
[2026-06-12 17:42:15,453.453 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 17:42:15,458.458 INFO    ] Checking for existing commands in stream...
[2026-06-12 17:42:15,529.529 INFO    ] No existing commands found in stream
[2026-06-12 17:42:20,538.538 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 17:42:20,541.541 INFO    ] Waiting 3.78 seconds before fallback handling...
[2026-06-12 17:42:24,698.698 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 17:42:24,700.700 INFO    ] Checking for system updates...
[2026-06-12 17:42:24,723.723 INFO    ] 200
[2026-06-12 17:42:24,725.725 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:42:24,760.760 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 17:42:24,761.761 INFO    ] No update needed
[2026-06-12 17:42:24,763.763 INFO    ] Checking for camera pi updates...
[2026-06-12 17:42:24,786.786 INFO    ] 200
[2026-06-12 17:42:24,788.788 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:42:24,816.816 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 17:42:24,858.858 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 17:42:24,860.860 INFO    ] No camera update needed
[2026-06-12 17:42:24,861.861 INFO    ] Script finished. Safe exiting...
[2026-06-12 17:42:24,863.863 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 17:42:24,866.866 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 17:42:24,869.869 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 17:42:26,909.909 INFO    ] ================================================
[2026-06-12 17:42:26,925.925 INFO    ] Launching Daemon at Fri Jun 12 17:42:26 IST 2026
[2026-06-12 17:42:26,936.936 INFO    ] ================================================
[2026-06-12 17:42:27,270.270 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 17:42:27
[2026-06-12 17:42:27,582.582 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 17:42:27,712.712 INFO    ] Initializing speech engine...
[2026-06-12 17:42:27,720.720 INFO    ] 2026-06-12 17:42:27
[2026-06-12 17:42:27,930.930 INFO    ] 2026-06-12 17:42:27
[2026-06-12 17:42:27,960.960 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 17:42:28,143.143 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 17:42:28,152.152 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 17:42:28,297.297 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 17:42:28,349.349 INFO    ] time= 12/06/2026 17:42:28
[2026-06-12 17:42:28,372.372 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 17:42:28,378.378 INFO    ] Checking for existing commands in stream...
[2026-06-12 17:42:28,444.444 INFO    ] No existing commands found in stream
[2026-06-12 17:42:33,453.453 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 17:42:33,456.456 INFO    ] Waiting 0.52 seconds before fallback handling...
[2026-06-12 17:42:34,338.338 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 17:42:34,339.339 INFO    ] Checking for system updates...
[2026-06-12 17:42:34,361.361 INFO    ] 200
[2026-06-12 17:42:34,363.363 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:42:34,395.395 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 17:42:34,396.396 INFO    ] No update needed
[2026-06-12 17:42:34,397.397 INFO    ] Checking for camera pi updates...
[2026-06-12 17:42:34,416.416 INFO    ] 200
[2026-06-12 17:42:34,418.418 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:42:34,441.441 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 17:42:34,490.490 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 17:42:34,491.491 INFO    ] No camera update needed
[2026-06-12 17:42:34,493.493 INFO    ] Script finished. Safe exiting...
[2026-06-12 17:42:34,494.494 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 17:42:34,497.497 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 17:42:34,499.499 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 17:42:36,537.537 INFO    ] ================================================
[2026-06-12 17:42:36,552.552 INFO    ] Launching Daemon at Fri Jun 12 17:42:36 IST 2026
[2026-06-12 17:42:36,597.597 INFO    ] ================================================
[2026-06-12 17:42:36,944.944 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 17:42:36
[2026-06-12 17:42:37,257.257 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 17:42:37,387.387 INFO    ] Initializing speech engine...
[2026-06-12 17:42:37,391.391 INFO    ] 2026-06-12 17:42:37
[2026-06-12 17:42:37,611.611 INFO    ] 2026-06-12 17:42:37
[2026-06-12 17:42:37,640.640 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 17:42:37,769.769 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 17:42:37,828.828 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 17:42:37,968.968 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 17:42:38,022.022 INFO    ] time= 12/06/2026 17:42:37
[2026-06-12 17:42:38,058.058 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 17:42:38,063.063 INFO    ] Checking for existing commands in stream...
[2026-06-12 17:42:38,136.136 INFO    ] No existing commands found in stream
[2026-06-12 17:42:43,150.150 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 17:42:43,153.153 INFO    ] Waiting 3.48 seconds before fallback handling...
[2026-06-12 17:42:47,021.021 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 17:42:47,022.022 INFO    ] Checking for system updates...
[2026-06-12 17:42:47,043.043 INFO    ] 200
[2026-06-12 17:42:47,045.045 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:42:47,077.077 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 17:42:47,079.079 INFO    ] No update needed
[2026-06-12 17:42:47,080.080 INFO    ] Checking for camera pi updates...
[2026-06-12 17:42:47,102.102 INFO    ] 200
[2026-06-12 17:42:47,104.104 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:42:47,129.129 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 17:42:47,157.157 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 17:42:47,159.159 INFO    ] No camera update needed
[2026-06-12 17:42:47,160.160 INFO    ] Script finished. Safe exiting...
[2026-06-12 17:42:47,162.162 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 17:42:47,165.165 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 17:42:47,168.168 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 17:42:49,207.207 INFO    ] ================================================
[2026-06-12 17:42:49,223.223 INFO    ] Launching Daemon at Fri Jun 12 17:42:49 IST 2026
[2026-06-12 17:42:49,234.234 INFO    ] ================================================
[2026-06-12 17:42:49,595.595 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 17:42:49
[2026-06-12 17:42:49,909.909 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 17:42:50,042.042 INFO    ] Initializing speech engine...
[2026-06-12 17:42:50,045.045 INFO    ] 2026-06-12 17:42:50
[2026-06-12 17:42:50,277.277 INFO    ] 2026-06-12 17:42:50
[2026-06-12 17:42:50,309.309 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 17:42:50,443.443 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 17:42:50,506.506 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 17:42:50,644.644 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 17:42:50,698.698 INFO    ] time= 12/06/2026 17:42:50
[2026-06-12 17:42:50,736.736 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 17:42:50,738.738 INFO    ] Checking for existing commands in stream...
[2026-06-12 17:42:50,838.838 INFO    ] No existing commands found in stream
[2026-06-12 17:42:55,848.848 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 17:42:55,851.851 INFO    ] Waiting 2.05 seconds before fallback handling...
[2026-06-12 17:42:58,270.270 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 17:42:58,272.272 INFO    ] Checking for system updates...
[2026-06-12 17:42:58,292.292 INFO    ] 200
[2026-06-12 17:42:58,293.293 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:42:58,325.325 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 17:42:58,327.327 INFO    ] No update needed
[2026-06-12 17:42:58,328.328 INFO    ] Checking for camera pi updates...
[2026-06-12 17:42:58,349.349 INFO    ] 200
[2026-06-12 17:42:58,350.350 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:42:58,373.373 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 17:42:58,441.441 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 17:42:58,442.442 INFO    ] No camera update needed
[2026-06-12 17:42:58,444.444 INFO    ] Script finished. Safe exiting...
[2026-06-12 17:42:58,445.445 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 17:42:58,448.448 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 17:42:58,451.451 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 17:43:00,489.489 INFO    ] ================================================
[2026-06-12 17:43:00,505.505 INFO    ] Launching Daemon at Fri Jun 12 17:43:00 IST 2026
[2026-06-12 17:43:00,516.516 INFO    ] ================================================
[2026-06-12 17:43:00,857.857 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 17:43:00
[2026-06-12 17:43:01,168.168 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 17:43:01,430.430 INFO    ] Initializing speech engine...
[2026-06-12 17:43:01,436.436 INFO    ] 2026-06-12 17:43:01
[2026-06-12 17:43:01,742.742 INFO    ] 2026-06-12 17:43:01
[2026-06-12 17:43:01,786.786 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 17:43:01,962.962 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 17:43:01,974.974 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 17:43:02,149.149 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 17:43:02,193.193 INFO    ] time= 12/06/2026 17:43:02
[2026-06-12 17:43:02,266.266 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 17:43:02,268.268 INFO    ] Checking for existing commands in stream...
[2026-06-12 17:43:02,348.348 INFO    ] No existing commands found in stream
[2026-06-12 17:43:07,357.357 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 17:43:07,360.360 INFO    ] Waiting 3.26 seconds before fallback handling...
[2026-06-12 17:43:10,982.982 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 17:43:10,984.984 INFO    ] Checking for system updates...
[2026-06-12 17:43:11,005.005 INFO    ] 200
[2026-06-12 17:43:11,007.007 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:43:11,038.038 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 17:43:11,039.039 INFO    ] No update needed
[2026-06-12 17:43:11,041.041 INFO    ] Checking for camera pi updates...
[2026-06-12 17:43:11,061.061 INFO    ] 200
[2026-06-12 17:43:11,062.062 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:43:11,085.085 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 17:43:11,134.134 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 17:43:11,135.135 INFO    ] No camera update needed
[2026-06-12 17:43:11,136.136 INFO    ] Script finished. Safe exiting...
[2026-06-12 17:43:11,137.137 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 17:43:11,140.140 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 17:43:11,143.143 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 17:43:13,182.182 INFO    ] ================================================
[2026-06-12 17:43:13,197.197 INFO    ] Launching Daemon at Fri Jun 12 17:43:13 IST 2026
[2026-06-12 17:43:13,207.207 INFO    ] ================================================
[2026-06-12 17:43:13,553.553 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 17:43:13
[2026-06-12 17:43:13,868.868 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 17:43:13,999.999 INFO    ] Initializing speech engine...
[2026-06-12 17:43:14,002.002 INFO    ] 2026-06-12 17:43:14
[2026-06-12 17:43:14,221.221 INFO    ] 2026-06-12 17:43:14
[2026-06-12 17:43:14,250.250 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 17:43:14,373.373 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 17:43:14,437.437 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 17:43:14,569.569 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 17:43:14,625.625 INFO    ] time= 12/06/2026 17:43:14
[2026-06-12 17:43:14,668.668 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 17:43:14,670.670 INFO    ] Checking for existing commands in stream...
[2026-06-12 17:43:14,742.742 INFO    ] No existing commands found in stream
[2026-06-12 17:43:19,751.751 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 17:43:19,754.754 INFO    ] Waiting 2.92 seconds before fallback handling...
[2026-06-12 17:43:23,051.051 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 17:43:23,052.052 INFO    ] Checking for system updates...
[2026-06-12 17:43:23,073.073 INFO    ] 200
[2026-06-12 17:43:23,075.075 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:43:23,104.104 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 17:43:23,105.105 INFO    ] No update needed
[2026-06-12 17:43:23,107.107 INFO    ] Checking for camera pi updates...
[2026-06-12 17:43:23,126.126 INFO    ] 200
[2026-06-12 17:43:23,127.127 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:43:23,153.153 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 17:43:23,196.196 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 17:43:23,197.197 INFO    ] No camera update needed
[2026-06-12 17:43:23,198.198 INFO    ] Script finished. Safe exiting...
[2026-06-12 17:43:23,199.199 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 17:43:23,202.202 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 17:43:23,205.205 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 17:43:25,244.244 INFO    ] ================================================
[2026-06-12 17:43:25,259.259 INFO    ] Launching Daemon at Fri Jun 12 17:43:25 IST 2026
[2026-06-12 17:43:25,269.269 INFO    ] ================================================
[2026-06-12 17:43:25,593.593 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 17:43:25
[2026-06-12 17:43:25,909.909 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 17:43:26,050.050 INFO    ] Initializing speech engine...
[2026-06-12 17:43:26,058.058 INFO    ] 2026-06-12 17:43:26
[2026-06-12 17:43:26,275.275 INFO    ] 2026-06-12 17:43:26
[2026-06-12 17:43:26,306.306 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 17:43:26,502.502 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 17:43:26,506.506 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 17:43:26,652.652 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 17:43:26,711.711 INFO    ] time= 12/06/2026 17:43:26
[2026-06-12 17:43:26,733.733 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 17:43:26,750.750 INFO    ] Checking for existing commands in stream...
[2026-06-12 17:43:26,825.825 INFO    ] No existing commands found in stream
[2026-06-12 17:43:31,831.831 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 17:43:31,833.833 INFO    ] Waiting 0.62 seconds before fallback handling...
[2026-06-12 17:43:32,834.834 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 17:43:32,836.836 INFO    ] Checking for system updates...
[2026-06-12 17:43:32,857.857 INFO    ] 200
[2026-06-12 17:43:32,859.859 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:43:32,890.890 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 17:43:32,892.892 INFO    ] No update needed
[2026-06-12 17:43:32,893.893 INFO    ] Checking for camera pi updates...
[2026-06-12 17:43:32,912.912 INFO    ] 200
[2026-06-12 17:43:32,913.913 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:43:32,939.939 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 17:43:32,987.987 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 17:43:32,988.988 INFO    ] No camera update needed
[2026-06-12 17:43:32,990.990 INFO    ] Script finished. Safe exiting...
[2026-06-12 17:43:32,991.991 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 17:43:32,994.994 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 17:43:32,997.997 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 17:43:35,034.034 INFO    ] ================================================
[2026-06-12 17:43:35,049.049 INFO    ] Launching Daemon at Fri Jun 12 17:43:35 IST 2026
[2026-06-12 17:43:35,060.060 INFO    ] ================================================
[2026-06-12 17:43:35,407.407 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 17:43:35
[2026-06-12 17:43:35,742.742 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 17:43:35,882.882 INFO    ] Initializing speech engine...
[2026-06-12 17:43:35,895.895 INFO    ] 2026-06-12 17:43:35
[2026-06-12 17:43:36,106.106 INFO    ] 2026-06-12 17:43:36
[2026-06-12 17:43:36,135.135 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 17:43:36,320.320 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 17:43:36,329.329 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 17:43:36,475.475 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 17:43:36,528.528 INFO    ] time= 12/06/2026 17:43:36
[2026-06-12 17:43:36,551.551 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 17:43:36,558.558 INFO    ] Checking for existing commands in stream...
[2026-06-12 17:43:36,624.624 INFO    ] No existing commands found in stream
[2026-06-12 17:43:41,639.639 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 17:43:41,642.642 INFO    ] Waiting 2.57 seconds before fallback handling...
[2026-06-12 17:43:44,587.587 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 17:43:44,589.589 INFO    ] Checking for system updates...
[2026-06-12 17:43:44,609.609 INFO    ] 200
[2026-06-12 17:43:44,611.611 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:43:44,642.642 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 17:43:44,644.644 INFO    ] No update needed
[2026-06-12 17:43:44,645.645 INFO    ] Checking for camera pi updates...
[2026-06-12 17:43:44,665.665 INFO    ] 200
[2026-06-12 17:43:44,666.666 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:43:44,690.690 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 17:43:44,730.730 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 17:43:44,731.731 INFO    ] No camera update needed
[2026-06-12 17:43:44,732.732 INFO    ] Script finished. Safe exiting...
[2026-06-12 17:43:44,734.734 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 17:43:44,737.737 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 17:43:44,739.739 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 17:43:46,780.780 INFO    ] ================================================
[2026-06-12 17:43:46,795.795 INFO    ] Launching Daemon at Fri Jun 12 17:43:46 IST 2026
[2026-06-12 17:43:46,806.806 INFO    ] ================================================
[2026-06-12 17:43:47,166.166 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 17:43:47
[2026-06-12 17:43:47,484.484 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 17:43:47,615.615 INFO    ] Initializing speech engine...
[2026-06-12 17:43:47,623.623 INFO    ] 2026-06-12 17:43:47
[2026-06-12 17:43:47,835.835 INFO    ] 2026-06-12 17:43:47
[2026-06-12 17:43:47,865.865 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 17:43:48,049.049 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 17:43:48,058.058 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 17:43:48,185.185 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 17:43:48,251.251 INFO    ] time= 12/06/2026 17:43:48
[2026-06-12 17:43:48,278.278 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 17:43:48,284.284 INFO    ] Checking for existing commands in stream...
[2026-06-12 17:43:48,351.351 INFO    ] No existing commands found in stream
[2026-06-12 17:43:53,362.362 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 17:43:53,365.365 INFO    ] Waiting 2.33 seconds before fallback handling...
[2026-06-12 17:43:56,048.048 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 17:43:56,049.049 INFO    ] Checking for system updates...
[2026-06-12 17:43:56,070.070 INFO    ] 200
[2026-06-12 17:43:56,071.071 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:43:56,103.103 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 17:43:56,104.104 INFO    ] No update needed
[2026-06-12 17:43:56,105.105 INFO    ] Checking for camera pi updates...
[2026-06-12 17:43:56,126.126 INFO    ] 200
[2026-06-12 17:43:56,127.127 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:43:56,149.149 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 17:43:56,208.208 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 17:43:56,210.210 INFO    ] No camera update needed
[2026-06-12 17:43:56,211.211 INFO    ] Script finished. Safe exiting...
[2026-06-12 17:43:56,213.213 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 17:43:56,215.215 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 17:43:56,218.218 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 17:43:58,255.255 INFO    ] ================================================
[2026-06-12 17:43:58,270.270 INFO    ] Launching Daemon at Fri Jun 12 17:43:58 IST 2026
[2026-06-12 17:43:58,281.281 INFO    ] ================================================
[2026-06-12 17:43:58,642.642 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 17:43:58
[2026-06-12 17:43:58,954.954 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 17:43:59,086.086 INFO    ] Initializing speech engine...
[2026-06-12 17:43:59,098.098 INFO    ] 2026-06-12 17:43:59
[2026-06-12 17:43:59,305.305 INFO    ] 2026-06-12 17:43:59
[2026-06-12 17:43:59,335.335 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 17:43:59,521.521 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 17:43:59,529.529 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 17:43:59,659.659 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 17:43:59,726.726 INFO    ] time= 12/06/2026 17:43:59
[2026-06-12 17:43:59,751.751 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 17:43:59,757.757 INFO    ] Checking for existing commands in stream...
[2026-06-12 17:43:59,847.847 INFO    ] No existing commands found in stream
[2026-06-12 17:44:04,856.856 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 17:44:04,858.858 INFO    ] Waiting 0.25 seconds before fallback handling...
[2026-06-12 17:44:05,631.631 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 17:44:05,633.633 INFO    ] Checking for system updates...
[2026-06-12 17:44:05,664.664 INFO    ] 200
[2026-06-12 17:44:05,665.665 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:44:05,695.695 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 17:44:05,697.697 INFO    ] No update needed
[2026-06-12 17:44:05,698.698 INFO    ] Checking for camera pi updates...
[2026-06-12 17:44:05,718.718 INFO    ] 200
[2026-06-12 17:44:05,720.720 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:44:05,744.744 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 17:44:05,792.792 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 17:44:05,794.794 INFO    ] No camera update needed
[2026-06-12 17:44:05,795.795 INFO    ] Script finished. Safe exiting...
[2026-06-12 17:44:05,796.796 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 17:44:05,799.799 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 17:44:05,802.802 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 17:44:07,842.842 INFO    ] ================================================
[2026-06-12 17:44:07,857.857 INFO    ] Launching Daemon at Fri Jun 12 17:44:07 IST 2026
[2026-06-12 17:44:07,868.868 INFO    ] ================================================
[2026-06-12 17:44:08,230.230 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 17:44:08
[2026-06-12 17:44:08,542.542 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 17:44:08,672.672 INFO    ] Initializing speech engine...
[2026-06-12 17:44:08,676.676 INFO    ] 2026-06-12 17:44:08
[2026-06-12 17:44:08,894.894 INFO    ] 2026-06-12 17:44:08
[2026-06-12 17:44:08,924.924 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 17:44:09,111.111 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 17:44:09,119.119 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 17:44:09,243.243 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 17:44:09,294.294 INFO    ] time= 12/06/2026 17:44:09
[2026-06-12 17:44:09,339.339 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 17:44:09,344.344 INFO    ] Checking for existing commands in stream...
[2026-06-12 17:44:09,466.466 INFO    ] No existing commands found in stream
[2026-06-12 17:44:14,476.476 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 17:44:14,478.478 INFO    ] Waiting 0.09 seconds before fallback handling...
[2026-06-12 17:44:14,937.937 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 17:44:14,939.939 INFO    ] Checking for system updates...
[2026-06-12 17:44:14,960.960 INFO    ] 200
[2026-06-12 17:44:14,961.961 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:44:14,993.993 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 17:44:14,994.994 INFO    ] No update needed
[2026-06-12 17:44:14,995.995 INFO    ] Checking for camera pi updates...
[2026-06-12 17:44:15,015.015 INFO    ] 200
[2026-06-12 17:44:15,017.017 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:44:15,040.040 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 17:44:15,106.106 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 17:44:15,107.107 INFO    ] No camera update needed
[2026-06-12 17:44:15,109.109 INFO    ] Script finished. Safe exiting...
[2026-06-12 17:44:15,110.110 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 17:44:15,113.113 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 17:44:15,116.116 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 17:44:17,155.155 INFO    ] ================================================
[2026-06-12 17:44:17,170.170 INFO    ] Launching Daemon at Fri Jun 12 17:44:17 IST 2026
[2026-06-12 17:44:17,181.181 INFO    ] ================================================
[2026-06-12 17:44:17,506.506 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 17:44:17
[2026-06-12 17:44:17,820.820 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 17:44:17,962.962 INFO    ] Initializing speech engine...
[2026-06-12 17:44:17,967.967 INFO    ] 2026-06-12 17:44:17
[2026-06-12 17:44:18,170.170 INFO    ] 2026-06-12 17:44:18
[2026-06-12 17:44:18,198.198 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 17:44:18,320.320 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 17:44:18,372.372 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 17:44:18,518.518 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 17:44:18,585.585 INFO    ] time= 12/06/2026 17:44:18
[2026-06-12 17:44:18,608.608 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 17:44:18,615.615 INFO    ] Checking for existing commands in stream...
[2026-06-12 17:44:18,681.681 INFO    ] No existing commands found in stream
[2026-06-12 17:44:23,695.695 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 17:44:23,698.698 INFO    ] Waiting 2.86 seconds before fallback handling...
[2026-06-12 17:44:26,955.955 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 17:44:26,957.957 INFO    ] Checking for system updates...
[2026-06-12 17:44:26,978.978 INFO    ] 200
[2026-06-12 17:44:26,980.980 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:44:27,012.012 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 17:44:27,013.013 INFO    ] No update needed
[2026-06-12 17:44:27,014.014 INFO    ] Checking for camera pi updates...
[2026-06-12 17:44:27,033.033 INFO    ] 200
[2026-06-12 17:44:27,034.034 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:44:27,059.059 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 17:44:27,206.206 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 17:44:27,207.207 INFO    ] No camera update needed
[2026-06-12 17:44:27,208.208 INFO    ] Script finished. Safe exiting...
[2026-06-12 17:44:27,210.210 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 17:44:27,213.213 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 17:44:27,215.215 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 17:44:29,254.254 INFO    ] ================================================
[2026-06-12 17:44:29,268.268 INFO    ] Launching Daemon at Fri Jun 12 17:44:29 IST 2026
[2026-06-12 17:44:29,279.279 INFO    ] ================================================
[2026-06-12 17:44:29,606.606 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 17:44:29
[2026-06-12 17:44:29,918.918 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 17:44:30,061.061 INFO    ] Initializing speech engine...
[2026-06-12 17:44:30,066.066 INFO    ] 2026-06-12 17:44:30
[2026-06-12 17:44:30,273.273 INFO    ] 2026-06-12 17:44:30
[2026-06-12 17:44:30,302.302 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 17:44:30,486.486 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 17:44:30,489.489 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 17:44:30,619.619 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 17:44:30,674.674 INFO    ] time= 12/06/2026 17:44:30
[2026-06-12 17:44:30,715.715 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 17:44:30,720.720 INFO    ] Checking for existing commands in stream...
[2026-06-12 17:44:30,792.792 INFO    ] No existing commands found in stream
[2026-06-12 17:44:35,801.801 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 17:44:35,804.804 INFO    ] Waiting 2.93 seconds before fallback handling...
[2026-06-12 17:44:39,106.106 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 17:44:39,107.107 INFO    ] Checking for system updates...
[2026-06-12 17:44:39,128.128 INFO    ] 200
[2026-06-12 17:44:39,130.130 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:44:39,162.162 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 17:44:39,163.163 INFO    ] No update needed
[2026-06-12 17:44:39,164.164 INFO    ] Checking for camera pi updates...
[2026-06-12 17:44:39,183.183 INFO    ] 200
[2026-06-12 17:44:39,184.184 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:44:39,208.208 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 17:44:39,291.291 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 17:44:39,292.292 INFO    ] No camera update needed
[2026-06-12 17:44:39,294.294 INFO    ] Script finished. Safe exiting...
[2026-06-12 17:44:39,295.295 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 17:44:39,298.298 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 17:44:39,301.301 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 17:44:41,338.338 INFO    ] ================================================
[2026-06-12 17:44:41,353.353 INFO    ] Launching Daemon at Fri Jun 12 17:44:41 IST 2026
[2026-06-12 17:44:41,364.364 INFO    ] ================================================
[2026-06-12 17:44:41,695.695 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 17:44:41
[2026-06-12 17:44:42,006.006 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 17:44:42,147.147 INFO    ] Initializing speech engine...
[2026-06-12 17:44:42,153.153 INFO    ] 2026-06-12 17:44:42
[2026-06-12 17:44:42,358.358 INFO    ] 2026-06-12 17:44:42
[2026-06-12 17:44:42,388.388 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 17:44:42,574.574 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 17:44:42,583.583 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 17:44:42,724.724 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 17:44:42,781.781 INFO    ] time= 12/06/2026 17:44:42
[2026-06-12 17:44:42,805.805 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 17:44:42,812.812 INFO    ] Checking for existing commands in stream...
[2026-06-12 17:44:42,879.879 INFO    ] No existing commands found in stream
[2026-06-12 17:44:47,888.888 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 17:44:47,891.891 INFO    ] Waiting 0.40 seconds before fallback handling...
[2026-06-12 17:44:48,686.686 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 17:44:48,687.687 INFO    ] Checking for system updates...
[2026-06-12 17:44:48,712.712 INFO    ] 200
[2026-06-12 17:44:48,714.714 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:44:48,745.745 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 17:44:48,747.747 INFO    ] No update needed
[2026-06-12 17:44:48,748.748 INFO    ] Checking for camera pi updates...
[2026-06-12 17:44:48,771.771 INFO    ] 200
[2026-06-12 17:44:48,773.773 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:44:48,800.800 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 17:44:48,842.842 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 17:44:48,843.843 INFO    ] No camera update needed
[2026-06-12 17:44:48,845.845 INFO    ] Script finished. Safe exiting...
[2026-06-12 17:44:48,846.846 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 17:44:48,849.849 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 17:44:48,852.852 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 17:44:50,891.891 INFO    ] ================================================
[2026-06-12 17:44:50,906.906 INFO    ] Launching Daemon at Fri Jun 12 17:44:50 IST 2026
[2026-06-12 17:44:50,917.917 INFO    ] ================================================
[2026-06-12 17:44:51,309.309 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 17:44:51
[2026-06-12 17:44:51,643.643 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 17:44:51,794.794 INFO    ] Initializing speech engine...
[2026-06-12 17:44:51,800.800 INFO    ] 2026-06-12 17:44:51
[2026-06-12 17:44:52,005.005 INFO    ] 2026-06-12 17:44:51
[2026-06-12 17:44:52,034.034 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 17:44:52,156.156 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 17:44:52,219.219 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 17:44:52,362.362 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 17:44:52,424.424 INFO    ] time= 12/06/2026 17:44:52
[2026-06-12 17:44:52,448.448 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 17:44:52,454.454 INFO    ] Checking for existing commands in stream...
[2026-06-12 17:44:52,521.521 INFO    ] No existing commands found in stream
[2026-06-12 17:44:57,551.551 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 17:44:57,554.554 INFO    ] Waiting 2.80 seconds before fallback handling...
[2026-06-12 17:45:00,718.718 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 17:45:00,720.720 INFO    ] Checking for system updates...
[2026-06-12 17:45:00,742.742 INFO    ] 200
[2026-06-12 17:45:00,743.743 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:45:00,775.775 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 17:45:00,776.776 INFO    ] No update needed
[2026-06-12 17:45:00,778.778 INFO    ] Checking for camera pi updates...
[2026-06-12 17:45:00,801.801 INFO    ] 200
[2026-06-12 17:45:00,802.802 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:45:00,827.827 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 17:45:00,869.869 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 17:45:00,870.870 INFO    ] No camera update needed
[2026-06-12 17:45:00,872.872 INFO    ] Script finished. Safe exiting...
[2026-06-12 17:45:00,873.873 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 17:45:00,876.876 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 17:45:00,879.879 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 17:45:02,916.916 INFO    ] ================================================
[2026-06-12 17:45:02,926.926 INFO    ] Launching Daemon at Fri Jun 12 17:45:02 IST 2026
[2026-06-12 17:45:02,936.936 INFO    ] ================================================
[2026-06-12 17:45:03,251.251 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 17:45:03
[2026-06-12 17:45:03,562.562 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 17:45:03,694.694 INFO    ] Initializing speech engine...
[2026-06-12 17:45:03,697.697 INFO    ] 2026-06-12 17:45:03
[2026-06-12 17:45:03,915.915 INFO    ] 2026-06-12 17:45:03
[2026-06-12 17:45:03,945.945 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 17:45:04,129.129 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 17:45:04,139.139 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 17:45:04,284.284 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 17:45:04,338.338 INFO    ] time= 12/06/2026 17:45:04
[2026-06-12 17:45:04,360.360 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 17:45:04,367.367 INFO    ] Checking for existing commands in stream...
[2026-06-12 17:45:04,433.433 INFO    ] No existing commands found in stream
[2026-06-12 17:45:09,443.443 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 17:45:09,446.446 INFO    ] Waiting 1.79 seconds before fallback handling...
[2026-06-12 17:45:11,546.546 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 17:45:11,548.548 INFO    ] Checking for system updates...
[2026-06-12 17:45:11,572.572 INFO    ] 200
[2026-06-12 17:45:11,574.574 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:45:11,606.606 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 17:45:11,607.607 INFO    ] No update needed
[2026-06-12 17:45:11,608.608 INFO    ] Checking for camera pi updates...
[2026-06-12 17:45:11,630.630 INFO    ] 200
[2026-06-12 17:45:11,632.632 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:45:11,655.655 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 17:45:11,700.700 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 17:45:11,702.702 INFO    ] No camera update needed
[2026-06-12 17:45:11,703.703 INFO    ] Script finished. Safe exiting...
[2026-06-12 17:45:11,704.704 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 17:45:11,707.707 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 17:45:11,711.711 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 17:45:13,750.750 INFO    ] ================================================
[2026-06-12 17:45:13,765.765 INFO    ] Launching Daemon at Fri Jun 12 17:45:13 IST 2026
[2026-06-12 17:45:13,776.776 INFO    ] ================================================
[2026-06-12 17:45:14,130.130 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 17:45:14
[2026-06-12 17:45:14,441.441 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 17:45:14,572.572 INFO    ] Initializing speech engine...
[2026-06-12 17:45:14,580.580 INFO    ] 2026-06-12 17:45:14
[2026-06-12 17:45:14,797.797 INFO    ] 2026-06-12 17:45:14
[2026-06-12 17:45:14,827.827 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 17:45:15,015.015 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 17:45:15,025.025 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 17:45:15,187.187 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 17:45:15,233.233 INFO    ] time= 12/06/2026 17:45:15
[2026-06-12 17:45:15,250.250 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 17:45:15,256.256 INFO    ] Checking for existing commands in stream...
[2026-06-12 17:45:15,323.323 INFO    ] No existing commands found in stream
[2026-06-12 17:45:20,337.337 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 17:45:20,341.341 INFO    ] Waiting 0.12 seconds before fallback handling...
[2026-06-12 17:45:20,842.842 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 17:45:20,843.843 INFO    ] Checking for system updates...
[2026-06-12 17:45:20,864.864 INFO    ] 200
[2026-06-12 17:45:20,865.865 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:45:20,898.898 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 17:45:20,899.899 INFO    ] No update needed
[2026-06-12 17:45:20,901.901 INFO    ] Checking for camera pi updates...
[2026-06-12 17:45:20,924.924 INFO    ] 200
[2026-06-12 17:45:20,925.925 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:45:20,951.951 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 17:45:21,001.001 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 17:45:21,003.003 INFO    ] No camera update needed
[2026-06-12 17:45:21,004.004 INFO    ] Script finished. Safe exiting...
[2026-06-12 17:45:21,006.006 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 17:45:21,009.009 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 17:45:21,012.012 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 17:45:23,052.052 INFO    ] ================================================
[2026-06-12 17:45:23,067.067 INFO    ] Launching Daemon at Fri Jun 12 17:45:23 IST 2026
[2026-06-12 17:45:23,078.078 INFO    ] ================================================
[2026-06-12 17:45:23,442.442 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 17:45:23
[2026-06-12 17:45:23,759.759 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 17:45:23,903.903 INFO    ] Initializing speech engine...
[2026-06-12 17:45:23,908.908 INFO    ] 2026-06-12 17:45:23
[2026-06-12 17:45:24,112.112 INFO    ] 2026-06-12 17:45:24
[2026-06-12 17:45:24,140.140 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 17:45:24,322.322 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 17:45:24,326.326 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 17:45:24,458.458 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 17:45:24,520.520 INFO    ] time= 12/06/2026 17:45:24
[2026-06-12 17:45:24,552.552 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 17:45:24,558.558 INFO    ] Checking for existing commands in stream...
[2026-06-12 17:45:24,625.625 INFO    ] No existing commands found in stream
[2026-06-12 17:45:29,634.634 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 17:45:29,637.637 INFO    ] Waiting 0.43 seconds before fallback handling...
[2026-06-12 17:45:30,446.446 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 17:45:30,448.448 INFO    ] Checking for system updates...
[2026-06-12 17:45:30,469.469 INFO    ] 200
[2026-06-12 17:45:30,470.470 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:45:30,502.502 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 17:45:30,504.504 INFO    ] No update needed
[2026-06-12 17:45:30,505.505 INFO    ] Checking for camera pi updates...
[2026-06-12 17:45:30,524.524 INFO    ] 200
[2026-06-12 17:45:30,526.526 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:45:30,548.548 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 17:45:30,601.601 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 17:45:30,602.602 INFO    ] No camera update needed
[2026-06-12 17:45:30,604.604 INFO    ] Script finished. Safe exiting...
[2026-06-12 17:45:30,605.605 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 17:45:30,608.608 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 17:45:30,611.611 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 17:45:32,644.644 INFO    ] ================================================
[2026-06-12 17:45:32,652.652 INFO    ] Launching Daemon at Fri Jun 12 17:45:32 IST 2026
[2026-06-12 17:45:32,658.658 INFO    ] ================================================
[2026-06-12 17:45:32,986.986 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 17:45:32
[2026-06-12 17:45:33,321.321 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 17:45:33,473.473 INFO    ] Initializing speech engine...
[2026-06-12 17:45:33,477.477 INFO    ] 2026-06-12 17:45:33
[2026-06-12 17:45:33,682.682 INFO    ] 2026-06-12 17:45:33
[2026-06-12 17:45:33,710.710 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 17:45:33,848.848 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 17:45:33,896.896 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 17:45:34,034.034 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 17:45:34,101.101 INFO    ] time= 12/06/2026 17:45:34
[2026-06-12 17:45:34,125.125 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 17:45:34,131.131 INFO    ] Checking for existing commands in stream...
[2026-06-12 17:45:34,197.197 INFO    ] No existing commands found in stream
[2026-06-12 17:45:39,212.212 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 17:45:39,215.215 INFO    ] Waiting 1.10 seconds before fallback handling...
[2026-06-12 17:45:40,700.700 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 17:45:40,701.701 INFO    ] Checking for system updates...
[2026-06-12 17:45:40,721.721 INFO    ] 200
[2026-06-12 17:45:40,723.723 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:45:40,753.753 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 17:45:40,754.754 INFO    ] No update needed
[2026-06-12 17:45:40,755.755 INFO    ] Checking for camera pi updates...
[2026-06-12 17:45:40,777.777 INFO    ] 200
[2026-06-12 17:45:40,778.778 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:45:40,801.801 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 17:45:40,845.845 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 17:45:40,847.847 INFO    ] No camera update needed
[2026-06-12 17:45:40,848.848 INFO    ] Script finished. Safe exiting...
[2026-06-12 17:45:40,849.849 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 17:45:40,853.853 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 17:45:40,855.855 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 17:45:42,892.892 INFO    ] ================================================
[2026-06-12 17:45:42,907.907 INFO    ] Launching Daemon at Fri Jun 12 17:45:42 IST 2026
[2026-06-12 17:45:42,918.918 INFO    ] ================================================
[2026-06-12 17:45:43,307.307 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 17:45:43
[2026-06-12 17:45:43,641.641 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 17:45:43,779.779 INFO    ] Initializing speech engine...
[2026-06-12 17:45:43,788.788 INFO    ] 2026-06-12 17:45:43
[2026-06-12 17:45:44,003.003 INFO    ] 2026-06-12 17:45:43
[2026-06-12 17:45:44,034.034 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 17:45:44,217.217 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 17:45:44,227.227 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 17:45:44,381.381 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 17:45:44,424.424 INFO    ] time= 12/06/2026 17:45:44
[2026-06-12 17:45:44,445.445 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 17:45:44,452.452 INFO    ] Checking for existing commands in stream...
[2026-06-12 17:45:44,518.518 INFO    ] No existing commands found in stream
[2026-06-12 17:45:49,538.538 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 17:45:49,541.541 INFO    ] Waiting 2.16 seconds before fallback handling...
[2026-06-12 17:45:52,066.066 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 17:45:52,068.068 INFO    ] Checking for system updates...
[2026-06-12 17:45:52,088.088 INFO    ] 200
[2026-06-12 17:45:52,090.090 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:45:52,120.120 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 17:45:52,121.121 INFO    ] No update needed
[2026-06-12 17:45:52,122.122 INFO    ] Checking for camera pi updates...
[2026-06-12 17:45:52,143.143 INFO    ] 200
[2026-06-12 17:45:52,145.145 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:45:52,169.169 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 17:45:52,217.217 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 17:45:52,218.218 INFO    ] No camera update needed
[2026-06-12 17:45:52,219.219 INFO    ] Script finished. Safe exiting...
[2026-06-12 17:45:52,221.221 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 17:45:52,224.224 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 17:45:52,226.226 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 17:45:54,266.266 INFO    ] ================================================
[2026-06-12 17:45:54,281.281 INFO    ] Launching Daemon at Fri Jun 12 17:45:54 IST 2026
[2026-06-12 17:45:54,291.291 INFO    ] ================================================
[2026-06-12 17:45:54,656.656 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 17:45:54
[2026-06-12 17:45:54,973.973 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 17:45:55,103.103 INFO    ] Initializing speech engine...
[2026-06-12 17:45:55,111.111 INFO    ] 2026-06-12 17:45:55
[2026-06-12 17:45:55,326.326 INFO    ] 2026-06-12 17:45:55
[2026-06-12 17:45:55,354.354 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 17:45:55,493.493 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 17:45:55,543.543 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 17:45:55,675.675 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 17:45:55,741.741 INFO    ] time= 12/06/2026 17:45:55
[2026-06-12 17:45:55,775.775 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 17:45:55,781.781 INFO    ] Checking for existing commands in stream...
[2026-06-12 17:45:55,848.848 INFO    ] No existing commands found in stream
[2026-06-12 17:46:00,857.857 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 17:46:00,860.860 INFO    ] Waiting 3.58 seconds before fallback handling...
[2026-06-12 17:46:04,807.807 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 17:46:04,809.809 INFO    ] Checking for system updates...
[2026-06-12 17:46:04,830.830 INFO    ] 200
[2026-06-12 17:46:04,831.831 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:46:04,863.863 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 17:46:04,864.864 INFO    ] No update needed
[2026-06-12 17:46:04,865.865 INFO    ] Checking for camera pi updates...
[2026-06-12 17:46:04,890.890 INFO    ] 200
[2026-06-12 17:46:04,891.891 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:46:04,917.917 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 17:46:04,967.967 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 17:46:04,968.968 INFO    ] No camera update needed
[2026-06-12 17:46:04,969.969 INFO    ] Script finished. Safe exiting...
[2026-06-12 17:46:04,971.971 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 17:46:04,974.974 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 17:46:04,976.976 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 17:46:07,016.016 INFO    ] ================================================
[2026-06-12 17:46:07,031.031 INFO    ] Launching Daemon at Fri Jun 12 17:46:07 IST 2026
[2026-06-12 17:46:07,042.042 INFO    ] ================================================
[2026-06-12 17:46:07,378.378 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 17:46:07
[2026-06-12 17:46:07,692.692 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 17:46:07,822.822 INFO    ] Initializing speech engine...
[2026-06-12 17:46:07,827.827 INFO    ] 2026-06-12 17:46:07
[2026-06-12 17:46:08,043.043 INFO    ] 2026-06-12 17:46:08
[2026-06-12 17:46:08,073.073 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 17:46:08,259.259 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 17:46:08,263.263 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 17:46:08,394.394 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 17:46:08,450.450 INFO    ] time= 12/06/2026 17:46:08
[2026-06-12 17:46:08,491.491 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 17:46:08,496.496 INFO    ] Checking for existing commands in stream...
[2026-06-12 17:46:08,569.569 INFO    ] No existing commands found in stream
[2026-06-12 17:46:13,578.578 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 17:46:13,581.581 INFO    ] Waiting 0.67 seconds before fallback handling...
[2026-06-12 17:46:14,634.634 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 17:46:14,635.635 INFO    ] Checking for system updates...
[2026-06-12 17:46:14,656.656 INFO    ] 200
[2026-06-12 17:46:14,657.657 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:46:14,689.689 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 17:46:14,690.690 INFO    ] No update needed
[2026-06-12 17:46:14,692.692 INFO    ] Checking for camera pi updates...
[2026-06-12 17:46:14,712.712 INFO    ] 200
[2026-06-12 17:46:14,714.714 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:46:14,736.736 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 17:46:14,793.793 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 17:46:14,795.795 INFO    ] No camera update needed
[2026-06-12 17:46:14,796.796 INFO    ] Script finished. Safe exiting...
[2026-06-12 17:46:14,797.797 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 17:46:14,800.800 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 17:46:14,803.803 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 17:46:16,843.843 INFO    ] ================================================
[2026-06-12 17:46:16,859.859 INFO    ] Launching Daemon at Fri Jun 12 17:46:16 IST 2026
[2026-06-12 17:46:16,870.870 INFO    ] ================================================
[2026-06-12 17:46:17,201.201 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 17:46:17
[2026-06-12 17:46:17,515.515 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 17:46:17,653.653 INFO    ] Initializing speech engine...
[2026-06-12 17:46:17,661.661 INFO    ] 2026-06-12 17:46:17
[2026-06-12 17:46:17,870.870 INFO    ] 2026-06-12 17:46:17
[2026-06-12 17:46:17,900.900 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 17:46:18,024.024 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 17:46:18,088.088 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 17:46:18,225.225 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 17:46:18,295.295 INFO    ] time= 12/06/2026 17:46:18
[2026-06-12 17:46:18,319.319 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 17:46:18,326.326 INFO    ] Checking for existing commands in stream...
[2026-06-12 17:46:18,393.393 INFO    ] No existing commands found in stream
[2026-06-12 17:46:23,407.407 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 17:46:23,410.410 INFO    ] Waiting 1.04 seconds before fallback handling...
[2026-06-12 17:46:24,836.836 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 17:46:24,838.838 INFO    ] Checking for system updates...
[2026-06-12 17:46:24,860.860 INFO    ] 200
[2026-06-12 17:46:24,862.862 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:46:24,891.891 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 17:46:24,893.893 INFO    ] No update needed
[2026-06-12 17:46:24,894.894 INFO    ] Checking for camera pi updates...
[2026-06-12 17:46:24,914.914 INFO    ] 200
[2026-06-12 17:46:24,915.915 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:46:24,939.939 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 17:46:24,985.985 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 17:46:24,987.987 INFO    ] No camera update needed
[2026-06-12 17:46:24,988.988 INFO    ] Script finished. Safe exiting...
[2026-06-12 17:46:24,990.990 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 17:46:24,993.993 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 17:46:24,996.996 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 17:46:27,036.036 INFO    ] ================================================
[2026-06-12 17:46:27,051.051 INFO    ] Launching Daemon at Fri Jun 12 17:46:27 IST 2026
[2026-06-12 17:46:27,061.061 INFO    ] ================================================
[2026-06-12 17:46:27,399.399 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 17:46:27
[2026-06-12 17:46:27,712.712 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 17:46:27,841.841 INFO    ] Initializing speech engine...
[2026-06-12 17:46:27,845.845 INFO    ] 2026-06-12 17:46:27
[2026-06-12 17:46:28,062.062 INFO    ] 2026-06-12 17:46:28
[2026-06-12 17:46:28,091.091 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 17:46:28,273.273 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 17:46:28,283.283 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 17:46:28,428.428 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 17:46:28,479.479 INFO    ] time= 12/06/2026 17:46:28
[2026-06-12 17:46:28,503.503 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 17:46:28,509.509 INFO    ] Checking for existing commands in stream...
[2026-06-12 17:46:28,576.576 INFO    ] No existing commands found in stream
[2026-06-12 17:46:33,584.584 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 17:46:33,587.587 INFO    ] Waiting 1.87 seconds before fallback handling...
[2026-06-12 17:46:35,834.834 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 17:46:35,835.835 INFO    ] Checking for system updates...
[2026-06-12 17:46:35,857.857 INFO    ] 200
[2026-06-12 17:46:35,858.858 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:46:35,888.888 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 17:46:35,889.889 INFO    ] No update needed
[2026-06-12 17:46:35,890.890 INFO    ] Checking for camera pi updates...
[2026-06-12 17:46:35,913.913 INFO    ] 200
[2026-06-12 17:46:35,914.914 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:46:35,937.937 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 17:46:35,977.977 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 17:46:35,978.978 INFO    ] No camera update needed
[2026-06-12 17:46:35,980.980 INFO    ] Script finished. Safe exiting...
[2026-06-12 17:46:35,981.981 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 17:46:35,984.984 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 17:46:35,987.987 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 17:46:38,025.025 INFO    ] ================================================
[2026-06-12 17:46:38,041.041 INFO    ] Launching Daemon at Fri Jun 12 17:46:38 IST 2026
[2026-06-12 17:46:38,052.052 INFO    ] ================================================
[2026-06-12 17:46:38,418.418 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 17:46:38
[2026-06-12 17:46:38,756.756 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 17:46:38,907.907 INFO    ] Initializing speech engine...
[2026-06-12 17:46:38,913.913 INFO    ] 2026-06-12 17:46:38
[2026-06-12 17:46:39,121.121 INFO    ] 2026-06-12 17:46:39
[2026-06-12 17:46:39,150.150 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 17:46:39,334.334 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 17:46:39,343.343 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 17:46:39,474.474 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 17:46:39,540.540 INFO    ] time= 12/06/2026 17:46:39
[2026-06-12 17:46:39,564.564 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 17:46:39,571.571 INFO    ] Checking for existing commands in stream...
[2026-06-12 17:46:39,638.638 INFO    ] No existing commands found in stream
[2026-06-12 17:46:44,652.652 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 17:46:44,655.655 INFO    ] Waiting 1.39 seconds before fallback handling...
[2026-06-12 17:46:46,424.424 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 17:46:46,426.426 INFO    ] Checking for system updates...
[2026-06-12 17:46:46,447.447 INFO    ] 200
[2026-06-12 17:46:46,448.448 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:46:46,478.478 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 17:46:46,479.479 INFO    ] No update needed
[2026-06-12 17:46:46,481.481 INFO    ] Checking for camera pi updates...
[2026-06-12 17:46:46,500.500 INFO    ] 200
[2026-06-12 17:46:46,502.502 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:46:46,526.526 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 17:46:46,568.568 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 17:46:46,569.569 INFO    ] No camera update needed
[2026-06-12 17:46:46,571.571 INFO    ] Script finished. Safe exiting...
[2026-06-12 17:46:46,572.572 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 17:46:46,576.576 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 17:46:46,578.578 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 17:46:48,618.618 INFO    ] ================================================
[2026-06-12 17:46:48,634.634 INFO    ] Launching Daemon at Fri Jun 12 17:46:48 IST 2026
[2026-06-12 17:46:48,644.644 INFO    ] ================================================
[2026-06-12 17:46:48,977.977 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 17:46:48
[2026-06-12 17:46:49,295.295 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 17:46:49,439.439 INFO    ] Initializing speech engine...
[2026-06-12 17:46:49,444.444 INFO    ] 2026-06-12 17:46:49
[2026-06-12 17:46:49,648.648 INFO    ] 2026-06-12 17:46:49
[2026-06-12 17:46:49,676.676 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 17:46:49,868.868 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 17:46:49,872.872 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 17:46:50,016.016 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 17:46:50,064.064 INFO    ] time= 12/06/2026 17:46:50
[2026-06-12 17:46:50,098.098 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 17:46:50,131.131 INFO    ] Checking for existing commands in stream...
[2026-06-12 17:46:50,251.251 INFO    ] No existing commands found in stream
[2026-06-12 17:46:55,262.262 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 17:46:55,264.264 INFO    ] Waiting 2.95 seconds before fallback handling...
[2026-06-12 17:46:58,629.629 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 17:46:58,631.631 INFO    ] Checking for system updates...
[2026-06-12 17:46:58,652.652 INFO    ] 200
[2026-06-12 17:46:58,653.653 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:46:58,683.683 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 17:46:58,684.684 INFO    ] No update needed
[2026-06-12 17:46:58,686.686 INFO    ] Checking for camera pi updates...
[2026-06-12 17:46:58,705.705 INFO    ] 200
[2026-06-12 17:46:58,707.707 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:46:58,730.730 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 17:46:58,771.771 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 17:46:58,772.772 INFO    ] No camera update needed
[2026-06-12 17:46:58,773.773 INFO    ] Script finished. Safe exiting...
[2026-06-12 17:46:58,775.775 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 17:46:58,778.778 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 17:46:58,781.781 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 17:47:00,821.821 INFO    ] ================================================
[2026-06-12 17:47:00,838.838 INFO    ] Launching Daemon at Fri Jun 12 17:47:00 IST 2026
[2026-06-12 17:47:00,848.848 INFO    ] ================================================
[2026-06-12 17:47:01,214.214 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 17:47:01
[2026-06-12 17:47:01,641.641 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 17:47:01,839.839 INFO    ] Initializing speech engine...
[2026-06-12 17:47:01,846.846 INFO    ] 2026-06-12 17:47:01
[2026-06-12 17:47:02,082.082 INFO    ] 2026-06-12 17:47:02
[2026-06-12 17:47:02,115.115 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 17:47:02,269.269 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 17:47:02,273.273 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 17:47:02,453.453 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 17:47:02,514.514 INFO    ] time= 12/06/2026 17:47:02
[2026-06-12 17:47:02,569.569 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 17:47:02,609.609 INFO    ] Checking for existing commands in stream...
[2026-06-12 17:47:02,705.705 INFO    ] No existing commands found in stream
[2026-06-12 17:47:07,716.716 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 17:47:07,719.719 INFO    ] Waiting 0.54 seconds before fallback handling...
[2026-06-12 17:47:08,663.663 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 17:47:08,665.665 INFO    ] Checking for system updates...
[2026-06-12 17:47:08,685.685 INFO    ] 200
[2026-06-12 17:47:08,687.687 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:47:08,721.721 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 17:47:08,722.722 INFO    ] No update needed
[2026-06-12 17:47:08,724.724 INFO    ] Checking for camera pi updates...
[2026-06-12 17:47:08,743.743 INFO    ] 200
[2026-06-12 17:47:08,744.744 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:47:08,767.767 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 17:47:08,819.819 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 17:47:08,821.821 INFO    ] No camera update needed
[2026-06-12 17:47:08,822.822 INFO    ] Script finished. Safe exiting...
[2026-06-12 17:47:08,823.823 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 17:47:08,826.826 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 17:47:08,829.829 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 17:47:10,867.867 INFO    ] ================================================
[2026-06-12 17:47:10,883.883 INFO    ] Launching Daemon at Fri Jun 12 17:47:10 IST 2026
[2026-06-12 17:47:10,894.894 INFO    ] ================================================
[2026-06-12 17:47:11,222.222 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 17:47:11
[2026-06-12 17:47:11,535.535 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 17:47:11,667.667 INFO    ] Initializing speech engine...
[2026-06-12 17:47:11,682.682 INFO    ] 2026-06-12 17:47:11
[2026-06-12 17:47:11,889.889 INFO    ] 2026-06-12 17:47:11
[2026-06-12 17:47:11,917.917 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 17:47:12,104.104 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 17:47:12,112.112 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 17:47:12,244.244 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 17:47:12,298.298 INFO    ] time= 12/06/2026 17:47:12
[2026-06-12 17:47:12,328.328 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 17:47:12,338.338 INFO    ] Checking for existing commands in stream...
[2026-06-12 17:47:12,411.411 INFO    ] No existing commands found in stream
[2026-06-12 17:47:17,420.420 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 17:47:17,422.422 INFO    ] Waiting 1.07 seconds before fallback handling...
[2026-06-12 17:47:18,864.864 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 17:47:18,866.866 INFO    ] Checking for system updates...
[2026-06-12 17:47:18,886.886 INFO    ] 200
[2026-06-12 17:47:18,887.887 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:47:18,917.917 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 17:47:18,918.918 INFO    ] No update needed
[2026-06-12 17:47:18,920.920 INFO    ] Checking for camera pi updates...
[2026-06-12 17:47:18,940.940 INFO    ] 200
[2026-06-12 17:47:18,941.941 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:47:18,966.966 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 17:47:19,014.014 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 17:47:19,015.015 INFO    ] No camera update needed
[2026-06-12 17:47:19,016.016 INFO    ] Script finished. Safe exiting...
[2026-06-12 17:47:19,017.017 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 17:47:19,021.021 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 17:47:19,023.023 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 17:47:21,061.061 INFO    ] ================================================
[2026-06-12 17:47:21,077.077 INFO    ] Launching Daemon at Fri Jun 12 17:47:21 IST 2026
[2026-06-12 17:47:21,088.088 INFO    ] ================================================
[2026-06-12 17:47:21,448.448 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 17:47:21
[2026-06-12 17:47:21,783.783 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 17:47:21,937.937 INFO    ] Initializing speech engine...
[2026-06-12 17:47:21,941.941 INFO    ] 2026-06-12 17:47:21
[2026-06-12 17:47:22,146.146 INFO    ] 2026-06-12 17:47:22
[2026-06-12 17:47:22,175.175 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 17:47:22,357.357 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 17:47:22,368.368 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 17:47:22,494.494 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 17:47:22,561.561 INFO    ] time= 12/06/2026 17:47:22
[2026-06-12 17:47:22,588.588 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 17:47:22,595.595 INFO    ] Checking for existing commands in stream...
[2026-06-12 17:47:22,662.662 INFO    ] No existing commands found in stream
[2026-06-12 17:47:27,686.686 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 17:47:27,690.690 INFO    ] Waiting 2.42 seconds before fallback handling...
[2026-06-12 17:47:30,457.457 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 17:47:30,458.458 INFO    ] Checking for system updates...
[2026-06-12 17:47:30,479.479 INFO    ] 200
[2026-06-12 17:47:30,481.481 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:47:30,513.513 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 17:47:30,514.514 INFO    ] No update needed
[2026-06-12 17:47:30,515.515 INFO    ] Checking for camera pi updates...
[2026-06-12 17:47:30,534.534 INFO    ] 200
[2026-06-12 17:47:30,535.535 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:47:30,558.558 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 17:47:30,606.606 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 17:47:30,607.607 INFO    ] No camera update needed
[2026-06-12 17:47:30,609.609 INFO    ] Script finished. Safe exiting...
[2026-06-12 17:47:30,610.610 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 17:47:30,613.613 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 17:47:30,616.616 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 17:47:32,639.639 INFO    ] ================================================
[2026-06-12 17:47:32,647.647 INFO    ] Launching Daemon at Fri Jun 12 17:47:32 IST 2026
[2026-06-12 17:47:32,653.653 INFO    ] ================================================
[2026-06-12 17:47:32,957.957 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 17:47:32
[2026-06-12 17:47:33,322.322 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 17:47:33,452.452 INFO    ] Initializing speech engine...
[2026-06-12 17:47:33,456.456 INFO    ] 2026-06-12 17:47:33
[2026-06-12 17:47:33,678.678 INFO    ] 2026-06-12 17:47:33
[2026-06-12 17:47:33,711.711 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 17:47:33,855.855 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 17:47:33,909.909 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 17:47:34,081.081 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 17:47:34,141.141 INFO    ] time= 12/06/2026 17:47:34
[2026-06-12 17:47:34,173.173 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 17:47:34,197.197 INFO    ] Checking for existing commands in stream...
[2026-06-12 17:47:34,279.279 INFO    ] No existing commands found in stream
[2026-06-12 17:47:39,288.288 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 17:47:39,292.292 INFO    ] Waiting 1.72 seconds before fallback handling...
[2026-06-12 17:47:41,387.387 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 17:47:41,388.388 INFO    ] Checking for system updates...
[2026-06-12 17:47:41,410.410 INFO    ] 200
[2026-06-12 17:47:41,412.412 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:47:41,442.442 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 17:47:41,443.443 INFO    ] No update needed
[2026-06-12 17:47:41,444.444 INFO    ] Checking for camera pi updates...
[2026-06-12 17:47:41,467.467 INFO    ] 200
[2026-06-12 17:47:41,468.468 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:47:41,493.493 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 17:47:41,538.538 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 17:47:41,539.539 INFO    ] No camera update needed
[2026-06-12 17:47:41,540.540 INFO    ] Script finished. Safe exiting...
[2026-06-12 17:47:41,542.542 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 17:47:41,545.545 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 17:47:41,547.547 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 17:47:43,586.586 INFO    ] ================================================
[2026-06-12 17:47:43,601.601 INFO    ] Launching Daemon at Fri Jun 12 17:47:43 IST 2026
[2026-06-12 17:47:43,612.612 INFO    ] ================================================
[2026-06-12 17:47:43,958.958 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 17:47:43
[2026-06-12 17:47:44,275.275 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 17:47:44,420.420 INFO    ] Initializing speech engine...
[2026-06-12 17:47:44,426.426 INFO    ] 2026-06-12 17:47:44
[2026-06-12 17:47:44,629.629 INFO    ] 2026-06-12 17:47:44
[2026-06-12 17:47:44,658.658 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 17:47:44,841.841 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 17:47:44,849.849 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 17:47:44,975.975 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 17:47:45,044.044 INFO    ] time= 12/06/2026 17:47:44
[2026-06-12 17:47:45,068.068 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 17:47:45,074.074 INFO    ] Checking for existing commands in stream...
[2026-06-12 17:47:45,145.145 INFO    ] No existing commands found in stream
[2026-06-12 17:47:50,154.154 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 17:47:50,156.156 INFO    ] Waiting 1.51 seconds before fallback handling...
[2026-06-12 17:47:52,062.062 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 17:47:52,064.064 INFO    ] Checking for system updates...
[2026-06-12 17:47:52,085.085 INFO    ] 200
[2026-06-12 17:47:52,086.086 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:47:52,116.116 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 17:47:52,117.117 INFO    ] No update needed
[2026-06-12 17:47:52,119.119 INFO    ] Checking for camera pi updates...
[2026-06-12 17:47:52,139.139 INFO    ] 200
[2026-06-12 17:47:52,141.141 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:47:52,167.167 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 17:47:52,209.209 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 17:47:52,211.211 INFO    ] No camera update needed
[2026-06-12 17:47:52,212.212 INFO    ] Script finished. Safe exiting...
[2026-06-12 17:47:52,214.214 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 17:47:52,217.217 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 17:47:52,220.220 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 17:47:54,259.259 INFO    ] ================================================
[2026-06-12 17:47:54,274.274 INFO    ] Launching Daemon at Fri Jun 12 17:47:54 IST 2026
[2026-06-12 17:47:54,285.285 INFO    ] ================================================
[2026-06-12 17:47:54,625.625 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 17:47:54
[2026-06-12 17:47:54,941.941 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 17:47:55,071.071 INFO    ] Initializing speech engine...
[2026-06-12 17:47:55,078.078 INFO    ] 2026-06-12 17:47:55
[2026-06-12 17:47:55,295.295 INFO    ] 2026-06-12 17:47:55
[2026-06-12 17:47:55,325.325 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 17:47:55,511.511 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 17:47:55,514.514 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 17:47:55,667.667 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 17:47:55,720.720 INFO    ] time= 12/06/2026 17:47:55
[2026-06-12 17:47:55,743.743 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 17:47:55,750.750 INFO    ] Checking for existing commands in stream...
[2026-06-12 17:47:55,817.817 INFO    ] No existing commands found in stream
[2026-06-12 17:48:00,826.826 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 17:48:00,834.834 INFO    ] Waiting 2.51 seconds before fallback handling...
[2026-06-12 17:48:03,684.684 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 17:48:03,686.686 INFO    ] Checking for system updates...
[2026-06-12 17:48:03,708.708 INFO    ] 200
[2026-06-12 17:48:03,709.709 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:48:03,739.739 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 17:48:03,740.740 INFO    ] No update needed
[2026-06-12 17:48:03,741.741 INFO    ] Checking for camera pi updates...
[2026-06-12 17:48:03,764.764 INFO    ] 200
[2026-06-12 17:48:03,765.765 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:48:03,788.788 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 17:48:03,832.832 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 17:48:03,833.833 INFO    ] No camera update needed
[2026-06-12 17:48:03,835.835 INFO    ] Script finished. Safe exiting...
[2026-06-12 17:48:03,836.836 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 17:48:03,839.839 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 17:48:03,841.841 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 17:48:05,884.884 INFO    ] ================================================
[2026-06-12 17:48:05,904.904 INFO    ] Launching Daemon at Fri Jun 12 17:48:05 IST 2026
[2026-06-12 17:48:05,915.915 INFO    ] ================================================
[2026-06-12 17:48:06,256.256 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 17:48:06
[2026-06-12 17:48:06,585.585 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 17:48:06,734.734 INFO    ] Initializing speech engine...
[2026-06-12 17:48:06,740.740 INFO    ] 2026-06-12 17:48:06
[2026-06-12 17:48:06,948.948 INFO    ] 2026-06-12 17:48:06
[2026-06-12 17:48:06,978.978 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 17:48:07,164.164 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 17:48:07,174.174 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 17:48:07,303.303 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 17:48:07,367.367 INFO    ] time= 12/06/2026 17:48:07
[2026-06-12 17:48:07,395.395 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 17:48:07,397.397 INFO    ] Checking for existing commands in stream...
[2026-06-12 17:48:07,469.469 INFO    ] No existing commands found in stream
[2026-06-12 17:48:12,484.484 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 17:48:12,487.487 INFO    ] Waiting 1.95 seconds before fallback handling...
[2026-06-12 17:48:14,823.823 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 17:48:14,824.824 INFO    ] Checking for system updates...
[2026-06-12 17:48:14,845.845 INFO    ] 200
[2026-06-12 17:48:14,846.846 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:48:14,880.880 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 17:48:14,881.881 INFO    ] No update needed
[2026-06-12 17:48:14,882.882 INFO    ] Checking for camera pi updates...
[2026-06-12 17:48:14,902.902 INFO    ] 200
[2026-06-12 17:48:14,903.903 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:48:14,926.926 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 17:48:14,978.978 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 17:48:14,979.979 INFO    ] No camera update needed
[2026-06-12 17:48:14,981.981 INFO    ] Script finished. Safe exiting...
[2026-06-12 17:48:14,982.982 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 17:48:14,985.985 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 17:48:14,987.987 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 17:48:17,025.025 INFO    ] ================================================
[2026-06-12 17:48:17,040.040 INFO    ] Launching Daemon at Fri Jun 12 17:48:17 IST 2026
[2026-06-12 17:48:17,051.051 INFO    ] ================================================
[2026-06-12 17:48:17,417.417 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 17:48:17
[2026-06-12 17:48:17,729.729 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 17:48:17,860.860 INFO    ] Initializing speech engine...
[2026-06-12 17:48:17,864.864 INFO    ] 2026-06-12 17:48:17
[2026-06-12 17:48:18,084.084 INFO    ] 2026-06-12 17:48:18
[2026-06-12 17:48:18,112.112 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 17:48:18,297.297 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 17:48:18,301.301 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 17:48:18,435.435 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 17:48:18,502.502 INFO    ] time= 12/06/2026 17:48:18
[2026-06-12 17:48:18,530.530 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 17:48:18,532.532 INFO    ] Checking for existing commands in stream...
[2026-06-12 17:48:18,605.605 INFO    ] No existing commands found in stream
[2026-06-12 17:48:23,614.614 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 17:48:23,617.617 INFO    ] Waiting 1.62 seconds before fallback handling...
[2026-06-12 17:48:25,623.623 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 17:48:25,624.624 INFO    ] Checking for system updates...
[2026-06-12 17:48:25,645.645 INFO    ] 200
[2026-06-12 17:48:25,646.646 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:48:25,680.680 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 17:48:25,681.681 INFO    ] No update needed
[2026-06-12 17:48:25,682.682 INFO    ] Checking for camera pi updates...
[2026-06-12 17:48:25,701.701 INFO    ] 200
[2026-06-12 17:48:25,703.703 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:48:25,726.726 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 17:48:25,794.794 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 17:48:25,795.795 INFO    ] No camera update needed
[2026-06-12 17:48:25,796.796 INFO    ] Script finished. Safe exiting...
[2026-06-12 17:48:25,797.797 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 17:48:25,800.800 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 17:48:25,803.803 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 17:48:27,842.842 INFO    ] ================================================
[2026-06-12 17:48:27,858.858 INFO    ] Launching Daemon at Fri Jun 12 17:48:27 IST 2026
[2026-06-12 17:48:27,868.868 INFO    ] ================================================
[2026-06-12 17:48:28,225.225 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 17:48:28
[2026-06-12 17:48:28,558.558 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 17:48:28,708.708 INFO    ] Initializing speech engine...
[2026-06-12 17:48:28,713.713 INFO    ] 2026-06-12 17:48:28
[2026-06-12 17:48:28,922.922 INFO    ] 2026-06-12 17:48:28
[2026-06-12 17:48:28,950.950 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 17:48:29,133.133 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 17:48:29,143.143 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 17:48:29,273.273 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 17:48:29,339.339 INFO    ] time= 12/06/2026 17:48:29
[2026-06-12 17:48:29,363.363 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 17:48:29,370.370 INFO    ] Checking for existing commands in stream...
[2026-06-12 17:48:29,437.437 INFO    ] No existing commands found in stream
[2026-06-12 17:48:34,451.451 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 17:48:34,454.454 INFO    ] Waiting 2.75 seconds before fallback handling...
[2026-06-12 17:48:37,592.592 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 17:48:37,593.593 INFO    ] Checking for system updates...
[2026-06-12 17:48:37,615.615 INFO    ] 200
[2026-06-12 17:48:37,617.617 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:48:37,646.646 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 17:48:37,647.647 INFO    ] No update needed
[2026-06-12 17:48:37,649.649 INFO    ] Checking for camera pi updates...
[2026-06-12 17:48:37,668.668 INFO    ] 200
[2026-06-12 17:48:37,669.669 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:48:37,693.693 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 17:48:37,830.830 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 17:48:37,832.832 INFO    ] No camera update needed
[2026-06-12 17:48:37,833.833 INFO    ] Script finished. Safe exiting...
[2026-06-12 17:48:37,834.834 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 17:48:37,837.837 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 17:48:37,840.840 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 17:48:39,878.878 INFO    ] ================================================
[2026-06-12 17:48:39,893.893 INFO    ] Launching Daemon at Fri Jun 12 17:48:39 IST 2026
[2026-06-12 17:48:39,904.904 INFO    ] ================================================
[2026-06-12 17:48:40,273.273 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 17:48:40
[2026-06-12 17:48:40,593.593 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 17:48:40,727.727 INFO    ] Initializing speech engine...
[2026-06-12 17:48:40,732.732 INFO    ] 2026-06-12 17:48:40
[2026-06-12 17:48:40,960.960 INFO    ] 2026-06-12 17:48:40
[2026-06-12 17:48:40,991.991 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 17:48:41,187.187 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 17:48:41,196.196 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 17:48:41,336.336 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 17:48:41,405.405 INFO    ] time= 12/06/2026 17:48:41
[2026-06-12 17:48:41,432.432 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 17:48:41,439.439 INFO    ] Checking for existing commands in stream...
[2026-06-12 17:48:41,510.510 INFO    ] No existing commands found in stream
[2026-06-12 17:48:46,534.534 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 17:48:46,537.537 INFO    ] Waiting 1.80 seconds before fallback handling...
[2026-06-12 17:48:48,702.702 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 17:48:48,704.704 INFO    ] Checking for system updates...
[2026-06-12 17:48:48,725.725 INFO    ] 200
[2026-06-12 17:48:48,727.727 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:48:48,756.756 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 17:48:48,757.757 INFO    ] No update needed
[2026-06-12 17:48:48,759.759 INFO    ] Checking for camera pi updates...
[2026-06-12 17:48:48,779.779 INFO    ] 200
[2026-06-12 17:48:48,780.780 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:48:48,804.804 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 17:48:48,853.853 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 17:48:48,855.855 INFO    ] No camera update needed
[2026-06-12 17:48:48,856.856 INFO    ] Script finished. Safe exiting...
[2026-06-12 17:48:48,857.857 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 17:48:48,860.860 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 17:48:48,863.863 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 17:48:50,900.900 INFO    ] ================================================
[2026-06-12 17:48:50,915.915 INFO    ] Launching Daemon at Fri Jun 12 17:48:50 IST 2026
[2026-06-12 17:48:50,926.926 INFO    ] ================================================
[2026-06-12 17:48:51,279.279 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 17:48:51
[2026-06-12 17:48:51,594.594 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 17:48:51,728.728 INFO    ] Initializing speech engine...
[2026-06-12 17:48:51,733.733 INFO    ] 2026-06-12 17:48:51
[2026-06-12 17:48:51,960.960 INFO    ] 2026-06-12 17:48:51
[2026-06-12 17:48:51,990.990 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 17:48:52,185.185 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 17:48:52,195.195 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 17:48:52,326.326 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 17:48:52,362.362 INFO    ] time= 12/06/2026 17:48:52
[2026-06-12 17:48:52,409.409 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 17:48:52,432.432 INFO    ] Checking for existing commands in stream...
[2026-06-12 17:48:52,533.533 INFO    ] No existing commands found in stream
[2026-06-12 17:48:57,547.547 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 17:48:57,550.550 INFO    ] Waiting 0.84 seconds before fallback handling...
[2026-06-12 17:48:58,782.782 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 17:48:58,783.783 INFO    ] Checking for system updates...
[2026-06-12 17:48:58,804.804 INFO    ] 200
[2026-06-12 17:48:58,805.805 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:48:58,835.835 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 17:48:58,836.836 INFO    ] No update needed
[2026-06-12 17:48:58,838.838 INFO    ] Checking for camera pi updates...
[2026-06-12 17:48:58,859.859 INFO    ] 200
[2026-06-12 17:48:58,860.860 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:48:58,884.884 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 17:48:58,992.992 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 17:48:58,994.994 INFO    ] No camera update needed
[2026-06-12 17:48:58,995.995 INFO    ] Script finished. Safe exiting...
[2026-06-12 17:48:58,996.996 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 17:48:59,000.000 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 17:48:59,003.003 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 17:49:01,035.035 INFO    ] ================================================
[2026-06-12 17:49:01,050.050 INFO    ] Launching Daemon at Fri Jun 12 17:49:01 IST 2026
[2026-06-12 17:49:01,061.061 INFO    ] ================================================
[2026-06-12 17:49:01,401.401 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 17:49:01
[2026-06-12 17:49:01,716.716 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 17:49:01,858.858 INFO    ] Initializing speech engine...
[2026-06-12 17:49:01,864.864 INFO    ] 2026-06-12 17:49:01
[2026-06-12 17:49:02,147.147 INFO    ] 2026-06-12 17:49:02
[2026-06-12 17:49:02,212.212 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 17:49:02,449.449 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 17:49:02,453.453 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 17:49:02,643.643 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 17:49:02,710.710 INFO    ] time= 12/06/2026 17:49:02
[2026-06-12 17:49:02,719.719 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 17:49:02,728.728 INFO    ] Checking for existing commands in stream...
[2026-06-12 17:49:02,809.809 INFO    ] No existing commands found in stream
[2026-06-12 17:49:07,832.832 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 17:49:07,835.835 INFO    ] Waiting 2.89 seconds before fallback handling...
[2026-06-12 17:49:11,105.105 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 17:49:11,106.106 INFO    ] Checking for system updates...
[2026-06-12 17:49:11,127.127 INFO    ] 200
[2026-06-12 17:49:11,129.129 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:49:11,158.158 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 17:49:11,160.160 INFO    ] No update needed
[2026-06-12 17:49:11,161.161 INFO    ] Checking for camera pi updates...
[2026-06-12 17:49:11,181.181 INFO    ] 200
[2026-06-12 17:49:11,183.183 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:49:11,207.207 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 17:49:11,254.254 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 17:49:11,255.255 INFO    ] No camera update needed
[2026-06-12 17:49:11,257.257 INFO    ] Script finished. Safe exiting...
[2026-06-12 17:49:11,258.258 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 17:49:11,261.261 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 17:49:11,264.264 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 17:49:13,302.302 INFO    ] ================================================
[2026-06-12 17:49:13,317.317 INFO    ] Launching Daemon at Fri Jun 12 17:49:13 IST 2026
[2026-06-12 17:49:13,328.328 INFO    ] ================================================
[2026-06-12 17:49:13,673.673 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 17:49:13
[2026-06-12 17:49:14,005.005 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 17:49:14,156.156 INFO    ] Initializing speech engine...
[2026-06-12 17:49:14,161.161 INFO    ] 2026-06-12 17:49:14
[2026-06-12 17:49:14,370.370 INFO    ] 2026-06-12 17:49:14
[2026-06-12 17:49:14,399.399 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 17:49:14,586.586 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 17:49:14,596.596 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 17:49:14,728.728 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 17:49:14,796.796 INFO    ] time= 12/06/2026 17:49:14
[2026-06-12 17:49:14,821.821 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 17:49:14,827.827 INFO    ] Checking for existing commands in stream...
[2026-06-12 17:49:14,895.895 INFO    ] No existing commands found in stream
[2026-06-12 17:49:19,913.913 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 17:49:19,916.916 INFO    ] Waiting 0.79 seconds before fallback handling...
[2026-06-12 17:49:21,087.087 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 17:49:21,089.089 INFO    ] Checking for system updates...
[2026-06-12 17:49:21,109.109 INFO    ] 200
[2026-06-12 17:49:21,111.111 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:49:21,141.141 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 17:49:21,143.143 INFO    ] No update needed
[2026-06-12 17:49:21,144.144 INFO    ] Checking for camera pi updates...
[2026-06-12 17:49:21,164.164 INFO    ] 200
[2026-06-12 17:49:21,165.165 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:49:21,191.191 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 17:49:21,244.244 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 17:49:21,245.245 INFO    ] No camera update needed
[2026-06-12 17:49:21,247.247 INFO    ] Script finished. Safe exiting...
[2026-06-12 17:49:21,248.248 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 17:49:21,251.251 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 17:49:21,254.254 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 17:49:23,293.293 INFO    ] ================================================
[2026-06-12 17:49:23,308.308 INFO    ] Launching Daemon at Fri Jun 12 17:49:23 IST 2026
[2026-06-12 17:49:23,319.319 INFO    ] ================================================
[2026-06-12 17:49:23,683.683 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 17:49:23
[2026-06-12 17:49:24,015.015 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 17:49:24,165.165 INFO    ] Initializing speech engine...
[2026-06-12 17:49:24,170.170 INFO    ] 2026-06-12 17:49:24
[2026-06-12 17:49:24,377.377 INFO    ] 2026-06-12 17:49:24
[2026-06-12 17:49:24,407.407 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 17:49:24,593.593 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 17:49:24,602.602 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 17:49:24,733.733 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 17:49:24,797.797 INFO    ] time= 12/06/2026 17:49:24
[2026-06-12 17:49:24,824.824 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 17:49:24,831.831 INFO    ] Checking for existing commands in stream...
[2026-06-12 17:49:24,898.898 INFO    ] No existing commands found in stream
[2026-06-12 17:49:29,908.908 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 17:49:29,911.911 INFO    ] Waiting 3.50 seconds before fallback handling...
[2026-06-12 17:49:33,771.771 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 17:49:33,774.774 INFO    ] Checking for system updates...
[2026-06-12 17:49:33,811.811 INFO    ] 200
[2026-06-12 17:49:33,813.813 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:49:33,871.871 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 17:49:33,873.873 INFO    ] No update needed
[2026-06-12 17:49:33,874.874 INFO    ] Checking for camera pi updates...
[2026-06-12 17:49:33,894.894 INFO    ] 200
[2026-06-12 17:49:33,896.896 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:49:33,919.919 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 17:49:33,974.974 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 17:49:33,975.975 INFO    ] No camera update needed
[2026-06-12 17:49:33,976.976 INFO    ] Script finished. Safe exiting...
[2026-06-12 17:49:33,978.978 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 17:49:33,981.981 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 17:49:33,984.984 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 17:49:36,022.022 INFO    ] ================================================
[2026-06-12 17:49:36,037.037 INFO    ] Launching Daemon at Fri Jun 12 17:49:36 IST 2026
[2026-06-12 17:49:36,048.048 INFO    ] ================================================
[2026-06-12 17:49:36,415.415 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 17:49:36
[2026-06-12 17:49:36,730.730 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 17:49:36,866.866 INFO    ] Initializing speech engine...
[2026-06-12 17:49:36,879.879 INFO    ] 2026-06-12 17:49:36
[2026-06-12 17:49:37,096.096 INFO    ] 2026-06-12 17:49:37
[2026-06-12 17:49:37,127.127 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 17:49:37,257.257 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 17:49:37,300.300 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 17:49:37,463.463 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 17:49:37,525.525 INFO    ] time= 12/06/2026 17:49:37
[2026-06-12 17:49:37,567.567 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 17:49:37,570.570 INFO    ] Checking for existing commands in stream...
[2026-06-12 17:49:37,671.671 INFO    ] No existing commands found in stream
[2026-06-12 17:49:42,680.680 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 17:49:42,682.682 INFO    ] Waiting 0.31 seconds before fallback handling...
[2026-06-12 17:49:43,362.362 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 17:49:43,364.364 INFO    ] Checking for system updates...
[2026-06-12 17:49:43,384.384 INFO    ] 200
[2026-06-12 17:49:43,385.385 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:49:43,416.416 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 17:49:43,418.418 INFO    ] No update needed
[2026-06-12 17:49:43,419.419 INFO    ] Checking for camera pi updates...
[2026-06-12 17:49:43,439.439 INFO    ] 200
[2026-06-12 17:49:43,441.441 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:49:43,463.463 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 17:49:43,516.516 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 17:49:43,517.517 INFO    ] No camera update needed
[2026-06-12 17:49:43,519.519 INFO    ] Script finished. Safe exiting...
[2026-06-12 17:49:43,520.520 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 17:49:43,523.523 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 17:49:43,526.526 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 17:49:45,564.564 INFO    ] ================================================
[2026-06-12 17:49:45,580.580 INFO    ] Launching Daemon at Fri Jun 12 17:49:45 IST 2026
[2026-06-12 17:49:45,591.591 INFO    ] ================================================
[2026-06-12 17:49:45,954.954 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 17:49:45
[2026-06-12 17:49:46,283.283 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 17:49:46,420.420 INFO    ] Initializing speech engine...
[2026-06-12 17:49:46,432.432 INFO    ] 2026-06-12 17:49:46
[2026-06-12 17:49:46,645.645 INFO    ] 2026-06-12 17:49:46
[2026-06-12 17:49:46,673.673 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 17:49:46,855.855 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 17:49:46,866.866 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 17:49:46,987.987 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 17:49:47,048.048 INFO    ] time= 12/06/2026 17:49:46
[2026-06-12 17:49:47,082.082 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 17:49:47,091.091 INFO    ] Checking for existing commands in stream...
[2026-06-12 17:49:47,157.157 INFO    ] No existing commands found in stream
[2026-06-12 17:49:52,168.168 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 17:49:52,171.171 INFO    ] Waiting 0.77 seconds before fallback handling...
[2026-06-12 17:49:53,301.301 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 17:49:53,303.303 INFO    ] Checking for system updates...
[2026-06-12 17:49:53,323.323 INFO    ] 200
[2026-06-12 17:49:53,324.324 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:49:53,354.354 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 17:49:53,355.355 INFO    ] No update needed
[2026-06-12 17:49:53,357.357 INFO    ] Checking for camera pi updates...
[2026-06-12 17:49:53,376.376 INFO    ] 200
[2026-06-12 17:49:53,378.378 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:49:53,402.402 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 17:49:53,442.442 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 17:49:53,443.443 INFO    ] No camera update needed
[2026-06-12 17:49:53,444.444 INFO    ] Script finished. Safe exiting...
[2026-06-12 17:49:53,446.446 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 17:49:53,449.449 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 17:49:53,452.452 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 17:49:55,490.490 INFO    ] ================================================
[2026-06-12 17:49:55,505.505 INFO    ] Launching Daemon at Fri Jun 12 17:49:55 IST 2026
[2026-06-12 17:49:55,516.516 INFO    ] ================================================
[2026-06-12 17:49:55,849.849 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 17:49:55
[2026-06-12 17:49:56,160.160 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 17:49:56,300.300 INFO    ] Initializing speech engine...
[2026-06-12 17:49:56,308.308 INFO    ] 2026-06-12 17:49:56
[2026-06-12 17:49:56,522.522 INFO    ] 2026-06-12 17:49:56
[2026-06-12 17:49:56,551.551 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 17:49:56,745.745 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 17:49:56,749.749 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 17:49:56,892.892 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 17:49:56,956.956 INFO    ] time= 12/06/2026 17:49:56
[2026-06-12 17:49:56,987.987 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 17:49:56,994.994 INFO    ] Checking for existing commands in stream...
[2026-06-12 17:49:57,064.064 INFO    ] No existing commands found in stream
[2026-06-12 17:50:02,071.071 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 17:50:02,073.073 INFO    ] Waiting 0.93 seconds before fallback handling...
[2026-06-12 17:50:05,158.158 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 17:50:05,159.159 INFO    ] Checking for system updates...
[2026-06-12 17:50:05,183.183 INFO    ] 200
[2026-06-12 17:50:05,184.184 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:50:05,216.216 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 17:50:05,218.218 INFO    ] No update needed
[2026-06-12 17:50:05,219.219 INFO    ] Checking for camera pi updates...
[2026-06-12 17:50:05,239.239 INFO    ] 200
[2026-06-12 17:50:05,240.240 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:50:05,263.263 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 17:50:05,315.315 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 17:50:05,316.316 INFO    ] No camera update needed
[2026-06-12 17:50:05,318.318 INFO    ] Script finished. Safe exiting...
[2026-06-12 17:50:05,319.319 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 17:50:05,322.322 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 17:50:05,325.325 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 17:50:07,363.363 INFO    ] ================================================
[2026-06-12 17:50:07,378.378 INFO    ] Launching Daemon at Fri Jun 12 17:50:07 IST 2026
[2026-06-12 17:50:07,389.389 INFO    ] ================================================
[2026-06-12 17:50:07,736.736 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 17:50:07
[2026-06-12 17:50:08,065.065 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 17:50:08,208.208 INFO    ] Initializing speech engine...
[2026-06-12 17:50:08,210.210 INFO    ] 2026-06-12 17:50:08
[2026-06-12 17:50:08,428.428 INFO    ] 2026-06-12 17:50:08
[2026-06-12 17:50:08,457.457 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 17:50:08,644.644 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 17:50:08,654.654 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 17:50:08,783.783 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 17:50:08,852.852 INFO    ] time= 12/06/2026 17:50:08
[2026-06-12 17:50:08,876.876 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 17:50:08,883.883 INFO    ] Checking for existing commands in stream...
[2026-06-12 17:50:08,974.974 INFO    ] No existing commands found in stream
[2026-06-12 17:50:13,984.984 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 17:50:13,986.986 INFO    ] Waiting 2.00 seconds before fallback handling...
[2026-06-12 17:50:16,376.376 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 17:50:16,378.378 INFO    ] Checking for system updates...
[2026-06-12 17:50:16,398.398 INFO    ] 200
[2026-06-12 17:50:16,400.400 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:50:16,429.429 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 17:50:16,431.431 INFO    ] No update needed
[2026-06-12 17:50:16,432.432 INFO    ] Checking for camera pi updates...
[2026-06-12 17:50:16,453.453 INFO    ] 200
[2026-06-12 17:50:16,454.454 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:50:16,478.478 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 17:50:16,520.520 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 17:50:16,522.522 INFO    ] No camera update needed
[2026-06-12 17:50:16,523.523 INFO    ] Script finished. Safe exiting...
[2026-06-12 17:50:16,524.524 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 17:50:16,527.527 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 17:50:16,530.530 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 17:50:18,567.567 INFO    ] ================================================
[2026-06-12 17:50:18,582.582 INFO    ] Launching Daemon at Fri Jun 12 17:50:18 IST 2026
[2026-06-12 17:50:18,593.593 INFO    ] ================================================
[2026-06-12 17:50:18,954.954 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 17:50:18
[2026-06-12 17:50:19,270.270 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 17:50:19,401.401 INFO    ] Initializing speech engine...
[2026-06-12 17:50:19,409.409 INFO    ] 2026-06-12 17:50:19
[2026-06-12 17:50:19,622.622 INFO    ] 2026-06-12 17:50:19
[2026-06-12 17:50:19,651.651 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 17:50:19,835.835 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 17:50:19,845.845 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 17:50:19,967.967 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 17:50:20,035.035 INFO    ] time= 12/06/2026 17:50:19
[2026-06-12 17:50:20,061.061 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 17:50:20,068.068 INFO    ] Checking for existing commands in stream...
[2026-06-12 17:50:20,157.157 INFO    ] No existing commands found in stream
[2026-06-12 17:50:25,170.170 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 17:50:25,172.172 INFO    ] Waiting 1.50 seconds before fallback handling...
[2026-06-12 17:50:27,012.012 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 17:50:27,013.013 INFO    ] Checking for system updates...
[2026-06-12 17:50:27,034.034 INFO    ] 200
[2026-06-12 17:50:27,036.036 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:50:27,066.066 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 17:50:27,067.067 INFO    ] No update needed
[2026-06-12 17:50:27,068.068 INFO    ] Checking for camera pi updates...
[2026-06-12 17:50:27,090.090 INFO    ] 200
[2026-06-12 17:50:27,091.091 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:50:27,115.115 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 17:50:27,156.156 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 17:50:27,157.157 INFO    ] No camera update needed
[2026-06-12 17:50:27,158.158 INFO    ] Script finished. Safe exiting...
[2026-06-12 17:50:27,160.160 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 17:50:27,163.163 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 17:50:27,166.166 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 17:50:29,206.206 INFO    ] ================================================
[2026-06-12 17:50:29,222.222 INFO    ] Launching Daemon at Fri Jun 12 17:50:29 IST 2026
[2026-06-12 17:50:29,233.233 INFO    ] ================================================
[2026-06-12 17:50:29,603.603 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 17:50:29
[2026-06-12 17:50:29,941.941 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 17:50:30,096.096 INFO    ] Initializing speech engine...
[2026-06-12 17:50:30,101.101 INFO    ] 2026-06-12 17:50:30
[2026-06-12 17:50:30,309.309 INFO    ] 2026-06-12 17:50:30
[2026-06-12 17:50:30,339.339 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 17:50:30,527.527 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 17:50:30,539.539 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 17:50:30,684.684 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 17:50:30,739.739 INFO    ] time= 12/06/2026 17:50:30
[2026-06-12 17:50:30,762.762 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 17:50:30,768.768 INFO    ] Checking for existing commands in stream...
[2026-06-12 17:50:30,836.836 INFO    ] No existing commands found in stream
[2026-06-12 17:50:35,845.845 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 17:50:35,848.848 INFO    ] Waiting 2.80 seconds before fallback handling...
[2026-06-12 17:50:39,050.050 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 17:50:39,051.051 INFO    ] Checking for system updates...
[2026-06-12 17:50:39,073.073 INFO    ] 200
[2026-06-12 17:50:39,075.075 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:50:39,110.110 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 17:50:39,111.111 INFO    ] No update needed
[2026-06-12 17:50:39,113.113 INFO    ] Checking for camera pi updates...
[2026-06-12 17:50:39,133.133 INFO    ] 200
[2026-06-12 17:50:39,134.134 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:50:39,157.157 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 17:50:39,305.305 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 17:50:39,306.306 INFO    ] No camera update needed
[2026-06-12 17:50:39,308.308 INFO    ] Script finished. Safe exiting...
[2026-06-12 17:50:39,309.309 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 17:50:39,312.312 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 17:50:39,315.315 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 17:50:41,353.353 INFO    ] ================================================
[2026-06-12 17:50:41,369.369 INFO    ] Launching Daemon at Fri Jun 12 17:50:41 IST 2026
[2026-06-12 17:50:41,379.379 INFO    ] ================================================
[2026-06-12 17:50:41,740.740 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 17:50:41
[2026-06-12 17:50:42,079.079 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 17:50:42,232.232 INFO    ] Initializing speech engine...
[2026-06-12 17:50:42,238.238 INFO    ] 2026-06-12 17:50:42
[2026-06-12 17:50:42,450.450 INFO    ] 2026-06-12 17:50:42
[2026-06-12 17:50:42,479.479 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 17:50:42,667.667 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 17:50:42,678.678 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 17:50:42,844.844 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 17:50:42,890.890 INFO    ] time= 12/06/2026 17:50:42
[2026-06-12 17:50:42,901.901 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 17:50:42,907.907 INFO    ] Checking for existing commands in stream...
[2026-06-12 17:50:42,975.975 INFO    ] No existing commands found in stream
[2026-06-12 17:50:47,985.985 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 17:50:47,988.988 INFO    ] Waiting 1.13 seconds before fallback handling...
[2026-06-12 17:50:49,521.521 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 17:50:49,523.523 INFO    ] Checking for system updates...
[2026-06-12 17:50:49,544.544 INFO    ] 200
[2026-06-12 17:50:49,545.545 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:50:49,575.575 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 17:50:49,577.577 INFO    ] No update needed
[2026-06-12 17:50:49,578.578 INFO    ] Checking for camera pi updates...
[2026-06-12 17:50:49,600.600 INFO    ] 200
[2026-06-12 17:50:49,601.601 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:50:49,627.627 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 17:50:49,697.697 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 17:50:49,699.699 INFO    ] No camera update needed
[2026-06-12 17:50:49,700.700 INFO    ] Script finished. Safe exiting...
[2026-06-12 17:50:49,702.702 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 17:50:49,705.705 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 17:50:49,708.708 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 17:50:51,748.748 INFO    ] ================================================
[2026-06-12 17:50:51,763.763 INFO    ] Launching Daemon at Fri Jun 12 17:50:51 IST 2026
[2026-06-12 17:50:51,774.774 INFO    ] ================================================
[2026-06-12 17:50:52,144.144 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 17:50:52
[2026-06-12 17:50:52,461.461 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 17:50:52,594.594 INFO    ] Initializing speech engine...
[2026-06-12 17:50:52,608.608 INFO    ] 2026-06-12 17:50:52
[2026-06-12 17:50:52,812.812 INFO    ] 2026-06-12 17:50:52
[2026-06-12 17:50:52,842.842 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 17:50:53,025.025 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 17:50:53,033.033 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 17:50:53,160.160 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 17:50:53,222.222 INFO    ] time= 12/06/2026 17:50:53
[2026-06-12 17:50:53,253.253 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 17:50:53,260.260 INFO    ] Checking for existing commands in stream...
[2026-06-12 17:50:53,351.351 INFO    ] No existing commands found in stream
[2026-06-12 17:50:58,360.360 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 17:50:58,363.363 INFO    ] Waiting 0.02 seconds before fallback handling...
[2026-06-12 17:50:58,741.741 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 17:50:58,742.742 INFO    ] Checking for system updates...
[2026-06-12 17:50:58,762.762 INFO    ] 200
[2026-06-12 17:50:58,764.764 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:50:58,794.794 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 17:50:58,795.795 INFO    ] No update needed
[2026-06-12 17:50:58,796.796 INFO    ] Checking for camera pi updates...
[2026-06-12 17:50:58,818.818 INFO    ] 200
[2026-06-12 17:50:58,819.819 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:50:58,842.842 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 17:50:58,887.887 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 17:50:58,888.888 INFO    ] No camera update needed
[2026-06-12 17:50:58,890.890 INFO    ] Script finished. Safe exiting...
[2026-06-12 17:50:58,891.891 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 17:50:58,894.894 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 17:50:58,897.897 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 17:51:00,936.936 INFO    ] ================================================
[2026-06-12 17:51:00,951.951 INFO    ] Launching Daemon at Fri Jun 12 17:51:00 IST 2026
[2026-06-12 17:51:00,963.963 INFO    ] ================================================
[2026-06-12 17:51:01,328.328 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 17:51:01
[2026-06-12 17:51:01,655.655 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 17:51:01,948.948 INFO    ] Initializing speech engine...
[2026-06-12 17:51:01,950.950 INFO    ] 2026-06-12 17:51:01
[2026-06-12 17:51:02,190.190 INFO    ] 2026-06-12 17:51:02
[2026-06-12 17:51:02,231.231 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 17:51:02,386.386 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 17:51:02,451.451 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 17:51:02,635.635 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 17:51:02,646.646 INFO    ] time= 12/06/2026 17:51:02
[2026-06-12 17:51:02,711.711 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 17:51:02,752.752 INFO    ] Checking for existing commands in stream...
[2026-06-12 17:51:02,830.830 INFO    ] No existing commands found in stream
[2026-06-12 17:51:07,841.841 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 17:51:07,844.844 INFO    ] Waiting 0.65 seconds before fallback handling...
[2026-06-12 17:51:08,873.873 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 17:51:08,874.874 INFO    ] Checking for system updates...
[2026-06-12 17:51:08,895.895 INFO    ] 200
[2026-06-12 17:51:08,896.896 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:51:08,928.928 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 17:51:08,929.929 INFO    ] No update needed
[2026-06-12 17:51:08,931.931 INFO    ] Checking for camera pi updates...
[2026-06-12 17:51:08,950.950 INFO    ] 200
[2026-06-12 17:51:08,951.951 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:51:08,977.977 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 17:51:09,017.017 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 17:51:09,018.018 INFO    ] No camera update needed
[2026-06-12 17:51:09,020.020 INFO    ] Script finished. Safe exiting...
[2026-06-12 17:51:09,021.021 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 17:51:09,024.024 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 17:51:09,026.026 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 17:51:11,064.064 INFO    ] ================================================
[2026-06-12 17:51:11,080.080 INFO    ] Launching Daemon at Fri Jun 12 17:51:11 IST 2026
[2026-06-12 17:51:11,091.091 INFO    ] ================================================
[2026-06-12 17:51:11,466.466 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 17:51:11
[2026-06-12 17:51:11,781.781 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 17:51:11,912.912 INFO    ] Initializing speech engine...
[2026-06-12 17:51:11,917.917 INFO    ] 2026-06-12 17:51:11
[2026-06-12 17:51:12,146.146 INFO    ] 2026-06-12 17:51:12
[2026-06-12 17:51:12,177.177 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 17:51:12,371.371 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 17:51:12,381.381 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 17:51:12,515.515 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 17:51:12,578.578 INFO    ] time= 12/06/2026 17:51:12
[2026-06-12 17:51:12,606.606 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 17:51:12,617.617 INFO    ] Checking for existing commands in stream...
[2026-06-12 17:51:12,718.718 INFO    ] No existing commands found in stream
[2026-06-12 17:51:17,732.732 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 17:51:17,735.735 INFO    ] Waiting 1.38 seconds before fallback handling...
[2026-06-12 17:51:19,512.512 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 17:51:19,513.513 INFO    ] Checking for system updates...
[2026-06-12 17:51:19,533.533 INFO    ] 200
[2026-06-12 17:51:19,535.535 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:51:19,568.568 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 17:51:19,569.569 INFO    ] No update needed
[2026-06-12 17:51:19,570.570 INFO    ] Checking for camera pi updates...
[2026-06-12 17:51:19,590.590 INFO    ] 200
[2026-06-12 17:51:19,591.591 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:51:19,614.614 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 17:51:19,661.661 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 17:51:19,662.662 INFO    ] No camera update needed
[2026-06-12 17:51:19,664.664 INFO    ] Script finished. Safe exiting...
[2026-06-12 17:51:19,665.665 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 17:51:19,668.668 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 17:51:19,671.671 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 17:51:21,708.708 INFO    ] ================================================
[2026-06-12 17:51:21,723.723 INFO    ] Launching Daemon at Fri Jun 12 17:51:21 IST 2026
[2026-06-12 17:51:21,735.735 INFO    ] ================================================
[2026-06-12 17:51:22,085.085 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 17:51:22
[2026-06-12 17:51:22,396.396 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 17:51:22,533.533 INFO    ] Initializing speech engine...
[2026-06-12 17:51:22,544.544 INFO    ] 2026-06-12 17:51:22
[2026-06-12 17:51:22,745.745 INFO    ] 2026-06-12 17:51:22
[2026-06-12 17:51:22,775.775 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 17:51:22,962.962 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 17:51:22,972.972 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 17:51:23,100.100 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 17:51:23,162.162 INFO    ] time= 12/06/2026 17:51:23
[2026-06-12 17:51:23,193.193 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 17:51:23,198.198 INFO    ] Checking for existing commands in stream...
[2026-06-12 17:51:23,269.269 INFO    ] No existing commands found in stream
[2026-06-12 17:51:28,280.280 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 17:51:28,283.283 INFO    ] Waiting 2.84 seconds before fallback handling...
[2026-06-12 17:51:31,523.523 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 17:51:31,524.524 INFO    ] Checking for system updates...
[2026-06-12 17:51:31,546.546 INFO    ] 200
[2026-06-12 17:51:31,547.547 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:51:31,580.580 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 17:51:31,581.581 INFO    ] No update needed
[2026-06-12 17:51:31,582.582 INFO    ] Checking for camera pi updates...
[2026-06-12 17:51:31,602.602 INFO    ] 200
[2026-06-12 17:51:31,604.604 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:51:31,626.626 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 17:51:31,655.655 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 17:51:31,656.656 INFO    ] No camera update needed
[2026-06-12 17:51:31,658.658 INFO    ] Script finished. Safe exiting...
[2026-06-12 17:51:31,659.659 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 17:51:31,662.662 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 17:51:31,666.666 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 17:51:33,697.697 INFO    ] ================================================
[2026-06-12 17:51:33,713.713 INFO    ] Launching Daemon at Fri Jun 12 17:51:33 IST 2026
[2026-06-12 17:51:33,724.724 INFO    ] ================================================
[2026-06-12 17:51:34,070.070 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 17:51:34
[2026-06-12 17:51:34,386.386 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 17:51:34,529.529 INFO    ] Initializing speech engine...
[2026-06-12 17:51:34,534.534 INFO    ] 2026-06-12 17:51:34
[2026-06-12 17:51:34,738.738 INFO    ] 2026-06-12 17:51:34
[2026-06-12 17:51:34,766.766 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 17:51:34,951.951 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 17:51:34,959.959 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 17:51:35,088.088 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 17:51:35,152.152 INFO    ] time= 12/06/2026 17:51:35
[2026-06-12 17:51:35,179.179 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 17:51:35,186.186 INFO    ] Checking for existing commands in stream...
[2026-06-12 17:51:35,276.276 INFO    ] No existing commands found in stream
[2026-06-12 17:51:40,290.290 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 17:51:40,293.293 INFO    ] Waiting 3.97 seconds before fallback handling...
[2026-06-12 17:51:44,661.661 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 17:51:44,663.663 INFO    ] Checking for system updates...
[2026-06-12 17:51:44,683.683 INFO    ] 200
[2026-06-12 17:51:44,684.684 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:51:44,714.714 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 17:51:44,715.715 INFO    ] No update needed
[2026-06-12 17:51:44,716.716 INFO    ] Checking for camera pi updates...
[2026-06-12 17:51:44,735.735 INFO    ] 200
[2026-06-12 17:51:44,737.737 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:51:44,762.762 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 17:51:44,805.805 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 17:51:44,807.807 INFO    ] No camera update needed
[2026-06-12 17:51:44,808.808 INFO    ] Script finished. Safe exiting...
[2026-06-12 17:51:44,809.809 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 17:51:44,813.813 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 17:51:44,816.816 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 17:51:46,856.856 INFO    ] ================================================
[2026-06-12 17:51:46,871.871 INFO    ] Launching Daemon at Fri Jun 12 17:51:46 IST 2026
[2026-06-12 17:51:46,882.882 INFO    ] ================================================
[2026-06-12 17:51:47,247.247 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 17:51:47
[2026-06-12 17:51:47,557.557 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 17:51:47,691.691 INFO    ] Initializing speech engine...
[2026-06-12 17:51:47,699.699 INFO    ] 2026-06-12 17:51:47
[2026-06-12 17:51:47,920.920 INFO    ] 2026-06-12 17:51:47
[2026-06-12 17:51:47,950.950 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 17:51:48,139.139 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 17:51:48,150.150 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 17:51:48,291.291 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 17:51:48,353.353 INFO    ] time= 12/06/2026 17:51:48
[2026-06-12 17:51:48,391.391 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 17:51:48,393.393 INFO    ] Checking for existing commands in stream...
[2026-06-12 17:51:48,494.494 INFO    ] No existing commands found in stream
[2026-06-12 17:51:53,503.503 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 17:51:53,506.506 INFO    ] Waiting 1.85 seconds before fallback handling...
[2026-06-12 17:51:55,745.745 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 17:51:55,746.746 INFO    ] Checking for system updates...
[2026-06-12 17:51:55,768.768 INFO    ] 200
[2026-06-12 17:51:55,769.769 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:51:55,800.800 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 17:51:55,802.802 INFO    ] No update needed
[2026-06-12 17:51:55,803.803 INFO    ] Checking for camera pi updates...
[2026-06-12 17:51:55,823.823 INFO    ] 200
[2026-06-12 17:51:55,824.824 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:51:55,847.847 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 17:51:55,884.884 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 17:51:55,886.886 INFO    ] No camera update needed
[2026-06-12 17:51:55,887.887 INFO    ] Script finished. Safe exiting...
[2026-06-12 17:51:55,889.889 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 17:51:55,892.892 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 17:51:55,895.895 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 17:51:57,933.933 INFO    ] ================================================
[2026-06-12 17:51:57,948.948 INFO    ] Launching Daemon at Fri Jun 12 17:51:57 IST 2026
[2026-06-12 17:51:57,960.960 INFO    ] ================================================
[2026-06-12 17:51:58,309.309 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 17:51:58
[2026-06-12 17:51:58,622.622 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 17:51:58,752.752 INFO    ] Initializing speech engine...
[2026-06-12 17:51:58,757.757 INFO    ] 2026-06-12 17:51:58
[2026-06-12 17:51:58,978.978 INFO    ] 2026-06-12 17:51:58
[2026-06-12 17:51:59,008.008 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 17:51:59,195.195 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 17:51:59,205.205 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 17:51:59,338.338 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 17:51:59,402.402 INFO    ] time= 12/06/2026 17:51:59
[2026-06-12 17:51:59,431.431 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 17:51:59,438.438 INFO    ] Checking for existing commands in stream...
[2026-06-12 17:51:59,507.507 INFO    ] No existing commands found in stream
[2026-06-12 17:52:04,516.516 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 17:52:04,518.518 INFO    ] Waiting 1.34 seconds before fallback handling...
[2026-06-12 17:52:06,150.150 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 17:52:06,151.151 INFO    ] Checking for system updates...
[2026-06-12 17:52:06,172.172 INFO    ] 200
[2026-06-12 17:52:06,173.173 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:52:06,205.205 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 17:52:06,207.207 INFO    ] No update needed
[2026-06-12 17:52:06,208.208 INFO    ] Checking for camera pi updates...
[2026-06-12 17:52:06,227.227 INFO    ] 200
[2026-06-12 17:52:06,228.228 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:52:06,253.253 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 17:52:06,297.297 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 17:52:06,299.299 INFO    ] No camera update needed
[2026-06-12 17:52:06,300.300 INFO    ] Script finished. Safe exiting...
[2026-06-12 17:52:06,301.301 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 17:52:06,304.304 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 17:52:06,307.307 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 17:52:08,346.346 INFO    ] ================================================
[2026-06-12 17:52:08,361.361 INFO    ] Launching Daemon at Fri Jun 12 17:52:08 IST 2026
[2026-06-12 17:52:08,373.373 INFO    ] ================================================
[2026-06-12 17:52:08,728.728 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 17:52:08
[2026-06-12 17:52:09,039.039 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 17:52:09,169.169 INFO    ] Initializing speech engine...
[2026-06-12 17:52:09,177.177 INFO    ] 2026-06-12 17:52:09
[2026-06-12 17:52:09,388.388 INFO    ] 2026-06-12 17:52:09
[2026-06-12 17:52:09,417.417 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 17:52:09,599.599 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 17:52:09,608.608 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 17:52:09,741.741 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 17:52:09,807.807 INFO    ] time= 12/06/2026 17:52:09
[2026-06-12 17:52:09,831.831 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 17:52:09,833.833 INFO    ] Checking for existing commands in stream...
[2026-06-12 17:52:09,928.928 INFO    ] No existing commands found in stream
[2026-06-12 17:52:14,937.937 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 17:52:14,940.940 INFO    ] Waiting 3.02 seconds before fallback handling...
[2026-06-12 17:52:19,264.264 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 17:52:19,266.266 INFO    ] Checking for system updates...
[2026-06-12 17:52:19,305.305 INFO    ] 200
[2026-06-12 17:52:19,307.307 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:52:19,360.360 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 17:52:19,363.363 INFO    ] No update needed
[2026-06-12 17:52:19,365.365 INFO    ] Checking for camera pi updates...
[2026-06-12 17:52:19,396.396 INFO    ] 200
[2026-06-12 17:52:19,397.397 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:52:19,421.421 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 17:52:19,463.463 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 17:52:19,464.464 INFO    ] No camera update needed
[2026-06-12 17:52:19,466.466 INFO    ] Script finished. Safe exiting...
[2026-06-12 17:52:19,467.467 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 17:52:19,470.470 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 17:52:19,473.473 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 17:52:21,513.513 INFO    ] ================================================
[2026-06-12 17:52:21,529.529 INFO    ] Launching Daemon at Fri Jun 12 17:52:21 IST 2026
[2026-06-12 17:52:21,540.540 INFO    ] ================================================
[2026-06-12 17:52:21,902.902 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 17:52:21
[2026-06-12 17:52:22,218.218 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 17:52:22,349.349 INFO    ] Initializing speech engine...
[2026-06-12 17:52:22,363.363 INFO    ] 2026-06-12 17:52:22
[2026-06-12 17:52:22,570.570 INFO    ] 2026-06-12 17:52:22
[2026-06-12 17:52:22,597.597 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 17:52:22,781.781 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 17:52:22,790.790 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 17:52:22,935.935 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 17:52:22,987.987 INFO    ] time= 12/06/2026 17:52:22
[2026-06-12 17:52:23,009.009 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 17:52:23,016.016 INFO    ] Checking for existing commands in stream...
[2026-06-12 17:52:23,082.082 INFO    ] No existing commands found in stream
[2026-06-12 17:52:28,106.106 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 17:52:28,109.109 INFO    ] Waiting 0.87 seconds before fallback handling...
[2026-06-12 17:52:29,395.395 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 17:52:29,397.397 INFO    ] Checking for system updates...
[2026-06-12 17:52:29,417.417 INFO    ] 200
[2026-06-12 17:52:29,419.419 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:52:29,449.449 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 17:52:29,451.451 INFO    ] No update needed
[2026-06-12 17:52:29,452.452 INFO    ] Checking for camera pi updates...
[2026-06-12 17:52:29,472.472 INFO    ] 200
[2026-06-12 17:52:29,473.473 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:52:29,498.498 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 17:52:29,525.525 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 17:52:29,526.526 INFO    ] No camera update needed
[2026-06-12 17:52:29,528.528 INFO    ] Script finished. Safe exiting...
[2026-06-12 17:52:29,529.529 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 17:52:29,532.532 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 17:52:29,535.535 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 17:52:31,575.575 INFO    ] ================================================
[2026-06-12 17:52:31,591.591 INFO    ] Launching Daemon at Fri Jun 12 17:52:31 IST 2026
[2026-06-12 17:52:31,603.603 INFO    ] ================================================
[2026-06-12 17:52:31,954.954 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 17:52:31
[2026-06-12 17:52:32,337.337 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 17:52:32,507.507 INFO    ] Initializing speech engine...
[2026-06-12 17:52:32,511.511 INFO    ] 2026-06-12 17:52:32
[2026-06-12 17:52:32,741.741 INFO    ] 2026-06-12 17:52:32
[2026-06-12 17:52:32,771.771 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 17:52:32,901.901 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 17:52:32,924.924 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 17:52:33,075.075 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 17:52:33,118.118 INFO    ] time= 12/06/2026 17:52:33
[2026-06-12 17:52:33,175.175 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 17:52:33,198.198 INFO    ] Checking for existing commands in stream...
[2026-06-12 17:52:33,270.270 INFO    ] No existing commands found in stream
[2026-06-12 17:52:38,279.279 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 17:52:38,283.283 INFO    ] Waiting 2.75 seconds before fallback handling...
[2026-06-12 17:52:41,396.396 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 17:52:41,397.397 INFO    ] Checking for system updates...
[2026-06-12 17:52:41,418.418 INFO    ] 200
[2026-06-12 17:52:41,419.419 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:52:41,449.449 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 17:52:41,451.451 INFO    ] No update needed
[2026-06-12 17:52:41,452.452 INFO    ] Checking for camera pi updates...
[2026-06-12 17:52:41,473.473 INFO    ] 200
[2026-06-12 17:52:41,481.481 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:52:41,511.511 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 17:52:41,650.650 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 17:52:41,651.651 INFO    ] No camera update needed
[2026-06-12 17:52:41,653.653 INFO    ] Script finished. Safe exiting...
[2026-06-12 17:52:41,654.654 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 17:52:41,657.657 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 17:52:41,660.660 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 17:52:43,699.699 INFO    ] ================================================
[2026-06-12 17:52:43,714.714 INFO    ] Launching Daemon at Fri Jun 12 17:52:43 IST 2026
[2026-06-12 17:52:43,725.725 INFO    ] ================================================
[2026-06-12 17:52:44,070.070 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 17:52:44
[2026-06-12 17:52:44,382.382 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 17:52:44,513.513 INFO    ] Initializing speech engine...
[2026-06-12 17:52:44,518.518 INFO    ] 2026-06-12 17:52:44
[2026-06-12 17:52:44,746.746 INFO    ] 2026-06-12 17:52:44
[2026-06-12 17:52:44,777.777 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 17:52:44,906.906 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 17:52:44,956.956 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 17:52:45,123.123 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 17:52:45,182.182 INFO    ] time= 12/06/2026 17:52:45
[2026-06-12 17:52:45,220.220 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 17:52:45,222.222 INFO    ] Checking for existing commands in stream...
[2026-06-12 17:52:45,299.299 INFO    ] No existing commands found in stream
[2026-06-12 17:52:50,308.308 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 17:52:50,311.311 INFO    ] Waiting 2.72 seconds before fallback handling...
[2026-06-12 17:52:53,421.421 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 17:52:53,422.422 INFO    ] Checking for system updates...
[2026-06-12 17:52:53,442.442 INFO    ] 200
[2026-06-12 17:52:53,444.444 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:52:53,475.475 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 17:52:53,477.477 INFO    ] No update needed
[2026-06-12 17:52:53,478.478 INFO    ] Checking for camera pi updates...
[2026-06-12 17:52:53,497.497 INFO    ] 200
[2026-06-12 17:52:53,498.498 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:52:53,521.521 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 17:52:53,559.559 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 17:52:53,560.560 INFO    ] No camera update needed
[2026-06-12 17:52:53,561.561 INFO    ] Script finished. Safe exiting...
[2026-06-12 17:52:53,563.563 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 17:52:53,565.565 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 17:52:53,568.568 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 17:52:55,606.606 INFO    ] ================================================
[2026-06-12 17:52:55,622.622 INFO    ] Launching Daemon at Fri Jun 12 17:52:55 IST 2026
[2026-06-12 17:52:55,633.633 INFO    ] ================================================
[2026-06-12 17:52:55,971.971 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 17:52:55
[2026-06-12 17:52:56,282.282 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 17:52:56,411.411 INFO    ] Initializing speech engine...
[2026-06-12 17:52:56,415.415 INFO    ] 2026-06-12 17:52:56
[2026-06-12 17:52:56,638.638 INFO    ] 2026-06-12 17:52:56
[2026-06-12 17:52:56,667.667 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 17:52:56,853.853 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 17:52:56,862.862 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 17:52:56,987.987 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 17:52:57,048.048 INFO    ] time= 12/06/2026 17:52:56
[2026-06-12 17:52:57,083.083 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 17:52:57,088.088 INFO    ] Checking for existing commands in stream...
[2026-06-12 17:52:57,184.184 INFO    ] No existing commands found in stream
[2026-06-12 17:53:02,191.191 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 17:53:02,192.192 INFO    ] Waiting 3.57 seconds before fallback handling...
[2026-06-12 17:53:06,138.138 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 17:53:06,140.140 INFO    ] Checking for system updates...
[2026-06-12 17:53:06,160.160 INFO    ] 200
[2026-06-12 17:53:06,162.162 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:53:06,193.193 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 17:53:06,194.194 INFO    ] No update needed
[2026-06-12 17:53:06,196.196 INFO    ] Checking for camera pi updates...
[2026-06-12 17:53:06,217.217 INFO    ] 200
[2026-06-12 17:53:06,219.219 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:53:06,241.241 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 17:53:06,304.304 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 17:53:06,306.306 INFO    ] No camera update needed
[2026-06-12 17:53:06,307.307 INFO    ] Script finished. Safe exiting...
[2026-06-12 17:53:06,308.308 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 17:53:06,311.311 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 17:53:06,314.314 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 17:53:08,352.352 INFO    ] ================================================
[2026-06-12 17:53:08,368.368 INFO    ] Launching Daemon at Fri Jun 12 17:53:08 IST 2026
[2026-06-12 17:53:08,378.378 INFO    ] ================================================
[2026-06-12 17:53:08,723.723 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 17:53:08
[2026-06-12 17:53:09,055.055 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 17:53:09,207.207 INFO    ] Initializing speech engine...
[2026-06-12 17:53:09,212.212 INFO    ] 2026-06-12 17:53:09
[2026-06-12 17:53:09,421.421 INFO    ] 2026-06-12 17:53:09
[2026-06-12 17:53:09,450.450 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 17:53:09,637.637 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 17:53:09,646.646 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 17:53:09,792.792 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 17:53:09,848.848 INFO    ] time= 12/06/2026 17:53:09
[2026-06-12 17:53:09,871.871 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 17:53:09,876.876 INFO    ] Checking for existing commands in stream...
[2026-06-12 17:53:09,943.943 INFO    ] No existing commands found in stream
[2026-06-12 17:53:14,958.958 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 17:53:14,961.961 INFO    ] Waiting 3.29 seconds before fallback handling...
[2026-06-12 17:53:18,603.603 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 17:53:18,604.604 INFO    ] Checking for system updates...
[2026-06-12 17:53:18,625.625 INFO    ] 200
[2026-06-12 17:53:18,627.627 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:53:18,657.657 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 17:53:18,659.659 INFO    ] No update needed
[2026-06-12 17:53:18,660.660 INFO    ] Checking for camera pi updates...
[2026-06-12 17:53:18,680.680 INFO    ] 200
[2026-06-12 17:53:18,681.681 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:53:18,706.706 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 17:53:18,757.757 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 17:53:18,759.759 INFO    ] No camera update needed
[2026-06-12 17:53:18,760.760 INFO    ] Script finished. Safe exiting...
[2026-06-12 17:53:18,762.762 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 17:53:18,765.765 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 17:53:18,768.768 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 17:53:20,806.806 INFO    ] ================================================
[2026-06-12 17:53:20,822.822 INFO    ] Launching Daemon at Fri Jun 12 17:53:20 IST 2026
[2026-06-12 17:53:20,832.832 INFO    ] ================================================
[2026-06-12 17:53:21,155.155 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 17:53:21
[2026-06-12 17:53:21,472.472 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 17:53:21,613.613 INFO    ] Initializing speech engine...
[2026-06-12 17:53:21,621.621 INFO    ] 2026-06-12 17:53:21
[2026-06-12 17:53:21,845.845 INFO    ] 2026-06-12 17:53:21
[2026-06-12 17:53:21,876.876 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 17:53:22,072.072 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 17:53:22,080.080 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 17:53:22,245.245 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 17:53:22,292.292 INFO    ] time= 12/06/2026 17:53:22
[2026-06-12 17:53:22,315.315 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 17:53:22,322.322 INFO    ] Checking for existing commands in stream...
[2026-06-12 17:53:22,393.393 INFO    ] No existing commands found in stream
[2026-06-12 17:53:27,402.402 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 17:53:27,405.405 INFO    ] Waiting 1.36 seconds before fallback handling...
[2026-06-12 17:53:29,150.150 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 17:53:29,151.151 INFO    ] Checking for system updates...
[2026-06-12 17:53:29,171.171 INFO    ] 200
[2026-06-12 17:53:29,173.173 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:53:29,202.202 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 17:53:29,204.204 INFO    ] No update needed
[2026-06-12 17:53:29,205.205 INFO    ] Checking for camera pi updates...
[2026-06-12 17:53:29,224.224 INFO    ] 200
[2026-06-12 17:53:29,225.225 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:53:29,251.251 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 17:53:29,300.300 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 17:53:29,301.301 INFO    ] No camera update needed
[2026-06-12 17:53:29,303.303 INFO    ] Script finished. Safe exiting...
[2026-06-12 17:53:29,304.304 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 17:53:29,307.307 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 17:53:29,310.310 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 17:53:31,341.341 INFO    ] ================================================
[2026-06-12 17:53:31,350.350 INFO    ] Launching Daemon at Fri Jun 12 17:53:31 IST 2026
[2026-06-12 17:53:31,357.357 INFO    ] ================================================
[2026-06-12 17:53:31,683.683 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 17:53:31
[2026-06-12 17:53:32,025.025 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 17:53:32,160.160 INFO    ] Initializing speech engine...
[2026-06-12 17:53:32,172.172 INFO    ] 2026-06-12 17:53:32
[2026-06-12 17:53:32,387.387 INFO    ] 2026-06-12 17:53:32
[2026-06-12 17:53:32,417.417 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 17:53:32,545.545 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 17:53:32,580.580 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 17:53:32,753.753 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 17:53:32,761.761 INFO    ] time= 12/06/2026 17:53:32
[2026-06-12 17:53:32,828.828 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 17:53:32,856.856 INFO    ] Checking for existing commands in stream...
[2026-06-12 17:53:32,935.935 INFO    ] No existing commands found in stream
[2026-06-12 17:53:37,944.944 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 17:53:37,947.947 INFO    ] Waiting 0.21 seconds before fallback handling...
[2026-06-12 17:53:38,538.538 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 17:53:38,540.540 INFO    ] Checking for system updates...
[2026-06-12 17:53:38,560.560 INFO    ] 200
[2026-06-12 17:53:38,562.562 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:53:38,592.592 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 17:53:38,593.593 INFO    ] No update needed
[2026-06-12 17:53:38,594.594 INFO    ] Checking for camera pi updates...
[2026-06-12 17:53:38,614.614 INFO    ] 200
[2026-06-12 17:53:38,616.616 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:53:38,638.638 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 17:53:38,684.684 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 17:53:38,686.686 INFO    ] No camera update needed
[2026-06-12 17:53:38,687.687 INFO    ] Script finished. Safe exiting...
[2026-06-12 17:53:38,688.688 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 17:53:38,691.691 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 17:53:38,694.694 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 17:53:40,732.732 INFO    ] ================================================
[2026-06-12 17:53:40,748.748 INFO    ] Launching Daemon at Fri Jun 12 17:53:40 IST 2026
[2026-06-12 17:53:40,759.759 INFO    ] ================================================
[2026-06-12 17:53:41,124.124 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 17:53:41
[2026-06-12 17:53:41,441.441 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 17:53:41,586.586 INFO    ] Initializing speech engine...
[2026-06-12 17:53:41,591.591 INFO    ] 2026-06-12 17:53:41
[2026-06-12 17:53:41,795.795 INFO    ] 2026-06-12 17:53:41
[2026-06-12 17:53:41,824.824 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 17:53:42,007.007 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 17:53:42,017.017 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 17:53:42,196.196 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 17:53:42,233.233 INFO    ] time= 12/06/2026 17:53:42
[2026-06-12 17:53:42,240.240 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 17:53:42,242.242 INFO    ] Checking for existing commands in stream...
[2026-06-12 17:53:42,308.308 INFO    ] No existing commands found in stream
[2026-06-12 17:53:47,317.317 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 17:53:47,320.320 INFO    ] Waiting 3.40 seconds before fallback handling...
[2026-06-12 17:53:52,055.055 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 17:53:52,058.058 INFO    ] Checking for system updates...
[2026-06-12 17:53:52,096.096 INFO    ] 200
[2026-06-12 17:53:52,099.099 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:53:52,151.151 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 17:53:52,154.154 INFO    ] No update needed
[2026-06-12 17:53:52,156.156 INFO    ] Checking for camera pi updates...
[2026-06-12 17:53:52,190.190 INFO    ] 200
[2026-06-12 17:53:52,193.193 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:53:52,234.234 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 17:53:52,271.271 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 17:53:52,274.274 INFO    ] No camera update needed
[2026-06-12 17:53:52,277.277 INFO    ] Script finished. Safe exiting...
[2026-06-12 17:53:52,279.279 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 17:53:52,286.286 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 17:53:52,291.291 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 17:53:54,332.332 INFO    ] ================================================
[2026-06-12 17:53:54,347.347 INFO    ] Launching Daemon at Fri Jun 12 17:53:54 IST 2026
[2026-06-12 17:53:54,358.358 INFO    ] ================================================
[2026-06-12 17:53:54,711.711 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 17:53:54
[2026-06-12 17:53:55,029.029 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 17:53:55,160.160 INFO    ] Initializing speech engine...
[2026-06-12 17:53:55,169.169 INFO    ] 2026-06-12 17:53:55
[2026-06-12 17:53:55,381.381 INFO    ] 2026-06-12 17:53:55
[2026-06-12 17:53:55,409.409 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 17:53:55,593.593 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 17:53:55,602.602 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 17:53:55,752.752 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 17:53:55,800.800 INFO    ] time= 12/06/2026 17:53:55
[2026-06-12 17:53:55,821.821 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 17:53:55,827.827 INFO    ] Checking for existing commands in stream...
[2026-06-12 17:53:55,895.895 INFO    ] No existing commands found in stream
[2026-06-12 17:54:00,909.909 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 17:54:00,912.912 INFO    ] Waiting 1.28 seconds before fallback handling...
[2026-06-12 17:54:02,555.555 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 17:54:02,557.557 INFO    ] Checking for system updates...
[2026-06-12 17:54:02,577.577 INFO    ] 200
[2026-06-12 17:54:02,579.579 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:54:02,609.609 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 17:54:02,610.610 INFO    ] No update needed
[2026-06-12 17:54:02,612.612 INFO    ] Checking for camera pi updates...
[2026-06-12 17:54:02,631.631 INFO    ] 200
[2026-06-12 17:54:02,632.632 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:54:02,655.655 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 17:54:02,724.724 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 17:54:02,726.726 INFO    ] No camera update needed
[2026-06-12 17:54:02,727.727 INFO    ] Script finished. Safe exiting...
[2026-06-12 17:54:02,728.728 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 17:54:02,731.731 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 17:54:02,734.734 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 17:54:04,773.773 INFO    ] ================================================
[2026-06-12 17:54:04,789.789 INFO    ] Launching Daemon at Fri Jun 12 17:54:04 IST 2026
[2026-06-12 17:54:04,800.800 INFO    ] ================================================
[2026-06-12 17:54:05,145.145 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 17:54:05
[2026-06-12 17:54:05,501.501 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 17:54:05,646.646 INFO    ] Initializing speech engine...
[2026-06-12 17:54:05,655.655 INFO    ] 2026-06-12 17:54:05
[2026-06-12 17:54:05,868.868 INFO    ] 2026-06-12 17:54:05
[2026-06-12 17:54:05,898.898 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 17:54:06,038.038 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 17:54:06,087.087 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 17:54:06,223.223 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 17:54:06,285.285 INFO    ] time= 12/06/2026 17:54:06
[2026-06-12 17:54:06,319.319 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 17:54:06,326.326 INFO    ] Checking for existing commands in stream...
[2026-06-12 17:54:06,394.394 INFO    ] No existing commands found in stream
[2026-06-12 17:54:11,407.407 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 17:54:11,409.409 INFO    ] Waiting 1.82 seconds before fallback handling...
[2026-06-12 17:54:13,618.618 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 17:54:13,619.619 INFO    ] Checking for system updates...
[2026-06-12 17:54:13,644.644 INFO    ] 200
[2026-06-12 17:54:13,645.645 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:54:13,675.675 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 17:54:13,676.676 INFO    ] No update needed
[2026-06-12 17:54:13,678.678 INFO    ] Checking for camera pi updates...
[2026-06-12 17:54:13,697.697 INFO    ] 200
[2026-06-12 17:54:13,698.698 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:54:13,721.721 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 17:54:13,762.762 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 17:54:13,763.763 INFO    ] No camera update needed
[2026-06-12 17:54:13,764.764 INFO    ] Script finished. Safe exiting...
[2026-06-12 17:54:13,766.766 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 17:54:13,769.769 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 17:54:13,772.772 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 17:54:15,809.809 INFO    ] ================================================
[2026-06-12 17:54:15,825.825 INFO    ] Launching Daemon at Fri Jun 12 17:54:15 IST 2026
[2026-06-12 17:54:15,836.836 INFO    ] ================================================
[2026-06-12 17:54:16,180.180 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 17:54:16
[2026-06-12 17:54:16,493.493 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 17:54:16,626.626 INFO    ] Initializing speech engine...
[2026-06-12 17:54:16,631.631 INFO    ] 2026-06-12 17:54:16
[2026-06-12 17:54:16,860.860 INFO    ] 2026-06-12 17:54:16
[2026-06-12 17:54:16,891.891 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 17:54:17,023.023 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 17:54:17,066.066 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 17:54:17,231.231 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 17:54:17,289.289 INFO    ] time= 12/06/2026 17:54:17
[2026-06-12 17:54:17,329.329 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 17:54:17,340.340 INFO    ] Checking for existing commands in stream...
[2026-06-12 17:54:17,415.415 INFO    ] No existing commands found in stream
[2026-06-12 17:54:22,426.426 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 17:54:22,428.428 INFO    ] Waiting 1.22 seconds before fallback handling...
[2026-06-12 17:54:24,020.020 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 17:54:24,021.021 INFO    ] Checking for system updates...
[2026-06-12 17:54:24,042.042 INFO    ] 200
[2026-06-12 17:54:24,043.043 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:54:24,074.074 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 17:54:24,076.076 INFO    ] No update needed
[2026-06-12 17:54:24,077.077 INFO    ] Checking for camera pi updates...
[2026-06-12 17:54:24,096.096 INFO    ] 200
[2026-06-12 17:54:24,097.097 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:54:24,120.120 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 17:54:24,192.192 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 17:54:24,193.193 INFO    ] No camera update needed
[2026-06-12 17:54:24,194.194 INFO    ] Script finished. Safe exiting...
[2026-06-12 17:54:24,196.196 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 17:54:24,199.199 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 17:54:24,201.201 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 17:54:26,239.239 INFO    ] ================================================
[2026-06-12 17:54:26,255.255 INFO    ] Launching Daemon at Fri Jun 12 17:54:26 IST 2026
[2026-06-12 17:54:26,266.266 INFO    ] ================================================
[2026-06-12 17:54:26,612.612 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 17:54:26
[2026-06-12 17:54:26,926.926 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 17:54:27,066.066 INFO    ] Initializing speech engine...
[2026-06-12 17:54:27,074.074 INFO    ] 2026-06-12 17:54:27
[2026-06-12 17:54:27,291.291 INFO    ] 2026-06-12 17:54:27
[2026-06-12 17:54:27,322.322 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 17:54:27,516.516 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 17:54:27,519.519 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 17:54:27,665.665 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 17:54:27,719.719 INFO    ] time= 12/06/2026 17:54:27
[2026-06-12 17:54:27,741.741 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 17:54:27,763.763 INFO    ] Checking for existing commands in stream...
[2026-06-12 17:54:27,838.838 INFO    ] No existing commands found in stream
[2026-06-12 17:54:32,848.848 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 17:54:32,851.851 INFO    ] Waiting 1.49 seconds before fallback handling...
[2026-06-12 17:54:39,697.697 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 17:54:39,698.698 INFO    ] Checking for system updates...
[2026-06-12 17:54:39,719.719 INFO    ] 200
[2026-06-12 17:54:39,721.721 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:54:39,752.752 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 17:54:39,754.754 INFO    ] No update needed
[2026-06-12 17:54:39,755.755 INFO    ] Checking for camera pi updates...
[2026-06-12 17:54:39,774.774 INFO    ] 200
[2026-06-12 17:54:39,776.776 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:54:39,801.801 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 17:54:39,849.849 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 17:54:39,851.851 INFO    ] No camera update needed
[2026-06-12 17:54:39,852.852 INFO    ] Script finished. Safe exiting...
[2026-06-12 17:54:39,853.853 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 17:54:39,856.856 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 17:54:39,859.859 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 17:54:41,897.897 INFO    ] ================================================
[2026-06-12 17:54:41,912.912 INFO    ] Launching Daemon at Fri Jun 12 17:54:41 IST 2026
[2026-06-12 17:54:41,924.924 INFO    ] ================================================
[2026-06-12 17:54:42,273.273 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 17:54:42
[2026-06-12 17:54:42,584.584 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 17:54:42,716.716 INFO    ] Initializing speech engine...
[2026-06-12 17:54:42,720.720 INFO    ] 2026-06-12 17:54:42
[2026-06-12 17:54:42,948.948 INFO    ] 2026-06-12 17:54:42
[2026-06-12 17:54:42,978.978 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 17:54:43,172.172 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 17:54:43,176.176 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 17:54:43,321.321 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 17:54:43,390.390 INFO    ] time= 12/06/2026 17:54:43
[2026-06-12 17:54:43,417.417 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 17:54:43,424.424 INFO    ] Checking for existing commands in stream...
[2026-06-12 17:54:43,493.493 INFO    ] No existing commands found in stream
[2026-06-12 17:54:48,504.504 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 17:54:48,506.506 INFO    ] Waiting 1.06 seconds before fallback handling...
[2026-06-12 17:54:49,930.930 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 17:54:49,932.932 INFO    ] Checking for system updates...
[2026-06-12 17:54:49,952.952 INFO    ] 200
[2026-06-12 17:54:49,953.953 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:54:49,983.983 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 17:54:49,984.984 INFO    ] No update needed
[2026-06-12 17:54:49,986.986 INFO    ] Checking for camera pi updates...
[2026-06-12 17:54:50,005.005 INFO    ] 200
[2026-06-12 17:54:50,006.006 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:54:50,033.033 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 17:54:50,156.156 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 17:54:50,157.157 INFO    ] No camera update needed
[2026-06-12 17:54:50,158.158 INFO    ] Script finished. Safe exiting...
[2026-06-12 17:54:50,160.160 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 17:54:50,163.163 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 17:54:50,165.165 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 17:54:52,204.204 INFO    ] ================================================
[2026-06-12 17:54:52,220.220 INFO    ] Launching Daemon at Fri Jun 12 17:54:52 IST 2026
[2026-06-12 17:54:52,231.231 INFO    ] ================================================
[2026-06-12 17:54:52,592.592 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 17:54:52
[2026-06-12 17:54:52,905.905 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 17:54:53,037.037 INFO    ] Initializing speech engine...
[2026-06-12 17:54:53,042.042 INFO    ] 2026-06-12 17:54:53
[2026-06-12 17:54:53,269.269 INFO    ] 2026-06-12 17:54:53
[2026-06-12 17:54:53,299.299 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 17:54:53,429.429 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 17:54:53,469.469 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 17:54:53,645.645 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 17:54:53,704.704 INFO    ] time= 12/06/2026 17:54:53
[2026-06-12 17:54:53,737.737 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 17:54:53,743.743 INFO    ] Checking for existing commands in stream...
[2026-06-12 17:54:53,844.844 INFO    ] No existing commands found in stream
[2026-06-12 17:54:58,853.853 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 17:54:58,856.856 INFO    ] Waiting 3.48 seconds before fallback handling...
[2026-06-12 17:55:03,792.792 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 17:55:03,794.794 INFO    ] Checking for system updates...
[2026-06-12 17:55:03,815.815 INFO    ] 200
[2026-06-12 17:55:03,816.816 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:55:03,848.848 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 17:55:03,849.849 INFO    ] No update needed
[2026-06-12 17:55:03,851.851 INFO    ] Checking for camera pi updates...
[2026-06-12 17:55:03,870.870 INFO    ] 200
[2026-06-12 17:55:03,871.871 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:55:03,894.894 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 17:55:03,971.971 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 17:55:03,973.973 INFO    ] No camera update needed
[2026-06-12 17:55:03,974.974 INFO    ] Script finished. Safe exiting...
[2026-06-12 17:55:03,975.975 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 17:55:03,978.978 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 17:55:03,981.981 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 17:55:06,019.019 INFO    ] ================================================
[2026-06-12 17:55:06,034.034 INFO    ] Launching Daemon at Fri Jun 12 17:55:06 IST 2026
[2026-06-12 17:55:06,045.045 INFO    ] ================================================
[2026-06-12 17:55:06,388.388 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 17:55:06
[2026-06-12 17:55:06,723.723 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 17:55:06,874.874 INFO    ] Initializing speech engine...
[2026-06-12 17:55:06,880.880 INFO    ] 2026-06-12 17:55:06
[2026-06-12 17:55:07,090.090 INFO    ] 2026-06-12 17:55:07
[2026-06-12 17:55:07,119.119 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 17:55:07,243.243 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 17:55:07,308.308 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 17:55:07,444.444 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 17:55:07,516.516 INFO    ] time= 12/06/2026 17:55:07
[2026-06-12 17:55:07,540.540 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 17:55:07,547.547 INFO    ] Checking for existing commands in stream...
[2026-06-12 17:55:07,614.614 INFO    ] No existing commands found in stream
[2026-06-12 17:55:12,629.629 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 17:55:12,632.632 INFO    ] Waiting 2.96 seconds before fallback handling...
[2026-06-12 17:55:15,956.956 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 17:55:15,958.958 INFO    ] Checking for system updates...
[2026-06-12 17:55:15,978.978 INFO    ] 200
[2026-06-12 17:55:15,980.980 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:55:16,010.010 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 17:55:16,011.011 INFO    ] No update needed
[2026-06-12 17:55:16,013.013 INFO    ] Checking for camera pi updates...
[2026-06-12 17:55:16,032.032 INFO    ] 200
[2026-06-12 17:55:16,034.034 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:55:16,057.057 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 17:55:16,099.099 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 17:55:16,100.100 INFO    ] No camera update needed
[2026-06-12 17:55:16,102.102 INFO    ] Script finished. Safe exiting...
[2026-06-12 17:55:16,103.103 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 17:55:16,106.106 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 17:55:16,109.109 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 17:55:18,150.150 INFO    ] ================================================
[2026-06-12 17:55:18,165.165 INFO    ] Launching Daemon at Fri Jun 12 17:55:18 IST 2026
[2026-06-12 17:55:18,176.176 INFO    ] ================================================
[2026-06-12 17:55:18,555.555 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 17:55:18
[2026-06-12 17:55:18,894.894 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 17:55:19,043.043 INFO    ] Initializing speech engine...
[2026-06-12 17:55:19,049.049 INFO    ] 2026-06-12 17:55:19
[2026-06-12 17:55:19,257.257 INFO    ] 2026-06-12 17:55:19
[2026-06-12 17:55:19,286.286 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 17:55:19,472.472 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 17:55:19,482.482 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 17:55:19,631.631 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 17:55:19,681.681 INFO    ] time= 12/06/2026 17:55:19
[2026-06-12 17:55:19,691.691 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 17:55:19,693.693 INFO    ] Checking for existing commands in stream...
[2026-06-12 17:55:19,784.784 INFO    ] No existing commands found in stream
[2026-06-12 17:55:24,795.795 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 17:55:24,797.797 INFO    ] Waiting 1.85 seconds before fallback handling...
[2026-06-12 17:55:27,008.008 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 17:55:27,009.009 INFO    ] Checking for system updates...
[2026-06-12 17:55:27,031.031 INFO    ] 200
[2026-06-12 17:55:27,032.032 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:55:27,063.063 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 17:55:27,064.064 INFO    ] No update needed
[2026-06-12 17:55:27,065.065 INFO    ] Checking for camera pi updates...
[2026-06-12 17:55:27,085.085 INFO    ] 200
[2026-06-12 17:55:27,087.087 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:55:27,115.115 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 17:55:27,166.166 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 17:55:27,167.167 INFO    ] No camera update needed
[2026-06-12 17:55:27,169.169 INFO    ] Script finished. Safe exiting...
[2026-06-12 17:55:27,170.170 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 17:55:27,174.174 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 17:55:27,177.177 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 17:55:29,216.216 INFO    ] ================================================
[2026-06-12 17:55:29,231.231 INFO    ] Launching Daemon at Fri Jun 12 17:55:29 IST 2026
[2026-06-12 17:55:29,242.242 INFO    ] ================================================
[2026-06-12 17:55:29,609.609 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 17:55:29
[2026-06-12 17:55:29,926.926 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 17:55:30,059.059 INFO    ] Initializing speech engine...
[2026-06-12 17:55:30,063.063 INFO    ] 2026-06-12 17:55:30
[2026-06-12 17:55:30,271.271 INFO    ] 2026-06-12 17:55:30
[2026-06-12 17:55:30,300.300 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 17:55:30,455.455 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 17:55:30,513.513 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 17:55:30,662.662 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 17:55:30,718.718 INFO    ] time= 12/06/2026 17:55:30
[2026-06-12 17:55:30,751.751 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 17:55:30,768.768 INFO    ] Checking for existing commands in stream...
[2026-06-12 17:55:30,870.870 INFO    ] No existing commands found in stream
[2026-06-12 17:55:35,879.879 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 17:55:35,882.882 INFO    ] Waiting 2.74 seconds before fallback handling...
[2026-06-12 17:55:39,022.022 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 17:55:39,023.023 INFO    ] Checking for system updates...
[2026-06-12 17:55:39,043.043 INFO    ] 200
[2026-06-12 17:55:39,045.045 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:55:39,074.074 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 17:55:39,076.076 INFO    ] No update needed
[2026-06-12 17:55:39,077.077 INFO    ] Checking for camera pi updates...
[2026-06-12 17:55:39,098.098 INFO    ] 200
[2026-06-12 17:55:39,100.100 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:55:39,123.123 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 17:55:39,168.168 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 17:55:39,169.169 INFO    ] No camera update needed
[2026-06-12 17:55:39,171.171 INFO    ] Script finished. Safe exiting...
[2026-06-12 17:55:39,172.172 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 17:55:39,175.175 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 17:55:39,178.178 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 17:55:41,215.215 INFO    ] ================================================
[2026-06-12 17:55:41,230.230 INFO    ] Launching Daemon at Fri Jun 12 17:55:41 IST 2026
[2026-06-12 17:55:41,241.241 INFO    ] ================================================
[2026-06-12 17:55:41,605.605 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 17:55:41
[2026-06-12 17:55:41,921.921 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 17:55:42,051.051 INFO    ] Initializing speech engine...
[2026-06-12 17:55:42,055.055 INFO    ] 2026-06-12 17:55:42
[2026-06-12 17:55:42,247.247 INFO    ] 2026-06-12 17:55:42
[2026-06-12 17:55:42,291.291 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 17:55:42,447.447 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 17:55:42,496.496 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 17:55:42,656.656 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 17:55:42,713.713 INFO    ] time= 12/06/2026 17:55:42
[2026-06-12 17:55:42,746.746 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 17:55:42,764.764 INFO    ] Checking for existing commands in stream...
[2026-06-12 17:55:42,865.865 INFO    ] No existing commands found in stream
[2026-06-12 17:55:47,880.880 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 17:55:47,882.882 INFO    ] Waiting 1.03 seconds before fallback handling...
[2026-06-12 17:55:49,273.273 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 17:55:49,274.274 INFO    ] Checking for system updates...
[2026-06-12 17:55:49,295.295 INFO    ] 200
[2026-06-12 17:55:49,296.296 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:55:49,326.326 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 17:55:49,327.327 INFO    ] No update needed
[2026-06-12 17:55:49,328.328 INFO    ] Checking for camera pi updates...
[2026-06-12 17:55:49,347.347 INFO    ] 200
[2026-06-12 17:55:49,349.349 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:55:49,373.373 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 17:55:49,423.423 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 17:55:49,424.424 INFO    ] No camera update needed
[2026-06-12 17:55:49,426.426 INFO    ] Script finished. Safe exiting...
[2026-06-12 17:55:49,427.427 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 17:55:49,430.430 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 17:55:49,433.433 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 17:55:51,470.470 INFO    ] ================================================
[2026-06-12 17:55:51,485.485 INFO    ] Launching Daemon at Fri Jun 12 17:55:51 IST 2026
[2026-06-12 17:55:51,496.496 INFO    ] ================================================
[2026-06-12 17:55:51,851.851 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 17:55:51
[2026-06-12 17:55:52,164.164 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 17:55:52,297.297 INFO    ] Initializing speech engine...
[2026-06-12 17:55:52,301.301 INFO    ] 2026-06-12 17:55:52
[2026-06-12 17:55:52,529.529 INFO    ] 2026-06-12 17:55:52
[2026-06-12 17:55:52,558.558 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 17:55:52,690.690 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 17:55:52,756.756 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 17:55:52,896.896 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 17:55:52,947.947 INFO    ] time= 12/06/2026 17:55:52
[2026-06-12 17:55:52,991.991 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 17:55:53,002.002 INFO    ] Checking for existing commands in stream...
[2026-06-12 17:55:53,103.103 INFO    ] No existing commands found in stream
[2026-06-12 17:55:58,112.112 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 17:55:58,115.115 INFO    ] Waiting 0.62 seconds before fallback handling...
[2026-06-12 17:55:59,097.097 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 17:55:59,099.099 INFO    ] Checking for system updates...
[2026-06-12 17:55:59,119.119 INFO    ] 200
[2026-06-12 17:55:59,121.121 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:55:59,151.151 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 17:55:59,153.153 INFO    ] No update needed
[2026-06-12 17:55:59,154.154 INFO    ] Checking for camera pi updates...
[2026-06-12 17:55:59,173.173 INFO    ] 200
[2026-06-12 17:55:59,175.175 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:55:59,198.198 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 17:55:59,238.238 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 17:55:59,240.240 INFO    ] No camera update needed
[2026-06-12 17:55:59,241.241 INFO    ] Script finished. Safe exiting...
[2026-06-12 17:55:59,243.243 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 17:55:59,246.246 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 17:55:59,249.249 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 17:56:01,288.288 INFO    ] ================================================
[2026-06-12 17:56:01,303.303 INFO    ] Launching Daemon at Fri Jun 12 17:56:01 IST 2026
[2026-06-12 17:56:01,313.313 INFO    ] ================================================
[2026-06-12 17:56:01,672.672 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 17:56:01
[2026-06-12 17:56:02,099.099 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 17:56:02,252.252 INFO    ] Initializing speech engine...
[2026-06-12 17:56:02,258.258 INFO    ] 2026-06-12 17:56:02
[2026-06-12 17:56:02,468.468 INFO    ] 2026-06-12 17:56:02
[2026-06-12 17:56:02,490.490 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 17:56:02,654.654 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 17:56:02,656.656 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 17:56:02,816.816 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 17:56:02,826.826 INFO    ] time= 12/06/2026 17:56:02
[2026-06-12 17:56:02,832.832 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 17:56:02,851.851 INFO    ] Checking for existing commands in stream...
[2026-06-12 17:56:02,963.963 INFO    ] No existing commands found in stream
[2026-06-12 17:56:07,976.976 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 17:56:07,979.979 INFO    ] Waiting 3.45 seconds before fallback handling...
[2026-06-12 17:56:11,807.807 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 17:56:11,809.809 INFO    ] Checking for system updates...
[2026-06-12 17:56:11,830.830 INFO    ] 200
[2026-06-12 17:56:11,831.831 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:56:11,865.865 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 17:56:11,867.867 INFO    ] No update needed
[2026-06-12 17:56:11,868.868 INFO    ] Checking for camera pi updates...
[2026-06-12 17:56:11,887.887 INFO    ] 200
[2026-06-12 17:56:11,889.889 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:56:11,912.912 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 17:56:11,956.956 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 17:56:11,957.957 INFO    ] No camera update needed
[2026-06-12 17:56:11,959.959 INFO    ] Script finished. Safe exiting...
[2026-06-12 17:56:11,961.961 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 17:56:11,964.964 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 17:56:11,967.967 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 17:56:14,997.997 INFO    ] ================================================
[2026-06-12 17:56:14,013.013 INFO    ] Launching Daemon at Fri Jun 12 17:56:14 IST 2026
[2026-06-12 17:56:14,023.023 INFO    ] ================================================
[2026-06-12 17:56:14,404.404 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 17:56:14
[2026-06-12 17:56:14,737.737 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 17:56:14,888.888 INFO    ] Initializing speech engine...
[2026-06-12 17:56:14,894.894 INFO    ] 2026-06-12 17:56:14
[2026-06-12 17:56:15,104.104 INFO    ] 2026-06-12 17:56:15
[2026-06-12 17:56:15,133.133 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 17:56:15,321.321 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 17:56:15,330.330 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 17:56:15,456.456 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 17:56:15,517.517 INFO    ] time= 12/06/2026 17:56:15
[2026-06-12 17:56:15,555.555 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 17:56:15,557.557 INFO    ] Checking for existing commands in stream...
[2026-06-12 17:56:15,630.630 INFO    ] No existing commands found in stream
[2026-06-12 17:56:20,645.645 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 17:56:20,648.648 INFO    ] Waiting 0.82 seconds before fallback handling...
[2026-06-12 17:56:21,898.898 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 17:56:21,900.900 INFO    ] Checking for system updates...
[2026-06-12 17:56:21,920.920 INFO    ] 200
[2026-06-12 17:56:21,922.922 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:56:21,951.951 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 17:56:21,953.953 INFO    ] No update needed
[2026-06-12 17:56:21,954.954 INFO    ] Checking for camera pi updates...
[2026-06-12 17:56:21,973.973 INFO    ] 200
[2026-06-12 17:56:21,975.975 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:56:21,998.998 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 17:56:22,126.126 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 17:56:22,127.127 INFO    ] No camera update needed
[2026-06-12 17:56:22,129.129 INFO    ] Script finished. Safe exiting...
[2026-06-12 17:56:22,130.130 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 17:56:22,133.133 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 17:56:22,136.136 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 17:56:24,175.175 INFO    ] ================================================
[2026-06-12 17:56:24,190.190 INFO    ] Launching Daemon at Fri Jun 12 17:56:24 IST 2026
[2026-06-12 17:56:24,201.201 INFO    ] ================================================
[2026-06-12 17:56:24,533.533 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 17:56:24
[2026-06-12 17:56:24,845.845 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 17:56:24,976.976 INFO    ] Initializing speech engine...
[2026-06-12 17:56:24,980.980 INFO    ] 2026-06-12 17:56:24
[2026-06-12 17:56:25,200.200 INFO    ] 2026-06-12 17:56:25
[2026-06-12 17:56:25,229.229 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 17:56:25,416.416 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 17:56:25,426.426 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 17:56:25,556.556 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 17:56:25,620.620 INFO    ] time= 12/06/2026 17:56:25
[2026-06-12 17:56:25,649.649 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 17:56:25,655.655 INFO    ] Checking for existing commands in stream...
[2026-06-12 17:56:25,722.722 INFO    ] No existing commands found in stream
[2026-06-12 17:56:30,731.731 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 17:56:30,734.734 INFO    ] Waiting 2.73 seconds before fallback handling...
[2026-06-12 17:56:33,833.833 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 17:56:33,834.834 INFO    ] Checking for system updates...
[2026-06-12 17:56:33,854.854 INFO    ] 200
[2026-06-12 17:56:33,856.856 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:56:33,885.885 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 17:56:33,887.887 INFO    ] No update needed
[2026-06-12 17:56:33,888.888 INFO    ] Checking for camera pi updates...
[2026-06-12 17:56:33,907.907 INFO    ] 200
[2026-06-12 17:56:33,908.908 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:56:33,931.931 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 17:56:33,981.981 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 17:56:33,982.982 INFO    ] No camera update needed
[2026-06-12 17:56:33,983.983 INFO    ] Script finished. Safe exiting...
[2026-06-12 17:56:33,984.984 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 17:56:33,987.987 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 17:56:33,990.990 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 17:56:36,029.029 INFO    ] ================================================
[2026-06-12 17:56:36,044.044 INFO    ] Launching Daemon at Fri Jun 12 17:56:36 IST 2026
[2026-06-12 17:56:36,055.055 INFO    ] ================================================
[2026-06-12 17:56:36,400.400 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 17:56:36
[2026-06-12 17:56:36,717.717 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 17:56:36,853.853 INFO    ] Initializing speech engine...
[2026-06-12 17:56:36,866.866 INFO    ] 2026-06-12 17:56:36
[2026-06-12 17:56:37,085.085 INFO    ] 2026-06-12 17:56:37
[2026-06-12 17:56:37,115.115 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 17:56:37,245.245 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 17:56:37,283.283 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 17:56:37,457.457 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 17:56:37,520.520 INFO    ] time= 12/06/2026 17:56:37
[2026-06-12 17:56:37,549.549 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 17:56:37,564.564 INFO    ] Checking for existing commands in stream...
[2026-06-12 17:56:37,634.634 INFO    ] No existing commands found in stream
[2026-06-12 17:56:42,645.645 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 17:56:42,648.648 INFO    ] Waiting 2.44 seconds before fallback handling...
[2026-06-12 17:56:45,479.479 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 17:56:45,481.481 INFO    ] Checking for system updates...
[2026-06-12 17:56:45,503.503 INFO    ] 200
[2026-06-12 17:56:45,504.504 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:56:45,534.534 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 17:56:45,535.535 INFO    ] No update needed
[2026-06-12 17:56:45,536.536 INFO    ] Checking for camera pi updates...
[2026-06-12 17:56:45,555.555 INFO    ] 200
[2026-06-12 17:56:45,557.557 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:56:45,579.579 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 17:56:45,626.626 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 17:56:45,627.627 INFO    ] No camera update needed
[2026-06-12 17:56:45,628.628 INFO    ] Script finished. Safe exiting...
[2026-06-12 17:56:45,630.630 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 17:56:45,633.633 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 17:56:45,636.636 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 17:56:47,674.674 INFO    ] ================================================
[2026-06-12 17:56:47,689.689 INFO    ] Launching Daemon at Fri Jun 12 17:56:47 IST 2026
[2026-06-12 17:56:47,700.700 INFO    ] ================================================
[2026-06-12 17:56:48,075.075 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 17:56:48
[2026-06-12 17:56:48,394.394 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 17:56:48,542.542 INFO    ] Initializing speech engine...
[2026-06-12 17:56:48,548.548 INFO    ] 2026-06-12 17:56:48
[2026-06-12 17:56:48,763.763 INFO    ] 2026-06-12 17:56:48
[2026-06-12 17:56:48,794.794 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 17:56:48,925.925 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 17:56:48,983.983 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 17:56:49,140.140 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 17:56:49,209.209 INFO    ] time= 12/06/2026 17:56:49
[2026-06-12 17:56:49,237.237 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 17:56:49,239.239 INFO    ] Checking for existing commands in stream...
[2026-06-12 17:56:49,341.341 INFO    ] No existing commands found in stream
[2026-06-12 17:56:54,355.355 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 17:56:54,357.357 INFO    ] Waiting 3.38 seconds before fallback handling...
[2026-06-12 17:56:58,107.107 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 17:56:58,108.108 INFO    ] Checking for system updates...
[2026-06-12 17:56:58,129.129 INFO    ] 200
[2026-06-12 17:56:58,131.131 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:56:58,160.160 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 17:56:58,161.161 INFO    ] No update needed
[2026-06-12 17:56:58,163.163 INFO    ] Checking for camera pi updates...
[2026-06-12 17:56:58,185.185 INFO    ] 200
[2026-06-12 17:56:58,187.187 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:56:58,210.210 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 17:56:58,349.349 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 17:56:58,351.351 INFO    ] No camera update needed
[2026-06-12 17:56:58,352.352 INFO    ] Script finished. Safe exiting...
[2026-06-12 17:56:58,353.353 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 17:56:58,356.356 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 17:56:58,359.359 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 17:57:00,396.396 INFO    ] ================================================
[2026-06-12 17:57:00,411.411 INFO    ] Launching Daemon at Fri Jun 12 17:57:00 IST 2026
[2026-06-12 17:57:00,422.422 INFO    ] ================================================
[2026-06-12 17:57:00,810.810 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 17:57:00
[2026-06-12 17:57:01,208.208 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 17:57:01,416.416 INFO    ] Initializing speech engine...
[2026-06-12 17:57:01,431.431 INFO    ] 2026-06-12 17:57:01
[2026-06-12 17:57:01,676.676 INFO    ] 2026-06-12 17:57:01
[2026-06-12 17:57:01,739.739 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 17:57:01,901.901 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 17:57:01,919.919 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 17:57:02,086.086 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 17:57:02,124.124 INFO    ] time= 12/06/2026 17:57:02
[2026-06-12 17:57:02,197.197 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 17:57:02,227.227 INFO    ] Checking for existing commands in stream...
[2026-06-12 17:57:02,299.299 INFO    ] No existing commands found in stream
[2026-06-12 17:57:07,309.309 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 17:57:07,312.312 INFO    ] Waiting 1.14 seconds before fallback handling...
[2026-06-12 17:57:08,847.847 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 17:57:08,848.848 INFO    ] Checking for system updates...
[2026-06-12 17:57:08,869.869 INFO    ] 200
[2026-06-12 17:57:08,871.871 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:57:08,901.901 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 17:57:08,902.902 INFO    ] No update needed
[2026-06-12 17:57:08,903.903 INFO    ] Checking for camera pi updates...
[2026-06-12 17:57:08,923.923 INFO    ] 200
[2026-06-12 17:57:08,924.924 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:57:08,947.947 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 17:57:08,995.995 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 17:57:08,996.996 INFO    ] No camera update needed
[2026-06-12 17:57:08,997.997 INFO    ] Script finished. Safe exiting...
[2026-06-12 17:57:08,999.999 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 17:57:09,002.002 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 17:57:09,004.004 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 17:57:11,046.046 INFO    ] ================================================
[2026-06-12 17:57:11,061.061 INFO    ] Launching Daemon at Fri Jun 12 17:57:11 IST 2026
[2026-06-12 17:57:11,072.072 INFO    ] ================================================
[2026-06-12 17:57:11,414.414 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 17:57:11
[2026-06-12 17:57:11,727.727 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 17:57:11,860.860 INFO    ] Initializing speech engine...
[2026-06-12 17:57:11,865.865 INFO    ] 2026-06-12 17:57:11
[2026-06-12 17:57:12,095.095 INFO    ] 2026-06-12 17:57:12
[2026-06-12 17:57:12,126.126 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 17:57:12,325.325 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 17:57:12,339.339 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 17:57:12,493.493 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 17:57:12,548.548 INFO    ] time= 12/06/2026 17:57:12
[2026-06-12 17:57:12,574.574 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 17:57:12,581.581 INFO    ] Checking for existing commands in stream...
[2026-06-12 17:57:12,653.653 INFO    ] No existing commands found in stream
[2026-06-12 17:57:17,662.662 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 17:57:17,664.664 INFO    ] Waiting 2.27 seconds before fallback handling...
[2026-06-12 17:57:20,285.285 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 17:57:20,287.287 INFO    ] Checking for system updates...
[2026-06-12 17:57:20,307.307 INFO    ] 200
[2026-06-12 17:57:20,308.308 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:57:20,339.339 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 17:57:20,341.341 INFO    ] No update needed
[2026-06-12 17:57:20,342.342 INFO    ] Checking for camera pi updates...
[2026-06-12 17:57:20,364.364 INFO    ] 200
[2026-06-12 17:57:20,366.366 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:57:20,388.388 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 17:57:20,440.440 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 17:57:20,442.442 INFO    ] No camera update needed
[2026-06-12 17:57:20,443.443 INFO    ] Script finished. Safe exiting...
[2026-06-12 17:57:20,444.444 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 17:57:20,447.447 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 17:57:20,450.450 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 17:57:22,488.488 INFO    ] ================================================
[2026-06-12 17:57:22,503.503 INFO    ] Launching Daemon at Fri Jun 12 17:57:22 IST 2026
[2026-06-12 17:57:22,514.514 INFO    ] ================================================
[2026-06-12 17:57:22,846.846 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 17:57:22
[2026-06-12 17:57:23,162.162 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 17:57:23,297.297 INFO    ] Initializing speech engine...
[2026-06-12 17:57:23,311.311 INFO    ] 2026-06-12 17:57:23
[2026-06-12 17:57:23,530.530 INFO    ] 2026-06-12 17:57:23
[2026-06-12 17:57:23,561.561 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 17:57:23,758.758 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 17:57:23,763.763 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 17:57:23,907.907 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 17:57:23,954.954 INFO    ] time= 12/06/2026 17:57:23
[2026-06-12 17:57:23,989.989 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 17:57:24,011.011 INFO    ] Checking for existing commands in stream...
[2026-06-12 17:57:24,087.087 INFO    ] No existing commands found in stream
[2026-06-12 17:57:29,098.098 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 17:57:29,101.101 INFO    ] Waiting 3.62 seconds before fallback handling...
[2026-06-12 17:57:33,079.079 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 17:57:33,081.081 INFO    ] Checking for system updates...
[2026-06-12 17:57:33,102.102 INFO    ] 200
[2026-06-12 17:57:33,104.104 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:57:33,133.133 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 17:57:33,135.135 INFO    ] No update needed
[2026-06-12 17:57:33,136.136 INFO    ] Checking for camera pi updates...
[2026-06-12 17:57:33,155.155 INFO    ] 200
[2026-06-12 17:57:33,157.157 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:57:33,179.179 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 17:57:33,220.220 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 17:57:33,221.221 INFO    ] No camera update needed
[2026-06-12 17:57:33,222.222 INFO    ] Script finished. Safe exiting...
[2026-06-12 17:57:33,224.224 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 17:57:33,227.227 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 17:57:33,229.229 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 17:57:35,270.270 INFO    ] ================================================
[2026-06-12 17:57:35,285.285 INFO    ] Launching Daemon at Fri Jun 12 17:57:35 IST 2026
[2026-06-12 17:57:35,295.295 INFO    ] ================================================
[2026-06-12 17:57:35,658.658 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 17:57:35
[2026-06-12 17:57:35,997.997 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 17:57:36,147.147 INFO    ] Initializing speech engine...
[2026-06-12 17:57:36,152.152 INFO    ] 2026-06-12 17:57:36
[2026-06-12 17:57:36,359.359 INFO    ] 2026-06-12 17:57:36
[2026-06-12 17:57:36,387.387 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 17:57:36,571.571 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 17:57:36,580.580 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 17:57:36,709.709 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 17:57:36,776.776 INFO    ] time= 12/06/2026 17:57:36
[2026-06-12 17:57:36,800.800 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 17:57:36,806.806 INFO    ] Checking for existing commands in stream...
[2026-06-12 17:57:36,873.873 INFO    ] No existing commands found in stream
[2026-06-12 17:57:41,891.891 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 17:57:41,893.893 INFO    ] Waiting 1.14 seconds before fallback handling...
[2026-06-12 17:57:44,078.078 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 17:57:44,081.081 INFO    ] Checking for system updates...
[2026-06-12 17:57:44,117.117 INFO    ] 200
[2026-06-12 17:57:44,120.120 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:57:44,176.176 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 17:57:44,177.177 INFO    ] No update needed
[2026-06-12 17:57:44,179.179 INFO    ] Checking for camera pi updates...
[2026-06-12 17:57:44,200.200 INFO    ] 200
[2026-06-12 17:57:44,201.201 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:57:44,224.224 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 17:57:44,277.277 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 17:57:44,278.278 INFO    ] No camera update needed
[2026-06-12 17:57:44,280.280 INFO    ] Script finished. Safe exiting...
[2026-06-12 17:57:44,281.281 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 17:57:44,284.284 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 17:57:44,287.287 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 17:57:46,325.325 INFO    ] ================================================
[2026-06-12 17:57:46,341.341 INFO    ] Launching Daemon at Fri Jun 12 17:57:46 IST 2026
[2026-06-12 17:57:46,352.352 INFO    ] ================================================
[2026-06-12 17:57:46,706.706 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 17:57:46
[2026-06-12 17:57:47,024.024 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 17:57:47,161.161 INFO    ] Initializing speech engine...
[2026-06-12 17:57:47,169.169 INFO    ] 2026-06-12 17:57:47
[2026-06-12 17:57:47,393.393 INFO    ] 2026-06-12 17:57:47
[2026-06-12 17:57:47,423.423 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 17:57:47,621.621 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 17:57:47,625.625 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 17:57:47,773.773 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 17:57:47,842.842 INFO    ] time= 12/06/2026 17:57:47
[2026-06-12 17:57:47,870.870 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 17:57:47,877.877 INFO    ] Checking for existing commands in stream...
[2026-06-12 17:57:47,975.975 INFO    ] No existing commands found in stream
[2026-06-12 17:57:52,983.983 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 17:57:52,986.986 INFO    ] Waiting 1.23 seconds before fallback handling...
[2026-06-12 17:57:54,613.613 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 17:57:54,614.614 INFO    ] Checking for system updates...
[2026-06-12 17:57:54,635.635 INFO    ] 200
[2026-06-12 17:57:54,636.636 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:57:54,668.668 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 17:57:54,669.669 INFO    ] No update needed
[2026-06-12 17:57:54,671.671 INFO    ] Checking for camera pi updates...
[2026-06-12 17:57:54,691.691 INFO    ] 200
[2026-06-12 17:57:54,692.692 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:57:54,715.715 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 17:57:54,759.759 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 17:57:54,760.760 INFO    ] No camera update needed
[2026-06-12 17:57:54,762.762 INFO    ] Script finished. Safe exiting...
[2026-06-12 17:57:54,763.763 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 17:57:54,766.766 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 17:57:54,769.769 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 17:57:56,806.806 INFO    ] ================================================
[2026-06-12 17:57:56,822.822 INFO    ] Launching Daemon at Fri Jun 12 17:57:56 IST 2026
[2026-06-12 17:57:56,833.833 INFO    ] ================================================
[2026-06-12 17:57:57,182.182 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 17:57:57
[2026-06-12 17:57:57,497.497 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 17:57:57,630.630 INFO    ] Initializing speech engine...
[2026-06-12 17:57:57,641.641 INFO    ] 2026-06-12 17:57:57
[2026-06-12 17:57:57,865.865 INFO    ] 2026-06-12 17:57:57
[2026-06-12 17:57:57,896.896 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 17:57:58,028.028 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 17:57:58,092.092 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 17:57:58,236.236 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 17:57:58,299.299 INFO    ] time= 12/06/2026 17:57:58
[2026-06-12 17:57:58,338.338 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 17:57:58,344.344 INFO    ] Checking for existing commands in stream...
[2026-06-12 17:57:58,419.419 INFO    ] No existing commands found in stream
[2026-06-12 17:58:03,430.430 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 17:58:03,433.433 INFO    ] Waiting 3.98 seconds before fallback handling...
[2026-06-12 17:58:07,785.785 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 17:58:07,786.786 INFO    ] Checking for system updates...
[2026-06-12 17:58:07,807.807 INFO    ] 200
[2026-06-12 17:58:07,808.808 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:58:07,840.840 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 17:58:07,841.841 INFO    ] No update needed
[2026-06-12 17:58:07,842.842 INFO    ] Checking for camera pi updates...
[2026-06-12 17:58:07,863.863 INFO    ] 200
[2026-06-12 17:58:07,864.864 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:58:07,887.887 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 17:58:07,935.935 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 17:58:07,936.936 INFO    ] No camera update needed
[2026-06-12 17:58:07,937.937 INFO    ] Script finished. Safe exiting...
[2026-06-12 17:58:07,939.939 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 17:58:07,942.942 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 17:58:07,945.945 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 17:58:09,982.982 INFO    ] ================================================
[2026-06-12 17:58:10,997.997 INFO    ] Launching Daemon at Fri Jun 12 17:58:09 IST 2026
[2026-06-12 17:58:10,008.008 INFO    ] ================================================
[2026-06-12 17:58:10,342.342 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 17:58:10
[2026-06-12 17:58:10,657.657 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 17:58:10,786.786 INFO    ] Initializing speech engine...
[2026-06-12 17:58:10,795.795 INFO    ] 2026-06-12 17:58:10
[2026-06-12 17:58:11,011.011 INFO    ] 2026-06-12 17:58:10
[2026-06-12 17:58:11,040.040 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 17:58:11,164.164 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 17:58:11,227.227 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 17:58:11,360.360 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 17:58:11,410.410 INFO    ] time= 12/06/2026 17:58:11
[2026-06-12 17:58:11,451.451 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 17:58:11,461.461 INFO    ] Checking for existing commands in stream...
[2026-06-12 17:58:11,531.531 INFO    ] No existing commands found in stream
[2026-06-12 17:58:16,542.542 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 17:58:16,545.545 INFO    ] Waiting 0.70 seconds before fallback handling...
[2026-06-12 17:58:17,604.604 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 17:58:17,605.605 INFO    ] Checking for system updates...
[2026-06-12 17:58:17,625.625 INFO    ] 200
[2026-06-12 17:58:17,627.627 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:58:17,657.657 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 17:58:17,658.658 INFO    ] No update needed
[2026-06-12 17:58:17,659.659 INFO    ] Checking for camera pi updates...
[2026-06-12 17:58:17,678.678 INFO    ] 200
[2026-06-12 17:58:17,680.680 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:58:17,707.707 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 17:58:17,789.789 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 17:58:17,790.790 INFO    ] No camera update needed
[2026-06-12 17:58:17,792.792 INFO    ] Script finished. Safe exiting...
[2026-06-12 17:58:17,793.793 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 17:58:17,796.796 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 17:58:17,798.798 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 17:58:19,838.838 INFO    ] ================================================
[2026-06-12 17:58:19,853.853 INFO    ] Launching Daemon at Fri Jun 12 17:58:19 IST 2026
[2026-06-12 17:58:19,864.864 INFO    ] ================================================
[2026-06-12 17:58:20,229.229 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 17:58:20
[2026-06-12 17:58:20,546.546 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 17:58:20,691.691 INFO    ] Initializing speech engine...
[2026-06-12 17:58:20,696.696 INFO    ] 2026-06-12 17:58:20
[2026-06-12 17:58:20,901.901 INFO    ] 2026-06-12 17:58:20
[2026-06-12 17:58:20,930.930 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 17:58:21,114.114 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 17:58:21,125.125 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 17:58:21,267.267 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 17:58:21,320.320 INFO    ] time= 12/06/2026 17:58:21
[2026-06-12 17:58:21,343.343 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 17:58:21,348.348 INFO    ] Checking for existing commands in stream...
[2026-06-12 17:58:21,414.414 INFO    ] No existing commands found in stream
[2026-06-12 17:58:26,425.425 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 17:58:26,427.427 INFO    ] Waiting 3.53 seconds before fallback handling...
[2026-06-12 17:58:30,343.343 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 17:58:30,344.344 INFO    ] Checking for system updates...
[2026-06-12 17:58:30,366.366 INFO    ] 200
[2026-06-12 17:58:30,368.368 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:58:30,400.400 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 17:58:30,401.401 INFO    ] No update needed
[2026-06-12 17:58:30,403.403 INFO    ] Checking for camera pi updates...
[2026-06-12 17:58:30,424.424 INFO    ] 200
[2026-06-12 17:58:30,426.426 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:58:30,449.449 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 17:58:30,499.499 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 17:58:30,501.501 INFO    ] No camera update needed
[2026-06-12 17:58:30,502.502 INFO    ] Script finished. Safe exiting...
[2026-06-12 17:58:30,504.504 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 17:58:30,507.507 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 17:58:30,510.510 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 17:58:32,534.534 INFO    ] ================================================
[2026-06-12 17:58:32,543.543 INFO    ] Launching Daemon at Fri Jun 12 17:58:32 IST 2026
[2026-06-12 17:58:32,549.549 INFO    ] ================================================
[2026-06-12 17:58:32,856.856 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 17:58:32
[2026-06-12 17:58:33,173.173 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 17:58:33,311.311 INFO    ] Initializing speech engine...
[2026-06-12 17:58:33,319.319 INFO    ] 2026-06-12 17:58:33
[2026-06-12 17:58:33,528.528 INFO    ] 2026-06-12 17:58:33
[2026-06-12 17:58:33,558.558 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 17:58:33,690.690 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 17:58:33,746.746 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 17:58:33,885.885 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 17:58:33,953.953 INFO    ] time= 12/06/2026 17:58:33
[2026-06-12 17:58:33,978.978 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 17:58:33,984.984 INFO    ] Checking for existing commands in stream...
[2026-06-12 17:58:34,076.076 INFO    ] No existing commands found in stream
[2026-06-12 17:58:39,085.085 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 17:58:39,088.088 INFO    ] Waiting 1.35 seconds before fallback handling...
[2026-06-12 17:58:40,856.856 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 17:58:40,857.857 INFO    ] Checking for system updates...
[2026-06-12 17:58:40,878.878 INFO    ] 200
[2026-06-12 17:58:40,879.879 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:58:40,909.909 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 17:58:40,911.911 INFO    ] No update needed
[2026-06-12 17:58:40,912.912 INFO    ] Checking for camera pi updates...
[2026-06-12 17:58:40,932.932 INFO    ] 200
[2026-06-12 17:58:40,933.933 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:58:40,958.958 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 17:58:41,003.003 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 17:58:41,005.005 INFO    ] No camera update needed
[2026-06-12 17:58:41,006.006 INFO    ] Script finished. Safe exiting...
[2026-06-12 17:58:41,008.008 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 17:58:41,011.011 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 17:58:41,014.014 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 17:58:43,054.054 INFO    ] ================================================
[2026-06-12 17:58:43,070.070 INFO    ] Launching Daemon at Fri Jun 12 17:58:43 IST 2026
[2026-06-12 17:58:43,081.081 INFO    ] ================================================
[2026-06-12 17:58:43,440.440 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 17:58:43
[2026-06-12 17:58:43,782.782 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 17:58:43,933.933 INFO    ] Initializing speech engine...
[2026-06-12 17:58:43,940.940 INFO    ] 2026-06-12 17:58:43
[2026-06-12 17:58:44,142.142 INFO    ] 2026-06-12 17:58:44
[2026-06-12 17:58:44,160.160 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 17:58:44,318.318 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 17:58:44,382.382 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 17:58:44,530.530 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 17:58:44,577.577 INFO    ] time= 12/06/2026 17:58:44
[2026-06-12 17:58:44,617.617 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 17:58:44,639.639 INFO    ] Checking for existing commands in stream...
[2026-06-12 17:58:44,718.718 INFO    ] No existing commands found in stream
[2026-06-12 17:58:49,727.727 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 17:58:49,730.730 INFO    ] Waiting 1.58 seconds before fallback handling...
[2026-06-12 17:58:51,675.675 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 17:58:51,677.677 INFO    ] Checking for system updates...
[2026-06-12 17:58:51,697.697 INFO    ] 200
[2026-06-12 17:58:51,699.699 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:58:51,729.729 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 17:58:51,731.731 INFO    ] No update needed
[2026-06-12 17:58:51,732.732 INFO    ] Checking for camera pi updates...
[2026-06-12 17:58:51,752.752 INFO    ] 200
[2026-06-12 17:58:51,753.753 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:58:51,777.777 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 17:58:51,814.814 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 17:58:51,815.815 INFO    ] No camera update needed
[2026-06-12 17:58:51,816.816 INFO    ] Script finished. Safe exiting...
[2026-06-12 17:58:51,818.818 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 17:58:51,821.821 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 17:58:51,824.824 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 17:58:53,862.862 INFO    ] ================================================
[2026-06-12 17:58:53,877.877 INFO    ] Launching Daemon at Fri Jun 12 17:58:53 IST 2026
[2026-06-12 17:58:53,888.888 INFO    ] ================================================
[2026-06-12 17:58:54,223.223 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 17:58:54
[2026-06-12 17:58:54,536.536 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 17:58:54,677.677 INFO    ] Initializing speech engine...
[2026-06-12 17:58:54,682.682 INFO    ] 2026-06-12 17:58:54
[2026-06-12 17:58:54,886.886 INFO    ] 2026-06-12 17:58:54
[2026-06-12 17:58:54,914.914 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 17:58:55,097.097 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 17:58:55,106.106 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 17:58:55,244.244 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 17:58:55,300.300 INFO    ] time= 12/06/2026 17:58:55
[2026-06-12 17:58:55,323.323 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 17:58:55,329.329 INFO    ] Checking for existing commands in stream...
[2026-06-12 17:58:55,395.395 INFO    ] No existing commands found in stream
[2026-06-12 17:59:00,404.404 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 17:59:00,407.407 INFO    ] Waiting 0.98 seconds before fallback handling...
[2026-06-12 17:59:01,782.782 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 17:59:01,787.787 INFO    ] Checking for system updates...
[2026-06-12 17:59:01,830.830 INFO    ] 200
[2026-06-12 17:59:01,832.832 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:59:01,890.890 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 17:59:01,892.892 INFO    ] No update needed
[2026-06-12 17:59:01,894.894 INFO    ] Checking for camera pi updates...
[2026-06-12 17:59:01,925.925 INFO    ] 200
[2026-06-12 17:59:01,941.941 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:59:01,978.978 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 17:59:02,010.010 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 17:59:02,012.012 INFO    ] No camera update needed
[2026-06-12 17:59:02,014.014 INFO    ] Script finished. Safe exiting...
[2026-06-12 17:59:02,016.016 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 17:59:02,021.021 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 17:59:02,026.026 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 17:59:04,067.067 INFO    ] ================================================
[2026-06-12 17:59:04,082.082 INFO    ] Launching Daemon at Fri Jun 12 17:59:04 IST 2026
[2026-06-12 17:59:04,094.094 INFO    ] ================================================
[2026-06-12 17:59:04,423.423 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 17:59:04
[2026-06-12 17:59:04,734.734 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 17:59:04,874.874 INFO    ] Initializing speech engine...
[2026-06-12 17:59:04,882.882 INFO    ] 2026-06-12 17:59:04
[2026-06-12 17:59:05,101.101 INFO    ] 2026-06-12 17:59:05
[2026-06-12 17:59:05,132.132 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 17:59:05,266.266 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 17:59:05,329.329 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 17:59:05,475.475 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 17:59:05,543.543 INFO    ] time= 12/06/2026 17:59:05
[2026-06-12 17:59:05,578.578 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 17:59:05,584.584 INFO    ] Checking for existing commands in stream...
[2026-06-12 17:59:05,662.662 INFO    ] No existing commands found in stream
[2026-06-12 17:59:10,671.671 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 17:59:10,674.674 INFO    ] Waiting 1.46 seconds before fallback handling...
[2026-06-12 17:59:12,522.522 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 17:59:12,524.524 INFO    ] Checking for system updates...
[2026-06-12 17:59:12,544.544 INFO    ] 200
[2026-06-12 17:59:12,545.545 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:59:12,577.577 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 17:59:12,578.578 INFO    ] No update needed
[2026-06-12 17:59:12,580.580 INFO    ] Checking for camera pi updates...
[2026-06-12 17:59:12,599.599 INFO    ] 200
[2026-06-12 17:59:12,600.600 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:59:12,623.623 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 17:59:12,672.672 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 17:59:12,673.673 INFO    ] No camera update needed
[2026-06-12 17:59:12,674.674 INFO    ] Script finished. Safe exiting...
[2026-06-12 17:59:12,675.675 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 17:59:12,678.678 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 17:59:12,681.681 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 17:59:14,719.719 INFO    ] ================================================
[2026-06-12 17:59:14,735.735 INFO    ] Launching Daemon at Fri Jun 12 17:59:14 IST 2026
[2026-06-12 17:59:14,746.746 INFO    ] ================================================
[2026-06-12 17:59:15,081.081 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 17:59:15
[2026-06-12 17:59:15,397.397 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 17:59:15,540.540 INFO    ] Initializing speech engine...
[2026-06-12 17:59:15,548.548 INFO    ] 2026-06-12 17:59:15
[2026-06-12 17:59:15,769.769 INFO    ] 2026-06-12 17:59:15
[2026-06-12 17:59:15,800.800 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 17:59:15,986.986 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 17:59:15,996.996 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 17:59:16,142.142 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 17:59:16,195.195 INFO    ] time= 12/06/2026 17:59:16
[2026-06-12 17:59:16,218.218 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 17:59:16,224.224 INFO    ] Checking for existing commands in stream...
[2026-06-12 17:59:16,291.291 INFO    ] No existing commands found in stream
[2026-06-12 17:59:21,310.310 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 17:59:21,313.313 INFO    ] Waiting 3.58 seconds before fallback handling...
[2026-06-12 17:59:25,277.277 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 17:59:25,278.278 INFO    ] Checking for system updates...
[2026-06-12 17:59:25,299.299 INFO    ] 200
[2026-06-12 17:59:25,301.301 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:59:25,330.330 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 17:59:25,332.332 INFO    ] No update needed
[2026-06-12 17:59:25,333.333 INFO    ] Checking for camera pi updates...
[2026-06-12 17:59:25,352.352 INFO    ] 200
[2026-06-12 17:59:25,354.354 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:59:25,378.378 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 17:59:25,424.424 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 17:59:25,425.425 INFO    ] No camera update needed
[2026-06-12 17:59:25,426.426 INFO    ] Script finished. Safe exiting...
[2026-06-12 17:59:25,428.428 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 17:59:25,431.431 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 17:59:25,434.434 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 17:59:27,474.474 INFO    ] ================================================
[2026-06-12 17:59:27,489.489 INFO    ] Launching Daemon at Fri Jun 12 17:59:27 IST 2026
[2026-06-12 17:59:27,501.501 INFO    ] ================================================
[2026-06-12 17:59:27,901.901 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 17:59:27
[2026-06-12 17:59:28,242.242 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 17:59:28,382.382 INFO    ] Initializing speech engine...
[2026-06-12 17:59:28,395.395 INFO    ] 2026-06-12 17:59:28
[2026-06-12 17:59:28,609.609 INFO    ] 2026-06-12 17:59:28
[2026-06-12 17:59:28,638.638 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 17:59:28,773.773 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 17:59:28,827.827 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 17:59:28,964.964 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 17:59:29,026.026 INFO    ] time= 12/06/2026 17:59:28
[2026-06-12 17:59:29,061.061 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 17:59:29,063.063 INFO    ] Checking for existing commands in stream...
[2026-06-12 17:59:29,135.135 INFO    ] No existing commands found in stream
[2026-06-12 17:59:34,150.150 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 17:59:34,153.153 INFO    ] Waiting 2.36 seconds before fallback handling...
[2026-06-12 17:59:36,875.875 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 17:59:36,876.876 INFO    ] Checking for system updates...
[2026-06-12 17:59:36,898.898 INFO    ] 200
[2026-06-12 17:59:36,900.900 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:59:36,932.932 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 17:59:36,934.934 INFO    ] No update needed
[2026-06-12 17:59:36,935.935 INFO    ] Checking for camera pi updates...
[2026-06-12 17:59:36,954.954 INFO    ] 200
[2026-06-12 17:59:36,956.956 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:59:36,979.979 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 17:59:37,047.047 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 17:59:37,048.048 INFO    ] No camera update needed
[2026-06-12 17:59:37,050.050 INFO    ] Script finished. Safe exiting...
[2026-06-12 17:59:37,051.051 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 17:59:37,055.055 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 17:59:37,058.058 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 17:59:39,098.098 INFO    ] ================================================
[2026-06-12 17:59:39,114.114 INFO    ] Launching Daemon at Fri Jun 12 17:59:39 IST 2026
[2026-06-12 17:59:39,125.125 INFO    ] ================================================
[2026-06-12 17:59:39,475.475 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 17:59:39
[2026-06-12 17:59:39,791.791 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 17:59:39,922.922 INFO    ] Initializing speech engine...
[2026-06-12 17:59:39,926.926 INFO    ] 2026-06-12 17:59:39
[2026-06-12 17:59:40,142.142 INFO    ] 2026-06-12 17:59:40
[2026-06-12 17:59:40,171.171 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 17:59:40,309.309 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 17:59:40,356.356 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 17:59:40,493.493 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 17:59:40,560.560 INFO    ] time= 12/06/2026 17:59:40
[2026-06-12 17:59:40,584.584 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 17:59:40,591.591 INFO    ] Checking for existing commands in stream...
[2026-06-12 17:59:40,658.658 INFO    ] No existing commands found in stream
[2026-06-12 17:59:45,672.672 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 17:59:45,675.675 INFO    ] Waiting 3.46 seconds before fallback handling...
[2026-06-12 17:59:49,495.495 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 17:59:49,496.496 INFO    ] Checking for system updates...
[2026-06-12 17:59:49,517.517 INFO    ] 200
[2026-06-12 17:59:49,518.518 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:59:49,550.550 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 17:59:49,552.552 INFO    ] No update needed
[2026-06-12 17:59:49,553.553 INFO    ] Checking for camera pi updates...
[2026-06-12 17:59:49,572.572 INFO    ] 200
[2026-06-12 17:59:49,573.573 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:59:49,596.596 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 17:59:49,642.642 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 17:59:49,644.644 INFO    ] No camera update needed
[2026-06-12 17:59:49,645.645 INFO    ] Script finished. Safe exiting...
[2026-06-12 17:59:49,646.646 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 17:59:49,649.649 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 17:59:49,652.652 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 17:59:51,692.692 INFO    ] ================================================
[2026-06-12 17:59:51,708.708 INFO    ] Launching Daemon at Fri Jun 12 17:59:51 IST 2026
[2026-06-12 17:59:51,719.719 INFO    ] ================================================
[2026-06-12 17:59:52,096.096 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 17:59:52
[2026-06-12 17:59:52,408.408 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 17:59:52,538.538 INFO    ] Initializing speech engine...
[2026-06-12 17:59:52,542.542 INFO    ] 2026-06-12 17:59:52
[2026-06-12 17:59:52,760.760 INFO    ] 2026-06-12 17:59:52
[2026-06-12 17:59:52,789.789 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 17:59:52,974.974 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 17:59:52,978.978 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 17:59:53,116.116 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 17:59:53,185.185 INFO    ] time= 12/06/2026 17:59:53
[2026-06-12 17:59:53,209.209 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 17:59:53,216.216 INFO    ] Checking for existing commands in stream...
[2026-06-12 17:59:53,307.307 INFO    ] No existing commands found in stream
[2026-06-12 17:59:58,316.316 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 17:59:58,319.319 INFO    ] Waiting 0.28 seconds before fallback handling...
[2026-06-12 17:59:59,009.009 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 17:59:59,010.010 INFO    ] Checking for system updates...
[2026-06-12 17:59:59,032.032 INFO    ] 200
[2026-06-12 17:59:59,033.033 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:59:59,066.066 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 17:59:59,068.068 INFO    ] No update needed
[2026-06-12 17:59:59,069.069 INFO    ] Checking for camera pi updates...
[2026-06-12 17:59:59,091.091 INFO    ] 200
[2026-06-12 17:59:59,093.093 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 17:59:59,117.117 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 17:59:59,164.164 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 17:59:59,165.165 INFO    ] No camera update needed
[2026-06-12 17:59:59,167.167 INFO    ] Script finished. Safe exiting...
[2026-06-12 17:59:59,168.168 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 17:59:59,171.171 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 17:59:59,174.174 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 18:00:01,222.222 INFO    ] ================================================
[2026-06-12 18:00:01,255.255 INFO    ] Launching Daemon at Fri Jun 12 18:00:01 IST 2026
[2026-06-12 18:00:01,274.274 INFO    ] ================================================
[2026-06-12 18:00:02,444.444 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 18:00:02
[2026-06-12 18:00:03,402.402 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 18:00:03,922.922 INFO    ] Initializing speech engine...
[2026-06-12 18:00:03,926.926 INFO    ] 2026-06-12 18:00:03
[2026-06-12 18:00:04,122.122 INFO    ] 2026-06-12 18:00:04
[2026-06-12 18:00:04,164.164 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 18:00:04,288.288 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 18:00:04,289.289 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 18:00:04,411.411 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 18:00:04,416.416 INFO    ] time= 12/06/2026 18:00:04
[2026-06-12 18:00:04,421.421 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 18:00:04,470.470 INFO    ] Checking for existing commands in stream...
[2026-06-12 18:00:04,596.596 INFO    ] No existing commands found in stream
[2026-06-12 18:00:09,625.625 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 18:00:09,628.628 INFO    ] Waiting 2.46 seconds before fallback handling...
[2026-06-12 18:00:12,484.484 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 18:00:12,486.486 INFO    ] Checking for system updates...
[2026-06-12 18:00:12,506.506 INFO    ] 200
[2026-06-12 18:00:12,507.507 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:00:12,702.702 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 18:00:12,703.703 INFO    ] No update needed
[2026-06-12 18:00:12,705.705 INFO    ] Checking for camera pi updates...
[2026-06-12 18:00:12,724.724 INFO    ] 200
[2026-06-12 18:00:12,726.726 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:00:12,749.749 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 18:00:12,800.800 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 18:00:12,801.801 INFO    ] No camera update needed
[2026-06-12 18:00:12,802.802 INFO    ] Script finished. Safe exiting...
[2026-06-12 18:00:12,804.804 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 18:00:12,806.806 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 18:00:12,809.809 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 18:00:14,841.841 INFO    ] ================================================
[2026-06-12 18:00:14,857.857 INFO    ] Launching Daemon at Fri Jun 12 18:00:14 IST 2026
[2026-06-12 18:00:14,868.868 INFO    ] ================================================
[2026-06-12 18:00:15,257.257 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 18:00:15
[2026-06-12 18:00:15,598.598 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 18:00:15,750.750 INFO    ] Initializing speech engine...
[2026-06-12 18:00:15,756.756 INFO    ] 2026-06-12 18:00:15
[2026-06-12 18:00:15,970.970 INFO    ] 2026-06-12 18:00:15
[2026-06-12 18:00:15,999.999 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 18:00:16,187.187 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 18:00:16,191.191 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 18:00:16,346.346 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 18:00:16,403.403 INFO    ] time= 12/06/2026 18:00:16
[2026-06-12 18:00:16,426.426 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 18:00:16,432.432 INFO    ] Checking for existing commands in stream...
[2026-06-12 18:00:16,498.498 INFO    ] No existing commands found in stream
[2026-06-12 18:00:21,507.507 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 18:00:21,510.510 INFO    ] Waiting 2.66 seconds before fallback handling...
[2026-06-12 18:00:24,536.536 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 18:00:24,537.537 INFO    ] Checking for system updates...
[2026-06-12 18:00:24,558.558 INFO    ] 200
[2026-06-12 18:00:24,559.559 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:00:24,591.591 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 18:00:24,593.593 INFO    ] No update needed
[2026-06-12 18:00:24,594.594 INFO    ] Checking for camera pi updates...
[2026-06-12 18:00:24,613.613 INFO    ] 200
[2026-06-12 18:00:24,614.614 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:00:24,637.637 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 18:00:24,679.679 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 18:00:24,681.681 INFO    ] No camera update needed
[2026-06-12 18:00:24,682.682 INFO    ] Script finished. Safe exiting...
[2026-06-12 18:00:24,683.683 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 18:00:24,686.686 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 18:00:24,689.689 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 18:00:26,728.728 INFO    ] ================================================
[2026-06-12 18:00:26,744.744 INFO    ] Launching Daemon at Fri Jun 12 18:00:26 IST 2026
[2026-06-12 18:00:26,755.755 INFO    ] ================================================
[2026-06-12 18:00:27,145.145 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 18:00:27
[2026-06-12 18:00:27,482.482 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 18:00:27,635.635 INFO    ] Initializing speech engine...
[2026-06-12 18:00:27,641.641 INFO    ] 2026-06-12 18:00:27
[2026-06-12 18:00:27,851.851 INFO    ] 2026-06-12 18:00:27
[2026-06-12 18:00:27,880.880 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 18:00:28,067.067 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 18:00:28,076.076 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 18:00:28,203.203 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 18:00:28,256.256 INFO    ] time= 12/06/2026 18:00:28
[2026-06-12 18:00:28,297.297 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 18:00:28,303.303 INFO    ] Checking for existing commands in stream...
[2026-06-12 18:00:28,398.398 INFO    ] No existing commands found in stream
[2026-06-12 18:00:33,407.407 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 18:00:33,410.410 INFO    ] Waiting 0.40 seconds before fallback handling...
[2026-06-12 18:00:34,190.190 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 18:00:34,192.192 INFO    ] Checking for system updates...
[2026-06-12 18:00:34,212.212 INFO    ] 200
[2026-06-12 18:00:34,214.214 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:00:34,246.246 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 18:00:34,247.247 INFO    ] No update needed
[2026-06-12 18:00:34,248.248 INFO    ] Checking for camera pi updates...
[2026-06-12 18:00:34,267.267 INFO    ] 200
[2026-06-12 18:00:34,269.269 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:00:34,292.292 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 18:00:34,352.352 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 18:00:34,353.353 INFO    ] No camera update needed
[2026-06-12 18:00:34,354.354 INFO    ] Script finished. Safe exiting...
[2026-06-12 18:00:34,356.356 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 18:00:34,358.358 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 18:00:34,361.361 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 18:00:36,400.400 INFO    ] ================================================
[2026-06-12 18:00:36,416.416 INFO    ] Launching Daemon at Fri Jun 12 18:00:36 IST 2026
[2026-06-12 18:00:36,427.427 INFO    ] ================================================
[2026-06-12 18:00:36,780.780 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 18:00:36
[2026-06-12 18:00:37,090.090 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 18:00:37,239.239 INFO    ] Initializing speech engine...
[2026-06-12 18:00:37,243.243 INFO    ] 2026-06-12 18:00:37
[2026-06-12 18:00:37,455.455 INFO    ] 2026-06-12 18:00:37
[2026-06-12 18:00:37,486.486 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 18:00:37,683.683 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 18:00:37,686.686 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 18:00:37,831.831 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 18:00:37,890.890 INFO    ] time= 12/06/2026 18:00:37
[2026-06-12 18:00:37,928.928 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 18:00:37,930.930 INFO    ] Checking for existing commands in stream...
[2026-06-12 18:00:38,006.006 INFO    ] No existing commands found in stream
[2026-06-12 18:00:43,020.020 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 18:00:43,023.023 INFO    ] Waiting 1.57 seconds before fallback handling...
[2026-06-12 18:00:44,962.962 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 18:00:44,963.963 INFO    ] Checking for system updates...
[2026-06-12 18:00:44,983.983 INFO    ] 200
[2026-06-12 18:00:44,985.985 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:00:45,017.017 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 18:00:45,018.018 INFO    ] No update needed
[2026-06-12 18:00:45,020.020 INFO    ] Checking for camera pi updates...
[2026-06-12 18:00:45,040.040 INFO    ] 200
[2026-06-12 18:00:45,041.041 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:00:45,065.065 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 18:00:45,115.115 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 18:00:45,117.117 INFO    ] No camera update needed
[2026-06-12 18:00:45,118.118 INFO    ] Script finished. Safe exiting...
[2026-06-12 18:00:45,119.119 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 18:00:45,123.123 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 18:00:45,126.126 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 18:00:47,164.164 INFO    ] ================================================
[2026-06-12 18:00:47,180.180 INFO    ] Launching Daemon at Fri Jun 12 18:00:47 IST 2026
[2026-06-12 18:00:47,192.192 INFO    ] ================================================
[2026-06-12 18:00:47,580.580 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 18:00:47
[2026-06-12 18:00:47,915.915 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 18:00:48,067.067 INFO    ] Initializing speech engine...
[2026-06-12 18:00:48,072.072 INFO    ] 2026-06-12 18:00:48
[2026-06-12 18:00:48,282.282 INFO    ] 2026-06-12 18:00:48
[2026-06-12 18:00:48,311.311 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 18:00:48,498.498 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 18:00:48,508.508 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 18:00:48,655.655 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 18:00:48,709.709 INFO    ] time= 12/06/2026 18:00:48
[2026-06-12 18:00:48,732.732 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 18:00:48,738.738 INFO    ] Checking for existing commands in stream...
[2026-06-12 18:00:48,806.806 INFO    ] No existing commands found in stream
[2026-06-12 18:00:53,820.820 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 18:00:53,824.824 INFO    ] Waiting 3.19 seconds before fallback handling...
[2026-06-12 18:00:57,393.393 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 18:00:57,395.395 INFO    ] Checking for system updates...
[2026-06-12 18:00:57,415.415 INFO    ] 200
[2026-06-12 18:00:57,416.416 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:00:57,446.446 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 18:00:57,447.447 INFO    ] No update needed
[2026-06-12 18:00:57,448.448 INFO    ] Checking for camera pi updates...
[2026-06-12 18:00:57,471.471 INFO    ] 200
[2026-06-12 18:00:57,472.472 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:00:57,495.495 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 18:00:57,538.538 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 18:00:57,540.540 INFO    ] No camera update needed
[2026-06-12 18:00:57,541.541 INFO    ] Script finished. Safe exiting...
[2026-06-12 18:00:57,542.542 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 18:00:57,545.545 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 18:00:57,548.548 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 18:00:59,589.589 INFO    ] ================================================
[2026-06-12 18:00:59,604.604 INFO    ] Launching Daemon at Fri Jun 12 18:00:59 IST 2026
[2026-06-12 18:00:59,616.616 INFO    ] ================================================
[2026-06-12 18:00:59,973.973 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 18:00:59
[2026-06-12 18:01:00,289.289 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 18:01:00,433.433 INFO    ] Initializing speech engine...
[2026-06-12 18:01:00,438.438 INFO    ] 2026-06-12 18:01:00
[2026-06-12 18:01:00,642.642 INFO    ] 2026-06-12 18:01:00
[2026-06-12 18:01:00,670.670 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 18:01:00,854.854 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 18:01:00,863.863 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 18:01:01,002.002 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 18:01:01,059.059 INFO    ] time= 12/06/2026 18:01:01
[2026-06-12 18:01:01,083.083 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 18:01:01,088.088 INFO    ] Checking for existing commands in stream...
[2026-06-12 18:01:01,155.155 INFO    ] No existing commands found in stream
[2026-06-12 18:01:06,168.168 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 18:01:06,170.170 INFO    ] Waiting 1.95 seconds before fallback handling...
[2026-06-12 18:01:08,513.513 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 18:01:08,515.515 INFO    ] Checking for system updates...
[2026-06-12 18:01:08,535.535 INFO    ] 200
[2026-06-12 18:01:08,537.537 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:01:08,566.566 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 18:01:08,568.568 INFO    ] No update needed
[2026-06-12 18:01:08,569.569 INFO    ] Checking for camera pi updates...
[2026-06-12 18:01:08,588.588 INFO    ] 200
[2026-06-12 18:01:08,590.590 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:01:08,615.615 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 18:01:08,753.753 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 18:01:08,755.755 INFO    ] No camera update needed
[2026-06-12 18:01:08,756.756 INFO    ] Script finished. Safe exiting...
[2026-06-12 18:01:08,757.757 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 18:01:08,761.761 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 18:01:08,763.763 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 18:01:10,803.803 INFO    ] ================================================
[2026-06-12 18:01:10,818.818 INFO    ] Launching Daemon at Fri Jun 12 18:01:10 IST 2026
[2026-06-12 18:01:10,830.830 INFO    ] ================================================
[2026-06-12 18:01:11,172.172 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 18:01:11
[2026-06-12 18:01:11,507.507 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 18:01:11,659.659 INFO    ] Initializing speech engine...
[2026-06-12 18:01:11,664.664 INFO    ] 2026-06-12 18:01:11
[2026-06-12 18:01:11,874.874 INFO    ] 2026-06-12 18:01:11
[2026-06-12 18:01:11,903.903 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 18:01:12,087.087 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 18:01:12,096.096 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 18:01:12,223.223 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 18:01:12,289.289 INFO    ] time= 12/06/2026 18:01:12
[2026-06-12 18:01:12,317.317 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 18:01:12,323.323 INFO    ] Checking for existing commands in stream...
[2026-06-12 18:01:12,390.390 INFO    ] No existing commands found in stream
[2026-06-12 18:01:17,422.422 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 18:01:17,426.426 INFO    ] Waiting 1.45 seconds before fallback handling...
[2026-06-12 18:01:19,254.254 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 18:01:19,256.256 INFO    ] Checking for system updates...
[2026-06-12 18:01:19,278.278 INFO    ] 200
[2026-06-12 18:01:19,280.280 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:01:19,316.316 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 18:01:19,318.318 INFO    ] No update needed
[2026-06-12 18:01:19,319.319 INFO    ] Checking for camera pi updates...
[2026-06-12 18:01:19,342.342 INFO    ] 200
[2026-06-12 18:01:19,344.344 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:01:19,367.367 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 18:01:19,415.415 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 18:01:19,416.416 INFO    ] No camera update needed
[2026-06-12 18:01:19,418.418 INFO    ] Script finished. Safe exiting...
[2026-06-12 18:01:19,419.419 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 18:01:19,423.423 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 18:01:19,426.426 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 18:01:21,468.468 INFO    ] ================================================
[2026-06-12 18:01:21,483.483 INFO    ] Launching Daemon at Fri Jun 12 18:01:21 IST 2026
[2026-06-12 18:01:21,494.494 INFO    ] ================================================
[2026-06-12 18:01:21,853.853 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 18:01:21
[2026-06-12 18:01:22,165.165 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 18:01:22,297.297 INFO    ] Initializing speech engine...
[2026-06-12 18:01:22,302.302 INFO    ] 2026-06-12 18:01:22
[2026-06-12 18:01:22,493.493 INFO    ] 2026-06-12 18:01:22
[2026-06-12 18:01:22,539.539 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 18:01:22,699.699 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 18:01:22,732.732 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 18:01:22,873.873 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 18:01:22,913.913 INFO    ] time= 12/06/2026 18:01:22
[2026-06-12 18:01:22,970.970 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 18:01:23,019.019 INFO    ] Checking for existing commands in stream...
[2026-06-12 18:01:23,124.124 INFO    ] No existing commands found in stream
[2026-06-12 18:01:28,133.133 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 18:01:28,135.135 INFO    ] Waiting 3.78 seconds before fallback handling...
[2026-06-12 18:01:32,252.252 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 18:01:32,254.254 INFO    ] Checking for system updates...
[2026-06-12 18:01:32,294.294 INFO    ] 200
[2026-06-12 18:01:32,296.296 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:01:32,348.348 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 18:01:32,351.351 INFO    ] No update needed
[2026-06-12 18:01:32,353.353 INFO    ] Checking for camera pi updates...
[2026-06-12 18:01:32,386.386 INFO    ] 200
[2026-06-12 18:01:32,389.389 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:01:32,429.429 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 18:01:32,456.456 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 18:01:32,457.457 INFO    ] No camera update needed
[2026-06-12 18:01:32,458.458 INFO    ] Script finished. Safe exiting...
[2026-06-12 18:01:32,460.460 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 18:01:32,463.463 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 18:01:32,466.466 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 18:01:34,503.503 INFO    ] ================================================
[2026-06-12 18:01:34,518.518 INFO    ] Launching Daemon at Fri Jun 12 18:01:34 IST 2026
[2026-06-12 18:01:34,529.529 INFO    ] ================================================
[2026-06-12 18:01:34,855.855 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 18:01:34
[2026-06-12 18:01:35,173.173 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 18:01:35,329.329 INFO    ] Initializing speech engine...
[2026-06-12 18:01:35,338.338 INFO    ] 2026-06-12 18:01:35
[2026-06-12 18:01:35,554.554 INFO    ] 2026-06-12 18:01:35
[2026-06-12 18:01:35,600.600 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 18:01:35,762.762 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 18:01:35,830.830 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 18:01:35,974.974 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 18:01:36,021.021 INFO    ] time= 12/06/2026 18:01:35
[2026-06-12 18:01:36,060.060 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 18:01:36,085.085 INFO    ] Checking for existing commands in stream...
[2026-06-12 18:01:36,164.164 INFO    ] No existing commands found in stream
[2026-06-12 18:01:41,171.171 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 18:01:41,173.173 INFO    ] Waiting 3.10 seconds before fallback handling...
[2026-06-12 18:01:44,601.601 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 18:01:44,602.602 INFO    ] Checking for system updates...
[2026-06-12 18:01:44,623.623 INFO    ] 200
[2026-06-12 18:01:44,624.624 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:01:44,654.654 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 18:01:44,655.655 INFO    ] No update needed
[2026-06-12 18:01:44,656.656 INFO    ] Checking for camera pi updates...
[2026-06-12 18:01:44,676.676 INFO    ] 200
[2026-06-12 18:01:44,677.677 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:01:44,700.700 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 18:01:44,766.766 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 18:01:44,767.767 INFO    ] No camera update needed
[2026-06-12 18:01:44,768.768 INFO    ] Script finished. Safe exiting...
[2026-06-12 18:01:44,770.770 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 18:01:44,773.773 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 18:01:44,775.775 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 18:01:46,813.813 INFO    ] ================================================
[2026-06-12 18:01:46,828.828 INFO    ] Launching Daemon at Fri Jun 12 18:01:46 IST 2026
[2026-06-12 18:01:46,839.839 INFO    ] ================================================
[2026-06-12 18:01:47,202.202 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 18:01:47
[2026-06-12 18:01:47,520.520 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 18:01:47,664.664 INFO    ] Initializing speech engine...
[2026-06-12 18:01:47,669.669 INFO    ] 2026-06-12 18:01:47
[2026-06-12 18:01:47,875.875 INFO    ] 2026-06-12 18:01:47
[2026-06-12 18:01:47,903.903 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 18:01:48,036.036 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 18:01:48,089.089 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 18:01:48,239.239 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 18:01:48,296.296 INFO    ] time= 12/06/2026 18:01:48
[2026-06-12 18:01:48,319.319 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 18:01:48,326.326 INFO    ] Checking for existing commands in stream...
[2026-06-12 18:01:48,393.393 INFO    ] No existing commands found in stream
[2026-06-12 18:01:53,402.402 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 18:01:53,405.405 INFO    ] Waiting 1.17 seconds before fallback handling...
[2026-06-12 18:01:54,925.925 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 18:01:54,926.926 INFO    ] Checking for system updates...
[2026-06-12 18:01:54,947.947 INFO    ] 200
[2026-06-12 18:01:54,948.948 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:01:54,980.980 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 18:01:54,982.982 INFO    ] No update needed
[2026-06-12 18:01:54,983.983 INFO    ] Checking for camera pi updates...
[2026-06-12 18:01:55,004.004 INFO    ] 200
[2026-06-12 18:01:55,005.005 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:01:55,027.027 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 18:01:55,070.070 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 18:01:55,072.072 INFO    ] No camera update needed
[2026-06-12 18:01:55,073.073 INFO    ] Script finished. Safe exiting...
[2026-06-12 18:01:55,074.074 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 18:01:55,077.077 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 18:01:55,080.080 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 18:01:57,117.117 INFO    ] ================================================
[2026-06-12 18:01:57,133.133 INFO    ] Launching Daemon at Fri Jun 12 18:01:57 IST 2026
[2026-06-12 18:01:57,144.144 INFO    ] ================================================
[2026-06-12 18:01:57,504.504 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 18:01:57
[2026-06-12 18:01:57,815.815 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 18:01:57,952.952 INFO    ] Initializing speech engine...
[2026-06-12 18:01:57,961.961 INFO    ] 2026-06-12 18:01:57
[2026-06-12 18:01:58,164.164 INFO    ] 2026-06-12 18:01:58
[2026-06-12 18:01:58,196.196 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 18:01:58,380.380 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 18:01:58,390.390 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 18:01:58,511.511 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 18:01:58,567.567 INFO    ] time= 12/06/2026 18:01:58
[2026-06-12 18:01:58,609.609 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 18:01:58,617.617 INFO    ] Checking for existing commands in stream...
[2026-06-12 18:01:58,706.706 INFO    ] No existing commands found in stream
[2026-06-12 18:02:03,716.716 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 18:02:03,719.719 INFO    ] Waiting 1.74 seconds before fallback handling...
[2026-06-12 18:02:05,865.865 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 18:02:05,866.866 INFO    ] Checking for system updates...
[2026-06-12 18:02:05,886.886 INFO    ] 200
[2026-06-12 18:02:05,888.888 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:02:05,920.920 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 18:02:05,922.922 INFO    ] No update needed
[2026-06-12 18:02:05,923.923 INFO    ] Checking for camera pi updates...
[2026-06-12 18:02:05,943.943 INFO    ] 200
[2026-06-12 18:02:05,945.945 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:02:05,969.969 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 18:02:06,011.011 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 18:02:06,013.013 INFO    ] No camera update needed
[2026-06-12 18:02:06,014.014 INFO    ] Script finished. Safe exiting...
[2026-06-12 18:02:06,015.015 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 18:02:06,018.018 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 18:02:06,021.021 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 18:02:08,059.059 INFO    ] ================================================
[2026-06-12 18:02:08,075.075 INFO    ] Launching Daemon at Fri Jun 12 18:02:08 IST 2026
[2026-06-12 18:02:08,085.085 INFO    ] ================================================
[2026-06-12 18:02:08,448.448 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 18:02:08
[2026-06-12 18:02:08,765.765 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 18:02:08,900.900 INFO    ] Initializing speech engine...
[2026-06-12 18:02:08,908.908 INFO    ] 2026-06-12 18:02:08
[2026-06-12 18:02:09,133.133 INFO    ] 2026-06-12 18:02:09
[2026-06-12 18:02:09,164.164 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 18:02:09,295.295 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 18:02:09,340.340 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 18:02:09,507.507 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 18:02:09,570.570 INFO    ] time= 12/06/2026 18:02:09
[2026-06-12 18:02:09,605.605 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 18:02:09,617.617 INFO    ] Checking for existing commands in stream...
[2026-06-12 18:02:09,692.692 INFO    ] No existing commands found in stream
[2026-06-12 18:02:14,702.702 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 18:02:14,705.705 INFO    ] Waiting 2.18 seconds before fallback handling...
[2026-06-12 18:02:17,235.235 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 18:02:17,236.236 INFO    ] Checking for system updates...
[2026-06-12 18:02:17,256.256 INFO    ] 200
[2026-06-12 18:02:17,258.258 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:02:17,287.287 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 18:02:17,288.288 INFO    ] No update needed
[2026-06-12 18:02:17,290.290 INFO    ] Checking for camera pi updates...
[2026-06-12 18:02:17,309.309 INFO    ] 200
[2026-06-12 18:02:17,310.310 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:02:17,335.335 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 18:02:17,379.379 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 18:02:17,380.380 INFO    ] No camera update needed
[2026-06-12 18:02:17,382.382 INFO    ] Script finished. Safe exiting...
[2026-06-12 18:02:17,383.383 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 18:02:17,386.386 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 18:02:17,388.388 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 18:02:19,426.426 INFO    ] ================================================
[2026-06-12 18:02:19,442.442 INFO    ] Launching Daemon at Fri Jun 12 18:02:19 IST 2026
[2026-06-12 18:02:19,453.453 INFO    ] ================================================
[2026-06-12 18:02:19,792.792 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 18:02:19
[2026-06-12 18:02:20,112.112 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 18:02:20,243.243 INFO    ] Initializing speech engine...
[2026-06-12 18:02:20,251.251 INFO    ] 2026-06-12 18:02:20
[2026-06-12 18:02:20,464.464 INFO    ] 2026-06-12 18:02:20
[2026-06-12 18:02:20,493.493 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 18:02:20,680.680 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 18:02:20,688.688 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 18:02:20,819.819 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 18:02:20,886.886 INFO    ] time= 12/06/2026 18:02:20
[2026-06-12 18:02:20,910.910 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 18:02:20,917.917 INFO    ] Checking for existing commands in stream...
[2026-06-12 18:02:20,984.984 INFO    ] No existing commands found in stream
[2026-06-12 18:02:25,993.993 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 18:02:25,996.996 INFO    ] Waiting 3.54 seconds before fallback handling...
[2026-06-12 18:02:29,937.937 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 18:02:29,939.939 INFO    ] Checking for system updates...
[2026-06-12 18:02:29,960.960 INFO    ] 200
[2026-06-12 18:02:29,962.962 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:02:29,996.996 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 18:02:29,997.997 INFO    ] No update needed
[2026-06-12 18:02:29,999.999 INFO    ] Checking for camera pi updates...
[2026-06-12 18:02:30,020.020 INFO    ] 200
[2026-06-12 18:02:30,021.021 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:02:30,046.046 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 18:02:30,089.089 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 18:02:30,090.090 INFO    ] No camera update needed
[2026-06-12 18:02:30,092.092 INFO    ] Script finished. Safe exiting...
[2026-06-12 18:02:30,093.093 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 18:02:30,096.096 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 18:02:30,100.100 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 18:02:32,133.133 INFO    ] ================================================
[2026-06-12 18:02:32,142.142 INFO    ] Launching Daemon at Fri Jun 12 18:02:32 IST 2026
[2026-06-12 18:02:32,148.148 INFO    ] ================================================
[2026-06-12 18:02:32,500.500 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 18:02:32
[2026-06-12 18:02:32,840.840 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 18:02:32,995.995 INFO    ] Initializing speech engine...
[2026-06-12 18:02:32,999.999 INFO    ] 2026-06-12 18:02:32
[2026-06-12 18:02:33,209.209 INFO    ] 2026-06-12 18:02:33
[2026-06-12 18:02:33,238.238 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 18:02:33,425.425 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 18:02:33,434.434 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 18:02:33,564.564 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 18:02:33,630.630 INFO    ] time= 12/06/2026 18:02:33
[2026-06-12 18:02:33,658.658 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 18:02:33,665.665 INFO    ] Checking for existing commands in stream...
[2026-06-12 18:02:33,733.733 INFO    ] No existing commands found in stream
[2026-06-12 18:02:38,748.748 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 18:02:38,751.751 INFO    ] Waiting 4.00 seconds before fallback handling...
[2026-06-12 18:02:43,153.153 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 18:02:43,155.155 INFO    ] Checking for system updates...
[2026-06-12 18:02:43,177.177 INFO    ] 200
[2026-06-12 18:02:43,178.178 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:02:43,212.212 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 18:02:43,214.214 INFO    ] No update needed
[2026-06-12 18:02:43,215.215 INFO    ] Checking for camera pi updates...
[2026-06-12 18:02:43,236.236 INFO    ] 200
[2026-06-12 18:02:43,237.237 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:02:43,263.263 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 18:02:43,308.308 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 18:02:43,311.311 INFO    ] No camera update needed
[2026-06-12 18:02:43,312.312 INFO    ] Script finished. Safe exiting...
[2026-06-12 18:02:43,314.314 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 18:02:43,318.318 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 18:02:43,321.321 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 18:02:45,353.353 INFO    ] ================================================
[2026-06-12 18:02:45,369.369 INFO    ] Launching Daemon at Fri Jun 12 18:02:45 IST 2026
[2026-06-12 18:02:45,380.380 INFO    ] ================================================
[2026-06-12 18:02:45,766.766 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 18:02:45
[2026-06-12 18:02:46,107.107 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 18:02:46,259.259 INFO    ] Initializing speech engine...
[2026-06-12 18:02:46,264.264 INFO    ] 2026-06-12 18:02:46
[2026-06-12 18:02:46,476.476 INFO    ] 2026-06-12 18:02:46
[2026-06-12 18:02:46,505.505 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 18:02:46,688.688 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 18:02:46,697.697 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 18:02:46,827.827 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 18:02:46,894.894 INFO    ] time= 12/06/2026 18:02:46
[2026-06-12 18:02:46,918.918 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 18:02:46,925.925 INFO    ] Checking for existing commands in stream...
[2026-06-12 18:02:47,015.015 INFO    ] No existing commands found in stream
[2026-06-12 18:02:52,024.024 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 18:02:52,027.027 INFO    ] Waiting 0.37 seconds before fallback handling...
[2026-06-12 18:02:52,797.797 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 18:02:52,799.799 INFO    ] Checking for system updates...
[2026-06-12 18:02:52,820.820 INFO    ] 200
[2026-06-12 18:02:52,822.822 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:02:52,852.852 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 18:02:52,853.853 INFO    ] No update needed
[2026-06-12 18:02:52,854.854 INFO    ] Checking for camera pi updates...
[2026-06-12 18:02:52,875.875 INFO    ] 200
[2026-06-12 18:02:52,876.876 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:02:52,902.902 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 18:02:52,954.954 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 18:02:52,955.955 INFO    ] No camera update needed
[2026-06-12 18:02:52,957.957 INFO    ] Script finished. Safe exiting...
[2026-06-12 18:02:52,958.958 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 18:02:52,962.962 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 18:02:52,965.965 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 18:02:55,005.005 INFO    ] ================================================
[2026-06-12 18:02:55,021.021 INFO    ] Launching Daemon at Fri Jun 12 18:02:55 IST 2026
[2026-06-12 18:02:55,032.032 INFO    ] ================================================
[2026-06-12 18:02:55,434.434 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 18:02:55
[2026-06-12 18:02:55,777.777 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 18:02:55,929.929 INFO    ] Initializing speech engine...
[2026-06-12 18:02:55,934.934 INFO    ] 2026-06-12 18:02:55
[2026-06-12 18:02:56,136.136 INFO    ] 2026-06-12 18:02:56
[2026-06-12 18:02:56,164.164 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 18:02:56,291.291 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 18:02:56,348.348 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 18:02:56,485.485 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 18:02:56,551.551 INFO    ] time= 12/06/2026 18:02:56
[2026-06-12 18:02:56,575.575 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 18:02:56,581.581 INFO    ] Checking for existing commands in stream...
[2026-06-12 18:02:56,647.647 INFO    ] No existing commands found in stream
[2026-06-12 18:03:01,662.662 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 18:03:01,667.667 INFO    ] Waiting 1.42 seconds before fallback handling...
[2026-06-12 18:03:03,425.425 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 18:03:03,427.427 INFO    ] Checking for system updates...
[2026-06-12 18:03:03,449.449 INFO    ] 200
[2026-06-12 18:03:03,451.451 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:03:03,481.481 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 18:03:03,482.482 INFO    ] No update needed
[2026-06-12 18:03:03,484.484 INFO    ] Checking for camera pi updates...
[2026-06-12 18:03:03,504.504 INFO    ] 200
[2026-06-12 18:03:03,506.506 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:03:03,529.529 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 18:03:03,580.580 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 18:03:03,581.581 INFO    ] No camera update needed
[2026-06-12 18:03:03,583.583 INFO    ] Script finished. Safe exiting...
[2026-06-12 18:03:03,584.584 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 18:03:03,588.588 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 18:03:03,591.591 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 18:03:05,630.630 INFO    ] ================================================
[2026-06-12 18:03:05,646.646 INFO    ] Launching Daemon at Fri Jun 12 18:03:05 IST 2026
[2026-06-12 18:03:05,657.657 INFO    ] ================================================
[2026-06-12 18:03:06,029.029 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 18:03:06
[2026-06-12 18:03:06,340.340 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 18:03:06,473.473 INFO    ] Initializing speech engine...
[2026-06-12 18:03:06,476.476 INFO    ] 2026-06-12 18:03:06
[2026-06-12 18:03:06,685.685 INFO    ] 2026-06-12 18:03:06
[2026-06-12 18:03:06,714.714 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 18:03:06,875.875 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 18:03:06,933.933 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 18:03:07,093.093 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 18:03:07,152.152 INFO    ] time= 12/06/2026 18:03:07
[2026-06-12 18:03:07,181.181 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 18:03:07,193.193 INFO    ] Checking for existing commands in stream...
[2026-06-12 18:03:07,270.270 INFO    ] No existing commands found in stream
[2026-06-12 18:03:12,283.283 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 18:03:12,286.286 INFO    ] Waiting 1.44 seconds before fallback handling...
[2026-06-12 18:03:14,617.617 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 18:03:14,619.619 INFO    ] Checking for system updates...
[2026-06-12 18:03:14,640.640 INFO    ] 200
[2026-06-12 18:03:14,643.643 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:03:14,702.702 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 18:03:14,705.705 INFO    ] No update needed
[2026-06-12 18:03:14,707.707 INFO    ] Checking for camera pi updates...
[2026-06-12 18:03:14,740.740 INFO    ] 200
[2026-06-12 18:03:14,741.741 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:03:14,764.764 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 18:03:14,900.900 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 18:03:14,901.901 INFO    ] No camera update needed
[2026-06-12 18:03:14,903.903 INFO    ] Script finished. Safe exiting...
[2026-06-12 18:03:14,904.904 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 18:03:14,907.907 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 18:03:14,909.909 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 18:03:16,946.946 INFO    ] ================================================
[2026-06-12 18:03:16,962.962 INFO    ] Launching Daemon at Fri Jun 12 18:03:16 IST 2026
[2026-06-12 18:03:16,973.973 INFO    ] ================================================
[2026-06-12 18:03:17,334.334 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 18:03:17
[2026-06-12 18:03:17,646.646 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 18:03:17,787.787 INFO    ] Initializing speech engine...
[2026-06-12 18:03:17,793.793 INFO    ] 2026-06-12 18:03:17
[2026-06-12 18:03:17,995.995 INFO    ] 2026-06-12 18:03:17
[2026-06-12 18:03:18,023.023 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 18:03:18,154.154 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 18:03:18,206.206 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 18:03:18,335.335 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 18:03:18,396.396 INFO    ] time= 12/06/2026 18:03:18
[2026-06-12 18:03:18,432.432 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 18:03:18,434.434 INFO    ] Checking for existing commands in stream...
[2026-06-12 18:03:18,505.505 INFO    ] No existing commands found in stream
[2026-06-12 18:03:23,519.519 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 18:03:23,522.522 INFO    ] Waiting 2.61 seconds before fallback handling...
[2026-06-12 18:03:26,624.624 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 18:03:26,625.625 INFO    ] Checking for system updates...
[2026-06-12 18:03:26,646.646 INFO    ] 200
[2026-06-12 18:03:26,648.648 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:03:26,681.681 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 18:03:26,682.682 INFO    ] No update needed
[2026-06-12 18:03:26,684.684 INFO    ] Checking for camera pi updates...
[2026-06-12 18:03:26,706.706 INFO    ] 200
[2026-06-12 18:03:26,707.707 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:03:26,732.732 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 18:03:26,781.781 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 18:03:26,783.783 INFO    ] No camera update needed
[2026-06-12 18:03:26,784.784 INFO    ] Script finished. Safe exiting...
[2026-06-12 18:03:26,786.786 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 18:03:26,789.789 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 18:03:26,792.792 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 18:03:28,831.831 INFO    ] ================================================
[2026-06-12 18:03:28,853.853 INFO    ] Launching Daemon at Fri Jun 12 18:03:28 IST 2026
[2026-06-12 18:03:28,864.864 INFO    ] ================================================
[2026-06-12 18:03:29,197.197 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 18:03:29
[2026-06-12 18:03:29,515.515 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 18:03:29,660.660 INFO    ] Initializing speech engine...
[2026-06-12 18:03:29,666.666 INFO    ] 2026-06-12 18:03:29
[2026-06-12 18:03:29,870.870 INFO    ] 2026-06-12 18:03:29
[2026-06-12 18:03:29,898.898 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 18:03:30,081.081 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 18:03:30,090.090 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 18:03:30,219.219 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 18:03:30,268.268 INFO    ] time= 12/06/2026 18:03:30
[2026-06-12 18:03:30,311.311 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 18:03:30,313.313 INFO    ] Checking for existing commands in stream...
[2026-06-12 18:03:30,385.385 INFO    ] No existing commands found in stream
[2026-06-12 18:03:35,394.394 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 18:03:35,396.396 INFO    ] Waiting 3.47 seconds before fallback handling...
[2026-06-12 18:03:39,200.200 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 18:03:39,201.201 INFO    ] Checking for system updates...
[2026-06-12 18:03:39,221.221 INFO    ] 200
[2026-06-12 18:03:39,223.223 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:03:39,254.254 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 18:03:39,255.255 INFO    ] No update needed
[2026-06-12 18:03:39,257.257 INFO    ] Checking for camera pi updates...
[2026-06-12 18:03:39,276.276 INFO    ] 200
[2026-06-12 18:03:39,277.277 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:03:39,300.300 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 18:03:39,344.344 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 18:03:39,346.346 INFO    ] No camera update needed
[2026-06-12 18:03:39,347.347 INFO    ] Script finished. Safe exiting...
[2026-06-12 18:03:39,348.348 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 18:03:39,351.351 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 18:03:39,354.354 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 18:03:41,392.392 INFO    ] ================================================
[2026-06-12 18:03:41,407.407 INFO    ] Launching Daemon at Fri Jun 12 18:03:41 IST 2026
[2026-06-12 18:03:41,418.418 INFO    ] ================================================
[2026-06-12 18:03:41,773.773 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 18:03:41
[2026-06-12 18:03:42,113.113 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 18:03:42,265.265 INFO    ] Initializing speech engine...
[2026-06-12 18:03:42,269.269 INFO    ] 2026-06-12 18:03:42
[2026-06-12 18:03:42,480.480 INFO    ] 2026-06-12 18:03:42
[2026-06-12 18:03:42,509.509 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 18:03:42,692.692 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 18:03:42,701.701 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 18:03:42,852.852 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 18:03:42,907.907 INFO    ] time= 12/06/2026 18:03:42
[2026-06-12 18:03:42,927.927 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 18:03:42,929.929 INFO    ] Checking for existing commands in stream...
[2026-06-12 18:03:42,996.996 INFO    ] No existing commands found in stream
[2026-06-12 18:03:48,021.021 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 18:03:48,024.024 INFO    ] Waiting 1.21 seconds before fallback handling...
[2026-06-12 18:03:49,651.651 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 18:03:49,652.652 INFO    ] Checking for system updates...
[2026-06-12 18:03:49,673.673 INFO    ] 200
[2026-06-12 18:03:49,675.675 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:03:49,705.705 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 18:03:49,706.706 INFO    ] No update needed
[2026-06-12 18:03:49,708.708 INFO    ] Checking for camera pi updates...
[2026-06-12 18:03:49,729.729 INFO    ] 200
[2026-06-12 18:03:49,730.730 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:03:49,756.756 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 18:03:49,804.804 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 18:03:49,805.805 INFO    ] No camera update needed
[2026-06-12 18:03:49,807.807 INFO    ] Script finished. Safe exiting...
[2026-06-12 18:03:49,808.808 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 18:03:49,811.811 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 18:03:49,814.814 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 18:03:51,854.854 INFO    ] ================================================
[2026-06-12 18:03:51,869.869 INFO    ] Launching Daemon at Fri Jun 12 18:03:51 IST 2026
[2026-06-12 18:03:51,880.880 INFO    ] ================================================
[2026-06-12 18:03:52,242.242 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 18:03:52
[2026-06-12 18:03:52,555.555 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 18:03:52,693.693 INFO    ] Initializing speech engine...
[2026-06-12 18:03:52,702.702 INFO    ] 2026-06-12 18:03:52
[2026-06-12 18:03:52,909.909 INFO    ] 2026-06-12 18:03:52
[2026-06-12 18:03:52,939.939 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 18:03:53,126.126 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 18:03:53,130.130 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 18:03:53,264.264 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 18:03:53,317.317 INFO    ] time= 12/06/2026 18:03:53
[2026-06-12 18:03:53,362.362 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 18:03:53,363.363 INFO    ] Checking for existing commands in stream...
[2026-06-12 18:03:53,437.437 INFO    ] No existing commands found in stream
[2026-06-12 18:03:58,451.451 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 18:03:58,454.454 INFO    ] Waiting 0.11 seconds before fallback handling...
[2026-06-12 18:03:58,941.941 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 18:03:58,942.942 INFO    ] Checking for system updates...
[2026-06-12 18:03:58,963.963 INFO    ] 200
[2026-06-12 18:03:58,964.964 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:03:58,994.994 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 18:03:58,996.996 INFO    ] No update needed
[2026-06-12 18:03:58,997.997 INFO    ] Checking for camera pi updates...
[2026-06-12 18:03:59,018.018 INFO    ] 200
[2026-06-12 18:03:59,020.020 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:03:59,049.049 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 18:03:59,090.090 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 18:03:59,092.092 INFO    ] No camera update needed
[2026-06-12 18:03:59,093.093 INFO    ] Script finished. Safe exiting...
[2026-06-12 18:03:59,095.095 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 18:03:59,098.098 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 18:03:59,101.101 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 18:04:01,141.141 INFO    ] ================================================
[2026-06-12 18:04:01,157.157 INFO    ] Launching Daemon at Fri Jun 12 18:04:01 IST 2026
[2026-06-12 18:04:01,168.168 INFO    ] ================================================
[2026-06-12 18:04:01,533.533 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 18:04:01
[2026-06-12 18:04:01,926.926 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 18:04:02,256.256 INFO    ] Initializing speech engine...
[2026-06-12 18:04:02,265.265 INFO    ] 2026-06-12 18:04:02
[2026-06-12 18:04:02,529.529 INFO    ] 2026-06-12 18:04:02
[2026-06-12 18:04:02,553.553 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 18:04:02,720.720 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 18:04:02,725.725 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 18:04:02,855.855 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 18:04:02,902.902 INFO    ] time= 12/06/2026 18:04:02
[2026-06-12 18:04:02,940.940 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 18:04:02,963.963 INFO    ] Checking for existing commands in stream...
[2026-06-12 18:04:03,037.037 INFO    ] No existing commands found in stream
[2026-06-12 18:04:08,048.048 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 18:04:08,051.051 INFO    ] Waiting 0.46 seconds before fallback handling...
[2026-06-12 18:04:08,881.881 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 18:04:08,883.883 INFO    ] Checking for system updates...
[2026-06-12 18:04:08,904.904 INFO    ] 200
[2026-06-12 18:04:08,906.906 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:04:08,936.936 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 18:04:08,937.937 INFO    ] No update needed
[2026-06-12 18:04:08,938.938 INFO    ] Checking for camera pi updates...
[2026-06-12 18:04:08,959.959 INFO    ] 200
[2026-06-12 18:04:08,961.961 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:04:08,984.984 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 18:04:09,031.031 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 18:04:09,032.032 INFO    ] No camera update needed
[2026-06-12 18:04:09,033.033 INFO    ] Script finished. Safe exiting...
[2026-06-12 18:04:09,035.035 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 18:04:09,038.038 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 18:04:09,040.040 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 18:04:11,078.078 INFO    ] ================================================
[2026-06-12 18:04:11,094.094 INFO    ] Launching Daemon at Fri Jun 12 18:04:11 IST 2026
[2026-06-12 18:04:11,105.105 INFO    ] ================================================
[2026-06-12 18:04:11,474.474 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 18:04:11
[2026-06-12 18:04:11,786.786 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 18:04:11,924.924 INFO    ] Initializing speech engine...
[2026-06-12 18:04:11,934.934 INFO    ] 2026-06-12 18:04:11
[2026-06-12 18:04:12,139.139 INFO    ] 2026-06-12 18:04:12
[2026-06-12 18:04:12,169.169 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 18:04:12,355.355 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 18:04:12,359.359 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 18:04:12,490.490 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 18:04:12,551.551 INFO    ] time= 12/06/2026 18:04:12
[2026-06-12 18:04:12,582.582 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 18:04:12,592.592 INFO    ] Checking for existing commands in stream...
[2026-06-12 18:04:12,665.665 INFO    ] No existing commands found in stream
[2026-06-12 18:04:17,673.673 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 18:04:17,676.676 INFO    ] Waiting 1.43 seconds before fallback handling...
[2026-06-12 18:04:19,496.496 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 18:04:19,498.498 INFO    ] Checking for system updates...
[2026-06-12 18:04:19,519.519 INFO    ] 200
[2026-06-12 18:04:19,520.520 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:04:19,553.553 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 18:04:19,554.554 INFO    ] No update needed
[2026-06-12 18:04:19,556.556 INFO    ] Checking for camera pi updates...
[2026-06-12 18:04:19,576.576 INFO    ] 200
[2026-06-12 18:04:19,577.577 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:04:19,601.601 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 18:04:19,633.633 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 18:04:19,634.634 INFO    ] No camera update needed
[2026-06-12 18:04:19,636.636 INFO    ] Script finished. Safe exiting...
[2026-06-12 18:04:19,637.637 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 18:04:19,641.641 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 18:04:19,644.644 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 18:04:21,683.683 INFO    ] ================================================
[2026-06-12 18:04:21,699.699 INFO    ] Launching Daemon at Fri Jun 12 18:04:21 IST 2026
[2026-06-12 18:04:21,711.711 INFO    ] ================================================
[2026-06-12 18:04:22,058.058 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 18:04:22
[2026-06-12 18:04:22,378.378 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 18:04:22,521.521 INFO    ] Initializing speech engine...
[2026-06-12 18:04:22,525.525 INFO    ] 2026-06-12 18:04:22
[2026-06-12 18:04:22,732.732 INFO    ] 2026-06-12 18:04:22
[2026-06-12 18:04:22,761.761 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 18:04:22,885.885 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 18:04:22,949.949 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 18:04:23,088.088 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 18:04:23,156.156 INFO    ] time= 12/06/2026 18:04:23
[2026-06-12 18:04:23,180.180 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 18:04:23,186.186 INFO    ] Checking for existing commands in stream...
[2026-06-12 18:04:23,254.254 INFO    ] No existing commands found in stream
[2026-06-12 18:04:28,263.263 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 18:04:28,267.267 INFO    ] Waiting 3.87 seconds before fallback handling...
[2026-06-12 18:04:32,512.512 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 18:04:32,513.513 INFO    ] Checking for system updates...
[2026-06-12 18:04:32,535.535 INFO    ] 200
[2026-06-12 18:04:32,537.537 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:04:32,574.574 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 18:04:32,575.575 INFO    ] No update needed
[2026-06-12 18:04:32,577.577 INFO    ] Checking for camera pi updates...
[2026-06-12 18:04:32,602.602 INFO    ] 200
[2026-06-12 18:04:32,603.603 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:04:32,631.631 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 18:04:32,661.661 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 18:04:32,663.663 INFO    ] No camera update needed
[2026-06-12 18:04:32,664.664 INFO    ] Script finished. Safe exiting...
[2026-06-12 18:04:32,665.665 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 18:04:32,668.668 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 18:04:32,671.671 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 18:04:34,712.712 INFO    ] ================================================
[2026-06-12 18:04:34,727.727 INFO    ] Launching Daemon at Fri Jun 12 18:04:34 IST 2026
[2026-06-12 18:04:34,738.738 INFO    ] ================================================
[2026-06-12 18:04:35,069.069 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 18:04:35
[2026-06-12 18:04:35,382.382 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 18:04:35,512.512 INFO    ] Initializing speech engine...
[2026-06-12 18:04:35,520.520 INFO    ] 2026-06-12 18:04:35
[2026-06-12 18:04:35,731.731 INFO    ] 2026-06-12 18:04:35
[2026-06-12 18:04:35,760.760 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 18:04:35,943.943 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 18:04:35,947.947 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 18:04:36,078.078 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 18:04:36,130.130 INFO    ] time= 12/06/2026 18:04:36
[2026-06-12 18:04:36,172.172 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 18:04:36,174.174 INFO    ] Checking for existing commands in stream...
[2026-06-12 18:04:36,244.244 INFO    ] No existing commands found in stream
[2026-06-12 18:04:41,255.255 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 18:04:41,257.257 INFO    ] Waiting 1.47 seconds before fallback handling...
[2026-06-12 18:04:43,088.088 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 18:04:43,089.089 INFO    ] Checking for system updates...
[2026-06-12 18:04:43,110.110 INFO    ] 200
[2026-06-12 18:04:43,111.111 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:04:43,144.144 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 18:04:43,145.145 INFO    ] No update needed
[2026-06-12 18:04:43,147.147 INFO    ] Checking for camera pi updates...
[2026-06-12 18:04:43,166.166 INFO    ] 200
[2026-06-12 18:04:43,167.167 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:04:43,190.190 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 18:04:43,231.231 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 18:04:43,232.232 INFO    ] No camera update needed
[2026-06-12 18:04:43,234.234 INFO    ] Script finished. Safe exiting...
[2026-06-12 18:04:43,235.235 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 18:04:43,238.238 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 18:04:43,241.241 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 18:04:45,281.281 INFO    ] ================================================
[2026-06-12 18:04:45,297.297 INFO    ] Launching Daemon at Fri Jun 12 18:04:45 IST 2026
[2026-06-12 18:04:45,309.309 INFO    ] ================================================
[2026-06-12 18:04:45,681.681 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 18:04:45
[2026-06-12 18:04:46,005.005 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 18:04:46,136.136 INFO    ] Initializing speech engine...
[2026-06-12 18:04:46,145.145 INFO    ] 2026-06-12 18:04:46
[2026-06-12 18:04:46,362.362 INFO    ] 2026-06-12 18:04:46
[2026-06-12 18:04:46,392.392 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 18:04:46,578.578 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 18:04:46,582.582 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 18:04:46,714.714 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 18:04:46,775.775 INFO    ] time= 12/06/2026 18:04:46
[2026-06-12 18:04:46,811.811 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 18:04:46,816.816 INFO    ] Checking for existing commands in stream...
[2026-06-12 18:04:46,889.889 INFO    ] No existing commands found in stream
[2026-06-12 18:04:51,900.900 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 18:04:51,903.903 INFO    ] Waiting 3.30 seconds before fallback handling...
[2026-06-12 18:04:55,571.571 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 18:04:55,572.572 INFO    ] Checking for system updates...
[2026-06-12 18:04:55,593.593 INFO    ] 200
[2026-06-12 18:04:55,594.594 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:04:55,625.625 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 18:04:55,626.626 INFO    ] No update needed
[2026-06-12 18:04:55,628.628 INFO    ] Checking for camera pi updates...
[2026-06-12 18:04:55,647.647 INFO    ] 200
[2026-06-12 18:04:55,649.649 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:04:55,675.675 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 18:04:55,723.723 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 18:04:55,725.725 INFO    ] No camera update needed
[2026-06-12 18:04:55,726.726 INFO    ] Script finished. Safe exiting...
[2026-06-12 18:04:55,727.727 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 18:04:55,730.730 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 18:04:55,733.733 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 18:04:57,771.771 INFO    ] ================================================
[2026-06-12 18:04:57,787.787 INFO    ] Launching Daemon at Fri Jun 12 18:04:57 IST 2026
[2026-06-12 18:04:57,798.798 INFO    ] ================================================
[2026-06-12 18:04:58,148.148 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 18:04:58
[2026-06-12 18:04:58,466.466 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 18:04:58,610.610 INFO    ] Initializing speech engine...
[2026-06-12 18:04:58,615.615 INFO    ] 2026-06-12 18:04:58
[2026-06-12 18:04:58,821.821 INFO    ] 2026-06-12 18:04:58
[2026-06-12 18:04:58,850.850 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 18:04:58,977.977 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 18:04:59,035.035 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 18:04:59,164.164 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 18:04:59,220.220 INFO    ] time= 12/06/2026 18:04:59
[2026-06-12 18:04:59,250.250 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 18:04:59,261.261 INFO    ] Checking for existing commands in stream...
[2026-06-12 18:04:59,344.344 INFO    ] No existing commands found in stream
[2026-06-12 18:05:04,352.352 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 18:05:04,355.355 INFO    ] Waiting 3.96 seconds before fallback handling...
[2026-06-12 18:05:08,677.677 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 18:05:08,679.679 INFO    ] Checking for system updates...
[2026-06-12 18:05:08,699.699 INFO    ] 200
[2026-06-12 18:05:08,701.701 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:05:08,733.733 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 18:05:08,735.735 INFO    ] No update needed
[2026-06-12 18:05:08,736.736 INFO    ] Checking for camera pi updates...
[2026-06-12 18:05:08,760.760 INFO    ] 200
[2026-06-12 18:05:08,761.761 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:05:08,787.787 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 18:05:08,836.836 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 18:05:08,838.838 INFO    ] No camera update needed
[2026-06-12 18:05:08,839.839 INFO    ] Script finished. Safe exiting...
[2026-06-12 18:05:08,841.841 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 18:05:08,844.844 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 18:05:08,847.847 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 18:05:10,885.885 INFO    ] ================================================
[2026-06-12 18:05:10,900.900 INFO    ] Launching Daemon at Fri Jun 12 18:05:10 IST 2026
[2026-06-12 18:05:10,911.911 INFO    ] ================================================
[2026-06-12 18:05:11,258.258 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 18:05:11
[2026-06-12 18:05:11,596.596 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 18:05:11,748.748 INFO    ] Initializing speech engine...
[2026-06-12 18:05:11,753.753 INFO    ] 2026-06-12 18:05:11
[2026-06-12 18:05:11,963.963 INFO    ] 2026-06-12 18:05:11
[2026-06-12 18:05:11,993.993 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 18:05:12,182.182 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 18:05:12,192.192 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 18:05:12,338.338 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 18:05:12,393.393 INFO    ] time= 12/06/2026 18:05:12
[2026-06-12 18:05:12,416.416 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 18:05:12,422.422 INFO    ] Checking for existing commands in stream...
[2026-06-12 18:05:12,490.490 INFO    ] No existing commands found in stream
[2026-06-12 18:05:17,510.510 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 18:05:17,513.513 INFO    ] Waiting 2.70 seconds before fallback handling...
[2026-06-12 18:05:20,596.596 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 18:05:20,597.597 INFO    ] Checking for system updates...
[2026-06-12 18:05:20,619.619 INFO    ] 200
[2026-06-12 18:05:20,621.621 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:05:20,653.653 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 18:05:20,654.654 INFO    ] No update needed
[2026-06-12 18:05:20,655.655 INFO    ] Checking for camera pi updates...
[2026-06-12 18:05:20,676.676 INFO    ] 200
[2026-06-12 18:05:20,677.677 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:05:20,702.702 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 18:05:20,839.839 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 18:05:20,841.841 INFO    ] No camera update needed
[2026-06-12 18:05:20,842.842 INFO    ] Script finished. Safe exiting...
[2026-06-12 18:05:20,843.843 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 18:05:20,846.846 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 18:05:20,849.849 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 18:05:22,887.887 INFO    ] ================================================
[2026-06-12 18:05:22,903.903 INFO    ] Launching Daemon at Fri Jun 12 18:05:22 IST 2026
[2026-06-12 18:05:22,913.913 INFO    ] ================================================
[2026-06-12 18:05:23,240.240 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 18:05:23
[2026-06-12 18:05:23,557.557 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 18:05:23,691.691 INFO    ] Initializing speech engine...
[2026-06-12 18:05:23,695.695 INFO    ] 2026-06-12 18:05:23
[2026-06-12 18:05:23,912.912 INFO    ] 2026-06-12 18:05:23
[2026-06-12 18:05:23,940.940 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 18:05:24,093.093 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 18:05:24,160.160 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 18:05:24,304.304 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 18:05:24,345.345 INFO    ] time= 12/06/2026 18:05:24
[2026-06-12 18:05:24,390.390 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 18:05:24,413.413 INFO    ] Checking for existing commands in stream...
[2026-06-12 18:05:24,491.491 INFO    ] No existing commands found in stream
[2026-06-12 18:05:29,500.500 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 18:05:29,503.503 INFO    ] Waiting 2.42 seconds before fallback handling...
[2026-06-12 18:05:32,269.269 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 18:05:32,271.271 INFO    ] Checking for system updates...
[2026-06-12 18:05:32,311.311 INFO    ] 200
[2026-06-12 18:05:32,314.314 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:05:32,373.373 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 18:05:32,376.376 INFO    ] No update needed
[2026-06-12 18:05:32,378.378 INFO    ] Checking for camera pi updates...
[2026-06-12 18:05:32,415.415 INFO    ] 200
[2026-06-12 18:05:32,416.416 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:05:32,441.441 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 18:05:32,485.485 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 18:05:32,486.486 INFO    ] No camera update needed
[2026-06-12 18:05:32,488.488 INFO    ] Script finished. Safe exiting...
[2026-06-12 18:05:32,489.489 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 18:05:32,492.492 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 18:05:32,495.495 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 18:05:34,532.532 INFO    ] ================================================
[2026-06-12 18:05:34,547.547 INFO    ] Launching Daemon at Fri Jun 12 18:05:34 IST 2026
[2026-06-12 18:05:34,559.559 INFO    ] ================================================
[2026-06-12 18:05:34,931.931 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 18:05:34
[2026-06-12 18:05:35,248.248 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 18:05:35,391.391 INFO    ] Initializing speech engine...
[2026-06-12 18:05:35,396.396 INFO    ] 2026-06-12 18:05:35
[2026-06-12 18:05:35,598.598 INFO    ] 2026-06-12 18:05:35
[2026-06-12 18:05:35,627.627 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 18:05:35,811.811 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 18:05:35,821.821 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 18:05:35,966.966 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 18:05:36,019.019 INFO    ] time= 12/06/2026 18:05:35
[2026-06-12 18:05:36,041.041 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 18:05:36,047.047 INFO    ] Checking for existing commands in stream...
[2026-06-12 18:05:36,114.114 INFO    ] No existing commands found in stream
[2026-06-12 18:05:41,128.128 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 18:05:41,131.131 INFO    ] Waiting 3.40 seconds before fallback handling...
[2026-06-12 18:05:44,902.902 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 18:05:44,904.904 INFO    ] Checking for system updates...
[2026-06-12 18:05:44,925.925 INFO    ] 200
[2026-06-12 18:05:44,926.926 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:05:44,958.958 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 18:05:44,960.960 INFO    ] No update needed
[2026-06-12 18:05:44,961.961 INFO    ] Checking for camera pi updates...
[2026-06-12 18:05:44,980.980 INFO    ] 200
[2026-06-12 18:05:44,982.982 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:05:45,006.006 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 18:05:45,059.059 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 18:05:45,060.060 INFO    ] No camera update needed
[2026-06-12 18:05:45,062.062 INFO    ] Script finished. Safe exiting...
[2026-06-12 18:05:45,063.063 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 18:05:45,066.066 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 18:05:45,069.069 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 18:05:47,107.107 INFO    ] ================================================
[2026-06-12 18:05:47,123.123 INFO    ] Launching Daemon at Fri Jun 12 18:05:47 IST 2026
[2026-06-12 18:05:47,134.134 INFO    ] ================================================
[2026-06-12 18:05:47,504.504 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 18:05:47
[2026-06-12 18:05:47,821.821 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 18:05:47,965.965 INFO    ] Initializing speech engine...
[2026-06-12 18:05:47,970.970 INFO    ] 2026-06-12 18:05:47
[2026-06-12 18:05:48,174.174 INFO    ] 2026-06-12 18:05:48
[2026-06-12 18:05:48,202.202 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 18:05:48,387.387 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 18:05:48,395.395 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 18:05:48,529.529 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 18:05:48,592.592 INFO    ] time= 12/06/2026 18:05:48
[2026-06-12 18:05:48,615.615 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 18:05:48,621.621 INFO    ] Checking for existing commands in stream...
[2026-06-12 18:05:48,686.686 INFO    ] No existing commands found in stream
[2026-06-12 18:05:53,696.696 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 18:05:53,699.699 INFO    ] Waiting 3.35 seconds before fallback handling...
[2026-06-12 18:05:57,443.443 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 18:05:57,445.445 INFO    ] Checking for system updates...
[2026-06-12 18:05:57,466.466 INFO    ] 200
[2026-06-12 18:05:57,468.468 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:05:57,500.500 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 18:05:57,502.502 INFO    ] No update needed
[2026-06-12 18:05:57,503.503 INFO    ] Checking for camera pi updates...
[2026-06-12 18:05:57,523.523 INFO    ] 200
[2026-06-12 18:05:57,524.524 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:05:57,551.551 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 18:05:57,596.596 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 18:05:57,598.598 INFO    ] No camera update needed
[2026-06-12 18:05:57,599.599 INFO    ] Script finished. Safe exiting...
[2026-06-12 18:05:57,600.600 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 18:05:57,603.603 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 18:05:57,606.606 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 18:05:59,647.647 INFO    ] ================================================
[2026-06-12 18:05:59,663.663 INFO    ] Launching Daemon at Fri Jun 12 18:05:59 IST 2026
[2026-06-12 18:05:59,674.674 INFO    ] ================================================
[2026-06-12 18:06:00,003.003 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 18:06:00
[2026-06-12 18:06:00,316.316 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 18:06:00,452.452 INFO    ] Initializing speech engine...
[2026-06-12 18:06:00,462.462 INFO    ] 2026-06-12 18:06:00
[2026-06-12 18:06:00,666.666 INFO    ] 2026-06-12 18:06:00
[2026-06-12 18:06:00,695.695 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 18:06:00,880.880 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 18:06:00,888.888 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 18:06:01,017.017 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 18:06:01,081.081 INFO    ] time= 12/06/2026 18:06:01
[2026-06-12 18:06:01,107.107 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 18:06:01,114.114 INFO    ] Checking for existing commands in stream...
[2026-06-12 18:06:01,181.181 INFO    ] No existing commands found in stream
[2026-06-12 18:06:06,190.190 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 18:06:06,192.192 INFO    ] Waiting 2.74 seconds before fallback handling...
[2026-06-12 18:06:09,325.325 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 18:06:09,327.327 INFO    ] Checking for system updates...
[2026-06-12 18:06:09,349.349 INFO    ] 200
[2026-06-12 18:06:09,350.350 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:06:09,382.382 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 18:06:09,384.384 INFO    ] No update needed
[2026-06-12 18:06:09,385.385 INFO    ] Checking for camera pi updates...
[2026-06-12 18:06:09,404.404 INFO    ] 200
[2026-06-12 18:06:09,406.406 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:06:09,428.428 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 18:06:09,475.475 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 18:06:09,477.477 INFO    ] No camera update needed
[2026-06-12 18:06:09,478.478 INFO    ] Script finished. Safe exiting...
[2026-06-12 18:06:09,479.479 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 18:06:09,482.482 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 18:06:09,485.485 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 18:06:11,527.527 INFO    ] ================================================
[2026-06-12 18:06:11,542.542 INFO    ] Launching Daemon at Fri Jun 12 18:06:11 IST 2026
[2026-06-12 18:06:11,554.554 INFO    ] ================================================
[2026-06-12 18:06:11,891.891 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 18:06:11
[2026-06-12 18:06:12,204.204 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 18:06:12,333.333 INFO    ] Initializing speech engine...
[2026-06-12 18:06:12,338.338 INFO    ] 2026-06-12 18:06:12
[2026-06-12 18:06:12,555.555 INFO    ] 2026-06-12 18:06:12
[2026-06-12 18:06:12,583.583 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 18:06:12,768.768 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 18:06:12,776.776 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 18:06:12,906.906 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 18:06:12,973.973 INFO    ] time= 12/06/2026 18:06:12
[2026-06-12 18:06:12,997.997 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 18:06:13,004.004 INFO    ] Checking for existing commands in stream...
[2026-06-12 18:06:13,070.070 INFO    ] No existing commands found in stream
[2026-06-12 18:06:18,080.080 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 18:06:18,082.082 INFO    ] Waiting 0.59 seconds before fallback handling...
[2026-06-12 18:06:19,043.043 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 18:06:19,045.045 INFO    ] Checking for system updates...
[2026-06-12 18:06:19,067.067 INFO    ] 200
[2026-06-12 18:06:19,069.069 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:06:19,101.101 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 18:06:19,102.102 INFO    ] No update needed
[2026-06-12 18:06:19,103.103 INFO    ] Checking for camera pi updates...
[2026-06-12 18:06:19,124.124 INFO    ] 200
[2026-06-12 18:06:19,125.125 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:06:19,149.149 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 18:06:19,198.198 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 18:06:19,199.199 INFO    ] No camera update needed
[2026-06-12 18:06:19,201.201 INFO    ] Script finished. Safe exiting...
[2026-06-12 18:06:19,202.202 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 18:06:19,205.205 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 18:06:19,207.207 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 18:06:21,250.250 INFO    ] ================================================
[2026-06-12 18:06:21,266.266 INFO    ] Launching Daemon at Fri Jun 12 18:06:21 IST 2026
[2026-06-12 18:06:21,278.278 INFO    ] ================================================
[2026-06-12 18:06:21,663.663 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 18:06:21
[2026-06-12 18:06:22,002.002 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 18:06:22,154.154 INFO    ] Initializing speech engine...
[2026-06-12 18:06:22,160.160 INFO    ] 2026-06-12 18:06:22
[2026-06-12 18:06:22,366.366 INFO    ] 2026-06-12 18:06:22
[2026-06-12 18:06:22,395.395 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 18:06:22,579.579 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 18:06:22,589.589 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 18:06:22,716.716 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 18:06:22,783.783 INFO    ] time= 12/06/2026 18:06:22
[2026-06-12 18:06:22,807.807 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 18:06:22,814.814 INFO    ] Checking for existing commands in stream...
[2026-06-12 18:06:22,881.881 INFO    ] No existing commands found in stream
[2026-06-12 18:06:27,891.891 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 18:06:27,894.894 INFO    ] Waiting 2.88 seconds before fallback handling...
[2026-06-12 18:06:31,188.188 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 18:06:31,189.189 INFO    ] Checking for system updates...
[2026-06-12 18:06:31,212.212 INFO    ] 200
[2026-06-12 18:06:31,213.213 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:06:31,246.246 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 18:06:31,247.247 INFO    ] No update needed
[2026-06-12 18:06:31,249.249 INFO    ] Checking for camera pi updates...
[2026-06-12 18:06:31,274.274 INFO    ] 200
[2026-06-12 18:06:31,276.276 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:06:31,306.306 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 18:06:31,346.346 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 18:06:31,348.348 INFO    ] No camera update needed
[2026-06-12 18:06:31,350.350 INFO    ] Script finished. Safe exiting...
[2026-06-12 18:06:31,351.351 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 18:06:31,355.355 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 18:06:31,359.359 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 18:06:33,392.392 INFO    ] ================================================
[2026-06-12 18:06:33,408.408 INFO    ] Launching Daemon at Fri Jun 12 18:06:33 IST 2026
[2026-06-12 18:06:33,419.419 INFO    ] ================================================
[2026-06-12 18:06:33,785.785 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 18:06:33
[2026-06-12 18:06:34,105.105 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 18:06:34,249.249 INFO    ] Initializing speech engine...
[2026-06-12 18:06:34,255.255 INFO    ] 2026-06-12 18:06:34
[2026-06-12 18:06:34,459.459 INFO    ] 2026-06-12 18:06:34
[2026-06-12 18:06:34,488.488 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 18:06:34,671.671 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 18:06:34,674.674 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 18:06:34,810.810 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 18:06:34,874.874 INFO    ] time= 12/06/2026 18:06:34
[2026-06-12 18:06:34,902.902 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 18:06:34,908.908 INFO    ] Checking for existing commands in stream...
[2026-06-12 18:06:34,975.975 INFO    ] No existing commands found in stream
[2026-06-12 18:06:39,984.984 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 18:06:39,986.986 INFO    ] Waiting 0.85 seconds before fallback handling...
[2026-06-12 18:06:41,198.198 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 18:06:41,200.200 INFO    ] Checking for system updates...
[2026-06-12 18:06:41,221.221 INFO    ] 200
[2026-06-12 18:06:41,222.222 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:06:41,254.254 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 18:06:41,255.255 INFO    ] No update needed
[2026-06-12 18:06:41,256.256 INFO    ] Checking for camera pi updates...
[2026-06-12 18:06:41,277.277 INFO    ] 200
[2026-06-12 18:06:41,279.279 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:06:41,303.303 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 18:06:41,345.345 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 18:06:41,346.346 INFO    ] No camera update needed
[2026-06-12 18:06:41,348.348 INFO    ] Script finished. Safe exiting...
[2026-06-12 18:06:41,349.349 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 18:06:41,352.352 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 18:06:41,355.355 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 18:06:43,393.393 INFO    ] ================================================
[2026-06-12 18:06:43,410.410 INFO    ] Launching Daemon at Fri Jun 12 18:06:43 IST 2026
[2026-06-12 18:06:43,421.421 INFO    ] ================================================
[2026-06-12 18:06:43,770.770 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 18:06:43
[2026-06-12 18:06:44,113.113 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 18:06:44,264.264 INFO    ] Initializing speech engine...
[2026-06-12 18:06:44,270.270 INFO    ] 2026-06-12 18:06:44
[2026-06-12 18:06:44,478.478 INFO    ] 2026-06-12 18:06:44
[2026-06-12 18:06:44,507.507 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 18:06:44,692.692 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 18:06:44,702.702 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 18:06:44,853.853 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 18:06:44,901.901 INFO    ] time= 12/06/2026 18:06:44
[2026-06-12 18:06:44,923.923 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 18:06:44,929.929 INFO    ] Checking for existing commands in stream...
[2026-06-12 18:06:44,996.996 INFO    ] No existing commands found in stream
[2026-06-12 18:06:50,011.011 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 18:06:50,014.014 INFO    ] Waiting 2.25 seconds before fallback handling...
[2026-06-12 18:06:52,647.647 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 18:06:52,649.649 INFO    ] Checking for system updates...
[2026-06-12 18:06:52,670.670 INFO    ] 200
[2026-06-12 18:06:52,672.672 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:06:52,704.704 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 18:06:52,706.706 INFO    ] No update needed
[2026-06-12 18:06:52,707.707 INFO    ] Checking for camera pi updates...
[2026-06-12 18:06:52,730.730 INFO    ] 200
[2026-06-12 18:06:52,731.731 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:06:52,756.756 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 18:06:52,802.802 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 18:06:52,803.803 INFO    ] No camera update needed
[2026-06-12 18:06:52,804.804 INFO    ] Script finished. Safe exiting...
[2026-06-12 18:06:52,806.806 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 18:06:52,809.809 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 18:06:52,812.812 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 18:06:54,851.851 INFO    ] ================================================
[2026-06-12 18:06:54,867.867 INFO    ] Launching Daemon at Fri Jun 12 18:06:54 IST 2026
[2026-06-12 18:06:54,879.879 INFO    ] ================================================
[2026-06-12 18:06:55,238.238 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 18:06:55
[2026-06-12 18:06:55,580.580 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 18:06:55,732.732 INFO    ] Initializing speech engine...
[2026-06-12 18:06:55,737.737 INFO    ] 2026-06-12 18:06:55
[2026-06-12 18:06:55,948.948 INFO    ] 2026-06-12 18:06:55
[2026-06-12 18:06:55,978.978 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 18:06:56,130.130 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 18:06:56,167.167 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 18:06:56,304.304 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 18:06:56,364.364 INFO    ] time= 12/06/2026 18:06:56
[2026-06-12 18:06:56,399.399 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 18:06:56,439.439 INFO    ] Checking for existing commands in stream...
[2026-06-12 18:06:56,520.520 INFO    ] No existing commands found in stream
[2026-06-12 18:07:01,534.534 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 18:07:01,538.538 INFO    ] Waiting 0.68 seconds before fallback handling...
[2026-06-12 18:07:02,603.603 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 18:07:02,605.605 INFO    ] Checking for system updates...
[2026-06-12 18:07:02,629.629 INFO    ] 200
[2026-06-12 18:07:02,631.631 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:07:02,666.666 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 18:07:02,667.667 INFO    ] No update needed
[2026-06-12 18:07:02,669.669 INFO    ] Checking for camera pi updates...
[2026-06-12 18:07:02,688.688 INFO    ] 200
[2026-06-12 18:07:02,689.689 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:07:02,714.714 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 18:07:02,746.746 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 18:07:02,747.747 INFO    ] No camera update needed
[2026-06-12 18:07:02,749.749 INFO    ] Script finished. Safe exiting...
[2026-06-12 18:07:02,750.750 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 18:07:02,753.753 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 18:07:02,756.756 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 18:07:04,794.794 INFO    ] ================================================
[2026-06-12 18:07:04,809.809 INFO    ] Launching Daemon at Fri Jun 12 18:07:04 IST 2026
[2026-06-12 18:07:04,820.820 INFO    ] ================================================
[2026-06-12 18:07:05,175.175 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 18:07:05
[2026-06-12 18:07:05,491.491 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 18:07:05,623.623 INFO    ] Initializing speech engine...
[2026-06-12 18:07:05,631.631 INFO    ] 2026-06-12 18:07:05
[2026-06-12 18:07:05,822.822 INFO    ] 2026-06-12 18:07:05
[2026-06-12 18:07:05,865.865 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 18:07:06,078.078 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 18:07:06,081.081 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 18:07:06,193.193 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 18:07:06,216.216 INFO    ] time= 12/06/2026 18:07:06
[2026-06-12 18:07:06,261.261 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 18:07:06,284.284 INFO    ] Checking for existing commands in stream...
[2026-06-12 18:07:06,386.386 INFO    ] No existing commands found in stream
[2026-06-12 18:07:11,396.396 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 18:07:11,399.399 INFO    ] Waiting 0.50 seconds before fallback handling...
[2026-06-12 18:07:12,268.268 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 18:07:12,270.270 INFO    ] Checking for system updates...
[2026-06-12 18:07:12,290.290 INFO    ] 200
[2026-06-12 18:07:12,291.291 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:07:12,324.324 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 18:07:12,325.325 INFO    ] No update needed
[2026-06-12 18:07:12,326.326 INFO    ] Checking for camera pi updates...
[2026-06-12 18:07:12,346.346 INFO    ] 200
[2026-06-12 18:07:12,348.348 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:07:12,371.371 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 18:07:12,415.415 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 18:07:12,417.417 INFO    ] No camera update needed
[2026-06-12 18:07:12,418.418 INFO    ] Script finished. Safe exiting...
[2026-06-12 18:07:12,419.419 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 18:07:12,422.422 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 18:07:12,425.425 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 18:07:14,462.462 INFO    ] ================================================
[2026-06-12 18:07:14,478.478 INFO    ] Launching Daemon at Fri Jun 12 18:07:14 IST 2026
[2026-06-12 18:07:14,490.490 INFO    ] ================================================
[2026-06-12 18:07:14,861.861 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 18:07:14
[2026-06-12 18:07:15,204.204 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 18:07:15,355.355 INFO    ] Initializing speech engine...
[2026-06-12 18:07:15,359.359 INFO    ] 2026-06-12 18:07:15
[2026-06-12 18:07:15,567.567 INFO    ] 2026-06-12 18:07:15
[2026-06-12 18:07:15,597.597 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 18:07:15,782.782 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 18:07:15,790.790 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 18:07:15,945.945 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 18:07:15,988.988 INFO    ] time= 12/06/2026 18:07:15
[2026-06-12 18:07:16,010.010 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 18:07:16,016.016 INFO    ] Checking for existing commands in stream...
[2026-06-12 18:07:16,083.083 INFO    ] No existing commands found in stream
[2026-06-12 18:07:21,107.107 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 18:07:21,111.111 INFO    ] Waiting 2.84 seconds before fallback handling...
[2026-06-12 18:07:24,322.322 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 18:07:24,323.323 INFO    ] Checking for system updates...
[2026-06-12 18:07:24,346.346 INFO    ] 200
[2026-06-12 18:07:24,347.347 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:07:24,378.378 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 18:07:24,379.379 INFO    ] No update needed
[2026-06-12 18:07:24,380.380 INFO    ] Checking for camera pi updates...
[2026-06-12 18:07:24,402.402 INFO    ] 200
[2026-06-12 18:07:24,404.404 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:07:24,427.427 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 18:07:24,575.575 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 18:07:24,576.576 INFO    ] No camera update needed
[2026-06-12 18:07:24,577.577 INFO    ] Script finished. Safe exiting...
[2026-06-12 18:07:24,579.579 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 18:07:24,582.582 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 18:07:24,585.585 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 18:07:26,623.623 INFO    ] ================================================
[2026-06-12 18:07:26,638.638 INFO    ] Launching Daemon at Fri Jun 12 18:07:26 IST 2026
[2026-06-12 18:07:26,650.650 INFO    ] ================================================
[2026-06-12 18:07:27,009.009 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 18:07:27
[2026-06-12 18:07:27,320.320 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 18:07:27,462.462 INFO    ] Initializing speech engine...
[2026-06-12 18:07:27,467.467 INFO    ] 2026-06-12 18:07:27
[2026-06-12 18:07:27,672.672 INFO    ] 2026-06-12 18:07:27
[2026-06-12 18:07:27,700.700 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 18:07:27,821.821 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 18:07:27,859.859 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 18:07:28,022.022 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 18:07:28,087.087 INFO    ] time= 12/06/2026 18:07:28
[2026-06-12 18:07:28,113.113 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 18:07:28,119.119 INFO    ] Checking for existing commands in stream...
[2026-06-12 18:07:28,184.184 INFO    ] No existing commands found in stream
[2026-06-12 18:07:33,195.195 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 18:07:33,198.198 INFO    ] Waiting 2.52 seconds before fallback handling...
[2026-06-12 18:07:36,010.010 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 18:07:36,012.012 INFO    ] Checking for system updates...
[2026-06-12 18:07:36,032.032 INFO    ] 200
[2026-06-12 18:07:36,033.033 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:07:36,063.063 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 18:07:36,064.064 INFO    ] No update needed
[2026-06-12 18:07:36,066.066 INFO    ] Checking for camera pi updates...
[2026-06-12 18:07:36,086.086 INFO    ] 200
[2026-06-12 18:07:36,087.087 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:07:36,110.110 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 18:07:36,152.152 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 18:07:36,153.153 INFO    ] No camera update needed
[2026-06-12 18:07:36,155.155 INFO    ] Script finished. Safe exiting...
[2026-06-12 18:07:36,156.156 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 18:07:36,159.159 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 18:07:36,162.162 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 18:07:38,202.202 INFO    ] ================================================
[2026-06-12 18:07:38,220.220 INFO    ] Launching Daemon at Fri Jun 12 18:07:38 IST 2026
[2026-06-12 18:07:38,231.231 INFO    ] ================================================
[2026-06-12 18:07:38,579.579 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 18:07:38
[2026-06-12 18:07:38,920.920 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 18:07:39,073.073 INFO    ] Initializing speech engine...
[2026-06-12 18:07:39,077.077 INFO    ] 2026-06-12 18:07:39
[2026-06-12 18:07:39,283.283 INFO    ] 2026-06-12 18:07:39
[2026-06-12 18:07:39,312.312 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 18:07:39,495.495 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 18:07:39,498.498 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 18:07:39,650.650 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 18:07:39,701.701 INFO    ] time= 12/06/2026 18:07:39
[2026-06-12 18:07:39,724.724 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 18:07:39,731.731 INFO    ] Checking for existing commands in stream...
[2026-06-12 18:07:39,821.821 INFO    ] No existing commands found in stream
[2026-06-12 18:07:44,836.836 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 18:07:44,839.839 INFO    ] Waiting 2.01 seconds before fallback handling...
[2026-06-12 18:07:47,276.276 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 18:07:47,277.277 INFO    ] Checking for system updates...
[2026-06-12 18:07:47,300.300 INFO    ] 200
[2026-06-12 18:07:47,302.302 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:07:47,334.334 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 18:07:47,336.336 INFO    ] No update needed
[2026-06-12 18:07:47,337.337 INFO    ] Checking for camera pi updates...
[2026-06-12 18:07:47,360.360 INFO    ] 200
[2026-06-12 18:07:47,361.361 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:07:47,385.385 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 18:07:47,429.429 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 18:07:47,431.431 INFO    ] No camera update needed
[2026-06-12 18:07:47,432.432 INFO    ] Script finished. Safe exiting...
[2026-06-12 18:07:47,434.434 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 18:07:47,437.437 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 18:07:47,440.440 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 18:07:49,477.477 INFO    ] ================================================
[2026-06-12 18:07:49,493.493 INFO    ] Launching Daemon at Fri Jun 12 18:07:49 IST 2026
[2026-06-12 18:07:49,504.504 INFO    ] ================================================
[2026-06-12 18:07:49,826.826 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 18:07:49
[2026-06-12 18:07:50,138.138 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 18:07:50,282.282 INFO    ] Initializing speech engine...
[2026-06-12 18:07:50,287.287 INFO    ] 2026-06-12 18:07:50
[2026-06-12 18:07:50,491.491 INFO    ] 2026-06-12 18:07:50
[2026-06-12 18:07:50,520.520 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 18:07:50,709.709 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 18:07:50,718.718 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 18:07:50,850.850 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 18:07:50,917.917 INFO    ] time= 12/06/2026 18:07:50
[2026-06-12 18:07:50,942.942 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 18:07:50,948.948 INFO    ] Checking for existing commands in stream...
[2026-06-12 18:07:51,013.013 INFO    ] No existing commands found in stream
[2026-06-12 18:07:56,024.024 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 18:07:56,027.027 INFO    ] Waiting 0.39 seconds before fallback handling...
[2026-06-12 18:07:56,794.794 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 18:07:56,796.796 INFO    ] Checking for system updates...
[2026-06-12 18:07:56,817.817 INFO    ] 200
[2026-06-12 18:07:56,818.818 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:07:56,852.852 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 18:07:56,854.854 INFO    ] No update needed
[2026-06-12 18:07:56,855.855 INFO    ] Checking for camera pi updates...
[2026-06-12 18:07:56,874.874 INFO    ] 200
[2026-06-12 18:07:56,876.876 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:07:56,901.901 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 18:07:56,947.947 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 18:07:56,949.949 INFO    ] No camera update needed
[2026-06-12 18:07:56,950.950 INFO    ] Script finished. Safe exiting...
[2026-06-12 18:07:56,952.952 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 18:07:56,955.955 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 18:07:56,957.957 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 18:07:59,995.995 INFO    ] ================================================
[2026-06-12 18:07:59,010.010 INFO    ] Launching Daemon at Fri Jun 12 18:07:59 IST 2026
[2026-06-12 18:07:59,021.021 INFO    ] ================================================
[2026-06-12 18:07:59,416.416 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 18:07:59
[2026-06-12 18:07:59,757.757 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 18:07:59,911.911 INFO    ] Initializing speech engine...
[2026-06-12 18:07:59,916.916 INFO    ] 2026-06-12 18:07:59
[2026-06-12 18:08:00,132.132 INFO    ] 2026-06-12 18:08:00
[2026-06-12 18:08:00,160.160 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 18:08:00,282.282 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 18:08:00,283.283 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 18:08:00,391.391 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 18:08:00,416.416 INFO    ] time= 12/06/2026 18:08:00
[2026-06-12 18:08:00,446.446 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 18:08:00,494.494 INFO    ] Checking for existing commands in stream...
[2026-06-12 18:08:00,592.592 INFO    ] No existing commands found in stream
[2026-06-12 18:08:05,613.613 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 18:08:05,616.616 INFO    ] Waiting 0.95 seconds before fallback handling...
[2026-06-12 18:08:06,915.915 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 18:08:06,917.917 INFO    ] Checking for system updates...
[2026-06-12 18:08:06,937.937 INFO    ] 200
[2026-06-12 18:08:06,938.938 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:08:06,968.968 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 18:08:06,969.969 INFO    ] No update needed
[2026-06-12 18:08:06,971.971 INFO    ] Checking for camera pi updates...
[2026-06-12 18:08:06,990.990 INFO    ] 200
[2026-06-12 18:08:06,991.991 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:08:07,015.015 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 18:08:07,055.055 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 18:08:07,056.056 INFO    ] No camera update needed
[2026-06-12 18:08:07,057.057 INFO    ] Script finished. Safe exiting...
[2026-06-12 18:08:07,059.059 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 18:08:07,062.062 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 18:08:07,064.064 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 18:08:09,102.102 INFO    ] ================================================
[2026-06-12 18:08:09,118.118 INFO    ] Launching Daemon at Fri Jun 12 18:08:09 IST 2026
[2026-06-12 18:08:09,129.129 INFO    ] ================================================
[2026-06-12 18:08:09,467.467 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 18:08:09
[2026-06-12 18:08:09,800.800 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 18:08:09,940.940 INFO    ] Initializing speech engine...
[2026-06-12 18:08:09,953.953 INFO    ] 2026-06-12 18:08:09
[2026-06-12 18:08:10,164.164 INFO    ] 2026-06-12 18:08:10
[2026-06-12 18:08:10,192.192 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 18:08:10,376.376 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 18:08:10,384.384 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 18:08:10,530.530 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 18:08:10,582.582 INFO    ] time= 12/06/2026 18:08:10
[2026-06-12 18:08:10,604.604 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 18:08:10,611.611 INFO    ] Checking for existing commands in stream...
[2026-06-12 18:08:10,678.678 INFO    ] No existing commands found in stream
[2026-06-12 18:08:15,687.687 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 18:08:15,690.690 INFO    ] Waiting 2.45 seconds before fallback handling...
[2026-06-12 18:08:18,495.495 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 18:08:18,496.496 INFO    ] Checking for system updates...
[2026-06-12 18:08:18,517.517 INFO    ] 200
[2026-06-12 18:08:18,518.518 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:08:18,550.550 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 18:08:18,551.551 INFO    ] No update needed
[2026-06-12 18:08:18,553.553 INFO    ] Checking for camera pi updates...
[2026-06-12 18:08:18,572.572 INFO    ] 200
[2026-06-12 18:08:18,573.573 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:08:18,597.597 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 18:08:18,641.641 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 18:08:18,642.642 INFO    ] No camera update needed
[2026-06-12 18:08:18,643.643 INFO    ] Script finished. Safe exiting...
[2026-06-12 18:08:18,645.645 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 18:08:18,648.648 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 18:08:18,651.651 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 18:08:20,681.681 INFO    ] ================================================
[2026-06-12 18:08:20,697.697 INFO    ] Launching Daemon at Fri Jun 12 18:08:20 IST 2026
[2026-06-12 18:08:20,708.708 INFO    ] ================================================
[2026-06-12 18:08:21,073.073 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 18:08:21
[2026-06-12 18:08:21,384.384 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 18:08:21,512.512 INFO    ] Initializing speech engine...
[2026-06-12 18:08:21,517.517 INFO    ] 2026-06-12 18:08:21
[2026-06-12 18:08:21,732.732 INFO    ] 2026-06-12 18:08:21
[2026-06-12 18:08:21,761.761 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 18:08:21,944.944 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 18:08:21,952.952 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 18:08:22,092.092 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 18:08:22,149.149 INFO    ] time= 12/06/2026 18:08:22
[2026-06-12 18:08:22,172.172 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 18:08:22,178.178 INFO    ] Checking for existing commands in stream...
[2026-06-12 18:08:22,244.244 INFO    ] No existing commands found in stream
[2026-06-12 18:08:27,258.258 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 18:08:27,261.261 INFO    ] Waiting 2.78 seconds before fallback handling...
[2026-06-12 18:08:30,392.392 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 18:08:30,394.394 INFO    ] Checking for system updates...
[2026-06-12 18:08:30,414.414 INFO    ] 200
[2026-06-12 18:08:30,415.415 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:08:30,445.445 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 18:08:30,446.446 INFO    ] No update needed
[2026-06-12 18:08:30,448.448 INFO    ] Checking for camera pi updates...
[2026-06-12 18:08:30,467.467 INFO    ] 200
[2026-06-12 18:08:30,468.468 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:08:30,491.491 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 18:08:30,541.541 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 18:08:30,542.542 INFO    ] No camera update needed
[2026-06-12 18:08:30,543.543 INFO    ] Script finished. Safe exiting...
[2026-06-12 18:08:30,545.545 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 18:08:30,548.548 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 18:08:30,550.550 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 18:08:32,581.581 INFO    ] ================================================
[2026-06-12 18:08:32,590.590 INFO    ] Launching Daemon at Fri Jun 12 18:08:32 IST 2026
[2026-06-12 18:08:32,596.596 INFO    ] ================================================
[2026-06-12 18:08:32,960.960 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 18:08:32
[2026-06-12 18:08:33,276.276 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 18:08:33,420.420 INFO    ] Initializing speech engine...
[2026-06-12 18:08:33,424.424 INFO    ] 2026-06-12 18:08:33
[2026-06-12 18:08:33,628.628 INFO    ] 2026-06-12 18:08:33
[2026-06-12 18:08:33,657.657 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 18:08:33,840.840 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 18:08:33,843.843 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 18:08:37,139.139 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 18:08:37,142.142 INFO    ] time= 12/06/2026 18:08:37
[2026-06-12 18:08:37,145.145 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 18:08:37,147.147 INFO    ] Checking for existing commands in stream...
[2026-06-12 18:08:37,217.217 INFO    ] No existing commands found in stream
[2026-06-12 18:08:42,227.227 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 18:08:42,230.230 INFO    ] Waiting 3.83 seconds before fallback handling...
[2026-06-12 18:08:46,446.446 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 18:08:46,447.447 INFO    ] Checking for system updates...
[2026-06-12 18:08:46,468.468 INFO    ] 200
[2026-06-12 18:08:46,469.469 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:08:46,499.499 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 18:08:46,501.501 INFO    ] No update needed
[2026-06-12 18:08:46,502.502 INFO    ] Checking for camera pi updates...
[2026-06-12 18:08:46,522.522 INFO    ] 200
[2026-06-12 18:08:46,523.523 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:08:46,546.546 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 18:08:46,590.590 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 18:08:46,591.591 INFO    ] No camera update needed
[2026-06-12 18:08:46,593.593 INFO    ] Script finished. Safe exiting...
[2026-06-12 18:08:46,594.594 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 18:08:46,597.597 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 18:08:46,599.599 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 18:08:48,637.637 INFO    ] ================================================
[2026-06-12 18:08:48,652.652 INFO    ] Launching Daemon at Fri Jun 12 18:08:48 IST 2026
[2026-06-12 18:08:48,663.663 INFO    ] ================================================
[2026-06-12 18:08:49,001.001 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 18:08:48
[2026-06-12 18:08:49,313.313 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 18:08:49,455.455 INFO    ] Initializing speech engine...
[2026-06-12 18:08:49,460.460 INFO    ] 2026-06-12 18:08:49
[2026-06-12 18:08:49,666.666 INFO    ] 2026-06-12 18:08:49
[2026-06-12 18:08:49,695.695 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 18:08:49,880.880 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 18:08:49,884.884 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 18:08:50,013.013 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 18:08:50,064.064 INFO    ] time= 12/06/2026 18:08:50
[2026-06-12 18:08:50,099.099 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 18:08:50,115.115 INFO    ] Checking for existing commands in stream...
[2026-06-12 18:08:50,187.187 INFO    ] No existing commands found in stream
[2026-06-12 18:08:55,220.220 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 18:08:55,223.223 INFO    ] Waiting 0.01 seconds before fallback handling...
[2026-06-12 18:08:55,615.615 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 18:08:55,616.616 INFO    ] Checking for system updates...
[2026-06-12 18:08:55,637.637 INFO    ] 200
[2026-06-12 18:08:55,638.638 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:08:55,667.667 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 18:08:55,669.669 INFO    ] No update needed
[2026-06-12 18:08:55,670.670 INFO    ] Checking for camera pi updates...
[2026-06-12 18:08:55,689.689 INFO    ] 200
[2026-06-12 18:08:55,691.691 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:08:55,713.713 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 18:08:55,755.755 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 18:08:55,756.756 INFO    ] No camera update needed
[2026-06-12 18:08:55,757.757 INFO    ] Script finished. Safe exiting...
[2026-06-12 18:08:55,758.758 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 18:08:55,762.762 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 18:08:55,764.764 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 18:08:57,802.802 INFO    ] ================================================
[2026-06-12 18:08:57,816.816 INFO    ] Launching Daemon at Fri Jun 12 18:08:57 IST 2026
[2026-06-12 18:08:57,827.827 INFO    ] ================================================
[2026-06-12 18:08:58,186.186 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 18:08:58
[2026-06-12 18:08:58,499.499 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 18:08:58,635.635 INFO    ] Initializing speech engine...
[2026-06-12 18:08:58,648.648 INFO    ] 2026-06-12 18:08:58
[2026-06-12 18:08:58,869.869 INFO    ] 2026-06-12 18:08:58
[2026-06-12 18:08:58,899.899 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 18:08:59,095.095 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 18:08:59,099.099 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 18:08:59,216.216 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 18:08:59,217.217 INFO    ] time= 12/06/2026 18:08:59
[2026-06-12 18:08:59,219.219 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 18:08:59,244.244 INFO    ] Checking for existing commands in stream...
[2026-06-12 18:08:59,337.337 INFO    ] No existing commands found in stream
[2026-06-12 18:09:04,350.350 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 18:09:04,353.353 INFO    ] Waiting 3.35 seconds before fallback handling...
[2026-06-12 18:09:08,073.073 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 18:09:08,075.075 INFO    ] Checking for system updates...
[2026-06-12 18:09:08,095.095 INFO    ] 200
[2026-06-12 18:09:08,097.097 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:09:08,127.127 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 18:09:08,128.128 INFO    ] No update needed
[2026-06-12 18:09:08,129.129 INFO    ] Checking for camera pi updates...
[2026-06-12 18:09:08,150.150 INFO    ] 200
[2026-06-12 18:09:08,152.152 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:09:08,175.175 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 18:09:08,222.222 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 18:09:08,223.223 INFO    ] No camera update needed
[2026-06-12 18:09:08,225.225 INFO    ] Script finished. Safe exiting...
[2026-06-12 18:09:08,226.226 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 18:09:08,229.229 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 18:09:08,233.233 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 18:09:10,271.271 INFO    ] ================================================
[2026-06-12 18:09:10,287.287 INFO    ] Launching Daemon at Fri Jun 12 18:09:10 IST 2026
[2026-06-12 18:09:10,298.298 INFO    ] ================================================
[2026-06-12 18:09:10,663.663 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 18:09:10
[2026-06-12 18:09:10,976.976 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 18:09:11,112.112 INFO    ] Initializing speech engine...
[2026-06-12 18:09:11,122.122 INFO    ] 2026-06-12 18:09:11
[2026-06-12 18:09:11,327.327 INFO    ] 2026-06-12 18:09:11
[2026-06-12 18:09:11,355.355 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 18:09:11,478.478 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 18:09:11,540.540 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 18:09:11,677.677 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 18:09:11,741.741 INFO    ] time= 12/06/2026 18:09:11
[2026-06-12 18:09:11,768.768 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 18:09:11,774.774 INFO    ] Checking for existing commands in stream...
[2026-06-12 18:09:11,842.842 INFO    ] No existing commands found in stream
[2026-06-12 18:09:16,856.856 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 18:09:16,859.859 INFO    ] Waiting 3.79 seconds before fallback handling...
[2026-06-12 18:09:21,013.013 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 18:09:21,015.015 INFO    ] Checking for system updates...
[2026-06-12 18:09:21,036.036 INFO    ] 200
[2026-06-12 18:09:21,037.037 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:09:21,067.067 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 18:09:21,068.068 INFO    ] No update needed
[2026-06-12 18:09:21,069.069 INFO    ] Checking for camera pi updates...
[2026-06-12 18:09:21,089.089 INFO    ] 200
[2026-06-12 18:09:21,091.091 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:09:21,113.113 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 18:09:21,175.175 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 18:09:21,176.176 INFO    ] No camera update needed
[2026-06-12 18:09:21,178.178 INFO    ] Script finished. Safe exiting...
[2026-06-12 18:09:21,179.179 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 18:09:21,182.182 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 18:09:21,184.184 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 18:09:23,223.223 INFO    ] ================================================
[2026-06-12 18:09:23,238.238 INFO    ] Launching Daemon at Fri Jun 12 18:09:23 IST 2026
[2026-06-12 18:09:23,249.249 INFO    ] ================================================
[2026-06-12 18:09:23,616.616 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 18:09:23
[2026-06-12 18:09:23,928.928 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 18:09:24,065.065 INFO    ] Initializing speech engine...
[2026-06-12 18:09:24,079.079 INFO    ] 2026-06-12 18:09:24
[2026-06-12 18:09:24,278.278 INFO    ] 2026-06-12 18:09:24
[2026-06-12 18:09:24,307.307 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 18:09:24,488.488 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 18:09:24,492.492 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 18:09:24,627.627 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 18:09:24,694.694 INFO    ] time= 12/06/2026 18:09:24
[2026-06-12 18:09:24,717.717 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 18:09:24,724.724 INFO    ] Checking for existing commands in stream...
[2026-06-12 18:09:24,791.791 INFO    ] No existing commands found in stream
[2026-06-12 18:09:29,800.800 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 18:09:29,803.803 INFO    ] Waiting 1.41 seconds before fallback handling...
[2026-06-12 18:09:31,592.592 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 18:09:31,594.594 INFO    ] Checking for system updates...
[2026-06-12 18:09:31,614.614 INFO    ] 200
[2026-06-12 18:09:31,616.616 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:09:31,646.646 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 18:09:31,647.647 INFO    ] No update needed
[2026-06-12 18:09:31,649.649 INFO    ] Checking for camera pi updates...
[2026-06-12 18:09:31,668.668 INFO    ] 200
[2026-06-12 18:09:31,670.670 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:09:31,695.695 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 18:09:31,820.820 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 18:09:31,821.821 INFO    ] No camera update needed
[2026-06-12 18:09:31,822.822 INFO    ] Script finished. Safe exiting...
[2026-06-12 18:09:31,824.824 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 18:09:31,827.827 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 18:09:31,830.830 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 18:09:33,862.862 INFO    ] ================================================
[2026-06-12 18:09:33,878.878 INFO    ] Launching Daemon at Fri Jun 12 18:09:33 IST 2026
[2026-06-12 18:09:33,889.889 INFO    ] ================================================
[2026-06-12 18:09:34,261.261 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 18:09:34
[2026-06-12 18:09:34,579.579 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 18:09:34,723.723 INFO    ] Initializing speech engine...
[2026-06-12 18:09:34,728.728 INFO    ] 2026-06-12 18:09:34
[2026-06-12 18:09:34,933.933 INFO    ] 2026-06-12 18:09:34
[2026-06-12 18:09:34,961.961 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 18:09:35,146.146 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 18:09:35,155.155 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 18:09:35,286.286 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 18:09:35,354.354 INFO    ] time= 12/06/2026 18:09:35
[2026-06-12 18:09:35,379.379 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 18:09:35,385.385 INFO    ] Checking for existing commands in stream...
[2026-06-12 18:09:35,452.452 INFO    ] No existing commands found in stream
[2026-06-12 18:09:40,466.466 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 18:09:40,469.469 INFO    ] Waiting 0.42 seconds before fallback handling...
[2026-06-12 18:09:41,278.278 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 18:09:41,280.280 INFO    ] Checking for system updates...
[2026-06-12 18:09:41,301.301 INFO    ] 200
[2026-06-12 18:09:41,302.302 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:09:41,333.333 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 18:09:41,334.334 INFO    ] No update needed
[2026-06-12 18:09:41,336.336 INFO    ] Checking for camera pi updates...
[2026-06-12 18:09:41,355.355 INFO    ] 200
[2026-06-12 18:09:41,357.357 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:09:41,380.380 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 18:09:41,427.427 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 18:09:41,429.429 INFO    ] No camera update needed
[2026-06-12 18:09:41,430.430 INFO    ] Script finished. Safe exiting...
[2026-06-12 18:09:41,432.432 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 18:09:41,435.435 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 18:09:41,438.438 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 18:09:43,476.476 INFO    ] ================================================
[2026-06-12 18:09:43,492.492 INFO    ] Launching Daemon at Fri Jun 12 18:09:43 IST 2026
[2026-06-12 18:09:43,504.504 INFO    ] ================================================
[2026-06-12 18:09:43,845.845 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 18:09:43
[2026-06-12 18:09:44,180.180 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 18:09:44,331.331 INFO    ] Initializing speech engine...
[2026-06-12 18:09:44,337.337 INFO    ] 2026-06-12 18:09:44
[2026-06-12 18:09:44,547.547 INFO    ] 2026-06-12 18:09:44
[2026-06-12 18:09:44,576.576 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 18:09:44,759.759 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 18:09:44,769.769 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 18:09:44,896.896 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 18:09:44,953.953 INFO    ] time= 12/06/2026 18:09:44
[2026-06-12 18:09:44,990.990 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 18:09:44,992.992 INFO    ] Checking for existing commands in stream...
[2026-06-12 18:09:45,064.064 INFO    ] No existing commands found in stream
[2026-06-12 18:09:50,078.078 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 18:09:50,081.081 INFO    ] Waiting 3.87 seconds before fallback handling...
[2026-06-12 18:09:54,322.322 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 18:09:54,323.323 INFO    ] Checking for system updates...
[2026-06-12 18:09:54,345.345 INFO    ] 200
[2026-06-12 18:09:54,346.346 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:09:54,380.380 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 18:09:54,382.382 INFO    ] No update needed
[2026-06-12 18:09:54,383.383 INFO    ] Checking for camera pi updates...
[2026-06-12 18:09:54,405.405 INFO    ] 200
[2026-06-12 18:09:54,407.407 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:09:54,431.431 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 18:09:54,482.482 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 18:09:54,483.483 INFO    ] No camera update needed
[2026-06-12 18:09:54,485.485 INFO    ] Script finished. Safe exiting...
[2026-06-12 18:09:54,486.486 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 18:09:54,489.489 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 18:09:54,492.492 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 18:09:56,530.530 INFO    ] ================================================
[2026-06-12 18:09:56,546.546 INFO    ] Launching Daemon at Fri Jun 12 18:09:56 IST 2026
[2026-06-12 18:09:56,561.561 INFO    ] ================================================
[2026-06-12 18:09:56,938.938 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 18:09:56
[2026-06-12 18:09:57,252.252 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 18:09:57,382.382 INFO    ] Initializing speech engine...
[2026-06-12 18:09:57,386.386 INFO    ] 2026-06-12 18:09:57
[2026-06-12 18:09:57,603.603 INFO    ] 2026-06-12 18:09:57
[2026-06-12 18:09:57,632.632 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 18:09:57,756.756 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 18:09:57,820.820 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 18:09:57,957.957 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 18:09:58,023.023 INFO    ] time= 12/06/2026 18:09:57
[2026-06-12 18:09:58,051.051 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 18:09:58,058.058 INFO    ] Checking for existing commands in stream...
[2026-06-12 18:09:58,126.126 INFO    ] No existing commands found in stream
[2026-06-12 18:10:03,135.135 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 18:10:03,137.137 INFO    ] Waiting 3.65 seconds before fallback handling...
[2026-06-12 18:10:08,372.372 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 18:10:08,375.375 INFO    ] Checking for system updates...
[2026-06-12 18:10:08,410.410 INFO    ] 200
[2026-06-12 18:10:08,412.412 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:10:08,454.454 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 18:10:08,456.456 INFO    ] No update needed
[2026-06-12 18:10:08,457.457 INFO    ] Checking for camera pi updates...
[2026-06-12 18:10:08,476.476 INFO    ] 200
[2026-06-12 18:10:08,477.477 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:10:08,500.500 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 18:10:08,546.546 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 18:10:08,547.547 INFO    ] No camera update needed
[2026-06-12 18:10:08,549.549 INFO    ] Script finished. Safe exiting...
[2026-06-12 18:10:08,550.550 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 18:10:08,553.553 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 18:10:08,556.556 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 18:10:10,594.594 INFO    ] ================================================
[2026-06-12 18:10:10,609.609 INFO    ] Launching Daemon at Fri Jun 12 18:10:10 IST 2026
[2026-06-12 18:10:10,620.620 INFO    ] ================================================
[2026-06-12 18:10:10,977.977 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 18:10:10
[2026-06-12 18:10:11,316.316 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 18:10:11,467.467 INFO    ] Initializing speech engine...
[2026-06-12 18:10:11,471.471 INFO    ] 2026-06-12 18:10:11
[2026-06-12 18:10:11,672.672 INFO    ] 2026-06-12 18:10:11
[2026-06-12 18:10:11,700.700 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 18:10:11,821.821 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 18:10:11,860.860 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 18:10:12,014.014 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 18:10:12,077.077 INFO    ] time= 12/06/2026 18:10:12
[2026-06-12 18:10:12,105.105 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 18:10:12,115.115 INFO    ] Checking for existing commands in stream...
[2026-06-12 18:10:12,211.211 INFO    ] No existing commands found in stream
[2026-06-12 18:10:17,220.220 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 18:10:17,223.223 INFO    ] Waiting 1.46 seconds before fallback handling...
[2026-06-12 18:10:19,045.045 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 18:10:19,047.047 INFO    ] Checking for system updates...
[2026-06-12 18:10:19,067.067 INFO    ] 200
[2026-06-12 18:10:19,068.068 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:10:19,098.098 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 18:10:19,100.100 INFO    ] No update needed
[2026-06-12 18:10:19,101.101 INFO    ] Checking for camera pi updates...
[2026-06-12 18:10:19,122.122 INFO    ] 200
[2026-06-12 18:10:19,124.124 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:10:19,148.148 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 18:10:19,253.253 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 18:10:19,254.254 INFO    ] No camera update needed
[2026-06-12 18:10:19,255.255 INFO    ] Script finished. Safe exiting...
[2026-06-12 18:10:19,256.256 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 18:10:19,260.260 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 18:10:19,262.262 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 18:10:21,300.300 INFO    ] ================================================
[2026-06-12 18:10:21,316.316 INFO    ] Launching Daemon at Fri Jun 12 18:10:21 IST 2026
[2026-06-12 18:10:21,327.327 INFO    ] ================================================
[2026-06-12 18:10:21,713.713 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 18:10:21
[2026-06-12 18:10:22,034.034 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 18:10:22,163.163 INFO    ] Initializing speech engine...
[2026-06-12 18:10:22,167.167 INFO    ] 2026-06-12 18:10:22
[2026-06-12 18:10:22,383.383 INFO    ] 2026-06-12 18:10:22
[2026-06-12 18:10:22,412.412 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 18:10:22,595.595 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 18:10:22,598.598 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 18:10:22,734.734 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 18:10:22,801.801 INFO    ] time= 12/06/2026 18:10:22
[2026-06-12 18:10:22,825.825 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 18:10:22,831.831 INFO    ] Checking for existing commands in stream...
[2026-06-12 18:10:22,898.898 INFO    ] No existing commands found in stream
[2026-06-12 18:10:27,907.907 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 18:10:27,910.910 INFO    ] Waiting 2.44 seconds before fallback handling...
[2026-06-12 18:10:30,715.715 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 18:10:30,716.716 INFO    ] Checking for system updates...
[2026-06-12 18:10:30,737.737 INFO    ] 200
[2026-06-12 18:10:30,738.738 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:10:30,770.770 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 18:10:30,772.772 INFO    ] No update needed
[2026-06-12 18:10:30,773.773 INFO    ] Checking for camera pi updates...
[2026-06-12 18:10:30,795.795 INFO    ] 200
[2026-06-12 18:10:30,797.797 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:10:30,820.820 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 18:10:30,867.867 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 18:10:30,868.868 INFO    ] No camera update needed
[2026-06-12 18:10:30,870.870 INFO    ] Script finished. Safe exiting...
[2026-06-12 18:10:30,871.871 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 18:10:30,874.874 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 18:10:30,877.877 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 18:10:32,910.910 INFO    ] ================================================
[2026-06-12 18:10:32,926.926 INFO    ] Launching Daemon at Fri Jun 12 18:10:32 IST 2026
[2026-06-12 18:10:32,937.937 INFO    ] ================================================
[2026-06-12 18:10:33,286.286 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 18:10:33
[2026-06-12 18:10:33,602.602 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 18:10:33,734.734 INFO    ] Initializing speech engine...
[2026-06-12 18:10:33,742.742 INFO    ] 2026-06-12 18:10:33
[2026-06-12 18:10:33,955.955 INFO    ] 2026-06-12 18:10:33
[2026-06-12 18:10:33,983.983 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 18:10:34,166.166 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 18:10:34,169.169 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 18:10:34,321.321 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 18:10:34,373.373 INFO    ] time= 12/06/2026 18:10:34
[2026-06-12 18:10:34,396.396 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 18:10:34,402.402 INFO    ] Checking for existing commands in stream...
[2026-06-12 18:10:34,469.469 INFO    ] No existing commands found in stream
[2026-06-12 18:10:39,478.478 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 18:10:39,481.481 INFO    ] Waiting 1.87 seconds before fallback handling...
[2026-06-12 18:10:41,744.744 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 18:10:41,746.746 INFO    ] Checking for system updates...
[2026-06-12 18:10:41,766.766 INFO    ] 200
[2026-06-12 18:10:41,767.767 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:10:41,798.798 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 18:10:41,799.799 INFO    ] No update needed
[2026-06-12 18:10:41,800.800 INFO    ] Checking for camera pi updates...
[2026-06-12 18:10:41,819.819 INFO    ] 200
[2026-06-12 18:10:41,821.821 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:10:41,844.844 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 18:10:41,919.919 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 18:10:41,920.920 INFO    ] No camera update needed
[2026-06-12 18:10:41,922.922 INFO    ] Script finished. Safe exiting...
[2026-06-12 18:10:41,923.923 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 18:10:41,926.926 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 18:10:41,929.929 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 18:10:43,966.966 INFO    ] ================================================
[2026-06-12 18:10:43,983.983 INFO    ] Launching Daemon at Fri Jun 12 18:10:43 IST 2026
[2026-06-12 18:10:43,993.993 INFO    ] ================================================
[2026-06-12 18:10:44,349.349 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 18:10:44
[2026-06-12 18:10:44,661.661 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 18:10:44,793.793 INFO    ] Initializing speech engine...
[2026-06-12 18:10:44,798.798 INFO    ] 2026-06-12 18:10:44
[2026-06-12 18:10:45,016.016 INFO    ] 2026-06-12 18:10:44
[2026-06-12 18:10:45,045.045 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 18:10:45,234.234 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 18:10:45,243.243 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 18:10:45,389.389 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 18:10:45,442.442 INFO    ] time= 12/06/2026 18:10:45
[2026-06-12 18:10:45,465.465 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 18:10:45,472.472 INFO    ] Checking for existing commands in stream...
[2026-06-12 18:10:45,539.539 INFO    ] No existing commands found in stream
[2026-06-12 18:10:50,548.548 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 18:10:50,551.551 INFO    ] Waiting 1.74 seconds before fallback handling...
[2026-06-12 18:10:52,683.683 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 18:10:52,684.684 INFO    ] Checking for system updates...
[2026-06-12 18:10:52,706.706 INFO    ] 200
[2026-06-12 18:10:52,707.707 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:10:52,739.739 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 18:10:52,741.741 INFO    ] No update needed
[2026-06-12 18:10:52,742.742 INFO    ] Checking for camera pi updates...
[2026-06-12 18:10:52,763.763 INFO    ] 200
[2026-06-12 18:10:52,765.765 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:10:52,789.789 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 18:10:52,832.832 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 18:10:52,833.833 INFO    ] No camera update needed
[2026-06-12 18:10:52,834.834 INFO    ] Script finished. Safe exiting...
[2026-06-12 18:10:52,835.835 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 18:10:52,838.838 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 18:10:52,841.841 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 18:10:54,881.881 INFO    ] ================================================
[2026-06-12 18:10:54,896.896 INFO    ] Launching Daemon at Fri Jun 12 18:10:54 IST 2026
[2026-06-12 18:10:54,907.907 INFO    ] ================================================
[2026-06-12 18:10:55,237.237 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 18:10:55
[2026-06-12 18:10:55,549.549 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 18:10:55,692.692 INFO    ] Initializing speech engine...
[2026-06-12 18:10:55,697.697 INFO    ] 2026-06-12 18:10:55
[2026-06-12 18:10:55,900.900 INFO    ] 2026-06-12 18:10:55
[2026-06-12 18:10:55,928.928 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 18:10:56,112.112 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 18:10:56,120.120 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 18:10:56,269.269 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 18:10:56,317.317 INFO    ] time= 12/06/2026 18:10:56
[2026-06-12 18:10:56,339.339 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 18:10:56,345.345 INFO    ] Checking for existing commands in stream...
[2026-06-12 18:10:56,411.411 INFO    ] No existing commands found in stream
[2026-06-12 18:11:01,425.425 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 18:11:01,428.428 INFO    ] Waiting 2.94 seconds before fallback handling...
[2026-06-12 18:11:04,767.767 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 18:11:04,768.768 INFO    ] Checking for system updates...
[2026-06-12 18:11:04,790.790 INFO    ] 200
[2026-06-12 18:11:04,791.791 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:11:04,821.821 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 18:11:04,822.822 INFO    ] No update needed
[2026-06-12 18:11:04,824.824 INFO    ] Checking for camera pi updates...
[2026-06-12 18:11:04,842.842 INFO    ] 200
[2026-06-12 18:11:04,844.844 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:11:04,867.867 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 18:11:04,937.937 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 18:11:04,939.939 INFO    ] No camera update needed
[2026-06-12 18:11:04,940.940 INFO    ] Script finished. Safe exiting...
[2026-06-12 18:11:04,942.942 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 18:11:04,944.944 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 18:11:04,947.947 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 18:11:06,985.985 INFO    ] ================================================
[2026-06-12 18:11:07,000.000 INFO    ] Launching Daemon at Fri Jun 12 18:11:06 IST 2026
[2026-06-12 18:11:07,011.011 INFO    ] ================================================
[2026-06-12 18:11:07,372.372 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 18:11:07
[2026-06-12 18:11:07,688.688 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 18:11:07,832.832 INFO    ] Initializing speech engine...
[2026-06-12 18:11:07,837.837 INFO    ] 2026-06-12 18:11:07
[2026-06-12 18:11:08,041.041 INFO    ] 2026-06-12 18:11:08
[2026-06-12 18:11:08,070.070 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 18:11:08,254.254 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 18:11:08,263.263 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 18:11:08,438.438 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 18:11:08,472.472 INFO    ] time= 12/06/2026 18:11:08
[2026-06-12 18:11:08,483.483 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 18:11:08,488.488 INFO    ] Checking for existing commands in stream...
[2026-06-12 18:11:08,556.556 INFO    ] No existing commands found in stream
[2026-06-12 18:11:13,565.565 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 18:11:13,567.567 INFO    ] Waiting 2.61 seconds before fallback handling...
[2026-06-12 18:11:16,533.533 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 18:11:16,534.534 INFO    ] Checking for system updates...
[2026-06-12 18:11:16,555.555 INFO    ] 200
[2026-06-12 18:11:16,556.556 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:11:16,585.585 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 18:11:16,587.587 INFO    ] No update needed
[2026-06-12 18:11:16,588.588 INFO    ] Checking for camera pi updates...
[2026-06-12 18:11:16,608.608 INFO    ] 200
[2026-06-12 18:11:16,610.610 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:11:16,632.632 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 18:11:16,710.710 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 18:11:16,712.712 INFO    ] No camera update needed
[2026-06-12 18:11:16,713.713 INFO    ] Script finished. Safe exiting...
[2026-06-12 18:11:16,714.714 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 18:11:16,717.717 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 18:11:16,720.720 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 18:11:18,758.758 INFO    ] ================================================
[2026-06-12 18:11:18,774.774 INFO    ] Launching Daemon at Fri Jun 12 18:11:18 IST 2026
[2026-06-12 18:11:18,785.785 INFO    ] ================================================
[2026-06-12 18:11:19,127.127 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 18:11:19
[2026-06-12 18:11:19,437.437 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 18:11:19,580.580 INFO    ] Initializing speech engine...
[2026-06-12 18:11:19,585.585 INFO    ] 2026-06-12 18:11:19
[2026-06-12 18:11:19,787.787 INFO    ] 2026-06-12 18:11:19
[2026-06-12 18:11:19,815.815 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 18:11:19,999.999 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 18:11:20,009.009 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 18:11:20,163.163 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 18:11:20,207.207 INFO    ] time= 12/06/2026 18:11:20
[2026-06-12 18:11:20,228.228 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 18:11:20,234.234 INFO    ] Checking for existing commands in stream...
[2026-06-12 18:11:20,301.301 INFO    ] No existing commands found in stream
[2026-06-12 18:11:25,315.315 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 18:11:25,318.318 INFO    ] Waiting 2.98 seconds before fallback handling...
[2026-06-12 18:11:28,663.663 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 18:11:28,665.665 INFO    ] Checking for system updates...
[2026-06-12 18:11:28,686.686 INFO    ] 200
[2026-06-12 18:11:28,687.687 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:11:28,718.718 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 18:11:28,720.720 INFO    ] No update needed
[2026-06-12 18:11:28,721.721 INFO    ] Checking for camera pi updates...
[2026-06-12 18:11:28,741.741 INFO    ] 200
[2026-06-12 18:11:28,742.742 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:11:28,766.766 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 18:11:28,813.813 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 18:11:28,814.814 INFO    ] No camera update needed
[2026-06-12 18:11:28,816.816 INFO    ] Script finished. Safe exiting...
[2026-06-12 18:11:28,817.817 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 18:11:28,820.820 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 18:11:28,823.823 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 18:11:30,860.860 INFO    ] ================================================
[2026-06-12 18:11:30,876.876 INFO    ] Launching Daemon at Fri Jun 12 18:11:30 IST 2026
[2026-06-12 18:11:30,887.887 INFO    ] ================================================
[2026-06-12 18:11:31,224.224 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 18:11:31
[2026-06-12 18:11:31,536.536 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 18:11:31,673.673 INFO    ] Initializing speech engine...
[2026-06-12 18:11:31,683.683 INFO    ] 2026-06-12 18:11:31
[2026-06-12 18:11:31,913.913 INFO    ] 2026-06-12 18:11:31
[2026-06-12 18:11:31,944.944 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 18:11:32,051.051 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 18:11:32,053.053 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 18:11:32,234.234 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 18:11:32,289.289 INFO    ] time= 12/06/2026 18:11:32
[2026-06-12 18:11:32,326.326 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 18:11:32,374.374 INFO    ] Checking for existing commands in stream...
[2026-06-12 18:11:32,471.471 INFO    ] No existing commands found in stream
[2026-06-12 18:11:37,482.482 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 18:11:37,485.485 INFO    ] Waiting 2.77 seconds before fallback handling...
[2026-06-12 18:11:40,648.648 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 18:11:40,649.649 INFO    ] Checking for system updates...
[2026-06-12 18:11:40,670.670 INFO    ] 200
[2026-06-12 18:11:40,672.672 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:11:40,703.703 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 18:11:40,705.705 INFO    ] No update needed
[2026-06-12 18:11:40,706.706 INFO    ] Checking for camera pi updates...
[2026-06-12 18:11:40,725.725 INFO    ] 200
[2026-06-12 18:11:40,726.726 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:11:40,752.752 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 18:11:40,892.892 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 18:11:40,893.893 INFO    ] No camera update needed
[2026-06-12 18:11:40,895.895 INFO    ] Script finished. Safe exiting...
[2026-06-12 18:11:40,896.896 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 18:11:40,899.899 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 18:11:40,902.902 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 18:11:42,942.942 INFO    ] ================================================
[2026-06-12 18:11:42,957.957 INFO    ] Launching Daemon at Fri Jun 12 18:11:42 IST 2026
[2026-06-12 18:11:42,969.969 INFO    ] ================================================
[2026-06-12 18:11:43,304.304 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 18:11:43
[2026-06-12 18:11:43,615.615 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 18:11:43,762.762 INFO    ] Initializing speech engine...
[2026-06-12 18:11:43,768.768 INFO    ] 2026-06-12 18:11:43
[2026-06-12 18:11:43,981.981 INFO    ] 2026-06-12 18:11:43
[2026-06-12 18:11:44,010.010 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 18:11:44,197.197 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 18:11:44,206.206 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 18:11:44,335.335 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 18:11:44,402.402 INFO    ] time= 12/06/2026 18:11:44
[2026-06-12 18:11:44,426.426 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 18:11:44,433.433 INFO    ] Checking for existing commands in stream...
[2026-06-12 18:11:44,497.497 INFO    ] No existing commands found in stream
[2026-06-12 18:11:49,507.507 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 18:11:49,510.510 INFO    ] Waiting 3.66 seconds before fallback handling...
[2026-06-12 18:11:53,537.537 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 18:11:53,538.538 INFO    ] Checking for system updates...
[2026-06-12 18:11:53,559.559 INFO    ] 200
[2026-06-12 18:11:53,561.561 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:11:53,590.590 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 18:11:53,592.592 INFO    ] No update needed
[2026-06-12 18:11:53,593.593 INFO    ] Checking for camera pi updates...
[2026-06-12 18:11:53,612.612 INFO    ] 200
[2026-06-12 18:11:53,613.613 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:11:53,639.639 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 18:11:53,688.688 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 18:11:53,690.690 INFO    ] No camera update needed
[2026-06-12 18:11:53,691.691 INFO    ] Script finished. Safe exiting...
[2026-06-12 18:11:53,692.692 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 18:11:53,695.695 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 18:11:53,698.698 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 18:11:55,735.735 INFO    ] ================================================
[2026-06-12 18:11:55,751.751 INFO    ] Launching Daemon at Fri Jun 12 18:11:55 IST 2026
[2026-06-12 18:11:55,762.762 INFO    ] ================================================
[2026-06-12 18:11:56,106.106 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 18:11:56
[2026-06-12 18:11:56,417.417 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 18:11:56,559.559 INFO    ] Initializing speech engine...
[2026-06-12 18:11:56,563.563 INFO    ] 2026-06-12 18:11:56
[2026-06-12 18:11:56,765.765 INFO    ] 2026-06-12 18:11:56
[2026-06-12 18:11:56,793.793 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 18:11:56,978.978 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 18:11:56,987.987 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 18:11:57,114.114 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 18:11:57,181.181 INFO    ] time= 12/06/2026 18:11:57
[2026-06-12 18:11:57,204.204 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 18:11:57,211.211 INFO    ] Checking for existing commands in stream...
[2026-06-12 18:11:57,277.277 INFO    ] No existing commands found in stream
[2026-06-12 18:12:02,282.282 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 18:12:02,284.284 INFO    ] Waiting 2.55 seconds before fallback handling...
[2026-06-12 18:12:05,240.240 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 18:12:05,241.241 INFO    ] Checking for system updates...
[2026-06-12 18:12:05,262.262 INFO    ] 200
[2026-06-12 18:12:05,264.264 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:12:05,300.300 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 18:12:05,301.301 INFO    ] No update needed
[2026-06-12 18:12:05,302.302 INFO    ] Checking for camera pi updates...
[2026-06-12 18:12:05,322.322 INFO    ] 200
[2026-06-12 18:12:05,324.324 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:12:05,346.346 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 18:12:05,397.397 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 18:12:05,398.398 INFO    ] No camera update needed
[2026-06-12 18:12:05,400.400 INFO    ] Script finished. Safe exiting...
[2026-06-12 18:12:05,401.401 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 18:12:05,404.404 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 18:12:05,407.407 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 18:12:07,446.446 INFO    ] ================================================
[2026-06-12 18:12:07,462.462 INFO    ] Launching Daemon at Fri Jun 12 18:12:07 IST 2026
[2026-06-12 18:12:07,473.473 INFO    ] ================================================
[2026-06-12 18:12:07,815.815 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 18:12:07
[2026-06-12 18:12:08,153.153 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 18:12:08,302.302 INFO    ] Initializing speech engine...
[2026-06-12 18:12:08,307.307 INFO    ] 2026-06-12 18:12:08
[2026-06-12 18:12:08,514.514 INFO    ] 2026-06-12 18:12:08
[2026-06-12 18:12:08,543.543 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 18:12:08,725.725 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 18:12:08,729.729 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 18:12:08,865.865 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 18:12:08,934.934 INFO    ] time= 12/06/2026 18:12:08
[2026-06-12 18:12:08,958.958 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 18:12:08,964.964 INFO    ] Checking for existing commands in stream...
[2026-06-12 18:12:09,031.031 INFO    ] No existing commands found in stream
[2026-06-12 18:12:14,040.040 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 18:12:14,043.043 INFO    ] Waiting 1.33 seconds before fallback handling...
[2026-06-12 18:12:15,739.739 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 18:12:15,740.740 INFO    ] Checking for system updates...
[2026-06-12 18:12:15,761.761 INFO    ] 200
[2026-06-12 18:12:15,763.763 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:12:15,793.793 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 18:12:15,794.794 INFO    ] No update needed
[2026-06-12 18:12:15,795.795 INFO    ] Checking for camera pi updates...
[2026-06-12 18:12:15,815.815 INFO    ] 200
[2026-06-12 18:12:15,817.817 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:12:15,840.840 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 18:12:15,886.886 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 18:12:15,887.887 INFO    ] No camera update needed
[2026-06-12 18:12:15,889.889 INFO    ] Script finished. Safe exiting...
[2026-06-12 18:12:15,890.890 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 18:12:15,893.893 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 18:12:15,896.896 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 18:12:17,934.934 INFO    ] ================================================
[2026-06-12 18:12:17,950.950 INFO    ] Launching Daemon at Fri Jun 12 18:12:17 IST 2026
[2026-06-12 18:12:17,961.961 INFO    ] ================================================
[2026-06-12 18:12:18,328.328 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 18:12:18
[2026-06-12 18:12:18,663.663 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 18:12:18,813.813 INFO    ] Initializing speech engine...
[2026-06-12 18:12:18,818.818 INFO    ] 2026-06-12 18:12:18
[2026-06-12 18:12:19,033.033 INFO    ] 2026-06-12 18:12:19
[2026-06-12 18:12:19,062.062 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 18:12:19,199.199 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 18:12:19,246.246 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 18:12:19,383.383 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 18:12:19,449.449 INFO    ] time= 12/06/2026 18:12:19
[2026-06-12 18:12:19,474.474 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 18:12:19,480.480 INFO    ] Checking for existing commands in stream...
[2026-06-12 18:12:19,570.570 INFO    ] No existing commands found in stream
[2026-06-12 18:12:24,579.579 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 18:12:24,582.582 INFO    ] Waiting 3.38 seconds before fallback handling...
[2026-06-12 18:12:28,357.357 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 18:12:28,358.358 INFO    ] Checking for system updates...
[2026-06-12 18:12:28,379.379 INFO    ] 200
[2026-06-12 18:12:28,381.381 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:12:28,410.410 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 18:12:28,412.412 INFO    ] No update needed
[2026-06-12 18:12:28,413.413 INFO    ] Checking for camera pi updates...
[2026-06-12 18:12:28,434.434 INFO    ] 200
[2026-06-12 18:12:28,435.435 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:12:28,460.460 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 18:12:28,729.729 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 18:12:28,731.731 INFO    ] No camera update needed
[2026-06-12 18:12:28,732.732 INFO    ] Script finished. Safe exiting...
[2026-06-12 18:12:28,734.734 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 18:12:28,737.737 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 18:12:28,740.740 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 18:12:30,772.772 INFO    ] ================================================
[2026-06-12 18:12:30,788.788 INFO    ] Launching Daemon at Fri Jun 12 18:12:30 IST 2026
[2026-06-12 18:12:30,799.799 INFO    ] ================================================
[2026-06-12 18:12:31,157.157 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 18:12:31
[2026-06-12 18:12:31,469.469 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 18:12:31,601.601 INFO    ] Initializing speech engine...
[2026-06-12 18:12:31,605.605 INFO    ] 2026-06-12 18:12:31
[2026-06-12 18:12:31,835.835 INFO    ] 2026-06-12 18:12:31
[2026-06-12 18:12:31,865.865 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 18:12:32,017.017 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 18:12:32,066.066 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 18:12:32,240.240 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 18:12:32,285.285 INFO    ] time= 12/06/2026 18:12:32
[2026-06-12 18:12:32,348.348 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 18:12:32,366.366 INFO    ] Checking for existing commands in stream...
[2026-06-12 18:12:32,468.468 INFO    ] No existing commands found in stream
[2026-06-12 18:12:37,493.493 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 18:12:37,496.496 INFO    ] Waiting 0.22 seconds before fallback handling...
[2026-06-12 18:12:38,086.086 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 18:12:38,088.088 INFO    ] Checking for system updates...
[2026-06-12 18:12:38,108.108 INFO    ] 200
[2026-06-12 18:12:38,110.110 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:12:38,141.141 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 18:12:38,143.143 INFO    ] No update needed
[2026-06-12 18:12:38,144.144 INFO    ] Checking for camera pi updates...
[2026-06-12 18:12:38,167.167 INFO    ] 200
[2026-06-12 18:12:38,168.168 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:12:38,193.193 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 18:12:38,238.238 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 18:12:38,240.240 INFO    ] No camera update needed
[2026-06-12 18:12:38,241.241 INFO    ] Script finished. Safe exiting...
[2026-06-12 18:12:38,242.242 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 18:12:38,245.245 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 18:12:38,248.248 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 18:12:40,286.286 INFO    ] ================================================
[2026-06-12 18:12:40,302.302 INFO    ] Launching Daemon at Fri Jun 12 18:12:40 IST 2026
[2026-06-12 18:12:40,314.314 INFO    ] ================================================
[2026-06-12 18:12:40,673.673 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 18:12:40
[2026-06-12 18:12:41,011.011 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 18:12:41,161.161 INFO    ] Initializing speech engine...
[2026-06-12 18:12:41,166.166 INFO    ] 2026-06-12 18:12:41
[2026-06-12 18:12:41,373.373 INFO    ] 2026-06-12 18:12:41
[2026-06-12 18:12:41,404.404 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 18:12:41,604.604 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 18:12:41,617.617 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 18:12:41,752.752 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 18:12:41,821.821 INFO    ] time= 12/06/2026 18:12:41
[2026-06-12 18:12:41,847.847 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 18:12:41,858.858 INFO    ] Checking for existing commands in stream...
[2026-06-12 18:12:41,934.934 INFO    ] No existing commands found in stream
[2026-06-12 18:12:46,945.945 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 18:12:46,947.947 INFO    ] Waiting 1.95 seconds before fallback handling...
[2026-06-12 18:12:49,253.253 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 18:12:49,254.254 INFO    ] Checking for system updates...
[2026-06-12 18:12:49,276.276 INFO    ] 200
[2026-06-12 18:12:49,277.277 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:12:49,312.312 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 18:12:49,313.313 INFO    ] No update needed
[2026-06-12 18:12:49,315.315 INFO    ] Checking for camera pi updates...
[2026-06-12 18:12:49,337.337 INFO    ] 200
[2026-06-12 18:12:49,338.338 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:12:49,363.363 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 18:12:49,401.401 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 18:12:49,402.402 INFO    ] No camera update needed
[2026-06-12 18:12:49,404.404 INFO    ] Script finished. Safe exiting...
[2026-06-12 18:12:49,405.405 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 18:12:49,408.408 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 18:12:49,411.411 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 18:12:51,449.449 INFO    ] ================================================
[2026-06-12 18:12:51,465.465 INFO    ] Launching Daemon at Fri Jun 12 18:12:51 IST 2026
[2026-06-12 18:12:51,475.475 INFO    ] ================================================
[2026-06-12 18:12:51,810.810 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 18:12:51
[2026-06-12 18:12:52,122.122 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 18:12:52,259.259 INFO    ] Initializing speech engine...
[2026-06-12 18:12:52,269.269 INFO    ] 2026-06-12 18:12:52
[2026-06-12 18:12:52,471.471 INFO    ] 2026-06-12 18:12:52
[2026-06-12 18:12:52,501.501 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 18:12:52,684.684 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 18:12:52,694.694 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 18:12:52,838.838 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 18:12:52,891.891 INFO    ] time= 12/06/2026 18:12:52
[2026-06-12 18:12:52,913.913 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 18:12:52,918.918 INFO    ] Checking for existing commands in stream...
[2026-06-12 18:12:52,985.985 INFO    ] No existing commands found in stream
[2026-06-12 18:12:57,999.999 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 18:12:58,002.002 INFO    ] Waiting 1.75 seconds before fallback handling...
[2026-06-12 18:13:00,186.186 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 18:13:00,188.188 INFO    ] Checking for system updates...
[2026-06-12 18:13:00,210.210 INFO    ] 200
[2026-06-12 18:13:00,211.211 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:13:00,241.241 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 18:13:00,243.243 INFO    ] No update needed
[2026-06-12 18:13:00,244.244 INFO    ] Checking for camera pi updates...
[2026-06-12 18:13:00,264.264 INFO    ] 200
[2026-06-12 18:13:00,265.265 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:13:00,290.290 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 18:13:00,333.333 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 18:13:00,335.335 INFO    ] No camera update needed
[2026-06-12 18:13:00,336.336 INFO    ] Script finished. Safe exiting...
[2026-06-12 18:13:00,338.338 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 18:13:00,341.341 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 18:13:00,344.344 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 18:13:02,370.370 INFO    ] ================================================
[2026-06-12 18:13:02,378.378 INFO    ] Launching Daemon at Fri Jun 12 18:13:02 IST 2026
[2026-06-12 18:13:02,384.384 INFO    ] ================================================
[2026-06-12 18:13:02,746.746 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 18:13:02
[2026-06-12 18:13:03,057.057 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 18:13:03,188.188 INFO    ] Initializing speech engine...
[2026-06-12 18:13:03,191.191 INFO    ] 2026-06-12 18:13:03
[2026-06-12 18:13:03,410.410 INFO    ] 2026-06-12 18:13:03
[2026-06-12 18:13:03,439.439 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 18:13:03,624.624 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 18:13:03,633.633 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 18:13:03,764.764 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 18:13:03,828.828 INFO    ] time= 12/06/2026 18:13:03
[2026-06-12 18:13:03,856.856 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 18:13:03,863.863 INFO    ] Checking for existing commands in stream...
[2026-06-12 18:13:03,930.930 INFO    ] No existing commands found in stream
[2026-06-12 18:13:08,939.939 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 18:13:08,942.942 INFO    ] Waiting 1.63 seconds before fallback handling...
[2026-06-12 18:13:10,926.926 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 18:13:10,927.927 INFO    ] Checking for system updates...
[2026-06-12 18:13:10,948.948 INFO    ] 200
[2026-06-12 18:13:10,949.949 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:13:10,981.981 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 18:13:10,982.982 INFO    ] No update needed
[2026-06-12 18:13:10,984.984 INFO    ] Checking for camera pi updates...
[2026-06-12 18:13:11,006.006 INFO    ] 200
[2026-06-12 18:13:11,008.008 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:13:11,033.033 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 18:13:11,138.138 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 18:13:11,140.140 INFO    ] No camera update needed
[2026-06-12 18:13:11,141.141 INFO    ] Script finished. Safe exiting...
[2026-06-12 18:13:11,143.143 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 18:13:11,146.146 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 18:13:11,149.149 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 18:13:13,187.187 INFO    ] ================================================
[2026-06-12 18:13:13,202.202 INFO    ] Launching Daemon at Fri Jun 12 18:13:13 IST 2026
[2026-06-12 18:13:13,213.213 INFO    ] ================================================
[2026-06-12 18:13:13,540.540 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 18:13:13
[2026-06-12 18:13:13,854.854 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 18:13:13,997.997 INFO    ] Initializing speech engine...
[2026-06-12 18:13:14,009.009 INFO    ] 2026-06-12 18:13:14
[2026-06-12 18:13:14,204.204 INFO    ] 2026-06-12 18:13:14
[2026-06-12 18:13:14,233.233 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 18:13:14,417.417 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 18:13:14,425.425 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 18:13:14,575.575 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 18:13:14,621.621 INFO    ] time= 12/06/2026 18:13:14
[2026-06-12 18:13:14,644.644 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 18:13:14,651.651 INFO    ] Checking for existing commands in stream...
[2026-06-12 18:13:14,717.717 INFO    ] No existing commands found in stream
[2026-06-12 18:13:19,726.726 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 18:13:19,734.734 INFO    ] Waiting 3.52 seconds before fallback handling...
[2026-06-12 18:13:23,635.635 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 18:13:23,636.636 INFO    ] Checking for system updates...
[2026-06-12 18:13:23,658.658 INFO    ] 200
[2026-06-12 18:13:23,660.660 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:13:23,690.690 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 18:13:23,692.692 INFO    ] No update needed
[2026-06-12 18:13:23,693.693 INFO    ] Checking for camera pi updates...
[2026-06-12 18:13:23,713.713 INFO    ] 200
[2026-06-12 18:13:23,715.715 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:13:23,740.740 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 18:13:23,791.791 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 18:13:23,793.793 INFO    ] No camera update needed
[2026-06-12 18:13:23,794.794 INFO    ] Script finished. Safe exiting...
[2026-06-12 18:13:23,795.795 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 18:13:23,799.799 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 18:13:23,802.802 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 18:13:25,841.841 INFO    ] ================================================
[2026-06-12 18:13:25,856.856 INFO    ] Launching Daemon at Fri Jun 12 18:13:25 IST 2026
[2026-06-12 18:13:25,867.867 INFO    ] ================================================
[2026-06-12 18:13:26,219.219 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 18:13:26
[2026-06-12 18:13:26,538.538 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 18:13:26,681.681 INFO    ] Initializing speech engine...
[2026-06-12 18:13:26,686.686 INFO    ] 2026-06-12 18:13:26
[2026-06-12 18:13:26,889.889 INFO    ] 2026-06-12 18:13:26
[2026-06-12 18:13:26,918.918 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 18:13:27,102.102 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 18:13:27,105.105 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 18:13:27,393.393 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 18:13:27,396.396 INFO    ] time= 12/06/2026 18:13:27
[2026-06-12 18:13:27,422.422 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 18:13:27,429.429 INFO    ] Checking for existing commands in stream...
[2026-06-12 18:13:27,521.521 INFO    ] No existing commands found in stream
[2026-06-12 18:13:32,531.531 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 18:13:32,533.533 INFO    ] Waiting 3.16 seconds before fallback handling...
[2026-06-12 18:13:36,066.066 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 18:13:36,067.067 INFO    ] Checking for system updates...
[2026-06-12 18:13:36,088.088 INFO    ] 200
[2026-06-12 18:13:36,089.089 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:13:36,119.119 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 18:13:36,120.120 INFO    ] No update needed
[2026-06-12 18:13:36,122.122 INFO    ] Checking for camera pi updates...
[2026-06-12 18:13:36,141.141 INFO    ] 200
[2026-06-12 18:13:36,142.142 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:13:36,165.165 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 18:13:36,210.210 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 18:13:36,212.212 INFO    ] No camera update needed
[2026-06-12 18:13:36,221.221 INFO    ] Script finished. Safe exiting...
[2026-06-12 18:13:36,223.223 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 18:13:36,226.226 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 18:13:36,229.229 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 18:13:38,266.266 INFO    ] ================================================
[2026-06-12 18:13:38,281.281 INFO    ] Launching Daemon at Fri Jun 12 18:13:38 IST 2026
[2026-06-12 18:13:38,292.292 INFO    ] ================================================
[2026-06-12 18:13:38,624.624 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 18:13:38
[2026-06-12 18:13:38,934.934 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 18:13:39,071.071 INFO    ] Initializing speech engine...
[2026-06-12 18:13:39,081.081 INFO    ] 2026-06-12 18:13:39
[2026-06-12 18:13:39,285.285 INFO    ] 2026-06-12 18:13:39
[2026-06-12 18:13:39,314.314 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 18:13:39,499.499 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 18:13:39,502.502 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 18:13:39,656.656 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 18:13:39,708.708 INFO    ] time= 12/06/2026 18:13:39
[2026-06-12 18:13:39,732.732 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 18:13:39,738.738 INFO    ] Checking for existing commands in stream...
[2026-06-12 18:13:39,805.805 INFO    ] No existing commands found in stream
[2026-06-12 18:13:44,819.819 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 18:13:44,822.822 INFO    ] Waiting 3.03 seconds before fallback handling...
[2026-06-12 18:13:48,307.307 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 18:13:48,309.309 INFO    ] Checking for system updates...
[2026-06-12 18:13:48,330.330 INFO    ] 200
[2026-06-12 18:13:48,331.331 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:13:48,363.363 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 18:13:48,364.364 INFO    ] No update needed
[2026-06-12 18:13:48,365.365 INFO    ] Checking for camera pi updates...
[2026-06-12 18:13:48,388.388 INFO    ] 200
[2026-06-12 18:13:48,389.389 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:13:48,413.413 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 18:13:48,542.542 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 18:13:48,543.543 INFO    ] No camera update needed
[2026-06-12 18:13:48,544.544 INFO    ] Script finished. Safe exiting...
[2026-06-12 18:13:48,546.546 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 18:13:48,549.549 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 18:13:48,551.551 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 18:13:50,590.590 INFO    ] ================================================
[2026-06-12 18:13:50,605.605 INFO    ] Launching Daemon at Fri Jun 12 18:13:50 IST 2026
[2026-06-12 18:13:50,616.616 INFO    ] ================================================
[2026-06-12 18:13:50,945.945 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 18:13:50
[2026-06-12 18:13:51,261.261 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 18:13:51,406.406 INFO    ] Initializing speech engine...
[2026-06-12 18:13:51,411.411 INFO    ] 2026-06-12 18:13:51
[2026-06-12 18:13:51,614.614 INFO    ] 2026-06-12 18:13:51
[2026-06-12 18:13:51,644.644 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 18:13:51,826.826 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 18:13:51,836.836 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 18:13:51,986.986 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 18:13:52,033.033 INFO    ] time= 12/06/2026 18:13:51
[2026-06-12 18:13:52,057.057 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 18:13:52,062.062 INFO    ] Checking for existing commands in stream...
[2026-06-12 18:13:52,130.130 INFO    ] No existing commands found in stream
[2026-06-12 18:13:57,139.139 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 18:13:57,142.142 INFO    ] Waiting 1.73 seconds before fallback handling...
[2026-06-12 18:13:59,247.247 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 18:13:59,248.248 INFO    ] Checking for system updates...
[2026-06-12 18:13:59,270.270 INFO    ] 200
[2026-06-12 18:13:59,271.271 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:13:59,301.301 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 18:13:59,302.302 INFO    ] No update needed
[2026-06-12 18:13:59,303.303 INFO    ] Checking for camera pi updates...
[2026-06-12 18:13:59,322.322 INFO    ] 200
[2026-06-12 18:13:59,324.324 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:13:59,347.347 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 18:13:59,390.390 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 18:13:59,391.391 INFO    ] No camera update needed
[2026-06-12 18:13:59,392.392 INFO    ] Script finished. Safe exiting...
[2026-06-12 18:13:59,394.394 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 18:13:59,397.397 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 18:13:59,399.399 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 18:14:01,436.436 INFO    ] ================================================
[2026-06-12 18:14:01,453.453 INFO    ] Launching Daemon at Fri Jun 12 18:14:01 IST 2026
[2026-06-12 18:14:01,464.464 INFO    ] ================================================
[2026-06-12 18:14:01,865.865 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 18:14:01
[2026-06-12 18:14:02,234.234 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 18:14:02,376.376 INFO    ] Initializing speech engine...
[2026-06-12 18:14:02,379.379 INFO    ] 2026-06-12 18:14:02
[2026-06-12 18:14:02,603.603 INFO    ] 2026-06-12 18:14:02
[2026-06-12 18:14:02,632.632 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 18:14:02,756.756 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 18:14:02,818.818 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 18:14:02,957.957 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 18:14:03,025.025 INFO    ] time= 12/06/2026 18:14:02
[2026-06-12 18:14:03,049.049 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 18:14:03,051.051 INFO    ] Checking for existing commands in stream...
[2026-06-12 18:14:03,146.146 INFO    ] No existing commands found in stream
[2026-06-12 18:14:08,160.160 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 18:14:08,163.163 INFO    ] Waiting 3.10 seconds before fallback handling...
[2026-06-12 18:14:11,629.629 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 18:14:11,631.631 INFO    ] Checking for system updates...
[2026-06-12 18:14:11,651.651 INFO    ] 200
[2026-06-12 18:14:11,652.652 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:14:11,684.684 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 18:14:11,686.686 INFO    ] No update needed
[2026-06-12 18:14:11,687.687 INFO    ] Checking for camera pi updates...
[2026-06-12 18:14:11,706.706 INFO    ] 200
[2026-06-12 18:14:11,707.707 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:14:11,733.733 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 18:14:11,775.775 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 18:14:11,777.777 INFO    ] No camera update needed
[2026-06-12 18:14:11,778.778 INFO    ] Script finished. Safe exiting...
[2026-06-12 18:14:11,779.779 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 18:14:11,782.782 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 18:14:11,785.785 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 18:14:13,824.824 INFO    ] ================================================
[2026-06-12 18:14:13,838.838 INFO    ] Launching Daemon at Fri Jun 12 18:14:13 IST 2026
[2026-06-12 18:14:13,849.849 INFO    ] ================================================
[2026-06-12 18:14:14,193.193 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 18:14:14
[2026-06-12 18:14:14,505.505 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 18:14:14,636.636 INFO    ] Initializing speech engine...
[2026-06-12 18:14:14,641.641 INFO    ] 2026-06-12 18:14:14
[2026-06-12 18:14:14,868.868 INFO    ] 2026-06-12 18:14:14
[2026-06-12 18:14:14,899.899 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 18:14:15,095.095 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 18:14:15,103.103 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 18:14:15,240.240 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 18:14:15,301.301 INFO    ] time= 12/06/2026 18:14:15
[2026-06-12 18:14:15,339.339 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 18:14:15,341.341 INFO    ] Checking for existing commands in stream...
[2026-06-12 18:14:15,416.416 INFO    ] No existing commands found in stream
[2026-06-12 18:14:20,422.422 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 18:14:20,430.430 INFO    ] Waiting 0.18 seconds before fallback handling...
[2026-06-12 18:14:20,941.941 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 18:14:20,943.943 INFO    ] Checking for system updates...
[2026-06-12 18:14:20,965.965 INFO    ] 200
[2026-06-12 18:14:20,966.966 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:14:21,003.003 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 18:14:21,004.004 INFO    ] No update needed
[2026-06-12 18:14:21,006.006 INFO    ] Checking for camera pi updates...
[2026-06-12 18:14:21,028.028 INFO    ] 200
[2026-06-12 18:14:21,030.030 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:14:21,055.055 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 18:14:21,095.095 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 18:14:21,097.097 INFO    ] No camera update needed
[2026-06-12 18:14:21,098.098 INFO    ] Script finished. Safe exiting...
[2026-06-12 18:14:21,101.101 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 18:14:21,104.104 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 18:14:21,109.109 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 18:14:23,148.148 INFO    ] ================================================
[2026-06-12 18:14:23,163.163 INFO    ] Launching Daemon at Fri Jun 12 18:14:23 IST 2026
[2026-06-12 18:14:23,174.174 INFO    ] ================================================
[2026-06-12 18:14:23,531.531 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 18:14:23
[2026-06-12 18:14:23,865.865 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 18:14:24,009.009 INFO    ] Initializing speech engine...
[2026-06-12 18:14:24,021.021 INFO    ] 2026-06-12 18:14:24
[2026-06-12 18:14:24,230.230 INFO    ] 2026-06-12 18:14:24
[2026-06-12 18:14:24,258.258 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 18:14:24,445.445 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 18:14:24,455.455 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 18:14:24,601.601 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 18:14:24,654.654 INFO    ] time= 12/06/2026 18:14:24
[2026-06-12 18:14:24,679.679 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 18:14:24,685.685 INFO    ] Checking for existing commands in stream...
[2026-06-12 18:14:24,753.753 INFO    ] No existing commands found in stream
[2026-06-12 18:14:29,768.768 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 18:14:29,771.771 INFO    ] Waiting 2.11 seconds before fallback handling...
[2026-06-12 18:14:32,232.232 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 18:14:32,233.233 INFO    ] Checking for system updates...
[2026-06-12 18:14:32,254.254 INFO    ] 200
[2026-06-12 18:14:32,255.255 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:14:32,306.306 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 18:14:32,309.309 INFO    ] No update needed
[2026-06-12 18:14:32,312.312 INFO    ] Checking for camera pi updates...
[2026-06-12 18:14:32,353.353 INFO    ] 200
[2026-06-12 18:14:32,356.356 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:14:32,381.381 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 18:14:32,411.411 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 18:14:32,413.413 INFO    ] No camera update needed
[2026-06-12 18:14:32,414.414 INFO    ] Script finished. Safe exiting...
[2026-06-12 18:14:32,415.415 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 18:14:32,418.418 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 18:14:32,421.421 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 18:14:34,460.460 INFO    ] ================================================
[2026-06-12 18:14:34,475.475 INFO    ] Launching Daemon at Fri Jun 12 18:14:34 IST 2026
[2026-06-12 18:14:34,486.486 INFO    ] ================================================
[2026-06-12 18:14:34,855.855 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 18:14:34
[2026-06-12 18:14:35,170.170 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 18:14:35,313.313 INFO    ] Initializing speech engine...
[2026-06-12 18:14:35,319.319 INFO    ] 2026-06-12 18:14:35
[2026-06-12 18:14:35,520.520 INFO    ] 2026-06-12 18:14:35
[2026-06-12 18:14:35,548.548 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 18:14:35,731.731 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 18:14:35,741.741 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 18:14:35,861.861 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 18:14:35,922.922 INFO    ] time= 12/06/2026 18:14:35
[2026-06-12 18:14:35,955.955 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 18:14:35,961.961 INFO    ] Checking for existing commands in stream...
[2026-06-12 18:14:36,055.055 INFO    ] No existing commands found in stream
[2026-06-12 18:14:41,069.069 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 18:14:41,072.072 INFO    ] Waiting 0.23 seconds before fallback handling...
[2026-06-12 18:14:41,671.671 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 18:14:41,673.673 INFO    ] Checking for system updates...
[2026-06-12 18:14:41,693.693 INFO    ] 200
[2026-06-12 18:14:41,695.695 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:14:41,725.725 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 18:14:41,726.726 INFO    ] No update needed
[2026-06-12 18:14:41,727.727 INFO    ] Checking for camera pi updates...
[2026-06-12 18:14:41,747.747 INFO    ] 200
[2026-06-12 18:14:41,748.748 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:14:41,772.772 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 18:14:41,823.823 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 18:14:41,824.824 INFO    ] No camera update needed
[2026-06-12 18:14:41,826.826 INFO    ] Script finished. Safe exiting...
[2026-06-12 18:14:41,827.827 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 18:14:41,830.830 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 18:14:41,833.833 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 18:14:43,873.873 INFO    ] ================================================
[2026-06-12 18:14:43,889.889 INFO    ] Launching Daemon at Fri Jun 12 18:14:43 IST 2026
[2026-06-12 18:14:43,899.899 INFO    ] ================================================
[2026-06-12 18:14:44,271.271 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 18:14:44
[2026-06-12 18:14:44,585.585 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 18:14:44,728.728 INFO    ] Initializing speech engine...
[2026-06-12 18:14:44,733.733 INFO    ] 2026-06-12 18:14:44
[2026-06-12 18:14:44,936.936 INFO    ] 2026-06-12 18:14:44
[2026-06-12 18:14:44,964.964 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 18:14:45,146.146 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 18:14:45,149.149 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 18:14:45,286.286 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 18:14:45,345.345 INFO    ] time= 12/06/2026 18:14:45
[2026-06-12 18:14:45,376.376 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 18:14:45,378.378 INFO    ] Checking for existing commands in stream...
[2026-06-12 18:14:45,449.449 INFO    ] No existing commands found in stream
[2026-06-12 18:14:50,458.458 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 18:14:50,461.461 INFO    ] Waiting 3.50 seconds before fallback handling...
[2026-06-12 18:14:54,352.352 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 18:14:54,353.353 INFO    ] Checking for system updates...
[2026-06-12 18:14:54,373.373 INFO    ] 200
[2026-06-12 18:14:54,375.375 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:14:54,409.409 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 18:14:54,410.410 INFO    ] No update needed
[2026-06-12 18:14:54,411.411 INFO    ] Checking for camera pi updates...
[2026-06-12 18:14:54,430.430 INFO    ] 200
[2026-06-12 18:14:54,432.432 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:14:54,455.455 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 18:14:54,514.514 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 18:14:54,515.515 INFO    ] No camera update needed
[2026-06-12 18:14:54,517.517 INFO    ] Script finished. Safe exiting...
[2026-06-12 18:14:54,518.518 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 18:14:54,521.521 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 18:14:54,524.524 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 18:14:56,564.564 INFO    ] ================================================
[2026-06-12 18:14:56,580.580 INFO    ] Launching Daemon at Fri Jun 12 18:14:56 IST 2026
[2026-06-12 18:14:56,591.591 INFO    ] ================================================
[2026-06-12 18:14:56,941.941 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 18:14:56
[2026-06-12 18:14:57,275.275 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 18:14:57,430.430 INFO    ] Initializing speech engine...
[2026-06-12 18:14:57,434.434 INFO    ] 2026-06-12 18:14:57
[2026-06-12 18:14:57,641.641 INFO    ] 2026-06-12 18:14:57
[2026-06-12 18:14:57,670.670 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 18:14:57,856.856 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 18:14:57,865.865 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 18:14:57,987.987 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 18:14:58,042.042 INFO    ] time= 12/06/2026 18:14:57
[2026-06-12 18:14:58,077.077 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 18:14:58,117.117 INFO    ] Checking for existing commands in stream...
[2026-06-12 18:14:58,211.211 INFO    ] No existing commands found in stream
[2026-06-12 18:15:03,241.241 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 18:15:03,244.244 INFO    ] Waiting 1.12 seconds before fallback handling...
[2026-06-12 18:15:04,743.743 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 18:15:04,745.745 INFO    ] Checking for system updates...
[2026-06-12 18:15:04,765.765 INFO    ] 200
[2026-06-12 18:15:04,767.767 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:15:04,798.798 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 18:15:04,800.800 INFO    ] No update needed
[2026-06-12 18:15:04,801.801 INFO    ] Checking for camera pi updates...
[2026-06-12 18:15:04,820.820 INFO    ] 200
[2026-06-12 18:15:04,822.822 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:15:04,844.844 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 18:15:04,895.895 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 18:15:04,896.896 INFO    ] No camera update needed
[2026-06-12 18:15:04,897.897 INFO    ] Script finished. Safe exiting...
[2026-06-12 18:15:04,898.898 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 18:15:04,902.902 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 18:15:04,905.905 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 18:15:06,945.945 INFO    ] ================================================
[2026-06-12 18:15:06,961.961 INFO    ] Launching Daemon at Fri Jun 12 18:15:06 IST 2026
[2026-06-12 18:15:06,973.973 INFO    ] ================================================
[2026-06-12 18:15:07,320.320 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 18:15:07
[2026-06-12 18:15:07,638.638 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 18:15:07,776.776 INFO    ] Initializing speech engine...
[2026-06-12 18:15:07,789.789 INFO    ] 2026-06-12 18:15:07
[2026-06-12 18:15:08,007.007 INFO    ] 2026-06-12 18:15:07
[2026-06-12 18:15:08,038.038 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 18:15:08,236.236 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 18:15:08,245.245 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 18:15:08,396.396 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 18:15:08,457.457 INFO    ] time= 12/06/2026 18:15:08
[2026-06-12 18:15:08,482.482 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 18:15:08,489.489 INFO    ] Checking for existing commands in stream...
[2026-06-12 18:15:08,560.560 INFO    ] No existing commands found in stream
[2026-06-12 18:15:13,584.584 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 18:15:13,587.587 INFO    ] Waiting 1.19 seconds before fallback handling...
[2026-06-12 18:15:15,148.148 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 18:15:15,149.149 INFO    ] Checking for system updates...
[2026-06-12 18:15:15,171.171 INFO    ] 200
[2026-06-12 18:15:15,172.172 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:15:15,204.204 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 18:15:15,205.205 INFO    ] No update needed
[2026-06-12 18:15:15,206.206 INFO    ] Checking for camera pi updates...
[2026-06-12 18:15:15,226.226 INFO    ] 200
[2026-06-12 18:15:15,227.227 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:15:15,251.251 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 18:15:15,302.302 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 18:15:15,304.304 INFO    ] No camera update needed
[2026-06-12 18:15:15,305.305 INFO    ] Script finished. Safe exiting...
[2026-06-12 18:15:15,306.306 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 18:15:15,309.309 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 18:15:15,312.312 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 18:15:17,350.350 INFO    ] ================================================
[2026-06-12 18:15:17,366.366 INFO    ] Launching Daemon at Fri Jun 12 18:15:17 IST 2026
[2026-06-12 18:15:17,377.377 INFO    ] ================================================
[2026-06-12 18:15:17,728.728 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 18:15:17
[2026-06-12 18:15:18,039.039 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 18:15:18,180.180 INFO    ] Initializing speech engine...
[2026-06-12 18:15:18,185.185 INFO    ] 2026-06-12 18:15:18
[2026-06-12 18:15:18,387.387 INFO    ] 2026-06-12 18:15:18
[2026-06-12 18:15:18,415.415 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 18:15:18,599.599 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 18:15:18,609.609 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 18:15:18,738.738 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 18:15:18,805.805 INFO    ] time= 12/06/2026 18:15:18
[2026-06-12 18:15:18,828.828 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 18:15:18,834.834 INFO    ] Checking for existing commands in stream...
[2026-06-12 18:15:18,901.901 INFO    ] No existing commands found in stream
[2026-06-12 18:15:23,931.931 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 18:15:23,934.934 INFO    ] Waiting 3.71 seconds before fallback handling...
[2026-06-12 18:15:28,061.061 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 18:15:28,062.062 INFO    ] Checking for system updates...
[2026-06-12 18:15:28,083.083 INFO    ] 200
[2026-06-12 18:15:28,084.084 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:15:28,116.116 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 18:15:28,118.118 INFO    ] No update needed
[2026-06-12 18:15:28,119.119 INFO    ] Checking for camera pi updates...
[2026-06-12 18:15:28,140.140 INFO    ] 200
[2026-06-12 18:15:28,141.141 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:15:28,164.164 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 18:15:28,191.191 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 18:15:28,192.192 INFO    ] No camera update needed
[2026-06-12 18:15:28,194.194 INFO    ] Script finished. Safe exiting...
[2026-06-12 18:15:28,195.195 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 18:15:28,198.198 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 18:15:28,201.201 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 18:15:30,239.239 INFO    ] ================================================
[2026-06-12 18:15:30,255.255 INFO    ] Launching Daemon at Fri Jun 12 18:15:30 IST 2026
[2026-06-12 18:15:30,267.267 INFO    ] ================================================
[2026-06-12 18:15:30,606.606 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 18:15:30
[2026-06-12 18:15:30,917.917 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 18:15:31,048.048 INFO    ] Initializing speech engine...
[2026-06-12 18:15:31,053.053 INFO    ] 2026-06-12 18:15:31
[2026-06-12 18:15:31,272.272 INFO    ] 2026-06-12 18:15:31
[2026-06-12 18:15:31,301.301 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 18:15:31,486.486 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 18:15:31,490.490 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 18:15:31,680.680 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 18:15:31,716.716 INFO    ] time= 12/06/2026 18:15:31
[2026-06-12 18:15:31,722.722 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 18:15:31,728.728 INFO    ] Checking for existing commands in stream...
[2026-06-12 18:15:31,796.796 INFO    ] No existing commands found in stream
[2026-06-12 18:15:36,810.810 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 18:15:36,813.813 INFO    ] Waiting 3.47 seconds before fallback handling...
[2026-06-12 18:15:40,666.666 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 18:15:40,668.668 INFO    ] Checking for system updates...
[2026-06-12 18:15:40,689.689 INFO    ] 200
[2026-06-12 18:15:40,691.691 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:15:40,720.720 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 18:15:40,721.721 INFO    ] No update needed
[2026-06-12 18:15:40,723.723 INFO    ] Checking for camera pi updates...
[2026-06-12 18:15:40,742.742 INFO    ] 200
[2026-06-12 18:15:40,744.744 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:15:40,766.766 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 18:15:40,831.831 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 18:15:40,833.833 INFO    ] No camera update needed
[2026-06-12 18:15:40,834.834 INFO    ] Script finished. Safe exiting...
[2026-06-12 18:15:40,835.835 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 18:15:40,838.838 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 18:15:40,841.841 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 18:15:42,880.880 INFO    ] ================================================
[2026-06-12 18:15:42,896.896 INFO    ] Launching Daemon at Fri Jun 12 18:15:42 IST 2026
[2026-06-12 18:15:42,907.907 INFO    ] ================================================
[2026-06-12 18:15:43,270.270 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 18:15:43
[2026-06-12 18:15:43,581.581 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 18:15:43,711.711 INFO    ] Initializing speech engine...
[2026-06-12 18:15:43,714.714 INFO    ] 2026-06-12 18:15:43
[2026-06-12 18:15:43,933.933 INFO    ] 2026-06-12 18:15:43
[2026-06-12 18:15:43,962.962 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 18:15:44,146.146 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 18:15:44,155.155 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 18:15:44,287.287 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 18:15:44,355.355 INFO    ] time= 12/06/2026 18:15:44
[2026-06-12 18:15:44,379.379 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 18:15:44,386.386 INFO    ] Checking for existing commands in stream...
[2026-06-12 18:15:44,453.453 INFO    ] No existing commands found in stream
[2026-06-12 18:15:49,462.462 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 18:15:49,465.465 INFO    ] Waiting 3.58 seconds before fallback handling...
[2026-06-12 18:15:53,491.491 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 18:15:53,493.493 INFO    ] Checking for system updates...
[2026-06-12 18:15:53,513.513 INFO    ] 200
[2026-06-12 18:15:53,515.515 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:15:53,547.547 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 18:15:53,549.549 INFO    ] No update needed
[2026-06-12 18:15:53,550.550 INFO    ] Checking for camera pi updates...
[2026-06-12 18:15:53,571.571 INFO    ] 200
[2026-06-12 18:15:53,573.573 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:15:53,598.598 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 18:15:53,736.736 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 18:15:53,737.737 INFO    ] No camera update needed
[2026-06-12 18:15:53,739.739 INFO    ] Script finished. Safe exiting...
[2026-06-12 18:15:53,740.740 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 18:15:53,744.744 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 18:15:53,747.747 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 18:15:55,786.786 INFO    ] ================================================
[2026-06-12 18:15:55,802.802 INFO    ] Launching Daemon at Fri Jun 12 18:15:55 IST 2026
[2026-06-12 18:15:55,813.813 INFO    ] ================================================
[2026-06-12 18:15:56,182.182 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 18:15:56
[2026-06-12 18:15:56,494.494 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 18:15:56,625.625 INFO    ] Initializing speech engine...
[2026-06-12 18:15:56,634.634 INFO    ] 2026-06-12 18:15:56
[2026-06-12 18:15:56,858.858 INFO    ] 2026-06-12 18:15:56
[2026-06-12 18:15:56,892.892 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 18:15:57,023.023 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 18:15:57,040.040 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 18:15:57,195.195 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 18:15:57,236.236 INFO    ] time= 12/06/2026 18:15:57
[2026-06-12 18:15:57,287.287 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 18:15:57,321.321 INFO    ] Checking for existing commands in stream...
[2026-06-12 18:15:57,417.417 INFO    ] No existing commands found in stream
[2026-06-12 18:16:02,427.427 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 18:16:02,428.428 INFO    ] Waiting 3.14 seconds before fallback handling...
[2026-06-12 18:16:05,980.980 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 18:16:05,982.982 INFO    ] Checking for system updates...
[2026-06-12 18:16:06,004.004 INFO    ] 200
[2026-06-12 18:16:06,006.006 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:16:06,037.037 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 18:16:06,038.038 INFO    ] No update needed
[2026-06-12 18:16:06,040.040 INFO    ] Checking for camera pi updates...
[2026-06-12 18:16:06,059.059 INFO    ] 200
[2026-06-12 18:16:06,060.060 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:16:06,083.083 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 18:16:06,128.128 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 18:16:06,130.130 INFO    ] No camera update needed
[2026-06-12 18:16:06,131.131 INFO    ] Script finished. Safe exiting...
[2026-06-12 18:16:06,132.132 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 18:16:06,135.135 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 18:16:06,138.138 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 18:16:08,177.177 INFO    ] ================================================
[2026-06-12 18:16:08,193.193 INFO    ] Launching Daemon at Fri Jun 12 18:16:08 IST 2026
[2026-06-12 18:16:08,204.204 INFO    ] ================================================
[2026-06-12 18:16:08,566.566 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 18:16:08
[2026-06-12 18:16:08,881.881 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 18:16:09,015.015 INFO    ] Initializing speech engine...
[2026-06-12 18:16:09,027.027 INFO    ] 2026-06-12 18:16:09
[2026-06-12 18:16:09,244.244 INFO    ] 2026-06-12 18:16:09
[2026-06-12 18:16:09,275.275 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 18:16:09,471.471 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 18:16:09,474.474 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 18:16:09,611.611 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 18:16:09,662.662 INFO    ] time= 12/06/2026 18:16:09
[2026-06-12 18:16:09,695.695 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 18:16:09,718.718 INFO    ] Checking for existing commands in stream...
[2026-06-12 18:16:09,793.793 INFO    ] No existing commands found in stream
[2026-06-12 18:16:14,802.802 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 18:16:14,805.805 INFO    ] Waiting 3.97 seconds before fallback handling...
[2026-06-12 18:16:19,185.185 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 18:16:19,187.187 INFO    ] Checking for system updates...
[2026-06-12 18:16:19,207.207 INFO    ] 200
[2026-06-12 18:16:19,209.209 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:16:19,239.239 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 18:16:19,240.240 INFO    ] No update needed
[2026-06-12 18:16:19,242.242 INFO    ] Checking for camera pi updates...
[2026-06-12 18:16:19,261.261 INFO    ] 200
[2026-06-12 18:16:19,263.263 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:16:19,286.286 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 18:16:19,331.331 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 18:16:19,333.333 INFO    ] No camera update needed
[2026-06-12 18:16:19,334.334 INFO    ] Script finished. Safe exiting...
[2026-06-12 18:16:19,336.336 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 18:16:19,339.339 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 18:16:19,342.342 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 18:16:21,381.381 INFO    ] ================================================
[2026-06-12 18:16:21,397.397 INFO    ] Launching Daemon at Fri Jun 12 18:16:21 IST 2026
[2026-06-12 18:16:21,408.408 INFO    ] ================================================
[2026-06-12 18:16:21,733.733 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 18:16:21
[2026-06-12 18:16:22,046.046 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 18:16:22,176.176 INFO    ] Initializing speech engine...
[2026-06-12 18:16:22,180.180 INFO    ] 2026-06-12 18:16:22
[2026-06-12 18:16:22,409.409 INFO    ] 2026-06-12 18:16:22
[2026-06-12 18:16:22,440.440 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 18:16:22,635.635 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 18:16:22,639.639 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 18:16:22,781.781 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 18:16:22,848.848 INFO    ] time= 12/06/2026 18:16:22
[2026-06-12 18:16:22,877.877 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 18:16:22,883.883 INFO    ] Checking for existing commands in stream...
[2026-06-12 18:16:22,957.957 INFO    ] No existing commands found in stream
[2026-06-12 18:16:27,967.967 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 18:16:27,970.970 INFO    ] Waiting 3.37 seconds before fallback handling...
[2026-06-12 18:16:31,681.681 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 18:16:31,682.682 INFO    ] Checking for system updates...
[2026-06-12 18:16:31,705.705 INFO    ] 200
[2026-06-12 18:16:31,707.707 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:16:31,746.746 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 18:16:31,748.748 INFO    ] No update needed
[2026-06-12 18:16:31,750.750 INFO    ] Checking for camera pi updates...
[2026-06-12 18:16:31,773.773 INFO    ] 200
[2026-06-12 18:16:31,774.774 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:16:31,805.805 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 18:16:31,901.901 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 18:16:31,903.903 INFO    ] No camera update needed
[2026-06-12 18:16:31,904.904 INFO    ] Script finished. Safe exiting...
[2026-06-12 18:16:31,905.905 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 18:16:31,908.908 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 18:16:31,911.911 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 18:16:33,950.950 INFO    ] ================================================
[2026-06-12 18:16:33,966.966 INFO    ] Launching Daemon at Fri Jun 12 18:16:33 IST 2026
[2026-06-12 18:16:33,978.978 INFO    ] ================================================
[2026-06-12 18:16:34,323.323 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 18:16:34
[2026-06-12 18:16:34,635.635 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 18:16:34,791.791 INFO    ] Initializing speech engine...
[2026-06-12 18:16:34,798.798 INFO    ] 2026-06-12 18:16:34
[2026-06-12 18:16:35,008.008 INFO    ] 2026-06-12 18:16:34
[2026-06-12 18:16:35,038.038 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 18:16:35,170.170 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 18:16:35,237.237 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 18:16:35,379.379 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 18:16:35,435.435 INFO    ] time= 12/06/2026 18:16:35
[2026-06-12 18:16:35,475.475 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 18:16:35,486.486 INFO    ] Checking for existing commands in stream...
[2026-06-12 18:16:35,587.587 INFO    ] No existing commands found in stream
[2026-06-12 18:16:40,596.596 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 18:16:40,599.599 INFO    ] Waiting 0.61 seconds before fallback handling...
[2026-06-12 18:16:41,557.557 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 18:16:41,558.558 INFO    ] Checking for system updates...
[2026-06-12 18:16:41,579.579 INFO    ] 200
[2026-06-12 18:16:41,581.581 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:16:41,611.611 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 18:16:41,612.612 INFO    ] No update needed
[2026-06-12 18:16:41,613.613 INFO    ] Checking for camera pi updates...
[2026-06-12 18:16:41,634.634 INFO    ] 200
[2026-06-12 18:16:41,635.635 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:16:41,661.661 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 18:16:41,712.712 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 18:16:41,713.713 INFO    ] No camera update needed
[2026-06-12 18:16:41,715.715 INFO    ] Script finished. Safe exiting...
[2026-06-12 18:16:41,716.716 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 18:16:41,719.719 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 18:16:41,722.722 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 18:16:43,760.760 INFO    ] ================================================
[2026-06-12 18:16:43,776.776 INFO    ] Launching Daemon at Fri Jun 12 18:16:43 IST 2026
[2026-06-12 18:16:43,787.787 INFO    ] ================================================
[2026-06-12 18:16:44,134.134 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 18:16:44
[2026-06-12 18:16:44,449.449 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 18:16:44,584.584 INFO    ] Initializing speech engine...
[2026-06-12 18:16:44,597.597 INFO    ] 2026-06-12 18:16:44
[2026-06-12 18:16:44,813.813 INFO    ] 2026-06-12 18:16:44
[2026-06-12 18:16:44,844.844 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 18:16:45,039.039 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 18:16:45,042.042 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 18:16:45,180.180 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 18:16:45,232.232 INFO    ] time= 12/06/2026 18:16:45
[2026-06-12 18:16:45,276.276 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 18:16:45,287.287 INFO    ] Checking for existing commands in stream...
[2026-06-12 18:16:45,361.361 INFO    ] No existing commands found in stream
[2026-06-12 18:16:50,372.372 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 18:16:50,374.374 INFO    ] Waiting 2.49 seconds before fallback handling...
[2026-06-12 18:16:53,227.227 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 18:16:53,228.228 INFO    ] Checking for system updates...
[2026-06-12 18:16:53,249.249 INFO    ] 200
[2026-06-12 18:16:53,251.251 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:16:53,280.280 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 18:16:53,282.282 INFO    ] No update needed
[2026-06-12 18:16:53,283.283 INFO    ] Checking for camera pi updates...
[2026-06-12 18:16:53,302.302 INFO    ] 200
[2026-06-12 18:16:53,303.303 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:16:53,326.326 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 18:16:53,398.398 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 18:16:53,399.399 INFO    ] No camera update needed
[2026-06-12 18:16:53,401.401 INFO    ] Script finished. Safe exiting...
[2026-06-12 18:16:53,402.402 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 18:16:53,405.405 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 18:16:53,407.407 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 18:16:55,445.445 INFO    ] ================================================
[2026-06-12 18:16:55,461.461 INFO    ] Launching Daemon at Fri Jun 12 18:16:55 IST 2026
[2026-06-12 18:16:55,473.473 INFO    ] ================================================
[2026-06-12 18:16:55,826.826 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 18:16:55
[2026-06-12 18:16:56,138.138 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 18:16:56,268.268 INFO    ] Initializing speech engine...
[2026-06-12 18:16:56,276.276 INFO    ] 2026-06-12 18:16:56
[2026-06-12 18:16:56,491.491 INFO    ] 2026-06-12 18:16:56
[2026-06-12 18:16:56,519.519 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 18:16:56,705.705 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 18:16:56,713.713 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 18:16:56,865.865 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 18:16:56,914.914 INFO    ] time= 12/06/2026 18:16:56
[2026-06-12 18:16:56,937.937 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 18:16:56,942.942 INFO    ] Checking for existing commands in stream...
[2026-06-12 18:16:57,010.010 INFO    ] No existing commands found in stream
[2026-06-12 18:17:02,031.031 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 18:17:02,033.033 INFO    ] Waiting 1.27 seconds before fallback handling...
[2026-06-12 18:17:03,658.658 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 18:17:03,659.659 INFO    ] Checking for system updates...
[2026-06-12 18:17:03,680.680 INFO    ] 200
[2026-06-12 18:17:03,681.681 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:17:03,711.711 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 18:17:03,713.713 INFO    ] No update needed
[2026-06-12 18:17:03,714.714 INFO    ] Checking for camera pi updates...
[2026-06-12 18:17:03,734.734 INFO    ] 200
[2026-06-12 18:17:03,736.736 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:17:03,763.763 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 18:17:03,812.812 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 18:17:03,813.813 INFO    ] No camera update needed
[2026-06-12 18:17:03,815.815 INFO    ] Script finished. Safe exiting...
[2026-06-12 18:17:03,816.816 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 18:17:03,819.819 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 18:17:03,822.822 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 18:17:05,862.862 INFO    ] ================================================
[2026-06-12 18:17:05,878.878 INFO    ] Launching Daemon at Fri Jun 12 18:17:05 IST 2026
[2026-06-12 18:17:05,889.889 INFO    ] ================================================
[2026-06-12 18:17:06,240.240 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 18:17:06
[2026-06-12 18:17:06,556.556 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 18:17:06,700.700 INFO    ] Initializing speech engine...
[2026-06-12 18:17:06,704.704 INFO    ] 2026-06-12 18:17:06
[2026-06-12 18:17:06,909.909 INFO    ] 2026-06-12 18:17:06
[2026-06-12 18:17:06,938.938 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 18:17:07,130.130 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 18:17:07,146.146 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 18:17:07,277.277 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 18:17:07,330.330 INFO    ] time= 12/06/2026 18:17:07
[2026-06-12 18:17:07,352.352 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 18:17:07,359.359 INFO    ] Checking for existing commands in stream...
[2026-06-12 18:17:07,449.449 INFO    ] No existing commands found in stream
[2026-06-12 18:17:12,457.457 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 18:17:12,459.459 INFO    ] Waiting 3.15 seconds before fallback handling...
[2026-06-12 18:17:16,005.005 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 18:17:16,007.007 INFO    ] Checking for system updates...
[2026-06-12 18:17:16,027.027 INFO    ] 200
[2026-06-12 18:17:16,029.029 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:17:16,059.059 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 18:17:16,060.060 INFO    ] No update needed
[2026-06-12 18:17:16,062.062 INFO    ] Checking for camera pi updates...
[2026-06-12 18:17:16,082.082 INFO    ] 200
[2026-06-12 18:17:16,083.083 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:17:16,106.106 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 18:17:16,157.157 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 18:17:16,158.158 INFO    ] No camera update needed
[2026-06-12 18:17:16,160.160 INFO    ] Script finished. Safe exiting...
[2026-06-12 18:17:16,161.161 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 18:17:16,164.164 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 18:17:16,167.167 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 18:17:18,205.205 INFO    ] ================================================
[2026-06-12 18:17:18,221.221 INFO    ] Launching Daemon at Fri Jun 12 18:17:18 IST 2026
[2026-06-12 18:17:18,232.232 INFO    ] ================================================
[2026-06-12 18:17:18,599.599 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 18:17:18
[2026-06-12 18:17:18,913.913 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 18:17:19,045.045 INFO    ] Initializing speech engine...
[2026-06-12 18:17:19,050.050 INFO    ] 2026-06-12 18:17:19
[2026-06-12 18:17:19,279.279 INFO    ] 2026-06-12 18:17:19
[2026-06-12 18:17:19,311.311 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 18:17:19,505.505 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 18:17:19,509.509 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 18:17:19,650.650 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 18:17:19,713.713 INFO    ] time= 12/06/2026 18:17:19
[2026-06-12 18:17:19,750.750 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 18:17:19,752.752 INFO    ] Checking for existing commands in stream...
[2026-06-12 18:17:19,828.828 INFO    ] No existing commands found in stream
[2026-06-12 18:17:24,837.837 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 18:17:24,844.844 INFO    ] Waiting 0.48 seconds before fallback handling...
[2026-06-12 18:17:25,737.737 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 18:17:25,739.739 INFO    ] Checking for system updates...
[2026-06-12 18:17:25,760.760 INFO    ] 200
[2026-06-12 18:17:25,761.761 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:17:25,791.791 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 18:17:25,793.793 INFO    ] No update needed
[2026-06-12 18:17:25,794.794 INFO    ] Checking for camera pi updates...
[2026-06-12 18:17:25,814.814 INFO    ] 200
[2026-06-12 18:17:25,816.816 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:17:25,841.841 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 18:17:25,890.890 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 18:17:25,892.892 INFO    ] No camera update needed
[2026-06-12 18:17:25,893.893 INFO    ] Script finished. Safe exiting...
[2026-06-12 18:17:25,894.894 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 18:17:25,898.898 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 18:17:25,901.901 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 18:17:27,939.939 INFO    ] ================================================
[2026-06-12 18:17:27,954.954 INFO    ] Launching Daemon at Fri Jun 12 18:17:27 IST 2026
[2026-06-12 18:17:27,965.965 INFO    ] ================================================
[2026-06-12 18:17:28,322.322 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 18:17:28
[2026-06-12 18:17:28,633.633 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 18:17:28,769.769 INFO    ] Initializing speech engine...
[2026-06-12 18:17:28,777.777 INFO    ] 2026-06-12 18:17:28
[2026-06-12 18:17:28,984.984 INFO    ] 2026-06-12 18:17:28
[2026-06-12 18:17:29,013.013 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 18:17:29,198.198 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 18:17:29,202.202 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 18:17:29,355.355 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 18:17:29,409.409 INFO    ] time= 12/06/2026 18:17:29
[2026-06-12 18:17:29,431.431 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 18:17:29,438.438 INFO    ] Checking for existing commands in stream...
[2026-06-12 18:17:29,505.505 INFO    ] No existing commands found in stream
[2026-06-12 18:17:34,514.514 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 18:17:34,516.516 INFO    ] Waiting 1.67 seconds before fallback handling...
[2026-06-12 18:17:36,568.568 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 18:17:36,569.569 INFO    ] Checking for system updates...
[2026-06-12 18:17:36,592.592 INFO    ] 200
[2026-06-12 18:17:36,594.594 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:17:36,625.625 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 18:17:36,626.626 INFO    ] No update needed
[2026-06-12 18:17:36,628.628 INFO    ] Checking for camera pi updates...
[2026-06-12 18:17:36,647.647 INFO    ] 200
[2026-06-12 18:17:36,648.648 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:17:36,671.671 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 18:17:36,720.720 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 18:17:36,721.721 INFO    ] No camera update needed
[2026-06-12 18:17:36,723.723 INFO    ] Script finished. Safe exiting...
[2026-06-12 18:17:36,724.724 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 18:17:36,727.727 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 18:17:36,729.729 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 18:17:38,769.769 INFO    ] ================================================
[2026-06-12 18:17:38,784.784 INFO    ] Launching Daemon at Fri Jun 12 18:17:38 IST 2026
[2026-06-12 18:17:38,795.795 INFO    ] ================================================
[2026-06-12 18:17:39,160.160 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 18:17:39
[2026-06-12 18:17:39,472.472 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 18:17:39,603.603 INFO    ] Initializing speech engine...
[2026-06-12 18:17:39,607.607 INFO    ] 2026-06-12 18:17:39
[2026-06-12 18:17:39,835.835 INFO    ] 2026-06-12 18:17:39
[2026-06-12 18:17:39,865.865 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 18:17:40,061.061 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 18:17:40,065.065 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 18:17:40,211.211 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 18:17:40,270.270 INFO    ] time= 12/06/2026 18:17:40
[2026-06-12 18:17:40,307.307 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 18:17:40,309.309 INFO    ] Checking for existing commands in stream...
[2026-06-12 18:17:40,411.411 INFO    ] No existing commands found in stream
[2026-06-12 18:17:45,420.420 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 18:17:45,423.423 INFO    ] Waiting 1.31 seconds before fallback handling...
[2026-06-12 18:17:47,155.155 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 18:17:47,157.157 INFO    ] Checking for system updates...
[2026-06-12 18:17:47,178.178 INFO    ] 200
[2026-06-12 18:17:47,180.180 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:17:47,210.210 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 18:17:47,212.212 INFO    ] No update needed
[2026-06-12 18:17:47,213.213 INFO    ] Checking for camera pi updates...
[2026-06-12 18:17:47,232.232 INFO    ] 200
[2026-06-12 18:17:47,236.236 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:17:47,261.261 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 18:17:47,317.317 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 18:17:47,318.318 INFO    ] No camera update needed
[2026-06-12 18:17:47,320.320 INFO    ] Script finished. Safe exiting...
[2026-06-12 18:17:47,321.321 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 18:17:47,325.325 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 18:17:47,327.327 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 18:17:49,370.370 INFO    ] ================================================
[2026-06-12 18:17:49,384.384 INFO    ] Launching Daemon at Fri Jun 12 18:17:49 IST 2026
[2026-06-12 18:17:49,392.392 INFO    ] ================================================
[2026-06-12 18:17:49,711.711 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 18:17:49
[2026-06-12 18:17:50,034.034 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 18:17:50,165.165 INFO    ] Initializing speech engine...
[2026-06-12 18:17:50,170.170 INFO    ] 2026-06-12 18:17:50
[2026-06-12 18:17:50,386.386 INFO    ] 2026-06-12 18:17:50
[2026-06-12 18:17:50,416.416 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 18:17:50,599.599 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 18:17:50,611.611 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 18:17:50,801.801 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 18:17:50,825.825 INFO    ] time= 12/06/2026 18:17:50
[2026-06-12 18:17:50,831.831 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 18:17:50,833.833 INFO    ] Checking for existing commands in stream...
[2026-06-12 18:17:50,900.900 INFO    ] No existing commands found in stream
[2026-06-12 18:17:55,909.909 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 18:17:55,912.912 INFO    ] Waiting 0.29 seconds before fallback handling...
[2026-06-12 18:17:56,566.566 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 18:17:56,568.568 INFO    ] Checking for system updates...
[2026-06-12 18:17:56,588.588 INFO    ] 200
[2026-06-12 18:17:56,590.590 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:17:56,623.623 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 18:17:56,624.624 INFO    ] No update needed
[2026-06-12 18:17:56,626.626 INFO    ] Checking for camera pi updates...
[2026-06-12 18:17:56,646.646 INFO    ] 200
[2026-06-12 18:17:56,647.647 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:17:56,670.670 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 18:17:56,829.829 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 18:17:56,831.831 INFO    ] No camera update needed
[2026-06-12 18:17:56,832.832 INFO    ] Script finished. Safe exiting...
[2026-06-12 18:17:56,833.833 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 18:17:56,837.837 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 18:17:56,840.840 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 18:17:58,879.879 INFO    ] ================================================
[2026-06-12 18:17:58,895.895 INFO    ] Launching Daemon at Fri Jun 12 18:17:58 IST 2026
[2026-06-12 18:17:58,907.907 INFO    ] ================================================
[2026-06-12 18:17:59,281.281 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 18:17:59
[2026-06-12 18:17:59,593.593 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 18:17:59,722.722 INFO    ] Initializing speech engine...
[2026-06-12 18:17:59,726.726 INFO    ] 2026-06-12 18:17:59
[2026-06-12 18:17:59,941.941 INFO    ] 2026-06-12 18:17:59
[2026-06-12 18:17:59,970.970 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 18:18:00,153.153 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 18:18:00,162.162 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 18:18:00,295.295 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 18:18:00,357.357 INFO    ] time= 12/06/2026 18:18:00
[2026-06-12 18:18:00,381.381 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 18:18:00,387.387 INFO    ] Checking for existing commands in stream...
[2026-06-12 18:18:00,453.453 INFO    ] No existing commands found in stream
[2026-06-12 18:18:05,467.467 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 18:18:05,470.470 INFO    ] Waiting 1.32 seconds before fallback handling...
[2026-06-12 18:18:07,179.179 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 18:18:07,181.181 INFO    ] Checking for system updates...
[2026-06-12 18:18:07,201.201 INFO    ] 200
[2026-06-12 18:18:07,202.202 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:18:07,232.232 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 18:18:07,233.233 INFO    ] No update needed
[2026-06-12 18:18:07,234.234 INFO    ] Checking for camera pi updates...
[2026-06-12 18:18:07,253.253 INFO    ] 200
[2026-06-12 18:18:07,254.254 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:18:07,279.279 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 18:18:07,331.331 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 18:18:07,333.333 INFO    ] No camera update needed
[2026-06-12 18:18:07,338.338 INFO    ] Script finished. Safe exiting...
[2026-06-12 18:18:07,339.339 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 18:18:07,343.343 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 18:18:07,345.345 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 18:18:09,385.385 INFO    ] ================================================
[2026-06-12 18:18:09,400.400 INFO    ] Launching Daemon at Fri Jun 12 18:18:09 IST 2026
[2026-06-12 18:18:09,411.411 INFO    ] ================================================
[2026-06-12 18:18:09,767.767 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 18:18:09
[2026-06-12 18:18:10,103.103 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 18:18:10,253.253 INFO    ] Initializing speech engine...
[2026-06-12 18:18:10,259.259 INFO    ] 2026-06-12 18:18:10
[2026-06-12 18:18:10,466.466 INFO    ] 2026-06-12 18:18:10
[2026-06-12 18:18:10,495.495 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 18:18:10,679.679 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 18:18:10,691.691 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 18:18:10,880.880 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 18:18:10,905.905 INFO    ] time= 12/06/2026 18:18:10
[2026-06-12 18:18:10,911.911 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 18:18:10,913.913 INFO    ] Checking for existing commands in stream...
[2026-06-12 18:18:10,980.980 INFO    ] No existing commands found in stream
[2026-06-12 18:18:15,994.994 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 18:18:15,997.997 INFO    ] Waiting 3.60 seconds before fallback handling...
[2026-06-12 18:18:19,977.977 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 18:18:19,979.979 INFO    ] Checking for system updates...
[2026-06-12 18:18:20,000.000 INFO    ] 200
[2026-06-12 18:18:20,001.001 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:18:20,031.031 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 18:18:20,033.033 INFO    ] No update needed
[2026-06-12 18:18:20,034.034 INFO    ] Checking for camera pi updates...
[2026-06-12 18:18:20,053.053 INFO    ] 200
[2026-06-12 18:18:20,055.055 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:18:20,078.078 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 18:18:20,138.138 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 18:18:20,140.140 INFO    ] No camera update needed
[2026-06-12 18:18:20,142.142 INFO    ] Script finished. Safe exiting...
[2026-06-12 18:18:20,143.143 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 18:18:20,146.146 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 18:18:20,149.149 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 18:18:22,188.188 INFO    ] ================================================
[2026-06-12 18:18:22,204.204 INFO    ] Launching Daemon at Fri Jun 12 18:18:22 IST 2026
[2026-06-12 18:18:22,215.215 INFO    ] ================================================
[2026-06-12 18:18:22,560.560 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 18:18:22
[2026-06-12 18:18:22,871.871 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 18:18:23,002.002 INFO    ] Initializing speech engine...
[2026-06-12 18:18:23,010.010 INFO    ] 2026-06-12 18:18:23
[2026-06-12 18:18:23,223.223 INFO    ] 2026-06-12 18:18:23
[2026-06-12 18:18:23,252.252 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 18:18:23,446.446 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 18:18:23,456.456 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 18:18:23,631.631 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 18:18:23,670.670 INFO    ] time= 12/06/2026 18:18:23
[2026-06-12 18:18:23,675.675 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 18:18:23,682.682 INFO    ] Checking for existing commands in stream...
[2026-06-12 18:18:23,782.782 INFO    ] No existing commands found in stream
[2026-06-12 18:18:28,794.794 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 18:18:28,797.797 INFO    ] Waiting 3.58 seconds before fallback handling...
[2026-06-12 18:18:33,309.309 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 18:18:33,312.312 INFO    ] Checking for system updates...
[2026-06-12 18:18:33,348.348 INFO    ] 200
[2026-06-12 18:18:33,351.351 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:18:33,387.387 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 18:18:33,388.388 INFO    ] No update needed
[2026-06-12 18:18:33,389.389 INFO    ] Checking for camera pi updates...
[2026-06-12 18:18:33,408.408 INFO    ] 200
[2026-06-12 18:18:33,410.410 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:18:33,433.433 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 18:18:33,461.461 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 18:18:33,462.462 INFO    ] No camera update needed
[2026-06-12 18:18:33,464.464 INFO    ] Script finished. Safe exiting...
[2026-06-12 18:18:33,465.465 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 18:18:33,468.468 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 18:18:33,471.471 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 18:18:35,509.509 INFO    ] ================================================
[2026-06-12 18:18:35,524.524 INFO    ] Launching Daemon at Fri Jun 12 18:18:35 IST 2026
[2026-06-12 18:18:35,535.535 INFO    ] ================================================
[2026-06-12 18:18:35,875.875 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 18:18:35
[2026-06-12 18:18:36,186.186 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 18:18:36,323.323 INFO    ] Initializing speech engine...
[2026-06-12 18:18:36,333.333 INFO    ] 2026-06-12 18:18:36
[2026-06-12 18:18:36,535.535 INFO    ] 2026-06-12 18:18:36
[2026-06-12 18:18:36,563.563 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 18:18:36,746.746 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 18:18:36,750.750 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 18:18:36,911.911 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 18:18:36,954.954 INFO    ] time= 12/06/2026 18:18:36
[2026-06-12 18:18:36,976.976 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 18:18:36,982.982 INFO    ] Checking for existing commands in stream...
[2026-06-12 18:18:37,048.048 INFO    ] No existing commands found in stream
[2026-06-12 18:18:42,057.057 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 18:18:42,060.060 INFO    ] Waiting 2.77 seconds before fallback handling...
[2026-06-12 18:18:45,237.237 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 18:18:45,239.239 INFO    ] Checking for system updates...
[2026-06-12 18:18:45,259.259 INFO    ] 200
[2026-06-12 18:18:45,260.260 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:18:45,290.290 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 18:18:45,291.291 INFO    ] No update needed
[2026-06-12 18:18:45,293.293 INFO    ] Checking for camera pi updates...
[2026-06-12 18:18:45,314.314 INFO    ] 200
[2026-06-12 18:18:45,315.315 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:18:45,340.340 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 18:18:45,383.383 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 18:18:45,384.384 INFO    ] No camera update needed
[2026-06-12 18:18:45,385.385 INFO    ] Script finished. Safe exiting...
[2026-06-12 18:18:45,386.386 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 18:18:45,389.389 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 18:18:45,392.392 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 18:18:47,424.424 INFO    ] ================================================
[2026-06-12 18:18:47,444.444 INFO    ] Launching Daemon at Fri Jun 12 18:18:47 IST 2026
[2026-06-12 18:18:47,455.455 INFO    ] ================================================
[2026-06-12 18:18:47,854.854 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 18:18:47
[2026-06-12 18:18:48,189.189 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 18:18:48,329.329 INFO    ] Initializing speech engine...
[2026-06-12 18:18:48,341.341 INFO    ] 2026-06-12 18:18:48
[2026-06-12 18:18:48,550.550 INFO    ] 2026-06-12 18:18:48
[2026-06-12 18:18:48,580.580 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 18:18:48,765.765 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 18:18:48,777.777 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 18:18:48,955.955 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 18:18:48,989.989 INFO    ] time= 12/06/2026 18:18:48
[2026-06-12 18:18:48,995.995 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 18:18:49,001.001 INFO    ] Checking for existing commands in stream...
[2026-06-12 18:18:49,069.069 INFO    ] No existing commands found in stream
[2026-06-12 18:18:54,083.083 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 18:18:54,086.086 INFO    ] Waiting 3.65 seconds before fallback handling...
[2026-06-12 18:18:58,149.149 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 18:18:58,151.151 INFO    ] Checking for system updates...
[2026-06-12 18:18:58,171.171 INFO    ] 200
[2026-06-12 18:18:58,173.173 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:18:58,202.202 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 18:18:58,204.204 INFO    ] No update needed
[2026-06-12 18:18:58,205.205 INFO    ] Checking for camera pi updates...
[2026-06-12 18:18:58,224.224 INFO    ] 200
[2026-06-12 18:18:58,226.226 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:18:58,250.250 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 18:18:58,302.302 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 18:18:58,303.303 INFO    ] No camera update needed
[2026-06-12 18:18:58,305.305 INFO    ] Script finished. Safe exiting...
[2026-06-12 18:18:58,306.306 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 18:18:58,309.309 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 18:18:58,312.312 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 18:19:00,352.352 INFO    ] ================================================
[2026-06-12 18:19:00,368.368 INFO    ] Launching Daemon at Fri Jun 12 18:19:00 IST 2026
[2026-06-12 18:19:00,378.378 INFO    ] ================================================
[2026-06-12 18:19:00,700.700 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 18:19:00
[2026-06-12 18:19:01,011.011 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 18:19:01,142.142 INFO    ] Initializing speech engine...
[2026-06-12 18:19:01,154.154 INFO    ] 2026-06-12 18:19:01
[2026-06-12 18:19:01,360.360 INFO    ] 2026-06-12 18:19:01
[2026-06-12 18:19:01,389.389 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 18:19:01,572.572 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 18:19:01,581.581 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 18:19:01,732.732 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 18:19:01,735.735 INFO    ] time= 12/06/2026 18:19:01
[2026-06-12 18:19:01,739.739 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 18:19:01,779.779 INFO    ] Checking for existing commands in stream...
[2026-06-12 18:19:01,861.861 INFO    ] No existing commands found in stream
[2026-06-12 18:19:06,896.896 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 18:19:06,900.900 INFO    ] Waiting 0.57 seconds before fallback handling...
[2026-06-12 18:19:07,858.858 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 18:19:07,861.861 INFO    ] Checking for system updates...
[2026-06-12 18:19:07,883.883 INFO    ] 200
[2026-06-12 18:19:07,884.884 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:19:07,915.915 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 18:19:07,917.917 INFO    ] No update needed
[2026-06-12 18:19:07,918.918 INFO    ] Checking for camera pi updates...
[2026-06-12 18:19:07,937.937 INFO    ] 200
[2026-06-12 18:19:07,938.938 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:19:07,962.962 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 18:19:08,000.000 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 18:19:08,001.001 INFO    ] No camera update needed
[2026-06-12 18:19:08,003.003 INFO    ] Script finished. Safe exiting...
[2026-06-12 18:19:08,004.004 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 18:19:08,007.007 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 18:19:08,009.009 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 18:19:10,047.047 INFO    ] ================================================
[2026-06-12 18:19:10,062.062 INFO    ] Launching Daemon at Fri Jun 12 18:19:10 IST 2026
[2026-06-12 18:19:10,072.072 INFO    ] ================================================
[2026-06-12 18:19:10,411.411 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 18:19:10
[2026-06-12 18:19:10,723.723 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 18:19:10,854.854 INFO    ] Initializing speech engine...
[2026-06-12 18:19:10,858.858 INFO    ] 2026-06-12 18:19:10
[2026-06-12 18:19:11,071.071 INFO    ] 2026-06-12 18:19:11
[2026-06-12 18:19:11,087.087 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 18:19:11,296.296 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 18:19:11,299.299 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 18:19:11,487.487 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 18:19:11,524.524 INFO    ] time= 12/06/2026 18:19:11
[2026-06-12 18:19:11,527.527 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 18:19:11,533.533 INFO    ] Checking for existing commands in stream...
[2026-06-12 18:19:11,623.623 INFO    ] No existing commands found in stream
[2026-06-12 18:19:16,637.637 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 18:19:16,641.641 INFO    ] Waiting 1.12 seconds before fallback handling...
[2026-06-12 18:19:18,142.142 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 18:19:18,144.144 INFO    ] Checking for system updates...
[2026-06-12 18:19:18,164.164 INFO    ] 200
[2026-06-12 18:19:18,165.165 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:19:18,197.197 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 18:19:18,199.199 INFO    ] No update needed
[2026-06-12 18:19:18,200.200 INFO    ] Checking for camera pi updates...
[2026-06-12 18:19:18,221.221 INFO    ] 200
[2026-06-12 18:19:18,223.223 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:19:18,245.245 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 18:19:18,291.291 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 18:19:18,292.292 INFO    ] No camera update needed
[2026-06-12 18:19:18,294.294 INFO    ] Script finished. Safe exiting...
[2026-06-12 18:19:18,295.295 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 18:19:18,298.298 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 18:19:18,300.300 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 18:19:20,332.332 INFO    ] ================================================
[2026-06-12 18:19:20,347.347 INFO    ] Launching Daemon at Fri Jun 12 18:19:20 IST 2026
[2026-06-12 18:19:20,358.358 INFO    ] ================================================
[2026-06-12 18:19:20,687.687 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 18:19:20
[2026-06-12 18:19:20,999.999 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 18:19:21,139.139 INFO    ] Initializing speech engine...
[2026-06-12 18:19:21,147.147 INFO    ] 2026-06-12 18:19:21
[2026-06-12 18:19:21,360.360 INFO    ] 2026-06-12 18:19:21
[2026-06-12 18:19:21,390.390 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 18:19:21,583.583 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 18:19:21,587.587 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 18:19:21,728.728 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 18:19:21,799.799 INFO    ] time= 12/06/2026 18:19:21
[2026-06-12 18:19:21,826.826 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 18:19:21,833.833 INFO    ] Checking for existing commands in stream...
[2026-06-12 18:19:21,903.903 INFO    ] No existing commands found in stream
[2026-06-12 18:19:26,917.917 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 18:19:26,920.920 INFO    ] Waiting 2.52 seconds before fallback handling...
[2026-06-12 18:19:29,841.841 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 18:19:29,843.843 INFO    ] Checking for system updates...
[2026-06-12 18:19:29,879.879 INFO    ] 200
[2026-06-12 18:19:29,881.881 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:19:29,933.933 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 18:19:29,935.935 INFO    ] No update needed
[2026-06-12 18:19:29,938.938 INFO    ] Checking for camera pi updates...
[2026-06-12 18:19:29,971.971 INFO    ] 200
[2026-06-12 18:19:29,972.972 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:19:29,997.997 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 18:19:30,046.046 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 18:19:30,047.047 INFO    ] No camera update needed
[2026-06-12 18:19:30,049.049 INFO    ] Script finished. Safe exiting...
[2026-06-12 18:19:30,050.050 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 18:19:30,053.053 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 18:19:30,056.056 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 18:19:32,086.086 INFO    ] ================================================
[2026-06-12 18:19:32,095.095 INFO    ] Launching Daemon at Fri Jun 12 18:19:32 IST 2026
[2026-06-12 18:19:32,102.102 INFO    ] ================================================
[2026-06-12 18:19:32,428.428 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 18:19:32
[2026-06-12 18:19:32,755.755 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 18:19:32,890.890 INFO    ] Initializing speech engine...
[2026-06-12 18:19:32,893.893 INFO    ] 2026-06-12 18:19:32
[2026-06-12 18:19:33,118.118 INFO    ] 2026-06-12 18:19:33
[2026-06-12 18:19:33,149.149 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 18:19:33,343.343 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 18:19:33,353.353 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 18:19:33,488.488 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 18:19:33,542.542 INFO    ] time= 12/06/2026 18:19:33
[2026-06-12 18:19:33,575.575 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 18:19:33,586.586 INFO    ] Checking for existing commands in stream...
[2026-06-12 18:19:33,660.660 INFO    ] No existing commands found in stream
[2026-06-12 18:19:38,671.671 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 18:19:38,673.673 INFO    ] Waiting 0.58 seconds before fallback handling...
[2026-06-12 18:19:39,717.717 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 18:19:39,719.719 INFO    ] Checking for system updates...
[2026-06-12 18:19:39,739.739 INFO    ] 200
[2026-06-12 18:19:39,741.741 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:19:39,770.770 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 18:19:39,771.771 INFO    ] No update needed
[2026-06-12 18:19:39,773.773 INFO    ] Checking for camera pi updates...
[2026-06-12 18:19:39,792.792 INFO    ] 200
[2026-06-12 18:19:39,793.793 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:19:39,818.818 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 18:19:39,867.867 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 18:19:39,868.868 INFO    ] No camera update needed
[2026-06-12 18:19:39,869.869 INFO    ] Script finished. Safe exiting...
[2026-06-12 18:19:39,871.871 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 18:19:39,873.873 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 18:19:39,876.876 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 18:19:41,914.914 INFO    ] ================================================
[2026-06-12 18:19:41,928.928 INFO    ] Launching Daemon at Fri Jun 12 18:19:41 IST 2026
[2026-06-12 18:19:41,939.939 INFO    ] ================================================
[2026-06-12 18:19:42,273.273 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 18:19:42
[2026-06-12 18:19:42,586.586 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 18:19:42,731.731 INFO    ] Initializing speech engine...
[2026-06-12 18:19:42,739.739 INFO    ] 2026-06-12 18:19:42
[2026-06-12 18:19:42,947.947 INFO    ] 2026-06-12 18:19:42
[2026-06-12 18:19:42,976.976 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 18:19:43,162.162 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 18:19:43,171.171 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 18:19:43,323.323 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 18:19:43,370.370 INFO    ] time= 12/06/2026 18:19:43
[2026-06-12 18:19:43,394.394 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 18:19:43,400.400 INFO    ] Checking for existing commands in stream...
[2026-06-12 18:19:43,468.468 INFO    ] No existing commands found in stream
[2026-06-12 18:19:48,477.477 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 18:19:48,480.480 INFO    ] Waiting 1.06 seconds before fallback handling...
[2026-06-12 18:19:49,936.936 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 18:19:49,938.938 INFO    ] Checking for system updates...
[2026-06-12 18:19:49,959.959 INFO    ] 200
[2026-06-12 18:19:49,960.960 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:19:49,990.990 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 18:19:49,991.991 INFO    ] No update needed
[2026-06-12 18:19:49,992.992 INFO    ] Checking for camera pi updates...
[2026-06-12 18:19:50,011.011 INFO    ] 200
[2026-06-12 18:19:50,013.013 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:19:50,035.035 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 18:19:50,081.081 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 18:19:50,083.083 INFO    ] No camera update needed
[2026-06-12 18:19:50,084.084 INFO    ] Script finished. Safe exiting...
[2026-06-12 18:19:50,085.085 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 18:19:50,088.088 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 18:19:50,091.091 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 18:19:52,130.130 INFO    ] ================================================
[2026-06-12 18:19:52,145.145 INFO    ] Launching Daemon at Fri Jun 12 18:19:52 IST 2026
[2026-06-12 18:19:52,155.155 INFO    ] ================================================
[2026-06-12 18:19:52,532.532 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 18:19:52
[2026-06-12 18:19:52,861.861 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 18:19:53,009.009 INFO    ] Initializing speech engine...
[2026-06-12 18:19:53,014.014 INFO    ] 2026-06-12 18:19:53
[2026-06-12 18:19:53,221.221 INFO    ] 2026-06-12 18:19:53
[2026-06-12 18:19:53,249.249 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 18:19:53,432.432 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 18:19:53,443.443 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 18:19:53,578.578 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 18:19:53,642.642 INFO    ] time= 12/06/2026 18:19:53
[2026-06-12 18:19:53,664.664 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 18:19:53,671.671 INFO    ] Checking for existing commands in stream...
[2026-06-12 18:19:53,738.738 INFO    ] No existing commands found in stream
[2026-06-12 18:19:58,747.747 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 18:19:58,750.750 INFO    ] Waiting 2.67 seconds before fallback handling...
[2026-06-12 18:20:01,843.843 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 18:20:01,844.844 INFO    ] Checking for system updates...
[2026-06-12 18:20:01,865.865 INFO    ] 200
[2026-06-12 18:20:01,866.866 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:20:01,901.901 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 18:20:01,904.904 INFO    ] No update needed
[2026-06-12 18:20:01,906.906 INFO    ] Checking for camera pi updates...
[2026-06-12 18:20:02,009.009 INFO    ] 200
[2026-06-12 18:20:02,013.013 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:20:02,086.086 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 18:20:02,282.282 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 18:20:02,284.284 INFO    ] No camera update needed
[2026-06-12 18:20:02,286.286 INFO    ] Script finished. Safe exiting...
[2026-06-12 18:20:02,289.289 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 18:20:02,302.302 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 18:20:02,307.307 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 18:20:04,338.338 INFO    ] ================================================
[2026-06-12 18:20:04,353.353 INFO    ] Launching Daemon at Fri Jun 12 18:20:04 IST 2026
[2026-06-12 18:20:04,364.364 INFO    ] ================================================
[2026-06-12 18:20:04,694.694 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 18:20:04
[2026-06-12 18:20:05,004.004 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 18:20:05,145.145 INFO    ] Initializing speech engine...
[2026-06-12 18:20:05,150.150 INFO    ] 2026-06-12 18:20:05
[2026-06-12 18:20:05,353.353 INFO    ] 2026-06-12 18:20:05
[2026-06-12 18:20:05,381.381 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 18:20:05,563.563 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 18:20:05,572.572 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 18:20:05,717.717 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 18:20:05,769.769 INFO    ] time= 12/06/2026 18:20:05
[2026-06-12 18:20:05,792.792 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 18:20:05,798.798 INFO    ] Checking for existing commands in stream...
[2026-06-12 18:20:05,865.865 INFO    ] No existing commands found in stream
[2026-06-12 18:20:10,879.879 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 18:20:10,882.882 INFO    ] Waiting 3.84 seconds before fallback handling...
[2026-06-12 18:20:15,125.125 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 18:20:15,126.126 INFO    ] Checking for system updates...
[2026-06-12 18:20:15,146.146 INFO    ] 200
[2026-06-12 18:20:15,148.148 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:20:15,178.178 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 18:20:15,179.179 INFO    ] No update needed
[2026-06-12 18:20:15,180.180 INFO    ] Checking for camera pi updates...
[2026-06-12 18:20:15,199.199 INFO    ] 200
[2026-06-12 18:20:15,201.201 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:20:15,225.225 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 18:20:15,267.267 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 18:20:15,268.268 INFO    ] No camera update needed
[2026-06-12 18:20:15,269.269 INFO    ] Script finished. Safe exiting...
[2026-06-12 18:20:15,271.271 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 18:20:15,274.274 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 18:20:15,276.276 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 18:20:17,314.314 INFO    ] ================================================
[2026-06-12 18:20:17,329.329 INFO    ] Launching Daemon at Fri Jun 12 18:20:17 IST 2026
[2026-06-12 18:20:17,340.340 INFO    ] ================================================
[2026-06-12 18:20:17,670.670 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 18:20:17
[2026-06-12 18:20:17,983.983 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 18:20:18,112.112 INFO    ] Initializing speech engine...
[2026-06-12 18:20:18,117.117 INFO    ] 2026-06-12 18:20:18
[2026-06-12 18:20:18,332.332 INFO    ] 2026-06-12 18:20:18
[2026-06-12 18:20:18,362.362 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 18:20:18,544.544 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 18:20:18,552.552 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 18:20:18,691.691 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 18:20:18,747.747 INFO    ] time= 12/06/2026 18:20:18
[2026-06-12 18:20:18,772.772 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 18:20:18,778.778 INFO    ] Checking for existing commands in stream...
[2026-06-12 18:20:18,845.845 INFO    ] No existing commands found in stream
[2026-06-12 18:20:23,859.859 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 18:20:23,862.862 INFO    ] Waiting 0.58 seconds before fallback handling...
[2026-06-12 18:20:24,799.799 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 18:20:24,801.801 INFO    ] Checking for system updates...
[2026-06-12 18:20:24,821.821 INFO    ] 200
[2026-06-12 18:20:24,822.822 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:20:24,853.853 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 18:20:24,854.854 INFO    ] No update needed
[2026-06-12 18:20:24,855.855 INFO    ] Checking for camera pi updates...
[2026-06-12 18:20:24,877.877 INFO    ] 200
[2026-06-12 18:20:24,878.878 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:20:24,901.901 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 18:20:24,948.948 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 18:20:24,950.950 INFO    ] No camera update needed
[2026-06-12 18:20:24,951.951 INFO    ] Script finished. Safe exiting...
[2026-06-12 18:20:24,952.952 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 18:20:24,955.955 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 18:20:24,958.958 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 18:20:27,996.996 INFO    ] ================================================
[2026-06-12 18:20:27,011.011 INFO    ] Launching Daemon at Fri Jun 12 18:20:27 IST 2026
[2026-06-12 18:20:27,022.022 INFO    ] ================================================
[2026-06-12 18:20:27,353.353 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 18:20:27
[2026-06-12 18:20:27,666.666 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 18:20:27,808.808 INFO    ] Initializing speech engine...
[2026-06-12 18:20:27,813.813 INFO    ] 2026-06-12 18:20:27
[2026-06-12 18:20:28,018.018 INFO    ] 2026-06-12 18:20:27
[2026-06-12 18:20:28,049.049 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 18:20:28,233.233 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 18:20:28,243.243 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 18:20:28,394.394 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 18:20:28,454.454 INFO    ] time= 12/06/2026 18:20:28
[2026-06-12 18:20:28,465.465 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 18:20:28,471.471 INFO    ] Checking for existing commands in stream...
[2026-06-12 18:20:28,538.538 INFO    ] No existing commands found in stream
[2026-06-12 18:20:33,552.552 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 18:20:33,555.555 INFO    ] Waiting 0.09 seconds before fallback handling...
[2026-06-12 18:20:34,020.020 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 18:20:34,022.022 INFO    ] Checking for system updates...
[2026-06-12 18:20:34,042.042 INFO    ] 200
[2026-06-12 18:20:34,043.043 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:20:34,074.074 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 18:20:34,076.076 INFO    ] No update needed
[2026-06-12 18:20:34,077.077 INFO    ] Checking for camera pi updates...
[2026-06-12 18:20:34,097.097 INFO    ] 200
[2026-06-12 18:20:34,098.098 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:20:34,121.121 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 18:20:34,170.170 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 18:20:34,172.172 INFO    ] No camera update needed
[2026-06-12 18:20:34,173.173 INFO    ] Script finished. Safe exiting...
[2026-06-12 18:20:34,174.174 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 18:20:34,177.177 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 18:20:34,180.180 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 18:20:36,219.219 INFO    ] ================================================
[2026-06-12 18:20:36,234.234 INFO    ] Launching Daemon at Fri Jun 12 18:20:36 IST 2026
[2026-06-12 18:20:36,244.244 INFO    ] ================================================
[2026-06-12 18:20:36,585.585 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 18:20:36
[2026-06-12 18:20:36,898.898 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 18:20:37,030.030 INFO    ] Initializing speech engine...
[2026-06-12 18:20:37,034.034 INFO    ] 2026-06-12 18:20:37
[2026-06-12 18:20:37,258.258 INFO    ] 2026-06-12 18:20:37
[2026-06-12 18:20:37,288.288 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 18:20:37,418.418 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 18:20:37,484.484 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 18:20:37,627.627 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 18:20:37,694.694 INFO    ] time= 12/06/2026 18:20:37
[2026-06-12 18:20:37,725.725 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 18:20:37,727.727 INFO    ] Checking for existing commands in stream...
[2026-06-12 18:20:37,800.800 INFO    ] No existing commands found in stream
[2026-06-12 18:20:42,811.811 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 18:20:42,814.814 INFO    ] Waiting 3.67 seconds before fallback handling...
[2026-06-12 18:20:46,853.853 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 18:20:46,855.855 INFO    ] Checking for system updates...
[2026-06-12 18:20:46,890.890 INFO    ] 200
[2026-06-12 18:20:46,893.893 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:20:46,944.944 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 18:20:46,947.947 INFO    ] No update needed
[2026-06-12 18:20:46,949.949 INFO    ] Checking for camera pi updates...
[2026-06-12 18:20:46,969.969 INFO    ] 200
[2026-06-12 18:20:46,970.970 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:20:46,993.993 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 18:20:47,048.048 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 18:20:47,050.050 INFO    ] No camera update needed
[2026-06-12 18:20:47,051.051 INFO    ] Script finished. Safe exiting...
[2026-06-12 18:20:47,052.052 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 18:20:47,055.055 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 18:20:47,058.058 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 18:20:49,096.096 INFO    ] ================================================
[2026-06-12 18:20:49,111.111 INFO    ] Launching Daemon at Fri Jun 12 18:20:49 IST 2026
[2026-06-12 18:20:49,122.122 INFO    ] ================================================
[2026-06-12 18:20:49,463.463 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 18:20:49
[2026-06-12 18:20:49,779.779 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 18:20:49,910.910 INFO    ] Initializing speech engine...
[2026-06-12 18:20:49,913.913 INFO    ] 2026-06-12 18:20:49
[2026-06-12 18:20:50,132.132 INFO    ] 2026-06-12 18:20:50
[2026-06-12 18:20:50,161.161 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 18:20:50,347.347 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 18:20:50,356.356 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 18:20:50,502.502 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 18:20:50,555.555 INFO    ] time= 12/06/2026 18:20:50
[2026-06-12 18:20:50,578.578 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 18:20:50,585.585 INFO    ] Checking for existing commands in stream...
[2026-06-12 18:20:50,653.653 INFO    ] No existing commands found in stream
[2026-06-12 18:20:55,666.666 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 18:20:55,669.669 INFO    ] Waiting 1.21 seconds before fallback handling...
[2026-06-12 18:20:57,279.279 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 18:20:57,281.281 INFO    ] Checking for system updates...
[2026-06-12 18:20:57,306.306 INFO    ] 200
[2026-06-12 18:20:57,308.308 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:20:57,344.344 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 18:20:57,345.345 INFO    ] No update needed
[2026-06-12 18:20:57,347.347 INFO    ] Checking for camera pi updates...
[2026-06-12 18:20:57,368.368 INFO    ] 200
[2026-06-12 18:20:57,370.370 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:20:57,396.396 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 18:20:57,441.441 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 18:20:57,443.443 INFO    ] No camera update needed
[2026-06-12 18:20:57,444.444 INFO    ] Script finished. Safe exiting...
[2026-06-12 18:20:57,446.446 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 18:20:57,450.450 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 18:20:57,453.453 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 18:20:59,485.485 INFO    ] ================================================
[2026-06-12 18:20:59,500.500 INFO    ] Launching Daemon at Fri Jun 12 18:20:59 IST 2026
[2026-06-12 18:20:59,511.511 INFO    ] ================================================
[2026-06-12 18:20:59,839.839 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 18:20:59
[2026-06-12 18:21:00,150.150 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 18:21:00,280.280 INFO    ] Initializing speech engine...
[2026-06-12 18:21:00,284.284 INFO    ] 2026-06-12 18:21:00
[2026-06-12 18:21:00,512.512 INFO    ] 2026-06-12 18:21:00
[2026-06-12 18:21:00,542.542 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 18:21:00,737.737 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 18:21:00,741.741 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 18:21:00,885.885 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 18:21:00,949.949 INFO    ] time= 12/06/2026 18:21:00
[2026-06-12 18:21:00,981.981 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 18:21:00,983.983 INFO    ] Checking for existing commands in stream...
[2026-06-12 18:21:01,059.059 INFO    ] No existing commands found in stream
[2026-06-12 18:21:06,068.068 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 18:21:06,071.071 INFO    ] Waiting 1.36 seconds before fallback handling...
[2026-06-12 18:21:07,795.795 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 18:21:07,796.796 INFO    ] Checking for system updates...
[2026-06-12 18:21:07,817.817 INFO    ] 200
[2026-06-12 18:21:07,818.818 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:21:07,847.847 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 18:21:07,849.849 INFO    ] No update needed
[2026-06-12 18:21:07,850.850 INFO    ] Checking for camera pi updates...
[2026-06-12 18:21:07,869.869 INFO    ] 200
[2026-06-12 18:21:07,871.871 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:21:07,895.895 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 18:21:07,941.941 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 18:21:07,942.942 INFO    ] No camera update needed
[2026-06-12 18:21:07,944.944 INFO    ] Script finished. Safe exiting...
[2026-06-12 18:21:07,945.945 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 18:21:07,948.948 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 18:21:07,950.950 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 18:21:09,989.989 INFO    ] ================================================
[2026-06-12 18:21:10,004.004 INFO    ] Launching Daemon at Fri Jun 12 18:21:09 IST 2026
[2026-06-12 18:21:10,016.016 INFO    ] ================================================
[2026-06-12 18:21:10,362.362 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 18:21:10
[2026-06-12 18:21:10,679.679 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 18:21:10,811.811 INFO    ] Initializing speech engine...
[2026-06-12 18:21:10,815.815 INFO    ] 2026-06-12 18:21:10
[2026-06-12 18:21:11,035.035 INFO    ] 2026-06-12 18:21:11
[2026-06-12 18:21:11,075.075 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 18:21:11,271.271 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 18:21:11,275.275 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 18:21:11,413.413 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 18:21:11,480.480 INFO    ] time= 12/06/2026 18:21:11
[2026-06-12 18:21:11,514.514 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 18:21:11,520.520 INFO    ] Checking for existing commands in stream...
[2026-06-12 18:21:11,621.621 INFO    ] No existing commands found in stream
[2026-06-12 18:21:16,630.630 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 18:21:16,633.633 INFO    ] Waiting 1.08 seconds before fallback handling...
[2026-06-12 18:21:18,076.076 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 18:21:18,077.077 INFO    ] Checking for system updates...
[2026-06-12 18:21:18,098.098 INFO    ] 200
[2026-06-12 18:21:18,099.099 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:21:18,131.131 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 18:21:18,133.133 INFO    ] No update needed
[2026-06-12 18:21:18,134.134 INFO    ] Checking for camera pi updates...
[2026-06-12 18:21:18,153.153 INFO    ] 200
[2026-06-12 18:21:18,154.154 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:21:18,177.177 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 18:21:18,234.234 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 18:21:18,235.235 INFO    ] No camera update needed
[2026-06-12 18:21:18,236.236 INFO    ] Script finished. Safe exiting...
[2026-06-12 18:21:18,238.238 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 18:21:18,241.241 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 18:21:18,243.243 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 18:21:20,282.282 INFO    ] ================================================
[2026-06-12 18:21:20,298.298 INFO    ] Launching Daemon at Fri Jun 12 18:21:20 IST 2026
[2026-06-12 18:21:20,309.309 INFO    ] ================================================
[2026-06-12 18:21:20,645.645 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 18:21:20
[2026-06-12 18:21:20,958.958 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 18:21:21,090.090 INFO    ] Initializing speech engine...
[2026-06-12 18:21:21,093.093 INFO    ] 2026-06-12 18:21:21
[2026-06-12 18:21:21,312.312 INFO    ] 2026-06-12 18:21:21
[2026-06-12 18:21:21,340.340 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 18:21:21,525.525 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 18:21:21,529.529 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 18:21:21,677.677 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 18:21:21,734.734 INFO    ] time= 12/06/2026 18:21:21
[2026-06-12 18:21:21,758.758 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 18:21:21,765.765 INFO    ] Checking for existing commands in stream...
[2026-06-12 18:21:21,832.832 INFO    ] No existing commands found in stream
[2026-06-12 18:21:26,846.846 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 18:21:26,849.849 INFO    ] Waiting 1.85 seconds before fallback handling...
[2026-06-12 18:21:29,246.246 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 18:21:29,247.247 INFO    ] Checking for system updates...
[2026-06-12 18:21:29,268.268 INFO    ] 200
[2026-06-12 18:21:29,269.269 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:21:29,300.300 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 18:21:29,301.301 INFO    ] No update needed
[2026-06-12 18:21:29,303.303 INFO    ] Checking for camera pi updates...
[2026-06-12 18:21:29,322.322 INFO    ] 200
[2026-06-12 18:21:29,323.323 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:21:29,348.348 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 18:21:29,397.397 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 18:21:29,399.399 INFO    ] No camera update needed
[2026-06-12 18:21:29,400.400 INFO    ] Script finished. Safe exiting...
[2026-06-12 18:21:29,401.401 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 18:21:29,404.404 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 18:21:29,407.407 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 18:21:31,447.447 INFO    ] ================================================
[2026-06-12 18:21:31,464.464 INFO    ] Launching Daemon at Fri Jun 12 18:21:31 IST 2026
[2026-06-12 18:21:31,477.477 INFO    ] ================================================
[2026-06-12 18:21:31,831.831 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 18:21:31
[2026-06-12 18:21:32,193.193 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 18:21:32,335.335 INFO    ] Initializing speech engine...
[2026-06-12 18:21:32,344.344 INFO    ] 2026-06-12 18:21:32
[2026-06-12 18:21:32,553.553 INFO    ] 2026-06-12 18:21:32
[2026-06-12 18:21:32,582.582 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 18:21:32,765.765 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 18:21:32,775.775 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 18:21:32,905.905 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 18:21:32,969.969 INFO    ] time= 12/06/2026 18:21:32
[2026-06-12 18:21:32,997.997 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 18:21:33,004.004 INFO    ] Checking for existing commands in stream...
[2026-06-12 18:21:33,071.071 INFO    ] No existing commands found in stream
[2026-06-12 18:21:38,085.085 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 18:21:38,088.088 INFO    ] Waiting 0.95 seconds before fallback handling...
[2026-06-12 18:21:39,433.433 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 18:21:39,434.434 INFO    ] Checking for system updates...
[2026-06-12 18:21:39,455.455 INFO    ] 200
[2026-06-12 18:21:39,456.456 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:21:39,486.486 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 18:21:39,487.487 INFO    ] No update needed
[2026-06-12 18:21:39,489.489 INFO    ] Checking for camera pi updates...
[2026-06-12 18:21:39,508.508 INFO    ] 200
[2026-06-12 18:21:39,510.510 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:21:39,534.534 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 18:21:39,576.576 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 18:21:39,577.577 INFO    ] No camera update needed
[2026-06-12 18:21:39,579.579 INFO    ] Script finished. Safe exiting...
[2026-06-12 18:21:39,580.580 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 18:21:39,583.583 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 18:21:39,586.586 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 18:21:41,626.626 INFO    ] ================================================
[2026-06-12 18:21:41,641.641 INFO    ] Launching Daemon at Fri Jun 12 18:21:41 IST 2026
[2026-06-12 18:21:41,652.652 INFO    ] ================================================
[2026-06-12 18:21:42,031.031 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 18:21:42
[2026-06-12 18:21:42,363.363 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 18:21:42,506.506 INFO    ] Initializing speech engine...
[2026-06-12 18:21:42,517.517 INFO    ] 2026-06-12 18:21:42
[2026-06-12 18:21:42,727.727 INFO    ] 2026-06-12 18:21:42
[2026-06-12 18:21:42,756.756 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 18:21:42,940.940 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 18:21:42,949.949 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 18:21:43,107.107 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 18:21:43,157.157 INFO    ] time= 12/06/2026 18:21:43
[2026-06-12 18:21:43,173.173 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 18:21:43,180.180 INFO    ] Checking for existing commands in stream...
[2026-06-12 18:21:43,247.247 INFO    ] No existing commands found in stream
[2026-06-12 18:21:48,256.256 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 18:21:48,259.259 INFO    ] Waiting 2.82 seconds before fallback handling...
[2026-06-12 18:21:51,487.487 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 18:21:51,489.489 INFO    ] Checking for system updates...
[2026-06-12 18:21:51,510.510 INFO    ] 200
[2026-06-12 18:21:51,511.511 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:21:51,541.541 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 18:21:51,543.543 INFO    ] No update needed
[2026-06-12 18:21:51,544.544 INFO    ] Checking for camera pi updates...
[2026-06-12 18:21:51,563.563 INFO    ] 200
[2026-06-12 18:21:51,565.565 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:21:51,588.588 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 18:21:51,635.635 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 18:21:51,637.637 INFO    ] No camera update needed
[2026-06-12 18:21:51,638.638 INFO    ] Script finished. Safe exiting...
[2026-06-12 18:21:51,640.640 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 18:21:51,643.643 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 18:21:51,646.646 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 18:21:53,684.684 INFO    ] ================================================
[2026-06-12 18:21:53,700.700 INFO    ] Launching Daemon at Fri Jun 12 18:21:53 IST 2026
[2026-06-12 18:21:53,710.710 INFO    ] ================================================
[2026-06-12 18:21:54,055.055 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 18:21:54
[2026-06-12 18:21:54,370.370 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 18:21:54,507.507 INFO    ] Initializing speech engine...
[2026-06-12 18:21:54,517.517 INFO    ] 2026-06-12 18:21:54
[2026-06-12 18:21:54,722.722 INFO    ] 2026-06-12 18:21:54
[2026-06-12 18:21:54,750.750 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 18:21:54,934.934 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 18:21:54,944.944 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 18:21:55,083.083 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 18:21:55,140.140 INFO    ] time= 12/06/2026 18:21:55
[2026-06-12 18:21:55,163.163 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 18:21:55,169.169 INFO    ] Checking for existing commands in stream...
[2026-06-12 18:21:55,236.236 INFO    ] No existing commands found in stream
[2026-06-12 18:22:00,245.245 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 18:22:00,247.247 INFO    ] Waiting 1.77 seconds before fallback handling...
[2026-06-12 18:22:02,364.364 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 18:22:02,366.366 INFO    ] Checking for system updates...
[2026-06-12 18:22:02,394.394 INFO    ] 200
[2026-06-12 18:22:02,396.396 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:22:02,438.438 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 18:22:02,439.439 INFO    ] No update needed
[2026-06-12 18:22:02,441.441 INFO    ] Checking for camera pi updates...
[2026-06-12 18:22:02,460.460 INFO    ] 200
[2026-06-12 18:22:02,461.461 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:22:02,489.489 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 18:22:02,625.625 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 18:22:02,626.626 INFO    ] No camera update needed
[2026-06-12 18:22:02,627.627 INFO    ] Script finished. Safe exiting...
[2026-06-12 18:22:02,628.628 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 18:22:02,632.632 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 18:22:02,634.634 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 18:22:04,673.673 INFO    ] ================================================
[2026-06-12 18:22:04,689.689 INFO    ] Launching Daemon at Fri Jun 12 18:22:04 IST 2026
[2026-06-12 18:22:04,700.700 INFO    ] ================================================
[2026-06-12 18:22:05,034.034 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 18:22:05
[2026-06-12 18:22:05,346.346 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 18:22:05,479.479 INFO    ] Initializing speech engine...
[2026-06-12 18:22:05,483.483 INFO    ] 2026-06-12 18:22:05
[2026-06-12 18:22:05,707.707 INFO    ] 2026-06-12 18:22:05
[2026-06-12 18:22:05,745.745 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 18:22:05,946.946 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 18:22:05,955.955 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 18:22:06,093.093 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 18:22:06,163.163 INFO    ] time= 12/06/2026 18:22:06
[2026-06-12 18:22:06,189.189 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 18:22:06,191.191 INFO    ] Checking for existing commands in stream...
[2026-06-12 18:22:06,266.266 INFO    ] No existing commands found in stream
[2026-06-12 18:22:11,275.275 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 18:22:11,278.278 INFO    ] Waiting 1.01 seconds before fallback handling...
[2026-06-12 18:22:12,689.689 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 18:22:12,691.691 INFO    ] Checking for system updates...
[2026-06-12 18:22:12,711.711 INFO    ] 200
[2026-06-12 18:22:12,713.713 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:22:12,743.743 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 18:22:12,744.744 INFO    ] No update needed
[2026-06-12 18:22:12,745.745 INFO    ] Checking for camera pi updates...
[2026-06-12 18:22:12,764.764 INFO    ] 200
[2026-06-12 18:22:12,765.765 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:22:12,788.788 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 18:22:12,815.815 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 18:22:12,816.816 INFO    ] No camera update needed
[2026-06-12 18:22:12,817.817 INFO    ] Script finished. Safe exiting...
[2026-06-12 18:22:12,819.819 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 18:22:12,822.822 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 18:22:12,824.824 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 18:22:14,863.863 INFO    ] ================================================
[2026-06-12 18:22:14,879.879 INFO    ] Launching Daemon at Fri Jun 12 18:22:14 IST 2026
[2026-06-12 18:22:14,890.890 INFO    ] ================================================
[2026-06-12 18:22:15,218.218 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 18:22:15
[2026-06-12 18:22:15,530.530 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 18:22:15,660.660 INFO    ] Initializing speech engine...
[2026-06-12 18:22:15,664.664 INFO    ] 2026-06-12 18:22:15
[2026-06-12 18:22:15,882.882 INFO    ] 2026-06-12 18:22:15
[2026-06-12 18:22:15,911.911 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 18:22:16,098.098 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 18:22:16,107.107 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 18:22:16,238.238 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 18:22:16,307.307 INFO    ] time= 12/06/2026 18:22:16
[2026-06-12 18:22:16,331.331 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 18:22:16,333.333 INFO    ] Checking for existing commands in stream...
[2026-06-12 18:22:16,405.405 INFO    ] No existing commands found in stream
[2026-06-12 18:22:21,414.414 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 18:22:21,416.416 INFO    ] Waiting 3.43 seconds before fallback handling...
[2026-06-12 18:22:25,246.246 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 18:22:25,248.248 INFO    ] Checking for system updates...
[2026-06-12 18:22:25,269.269 INFO    ] 200
[2026-06-12 18:22:25,271.271 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:22:25,300.300 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 18:22:25,302.302 INFO    ] No update needed
[2026-06-12 18:22:25,303.303 INFO    ] Checking for camera pi updates...
[2026-06-12 18:22:25,323.323 INFO    ] 200
[2026-06-12 18:22:25,324.324 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:22:25,347.347 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 18:22:25,387.387 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 18:22:25,388.388 INFO    ] No camera update needed
[2026-06-12 18:22:25,390.390 INFO    ] Script finished. Safe exiting...
[2026-06-12 18:22:25,391.391 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 18:22:25,394.394 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 18:22:25,397.397 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 18:22:27,437.437 INFO    ] ================================================
[2026-06-12 18:22:27,452.452 INFO    ] Launching Daemon at Fri Jun 12 18:22:27 IST 2026
[2026-06-12 18:22:27,464.464 INFO    ] ================================================
[2026-06-12 18:22:27,814.814 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 18:22:27
[2026-06-12 18:22:28,145.145 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 18:22:28,294.294 INFO    ] Initializing speech engine...
[2026-06-12 18:22:28,299.299 INFO    ] 2026-06-12 18:22:28
[2026-06-12 18:22:28,505.505 INFO    ] 2026-06-12 18:22:28
[2026-06-12 18:22:28,534.534 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 18:22:28,718.718 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 18:22:28,727.727 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 18:22:28,878.878 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 18:22:28,928.928 INFO    ] time= 12/06/2026 18:22:28
[2026-06-12 18:22:28,949.949 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 18:22:28,955.955 INFO    ] Checking for existing commands in stream...
[2026-06-12 18:22:29,046.046 INFO    ] No existing commands found in stream
[2026-06-12 18:22:34,061.061 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 18:22:34,064.064 INFO    ] Waiting 2.26 seconds before fallback handling...
[2026-06-12 18:22:36,691.691 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 18:22:36,693.693 INFO    ] Checking for system updates...
[2026-06-12 18:22:36,713.713 INFO    ] 200
[2026-06-12 18:22:36,714.714 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:22:36,750.750 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 18:22:36,751.751 INFO    ] No update needed
[2026-06-12 18:22:36,752.752 INFO    ] Checking for camera pi updates...
[2026-06-12 18:22:36,773.773 INFO    ] 200
[2026-06-12 18:22:36,775.775 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:22:36,797.797 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 18:22:36,841.841 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 18:22:36,843.843 INFO    ] No camera update needed
[2026-06-12 18:22:36,844.844 INFO    ] Script finished. Safe exiting...
[2026-06-12 18:22:36,845.845 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 18:22:36,848.848 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 18:22:36,851.851 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 18:22:38,889.889 INFO    ] ================================================
[2026-06-12 18:22:38,904.904 INFO    ] Launching Daemon at Fri Jun 12 18:22:38 IST 2026
[2026-06-12 18:22:38,916.916 INFO    ] ================================================
[2026-06-12 18:22:39,265.265 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 18:22:39
[2026-06-12 18:22:39,594.594 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 18:22:39,742.742 INFO    ] Initializing speech engine...
[2026-06-12 18:22:39,747.747 INFO    ] 2026-06-12 18:22:39
[2026-06-12 18:22:39,953.953 INFO    ] 2026-06-12 18:22:39
[2026-06-12 18:22:39,982.982 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 18:22:40,165.165 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 18:22:40,168.168 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 18:22:40,304.304 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 18:22:40,371.371 INFO    ] time= 12/06/2026 18:22:40
[2026-06-12 18:22:40,395.395 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 18:22:40,401.401 INFO    ] Checking for existing commands in stream...
[2026-06-12 18:22:40,468.468 INFO    ] No existing commands found in stream
[2026-06-12 18:22:45,482.482 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 18:22:45,485.485 INFO    ] Waiting 0.27 seconds before fallback handling...
[2026-06-12 18:22:46,138.138 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 18:22:46,139.139 INFO    ] Checking for system updates...
[2026-06-12 18:22:46,160.160 INFO    ] 200
[2026-06-12 18:22:46,161.161 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:22:46,191.191 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 18:22:46,193.193 INFO    ] No update needed
[2026-06-12 18:22:46,194.194 INFO    ] Checking for camera pi updates...
[2026-06-12 18:22:46,213.213 INFO    ] 200
[2026-06-12 18:22:46,214.214 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:22:46,237.237 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 18:22:46,282.282 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 18:22:46,284.284 INFO    ] No camera update needed
[2026-06-12 18:22:46,285.285 INFO    ] Script finished. Safe exiting...
[2026-06-12 18:22:46,286.286 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 18:22:46,289.289 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 18:22:46,292.292 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 18:22:48,330.330 INFO    ] ================================================
[2026-06-12 18:22:48,346.346 INFO    ] Launching Daemon at Fri Jun 12 18:22:48 IST 2026
[2026-06-12 18:22:48,357.357 INFO    ] ================================================
[2026-06-12 18:22:48,682.682 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 18:22:48
[2026-06-12 18:22:48,994.994 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 18:22:49,137.137 INFO    ] Initializing speech engine...
[2026-06-12 18:22:49,143.143 INFO    ] 2026-06-12 18:22:49
[2026-06-12 18:22:49,347.347 INFO    ] 2026-06-12 18:22:49
[2026-06-12 18:22:49,377.377 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 18:22:49,563.563 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 18:22:49,572.572 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 18:22:49,718.718 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 18:22:49,771.771 INFO    ] time= 12/06/2026 18:22:49
[2026-06-12 18:22:49,794.794 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 18:22:49,801.801 INFO    ] Checking for existing commands in stream...
[2026-06-12 18:22:49,868.868 INFO    ] No existing commands found in stream
[2026-06-12 18:22:54,877.877 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 18:22:54,880.880 INFO    ] Waiting 0.88 seconds before fallback handling...
[2026-06-12 18:22:56,175.175 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 18:22:56,177.177 INFO    ] Checking for system updates...
[2026-06-12 18:22:56,213.213 INFO    ] 200
[2026-06-12 18:22:56,215.215 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:22:56,268.268 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 18:22:56,270.270 INFO    ] No update needed
[2026-06-12 18:22:56,273.273 INFO    ] Checking for camera pi updates...
[2026-06-12 18:22:56,306.306 INFO    ] 200
[2026-06-12 18:22:56,309.309 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:22:56,349.349 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 18:22:56,397.397 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 18:22:56,399.399 INFO    ] No camera update needed
[2026-06-12 18:22:56,402.402 INFO    ] Script finished. Safe exiting...
[2026-06-12 18:22:56,404.404 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 18:22:56,410.410 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 18:22:56,415.415 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 18:22:58,455.455 INFO    ] ================================================
[2026-06-12 18:22:58,470.470 INFO    ] Launching Daemon at Fri Jun 12 18:22:58 IST 2026
[2026-06-12 18:22:58,481.481 INFO    ] ================================================
[2026-06-12 18:22:58,817.817 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 18:22:58
[2026-06-12 18:22:59,131.131 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 18:22:59,263.263 INFO    ] Initializing speech engine...
[2026-06-12 18:22:59,266.266 INFO    ] 2026-06-12 18:22:59
[2026-06-12 18:22:59,483.483 INFO    ] 2026-06-12 18:22:59
[2026-06-12 18:22:59,511.511 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 18:22:59,698.698 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 18:22:59,706.706 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 18:22:59,856.856 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 18:22:59,904.904 INFO    ] time= 12/06/2026 18:22:59
[2026-06-12 18:22:59,926.926 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 18:22:59,932.932 INFO    ] Checking for existing commands in stream...
[2026-06-12 18:23:00,002.002 INFO    ] No existing commands found in stream
[2026-06-12 18:23:05,011.011 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 18:23:05,014.014 INFO    ] Waiting 1.81 seconds before fallback handling...
[2026-06-12 18:23:07,178.178 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 18:23:07,179.179 INFO    ] Checking for system updates...
[2026-06-12 18:23:07,206.206 INFO    ] 200
[2026-06-12 18:23:07,207.207 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:23:07,238.238 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 18:23:07,239.239 INFO    ] No update needed
[2026-06-12 18:23:07,241.241 INFO    ] Checking for camera pi updates...
[2026-06-12 18:23:07,260.260 INFO    ] 200
[2026-06-12 18:23:07,261.261 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:23:07,284.284 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 18:23:07,337.337 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 18:23:07,339.339 INFO    ] No camera update needed
[2026-06-12 18:23:07,340.340 INFO    ] Script finished. Safe exiting...
[2026-06-12 18:23:07,341.341 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 18:23:07,344.344 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 18:23:07,347.347 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 18:23:09,371.371 INFO    ] ================================================
[2026-06-12 18:23:09,380.380 INFO    ] Launching Daemon at Fri Jun 12 18:23:09 IST 2026
[2026-06-12 18:23:09,387.387 INFO    ] ================================================
[2026-06-12 18:23:09,714.714 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 18:23:09
[2026-06-12 18:23:10,033.033 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 18:23:10,164.164 INFO    ] Initializing speech engine...
[2026-06-12 18:23:10,172.172 INFO    ] 2026-06-12 18:23:10
[2026-06-12 18:23:10,393.393 INFO    ] 2026-06-12 18:23:10
[2026-06-12 18:23:10,428.428 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 18:23:10,598.598 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 18:23:10,629.629 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 18:23:10,770.770 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 18:23:10,815.815 INFO    ] time= 12/06/2026 18:23:10
[2026-06-12 18:23:10,860.860 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 18:23:10,878.878 INFO    ] Checking for existing commands in stream...
[2026-06-12 18:23:10,952.952 INFO    ] No existing commands found in stream
[2026-06-12 18:23:15,963.963 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 18:23:15,966.966 INFO    ] Waiting 2.49 seconds before fallback handling...
[2026-06-12 18:23:18,860.860 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 18:23:18,862.862 INFO    ] Checking for system updates...
[2026-06-12 18:23:18,882.882 INFO    ] 200
[2026-06-12 18:23:18,883.883 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:23:18,913.913 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 18:23:18,914.914 INFO    ] No update needed
[2026-06-12 18:23:18,915.915 INFO    ] Checking for camera pi updates...
[2026-06-12 18:23:18,934.934 INFO    ] 200
[2026-06-12 18:23:18,936.936 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:23:18,958.958 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 18:23:18,984.984 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 18:23:18,985.985 INFO    ] No camera update needed
[2026-06-12 18:23:18,986.986 INFO    ] Script finished. Safe exiting...
[2026-06-12 18:23:18,988.988 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 18:23:18,991.991 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 18:23:18,993.993 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 18:23:21,032.032 INFO    ] ================================================
[2026-06-12 18:23:21,047.047 INFO    ] Launching Daemon at Fri Jun 12 18:23:21 IST 2026
[2026-06-12 18:23:21,058.058 INFO    ] ================================================
[2026-06-12 18:23:21,434.434 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 18:23:21
[2026-06-12 18:23:21,766.766 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 18:23:21,917.917 INFO    ] Initializing speech engine...
[2026-06-12 18:23:21,923.923 INFO    ] 2026-06-12 18:23:21
[2026-06-12 18:23:22,131.131 INFO    ] 2026-06-12 18:23:22
[2026-06-12 18:23:22,161.161 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 18:23:22,349.349 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 18:23:22,358.358 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 18:23:22,496.496 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 18:23:22,560.560 INFO    ] time= 12/06/2026 18:23:22
[2026-06-12 18:23:22,583.583 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 18:23:22,590.590 INFO    ] Checking for existing commands in stream...
[2026-06-12 18:23:22,658.658 INFO    ] No existing commands found in stream
[2026-06-12 18:23:27,671.671 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 18:23:27,673.673 INFO    ] Waiting 0.27 seconds before fallback handling...
[2026-06-12 18:23:28,257.257 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 18:23:28,258.258 INFO    ] Checking for system updates...
[2026-06-12 18:23:28,288.288 INFO    ] 200
[2026-06-12 18:23:28,289.289 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_HEALTH_CHECK"}
[2026-06-12 18:23:28,291.291 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping update check
[2026-06-12 18:23:28,292.292 INFO    ] Checking for camera pi updates...
[2026-06-12 18:23:28,314.314 INFO    ] 200
[2026-06-12 18:23:28,316.316 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_HEALTH_CHECK"}
[2026-06-12 18:23:28,317.317 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping camera update check
[2026-06-12 18:23:28,319.319 INFO    ] Script finished. Safe exiting...
[2026-06-12 18:23:28,321.321 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 18:23:28,324.324 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 18:23:28,327.327 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 18:23:30,358.358 INFO    ] ================================================
[2026-06-12 18:23:30,374.374 INFO    ] Launching Daemon at Fri Jun 12 18:23:30 IST 2026
[2026-06-12 18:23:30,385.385 INFO    ] ================================================
[2026-06-12 18:23:30,749.749 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 18:23:30
[2026-06-12 18:23:31,061.061 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 18:23:31,192.192 INFO    ] Initializing speech engine...
[2026-06-12 18:23:31,195.195 INFO    ] 2026-06-12 18:23:31
[2026-06-12 18:23:31,412.412 INFO    ] 2026-06-12 18:23:31
[2026-06-12 18:23:31,440.440 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 18:23:31,591.591 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 18:23:31,604.604 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 18:23:31,785.785 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 18:23:31,803.803 INFO    ] time= 12/06/2026 18:23:31
[2026-06-12 18:23:31,860.860 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 18:23:31,903.903 INFO    ] Checking for existing commands in stream...
[2026-06-12 18:23:32,001.001 INFO    ] No existing commands found in stream
[2026-06-12 18:23:37,012.012 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 18:23:37,015.015 INFO    ] Waiting 3.21 seconds before fallback handling...
[2026-06-12 18:23:40,627.627 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 18:23:40,629.629 INFO    ] Checking for system updates...
[2026-06-12 18:23:40,649.649 INFO    ] 200
[2026-06-12 18:23:40,650.650 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:23:40,680.680 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 18:23:40,681.681 INFO    ] No update needed
[2026-06-12 18:23:40,683.683 INFO    ] Checking for camera pi updates...
[2026-06-12 18:23:40,702.702 INFO    ] 200
[2026-06-12 18:23:40,703.703 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:23:40,726.726 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 18:23:40,789.789 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 18:23:40,790.790 INFO    ] No camera update needed
[2026-06-12 18:23:40,792.792 INFO    ] Script finished. Safe exiting...
[2026-06-12 18:23:40,793.793 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 18:23:40,796.796 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 18:23:40,798.798 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 18:23:42,836.836 INFO    ] ================================================
[2026-06-12 18:23:42,851.851 INFO    ] Launching Daemon at Fri Jun 12 18:23:42 IST 2026
[2026-06-12 18:23:42,862.862 INFO    ] ================================================
[2026-06-12 18:23:43,203.203 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 18:23:43
[2026-06-12 18:23:43,520.520 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 18:23:43,653.653 INFO    ] Initializing speech engine...
[2026-06-12 18:23:43,656.656 INFO    ] 2026-06-12 18:23:43
[2026-06-12 18:23:43,873.873 INFO    ] 2026-06-12 18:23:43
[2026-06-12 18:23:43,901.901 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 18:23:44,086.086 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 18:23:44,096.096 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 18:23:44,234.234 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 18:23:44,291.291 INFO    ] time= 12/06/2026 18:23:44
[2026-06-12 18:23:44,315.315 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 18:23:44,321.321 INFO    ] Checking for existing commands in stream...
[2026-06-12 18:23:44,389.389 INFO    ] No existing commands found in stream
[2026-06-12 18:23:49,408.408 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 18:23:49,411.411 INFO    ] Waiting 1.00 seconds before fallback handling...
[2026-06-12 18:23:50,780.780 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 18:23:50,782.782 INFO    ] Checking for system updates...
[2026-06-12 18:23:50,803.803 INFO    ] 200
[2026-06-12 18:23:50,804.804 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:23:50,836.836 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 18:23:50,838.838 INFO    ] No update needed
[2026-06-12 18:23:50,839.839 INFO    ] Checking for camera pi updates...
[2026-06-12 18:23:50,859.859 INFO    ] 200
[2026-06-12 18:23:50,860.860 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:23:50,885.885 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 18:23:50,934.934 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 18:23:50,936.936 INFO    ] No camera update needed
[2026-06-12 18:23:50,937.937 INFO    ] Script finished. Safe exiting...
[2026-06-12 18:23:50,938.938 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 18:23:50,941.941 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 18:23:50,944.944 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 18:23:52,982.982 INFO    ] ================================================
[2026-06-12 18:23:53,998.998 INFO    ] Launching Daemon at Fri Jun 12 18:23:52 IST 2026
[2026-06-12 18:23:53,009.009 INFO    ] ================================================
[2026-06-12 18:23:53,348.348 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 18:23:53
[2026-06-12 18:23:53,665.665 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 18:23:53,806.806 INFO    ] Initializing speech engine...
[2026-06-12 18:23:53,814.814 INFO    ] 2026-06-12 18:23:53
[2026-06-12 18:23:54,027.027 INFO    ] 2026-06-12 18:23:54
[2026-06-12 18:23:54,056.056 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 18:23:54,240.240 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 18:23:54,251.251 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 18:23:54,378.378 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 18:23:54,434.434 INFO    ] time= 12/06/2026 18:23:54
[2026-06-12 18:23:54,471.471 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 18:23:54,473.473 INFO    ] Checking for existing commands in stream...
[2026-06-12 18:23:54,568.568 INFO    ] No existing commands found in stream
[2026-06-12 18:23:59,577.577 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 18:23:59,580.580 INFO    ] Waiting 2.83 seconds before fallback handling...
[2026-06-12 18:24:02,777.777 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 18:24:02,780.780 INFO    ] Checking for system updates...
[2026-06-12 18:24:02,815.815 INFO    ] 200
[2026-06-12 18:24:02,818.818 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:24:02,870.870 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 18:24:02,873.873 INFO    ] No update needed
[2026-06-12 18:24:02,875.875 INFO    ] Checking for camera pi updates...
[2026-06-12 18:24:02,909.909 INFO    ] 200
[2026-06-12 18:24:02,911.911 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:24:02,940.940 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 18:24:02,975.975 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 18:24:02,977.977 INFO    ] No camera update needed
[2026-06-12 18:24:02,978.978 INFO    ] Script finished. Safe exiting...
[2026-06-12 18:24:02,979.979 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 18:24:02,982.982 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 18:24:02,985.985 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 18:24:05,022.022 INFO    ] ================================================
[2026-06-12 18:24:05,038.038 INFO    ] Launching Daemon at Fri Jun 12 18:24:05 IST 2026
[2026-06-12 18:24:05,049.049 INFO    ] ================================================
[2026-06-12 18:24:05,419.419 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 18:24:05
[2026-06-12 18:24:05,731.731 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 18:24:05,862.862 INFO    ] Initializing speech engine...
[2026-06-12 18:24:05,865.865 INFO    ] 2026-06-12 18:24:05
[2026-06-12 18:24:06,084.084 INFO    ] 2026-06-12 18:24:06
[2026-06-12 18:24:06,113.113 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 18:24:06,300.300 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 18:24:06,308.308 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 18:24:06,436.436 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 18:24:06,498.498 INFO    ] time= 12/06/2026 18:24:06
[2026-06-12 18:24:06,532.532 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 18:24:06,534.534 INFO    ] Checking for existing commands in stream...
[2026-06-12 18:24:06,606.606 INFO    ] No existing commands found in stream
[2026-06-12 18:24:11,620.620 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 18:24:11,623.623 INFO    ] Waiting 2.01 seconds before fallback handling...
[2026-06-12 18:24:14,009.009 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 18:24:14,011.011 INFO    ] Checking for system updates...
[2026-06-12 18:24:14,031.031 INFO    ] 200
[2026-06-12 18:24:14,032.032 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:24:14,062.062 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 18:24:14,063.063 INFO    ] No update needed
[2026-06-12 18:24:14,064.064 INFO    ] Checking for camera pi updates...
[2026-06-12 18:24:14,086.086 INFO    ] 200
[2026-06-12 18:24:14,087.087 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:24:14,113.113 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 18:24:14,250.250 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 18:24:14,252.252 INFO    ] No camera update needed
[2026-06-12 18:24:14,253.253 INFO    ] Script finished. Safe exiting...
[2026-06-12 18:24:14,254.254 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 18:24:14,257.257 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 18:24:14,260.260 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 18:24:16,298.298 INFO    ] ================================================
[2026-06-12 18:24:16,313.313 INFO    ] Launching Daemon at Fri Jun 12 18:24:16 IST 2026
[2026-06-12 18:24:16,325.325 INFO    ] ================================================
[2026-06-12 18:24:16,679.679 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 18:24:16
[2026-06-12 18:24:16,993.993 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 18:24:17,122.122 INFO    ] Initializing speech engine...
[2026-06-12 18:24:17,126.126 INFO    ] 2026-06-12 18:24:17
[2026-06-12 18:24:17,344.344 INFO    ] 2026-06-12 18:24:17
[2026-06-12 18:24:17,373.373 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 18:24:17,558.558 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 18:24:17,561.561 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 18:24:17,692.692 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 18:24:17,743.743 INFO    ] time= 12/06/2026 18:24:17
[2026-06-12 18:24:17,791.791 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 18:24:17,798.798 INFO    ] Checking for existing commands in stream...
[2026-06-12 18:24:17,865.865 INFO    ] No existing commands found in stream
[2026-06-12 18:24:22,879.879 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 18:24:22,882.882 INFO    ] Waiting 2.54 seconds before fallback handling...
[2026-06-12 18:24:25,814.814 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 18:24:25,816.816 INFO    ] Checking for system updates...
[2026-06-12 18:24:25,836.836 INFO    ] 200
[2026-06-12 18:24:25,838.838 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:24:25,869.869 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 18:24:25,870.870 INFO    ] No update needed
[2026-06-12 18:24:25,872.872 INFO    ] Checking for camera pi updates...
[2026-06-12 18:24:25,891.891 INFO    ] 200
[2026-06-12 18:24:25,893.893 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:24:25,917.917 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 18:24:25,942.942 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 18:24:25,944.944 INFO    ] No camera update needed
[2026-06-12 18:24:25,945.945 INFO    ] Script finished. Safe exiting...
[2026-06-12 18:24:25,946.946 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 18:24:25,950.950 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 18:24:25,953.953 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 18:24:27,990.990 INFO    ] ================================================
[2026-06-12 18:24:28,006.006 INFO    ] Launching Daemon at Fri Jun 12 18:24:28 IST 2026
[2026-06-12 18:24:28,018.018 INFO    ] ================================================
[2026-06-12 18:24:28,376.376 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 18:24:28
[2026-06-12 18:24:28,692.692 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 18:24:28,837.837 INFO    ] Initializing speech engine...
[2026-06-12 18:24:28,843.843 INFO    ] 2026-06-12 18:24:28
[2026-06-12 18:24:29,048.048 INFO    ] 2026-06-12 18:24:29
[2026-06-12 18:24:29,078.078 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 18:24:29,261.261 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 18:24:29,265.265 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 18:24:29,421.421 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 18:24:29,475.475 INFO    ] time= 12/06/2026 18:24:29
[2026-06-12 18:24:29,491.491 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 18:24:29,497.497 INFO    ] Checking for existing commands in stream...
[2026-06-12 18:24:29,564.564 INFO    ] No existing commands found in stream
[2026-06-12 18:24:34,578.578 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 18:24:34,581.581 INFO    ] Waiting 0.96 seconds before fallback handling...
[2026-06-12 18:24:35,954.954 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 18:24:35,955.955 INFO    ] Checking for system updates...
[2026-06-12 18:24:35,977.977 INFO    ] 200
[2026-06-12 18:24:35,979.979 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:24:36,014.014 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 18:24:36,016.016 INFO    ] No update needed
[2026-06-12 18:24:36,017.017 INFO    ] Checking for camera pi updates...
[2026-06-12 18:24:36,041.041 INFO    ] 200
[2026-06-12 18:24:36,042.042 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:24:36,065.065 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 18:24:36,115.115 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 18:24:36,117.117 INFO    ] No camera update needed
[2026-06-12 18:24:36,118.118 INFO    ] Script finished. Safe exiting...
[2026-06-12 18:24:36,119.119 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 18:24:36,123.123 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 18:24:36,126.126 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 18:24:38,164.164 INFO    ] ================================================
[2026-06-12 18:24:38,180.180 INFO    ] Launching Daemon at Fri Jun 12 18:24:38 IST 2026
[2026-06-12 18:24:38,191.191 INFO    ] ================================================
[2026-06-12 18:24:38,564.564 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 18:24:38
[2026-06-12 18:24:38,883.883 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 18:24:39,013.013 INFO    ] Initializing speech engine...
[2026-06-12 18:24:39,021.021 INFO    ] 2026-06-12 18:24:39
[2026-06-12 18:24:39,234.234 INFO    ] 2026-06-12 18:24:39
[2026-06-12 18:24:39,261.261 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 18:24:39,445.445 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 18:24:39,455.455 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 18:24:39,592.592 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 18:24:39,649.649 INFO    ] time= 12/06/2026 18:24:39
[2026-06-12 18:24:39,672.672 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 18:24:39,678.678 INFO    ] Checking for existing commands in stream...
[2026-06-12 18:24:39,745.745 INFO    ] No existing commands found in stream
[2026-06-12 18:24:44,758.758 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 18:24:44,759.759 INFO    ] Waiting 0.25 seconds before fallback handling...
[2026-06-12 18:24:45,425.425 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 18:24:45,428.428 INFO    ] Checking for system updates...
[2026-06-12 18:24:45,468.468 INFO    ] 200
[2026-06-12 18:24:45,471.471 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:24:45,524.524 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 18:24:45,526.526 INFO    ] No update needed
[2026-06-12 18:24:45,528.528 INFO    ] Checking for camera pi updates...
[2026-06-12 18:24:45,562.562 INFO    ] 200
[2026-06-12 18:24:45,564.564 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:24:45,609.609 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 18:24:45,654.654 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 18:24:45,657.657 INFO    ] No camera update needed
[2026-06-12 18:24:45,659.659 INFO    ] Script finished. Safe exiting...
[2026-06-12 18:24:45,662.662 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 18:24:45,667.667 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 18:24:45,672.672 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 18:24:47,713.713 INFO    ] ================================================
[2026-06-12 18:24:47,728.728 INFO    ] Launching Daemon at Fri Jun 12 18:24:47 IST 2026
[2026-06-12 18:24:47,740.740 INFO    ] ================================================
[2026-06-12 18:24:48,085.085 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 18:24:48
[2026-06-12 18:24:48,401.401 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 18:24:48,534.534 INFO    ] Initializing speech engine...
[2026-06-12 18:24:48,547.547 INFO    ] 2026-06-12 18:24:48
[2026-06-12 18:24:48,753.753 INFO    ] 2026-06-12 18:24:48
[2026-06-12 18:24:48,781.781 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 18:24:48,964.964 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 18:24:48,973.973 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 18:24:49,123.123 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 18:24:49,171.171 INFO    ] time= 12/06/2026 18:24:49
[2026-06-12 18:24:49,193.193 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 18:24:49,199.199 INFO    ] Checking for existing commands in stream...
[2026-06-12 18:24:49,265.265 INFO    ] No existing commands found in stream
[2026-06-12 18:24:54,279.279 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 18:24:54,282.282 INFO    ] Waiting 2.20 seconds before fallback handling...
[2026-06-12 18:24:56,861.861 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 18:24:56,863.863 INFO    ] Checking for system updates...
[2026-06-12 18:24:56,885.885 INFO    ] 200
[2026-06-12 18:24:56,887.887 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:24:56,919.919 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 18:24:56,921.921 INFO    ] No update needed
[2026-06-12 18:24:56,922.922 INFO    ] Checking for camera pi updates...
[2026-06-12 18:24:56,944.944 INFO    ] 200
[2026-06-12 18:24:56,946.946 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:24:56,969.969 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 18:24:57,041.041 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 18:24:57,042.042 INFO    ] No camera update needed
[2026-06-12 18:24:57,044.044 INFO    ] Script finished. Safe exiting...
[2026-06-12 18:24:57,045.045 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 18:24:57,048.048 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 18:24:57,051.051 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 18:24:59,088.088 INFO    ] ================================================
[2026-06-12 18:24:59,103.103 INFO    ] Launching Daemon at Fri Jun 12 18:24:59 IST 2026
[2026-06-12 18:24:59,115.115 INFO    ] ================================================
[2026-06-12 18:24:59,450.450 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 18:24:59
[2026-06-12 18:24:59,763.763 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 18:24:59,896.896 INFO    ] Initializing speech engine...
[2026-06-12 18:24:59,908.908 INFO    ] 2026-06-12 18:24:59
[2026-06-12 18:25:00,117.117 INFO    ] 2026-06-12 18:25:00
[2026-06-12 18:25:00,145.145 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 18:25:00,332.332 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 18:25:00,341.341 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 18:25:00,488.488 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 18:25:00,542.542 INFO    ] time= 12/06/2026 18:25:00
[2026-06-12 18:25:00,564.564 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 18:25:00,570.570 INFO    ] Checking for existing commands in stream...
[2026-06-12 18:25:00,638.638 INFO    ] No existing commands found in stream
[2026-06-12 18:25:05,642.642 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 18:25:05,645.645 INFO    ] Waiting 1.43 seconds before fallback handling...
[2026-06-12 18:25:07,471.471 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 18:25:07,472.472 INFO    ] Checking for system updates...
[2026-06-12 18:25:07,496.496 INFO    ] 200
[2026-06-12 18:25:07,497.497 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:25:07,527.527 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 18:25:07,529.529 INFO    ] No update needed
[2026-06-12 18:25:07,530.530 INFO    ] Checking for camera pi updates...
[2026-06-12 18:25:07,549.549 INFO    ] 200
[2026-06-12 18:25:07,550.550 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:25:07,573.573 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 18:25:07,623.623 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 18:25:07,625.625 INFO    ] No camera update needed
[2026-06-12 18:25:07,626.626 INFO    ] Script finished. Safe exiting...
[2026-06-12 18:25:07,627.627 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 18:25:07,630.630 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 18:25:07,633.633 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 18:25:09,672.672 INFO    ] ================================================
[2026-06-12 18:25:09,689.689 INFO    ] Launching Daemon at Fri Jun 12 18:25:09 IST 2026
[2026-06-12 18:25:09,701.701 INFO    ] ================================================
[2026-06-12 18:25:10,052.052 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 18:25:10
[2026-06-12 18:25:10,364.364 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 18:25:10,494.494 INFO    ] Initializing speech engine...
[2026-06-12 18:25:10,497.497 INFO    ] 2026-06-12 18:25:10
[2026-06-12 18:25:10,712.712 INFO    ] 2026-06-12 18:25:10
[2026-06-12 18:25:10,741.741 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 18:25:10,925.925 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 18:25:10,934.934 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 18:25:11,079.079 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 18:25:11,132.132 INFO    ] time= 12/06/2026 18:25:11
[2026-06-12 18:25:11,155.155 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 18:25:11,162.162 INFO    ] Checking for existing commands in stream...
[2026-06-12 18:25:11,228.228 INFO    ] No existing commands found in stream
[2026-06-12 18:25:16,242.242 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 18:25:16,245.245 INFO    ] Waiting 3.56 seconds before fallback handling...
[2026-06-12 18:25:20,183.183 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 18:25:20,184.184 INFO    ] Checking for system updates...
[2026-06-12 18:25:20,204.204 INFO    ] 200
[2026-06-12 18:25:20,206.206 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:25:20,237.237 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 18:25:20,239.239 INFO    ] No update needed
[2026-06-12 18:25:20,240.240 INFO    ] Checking for camera pi updates...
[2026-06-12 18:25:20,259.259 INFO    ] 200
[2026-06-12 18:25:20,261.261 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:25:20,283.283 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 18:25:20,323.323 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 18:25:20,325.325 INFO    ] No camera update needed
[2026-06-12 18:25:20,326.326 INFO    ] Script finished. Safe exiting...
[2026-06-12 18:25:20,327.327 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 18:25:20,330.330 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 18:25:20,334.334 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 18:25:22,372.372 INFO    ] ================================================
[2026-06-12 18:25:22,388.388 INFO    ] Launching Daemon at Fri Jun 12 18:25:22 IST 2026
[2026-06-12 18:25:22,399.399 INFO    ] ================================================
[2026-06-12 18:25:22,784.784 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 18:25:22
[2026-06-12 18:25:23,120.120 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 18:25:23,266.266 INFO    ] Initializing speech engine...
[2026-06-12 18:25:23,272.272 INFO    ] 2026-06-12 18:25:23
[2026-06-12 18:25:23,476.476 INFO    ] 2026-06-12 18:25:23
[2026-06-12 18:25:23,505.505 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 18:25:23,689.689 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 18:25:23,698.698 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 18:25:23,847.847 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 18:25:23,896.896 INFO    ] time= 12/06/2026 18:25:23
[2026-06-12 18:25:23,917.917 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 18:25:23,923.923 INFO    ] Checking for existing commands in stream...
[2026-06-12 18:25:23,990.990 INFO    ] No existing commands found in stream
[2026-06-12 18:25:29,022.022 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 18:25:29,025.025 INFO    ] Waiting 1.18 seconds before fallback handling...
[2026-06-12 18:25:30,627.627 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 18:25:30,628.628 INFO    ] Checking for system updates...
[2026-06-12 18:25:30,649.649 INFO    ] 200
[2026-06-12 18:25:30,651.651 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:25:30,682.682 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 18:25:30,684.684 INFO    ] No update needed
[2026-06-12 18:25:30,685.685 INFO    ] Checking for camera pi updates...
[2026-06-12 18:25:30,704.704 INFO    ] 200
[2026-06-12 18:25:30,706.706 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:25:30,730.730 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 18:25:30,769.769 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 18:25:30,770.770 INFO    ] No camera update needed
[2026-06-12 18:25:30,771.771 INFO    ] Script finished. Safe exiting...
[2026-06-12 18:25:30,773.773 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 18:25:30,776.776 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 18:25:30,778.778 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 18:25:32,809.809 INFO    ] ================================================
[2026-06-12 18:25:32,825.825 INFO    ] Launching Daemon at Fri Jun 12 18:25:32 IST 2026
[2026-06-12 18:25:32,836.836 INFO    ] ================================================
[2026-06-12 18:25:33,191.191 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 18:25:33
[2026-06-12 18:25:33,503.503 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 18:25:33,633.633 INFO    ] Initializing speech engine...
[2026-06-12 18:25:33,641.641 INFO    ] 2026-06-12 18:25:33
[2026-06-12 18:25:33,851.851 INFO    ] 2026-06-12 18:25:33
[2026-06-12 18:25:33,880.880 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 18:25:34,064.064 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 18:25:34,074.074 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 18:25:34,217.217 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 18:25:34,270.270 INFO    ] time= 12/06/2026 18:25:34
[2026-06-12 18:25:34,293.293 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 18:25:34,298.298 INFO    ] Checking for existing commands in stream...
[2026-06-12 18:25:34,365.365 INFO    ] No existing commands found in stream
[2026-06-12 18:25:39,374.374 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 18:25:39,377.377 INFO    ] Waiting 0.80 seconds before fallback handling...
[2026-06-12 18:25:40,566.566 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 18:25:40,568.568 INFO    ] Checking for system updates...
[2026-06-12 18:25:40,588.588 INFO    ] 200
[2026-06-12 18:25:40,589.589 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:25:40,619.619 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 18:25:40,620.620 INFO    ] No update needed
[2026-06-12 18:25:40,622.622 INFO    ] Checking for camera pi updates...
[2026-06-12 18:25:40,641.641 INFO    ] 200
[2026-06-12 18:25:40,643.643 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:25:40,665.665 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 18:25:40,709.709 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 18:25:40,710.710 INFO    ] No camera update needed
[2026-06-12 18:25:40,712.712 INFO    ] Script finished. Safe exiting...
[2026-06-12 18:25:40,713.713 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 18:25:40,716.716 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 18:25:40,718.718 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 18:25:42,756.756 INFO    ] ================================================
[2026-06-12 18:25:42,772.772 INFO    ] Launching Daemon at Fri Jun 12 18:25:42 IST 2026
[2026-06-12 18:25:42,783.783 INFO    ] ================================================
[2026-06-12 18:25:43,130.130 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 18:25:43
[2026-06-12 18:25:43,447.447 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 18:25:43,578.578 INFO    ] Initializing speech engine...
[2026-06-12 18:25:43,582.582 INFO    ] 2026-06-12 18:25:43
[2026-06-12 18:25:43,846.846 INFO    ] 2026-06-12 18:25:43
[2026-06-12 18:25:43,876.876 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 18:25:44,059.059 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 18:25:44,068.068 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 18:25:44,196.196 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 18:25:44,257.257 INFO    ] time= 12/06/2026 18:25:44
[2026-06-12 18:25:44,289.289 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 18:25:44,291.291 INFO    ] Checking for existing commands in stream...
[2026-06-12 18:25:44,362.362 INFO    ] No existing commands found in stream
[2026-06-12 18:25:49,376.376 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 18:25:49,379.379 INFO    ] Waiting 2.86 seconds before fallback handling...
[2026-06-12 18:25:52,617.617 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 18:25:52,619.619 INFO    ] Checking for system updates...
[2026-06-12 18:25:52,639.639 INFO    ] 200
[2026-06-12 18:25:52,641.641 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:25:52,670.670 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 18:25:52,672.672 INFO    ] No update needed
[2026-06-12 18:25:52,673.673 INFO    ] Checking for camera pi updates...
[2026-06-12 18:25:52,693.693 INFO    ] 200
[2026-06-12 18:25:52,695.695 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:25:52,718.718 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 18:25:52,764.764 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 18:25:52,766.766 INFO    ] No camera update needed
[2026-06-12 18:25:52,767.767 INFO    ] Script finished. Safe exiting...
[2026-06-12 18:25:52,768.768 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 18:25:52,771.771 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 18:25:52,774.774 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 18:25:54,813.813 INFO    ] ================================================
[2026-06-12 18:25:54,829.829 INFO    ] Launching Daemon at Fri Jun 12 18:25:54 IST 2026
[2026-06-12 18:25:54,840.840 INFO    ] ================================================
[2026-06-12 18:25:55,190.190 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 18:25:55
[2026-06-12 18:25:55,526.526 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 18:25:55,670.670 INFO    ] Initializing speech engine...
[2026-06-12 18:25:55,680.680 INFO    ] 2026-06-12 18:25:55
[2026-06-12 18:25:55,887.887 INFO    ] 2026-06-12 18:25:55
[2026-06-12 18:25:55,917.917 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 18:25:56,102.102 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 18:25:56,111.111 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 18:25:56,255.255 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 18:25:56,307.307 INFO    ] time= 12/06/2026 18:25:56
[2026-06-12 18:25:56,329.329 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 18:25:56,336.336 INFO    ] Checking for existing commands in stream...
[2026-06-12 18:25:56,402.402 INFO    ] No existing commands found in stream
[2026-06-12 18:26:01,412.412 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 18:26:01,415.415 INFO    ] Waiting 0.18 seconds before fallback handling...
[2026-06-12 18:26:01,964.964 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 18:26:01,966.966 INFO    ] Checking for system updates...
[2026-06-12 18:26:01,993.993 INFO    ] 200
[2026-06-12 18:26:01,994.994 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:26:02,041.041 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 18:26:02,043.043 INFO    ] No update needed
[2026-06-12 18:26:02,046.046 INFO    ] Checking for camera pi updates...
[2026-06-12 18:26:02,072.072 INFO    ] 200
[2026-06-12 18:26:02,074.074 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:26:02,104.104 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 18:26:02,136.136 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 18:26:02,138.138 INFO    ] No camera update needed
[2026-06-12 18:26:02,140.140 INFO    ] Script finished. Safe exiting...
[2026-06-12 18:26:02,142.142 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 18:26:02,146.146 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 18:26:02,150.150 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 18:26:04,190.190 INFO    ] ================================================
[2026-06-12 18:26:04,205.205 INFO    ] Launching Daemon at Fri Jun 12 18:26:04 IST 2026
[2026-06-12 18:26:04,217.217 INFO    ] ================================================
[2026-06-12 18:26:04,553.553 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 18:26:04
[2026-06-12 18:26:04,872.872 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 18:26:05,006.006 INFO    ] Initializing speech engine...
[2026-06-12 18:26:05,011.011 INFO    ] 2026-06-12 18:26:05
[2026-06-12 18:26:05,240.240 INFO    ] 2026-06-12 18:26:05
[2026-06-12 18:26:05,270.270 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 18:26:05,402.402 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 18:26:05,455.455 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 18:26:05,608.608 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 18:26:05,671.671 INFO    ] time= 12/06/2026 18:26:05
[2026-06-12 18:26:05,717.717 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 18:26:05,726.726 INFO    ] Checking for existing commands in stream...
[2026-06-12 18:26:05,827.827 INFO    ] No existing commands found in stream
[2026-06-12 18:26:10,836.836 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 18:26:10,838.838 INFO    ] Waiting 1.48 seconds before fallback handling...
[2026-06-12 18:26:12,694.694 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 18:26:12,695.695 INFO    ] Checking for system updates...
[2026-06-12 18:26:12,717.717 INFO    ] 200
[2026-06-12 18:26:12,718.718 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:26:12,748.748 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 18:26:12,749.749 INFO    ] No update needed
[2026-06-12 18:26:12,751.751 INFO    ] Checking for camera pi updates...
[2026-06-12 18:26:12,772.772 INFO    ] 200
[2026-06-12 18:26:12,774.774 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:26:12,796.796 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 18:26:12,844.844 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 18:26:12,845.845 INFO    ] No camera update needed
[2026-06-12 18:26:12,846.846 INFO    ] Script finished. Safe exiting...
[2026-06-12 18:26:12,847.847 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 18:26:12,851.851 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 18:26:12,853.853 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 18:26:14,891.891 INFO    ] ================================================
[2026-06-12 18:26:14,906.906 INFO    ] Launching Daemon at Fri Jun 12 18:26:14 IST 2026
[2026-06-12 18:26:14,916.916 INFO    ] ================================================
[2026-06-12 18:26:15,268.268 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 18:26:15
[2026-06-12 18:26:15,580.580 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 18:26:15,711.711 INFO    ] Initializing speech engine...
[2026-06-12 18:26:15,714.714 INFO    ] 2026-06-12 18:26:15
[2026-06-12 18:26:15,931.931 INFO    ] 2026-06-12 18:26:15
[2026-06-12 18:26:15,959.959 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 18:26:16,143.143 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 18:26:16,150.150 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 18:26:16,280.280 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 18:26:16,346.346 INFO    ] time= 12/06/2026 18:26:16
[2026-06-12 18:26:16,370.370 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 18:26:16,376.376 INFO    ] Checking for existing commands in stream...
[2026-06-12 18:26:16,466.466 INFO    ] No existing commands found in stream
[2026-06-12 18:26:21,475.475 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 18:26:21,477.477 INFO    ] Waiting 3.61 seconds before fallback handling...
[2026-06-12 18:26:25,495.495 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 18:26:25,497.497 INFO    ] Checking for system updates...
[2026-06-12 18:26:25,517.517 INFO    ] 200
[2026-06-12 18:26:25,519.519 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:26:25,550.550 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 18:26:25,552.552 INFO    ] No update needed
[2026-06-12 18:26:25,553.553 INFO    ] Checking for camera pi updates...
[2026-06-12 18:26:25,573.573 INFO    ] 200
[2026-06-12 18:26:25,574.574 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:26:25,597.597 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 18:26:25,734.734 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 18:26:25,735.735 INFO    ] No camera update needed
[2026-06-12 18:26:25,736.736 INFO    ] Script finished. Safe exiting...
[2026-06-12 18:26:25,737.737 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 18:26:25,740.740 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 18:26:25,743.743 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 18:26:27,782.782 INFO    ] ================================================
[2026-06-12 18:26:27,797.797 INFO    ] Launching Daemon at Fri Jun 12 18:26:27 IST 2026
[2026-06-12 18:26:27,808.808 INFO    ] ================================================
[2026-06-12 18:26:28,175.175 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 18:26:28
[2026-06-12 18:26:28,485.485 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 18:26:28,627.627 INFO    ] Initializing speech engine...
[2026-06-12 18:26:28,632.632 INFO    ] 2026-06-12 18:26:28
[2026-06-12 18:26:28,833.833 INFO    ] 2026-06-12 18:26:28
[2026-06-12 18:26:28,861.861 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 18:26:29,044.044 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 18:26:29,048.048 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 18:26:29,193.193 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 18:26:29,250.250 INFO    ] time= 12/06/2026 18:26:29
[2026-06-12 18:26:29,273.273 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 18:26:29,279.279 INFO    ] Checking for existing commands in stream...
[2026-06-12 18:26:29,346.346 INFO    ] No existing commands found in stream
[2026-06-12 18:26:34,360.360 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 18:26:34,363.363 INFO    ] Waiting 2.49 seconds before fallback handling...
[2026-06-12 18:26:37,235.235 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 18:26:37,237.237 INFO    ] Checking for system updates...
[2026-06-12 18:26:37,258.258 INFO    ] 200
[2026-06-12 18:26:37,259.259 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:26:37,292.292 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 18:26:37,294.294 INFO    ] No update needed
[2026-06-12 18:26:37,295.295 INFO    ] Checking for camera pi updates...
[2026-06-12 18:26:37,316.316 INFO    ] 200
[2026-06-12 18:26:37,317.317 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:26:37,340.340 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 18:26:37,391.391 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 18:26:37,392.392 INFO    ] No camera update needed
[2026-06-12 18:26:37,393.393 INFO    ] Script finished. Safe exiting...
[2026-06-12 18:26:37,395.395 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 18:26:37,397.397 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 18:26:37,400.400 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 18:26:39,439.439 INFO    ] ================================================
[2026-06-12 18:26:39,454.454 INFO    ] Launching Daemon at Fri Jun 12 18:26:39 IST 2026
[2026-06-12 18:26:39,465.465 INFO    ] ================================================
[2026-06-12 18:26:39,795.795 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 18:26:39
[2026-06-12 18:26:40,112.112 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 18:26:40,248.248 INFO    ] Initializing speech engine...
[2026-06-12 18:26:40,251.251 INFO    ] 2026-06-12 18:26:40
[2026-06-12 18:26:40,478.478 INFO    ] 2026-06-12 18:26:40
[2026-06-12 18:26:40,509.509 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 18:26:40,702.702 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 18:26:40,708.708 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 18:26:40,846.846 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 18:26:40,902.902 INFO    ] time= 12/06/2026 18:26:40
[2026-06-12 18:26:40,942.942 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 18:26:40,953.953 INFO    ] Checking for existing commands in stream...
[2026-06-12 18:26:41,026.026 INFO    ] No existing commands found in stream
[2026-06-12 18:26:46,037.037 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 18:26:46,040.040 INFO    ] Waiting 3.74 seconds before fallback handling...
[2026-06-12 18:26:50,146.146 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 18:26:50,148.148 INFO    ] Checking for system updates...
[2026-06-12 18:26:50,172.172 INFO    ] 200
[2026-06-12 18:26:50,173.173 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:26:50,203.203 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 18:26:50,205.205 INFO    ] No update needed
[2026-06-12 18:26:50,206.206 INFO    ] Checking for camera pi updates...
[2026-06-12 18:26:50,225.225 INFO    ] 200
[2026-06-12 18:26:50,227.227 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:26:50,251.251 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 18:26:50,293.293 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 18:26:50,294.294 INFO    ] No camera update needed
[2026-06-12 18:26:50,296.296 INFO    ] Script finished. Safe exiting...
[2026-06-12 18:26:50,297.297 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 18:26:50,300.300 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 18:26:50,303.303 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 18:26:52,343.343 INFO    ] ================================================
[2026-06-12 18:26:52,359.359 INFO    ] Launching Daemon at Fri Jun 12 18:26:52 IST 2026
[2026-06-12 18:26:52,370.370 INFO    ] ================================================
[2026-06-12 18:26:52,707.707 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 18:26:52
[2026-06-12 18:26:53,028.028 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 18:26:53,165.165 INFO    ] Initializing speech engine...
[2026-06-12 18:26:53,179.179 INFO    ] 2026-06-12 18:26:53
[2026-06-12 18:26:53,395.395 INFO    ] 2026-06-12 18:26:53
[2026-06-12 18:26:53,426.426 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 18:26:53,622.622 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 18:26:53,632.632 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 18:26:53,764.764 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 18:26:53,810.810 INFO    ] time= 12/06/2026 18:26:53
[2026-06-12 18:26:53,848.848 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 18:26:53,870.870 INFO    ] Checking for existing commands in stream...
[2026-06-12 18:26:53,946.946 INFO    ] No existing commands found in stream
[2026-06-12 18:26:58,956.956 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 18:26:58,959.959 INFO    ] Waiting 3.21 seconds before fallback handling...
[2026-06-12 18:27:02,492.492 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 18:27:02,494.494 INFO    ] Checking for system updates...
[2026-06-12 18:27:02,521.521 INFO    ] 200
[2026-06-12 18:27:02,523.523 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:27:02,571.571 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 18:27:02,573.573 INFO    ] No update needed
[2026-06-12 18:27:02,576.576 INFO    ] Checking for camera pi updates...
[2026-06-12 18:27:02,609.609 INFO    ] 200
[2026-06-12 18:27:02,611.611 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:27:02,646.646 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 18:27:02,673.673 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 18:27:02,675.675 INFO    ] No camera update needed
[2026-06-12 18:27:02,677.677 INFO    ] Script finished. Safe exiting...
[2026-06-12 18:27:02,679.679 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 18:27:02,682.682 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 18:27:02,685.685 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 18:27:04,722.722 INFO    ] ================================================
[2026-06-12 18:27:04,738.738 INFO    ] Launching Daemon at Fri Jun 12 18:27:04 IST 2026
[2026-06-12 18:27:04,749.749 INFO    ] ================================================
[2026-06-12 18:27:05,097.097 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 18:27:05
[2026-06-12 18:27:05,412.412 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 18:27:05,550.550 INFO    ] Initializing speech engine...
[2026-06-12 18:27:05,559.559 INFO    ] 2026-06-12 18:27:05
[2026-06-12 18:27:05,764.764 INFO    ] 2026-06-12 18:27:05
[2026-06-12 18:27:05,791.791 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 18:27:05,942.942 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 18:27:05,949.949 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 18:27:06,109.109 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 18:27:06,129.129 INFO    ] time= 12/06/2026 18:27:06
[2026-06-12 18:27:06,180.180 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 18:27:06,182.182 INFO    ] Checking for existing commands in stream...
[2026-06-12 18:27:06,245.245 INFO    ] No existing commands found in stream
[2026-06-12 18:27:11,254.254 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 18:27:11,256.256 INFO    ] Waiting 0.77 seconds before fallback handling...
[2026-06-12 18:27:12,418.418 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 18:27:12,420.420 INFO    ] Checking for system updates...
[2026-06-12 18:27:12,440.440 INFO    ] 200
[2026-06-12 18:27:12,442.442 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:27:12,473.473 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 18:27:12,475.475 INFO    ] No update needed
[2026-06-12 18:27:12,476.476 INFO    ] Checking for camera pi updates...
[2026-06-12 18:27:12,497.497 INFO    ] 200
[2026-06-12 18:27:12,499.499 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:27:12,522.522 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 18:27:12,561.561 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 18:27:12,562.562 INFO    ] No camera update needed
[2026-06-12 18:27:12,564.564 INFO    ] Script finished. Safe exiting...
[2026-06-12 18:27:12,565.565 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 18:27:12,568.568 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 18:27:12,570.570 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 18:27:14,610.610 INFO    ] ================================================
[2026-06-12 18:27:14,625.625 INFO    ] Launching Daemon at Fri Jun 12 18:27:14 IST 2026
[2026-06-12 18:27:14,637.637 INFO    ] ================================================
[2026-06-12 18:27:14,996.996 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 18:27:14
[2026-06-12 18:27:15,307.307 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 18:27:15,438.438 INFO    ] Initializing speech engine...
[2026-06-12 18:27:15,443.443 INFO    ] 2026-06-12 18:27:15
[2026-06-12 18:27:15,669.669 INFO    ] 2026-06-12 18:27:15
[2026-06-12 18:27:15,700.700 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 18:27:15,831.831 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 18:27:15,897.897 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 18:27:16,041.041 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 18:27:16,103.103 INFO    ] time= 12/06/2026 18:27:16
[2026-06-12 18:27:16,137.137 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 18:27:16,143.143 INFO    ] Checking for existing commands in stream...
[2026-06-12 18:27:16,220.220 INFO    ] No existing commands found in stream
[2026-06-12 18:27:21,240.240 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 18:27:21,243.243 INFO    ] Waiting 0.15 seconds before fallback handling...
[2026-06-12 18:27:21,744.744 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 18:27:21,746.746 INFO    ] Checking for system updates...
[2026-06-12 18:27:21,768.768 INFO    ] 200
[2026-06-12 18:27:21,769.769 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:27:21,799.799 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 18:27:21,801.801 INFO    ] No update needed
[2026-06-12 18:27:21,802.802 INFO    ] Checking for camera pi updates...
[2026-06-12 18:27:21,823.823 INFO    ] 200
[2026-06-12 18:27:21,824.824 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:27:21,847.847 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 18:27:21,897.897 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 18:27:21,899.899 INFO    ] No camera update needed
[2026-06-12 18:27:21,900.900 INFO    ] Script finished. Safe exiting...
[2026-06-12 18:27:21,901.901 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 18:27:21,904.904 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 18:27:21,907.907 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 18:27:23,945.945 INFO    ] ================================================
[2026-06-12 18:27:23,961.961 INFO    ] Launching Daemon at Fri Jun 12 18:27:23 IST 2026
[2026-06-12 18:27:23,972.972 INFO    ] ================================================
[2026-06-12 18:27:24,343.343 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 18:27:24
[2026-06-12 18:27:24,679.679 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 18:27:24,909.909 INFO    ] Initializing speech engine...
[2026-06-12 18:27:24,912.912 INFO    ] 2026-06-12 18:27:24
[2026-06-12 18:27:25,172.172 INFO    ] 2026-06-12 18:27:25
[2026-06-12 18:27:25,242.242 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 18:27:25,467.467 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 18:27:25,473.473 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 18:27:25,600.600 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 18:27:25,603.603 INFO    ] time= 12/06/2026 18:27:25
[2026-06-12 18:27:25,605.605 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 18:27:25,608.608 INFO    ] Checking for existing commands in stream...
[2026-06-12 18:27:25,673.673 INFO    ] No existing commands found in stream
[2026-06-12 18:27:30,684.684 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 18:27:30,687.687 INFO    ] Waiting 0.07 seconds before fallback handling...
[2026-06-12 18:27:31,115.115 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 18:27:31,116.116 INFO    ] Checking for system updates...
[2026-06-12 18:27:31,137.137 INFO    ] 200
[2026-06-12 18:27:31,139.139 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:27:31,168.168 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 18:27:31,170.170 INFO    ] No update needed
[2026-06-12 18:27:31,171.171 INFO    ] Checking for camera pi updates...
[2026-06-12 18:27:31,190.190 INFO    ] 200
[2026-06-12 18:27:31,192.192 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:27:31,214.214 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 18:27:31,348.348 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 18:27:31,350.350 INFO    ] No camera update needed
[2026-06-12 18:27:31,351.351 INFO    ] Script finished. Safe exiting...
[2026-06-12 18:27:31,352.352 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 18:27:31,355.355 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 18:27:31,358.358 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 18:27:33,381.381 INFO    ] ================================================
[2026-06-12 18:27:33,390.390 INFO    ] Launching Daemon at Fri Jun 12 18:27:33 IST 2026
[2026-06-12 18:27:33,396.396 INFO    ] ================================================
[2026-06-12 18:27:33,767.767 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 18:27:33
[2026-06-12 18:27:34,101.101 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 18:27:34,251.251 INFO    ] Initializing speech engine...
[2026-06-12 18:27:34,257.257 INFO    ] 2026-06-12 18:27:34
[2026-06-12 18:27:34,462.462 INFO    ] 2026-06-12 18:27:34
[2026-06-12 18:27:34,491.491 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 18:27:34,674.674 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 18:27:34,683.683 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 18:27:34,823.823 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 18:27:34,880.880 INFO    ] time= 12/06/2026 18:27:34
[2026-06-12 18:27:34,903.903 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 18:27:34,910.910 INFO    ] Checking for existing commands in stream...
[2026-06-12 18:27:34,976.976 INFO    ] No existing commands found in stream
[2026-06-12 18:27:39,991.991 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 18:27:39,994.994 INFO    ] Waiting 2.98 seconds before fallback handling...
[2026-06-12 18:27:43,366.366 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 18:27:43,368.368 INFO    ] Checking for system updates...
[2026-06-12 18:27:43,389.389 INFO    ] 200
[2026-06-12 18:27:43,390.390 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:27:43,423.423 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 18:27:43,424.424 INFO    ] No update needed
[2026-06-12 18:27:43,425.425 INFO    ] Checking for camera pi updates...
[2026-06-12 18:27:43,444.444 INFO    ] 200
[2026-06-12 18:27:43,446.446 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:27:43,469.469 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 18:27:43,515.515 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 18:27:43,517.517 INFO    ] No camera update needed
[2026-06-12 18:27:43,518.518 INFO    ] Script finished. Safe exiting...
[2026-06-12 18:27:43,519.519 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 18:27:43,522.522 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 18:27:43,525.525 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 18:27:45,565.565 INFO    ] ================================================
[2026-06-12 18:27:45,581.581 INFO    ] Launching Daemon at Fri Jun 12 18:27:45 IST 2026
[2026-06-12 18:27:45,592.592 INFO    ] ================================================
[2026-06-12 18:27:45,947.947 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 18:27:45
[2026-06-12 18:27:46,282.282 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 18:27:46,420.420 INFO    ] Initializing speech engine...
[2026-06-12 18:27:46,433.433 INFO    ] 2026-06-12 18:27:46
[2026-06-12 18:27:46,644.644 INFO    ] 2026-06-12 18:27:46
[2026-06-12 18:27:46,673.673 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 18:27:46,855.855 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 18:27:46,865.865 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 18:27:46,992.992 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 18:27:47,054.054 INFO    ] time= 12/06/2026 18:27:47
[2026-06-12 18:27:47,088.088 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 18:27:47,095.095 INFO    ] Checking for existing commands in stream...
[2026-06-12 18:27:47,162.162 INFO    ] No existing commands found in stream
[2026-06-12 18:27:52,186.186 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 18:27:52,190.190 INFO    ] Waiting 0.16 seconds before fallback handling...
[2026-06-12 18:27:52,724.724 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 18:27:52,725.725 INFO    ] Checking for system updates...
[2026-06-12 18:27:52,746.746 INFO    ] 200
[2026-06-12 18:27:52,747.747 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:27:52,779.779 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 18:27:52,780.780 INFO    ] No update needed
[2026-06-12 18:27:52,782.782 INFO    ] Checking for camera pi updates...
[2026-06-12 18:27:52,801.801 INFO    ] 200
[2026-06-12 18:27:52,802.802 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:27:52,827.827 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 18:27:52,880.880 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 18:27:52,882.882 INFO    ] No camera update needed
[2026-06-12 18:27:52,883.883 INFO    ] Script finished. Safe exiting...
[2026-06-12 18:27:52,884.884 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 18:27:52,887.887 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 18:27:52,890.890 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 18:27:54,928.928 INFO    ] ================================================
[2026-06-12 18:27:54,943.943 INFO    ] Launching Daemon at Fri Jun 12 18:27:54 IST 2026
[2026-06-12 18:27:54,954.954 INFO    ] ================================================
[2026-06-12 18:27:55,314.314 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 18:27:55
[2026-06-12 18:27:55,633.633 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 18:27:55,777.777 INFO    ] Initializing speech engine...
[2026-06-12 18:27:55,782.782 INFO    ] 2026-06-12 18:27:55
[2026-06-12 18:27:55,987.987 INFO    ] 2026-06-12 18:27:55
[2026-06-12 18:27:56,016.016 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 18:27:56,198.198 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 18:27:56,207.207 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 18:27:56,333.333 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 18:27:56,395.395 INFO    ] time= 12/06/2026 18:27:56
[2026-06-12 18:27:56,426.426 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 18:27:56,433.433 INFO    ] Checking for existing commands in stream...
[2026-06-12 18:27:56,499.499 INFO    ] No existing commands found in stream
[2026-06-12 18:28:01,508.508 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 18:28:01,511.511 INFO    ] Waiting 1.91 seconds before fallback handling...
[2026-06-12 18:28:03,797.797 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 18:28:03,798.798 INFO    ] Checking for system updates...
[2026-06-12 18:28:03,819.819 INFO    ] 200
[2026-06-12 18:28:03,820.820 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:28:03,850.850 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 18:28:03,851.851 INFO    ] No update needed
[2026-06-12 18:28:03,853.853 INFO    ] Checking for camera pi updates...
[2026-06-12 18:28:03,872.872 INFO    ] 200
[2026-06-12 18:28:03,873.873 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:28:03,899.899 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 18:28:03,951.951 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 18:28:03,953.953 INFO    ] No camera update needed
[2026-06-12 18:28:03,954.954 INFO    ] Script finished. Safe exiting...
[2026-06-12 18:28:03,955.955 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 18:28:03,958.958 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 18:28:03,961.961 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 18:28:06,001.001 INFO    ] ================================================
[2026-06-12 18:28:06,017.017 INFO    ] Launching Daemon at Fri Jun 12 18:28:06 IST 2026
[2026-06-12 18:28:06,028.028 INFO    ] ================================================
[2026-06-12 18:28:06,394.394 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 18:28:06
[2026-06-12 18:28:06,706.706 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 18:28:06,837.837 INFO    ] Initializing speech engine...
[2026-06-12 18:28:06,842.842 INFO    ] 2026-06-12 18:28:06
[2026-06-12 18:28:07,070.070 INFO    ] 2026-06-12 18:28:07
[2026-06-12 18:28:07,100.100 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 18:28:07,232.232 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 18:28:07,295.295 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 18:28:07,443.443 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 18:28:07,506.506 INFO    ] time= 12/06/2026 18:28:07
[2026-06-12 18:28:07,535.535 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 18:28:07,546.546 INFO    ] Checking for existing commands in stream...
[2026-06-12 18:28:07,622.622 INFO    ] No existing commands found in stream
[2026-06-12 18:28:12,631.631 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 18:28:12,634.634 INFO    ] Waiting 2.37 seconds before fallback handling...
[2026-06-12 18:28:15,397.397 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 18:28:15,398.398 INFO    ] Checking for system updates...
[2026-06-12 18:28:15,418.418 INFO    ] 200
[2026-06-12 18:28:15,420.420 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:28:15,449.449 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 18:28:15,450.450 INFO    ] No update needed
[2026-06-12 18:28:15,452.452 INFO    ] Checking for camera pi updates...
[2026-06-12 18:28:15,471.471 INFO    ] 200
[2026-06-12 18:28:15,472.472 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:28:15,495.495 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 18:28:15,535.535 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 18:28:15,537.537 INFO    ] No camera update needed
[2026-06-12 18:28:15,538.538 INFO    ] Script finished. Safe exiting...
[2026-06-12 18:28:15,539.539 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 18:28:15,542.542 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 18:28:15,545.545 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 18:28:17,583.583 INFO    ] ================================================
[2026-06-12 18:28:17,599.599 INFO    ] Launching Daemon at Fri Jun 12 18:28:17 IST 2026
[2026-06-12 18:28:17,610.610 INFO    ] ================================================
[2026-06-12 18:28:17,972.972 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 18:28:17
[2026-06-12 18:28:18,284.284 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 18:28:18,420.420 INFO    ] Initializing speech engine...
[2026-06-12 18:28:18,433.433 INFO    ] 2026-06-12 18:28:18
[2026-06-12 18:28:18,650.650 INFO    ] 2026-06-12 18:28:18
[2026-06-12 18:28:18,681.681 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 18:28:18,879.879 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 18:28:18,888.888 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 18:28:19,019.019 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 18:28:19,075.075 INFO    ] time= 12/06/2026 18:28:19
[2026-06-12 18:28:19,114.114 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 18:28:19,125.125 INFO    ] Checking for existing commands in stream...
[2026-06-12 18:28:19,201.201 INFO    ] No existing commands found in stream
[2026-06-12 18:28:24,210.210 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 18:28:24,213.213 INFO    ] Waiting 3.46 seconds before fallback handling...
[2026-06-12 18:28:28,042.042 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 18:28:28,043.043 INFO    ] Checking for system updates...
[2026-06-12 18:28:28,064.064 INFO    ] 200
[2026-06-12 18:28:28,065.065 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:28:28,096.096 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 18:28:28,097.097 INFO    ] No update needed
[2026-06-12 18:28:28,099.099 INFO    ] Checking for camera pi updates...
[2026-06-12 18:28:28,119.119 INFO    ] 200
[2026-06-12 18:28:28,121.121 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:28:28,144.144 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 18:28:28,293.293 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 18:28:28,295.295 INFO    ] No camera update needed
[2026-06-12 18:28:28,296.296 INFO    ] Script finished. Safe exiting...
[2026-06-12 18:28:28,297.297 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 18:28:28,300.300 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 18:28:28,303.303 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 18:28:30,341.341 INFO    ] ================================================
[2026-06-12 18:28:30,357.357 INFO    ] Launching Daemon at Fri Jun 12 18:28:30 IST 2026
[2026-06-12 18:28:30,369.369 INFO    ] ================================================
[2026-06-12 18:28:30,717.717 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 18:28:30
[2026-06-12 18:28:31,049.049 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 18:28:31,189.189 INFO    ] Initializing speech engine...
[2026-06-12 18:28:31,201.201 INFO    ] 2026-06-12 18:28:31
[2026-06-12 18:28:31,412.412 INFO    ] 2026-06-12 18:28:31
[2026-06-12 18:28:31,442.442 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 18:28:31,630.630 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 18:28:31,640.640 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 18:28:31,768.768 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 18:28:31,836.836 INFO    ] time= 12/06/2026 18:28:31
[2026-06-12 18:28:31,881.881 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 18:28:31,885.885 INFO    ] Checking for existing commands in stream...
[2026-06-12 18:28:31,983.983 INFO    ] No existing commands found in stream
[2026-06-12 18:28:36,998.998 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 18:28:37,001.001 INFO    ] Waiting 2.68 seconds before fallback handling...
[2026-06-12 18:28:40,077.077 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 18:28:40,078.078 INFO    ] Checking for system updates...
[2026-06-12 18:28:40,104.104 INFO    ] 200
[2026-06-12 18:28:40,106.106 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:28:40,139.139 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 18:28:40,141.141 INFO    ] No update needed
[2026-06-12 18:28:40,142.142 INFO    ] Checking for camera pi updates...
[2026-06-12 18:28:40,161.161 INFO    ] 200
[2026-06-12 18:28:40,163.163 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:28:40,185.185 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 18:28:40,227.227 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 18:28:40,229.229 INFO    ] No camera update needed
[2026-06-12 18:28:40,230.230 INFO    ] Script finished. Safe exiting...
[2026-06-12 18:28:40,231.231 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 18:28:40,234.234 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 18:28:40,237.237 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 18:28:42,275.275 INFO    ] ================================================
[2026-06-12 18:28:42,290.290 INFO    ] Launching Daemon at Fri Jun 12 18:28:42 IST 2026
[2026-06-12 18:28:42,301.301 INFO    ] ================================================
[2026-06-12 18:28:42,661.661 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 18:28:42
[2026-06-12 18:28:42,994.994 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 18:28:43,144.144 INFO    ] Initializing speech engine...
[2026-06-12 18:28:43,150.150 INFO    ] 2026-06-12 18:28:43
[2026-06-12 18:28:43,356.356 INFO    ] 2026-06-12 18:28:43
[2026-06-12 18:28:43,384.384 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 18:28:43,567.567 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 18:28:43,576.576 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 18:28:43,715.715 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 18:28:43,773.773 INFO    ] time= 12/06/2026 18:28:43
[2026-06-12 18:28:43,795.795 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 18:28:43,802.802 INFO    ] Checking for existing commands in stream...
[2026-06-12 18:28:43,916.916 INFO    ] No existing commands found in stream
[2026-06-12 18:28:48,926.926 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 18:28:48,929.929 INFO    ] Waiting 3.88 seconds before fallback handling...
[2026-06-12 18:28:53,258.258 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 18:28:53,259.259 INFO    ] Checking for system updates...
[2026-06-12 18:28:53,280.280 INFO    ] 200
[2026-06-12 18:28:53,282.282 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:28:53,312.312 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 18:28:53,313.313 INFO    ] No update needed
[2026-06-12 18:28:53,314.314 INFO    ] Checking for camera pi updates...
[2026-06-12 18:28:53,333.333 INFO    ] 200
[2026-06-12 18:28:53,335.335 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:28:53,358.358 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 18:28:53,410.410 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 18:28:53,411.411 INFO    ] No camera update needed
[2026-06-12 18:28:53,412.412 INFO    ] Script finished. Safe exiting...
[2026-06-12 18:28:53,414.414 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 18:28:53,417.417 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 18:28:53,419.419 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 18:28:55,459.459 INFO    ] ================================================
[2026-06-12 18:28:55,474.474 INFO    ] Launching Daemon at Fri Jun 12 18:28:55 IST 2026
[2026-06-12 18:28:55,485.485 INFO    ] ================================================
[2026-06-12 18:28:55,830.830 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 18:28:55
[2026-06-12 18:28:56,142.142 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 18:28:56,283.283 INFO    ] Initializing speech engine...
[2026-06-12 18:28:56,288.288 INFO    ] 2026-06-12 18:28:56
[2026-06-12 18:28:56,490.490 INFO    ] 2026-06-12 18:28:56
[2026-06-12 18:28:56,519.519 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 18:28:56,701.701 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 18:28:56,711.711 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 18:28:56,840.840 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 18:28:56,904.904 INFO    ] time= 12/06/2026 18:28:56
[2026-06-12 18:28:56,930.930 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 18:28:56,937.937 INFO    ] Checking for existing commands in stream...
[2026-06-12 18:28:57,003.003 INFO    ] No existing commands found in stream
[2026-06-12 18:29:02,011.011 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 18:29:02,013.013 INFO    ] Waiting 1.43 seconds before fallback handling...
[2026-06-12 18:29:03,807.807 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 18:29:03,808.808 INFO    ] Checking for system updates...
[2026-06-12 18:29:03,829.829 INFO    ] 200
[2026-06-12 18:29:03,831.831 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:29:03,862.862 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 18:29:03,864.864 INFO    ] No update needed
[2026-06-12 18:29:03,865.865 INFO    ] Checking for camera pi updates...
[2026-06-12 18:29:03,884.884 INFO    ] 200
[2026-06-12 18:29:03,885.885 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:29:03,909.909 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 18:29:03,961.961 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 18:29:03,963.963 INFO    ] No camera update needed
[2026-06-12 18:29:03,964.964 INFO    ] Script finished. Safe exiting...
[2026-06-12 18:29:03,965.965 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 18:29:03,968.968 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 18:29:03,971.971 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 18:29:06,009.009 INFO    ] ================================================
[2026-06-12 18:29:06,024.024 INFO    ] Launching Daemon at Fri Jun 12 18:29:06 IST 2026
[2026-06-12 18:29:06,035.035 INFO    ] ================================================
[2026-06-12 18:29:06,372.372 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 18:29:06
[2026-06-12 18:29:06,684.684 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 18:29:06,818.818 INFO    ] Initializing speech engine...
[2026-06-12 18:29:06,831.831 INFO    ] 2026-06-12 18:29:06
[2026-06-12 18:29:07,047.047 INFO    ] 2026-06-12 18:29:07
[2026-06-12 18:29:07,078.078 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 18:29:07,208.208 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 18:29:07,274.274 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 18:29:07,419.419 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 18:29:07,475.475 INFO    ] time= 12/06/2026 18:29:07
[2026-06-12 18:29:07,514.514 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 18:29:07,520.520 INFO    ] Checking for existing commands in stream...
[2026-06-12 18:29:07,620.620 INFO    ] No existing commands found in stream
[2026-06-12 18:29:12,629.629 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 18:29:12,632.632 INFO    ] Waiting 0.49 seconds before fallback handling...
[2026-06-12 18:29:13,557.557 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 18:29:13,558.558 INFO    ] Checking for system updates...
[2026-06-12 18:29:13,580.580 INFO    ] 200
[2026-06-12 18:29:13,582.582 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:29:13,612.612 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 18:29:13,613.613 INFO    ] No update needed
[2026-06-12 18:29:13,615.615 INFO    ] Checking for camera pi updates...
[2026-06-12 18:29:13,634.634 INFO    ] 200
[2026-06-12 18:29:13,635.635 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:29:13,660.660 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 18:29:13,706.706 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 18:29:13,707.707 INFO    ] No camera update needed
[2026-06-12 18:29:13,708.708 INFO    ] Script finished. Safe exiting...
[2026-06-12 18:29:13,710.710 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 18:29:13,713.713 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 18:29:13,716.716 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 18:29:15,754.754 INFO    ] ================================================
[2026-06-12 18:29:15,769.769 INFO    ] Launching Daemon at Fri Jun 12 18:29:15 IST 2026
[2026-06-12 18:29:15,780.780 INFO    ] ================================================
[2026-06-12 18:29:16,110.110 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 18:29:16
[2026-06-12 18:29:16,427.427 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 18:29:16,566.566 INFO    ] Initializing speech engine...
[2026-06-12 18:29:16,576.576 INFO    ] 2026-06-12 18:29:16
[2026-06-12 18:29:16,781.781 INFO    ] 2026-06-12 18:29:16
[2026-06-12 18:29:16,810.810 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 18:29:16,942.942 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 18:29:16,995.995 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 18:29:17,128.128 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 18:29:17,191.191 INFO    ] time= 12/06/2026 18:29:17
[2026-06-12 18:29:17,223.223 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 18:29:17,229.229 INFO    ] Checking for existing commands in stream...
[2026-06-12 18:29:17,296.296 INFO    ] No existing commands found in stream
[2026-06-12 18:29:22,305.305 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 18:29:22,308.308 INFO    ] Waiting 3.81 seconds before fallback handling...
[2026-06-12 18:29:26,518.518 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 18:29:26,519.519 INFO    ] Checking for system updates...
[2026-06-12 18:29:26,540.540 INFO    ] 200
[2026-06-12 18:29:26,541.541 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:29:26,571.571 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 18:29:26,573.573 INFO    ] No update needed
[2026-06-12 18:29:26,574.574 INFO    ] Checking for camera pi updates...
[2026-06-12 18:29:26,594.594 INFO    ] 200
[2026-06-12 18:29:26,596.596 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:29:26,622.622 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 18:29:26,669.669 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 18:29:26,670.670 INFO    ] No camera update needed
[2026-06-12 18:29:26,672.672 INFO    ] Script finished. Safe exiting...
[2026-06-12 18:29:26,673.673 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 18:29:26,676.676 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 18:29:26,679.679 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 18:29:28,718.718 INFO    ] ================================================
[2026-06-12 18:29:28,733.733 INFO    ] Launching Daemon at Fri Jun 12 18:29:28 IST 2026
[2026-06-12 18:29:28,744.744 INFO    ] ================================================
[2026-06-12 18:29:29,080.080 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 18:29:29
[2026-06-12 18:29:29,391.391 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 18:29:29,521.521 INFO    ] Initializing speech engine...
[2026-06-12 18:29:29,524.524 INFO    ] 2026-06-12 18:29:29
[2026-06-12 18:29:29,742.742 INFO    ] 2026-06-12 18:29:29
[2026-06-12 18:29:29,771.771 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 18:29:29,956.956 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 18:29:29,965.965 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 18:29:30,116.116 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 18:29:30,177.177 INFO    ] time= 12/06/2026 18:29:30
[2026-06-12 18:29:30,187.187 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 18:29:30,194.194 INFO    ] Checking for existing commands in stream...
[2026-06-12 18:29:30,259.259 INFO    ] No existing commands found in stream
[2026-06-12 18:29:35,270.270 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 18:29:35,273.273 INFO    ] Waiting 2.90 seconds before fallback handling...
[2026-06-12 18:29:38,556.556 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 18:29:38,558.558 INFO    ] Checking for system updates...
[2026-06-12 18:29:38,578.578 INFO    ] 200
[2026-06-12 18:29:38,579.579 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:29:38,609.609 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 18:29:38,611.611 INFO    ] No update needed
[2026-06-12 18:29:38,612.612 INFO    ] Checking for camera pi updates...
[2026-06-12 18:29:38,632.632 INFO    ] 200
[2026-06-12 18:29:38,633.633 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:29:38,657.657 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 18:29:38,705.705 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 18:29:38,706.706 INFO    ] No camera update needed
[2026-06-12 18:29:38,707.707 INFO    ] Script finished. Safe exiting...
[2026-06-12 18:29:38,708.708 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 18:29:38,711.711 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 18:29:38,714.714 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 18:29:40,753.753 INFO    ] ================================================
[2026-06-12 18:29:40,768.768 INFO    ] Launching Daemon at Fri Jun 12 18:29:40 IST 2026
[2026-06-12 18:29:40,779.779 INFO    ] ================================================
[2026-06-12 18:29:41,119.119 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 18:29:41
[2026-06-12 18:29:41,439.439 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 18:29:41,577.577 INFO    ] Initializing speech engine...
[2026-06-12 18:29:41,587.587 INFO    ] 2026-06-12 18:29:41
[2026-06-12 18:29:41,790.790 INFO    ] 2026-06-12 18:29:41
[2026-06-12 18:29:41,820.820 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 18:29:42,002.002 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 18:29:42,006.006 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 18:29:42,143.143 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 18:29:42,209.209 INFO    ] time= 12/06/2026 18:29:42
[2026-06-12 18:29:42,233.233 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 18:29:42,235.235 INFO    ] Checking for existing commands in stream...
[2026-06-12 18:29:42,306.306 INFO    ] No existing commands found in stream
[2026-06-12 18:29:47,315.315 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 18:29:47,318.318 INFO    ] Waiting 3.53 seconds before fallback handling...
[2026-06-12 18:29:51,256.256 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 18:29:51,258.258 INFO    ] Checking for system updates...
[2026-06-12 18:29:51,279.279 INFO    ] 200
[2026-06-12 18:29:51,280.280 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:29:51,314.314 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 18:29:51,316.316 INFO    ] No update needed
[2026-06-12 18:29:51,317.317 INFO    ] Checking for camera pi updates...
[2026-06-12 18:29:51,336.336 INFO    ] 200
[2026-06-12 18:29:51,338.338 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:29:51,361.361 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 18:29:51,402.402 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 18:29:51,403.403 INFO    ] No camera update needed
[2026-06-12 18:29:51,405.405 INFO    ] Script finished. Safe exiting...
[2026-06-12 18:29:51,406.406 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 18:29:51,409.409 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 18:29:51,412.412 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 18:29:53,451.451 INFO    ] ================================================
[2026-06-12 18:29:53,466.466 INFO    ] Launching Daemon at Fri Jun 12 18:29:53 IST 2026
[2026-06-12 18:29:53,476.476 INFO    ] ================================================
[2026-06-12 18:29:53,811.811 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 18:29:53
[2026-06-12 18:29:54,123.123 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 18:29:54,252.252 INFO    ] Initializing speech engine...
[2026-06-12 18:29:54,260.260 INFO    ] 2026-06-12 18:29:54
[2026-06-12 18:29:54,472.472 INFO    ] 2026-06-12 18:29:54
[2026-06-12 18:29:54,501.501 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 18:29:54,623.623 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 18:29:54,686.686 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 18:29:54,822.822 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 18:29:54,889.889 INFO    ] time= 12/06/2026 18:29:54
[2026-06-12 18:29:54,913.913 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 18:29:54,919.919 INFO    ] Checking for existing commands in stream...
[2026-06-12 18:29:54,986.986 INFO    ] No existing commands found in stream
[2026-06-12 18:30:00,000.000 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 18:30:00,003.003 INFO    ] Waiting 2.15 seconds before fallback handling...
[2026-06-12 18:30:02,497.497 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 18:30:02,500.500 INFO    ] Checking for system updates...
[2026-06-12 18:30:02,535.535 INFO    ] 200
[2026-06-12 18:30:02,538.538 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:30:02,581.581 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 18:30:02,583.583 INFO    ] No update needed
[2026-06-12 18:30:02,585.585 INFO    ] Checking for camera pi updates...
[2026-06-12 18:30:02,614.614 INFO    ] 200
[2026-06-12 18:30:02,617.617 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:30:02,653.653 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 18:30:02,758.758 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 18:30:02,760.760 INFO    ] No camera update needed
[2026-06-12 18:30:02,761.761 INFO    ] Script finished. Safe exiting...
[2026-06-12 18:30:02,762.762 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 18:30:02,767.767 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 18:30:02,773.773 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 18:30:04,815.815 INFO    ] ================================================
[2026-06-12 18:30:04,830.830 INFO    ] Launching Daemon at Fri Jun 12 18:30:04 IST 2026
[2026-06-12 18:30:04,841.841 INFO    ] ================================================
[2026-06-12 18:30:05,178.178 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 18:30:05
[2026-06-12 18:30:05,494.494 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 18:30:05,640.640 INFO    ] Initializing speech engine...
[2026-06-12 18:30:05,646.646 INFO    ] 2026-06-12 18:30:05
[2026-06-12 18:30:05,855.855 INFO    ] 2026-06-12 18:30:05
[2026-06-12 18:30:05,886.886 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 18:30:06,074.074 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 18:30:06,083.083 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 18:30:06,218.218 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 18:30:06,280.280 INFO    ] time= 12/06/2026 18:30:06
[2026-06-12 18:30:06,304.304 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 18:30:06,310.310 INFO    ] Checking for existing commands in stream...
[2026-06-12 18:30:06,377.377 INFO    ] No existing commands found in stream
[2026-06-12 18:30:11,386.386 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 18:30:11,389.389 INFO    ] Waiting 3.98 seconds before fallback handling...
[2026-06-12 18:30:15,746.746 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 18:30:15,748.748 INFO    ] Checking for system updates...
[2026-06-12 18:30:15,768.768 INFO    ] 200
[2026-06-12 18:30:15,770.770 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:30:15,800.800 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 18:30:15,801.801 INFO    ] No update needed
[2026-06-12 18:30:15,803.803 INFO    ] Checking for camera pi updates...
[2026-06-12 18:30:15,822.822 INFO    ] 200
[2026-06-12 18:30:15,823.823 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:30:15,847.847 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 18:30:15,925.925 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 18:30:15,926.926 INFO    ] No camera update needed
[2026-06-12 18:30:15,927.927 INFO    ] Script finished. Safe exiting...
[2026-06-12 18:30:15,929.929 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 18:30:15,932.932 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 18:30:15,935.935 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 18:30:17,974.974 INFO    ] ================================================
[2026-06-12 18:30:17,989.989 INFO    ] Launching Daemon at Fri Jun 12 18:30:17 IST 2026
[2026-06-12 18:30:18,999.999 INFO    ] ================================================
[2026-06-12 18:30:18,333.333 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 18:30:18
[2026-06-12 18:30:18,649.649 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 18:30:18,793.793 INFO    ] Initializing speech engine...
[2026-06-12 18:30:18,798.798 INFO    ] 2026-06-12 18:30:18
[2026-06-12 18:30:19,003.003 INFO    ] 2026-06-12 18:30:18
[2026-06-12 18:30:19,031.031 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 18:30:19,214.214 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 18:30:19,223.223 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 18:30:19,373.373 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 18:30:19,422.422 INFO    ] time= 12/06/2026 18:30:19
[2026-06-12 18:30:19,443.443 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 18:30:19,449.449 INFO    ] Checking for existing commands in stream...
[2026-06-12 18:30:19,515.515 INFO    ] No existing commands found in stream
[2026-06-12 18:30:24,524.524 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 18:30:24,527.527 INFO    ] Waiting 0.82 seconds before fallback handling...
[2026-06-12 18:30:25,720.720 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 18:30:25,721.721 INFO    ] Checking for system updates...
[2026-06-12 18:30:25,742.742 INFO    ] 200
[2026-06-12 18:30:25,743.743 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:30:25,776.776 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 18:30:25,777.777 INFO    ] No update needed
[2026-06-12 18:30:25,778.778 INFO    ] Checking for camera pi updates...
[2026-06-12 18:30:25,799.799 INFO    ] 200
[2026-06-12 18:30:25,800.800 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:30:25,823.823 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 18:30:25,879.879 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 18:30:25,881.881 INFO    ] No camera update needed
[2026-06-12 18:30:25,882.882 INFO    ] Script finished. Safe exiting...
[2026-06-12 18:30:25,884.884 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 18:30:25,886.886 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 18:30:25,889.889 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 18:30:27,928.928 INFO    ] ================================================
[2026-06-12 18:30:27,943.943 INFO    ] Launching Daemon at Fri Jun 12 18:30:27 IST 2026
[2026-06-12 18:30:27,953.953 INFO    ] ================================================
[2026-06-12 18:30:28,283.283 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 18:30:28
[2026-06-12 18:30:28,605.605 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 18:30:28,759.759 INFO    ] Initializing speech engine...
[2026-06-12 18:30:28,770.770 INFO    ] 2026-06-12 18:30:28
[2026-06-12 18:30:28,997.997 INFO    ] 2026-06-12 18:30:28
[2026-06-12 18:30:29,029.029 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 18:30:29,231.231 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 18:30:29,242.242 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 18:30:29,394.394 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 18:30:29,467.467 INFO    ] time= 12/06/2026 18:30:29
[2026-06-12 18:30:29,489.489 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 18:30:29,496.496 INFO    ] Checking for existing commands in stream...
[2026-06-12 18:30:29,563.563 INFO    ] No existing commands found in stream
[2026-06-12 18:30:34,572.572 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 18:30:34,575.575 INFO    ] Waiting 3.31 seconds before fallback handling...
[2026-06-12 18:30:38,344.344 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 18:30:38,346.346 INFO    ] Checking for system updates...
[2026-06-12 18:30:38,368.368 INFO    ] 200
[2026-06-12 18:30:38,369.369 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:30:38,400.400 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 18:30:38,402.402 INFO    ] No update needed
[2026-06-12 18:30:38,403.403 INFO    ] Checking for camera pi updates...
[2026-06-12 18:30:38,423.423 INFO    ] 200
[2026-06-12 18:30:38,424.424 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:30:38,447.447 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 18:30:38,496.496 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 18:30:38,497.497 INFO    ] No camera update needed
[2026-06-12 18:30:38,499.499 INFO    ] Script finished. Safe exiting...
[2026-06-12 18:30:38,500.500 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 18:30:38,503.503 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 18:30:38,506.506 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 18:30:40,545.545 INFO    ] ================================================
[2026-06-12 18:30:40,560.560 INFO    ] Launching Daemon at Fri Jun 12 18:30:40 IST 2026
[2026-06-12 18:30:40,571.571 INFO    ] ================================================
[2026-06-12 18:30:40,929.929 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 18:30:40
[2026-06-12 18:30:41,241.241 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 18:30:41,376.376 INFO    ] Initializing speech engine...
[2026-06-12 18:30:41,386.386 INFO    ] 2026-06-12 18:30:41
[2026-06-12 18:30:41,590.590 INFO    ] 2026-06-12 18:30:41
[2026-06-12 18:30:41,618.618 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 18:30:41,801.801 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 18:30:41,809.809 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 18:30:41,938.938 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 18:30:42,002.002 INFO    ] time= 12/06/2026 18:30:41
[2026-06-12 18:30:42,028.028 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 18:30:42,035.035 INFO    ] Checking for existing commands in stream...
[2026-06-12 18:30:42,102.102 INFO    ] No existing commands found in stream
[2026-06-12 18:30:47,111.111 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 18:30:47,114.114 INFO    ] Waiting 0.98 seconds before fallback handling...
[2026-06-12 18:30:48,462.462 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 18:30:48,464.464 INFO    ] Checking for system updates...
[2026-06-12 18:30:48,485.485 INFO    ] 200
[2026-06-12 18:30:48,486.486 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:30:48,519.519 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 18:30:48,521.521 INFO    ] No update needed
[2026-06-12 18:30:48,522.522 INFO    ] Checking for camera pi updates...
[2026-06-12 18:30:48,542.542 INFO    ] 200
[2026-06-12 18:30:48,543.543 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:30:48,567.567 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 18:30:48,609.609 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 18:30:48,611.611 INFO    ] No camera update needed
[2026-06-12 18:30:48,612.612 INFO    ] Script finished. Safe exiting...
[2026-06-12 18:30:48,613.613 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 18:30:48,616.616 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 18:30:48,619.619 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 18:30:50,658.658 INFO    ] ================================================
[2026-06-12 18:30:50,673.673 INFO    ] Launching Daemon at Fri Jun 12 18:30:50 IST 2026
[2026-06-12 18:30:50,684.684 INFO    ] ================================================
[2026-06-12 18:30:51,017.017 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 18:30:51
[2026-06-12 18:30:51,328.328 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 18:30:51,470.470 INFO    ] Initializing speech engine...
[2026-06-12 18:30:51,474.474 INFO    ] 2026-06-12 18:30:51
[2026-06-12 18:30:51,677.677 INFO    ] 2026-06-12 18:30:51
[2026-06-12 18:30:51,706.706 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 18:30:51,889.889 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 18:30:51,897.897 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 18:30:52,037.037 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 18:30:52,094.094 INFO    ] time= 12/06/2026 18:30:52
[2026-06-12 18:30:52,117.117 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 18:30:52,124.124 INFO    ] Checking for existing commands in stream...
[2026-06-12 18:30:52,191.191 INFO    ] No existing commands found in stream
[2026-06-12 18:30:57,205.205 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 18:30:57,213.213 INFO    ] Waiting 2.52 seconds before fallback handling...
[2026-06-12 18:31:00,116.116 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 18:31:00,117.117 INFO    ] Checking for system updates...
[2026-06-12 18:31:00,138.138 INFO    ] 200
[2026-06-12 18:31:00,139.139 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:31:00,168.168 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 18:31:00,170.170 INFO    ] No update needed
[2026-06-12 18:31:00,171.171 INFO    ] Checking for camera pi updates...
[2026-06-12 18:31:00,191.191 INFO    ] 200
[2026-06-12 18:31:00,192.192 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:31:00,216.216 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 18:31:00,263.263 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 18:31:00,265.265 INFO    ] No camera update needed
[2026-06-12 18:31:00,266.266 INFO    ] Script finished. Safe exiting...
[2026-06-12 18:31:00,267.267 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 18:31:00,270.270 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 18:31:00,273.273 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 18:31:02,305.305 INFO    ] ================================================
[2026-06-12 18:31:02,324.324 INFO    ] Launching Daemon at Fri Jun 12 18:31:02 IST 2026
[2026-06-12 18:31:02,334.334 INFO    ] ================================================
[2026-06-12 18:31:02,688.688 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 18:31:02
[2026-06-12 18:31:03,038.038 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 18:31:03,182.182 INFO    ] Initializing speech engine...
[2026-06-12 18:31:03,185.185 INFO    ] 2026-06-12 18:31:03
[2026-06-12 18:31:03,413.413 INFO    ] 2026-06-12 18:31:03
[2026-06-12 18:31:03,444.444 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 18:31:03,575.575 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 18:31:03,593.593 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 18:31:03,781.781 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 18:31:03,838.838 INFO    ] time= 12/06/2026 18:31:03
[2026-06-12 18:31:03,877.877 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 18:31:03,888.888 INFO    ] Checking for existing commands in stream...
[2026-06-12 18:31:03,989.989 INFO    ] No existing commands found in stream
[2026-06-12 18:31:08,998.998 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 18:31:09,001.001 INFO    ] Waiting 1.09 seconds before fallback handling...
[2026-06-12 18:31:10,423.423 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 18:31:10,426.426 INFO    ] Checking for system updates...
[2026-06-12 18:31:10,465.465 INFO    ] 200
[2026-06-12 18:31:10,467.467 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:31:10,521.521 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 18:31:10,524.524 INFO    ] No update needed
[2026-06-12 18:31:10,526.526 INFO    ] Checking for camera pi updates...
[2026-06-12 18:31:10,564.564 INFO    ] 200
[2026-06-12 18:31:10,567.567 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:31:10,601.601 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 18:31:10,645.645 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 18:31:10,646.646 INFO    ] No camera update needed
[2026-06-12 18:31:10,647.647 INFO    ] Script finished. Safe exiting...
[2026-06-12 18:31:10,649.649 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 18:31:10,652.652 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 18:31:10,655.655 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 18:31:12,693.693 INFO    ] ================================================
[2026-06-12 18:31:12,708.708 INFO    ] Launching Daemon at Fri Jun 12 18:31:12 IST 2026
[2026-06-12 18:31:12,719.719 INFO    ] ================================================
[2026-06-12 18:31:13,057.057 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 18:31:13
[2026-06-12 18:31:13,379.379 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 18:31:13,516.516 INFO    ] Initializing speech engine...
[2026-06-12 18:31:13,529.529 INFO    ] 2026-06-12 18:31:13
[2026-06-12 18:31:13,746.746 INFO    ] 2026-06-12 18:31:13
[2026-06-12 18:31:13,776.776 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 18:31:13,974.974 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 18:31:13,977.977 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 18:31:14,123.123 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 18:31:14,194.194 INFO    ] time= 12/06/2026 18:31:14
[2026-06-12 18:31:14,220.220 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 18:31:14,226.226 INFO    ] Checking for existing commands in stream...
[2026-06-12 18:31:14,295.295 INFO    ] No existing commands found in stream
[2026-06-12 18:31:19,306.306 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 18:31:19,309.309 INFO    ] Waiting 1.07 seconds before fallback handling...
[2026-06-12 18:31:20,736.736 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 18:31:20,737.737 INFO    ] Checking for system updates...
[2026-06-12 18:31:20,758.758 INFO    ] 200
[2026-06-12 18:31:20,760.760 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:31:20,791.791 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 18:31:20,792.792 INFO    ] No update needed
[2026-06-12 18:31:20,794.794 INFO    ] Checking for camera pi updates...
[2026-06-12 18:31:20,813.813 INFO    ] 200
[2026-06-12 18:31:20,814.814 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:31:20,843.843 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 18:31:20,884.884 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 18:31:20,885.885 INFO    ] No camera update needed
[2026-06-12 18:31:20,886.886 INFO    ] Script finished. Safe exiting...
[2026-06-12 18:31:20,887.887 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 18:31:20,890.890 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 18:31:20,893.893 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 18:31:22,931.931 INFO    ] ================================================
[2026-06-12 18:31:22,947.947 INFO    ] Launching Daemon at Fri Jun 12 18:31:22 IST 2026
[2026-06-12 18:31:22,957.957 INFO    ] ================================================
[2026-06-12 18:31:23,287.287 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 18:31:23
[2026-06-12 18:31:23,599.599 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 18:31:23,738.738 INFO    ] Initializing speech engine...
[2026-06-12 18:31:23,747.747 INFO    ] 2026-06-12 18:31:23
[2026-06-12 18:31:23,962.962 INFO    ] 2026-06-12 18:31:23
[2026-06-12 18:31:23,994.994 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 18:31:24,129.129 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 18:31:24,189.189 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 18:31:24,329.329 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 18:31:24,396.396 INFO    ] time= 12/06/2026 18:31:24
[2026-06-12 18:31:24,424.424 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 18:31:24,435.435 INFO    ] Checking for existing commands in stream...
[2026-06-12 18:31:24,509.509 INFO    ] No existing commands found in stream
[2026-06-12 18:31:29,520.520 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 18:31:29,528.528 INFO    ] Waiting 0.28 seconds before fallback handling...
[2026-06-12 18:31:30,166.166 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 18:31:30,168.168 INFO    ] Checking for system updates...
[2026-06-12 18:31:30,189.189 INFO    ] 200
[2026-06-12 18:31:30,191.191 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:31:30,221.221 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 18:31:30,222.222 INFO    ] No update needed
[2026-06-12 18:31:30,224.224 INFO    ] Checking for camera pi updates...
[2026-06-12 18:31:30,243.243 INFO    ] 200
[2026-06-12 18:31:30,245.245 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:31:30,269.269 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 18:31:30,308.308 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 18:31:30,310.310 INFO    ] No camera update needed
[2026-06-12 18:31:30,311.311 INFO    ] Script finished. Safe exiting...
[2026-06-12 18:31:30,313.313 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 18:31:30,316.316 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 18:31:30,319.319 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 18:31:32,351.351 INFO    ] ================================================
[2026-06-12 18:31:32,360.360 INFO    ] Launching Daemon at Fri Jun 12 18:31:32 IST 2026
[2026-06-12 18:31:32,367.367 INFO    ] ================================================
[2026-06-12 18:31:32,694.694 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 18:31:32
[2026-06-12 18:31:33,044.044 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 18:31:33,193.193 INFO    ] Initializing speech engine...
[2026-06-12 18:31:33,198.198 INFO    ] 2026-06-12 18:31:33
[2026-06-12 18:31:33,405.405 INFO    ] 2026-06-12 18:31:33
[2026-06-12 18:31:33,435.435 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 18:31:33,619.619 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 18:31:33,628.628 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 18:31:33,755.755 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 18:31:33,821.821 INFO    ] time= 12/06/2026 18:31:33
[2026-06-12 18:31:33,849.849 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 18:31:33,855.855 INFO    ] Checking for existing commands in stream...
[2026-06-12 18:31:33,922.922 INFO    ] No existing commands found in stream
[2026-06-12 18:31:38,955.955 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 18:31:38,958.958 INFO    ] Waiting 0.20 seconds before fallback handling...
[2026-06-12 18:31:39,539.539 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 18:31:39,540.540 INFO    ] Checking for system updates...
[2026-06-12 18:31:39,561.561 INFO    ] 200
[2026-06-12 18:31:39,563.563 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:31:39,593.593 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 18:31:39,594.594 INFO    ] No update needed
[2026-06-12 18:31:39,596.596 INFO    ] Checking for camera pi updates...
[2026-06-12 18:31:39,615.615 INFO    ] 200
[2026-06-12 18:31:39,617.617 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:31:39,641.641 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 18:31:39,682.682 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 18:31:39,683.683 INFO    ] No camera update needed
[2026-06-12 18:31:39,685.685 INFO    ] Script finished. Safe exiting...
[2026-06-12 18:31:39,686.686 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 18:31:39,689.689 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 18:31:39,692.692 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 18:31:41,731.731 INFO    ] ================================================
[2026-06-12 18:31:41,746.746 INFO    ] Launching Daemon at Fri Jun 12 18:31:41 IST 2026
[2026-06-12 18:31:41,757.757 INFO    ] ================================================
[2026-06-12 18:31:42,090.090 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 18:31:42
[2026-06-12 18:31:42,407.407 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 18:31:42,551.551 INFO    ] Initializing speech engine...
[2026-06-12 18:31:42,556.556 INFO    ] 2026-06-12 18:31:42
[2026-06-12 18:31:42,761.761 INFO    ] 2026-06-12 18:31:42
[2026-06-12 18:31:42,788.788 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 18:31:42,973.973 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 18:31:42,982.982 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 18:31:43,122.122 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 18:31:43,178.178 INFO    ] time= 12/06/2026 18:31:43
[2026-06-12 18:31:43,202.202 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 18:31:43,208.208 INFO    ] Checking for existing commands in stream...
[2026-06-12 18:31:43,274.274 INFO    ] No existing commands found in stream
[2026-06-12 18:31:48,288.288 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 18:31:48,291.291 INFO    ] Waiting 3.76 seconds before fallback handling...
[2026-06-12 18:31:52,470.470 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 18:31:52,471.471 INFO    ] Checking for system updates...
[2026-06-12 18:31:52,492.492 INFO    ] 200
[2026-06-12 18:31:52,493.493 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:31:52,526.526 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 18:31:52,527.527 INFO    ] No update needed
[2026-06-12 18:31:52,529.529 INFO    ] Checking for camera pi updates...
[2026-06-12 18:31:52,551.551 INFO    ] 200
[2026-06-12 18:31:52,552.552 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:31:52,578.578 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 18:31:52,678.678 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 18:31:52,679.679 INFO    ] No camera update needed
[2026-06-12 18:31:52,681.681 INFO    ] Script finished. Safe exiting...
[2026-06-12 18:31:52,682.682 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 18:31:52,685.685 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 18:31:52,688.688 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 18:31:54,727.727 INFO    ] ================================================
[2026-06-12 18:31:54,743.743 INFO    ] Launching Daemon at Fri Jun 12 18:31:54 IST 2026
[2026-06-12 18:31:54,753.753 INFO    ] ================================================
[2026-06-12 18:31:55,140.140 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 18:31:55
[2026-06-12 18:31:55,478.478 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 18:31:55,623.623 INFO    ] Initializing speech engine...
[2026-06-12 18:31:55,633.633 INFO    ] 2026-06-12 18:31:55
[2026-06-12 18:31:55,841.841 INFO    ] 2026-06-12 18:31:55
[2026-06-12 18:31:55,870.870 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 18:31:56,056.056 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 18:31:56,060.060 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 18:31:56,196.196 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 18:31:56,263.263 INFO    ] time= 12/06/2026 18:31:56
[2026-06-12 18:31:56,287.287 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 18:31:56,294.294 INFO    ] Checking for existing commands in stream...
[2026-06-12 18:31:56,409.409 INFO    ] No existing commands found in stream
[2026-06-12 18:32:01,419.419 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 18:32:01,422.422 INFO    ] Waiting 0.71 seconds before fallback handling...
[2026-06-12 18:32:02,437.437 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 18:32:02,438.438 INFO    ] Checking for system updates...
[2026-06-12 18:32:02,459.459 INFO    ] 200
[2026-06-12 18:32:02,461.461 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:32:02,494.494 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 18:32:02,496.496 INFO    ] No update needed
[2026-06-12 18:32:02,498.498 INFO    ] Checking for camera pi updates...
[2026-06-12 18:32:02,525.525 INFO    ] 200
[2026-06-12 18:32:02,527.527 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:32:02,558.558 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 18:32:02,606.606 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 18:32:02,608.608 INFO    ] No camera update needed
[2026-06-12 18:32:02,609.609 INFO    ] Script finished. Safe exiting...
[2026-06-12 18:32:02,611.611 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 18:32:02,615.615 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 18:32:02,619.619 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 18:32:04,659.659 INFO    ] ================================================
[2026-06-12 18:32:04,674.674 INFO    ] Launching Daemon at Fri Jun 12 18:32:04 IST 2026
[2026-06-12 18:32:04,685.685 INFO    ] ================================================
[2026-06-12 18:32:05,054.054 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 18:32:05
[2026-06-12 18:32:05,382.382 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 18:32:05,515.515 INFO    ] Initializing speech engine...
[2026-06-12 18:32:05,520.520 INFO    ] 2026-06-12 18:32:05
[2026-06-12 18:32:05,747.747 INFO    ] 2026-06-12 18:32:05
[2026-06-12 18:32:05,778.778 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 18:32:05,973.973 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 18:32:05,976.976 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 18:32:06,121.121 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 18:32:06,175.175 INFO    ] time= 12/06/2026 18:32:06
[2026-06-12 18:32:06,217.217 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 18:32:06,220.220 INFO    ] Checking for existing commands in stream...
[2026-06-12 18:32:06,296.296 INFO    ] No existing commands found in stream
[2026-06-12 18:32:11,310.310 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 18:32:11,312.312 INFO    ] Waiting 0.43 seconds before fallback handling...
[2026-06-12 18:32:12,134.134 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 18:32:12,136.136 INFO    ] Checking for system updates...
[2026-06-12 18:32:12,156.156 INFO    ] 200
[2026-06-12 18:32:12,158.158 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:32:12,190.190 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 18:32:12,191.191 INFO    ] No update needed
[2026-06-12 18:32:12,193.193 INFO    ] Checking for camera pi updates...
[2026-06-12 18:32:12,214.214 INFO    ] 200
[2026-06-12 18:32:12,215.215 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:32:12,240.240 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 18:32:12,287.287 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 18:32:12,288.288 INFO    ] No camera update needed
[2026-06-12 18:32:12,290.290 INFO    ] Script finished. Safe exiting...
[2026-06-12 18:32:12,291.291 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 18:32:12,294.294 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 18:32:12,296.296 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 18:32:14,335.335 INFO    ] ================================================
[2026-06-12 18:32:14,350.350 INFO    ] Launching Daemon at Fri Jun 12 18:32:14 IST 2026
[2026-06-12 18:32:14,361.361 INFO    ] ================================================
[2026-06-12 18:32:14,694.694 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 18:32:14
[2026-06-12 18:32:15,006.006 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 18:32:15,139.139 INFO    ] Initializing speech engine...
[2026-06-12 18:32:15,143.143 INFO    ] 2026-06-12 18:32:15
[2026-06-12 18:32:15,369.369 INFO    ] 2026-06-12 18:32:15
[2026-06-12 18:32:15,399.399 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 18:32:15,594.594 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 18:32:15,603.603 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 18:32:15,756.756 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 18:32:15,811.811 INFO    ] time= 12/06/2026 18:32:15
[2026-06-12 18:32:15,836.836 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 18:32:15,837.837 INFO    ] Checking for existing commands in stream...
[2026-06-12 18:32:15,939.939 INFO    ] No existing commands found in stream
[2026-06-12 18:32:20,948.948 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 18:32:20,951.951 INFO    ] Waiting 0.42 seconds before fallback handling...
[2026-06-12 18:32:21,746.746 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 18:32:21,753.753 INFO    ] Checking for system updates...
[2026-06-12 18:32:21,773.773 INFO    ] 200
[2026-06-12 18:32:21,775.775 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:32:21,804.804 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 18:32:21,805.805 INFO    ] No update needed
[2026-06-12 18:32:21,807.807 INFO    ] Checking for camera pi updates...
[2026-06-12 18:32:21,826.826 INFO    ] 200
[2026-06-12 18:32:21,827.827 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:32:21,852.852 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 18:32:21,896.896 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 18:32:21,897.897 INFO    ] No camera update needed
[2026-06-12 18:32:21,898.898 INFO    ] Script finished. Safe exiting...
[2026-06-12 18:32:21,900.900 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 18:32:21,903.903 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 18:32:21,905.905 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 18:32:23,943.943 INFO    ] ================================================
[2026-06-12 18:32:23,958.958 INFO    ] Launching Daemon at Fri Jun 12 18:32:23 IST 2026
[2026-06-12 18:32:23,968.968 INFO    ] ================================================
[2026-06-12 18:32:24,300.300 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 18:32:24
[2026-06-12 18:32:24,613.613 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 18:32:24,743.743 INFO    ] Initializing speech engine...
[2026-06-12 18:32:24,747.747 INFO    ] 2026-06-12 18:32:24
[2026-06-12 18:32:24,965.965 INFO    ] 2026-06-12 18:32:24
[2026-06-12 18:32:24,994.994 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 18:32:25,180.180 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 18:32:25,189.189 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 18:32:25,313.313 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 18:32:25,364.364 INFO    ] time= 12/06/2026 18:32:25
[2026-06-12 18:32:25,405.405 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 18:32:25,415.415 INFO    ] Checking for existing commands in stream...
[2026-06-12 18:32:25,487.487 INFO    ] No existing commands found in stream
[2026-06-12 18:32:30,496.496 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 18:32:30,499.499 INFO    ] Waiting 0.55 seconds before fallback handling...
[2026-06-12 18:32:31,439.439 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 18:32:31,440.440 INFO    ] Checking for system updates...
[2026-06-12 18:32:31,463.463 INFO    ] 200
[2026-06-12 18:32:31,464.464 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:32:31,499.499 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 18:32:31,501.501 INFO    ] No update needed
[2026-06-12 18:32:31,502.502 INFO    ] Checking for camera pi updates...
[2026-06-12 18:32:31,524.524 INFO    ] 200
[2026-06-12 18:32:31,526.526 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:32:31,552.552 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 18:32:31,593.593 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 18:32:31,594.594 INFO    ] No camera update needed
[2026-06-12 18:32:31,596.596 INFO    ] Script finished. Safe exiting...
[2026-06-12 18:32:31,599.599 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 18:32:31,603.603 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 18:32:31,607.607 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 18:32:33,638.638 INFO    ] ================================================
[2026-06-12 18:32:33,653.653 INFO    ] Launching Daemon at Fri Jun 12 18:32:33 IST 2026
[2026-06-12 18:32:33,664.664 INFO    ] ================================================
[2026-06-12 18:32:34,028.028 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 18:32:34
[2026-06-12 18:32:34,338.338 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 18:32:34,480.480 INFO    ] Initializing speech engine...
[2026-06-12 18:32:34,485.485 INFO    ] 2026-06-12 18:32:34
[2026-06-12 18:32:34,687.687 INFO    ] 2026-06-12 18:32:34
[2026-06-12 18:32:34,716.716 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 18:32:34,898.898 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 18:32:34,902.902 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 18:32:35,015.015 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 18:32:35,016.016 INFO    ] time= 12/06/2026 18:32:35
[2026-06-12 18:32:35,018.018 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 18:32:35,019.019 INFO    ] Checking for existing commands in stream...
[2026-06-12 18:32:35,128.128 INFO    ] No existing commands found in stream
[2026-06-12 18:32:40,140.140 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 18:32:40,143.143 INFO    ] Waiting 3.42 seconds before fallback handling...
[2026-06-12 18:32:43,937.937 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 18:32:43,938.938 INFO    ] Checking for system updates...
[2026-06-12 18:32:43,959.959 INFO    ] 200
[2026-06-12 18:32:43,960.960 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:32:43,990.990 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 18:32:43,991.991 INFO    ] No update needed
[2026-06-12 18:32:43,992.992 INFO    ] Checking for camera pi updates...
[2026-06-12 18:32:44,011.011 INFO    ] 200
[2026-06-12 18:32:44,013.013 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:32:44,035.035 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 18:32:44,174.174 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 18:32:44,179.179 INFO    ] No camera update needed
[2026-06-12 18:32:44,180.180 INFO    ] Script finished. Safe exiting...
[2026-06-12 18:32:44,181.181 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 18:32:44,184.184 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 18:32:44,187.187 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 18:32:46,226.226 INFO    ] ================================================
[2026-06-12 18:32:46,241.241 INFO    ] Launching Daemon at Fri Jun 12 18:32:46 IST 2026
[2026-06-12 18:32:46,251.251 INFO    ] ================================================
[2026-06-12 18:32:46,579.579 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 18:32:46
[2026-06-12 18:32:46,893.893 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 18:32:47,040.040 INFO    ] Initializing speech engine...
[2026-06-12 18:32:47,045.045 INFO    ] 2026-06-12 18:32:47
[2026-06-12 18:32:47,249.249 INFO    ] 2026-06-12 18:32:47
[2026-06-12 18:32:47,279.279 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 18:32:47,464.464 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 18:32:47,474.474 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 18:32:47,619.619 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 18:32:47,672.672 INFO    ] time= 12/06/2026 18:32:47
[2026-06-12 18:32:47,695.695 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 18:32:47,701.701 INFO    ] Checking for existing commands in stream...
[2026-06-12 18:32:47,768.768 INFO    ] No existing commands found in stream
[2026-06-12 18:32:52,777.777 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 18:32:52,780.780 INFO    ] Waiting 3.56 seconds before fallback handling...
[2026-06-12 18:32:56,697.697 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 18:32:56,699.699 INFO    ] Checking for system updates...
[2026-06-12 18:32:56,719.719 INFO    ] 200
[2026-06-12 18:32:56,720.720 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:32:56,750.750 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 18:32:56,752.752 INFO    ] No update needed
[2026-06-12 18:32:56,753.753 INFO    ] Checking for camera pi updates...
[2026-06-12 18:32:56,772.772 INFO    ] 200
[2026-06-12 18:32:56,773.773 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:32:56,798.798 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 18:32:56,843.843 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 18:32:56,845.845 INFO    ] No camera update needed
[2026-06-12 18:32:56,846.846 INFO    ] Script finished. Safe exiting...
[2026-06-12 18:32:56,847.847 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 18:32:56,850.850 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 18:32:56,853.853 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 18:32:58,892.892 INFO    ] ================================================
[2026-06-12 18:32:58,907.907 INFO    ] Launching Daemon at Fri Jun 12 18:32:58 IST 2026
[2026-06-12 18:32:58,918.918 INFO    ] ================================================
[2026-06-12 18:32:59,285.285 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 18:32:59
[2026-06-12 18:32:59,614.614 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 18:32:59,762.762 INFO    ] Initializing speech engine...
[2026-06-12 18:32:59,768.768 INFO    ] 2026-06-12 18:32:59
[2026-06-12 18:32:59,974.974 INFO    ] 2026-06-12 18:32:59
[2026-06-12 18:33:00,002.002 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 18:33:00,186.186 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 18:33:00,196.196 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 18:33:00,338.338 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 18:33:00,397.397 INFO    ] time= 12/06/2026 18:33:00
[2026-06-12 18:33:00,418.418 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 18:33:00,425.425 INFO    ] Checking for existing commands in stream...
[2026-06-12 18:33:00,491.491 INFO    ] No existing commands found in stream
[2026-06-12 18:33:05,521.521 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 18:33:05,524.524 INFO    ] Waiting 3.39 seconds before fallback handling...
[2026-06-12 18:33:09,305.305 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 18:33:09,307.307 INFO    ] Checking for system updates...
[2026-06-12 18:33:09,327.327 INFO    ] 200
[2026-06-12 18:33:09,329.329 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:33:09,360.360 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 18:33:09,361.361 INFO    ] No update needed
[2026-06-12 18:33:09,362.362 INFO    ] Checking for camera pi updates...
[2026-06-12 18:33:09,384.384 INFO    ] 200
[2026-06-12 18:33:09,385.385 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:33:09,409.409 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 18:33:09,455.455 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 18:33:09,456.456 INFO    ] No camera update needed
[2026-06-12 18:33:09,457.457 INFO    ] Script finished. Safe exiting...
[2026-06-12 18:33:09,458.458 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 18:33:09,462.462 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 18:33:09,464.464 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 18:33:11,502.502 INFO    ] ================================================
[2026-06-12 18:33:11,517.517 INFO    ] Launching Daemon at Fri Jun 12 18:33:11 IST 2026
[2026-06-12 18:33:11,528.528 INFO    ] ================================================
[2026-06-12 18:33:11,853.853 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 18:33:11
[2026-06-12 18:33:12,170.170 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 18:33:12,314.314 INFO    ] Initializing speech engine...
[2026-06-12 18:33:12,324.324 INFO    ] 2026-06-12 18:33:12
[2026-06-12 18:33:12,537.537 INFO    ] 2026-06-12 18:33:12
[2026-06-12 18:33:12,567.567 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 18:33:12,762.762 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 18:33:12,772.772 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 18:33:12,907.907 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 18:33:12,973.973 INFO    ] time= 12/06/2026 18:33:12
[2026-06-12 18:33:13,005.005 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 18:33:13,007.007 INFO    ] Checking for existing commands in stream...
[2026-06-12 18:33:13,082.082 INFO    ] No existing commands found in stream
[2026-06-12 18:33:18,092.092 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 18:33:18,094.094 INFO    ] Waiting 0.61 seconds before fallback handling...
[2026-06-12 18:33:19,075.075 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 18:33:19,076.076 INFO    ] Checking for system updates...
[2026-06-12 18:33:19,097.097 INFO    ] 200
[2026-06-12 18:33:19,098.098 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:33:19,128.128 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 18:33:19,130.130 INFO    ] No update needed
[2026-06-12 18:33:19,131.131 INFO    ] Checking for camera pi updates...
[2026-06-12 18:33:19,152.152 INFO    ] 200
[2026-06-12 18:33:19,154.154 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:33:19,176.176 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 18:33:19,228.228 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 18:33:19,229.229 INFO    ] No camera update needed
[2026-06-12 18:33:19,231.231 INFO    ] Script finished. Safe exiting...
[2026-06-12 18:33:19,232.232 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 18:33:19,235.235 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 18:33:19,238.238 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 18:33:21,277.277 INFO    ] ================================================
[2026-06-12 18:33:21,293.293 INFO    ] Launching Daemon at Fri Jun 12 18:33:21 IST 2026
[2026-06-12 18:33:21,305.305 INFO    ] ================================================
[2026-06-12 18:33:21,653.653 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 18:33:21
[2026-06-12 18:33:21,971.971 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 18:33:22,106.106 INFO    ] Initializing speech engine...
[2026-06-12 18:33:22,120.120 INFO    ] 2026-06-12 18:33:22
[2026-06-12 18:33:22,338.338 INFO    ] 2026-06-12 18:33:22
[2026-06-12 18:33:22,368.368 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 18:33:22,564.564 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 18:33:22,573.573 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 18:33:22,712.712 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 18:33:22,771.771 INFO    ] time= 12/06/2026 18:33:22
[2026-06-12 18:33:22,808.808 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 18:33:22,810.810 INFO    ] Checking for existing commands in stream...
[2026-06-12 18:33:22,887.887 INFO    ] No existing commands found in stream
[2026-06-12 18:33:27,902.902 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 18:33:27,904.904 INFO    ] Waiting 1.74 seconds before fallback handling...
[2026-06-12 18:33:30,017.017 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 18:33:30,018.018 INFO    ] Checking for system updates...
[2026-06-12 18:33:30,039.039 INFO    ] 200
[2026-06-12 18:33:30,041.041 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:33:30,071.071 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 18:33:30,073.073 INFO    ] No update needed
[2026-06-12 18:33:30,074.074 INFO    ] Checking for camera pi updates...
[2026-06-12 18:33:30,093.093 INFO    ] 200
[2026-06-12 18:33:30,095.095 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:33:30,118.118 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 18:33:30,163.163 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 18:33:30,164.164 INFO    ] No camera update needed
[2026-06-12 18:33:30,165.165 INFO    ] Script finished. Safe exiting...
[2026-06-12 18:33:30,167.167 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 18:33:30,170.170 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 18:33:30,173.173 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 18:33:32,205.205 INFO    ] ================================================
[2026-06-12 18:33:32,213.213 INFO    ] Launching Daemon at Fri Jun 12 18:33:32 IST 2026
[2026-06-12 18:33:32,219.219 INFO    ] ================================================
[2026-06-12 18:33:32,567.567 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 18:33:32
[2026-06-12 18:33:32,878.878 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 18:33:33,020.020 INFO    ] Initializing speech engine...
[2026-06-12 18:33:33,025.025 INFO    ] 2026-06-12 18:33:33
[2026-06-12 18:33:33,229.229 INFO    ] 2026-06-12 18:33:33
[2026-06-12 18:33:33,258.258 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 18:33:33,445.445 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 18:33:33,453.453 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 18:33:33,607.607 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 18:33:33,657.657 INFO    ] time= 12/06/2026 18:33:33
[2026-06-12 18:33:33,679.679 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 18:33:33,685.685 INFO    ] Checking for existing commands in stream...
[2026-06-12 18:33:33,753.753 INFO    ] No existing commands found in stream
[2026-06-12 18:33:38,762.762 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 18:33:38,764.764 INFO    ] Waiting 1.28 seconds before fallback handling...
[2026-06-12 18:33:40,466.466 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 18:33:40,467.467 INFO    ] Checking for system updates...
[2026-06-12 18:33:40,488.488 INFO    ] 200
[2026-06-12 18:33:40,490.490 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:33:40,520.520 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 18:33:40,521.521 INFO    ] No update needed
[2026-06-12 18:33:40,523.523 INFO    ] Checking for camera pi updates...
[2026-06-12 18:33:40,542.542 INFO    ] 200
[2026-06-12 18:33:40,544.544 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:33:40,567.567 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 18:33:40,610.610 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 18:33:40,612.612 INFO    ] No camera update needed
[2026-06-12 18:33:40,613.613 INFO    ] Script finished. Safe exiting...
[2026-06-12 18:33:40,614.614 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 18:33:40,618.618 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 18:33:40,621.621 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 18:33:42,662.662 INFO    ] ================================================
[2026-06-12 18:33:42,677.677 INFO    ] Launching Daemon at Fri Jun 12 18:33:42 IST 2026
[2026-06-12 18:33:42,689.689 INFO    ] ================================================
[2026-06-12 18:33:43,034.034 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 18:33:43
[2026-06-12 18:33:43,367.367 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 18:33:43,518.518 INFO    ] Initializing speech engine...
[2026-06-12 18:33:43,524.524 INFO    ] 2026-06-12 18:33:43
[2026-06-12 18:33:43,732.732 INFO    ] 2026-06-12 18:33:43
[2026-06-12 18:33:43,761.761 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 18:33:43,948.948 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 18:33:43,952.952 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 18:33:44,111.111 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 18:33:44,160.160 INFO    ] time= 12/06/2026 18:33:44
[2026-06-12 18:33:44,183.183 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 18:33:44,189.189 INFO    ] Checking for existing commands in stream...
[2026-06-12 18:33:44,257.257 INFO    ] No existing commands found in stream
[2026-06-12 18:33:49,267.267 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 18:33:49,270.270 INFO    ] Waiting 2.80 seconds before fallback handling...
[2026-06-12 18:33:52,655.655 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 18:33:52,657.657 INFO    ] Checking for system updates...
[2026-06-12 18:33:52,678.678 INFO    ] 200
[2026-06-12 18:33:52,679.679 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:33:52,709.709 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 18:33:52,711.711 INFO    ] No update needed
[2026-06-12 18:33:52,713.713 INFO    ] Checking for camera pi updates...
[2026-06-12 18:33:52,733.733 INFO    ] 200
[2026-06-12 18:33:52,734.734 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:33:52,756.756 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 18:33:52,816.816 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 18:33:52,817.817 INFO    ] No camera update needed
[2026-06-12 18:33:52,818.818 INFO    ] Script finished. Safe exiting...
[2026-06-12 18:33:52,819.819 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 18:33:52,822.822 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 18:33:52,825.825 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 18:33:54,863.863 INFO    ] ================================================
[2026-06-12 18:33:54,879.879 INFO    ] Launching Daemon at Fri Jun 12 18:33:54 IST 2026
[2026-06-12 18:33:54,890.890 INFO    ] ================================================
[2026-06-12 18:33:55,252.252 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 18:33:55
[2026-06-12 18:33:55,563.563 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 18:33:55,694.694 INFO    ] Initializing speech engine...
[2026-06-12 18:33:55,697.697 INFO    ] 2026-06-12 18:33:55
[2026-06-12 18:33:55,915.915 INFO    ] 2026-06-12 18:33:55
[2026-06-12 18:33:55,944.944 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 18:33:56,068.068 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 18:33:56,132.132 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 18:33:56,271.271 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 18:33:56,340.340 INFO    ] time= 12/06/2026 18:33:56
[2026-06-12 18:33:56,364.364 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 18:33:56,370.370 INFO    ] Checking for existing commands in stream...
[2026-06-12 18:33:56,439.439 INFO    ] No existing commands found in stream
[2026-06-12 18:34:01,448.448 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 18:34:01,457.457 INFO    ] Waiting 3.63 seconds before fallback handling...
[2026-06-12 18:34:05,484.484 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 18:34:05,485.485 INFO    ] Checking for system updates...
[2026-06-12 18:34:05,505.505 INFO    ] 200
[2026-06-12 18:34:05,507.507 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:34:05,537.537 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 18:34:05,538.538 INFO    ] No update needed
[2026-06-12 18:34:05,539.539 INFO    ] Checking for camera pi updates...
[2026-06-12 18:34:05,558.558 INFO    ] 200
[2026-06-12 18:34:05,560.560 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:34:05,583.583 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 18:34:05,625.625 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 18:34:05,630.630 INFO    ] No camera update needed
[2026-06-12 18:34:05,633.633 INFO    ] Script finished. Safe exiting...
[2026-06-12 18:34:05,635.635 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 18:34:05,643.643 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 18:34:05,647.647 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 18:34:07,687.687 INFO    ] ================================================
[2026-06-12 18:34:07,703.703 INFO    ] Launching Daemon at Fri Jun 12 18:34:07 IST 2026
[2026-06-12 18:34:07,714.714 INFO    ] ================================================
[2026-06-12 18:34:08,062.062 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 18:34:08
[2026-06-12 18:34:08,394.394 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 18:34:08,546.546 INFO    ] Initializing speech engine...
[2026-06-12 18:34:08,551.551 INFO    ] 2026-06-12 18:34:08
[2026-06-12 18:34:08,755.755 INFO    ] 2026-06-12 18:34:08
[2026-06-12 18:34:08,785.785 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 18:34:08,967.967 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 18:34:08,971.971 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 18:34:09,117.117 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 18:34:09,174.174 INFO    ] time= 12/06/2026 18:34:09
[2026-06-12 18:34:09,197.197 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 18:34:09,203.203 INFO    ] Checking for existing commands in stream...
[2026-06-12 18:34:09,270.270 INFO    ] No existing commands found in stream
[2026-06-12 18:34:14,284.284 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 18:34:14,287.287 INFO    ] Waiting 1.99 seconds before fallback handling...
[2026-06-12 18:34:16,679.679 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 18:34:16,715.715 INFO    ] Checking for system updates...
[2026-06-12 18:34:16,735.735 INFO    ] 200
[2026-06-12 18:34:16,736.736 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:34:16,766.766 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 18:34:16,767.767 INFO    ] No update needed
[2026-06-12 18:34:16,768.768 INFO    ] Checking for camera pi updates...
[2026-06-12 18:34:16,792.792 INFO    ] 200
[2026-06-12 18:34:16,793.793 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:34:16,816.816 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 18:34:16,866.866 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 18:34:16,867.867 INFO    ] No camera update needed
[2026-06-12 18:34:16,869.869 INFO    ] Script finished. Safe exiting...
[2026-06-12 18:34:16,870.870 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 18:34:16,873.873 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 18:34:16,876.876 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 18:34:18,915.915 INFO    ] ================================================
[2026-06-12 18:34:18,931.931 INFO    ] Launching Daemon at Fri Jun 12 18:34:18 IST 2026
[2026-06-12 18:34:18,942.942 INFO    ] ================================================
[2026-06-12 18:34:19,280.280 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 18:34:19
[2026-06-12 18:34:19,592.592 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 18:34:19,724.724 INFO    ] Initializing speech engine...
[2026-06-12 18:34:19,729.729 INFO    ] 2026-06-12 18:34:19
[2026-06-12 18:34:19,955.955 INFO    ] 2026-06-12 18:34:19
[2026-06-12 18:34:19,985.985 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 18:34:20,181.181 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 18:34:20,185.185 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 18:34:20,322.322 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 18:34:20,368.368 INFO    ] time= 12/06/2026 18:34:20
[2026-06-12 18:34:20,406.406 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 18:34:20,430.430 INFO    ] Checking for existing commands in stream...
[2026-06-12 18:34:20,505.505 INFO    ] No existing commands found in stream
[2026-06-12 18:34:25,515.515 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 18:34:25,518.518 INFO    ] Waiting 1.23 seconds before fallback handling...
[2026-06-12 18:34:27,113.113 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 18:34:27,114.114 INFO    ] Checking for system updates...
[2026-06-12 18:34:27,134.134 INFO    ] 200
[2026-06-12 18:34:27,135.135 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:34:27,168.168 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 18:34:27,169.169 INFO    ] No update needed
[2026-06-12 18:34:27,170.170 INFO    ] Checking for camera pi updates...
[2026-06-12 18:34:27,189.189 INFO    ] 200
[2026-06-12 18:34:27,191.191 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:34:27,215.215 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 18:34:27,270.270 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 18:34:27,271.271 INFO    ] No camera update needed
[2026-06-12 18:34:27,272.272 INFO    ] Script finished. Safe exiting...
[2026-06-12 18:34:27,274.274 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 18:34:27,277.277 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 18:34:27,279.279 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 18:34:29,318.318 INFO    ] ================================================
[2026-06-12 18:34:29,334.334 INFO    ] Launching Daemon at Fri Jun 12 18:34:29 IST 2026
[2026-06-12 18:34:29,345.345 INFO    ] ================================================
[2026-06-12 18:34:29,698.698 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 18:34:29
[2026-06-12 18:34:30,016.016 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 18:34:30,158.158 INFO    ] Initializing speech engine...
[2026-06-12 18:34:30,163.163 INFO    ] 2026-06-12 18:34:30
[2026-06-12 18:34:30,364.364 INFO    ] 2026-06-12 18:34:30
[2026-06-12 18:34:30,394.394 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 18:34:30,577.577 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 18:34:30,581.581 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 18:34:30,738.738 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 18:34:30,786.786 INFO    ] time= 12/06/2026 18:34:30
[2026-06-12 18:34:30,808.808 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 18:34:30,814.814 INFO    ] Checking for existing commands in stream...
[2026-06-12 18:34:30,881.881 INFO    ] No existing commands found in stream
[2026-06-12 18:34:35,895.895 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 18:34:35,898.898 INFO    ] Waiting 3.33 seconds before fallback handling...
[2026-06-12 18:34:39,598.598 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 18:34:39,600.600 INFO    ] Checking for system updates...
[2026-06-12 18:34:39,621.621 INFO    ] 200
[2026-06-12 18:34:39,622.622 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:34:39,652.652 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 18:34:39,654.654 INFO    ] No update needed
[2026-06-12 18:34:39,655.655 INFO    ] Checking for camera pi updates...
[2026-06-12 18:34:39,674.674 INFO    ] 200
[2026-06-12 18:34:39,676.676 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:34:39,698.698 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 18:34:39,743.743 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 18:34:39,744.744 INFO    ] No camera update needed
[2026-06-12 18:34:39,745.745 INFO    ] Script finished. Safe exiting...
[2026-06-12 18:34:39,746.746 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 18:34:39,749.749 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 18:34:39,752.752 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 18:34:41,791.791 INFO    ] ================================================
[2026-06-12 18:34:41,806.806 INFO    ] Launching Daemon at Fri Jun 12 18:34:41 IST 2026
[2026-06-12 18:34:41,818.818 INFO    ] ================================================
[2026-06-12 18:34:42,167.167 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 18:34:42
[2026-06-12 18:34:42,477.477 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 18:34:42,618.618 INFO    ] Initializing speech engine...
[2026-06-12 18:34:42,623.623 INFO    ] 2026-06-12 18:34:42
[2026-06-12 18:34:42,826.826 INFO    ] 2026-06-12 18:34:42
[2026-06-12 18:34:42,854.854 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 18:34:43,038.038 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 18:34:43,046.046 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 18:34:43,197.197 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 18:34:43,246.246 INFO    ] time= 12/06/2026 18:34:43
[2026-06-12 18:34:43,268.268 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 18:34:43,274.274 INFO    ] Checking for existing commands in stream...
[2026-06-12 18:34:43,340.340 INFO    ] No existing commands found in stream
[2026-06-12 18:34:48,351.351 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 18:34:48,353.353 INFO    ] Waiting 0.13 seconds before fallback handling...
[2026-06-12 18:34:48,890.890 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 18:34:48,892.892 INFO    ] Checking for system updates...
[2026-06-12 18:34:48,928.928 INFO    ] 200
[2026-06-12 18:34:48,930.930 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:34:48,982.982 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 18:34:48,985.985 INFO    ] No update needed
[2026-06-12 18:34:48,987.987 INFO    ] Checking for camera pi updates...
[2026-06-12 18:34:49,012.012 INFO    ] 200
[2026-06-12 18:34:49,013.013 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:34:49,036.036 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 18:34:49,178.178 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 18:34:49,180.180 INFO    ] No camera update needed
[2026-06-12 18:34:49,181.181 INFO    ] Script finished. Safe exiting...
[2026-06-12 18:34:49,182.182 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 18:34:49,185.185 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 18:34:49,188.188 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 18:34:51,226.226 INFO    ] ================================================
[2026-06-12 18:34:51,241.241 INFO    ] Launching Daemon at Fri Jun 12 18:34:51 IST 2026
[2026-06-12 18:34:51,252.252 INFO    ] ================================================
[2026-06-12 18:34:51,605.605 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 18:34:51
[2026-06-12 18:34:51,944.944 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 18:34:52,092.092 INFO    ] Initializing speech engine...
[2026-06-12 18:34:52,097.097 INFO    ] 2026-06-12 18:34:52
[2026-06-12 18:34:52,300.300 INFO    ] 2026-06-12 18:34:52
[2026-06-12 18:34:52,329.329 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 18:34:52,456.456 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 18:34:52,514.514 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 18:34:52,643.643 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 18:34:52,704.704 INFO    ] time= 12/06/2026 18:34:52
[2026-06-12 18:34:52,738.738 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 18:34:52,743.743 INFO    ] Checking for existing commands in stream...
[2026-06-12 18:34:52,814.814 INFO    ] No existing commands found in stream
[2026-06-12 18:34:57,822.822 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 18:34:57,834.834 INFO    ] Waiting 2.09 seconds before fallback handling...
[2026-06-12 18:35:00,308.308 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 18:35:00,309.309 INFO    ] Checking for system updates...
[2026-06-12 18:35:00,330.330 INFO    ] 200
[2026-06-12 18:35:00,331.331 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:35:00,396.396 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 18:35:00,398.398 INFO    ] No update needed
[2026-06-12 18:35:00,399.399 INFO    ] Checking for camera pi updates...
[2026-06-12 18:35:00,419.419 INFO    ] 200
[2026-06-12 18:35:00,420.420 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:35:00,443.443 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 18:35:00,490.490 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 18:35:00,491.491 INFO    ] No camera update needed
[2026-06-12 18:35:00,492.492 INFO    ] Script finished. Safe exiting...
[2026-06-12 18:35:00,493.493 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 18:35:00,496.496 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 18:35:00,499.499 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 18:35:02,535.535 INFO    ] ================================================
[2026-06-12 18:35:02,546.546 INFO    ] Launching Daemon at Fri Jun 12 18:35:02 IST 2026
[2026-06-12 18:35:02,556.556 INFO    ] ================================================
[2026-06-12 18:35:02,900.900 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 18:35:02
[2026-06-12 18:35:03,220.220 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 18:35:03,355.355 INFO    ] Initializing speech engine...
[2026-06-12 18:35:03,368.368 INFO    ] 2026-06-12 18:35:03
[2026-06-12 18:35:03,585.585 INFO    ] 2026-06-12 18:35:03
[2026-06-12 18:35:03,613.613 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 18:35:03,814.814 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 18:35:03,818.818 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 18:35:03,964.964 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 18:35:04,013.013 INFO    ] time= 12/06/2026 18:35:03
[2026-06-12 18:35:04,057.057 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 18:35:04,064.064 INFO    ] Checking for existing commands in stream...
[2026-06-12 18:35:04,140.140 INFO    ] No existing commands found in stream
[2026-06-12 18:35:09,150.150 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 18:35:09,152.152 INFO    ] Waiting 2.37 seconds before fallback handling...
[2026-06-12 18:35:11,923.923 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 18:35:11,924.924 INFO    ] Checking for system updates...
[2026-06-12 18:35:12,047.047 INFO    ] 200
[2026-06-12 18:35:12,049.049 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:35:12,086.086 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 18:35:12,087.087 INFO    ] No update needed
[2026-06-12 18:35:12,089.089 INFO    ] Checking for camera pi updates...
[2026-06-12 18:35:12,108.108 INFO    ] 200
[2026-06-12 18:35:12,110.110 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:35:12,132.132 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 18:35:12,177.177 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 18:35:12,178.178 INFO    ] No camera update needed
[2026-06-12 18:35:12,180.180 INFO    ] Script finished. Safe exiting...
[2026-06-12 18:35:12,181.181 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 18:35:12,184.184 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 18:35:12,187.187 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 18:35:14,225.225 INFO    ] ================================================
[2026-06-12 18:35:14,240.240 INFO    ] Launching Daemon at Fri Jun 12 18:35:14 IST 2026
[2026-06-12 18:35:14,251.251 INFO    ] ================================================
[2026-06-12 18:35:14,582.582 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 18:35:14
[2026-06-12 18:35:14,894.894 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 18:35:15,032.032 INFO    ] Initializing speech engine...
[2026-06-12 18:35:15,035.035 INFO    ] 2026-06-12 18:35:15
[2026-06-12 18:35:15,264.264 INFO    ] 2026-06-12 18:35:15
[2026-06-12 18:35:15,294.294 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 18:35:15,489.489 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 18:35:15,493.493 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 18:35:15,638.638 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 18:35:15,702.702 INFO    ] time= 12/06/2026 18:35:15
[2026-06-12 18:35:15,714.714 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 18:35:15,716.716 INFO    ] Checking for existing commands in stream...
[2026-06-12 18:35:15,784.784 INFO    ] No existing commands found in stream
[2026-06-12 18:35:20,793.793 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 18:35:20,796.796 INFO    ] Waiting 0.65 seconds before fallback handling...
[2026-06-12 18:35:21,801.801 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 18:35:21,803.803 INFO    ] Checking for system updates...
[2026-06-12 18:35:21,823.823 INFO    ] 200
[2026-06-12 18:35:21,824.824 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:35:21,857.857 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 18:35:21,858.858 INFO    ] No update needed
[2026-06-12 18:35:21,859.859 INFO    ] Checking for camera pi updates...
[2026-06-12 18:35:21,879.879 INFO    ] 200
[2026-06-12 18:35:21,881.881 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:35:21,904.904 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 18:35:21,940.940 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 18:35:21,941.941 INFO    ] No camera update needed
[2026-06-12 18:35:21,942.942 INFO    ] Script finished. Safe exiting...
[2026-06-12 18:35:21,944.944 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 18:35:21,947.947 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 18:35:21,949.949 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 18:35:23,987.987 INFO    ] ================================================
[2026-06-12 18:35:24,003.003 INFO    ] Launching Daemon at Fri Jun 12 18:35:23 IST 2026
[2026-06-12 18:35:24,013.013 INFO    ] ================================================
[2026-06-12 18:35:24,370.370 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 18:35:24
[2026-06-12 18:35:24,684.684 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 18:35:24,815.815 INFO    ] Initializing speech engine...
[2026-06-12 18:35:24,822.822 INFO    ] 2026-06-12 18:35:24
[2026-06-12 18:35:25,034.034 INFO    ] 2026-06-12 18:35:25
[2026-06-12 18:35:25,064.064 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 18:35:25,247.247 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 18:35:25,256.256 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 18:35:25,385.385 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 18:35:25,449.449 INFO    ] time= 12/06/2026 18:35:25
[2026-06-12 18:35:25,477.477 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 18:35:25,483.483 INFO    ] Checking for existing commands in stream...
[2026-06-12 18:35:25,573.573 INFO    ] No existing commands found in stream
[2026-06-12 18:35:30,582.582 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 18:35:30,585.585 INFO    ] Waiting 0.11 seconds before fallback handling...
[2026-06-12 18:35:31,032.032 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 18:35:31,034.034 INFO    ] Checking for system updates...
[2026-06-12 18:35:31,054.054 INFO    ] 200
[2026-06-12 18:35:31,056.056 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:35:31,086.086 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 18:35:31,087.087 INFO    ] No update needed
[2026-06-12 18:35:31,088.088 INFO    ] Checking for camera pi updates...
[2026-06-12 18:35:31,108.108 INFO    ] 200
[2026-06-12 18:35:31,109.109 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:35:31,132.132 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 18:35:31,176.176 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 18:35:31,178.178 INFO    ] No camera update needed
[2026-06-12 18:35:31,179.179 INFO    ] Script finished. Safe exiting...
[2026-06-12 18:35:31,180.180 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 18:35:31,184.184 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 18:35:31,187.187 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 18:35:33,223.223 INFO    ] ================================================
[2026-06-12 18:35:33,238.238 INFO    ] Launching Daemon at Fri Jun 12 18:35:33 IST 2026
[2026-06-12 18:35:33,249.249 INFO    ] ================================================
[2026-06-12 18:35:33,593.593 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 18:35:33
[2026-06-12 18:35:33,907.907 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 18:35:34,038.038 INFO    ] Initializing speech engine...
[2026-06-12 18:35:34,046.046 INFO    ] 2026-06-12 18:35:34
[2026-06-12 18:35:34,257.257 INFO    ] 2026-06-12 18:35:34
[2026-06-12 18:35:34,286.286 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 18:35:34,470.470 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 18:35:34,478.478 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 18:35:34,601.601 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 18:35:34,651.651 INFO    ] time= 12/06/2026 18:35:34
[2026-06-12 18:35:34,696.696 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 18:35:34,701.701 INFO    ] Checking for existing commands in stream...
[2026-06-12 18:35:34,796.796 INFO    ] No existing commands found in stream
[2026-06-12 18:35:39,810.810 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 18:35:39,813.813 INFO    ] Waiting 1.20 seconds before fallback handling...
[2026-06-12 18:35:41,420.420 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 18:35:41,422.422 INFO    ] Checking for system updates...
[2026-06-12 18:35:41,443.443 INFO    ] 200
[2026-06-12 18:35:41,444.444 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:35:41,476.476 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 18:35:41,478.478 INFO    ] No update needed
[2026-06-12 18:35:41,479.479 INFO    ] Checking for camera pi updates...
[2026-06-12 18:35:41,501.501 INFO    ] 200
[2026-06-12 18:35:41,503.503 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:35:41,528.528 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 18:35:41,563.563 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 18:35:41,565.565 INFO    ] No camera update needed
[2026-06-12 18:35:41,566.566 INFO    ] Script finished. Safe exiting...
[2026-06-12 18:35:41,568.568 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 18:35:41,571.571 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 18:35:41,574.574 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 18:35:43,613.613 INFO    ] ================================================
[2026-06-12 18:35:43,628.628 INFO    ] Launching Daemon at Fri Jun 12 18:35:43 IST 2026
[2026-06-12 18:35:43,638.638 INFO    ] ================================================
[2026-06-12 18:35:43,987.987 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 18:35:43
[2026-06-12 18:35:44,321.321 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 18:35:44,470.470 INFO    ] Initializing speech engine...
[2026-06-12 18:35:44,476.476 INFO    ] 2026-06-12 18:35:44
[2026-06-12 18:35:44,682.682 INFO    ] 2026-06-12 18:35:44
[2026-06-12 18:35:44,710.710 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 18:35:44,894.894 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 18:35:44,903.903 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 18:35:45,053.053 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 18:35:45,101.101 INFO    ] time= 12/06/2026 18:35:45
[2026-06-12 18:35:45,123.123 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 18:35:45,129.129 INFO    ] Checking for existing commands in stream...
[2026-06-12 18:35:45,219.219 INFO    ] No existing commands found in stream
[2026-06-12 18:35:50,234.234 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 18:35:50,237.237 INFO    ] Waiting 0.51 seconds before fallback handling...
[2026-06-12 18:35:51,170.170 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 18:35:51,171.171 INFO    ] Checking for system updates...
[2026-06-12 18:35:51,193.193 INFO    ] 200
[2026-06-12 18:35:51,195.195 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:35:51,225.225 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 18:35:51,226.226 INFO    ] No update needed
[2026-06-12 18:35:51,228.228 INFO    ] Checking for camera pi updates...
[2026-06-12 18:35:51,249.249 INFO    ] 200
[2026-06-12 18:35:51,251.251 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:35:51,274.274 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 18:35:51,332.332 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 18:35:51,333.333 INFO    ] No camera update needed
[2026-06-12 18:35:51,334.334 INFO    ] Script finished. Safe exiting...
[2026-06-12 18:35:51,336.336 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 18:35:51,338.338 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 18:35:51,341.341 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 18:35:53,379.379 INFO    ] ================================================
[2026-06-12 18:35:53,394.394 INFO    ] Launching Daemon at Fri Jun 12 18:35:53 IST 2026
[2026-06-12 18:35:53,411.411 INFO    ] ================================================
[2026-06-12 18:35:53,758.758 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 18:35:53
[2026-06-12 18:35:54,069.069 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 18:35:54,201.201 INFO    ] Initializing speech engine...
[2026-06-12 18:35:54,205.205 INFO    ] 2026-06-12 18:35:54
[2026-06-12 18:35:54,434.434 INFO    ] 2026-06-12 18:35:54
[2026-06-12 18:35:54,465.465 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 18:35:54,660.660 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 18:35:54,665.665 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 18:35:54,811.811 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 18:35:54,865.865 INFO    ] time= 12/06/2026 18:35:54
[2026-06-12 18:35:54,894.894 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 18:35:54,911.911 INFO    ] Checking for existing commands in stream...
[2026-06-12 18:35:54,987.987 INFO    ] No existing commands found in stream
[2026-06-12 18:35:59,996.996 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 18:35:59,999.999 INFO    ] Waiting 0.11 seconds before fallback handling...
[2026-06-12 18:36:00,533.533 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 18:36:00,534.534 INFO    ] Checking for system updates...
[2026-06-12 18:36:00,554.554 INFO    ] 200
[2026-06-12 18:36:00,556.556 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:36:00,587.587 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 18:36:00,589.589 INFO    ] No update needed
[2026-06-12 18:36:00,590.590 INFO    ] Checking for camera pi updates...
[2026-06-12 18:36:00,611.611 INFO    ] 200
[2026-06-12 18:36:00,613.613 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:36:00,637.637 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 18:36:00,681.681 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 18:36:00,682.682 INFO    ] No camera update needed
[2026-06-12 18:36:00,683.683 INFO    ] Script finished. Safe exiting...
[2026-06-12 18:36:00,685.685 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 18:36:00,687.687 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 18:36:00,690.690 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 18:36:02,723.723 INFO    ] ================================================
[2026-06-12 18:36:02,739.739 INFO    ] Launching Daemon at Fri Jun 12 18:36:02 IST 2026
[2026-06-12 18:36:02,750.750 INFO    ] ================================================
[2026-06-12 18:36:03,081.081 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 18:36:03
[2026-06-12 18:36:03,394.394 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 18:36:03,527.527 INFO    ] Initializing speech engine...
[2026-06-12 18:36:03,532.532 INFO    ] 2026-06-12 18:36:03
[2026-06-12 18:36:03,727.727 INFO    ] 2026-06-12 18:36:03
[2026-06-12 18:36:03,767.767 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 18:36:03,925.925 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 18:36:03,973.973 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 18:36:04,141.141 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 18:36:04,192.192 INFO    ] time= 12/06/2026 18:36:04
[2026-06-12 18:36:04,237.237 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 18:36:04,243.243 INFO    ] Checking for existing commands in stream...
[2026-06-12 18:36:04,319.319 INFO    ] No existing commands found in stream
[2026-06-12 18:36:09,329.329 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 18:36:09,332.332 INFO    ] Waiting 1.67 seconds before fallback handling...
[2026-06-12 18:36:11,441.441 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 18:36:11,442.442 INFO    ] Checking for system updates...
[2026-06-12 18:36:11,465.465 INFO    ] 200
[2026-06-12 18:36:11,466.466 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:36:11,496.496 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 18:36:11,497.497 INFO    ] No update needed
[2026-06-12 18:36:11,498.498 INFO    ] Checking for camera pi updates...
[2026-06-12 18:36:11,519.519 INFO    ] 200
[2026-06-12 18:36:11,520.520 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:36:11,543.543 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 18:36:11,588.588 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 18:36:11,590.590 INFO    ] No camera update needed
[2026-06-12 18:36:11,591.591 INFO    ] Script finished. Safe exiting...
[2026-06-12 18:36:11,593.593 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 18:36:11,595.595 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 18:36:11,598.598 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 18:36:13,636.636 INFO    ] ================================================
[2026-06-12 18:36:13,651.651 INFO    ] Launching Daemon at Fri Jun 12 18:36:13 IST 2026
[2026-06-12 18:36:13,662.662 INFO    ] ================================================
[2026-06-12 18:36:14,044.044 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 18:36:14
[2026-06-12 18:36:14,384.384 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 18:36:14,538.538 INFO    ] Initializing speech engine...
[2026-06-12 18:36:14,542.542 INFO    ] 2026-06-12 18:36:14
[2026-06-12 18:36:14,738.738 INFO    ] 2026-06-12 18:36:14
[2026-06-12 18:36:14,766.766 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 18:36:14,958.958 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 18:36:14,976.976 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 18:36:15,114.114 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 18:36:15,178.178 INFO    ] time= 12/06/2026 18:36:15
[2026-06-12 18:36:15,205.205 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 18:36:15,212.212 INFO    ] Checking for existing commands in stream...
[2026-06-12 18:36:15,279.279 INFO    ] No existing commands found in stream
[2026-06-12 18:36:20,293.293 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 18:36:20,296.296 INFO    ] Waiting 2.51 seconds before fallback handling...
[2026-06-12 18:36:23,251.251 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 18:36:23,253.253 INFO    ] Checking for system updates...
[2026-06-12 18:36:23,274.274 INFO    ] 200
[2026-06-12 18:36:23,276.276 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:36:23,305.305 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 18:36:23,307.307 INFO    ] No update needed
[2026-06-12 18:36:23,308.308 INFO    ] Checking for camera pi updates...
[2026-06-12 18:36:23,327.327 INFO    ] 200
[2026-06-12 18:36:23,329.329 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:36:23,352.352 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 18:36:23,398.398 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 18:36:23,400.400 INFO    ] No camera update needed
[2026-06-12 18:36:23,401.401 INFO    ] Script finished. Safe exiting...
[2026-06-12 18:36:23,402.402 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 18:36:23,405.405 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 18:36:23,408.408 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 18:36:25,448.448 INFO    ] ================================================
[2026-06-12 18:36:25,463.463 INFO    ] Launching Daemon at Fri Jun 12 18:36:25 IST 2026
[2026-06-12 18:36:25,475.475 INFO    ] ================================================
[2026-06-12 18:36:25,829.829 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 18:36:25
[2026-06-12 18:36:26,169.169 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 18:36:26,308.308 INFO    ] Initializing speech engine...
[2026-06-12 18:36:26,316.316 INFO    ] 2026-06-12 18:36:26
[2026-06-12 18:36:26,536.536 INFO    ] 2026-06-12 18:36:26
[2026-06-12 18:36:26,565.565 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 18:36:26,757.757 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 18:36:26,760.760 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 18:36:26,905.905 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 18:36:26,969.969 INFO    ] time= 12/06/2026 18:36:26
[2026-06-12 18:36:26,993.993 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 18:36:27,000.000 INFO    ] Checking for existing commands in stream...
[2026-06-12 18:36:27,069.069 INFO    ] No existing commands found in stream
[2026-06-12 18:36:32,081.081 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 18:36:32,083.083 INFO    ] Waiting 2.50 seconds before fallback handling...
[2026-06-12 18:36:35,012.012 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 18:36:35,014.014 INFO    ] Checking for system updates...
[2026-06-12 18:36:35,035.035 INFO    ] 200
[2026-06-12 18:36:35,036.036 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:36:35,066.066 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 18:36:35,068.068 INFO    ] No update needed
[2026-06-12 18:36:35,069.069 INFO    ] Checking for camera pi updates...
[2026-06-12 18:36:35,089.089 INFO    ] 200
[2026-06-12 18:36:35,090.090 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:36:35,115.115 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 18:36:35,164.164 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 18:36:35,165.165 INFO    ] No camera update needed
[2026-06-12 18:36:35,167.167 INFO    ] Script finished. Safe exiting...
[2026-06-12 18:36:35,168.168 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 18:36:35,171.171 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 18:36:35,174.174 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 18:36:37,215.215 INFO    ] ================================================
[2026-06-12 18:36:37,231.231 INFO    ] Launching Daemon at Fri Jun 12 18:36:37 IST 2026
[2026-06-12 18:36:37,242.242 INFO    ] ================================================
[2026-06-12 18:36:37,573.573 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 18:36:37
[2026-06-12 18:36:37,886.886 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 18:36:38,027.027 INFO    ] Initializing speech engine...
[2026-06-12 18:36:38,037.037 INFO    ] 2026-06-12 18:36:38
[2026-06-12 18:36:38,253.253 INFO    ] 2026-06-12 18:36:38
[2026-06-12 18:36:38,284.284 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 18:36:38,480.480 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 18:36:38,485.485 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 18:36:38,632.632 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 18:36:38,701.701 INFO    ] time= 12/06/2026 18:36:38
[2026-06-12 18:36:38,731.731 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 18:36:38,738.738 INFO    ] Checking for existing commands in stream...
[2026-06-12 18:36:38,810.810 INFO    ] No existing commands found in stream
[2026-06-12 18:36:43,819.819 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 18:36:43,822.822 INFO    ] Waiting 0.11 seconds before fallback handling...
[2026-06-12 18:36:44,268.268 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 18:36:44,270.270 INFO    ] Checking for system updates...
[2026-06-12 18:36:44,292.292 INFO    ] 200
[2026-06-12 18:36:44,294.294 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:36:44,326.326 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 18:36:44,327.327 INFO    ] No update needed
[2026-06-12 18:36:44,329.329 INFO    ] Checking for camera pi updates...
[2026-06-12 18:36:44,350.350 INFO    ] 200
[2026-06-12 18:36:44,351.351 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:36:44,376.376 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 18:36:44,419.419 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 18:36:44,420.420 INFO    ] No camera update needed
[2026-06-12 18:36:44,422.422 INFO    ] Script finished. Safe exiting...
[2026-06-12 18:36:44,423.423 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 18:36:44,426.426 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 18:36:44,430.430 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 18:36:46,469.469 INFO    ] ================================================
[2026-06-12 18:36:46,484.484 INFO    ] Launching Daemon at Fri Jun 12 18:36:46 IST 2026
[2026-06-12 18:36:46,495.495 INFO    ] ================================================
[2026-06-12 18:36:46,825.825 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 18:36:46
[2026-06-12 18:36:47,145.145 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 18:36:47,296.296 INFO    ] Initializing speech engine...
[2026-06-12 18:36:47,301.301 INFO    ] 2026-06-12 18:36:47
[2026-06-12 18:36:47,508.508 INFO    ] 2026-06-12 18:36:47
[2026-06-12 18:36:47,538.538 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 18:36:47,724.724 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 18:36:47,734.734 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 18:36:47,883.883 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 18:36:47,932.932 INFO    ] time= 12/06/2026 18:36:47
[2026-06-12 18:36:47,954.954 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 18:36:47,960.960 INFO    ] Checking for existing commands in stream...
[2026-06-12 18:36:48,027.027 INFO    ] No existing commands found in stream
[2026-06-12 18:36:53,036.036 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 18:36:53,040.040 INFO    ] Waiting 0.38 seconds before fallback handling...
[2026-06-12 18:36:53,780.780 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 18:36:53,782.782 INFO    ] Checking for system updates...
[2026-06-12 18:36:53,804.804 INFO    ] 200
[2026-06-12 18:36:53,805.805 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:36:53,838.838 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 18:36:53,839.839 INFO    ] No update needed
[2026-06-12 18:36:53,841.841 INFO    ] Checking for camera pi updates...
[2026-06-12 18:36:53,860.860 INFO    ] 200
[2026-06-12 18:36:53,862.862 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:36:53,885.885 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 18:36:54,028.028 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 18:36:54,029.029 INFO    ] No camera update needed
[2026-06-12 18:36:54,031.031 INFO    ] Script finished. Safe exiting...
[2026-06-12 18:36:54,032.032 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 18:36:54,035.035 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 18:36:54,038.038 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 18:36:56,076.076 INFO    ] ================================================
[2026-06-12 18:36:56,091.091 INFO    ] Launching Daemon at Fri Jun 12 18:36:56 IST 2026
[2026-06-12 18:36:56,103.103 INFO    ] ================================================
[2026-06-12 18:36:56,449.449 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 18:36:56
[2026-06-12 18:36:56,760.760 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 18:36:56,890.890 INFO    ] Initializing speech engine...
[2026-06-12 18:36:56,894.894 INFO    ] 2026-06-12 18:36:56
[2026-06-12 18:36:57,109.109 INFO    ] 2026-06-12 18:36:57
[2026-06-12 18:36:57,138.138 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 18:36:57,276.276 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 18:36:57,323.323 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 18:36:57,458.458 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 18:36:57,519.519 INFO    ] time= 12/06/2026 18:36:57
[2026-06-12 18:36:57,551.551 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 18:36:57,557.557 INFO    ] Checking for existing commands in stream...
[2026-06-12 18:36:57,624.624 INFO    ] No existing commands found in stream
[2026-06-12 18:37:02,637.637 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 18:37:02,638.638 INFO    ] Waiting 0.08 seconds before fallback handling...
[2026-06-12 18:37:03,047.047 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 18:37:03,050.050 INFO    ] Checking for system updates...
[2026-06-12 18:37:03,086.086 INFO    ] 200
[2026-06-12 18:37:03,088.088 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:37:03,142.142 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 18:37:03,144.144 INFO    ] No update needed
[2026-06-12 18:37:03,147.147 INFO    ] Checking for camera pi updates...
[2026-06-12 18:37:03,182.182 INFO    ] 200
[2026-06-12 18:37:03,184.184 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:37:03,214.214 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 18:37:03,264.264 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 18:37:03,265.265 INFO    ] No camera update needed
[2026-06-12 18:37:03,266.266 INFO    ] Script finished. Safe exiting...
[2026-06-12 18:37:03,268.268 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 18:37:03,271.271 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 18:37:03,273.273 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 18:37:05,313.313 INFO    ] ================================================
[2026-06-12 18:37:05,329.329 INFO    ] Launching Daemon at Fri Jun 12 18:37:05 IST 2026
[2026-06-12 18:37:05,340.340 INFO    ] ================================================
[2026-06-12 18:37:05,734.734 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 18:37:05
[2026-06-12 18:37:06,077.077 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 18:37:06,225.225 INFO    ] Initializing speech engine...
[2026-06-12 18:37:06,236.236 INFO    ] 2026-06-12 18:37:06
[2026-06-12 18:37:06,432.432 INFO    ] 2026-06-12 18:37:06
[2026-06-12 18:37:06,466.466 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 18:37:06,611.611 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 18:37:06,670.670 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 18:37:06,804.804 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 18:37:06,879.879 INFO    ] time= 12/06/2026 18:37:06
[2026-06-12 18:37:06,903.903 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 18:37:06,910.910 INFO    ] Checking for existing commands in stream...
[2026-06-12 18:37:06,976.976 INFO    ] No existing commands found in stream
[2026-06-12 18:37:12,001.001 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 18:37:12,004.004 INFO    ] Waiting 3.45 seconds before fallback handling...
[2026-06-12 18:37:15,867.867 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 18:37:15,869.869 INFO    ] Checking for system updates...
[2026-06-12 18:37:15,890.890 INFO    ] 200
[2026-06-12 18:37:15,892.892 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:37:15,922.922 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 18:37:15,924.924 INFO    ] No update needed
[2026-06-12 18:37:15,925.925 INFO    ] Checking for camera pi updates...
[2026-06-12 18:37:15,946.946 INFO    ] 200
[2026-06-12 18:37:15,947.947 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:37:15,971.971 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 18:37:16,016.016 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 18:37:16,017.017 INFO    ] No camera update needed
[2026-06-12 18:37:16,018.018 INFO    ] Script finished. Safe exiting...
[2026-06-12 18:37:16,020.020 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 18:37:16,023.023 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 18:37:16,026.026 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 18:37:18,064.064 INFO    ] ================================================
[2026-06-12 18:37:18,079.079 INFO    ] Launching Daemon at Fri Jun 12 18:37:18 IST 2026
[2026-06-12 18:37:18,091.091 INFO    ] ================================================
[2026-06-12 18:37:18,483.483 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 18:37:18
[2026-06-12 18:37:18,827.827 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 18:37:18,981.981 INFO    ] Initializing speech engine...
[2026-06-12 18:37:18,986.986 INFO    ] 2026-06-12 18:37:18
[2026-06-12 18:37:19,196.196 INFO    ] 2026-06-12 18:37:19
[2026-06-12 18:37:19,225.225 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 18:37:19,368.368 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 18:37:19,411.411 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 18:37:19,546.546 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 18:37:19,603.603 INFO    ] time= 12/06/2026 18:37:19
[2026-06-12 18:37:19,642.642 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 18:37:19,644.644 INFO    ] Checking for existing commands in stream...
[2026-06-12 18:37:19,739.739 INFO    ] No existing commands found in stream
[2026-06-12 18:37:24,754.754 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 18:37:24,757.757 INFO    ] Waiting 2.97 seconds before fallback handling...
[2026-06-12 18:37:28,117.117 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 18:37:28,119.119 INFO    ] Checking for system updates...
[2026-06-12 18:37:28,139.139 INFO    ] 200
[2026-06-12 18:37:28,141.141 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:37:28,172.172 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 18:37:28,173.173 INFO    ] No update needed
[2026-06-12 18:37:28,175.175 INFO    ] Checking for camera pi updates...
[2026-06-12 18:37:28,193.193 INFO    ] 200
[2026-06-12 18:37:28,195.195 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:37:28,218.218 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 18:37:28,260.260 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 18:37:28,261.261 INFO    ] No camera update needed
[2026-06-12 18:37:28,262.262 INFO    ] Script finished. Safe exiting...
[2026-06-12 18:37:28,264.264 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 18:37:28,266.266 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 18:37:28,269.269 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 18:37:30,308.308 INFO    ] ================================================
[2026-06-12 18:37:30,324.324 INFO    ] Launching Daemon at Fri Jun 12 18:37:30 IST 2026
[2026-06-12 18:37:30,336.336 INFO    ] ================================================
[2026-06-12 18:37:30,697.697 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 18:37:30
[2026-06-12 18:37:31,009.009 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 18:37:31,151.151 INFO    ] Initializing speech engine...
[2026-06-12 18:37:31,156.156 INFO    ] 2026-06-12 18:37:31
[2026-06-12 18:37:31,359.359 INFO    ] 2026-06-12 18:37:31
[2026-06-12 18:37:31,388.388 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 18:37:31,587.587 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 18:37:31,594.594 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 18:37:31,735.735 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 18:37:31,804.804 INFO    ] time= 12/06/2026 18:37:31
[2026-06-12 18:37:31,838.838 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 18:37:31,845.845 INFO    ] Checking for existing commands in stream...
[2026-06-12 18:37:31,915.915 INFO    ] No existing commands found in stream
[2026-06-12 18:37:36,929.929 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 18:37:36,932.932 INFO    ] Waiting 0.39 seconds before fallback handling...
[2026-06-12 18:37:37,708.708 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 18:37:37,710.710 INFO    ] Checking for system updates...
[2026-06-12 18:37:37,730.730 INFO    ] 200
[2026-06-12 18:37:37,732.732 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:37:37,762.762 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 18:37:37,763.763 INFO    ] No update needed
[2026-06-12 18:37:37,764.764 INFO    ] Checking for camera pi updates...
[2026-06-12 18:37:37,783.783 INFO    ] 200
[2026-06-12 18:37:37,785.785 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:37:37,808.808 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 18:37:37,848.848 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 18:37:37,849.849 INFO    ] No camera update needed
[2026-06-12 18:37:37,851.851 INFO    ] Script finished. Safe exiting...
[2026-06-12 18:37:37,852.852 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 18:37:37,855.855 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 18:37:37,858.858 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 18:37:39,898.898 INFO    ] ================================================
[2026-06-12 18:37:39,914.914 INFO    ] Launching Daemon at Fri Jun 12 18:37:39 IST 2026
[2026-06-12 18:37:39,924.924 INFO    ] ================================================
[2026-06-12 18:37:40,279.279 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 18:37:40
[2026-06-12 18:37:40,618.618 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 18:37:40,770.770 INFO    ] Initializing speech engine...
[2026-06-12 18:37:40,776.776 INFO    ] 2026-06-12 18:37:40
[2026-06-12 18:37:40,984.984 INFO    ] 2026-06-12 18:37:40
[2026-06-12 18:37:41,013.013 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 18:37:41,200.200 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 18:37:41,210.210 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 18:37:41,346.346 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 18:37:41,407.407 INFO    ] time= 12/06/2026 18:37:41
[2026-06-12 18:37:41,432.432 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 18:37:41,438.438 INFO    ] Checking for existing commands in stream...
[2026-06-12 18:37:41,528.528 INFO    ] No existing commands found in stream
[2026-06-12 18:37:46,537.537 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 18:37:46,541.541 INFO    ] Waiting 2.23 seconds before fallback handling...
[2026-06-12 18:37:49,203.203 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 18:37:49,204.204 INFO    ] Checking for system updates...
[2026-06-12 18:37:49,225.225 INFO    ] 200
[2026-06-12 18:37:49,226.226 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:37:49,256.256 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 18:37:49,257.257 INFO    ] No update needed
[2026-06-12 18:37:49,259.259 INFO    ] Checking for camera pi updates...
[2026-06-12 18:37:49,280.280 INFO    ] 200
[2026-06-12 18:37:49,282.282 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:37:49,306.306 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 18:37:49,348.348 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 18:37:49,350.350 INFO    ] No camera update needed
[2026-06-12 18:37:49,351.351 INFO    ] Script finished. Safe exiting...
[2026-06-12 18:37:49,352.352 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 18:37:49,355.355 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 18:37:49,358.358 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 18:37:51,396.396 INFO    ] ================================================
[2026-06-12 18:37:51,412.412 INFO    ] Launching Daemon at Fri Jun 12 18:37:51 IST 2026
[2026-06-12 18:37:51,423.423 INFO    ] ================================================
[2026-06-12 18:37:51,790.790 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 18:37:51
[2026-06-12 18:37:52,107.107 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 18:37:52,240.240 INFO    ] Initializing speech engine...
[2026-06-12 18:37:52,244.244 INFO    ] 2026-06-12 18:37:52
[2026-06-12 18:37:52,459.459 INFO    ] 2026-06-12 18:37:52
[2026-06-12 18:37:52,483.483 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 18:37:52,639.639 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 18:37:52,658.658 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 18:37:52,844.844 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 18:37:52,876.876 INFO    ] time= 12/06/2026 18:37:52
[2026-06-12 18:37:52,930.930 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 18:37:52,946.946 INFO    ] Checking for existing commands in stream...
[2026-06-12 18:37:53,066.066 INFO    ] No existing commands found in stream
[2026-06-12 18:37:58,075.075 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 18:37:58,076.076 INFO    ] Waiting 1.64 seconds before fallback handling...
[2026-06-12 18:38:00,028.028 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 18:38:00,030.030 INFO    ] Checking for system updates...
[2026-06-12 18:38:00,054.054 INFO    ] 200
[2026-06-12 18:38:00,055.055 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:38:00,092.092 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 18:38:00,094.094 INFO    ] No update needed
[2026-06-12 18:38:00,096.096 INFO    ] Checking for camera pi updates...
[2026-06-12 18:38:00,117.117 INFO    ] 200
[2026-06-12 18:38:00,119.119 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:38:00,159.159 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 18:38:00,205.205 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 18:38:00,208.208 INFO    ] No camera update needed
[2026-06-12 18:38:00,211.211 INFO    ] Script finished. Safe exiting...
[2026-06-12 18:38:00,213.213 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 18:38:00,220.220 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 18:38:00,226.226 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 18:38:02,257.257 INFO    ] ================================================
[2026-06-12 18:38:02,273.273 INFO    ] Launching Daemon at Fri Jun 12 18:38:02 IST 2026
[2026-06-12 18:38:02,285.285 INFO    ] ================================================
[2026-06-12 18:38:02,658.658 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 18:38:02
[2026-06-12 18:38:02,996.996 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 18:38:03,138.138 INFO    ] Initializing speech engine...
[2026-06-12 18:38:03,143.143 INFO    ] 2026-06-12 18:38:03
[2026-06-12 18:38:03,356.356 INFO    ] 2026-06-12 18:38:03
[2026-06-12 18:38:03,395.395 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 18:38:03,584.584 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 18:38:03,593.593 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 18:38:03,741.741 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 18:38:03,795.795 INFO    ] time= 12/06/2026 18:38:03
[2026-06-12 18:38:03,817.817 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 18:38:03,824.824 INFO    ] Checking for existing commands in stream...
[2026-06-12 18:38:03,891.891 INFO    ] No existing commands found in stream
[2026-06-12 18:38:08,900.900 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 18:38:08,902.902 INFO    ] Waiting 1.93 seconds before fallback handling...
[2026-06-12 18:38:11,189.189 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 18:38:11,190.190 INFO    ] Checking for system updates...
[2026-06-12 18:38:11,211.211 INFO    ] 200
[2026-06-12 18:38:11,212.212 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:38:11,244.244 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 18:38:11,246.246 INFO    ] No update needed
[2026-06-12 18:38:11,247.247 INFO    ] Checking for camera pi updates...
[2026-06-12 18:38:11,266.266 INFO    ] 200
[2026-06-12 18:38:11,267.267 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:38:11,291.291 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 18:38:11,339.339 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 18:38:11,341.341 INFO    ] No camera update needed
[2026-06-12 18:38:11,342.342 INFO    ] Script finished. Safe exiting...
[2026-06-12 18:38:11,343.343 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 18:38:11,346.346 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 18:38:11,349.349 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 18:38:13,387.387 INFO    ] ================================================
[2026-06-12 18:38:13,403.403 INFO    ] Launching Daemon at Fri Jun 12 18:38:13 IST 2026
[2026-06-12 18:38:13,415.415 INFO    ] ================================================
[2026-06-12 18:38:13,778.778 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 18:38:13
[2026-06-12 18:38:14,094.094 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 18:38:14,227.227 INFO    ] Initializing speech engine...
[2026-06-12 18:38:14,231.231 INFO    ] 2026-06-12 18:38:14
[2026-06-12 18:38:14,424.424 INFO    ] 2026-06-12 18:38:14
[2026-06-12 18:38:14,470.470 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 18:38:14,627.627 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 18:38:14,690.690 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 18:38:14,836.836 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 18:38:14,894.894 INFO    ] time= 12/06/2026 18:38:14
[2026-06-12 18:38:14,944.944 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 18:38:14,951.951 INFO    ] Checking for existing commands in stream...
[2026-06-12 18:38:15,023.023 INFO    ] No existing commands found in stream
[2026-06-12 18:38:20,032.032 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 18:38:20,035.035 INFO    ] Waiting 3.29 seconds before fallback handling...
[2026-06-12 18:38:23,702.702 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 18:38:23,704.704 INFO    ] Checking for system updates...
[2026-06-12 18:38:23,725.725 INFO    ] 200
[2026-06-12 18:38:23,726.726 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:38:23,761.761 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 18:38:23,762.762 INFO    ] No update needed
[2026-06-12 18:38:23,763.763 INFO    ] Checking for camera pi updates...
[2026-06-12 18:38:23,784.784 INFO    ] 200
[2026-06-12 18:38:23,786.786 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:38:23,810.810 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 18:38:23,851.851 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 18:38:23,852.852 INFO    ] No camera update needed
[2026-06-12 18:38:23,854.854 INFO    ] Script finished. Safe exiting...
[2026-06-12 18:38:23,855.855 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 18:38:23,858.858 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 18:38:23,861.861 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 18:38:25,901.901 INFO    ] ================================================
[2026-06-12 18:38:25,916.916 INFO    ] Launching Daemon at Fri Jun 12 18:38:25 IST 2026
[2026-06-12 18:38:25,928.928 INFO    ] ================================================
[2026-06-12 18:38:26,299.299 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 18:38:26
[2026-06-12 18:38:26,616.616 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 18:38:26,749.749 INFO    ] Initializing speech engine...
[2026-06-12 18:38:26,754.754 INFO    ] 2026-06-12 18:38:26
[2026-06-12 18:38:26,986.986 INFO    ] 2026-06-12 18:38:26
[2026-06-12 18:38:27,017.017 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 18:38:27,217.217 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 18:38:27,220.220 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 18:38:27,360.360 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 18:38:27,427.427 INFO    ] time= 12/06/2026 18:38:27
[2026-06-12 18:38:27,462.462 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 18:38:27,468.468 INFO    ] Checking for existing commands in stream...
[2026-06-12 18:38:27,546.546 INFO    ] No existing commands found in stream
[2026-06-12 18:38:32,555.555 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 18:38:32,558.558 INFO    ] Waiting 2.39 seconds before fallback handling...
[2026-06-12 18:38:35,346.346 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 18:38:35,348.348 INFO    ] Checking for system updates...
[2026-06-12 18:38:35,369.369 INFO    ] 200
[2026-06-12 18:38:35,374.374 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:38:35,404.404 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 18:38:35,406.406 INFO    ] No update needed
[2026-06-12 18:38:35,407.407 INFO    ] Checking for camera pi updates...
[2026-06-12 18:38:35,426.426 INFO    ] 200
[2026-06-12 18:38:35,428.428 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:38:35,451.451 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 18:38:35,495.495 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 18:38:35,496.496 INFO    ] No camera update needed
[2026-06-12 18:38:35,497.497 INFO    ] Script finished. Safe exiting...
[2026-06-12 18:38:35,499.499 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 18:38:35,502.502 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 18:38:35,504.504 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 18:38:37,541.541 INFO    ] ================================================
[2026-06-12 18:38:37,556.556 INFO    ] Launching Daemon at Fri Jun 12 18:38:37 IST 2026
[2026-06-12 18:38:37,567.567 INFO    ] ================================================
[2026-06-12 18:38:37,935.935 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 18:38:37
[2026-06-12 18:38:38,245.245 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 18:38:38,386.386 INFO    ] Initializing speech engine...
[2026-06-12 18:38:38,392.392 INFO    ] 2026-06-12 18:38:38
[2026-06-12 18:38:38,595.595 INFO    ] 2026-06-12 18:38:38
[2026-06-12 18:38:38,623.623 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 18:38:38,807.807 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 18:38:38,815.815 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 18:38:38,937.937 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 18:38:38,988.988 INFO    ] time= 12/06/2026 18:38:38
[2026-06-12 18:38:39,035.035 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 18:38:39,037.037 INFO    ] Checking for existing commands in stream...
[2026-06-12 18:38:39,108.108 INFO    ] No existing commands found in stream
[2026-06-12 18:38:44,117.117 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 18:38:44,120.120 INFO    ] Waiting 2.85 seconds before fallback handling...
[2026-06-12 18:38:47,342.342 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 18:38:47,344.344 INFO    ] Checking for system updates...
[2026-06-12 18:38:47,365.365 INFO    ] 200
[2026-06-12 18:38:47,367.367 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:38:47,397.397 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 18:38:47,399.399 INFO    ] No update needed
[2026-06-12 18:38:47,401.401 INFO    ] Checking for camera pi updates...
[2026-06-12 18:38:47,421.421 INFO    ] 200
[2026-06-12 18:38:47,422.422 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:38:47,445.445 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 18:38:47,488.488 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 18:38:47,489.489 INFO    ] No camera update needed
[2026-06-12 18:38:47,491.491 INFO    ] Script finished. Safe exiting...
[2026-06-12 18:38:47,492.492 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 18:38:47,495.495 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 18:38:47,498.498 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 18:38:49,537.537 INFO    ] ================================================
[2026-06-12 18:38:49,553.553 INFO    ] Launching Daemon at Fri Jun 12 18:38:49 IST 2026
[2026-06-12 18:38:49,563.563 INFO    ] ================================================
[2026-06-12 18:38:49,938.938 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 18:38:49
[2026-06-12 18:38:50,253.253 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 18:38:50,384.384 INFO    ] Initializing speech engine...
[2026-06-12 18:38:50,396.396 INFO    ] 2026-06-12 18:38:50
[2026-06-12 18:38:50,603.603 INFO    ] 2026-06-12 18:38:50
[2026-06-12 18:38:50,633.633 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 18:38:50,818.818 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 18:38:50,827.827 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 18:38:50,972.972 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 18:38:51,026.026 INFO    ] time= 12/06/2026 18:38:50
[2026-06-12 18:38:51,049.049 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 18:38:51,055.055 INFO    ] Checking for existing commands in stream...
[2026-06-12 18:38:51,122.122 INFO    ] No existing commands found in stream
[2026-06-12 18:38:56,131.131 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 18:38:56,134.134 INFO    ] Waiting 0.08 seconds before fallback handling...
[2026-06-12 18:38:56,579.579 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 18:38:56,581.581 INFO    ] Checking for system updates...
[2026-06-12 18:38:56,601.601 INFO    ] 200
[2026-06-12 18:38:56,603.603 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:38:56,633.633 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 18:38:56,634.634 INFO    ] No update needed
[2026-06-12 18:38:56,635.635 INFO    ] Checking for camera pi updates...
[2026-06-12 18:38:56,655.655 INFO    ] 200
[2026-06-12 18:38:56,656.656 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:38:56,679.679 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 18:38:56,818.818 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 18:38:56,820.820 INFO    ] No camera update needed
[2026-06-12 18:38:56,821.821 INFO    ] Script finished. Safe exiting...
[2026-06-12 18:38:56,823.823 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 18:38:56,825.825 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 18:38:56,828.828 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 18:38:58,868.868 INFO    ] ================================================
[2026-06-12 18:38:58,883.883 INFO    ] Launching Daemon at Fri Jun 12 18:38:58 IST 2026
[2026-06-12 18:38:58,893.893 INFO    ] ================================================
[2026-06-12 18:38:59,229.229 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 18:38:59
[2026-06-12 18:38:59,541.541 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 18:38:59,675.675 INFO    ] Initializing speech engine...
[2026-06-12 18:38:59,679.679 INFO    ] 2026-06-12 18:38:59
[2026-06-12 18:38:59,909.909 INFO    ] 2026-06-12 18:38:59
[2026-06-12 18:38:59,940.940 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 18:39:00,137.137 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 18:39:00,141.141 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 18:39:00,288.288 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 18:39:00,357.357 INFO    ] time= 12/06/2026 18:39:00
[2026-06-12 18:39:00,386.386 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 18:39:00,387.387 INFO    ] Checking for existing commands in stream...
[2026-06-12 18:39:00,464.464 INFO    ] No existing commands found in stream
[2026-06-12 18:39:05,473.473 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 18:39:05,476.476 INFO    ] Waiting 3.58 seconds before fallback handling...
[2026-06-12 18:39:09,417.417 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 18:39:09,418.418 INFO    ] Checking for system updates...
[2026-06-12 18:39:09,438.438 INFO    ] 200
[2026-06-12 18:39:09,440.440 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:39:09,470.470 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 18:39:09,472.472 INFO    ] No update needed
[2026-06-12 18:39:09,473.473 INFO    ] Checking for camera pi updates...
[2026-06-12 18:39:09,492.492 INFO    ] 200
[2026-06-12 18:39:09,494.494 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:39:09,518.518 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 18:39:09,564.564 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 18:39:09,565.565 INFO    ] No camera update needed
[2026-06-12 18:39:09,566.566 INFO    ] Script finished. Safe exiting...
[2026-06-12 18:39:09,567.567 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 18:39:09,570.570 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 18:39:09,573.573 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 18:39:11,612.612 INFO    ] ================================================
[2026-06-12 18:39:11,627.627 INFO    ] Launching Daemon at Fri Jun 12 18:39:11 IST 2026
[2026-06-12 18:39:11,638.638 INFO    ] ================================================
[2026-06-12 18:39:12,012.012 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 18:39:12
[2026-06-12 18:39:12,353.353 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 18:39:12,506.506 INFO    ] Initializing speech engine...
[2026-06-12 18:39:12,512.512 INFO    ] 2026-06-12 18:39:12
[2026-06-12 18:39:12,723.723 INFO    ] 2026-06-12 18:39:12
[2026-06-12 18:39:12,753.753 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 18:39:12,938.938 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 18:39:12,948.948 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 18:39:13,094.094 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 18:39:13,147.147 INFO    ] time= 12/06/2026 18:39:13
[2026-06-12 18:39:13,169.169 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 18:39:13,176.176 INFO    ] Checking for existing commands in stream...
[2026-06-12 18:39:13,243.243 INFO    ] No existing commands found in stream
[2026-06-12 18:39:18,276.276 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 18:39:18,280.280 INFO    ] Waiting 3.89 seconds before fallback handling...
[2026-06-12 18:39:22,557.557 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 18:39:22,559.559 INFO    ] Checking for system updates...
[2026-06-12 18:39:22,580.580 INFO    ] 200
[2026-06-12 18:39:22,582.582 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:39:22,614.614 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 18:39:22,616.616 INFO    ] No update needed
[2026-06-12 18:39:22,618.618 INFO    ] Checking for camera pi updates...
[2026-06-12 18:39:22,637.637 INFO    ] 200
[2026-06-12 18:39:22,639.639 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:39:22,662.662 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 18:39:22,708.708 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 18:39:22,710.710 INFO    ] No camera update needed
[2026-06-12 18:39:22,711.711 INFO    ] Script finished. Safe exiting...
[2026-06-12 18:39:22,713.713 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 18:39:22,716.716 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 18:39:22,719.719 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 18:39:24,758.758 INFO    ] ================================================
[2026-06-12 18:39:24,774.774 INFO    ] Launching Daemon at Fri Jun 12 18:39:24 IST 2026
[2026-06-12 18:39:24,785.785 INFO    ] ================================================
[2026-06-12 18:39:25,121.121 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 18:39:25
[2026-06-12 18:39:25,433.433 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 18:39:25,576.576 INFO    ] Initializing speech engine...
[2026-06-12 18:39:25,582.582 INFO    ] 2026-06-12 18:39:25
[2026-06-12 18:39:25,783.783 INFO    ] 2026-06-12 18:39:25
[2026-06-12 18:39:25,812.812 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 18:39:25,995.995 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 18:39:26,004.004 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 18:39:26,149.149 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 18:39:26,201.201 INFO    ] time= 12/06/2026 18:39:26
[2026-06-12 18:39:26,224.224 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 18:39:26,230.230 INFO    ] Checking for existing commands in stream...
[2026-06-12 18:39:26,298.298 INFO    ] No existing commands found in stream
[2026-06-12 18:39:31,307.307 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 18:39:31,309.309 INFO    ] Waiting 2.57 seconds before fallback handling...
[2026-06-12 18:39:34,285.285 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 18:39:34,286.286 INFO    ] Checking for system updates...
[2026-06-12 18:39:34,307.307 INFO    ] 200
[2026-06-12 18:39:34,309.309 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:39:34,339.339 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 18:39:34,341.341 INFO    ] No update needed
[2026-06-12 18:39:34,342.342 INFO    ] Checking for camera pi updates...
[2026-06-12 18:39:34,361.361 INFO    ] 200
[2026-06-12 18:39:34,363.363 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:39:34,385.385 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 18:39:34,415.415 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 18:39:34,416.416 INFO    ] No camera update needed
[2026-06-12 18:39:34,418.418 INFO    ] Script finished. Safe exiting...
[2026-06-12 18:39:34,419.419 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 18:39:34,422.422 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 18:39:34,425.425 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 18:39:36,467.467 INFO    ] ================================================
[2026-06-12 18:39:36,483.483 INFO    ] Launching Daemon at Fri Jun 12 18:39:36 IST 2026
[2026-06-12 18:39:36,494.494 INFO    ] ================================================
[2026-06-12 18:39:36,832.832 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 18:39:36
[2026-06-12 18:39:37,143.143 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 18:39:37,271.271 INFO    ] Initializing speech engine...
[2026-06-12 18:39:37,276.276 INFO    ] 2026-06-12 18:39:37
[2026-06-12 18:39:37,490.490 INFO    ] 2026-06-12 18:39:37
[2026-06-12 18:39:37,519.519 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 18:39:37,702.702 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 18:39:37,712.712 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 18:39:37,865.865 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 18:39:37,908.908 INFO    ] time= 12/06/2026 18:39:37
[2026-06-12 18:39:37,931.931 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 18:39:37,936.936 INFO    ] Checking for existing commands in stream...
[2026-06-12 18:39:38,003.003 INFO    ] No existing commands found in stream
[2026-06-12 18:39:43,035.035 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 18:39:43,038.038 INFO    ] Waiting 2.62 seconds before fallback handling...
[2026-06-12 18:39:46,021.021 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 18:39:46,023.023 INFO    ] Checking for system updates...
[2026-06-12 18:39:46,044.044 INFO    ] 200
[2026-06-12 18:39:46,046.046 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:39:46,078.078 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 18:39:46,079.079 INFO    ] No update needed
[2026-06-12 18:39:46,081.081 INFO    ] Checking for camera pi updates...
[2026-06-12 18:39:46,100.100 INFO    ] 200
[2026-06-12 18:39:46,101.101 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:39:46,125.125 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 18:39:46,175.175 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 18:39:46,177.177 INFO    ] No camera update needed
[2026-06-12 18:39:46,178.178 INFO    ] Script finished. Safe exiting...
[2026-06-12 18:39:46,179.179 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 18:39:46,182.182 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 18:39:46,185.185 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 18:39:48,226.226 INFO    ] ================================================
[2026-06-12 18:39:48,243.243 INFO    ] Launching Daemon at Fri Jun 12 18:39:48 IST 2026
[2026-06-12 18:39:48,254.254 INFO    ] ================================================
[2026-06-12 18:39:48,584.584 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 18:39:48
[2026-06-12 18:39:48,905.905 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 18:39:49,043.043 INFO    ] Initializing speech engine...
[2026-06-12 18:39:49,051.051 INFO    ] 2026-06-12 18:39:49
[2026-06-12 18:39:49,260.260 INFO    ] 2026-06-12 18:39:49
[2026-06-12 18:39:49,288.288 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 18:39:49,472.472 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 18:39:49,481.481 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 18:39:49,607.607 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 18:39:49,668.668 INFO    ] time= 12/06/2026 18:39:49
[2026-06-12 18:39:49,700.700 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 18:39:49,706.706 INFO    ] Checking for existing commands in stream...
[2026-06-12 18:39:49,796.796 INFO    ] No existing commands found in stream
[2026-06-12 18:39:54,805.805 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 18:39:54,808.808 INFO    ] Waiting 0.79 seconds before fallback handling...
[2026-06-12 18:39:56,021.021 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 18:39:56,023.023 INFO    ] Checking for system updates...
[2026-06-12 18:39:56,043.043 INFO    ] 200
[2026-06-12 18:39:56,045.045 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:39:56,076.076 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 18:39:56,077.077 INFO    ] No update needed
[2026-06-12 18:39:56,079.079 INFO    ] Checking for camera pi updates...
[2026-06-12 18:39:56,100.100 INFO    ] 200
[2026-06-12 18:39:56,101.101 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:39:56,127.127 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 18:39:56,171.171 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 18:39:56,173.173 INFO    ] No camera update needed
[2026-06-12 18:39:56,174.174 INFO    ] Script finished. Safe exiting...
[2026-06-12 18:39:56,176.176 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 18:39:56,179.179 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 18:39:56,182.182 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 18:39:58,222.222 INFO    ] ================================================
[2026-06-12 18:39:58,237.237 INFO    ] Launching Daemon at Fri Jun 12 18:39:58 IST 2026
[2026-06-12 18:39:58,253.253 INFO    ] ================================================
[2026-06-12 18:39:58,624.624 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 18:39:58
[2026-06-12 18:39:58,955.955 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 18:39:59,099.099 INFO    ] Initializing speech engine...
[2026-06-12 18:39:59,105.105 INFO    ] 2026-06-12 18:39:59
[2026-06-12 18:39:59,311.311 INFO    ] 2026-06-12 18:39:59
[2026-06-12 18:39:59,339.339 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 18:39:59,523.523 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 18:39:59,533.533 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 18:39:59,674.674 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 18:39:59,731.731 INFO    ] time= 12/06/2026 18:39:59
[2026-06-12 18:39:59,756.756 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 18:39:59,761.761 INFO    ] Checking for existing commands in stream...
[2026-06-12 18:39:59,829.829 INFO    ] No existing commands found in stream
[2026-06-12 18:40:04,838.838 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 18:40:04,841.841 INFO    ] Waiting 0.15 seconds before fallback handling...
[2026-06-12 18:40:08,373.373 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 18:40:08,376.376 INFO    ] Checking for system updates...
[2026-06-12 18:40:08,416.416 INFO    ] 200
[2026-06-12 18:40:08,418.418 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:40:08,470.470 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 18:40:08,473.473 INFO    ] No update needed
[2026-06-12 18:40:08,475.475 INFO    ] Checking for camera pi updates...
[2026-06-12 18:40:08,507.507 INFO    ] 200
[2026-06-12 18:40:08,508.508 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:40:08,533.533 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 18:40:08,574.574 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 18:40:08,576.576 INFO    ] No camera update needed
[2026-06-12 18:40:08,577.577 INFO    ] Script finished. Safe exiting...
[2026-06-12 18:40:08,578.578 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 18:40:08,581.581 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 18:40:08,584.584 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 18:40:10,623.623 INFO    ] ================================================
[2026-06-12 18:40:10,639.639 INFO    ] Launching Daemon at Fri Jun 12 18:40:10 IST 2026
[2026-06-12 18:40:10,649.649 INFO    ] ================================================
[2026-06-12 18:40:11,007.007 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 18:40:11
[2026-06-12 18:40:11,326.326 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 18:40:11,470.470 INFO    ] Initializing speech engine...
[2026-06-12 18:40:11,475.475 INFO    ] 2026-06-12 18:40:11
[2026-06-12 18:40:11,679.679 INFO    ] 2026-06-12 18:40:11
[2026-06-12 18:40:11,708.708 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 18:40:11,891.891 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 18:40:11,901.901 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 18:40:12,024.024 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 18:40:12,086.086 INFO    ] time= 12/06/2026 18:40:12
[2026-06-12 18:40:12,118.118 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 18:40:12,124.124 INFO    ] Checking for existing commands in stream...
[2026-06-12 18:40:12,191.191 INFO    ] No existing commands found in stream
[2026-06-12 18:40:17,220.220 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 18:40:17,223.223 INFO    ] Waiting 1.02 seconds before fallback handling...
[2026-06-12 18:40:18,618.618 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 18:40:18,620.620 INFO    ] Checking for system updates...
[2026-06-12 18:40:18,641.641 INFO    ] 200
[2026-06-12 18:40:18,642.642 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:40:18,672.672 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 18:40:18,673.673 INFO    ] No update needed
[2026-06-12 18:40:18,675.675 INFO    ] Checking for camera pi updates...
[2026-06-12 18:40:18,694.694 INFO    ] 200
[2026-06-12 18:40:18,695.695 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:40:18,718.718 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 18:40:18,761.761 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 18:40:18,763.763 INFO    ] No camera update needed
[2026-06-12 18:40:18,764.764 INFO    ] Script finished. Safe exiting...
[2026-06-12 18:40:18,765.765 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 18:40:18,768.768 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 18:40:18,771.771 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 18:40:20,812.812 INFO    ] ================================================
[2026-06-12 18:40:20,828.828 INFO    ] Launching Daemon at Fri Jun 12 18:40:20 IST 2026
[2026-06-12 18:40:20,839.839 INFO    ] ================================================
[2026-06-12 18:40:21,199.199 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 18:40:21
[2026-06-12 18:40:21,513.513 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 18:40:21,648.648 INFO    ] Initializing speech engine...
[2026-06-12 18:40:21,657.657 INFO    ] 2026-06-12 18:40:21
[2026-06-12 18:40:21,882.882 INFO    ] 2026-06-12 18:40:21
[2026-06-12 18:40:21,914.914 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 18:40:22,053.053 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 18:40:22,116.116 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 18:40:22,259.259 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 18:40:22,305.305 INFO    ] time= 12/06/2026 18:40:22
[2026-06-12 18:40:22,344.344 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 18:40:22,368.368 INFO    ] Checking for existing commands in stream...
[2026-06-12 18:40:22,446.446 INFO    ] No existing commands found in stream
[2026-06-12 18:40:27,455.455 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 18:40:27,458.458 INFO    ] Waiting 0.73 seconds before fallback handling...
[2026-06-12 18:40:28,591.591 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 18:40:28,592.592 INFO    ] Checking for system updates...
[2026-06-12 18:40:28,613.613 INFO    ] 200
[2026-06-12 18:40:28,614.614 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:40:28,646.646 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 18:40:28,648.648 INFO    ] No update needed
[2026-06-12 18:40:28,649.649 INFO    ] Checking for camera pi updates...
[2026-06-12 18:40:28,668.668 INFO    ] 200
[2026-06-12 18:40:28,670.670 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:40:28,695.695 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 18:40:28,750.750 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 18:40:28,752.752 INFO    ] No camera update needed
[2026-06-12 18:40:28,753.753 INFO    ] Script finished. Safe exiting...
[2026-06-12 18:40:28,754.754 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 18:40:28,757.757 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 18:40:28,760.760 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 18:40:30,798.798 INFO    ] ================================================
[2026-06-12 18:40:30,814.814 INFO    ] Launching Daemon at Fri Jun 12 18:40:30 IST 2026
[2026-06-12 18:40:30,825.825 INFO    ] ================================================
[2026-06-12 18:40:31,185.185 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 18:40:31
[2026-06-12 18:40:31,516.516 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 18:40:31,677.677 INFO    ] Initializing speech engine...
[2026-06-12 18:40:31,682.682 INFO    ] 2026-06-12 18:40:31
[2026-06-12 18:40:31,921.921 INFO    ] 2026-06-12 18:40:31
[2026-06-12 18:40:31,952.952 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 18:40:32,168.168 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 18:40:32,177.177 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 18:40:32,318.318 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 18:40:32,372.372 INFO    ] time= 12/06/2026 18:40:32
[2026-06-12 18:40:32,401.401 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 18:40:32,419.419 INFO    ] Checking for existing commands in stream...
[2026-06-12 18:40:32,496.496 INFO    ] No existing commands found in stream
[2026-06-12 18:40:37,507.507 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 18:40:37,510.510 INFO    ] Waiting 1.54 seconds before fallback handling...
[2026-06-12 18:40:40,743.743 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 18:40:40,746.746 INFO    ] Checking for system updates...
[2026-06-12 18:40:40,781.781 INFO    ] 200
[2026-06-12 18:40:40,784.784 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:40:40,837.837 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 18:40:40,839.839 INFO    ] No update needed
[2026-06-12 18:40:40,842.842 INFO    ] Checking for camera pi updates...
[2026-06-12 18:40:40,877.877 INFO    ] 200
[2026-06-12 18:40:40,879.879 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:40:40,925.925 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 18:40:40,972.972 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 18:40:40,974.974 INFO    ] No camera update needed
[2026-06-12 18:40:40,977.977 INFO    ] Script finished. Safe exiting...
[2026-06-12 18:40:40,979.979 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 18:40:40,984.984 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 18:40:40,989.989 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 18:40:43,030.030 INFO    ] ================================================
[2026-06-12 18:40:43,046.046 INFO    ] Launching Daemon at Fri Jun 12 18:40:43 IST 2026
[2026-06-12 18:40:43,058.058 INFO    ] ================================================
[2026-06-12 18:40:43,405.405 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 18:40:43
[2026-06-12 18:40:43,746.746 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 18:40:43,900.900 INFO    ] Initializing speech engine...
[2026-06-12 18:40:43,904.904 INFO    ] 2026-06-12 18:40:43
[2026-06-12 18:40:44,113.113 INFO    ] 2026-06-12 18:40:44
[2026-06-12 18:40:44,142.142 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 18:40:44,275.275 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 18:40:44,328.328 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 18:40:44,471.471 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 18:40:44,533.533 INFO    ] time= 12/06/2026 18:40:44
[2026-06-12 18:40:44,557.557 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 18:40:44,564.564 INFO    ] Checking for existing commands in stream...
[2026-06-12 18:40:44,629.629 INFO    ] No existing commands found in stream
[2026-06-12 18:40:49,640.640 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 18:40:49,643.643 INFO    ] Waiting 0.11 seconds before fallback handling...
[2026-06-12 18:40:50,117.117 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 18:40:50,118.118 INFO    ] Checking for system updates...
[2026-06-12 18:40:50,139.139 INFO    ] 200
[2026-06-12 18:40:50,140.140 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:40:50,172.172 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 18:40:50,174.174 INFO    ] No update needed
[2026-06-12 18:40:50,175.175 INFO    ] Checking for camera pi updates...
[2026-06-12 18:40:50,194.194 INFO    ] 200
[2026-06-12 18:40:50,196.196 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:40:50,218.218 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 18:40:50,260.260 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 18:40:50,261.261 INFO    ] No camera update needed
[2026-06-12 18:40:50,262.262 INFO    ] Script finished. Safe exiting...
[2026-06-12 18:40:50,263.263 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 18:40:50,267.267 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 18:40:50,269.269 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 18:40:52,308.308 INFO    ] ================================================
[2026-06-12 18:40:52,324.324 INFO    ] Launching Daemon at Fri Jun 12 18:40:52 IST 2026
[2026-06-12 18:40:52,335.335 INFO    ] ================================================
[2026-06-12 18:40:52,688.688 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 18:40:52
[2026-06-12 18:40:53,029.029 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 18:40:53,170.170 INFO    ] Initializing speech engine...
[2026-06-12 18:40:53,183.183 INFO    ] 2026-06-12 18:40:53
[2026-06-12 18:40:53,396.396 INFO    ] 2026-06-12 18:40:53
[2026-06-12 18:40:53,425.425 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 18:40:53,611.611 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 18:40:53,622.622 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 18:40:53,768.768 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 18:40:53,822.822 INFO    ] time= 12/06/2026 18:40:53
[2026-06-12 18:40:53,843.843 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 18:40:53,850.850 INFO    ] Checking for existing commands in stream...
[2026-06-12 18:40:53,917.917 INFO    ] No existing commands found in stream
[2026-06-12 18:40:58,932.932 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 18:40:58,935.935 INFO    ] Waiting 3.61 seconds before fallback handling...
[2026-06-12 18:41:02,880.880 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 18:41:02,882.882 INFO    ] Checking for system updates...
[2026-06-12 18:41:02,903.903 INFO    ] 200
[2026-06-12 18:41:02,904.904 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:41:02,934.934 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 18:41:02,936.936 INFO    ] No update needed
[2026-06-12 18:41:02,937.937 INFO    ] Checking for camera pi updates...
[2026-06-12 18:41:02,958.958 INFO    ] 200
[2026-06-12 18:41:02,959.959 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:41:02,983.983 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 18:41:03,013.013 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 18:41:03,014.014 INFO    ] No camera update needed
[2026-06-12 18:41:03,016.016 INFO    ] Script finished. Safe exiting...
[2026-06-12 18:41:03,017.017 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 18:41:03,021.021 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 18:41:03,024.024 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 18:41:05,062.062 INFO    ] ================================================
[2026-06-12 18:41:05,077.077 INFO    ] Launching Daemon at Fri Jun 12 18:41:05 IST 2026
[2026-06-12 18:41:05,089.089 INFO    ] ================================================
[2026-06-12 18:41:05,441.441 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 18:41:05
[2026-06-12 18:41:05,753.753 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 18:41:05,908.908 INFO    ] Initializing speech engine...
[2026-06-12 18:41:05,920.920 INFO    ] 2026-06-12 18:41:05
[2026-06-12 18:41:06,132.132 INFO    ] 2026-06-12 18:41:06
[2026-06-12 18:41:06,161.161 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 18:41:06,344.344 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 18:41:06,354.354 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 18:41:06,500.500 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 18:41:06,553.553 INFO    ] time= 12/06/2026 18:41:06
[2026-06-12 18:41:06,575.575 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 18:41:06,582.582 INFO    ] Checking for existing commands in stream...
[2026-06-12 18:41:06,649.649 INFO    ] No existing commands found in stream
[2026-06-12 18:41:11,668.668 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 18:41:11,672.672 INFO    ] Waiting 0.38 seconds before fallback handling...
[2026-06-12 18:41:12,418.418 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 18:41:12,420.420 INFO    ] Checking for system updates...
[2026-06-12 18:41:12,441.441 INFO    ] 200
[2026-06-12 18:41:12,442.442 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:41:12,472.472 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 18:41:12,474.474 INFO    ] No update needed
[2026-06-12 18:41:12,475.475 INFO    ] Checking for camera pi updates...
[2026-06-12 18:41:12,496.496 INFO    ] 200
[2026-06-12 18:41:12,497.497 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:41:12,523.523 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 18:41:12,563.563 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 18:41:12,565.565 INFO    ] No camera update needed
[2026-06-12 18:41:12,566.566 INFO    ] Script finished. Safe exiting...
[2026-06-12 18:41:12,567.567 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 18:41:12,571.571 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 18:41:12,574.574 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 18:41:14,614.614 INFO    ] ================================================
[2026-06-12 18:41:14,631.631 INFO    ] Launching Daemon at Fri Jun 12 18:41:14 IST 2026
[2026-06-12 18:41:14,643.643 INFO    ] ================================================
[2026-06-12 18:41:14,997.997 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 18:41:14
[2026-06-12 18:41:15,333.333 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 18:41:15,472.472 INFO    ] Initializing speech engine...
[2026-06-12 18:41:15,485.485 INFO    ] 2026-06-12 18:41:15
[2026-06-12 18:41:15,697.697 INFO    ] 2026-06-12 18:41:15
[2026-06-12 18:41:15,724.724 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 18:41:15,910.910 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 18:41:15,918.918 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 18:41:16,068.068 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 18:41:16,115.115 INFO    ] time= 12/06/2026 18:41:16
[2026-06-12 18:41:16,137.137 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 18:41:16,144.144 INFO    ] Checking for existing commands in stream...
[2026-06-12 18:41:16,233.233 INFO    ] No existing commands found in stream
[2026-06-12 18:41:21,243.243 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 18:41:21,246.246 INFO    ] Waiting 1.41 seconds before fallback handling...
[2026-06-12 18:41:23,119.119 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 18:41:23,121.121 INFO    ] Checking for system updates...
[2026-06-12 18:41:23,142.142 INFO    ] 200
[2026-06-12 18:41:23,143.143 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:41:23,173.173 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 18:41:23,174.174 INFO    ] No update needed
[2026-06-12 18:41:23,176.176 INFO    ] Checking for camera pi updates...
[2026-06-12 18:41:23,195.195 INFO    ] 200
[2026-06-12 18:41:23,196.196 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:41:23,220.220 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 18:41:23,265.265 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 18:41:23,266.266 INFO    ] No camera update needed
[2026-06-12 18:41:23,268.268 INFO    ] Script finished. Safe exiting...
[2026-06-12 18:41:23,269.269 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 18:41:23,273.273 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 18:41:23,276.276 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 18:41:25,314.314 INFO    ] ================================================
[2026-06-12 18:41:25,330.330 INFO    ] Launching Daemon at Fri Jun 12 18:41:25 IST 2026
[2026-06-12 18:41:25,340.340 INFO    ] ================================================
[2026-06-12 18:41:25,693.693 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 18:41:25
[2026-06-12 18:41:26,005.005 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 18:41:26,141.141 INFO    ] Initializing speech engine...
[2026-06-12 18:41:26,153.153 INFO    ] 2026-06-12 18:41:26
[2026-06-12 18:41:26,374.374 INFO    ] 2026-06-12 18:41:26
[2026-06-12 18:41:26,405.405 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 18:41:26,603.603 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 18:41:26,606.606 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 18:41:26,754.754 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 18:41:26,813.813 INFO    ] time= 12/06/2026 18:41:26
[2026-06-12 18:41:26,843.843 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 18:41:26,855.855 INFO    ] Checking for existing commands in stream...
[2026-06-12 18:41:26,932.932 INFO    ] No existing commands found in stream
[2026-06-12 18:41:31,940.940 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 18:41:31,942.942 INFO    ] Waiting 2.34 seconds before fallback handling...
[2026-06-12 18:41:34,646.646 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 18:41:34,647.647 INFO    ] Checking for system updates...
[2026-06-12 18:41:34,668.668 INFO    ] 200
[2026-06-12 18:41:34,669.669 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:41:34,699.699 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 18:41:34,700.700 INFO    ] No update needed
[2026-06-12 18:41:34,701.701 INFO    ] Checking for camera pi updates...
[2026-06-12 18:41:34,722.722 INFO    ] 200
[2026-06-12 18:41:34,724.724 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:41:34,746.746 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 18:41:34,804.804 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 18:41:34,805.805 INFO    ] No camera update needed
[2026-06-12 18:41:34,807.807 INFO    ] Script finished. Safe exiting...
[2026-06-12 18:41:34,808.808 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 18:41:34,811.811 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 18:41:34,814.814 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 18:41:36,854.854 INFO    ] ================================================
[2026-06-12 18:41:36,871.871 INFO    ] Launching Daemon at Fri Jun 12 18:41:36 IST 2026
[2026-06-12 18:41:36,882.882 INFO    ] ================================================
[2026-06-12 18:41:37,269.269 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 18:41:37
[2026-06-12 18:41:37,606.606 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 18:41:37,757.757 INFO    ] Initializing speech engine...
[2026-06-12 18:41:37,764.764 INFO    ] 2026-06-12 18:41:37
[2026-06-12 18:41:37,970.970 INFO    ] 2026-06-12 18:41:37
[2026-06-12 18:41:37,999.999 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 18:41:38,183.183 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 18:41:38,193.193 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 18:41:38,347.347 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 18:41:38,391.391 INFO    ] time= 12/06/2026 18:41:38
[2026-06-12 18:41:38,413.413 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 18:41:38,418.418 INFO    ] Checking for existing commands in stream...
[2026-06-12 18:41:38,485.485 INFO    ] No existing commands found in stream
[2026-06-12 18:41:43,500.500 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 18:41:43,503.503 INFO    ] Waiting 0.36 seconds before fallback handling...
[2026-06-12 18:41:44,213.213 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 18:41:44,214.214 INFO    ] Checking for system updates...
[2026-06-12 18:41:44,235.235 INFO    ] 200
[2026-06-12 18:41:44,237.237 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:41:44,269.269 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 18:41:44,271.271 INFO    ] No update needed
[2026-06-12 18:41:44,272.272 INFO    ] Checking for camera pi updates...
[2026-06-12 18:41:44,292.292 INFO    ] 200
[2026-06-12 18:41:44,293.293 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:41:44,316.316 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 18:41:44,366.366 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 18:41:44,367.367 INFO    ] No camera update needed
[2026-06-12 18:41:44,369.369 INFO    ] Script finished. Safe exiting...
[2026-06-12 18:41:44,370.370 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 18:41:44,373.373 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 18:41:44,376.376 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 18:41:46,415.415 INFO    ] ================================================
[2026-06-12 18:41:46,431.431 INFO    ] Launching Daemon at Fri Jun 12 18:41:46 IST 2026
[2026-06-12 18:41:46,442.442 INFO    ] ================================================
[2026-06-12 18:41:46,813.813 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 18:41:46
[2026-06-12 18:41:47,125.125 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 18:41:47,262.262 INFO    ] Initializing speech engine...
[2026-06-12 18:41:47,269.269 INFO    ] 2026-06-12 18:41:47
[2026-06-12 18:41:47,474.474 INFO    ] 2026-06-12 18:41:47
[2026-06-12 18:41:47,502.502 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 18:41:47,687.687 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 18:41:47,697.697 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 18:41:47,823.823 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 18:41:47,890.890 INFO    ] time= 12/06/2026 18:41:47
[2026-06-12 18:41:47,915.915 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 18:41:47,921.921 INFO    ] Checking for existing commands in stream...
[2026-06-12 18:41:47,988.988 INFO    ] No existing commands found in stream
[2026-06-12 18:41:52,996.996 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 18:41:52,999.999 INFO    ] Waiting 1.53 seconds before fallback handling...
[2026-06-12 18:41:54,930.930 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 18:41:54,932.932 INFO    ] Checking for system updates...
[2026-06-12 18:41:54,952.952 INFO    ] 200
[2026-06-12 18:41:54,953.953 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:41:54,982.982 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 18:41:54,984.984 INFO    ] No update needed
[2026-06-12 18:41:54,985.985 INFO    ] Checking for camera pi updates...
[2026-06-12 18:41:55,004.004 INFO    ] 200
[2026-06-12 18:41:55,005.005 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:41:55,031.031 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 18:41:55,089.089 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 18:41:55,090.090 INFO    ] No camera update needed
[2026-06-12 18:41:55,092.092 INFO    ] Script finished. Safe exiting...
[2026-06-12 18:41:55,093.093 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 18:41:55,096.096 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 18:41:55,098.098 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 18:41:57,138.138 INFO    ] ================================================
[2026-06-12 18:41:57,154.154 INFO    ] Launching Daemon at Fri Jun 12 18:41:57 IST 2026
[2026-06-12 18:41:57,165.165 INFO    ] ================================================
[2026-06-12 18:41:57,495.495 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 18:41:57
[2026-06-12 18:41:57,807.807 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 18:41:57,938.938 INFO    ] Initializing speech engine...
[2026-06-12 18:41:57,947.947 INFO    ] 2026-06-12 18:41:57
[2026-06-12 18:41:58,162.162 INFO    ] 2026-06-12 18:41:58
[2026-06-12 18:41:58,191.191 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 18:41:58,377.377 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 18:41:58,381.381 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 18:41:58,519.519 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 18:41:58,583.583 INFO    ] time= 12/06/2026 18:41:58
[2026-06-12 18:41:58,611.611 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 18:41:58,617.617 INFO    ] Checking for existing commands in stream...
[2026-06-12 18:41:58,688.688 INFO    ] No existing commands found in stream
[2026-06-12 18:42:03,700.700 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 18:42:03,708.708 INFO    ] Waiting 1.41 seconds before fallback handling...
[2026-06-12 18:42:05,523.523 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 18:42:05,524.524 INFO    ] Checking for system updates...
[2026-06-12 18:42:05,544.544 INFO    ] 200
[2026-06-12 18:42:05,545.545 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:42:05,577.577 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 18:42:05,578.578 INFO    ] No update needed
[2026-06-12 18:42:05,579.579 INFO    ] Checking for camera pi updates...
[2026-06-12 18:42:05,599.599 INFO    ] 200
[2026-06-12 18:42:05,600.600 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:42:05,623.623 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 18:42:05,683.683 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 18:42:05,685.685 INFO    ] No camera update needed
[2026-06-12 18:42:05,686.686 INFO    ] Script finished. Safe exiting...
[2026-06-12 18:42:05,687.687 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 18:42:05,690.690 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 18:42:05,693.693 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 18:42:07,731.731 INFO    ] ================================================
[2026-06-12 18:42:07,747.747 INFO    ] Launching Daemon at Fri Jun 12 18:42:07 IST 2026
[2026-06-12 18:42:07,758.758 INFO    ] ================================================
[2026-06-12 18:42:08,102.102 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 18:42:08
[2026-06-12 18:42:08,416.416 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 18:42:08,558.558 INFO    ] Initializing speech engine...
[2026-06-12 18:42:08,563.563 INFO    ] 2026-06-12 18:42:08
[2026-06-12 18:42:08,766.766 INFO    ] 2026-06-12 18:42:08
[2026-06-12 18:42:08,795.795 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 18:42:08,978.978 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 18:42:08,988.988 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 18:42:09,127.127 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 18:42:09,184.184 INFO    ] time= 12/06/2026 18:42:09
[2026-06-12 18:42:09,208.208 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 18:42:09,214.214 INFO    ] Checking for existing commands in stream...
[2026-06-12 18:42:09,279.279 INFO    ] No existing commands found in stream
[2026-06-12 18:42:14,289.289 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 18:42:14,292.292 INFO    ] Waiting 2.52 seconds before fallback handling...
[2026-06-12 18:42:17,148.148 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 18:42:17,149.149 INFO    ] Checking for system updates...
[2026-06-12 18:42:17,170.170 INFO    ] 200
[2026-06-12 18:42:17,171.171 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:42:17,200.200 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 18:42:17,202.202 INFO    ] No update needed
[2026-06-12 18:42:17,203.203 INFO    ] Checking for camera pi updates...
[2026-06-12 18:42:17,223.223 INFO    ] 200
[2026-06-12 18:42:17,224.224 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:42:17,247.247 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 18:42:17,295.295 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 18:42:17,296.296 INFO    ] No camera update needed
[2026-06-12 18:42:17,297.297 INFO    ] Script finished. Safe exiting...
[2026-06-12 18:42:17,299.299 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 18:42:17,302.302 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 18:42:17,304.304 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 18:42:19,343.343 INFO    ] ================================================
[2026-06-12 18:42:19,359.359 INFO    ] Launching Daemon at Fri Jun 12 18:42:19 IST 2026
[2026-06-12 18:42:19,370.370 INFO    ] ================================================
[2026-06-12 18:42:19,764.764 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 18:42:19
[2026-06-12 18:42:20,106.106 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 18:42:20,261.261 INFO    ] Initializing speech engine...
[2026-06-12 18:42:20,266.266 INFO    ] 2026-06-12 18:42:20
[2026-06-12 18:42:20,474.474 INFO    ] 2026-06-12 18:42:20
[2026-06-12 18:42:20,503.503 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 18:42:20,687.687 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 18:42:20,699.699 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 18:42:20,841.841 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 18:42:20,894.894 INFO    ] time= 12/06/2026 18:42:20
[2026-06-12 18:42:20,917.917 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 18:42:20,923.923 INFO    ] Checking for existing commands in stream...
[2026-06-12 18:42:20,990.990 INFO    ] No existing commands found in stream
[2026-06-12 18:42:26,010.010 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 18:42:26,013.013 INFO    ] Waiting 2.17 seconds before fallback handling...
[2026-06-12 18:42:28,604.604 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 18:42:28,606.606 INFO    ] Checking for system updates...
[2026-06-12 18:42:28,627.627 INFO    ] 200
[2026-06-12 18:42:28,628.628 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:42:28,659.659 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 18:42:28,661.661 INFO    ] No update needed
[2026-06-12 18:42:28,662.662 INFO    ] Checking for camera pi updates...
[2026-06-12 18:42:28,683.683 INFO    ] 200
[2026-06-12 18:42:28,684.684 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:42:28,714.714 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 18:42:28,759.759 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 18:42:28,761.761 INFO    ] No camera update needed
[2026-06-12 18:42:28,762.762 INFO    ] Script finished. Safe exiting...
[2026-06-12 18:42:28,764.764 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 18:42:28,767.767 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 18:42:28,770.770 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 18:42:30,808.808 INFO    ] ================================================
[2026-06-12 18:42:30,823.823 INFO    ] Launching Daemon at Fri Jun 12 18:42:30 IST 2026
[2026-06-12 18:42:30,834.834 INFO    ] ================================================
[2026-06-12 18:42:31,192.192 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 18:42:31
[2026-06-12 18:42:31,504.504 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 18:42:31,642.642 INFO    ] Initializing speech engine...
[2026-06-12 18:42:31,652.652 INFO    ] 2026-06-12 18:42:31
[2026-06-12 18:42:31,855.855 INFO    ] 2026-06-12 18:42:31
[2026-06-12 18:42:31,885.885 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 18:42:32,083.083 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 18:42:32,087.087 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 18:42:32,237.237 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 18:42:32,292.292 INFO    ] time= 12/06/2026 18:42:32
[2026-06-12 18:42:32,331.331 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 18:42:32,338.338 INFO    ] Checking for existing commands in stream...
[2026-06-12 18:42:32,407.407 INFO    ] No existing commands found in stream
[2026-06-12 18:42:37,416.416 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 18:42:37,419.419 INFO    ] Waiting 1.92 seconds before fallback handling...
[2026-06-12 18:42:39,748.748 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 18:42:39,750.750 INFO    ] Checking for system updates...
[2026-06-12 18:42:39,770.770 INFO    ] 200
[2026-06-12 18:42:39,771.771 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:42:39,801.801 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 18:42:39,803.803 INFO    ] No update needed
[2026-06-12 18:42:39,804.804 INFO    ] Checking for camera pi updates...
[2026-06-12 18:42:39,823.823 INFO    ] 200
[2026-06-12 18:42:39,824.824 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:42:39,847.847 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 18:42:39,892.892 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 18:42:39,893.893 INFO    ] No camera update needed
[2026-06-12 18:42:39,894.894 INFO    ] Script finished. Safe exiting...
[2026-06-12 18:42:39,896.896 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 18:42:39,898.898 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 18:42:39,901.901 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 18:42:41,941.941 INFO    ] ================================================
[2026-06-12 18:42:41,957.957 INFO    ] Launching Daemon at Fri Jun 12 18:42:41 IST 2026
[2026-06-12 18:42:41,969.969 INFO    ] ================================================
[2026-06-12 18:42:42,353.353 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 18:42:42
[2026-06-12 18:42:42,693.693 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 18:42:42,844.844 INFO    ] Initializing speech engine...
[2026-06-12 18:42:42,850.850 INFO    ] 2026-06-12 18:42:42
[2026-06-12 18:42:43,056.056 INFO    ] 2026-06-12 18:42:43
[2026-06-12 18:42:43,086.086 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 18:42:43,269.269 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 18:42:43,273.273 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 18:42:43,414.414 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 18:42:43,477.477 INFO    ] time= 12/06/2026 18:42:43
[2026-06-12 18:42:43,500.500 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 18:42:43,506.506 INFO    ] Checking for existing commands in stream...
[2026-06-12 18:42:43,573.573 INFO    ] No existing commands found in stream
[2026-06-12 18:42:48,588.588 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 18:42:48,591.591 INFO    ] Waiting 0.09 seconds before fallback handling...
[2026-06-12 18:42:49,048.048 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 18:42:49,050.050 INFO    ] Checking for system updates...
[2026-06-12 18:42:49,071.071 INFO    ] 200
[2026-06-12 18:42:49,072.072 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:42:49,103.103 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 18:42:49,104.104 INFO    ] No update needed
[2026-06-12 18:42:49,106.106 INFO    ] Checking for camera pi updates...
[2026-06-12 18:42:49,127.127 INFO    ] 200
[2026-06-12 18:42:49,128.128 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:42:49,156.156 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 18:42:49,222.222 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 18:42:49,224.224 INFO    ] No camera update needed
[2026-06-12 18:42:49,225.225 INFO    ] Script finished. Safe exiting...
[2026-06-12 18:42:49,227.227 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 18:42:49,230.230 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 18:42:49,233.233 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 18:42:51,273.273 INFO    ] ================================================
[2026-06-12 18:42:51,289.289 INFO    ] Launching Daemon at Fri Jun 12 18:42:51 IST 2026
[2026-06-12 18:42:51,300.300 INFO    ] ================================================
[2026-06-12 18:42:51,656.656 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 18:42:51
[2026-06-12 18:42:51,996.996 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 18:42:52,141.141 INFO    ] Initializing speech engine...
[2026-06-12 18:42:52,151.151 INFO    ] 2026-06-12 18:42:52
[2026-06-12 18:42:52,362.362 INFO    ] 2026-06-12 18:42:52
[2026-06-12 18:42:52,390.390 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 18:42:52,575.575 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 18:42:52,585.585 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 18:42:52,735.735 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 18:42:52,784.784 INFO    ] time= 12/06/2026 18:42:52
[2026-06-12 18:42:52,807.807 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 18:42:52,813.813 INFO    ] Checking for existing commands in stream...
[2026-06-12 18:42:52,880.880 INFO    ] No existing commands found in stream
[2026-06-12 18:42:57,894.894 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 18:42:57,898.898 INFO    ] Waiting 0.60 seconds before fallback handling...
[2026-06-12 18:42:58,857.857 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 18:42:58,859.859 INFO    ] Checking for system updates...
[2026-06-12 18:42:58,880.880 INFO    ] 200
[2026-06-12 18:42:58,882.882 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:42:58,919.919 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 18:42:58,920.920 INFO    ] No update needed
[2026-06-12 18:42:58,922.922 INFO    ] Checking for camera pi updates...
[2026-06-12 18:42:58,942.942 INFO    ] 200
[2026-06-12 18:42:58,944.944 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:42:58,968.968 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 18:42:59,027.027 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 18:42:59,028.028 INFO    ] No camera update needed
[2026-06-12 18:42:59,030.030 INFO    ] Script finished. Safe exiting...
[2026-06-12 18:42:59,031.031 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 18:42:59,034.034 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 18:42:59,037.037 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 18:43:01,075.075 INFO    ] ================================================
[2026-06-12 18:43:01,099.099 INFO    ] Launching Daemon at Fri Jun 12 18:43:01 IST 2026
[2026-06-12 18:43:01,115.115 INFO    ] ================================================
[2026-06-12 18:43:01,534.534 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 18:43:01
[2026-06-12 18:43:01,902.902 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 18:43:02,108.108 INFO    ] Initializing speech engine...
[2026-06-12 18:43:02,117.117 INFO    ] 2026-06-12 18:43:02
[2026-06-12 18:43:02,320.320 INFO    ] 2026-06-12 18:43:02
[2026-06-12 18:43:02,357.357 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 18:43:02,489.489 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 18:43:02,508.508 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 18:43:02,657.657 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 18:43:02,703.703 INFO    ] time= 12/06/2026 18:43:02
[2026-06-12 18:43:02,764.764 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 18:43:02,793.793 INFO    ] Checking for existing commands in stream...
[2026-06-12 18:43:02,873.873 INFO    ] No existing commands found in stream
[2026-06-12 18:43:07,887.887 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 18:43:07,890.890 INFO    ] Waiting 0.88 seconds before fallback handling...
[2026-06-12 18:43:09,167.167 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 18:43:09,168.168 INFO    ] Checking for system updates...
[2026-06-12 18:43:09,189.189 INFO    ] 200
[2026-06-12 18:43:09,191.191 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:43:09,220.220 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 18:43:09,222.222 INFO    ] No update needed
[2026-06-12 18:43:09,223.223 INFO    ] Checking for camera pi updates...
[2026-06-12 18:43:09,243.243 INFO    ] 200
[2026-06-12 18:43:09,244.244 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:43:09,267.267 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 18:43:09,403.403 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 18:43:09,404.404 INFO    ] No camera update needed
[2026-06-12 18:43:09,406.406 INFO    ] Script finished. Safe exiting...
[2026-06-12 18:43:09,407.407 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 18:43:09,410.410 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 18:43:09,413.413 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 18:43:11,452.452 INFO    ] ================================================
[2026-06-12 18:43:11,467.467 INFO    ] Launching Daemon at Fri Jun 12 18:43:11 IST 2026
[2026-06-12 18:43:11,478.478 INFO    ] ================================================
[2026-06-12 18:43:11,846.846 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 18:43:11
[2026-06-12 18:43:12,174.174 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 18:43:12,316.316 INFO    ] Initializing speech engine...
[2026-06-12 18:43:12,320.320 INFO    ] 2026-06-12 18:43:12
[2026-06-12 18:43:12,525.525 INFO    ] 2026-06-12 18:43:12
[2026-06-12 18:43:12,553.553 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 18:43:12,736.736 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 18:43:12,746.746 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 18:43:12,889.889 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 18:43:12,942.942 INFO    ] time= 12/06/2026 18:43:12
[2026-06-12 18:43:12,964.964 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 18:43:12,970.970 INFO    ] Checking for existing commands in stream...
[2026-06-12 18:43:13,037.037 INFO    ] No existing commands found in stream
[2026-06-12 18:43:18,046.046 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 18:43:18,048.048 INFO    ] Waiting 3.24 seconds before fallback handling...
[2026-06-12 18:43:21,689.689 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 18:43:21,691.691 INFO    ] Checking for system updates...
[2026-06-12 18:43:21,711.711 INFO    ] 200
[2026-06-12 18:43:21,713.713 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:43:21,745.745 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 18:43:21,746.746 INFO    ] No update needed
[2026-06-12 18:43:21,747.747 INFO    ] Checking for camera pi updates...
[2026-06-12 18:43:21,767.767 INFO    ] 200
[2026-06-12 18:43:21,768.768 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:43:21,792.792 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 18:43:21,835.835 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 18:43:21,837.837 INFO    ] No camera update needed
[2026-06-12 18:43:21,838.838 INFO    ] Script finished. Safe exiting...
[2026-06-12 18:43:21,839.839 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 18:43:21,842.842 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 18:43:21,845.845 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 18:43:23,884.884 INFO    ] ================================================
[2026-06-12 18:43:23,899.899 INFO    ] Launching Daemon at Fri Jun 12 18:43:23 IST 2026
[2026-06-12 18:43:23,909.909 INFO    ] ================================================
[2026-06-12 18:43:24,268.268 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 18:43:24
[2026-06-12 18:43:24,578.578 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 18:43:24,707.707 INFO    ] Initializing speech engine...
[2026-06-12 18:43:24,712.712 INFO    ] 2026-06-12 18:43:24
[2026-06-12 18:43:24,928.928 INFO    ] 2026-06-12 18:43:24
[2026-06-12 18:43:24,956.956 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 18:43:25,139.139 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 18:43:25,142.142 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 18:43:25,274.274 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 18:43:25,341.341 INFO    ] time= 12/06/2026 18:43:25
[2026-06-12 18:43:25,368.368 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 18:43:25,375.375 INFO    ] Checking for existing commands in stream...
[2026-06-12 18:43:25,441.441 INFO    ] No existing commands found in stream
[2026-06-12 18:43:30,451.451 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 18:43:30,454.454 INFO    ] Waiting 0.10 seconds before fallback handling...
[2026-06-12 18:43:30,938.938 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 18:43:30,940.940 INFO    ] Checking for system updates...
[2026-06-12 18:43:30,961.961 INFO    ] 200
[2026-06-12 18:43:30,962.962 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:43:30,993.993 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 18:43:30,994.994 INFO    ] No update needed
[2026-06-12 18:43:30,996.996 INFO    ] Checking for camera pi updates...
[2026-06-12 18:43:31,016.016 INFO    ] 200
[2026-06-12 18:43:31,018.018 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:43:31,042.042 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 18:43:31,101.101 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 18:43:31,103.103 INFO    ] No camera update needed
[2026-06-12 18:43:31,104.104 INFO    ] Script finished. Safe exiting...
[2026-06-12 18:43:31,105.105 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 18:43:31,108.108 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 18:43:31,111.111 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 18:43:33,142.142 INFO    ] ================================================
[2026-06-12 18:43:33,157.157 INFO    ] Launching Daemon at Fri Jun 12 18:43:33 IST 2026
[2026-06-12 18:43:33,168.168 INFO    ] ================================================
[2026-06-12 18:43:33,551.551 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 18:43:33
[2026-06-12 18:43:33,895.895 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 18:43:34,048.048 INFO    ] Initializing speech engine...
[2026-06-12 18:43:34,054.054 INFO    ] 2026-06-12 18:43:34
[2026-06-12 18:43:34,260.260 INFO    ] 2026-06-12 18:43:34
[2026-06-12 18:43:34,288.288 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 18:43:34,473.473 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 18:43:34,484.484 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 18:43:34,662.662 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 18:43:34,701.701 INFO    ] time= 12/06/2026 18:43:34
[2026-06-12 18:43:34,703.703 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 18:43:34,709.709 INFO    ] Checking for existing commands in stream...
[2026-06-12 18:43:34,775.775 INFO    ] No existing commands found in stream
[2026-06-12 18:43:39,785.785 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 18:43:39,788.788 INFO    ] Waiting 3.42 seconds before fallback handling...
[2026-06-12 18:43:43,582.582 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 18:43:43,584.584 INFO    ] Checking for system updates...
[2026-06-12 18:43:43,605.605 INFO    ] 200
[2026-06-12 18:43:43,606.606 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:43:43,637.637 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 18:43:43,638.638 INFO    ] No update needed
[2026-06-12 18:43:43,640.640 INFO    ] Checking for camera pi updates...
[2026-06-12 18:43:43,659.659 INFO    ] 200
[2026-06-12 18:43:43,661.661 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:43:43,685.685 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 18:43:43,725.725 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 18:43:43,726.726 INFO    ] No camera update needed
[2026-06-12 18:43:43,728.728 INFO    ] Script finished. Safe exiting...
[2026-06-12 18:43:43,729.729 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 18:43:43,733.733 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 18:43:43,735.735 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 18:43:45,775.775 INFO    ] ================================================
[2026-06-12 18:43:45,790.790 INFO    ] Launching Daemon at Fri Jun 12 18:43:45 IST 2026
[2026-06-12 18:43:45,801.801 INFO    ] ================================================
[2026-06-12 18:43:46,127.127 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 18:43:46
[2026-06-12 18:43:46,439.439 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 18:43:46,571.571 INFO    ] Initializing speech engine...
[2026-06-12 18:43:46,574.574 INFO    ] 2026-06-12 18:43:46
[2026-06-12 18:43:46,784.784 INFO    ] 2026-06-12 18:43:46
[2026-06-12 18:43:46,813.813 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 18:43:46,973.973 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 18:43:47,006.006 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 18:43:47,182.182 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 18:43:47,234.234 INFO    ] time= 12/06/2026 18:43:47
[2026-06-12 18:43:47,279.279 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 18:43:47,290.290 INFO    ] Checking for existing commands in stream...
[2026-06-12 18:43:47,371.371 INFO    ] No existing commands found in stream
[2026-06-12 18:43:52,380.380 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 18:43:52,383.383 INFO    ] Waiting 0.05 seconds before fallback handling...
[2026-06-12 18:43:52,806.806 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 18:43:52,808.808 INFO    ] Checking for system updates...
[2026-06-12 18:43:52,828.828 INFO    ] 200
[2026-06-12 18:43:52,830.830 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:43:52,862.862 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 18:43:52,863.863 INFO    ] No update needed
[2026-06-12 18:43:52,864.864 INFO    ] Checking for camera pi updates...
[2026-06-12 18:43:52,885.885 INFO    ] 200
[2026-06-12 18:43:52,886.886 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:43:52,911.911 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 18:43:52,954.954 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 18:43:52,956.956 INFO    ] No camera update needed
[2026-06-12 18:43:52,957.957 INFO    ] Script finished. Safe exiting...
[2026-06-12 18:43:52,958.958 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 18:43:52,961.961 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 18:43:52,964.964 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 18:43:55,003.003 INFO    ] ================================================
[2026-06-12 18:43:55,018.018 INFO    ] Launching Daemon at Fri Jun 12 18:43:55 IST 2026
[2026-06-12 18:43:55,029.029 INFO    ] ================================================
[2026-06-12 18:43:55,385.385 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 18:43:55
[2026-06-12 18:43:55,728.728 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 18:43:55,879.879 INFO    ] Initializing speech engine...
[2026-06-12 18:43:55,884.884 INFO    ] 2026-06-12 18:43:55
[2026-06-12 18:43:56,091.091 INFO    ] 2026-06-12 18:43:56
[2026-06-12 18:43:56,120.120 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 18:43:56,303.303 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 18:43:56,312.312 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 18:43:56,467.467 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 18:43:56,511.511 INFO    ] time= 12/06/2026 18:43:56
[2026-06-12 18:43:56,536.536 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 18:43:56,538.538 INFO    ] Checking for existing commands in stream...
[2026-06-12 18:43:56,605.605 INFO    ] No existing commands found in stream
[2026-06-12 18:44:01,612.612 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 18:44:01,615.615 INFO    ] Waiting 1.54 seconds before fallback handling...
[2026-06-12 18:44:03,621.621 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 18:44:03,622.622 INFO    ] Checking for system updates...
[2026-06-12 18:44:03,643.643 INFO    ] 200
[2026-06-12 18:44:03,644.644 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:44:03,678.678 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 18:44:03,680.680 INFO    ] No update needed
[2026-06-12 18:44:03,681.681 INFO    ] Checking for camera pi updates...
[2026-06-12 18:44:03,701.701 INFO    ] 200
[2026-06-12 18:44:03,703.703 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:44:03,726.726 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 18:44:03,767.767 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 18:44:03,768.768 INFO    ] No camera update needed
[2026-06-12 18:44:03,770.770 INFO    ] Script finished. Safe exiting...
[2026-06-12 18:44:03,771.771 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 18:44:03,774.774 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 18:44:03,777.777 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 18:44:05,814.814 INFO    ] ================================================
[2026-06-12 18:44:05,829.829 INFO    ] Launching Daemon at Fri Jun 12 18:44:05 IST 2026
[2026-06-12 18:44:05,841.841 INFO    ] ================================================
[2026-06-12 18:44:06,176.176 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 18:44:06
[2026-06-12 18:44:06,492.492 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 18:44:06,636.636 INFO    ] Initializing speech engine...
[2026-06-12 18:44:06,642.642 INFO    ] 2026-06-12 18:44:06
[2026-06-12 18:44:06,844.844 INFO    ] 2026-06-12 18:44:06
[2026-06-12 18:44:06,873.873 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 18:44:07,055.055 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 18:44:07,059.059 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 18:44:07,186.186 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 18:44:07,241.241 INFO    ] time= 12/06/2026 18:44:07
[2026-06-12 18:44:07,280.280 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 18:44:07,285.285 INFO    ] Checking for existing commands in stream...
[2026-06-12 18:44:07,356.356 INFO    ] No existing commands found in stream
[2026-06-12 18:44:12,370.370 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 18:44:12,373.373 INFO    ] Waiting 3.07 seconds before fallback handling...
[2026-06-12 18:44:15,853.853 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 18:44:15,855.855 INFO    ] Checking for system updates...
[2026-06-12 18:44:15,876.876 INFO    ] 200
[2026-06-12 18:44:15,877.877 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:44:15,909.909 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 18:44:15,911.911 INFO    ] No update needed
[2026-06-12 18:44:15,912.912 INFO    ] Checking for camera pi updates...
[2026-06-12 18:44:15,931.931 INFO    ] 200
[2026-06-12 18:44:15,933.933 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:44:15,957.957 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 18:44:16,000.000 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 18:44:16,002.002 INFO    ] No camera update needed
[2026-06-12 18:44:16,003.003 INFO    ] Script finished. Safe exiting...
[2026-06-12 18:44:16,004.004 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 18:44:16,007.007 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 18:44:16,010.010 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 18:44:18,047.047 INFO    ] ================================================
[2026-06-12 18:44:18,064.064 INFO    ] Launching Daemon at Fri Jun 12 18:44:18 IST 2026
[2026-06-12 18:44:18,075.075 INFO    ] ================================================
[2026-06-12 18:44:18,440.440 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 18:44:18
[2026-06-12 18:44:18,754.754 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 18:44:18,895.895 INFO    ] Initializing speech engine...
[2026-06-12 18:44:18,903.903 INFO    ] 2026-06-12 18:44:18
[2026-06-12 18:44:19,121.121 INFO    ] 2026-06-12 18:44:19
[2026-06-12 18:44:19,152.152 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 18:44:19,346.346 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 18:44:19,355.355 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 18:44:19,510.510 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 18:44:19,565.565 INFO    ] time= 12/06/2026 18:44:19
[2026-06-12 18:44:19,581.581 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 18:44:19,588.588 INFO    ] Checking for existing commands in stream...
[2026-06-12 18:44:19,655.655 INFO    ] No existing commands found in stream
[2026-06-12 18:44:24,669.669 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 18:44:24,672.672 INFO    ] Waiting 2.27 seconds before fallback handling...
[2026-06-12 18:44:27,365.365 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 18:44:27,367.367 INFO    ] Checking for system updates...
[2026-06-12 18:44:27,389.389 INFO    ] 200
[2026-06-12 18:44:27,391.391 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:44:27,423.423 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 18:44:27,425.425 INFO    ] No update needed
[2026-06-12 18:44:27,426.426 INFO    ] Checking for camera pi updates...
[2026-06-12 18:44:27,449.449 INFO    ] 200
[2026-06-12 18:44:27,451.451 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:44:27,475.475 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 18:44:27,521.521 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 18:44:27,522.522 INFO    ] No camera update needed
[2026-06-12 18:44:27,524.524 INFO    ] Script finished. Safe exiting...
[2026-06-12 18:44:27,525.525 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 18:44:27,528.528 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 18:44:27,531.531 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 18:44:29,570.570 INFO    ] ================================================
[2026-06-12 18:44:29,586.586 INFO    ] Launching Daemon at Fri Jun 12 18:44:29 IST 2026
[2026-06-12 18:44:29,598.598 INFO    ] ================================================
[2026-06-12 18:44:29,952.952 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 18:44:29
[2026-06-12 18:44:30,274.274 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 18:44:30,404.404 INFO    ] Initializing speech engine...
[2026-06-12 18:44:30,409.409 INFO    ] 2026-06-12 18:44:30
[2026-06-12 18:44:30,628.628 INFO    ] 2026-06-12 18:44:30
[2026-06-12 18:44:30,656.656 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 18:44:30,840.840 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 18:44:30,849.849 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 18:44:30,998.998 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 18:44:31,058.058 INFO    ] time= 12/06/2026 18:44:31
[2026-06-12 18:44:31,068.068 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 18:44:31,075.075 INFO    ] Checking for existing commands in stream...
[2026-06-12 18:44:31,141.141 INFO    ] No existing commands found in stream
[2026-06-12 18:44:36,155.155 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 18:44:36,158.158 INFO    ] Waiting 1.80 seconds before fallback handling...
[2026-06-12 18:44:38,360.360 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 18:44:38,362.362 INFO    ] Checking for system updates...
[2026-06-12 18:44:38,382.382 INFO    ] 200
[2026-06-12 18:44:38,383.383 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:44:38,413.413 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 18:44:38,414.414 INFO    ] No update needed
[2026-06-12 18:44:38,416.416 INFO    ] Checking for camera pi updates...
[2026-06-12 18:44:38,436.436 INFO    ] 200
[2026-06-12 18:44:38,438.438 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:44:38,462.462 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 18:44:38,508.508 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 18:44:38,509.509 INFO    ] No camera update needed
[2026-06-12 18:44:38,510.510 INFO    ] Script finished. Safe exiting...
[2026-06-12 18:44:38,512.512 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 18:44:38,515.515 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 18:44:38,517.517 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 18:44:40,557.557 INFO    ] ================================================
[2026-06-12 18:44:40,574.574 INFO    ] Launching Daemon at Fri Jun 12 18:44:40 IST 2026
[2026-06-12 18:44:40,585.585 INFO    ] ================================================
[2026-06-12 18:44:40,926.926 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 18:44:40
[2026-06-12 18:44:41,244.244 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 18:44:41,389.389 INFO    ] Initializing speech engine...
[2026-06-12 18:44:41,394.394 INFO    ] 2026-06-12 18:44:41
[2026-06-12 18:44:41,597.597 INFO    ] 2026-06-12 18:44:41
[2026-06-12 18:44:41,625.625 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 18:44:41,810.810 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 18:44:41,819.819 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 18:44:41,948.948 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 18:44:42,012.012 INFO    ] time= 12/06/2026 18:44:41
[2026-06-12 18:44:42,039.039 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 18:44:42,045.045 INFO    ] Checking for existing commands in stream...
[2026-06-12 18:44:42,136.136 INFO    ] No existing commands found in stream
[2026-06-12 18:44:47,145.145 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 18:44:47,147.147 INFO    ] Waiting 1.16 seconds before fallback handling...
[2026-06-12 18:44:48,720.720 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 18:44:48,722.722 INFO    ] Checking for system updates...
[2026-06-12 18:44:48,742.742 INFO    ] 200
[2026-06-12 18:44:48,744.744 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:44:48,776.776 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 18:44:48,777.777 INFO    ] No update needed
[2026-06-12 18:44:48,779.779 INFO    ] Checking for camera pi updates...
[2026-06-12 18:44:48,797.797 INFO    ] 200
[2026-06-12 18:44:48,799.799 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:44:48,823.823 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 18:44:48,875.875 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 18:44:48,877.877 INFO    ] No camera update needed
[2026-06-12 18:44:48,878.878 INFO    ] Script finished. Safe exiting...
[2026-06-12 18:44:48,879.879 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 18:44:48,882.882 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 18:44:48,885.885 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 18:44:50,922.922 INFO    ] ================================================
[2026-06-12 18:44:50,938.938 INFO    ] Launching Daemon at Fri Jun 12 18:44:50 IST 2026
[2026-06-12 18:44:50,949.949 INFO    ] ================================================
[2026-06-12 18:44:51,274.274 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 18:44:51
[2026-06-12 18:44:51,586.586 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 18:44:51,727.727 INFO    ] Initializing speech engine...
[2026-06-12 18:44:51,733.733 INFO    ] 2026-06-12 18:44:51
[2026-06-12 18:44:51,935.935 INFO    ] 2026-06-12 18:44:51
[2026-06-12 18:44:51,964.964 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 18:44:52,147.147 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 18:44:52,156.156 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 18:44:52,285.285 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 18:44:52,334.334 INFO    ] time= 12/06/2026 18:44:52
[2026-06-12 18:44:52,368.368 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 18:44:52,378.378 INFO    ] Checking for existing commands in stream...
[2026-06-12 18:44:52,473.473 INFO    ] No existing commands found in stream
[2026-06-12 18:44:57,482.482 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 18:44:57,485.485 INFO    ] Waiting 3.31 seconds before fallback handling...
[2026-06-12 18:45:01,169.169 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 18:45:01,171.171 INFO    ] Checking for system updates...
[2026-06-12 18:45:01,192.192 INFO    ] 200
[2026-06-12 18:45:01,193.193 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:45:01,223.223 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 18:45:01,224.224 INFO    ] No update needed
[2026-06-12 18:45:01,225.225 INFO    ] Checking for camera pi updates...
[2026-06-12 18:45:01,246.246 INFO    ] 200
[2026-06-12 18:45:01,247.247 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:45:01,270.270 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 18:45:01,313.313 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 18:45:01,314.314 INFO    ] No camera update needed
[2026-06-12 18:45:01,316.316 INFO    ] Script finished. Safe exiting...
[2026-06-12 18:45:01,317.317 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 18:45:01,320.320 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 18:45:01,323.323 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 18:45:03,358.358 INFO    ] ================================================
[2026-06-12 18:45:03,374.374 INFO    ] Launching Daemon at Fri Jun 12 18:45:03 IST 2026
[2026-06-12 18:45:03,386.386 INFO    ] ================================================
[2026-06-12 18:45:03,729.729 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 18:45:03
[2026-06-12 18:45:04,041.041 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 18:45:04,172.172 INFO    ] Initializing speech engine...
[2026-06-12 18:45:04,179.179 INFO    ] 2026-06-12 18:45:04
[2026-06-12 18:45:04,394.394 INFO    ] 2026-06-12 18:45:04
[2026-06-12 18:45:04,423.423 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 18:45:04,610.610 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 18:45:04,613.613 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 18:45:04,751.751 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 18:45:04,818.818 INFO    ] time= 12/06/2026 18:45:04
[2026-06-12 18:45:04,842.842 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 18:45:04,844.844 INFO    ] Checking for existing commands in stream...
[2026-06-12 18:45:04,916.916 INFO    ] No existing commands found in stream
[2026-06-12 18:45:09,925.925 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 18:45:09,928.928 INFO    ] Waiting 2.24 seconds before fallback handling...
[2026-06-12 18:45:12,526.526 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 18:45:12,527.527 INFO    ] Checking for system updates...
[2026-06-12 18:45:12,547.547 INFO    ] 200
[2026-06-12 18:45:12,549.549 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:45:12,579.579 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 18:45:12,581.581 INFO    ] No update needed
[2026-06-12 18:45:12,582.582 INFO    ] Checking for camera pi updates...
[2026-06-12 18:45:12,602.602 INFO    ] 200
[2026-06-12 18:45:12,603.603 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:45:12,628.628 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 18:45:12,776.776 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 18:45:12,778.778 INFO    ] No camera update needed
[2026-06-12 18:45:12,779.779 INFO    ] Script finished. Safe exiting...
[2026-06-12 18:45:12,780.780 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 18:45:12,783.783 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 18:45:12,786.786 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 18:45:14,824.824 INFO    ] ================================================
[2026-06-12 18:45:14,839.839 INFO    ] Launching Daemon at Fri Jun 12 18:45:14 IST 2026
[2026-06-12 18:45:14,850.850 INFO    ] ================================================
[2026-06-12 18:45:15,233.233 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 18:45:15
[2026-06-12 18:45:15,574.574 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 18:45:15,727.727 INFO    ] Initializing speech engine...
[2026-06-12 18:45:15,733.733 INFO    ] 2026-06-12 18:45:15
[2026-06-12 18:45:15,943.943 INFO    ] 2026-06-12 18:45:15
[2026-06-12 18:45:15,974.974 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 18:45:16,162.162 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 18:45:16,172.172 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 18:45:16,316.316 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 18:45:16,364.364 INFO    ] time= 12/06/2026 18:45:16
[2026-06-12 18:45:16,366.366 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 18:45:16,367.367 INFO    ] Checking for existing commands in stream...
[2026-06-12 18:45:16,436.436 INFO    ] No existing commands found in stream
[2026-06-12 18:45:21,445.445 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 18:45:21,448.448 INFO    ] Waiting 0.93 seconds before fallback handling...
[2026-06-12 18:45:22,807.807 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 18:45:22,809.809 INFO    ] Checking for system updates...
[2026-06-12 18:45:22,830.830 INFO    ] 200
[2026-06-12 18:45:22,832.832 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:45:22,864.864 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 18:45:22,866.866 INFO    ] No update needed
[2026-06-12 18:45:22,867.867 INFO    ] Checking for camera pi updates...
[2026-06-12 18:45:22,887.887 INFO    ] 200
[2026-06-12 18:45:22,889.889 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:45:22,914.914 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 18:45:22,971.971 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 18:45:22,972.972 INFO    ] No camera update needed
[2026-06-12 18:45:22,974.974 INFO    ] Script finished. Safe exiting...
[2026-06-12 18:45:22,975.975 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 18:45:22,978.978 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 18:45:22,981.981 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 18:45:25,019.019 INFO    ] ================================================
[2026-06-12 18:45:25,034.034 INFO    ] Launching Daemon at Fri Jun 12 18:45:25 IST 2026
[2026-06-12 18:45:25,046.046 INFO    ] ================================================
[2026-06-12 18:45:25,405.405 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 18:45:25
[2026-06-12 18:45:25,724.724 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 18:45:25,867.867 INFO    ] Initializing speech engine...
[2026-06-12 18:45:25,873.873 INFO    ] 2026-06-12 18:45:25
[2026-06-12 18:45:26,076.076 INFO    ] 2026-06-12 18:45:26
[2026-06-12 18:45:26,105.105 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 18:45:26,288.288 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 18:45:26,296.296 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 18:45:26,478.478 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 18:45:26,515.515 INFO    ] time= 12/06/2026 18:45:26
[2026-06-12 18:45:26,517.517 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 18:45:26,523.523 INFO    ] Checking for existing commands in stream...
[2026-06-12 18:45:26,590.590 INFO    ] No existing commands found in stream
[2026-06-12 18:45:31,604.604 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 18:45:31,607.607 INFO    ] Waiting 3.33 seconds before fallback handling...
[2026-06-12 18:45:35,330.330 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 18:45:35,332.332 INFO    ] Checking for system updates...
[2026-06-12 18:45:35,354.354 INFO    ] 200
[2026-06-12 18:45:35,355.355 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:45:35,387.387 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 18:45:35,388.388 INFO    ] No update needed
[2026-06-12 18:45:35,390.390 INFO    ] Checking for camera pi updates...
[2026-06-12 18:45:35,410.410 INFO    ] 200
[2026-06-12 18:45:35,412.412 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:45:35,436.436 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 18:45:35,480.480 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 18:45:35,481.481 INFO    ] No camera update needed
[2026-06-12 18:45:35,483.483 INFO    ] Script finished. Safe exiting...
[2026-06-12 18:45:35,484.484 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 18:45:35,487.487 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 18:45:35,490.490 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 18:45:37,528.528 INFO    ] ================================================
[2026-06-12 18:45:37,543.543 INFO    ] Launching Daemon at Fri Jun 12 18:45:37 IST 2026
[2026-06-12 18:45:37,554.554 INFO    ] ================================================
[2026-06-12 18:45:37,893.893 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 18:45:37
[2026-06-12 18:45:38,245.245 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 18:45:38,399.399 INFO    ] Initializing speech engine...
[2026-06-12 18:45:38,412.412 INFO    ] 2026-06-12 18:45:38
[2026-06-12 18:45:38,645.645 INFO    ] 2026-06-12 18:45:38
[2026-06-12 18:45:38,677.677 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 18:45:38,871.871 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 18:45:38,880.880 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 18:45:39,011.011 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 18:45:39,078.078 INFO    ] time= 12/06/2026 18:45:39
[2026-06-12 18:45:39,108.108 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 18:45:39,117.117 INFO    ] Checking for existing commands in stream...
[2026-06-12 18:45:39,239.239 INFO    ] No existing commands found in stream
[2026-06-12 18:45:44,249.249 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 18:45:44,252.252 INFO    ] Waiting 0.23 seconds before fallback handling...
[2026-06-12 18:45:44,836.836 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 18:45:44,838.838 INFO    ] Checking for system updates...
[2026-06-12 18:45:44,859.859 INFO    ] 200
[2026-06-12 18:45:44,860.860 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:45:44,893.893 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 18:45:44,894.894 INFO    ] No update needed
[2026-06-12 18:45:44,895.895 INFO    ] Checking for camera pi updates...
[2026-06-12 18:45:44,916.916 INFO    ] 200
[2026-06-12 18:45:44,917.917 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:45:44,942.942 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 18:45:44,986.986 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 18:45:44,988.988 INFO    ] No camera update needed
[2026-06-12 18:45:44,989.989 INFO    ] Script finished. Safe exiting...
[2026-06-12 18:45:44,991.991 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 18:45:44,994.994 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 18:45:44,996.996 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 18:45:47,035.035 INFO    ] ================================================
[2026-06-12 18:45:47,051.051 INFO    ] Launching Daemon at Fri Jun 12 18:45:47 IST 2026
[2026-06-12 18:45:47,062.062 INFO    ] ================================================
[2026-06-12 18:45:47,457.457 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 18:45:47
[2026-06-12 18:45:47,798.798 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 18:45:47,950.950 INFO    ] Initializing speech engine...
[2026-06-12 18:45:47,956.956 INFO    ] 2026-06-12 18:45:47
[2026-06-12 18:45:48,164.164 INFO    ] 2026-06-12 18:45:48
[2026-06-12 18:45:48,194.194 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 18:45:48,381.381 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 18:45:48,391.391 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 18:45:48,518.518 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 18:45:48,585.585 INFO    ] time= 12/06/2026 18:45:48
[2026-06-12 18:45:48,613.613 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 18:45:48,620.620 INFO    ] Checking for existing commands in stream...
[2026-06-12 18:45:48,711.711 INFO    ] No existing commands found in stream
[2026-06-12 18:45:53,721.721 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 18:45:53,724.724 INFO    ] Waiting 2.76 seconds before fallback handling...
[2026-06-12 18:45:56,877.877 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 18:45:56,878.878 INFO    ] Checking for system updates...
[2026-06-12 18:45:56,900.900 INFO    ] 200
[2026-06-12 18:45:56,902.902 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:45:56,935.935 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 18:45:56,936.936 INFO    ] No update needed
[2026-06-12 18:45:56,938.938 INFO    ] Checking for camera pi updates...
[2026-06-12 18:45:56,961.961 INFO    ] 200
[2026-06-12 18:45:56,962.962 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:45:56,988.988 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 18:45:57,038.038 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 18:45:57,039.039 INFO    ] No camera update needed
[2026-06-12 18:45:57,041.041 INFO    ] Script finished. Safe exiting...
[2026-06-12 18:45:57,042.042 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 18:45:57,045.045 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 18:45:57,048.048 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 18:45:59,087.087 INFO    ] ================================================
[2026-06-12 18:45:59,103.103 INFO    ] Launching Daemon at Fri Jun 12 18:45:59 IST 2026
[2026-06-12 18:45:59,114.114 INFO    ] ================================================
[2026-06-12 18:45:59,445.445 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 18:45:59
[2026-06-12 18:45:59,763.763 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 18:45:59,893.893 INFO    ] Initializing speech engine...
[2026-06-12 18:45:59,897.897 INFO    ] 2026-06-12 18:45:59
[2026-06-12 18:46:00,113.113 INFO    ] 2026-06-12 18:46:00
[2026-06-12 18:46:00,142.142 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 18:46:00,326.326 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 18:46:00,335.335 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 18:46:00,470.470 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 18:46:00,532.532 INFO    ] time= 12/06/2026 18:46:00
[2026-06-12 18:46:00,556.556 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 18:46:00,563.563 INFO    ] Checking for existing commands in stream...
[2026-06-12 18:46:00,628.628 INFO    ] No existing commands found in stream
[2026-06-12 18:46:05,638.638 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 18:46:05,641.641 INFO    ] Waiting 2.31 seconds before fallback handling...
[2026-06-12 18:46:08,341.341 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 18:46:08,342.342 INFO    ] Checking for system updates...
[2026-06-12 18:46:08,363.363 INFO    ] 200
[2026-06-12 18:46:08,365.365 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:46:08,394.394 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 18:46:08,396.396 INFO    ] No update needed
[2026-06-12 18:46:08,397.397 INFO    ] Checking for camera pi updates...
[2026-06-12 18:46:08,416.416 INFO    ] 200
[2026-06-12 18:46:08,418.418 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:46:08,443.443 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 18:46:08,489.489 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 18:46:08,490.490 INFO    ] No camera update needed
[2026-06-12 18:46:08,492.492 INFO    ] Script finished. Safe exiting...
[2026-06-12 18:46:08,493.493 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 18:46:08,496.496 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 18:46:08,499.499 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 18:46:10,538.538 INFO    ] ================================================
[2026-06-12 18:46:10,553.553 INFO    ] Launching Daemon at Fri Jun 12 18:46:10 IST 2026
[2026-06-12 18:46:10,564.564 INFO    ] ================================================
[2026-06-12 18:46:10,892.892 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 18:46:10
[2026-06-12 18:46:11,203.203 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 18:46:11,334.334 INFO    ] Initializing speech engine...
[2026-06-12 18:46:11,338.338 INFO    ] 2026-06-12 18:46:11
[2026-06-12 18:46:11,566.566 INFO    ] 2026-06-12 18:46:11
[2026-06-12 18:46:11,596.596 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 18:46:11,794.794 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 18:46:11,797.797 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 18:46:11,936.936 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 18:46:11,982.982 INFO    ] time= 12/06/2026 18:46:11
[2026-06-12 18:46:12,021.021 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 18:46:12,043.043 INFO    ] Checking for existing commands in stream...
[2026-06-12 18:46:12,120.120 INFO    ] No existing commands found in stream
[2026-06-12 18:46:17,129.129 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 18:46:17,132.132 INFO    ] Waiting 1.95 seconds before fallback handling...
[2026-06-12 18:46:19,427.427 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 18:46:19,428.428 INFO    ] Checking for system updates...
[2026-06-12 18:46:19,449.449 INFO    ] 200
[2026-06-12 18:46:19,450.450 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:46:19,483.483 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 18:46:19,484.484 INFO    ] No update needed
[2026-06-12 18:46:19,485.485 INFO    ] Checking for camera pi updates...
[2026-06-12 18:46:19,507.507 INFO    ] 200
[2026-06-12 18:46:19,508.508 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:46:19,535.535 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 18:46:19,576.576 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 18:46:19,577.577 INFO    ] No camera update needed
[2026-06-12 18:46:19,579.579 INFO    ] Script finished. Safe exiting...
[2026-06-12 18:46:19,580.580 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 18:46:19,584.584 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 18:46:19,587.587 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 18:46:21,625.625 INFO    ] ================================================
[2026-06-12 18:46:21,641.641 INFO    ] Launching Daemon at Fri Jun 12 18:46:21 IST 2026
[2026-06-12 18:46:21,653.653 INFO    ] ================================================
[2026-06-12 18:46:22,012.012 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 18:46:22
[2026-06-12 18:46:22,328.328 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 18:46:22,470.470 INFO    ] Initializing speech engine...
[2026-06-12 18:46:22,476.476 INFO    ] 2026-06-12 18:46:22
[2026-06-12 18:46:22,679.679 INFO    ] 2026-06-12 18:46:22
[2026-06-12 18:46:22,709.709 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 18:46:22,892.892 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 18:46:22,902.902 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 18:46:23,094.094 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 18:46:23,119.119 INFO    ] time= 12/06/2026 18:46:23
[2026-06-12 18:46:23,125.125 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 18:46:23,126.126 INFO    ] Checking for existing commands in stream...
[2026-06-12 18:46:23,192.192 INFO    ] No existing commands found in stream
[2026-06-12 18:46:28,202.202 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 18:46:28,205.205 INFO    ] Waiting 1.09 seconds before fallback handling...
[2026-06-12 18:46:29,667.667 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 18:46:29,669.669 INFO    ] Checking for system updates...
[2026-06-12 18:46:29,691.691 INFO    ] 200
[2026-06-12 18:46:29,692.692 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:46:29,728.728 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 18:46:29,729.729 INFO    ] No update needed
[2026-06-12 18:46:29,731.731 INFO    ] Checking for camera pi updates...
[2026-06-12 18:46:29,752.752 INFO    ] 200
[2026-06-12 18:46:29,754.754 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:46:29,780.780 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 18:46:29,833.833 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 18:46:29,835.835 INFO    ] No camera update needed
[2026-06-12 18:46:29,836.836 INFO    ] Script finished. Safe exiting...
[2026-06-12 18:46:29,837.837 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 18:46:29,841.841 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 18:46:29,844.844 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 18:46:31,868.868 INFO    ] ================================================
[2026-06-12 18:46:31,877.877 INFO    ] Launching Daemon at Fri Jun 12 18:46:31 IST 2026
[2026-06-12 18:46:31,885.885 INFO    ] ================================================
[2026-06-12 18:46:32,192.192 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 18:46:32
[2026-06-12 18:46:32,505.505 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 18:46:32,638.638 INFO    ] Initializing speech engine...
[2026-06-12 18:46:32,642.642 INFO    ] 2026-06-12 18:46:32
[2026-06-12 18:46:32,872.872 INFO    ] 2026-06-12 18:46:32
[2026-06-12 18:46:32,900.900 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 18:46:33,087.087 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 18:46:33,096.096 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 18:46:33,228.228 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 18:46:33,288.288 INFO    ] time= 12/06/2026 18:46:33
[2026-06-12 18:46:33,343.343 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 18:46:33,366.366 INFO    ] Checking for existing commands in stream...
[2026-06-12 18:46:33,461.461 INFO    ] No existing commands found in stream
[2026-06-12 18:46:38,470.470 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 18:46:38,473.473 INFO    ] Waiting 2.84 seconds before fallback handling...
[2026-06-12 18:46:41,717.717 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 18:46:41,719.719 INFO    ] Checking for system updates...
[2026-06-12 18:46:41,740.740 INFO    ] 200
[2026-06-12 18:46:41,742.742 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:46:41,772.772 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 18:46:41,773.773 INFO    ] No update needed
[2026-06-12 18:46:41,775.775 INFO    ] Checking for camera pi updates...
[2026-06-12 18:46:41,795.795 INFO    ] 200
[2026-06-12 18:46:41,796.796 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:46:41,822.822 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 18:46:41,864.864 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 18:46:41,866.866 INFO    ] No camera update needed
[2026-06-12 18:46:41,867.867 INFO    ] Script finished. Safe exiting...
[2026-06-12 18:46:41,869.869 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 18:46:41,872.872 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 18:46:41,875.875 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 18:46:43,913.913 INFO    ] ================================================
[2026-06-12 18:46:43,929.929 INFO    ] Launching Daemon at Fri Jun 12 18:46:43 IST 2026
[2026-06-12 18:46:43,940.940 INFO    ] ================================================
[2026-06-12 18:46:44,304.304 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 18:46:44
[2026-06-12 18:46:44,623.623 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 18:46:44,754.754 INFO    ] Initializing speech engine...
[2026-06-12 18:46:44,758.758 INFO    ] 2026-06-12 18:46:44
[2026-06-12 18:46:44,977.977 INFO    ] 2026-06-12 18:46:44
[2026-06-12 18:46:45,007.007 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 18:46:45,190.190 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 18:46:45,200.200 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 18:46:45,322.322 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 18:46:45,378.378 INFO    ] time= 12/06/2026 18:46:45
[2026-06-12 18:46:45,418.418 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 18:46:45,423.423 INFO    ] Checking for existing commands in stream...
[2026-06-12 18:46:45,495.495 INFO    ] No existing commands found in stream
[2026-06-12 18:46:50,509.509 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 18:46:50,512.512 INFO    ] Waiting 1.38 seconds before fallback handling...
[2026-06-12 18:46:52,923.923 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 18:46:52,926.926 INFO    ] Checking for system updates...
[2026-06-12 18:46:52,961.961 INFO    ] 200
[2026-06-12 18:46:52,963.963 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:46:53,021.021 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 18:46:53,023.023 INFO    ] No update needed
[2026-06-12 18:46:53,026.026 INFO    ] Checking for camera pi updates...
[2026-06-12 18:46:53,062.062 INFO    ] 200
[2026-06-12 18:46:53,065.065 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:46:53,105.105 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 18:46:53,151.151 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 18:46:53,153.153 INFO    ] No camera update needed
[2026-06-12 18:46:53,156.156 INFO    ] Script finished. Safe exiting...
[2026-06-12 18:46:53,158.158 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 18:46:53,164.164 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 18:46:53,169.169 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 18:46:55,209.209 INFO    ] ================================================
[2026-06-12 18:46:55,224.224 INFO    ] Launching Daemon at Fri Jun 12 18:46:55 IST 2026
[2026-06-12 18:46:55,236.236 INFO    ] ================================================
[2026-06-12 18:46:55,594.594 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 18:46:55
[2026-06-12 18:46:55,906.906 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 18:46:56,035.035 INFO    ] Initializing speech engine...
[2026-06-12 18:46:56,040.040 INFO    ] 2026-06-12 18:46:56
[2026-06-12 18:46:56,256.256 INFO    ] 2026-06-12 18:46:56
[2026-06-12 18:46:56,285.285 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 18:46:56,467.467 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 18:46:56,476.476 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 18:46:56,625.625 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 18:46:56,673.673 INFO    ] time= 12/06/2026 18:46:56
[2026-06-12 18:46:56,695.695 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 18:46:56,701.701 INFO    ] Checking for existing commands in stream...
[2026-06-12 18:46:56,768.768 INFO    ] No existing commands found in stream
[2026-06-12 18:47:01,776.776 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 18:47:01,778.778 INFO    ] Waiting 1.03 seconds before fallback handling...
[2026-06-12 18:47:03,315.315 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 18:47:03,316.316 INFO    ] Checking for system updates...
[2026-06-12 18:47:03,337.337 INFO    ] 200
[2026-06-12 18:47:03,338.338 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:47:03,370.370 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 18:47:03,371.371 INFO    ] No update needed
[2026-06-12 18:47:03,373.373 INFO    ] Checking for camera pi updates...
[2026-06-12 18:47:03,392.392 INFO    ] 200
[2026-06-12 18:47:03,394.394 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:47:03,418.418 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 18:47:03,446.446 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 18:47:03,447.447 INFO    ] No camera update needed
[2026-06-12 18:47:03,448.448 INFO    ] Script finished. Safe exiting...
[2026-06-12 18:47:03,450.450 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 18:47:03,453.453 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 18:47:03,455.455 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 18:47:05,500.500 INFO    ] ================================================
[2026-06-12 18:47:05,518.518 INFO    ] Launching Daemon at Fri Jun 12 18:47:05 IST 2026
[2026-06-12 18:47:05,534.534 INFO    ] ================================================
[2026-06-12 18:47:05,887.887 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 18:47:05
[2026-06-12 18:47:06,204.204 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 18:47:06,339.339 INFO    ] Initializing speech engine...
[2026-06-12 18:47:06,343.343 INFO    ] 2026-06-12 18:47:06
[2026-06-12 18:47:06,570.570 INFO    ] 2026-06-12 18:47:06
[2026-06-12 18:47:06,595.595 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 18:47:06,797.797 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 18:47:06,801.801 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 18:47:06,946.946 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 18:47:06,995.995 INFO    ] time= 12/06/2026 18:47:06
[2026-06-12 18:47:06,997.997 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 18:47:06,999.999 INFO    ] Checking for existing commands in stream...
[2026-06-12 18:47:07,112.112 INFO    ] No existing commands found in stream
[2026-06-12 18:47:12,122.122 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 18:47:12,125.125 INFO    ] Waiting 3.14 seconds before fallback handling...
[2026-06-12 18:47:15,637.637 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 18:47:15,638.638 INFO    ] Checking for system updates...
[2026-06-12 18:47:15,658.658 INFO    ] 200
[2026-06-12 18:47:15,660.660 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:47:15,692.692 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 18:47:15,693.693 INFO    ] No update needed
[2026-06-12 18:47:15,694.694 INFO    ] Checking for camera pi updates...
[2026-06-12 18:47:15,714.714 INFO    ] 200
[2026-06-12 18:47:15,715.715 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:47:15,738.738 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 18:47:15,885.885 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 18:47:15,886.886 INFO    ] No camera update needed
[2026-06-12 18:47:15,887.887 INFO    ] Script finished. Safe exiting...
[2026-06-12 18:47:15,888.888 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 18:47:15,892.892 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 18:47:15,894.894 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 18:47:17,932.932 INFO    ] ================================================
[2026-06-12 18:47:17,948.948 INFO    ] Launching Daemon at Fri Jun 12 18:47:17 IST 2026
[2026-06-12 18:47:17,959.959 INFO    ] ================================================
[2026-06-12 18:47:18,325.325 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 18:47:18
[2026-06-12 18:47:18,657.657 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 18:47:18,800.800 INFO    ] Initializing speech engine...
[2026-06-12 18:47:18,805.805 INFO    ] 2026-06-12 18:47:18
[2026-06-12 18:47:19,011.011 INFO    ] 2026-06-12 18:47:18
[2026-06-12 18:47:19,041.041 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 18:47:19,229.229 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 18:47:19,237.237 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 18:47:19,367.367 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 18:47:19,438.438 INFO    ] time= 12/06/2026 18:47:19
[2026-06-12 18:47:19,463.463 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 18:47:19,470.470 INFO    ] Checking for existing commands in stream...
[2026-06-12 18:47:19,538.538 INFO    ] No existing commands found in stream
[2026-06-12 18:47:24,552.552 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 18:47:24,555.555 INFO    ] Waiting 1.82 seconds before fallback handling...
[2026-06-12 18:47:26,788.788 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 18:47:26,790.790 INFO    ] Checking for system updates...
[2026-06-12 18:47:26,811.811 INFO    ] 200
[2026-06-12 18:47:26,813.813 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:47:26,845.845 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 18:47:26,846.846 INFO    ] No update needed
[2026-06-12 18:47:26,848.848 INFO    ] Checking for camera pi updates...
[2026-06-12 18:47:26,869.869 INFO    ] 200
[2026-06-12 18:47:26,871.871 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:47:26,896.896 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 18:47:26,931.931 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 18:47:26,932.932 INFO    ] No camera update needed
[2026-06-12 18:47:26,933.933 INFO    ] Script finished. Safe exiting...
[2026-06-12 18:47:26,935.935 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 18:47:26,938.938 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 18:47:26,940.940 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 18:47:28,978.978 INFO    ] ================================================
[2026-06-12 18:47:28,993.993 INFO    ] Launching Daemon at Fri Jun 12 18:47:28 IST 2026
[2026-06-12 18:47:29,004.004 INFO    ] ================================================
[2026-06-12 18:47:29,340.340 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 18:47:29
[2026-06-12 18:47:29,651.651 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 18:47:29,781.781 INFO    ] Initializing speech engine...
[2026-06-12 18:47:29,785.785 INFO    ] 2026-06-12 18:47:29
[2026-06-12 18:47:30,000.000 INFO    ] 2026-06-12 18:47:29
[2026-06-12 18:47:30,029.029 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 18:47:30,212.212 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 18:47:30,215.215 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 18:47:30,351.351 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 18:47:30,410.410 INFO    ] time= 12/06/2026 18:47:30
[2026-06-12 18:47:30,441.441 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 18:47:30,448.448 INFO    ] Checking for existing commands in stream...
[2026-06-12 18:47:30,515.515 INFO    ] No existing commands found in stream
[2026-06-12 18:47:35,529.529 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 18:47:35,532.532 INFO    ] Waiting 1.97 seconds before fallback handling...
[2026-06-12 18:47:37,880.880 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 18:47:37,882.882 INFO    ] Checking for system updates...
[2026-06-12 18:47:37,904.904 INFO    ] 200
[2026-06-12 18:47:37,905.905 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:47:37,935.935 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 18:47:37,937.937 INFO    ] No update needed
[2026-06-12 18:47:37,938.938 INFO    ] Checking for camera pi updates...
[2026-06-12 18:47:37,958.958 INFO    ] 200
[2026-06-12 18:47:37,959.959 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:47:37,982.982 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 18:47:38,092.092 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 18:47:38,094.094 INFO    ] No camera update needed
[2026-06-12 18:47:38,095.095 INFO    ] Script finished. Safe exiting...
[2026-06-12 18:47:38,096.096 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 18:47:38,099.099 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 18:47:38,102.102 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 18:47:40,140.140 INFO    ] ================================================
[2026-06-12 18:47:40,155.155 INFO    ] Launching Daemon at Fri Jun 12 18:47:40 IST 2026
[2026-06-12 18:47:40,166.166 INFO    ] ================================================
[2026-06-12 18:47:40,513.513 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 18:47:40
[2026-06-12 18:47:40,827.827 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 18:47:40,965.965 INFO    ] Initializing speech engine...
[2026-06-12 18:47:40,974.974 INFO    ] 2026-06-12 18:47:40
[2026-06-12 18:47:41,182.182 INFO    ] 2026-06-12 18:47:41
[2026-06-12 18:47:41,210.210 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 18:47:41,395.395 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 18:47:41,405.405 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 18:47:41,537.537 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 18:47:41,601.601 INFO    ] time= 12/06/2026 18:47:41
[2026-06-12 18:47:41,629.629 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 18:47:41,635.635 INFO    ] Checking for existing commands in stream...
[2026-06-12 18:47:41,703.703 INFO    ] No existing commands found in stream
[2026-06-12 18:47:46,712.712 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 18:47:46,714.714 INFO    ] Waiting 0.94 seconds before fallback handling...
[2026-06-12 18:47:48,052.052 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 18:47:48,054.054 INFO    ] Checking for system updates...
[2026-06-12 18:47:48,074.074 INFO    ] 200
[2026-06-12 18:47:48,075.075 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:47:48,104.104 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 18:47:48,106.106 INFO    ] No update needed
[2026-06-12 18:47:48,107.107 INFO    ] Checking for camera pi updates...
[2026-06-12 18:47:48,127.127 INFO    ] 200
[2026-06-12 18:47:48,128.128 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:47:48,152.152 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 18:47:48,201.201 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 18:47:48,202.202 INFO    ] No camera update needed
[2026-06-12 18:47:48,203.203 INFO    ] Script finished. Safe exiting...
[2026-06-12 18:47:48,205.205 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 18:47:48,207.207 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 18:47:48,210.210 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 18:47:50,241.241 INFO    ] ================================================
[2026-06-12 18:47:50,249.249 INFO    ] Launching Daemon at Fri Jun 12 18:47:50 IST 2026
[2026-06-12 18:47:50,255.255 INFO    ] ================================================
[2026-06-12 18:47:50,576.576 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 18:47:50
[2026-06-12 18:47:50,907.907 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 18:47:51,059.059 INFO    ] Initializing speech engine...
[2026-06-12 18:47:51,063.063 INFO    ] 2026-06-12 18:47:51
[2026-06-12 18:47:51,271.271 INFO    ] 2026-06-12 18:47:51
[2026-06-12 18:47:51,300.300 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 18:47:51,483.483 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 18:47:51,492.492 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 18:47:51,632.632 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 18:47:51,690.690 INFO    ] time= 12/06/2026 18:47:51
[2026-06-12 18:47:51,713.713 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 18:47:51,719.719 INFO    ] Checking for existing commands in stream...
[2026-06-12 18:47:51,786.786 INFO    ] No existing commands found in stream
[2026-06-12 18:47:56,801.801 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 18:47:56,804.804 INFO    ] Waiting 2.86 seconds before fallback handling...
[2026-06-12 18:48:00,077.077 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 18:48:00,078.078 INFO    ] Checking for system updates...
[2026-06-12 18:48:00,099.099 INFO    ] 200
[2026-06-12 18:48:00,101.101 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:48:00,146.146 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 18:48:00,148.148 INFO    ] No update needed
[2026-06-12 18:48:00,149.149 INFO    ] Checking for camera pi updates...
[2026-06-12 18:48:00,170.170 INFO    ] 200
[2026-06-12 18:48:00,171.171 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:48:00,197.197 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 18:48:00,278.278 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 18:48:00,279.279 INFO    ] No camera update needed
[2026-06-12 18:48:00,281.281 INFO    ] Script finished. Safe exiting...
[2026-06-12 18:48:00,282.282 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 18:48:00,285.285 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 18:48:00,288.288 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 18:48:02,320.320 INFO    ] ================================================
[2026-06-12 18:48:02,332.332 INFO    ] Launching Daemon at Fri Jun 12 18:48:02 IST 2026
[2026-06-12 18:48:02,343.343 INFO    ] ================================================
[2026-06-12 18:48:02,690.690 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 18:48:02
[2026-06-12 18:48:03,008.008 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 18:48:03,150.150 INFO    ] Initializing speech engine...
[2026-06-12 18:48:03,155.155 INFO    ] 2026-06-12 18:48:03
[2026-06-12 18:48:03,357.357 INFO    ] 2026-06-12 18:48:03
[2026-06-12 18:48:03,386.386 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 18:48:03,507.507 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 18:48:03,570.570 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 18:48:03,706.706 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 18:48:03,773.773 INFO    ] time= 12/06/2026 18:48:03
[2026-06-12 18:48:03,797.797 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 18:48:03,803.803 INFO    ] Checking for existing commands in stream...
[2026-06-12 18:48:03,871.871 INFO    ] No existing commands found in stream
[2026-06-12 18:48:08,880.880 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 18:48:08,882.882 INFO    ] Waiting 2.41 seconds before fallback handling...
[2026-06-12 18:48:11,662.662 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 18:48:11,664.664 INFO    ] Checking for system updates...
[2026-06-12 18:48:11,684.684 INFO    ] 200
[2026-06-12 18:48:11,686.686 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:48:11,717.717 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 18:48:11,718.718 INFO    ] No update needed
[2026-06-12 18:48:11,720.720 INFO    ] Checking for camera pi updates...
[2026-06-12 18:48:11,742.742 INFO    ] 200
[2026-06-12 18:48:11,743.743 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:48:11,766.766 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 18:48:11,808.808 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 18:48:11,809.809 INFO    ] No camera update needed
[2026-06-12 18:48:11,811.811 INFO    ] Script finished. Safe exiting...
[2026-06-12 18:48:11,812.812 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 18:48:11,815.815 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 18:48:11,818.818 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 18:48:13,856.856 INFO    ] ================================================
[2026-06-12 18:48:13,871.871 INFO    ] Launching Daemon at Fri Jun 12 18:48:13 IST 2026
[2026-06-12 18:48:13,881.881 INFO    ] ================================================
[2026-06-12 18:48:14,228.228 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 18:48:14
[2026-06-12 18:48:14,538.538 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 18:48:14,674.674 INFO    ] Initializing speech engine...
[2026-06-12 18:48:14,683.683 INFO    ] 2026-06-12 18:48:14
[2026-06-12 18:48:14,887.887 INFO    ] 2026-06-12 18:48:14
[2026-06-12 18:48:14,914.914 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 18:48:15,097.097 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 18:48:15,106.106 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 18:48:15,232.232 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 18:48:15,283.283 INFO    ] time= 12/06/2026 18:48:15
[2026-06-12 18:48:15,323.323 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 18:48:15,334.334 INFO    ] Checking for existing commands in stream...
[2026-06-12 18:48:15,456.456 INFO    ] No existing commands found in stream
[2026-06-12 18:48:20,465.465 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 18:48:20,468.468 INFO    ] Waiting 0.93 seconds before fallback handling...
[2026-06-12 18:48:21,781.781 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 18:48:21,783.783 INFO    ] Checking for system updates...
[2026-06-12 18:48:21,803.803 INFO    ] 200
[2026-06-12 18:48:21,805.805 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:48:21,835.835 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 18:48:21,836.836 INFO    ] No update needed
[2026-06-12 18:48:21,837.837 INFO    ] Checking for camera pi updates...
[2026-06-12 18:48:21,857.857 INFO    ] 200
[2026-06-12 18:48:21,858.858 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:48:21,881.881 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 18:48:21,925.925 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 18:48:21,926.926 INFO    ] No camera update needed
[2026-06-12 18:48:21,927.927 INFO    ] Script finished. Safe exiting...
[2026-06-12 18:48:21,928.928 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 18:48:21,931.931 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 18:48:21,934.934 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 18:48:23,972.972 INFO    ] ================================================
[2026-06-12 18:48:23,987.987 INFO    ] Launching Daemon at Fri Jun 12 18:48:23 IST 2026
[2026-06-12 18:48:24,998.998 INFO    ] ================================================
[2026-06-12 18:48:24,360.360 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 18:48:24
[2026-06-12 18:48:24,676.676 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 18:48:24,821.821 INFO    ] Initializing speech engine...
[2026-06-12 18:48:24,826.826 INFO    ] 2026-06-12 18:48:24
[2026-06-12 18:48:25,028.028 INFO    ] 2026-06-12 18:48:25
[2026-06-12 18:48:25,057.057 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 18:48:25,246.246 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 18:48:25,255.255 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 18:48:25,392.392 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 18:48:25,461.461 INFO    ] time= 12/06/2026 18:48:25
[2026-06-12 18:48:25,488.488 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 18:48:25,494.494 INFO    ] Checking for existing commands in stream...
[2026-06-12 18:48:25,587.587 INFO    ] No existing commands found in stream
[2026-06-12 18:48:30,597.597 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 18:48:30,600.600 INFO    ] Waiting 0.73 seconds before fallback handling...
[2026-06-12 18:48:31,696.696 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 18:48:31,698.698 INFO    ] Checking for system updates...
[2026-06-12 18:48:31,722.722 INFO    ] 200
[2026-06-12 18:48:31,723.723 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:48:31,757.757 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 18:48:31,759.759 INFO    ] No update needed
[2026-06-12 18:48:31,761.761 INFO    ] Checking for camera pi updates...
[2026-06-12 18:48:31,782.782 INFO    ] 200
[2026-06-12 18:48:31,784.784 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:48:31,811.811 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 18:48:31,860.860 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 18:48:31,861.861 INFO    ] No camera update needed
[2026-06-12 18:48:31,863.863 INFO    ] Script finished. Safe exiting...
[2026-06-12 18:48:31,864.864 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 18:48:31,868.868 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 18:48:31,872.872 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 18:48:33,903.903 INFO    ] ================================================
[2026-06-12 18:48:33,918.918 INFO    ] Launching Daemon at Fri Jun 12 18:48:33 IST 2026
[2026-06-12 18:48:33,929.929 INFO    ] ================================================
[2026-06-12 18:48:34,270.270 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 18:48:34
[2026-06-12 18:48:34,583.583 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 18:48:34,713.713 INFO    ] Initializing speech engine...
[2026-06-12 18:48:34,716.716 INFO    ] 2026-06-12 18:48:34
[2026-06-12 18:48:34,934.934 INFO    ] 2026-06-12 18:48:34
[2026-06-12 18:48:34,963.963 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 18:48:35,145.145 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 18:48:35,154.154 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 18:48:35,289.289 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 18:48:35,351.351 INFO    ] time= 12/06/2026 18:48:35
[2026-06-12 18:48:35,375.375 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 18:48:35,380.380 INFO    ] Checking for existing commands in stream...
[2026-06-12 18:48:35,447.447 INFO    ] No existing commands found in stream
[2026-06-12 18:48:40,456.456 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 18:48:40,459.459 INFO    ] Waiting 2.75 seconds before fallback handling...
[2026-06-12 18:48:43,619.619 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 18:48:43,621.621 INFO    ] Checking for system updates...
[2026-06-12 18:48:43,642.642 INFO    ] 200
[2026-06-12 18:48:43,644.644 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:48:43,673.673 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 18:48:43,675.675 INFO    ] No update needed
[2026-06-12 18:48:43,676.676 INFO    ] Checking for camera pi updates...
[2026-06-12 18:48:43,695.695 INFO    ] 200
[2026-06-12 18:48:43,696.696 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:48:43,720.720 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 18:48:43,756.756 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 18:48:43,757.757 INFO    ] No camera update needed
[2026-06-12 18:48:43,758.758 INFO    ] Script finished. Safe exiting...
[2026-06-12 18:48:43,760.760 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 18:48:43,763.763 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 18:48:43,766.766 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 18:48:45,804.804 INFO    ] ================================================
[2026-06-12 18:48:45,819.819 INFO    ] Launching Daemon at Fri Jun 12 18:48:45 IST 2026
[2026-06-12 18:48:45,830.830 INFO    ] ================================================
[2026-06-12 18:48:46,192.192 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 18:48:46
[2026-06-12 18:48:46,505.505 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 18:48:46,647.647 INFO    ] Initializing speech engine...
[2026-06-12 18:48:46,653.653 INFO    ] 2026-06-12 18:48:46
[2026-06-12 18:48:46,855.855 INFO    ] 2026-06-12 18:48:46
[2026-06-12 18:48:46,884.884 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 18:48:47,016.016 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 18:48:47,069.069 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 18:48:47,205.205 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 18:48:47,273.273 INFO    ] time= 12/06/2026 18:48:47
[2026-06-12 18:48:47,296.296 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 18:48:47,303.303 INFO    ] Checking for existing commands in stream...
[2026-06-12 18:48:47,370.370 INFO    ] No existing commands found in stream
[2026-06-12 18:48:52,378.378 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 18:48:52,381.381 INFO    ] Waiting 2.12 seconds before fallback handling...
[2026-06-12 18:48:54,877.877 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 18:48:54,878.878 INFO    ] Checking for system updates...
[2026-06-12 18:48:54,898.898 INFO    ] 200
[2026-06-12 18:48:54,900.900 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:48:54,930.930 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 18:48:54,931.931 INFO    ] No update needed
[2026-06-12 18:48:54,933.933 INFO    ] Checking for camera pi updates...
[2026-06-12 18:48:54,952.952 INFO    ] 200
[2026-06-12 18:48:54,953.953 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:48:54,975.975 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 18:48:55,021.021 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 18:48:55,023.023 INFO    ] No camera update needed
[2026-06-12 18:48:55,024.024 INFO    ] Script finished. Safe exiting...
[2026-06-12 18:48:55,025.025 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 18:48:55,028.028 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 18:48:55,031.031 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 18:48:57,069.069 INFO    ] ================================================
[2026-06-12 18:48:57,084.084 INFO    ] Launching Daemon at Fri Jun 12 18:48:57 IST 2026
[2026-06-12 18:48:57,095.095 INFO    ] ================================================
[2026-06-12 18:48:57,420.420 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 18:48:57
[2026-06-12 18:48:57,732.732 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 18:48:57,861.861 INFO    ] Initializing speech engine...
[2026-06-12 18:48:57,865.865 INFO    ] 2026-06-12 18:48:57
[2026-06-12 18:48:58,080.080 INFO    ] 2026-06-12 18:48:58
[2026-06-12 18:48:58,110.110 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 18:48:58,292.292 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 18:48:58,301.301 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 18:48:58,424.424 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 18:48:58,485.485 INFO    ] time= 12/06/2026 18:48:58
[2026-06-12 18:48:58,503.503 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 18:48:58,524.524 INFO    ] Checking for existing commands in stream...
[2026-06-12 18:48:58,595.595 INFO    ] No existing commands found in stream
[2026-06-12 18:49:03,604.604 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 18:49:03,606.606 INFO    ] Waiting 2.40 seconds before fallback handling...
[2026-06-12 18:49:06,391.391 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 18:49:06,393.393 INFO    ] Checking for system updates...
[2026-06-12 18:49:06,413.413 INFO    ] 200
[2026-06-12 18:49:06,414.414 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:49:06,446.446 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 18:49:06,447.447 INFO    ] No update needed
[2026-06-12 18:49:06,449.449 INFO    ] Checking for camera pi updates...
[2026-06-12 18:49:06,469.469 INFO    ] 200
[2026-06-12 18:49:06,470.470 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:49:06,493.493 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 18:49:06,524.524 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 18:49:06,525.525 INFO    ] No camera update needed
[2026-06-12 18:49:06,526.526 INFO    ] Script finished. Safe exiting...
[2026-06-12 18:49:06,528.528 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 18:49:06,531.531 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 18:49:06,533.533 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 18:49:08,572.572 INFO    ] ================================================
[2026-06-12 18:49:08,587.587 INFO    ] Launching Daemon at Fri Jun 12 18:49:08 IST 2026
[2026-06-12 18:49:08,598.598 INFO    ] ================================================
[2026-06-12 18:49:08,965.965 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 18:49:08
[2026-06-12 18:49:09,294.294 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 18:49:09,442.442 INFO    ] Initializing speech engine...
[2026-06-12 18:49:09,448.448 INFO    ] 2026-06-12 18:49:09
[2026-06-12 18:49:09,654.654 INFO    ] 2026-06-12 18:49:09
[2026-06-12 18:49:09,682.682 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 18:49:09,867.867 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 18:49:09,877.877 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 18:49:09,997.997 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 18:49:10,063.063 INFO    ] time= 12/06/2026 18:49:10
[2026-06-12 18:49:10,095.095 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 18:49:10,102.102 INFO    ] Checking for existing commands in stream...
[2026-06-12 18:49:10,169.169 INFO    ] No existing commands found in stream
[2026-06-12 18:49:15,178.178 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 18:49:15,181.181 INFO    ] Waiting 1.39 seconds before fallback handling...
[2026-06-12 18:49:16,957.957 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 18:49:16,959.959 INFO    ] Checking for system updates...
[2026-06-12 18:49:16,979.979 INFO    ] 200
[2026-06-12 18:49:16,981.981 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:49:17,011.011 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 18:49:17,013.013 INFO    ] No update needed
[2026-06-12 18:49:17,014.014 INFO    ] Checking for camera pi updates...
[2026-06-12 18:49:17,034.034 INFO    ] 200
[2026-06-12 18:49:17,036.036 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:49:17,061.061 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 18:49:17,205.205 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 18:49:17,206.206 INFO    ] No camera update needed
[2026-06-12 18:49:17,208.208 INFO    ] Script finished. Safe exiting...
[2026-06-12 18:49:17,209.209 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 18:49:17,213.213 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 18:49:17,215.215 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 18:49:19,254.254 INFO    ] ================================================
[2026-06-12 18:49:19,269.269 INFO    ] Launching Daemon at Fri Jun 12 18:49:19 IST 2026
[2026-06-12 18:49:19,280.280 INFO    ] ================================================
[2026-06-12 18:49:19,604.604 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 18:49:19
[2026-06-12 18:49:19,915.915 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 18:49:20,045.045 INFO    ] Initializing speech engine...
[2026-06-12 18:49:20,048.048 INFO    ] 2026-06-12 18:49:20
[2026-06-12 18:49:20,266.266 INFO    ] 2026-06-12 18:49:20
[2026-06-12 18:49:20,294.294 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 18:49:20,480.480 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 18:49:20,490.490 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 18:49:20,617.617 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 18:49:20,674.674 INFO    ] time= 12/06/2026 18:49:20
[2026-06-12 18:49:20,708.708 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 18:49:20,713.713 INFO    ] Checking for existing commands in stream...
[2026-06-12 18:49:20,810.810 INFO    ] No existing commands found in stream
[2026-06-12 18:49:25,824.824 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 18:49:25,832.832 INFO    ] Waiting 3.52 seconds before fallback handling...
[2026-06-12 18:49:29,732.732 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 18:49:29,734.734 INFO    ] Checking for system updates...
[2026-06-12 18:49:29,756.756 INFO    ] 200
[2026-06-12 18:49:29,758.758 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:49:29,789.789 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 18:49:29,791.791 INFO    ] No update needed
[2026-06-12 18:49:29,792.792 INFO    ] Checking for camera pi updates...
[2026-06-12 18:49:29,811.811 INFO    ] 200
[2026-06-12 18:49:29,812.812 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:49:29,835.835 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 18:49:29,885.885 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 18:49:29,886.886 INFO    ] No camera update needed
[2026-06-12 18:49:29,887.887 INFO    ] Script finished. Safe exiting...
[2026-06-12 18:49:29,888.888 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 18:49:29,892.892 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 18:49:29,894.894 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 18:49:31,933.933 INFO    ] ================================================
[2026-06-12 18:49:31,956.956 INFO    ] Launching Daemon at Fri Jun 12 18:49:31 IST 2026
[2026-06-12 18:49:31,968.968 INFO    ] ================================================
[2026-06-12 18:49:32,316.316 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 18:49:32
[2026-06-12 18:49:32,658.658 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 18:49:32,796.796 INFO    ] Initializing speech engine...
[2026-06-12 18:49:32,808.808 INFO    ] 2026-06-12 18:49:32
[2026-06-12 18:49:33,034.034 INFO    ] 2026-06-12 18:49:32
[2026-06-12 18:49:33,058.058 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 18:49:33,195.195 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 18:49:33,261.261 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 18:49:33,412.412 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 18:49:33,483.483 INFO    ] time= 12/06/2026 18:49:33
[2026-06-12 18:49:33,508.508 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 18:49:33,515.515 INFO    ] Checking for existing commands in stream...
[2026-06-12 18:49:33,583.583 INFO    ] No existing commands found in stream
[2026-06-12 18:49:38,594.594 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 18:49:38,597.597 INFO    ] Waiting 2.53 seconds before fallback handling...
[2026-06-12 18:49:41,507.507 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 18:49:41,508.508 INFO    ] Checking for system updates...
[2026-06-12 18:49:41,529.529 INFO    ] 200
[2026-06-12 18:49:41,530.530 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:49:41,560.560 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 18:49:41,561.561 INFO    ] No update needed
[2026-06-12 18:49:41,562.562 INFO    ] Checking for camera pi updates...
[2026-06-12 18:49:41,582.582 INFO    ] 200
[2026-06-12 18:49:41,584.584 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:49:41,606.606 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 18:49:41,645.645 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 18:49:41,646.646 INFO    ] No camera update needed
[2026-06-12 18:49:41,647.647 INFO    ] Script finished. Safe exiting...
[2026-06-12 18:49:41,649.649 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 18:49:41,652.652 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 18:49:41,654.654 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 18:49:43,692.692 INFO    ] ================================================
[2026-06-12 18:49:43,712.712 INFO    ] Launching Daemon at Fri Jun 12 18:49:43 IST 2026
[2026-06-12 18:49:43,723.723 INFO    ] ================================================
[2026-06-12 18:49:44,078.078 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 18:49:44
[2026-06-12 18:49:44,390.390 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 18:49:44,521.521 INFO    ] Initializing speech engine...
[2026-06-12 18:49:44,529.529 INFO    ] 2026-06-12 18:49:44
[2026-06-12 18:49:44,744.744 INFO    ] 2026-06-12 18:49:44
[2026-06-12 18:49:44,772.772 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 18:49:44,958.958 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 18:49:44,967.967 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 18:49:45,104.104 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 18:49:45,166.166 INFO    ] time= 12/06/2026 18:49:45
[2026-06-12 18:49:45,191.191 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 18:49:45,192.192 INFO    ] Checking for existing commands in stream...
[2026-06-12 18:49:45,289.289 INFO    ] No existing commands found in stream
[2026-06-12 18:49:50,298.298 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 18:49:50,301.301 INFO    ] Waiting 1.02 seconds before fallback handling...
[2026-06-12 18:49:51,708.708 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 18:49:51,710.710 INFO    ] Checking for system updates...
[2026-06-12 18:49:51,730.730 INFO    ] 200
[2026-06-12 18:49:51,732.732 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:49:51,762.762 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 18:49:51,763.763 INFO    ] No update needed
[2026-06-12 18:49:51,764.764 INFO    ] Checking for camera pi updates...
[2026-06-12 18:49:51,784.784 INFO    ] 200
[2026-06-12 18:49:51,785.785 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:49:51,809.809 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 18:49:51,857.857 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 18:49:51,858.858 INFO    ] No camera update needed
[2026-06-12 18:49:51,860.860 INFO    ] Script finished. Safe exiting...
[2026-06-12 18:49:51,861.861 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 18:49:51,865.865 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 18:49:51,867.867 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 18:49:53,906.906 INFO    ] ================================================
[2026-06-12 18:49:53,922.922 INFO    ] Launching Daemon at Fri Jun 12 18:49:53 IST 2026
[2026-06-12 18:49:53,933.933 INFO    ] ================================================
[2026-06-12 18:49:54,271.271 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 18:49:54
[2026-06-12 18:49:54,584.584 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 18:49:54,717.717 INFO    ] Initializing speech engine...
[2026-06-12 18:49:54,722.722 INFO    ] 2026-06-12 18:49:54
[2026-06-12 18:49:54,946.946 INFO    ] 2026-06-12 18:49:54
[2026-06-12 18:49:54,976.976 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 18:49:55,172.172 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 18:49:55,175.175 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 18:49:55,317.317 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 18:49:55,392.392 INFO    ] time= 12/06/2026 18:49:55
[2026-06-12 18:49:55,418.418 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 18:49:55,420.420 INFO    ] Checking for existing commands in stream...
[2026-06-12 18:49:55,521.521 INFO    ] No existing commands found in stream
[2026-06-12 18:50:00,530.530 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 18:50:00,539.539 INFO    ] Waiting 1.34 seconds before fallback handling...
[2026-06-12 18:50:02,217.217 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 18:50:02,219.219 INFO    ] Checking for system updates...
[2026-06-12 18:50:02,247.247 INFO    ] 200
[2026-06-12 18:50:02,248.248 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:50:02,288.288 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 18:50:02,290.290 INFO    ] No update needed
[2026-06-12 18:50:02,291.291 INFO    ] Checking for camera pi updates...
[2026-06-12 18:50:02,320.320 INFO    ] 200
[2026-06-12 18:50:02,322.322 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:50:02,351.351 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 18:50:02,397.397 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 18:50:02,398.398 INFO    ] No camera update needed
[2026-06-12 18:50:02,399.399 INFO    ] Script finished. Safe exiting...
[2026-06-12 18:50:02,401.401 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 18:50:02,403.403 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 18:50:02,406.406 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 18:50:04,444.444 INFO    ] ================================================
[2026-06-12 18:50:04,459.459 INFO    ] Launching Daemon at Fri Jun 12 18:50:04 IST 2026
[2026-06-12 18:50:04,470.470 INFO    ] ================================================
[2026-06-12 18:50:04,798.798 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 18:50:04
[2026-06-12 18:50:05,127.127 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 18:50:05,276.276 INFO    ] Initializing speech engine...
[2026-06-12 18:50:05,281.281 INFO    ] 2026-06-12 18:50:05
[2026-06-12 18:50:05,479.479 INFO    ] 2026-06-12 18:50:05
[2026-06-12 18:50:05,510.510 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 18:50:05,677.677 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 18:50:05,733.733 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 18:50:05,877.877 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 18:50:05,940.940 INFO    ] time= 12/06/2026 18:50:05
[2026-06-12 18:50:05,973.973 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 18:50:05,979.979 INFO    ] Checking for existing commands in stream...
[2026-06-12 18:50:06,055.055 INFO    ] No existing commands found in stream
[2026-06-12 18:50:11,064.064 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 18:50:11,067.067 INFO    ] Waiting 0.07 seconds before fallback handling...
[2026-06-12 18:50:11,483.483 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 18:50:11,484.484 INFO    ] Checking for system updates...
[2026-06-12 18:50:11,505.505 INFO    ] 200
[2026-06-12 18:50:11,506.506 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:50:11,538.538 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 18:50:11,540.540 INFO    ] No update needed
[2026-06-12 18:50:11,541.541 INFO    ] Checking for camera pi updates...
[2026-06-12 18:50:11,560.560 INFO    ] 200
[2026-06-12 18:50:11,562.562 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:50:11,584.584 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 18:50:11,629.629 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 18:50:11,631.631 INFO    ] No camera update needed
[2026-06-12 18:50:11,632.632 INFO    ] Script finished. Safe exiting...
[2026-06-12 18:50:11,633.633 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 18:50:11,636.636 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 18:50:11,639.639 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 18:50:13,670.670 INFO    ] ================================================
[2026-06-12 18:50:13,678.678 INFO    ] Launching Daemon at Fri Jun 12 18:50:13 IST 2026
[2026-06-12 18:50:13,684.684 INFO    ] ================================================
[2026-06-12 18:50:14,035.035 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 18:50:14
[2026-06-12 18:50:14,353.353 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 18:50:14,494.494 INFO    ] Initializing speech engine...
[2026-06-12 18:50:14,501.501 INFO    ] 2026-06-12 18:50:14
[2026-06-12 18:50:14,702.702 INFO    ] 2026-06-12 18:50:14
[2026-06-12 18:50:14,771.771 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 18:50:14,926.926 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 18:50:14,992.992 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 18:50:15,136.136 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 18:50:15,196.196 INFO    ] time= 12/06/2026 18:50:15
[2026-06-12 18:50:15,229.229 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 18:50:15,235.235 INFO    ] Checking for existing commands in stream...
[2026-06-12 18:50:15,334.334 INFO    ] No existing commands found in stream
[2026-06-12 18:50:20,344.344 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 18:50:20,346.346 INFO    ] Waiting 3.99 seconds before fallback handling...
[2026-06-12 18:50:24,688.688 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 18:50:24,689.689 INFO    ] Checking for system updates...
[2026-06-12 18:50:24,710.710 INFO    ] 200
[2026-06-12 18:50:24,711.711 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:50:24,741.741 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 18:50:24,742.742 INFO    ] No update needed
[2026-06-12 18:50:24,744.744 INFO    ] Checking for camera pi updates...
[2026-06-12 18:50:24,764.764 INFO    ] 200
[2026-06-12 18:50:24,765.765 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:50:24,788.788 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 18:50:24,814.814 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 18:50:24,815.815 INFO    ] No camera update needed
[2026-06-12 18:50:24,816.816 INFO    ] Script finished. Safe exiting...
[2026-06-12 18:50:24,817.817 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 18:50:24,821.821 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 18:50:24,823.823 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 18:50:26,861.861 INFO    ] ================================================
[2026-06-12 18:50:26,876.876 INFO    ] Launching Daemon at Fri Jun 12 18:50:26 IST 2026
[2026-06-12 18:50:26,887.887 INFO    ] ================================================
[2026-06-12 18:50:27,233.233 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 18:50:27
[2026-06-12 18:50:27,562.562 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 18:50:27,697.697 INFO    ] Initializing speech engine...
[2026-06-12 18:50:27,701.701 INFO    ] 2026-06-12 18:50:27
[2026-06-12 18:50:27,923.923 INFO    ] 2026-06-12 18:50:27
[2026-06-12 18:50:27,952.952 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 18:50:28,137.137 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 18:50:28,146.146 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 18:50:28,299.299 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 18:50:28,348.348 INFO    ] time= 12/06/2026 18:50:28
[2026-06-12 18:50:28,369.369 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 18:50:28,376.376 INFO    ] Checking for existing commands in stream...
[2026-06-12 18:50:28,467.467 INFO    ] No existing commands found in stream
[2026-06-12 18:50:33,486.486 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 18:50:33,490.490 INFO    ] Waiting 3.86 seconds before fallback handling...
[2026-06-12 18:50:37,737.737 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 18:50:37,739.739 INFO    ] Checking for system updates...
[2026-06-12 18:50:37,760.760 INFO    ] 200
[2026-06-12 18:50:37,762.762 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:50:37,792.792 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 18:50:37,793.793 INFO    ] No update needed
[2026-06-12 18:50:37,794.794 INFO    ] Checking for camera pi updates...
[2026-06-12 18:50:37,815.815 INFO    ] 200
[2026-06-12 18:50:37,816.816 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:50:37,843.843 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 18:50:37,903.903 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 18:50:37,904.904 INFO    ] No camera update needed
[2026-06-12 18:50:37,906.906 INFO    ] Script finished. Safe exiting...
[2026-06-12 18:50:37,907.907 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 18:50:37,910.910 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 18:50:37,913.913 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 18:50:39,951.951 INFO    ] ================================================
[2026-06-12 18:50:39,966.966 INFO    ] Launching Daemon at Fri Jun 12 18:50:39 IST 2026
[2026-06-12 18:50:39,978.978 INFO    ] ================================================
[2026-06-12 18:50:40,310.310 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 18:50:40
[2026-06-12 18:50:40,625.625 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 18:50:40,767.767 INFO    ] Initializing speech engine...
[2026-06-12 18:50:40,775.775 INFO    ] 2026-06-12 18:50:40
[2026-06-12 18:50:40,989.989 INFO    ] 2026-06-12 18:50:40
[2026-06-12 18:50:41,019.019 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 18:50:41,213.213 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 18:50:41,216.216 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 18:50:41,361.361 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 18:50:41,430.430 INFO    ] time= 12/06/2026 18:50:41
[2026-06-12 18:50:41,455.455 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 18:50:41,462.462 INFO    ] Checking for existing commands in stream...
[2026-06-12 18:50:41,532.532 INFO    ] No existing commands found in stream
[2026-06-12 18:50:46,541.541 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 18:50:46,544.544 INFO    ] Waiting 0.16 seconds before fallback handling...
[2026-06-12 18:50:47,059.059 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 18:50:47,060.060 INFO    ] Checking for system updates...
[2026-06-12 18:50:47,081.081 INFO    ] 200
[2026-06-12 18:50:47,082.082 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:50:47,112.112 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 18:50:47,114.114 INFO    ] No update needed
[2026-06-12 18:50:47,115.115 INFO    ] Checking for camera pi updates...
[2026-06-12 18:50:47,135.135 INFO    ] 200
[2026-06-12 18:50:47,137.137 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:50:47,160.160 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 18:50:47,201.201 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 18:50:47,203.203 INFO    ] No camera update needed
[2026-06-12 18:50:47,204.204 INFO    ] Script finished. Safe exiting...
[2026-06-12 18:50:47,205.205 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 18:50:47,208.208 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 18:50:47,211.211 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 18:50:49,249.249 INFO    ] ================================================
[2026-06-12 18:50:49,264.264 INFO    ] Launching Daemon at Fri Jun 12 18:50:49 IST 2026
[2026-06-12 18:50:49,274.274 INFO    ] ================================================
[2026-06-12 18:50:49,643.643 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 18:50:49
[2026-06-12 18:50:49,955.955 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 18:50:50,085.085 INFO    ] Initializing speech engine...
[2026-06-12 18:50:50,093.093 INFO    ] 2026-06-12 18:50:50
[2026-06-12 18:50:50,307.307 INFO    ] 2026-06-12 18:50:50
[2026-06-12 18:50:50,335.335 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 18:50:50,521.521 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 18:50:50,530.530 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 18:50:50,656.656 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 18:50:50,713.713 INFO    ] time= 12/06/2026 18:50:50
[2026-06-12 18:50:50,747.747 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 18:50:50,760.760 INFO    ] Checking for existing commands in stream...
[2026-06-12 18:50:50,825.825 INFO    ] No existing commands found in stream
[2026-06-12 18:50:55,835.835 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 18:50:55,837.837 INFO    ] Waiting 3.02 seconds before fallback handling...
[2026-06-12 18:50:59,200.200 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 18:50:59,201.201 INFO    ] Checking for system updates...
[2026-06-12 18:50:59,223.223 INFO    ] 200
[2026-06-12 18:50:59,224.224 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:50:59,255.255 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 18:50:59,256.256 INFO    ] No update needed
[2026-06-12 18:50:59,258.258 INFO    ] Checking for camera pi updates...
[2026-06-12 18:50:59,276.276 INFO    ] 200
[2026-06-12 18:50:59,278.278 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:50:59,303.303 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 18:50:59,344.344 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 18:50:59,345.345 INFO    ] No camera update needed
[2026-06-12 18:50:59,346.346 INFO    ] Script finished. Safe exiting...
[2026-06-12 18:50:59,348.348 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 18:50:59,351.351 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 18:50:59,353.353 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 18:51:01,377.377 INFO    ] ================================================
[2026-06-12 18:51:01,385.385 INFO    ] Launching Daemon at Fri Jun 12 18:51:01 IST 2026
[2026-06-12 18:51:01,391.391 INFO    ] ================================================
[2026-06-12 18:51:01,805.805 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 18:51:01
[2026-06-12 18:51:02,173.173 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 18:51:02,348.348 INFO    ] Initializing speech engine...
[2026-06-12 18:51:02,352.352 INFO    ] 2026-06-12 18:51:02
[2026-06-12 18:51:02,562.562 INFO    ] 2026-06-12 18:51:02
[2026-06-12 18:51:02,608.608 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 18:51:02,773.773 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 18:51:02,831.831 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 18:51:02,980.980 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 18:51:03,047.047 INFO    ] time= 12/06/2026 18:51:02
[2026-06-12 18:51:03,076.076 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 18:51:03,087.087 INFO    ] Checking for existing commands in stream...
[2026-06-12 18:51:03,162.162 INFO    ] No existing commands found in stream
[2026-06-12 18:51:08,172.172 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 18:51:08,175.175 INFO    ] Waiting 2.18 seconds before fallback handling...
[2026-06-12 18:51:10,763.763 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 18:51:10,766.766 INFO    ] Checking for system updates...
[2026-06-12 18:51:10,804.804 INFO    ] 200
[2026-06-12 18:51:10,807.807 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:51:10,872.872 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 18:51:10,875.875 INFO    ] No update needed
[2026-06-12 18:51:10,877.877 INFO    ] Checking for camera pi updates...
[2026-06-12 18:51:10,907.907 INFO    ] 200
[2026-06-12 18:51:10,908.908 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:51:10,931.931 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 18:51:10,987.987 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 18:51:10,989.989 INFO    ] No camera update needed
[2026-06-12 18:51:10,990.990 INFO    ] Script finished. Safe exiting...
[2026-06-12 18:51:10,991.991 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 18:51:10,994.994 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 18:51:10,997.997 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 18:51:13,035.035 INFO    ] ================================================
[2026-06-12 18:51:13,050.050 INFO    ] Launching Daemon at Fri Jun 12 18:51:13 IST 2026
[2026-06-12 18:51:13,061.061 INFO    ] ================================================
[2026-06-12 18:51:13,439.439 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 18:51:13
[2026-06-12 18:51:13,776.776 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 18:51:13,925.925 INFO    ] Initializing speech engine...
[2026-06-12 18:51:13,931.931 INFO    ] 2026-06-12 18:51:13
[2026-06-12 18:51:14,137.137 INFO    ] 2026-06-12 18:51:14
[2026-06-12 18:51:14,166.166 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 18:51:14,350.350 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 18:51:14,360.360 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 18:51:14,510.510 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 18:51:14,558.558 INFO    ] time= 12/06/2026 18:51:14
[2026-06-12 18:51:14,580.580 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 18:51:14,586.586 INFO    ] Checking for existing commands in stream...
[2026-06-12 18:51:14,653.653 INFO    ] No existing commands found in stream
[2026-06-12 18:51:19,667.667 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 18:51:19,670.670 INFO    ] Waiting 0.97 seconds before fallback handling...
[2026-06-12 18:51:21,048.048 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 18:51:21,050.050 INFO    ] Checking for system updates...
[2026-06-12 18:51:21,070.070 INFO    ] 200
[2026-06-12 18:51:21,072.072 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:51:21,101.101 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 18:51:21,103.103 INFO    ] No update needed
[2026-06-12 18:51:21,104.104 INFO    ] Checking for camera pi updates...
[2026-06-12 18:51:21,123.123 INFO    ] 200
[2026-06-12 18:51:21,124.124 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:51:21,149.149 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 18:51:21,296.296 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 18:51:21,298.298 INFO    ] No camera update needed
[2026-06-12 18:51:21,299.299 INFO    ] Script finished. Safe exiting...
[2026-06-12 18:51:21,300.300 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 18:51:21,303.303 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 18:51:21,306.306 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 18:51:23,344.344 INFO    ] ================================================
[2026-06-12 18:51:23,359.359 INFO    ] Launching Daemon at Fri Jun 12 18:51:23 IST 2026
[2026-06-12 18:51:23,370.370 INFO    ] ================================================
[2026-06-12 18:51:23,694.694 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 18:51:23
[2026-06-12 18:51:24,005.005 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 18:51:24,154.154 INFO    ] Initializing speech engine...
[2026-06-12 18:51:24,159.159 INFO    ] 2026-06-12 18:51:24
[2026-06-12 18:51:24,367.367 INFO    ] 2026-06-12 18:51:24
[2026-06-12 18:51:24,396.396 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 18:51:24,581.581 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 18:51:24,592.592 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 18:51:24,730.730 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 18:51:24,786.786 INFO    ] time= 12/06/2026 18:51:24
[2026-06-12 18:51:24,810.810 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 18:51:24,816.816 INFO    ] Checking for existing commands in stream...
[2026-06-12 18:51:24,882.882 INFO    ] No existing commands found in stream
[2026-06-12 18:51:29,892.892 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 18:51:29,896.896 INFO    ] Waiting 1.51 seconds before fallback handling...
[2026-06-12 18:51:32,271.271 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 18:51:32,273.273 INFO    ] Checking for system updates...
[2026-06-12 18:51:32,293.293 INFO    ] 200
[2026-06-12 18:51:32,294.294 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:51:32,326.326 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 18:51:32,327.327 INFO    ] No update needed
[2026-06-12 18:51:32,329.329 INFO    ] Checking for camera pi updates...
[2026-06-12 18:51:32,348.348 INFO    ] 200
[2026-06-12 18:51:32,349.349 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:51:32,373.373 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 18:51:32,406.406 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 18:51:32,407.407 INFO    ] No camera update needed
[2026-06-12 18:51:32,409.409 INFO    ] Script finished. Safe exiting...
[2026-06-12 18:51:32,410.410 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 18:51:32,413.413 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 18:51:32,416.416 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 18:51:34,453.453 INFO    ] ================================================
[2026-06-12 18:51:34,468.468 INFO    ] Launching Daemon at Fri Jun 12 18:51:34 IST 2026
[2026-06-12 18:51:34,479.479 INFO    ] ================================================
[2026-06-12 18:51:34,803.803 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 18:51:34
[2026-06-12 18:51:35,120.120 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 18:51:35,288.288 INFO    ] Initializing speech engine...
[2026-06-12 18:51:35,298.298 INFO    ] 2026-06-12 18:51:35
[2026-06-12 18:51:35,519.519 INFO    ] 2026-06-12 18:51:35
[2026-06-12 18:51:35,547.547 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 18:51:35,730.730 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 18:51:35,739.739 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 18:51:35,865.865 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 18:51:35,927.927 INFO    ] time= 12/06/2026 18:51:35
[2026-06-12 18:51:35,957.957 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 18:51:35,962.962 INFO    ] Checking for existing commands in stream...
[2026-06-12 18:51:36,034.034 INFO    ] No existing commands found in stream
[2026-06-12 18:51:39,074.074 INFO    ] Received new command: ID=1781270498815-0
[2026-06-12 18:51:39,076.076 INFO    ] process_and_cleanup_command: msg_id=1781270498815-0
[2026-06-12 18:51:39,079.079 INFO    ] is_command_expired: timestamp=2026-06-12T13:21:38.344Z, expiry=30s
[2026-06-12 18:51:39,161.161 INFO    ] Command removed from stream: 1781270498815-0. returning for processing...
[2026-06-12 18:51:39,163.163 INFO    ] ***** get_valid_command
[2026-06-12 18:51:39,166.166 INFO    ] {'source': 'webapp', 'timeout': '10', 'timestamp': '2026-06-12T13:21:38.344Z', 'data': '{"request_id":"start-order-1781270498344-zmgnastpz","orderId":"TM09202301260612185038215","is_vending":false}', 'command': 'start-order'}
[2026-06-12 18:51:39,168.168 INFO    ] ***** Parsed command data: {'orderId': 'TM09202301260612185038215', 'request_id': 'start-order-1781270498344-zmgnastpz', 'is_vending': False}
[2026-06-12 18:51:39,171.171 INFO    ] Handling start order...
[2026-06-12 18:51:39,173.173 INFO    ] handle_start_order_command
[2026-06-12 18:51:39,179.179 INFO    ] _send_start_order_success: request_id=start-order-1781270498344-zmgnastpz, order_id=TM09202301260612185038215
[2026-06-12 18:51:39,182.182 INFO    ] [_send_start_order_success] Adding message to stream: machine:TM09202301
[2026-06-12 18:51:39,251.251 INFO    ] [_send_start_order_success] Message added to stream with ID: 1781270499266-0
[2026-06-12 18:51:39,254.254 INFO    ] ✅ Start-order command succeeded - order locked, waiting for process-order command
[2026-06-12 18:51:39,256.256 INFO    ] Checking for system updates...
[2026-06-12 18:51:39,300.300 INFO    ] 200
[2026-06-12 18:51:39,303.303 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:51:39,355.355 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 18:51:39,357.357 INFO    ] No update needed
[2026-06-12 18:51:39,360.360 INFO    ] Checking for camera pi updates...
[2026-06-12 18:51:39,383.383 INFO    ] 200
[2026-06-12 18:51:39,385.385 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:51:39,407.407 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 18:51:39,454.454 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 18:51:39,456.456 INFO    ] No camera update needed
[2026-06-12 18:51:39,457.457 INFO    ] Script finished. Safe exiting...
[2026-06-12 18:51:39,458.458 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 18:51:39,462.462 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 18:51:39,464.464 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 18:51:41,501.501 INFO    ] ================================================
[2026-06-12 18:51:41,516.516 INFO    ] Launching Daemon at Fri Jun 12 18:51:41 IST 2026
[2026-06-12 18:51:41,527.527 INFO    ] ================================================
[2026-06-12 18:51:41,891.891 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 18:51:41
[2026-06-12 18:51:42,211.211 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 18:51:42,354.354 INFO    ] Initializing speech engine...
[2026-06-12 18:51:42,364.364 INFO    ] 2026-06-12 18:51:42
[2026-06-12 18:51:42,583.583 INFO    ] 2026-06-12 18:51:42
[2026-06-12 18:51:42,613.613 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 18:51:42,811.811 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 18:51:42,820.820 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 18:51:42,960.960 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 18:51:43,019.019 INFO    ] time= 12/06/2026 18:51:42
[2026-06-12 18:51:43,048.048 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 18:51:43,059.059 INFO    ] Checking for existing commands in stream...
[2026-06-12 18:51:43,135.135 INFO    ] Found 2 existing command(s) in stream
[2026-06-12 18:51:43,139.139 INFO    ] Checking historical command: ID=1781270499266-0
[2026-06-12 18:51:43,166.166 INFO    ] process_and_cleanup_command: msg_id=1781270499266-0
[2026-06-12 18:51:43,168.168 INFO    ] is_command_expired: timestamp=2026-06-12T13:21:39.180389Z, expiry=30s
[2026-06-12 18:51:43,286.286 INFO    ] Command removed from stream: 1781270499266-0. returning for processing...
[2026-06-12 18:51:43,290.290 INFO    ] ***** get_valid_command
[2026-06-12 18:51:43,294.294 INFO    ] {'metadata_order_id': 'TM09202301260612185038215', 'message': 'start-order success', 'timestamp': '2026-06-12T13:21:39.180389Z', 'metadata_request_id': 'start-order-1781270498344-zmgnastpz', 'status': 'success', 'imei': 'TM09202301', 'message_type': 'command_response'}
[2026-06-12 18:51:43,299.299 INFO    ] Checking historical command: ID=1781270500888-0
[2026-06-12 18:51:43,303.303 INFO    ] process_and_cleanup_command: msg_id=1781270500888-0
[2026-06-12 18:51:43,305.305 INFO    ] is_command_expired: timestamp=2026-06-12T13:21:40.547Z, expiry=30s
[2026-06-12 18:51:43,372.372 INFO    ] Command removed from stream: 1781270500888-0. returning for processing...
[2026-06-12 18:51:43,375.375 INFO    ] ***** get_valid_command
[2026-06-12 18:51:43,379.379 INFO    ] {'timeout': '60', 'timestamp': '2026-06-12T13:21:40.547Z', 'command': 'process-order', 'source': 'webapp', 'data': '{"request_id":"process-order-1781270500547-0c3pmc79j","orderId":"TM09202301260612185038215","is_vending":false,"accessCode":"35713997"}'}
[2026-06-12 18:51:43,384.384 INFO    ] ***** Parsed command data: {'request_id': 'process-order-1781270500547-0c3pmc79j', 'accessCode': '35713997', 'orderId': 'TM09202301260612185038215', 'is_vending': False}
[2026-06-12 18:51:43,389.389 INFO    ] Handling process order...
[2026-06-12 18:51:43,394.394 INFO    ] Processing process-order command...
[2026-06-12 18:51:43,399.399 INFO    ] 🔍 Lock file Order ID: TM09202301260612185038215, TS: 2026-06-12 18:51:39
[2026-06-12 18:51:43,409.409 INFO    ] ✅ Order lock valid for TM09202301260612185038215
[2026-06-12 18:51:43,413.413 INFO    ] Received access code in process-order, skipping PHP API call
[2026-06-12 18:51:43,418.418 INFO    ] processing access code 35713997 for order TM09202301260612185038215
[2026-06-12 18:51:43,423.423 INFO    ] 🔍 Lock file Order ID: TM09202301260612185038215, TS: 2026-06-12 18:51:39
[2026-06-12 18:51:43,428.428 INFO    ] ✅ Order lock valid for TM09202301260612185038215
[2026-06-12 18:51:43,433.433 INFO    ] 2026-06-12 18:51:43
[2026-06-12 18:51:43,461.461 INFO    ] 200
[2026-06-12 18:51:43,462.462 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:51:43,464.464 INFO    ] 35713997
[2026-06-12 18:51:43,507.507 INFO    ] 2026-06-12 18:51:43
[2026-06-12 18:51:43,526.526 INFO    ] session id :637112542
[2026-06-12 18:51:43,538.538 INFO    ] http://localhost:5000/v2/getOrderByAccessCode?access_code=35713997&imei=TM09202301&session_id=637112542
[2026-06-12 18:51:44,261.261 INFO    ] 200
[2026-06-12 18:51:44,262.262 INFO    ] {"status": true, "msg": "Order Data", "data": {"bill_amount": "102", "access_code": "35713997", "order_id": "TM09202301260612185038215", "mobile": "8123896930", "proposed_sku_json": [{"unit_price": 10, "qty": 1, "skuid": "4500688", "offer_desc": "", "offer_id": "", "door_id": "1", "tray_id": "13", "sku_total": 10, "mrp": "10", "image_url": "https://images.tinymart.in/product/4500688-125.webp", "name": "Modern Kitchens Potato waffers Cream onion 24gm"}, {"unit_price": 36, "qty": 2, "skuid": "166327", "offer_desc": "", "offer_id": "166327_0901", "door_id": "2", "tray_id": "42", "sku_total": 72, "mrp": "38", "image_url": "https://images.tinymart.in/product/166327-5644.jpg", "name": "Epigamia Chocolate Milkshake 200g"}, {"unit_price": 20, "qty": 1, "skuid": "4500693", "offer_desc": "", "offer_id": "", "door_id": "1", "tray_id": "24", "sku_total": 20, "mrp": "20", "image_url": "https://images.tinymart.in/product/4500693-9518.webp", "name": "Max protein 7 grain Protein Gochujang 30gm"}], "invoice_bill": "102"}, "rstatus": true}
[2026-06-12 18:51:44,264.264 INFO    ] 102
[2026-06-12 18:51:44,265.265 INFO    ] TM09202301260612185038215
[2026-06-12 18:51:44,266.266 INFO    ] 8123896930
[2026-06-12 18:51:44,268.268 INFO    ] 2026-06-12 18:51:44
[2026-06-12 18:51:44,269.269 INFO    ] Door Opening for user mobile ending with  six nine three zero 
[2026-06-12 18:51:44,270.270 INFO    ] Door Opening for user mobile ending with  six nine three zero 
[2026-06-12 18:51:44,272.272 INFO    ] e08bec76d582fa33938bb8fbccd701bc
[2026-06-12 18:51:44,277.277 INFO    ] 2026-06-12 18:51:44
[2026-06-12 18:51:44,279.279 INFO    ] creating audio file
[2026-06-12 18:51:44,315.315 INFO    ] Calling gTTS API with 60s timeout...
[2026-06-12 18:51:44,875.875 INFO    ] gTTS API call completed successfully
[2026-06-12 18:51:45,541.541 INFO    ] 2026-06-12 18:51:45
[2026-06-12 18:51:45,543.543 INFO    ] playing audio file
[2026-06-12 18:51:45,553.553 INFO    ] 2026-06-12 18:51:45
[2026-06-12 18:51:45,555.555 INFO    ] 2026-06-12 18:51:45
[2026-06-12 18:51:45,558.558 INFO    ] publish_status: order_id=TM09202301260612185038215
[2026-06-12 18:51:45,560.560 INFO    ] [publish_status] Adding message to stream: order:TM09202301260612185038215
[2026-06-12 18:51:45,666.666 INFO    ] [publish_status] Message added to stream with ID: 1781270505680-0
[2026-06-12 18:51:45,668.668 INFO    ] Published to order:TM09202301260612185038215: {'timestamp': '2026-06-12T13:21:45.556327Z', 'server_status': 'order-started', 'server_response': '{"status": true, "rstatus": true, "data": {"bill_amount": "102", "mobile": "8123896930", "order_id": "TM09202301260612185038215", "proposed_sku_json": [{"offer_desc": "", "offer_id": "", "door_id": "1", "qty": 1, "name": "Modern Kitchens Potato waffers Cream onion 24gm", "tray_id": "13", "mrp": "10", "image_url": "https://images.tinymart.in/product/4500688-125.webp", "sku_total": 10, "unit_price": 10, "skuid": "4500688"}, {"offer_desc": "", "offer_id": "166327_0901", "door_id": "2", "qty": 2, "name": "Epigamia Chocolate Milkshake 200g", "tray_id": "42", "mrp": "38", "image_url": "https://images.tinymart.in/product/166327-5644.jpg", "sku_total": 72, "unit_price": 36, "skuid": "166327"}, {"offer_desc": "", "offer_id": "", "door_id": "1", "qty": 1, "name": "Max protein 7 grain Protein Gochujang 30gm", "tray_id": "24", "mrp": "20", "image_url": "https://images.tinymart.in/product/4500693-9518.webp", "sku_total": 20, "unit_price": 20, "skuid": "4500693"}], "access_code": "35713997", "invoice_bill": "102"}, "msg": "Order Data"}', 'order_id': 'TM09202301260612185038215'} (ID: 1781270505680-0)
[2026-06-12 18:51:46,039.039 INFO    ] {'server_status': 'order-started', 'server_response': {'status': True, 'rstatus': True, 'data': {'bill_amount': '102', 'mobile': '8123896930', 'order_id': 'TM09202301260612185038215', 'proposed_sku_json': [{'offer_desc': '', 'offer_id': '', 'door_id': '1', 'qty': 1, 'name': 'Modern Kitchens Potato waffers Cream onion 24gm', 'tray_id': '13', 'mrp': '10', 'image_url': 'https://images.tinymart.in/product/4500688-125.webp', 'sku_total': 10, 'unit_price': 10, 'skuid': '4500688'}, {'offer_desc': '', 'offer_id': '166327_0901', 'door_id': '2', 'qty': 2, 'name': 'Epigamia Chocolate Milkshake 200g', 'tray_id': '42', 'mrp': '38', 'image_url': 'https://images.tinymart.in/product/166327-5644.jpg', 'sku_total': 72, 'unit_price': 36, 'skuid': '166327'}, {'offer_desc': '', 'offer_id': '', 'door_id': '1', 'qty': 1, 'name': 'Max protein 7 grain Protein Gochujang 30gm', 'tray_id': '24', 'mrp': '20', 'image_url': 'https://images.tinymart.in/product/4500693-9518.webp', 'sku_total': 20, 'unit_price': 20, 'skuid': '4500693'}], 'access_code': '35713997', 'invoice_bill': '102'}, 'msg': 'Order Data'}, 'order_id': 'TM09202301260612185038215'}
[2026-06-12 18:51:46,042.042 INFO    ] 200
[2026-06-12 18:51:46,045.045 INFO    ] {"data":{"server_status":"order-started","server_response":{"status":true,"rstatus":true,"data":{"bill_amount":"102","mobile":"8123896930","order_id":"TM09202301260612185038215","proposed_sku_json":[{"offer_desc":"","offer_id":"","door_id":"1","qty":1,"name":"Modern Kitchens Potato waffers Cream onion 24gm","tray_id":"13","mrp":"10","image_url":"https:\/\/images.tinymart.in\/product\/4500688-125.webp","sku_total":10,"unit_price":10,"skuid":"4500688"},{"offer_desc":"","offer_id":"166327_0901","door_id":"2","qty":2,"name":"Epigamia Chocolate Milkshake 200g","tray_id":"42","mrp":"38","image_url":"https:\/\/images.tinymart.in\/product\/166327-5644.jpg","sku_total":72,"unit_price":36,"skuid":"166327"},{"offer_desc":"","offer_id":"","door_id":"1","qty":1,"name":"Max protein 7 grain Protein Gochujang 30gm","tray_id":"24","mrp":"20","image_url":"https:\/\/images.tinymart.in\/product\/4500693-9518.webp","sku_total":20,"unit_price":20,"skuid":"4500693"}],"access_code":"35713997","invoice_bill":"102"},"msg":"Order Data"},"order_id":"TM09202301260612185038215"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-12 18:51:46,049.049 INFO    ] {'response': {'status': True, 'msg': 'order updated successfully', 'code': 'ORDER_EXISTS', 'data': 'order updated successfully'}, 'data': {'server_status': 'order-started', 'server_response': {'status': True, 'rstatus': True, 'msg': 'Order Data', 'data': {'bill_amount': '102', 'mobile': '8123896930', 'order_id': 'TM09202301260612185038215', 'proposed_sku_json': [{'offer_desc': '', 'offer_id': '', 'door_id': '1', 'qty': 1, 'unit_price': 10, 'tray_id': '13', 'mrp': '10', 'skuid': '4500688', 'image_url': 'https://images.tinymart.in/product/4500688-125.webp', 'name': 'Modern Kitchens Potato waffers Cream onion 24gm', 'sku_total': 10}, {'offer_desc': '', 'offer_id': '166327_0901', 'door_id': '2', 'qty': 2, 'unit_price': 36, 'tray_id': '42', 'mrp': '38', 'skuid': '166327', 'image_url': 'https://images.tinymart.in/product/166327-5644.jpg', 'name': 'Epigamia Chocolate Milkshake 200g', 'sku_total': 72}, {'offer_desc': '', 'offer_id': '', 'door_id': '1', 'qty': 1, 'unit_price': 20, 'tray_id': '24', 'mrp': '20', 'skuid': '4500693', 'image_url': 'https://images.tinymart.in/product/4500693-9518.webp', 'name': 'Max protein 7 grain Protein Gochujang 30gm', 'sku_total': 20}], 'access_code': '35713997', 'invoice_bill': '102'}}, 'order_id': 'TM09202301260612185038215'}}
[2026-06-12 18:51:46,052.052 INFO    ] 2026-06-12 18:51:46
[2026-06-12 18:51:46,097.097 INFO    ] 200
[2026-06-12 18:51:46,100.100 INFO    ] True
[2026-06-12 18:51:46,224.224 INFO    ] 200
[2026-06-12 18:51:46,225.225 INFO    ] {"error": {"tmessage": "In Progress", "umessage": "In Progress", "data": {}, "code": 20001}, "SectionSKU": {"Header": "Thank you for bearing with us :)", "skus": []}, "rstatus": false, "SectionStatus": {"Header": " Your order is under process  ", "SubHeader": "Please wait while we process your order", "UI_Header": "", "Note": ""}, "status": "False", "voiceNote": "Please Wait", "SectionMain": {"Header": "Processing Order"}}
[2026-06-12 18:51:46,227.227 INFO    ] {'SectionMain': {'Header': 'Processing Order'}, 'rstatus': False, 'SectionStatus': {'UI_Header': '', 'SubHeader': 'Please wait while we process your order', 'Header': ' Your order is under process  ', 'Note': ''}, 'voiceNote': 'Please Wait', 'status': 'False', 'error': {'code': 20001, 'tmessage': 'In Progress', 'umessage': 'In Progress', 'data': {}}, 'SectionSKU': {'skus': [], 'Header': 'Thank you for bearing with us :)'}}
[2026-06-12 18:51:46,229.229 INFO    ] *** process_order ***
[2026-06-12 18:51:47,394.394 INFO    ] 200
[2026-06-12 18:51:47,396.396 INFO    ] {"delay": 0, "SectionSKU": {"Header": "Thank you for bearing with us :)", "skus": []}, "rstatus": true, "SectionStatus": {"Header": " Your order is under process  ", "SubHeader": "Please wait while we process your order", "UI_Header": "", "Note": ""}, "status": "True", "voiceNote": "Please Wait", "SectionMain": {"Header": "Processing Order"}}
[2026-06-12 18:51:47,397.397 INFO    ] {'delay': 0, 'rstatus': True, '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'}, 'SectionSKU': {'skus': [], 'Header': 'Thank you for bearing with us :)'}}
[2026-06-12 18:51:47,398.398 INFO    ] *** process_order ***
[2026-06-12 18:51:47,400.400 INFO    ] publish_status: order_id=TM09202301260612185038215
[2026-06-12 18:51:47,402.402 INFO    ] [publish_status] Adding message to stream: order:TM09202301260612185038215
[2026-06-12 18:51:47,502.502 INFO    ] [publish_status] Message added to stream with ID: 1781270507516-0
[2026-06-12 18:51:47,503.503 INFO    ] Published to order:TM09202301260612185038215: {'server_status': 'doorOpened', 'server_response': '{"SectionMain": {"Header": "Processing Order"}, "rstatus": true, "SectionStatus": {"UI_Header": "", "SubHeader": "You can pull the door now.", "Note": "", "Header": " Your order is under process  "}, "voiceNote": "Door is open...", "status": "True", "delay": 0, "SectionSKU": {"skus": [], "Header": "Thank you for bearing with us :)"}}', 'order_id': 'TM09202301260612185038215'} (ID: 1781270507516-0)
[2026-06-12 18:51:48,562.562 INFO    ] 2026-06-12 18:51:48
[2026-06-12 18:51:48,565.565 INFO    ] publish_status: order_id=TM09202301260612185038215
[2026-06-12 18:51:48,568.568 INFO    ] [publish_status] Adding message to stream: order:TM09202301260612185038215
[2026-06-12 18:51:48,654.654 INFO    ] [publish_status] Message added to stream with ID: 1781270508668-0
[2026-06-12 18:51:48,658.658 INFO    ] Published to order:TM09202301260612185038215: {'timestamp': '2026-06-12T13:21:48.563950Z', 'server_status': 'processOrder', 'server_response': '{"delay": 0, "rstatus": true, "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"}, "SectionSKU": {"skus": [], "Header": "Thank you for bearing with us :)"}}', 'order_id': 'TM09202301260612185038215'} (ID: 1781270508668-0)
[2026-06-12 18:51:48,791.791 INFO    ] {'server_status': 'processOrder', 'server_response': {'delay': 0, 'rstatus': True, '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'}, 'SectionSKU': {'skus': [], 'Header': 'Thank you for bearing with us :)'}}, 'order_id': 'TM09202301260612185038215'}
[2026-06-12 18:51:48,793.793 INFO    ] 200
[2026-06-12 18:51:48,794.794 INFO    ] {"data":{"server_status":"processOrder","server_response":{"delay":0,"rstatus":true,"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"},"SectionSKU":{"skus":[],"Header":"Thank you for bearing with us :)"}},"order_id":"TM09202301260612185038215"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-12 18:51:48,795.795 INFO    ] {'response': {'status': True, 'msg': 'order updated successfully', 'code': 'ORDER_EXISTS', 'data': 'order updated successfully'}, 'data': {'server_status': 'processOrder', 'server_response': {'delay': 0, 'rstatus': True, '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'}, 'SectionSKU': {'skus': [], 'Header': 'Thank you for bearing with us :)'}}, 'order_id': 'TM09202301260612185038215'}}
[2026-06-12 18:51:48,797.797 INFO    ] 2026-06-12 18:51:48
[2026-06-12 18:51:48,798.798 INFO    ] None
[2026-06-12 18:51:48,799.799 INFO    ] Opening Door now
[2026-06-12 18:51:48,801.801 INFO    ] Opening Door now
[2026-06-12 18:51:48,802.802 INFO    ] 08e5d1063504bf393c26f0bfa436e9f9
[2026-06-12 18:51:48,804.804 INFO    ] 2026-06-12 18:51:48
[2026-06-12 18:51:48,805.805 INFO    ] playing audio file
[2026-06-12 18:51:48,816.816 INFO    ] 2026-06-12 18:51:48
[2026-06-12 18:51:48,817.817 INFO    ] 2026-06-12 18:51:48
[2026-06-12 18:51:51,855.855 INFO    ] 200
[2026-06-12 18:51:51,857.857 INFO    ] {"error": {"tmessage": "In Progress", "umessage": "In Progress", "data": {}, "code": 20001}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"name": "Modern Kitchens Potato waffers Cream onion 24gm", "qty": 1}, {"name": "Max protein 7 grain Protein Gochujang 30gm", "qty": 1}]}, "rstatus": false, "SectionStatus": {"Header": "Please Close Door 1", "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"}, "status": "False", "voiceNote": "Door 1 is open now", "SectionMain": {"Header": "Door Open"}}
[2026-06-12 18:51:51,859.859 INFO    ] {'SectionMain': {'Header': 'Door Open'}, 'rstatus': False, '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', 'error': {'code': 20001, 'tmessage': 'In Progress', 'umessage': 'In Progress', 'data': {}}, 'SectionSKU': {'skus': [{'name': 'Modern Kitchens Potato waffers Cream onion 24gm', 'qty': 1}, {'name': 'Max protein 7 grain Protein Gochujang 30gm', 'qty': 1}], 'Header': 'Pick the below items from the door'}}
[2026-06-12 18:51:54,909.909 INFO    ] 200
[2026-06-12 18:51:54,911.911 INFO    ] {"error": {"tmessage": "In Progress", "umessage": "In Progress", "data": {}, "code": 20001}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"name": "Modern Kitchens Potato waffers Cream onion 24gm", "qty": 1}, {"name": "Max protein 7 grain Protein Gochujang 30gm", "qty": 1}]}, "rstatus": false, "SectionStatus": {"Header": "Please Close Door 1", "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"}, "status": "False", "voiceNote": "Please close door 1", "SectionMain": {"Header": "Door Open"}}
[2026-06-12 18:51:54,912.912 INFO    ] {'SectionMain': {'Header': 'Door Open'}, 'rstatus': False, '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', 'error': {'code': 20001, 'tmessage': 'In Progress', 'umessage': 'In Progress', 'data': {}}, 'SectionSKU': {'skus': [{'name': 'Modern Kitchens Potato waffers Cream onion 24gm', 'qty': 1}, {'name': 'Max protein 7 grain Protein Gochujang 30gm', 'qty': 1}], 'Header': 'Pick the below items from the door'}}
[2026-06-12 18:51:58,141.141 INFO    ] 200
[2026-06-12 18:51:58,142.142 INFO    ] {"error": {"tmessage": "In Progress", "umessage": "In Progress", "data": {}, "code": 20001}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"name": "Modern Kitchens Potato waffers Cream onion 24gm", "qty": 1}, {"name": "Max protein 7 grain Protein Gochujang 30gm", "qty": 1}]}, "rstatus": false, "SectionStatus": {"Header": "Please Close Door 1", "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"}, "status": "False", "voiceNote": "Please close door 1", "SectionMain": {"Header": "Door Open"}}
[2026-06-12 18:51:58,143.143 INFO    ] Please close door 1
[2026-06-12 18:51:58,145.145 INFO    ] Please close door 1
[2026-06-12 18:51:58,146.146 INFO    ] 787c302d53ab591e55c034b99c7aadd2
[2026-06-12 18:51:58,148.148 INFO    ] 2026-06-12 18:51:58
[2026-06-12 18:51:58,150.150 INFO    ] playing audio file
[2026-06-12 18:51:58,160.160 INFO    ] 2026-06-12 18:51:58
[2026-06-12 18:51:58,163.163 INFO    ] publish_status: order_id=TM09202301260612185038215
[2026-06-12 18:51:58,165.165 INFO    ] [publish_status] Adding message to stream: order:TM09202301260612185038215
[2026-06-12 18:51:58,261.261 INFO    ] [publish_status] Message added to stream with ID: 1781270518273-0
[2026-06-12 18:51:58,263.263 INFO    ] Published to order:TM09202301260612185038215: {'timestamp': '2026-06-12T13:21:58.162011Z', 'server_status': 'OrderStatus', 'server_response': '{"SectionMain": {"Header": "Door Open"}, "rstatus": false, "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", "error": {"code": 20001, "tmessage": "In Progress", "umessage": "In Progress", "data": {}}, "SectionSKU": {"skus": [{"name": "Modern Kitchens Potato waffers Cream onion 24gm", "qty": 1}, {"name": "Max protein 7 grain Protein Gochujang 30gm", "qty": 1}], "Header": "Pick the below items from the door"}}', 'order_id': 'TM09202301260612185038215'} (ID: 1781270518273-0)
[2026-06-12 18:51:58,660.660 INFO    ] {'server_status': 'OrderStatus', 'server_response': {'SectionMain': {'Header': 'Door Open'}, 'rstatus': False, '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', 'error': {'code': 20001, 'tmessage': 'In Progress', 'umessage': 'In Progress', 'data': {}}, 'SectionSKU': {'skus': [{'name': 'Modern Kitchens Potato waffers Cream onion 24gm', 'qty': 1}, {'name': 'Max protein 7 grain Protein Gochujang 30gm', 'qty': 1}], 'Header': 'Pick the below items from the door'}}, 'order_id': 'TM09202301260612185038215'}
[2026-06-12 18:51:58,661.661 INFO    ] 200
[2026-06-12 18:51:58,663.663 INFO    ] {"data":{"server_status":"OrderStatus","server_response":{"SectionMain":{"Header":"Door Open"},"rstatus":false,"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","error":{"code":20001,"tmessage":"In Progress","umessage":"In Progress","data":[]},"SectionSKU":{"skus":[{"name":"Modern Kitchens Potato waffers Cream onion 24gm","qty":1},{"name":"Max protein 7 grain Protein Gochujang 30gm","qty":1}],"Header":"Pick the below items from the door"}},"order_id":"TM09202301260612185038215"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-12 18:51:58,664.664 INFO    ] {'response': {'status': True, 'msg': 'order updated successfully', 'code': 'ORDER_EXISTS', 'data': 'order updated successfully'}, 'data': {'server_status': 'OrderStatus', 'server_response': {'SectionMain': {'Header': 'Door Open'}, 'rstatus': False, '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', 'error': {'umessage': 'In Progress', 'tmessage': 'In Progress', 'code': 20001, 'data': []}, 'SectionSKU': {'skus': [{'name': 'Modern Kitchens Potato waffers Cream onion 24gm', 'qty': 1}, {'name': 'Max protein 7 grain Protein Gochujang 30gm', 'qty': 1}], 'Header': 'Pick the below items from the door'}}, 'order_id': 'TM09202301260612185038215'}}
[2026-06-12 18:51:58,666.666 INFO    ] {'SectionMain': {'Header': 'Door Open'}, 'rstatus': False, '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', 'error': {'code': 20001, 'tmessage': 'In Progress', 'umessage': 'In Progress', 'data': {}}, 'SectionSKU': {'skus': [{'name': 'Modern Kitchens Potato waffers Cream onion 24gm', 'qty': 1}, {'name': 'Max protein 7 grain Protein Gochujang 30gm', 'qty': 1}], 'Header': 'Pick the below items from the door'}}
[2026-06-12 18:52:01,706.706 INFO    ] 200
[2026-06-12 18:52:01,707.707 INFO    ] {"error": {"tmessage": "In Progress", "umessage": "In Progress", "data": {}, "code": 20001}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"name": "Modern Kitchens Potato waffers Cream onion 24gm", "qty": 1}, {"name": "Max protein 7 grain Protein Gochujang 30gm", "qty": 1}]}, "rstatus": false, "SectionStatus": {"Header": "Please Close Door 1", "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"}, "status": "False", "voiceNote": "Please close door 1", "SectionMain": {"Header": "Door Open"}}
[2026-06-12 18:52:01,709.709 INFO    ] {'SectionMain': {'Header': 'Door Open'}, 'rstatus': False, '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', 'error': {'code': 20001, 'tmessage': 'In Progress', 'umessage': 'In Progress', 'data': {}}, 'SectionSKU': {'skus': [{'name': 'Modern Kitchens Potato waffers Cream onion 24gm', 'qty': 1}, {'name': 'Max protein 7 grain Protein Gochujang 30gm', 'qty': 1}], 'Header': 'Pick the below items from the door'}}
[2026-06-12 18:52:04,759.759 INFO    ] 200
[2026-06-12 18:52:04,762.762 INFO    ] {"error": {"tmessage": "In Progress", "umessage": "In Progress", "data": {}, "code": 20001}, "delay": 1000, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"name": "Modern Kitchens Potato waffers Cream onion 24gm", "qty": 1}, {"name": "Max protein 7 grain Protein Gochujang 30gm", "qty": 1}]}, "rstatus": false, "SectionStatus": {"Header": "Door 1 is closed now", "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"}, "status": "False", "voiceNote": "Door 1 is closed now", "SectionMain": {"Header": "Door Close"}}
[2026-06-12 18:52:04,765.765 INFO    ] {'delay': 1000, 'rstatus': False, 'SectionStatus': {'UI_Header': 'DOOR 1\nIS \nCLOSED \nNOW', 'SubHeader': 'Please wait for invoice to generate', 'Header': 'Door 1 is closed now', 'Note': 'If any due amount, clear at https://go.tinymart.in'}, 'voiceNote': 'Door 1 is closed now', 'status': 'False', 'error': {'code': 20001, 'tmessage': 'In Progress', 'umessage': 'In Progress', 'data': {}}, 'SectionMain': {'Header': 'Door Close'}, 'SectionSKU': {'skus': [{'name': 'Modern Kitchens Potato waffers Cream onion 24gm', 'qty': 1}, {'name': 'Max protein 7 grain Protein Gochujang 30gm', 'qty': 1}], 'Header': 'Pick the below items from the door'}}
[2026-06-12 18:52:07,901.901 INFO    ] 200
[2026-06-12 18:52:07,902.902 INFO    ] {"error": {"tmessage": "In Progress", "umessage": "In Progress", "data": {}, "code": 20001}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"name": "Epigamia Chocolate Milkshake 200g", "qty": 2}]}, "rstatus": false, "SectionStatus": {"Header": "Please Close Door 2", "SubHeader": "Please Pick the Products and close the door", "UI_Header": "DOOR 2\nIS \nOPEN \nNOW", "Note": "Please Close the door after picking up products"}, "status": "False", "voiceNote": "Door 2 is open now", "SectionMain": {"Header": "Door Open"}}
[2026-06-12 18:52:07,904.904 INFO    ] Door 2 is open now
[2026-06-12 18:52:07,906.906 INFO    ] Door 2 is open now
[2026-06-12 18:52:07,907.907 INFO    ] c0b0c0995d30574d97edd3ece08dfc12
[2026-06-12 18:52:07,914.914 INFO    ] 2026-06-12 18:52:07
[2026-06-12 18:52:07,915.915 INFO    ] playing audio file
[2026-06-12 18:52:07,927.927 INFO    ] 2026-06-12 18:52:07
[2026-06-12 18:52:07,929.929 INFO    ] publish_status: order_id=TM09202301260612185038215
[2026-06-12 18:52:07,931.931 INFO    ] [publish_status] Adding message to stream: order:TM09202301260612185038215
[2026-06-12 18:52:08,026.026 INFO    ] [publish_status] Message added to stream with ID: 1781270528041-0
[2026-06-12 18:52:08,027.027 INFO    ] Published to order:TM09202301260612185038215: {'timestamp': '2026-06-12T13:22:07.928491Z', 'server_status': 'OrderStatus', 'server_response': '{"SectionMain": {"Header": "Door Open"}, "rstatus": false, "SectionStatus": {"UI_Header": "DOOR 2\\nIS \\nOPEN \\nNOW", "SubHeader": "Please Pick the Products and close the door", "Header": "Please Close Door 2", "Note": "Please Close the door after picking up products"}, "voiceNote": "Door 2 is open now", "status": "False", "error": {"code": 20001, "tmessage": "In Progress", "umessage": "In Progress", "data": {}}, "SectionSKU": {"skus": [{"name": "Epigamia Chocolate Milkshake 200g", "qty": 2}], "Header": "Pick the below items from the door"}}', 'order_id': 'TM09202301260612185038215'} (ID: 1781270528041-0)
[2026-06-12 18:52:08,431.431 INFO    ] {'server_status': 'OrderStatus', 'server_response': {'SectionMain': {'Header': 'Door Open'}, 'rstatus': False, 'SectionStatus': {'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'SubHeader': 'Please Pick the Products and close the door', 'Header': 'Please Close Door 2', 'Note': 'Please Close the door after picking up products'}, 'voiceNote': 'Door 2 is open now', 'status': 'False', 'error': {'code': 20001, 'tmessage': 'In Progress', 'umessage': 'In Progress', 'data': {}}, 'SectionSKU': {'skus': [{'name': 'Epigamia Chocolate Milkshake 200g', 'qty': 2}], 'Header': 'Pick the below items from the door'}}, 'order_id': 'TM09202301260612185038215'}
[2026-06-12 18:52:08,433.433 INFO    ] 200
[2026-06-12 18:52:08,434.434 INFO    ] {"data":{"server_status":"OrderStatus","server_response":{"SectionMain":{"Header":"Door Open"},"rstatus":false,"SectionStatus":{"UI_Header":"DOOR 2\nIS \nOPEN \nNOW","SubHeader":"Please Pick the Products and close the door","Header":"Please Close Door 2","Note":"Please Close the door after picking up products"},"voiceNote":"Door 2 is open now","status":"false","error":{"code":20001,"tmessage":"In Progress","umessage":"In Progress","data":[]},"SectionSKU":{"skus":[{"name":"Epigamia Chocolate Milkshake 200g","qty":2}],"Header":"Pick the below items from the door"}},"order_id":"TM09202301260612185038215"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-12 18:52:08,436.436 INFO    ] {'response': {'status': True, 'msg': 'order updated successfully', 'code': 'ORDER_EXISTS', 'data': 'order updated successfully'}, 'data': {'server_status': 'OrderStatus', 'server_response': {'SectionMain': {'Header': 'Door Open'}, 'rstatus': False, 'SectionStatus': {'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'SubHeader': 'Please Pick the Products and close the door', 'Header': 'Please Close Door 2', 'Note': 'Please Close the door after picking up products'}, 'voiceNote': 'Door 2 is open now', 'status': 'false', 'error': {'umessage': 'In Progress', 'tmessage': 'In Progress', 'code': 20001, 'data': []}, 'SectionSKU': {'skus': [{'name': 'Epigamia Chocolate Milkshake 200g', 'qty': 2}], 'Header': 'Pick the below items from the door'}}, 'order_id': 'TM09202301260612185038215'}}
[2026-06-12 18:52:08,438.438 INFO    ] {'SectionMain': {'Header': 'Door Open'}, 'rstatus': False, 'SectionStatus': {'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'SubHeader': 'Please Pick the Products and close the door', 'Header': 'Please Close Door 2', 'Note': 'Please Close the door after picking up products'}, 'voiceNote': 'Door 2 is open now', 'status': 'False', 'error': {'code': 20001, 'tmessage': 'In Progress', 'umessage': 'In Progress', 'data': {}}, 'SectionSKU': {'skus': [{'name': 'Epigamia Chocolate Milkshake 200g', 'qty': 2}], 'Header': 'Pick the below items from the door'}}
[2026-06-12 18:52:11,483.483 INFO    ] 200
[2026-06-12 18:52:11,484.484 INFO    ] {"error": {"tmessage": "In Progress", "umessage": "In Progress", "data": {}, "code": 20001}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"name": "Epigamia Chocolate Milkshake 200g", "qty": 2}]}, "rstatus": false, "SectionStatus": {"Header": "Please Close Door 2", "SubHeader": "Please Pick the Products and close the door", "UI_Header": "DOOR 2\nIS \nOPEN \nNOW", "Note": "Please Close the door after picking up products"}, "status": "False", "voiceNote": "Please close door 2", "SectionMain": {"Header": "Door Open"}}
[2026-06-12 18:52:11,486.486 INFO    ] {'SectionMain': {'Header': 'Door Open'}, 'rstatus': False, 'SectionStatus': {'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'SubHeader': 'Please Pick the Products and close the door', 'Header': 'Please Close Door 2', 'Note': 'Please Close the door after picking up products'}, 'voiceNote': 'Please close door 2', 'status': 'False', 'error': {'code': 20001, 'tmessage': 'In Progress', 'umessage': 'In Progress', 'data': {}}, 'SectionSKU': {'skus': [{'name': 'Epigamia Chocolate Milkshake 200g', 'qty': 2}], 'Header': 'Pick the below items from the door'}}
[2026-06-12 18:52:14,534.534 INFO    ] 200
[2026-06-12 18:52:14,536.536 INFO    ] {"error": {"tmessage": "In Progress", "umessage": "In Progress", "data": {}, "code": 20001}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"name": "Epigamia Chocolate Milkshake 200g", "qty": 2}]}, "rstatus": false, "SectionStatus": {"Header": "Please Close Door 2", "SubHeader": "Please Pick the Products and close the door", "UI_Header": "DOOR 2\nIS \nOPEN \nNOW", "Note": "Please Close the door after picking up products"}, "status": "False", "voiceNote": "Please close door 2", "SectionMain": {"Header": "Door Open"}}
[2026-06-12 18:52:14,537.537 INFO    ] {'SectionMain': {'Header': 'Door Open'}, 'rstatus': False, 'SectionStatus': {'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'SubHeader': 'Please Pick the Products and close the door', 'Header': 'Please Close Door 2', 'Note': 'Please Close the door after picking up products'}, 'voiceNote': 'Please close door 2', 'status': 'False', 'error': {'code': 20001, 'tmessage': 'In Progress', 'umessage': 'In Progress', 'data': {}}, 'SectionSKU': {'skus': [{'name': 'Epigamia Chocolate Milkshake 200g', 'qty': 2}], 'Header': 'Pick the below items from the door'}}
[2026-06-12 18:52:17,566.566 INFO    ] 200
[2026-06-12 18:52:17,568.568 INFO    ] {"error": {"tmessage": "In Progress", "umessage": "In Progress", "data": {}, "code": 20001}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"name": "Epigamia Chocolate Milkshake 200g", "qty": 2}]}, "rstatus": false, "SectionStatus": {"Header": "Please Close Door 2", "SubHeader": "Please Pick the Products and close the door", "UI_Header": "DOOR 2\nIS \nOPEN \nNOW", "Note": "Please Close the door after picking up products"}, "status": "False", "voiceNote": "Please close door 2", "SectionMain": {"Header": "Door Open"}}
[2026-06-12 18:52:17,570.570 INFO    ] Please close door 2
[2026-06-12 18:52:17,571.571 INFO    ] Please close door 2
[2026-06-12 18:52:17,572.572 INFO    ] 758e46684c76e887a5f58d4738034bed
[2026-06-12 18:52:17,574.574 INFO    ] 2026-06-12 18:52:17
[2026-06-12 18:52:17,575.575 INFO    ] playing audio file
[2026-06-12 18:52:17,585.585 INFO    ] 2026-06-12 18:52:17
[2026-06-12 18:52:17,587.587 INFO    ] publish_status: order_id=TM09202301260612185038215
[2026-06-12 18:52:17,588.588 INFO    ] [publish_status] Adding message to stream: order:TM09202301260612185038215
[2026-06-12 18:52:17,685.685 INFO    ] [publish_status] Message added to stream with ID: 1781270537700-0
[2026-06-12 18:52:17,686.686 INFO    ] Published to order:TM09202301260612185038215: {'timestamp': '2026-06-12T13:22:17.586301Z', 'server_status': 'OrderStatus', 'server_response': '{"SectionMain": {"Header": "Door Open"}, "rstatus": false, "SectionStatus": {"UI_Header": "DOOR 2\\nIS \\nOPEN \\nNOW", "SubHeader": "Please Pick the Products and close the door", "Header": "Please Close Door 2", "Note": "Please Close the door after picking up products"}, "voiceNote": "Please close door 2", "status": "False", "error": {"code": 20001, "tmessage": "In Progress", "umessage": "In Progress", "data": {}}, "SectionSKU": {"skus": [{"name": "Epigamia Chocolate Milkshake 200g", "qty": 2}], "Header": "Pick the below items from the door"}}', 'order_id': 'TM09202301260612185038215'} (ID: 1781270537700-0)
[2026-06-12 18:52:19,235.235 INFO    ] {'server_status': 'OrderStatus', 'server_response': {'SectionMain': {'Header': 'Door Open'}, 'rstatus': False, 'SectionStatus': {'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'SubHeader': 'Please Pick the Products and close the door', 'Header': 'Please Close Door 2', 'Note': 'Please Close the door after picking up products'}, 'voiceNote': 'Please close door 2', 'status': 'False', 'error': {'code': 20001, 'tmessage': 'In Progress', 'umessage': 'In Progress', 'data': {}}, 'SectionSKU': {'skus': [{'name': 'Epigamia Chocolate Milkshake 200g', 'qty': 2}], 'Header': 'Pick the below items from the door'}}, 'order_id': 'TM09202301260612185038215'}
[2026-06-12 18:52:19,237.237 INFO    ] 200
[2026-06-12 18:52:19,238.238 INFO    ] {"data":{"server_status":"OrderStatus","server_response":{"SectionMain":{"Header":"Door Open"},"rstatus":false,"SectionStatus":{"UI_Header":"DOOR 2\nIS \nOPEN \nNOW","SubHeader":"Please Pick the Products and close the door","Header":"Please Close Door 2","Note":"Please Close the door after picking up products"},"voiceNote":"Please close door 2","status":"false","error":{"code":20001,"tmessage":"In Progress","umessage":"In Progress","data":[]},"SectionSKU":{"skus":[{"name":"Epigamia Chocolate Milkshake 200g","qty":2}],"Header":"Pick the below items from the door"}},"order_id":"TM09202301260612185038215"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-12 18:52:19,240.240 INFO    ] {'response': {'status': True, 'msg': 'order updated successfully', 'code': 'ORDER_EXISTS', 'data': 'order updated successfully'}, 'data': {'server_status': 'OrderStatus', 'server_response': {'SectionMain': {'Header': 'Door Open'}, 'rstatus': False, 'SectionStatus': {'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'SubHeader': 'Please Pick the Products and close the door', 'Header': 'Please Close Door 2', 'Note': 'Please Close the door after picking up products'}, 'voiceNote': 'Please close door 2', 'status': 'false', 'error': {'umessage': 'In Progress', 'tmessage': 'In Progress', 'code': 20001, 'data': []}, 'SectionSKU': {'skus': [{'name': 'Epigamia Chocolate Milkshake 200g', 'qty': 2}], 'Header': 'Pick the below items from the door'}}, 'order_id': 'TM09202301260612185038215'}}
[2026-06-12 18:52:19,242.242 INFO    ] {'SectionMain': {'Header': 'Door Open'}, 'rstatus': False, 'SectionStatus': {'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'SubHeader': 'Please Pick the Products and close the door', 'Header': 'Please Close Door 2', 'Note': 'Please Close the door after picking up products'}, 'voiceNote': 'Please close door 2', 'status': 'False', 'error': {'code': 20001, 'tmessage': 'In Progress', 'umessage': 'In Progress', 'data': {}}, 'SectionSKU': {'skus': [{'name': 'Epigamia Chocolate Milkshake 200g', 'qty': 2}], 'Header': 'Pick the below items from the door'}}
[2026-06-12 18:52:22,289.289 INFO    ] 200
[2026-06-12 18:52:22,291.291 INFO    ] {"delay": 100, "SectionSKU": {"Header": "If you like us, tell others... else tell us", "skus": []}, "rstatus": true, "SectionStatus": {"Header": " Order is complete ", "SubHeader": "Please wait for invoice to generate", "UI_Header": "", "Note": "If any due amount, clear at https://go.tinymart.in"}, "status": "True", "voiceNote": "Transaction Completed", "SectionMain": {"Header": "Door Closed"}}
[2026-06-12 18:52:22,294.294 INFO    ] {'delay': 100, 'rstatus': True, 'SectionStatus': {'UI_Header': '', 'SubHeader': 'Please wait for invoice to generate', 'Header': ' Order is complete ', 'Note': 'If any due amount, clear at https://go.tinymart.in'}, 'voiceNote': 'Transaction Completed', 'status': 'True', 'SectionMain': {'Header': 'Door Closed'}, 'SectionSKU': {'skus': [], 'Header': 'If you like us, tell others... else tell us'}}
[2026-06-12 18:52:22,297.297 INFO    ] 2026-06-12 18:52:22
[2026-06-12 18:52:22,299.299 INFO    ] Order Completed 
[2026-06-12 18:52:22,301.301 INFO    ] Order Completed 
[2026-06-12 18:52:22,304.304 INFO    ] 193c8a8cf3bf490ccfe0b23598544a83
[2026-06-12 18:52:22,306.306 INFO    ] 2026-06-12 18:52:22
[2026-06-12 18:52:22,308.308 INFO    ] playing audio file
[2026-06-12 18:52:22,325.325 INFO    ] 2026-06-12 18:52:22
[2026-06-12 18:52:22,328.328 INFO    ] {'delay': 100, 'rstatus': True, 'SectionStatus': {'UI_Header': '', 'SubHeader': 'Please wait for invoice to generate', 'Header': ' Order is complete ', 'Note': 'If any due amount, clear at https://go.tinymart.in'}, 'voiceNote': 'Transaction Completed', 'status': 'True', 'SectionMain': {'Header': 'Door Closed'}, 'SectionSKU': {'skus': [], 'Header': 'If you like us, tell others... else tell us'}}
[2026-06-12 18:52:22,332.332 INFO    ] 2026-06-12 18:52:22
[2026-06-12 18:52:23,152.152 INFO    ] 200
[2026-06-12 18:52:23,154.154 INFO    ] {"bill_amount": 106, "imei": "TM09202301", "skus": [{"qty": 1, "skuid": "4500688", "sku_total": 10, "offer_id": "", "unit_price": "10", "tray_id": "13", "door_id": "", "mrp": "10", "image_url": "https://images.tinymart.in/product/4500688-125.webp", "name": "Modern Kitchens Potato waffers Cream onion 24gm per peice"}, {"qty": 1, "skuid": "4500693", "sku_total": 20, "offer_id": "", "unit_price": "20", "tray_id": "24", "door_id": "", "mrp": "20", "image_url": "https://images.tinymart.in/product/4500693-9518.webp", "name": "Max protein 7 grain Protein Gochujang 30gm per peice"}, {"qty": "2", "skuid": "166327", "offer_desc": "5% OFF", "sku_total": 72, "offer_id": "166327_0901", "unit_price": "36", "tray_id": "42", "door_id": "", "mrp": "38", "image_url": "https://images.tinymart.in/product/166327-5644.jpg", "name": "Epigamia Chocolate Milkshake 200g per peice"}], "rstatus": true, "orderId": "TM09202301260612185038215", "anomaly": 0, "res": true, "total_amount": 102, "cart_offer_desc": "", "order_status": "", "userId": "8123896930"}
[2026-06-12 18:52:23,158.158 INFO    ] {'bill_amount': 106, 'skus': [{'offer_id': '', 'image_url': 'https://images.tinymart.in/product/4500688-125.webp', 'door_id': '', 'qty': 1, 'name': 'Modern Kitchens Potato waffers Cream onion 24gm per peice', 'tray_id': '13', 'mrp': '10', 'sku_total': 10, 'unit_price': '10', 'skuid': '4500688'}, {'offer_id': '', 'image_url': 'https://images.tinymart.in/product/4500693-9518.webp', 'door_id': '', 'qty': 1, 'name': 'Max protein 7 grain Protein Gochujang 30gm per peice', 'tray_id': '24', 'mrp': '20', 'sku_total': 20, 'unit_price': '20', 'skuid': '4500693'}, {'offer_desc': '5% OFF', 'offer_id': '166327_0901', 'door_id': '', 'qty': '2', 'name': 'Epigamia Chocolate Milkshake 200g per peice', 'tray_id': '42', 'mrp': '38', 'image_url': 'https://images.tinymart.in/product/166327-5644.jpg', 'sku_total': 72, 'unit_price': '36', 'skuid': '166327'}], 'res': True, 'imei': 'TM09202301', 'cart_offer_desc': '', 'rstatus': True, 'anomaly': 0, 'order_status': '', 'orderId': 'TM09202301260612185038215', 'userId': '8123896930', 'total_amount': 102}
[2026-06-12 18:52:23,161.161 INFO    ] {'bill_amount': 106, 'skus': [{'offer_id': '', 'image_url': 'https://images.tinymart.in/product/4500688-125.webp', 'door_id': '', 'qty': 1, 'name': 'Modern Kitchens Potato waffers Cream onion 24gm per peice', 'tray_id': '13', 'mrp': '10', 'sku_total': 10, 'unit_price': '10', 'skuid': '4500688'}, {'offer_id': '', 'image_url': 'https://images.tinymart.in/product/4500693-9518.webp', 'door_id': '', 'qty': 1, 'name': 'Max protein 7 grain Protein Gochujang 30gm per peice', 'tray_id': '24', 'mrp': '20', 'sku_total': 20, 'unit_price': '20', 'skuid': '4500693'}, {'offer_desc': '5% OFF', 'offer_id': '166327_0901', 'door_id': '', 'qty': '2', 'name': 'Epigamia Chocolate Milkshake 200g per peice', 'tray_id': '42', 'mrp': '38', 'image_url': 'https://images.tinymart.in/product/166327-5644.jpg', 'sku_total': 72, 'unit_price': '36', 'skuid': '166327'}], 'res': True, 'imei': 'TM09202301', 'cart_offer_desc': '', 'rstatus': True, 'anomaly': 0, 'order_status': '', 'orderId': 'TM09202301260612185038215', 'userId': '8123896930', 'total_amount': 102}
[2026-06-12 18:52:23,164.164 INFO    ] 2026-06-12 18:52:23
[2026-06-12 18:52:23,167.167 INFO    ] 2026-06-12 18:52:23
[2026-06-12 18:52:23,170.170 INFO    ] 102
[2026-06-12 18:52:23,172.172 INFO    ] 2026-06-12 18:52:23
[2026-06-12 18:52:23,176.176 INFO    ] 2026-06-12 18:52:23
[2026-06-12 18:52:23,178.178 INFO    ]  Your Bill Amount is 102
[2026-06-12 18:52:23,181.181 INFO    ]  Your Bill Amount is 102
[2026-06-12 18:52:23,184.184 INFO    ] c95c6b4b91ebff91db4d7fa0dd72b92c
[2026-06-12 18:52:23,195.195 INFO    ] 2026-06-12 18:52:23
[2026-06-12 18:52:23,199.199 INFO    ] playing audio file
[2026-06-12 18:52:23,218.218 INFO    ] 2026-06-12 18:52:23
[2026-06-12 18:52:23,222.222 INFO    ] 2026-06-12 18:52:23
[2026-06-12 18:52:23,226.226 INFO    ] publish_status: order_id=TM09202301260612185038215
[2026-06-12 18:52:23,229.229 INFO    ] [publish_status] Adding message to stream: order:TM09202301260612185038215
[2026-06-12 18:52:23,301.301 INFO    ] [publish_status] Message added to stream with ID: 1781270543316-0
[2026-06-12 18:52:23,302.302 INFO    ] Published to order:TM09202301260612185038215: {'timestamp': '2026-06-12T13:22:23.223912Z', 'server_status': 'invoiceOrder', 'server_response': '{"bill_amount": 106, "skus": [{"offer_id": "", "image_url": "https://images.tinymart.in/product/4500688-125.webp", "door_id": "", "qty": 1, "name": "Modern Kitchens Potato waffers Cream onion 24gm per peice", "tray_id": "13", "mrp": "10", "sku_total": 10, "unit_price": "10", "skuid": "4500688"}, {"offer_id": "", "image_url": "https://images.tinymart.in/product/4500693-9518.webp", "door_id": "", "qty": 1, "name": "Max protein 7 grain Protein Gochujang 30gm per peice", "tray_id": "24", "mrp": "20", "sku_total": 20, "unit_price": "20", "skuid": "4500693"}, {"offer_desc": "5% OFF", "offer_id": "166327_0901", "door_id": "", "qty": "2", "name": "Epigamia Chocolate Milkshake 200g per peice", "tray_id": "42", "mrp": "38", "image_url": "https://images.tinymart.in/product/166327-5644.jpg", "sku_total": 72, "unit_price": "36", "skuid": "166327"}], "res": true, "imei": "TM09202301", "cart_offer_desc": "", "rstatus": true, "anomaly": 0, "order_status": "", "orderId": "TM09202301260612185038215", "userId": "8123896930", "total_amount": 102}', 'order_id': 'TM09202301260612185038215'} (ID: 1781270543316-0)
[2026-06-12 18:52:23,875.875 INFO    ] {'server_status': 'invoiceOrder', 'server_response': {'bill_amount': 106, 'skus': [{'offer_id': '', 'image_url': 'https://images.tinymart.in/product/4500688-125.webp', 'door_id': '', 'qty': 1, 'name': 'Modern Kitchens Potato waffers Cream onion 24gm per peice', 'tray_id': '13', 'mrp': '10', 'sku_total': 10, 'unit_price': '10', 'skuid': '4500688'}, {'offer_id': '', 'image_url': 'https://images.tinymart.in/product/4500693-9518.webp', 'door_id': '', 'qty': 1, 'name': 'Max protein 7 grain Protein Gochujang 30gm per peice', 'tray_id': '24', 'mrp': '20', 'sku_total': 20, 'unit_price': '20', 'skuid': '4500693'}, {'offer_desc': '5% OFF', 'offer_id': '166327_0901', 'door_id': '', 'qty': '2', 'name': 'Epigamia Chocolate Milkshake 200g per peice', 'tray_id': '42', 'mrp': '38', 'image_url': 'https://images.tinymart.in/product/166327-5644.jpg', 'sku_total': 72, 'unit_price': '36', 'skuid': '166327'}], 'res': True, 'imei': 'TM09202301', 'cart_offer_desc': '', 'rstatus': True, 'anomaly': 0, 'order_status': '', 'orderId': 'TM09202301260612185038215', 'userId': '8123896930', 'total_amount': 102}, 'order_id': 'TM09202301260612185038215'}
[2026-06-12 18:52:23,876.876 INFO    ] 200
[2026-06-12 18:52:23,878.878 INFO    ] {"data":{"server_status":"invoiceOrder","server_response":{"bill_amount":106,"skus":[{"offer_id":"","image_url":"https:\/\/images.tinymart.in\/product\/4500688-125.webp","door_id":"","qty":1,"name":"Modern Kitchens Potato waffers Cream onion 24gm per peice","tray_id":"13","mrp":"10","sku_total":10,"unit_price":"10","skuid":"4500688"},{"offer_id":"","image_url":"https:\/\/images.tinymart.in\/product\/4500693-9518.webp","door_id":"","qty":1,"name":"Max protein 7 grain Protein Gochujang 30gm per peice","tray_id":"24","mrp":"20","sku_total":20,"unit_price":"20","skuid":"4500693"},{"offer_desc":"5% OFF","offer_id":"166327_0901","door_id":"","qty":"2","name":"Epigamia Chocolate Milkshake 200g per peice","tray_id":"42","mrp":"38","image_url":"https:\/\/images.tinymart.in\/product\/166327-5644.jpg","sku_total":72,"unit_price":"36","skuid":"166327"}],"res":true,"imei":"TM09202301","cart_offer_desc":"","rstatus":true,"anomaly":0,"order_status":"","orderId":"TM09202301260612185038215","userId":"8123896930","total_amount":102},"order_id":"TM09202301260612185038215"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-12 18:52:23,880.880 INFO    ] {'response': {'status': True, 'msg': 'order updated successfully', 'code': 'ORDER_EXISTS', 'data': 'order updated successfully'}, 'data': {'server_status': 'invoiceOrder', 'server_response': {'bill_amount': 106, 'skus': [{'offer_id': '', 'name': 'Modern Kitchens Potato waffers Cream onion 24gm per peice', 'door_id': '', 'qty': 1, 'tray_id': '13', 'mrp': '10', 'skuid': '4500688', 'image_url': 'https://images.tinymart.in/product/4500688-125.webp', 'unit_price': '10', 'sku_total': 10}, {'offer_id': '', 'name': 'Max protein 7 grain Protein Gochujang 30gm per peice', 'door_id': '', 'qty': 1, 'tray_id': '24', 'mrp': '20', 'skuid': '4500693', 'image_url': 'https://images.tinymart.in/product/4500693-9518.webp', 'unit_price': '20', 'sku_total': 20}, {'offer_desc': '5% OFF', 'offer_id': '166327_0901', 'door_id': '', 'qty': '2', 'unit_price': '36', 'tray_id': '42', 'mrp': '38', 'skuid': '166327', 'image_url': 'https://images.tinymart.in/product/166327-5644.jpg', 'name': 'Epigamia Chocolate Milkshake 200g per peice', 'sku_total': 72}], 'orderId': 'TM09202301260612185038215', 'imei': 'TM09202301', 'cart_offer_desc': '', 'rstatus': True, 'anomaly': 0, 'order_status': '', 'res': True, 'userId': '8123896930', 'total_amount': 102}, 'order_id': 'TM09202301260612185038215'}}
[2026-06-12 18:52:23,882.882 INFO    ] {'response': {'status': True, 'msg': 'order updated successfully', 'code': 'ORDER_EXISTS', 'data': 'order updated successfully'}, 'data': {'server_status': 'invoiceOrder', 'server_response': {'bill_amount': 106, 'skus': [{'offer_id': '', 'name': 'Modern Kitchens Potato waffers Cream onion 24gm per peice', 'door_id': '', 'qty': 1, 'tray_id': '13', 'mrp': '10', 'skuid': '4500688', 'image_url': 'https://images.tinymart.in/product/4500688-125.webp', 'unit_price': '10', 'sku_total': 10}, {'offer_id': '', 'name': 'Max protein 7 grain Protein Gochujang 30gm per peice', 'door_id': '', 'qty': 1, 'tray_id': '24', 'mrp': '20', 'skuid': '4500693', 'image_url': 'https://images.tinymart.in/product/4500693-9518.webp', 'unit_price': '20', 'sku_total': 20}, {'offer_desc': '5% OFF', 'offer_id': '166327_0901', 'door_id': '', 'qty': '2', 'unit_price': '36', 'tray_id': '42', 'mrp': '38', 'skuid': '166327', 'image_url': 'https://images.tinymart.in/product/166327-5644.jpg', 'name': 'Epigamia Chocolate Milkshake 200g per peice', 'sku_total': 72}], 'orderId': 'TM09202301260612185038215', 'imei': 'TM09202301', 'cart_offer_desc': '', 'rstatus': True, 'anomaly': 0, 'order_status': '', 'res': True, 'userId': '8123896930', 'total_amount': 102}, 'order_id': 'TM09202301260612185038215'}}
[2026-06-12 18:52:23,884.884 INFO    ] 2026-06-12 18:52:23
[2026-06-12 18:52:24,521.521 INFO    ] 200
[2026-06-12 18:52:24,522.522 INFO    ] {"order_items": [], "tray_sync": ["no_entry", "no_entry", "no_entry", "no_entry", "no_entry", "no_entry"], "orders": [], "order_items_synced": [], "orders_synced": [], "orders_data_synced": [], "status": true, "orders_data": [], "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"]}
[2026-06-12 18:52:24,524.524 INFO    ] 2026-06-12 18:52:24
[2026-06-12 18:52:24,611.611 INFO    ] 200
[2026-06-12 18:52:24,612.612 INFO    ] True
[2026-06-12 18:52:24,614.614 INFO    ] cleanup_start_order_file_after_processing: order_id=TM09202301260612185038215
[2026-06-12 18:52:24,622.622 INFO    ] start order file deleted
[2026-06-12 18:52:24,624.624 INFO    ] Checking for system updates...
[2026-06-12 18:52:24,645.645 INFO    ] 200
[2026-06-12 18:52:24,646.646 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:52:24,675.675 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 18:52:24,677.677 INFO    ] No update needed
[2026-06-12 18:52:24,678.678 INFO    ] Checking for camera pi updates...
[2026-06-12 18:52:24,697.697 INFO    ] 200
[2026-06-12 18:52:24,699.699 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:52:24,722.722 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 18:52:24,768.768 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 18:52:24,770.770 INFO    ] No camera update needed
[2026-06-12 18:52:24,771.771 INFO    ] Script finished. Safe exiting...
[2026-06-12 18:52:24,772.772 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 18:52:24,776.776 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 18:52:24,778.778 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 18:52:26,818.818 INFO    ] ================================================
[2026-06-12 18:52:26,834.834 INFO    ] Launching Daemon at Fri Jun 12 18:52:26 IST 2026
[2026-06-12 18:52:26,846.846 INFO    ] ================================================
[2026-06-12 18:52:27,216.216 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 18:52:27
[2026-06-12 18:52:27,558.558 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 18:52:27,712.712 INFO    ] Initializing speech engine...
[2026-06-12 18:52:27,718.718 INFO    ] 2026-06-12 18:52:27
[2026-06-12 18:52:27,929.929 INFO    ] 2026-06-12 18:52:27
[2026-06-12 18:52:27,959.959 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 18:52:28,147.147 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 18:52:28,159.159 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 18:52:28,340.340 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 18:52:28,380.380 INFO    ] time= 12/06/2026 18:52:28
[2026-06-12 18:52:28,385.385 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 18:52:28,387.387 INFO    ] Checking for existing commands in stream...
[2026-06-12 18:52:28,455.455 INFO    ] No existing commands found in stream
[2026-06-12 18:52:33,463.463 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 18:52:33,465.465 INFO    ] Waiting 3.24 seconds before fallback handling...
[2026-06-12 18:52:37,175.175 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 18:52:37,176.176 INFO    ] Checking for system updates...
[2026-06-12 18:52:37,197.197 INFO    ] 200
[2026-06-12 18:52:37,199.199 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:52:37,229.229 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 18:52:37,230.230 INFO    ] No update needed
[2026-06-12 18:52:37,232.232 INFO    ] Checking for camera pi updates...
[2026-06-12 18:52:37,251.251 INFO    ] 200
[2026-06-12 18:52:37,253.253 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:52:37,276.276 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 18:52:37,317.317 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 18:52:37,318.318 INFO    ] No camera update needed
[2026-06-12 18:52:37,320.320 INFO    ] Script finished. Safe exiting...
[2026-06-12 18:52:37,321.321 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 18:52:37,325.325 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 18:52:37,328.328 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 18:52:39,367.367 INFO    ] ================================================
[2026-06-12 18:52:39,383.383 INFO    ] Launching Daemon at Fri Jun 12 18:52:39 IST 2026
[2026-06-12 18:52:39,394.394 INFO    ] ================================================
[2026-06-12 18:52:39,731.731 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 18:52:39
[2026-06-12 18:52:40,045.045 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 18:52:40,196.196 INFO    ] Initializing speech engine...
[2026-06-12 18:52:40,201.201 INFO    ] 2026-06-12 18:52:40
[2026-06-12 18:52:40,418.418 INFO    ] 2026-06-12 18:52:40
[2026-06-12 18:52:40,441.441 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 18:52:40,649.649 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 18:52:40,658.658 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 18:52:40,793.793 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 18:52:40,860.860 INFO    ] time= 12/06/2026 18:52:40
[2026-06-12 18:52:40,884.884 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 18:52:40,902.902 INFO    ] Checking for existing commands in stream...
[2026-06-12 18:52:40,980.980 INFO    ] No existing commands found in stream
[2026-06-12 18:52:44,994.994 INFO    ] Received new command: ID=1781270564773-0
[2026-06-12 18:52:44,996.996 INFO    ] process_and_cleanup_command: msg_id=1781270564773-0
[2026-06-12 18:52:44,998.998 INFO    ] is_command_expired: timestamp=2026-06-12T13:22:45.352Z, expiry=30s
[2026-06-12 18:52:45,088.088 INFO    ] Command removed from stream: 1781270564773-0. returning for processing...
[2026-06-12 18:52:45,090.090 INFO    ] ***** get_valid_command
[2026-06-12 18:52:45,093.093 INFO    ] {'data': '{"request_id":"start-order-1781270565352-3o96479ha","orderId":"TM09202301260612185150481","is_vending":false}', 'timestamp': '2026-06-12T13:22:45.352Z', 'timeout': '10', 'command': 'start-order', 'source': 'webapp'}
[2026-06-12 18:52:45,095.095 INFO    ] ***** Parsed command data: {'is_vending': False, 'request_id': 'start-order-1781270565352-3o96479ha', 'orderId': 'TM09202301260612185150481'}
[2026-06-12 18:52:45,097.097 INFO    ] Handling start order...
[2026-06-12 18:52:45,100.100 INFO    ] handle_start_order_command
[2026-06-12 18:52:45,105.105 INFO    ] _send_start_order_success: request_id=start-order-1781270565352-3o96479ha, order_id=TM09202301260612185150481
[2026-06-12 18:52:45,108.108 INFO    ] [_send_start_order_success] Adding message to stream: machine:TM09202301
[2026-06-12 18:52:45,173.173 INFO    ] [_send_start_order_success] Message added to stream with ID: 1781270565188-0
[2026-06-12 18:52:45,175.175 INFO    ] ✅ Start-order command succeeded - order locked, waiting for process-order command
[2026-06-12 18:52:45,177.177 INFO    ] Checking for system updates...
[2026-06-12 18:52:45,222.222 INFO    ] 200
[2026-06-12 18:52:45,225.225 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:52:45,276.276 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 18:52:45,279.279 INFO    ] No update needed
[2026-06-12 18:52:45,282.282 INFO    ] Checking for camera pi updates...
[2026-06-12 18:52:45,316.316 INFO    ] 200
[2026-06-12 18:52:45,318.318 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:52:45,360.360 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 18:52:45,414.414 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 18:52:45,417.417 INFO    ] No camera update needed
[2026-06-12 18:52:45,420.420 INFO    ] Script finished. Safe exiting...
[2026-06-12 18:52:45,422.422 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 18:52:45,429.429 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 18:52:45,435.435 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 18:52:47,469.469 INFO    ] ================================================
[2026-06-12 18:52:47,485.485 INFO    ] Launching Daemon at Fri Jun 12 18:52:47 IST 2026
[2026-06-12 18:52:47,497.497 INFO    ] ================================================
[2026-06-12 18:52:47,860.860 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 18:52:47
[2026-06-12 18:52:48,202.202 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 18:52:48,354.354 INFO    ] Initializing speech engine...
[2026-06-12 18:52:48,360.360 INFO    ] 2026-06-12 18:52:48
[2026-06-12 18:52:48,566.566 INFO    ] 2026-06-12 18:52:48
[2026-06-12 18:52:48,596.596 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 18:52:48,782.782 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 18:52:48,791.791 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 18:52:48,976.976 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 18:52:49,012.012 INFO    ] time= 12/06/2026 18:52:48
[2026-06-12 18:52:49,042.042 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 18:52:49,055.055 INFO    ] Checking for existing commands in stream...
[2026-06-12 18:52:49,132.132 INFO    ] Found 2 existing command(s) in stream
[2026-06-12 18:52:49,135.135 INFO    ] Checking historical command: ID=1781270565188-0
[2026-06-12 18:52:49,161.161 INFO    ] process_and_cleanup_command: msg_id=1781270565188-0
[2026-06-12 18:52:49,163.163 INFO    ] is_command_expired: timestamp=2026-06-12T13:22:45.106523Z, expiry=30s
[2026-06-12 18:52:49,274.274 INFO    ] Command removed from stream: 1781270565188-0. returning for processing...
[2026-06-12 18:52:49,277.277 INFO    ] ***** get_valid_command
[2026-06-12 18:52:49,283.283 INFO    ] {'imei': 'TM09202301', 'metadata_request_id': 'start-order-1781270565352-3o96479ha', 'status': 'success', 'message_type': 'command_response', 'metadata_order_id': 'TM09202301260612185150481', 'timestamp': '2026-06-12T13:22:45.106523Z', 'message': 'start-order success'}
[2026-06-12 18:52:49,287.287 INFO    ] Checking historical command: ID=1781270566727-0
[2026-06-12 18:52:49,290.290 INFO    ] process_and_cleanup_command: msg_id=1781270566727-0
[2026-06-12 18:52:49,294.294 INFO    ] is_command_expired: timestamp=2026-06-12T13:22:47.228Z, expiry=30s
[2026-06-12 18:52:49,351.351 INFO    ] Command removed from stream: 1781270566727-0. returning for processing...
[2026-06-12 18:52:49,355.355 INFO    ] ***** get_valid_command
[2026-06-12 18:52:49,359.359 INFO    ] {'timeout': '60', 'source': 'webapp', 'timestamp': '2026-06-12T13:22:47.228Z', 'data': '{"request_id":"process-order-1781270567228-2kontvqa0","orderId":"TM09202301260612185150481","is_vending":false,"accessCode":"18979478"}', 'command': 'process-order'}
[2026-06-12 18:52:49,362.362 INFO    ] ***** Parsed command data: {'orderId': 'TM09202301260612185150481', 'is_vending': False, 'accessCode': '18979478', 'request_id': 'process-order-1781270567228-2kontvqa0'}
[2026-06-12 18:52:49,367.367 INFO    ] Handling process order...
[2026-06-12 18:52:49,372.372 INFO    ] Processing process-order command...
[2026-06-12 18:52:49,378.378 INFO    ] 🔍 Lock file Order ID: TM09202301260612185150481, TS: 2026-06-12 18:52:45
[2026-06-12 18:52:49,388.388 INFO    ] ✅ Order lock valid for TM09202301260612185150481
[2026-06-12 18:52:49,393.393 INFO    ] Received access code in process-order, skipping PHP API call
[2026-06-12 18:52:49,397.397 INFO    ] processing access code 18979478 for order TM09202301260612185150481
[2026-06-12 18:52:49,404.404 INFO    ] 🔍 Lock file Order ID: TM09202301260612185150481, TS: 2026-06-12 18:52:45
[2026-06-12 18:52:49,410.410 INFO    ] ✅ Order lock valid for TM09202301260612185150481
[2026-06-12 18:52:49,416.416 INFO    ] 2026-06-12 18:52:49
[2026-06-12 18:52:49,496.496 INFO    ] 200
[2026-06-12 18:52:49,499.499 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:52:49,525.525 INFO    ] 18979478
[2026-06-12 18:52:49,550.550 INFO    ] 2026-06-12 18:52:49
[2026-06-12 18:52:49,553.553 INFO    ] session id :105401561
[2026-06-12 18:52:49,556.556 INFO    ] http://localhost:5000/v2/getOrderByAccessCode?access_code=18979478&imei=TM09202301&session_id=105401561
[2026-06-12 18:52:50,259.259 INFO    ] 200
[2026-06-12 18:52:50,261.261 INFO    ] {"status": true, "msg": "Order Data", "data": {"bill_amount": "25", "access_code": "18979478", "order_id": "TM09202301260612185150481", "mobile": "7995011126", "proposed_sku_json": [{"unit_price": 25, "qty": 1, "skuid": "4500662", "offer_desc": "", "offer_id": "", "door_id": "2", "tray_id": "32", "sku_total": 25, "mrp": "25", "image_url": "https://images.tinymart.in/product/4500662-3783.jpg", "name": "Paper Boat Mixed fruit 160ml"}], "invoice_bill": "25"}, "rstatus": true}
[2026-06-12 18:52:50,263.263 INFO    ] 25
[2026-06-12 18:52:50,264.264 INFO    ] TM09202301260612185150481
[2026-06-12 18:52:50,265.265 INFO    ] 7995011126
[2026-06-12 18:52:50,267.267 INFO    ] 2026-06-12 18:52:50
[2026-06-12 18:52:50,268.268 INFO    ] Door Opening for user mobile ending with  one one two six 
[2026-06-12 18:52:50,270.270 INFO    ] Door Opening for user mobile ending with  one one two six 
[2026-06-12 18:52:50,271.271 INFO    ] aad30ea001f59cff6fe6236feeefd2ba
[2026-06-12 18:52:50,277.277 INFO    ] 2026-06-12 18:52:50
[2026-06-12 18:52:50,278.278 INFO    ] creating audio file
[2026-06-12 18:52:50,318.318 INFO    ] Calling gTTS API with 60s timeout...
[2026-06-12 18:52:50,869.869 INFO    ] gTTS API call completed successfully
[2026-06-12 18:52:51,545.545 INFO    ] 2026-06-12 18:52:51
[2026-06-12 18:52:51,547.547 INFO    ] playing audio file
[2026-06-12 18:52:51,558.558 INFO    ] 2026-06-12 18:52:51
[2026-06-12 18:52:51,560.560 INFO    ] 2026-06-12 18:52:51
[2026-06-12 18:52:51,562.562 INFO    ] publish_status: order_id=TM09202301260612185150481
[2026-06-12 18:52:51,564.564 INFO    ] [publish_status] Adding message to stream: order:TM09202301260612185150481
[2026-06-12 18:52:51,656.656 INFO    ] [publish_status] Message added to stream with ID: 1781270571670-0
[2026-06-12 18:52:51,657.657 INFO    ] Published to order:TM09202301260612185150481: {'server_response': '{"msg": "Order Data", "rstatus": true, "data": {"proposed_sku_json": [{"qty": 1, "image_url": "https://images.tinymart.in/product/4500662-3783.jpg", "tray_id": "32", "skuid": "4500662", "name": "Paper Boat Mixed fruit 160ml", "mrp": "25", "sku_total": 25, "door_id": "2", "offer_id": "", "offer_desc": "", "unit_price": 25}], "order_id": "TM09202301260612185150481", "access_code": "18979478", "mobile": "7995011126", "invoice_bill": "25", "bill_amount": "25"}, "status": true}', 'server_status': 'order-started', 'timestamp': '2026-06-12T13:22:51.561086Z', 'order_id': 'TM09202301260612185150481'} (ID: 1781270571670-0)
[2026-06-12 18:52:52,034.034 INFO    ] {'server_response': {'msg': 'Order Data', 'rstatus': True, 'data': {'proposed_sku_json': [{'qty': 1, 'image_url': 'https://images.tinymart.in/product/4500662-3783.jpg', 'tray_id': '32', 'skuid': '4500662', 'name': 'Paper Boat Mixed fruit 160ml', 'mrp': '25', 'sku_total': 25, 'door_id': '2', 'offer_id': '', 'offer_desc': '', 'unit_price': 25}], 'order_id': 'TM09202301260612185150481', 'access_code': '18979478', 'mobile': '7995011126', 'invoice_bill': '25', 'bill_amount': '25'}, 'status': True}, 'server_status': 'order-started', 'order_id': 'TM09202301260612185150481'}
[2026-06-12 18:52:52,035.035 INFO    ] 200
[2026-06-12 18:52:52,037.037 INFO    ] {"data":{"server_response":{"msg":"Order Data","rstatus":true,"data":{"proposed_sku_json":[{"qty":1,"image_url":"https:\/\/images.tinymart.in\/product\/4500662-3783.jpg","tray_id":"32","skuid":"4500662","name":"Paper Boat Mixed fruit 160ml","mrp":"25","sku_total":25,"door_id":"2","offer_id":"","offer_desc":"","unit_price":25}],"order_id":"TM09202301260612185150481","access_code":"18979478","mobile":"7995011126","invoice_bill":"25","bill_amount":"25"},"status":true},"server_status":"order-started","order_id":"TM09202301260612185150481"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-12 18:52:52,038.038 INFO    ] {'data': {'server_response': {'msg': 'Order Data', 'rstatus': True, 'data': {'proposed_sku_json': [{'qty': 1, 'image_url': 'https://images.tinymart.in/product/4500662-3783.jpg', 'tray_id': '32', 'skuid': '4500662', 'name': 'Paper Boat Mixed fruit 160ml', 'mrp': '25', 'sku_total': 25, 'unit_price': 25, 'offer_id': '', 'door_id': '2', 'offer_desc': ''}], 'order_id': 'TM09202301260612185150481', 'mobile': '7995011126', 'access_code': '18979478', 'invoice_bill': '25', 'bill_amount': '25'}, 'status': True}, 'server_status': 'order-started', 'order_id': 'TM09202301260612185150481'}, 'response': {'msg': 'order updated successfully', 'code': 'ORDER_EXISTS', 'data': 'order updated successfully', 'status': True}}
[2026-06-12 18:52:52,040.040 INFO    ] 2026-06-12 18:52:52
[2026-06-12 18:52:52,065.065 INFO    ] 200
[2026-06-12 18:52:52,067.067 INFO    ] True
[2026-06-12 18:52:52,374.374 INFO    ] 200
[2026-06-12 18:52:52,376.376 INFO    ] {"error": {"tmessage": "In Progress", "umessage": "In Progress", "data": {}, "code": 20001}, "SectionSKU": {"Header": "Thank you for bearing with us :)", "skus": []}, "rstatus": false, "SectionStatus": {"Header": " Your order is under process  ", "SubHeader": "Please wait while we process your order", "UI_Header": "", "Note": ""}, "status": "False", "voiceNote": "Please Wait", "SectionMain": {"Header": "Processing Order"}}
[2026-06-12 18:52:52,378.378 INFO    ] {'SectionMain': {'Header': 'Processing Order'}, 'SectionStatus': {'SubHeader': 'Please wait while we process your order', 'Header': ' Your order is under process  ', 'Note': '', 'UI_Header': ''}, 'error': {'code': 20001, 'data': {}, 'umessage': 'In Progress', 'tmessage': 'In Progress'}, 'SectionSKU': {'Header': 'Thank you for bearing with us :)', 'skus': []}, 'status': 'False', 'rstatus': False, 'voiceNote': 'Please Wait'}
[2026-06-12 18:52:52,380.380 INFO    ] *** process_order ***
[2026-06-12 18:52:53,546.546 INFO    ] 200
[2026-06-12 18:52:53,547.547 INFO    ] {"delay": 0, "SectionSKU": {"Header": "Thank you for bearing with us :)", "skus": []}, "rstatus": true, "SectionStatus": {"Header": " Your order is under process  ", "SubHeader": "Please wait while we process your order", "UI_Header": "", "Note": ""}, "status": "True", "voiceNote": "Please Wait", "SectionMain": {"Header": "Processing Order"}}
[2026-06-12 18:52:53,549.549 INFO    ] {'delay': 0, 'SectionMain': {'Header': 'Processing Order'}, 'SectionStatus': {'SubHeader': 'Please wait while we process your order', 'Header': ' Your order is under process  ', 'Note': '', 'UI_Header': ''}, 'SectionSKU': {'Header': 'Thank you for bearing with us :)', 'skus': []}, 'status': 'True', 'rstatus': True, 'voiceNote': 'Please Wait'}
[2026-06-12 18:52:53,550.550 INFO    ] *** process_order ***
[2026-06-12 18:52:53,552.552 INFO    ] publish_status: order_id=TM09202301260612185150481
[2026-06-12 18:52:53,554.554 INFO    ] [publish_status] Adding message to stream: order:TM09202301260612185150481
[2026-06-12 18:52:53,633.633 INFO    ] [publish_status] Message added to stream with ID: 1781270573648-0
[2026-06-12 18:52:53,635.635 INFO    ] Published to order:TM09202301260612185150481: {'server_response': '{"SectionMain": {"Header": "Processing Order"}, "delay": 0, "rstatus": true, "SectionSKU": {"Header": "Thank you for bearing with us :)", "skus": []}, "status": "True", "SectionStatus": {"SubHeader": "You can pull the door now.", "Header": " Your order is under process  ", "Note": "", "UI_Header": ""}, "voiceNote": "Door is open..."}', 'server_status': 'doorOpened', 'order_id': 'TM09202301260612185150481'} (ID: 1781270573648-0)
[2026-06-12 18:52:54,693.693 INFO    ] 2026-06-12 18:52:54
[2026-06-12 18:52:54,696.696 INFO    ] publish_status: order_id=TM09202301260612185150481
[2026-06-12 18:52:54,699.699 INFO    ] [publish_status] Adding message to stream: order:TM09202301260612185150481
[2026-06-12 18:52:54,806.806 INFO    ] [publish_status] Message added to stream with ID: 1781270574819-0
[2026-06-12 18:52:54,811.811 INFO    ] Published to order:TM09202301260612185150481: {'server_response': '{"delay": 0, "SectionMain": {"Header": "Processing Order"}, "SectionStatus": {"SubHeader": "Please wait while we process your order", "Header": " Your order is under process  ", "Note": "", "UI_Header": ""}, "SectionSKU": {"Header": "Thank you for bearing with us :)", "skus": []}, "status": "True", "rstatus": true, "voiceNote": "Please Wait"}', 'server_status': 'processOrder', 'timestamp': '2026-06-12T13:22:54.694475Z', 'order_id': 'TM09202301260612185150481'} (ID: 1781270574819-0)
[2026-06-12 18:52:54,951.951 INFO    ] {'server_response': {'delay': 0, 'SectionMain': {'Header': 'Processing Order'}, 'SectionStatus': {'SubHeader': 'Please wait while we process your order', 'Header': ' Your order is under process  ', 'Note': '', 'UI_Header': ''}, 'SectionSKU': {'Header': 'Thank you for bearing with us :)', 'skus': []}, 'status': 'True', 'rstatus': True, 'voiceNote': 'Please Wait'}, 'server_status': 'processOrder', 'order_id': 'TM09202301260612185150481'}
[2026-06-12 18:52:54,953.953 INFO    ] 200
[2026-06-12 18:52:54,955.955 INFO    ] {"data":{"server_response":{"delay":0,"SectionMain":{"Header":"Processing Order"},"SectionStatus":{"SubHeader":"Please wait while we process your order","Header":" Your order is under process  ","Note":"","UI_Header":""},"SectionSKU":{"Header":"Thank you for bearing with us :)","skus":[]},"status":"true","rstatus":true,"voiceNote":"Please Wait"},"server_status":"processOrder","order_id":"TM09202301260612185150481"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-12 18:52:54,957.957 INFO    ] {'data': {'server_response': {'delay': 0, 'SectionMain': {'Header': 'Processing Order'}, 'rstatus': True, 'SectionSKU': {'Header': 'Thank you for bearing with us :)', 'skus': []}, 'status': 'true', 'SectionStatus': {'SubHeader': 'Please wait while we process your order', 'Header': ' Your order is under process  ', 'Note': '', 'UI_Header': ''}, 'voiceNote': 'Please Wait'}, 'server_status': 'processOrder', 'order_id': 'TM09202301260612185150481'}, 'response': {'msg': 'order updated successfully', 'code': 'ORDER_EXISTS', 'data': 'order updated successfully', 'status': True}}
[2026-06-12 18:52:54,958.958 INFO    ] 2026-06-12 18:52:54
[2026-06-12 18:52:54,960.960 INFO    ] None
[2026-06-12 18:52:54,962.962 INFO    ] Opening Door now
[2026-06-12 18:52:54,964.964 INFO    ] Opening Door now
[2026-06-12 18:52:54,965.965 INFO    ] 08e5d1063504bf393c26f0bfa436e9f9
[2026-06-12 18:52:54,967.967 INFO    ] 2026-06-12 18:52:54
[2026-06-12 18:52:54,969.969 INFO    ] playing audio file
[2026-06-12 18:52:54,980.980 INFO    ] 2026-06-12 18:52:54
[2026-06-12 18:52:54,982.982 INFO    ] 2026-06-12 18:52:54
[2026-06-12 18:52:58,204.204 INFO    ] 200
[2026-06-12 18:52:58,206.206 INFO    ] {"error": {"tmessage": "In Progress", "umessage": "In Progress", "data": {}, "code": 20001}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"name": "Paper Boat Mixed fruit 160ml", "qty": 1}]}, "rstatus": false, "SectionStatus": {"Header": "Please Close Door 2", "SubHeader": "Please Pick the Products and close the door", "UI_Header": "DOOR 2\nIS \nOPEN \nNOW", "Note": "Please Close the door after picking up products"}, "status": "False", "voiceNote": "Door 2 is open now", "SectionMain": {"Header": "Door Open"}}
[2026-06-12 18:52:58,208.208 INFO    ] {'SectionMain': {'Header': 'Door Open'}, 'SectionStatus': {'SubHeader': 'Please Pick the Products and close the door', 'Header': 'Please Close Door 2', 'Note': 'Please Close the door after picking up products', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW'}, 'error': {'code': 20001, 'data': {}, 'umessage': 'In Progress', 'tmessage': 'In Progress'}, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'Paper Boat Mixed fruit 160ml'}]}, 'status': 'False', 'rstatus': False, 'voiceNote': 'Door 2 is open now'}
[2026-06-12 18:53:01,328.328 INFO    ] 200
[2026-06-12 18:53:01,331.331 INFO    ] {"error": {"tmessage": "In Progress", "umessage": "In Progress", "data": {}, "code": 20001}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"name": "Paper Boat Mixed fruit 160ml", "qty": 1}]}, "rstatus": false, "SectionStatus": {"Header": "Please Close Door 2", "SubHeader": "Please Pick the Products and close the door", "UI_Header": "DOOR 2\nIS \nOPEN \nNOW", "Note": "Please Close the door after picking up products"}, "status": "False", "voiceNote": "Please close door 2", "SectionMain": {"Header": "Door Open"}}
[2026-06-12 18:53:01,334.334 INFO    ] {'SectionMain': {'Header': 'Door Open'}, 'SectionStatus': {'SubHeader': 'Please Pick the Products and close the door', 'Header': 'Please Close Door 2', 'Note': 'Please Close the door after picking up products', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW'}, 'error': {'code': 20001, 'data': {}, 'umessage': 'In Progress', 'tmessage': 'In Progress'}, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'Paper Boat Mixed fruit 160ml'}]}, 'status': 'False', 'rstatus': False, 'voiceNote': 'Please close door 2'}
[2026-06-12 18:53:04,438.438 INFO    ] 200
[2026-06-12 18:53:04,440.440 INFO    ] {"error": {"tmessage": "In Progress", "umessage": "In Progress", "data": {}, "code": 20001}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"name": "Paper Boat Mixed fruit 160ml", "qty": 1}]}, "rstatus": false, "SectionStatus": {"Header": "Please Close Door 2", "SubHeader": "Please Pick the Products and close the door", "UI_Header": "DOOR 2\nIS \nOPEN \nNOW", "Note": "Please Close the door after picking up products"}, "status": "False", "voiceNote": "Please close door 2", "SectionMain": {"Header": "Door Open"}}
[2026-06-12 18:53:04,442.442 INFO    ] Please close door 2
[2026-06-12 18:53:04,443.443 INFO    ] Please close door 2
[2026-06-12 18:53:04,445.445 INFO    ] 758e46684c76e887a5f58d4738034bed
[2026-06-12 18:53:04,447.447 INFO    ] 2026-06-12 18:53:04
[2026-06-12 18:53:04,449.449 INFO    ] playing audio file
[2026-06-12 18:53:04,461.461 INFO    ] 2026-06-12 18:53:04
[2026-06-12 18:53:04,463.463 INFO    ] publish_status: order_id=TM09202301260612185150481
[2026-06-12 18:53:04,465.465 INFO    ] [publish_status] Adding message to stream: order:TM09202301260612185150481
[2026-06-12 18:53:04,566.566 INFO    ] [publish_status] Message added to stream with ID: 1781270584580-0
[2026-06-12 18:53:04,568.568 INFO    ] Published to order:TM09202301260612185150481: {'server_response': '{"SectionMain": {"Header": "Door Open"}, "SectionStatus": {"SubHeader": "Please Pick the Products and close the door", "Header": "Please Close Door 2", "Note": "Please Close the door after picking up products", "UI_Header": "DOOR 2\\nIS \\nOPEN \\nNOW"}, "error": {"code": 20001, "data": {}, "umessage": "In Progress", "tmessage": "In Progress"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "Paper Boat Mixed fruit 160ml"}]}, "status": "False", "rstatus": false, "voiceNote": "Please close door 2"}', 'server_status': 'OrderStatus', 'timestamp': '2026-06-12T13:23:04.462173Z', 'order_id': 'TM09202301260612185150481'} (ID: 1781270584580-0)
[2026-06-12 18:53:04,971.971 INFO    ] {'server_response': {'SectionMain': {'Header': 'Door Open'}, 'SectionStatus': {'SubHeader': 'Please Pick the Products and close the door', 'Header': 'Please Close Door 2', 'Note': 'Please Close the door after picking up products', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW'}, 'error': {'code': 20001, 'data': {}, 'umessage': 'In Progress', 'tmessage': 'In Progress'}, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'Paper Boat Mixed fruit 160ml'}]}, 'status': 'False', 'rstatus': False, 'voiceNote': 'Please close door 2'}, 'server_status': 'OrderStatus', 'order_id': 'TM09202301260612185150481'}
[2026-06-12 18:53:04,973.973 INFO    ] 200
[2026-06-12 18:53:04,974.974 INFO    ] {"data":{"server_response":{"SectionMain":{"Header":"Door Open"},"SectionStatus":{"SubHeader":"Please Pick the Products and close the door","Header":"Please Close Door 2","Note":"Please Close the door after picking up products","UI_Header":"DOOR 2\nIS \nOPEN \nNOW"},"error":{"code":20001,"data":[],"umessage":"In Progress","tmessage":"In Progress"},"SectionSKU":{"Header":"Pick the below items from the door","skus":[{"qty":1,"name":"Paper Boat Mixed fruit 160ml"}]},"status":"false","rstatus":false,"voiceNote":"Please close door 2"},"server_status":"OrderStatus","order_id":"TM09202301260612185150481"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-12 18:53:04,976.976 INFO    ] {'data': {'server_response': {'SectionMain': {'Header': 'Door Open'}, 'rstatus': False, 'error': {'code': 20001, 'data': [], 'umessage': 'In Progress', 'tmessage': 'In Progress'}, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'Paper Boat Mixed fruit 160ml'}]}, 'status': 'false', 'SectionStatus': {'SubHeader': 'Please Pick the Products and close the door', 'Header': 'Please Close Door 2', 'Note': 'Please Close the door after picking up products', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW'}, 'voiceNote': 'Please close door 2'}, 'server_status': 'OrderStatus', 'order_id': 'TM09202301260612185150481'}, 'response': {'msg': 'order updated successfully', 'code': 'ORDER_EXISTS', 'data': 'order updated successfully', 'status': True}}
[2026-06-12 18:53:04,978.978 INFO    ] {'SectionMain': {'Header': 'Door Open'}, 'SectionStatus': {'SubHeader': 'Please Pick the Products and close the door', 'Header': 'Please Close Door 2', 'Note': 'Please Close the door after picking up products', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW'}, 'error': {'code': 20001, 'data': {}, 'umessage': 'In Progress', 'tmessage': 'In Progress'}, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'Paper Boat Mixed fruit 160ml'}]}, 'status': 'False', 'rstatus': False, 'voiceNote': 'Please close door 2'}
[2026-06-12 18:53:08,018.018 INFO    ] 200
[2026-06-12 18:53:08,020.020 INFO    ] {"delay": 100, "SectionSKU": {"Header": "If you like us, tell others... else tell us", "skus": []}, "rstatus": true, "SectionStatus": {"Header": " Order is complete ", "SubHeader": "Please wait for invoice to generate", "UI_Header": "", "Note": "If any due amount, clear at https://go.tinymart.in"}, "status": "True", "voiceNote": "Transaction Completed", "SectionMain": {"Header": "Door Closed"}}
[2026-06-12 18:53:08,022.022 INFO    ] {'delay': 100, 'SectionMain': {'Header': 'Door Closed'}, 'SectionStatus': {'SubHeader': 'Please wait for invoice to generate', 'Header': ' Order is complete ', 'Note': 'If any due amount, clear at https://go.tinymart.in', 'UI_Header': ''}, 'SectionSKU': {'Header': 'If you like us, tell others... else tell us', 'skus': []}, 'status': 'True', 'rstatus': True, 'voiceNote': 'Transaction Completed'}
[2026-06-12 18:53:08,024.024 INFO    ] 2026-06-12 18:53:08
[2026-06-12 18:53:08,026.026 INFO    ] Order Completed 
[2026-06-12 18:53:08,028.028 INFO    ] Order Completed 
[2026-06-12 18:53:08,030.030 INFO    ] 193c8a8cf3bf490ccfe0b23598544a83
[2026-06-12 18:53:08,032.032 INFO    ] 2026-06-12 18:53:08
[2026-06-12 18:53:08,033.033 INFO    ] playing audio file
[2026-06-12 18:53:08,045.045 INFO    ] 2026-06-12 18:53:08
[2026-06-12 18:53:08,047.047 INFO    ] {'delay': 100, 'SectionMain': {'Header': 'Door Closed'}, 'SectionStatus': {'SubHeader': 'Please wait for invoice to generate', 'Header': ' Order is complete ', 'Note': 'If any due amount, clear at https://go.tinymart.in', 'UI_Header': ''}, 'SectionSKU': {'Header': 'If you like us, tell others... else tell us', 'skus': []}, 'status': 'True', 'rstatus': True, 'voiceNote': 'Transaction Completed'}
[2026-06-12 18:53:08,050.050 INFO    ] 2026-06-12 18:53:08
[2026-06-12 18:53:09,264.264 INFO    ] 200
[2026-06-12 18:53:09,267.267 INFO    ] {"anomaly": 0, "skus": [{"image_url": "https://images.tinymart.in/product/4500662-3783.jpg", "qty": 1, "skuid": "4500662", "unit_price": "25", "tray_id": "32", "sku_total": 25.0, "mrp": "25", "door_id": "", "name": "Paper Boat Mixed fruit 160ml per peice"}], "total_amount": 25.0, "orderId": "TM09202301260612185150481", "res": "True", "rstatus": true, "logic": "WBL"}
[2026-06-12 18:53:09,270.270 INFO    ] {'total_amount': 25.0, 'orderId': 'TM09202301260612185150481', 'rstatus': True, 'res': 'True', 'anomaly': 0, 'logic': 'WBL', 'skus': [{'image_url': 'https://images.tinymart.in/product/4500662-3783.jpg', 'qty': 1, 'tray_id': '32', 'skuid': '4500662', 'name': 'Paper Boat Mixed fruit 160ml per peice', 'mrp': '25', 'sku_total': 25.0, 'door_id': '', 'unit_price': '25'}]}
[2026-06-12 18:53:09,273.273 INFO    ] {'total_amount': 25.0, 'orderId': 'TM09202301260612185150481', 'rstatus': True, 'res': 'True', 'anomaly': 0, 'logic': 'WBL', 'skus': [{'image_url': 'https://images.tinymart.in/product/4500662-3783.jpg', 'qty': 1, 'tray_id': '32', 'skuid': '4500662', 'name': 'Paper Boat Mixed fruit 160ml per peice', 'mrp': '25', 'sku_total': 25.0, 'door_id': '', 'unit_price': '25'}]}
[2026-06-12 18:53:09,276.276 INFO    ] 2026-06-12 18:53:09
[2026-06-12 18:53:09,279.279 INFO    ] 2026-06-12 18:53:09
[2026-06-12 18:53:09,282.282 INFO    ] 25
[2026-06-12 18:53:09,285.285 INFO    ] 2026-06-12 18:53:09
[2026-06-12 18:53:09,287.287 INFO    ] 2026-06-12 18:53:09
[2026-06-12 18:53:09,290.290 INFO    ]  Your Bill Amount is 25
[2026-06-12 18:53:09,293.293 INFO    ]  Your Bill Amount is 25
[2026-06-12 18:53:09,296.296 INFO    ] da20fb15704d31a40267abf7bb69dedc
[2026-06-12 18:53:09,299.299 INFO    ] 2026-06-12 18:53:09
[2026-06-12 18:53:09,301.301 INFO    ] playing audio file
[2026-06-12 18:53:09,320.320 INFO    ] 2026-06-12 18:53:09
[2026-06-12 18:53:09,322.322 INFO    ] 2026-06-12 18:53:09
[2026-06-12 18:53:09,324.324 INFO    ] publish_status: order_id=TM09202301260612185150481
[2026-06-12 18:53:09,326.326 INFO    ] [publish_status] Adding message to stream: order:TM09202301260612185150481
[2026-06-12 18:53:09,396.396 INFO    ] [publish_status] Message added to stream with ID: 1781270589410-0
[2026-06-12 18:53:09,397.397 INFO    ] Published to order:TM09202301260612185150481: {'server_response': '{"total_amount": 25.0, "orderId": "TM09202301260612185150481", "rstatus": true, "res": "True", "anomaly": 0, "logic": "WBL", "skus": [{"image_url": "https://images.tinymart.in/product/4500662-3783.jpg", "qty": 1, "tray_id": "32", "skuid": "4500662", "name": "Paper Boat Mixed fruit 160ml per peice", "mrp": "25", "sku_total": 25.0, "door_id": "", "unit_price": "25"}]}', 'server_status': 'invoiceOrder', 'timestamp': '2026-06-12T13:23:09.323545Z', 'order_id': 'TM09202301260612185150481'} (ID: 1781270589410-0)
[2026-06-12 18:53:09,955.955 INFO    ] {'server_response': {'total_amount': 25.0, 'orderId': 'TM09202301260612185150481', 'rstatus': True, 'res': 'True', 'anomaly': 0, 'logic': 'WBL', 'skus': [{'image_url': 'https://images.tinymart.in/product/4500662-3783.jpg', 'qty': 1, 'tray_id': '32', 'skuid': '4500662', 'name': 'Paper Boat Mixed fruit 160ml per peice', 'mrp': '25', 'sku_total': 25.0, 'door_id': '', 'unit_price': '25'}]}, 'server_status': 'invoiceOrder', 'order_id': 'TM09202301260612185150481'}
[2026-06-12 18:53:09,956.956 INFO    ] 200
[2026-06-12 18:53:09,957.957 INFO    ] {"data":{"server_response":{"total_amount":25,"orderId":"TM09202301260612185150481","rstatus":true,"res":"true","anomaly":0,"logic":"WBL","skus":[{"image_url":"https:\/\/images.tinymart.in\/product\/4500662-3783.jpg","qty":1,"tray_id":"32","skuid":"4500662","name":"Paper Boat Mixed fruit 160ml per peice","mrp":"25","sku_total":25,"door_id":"","unit_price":"25"}]},"server_status":"invoiceOrder","order_id":"TM09202301260612185150481"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-12 18:53:09,959.959 INFO    ] {'data': {'server_response': {'total_amount': 25, 'orderId': 'TM09202301260612185150481', 'skus': [{'image_url': 'https://images.tinymart.in/product/4500662-3783.jpg', 'qty': 1, 'tray_id': '32', 'skuid': '4500662', 'name': 'Paper Boat Mixed fruit 160ml per peice', 'mrp': '25', 'sku_total': 25, 'door_id': '', 'unit_price': '25'}], 'res': 'true', 'rstatus': True, 'logic': 'WBL', 'anomaly': 0}, 'server_status': 'invoiceOrder', 'order_id': 'TM09202301260612185150481'}, 'response': {'msg': 'order updated successfully', 'code': 'ORDER_EXISTS', 'data': 'order updated successfully', 'status': True}}
[2026-06-12 18:53:09,961.961 INFO    ] {'data': {'server_response': {'total_amount': 25, 'orderId': 'TM09202301260612185150481', 'skus': [{'image_url': 'https://images.tinymart.in/product/4500662-3783.jpg', 'qty': 1, 'tray_id': '32', 'skuid': '4500662', 'name': 'Paper Boat Mixed fruit 160ml per peice', 'mrp': '25', 'sku_total': 25, 'door_id': '', 'unit_price': '25'}], 'res': 'true', 'rstatus': True, 'logic': 'WBL', 'anomaly': 0}, 'server_status': 'invoiceOrder', 'order_id': 'TM09202301260612185150481'}, 'response': {'msg': 'order updated successfully', 'code': 'ORDER_EXISTS', 'data': 'order updated successfully', 'status': True}}
[2026-06-12 18:53:09,962.962 INFO    ] 2026-06-12 18:53:09
[2026-06-12 18:53:14,657.657 INFO    ] 200
[2026-06-12 18:53:14,660.660 INFO    ] {"order_items": [], "tray_sync": ["TM09202301260612185150481", "TM09202301260612185150481", "TM09202301260612185150481", "TM09202301260612185150481", "TM09202301260612185150481", "TM09202301260612185150481"], "orders": [], "order_items_synced": [], "orders_synced": [], "orders_data_synced": [], "status": true, "orders_data": [], "tray_synced": ["TM09202301260612185150481", "TM09202301260612185150481", "TM09202301260612185150481", "TM09202301260612185150481", "TM09202301260612185150481", "TM09202301260612185150481", "TM09202301260612185150481", "TM09202301260612185150481", "TM09202301260612185150481", "TM09202301260612185150481", "TM09202301260612185150481", "TM09202301260612185150481", "TM09202301260612185150481", "TM09202301260612185150481", "TM09202301260612185150481", "TM09202301260612185150481", "TM09202301260612185150481", "TM09202301260612185150481", "TM09202301260612185150481", "TM09202301260612185150481", "TM09202301260612185150481", "TM09202301260612185150481", "TM09202301260612185150481", "TM09202301260612185150481", "TM09202301260612185150481", "TM09202301260612185150481", "TM09202301260612185150481"]}
[2026-06-12 18:53:14,663.663 INFO    ] 2026-06-12 18:53:14
[2026-06-12 18:53:14,752.752 INFO    ] 200
[2026-06-12 18:53:14,754.754 INFO    ] True
[2026-06-12 18:53:14,756.756 INFO    ] cleanup_start_order_file_after_processing: order_id=TM09202301260612185150481
[2026-06-12 18:53:14,758.758 INFO    ] start order file deleted
[2026-06-12 18:53:14,760.760 INFO    ] Checking for system updates...
[2026-06-12 18:53:14,781.781 INFO    ] 200
[2026-06-12 18:53:14,783.783 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:53:14,855.855 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 18:53:14,856.856 INFO    ] No update needed
[2026-06-12 18:53:14,858.858 INFO    ] Checking for camera pi updates...
[2026-06-12 18:53:14,899.899 INFO    ] 200
[2026-06-12 18:53:14,901.901 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:53:14,991.991 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 18:53:15,035.035 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 18:53:15,037.037 INFO    ] No camera update needed
[2026-06-12 18:53:15,038.038 INFO    ] Script finished. Safe exiting...
[2026-06-12 18:53:15,039.039 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 18:53:15,042.042 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 18:53:15,045.045 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 18:53:17,077.077 INFO    ] ================================================
[2026-06-12 18:53:17,098.098 INFO    ] Launching Daemon at Fri Jun 12 18:53:17 IST 2026
[2026-06-12 18:53:17,109.109 INFO    ] ================================================
[2026-06-12 18:53:17,467.467 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 18:53:17
[2026-06-12 18:53:17,810.810 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 18:53:17,965.965 INFO    ] Initializing speech engine...
[2026-06-12 18:53:17,969.969 INFO    ] 2026-06-12 18:53:17
[2026-06-12 18:53:18,179.179 INFO    ] 2026-06-12 18:53:18
[2026-06-12 18:53:18,208.208 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 18:53:18,396.396 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 18:53:18,405.405 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 18:53:18,549.549 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 18:53:18,607.607 INFO    ] time= 12/06/2026 18:53:18
[2026-06-12 18:53:18,631.631 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 18:53:18,637.637 INFO    ] Checking for existing commands in stream...
[2026-06-12 18:53:18,705.705 INFO    ] No existing commands found in stream
[2026-06-12 18:53:23,725.725 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 18:53:23,728.728 INFO    ] Waiting 0.40 seconds before fallback handling...
[2026-06-12 18:53:24,506.506 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 18:53:24,508.508 INFO    ] Checking for system updates...
[2026-06-12 18:53:24,532.532 INFO    ] 200
[2026-06-12 18:53:24,533.533 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:53:24,577.577 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 18:53:24,578.578 INFO    ] No update needed
[2026-06-12 18:53:24,580.580 INFO    ] Checking for camera pi updates...
[2026-06-12 18:53:24,601.601 INFO    ] 200
[2026-06-12 18:53:24,603.603 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:53:24,627.627 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 18:53:24,769.769 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 18:53:24,772.772 INFO    ] No camera update needed
[2026-06-12 18:53:24,775.775 INFO    ] Script finished. Safe exiting...
[2026-06-12 18:53:24,777.777 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 18:53:24,784.784 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 18:53:24,790.790 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 18:53:26,833.833 INFO    ] ================================================
[2026-06-12 18:53:26,848.848 INFO    ] Launching Daemon at Fri Jun 12 18:53:26 IST 2026
[2026-06-12 18:53:26,859.859 INFO    ] ================================================
[2026-06-12 18:53:27,208.208 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 18:53:27
[2026-06-12 18:53:27,525.525 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 18:53:27,662.662 INFO    ] Initializing speech engine...
[2026-06-12 18:53:27,676.676 INFO    ] 2026-06-12 18:53:27
[2026-06-12 18:53:27,898.898 INFO    ] 2026-06-12 18:53:27
[2026-06-12 18:53:27,929.929 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 18:53:28,067.067 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 18:53:28,130.130 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 18:53:28,272.272 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 18:53:28,324.324 INFO    ] time= 12/06/2026 18:53:28
[2026-06-12 18:53:28,358.358 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 18:53:28,380.380 INFO    ] Checking for existing commands in stream...
[2026-06-12 18:53:28,456.456 INFO    ] No existing commands found in stream
[2026-06-12 18:53:33,466.466 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 18:53:33,476.476 INFO    ] Waiting 1.38 seconds before fallback handling...
[2026-06-12 18:53:35,238.238 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 18:53:35,240.240 INFO    ] Checking for system updates...
[2026-06-12 18:53:35,260.260 INFO    ] 200
[2026-06-12 18:53:35,262.262 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:53:35,291.291 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 18:53:35,293.293 INFO    ] No update needed
[2026-06-12 18:53:35,294.294 INFO    ] Checking for camera pi updates...
[2026-06-12 18:53:35,313.313 INFO    ] 200
[2026-06-12 18:53:35,314.314 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:53:35,340.340 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 18:53:35,382.382 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 18:53:35,383.383 INFO    ] No camera update needed
[2026-06-12 18:53:35,385.385 INFO    ] Script finished. Safe exiting...
[2026-06-12 18:53:35,386.386 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 18:53:35,389.389 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 18:53:35,392.392 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 18:53:37,431.431 INFO    ] ================================================
[2026-06-12 18:53:37,446.446 INFO    ] Launching Daemon at Fri Jun 12 18:53:37 IST 2026
[2026-06-12 18:53:37,457.457 INFO    ] ================================================
[2026-06-12 18:53:37,825.825 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 18:53:37
[2026-06-12 18:53:38,163.163 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 18:53:38,310.310 INFO    ] Initializing speech engine...
[2026-06-12 18:53:38,321.321 INFO    ] 2026-06-12 18:53:38
[2026-06-12 18:53:38,530.530 INFO    ] 2026-06-12 18:53:38
[2026-06-12 18:53:38,560.560 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 18:53:38,748.748 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 18:53:38,758.758 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 18:53:38,909.909 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 18:53:38,958.958 INFO    ] time= 12/06/2026 18:53:38
[2026-06-12 18:53:38,981.981 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 18:53:38,988.988 INFO    ] Checking for existing commands in stream...
[2026-06-12 18:53:39,055.055 INFO    ] No existing commands found in stream
[2026-06-12 18:53:44,070.070 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 18:53:44,081.081 INFO    ] Waiting 2.14 seconds before fallback handling...
[2026-06-12 18:53:46,643.643 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 18:53:46,645.645 INFO    ] Checking for system updates...
[2026-06-12 18:53:46,666.666 INFO    ] 200
[2026-06-12 18:53:46,667.667 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:53:46,702.702 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 18:53:46,704.704 INFO    ] No update needed
[2026-06-12 18:53:46,705.705 INFO    ] Checking for camera pi updates...
[2026-06-12 18:53:46,724.724 INFO    ] 200
[2026-06-12 18:53:46,725.725 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:53:46,750.750 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 18:53:46,791.791 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 18:53:46,793.793 INFO    ] No camera update needed
[2026-06-12 18:53:46,794.794 INFO    ] Script finished. Safe exiting...
[2026-06-12 18:53:46,795.795 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 18:53:46,798.798 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 18:53:46,801.801 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 18:53:48,838.838 INFO    ] ================================================
[2026-06-12 18:53:48,854.854 INFO    ] Launching Daemon at Fri Jun 12 18:53:48 IST 2026
[2026-06-12 18:53:48,865.865 INFO    ] ================================================
[2026-06-12 18:53:49,218.218 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 18:53:49
[2026-06-12 18:53:49,528.528 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 18:53:49,662.662 INFO    ] Initializing speech engine...
[2026-06-12 18:53:49,666.666 INFO    ] 2026-06-12 18:53:49
[2026-06-12 18:53:49,883.883 INFO    ] 2026-06-12 18:53:49
[2026-06-12 18:53:49,911.911 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 18:53:50,096.096 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 18:53:50,100.100 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 18:53:50,257.257 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 18:53:50,312.312 INFO    ] time= 12/06/2026 18:53:50
[2026-06-12 18:53:50,328.328 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 18:53:50,334.334 INFO    ] Checking for existing commands in stream...
[2026-06-12 18:53:50,402.402 INFO    ] No existing commands found in stream
[2026-06-12 18:53:55,411.411 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 18:53:55,414.414 INFO    ] Waiting 0.25 seconds before fallback handling...
[2026-06-12 18:53:56,065.065 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 18:53:56,066.066 INFO    ] Checking for system updates...
[2026-06-12 18:53:56,086.086 INFO    ] 200
[2026-06-12 18:53:56,088.088 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:53:56,118.118 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 18:53:56,119.119 INFO    ] No update needed
[2026-06-12 18:53:56,121.121 INFO    ] Checking for camera pi updates...
[2026-06-12 18:53:56,140.140 INFO    ] 200
[2026-06-12 18:53:56,142.142 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:53:56,164.164 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 18:53:56,211.211 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 18:53:56,213.213 INFO    ] No camera update needed
[2026-06-12 18:53:56,214.214 INFO    ] Script finished. Safe exiting...
[2026-06-12 18:53:56,215.215 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 18:53:56,218.218 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 18:53:56,221.221 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 18:53:58,259.259 INFO    ] ================================================
[2026-06-12 18:53:58,274.274 INFO    ] Launching Daemon at Fri Jun 12 18:53:58 IST 2026
[2026-06-12 18:53:58,285.285 INFO    ] ================================================
[2026-06-12 18:53:58,664.664 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 18:53:58
[2026-06-12 18:53:59,001.001 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 18:53:59,139.139 INFO    ] Initializing speech engine...
[2026-06-12 18:53:59,147.147 INFO    ] 2026-06-12 18:53:59
[2026-06-12 18:53:59,366.366 INFO    ] 2026-06-12 18:53:59
[2026-06-12 18:53:59,397.397 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 18:53:59,584.584 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 18:53:59,596.596 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 18:53:59,776.776 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 18:53:59,812.812 INFO    ] time= 12/06/2026 18:53:59
[2026-06-12 18:53:59,822.822 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 18:53:59,824.824 INFO    ] Checking for existing commands in stream...
[2026-06-12 18:53:59,892.892 INFO    ] No existing commands found in stream
[2026-06-12 18:54:04,901.901 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 18:54:04,903.903 INFO    ] Waiting 1.63 seconds before fallback handling...
[2026-06-12 18:54:06,872.872 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 18:54:06,873.873 INFO    ] Checking for system updates...
[2026-06-12 18:54:06,893.893 INFO    ] 200
[2026-06-12 18:54:06,895.895 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:54:06,927.927 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 18:54:06,928.928 INFO    ] No update needed
[2026-06-12 18:54:06,930.930 INFO    ] Checking for camera pi updates...
[2026-06-12 18:54:06,949.949 INFO    ] 200
[2026-06-12 18:54:06,951.951 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:54:06,975.975 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 18:54:07,022.022 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 18:54:07,024.024 INFO    ] No camera update needed
[2026-06-12 18:54:07,026.026 INFO    ] Script finished. Safe exiting...
[2026-06-12 18:54:07,029.029 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 18:54:07,034.034 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 18:54:07,039.039 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 18:54:09,078.078 INFO    ] ================================================
[2026-06-12 18:54:09,093.093 INFO    ] Launching Daemon at Fri Jun 12 18:54:09 IST 2026
[2026-06-12 18:54:09,104.104 INFO    ] ================================================
[2026-06-12 18:54:09,476.476 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 18:54:09
[2026-06-12 18:54:09,814.814 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 18:54:09,965.965 INFO    ] Initializing speech engine...
[2026-06-12 18:54:09,971.971 INFO    ] 2026-06-12 18:54:09
[2026-06-12 18:54:10,182.182 INFO    ] 2026-06-12 18:54:10
[2026-06-12 18:54:10,211.211 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 18:54:10,401.401 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 18:54:10,413.413 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 18:54:10,591.591 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 18:54:10,630.630 INFO    ] time= 12/06/2026 18:54:10
[2026-06-12 18:54:10,635.635 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 18:54:10,637.637 INFO    ] Checking for existing commands in stream...
[2026-06-12 18:54:10,704.704 INFO    ] No existing commands found in stream
[2026-06-12 18:54:15,714.714 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 18:54:15,717.717 INFO    ] Waiting 0.66 seconds before fallback handling...
[2026-06-12 18:54:16,759.759 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 18:54:16,760.760 INFO    ] Checking for system updates...
[2026-06-12 18:54:16,781.781 INFO    ] 200
[2026-06-12 18:54:16,783.783 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:54:16,813.813 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 18:54:16,814.814 INFO    ] No update needed
[2026-06-12 18:54:16,815.815 INFO    ] Checking for camera pi updates...
[2026-06-12 18:54:16,836.836 INFO    ] 200
[2026-06-12 18:54:16,838.838 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:54:16,863.863 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 18:54:16,925.925 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 18:54:16,926.926 INFO    ] No camera update needed
[2026-06-12 18:54:16,928.928 INFO    ] Script finished. Safe exiting...
[2026-06-12 18:54:16,929.929 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 18:54:16,933.933 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 18:54:16,936.936 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 18:54:18,975.975 INFO    ] ================================================
[2026-06-12 18:54:18,991.991 INFO    ] Launching Daemon at Fri Jun 12 18:54:18 IST 2026
[2026-06-12 18:54:19,001.001 INFO    ] ================================================
[2026-06-12 18:54:19,361.361 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 18:54:19
[2026-06-12 18:54:19,680.680 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 18:54:19,815.815 INFO    ] Initializing speech engine...
[2026-06-12 18:54:19,824.824 INFO    ] 2026-06-12 18:54:19
[2026-06-12 18:54:20,050.050 INFO    ] 2026-06-12 18:54:20
[2026-06-12 18:54:20,081.081 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 18:54:20,280.280 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 18:54:20,284.284 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 18:54:20,429.429 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 18:54:20,490.490 INFO    ] time= 12/06/2026 18:54:20
[2026-06-12 18:54:20,529.529 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 18:54:20,531.531 INFO    ] Checking for existing commands in stream...
[2026-06-12 18:54:20,607.607 INFO    ] No existing commands found in stream
[2026-06-12 18:54:25,617.617 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 18:54:25,620.620 INFO    ] Waiting 0.84 seconds before fallback handling...
[2026-06-12 18:54:26,848.848 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 18:54:26,850.850 INFO    ] Checking for system updates...
[2026-06-12 18:54:26,870.870 INFO    ] 200
[2026-06-12 18:54:26,872.872 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:54:26,902.902 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 18:54:26,903.903 INFO    ] No update needed
[2026-06-12 18:54:26,905.905 INFO    ] Checking for camera pi updates...
[2026-06-12 18:54:26,924.924 INFO    ] 200
[2026-06-12 18:54:26,925.925 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:54:26,950.950 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 18:54:26,991.991 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 18:54:26,992.992 INFO    ] No camera update needed
[2026-06-12 18:54:26,994.994 INFO    ] Script finished. Safe exiting...
[2026-06-12 18:54:26,995.995 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 18:54:26,998.998 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 18:54:27,001.001 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 18:54:29,039.039 INFO    ] ================================================
[2026-06-12 18:54:29,054.054 INFO    ] Launching Daemon at Fri Jun 12 18:54:29 IST 2026
[2026-06-12 18:54:29,065.065 INFO    ] ================================================
[2026-06-12 18:54:29,395.395 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 18:54:29
[2026-06-12 18:54:29,706.706 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 18:54:29,835.835 INFO    ] Initializing speech engine...
[2026-06-12 18:54:29,839.839 INFO    ] 2026-06-12 18:54:29
[2026-06-12 18:54:30,055.055 INFO    ] 2026-06-12 18:54:30
[2026-06-12 18:54:30,085.085 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 18:54:30,270.270 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 18:54:30,278.278 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 18:54:30,430.430 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 18:54:30,479.479 INFO    ] time= 12/06/2026 18:54:30
[2026-06-12 18:54:30,501.501 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 18:54:30,507.507 INFO    ] Checking for existing commands in stream...
[2026-06-12 18:54:30,574.574 INFO    ] No existing commands found in stream
[2026-06-12 18:54:35,588.588 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 18:54:35,591.591 INFO    ] Waiting 1.77 seconds before fallback handling...
[2026-06-12 18:54:37,736.736 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 18:54:37,738.738 INFO    ] Checking for system updates...
[2026-06-12 18:54:37,758.758 INFO    ] 200
[2026-06-12 18:54:37,759.759 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:54:37,789.789 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 18:54:37,791.791 INFO    ] No update needed
[2026-06-12 18:54:37,792.792 INFO    ] Checking for camera pi updates...
[2026-06-12 18:54:37,813.813 INFO    ] 200
[2026-06-12 18:54:37,814.814 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:54:37,837.837 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 18:54:37,884.884 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 18:54:37,885.885 INFO    ] No camera update needed
[2026-06-12 18:54:37,886.886 INFO    ] Script finished. Safe exiting...
[2026-06-12 18:54:37,888.888 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 18:54:37,891.891 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 18:54:37,893.893 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 18:54:39,933.933 INFO    ] ================================================
[2026-06-12 18:54:39,948.948 INFO    ] Launching Daemon at Fri Jun 12 18:54:39 IST 2026
[2026-06-12 18:54:39,958.958 INFO    ] ================================================
[2026-06-12 18:54:40,311.311 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 18:54:40
[2026-06-12 18:54:40,650.650 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 18:54:40,800.800 INFO    ] Initializing speech engine...
[2026-06-12 18:54:40,807.807 INFO    ] 2026-06-12 18:54:40
[2026-06-12 18:54:41,013.013 INFO    ] 2026-06-12 18:54:41
[2026-06-12 18:54:41,043.043 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 18:54:41,225.225 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 18:54:41,235.235 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 18:54:41,364.364 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 18:54:41,431.431 INFO    ] time= 12/06/2026 18:54:41
[2026-06-12 18:54:41,455.455 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 18:54:41,461.461 INFO    ] Checking for existing commands in stream...
[2026-06-12 18:54:41,527.527 INFO    ] No existing commands found in stream
[2026-06-12 18:54:46,542.542 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 18:54:46,545.545 INFO    ] Waiting 3.49 seconds before fallback handling...
[2026-06-12 18:54:50,471.471 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 18:54:50,473.473 INFO    ] Checking for system updates...
[2026-06-12 18:54:50,493.493 INFO    ] 200
[2026-06-12 18:54:50,495.495 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:54:50,526.526 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 18:54:50,527.527 INFO    ] No update needed
[2026-06-12 18:54:50,528.528 INFO    ] Checking for camera pi updates...
[2026-06-12 18:54:50,548.548 INFO    ] 200
[2026-06-12 18:54:50,550.550 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:54:50,573.573 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 18:54:50,635.635 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 18:54:50,637.637 INFO    ] No camera update needed
[2026-06-12 18:54:50,638.638 INFO    ] Script finished. Safe exiting...
[2026-06-12 18:54:50,640.640 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 18:54:50,643.643 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 18:54:50,646.646 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 18:54:52,685.685 INFO    ] ================================================
[2026-06-12 18:54:52,701.701 INFO    ] Launching Daemon at Fri Jun 12 18:54:52 IST 2026
[2026-06-12 18:54:52,712.712 INFO    ] ================================================
[2026-06-12 18:54:53,093.093 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 18:54:53
[2026-06-12 18:54:53,433.433 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 18:54:53,583.583 INFO    ] Initializing speech engine...
[2026-06-12 18:54:53,588.588 INFO    ] 2026-06-12 18:54:53
[2026-06-12 18:54:53,797.797 INFO    ] 2026-06-12 18:54:53
[2026-06-12 18:54:53,826.826 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 18:54:54,009.009 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 18:54:54,018.018 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 18:54:54,148.148 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 18:54:54,215.215 INFO    ] time= 12/06/2026 18:54:54
[2026-06-12 18:54:54,239.239 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 18:54:54,245.245 INFO    ] Checking for existing commands in stream...
[2026-06-12 18:54:54,311.311 INFO    ] No existing commands found in stream
[2026-06-12 18:54:59,326.326 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 18:54:59,329.329 INFO    ] Waiting 2.98 seconds before fallback handling...
[2026-06-12 18:55:02,689.689 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 18:55:02,691.691 INFO    ] Checking for system updates...
[2026-06-12 18:55:02,711.711 INFO    ] 200
[2026-06-12 18:55:02,713.713 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:55:02,743.743 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 18:55:02,744.744 INFO    ] No update needed
[2026-06-12 18:55:02,746.746 INFO    ] Checking for camera pi updates...
[2026-06-12 18:55:02,767.767 INFO    ] 200
[2026-06-12 18:55:02,768.768 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:55:02,791.791 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 18:55:02,832.832 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 18:55:02,833.833 INFO    ] No camera update needed
[2026-06-12 18:55:02,835.835 INFO    ] Script finished. Safe exiting...
[2026-06-12 18:55:02,836.836 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 18:55:02,839.839 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 18:55:02,842.842 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 18:55:04,880.880 INFO    ] ================================================
[2026-06-12 18:55:04,895.895 INFO    ] Launching Daemon at Fri Jun 12 18:55:04 IST 2026
[2026-06-12 18:55:04,906.906 INFO    ] ================================================
[2026-06-12 18:55:05,250.250 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 18:55:05
[2026-06-12 18:55:05,564.564 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 18:55:05,734.734 INFO    ] Initializing speech engine...
[2026-06-12 18:55:05,739.739 INFO    ] 2026-06-12 18:55:05
[2026-06-12 18:55:05,943.943 INFO    ] 2026-06-12 18:55:05
[2026-06-12 18:55:05,973.973 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 18:55:06,159.159 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 18:55:06,168.168 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 18:55:06,296.296 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 18:55:06,358.358 INFO    ] time= 12/06/2026 18:55:06
[2026-06-12 18:55:06,391.391 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 18:55:06,393.393 INFO    ] Checking for existing commands in stream...
[2026-06-12 18:55:06,466.466 INFO    ] No existing commands found in stream
[2026-06-12 18:55:11,480.480 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 18:55:11,483.483 INFO    ] Waiting 0.56 seconds before fallback handling...
[2026-06-12 18:55:12,436.436 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 18:55:12,438.438 INFO    ] Checking for system updates...
[2026-06-12 18:55:12,458.458 INFO    ] 200
[2026-06-12 18:55:12,459.459 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:55:12,491.491 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 18:55:12,492.492 INFO    ] No update needed
[2026-06-12 18:55:12,493.493 INFO    ] Checking for camera pi updates...
[2026-06-12 18:55:12,512.512 INFO    ] 200
[2026-06-12 18:55:12,514.514 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:55:12,540.540 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 18:55:12,585.585 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 18:55:12,586.586 INFO    ] No camera update needed
[2026-06-12 18:55:12,587.587 INFO    ] Script finished. Safe exiting...
[2026-06-12 18:55:12,588.588 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 18:55:12,592.592 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 18:55:12,594.594 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 18:55:14,634.634 INFO    ] ================================================
[2026-06-12 18:55:14,650.650 INFO    ] Launching Daemon at Fri Jun 12 18:55:14 IST 2026
[2026-06-12 18:55:14,660.660 INFO    ] ================================================
[2026-06-12 18:55:15,027.027 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 18:55:15
[2026-06-12 18:55:15,339.339 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 18:55:15,471.471 INFO    ] Initializing speech engine...
[2026-06-12 18:55:15,475.475 INFO    ] 2026-06-12 18:55:15
[2026-06-12 18:55:15,679.679 INFO    ] 2026-06-12 18:55:15
[2026-06-12 18:55:15,712.712 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 18:55:15,938.938 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 18:55:15,941.941 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 18:55:16,081.081 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 18:55:16,143.143 INFO    ] time= 12/06/2026 18:55:16
[2026-06-12 18:55:16,178.178 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 18:55:16,189.189 INFO    ] Checking for existing commands in stream...
[2026-06-12 18:55:16,292.292 INFO    ] No existing commands found in stream
[2026-06-12 18:55:21,301.301 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 18:55:21,304.304 INFO    ] Waiting 3.86 seconds before fallback handling...
[2026-06-12 18:55:25,557.557 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 18:55:25,558.558 INFO    ] Checking for system updates...
[2026-06-12 18:55:25,579.579 INFO    ] 200
[2026-06-12 18:55:25,580.580 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:55:25,610.610 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 18:55:25,611.611 INFO    ] No update needed
[2026-06-12 18:55:25,612.612 INFO    ] Checking for camera pi updates...
[2026-06-12 18:55:25,631.631 INFO    ] 200
[2026-06-12 18:55:25,633.633 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:55:25,657.657 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 18:55:25,701.701 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 18:55:25,702.702 INFO    ] No camera update needed
[2026-06-12 18:55:25,704.704 INFO    ] Script finished. Safe exiting...
[2026-06-12 18:55:25,705.705 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 18:55:25,708.708 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 18:55:25,710.710 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 18:55:27,750.750 INFO    ] ================================================
[2026-06-12 18:55:27,765.765 INFO    ] Launching Daemon at Fri Jun 12 18:55:27 IST 2026
[2026-06-12 18:55:27,776.776 INFO    ] ================================================
[2026-06-12 18:55:28,130.130 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 18:55:28
[2026-06-12 18:55:28,446.446 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 18:55:28,583.583 INFO    ] Initializing speech engine...
[2026-06-12 18:55:28,596.596 INFO    ] 2026-06-12 18:55:28
[2026-06-12 18:55:28,809.809 INFO    ] 2026-06-12 18:55:28
[2026-06-12 18:55:28,838.838 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 18:55:29,025.025 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 18:55:29,034.034 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 18:55:29,186.186 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 18:55:29,236.236 INFO    ] time= 12/06/2026 18:55:29
[2026-06-12 18:55:29,258.258 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 18:55:29,264.264 INFO    ] Checking for existing commands in stream...
[2026-06-12 18:55:29,332.332 INFO    ] No existing commands found in stream
[2026-06-12 18:55:34,357.357 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 18:55:34,360.360 INFO    ] Waiting 2.63 seconds before fallback handling...
[2026-06-12 18:55:37,407.407 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 18:55:37,408.408 INFO    ] Checking for system updates...
[2026-06-12 18:55:37,430.430 INFO    ] 200
[2026-06-12 18:55:37,432.432 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:55:37,465.465 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 18:55:37,466.466 INFO    ] No update needed
[2026-06-12 18:55:37,468.468 INFO    ] Checking for camera pi updates...
[2026-06-12 18:55:37,488.488 INFO    ] 200
[2026-06-12 18:55:37,490.490 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:55:37,515.515 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 18:55:37,561.561 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 18:55:37,563.563 INFO    ] No camera update needed
[2026-06-12 18:55:37,564.564 INFO    ] Script finished. Safe exiting...
[2026-06-12 18:55:37,566.566 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 18:55:37,569.569 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 18:55:37,572.572 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 18:55:39,610.610 INFO    ] ================================================
[2026-06-12 18:55:39,626.626 INFO    ] Launching Daemon at Fri Jun 12 18:55:39 IST 2026
[2026-06-12 18:55:39,637.637 INFO    ] ================================================
[2026-06-12 18:55:39,967.967 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 18:55:39
[2026-06-12 18:55:40,284.284 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 18:55:40,420.420 INFO    ] Initializing speech engine...
[2026-06-12 18:55:40,428.428 INFO    ] 2026-06-12 18:55:40
[2026-06-12 18:55:40,654.654 INFO    ] 2026-06-12 18:55:40
[2026-06-12 18:55:40,685.685 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 18:55:40,885.885 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 18:55:40,893.893 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 18:55:41,027.027 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 18:55:41,078.078 INFO    ] time= 12/06/2026 18:55:41
[2026-06-12 18:55:41,111.111 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 18:55:41,134.134 INFO    ] Checking for existing commands in stream...
[2026-06-12 18:55:41,211.211 INFO    ] No existing commands found in stream
[2026-06-12 18:55:46,221.221 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 18:55:46,223.223 INFO    ] Waiting 3.69 seconds before fallback handling...
[2026-06-12 18:55:50,279.279 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 18:55:50,281.281 INFO    ] Checking for system updates...
[2026-06-12 18:55:50,303.303 INFO    ] 200
[2026-06-12 18:55:50,304.304 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:55:50,339.339 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 18:55:50,340.340 INFO    ] No update needed
[2026-06-12 18:55:50,342.342 INFO    ] Checking for camera pi updates...
[2026-06-12 18:55:50,363.363 INFO    ] 200
[2026-06-12 18:55:50,365.365 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:55:50,390.390 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 18:55:50,433.433 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 18:55:50,435.435 INFO    ] No camera update needed
[2026-06-12 18:55:50,436.436 INFO    ] Script finished. Safe exiting...
[2026-06-12 18:55:50,437.437 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 18:55:50,441.441 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 18:55:50,444.444 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 18:55:52,482.482 INFO    ] ================================================
[2026-06-12 18:55:52,497.497 INFO    ] Launching Daemon at Fri Jun 12 18:55:52 IST 2026
[2026-06-12 18:55:52,508.508 INFO    ] ================================================
[2026-06-12 18:55:52,877.877 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 18:55:52
[2026-06-12 18:55:53,188.188 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 18:55:53,318.318 INFO    ] Initializing speech engine...
[2026-06-12 18:55:53,321.321 INFO    ] 2026-06-12 18:55:53
[2026-06-12 18:55:53,547.547 INFO    ] 2026-06-12 18:55:53
[2026-06-12 18:55:53,575.575 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 18:55:53,761.761 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 18:55:53,771.771 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 18:55:53,907.907 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 18:55:53,969.969 INFO    ] time= 12/06/2026 18:55:53
[2026-06-12 18:55:53,993.993 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 18:55:54,000.000 INFO    ] Checking for existing commands in stream...
[2026-06-12 18:55:54,067.067 INFO    ] No existing commands found in stream
[2026-06-12 18:55:59,082.082 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 18:55:59,085.085 INFO    ] Waiting 1.90 seconds before fallback handling...
[2026-06-12 18:56:01,365.365 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 18:56:01,367.367 INFO    ] Checking for system updates...
[2026-06-12 18:56:01,387.387 INFO    ] 200
[2026-06-12 18:56:01,389.389 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:56:01,419.419 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 18:56:01,420.420 INFO    ] No update needed
[2026-06-12 18:56:01,422.422 INFO    ] Checking for camera pi updates...
[2026-06-12 18:56:01,441.441 INFO    ] 200
[2026-06-12 18:56:01,443.443 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:56:01,466.466 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 18:56:01,511.511 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 18:56:01,512.512 INFO    ] No camera update needed
[2026-06-12 18:56:01,513.513 INFO    ] Script finished. Safe exiting...
[2026-06-12 18:56:01,514.514 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 18:56:01,517.517 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 18:56:01,520.520 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 18:56:03,553.553 INFO    ] ================================================
[2026-06-12 18:56:03,568.568 INFO    ] Launching Daemon at Fri Jun 12 18:56:03 IST 2026
[2026-06-12 18:56:03,580.580 INFO    ] ================================================
[2026-06-12 18:56:03,953.953 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 18:56:03
[2026-06-12 18:56:04,294.294 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 18:56:04,447.447 INFO    ] Initializing speech engine...
[2026-06-12 18:56:04,453.453 INFO    ] 2026-06-12 18:56:04
[2026-06-12 18:56:04,664.664 INFO    ] 2026-06-12 18:56:04
[2026-06-12 18:56:04,693.693 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 18:56:04,859.859 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 18:56:04,884.884 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 18:56:05,053.053 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 18:56:05,104.104 INFO    ] time= 12/06/2026 18:56:05
[2026-06-12 18:56:05,115.115 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 18:56:05,122.122 INFO    ] Checking for existing commands in stream...
[2026-06-12 18:56:05,190.190 INFO    ] No existing commands found in stream
[2026-06-12 18:56:10,204.204 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 18:56:10,207.207 INFO    ] Waiting 3.16 seconds before fallback handling...
[2026-06-12 18:56:13,744.744 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 18:56:13,746.746 INFO    ] Checking for system updates...
[2026-06-12 18:56:13,767.767 INFO    ] 200
[2026-06-12 18:56:13,768.768 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:56:13,803.803 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 18:56:13,805.805 INFO    ] No update needed
[2026-06-12 18:56:13,806.806 INFO    ] Checking for camera pi updates...
[2026-06-12 18:56:13,826.826 INFO    ] 200
[2026-06-12 18:56:13,827.827 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:56:13,851.851 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 18:56:13,894.894 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 18:56:13,896.896 INFO    ] No camera update needed
[2026-06-12 18:56:13,897.897 INFO    ] Script finished. Safe exiting...
[2026-06-12 18:56:13,899.899 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 18:56:13,902.902 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 18:56:13,905.905 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 18:56:15,943.943 INFO    ] ================================================
[2026-06-12 18:56:15,959.959 INFO    ] Launching Daemon at Fri Jun 12 18:56:15 IST 2026
[2026-06-12 18:56:15,969.969 INFO    ] ================================================
[2026-06-12 18:56:16,328.328 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 18:56:16
[2026-06-12 18:56:16,669.669 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 18:56:16,820.820 INFO    ] Initializing speech engine...
[2026-06-12 18:56:16,825.825 INFO    ] 2026-06-12 18:56:16
[2026-06-12 18:56:17,035.035 INFO    ] 2026-06-12 18:56:17
[2026-06-12 18:56:17,064.064 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 18:56:17,217.217 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 18:56:17,251.251 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 18:56:17,380.380 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 18:56:17,441.441 INFO    ] time= 12/06/2026 18:56:17
[2026-06-12 18:56:17,479.479 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 18:56:17,481.481 INFO    ] Checking for existing commands in stream...
[2026-06-12 18:56:17,552.552 INFO    ] No existing commands found in stream
[2026-06-12 18:56:22,562.562 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 18:56:22,565.565 INFO    ] Waiting 0.25 seconds before fallback handling...
[2026-06-12 18:56:23,176.176 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 18:56:23,177.177 INFO    ] Checking for system updates...
[2026-06-12 18:56:23,199.199 INFO    ] 200
[2026-06-12 18:56:23,201.201 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:56:23,234.234 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 18:56:23,235.235 INFO    ] No update needed
[2026-06-12 18:56:23,236.236 INFO    ] Checking for camera pi updates...
[2026-06-12 18:56:23,257.257 INFO    ] 200
[2026-06-12 18:56:23,259.259 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:56:23,285.285 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 18:56:23,334.334 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 18:56:23,335.335 INFO    ] No camera update needed
[2026-06-12 18:56:23,336.336 INFO    ] Script finished. Safe exiting...
[2026-06-12 18:56:23,338.338 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 18:56:23,341.341 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 18:56:23,344.344 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 18:56:25,382.382 INFO    ] ================================================
[2026-06-12 18:56:25,398.398 INFO    ] Launching Daemon at Fri Jun 12 18:56:25 IST 2026
[2026-06-12 18:56:25,409.409 INFO    ] ================================================
[2026-06-12 18:56:25,777.777 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 18:56:25
[2026-06-12 18:56:26,094.094 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 18:56:26,238.238 INFO    ] Initializing speech engine...
[2026-06-12 18:56:26,243.243 INFO    ] 2026-06-12 18:56:26
[2026-06-12 18:56:26,445.445 INFO    ] 2026-06-12 18:56:26
[2026-06-12 18:56:26,474.474 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 18:56:26,657.657 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 18:56:26,666.666 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 18:56:26,794.794 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 18:56:26,861.861 INFO    ] time= 12/06/2026 18:56:26
[2026-06-12 18:56:26,885.885 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 18:56:26,891.891 INFO    ] Checking for existing commands in stream...
[2026-06-12 18:56:26,981.981 INFO    ] No existing commands found in stream
[2026-06-12 18:56:31,989.989 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 18:56:31,991.991 INFO    ] Waiting 3.42 seconds before fallback handling...
[2026-06-12 18:56:35,804.804 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 18:56:35,805.805 INFO    ] Checking for system updates...
[2026-06-12 18:56:35,826.826 INFO    ] 200
[2026-06-12 18:56:35,827.827 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:56:35,857.857 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 18:56:35,858.858 INFO    ] No update needed
[2026-06-12 18:56:35,859.859 INFO    ] Checking for camera pi updates...
[2026-06-12 18:56:35,879.879 INFO    ] 200
[2026-06-12 18:56:35,880.880 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:56:35,906.906 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 18:56:35,955.955 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 18:56:35,956.956 INFO    ] No camera update needed
[2026-06-12 18:56:35,958.958 INFO    ] Script finished. Safe exiting...
[2026-06-12 18:56:35,959.959 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 18:56:35,962.962 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 18:56:35,965.965 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 18:56:38,005.005 INFO    ] ================================================
[2026-06-12 18:56:38,020.020 INFO    ] Launching Daemon at Fri Jun 12 18:56:38 IST 2026
[2026-06-12 18:56:38,031.031 INFO    ] ================================================
[2026-06-12 18:56:38,398.398 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 18:56:38
[2026-06-12 18:56:38,741.741 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 18:56:38,883.883 INFO    ] Initializing speech engine...
[2026-06-12 18:56:38,891.891 INFO    ] 2026-06-12 18:56:38
[2026-06-12 18:56:39,112.112 INFO    ] 2026-06-12 18:56:39
[2026-06-12 18:56:39,141.141 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 18:56:39,330.330 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 18:56:39,340.340 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 18:56:39,491.491 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 18:56:39,542.542 INFO    ] time= 12/06/2026 18:56:39
[2026-06-12 18:56:39,565.565 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 18:56:39,571.571 INFO    ] Checking for existing commands in stream...
[2026-06-12 18:56:39,639.639 INFO    ] No existing commands found in stream
[2026-06-12 18:56:44,648.648 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 18:56:44,652.652 INFO    ] Waiting 2.68 seconds before fallback handling...
[2026-06-12 18:56:48,346.346 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 18:56:48,350.350 INFO    ] Checking for system updates...
[2026-06-12 18:56:48,392.392 INFO    ] 200
[2026-06-12 18:56:48,395.395 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:56:48,447.447 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 18:56:48,449.449 INFO    ] No update needed
[2026-06-12 18:56:48,450.450 INFO    ] Checking for camera pi updates...
[2026-06-12 18:56:48,472.472 INFO    ] 200
[2026-06-12 18:56:48,473.473 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:56:48,499.499 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 18:56:48,608.608 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 18:56:48,609.609 INFO    ] No camera update needed
[2026-06-12 18:56:48,611.611 INFO    ] Script finished. Safe exiting...
[2026-06-12 18:56:48,612.612 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 18:56:48,616.616 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 18:56:48,619.619 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 18:56:50,657.657 INFO    ] ================================================
[2026-06-12 18:56:50,672.672 INFO    ] Launching Daemon at Fri Jun 12 18:56:50 IST 2026
[2026-06-12 18:56:50,684.684 INFO    ] ================================================
[2026-06-12 18:56:51,050.050 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 18:56:51
[2026-06-12 18:56:51,366.366 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 18:56:51,496.496 INFO    ] Initializing speech engine...
[2026-06-12 18:56:51,505.505 INFO    ] 2026-06-12 18:56:51
[2026-06-12 18:56:51,720.720 INFO    ] 2026-06-12 18:56:51
[2026-06-12 18:56:51,748.748 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 18:56:51,934.934 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 18:56:51,943.943 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 18:56:52,074.074 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 18:56:52,133.133 INFO    ] time= 12/06/2026 18:56:52
[2026-06-12 18:56:52,166.166 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 18:56:52,168.168 INFO    ] Checking for existing commands in stream...
[2026-06-12 18:56:52,240.240 INFO    ] No existing commands found in stream
[2026-06-12 18:56:57,250.250 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 18:56:57,252.252 INFO    ] Waiting 2.30 seconds before fallback handling...
[2026-06-12 18:56:59,922.922 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 18:56:59,923.923 INFO    ] Checking for system updates...
[2026-06-12 18:56:59,944.944 INFO    ] 200
[2026-06-12 18:56:59,945.945 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:56:59,980.980 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 18:56:59,982.982 INFO    ] No update needed
[2026-06-12 18:56:59,983.983 INFO    ] Checking for camera pi updates...
[2026-06-12 18:57:00,002.002 INFO    ] 200
[2026-06-12 18:57:00,003.003 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:57:00,028.028 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 18:57:00,068.068 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 18:57:00,070.070 INFO    ] No camera update needed
[2026-06-12 18:57:00,071.071 INFO    ] Script finished. Safe exiting...
[2026-06-12 18:57:00,072.072 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 18:57:00,075.075 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 18:57:00,078.078 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 18:57:02,112.112 INFO    ] ================================================
[2026-06-12 18:57:02,128.128 INFO    ] Launching Daemon at Fri Jun 12 18:57:02 IST 2026
[2026-06-12 18:57:02,142.142 INFO    ] ================================================
[2026-06-12 18:57:02,511.511 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 18:57:02
[2026-06-12 18:57:02,875.875 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 18:57:03,041.041 INFO    ] Initializing speech engine...
[2026-06-12 18:57:03,045.045 INFO    ] 2026-06-12 18:57:03
[2026-06-12 18:57:03,281.281 INFO    ] 2026-06-12 18:57:03
[2026-06-12 18:57:03,305.305 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 18:57:03,467.467 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 18:57:03,515.515 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 18:57:03,667.667 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 18:57:03,736.736 INFO    ] time= 12/06/2026 18:57:03
[2026-06-12 18:57:03,766.766 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 18:57:03,768.768 INFO    ] Checking for existing commands in stream...
[2026-06-12 18:57:03,843.843 INFO    ] No existing commands found in stream
[2026-06-12 18:57:08,854.854 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 18:57:08,857.857 INFO    ] Waiting 1.03 seconds before fallback handling...
[2026-06-12 18:57:10,251.251 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 18:57:10,253.253 INFO    ] Checking for system updates...
[2026-06-12 18:57:10,273.273 INFO    ] 200
[2026-06-12 18:57:10,275.275 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:57:10,307.307 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 18:57:10,309.309 INFO    ] No update needed
[2026-06-12 18:57:10,311.311 INFO    ] Checking for camera pi updates...
[2026-06-12 18:57:10,331.331 INFO    ] 200
[2026-06-12 18:57:10,333.333 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:57:10,357.357 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 18:57:10,404.404 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 18:57:10,405.405 INFO    ] No camera update needed
[2026-06-12 18:57:10,407.407 INFO    ] Script finished. Safe exiting...
[2026-06-12 18:57:10,408.408 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 18:57:10,412.412 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 18:57:10,415.415 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 18:57:12,453.453 INFO    ] ================================================
[2026-06-12 18:57:12,468.468 INFO    ] Launching Daemon at Fri Jun 12 18:57:12 IST 2026
[2026-06-12 18:57:12,480.480 INFO    ] ================================================
[2026-06-12 18:57:12,852.852 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 18:57:12
[2026-06-12 18:57:13,169.169 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 18:57:13,313.313 INFO    ] Initializing speech engine...
[2026-06-12 18:57:13,319.319 INFO    ] 2026-06-12 18:57:13
[2026-06-12 18:57:13,522.522 INFO    ] 2026-06-12 18:57:13
[2026-06-12 18:57:13,550.550 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 18:57:13,735.735 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 18:57:13,745.745 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 18:57:13,883.883 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 18:57:13,939.939 INFO    ] time= 12/06/2026 18:57:13
[2026-06-12 18:57:13,962.962 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 18:57:13,969.969 INFO    ] Checking for existing commands in stream...
[2026-06-12 18:57:14,043.043 INFO    ] No existing commands found in stream
[2026-06-12 18:57:19,058.058 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 18:57:19,061.061 INFO    ] Waiting 0.06 seconds before fallback handling...
[2026-06-12 18:57:19,481.481 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 18:57:19,482.482 INFO    ] Checking for system updates...
[2026-06-12 18:57:19,503.503 INFO    ] 200
[2026-06-12 18:57:19,504.504 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:57:19,536.536 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 18:57:19,538.538 INFO    ] No update needed
[2026-06-12 18:57:19,539.539 INFO    ] Checking for camera pi updates...
[2026-06-12 18:57:19,558.558 INFO    ] 200
[2026-06-12 18:57:19,560.560 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:57:19,583.583 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 18:57:19,626.626 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 18:57:19,628.628 INFO    ] No camera update needed
[2026-06-12 18:57:19,629.629 INFO    ] Script finished. Safe exiting...
[2026-06-12 18:57:19,630.630 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 18:57:19,633.633 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 18:57:19,636.636 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 18:57:21,676.676 INFO    ] ================================================
[2026-06-12 18:57:21,691.691 INFO    ] Launching Daemon at Fri Jun 12 18:57:21 IST 2026
[2026-06-12 18:57:21,702.702 INFO    ] ================================================
[2026-06-12 18:57:22,068.068 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 18:57:22
[2026-06-12 18:57:22,408.408 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 18:57:22,554.554 INFO    ] Initializing speech engine...
[2026-06-12 18:57:22,565.565 INFO    ] 2026-06-12 18:57:22
[2026-06-12 18:57:22,776.776 INFO    ] 2026-06-12 18:57:22
[2026-06-12 18:57:22,805.805 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 18:57:22,992.992 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 18:57:23,004.004 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 18:57:23,188.188 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 18:57:23,222.222 INFO    ] time= 12/06/2026 18:57:23
[2026-06-12 18:57:23,228.228 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 18:57:23,230.230 INFO    ] Checking for existing commands in stream...
[2026-06-12 18:57:23,298.298 INFO    ] No existing commands found in stream
[2026-06-12 18:57:28,308.308 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 18:57:28,311.311 INFO    ] Waiting 0.09 seconds before fallback handling...
[2026-06-12 18:57:28,782.782 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 18:57:28,783.783 INFO    ] Checking for system updates...
[2026-06-12 18:57:28,805.805 INFO    ] 200
[2026-06-12 18:57:28,807.807 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:57:28,843.843 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 18:57:28,845.845 INFO    ] No update needed
[2026-06-12 18:57:28,847.847 INFO    ] Checking for camera pi updates...
[2026-06-12 18:57:28,867.867 INFO    ] 200
[2026-06-12 18:57:28,869.869 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:57:28,893.893 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 18:57:28,938.938 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 18:57:28,940.940 INFO    ] No camera update needed
[2026-06-12 18:57:28,942.942 INFO    ] Script finished. Safe exiting...
[2026-06-12 18:57:28,943.943 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 18:57:28,946.946 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 18:57:28,950.950 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 18:57:30,989.989 INFO    ] ================================================
[2026-06-12 18:57:31,005.005 INFO    ] Launching Daemon at Fri Jun 12 18:57:30 IST 2026
[2026-06-12 18:57:31,016.016 INFO    ] ================================================
[2026-06-12 18:57:31,347.347 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 18:57:31
[2026-06-12 18:57:31,662.662 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 18:57:31,797.797 INFO    ] Initializing speech engine...
[2026-06-12 18:57:31,802.802 INFO    ] 2026-06-12 18:57:31
[2026-06-12 18:57:31,997.997 INFO    ] 2026-06-12 18:57:31
[2026-06-12 18:57:32,054.054 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 18:57:32,231.231 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 18:57:32,275.275 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 18:57:32,461.461 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 18:57:32,519.519 INFO    ] time= 12/06/2026 18:57:32
[2026-06-12 18:57:32,521.521 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 18:57:32,523.523 INFO    ] Checking for existing commands in stream...
[2026-06-12 18:57:32,644.644 INFO    ] No existing commands found in stream
[2026-06-12 18:57:37,654.654 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 18:57:37,656.656 INFO    ] Waiting 3.31 seconds before fallback handling...
[2026-06-12 18:57:41,333.333 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 18:57:41,335.335 INFO    ] Checking for system updates...
[2026-06-12 18:57:41,355.355 INFO    ] 200
[2026-06-12 18:57:41,356.356 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:57:41,386.386 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 18:57:41,387.387 INFO    ] No update needed
[2026-06-12 18:57:41,389.389 INFO    ] Checking for camera pi updates...
[2026-06-12 18:57:41,408.408 INFO    ] 200
[2026-06-12 18:57:41,409.409 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:57:41,432.432 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 18:57:41,572.572 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 18:57:41,573.573 INFO    ] No camera update needed
[2026-06-12 18:57:41,574.574 INFO    ] Script finished. Safe exiting...
[2026-06-12 18:57:41,575.575 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 18:57:41,578.578 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 18:57:41,581.581 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 18:57:43,619.619 INFO    ] ================================================
[2026-06-12 18:57:43,635.635 INFO    ] Launching Daemon at Fri Jun 12 18:57:43 IST 2026
[2026-06-12 18:57:43,646.646 INFO    ] ================================================
[2026-06-12 18:57:43,973.973 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 18:57:43
[2026-06-12 18:57:44,288.288 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 18:57:44,429.429 INFO    ] Initializing speech engine...
[2026-06-12 18:57:44,435.435 INFO    ] 2026-06-12 18:57:44
[2026-06-12 18:57:44,640.640 INFO    ] 2026-06-12 18:57:44
[2026-06-12 18:57:44,668.668 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 18:57:44,852.852 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 18:57:44,864.864 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 18:57:45,005.005 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 18:57:45,057.057 INFO    ] time= 12/06/2026 18:57:45
[2026-06-12 18:57:45,081.081 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 18:57:45,086.086 INFO    ] Checking for existing commands in stream...
[2026-06-12 18:57:45,154.154 INFO    ] No existing commands found in stream
[2026-06-12 18:57:50,178.178 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 18:57:50,181.181 INFO    ] Waiting 3.79 seconds before fallback handling...
[2026-06-12 18:57:54,416.416 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 18:57:54,418.418 INFO    ] Checking for system updates...
[2026-06-12 18:57:54,440.440 INFO    ] 200
[2026-06-12 18:57:54,442.442 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:57:54,474.474 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 18:57:54,476.476 INFO    ] No update needed
[2026-06-12 18:57:54,477.477 INFO    ] Checking for camera pi updates...
[2026-06-12 18:57:54,500.500 INFO    ] 200
[2026-06-12 18:57:54,502.502 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:57:54,525.525 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 18:57:54,571.571 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 18:57:54,572.572 INFO    ] No camera update needed
[2026-06-12 18:57:54,574.574 INFO    ] Script finished. Safe exiting...
[2026-06-12 18:57:54,575.575 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 18:57:54,578.578 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 18:57:54,581.581 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 18:57:56,622.622 INFO    ] ================================================
[2026-06-12 18:57:56,638.638 INFO    ] Launching Daemon at Fri Jun 12 18:57:56 IST 2026
[2026-06-12 18:57:56,649.649 INFO    ] ================================================
[2026-06-12 18:57:57,015.015 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 18:57:57
[2026-06-12 18:57:57,355.355 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 18:57:57,507.507 INFO    ] Initializing speech engine...
[2026-06-12 18:57:57,512.512 INFO    ] 2026-06-12 18:57:57
[2026-06-12 18:57:57,723.723 INFO    ] 2026-06-12 18:57:57
[2026-06-12 18:57:57,752.752 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 18:57:57,938.938 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 18:57:57,948.948 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 18:57:58,101.101 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 18:57:58,151.151 INFO    ] time= 12/06/2026 18:57:58
[2026-06-12 18:57:58,177.177 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 18:57:58,179.179 INFO    ] Checking for existing commands in stream...
[2026-06-12 18:57:58,247.247 INFO    ] No existing commands found in stream
[2026-06-12 18:58:03,280.280 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 18:58:03,283.283 INFO    ] Waiting 3.87 seconds before fallback handling...
[2026-06-12 18:58:07,553.553 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 18:58:07,555.555 INFO    ] Checking for system updates...
[2026-06-12 18:58:07,580.580 INFO    ] 200
[2026-06-12 18:58:07,581.581 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:58:07,611.611 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 18:58:07,612.612 INFO    ] No update needed
[2026-06-12 18:58:07,614.614 INFO    ] Checking for camera pi updates...
[2026-06-12 18:58:07,634.634 INFO    ] 200
[2026-06-12 18:58:07,635.635 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:58:07,658.658 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 18:58:07,702.702 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 18:58:07,703.703 INFO    ] No camera update needed
[2026-06-12 18:58:07,705.705 INFO    ] Script finished. Safe exiting...
[2026-06-12 18:58:07,706.706 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 18:58:07,709.709 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 18:58:07,712.712 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 18:58:09,752.752 INFO    ] ================================================
[2026-06-12 18:58:09,767.767 INFO    ] Launching Daemon at Fri Jun 12 18:58:09 IST 2026
[2026-06-12 18:58:09,778.778 INFO    ] ================================================
[2026-06-12 18:58:10,103.103 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 18:58:10
[2026-06-12 18:58:10,414.414 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 18:58:10,547.547 INFO    ] Initializing speech engine...
[2026-06-12 18:58:10,557.557 INFO    ] 2026-06-12 18:58:10
[2026-06-12 18:58:10,776.776 INFO    ] 2026-06-12 18:58:10
[2026-06-12 18:58:10,805.805 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 18:58:10,991.991 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 18:58:11,001.001 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 18:58:11,132.132 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 18:58:11,199.199 INFO    ] time= 12/06/2026 18:58:11
[2026-06-12 18:58:11,223.223 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 18:58:11,230.230 INFO    ] Checking for existing commands in stream...
[2026-06-12 18:58:11,298.298 INFO    ] No existing commands found in stream
[2026-06-12 18:58:16,327.327 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 18:58:16,331.331 INFO    ] Waiting 2.32 seconds before fallback handling...
[2026-06-12 18:58:19,076.076 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 18:58:19,078.078 INFO    ] Checking for system updates...
[2026-06-12 18:58:19,098.098 INFO    ] 200
[2026-06-12 18:58:19,100.100 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:58:19,130.130 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 18:58:19,131.131 INFO    ] No update needed
[2026-06-12 18:58:19,132.132 INFO    ] Checking for camera pi updates...
[2026-06-12 18:58:19,151.151 INFO    ] 200
[2026-06-12 18:58:19,153.153 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:58:19,176.176 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 18:58:19,221.221 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 18:58:19,223.223 INFO    ] No camera update needed
[2026-06-12 18:58:19,224.224 INFO    ] Script finished. Safe exiting...
[2026-06-12 18:58:19,225.225 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 18:58:19,228.228 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 18:58:19,231.231 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 18:58:21,269.269 INFO    ] ================================================
[2026-06-12 18:58:21,284.284 INFO    ] Launching Daemon at Fri Jun 12 18:58:21 IST 2026
[2026-06-12 18:58:21,295.295 INFO    ] ================================================
[2026-06-12 18:58:21,655.655 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 18:58:21
[2026-06-12 18:58:21,992.992 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 18:58:22,143.143 INFO    ] Initializing speech engine...
[2026-06-12 18:58:22,148.148 INFO    ] 2026-06-12 18:58:22
[2026-06-12 18:58:22,358.358 INFO    ] 2026-06-12 18:58:22
[2026-06-12 18:58:22,386.386 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 18:58:22,575.575 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 18:58:22,584.584 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 18:58:22,742.742 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 18:58:22,803.803 INFO    ] time= 12/06/2026 18:58:22
[2026-06-12 18:58:22,809.809 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 18:58:22,815.815 INFO    ] Checking for existing commands in stream...
[2026-06-12 18:58:22,883.883 INFO    ] No existing commands found in stream
[2026-06-12 18:58:27,908.908 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 18:58:27,911.911 INFO    ] Waiting 1.59 seconds before fallback handling...
[2026-06-12 18:58:29,890.890 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 18:58:29,892.892 INFO    ] Checking for system updates...
[2026-06-12 18:58:29,914.914 INFO    ] 200
[2026-06-12 18:58:29,915.915 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:58:29,948.948 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 18:58:29,949.949 INFO    ] No update needed
[2026-06-12 18:58:29,951.951 INFO    ] Checking for camera pi updates...
[2026-06-12 18:58:29,971.971 INFO    ] 200
[2026-06-12 18:58:29,972.972 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:58:29,995.995 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 18:58:30,056.056 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 18:58:30,058.058 INFO    ] No camera update needed
[2026-06-12 18:58:30,059.059 INFO    ] Script finished. Safe exiting...
[2026-06-12 18:58:30,061.061 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 18:58:30,064.064 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 18:58:30,067.067 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 18:58:32,096.096 INFO    ] ================================================
[2026-06-12 18:58:32,105.105 INFO    ] Launching Daemon at Fri Jun 12 18:58:32 IST 2026
[2026-06-12 18:58:32,111.111 INFO    ] ================================================
[2026-06-12 18:58:32,485.485 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 18:58:32
[2026-06-12 18:58:32,820.820 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 18:58:32,958.958 INFO    ] Initializing speech engine...
[2026-06-12 18:58:32,966.966 INFO    ] 2026-06-12 18:58:32
[2026-06-12 18:58:33,182.182 INFO    ] 2026-06-12 18:58:33
[2026-06-12 18:58:33,211.211 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 18:58:33,395.395 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 18:58:33,404.404 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 18:58:33,549.549 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 18:58:33,601.601 INFO    ] time= 12/06/2026 18:58:33
[2026-06-12 18:58:33,624.624 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 18:58:33,630.630 INFO    ] Checking for existing commands in stream...
[2026-06-12 18:58:33,697.697 INFO    ] No existing commands found in stream
[2026-06-12 18:58:38,722.722 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 18:58:38,725.725 INFO    ] Waiting 3.44 seconds before fallback handling...
[2026-06-12 18:58:42,563.563 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 18:58:42,565.565 INFO    ] Checking for system updates...
[2026-06-12 18:58:42,586.586 INFO    ] 200
[2026-06-12 18:58:42,588.588 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:58:42,620.620 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 18:58:42,621.621 INFO    ] No update needed
[2026-06-12 18:58:42,623.623 INFO    ] Checking for camera pi updates...
[2026-06-12 18:58:42,642.642 INFO    ] 200
[2026-06-12 18:58:42,644.644 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:58:42,667.667 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 18:58:42,706.706 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 18:58:42,708.708 INFO    ] No camera update needed
[2026-06-12 18:58:42,709.709 INFO    ] Script finished. Safe exiting...
[2026-06-12 18:58:42,711.711 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 18:58:42,714.714 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 18:58:42,717.717 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 18:58:44,756.756 INFO    ] ================================================
[2026-06-12 18:58:44,772.772 INFO    ] Launching Daemon at Fri Jun 12 18:58:44 IST 2026
[2026-06-12 18:58:44,783.783 INFO    ] ================================================
[2026-06-12 18:58:45,115.115 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 18:58:45
[2026-06-12 18:58:45,431.431 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 18:58:45,562.562 INFO    ] Initializing speech engine...
[2026-06-12 18:58:45,567.567 INFO    ] 2026-06-12 18:58:45
[2026-06-12 18:58:45,795.795 INFO    ] 2026-06-12 18:58:45
[2026-06-12 18:58:45,826.826 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 18:58:46,022.022 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 18:58:46,026.026 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 18:58:46,169.169 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 18:58:46,231.231 INFO    ] time= 12/06/2026 18:58:46
[2026-06-12 18:58:46,270.270 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 18:58:46,274.274 INFO    ] Checking for existing commands in stream...
[2026-06-12 18:58:46,388.388 INFO    ] No existing commands found in stream
[2026-06-12 18:58:51,397.397 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 18:58:51,399.399 INFO    ] Waiting 1.94 seconds before fallback handling...
[2026-06-12 18:58:53,719.719 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 18:58:53,721.721 INFO    ] Checking for system updates...
[2026-06-12 18:58:53,741.741 INFO    ] 200
[2026-06-12 18:58:53,742.742 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:58:53,772.772 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 18:58:53,773.773 INFO    ] No update needed
[2026-06-12 18:58:53,775.775 INFO    ] Checking for camera pi updates...
[2026-06-12 18:58:53,795.795 INFO    ] 200
[2026-06-12 18:58:53,796.796 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:58:53,821.821 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 18:58:53,861.861 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 18:58:53,862.862 INFO    ] No camera update needed
[2026-06-12 18:58:53,863.863 INFO    ] Script finished. Safe exiting...
[2026-06-12 18:58:53,865.865 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 18:58:53,867.867 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 18:58:53,870.870 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 18:58:55,908.908 INFO    ] ================================================
[2026-06-12 18:58:55,924.924 INFO    ] Launching Daemon at Fri Jun 12 18:58:55 IST 2026
[2026-06-12 18:58:55,935.935 INFO    ] ================================================
[2026-06-12 18:58:56,272.272 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 18:58:56
[2026-06-12 18:58:56,588.588 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 18:58:56,725.725 INFO    ] Initializing speech engine...
[2026-06-12 18:58:56,734.734 INFO    ] 2026-06-12 18:58:56
[2026-06-12 18:58:56,938.938 INFO    ] 2026-06-12 18:58:56
[2026-06-12 18:58:56,966.966 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 18:58:57,148.148 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 18:58:57,158.158 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 18:58:57,306.306 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 18:58:57,360.360 INFO    ] time= 12/06/2026 18:58:57
[2026-06-12 18:58:57,376.376 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 18:58:57,382.382 INFO    ] Checking for existing commands in stream...
[2026-06-12 18:58:57,449.449 INFO    ] No existing commands found in stream
[2026-06-12 18:59:02,471.471 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 18:59:02,473.473 INFO    ] Waiting 0.59 seconds before fallback handling...
[2026-06-12 18:59:03,442.442 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 18:59:03,443.443 INFO    ] Checking for system updates...
[2026-06-12 18:59:03,464.464 INFO    ] 200
[2026-06-12 18:59:03,465.465 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:59:03,497.497 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 18:59:03,498.498 INFO    ] No update needed
[2026-06-12 18:59:03,500.500 INFO    ] Checking for camera pi updates...
[2026-06-12 18:59:03,519.519 INFO    ] 200
[2026-06-12 18:59:03,520.520 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:59:03,543.543 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 18:59:03,585.585 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 18:59:03,587.587 INFO    ] No camera update needed
[2026-06-12 18:59:03,588.588 INFO    ] Script finished. Safe exiting...
[2026-06-12 18:59:03,589.589 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 18:59:03,592.592 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 18:59:03,595.595 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 18:59:05,634.634 INFO    ] ================================================
[2026-06-12 18:59:05,650.650 INFO    ] Launching Daemon at Fri Jun 12 18:59:05 IST 2026
[2026-06-12 18:59:05,662.662 INFO    ] ================================================
[2026-06-12 18:59:06,030.030 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 18:59:06
[2026-06-12 18:59:06,365.365 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 18:59:06,503.503 INFO    ] Initializing speech engine...
[2026-06-12 18:59:06,511.511 INFO    ] 2026-06-12 18:59:06
[2026-06-12 18:59:06,729.729 INFO    ] 2026-06-12 18:59:06
[2026-06-12 18:59:06,758.758 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 18:59:06,946.946 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 18:59:06,956.956 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 18:59:07,097.097 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 18:59:07,157.157 INFO    ] time= 12/06/2026 18:59:07
[2026-06-12 18:59:07,180.180 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 18:59:07,186.186 INFO    ] Checking for existing commands in stream...
[2026-06-12 18:59:07,253.253 INFO    ] No existing commands found in stream
[2026-06-12 18:59:12,264.264 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 18:59:12,267.267 INFO    ] Waiting 3.37 seconds before fallback handling...
[2026-06-12 18:59:16,014.014 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 18:59:16,016.016 INFO    ] Checking for system updates...
[2026-06-12 18:59:16,038.038 INFO    ] 200
[2026-06-12 18:59:16,039.039 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:59:16,072.072 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 18:59:16,074.074 INFO    ] No update needed
[2026-06-12 18:59:16,075.075 INFO    ] Checking for camera pi updates...
[2026-06-12 18:59:16,096.096 INFO    ] 200
[2026-06-12 18:59:16,097.097 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:59:16,123.123 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 18:59:16,180.180 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 18:59:16,181.181 INFO    ] No camera update needed
[2026-06-12 18:59:16,183.183 INFO    ] Script finished. Safe exiting...
[2026-06-12 18:59:16,184.184 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 18:59:16,187.187 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 18:59:16,190.190 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 18:59:18,230.230 INFO    ] ================================================
[2026-06-12 18:59:18,246.246 INFO    ] Launching Daemon at Fri Jun 12 18:59:18 IST 2026
[2026-06-12 18:59:18,257.257 INFO    ] ================================================
[2026-06-12 18:59:18,617.617 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 18:59:18
[2026-06-12 18:59:18,953.953 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 18:59:19,093.093 INFO    ] Initializing speech engine...
[2026-06-12 18:59:19,113.113 INFO    ] 2026-06-12 18:59:19
[2026-06-12 18:59:19,317.317 INFO    ] 2026-06-12 18:59:19
[2026-06-12 18:59:19,346.346 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 18:59:19,531.531 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 18:59:19,541.541 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 18:59:19,684.684 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 18:59:19,737.737 INFO    ] time= 12/06/2026 18:59:19
[2026-06-12 18:59:19,759.759 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 18:59:19,766.766 INFO    ] Checking for existing commands in stream...
[2026-06-12 18:59:19,832.832 INFO    ] No existing commands found in stream
[2026-06-12 18:59:24,847.847 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 18:59:24,850.850 INFO    ] Waiting 1.42 seconds before fallback handling...
[2026-06-12 18:59:26,638.638 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 18:59:26,641.641 INFO    ] Checking for system updates...
[2026-06-12 18:59:26,678.678 INFO    ] 200
[2026-06-12 18:59:26,681.681 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:59:26,735.735 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 18:59:26,738.738 INFO    ] No update needed
[2026-06-12 18:59:26,740.740 INFO    ] Checking for camera pi updates...
[2026-06-12 18:59:26,775.775 INFO    ] 200
[2026-06-12 18:59:26,778.778 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:59:26,818.818 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 18:59:26,866.866 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 18:59:26,868.868 INFO    ] No camera update needed
[2026-06-12 18:59:26,869.869 INFO    ] Script finished. Safe exiting...
[2026-06-12 18:59:26,870.870 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 18:59:26,873.873 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 18:59:26,876.876 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 18:59:28,915.915 INFO    ] ================================================
[2026-06-12 18:59:28,931.931 INFO    ] Launching Daemon at Fri Jun 12 18:59:28 IST 2026
[2026-06-12 18:59:28,942.942 INFO    ] ================================================
[2026-06-12 18:59:29,330.330 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 18:59:29
[2026-06-12 18:59:29,640.640 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 18:59:29,772.772 INFO    ] Initializing speech engine...
[2026-06-12 18:59:29,777.777 INFO    ] 2026-06-12 18:59:29
[2026-06-12 18:59:30,005.005 INFO    ] 2026-06-12 18:59:29
[2026-06-12 18:59:30,035.035 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 18:59:30,231.231 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 18:59:30,234.234 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 18:59:30,372.372 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 18:59:30,429.429 INFO    ] time= 12/06/2026 18:59:30
[2026-06-12 18:59:30,473.473 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 18:59:30,479.479 INFO    ] Checking for existing commands in stream...
[2026-06-12 18:59:30,553.553 INFO    ] No existing commands found in stream
[2026-06-12 18:59:35,563.563 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 18:59:35,566.566 INFO    ] Waiting 2.20 seconds before fallback handling...
[2026-06-12 18:59:38,101.101 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 18:59:38,103.103 INFO    ] Checking for system updates...
[2026-06-12 18:59:38,123.123 INFO    ] 200
[2026-06-12 18:59:38,124.124 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:59:38,156.156 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 18:59:38,157.157 INFO    ] No update needed
[2026-06-12 18:59:38,159.159 INFO    ] Checking for camera pi updates...
[2026-06-12 18:59:38,178.178 INFO    ] 200
[2026-06-12 18:59:38,179.179 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:59:38,204.204 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 18:59:38,256.256 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 18:59:38,258.258 INFO    ] No camera update needed
[2026-06-12 18:59:38,259.259 INFO    ] Script finished. Safe exiting...
[2026-06-12 18:59:38,260.260 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 18:59:38,263.263 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 18:59:38,266.266 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 18:59:40,304.304 INFO    ] ================================================
[2026-06-12 18:59:40,319.319 INFO    ] Launching Daemon at Fri Jun 12 18:59:40 IST 2026
[2026-06-12 18:59:40,330.330 INFO    ] ================================================
[2026-06-12 18:59:40,681.681 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 18:59:40
[2026-06-12 18:59:40,993.993 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 18:59:41,127.127 INFO    ] Initializing speech engine...
[2026-06-12 18:59:41,131.131 INFO    ] 2026-06-12 18:59:41
[2026-06-12 18:59:41,358.358 INFO    ] 2026-06-12 18:59:41
[2026-06-12 18:59:41,389.389 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 18:59:41,584.584 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 18:59:41,595.595 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 18:59:41,733.733 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 18:59:41,797.797 INFO    ] time= 12/06/2026 18:59:41
[2026-06-12 18:59:41,830.830 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 18:59:41,832.832 INFO    ] Checking for existing commands in stream...
[2026-06-12 18:59:41,909.909 INFO    ] No existing commands found in stream
[2026-06-12 18:59:46,923.923 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 18:59:46,926.926 INFO    ] Waiting 3.48 seconds before fallback handling...
[2026-06-12 18:59:50,816.816 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 18:59:50,818.818 INFO    ] Checking for system updates...
[2026-06-12 18:59:50,838.838 INFO    ] 200
[2026-06-12 18:59:50,839.839 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:59:50,871.871 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 18:59:50,873.873 INFO    ] No update needed
[2026-06-12 18:59:50,874.874 INFO    ] Checking for camera pi updates...
[2026-06-12 18:59:50,893.893 INFO    ] 200
[2026-06-12 18:59:50,894.894 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 18:59:50,917.917 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 18:59:51,055.055 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 18:59:51,057.057 INFO    ] No camera update needed
[2026-06-12 18:59:51,058.058 INFO    ] Script finished. Safe exiting...
[2026-06-12 18:59:51,059.059 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 18:59:51,062.062 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 18:59:51,065.065 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 18:59:53,104.104 INFO    ] ================================================
[2026-06-12 18:59:53,120.120 INFO    ] Launching Daemon at Fri Jun 12 18:59:53 IST 2026
[2026-06-12 18:59:53,131.131 INFO    ] ================================================
[2026-06-12 18:59:53,512.512 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 18:59:53
[2026-06-12 18:59:53,828.828 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 18:59:53,972.972 INFO    ] Initializing speech engine...
[2026-06-12 18:59:53,977.977 INFO    ] 2026-06-12 18:59:53
[2026-06-12 18:59:54,181.181 INFO    ] 2026-06-12 18:59:54
[2026-06-12 18:59:54,210.210 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 18:59:54,395.395 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 18:59:54,406.406 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 18:59:54,553.553 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 18:59:54,601.601 INFO    ] time= 12/06/2026 18:59:54
[2026-06-12 18:59:54,624.624 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 18:59:54,629.629 INFO    ] Checking for existing commands in stream...
[2026-06-12 18:59:54,704.704 INFO    ] No existing commands found in stream
[2026-06-12 18:59:59,714.714 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 18:59:59,716.716 INFO    ] Waiting 0.97 seconds before fallback handling...
[2026-06-12 19:00:01,102.102 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 19:00:01,104.104 INFO    ] Checking for system updates...
[2026-06-12 19:00:01,125.125 INFO    ] 200
[2026-06-12 19:00:01,127.127 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:00:01,160.160 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 19:00:01,162.162 INFO    ] No update needed
[2026-06-12 19:00:01,163.163 INFO    ] Checking for camera pi updates...
[2026-06-12 19:00:01,183.183 INFO    ] 200
[2026-06-12 19:00:01,184.184 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:00:01,207.207 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 19:00:01,287.287 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 19:00:01,288.288 INFO    ] No camera update needed
[2026-06-12 19:00:01,290.290 INFO    ] Script finished. Safe exiting...
[2026-06-12 19:00:01,291.291 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 19:00:01,294.294 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 19:00:01,297.297 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 19:00:03,392.392 INFO    ] ================================================
[2026-06-12 19:00:03,411.411 INFO    ] Launching Daemon at Fri Jun 12 19:00:03 IST 2026
[2026-06-12 19:00:03,472.472 INFO    ] ================================================
[2026-06-12 19:00:04,529.529 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 19:00:04
[2026-06-12 19:00:04,902.902 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 19:00:05,032.032 INFO    ] Initializing speech engine...
[2026-06-12 19:00:05,040.040 INFO    ] 2026-06-12 19:00:05
[2026-06-12 19:00:05,251.251 INFO    ] 2026-06-12 19:00:05
[2026-06-12 19:00:05,280.280 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 19:00:05,462.462 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 19:00:05,472.472 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 19:00:05,601.601 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 19:00:05,655.655 INFO    ] time= 12/06/2026 19:00:05
[2026-06-12 19:00:05,683.683 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 19:00:05,693.693 INFO    ] Checking for existing commands in stream...
[2026-06-12 19:00:05,788.788 INFO    ] No existing commands found in stream
[2026-06-12 19:00:10,797.797 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 19:00:10,799.799 INFO    ] Waiting 3.07 seconds before fallback handling...
[2026-06-12 19:00:14,256.256 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 19:00:14,257.257 INFO    ] Checking for system updates...
[2026-06-12 19:00:14,278.278 INFO    ] 200
[2026-06-12 19:00:14,279.279 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:00:14,312.312 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 19:00:14,317.317 INFO    ] No update needed
[2026-06-12 19:00:14,318.318 INFO    ] Checking for camera pi updates...
[2026-06-12 19:00:14,338.338 INFO    ] 200
[2026-06-12 19:00:14,339.339 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:00:14,368.368 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 19:00:14,415.415 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 19:00:14,416.416 INFO    ] No camera update needed
[2026-06-12 19:00:14,418.418 INFO    ] Script finished. Safe exiting...
[2026-06-12 19:00:14,419.419 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 19:00:14,422.422 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 19:00:14,425.425 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 19:00:16,465.465 INFO    ] ================================================
[2026-06-12 19:00:16,481.481 INFO    ] Launching Daemon at Fri Jun 12 19:00:16 IST 2026
[2026-06-12 19:00:16,492.492 INFO    ] ================================================
[2026-06-12 19:00:16,832.832 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 19:00:16
[2026-06-12 19:00:17,145.145 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 19:00:17,276.276 INFO    ] Initializing speech engine...
[2026-06-12 19:00:17,279.279 INFO    ] 2026-06-12 19:00:17
[2026-06-12 19:00:17,472.472 INFO    ] 2026-06-12 19:00:17
[2026-06-12 19:00:17,518.518 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 19:00:17,693.693 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 19:00:17,746.746 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 19:00:17,894.894 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 19:00:17,950.950 INFO    ] time= 12/06/2026 19:00:17
[2026-06-12 19:00:17,990.990 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 19:00:17,997.997 INFO    ] Checking for existing commands in stream...
[2026-06-12 19:00:18,068.068 INFO    ] No existing commands found in stream
[2026-06-12 19:00:23,078.078 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 19:00:23,081.081 INFO    ] Waiting 3.54 seconds before fallback handling...
[2026-06-12 19:00:27,018.018 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 19:00:27,020.020 INFO    ] Checking for system updates...
[2026-06-12 19:00:27,041.041 INFO    ] 200
[2026-06-12 19:00:27,043.043 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:00:27,073.073 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 19:00:27,074.074 INFO    ] No update needed
[2026-06-12 19:00:27,076.076 INFO    ] Checking for camera pi updates...
[2026-06-12 19:00:27,096.096 INFO    ] 200
[2026-06-12 19:00:27,098.098 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:00:27,121.121 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 19:00:27,172.172 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 19:00:27,173.173 INFO    ] No camera update needed
[2026-06-12 19:00:27,175.175 INFO    ] Script finished. Safe exiting...
[2026-06-12 19:00:27,176.176 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 19:00:27,179.179 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 19:00:27,182.182 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 19:00:29,221.221 INFO    ] ================================================
[2026-06-12 19:00:29,239.239 INFO    ] Launching Daemon at Fri Jun 12 19:00:29 IST 2026
[2026-06-12 19:00:29,251.251 INFO    ] ================================================
[2026-06-12 19:00:29,582.582 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 19:00:29
[2026-06-12 19:00:29,896.896 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 19:00:30,030.030 INFO    ] Initializing speech engine...
[2026-06-12 19:00:30,035.035 INFO    ] 2026-06-12 19:00:30
[2026-06-12 19:00:30,265.265 INFO    ] 2026-06-12 19:00:30
[2026-06-12 19:00:30,296.296 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 19:00:30,437.437 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 19:00:30,500.500 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 19:00:30,642.642 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 19:00:30,693.693 INFO    ] time= 12/06/2026 19:00:30
[2026-06-12 19:00:30,738.738 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 19:00:30,749.749 INFO    ] Checking for existing commands in stream...
[2026-06-12 19:00:30,852.852 INFO    ] No existing commands found in stream
[2026-06-12 19:00:35,861.861 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 19:00:35,864.864 INFO    ] Waiting 0.05 seconds before fallback handling...
[2026-06-12 19:00:36,268.268 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 19:00:36,269.269 INFO    ] Checking for system updates...
[2026-06-12 19:00:36,290.290 INFO    ] 200
[2026-06-12 19:00:36,292.292 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:00:36,324.324 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 19:00:36,325.325 INFO    ] No update needed
[2026-06-12 19:00:36,326.326 INFO    ] Checking for camera pi updates...
[2026-06-12 19:00:36,346.346 INFO    ] 200
[2026-06-12 19:00:36,347.347 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:00:36,372.372 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 19:00:36,434.434 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 19:00:36,435.435 INFO    ] No camera update needed
[2026-06-12 19:00:36,436.436 INFO    ] Script finished. Safe exiting...
[2026-06-12 19:00:36,437.437 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 19:00:36,441.441 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 19:00:36,444.444 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 19:00:38,483.483 INFO    ] ================================================
[2026-06-12 19:00:38,499.499 INFO    ] Launching Daemon at Fri Jun 12 19:00:38 IST 2026
[2026-06-12 19:00:38,511.511 INFO    ] ================================================
[2026-06-12 19:00:38,880.880 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 19:00:38
[2026-06-12 19:00:39,194.194 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 19:00:39,338.338 INFO    ] Initializing speech engine...
[2026-06-12 19:00:39,343.343 INFO    ] 2026-06-12 19:00:39
[2026-06-12 19:00:39,548.548 INFO    ] 2026-06-12 19:00:39
[2026-06-12 19:00:39,578.578 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 19:00:39,765.765 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 19:00:39,774.774 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 19:00:39,970.970 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 19:00:39,994.994 INFO    ] time= 12/06/2026 19:00:39
[2026-06-12 19:00:39,999.999 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 19:00:40,001.001 INFO    ] Checking for existing commands in stream...
[2026-06-12 19:00:40,069.069 INFO    ] No existing commands found in stream
[2026-06-12 19:00:45,078.078 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 19:00:45,081.081 INFO    ] Waiting 2.79 seconds before fallback handling...
[2026-06-12 19:00:48,277.277 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 19:00:48,278.278 INFO    ] Checking for system updates...
[2026-06-12 19:00:48,298.298 INFO    ] 200
[2026-06-12 19:00:48,300.300 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:00:48,330.330 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 19:00:48,331.331 INFO    ] No update needed
[2026-06-12 19:00:48,333.333 INFO    ] Checking for camera pi updates...
[2026-06-12 19:00:48,352.352 INFO    ] 200
[2026-06-12 19:00:48,354.354 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:00:48,376.376 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 19:00:48,416.416 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 19:00:48,417.417 INFO    ] No camera update needed
[2026-06-12 19:00:48,419.419 INFO    ] Script finished. Safe exiting...
[2026-06-12 19:00:48,420.420 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 19:00:48,423.423 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 19:00:48,426.426 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 19:00:50,464.464 INFO    ] ================================================
[2026-06-12 19:00:50,482.482 INFO    ] Launching Daemon at Fri Jun 12 19:00:50 IST 2026
[2026-06-12 19:00:50,493.493 INFO    ] ================================================
[2026-06-12 19:00:50,850.850 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 19:00:50
[2026-06-12 19:00:51,168.168 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 19:00:51,307.307 INFO    ] Initializing speech engine...
[2026-06-12 19:00:51,317.317 INFO    ] 2026-06-12 19:00:51
[2026-06-12 19:00:51,521.521 INFO    ] 2026-06-12 19:00:51
[2026-06-12 19:00:51,549.549 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 19:00:51,733.733 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 19:00:51,742.742 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 19:00:51,886.886 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 19:00:51,938.938 INFO    ] time= 12/06/2026 19:00:51
[2026-06-12 19:00:51,961.961 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 19:00:51,967.967 INFO    ] Checking for existing commands in stream...
[2026-06-12 19:00:52,034.034 INFO    ] No existing commands found in stream
[2026-06-12 19:00:57,048.048 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 19:00:57,051.051 INFO    ] Waiting 2.01 seconds before fallback handling...
[2026-06-12 19:00:59,439.439 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 19:00:59,440.440 INFO    ] Checking for system updates...
[2026-06-12 19:00:59,462.462 INFO    ] 200
[2026-06-12 19:00:59,463.463 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:00:59,493.493 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 19:00:59,495.495 INFO    ] No update needed
[2026-06-12 19:00:59,500.500 INFO    ] Checking for camera pi updates...
[2026-06-12 19:00:59,519.519 INFO    ] 200
[2026-06-12 19:00:59,521.521 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:00:59,549.549 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 19:00:59,599.599 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 19:00:59,601.601 INFO    ] No camera update needed
[2026-06-12 19:00:59,602.602 INFO    ] Script finished. Safe exiting...
[2026-06-12 19:00:59,603.603 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 19:00:59,606.606 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 19:00:59,609.609 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 19:01:01,680.680 INFO    ] ================================================
[2026-06-12 19:01:01,697.697 INFO    ] Launching Daemon at Fri Jun 12 19:01:01 IST 2026
[2026-06-12 19:01:01,723.723 INFO    ] ================================================
[2026-06-12 19:01:02,122.122 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 19:01:02
[2026-06-12 19:01:02,497.497 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 19:01:02,656.656 INFO    ] Initializing speech engine...
[2026-06-12 19:01:02,665.665 INFO    ] 2026-06-12 19:01:02
[2026-06-12 19:01:02,884.884 INFO    ] 2026-06-12 19:01:02
[2026-06-12 19:01:02,912.912 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 19:01:03,095.095 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 19:01:03,098.098 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 19:01:03,249.249 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 19:01:03,303.303 INFO    ] time= 12/06/2026 19:01:03
[2026-06-12 19:01:03,324.324 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 19:01:03,330.330 INFO    ] Checking for existing commands in stream...
[2026-06-12 19:01:03,397.397 INFO    ] No existing commands found in stream
[2026-06-12 19:01:08,406.406 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 19:01:08,408.408 INFO    ] Waiting 3.09 seconds before fallback handling...
[2026-06-12 19:01:11,867.867 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 19:01:11,869.869 INFO    ] Checking for system updates...
[2026-06-12 19:01:11,890.890 INFO    ] 200
[2026-06-12 19:01:11,891.891 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:01:11,924.924 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 19:01:11,926.926 INFO    ] No update needed
[2026-06-12 19:01:11,927.927 INFO    ] Checking for camera pi updates...
[2026-06-12 19:01:11,948.948 INFO    ] 200
[2026-06-12 19:01:11,949.949 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:01:11,973.973 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 19:01:12,018.018 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 19:01:12,019.019 INFO    ] No camera update needed
[2026-06-12 19:01:12,021.021 INFO    ] Script finished. Safe exiting...
[2026-06-12 19:01:12,022.022 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 19:01:12,025.025 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 19:01:12,028.028 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 19:01:14,068.068 INFO    ] ================================================
[2026-06-12 19:01:14,084.084 INFO    ] Launching Daemon at Fri Jun 12 19:01:14 IST 2026
[2026-06-12 19:01:14,095.095 INFO    ] ================================================
[2026-06-12 19:01:14,420.420 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 19:01:14
[2026-06-12 19:01:14,734.734 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 19:01:14,866.866 INFO    ] Initializing speech engine...
[2026-06-12 19:01:14,871.871 INFO    ] 2026-06-12 19:01:14
[2026-06-12 19:01:15,063.063 INFO    ] 2026-06-12 19:01:15
[2026-06-12 19:01:15,109.109 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 19:01:15,332.332 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 19:01:15,338.338 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 19:01:15,486.486 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 19:01:15,540.540 INFO    ] time= 12/06/2026 19:01:15
[2026-06-12 19:01:15,576.576 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 19:01:15,587.587 INFO    ] Checking for existing commands in stream...
[2026-06-12 19:01:15,690.690 INFO    ] No existing commands found in stream
[2026-06-12 19:01:20,704.704 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 19:01:20,707.707 INFO    ] Waiting 1.23 seconds before fallback handling...
[2026-06-12 19:01:22,247.247 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 19:01:22,249.249 INFO    ] Checking for system updates...
[2026-06-12 19:01:22,270.270 INFO    ] 200
[2026-06-12 19:01:22,272.272 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:01:22,324.324 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 19:01:22,327.327 INFO    ] No update needed
[2026-06-12 19:01:22,330.330 INFO    ] Checking for camera pi updates...
[2026-06-12 19:01:22,364.364 INFO    ] 200
[2026-06-12 19:01:22,368.368 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:01:22,399.399 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 19:01:22,449.449 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 19:01:22,451.451 INFO    ] No camera update needed
[2026-06-12 19:01:22,452.452 INFO    ] Script finished. Safe exiting...
[2026-06-12 19:01:22,453.453 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 19:01:22,457.457 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 19:01:22,460.460 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 19:01:24,492.492 INFO    ] ================================================
[2026-06-12 19:01:24,501.501 INFO    ] Launching Daemon at Fri Jun 12 19:01:24 IST 2026
[2026-06-12 19:01:24,507.507 INFO    ] ================================================
[2026-06-12 19:01:24,855.855 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 19:01:24
[2026-06-12 19:01:25,232.232 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 19:01:25,405.405 INFO    ] Initializing speech engine...
[2026-06-12 19:01:25,411.411 INFO    ] 2026-06-12 19:01:25
[2026-06-12 19:01:25,644.644 INFO    ] 2026-06-12 19:01:25
[2026-06-12 19:01:25,676.676 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 19:01:25,813.813 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 19:01:25,880.880 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 19:01:26,035.035 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 19:01:26,100.100 INFO    ] time= 12/06/2026 19:01:26
[2026-06-12 19:01:26,123.123 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 19:01:26,129.129 INFO    ] Checking for existing commands in stream...
[2026-06-12 19:01:26,221.221 INFO    ] No existing commands found in stream
[2026-06-12 19:01:31,236.236 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 19:01:31,239.239 INFO    ] Waiting 3.88 seconds before fallback handling...
[2026-06-12 19:01:35,549.549 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 19:01:35,551.551 INFO    ] Checking for system updates...
[2026-06-12 19:01:35,571.571 INFO    ] 200
[2026-06-12 19:01:35,573.573 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:01:35,603.603 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 19:01:35,605.605 INFO    ] No update needed
[2026-06-12 19:01:35,606.606 INFO    ] Checking for camera pi updates...
[2026-06-12 19:01:35,627.627 INFO    ] 200
[2026-06-12 19:01:35,629.629 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:01:35,654.654 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 19:01:35,702.702 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 19:01:35,704.704 INFO    ] No camera update needed
[2026-06-12 19:01:35,705.705 INFO    ] Script finished. Safe exiting...
[2026-06-12 19:01:35,707.707 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 19:01:35,710.710 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 19:01:35,713.713 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 19:01:37,753.753 INFO    ] ================================================
[2026-06-12 19:01:37,769.769 INFO    ] Launching Daemon at Fri Jun 12 19:01:37 IST 2026
[2026-06-12 19:01:37,780.780 INFO    ] ================================================
[2026-06-12 19:01:38,109.109 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 19:01:38
[2026-06-12 19:01:38,422.422 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 19:01:38,552.552 INFO    ] Initializing speech engine...
[2026-06-12 19:01:38,560.560 INFO    ] 2026-06-12 19:01:38
[2026-06-12 19:01:38,775.775 INFO    ] 2026-06-12 19:01:38
[2026-06-12 19:01:38,804.804 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 19:01:38,926.926 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 19:01:38,989.989 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 19:01:39,127.127 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 19:01:39,194.194 INFO    ] time= 12/06/2026 19:01:39
[2026-06-12 19:01:39,218.218 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 19:01:39,225.225 INFO    ] Checking for existing commands in stream...
[2026-06-12 19:01:39,290.290 INFO    ] No existing commands found in stream
[2026-06-12 19:01:44,300.300 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 19:01:44,303.303 INFO    ] Waiting 1.49 seconds before fallback handling...
[2026-06-12 19:01:46,177.177 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 19:01:46,179.179 INFO    ] Checking for system updates...
[2026-06-12 19:01:46,201.201 INFO    ] 200
[2026-06-12 19:01:46,202.202 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:01:46,234.234 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 19:01:46,235.235 INFO    ] No update needed
[2026-06-12 19:01:46,236.236 INFO    ] Checking for camera pi updates...
[2026-06-12 19:01:46,256.256 INFO    ] 200
[2026-06-12 19:01:46,258.258 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:01:46,281.281 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 19:01:46,339.339 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 19:01:46,341.341 INFO    ] No camera update needed
[2026-06-12 19:01:46,342.342 INFO    ] Script finished. Safe exiting...
[2026-06-12 19:01:46,343.343 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 19:01:46,346.346 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 19:01:46,349.349 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 19:01:48,389.389 INFO    ] ================================================
[2026-06-12 19:01:48,405.405 INFO    ] Launching Daemon at Fri Jun 12 19:01:48 IST 2026
[2026-06-12 19:01:48,416.416 INFO    ] ================================================
[2026-06-12 19:01:48,786.786 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 19:01:48
[2026-06-12 19:01:49,098.098 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 19:01:49,229.229 INFO    ] Initializing speech engine...
[2026-06-12 19:01:49,233.233 INFO    ] 2026-06-12 19:01:49
[2026-06-12 19:01:49,426.426 INFO    ] 2026-06-12 19:01:49
[2026-06-12 19:01:49,474.474 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 19:01:49,632.632 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 19:01:49,700.700 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 19:01:49,844.844 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 19:01:49,895.895 INFO    ] time= 12/06/2026 19:01:49
[2026-06-12 19:01:49,941.941 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 19:01:49,952.952 INFO    ] Checking for existing commands in stream...
[2026-06-12 19:01:50,055.055 INFO    ] No existing commands found in stream
[2026-06-12 19:01:55,064.064 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 19:01:55,067.067 INFO    ] Waiting 1.86 seconds before fallback handling...
[2026-06-12 19:01:58,461.461 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 19:01:58,463.463 INFO    ] Checking for system updates...
[2026-06-12 19:01:58,500.500 INFO    ] 200
[2026-06-12 19:01:58,502.502 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:01:58,554.554 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 19:01:58,556.556 INFO    ] No update needed
[2026-06-12 19:01:58,559.559 INFO    ] Checking for camera pi updates...
[2026-06-12 19:01:58,582.582 INFO    ] 200
[2026-06-12 19:01:58,583.583 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:01:58,606.606 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 19:01:58,742.742 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 19:01:58,744.744 INFO    ] No camera update needed
[2026-06-12 19:01:58,745.745 INFO    ] Script finished. Safe exiting...
[2026-06-12 19:01:58,746.746 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 19:01:58,749.749 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 19:01:58,752.752 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 19:02:00,791.791 INFO    ] ================================================
[2026-06-12 19:02:00,807.807 INFO    ] Launching Daemon at Fri Jun 12 19:02:00 IST 2026
[2026-06-12 19:02:00,818.818 INFO    ] ================================================
[2026-06-12 19:02:01,143.143 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 19:02:01
[2026-06-12 19:02:01,459.459 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 19:02:01,592.592 INFO    ] Initializing speech engine...
[2026-06-12 19:02:01,597.597 INFO    ] 2026-06-12 19:02:01
[2026-06-12 19:02:01,826.826 INFO    ] 2026-06-12 19:02:01
[2026-06-12 19:02:01,857.857 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 19:02:02,015.015 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 19:02:02,018.018 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 19:02:02,161.161 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 19:02:02,163.163 INFO    ] time= 12/06/2026 19:02:02
[2026-06-12 19:02:02,165.165 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 19:02:02,167.167 INFO    ] Checking for existing commands in stream...
[2026-06-12 19:02:02,236.236 INFO    ] No existing commands found in stream
[2026-06-12 19:02:07,245.245 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 19:02:07,248.248 INFO    ] Waiting 1.72 seconds before fallback handling...
[2026-06-12 19:02:09,354.354 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 19:02:09,355.355 INFO    ] Checking for system updates...
[2026-06-12 19:02:09,376.376 INFO    ] 200
[2026-06-12 19:02:09,377.377 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:02:09,407.407 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 19:02:09,408.408 INFO    ] No update needed
[2026-06-12 19:02:09,410.410 INFO    ] Checking for camera pi updates...
[2026-06-12 19:02:09,429.429 INFO    ] 200
[2026-06-12 19:02:09,430.430 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:02:09,454.454 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 19:02:09,507.507 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 19:02:09,508.508 INFO    ] No camera update needed
[2026-06-12 19:02:09,510.510 INFO    ] Script finished. Safe exiting...
[2026-06-12 19:02:09,511.511 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 19:02:09,514.514 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 19:02:09,517.517 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 19:02:11,555.555 INFO    ] ================================================
[2026-06-12 19:02:11,571.571 INFO    ] Launching Daemon at Fri Jun 12 19:02:11 IST 2026
[2026-06-12 19:02:11,583.583 INFO    ] ================================================
[2026-06-12 19:02:11,932.932 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 19:02:11
[2026-06-12 19:02:12,244.244 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 19:02:12,373.373 INFO    ] Initializing speech engine...
[2026-06-12 19:02:12,377.377 INFO    ] 2026-06-12 19:02:12
[2026-06-12 19:02:12,569.569 INFO    ] 2026-06-12 19:02:12
[2026-06-12 19:02:12,616.616 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 19:02:12,770.770 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 19:02:12,833.833 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 19:02:12,965.965 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 19:02:13,021.021 INFO    ] time= 12/06/2026 19:02:12
[2026-06-12 19:02:13,046.046 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 19:02:13,067.067 INFO    ] Checking for existing commands in stream...
[2026-06-12 19:02:13,138.138 INFO    ] No existing commands found in stream
[2026-06-12 19:02:18,149.149 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 19:02:18,152.152 INFO    ] Waiting 2.54 seconds before fallback handling...
[2026-06-12 19:02:21,088.088 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 19:02:21,090.090 INFO    ] Checking for system updates...
[2026-06-12 19:02:21,111.111 INFO    ] 200
[2026-06-12 19:02:21,112.112 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:02:21,143.143 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 19:02:21,144.144 INFO    ] No update needed
[2026-06-12 19:02:21,145.145 INFO    ] Checking for camera pi updates...
[2026-06-12 19:02:21,166.166 INFO    ] 200
[2026-06-12 19:02:21,167.167 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:02:21,190.190 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 19:02:21,238.238 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 19:02:21,240.240 INFO    ] No camera update needed
[2026-06-12 19:02:21,241.241 INFO    ] Script finished. Safe exiting...
[2026-06-12 19:02:21,242.242 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 19:02:21,245.245 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 19:02:21,248.248 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 19:02:23,291.291 INFO    ] ================================================
[2026-06-12 19:02:23,303.303 INFO    ] Launching Daemon at Fri Jun 12 19:02:23 IST 2026
[2026-06-12 19:02:23,310.310 INFO    ] ================================================
[2026-06-12 19:02:23,639.639 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 19:02:23
[2026-06-12 19:02:23,976.976 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 19:02:24,127.127 INFO    ] Initializing speech engine...
[2026-06-12 19:02:24,133.133 INFO    ] 2026-06-12 19:02:24
[2026-06-12 19:02:24,342.342 INFO    ] 2026-06-12 19:02:24
[2026-06-12 19:02:24,373.373 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 19:02:24,559.559 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 19:02:24,569.569 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 19:02:24,693.693 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 19:02:24,764.764 INFO    ] time= 12/06/2026 19:02:24
[2026-06-12 19:02:24,793.793 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 19:02:24,795.795 INFO    ] Checking for existing commands in stream...
[2026-06-12 19:02:24,868.868 INFO    ] No existing commands found in stream
[2026-06-12 19:02:29,882.882 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 19:02:29,886.886 INFO    ] Waiting 0.32 seconds before fallback handling...
[2026-06-12 19:02:30,633.633 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 19:02:30,634.634 INFO    ] Checking for system updates...
[2026-06-12 19:02:30,656.656 INFO    ] 200
[2026-06-12 19:02:30,657.657 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:02:30,687.687 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 19:02:30,689.689 INFO    ] No update needed
[2026-06-12 19:02:30,690.690 INFO    ] Checking for camera pi updates...
[2026-06-12 19:02:30,711.711 INFO    ] 200
[2026-06-12 19:02:30,716.716 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:02:30,741.741 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 19:02:30,792.792 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 19:02:30,793.793 INFO    ] No camera update needed
[2026-06-12 19:02:30,795.795 INFO    ] Script finished. Safe exiting...
[2026-06-12 19:02:30,796.796 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 19:02:30,799.799 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 19:02:30,802.802 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 19:02:32,831.831 INFO    ] ================================================
[2026-06-12 19:02:32,840.840 INFO    ] Launching Daemon at Fri Jun 12 19:02:32 IST 2026
[2026-06-12 19:02:32,846.846 INFO    ] ================================================
[2026-06-12 19:02:33,200.200 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 19:02:33
[2026-06-12 19:02:33,517.517 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 19:02:33,660.660 INFO    ] Initializing speech engine...
[2026-06-12 19:02:33,665.665 INFO    ] 2026-06-12 19:02:33
[2026-06-12 19:02:33,869.869 INFO    ] 2026-06-12 19:02:33
[2026-06-12 19:02:33,898.898 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 19:02:34,057.057 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 19:02:34,085.085 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 19:02:34,225.225 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 19:02:34,287.287 INFO    ] time= 12/06/2026 19:02:34
[2026-06-12 19:02:34,310.310 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 19:02:34,317.317 INFO    ] Checking for existing commands in stream...
[2026-06-12 19:02:34,384.384 INFO    ] No existing commands found in stream
[2026-06-12 19:02:39,397.397 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 19:02:39,398.398 INFO    ] Waiting 2.27 seconds before fallback handling...
[2026-06-12 19:02:42,017.017 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 19:02:42,019.019 INFO    ] Checking for system updates...
[2026-06-12 19:02:42,115.115 INFO    ] 200
[2026-06-12 19:02:42,116.116 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_HEALTH_CHECK"}
[2026-06-12 19:02:42,118.118 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping update check
[2026-06-12 19:02:42,120.120 INFO    ] Checking for camera pi updates...
[2026-06-12 19:02:42,147.147 INFO    ] 200
[2026-06-12 19:02:42,149.149 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_HEALTH_CHECK"}
[2026-06-12 19:02:42,151.151 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping camera update check
[2026-06-12 19:02:42,152.152 INFO    ] Script finished. Safe exiting...
[2026-06-12 19:02:42,153.153 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 19:02:42,156.156 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 19:02:42,159.159 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 19:02:44,198.198 INFO    ] ================================================
[2026-06-12 19:02:44,213.213 INFO    ] Launching Daemon at Fri Jun 12 19:02:44 IST 2026
[2026-06-12 19:02:44,225.225 INFO    ] ================================================
[2026-06-12 19:02:44,589.589 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 19:02:44
[2026-06-12 19:02:44,902.902 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 19:02:45,085.085 INFO    ] Initializing speech engine...
[2026-06-12 19:02:45,090.090 INFO    ] 2026-06-12 19:02:45
[2026-06-12 19:02:45,302.302 INFO    ] 2026-06-12 19:02:45
[2026-06-12 19:02:45,321.321 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 19:02:45,507.507 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 19:02:45,516.516 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 19:02:45,657.657 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 19:02:45,727.727 INFO    ] time= 12/06/2026 19:02:45
[2026-06-12 19:02:45,756.756 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 19:02:45,758.758 INFO    ] Checking for existing commands in stream...
[2026-06-12 19:02:45,833.833 INFO    ] No existing commands found in stream
[2026-06-12 19:02:50,844.844 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 19:02:50,847.847 INFO    ] Waiting 2.63 seconds before fallback handling...
[2026-06-12 19:02:53,876.876 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 19:02:53,877.877 INFO    ] Checking for system updates...
[2026-06-12 19:02:53,898.898 INFO    ] 200
[2026-06-12 19:02:53,899.899 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:02:53,932.932 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 19:02:53,934.934 INFO    ] No update needed
[2026-06-12 19:02:53,935.935 INFO    ] Checking for camera pi updates...
[2026-06-12 19:02:53,954.954 INFO    ] 200
[2026-06-12 19:02:53,955.955 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:02:53,978.978 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 19:02:54,026.026 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 19:02:54,028.028 INFO    ] No camera update needed
[2026-06-12 19:02:54,029.029 INFO    ] Script finished. Safe exiting...
[2026-06-12 19:02:54,031.031 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 19:02:54,033.033 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 19:02:54,036.036 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 19:02:56,076.076 INFO    ] ================================================
[2026-06-12 19:02:56,092.092 INFO    ] Launching Daemon at Fri Jun 12 19:02:56 IST 2026
[2026-06-12 19:02:56,104.104 INFO    ] ================================================
[2026-06-12 19:02:56,462.462 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 19:02:56
[2026-06-12 19:02:56,780.780 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 19:02:56,915.915 INFO    ] Initializing speech engine...
[2026-06-12 19:02:56,919.919 INFO    ] 2026-06-12 19:02:56
[2026-06-12 19:02:57,148.148 INFO    ] 2026-06-12 19:02:57
[2026-06-12 19:02:57,179.179 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 19:02:57,377.377 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 19:02:57,381.381 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 19:02:57,528.528 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 19:02:57,592.592 INFO    ] time= 12/06/2026 19:02:57
[2026-06-12 19:02:57,625.625 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 19:02:57,632.632 INFO    ] Checking for existing commands in stream...
[2026-06-12 19:02:57,702.702 INFO    ] No existing commands found in stream
[2026-06-12 19:03:02,713.713 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 19:03:02,716.716 INFO    ] Waiting 0.21 seconds before fallback handling...
[2026-06-12 19:03:03,307.307 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 19:03:03,309.309 INFO    ] Checking for system updates...
[2026-06-12 19:03:03,330.330 INFO    ] 200
[2026-06-12 19:03:03,332.332 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:03:03,363.363 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 19:03:03,365.365 INFO    ] No update needed
[2026-06-12 19:03:03,366.366 INFO    ] Checking for camera pi updates...
[2026-06-12 19:03:03,385.385 INFO    ] 200
[2026-06-12 19:03:03,386.386 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:03:03,409.409 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 19:03:03,452.452 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 19:03:03,454.454 INFO    ] No camera update needed
[2026-06-12 19:03:03,455.455 INFO    ] Script finished. Safe exiting...
[2026-06-12 19:03:03,456.456 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 19:03:03,459.459 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 19:03:03,462.462 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 19:03:05,501.501 INFO    ] ================================================
[2026-06-12 19:03:05,516.516 INFO    ] Launching Daemon at Fri Jun 12 19:03:05 IST 2026
[2026-06-12 19:03:05,527.527 INFO    ] ================================================
[2026-06-12 19:03:05,915.915 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 19:03:05
[2026-06-12 19:03:06,249.249 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 19:03:06,399.399 INFO    ] Initializing speech engine...
[2026-06-12 19:03:06,406.406 INFO    ] 2026-06-12 19:03:06
[2026-06-12 19:03:06,615.615 INFO    ] 2026-06-12 19:03:06
[2026-06-12 19:03:06,644.644 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 19:03:06,828.828 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 19:03:06,832.832 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 19:03:06,968.968 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 19:03:07,027.027 INFO    ] time= 12/06/2026 19:03:06
[2026-06-12 19:03:07,060.060 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 19:03:07,066.066 INFO    ] Checking for existing commands in stream...
[2026-06-12 19:03:07,134.134 INFO    ] No existing commands found in stream
[2026-06-12 19:03:12,148.148 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 19:03:12,151.151 INFO    ] Waiting 1.70 seconds before fallback handling...
[2026-06-12 19:03:14,946.946 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 19:03:14,949.949 INFO    ] Checking for system updates...
[2026-06-12 19:03:14,989.989 INFO    ] 200
[2026-06-12 19:03:14,992.992 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:03:15,044.044 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 19:03:15,046.046 INFO    ] No update needed
[2026-06-12 19:03:15,049.049 INFO    ] Checking for camera pi updates...
[2026-06-12 19:03:15,082.082 INFO    ] 200
[2026-06-12 19:03:15,098.098 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:03:15,127.127 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 19:03:15,172.172 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 19:03:15,174.174 INFO    ] No camera update needed
[2026-06-12 19:03:15,175.175 INFO    ] Script finished. Safe exiting...
[2026-06-12 19:03:15,176.176 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 19:03:15,179.179 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 19:03:15,182.182 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 19:03:17,220.220 INFO    ] ================================================
[2026-06-12 19:03:17,237.237 INFO    ] Launching Daemon at Fri Jun 12 19:03:17 IST 2026
[2026-06-12 19:03:17,248.248 INFO    ] ================================================
[2026-06-12 19:03:17,592.592 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 19:03:17
[2026-06-12 19:03:17,909.909 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 19:03:18,054.054 INFO    ] Initializing speech engine...
[2026-06-12 19:03:18,058.058 INFO    ] 2026-06-12 19:03:18
[2026-06-12 19:03:18,261.261 INFO    ] 2026-06-12 19:03:18
[2026-06-12 19:03:18,289.289 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 19:03:18,473.473 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 19:03:18,483.483 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 19:03:18,632.632 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 19:03:18,686.686 INFO    ] time= 12/06/2026 19:03:18
[2026-06-12 19:03:18,702.702 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 19:03:18,708.708 INFO    ] Checking for existing commands in stream...
[2026-06-12 19:03:18,775.775 INFO    ] No existing commands found in stream
[2026-06-12 19:03:23,784.784 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 19:03:23,787.787 INFO    ] Waiting 3.00 seconds before fallback handling...
[2026-06-12 19:03:27,164.164 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 19:03:27,167.167 INFO    ] Checking for system updates...
[2026-06-12 19:03:27,204.204 INFO    ] 200
[2026-06-12 19:03:27,206.206 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:03:27,261.261 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 19:03:27,264.264 INFO    ] No update needed
[2026-06-12 19:03:27,266.266 INFO    ] Checking for camera pi updates...
[2026-06-12 19:03:27,286.286 INFO    ] 200
[2026-06-12 19:03:27,287.287 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:03:27,310.310 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 19:03:27,350.350 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 19:03:27,352.352 INFO    ] No camera update needed
[2026-06-12 19:03:27,353.353 INFO    ] Script finished. Safe exiting...
[2026-06-12 19:03:27,354.354 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 19:03:27,357.357 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 19:03:27,360.360 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 19:03:29,401.401 INFO    ] ================================================
[2026-06-12 19:03:29,417.417 INFO    ] Launching Daemon at Fri Jun 12 19:03:29 IST 2026
[2026-06-12 19:03:29,428.428 INFO    ] ================================================
[2026-06-12 19:03:29,772.772 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 19:03:29
[2026-06-12 19:03:30,084.084 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 19:03:30,214.214 INFO    ] Initializing speech engine...
[2026-06-12 19:03:30,229.229 INFO    ] 2026-06-12 19:03:30
[2026-06-12 19:03:30,437.437 INFO    ] 2026-06-12 19:03:30
[2026-06-12 19:03:30,468.468 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 19:03:30,654.654 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 19:03:30,663.663 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 19:03:30,816.816 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 19:03:30,867.867 INFO    ] time= 12/06/2026 19:03:30
[2026-06-12 19:03:30,889.889 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 19:03:30,895.895 INFO    ] Checking for existing commands in stream...
[2026-06-12 19:03:30,963.963 INFO    ] No existing commands found in stream
[2026-06-12 19:03:35,972.972 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 19:03:35,975.975 INFO    ] Waiting 0.00 seconds before fallback handling...
[2026-06-12 19:03:36,368.368 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 19:03:36,370.370 INFO    ] Checking for system updates...
[2026-06-12 19:03:36,391.391 INFO    ] 200
[2026-06-12 19:03:36,393.393 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:03:36,422.422 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 19:03:36,424.424 INFO    ] No update needed
[2026-06-12 19:03:36,425.425 INFO    ] Checking for camera pi updates...
[2026-06-12 19:03:36,446.446 INFO    ] 200
[2026-06-12 19:03:36,448.448 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:03:36,471.471 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 19:03:36,520.520 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 19:03:36,522.522 INFO    ] No camera update needed
[2026-06-12 19:03:36,523.523 INFO    ] Script finished. Safe exiting...
[2026-06-12 19:03:36,524.524 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 19:03:36,527.527 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 19:03:36,530.530 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 19:03:38,569.569 INFO    ] ================================================
[2026-06-12 19:03:38,584.584 INFO    ] Launching Daemon at Fri Jun 12 19:03:38 IST 2026
[2026-06-12 19:03:38,595.595 INFO    ] ================================================
[2026-06-12 19:03:38,966.966 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 19:03:38
[2026-06-12 19:03:39,279.279 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 19:03:39,421.421 INFO    ] Initializing speech engine...
[2026-06-12 19:03:39,426.426 INFO    ] 2026-06-12 19:03:39
[2026-06-12 19:03:39,629.629 INFO    ] 2026-06-12 19:03:39
[2026-06-12 19:03:39,657.657 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 19:03:39,839.839 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 19:03:39,843.843 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 19:03:39,977.977 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 19:03:40,036.036 INFO    ] time= 12/06/2026 19:03:39
[2026-06-12 19:03:40,068.068 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 19:03:40,080.080 INFO    ] Checking for existing commands in stream...
[2026-06-12 19:03:40,199.199 INFO    ] No existing commands found in stream
[2026-06-12 19:03:45,209.209 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 19:03:45,212.212 INFO    ] Waiting 2.13 seconds before fallback handling...
[2026-06-12 19:03:47,737.737 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 19:03:47,738.738 INFO    ] Checking for system updates...
[2026-06-12 19:03:47,759.759 INFO    ] 200
[2026-06-12 19:03:47,761.761 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:03:47,791.791 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 19:03:47,792.792 INFO    ] No update needed
[2026-06-12 19:03:47,794.794 INFO    ] Checking for camera pi updates...
[2026-06-12 19:03:47,815.815 INFO    ] 200
[2026-06-12 19:03:47,817.817 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:03:47,842.842 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 19:03:47,891.891 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 19:03:47,893.893 INFO    ] No camera update needed
[2026-06-12 19:03:47,894.894 INFO    ] Script finished. Safe exiting...
[2026-06-12 19:03:47,895.895 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 19:03:47,898.898 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 19:03:47,901.901 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 19:03:49,943.943 INFO    ] ================================================
[2026-06-12 19:03:49,959.959 INFO    ] Launching Daemon at Fri Jun 12 19:03:49 IST 2026
[2026-06-12 19:03:49,971.971 INFO    ] ================================================
[2026-06-12 19:03:50,310.310 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 19:03:50
[2026-06-12 19:03:50,627.627 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 19:03:50,770.770 INFO    ] Initializing speech engine...
[2026-06-12 19:03:50,775.775 INFO    ] 2026-06-12 19:03:50
[2026-06-12 19:03:50,978.978 INFO    ] 2026-06-12 19:03:50
[2026-06-12 19:03:51,007.007 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 19:03:51,191.191 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 19:03:51,201.201 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 19:03:51,348.348 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 19:03:51,396.396 INFO    ] time= 12/06/2026 19:03:51
[2026-06-12 19:03:51,418.418 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 19:03:51,424.424 INFO    ] Checking for existing commands in stream...
[2026-06-12 19:03:51,491.491 INFO    ] No existing commands found in stream
[2026-06-12 19:03:56,505.505 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 19:03:56,508.508 INFO    ] Waiting 0.59 seconds before fallback handling...
[2026-06-12 19:03:57,497.497 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 19:03:57,498.498 INFO    ] Checking for system updates...
[2026-06-12 19:03:57,519.519 INFO    ] 200
[2026-06-12 19:03:57,520.520 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:03:57,550.550 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 19:03:57,552.552 INFO    ] No update needed
[2026-06-12 19:03:57,553.553 INFO    ] Checking for camera pi updates...
[2026-06-12 19:03:57,572.572 INFO    ] 200
[2026-06-12 19:03:57,574.574 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:03:57,596.596 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 19:03:57,682.682 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 19:03:57,684.684 INFO    ] No camera update needed
[2026-06-12 19:03:57,685.685 INFO    ] Script finished. Safe exiting...
[2026-06-12 19:03:57,686.686 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 19:03:57,689.689 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 19:03:57,692.692 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 19:03:59,731.731 INFO    ] ================================================
[2026-06-12 19:03:59,748.748 INFO    ] Launching Daemon at Fri Jun 12 19:03:59 IST 2026
[2026-06-12 19:03:59,759.759 INFO    ] ================================================
[2026-06-12 19:04:00,107.107 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 19:04:00
[2026-06-12 19:04:00,419.419 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 19:04:00,571.571 INFO    ] Initializing speech engine...
[2026-06-12 19:04:00,577.577 INFO    ] 2026-06-12 19:04:00
[2026-06-12 19:04:00,784.784 INFO    ] 2026-06-12 19:04:00
[2026-06-12 19:04:00,813.813 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 19:04:00,995.995 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 19:04:00,999.999 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 19:04:01,134.134 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 19:04:01,200.200 INFO    ] time= 12/06/2026 19:04:01
[2026-06-12 19:04:01,224.224 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 19:04:01,231.231 INFO    ] Checking for existing commands in stream...
[2026-06-12 19:04:01,297.297 INFO    ] No existing commands found in stream
[2026-06-12 19:04:06,311.311 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 19:04:06,314.314 INFO    ] Waiting 0.91 seconds before fallback handling...
[2026-06-12 19:04:07,585.585 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 19:04:07,587.587 INFO    ] Checking for system updates...
[2026-06-12 19:04:07,607.607 INFO    ] 200
[2026-06-12 19:04:07,608.608 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:04:07,638.638 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 19:04:07,639.639 INFO    ] No update needed
[2026-06-12 19:04:07,641.641 INFO    ] Checking for camera pi updates...
[2026-06-12 19:04:07,661.661 INFO    ] 200
[2026-06-12 19:04:07,663.663 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:04:07,687.687 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 19:04:07,739.739 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 19:04:07,741.741 INFO    ] No camera update needed
[2026-06-12 19:04:07,742.742 INFO    ] Script finished. Safe exiting...
[2026-06-12 19:04:07,743.743 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 19:04:07,746.746 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 19:04:07,749.749 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 19:04:09,789.789 INFO    ] ================================================
[2026-06-12 19:04:09,805.805 INFO    ] Launching Daemon at Fri Jun 12 19:04:09 IST 2026
[2026-06-12 19:04:09,816.816 INFO    ] ================================================
[2026-06-12 19:04:10,192.192 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 19:04:10
[2026-06-12 19:04:10,528.528 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 19:04:10,679.679 INFO    ] Initializing speech engine...
[2026-06-12 19:04:10,685.685 INFO    ] 2026-06-12 19:04:10
[2026-06-12 19:04:10,892.892 INFO    ] 2026-06-12 19:04:10
[2026-06-12 19:04:10,921.921 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 19:04:11,104.104 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 19:04:11,107.107 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 19:04:11,259.259 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 19:04:11,310.310 INFO    ] time= 12/06/2026 19:04:11
[2026-06-12 19:04:11,334.334 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 19:04:11,341.341 INFO    ] Checking for existing commands in stream...
[2026-06-12 19:04:11,408.408 INFO    ] No existing commands found in stream
[2026-06-12 19:04:16,422.422 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 19:04:16,425.425 INFO    ] Waiting 3.28 seconds before fallback handling...
[2026-06-12 19:04:20,087.087 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 19:04:20,089.089 INFO    ] Checking for system updates...
[2026-06-12 19:04:20,110.110 INFO    ] 200
[2026-06-12 19:04:20,112.112 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:04:20,142.142 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 19:04:20,144.144 INFO    ] No update needed
[2026-06-12 19:04:20,145.145 INFO    ] Checking for camera pi updates...
[2026-06-12 19:04:20,169.169 INFO    ] 200
[2026-06-12 19:04:20,170.170 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:04:20,195.195 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 19:04:20,295.295 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 19:04:20,297.297 INFO    ] No camera update needed
[2026-06-12 19:04:20,298.298 INFO    ] Script finished. Safe exiting...
[2026-06-12 19:04:20,299.299 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 19:04:20,303.303 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 19:04:20,305.305 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 19:04:22,345.345 INFO    ] ================================================
[2026-06-12 19:04:22,360.360 INFO    ] Launching Daemon at Fri Jun 12 19:04:22 IST 2026
[2026-06-12 19:04:22,372.372 INFO    ] ================================================
[2026-06-12 19:04:22,724.724 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 19:04:22
[2026-06-12 19:04:23,059.059 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 19:04:23,196.196 INFO    ] Initializing speech engine...
[2026-06-12 19:04:23,210.210 INFO    ] 2026-06-12 19:04:23
[2026-06-12 19:04:23,420.420 INFO    ] 2026-06-12 19:04:23
[2026-06-12 19:04:23,449.449 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 19:04:23,633.633 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 19:04:23,642.642 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 19:04:23,788.788 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 19:04:23,841.841 INFO    ] time= 12/06/2026 19:04:23
[2026-06-12 19:04:23,864.864 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 19:04:23,870.870 INFO    ] Checking for existing commands in stream...
[2026-06-12 19:04:23,937.937 INFO    ] No existing commands found in stream
[2026-06-12 19:04:28,952.952 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 19:04:28,955.955 INFO    ] Waiting 2.79 seconds before fallback handling...
[2026-06-12 19:04:32,085.085 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 19:04:32,086.086 INFO    ] Checking for system updates...
[2026-06-12 19:04:32,107.107 INFO    ] 200
[2026-06-12 19:04:32,108.108 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:04:32,138.138 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 19:04:32,140.140 INFO    ] No update needed
[2026-06-12 19:04:32,142.142 INFO    ] Checking for camera pi updates...
[2026-06-12 19:04:32,162.162 INFO    ] 200
[2026-06-12 19:04:32,163.163 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:04:32,191.191 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 19:04:32,236.236 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 19:04:32,239.239 INFO    ] No camera update needed
[2026-06-12 19:04:32,242.242 INFO    ] Script finished. Safe exiting...
[2026-06-12 19:04:32,244.244 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 19:04:32,251.251 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 19:04:32,257.257 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 19:04:34,299.299 INFO    ] ================================================
[2026-06-12 19:04:34,315.315 INFO    ] Launching Daemon at Fri Jun 12 19:04:34 IST 2026
[2026-06-12 19:04:34,326.326 INFO    ] ================================================
[2026-06-12 19:04:34,690.690 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 19:04:34
[2026-06-12 19:04:35,005.005 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 19:04:35,138.138 INFO    ] Initializing speech engine...
[2026-06-12 19:04:35,150.150 INFO    ] 2026-06-12 19:04:35
[2026-06-12 19:04:35,355.355 INFO    ] 2026-06-12 19:04:35
[2026-06-12 19:04:35,384.384 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 19:04:35,568.568 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 19:04:35,577.577 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 19:04:35,727.727 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 19:04:35,774.774 INFO    ] time= 12/06/2026 19:04:35
[2026-06-12 19:04:35,797.797 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 19:04:35,803.803 INFO    ] Checking for existing commands in stream...
[2026-06-12 19:04:35,870.870 INFO    ] No existing commands found in stream
[2026-06-12 19:04:40,879.879 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 19:04:40,882.882 INFO    ] Waiting 3.54 seconds before fallback handling...
[2026-06-12 19:04:44,848.848 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 19:04:44,849.849 INFO    ] Checking for system updates...
[2026-06-12 19:04:44,871.871 INFO    ] 200
[2026-06-12 19:04:44,873.873 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:04:44,903.903 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 19:04:44,904.904 INFO    ] No update needed
[2026-06-12 19:04:44,906.906 INFO    ] Checking for camera pi updates...
[2026-06-12 19:04:44,925.925 INFO    ] 200
[2026-06-12 19:04:44,927.927 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:04:44,951.951 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 19:04:44,996.996 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 19:04:44,997.997 INFO    ] No camera update needed
[2026-06-12 19:04:44,999.999 INFO    ] Script finished. Safe exiting...
[2026-06-12 19:04:45,000.000 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 19:04:45,004.004 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 19:04:45,006.006 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 19:04:47,049.049 INFO    ] ================================================
[2026-06-12 19:04:47,064.064 INFO    ] Launching Daemon at Fri Jun 12 19:04:47 IST 2026
[2026-06-12 19:04:47,075.075 INFO    ] ================================================
[2026-06-12 19:04:47,427.427 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 19:04:47
[2026-06-12 19:04:47,764.764 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 19:04:47,919.919 INFO    ] Initializing speech engine...
[2026-06-12 19:04:47,926.926 INFO    ] 2026-06-12 19:04:47
[2026-06-12 19:04:48,127.127 INFO    ] 2026-06-12 19:04:48
[2026-06-12 19:04:48,156.156 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 19:04:48,283.283 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 19:04:48,340.340 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 19:04:48,488.488 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 19:04:48,545.545 INFO    ] time= 12/06/2026 19:04:48
[2026-06-12 19:04:48,568.568 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 19:04:48,574.574 INFO    ] Checking for existing commands in stream...
[2026-06-12 19:04:48,641.641 INFO    ] No existing commands found in stream
[2026-06-12 19:04:53,651.651 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 19:04:53,654.654 INFO    ] Waiting 2.66 seconds before fallback handling...
[2026-06-12 19:04:56,688.688 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 19:04:56,690.690 INFO    ] Checking for system updates...
[2026-06-12 19:04:56,713.713 INFO    ] 200
[2026-06-12 19:04:56,714.714 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:04:56,747.747 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 19:04:56,749.749 INFO    ] No update needed
[2026-06-12 19:04:56,750.750 INFO    ] Checking for camera pi updates...
[2026-06-12 19:04:56,770.770 INFO    ] 200
[2026-06-12 19:04:56,772.772 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:04:56,795.795 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 19:04:56,850.850 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 19:04:56,851.851 INFO    ] No camera update needed
[2026-06-12 19:04:56,853.853 INFO    ] Script finished. Safe exiting...
[2026-06-12 19:04:56,854.854 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 19:04:56,857.857 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 19:04:56,861.861 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 19:04:58,904.904 INFO    ] ================================================
[2026-06-12 19:04:58,919.919 INFO    ] Launching Daemon at Fri Jun 12 19:04:58 IST 2026
[2026-06-12 19:04:58,929.929 INFO    ] ================================================
[2026-06-12 19:04:59,286.286 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 19:04:59
[2026-06-12 19:04:59,627.627 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 19:04:59,768.768 INFO    ] Initializing speech engine...
[2026-06-12 19:04:59,780.780 INFO    ] 2026-06-12 19:04:59
[2026-06-12 19:04:59,993.993 INFO    ] 2026-06-12 19:04:59
[2026-06-12 19:05:00,021.021 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 19:05:00,205.205 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 19:05:00,209.209 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 19:05:00,355.355 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 19:05:00,411.411 INFO    ] time= 12/06/2026 19:05:00
[2026-06-12 19:05:00,435.435 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 19:05:00,442.442 INFO    ] Checking for existing commands in stream...
[2026-06-12 19:05:00,532.532 INFO    ] No existing commands found in stream
[2026-06-12 19:05:05,546.546 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 19:05:05,550.550 INFO    ] Waiting 0.34 seconds before fallback handling...
[2026-06-12 19:05:06,251.251 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 19:05:06,252.252 INFO    ] Checking for system updates...
[2026-06-12 19:05:06,273.273 INFO    ] 200
[2026-06-12 19:05:06,274.274 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:05:06,306.306 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 19:05:06,308.308 INFO    ] No update needed
[2026-06-12 19:05:06,309.309 INFO    ] Checking for camera pi updates...
[2026-06-12 19:05:06,329.329 INFO    ] 200
[2026-06-12 19:05:06,330.330 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:05:06,353.353 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 19:05:06,398.398 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 19:05:06,399.399 INFO    ] No camera update needed
[2026-06-12 19:05:06,400.400 INFO    ] Script finished. Safe exiting...
[2026-06-12 19:05:06,402.402 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 19:05:06,404.404 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 19:05:06,407.407 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 19:05:08,445.445 INFO    ] ================================================
[2026-06-12 19:05:08,461.461 INFO    ] Launching Daemon at Fri Jun 12 19:05:08 IST 2026
[2026-06-12 19:05:08,471.471 INFO    ] ================================================
[2026-06-12 19:05:08,864.864 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 19:05:08
[2026-06-12 19:05:09,207.207 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 19:05:09,347.347 INFO    ] Initializing speech engine...
[2026-06-12 19:05:09,355.355 INFO    ] 2026-06-12 19:05:09
[2026-06-12 19:05:09,572.572 INFO    ] 2026-06-12 19:05:09
[2026-06-12 19:05:09,601.601 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 19:05:09,739.739 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 19:05:09,787.787 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 19:05:09,922.922 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 19:05:09,988.988 INFO    ] time= 12/06/2026 19:05:09
[2026-06-12 19:05:10,015.015 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 19:05:10,022.022 INFO    ] Checking for existing commands in stream...
[2026-06-12 19:05:10,089.089 INFO    ] No existing commands found in stream
[2026-06-12 19:05:15,099.099 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 19:05:15,103.103 INFO    ] Waiting 1.85 seconds before fallback handling...
[2026-06-12 19:05:17,274.274 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 19:05:17,276.276 INFO    ] Checking for system updates...
[2026-06-12 19:05:17,297.297 INFO    ] 200
[2026-06-12 19:05:17,298.298 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:05:17,332.332 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 19:05:17,333.333 INFO    ] No update needed
[2026-06-12 19:05:17,335.335 INFO    ] Checking for camera pi updates...
[2026-06-12 19:05:17,355.355 INFO    ] 200
[2026-06-12 19:05:17,357.357 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:05:17,381.381 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 19:05:17,423.423 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 19:05:17,425.425 INFO    ] No camera update needed
[2026-06-12 19:05:17,426.426 INFO    ] Script finished. Safe exiting...
[2026-06-12 19:05:17,427.427 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 19:05:17,431.431 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 19:05:17,434.434 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 19:05:19,472.472 INFO    ] ================================================
[2026-06-12 19:05:19,487.487 INFO    ] Launching Daemon at Fri Jun 12 19:05:19 IST 2026
[2026-06-12 19:05:19,498.498 INFO    ] ================================================
[2026-06-12 19:05:19,852.852 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 19:05:19
[2026-06-12 19:05:20,195.195 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 19:05:20,349.349 INFO    ] Initializing speech engine...
[2026-06-12 19:05:20,354.354 INFO    ] 2026-06-12 19:05:20
[2026-06-12 19:05:20,563.563 INFO    ] 2026-06-12 19:05:20
[2026-06-12 19:05:20,592.592 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 19:05:20,713.713 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 19:05:20,778.778 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 19:05:20,915.915 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 19:05:20,983.983 INFO    ] time= 12/06/2026 19:05:20
[2026-06-12 19:05:21,007.007 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 19:05:21,013.013 INFO    ] Checking for existing commands in stream...
[2026-06-12 19:05:21,104.104 INFO    ] No existing commands found in stream
[2026-06-12 19:05:26,128.128 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 19:05:26,132.132 INFO    ] Waiting 2.12 seconds before fallback handling...
[2026-06-12 19:05:28,635.635 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 19:05:28,636.636 INFO    ] Checking for system updates...
[2026-06-12 19:05:28,656.656 INFO    ] 200
[2026-06-12 19:05:28,658.658 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:05:28,690.690 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 19:05:28,691.691 INFO    ] No update needed
[2026-06-12 19:05:28,693.693 INFO    ] Checking for camera pi updates...
[2026-06-12 19:05:28,712.712 INFO    ] 200
[2026-06-12 19:05:28,713.713 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:05:28,737.737 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 19:05:28,788.788 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 19:05:28,789.789 INFO    ] No camera update needed
[2026-06-12 19:05:28,791.791 INFO    ] Script finished. Safe exiting...
[2026-06-12 19:05:28,792.792 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 19:05:28,795.795 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 19:05:28,798.798 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 19:05:30,835.835 INFO    ] ================================================
[2026-06-12 19:05:30,851.851 INFO    ] Launching Daemon at Fri Jun 12 19:05:30 IST 2026
[2026-06-12 19:05:30,862.862 INFO    ] ================================================
[2026-06-12 19:05:31,232.232 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 19:05:31
[2026-06-12 19:05:31,572.572 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 19:05:31,736.736 INFO    ] Initializing speech engine...
[2026-06-12 19:05:31,746.746 INFO    ] 2026-06-12 19:05:31
[2026-06-12 19:05:31,969.969 INFO    ] 2026-06-12 19:05:31
[2026-06-12 19:05:31,999.999 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 19:05:32,196.196 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 19:05:32,207.207 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 19:05:32,352.352 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 19:05:32,418.418 INFO    ] time= 12/06/2026 19:05:32
[2026-06-12 19:05:32,442.442 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 19:05:32,451.451 INFO    ] Checking for existing commands in stream...
[2026-06-12 19:05:32,545.545 INFO    ] No existing commands found in stream
[2026-06-12 19:05:37,560.560 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 19:05:37,563.563 INFO    ] Waiting 0.43 seconds before fallback handling...
[2026-06-12 19:05:38,378.378 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 19:05:38,380.380 INFO    ] Checking for system updates...
[2026-06-12 19:05:38,401.401 INFO    ] 200
[2026-06-12 19:05:38,402.402 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:05:38,433.433 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 19:05:38,434.434 INFO    ] No update needed
[2026-06-12 19:05:38,436.436 INFO    ] Checking for camera pi updates...
[2026-06-12 19:05:38,456.456 INFO    ] 200
[2026-06-12 19:05:38,458.458 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:05:38,481.481 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 19:05:38,531.531 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 19:05:38,532.532 INFO    ] No camera update needed
[2026-06-12 19:05:38,533.533 INFO    ] Script finished. Safe exiting...
[2026-06-12 19:05:38,534.534 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 19:05:38,537.537 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 19:05:38,540.540 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 19:05:40,579.579 INFO    ] ================================================
[2026-06-12 19:05:40,595.595 INFO    ] Launching Daemon at Fri Jun 12 19:05:40 IST 2026
[2026-06-12 19:05:40,607.607 INFO    ] ================================================
[2026-06-12 19:05:40,985.985 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 19:05:40
[2026-06-12 19:05:41,301.301 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 19:05:41,431.431 INFO    ] Initializing speech engine...
[2026-06-12 19:05:41,436.436 INFO    ] 2026-06-12 19:05:41
[2026-06-12 19:05:41,652.652 INFO    ] 2026-06-12 19:05:41
[2026-06-12 19:05:41,681.681 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 19:05:41,803.803 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 19:05:41,865.865 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 19:05:42,065.065 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 19:05:42,090.090 INFO    ] time= 12/06/2026 19:05:42
[2026-06-12 19:05:42,096.096 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 19:05:42,097.097 INFO    ] Checking for existing commands in stream...
[2026-06-12 19:05:42,162.162 INFO    ] No existing commands found in stream
[2026-06-12 19:05:47,173.173 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 19:05:47,176.176 INFO    ] Waiting 2.37 seconds before fallback handling...
[2026-06-12 19:05:49,933.933 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 19:05:49,935.935 INFO    ] Checking for system updates...
[2026-06-12 19:05:49,956.956 INFO    ] 200
[2026-06-12 19:05:49,957.957 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:05:49,992.992 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 19:05:49,993.993 INFO    ] No update needed
[2026-06-12 19:05:49,995.995 INFO    ] Checking for camera pi updates...
[2026-06-12 19:05:50,014.014 INFO    ] 200
[2026-06-12 19:05:50,016.016 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:05:50,039.039 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 19:05:50,082.082 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 19:05:50,083.083 INFO    ] No camera update needed
[2026-06-12 19:05:50,085.085 INFO    ] Script finished. Safe exiting...
[2026-06-12 19:05:50,086.086 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 19:05:50,089.089 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 19:05:50,092.092 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 19:05:52,131.131 INFO    ] ================================================
[2026-06-12 19:05:52,147.147 INFO    ] Launching Daemon at Fri Jun 12 19:05:52 IST 2026
[2026-06-12 19:05:52,158.158 INFO    ] ================================================
[2026-06-12 19:05:52,483.483 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 19:05:52
[2026-06-12 19:05:52,795.795 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 19:05:52,936.936 INFO    ] Initializing speech engine...
[2026-06-12 19:05:52,942.942 INFO    ] 2026-06-12 19:05:52
[2026-06-12 19:05:53,144.144 INFO    ] 2026-06-12 19:05:53
[2026-06-12 19:05:53,173.173 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 19:05:53,356.356 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 19:05:53,359.359 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 19:05:53,488.488 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 19:05:53,543.543 INFO    ] time= 12/06/2026 19:05:53
[2026-06-12 19:05:53,583.583 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 19:05:53,588.588 INFO    ] Checking for existing commands in stream...
[2026-06-12 19:05:53,657.657 INFO    ] No existing commands found in stream
[2026-06-12 19:05:58,668.668 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 19:05:58,671.671 INFO    ] Waiting 3.22 seconds before fallback handling...
[2026-06-12 19:06:02,324.324 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 19:06:02,326.326 INFO    ] Checking for system updates...
[2026-06-12 19:06:02,354.354 INFO    ] 200
[2026-06-12 19:06:02,356.356 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:06:02,398.398 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 19:06:02,400.400 INFO    ] No update needed
[2026-06-12 19:06:02,403.403 INFO    ] Checking for camera pi updates...
[2026-06-12 19:06:02,433.433 INFO    ] 200
[2026-06-12 19:06:02,435.435 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:06:02,470.470 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 19:06:02,504.504 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 19:06:02,506.506 INFO    ] No camera update needed
[2026-06-12 19:06:02,508.508 INFO    ] Script finished. Safe exiting...
[2026-06-12 19:06:02,510.510 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 19:06:02,514.514 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 19:06:02,518.518 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 19:06:04,559.559 INFO    ] ================================================
[2026-06-12 19:06:04,574.574 INFO    ] Launching Daemon at Fri Jun 12 19:06:04 IST 2026
[2026-06-12 19:06:04,584.584 INFO    ] ================================================
[2026-06-12 19:06:04,943.943 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 19:06:04
[2026-06-12 19:06:05,256.256 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 19:06:05,398.398 INFO    ] Initializing speech engine...
[2026-06-12 19:06:05,404.404 INFO    ] 2026-06-12 19:06:05
[2026-06-12 19:06:05,606.606 INFO    ] 2026-06-12 19:06:05
[2026-06-12 19:06:05,634.634 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 19:06:05,756.756 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 19:06:05,819.819 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 19:06:05,956.956 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 19:06:06,020.020 INFO    ] time= 12/06/2026 19:06:05
[2026-06-12 19:06:06,049.049 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 19:06:06,054.054 INFO    ] Checking for existing commands in stream...
[2026-06-12 19:06:06,154.154 INFO    ] No existing commands found in stream
[2026-06-12 19:06:11,162.162 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 19:06:11,165.165 INFO    ] Waiting 2.64 seconds before fallback handling...
[2026-06-12 19:06:14,207.207 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 19:06:14,208.208 INFO    ] Checking for system updates...
[2026-06-12 19:06:14,229.229 INFO    ] 200
[2026-06-12 19:06:14,231.231 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:06:14,263.263 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 19:06:14,265.265 INFO    ] No update needed
[2026-06-12 19:06:14,266.266 INFO    ] Checking for camera pi updates...
[2026-06-12 19:06:14,285.285 INFO    ] 200
[2026-06-12 19:06:14,287.287 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:06:14,310.310 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 19:06:14,450.450 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 19:06:14,451.451 INFO    ] No camera update needed
[2026-06-12 19:06:14,453.453 INFO    ] Script finished. Safe exiting...
[2026-06-12 19:06:14,454.454 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 19:06:14,457.457 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 19:06:14,460.460 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 19:06:16,500.500 INFO    ] ================================================
[2026-06-12 19:06:16,515.515 INFO    ] Launching Daemon at Fri Jun 12 19:06:16 IST 2026
[2026-06-12 19:06:16,526.526 INFO    ] ================================================
[2026-06-12 19:06:16,864.864 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 19:06:16
[2026-06-12 19:06:17,181.181 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 19:06:17,312.312 INFO    ] Initializing speech engine...
[2026-06-12 19:06:17,317.317 INFO    ] 2026-06-12 19:06:17
[2026-06-12 19:06:17,535.535 INFO    ] 2026-06-12 19:06:17
[2026-06-12 19:06:17,563.563 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 19:06:17,690.690 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 19:06:17,704.704 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 19:06:17,849.849 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 19:06:17,901.901 INFO    ] time= 12/06/2026 19:06:17
[2026-06-12 19:06:17,944.944 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 19:06:17,992.992 INFO    ] Checking for existing commands in stream...
[2026-06-12 19:06:18,092.092 INFO    ] No existing commands found in stream
[2026-06-12 19:06:23,103.103 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 19:06:23,105.105 INFO    ] Waiting 3.02 seconds before fallback handling...
[2026-06-12 19:06:26,502.502 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 19:06:26,504.504 INFO    ] Checking for system updates...
[2026-06-12 19:06:26,524.524 INFO    ] 200
[2026-06-12 19:06:26,526.526 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:06:26,559.559 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 19:06:26,560.560 INFO    ] No update needed
[2026-06-12 19:06:26,561.561 INFO    ] Checking for camera pi updates...
[2026-06-12 19:06:26,583.583 INFO    ] 200
[2026-06-12 19:06:26,584.584 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:06:26,611.611 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 19:06:26,641.641 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 19:06:26,642.642 INFO    ] No camera update needed
[2026-06-12 19:06:26,644.644 INFO    ] Script finished. Safe exiting...
[2026-06-12 19:06:26,645.645 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 19:06:26,648.648 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 19:06:26,651.651 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 19:06:28,690.690 INFO    ] ================================================
[2026-06-12 19:06:28,705.705 INFO    ] Launching Daemon at Fri Jun 12 19:06:28 IST 2026
[2026-06-12 19:06:28,716.716 INFO    ] ================================================
[2026-06-12 19:06:29,060.060 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 19:06:29
[2026-06-12 19:06:29,372.372 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 19:06:29,512.512 INFO    ] Initializing speech engine...
[2026-06-12 19:06:29,520.520 INFO    ] 2026-06-12 19:06:29
[2026-06-12 19:06:29,741.741 INFO    ] 2026-06-12 19:06:29
[2026-06-12 19:06:29,771.771 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 19:06:29,969.969 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 19:06:29,973.973 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 19:06:30,113.113 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 19:06:30,159.159 INFO    ] time= 12/06/2026 19:06:30
[2026-06-12 19:06:30,203.203 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 19:06:30,220.220 INFO    ] Checking for existing commands in stream...
[2026-06-12 19:06:30,295.295 INFO    ] No existing commands found in stream
[2026-06-12 19:06:35,306.306 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 19:06:35,309.309 INFO    ] Waiting 2.28 seconds before fallback handling...
[2026-06-12 19:06:37,981.981 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 19:06:37,982.982 INFO    ] Checking for system updates...
[2026-06-12 19:06:38,003.003 INFO    ] 200
[2026-06-12 19:06:38,004.004 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:06:38,037.037 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 19:06:38,038.038 INFO    ] No update needed
[2026-06-12 19:06:38,039.039 INFO    ] Checking for camera pi updates...
[2026-06-12 19:06:38,059.059 INFO    ] 200
[2026-06-12 19:06:38,060.060 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:06:38,083.083 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 19:06:38,124.124 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 19:06:38,126.126 INFO    ] No camera update needed
[2026-06-12 19:06:38,127.127 INFO    ] Script finished. Safe exiting...
[2026-06-12 19:06:38,128.128 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 19:06:38,131.131 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 19:06:38,134.134 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 19:06:40,175.175 INFO    ] ================================================
[2026-06-12 19:06:40,190.190 INFO    ] Launching Daemon at Fri Jun 12 19:06:40 IST 2026
[2026-06-12 19:06:40,201.201 INFO    ] ================================================
[2026-06-12 19:06:40,565.565 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 19:06:40
[2026-06-12 19:06:40,876.876 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 19:06:41,011.011 INFO    ] Initializing speech engine...
[2026-06-12 19:06:41,023.023 INFO    ] 2026-06-12 19:06:41
[2026-06-12 19:06:41,233.233 INFO    ] 2026-06-12 19:06:41
[2026-06-12 19:06:41,262.262 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 19:06:41,427.427 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 19:06:41,452.452 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 19:06:41,586.586 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 19:06:41,654.654 INFO    ] time= 12/06/2026 19:06:41
[2026-06-12 19:06:41,682.682 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 19:06:41,689.689 INFO    ] Checking for existing commands in stream...
[2026-06-12 19:06:41,756.756 INFO    ] No existing commands found in stream
[2026-06-12 19:06:46,765.765 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 19:06:46,768.768 INFO    ] Waiting 2.77 seconds before fallback handling...
[2026-06-12 19:06:49,906.906 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 19:06:49,907.907 INFO    ] Checking for system updates...
[2026-06-12 19:06:49,929.929 INFO    ] 200
[2026-06-12 19:06:49,931.931 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:06:49,961.961 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 19:06:49,962.962 INFO    ] No update needed
[2026-06-12 19:06:49,964.964 INFO    ] Checking for camera pi updates...
[2026-06-12 19:06:49,983.983 INFO    ] 200
[2026-06-12 19:06:49,984.984 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:06:50,007.007 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 19:06:50,069.069 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 19:06:50,070.070 INFO    ] No camera update needed
[2026-06-12 19:06:50,071.071 INFO    ] Script finished. Safe exiting...
[2026-06-12 19:06:50,073.073 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 19:06:50,075.075 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 19:06:50,078.078 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 19:06:52,117.117 INFO    ] ================================================
[2026-06-12 19:06:52,133.133 INFO    ] Launching Daemon at Fri Jun 12 19:06:52 IST 2026
[2026-06-12 19:06:52,143.143 INFO    ] ================================================
[2026-06-12 19:06:52,485.485 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 19:06:52
[2026-06-12 19:06:52,802.802 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 19:06:52,934.934 INFO    ] Initializing speech engine...
[2026-06-12 19:06:52,938.938 INFO    ] 2026-06-12 19:06:52
[2026-06-12 19:06:53,154.154 INFO    ] 2026-06-12 19:06:53
[2026-06-12 19:06:53,183.183 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 19:06:53,326.326 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 19:06:53,368.368 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 19:06:53,506.506 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 19:06:53,570.570 INFO    ] time= 12/06/2026 19:06:53
[2026-06-12 19:06:53,597.597 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 19:06:53,603.603 INFO    ] Checking for existing commands in stream...
[2026-06-12 19:06:53,668.668 INFO    ] No existing commands found in stream
[2026-06-12 19:06:58,679.679 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 19:06:58,682.682 INFO    ] Waiting 1.98 seconds before fallback handling...
[2026-06-12 19:07:01,048.048 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 19:07:01,049.049 INFO    ] Checking for system updates...
[2026-06-12 19:07:01,070.070 INFO    ] 200
[2026-06-12 19:07:01,071.071 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:07:01,102.102 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 19:07:01,103.103 INFO    ] No update needed
[2026-06-12 19:07:01,105.105 INFO    ] Checking for camera pi updates...
[2026-06-12 19:07:01,147.147 INFO    ] 200
[2026-06-12 19:07:01,150.150 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:07:01,220.220 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 19:07:01,277.277 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 19:07:01,279.279 INFO    ] No camera update needed
[2026-06-12 19:07:01,281.281 INFO    ] Script finished. Safe exiting...
[2026-06-12 19:07:01,283.283 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 19:07:01,288.288 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 19:07:01,297.297 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 19:07:03,330.330 INFO    ] ================================================
[2026-06-12 19:07:03,346.346 INFO    ] Launching Daemon at Fri Jun 12 19:07:03 IST 2026
[2026-06-12 19:07:03,360.360 INFO    ] ================================================
[2026-06-12 19:07:03,700.700 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 19:07:03
[2026-06-12 19:07:04,014.014 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 19:07:04,153.153 INFO    ] Initializing speech engine...
[2026-06-12 19:07:04,163.163 INFO    ] 2026-06-12 19:07:04
[2026-06-12 19:07:04,368.368 INFO    ] 2026-06-12 19:07:04
[2026-06-12 19:07:04,397.397 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 19:07:04,521.521 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 19:07:04,567.567 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 19:07:04,720.720 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 19:07:04,787.787 INFO    ] time= 12/06/2026 19:07:04
[2026-06-12 19:07:04,814.814 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 19:07:04,821.821 INFO    ] Checking for existing commands in stream...
[2026-06-12 19:07:04,888.888 INFO    ] No existing commands found in stream
[2026-06-12 19:07:09,907.907 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 19:07:09,911.911 INFO    ] Waiting 0.32 seconds before fallback handling...
[2026-06-12 19:07:10,772.772 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 19:07:10,774.774 INFO    ] Checking for system updates...
[2026-06-12 19:07:10,795.795 INFO    ] 200
[2026-06-12 19:07:10,796.796 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:07:10,827.827 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 19:07:10,828.828 INFO    ] No update needed
[2026-06-12 19:07:10,829.829 INFO    ] Checking for camera pi updates...
[2026-06-12 19:07:10,848.848 INFO    ] 200
[2026-06-12 19:07:10,850.850 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:07:10,873.873 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 19:07:10,914.914 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 19:07:10,915.915 INFO    ] No camera update needed
[2026-06-12 19:07:10,917.917 INFO    ] Script finished. Safe exiting...
[2026-06-12 19:07:10,918.918 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 19:07:10,921.921 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 19:07:10,924.924 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 19:07:12,962.962 INFO    ] ================================================
[2026-06-12 19:07:12,977.977 INFO    ] Launching Daemon at Fri Jun 12 19:07:12 IST 2026
[2026-06-12 19:07:12,989.989 INFO    ] ================================================
[2026-06-12 19:07:13,353.353 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 19:07:13
[2026-06-12 19:07:13,696.696 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 19:07:13,850.850 INFO    ] Initializing speech engine...
[2026-06-12 19:07:13,854.854 INFO    ] 2026-06-12 19:07:13
[2026-06-12 19:07:14,062.062 INFO    ] 2026-06-12 19:07:14
[2026-06-12 19:07:14,091.091 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 19:07:14,275.275 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 19:07:14,285.285 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 19:07:14,419.419 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 19:07:14,481.481 INFO    ] time= 12/06/2026 19:07:14
[2026-06-12 19:07:14,505.505 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 19:07:14,511.511 INFO    ] Checking for existing commands in stream...
[2026-06-12 19:07:14,601.601 INFO    ] No existing commands found in stream
[2026-06-12 19:07:19,621.621 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 19:07:19,624.624 INFO    ] Waiting 0.23 seconds before fallback handling...
[2026-06-12 19:07:20,239.239 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 19:07:20,240.240 INFO    ] Checking for system updates...
[2026-06-12 19:07:20,261.261 INFO    ] 200
[2026-06-12 19:07:20,263.263 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:07:20,293.293 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 19:07:20,294.294 INFO    ] No update needed
[2026-06-12 19:07:20,295.295 INFO    ] Checking for camera pi updates...
[2026-06-12 19:07:20,315.315 INFO    ] 200
[2026-06-12 19:07:20,316.316 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:07:20,341.341 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 19:07:20,397.397 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 19:07:20,399.399 INFO    ] No camera update needed
[2026-06-12 19:07:20,400.400 INFO    ] Script finished. Safe exiting...
[2026-06-12 19:07:20,401.401 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 19:07:20,404.404 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 19:07:20,407.407 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 19:07:22,444.444 INFO    ] ================================================
[2026-06-12 19:07:22,460.460 INFO    ] Launching Daemon at Fri Jun 12 19:07:22 IST 2026
[2026-06-12 19:07:22,470.470 INFO    ] ================================================
[2026-06-12 19:07:22,809.809 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 19:07:22
[2026-06-12 19:07:23,124.124 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 19:07:23,257.257 INFO    ] Initializing speech engine...
[2026-06-12 19:07:23,261.261 INFO    ] 2026-06-12 19:07:23
[2026-06-12 19:07:23,453.453 INFO    ] 2026-06-12 19:07:23
[2026-06-12 19:07:23,499.499 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 19:07:23,660.660 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 19:07:23,693.693 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 19:07:23,877.877 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 19:07:23,929.929 INFO    ] time= 12/06/2026 19:07:23
[2026-06-12 19:07:23,958.958 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 19:07:23,981.981 INFO    ] Checking for existing commands in stream...
[2026-06-12 19:07:24,058.058 INFO    ] No existing commands found in stream
[2026-06-12 19:07:29,069.069 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 19:07:29,072.072 INFO    ] Waiting 1.97 seconds before fallback handling...
[2026-06-12 19:07:31,406.406 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 19:07:31,408.408 INFO    ] Checking for system updates...
[2026-06-12 19:07:31,433.433 INFO    ] 200
[2026-06-12 19:07:31,435.435 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:07:31,468.468 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 19:07:31,470.470 INFO    ] No update needed
[2026-06-12 19:07:31,472.472 INFO    ] Checking for camera pi updates...
[2026-06-12 19:07:31,498.498 INFO    ] 200
[2026-06-12 19:07:31,500.500 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:07:31,530.530 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 19:07:31,575.575 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 19:07:31,576.576 INFO    ] No camera update needed
[2026-06-12 19:07:31,578.578 INFO    ] Script finished. Safe exiting...
[2026-06-12 19:07:31,580.580 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 19:07:31,583.583 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 19:07:31,587.587 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 19:07:33,628.628 INFO    ] ================================================
[2026-06-12 19:07:33,644.644 INFO    ] Launching Daemon at Fri Jun 12 19:07:33 IST 2026
[2026-06-12 19:07:33,655.655 INFO    ] ================================================
[2026-06-12 19:07:34,048.048 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 19:07:34
[2026-06-12 19:07:34,391.391 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 19:07:34,545.545 INFO    ] Initializing speech engine...
[2026-06-12 19:07:34,550.550 INFO    ] 2026-06-12 19:07:34
[2026-06-12 19:07:34,760.760 INFO    ] 2026-06-12 19:07:34
[2026-06-12 19:07:34,790.790 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 19:07:34,976.976 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 19:07:34,980.980 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 19:07:35,124.124 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 19:07:35,188.188 INFO    ] time= 12/06/2026 19:07:35
[2026-06-12 19:07:35,212.212 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 19:07:35,218.218 INFO    ] Checking for existing commands in stream...
[2026-06-12 19:07:35,287.287 INFO    ] No existing commands found in stream
[2026-06-12 19:07:40,306.306 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 19:07:40,310.310 INFO    ] Waiting 1.29 seconds before fallback handling...
[2026-06-12 19:07:41,996.996 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 19:07:41,998.998 INFO    ] Checking for system updates...
[2026-06-12 19:07:42,021.021 INFO    ] 200
[2026-06-12 19:07:42,022.022 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:07:42,055.055 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 19:07:42,057.057 INFO    ] No update needed
[2026-06-12 19:07:42,058.058 INFO    ] Checking for camera pi updates...
[2026-06-12 19:07:42,082.082 INFO    ] 200
[2026-06-12 19:07:42,084.084 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:07:42,109.109 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 19:07:42,152.152 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 19:07:42,153.153 INFO    ] No camera update needed
[2026-06-12 19:07:42,155.155 INFO    ] Script finished. Safe exiting...
[2026-06-12 19:07:42,156.156 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 19:07:42,159.159 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 19:07:42,163.163 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 19:07:44,202.202 INFO    ] ================================================
[2026-06-12 19:07:44,218.218 INFO    ] Launching Daemon at Fri Jun 12 19:07:44 IST 2026
[2026-06-12 19:07:44,228.228 INFO    ] ================================================
[2026-06-12 19:07:44,597.597 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 19:07:44
[2026-06-12 19:07:44,943.943 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 19:07:45,096.096 INFO    ] Initializing speech engine...
[2026-06-12 19:07:45,102.102 INFO    ] 2026-06-12 19:07:45
[2026-06-12 19:07:45,310.310 INFO    ] 2026-06-12 19:07:45
[2026-06-12 19:07:45,339.339 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 19:07:45,525.525 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 19:07:45,534.534 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 19:07:45,695.695 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 19:07:45,735.735 INFO    ] time= 12/06/2026 19:07:45
[2026-06-12 19:07:45,756.756 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 19:07:45,762.762 INFO    ] Checking for existing commands in stream...
[2026-06-12 19:07:45,834.834 INFO    ] No existing commands found in stream
[2026-06-12 19:07:50,862.862 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 19:07:50,865.865 INFO    ] Waiting 2.94 seconds before fallback handling...
[2026-06-12 19:07:54,228.228 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 19:07:54,229.229 INFO    ] Checking for system updates...
[2026-06-12 19:07:54,250.250 INFO    ] 200
[2026-06-12 19:07:54,252.252 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:07:54,286.286 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 19:07:54,288.288 INFO    ] No update needed
[2026-06-12 19:07:54,289.289 INFO    ] Checking for camera pi updates...
[2026-06-12 19:07:54,311.311 INFO    ] 200
[2026-06-12 19:07:54,312.312 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:07:54,336.336 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 19:07:54,378.378 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 19:07:54,380.380 INFO    ] No camera update needed
[2026-06-12 19:07:54,382.382 INFO    ] Script finished. Safe exiting...
[2026-06-12 19:07:54,383.383 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 19:07:54,386.386 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 19:07:54,389.389 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 19:07:56,429.429 INFO    ] ================================================
[2026-06-12 19:07:56,445.445 INFO    ] Launching Daemon at Fri Jun 12 19:07:56 IST 2026
[2026-06-12 19:07:56,456.456 INFO    ] ================================================
[2026-06-12 19:07:56,797.797 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 19:07:56
[2026-06-12 19:07:57,108.108 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 19:07:57,250.250 INFO    ] Initializing speech engine...
[2026-06-12 19:07:57,255.255 INFO    ] 2026-06-12 19:07:57
[2026-06-12 19:07:57,457.457 INFO    ] 2026-06-12 19:07:57
[2026-06-12 19:07:57,487.487 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 19:07:57,669.669 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 19:07:57,673.673 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 19:07:57,825.825 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 19:07:57,878.878 INFO    ] time= 12/06/2026 19:07:57
[2026-06-12 19:07:57,901.901 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 19:07:57,907.907 INFO    ] Checking for existing commands in stream...
[2026-06-12 19:07:57,974.974 INFO    ] No existing commands found in stream
[2026-06-12 19:08:02,988.988 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 19:08:02,991.991 INFO    ] Waiting 1.20 seconds before fallback handling...
[2026-06-12 19:08:04,575.575 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 19:08:04,577.577 INFO    ] Checking for system updates...
[2026-06-12 19:08:04,597.597 INFO    ] 200
[2026-06-12 19:08:04,598.598 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:08:04,631.631 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 19:08:04,632.632 INFO    ] No update needed
[2026-06-12 19:08:04,634.634 INFO    ] Checking for camera pi updates...
[2026-06-12 19:08:04,653.653 INFO    ] 200
[2026-06-12 19:08:04,654.654 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:08:04,679.679 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 19:08:04,736.736 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 19:08:04,737.737 INFO    ] No camera update needed
[2026-06-12 19:08:04,739.739 INFO    ] Script finished. Safe exiting...
[2026-06-12 19:08:04,740.740 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 19:08:04,743.743 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 19:08:04,746.746 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 19:08:06,785.785 INFO    ] ================================================
[2026-06-12 19:08:06,801.801 INFO    ] Launching Daemon at Fri Jun 12 19:08:06 IST 2026
[2026-06-12 19:08:06,813.813 INFO    ] ================================================
[2026-06-12 19:08:07,179.179 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 19:08:07
[2026-06-12 19:08:07,491.491 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 19:08:07,622.622 INFO    ] Initializing speech engine...
[2026-06-12 19:08:07,626.626 INFO    ] 2026-06-12 19:08:07
[2026-06-12 19:08:07,843.843 INFO    ] 2026-06-12 19:08:07
[2026-06-12 19:08:07,873.873 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 19:08:08,059.059 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 19:08:08,069.069 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 19:08:08,219.219 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 19:08:08,268.268 INFO    ] time= 12/06/2026 19:08:08
[2026-06-12 19:08:08,291.291 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 19:08:08,297.297 INFO    ] Checking for existing commands in stream...
[2026-06-12 19:08:08,365.365 INFO    ] No existing commands found in stream
[2026-06-12 19:08:13,374.374 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 19:08:13,377.377 INFO    ] Waiting 1.67 seconds before fallback handling...
[2026-06-12 19:08:15,462.462 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 19:08:15,464.464 INFO    ] Checking for system updates...
[2026-06-12 19:08:15,484.484 INFO    ] 200
[2026-06-12 19:08:15,485.485 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:08:15,518.518 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 19:08:15,520.520 INFO    ] No update needed
[2026-06-12 19:08:15,521.521 INFO    ] Checking for camera pi updates...
[2026-06-12 19:08:15,541.541 INFO    ] 200
[2026-06-12 19:08:15,542.542 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:08:15,565.565 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 19:08:15,703.703 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 19:08:15,704.704 INFO    ] No camera update needed
[2026-06-12 19:08:15,705.705 INFO    ] Script finished. Safe exiting...
[2026-06-12 19:08:15,707.707 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 19:08:15,710.710 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 19:08:15,712.712 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 19:08:17,753.753 INFO    ] ================================================
[2026-06-12 19:08:17,769.769 INFO    ] Launching Daemon at Fri Jun 12 19:08:17 IST 2026
[2026-06-12 19:08:17,780.780 INFO    ] ================================================
[2026-06-12 19:08:18,149.149 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 19:08:18
[2026-06-12 19:08:18,466.466 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 19:08:18,600.600 INFO    ] Initializing speech engine...
[2026-06-12 19:08:18,612.612 INFO    ] 2026-06-12 19:08:18
[2026-06-12 19:08:18,820.820 INFO    ] 2026-06-12 19:08:18
[2026-06-12 19:08:18,848.848 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 19:08:19,033.033 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 19:08:19,043.043 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 19:08:19,172.172 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 19:08:19,236.236 INFO    ] time= 12/06/2026 19:08:19
[2026-06-12 19:08:19,263.263 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 19:08:19,270.270 INFO    ] Checking for existing commands in stream...
[2026-06-12 19:08:19,360.360 INFO    ] No existing commands found in stream
[2026-06-12 19:08:24,369.369 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 19:08:24,372.372 INFO    ] Waiting 3.80 seconds before fallback handling...
[2026-06-12 19:08:28,593.593 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 19:08:28,595.595 INFO    ] Checking for system updates...
[2026-06-12 19:08:28,616.616 INFO    ] 200
[2026-06-12 19:08:28,617.617 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:08:28,647.647 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 19:08:28,649.649 INFO    ] No update needed
[2026-06-12 19:08:28,650.650 INFO    ] Checking for camera pi updates...
[2026-06-12 19:08:28,670.670 INFO    ] 200
[2026-06-12 19:08:28,671.671 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:08:28,696.696 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 19:08:28,738.738 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 19:08:28,740.740 INFO    ] No camera update needed
[2026-06-12 19:08:28,741.741 INFO    ] Script finished. Safe exiting...
[2026-06-12 19:08:28,743.743 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 19:08:28,746.746 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 19:08:28,753.753 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 19:08:30,791.791 INFO    ] ================================================
[2026-06-12 19:08:30,806.806 INFO    ] Launching Daemon at Fri Jun 12 19:08:30 IST 2026
[2026-06-12 19:08:30,816.816 INFO    ] ================================================
[2026-06-12 19:08:31,150.150 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 19:08:31
[2026-06-12 19:08:31,483.483 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 19:08:31,629.629 INFO    ] Initializing speech engine...
[2026-06-12 19:08:31,634.634 INFO    ] 2026-06-12 19:08:31
[2026-06-12 19:08:31,848.848 INFO    ] 2026-06-12 19:08:31
[2026-06-12 19:08:31,897.897 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 19:08:32,038.038 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 19:08:32,041.041 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 19:08:32,152.152 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 19:08:32,162.162 INFO    ] time= 12/06/2026 19:08:32
[2026-06-12 19:08:32,166.166 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 19:08:32,181.181 INFO    ] Checking for existing commands in stream...
[2026-06-12 19:08:32,284.284 INFO    ] No existing commands found in stream
[2026-06-12 19:08:37,305.305 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 19:08:37,308.308 INFO    ] Waiting 3.28 seconds before fallback handling...
[2026-06-12 19:08:41,451.451 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 19:08:41,453.453 INFO    ] Checking for system updates...
[2026-06-12 19:08:41,474.474 INFO    ] 200
[2026-06-12 19:08:41,476.476 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:08:41,505.505 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 19:08:41,507.507 INFO    ] No update needed
[2026-06-12 19:08:41,508.508 INFO    ] Checking for camera pi updates...
[2026-06-12 19:08:41,536.536 INFO    ] 200
[2026-06-12 19:08:41,538.538 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:08:41,584.584 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 19:08:41,644.644 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 19:08:41,645.645 INFO    ] No camera update needed
[2026-06-12 19:08:41,646.646 INFO    ] Script finished. Safe exiting...
[2026-06-12 19:08:41,648.648 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 19:08:41,651.651 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 19:08:41,653.653 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 19:08:43,691.691 INFO    ] ================================================
[2026-06-12 19:08:43,706.706 INFO    ] Launching Daemon at Fri Jun 12 19:08:43 IST 2026
[2026-06-12 19:08:43,717.717 INFO    ] ================================================
[2026-06-12 19:08:44,095.095 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 19:08:44
[2026-06-12 19:08:44,407.407 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 19:08:44,537.537 INFO    ] Initializing speech engine...
[2026-06-12 19:08:44,550.550 INFO    ] 2026-06-12 19:08:44
[2026-06-12 19:08:44,756.756 INFO    ] 2026-06-12 19:08:44
[2026-06-12 19:08:44,784.784 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 19:08:44,968.968 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 19:08:44,978.978 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 19:08:45,126.126 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 19:08:45,180.180 INFO    ] time= 12/06/2026 19:08:45
[2026-06-12 19:08:45,196.196 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 19:08:45,201.201 INFO    ] Checking for existing commands in stream...
[2026-06-12 19:08:45,269.269 INFO    ] No existing commands found in stream
[2026-06-12 19:08:50,288.288 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 19:08:50,291.291 INFO    ] Waiting 2.32 seconds before fallback handling...
[2026-06-12 19:08:53,010.010 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 19:08:53,011.011 INFO    ] Checking for system updates...
[2026-06-12 19:08:53,032.032 INFO    ] 200
[2026-06-12 19:08:53,033.033 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:08:53,063.063 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 19:08:53,064.064 INFO    ] No update needed
[2026-06-12 19:08:53,066.066 INFO    ] Checking for camera pi updates...
[2026-06-12 19:08:53,092.092 INFO    ] 200
[2026-06-12 19:08:53,094.094 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:08:53,121.121 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 19:08:53,167.167 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 19:08:53,168.168 INFO    ] No camera update needed
[2026-06-12 19:08:53,170.170 INFO    ] Script finished. Safe exiting...
[2026-06-12 19:08:53,171.171 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 19:08:53,174.174 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 19:08:53,177.177 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 19:08:55,216.216 INFO    ] ================================================
[2026-06-12 19:08:55,236.236 INFO    ] Launching Daemon at Fri Jun 12 19:08:55 IST 2026
[2026-06-12 19:08:55,247.247 INFO    ] ================================================
[2026-06-12 19:08:55,594.594 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 19:08:55
[2026-06-12 19:08:55,905.905 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 19:08:56,035.035 INFO    ] Initializing speech engine...
[2026-06-12 19:08:56,038.038 INFO    ] 2026-06-12 19:08:56
[2026-06-12 19:08:56,232.232 INFO    ] 2026-06-12 19:08:56
[2026-06-12 19:08:56,268.268 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 19:08:56,427.427 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 19:08:56,466.466 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 19:08:56,641.641 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 19:08:56,649.649 INFO    ] time= 12/06/2026 19:08:56
[2026-06-12 19:08:56,715.715 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 19:08:56,750.750 INFO    ] Checking for existing commands in stream...
[2026-06-12 19:08:56,821.821 INFO    ] No existing commands found in stream
[2026-06-12 19:09:01,829.829 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 19:09:01,832.832 INFO    ] Waiting 0.93 seconds before fallback handling...
[2026-06-12 19:09:03,136.136 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 19:09:03,138.138 INFO    ] Checking for system updates...
[2026-06-12 19:09:03,178.178 INFO    ] 200
[2026-06-12 19:09:03,180.180 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:09:03,247.247 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 19:09:03,248.248 INFO    ] No update needed
[2026-06-12 19:09:03,249.249 INFO    ] Checking for camera pi updates...
[2026-06-12 19:09:03,270.270 INFO    ] 200
[2026-06-12 19:09:03,271.271 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:09:03,294.294 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 19:09:03,345.345 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 19:09:03,346.346 INFO    ] No camera update needed
[2026-06-12 19:09:03,348.348 INFO    ] Script finished. Safe exiting...
[2026-06-12 19:09:03,349.349 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 19:09:03,352.352 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 19:09:03,355.355 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 19:09:05,392.392 INFO    ] ================================================
[2026-06-12 19:09:05,407.407 INFO    ] Launching Daemon at Fri Jun 12 19:09:05 IST 2026
[2026-06-12 19:09:05,418.418 INFO    ] ================================================
[2026-06-12 19:09:05,786.786 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 19:09:05
[2026-06-12 19:09:06,129.129 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 19:09:06,285.285 INFO    ] Initializing speech engine...
[2026-06-12 19:09:06,293.293 INFO    ] 2026-06-12 19:09:06
[2026-06-12 19:09:06,508.508 INFO    ] 2026-06-12 19:09:06
[2026-06-12 19:09:06,545.545 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 19:09:06,744.744 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 19:09:06,754.754 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 19:09:06,975.975 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 19:09:07,000.000 INFO    ] time= 12/06/2026 19:09:06
[2026-06-12 19:09:07,002.002 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 19:09:07,007.007 INFO    ] Checking for existing commands in stream...
[2026-06-12 19:09:07,075.075 INFO    ] No existing commands found in stream
[2026-06-12 19:09:12,089.089 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 19:09:12,092.092 INFO    ] Waiting 3.21 seconds before fallback handling...
[2026-06-12 19:09:15,670.670 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 19:09:15,671.671 INFO    ] Checking for system updates...
[2026-06-12 19:09:15,692.692 INFO    ] 200
[2026-06-12 19:09:15,693.693 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:09:15,723.723 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 19:09:15,724.724 INFO    ] No update needed
[2026-06-12 19:09:15,726.726 INFO    ] Checking for camera pi updates...
[2026-06-12 19:09:15,745.745 INFO    ] 200
[2026-06-12 19:09:15,747.747 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:09:15,770.770 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 19:09:15,816.816 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 19:09:15,818.818 INFO    ] No camera update needed
[2026-06-12 19:09:15,819.819 INFO    ] Script finished. Safe exiting...
[2026-06-12 19:09:15,820.820 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 19:09:15,824.824 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 19:09:15,827.827 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 19:09:17,865.865 INFO    ] ================================================
[2026-06-12 19:09:17,880.880 INFO    ] Launching Daemon at Fri Jun 12 19:09:17 IST 2026
[2026-06-12 19:09:17,891.891 INFO    ] ================================================
[2026-06-12 19:09:18,269.269 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 19:09:18
[2026-06-12 19:09:18,590.590 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 19:09:18,721.721 INFO    ] Initializing speech engine...
[2026-06-12 19:09:18,729.729 INFO    ] 2026-06-12 19:09:18
[2026-06-12 19:09:18,944.944 INFO    ] 2026-06-12 19:09:18
[2026-06-12 19:09:18,973.973 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 19:09:19,158.158 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 19:09:19,162.162 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 19:09:19,317.317 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 19:09:19,372.372 INFO    ] time= 12/06/2026 19:09:19
[2026-06-12 19:09:19,394.394 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 19:09:19,401.401 INFO    ] Checking for existing commands in stream...
[2026-06-12 19:09:19,466.466 INFO    ] No existing commands found in stream
[2026-06-12 19:09:24,471.471 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 19:09:24,473.473 INFO    ] Waiting 3.64 seconds before fallback handling...
[2026-06-12 19:09:28,488.488 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 19:09:28,489.489 INFO    ] Checking for system updates...
[2026-06-12 19:09:28,510.510 INFO    ] 200
[2026-06-12 19:09:28,511.511 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:09:28,541.541 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 19:09:28,543.543 INFO    ] No update needed
[2026-06-12 19:09:28,544.544 INFO    ] Checking for camera pi updates...
[2026-06-12 19:09:28,564.564 INFO    ] 200
[2026-06-12 19:09:28,566.566 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:09:28,590.590 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 19:09:28,634.634 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 19:09:28,636.636 INFO    ] No camera update needed
[2026-06-12 19:09:28,637.637 INFO    ] Script finished. Safe exiting...
[2026-06-12 19:09:28,638.638 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 19:09:28,641.641 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 19:09:28,644.644 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 19:09:30,681.681 INFO    ] ================================================
[2026-06-12 19:09:30,696.696 INFO    ] Launching Daemon at Fri Jun 12 19:09:30 IST 2026
[2026-06-12 19:09:30,707.707 INFO    ] ================================================
[2026-06-12 19:09:31,039.039 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 19:09:31
[2026-06-12 19:09:31,354.354 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 19:09:31,483.483 INFO    ] Initializing speech engine...
[2026-06-12 19:09:31,488.488 INFO    ] 2026-06-12 19:09:31
[2026-06-12 19:09:31,693.693 INFO    ] 2026-06-12 19:09:31
[2026-06-12 19:09:31,742.742 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 19:09:31,902.902 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 19:09:31,957.957 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 19:09:32,167.167 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 19:09:32,208.208 INFO    ] time= 12/06/2026 19:09:32
[2026-06-12 19:09:32,226.226 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 19:09:32,228.228 INFO    ] Checking for existing commands in stream...
[2026-06-12 19:09:32,300.300 INFO    ] No existing commands found in stream
[2026-06-12 19:09:37,311.311 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 19:09:37,314.314 INFO    ] Waiting 1.36 seconds before fallback handling...
[2026-06-12 19:09:39,053.053 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 19:09:39,054.054 INFO    ] Checking for system updates...
[2026-06-12 19:09:39,075.075 INFO    ] 200
[2026-06-12 19:09:39,076.076 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:09:39,108.108 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 19:09:39,109.109 INFO    ] No update needed
[2026-06-12 19:09:39,111.111 INFO    ] Checking for camera pi updates...
[2026-06-12 19:09:39,130.130 INFO    ] 200
[2026-06-12 19:09:39,131.131 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:09:39,156.156 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 19:09:39,214.214 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 19:09:39,215.215 INFO    ] No camera update needed
[2026-06-12 19:09:39,216.216 INFO    ] Script finished. Safe exiting...
[2026-06-12 19:09:39,217.217 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 19:09:39,220.220 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 19:09:39,224.224 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 19:09:41,262.262 INFO    ] ================================================
[2026-06-12 19:09:41,277.277 INFO    ] Launching Daemon at Fri Jun 12 19:09:41 IST 2026
[2026-06-12 19:09:41,288.288 INFO    ] ================================================
[2026-06-12 19:09:41,649.649 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 19:09:41
[2026-06-12 19:09:41,960.960 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 19:09:42,089.089 INFO    ] Initializing speech engine...
[2026-06-12 19:09:42,093.093 INFO    ] 2026-06-12 19:09:42
[2026-06-12 19:09:42,314.314 INFO    ] 2026-06-12 19:09:42
[2026-06-12 19:09:42,342.342 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 19:09:42,554.554 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 19:09:42,559.559 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 19:09:42,701.701 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 19:09:42,740.740 INFO    ] time= 12/06/2026 19:09:42
[2026-06-12 19:09:42,763.763 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 19:09:42,768.768 INFO    ] Checking for existing commands in stream...
[2026-06-12 19:09:42,837.837 INFO    ] No existing commands found in stream
[2026-06-12 19:09:47,851.851 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 19:09:47,853.853 INFO    ] Waiting 1.18 seconds before fallback handling...
[2026-06-12 19:09:49,393.393 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 19:09:49,395.395 INFO    ] Checking for system updates...
[2026-06-12 19:09:49,422.422 INFO    ] 200
[2026-06-12 19:09:49,424.424 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:09:49,454.454 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 19:09:49,455.455 INFO    ] No update needed
[2026-06-12 19:09:49,456.456 INFO    ] Checking for camera pi updates...
[2026-06-12 19:09:49,475.475 INFO    ] 200
[2026-06-12 19:09:49,477.477 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:09:49,500.500 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 19:09:49,550.550 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 19:09:49,552.552 INFO    ] No camera update needed
[2026-06-12 19:09:49,553.553 INFO    ] Script finished. Safe exiting...
[2026-06-12 19:09:49,554.554 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 19:09:49,557.557 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 19:09:49,560.560 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 19:09:51,597.597 INFO    ] ================================================
[2026-06-12 19:09:51,613.613 INFO    ] Launching Daemon at Fri Jun 12 19:09:51 IST 2026
[2026-06-12 19:09:51,623.623 INFO    ] ================================================
[2026-06-12 19:09:51,963.963 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 19:09:51
[2026-06-12 19:09:52,275.275 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 19:09:52,406.406 INFO    ] Initializing speech engine...
[2026-06-12 19:09:52,409.409 INFO    ] 2026-06-12 19:09:52
[2026-06-12 19:09:52,632.632 INFO    ] 2026-06-12 19:09:52
[2026-06-12 19:09:52,661.661 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 19:09:52,784.784 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 19:09:52,847.847 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 19:09:52,989.989 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 19:09:53,056.056 INFO    ] time= 12/06/2026 19:09:53
[2026-06-12 19:09:53,080.080 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 19:09:53,086.086 INFO    ] Checking for existing commands in stream...
[2026-06-12 19:09:53,154.154 INFO    ] No existing commands found in stream
[2026-06-12 19:09:58,163.163 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 19:09:58,166.166 INFO    ] Waiting 1.83 seconds before fallback handling...
[2026-06-12 19:10:00,347.347 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 19:10:00,348.348 INFO    ] Checking for system updates...
[2026-06-12 19:10:00,369.369 INFO    ] 200
[2026-06-12 19:10:00,371.371 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:10:00,400.400 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 19:10:00,401.401 INFO    ] No update needed
[2026-06-12 19:10:00,403.403 INFO    ] Checking for camera pi updates...
[2026-06-12 19:10:00,422.422 INFO    ] 200
[2026-06-12 19:10:00,423.423 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:10:00,448.448 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 19:10:00,494.494 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 19:10:00,495.495 INFO    ] No camera update needed
[2026-06-12 19:10:00,497.497 INFO    ] Script finished. Safe exiting...
[2026-06-12 19:10:00,498.498 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 19:10:00,501.501 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 19:10:00,504.504 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 19:10:02,539.539 INFO    ] ================================================
[2026-06-12 19:10:02,559.559 INFO    ] Launching Daemon at Fri Jun 12 19:10:02 IST 2026
[2026-06-12 19:10:02,571.571 INFO    ] ================================================
[2026-06-12 19:10:02,993.993 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 19:10:02
[2026-06-12 19:10:03,347.347 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 19:10:03,497.497 INFO    ] Initializing speech engine...
[2026-06-12 19:10:03,502.502 INFO    ] 2026-06-12 19:10:03
[2026-06-12 19:10:03,711.711 INFO    ] 2026-06-12 19:10:03
[2026-06-12 19:10:03,740.740 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 19:10:03,873.873 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 19:10:03,926.926 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 19:10:04,069.069 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 19:10:04,132.132 INFO    ] time= 12/06/2026 19:10:04
[2026-06-12 19:10:04,156.156 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 19:10:04,162.162 INFO    ] Checking for existing commands in stream...
[2026-06-12 19:10:04,228.228 INFO    ] No existing commands found in stream
[2026-06-12 19:10:09,239.239 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 19:10:09,243.243 INFO    ] Waiting 0.54 seconds before fallback handling...
[2026-06-12 19:10:10,120.120 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 19:10:10,122.122 INFO    ] Checking for system updates...
[2026-06-12 19:10:10,144.144 INFO    ] 200
[2026-06-12 19:10:10,145.145 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:10:10,178.178 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 19:10:10,180.180 INFO    ] No update needed
[2026-06-12 19:10:10,181.181 INFO    ] Checking for camera pi updates...
[2026-06-12 19:10:10,211.211 INFO    ] 200
[2026-06-12 19:10:10,213.213 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:10:10,237.237 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 19:10:10,284.284 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 19:10:10,285.285 INFO    ] No camera update needed
[2026-06-12 19:10:10,287.287 INFO    ] Script finished. Safe exiting...
[2026-06-12 19:10:10,288.288 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 19:10:10,292.292 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 19:10:10,295.295 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 19:10:12,332.332 INFO    ] ================================================
[2026-06-12 19:10:12,347.347 INFO    ] Launching Daemon at Fri Jun 12 19:10:12 IST 2026
[2026-06-12 19:10:12,358.358 INFO    ] ================================================
[2026-06-12 19:10:12,736.736 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 19:10:12
[2026-06-12 19:10:13,075.075 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 19:10:13,227.227 INFO    ] Initializing speech engine...
[2026-06-12 19:10:13,232.232 INFO    ] 2026-06-12 19:10:13
[2026-06-12 19:10:13,444.444 INFO    ] 2026-06-12 19:10:13
[2026-06-12 19:10:13,474.474 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 19:10:13,596.596 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 19:10:13,660.660 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 19:10:13,865.865 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 19:10:13,889.889 INFO    ] time= 12/06/2026 19:10:13
[2026-06-12 19:10:13,896.896 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 19:10:13,897.897 INFO    ] Checking for existing commands in stream...
[2026-06-12 19:10:13,964.964 INFO    ] No existing commands found in stream
[2026-06-12 19:10:18,979.979 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 19:10:18,982.982 INFO    ] Waiting 0.05 seconds before fallback handling...
[2026-06-12 19:10:19,401.401 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 19:10:19,402.402 INFO    ] Checking for system updates...
[2026-06-12 19:10:19,423.423 INFO    ] 200
[2026-06-12 19:10:19,425.425 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:10:19,469.469 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 19:10:19,470.470 INFO    ] No update needed
[2026-06-12 19:10:19,472.472 INFO    ] Checking for camera pi updates...
[2026-06-12 19:10:19,494.494 INFO    ] 200
[2026-06-12 19:10:19,495.495 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:10:19,518.518 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 19:10:19,654.654 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 19:10:19,655.655 INFO    ] No camera update needed
[2026-06-12 19:10:19,657.657 INFO    ] Script finished. Safe exiting...
[2026-06-12 19:10:19,658.658 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 19:10:19,661.661 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 19:10:19,664.664 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 19:10:21,703.703 INFO    ] ================================================
[2026-06-12 19:10:21,718.718 INFO    ] Launching Daemon at Fri Jun 12 19:10:21 IST 2026
[2026-06-12 19:10:21,729.729 INFO    ] ================================================
[2026-06-12 19:10:22,088.088 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 19:10:22
[2026-06-12 19:10:22,407.407 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 19:10:22,551.551 INFO    ] Initializing speech engine...
[2026-06-12 19:10:22,556.556 INFO    ] 2026-06-12 19:10:22
[2026-06-12 19:10:22,760.760 INFO    ] 2026-06-12 19:10:22
[2026-06-12 19:10:22,789.789 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 19:10:22,975.975 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 19:10:22,986.986 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 19:10:23,134.134 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 19:10:23,181.181 INFO    ] time= 12/06/2026 19:10:23
[2026-06-12 19:10:23,205.205 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 19:10:23,210.210 INFO    ] Checking for existing commands in stream...
[2026-06-12 19:10:23,278.278 INFO    ] No existing commands found in stream
[2026-06-12 19:10:28,292.292 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 19:10:28,295.295 INFO    ] Waiting 3.65 seconds before fallback handling...
[2026-06-12 19:10:32,324.324 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 19:10:32,326.326 INFO    ] Checking for system updates...
[2026-06-12 19:10:32,350.350 INFO    ] 200
[2026-06-12 19:10:32,352.352 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:10:32,388.388 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 19:10:32,390.390 INFO    ] No update needed
[2026-06-12 19:10:32,392.392 INFO    ] Checking for camera pi updates...
[2026-06-12 19:10:32,413.413 INFO    ] 200
[2026-06-12 19:10:32,414.414 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:10:32,439.439 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 19:10:32,472.472 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 19:10:32,473.473 INFO    ] No camera update needed
[2026-06-12 19:10:32,475.475 INFO    ] Script finished. Safe exiting...
[2026-06-12 19:10:32,477.477 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 19:10:32,480.480 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 19:10:32,484.484 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 19:10:34,524.524 INFO    ] ================================================
[2026-06-12 19:10:34,539.539 INFO    ] Launching Daemon at Fri Jun 12 19:10:34 IST 2026
[2026-06-12 19:10:34,550.550 INFO    ] ================================================
[2026-06-12 19:10:34,916.916 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 19:10:34
[2026-06-12 19:10:35,257.257 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 19:10:35,412.412 INFO    ] Initializing speech engine...
[2026-06-12 19:10:35,416.416 INFO    ] 2026-06-12 19:10:35
[2026-06-12 19:10:35,626.626 INFO    ] 2026-06-12 19:10:35
[2026-06-12 19:10:35,655.655 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 19:10:35,840.840 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 19:10:35,844.844 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 19:10:35,981.981 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 19:10:36,049.049 INFO    ] time= 12/06/2026 19:10:35
[2026-06-12 19:10:36,073.073 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 19:10:36,080.080 INFO    ] Checking for existing commands in stream...
[2026-06-12 19:10:36,147.147 INFO    ] No existing commands found in stream
[2026-06-12 19:10:41,162.162 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 19:10:41,165.165 INFO    ] Waiting 2.00 seconds before fallback handling...
[2026-06-12 19:10:43,542.542 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 19:10:43,544.544 INFO    ] Checking for system updates...
[2026-06-12 19:10:43,565.565 INFO    ] 200
[2026-06-12 19:10:43,566.566 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:10:43,601.601 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 19:10:43,602.602 INFO    ] No update needed
[2026-06-12 19:10:43,603.603 INFO    ] Checking for camera pi updates...
[2026-06-12 19:10:43,622.622 INFO    ] 200
[2026-06-12 19:10:43,623.623 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:10:43,646.646 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 19:10:43,694.694 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 19:10:43,695.695 INFO    ] No camera update needed
[2026-06-12 19:10:43,696.696 INFO    ] Script finished. Safe exiting...
[2026-06-12 19:10:43,697.697 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 19:10:43,700.700 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 19:10:43,703.703 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 19:10:45,740.740 INFO    ] ================================================
[2026-06-12 19:10:45,755.755 INFO    ] Launching Daemon at Fri Jun 12 19:10:45 IST 2026
[2026-06-12 19:10:45,766.766 INFO    ] ================================================
[2026-06-12 19:10:46,095.095 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 19:10:46
[2026-06-12 19:10:46,411.411 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 19:10:46,544.544 INFO    ] Initializing speech engine...
[2026-06-12 19:10:46,558.558 INFO    ] 2026-06-12 19:10:46
[2026-06-12 19:10:46,762.762 INFO    ] 2026-06-12 19:10:46
[2026-06-12 19:10:46,791.791 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 19:10:46,976.976 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 19:10:46,985.985 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 19:10:47,114.114 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 19:10:47,168.168 INFO    ] time= 12/06/2026 19:10:47
[2026-06-12 19:10:47,205.205 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 19:10:47,207.207 INFO    ] Checking for existing commands in stream...
[2026-06-12 19:10:47,279.279 INFO    ] No existing commands found in stream
[2026-06-12 19:10:52,288.288 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 19:10:52,291.291 INFO    ] Waiting 2.94 seconds before fallback handling...
[2026-06-12 19:10:55,610.610 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 19:10:55,612.612 INFO    ] Checking for system updates...
[2026-06-12 19:10:55,632.632 INFO    ] 200
[2026-06-12 19:10:55,634.634 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:10:55,663.663 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 19:10:55,665.665 INFO    ] No update needed
[2026-06-12 19:10:55,666.666 INFO    ] Checking for camera pi updates...
[2026-06-12 19:10:55,686.686 INFO    ] 200
[2026-06-12 19:10:55,688.688 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:10:55,711.711 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 19:10:55,753.753 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 19:10:55,754.754 INFO    ] No camera update needed
[2026-06-12 19:10:55,755.755 INFO    ] Script finished. Safe exiting...
[2026-06-12 19:10:55,757.757 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 19:10:55,760.760 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 19:10:55,763.763 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 19:10:57,805.805 INFO    ] ================================================
[2026-06-12 19:10:57,820.820 INFO    ] Launching Daemon at Fri Jun 12 19:10:57 IST 2026
[2026-06-12 19:10:57,831.831 INFO    ] ================================================
[2026-06-12 19:10:58,187.187 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 19:10:58
[2026-06-12 19:10:58,503.503 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 19:10:58,635.635 INFO    ] Initializing speech engine...
[2026-06-12 19:10:58,639.639 INFO    ] 2026-06-12 19:10:58
[2026-06-12 19:10:58,842.842 INFO    ] 2026-06-12 19:10:58
[2026-06-12 19:10:58,876.876 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 19:10:59,033.033 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 19:10:59,091.091 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 19:10:59,220.220 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 19:10:59,241.241 INFO    ] time= 12/06/2026 19:10:59
[2026-06-12 19:10:59,298.298 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 19:10:59,315.315 INFO    ] Checking for existing commands in stream...
[2026-06-12 19:10:59,408.408 INFO    ] No existing commands found in stream
[2026-06-12 19:11:04,418.418 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 19:11:04,421.421 INFO    ] Waiting 2.46 seconds before fallback handling...
[2026-06-12 19:11:07,252.252 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 19:11:07,254.254 INFO    ] Checking for system updates...
[2026-06-12 19:11:07,274.274 INFO    ] 200
[2026-06-12 19:11:07,275.275 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:11:07,307.307 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 19:11:07,309.309 INFO    ] No update needed
[2026-06-12 19:11:07,310.310 INFO    ] Checking for camera pi updates...
[2026-06-12 19:11:07,329.329 INFO    ] 200
[2026-06-12 19:11:07,330.330 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:11:07,355.355 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 19:11:07,402.402 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 19:11:07,404.404 INFO    ] No camera update needed
[2026-06-12 19:11:07,405.405 INFO    ] Script finished. Safe exiting...
[2026-06-12 19:11:07,406.406 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 19:11:07,409.409 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 19:11:07,412.412 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 19:11:09,449.449 INFO    ] ================================================
[2026-06-12 19:11:09,464.464 INFO    ] Launching Daemon at Fri Jun 12 19:11:09 IST 2026
[2026-06-12 19:11:09,474.474 INFO    ] ================================================
[2026-06-12 19:11:09,838.838 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 19:11:09
[2026-06-12 19:11:10,155.155 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 19:11:10,293.293 INFO    ] Initializing speech engine...
[2026-06-12 19:11:10,302.302 INFO    ] 2026-06-12 19:11:10
[2026-06-12 19:11:10,506.506 INFO    ] 2026-06-12 19:11:10
[2026-06-12 19:11:10,535.535 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 19:11:10,718.718 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 19:11:10,729.729 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 19:11:10,878.878 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 19:11:10,927.927 INFO    ] time= 12/06/2026 19:11:10
[2026-06-12 19:11:10,949.949 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 19:11:10,955.955 INFO    ] Checking for existing commands in stream...
[2026-06-12 19:11:11,021.021 INFO    ] No existing commands found in stream
[2026-06-12 19:11:16,045.045 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 19:11:16,048.048 INFO    ] Waiting 1.09 seconds before fallback handling...
[2026-06-12 19:11:17,546.546 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 19:11:17,547.547 INFO    ] Checking for system updates...
[2026-06-12 19:11:17,568.568 INFO    ] 200
[2026-06-12 19:11:17,569.569 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:11:17,599.599 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 19:11:17,601.601 INFO    ] No update needed
[2026-06-12 19:11:17,602.602 INFO    ] Checking for camera pi updates...
[2026-06-12 19:11:17,622.622 INFO    ] 200
[2026-06-12 19:11:17,624.624 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:11:17,646.646 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 19:11:17,697.697 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 19:11:17,699.699 INFO    ] No camera update needed
[2026-06-12 19:11:17,700.700 INFO    ] Script finished. Safe exiting...
[2026-06-12 19:11:17,701.701 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 19:11:17,704.704 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 19:11:17,707.707 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 19:11:19,744.744 INFO    ] ================================================
[2026-06-12 19:11:19,759.759 INFO    ] Launching Daemon at Fri Jun 12 19:11:19 IST 2026
[2026-06-12 19:11:19,770.770 INFO    ] ================================================
[2026-06-12 19:11:20,129.129 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 19:11:20
[2026-06-12 19:11:20,464.464 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 19:11:20,618.618 INFO    ] Initializing speech engine...
[2026-06-12 19:11:20,625.625 INFO    ] 2026-06-12 19:11:20
[2026-06-12 19:11:20,825.825 INFO    ] 2026-06-12 19:11:20
[2026-06-12 19:11:20,855.855 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 19:11:21,038.038 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 19:11:21,048.048 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 19:11:21,214.214 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 19:11:21,252.252 INFO    ] time= 12/06/2026 19:11:21
[2026-06-12 19:11:21,268.268 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 19:11:21,274.274 INFO    ] Checking for existing commands in stream...
[2026-06-12 19:11:21,341.341 INFO    ] No existing commands found in stream
[2026-06-12 19:11:26,361.361 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 19:11:26,364.364 INFO    ] Waiting 1.23 seconds before fallback handling...
[2026-06-12 19:11:27,936.936 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 19:11:27,938.938 INFO    ] Checking for system updates...
[2026-06-12 19:11:27,960.960 INFO    ] 200
[2026-06-12 19:11:27,961.961 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:11:27,990.990 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 19:11:27,992.992 INFO    ] No update needed
[2026-06-12 19:11:27,996.996 INFO    ] Checking for camera pi updates...
[2026-06-12 19:11:28,015.015 INFO    ] 200
[2026-06-12 19:11:28,016.016 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:11:28,043.043 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 19:11:28,091.091 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 19:11:28,092.092 INFO    ] No camera update needed
[2026-06-12 19:11:28,094.094 INFO    ] Script finished. Safe exiting...
[2026-06-12 19:11:28,095.095 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 19:11:28,098.098 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 19:11:28,101.101 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 19:11:30,139.139 INFO    ] ================================================
[2026-06-12 19:11:30,154.154 INFO    ] Launching Daemon at Fri Jun 12 19:11:30 IST 2026
[2026-06-12 19:11:30,164.164 INFO    ] ================================================
[2026-06-12 19:11:30,548.548 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 19:11:30
[2026-06-12 19:11:30,867.867 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 19:11:31,011.011 INFO    ] Initializing speech engine...
[2026-06-12 19:11:31,017.017 INFO    ] 2026-06-12 19:11:31
[2026-06-12 19:11:31,221.221 INFO    ] 2026-06-12 19:11:31
[2026-06-12 19:11:31,248.248 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 19:11:31,447.447 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 19:11:31,460.460 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 19:11:31,643.643 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 19:11:31,691.691 INFO    ] time= 12/06/2026 19:11:31
[2026-06-12 19:11:31,699.699 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 19:11:31,701.701 INFO    ] Checking for existing commands in stream...
[2026-06-12 19:11:31,770.770 INFO    ] No existing commands found in stream
[2026-06-12 19:11:36,800.800 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 19:11:36,803.803 INFO    ] Waiting 0.06 seconds before fallback handling...
[2026-06-12 19:11:37,233.233 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 19:11:37,234.234 INFO    ] Checking for system updates...
[2026-06-12 19:11:37,254.254 INFO    ] 200
[2026-06-12 19:11:37,256.256 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:11:37,285.285 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 19:11:37,287.287 INFO    ] No update needed
[2026-06-12 19:11:37,288.288 INFO    ] Checking for camera pi updates...
[2026-06-12 19:11:37,308.308 INFO    ] 200
[2026-06-12 19:11:37,310.310 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:11:37,333.333 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 19:11:37,373.373 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 19:11:37,374.374 INFO    ] No camera update needed
[2026-06-12 19:11:37,375.375 INFO    ] Script finished. Safe exiting...
[2026-06-12 19:11:37,377.377 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 19:11:37,380.380 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 19:11:37,383.383 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 19:11:39,420.420 INFO    ] ================================================
[2026-06-12 19:11:39,434.434 INFO    ] Launching Daemon at Fri Jun 12 19:11:39 IST 2026
[2026-06-12 19:11:39,445.445 INFO    ] ================================================
[2026-06-12 19:11:39,798.798 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 19:11:39
[2026-06-12 19:11:40,135.135 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 19:11:40,287.287 INFO    ] Initializing speech engine...
[2026-06-12 19:11:40,292.292 INFO    ] 2026-06-12 19:11:40
[2026-06-12 19:11:40,497.497 INFO    ] 2026-06-12 19:11:40
[2026-06-12 19:11:40,526.526 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 19:11:40,710.710 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 19:11:40,719.719 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 19:11:40,849.849 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 19:11:40,908.908 INFO    ] time= 12/06/2026 19:11:40
[2026-06-12 19:11:40,940.940 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 19:11:40,942.942 INFO    ] Checking for existing commands in stream...
[2026-06-12 19:11:41,037.037 INFO    ] No existing commands found in stream
[2026-06-12 19:11:46,051.051 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 19:11:46,054.054 INFO    ] Waiting 0.65 seconds before fallback handling...
[2026-06-12 19:11:47,097.097 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 19:11:47,099.099 INFO    ] Checking for system updates...
[2026-06-12 19:11:47,119.119 INFO    ] 200
[2026-06-12 19:11:47,121.121 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:11:47,151.151 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 19:11:47,152.152 INFO    ] No update needed
[2026-06-12 19:11:47,153.153 INFO    ] Checking for camera pi updates...
[2026-06-12 19:11:47,174.174 INFO    ] 200
[2026-06-12 19:11:47,175.175 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:11:47,202.202 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 19:11:47,248.248 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 19:11:47,250.250 INFO    ] No camera update needed
[2026-06-12 19:11:47,251.251 INFO    ] Script finished. Safe exiting...
[2026-06-12 19:11:47,253.253 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 19:11:47,256.256 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 19:11:47,259.259 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 19:11:49,297.297 INFO    ] ================================================
[2026-06-12 19:11:49,312.312 INFO    ] Launching Daemon at Fri Jun 12 19:11:49 IST 2026
[2026-06-12 19:11:49,324.324 INFO    ] ================================================
[2026-06-12 19:11:49,683.683 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 19:11:49
[2026-06-12 19:11:49,994.994 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 19:11:50,124.124 INFO    ] Initializing speech engine...
[2026-06-12 19:11:50,127.127 INFO    ] 2026-06-12 19:11:50
[2026-06-12 19:11:50,342.342 INFO    ] 2026-06-12 19:11:50
[2026-06-12 19:11:50,370.370 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 19:11:50,585.585 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 19:11:50,588.588 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 19:11:50,726.726 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 19:11:50,778.778 INFO    ] time= 12/06/2026 19:11:50
[2026-06-12 19:11:50,827.827 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 19:11:50,833.833 INFO    ] Checking for existing commands in stream...
[2026-06-12 19:11:50,906.906 INFO    ] No existing commands found in stream
[2026-06-12 19:11:55,916.916 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 19:11:55,919.919 INFO    ] Waiting 3.64 seconds before fallback handling...
[2026-06-12 19:11:59,911.911 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 19:11:59,912.912 INFO    ] Checking for system updates...
[2026-06-12 19:11:59,933.933 INFO    ] 200
[2026-06-12 19:11:59,935.935 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:11:59,966.966 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 19:11:59,968.968 INFO    ] No update needed
[2026-06-12 19:11:59,969.969 INFO    ] Checking for camera pi updates...
[2026-06-12 19:11:59,988.988 INFO    ] 200
[2026-06-12 19:11:59,989.989 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:12:00,012.012 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 19:12:00,054.054 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 19:12:00,055.055 INFO    ] No camera update needed
[2026-06-12 19:12:00,056.056 INFO    ] Script finished. Safe exiting...
[2026-06-12 19:12:00,057.057 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 19:12:00,060.060 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 19:12:00,063.063 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 19:12:02,096.096 INFO    ] ================================================
[2026-06-12 19:12:02,108.108 INFO    ] Launching Daemon at Fri Jun 12 19:12:02 IST 2026
[2026-06-12 19:12:02,117.117 INFO    ] ================================================
[2026-06-12 19:12:02,476.476 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 19:12:02
[2026-06-12 19:12:02,829.829 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 19:12:02,982.982 INFO    ] Initializing speech engine...
[2026-06-12 19:12:02,987.987 INFO    ] 2026-06-12 19:12:02
[2026-06-12 19:12:03,194.194 INFO    ] 2026-06-12 19:12:03
[2026-06-12 19:12:03,223.223 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 19:12:03,405.405 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 19:12:03,415.415 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 19:12:03,559.559 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 19:12:03,610.610 INFO    ] time= 12/06/2026 19:12:03
[2026-06-12 19:12:03,634.634 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 19:12:03,641.641 INFO    ] Checking for existing commands in stream...
[2026-06-12 19:12:03,707.707 INFO    ] No existing commands found in stream
[2026-06-12 19:12:08,721.721 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 19:12:08,724.724 INFO    ] Waiting 0.23 seconds before fallback handling...
[2026-06-12 19:12:09,336.336 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 19:12:09,338.338 INFO    ] Checking for system updates...
[2026-06-12 19:12:09,359.359 INFO    ] 200
[2026-06-12 19:12:09,360.360 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:12:09,392.392 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 19:12:09,394.394 INFO    ] No update needed
[2026-06-12 19:12:09,396.396 INFO    ] Checking for camera pi updates...
[2026-06-12 19:12:09,415.415 INFO    ] 200
[2026-06-12 19:12:09,417.417 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:12:09,441.441 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 19:12:09,492.492 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 19:12:09,494.494 INFO    ] No camera update needed
[2026-06-12 19:12:09,495.495 INFO    ] Script finished. Safe exiting...
[2026-06-12 19:12:09,497.497 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 19:12:09,500.500 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 19:12:09,503.503 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 19:12:11,541.541 INFO    ] ================================================
[2026-06-12 19:12:11,557.557 INFO    ] Launching Daemon at Fri Jun 12 19:12:11 IST 2026
[2026-06-12 19:12:11,568.568 INFO    ] ================================================
[2026-06-12 19:12:11,921.921 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 19:12:11
[2026-06-12 19:12:12,232.232 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 19:12:12,363.363 INFO    ] Initializing speech engine...
[2026-06-12 19:12:12,371.371 INFO    ] 2026-06-12 19:12:12
[2026-06-12 19:12:12,585.585 INFO    ] 2026-06-12 19:12:12
[2026-06-12 19:12:12,612.612 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 19:12:12,795.795 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 19:12:12,798.798 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 19:12:12,933.933 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 19:12:12,987.987 INFO    ] time= 12/06/2026 19:12:12
[2026-06-12 19:12:13,024.024 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 19:12:13,031.031 INFO    ] Checking for existing commands in stream...
[2026-06-12 19:12:13,097.097 INFO    ] No existing commands found in stream
[2026-06-12 19:12:18,106.106 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 19:12:18,108.108 INFO    ] Waiting 1.13 seconds before fallback handling...
[2026-06-12 19:12:19,646.646 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 19:12:19,647.647 INFO    ] Checking for system updates...
[2026-06-12 19:12:19,668.668 INFO    ] 200
[2026-06-12 19:12:19,670.670 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:12:19,699.699 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 19:12:19,701.701 INFO    ] No update needed
[2026-06-12 19:12:19,702.702 INFO    ] Checking for camera pi updates...
[2026-06-12 19:12:19,722.722 INFO    ] 200
[2026-06-12 19:12:19,723.723 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:12:19,748.748 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 19:12:19,774.774 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 19:12:19,775.775 INFO    ] No camera update needed
[2026-06-12 19:12:19,776.776 INFO    ] Script finished. Safe exiting...
[2026-06-12 19:12:19,777.777 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 19:12:19,780.780 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 19:12:19,783.783 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 19:12:21,813.813 INFO    ] ================================================
[2026-06-12 19:12:21,821.821 INFO    ] Launching Daemon at Fri Jun 12 19:12:21 IST 2026
[2026-06-12 19:12:21,827.827 INFO    ] ================================================
[2026-06-12 19:12:22,156.156 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 19:12:22
[2026-06-12 19:12:22,491.491 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 19:12:22,628.628 INFO    ] Initializing speech engine...
[2026-06-12 19:12:22,632.632 INFO    ] 2026-06-12 19:12:22
[2026-06-12 19:12:22,850.850 INFO    ] 2026-06-12 19:12:22
[2026-06-12 19:12:22,877.877 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 19:12:23,062.062 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 19:12:23,072.072 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 19:12:23,220.220 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 19:12:23,268.268 INFO    ] time= 12/06/2026 19:12:23
[2026-06-12 19:12:23,291.291 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 19:12:23,297.297 INFO    ] Checking for existing commands in stream...
[2026-06-12 19:12:23,387.387 INFO    ] No existing commands found in stream
[2026-06-12 19:12:28,401.401 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 19:12:28,404.404 INFO    ] Waiting 2.46 seconds before fallback handling...
[2026-06-12 19:12:31,221.221 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 19:12:31,222.222 INFO    ] Checking for system updates...
[2026-06-12 19:12:31,243.243 INFO    ] 200
[2026-06-12 19:12:31,244.244 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:12:31,278.278 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 19:12:31,279.279 INFO    ] No update needed
[2026-06-12 19:12:31,281.281 INFO    ] Checking for camera pi updates...
[2026-06-12 19:12:31,301.301 INFO    ] 200
[2026-06-12 19:12:31,302.302 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:12:31,325.325 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 19:12:31,459.459 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 19:12:31,460.460 INFO    ] No camera update needed
[2026-06-12 19:12:31,462.462 INFO    ] Script finished. Safe exiting...
[2026-06-12 19:12:31,463.463 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 19:12:31,466.466 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 19:12:31,469.469 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 19:12:33,502.502 INFO    ] ================================================
[2026-06-12 19:12:33,517.517 INFO    ] Launching Daemon at Fri Jun 12 19:12:33 IST 2026
[2026-06-12 19:12:33,530.530 INFO    ] ================================================
[2026-06-12 19:12:33,848.848 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 19:12:33
[2026-06-12 19:12:34,171.171 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 19:12:34,301.301 INFO    ] Initializing speech engine...
[2026-06-12 19:12:34,310.310 INFO    ] 2026-06-12 19:12:34
[2026-06-12 19:12:34,523.523 INFO    ] 2026-06-12 19:12:34
[2026-06-12 19:12:34,552.552 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 19:12:34,735.735 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 19:12:34,739.739 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 19:12:34,875.875 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 19:12:34,942.942 INFO    ] time= 12/06/2026 19:12:34
[2026-06-12 19:12:34,966.966 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 19:12:34,972.972 INFO    ] Checking for existing commands in stream...
[2026-06-12 19:12:35,039.039 INFO    ] No existing commands found in stream
[2026-06-12 19:12:40,048.048 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 19:12:40,051.051 INFO    ] Waiting 1.64 seconds before fallback handling...
[2026-06-12 19:12:42,050.050 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 19:12:42,052.052 INFO    ] Checking for system updates...
[2026-06-12 19:12:42,072.072 INFO    ] 200
[2026-06-12 19:12:42,074.074 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:12:42,104.104 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 19:12:42,106.106 INFO    ] No update needed
[2026-06-12 19:12:42,107.107 INFO    ] Checking for camera pi updates...
[2026-06-12 19:12:42,126.126 INFO    ] 200
[2026-06-12 19:12:42,128.128 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:12:42,151.151 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 19:12:42,192.192 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 19:12:42,194.194 INFO    ] No camera update needed
[2026-06-12 19:12:42,195.195 INFO    ] Script finished. Safe exiting...
[2026-06-12 19:12:42,196.196 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 19:12:42,200.200 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 19:12:42,203.203 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 19:12:44,240.240 INFO    ] ================================================
[2026-06-12 19:12:44,255.255 INFO    ] Launching Daemon at Fri Jun 12 19:12:44 IST 2026
[2026-06-12 19:12:44,266.266 INFO    ] ================================================
[2026-06-12 19:12:44,596.596 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 19:12:44
[2026-06-12 19:12:44,907.907 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 19:12:45,039.039 INFO    ] Initializing speech engine...
[2026-06-12 19:12:45,053.053 INFO    ] 2026-06-12 19:12:45
[2026-06-12 19:12:45,257.257 INFO    ] 2026-06-12 19:12:45
[2026-06-12 19:12:45,285.285 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 19:12:45,469.469 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 19:12:45,477.477 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 19:12:45,627.627 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 19:12:45,674.674 INFO    ] time= 12/06/2026 19:12:45
[2026-06-12 19:12:45,696.696 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 19:12:45,702.702 INFO    ] Checking for existing commands in stream...
[2026-06-12 19:12:45,768.768 INFO    ] No existing commands found in stream
[2026-06-12 19:12:50,777.777 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 19:12:50,780.780 INFO    ] Waiting 0.05 seconds before fallback handling...
[2026-06-12 19:12:51,171.171 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 19:12:51,173.173 INFO    ] Checking for system updates...
[2026-06-12 19:12:51,195.195 INFO    ] 200
[2026-06-12 19:12:51,196.196 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:12:51,228.228 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 19:12:51,229.229 INFO    ] No update needed
[2026-06-12 19:12:51,231.231 INFO    ] Checking for camera pi updates...
[2026-06-12 19:12:51,250.250 INFO    ] 200
[2026-06-12 19:12:51,251.251 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:12:51,277.277 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 19:12:51,323.323 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 19:12:51,325.325 INFO    ] No camera update needed
[2026-06-12 19:12:51,326.326 INFO    ] Script finished. Safe exiting...
[2026-06-12 19:12:51,327.327 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 19:12:51,330.330 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 19:12:51,333.333 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 19:12:53,370.370 INFO    ] ================================================
[2026-06-12 19:12:53,386.386 INFO    ] Launching Daemon at Fri Jun 12 19:12:53 IST 2026
[2026-06-12 19:12:53,396.396 INFO    ] ================================================
[2026-06-12 19:12:53,731.731 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 19:12:53
[2026-06-12 19:12:54,042.042 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 19:12:54,174.174 INFO    ] Initializing speech engine...
[2026-06-12 19:12:54,179.179 INFO    ] 2026-06-12 19:12:54
[2026-06-12 19:12:54,408.408 INFO    ] 2026-06-12 19:12:54
[2026-06-12 19:12:54,438.438 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 19:12:54,638.638 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 19:12:54,641.641 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 19:12:54,780.780 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 19:12:54,831.831 INFO    ] time= 12/06/2026 19:12:54
[2026-06-12 19:12:54,881.881 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 19:12:54,887.887 INFO    ] Checking for existing commands in stream...
[2026-06-12 19:12:54,963.963 INFO    ] No existing commands found in stream
[2026-06-12 19:12:59,972.972 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 19:12:59,975.975 INFO    ] Waiting 3.20 seconds before fallback handling...
[2026-06-12 19:13:03,526.526 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 19:13:03,529.529 INFO    ] Checking for system updates...
[2026-06-12 19:13:03,568.568 INFO    ] 200
[2026-06-12 19:13:03,570.570 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:13:03,629.629 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 19:13:03,632.632 INFO    ] No update needed
[2026-06-12 19:13:03,634.634 INFO    ] Checking for camera pi updates...
[2026-06-12 19:13:03,667.667 INFO    ] 200
[2026-06-12 19:13:03,670.670 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:13:03,697.697 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 19:13:03,740.740 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 19:13:03,741.741 INFO    ] No camera update needed
[2026-06-12 19:13:03,742.742 INFO    ] Script finished. Safe exiting...
[2026-06-12 19:13:03,743.743 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 19:13:03,746.746 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 19:13:03,749.749 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 19:13:05,787.787 INFO    ] ================================================
[2026-06-12 19:13:05,803.803 INFO    ] Launching Daemon at Fri Jun 12 19:13:05 IST 2026
[2026-06-12 19:13:05,814.814 INFO    ] ================================================
[2026-06-12 19:13:06,223.223 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 19:13:06
[2026-06-12 19:13:06,562.562 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 19:13:06,706.706 INFO    ] Initializing speech engine...
[2026-06-12 19:13:06,718.718 INFO    ] 2026-06-12 19:13:06
[2026-06-12 19:13:06,930.930 INFO    ] 2026-06-12 19:13:06
[2026-06-12 19:13:06,959.959 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 19:13:07,144.144 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 19:13:07,154.154 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 19:13:07,300.300 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 19:13:07,352.352 INFO    ] time= 12/06/2026 19:13:07
[2026-06-12 19:13:07,375.375 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 19:13:07,382.382 INFO    ] Checking for existing commands in stream...
[2026-06-12 19:13:07,449.449 INFO    ] No existing commands found in stream
[2026-06-12 19:13:12,463.463 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 19:13:12,466.466 INFO    ] Waiting 1.17 seconds before fallback handling...
[2026-06-12 19:13:14,021.021 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 19:13:14,022.022 INFO    ] Checking for system updates...
[2026-06-12 19:13:14,043.043 INFO    ] 200
[2026-06-12 19:13:14,044.044 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:13:14,074.074 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 19:13:14,076.076 INFO    ] No update needed
[2026-06-12 19:13:14,077.077 INFO    ] Checking for camera pi updates...
[2026-06-12 19:13:14,096.096 INFO    ] 200
[2026-06-12 19:13:14,098.098 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:13:14,121.121 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 19:13:14,169.169 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 19:13:14,171.171 INFO    ] No camera update needed
[2026-06-12 19:13:14,172.172 INFO    ] Script finished. Safe exiting...
[2026-06-12 19:13:14,174.174 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 19:13:14,177.177 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 19:13:14,180.180 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 19:13:16,218.218 INFO    ] ================================================
[2026-06-12 19:13:16,233.233 INFO    ] Launching Daemon at Fri Jun 12 19:13:16 IST 2026
[2026-06-12 19:13:16,244.244 INFO    ] ================================================
[2026-06-12 19:13:16,637.637 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 19:13:16
[2026-06-12 19:13:16,957.957 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 19:13:17,090.090 INFO    ] Initializing speech engine...
[2026-06-12 19:13:17,103.103 INFO    ] 2026-06-12 19:13:17
[2026-06-12 19:13:17,309.309 INFO    ] 2026-06-12 19:13:17
[2026-06-12 19:13:17,339.339 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 19:13:17,522.522 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 19:13:17,532.532 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 19:13:17,661.661 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 19:13:17,728.728 INFO    ] time= 12/06/2026 19:13:17
[2026-06-12 19:13:17,752.752 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 19:13:17,758.758 INFO    ] Checking for existing commands in stream...
[2026-06-12 19:13:17,827.827 INFO    ] No existing commands found in stream
[2026-06-12 19:13:22,852.852 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 19:13:22,856.856 INFO    ] Waiting 0.34 seconds before fallback handling...
[2026-06-12 19:13:23,620.620 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 19:13:23,621.621 INFO    ] Checking for system updates...
[2026-06-12 19:13:23,644.644 INFO    ] 200
[2026-06-12 19:13:23,645.645 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:13:23,680.680 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 19:13:23,682.682 INFO    ] No update needed
[2026-06-12 19:13:23,683.683 INFO    ] Checking for camera pi updates...
[2026-06-12 19:13:23,706.706 INFO    ] 200
[2026-06-12 19:13:23,708.708 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:13:23,735.735 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 19:13:23,790.790 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 19:13:23,791.791 INFO    ] No camera update needed
[2026-06-12 19:13:23,793.793 INFO    ] Script finished. Safe exiting...
[2026-06-12 19:13:23,794.794 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 19:13:23,797.797 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 19:13:23,801.801 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 19:13:25,840.840 INFO    ] ================================================
[2026-06-12 19:13:25,855.855 INFO    ] Launching Daemon at Fri Jun 12 19:13:25 IST 2026
[2026-06-12 19:13:25,866.866 INFO    ] ================================================
[2026-06-12 19:13:26,249.249 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 19:13:26
[2026-06-12 19:13:26,594.594 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 19:13:26,745.745 INFO    ] Initializing speech engine...
[2026-06-12 19:13:26,751.751 INFO    ] 2026-06-12 19:13:26
[2026-06-12 19:13:26,959.959 INFO    ] 2026-06-12 19:13:26
[2026-06-12 19:13:26,988.988 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 19:13:27,365.365 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 19:13:27,390.390 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 19:13:27,514.514 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 19:13:27,517.517 INFO    ] time= 12/06/2026 19:13:27
[2026-06-12 19:13:27,520.520 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 19:13:27,523.523 INFO    ] Checking for existing commands in stream...
[2026-06-12 19:13:27,590.590 INFO    ] No existing commands found in stream
[2026-06-12 19:13:32,600.600 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 19:13:32,601.601 INFO    ] Waiting 2.56 seconds before fallback handling...
[2026-06-12 19:13:35,563.563 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 19:13:35,564.564 INFO    ] Checking for system updates...
[2026-06-12 19:13:35,585.585 INFO    ] 200
[2026-06-12 19:13:35,587.587 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:13:35,619.619 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 19:13:35,621.621 INFO    ] No update needed
[2026-06-12 19:13:35,623.623 INFO    ] Checking for camera pi updates...
[2026-06-12 19:13:35,643.643 INFO    ] 200
[2026-06-12 19:13:35,645.645 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:13:35,670.670 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 19:13:35,746.746 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 19:13:35,747.747 INFO    ] No camera update needed
[2026-06-12 19:13:35,748.748 INFO    ] Script finished. Safe exiting...
[2026-06-12 19:13:35,750.750 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 19:13:35,753.753 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 19:13:35,756.756 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 19:13:37,794.794 INFO    ] ================================================
[2026-06-12 19:13:37,809.809 INFO    ] Launching Daemon at Fri Jun 12 19:13:37 IST 2026
[2026-06-12 19:13:37,821.821 INFO    ] ================================================
[2026-06-12 19:13:38,177.177 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 19:13:38
[2026-06-12 19:13:38,496.496 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 19:13:38,627.627 INFO    ] Initializing speech engine...
[2026-06-12 19:13:38,632.632 INFO    ] 2026-06-12 19:13:38
[2026-06-12 19:13:38,848.848 INFO    ] 2026-06-12 19:13:38
[2026-06-12 19:13:38,878.878 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 19:13:39,061.061 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 19:13:39,069.069 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 19:13:39,199.199 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 19:13:39,258.258 INFO    ] time= 12/06/2026 19:13:39
[2026-06-12 19:13:39,289.289 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 19:13:39,295.295 INFO    ] Checking for existing commands in stream...
[2026-06-12 19:13:39,361.361 INFO    ] No existing commands found in stream
[2026-06-12 19:13:44,371.371 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 19:13:44,373.373 INFO    ] Waiting 3.00 seconds before fallback handling...
[2026-06-12 19:13:47,843.843 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 19:13:47,844.844 INFO    ] Checking for system updates...
[2026-06-12 19:13:47,865.865 INFO    ] 200
[2026-06-12 19:13:47,866.866 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:13:47,896.896 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 19:13:47,898.898 INFO    ] No update needed
[2026-06-12 19:13:47,899.899 INFO    ] Checking for camera pi updates...
[2026-06-12 19:13:47,922.922 INFO    ] 200
[2026-06-12 19:13:47,923.923 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:13:47,953.953 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 19:13:48,003.003 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 19:13:48,005.005 INFO    ] No camera update needed
[2026-06-12 19:13:48,007.007 INFO    ] Script finished. Safe exiting...
[2026-06-12 19:13:48,008.008 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 19:13:48,011.011 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 19:13:48,014.014 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 19:13:50,052.052 INFO    ] ================================================
[2026-06-12 19:13:50,068.068 INFO    ] Launching Daemon at Fri Jun 12 19:13:50 IST 2026
[2026-06-12 19:13:50,078.078 INFO    ] ================================================
[2026-06-12 19:13:50,414.414 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 19:13:50
[2026-06-12 19:13:50,754.754 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 19:13:50,904.904 INFO    ] Initializing speech engine...
[2026-06-12 19:13:50,910.910 INFO    ] 2026-06-12 19:13:50
[2026-06-12 19:13:51,117.117 INFO    ] 2026-06-12 19:13:51
[2026-06-12 19:13:51,147.147 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 19:13:51,330.330 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 19:13:51,340.340 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 19:13:51,490.490 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 19:13:51,544.544 INFO    ] time= 12/06/2026 19:13:51
[2026-06-12 19:13:51,560.560 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 19:13:51,567.567 INFO    ] Checking for existing commands in stream...
[2026-06-12 19:13:51,656.656 INFO    ] No existing commands found in stream
[2026-06-12 19:13:56,671.671 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 19:13:56,674.674 INFO    ] Waiting 3.03 seconds before fallback handling...
[2026-06-12 19:14:01,127.127 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 19:14:01,129.129 INFO    ] Checking for system updates...
[2026-06-12 19:14:01,151.151 INFO    ] 200
[2026-06-12 19:14:01,153.153 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:14:01,186.186 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 19:14:01,188.188 INFO    ] No update needed
[2026-06-12 19:14:01,189.189 INFO    ] Checking for camera pi updates...
[2026-06-12 19:14:01,210.210 INFO    ] 200
[2026-06-12 19:14:01,212.212 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:14:01,236.236 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 19:14:01,271.271 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 19:14:01,272.272 INFO    ] No camera update needed
[2026-06-12 19:14:01,274.274 INFO    ] Script finished. Safe exiting...
[2026-06-12 19:14:01,275.275 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 19:14:01,278.278 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 19:14:01,281.281 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 19:14:03,306.306 INFO    ] ================================================
[2026-06-12 19:14:03,315.315 INFO    ] Launching Daemon at Fri Jun 12 19:14:03 IST 2026
[2026-06-12 19:14:03,321.321 INFO    ] ================================================
[2026-06-12 19:14:03,670.670 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 19:14:03
[2026-06-12 19:14:03,982.982 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 19:14:04,113.113 INFO    ] Initializing speech engine...
[2026-06-12 19:14:04,121.121 INFO    ] 2026-06-12 19:14:04
[2026-06-12 19:14:04,335.335 INFO    ] 2026-06-12 19:14:04
[2026-06-12 19:14:04,364.364 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 19:14:04,555.555 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 19:14:04,564.564 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 19:14:04,696.696 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 19:14:04,760.760 INFO    ] time= 12/06/2026 19:14:04
[2026-06-12 19:14:04,789.789 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 19:14:04,795.795 INFO    ] Checking for existing commands in stream...
[2026-06-12 19:14:04,863.863 INFO    ] No existing commands found in stream
[2026-06-12 19:14:09,877.877 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 19:14:09,880.880 INFO    ] Waiting 3.58 seconds before fallback handling...
[2026-06-12 19:14:13,895.895 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 19:14:13,896.896 INFO    ] Checking for system updates...
[2026-06-12 19:14:13,917.917 INFO    ] 200
[2026-06-12 19:14:13,918.918 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:14:13,948.948 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 19:14:13,949.949 INFO    ] No update needed
[2026-06-12 19:14:13,951.951 INFO    ] Checking for camera pi updates...
[2026-06-12 19:14:13,970.970 INFO    ] 200
[2026-06-12 19:14:13,971.971 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:14:13,994.994 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 19:14:14,037.037 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 19:14:14,039.039 INFO    ] No camera update needed
[2026-06-12 19:14:14,040.040 INFO    ] Script finished. Safe exiting...
[2026-06-12 19:14:14,041.041 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 19:14:14,044.044 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 19:14:14,047.047 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 19:14:16,087.087 INFO    ] ================================================
[2026-06-12 19:14:16,102.102 INFO    ] Launching Daemon at Fri Jun 12 19:14:16 IST 2026
[2026-06-12 19:14:16,113.113 INFO    ] ================================================
[2026-06-12 19:14:16,483.483 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 19:14:16
[2026-06-12 19:14:16,822.822 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 19:14:16,973.973 INFO    ] Initializing speech engine...
[2026-06-12 19:14:16,978.978 INFO    ] 2026-06-12 19:14:16
[2026-06-12 19:14:17,187.187 INFO    ] 2026-06-12 19:14:17
[2026-06-12 19:14:17,216.216 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 19:14:17,400.400 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 19:14:17,410.410 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 19:14:17,548.548 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 19:14:17,607.607 INFO    ] time= 12/06/2026 19:14:17
[2026-06-12 19:14:17,630.630 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 19:14:17,636.636 INFO    ] Checking for existing commands in stream...
[2026-06-12 19:14:17,703.703 INFO    ] No existing commands found in stream
[2026-06-12 19:14:22,713.713 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 19:14:22,716.716 INFO    ] Waiting 1.03 seconds before fallback handling...
[2026-06-12 19:14:24,131.131 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 19:14:24,132.132 INFO    ] Checking for system updates...
[2026-06-12 19:14:24,153.153 INFO    ] 200
[2026-06-12 19:14:24,154.154 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:14:24,184.184 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 19:14:24,186.186 INFO    ] No update needed
[2026-06-12 19:14:24,187.187 INFO    ] Checking for camera pi updates...
[2026-06-12 19:14:24,206.206 INFO    ] 200
[2026-06-12 19:14:24,208.208 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:14:24,231.231 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 19:14:24,276.276 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 19:14:24,278.278 INFO    ] No camera update needed
[2026-06-12 19:14:24,279.279 INFO    ] Script finished. Safe exiting...
[2026-06-12 19:14:24,281.281 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 19:14:24,284.284 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 19:14:24,287.287 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 19:14:26,327.327 INFO    ] ================================================
[2026-06-12 19:14:26,342.342 INFO    ] Launching Daemon at Fri Jun 12 19:14:26 IST 2026
[2026-06-12 19:14:26,353.353 INFO    ] ================================================
[2026-06-12 19:14:26,686.686 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 19:14:26
[2026-06-12 19:14:26,997.997 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 19:14:27,127.127 INFO    ] Initializing speech engine...
[2026-06-12 19:14:27,132.132 INFO    ] 2026-06-12 19:14:27
[2026-06-12 19:14:27,351.351 INFO    ] 2026-06-12 19:14:27
[2026-06-12 19:14:27,380.380 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 19:14:27,566.566 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 19:14:27,575.575 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 19:14:27,731.731 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 19:14:27,776.776 INFO    ] time= 12/06/2026 19:14:27
[2026-06-12 19:14:27,797.797 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 19:14:27,803.803 INFO    ] Checking for existing commands in stream...
[2026-06-12 19:14:27,868.868 INFO    ] No existing commands found in stream
[2026-06-12 19:14:32,877.877 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 19:14:32,879.879 INFO    ] Waiting 2.87 seconds before fallback handling...
[2026-06-12 19:14:36,150.150 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 19:14:36,152.152 INFO    ] Checking for system updates...
[2026-06-12 19:14:36,172.172 INFO    ] 200
[2026-06-12 19:14:36,173.173 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:14:36,203.203 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 19:14:36,204.204 INFO    ] No update needed
[2026-06-12 19:14:36,206.206 INFO    ] Checking for camera pi updates...
[2026-06-12 19:14:36,225.225 INFO    ] 200
[2026-06-12 19:14:36,226.226 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:14:36,250.250 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 19:14:36,388.388 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 19:14:36,389.389 INFO    ] No camera update needed
[2026-06-12 19:14:36,391.391 INFO    ] Script finished. Safe exiting...
[2026-06-12 19:14:36,392.392 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 19:14:36,395.395 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 19:14:36,398.398 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 19:14:38,437.437 INFO    ] ================================================
[2026-06-12 19:14:38,452.452 INFO    ] Launching Daemon at Fri Jun 12 19:14:38 IST 2026
[2026-06-12 19:14:38,464.464 INFO    ] ================================================
[2026-06-12 19:14:38,815.815 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 19:14:38
[2026-06-12 19:14:39,151.151 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 19:14:39,304.304 INFO    ] Initializing speech engine...
[2026-06-12 19:14:39,309.309 INFO    ] 2026-06-12 19:14:39
[2026-06-12 19:14:39,520.520 INFO    ] 2026-06-12 19:14:39
[2026-06-12 19:14:39,548.548 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 19:14:39,717.717 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 19:14:39,719.719 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 19:14:39,828.828 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 19:14:39,829.829 INFO    ] time= 12/06/2026 19:14:39
[2026-06-12 19:14:39,868.868 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 19:14:39,895.895 INFO    ] Checking for existing commands in stream...
[2026-06-12 19:14:40,017.017 INFO    ] No existing commands found in stream
[2026-06-12 19:14:45,045.045 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 19:14:45,048.048 INFO    ] Waiting 2.86 seconds before fallback handling...
[2026-06-12 19:14:48,270.270 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 19:14:48,272.272 INFO    ] Checking for system updates...
[2026-06-12 19:14:48,293.293 INFO    ] 200
[2026-06-12 19:14:48,294.294 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:14:48,325.325 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 19:14:48,326.326 INFO    ] No update needed
[2026-06-12 19:14:48,327.327 INFO    ] Checking for camera pi updates...
[2026-06-12 19:14:48,347.347 INFO    ] 200
[2026-06-12 19:14:48,349.349 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:14:48,372.372 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 19:14:48,423.423 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 19:14:48,425.425 INFO    ] No camera update needed
[2026-06-12 19:14:48,426.426 INFO    ] Script finished. Safe exiting...
[2026-06-12 19:14:48,427.427 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 19:14:48,431.431 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 19:14:48,434.434 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 19:14:50,472.472 INFO    ] ================================================
[2026-06-12 19:14:50,491.491 INFO    ] Launching Daemon at Fri Jun 12 19:14:50 IST 2026
[2026-06-12 19:14:50,502.502 INFO    ] ================================================
[2026-06-12 19:14:50,824.824 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 19:14:50
[2026-06-12 19:14:51,134.134 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 19:14:51,264.264 INFO    ] Initializing speech engine...
[2026-06-12 19:14:51,267.267 INFO    ] 2026-06-12 19:14:51
[2026-06-12 19:14:51,484.484 INFO    ] 2026-06-12 19:14:51
[2026-06-12 19:14:51,512.512 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 19:14:51,696.696 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 19:14:51,705.705 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 19:14:51,826.826 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 19:14:51,886.886 INFO    ] time= 12/06/2026 19:14:51
[2026-06-12 19:14:51,915.915 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 19:14:51,925.925 INFO    ] Checking for existing commands in stream...
[2026-06-12 19:14:51,997.997 INFO    ] No existing commands found in stream
[2026-06-12 19:14:57,011.011 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 19:14:57,013.013 INFO    ] Waiting 1.16 seconds before fallback handling...
[2026-06-12 19:14:58,539.539 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 19:14:58,540.540 INFO    ] Checking for system updates...
[2026-06-12 19:14:58,561.561 INFO    ] 200
[2026-06-12 19:14:58,562.562 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:14:58,594.594 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 19:14:58,595.595 INFO    ] No update needed
[2026-06-12 19:14:58,597.597 INFO    ] Checking for camera pi updates...
[2026-06-12 19:14:58,616.616 INFO    ] 200
[2026-06-12 19:14:58,617.617 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:14:58,640.640 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 19:14:58,683.683 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 19:14:58,685.685 INFO    ] No camera update needed
[2026-06-12 19:14:58,686.686 INFO    ] Script finished. Safe exiting...
[2026-06-12 19:14:58,687.687 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 19:14:58,690.690 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 19:14:58,693.693 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 19:15:00,733.733 INFO    ] ================================================
[2026-06-12 19:15:00,749.749 INFO    ] Launching Daemon at Fri Jun 12 19:15:00 IST 2026
[2026-06-12 19:15:00,760.760 INFO    ] ================================================
[2026-06-12 19:15:01,157.157 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 19:15:01
[2026-06-12 19:15:01,869.869 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 19:15:02,052.052 INFO    ] Initializing speech engine...
[2026-06-12 19:15:02,054.054 INFO    ] 2026-06-12 19:15:02
[2026-06-12 19:15:02,277.277 INFO    ] 2026-06-12 19:15:02
[2026-06-12 19:15:02,319.319 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 19:15:02,464.464 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 19:15:02,501.501 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 19:15:02,668.668 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 19:15:02,722.722 INFO    ] time= 12/06/2026 19:15:02
[2026-06-12 19:15:02,786.786 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 19:15:02,816.816 INFO    ] Checking for existing commands in stream...
[2026-06-12 19:15:02,912.912 INFO    ] No existing commands found in stream
[2026-06-12 19:15:07,921.921 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 19:15:07,924.924 INFO    ] Waiting 0.69 seconds before fallback handling...
[2026-06-12 19:15:08,981.981 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 19:15:08,982.982 INFO    ] Checking for system updates...
[2026-06-12 19:15:09,004.004 INFO    ] 200
[2026-06-12 19:15:09,005.005 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:15:09,035.035 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 19:15:09,036.036 INFO    ] No update needed
[2026-06-12 19:15:09,037.037 INFO    ] Checking for camera pi updates...
[2026-06-12 19:15:09,056.056 INFO    ] 200
[2026-06-12 19:15:09,058.058 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:15:09,081.081 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 19:15:09,131.131 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 19:15:09,132.132 INFO    ] No camera update needed
[2026-06-12 19:15:09,133.133 INFO    ] Script finished. Safe exiting...
[2026-06-12 19:15:09,134.134 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 19:15:09,137.137 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 19:15:09,140.140 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 19:15:11,178.178 INFO    ] ================================================
[2026-06-12 19:15:11,193.193 INFO    ] Launching Daemon at Fri Jun 12 19:15:11 IST 2026
[2026-06-12 19:15:11,204.204 INFO    ] ================================================
[2026-06-12 19:15:11,532.532 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 19:15:11
[2026-06-12 19:15:11,853.853 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 19:15:11,996.996 INFO    ] Initializing speech engine...
[2026-06-12 19:15:12,002.002 INFO    ] 2026-06-12 19:15:11
[2026-06-12 19:15:12,207.207 INFO    ] 2026-06-12 19:15:12
[2026-06-12 19:15:12,235.235 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 19:15:12,418.418 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 19:15:12,427.427 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 19:15:12,577.577 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 19:15:12,627.627 INFO    ] time= 12/06/2026 19:15:12
[2026-06-12 19:15:12,648.648 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 19:15:12,654.654 INFO    ] Checking for existing commands in stream...
[2026-06-12 19:15:12,721.721 INFO    ] No existing commands found in stream
[2026-06-12 19:15:16,976.976 INFO    ] Received new command: ID=1781271916847-0
[2026-06-12 19:15:16,978.978 INFO    ] process_and_cleanup_command: msg_id=1781271916847-0
[2026-06-12 19:15:16,981.981 INFO    ] is_command_expired: timestamp=2026-06-12T13:45:19.009Z, expiry=30s
[2026-06-12 19:15:17,065.065 INFO    ] Command removed from stream: 1781271916847-0. returning for processing...
[2026-06-12 19:15:17,068.068 INFO    ] ***** get_valid_command
[2026-06-12 19:15:17,071.071 INFO    ] {'data': '{"request_id":"start-order-1781271919008-pqt0pgu7g","orderId":"TM09202301260612191439466","is_vending":false}', 'source': 'webapp', 'timestamp': '2026-06-12T13:45:19.009Z', 'command': 'start-order', 'timeout': '10'}
[2026-06-12 19:15:17,073.073 INFO    ] ***** Parsed command data: {'request_id': 'start-order-1781271919008-pqt0pgu7g', 'orderId': 'TM09202301260612191439466', 'is_vending': False}
[2026-06-12 19:15:17,076.076 INFO    ] Handling start order...
[2026-06-12 19:15:17,078.078 INFO    ] handle_start_order_command
[2026-06-12 19:15:17,084.084 INFO    ] _send_start_order_success: request_id=start-order-1781271919008-pqt0pgu7g, order_id=TM09202301260612191439466
[2026-06-12 19:15:17,086.086 INFO    ] [_send_start_order_success] Adding message to stream: machine:TM09202301
[2026-06-12 19:15:17,144.144 INFO    ] [_send_start_order_success] Message added to stream with ID: 1781271917177-0
[2026-06-12 19:15:17,146.146 INFO    ] ✅ Start-order command succeeded - order locked, waiting for process-order command
[2026-06-12 19:15:17,149.149 INFO    ] Checking for system updates...
[2026-06-12 19:15:17,190.190 INFO    ] 200
[2026-06-12 19:15:17,193.193 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:15:17,245.245 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 19:15:17,248.248 INFO    ] No update needed
[2026-06-12 19:15:17,250.250 INFO    ] Checking for camera pi updates...
[2026-06-12 19:15:17,274.274 INFO    ] 200
[2026-06-12 19:15:17,275.275 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:15:17,298.298 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 19:15:17,342.342 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 19:15:17,343.343 INFO    ] No camera update needed
[2026-06-12 19:15:17,344.344 INFO    ] Script finished. Safe exiting...
[2026-06-12 19:15:17,346.346 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 19:15:17,348.348 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 19:15:17,351.351 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 19:15:19,388.388 INFO    ] ================================================
[2026-06-12 19:15:19,404.404 INFO    ] Launching Daemon at Fri Jun 12 19:15:19 IST 2026
[2026-06-12 19:15:19,416.416 INFO    ] ================================================
[2026-06-12 19:15:19,770.770 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 19:15:19
[2026-06-12 19:15:20,083.083 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 19:15:20,213.213 INFO    ] Initializing speech engine...
[2026-06-12 19:15:20,217.217 INFO    ] 2026-06-12 19:15:20
[2026-06-12 19:15:20,435.435 INFO    ] 2026-06-12 19:15:20
[2026-06-12 19:15:20,464.464 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 19:15:20,593.593 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 19:15:20,656.656 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 19:15:20,791.791 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 19:15:20,854.854 INFO    ] time= 12/06/2026 19:15:20
[2026-06-12 19:15:20,887.887 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 19:15:20,894.894 INFO    ] Checking for existing commands in stream...
[2026-06-12 19:15:20,963.963 INFO    ] Found 2 existing command(s) in stream
[2026-06-12 19:15:20,965.965 INFO    ] Checking historical command: ID=1781271917177-0
[2026-06-12 19:15:20,991.991 INFO    ] process_and_cleanup_command: msg_id=1781271917177-0
[2026-06-12 19:15:20,992.992 INFO    ] is_command_expired: timestamp=2026-06-12T13:45:17.085263Z, expiry=30s
[2026-06-12 19:15:21,103.103 INFO    ] Command removed from stream: 1781271917177-0. returning for processing...
[2026-06-12 19:15:21,106.106 INFO    ] ***** get_valid_command
[2026-06-12 19:15:21,111.111 INFO    ] {'message': 'start-order success', 'metadata_order_id': 'TM09202301260612191439466', 'timestamp': '2026-06-12T13:45:17.085263Z', 'message_type': 'command_response', 'imei': 'TM09202301', 'metadata_request_id': 'start-order-1781271919008-pqt0pgu7g', 'status': 'success'}
[2026-06-12 19:15:21,114.114 INFO    ] Checking historical command: ID=1781271919053-0
[2026-06-12 19:15:21,118.118 INFO    ] process_and_cleanup_command: msg_id=1781271919053-0
[2026-06-12 19:15:21,121.121 INFO    ] is_command_expired: timestamp=2026-06-12T13:45:21.248Z, expiry=30s
[2026-06-12 19:15:21,183.183 INFO    ] Command removed from stream: 1781271919053-0. returning for processing...
[2026-06-12 19:15:21,187.187 INFO    ] ***** get_valid_command
[2026-06-12 19:15:21,190.190 INFO    ] {'timestamp': '2026-06-12T13:45:21.248Z', 'timeout': '60', 'source': 'webapp', 'command': 'process-order', 'data': '{"request_id":"process-order-1781271921247-cbnvkaewh","orderId":"TM09202301260612191439466","is_vending":false,"accessCode":"20534246"}'}
[2026-06-12 19:15:21,195.195 INFO    ] ***** Parsed command data: {'accessCode': '20534246', 'orderId': 'TM09202301260612191439466', 'is_vending': False, 'request_id': 'process-order-1781271921247-cbnvkaewh'}
[2026-06-12 19:15:21,200.200 INFO    ] Handling process order...
[2026-06-12 19:15:21,204.204 INFO    ] Processing process-order command...
[2026-06-12 19:15:21,209.209 INFO    ] 🔍 Lock file Order ID: TM09202301260612191439466, TS: 2026-06-12 19:15:17
[2026-06-12 19:15:21,218.218 INFO    ] ✅ Order lock valid for TM09202301260612191439466
[2026-06-12 19:15:21,223.223 INFO    ] Received access code in process-order, skipping PHP API call
[2026-06-12 19:15:21,227.227 INFO    ] processing access code 20534246 for order TM09202301260612191439466
[2026-06-12 19:15:21,232.232 INFO    ] 🔍 Lock file Order ID: TM09202301260612191439466, TS: 2026-06-12 19:15:17
[2026-06-12 19:15:21,237.237 INFO    ] ✅ Order lock valid for TM09202301260612191439466
[2026-06-12 19:15:21,241.241 INFO    ] 2026-06-12 19:15:21
[2026-06-12 19:15:21,325.325 INFO    ] 200
[2026-06-12 19:15:21,329.329 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:15:21,354.354 INFO    ] 20534246
[2026-06-12 19:15:21,356.356 INFO    ] 2026-06-12 19:15:21
[2026-06-12 19:15:21,384.384 INFO    ] session id :612805713
[2026-06-12 19:15:21,387.387 INFO    ] http://localhost:5000/v2/getOrderByAccessCode?access_code=20534246&imei=TM09202301&session_id=612805713
[2026-06-12 19:15:22,114.114 INFO    ] 200
[2026-06-12 19:15:22,115.115 INFO    ] {"status": true, "msg": "Order Data", "data": {"bill_amount": "25", "access_code": "20534246", "order_id": "TM09202301260612191439466", "mobile": "7076607709", "proposed_sku_json": [{"unit_price": 25, "qty": 1, "skuid": "4500675", "offer_desc": "", "offer_id": "", "door_id": "2", "tray_id": "41", "sku_total": 25, "mrp": "25", "image_url": "https://images.tinymart.in/product/4500675-5033.jpg", "name": "Paper Boat Lychee 160ml"}], "invoice_bill": "25"}, "rstatus": true}
[2026-06-12 19:15:22,117.117 INFO    ] 25
[2026-06-12 19:15:22,118.118 INFO    ] TM09202301260612191439466
[2026-06-12 19:15:22,119.119 INFO    ] 7076607709
[2026-06-12 19:15:22,121.121 INFO    ] 2026-06-12 19:15:22
[2026-06-12 19:15:22,122.122 INFO    ] Door Opening for user mobile ending with  seven seven zero nine 
[2026-06-12 19:15:22,123.123 INFO    ] Door Opening for user mobile ending with  seven seven zero nine 
[2026-06-12 19:15:22,124.124 INFO    ] 05e4fc8e114be4920ec22f83a9f6af54
[2026-06-12 19:15:22,126.126 INFO    ] 2026-06-12 19:15:22
[2026-06-12 19:15:22,127.127 INFO    ] creating audio file
[2026-06-12 19:15:22,163.163 INFO    ] Calling gTTS API with 60s timeout...
[2026-06-12 19:15:22,739.739 INFO    ] gTTS API call completed successfully
[2026-06-12 19:15:23,424.424 INFO    ] 2026-06-12 19:15:23
[2026-06-12 19:15:23,426.426 INFO    ] playing audio file
[2026-06-12 19:15:23,435.435 INFO    ] 2026-06-12 19:15:23
[2026-06-12 19:15:23,437.437 INFO    ] 2026-06-12 19:15:23
[2026-06-12 19:15:23,439.439 INFO    ] publish_status: order_id=TM09202301260612191439466
[2026-06-12 19:15:23,441.441 INFO    ] [publish_status] Adding message to stream: order:TM09202301260612191439466
[2026-06-12 19:15:23,507.507 INFO    ] [publish_status] Message added to stream with ID: 1781271923540-0
[2026-06-12 19:15:23,508.508 INFO    ] Published to order:TM09202301260612191439466: {'timestamp': '2026-06-12T13:45:23.438396Z', 'server_response': '{"rstatus": true, "status": true, "msg": "Order Data", "data": {"proposed_sku_json": [{"skuid": "4500675", "qty": 1, "offer_desc": "", "name": "Paper Boat Lychee 160ml", "unit_price": 25, "tray_id": "41", "image_url": "https://images.tinymart.in/product/4500675-5033.jpg", "door_id": "2", "offer_id": "", "mrp": "25", "sku_total": 25}], "order_id": "TM09202301260612191439466", "access_code": "20534246", "mobile": "7076607709", "invoice_bill": "25", "bill_amount": "25"}}', 'server_status': 'order-started', 'order_id': 'TM09202301260612191439466'} (ID: 1781271923540-0)
[2026-06-12 19:15:23,852.852 INFO    ] {'server_response': {'rstatus': True, 'status': True, 'msg': 'Order Data', 'data': {'proposed_sku_json': [{'skuid': '4500675', 'qty': 1, 'offer_desc': '', 'name': 'Paper Boat Lychee 160ml', 'unit_price': 25, 'tray_id': '41', 'image_url': 'https://images.tinymart.in/product/4500675-5033.jpg', 'door_id': '2', 'offer_id': '', 'mrp': '25', 'sku_total': 25}], 'order_id': 'TM09202301260612191439466', 'access_code': '20534246', 'mobile': '7076607709', 'invoice_bill': '25', 'bill_amount': '25'}}, 'server_status': 'order-started', 'order_id': 'TM09202301260612191439466'}
[2026-06-12 19:15:23,854.854 INFO    ] 200
[2026-06-12 19:15:23,855.855 INFO    ] {"data":{"server_response":{"rstatus":true,"status":true,"msg":"Order Data","data":{"proposed_sku_json":[{"skuid":"4500675","qty":1,"offer_desc":"","name":"Paper Boat Lychee 160ml","unit_price":25,"tray_id":"41","image_url":"https:\/\/images.tinymart.in\/product\/4500675-5033.jpg","door_id":"2","offer_id":"","mrp":"25","sku_total":25}],"order_id":"TM09202301260612191439466","access_code":"20534246","mobile":"7076607709","invoice_bill":"25","bill_amount":"25"}},"server_status":"order-started","order_id":"TM09202301260612191439466"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-12 19:15:23,857.857 INFO    ] {'response': {'code': 'ORDER_EXISTS', 'status': True, 'msg': 'order updated successfully', 'data': 'order updated successfully'}, 'data': {'server_response': {'rstatus': True, 'status': True, 'msg': 'Order Data', 'data': {'proposed_sku_json': [{'skuid': '4500675', 'qty': 1, 'offer_desc': '', 'unit_price': 25, 'tray_id': '41', 'offer_id': '', 'image_url': 'https://images.tinymart.in/product/4500675-5033.jpg', 'door_id': '2', 'mrp': '25', 'name': 'Paper Boat Lychee 160ml', 'sku_total': 25}], 'order_id': 'TM09202301260612191439466', 'access_code': '20534246', 'mobile': '7076607709', 'invoice_bill': '25', 'bill_amount': '25'}}, 'order_id': 'TM09202301260612191439466', 'server_status': 'order-started'}}
[2026-06-12 19:15:23,858.858 INFO    ] 2026-06-12 19:15:23
[2026-06-12 19:15:23,883.883 INFO    ] 200
[2026-06-12 19:15:23,885.885 INFO    ] True
[2026-06-12 19:15:23,968.968 INFO    ] 200
[2026-06-12 19:15:23,970.970 INFO    ] {"error": {"tmessage": "In Progress", "umessage": "In Progress", "data": {}, "code": 20001}, "SectionSKU": {"Header": "Thank you for bearing with us :)", "skus": []}, "rstatus": false, "SectionStatus": {"Header": " Your order is under process  ", "SubHeader": "Please wait while we process your order", "UI_Header": "", "Note": ""}, "status": "False", "voiceNote": "Please Wait", "SectionMain": {"Header": "Processing Order"}}
[2026-06-12 19:15:23,972.972 INFO    ] {'SectionSKU': {'skus': [], 'Header': 'Thank you for bearing with us :)'}, 'voiceNote': 'Please Wait', 'SectionMain': {'Header': 'Processing Order'}, 'SectionStatus': {'UI_Header': '', 'Note': '', 'Header': ' Your order is under process  ', 'SubHeader': 'Please wait while we process your order'}, 'rstatus': False, 'status': 'False', 'error': {'umessage': 'In Progress', 'code': 20001, 'tmessage': 'In Progress', 'data': {}}}
[2026-06-12 19:15:23,973.973 INFO    ] *** process_order ***
[2026-06-12 19:15:25,136.136 INFO    ] 200
[2026-06-12 19:15:25,138.138 INFO    ] {"delay": 0, "SectionSKU": {"Header": "Thank you for bearing with us :)", "skus": []}, "rstatus": true, "SectionStatus": {"Header": " Your order is under process  ", "SubHeader": "Please wait while we process your order", "UI_Header": "", "Note": ""}, "status": "True", "voiceNote": "Please Wait", "SectionMain": {"Header": "Processing Order"}}
[2026-06-12 19:15:25,139.139 INFO    ] {'SectionSKU': {'skus': [], 'Header': 'Thank you for bearing with us :)'}, 'voiceNote': 'Please Wait', 'SectionMain': {'Header': 'Processing Order'}, 'SectionStatus': {'UI_Header': '', 'Note': '', 'Header': ' Your order is under process  ', 'SubHeader': 'Please wait while we process your order'}, 'rstatus': True, 'status': 'True', 'delay': 0}
[2026-06-12 19:15:25,141.141 INFO    ] *** process_order ***
[2026-06-12 19:15:25,142.142 INFO    ] publish_status: order_id=TM09202301260612191439466
[2026-06-12 19:15:25,143.143 INFO    ] [publish_status] Adding message to stream: order:TM09202301260612191439466
[2026-06-12 19:15:25,226.226 INFO    ] [publish_status] Message added to stream with ID: 1781271925259-0
[2026-06-12 19:15:25,228.228 INFO    ] Published to order:TM09202301260612191439466: {'server_response': '{"SectionSKU": {"skus": [], "Header": "Thank you for bearing with us :)"}, "voiceNote": "Door is open...", "SectionMain": {"Header": "Processing Order"}, "SectionStatus": {"UI_Header": "", "Note": "", "Header": " Your order is under process  ", "SubHeader": "You can pull the door now."}, "rstatus": true, "status": "True", "delay": 0}', 'server_status': 'doorOpened', 'order_id': 'TM09202301260612191439466'} (ID: 1781271925259-0)
[2026-06-12 19:15:26,284.284 INFO    ] 2026-06-12 19:15:26
[2026-06-12 19:15:26,287.287 INFO    ] publish_status: order_id=TM09202301260612191439466
[2026-06-12 19:15:26,289.289 INFO    ] [publish_status] Adding message to stream: order:TM09202301260612191439466
[2026-06-12 19:15:26,378.378 INFO    ] [publish_status] Message added to stream with ID: 1781271926409-0
[2026-06-12 19:15:26,381.381 INFO    ] Published to order:TM09202301260612191439466: {'timestamp': '2026-06-12T13:45:26.285484Z', 'server_response': '{"SectionSKU": {"skus": [], "Header": "Thank you for bearing with us :)"}, "voiceNote": "Please Wait", "SectionMain": {"Header": "Processing Order"}, "SectionStatus": {"UI_Header": "", "Note": "", "Header": " Your order is under process  ", "SubHeader": "Please wait while we process your order"}, "rstatus": true, "status": "True", "delay": 0}', 'server_status': 'processOrder', 'order_id': 'TM09202301260612191439466'} (ID: 1781271926409-0)
[2026-06-12 19:15:26,501.501 INFO    ] {'server_response': {'SectionSKU': {'skus': [], 'Header': 'Thank you for bearing with us :)'}, 'voiceNote': 'Please Wait', 'SectionMain': {'Header': 'Processing Order'}, 'SectionStatus': {'UI_Header': '', 'Note': '', 'Header': ' Your order is under process  ', 'SubHeader': 'Please wait while we process your order'}, 'rstatus': True, 'status': 'True', 'delay': 0}, 'server_status': 'processOrder', 'order_id': 'TM09202301260612191439466'}
[2026-06-12 19:15:26,502.502 INFO    ] 200
[2026-06-12 19:15:26,504.504 INFO    ] {"data":{"server_response":{"SectionSKU":{"skus":[],"Header":"Thank you for bearing with us :)"},"voiceNote":"Please Wait","SectionMain":{"Header":"Processing Order"},"SectionStatus":{"UI_Header":"","Note":"","Header":" Your order is under process  ","SubHeader":"Please wait while we process your order"},"rstatus":true,"status":"true","delay":0},"server_status":"processOrder","order_id":"TM09202301260612191439466"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-12 19:15:26,506.506 INFO    ] {'response': {'code': 'ORDER_EXISTS', 'status': True, 'msg': 'order updated successfully', 'data': 'order updated successfully'}, 'data': {'server_response': {'SectionSKU': {'skus': [], 'Header': 'Thank you for bearing with us :)'}, 'voiceNote': 'Please Wait', 'SectionMain': {'Header': 'Processing Order'}, 'SectionStatus': {'UI_Header': '', 'Note': '', 'Header': ' Your order is under process  ', 'SubHeader': 'Please wait while we process your order'}, 'rstatus': True, 'status': 'true', 'delay': 0}, 'order_id': 'TM09202301260612191439466', 'server_status': 'processOrder'}}
[2026-06-12 19:15:26,507.507 INFO    ] 2026-06-12 19:15:26
[2026-06-12 19:15:26,509.509 INFO    ] None
[2026-06-12 19:15:26,510.510 INFO    ] Opening Door now
[2026-06-12 19:15:26,511.511 INFO    ] Opening Door now
[2026-06-12 19:15:26,512.512 INFO    ] 08e5d1063504bf393c26f0bfa436e9f9
[2026-06-12 19:15:26,514.514 INFO    ] 2026-06-12 19:15:26
[2026-06-12 19:15:26,515.515 INFO    ] playing audio file
[2026-06-12 19:15:26,525.525 INFO    ] 2026-06-12 19:15:26
[2026-06-12 19:15:26,527.527 INFO    ] 2026-06-12 19:15:26
[2026-06-12 19:15:29,568.568 INFO    ] 200
[2026-06-12 19:15:29,570.570 INFO    ] {"error": {"tmessage": "In Progress", "umessage": "In Progress", "data": {}, "code": 20001}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"name": "Paper Boat Lychee 160ml", "qty": 1}]}, "rstatus": false, "SectionStatus": {"Header": "Please Close Door 2", "SubHeader": "Please Pick the Products and close the door", "UI_Header": "DOOR 2\nIS \nOPEN \nNOW", "Note": "Please Close the door after picking up products"}, "status": "False", "voiceNote": "Door 2 is open now", "SectionMain": {"Header": "Door Open"}}
[2026-06-12 19:15:29,572.572 INFO    ] {'SectionSKU': {'skus': [{'qty': 1, 'name': 'Paper Boat Lychee 160ml'}], 'Header': 'Pick the below items from the door'}, 'voiceNote': 'Door 2 is open now', 'SectionMain': {'Header': 'Door Open'}, 'SectionStatus': {'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'Note': 'Please Close the door after picking up products', 'Header': 'Please Close Door 2', 'SubHeader': 'Please Pick the Products and close the door'}, 'rstatus': False, 'status': 'False', 'error': {'umessage': 'In Progress', 'code': 20001, 'tmessage': 'In Progress', 'data': {}}}
[2026-06-12 19:15:32,675.675 INFO    ] 200
[2026-06-12 19:15:32,676.676 INFO    ] {"error": {"tmessage": "In Progress", "umessage": "In Progress", "data": {}, "code": 20001}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"name": "Paper Boat Lychee 160ml", "qty": 1}]}, "rstatus": false, "SectionStatus": {"Header": "Please Close Door 2", "SubHeader": "Please Pick the Products and close the door", "UI_Header": "DOOR 2\nIS \nOPEN \nNOW", "Note": "Please Close the door after picking up products"}, "status": "False", "voiceNote": "Please close door 2", "SectionMain": {"Header": "Door Open"}}
[2026-06-12 19:15:32,678.678 INFO    ] {'SectionSKU': {'skus': [{'qty': 1, 'name': 'Paper Boat Lychee 160ml'}], 'Header': 'Pick the below items from the door'}, 'voiceNote': 'Please close door 2', 'SectionMain': {'Header': 'Door Open'}, 'SectionStatus': {'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'Note': 'Please Close the door after picking up products', 'Header': 'Please Close Door 2', 'SubHeader': 'Please Pick the Products and close the door'}, 'rstatus': False, 'status': 'False', 'error': {'umessage': 'In Progress', 'code': 20001, 'tmessage': 'In Progress', 'data': {}}}
[2026-06-12 19:15:35,861.861 INFO    ] 200
[2026-06-12 19:15:35,863.863 INFO    ] {"error": {"tmessage": "In Progress", "umessage": "In Progress", "data": {}, "code": 20001}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"name": "Paper Boat Lychee 160ml", "qty": 1}]}, "rstatus": false, "SectionStatus": {"Header": "Please Close Door 2", "SubHeader": "Please Pick the Products and close the door", "UI_Header": "DOOR 2\nIS \nOPEN \nNOW", "Note": "Please Close the door after picking up products"}, "status": "False", "voiceNote": "Please close door 2", "SectionMain": {"Header": "Door Open"}}
[2026-06-12 19:15:35,865.865 INFO    ] Please close door 2
[2026-06-12 19:15:35,866.866 INFO    ] Please close door 2
[2026-06-12 19:15:35,868.868 INFO    ] 758e46684c76e887a5f58d4738034bed
[2026-06-12 19:15:35,870.870 INFO    ] 2026-06-12 19:15:35
[2026-06-12 19:15:35,871.871 INFO    ] playing audio file
[2026-06-12 19:15:35,882.882 INFO    ] 2026-06-12 19:15:35
[2026-06-12 19:15:35,884.884 INFO    ] publish_status: order_id=TM09202301260612191439466
[2026-06-12 19:15:35,886.886 INFO    ] [publish_status] Adding message to stream: order:TM09202301260612191439466
[2026-06-12 19:15:35,948.948 INFO    ] [publish_status] Message added to stream with ID: 1781271935981-0
[2026-06-12 19:15:35,950.950 INFO    ] Published to order:TM09202301260612191439466: {'timestamp': '2026-06-12T13:45:35.883261Z', 'server_response': '{"SectionSKU": {"skus": [{"qty": 1, "name": "Paper Boat Lychee 160ml"}], "Header": "Pick the below items from the door"}, "voiceNote": "Please close door 2", "SectionMain": {"Header": "Door Open"}, "SectionStatus": {"UI_Header": "DOOR 2\\nIS \\nOPEN \\nNOW", "Note": "Please Close the door after picking up products", "Header": "Please Close Door 2", "SubHeader": "Please Pick the Products and close the door"}, "rstatus": false, "status": "False", "error": {"umessage": "In Progress", "code": 20001, "tmessage": "In Progress", "data": {}}}', 'server_status': 'OrderStatus', 'order_id': 'TM09202301260612191439466'} (ID: 1781271935981-0)
[2026-06-12 19:15:36,332.332 INFO    ] {'server_response': {'SectionSKU': {'skus': [{'qty': 1, 'name': 'Paper Boat Lychee 160ml'}], 'Header': 'Pick the below items from the door'}, 'voiceNote': 'Please close door 2', 'SectionMain': {'Header': 'Door Open'}, 'SectionStatus': {'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'Note': 'Please Close the door after picking up products', 'Header': 'Please Close Door 2', 'SubHeader': 'Please Pick the Products and close the door'}, 'rstatus': False, 'status': 'False', 'error': {'umessage': 'In Progress', 'code': 20001, 'tmessage': 'In Progress', 'data': {}}}, 'server_status': 'OrderStatus', 'order_id': 'TM09202301260612191439466'}
[2026-06-12 19:15:36,334.334 INFO    ] 200
[2026-06-12 19:15:36,335.335 INFO    ] {"data":{"server_response":{"SectionSKU":{"skus":[{"qty":1,"name":"Paper Boat Lychee 160ml"}],"Header":"Pick the below items from the door"},"voiceNote":"Please close door 2","SectionMain":{"Header":"Door Open"},"SectionStatus":{"UI_Header":"DOOR 2\nIS \nOPEN \nNOW","Note":"Please Close the door after picking up products","Header":"Please Close Door 2","SubHeader":"Please Pick the Products and close the door"},"rstatus":false,"status":"false","error":{"umessage":"In Progress","code":20001,"tmessage":"In Progress","data":[]}},"server_status":"OrderStatus","order_id":"TM09202301260612191439466"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-12 19:15:36,337.337 INFO    ] {'response': {'code': 'ORDER_EXISTS', 'status': True, 'msg': 'order updated successfully', 'data': 'order updated successfully'}, 'data': {'server_response': {'SectionSKU': {'skus': [{'qty': 1, 'name': 'Paper Boat Lychee 160ml'}], 'Header': 'Pick the below items from the door'}, 'voiceNote': 'Please close door 2', 'SectionMain': {'Header': 'Door Open'}, 'SectionStatus': {'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'Note': 'Please Close the door after picking up products', 'Header': 'Please Close Door 2', 'SubHeader': 'Please Pick the Products and close the door'}, 'rstatus': False, 'status': 'false', 'error': {'umessage': 'In Progress', 'code': 20001, 'tmessage': 'In Progress', 'data': []}}, 'order_id': 'TM09202301260612191439466', 'server_status': 'OrderStatus'}}
[2026-06-12 19:15:36,339.339 INFO    ] {'SectionSKU': {'skus': [{'qty': 1, 'name': 'Paper Boat Lychee 160ml'}], 'Header': 'Pick the below items from the door'}, 'voiceNote': 'Please close door 2', 'SectionMain': {'Header': 'Door Open'}, 'SectionStatus': {'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'Note': 'Please Close the door after picking up products', 'Header': 'Please Close Door 2', 'SubHeader': 'Please Pick the Products and close the door'}, 'rstatus': False, 'status': 'False', 'error': {'umessage': 'In Progress', 'code': 20001, 'tmessage': 'In Progress', 'data': {}}}
[2026-06-12 19:15:39,378.378 INFO    ] 200
[2026-06-12 19:15:39,380.380 INFO    ] {"delay": 100, "SectionSKU": {"Header": "If you like us, tell others... else tell us", "skus": []}, "rstatus": true, "SectionStatus": {"Header": " Order is complete ", "SubHeader": "Please wait for invoice to generate", "UI_Header": "", "Note": "If any due amount, clear at https://go.tinymart.in"}, "status": "True", "voiceNote": "Transaction Completed", "SectionMain": {"Header": "Door Closed"}}
[2026-06-12 19:15:39,382.382 INFO    ] {'SectionSKU': {'skus': [], 'Header': 'If you like us, tell others... else tell us'}, 'voiceNote': 'Transaction Completed', 'SectionMain': {'Header': 'Door Closed'}, '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'}, 'rstatus': True, 'status': 'True', 'delay': 100}
[2026-06-12 19:15:39,384.384 INFO    ] 2026-06-12 19:15:39
[2026-06-12 19:15:39,385.385 INFO    ] Order Completed 
[2026-06-12 19:15:39,387.387 INFO    ] Order Completed 
[2026-06-12 19:15:39,388.388 INFO    ] 193c8a8cf3bf490ccfe0b23598544a83
[2026-06-12 19:15:39,390.390 INFO    ] 2026-06-12 19:15:39
[2026-06-12 19:15:39,392.392 INFO    ] playing audio file
[2026-06-12 19:15:39,403.403 INFO    ] 2026-06-12 19:15:39
[2026-06-12 19:15:39,405.405 INFO    ] {'SectionSKU': {'skus': [], 'Header': 'If you like us, tell others... else tell us'}, 'voiceNote': 'Transaction Completed', 'SectionMain': {'Header': 'Door Closed'}, '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'}, 'rstatus': True, 'status': 'True', 'delay': 100}
[2026-06-12 19:15:39,407.407 INFO    ] 2026-06-12 19:15:39
[2026-06-12 19:15:40,388.388 INFO    ] 200
[2026-06-12 19:15:40,389.389 INFO    ] {"anomaly": 0, "skus": [{"image_url": "https://images.tinymart.in/product/4500675-5033.jpg", "qty": 1, "skuid": "4500675", "unit_price": "25", "tray_id": "41", "sku_total": 25.0, "mrp": "25", "door_id": "", "name": "Paper Boat Lychee 160ml per peice"}], "total_amount": 25.0, "orderId": "TM09202301260612191439466", "res": "True", "rstatus": true, "logic": "WBL"}
[2026-06-12 19:15:40,391.391 INFO    ] {'anomaly': 0, 'skus': [{'image_url': 'https://images.tinymart.in/product/4500675-5033.jpg', 'qty': 1, 'name': 'Paper Boat Lychee 160ml per peice', 'unit_price': '25', 'tray_id': '41', 'door_id': '', 'skuid': '4500675', 'mrp': '25', 'sku_total': 25.0}], 'logic': 'WBL', 'orderId': 'TM09202301260612191439466', 'rstatus': True, 'total_amount': 25.0, 'res': 'True'}
[2026-06-12 19:15:40,393.393 INFO    ] {'anomaly': 0, 'skus': [{'image_url': 'https://images.tinymart.in/product/4500675-5033.jpg', 'qty': 1, 'name': 'Paper Boat Lychee 160ml per peice', 'unit_price': '25', 'tray_id': '41', 'door_id': '', 'skuid': '4500675', 'mrp': '25', 'sku_total': 25.0}], 'logic': 'WBL', 'orderId': 'TM09202301260612191439466', 'rstatus': True, 'total_amount': 25.0, 'res': 'True'}
[2026-06-12 19:15:40,395.395 INFO    ] 2026-06-12 19:15:40
[2026-06-12 19:15:40,396.396 INFO    ] 2026-06-12 19:15:40
[2026-06-12 19:15:40,398.398 INFO    ] 25
[2026-06-12 19:15:40,399.399 INFO    ] 2026-06-12 19:15:40
[2026-06-12 19:15:40,401.401 INFO    ] 2026-06-12 19:15:40
[2026-06-12 19:15:40,403.403 INFO    ]  Your Bill Amount is 25
[2026-06-12 19:15:40,404.404 INFO    ]  Your Bill Amount is 25
[2026-06-12 19:15:40,406.406 INFO    ] da20fb15704d31a40267abf7bb69dedc
[2026-06-12 19:15:40,407.407 INFO    ] 2026-06-12 19:15:40
[2026-06-12 19:15:40,409.409 INFO    ] playing audio file
[2026-06-12 19:15:40,420.420 INFO    ] 2026-06-12 19:15:40
[2026-06-12 19:15:40,422.422 INFO    ] 2026-06-12 19:15:40
[2026-06-12 19:15:40,424.424 INFO    ] publish_status: order_id=TM09202301260612191439466
[2026-06-12 19:15:40,426.426 INFO    ] [publish_status] Adding message to stream: order:TM09202301260612191439466
[2026-06-12 19:15:40,517.517 INFO    ] [publish_status] Message added to stream with ID: 1781271940550-0
[2026-06-12 19:15:40,518.518 INFO    ] Published to order:TM09202301260612191439466: {'timestamp': '2026-06-12T13:45:40.423680Z', 'server_response': '{"anomaly": 0, "skus": [{"image_url": "https://images.tinymart.in/product/4500675-5033.jpg", "qty": 1, "name": "Paper Boat Lychee 160ml per peice", "unit_price": "25", "tray_id": "41", "door_id": "", "skuid": "4500675", "mrp": "25", "sku_total": 25.0}], "logic": "WBL", "orderId": "TM09202301260612191439466", "rstatus": true, "total_amount": 25.0, "res": "True"}', 'server_status': 'invoiceOrder', 'order_id': 'TM09202301260612191439466'} (ID: 1781271940550-0)
[2026-06-12 19:15:41,013.013 INFO    ] {'server_response': {'anomaly': 0, 'skus': [{'image_url': 'https://images.tinymart.in/product/4500675-5033.jpg', 'qty': 1, 'name': 'Paper Boat Lychee 160ml per peice', 'unit_price': '25', 'tray_id': '41', 'door_id': '', 'skuid': '4500675', 'mrp': '25', 'sku_total': 25.0}], 'logic': 'WBL', 'orderId': 'TM09202301260612191439466', 'rstatus': True, 'total_amount': 25.0, 'res': 'True'}, 'server_status': 'invoiceOrder', 'order_id': 'TM09202301260612191439466'}
[2026-06-12 19:15:41,014.014 INFO    ] 200
[2026-06-12 19:15:41,016.016 INFO    ] {"data":{"server_response":{"anomaly":0,"skus":[{"image_url":"https:\/\/images.tinymart.in\/product\/4500675-5033.jpg","qty":1,"name":"Paper Boat Lychee 160ml per peice","unit_price":"25","tray_id":"41","door_id":"","skuid":"4500675","mrp":"25","sku_total":25}],"logic":"WBL","orderId":"TM09202301260612191439466","rstatus":true,"total_amount":25,"res":"true"},"server_status":"invoiceOrder","order_id":"TM09202301260612191439466"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-12 19:15:41,017.017 INFO    ] {'response': {'code': 'ORDER_EXISTS', 'status': True, 'msg': 'order updated successfully', 'data': 'order updated successfully'}, 'data': {'server_response': {'anomaly': 0, 'skus': [{'image_url': 'https://images.tinymart.in/product/4500675-5033.jpg', 'qty': 1, 'unit_price': '25', 'tray_id': '41', 'door_id': '', 'skuid': '4500675', 'mrp': '25', 'name': 'Paper Boat Lychee 160ml per peice', 'sku_total': 25}], 'logic': 'WBL', 'orderId': 'TM09202301260612191439466', 'rstatus': True, 'total_amount': 25, 'res': 'true'}, 'order_id': 'TM09202301260612191439466', 'server_status': 'invoiceOrder'}}
[2026-06-12 19:15:41,019.019 INFO    ] {'response': {'code': 'ORDER_EXISTS', 'status': True, 'msg': 'order updated successfully', 'data': 'order updated successfully'}, 'data': {'server_response': {'anomaly': 0, 'skus': [{'image_url': 'https://images.tinymart.in/product/4500675-5033.jpg', 'qty': 1, 'unit_price': '25', 'tray_id': '41', 'door_id': '', 'skuid': '4500675', 'mrp': '25', 'name': 'Paper Boat Lychee 160ml per peice', 'sku_total': 25}], 'logic': 'WBL', 'orderId': 'TM09202301260612191439466', 'rstatus': True, 'total_amount': 25, 'res': 'true'}, 'order_id': 'TM09202301260612191439466', 'server_status': 'invoiceOrder'}}
[2026-06-12 19:15:41,020.020 INFO    ] 2026-06-12 19:15:41
[2026-06-12 19:15:44,444.444 INFO    ] 200
[2026-06-12 19:15:44,447.447 INFO    ] {"order_items": [], "tray_sync": ["TM09202301260612191439466", "TM09202301260612191439466", "TM09202301260612191439466", "TM09202301260612191439466", "TM09202301260612191439466", "TM09202301260612191439466"], "orders": [], "order_items_synced": [], "orders_synced": [], "orders_data_synced": [], "status": true, "orders_data": [], "tray_synced": ["TM09202301260612191439466", "TM09202301260612191439466", "TM09202301260612191439466", "TM09202301260612191439466", "TM09202301260612191439466", "TM09202301260612191439466", "TM09202301260612191439466", "TM09202301260612191439466", "TM09202301260612191439466", "TM09202301260612191439466", "TM09202301260612191439466", "TM09202301260612191439466", "TM09202301260612191439466", "TM09202301260612191439466", "TM09202301260612191439466", "TM09202301260612191439466", "TM09202301260612191439466", "TM09202301260612191439466", "TM09202301260612191439466", "TM09202301260612191439466", "TM09202301260612191439466", "TM09202301260612191439466", "TM09202301260612191439466", "TM09202301260612191439466", "TM09202301260612191439466", "TM09202301260612191439466", "TM09202301260612191439466"]}
[2026-06-12 19:15:44,451.451 INFO    ] 2026-06-12 19:15:44
[2026-06-12 19:15:44,563.563 INFO    ] 200
[2026-06-12 19:15:44,565.565 INFO    ] True
[2026-06-12 19:15:44,566.566 INFO    ] cleanup_start_order_file_after_processing: order_id=TM09202301260612191439466
[2026-06-12 19:15:44,568.568 INFO    ] start order file deleted
[2026-06-12 19:15:44,570.570 INFO    ] Checking for system updates...
[2026-06-12 19:15:44,592.592 INFO    ] 200
[2026-06-12 19:15:44,594.594 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:15:44,630.630 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 19:15:44,631.631 INFO    ] No update needed
[2026-06-12 19:15:44,633.633 INFO    ] Checking for camera pi updates...
[2026-06-12 19:15:44,656.656 INFO    ] 200
[2026-06-12 19:15:44,657.657 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:15:44,686.686 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 19:15:44,727.727 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 19:15:44,728.728 INFO    ] No camera update needed
[2026-06-12 19:15:44,730.730 INFO    ] Script finished. Safe exiting...
[2026-06-12 19:15:44,731.731 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 19:15:44,734.734 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 19:15:44,737.737 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 19:15:46,777.777 INFO    ] ================================================
[2026-06-12 19:15:46,793.793 INFO    ] Launching Daemon at Fri Jun 12 19:15:46 IST 2026
[2026-06-12 19:15:46,804.804 INFO    ] ================================================
[2026-06-12 19:15:47,159.159 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 19:15:47
[2026-06-12 19:15:47,470.470 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 19:15:47,612.612 INFO    ] Initializing speech engine...
[2026-06-12 19:15:47,616.616 INFO    ] 2026-06-12 19:15:47
[2026-06-12 19:15:47,823.823 INFO    ] 2026-06-12 19:15:47
[2026-06-12 19:15:47,852.852 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 19:15:47,974.974 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 19:15:48,036.036 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 19:15:48,175.175 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 19:15:48,234.234 INFO    ] time= 12/06/2026 19:15:48
[2026-06-12 19:15:48,266.266 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 19:15:48,273.273 INFO    ] Checking for existing commands in stream...
[2026-06-12 19:15:48,339.339 INFO    ] No existing commands found in stream
[2026-06-12 19:15:53,348.348 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 19:15:53,351.351 INFO    ] Waiting 0.27 seconds before fallback handling...
[2026-06-12 19:15:54,011.011 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 19:15:54,013.013 INFO    ] Checking for system updates...
[2026-06-12 19:15:54,033.033 INFO    ] 200
[2026-06-12 19:15:54,035.035 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:15:54,065.065 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 19:15:54,066.066 INFO    ] No update needed
[2026-06-12 19:15:54,068.068 INFO    ] Checking for camera pi updates...
[2026-06-12 19:15:54,089.089 INFO    ] 200
[2026-06-12 19:15:54,090.090 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:15:54,116.116 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 19:15:54,163.163 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 19:15:54,165.165 INFO    ] No camera update needed
[2026-06-12 19:15:54,166.166 INFO    ] Script finished. Safe exiting...
[2026-06-12 19:15:54,168.168 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 19:15:54,171.171 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 19:15:54,174.174 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 19:15:56,216.216 INFO    ] ================================================
[2026-06-12 19:15:56,232.232 INFO    ] Launching Daemon at Fri Jun 12 19:15:56 IST 2026
[2026-06-12 19:15:56,247.247 INFO    ] ================================================
[2026-06-12 19:15:56,612.612 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 19:15:56
[2026-06-12 19:15:56,958.958 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 19:15:57,112.112 INFO    ] Initializing speech engine...
[2026-06-12 19:15:57,118.118 INFO    ] 2026-06-12 19:15:57
[2026-06-12 19:15:57,330.330 INFO    ] 2026-06-12 19:15:57
[2026-06-12 19:15:57,359.359 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 19:15:57,546.546 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 19:15:57,556.556 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 19:15:57,698.698 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 19:15:57,773.773 INFO    ] time= 12/06/2026 19:15:57
[2026-06-12 19:15:57,828.828 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 19:15:57,835.835 INFO    ] Checking for existing commands in stream...
[2026-06-12 19:15:57,926.926 INFO    ] No existing commands found in stream
[2026-06-12 19:16:02,939.939 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 19:16:02,941.941 INFO    ] Waiting 2.67 seconds before fallback handling...
[2026-06-12 19:16:06,039.039 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 19:16:06,041.041 INFO    ] Checking for system updates...
[2026-06-12 19:16:06,063.063 INFO    ] 200
[2026-06-12 19:16:06,065.065 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:16:06,098.098 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 19:16:06,099.099 INFO    ] No update needed
[2026-06-12 19:16:06,101.101 INFO    ] Checking for camera pi updates...
[2026-06-12 19:16:06,120.120 INFO    ] 200
[2026-06-12 19:16:06,122.122 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:16:06,145.145 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 19:16:06,186.186 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 19:16:06,188.188 INFO    ] No camera update needed
[2026-06-12 19:16:06,189.189 INFO    ] Script finished. Safe exiting...
[2026-06-12 19:16:06,191.191 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 19:16:06,194.194 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 19:16:06,197.197 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 19:16:08,237.237 INFO    ] ================================================
[2026-06-12 19:16:08,258.258 INFO    ] Launching Daemon at Fri Jun 12 19:16:08 IST 2026
[2026-06-12 19:16:08,270.270 INFO    ] ================================================
[2026-06-12 19:16:08,624.624 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 19:16:08
[2026-06-12 19:16:08,938.938 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 19:16:09,072.072 INFO    ] Initializing speech engine...
[2026-06-12 19:16:09,077.077 INFO    ] 2026-06-12 19:16:09
[2026-06-12 19:16:09,336.336 INFO    ] 2026-06-12 19:16:09
[2026-06-12 19:16:09,365.365 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 19:16:09,591.591 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 19:16:09,595.595 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 19:16:09,741.741 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 19:16:09,799.799 INFO    ] time= 12/06/2026 19:16:09
[2026-06-12 19:16:09,829.829 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 19:16:09,847.847 INFO    ] Checking for existing commands in stream...
[2026-06-12 19:16:09,925.925 INFO    ] No existing commands found in stream
[2026-06-12 19:16:14,934.934 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 19:16:14,937.937 INFO    ] Waiting 1.02 seconds before fallback handling...
[2026-06-12 19:16:16,354.354 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 19:16:16,356.356 INFO    ] Checking for system updates...
[2026-06-12 19:16:16,376.376 INFO    ] 200
[2026-06-12 19:16:16,377.377 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:16:16,407.407 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 19:16:16,409.409 INFO    ] No update needed
[2026-06-12 19:16:16,410.410 INFO    ] Checking for camera pi updates...
[2026-06-12 19:16:16,429.429 INFO    ] 200
[2026-06-12 19:16:16,430.430 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:16:16,453.453 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 19:16:16,483.483 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 19:16:16,484.484 INFO    ] No camera update needed
[2026-06-12 19:16:16,486.486 INFO    ] Script finished. Safe exiting...
[2026-06-12 19:16:16,487.487 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 19:16:16,490.490 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 19:16:16,493.493 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 19:16:18,531.531 INFO    ] ================================================
[2026-06-12 19:16:18,546.546 INFO    ] Launching Daemon at Fri Jun 12 19:16:18 IST 2026
[2026-06-12 19:16:18,557.557 INFO    ] ================================================
[2026-06-12 19:16:18,923.923 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 19:16:18
[2026-06-12 19:16:19,235.235 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 19:16:19,368.368 INFO    ] Initializing speech engine...
[2026-06-12 19:16:19,372.372 INFO    ] 2026-06-12 19:16:19
[2026-06-12 19:16:19,565.565 INFO    ] 2026-06-12 19:16:19
[2026-06-12 19:16:19,610.610 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 19:16:19,770.770 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 19:16:19,778.778 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 19:16:19,933.933 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 19:16:19,985.985 INFO    ] time= 12/06/2026 19:16:19
[2026-06-12 19:16:20,002.002 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 19:16:20,070.070 INFO    ] Checking for existing commands in stream...
[2026-06-12 19:16:20,171.171 INFO    ] No existing commands found in stream
[2026-06-12 19:16:25,182.182 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 19:16:25,184.184 INFO    ] Waiting 2.44 seconds before fallback handling...
[2026-06-12 19:16:28,039.039 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 19:16:28,041.041 INFO    ] Checking for system updates...
[2026-06-12 19:16:28,063.063 INFO    ] 200
[2026-06-12 19:16:28,065.065 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:16:28,103.103 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 19:16:28,104.104 INFO    ] No update needed
[2026-06-12 19:16:28,106.106 INFO    ] Checking for camera pi updates...
[2026-06-12 19:16:28,125.125 INFO    ] 200
[2026-06-12 19:16:28,126.126 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:16:28,151.151 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 19:16:28,194.194 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 19:16:28,195.195 INFO    ] No camera update needed
[2026-06-12 19:16:28,196.196 INFO    ] Script finished. Safe exiting...
[2026-06-12 19:16:28,198.198 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 19:16:28,201.201 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 19:16:28,203.203 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 19:16:30,242.242 INFO    ] ================================================
[2026-06-12 19:16:30,257.257 INFO    ] Launching Daemon at Fri Jun 12 19:16:30 IST 2026
[2026-06-12 19:16:30,292.292 INFO    ] ================================================
[2026-06-12 19:16:30,679.679 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 19:16:30
[2026-06-12 19:16:30,998.998 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 19:16:31,146.146 INFO    ] Initializing speech engine...
[2026-06-12 19:16:31,152.152 INFO    ] 2026-06-12 19:16:31
[2026-06-12 19:16:31,355.355 INFO    ] 2026-06-12 19:16:31
[2026-06-12 19:16:31,384.384 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 19:16:31,567.567 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 19:16:31,576.576 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 19:16:31,769.769 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 19:16:31,794.794 INFO    ] time= 12/06/2026 19:16:31
[2026-06-12 19:16:31,796.796 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 19:16:31,802.802 INFO    ] Checking for existing commands in stream...
[2026-06-12 19:16:31,903.903 INFO    ] No existing commands found in stream
[2026-06-12 19:16:36,912.912 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 19:16:36,915.915 INFO    ] Waiting 3.87 seconds before fallback handling...
[2026-06-12 19:16:41,162.162 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 19:16:41,164.164 INFO    ] Checking for system updates...
[2026-06-12 19:16:41,184.184 INFO    ] 200
[2026-06-12 19:16:41,186.186 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:16:41,218.218 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 19:16:41,219.219 INFO    ] No update needed
[2026-06-12 19:16:41,221.221 INFO    ] Checking for camera pi updates...
[2026-06-12 19:16:41,240.240 INFO    ] 200
[2026-06-12 19:16:41,242.242 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:16:41,264.264 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 19:16:41,401.401 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 19:16:41,403.403 INFO    ] No camera update needed
[2026-06-12 19:16:41,404.404 INFO    ] Script finished. Safe exiting...
[2026-06-12 19:16:41,405.405 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 19:16:41,408.408 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 19:16:41,411.411 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 19:16:43,450.450 INFO    ] ================================================
[2026-06-12 19:16:43,466.466 INFO    ] Launching Daemon at Fri Jun 12 19:16:43 IST 2026
[2026-06-12 19:16:43,476.476 INFO    ] ================================================
[2026-06-12 19:16:43,831.831 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 19:16:43
[2026-06-12 19:16:44,146.146 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 19:16:44,285.285 INFO    ] Initializing speech engine...
[2026-06-12 19:16:44,296.296 INFO    ] 2026-06-12 19:16:44
[2026-06-12 19:16:44,502.502 INFO    ] 2026-06-12 19:16:44
[2026-06-12 19:16:44,532.532 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 19:16:44,719.719 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 19:16:44,729.729 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 19:16:44,871.871 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 19:16:44,930.930 INFO    ] time= 12/06/2026 19:16:44
[2026-06-12 19:16:44,953.953 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 19:16:44,959.959 INFO    ] Checking for existing commands in stream...
[2026-06-12 19:16:45,026.026 INFO    ] No existing commands found in stream
[2026-06-12 19:16:50,041.041 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 19:16:50,044.044 INFO    ] Waiting 3.77 seconds before fallback handling...
[2026-06-12 19:16:54,219.219 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 19:16:54,221.221 INFO    ] Checking for system updates...
[2026-06-12 19:16:54,243.243 INFO    ] 200
[2026-06-12 19:16:54,244.244 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:16:54,279.279 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 19:16:54,281.281 INFO    ] No update needed
[2026-06-12 19:16:54,282.282 INFO    ] Checking for camera pi updates...
[2026-06-12 19:16:54,303.303 INFO    ] 200
[2026-06-12 19:16:54,305.305 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:16:54,328.328 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 19:16:54,372.372 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 19:16:54,374.374 INFO    ] No camera update needed
[2026-06-12 19:16:54,375.375 INFO    ] Script finished. Safe exiting...
[2026-06-12 19:16:54,377.377 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 19:16:54,380.380 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 19:16:54,383.383 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 19:16:56,423.423 INFO    ] ================================================
[2026-06-12 19:16:56,438.438 INFO    ] Launching Daemon at Fri Jun 12 19:16:56 IST 2026
[2026-06-12 19:16:56,449.449 INFO    ] ================================================
[2026-06-12 19:16:56,793.793 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 19:16:56
[2026-06-12 19:16:57,108.108 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 19:16:57,243.243 INFO    ] Initializing speech engine...
[2026-06-12 19:16:57,247.247 INFO    ] 2026-06-12 19:16:57
[2026-06-12 19:16:57,443.443 INFO    ] 2026-06-12 19:16:57
[2026-06-12 19:16:57,484.484 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 19:16:57,643.643 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 19:16:57,692.692 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 19:16:57,856.856 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 19:16:57,918.918 INFO    ] time= 12/06/2026 19:16:57
[2026-06-12 19:16:57,954.954 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 19:16:57,966.966 INFO    ] Checking for existing commands in stream...
[2026-06-12 19:16:58,044.044 INFO    ] No existing commands found in stream
[2026-06-12 19:17:03,051.051 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 19:17:03,053.053 INFO    ] Waiting 2.91 seconds before fallback handling...
[2026-06-12 19:17:06,349.349 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 19:17:06,351.351 INFO    ] Checking for system updates...
[2026-06-12 19:17:06,372.372 INFO    ] 200
[2026-06-12 19:17:06,374.374 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:17:06,406.406 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 19:17:06,408.408 INFO    ] No update needed
[2026-06-12 19:17:06,409.409 INFO    ] Checking for camera pi updates...
[2026-06-12 19:17:06,428.428 INFO    ] 200
[2026-06-12 19:17:06,429.429 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:17:06,454.454 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 19:17:06,487.487 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 19:17:06,488.488 INFO    ] No camera update needed
[2026-06-12 19:17:06,489.489 INFO    ] Script finished. Safe exiting...
[2026-06-12 19:17:06,491.491 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 19:17:06,493.493 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 19:17:06,496.496 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 19:17:08,535.535 INFO    ] ================================================
[2026-06-12 19:17:08,550.550 INFO    ] Launching Daemon at Fri Jun 12 19:17:08 IST 2026
[2026-06-12 19:17:08,562.562 INFO    ] ================================================
[2026-06-12 19:17:08,890.890 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 19:17:08
[2026-06-12 19:17:09,204.204 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 19:17:09,337.337 INFO    ] Initializing speech engine...
[2026-06-12 19:17:09,342.342 INFO    ] 2026-06-12 19:17:09
[2026-06-12 19:17:09,574.574 INFO    ] 2026-06-12 19:17:09
[2026-06-12 19:17:09,604.604 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 19:17:09,804.804 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 19:17:09,808.808 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 19:17:09,973.973 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 19:17:10,032.032 INFO    ] time= 12/06/2026 19:17:09
[2026-06-12 19:17:10,056.056 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 19:17:10,058.058 INFO    ] Checking for existing commands in stream...
[2026-06-12 19:17:10,134.134 INFO    ] No existing commands found in stream
[2026-06-12 19:17:15,145.145 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 19:17:15,148.148 INFO    ] Waiting 2.72 seconds before fallback handling...
[2026-06-12 19:17:18,228.228 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 19:17:18,230.230 INFO    ] Checking for system updates...
[2026-06-12 19:17:18,250.250 INFO    ] 200
[2026-06-12 19:17:18,252.252 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:17:18,283.283 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 19:17:18,284.284 INFO    ] No update needed
[2026-06-12 19:17:18,286.286 INFO    ] Checking for camera pi updates...
[2026-06-12 19:17:18,306.306 INFO    ] 200
[2026-06-12 19:17:18,308.308 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:17:18,332.332 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 19:17:18,386.386 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 19:17:18,388.388 INFO    ] No camera update needed
[2026-06-12 19:17:18,389.389 INFO    ] Script finished. Safe exiting...
[2026-06-12 19:17:18,391.391 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 19:17:18,394.394 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 19:17:18,397.397 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 19:17:20,438.438 INFO    ] ================================================
[2026-06-12 19:17:20,453.453 INFO    ] Launching Daemon at Fri Jun 12 19:17:20 IST 2026
[2026-06-12 19:17:20,464.464 INFO    ] ================================================
[2026-06-12 19:17:20,813.813 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 19:17:20
[2026-06-12 19:17:21,152.152 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 19:17:21,306.306 INFO    ] Initializing speech engine...
[2026-06-12 19:17:21,310.310 INFO    ] 2026-06-12 19:17:21
[2026-06-12 19:17:21,519.519 INFO    ] 2026-06-12 19:17:21
[2026-06-12 19:17:21,548.548 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 19:17:21,737.737 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 19:17:21,748.748 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 19:17:21,878.878 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 19:17:21,938.938 INFO    ] time= 12/06/2026 19:17:21
[2026-06-12 19:17:21,971.971 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 19:17:21,977.977 INFO    ] Checking for existing commands in stream...
[2026-06-12 19:17:22,050.050 INFO    ] No existing commands found in stream
[2026-06-12 19:17:27,064.064 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 19:17:27,068.068 INFO    ] Waiting 2.58 seconds before fallback handling...
[2026-06-12 19:17:30,050.050 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 19:17:30,052.052 INFO    ] Checking for system updates...
[2026-06-12 19:17:30,073.073 INFO    ] 200
[2026-06-12 19:17:30,074.074 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:17:30,104.104 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 19:17:30,106.106 INFO    ] No update needed
[2026-06-12 19:17:30,107.107 INFO    ] Checking for camera pi updates...
[2026-06-12 19:17:30,127.127 INFO    ] 200
[2026-06-12 19:17:30,128.128 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:17:30,152.152 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 19:17:30,195.195 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 19:17:30,197.197 INFO    ] No camera update needed
[2026-06-12 19:17:30,198.198 INFO    ] Script finished. Safe exiting...
[2026-06-12 19:17:30,200.200 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 19:17:30,203.203 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 19:17:30,206.206 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 19:17:32,246.246 INFO    ] ================================================
[2026-06-12 19:17:32,262.262 INFO    ] Launching Daemon at Fri Jun 12 19:17:32 IST 2026
[2026-06-12 19:17:32,274.274 INFO    ] ================================================
[2026-06-12 19:17:32,611.611 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 19:17:32
[2026-06-12 19:17:32,952.952 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 19:17:33,087.087 INFO    ] Initializing speech engine...
[2026-06-12 19:17:33,090.090 INFO    ] 2026-06-12 19:17:33
[2026-06-12 19:17:33,319.319 INFO    ] 2026-06-12 19:17:33
[2026-06-12 19:17:33,349.349 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 19:17:33,483.483 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 19:17:33,546.546 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 19:17:33,701.701 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 19:17:33,760.760 INFO    ] time= 12/06/2026 19:17:33
[2026-06-12 19:17:33,790.790 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 19:17:33,801.801 INFO    ] Checking for existing commands in stream...
[2026-06-12 19:17:33,877.877 INFO    ] No existing commands found in stream
[2026-06-12 19:17:38,888.888 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 19:17:38,890.890 INFO    ] Waiting 3.27 seconds before fallback handling...
[2026-06-12 19:17:42,533.533 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 19:17:42,535.535 INFO    ] Checking for system updates...
[2026-06-12 19:17:42,556.556 INFO    ] 200
[2026-06-12 19:17:42,558.558 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:17:42,588.588 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 19:17:42,590.590 INFO    ] No update needed
[2026-06-12 19:17:42,591.591 INFO    ] Checking for camera pi updates...
[2026-06-12 19:17:42,612.612 INFO    ] 200
[2026-06-12 19:17:42,613.613 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:17:42,636.636 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 19:17:42,687.687 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 19:17:42,688.688 INFO    ] No camera update needed
[2026-06-12 19:17:42,689.689 INFO    ] Script finished. Safe exiting...
[2026-06-12 19:17:42,691.691 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 19:17:42,694.694 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 19:17:42,697.697 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 19:17:44,734.734 INFO    ] ================================================
[2026-06-12 19:17:44,750.750 INFO    ] Launching Daemon at Fri Jun 12 19:17:44 IST 2026
[2026-06-12 19:17:44,761.761 INFO    ] ================================================
[2026-06-12 19:17:45,125.125 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 19:17:45
[2026-06-12 19:17:45,438.438 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 19:17:45,573.573 INFO    ] Initializing speech engine...
[2026-06-12 19:17:45,578.578 INFO    ] 2026-06-12 19:17:45
[2026-06-12 19:17:45,809.809 INFO    ] 2026-06-12 19:17:45
[2026-06-12 19:17:45,840.840 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 19:17:46,039.039 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 19:17:46,049.049 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 19:17:46,191.191 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 19:17:46,255.255 INFO    ] time= 12/06/2026 19:17:46
[2026-06-12 19:17:46,289.289 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 19:17:46,296.296 INFO    ] Checking for existing commands in stream...
[2026-06-12 19:17:46,367.367 INFO    ] No existing commands found in stream
[2026-06-12 19:17:51,377.377 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 19:17:51,380.380 INFO    ] Waiting 3.87 seconds before fallback handling...
[2026-06-12 19:17:55,631.631 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 19:17:55,632.632 INFO    ] Checking for system updates...
[2026-06-12 19:17:55,653.653 INFO    ] 200
[2026-06-12 19:17:55,654.654 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:17:55,684.684 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 19:17:55,686.686 INFO    ] No update needed
[2026-06-12 19:17:55,687.687 INFO    ] Checking for camera pi updates...
[2026-06-12 19:17:55,707.707 INFO    ] 200
[2026-06-12 19:17:55,708.708 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:17:55,732.732 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 19:17:55,778.778 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 19:17:55,779.779 INFO    ] No camera update needed
[2026-06-12 19:17:55,781.781 INFO    ] Script finished. Safe exiting...
[2026-06-12 19:17:55,782.782 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 19:17:55,786.786 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 19:17:55,789.789 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 19:17:57,819.819 INFO    ] ================================================
[2026-06-12 19:17:57,828.828 INFO    ] Launching Daemon at Fri Jun 12 19:17:57 IST 2026
[2026-06-12 19:17:57,834.834 INFO    ] ================================================
[2026-06-12 19:17:58,135.135 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 19:17:58
[2026-06-12 19:17:58,447.447 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 19:17:58,589.589 INFO    ] Initializing speech engine...
[2026-06-12 19:17:58,594.594 INFO    ] 2026-06-12 19:17:58
[2026-06-12 19:17:58,795.795 INFO    ] 2026-06-12 19:17:58
[2026-06-12 19:17:58,824.824 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 19:17:59,006.006 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 19:17:59,015.015 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 19:17:59,149.149 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 19:17:59,210.210 INFO    ] time= 12/06/2026 19:17:59
[2026-06-12 19:17:59,233.233 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 19:17:59,240.240 INFO    ] Checking for existing commands in stream...
[2026-06-12 19:17:59,307.307 INFO    ] No existing commands found in stream
[2026-06-12 19:18:04,321.321 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 19:18:04,323.323 INFO    ] Waiting 1.21 seconds before fallback handling...
[2026-06-12 19:18:05,904.904 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 19:18:05,905.905 INFO    ] Checking for system updates...
[2026-06-12 19:18:05,927.927 INFO    ] 200
[2026-06-12 19:18:05,928.928 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:18:05,958.958 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 19:18:05,959.959 INFO    ] No update needed
[2026-06-12 19:18:05,960.960 INFO    ] Checking for camera pi updates...
[2026-06-12 19:18:05,981.981 INFO    ] 200
[2026-06-12 19:18:05,982.982 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:18:06,005.005 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 19:18:06,058.058 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 19:18:06,060.060 INFO    ] No camera update needed
[2026-06-12 19:18:06,061.061 INFO    ] Script finished. Safe exiting...
[2026-06-12 19:18:06,062.062 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 19:18:06,065.065 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 19:18:06,068.068 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 19:18:08,107.107 INFO    ] ================================================
[2026-06-12 19:18:08,122.122 INFO    ] Launching Daemon at Fri Jun 12 19:18:08 IST 2026
[2026-06-12 19:18:08,133.133 INFO    ] ================================================
[2026-06-12 19:18:08,481.481 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 19:18:08
[2026-06-12 19:18:08,819.819 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 19:18:08,966.966 INFO    ] Initializing speech engine...
[2026-06-12 19:18:08,976.976 INFO    ] 2026-06-12 19:18:08
[2026-06-12 19:18:09,186.186 INFO    ] 2026-06-12 19:18:09
[2026-06-12 19:18:09,216.216 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 19:18:09,404.404 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 19:18:09,413.413 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 19:18:09,554.554 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 19:18:09,613.613 INFO    ] time= 12/06/2026 19:18:09
[2026-06-12 19:18:09,636.636 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 19:18:09,643.643 INFO    ] Checking for existing commands in stream...
[2026-06-12 19:18:09,711.711 INFO    ] No existing commands found in stream
[2026-06-12 19:18:14,725.725 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 19:18:14,728.728 INFO    ] Waiting 3.90 seconds before fallback handling...
[2026-06-12 19:18:19,093.093 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 19:18:19,095.095 INFO    ] Checking for system updates...
[2026-06-12 19:18:19,116.116 INFO    ] 200
[2026-06-12 19:18:19,117.117 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:18:19,147.147 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 19:18:19,149.149 INFO    ] No update needed
[2026-06-12 19:18:19,151.151 INFO    ] Checking for camera pi updates...
[2026-06-12 19:18:19,170.170 INFO    ] 200
[2026-06-12 19:18:19,172.172 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:18:19,195.195 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 19:18:19,247.247 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 19:18:19,248.248 INFO    ] No camera update needed
[2026-06-12 19:18:19,250.250 INFO    ] Script finished. Safe exiting...
[2026-06-12 19:18:19,251.251 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 19:18:19,255.255 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 19:18:19,258.258 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 19:18:21,296.296 INFO    ] ================================================
[2026-06-12 19:18:21,311.311 INFO    ] Launching Daemon at Fri Jun 12 19:18:21 IST 2026
[2026-06-12 19:18:21,321.321 INFO    ] ================================================
[2026-06-12 19:18:21,668.668 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 19:18:21
[2026-06-12 19:18:21,979.979 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 19:18:22,121.121 INFO    ] Initializing speech engine...
[2026-06-12 19:18:22,126.126 INFO    ] 2026-06-12 19:18:22
[2026-06-12 19:18:22,327.327 INFO    ] 2026-06-12 19:18:22
[2026-06-12 19:18:22,356.356 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 19:18:22,540.540 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 19:18:22,550.550 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 19:18:22,698.698 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 19:18:22,746.746 INFO    ] time= 12/06/2026 19:18:22
[2026-06-12 19:18:22,768.768 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 19:18:22,774.774 INFO    ] Checking for existing commands in stream...
[2026-06-12 19:18:22,840.840 INFO    ] No existing commands found in stream
[2026-06-12 19:18:27,849.849 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 19:18:27,852.852 INFO    ] Waiting 1.11 seconds before fallback handling...
[2026-06-12 19:18:29,322.322 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 19:18:29,323.323 INFO    ] Checking for system updates...
[2026-06-12 19:18:29,344.344 INFO    ] 200
[2026-06-12 19:18:29,350.350 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:18:29,391.391 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 19:18:29,393.393 INFO    ] No update needed
[2026-06-12 19:18:29,394.394 INFO    ] Checking for camera pi updates...
[2026-06-12 19:18:29,413.413 INFO    ] 200
[2026-06-12 19:18:29,414.414 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:18:29,437.437 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 19:18:29,482.482 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 19:18:29,483.483 INFO    ] No camera update needed
[2026-06-12 19:18:29,484.484 INFO    ] Script finished. Safe exiting...
[2026-06-12 19:18:29,486.486 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 19:18:29,489.489 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 19:18:29,491.491 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 19:18:31,523.523 INFO    ] ================================================
[2026-06-12 19:18:31,533.533 INFO    ] Launching Daemon at Fri Jun 12 19:18:31 IST 2026
[2026-06-12 19:18:31,539.539 INFO    ] ================================================
[2026-06-12 19:18:31,867.867 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 19:18:31
[2026-06-12 19:18:32,200.200 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 19:18:32,331.331 INFO    ] Initializing speech engine...
[2026-06-12 19:18:32,334.334 INFO    ] 2026-06-12 19:18:32
[2026-06-12 19:18:32,551.551 INFO    ] 2026-06-12 19:18:32
[2026-06-12 19:18:32,581.581 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 19:18:32,721.721 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 19:18:32,769.769 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 19:18:32,907.907 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 19:18:32,971.971 INFO    ] time= 12/06/2026 19:18:32
[2026-06-12 19:18:32,996.996 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 19:18:32,997.997 INFO    ] Checking for existing commands in stream...
[2026-06-12 19:18:33,065.065 INFO    ] No existing commands found in stream
[2026-06-12 19:18:38,082.082 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 19:18:38,084.084 INFO    ] Waiting 3.24 seconds before fallback handling...
[2026-06-12 19:18:41,710.710 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 19:18:41,711.711 INFO    ] Checking for system updates...
[2026-06-12 19:18:41,731.731 INFO    ] 200
[2026-06-12 19:18:41,733.733 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:18:41,765.765 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 19:18:41,766.766 INFO    ] No update needed
[2026-06-12 19:18:41,767.767 INFO    ] Checking for camera pi updates...
[2026-06-12 19:18:41,786.786 INFO    ] 200
[2026-06-12 19:18:41,788.788 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:18:41,814.814 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 19:18:41,862.862 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 19:18:41,863.863 INFO    ] No camera update needed
[2026-06-12 19:18:41,864.864 INFO    ] Script finished. Safe exiting...
[2026-06-12 19:18:41,865.865 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 19:18:41,868.868 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 19:18:41,871.871 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 19:18:43,913.913 INFO    ] ================================================
[2026-06-12 19:18:43,929.929 INFO    ] Launching Daemon at Fri Jun 12 19:18:43 IST 2026
[2026-06-12 19:18:43,941.941 INFO    ] ================================================
[2026-06-12 19:18:44,312.312 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 19:18:44
[2026-06-12 19:18:44,633.633 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 19:18:44,776.776 INFO    ] Initializing speech engine...
[2026-06-12 19:18:44,781.781 INFO    ] 2026-06-12 19:18:44
[2026-06-12 19:18:44,986.986 INFO    ] 2026-06-12 19:18:44
[2026-06-12 19:18:45,015.015 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 19:18:45,200.200 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 19:18:45,208.208 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 19:18:45,348.348 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 19:18:45,407.407 INFO    ] time= 12/06/2026 19:18:45
[2026-06-12 19:18:45,428.428 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 19:18:45,435.435 INFO    ] Checking for existing commands in stream...
[2026-06-12 19:18:45,501.501 INFO    ] No existing commands found in stream
[2026-06-12 19:18:50,521.521 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 19:18:50,524.524 INFO    ] Waiting 0.02 seconds before fallback handling...
[2026-06-12 19:18:50,907.907 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 19:18:50,909.909 INFO    ] Checking for system updates...
[2026-06-12 19:18:50,930.930 INFO    ] 200
[2026-06-12 19:18:50,931.931 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:18:50,961.961 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 19:18:50,963.963 INFO    ] No update needed
[2026-06-12 19:18:50,964.964 INFO    ] Checking for camera pi updates...
[2026-06-12 19:18:50,984.984 INFO    ] 200
[2026-06-12 19:18:50,985.985 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:18:51,008.008 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 19:18:51,147.147 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 19:18:51,148.148 INFO    ] No camera update needed
[2026-06-12 19:18:51,150.150 INFO    ] Script finished. Safe exiting...
[2026-06-12 19:18:51,151.151 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 19:18:51,155.155 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 19:18:51,158.158 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 19:18:53,197.197 INFO    ] ================================================
[2026-06-12 19:18:53,213.213 INFO    ] Launching Daemon at Fri Jun 12 19:18:53 IST 2026
[2026-06-12 19:18:53,224.224 INFO    ] ================================================
[2026-06-12 19:18:53,589.589 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 19:18:53
[2026-06-12 19:18:53,902.902 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 19:18:54,043.043 INFO    ] Initializing speech engine...
[2026-06-12 19:18:54,048.048 INFO    ] 2026-06-12 19:18:54
[2026-06-12 19:18:54,252.252 INFO    ] 2026-06-12 19:18:54
[2026-06-12 19:18:54,280.280 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 19:18:54,423.423 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 19:18:54,470.470 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 19:18:54,623.623 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 19:18:54,677.677 INFO    ] time= 12/06/2026 19:18:54
[2026-06-12 19:18:54,698.698 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 19:18:54,705.705 INFO    ] Checking for existing commands in stream...
[2026-06-12 19:18:54,772.772 INFO    ] No existing commands found in stream
[2026-06-12 19:18:59,796.796 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 19:18:59,799.799 INFO    ] Waiting 0.32 seconds before fallback handling...
[2026-06-12 19:19:00,499.499 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 19:19:00,501.501 INFO    ] Checking for system updates...
[2026-06-12 19:19:00,522.522 INFO    ] 200
[2026-06-12 19:19:00,523.523 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:19:00,556.556 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 19:19:00,557.557 INFO    ] No update needed
[2026-06-12 19:19:00,559.559 INFO    ] Checking for camera pi updates...
[2026-06-12 19:19:00,582.582 INFO    ] 200
[2026-06-12 19:19:00,583.583 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:19:00,609.609 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 19:19:00,655.655 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 19:19:00,657.657 INFO    ] No camera update needed
[2026-06-12 19:19:00,659.659 INFO    ] Script finished. Safe exiting...
[2026-06-12 19:19:00,661.661 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 19:19:00,664.664 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 19:19:00,667.667 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 19:19:02,691.691 INFO    ] ================================================
[2026-06-12 19:19:02,700.700 INFO    ] Launching Daemon at Fri Jun 12 19:19:02 IST 2026
[2026-06-12 19:19:02,706.706 INFO    ] ================================================
[2026-06-12 19:19:03,054.054 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 19:19:03
[2026-06-12 19:19:03,392.392 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 19:19:03,542.542 INFO    ] Initializing speech engine...
[2026-06-12 19:19:03,548.548 INFO    ] 2026-06-12 19:19:03
[2026-06-12 19:19:03,755.755 INFO    ] 2026-06-12 19:19:03
[2026-06-12 19:19:03,784.784 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 19:19:03,967.967 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 19:19:03,977.977 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 19:19:04,122.122 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 19:19:04,175.175 INFO    ] time= 12/06/2026 19:19:04
[2026-06-12 19:19:04,198.198 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 19:19:04,204.204 INFO    ] Checking for existing commands in stream...
[2026-06-12 19:19:04,272.272 INFO    ] No existing commands found in stream
[2026-06-12 19:19:09,291.291 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 19:19:09,294.294 INFO    ] Waiting 1.32 seconds before fallback handling...
[2026-06-12 19:19:11,061.061 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 19:19:11,062.062 INFO    ] Checking for system updates...
[2026-06-12 19:19:11,085.085 INFO    ] 200
[2026-06-12 19:19:11,086.086 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:19:11,118.118 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 19:19:11,120.120 INFO    ] No update needed
[2026-06-12 19:19:11,121.121 INFO    ] Checking for camera pi updates...
[2026-06-12 19:19:11,142.142 INFO    ] 200
[2026-06-12 19:19:11,143.143 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:19:11,169.169 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 19:19:11,214.214 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 19:19:11,215.215 INFO    ] No camera update needed
[2026-06-12 19:19:11,216.216 INFO    ] Script finished. Safe exiting...
[2026-06-12 19:19:11,218.218 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 19:19:11,221.221 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 19:19:11,224.224 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 19:19:13,264.264 INFO    ] ================================================
[2026-06-12 19:19:13,280.280 INFO    ] Launching Daemon at Fri Jun 12 19:19:13 IST 2026
[2026-06-12 19:19:13,291.291 INFO    ] ================================================
[2026-06-12 19:19:13,650.650 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 19:19:13
[2026-06-12 19:19:13,968.968 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 19:19:14,111.111 INFO    ] Initializing speech engine...
[2026-06-12 19:19:14,115.115 INFO    ] 2026-06-12 19:19:14
[2026-06-12 19:19:14,320.320 INFO    ] 2026-06-12 19:19:14
[2026-06-12 19:19:14,347.347 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 19:19:14,539.539 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 19:19:14,555.555 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 19:19:14,735.735 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 19:19:14,758.758 INFO    ] time= 12/06/2026 19:19:14
[2026-06-12 19:19:14,764.764 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 19:19:14,766.766 INFO    ] Checking for existing commands in stream...
[2026-06-12 19:19:14,833.833 INFO    ] No existing commands found in stream
[2026-06-12 19:19:19,847.847 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 19:19:19,849.849 INFO    ] Waiting 1.62 seconds before fallback handling...
[2026-06-12 19:19:21,868.868 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 19:19:21,870.870 INFO    ] Checking for system updates...
[2026-06-12 19:19:21,891.891 INFO    ] 200
[2026-06-12 19:19:21,892.892 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:19:21,928.928 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 19:19:21,929.929 INFO    ] No update needed
[2026-06-12 19:19:21,931.931 INFO    ] Checking for camera pi updates...
[2026-06-12 19:19:21,950.950 INFO    ] 200
[2026-06-12 19:19:21,951.951 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:19:21,974.974 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 19:19:22,021.021 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 19:19:22,023.023 INFO    ] No camera update needed
[2026-06-12 19:19:22,024.024 INFO    ] Script finished. Safe exiting...
[2026-06-12 19:19:22,025.025 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 19:19:22,028.028 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 19:19:22,031.031 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 19:19:24,070.070 INFO    ] ================================================
[2026-06-12 19:19:24,086.086 INFO    ] Launching Daemon at Fri Jun 12 19:19:24 IST 2026
[2026-06-12 19:19:24,097.097 INFO    ] ================================================
[2026-06-12 19:19:24,434.434 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 19:19:24
[2026-06-12 19:19:24,752.752 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 19:19:24,896.896 INFO    ] Initializing speech engine...
[2026-06-12 19:19:24,902.902 INFO    ] 2026-06-12 19:19:24
[2026-06-12 19:19:25,103.103 INFO    ] 2026-06-12 19:19:25
[2026-06-12 19:19:25,132.132 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 19:19:25,316.316 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 19:19:25,326.326 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 19:19:25,468.468 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 19:19:25,520.520 INFO    ] time= 12/06/2026 19:19:25
[2026-06-12 19:19:25,544.544 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 19:19:25,549.549 INFO    ] Checking for existing commands in stream...
[2026-06-12 19:19:25,616.616 INFO    ] No existing commands found in stream
[2026-06-12 19:19:30,625.625 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 19:19:30,628.628 INFO    ] Waiting 3.10 seconds before fallback handling...
[2026-06-12 19:19:34,151.151 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 19:19:34,153.153 INFO    ] Checking for system updates...
[2026-06-12 19:19:34,174.174 INFO    ] 200
[2026-06-12 19:19:34,176.176 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:19:34,207.207 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 19:19:34,209.209 INFO    ] No update needed
[2026-06-12 19:19:34,210.210 INFO    ] Checking for camera pi updates...
[2026-06-12 19:19:34,229.229 INFO    ] 200
[2026-06-12 19:19:34,230.230 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:19:34,255.255 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 19:19:34,309.309 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 19:19:34,311.311 INFO    ] No camera update needed
[2026-06-12 19:19:34,312.312 INFO    ] Script finished. Safe exiting...
[2026-06-12 19:19:34,313.313 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 19:19:34,316.316 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 19:19:34,319.319 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 19:19:36,358.358 INFO    ] ================================================
[2026-06-12 19:19:36,374.374 INFO    ] Launching Daemon at Fri Jun 12 19:19:36 IST 2026
[2026-06-12 19:19:36,385.385 INFO    ] ================================================
[2026-06-12 19:19:36,715.715 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 19:19:36
[2026-06-12 19:19:37,027.027 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 19:19:37,158.158 INFO    ] Initializing speech engine...
[2026-06-12 19:19:37,168.168 INFO    ] 2026-06-12 19:19:37
[2026-06-12 19:19:37,389.389 INFO    ] 2026-06-12 19:19:37
[2026-06-12 19:19:37,420.420 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 19:19:37,551.551 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 19:19:37,618.618 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 19:19:37,758.758 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 19:19:37,804.804 INFO    ] time= 12/06/2026 19:19:37
[2026-06-12 19:19:37,848.848 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 19:19:37,865.865 INFO    ] Checking for existing commands in stream...
[2026-06-12 19:19:37,967.967 INFO    ] No existing commands found in stream
[2026-06-12 19:19:42,975.975 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 19:19:42,976.976 INFO    ] Waiting 3.70 seconds before fallback handling...
[2026-06-12 19:19:47,083.083 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 19:19:47,084.084 INFO    ] Checking for system updates...
[2026-06-12 19:19:47,109.109 INFO    ] 200
[2026-06-12 19:19:47,111.111 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:19:47,142.142 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 19:19:47,144.144 INFO    ] No update needed
[2026-06-12 19:19:47,145.145 INFO    ] Checking for camera pi updates...
[2026-06-12 19:19:47,167.167 INFO    ] 200
[2026-06-12 19:19:47,168.168 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:19:47,192.192 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 19:19:47,239.239 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 19:19:47,241.241 INFO    ] No camera update needed
[2026-06-12 19:19:47,242.242 INFO    ] Script finished. Safe exiting...
[2026-06-12 19:19:47,243.243 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 19:19:47,246.246 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 19:19:47,249.249 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 19:19:49,287.287 INFO    ] ================================================
[2026-06-12 19:19:49,302.302 INFO    ] Launching Daemon at Fri Jun 12 19:19:49 IST 2026
[2026-06-12 19:19:49,314.314 INFO    ] ================================================
[2026-06-12 19:19:49,638.638 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 19:19:49
[2026-06-12 19:19:49,950.950 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 19:19:50,089.089 INFO    ] Initializing speech engine...
[2026-06-12 19:19:50,098.098 INFO    ] 2026-06-12 19:19:50
[2026-06-12 19:19:50,301.301 INFO    ] 2026-06-12 19:19:50
[2026-06-12 19:19:50,330.330 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 19:19:50,514.514 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 19:19:50,522.522 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 19:19:50,666.666 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 19:19:50,717.717 INFO    ] time= 12/06/2026 19:19:50
[2026-06-12 19:19:50,741.741 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 19:19:50,747.747 INFO    ] Checking for existing commands in stream...
[2026-06-12 19:19:50,816.816 INFO    ] No existing commands found in stream
[2026-06-12 19:19:55,830.830 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 19:19:55,832.832 INFO    ] Waiting 3.74 seconds before fallback handling...
[2026-06-12 19:19:59,939.939 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 19:19:59,941.941 INFO    ] Checking for system updates...
[2026-06-12 19:19:59,961.961 INFO    ] 200
[2026-06-12 19:19:59,963.963 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:19:59,992.992 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 19:19:59,994.994 INFO    ] No update needed
[2026-06-12 19:19:59,995.995 INFO    ] Checking for camera pi updates...
[2026-06-12 19:20:00,014.014 INFO    ] 200
[2026-06-12 19:20:00,015.015 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:20:00,038.038 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 19:20:00,085.085 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 19:20:00,086.086 INFO    ] No camera update needed
[2026-06-12 19:20:00,087.087 INFO    ] Script finished. Safe exiting...
[2026-06-12 19:20:00,089.089 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 19:20:00,092.092 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 19:20:00,094.094 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 19:20:02,132.132 INFO    ] ================================================
[2026-06-12 19:20:02,147.147 INFO    ] Launching Daemon at Fri Jun 12 19:20:02 IST 2026
[2026-06-12 19:20:02,158.158 INFO    ] ================================================
[2026-06-12 19:20:02,555.555 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 19:20:02
[2026-06-12 19:20:02,936.936 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 19:20:03,075.075 INFO    ] Initializing speech engine...
[2026-06-12 19:20:03,082.082 INFO    ] 2026-06-12 19:20:03
[2026-06-12 19:20:03,294.294 INFO    ] 2026-06-12 19:20:03
[2026-06-12 19:20:03,323.323 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 19:20:03,455.455 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 19:20:03,507.507 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 19:20:03,635.635 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 19:20:03,696.696 INFO    ] time= 12/06/2026 19:20:03
[2026-06-12 19:20:03,732.732 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 19:20:03,734.734 INFO    ] Checking for existing commands in stream...
[2026-06-12 19:20:03,805.805 INFO    ] No existing commands found in stream
[2026-06-12 19:20:08,813.813 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 19:20:08,815.815 INFO    ] Waiting 2.03 seconds before fallback handling...
[2026-06-12 19:20:11,238.238 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 19:20:11,239.239 INFO    ] Checking for system updates...
[2026-06-12 19:20:11,260.260 INFO    ] 200
[2026-06-12 19:20:11,261.261 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:20:11,293.293 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 19:20:11,294.294 INFO    ] No update needed
[2026-06-12 19:20:11,296.296 INFO    ] Checking for camera pi updates...
[2026-06-12 19:20:11,315.315 INFO    ] 200
[2026-06-12 19:20:11,317.317 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:20:11,340.340 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 19:20:11,380.380 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 19:20:11,381.381 INFO    ] No camera update needed
[2026-06-12 19:20:11,383.383 INFO    ] Script finished. Safe exiting...
[2026-06-12 19:20:11,384.384 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 19:20:11,387.387 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 19:20:11,390.390 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 19:20:13,429.429 INFO    ] ================================================
[2026-06-12 19:20:13,444.444 INFO    ] Launching Daemon at Fri Jun 12 19:20:13 IST 2026
[2026-06-12 19:20:13,456.456 INFO    ] ================================================
[2026-06-12 19:20:13,832.832 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 19:20:13
[2026-06-12 19:20:14,168.168 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 19:20:14,318.318 INFO    ] Initializing speech engine...
[2026-06-12 19:20:14,324.324 INFO    ] 2026-06-12 19:20:14
[2026-06-12 19:20:14,533.533 INFO    ] 2026-06-12 19:20:14
[2026-06-12 19:20:14,562.562 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 19:20:14,694.694 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 19:20:14,748.748 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 19:20:14,886.886 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 19:20:14,954.954 INFO    ] time= 12/06/2026 19:20:14
[2026-06-12 19:20:14,978.978 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 19:20:14,985.985 INFO    ] Checking for existing commands in stream...
[2026-06-12 19:20:15,052.052 INFO    ] No existing commands found in stream
[2026-06-12 19:20:20,067.067 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 19:20:20,070.070 INFO    ] Waiting 2.82 seconds before fallback handling...
[2026-06-12 19:20:23,309.309 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 19:20:23,311.311 INFO    ] Checking for system updates...
[2026-06-12 19:20:23,332.332 INFO    ] 200
[2026-06-12 19:20:23,333.333 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:20:23,364.364 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 19:20:23,365.365 INFO    ] No update needed
[2026-06-12 19:20:23,367.367 INFO    ] Checking for camera pi updates...
[2026-06-12 19:20:23,386.386 INFO    ] 200
[2026-06-12 19:20:23,387.387 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:20:23,411.411 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 19:20:23,459.459 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 19:20:23,460.460 INFO    ] No camera update needed
[2026-06-12 19:20:23,462.462 INFO    ] Script finished. Safe exiting...
[2026-06-12 19:20:23,463.463 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 19:20:23,466.466 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 19:20:23,469.469 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 19:20:25,509.509 INFO    ] ================================================
[2026-06-12 19:20:25,525.525 INFO    ] Launching Daemon at Fri Jun 12 19:20:25 IST 2026
[2026-06-12 19:20:25,537.537 INFO    ] ================================================
[2026-06-12 19:20:25,875.875 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 19:20:25
[2026-06-12 19:20:26,193.193 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 19:20:26,337.337 INFO    ] Initializing speech engine...
[2026-06-12 19:20:26,342.342 INFO    ] 2026-06-12 19:20:26
[2026-06-12 19:20:26,547.547 INFO    ] 2026-06-12 19:20:26
[2026-06-12 19:20:26,576.576 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 19:20:26,760.760 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 19:20:26,768.768 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 19:20:26,898.898 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 19:20:26,965.965 INFO    ] time= 12/06/2026 19:20:26
[2026-06-12 19:20:26,989.989 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 19:20:26,995.995 INFO    ] Checking for existing commands in stream...
[2026-06-12 19:20:27,062.062 INFO    ] No existing commands found in stream
[2026-06-12 19:20:32,081.081 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 19:20:32,083.083 INFO    ] Waiting 0.53 seconds before fallback handling...
[2026-06-12 19:20:33,023.023 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 19:20:33,025.025 INFO    ] Checking for system updates...
[2026-06-12 19:20:33,047.047 INFO    ] 200
[2026-06-12 19:20:33,048.048 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:20:33,078.078 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 19:20:33,079.079 INFO    ] No update needed
[2026-06-12 19:20:33,081.081 INFO    ] Checking for camera pi updates...
[2026-06-12 19:20:33,101.101 INFO    ] 200
[2026-06-12 19:20:33,102.102 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:20:33,127.127 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 19:20:33,170.170 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 19:20:33,171.171 INFO    ] No camera update needed
[2026-06-12 19:20:33,173.173 INFO    ] Script finished. Safe exiting...
[2026-06-12 19:20:33,174.174 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 19:20:33,177.177 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 19:20:33,180.180 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 19:20:35,219.219 INFO    ] ================================================
[2026-06-12 19:20:35,235.235 INFO    ] Launching Daemon at Fri Jun 12 19:20:35 IST 2026
[2026-06-12 19:20:35,246.246 INFO    ] ================================================
[2026-06-12 19:20:35,582.582 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 19:20:35
[2026-06-12 19:20:35,901.901 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 19:20:36,033.033 INFO    ] Initializing speech engine...
[2026-06-12 19:20:36,046.046 INFO    ] 2026-06-12 19:20:36
[2026-06-12 19:20:36,252.252 INFO    ] 2026-06-12 19:20:36
[2026-06-12 19:20:36,282.282 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 19:20:36,464.464 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 19:20:36,471.471 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 19:20:36,628.628 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 19:20:36,677.677 INFO    ] time= 12/06/2026 19:20:36
[2026-06-12 19:20:36,698.698 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 19:20:36,704.704 INFO    ] Checking for existing commands in stream...
[2026-06-12 19:20:36,771.771 INFO    ] No existing commands found in stream
[2026-06-12 19:20:41,795.795 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 19:20:41,798.798 INFO    ] Waiting 2.88 seconds before fallback handling...
[2026-06-12 19:20:45,043.043 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 19:20:45,045.045 INFO    ] Checking for system updates...
[2026-06-12 19:20:45,067.067 INFO    ] 200
[2026-06-12 19:20:45,069.069 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:20:45,102.102 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 19:20:45,103.103 INFO    ] No update needed
[2026-06-12 19:20:45,105.105 INFO    ] Checking for camera pi updates...
[2026-06-12 19:20:45,124.124 INFO    ] 200
[2026-06-12 19:20:45,126.126 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:20:45,149.149 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 19:20:45,205.205 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 19:20:45,207.207 INFO    ] No camera update needed
[2026-06-12 19:20:45,208.208 INFO    ] Script finished. Safe exiting...
[2026-06-12 19:20:45,210.210 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 19:20:45,213.213 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 19:20:45,216.216 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 19:20:47,257.257 INFO    ] ================================================
[2026-06-12 19:20:47,272.272 INFO    ] Launching Daemon at Fri Jun 12 19:20:47 IST 2026
[2026-06-12 19:20:47,284.284 INFO    ] ================================================
[2026-06-12 19:20:47,621.621 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 19:20:47
[2026-06-12 19:20:47,941.941 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 19:20:48,085.085 INFO    ] Initializing speech engine...
[2026-06-12 19:20:48,093.093 INFO    ] 2026-06-12 19:20:48
[2026-06-12 19:20:48,313.313 INFO    ] 2026-06-12 19:20:48
[2026-06-12 19:20:48,343.343 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 19:20:48,543.543 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 19:20:48,552.552 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 19:20:48,694.694 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 19:20:48,765.765 INFO    ] time= 12/06/2026 19:20:48
[2026-06-12 19:20:48,791.791 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 19:20:48,793.793 INFO    ] Checking for existing commands in stream...
[2026-06-12 19:20:48,870.870 INFO    ] No existing commands found in stream
[2026-06-12 19:20:53,879.879 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 19:20:53,882.882 INFO    ] Waiting 3.97 seconds before fallback handling...
[2026-06-12 19:20:58,277.277 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 19:20:58,279.279 INFO    ] Checking for system updates...
[2026-06-12 19:20:58,300.300 INFO    ] 200
[2026-06-12 19:20:58,302.302 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:20:58,331.331 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 19:20:58,333.333 INFO    ] No update needed
[2026-06-12 19:20:58,334.334 INFO    ] Checking for camera pi updates...
[2026-06-12 19:20:58,354.354 INFO    ] 200
[2026-06-12 19:20:58,355.355 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:20:58,380.380 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 19:20:58,523.523 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 19:20:58,524.524 INFO    ] No camera update needed
[2026-06-12 19:20:58,526.526 INFO    ] Script finished. Safe exiting...
[2026-06-12 19:20:58,527.527 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 19:20:58,530.530 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 19:20:58,533.533 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 19:21:00,563.563 INFO    ] ================================================
[2026-06-12 19:21:00,572.572 INFO    ] Launching Daemon at Fri Jun 12 19:21:00 IST 2026
[2026-06-12 19:21:00,578.578 INFO    ] ================================================
[2026-06-12 19:21:00,880.880 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 19:21:00
[2026-06-12 19:21:01,310.310 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 19:21:01,582.582 INFO    ] Initializing speech engine...
[2026-06-12 19:21:01,590.590 INFO    ] 2026-06-12 19:21:01
[2026-06-12 19:21:01,913.913 INFO    ] 2026-06-12 19:21:01
[2026-06-12 19:21:01,983.983 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 19:21:02,126.126 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 19:21:02,171.171 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 19:21:02,312.312 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 19:21:02,314.314 INFO    ] time= 12/06/2026 19:21:02
[2026-06-12 19:21:02,315.315 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 19:21:02,317.317 INFO    ] Checking for existing commands in stream...
[2026-06-12 19:21:02,382.382 INFO    ] No existing commands found in stream
[2026-06-12 19:21:07,391.391 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 19:21:07,393.393 INFO    ] Waiting 3.58 seconds before fallback handling...
[2026-06-12 19:21:11,686.686 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 19:21:11,687.687 INFO    ] Checking for system updates...
[2026-06-12 19:21:11,708.708 INFO    ] 200
[2026-06-12 19:21:11,710.710 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:21:11,740.740 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 19:21:11,741.741 INFO    ] No update needed
[2026-06-12 19:21:11,743.743 INFO    ] Checking for camera pi updates...
[2026-06-12 19:21:11,764.764 INFO    ] 200
[2026-06-12 19:21:11,765.765 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:21:11,788.788 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 19:21:11,833.833 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 19:21:11,834.834 INFO    ] No camera update needed
[2026-06-12 19:21:11,835.835 INFO    ] Script finished. Safe exiting...
[2026-06-12 19:21:11,837.837 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 19:21:11,840.840 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 19:21:11,843.843 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 19:21:13,881.881 INFO    ] ================================================
[2026-06-12 19:21:13,897.897 INFO    ] Launching Daemon at Fri Jun 12 19:21:13 IST 2026
[2026-06-12 19:21:13,908.908 INFO    ] ================================================
[2026-06-12 19:21:14,270.270 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 19:21:14
[2026-06-12 19:21:14,581.581 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 19:21:14,710.710 INFO    ] Initializing speech engine...
[2026-06-12 19:21:14,715.715 INFO    ] 2026-06-12 19:21:14
[2026-06-12 19:21:14,934.934 INFO    ] 2026-06-12 19:21:14
[2026-06-12 19:21:14,965.965 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 19:21:15,152.152 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 19:21:15,160.160 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 19:21:15,291.291 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 19:21:15,359.359 INFO    ] time= 12/06/2026 19:21:15
[2026-06-12 19:21:15,383.383 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 19:21:15,390.390 INFO    ] Checking for existing commands in stream...
[2026-06-12 19:21:15,482.482 INFO    ] No existing commands found in stream
[2026-06-12 19:21:20,496.496 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 19:21:20,498.498 INFO    ] Waiting 0.79 seconds before fallback handling...
[2026-06-12 19:21:21,662.662 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 19:21:21,664.664 INFO    ] Checking for system updates...
[2026-06-12 19:21:21,684.684 INFO    ] 200
[2026-06-12 19:21:21,686.686 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:21:21,717.717 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 19:21:21,718.718 INFO    ] No update needed
[2026-06-12 19:21:21,720.720 INFO    ] Checking for camera pi updates...
[2026-06-12 19:21:21,740.740 INFO    ] 200
[2026-06-12 19:21:21,742.742 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:21:21,765.765 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 19:21:21,819.819 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 19:21:21,821.821 INFO    ] No camera update needed
[2026-06-12 19:21:21,822.822 INFO    ] Script finished. Safe exiting...
[2026-06-12 19:21:21,823.823 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 19:21:21,826.826 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 19:21:21,830.830 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 19:21:23,862.862 INFO    ] ================================================
[2026-06-12 19:21:23,878.878 INFO    ] Launching Daemon at Fri Jun 12 19:21:23 IST 2026
[2026-06-12 19:21:23,889.889 INFO    ] ================================================
[2026-06-12 19:21:24,268.268 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 19:21:24
[2026-06-12 19:21:24,604.604 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 19:21:24,755.755 INFO    ] Initializing speech engine...
[2026-06-12 19:21:24,761.761 INFO    ] 2026-06-12 19:21:24
[2026-06-12 19:21:24,971.971 INFO    ] 2026-06-12 19:21:24
[2026-06-12 19:21:25,001.001 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 19:21:25,132.132 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 19:21:25,191.191 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 19:21:25,337.337 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 19:21:25,399.399 INFO    ] time= 12/06/2026 19:21:25
[2026-06-12 19:21:25,424.424 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 19:21:25,430.430 INFO    ] Checking for existing commands in stream...
[2026-06-12 19:21:25,498.498 INFO    ] No existing commands found in stream
[2026-06-12 19:21:30,502.502 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 19:21:30,505.505 INFO    ] Waiting 2.55 seconds before fallback handling...
[2026-06-12 19:21:33,480.480 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 19:21:33,481.481 INFO    ] Checking for system updates...
[2026-06-12 19:21:33,503.503 INFO    ] 200
[2026-06-12 19:21:33,505.505 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:21:33,536.536 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 19:21:33,538.538 INFO    ] No update needed
[2026-06-12 19:21:33,539.539 INFO    ] Checking for camera pi updates...
[2026-06-12 19:21:33,558.558 INFO    ] 200
[2026-06-12 19:21:33,560.560 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:21:33,585.585 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 19:21:33,641.641 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 19:21:33,642.642 INFO    ] No camera update needed
[2026-06-12 19:21:33,644.644 INFO    ] Script finished. Safe exiting...
[2026-06-12 19:21:33,645.645 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 19:21:33,648.648 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 19:21:33,652.652 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 19:21:35,691.691 INFO    ] ================================================
[2026-06-12 19:21:35,707.707 INFO    ] Launching Daemon at Fri Jun 12 19:21:35 IST 2026
[2026-06-12 19:21:35,718.718 INFO    ] ================================================
[2026-06-12 19:21:36,077.077 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 19:21:36
[2026-06-12 19:21:36,387.387 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 19:21:36,529.529 INFO    ] Initializing speech engine...
[2026-06-12 19:21:36,534.534 INFO    ] 2026-06-12 19:21:36
[2026-06-12 19:21:36,738.738 INFO    ] 2026-06-12 19:21:36
[2026-06-12 19:21:36,767.767 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 19:21:36,948.948 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 19:21:36,958.958 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 19:21:37,076.076 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 19:21:37,078.078 INFO    ] time= 12/06/2026 19:21:37
[2026-06-12 19:21:37,084.084 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 19:21:37,146.146 INFO    ] Checking for existing commands in stream...
[2026-06-12 19:21:37,251.251 INFO    ] No existing commands found in stream
[2026-06-12 19:21:42,262.262 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 19:21:42,265.265 INFO    ] Waiting 0.66 seconds before fallback handling...
[2026-06-12 19:21:43,280.280 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 19:21:43,281.281 INFO    ] Checking for system updates...
[2026-06-12 19:21:43,302.302 INFO    ] 200
[2026-06-12 19:21:43,304.304 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:21:43,334.334 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 19:21:43,335.335 INFO    ] No update needed
[2026-06-12 19:21:43,337.337 INFO    ] Checking for camera pi updates...
[2026-06-12 19:21:43,356.356 INFO    ] 200
[2026-06-12 19:21:43,357.357 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:21:43,382.382 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 19:21:43,430.430 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 19:21:43,432.432 INFO    ] No camera update needed
[2026-06-12 19:21:43,433.433 INFO    ] Script finished. Safe exiting...
[2026-06-12 19:21:43,435.435 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 19:21:43,438.438 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 19:21:43,441.441 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 19:21:45,480.480 INFO    ] ================================================
[2026-06-12 19:21:45,496.496 INFO    ] Launching Daemon at Fri Jun 12 19:21:45 IST 2026
[2026-06-12 19:21:45,507.507 INFO    ] ================================================
[2026-06-12 19:21:45,833.833 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 19:21:45
[2026-06-12 19:21:46,144.144 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 19:21:46,274.274 INFO    ] Initializing speech engine...
[2026-06-12 19:21:46,277.277 INFO    ] 2026-06-12 19:21:46
[2026-06-12 19:21:46,491.491 INFO    ] 2026-06-12 19:21:46
[2026-06-12 19:21:46,519.519 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 19:21:46,703.703 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 19:21:46,712.712 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 19:21:46,833.833 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 19:21:46,888.888 INFO    ] time= 12/06/2026 19:21:46
[2026-06-12 19:21:46,931.931 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 19:21:46,936.936 INFO    ] Checking for existing commands in stream...
[2026-06-12 19:21:47,004.004 INFO    ] No existing commands found in stream
[2026-06-12 19:21:52,018.018 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 19:21:52,021.021 INFO    ] Waiting 2.09 seconds before fallback handling...
[2026-06-12 19:21:54,478.478 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 19:21:54,480.480 INFO    ] Checking for system updates...
[2026-06-12 19:21:54,500.500 INFO    ] 200
[2026-06-12 19:21:54,502.502 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:21:54,532.532 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 19:21:54,534.534 INFO    ] No update needed
[2026-06-12 19:21:54,535.535 INFO    ] Checking for camera pi updates...
[2026-06-12 19:21:54,555.555 INFO    ] 200
[2026-06-12 19:21:54,556.556 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:21:54,580.580 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 19:21:54,625.625 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 19:21:54,627.627 INFO    ] No camera update needed
[2026-06-12 19:21:54,628.628 INFO    ] Script finished. Safe exiting...
[2026-06-12 19:21:54,629.629 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 19:21:54,633.633 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 19:21:54,636.636 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 19:21:56,673.673 INFO    ] ================================================
[2026-06-12 19:21:56,689.689 INFO    ] Launching Daemon at Fri Jun 12 19:21:56 IST 2026
[2026-06-12 19:21:56,700.700 INFO    ] ================================================
[2026-06-12 19:21:57,066.066 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 19:21:57
[2026-06-12 19:21:57,376.376 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 19:21:57,507.507 INFO    ] Initializing speech engine...
[2026-06-12 19:21:57,514.514 INFO    ] 2026-06-12 19:21:57
[2026-06-12 19:21:57,727.727 INFO    ] 2026-06-12 19:21:57
[2026-06-12 19:21:57,756.756 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 19:21:57,942.942 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 19:21:57,951.951 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 19:21:58,074.074 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 19:21:58,130.130 INFO    ] time= 12/06/2026 19:21:58
[2026-06-12 19:21:58,165.165 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 19:21:58,175.175 INFO    ] Checking for existing commands in stream...
[2026-06-12 19:21:58,247.247 INFO    ] No existing commands found in stream
[2026-06-12 19:22:03,256.256 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 19:22:03,259.259 INFO    ] Waiting 1.09 seconds before fallback handling...
[2026-06-12 19:22:04,741.741 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 19:22:04,742.742 INFO    ] Checking for system updates...
[2026-06-12 19:22:04,764.764 INFO    ] 200
[2026-06-12 19:22:04,765.765 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:22:04,795.795 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 19:22:04,796.796 INFO    ] No update needed
[2026-06-12 19:22:04,798.798 INFO    ] Checking for camera pi updates...
[2026-06-12 19:22:04,818.818 INFO    ] 200
[2026-06-12 19:22:04,819.819 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:22:04,844.844 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 19:22:04,887.887 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 19:22:04,889.889 INFO    ] No camera update needed
[2026-06-12 19:22:04,890.890 INFO    ] Script finished. Safe exiting...
[2026-06-12 19:22:04,892.892 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 19:22:04,895.895 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 19:22:04,897.897 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 19:22:06,935.935 INFO    ] ================================================
[2026-06-12 19:22:06,951.951 INFO    ] Launching Daemon at Fri Jun 12 19:22:06 IST 2026
[2026-06-12 19:22:06,962.962 INFO    ] ================================================
[2026-06-12 19:22:07,324.324 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 19:22:07
[2026-06-12 19:22:07,636.636 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 19:22:07,779.779 INFO    ] Initializing speech engine...
[2026-06-12 19:22:07,783.783 INFO    ] 2026-06-12 19:22:07
[2026-06-12 19:22:07,991.991 INFO    ] 2026-06-12 19:22:07
[2026-06-12 19:22:08,019.019 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 19:22:08,205.205 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 19:22:08,214.214 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 19:22:08,366.366 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 19:22:08,415.415 INFO    ] time= 12/06/2026 19:22:08
[2026-06-12 19:22:08,437.437 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 19:22:08,444.444 INFO    ] Checking for existing commands in stream...
[2026-06-12 19:22:08,511.511 INFO    ] No existing commands found in stream
[2026-06-12 19:22:13,520.520 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 19:22:13,523.523 INFO    ] Waiting 2.34 seconds before fallback handling...
[2026-06-12 19:22:16,236.236 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 19:22:16,238.238 INFO    ] Checking for system updates...
[2026-06-12 19:22:16,258.258 INFO    ] 200
[2026-06-12 19:22:16,260.260 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:22:16,290.290 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 19:22:16,291.291 INFO    ] No update needed
[2026-06-12 19:22:16,292.292 INFO    ] Checking for camera pi updates...
[2026-06-12 19:22:16,313.313 INFO    ] 200
[2026-06-12 19:22:16,315.315 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:22:16,338.338 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 19:22:16,380.380 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 19:22:16,381.381 INFO    ] No camera update needed
[2026-06-12 19:22:16,383.383 INFO    ] Script finished. Safe exiting...
[2026-06-12 19:22:16,384.384 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 19:22:16,387.387 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 19:22:16,390.390 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 19:22:18,428.428 INFO    ] ================================================
[2026-06-12 19:22:18,444.444 INFO    ] Launching Daemon at Fri Jun 12 19:22:18 IST 2026
[2026-06-12 19:22:18,455.455 INFO    ] ================================================
[2026-06-12 19:22:18,778.778 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 19:22:18
[2026-06-12 19:22:19,089.089 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 19:22:19,219.219 INFO    ] Initializing speech engine...
[2026-06-12 19:22:19,227.227 INFO    ] 2026-06-12 19:22:19
[2026-06-12 19:22:19,439.439 INFO    ] 2026-06-12 19:22:19
[2026-06-12 19:22:19,467.467 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 19:22:19,604.604 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 19:22:19,651.651 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 19:22:19,787.787 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 19:22:19,853.853 INFO    ] time= 12/06/2026 19:22:19
[2026-06-12 19:22:19,877.877 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 19:22:19,883.883 INFO    ] Checking for existing commands in stream...
[2026-06-12 19:22:19,950.950 INFO    ] No existing commands found in stream
[2026-06-12 19:22:24,959.959 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 19:22:24,962.962 INFO    ] Waiting 3.74 seconds before fallback handling...
[2026-06-12 19:22:29,084.084 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 19:22:29,086.086 INFO    ] Checking for system updates...
[2026-06-12 19:22:29,106.106 INFO    ] 200
[2026-06-12 19:22:29,108.108 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:22:29,140.140 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 19:22:29,141.141 INFO    ] No update needed
[2026-06-12 19:22:29,143.143 INFO    ] Checking for camera pi updates...
[2026-06-12 19:22:29,162.162 INFO    ] 200
[2026-06-12 19:22:29,163.163 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:22:29,186.186 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 19:22:29,231.231 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 19:22:29,233.233 INFO    ] No camera update needed
[2026-06-12 19:22:29,234.234 INFO    ] Script finished. Safe exiting...
[2026-06-12 19:22:29,235.235 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 19:22:29,238.238 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 19:22:29,241.241 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 19:22:31,279.279 INFO    ] ================================================
[2026-06-12 19:22:31,295.295 INFO    ] Launching Daemon at Fri Jun 12 19:22:31 IST 2026
[2026-06-12 19:22:31,306.306 INFO    ] ================================================
[2026-06-12 19:22:31,732.732 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 19:22:31
[2026-06-12 19:22:32,113.113 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 19:22:32,272.272 INFO    ] Initializing speech engine...
[2026-06-12 19:22:32,278.278 INFO    ] 2026-06-12 19:22:32
[2026-06-12 19:22:32,489.489 INFO    ] 2026-06-12 19:22:32
[2026-06-12 19:22:32,518.518 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 19:22:32,641.641 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 19:22:32,686.686 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 19:22:32,858.858 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 19:22:32,917.917 INFO    ] time= 12/06/2026 19:22:32
[2026-06-12 19:22:32,941.941 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 19:22:32,947.947 INFO    ] Checking for existing commands in stream...
[2026-06-12 19:22:33,015.015 INFO    ] No existing commands found in stream
[2026-06-12 19:22:38,031.031 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 19:22:38,033.033 INFO    ] Waiting 3.02 seconds before fallback handling...
[2026-06-12 19:22:41,469.469 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 19:22:41,471.471 INFO    ] Checking for system updates...
[2026-06-12 19:22:41,492.492 INFO    ] 200
[2026-06-12 19:22:41,493.493 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:22:41,526.526 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 19:22:41,527.527 INFO    ] No update needed
[2026-06-12 19:22:41,528.528 INFO    ] Checking for camera pi updates...
[2026-06-12 19:22:41,549.549 INFO    ] 200
[2026-06-12 19:22:41,551.551 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:22:41,575.575 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 19:22:41,626.626 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 19:22:41,628.628 INFO    ] No camera update needed
[2026-06-12 19:22:41,629.629 INFO    ] Script finished. Safe exiting...
[2026-06-12 19:22:41,631.631 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 19:22:41,634.634 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 19:22:41,637.637 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 19:22:43,675.675 INFO    ] ================================================
[2026-06-12 19:22:43,691.691 INFO    ] Launching Daemon at Fri Jun 12 19:22:43 IST 2026
[2026-06-12 19:22:43,702.702 INFO    ] ================================================
[2026-06-12 19:22:44,071.071 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 19:22:44
[2026-06-12 19:22:44,416.416 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 19:22:44,568.568 INFO    ] Initializing speech engine...
[2026-06-12 19:22:44,574.574 INFO    ] 2026-06-12 19:22:44
[2026-06-12 19:22:44,782.782 INFO    ] 2026-06-12 19:22:44
[2026-06-12 19:22:44,810.810 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 19:22:44,994.994 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 19:22:45,003.003 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 19:22:45,163.163 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 19:22:45,202.202 INFO    ] time= 12/06/2026 19:22:45
[2026-06-12 19:22:45,228.228 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 19:22:45,230.230 INFO    ] Checking for existing commands in stream...
[2026-06-12 19:22:45,297.297 INFO    ] No existing commands found in stream
[2026-06-12 19:22:50,312.312 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 19:22:50,315.315 INFO    ] Waiting 1.86 seconds before fallback handling...
[2026-06-12 19:22:52,551.551 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 19:22:52,552.552 INFO    ] Checking for system updates...
[2026-06-12 19:22:52,572.572 INFO    ] 200
[2026-06-12 19:22:52,574.574 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:22:52,607.607 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 19:22:52,608.608 INFO    ] No update needed
[2026-06-12 19:22:52,609.609 INFO    ] Checking for camera pi updates...
[2026-06-12 19:22:52,629.629 INFO    ] 200
[2026-06-12 19:22:52,631.631 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:22:52,654.654 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 19:22:52,714.714 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 19:22:52,716.716 INFO    ] No camera update needed
[2026-06-12 19:22:52,717.717 INFO    ] Script finished. Safe exiting...
[2026-06-12 19:22:52,719.719 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 19:22:52,722.722 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 19:22:52,725.725 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 19:22:54,766.766 INFO    ] ================================================
[2026-06-12 19:22:54,782.782 INFO    ] Launching Daemon at Fri Jun 12 19:22:54 IST 2026
[2026-06-12 19:22:54,794.794 INFO    ] ================================================
[2026-06-12 19:22:55,160.160 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 19:22:55
[2026-06-12 19:22:55,506.506 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 19:22:55,663.663 INFO    ] Initializing speech engine...
[2026-06-12 19:22:55,671.671 INFO    ] 2026-06-12 19:22:55
[2026-06-12 19:22:55,880.880 INFO    ] 2026-06-12 19:22:55
[2026-06-12 19:22:55,909.909 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 19:22:56,044.044 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 19:22:56,097.097 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 19:22:56,303.303 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 19:22:56,328.328 INFO    ] time= 12/06/2026 19:22:56
[2026-06-12 19:22:56,334.334 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 19:22:56,336.336 INFO    ] Checking for existing commands in stream...
[2026-06-12 19:22:56,403.403 INFO    ] No existing commands found in stream
[2026-06-12 19:23:01,418.418 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 19:23:01,421.421 INFO    ] Waiting 0.82 seconds before fallback handling...
[2026-06-12 19:23:02,587.587 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 19:23:02,589.589 INFO    ] Checking for system updates...
[2026-06-12 19:23:02,612.612 INFO    ] 200
[2026-06-12 19:23:02,613.613 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:23:02,645.645 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 19:23:02,647.647 INFO    ] No update needed
[2026-06-12 19:23:02,648.648 INFO    ] Checking for camera pi updates...
[2026-06-12 19:23:02,674.674 INFO    ] 200
[2026-06-12 19:23:02,675.675 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:23:02,703.703 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 19:23:02,758.758 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 19:23:02,759.759 INFO    ] No camera update needed
[2026-06-12 19:23:02,761.761 INFO    ] Script finished. Safe exiting...
[2026-06-12 19:23:02,762.762 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 19:23:02,765.765 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 19:23:02,768.768 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 19:23:04,805.805 INFO    ] ================================================
[2026-06-12 19:23:04,822.822 INFO    ] Launching Daemon at Fri Jun 12 19:23:04 IST 2026
[2026-06-12 19:23:04,833.833 INFO    ] ================================================
[2026-06-12 19:23:05,170.170 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 19:23:05
[2026-06-12 19:23:05,483.483 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 19:23:05,635.635 INFO    ] Initializing speech engine...
[2026-06-12 19:23:05,646.646 INFO    ] 2026-06-12 19:23:05
[2026-06-12 19:23:05,869.869 INFO    ] 2026-06-12 19:23:05
[2026-06-12 19:23:05,898.898 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 19:23:06,086.086 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 19:23:06,096.096 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 19:23:06,273.273 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 19:23:06,302.302 INFO    ] time= 12/06/2026 19:23:06
[2026-06-12 19:23:06,318.318 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 19:23:06,324.324 INFO    ] Checking for existing commands in stream...
[2026-06-12 19:23:06,391.391 INFO    ] No existing commands found in stream
[2026-06-12 19:23:11,406.406 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 19:23:11,409.409 INFO    ] Waiting 3.26 seconds before fallback handling...
[2026-06-12 19:23:15,030.030 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 19:23:15,032.032 INFO    ] Checking for system updates...
[2026-06-12 19:23:15,055.055 INFO    ] 200
[2026-06-12 19:23:15,057.057 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:23:15,093.093 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 19:23:15,094.094 INFO    ] No update needed
[2026-06-12 19:23:15,096.096 INFO    ] Checking for camera pi updates...
[2026-06-12 19:23:15,118.118 INFO    ] 200
[2026-06-12 19:23:15,119.119 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:23:15,145.145 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 19:23:15,189.189 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 19:23:15,190.190 INFO    ] No camera update needed
[2026-06-12 19:23:15,192.192 INFO    ] Script finished. Safe exiting...
[2026-06-12 19:23:15,193.193 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 19:23:15,197.197 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 19:23:15,200.200 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 19:23:17,241.241 INFO    ] ================================================
[2026-06-12 19:23:17,258.258 INFO    ] Launching Daemon at Fri Jun 12 19:23:17 IST 2026
[2026-06-12 19:23:17,269.269 INFO    ] ================================================
[2026-06-12 19:23:17,642.642 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 19:23:17
[2026-06-12 19:23:17,986.986 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 19:23:18,143.143 INFO    ] Initializing speech engine...
[2026-06-12 19:23:18,147.147 INFO    ] 2026-06-12 19:23:18
[2026-06-12 19:23:18,356.356 INFO    ] 2026-06-12 19:23:18
[2026-06-12 19:23:18,386.386 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 19:23:18,509.509 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 19:23:18,572.572 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 19:23:18,715.715 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 19:23:18,778.778 INFO    ] time= 12/06/2026 19:23:18
[2026-06-12 19:23:18,802.802 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 19:23:18,808.808 INFO    ] Checking for existing commands in stream...
[2026-06-12 19:23:18,876.876 INFO    ] No existing commands found in stream
[2026-06-12 19:23:23,895.895 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 19:23:23,899.899 INFO    ] Waiting 1.31 seconds before fallback handling...
[2026-06-12 19:23:25,559.559 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 19:23:25,561.561 INFO    ] Checking for system updates...
[2026-06-12 19:23:25,589.589 INFO    ] 200
[2026-06-12 19:23:25,591.591 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:23:25,628.628 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 19:23:25,630.630 INFO    ] No update needed
[2026-06-12 19:23:25,631.631 INFO    ] Checking for camera pi updates...
[2026-06-12 19:23:25,651.651 INFO    ] 200
[2026-06-12 19:23:25,652.652 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:23:25,677.677 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 19:23:25,717.717 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 19:23:25,718.718 INFO    ] No camera update needed
[2026-06-12 19:23:25,720.720 INFO    ] Script finished. Safe exiting...
[2026-06-12 19:23:25,721.721 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 19:23:25,724.724 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 19:23:25,727.727 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 19:23:27,764.764 INFO    ] ================================================
[2026-06-12 19:23:27,780.780 INFO    ] Launching Daemon at Fri Jun 12 19:23:27 IST 2026
[2026-06-12 19:23:27,791.791 INFO    ] ================================================
[2026-06-12 19:23:28,158.158 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 19:23:28
[2026-06-12 19:23:28,504.504 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 19:23:28,661.661 INFO    ] Initializing speech engine...
[2026-06-12 19:23:28,669.669 INFO    ] 2026-06-12 19:23:28
[2026-06-12 19:23:28,873.873 INFO    ] 2026-06-12 19:23:28
[2026-06-12 19:23:28,902.902 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 19:23:29,084.084 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 19:23:29,088.088 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 19:23:29,239.239 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 19:23:29,292.292 INFO    ] time= 12/06/2026 19:23:29
[2026-06-12 19:23:29,314.314 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 19:23:29,320.320 INFO    ] Checking for existing commands in stream...
[2026-06-12 19:23:29,388.388 INFO    ] No existing commands found in stream
[2026-06-12 19:23:34,402.402 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 19:23:34,405.405 INFO    ] Waiting 3.15 seconds before fallback handling...
[2026-06-12 19:23:37,977.977 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 19:23:37,979.979 INFO    ] Checking for system updates...
[2026-06-12 19:23:38,002.002 INFO    ] 200
[2026-06-12 19:23:38,004.004 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:23:38,039.039 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 19:23:38,041.041 INFO    ] No update needed
[2026-06-12 19:23:38,042.042 INFO    ] Checking for camera pi updates...
[2026-06-12 19:23:38,066.066 INFO    ] 200
[2026-06-12 19:23:38,067.067 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:23:38,097.097 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 19:23:38,141.141 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 19:23:38,143.143 INFO    ] No camera update needed
[2026-06-12 19:23:38,144.144 INFO    ] Script finished. Safe exiting...
[2026-06-12 19:23:38,146.146 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 19:23:38,149.149 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 19:23:38,152.152 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 19:23:40,191.191 INFO    ] ================================================
[2026-06-12 19:23:40,207.207 INFO    ] Launching Daemon at Fri Jun 12 19:23:40 IST 2026
[2026-06-12 19:23:40,219.219 INFO    ] ================================================
[2026-06-12 19:23:40,557.557 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 19:23:40
[2026-06-12 19:23:40,871.871 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 19:23:41,001.001 INFO    ] Initializing speech engine...
[2026-06-12 19:23:41,014.014 INFO    ] 2026-06-12 19:23:41
[2026-06-12 19:23:41,222.222 INFO    ] 2026-06-12 19:23:41
[2026-06-12 19:23:41,252.252 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 19:23:41,435.435 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 19:23:41,445.445 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 19:23:41,626.626 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 19:23:41,660.660 INFO    ] time= 12/06/2026 19:23:41
[2026-06-12 19:23:41,666.666 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 19:23:41,671.671 INFO    ] Checking for existing commands in stream...
[2026-06-12 19:23:41,738.738 INFO    ] No existing commands found in stream
[2026-06-12 19:23:46,752.752 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 19:23:46,755.755 INFO    ] Waiting 2.57 seconds before fallback handling...
[2026-06-12 19:23:49,727.727 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 19:23:49,729.729 INFO    ] Checking for system updates...
[2026-06-12 19:23:49,749.749 INFO    ] 200
[2026-06-12 19:23:49,751.751 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:23:49,780.780 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 19:23:49,782.782 INFO    ] No update needed
[2026-06-12 19:23:49,783.783 INFO    ] Checking for camera pi updates...
[2026-06-12 19:23:49,804.804 INFO    ] 200
[2026-06-12 19:23:49,805.805 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:23:49,830.830 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 19:23:49,872.872 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 19:23:49,874.874 INFO    ] No camera update needed
[2026-06-12 19:23:49,875.875 INFO    ] Script finished. Safe exiting...
[2026-06-12 19:23:49,876.876 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 19:23:49,879.879 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 19:23:49,882.882 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 19:23:51,920.920 INFO    ] ================================================
[2026-06-12 19:23:51,936.936 INFO    ] Launching Daemon at Fri Jun 12 19:23:51 IST 2026
[2026-06-12 19:23:51,948.948 INFO    ] ================================================
[2026-06-12 19:23:52,282.282 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 19:23:52
[2026-06-12 19:23:52,594.594 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 19:23:52,725.725 INFO    ] Initializing speech engine...
[2026-06-12 19:23:52,733.733 INFO    ] 2026-06-12 19:23:52
[2026-06-12 19:23:52,948.948 INFO    ] 2026-06-12 19:23:52
[2026-06-12 19:23:52,977.977 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 19:23:53,164.164 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 19:23:53,172.172 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 19:23:53,303.303 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 19:23:53,371.371 INFO    ] time= 12/06/2026 19:23:53
[2026-06-12 19:23:53,395.395 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 19:23:53,401.401 INFO    ] Checking for existing commands in stream...
[2026-06-12 19:23:53,469.469 INFO    ] No existing commands found in stream
[2026-06-12 19:23:58,478.478 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 19:23:58,481.481 INFO    ] Waiting 1.57 seconds before fallback handling...
[2026-06-12 19:24:00,393.393 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 19:24:00,395.395 INFO    ] Checking for system updates...
[2026-06-12 19:24:00,420.420 INFO    ] 200
[2026-06-12 19:24:00,421.421 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:24:00,456.456 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 19:24:00,457.457 INFO    ] No update needed
[2026-06-12 19:24:00,459.459 INFO    ] Checking for camera pi updates...
[2026-06-12 19:24:00,486.486 INFO    ] 200
[2026-06-12 19:24:00,487.487 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:24:00,516.516 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 19:24:00,562.562 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 19:24:00,565.565 INFO    ] No camera update needed
[2026-06-12 19:24:00,567.567 INFO    ] Script finished. Safe exiting...
[2026-06-12 19:24:00,570.570 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 19:24:00,576.576 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 19:24:00,582.582 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 19:24:02,610.610 INFO    ] ================================================
[2026-06-12 19:24:02,621.621 INFO    ] Launching Daemon at Fri Jun 12 19:24:02 IST 2026
[2026-06-12 19:24:02,631.631 INFO    ] ================================================
[2026-06-12 19:24:02,992.992 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 19:24:02
[2026-06-12 19:24:03,313.313 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 19:24:03,454.454 INFO    ] Initializing speech engine...
[2026-06-12 19:24:03,467.467 INFO    ] 2026-06-12 19:24:03
[2026-06-12 19:24:03,684.684 INFO    ] 2026-06-12 19:24:03
[2026-06-12 19:24:03,714.714 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 19:24:03,840.840 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 19:24:03,903.903 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 19:24:04,091.091 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 19:24:04,133.133 INFO    ] time= 12/06/2026 19:24:04
[2026-06-12 19:24:04,138.138 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 19:24:04,145.145 INFO    ] Checking for existing commands in stream...
[2026-06-12 19:24:04,211.211 INFO    ] No existing commands found in stream
[2026-06-12 19:24:09,222.222 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 19:24:09,224.224 INFO    ] Waiting 0.87 seconds before fallback handling...
[2026-06-12 19:24:10,488.488 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 19:24:10,490.490 INFO    ] Checking for system updates...
[2026-06-12 19:24:10,510.510 INFO    ] 200
[2026-06-12 19:24:10,512.512 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:24:10,541.541 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 19:24:10,543.543 INFO    ] No update needed
[2026-06-12 19:24:10,544.544 INFO    ] Checking for camera pi updates...
[2026-06-12 19:24:10,566.566 INFO    ] 200
[2026-06-12 19:24:10,567.567 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:24:10,595.595 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 19:24:10,648.648 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 19:24:10,649.649 INFO    ] No camera update needed
[2026-06-12 19:24:10,651.651 INFO    ] Script finished. Safe exiting...
[2026-06-12 19:24:10,652.652 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 19:24:10,655.655 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 19:24:10,657.657 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 19:24:12,700.700 INFO    ] ================================================
[2026-06-12 19:24:12,716.716 INFO    ] Launching Daemon at Fri Jun 12 19:24:12 IST 2026
[2026-06-12 19:24:12,728.728 INFO    ] ================================================
[2026-06-12 19:24:13,097.097 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 19:24:13
[2026-06-12 19:24:13,410.410 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 19:24:13,538.538 INFO    ] Initializing speech engine...
[2026-06-12 19:24:13,543.543 INFO    ] 2026-06-12 19:24:13
[2026-06-12 19:24:13,758.758 INFO    ] 2026-06-12 19:24:13
[2026-06-12 19:24:13,788.788 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 19:24:13,971.971 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 19:24:13,980.980 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 19:24:14,107.107 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 19:24:14,168.168 INFO    ] time= 12/06/2026 19:24:14
[2026-06-12 19:24:14,186.186 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 19:24:14,202.202 INFO    ] Checking for existing commands in stream...
[2026-06-12 19:24:14,273.273 INFO    ] No existing commands found in stream
[2026-06-12 19:24:19,282.282 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 19:24:19,285.285 INFO    ] Waiting 1.60 seconds before fallback handling...
[2026-06-12 19:24:21,288.288 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 19:24:21,290.290 INFO    ] Checking for system updates...
[2026-06-12 19:24:21,311.311 INFO    ] 200
[2026-06-12 19:24:21,312.312 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:24:21,345.345 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 19:24:21,346.346 INFO    ] No update needed
[2026-06-12 19:24:21,347.347 INFO    ] Checking for camera pi updates...
[2026-06-12 19:24:21,366.366 INFO    ] 200
[2026-06-12 19:24:21,368.368 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:24:21,393.393 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 19:24:21,442.442 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 19:24:21,443.443 INFO    ] No camera update needed
[2026-06-12 19:24:21,444.444 INFO    ] Script finished. Safe exiting...
[2026-06-12 19:24:21,445.445 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 19:24:21,448.448 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 19:24:21,451.451 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 19:24:23,489.489 INFO    ] ================================================
[2026-06-12 19:24:23,505.505 INFO    ] Launching Daemon at Fri Jun 12 19:24:23 IST 2026
[2026-06-12 19:24:23,516.516 INFO    ] ================================================
[2026-06-12 19:24:23,879.879 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 19:24:23
[2026-06-12 19:24:24,198.198 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 19:24:24,343.343 INFO    ] Initializing speech engine...
[2026-06-12 19:24:24,348.348 INFO    ] 2026-06-12 19:24:24
[2026-06-12 19:24:24,553.553 INFO    ] 2026-06-12 19:24:24
[2026-06-12 19:24:24,582.582 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 19:24:24,766.766 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 19:24:24,774.774 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 19:24:24,918.918 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 19:24:24,971.971 INFO    ] time= 12/06/2026 19:24:24
[2026-06-12 19:24:24,994.994 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 19:24:25,000.000 INFO    ] Checking for existing commands in stream...
[2026-06-12 19:24:25,067.067 INFO    ] No existing commands found in stream
[2026-06-12 19:24:30,076.076 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 19:24:30,079.079 INFO    ] Waiting 1.88 seconds before fallback handling...
[2026-06-12 19:24:32,318.318 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 19:24:32,320.320 INFO    ] Checking for system updates...
[2026-06-12 19:24:32,346.346 INFO    ] 200
[2026-06-12 19:24:32,348.348 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:24:32,385.385 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 19:24:32,387.387 INFO    ] No update needed
[2026-06-12 19:24:32,389.389 INFO    ] Checking for camera pi updates...
[2026-06-12 19:24:32,412.412 INFO    ] 200
[2026-06-12 19:24:32,413.413 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:24:32,440.440 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 19:24:32,475.475 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 19:24:32,476.476 INFO    ] No camera update needed
[2026-06-12 19:24:32,478.478 INFO    ] Script finished. Safe exiting...
[2026-06-12 19:24:32,480.480 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 19:24:32,483.483 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 19:24:32,487.487 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 19:24:34,525.525 INFO    ] ================================================
[2026-06-12 19:24:34,541.541 INFO    ] Launching Daemon at Fri Jun 12 19:24:34 IST 2026
[2026-06-12 19:24:34,552.552 INFO    ] ================================================
[2026-06-12 19:24:34,890.890 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 19:24:34
[2026-06-12 19:24:35,212.212 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 19:24:35,344.344 INFO    ] Initializing speech engine...
[2026-06-12 19:24:35,348.348 INFO    ] 2026-06-12 19:24:35
[2026-06-12 19:24:35,565.565 INFO    ] 2026-06-12 19:24:35
[2026-06-12 19:24:35,593.593 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 19:24:35,775.775 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 19:24:35,778.778 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 19:24:35,925.925 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 19:24:35,983.983 INFO    ] time= 12/06/2026 19:24:35
[2026-06-12 19:24:36,005.005 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 19:24:36,011.011 INFO    ] Checking for existing commands in stream...
[2026-06-12 19:24:36,077.077 INFO    ] No existing commands found in stream
[2026-06-12 19:24:41,091.091 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 19:24:41,094.094 INFO    ] Waiting 1.51 seconds before fallback handling...
[2026-06-12 19:24:42,986.986 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 19:24:42,987.987 INFO    ] Checking for system updates...
[2026-06-12 19:24:43,010.010 INFO    ] 200
[2026-06-12 19:24:43,011.011 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:24:43,041.041 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 19:24:43,043.043 INFO    ] No update needed
[2026-06-12 19:24:43,044.044 INFO    ] Checking for camera pi updates...
[2026-06-12 19:24:43,067.067 INFO    ] 200
[2026-06-12 19:24:43,069.069 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:24:43,094.094 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 19:24:43,138.138 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 19:24:43,139.139 INFO    ] No camera update needed
[2026-06-12 19:24:43,141.141 INFO    ] Script finished. Safe exiting...
[2026-06-12 19:24:43,142.142 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 19:24:43,145.145 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 19:24:43,148.148 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 19:24:45,188.188 INFO    ] ================================================
[2026-06-12 19:24:45,204.204 INFO    ] Launching Daemon at Fri Jun 12 19:24:45 IST 2026
[2026-06-12 19:24:45,215.215 INFO    ] ================================================
[2026-06-12 19:24:45,594.594 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 19:24:45
[2026-06-12 19:24:45,905.905 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 19:24:46,037.037 INFO    ] Initializing speech engine...
[2026-06-12 19:24:46,045.045 INFO    ] 2026-06-12 19:24:46
[2026-06-12 19:24:46,261.261 INFO    ] 2026-06-12 19:24:46
[2026-06-12 19:24:46,289.289 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 19:24:46,475.475 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 19:24:46,484.484 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 19:24:46,613.613 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 19:24:46,670.670 INFO    ] time= 12/06/2026 19:24:46
[2026-06-12 19:24:46,709.709 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 19:24:46,711.711 INFO    ] Checking for existing commands in stream...
[2026-06-12 19:24:46,782.782 INFO    ] No existing commands found in stream
[2026-06-12 19:24:51,792.792 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 19:24:51,795.795 INFO    ] Waiting 0.72 seconds before fallback handling...
[2026-06-12 19:24:52,912.912 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 19:24:52,914.914 INFO    ] Checking for system updates...
[2026-06-12 19:24:52,935.935 INFO    ] 200
[2026-06-12 19:24:52,937.937 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:24:52,966.966 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 19:24:52,967.967 INFO    ] No update needed
[2026-06-12 19:24:52,969.969 INFO    ] Checking for camera pi updates...
[2026-06-12 19:24:52,989.989 INFO    ] 200
[2026-06-12 19:24:52,991.991 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:24:53,015.015 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 19:24:53,051.051 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 19:24:53,052.052 INFO    ] No camera update needed
[2026-06-12 19:24:53,053.053 INFO    ] Script finished. Safe exiting...
[2026-06-12 19:24:53,054.054 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 19:24:53,057.057 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 19:24:53,060.060 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 19:24:55,091.091 INFO    ] ================================================
[2026-06-12 19:24:55,099.099 INFO    ] Launching Daemon at Fri Jun 12 19:24:55 IST 2026
[2026-06-12 19:24:55,105.105 INFO    ] ================================================
[2026-06-12 19:24:55,460.460 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 19:24:55
[2026-06-12 19:24:55,784.784 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 19:24:55,921.921 INFO    ] Initializing speech engine...
[2026-06-12 19:24:55,924.924 INFO    ] 2026-06-12 19:24:55
[2026-06-12 19:24:56,116.116 INFO    ] 2026-06-12 19:24:56
[2026-06-12 19:24:56,161.161 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 19:24:56,333.333 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 19:24:56,391.391 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 19:24:56,534.534 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 19:24:56,585.585 INFO    ] time= 12/06/2026 19:24:56
[2026-06-12 19:24:56,618.618 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 19:24:56,643.643 INFO    ] Checking for existing commands in stream...
[2026-06-12 19:24:56,719.719 INFO    ] No existing commands found in stream
[2026-06-12 19:25:01,730.730 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 19:25:01,733.733 INFO    ] Waiting 2.57 seconds before fallback handling...
[2026-06-12 19:25:04,720.720 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 19:25:04,721.721 INFO    ] Checking for system updates...
[2026-06-12 19:25:04,742.742 INFO    ] 200
[2026-06-12 19:25:04,744.744 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:25:04,774.774 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 19:25:04,776.776 INFO    ] No update needed
[2026-06-12 19:25:04,777.777 INFO    ] Checking for camera pi updates...
[2026-06-12 19:25:04,797.797 INFO    ] 200
[2026-06-12 19:25:04,798.798 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:25:04,822.822 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 19:25:04,969.969 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 19:25:04,971.971 INFO    ] No camera update needed
[2026-06-12 19:25:04,972.972 INFO    ] Script finished. Safe exiting...
[2026-06-12 19:25:04,974.974 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 19:25:04,977.977 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 19:25:04,980.980 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 19:25:07,019.019 INFO    ] ================================================
[2026-06-12 19:25:07,040.040 INFO    ] Launching Daemon at Fri Jun 12 19:25:07 IST 2026
[2026-06-12 19:25:07,051.051 INFO    ] ================================================
[2026-06-12 19:25:07,449.449 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 19:25:07
[2026-06-12 19:25:07,793.793 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 19:25:07,949.949 INFO    ] Initializing speech engine...
[2026-06-12 19:25:07,953.953 INFO    ] 2026-06-12 19:25:07
[2026-06-12 19:25:08,164.164 INFO    ] 2026-06-12 19:25:08
[2026-06-12 19:25:08,192.192 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 19:25:08,385.385 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 19:25:08,395.395 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 19:25:08,552.552 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 19:25:08,609.609 INFO    ] time= 12/06/2026 19:25:08
[2026-06-12 19:25:08,620.620 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 19:25:08,626.626 INFO    ] Checking for existing commands in stream...
[2026-06-12 19:25:08,694.694 INFO    ] No existing commands found in stream
[2026-06-12 19:25:13,717.717 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 19:25:13,720.720 INFO    ] Waiting 3.57 seconds before fallback handling...
[2026-06-12 19:25:17,678.678 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 19:25:17,680.680 INFO    ] Checking for system updates...
[2026-06-12 19:25:17,706.706 INFO    ] 200
[2026-06-12 19:25:17,707.707 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:25:17,739.739 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 19:25:17,741.741 INFO    ] No update needed
[2026-06-12 19:25:17,742.742 INFO    ] Checking for camera pi updates...
[2026-06-12 19:25:17,763.763 INFO    ] 200
[2026-06-12 19:25:17,764.764 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:25:17,792.792 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 19:25:17,837.837 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 19:25:17,839.839 INFO    ] No camera update needed
[2026-06-12 19:25:17,840.840 INFO    ] Script finished. Safe exiting...
[2026-06-12 19:25:17,842.842 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 19:25:17,845.845 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 19:25:17,848.848 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 19:25:19,888.888 INFO    ] ================================================
[2026-06-12 19:25:19,903.903 INFO    ] Launching Daemon at Fri Jun 12 19:25:19 IST 2026
[2026-06-12 19:25:19,914.914 INFO    ] ================================================
[2026-06-12 19:25:20,263.263 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 19:25:20
[2026-06-12 19:25:20,574.574 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 19:25:20,710.710 INFO    ] Initializing speech engine...
[2026-06-12 19:25:20,723.723 INFO    ] 2026-06-12 19:25:20
[2026-06-12 19:25:20,944.944 INFO    ] 2026-06-12 19:25:20
[2026-06-12 19:25:20,973.973 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 19:25:21,181.181 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 19:25:21,185.185 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 19:25:21,326.326 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 19:25:21,383.383 INFO    ] time= 12/06/2026 19:25:21
[2026-06-12 19:25:21,411.411 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 19:25:21,435.435 INFO    ] Checking for existing commands in stream...
[2026-06-12 19:25:21,512.512 INFO    ] No existing commands found in stream
[2026-06-12 19:25:26,522.522 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 19:25:26,524.524 INFO    ] Waiting 3.71 seconds before fallback handling...
[2026-06-12 19:25:30,627.627 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 19:25:30,629.629 INFO    ] Checking for system updates...
[2026-06-12 19:25:30,651.651 INFO    ] 200
[2026-06-12 19:25:30,653.653 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:25:30,686.686 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 19:25:30,687.687 INFO    ] No update needed
[2026-06-12 19:25:30,688.688 INFO    ] Checking for camera pi updates...
[2026-06-12 19:25:30,711.711 INFO    ] 200
[2026-06-12 19:25:30,713.713 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:25:30,738.738 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 19:25:30,787.787 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 19:25:30,789.789 INFO    ] No camera update needed
[2026-06-12 19:25:30,790.790 INFO    ] Script finished. Safe exiting...
[2026-06-12 19:25:30,792.792 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 19:25:30,795.795 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 19:25:30,798.798 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 19:25:32,830.830 INFO    ] ================================================
[2026-06-12 19:25:32,845.845 INFO    ] Launching Daemon at Fri Jun 12 19:25:32 IST 2026
[2026-06-12 19:25:32,856.856 INFO    ] ================================================
[2026-06-12 19:25:33,205.205 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 19:25:33
[2026-06-12 19:25:33,515.515 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 19:25:33,661.661 INFO    ] Initializing speech engine...
[2026-06-12 19:25:33,666.666 INFO    ] 2026-06-12 19:25:33
[2026-06-12 19:25:33,871.871 INFO    ] 2026-06-12 19:25:33
[2026-06-12 19:25:33,899.899 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 19:25:34,025.025 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 19:25:34,088.088 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 19:25:34,219.219 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 19:25:34,270.270 INFO    ] time= 12/06/2026 19:25:34
[2026-06-12 19:25:34,299.299 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 19:25:34,320.320 INFO    ] Checking for existing commands in stream...
[2026-06-12 19:25:34,392.392 INFO    ] No existing commands found in stream
[2026-06-12 19:25:39,401.401 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 19:25:39,403.403 INFO    ] Waiting 1.67 seconds before fallback handling...
[2026-06-12 19:25:41,451.451 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 19:25:41,452.452 INFO    ] Checking for system updates...
[2026-06-12 19:25:41,472.472 INFO    ] 200
[2026-06-12 19:25:41,474.474 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:25:41,504.504 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 19:25:41,505.505 INFO    ] No update needed
[2026-06-12 19:25:41,506.506 INFO    ] Checking for camera pi updates...
[2026-06-12 19:25:41,525.525 INFO    ] 200
[2026-06-12 19:25:41,527.527 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:25:41,552.552 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 19:25:41,602.602 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 19:25:41,603.603 INFO    ] No camera update needed
[2026-06-12 19:25:41,604.604 INFO    ] Script finished. Safe exiting...
[2026-06-12 19:25:41,605.605 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 19:25:41,608.608 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 19:25:41,611.611 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 19:25:43,648.648 INFO    ] ================================================
[2026-06-12 19:25:43,664.664 INFO    ] Launching Daemon at Fri Jun 12 19:25:43 IST 2026
[2026-06-12 19:25:43,674.674 INFO    ] ================================================
[2026-06-12 19:25:44,044.044 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 19:25:44
[2026-06-12 19:25:44,360.360 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 19:25:44,493.493 INFO    ] Initializing speech engine...
[2026-06-12 19:25:44,501.501 INFO    ] 2026-06-12 19:25:44
[2026-06-12 19:25:44,712.712 INFO    ] 2026-06-12 19:25:44
[2026-06-12 19:25:44,742.742 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 19:25:44,864.864 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 19:25:44,927.927 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 19:25:45,063.063 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 19:25:45,124.124 INFO    ] time= 12/06/2026 19:25:45
[2026-06-12 19:25:45,156.156 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 19:25:45,163.163 INFO    ] Checking for existing commands in stream...
[2026-06-12 19:25:45,230.230 INFO    ] No existing commands found in stream
[2026-06-12 19:25:50,238.238 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 19:25:50,241.241 INFO    ] Waiting 0.60 seconds before fallback handling...
[2026-06-12 19:25:51,236.236 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 19:25:51,238.238 INFO    ] Checking for system updates...
[2026-06-12 19:25:51,258.258 INFO    ] 200
[2026-06-12 19:25:51,260.260 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:25:51,290.290 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 19:25:51,291.291 INFO    ] No update needed
[2026-06-12 19:25:51,292.292 INFO    ] Checking for camera pi updates...
[2026-06-12 19:25:51,312.312 INFO    ] 200
[2026-06-12 19:25:51,313.313 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:25:51,337.337 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 19:25:51,378.378 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 19:25:51,380.380 INFO    ] No camera update needed
[2026-06-12 19:25:51,381.381 INFO    ] Script finished. Safe exiting...
[2026-06-12 19:25:51,382.382 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 19:25:51,385.385 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 19:25:51,388.388 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 19:25:53,427.427 INFO    ] ================================================
[2026-06-12 19:25:53,443.443 INFO    ] Launching Daemon at Fri Jun 12 19:25:53 IST 2026
[2026-06-12 19:25:53,454.454 INFO    ] ================================================
[2026-06-12 19:25:53,796.796 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 19:25:53
[2026-06-12 19:25:54,108.108 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 19:25:54,238.238 INFO    ] Initializing speech engine...
[2026-06-12 19:25:54,241.241 INFO    ] 2026-06-12 19:25:54
[2026-06-12 19:25:54,457.457 INFO    ] 2026-06-12 19:25:54
[2026-06-12 19:25:54,485.485 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 19:25:54,669.669 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 19:25:54,680.680 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 19:25:54,807.807 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 19:25:54,874.874 INFO    ] time= 12/06/2026 19:25:54
[2026-06-12 19:25:54,898.898 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 19:25:54,905.905 INFO    ] Checking for existing commands in stream...
[2026-06-12 19:25:54,972.972 INFO    ] No existing commands found in stream
[2026-06-12 19:25:59,992.992 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 19:25:59,995.995 INFO    ] Waiting 3.18 seconds before fallback handling...
[2026-06-12 19:26:03,536.536 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 19:26:03,537.537 INFO    ] Checking for system updates...
[2026-06-12 19:26:03,560.560 INFO    ] 200
[2026-06-12 19:26:03,561.561 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:26:03,594.594 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 19:26:03,595.595 INFO    ] No update needed
[2026-06-12 19:26:03,597.597 INFO    ] Checking for camera pi updates...
[2026-06-12 19:26:03,617.617 INFO    ] 200
[2026-06-12 19:26:03,618.618 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:26:03,647.647 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 19:26:03,702.702 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 19:26:03,703.703 INFO    ] No camera update needed
[2026-06-12 19:26:03,704.704 INFO    ] Script finished. Safe exiting...
[2026-06-12 19:26:03,706.706 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 19:26:03,709.709 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 19:26:03,712.712 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 19:26:05,754.754 INFO    ] ================================================
[2026-06-12 19:26:05,769.769 INFO    ] Launching Daemon at Fri Jun 12 19:26:05 IST 2026
[2026-06-12 19:26:05,779.779 INFO    ] ================================================
[2026-06-12 19:26:06,133.133 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 19:26:06
[2026-06-12 19:26:06,450.450 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 19:26:06,588.588 INFO    ] Initializing speech engine...
[2026-06-12 19:26:06,597.597 INFO    ] 2026-06-12 19:26:06
[2026-06-12 19:26:06,802.802 INFO    ] 2026-06-12 19:26:06
[2026-06-12 19:26:06,831.831 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 19:26:07,014.014 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 19:26:07,024.024 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 19:26:07,156.156 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 19:26:07,218.218 INFO    ] time= 12/06/2026 19:26:07
[2026-06-12 19:26:07,243.243 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 19:26:07,248.248 INFO    ] Checking for existing commands in stream...
[2026-06-12 19:26:07,315.315 INFO    ] No existing commands found in stream
[2026-06-12 19:26:12,330.330 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 19:26:12,332.332 INFO    ] Waiting 3.78 seconds before fallback handling...
[2026-06-12 19:26:16,479.479 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 19:26:16,481.481 INFO    ] Checking for system updates...
[2026-06-12 19:26:16,501.501 INFO    ] 200
[2026-06-12 19:26:16,503.503 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:26:16,532.532 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 19:26:16,534.534 INFO    ] No update needed
[2026-06-12 19:26:16,535.535 INFO    ] Checking for camera pi updates...
[2026-06-12 19:26:16,554.554 INFO    ] 200
[2026-06-12 19:26:16,556.556 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:26:16,582.582 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 19:26:16,626.626 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 19:26:16,628.628 INFO    ] No camera update needed
[2026-06-12 19:26:16,629.629 INFO    ] Script finished. Safe exiting...
[2026-06-12 19:26:16,630.630 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 19:26:16,634.634 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 19:26:16,636.636 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 19:26:18,673.673 INFO    ] ================================================
[2026-06-12 19:26:18,688.688 INFO    ] Launching Daemon at Fri Jun 12 19:26:18 IST 2026
[2026-06-12 19:26:18,699.699 INFO    ] ================================================
[2026-06-12 19:26:19,076.076 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 19:26:19
[2026-06-12 19:26:19,414.414 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 19:26:19,558.558 INFO    ] Initializing speech engine...
[2026-06-12 19:26:19,569.569 INFO    ] 2026-06-12 19:26:19
[2026-06-12 19:26:19,779.779 INFO    ] 2026-06-12 19:26:19
[2026-06-12 19:26:19,807.807 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 19:26:19,994.994 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 19:26:20,004.004 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 19:26:20,166.166 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 19:26:20,207.207 INFO    ] time= 12/06/2026 19:26:20
[2026-06-12 19:26:20,228.228 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 19:26:20,235.235 INFO    ] Checking for existing commands in stream...
[2026-06-12 19:26:20,302.302 INFO    ] No existing commands found in stream
[2026-06-12 19:26:25,317.317 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 19:26:25,320.320 INFO    ] Waiting 1.46 seconds before fallback handling...
[2026-06-12 19:26:27,217.217 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 19:26:27,218.218 INFO    ] Checking for system updates...
[2026-06-12 19:26:27,239.239 INFO    ] 200
[2026-06-12 19:26:27,241.241 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:26:27,270.270 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 19:26:27,272.272 INFO    ] No update needed
[2026-06-12 19:26:27,273.273 INFO    ] Checking for camera pi updates...
[2026-06-12 19:26:27,293.293 INFO    ] 200
[2026-06-12 19:26:27,294.294 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:26:27,317.317 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 19:26:27,362.362 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 19:26:27,363.363 INFO    ] No camera update needed
[2026-06-12 19:26:27,364.364 INFO    ] Script finished. Safe exiting...
[2026-06-12 19:26:27,365.365 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 19:26:27,368.368 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 19:26:27,371.371 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 19:26:29,408.408 INFO    ] ================================================
[2026-06-12 19:26:29,423.423 INFO    ] Launching Daemon at Fri Jun 12 19:26:29 IST 2026
[2026-06-12 19:26:29,434.434 INFO    ] ================================================
[2026-06-12 19:26:29,797.797 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 19:26:29
[2026-06-12 19:26:30,109.109 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 19:26:30,252.252 INFO    ] Initializing speech engine...
[2026-06-12 19:26:30,257.257 INFO    ] 2026-06-12 19:26:30
[2026-06-12 19:26:30,461.461 INFO    ] 2026-06-12 19:26:30
[2026-06-12 19:26:30,491.491 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 19:26:30,677.677 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 19:26:30,680.680 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 19:26:30,814.814 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 19:26:30,881.881 INFO    ] time= 12/06/2026 19:26:30
[2026-06-12 19:26:30,909.909 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 19:26:30,915.915 INFO    ] Checking for existing commands in stream...
[2026-06-12 19:26:30,984.984 INFO    ] No existing commands found in stream
[2026-06-12 19:26:35,998.998 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 19:26:36,001.001 INFO    ] Waiting 0.91 seconds before fallback handling...
[2026-06-12 19:26:37,288.288 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 19:26:37,289.289 INFO    ] Checking for system updates...
[2026-06-12 19:26:37,310.310 INFO    ] 200
[2026-06-12 19:26:37,311.311 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:26:37,347.347 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 19:26:37,348.348 INFO    ] No update needed
[2026-06-12 19:26:37,350.350 INFO    ] Checking for camera pi updates...
[2026-06-12 19:26:37,369.369 INFO    ] 200
[2026-06-12 19:26:37,371.371 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:26:37,394.394 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 19:26:37,445.445 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 19:26:37,447.447 INFO    ] No camera update needed
[2026-06-12 19:26:37,448.448 INFO    ] Script finished. Safe exiting...
[2026-06-12 19:26:37,449.449 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 19:26:37,452.452 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 19:26:37,455.455 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 19:26:39,492.492 INFO    ] ================================================
[2026-06-12 19:26:39,508.508 INFO    ] Launching Daemon at Fri Jun 12 19:26:39 IST 2026
[2026-06-12 19:26:39,519.519 INFO    ] ================================================
[2026-06-12 19:26:39,861.861 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 19:26:39
[2026-06-12 19:26:40,177.177 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 19:26:40,321.321 INFO    ] Initializing speech engine...
[2026-06-12 19:26:40,326.326 INFO    ] 2026-06-12 19:26:40
[2026-06-12 19:26:40,529.529 INFO    ] 2026-06-12 19:26:40
[2026-06-12 19:26:40,557.557 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 19:26:40,740.740 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 19:26:40,750.750 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 19:26:40,875.875 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 19:26:40,936.936 INFO    ] time= 12/06/2026 19:26:40
[2026-06-12 19:26:40,968.968 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 19:26:40,970.970 INFO    ] Checking for existing commands in stream...
[2026-06-12 19:26:41,064.064 INFO    ] No existing commands found in stream
[2026-06-12 19:26:46,073.073 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 19:26:46,076.076 INFO    ] Waiting 3.03 seconds before fallback handling...
[2026-06-12 19:26:49,460.460 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 19:26:49,462.462 INFO    ] Checking for system updates...
[2026-06-12 19:26:49,485.485 INFO    ] 200
[2026-06-12 19:26:49,486.486 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:26:49,519.519 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 19:26:49,520.520 INFO    ] No update needed
[2026-06-12 19:26:49,522.522 INFO    ] Checking for camera pi updates...
[2026-06-12 19:26:49,541.541 INFO    ] 200
[2026-06-12 19:26:49,543.543 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:26:49,568.568 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 19:26:49,614.614 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 19:26:49,616.616 INFO    ] No camera update needed
[2026-06-12 19:26:49,617.617 INFO    ] Script finished. Safe exiting...
[2026-06-12 19:26:49,618.618 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 19:26:49,622.622 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 19:26:49,625.625 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 19:26:51,666.666 INFO    ] ================================================
[2026-06-12 19:26:51,682.682 INFO    ] Launching Daemon at Fri Jun 12 19:26:51 IST 2026
[2026-06-12 19:26:51,694.694 INFO    ] ================================================
[2026-06-12 19:26:52,025.025 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 19:26:52
[2026-06-12 19:26:52,342.342 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 19:26:52,480.480 INFO    ] Initializing speech engine...
[2026-06-12 19:26:52,491.491 INFO    ] 2026-06-12 19:26:52
[2026-06-12 19:26:52,695.695 INFO    ] 2026-06-12 19:26:52
[2026-06-12 19:26:52,723.723 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 19:26:52,906.906 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 19:26:52,915.915 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 19:26:53,037.037 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 19:26:53,103.103 INFO    ] time= 12/06/2026 19:26:53
[2026-06-12 19:26:53,135.135 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 19:26:53,141.141 INFO    ] Checking for existing commands in stream...
[2026-06-12 19:26:53,206.206 INFO    ] No existing commands found in stream
[2026-06-12 19:26:58,217.217 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 19:26:58,219.219 INFO    ] Waiting 1.39 seconds before fallback handling...
[2026-06-12 19:27:00,019.019 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 19:27:00,020.020 INFO    ] Checking for system updates...
[2026-06-12 19:27:00,042.042 INFO    ] 200
[2026-06-12 19:27:00,044.044 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:27:00,076.076 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 19:27:00,077.077 INFO    ] No update needed
[2026-06-12 19:27:00,079.079 INFO    ] Checking for camera pi updates...
[2026-06-12 19:27:00,098.098 INFO    ] 200
[2026-06-12 19:27:00,099.099 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:27:00,124.124 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 19:27:00,166.166 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 19:27:00,167.167 INFO    ] No camera update needed
[2026-06-12 19:27:00,169.169 INFO    ] Script finished. Safe exiting...
[2026-06-12 19:27:00,170.170 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 19:27:00,173.173 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 19:27:00,176.176 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 19:27:02,209.209 INFO    ] ================================================
[2026-06-12 19:27:02,220.220 INFO    ] Launching Daemon at Fri Jun 12 19:27:02 IST 2026
[2026-06-12 19:27:02,227.227 INFO    ] ================================================
[2026-06-12 19:27:02,584.584 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 19:27:02
[2026-06-12 19:27:02,927.927 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 19:27:03,066.066 INFO    ] Initializing speech engine...
[2026-06-12 19:27:03,075.075 INFO    ] 2026-06-12 19:27:03
[2026-06-12 19:27:03,278.278 INFO    ] 2026-06-12 19:27:03
[2026-06-12 19:27:03,307.307 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 19:27:03,476.476 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 19:27:03,494.494 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 19:27:03,626.626 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 19:27:03,694.694 INFO    ] time= 12/06/2026 19:27:03
[2026-06-12 19:27:03,720.720 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 19:27:03,727.727 INFO    ] Checking for existing commands in stream...
[2026-06-12 19:27:03,797.797 INFO    ] No existing commands found in stream
[2026-06-12 19:27:08,811.811 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 19:27:08,814.814 INFO    ] Waiting 0.23 seconds before fallback handling...
[2026-06-12 19:27:09,422.422 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 19:27:09,424.424 INFO    ] Checking for system updates...
[2026-06-12 19:27:09,445.445 INFO    ] 200
[2026-06-12 19:27:09,447.447 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:27:09,477.477 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 19:27:09,478.478 INFO    ] No update needed
[2026-06-12 19:27:09,480.480 INFO    ] Checking for camera pi updates...
[2026-06-12 19:27:09,500.500 INFO    ] 200
[2026-06-12 19:27:09,501.501 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:27:09,526.526 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 19:27:09,665.665 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 19:27:09,666.666 INFO    ] No camera update needed
[2026-06-12 19:27:09,667.667 INFO    ] Script finished. Safe exiting...
[2026-06-12 19:27:09,668.668 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 19:27:09,671.671 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 19:27:09,674.674 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 19:27:11,712.712 INFO    ] ================================================
[2026-06-12 19:27:11,728.728 INFO    ] Launching Daemon at Fri Jun 12 19:27:11 IST 2026
[2026-06-12 19:27:11,739.739 INFO    ] ================================================
[2026-06-12 19:27:12,086.086 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 19:27:12
[2026-06-12 19:27:12,397.397 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 19:27:12,533.533 INFO    ] Initializing speech engine...
[2026-06-12 19:27:12,543.543 INFO    ] 2026-06-12 19:27:12
[2026-06-12 19:27:12,745.745 INFO    ] 2026-06-12 19:27:12
[2026-06-12 19:27:12,773.773 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 19:27:12,956.956 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 19:27:12,965.965 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 19:27:13,094.094 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 19:27:13,158.158 INFO    ] time= 12/06/2026 19:27:13
[2026-06-12 19:27:13,185.185 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 19:27:13,191.191 INFO    ] Checking for existing commands in stream...
[2026-06-12 19:27:13,257.257 INFO    ] No existing commands found in stream
[2026-06-12 19:27:18,266.266 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 19:27:18,269.269 INFO    ] Waiting 0.65 seconds before fallback handling...
[2026-06-12 19:27:19,283.283 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 19:27:19,284.284 INFO    ] Checking for system updates...
[2026-06-12 19:27:19,305.305 INFO    ] 200
[2026-06-12 19:27:19,307.307 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:27:19,337.337 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 19:27:19,339.339 INFO    ] No update needed
[2026-06-12 19:27:19,340.340 INFO    ] Checking for camera pi updates...
[2026-06-12 19:27:19,362.362 INFO    ] 200
[2026-06-12 19:27:19,363.363 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:27:19,391.391 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 19:27:19,437.437 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 19:27:19,438.438 INFO    ] No camera update needed
[2026-06-12 19:27:19,440.440 INFO    ] Script finished. Safe exiting...
[2026-06-12 19:27:19,441.441 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 19:27:19,444.444 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 19:27:19,447.447 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 19:27:21,487.487 INFO    ] ================================================
[2026-06-12 19:27:21,503.503 INFO    ] Launching Daemon at Fri Jun 12 19:27:21 IST 2026
[2026-06-12 19:27:21,514.514 INFO    ] ================================================
[2026-06-12 19:27:21,867.867 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 19:27:21
[2026-06-12 19:27:22,184.184 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 19:27:22,324.324 INFO    ] Initializing speech engine...
[2026-06-12 19:27:22,334.334 INFO    ] 2026-06-12 19:27:22
[2026-06-12 19:27:22,538.538 INFO    ] 2026-06-12 19:27:22
[2026-06-12 19:27:22,566.566 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 19:27:22,750.750 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 19:27:22,759.759 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 19:27:22,887.887 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 19:27:22,946.946 INFO    ] time= 12/06/2026 19:27:22
[2026-06-12 19:27:22,978.978 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 19:27:22,985.985 INFO    ] Checking for existing commands in stream...
[2026-06-12 19:27:23,075.075 INFO    ] No existing commands found in stream
[2026-06-12 19:27:28,084.084 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 19:27:28,087.087 INFO    ] Waiting 1.23 seconds before fallback handling...
[2026-06-12 19:27:29,701.701 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 19:27:29,702.702 INFO    ] Checking for system updates...
[2026-06-12 19:27:29,724.724 INFO    ] 200
[2026-06-12 19:27:29,725.725 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:27:29,755.755 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 19:27:29,756.756 INFO    ] No update needed
[2026-06-12 19:27:29,757.757 INFO    ] Checking for camera pi updates...
[2026-06-12 19:27:29,777.777 INFO    ] 200
[2026-06-12 19:27:29,778.778 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:27:29,802.802 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 19:27:29,847.847 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 19:27:29,849.849 INFO    ] No camera update needed
[2026-06-12 19:27:29,850.850 INFO    ] Script finished. Safe exiting...
[2026-06-12 19:27:29,851.851 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 19:27:29,854.854 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 19:27:29,857.857 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 19:27:31,896.896 INFO    ] ================================================
[2026-06-12 19:27:31,914.914 INFO    ] Launching Daemon at Fri Jun 12 19:27:31 IST 2026
[2026-06-12 19:27:31,926.926 INFO    ] ================================================
[2026-06-12 19:27:32,274.274 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 19:27:32
[2026-06-12 19:27:32,618.618 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 19:27:32,758.758 INFO    ] Initializing speech engine...
[2026-06-12 19:27:32,763.763 INFO    ] 2026-06-12 19:27:32
[2026-06-12 19:27:32,995.995 INFO    ] 2026-06-12 19:27:32
[2026-06-12 19:27:33,026.026 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 19:27:33,161.161 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 19:27:33,200.200 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 19:27:33,375.375 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 19:27:33,402.402 INFO    ] time= 12/06/2026 19:27:33
[2026-06-12 19:27:33,459.459 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 19:27:33,485.485 INFO    ] Checking for existing commands in stream...
[2026-06-12 19:27:33,588.588 INFO    ] No existing commands found in stream
[2026-06-12 19:27:38,612.612 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 19:27:38,615.615 INFO    ] Waiting 2.48 seconds before fallback handling...
[2026-06-12 19:27:41,507.507 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 19:27:41,508.508 INFO    ] Checking for system updates...
[2026-06-12 19:27:41,529.529 INFO    ] 200
[2026-06-12 19:27:41,530.530 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:27:41,563.563 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 19:27:41,564.564 INFO    ] No update needed
[2026-06-12 19:27:41,565.565 INFO    ] Checking for camera pi updates...
[2026-06-12 19:27:41,586.586 INFO    ] 200
[2026-06-12 19:27:41,588.588 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:27:41,612.612 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 19:27:41,667.667 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 19:27:41,669.669 INFO    ] No camera update needed
[2026-06-12 19:27:41,674.674 INFO    ] Script finished. Safe exiting...
[2026-06-12 19:27:41,676.676 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 19:27:41,679.679 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 19:27:41,683.683 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 19:27:43,721.721 INFO    ] ================================================
[2026-06-12 19:27:43,736.736 INFO    ] Launching Daemon at Fri Jun 12 19:27:43 IST 2026
[2026-06-12 19:27:43,748.748 INFO    ] ================================================
[2026-06-12 19:27:44,117.117 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 19:27:44
[2026-06-12 19:27:44,436.436 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 19:27:44,572.572 INFO    ] Initializing speech engine...
[2026-06-12 19:27:44,575.575 INFO    ] 2026-06-12 19:27:44
[2026-06-12 19:27:44,770.770 INFO    ] 2026-06-12 19:27:44
[2026-06-12 19:27:44,818.818 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 19:27:44,992.992 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 19:27:45,045.045 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 19:27:45,156.156 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 19:27:45,158.158 INFO    ] time= 12/06/2026 19:27:45
[2026-06-12 19:27:45,159.159 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 19:27:45,189.189 INFO    ] Checking for existing commands in stream...
[2026-06-12 19:27:45,285.285 INFO    ] No existing commands found in stream
[2026-06-12 19:27:50,298.298 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 19:27:50,301.301 INFO    ] Waiting 0.87 seconds before fallback handling...
[2026-06-12 19:27:51,546.546 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 19:27:51,548.548 INFO    ] Checking for system updates...
[2026-06-12 19:27:51,572.572 INFO    ] 200
[2026-06-12 19:27:51,573.573 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:27:51,604.604 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 19:27:51,605.605 INFO    ] No update needed
[2026-06-12 19:27:51,606.606 INFO    ] Checking for camera pi updates...
[2026-06-12 19:27:51,626.626 INFO    ] 200
[2026-06-12 19:27:51,628.628 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:27:51,653.653 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 19:27:51,698.698 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 19:27:51,700.700 INFO    ] No camera update needed
[2026-06-12 19:27:51,702.702 INFO    ] Script finished. Safe exiting...
[2026-06-12 19:27:51,703.703 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 19:27:51,715.715 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 19:27:51,718.718 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 19:27:53,756.756 INFO    ] ================================================
[2026-06-12 19:27:53,772.772 INFO    ] Launching Daemon at Fri Jun 12 19:27:53 IST 2026
[2026-06-12 19:27:53,783.783 INFO    ] ================================================
[2026-06-12 19:27:54,143.143 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 19:27:54
[2026-06-12 19:27:54,456.456 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 19:27:54,591.591 INFO    ] Initializing speech engine...
[2026-06-12 19:27:54,599.599 INFO    ] 2026-06-12 19:27:54
[2026-06-12 19:27:54,801.801 INFO    ] 2026-06-12 19:27:54
[2026-06-12 19:27:54,850.850 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 19:27:55,021.021 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 19:27:55,056.056 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 19:27:55,254.254 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 19:27:55,282.282 INFO    ] time= 12/06/2026 19:27:55
[2026-06-12 19:27:55,342.342 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 19:27:55,373.373 INFO    ] Checking for existing commands in stream...
[2026-06-12 19:27:55,482.482 INFO    ] No existing commands found in stream
[2026-06-12 19:28:00,491.491 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 19:28:00,494.494 INFO    ] Waiting 3.64 seconds before fallback handling...
[2026-06-12 19:28:04,547.547 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 19:28:04,548.548 INFO    ] Checking for system updates...
[2026-06-12 19:28:04,571.571 INFO    ] 200
[2026-06-12 19:28:04,572.572 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:28:04,604.604 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 19:28:04,605.605 INFO    ] No update needed
[2026-06-12 19:28:04,606.606 INFO    ] Checking for camera pi updates...
[2026-06-12 19:28:04,627.627 INFO    ] 200
[2026-06-12 19:28:04,628.628 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:28:04,652.652 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 19:28:04,703.703 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 19:28:04,704.704 INFO    ] No camera update needed
[2026-06-12 19:28:04,705.705 INFO    ] Script finished. Safe exiting...
[2026-06-12 19:28:04,706.706 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 19:28:04,709.709 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 19:28:04,712.712 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 19:28:06,751.751 INFO    ] ================================================
[2026-06-12 19:28:06,767.767 INFO    ] Launching Daemon at Fri Jun 12 19:28:06 IST 2026
[2026-06-12 19:28:06,780.780 INFO    ] ================================================
[2026-06-12 19:28:07,097.097 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 19:28:07
[2026-06-12 19:28:07,407.407 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 19:28:07,553.553 INFO    ] Initializing speech engine...
[2026-06-12 19:28:07,563.563 INFO    ] 2026-06-12 19:28:07
[2026-06-12 19:28:07,779.779 INFO    ] 2026-06-12 19:28:07
[2026-06-12 19:28:07,809.809 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 19:28:07,980.980 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 19:28:08,009.009 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 19:28:08,144.144 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 19:28:08,203.203 INFO    ] time= 12/06/2026 19:28:08
[2026-06-12 19:28:08,235.235 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 19:28:08,241.241 INFO    ] Checking for existing commands in stream...
[2026-06-12 19:28:08,307.307 INFO    ] No existing commands found in stream
[2026-06-12 19:28:13,316.316 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 19:28:13,319.319 INFO    ] Waiting 2.06 seconds before fallback handling...
[2026-06-12 19:28:15,738.738 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 19:28:15,740.740 INFO    ] Checking for system updates...
[2026-06-12 19:28:15,761.761 INFO    ] 200
[2026-06-12 19:28:15,762.762 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:28:15,794.794 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 19:28:15,795.795 INFO    ] No update needed
[2026-06-12 19:28:15,797.797 INFO    ] Checking for camera pi updates...
[2026-06-12 19:28:15,816.816 INFO    ] 200
[2026-06-12 19:28:15,817.817 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:28:15,842.842 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 19:28:15,902.902 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 19:28:15,903.903 INFO    ] No camera update needed
[2026-06-12 19:28:15,904.904 INFO    ] Script finished. Safe exiting...
[2026-06-12 19:28:15,906.906 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 19:28:15,909.909 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 19:28:15,911.911 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 19:28:17,950.950 INFO    ] ================================================
[2026-06-12 19:28:17,965.965 INFO    ] Launching Daemon at Fri Jun 12 19:28:17 IST 2026
[2026-06-12 19:28:17,975.975 INFO    ] ================================================
[2026-06-12 19:28:18,302.302 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 19:28:18
[2026-06-12 19:28:18,621.621 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 19:28:18,765.765 INFO    ] Initializing speech engine...
[2026-06-12 19:28:18,770.770 INFO    ] 2026-06-12 19:28:18
[2026-06-12 19:28:18,974.974 INFO    ] 2026-06-12 19:28:18
[2026-06-12 19:28:19,002.002 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 19:28:19,186.186 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 19:28:19,196.196 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 19:28:19,325.325 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 19:28:19,384.384 INFO    ] time= 12/06/2026 19:28:19
[2026-06-12 19:28:19,417.417 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 19:28:19,423.423 INFO    ] Checking for existing commands in stream...
[2026-06-12 19:28:19,490.490 INFO    ] No existing commands found in stream
[2026-06-12 19:28:24,504.504 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 19:28:24,508.508 INFO    ] Waiting 0.77 seconds before fallback handling...
[2026-06-12 19:28:25,677.677 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 19:28:25,679.679 INFO    ] Checking for system updates...
[2026-06-12 19:28:25,701.701 INFO    ] 200
[2026-06-12 19:28:25,703.703 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:28:25,735.735 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 19:28:25,737.737 INFO    ] No update needed
[2026-06-12 19:28:25,738.738 INFO    ] Checking for camera pi updates...
[2026-06-12 19:28:25,760.760 INFO    ] 200
[2026-06-12 19:28:25,761.761 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:28:25,788.788 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 19:28:25,837.837 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 19:28:25,839.839 INFO    ] No camera update needed
[2026-06-12 19:28:25,840.840 INFO    ] Script finished. Safe exiting...
[2026-06-12 19:28:25,842.842 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 19:28:25,845.845 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 19:28:25,848.848 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 19:28:27,890.890 INFO    ] ================================================
[2026-06-12 19:28:27,905.905 INFO    ] Launching Daemon at Fri Jun 12 19:28:27 IST 2026
[2026-06-12 19:28:27,916.916 INFO    ] ================================================
[2026-06-12 19:28:28,310.310 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 19:28:28
[2026-06-12 19:28:28,651.651 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 19:28:28,803.803 INFO    ] Initializing speech engine...
[2026-06-12 19:28:28,809.809 INFO    ] 2026-06-12 19:28:28
[2026-06-12 19:28:29,016.016 INFO    ] 2026-06-12 19:28:28
[2026-06-12 19:28:29,045.045 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 19:28:29,230.230 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 19:28:29,241.241 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 19:28:29,425.425 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 19:28:29,459.459 INFO    ] time= 12/06/2026 19:28:29
[2026-06-12 19:28:29,461.461 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 19:28:29,466.466 INFO    ] Checking for existing commands in stream...
[2026-06-12 19:28:29,534.534 INFO    ] No existing commands found in stream
[2026-06-12 19:28:34,558.558 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 19:28:34,562.562 INFO    ] Waiting 1.20 seconds before fallback handling...
[2026-06-12 19:28:36,204.204 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 19:28:36,205.205 INFO    ] Checking for system updates...
[2026-06-12 19:28:36,227.227 INFO    ] 200
[2026-06-12 19:28:36,229.229 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:28:36,262.262 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 19:28:36,264.264 INFO    ] No update needed
[2026-06-12 19:28:36,265.265 INFO    ] Checking for camera pi updates...
[2026-06-12 19:28:36,287.287 INFO    ] 200
[2026-06-12 19:28:36,289.289 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:28:36,314.314 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 19:28:36,360.360 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 19:28:36,361.361 INFO    ] No camera update needed
[2026-06-12 19:28:36,363.363 INFO    ] Script finished. Safe exiting...
[2026-06-12 19:28:36,364.364 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 19:28:36,367.367 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 19:28:36,370.370 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 19:28:38,410.410 INFO    ] ================================================
[2026-06-12 19:28:38,426.426 INFO    ] Launching Daemon at Fri Jun 12 19:28:38 IST 2026
[2026-06-12 19:28:38,436.436 INFO    ] ================================================
[2026-06-12 19:28:38,798.798 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 19:28:38
[2026-06-12 19:28:39,110.110 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 19:28:39,251.251 INFO    ] Initializing speech engine...
[2026-06-12 19:28:39,256.256 INFO    ] 2026-06-12 19:28:39
[2026-06-12 19:28:39,458.458 INFO    ] 2026-06-12 19:28:39
[2026-06-12 19:28:39,487.487 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 19:28:39,669.669 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 19:28:39,672.672 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 19:28:39,807.807 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 19:28:39,871.871 INFO    ] time= 12/06/2026 19:28:39
[2026-06-12 19:28:39,897.897 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 19:28:39,903.903 INFO    ] Checking for existing commands in stream...
[2026-06-12 19:28:39,970.970 INFO    ] No existing commands found in stream
[2026-06-12 19:28:44,978.978 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 19:28:44,981.981 INFO    ] Waiting 1.44 seconds before fallback handling...
[2026-06-12 19:28:46,842.842 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 19:28:46,843.843 INFO    ] Checking for system updates...
[2026-06-12 19:28:46,865.865 INFO    ] 200
[2026-06-12 19:28:46,867.867 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:28:46,900.900 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 19:28:46,902.902 INFO    ] No update needed
[2026-06-12 19:28:46,903.903 INFO    ] Checking for camera pi updates...
[2026-06-12 19:28:46,923.923 INFO    ] 200
[2026-06-12 19:28:46,927.927 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:28:46,953.953 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 19:28:47,007.007 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 19:28:47,008.008 INFO    ] No camera update needed
[2026-06-12 19:28:47,010.010 INFO    ] Script finished. Safe exiting...
[2026-06-12 19:28:47,011.011 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 19:28:47,014.014 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 19:28:47,017.017 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 19:28:49,056.056 INFO    ] ================================================
[2026-06-12 19:28:49,071.071 INFO    ] Launching Daemon at Fri Jun 12 19:28:49 IST 2026
[2026-06-12 19:28:49,081.081 INFO    ] ================================================
[2026-06-12 19:28:49,402.402 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 19:28:49
[2026-06-12 19:28:49,714.714 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 19:28:49,843.843 INFO    ] Initializing speech engine...
[2026-06-12 19:28:49,847.847 INFO    ] 2026-06-12 19:28:49
[2026-06-12 19:28:50,067.067 INFO    ] 2026-06-12 19:28:50
[2026-06-12 19:28:50,096.096 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 19:28:50,281.281 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 19:28:50,290.290 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 19:28:50,414.414 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 19:28:50,465.465 INFO    ] time= 12/06/2026 19:28:50
[2026-06-12 19:28:50,504.504 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 19:28:50,515.515 INFO    ] Checking for existing commands in stream...
[2026-06-12 19:28:50,587.587 INFO    ] No existing commands found in stream
[2026-06-12 19:28:55,596.596 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 19:28:55,599.599 INFO    ] Waiting 0.05 seconds before fallback handling...
[2026-06-12 19:28:55,997.997 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 19:28:55,999.999 INFO    ] Checking for system updates...
[2026-06-12 19:28:56,020.020 INFO    ] 200
[2026-06-12 19:28:56,021.021 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:28:56,051.051 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 19:28:56,052.052 INFO    ] No update needed
[2026-06-12 19:28:56,054.054 INFO    ] Checking for camera pi updates...
[2026-06-12 19:28:56,073.073 INFO    ] 200
[2026-06-12 19:28:56,074.074 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:28:56,101.101 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 19:28:56,157.157 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 19:28:56,158.158 INFO    ] No camera update needed
[2026-06-12 19:28:56,159.159 INFO    ] Script finished. Safe exiting...
[2026-06-12 19:28:56,161.161 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 19:28:56,164.164 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 19:28:56,166.166 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 19:28:58,206.206 INFO    ] ================================================
[2026-06-12 19:28:58,221.221 INFO    ] Launching Daemon at Fri Jun 12 19:28:58 IST 2026
[2026-06-12 19:28:58,232.232 INFO    ] ================================================
[2026-06-12 19:28:58,569.569 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 19:28:58
[2026-06-12 19:28:58,881.881 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 19:28:59,011.011 INFO    ] Initializing speech engine...
[2026-06-12 19:28:59,018.018 INFO    ] 2026-06-12 19:28:59
[2026-06-12 19:28:59,229.229 INFO    ] 2026-06-12 19:28:59
[2026-06-12 19:28:59,258.258 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 19:28:59,443.443 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 19:28:59,452.452 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 19:28:59,596.596 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 19:28:59,648.648 INFO    ] time= 12/06/2026 19:28:59
[2026-06-12 19:28:59,671.671 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 19:28:59,677.677 INFO    ] Checking for existing commands in stream...
[2026-06-12 19:28:59,743.743 INFO    ] No existing commands found in stream
[2026-06-12 19:29:04,752.752 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 19:29:04,755.755 INFO    ] Waiting 3.45 seconds before fallback handling...
[2026-06-12 19:29:08,597.597 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 19:29:08,598.598 INFO    ] Checking for system updates...
[2026-06-12 19:29:08,619.619 INFO    ] 200
[2026-06-12 19:29:08,620.620 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:29:08,651.651 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 19:29:08,652.652 INFO    ] No update needed
[2026-06-12 19:29:08,653.653 INFO    ] Checking for camera pi updates...
[2026-06-12 19:29:08,674.674 INFO    ] 200
[2026-06-12 19:29:08,675.675 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:29:08,699.699 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 19:29:08,752.752 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 19:29:08,753.753 INFO    ] No camera update needed
[2026-06-12 19:29:08,754.754 INFO    ] Script finished. Safe exiting...
[2026-06-12 19:29:08,756.756 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 19:29:08,759.759 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 19:29:08,761.761 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 19:29:10,802.802 INFO    ] ================================================
[2026-06-12 19:29:10,817.817 INFO    ] Launching Daemon at Fri Jun 12 19:29:10 IST 2026
[2026-06-12 19:29:10,828.828 INFO    ] ================================================
[2026-06-12 19:29:11,184.184 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 19:29:11
[2026-06-12 19:29:11,528.528 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 19:29:11,681.681 INFO    ] Initializing speech engine...
[2026-06-12 19:29:11,685.685 INFO    ] 2026-06-12 19:29:11
[2026-06-12 19:29:11,896.896 INFO    ] 2026-06-12 19:29:11
[2026-06-12 19:29:11,924.924 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 19:29:12,109.109 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 19:29:12,118.118 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 19:29:12,267.267 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 19:29:12,316.316 INFO    ] time= 12/06/2026 19:29:12
[2026-06-12 19:29:12,338.338 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 19:29:12,345.345 INFO    ] Checking for existing commands in stream...
[2026-06-12 19:29:12,411.411 INFO    ] No existing commands found in stream
[2026-06-12 19:29:17,444.444 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 19:29:17,452.452 INFO    ] Waiting 3.53 seconds before fallback handling...
[2026-06-12 19:29:21,379.379 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 19:29:21,380.380 INFO    ] Checking for system updates...
[2026-06-12 19:29:21,401.401 INFO    ] 200
[2026-06-12 19:29:21,403.403 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:29:21,433.433 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 19:29:21,435.435 INFO    ] No update needed
[2026-06-12 19:29:21,436.436 INFO    ] Checking for camera pi updates...
[2026-06-12 19:29:21,456.456 INFO    ] 200
[2026-06-12 19:29:21,457.457 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:29:21,482.482 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 19:29:21,620.620 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 19:29:21,621.621 INFO    ] No camera update needed
[2026-06-12 19:29:21,623.623 INFO    ] Script finished. Safe exiting...
[2026-06-12 19:29:21,624.624 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 19:29:21,627.627 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 19:29:21,630.630 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 19:29:23,667.667 INFO    ] ================================================
[2026-06-12 19:29:23,682.682 INFO    ] Launching Daemon at Fri Jun 12 19:29:23 IST 2026
[2026-06-12 19:29:23,693.693 INFO    ] ================================================
[2026-06-12 19:29:24,064.064 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 19:29:24
[2026-06-12 19:29:24,376.376 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 19:29:24,514.514 INFO    ] Initializing speech engine...
[2026-06-12 19:29:24,524.524 INFO    ] 2026-06-12 19:29:24
[2026-06-12 19:29:24,728.728 INFO    ] 2026-06-12 19:29:24
[2026-06-12 19:29:24,757.757 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 19:29:24,943.943 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 19:29:24,951.951 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 19:29:25,098.098 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 19:29:25,152.152 INFO    ] time= 12/06/2026 19:29:25
[2026-06-12 19:29:25,173.173 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 19:29:25,180.180 INFO    ] Checking for existing commands in stream...
[2026-06-12 19:29:25,246.246 INFO    ] No existing commands found in stream
[2026-06-12 19:29:30,255.255 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 19:29:30,258.258 INFO    ] Waiting 1.94 seconds before fallback handling...
[2026-06-12 19:29:32,567.567 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 19:29:32,569.569 INFO    ] Checking for system updates...
[2026-06-12 19:29:32,589.589 INFO    ] 200
[2026-06-12 19:29:32,591.591 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:29:32,623.623 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 19:29:32,624.624 INFO    ] No update needed
[2026-06-12 19:29:32,626.626 INFO    ] Checking for camera pi updates...
[2026-06-12 19:29:32,646.646 INFO    ] 200
[2026-06-12 19:29:32,647.647 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:29:32,672.672 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 19:29:32,704.704 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 19:29:32,705.705 INFO    ] No camera update needed
[2026-06-12 19:29:32,707.707 INFO    ] Script finished. Safe exiting...
[2026-06-12 19:29:32,708.708 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 19:29:32,711.711 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 19:29:32,714.714 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 19:29:34,751.751 INFO    ] ================================================
[2026-06-12 19:29:34,766.766 INFO    ] Launching Daemon at Fri Jun 12 19:29:34 IST 2026
[2026-06-12 19:29:34,777.777 INFO    ] ================================================
[2026-06-12 19:29:35,143.143 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 19:29:35
[2026-06-12 19:29:35,455.455 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 19:29:35,597.597 INFO    ] Initializing speech engine...
[2026-06-12 19:29:35,602.602 INFO    ] 2026-06-12 19:29:35
[2026-06-12 19:29:35,804.804 INFO    ] 2026-06-12 19:29:35
[2026-06-12 19:29:35,832.832 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 19:29:36,014.014 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 19:29:36,023.023 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 19:29:36,168.168 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 19:29:36,220.220 INFO    ] time= 12/06/2026 19:29:36
[2026-06-12 19:29:36,243.243 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 19:29:36,249.249 INFO    ] Checking for existing commands in stream...
[2026-06-12 19:29:36,314.314 INFO    ] No existing commands found in stream
[2026-06-12 19:29:41,324.324 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 19:29:41,327.327 INFO    ] Waiting 1.99 seconds before fallback handling...
[2026-06-12 19:29:43,707.707 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 19:29:43,709.709 INFO    ] Checking for system updates...
[2026-06-12 19:29:43,729.729 INFO    ] 200
[2026-06-12 19:29:43,731.731 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:29:43,761.761 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 19:29:43,762.762 INFO    ] No update needed
[2026-06-12 19:29:43,763.763 INFO    ] Checking for camera pi updates...
[2026-06-12 19:29:43,785.785 INFO    ] 200
[2026-06-12 19:29:43,786.786 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:29:43,811.811 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 19:29:43,870.870 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 19:29:43,872.872 INFO    ] No camera update needed
[2026-06-12 19:29:43,873.873 INFO    ] Script finished. Safe exiting...
[2026-06-12 19:29:43,874.874 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 19:29:43,877.877 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 19:29:43,880.880 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 19:29:45,919.919 INFO    ] ================================================
[2026-06-12 19:29:45,956.956 INFO    ] Launching Daemon at Fri Jun 12 19:29:45 IST 2026
[2026-06-12 19:29:45,967.967 INFO    ] ================================================
[2026-06-12 19:29:46,329.329 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 19:29:46
[2026-06-12 19:29:46,667.667 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 19:29:46,818.818 INFO    ] Initializing speech engine...
[2026-06-12 19:29:46,824.824 INFO    ] 2026-06-12 19:29:46
[2026-06-12 19:29:47,030.030 INFO    ] 2026-06-12 19:29:47
[2026-06-12 19:29:47,059.059 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 19:29:47,252.252 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 19:29:47,257.257 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 19:29:47,409.409 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 19:29:47,473.473 INFO    ] time= 12/06/2026 19:29:47
[2026-06-12 19:29:47,479.479 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 19:29:47,481.481 INFO    ] Checking for existing commands in stream...
[2026-06-12 19:29:47,572.572 INFO    ] No existing commands found in stream
[2026-06-12 19:29:52,582.582 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 19:29:52,585.585 INFO    ] Waiting 2.56 seconds before fallback handling...
[2026-06-12 19:29:55,571.571 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 19:29:55,573.573 INFO    ] Checking for system updates...
[2026-06-12 19:29:55,595.595 INFO    ] 200
[2026-06-12 19:29:55,596.596 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:29:55,629.629 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 19:29:55,631.631 INFO    ] No update needed
[2026-06-12 19:29:55,632.632 INFO    ] Checking for camera pi updates...
[2026-06-12 19:29:55,652.652 INFO    ] 200
[2026-06-12 19:29:55,653.653 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:29:55,676.676 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 19:29:55,724.724 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 19:29:55,726.726 INFO    ] No camera update needed
[2026-06-12 19:29:55,727.727 INFO    ] Script finished. Safe exiting...
[2026-06-12 19:29:55,728.728 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 19:29:55,731.731 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 19:29:55,734.734 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 19:29:57,772.772 INFO    ] ================================================
[2026-06-12 19:29:57,787.787 INFO    ] Launching Daemon at Fri Jun 12 19:29:57 IST 2026
[2026-06-12 19:29:57,798.798 INFO    ] ================================================
[2026-06-12 19:29:58,142.142 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 19:29:58
[2026-06-12 19:29:58,455.455 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 19:29:58,598.598 INFO    ] Initializing speech engine...
[2026-06-12 19:29:58,602.602 INFO    ] 2026-06-12 19:29:58
[2026-06-12 19:29:58,807.807 INFO    ] 2026-06-12 19:29:58
[2026-06-12 19:29:58,836.836 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 19:29:59,021.021 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 19:29:59,030.030 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 19:29:59,191.191 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 19:29:59,230.230 INFO    ] time= 12/06/2026 19:29:59
[2026-06-12 19:29:59,252.252 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 19:29:59,258.258 INFO    ] Checking for existing commands in stream...
[2026-06-12 19:29:59,325.325 INFO    ] No existing commands found in stream
[2026-06-12 19:30:04,340.340 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 19:30:04,343.343 INFO    ] Waiting 3.13 seconds before fallback handling...
[2026-06-12 19:30:09,309.309 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 19:30:09,312.312 INFO    ] Checking for system updates...
[2026-06-12 19:30:09,353.353 INFO    ] 200
[2026-06-12 19:30:09,355.355 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:30:09,394.394 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 19:30:09,395.395 INFO    ] No update needed
[2026-06-12 19:30:09,397.397 INFO    ] Checking for camera pi updates...
[2026-06-12 19:30:09,416.416 INFO    ] 200
[2026-06-12 19:30:09,417.417 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:30:09,440.440 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 19:30:09,483.483 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 19:30:09,484.484 INFO    ] No camera update needed
[2026-06-12 19:30:09,485.485 INFO    ] Script finished. Safe exiting...
[2026-06-12 19:30:09,487.487 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 19:30:09,490.490 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 19:30:09,493.493 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 19:30:11,532.532 INFO    ] ================================================
[2026-06-12 19:30:11,547.547 INFO    ] Launching Daemon at Fri Jun 12 19:30:11 IST 2026
[2026-06-12 19:30:11,558.558 INFO    ] ================================================
[2026-06-12 19:30:11,913.913 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 19:30:11
[2026-06-12 19:30:12,226.226 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 19:30:12,363.363 INFO    ] Initializing speech engine...
[2026-06-12 19:30:12,517.517 INFO    ] 2026-06-12 19:30:12
[2026-06-12 19:30:12,773.773 INFO    ] 2026-06-12 19:30:12
[2026-06-12 19:30:12,788.788 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 19:30:12,996.996 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 19:30:13,007.007 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 19:30:13,134.134 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 19:30:13,137.137 INFO    ] time= 12/06/2026 19:30:13
[2026-06-12 19:30:13,139.139 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 19:30:13,142.142 INFO    ] Checking for existing commands in stream...
[2026-06-12 19:30:13,205.205 INFO    ] No existing commands found in stream
[2026-06-12 19:30:18,215.215 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 19:30:18,218.218 INFO    ] Waiting 3.26 seconds before fallback handling...
[2026-06-12 19:30:21,930.930 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 19:30:21,932.932 INFO    ] Checking for system updates...
[2026-06-12 19:30:21,953.953 INFO    ] 200
[2026-06-12 19:30:21,955.955 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:30:21,986.986 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 19:30:21,988.988 INFO    ] No update needed
[2026-06-12 19:30:21,989.989 INFO    ] Checking for camera pi updates...
[2026-06-12 19:30:22,009.009 INFO    ] 200
[2026-06-12 19:30:22,011.011 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:30:22,034.034 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 19:30:22,080.080 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 19:30:22,082.082 INFO    ] No camera update needed
[2026-06-12 19:30:22,083.083 INFO    ] Script finished. Safe exiting...
[2026-06-12 19:30:22,084.084 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 19:30:22,087.087 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 19:30:22,090.090 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 19:30:24,128.128 INFO    ] ================================================
[2026-06-12 19:30:24,143.143 INFO    ] Launching Daemon at Fri Jun 12 19:30:24 IST 2026
[2026-06-12 19:30:24,153.153 INFO    ] ================================================
[2026-06-12 19:30:24,487.487 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 19:30:24
[2026-06-12 19:30:24,800.800 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 19:30:24,931.931 INFO    ] Initializing speech engine...
[2026-06-12 19:30:24,935.935 INFO    ] 2026-06-12 19:30:24
[2026-06-12 19:30:25,153.153 INFO    ] 2026-06-12 19:30:25
[2026-06-12 19:30:25,182.182 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 19:30:25,370.370 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 19:30:25,372.372 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 19:30:25,510.510 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 19:30:25,569.569 INFO    ] time= 12/06/2026 19:30:25
[2026-06-12 19:30:25,603.603 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 19:30:25,605.605 INFO    ] Checking for existing commands in stream...
[2026-06-12 19:30:25,676.676 INFO    ] No existing commands found in stream
[2026-06-12 19:30:30,686.686 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 19:30:30,689.689 INFO    ] Waiting 0.62 seconds before fallback handling...
[2026-06-12 19:30:31,753.753 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 19:30:31,755.755 INFO    ] Checking for system updates...
[2026-06-12 19:30:31,778.778 INFO    ] 200
[2026-06-12 19:30:31,780.780 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:30:31,820.820 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 19:30:31,822.822 INFO    ] No update needed
[2026-06-12 19:30:31,824.824 INFO    ] Checking for camera pi updates...
[2026-06-12 19:30:31,852.852 INFO    ] 200
[2026-06-12 19:30:31,855.855 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:30:31,883.883 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 19:30:31,917.917 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 19:30:31,918.918 INFO    ] No camera update needed
[2026-06-12 19:30:31,920.920 INFO    ] Script finished. Safe exiting...
[2026-06-12 19:30:31,922.922 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 19:30:31,929.929 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 19:30:31,933.933 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 19:30:33,977.977 INFO    ] ================================================
[2026-06-12 19:30:33,993.993 INFO    ] Launching Daemon at Fri Jun 12 19:30:33 IST 2026
[2026-06-12 19:30:34,004.004 INFO    ] ================================================
[2026-06-12 19:30:34,326.326 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 19:30:34
[2026-06-12 19:30:34,637.637 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 19:30:34,775.775 INFO    ] Initializing speech engine...
[2026-06-12 19:30:34,785.785 INFO    ] 2026-06-12 19:30:34
[2026-06-12 19:30:34,989.989 INFO    ] 2026-06-12 19:30:34
[2026-06-12 19:30:35,017.017 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 19:30:35,200.200 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 19:30:35,204.204 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 19:30:35,391.391 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 19:30:35,420.420 INFO    ] time= 12/06/2026 19:30:35
[2026-06-12 19:30:35,431.431 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 19:30:35,436.436 INFO    ] Checking for existing commands in stream...
[2026-06-12 19:30:35,503.503 INFO    ] No existing commands found in stream
[2026-06-12 19:30:40,527.527 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 19:30:40,530.530 INFO    ] Waiting 3.66 seconds before fallback handling...
[2026-06-12 19:30:44,607.607 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 19:30:44,609.609 INFO    ] Checking for system updates...
[2026-06-12 19:30:44,631.631 INFO    ] 200
[2026-06-12 19:30:44,633.633 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:30:44,663.663 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 19:30:44,664.664 INFO    ] No update needed
[2026-06-12 19:30:44,665.665 INFO    ] Checking for camera pi updates...
[2026-06-12 19:30:44,684.684 INFO    ] 200
[2026-06-12 19:30:44,686.686 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:30:44,710.710 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 19:30:44,758.758 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 19:30:44,760.760 INFO    ] No camera update needed
[2026-06-12 19:30:44,761.761 INFO    ] Script finished. Safe exiting...
[2026-06-12 19:30:44,762.762 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 19:30:44,765.765 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 19:30:44,768.768 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 19:30:46,808.808 INFO    ] ================================================
[2026-06-12 19:30:46,824.824 INFO    ] Launching Daemon at Fri Jun 12 19:30:46 IST 2026
[2026-06-12 19:30:46,835.835 INFO    ] ================================================
[2026-06-12 19:30:47,178.178 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 19:30:47
[2026-06-12 19:30:47,496.496 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 19:30:47,642.642 INFO    ] Initializing speech engine...
[2026-06-12 19:30:47,646.646 INFO    ] 2026-06-12 19:30:47
[2026-06-12 19:30:47,865.865 INFO    ] 2026-06-12 19:30:47
[2026-06-12 19:30:47,896.896 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 19:30:48,094.094 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 19:30:48,097.097 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 19:30:48,245.245 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 19:30:48,309.309 INFO    ] time= 12/06/2026 19:30:48
[2026-06-12 19:30:48,343.343 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 19:30:48,350.350 INFO    ] Checking for existing commands in stream...
[2026-06-12 19:30:48,449.449 INFO    ] No existing commands found in stream
[2026-06-12 19:30:53,458.458 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 19:30:53,461.461 INFO    ] Waiting 1.45 seconds before fallback handling...
[2026-06-12 19:30:55,297.297 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 19:30:55,299.299 INFO    ] Checking for system updates...
[2026-06-12 19:30:55,320.320 INFO    ] 200
[2026-06-12 19:30:55,322.322 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:30:55,354.354 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 19:30:55,355.355 INFO    ] No update needed
[2026-06-12 19:30:55,356.356 INFO    ] Checking for camera pi updates...
[2026-06-12 19:30:55,376.376 INFO    ] 200
[2026-06-12 19:30:55,377.377 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:30:55,401.401 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 19:30:55,442.442 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 19:30:55,443.443 INFO    ] No camera update needed
[2026-06-12 19:30:55,445.445 INFO    ] Script finished. Safe exiting...
[2026-06-12 19:30:55,446.446 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 19:30:55,449.449 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 19:30:55,452.452 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 19:30:57,491.491 INFO    ] ================================================
[2026-06-12 19:30:57,506.506 INFO    ] Launching Daemon at Fri Jun 12 19:30:57 IST 2026
[2026-06-12 19:30:57,517.517 INFO    ] ================================================
[2026-06-12 19:30:57,910.910 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 19:30:57
[2026-06-12 19:30:58,247.247 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 19:30:58,401.401 INFO    ] Initializing speech engine...
[2026-06-12 19:30:58,405.405 INFO    ] 2026-06-12 19:30:58
[2026-06-12 19:30:58,614.614 INFO    ] 2026-06-12 19:30:58
[2026-06-12 19:30:58,643.643 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 19:30:58,830.830 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 19:30:58,840.840 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 19:30:58,971.971 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 19:30:59,036.036 INFO    ] time= 12/06/2026 19:30:58
[2026-06-12 19:30:59,063.063 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 19:30:59,070.070 INFO    ] Checking for existing commands in stream...
[2026-06-12 19:30:59,161.161 INFO    ] No existing commands found in stream
[2026-06-12 19:31:04,186.186 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 19:31:04,189.189 INFO    ] Waiting 2.73 seconds before fallback handling...
[2026-06-12 19:31:07,389.389 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 19:31:07,391.391 INFO    ] Checking for system updates...
[2026-06-12 19:31:07,412.412 INFO    ] 200
[2026-06-12 19:31:07,413.413 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:31:07,447.447 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 19:31:07,448.448 INFO    ] No update needed
[2026-06-12 19:31:07,450.450 INFO    ] Checking for camera pi updates...
[2026-06-12 19:31:07,473.473 INFO    ] 200
[2026-06-12 19:31:07,475.475 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:31:07,503.503 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 19:31:07,563.563 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 19:31:07,564.564 INFO    ] No camera update needed
[2026-06-12 19:31:07,566.566 INFO    ] Script finished. Safe exiting...
[2026-06-12 19:31:07,567.567 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 19:31:07,571.571 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 19:31:07,574.574 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 19:31:09,615.615 INFO    ] ================================================
[2026-06-12 19:31:09,632.632 INFO    ] Launching Daemon at Fri Jun 12 19:31:09 IST 2026
[2026-06-12 19:31:09,643.643 INFO    ] ================================================
[2026-06-12 19:31:10,004.004 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 19:31:10
[2026-06-12 19:31:10,315.315 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 19:31:10,444.444 INFO    ] Initializing speech engine...
[2026-06-12 19:31:10,449.449 INFO    ] 2026-06-12 19:31:10
[2026-06-12 19:31:10,664.664 INFO    ] 2026-06-12 19:31:10
[2026-06-12 19:31:10,692.692 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 19:31:10,876.876 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 19:31:10,885.885 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 19:31:11,029.029 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 19:31:11,082.082 INFO    ] time= 12/06/2026 19:31:11
[2026-06-12 19:31:11,104.104 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 19:31:11,110.110 INFO    ] Checking for existing commands in stream...
[2026-06-12 19:31:11,174.174 INFO    ] No existing commands found in stream
[2026-06-12 19:31:16,185.185 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 19:31:16,188.188 INFO    ] Waiting 0.96 seconds before fallback handling...
[2026-06-12 19:31:17,537.537 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 19:31:17,539.539 INFO    ] Checking for system updates...
[2026-06-12 19:31:17,559.559 INFO    ] 200
[2026-06-12 19:31:17,561.561 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:31:17,590.590 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 19:31:17,592.592 INFO    ] No update needed
[2026-06-12 19:31:17,593.593 INFO    ] Checking for camera pi updates...
[2026-06-12 19:31:17,614.614 INFO    ] 200
[2026-06-12 19:31:17,615.615 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:31:17,642.642 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 19:31:17,695.695 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 19:31:17,696.696 INFO    ] No camera update needed
[2026-06-12 19:31:17,697.697 INFO    ] Script finished. Safe exiting...
[2026-06-12 19:31:17,698.698 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 19:31:17,702.702 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 19:31:17,704.704 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 19:31:19,744.744 INFO    ] ================================================
[2026-06-12 19:31:19,761.761 INFO    ] Launching Daemon at Fri Jun 12 19:31:19 IST 2026
[2026-06-12 19:31:19,772.772 INFO    ] ================================================
[2026-06-12 19:31:20,105.105 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 19:31:20
[2026-06-12 19:31:20,417.417 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 19:31:20,551.551 INFO    ] Initializing speech engine...
[2026-06-12 19:31:20,555.555 INFO    ] 2026-06-12 19:31:20
[2026-06-12 19:31:20,747.747 INFO    ] 2026-06-12 19:31:20
[2026-06-12 19:31:20,792.792 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 19:31:20,953.953 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 19:31:21,003.003 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 19:31:21,167.167 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 19:31:21,225.225 INFO    ] time= 12/06/2026 19:31:21
[2026-06-12 19:31:21,255.255 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 19:31:21,278.278 INFO    ] Checking for existing commands in stream...
[2026-06-12 19:31:21,357.357 INFO    ] No existing commands found in stream
[2026-06-12 19:31:26,366.366 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 19:31:26,374.374 INFO    ] Waiting 3.39 seconds before fallback handling...
[2026-06-12 19:31:30,120.120 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 19:31:30,121.121 INFO    ] Checking for system updates...
[2026-06-12 19:31:30,144.144 INFO    ] 200
[2026-06-12 19:31:30,145.145 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:31:30,176.176 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 19:31:30,177.177 INFO    ] No update needed
[2026-06-12 19:31:30,179.179 INFO    ] Checking for camera pi updates...
[2026-06-12 19:31:30,198.198 INFO    ] 200
[2026-06-12 19:31:30,200.200 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:31:30,223.223 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 19:31:30,385.385 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 19:31:30,387.387 INFO    ] No camera update needed
[2026-06-12 19:31:30,388.388 INFO    ] Script finished. Safe exiting...
[2026-06-12 19:31:30,390.390 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 19:31:30,393.393 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 19:31:30,396.396 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 19:31:32,429.429 INFO    ] ================================================
[2026-06-12 19:31:32,438.438 INFO    ] Launching Daemon at Fri Jun 12 19:31:32 IST 2026
[2026-06-12 19:31:32,445.445 INFO    ] ================================================
[2026-06-12 19:31:32,773.773 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 19:31:32
[2026-06-12 19:31:33,102.102 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 19:31:33,231.231 INFO    ] Initializing speech engine...
[2026-06-12 19:31:33,239.239 INFO    ] 2026-06-12 19:31:33
[2026-06-12 19:31:33,451.451 INFO    ] 2026-06-12 19:31:33
[2026-06-12 19:31:33,480.480 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 19:31:33,664.664 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 19:31:33,674.674 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 19:31:33,806.806 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 19:31:33,868.868 INFO    ] time= 12/06/2026 19:31:33
[2026-06-12 19:31:33,892.892 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 19:31:33,898.898 INFO    ] Checking for existing commands in stream...
[2026-06-12 19:31:33,964.964 INFO    ] No existing commands found in stream
[2026-06-12 19:31:38,973.973 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 19:31:38,975.975 INFO    ] Waiting 3.06 seconds before fallback handling...
[2026-06-12 19:31:42,447.447 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 19:31:42,449.449 INFO    ] Checking for system updates...
[2026-06-12 19:31:42,470.470 INFO    ] 200
[2026-06-12 19:31:42,471.471 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:31:42,501.501 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 19:31:42,502.502 INFO    ] No update needed
[2026-06-12 19:31:42,504.504 INFO    ] Checking for camera pi updates...
[2026-06-12 19:31:42,524.524 INFO    ] 200
[2026-06-12 19:31:42,526.526 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:31:42,550.550 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 19:31:42,604.604 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 19:31:42,605.605 INFO    ] No camera update needed
[2026-06-12 19:31:42,606.606 INFO    ] Script finished. Safe exiting...
[2026-06-12 19:31:42,608.608 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 19:31:42,611.611 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 19:31:42,614.614 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 19:31:44,654.654 INFO    ] ================================================
[2026-06-12 19:31:44,671.671 INFO    ] Launching Daemon at Fri Jun 12 19:31:44 IST 2026
[2026-06-12 19:31:44,683.683 INFO    ] ================================================
[2026-06-12 19:31:45,042.042 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 19:31:45
[2026-06-12 19:31:45,368.368 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 19:31:45,522.522 INFO    ] Initializing speech engine...
[2026-06-12 19:31:45,527.527 INFO    ] 2026-06-12 19:31:45
[2026-06-12 19:31:45,737.737 INFO    ] 2026-06-12 19:31:45
[2026-06-12 19:31:45,765.765 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 19:31:45,950.950 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 19:31:45,960.960 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 19:31:46,120.120 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 19:31:46,159.159 INFO    ] time= 12/06/2026 19:31:46
[2026-06-12 19:31:46,180.180 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 19:31:46,186.186 INFO    ] Checking for existing commands in stream...
[2026-06-12 19:31:46,253.253 INFO    ] No existing commands found in stream
[2026-06-12 19:31:51,286.286 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 19:31:51,290.290 INFO    ] Waiting 0.28 seconds before fallback handling...
[2026-06-12 19:31:51,982.982 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 19:31:51,983.983 INFO    ] Checking for system updates...
[2026-06-12 19:31:52,006.006 INFO    ] 200
[2026-06-12 19:31:52,007.007 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:31:52,037.037 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 19:31:52,038.038 INFO    ] No update needed
[2026-06-12 19:31:52,040.040 INFO    ] Checking for camera pi updates...
[2026-06-12 19:31:52,061.061 INFO    ] 200
[2026-06-12 19:31:52,062.062 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:31:52,087.087 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 19:31:52,141.141 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 19:31:52,142.142 INFO    ] No camera update needed
[2026-06-12 19:31:52,144.144 INFO    ] Script finished. Safe exiting...
[2026-06-12 19:31:52,145.145 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 19:31:52,148.148 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 19:31:52,150.150 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 19:31:54,188.188 INFO    ] ================================================
[2026-06-12 19:31:54,204.204 INFO    ] Launching Daemon at Fri Jun 12 19:31:54 IST 2026
[2026-06-12 19:31:54,215.215 INFO    ] ================================================
[2026-06-12 19:31:54,560.560 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 19:31:54
[2026-06-12 19:31:54,877.877 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 19:31:55,023.023 INFO    ] Initializing speech engine...
[2026-06-12 19:31:55,027.027 INFO    ] 2026-06-12 19:31:55
[2026-06-12 19:31:55,231.231 INFO    ] 2026-06-12 19:31:55
[2026-06-12 19:31:55,259.259 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 19:31:55,444.444 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 19:31:55,453.453 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 19:31:55,592.592 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 19:31:55,648.648 INFO    ] time= 12/06/2026 19:31:55
[2026-06-12 19:31:55,673.673 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 19:31:55,678.678 INFO    ] Checking for existing commands in stream...
[2026-06-12 19:31:55,745.745 INFO    ] No existing commands found in stream
[2026-06-12 19:32:00,759.759 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 19:32:00,762.762 INFO    ] Waiting 2.18 seconds before fallback handling...
[2026-06-12 19:32:03,303.303 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 19:32:03,304.304 INFO    ] Checking for system updates...
[2026-06-12 19:32:03,325.325 INFO    ] 200
[2026-06-12 19:32:03,326.326 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:32:03,359.359 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 19:32:03,360.360 INFO    ] No update needed
[2026-06-12 19:32:03,362.362 INFO    ] Checking for camera pi updates...
[2026-06-12 19:32:03,381.381 INFO    ] 200
[2026-06-12 19:32:03,382.382 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:32:03,407.407 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 19:32:03,438.438 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 19:32:03,439.439 INFO    ] No camera update needed
[2026-06-12 19:32:03,441.441 INFO    ] Script finished. Safe exiting...
[2026-06-12 19:32:03,442.442 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 19:32:03,445.445 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 19:32:03,447.447 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 19:32:05,486.486 INFO    ] ================================================
[2026-06-12 19:32:05,502.502 INFO    ] Launching Daemon at Fri Jun 12 19:32:05 IST 2026
[2026-06-12 19:32:05,513.513 INFO    ] ================================================
[2026-06-12 19:32:05,889.889 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 19:32:05
[2026-06-12 19:32:06,210.210 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 19:32:06,342.342 INFO    ] Initializing speech engine...
[2026-06-12 19:32:06,355.355 INFO    ] 2026-06-12 19:32:06
[2026-06-12 19:32:06,562.562 INFO    ] 2026-06-12 19:32:06
[2026-06-12 19:32:06,591.591 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 19:32:06,776.776 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 19:32:06,785.785 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 19:32:06,939.939 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 19:32:06,985.985 INFO    ] time= 12/06/2026 19:32:06
[2026-06-12 19:32:07,006.006 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 19:32:07,013.013 INFO    ] Checking for existing commands in stream...
[2026-06-12 19:32:07,080.080 INFO    ] No existing commands found in stream
[2026-06-12 19:32:12,094.094 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 19:32:12,097.097 INFO    ] Waiting 1.20 seconds before fallback handling...
[2026-06-12 19:32:13,662.662 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 19:32:13,664.664 INFO    ] Checking for system updates...
[2026-06-12 19:32:13,685.685 INFO    ] 200
[2026-06-12 19:32:13,686.686 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:32:13,719.719 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 19:32:13,720.720 INFO    ] No update needed
[2026-06-12 19:32:13,722.722 INFO    ] Checking for camera pi updates...
[2026-06-12 19:32:13,743.743 INFO    ] 200
[2026-06-12 19:32:13,744.744 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:32:13,771.771 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 19:32:13,828.828 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 19:32:13,829.829 INFO    ] No camera update needed
[2026-06-12 19:32:13,831.831 INFO    ] Script finished. Safe exiting...
[2026-06-12 19:32:13,832.832 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 19:32:13,835.835 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 19:32:13,838.838 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 19:32:15,881.881 INFO    ] ================================================
[2026-06-12 19:32:15,897.897 INFO    ] Launching Daemon at Fri Jun 12 19:32:15 IST 2026
[2026-06-12 19:32:15,908.908 INFO    ] ================================================
[2026-06-12 19:32:16,267.267 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 19:32:16
[2026-06-12 19:32:16,585.585 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 19:32:16,726.726 INFO    ] Initializing speech engine...
[2026-06-12 19:32:16,731.731 INFO    ] 2026-06-12 19:32:16
[2026-06-12 19:32:16,933.933 INFO    ] 2026-06-12 19:32:16
[2026-06-12 19:32:16,963.963 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 19:32:17,146.146 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 19:32:17,155.155 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 19:32:17,293.293 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 19:32:17,355.355 INFO    ] time= 12/06/2026 19:32:17
[2026-06-12 19:32:17,387.387 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 19:32:17,394.394 INFO    ] Checking for existing commands in stream...
[2026-06-12 19:32:17,461.461 INFO    ] No existing commands found in stream
[2026-06-12 19:32:22,470.470 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 19:32:22,472.472 INFO    ] Waiting 1.15 seconds before fallback handling...
[2026-06-12 19:32:24,035.035 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 19:32:24,037.037 INFO    ] Checking for system updates...
[2026-06-12 19:32:24,077.077 INFO    ] 200
[2026-06-12 19:32:24,080.080 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:32:24,133.133 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 19:32:24,136.136 INFO    ] No update needed
[2026-06-12 19:32:24,138.138 INFO    ] Checking for camera pi updates...
[2026-06-12 19:32:24,174.174 INFO    ] 200
[2026-06-12 19:32:24,176.176 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:32:24,202.202 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 19:32:24,258.258 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 19:32:24,259.259 INFO    ] No camera update needed
[2026-06-12 19:32:24,261.261 INFO    ] Script finished. Safe exiting...
[2026-06-12 19:32:24,262.262 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 19:32:24,265.265 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 19:32:24,268.268 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 19:32:26,310.310 INFO    ] ================================================
[2026-06-12 19:32:26,326.326 INFO    ] Launching Daemon at Fri Jun 12 19:32:26 IST 2026
[2026-06-12 19:32:26,337.337 INFO    ] ================================================
[2026-06-12 19:32:26,687.687 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 19:32:26
[2026-06-12 19:32:27,026.026 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 19:32:27,177.177 INFO    ] Initializing speech engine...
[2026-06-12 19:32:27,183.183 INFO    ] 2026-06-12 19:32:27
[2026-06-12 19:32:27,391.391 INFO    ] 2026-06-12 19:32:27
[2026-06-12 19:32:27,419.419 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 19:32:27,598.598 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 19:32:27,606.606 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 19:32:27,742.742 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 19:32:27,809.809 INFO    ] time= 12/06/2026 19:32:27
[2026-06-12 19:32:27,833.833 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 19:32:27,840.840 INFO    ] Checking for existing commands in stream...
[2026-06-12 19:32:27,906.906 INFO    ] No existing commands found in stream
[2026-06-12 19:32:32,920.920 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 19:32:32,922.922 INFO    ] Waiting 0.42 seconds before fallback handling...
[2026-06-12 19:32:33,680.680 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 19:32:33,682.682 INFO    ] Checking for system updates...
[2026-06-12 19:32:33,707.707 INFO    ] 200
[2026-06-12 19:32:33,708.708 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:32:33,741.741 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 19:32:33,743.743 INFO    ] No update needed
[2026-06-12 19:32:33,744.744 INFO    ] Checking for camera pi updates...
[2026-06-12 19:32:33,767.767 INFO    ] 200
[2026-06-12 19:32:33,768.768 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:32:33,795.795 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 19:32:33,844.844 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 19:32:33,845.845 INFO    ] No camera update needed
[2026-06-12 19:32:33,847.847 INFO    ] Script finished. Safe exiting...
[2026-06-12 19:32:33,848.848 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 19:32:33,852.852 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 19:32:33,855.855 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 19:32:35,897.897 INFO    ] ================================================
[2026-06-12 19:32:35,913.913 INFO    ] Launching Daemon at Fri Jun 12 19:32:35 IST 2026
[2026-06-12 19:32:35,922.922 INFO    ] ================================================
[2026-06-12 19:32:36,222.222 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 19:32:36
[2026-06-12 19:32:36,534.534 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 19:32:36,666.666 INFO    ] Initializing speech engine...
[2026-06-12 19:32:36,670.670 INFO    ] 2026-06-12 19:32:36
[2026-06-12 19:32:36,898.898 INFO    ] 2026-06-12 19:32:36
[2026-06-12 19:32:36,929.929 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 19:32:37,126.126 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 19:32:37,137.137 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 19:32:37,269.269 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 19:32:37,330.330 INFO    ] time= 12/06/2026 19:32:37
[2026-06-12 19:32:37,370.370 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 19:32:37,376.376 INFO    ] Checking for existing commands in stream...
[2026-06-12 19:32:37,451.451 INFO    ] No existing commands found in stream
[2026-06-12 19:32:42,461.461 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 19:32:42,464.464 INFO    ] Waiting 1.74 seconds before fallback handling...
[2026-06-12 19:32:44,537.537 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 19:32:44,539.539 INFO    ] Checking for system updates...
[2026-06-12 19:32:44,574.574 INFO    ] 200
[2026-06-12 19:32:44,576.576 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:32:44,635.635 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 19:32:44,638.638 INFO    ] No update needed
[2026-06-12 19:32:44,640.640 INFO    ] Checking for camera pi updates...
[2026-06-12 19:32:44,674.674 INFO    ] 200
[2026-06-12 19:32:44,676.676 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:32:44,721.721 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 19:32:44,765.765 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 19:32:44,767.767 INFO    ] No camera update needed
[2026-06-12 19:32:44,768.768 INFO    ] Script finished. Safe exiting...
[2026-06-12 19:32:44,769.769 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 19:32:44,772.772 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 19:32:44,775.775 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 19:32:46,813.813 INFO    ] ================================================
[2026-06-12 19:32:46,830.830 INFO    ] Launching Daemon at Fri Jun 12 19:32:46 IST 2026
[2026-06-12 19:32:46,841.841 INFO    ] ================================================
[2026-06-12 19:32:47,202.202 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 19:32:47
[2026-06-12 19:32:47,514.514 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 19:32:47,647.647 INFO    ] Initializing speech engine...
[2026-06-12 19:32:47,651.651 INFO    ] 2026-06-12 19:32:47
[2026-06-12 19:32:47,878.878 INFO    ] 2026-06-12 19:32:47
[2026-06-12 19:32:47,908.908 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 19:32:48,106.106 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 19:32:48,109.109 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 19:32:48,252.252 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 19:32:48,325.325 INFO    ] time= 12/06/2026 19:32:48
[2026-06-12 19:32:48,353.353 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 19:32:48,360.360 INFO    ] Checking for existing commands in stream...
[2026-06-12 19:32:48,431.431 INFO    ] No existing commands found in stream
[2026-06-12 19:32:53,440.440 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 19:32:53,443.443 INFO    ] Waiting 1.48 seconds before fallback handling...
[2026-06-12 19:32:55,305.305 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 19:32:55,307.307 INFO    ] Checking for system updates...
[2026-06-12 19:32:55,327.327 INFO    ] 200
[2026-06-12 19:32:55,329.329 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:32:55,361.361 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 19:32:55,362.362 INFO    ] No update needed
[2026-06-12 19:32:55,364.364 INFO    ] Checking for camera pi updates...
[2026-06-12 19:32:55,386.386 INFO    ] 200
[2026-06-12 19:32:55,387.387 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:32:55,410.410 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 19:32:55,465.465 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 19:32:55,466.466 INFO    ] No camera update needed
[2026-06-12 19:32:55,467.467 INFO    ] Script finished. Safe exiting...
[2026-06-12 19:32:55,469.469 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 19:32:55,472.472 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 19:32:55,475.475 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 19:32:57,517.517 INFO    ] ================================================
[2026-06-12 19:32:57,532.532 INFO    ] Launching Daemon at Fri Jun 12 19:32:57 IST 2026
[2026-06-12 19:32:57,544.544 INFO    ] ================================================
[2026-06-12 19:32:57,913.913 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 19:32:57
[2026-06-12 19:32:58,247.247 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 19:32:58,398.398 INFO    ] Initializing speech engine...
[2026-06-12 19:32:58,403.403 INFO    ] 2026-06-12 19:32:58
[2026-06-12 19:32:58,613.613 INFO    ] 2026-06-12 19:32:58
[2026-06-12 19:32:58,643.643 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 19:32:58,829.829 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 19:32:58,839.839 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 19:32:58,968.968 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 19:32:59,035.035 INFO    ] time= 12/06/2026 19:32:58
[2026-06-12 19:32:59,067.067 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 19:32:59,074.074 INFO    ] Checking for existing commands in stream...
[2026-06-12 19:32:59,142.142 INFO    ] No existing commands found in stream
[2026-06-12 19:33:04,156.156 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 19:33:04,159.159 INFO    ] Waiting 2.98 seconds before fallback handling...
[2026-06-12 19:33:07,540.540 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 19:33:07,542.542 INFO    ] Checking for system updates...
[2026-06-12 19:33:07,563.563 INFO    ] 200
[2026-06-12 19:33:07,564.564 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:33:07,594.594 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 19:33:07,595.595 INFO    ] No update needed
[2026-06-12 19:33:07,597.597 INFO    ] Checking for camera pi updates...
[2026-06-12 19:33:07,616.616 INFO    ] 200
[2026-06-12 19:33:07,617.617 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:33:07,643.643 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 19:33:07,689.689 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 19:33:07,690.690 INFO    ] No camera update needed
[2026-06-12 19:33:07,692.692 INFO    ] Script finished. Safe exiting...
[2026-06-12 19:33:07,693.693 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 19:33:07,696.696 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 19:33:07,698.698 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 19:33:09,736.736 INFO    ] ================================================
[2026-06-12 19:33:09,752.752 INFO    ] Launching Daemon at Fri Jun 12 19:33:09 IST 2026
[2026-06-12 19:33:09,763.763 INFO    ] ================================================
[2026-06-12 19:33:10,088.088 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 19:33:10
[2026-06-12 19:33:10,397.397 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 19:33:10,539.539 INFO    ] Initializing speech engine...
[2026-06-12 19:33:10,543.543 INFO    ] 2026-06-12 19:33:10
[2026-06-12 19:33:10,746.746 INFO    ] 2026-06-12 19:33:10
[2026-06-12 19:33:10,774.774 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 19:33:10,958.958 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 19:33:10,968.968 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 19:33:11,114.114 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 19:33:11,167.167 INFO    ] time= 12/06/2026 19:33:11
[2026-06-12 19:33:11,190.190 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 19:33:11,196.196 INFO    ] Checking for existing commands in stream...
[2026-06-12 19:33:11,262.262 INFO    ] No existing commands found in stream
[2026-06-12 19:33:16,271.271 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 19:33:16,274.274 INFO    ] Waiting 0.30 seconds before fallback handling...
[2026-06-12 19:33:16,956.956 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 19:33:16,958.958 INFO    ] Checking for system updates...
[2026-06-12 19:33:16,979.979 INFO    ] 200
[2026-06-12 19:33:16,981.981 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:33:17,013.013 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 19:33:17,014.014 INFO    ] No update needed
[2026-06-12 19:33:17,015.015 INFO    ] Checking for camera pi updates...
[2026-06-12 19:33:17,034.034 INFO    ] 200
[2026-06-12 19:33:17,035.035 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:33:17,062.062 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 19:33:17,103.103 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 19:33:17,104.104 INFO    ] No camera update needed
[2026-06-12 19:33:17,105.105 INFO    ] Script finished. Safe exiting...
[2026-06-12 19:33:17,106.106 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 19:33:17,109.109 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 19:33:17,112.112 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 19:33:19,153.153 INFO    ] ================================================
[2026-06-12 19:33:19,168.168 INFO    ] Launching Daemon at Fri Jun 12 19:33:19 IST 2026
[2026-06-12 19:33:19,178.178 INFO    ] ================================================
[2026-06-12 19:33:19,507.507 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 19:33:19
[2026-06-12 19:33:19,823.823 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 19:33:19,955.955 INFO    ] Initializing speech engine...
[2026-06-12 19:33:19,968.968 INFO    ] 2026-06-12 19:33:19
[2026-06-12 19:33:20,174.174 INFO    ] 2026-06-12 19:33:20
[2026-06-12 19:33:20,203.203 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 19:33:20,390.390 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 19:33:20,398.398 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 19:33:20,549.549 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 19:33:20,609.609 INFO    ] time= 12/06/2026 19:33:20
[2026-06-12 19:33:20,619.619 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 19:33:20,625.625 INFO    ] Checking for existing commands in stream...
[2026-06-12 19:33:20,692.692 INFO    ] No existing commands found in stream
[2026-06-12 19:33:25,724.724 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 19:33:25,727.727 INFO    ] Waiting 0.91 seconds before fallback handling...
[2026-06-12 19:33:27,009.009 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 19:33:27,011.011 INFO    ] Checking for system updates...
[2026-06-12 19:33:27,037.037 INFO    ] 200
[2026-06-12 19:33:27,038.038 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:33:27,070.070 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 19:33:27,072.072 INFO    ] No update needed
[2026-06-12 19:33:27,073.073 INFO    ] Checking for camera pi updates...
[2026-06-12 19:33:27,092.092 INFO    ] 200
[2026-06-12 19:33:27,094.094 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:33:27,119.119 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 19:33:27,172.172 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 19:33:27,173.173 INFO    ] No camera update needed
[2026-06-12 19:33:27,175.175 INFO    ] Script finished. Safe exiting...
[2026-06-12 19:33:27,176.176 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 19:33:27,179.179 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 19:33:27,182.182 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 19:33:29,221.221 INFO    ] ================================================
[2026-06-12 19:33:29,236.236 INFO    ] Launching Daemon at Fri Jun 12 19:33:29 IST 2026
[2026-06-12 19:33:29,246.246 INFO    ] ================================================
[2026-06-12 19:33:29,610.610 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 19:33:29
[2026-06-12 19:33:29,961.961 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 19:33:30,123.123 INFO    ] Initializing speech engine...
[2026-06-12 19:33:30,128.128 INFO    ] 2026-06-12 19:33:30
[2026-06-12 19:33:30,350.350 INFO    ] 2026-06-12 19:33:30
[2026-06-12 19:33:30,386.386 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 19:33:30,591.591 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 19:33:30,600.600 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 19:33:30,740.740 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 19:33:30,796.796 INFO    ] time= 12/06/2026 19:33:30
[2026-06-12 19:33:30,820.820 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 19:33:30,826.826 INFO    ] Checking for existing commands in stream...
[2026-06-12 19:33:30,894.894 INFO    ] No existing commands found in stream
[2026-06-12 19:33:35,908.908 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 19:33:35,911.911 INFO    ] Waiting 3.04 seconds before fallback handling...
[2026-06-12 19:33:39,323.323 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 19:33:39,324.324 INFO    ] Checking for system updates...
[2026-06-12 19:33:39,345.345 INFO    ] 200
[2026-06-12 19:33:39,347.347 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:33:39,379.379 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 19:33:39,380.380 INFO    ] No update needed
[2026-06-12 19:33:39,382.382 INFO    ] Checking for camera pi updates...
[2026-06-12 19:33:39,401.401 INFO    ] 200
[2026-06-12 19:33:39,403.403 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:33:39,427.427 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 19:33:39,575.575 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 19:33:39,577.577 INFO    ] No camera update needed
[2026-06-12 19:33:39,578.578 INFO    ] Script finished. Safe exiting...
[2026-06-12 19:33:39,579.579 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 19:33:39,583.583 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 19:33:39,585.585 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 19:33:41,624.624 INFO    ] ================================================
[2026-06-12 19:33:41,639.639 INFO    ] Launching Daemon at Fri Jun 12 19:33:41 IST 2026
[2026-06-12 19:33:41,650.650 INFO    ] ================================================
[2026-06-12 19:33:42,006.006 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 19:33:42
[2026-06-12 19:33:42,316.316 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 19:33:42,457.457 INFO    ] Initializing speech engine...
[2026-06-12 19:33:42,462.462 INFO    ] 2026-06-12 19:33:42
[2026-06-12 19:33:42,666.666 INFO    ] 2026-06-12 19:33:42
[2026-06-12 19:33:42,694.694 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 19:33:42,876.876 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 19:33:42,879.879 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 19:33:43,024.024 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 19:33:43,080.080 INFO    ] time= 12/06/2026 19:33:43
[2026-06-12 19:33:43,103.103 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 19:33:43,110.110 INFO    ] Checking for existing commands in stream...
[2026-06-12 19:33:43,180.180 INFO    ] No existing commands found in stream
[2026-06-12 19:33:48,189.189 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 19:33:48,192.192 INFO    ] Waiting 0.53 seconds before fallback handling...
[2026-06-12 19:33:49,140.140 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 19:33:49,142.142 INFO    ] Checking for system updates...
[2026-06-12 19:33:49,162.162 INFO    ] 200
[2026-06-12 19:33:49,164.164 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:33:49,199.199 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 19:33:49,201.201 INFO    ] No update needed
[2026-06-12 19:33:49,202.202 INFO    ] Checking for camera pi updates...
[2026-06-12 19:33:49,222.222 INFO    ] 200
[2026-06-12 19:33:49,223.223 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:33:49,247.247 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 19:33:49,290.290 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 19:33:49,291.291 INFO    ] No camera update needed
[2026-06-12 19:33:49,293.293 INFO    ] Script finished. Safe exiting...
[2026-06-12 19:33:49,294.294 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 19:33:49,297.297 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 19:33:49,300.300 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 19:33:51,338.338 INFO    ] ================================================
[2026-06-12 19:33:51,353.353 INFO    ] Launching Daemon at Fri Jun 12 19:33:51 IST 2026
[2026-06-12 19:33:51,363.363 INFO    ] ================================================
[2026-06-12 19:33:51,731.731 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 19:33:51
[2026-06-12 19:33:52,046.046 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 19:33:52,182.182 INFO    ] Initializing speech engine...
[2026-06-12 19:33:52,192.192 INFO    ] 2026-06-12 19:33:52
[2026-06-12 19:33:52,394.394 INFO    ] 2026-06-12 19:33:52
[2026-06-12 19:33:52,423.423 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 19:33:52,606.606 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 19:33:52,616.616 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 19:33:52,760.760 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 19:33:52,812.812 INFO    ] time= 12/06/2026 19:33:52
[2026-06-12 19:33:52,836.836 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 19:33:52,841.841 INFO    ] Checking for existing commands in stream...
[2026-06-12 19:33:52,933.933 INFO    ] No existing commands found in stream
[2026-06-12 19:33:57,946.946 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 19:33:57,949.949 INFO    ] Waiting 0.95 seconds before fallback handling...
[2026-06-12 19:33:59,248.248 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 19:33:59,249.249 INFO    ] Checking for system updates...
[2026-06-12 19:33:59,270.270 INFO    ] 200
[2026-06-12 19:33:59,271.271 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:33:59,303.303 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 19:33:59,304.304 INFO    ] No update needed
[2026-06-12 19:33:59,306.306 INFO    ] Checking for camera pi updates...
[2026-06-12 19:33:59,325.325 INFO    ] 200
[2026-06-12 19:33:59,326.326 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:33:59,349.349 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 19:33:59,394.394 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 19:33:59,396.396 INFO    ] No camera update needed
[2026-06-12 19:33:59,397.397 INFO    ] Script finished. Safe exiting...
[2026-06-12 19:33:59,398.398 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 19:33:59,401.401 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 19:33:59,404.404 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 19:34:01,442.442 INFO    ] ================================================
[2026-06-12 19:34:01,458.458 INFO    ] Launching Daemon at Fri Jun 12 19:34:01 IST 2026
[2026-06-12 19:34:01,470.470 INFO    ] ================================================
[2026-06-12 19:34:01,886.886 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 19:34:01
[2026-06-12 19:34:02,267.267 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 19:34:02,427.427 INFO    ] Initializing speech engine...
[2026-06-12 19:34:02,438.438 INFO    ] 2026-06-12 19:34:02
[2026-06-12 19:34:02,658.658 INFO    ] 2026-06-12 19:34:02
[2026-06-12 19:34:02,707.707 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 19:34:02,866.866 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 19:34:02,904.904 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 19:34:03,071.071 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 19:34:03,135.135 INFO    ] time= 12/06/2026 19:34:03
[2026-06-12 19:34:03,163.163 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 19:34:03,170.170 INFO    ] Checking for existing commands in stream...
[2026-06-12 19:34:03,238.238 INFO    ] No existing commands found in stream
[2026-06-12 19:34:08,247.247 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 19:34:08,250.250 INFO    ] Waiting 2.96 seconds before fallback handling...
[2026-06-12 19:34:11,578.578 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 19:34:11,579.579 INFO    ] Checking for system updates...
[2026-06-12 19:34:11,600.600 INFO    ] 200
[2026-06-12 19:34:11,601.601 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:34:11,631.631 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 19:34:11,632.632 INFO    ] No update needed
[2026-06-12 19:34:11,634.634 INFO    ] Checking for camera pi updates...
[2026-06-12 19:34:11,654.654 INFO    ] 200
[2026-06-12 19:34:11,655.655 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:34:11,678.678 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 19:34:11,721.721 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 19:34:11,722.722 INFO    ] No camera update needed
[2026-06-12 19:34:11,723.723 INFO    ] Script finished. Safe exiting...
[2026-06-12 19:34:11,724.724 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 19:34:11,727.727 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 19:34:11,730.730 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 19:34:13,768.768 INFO    ] ================================================
[2026-06-12 19:34:13,784.784 INFO    ] Launching Daemon at Fri Jun 12 19:34:13 IST 2026
[2026-06-12 19:34:13,795.795 INFO    ] ================================================
[2026-06-12 19:34:14,145.145 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 19:34:14
[2026-06-12 19:34:14,462.462 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 19:34:14,605.605 INFO    ] Initializing speech engine...
[2026-06-12 19:34:14,611.611 INFO    ] 2026-06-12 19:34:14
[2026-06-12 19:34:14,814.814 INFO    ] 2026-06-12 19:34:14
[2026-06-12 19:34:14,843.843 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 19:34:15,026.026 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 19:34:15,036.036 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 19:34:15,179.179 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 19:34:15,232.232 INFO    ] time= 12/06/2026 19:34:15
[2026-06-12 19:34:15,253.253 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 19:34:15,260.260 INFO    ] Checking for existing commands in stream...
[2026-06-12 19:34:15,326.326 INFO    ] No existing commands found in stream
[2026-06-12 19:34:20,335.335 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 19:34:20,337.337 INFO    ] Waiting 2.46 seconds before fallback handling...
[2026-06-12 19:34:23,189.189 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 19:34:23,191.191 INFO    ] Checking for system updates...
[2026-06-12 19:34:23,211.211 INFO    ] 200
[2026-06-12 19:34:23,213.213 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:34:23,243.243 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 19:34:23,245.245 INFO    ] No update needed
[2026-06-12 19:34:23,246.246 INFO    ] Checking for camera pi updates...
[2026-06-12 19:34:23,265.265 INFO    ] 200
[2026-06-12 19:34:23,267.267 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:34:23,290.290 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 19:34:23,342.342 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 19:34:23,344.344 INFO    ] No camera update needed
[2026-06-12 19:34:23,345.345 INFO    ] Script finished. Safe exiting...
[2026-06-12 19:34:23,346.346 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 19:34:23,349.349 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 19:34:23,352.352 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 19:34:25,391.391 INFO    ] ================================================
[2026-06-12 19:34:25,407.407 INFO    ] Launching Daemon at Fri Jun 12 19:34:25 IST 2026
[2026-06-12 19:34:25,418.418 INFO    ] ================================================
[2026-06-12 19:34:25,758.758 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 19:34:25
[2026-06-12 19:34:26,076.076 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 19:34:26,221.221 INFO    ] Initializing speech engine...
[2026-06-12 19:34:26,226.226 INFO    ] 2026-06-12 19:34:26
[2026-06-12 19:34:26,429.429 INFO    ] 2026-06-12 19:34:26
[2026-06-12 19:34:26,457.457 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 19:34:26,641.641 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 19:34:26,645.645 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 19:34:26,801.801 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 19:34:26,850.850 INFO    ] time= 12/06/2026 19:34:26
[2026-06-12 19:34:26,872.872 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 19:34:26,878.878 INFO    ] Checking for existing commands in stream...
[2026-06-12 19:34:26,944.944 INFO    ] No existing commands found in stream
[2026-06-12 19:34:31,957.957 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 19:34:31,959.959 INFO    ] Waiting 3.66 seconds before fallback handling...
[2026-06-12 19:34:36,003.003 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 19:34:36,005.005 INFO    ] Checking for system updates...
[2026-06-12 19:34:36,026.026 INFO    ] 200
[2026-06-12 19:34:36,027.027 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:34:36,058.058 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 19:34:36,059.059 INFO    ] No update needed
[2026-06-12 19:34:36,060.060 INFO    ] Checking for camera pi updates...
[2026-06-12 19:34:36,084.084 INFO    ] 200
[2026-06-12 19:34:36,086.086 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:34:36,109.109 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 19:34:36,152.152 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 19:34:36,153.153 INFO    ] No camera update needed
[2026-06-12 19:34:36,154.154 INFO    ] Script finished. Safe exiting...
[2026-06-12 19:34:36,156.156 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 19:34:36,159.159 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 19:34:36,161.161 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 19:34:38,201.201 INFO    ] ================================================
[2026-06-12 19:34:38,216.216 INFO    ] Launching Daemon at Fri Jun 12 19:34:38 IST 2026
[2026-06-12 19:34:38,227.227 INFO    ] ================================================
[2026-06-12 19:34:38,564.564 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 19:34:38
[2026-06-12 19:34:38,882.882 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 19:34:39,014.014 INFO    ] Initializing speech engine...
[2026-06-12 19:34:39,022.022 INFO    ] 2026-06-12 19:34:39
[2026-06-12 19:34:39,232.232 INFO    ] 2026-06-12 19:34:39
[2026-06-12 19:34:39,261.261 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 19:34:39,445.445 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 19:34:39,454.454 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 19:34:39,598.598 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 19:34:39,651.651 INFO    ] time= 12/06/2026 19:34:39
[2026-06-12 19:34:39,673.673 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 19:34:39,679.679 INFO    ] Checking for existing commands in stream...
[2026-06-12 19:34:39,746.746 INFO    ] No existing commands found in stream
[2026-06-12 19:34:44,755.755 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 19:34:44,758.758 INFO    ] Waiting 0.62 seconds before fallback handling...
[2026-06-12 19:34:45,782.782 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 19:34:45,783.783 INFO    ] Checking for system updates...
[2026-06-12 19:34:45,803.803 INFO    ] 200
[2026-06-12 19:34:45,805.805 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:34:45,839.839 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 19:34:45,840.840 INFO    ] No update needed
[2026-06-12 19:34:45,842.842 INFO    ] Checking for camera pi updates...
[2026-06-12 19:34:45,861.861 INFO    ] 200
[2026-06-12 19:34:45,862.862 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:34:45,887.887 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 19:34:45,944.944 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 19:34:45,946.946 INFO    ] No camera update needed
[2026-06-12 19:34:45,947.947 INFO    ] Script finished. Safe exiting...
[2026-06-12 19:34:45,948.948 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 19:34:45,951.951 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 19:34:45,954.954 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 19:34:47,992.992 INFO    ] ================================================
[2026-06-12 19:34:48,007.007 INFO    ] Launching Daemon at Fri Jun 12 19:34:48 IST 2026
[2026-06-12 19:34:48,018.018 INFO    ] ================================================
[2026-06-12 19:34:48,366.366 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 19:34:48
[2026-06-12 19:34:48,679.679 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 19:34:48,821.821 INFO    ] Initializing speech engine...
[2026-06-12 19:34:48,826.826 INFO    ] 2026-06-12 19:34:48
[2026-06-12 19:34:49,028.028 INFO    ] 2026-06-12 19:34:49
[2026-06-12 19:34:49,056.056 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 19:34:49,239.239 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 19:34:49,249.249 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 19:34:49,377.377 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 19:34:49,443.443 INFO    ] time= 12/06/2026 19:34:49
[2026-06-12 19:34:49,471.471 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 19:34:49,477.477 INFO    ] Checking for existing commands in stream...
[2026-06-12 19:34:49,544.544 INFO    ] No existing commands found in stream
[2026-06-12 19:34:54,558.558 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 19:34:54,561.561 INFO    ] Waiting 0.25 seconds before fallback handling...
[2026-06-12 19:34:55,178.178 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 19:34:55,180.180 INFO    ] Checking for system updates...
[2026-06-12 19:34:55,200.200 INFO    ] 200
[2026-06-12 19:34:55,201.201 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:34:55,235.235 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 19:34:55,236.236 INFO    ] No update needed
[2026-06-12 19:34:55,238.238 INFO    ] Checking for camera pi updates...
[2026-06-12 19:34:55,257.257 INFO    ] 200
[2026-06-12 19:34:55,258.258 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:34:55,281.281 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 19:34:55,336.336 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 19:34:55,337.337 INFO    ] No camera update needed
[2026-06-12 19:34:55,339.339 INFO    ] Script finished. Safe exiting...
[2026-06-12 19:34:55,340.340 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 19:34:55,343.343 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 19:34:55,346.346 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 19:34:57,383.383 INFO    ] ================================================
[2026-06-12 19:34:57,398.398 INFO    ] Launching Daemon at Fri Jun 12 19:34:57 IST 2026
[2026-06-12 19:34:57,409.409 INFO    ] ================================================
[2026-06-12 19:34:57,795.795 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 19:34:57
[2026-06-12 19:34:58,133.133 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 19:34:58,265.265 INFO    ] Initializing speech engine...
[2026-06-12 19:34:58,268.268 INFO    ] 2026-06-12 19:34:58
[2026-06-12 19:34:58,485.485 INFO    ] 2026-06-12 19:34:58
[2026-06-12 19:34:58,513.513 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 19:34:58,699.699 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 19:34:58,708.708 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 19:34:58,838.838 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 19:34:58,906.906 INFO    ] time= 12/06/2026 19:34:58
[2026-06-12 19:34:58,931.931 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 19:34:58,933.933 INFO    ] Checking for existing commands in stream...
[2026-06-12 19:34:59,005.005 INFO    ] No existing commands found in stream
[2026-06-12 19:35:04,019.019 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 19:35:04,022.022 INFO    ] Waiting 2.31 seconds before fallback handling...
[2026-06-12 19:35:06,680.680 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 19:35:06,681.681 INFO    ] Checking for system updates...
[2026-06-12 19:35:06,702.702 INFO    ] 200
[2026-06-12 19:35:06,703.703 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:35:06,734.734 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 19:35:06,735.735 INFO    ] No update needed
[2026-06-12 19:35:06,737.737 INFO    ] Checking for camera pi updates...
[2026-06-12 19:35:06,756.756 INFO    ] 200
[2026-06-12 19:35:06,757.757 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:35:06,782.782 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 19:35:06,837.837 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 19:35:06,838.838 INFO    ] No camera update needed
[2026-06-12 19:35:06,840.840 INFO    ] Script finished. Safe exiting...
[2026-06-12 19:35:06,841.841 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 19:35:06,844.844 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 19:35:06,847.847 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 19:35:08,886.886 INFO    ] ================================================
[2026-06-12 19:35:08,901.901 INFO    ] Launching Daemon at Fri Jun 12 19:35:08 IST 2026
[2026-06-12 19:35:08,912.912 INFO    ] ================================================
[2026-06-12 19:35:09,260.260 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 19:35:09
[2026-06-12 19:35:09,571.571 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 19:35:09,702.702 INFO    ] Initializing speech engine...
[2026-06-12 19:35:09,710.710 INFO    ] 2026-06-12 19:35:09
[2026-06-12 19:35:09,924.924 INFO    ] 2026-06-12 19:35:09
[2026-06-12 19:35:09,954.954 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 19:35:10,078.078 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 19:35:10,141.141 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 19:35:10,281.281 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 19:35:10,335.335 INFO    ] time= 12/06/2026 19:35:10
[2026-06-12 19:35:10,365.365 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 19:35:10,375.375 INFO    ] Checking for existing commands in stream...
[2026-06-12 19:35:10,471.471 INFO    ] No existing commands found in stream
[2026-06-12 19:35:15,480.480 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 19:35:15,483.483 INFO    ] Waiting 2.56 seconds before fallback handling...
[2026-06-12 19:35:18,419.419 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 19:35:18,420.420 INFO    ] Checking for system updates...
[2026-06-12 19:35:18,442.442 INFO    ] 200
[2026-06-12 19:35:18,443.443 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:35:18,473.473 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 19:35:18,474.474 INFO    ] No update needed
[2026-06-12 19:35:18,475.475 INFO    ] Checking for camera pi updates...
[2026-06-12 19:35:18,494.494 INFO    ] 200
[2026-06-12 19:35:18,496.496 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:35:18,520.520 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 19:35:18,550.550 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 19:35:18,552.552 INFO    ] No camera update needed
[2026-06-12 19:35:18,553.553 INFO    ] Script finished. Safe exiting...
[2026-06-12 19:35:18,554.554 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 19:35:18,557.557 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 19:35:18,560.560 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 19:35:20,601.601 INFO    ] ================================================
[2026-06-12 19:35:20,616.616 INFO    ] Launching Daemon at Fri Jun 12 19:35:20 IST 2026
[2026-06-12 19:35:20,627.627 INFO    ] ================================================
[2026-06-12 19:35:20,972.972 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 19:35:20
[2026-06-12 19:35:21,283.283 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 19:35:21,414.414 INFO    ] Initializing speech engine...
[2026-06-12 19:35:21,419.419 INFO    ] 2026-06-12 19:35:21
[2026-06-12 19:35:21,647.647 INFO    ] 2026-06-12 19:35:21
[2026-06-12 19:35:21,678.678 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 19:35:21,871.871 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 19:35:21,881.881 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 19:35:22,021.021 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 19:35:22,076.076 INFO    ] time= 12/06/2026 19:35:22
[2026-06-12 19:35:22,100.100 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 19:35:22,106.106 INFO    ] Checking for existing commands in stream...
[2026-06-12 19:35:22,202.202 INFO    ] No existing commands found in stream
[2026-06-12 19:35:27,215.215 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 19:35:27,218.218 INFO    ] Waiting 0.91 seconds before fallback handling...
[2026-06-12 19:35:28,519.519 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 19:35:28,521.521 INFO    ] Checking for system updates...
[2026-06-12 19:35:28,541.541 INFO    ] 200
[2026-06-12 19:35:28,543.543 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:35:28,576.576 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 19:35:28,577.577 INFO    ] No update needed
[2026-06-12 19:35:28,579.579 INFO    ] Checking for camera pi updates...
[2026-06-12 19:35:28,600.600 INFO    ] 200
[2026-06-12 19:35:28,601.601 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:35:28,626.626 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 19:35:28,674.674 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 19:35:28,676.676 INFO    ] No camera update needed
[2026-06-12 19:35:28,677.677 INFO    ] Script finished. Safe exiting...
[2026-06-12 19:35:28,678.678 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 19:35:28,682.682 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 19:35:28,686.686 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 19:35:30,724.724 INFO    ] ================================================
[2026-06-12 19:35:30,739.739 INFO    ] Launching Daemon at Fri Jun 12 19:35:30 IST 2026
[2026-06-12 19:35:30,750.750 INFO    ] ================================================
[2026-06-12 19:35:31,119.119 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 19:35:31
[2026-06-12 19:35:31,457.457 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 19:35:31,608.608 INFO    ] Initializing speech engine...
[2026-06-12 19:35:31,614.614 INFO    ] 2026-06-12 19:35:31
[2026-06-12 19:35:31,822.822 INFO    ] 2026-06-12 19:35:31
[2026-06-12 19:35:31,851.851 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 19:35:32,033.033 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 19:35:32,043.043 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 19:35:32,199.199 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 19:35:32,259.259 INFO    ] time= 12/06/2026 19:35:32
[2026-06-12 19:35:32,284.284 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 19:35:32,291.291 INFO    ] Checking for existing commands in stream...
[2026-06-12 19:35:32,385.385 INFO    ] No existing commands found in stream
[2026-06-12 19:35:37,410.410 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 19:35:37,413.413 INFO    ] Waiting 3.13 seconds before fallback handling...
[2026-06-12 19:35:41,801.801 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 19:35:41,803.803 INFO    ] Checking for system updates...
[2026-06-12 19:35:41,844.844 INFO    ] 200
[2026-06-12 19:35:41,847.847 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:35:41,900.900 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 19:35:41,903.903 INFO    ] No update needed
[2026-06-12 19:35:41,905.905 INFO    ] Checking for camera pi updates...
[2026-06-12 19:35:41,939.939 INFO    ] 200
[2026-06-12 19:35:41,941.941 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:35:41,964.964 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 19:35:42,105.105 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 19:35:42,106.106 INFO    ] No camera update needed
[2026-06-12 19:35:42,107.107 INFO    ] Script finished. Safe exiting...
[2026-06-12 19:35:42,109.109 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 19:35:42,112.112 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 19:35:42,115.115 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 19:35:44,153.153 INFO    ] ================================================
[2026-06-12 19:35:44,169.169 INFO    ] Launching Daemon at Fri Jun 12 19:35:44 IST 2026
[2026-06-12 19:35:44,179.179 INFO    ] ================================================
[2026-06-12 19:35:44,568.568 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 19:35:44
[2026-06-12 19:35:44,910.910 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 19:35:45,060.060 INFO    ] Initializing speech engine...
[2026-06-12 19:35:45,071.071 INFO    ] 2026-06-12 19:35:45
[2026-06-12 19:35:45,281.281 INFO    ] 2026-06-12 19:35:45
[2026-06-12 19:35:45,311.311 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 19:35:45,497.497 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 19:35:45,507.507 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 19:35:45,640.640 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 19:35:45,709.709 INFO    ] time= 12/06/2026 19:35:45
[2026-06-12 19:35:45,733.733 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 19:35:45,740.740 INFO    ] Checking for existing commands in stream...
[2026-06-12 19:35:45,808.808 INFO    ] No existing commands found in stream
[2026-06-12 19:35:50,822.822 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 19:35:50,825.825 INFO    ] Waiting 1.15 seconds before fallback handling...
[2026-06-12 19:35:52,385.385 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 19:35:52,387.387 INFO    ] Checking for system updates...
[2026-06-12 19:35:52,408.408 INFO    ] 200
[2026-06-12 19:35:52,409.409 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:35:52,441.441 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 19:35:52,442.442 INFO    ] No update needed
[2026-06-12 19:35:52,444.444 INFO    ] Checking for camera pi updates...
[2026-06-12 19:35:52,464.464 INFO    ] 200
[2026-06-12 19:35:52,465.465 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:35:52,488.488 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 19:35:52,542.542 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 19:35:52,544.544 INFO    ] No camera update needed
[2026-06-12 19:35:52,545.545 INFO    ] Script finished. Safe exiting...
[2026-06-12 19:35:52,546.546 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 19:35:52,549.549 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 19:35:52,552.552 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 19:35:54,591.591 INFO    ] ================================================
[2026-06-12 19:35:54,606.606 INFO    ] Launching Daemon at Fri Jun 12 19:35:54 IST 2026
[2026-06-12 19:35:54,617.617 INFO    ] ================================================
[2026-06-12 19:35:54,952.952 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 19:35:54
[2026-06-12 19:35:55,265.265 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 19:35:55,408.408 INFO    ] Initializing speech engine...
[2026-06-12 19:35:55,413.413 INFO    ] 2026-06-12 19:35:55
[2026-06-12 19:35:55,617.617 INFO    ] 2026-06-12 19:35:55
[2026-06-12 19:35:55,646.646 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 19:35:55,830.830 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 19:35:55,834.834 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 19:35:56,014.014 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 19:35:56,058.058 INFO    ] time= 12/06/2026 19:35:56
[2026-06-12 19:35:56,063.063 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 19:35:56,070.070 INFO    ] Checking for existing commands in stream...
[2026-06-12 19:35:56,136.136 INFO    ] No existing commands found in stream
[2026-06-12 19:36:01,151.151 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 19:36:01,153.153 INFO    ] Waiting 1.71 seconds before fallback handling...
[2026-06-12 19:36:03,219.219 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 19:36:03,221.221 INFO    ] Checking for system updates...
[2026-06-12 19:36:03,241.241 INFO    ] 200
[2026-06-12 19:36:03,243.243 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:36:03,274.274 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 19:36:03,276.276 INFO    ] No update needed
[2026-06-12 19:36:03,277.277 INFO    ] Checking for camera pi updates...
[2026-06-12 19:36:03,296.296 INFO    ] 200
[2026-06-12 19:36:03,297.297 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:36:03,322.322 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 19:36:03,364.364 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 19:36:03,365.365 INFO    ] No camera update needed
[2026-06-12 19:36:03,366.366 INFO    ] Script finished. Safe exiting...
[2026-06-12 19:36:03,368.368 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 19:36:03,371.371 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 19:36:03,373.373 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 19:36:05,413.413 INFO    ] ================================================
[2026-06-12 19:36:05,429.429 INFO    ] Launching Daemon at Fri Jun 12 19:36:05 IST 2026
[2026-06-12 19:36:05,444.444 INFO    ] ================================================
[2026-06-12 19:36:05,786.786 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 19:36:05
[2026-06-12 19:36:06,100.100 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 19:36:06,230.230 INFO    ] Initializing speech engine...
[2026-06-12 19:36:06,234.234 INFO    ] 2026-06-12 19:36:06
[2026-06-12 19:36:06,453.453 INFO    ] 2026-06-12 19:36:06
[2026-06-12 19:36:06,483.483 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 19:36:06,665.665 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 19:36:06,674.674 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 19:36:06,820.820 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 19:36:06,872.872 INFO    ] time= 12/06/2026 19:36:06
[2026-06-12 19:36:06,894.894 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 19:36:06,901.901 INFO    ] Checking for existing commands in stream...
[2026-06-12 19:36:06,968.968 INFO    ] No existing commands found in stream
[2026-06-12 19:36:11,982.982 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 19:36:11,985.985 INFO    ] Waiting 1.03 seconds before fallback handling...
[2026-06-12 19:36:13,348.348 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 19:36:13,350.350 INFO    ] Checking for system updates...
[2026-06-12 19:36:13,370.370 INFO    ] 200
[2026-06-12 19:36:13,372.372 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:36:13,402.402 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 19:36:13,403.403 INFO    ] No update needed
[2026-06-12 19:36:13,404.404 INFO    ] Checking for camera pi updates...
[2026-06-12 19:36:13,423.423 INFO    ] 200
[2026-06-12 19:36:13,425.425 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:36:13,449.449 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 19:36:13,504.504 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 19:36:13,506.506 INFO    ] No camera update needed
[2026-06-12 19:36:13,507.507 INFO    ] Script finished. Safe exiting...
[2026-06-12 19:36:13,508.508 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 19:36:13,511.511 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 19:36:13,514.514 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 19:36:15,554.554 INFO    ] ================================================
[2026-06-12 19:36:15,569.569 INFO    ] Launching Daemon at Fri Jun 12 19:36:15 IST 2026
[2026-06-12 19:36:15,580.580 INFO    ] ================================================
[2026-06-12 19:36:15,941.941 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 19:36:15
[2026-06-12 19:36:16,278.278 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 19:36:16,431.431 INFO    ] Initializing speech engine...
[2026-06-12 19:36:16,436.436 INFO    ] 2026-06-12 19:36:16
[2026-06-12 19:36:16,641.641 INFO    ] 2026-06-12 19:36:16
[2026-06-12 19:36:16,669.669 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 19:36:16,854.854 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 19:36:16,864.864 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 19:36:17,006.006 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 19:36:17,058.058 INFO    ] time= 12/06/2026 19:36:17
[2026-06-12 19:36:17,081.081 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 19:36:17,088.088 INFO    ] Checking for existing commands in stream...
[2026-06-12 19:36:17,154.154 INFO    ] No existing commands found in stream
[2026-06-12 19:36:22,169.169 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 19:36:22,172.172 INFO    ] Waiting 1.87 seconds before fallback handling...
[2026-06-12 19:36:24,447.447 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 19:36:24,449.449 INFO    ] Checking for system updates...
[2026-06-12 19:36:24,471.471 INFO    ] 200
[2026-06-12 19:36:24,473.473 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:36:24,505.505 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 19:36:24,507.507 INFO    ] No update needed
[2026-06-12 19:36:24,509.509 INFO    ] Checking for camera pi updates...
[2026-06-12 19:36:24,528.528 INFO    ] 200
[2026-06-12 19:36:24,530.530 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:36:24,553.553 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 19:36:24,597.597 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 19:36:24,599.599 INFO    ] No camera update needed
[2026-06-12 19:36:24,600.600 INFO    ] Script finished. Safe exiting...
[2026-06-12 19:36:24,602.602 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 19:36:24,605.605 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 19:36:24,608.608 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 19:36:26,645.645 INFO    ] ================================================
[2026-06-12 19:36:26,661.661 INFO    ] Launching Daemon at Fri Jun 12 19:36:26 IST 2026
[2026-06-12 19:36:26,672.672 INFO    ] ================================================
[2026-06-12 19:36:27,021.021 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 19:36:27
[2026-06-12 19:36:27,342.342 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 19:36:27,486.486 INFO    ] Initializing speech engine...
[2026-06-12 19:36:27,491.491 INFO    ] 2026-06-12 19:36:27
[2026-06-12 19:36:27,696.696 INFO    ] 2026-06-12 19:36:27
[2026-06-12 19:36:27,724.724 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 19:36:27,908.908 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 19:36:27,916.916 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 19:36:28,026.026 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 19:36:28,028.028 INFO    ] time= 12/06/2026 19:36:28
[2026-06-12 19:36:28,029.029 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 19:36:28,054.054 INFO    ] Checking for existing commands in stream...
[2026-06-12 19:36:28,144.144 INFO    ] No existing commands found in stream
[2026-06-12 19:36:33,156.156 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 19:36:33,159.159 INFO    ] Waiting 3.83 seconds before fallback handling...
[2026-06-12 19:36:37,388.388 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 19:36:37,390.390 INFO    ] Checking for system updates...
[2026-06-12 19:36:37,410.410 INFO    ] 200
[2026-06-12 19:36:37,412.412 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:36:37,444.444 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 19:36:37,445.445 INFO    ] No update needed
[2026-06-12 19:36:37,446.446 INFO    ] Checking for camera pi updates...
[2026-06-12 19:36:37,466.466 INFO    ] 200
[2026-06-12 19:36:37,468.468 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:36:37,491.491 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 19:36:37,529.529 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 19:36:37,531.531 INFO    ] No camera update needed
[2026-06-12 19:36:37,532.532 INFO    ] Script finished. Safe exiting...
[2026-06-12 19:36:37,533.533 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 19:36:37,536.536 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 19:36:37,539.539 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 19:36:39,579.579 INFO    ] ================================================
[2026-06-12 19:36:39,594.594 INFO    ] Launching Daemon at Fri Jun 12 19:36:39 IST 2026
[2026-06-12 19:36:39,605.605 INFO    ] ================================================
[2026-06-12 19:36:39,950.950 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 19:36:39
[2026-06-12 19:36:40,262.262 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 19:36:40,395.395 INFO    ] Initializing speech engine...
[2026-06-12 19:36:40,398.398 INFO    ] 2026-06-12 19:36:40
[2026-06-12 19:36:40,599.599 INFO    ] 2026-06-12 19:36:40
[2026-06-12 19:36:40,631.631 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 19:36:40,790.790 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 19:36:40,856.856 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 19:36:40,998.998 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 19:36:41,044.044 INFO    ] time= 12/06/2026 19:36:41
[2026-06-12 19:36:41,082.082 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 19:36:41,105.105 INFO    ] Checking for existing commands in stream...
[2026-06-12 19:36:41,183.183 INFO    ] No existing commands found in stream
[2026-06-12 19:36:46,217.217 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 19:36:46,220.220 INFO    ] Waiting 1.06 seconds before fallback handling...
[2026-06-12 19:36:47,654.654 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 19:36:47,656.656 INFO    ] Checking for system updates...
[2026-06-12 19:36:47,676.676 INFO    ] 200
[2026-06-12 19:36:47,677.677 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:36:47,707.707 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 19:36:47,708.708 INFO    ] No update needed
[2026-06-12 19:36:47,710.710 INFO    ] Checking for camera pi updates...
[2026-06-12 19:36:47,730.730 INFO    ] 200
[2026-06-12 19:36:47,732.732 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:36:47,756.756 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 19:36:47,800.800 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 19:36:47,802.802 INFO    ] No camera update needed
[2026-06-12 19:36:47,803.803 INFO    ] Script finished. Safe exiting...
[2026-06-12 19:36:47,804.804 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 19:36:47,807.807 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 19:36:47,810.810 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 19:36:49,850.850 INFO    ] ================================================
[2026-06-12 19:36:49,865.865 INFO    ] Launching Daemon at Fri Jun 12 19:36:49 IST 2026
[2026-06-12 19:36:49,876.876 INFO    ] ================================================
[2026-06-12 19:36:50,209.209 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 19:36:50
[2026-06-12 19:36:50,526.526 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 19:36:50,674.674 INFO    ] Initializing speech engine...
[2026-06-12 19:36:50,680.680 INFO    ] 2026-06-12 19:36:50
[2026-06-12 19:36:50,897.897 INFO    ] 2026-06-12 19:36:50
[2026-06-12 19:36:50,928.928 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 19:36:51,126.126 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 19:36:51,136.136 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 19:36:51,274.274 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 19:36:51,341.341 INFO    ] time= 12/06/2026 19:36:51
[2026-06-12 19:36:51,375.375 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 19:36:51,377.377 INFO    ] Checking for existing commands in stream...
[2026-06-12 19:36:51,453.453 INFO    ] No existing commands found in stream
[2026-06-12 19:36:56,462.462 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 19:36:56,465.465 INFO    ] Waiting 0.47 seconds before fallback handling...
[2026-06-12 19:36:57,247.247 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 19:36:57,249.249 INFO    ] Checking for system updates...
[2026-06-12 19:36:57,269.269 INFO    ] 200
[2026-06-12 19:36:57,271.271 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:36:57,303.303 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 19:36:57,305.305 INFO    ] No update needed
[2026-06-12 19:36:57,306.306 INFO    ] Checking for camera pi updates...
[2026-06-12 19:36:57,325.325 INFO    ] 200
[2026-06-12 19:36:57,326.326 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:36:57,350.350 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 19:36:57,413.413 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 19:36:57,416.416 INFO    ] No camera update needed
[2026-06-12 19:36:57,418.418 INFO    ] Script finished. Safe exiting...
[2026-06-12 19:36:57,421.421 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 19:36:57,426.426 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 19:36:57,431.431 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 19:36:59,471.471 INFO    ] ================================================
[2026-06-12 19:36:59,486.486 INFO    ] Launching Daemon at Fri Jun 12 19:36:59 IST 2026
[2026-06-12 19:36:59,497.497 INFO    ] ================================================
[2026-06-12 19:36:59,839.839 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 19:36:59
[2026-06-12 19:37:00,151.151 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 19:37:00,279.279 INFO    ] Initializing speech engine...
[2026-06-12 19:37:00,284.284 INFO    ] 2026-06-12 19:37:00
[2026-06-12 19:37:00,477.477 INFO    ] 2026-06-12 19:37:00
[2026-06-12 19:37:00,506.506 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 19:37:00,655.655 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 19:37:00,718.718 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 19:37:00,858.858 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 19:37:00,917.917 INFO    ] time= 12/06/2026 19:37:00
[2026-06-12 19:37:00,951.951 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 19:37:00,957.957 INFO    ] Checking for existing commands in stream...
[2026-06-12 19:37:01,025.025 INFO    ] No existing commands found in stream
[2026-06-12 19:37:06,044.044 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 19:37:06,046.046 INFO    ] Waiting 2.52 seconds before fallback handling...
[2026-06-12 19:37:08,988.988 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 19:37:08,989.989 INFO    ] Checking for system updates...
[2026-06-12 19:37:09,009.009 INFO    ] 200
[2026-06-12 19:37:09,011.011 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:37:09,040.040 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 19:37:09,042.042 INFO    ] No update needed
[2026-06-12 19:37:09,043.043 INFO    ] Checking for camera pi updates...
[2026-06-12 19:37:09,062.062 INFO    ] 200
[2026-06-12 19:37:09,063.063 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:37:09,086.086 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 19:37:09,145.145 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 19:37:09,146.146 INFO    ] No camera update needed
[2026-06-12 19:37:09,147.147 INFO    ] Script finished. Safe exiting...
[2026-06-12 19:37:09,149.149 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 19:37:09,152.152 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 19:37:09,154.154 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 19:37:11,193.193 INFO    ] ================================================
[2026-06-12 19:37:11,208.208 INFO    ] Launching Daemon at Fri Jun 12 19:37:11 IST 2026
[2026-06-12 19:37:11,219.219 INFO    ] ================================================
[2026-06-12 19:37:11,575.575 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 19:37:11
[2026-06-12 19:37:11,914.914 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 19:37:12,065.065 INFO    ] Initializing speech engine...
[2026-06-12 19:37:12,070.070 INFO    ] 2026-06-12 19:37:12
[2026-06-12 19:37:12,277.277 INFO    ] 2026-06-12 19:37:12
[2026-06-12 19:37:12,306.306 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 19:37:12,490.490 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 19:37:12,499.499 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 19:37:12,639.639 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 19:37:12,697.697 INFO    ] time= 12/06/2026 19:37:12
[2026-06-12 19:37:12,719.719 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 19:37:12,725.725 INFO    ] Checking for existing commands in stream...
[2026-06-12 19:37:12,792.792 INFO    ] No existing commands found in stream
[2026-06-12 19:37:17,817.817 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 19:37:17,820.820 INFO    ] Waiting 1.93 seconds before fallback handling...
[2026-06-12 19:37:20,170.170 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 19:37:20,172.172 INFO    ] Checking for system updates...
[2026-06-12 19:37:20,192.192 INFO    ] 200
[2026-06-12 19:37:20,194.194 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:37:20,224.224 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 19:37:20,225.225 INFO    ] No update needed
[2026-06-12 19:37:20,226.226 INFO    ] Checking for camera pi updates...
[2026-06-12 19:37:20,245.245 INFO    ] 200
[2026-06-12 19:37:20,247.247 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:37:20,270.270 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 19:37:20,313.313 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 19:37:20,314.314 INFO    ] No camera update needed
[2026-06-12 19:37:20,315.315 INFO    ] Script finished. Safe exiting...
[2026-06-12 19:37:20,317.317 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 19:37:20,320.320 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 19:37:20,322.322 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 19:37:22,362.362 INFO    ] ================================================
[2026-06-12 19:37:22,377.377 INFO    ] Launching Daemon at Fri Jun 12 19:37:22 IST 2026
[2026-06-12 19:37:22,388.388 INFO    ] ================================================
[2026-06-12 19:37:22,763.763 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 19:37:22
[2026-06-12 19:37:23,101.101 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 19:37:23,246.246 INFO    ] Initializing speech engine...
[2026-06-12 19:37:23,254.254 INFO    ] 2026-06-12 19:37:23
[2026-06-12 19:37:23,466.466 INFO    ] 2026-06-12 19:37:23
[2026-06-12 19:37:23,494.494 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 19:37:23,677.677 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 19:37:23,681.681 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 19:37:23,838.838 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 19:37:23,887.887 INFO    ] time= 12/06/2026 19:37:23
[2026-06-12 19:37:23,908.908 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 19:37:23,915.915 INFO    ] Checking for existing commands in stream...
[2026-06-12 19:37:23,982.982 INFO    ] No existing commands found in stream
[2026-06-12 19:37:28,991.991 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 19:37:28,994.994 INFO    ] Waiting 0.68 seconds before fallback handling...
[2026-06-12 19:37:30,050.050 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 19:37:30,052.052 INFO    ] Checking for system updates...
[2026-06-12 19:37:30,072.072 INFO    ] 200
[2026-06-12 19:37:30,074.074 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:37:30,104.104 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 19:37:30,105.105 INFO    ] No update needed
[2026-06-12 19:37:30,107.107 INFO    ] Checking for camera pi updates...
[2026-06-12 19:37:30,126.126 INFO    ] 200
[2026-06-12 19:37:30,128.128 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:37:30,151.151 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 19:37:30,194.194 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 19:37:30,195.195 INFO    ] No camera update needed
[2026-06-12 19:37:30,197.197 INFO    ] Script finished. Safe exiting...
[2026-06-12 19:37:30,198.198 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 19:37:30,201.201 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 19:37:30,205.205 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 19:37:32,236.236 INFO    ] ================================================
[2026-06-12 19:37:32,245.245 INFO    ] Launching Daemon at Fri Jun 12 19:37:32 IST 2026
[2026-06-12 19:37:32,252.252 INFO    ] ================================================
[2026-06-12 19:37:32,560.560 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 19:37:32
[2026-06-12 19:37:32,871.871 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 19:37:32,998.998 INFO    ] Initializing speech engine...
[2026-06-12 19:37:33,002.002 INFO    ] 2026-06-12 19:37:33
[2026-06-12 19:37:33,220.220 INFO    ] 2026-06-12 19:37:33
[2026-06-12 19:37:33,249.249 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 19:37:33,434.434 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 19:37:33,444.444 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 19:37:33,588.588 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 19:37:33,641.641 INFO    ] time= 12/06/2026 19:37:33
[2026-06-12 19:37:33,662.662 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 19:37:33,668.668 INFO    ] Checking for existing commands in stream...
[2026-06-12 19:37:33,734.734 INFO    ] No existing commands found in stream
[2026-06-12 19:37:38,748.748 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 19:37:38,751.751 INFO    ] Waiting 3.24 seconds before fallback handling...
[2026-06-12 19:37:42,390.390 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 19:37:42,391.391 INFO    ] Checking for system updates...
[2026-06-12 19:37:42,416.416 INFO    ] 200
[2026-06-12 19:37:42,417.417 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:37:42,451.451 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 19:37:42,452.452 INFO    ] No update needed
[2026-06-12 19:37:42,453.453 INFO    ] Checking for camera pi updates...
[2026-06-12 19:37:42,473.473 INFO    ] 200
[2026-06-12 19:37:42,474.474 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:37:42,499.499 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 19:37:42,540.540 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 19:37:42,542.542 INFO    ] No camera update needed
[2026-06-12 19:37:42,543.543 INFO    ] Script finished. Safe exiting...
[2026-06-12 19:37:42,545.545 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 19:37:42,548.548 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 19:37:42,551.551 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 19:37:44,590.590 INFO    ] ================================================
[2026-06-12 19:37:44,605.605 INFO    ] Launching Daemon at Fri Jun 12 19:37:44 IST 2026
[2026-06-12 19:37:44,617.617 INFO    ] ================================================
[2026-06-12 19:37:44,965.965 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 19:37:44
[2026-06-12 19:37:45,281.281 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 19:37:45,412.412 INFO    ] Initializing speech engine...
[2026-06-12 19:37:45,416.416 INFO    ] 2026-06-12 19:37:45
[2026-06-12 19:37:45,631.631 INFO    ] 2026-06-12 19:37:45
[2026-06-12 19:37:45,660.660 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 19:37:45,842.842 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 19:37:45,846.846 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 19:37:45,991.991 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 19:37:46,047.047 INFO    ] time= 12/06/2026 19:37:46
[2026-06-12 19:37:46,071.071 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 19:37:46,077.077 INFO    ] Checking for existing commands in stream...
[2026-06-12 19:37:46,144.144 INFO    ] No existing commands found in stream
[2026-06-12 19:37:51,153.153 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 19:37:51,155.155 INFO    ] Waiting 2.65 seconds before fallback handling...
[2026-06-12 19:37:54,197.197 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 19:37:54,199.199 INFO    ] Checking for system updates...
[2026-06-12 19:37:54,219.219 INFO    ] 200
[2026-06-12 19:37:54,221.221 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:37:54,263.263 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 19:37:54,264.264 INFO    ] No update needed
[2026-06-12 19:37:54,265.265 INFO    ] Checking for camera pi updates...
[2026-06-12 19:37:54,284.284 INFO    ] 200
[2026-06-12 19:37:54,286.286 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:37:54,309.309 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 19:37:54,457.457 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 19:37:54,458.458 INFO    ] No camera update needed
[2026-06-12 19:37:54,460.460 INFO    ] Script finished. Safe exiting...
[2026-06-12 19:37:54,461.461 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 19:37:54,464.464 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 19:37:54,467.467 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 19:37:56,507.507 INFO    ] ================================================
[2026-06-12 19:37:56,523.523 INFO    ] Launching Daemon at Fri Jun 12 19:37:56 IST 2026
[2026-06-12 19:37:56,534.534 INFO    ] ================================================
[2026-06-12 19:37:56,874.874 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 19:37:56
[2026-06-12 19:37:57,188.188 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 19:37:57,318.318 INFO    ] Initializing speech engine...
[2026-06-12 19:37:57,322.322 INFO    ] 2026-06-12 19:37:57
[2026-06-12 19:37:57,544.544 INFO    ] 2026-06-12 19:37:57
[2026-06-12 19:37:57,572.572 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 19:37:57,756.756 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 19:37:57,766.766 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 19:37:57,907.907 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 19:37:57,966.966 INFO    ] time= 12/06/2026 19:37:57
[2026-06-12 19:37:57,989.989 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 19:37:57,995.995 INFO    ] Checking for existing commands in stream...
[2026-06-12 19:37:58,062.062 INFO    ] No existing commands found in stream
[2026-06-12 19:38:03,070.070 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 19:38:03,071.071 INFO    ] Waiting 2.73 seconds before fallback handling...
[2026-06-12 19:38:06,222.222 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 19:38:06,224.224 INFO    ] Checking for system updates...
[2026-06-12 19:38:06,244.244 INFO    ] 200
[2026-06-12 19:38:06,246.246 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:38:06,277.277 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 19:38:06,279.279 INFO    ] No update needed
[2026-06-12 19:38:06,280.280 INFO    ] Checking for camera pi updates...
[2026-06-12 19:38:06,300.300 INFO    ] 200
[2026-06-12 19:38:06,301.301 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:38:06,324.324 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 19:38:06,369.369 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 19:38:06,370.370 INFO    ] No camera update needed
[2026-06-12 19:38:06,372.372 INFO    ] Script finished. Safe exiting...
[2026-06-12 19:38:06,373.373 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 19:38:06,376.376 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 19:38:06,379.379 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 19:38:08,417.417 INFO    ] ================================================
[2026-06-12 19:38:08,433.433 INFO    ] Launching Daemon at Fri Jun 12 19:38:08 IST 2026
[2026-06-12 19:38:08,444.444 INFO    ] ================================================
[2026-06-12 19:38:08,770.770 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 19:38:08
[2026-06-12 19:38:09,080.080 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 19:38:09,210.210 INFO    ] Initializing speech engine...
[2026-06-12 19:38:09,218.218 INFO    ] 2026-06-12 19:38:09
[2026-06-12 19:38:09,429.429 INFO    ] 2026-06-12 19:38:09
[2026-06-12 19:38:09,458.458 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 19:38:09,641.641 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 19:38:09,652.652 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 19:38:09,794.794 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 19:38:09,847.847 INFO    ] time= 12/06/2026 19:38:09
[2026-06-12 19:38:09,868.868 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 19:38:09,875.875 INFO    ] Checking for existing commands in stream...
[2026-06-12 19:38:09,941.941 INFO    ] No existing commands found in stream
[2026-06-12 19:38:14,955.955 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 19:38:14,958.958 INFO    ] Waiting 0.79 seconds before fallback handling...
[2026-06-12 19:38:16,120.120 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 19:38:16,121.121 INFO    ] Checking for system updates...
[2026-06-12 19:38:16,141.141 INFO    ] 200
[2026-06-12 19:38:16,143.143 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:38:16,173.173 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 19:38:16,174.174 INFO    ] No update needed
[2026-06-12 19:38:16,175.175 INFO    ] Checking for camera pi updates...
[2026-06-12 19:38:16,195.195 INFO    ] 200
[2026-06-12 19:38:16,197.197 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:38:16,221.221 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 19:38:16,273.273 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 19:38:16,274.274 INFO    ] No camera update needed
[2026-06-12 19:38:16,275.275 INFO    ] Script finished. Safe exiting...
[2026-06-12 19:38:16,277.277 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 19:38:16,280.280 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 19:38:16,282.282 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 19:38:18,320.320 INFO    ] ================================================
[2026-06-12 19:38:18,336.336 INFO    ] Launching Daemon at Fri Jun 12 19:38:18 IST 2026
[2026-06-12 19:38:18,348.348 INFO    ] ================================================
[2026-06-12 19:38:18,721.721 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 19:38:18
[2026-06-12 19:38:19,094.094 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 19:38:19,257.257 INFO    ] Initializing speech engine...
[2026-06-12 19:38:19,262.262 INFO    ] 2026-06-12 19:38:19
[2026-06-12 19:38:19,452.452 INFO    ] 2026-06-12 19:38:19
[2026-06-12 19:38:19,488.488 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 19:38:19,702.702 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 19:38:19,712.712 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 19:38:19,849.849 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 19:38:19,902.902 INFO    ] time= 12/06/2026 19:38:19
[2026-06-12 19:38:19,933.933 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 19:38:19,944.944 INFO    ] Checking for existing commands in stream...
[2026-06-12 19:38:20,017.017 INFO    ] No existing commands found in stream
[2026-06-12 19:38:25,025.025 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 19:38:25,028.028 INFO    ] Waiting 0.31 seconds before fallback handling...
[2026-06-12 19:38:25,734.734 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 19:38:25,736.736 INFO    ] Checking for system updates...
[2026-06-12 19:38:25,757.757 INFO    ] 200
[2026-06-12 19:38:25,758.758 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:38:25,790.790 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 19:38:25,792.792 INFO    ] No update needed
[2026-06-12 19:38:25,793.793 INFO    ] Checking for camera pi updates...
[2026-06-12 19:38:25,813.813 INFO    ] 200
[2026-06-12 19:38:25,814.814 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:38:25,837.837 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 19:38:25,892.892 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 19:38:25,893.893 INFO    ] No camera update needed
[2026-06-12 19:38:25,895.895 INFO    ] Script finished. Safe exiting...
[2026-06-12 19:38:25,896.896 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 19:38:25,899.899 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 19:38:25,902.902 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 19:38:27,940.940 INFO    ] ================================================
[2026-06-12 19:38:27,957.957 INFO    ] Launching Daemon at Fri Jun 12 19:38:27 IST 2026
[2026-06-12 19:38:27,967.967 INFO    ] ================================================
[2026-06-12 19:38:28,326.326 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 19:38:28
[2026-06-12 19:38:28,645.645 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 19:38:28,789.789 INFO    ] Initializing speech engine...
[2026-06-12 19:38:28,794.794 INFO    ] 2026-06-12 19:38:28
[2026-06-12 19:38:28,999.999 INFO    ] 2026-06-12 19:38:28
[2026-06-12 19:38:29,028.028 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 19:38:29,212.212 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 19:38:29,222.222 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 19:38:29,377.377 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 19:38:29,419.419 INFO    ] time= 12/06/2026 19:38:29
[2026-06-12 19:38:29,442.442 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 19:38:29,448.448 INFO    ] Checking for existing commands in stream...
[2026-06-12 19:38:29,514.514 INFO    ] No existing commands found in stream
[2026-06-12 19:38:34,543.543 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 19:38:34,546.546 INFO    ] Waiting 3.92 seconds before fallback handling...
[2026-06-12 19:38:38,851.851 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 19:38:38,852.852 INFO    ] Checking for system updates...
[2026-06-12 19:38:38,873.873 INFO    ] 200
[2026-06-12 19:38:38,874.874 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:38:38,903.903 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 19:38:38,905.905 INFO    ] No update needed
[2026-06-12 19:38:38,906.906 INFO    ] Checking for camera pi updates...
[2026-06-12 19:38:38,925.925 INFO    ] 200
[2026-06-12 19:38:38,927.927 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:38:38,952.952 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 19:38:39,000.000 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 19:38:39,002.002 INFO    ] No camera update needed
[2026-06-12 19:38:39,003.003 INFO    ] Script finished. Safe exiting...
[2026-06-12 19:38:39,004.004 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 19:38:39,007.007 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 19:38:39,010.010 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 19:38:41,050.050 INFO    ] ================================================
[2026-06-12 19:38:41,066.066 INFO    ] Launching Daemon at Fri Jun 12 19:38:41 IST 2026
[2026-06-12 19:38:41,078.078 INFO    ] ================================================
[2026-06-12 19:38:41,432.432 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 19:38:41
[2026-06-12 19:38:41,773.773 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 19:38:41,925.925 INFO    ] Initializing speech engine...
[2026-06-12 19:38:41,930.930 INFO    ] 2026-06-12 19:38:41
[2026-06-12 19:38:42,137.137 INFO    ] 2026-06-12 19:38:42
[2026-06-12 19:38:42,167.167 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 19:38:42,351.351 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 19:38:42,362.362 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 19:38:42,510.510 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 19:38:42,558.558 INFO    ] time= 12/06/2026 19:38:42
[2026-06-12 19:38:42,580.580 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 19:38:42,586.586 INFO    ] Checking for existing commands in stream...
[2026-06-12 19:38:42,653.653 INFO    ] No existing commands found in stream
[2026-06-12 19:38:47,668.668 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 19:38:47,672.672 INFO    ] Waiting 0.08 seconds before fallback handling...
[2026-06-12 19:38:48,131.131 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 19:38:48,133.133 INFO    ] Checking for system updates...
[2026-06-12 19:38:48,154.154 INFO    ] 200
[2026-06-12 19:38:48,156.156 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:38:48,189.189 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 19:38:48,191.191 INFO    ] No update needed
[2026-06-12 19:38:48,192.192 INFO    ] Checking for camera pi updates...
[2026-06-12 19:38:48,213.213 INFO    ] 200
[2026-06-12 19:38:48,214.214 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:38:48,238.238 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 19:38:48,283.283 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 19:38:48,285.285 INFO    ] No camera update needed
[2026-06-12 19:38:48,286.286 INFO    ] Script finished. Safe exiting...
[2026-06-12 19:38:48,287.287 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 19:38:48,291.291 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 19:38:48,294.294 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 19:38:50,334.334 INFO    ] ================================================
[2026-06-12 19:38:50,350.350 INFO    ] Launching Daemon at Fri Jun 12 19:38:50 IST 2026
[2026-06-12 19:38:50,362.362 INFO    ] ================================================
[2026-06-12 19:38:50,691.691 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 19:38:50
[2026-06-12 19:38:51,004.004 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 19:38:51,135.135 INFO    ] Initializing speech engine...
[2026-06-12 19:38:51,148.148 INFO    ] 2026-06-12 19:38:51
[2026-06-12 19:38:51,354.354 INFO    ] 2026-06-12 19:38:51
[2026-06-12 19:38:51,383.383 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 19:38:51,565.565 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 19:38:51,575.575 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 19:38:51,713.713 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 19:38:51,770.770 INFO    ] time= 12/06/2026 19:38:51
[2026-06-12 19:38:51,792.792 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 19:38:51,798.798 INFO    ] Checking for existing commands in stream...
[2026-06-12 19:38:51,888.888 INFO    ] No existing commands found in stream
[2026-06-12 19:38:56,902.902 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 19:38:56,905.905 INFO    ] Waiting 2.00 seconds before fallback handling...
[2026-06-12 19:38:59,330.330 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 19:38:59,332.332 INFO    ] Checking for system updates...
[2026-06-12 19:38:59,353.353 INFO    ] 200
[2026-06-12 19:38:59,354.354 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:38:59,386.386 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 19:38:59,388.388 INFO    ] No update needed
[2026-06-12 19:38:59,389.389 INFO    ] Checking for camera pi updates...
[2026-06-12 19:38:59,413.413 INFO    ] 200
[2026-06-12 19:38:59,414.414 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:38:59,441.441 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 19:38:59,486.486 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 19:38:59,488.488 INFO    ] No camera update needed
[2026-06-12 19:38:59,490.490 INFO    ] Script finished. Safe exiting...
[2026-06-12 19:38:59,492.492 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 19:38:59,496.496 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 19:38:59,499.499 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 19:39:01,539.539 INFO    ] ================================================
[2026-06-12 19:39:01,554.554 INFO    ] Launching Daemon at Fri Jun 12 19:39:01 IST 2026
[2026-06-12 19:39:01,566.566 INFO    ] ================================================
[2026-06-12 19:39:01,938.938 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 19:39:01
[2026-06-12 19:39:02,384.384 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 19:39:02,570.570 INFO    ] Initializing speech engine...
[2026-06-12 19:39:02,576.576 INFO    ] 2026-06-12 19:39:02
[2026-06-12 19:39:02,816.816 INFO    ] 2026-06-12 19:39:02
[2026-06-12 19:39:02,858.858 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 19:39:03,011.011 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 19:39:03,079.079 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 19:39:03,244.244 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 19:39:03,297.297 INFO    ] time= 12/06/2026 19:39:03
[2026-06-12 19:39:03,320.320 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 19:39:03,326.326 INFO    ] Checking for existing commands in stream...
[2026-06-12 19:39:03,393.393 INFO    ] No existing commands found in stream
[2026-06-12 19:39:08,407.407 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 19:39:08,411.411 INFO    ] Waiting 0.42 seconds before fallback handling...
[2026-06-12 19:39:09,220.220 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 19:39:09,221.221 INFO    ] Checking for system updates...
[2026-06-12 19:39:09,242.242 INFO    ] 200
[2026-06-12 19:39:09,243.243 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:39:09,275.275 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 19:39:09,276.276 INFO    ] No update needed
[2026-06-12 19:39:09,277.277 INFO    ] Checking for camera pi updates...
[2026-06-12 19:39:09,300.300 INFO    ] 200
[2026-06-12 19:39:09,302.302 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:39:09,326.326 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 19:39:09,371.371 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 19:39:09,373.373 INFO    ] No camera update needed
[2026-06-12 19:39:09,374.374 INFO    ] Script finished. Safe exiting...
[2026-06-12 19:39:09,375.375 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 19:39:09,378.378 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 19:39:09,381.381 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 19:39:11,419.419 INFO    ] ================================================
[2026-06-12 19:39:11,435.435 INFO    ] Launching Daemon at Fri Jun 12 19:39:11 IST 2026
[2026-06-12 19:39:11,446.446 INFO    ] ================================================
[2026-06-12 19:39:11,774.774 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 19:39:11
[2026-06-12 19:39:12,092.092 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 19:39:12,225.225 INFO    ] Initializing speech engine...
[2026-06-12 19:39:12,237.237 INFO    ] 2026-06-12 19:39:12
[2026-06-12 19:39:12,442.442 INFO    ] 2026-06-12 19:39:12
[2026-06-12 19:39:12,471.471 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 19:39:12,634.634 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 19:39:12,658.658 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 19:39:12,794.794 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 19:39:12,848.848 INFO    ] time= 12/06/2026 19:39:12
[2026-06-12 19:39:12,882.882 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 19:39:12,887.887 INFO    ] Checking for existing commands in stream...
[2026-06-12 19:39:12,959.959 INFO    ] No existing commands found in stream
[2026-06-12 19:39:17,973.973 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 19:39:17,976.976 INFO    ] Waiting 3.77 seconds before fallback handling...
[2026-06-12 19:39:22,131.131 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 19:39:22,132.132 INFO    ] Checking for system updates...
[2026-06-12 19:39:22,152.152 INFO    ] 200
[2026-06-12 19:39:22,154.154 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:39:22,186.186 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 19:39:22,187.187 INFO    ] No update needed
[2026-06-12 19:39:22,189.189 INFO    ] Checking for camera pi updates...
[2026-06-12 19:39:22,209.209 INFO    ] 200
[2026-06-12 19:39:22,211.211 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:39:22,234.234 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 19:39:22,277.277 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 19:39:22,279.279 INFO    ] No camera update needed
[2026-06-12 19:39:22,280.280 INFO    ] Script finished. Safe exiting...
[2026-06-12 19:39:22,281.281 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 19:39:22,284.284 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 19:39:22,287.287 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 19:39:24,327.327 INFO    ] ================================================
[2026-06-12 19:39:24,343.343 INFO    ] Launching Daemon at Fri Jun 12 19:39:24 IST 2026
[2026-06-12 19:39:24,354.354 INFO    ] ================================================
[2026-06-12 19:39:24,725.725 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 19:39:24
[2026-06-12 19:39:25,064.064 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 19:39:25,219.219 INFO    ] Initializing speech engine...
[2026-06-12 19:39:25,224.224 INFO    ] 2026-06-12 19:39:25
[2026-06-12 19:39:25,433.433 INFO    ] 2026-06-12 19:39:25
[2026-06-12 19:39:25,462.462 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 19:39:25,648.648 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 19:39:25,658.658 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 19:39:25,842.842 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 19:39:25,872.872 INFO    ] time= 12/06/2026 19:39:25
[2026-06-12 19:39:25,888.888 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 19:39:25,890.890 INFO    ] Checking for existing commands in stream...
[2026-06-12 19:39:25,958.958 INFO    ] No existing commands found in stream
[2026-06-12 19:39:30,978.978 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 19:39:30,982.982 INFO    ] Waiting 3.90 seconds before fallback handling...
[2026-06-12 19:39:35,318.318 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 19:39:35,319.319 INFO    ] Checking for system updates...
[2026-06-12 19:39:35,340.340 INFO    ] 200
[2026-06-12 19:39:35,342.342 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:39:35,372.372 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 19:39:35,373.373 INFO    ] No update needed
[2026-06-12 19:39:35,375.375 INFO    ] Checking for camera pi updates...
[2026-06-12 19:39:35,396.396 INFO    ] 200
[2026-06-12 19:39:35,397.397 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:39:35,423.423 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 19:39:35,470.470 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 19:39:35,471.471 INFO    ] No camera update needed
[2026-06-12 19:39:35,473.473 INFO    ] Script finished. Safe exiting...
[2026-06-12 19:39:35,474.474 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 19:39:35,477.477 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 19:39:35,480.480 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 19:39:37,510.510 INFO    ] ================================================
[2026-06-12 19:39:37,519.519 INFO    ] Launching Daemon at Fri Jun 12 19:39:37 IST 2026
[2026-06-12 19:39:37,525.525 INFO    ] ================================================
[2026-06-12 19:39:37,854.854 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 19:39:37
[2026-06-12 19:39:38,196.196 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 19:39:38,347.347 INFO    ] Initializing speech engine...
[2026-06-12 19:39:38,353.353 INFO    ] 2026-06-12 19:39:38
[2026-06-12 19:39:38,564.564 INFO    ] 2026-06-12 19:39:38
[2026-06-12 19:39:38,592.592 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 19:39:38,725.725 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 19:39:38,777.777 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 19:39:38,971.971 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 19:39:39,003.003 INFO    ] time= 12/06/2026 19:39:38
[2026-06-12 19:39:39,010.010 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 19:39:39,012.012 INFO    ] Checking for existing commands in stream...
[2026-06-12 19:39:39,078.078 INFO    ] No existing commands found in stream
[2026-06-12 19:39:44,092.092 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 19:39:44,096.096 INFO    ] Waiting 4.00 seconds before fallback handling...
[2026-06-12 19:39:48,714.714 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 19:39:48,718.718 INFO    ] Checking for system updates...
[2026-06-12 19:39:48,742.742 INFO    ] 200
[2026-06-12 19:39:48,743.743 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:39:48,778.778 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 19:39:48,780.780 INFO    ] No update needed
[2026-06-12 19:39:48,782.782 INFO    ] Checking for camera pi updates...
[2026-06-12 19:39:48,804.804 INFO    ] 200
[2026-06-12 19:39:48,806.806 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:39:48,829.829 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 19:39:48,877.877 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 19:39:48,879.879 INFO    ] No camera update needed
[2026-06-12 19:39:48,880.880 INFO    ] Script finished. Safe exiting...
[2026-06-12 19:39:48,882.882 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 19:39:48,885.885 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 19:39:48,888.888 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 19:39:50,927.927 INFO    ] ================================================
[2026-06-12 19:39:50,943.943 INFO    ] Launching Daemon at Fri Jun 12 19:39:50 IST 2026
[2026-06-12 19:39:50,954.954 INFO    ] ================================================
[2026-06-12 19:39:51,294.294 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 19:39:51
[2026-06-12 19:39:51,606.606 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 19:39:51,738.738 INFO    ] Initializing speech engine...
[2026-06-12 19:39:51,742.742 INFO    ] 2026-06-12 19:39:51
[2026-06-12 19:39:51,961.961 INFO    ] 2026-06-12 19:39:51
[2026-06-12 19:39:51,991.991 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 19:39:52,115.115 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 19:39:52,178.178 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 19:39:52,315.315 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 19:39:52,371.371 INFO    ] time= 12/06/2026 19:39:52
[2026-06-12 19:39:52,405.405 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 19:39:52,416.416 INFO    ] Checking for existing commands in stream...
[2026-06-12 19:39:52,484.484 INFO    ] No existing commands found in stream
[2026-06-12 19:39:57,492.492 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 19:39:57,495.495 INFO    ] Waiting 2.18 seconds before fallback handling...
[2026-06-12 19:40:00,033.033 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 19:40:00,035.035 INFO    ] Checking for system updates...
[2026-06-12 19:40:00,057.057 INFO    ] 200
[2026-06-12 19:40:00,058.058 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:40:00,088.088 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 19:40:00,089.089 INFO    ] No update needed
[2026-06-12 19:40:00,090.090 INFO    ] Checking for camera pi updates...
[2026-06-12 19:40:00,111.111 INFO    ] 200
[2026-06-12 19:40:00,112.112 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:40:00,137.137 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 19:40:00,279.279 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 19:40:00,281.281 INFO    ] No camera update needed
[2026-06-12 19:40:00,282.282 INFO    ] Script finished. Safe exiting...
[2026-06-12 19:40:00,283.283 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 19:40:00,286.286 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 19:40:00,289.289 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 19:40:02,333.333 INFO    ] ================================================
[2026-06-12 19:40:02,344.344 INFO    ] Launching Daemon at Fri Jun 12 19:40:02 IST 2026
[2026-06-12 19:40:02,350.350 INFO    ] ================================================
[2026-06-12 19:40:02,691.691 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 19:40:02
[2026-06-12 19:40:03,008.008 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 19:40:03,152.152 INFO    ] Initializing speech engine...
[2026-06-12 19:40:03,158.158 INFO    ] 2026-06-12 19:40:03
[2026-06-12 19:40:03,363.363 INFO    ] 2026-06-12 19:40:03
[2026-06-12 19:40:03,391.391 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 19:40:03,549.549 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 19:40:03,578.578 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 19:40:03,711.711 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 19:40:03,768.768 INFO    ] time= 12/06/2026 19:40:03
[2026-06-12 19:40:03,803.803 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 19:40:03,808.808 INFO    ] Checking for existing commands in stream...
[2026-06-12 19:40:03,903.903 INFO    ] No existing commands found in stream
[2026-06-12 19:40:08,912.912 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 19:40:08,915.915 INFO    ] Waiting 1.96 seconds before fallback handling...
[2026-06-12 19:40:11,316.316 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 19:40:11,318.318 INFO    ] Checking for system updates...
[2026-06-12 19:40:11,354.354 INFO    ] 200
[2026-06-12 19:40:11,357.357 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:40:11,417.417 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 19:40:11,420.420 INFO    ] No update needed
[2026-06-12 19:40:11,422.422 INFO    ] Checking for camera pi updates...
[2026-06-12 19:40:11,442.442 INFO    ] 200
[2026-06-12 19:40:11,444.444 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:40:11,468.468 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 19:40:11,512.512 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 19:40:11,513.513 INFO    ] No camera update needed
[2026-06-12 19:40:11,514.514 INFO    ] Script finished. Safe exiting...
[2026-06-12 19:40:11,516.516 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 19:40:11,518.518 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 19:40:11,521.521 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 19:40:13,561.561 INFO    ] ================================================
[2026-06-12 19:40:13,577.577 INFO    ] Launching Daemon at Fri Jun 12 19:40:13 IST 2026
[2026-06-12 19:40:13,587.587 INFO    ] ================================================
[2026-06-12 19:40:13,928.928 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 19:40:13
[2026-06-12 19:40:14,241.241 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 19:40:14,371.371 INFO    ] Initializing speech engine...
[2026-06-12 19:40:14,374.374 INFO    ] 2026-06-12 19:40:14
[2026-06-12 19:40:14,566.566 INFO    ] 2026-06-12 19:40:14
[2026-06-12 19:40:14,614.614 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 19:40:14,774.774 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 19:40:14,811.811 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 19:40:14,992.992 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 19:40:15,056.056 INFO    ] time= 12/06/2026 19:40:14
[2026-06-12 19:40:15,091.091 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 19:40:15,093.093 INFO    ] Checking for existing commands in stream...
[2026-06-12 19:40:15,196.196 INFO    ] No existing commands found in stream
[2026-06-12 19:40:20,210.210 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 19:40:20,213.213 INFO    ] Waiting 1.04 seconds before fallback handling...
[2026-06-12 19:40:21,631.631 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 19:40:21,632.632 INFO    ] Checking for system updates...
[2026-06-12 19:40:21,653.653 INFO    ] 200
[2026-06-12 19:40:21,654.654 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:40:21,687.687 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 19:40:21,688.688 INFO    ] No update needed
[2026-06-12 19:40:21,689.689 INFO    ] Checking for camera pi updates...
[2026-06-12 19:40:21,710.710 INFO    ] 200
[2026-06-12 19:40:21,711.711 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:40:21,734.734 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 19:40:21,785.785 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 19:40:21,786.786 INFO    ] No camera update needed
[2026-06-12 19:40:21,787.787 INFO    ] Script finished. Safe exiting...
[2026-06-12 19:40:21,789.789 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 19:40:21,792.792 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 19:40:21,794.794 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 19:40:23,833.833 INFO    ] ================================================
[2026-06-12 19:40:23,848.848 INFO    ] Launching Daemon at Fri Jun 12 19:40:23 IST 2026
[2026-06-12 19:40:23,859.859 INFO    ] ================================================
[2026-06-12 19:40:24,193.193 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 19:40:24
[2026-06-12 19:40:24,512.512 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 19:40:24,648.648 INFO    ] Initializing speech engine...
[2026-06-12 19:40:24,652.652 INFO    ] 2026-06-12 19:40:24
[2026-06-12 19:40:24,886.886 INFO    ] 2026-06-12 19:40:24
[2026-06-12 19:40:24,917.917 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 19:40:25,116.116 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 19:40:25,127.127 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 19:40:25,284.284 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 19:40:25,341.341 INFO    ] time= 12/06/2026 19:40:25
[2026-06-12 19:40:25,367.367 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 19:40:25,374.374 INFO    ] Checking for existing commands in stream...
[2026-06-12 19:40:25,446.446 INFO    ] No existing commands found in stream
[2026-06-12 19:40:30,453.453 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 19:40:30,456.456 INFO    ] Waiting 1.16 seconds before fallback handling...
[2026-06-12 19:40:31,951.951 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 19:40:31,953.953 INFO    ] Checking for system updates...
[2026-06-12 19:40:31,977.977 INFO    ] 200
[2026-06-12 19:40:31,978.978 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:40:32,013.013 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 19:40:32,014.014 INFO    ] No update needed
[2026-06-12 19:40:32,016.016 INFO    ] Checking for camera pi updates...
[2026-06-12 19:40:32,037.037 INFO    ] 200
[2026-06-12 19:40:32,038.038 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:40:32,067.067 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 19:40:32,097.097 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 19:40:32,098.098 INFO    ] No camera update needed
[2026-06-12 19:40:32,101.101 INFO    ] Script finished. Safe exiting...
[2026-06-12 19:40:32,102.102 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 19:40:32,106.106 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 19:40:32,109.109 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 19:40:34,146.146 INFO    ] ================================================
[2026-06-12 19:40:34,162.162 INFO    ] Launching Daemon at Fri Jun 12 19:40:34 IST 2026
[2026-06-12 19:40:34,172.172 INFO    ] ================================================
[2026-06-12 19:40:34,520.520 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 19:40:34
[2026-06-12 19:40:34,872.872 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 19:40:35,028.028 INFO    ] Initializing speech engine...
[2026-06-12 19:40:35,042.042 INFO    ] 2026-06-12 19:40:35
[2026-06-12 19:40:35,254.254 INFO    ] 2026-06-12 19:40:35
[2026-06-12 19:40:35,304.304 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 19:40:35,450.450 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 19:40:35,508.508 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 19:40:35,655.655 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 19:40:35,717.717 INFO    ] time= 12/06/2026 19:40:35
[2026-06-12 19:40:35,741.741 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 19:40:35,747.747 INFO    ] Checking for existing commands in stream...
[2026-06-12 19:40:35,813.813 INFO    ] No existing commands found in stream
[2026-06-12 19:40:40,827.827 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 19:40:40,831.831 INFO    ] Waiting 2.81 seconds before fallback handling...
[2026-06-12 19:40:44,039.039 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 19:40:44,041.041 INFO    ] Checking for system updates...
[2026-06-12 19:40:44,063.063 INFO    ] 200
[2026-06-12 19:40:44,064.064 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:40:44,095.095 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 19:40:44,097.097 INFO    ] No update needed
[2026-06-12 19:40:44,098.098 INFO    ] Checking for camera pi updates...
[2026-06-12 19:40:44,117.117 INFO    ] 200
[2026-06-12 19:40:44,119.119 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:40:44,146.146 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 19:40:44,192.192 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 19:40:44,194.194 INFO    ] No camera update needed
[2026-06-12 19:40:44,195.195 INFO    ] Script finished. Safe exiting...
[2026-06-12 19:40:44,197.197 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 19:40:44,200.200 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 19:40:44,203.203 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 19:40:46,242.242 INFO    ] ================================================
[2026-06-12 19:40:46,258.258 INFO    ] Launching Daemon at Fri Jun 12 19:40:46 IST 2026
[2026-06-12 19:40:46,269.269 INFO    ] ================================================
[2026-06-12 19:40:46,606.606 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 19:40:46
[2026-06-12 19:40:46,923.923 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 19:40:47,072.072 INFO    ] Initializing speech engine...
[2026-06-12 19:40:47,078.078 INFO    ] 2026-06-12 19:40:47
[2026-06-12 19:40:47,294.294 INFO    ] 2026-06-12 19:40:47
[2026-06-12 19:40:47,325.325 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 19:40:47,525.525 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 19:40:47,533.533 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 19:40:47,676.676 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 19:40:47,737.737 INFO    ] time= 12/06/2026 19:40:47
[2026-06-12 19:40:47,765.765 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 19:40:47,776.776 INFO    ] Checking for existing commands in stream...
[2026-06-12 19:40:47,851.851 INFO    ] No existing commands found in stream
[2026-06-12 19:40:52,862.862 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 19:40:52,865.865 INFO    ] Waiting 1.52 seconds before fallback handling...
[2026-06-12 19:40:54,770.770 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 19:40:54,772.772 INFO    ] Checking for system updates...
[2026-06-12 19:40:54,792.792 INFO    ] 200
[2026-06-12 19:40:54,793.793 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:40:54,825.825 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 19:40:54,827.827 INFO    ] No update needed
[2026-06-12 19:40:54,828.828 INFO    ] Checking for camera pi updates...
[2026-06-12 19:40:54,847.847 INFO    ] 200
[2026-06-12 19:40:54,848.848 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:40:54,872.872 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 19:40:54,927.927 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 19:40:54,929.929 INFO    ] No camera update needed
[2026-06-12 19:40:54,930.930 INFO    ] Script finished. Safe exiting...
[2026-06-12 19:40:54,931.931 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 19:40:54,934.934 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 19:40:54,937.937 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 19:40:56,975.975 INFO    ] ================================================
[2026-06-12 19:40:56,990.990 INFO    ] Launching Daemon at Fri Jun 12 19:40:56 IST 2026
[2026-06-12 19:40:57,001.001 INFO    ] ================================================
[2026-06-12 19:40:57,336.336 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 19:40:57
[2026-06-12 19:40:57,649.649 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 19:40:57,787.787 INFO    ] Initializing speech engine...
[2026-06-12 19:40:57,798.798 INFO    ] 2026-06-12 19:40:57
[2026-06-12 19:40:58,002.002 INFO    ] 2026-06-12 19:40:57
[2026-06-12 19:40:58,032.032 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 19:40:58,218.218 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 19:40:58,226.226 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 19:40:58,374.374 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 19:40:58,427.427 INFO    ] time= 12/06/2026 19:40:58
[2026-06-12 19:40:58,450.450 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 19:40:58,456.456 INFO    ] Checking for existing commands in stream...
[2026-06-12 19:40:58,548.548 INFO    ] No existing commands found in stream
[2026-06-12 19:41:03,556.556 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 19:41:03,565.565 INFO    ] Waiting 0.29 seconds before fallback handling...
[2026-06-12 19:41:05,646.646 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 19:41:05,649.649 INFO    ] Checking for system updates...
[2026-06-12 19:41:05,685.685 INFO    ] 200
[2026-06-12 19:41:05,688.688 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:41:05,743.743 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 19:41:05,745.745 INFO    ] No update needed
[2026-06-12 19:41:05,748.748 INFO    ] Checking for camera pi updates...
[2026-06-12 19:41:05,773.773 INFO    ] 200
[2026-06-12 19:41:05,775.775 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:41:05,801.801 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 19:41:05,847.847 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 19:41:05,848.848 INFO    ] No camera update needed
[2026-06-12 19:41:05,850.850 INFO    ] Script finished. Safe exiting...
[2026-06-12 19:41:05,851.851 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 19:41:05,854.854 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 19:41:05,857.857 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 19:41:07,895.895 INFO    ] ================================================
[2026-06-12 19:41:07,911.911 INFO    ] Launching Daemon at Fri Jun 12 19:41:07 IST 2026
[2026-06-12 19:41:07,922.922 INFO    ] ================================================
[2026-06-12 19:41:08,279.279 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 19:41:08
[2026-06-12 19:41:08,598.598 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 19:41:08,740.740 INFO    ] Initializing speech engine...
[2026-06-12 19:41:08,749.749 INFO    ] 2026-06-12 19:41:08
[2026-06-12 19:41:08,967.967 INFO    ] 2026-06-12 19:41:08
[2026-06-12 19:41:08,998.998 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 19:41:09,196.196 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 19:41:09,200.200 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 19:41:09,340.340 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 19:41:09,391.391 INFO    ] time= 12/06/2026 19:41:09
[2026-06-12 19:41:09,425.425 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 19:41:09,448.448 INFO    ] Checking for existing commands in stream...
[2026-06-12 19:41:09,525.525 INFO    ] No existing commands found in stream
[2026-06-12 19:41:14,534.534 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 19:41:14,537.537 INFO    ] Waiting 1.18 seconds before fallback handling...
[2026-06-12 19:41:16,146.146 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 19:41:16,148.148 INFO    ] Checking for system updates...
[2026-06-12 19:41:16,168.168 INFO    ] 200
[2026-06-12 19:41:16,170.170 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:41:16,201.201 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 19:41:16,203.203 INFO    ] No update needed
[2026-06-12 19:41:16,204.204 INFO    ] Checking for camera pi updates...
[2026-06-12 19:41:16,223.223 INFO    ] 200
[2026-06-12 19:41:16,225.225 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:41:16,249.249 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 19:41:16,302.302 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 19:41:16,304.304 INFO    ] No camera update needed
[2026-06-12 19:41:16,305.305 INFO    ] Script finished. Safe exiting...
[2026-06-12 19:41:16,306.306 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 19:41:16,309.309 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 19:41:16,312.312 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 19:41:18,351.351 INFO    ] ================================================
[2026-06-12 19:41:18,366.366 INFO    ] Launching Daemon at Fri Jun 12 19:41:18 IST 2026
[2026-06-12 19:41:18,377.377 INFO    ] ================================================
[2026-06-12 19:41:18,728.728 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 19:41:18
[2026-06-12 19:41:19,042.042 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 19:41:19,174.174 INFO    ] Initializing speech engine...
[2026-06-12 19:41:19,178.178 INFO    ] 2026-06-12 19:41:19
[2026-06-12 19:41:19,408.408 INFO    ] 2026-06-12 19:41:19
[2026-06-12 19:41:19,439.439 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 19:41:19,634.634 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 19:41:19,641.641 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 19:41:19,788.788 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 19:41:19,837.837 INFO    ] time= 12/06/2026 19:41:19
[2026-06-12 19:41:19,883.883 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 19:41:19,889.889 INFO    ] Checking for existing commands in stream...
[2026-06-12 19:41:19,964.964 INFO    ] No existing commands found in stream
[2026-06-12 19:41:24,975.975 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 19:41:24,982.982 INFO    ] Waiting 0.61 seconds before fallback handling...
[2026-06-12 19:41:25,967.967 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 19:41:25,968.968 INFO    ] Checking for system updates...
[2026-06-12 19:41:25,990.990 INFO    ] 200
[2026-06-12 19:41:25,992.992 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:41:26,025.025 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 19:41:26,026.026 INFO    ] No update needed
[2026-06-12 19:41:26,028.028 INFO    ] Checking for camera pi updates...
[2026-06-12 19:41:26,047.047 INFO    ] 200
[2026-06-12 19:41:26,049.049 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:41:26,072.072 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 19:41:26,120.120 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 19:41:26,122.122 INFO    ] No camera update needed
[2026-06-12 19:41:26,123.123 INFO    ] Script finished. Safe exiting...
[2026-06-12 19:41:26,125.125 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 19:41:26,128.128 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 19:41:26,131.131 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 19:41:28,172.172 INFO    ] ================================================
[2026-06-12 19:41:28,187.187 INFO    ] Launching Daemon at Fri Jun 12 19:41:28 IST 2026
[2026-06-12 19:41:28,198.198 INFO    ] ================================================
[2026-06-12 19:41:28,554.554 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 19:41:28
[2026-06-12 19:41:28,866.866 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 19:41:29,009.009 INFO    ] Initializing speech engine...
[2026-06-12 19:41:29,015.015 INFO    ] 2026-06-12 19:41:29
[2026-06-12 19:41:29,220.220 INFO    ] 2026-06-12 19:41:29
[2026-06-12 19:41:29,248.248 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 19:41:29,434.434 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 19:41:29,443.443 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 19:41:29,568.568 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 19:41:29,624.624 INFO    ] time= 12/06/2026 19:41:29
[2026-06-12 19:41:29,668.668 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 19:41:29,670.670 INFO    ] Checking for existing commands in stream...
[2026-06-12 19:41:29,742.742 INFO    ] No existing commands found in stream
[2026-06-12 19:41:34,751.751 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 19:41:34,753.753 INFO    ] Waiting 2.86 seconds before fallback handling...
[2026-06-12 19:41:38,029.029 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 19:41:38,031.031 INFO    ] Checking for system updates...
[2026-06-12 19:41:38,051.051 INFO    ] 200
[2026-06-12 19:41:38,053.053 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:41:38,083.083 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 19:41:38,084.084 INFO    ] No update needed
[2026-06-12 19:41:38,085.085 INFO    ] Checking for camera pi updates...
[2026-06-12 19:41:38,105.105 INFO    ] 200
[2026-06-12 19:41:38,106.106 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:41:38,132.132 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 19:41:38,164.164 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 19:41:38,166.166 INFO    ] No camera update needed
[2026-06-12 19:41:38,167.167 INFO    ] Script finished. Safe exiting...
[2026-06-12 19:41:38,168.168 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 19:41:38,172.172 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 19:41:38,174.174 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 19:41:40,214.214 INFO    ] ================================================
[2026-06-12 19:41:40,228.228 INFO    ] Launching Daemon at Fri Jun 12 19:41:40 IST 2026
[2026-06-12 19:41:40,239.239 INFO    ] ================================================
[2026-06-12 19:41:40,565.565 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 19:41:40
[2026-06-12 19:41:40,888.888 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 19:41:41,031.031 INFO    ] Initializing speech engine...
[2026-06-12 19:41:41,039.039 INFO    ] 2026-06-12 19:41:41
[2026-06-12 19:41:41,263.263 INFO    ] 2026-06-12 19:41:41
[2026-06-12 19:41:41,293.293 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 19:41:41,492.492 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 19:41:41,496.496 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 19:41:41,643.643 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 19:41:41,708.708 INFO    ] time= 12/06/2026 19:41:41
[2026-06-12 19:41:41,742.742 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 19:41:41,748.748 INFO    ] Checking for existing commands in stream...
[2026-06-12 19:41:41,821.821 INFO    ] No existing commands found in stream
[2026-06-12 19:41:46,830.830 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 19:41:46,833.833 INFO    ] Waiting 1.96 seconds before fallback handling...
[2026-06-12 19:41:49,182.182 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 19:41:49,183.183 INFO    ] Checking for system updates...
[2026-06-12 19:41:49,203.203 INFO    ] 200
[2026-06-12 19:41:49,205.205 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:41:49,235.235 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 19:41:49,236.236 INFO    ] No update needed
[2026-06-12 19:41:49,238.238 INFO    ] Checking for camera pi updates...
[2026-06-12 19:41:49,257.257 INFO    ] 200
[2026-06-12 19:41:49,258.258 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:41:49,281.281 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 19:41:49,324.324 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 19:41:49,325.325 INFO    ] No camera update needed
[2026-06-12 19:41:49,326.326 INFO    ] Script finished. Safe exiting...
[2026-06-12 19:41:49,328.328 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 19:41:49,331.331 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 19:41:49,334.334 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 19:41:51,371.371 INFO    ] ================================================
[2026-06-12 19:41:51,387.387 INFO    ] Launching Daemon at Fri Jun 12 19:41:51 IST 2026
[2026-06-12 19:41:51,397.397 INFO    ] ================================================
[2026-06-12 19:41:51,722.722 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 19:41:51
[2026-06-12 19:41:52,035.035 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 19:41:52,168.168 INFO    ] Initializing speech engine...
[2026-06-12 19:41:52,172.172 INFO    ] 2026-06-12 19:41:52
[2026-06-12 19:41:52,376.376 INFO    ] 2026-06-12 19:41:52
[2026-06-12 19:41:52,411.411 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 19:41:52,567.567 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 19:41:52,611.611 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 19:41:52,789.789 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 19:41:52,847.847 INFO    ] time= 12/06/2026 19:41:52
[2026-06-12 19:41:52,887.887 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 19:41:52,889.889 INFO    ] Checking for existing commands in stream...
[2026-06-12 19:41:52,993.993 INFO    ] No existing commands found in stream
[2026-06-12 19:41:58,002.002 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 19:41:58,005.005 INFO    ] Waiting 0.51 seconds before fallback handling...
[2026-06-12 19:41:58,940.940 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 19:41:58,942.942 INFO    ] Checking for system updates...
[2026-06-12 19:41:58,962.962 INFO    ] 200
[2026-06-12 19:41:58,964.964 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:41:58,996.996 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 19:41:58,997.997 INFO    ] No update needed
[2026-06-12 19:41:58,998.998 INFO    ] Checking for camera pi updates...
[2026-06-12 19:41:59,018.018 INFO    ] 200
[2026-06-12 19:41:59,019.019 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:41:59,042.042 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 19:41:59,097.097 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 19:41:59,099.099 INFO    ] No camera update needed
[2026-06-12 19:41:59,100.100 INFO    ] Script finished. Safe exiting...
[2026-06-12 19:41:59,102.102 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 19:41:59,105.105 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 19:41:59,107.107 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 19:42:01,145.145 INFO    ] ================================================
[2026-06-12 19:42:01,160.160 INFO    ] Launching Daemon at Fri Jun 12 19:42:01 IST 2026
[2026-06-12 19:42:01,170.170 INFO    ] ================================================
[2026-06-12 19:42:01,513.513 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 19:42:01
[2026-06-12 19:42:01,831.831 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 19:42:02,161.161 INFO    ] Initializing speech engine...
[2026-06-12 19:42:02,164.164 INFO    ] 2026-06-12 19:42:02
[2026-06-12 19:42:02,463.463 INFO    ] 2026-06-12 19:42:02
[2026-06-12 19:42:02,513.513 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 19:42:02,801.801 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 19:42:02,855.855 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 19:42:02,985.985 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 19:42:02,991.991 INFO    ] time= 12/06/2026 19:42:02
[2026-06-12 19:42:03,004.004 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 19:42:03,006.006 INFO    ] Checking for existing commands in stream...
[2026-06-12 19:42:03,068.068 INFO    ] No existing commands found in stream
[2026-06-12 19:42:08,076.076 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 19:42:08,079.079 INFO    ] Waiting 1.18 seconds before fallback handling...
[2026-06-12 19:42:09,630.630 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 19:42:09,631.631 INFO    ] Checking for system updates...
[2026-06-12 19:42:09,652.652 INFO    ] 200
[2026-06-12 19:42:09,653.653 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:42:09,683.683 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 19:42:09,684.684 INFO    ] No update needed
[2026-06-12 19:42:09,685.685 INFO    ] Checking for camera pi updates...
[2026-06-12 19:42:09,704.704 INFO    ] 200
[2026-06-12 19:42:09,706.706 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:42:09,731.731 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 19:42:09,780.780 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 19:42:09,782.782 INFO    ] No camera update needed
[2026-06-12 19:42:09,783.783 INFO    ] Script finished. Safe exiting...
[2026-06-12 19:42:09,784.784 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 19:42:09,787.787 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 19:42:09,790.790 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 19:42:11,827.827 INFO    ] ================================================
[2026-06-12 19:42:11,843.843 INFO    ] Launching Daemon at Fri Jun 12 19:42:11 IST 2026
[2026-06-12 19:42:11,853.853 INFO    ] ================================================
[2026-06-12 19:42:12,195.195 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 19:42:12
[2026-06-12 19:42:12,507.507 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 19:42:12,643.643 INFO    ] Initializing speech engine...
[2026-06-12 19:42:12,658.658 INFO    ] 2026-06-12 19:42:12
[2026-06-12 19:42:12,875.875 INFO    ] 2026-06-12 19:42:12
[2026-06-12 19:42:12,905.905 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 19:42:13,104.104 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 19:42:13,108.108 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 19:42:13,249.249 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 19:42:13,310.310 INFO    ] time= 12/06/2026 19:42:13
[2026-06-12 19:42:13,345.345 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 19:42:13,357.357 INFO    ] Checking for existing commands in stream...
[2026-06-12 19:42:13,433.433 INFO    ] No existing commands found in stream
[2026-06-12 19:42:18,443.443 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 19:42:18,446.446 INFO    ] Waiting 3.25 seconds before fallback handling...
[2026-06-12 19:42:22,079.079 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 19:42:22,080.080 INFO    ] Checking for system updates...
[2026-06-12 19:42:22,102.102 INFO    ] 200
[2026-06-12 19:42:22,104.104 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:42:22,133.133 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 19:42:22,134.134 INFO    ] No update needed
[2026-06-12 19:42:22,136.136 INFO    ] Checking for camera pi updates...
[2026-06-12 19:42:22,155.155 INFO    ] 200
[2026-06-12 19:42:22,156.156 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:42:22,182.182 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 19:42:22,235.235 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 19:42:22,237.237 INFO    ] No camera update needed
[2026-06-12 19:42:22,238.238 INFO    ] Script finished. Safe exiting...
[2026-06-12 19:42:22,239.239 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 19:42:22,242.242 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 19:42:22,245.245 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 19:42:24,283.283 INFO    ] ================================================
[2026-06-12 19:42:24,299.299 INFO    ] Launching Daemon at Fri Jun 12 19:42:24 IST 2026
[2026-06-12 19:42:24,310.310 INFO    ] ================================================
[2026-06-12 19:42:24,662.662 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 19:42:24
[2026-06-12 19:42:25,003.003 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 19:42:25,157.157 INFO    ] Initializing speech engine...
[2026-06-12 19:42:25,161.161 INFO    ] 2026-06-12 19:42:25
[2026-06-12 19:42:25,369.369 INFO    ] 2026-06-12 19:42:25
[2026-06-12 19:42:25,398.398 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 19:42:25,583.583 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 19:42:25,593.593 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 19:42:25,720.720 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 19:42:25,787.787 INFO    ] time= 12/06/2026 19:42:25
[2026-06-12 19:42:25,812.812 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 19:42:25,818.818 INFO    ] Checking for existing commands in stream...
[2026-06-12 19:42:25,909.909 INFO    ] No existing commands found in stream
[2026-06-12 19:42:30,924.924 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 19:42:30,934.934 INFO    ] Waiting 0.77 seconds before fallback handling...
[2026-06-12 19:42:32,030.030 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 19:42:32,032.032 INFO    ] Checking for system updates...
[2026-06-12 19:42:32,057.057 INFO    ] 200
[2026-06-12 19:42:32,059.059 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:42:32,093.093 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 19:42:32,094.094 INFO    ] No update needed
[2026-06-12 19:42:32,096.096 INFO    ] Checking for camera pi updates...
[2026-06-12 19:42:32,119.119 INFO    ] 200
[2026-06-12 19:42:32,121.121 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:42:32,147.147 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 19:42:32,213.213 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 19:42:32,214.214 INFO    ] No camera update needed
[2026-06-12 19:42:32,216.216 INFO    ] Script finished. Safe exiting...
[2026-06-12 19:42:32,217.217 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 19:42:32,221.221 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 19:42:32,225.225 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 19:42:34,263.263 INFO    ] ================================================
[2026-06-12 19:42:34,279.279 INFO    ] Launching Daemon at Fri Jun 12 19:42:34 IST 2026
[2026-06-12 19:42:34,290.290 INFO    ] ================================================
[2026-06-12 19:42:34,630.630 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 19:42:34
[2026-06-12 19:42:34,945.945 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 19:42:35,079.079 INFO    ] Initializing speech engine...
[2026-06-12 19:42:35,083.083 INFO    ] 2026-06-12 19:42:35
[2026-06-12 19:42:35,300.300 INFO    ] 2026-06-12 19:42:35
[2026-06-12 19:42:35,328.328 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 19:42:35,481.481 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 19:42:35,529.529 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 19:42:35,691.691 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 19:42:35,718.718 INFO    ] time= 12/06/2026 19:42:35
[2026-06-12 19:42:35,774.774 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 19:42:35,800.800 INFO    ] Checking for existing commands in stream...
[2026-06-12 19:42:35,903.903 INFO    ] No existing commands found in stream
[2026-06-12 19:42:39,216.216 INFO    ] Received new command: ID=1781273559086-0
[2026-06-12 19:42:39,218.218 INFO    ] process_and_cleanup_command: msg_id=1781273559086-0
[2026-06-12 19:42:39,221.221 INFO    ] is_command_expired: timestamp=2026-06-12T14:12:38.248Z, expiry=30s
[2026-06-12 19:42:39,303.303 INFO    ] Command removed from stream: 1781273559086-0. returning for processing...
[2026-06-12 19:42:39,305.305 INFO    ] ***** get_valid_command
[2026-06-12 19:42:39,307.307 INFO    ] {'timestamp': '2026-06-12T14:12:38.248Z', 'data': '{"request_id":"start-order-1781273558248-hb6tdnon3","orderId":"TM09202301260612194155687","is_vending":false}', 'source': 'webapp', 'timeout': '10', 'command': 'start-order'}
[2026-06-12 19:42:39,310.310 INFO    ] ***** Parsed command data: {'is_vending': False, 'request_id': 'start-order-1781273558248-hb6tdnon3', 'orderId': 'TM09202301260612194155687'}
[2026-06-12 19:42:39,312.312 INFO    ] Handling start order...
[2026-06-12 19:42:39,315.315 INFO    ] handle_start_order_command
[2026-06-12 19:42:39,320.320 INFO    ] _send_start_order_success: request_id=start-order-1781273558248-hb6tdnon3, order_id=TM09202301260612194155687
[2026-06-12 19:42:39,323.323 INFO    ] [_send_start_order_success] Adding message to stream: machine:TM09202301
[2026-06-12 19:42:39,386.386 INFO    ] [_send_start_order_success] Message added to stream with ID: 1781273559419-0
[2026-06-12 19:42:39,389.389 INFO    ] ✅ Start-order command succeeded - order locked, waiting for process-order command
[2026-06-12 19:42:39,391.391 INFO    ] Checking for system updates...
[2026-06-12 19:42:39,432.432 INFO    ] 200
[2026-06-12 19:42:39,435.435 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:42:39,476.476 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 19:42:39,477.477 INFO    ] No update needed
[2026-06-12 19:42:39,479.479 INFO    ] Checking for camera pi updates...
[2026-06-12 19:42:39,498.498 INFO    ] 200
[2026-06-12 19:42:39,499.499 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:42:39,522.522 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 19:42:39,574.574 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 19:42:39,575.575 INFO    ] No camera update needed
[2026-06-12 19:42:39,576.576 INFO    ] Script finished. Safe exiting...
[2026-06-12 19:42:39,577.577 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 19:42:39,580.580 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 19:42:39,583.583 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 19:42:41,621.621 INFO    ] ================================================
[2026-06-12 19:42:41,637.637 INFO    ] Launching Daemon at Fri Jun 12 19:42:41 IST 2026
[2026-06-12 19:42:41,648.648 INFO    ] ================================================
[2026-06-12 19:42:41,984.984 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 19:42:41
[2026-06-12 19:42:42,299.299 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 19:42:42,430.430 INFO    ] Initializing speech engine...
[2026-06-12 19:42:42,434.434 INFO    ] 2026-06-12 19:42:42
[2026-06-12 19:42:42,652.652 INFO    ] 2026-06-12 19:42:42
[2026-06-12 19:42:42,680.680 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 19:42:42,866.866 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 19:42:42,875.875 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 19:42:43,026.026 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 19:42:43,075.075 INFO    ] time= 12/06/2026 19:42:43
[2026-06-12 19:42:43,097.097 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 19:42:43,103.103 INFO    ] Checking for existing commands in stream...
[2026-06-12 19:42:43,172.172 INFO    ] Found 2 existing command(s) in stream
[2026-06-12 19:42:43,174.174 INFO    ] Checking historical command: ID=1781273559419-0
[2026-06-12 19:42:43,196.196 INFO    ] process_and_cleanup_command: msg_id=1781273559419-0
[2026-06-12 19:42:43,203.203 INFO    ] is_command_expired: timestamp=2026-06-12T14:12:39.321776Z, expiry=30s
[2026-06-12 19:42:43,311.311 INFO    ] Command removed from stream: 1781273559419-0. returning for processing...
[2026-06-12 19:42:43,315.315 INFO    ] ***** get_valid_command
[2026-06-12 19:42:43,318.318 INFO    ] {'imei': 'TM09202301', 'message': 'start-order success', 'timestamp': '2026-06-12T14:12:39.321776Z', 'metadata_order_id': 'TM09202301260612194155687', 'message_type': 'command_response', 'status': 'success', 'metadata_request_id': 'start-order-1781273558248-hb6tdnon3'}
[2026-06-12 19:42:43,322.322 INFO    ] Checking historical command: ID=1781273560887-0
[2026-06-12 19:42:43,325.325 INFO    ] process_and_cleanup_command: msg_id=1781273560887-0
[2026-06-12 19:42:43,329.329 INFO    ] is_command_expired: timestamp=2026-06-12T14:12:40.068Z, expiry=30s
[2026-06-12 19:42:43,400.400 INFO    ] Command removed from stream: 1781273560887-0. returning for processing...
[2026-06-12 19:42:43,404.404 INFO    ] ***** get_valid_command
[2026-06-12 19:42:43,407.407 INFO    ] {'timeout': '60', 'source': 'webapp', 'data': '{"request_id":"process-order-1781273560068-hlzw456ca","orderId":"TM09202301260612194155687","is_vending":false,"accessCode":"69893044"}', 'command': 'process-order', 'timestamp': '2026-06-12T14:12:40.068Z'}
[2026-06-12 19:42:43,412.412 INFO    ] ***** Parsed command data: {'accessCode': '69893044', 'orderId': 'TM09202301260612194155687', 'is_vending': False, 'request_id': 'process-order-1781273560068-hlzw456ca'}
[2026-06-12 19:42:43,415.415 INFO    ] Handling process order...
[2026-06-12 19:42:43,419.419 INFO    ] Processing process-order command...
[2026-06-12 19:42:43,425.425 INFO    ] 🔍 Lock file Order ID: TM09202301260612194155687, TS: 2026-06-12 19:42:39
[2026-06-12 19:42:43,435.435 INFO    ] ✅ Order lock valid for TM09202301260612194155687
[2026-06-12 19:42:43,440.440 INFO    ] Received access code in process-order, skipping PHP API call
[2026-06-12 19:42:43,443.443 INFO    ] processing access code 69893044 for order TM09202301260612194155687
[2026-06-12 19:42:43,448.448 INFO    ] 🔍 Lock file Order ID: TM09202301260612194155687, TS: 2026-06-12 19:42:39
[2026-06-12 19:42:43,453.453 INFO    ] ✅ Order lock valid for TM09202301260612194155687
[2026-06-12 19:42:43,460.460 INFO    ] 2026-06-12 19:42:43
[2026-06-12 19:42:43,532.532 INFO    ] 200
[2026-06-12 19:42:43,536.536 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:42:43,561.561 INFO    ] 69893044
[2026-06-12 19:42:43,587.587 INFO    ] 2026-06-12 19:42:43
[2026-06-12 19:42:43,589.589 INFO    ] session id :621713721
[2026-06-12 19:42:43,592.592 INFO    ] http://localhost:5000/v2/getOrderByAccessCode?access_code=69893044&imei=TM09202301&session_id=621713721
[2026-06-12 19:42:44,289.289 INFO    ] 200
[2026-06-12 19:42:44,290.290 INFO    ] {"status": true, "msg": "Order Data", "data": {"bill_amount": "30", "access_code": "69893044", "order_id": "TM09202301260612194155687", "mobile": "8830783627", "proposed_sku_json": [{"unit_price": 10, "qty": 1, "skuid": "4500646", "offer_desc": "", "offer_id": "", "door_id": "1", "tray_id": "12", "sku_total": 10, "mrp": "10", "image_url": "https://images.tinymart.in/product/4500646-2968.webp", "name": "Modern Kitchens Moong daal 30g"}, {"unit_price": 10, "qty": 1, "skuid": "4500672", "offer_desc": "", "offer_id": "", "door_id": "1", "tray_id": "19", "sku_total": 10, "mrp": "10", "image_url": "https://images.tinymart.in/product/4500672-7226.webp", "name": "Modern kitchens Garlic Mixture 26gm"}, {"unit_price": 10, "qty": 1, "skuid": "4500647", "offer_desc": "", "offer_id": "", "door_id": "1", "tray_id": "18", "sku_total": 10, "mrp": "10", "image_url": "https://images.tinymart.in/product/4500647-5070.webp", "name": "Modern kitchens Roasted Channa 32g"}], "invoice_bill": "30"}, "rstatus": true}
[2026-06-12 19:42:44,292.292 INFO    ] 30
[2026-06-12 19:42:44,293.293 INFO    ] TM09202301260612194155687
[2026-06-12 19:42:44,294.294 INFO    ] 8830783627
[2026-06-12 19:42:44,296.296 INFO    ] 2026-06-12 19:42:44
[2026-06-12 19:42:44,297.297 INFO    ] Door Opening for user mobile ending with  three six two seven 
[2026-06-12 19:42:44,298.298 INFO    ] Door Opening for user mobile ending with  three six two seven 
[2026-06-12 19:42:44,300.300 INFO    ] bd802e7b50d4884d17d3f60a17ff38b7
[2026-06-12 19:42:44,301.301 INFO    ] 2026-06-12 19:42:44
[2026-06-12 19:42:44,302.302 INFO    ] creating audio file
[2026-06-12 19:42:44,338.338 INFO    ] Calling gTTS API with 60s timeout...
[2026-06-12 19:42:45,083.083 INFO    ] gTTS API call completed successfully
[2026-06-12 19:42:45,752.752 INFO    ] 2026-06-12 19:42:45
[2026-06-12 19:42:45,753.753 INFO    ] playing audio file
[2026-06-12 19:42:45,764.764 INFO    ] 2026-06-12 19:42:45
[2026-06-12 19:42:45,765.765 INFO    ] 2026-06-12 19:42:45
[2026-06-12 19:42:45,767.767 INFO    ] publish_status: order_id=TM09202301260612194155687
[2026-06-12 19:42:45,769.769 INFO    ] [publish_status] Adding message to stream: order:TM09202301260612194155687
[2026-06-12 19:42:45,842.842 INFO    ] [publish_status] Message added to stream with ID: 1781273565875-0
[2026-06-12 19:42:45,843.843 INFO    ] Published to order:TM09202301260612194155687: {'order_id': 'TM09202301260612194155687', 'server_response': '{"status": true, "rstatus": true, "data": {"order_id": "TM09202301260612194155687", "bill_amount": "30", "proposed_sku_json": [{"sku_total": 10, "image_url": "https://images.tinymart.in/product/4500646-2968.webp", "offer_desc": "", "offer_id": "", "skuid": "4500646", "name": "Modern Kitchens Moong daal 30g", "mrp": "10", "tray_id": "12", "door_id": "1", "unit_price": 10, "qty": 1}, {"sku_total": 10, "image_url": "https://images.tinymart.in/product/4500672-7226.webp", "offer_desc": "", "offer_id": "", "skuid": "4500672", "name": "Modern kitchens Garlic Mixture 26gm", "mrp": "10", "tray_id": "19", "door_id": "1", "unit_price": 10, "qty": 1}, {"sku_total": 10, "image_url": "https://images.tinymart.in/product/4500647-5070.webp", "offer_desc": "", "offer_id": "", "skuid": "4500647", "name": "Modern kitchens Roasted Channa 32g", "mrp": "10", "tray_id": "18", "door_id": "1", "unit_price": 10, "qty": 1}], "invoice_bill": "30", "access_code": "69893044", "mobile": "8830783627"}, "msg": "Order Data"}', 'timestamp': '2026-06-12T14:12:45.766713Z', 'server_status': 'order-started'} (ID: 1781273565875-0)
[2026-06-12 19:42:46,219.219 INFO    ] {'order_id': 'TM09202301260612194155687', 'server_response': {'status': True, 'rstatus': True, 'data': {'order_id': 'TM09202301260612194155687', 'bill_amount': '30', 'proposed_sku_json': [{'sku_total': 10, 'image_url': 'https://images.tinymart.in/product/4500646-2968.webp', 'offer_desc': '', 'offer_id': '', 'skuid': '4500646', 'name': 'Modern Kitchens Moong daal 30g', 'mrp': '10', 'tray_id': '12', 'door_id': '1', 'unit_price': 10, 'qty': 1}, {'sku_total': 10, 'image_url': 'https://images.tinymart.in/product/4500672-7226.webp', 'offer_desc': '', 'offer_id': '', 'skuid': '4500672', 'name': 'Modern kitchens Garlic Mixture 26gm', 'mrp': '10', 'tray_id': '19', 'door_id': '1', 'unit_price': 10, 'qty': 1}, {'sku_total': 10, 'image_url': 'https://images.tinymart.in/product/4500647-5070.webp', 'offer_desc': '', 'offer_id': '', 'skuid': '4500647', 'name': 'Modern kitchens Roasted Channa 32g', 'mrp': '10', 'tray_id': '18', 'door_id': '1', 'unit_price': 10, 'qty': 1}], 'invoice_bill': '30', 'access_code': '69893044', 'mobile': '8830783627'}, 'msg': 'Order Data'}, 'server_status': 'order-started'}
[2026-06-12 19:42:46,221.221 INFO    ] 200
[2026-06-12 19:42:46,222.222 INFO    ] {"data":{"order_id":"TM09202301260612194155687","server_response":{"status":true,"rstatus":true,"data":{"order_id":"TM09202301260612194155687","bill_amount":"30","proposed_sku_json":[{"sku_total":10,"image_url":"https:\/\/images.tinymart.in\/product\/4500646-2968.webp","offer_desc":"","offer_id":"","skuid":"4500646","name":"Modern Kitchens Moong daal 30g","mrp":"10","tray_id":"12","door_id":"1","unit_price":10,"qty":1},{"sku_total":10,"image_url":"https:\/\/images.tinymart.in\/product\/4500672-7226.webp","offer_desc":"","offer_id":"","skuid":"4500672","name":"Modern kitchens Garlic Mixture 26gm","mrp":"10","tray_id":"19","door_id":"1","unit_price":10,"qty":1},{"sku_total":10,"image_url":"https:\/\/images.tinymart.in\/product\/4500647-5070.webp","offer_desc":"","offer_id":"","skuid":"4500647","name":"Modern kitchens Roasted Channa 32g","mrp":"10","tray_id":"18","door_id":"1","unit_price":10,"qty":1}],"invoice_bill":"30","access_code":"69893044","mobile":"8830783627"},"msg":"Order Data"},"server_status":"order-started"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-12 19:42:46,224.224 INFO    ] {'data': {'order_id': 'TM09202301260612194155687', 'server_response': {'status': True, 'rstatus': True, 'data': {'order_id': 'TM09202301260612194155687', 'bill_amount': '30', 'proposed_sku_json': [{'sku_total': 10, 'image_url': 'https://images.tinymart.in/product/4500646-2968.webp', 'offer_desc': '', 'offer_id': '', 'skuid': '4500646', 'mrp': '10', 'name': 'Modern Kitchens Moong daal 30g', 'tray_id': '12', 'door_id': '1', 'unit_price': 10, 'qty': 1}, {'sku_total': 10, 'image_url': 'https://images.tinymart.in/product/4500672-7226.webp', 'offer_desc': '', 'offer_id': '', 'skuid': '4500672', 'mrp': '10', 'name': 'Modern kitchens Garlic Mixture 26gm', 'tray_id': '19', 'door_id': '1', 'unit_price': 10, 'qty': 1}, {'sku_total': 10, 'image_url': 'https://images.tinymart.in/product/4500647-5070.webp', 'offer_desc': '', 'offer_id': '', 'skuid': '4500647', 'mrp': '10', 'name': 'Modern kitchens Roasted Channa 32g', 'tray_id': '18', 'door_id': '1', 'unit_price': 10, 'qty': 1}], 'invoice_bill': '30', 'access_code': '69893044', 'mobile': '8830783627'}, 'msg': 'Order Data'}, 'server_status': 'order-started'}, 'response': {'status': True, 'data': 'order updated successfully', 'msg': 'order updated successfully', 'code': 'ORDER_EXISTS'}}
[2026-06-12 19:42:46,226.226 INFO    ] 2026-06-12 19:42:46
[2026-06-12 19:42:46,251.251 INFO    ] 200
[2026-06-12 19:42:46,252.252 INFO    ] True
[2026-06-12 19:42:46,336.336 INFO    ] 200
[2026-06-12 19:42:46,338.338 INFO    ] {"error": {"tmessage": "In Progress", "umessage": "In Progress", "data": {}, "code": 20001}, "SectionSKU": {"Header": "Thank you for bearing with us :)", "skus": []}, "rstatus": false, "SectionStatus": {"Header": " Your order is under process  ", "SubHeader": "Please wait while we process your order", "UI_Header": "", "Note": ""}, "status": "False", "voiceNote": "Please Wait", "SectionMain": {"Header": "Processing Order"}}
[2026-06-12 19:42:46,340.340 INFO    ] {'SectionSKU': {'skus': [], 'Header': 'Thank you for bearing with us :)'}, 'rstatus': False, 'SectionMain': {'Header': 'Processing Order'}, 'voiceNote': 'Please Wait', 'status': 'False', 'error': {'tmessage': 'In Progress', 'data': {}, 'umessage': 'In Progress', 'code': 20001}, 'SectionStatus': {'Note': '', 'SubHeader': 'Please wait while we process your order', 'Header': ' Your order is under process  ', 'UI_Header': ''}}
[2026-06-12 19:42:46,341.341 INFO    ] *** process_order ***
[2026-06-12 19:42:47,551.551 INFO    ] 200
[2026-06-12 19:42:47,552.552 INFO    ] {"delay": 0, "SectionSKU": {"Header": "Thank you for bearing with us :)", "skus": []}, "rstatus": true, "SectionStatus": {"Header": " Your order is under process  ", "SubHeader": "Please wait while we process your order", "UI_Header": "", "Note": ""}, "status": "True", "voiceNote": "Please Wait", "SectionMain": {"Header": "Processing Order"}}
[2026-06-12 19:42:47,554.554 INFO    ] {'delay': 0, 'SectionSKU': {'skus': [], 'Header': 'Thank you for bearing with us :)'}, 'rstatus': True, 'SectionMain': {'Header': 'Processing Order'}, 'voiceNote': 'Please Wait', 'status': 'True', 'SectionStatus': {'Note': '', 'SubHeader': 'Please wait while we process your order', 'Header': ' Your order is under process  ', 'UI_Header': ''}}
[2026-06-12 19:42:47,555.555 INFO    ] *** process_order ***
[2026-06-12 19:42:47,556.556 INFO    ] publish_status: order_id=TM09202301260612194155687
[2026-06-12 19:42:47,558.558 INFO    ] [publish_status] Adding message to stream: order:TM09202301260612194155687
[2026-06-12 19:42:47,654.654 INFO    ] [publish_status] Message added to stream with ID: 1781273567679-0
[2026-06-12 19:42:47,656.656 INFO    ] Published to order:TM09202301260612194155687: {'order_id': 'TM09202301260612194155687', 'server_response': '{"delay": 0, "SectionSKU": {"skus": [], "Header": "Thank you for bearing with us :)"}, "rstatus": true, "SectionMain": {"Header": "Processing Order"}, "voiceNote": "Door is open...", "status": "True", "SectionStatus": {"UI_Header": "", "SubHeader": "You can pull the door now.", "Header": " Your order is under process  ", "Note": ""}}', 'server_status': 'doorOpened'} (ID: 1781273567679-0)
[2026-06-12 19:42:48,723.723 INFO    ] 2026-06-12 19:42:48
[2026-06-12 19:42:48,726.726 INFO    ] publish_status: order_id=TM09202301260612194155687
[2026-06-12 19:42:48,728.728 INFO    ] [publish_status] Adding message to stream: order:TM09202301260612194155687
[2026-06-12 19:42:48,817.817 INFO    ] [publish_status] Message added to stream with ID: 1781273568850-0
[2026-06-12 19:42:48,820.820 INFO    ] Published to order:TM09202301260612194155687: {'order_id': 'TM09202301260612194155687', 'server_response': '{"delay": 0, "SectionSKU": {"skus": [], "Header": "Thank you for bearing with us :)"}, "rstatus": true, "SectionMain": {"Header": "Processing Order"}, "voiceNote": "Please Wait", "status": "True", "SectionStatus": {"Note": "", "SubHeader": "Please wait while we process your order", "Header": " Your order is under process  ", "UI_Header": ""}}', 'timestamp': '2026-06-12T14:12:48.724708Z', 'server_status': 'processOrder'} (ID: 1781273568850-0)
[2026-06-12 19:42:48,942.942 INFO    ] {'order_id': 'TM09202301260612194155687', 'server_response': {'delay': 0, 'SectionSKU': {'skus': [], 'Header': 'Thank you for bearing with us :)'}, 'rstatus': True, 'SectionMain': {'Header': 'Processing Order'}, 'voiceNote': 'Please Wait', 'status': 'True', 'SectionStatus': {'Note': '', 'SubHeader': 'Please wait while we process your order', 'Header': ' Your order is under process  ', 'UI_Header': ''}}, 'server_status': 'processOrder'}
[2026-06-12 19:42:48,944.944 INFO    ] 200
[2026-06-12 19:42:48,945.945 INFO    ] {"data":{"order_id":"TM09202301260612194155687","server_response":{"delay":0,"SectionSKU":{"skus":[],"Header":"Thank you for bearing with us :)"},"rstatus":true,"SectionMain":{"Header":"Processing Order"},"voiceNote":"Please Wait","status":"true","SectionStatus":{"Note":"","SubHeader":"Please wait while we process your order","Header":" Your order is under process  ","UI_Header":""}},"server_status":"processOrder"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-12 19:42:48,947.947 INFO    ] {'data': {'order_id': 'TM09202301260612194155687', 'server_response': {'delay': 0, 'SectionSKU': {'Header': 'Thank you for bearing with us :)', 'skus': []}, 'rstatus': True, 'SectionMain': {'Header': 'Processing Order'}, 'voiceNote': 'Please Wait', 'status': 'true', 'SectionStatus': {'UI_Header': '', 'SubHeader': 'Please wait while we process your order', 'Header': ' Your order is under process  ', 'Note': ''}}, 'server_status': 'processOrder'}, 'response': {'status': True, 'data': 'order updated successfully', 'msg': 'order updated successfully', 'code': 'ORDER_EXISTS'}}
[2026-06-12 19:42:48,949.949 INFO    ] 2026-06-12 19:42:48
[2026-06-12 19:42:48,950.950 INFO    ] None
[2026-06-12 19:42:48,952.952 INFO    ] Opening Door now
[2026-06-12 19:42:48,953.953 INFO    ] Opening Door now
[2026-06-12 19:42:48,955.955 INFO    ] 08e5d1063504bf393c26f0bfa436e9f9
[2026-06-12 19:42:48,957.957 INFO    ] 2026-06-12 19:42:48
[2026-06-12 19:42:48,958.958 INFO    ] playing audio file
[2026-06-12 19:42:48,968.968 INFO    ] 2026-06-12 19:42:48
[2026-06-12 19:42:48,970.970 INFO    ] 2026-06-12 19:42:48
[2026-06-12 19:42:52,222.222 INFO    ] 200
[2026-06-12 19:42:52,224.224 INFO    ] {"error": {"tmessage": "In Progress", "umessage": "In Progress", "data": {}, "code": 20001}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"name": "Modern Kitchens Moong daal 30g", "qty": 1}, {"name": "Modern kitchens Garlic Mixture 26gm", "qty": 1}, {"name": "Modern kitchens Roasted Channa 32g", "qty": 1}]}, "rstatus": false, "SectionStatus": {"Header": "Please Close Door 1", "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"}, "status": "False", "voiceNote": "Door 1 is open now", "SectionMain": {"Header": "Door Open"}}
[2026-06-12 19:42:52,226.226 INFO    ] {'SectionSKU': {'skus': [{'name': 'Modern Kitchens Moong daal 30g', 'qty': 1}, {'name': 'Modern kitchens Garlic Mixture 26gm', 'qty': 1}, {'name': 'Modern kitchens Roasted Channa 32g', 'qty': 1}], 'Header': 'Pick the below items from the door'}, 'rstatus': False, 'SectionMain': {'Header': 'Door Open'}, 'voiceNote': 'Door 1 is open now', 'status': 'False', 'error': {'tmessage': 'In Progress', 'data': {}, 'umessage': 'In Progress', 'code': 20001}, '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'}}
[2026-06-12 19:42:55,451.451 INFO    ] 200
[2026-06-12 19:42:55,453.453 INFO    ] {"error": {"tmessage": "In Progress", "umessage": "In Progress", "data": {}, "code": 20001}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"name": "Modern Kitchens Moong daal 30g", "qty": 1}, {"name": "Modern kitchens Garlic Mixture 26gm", "qty": 1}, {"name": "Modern kitchens Roasted Channa 32g", "qty": 1}]}, "rstatus": false, "SectionStatus": {"Header": "Please Close Door 1", "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"}, "status": "False", "voiceNote": "Please close door 1", "SectionMain": {"Header": "Door Open"}}
[2026-06-12 19:42:55,455.455 INFO    ] {'SectionSKU': {'skus': [{'name': 'Modern Kitchens Moong daal 30g', 'qty': 1}, {'name': 'Modern kitchens Garlic Mixture 26gm', 'qty': 1}, {'name': 'Modern kitchens Roasted Channa 32g', 'qty': 1}], 'Header': 'Pick the below items from the door'}, 'rstatus': False, 'SectionMain': {'Header': 'Door Open'}, 'voiceNote': 'Please close door 1', 'status': 'False', 'error': {'tmessage': 'In Progress', 'data': {}, 'umessage': 'In Progress', 'code': 20001}, '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'}}
[2026-06-12 19:42:58,497.497 INFO    ] 200
[2026-06-12 19:42:58,498.498 INFO    ] {"error": {"tmessage": "In Progress", "umessage": "In Progress", "data": {}, "code": 20001}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"name": "Modern Kitchens Moong daal 30g", "qty": 1}, {"name": "Modern kitchens Garlic Mixture 26gm", "qty": 1}, {"name": "Modern kitchens Roasted Channa 32g", "qty": 1}]}, "rstatus": false, "SectionStatus": {"Header": "Please Close Door 1", "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"}, "status": "False", "voiceNote": "Please close door 1", "SectionMain": {"Header": "Door Open"}}
[2026-06-12 19:42:58,500.500 INFO    ] Please close door 1
[2026-06-12 19:42:58,501.501 INFO    ] Please close door 1
[2026-06-12 19:42:58,503.503 INFO    ] 787c302d53ab591e55c034b99c7aadd2
[2026-06-12 19:42:58,504.504 INFO    ] 2026-06-12 19:42:58
[2026-06-12 19:42:58,505.505 INFO    ] playing audio file
[2026-06-12 19:42:58,515.515 INFO    ] 2026-06-12 19:42:58
[2026-06-12 19:42:58,517.517 INFO    ] publish_status: order_id=TM09202301260612194155687
[2026-06-12 19:42:58,519.519 INFO    ] [publish_status] Adding message to stream: order:TM09202301260612194155687
[2026-06-12 19:42:58,590.590 INFO    ] [publish_status] Message added to stream with ID: 1781273578623-0
[2026-06-12 19:42:58,592.592 INFO    ] Published to order:TM09202301260612194155687: {'order_id': 'TM09202301260612194155687', 'server_response': '{"SectionSKU": {"skus": [{"name": "Modern Kitchens Moong daal 30g", "qty": 1}, {"name": "Modern kitchens Garlic Mixture 26gm", "qty": 1}, {"name": "Modern kitchens Roasted Channa 32g", "qty": 1}], "Header": "Pick the below items from the door"}, "rstatus": false, "SectionMain": {"Header": "Door Open"}, "voiceNote": "Please close door 1", "status": "False", "error": {"tmessage": "In Progress", "data": {}, "umessage": "In Progress", "code": 20001}, "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"}}', 'timestamp': '2026-06-12T14:12:58.516840Z', 'server_status': 'OrderStatus'} (ID: 1781273578623-0)
[2026-06-12 19:42:59,016.016 INFO    ] {'order_id': 'TM09202301260612194155687', 'server_response': {'SectionSKU': {'skus': [{'name': 'Modern Kitchens Moong daal 30g', 'qty': 1}, {'name': 'Modern kitchens Garlic Mixture 26gm', 'qty': 1}, {'name': 'Modern kitchens Roasted Channa 32g', 'qty': 1}], 'Header': 'Pick the below items from the door'}, 'rstatus': False, 'SectionMain': {'Header': 'Door Open'}, 'voiceNote': 'Please close door 1', 'status': 'False', 'error': {'tmessage': 'In Progress', 'data': {}, 'umessage': 'In Progress', 'code': 20001}, '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'}}, 'server_status': 'OrderStatus'}
[2026-06-12 19:42:59,018.018 INFO    ] 200
[2026-06-12 19:42:59,019.019 INFO    ] {"data":{"order_id":"TM09202301260612194155687","server_response":{"SectionSKU":{"skus":[{"name":"Modern Kitchens Moong daal 30g","qty":1},{"name":"Modern kitchens Garlic Mixture 26gm","qty":1},{"name":"Modern kitchens Roasted Channa 32g","qty":1}],"Header":"Pick the below items from the door"},"rstatus":false,"SectionMain":{"Header":"Door Open"},"voiceNote":"Please close door 1","status":"false","error":{"tmessage":"In Progress","data":[],"umessage":"In Progress","code":20001},"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"}},"server_status":"OrderStatus"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-12 19:42:59,021.021 INFO    ] {'data': {'order_id': 'TM09202301260612194155687', 'server_response': {'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'Modern Kitchens Moong daal 30g', 'qty': 1}, {'name': 'Modern kitchens Garlic Mixture 26gm', 'qty': 1}, {'name': 'Modern kitchens Roasted Channa 32g', 'qty': 1}]}, 'rstatus': False, 'SectionMain': {'Header': 'Door Open'}, 'voiceNote': 'Please close door 1', 'status': 'false', 'error': {'tmessage': 'In Progress', 'data': [], 'umessage': 'In Progress', 'code': 20001}, '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'}}, 'server_status': 'OrderStatus'}, 'response': {'status': True, 'data': 'order updated successfully', 'msg': 'order updated successfully', 'code': 'ORDER_EXISTS'}}
[2026-06-12 19:42:59,022.022 INFO    ] {'SectionSKU': {'skus': [{'name': 'Modern Kitchens Moong daal 30g', 'qty': 1}, {'name': 'Modern kitchens Garlic Mixture 26gm', 'qty': 1}, {'name': 'Modern kitchens Roasted Channa 32g', 'qty': 1}], 'Header': 'Pick the below items from the door'}, 'rstatus': False, 'SectionMain': {'Header': 'Door Open'}, 'voiceNote': 'Please close door 1', 'status': 'False', 'error': {'tmessage': 'In Progress', 'data': {}, 'umessage': 'In Progress', 'code': 20001}, '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'}}
[2026-06-12 19:43:02,061.061 INFO    ] 200
[2026-06-12 19:43:02,063.063 INFO    ] {"error": {"tmessage": "In Progress", "umessage": "In Progress", "data": {}, "code": 20001}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"name": "Modern Kitchens Moong daal 30g", "qty": 1}, {"name": "Modern kitchens Garlic Mixture 26gm", "qty": 1}, {"name": "Modern kitchens Roasted Channa 32g", "qty": 1}]}, "rstatus": false, "SectionStatus": {"Header": "Please Close Door 1", "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"}, "status": "False", "voiceNote": "Please close door 1", "SectionMain": {"Header": "Door Open"}}
[2026-06-12 19:43:02,065.065 INFO    ] {'SectionSKU': {'skus': [{'name': 'Modern Kitchens Moong daal 30g', 'qty': 1}, {'name': 'Modern kitchens Garlic Mixture 26gm', 'qty': 1}, {'name': 'Modern kitchens Roasted Channa 32g', 'qty': 1}], 'Header': 'Pick the below items from the door'}, 'rstatus': False, 'SectionMain': {'Header': 'Door Open'}, 'voiceNote': 'Please close door 1', 'status': 'False', 'error': {'tmessage': 'In Progress', 'data': {}, 'umessage': 'In Progress', 'code': 20001}, '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'}}
[2026-06-12 19:43:05,100.100 INFO    ] 200
[2026-06-12 19:43:05,101.101 INFO    ] {"error": {"tmessage": "In Progress", "umessage": "In Progress", "data": {}, "code": 20001}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"name": "Modern Kitchens Moong daal 30g", "qty": 1}, {"name": "Modern kitchens Garlic Mixture 26gm", "qty": 1}, {"name": "Modern kitchens Roasted Channa 32g", "qty": 1}]}, "rstatus": false, "SectionStatus": {"Header": "Please Close Door 1", "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"}, "status": "False", "voiceNote": "Please close door 1", "SectionMain": {"Header": "Door Open"}}
[2026-06-12 19:43:05,103.103 INFO    ] {'SectionSKU': {'skus': [{'name': 'Modern Kitchens Moong daal 30g', 'qty': 1}, {'name': 'Modern kitchens Garlic Mixture 26gm', 'qty': 1}, {'name': 'Modern kitchens Roasted Channa 32g', 'qty': 1}], 'Header': 'Pick the below items from the door'}, 'rstatus': False, 'SectionMain': {'Header': 'Door Open'}, 'voiceNote': 'Please close door 1', 'status': 'False', 'error': {'tmessage': 'In Progress', 'data': {}, 'umessage': 'In Progress', 'code': 20001}, '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'}}
[2026-06-12 19:43:08,144.144 INFO    ] 200
[2026-06-12 19:43:08,145.145 INFO    ] {"error": {"tmessage": "In Progress", "umessage": "In Progress", "data": {}, "code": 20001}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"name": "Modern Kitchens Moong daal 30g", "qty": 1}, {"name": "Modern kitchens Garlic Mixture 26gm", "qty": 1}, {"name": "Modern kitchens Roasted Channa 32g", "qty": 1}]}, "rstatus": false, "SectionStatus": {"Header": "Please Close Door 1", "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"}, "status": "False", "voiceNote": "Please close door 1", "SectionMain": {"Header": "Door Open"}}
[2026-06-12 19:43:08,147.147 INFO    ] Please close door 1
[2026-06-12 19:43:08,148.148 INFO    ] Please close door 1
[2026-06-12 19:43:08,149.149 INFO    ] 787c302d53ab591e55c034b99c7aadd2
[2026-06-12 19:43:08,151.151 INFO    ] 2026-06-12 19:43:08
[2026-06-12 19:43:08,152.152 INFO    ] playing audio file
[2026-06-12 19:43:08,163.163 INFO    ] 2026-06-12 19:43:08
[2026-06-12 19:43:08,165.165 INFO    ] publish_status: order_id=TM09202301260612194155687
[2026-06-12 19:43:08,167.167 INFO    ] [publish_status] Adding message to stream: order:TM09202301260612194155687
[2026-06-12 19:43:08,229.229 INFO    ] [publish_status] Message added to stream with ID: 1781273588262-0
[2026-06-12 19:43:08,231.231 INFO    ] Published to order:TM09202301260612194155687: {'order_id': 'TM09202301260612194155687', 'server_response': '{"SectionSKU": {"skus": [{"name": "Modern Kitchens Moong daal 30g", "qty": 1}, {"name": "Modern kitchens Garlic Mixture 26gm", "qty": 1}, {"name": "Modern kitchens Roasted Channa 32g", "qty": 1}], "Header": "Pick the below items from the door"}, "rstatus": false, "SectionMain": {"Header": "Door Open"}, "voiceNote": "Please close door 1", "status": "False", "error": {"tmessage": "In Progress", "data": {}, "umessage": "In Progress", "code": 20001}, "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"}}', 'timestamp': '2026-06-12T14:13:08.164774Z', 'server_status': 'OrderStatus'} (ID: 1781273588262-0)
[2026-06-12 19:43:08,611.611 INFO    ] {'order_id': 'TM09202301260612194155687', 'server_response': {'SectionSKU': {'skus': [{'name': 'Modern Kitchens Moong daal 30g', 'qty': 1}, {'name': 'Modern kitchens Garlic Mixture 26gm', 'qty': 1}, {'name': 'Modern kitchens Roasted Channa 32g', 'qty': 1}], 'Header': 'Pick the below items from the door'}, 'rstatus': False, 'SectionMain': {'Header': 'Door Open'}, 'voiceNote': 'Please close door 1', 'status': 'False', 'error': {'tmessage': 'In Progress', 'data': {}, 'umessage': 'In Progress', 'code': 20001}, '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'}}, 'server_status': 'OrderStatus'}
[2026-06-12 19:43:08,612.612 INFO    ] 200
[2026-06-12 19:43:08,614.614 INFO    ] {"data":{"order_id":"TM09202301260612194155687","server_response":{"SectionSKU":{"skus":[{"name":"Modern Kitchens Moong daal 30g","qty":1},{"name":"Modern kitchens Garlic Mixture 26gm","qty":1},{"name":"Modern kitchens Roasted Channa 32g","qty":1}],"Header":"Pick the below items from the door"},"rstatus":false,"SectionMain":{"Header":"Door Open"},"voiceNote":"Please close door 1","status":"false","error":{"tmessage":"In Progress","data":[],"umessage":"In Progress","code":20001},"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"}},"server_status":"OrderStatus"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-12 19:43:08,616.616 INFO    ] {'data': {'order_id': 'TM09202301260612194155687', 'server_response': {'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'Modern Kitchens Moong daal 30g', 'qty': 1}, {'name': 'Modern kitchens Garlic Mixture 26gm', 'qty': 1}, {'name': 'Modern kitchens Roasted Channa 32g', 'qty': 1}]}, 'rstatus': False, 'SectionMain': {'Header': 'Door Open'}, 'voiceNote': 'Please close door 1', 'status': 'false', 'error': {'tmessage': 'In Progress', 'data': [], 'umessage': 'In Progress', 'code': 20001}, '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'}}, 'server_status': 'OrderStatus'}, 'response': {'status': True, 'data': 'order updated successfully', 'msg': 'order updated successfully', 'code': 'ORDER_EXISTS'}}
[2026-06-12 19:43:08,617.617 INFO    ] {'SectionSKU': {'skus': [{'name': 'Modern Kitchens Moong daal 30g', 'qty': 1}, {'name': 'Modern kitchens Garlic Mixture 26gm', 'qty': 1}, {'name': 'Modern kitchens Roasted Channa 32g', 'qty': 1}], 'Header': 'Pick the below items from the door'}, 'rstatus': False, 'SectionMain': {'Header': 'Door Open'}, 'voiceNote': 'Please close door 1', 'status': 'False', 'error': {'tmessage': 'In Progress', 'data': {}, 'umessage': 'In Progress', 'code': 20001}, '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'}}
[2026-06-12 19:43:11,652.652 INFO    ] 200
[2026-06-12 19:43:11,654.654 INFO    ] {"delay": 100, "SectionSKU": {"Header": "If you like us, tell others... else tell us", "skus": []}, "rstatus": true, "SectionStatus": {"Header": " Order is complete ", "SubHeader": "Please wait for invoice to generate", "UI_Header": "", "Note": "If any due amount, clear at https://go.tinymart.in"}, "status": "True", "voiceNote": "Transaction Completed", "SectionMain": {"Header": "Door Closed"}}
[2026-06-12 19:43:11,656.656 INFO    ] {'delay': 100, 'SectionSKU': {'skus': [], 'Header': 'If you like us, tell others... else tell us'}, 'rstatus': True, 'SectionMain': {'Header': 'Door Closed'}, 'voiceNote': 'Transaction Completed', 'status': 'True', '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': ''}}
[2026-06-12 19:43:11,657.657 INFO    ] 2026-06-12 19:43:11
[2026-06-12 19:43:11,659.659 INFO    ] Order Completed 
[2026-06-12 19:43:11,661.661 INFO    ] Order Completed 
[2026-06-12 19:43:11,662.662 INFO    ] 193c8a8cf3bf490ccfe0b23598544a83
[2026-06-12 19:43:11,664.664 INFO    ] 2026-06-12 19:43:11
[2026-06-12 19:43:11,665.665 INFO    ] playing audio file
[2026-06-12 19:43:11,676.676 INFO    ] 2026-06-12 19:43:11
[2026-06-12 19:43:11,678.678 INFO    ] {'delay': 100, 'SectionSKU': {'skus': [], 'Header': 'If you like us, tell others... else tell us'}, 'rstatus': True, 'SectionMain': {'Header': 'Door Closed'}, 'voiceNote': 'Transaction Completed', 'status': 'True', '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': ''}}
[2026-06-12 19:43:11,680.680 INFO    ] 2026-06-12 19:43:11
[2026-06-12 19:43:12,030.030 INFO    ] 200
[2026-06-12 19:43:12,031.031 INFO    ] {"anomaly": 0, "skus": [{"image_url": "https://images.tinymart.in/product/4500646-2968.webp", "qty": 1, "skuid": "4500646", "unit_price": "10", "tray_id": "12", "sku_total": 10.0, "mrp": "10", "door_id": "", "name": "Modern Kitchens Moong daal 30g per peice"}, {"image_url": "https://images.tinymart.in/product/4500647-5070.webp", "qty": 1, "skuid": "4500647", "unit_price": "10", "tray_id": "18", "sku_total": 10.0, "mrp": "10", "door_id": "", "name": "Modern kitchens Roasted Channa 32g per peice"}, {"image_url": "https://images.tinymart.in/product/4500672-7226.webp", "qty": 1, "skuid": "4500672", "unit_price": "10", "tray_id": "19", "sku_total": 10.0, "mrp": "10", "door_id": "", "name": "Modern kitchens Garlic Mixture 26gm per peice"}], "total_amount": 30.0, "orderId": "TM09202301260612194155687", "res": "True", "rstatus": true, "logic": "WBL"}
[2026-06-12 19:43:12,033.033 INFO    ] {'anomaly': 0, 'rstatus': True, 'total_amount': 30.0, 'skus': [{'sku_total': 10.0, 'image_url': 'https://images.tinymart.in/product/4500646-2968.webp', 'skuid': '4500646', 'name': 'Modern Kitchens Moong daal 30g per peice', 'mrp': '10', 'tray_id': '12', 'door_id': '', 'unit_price': '10', 'qty': 1}, {'sku_total': 10.0, 'image_url': 'https://images.tinymart.in/product/4500647-5070.webp', 'skuid': '4500647', 'name': 'Modern kitchens Roasted Channa 32g per peice', 'mrp': '10', 'tray_id': '18', 'door_id': '', 'unit_price': '10', 'qty': 1}, {'sku_total': 10.0, 'image_url': 'https://images.tinymart.in/product/4500672-7226.webp', 'skuid': '4500672', 'name': 'Modern kitchens Garlic Mixture 26gm per peice', 'mrp': '10', 'tray_id': '19', 'door_id': '', 'unit_price': '10', 'qty': 1}], 'logic': 'WBL', 'orderId': 'TM09202301260612194155687', 'res': 'True'}
[2026-06-12 19:43:12,034.034 INFO    ] {'anomaly': 0, 'rstatus': True, 'total_amount': 30.0, 'skus': [{'sku_total': 10.0, 'image_url': 'https://images.tinymart.in/product/4500646-2968.webp', 'skuid': '4500646', 'name': 'Modern Kitchens Moong daal 30g per peice', 'mrp': '10', 'tray_id': '12', 'door_id': '', 'unit_price': '10', 'qty': 1}, {'sku_total': 10.0, 'image_url': 'https://images.tinymart.in/product/4500647-5070.webp', 'skuid': '4500647', 'name': 'Modern kitchens Roasted Channa 32g per peice', 'mrp': '10', 'tray_id': '18', 'door_id': '', 'unit_price': '10', 'qty': 1}, {'sku_total': 10.0, 'image_url': 'https://images.tinymart.in/product/4500672-7226.webp', 'skuid': '4500672', 'name': 'Modern kitchens Garlic Mixture 26gm per peice', 'mrp': '10', 'tray_id': '19', 'door_id': '', 'unit_price': '10', 'qty': 1}], 'logic': 'WBL', 'orderId': 'TM09202301260612194155687', 'res': 'True'}
[2026-06-12 19:43:12,036.036 INFO    ] 2026-06-12 19:43:12
[2026-06-12 19:43:12,037.037 INFO    ] 2026-06-12 19:43:12
[2026-06-12 19:43:12,038.038 INFO    ] 30
[2026-06-12 19:43:12,039.039 INFO    ] 2026-06-12 19:43:12
[2026-06-12 19:43:12,041.041 INFO    ] 2026-06-12 19:43:12
[2026-06-12 19:43:12,042.042 INFO    ]  Your Bill Amount is 30
[2026-06-12 19:43:12,043.043 INFO    ]  Your Bill Amount is 30
[2026-06-12 19:43:12,045.045 INFO    ] 83d7bc98008395bac4df4c2fc2d248eb
[2026-06-12 19:43:12,046.046 INFO    ] 2026-06-12 19:43:12
[2026-06-12 19:43:12,047.047 INFO    ] playing audio file
[2026-06-12 19:43:12,059.059 INFO    ] 2026-06-12 19:43:12
[2026-06-12 19:43:12,061.061 INFO    ] 2026-06-12 19:43:12
[2026-06-12 19:43:12,063.063 INFO    ] publish_status: order_id=TM09202301260612194155687
[2026-06-12 19:43:12,065.065 INFO    ] [publish_status] Adding message to stream: order:TM09202301260612194155687
[2026-06-12 19:43:12,133.133 INFO    ] [publish_status] Message added to stream with ID: 1781273592165-0
[2026-06-12 19:43:12,134.134 INFO    ] Published to order:TM09202301260612194155687: {'order_id': 'TM09202301260612194155687', 'server_response': '{"anomaly": 0, "rstatus": true, "total_amount": 30.0, "skus": [{"sku_total": 10.0, "image_url": "https://images.tinymart.in/product/4500646-2968.webp", "skuid": "4500646", "name": "Modern Kitchens Moong daal 30g per peice", "mrp": "10", "tray_id": "12", "door_id": "", "unit_price": "10", "qty": 1}, {"sku_total": 10.0, "image_url": "https://images.tinymart.in/product/4500647-5070.webp", "skuid": "4500647", "name": "Modern kitchens Roasted Channa 32g per peice", "mrp": "10", "tray_id": "18", "door_id": "", "unit_price": "10", "qty": 1}, {"sku_total": 10.0, "image_url": "https://images.tinymart.in/product/4500672-7226.webp", "skuid": "4500672", "name": "Modern kitchens Garlic Mixture 26gm per peice", "mrp": "10", "tray_id": "19", "door_id": "", "unit_price": "10", "qty": 1}], "logic": "WBL", "orderId": "TM09202301260612194155687", "res": "True"}', 'timestamp': '2026-06-12T14:13:12.062350Z', 'server_status': 'invoiceOrder'} (ID: 1781273592165-0)
[2026-06-12 19:43:12,564.564 INFO    ] {'order_id': 'TM09202301260612194155687', 'server_response': {'anomaly': 0, 'rstatus': True, 'total_amount': 30.0, 'skus': [{'sku_total': 10.0, 'image_url': 'https://images.tinymart.in/product/4500646-2968.webp', 'skuid': '4500646', 'name': 'Modern Kitchens Moong daal 30g per peice', 'mrp': '10', 'tray_id': '12', 'door_id': '', 'unit_price': '10', 'qty': 1}, {'sku_total': 10.0, 'image_url': 'https://images.tinymart.in/product/4500647-5070.webp', 'skuid': '4500647', 'name': 'Modern kitchens Roasted Channa 32g per peice', 'mrp': '10', 'tray_id': '18', 'door_id': '', 'unit_price': '10', 'qty': 1}, {'sku_total': 10.0, 'image_url': 'https://images.tinymart.in/product/4500672-7226.webp', 'skuid': '4500672', 'name': 'Modern kitchens Garlic Mixture 26gm per peice', 'mrp': '10', 'tray_id': '19', 'door_id': '', 'unit_price': '10', 'qty': 1}], 'logic': 'WBL', 'orderId': 'TM09202301260612194155687', 'res': 'True'}, 'server_status': 'invoiceOrder'}
[2026-06-12 19:43:12,567.567 INFO    ] 200
[2026-06-12 19:43:12,570.570 INFO    ] {"data":{"order_id":"TM09202301260612194155687","server_response":{"anomaly":0,"rstatus":true,"total_amount":30,"skus":[{"sku_total":10,"image_url":"https:\/\/images.tinymart.in\/product\/4500646-2968.webp","skuid":"4500646","name":"Modern Kitchens Moong daal 30g per peice","mrp":"10","tray_id":"12","door_id":"","unit_price":"10","qty":1},{"sku_total":10,"image_url":"https:\/\/images.tinymart.in\/product\/4500647-5070.webp","skuid":"4500647","name":"Modern kitchens Roasted Channa 32g per peice","mrp":"10","tray_id":"18","door_id":"","unit_price":"10","qty":1},{"sku_total":10,"image_url":"https:\/\/images.tinymart.in\/product\/4500672-7226.webp","skuid":"4500672","name":"Modern kitchens Garlic Mixture 26gm per peice","mrp":"10","tray_id":"19","door_id":"","unit_price":"10","qty":1}],"logic":"WBL","orderId":"TM09202301260612194155687","res":"true"},"server_status":"invoiceOrder"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-12 19:43:12,573.573 INFO    ] {'data': {'order_id': 'TM09202301260612194155687', 'server_response': {'anomaly': 0, 'rstatus': True, 'total_amount': 30, 'skus': [{'sku_total': 10, 'image_url': 'https://images.tinymart.in/product/4500646-2968.webp', 'skuid': '4500646', 'name': 'Modern Kitchens Moong daal 30g per peice', 'mrp': '10', 'tray_id': '12', 'door_id': '', 'unit_price': '10', 'qty': 1}, {'sku_total': 10, 'image_url': 'https://images.tinymart.in/product/4500647-5070.webp', 'skuid': '4500647', 'name': 'Modern kitchens Roasted Channa 32g per peice', 'mrp': '10', 'tray_id': '18', 'door_id': '', 'unit_price': '10', 'qty': 1}, {'sku_total': 10, 'image_url': 'https://images.tinymart.in/product/4500672-7226.webp', 'skuid': '4500672', 'name': 'Modern kitchens Garlic Mixture 26gm per peice', 'mrp': '10', 'tray_id': '19', 'door_id': '', 'unit_price': '10', 'qty': 1}], 'orderId': 'TM09202301260612194155687', 'logic': 'WBL', 'res': 'true'}, 'server_status': 'invoiceOrder'}, 'response': {'status': True, 'data': 'order updated successfully', 'msg': 'order updated successfully', 'code': 'ORDER_EXISTS'}}
[2026-06-12 19:43:12,577.577 INFO    ] {'data': {'order_id': 'TM09202301260612194155687', 'server_response': {'anomaly': 0, 'rstatus': True, 'total_amount': 30, 'skus': [{'sku_total': 10, 'image_url': 'https://images.tinymart.in/product/4500646-2968.webp', 'skuid': '4500646', 'name': 'Modern Kitchens Moong daal 30g per peice', 'mrp': '10', 'tray_id': '12', 'door_id': '', 'unit_price': '10', 'qty': 1}, {'sku_total': 10, 'image_url': 'https://images.tinymart.in/product/4500647-5070.webp', 'skuid': '4500647', 'name': 'Modern kitchens Roasted Channa 32g per peice', 'mrp': '10', 'tray_id': '18', 'door_id': '', 'unit_price': '10', 'qty': 1}, {'sku_total': 10, 'image_url': 'https://images.tinymart.in/product/4500672-7226.webp', 'skuid': '4500672', 'name': 'Modern kitchens Garlic Mixture 26gm per peice', 'mrp': '10', 'tray_id': '19', 'door_id': '', 'unit_price': '10', 'qty': 1}], 'orderId': 'TM09202301260612194155687', 'logic': 'WBL', 'res': 'true'}, 'server_status': 'invoiceOrder'}, 'response': {'status': True, 'data': 'order updated successfully', 'msg': 'order updated successfully', 'code': 'ORDER_EXISTS'}}
[2026-06-12 19:43:12,580.580 INFO    ] 2026-06-12 19:43:12
[2026-06-12 19:43:15,016.016 INFO    ] 200
[2026-06-12 19:43:15,018.018 INFO    ] {"order_items": [], "tray_sync": ["TM09202301260612194155687", "TM09202301260612194155687", "TM09202301260612194155687", "TM09202301260612194155687", "TM09202301260612194155687", "TM09202301260612194155687"], "orders": [], "order_items_synced": ["TM09202301260612194155687_0", "TM09202301260612194155687_1", "TM09202301260612194155687_2"], "orders_synced": [], "orders_data_synced": [], "status": true, "orders_data": [], "tray_synced": ["TM09202301260612194155687", "TM09202301260612194155687", "TM09202301260612194155687", "TM09202301260612194155687", "TM09202301260612194155687", "TM09202301260612194155687", "TM09202301260612194155687", "TM09202301260612194155687", "TM09202301260612194155687", "TM09202301260612194155687", "TM09202301260612194155687", "TM09202301260612194155687", "TM09202301260612194155687", "TM09202301260612194155687", "TM09202301260612194155687", "TM09202301260612194155687", "TM09202301260612194155687", "TM09202301260612194155687", "TM09202301260612194155687", "TM09202301260612194155687", "TM09202301260612194155687", "TM09202301260612194155687", "TM09202301260612194155687", "TM09202301260612194155687", "TM09202301260612194155687", "TM09202301260612194155687", "TM09202301260612194155687"]}
[2026-06-12 19:43:15,019.019 INFO    ] 2026-06-12 19:43:15
[2026-06-12 19:43:15,110.110 INFO    ] 200
[2026-06-12 19:43:15,112.112 INFO    ] True
[2026-06-12 19:43:15,113.113 INFO    ] cleanup_start_order_file_after_processing: order_id=TM09202301260612194155687
[2026-06-12 19:43:15,115.115 INFO    ] start order file deleted
[2026-06-12 19:43:15,116.116 INFO    ] Checking for system updates...
[2026-06-12 19:43:15,137.137 INFO    ] 200
[2026-06-12 19:43:15,138.138 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:43:15,171.171 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 19:43:15,172.172 INFO    ] No update needed
[2026-06-12 19:43:15,173.173 INFO    ] Checking for camera pi updates...
[2026-06-12 19:43:15,196.196 INFO    ] 200
[2026-06-12 19:43:15,197.197 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:43:15,220.220 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 19:43:15,266.266 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 19:43:15,267.267 INFO    ] No camera update needed
[2026-06-12 19:43:15,268.268 INFO    ] Script finished. Safe exiting...
[2026-06-12 19:43:15,270.270 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 19:43:15,273.273 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 19:43:15,275.275 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 19:43:17,317.317 INFO    ] ================================================
[2026-06-12 19:43:17,333.333 INFO    ] Launching Daemon at Fri Jun 12 19:43:17 IST 2026
[2026-06-12 19:43:17,344.344 INFO    ] ================================================
[2026-06-12 19:43:17,732.732 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 19:43:17
[2026-06-12 19:43:18,074.074 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 19:43:18,226.226 INFO    ] Initializing speech engine...
[2026-06-12 19:43:18,232.232 INFO    ] 2026-06-12 19:43:18
[2026-06-12 19:43:18,444.444 INFO    ] 2026-06-12 19:43:18
[2026-06-12 19:43:18,473.473 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 19:43:18,658.658 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 19:43:18,662.662 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 19:43:18,801.801 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 19:43:18,865.865 INFO    ] time= 12/06/2026 19:43:18
[2026-06-12 19:43:18,893.893 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 19:43:18,900.900 INFO    ] Checking for existing commands in stream...
[2026-06-12 19:43:18,966.966 INFO    ] No existing commands found in stream
[2026-06-12 19:43:23,981.981 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 19:43:23,984.984 INFO    ] Waiting 0.51 seconds before fallback handling...
[2026-06-12 19:43:24,900.900 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 19:43:24,902.902 INFO    ] Checking for system updates...
[2026-06-12 19:43:24,923.923 INFO    ] 200
[2026-06-12 19:43:24,924.924 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:43:24,956.956 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 19:43:24,957.957 INFO    ] No update needed
[2026-06-12 19:43:24,959.959 INFO    ] Checking for camera pi updates...
[2026-06-12 19:43:24,985.985 INFO    ] 200
[2026-06-12 19:43:24,987.987 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:43:25,012.012 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 19:43:25,060.060 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 19:43:25,061.061 INFO    ] No camera update needed
[2026-06-12 19:43:25,063.063 INFO    ] Script finished. Safe exiting...
[2026-06-12 19:43:25,064.064 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 19:43:25,067.067 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 19:43:25,070.070 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 19:43:27,109.109 INFO    ] ================================================
[2026-06-12 19:43:27,125.125 INFO    ] Launching Daemon at Fri Jun 12 19:43:27 IST 2026
[2026-06-12 19:43:27,136.136 INFO    ] ================================================
[2026-06-12 19:43:27,489.489 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 19:43:27
[2026-06-12 19:43:27,803.803 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 19:43:27,936.936 INFO    ] Initializing speech engine...
[2026-06-12 19:43:27,940.940 INFO    ] 2026-06-12 19:43:27
[2026-06-12 19:43:28,133.133 INFO    ] 2026-06-12 19:43:28
[2026-06-12 19:43:28,180.180 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 19:43:28,339.339 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 19:43:28,378.378 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 19:43:28,551.551 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 19:43:28,598.598 INFO    ] time= 12/06/2026 19:43:28
[2026-06-12 19:43:28,637.637 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 19:43:28,660.660 INFO    ] Checking for existing commands in stream...
[2026-06-12 19:43:28,764.764 INFO    ] No existing commands found in stream
[2026-06-12 19:43:33,773.773 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 19:43:33,776.776 INFO    ] Waiting 1.53 seconds before fallback handling...
[2026-06-12 19:43:35,698.698 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 19:43:35,700.700 INFO    ] Checking for system updates...
[2026-06-12 19:43:35,720.720 INFO    ] 200
[2026-06-12 19:43:35,722.722 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:43:35,752.752 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 19:43:35,754.754 INFO    ] No update needed
[2026-06-12 19:43:35,755.755 INFO    ] Checking for camera pi updates...
[2026-06-12 19:43:35,774.774 INFO    ] 200
[2026-06-12 19:43:35,776.776 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:43:35,799.799 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 19:43:35,842.842 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 19:43:35,843.843 INFO    ] No camera update needed
[2026-06-12 19:43:35,844.844 INFO    ] Script finished. Safe exiting...
[2026-06-12 19:43:35,846.846 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 19:43:35,849.849 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 19:43:35,851.851 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 19:43:37,890.890 INFO    ] ================================================
[2026-06-12 19:43:37,905.905 INFO    ] Launching Daemon at Fri Jun 12 19:43:37 IST 2026
[2026-06-12 19:43:37,916.916 INFO    ] ================================================
[2026-06-12 19:43:38,286.286 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 19:43:38
[2026-06-12 19:43:38,605.605 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 19:43:38,738.738 INFO    ] Initializing speech engine...
[2026-06-12 19:43:38,743.743 INFO    ] 2026-06-12 19:43:38
[2026-06-12 19:43:38,953.953 INFO    ] 2026-06-12 19:43:38
[2026-06-12 19:43:38,982.982 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 19:43:39,206.206 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 19:43:39,210.210 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 19:43:39,359.359 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 19:43:39,423.423 INFO    ] time= 12/06/2026 19:43:39
[2026-06-12 19:43:39,453.453 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 19:43:39,465.465 INFO    ] Checking for existing commands in stream...
[2026-06-12 19:43:39,536.536 INFO    ] No existing commands found in stream
[2026-06-12 19:43:44,547.547 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 19:43:44,550.550 INFO    ] Waiting 2.28 seconds before fallback handling...
[2026-06-12 19:43:47,229.229 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 19:43:47,231.231 INFO    ] Checking for system updates...
[2026-06-12 19:43:47,252.252 INFO    ] 200
[2026-06-12 19:43:47,254.254 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:43:47,286.286 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 19:43:47,288.288 INFO    ] No update needed
[2026-06-12 19:43:47,289.289 INFO    ] Checking for camera pi updates...
[2026-06-12 19:43:47,309.309 INFO    ] 200
[2026-06-12 19:43:47,311.311 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:43:47,335.335 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 19:43:47,375.375 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 19:43:47,376.376 INFO    ] No camera update needed
[2026-06-12 19:43:47,378.378 INFO    ] Script finished. Safe exiting...
[2026-06-12 19:43:47,379.379 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 19:43:47,382.382 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 19:43:47,385.385 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 19:43:49,423.423 INFO    ] ================================================
[2026-06-12 19:43:49,438.438 INFO    ] Launching Daemon at Fri Jun 12 19:43:49 IST 2026
[2026-06-12 19:43:49,449.449 INFO    ] ================================================
[2026-06-12 19:43:49,806.806 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 19:43:49
[2026-06-12 19:43:50,117.117 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 19:43:50,257.257 INFO    ] Initializing speech engine...
[2026-06-12 19:43:50,263.263 INFO    ] 2026-06-12 19:43:50
[2026-06-12 19:43:50,464.464 INFO    ] 2026-06-12 19:43:50
[2026-06-12 19:43:50,493.493 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 19:43:50,692.692 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 19:43:50,707.707 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 19:43:50,843.843 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 19:43:50,910.910 INFO    ] time= 12/06/2026 19:43:50
[2026-06-12 19:43:50,940.940 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 19:43:50,952.952 INFO    ] Checking for existing commands in stream...
[2026-06-12 19:43:51,025.025 INFO    ] No existing commands found in stream
[2026-06-12 19:43:56,034.034 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 19:43:56,037.037 INFO    ] Waiting 1.41 seconds before fallback handling...
[2026-06-12 19:43:57,861.861 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 19:43:57,862.862 INFO    ] Checking for system updates...
[2026-06-12 19:43:57,883.883 INFO    ] 200
[2026-06-12 19:43:57,884.884 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:43:57,914.914 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 19:43:57,915.915 INFO    ] No update needed
[2026-06-12 19:43:57,917.917 INFO    ] Checking for camera pi updates...
[2026-06-12 19:43:57,936.936 INFO    ] 200
[2026-06-12 19:43:57,937.937 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:43:57,962.962 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 19:43:58,020.020 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 19:43:58,022.022 INFO    ] No camera update needed
[2026-06-12 19:43:58,023.023 INFO    ] Script finished. Safe exiting...
[2026-06-12 19:43:58,024.024 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 19:43:58,027.027 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 19:43:58,030.030 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 19:44:00,067.067 INFO    ] ================================================
[2026-06-12 19:44:00,082.082 INFO    ] Launching Daemon at Fri Jun 12 19:44:00 IST 2026
[2026-06-12 19:44:00,093.093 INFO    ] ================================================
[2026-06-12 19:44:00,440.440 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 19:44:00
[2026-06-12 19:44:00,758.758 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 19:44:01,084.084 INFO    ] Initializing speech engine...
[2026-06-12 19:44:01,114.114 INFO    ] 2026-06-12 19:44:01
[2026-06-12 19:44:01,316.316 INFO    ] 2026-06-12 19:44:01
[2026-06-12 19:44:01,334.334 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 19:44:01,540.540 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 19:44:01,580.580 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 19:44:01,734.734 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 19:44:01,736.736 INFO    ] time= 12/06/2026 19:44:01
[2026-06-12 19:44:01,738.738 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 19:44:01,740.740 INFO    ] Checking for existing commands in stream...
[2026-06-12 19:44:01,810.810 INFO    ] No existing commands found in stream
[2026-06-12 19:44:06,819.819 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 19:44:06,822.822 INFO    ] Waiting 2.60 seconds before fallback handling...
[2026-06-12 19:44:09,801.801 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 19:44:09,803.803 INFO    ] Checking for system updates...
[2026-06-12 19:44:09,823.823 INFO    ] 200
[2026-06-12 19:44:09,825.825 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:44:09,855.855 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 19:44:09,856.856 INFO    ] No update needed
[2026-06-12 19:44:09,858.858 INFO    ] Checking for camera pi updates...
[2026-06-12 19:44:09,880.880 INFO    ] 200
[2026-06-12 19:44:09,882.882 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:44:09,906.906 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 19:44:10,050.050 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 19:44:10,051.051 INFO    ] No camera update needed
[2026-06-12 19:44:10,053.053 INFO    ] Script finished. Safe exiting...
[2026-06-12 19:44:10,054.054 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 19:44:10,057.057 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 19:44:10,060.060 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 19:44:12,100.100 INFO    ] ================================================
[2026-06-12 19:44:12,115.115 INFO    ] Launching Daemon at Fri Jun 12 19:44:12 IST 2026
[2026-06-12 19:44:12,126.126 INFO    ] ================================================
[2026-06-12 19:44:12,481.481 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 19:44:12
[2026-06-12 19:44:12,798.798 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 19:44:12,945.945 INFO    ] Initializing speech engine...
[2026-06-12 19:44:12,951.951 INFO    ] 2026-06-12 19:44:12
[2026-06-12 19:44:13,167.167 INFO    ] 2026-06-12 19:44:13
[2026-06-12 19:44:13,197.197 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 19:44:13,376.376 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 19:44:13,400.400 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 19:44:13,544.544 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 19:44:13,601.601 INFO    ] time= 12/06/2026 19:44:13
[2026-06-12 19:44:13,642.642 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 19:44:13,648.648 INFO    ] Checking for existing commands in stream...
[2026-06-12 19:44:13,725.725 INFO    ] No existing commands found in stream
[2026-06-12 19:44:18,734.734 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 19:44:18,737.737 INFO    ] Waiting 3.74 seconds before fallback handling...
[2026-06-12 19:44:22,848.848 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 19:44:22,850.850 INFO    ] Checking for system updates...
[2026-06-12 19:44:22,871.871 INFO    ] 200
[2026-06-12 19:44:22,873.873 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:44:22,903.903 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 19:44:22,904.904 INFO    ] No update needed
[2026-06-12 19:44:22,905.905 INFO    ] Checking for camera pi updates...
[2026-06-12 19:44:22,924.924 INFO    ] 200
[2026-06-12 19:44:22,926.926 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:44:22,948.948 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 19:44:23,006.006 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 19:44:23,007.007 INFO    ] No camera update needed
[2026-06-12 19:44:23,008.008 INFO    ] Script finished. Safe exiting...
[2026-06-12 19:44:23,010.010 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 19:44:23,013.013 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 19:44:23,016.016 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 19:44:25,053.053 INFO    ] ================================================
[2026-06-12 19:44:25,068.068 INFO    ] Launching Daemon at Fri Jun 12 19:44:25 IST 2026
[2026-06-12 19:44:25,079.079 INFO    ] ================================================
[2026-06-12 19:44:25,401.401 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 19:44:25
[2026-06-12 19:44:25,716.716 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 19:44:25,849.849 INFO    ] Initializing speech engine...
[2026-06-12 19:44:25,853.853 INFO    ] 2026-06-12 19:44:25
[2026-06-12 19:44:26,072.072 INFO    ] 2026-06-12 19:44:26
[2026-06-12 19:44:26,100.100 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 19:44:26,285.285 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 19:44:26,288.288 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 19:44:26,418.418 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 19:44:26,473.473 INFO    ] time= 12/06/2026 19:44:26
[2026-06-12 19:44:26,516.516 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 19:44:26,518.518 INFO    ] Checking for existing commands in stream...
[2026-06-12 19:44:26,589.589 INFO    ] No existing commands found in stream
[2026-06-12 19:44:31,600.600 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 19:44:31,602.602 INFO    ] Waiting 0.25 seconds before fallback handling...
[2026-06-12 19:44:32,162.162 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 19:44:32,164.164 INFO    ] Checking for system updates...
[2026-06-12 19:44:32,187.187 INFO    ] 200
[2026-06-12 19:44:32,189.189 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:44:32,226.226 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 19:44:32,228.228 INFO    ] No update needed
[2026-06-12 19:44:32,229.229 INFO    ] Checking for camera pi updates...
[2026-06-12 19:44:32,256.256 INFO    ] 200
[2026-06-12 19:44:32,258.258 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:44:32,289.289 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 19:44:32,318.318 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 19:44:32,320.320 INFO    ] No camera update needed
[2026-06-12 19:44:32,322.322 INFO    ] Script finished. Safe exiting...
[2026-06-12 19:44:32,324.324 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 19:44:32,328.328 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 19:44:32,331.331 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 19:44:34,370.370 INFO    ] ================================================
[2026-06-12 19:44:34,385.385 INFO    ] Launching Daemon at Fri Jun 12 19:44:34 IST 2026
[2026-06-12 19:44:34,396.396 INFO    ] ================================================
[2026-06-12 19:44:34,741.741 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 19:44:34
[2026-06-12 19:44:35,052.052 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 19:44:35,183.183 INFO    ] Initializing speech engine...
[2026-06-12 19:44:35,186.186 INFO    ] 2026-06-12 19:44:35
[2026-06-12 19:44:35,404.404 INFO    ] 2026-06-12 19:44:35
[2026-06-12 19:44:35,433.433 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 19:44:35,618.618 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 19:44:35,628.628 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 19:44:35,779.779 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 19:44:35,828.828 INFO    ] time= 12/06/2026 19:44:35
[2026-06-12 19:44:35,850.850 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 19:44:35,856.856 INFO    ] Checking for existing commands in stream...
[2026-06-12 19:44:35,921.921 INFO    ] No existing commands found in stream
[2026-06-12 19:44:40,932.932 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 19:44:40,934.934 INFO    ] Waiting 3.99 seconds before fallback handling...
[2026-06-12 19:44:45,333.333 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 19:44:45,335.335 INFO    ] Checking for system updates...
[2026-06-12 19:44:45,355.355 INFO    ] 200
[2026-06-12 19:44:45,357.357 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:44:45,387.387 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 19:44:45,388.388 INFO    ] No update needed
[2026-06-12 19:44:45,390.390 INFO    ] Checking for camera pi updates...
[2026-06-12 19:44:45,409.409 INFO    ] 200
[2026-06-12 19:44:45,411.411 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:44:45,436.436 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 19:44:45,508.508 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 19:44:45,509.509 INFO    ] No camera update needed
[2026-06-12 19:44:45,511.511 INFO    ] Script finished. Safe exiting...
[2026-06-12 19:44:45,512.512 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 19:44:45,515.515 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 19:44:45,518.518 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 19:44:47,556.556 INFO    ] ================================================
[2026-06-12 19:44:47,571.571 INFO    ] Launching Daemon at Fri Jun 12 19:44:47 IST 2026
[2026-06-12 19:44:47,581.581 INFO    ] ================================================
[2026-06-12 19:44:47,976.976 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 19:44:47
[2026-06-12 19:44:48,315.315 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 19:44:48,471.471 INFO    ] Initializing speech engine...
[2026-06-12 19:44:48,476.476 INFO    ] 2026-06-12 19:44:48
[2026-06-12 19:44:48,685.685 INFO    ] 2026-06-12 19:44:48
[2026-06-12 19:44:48,714.714 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 19:44:48,900.900 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 19:44:48,910.910 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 19:44:49,051.051 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 19:44:49,109.109 INFO    ] time= 12/06/2026 19:44:49
[2026-06-12 19:44:49,133.133 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 19:44:49,140.140 INFO    ] Checking for existing commands in stream...
[2026-06-12 19:44:49,208.208 INFO    ] No existing commands found in stream
[2026-06-12 19:44:54,223.223 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 19:44:54,226.226 INFO    ] Waiting 2.01 seconds before fallback handling...
[2026-06-12 19:44:56,651.651 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 19:44:56,653.653 INFO    ] Checking for system updates...
[2026-06-12 19:44:56,675.675 INFO    ] 200
[2026-06-12 19:44:56,676.676 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:44:56,711.711 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 19:44:56,713.713 INFO    ] No update needed
[2026-06-12 19:44:56,714.714 INFO    ] Checking for camera pi updates...
[2026-06-12 19:44:56,736.736 INFO    ] 200
[2026-06-12 19:44:56,738.738 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:44:56,761.761 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 19:44:56,806.806 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 19:44:56,808.808 INFO    ] No camera update needed
[2026-06-12 19:44:56,809.809 INFO    ] Script finished. Safe exiting...
[2026-06-12 19:44:56,811.811 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 19:44:56,814.814 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 19:44:56,817.817 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 19:44:58,855.855 INFO    ] ================================================
[2026-06-12 19:44:58,870.870 INFO    ] Launching Daemon at Fri Jun 12 19:44:58 IST 2026
[2026-06-12 19:44:58,881.881 INFO    ] ================================================
[2026-06-12 19:44:59,236.236 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 19:44:59
[2026-06-12 19:44:59,553.553 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 19:44:59,684.684 INFO    ] Initializing speech engine...
[2026-06-12 19:44:59,687.687 INFO    ] 2026-06-12 19:44:59
[2026-06-12 19:44:59,905.905 INFO    ] 2026-06-12 19:44:59
[2026-06-12 19:44:59,935.935 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 19:45:00,120.120 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 19:45:00,123.123 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 19:45:00,276.276 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 19:45:00,331.331 INFO    ] time= 12/06/2026 19:45:00
[2026-06-12 19:45:00,352.352 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 19:45:00,359.359 INFO    ] Checking for existing commands in stream...
[2026-06-12 19:45:00,426.426 INFO    ] No existing commands found in stream
[2026-06-12 19:45:05,441.441 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 19:45:05,443.443 INFO    ] Waiting 1.94 seconds before fallback handling...
[2026-06-12 19:45:07,772.772 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 19:45:07,773.773 INFO    ] Checking for system updates...
[2026-06-12 19:45:07,794.794 INFO    ] 200
[2026-06-12 19:45:07,795.795 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:45:07,826.826 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 19:45:07,827.827 INFO    ] No update needed
[2026-06-12 19:45:07,829.829 INFO    ] Checking for camera pi updates...
[2026-06-12 19:45:07,848.848 INFO    ] 200
[2026-06-12 19:45:07,849.849 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:45:07,874.874 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 19:45:07,917.917 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 19:45:07,918.918 INFO    ] No camera update needed
[2026-06-12 19:45:07,920.920 INFO    ] Script finished. Safe exiting...
[2026-06-12 19:45:07,921.921 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 19:45:07,924.924 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 19:45:07,927.927 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 19:45:09,968.968 INFO    ] ================================================
[2026-06-12 19:45:09,984.984 INFO    ] Launching Daemon at Fri Jun 12 19:45:09 IST 2026
[2026-06-12 19:45:10,995.995 INFO    ] ================================================
[2026-06-12 19:45:10,349.349 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 19:45:10
[2026-06-12 19:45:10,665.665 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 19:45:10,810.810 INFO    ] Initializing speech engine...
[2026-06-12 19:45:10,815.815 INFO    ] 2026-06-12 19:45:10
[2026-06-12 19:45:11,020.020 INFO    ] 2026-06-12 19:45:11
[2026-06-12 19:45:11,050.050 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 19:45:11,247.247 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 19:45:11,253.253 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 19:45:11,401.401 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 19:45:11,460.460 INFO    ] time= 12/06/2026 19:45:11
[2026-06-12 19:45:11,498.498 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 19:45:11,506.506 INFO    ] Checking for existing commands in stream...
[2026-06-12 19:45:11,576.576 INFO    ] No existing commands found in stream
[2026-06-12 19:45:16,586.586 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 19:45:16,589.589 INFO    ] Waiting 3.73 seconds before fallback handling...
[2026-06-12 19:45:20,689.689 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 19:45:20,690.690 INFO    ] Checking for system updates...
[2026-06-12 19:45:20,712.712 INFO    ] 200
[2026-06-12 19:45:20,714.714 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:45:20,746.746 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 19:45:20,748.748 INFO    ] No update needed
[2026-06-12 19:45:20,749.749 INFO    ] Checking for camera pi updates...
[2026-06-12 19:45:20,768.768 INFO    ] 200
[2026-06-12 19:45:20,770.770 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:45:20,794.794 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 19:45:20,858.858 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 19:45:20,860.860 INFO    ] No camera update needed
[2026-06-12 19:45:20,861.861 INFO    ] Script finished. Safe exiting...
[2026-06-12 19:45:20,862.862 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 19:45:20,865.865 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 19:45:20,868.868 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 19:45:22,908.908 INFO    ] ================================================
[2026-06-12 19:45:22,923.923 INFO    ] Launching Daemon at Fri Jun 12 19:45:22 IST 2026
[2026-06-12 19:45:22,935.935 INFO    ] ================================================
[2026-06-12 19:45:23,289.289 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 19:45:23
[2026-06-12 19:45:23,626.626 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 19:45:23,776.776 INFO    ] Initializing speech engine...
[2026-06-12 19:45:23,782.782 INFO    ] 2026-06-12 19:45:23
[2026-06-12 19:45:23,988.988 INFO    ] 2026-06-12 19:45:23
[2026-06-12 19:45:24,018.018 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 19:45:24,201.201 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 19:45:24,210.210 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 19:45:24,375.375 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 19:45:24,420.420 INFO    ] time= 12/06/2026 19:45:24
[2026-06-12 19:45:24,430.430 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 19:45:24,437.437 INFO    ] Checking for existing commands in stream...
[2026-06-12 19:45:24,503.503 INFO    ] No existing commands found in stream
[2026-06-12 19:45:29,518.518 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 19:45:29,521.521 INFO    ] Waiting 0.50 seconds before fallback handling...
[2026-06-12 19:45:30,441.441 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 19:45:30,443.443 INFO    ] Checking for system updates...
[2026-06-12 19:45:30,464.464 INFO    ] 200
[2026-06-12 19:45:30,465.465 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:45:30,497.497 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 19:45:30,499.499 INFO    ] No update needed
[2026-06-12 19:45:30,500.500 INFO    ] Checking for camera pi updates...
[2026-06-12 19:45:30,523.523 INFO    ] 200
[2026-06-12 19:45:30,524.524 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:45:30,548.548 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 19:45:30,603.603 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 19:45:30,605.605 INFO    ] No camera update needed
[2026-06-12 19:45:30,606.606 INFO    ] Script finished. Safe exiting...
[2026-06-12 19:45:30,607.607 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 19:45:30,610.610 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 19:45:30,613.613 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 19:45:32,644.644 INFO    ] ================================================
[2026-06-12 19:45:32,654.654 INFO    ] Launching Daemon at Fri Jun 12 19:45:32 IST 2026
[2026-06-12 19:45:32,662.662 INFO    ] ================================================
[2026-06-12 19:45:33,001.001 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 19:45:32
[2026-06-12 19:45:33,327.327 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 19:45:33,470.470 INFO    ] Initializing speech engine...
[2026-06-12 19:45:33,476.476 INFO    ] 2026-06-12 19:45:33
[2026-06-12 19:45:33,679.679 INFO    ] 2026-06-12 19:45:33
[2026-06-12 19:45:33,707.707 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 19:45:33,890.890 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 19:45:33,899.899 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 19:45:34,044.044 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 19:45:34,097.097 INFO    ] time= 12/06/2026 19:45:34
[2026-06-12 19:45:34,119.119 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 19:45:34,125.125 INFO    ] Checking for existing commands in stream...
[2026-06-12 19:45:34,191.191 INFO    ] No existing commands found in stream
[2026-06-12 19:45:39,200.200 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 19:45:39,203.203 INFO    ] Waiting 2.75 seconds before fallback handling...
[2026-06-12 19:45:42,343.343 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 19:45:42,344.344 INFO    ] Checking for system updates...
[2026-06-12 19:45:42,365.365 INFO    ] 200
[2026-06-12 19:45:42,366.366 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:45:42,400.400 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 19:45:42,402.402 INFO    ] No update needed
[2026-06-12 19:45:42,403.403 INFO    ] Checking for camera pi updates...
[2026-06-12 19:45:42,424.424 INFO    ] 200
[2026-06-12 19:45:42,425.425 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:45:42,449.449 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 19:45:42,500.500 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 19:45:42,502.502 INFO    ] No camera update needed
[2026-06-12 19:45:42,503.503 INFO    ] Script finished. Safe exiting...
[2026-06-12 19:45:42,504.504 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 19:45:42,507.507 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 19:45:42,510.510 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 19:45:44,550.550 INFO    ] ================================================
[2026-06-12 19:45:44,565.565 INFO    ] Launching Daemon at Fri Jun 12 19:45:44 IST 2026
[2026-06-12 19:45:44,576.576 INFO    ] ================================================
[2026-06-12 19:45:44,921.921 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 19:45:44
[2026-06-12 19:45:45,248.248 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 19:45:45,390.390 INFO    ] Initializing speech engine...
[2026-06-12 19:45:45,394.394 INFO    ] 2026-06-12 19:45:45
[2026-06-12 19:45:45,606.606 INFO    ] 2026-06-12 19:45:45
[2026-06-12 19:45:45,640.640 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 19:45:45,835.835 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 19:45:45,861.861 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 19:45:46,011.011 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 19:45:46,072.072 INFO    ] time= 12/06/2026 19:45:46
[2026-06-12 19:45:46,111.111 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 19:45:46,113.113 INFO    ] Checking for existing commands in stream...
[2026-06-12 19:45:46,185.185 INFO    ] No existing commands found in stream
[2026-06-12 19:45:51,194.194 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 19:45:51,197.197 INFO    ] Waiting 1.78 seconds before fallback handling...
[2026-06-12 19:45:53,365.365 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 19:45:53,366.366 INFO    ] Checking for system updates...
[2026-06-12 19:45:53,388.388 INFO    ] 200
[2026-06-12 19:45:53,389.389 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:45:53,419.419 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 19:45:53,421.421 INFO    ] No update needed
[2026-06-12 19:45:53,422.422 INFO    ] Checking for camera pi updates...
[2026-06-12 19:45:53,442.442 INFO    ] 200
[2026-06-12 19:45:53,443.443 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:45:53,466.466 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 19:45:53,532.532 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 19:45:53,533.533 INFO    ] No camera update needed
[2026-06-12 19:45:53,535.535 INFO    ] Script finished. Safe exiting...
[2026-06-12 19:45:53,536.536 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 19:45:53,539.539 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 19:45:53,542.542 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 19:45:55,583.583 INFO    ] ================================================
[2026-06-12 19:45:55,599.599 INFO    ] Launching Daemon at Fri Jun 12 19:45:55 IST 2026
[2026-06-12 19:45:55,610.610 INFO    ] ================================================
[2026-06-12 19:45:55,971.971 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 19:45:55
[2026-06-12 19:45:56,283.283 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 19:45:56,412.412 INFO    ] Initializing speech engine...
[2026-06-12 19:45:56,415.415 INFO    ] 2026-06-12 19:45:56
[2026-06-12 19:45:56,610.610 INFO    ] 2026-06-12 19:45:56
[2026-06-12 19:45:56,654.654 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 19:45:56,814.814 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 19:45:56,872.872 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 19:45:57,028.028 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 19:45:57,101.101 INFO    ] time= 12/06/2026 19:45:57
[2026-06-12 19:45:57,130.130 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 19:45:57,132.132 INFO    ] Checking for existing commands in stream...
[2026-06-12 19:45:57,235.235 INFO    ] No existing commands found in stream
[2026-06-12 19:46:02,248.248 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 19:46:02,250.250 INFO    ] Waiting 3.79 seconds before fallback handling...
[2026-06-12 19:46:06,415.415 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 19:46:06,416.416 INFO    ] Checking for system updates...
[2026-06-12 19:46:06,438.438 INFO    ] 200
[2026-06-12 19:46:06,439.439 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:46:06,472.472 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 19:46:06,473.473 INFO    ] No update needed
[2026-06-12 19:46:06,474.474 INFO    ] Checking for camera pi updates...
[2026-06-12 19:46:06,493.493 INFO    ] 200
[2026-06-12 19:46:06,495.495 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:46:06,517.517 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 19:46:06,557.557 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 19:46:06,558.558 INFO    ] No camera update needed
[2026-06-12 19:46:06,560.560 INFO    ] Script finished. Safe exiting...
[2026-06-12 19:46:06,561.561 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 19:46:06,564.564 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 19:46:06,566.566 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 19:46:08,604.604 INFO    ] ================================================
[2026-06-12 19:46:08,620.620 INFO    ] Launching Daemon at Fri Jun 12 19:46:08 IST 2026
[2026-06-12 19:46:08,631.631 INFO    ] ================================================
[2026-06-12 19:46:08,977.977 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 19:46:08
[2026-06-12 19:46:09,291.291 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 19:46:09,428.428 INFO    ] Initializing speech engine...
[2026-06-12 19:46:09,439.439 INFO    ] 2026-06-12 19:46:09
[2026-06-12 19:46:09,642.642 INFO    ] 2026-06-12 19:46:09
[2026-06-12 19:46:09,670.670 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 19:46:09,853.853 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 19:46:09,862.862 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 19:46:09,991.991 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 19:46:10,055.055 INFO    ] time= 12/06/2026 19:46:09
[2026-06-12 19:46:10,083.083 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 19:46:10,088.088 INFO    ] Checking for existing commands in stream...
[2026-06-12 19:46:10,179.179 INFO    ] No existing commands found in stream
[2026-06-12 19:46:15,188.188 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 19:46:15,191.191 INFO    ] Waiting 3.44 seconds before fallback handling...
[2026-06-12 19:46:19,004.004 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 19:46:19,006.006 INFO    ] Checking for system updates...
[2026-06-12 19:46:19,027.027 INFO    ] 200
[2026-06-12 19:46:19,028.028 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:46:19,058.058 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 19:46:19,059.059 INFO    ] No update needed
[2026-06-12 19:46:19,061.061 INFO    ] Checking for camera pi updates...
[2026-06-12 19:46:19,081.081 INFO    ] 200
[2026-06-12 19:46:19,082.082 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:46:19,105.105 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 19:46:19,240.240 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 19:46:19,242.242 INFO    ] No camera update needed
[2026-06-12 19:46:19,243.243 INFO    ] Script finished. Safe exiting...
[2026-06-12 19:46:19,244.244 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 19:46:19,247.247 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 19:46:19,250.250 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 19:46:21,290.290 INFO    ] ================================================
[2026-06-12 19:46:21,306.306 INFO    ] Launching Daemon at Fri Jun 12 19:46:21 IST 2026
[2026-06-12 19:46:21,317.317 INFO    ] ================================================
[2026-06-12 19:46:21,672.672 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 19:46:21
[2026-06-12 19:46:21,984.984 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 19:46:22,117.117 INFO    ] Initializing speech engine...
[2026-06-12 19:46:22,121.121 INFO    ] 2026-06-12 19:46:22
[2026-06-12 19:46:22,348.348 INFO    ] 2026-06-12 19:46:22
[2026-06-12 19:46:22,379.379 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 19:46:22,577.577 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 19:46:22,581.581 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 19:46:22,720.720 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 19:46:22,772.772 INFO    ] time= 12/06/2026 19:46:22
[2026-06-12 19:46:22,806.806 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 19:46:22,828.828 INFO    ] Checking for existing commands in stream...
[2026-06-12 19:46:22,903.903 INFO    ] No existing commands found in stream
[2026-06-12 19:46:27,914.914 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 19:46:27,916.916 INFO    ] Waiting 0.67 seconds before fallback handling...
[2026-06-12 19:46:30,768.768 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 19:46:30,771.771 INFO    ] Checking for system updates...
[2026-06-12 19:46:30,808.808 INFO    ] 200
[2026-06-12 19:46:30,811.811 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:46:30,865.865 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 19:46:30,868.868 INFO    ] No update needed
[2026-06-12 19:46:30,871.871 INFO    ] Checking for camera pi updates...
[2026-06-12 19:46:30,906.906 INFO    ] 200
[2026-06-12 19:46:30,909.909 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:46:30,955.955 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 19:46:31,007.007 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 19:46:31,008.008 INFO    ] No camera update needed
[2026-06-12 19:46:31,010.010 INFO    ] Script finished. Safe exiting...
[2026-06-12 19:46:31,011.011 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 19:46:31,015.015 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 19:46:31,018.018 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 19:46:33,050.050 INFO    ] ================================================
[2026-06-12 19:46:33,065.065 INFO    ] Launching Daemon at Fri Jun 12 19:46:33 IST 2026
[2026-06-12 19:46:33,077.077 INFO    ] ================================================
[2026-06-12 19:46:33,430.430 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 19:46:33
[2026-06-12 19:46:33,741.741 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 19:46:33,871.871 INFO    ] Initializing speech engine...
[2026-06-12 19:46:33,881.881 INFO    ] 2026-06-12 19:46:33
[2026-06-12 19:46:34,095.095 INFO    ] 2026-06-12 19:46:34
[2026-06-12 19:46:34,123.123 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 19:46:34,311.311 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 19:46:34,319.319 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 19:46:34,451.451 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 19:46:34,519.519 INFO    ] time= 12/06/2026 19:46:34
[2026-06-12 19:46:34,544.544 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 19:46:34,550.550 INFO    ] Checking for existing commands in stream...
[2026-06-12 19:46:34,642.642 INFO    ] No existing commands found in stream
[2026-06-12 19:46:39,651.651 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 19:46:39,654.654 INFO    ] Waiting 0.26 seconds before fallback handling...
[2026-06-12 19:46:40,323.323 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 19:46:40,324.324 INFO    ] Checking for system updates...
[2026-06-12 19:46:40,346.346 INFO    ] 200
[2026-06-12 19:46:40,347.347 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:46:40,379.379 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 19:46:40,381.381 INFO    ] No update needed
[2026-06-12 19:46:40,382.382 INFO    ] Checking for camera pi updates...
[2026-06-12 19:46:40,402.402 INFO    ] 200
[2026-06-12 19:46:40,403.403 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:46:40,426.426 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 19:46:40,488.488 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 19:46:40,490.490 INFO    ] No camera update needed
[2026-06-12 19:46:40,491.491 INFO    ] Script finished. Safe exiting...
[2026-06-12 19:46:40,493.493 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 19:46:40,496.496 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 19:46:40,499.499 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 19:46:42,541.541 INFO    ] ================================================
[2026-06-12 19:46:42,557.557 INFO    ] Launching Daemon at Fri Jun 12 19:46:42 IST 2026
[2026-06-12 19:46:42,568.568 INFO    ] ================================================
[2026-06-12 19:46:42,906.906 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 19:46:42
[2026-06-12 19:46:43,222.222 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 19:46:43,354.354 INFO    ] Initializing speech engine...
[2026-06-12 19:46:43,362.362 INFO    ] 2026-06-12 19:46:43
[2026-06-12 19:46:43,574.574 INFO    ] 2026-06-12 19:46:43
[2026-06-12 19:46:43,603.603 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 19:46:43,787.787 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 19:46:43,794.794 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 19:46:43,936.936 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 19:46:43,992.992 INFO    ] time= 12/06/2026 19:46:43
[2026-06-12 19:46:44,016.016 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 19:46:44,022.022 INFO    ] Checking for existing commands in stream...
[2026-06-12 19:46:44,089.089 INFO    ] No existing commands found in stream
[2026-06-12 19:46:49,103.103 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 19:46:49,106.106 INFO    ] Waiting 2.37 seconds before fallback handling...
[2026-06-12 19:46:51,837.837 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 19:46:51,839.839 INFO    ] Checking for system updates...
[2026-06-12 19:46:51,860.860 INFO    ] 200
[2026-06-12 19:46:51,862.862 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:46:51,894.894 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 19:46:51,895.895 INFO    ] No update needed
[2026-06-12 19:46:51,896.896 INFO    ] Checking for camera pi updates...
[2026-06-12 19:46:51,915.915 INFO    ] 200
[2026-06-12 19:46:51,917.917 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:46:51,941.941 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 19:46:51,994.994 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 19:46:51,995.995 INFO    ] No camera update needed
[2026-06-12 19:46:51,997.997 INFO    ] Script finished. Safe exiting...
[2026-06-12 19:46:51,998.998 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 19:46:52,001.001 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 19:46:52,004.004 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 19:46:54,043.043 INFO    ] ================================================
[2026-06-12 19:46:54,059.059 INFO    ] Launching Daemon at Fri Jun 12 19:46:54 IST 2026
[2026-06-12 19:46:54,070.070 INFO    ] ================================================
[2026-06-12 19:46:54,428.428 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 19:46:54
[2026-06-12 19:46:54,746.746 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 19:46:54,879.879 INFO    ] Initializing speech engine...
[2026-06-12 19:46:54,884.884 INFO    ] 2026-06-12 19:46:54
[2026-06-12 19:46:55,115.115 INFO    ] 2026-06-12 19:46:55
[2026-06-12 19:46:55,145.145 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 19:46:55,340.340 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 19:46:55,344.344 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 19:46:55,482.482 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 19:46:55,538.538 INFO    ] time= 12/06/2026 19:46:55
[2026-06-12 19:46:55,586.586 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 19:46:55,588.588 INFO    ] Checking for existing commands in stream...
[2026-06-12 19:46:55,664.664 INFO    ] No existing commands found in stream
[2026-06-12 19:47:00,672.672 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 19:47:00,675.675 INFO    ] Waiting 2.76 seconds before fallback handling...
[2026-06-12 19:47:03,837.837 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 19:47:03,838.838 INFO    ] Checking for system updates...
[2026-06-12 19:47:03,858.858 INFO    ] 200
[2026-06-12 19:47:03,860.860 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:47:03,891.891 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 19:47:03,893.893 INFO    ] No update needed
[2026-06-12 19:47:03,894.894 INFO    ] Checking for camera pi updates...
[2026-06-12 19:47:03,914.914 INFO    ] 200
[2026-06-12 19:47:03,915.915 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:47:03,938.938 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 19:47:03,988.988 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 19:47:03,989.989 INFO    ] No camera update needed
[2026-06-12 19:47:03,991.991 INFO    ] Script finished. Safe exiting...
[2026-06-12 19:47:03,992.992 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 19:47:03,995.995 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 19:47:03,998.998 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 19:47:06,035.035 INFO    ] ================================================
[2026-06-12 19:47:06,051.051 INFO    ] Launching Daemon at Fri Jun 12 19:47:06 IST 2026
[2026-06-12 19:47:06,062.062 INFO    ] ================================================
[2026-06-12 19:47:06,437.437 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 19:47:06
[2026-06-12 19:47:06,760.760 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 19:47:06,893.893 INFO    ] Initializing speech engine...
[2026-06-12 19:47:06,896.896 INFO    ] 2026-06-12 19:47:06
[2026-06-12 19:47:07,113.113 INFO    ] 2026-06-12 19:47:07
[2026-06-12 19:47:07,141.141 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 19:47:07,324.324 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 19:47:07,333.333 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 19:47:07,458.458 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 19:47:07,520.520 INFO    ] time= 12/06/2026 19:47:07
[2026-06-12 19:47:07,553.553 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 19:47:07,559.559 INFO    ] Checking for existing commands in stream...
[2026-06-12 19:47:07,649.649 INFO    ] No existing commands found in stream
[2026-06-12 19:47:12,658.658 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 19:47:12,662.662 INFO    ] Waiting 0.94 seconds before fallback handling...
[2026-06-12 19:47:13,938.938 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 19:47:13,940.940 INFO    ] Checking for system updates...
[2026-06-12 19:47:13,960.960 INFO    ] 200
[2026-06-12 19:47:13,962.962 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:47:13,991.991 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 19:47:13,993.993 INFO    ] No update needed
[2026-06-12 19:47:13,994.994 INFO    ] Checking for camera pi updates...
[2026-06-12 19:47:14,014.014 INFO    ] 200
[2026-06-12 19:47:14,016.016 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:47:14,040.040 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 19:47:14,088.088 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 19:47:14,089.089 INFO    ] No camera update needed
[2026-06-12 19:47:14,091.091 INFO    ] Script finished. Safe exiting...
[2026-06-12 19:47:14,092.092 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 19:47:14,095.095 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 19:47:14,098.098 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 19:47:16,136.136 INFO    ] ================================================
[2026-06-12 19:47:16,151.151 INFO    ] Launching Daemon at Fri Jun 12 19:47:16 IST 2026
[2026-06-12 19:47:16,162.162 INFO    ] ================================================
[2026-06-12 19:47:16,525.525 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 19:47:16
[2026-06-12 19:47:16,868.868 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 19:47:17,017.017 INFO    ] Initializing speech engine...
[2026-06-12 19:47:17,023.023 INFO    ] 2026-06-12 19:47:17
[2026-06-12 19:47:17,230.230 INFO    ] 2026-06-12 19:47:17
[2026-06-12 19:47:17,259.259 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 19:47:17,427.427 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 19:47:17,445.445 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 19:47:17,581.581 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 19:47:17,648.648 INFO    ] time= 12/06/2026 19:47:17
[2026-06-12 19:47:17,671.671 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 19:47:17,678.678 INFO    ] Checking for existing commands in stream...
[2026-06-12 19:47:17,744.744 INFO    ] No existing commands found in stream
[2026-06-12 19:47:22,764.764 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 19:47:22,767.767 INFO    ] Waiting 2.61 seconds before fallback handling...
[2026-06-12 19:47:25,760.760 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 19:47:25,762.762 INFO    ] Checking for system updates...
[2026-06-12 19:47:25,783.783 INFO    ] 200
[2026-06-12 19:47:25,785.785 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:47:25,818.818 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 19:47:25,819.819 INFO    ] No update needed
[2026-06-12 19:47:25,821.821 INFO    ] Checking for camera pi updates...
[2026-06-12 19:47:25,841.841 INFO    ] 200
[2026-06-12 19:47:25,843.843 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:47:25,866.866 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 19:47:25,920.920 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 19:47:25,921.921 INFO    ] No camera update needed
[2026-06-12 19:47:25,923.923 INFO    ] Script finished. Safe exiting...
[2026-06-12 19:47:25,924.924 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 19:47:25,927.927 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 19:47:25,930.930 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 19:47:27,970.970 INFO    ] ================================================
[2026-06-12 19:47:27,987.987 INFO    ] Launching Daemon at Fri Jun 12 19:47:27 IST 2026
[2026-06-12 19:47:28,998.998 INFO    ] ================================================
[2026-06-12 19:47:28,371.371 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 19:47:28
[2026-06-12 19:47:28,685.685 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 19:47:28,827.827 INFO    ] Initializing speech engine...
[2026-06-12 19:47:28,832.832 INFO    ] 2026-06-12 19:47:28
[2026-06-12 19:47:29,036.036 INFO    ] 2026-06-12 19:47:29
[2026-06-12 19:47:29,064.064 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 19:47:29,247.247 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 19:47:29,256.256 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 19:47:29,399.399 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 19:47:29,451.451 INFO    ] time= 12/06/2026 19:47:29
[2026-06-12 19:47:29,475.475 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 19:47:29,481.481 INFO    ] Checking for existing commands in stream...
[2026-06-12 19:47:29,547.547 INFO    ] No existing commands found in stream
[2026-06-12 19:47:34,556.556 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 19:47:34,559.559 INFO    ] Waiting 2.89 seconds before fallback handling...
[2026-06-12 19:47:37,777.777 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 19:47:37,778.778 INFO    ] Checking for system updates...
[2026-06-12 19:47:37,800.800 INFO    ] 200
[2026-06-12 19:47:37,801.801 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:47:37,833.833 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 19:47:37,835.835 INFO    ] No update needed
[2026-06-12 19:47:37,836.836 INFO    ] Checking for camera pi updates...
[2026-06-12 19:47:37,859.859 INFO    ] 200
[2026-06-12 19:47:37,860.860 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:47:37,883.883 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 19:47:37,946.946 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 19:47:37,947.947 INFO    ] No camera update needed
[2026-06-12 19:47:37,948.948 INFO    ] Script finished. Safe exiting...
[2026-06-12 19:47:37,950.950 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 19:47:37,953.953 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 19:47:37,955.955 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 19:47:39,994.994 INFO    ] ================================================
[2026-06-12 19:47:40,010.010 INFO    ] Launching Daemon at Fri Jun 12 19:47:40 IST 2026
[2026-06-12 19:47:40,021.021 INFO    ] ================================================
[2026-06-12 19:47:40,359.359 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 19:47:40
[2026-06-12 19:47:40,672.672 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 19:47:40,813.813 INFO    ] Initializing speech engine...
[2026-06-12 19:47:40,821.821 INFO    ] 2026-06-12 19:47:40
[2026-06-12 19:47:41,039.039 INFO    ] 2026-06-12 19:47:41
[2026-06-12 19:47:41,070.070 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 19:47:41,270.270 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 19:47:41,278.278 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 19:47:41,412.412 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 19:47:41,473.473 INFO    ] time= 12/06/2026 19:47:41
[2026-06-12 19:47:41,509.509 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 19:47:41,520.520 INFO    ] Checking for existing commands in stream...
[2026-06-12 19:47:41,597.597 INFO    ] No existing commands found in stream
[2026-06-12 19:47:46,606.606 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 19:47:46,609.609 INFO    ] Waiting 0.92 seconds before fallback handling...
[2026-06-12 19:47:47,910.910 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 19:47:47,912.912 INFO    ] Checking for system updates...
[2026-06-12 19:47:47,932.932 INFO    ] 200
[2026-06-12 19:47:47,934.934 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:47:47,965.965 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 19:47:47,967.967 INFO    ] No update needed
[2026-06-12 19:47:47,968.968 INFO    ] Checking for camera pi updates...
[2026-06-12 19:47:47,988.988 INFO    ] 200
[2026-06-12 19:47:47,990.990 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:47:48,012.012 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 19:47:48,071.071 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 19:47:48,073.073 INFO    ] No camera update needed
[2026-06-12 19:47:48,074.074 INFO    ] Script finished. Safe exiting...
[2026-06-12 19:47:48,075.075 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 19:47:48,078.078 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 19:47:48,081.081 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 19:47:50,119.119 INFO    ] ================================================
[2026-06-12 19:47:50,134.134 INFO    ] Launching Daemon at Fri Jun 12 19:47:50 IST 2026
[2026-06-12 19:47:50,145.145 INFO    ] ================================================
[2026-06-12 19:47:50,521.521 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 19:47:50
[2026-06-12 19:47:50,856.856 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 19:47:51,007.007 INFO    ] Initializing speech engine...
[2026-06-12 19:47:51,012.012 INFO    ] 2026-06-12 19:47:51
[2026-06-12 19:47:51,221.221 INFO    ] 2026-06-12 19:47:51
[2026-06-12 19:47:51,250.250 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 19:47:51,435.435 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 19:47:51,444.444 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 19:47:51,568.568 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 19:47:51,624.624 INFO    ] time= 12/06/2026 19:47:51
[2026-06-12 19:47:51,667.667 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 19:47:51,674.674 INFO    ] Checking for existing commands in stream...
[2026-06-12 19:47:51,755.755 INFO    ] No existing commands found in stream
[2026-06-12 19:47:56,772.772 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 19:47:56,775.775 INFO    ] Waiting 3.12 seconds before fallback handling...
[2026-06-12 19:48:00,300.300 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 19:48:00,301.301 INFO    ] Checking for system updates...
[2026-06-12 19:48:00,322.322 INFO    ] 200
[2026-06-12 19:48:00,323.323 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:48:00,353.353 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 19:48:00,355.355 INFO    ] No update needed
[2026-06-12 19:48:00,356.356 INFO    ] Checking for camera pi updates...
[2026-06-12 19:48:00,375.375 INFO    ] 200
[2026-06-12 19:48:00,377.377 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:48:00,400.400 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 19:48:00,433.433 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 19:48:00,435.435 INFO    ] No camera update needed
[2026-06-12 19:48:00,436.436 INFO    ] Script finished. Safe exiting...
[2026-06-12 19:48:00,438.438 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 19:48:00,441.441 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 19:48:00,444.444 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 19:48:02,475.475 INFO    ] ================================================
[2026-06-12 19:48:02,487.487 INFO    ] Launching Daemon at Fri Jun 12 19:48:02 IST 2026
[2026-06-12 19:48:02,497.497 INFO    ] ================================================
[2026-06-12 19:48:02,852.852 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 19:48:02
[2026-06-12 19:48:03,174.174 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 19:48:03,320.320 INFO    ] Initializing speech engine...
[2026-06-12 19:48:03,325.325 INFO    ] 2026-06-12 19:48:03
[2026-06-12 19:48:03,538.538 INFO    ] 2026-06-12 19:48:03
[2026-06-12 19:48:03,569.569 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 19:48:03,763.763 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 19:48:03,767.767 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 19:48:03,908.908 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 19:48:03,971.971 INFO    ] time= 12/06/2026 19:48:03
[2026-06-12 19:48:03,999.999 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 19:48:04,010.010 INFO    ] Checking for existing commands in stream...
[2026-06-12 19:48:04,086.086 INFO    ] No existing commands found in stream
[2026-06-12 19:48:09,095.095 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 19:48:09,098.098 INFO    ] Waiting 0.63 seconds before fallback handling...
[2026-06-12 19:48:10,119.119 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 19:48:10,121.121 INFO    ] Checking for system updates...
[2026-06-12 19:48:10,142.142 INFO    ] 200
[2026-06-12 19:48:10,144.144 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:48:10,174.174 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 19:48:10,176.176 INFO    ] No update needed
[2026-06-12 19:48:10,177.177 INFO    ] Checking for camera pi updates...
[2026-06-12 19:48:10,196.196 INFO    ] 200
[2026-06-12 19:48:10,198.198 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:48:10,221.221 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 19:48:10,274.274 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 19:48:10,275.275 INFO    ] No camera update needed
[2026-06-12 19:48:10,277.277 INFO    ] Script finished. Safe exiting...
[2026-06-12 19:48:10,278.278 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 19:48:10,282.282 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 19:48:10,285.285 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 19:48:12,323.323 INFO    ] ================================================
[2026-06-12 19:48:12,338.338 INFO    ] Launching Daemon at Fri Jun 12 19:48:12 IST 2026
[2026-06-12 19:48:12,349.349 INFO    ] ================================================
[2026-06-12 19:48:12,679.679 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 19:48:12
[2026-06-12 19:48:12,992.992 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 19:48:13,124.124 INFO    ] Initializing speech engine...
[2026-06-12 19:48:13,129.129 INFO    ] 2026-06-12 19:48:13
[2026-06-12 19:48:13,356.356 INFO    ] 2026-06-12 19:48:13
[2026-06-12 19:48:13,375.375 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 19:48:13,583.583 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 19:48:13,586.586 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 19:48:13,732.732 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 19:48:13,796.796 INFO    ] time= 12/06/2026 19:48:13
[2026-06-12 19:48:13,828.828 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 19:48:13,830.830 INFO    ] Checking for existing commands in stream...
[2026-06-12 19:48:13,906.906 INFO    ] No existing commands found in stream
[2026-06-12 19:48:18,915.915 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 19:48:18,918.918 INFO    ] Waiting 1.65 seconds before fallback handling...
[2026-06-12 19:48:20,927.927 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 19:48:20,929.929 INFO    ] Checking for system updates...
[2026-06-12 19:48:20,950.950 INFO    ] 200
[2026-06-12 19:48:20,952.952 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:48:20,983.983 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 19:48:20,985.985 INFO    ] No update needed
[2026-06-12 19:48:20,986.986 INFO    ] Checking for camera pi updates...
[2026-06-12 19:48:21,005.005 INFO    ] 200
[2026-06-12 19:48:21,006.006 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:48:21,032.032 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 19:48:21,176.176 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 19:48:21,177.177 INFO    ] No camera update needed
[2026-06-12 19:48:21,179.179 INFO    ] Script finished. Safe exiting...
[2026-06-12 19:48:21,180.180 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 19:48:21,183.183 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 19:48:21,186.186 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 19:48:23,224.224 INFO    ] ================================================
[2026-06-12 19:48:23,240.240 INFO    ] Launching Daemon at Fri Jun 12 19:48:23 IST 2026
[2026-06-12 19:48:23,251.251 INFO    ] ================================================
[2026-06-12 19:48:23,617.617 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 19:48:23
[2026-06-12 19:48:23,931.931 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 19:48:24,065.065 INFO    ] Initializing speech engine...
[2026-06-12 19:48:24,070.070 INFO    ] 2026-06-12 19:48:24
[2026-06-12 19:48:24,297.297 INFO    ] 2026-06-12 19:48:24
[2026-06-12 19:48:24,327.327 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 19:48:24,525.525 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 19:48:24,534.534 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 19:48:24,674.674 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 19:48:24,738.738 INFO    ] time= 12/06/2026 19:48:24
[2026-06-12 19:48:24,772.772 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 19:48:24,779.779 INFO    ] Checking for existing commands in stream...
[2026-06-12 19:48:24,876.876 INFO    ] No existing commands found in stream
[2026-06-12 19:48:29,885.885 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 19:48:29,888.888 INFO    ] Waiting 1.14 seconds before fallback handling...
[2026-06-12 19:48:31,387.387 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 19:48:31,389.389 INFO    ] Checking for system updates...
[2026-06-12 19:48:31,410.410 INFO    ] 200
[2026-06-12 19:48:31,411.411 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:48:31,443.443 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 19:48:31,445.445 INFO    ] No update needed
[2026-06-12 19:48:31,446.446 INFO    ] Checking for camera pi updates...
[2026-06-12 19:48:31,468.468 INFO    ] 200
[2026-06-12 19:48:31,470.470 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:48:31,493.493 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 19:48:31,542.542 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 19:48:31,543.543 INFO    ] No camera update needed
[2026-06-12 19:48:31,544.544 INFO    ] Script finished. Safe exiting...
[2026-06-12 19:48:31,546.546 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 19:48:31,549.549 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 19:48:31,552.552 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 19:48:33,584.584 INFO    ] ================================================
[2026-06-12 19:48:33,599.599 INFO    ] Launching Daemon at Fri Jun 12 19:48:33 IST 2026
[2026-06-12 19:48:33,610.610 INFO    ] ================================================
[2026-06-12 19:48:33,971.971 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 19:48:33
[2026-06-12 19:48:34,282.282 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 19:48:34,412.412 INFO    ] Initializing speech engine...
[2026-06-12 19:48:34,416.416 INFO    ] 2026-06-12 19:48:34
[2026-06-12 19:48:34,630.630 INFO    ] 2026-06-12 19:48:34
[2026-06-12 19:48:34,659.659 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 19:48:34,843.843 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 19:48:34,852.852 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 19:48:34,991.991 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 19:48:35,047.047 INFO    ] time= 12/06/2026 19:48:35
[2026-06-12 19:48:35,071.071 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 19:48:35,077.077 INFO    ] Checking for existing commands in stream...
[2026-06-12 19:48:35,144.144 INFO    ] No existing commands found in stream
[2026-06-12 19:48:40,163.163 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 19:48:40,166.166 INFO    ] Waiting 1.90 seconds before fallback handling...
[2026-06-12 19:48:42,451.451 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 19:48:42,452.452 INFO    ] Checking for system updates...
[2026-06-12 19:48:42,473.473 INFO    ] 200
[2026-06-12 19:48:42,474.474 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:48:42,503.503 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 19:48:42,505.505 INFO    ] No update needed
[2026-06-12 19:48:42,506.506 INFO    ] Checking for camera pi updates...
[2026-06-12 19:48:42,525.525 INFO    ] 200
[2026-06-12 19:48:42,526.526 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:48:42,552.552 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 19:48:42,593.593 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 19:48:42,594.594 INFO    ] No camera update needed
[2026-06-12 19:48:42,596.596 INFO    ] Script finished. Safe exiting...
[2026-06-12 19:48:42,597.597 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 19:48:42,600.600 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 19:48:42,603.603 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 19:48:44,644.644 INFO    ] ================================================
[2026-06-12 19:48:44,659.659 INFO    ] Launching Daemon at Fri Jun 12 19:48:44 IST 2026
[2026-06-12 19:48:44,669.669 INFO    ] ================================================
[2026-06-12 19:48:45,018.018 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 19:48:45
[2026-06-12 19:48:45,333.333 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 19:48:45,462.462 INFO    ] Initializing speech engine...
[2026-06-12 19:48:45,470.470 INFO    ] 2026-06-12 19:48:45
[2026-06-12 19:48:45,681.681 INFO    ] 2026-06-12 19:48:45
[2026-06-12 19:48:45,710.710 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 19:48:45,894.894 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 19:48:45,904.904 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 19:48:46,029.029 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 19:48:46,096.096 INFO    ] time= 12/06/2026 19:48:46
[2026-06-12 19:48:46,123.123 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 19:48:46,129.129 INFO    ] Checking for existing commands in stream...
[2026-06-12 19:48:46,219.219 INFO    ] No existing commands found in stream
[2026-06-12 19:48:51,228.228 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 19:48:51,231.231 INFO    ] Waiting 3.90 seconds before fallback handling...
[2026-06-12 19:48:55,518.518 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 19:48:55,519.519 INFO    ] Checking for system updates...
[2026-06-12 19:48:55,540.540 INFO    ] 200
[2026-06-12 19:48:55,542.542 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:48:55,572.572 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 19:48:55,573.573 INFO    ] No update needed
[2026-06-12 19:48:55,575.575 INFO    ] Checking for camera pi updates...
[2026-06-12 19:48:55,594.594 INFO    ] 200
[2026-06-12 19:48:55,595.595 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:48:55,620.620 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 19:48:55,683.683 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 19:48:55,685.685 INFO    ] No camera update needed
[2026-06-12 19:48:55,686.686 INFO    ] Script finished. Safe exiting...
[2026-06-12 19:48:55,688.688 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 19:48:55,691.691 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 19:48:55,694.694 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 19:48:57,725.725 INFO    ] ================================================
[2026-06-12 19:48:57,734.734 INFO    ] Launching Daemon at Fri Jun 12 19:48:57 IST 2026
[2026-06-12 19:48:57,741.741 INFO    ] ================================================
[2026-06-12 19:48:58,064.064 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 19:48:58
[2026-06-12 19:48:58,396.396 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 19:48:58,541.541 INFO    ] Initializing speech engine...
[2026-06-12 19:48:58,546.546 INFO    ] 2026-06-12 19:48:58
[2026-06-12 19:48:58,750.750 INFO    ] 2026-06-12 19:48:58
[2026-06-12 19:48:58,778.778 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 19:48:58,963.963 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 19:48:58,973.973 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 19:48:59,100.100 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 19:48:59,159.159 INFO    ] time= 12/06/2026 19:48:59
[2026-06-12 19:48:59,191.191 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 19:48:59,197.197 INFO    ] Checking for existing commands in stream...
[2026-06-12 19:48:59,264.264 INFO    ] No existing commands found in stream
[2026-06-12 19:49:04,273.273 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 19:49:04,276.276 INFO    ] Waiting 2.22 seconds before fallback handling...
[2026-06-12 19:49:06,879.879 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 19:49:06,881.881 INFO    ] Checking for system updates...
[2026-06-12 19:49:06,901.901 INFO    ] 200
[2026-06-12 19:49:06,903.903 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:49:06,935.935 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 19:49:06,936.936 INFO    ] No update needed
[2026-06-12 19:49:06,938.938 INFO    ] Checking for camera pi updates...
[2026-06-12 19:49:06,957.957 INFO    ] 200
[2026-06-12 19:49:06,958.958 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:49:06,981.981 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 19:49:07,024.024 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 19:49:07,026.026 INFO    ] No camera update needed
[2026-06-12 19:49:07,027.027 INFO    ] Script finished. Safe exiting...
[2026-06-12 19:49:07,028.028 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 19:49:07,031.031 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 19:49:07,034.034 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 19:49:09,076.076 INFO    ] ================================================
[2026-06-12 19:49:09,091.091 INFO    ] Launching Daemon at Fri Jun 12 19:49:09 IST 2026
[2026-06-12 19:49:09,101.101 INFO    ] ================================================
[2026-06-12 19:49:09,456.456 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 19:49:09
[2026-06-12 19:49:09,773.773 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 19:49:09,906.906 INFO    ] Initializing speech engine...
[2026-06-12 19:49:09,919.919 INFO    ] 2026-06-12 19:49:09
[2026-06-12 19:49:10,125.125 INFO    ] 2026-06-12 19:49:10
[2026-06-12 19:49:10,154.154 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 19:49:10,337.337 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 19:49:10,340.340 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 19:49:10,476.476 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 19:49:10,540.540 INFO    ] time= 12/06/2026 19:49:10
[2026-06-12 19:49:10,567.567 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 19:49:10,573.573 INFO    ] Checking for existing commands in stream...
[2026-06-12 19:49:10,639.639 INFO    ] No existing commands found in stream
[2026-06-12 19:49:15,648.648 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 19:49:15,651.651 INFO    ] Waiting 0.30 seconds before fallback handling...
[2026-06-12 19:49:16,307.307 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 19:49:16,308.308 INFO    ] Checking for system updates...
[2026-06-12 19:49:16,329.329 INFO    ] 200
[2026-06-12 19:49:16,331.331 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:49:16,361.361 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 19:49:16,363.363 INFO    ] No update needed
[2026-06-12 19:49:16,364.364 INFO    ] Checking for camera pi updates...
[2026-06-12 19:49:16,383.383 INFO    ] 200
[2026-06-12 19:49:16,384.384 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:49:16,409.409 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 19:49:16,455.455 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 19:49:16,456.456 INFO    ] No camera update needed
[2026-06-12 19:49:16,458.458 INFO    ] Script finished. Safe exiting...
[2026-06-12 19:49:16,459.459 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 19:49:16,462.462 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 19:49:16,465.465 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 19:49:18,503.503 INFO    ] ================================================
[2026-06-12 19:49:18,518.518 INFO    ] Launching Daemon at Fri Jun 12 19:49:18 IST 2026
[2026-06-12 19:49:18,529.529 INFO    ] ================================================
[2026-06-12 19:49:18,867.867 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 19:49:18
[2026-06-12 19:49:19,180.180 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 19:49:19,313.313 INFO    ] Initializing speech engine...
[2026-06-12 19:49:19,318.318 INFO    ] 2026-06-12 19:49:19
[2026-06-12 19:49:19,546.546 INFO    ] 2026-06-12 19:49:19
[2026-06-12 19:49:19,577.577 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 19:49:19,773.773 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 19:49:19,777.777 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 19:49:19,904.904 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 19:49:19,907.907 INFO    ] time= 12/06/2026 19:49:19
[2026-06-12 19:49:19,908.908 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 19:49:19,909.909 INFO    ] Checking for existing commands in stream...
[2026-06-12 19:49:20,005.005 INFO    ] No existing commands found in stream
[2026-06-12 19:49:25,017.017 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 19:49:25,020.020 INFO    ] Waiting 1.44 seconds before fallback handling...
[2026-06-12 19:49:26,837.837 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 19:49:26,839.839 INFO    ] Checking for system updates...
[2026-06-12 19:49:26,859.859 INFO    ] 200
[2026-06-12 19:49:26,860.860 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:49:26,892.892 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 19:49:26,894.894 INFO    ] No update needed
[2026-06-12 19:49:26,895.895 INFO    ] Checking for camera pi updates...
[2026-06-12 19:49:26,914.914 INFO    ] 200
[2026-06-12 19:49:26,915.915 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:49:26,939.939 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 19:49:26,999.999 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 19:49:27,000.000 INFO    ] No camera update needed
[2026-06-12 19:49:27,002.002 INFO    ] Script finished. Safe exiting...
[2026-06-12 19:49:27,003.003 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 19:49:27,006.006 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 19:49:27,009.009 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 19:49:29,047.047 INFO    ] ================================================
[2026-06-12 19:49:29,063.063 INFO    ] Launching Daemon at Fri Jun 12 19:49:29 IST 2026
[2026-06-12 19:49:29,074.074 INFO    ] ================================================
[2026-06-12 19:49:29,433.433 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 19:49:29
[2026-06-12 19:49:29,771.771 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 19:49:29,923.923 INFO    ] Initializing speech engine...
[2026-06-12 19:49:29,928.928 INFO    ] 2026-06-12 19:49:29
[2026-06-12 19:49:30,138.138 INFO    ] 2026-06-12 19:49:30
[2026-06-12 19:49:30,168.168 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 19:49:30,356.356 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 19:49:30,365.365 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 19:49:30,511.511 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 19:49:30,566.566 INFO    ] time= 12/06/2026 19:49:30
[2026-06-12 19:49:30,588.588 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 19:49:30,595.595 INFO    ] Checking for existing commands in stream...
[2026-06-12 19:49:30,663.663 INFO    ] No existing commands found in stream
[2026-06-12 19:49:35,677.677 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 19:49:35,681.681 INFO    ] Waiting 3.41 seconds before fallback handling...
[2026-06-12 19:49:39,497.497 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 19:49:39,498.498 INFO    ] Checking for system updates...
[2026-06-12 19:49:39,519.519 INFO    ] 200
[2026-06-12 19:49:39,521.521 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:49:39,551.551 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 19:49:39,552.552 INFO    ] No update needed
[2026-06-12 19:49:39,553.553 INFO    ] Checking for camera pi updates...
[2026-06-12 19:49:39,573.573 INFO    ] 200
[2026-06-12 19:49:39,574.574 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:49:39,599.599 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 19:49:39,629.629 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 19:49:39,631.631 INFO    ] No camera update needed
[2026-06-12 19:49:39,632.632 INFO    ] Script finished. Safe exiting...
[2026-06-12 19:49:39,633.633 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 19:49:39,637.637 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 19:49:39,640.640 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 19:49:41,680.680 INFO    ] ================================================
[2026-06-12 19:49:41,695.695 INFO    ] Launching Daemon at Fri Jun 12 19:49:41 IST 2026
[2026-06-12 19:49:41,706.706 INFO    ] ================================================
[2026-06-12 19:49:42,084.084 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 19:49:42
[2026-06-12 19:49:42,401.401 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 19:49:42,535.535 INFO    ] Initializing speech engine...
[2026-06-12 19:49:42,539.539 INFO    ] 2026-06-12 19:49:42
[2026-06-12 19:49:42,757.757 INFO    ] 2026-06-12 19:49:42
[2026-06-12 19:49:42,786.786 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 19:49:42,968.968 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 19:49:42,972.972 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 19:49:43,105.105 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 19:49:43,161.161 INFO    ] time= 12/06/2026 19:49:43
[2026-06-12 19:49:43,197.197 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 19:49:43,200.200 INFO    ] Checking for existing commands in stream...
[2026-06-12 19:49:43,271.271 INFO    ] No existing commands found in stream
[2026-06-12 19:49:48,280.280 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 19:49:48,283.283 INFO    ] Waiting 0.84 seconds before fallback handling...
[2026-06-12 19:49:49,499.499 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 19:49:49,501.501 INFO    ] Checking for system updates...
[2026-06-12 19:49:49,522.522 INFO    ] 200
[2026-06-12 19:49:49,523.523 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:49:49,553.553 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 19:49:49,555.555 INFO    ] No update needed
[2026-06-12 19:49:49,556.556 INFO    ] Checking for camera pi updates...
[2026-06-12 19:49:49,575.575 INFO    ] 200
[2026-06-12 19:49:49,577.577 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:49:49,600.600 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 19:49:49,649.649 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 19:49:49,651.651 INFO    ] No camera update needed
[2026-06-12 19:49:49,652.652 INFO    ] Script finished. Safe exiting...
[2026-06-12 19:49:49,654.654 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 19:49:49,657.657 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 19:49:49,660.660 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 19:49:51,700.700 INFO    ] ================================================
[2026-06-12 19:49:51,715.715 INFO    ] Launching Daemon at Fri Jun 12 19:49:51 IST 2026
[2026-06-12 19:49:51,725.725 INFO    ] ================================================
[2026-06-12 19:49:52,112.112 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 19:49:52
[2026-06-12 19:49:52,448.448 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 19:49:52,606.606 INFO    ] Initializing speech engine...
[2026-06-12 19:49:52,614.614 INFO    ] 2026-06-12 19:49:52
[2026-06-12 19:49:52,816.816 INFO    ] 2026-06-12 19:49:52
[2026-06-12 19:49:52,847.847 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 19:49:52,972.972 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 19:49:53,030.030 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 19:49:53,191.191 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 19:49:53,244.244 INFO    ] time= 12/06/2026 19:49:53
[2026-06-12 19:49:53,268.268 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 19:49:53,274.274 INFO    ] Checking for existing commands in stream...
[2026-06-12 19:49:53,342.342 INFO    ] No existing commands found in stream
[2026-06-12 19:49:58,356.356 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 19:49:58,360.360 INFO    ] Waiting 1.54 seconds before fallback handling...
[2026-06-12 19:50:00,228.228 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 19:50:00,229.229 INFO    ] Checking for system updates...
[2026-06-12 19:50:00,250.250 INFO    ] 200
[2026-06-12 19:50:00,252.252 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:50:00,282.282 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 19:50:00,283.283 INFO    ] No update needed
[2026-06-12 19:50:00,284.284 INFO    ] Checking for camera pi updates...
[2026-06-12 19:50:00,305.305 INFO    ] 200
[2026-06-12 19:50:00,307.307 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:50:00,333.333 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 19:50:00,389.389 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 19:50:00,391.391 INFO    ] No camera update needed
[2026-06-12 19:50:00,392.392 INFO    ] Script finished. Safe exiting...
[2026-06-12 19:50:00,393.393 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 19:50:00,397.397 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 19:50:00,400.400 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 19:50:02,463.463 INFO    ] ================================================
[2026-06-12 19:50:02,473.473 INFO    ] Launching Daemon at Fri Jun 12 19:50:02 IST 2026
[2026-06-12 19:50:02,484.484 INFO    ] ================================================
[2026-06-12 19:50:02,806.806 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 19:50:02
[2026-06-12 19:50:03,124.124 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 19:50:03,256.256 INFO    ] Initializing speech engine...
[2026-06-12 19:50:03,264.264 INFO    ] 2026-06-12 19:50:03
[2026-06-12 19:50:03,477.477 INFO    ] 2026-06-12 19:50:03
[2026-06-12 19:50:03,505.505 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 19:50:03,626.626 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 19:50:03,689.689 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 19:50:03,819.819 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 19:50:03,880.880 INFO    ] time= 12/06/2026 19:50:03
[2026-06-12 19:50:03,918.918 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 19:50:03,920.920 INFO    ] Checking for existing commands in stream...
[2026-06-12 19:50:03,991.991 INFO    ] No existing commands found in stream
[2026-06-12 19:50:09,006.006 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 19:50:09,008.008 INFO    ] Waiting 2.97 seconds before fallback handling...
[2026-06-12 19:50:12,329.329 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 19:50:12,331.331 INFO    ] Checking for system updates...
[2026-06-12 19:50:12,351.351 INFO    ] 200
[2026-06-12 19:50:12,353.353 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:50:12,382.382 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 19:50:12,384.384 INFO    ] No update needed
[2026-06-12 19:50:12,385.385 INFO    ] Checking for camera pi updates...
[2026-06-12 19:50:12,404.404 INFO    ] 200
[2026-06-12 19:50:12,405.405 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:50:12,428.428 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 19:50:12,470.470 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 19:50:12,471.471 INFO    ] No camera update needed
[2026-06-12 19:50:12,472.472 INFO    ] Script finished. Safe exiting...
[2026-06-12 19:50:12,474.474 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 19:50:12,477.477 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 19:50:12,480.480 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 19:50:14,520.520 INFO    ] ================================================
[2026-06-12 19:50:14,535.535 INFO    ] Launching Daemon at Fri Jun 12 19:50:14 IST 2026
[2026-06-12 19:50:14,546.546 INFO    ] ================================================
[2026-06-12 19:50:14,904.904 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 19:50:14
[2026-06-12 19:50:15,239.239 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 19:50:15,384.384 INFO    ] Initializing speech engine...
[2026-06-12 19:50:15,394.394 INFO    ] 2026-06-12 19:50:15
[2026-06-12 19:50:15,605.605 INFO    ] 2026-06-12 19:50:15
[2026-06-12 19:50:15,634.634 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 19:50:15,779.779 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 19:50:15,823.823 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 19:50:15,964.964 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 19:50:16,032.032 INFO    ] time= 12/06/2026 19:50:15
[2026-06-12 19:50:16,056.056 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 19:50:16,063.063 INFO    ] Checking for existing commands in stream...
[2026-06-12 19:50:16,131.131 INFO    ] No existing commands found in stream
[2026-06-12 19:50:21,140.140 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 19:50:21,143.143 INFO    ] Waiting 3.15 seconds before fallback handling...
[2026-06-12 19:50:24,637.637 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 19:50:24,639.639 INFO    ] Checking for system updates...
[2026-06-12 19:50:24,659.659 INFO    ] 200
[2026-06-12 19:50:24,660.660 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:50:24,692.692 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 19:50:24,694.694 INFO    ] No update needed
[2026-06-12 19:50:24,695.695 INFO    ] Checking for camera pi updates...
[2026-06-12 19:50:24,714.714 INFO    ] 200
[2026-06-12 19:50:24,715.715 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:50:24,739.739 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 19:50:24,878.878 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 19:50:24,879.879 INFO    ] No camera update needed
[2026-06-12 19:50:24,881.881 INFO    ] Script finished. Safe exiting...
[2026-06-12 19:50:24,882.882 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 19:50:24,885.885 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 19:50:24,887.887 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 19:50:26,925.925 INFO    ] ================================================
[2026-06-12 19:50:26,941.941 INFO    ] Launching Daemon at Fri Jun 12 19:50:26 IST 2026
[2026-06-12 19:50:26,951.951 INFO    ] ================================================
[2026-06-12 19:50:27,309.309 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 19:50:27
[2026-06-12 19:50:27,648.648 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 19:50:27,803.803 INFO    ] Initializing speech engine...
[2026-06-12 19:50:27,809.809 INFO    ] 2026-06-12 19:50:27
[2026-06-12 19:50:28,018.018 INFO    ] 2026-06-12 19:50:27
[2026-06-12 19:50:28,047.047 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 19:50:28,172.172 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 19:50:28,236.236 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 19:50:28,376.376 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 19:50:28,445.445 INFO    ] time= 12/06/2026 19:50:28
[2026-06-12 19:50:28,469.469 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 19:50:28,476.476 INFO    ] Checking for existing commands in stream...
[2026-06-12 19:50:28,543.543 INFO    ] No existing commands found in stream
[2026-06-12 19:50:33,558.558 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 19:50:33,561.561 INFO    ] Waiting 1.43 seconds before fallback handling...
[2026-06-12 19:50:35,340.340 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 19:50:35,342.342 INFO    ] Checking for system updates...
[2026-06-12 19:50:35,363.363 INFO    ] 200
[2026-06-12 19:50:35,364.364 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:50:35,395.395 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 19:50:35,396.396 INFO    ] No update needed
[2026-06-12 19:50:35,397.397 INFO    ] Checking for camera pi updates...
[2026-06-12 19:50:35,417.417 INFO    ] 200
[2026-06-12 19:50:35,419.419 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:50:35,442.442 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 19:50:35,500.500 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 19:50:35,501.501 INFO    ] No camera update needed
[2026-06-12 19:50:35,502.502 INFO    ] Script finished. Safe exiting...
[2026-06-12 19:50:35,504.504 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 19:50:35,507.507 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 19:50:35,510.510 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 19:50:37,549.549 INFO    ] ================================================
[2026-06-12 19:50:37,564.564 INFO    ] Launching Daemon at Fri Jun 12 19:50:37 IST 2026
[2026-06-12 19:50:37,575.575 INFO    ] ================================================
[2026-06-12 19:50:37,921.921 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 19:50:37
[2026-06-12 19:50:38,237.237 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 19:50:38,375.375 INFO    ] Initializing speech engine...
[2026-06-12 19:50:38,382.382 INFO    ] 2026-06-12 19:50:38
[2026-06-12 19:50:38,606.606 INFO    ] 2026-06-12 19:50:38
[2026-06-12 19:50:38,638.638 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 19:50:38,834.834 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 19:50:38,838.838 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 19:50:39,011.011 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 19:50:39,058.058 INFO    ] time= 12/06/2026 19:50:39
[2026-06-12 19:50:39,081.081 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 19:50:39,088.088 INFO    ] Checking for existing commands in stream...
[2026-06-12 19:50:39,157.157 INFO    ] No existing commands found in stream
[2026-06-12 19:50:44,168.168 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 19:50:44,176.176 INFO    ] Waiting 0.41 seconds before fallback handling...
[2026-06-12 19:50:44,955.955 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 19:50:44,956.956 INFO    ] Checking for system updates...
[2026-06-12 19:50:44,977.977 INFO    ] 200
[2026-06-12 19:50:44,978.978 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:50:45,013.013 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 19:50:45,014.014 INFO    ] No update needed
[2026-06-12 19:50:45,015.015 INFO    ] Checking for camera pi updates...
[2026-06-12 19:50:45,034.034 INFO    ] 200
[2026-06-12 19:50:45,035.035 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:50:45,058.058 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 19:50:45,105.105 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 19:50:45,106.106 INFO    ] No camera update needed
[2026-06-12 19:50:45,108.108 INFO    ] Script finished. Safe exiting...
[2026-06-12 19:50:45,109.109 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 19:50:45,112.112 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 19:50:45,115.115 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 19:50:47,152.152 INFO    ] ================================================
[2026-06-12 19:50:47,168.168 INFO    ] Launching Daemon at Fri Jun 12 19:50:47 IST 2026
[2026-06-12 19:50:47,179.179 INFO    ] ================================================
[2026-06-12 19:50:47,523.523 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 19:50:47
[2026-06-12 19:50:47,835.835 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 19:50:47,982.982 INFO    ] Initializing speech engine...
[2026-06-12 19:50:47,988.988 INFO    ] 2026-06-12 19:50:47
[2026-06-12 19:50:48,203.203 INFO    ] 2026-06-12 19:50:48
[2026-06-12 19:50:48,234.234 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 19:50:48,367.367 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 19:50:48,399.399 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 19:50:48,538.538 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 19:50:48,578.578 INFO    ] time= 12/06/2026 19:50:48
[2026-06-12 19:50:48,624.624 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 19:50:48,659.659 INFO    ] Checking for existing commands in stream...
[2026-06-12 19:50:48,758.758 INFO    ] No existing commands found in stream
[2026-06-12 19:50:53,769.769 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 19:50:53,772.772 INFO    ] Waiting 3.99 seconds before fallback handling...
[2026-06-12 19:50:58,172.172 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 19:50:58,173.173 INFO    ] Checking for system updates...
[2026-06-12 19:50:58,195.195 INFO    ] 200
[2026-06-12 19:50:58,196.196 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:50:58,226.226 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 19:50:58,228.228 INFO    ] No update needed
[2026-06-12 19:50:58,229.229 INFO    ] Checking for camera pi updates...
[2026-06-12 19:50:58,250.250 INFO    ] 200
[2026-06-12 19:50:58,252.252 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:50:58,279.279 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 19:50:58,336.336 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 19:50:58,337.337 INFO    ] No camera update needed
[2026-06-12 19:50:58,339.339 INFO    ] Script finished. Safe exiting...
[2026-06-12 19:50:58,340.340 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 19:50:58,343.343 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 19:50:58,346.346 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 19:51:00,384.384 INFO    ] ================================================
[2026-06-12 19:51:00,399.399 INFO    ] Launching Daemon at Fri Jun 12 19:51:00 IST 2026
[2026-06-12 19:51:00,409.409 INFO    ] ================================================
[2026-06-12 19:51:00,777.777 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 19:51:00
[2026-06-12 19:51:01,117.117 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 19:51:01,271.271 INFO    ] Initializing speech engine...
[2026-06-12 19:51:01,278.278 INFO    ] 2026-06-12 19:51:01
[2026-06-12 19:51:01,480.480 INFO    ] 2026-06-12 19:51:01
[2026-06-12 19:51:01,510.510 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 19:51:01,696.696 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 19:51:01,705.705 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 19:51:01,862.862 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 19:51:01,865.865 INFO    ] time= 12/06/2026 19:51:01
[2026-06-12 19:51:01,867.867 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 19:51:01,888.888 INFO    ] Checking for existing commands in stream...
[2026-06-12 19:51:01,957.957 INFO    ] No existing commands found in stream
[2026-06-12 19:51:06,967.967 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 19:51:06,970.970 INFO    ] Waiting 3.65 seconds before fallback handling...
[2026-06-12 19:51:10,982.982 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 19:51:10,983.983 INFO    ] Checking for system updates...
[2026-06-12 19:51:11,004.004 INFO    ] 200
[2026-06-12 19:51:11,005.005 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:51:11,037.037 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 19:51:11,039.039 INFO    ] No update needed
[2026-06-12 19:51:11,040.040 INFO    ] Checking for camera pi updates...
[2026-06-12 19:51:11,059.059 INFO    ] 200
[2026-06-12 19:51:11,061.061 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:51:11,084.084 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 19:51:11,144.144 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 19:51:11,145.145 INFO    ] No camera update needed
[2026-06-12 19:51:11,147.147 INFO    ] Script finished. Safe exiting...
[2026-06-12 19:51:11,148.148 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 19:51:11,151.151 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 19:51:11,154.154 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 19:51:13,191.191 INFO    ] ================================================
[2026-06-12 19:51:13,206.206 INFO    ] Launching Daemon at Fri Jun 12 19:51:13 IST 2026
[2026-06-12 19:51:13,217.217 INFO    ] ================================================
[2026-06-12 19:51:13,561.561 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 19:51:13
[2026-06-12 19:51:13,872.872 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 19:51:14,003.003 INFO    ] Initializing speech engine...
[2026-06-12 19:51:14,007.007 INFO    ] 2026-06-12 19:51:14
[2026-06-12 19:51:14,236.236 INFO    ] 2026-06-12 19:51:14
[2026-06-12 19:51:14,266.266 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 19:51:14,458.458 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 19:51:14,461.461 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 19:51:14,592.592 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 19:51:14,649.649 INFO    ] time= 12/06/2026 19:51:14
[2026-06-12 19:51:14,678.678 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 19:51:14,688.688 INFO    ] Checking for existing commands in stream...
[2026-06-12 19:51:14,760.760 INFO    ] No existing commands found in stream
[2026-06-12 19:51:19,774.774 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 19:51:19,776.776 INFO    ] Waiting 3.84 seconds before fallback handling...
[2026-06-12 19:51:23,998.998 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 19:51:24,000.000 INFO    ] Checking for system updates...
[2026-06-12 19:51:24,023.023 INFO    ] 200
[2026-06-12 19:51:24,024.024 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:51:24,056.056 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 19:51:24,057.057 INFO    ] No update needed
[2026-06-12 19:51:24,059.059 INFO    ] Checking for camera pi updates...
[2026-06-12 19:51:24,079.079 INFO    ] 200
[2026-06-12 19:51:24,080.080 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:51:24,103.103 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 19:51:24,154.154 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 19:51:24,155.155 INFO    ] No camera update needed
[2026-06-12 19:51:24,157.157 INFO    ] Script finished. Safe exiting...
[2026-06-12 19:51:24,158.158 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 19:51:24,161.161 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 19:51:24,164.164 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 19:51:26,210.210 INFO    ] ================================================
[2026-06-12 19:51:26,225.225 INFO    ] Launching Daemon at Fri Jun 12 19:51:26 IST 2026
[2026-06-12 19:51:26,236.236 INFO    ] ================================================
[2026-06-12 19:51:26,597.597 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 19:51:26
[2026-06-12 19:51:26,909.909 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 19:51:27,046.046 INFO    ] Initializing speech engine...
[2026-06-12 19:51:27,057.057 INFO    ] 2026-06-12 19:51:27
[2026-06-12 19:51:27,262.262 INFO    ] 2026-06-12 19:51:27
[2026-06-12 19:51:27,291.291 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 19:51:27,475.475 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 19:51:27,485.485 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 19:51:27,631.631 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 19:51:27,684.684 INFO    ] time= 12/06/2026 19:51:27
[2026-06-12 19:51:27,707.707 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 19:51:27,714.714 INFO    ] Checking for existing commands in stream...
[2026-06-12 19:51:27,779.779 INFO    ] No existing commands found in stream
[2026-06-12 19:51:32,814.814 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 19:51:32,817.817 INFO    ] Waiting 2.70 seconds before fallback handling...
[2026-06-12 19:51:35,874.874 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 19:51:35,875.875 INFO    ] Checking for system updates...
[2026-06-12 19:51:35,896.896 INFO    ] 200
[2026-06-12 19:51:35,897.897 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:51:35,929.929 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 19:51:35,930.930 INFO    ] No update needed
[2026-06-12 19:51:35,932.932 INFO    ] Checking for camera pi updates...
[2026-06-12 19:51:35,951.951 INFO    ] 200
[2026-06-12 19:51:35,952.952 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:51:35,977.977 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 19:51:36,023.023 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 19:51:36,024.024 INFO    ] No camera update needed
[2026-06-12 19:51:36,025.025 INFO    ] Script finished. Safe exiting...
[2026-06-12 19:51:36,026.026 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 19:51:36,029.029 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 19:51:36,032.032 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 19:51:38,071.071 INFO    ] ================================================
[2026-06-12 19:51:38,086.086 INFO    ] Launching Daemon at Fri Jun 12 19:51:38 IST 2026
[2026-06-12 19:51:38,097.097 INFO    ] ================================================
[2026-06-12 19:51:38,455.455 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 19:51:38
[2026-06-12 19:51:38,764.764 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 19:51:38,899.899 INFO    ] Initializing speech engine...
[2026-06-12 19:51:38,913.913 INFO    ] 2026-06-12 19:51:38
[2026-06-12 19:51:39,118.118 INFO    ] 2026-06-12 19:51:39
[2026-06-12 19:51:39,145.145 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 19:51:39,329.329 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 19:51:39,337.337 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 19:51:39,487.487 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 19:51:39,535.535 INFO    ] time= 12/06/2026 19:51:39
[2026-06-12 19:51:39,557.557 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 19:51:39,563.563 INFO    ] Checking for existing commands in stream...
[2026-06-12 19:51:39,629.629 INFO    ] No existing commands found in stream
[2026-06-12 19:51:44,638.638 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 19:51:44,641.641 INFO    ] Waiting 2.83 seconds before fallback handling...
[2026-06-12 19:51:47,878.878 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 19:51:47,880.880 INFO    ] Checking for system updates...
[2026-06-12 19:51:47,903.903 INFO    ] 200
[2026-06-12 19:51:47,905.905 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:51:47,935.935 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 19:51:47,936.936 INFO    ] No update needed
[2026-06-12 19:51:47,938.938 INFO    ] Checking for camera pi updates...
[2026-06-12 19:51:47,958.958 INFO    ] 200
[2026-06-12 19:51:47,959.959 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:51:47,986.986 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 19:51:48,029.029 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 19:51:48,031.031 INFO    ] No camera update needed
[2026-06-12 19:51:48,032.032 INFO    ] Script finished. Safe exiting...
[2026-06-12 19:51:48,038.038 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 19:51:48,041.041 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 19:51:48,044.044 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 19:51:50,083.083 INFO    ] ================================================
[2026-06-12 19:51:50,098.098 INFO    ] Launching Daemon at Fri Jun 12 19:51:50 IST 2026
[2026-06-12 19:51:50,109.109 INFO    ] ================================================
[2026-06-12 19:51:50,461.461 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 19:51:50
[2026-06-12 19:51:50,771.771 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 19:51:50,901.901 INFO    ] Initializing speech engine...
[2026-06-12 19:51:50,909.909 INFO    ] 2026-06-12 19:51:50
[2026-06-12 19:51:51,119.119 INFO    ] 2026-06-12 19:51:51
[2026-06-12 19:51:51,148.148 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 19:51:51,330.330 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 19:51:51,339.339 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 19:51:51,489.489 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 19:51:51,536.536 INFO    ] time= 12/06/2026 19:51:51
[2026-06-12 19:51:51,558.558 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 19:51:51,564.564 INFO    ] Checking for existing commands in stream...
[2026-06-12 19:51:51,629.629 INFO    ] No existing commands found in stream
[2026-06-12 19:51:56,639.639 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 19:51:56,642.642 INFO    ] Waiting 3.51 seconds before fallback handling...
[2026-06-12 19:52:00,536.536 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 19:52:00,538.538 INFO    ] Checking for system updates...
[2026-06-12 19:52:00,559.559 INFO    ] 200
[2026-06-12 19:52:00,561.561 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:52:00,592.592 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 19:52:00,593.593 INFO    ] No update needed
[2026-06-12 19:52:00,595.595 INFO    ] Checking for camera pi updates...
[2026-06-12 19:52:00,613.613 INFO    ] 200
[2026-06-12 19:52:00,615.615 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:52:00,640.640 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 19:52:00,706.706 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 19:52:00,707.707 INFO    ] No camera update needed
[2026-06-12 19:52:00,708.708 INFO    ] Script finished. Safe exiting...
[2026-06-12 19:52:00,710.710 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 19:52:00,713.713 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 19:52:00,715.715 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 19:52:02,748.748 INFO    ] ================================================
[2026-06-12 19:52:02,763.763 INFO    ] Launching Daemon at Fri Jun 12 19:52:02 IST 2026
[2026-06-12 19:52:02,774.774 INFO    ] ================================================
[2026-06-12 19:52:03,141.141 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 19:52:03
[2026-06-12 19:52:03,453.453 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 19:52:03,587.587 INFO    ] Initializing speech engine...
[2026-06-12 19:52:03,597.597 INFO    ] 2026-06-12 19:52:03
[2026-06-12 19:52:03,804.804 INFO    ] 2026-06-12 19:52:03
[2026-06-12 19:52:03,833.833 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 19:52:03,990.990 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 19:52:04,035.035 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 19:52:04,206.206 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 19:52:04,238.238 INFO    ] time= 12/06/2026 19:52:04
[2026-06-12 19:52:04,290.290 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 19:52:04,316.316 INFO    ] Checking for existing commands in stream...
[2026-06-12 19:52:04,392.392 INFO    ] No existing commands found in stream
[2026-06-12 19:52:09,403.403 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 19:52:09,406.406 INFO    ] Waiting 3.96 seconds before fallback handling...
[2026-06-12 19:52:13,721.721 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 19:52:13,722.722 INFO    ] Checking for system updates...
[2026-06-12 19:52:13,744.744 INFO    ] 200
[2026-06-12 19:52:13,746.746 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:52:13,775.775 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 19:52:13,777.777 INFO    ] No update needed
[2026-06-12 19:52:13,778.778 INFO    ] Checking for camera pi updates...
[2026-06-12 19:52:13,800.800 INFO    ] 200
[2026-06-12 19:52:13,801.801 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:52:13,829.829 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 19:52:13,871.871 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 19:52:13,873.873 INFO    ] No camera update needed
[2026-06-12 19:52:13,874.874 INFO    ] Script finished. Safe exiting...
[2026-06-12 19:52:13,875.875 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 19:52:13,878.878 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 19:52:13,882.882 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 19:52:15,923.923 INFO    ] ================================================
[2026-06-12 19:52:15,938.938 INFO    ] Launching Daemon at Fri Jun 12 19:52:15 IST 2026
[2026-06-12 19:52:15,949.949 INFO    ] ================================================
[2026-06-12 19:52:16,332.332 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 19:52:16
[2026-06-12 19:52:16,675.675 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 19:52:16,828.828 INFO    ] Initializing speech engine...
[2026-06-12 19:52:16,834.834 INFO    ] 2026-06-12 19:52:16
[2026-06-12 19:52:17,045.045 INFO    ] 2026-06-12 19:52:17
[2026-06-12 19:52:17,074.074 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 19:52:17,259.259 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 19:52:17,269.269 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 19:52:17,424.424 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 19:52:17,477.477 INFO    ] time= 12/06/2026 19:52:17
[2026-06-12 19:52:17,500.500 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 19:52:17,506.506 INFO    ] Checking for existing commands in stream...
[2026-06-12 19:52:17,573.573 INFO    ] No existing commands found in stream
[2026-06-12 19:52:22,588.588 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 19:52:22,591.591 INFO    ] Waiting 1.73 seconds before fallback handling...
[2026-06-12 19:52:24,712.712 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 19:52:24,714.714 INFO    ] Checking for system updates...
[2026-06-12 19:52:24,734.734 INFO    ] 200
[2026-06-12 19:52:24,736.736 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:52:24,766.766 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 19:52:24,767.767 INFO    ] No update needed
[2026-06-12 19:52:24,769.769 INFO    ] Checking for camera pi updates...
[2026-06-12 19:52:24,790.790 INFO    ] 200
[2026-06-12 19:52:24,791.791 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:52:24,814.814 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 19:52:24,873.873 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 19:52:24,875.875 INFO    ] No camera update needed
[2026-06-12 19:52:24,876.876 INFO    ] Script finished. Safe exiting...
[2026-06-12 19:52:24,877.877 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 19:52:24,880.880 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 19:52:24,883.883 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 19:52:26,921.921 INFO    ] ================================================
[2026-06-12 19:52:26,936.936 INFO    ] Launching Daemon at Fri Jun 12 19:52:26 IST 2026
[2026-06-12 19:52:26,947.947 INFO    ] ================================================
[2026-06-12 19:52:27,306.306 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 19:52:27
[2026-06-12 19:52:27,622.622 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 19:52:27,767.767 INFO    ] Initializing speech engine...
[2026-06-12 19:52:27,772.772 INFO    ] 2026-06-12 19:52:27
[2026-06-12 19:52:27,975.975 INFO    ] 2026-06-12 19:52:27
[2026-06-12 19:52:28,004.004 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 19:52:28,188.188 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 19:52:28,192.192 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 19:52:28,327.327 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 19:52:28,391.391 INFO    ] time= 12/06/2026 19:52:28
[2026-06-12 19:52:28,418.418 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 19:52:28,425.425 INFO    ] Checking for existing commands in stream...
[2026-06-12 19:52:28,541.541 INFO    ] No existing commands found in stream
[2026-06-12 19:52:33,551.551 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 19:52:33,554.554 INFO    ] Waiting 0.46 seconds before fallback handling...
[2026-06-12 19:52:34,392.392 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 19:52:34,393.393 INFO    ] Checking for system updates...
[2026-06-12 19:52:34,415.415 INFO    ] 200
[2026-06-12 19:52:34,416.416 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:52:34,446.446 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 19:52:34,447.447 INFO    ] No update needed
[2026-06-12 19:52:34,448.448 INFO    ] Checking for camera pi updates...
[2026-06-12 19:52:34,468.468 INFO    ] 200
[2026-06-12 19:52:34,469.469 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:52:34,492.492 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 19:52:34,546.546 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 19:52:34,547.547 INFO    ] No camera update needed
[2026-06-12 19:52:34,548.548 INFO    ] Script finished. Safe exiting...
[2026-06-12 19:52:34,550.550 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 19:52:34,553.553 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 19:52:34,556.556 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 19:52:36,598.598 INFO    ] ================================================
[2026-06-12 19:52:36,613.613 INFO    ] Launching Daemon at Fri Jun 12 19:52:36 IST 2026
[2026-06-12 19:52:36,625.625 INFO    ] ================================================
[2026-06-12 19:52:36,961.961 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 19:52:36
[2026-06-12 19:52:37,278.278 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 19:52:37,411.411 INFO    ] Initializing speech engine...
[2026-06-12 19:52:37,424.424 INFO    ] 2026-06-12 19:52:37
[2026-06-12 19:52:37,630.630 INFO    ] 2026-06-12 19:52:37
[2026-06-12 19:52:37,659.659 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 19:52:37,812.812 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 19:52:37,845.845 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 19:52:37,992.992 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 19:52:38,049.049 INFO    ] time= 12/06/2026 19:52:38
[2026-06-12 19:52:38,072.072 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 19:52:38,079.079 INFO    ] Checking for existing commands in stream...
[2026-06-12 19:52:38,146.146 INFO    ] No existing commands found in stream
[2026-06-12 19:52:43,160.160 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 19:52:43,163.163 INFO    ] Waiting 2.73 seconds before fallback handling...
[2026-06-12 19:52:46,288.288 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 19:52:46,289.289 INFO    ] Checking for system updates...
[2026-06-12 19:52:46,311.311 INFO    ] 200
[2026-06-12 19:52:46,313.313 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:52:46,345.345 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 19:52:46,346.346 INFO    ] No update needed
[2026-06-12 19:52:46,348.348 INFO    ] Checking for camera pi updates...
[2026-06-12 19:52:46,366.366 INFO    ] 200
[2026-06-12 19:52:46,368.368 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:52:46,391.391 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 19:52:46,442.442 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 19:52:46,443.443 INFO    ] No camera update needed
[2026-06-12 19:52:46,444.444 INFO    ] Script finished. Safe exiting...
[2026-06-12 19:52:46,445.445 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 19:52:46,448.448 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 19:52:46,451.451 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 19:52:48,491.491 INFO    ] ================================================
[2026-06-12 19:52:48,506.506 INFO    ] Launching Daemon at Fri Jun 12 19:52:48 IST 2026
[2026-06-12 19:52:48,517.517 INFO    ] ================================================
[2026-06-12 19:52:48,846.846 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 19:52:48
[2026-06-12 19:52:49,156.156 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 19:52:49,298.298 INFO    ] Initializing speech engine...
[2026-06-12 19:52:49,304.304 INFO    ] 2026-06-12 19:52:49
[2026-06-12 19:52:49,509.509 INFO    ] 2026-06-12 19:52:49
[2026-06-12 19:52:49,538.538 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 19:52:49,724.724 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 19:52:49,732.732 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 19:52:49,862.862 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 19:52:49,924.924 INFO    ] time= 12/06/2026 19:52:49
[2026-06-12 19:52:49,957.957 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 19:52:49,964.964 INFO    ] Checking for existing commands in stream...
[2026-06-12 19:52:50,031.031 INFO    ] No existing commands found in stream
[2026-06-12 19:52:55,040.040 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 19:52:55,043.043 INFO    ] Waiting 0.53 seconds before fallback handling...
[2026-06-12 19:52:55,982.982 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 19:52:55,984.984 INFO    ] Checking for system updates...
[2026-06-12 19:52:56,005.005 INFO    ] 200
[2026-06-12 19:52:56,006.006 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:52:56,041.041 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 19:52:56,042.042 INFO    ] No update needed
[2026-06-12 19:52:56,044.044 INFO    ] Checking for camera pi updates...
[2026-06-12 19:52:56,063.063 INFO    ] 200
[2026-06-12 19:52:56,065.065 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:52:56,091.091 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 19:52:56,133.133 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 19:52:56,135.135 INFO    ] No camera update needed
[2026-06-12 19:52:56,136.136 INFO    ] Script finished. Safe exiting...
[2026-06-12 19:52:56,137.137 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 19:52:56,140.140 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 19:52:56,143.143 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 19:52:58,182.182 INFO    ] ================================================
[2026-06-12 19:52:58,197.197 INFO    ] Launching Daemon at Fri Jun 12 19:52:58 IST 2026
[2026-06-12 19:52:58,207.207 INFO    ] ================================================
[2026-06-12 19:52:58,543.543 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 19:52:58
[2026-06-12 19:52:58,855.855 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 19:52:58,998.998 INFO    ] Initializing speech engine...
[2026-06-12 19:52:59,003.003 INFO    ] 2026-06-12 19:52:58
[2026-06-12 19:52:59,209.209 INFO    ] 2026-06-12 19:52:59
[2026-06-12 19:52:59,237.237 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 19:52:59,423.423 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 19:52:59,427.427 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 19:52:59,564.564 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 19:52:59,632.632 INFO    ] time= 12/06/2026 19:52:59
[2026-06-12 19:52:59,656.656 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 19:52:59,662.662 INFO    ] Checking for existing commands in stream...
[2026-06-12 19:52:59,729.729 INFO    ] No existing commands found in stream
[2026-06-12 19:53:04,748.748 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 19:53:04,751.751 INFO    ] Waiting 3.77 seconds before fallback handling...
[2026-06-12 19:53:08,891.891 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 19:53:08,892.892 INFO    ] Checking for system updates...
[2026-06-12 19:53:08,913.913 INFO    ] 200
[2026-06-12 19:53:08,914.914 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:53:08,944.944 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 19:53:08,945.945 INFO    ] No update needed
[2026-06-12 19:53:08,947.947 INFO    ] Checking for camera pi updates...
[2026-06-12 19:53:08,966.966 INFO    ] 200
[2026-06-12 19:53:08,967.967 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:53:08,992.992 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 19:53:09,045.045 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 19:53:09,047.047 INFO    ] No camera update needed
[2026-06-12 19:53:09,048.048 INFO    ] Script finished. Safe exiting...
[2026-06-12 19:53:09,049.049 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 19:53:09,052.052 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 19:53:09,055.055 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 19:53:11,092.092 INFO    ] ================================================
[2026-06-12 19:53:11,107.107 INFO    ] Launching Daemon at Fri Jun 12 19:53:11 IST 2026
[2026-06-12 19:53:11,118.118 INFO    ] ================================================
[2026-06-12 19:53:11,453.453 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 19:53:11
[2026-06-12 19:53:11,770.770 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 19:53:11,908.908 INFO    ] Initializing speech engine...
[2026-06-12 19:53:11,918.918 INFO    ] 2026-06-12 19:53:11
[2026-06-12 19:53:12,121.121 INFO    ] 2026-06-12 19:53:12
[2026-06-12 19:53:12,151.151 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 19:53:12,293.293 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 19:53:12,335.335 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 19:53:12,473.473 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 19:53:12,539.539 INFO    ] time= 12/06/2026 19:53:12
[2026-06-12 19:53:12,563.563 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 19:53:12,569.569 INFO    ] Checking for existing commands in stream...
[2026-06-12 19:53:12,636.636 INFO    ] No existing commands found in stream
[2026-06-12 19:53:17,650.650 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 19:53:17,653.653 INFO    ] Waiting 0.03 seconds before fallback handling...
[2026-06-12 19:53:18,047.047 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 19:53:18,048.048 INFO    ] Checking for system updates...
[2026-06-12 19:53:18,071.071 INFO    ] 200
[2026-06-12 19:53:18,072.072 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:53:18,102.102 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 19:53:18,104.104 INFO    ] No update needed
[2026-06-12 19:53:18,105.105 INFO    ] Checking for camera pi updates...
[2026-06-12 19:53:18,126.126 INFO    ] 200
[2026-06-12 19:53:18,127.127 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:53:18,153.153 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 19:53:18,200.200 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 19:53:18,202.202 INFO    ] No camera update needed
[2026-06-12 19:53:18,203.203 INFO    ] Script finished. Safe exiting...
[2026-06-12 19:53:18,205.205 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 19:53:18,208.208 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 19:53:18,211.211 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 19:53:20,250.250 INFO    ] ================================================
[2026-06-12 19:53:20,266.266 INFO    ] Launching Daemon at Fri Jun 12 19:53:20 IST 2026
[2026-06-12 19:53:20,276.276 INFO    ] ================================================
[2026-06-12 19:53:20,616.616 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 19:53:20
[2026-06-12 19:53:20,927.927 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 19:53:21,073.073 INFO    ] Initializing speech engine...
[2026-06-12 19:53:21,083.083 INFO    ] 2026-06-12 19:53:21
[2026-06-12 19:53:21,301.301 INFO    ] 2026-06-12 19:53:21
[2026-06-12 19:53:21,331.331 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 19:53:21,464.464 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 19:53:21,522.522 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 19:53:21,674.674 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 19:53:21,716.716 INFO    ] time= 12/06/2026 19:53:21
[2026-06-12 19:53:21,759.759 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 19:53:21,783.783 INFO    ] Checking for existing commands in stream...
[2026-06-12 19:53:21,860.860 INFO    ] No existing commands found in stream
[2026-06-12 19:53:26,886.886 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 19:53:26,889.889 INFO    ] Waiting 1.48 seconds before fallback handling...
[2026-06-12 19:53:28,700.700 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 19:53:28,702.702 INFO    ] Checking for system updates...
[2026-06-12 19:53:28,723.723 INFO    ] 200
[2026-06-12 19:53:28,724.724 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:53:28,757.757 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 19:53:28,758.758 INFO    ] No update needed
[2026-06-12 19:53:28,759.759 INFO    ] Checking for camera pi updates...
[2026-06-12 19:53:28,782.782 INFO    ] 200
[2026-06-12 19:53:28,783.783 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:53:28,807.807 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 19:53:28,849.849 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 19:53:28,851.851 INFO    ] No camera update needed
[2026-06-12 19:53:28,852.852 INFO    ] Script finished. Safe exiting...
[2026-06-12 19:53:28,853.853 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 19:53:28,856.856 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 19:53:28,859.859 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 19:53:30,884.884 INFO    ] ================================================
[2026-06-12 19:53:30,894.894 INFO    ] Launching Daemon at Fri Jun 12 19:53:30 IST 2026
[2026-06-12 19:53:30,900.900 INFO    ] ================================================
[2026-06-12 19:53:31,234.234 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 19:53:31
[2026-06-12 19:53:31,611.611 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 19:53:31,785.785 INFO    ] Initializing speech engine...
[2026-06-12 19:53:31,790.790 INFO    ] 2026-06-12 19:53:31
[2026-06-12 19:53:32,050.050 INFO    ] 2026-06-12 19:53:32
[2026-06-12 19:53:32,084.084 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 19:53:32,234.234 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 19:53:32,285.285 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 19:53:32,454.454 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 19:53:32,517.517 INFO    ] time= 12/06/2026 19:53:32
[2026-06-12 19:53:32,559.559 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 19:53:32,566.566 INFO    ] Checking for existing commands in stream...
[2026-06-12 19:53:32,634.634 INFO    ] No existing commands found in stream
[2026-06-12 19:53:37,645.645 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 19:53:37,647.647 INFO    ] Waiting 3.48 seconds before fallback handling...
[2026-06-12 19:53:41,448.448 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 19:53:41,450.450 INFO    ] Checking for system updates...
[2026-06-12 19:53:41,471.471 INFO    ] 200
[2026-06-12 19:53:41,472.472 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:53:41,502.502 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 19:53:41,503.503 INFO    ] No update needed
[2026-06-12 19:53:41,505.505 INFO    ] Checking for camera pi updates...
[2026-06-12 19:53:41,527.527 INFO    ] 200
[2026-06-12 19:53:41,528.528 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:53:41,554.554 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 19:53:41,597.597 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 19:53:41,598.598 INFO    ] No camera update needed
[2026-06-12 19:53:41,599.599 INFO    ] Script finished. Safe exiting...
[2026-06-12 19:53:41,601.601 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 19:53:41,604.604 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 19:53:41,607.607 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 19:53:43,645.645 INFO    ] ================================================
[2026-06-12 19:53:43,660.660 INFO    ] Launching Daemon at Fri Jun 12 19:53:43 IST 2026
[2026-06-12 19:53:43,671.671 INFO    ] ================================================
[2026-06-12 19:53:44,039.039 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 19:53:44
[2026-06-12 19:53:44,355.355 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 19:53:44,488.488 INFO    ] Initializing speech engine...
[2026-06-12 19:53:44,502.502 INFO    ] 2026-06-12 19:53:44
[2026-06-12 19:53:44,706.706 INFO    ] 2026-06-12 19:53:44
[2026-06-12 19:53:44,736.736 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 19:53:44,919.919 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 19:53:44,928.928 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 19:53:45,058.058 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 19:53:45,123.123 INFO    ] time= 12/06/2026 19:53:45
[2026-06-12 19:53:45,149.149 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 19:53:45,151.151 INFO    ] Checking for existing commands in stream...
[2026-06-12 19:53:45,246.246 INFO    ] No existing commands found in stream
[2026-06-12 19:53:50,260.260 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 19:53:50,263.263 INFO    ] Waiting 1.35 seconds before fallback handling...
[2026-06-12 19:53:51,947.947 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 19:53:51,950.950 INFO    ] Checking for system updates...
[2026-06-12 19:53:51,986.986 INFO    ] 200
[2026-06-12 19:53:51,989.989 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:53:52,042.042 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 19:53:52,044.044 INFO    ] No update needed
[2026-06-12 19:53:52,047.047 INFO    ] Checking for camera pi updates...
[2026-06-12 19:53:52,084.084 INFO    ] 200
[2026-06-12 19:53:52,086.086 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:53:52,130.130 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 19:53:52,185.185 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 19:53:52,187.187 INFO    ] No camera update needed
[2026-06-12 19:53:52,189.189 INFO    ] Script finished. Safe exiting...
[2026-06-12 19:53:52,192.192 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 19:53:52,197.197 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 19:53:52,202.202 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 19:53:54,242.242 INFO    ] ================================================
[2026-06-12 19:53:54,258.258 INFO    ] Launching Daemon at Fri Jun 12 19:53:54 IST 2026
[2026-06-12 19:53:54,268.268 INFO    ] ================================================
[2026-06-12 19:53:54,630.630 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 19:53:54
[2026-06-12 19:53:54,963.963 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 19:53:55,116.116 INFO    ] Initializing speech engine...
[2026-06-12 19:53:55,124.124 INFO    ] 2026-06-12 19:53:55
[2026-06-12 19:53:55,327.327 INFO    ] 2026-06-12 19:53:55
[2026-06-12 19:53:55,355.355 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 19:53:55,542.542 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 19:53:55,556.556 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 19:53:55,695.695 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 19:53:55,754.754 INFO    ] time= 12/06/2026 19:53:55
[2026-06-12 19:53:55,777.777 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 19:53:55,784.784 INFO    ] Checking for existing commands in stream...
[2026-06-12 19:53:55,851.851 INFO    ] No existing commands found in stream
[2026-06-12 19:54:00,861.861 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 19:54:00,864.864 INFO    ] Waiting 3.11 seconds before fallback handling...
[2026-06-12 19:54:04,358.358 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 19:54:04,360.360 INFO    ] Checking for system updates...
[2026-06-12 19:54:04,385.385 INFO    ] 200
[2026-06-12 19:54:04,386.386 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:54:04,418.418 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 19:54:04,419.419 INFO    ] No update needed
[2026-06-12 19:54:04,421.421 INFO    ] Checking for camera pi updates...
[2026-06-12 19:54:04,440.440 INFO    ] 200
[2026-06-12 19:54:04,442.442 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:54:04,464.464 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 19:54:04,507.507 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 19:54:04,509.509 INFO    ] No camera update needed
[2026-06-12 19:54:04,510.510 INFO    ] Script finished. Safe exiting...
[2026-06-12 19:54:04,512.512 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 19:54:04,515.515 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 19:54:04,517.517 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 19:54:06,555.555 INFO    ] ================================================
[2026-06-12 19:54:06,570.570 INFO    ] Launching Daemon at Fri Jun 12 19:54:06 IST 2026
[2026-06-12 19:54:06,581.581 INFO    ] ================================================
[2026-06-12 19:54:06,923.923 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 19:54:06
[2026-06-12 19:54:07,235.235 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 19:54:07,378.378 INFO    ] Initializing speech engine...
[2026-06-12 19:54:07,383.383 INFO    ] 2026-06-12 19:54:07
[2026-06-12 19:54:07,592.592 INFO    ] 2026-06-12 19:54:07
[2026-06-12 19:54:07,622.622 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 19:54:07,809.809 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 19:54:07,819.819 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 19:54:07,950.950 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 19:54:07,974.974 INFO    ] time= 12/06/2026 19:54:07
[2026-06-12 19:54:07,976.976 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 19:54:08,027.027 INFO    ] Checking for existing commands in stream...
[2026-06-12 19:54:08,126.126 INFO    ] No existing commands found in stream
[2026-06-12 19:54:13,137.137 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 19:54:13,140.140 INFO    ] Waiting 1.67 seconds before fallback handling...
[2026-06-12 19:54:15,195.195 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 19:54:15,197.197 INFO    ] Checking for system updates...
[2026-06-12 19:54:15,218.218 INFO    ] 200
[2026-06-12 19:54:15,220.220 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:54:15,250.250 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 19:54:15,251.251 INFO    ] No update needed
[2026-06-12 19:54:15,253.253 INFO    ] Checking for camera pi updates...
[2026-06-12 19:54:15,272.272 INFO    ] 200
[2026-06-12 19:54:15,273.273 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:54:15,298.298 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 19:54:15,344.344 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 19:54:15,345.345 INFO    ] No camera update needed
[2026-06-12 19:54:15,346.346 INFO    ] Script finished. Safe exiting...
[2026-06-12 19:54:15,347.347 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 19:54:15,351.351 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 19:54:15,353.353 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 19:54:17,395.395 INFO    ] ================================================
[2026-06-12 19:54:17,410.410 INFO    ] Launching Daemon at Fri Jun 12 19:54:17 IST 2026
[2026-06-12 19:54:17,421.421 INFO    ] ================================================
[2026-06-12 19:54:17,779.779 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 19:54:17
[2026-06-12 19:54:18,094.094 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 19:54:18,226.226 INFO    ] Initializing speech engine...
[2026-06-12 19:54:18,231.231 INFO    ] 2026-06-12 19:54:18
[2026-06-12 19:54:18,439.439 INFO    ] 2026-06-12 19:54:18
[2026-06-12 19:54:18,468.468 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 19:54:18,635.635 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 19:54:18,694.694 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 19:54:18,839.839 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 19:54:18,897.897 INFO    ] time= 12/06/2026 19:54:18
[2026-06-12 19:54:18,938.938 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 19:54:18,944.944 INFO    ] Checking for existing commands in stream...
[2026-06-12 19:54:19,021.021 INFO    ] No existing commands found in stream
[2026-06-12 19:54:24,051.051 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 19:54:24,054.054 INFO    ] Waiting 1.01 seconds before fallback handling...
[2026-06-12 19:54:25,461.461 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 19:54:25,462.462 INFO    ] Checking for system updates...
[2026-06-12 19:54:25,483.483 INFO    ] 200
[2026-06-12 19:54:25,484.484 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:54:25,516.516 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 19:54:25,517.517 INFO    ] No update needed
[2026-06-12 19:54:25,519.519 INFO    ] Checking for camera pi updates...
[2026-06-12 19:54:25,539.539 INFO    ] 200
[2026-06-12 19:54:25,540.540 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:54:25,564.564 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 19:54:25,629.629 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 19:54:25,631.631 INFO    ] No camera update needed
[2026-06-12 19:54:25,632.632 INFO    ] Script finished. Safe exiting...
[2026-06-12 19:54:25,633.633 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 19:54:25,636.636 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 19:54:25,639.639 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 19:54:27,677.677 INFO    ] ================================================
[2026-06-12 19:54:27,692.692 INFO    ] Launching Daemon at Fri Jun 12 19:54:27 IST 2026
[2026-06-12 19:54:27,703.703 INFO    ] ================================================
[2026-06-12 19:54:28,060.060 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 19:54:28
[2026-06-12 19:54:28,374.374 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 19:54:28,505.505 INFO    ] Initializing speech engine...
[2026-06-12 19:54:28,509.509 INFO    ] 2026-06-12 19:54:28
[2026-06-12 19:54:28,720.720 INFO    ] 2026-06-12 19:54:28
[2026-06-12 19:54:28,748.748 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 19:54:28,904.904 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 19:54:28,957.957 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 19:54:29,111.111 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 19:54:29,158.158 INFO    ] time= 12/06/2026 19:54:29
[2026-06-12 19:54:29,196.196 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 19:54:29,219.219 INFO    ] Checking for existing commands in stream...
[2026-06-12 19:54:29,296.296 INFO    ] No existing commands found in stream
[2026-06-12 19:54:34,305.305 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 19:54:34,308.308 INFO    ] Waiting 1.72 seconds before fallback handling...
[2026-06-12 19:54:36,408.408 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 19:54:36,410.410 INFO    ] Checking for system updates...
[2026-06-12 19:54:36,430.430 INFO    ] 200
[2026-06-12 19:54:36,432.432 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:54:36,463.463 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 19:54:36,464.464 INFO    ] No update needed
[2026-06-12 19:54:36,466.466 INFO    ] Checking for camera pi updates...
[2026-06-12 19:54:36,485.485 INFO    ] 200
[2026-06-12 19:54:36,487.487 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:54:36,510.510 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 19:54:36,652.652 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 19:54:36,653.653 INFO    ] No camera update needed
[2026-06-12 19:54:36,654.654 INFO    ] Script finished. Safe exiting...
[2026-06-12 19:54:36,656.656 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 19:54:36,659.659 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 19:54:36,662.662 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 19:54:38,700.700 INFO    ] ================================================
[2026-06-12 19:54:38,715.715 INFO    ] Launching Daemon at Fri Jun 12 19:54:38 IST 2026
[2026-06-12 19:54:38,726.726 INFO    ] ================================================
[2026-06-12 19:54:39,079.079 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 19:54:39
[2026-06-12 19:54:39,395.395 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 19:54:39,529.529 INFO    ] Initializing speech engine...
[2026-06-12 19:54:39,532.532 INFO    ] 2026-06-12 19:54:39
[2026-06-12 19:54:39,761.761 INFO    ] 2026-06-12 19:54:39
[2026-06-12 19:54:39,792.792 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 19:54:39,990.990 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 19:54:39,993.993 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 19:54:40,137.137 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 19:54:40,200.200 INFO    ] time= 12/06/2026 19:54:40
[2026-06-12 19:54:40,235.235 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 19:54:40,241.241 INFO    ] Checking for existing commands in stream...
[2026-06-12 19:54:40,317.317 INFO    ] No existing commands found in stream
[2026-06-12 19:54:45,326.326 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 19:54:45,329.329 INFO    ] Waiting 1.18 seconds before fallback handling...
[2026-06-12 19:54:46,887.887 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 19:54:46,889.889 INFO    ] Checking for system updates...
[2026-06-12 19:54:46,913.913 INFO    ] 200
[2026-06-12 19:54:46,915.915 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:54:46,947.947 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 19:54:46,949.949 INFO    ] No update needed
[2026-06-12 19:54:46,950.950 INFO    ] Checking for camera pi updates...
[2026-06-12 19:54:46,971.971 INFO    ] 200
[2026-06-12 19:54:46,973.973 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:54:46,996.996 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 19:54:47,022.022 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 19:54:47,024.024 INFO    ] No camera update needed
[2026-06-12 19:54:47,025.025 INFO    ] Script finished. Safe exiting...
[2026-06-12 19:54:47,026.026 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 19:54:47,029.029 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 19:54:47,033.033 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 19:54:49,071.071 INFO    ] ================================================
[2026-06-12 19:54:49,086.086 INFO    ] Launching Daemon at Fri Jun 12 19:54:49 IST 2026
[2026-06-12 19:54:49,097.097 INFO    ] ================================================
[2026-06-12 19:54:49,455.455 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 19:54:49
[2026-06-12 19:54:49,771.771 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 19:54:49,901.901 INFO    ] Initializing speech engine...
[2026-06-12 19:54:49,905.905 INFO    ] 2026-06-12 19:54:49
[2026-06-12 19:54:50,123.123 INFO    ] 2026-06-12 19:54:50
[2026-06-12 19:54:50,152.152 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 19:54:50,335.335 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 19:54:50,343.343 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 19:54:50,478.478 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 19:54:50,540.540 INFO    ] time= 12/06/2026 19:54:50
[2026-06-12 19:54:50,563.563 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 19:54:50,569.569 INFO    ] Checking for existing commands in stream...
[2026-06-12 19:54:50,635.635 INFO    ] No existing commands found in stream
[2026-06-12 19:54:55,649.649 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 19:54:55,652.652 INFO    ] Waiting 1.89 seconds before fallback handling...
[2026-06-12 19:54:57,878.878 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 19:54:57,880.880 INFO    ] Checking for system updates...
[2026-06-12 19:54:58,092.092 INFO    ] 200
[2026-06-12 19:54:58,093.093 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_HEALTH_CHECK"}
[2026-06-12 19:54:58,095.095 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping update check
[2026-06-12 19:54:58,096.096 INFO    ] Checking for camera pi updates...
[2026-06-12 19:54:58,147.147 INFO    ] 200
[2026-06-12 19:54:58,148.148 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_HEALTH_CHECK"}
[2026-06-12 19:54:58,150.150 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping camera update check
[2026-06-12 19:54:58,152.152 INFO    ] Script finished. Safe exiting...
[2026-06-12 19:54:58,153.153 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 19:54:58,156.156 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 19:54:58,160.160 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 19:55:00,191.191 INFO    ] ================================================
[2026-06-12 19:55:00,206.206 INFO    ] Launching Daemon at Fri Jun 12 19:55:00 IST 2026
[2026-06-12 19:55:00,217.217 INFO    ] ================================================
[2026-06-12 19:55:00,567.567 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 19:55:00
[2026-06-12 19:55:00,902.902 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 19:55:01,048.048 INFO    ] Initializing speech engine...
[2026-06-12 19:55:01,058.058 INFO    ] 2026-06-12 19:55:01
[2026-06-12 19:55:01,269.269 INFO    ] 2026-06-12 19:55:01
[2026-06-12 19:55:01,298.298 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 19:55:01,434.434 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 19:55:01,487.487 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 19:55:01,625.625 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 19:55:01,696.696 INFO    ] time= 12/06/2026 19:55:01
[2026-06-12 19:55:01,729.729 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 19:55:01,741.741 INFO    ] Checking for existing commands in stream...
[2026-06-12 19:55:01,816.816 INFO    ] No existing commands found in stream
[2026-06-12 19:55:06,856.856 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 19:55:06,859.859 INFO    ] Waiting 2.67 seconds before fallback handling...
[2026-06-12 19:55:09,899.899 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 19:55:09,901.901 INFO    ] Checking for system updates...
[2026-06-12 19:55:09,921.921 INFO    ] 200
[2026-06-12 19:55:09,922.922 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:55:09,954.954 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 19:55:09,955.955 INFO    ] No update needed
[2026-06-12 19:55:09,956.956 INFO    ] Checking for camera pi updates...
[2026-06-12 19:55:09,977.977 INFO    ] 200
[2026-06-12 19:55:09,978.978 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:55:10,001.001 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 19:55:10,045.045 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 19:55:10,047.047 INFO    ] No camera update needed
[2026-06-12 19:55:10,048.048 INFO    ] Script finished. Safe exiting...
[2026-06-12 19:55:10,049.049 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 19:55:10,052.052 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 19:55:10,055.055 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 19:55:12,093.093 INFO    ] ================================================
[2026-06-12 19:55:12,109.109 INFO    ] Launching Daemon at Fri Jun 12 19:55:12 IST 2026
[2026-06-12 19:55:12,119.119 INFO    ] ================================================
[2026-06-12 19:55:12,491.491 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 19:55:12
[2026-06-12 19:55:12,808.808 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 19:55:12,953.953 INFO    ] Initializing speech engine...
[2026-06-12 19:55:12,958.958 INFO    ] 2026-06-12 19:55:12
[2026-06-12 19:55:13,163.163 INFO    ] 2026-06-12 19:55:13
[2026-06-12 19:55:13,192.192 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 19:55:13,377.377 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 19:55:13,387.387 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 19:55:13,541.541 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 19:55:13,585.585 INFO    ] time= 12/06/2026 19:55:13
[2026-06-12 19:55:13,606.606 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 19:55:13,613.613 INFO    ] Checking for existing commands in stream...
[2026-06-12 19:55:13,679.679 INFO    ] No existing commands found in stream
[2026-06-12 19:55:18,712.712 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 19:55:18,715.715 INFO    ] Waiting 2.44 seconds before fallback handling...
[2026-06-12 19:55:21,492.492 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 19:55:21,493.493 INFO    ] Checking for system updates...
[2026-06-12 19:55:21,514.514 INFO    ] 200
[2026-06-12 19:55:21,515.515 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:55:21,545.545 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 19:55:21,546.546 INFO    ] No update needed
[2026-06-12 19:55:21,548.548 INFO    ] Checking for camera pi updates...
[2026-06-12 19:55:21,568.568 INFO    ] 200
[2026-06-12 19:55:21,570.570 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:55:21,594.594 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 19:55:21,641.641 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 19:55:21,642.642 INFO    ] No camera update needed
[2026-06-12 19:55:21,644.644 INFO    ] Script finished. Safe exiting...
[2026-06-12 19:55:21,645.645 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 19:55:21,648.648 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 19:55:21,651.651 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 19:55:23,690.690 INFO    ] ================================================
[2026-06-12 19:55:23,705.705 INFO    ] Launching Daemon at Fri Jun 12 19:55:23 IST 2026
[2026-06-12 19:55:23,727.727 INFO    ] ================================================
[2026-06-12 19:55:24,084.084 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 19:55:24
[2026-06-12 19:55:24,421.421 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 19:55:24,573.573 INFO    ] Initializing speech engine...
[2026-06-12 19:55:24,579.579 INFO    ] 2026-06-12 19:55:24
[2026-06-12 19:55:24,786.786 INFO    ] 2026-06-12 19:55:24
[2026-06-12 19:55:24,815.815 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 19:55:24,999.999 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 19:55:25,008.008 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 19:55:25,137.137 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 19:55:25,204.204 INFO    ] time= 12/06/2026 19:55:25
[2026-06-12 19:55:25,228.228 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 19:55:25,234.234 INFO    ] Checking for existing commands in stream...
[2026-06-12 19:55:25,324.324 INFO    ] No existing commands found in stream
[2026-06-12 19:55:30,339.339 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 19:55:30,342.342 INFO    ] Waiting 2.14 seconds before fallback handling...
[2026-06-12 19:55:32,829.829 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 19:55:32,831.831 INFO    ] Checking for system updates...
[2026-06-12 19:55:32,851.851 INFO    ] 200
[2026-06-12 19:55:32,853.853 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:55:32,883.883 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 19:55:32,884.884 INFO    ] No update needed
[2026-06-12 19:55:32,886.886 INFO    ] Checking for camera pi updates...
[2026-06-12 19:55:32,905.905 INFO    ] 200
[2026-06-12 19:55:32,907.907 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:55:32,930.930 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 19:55:32,964.964 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 19:55:32,966.966 INFO    ] No camera update needed
[2026-06-12 19:55:32,968.968 INFO    ] Script finished. Safe exiting...
[2026-06-12 19:55:32,969.969 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 19:55:32,973.973 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 19:55:32,976.976 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 19:55:35,015.015 INFO    ] ================================================
[2026-06-12 19:55:35,030.030 INFO    ] Launching Daemon at Fri Jun 12 19:55:35 IST 2026
[2026-06-12 19:55:35,041.041 INFO    ] ================================================
[2026-06-12 19:55:35,423.423 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 19:55:35
[2026-06-12 19:55:35,761.761 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 19:55:35,915.915 INFO    ] Initializing speech engine...
[2026-06-12 19:55:35,918.918 INFO    ] 2026-06-12 19:55:35
[2026-06-12 19:55:36,124.124 INFO    ] 2026-06-12 19:55:36
[2026-06-12 19:55:36,154.154 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 19:55:36,337.337 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 19:55:36,349.349 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 19:55:36,495.495 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 19:55:36,544.544 INFO    ] time= 12/06/2026 19:55:36
[2026-06-12 19:55:36,565.565 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 19:55:36,571.571 INFO    ] Checking for existing commands in stream...
[2026-06-12 19:55:36,662.662 INFO    ] No existing commands found in stream
[2026-06-12 19:55:41,676.676 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 19:55:41,680.680 INFO    ] Waiting 1.59 seconds before fallback handling...
[2026-06-12 19:55:43,628.628 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 19:55:43,630.630 INFO    ] Checking for system updates...
[2026-06-12 19:55:43,651.651 INFO    ] 200
[2026-06-12 19:55:43,652.652 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:55:43,682.682 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 19:55:43,684.684 INFO    ] No update needed
[2026-06-12 19:55:43,685.685 INFO    ] Checking for camera pi updates...
[2026-06-12 19:55:43,704.704 INFO    ] 200
[2026-06-12 19:55:43,706.706 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:55:43,731.731 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 19:55:43,780.780 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 19:55:43,781.781 INFO    ] No camera update needed
[2026-06-12 19:55:43,782.782 INFO    ] Script finished. Safe exiting...
[2026-06-12 19:55:43,784.784 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 19:55:43,787.787 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 19:55:43,790.790 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 19:55:45,835.835 INFO    ] ================================================
[2026-06-12 19:55:45,850.850 INFO    ] Launching Daemon at Fri Jun 12 19:55:45 IST 2026
[2026-06-12 19:55:45,860.860 INFO    ] ================================================
[2026-06-12 19:55:46,187.187 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 19:55:46
[2026-06-12 19:55:46,503.503 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 19:55:46,649.649 INFO    ] Initializing speech engine...
[2026-06-12 19:55:46,655.655 INFO    ] 2026-06-12 19:55:46
[2026-06-12 19:55:46,856.856 INFO    ] 2026-06-12 19:55:46
[2026-06-12 19:55:46,885.885 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 19:55:47,066.066 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 19:55:47,076.076 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 19:55:47,218.218 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 19:55:47,270.270 INFO    ] time= 12/06/2026 19:55:47
[2026-06-12 19:55:47,293.293 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 19:55:47,298.298 INFO    ] Checking for existing commands in stream...
[2026-06-12 19:55:47,365.365 INFO    ] No existing commands found in stream
[2026-06-12 19:55:52,374.374 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 19:55:52,376.376 INFO    ] Waiting 1.46 seconds before fallback handling...
[2026-06-12 19:55:54,197.197 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 19:55:54,199.199 INFO    ] Checking for system updates...
[2026-06-12 19:55:54,219.219 INFO    ] 200
[2026-06-12 19:55:54,221.221 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:55:54,252.252 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 19:55:54,254.254 INFO    ] No update needed
[2026-06-12 19:55:54,255.255 INFO    ] Checking for camera pi updates...
[2026-06-12 19:55:54,276.276 INFO    ] 200
[2026-06-12 19:55:54,277.277 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:55:54,302.302 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 19:55:54,343.343 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 19:55:54,345.345 INFO    ] No camera update needed
[2026-06-12 19:55:54,346.346 INFO    ] Script finished. Safe exiting...
[2026-06-12 19:55:54,347.347 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 19:55:54,350.350 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 19:55:54,353.353 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 19:55:56,392.392 INFO    ] ================================================
[2026-06-12 19:55:56,407.407 INFO    ] Launching Daemon at Fri Jun 12 19:55:56 IST 2026
[2026-06-12 19:55:56,418.418 INFO    ] ================================================
[2026-06-12 19:55:56,744.744 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 19:55:56
[2026-06-12 19:55:57,055.055 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 19:55:57,187.187 INFO    ] Initializing speech engine...
[2026-06-12 19:55:57,191.191 INFO    ] 2026-06-12 19:55:57
[2026-06-12 19:55:57,421.421 INFO    ] 2026-06-12 19:55:57
[2026-06-12 19:55:57,452.452 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 19:55:57,650.650 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 19:55:57,659.659 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 19:55:57,798.798 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 19:55:57,864.864 INFO    ] time= 12/06/2026 19:55:57
[2026-06-12 19:55:57,889.889 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 19:55:57,900.900 INFO    ] Checking for existing commands in stream...
[2026-06-12 19:55:57,976.976 INFO    ] No existing commands found in stream
[2026-06-12 19:56:02,986.986 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 19:56:02,989.989 INFO    ] Waiting 2.36 seconds before fallback handling...
[2026-06-12 19:56:05,728.728 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 19:56:05,730.730 INFO    ] Checking for system updates...
[2026-06-12 19:56:05,750.750 INFO    ] 200
[2026-06-12 19:56:05,752.752 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:56:05,782.782 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 19:56:05,783.783 INFO    ] No update needed
[2026-06-12 19:56:05,784.784 INFO    ] Checking for camera pi updates...
[2026-06-12 19:56:05,803.803 INFO    ] 200
[2026-06-12 19:56:05,804.804 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:56:05,829.829 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 19:56:05,878.878 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 19:56:05,879.879 INFO    ] No camera update needed
[2026-06-12 19:56:05,880.880 INFO    ] Script finished. Safe exiting...
[2026-06-12 19:56:05,882.882 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 19:56:05,885.885 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 19:56:05,887.887 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 19:56:07,924.924 INFO    ] ================================================
[2026-06-12 19:56:07,939.939 INFO    ] Launching Daemon at Fri Jun 12 19:56:07 IST 2026
[2026-06-12 19:56:07,950.950 INFO    ] ================================================
[2026-06-12 19:56:08,336.336 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 19:56:08
[2026-06-12 19:56:08,671.671 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 19:56:08,815.815 INFO    ] Initializing speech engine...
[2026-06-12 19:56:08,824.824 INFO    ] 2026-06-12 19:56:08
[2026-06-12 19:56:09,013.013 INFO    ] 2026-06-12 19:56:09
[2026-06-12 19:56:09,052.052 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 19:56:09,260.260 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 19:56:09,264.264 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 19:56:09,405.405 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 19:56:09,467.467 INFO    ] time= 12/06/2026 19:56:09
[2026-06-12 19:56:09,491.491 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 19:56:09,497.497 INFO    ] Checking for existing commands in stream...
[2026-06-12 19:56:09,564.564 INFO    ] No existing commands found in stream
[2026-06-12 19:56:14,574.574 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 19:56:14,581.581 INFO    ] Waiting 0.59 seconds before fallback handling...
[2026-06-12 19:56:15,547.547 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 19:56:15,548.548 INFO    ] Checking for system updates...
[2026-06-12 19:56:15,570.570 INFO    ] 200
[2026-06-12 19:56:15,572.572 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:56:15,601.601 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 19:56:15,602.602 INFO    ] No update needed
[2026-06-12 19:56:15,604.604 INFO    ] Checking for camera pi updates...
[2026-06-12 19:56:15,623.623 INFO    ] 200
[2026-06-12 19:56:15,624.624 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:56:15,647.647 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 19:56:15,710.710 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 19:56:15,712.712 INFO    ] No camera update needed
[2026-06-12 19:56:15,713.713 INFO    ] Script finished. Safe exiting...
[2026-06-12 19:56:15,714.714 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 19:56:15,717.717 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 19:56:15,720.720 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 19:56:17,758.758 INFO    ] ================================================
[2026-06-12 19:56:17,773.773 INFO    ] Launching Daemon at Fri Jun 12 19:56:17 IST 2026
[2026-06-12 19:56:17,784.784 INFO    ] ================================================
[2026-06-12 19:56:18,150.150 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 19:56:18
[2026-06-12 19:56:18,463.463 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 19:56:18,600.600 INFO    ] Initializing speech engine...
[2026-06-12 19:56:18,609.609 INFO    ] 2026-06-12 19:56:18
[2026-06-12 19:56:18,813.813 INFO    ] 2026-06-12 19:56:18
[2026-06-12 19:56:18,843.843 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 19:56:19,027.027 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 19:56:19,031.031 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 19:56:19,189.189 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 19:56:19,237.237 INFO    ] time= 12/06/2026 19:56:19
[2026-06-12 19:56:19,260.260 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 19:56:19,266.266 INFO    ] Checking for existing commands in stream...
[2026-06-12 19:56:19,333.333 INFO    ] No existing commands found in stream
[2026-06-12 19:56:24,347.347 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 19:56:24,350.350 INFO    ] Waiting 2.84 seconds before fallback handling...
[2026-06-12 19:56:27,567.567 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 19:56:27,569.569 INFO    ] Checking for system updates...
[2026-06-12 19:56:27,590.590 INFO    ] 200
[2026-06-12 19:56:27,592.592 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:56:27,623.623 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 19:56:27,625.625 INFO    ] No update needed
[2026-06-12 19:56:27,626.626 INFO    ] Checking for camera pi updates...
[2026-06-12 19:56:27,646.646 INFO    ] 200
[2026-06-12 19:56:27,648.648 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:56:27,671.671 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 19:56:27,709.709 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 19:56:27,710.710 INFO    ] No camera update needed
[2026-06-12 19:56:27,711.711 INFO    ] Script finished. Safe exiting...
[2026-06-12 19:56:27,713.713 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 19:56:27,716.716 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 19:56:27,718.718 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 19:56:29,756.756 INFO    ] ================================================
[2026-06-12 19:56:29,771.771 INFO    ] Launching Daemon at Fri Jun 12 19:56:29 IST 2026
[2026-06-12 19:56:29,782.782 INFO    ] ================================================
[2026-06-12 19:56:30,101.101 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 19:56:30
[2026-06-12 19:56:30,413.413 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 19:56:30,543.543 INFO    ] Initializing speech engine...
[2026-06-12 19:56:30,551.551 INFO    ] 2026-06-12 19:56:30
[2026-06-12 19:56:30,765.765 INFO    ] 2026-06-12 19:56:30
[2026-06-12 19:56:30,795.795 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 19:56:30,980.980 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 19:56:30,984.984 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 19:56:31,122.122 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 19:56:31,178.178 INFO    ] time= 12/06/2026 19:56:31
[2026-06-12 19:56:31,224.224 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 19:56:31,230.230 INFO    ] Checking for existing commands in stream...
[2026-06-12 19:56:31,300.300 INFO    ] No existing commands found in stream
[2026-06-12 19:56:36,333.333 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 19:56:36,335.335 INFO    ] Waiting 0.83 seconds before fallback handling...
[2026-06-12 19:56:37,551.551 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 19:56:37,553.553 INFO    ] Checking for system updates...
[2026-06-12 19:56:37,573.573 INFO    ] 200
[2026-06-12 19:56:37,574.574 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:56:37,604.604 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 19:56:37,605.605 INFO    ] No update needed
[2026-06-12 19:56:37,606.606 INFO    ] Checking for camera pi updates...
[2026-06-12 19:56:37,627.627 INFO    ] 200
[2026-06-12 19:56:37,629.629 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:56:37,651.651 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 19:56:37,699.699 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 19:56:37,700.700 INFO    ] No camera update needed
[2026-06-12 19:56:37,701.701 INFO    ] Script finished. Safe exiting...
[2026-06-12 19:56:37,703.703 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 19:56:37,705.705 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 19:56:37,708.708 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 19:56:39,748.748 INFO    ] ================================================
[2026-06-12 19:56:39,763.763 INFO    ] Launching Daemon at Fri Jun 12 19:56:39 IST 2026
[2026-06-12 19:56:39,774.774 INFO    ] ================================================
[2026-06-12 19:56:40,137.137 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 19:56:40
[2026-06-12 19:56:40,464.464 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 19:56:40,593.593 INFO    ] Initializing speech engine...
[2026-06-12 19:56:40,598.598 INFO    ] 2026-06-12 19:56:40
[2026-06-12 19:56:40,815.815 INFO    ] 2026-06-12 19:56:40
[2026-06-12 19:56:40,845.845 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 19:56:40,968.968 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 19:56:41,032.032 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 19:56:41,177.177 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 19:56:41,240.240 INFO    ] time= 12/06/2026 19:56:41
[2026-06-12 19:56:41,265.265 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 19:56:41,271.271 INFO    ] Checking for existing commands in stream...
[2026-06-12 19:56:41,339.339 INFO    ] No existing commands found in stream
[2026-06-12 19:56:46,353.353 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 19:56:46,356.356 INFO    ] Waiting 3.67 seconds before fallback handling...
[2026-06-12 19:56:50,414.414 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 19:56:50,415.415 INFO    ] Checking for system updates...
[2026-06-12 19:56:50,438.438 INFO    ] 200
[2026-06-12 19:56:50,439.439 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:56:50,472.472 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 19:56:50,474.474 INFO    ] No update needed
[2026-06-12 19:56:50,475.475 INFO    ] Checking for camera pi updates...
[2026-06-12 19:56:50,494.494 INFO    ] 200
[2026-06-12 19:56:50,496.496 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:56:50,519.519 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 19:56:50,659.659 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 19:56:50,661.661 INFO    ] No camera update needed
[2026-06-12 19:56:50,662.662 INFO    ] Script finished. Safe exiting...
[2026-06-12 19:56:50,663.663 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 19:56:50,667.667 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 19:56:50,670.670 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 19:56:52,709.709 INFO    ] ================================================
[2026-06-12 19:56:52,725.725 INFO    ] Launching Daemon at Fri Jun 12 19:56:52 IST 2026
[2026-06-12 19:56:52,735.735 INFO    ] ================================================
[2026-06-12 19:56:53,105.105 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 19:56:53
[2026-06-12 19:56:53,421.421 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 19:56:53,564.564 INFO    ] Initializing speech engine...
[2026-06-12 19:56:53,569.569 INFO    ] 2026-06-12 19:56:53
[2026-06-12 19:56:53,774.774 INFO    ] 2026-06-12 19:56:53
[2026-06-12 19:56:53,803.803 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 19:56:53,985.985 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 19:56:53,995.995 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 19:56:54,146.146 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 19:56:54,195.195 INFO    ] time= 12/06/2026 19:56:54
[2026-06-12 19:56:54,216.216 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 19:56:54,223.223 INFO    ] Checking for existing commands in stream...
[2026-06-12 19:56:54,289.289 INFO    ] No existing commands found in stream
[2026-06-12 19:56:59,303.303 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 19:56:59,306.306 INFO    ] Waiting 2.91 seconds before fallback handling...
[2026-06-12 19:57:02,531.531 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 19:57:02,533.533 INFO    ] Checking for system updates...
[2026-06-12 19:57:02,554.554 INFO    ] 200
[2026-06-12 19:57:02,555.555 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:57:02,587.587 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 19:57:02,588.588 INFO    ] No update needed
[2026-06-12 19:57:02,590.590 INFO    ] Checking for camera pi updates...
[2026-06-12 19:57:02,609.609 INFO    ] 200
[2026-06-12 19:57:02,611.611 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:57:02,634.634 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 19:57:02,667.667 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 19:57:02,669.669 INFO    ] No camera update needed
[2026-06-12 19:57:02,670.670 INFO    ] Script finished. Safe exiting...
[2026-06-12 19:57:02,671.671 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 19:57:02,674.674 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 19:57:02,677.677 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 19:57:04,716.716 INFO    ] ================================================
[2026-06-12 19:57:04,732.732 INFO    ] Launching Daemon at Fri Jun 12 19:57:04 IST 2026
[2026-06-12 19:57:04,743.743 INFO    ] ================================================
[2026-06-12 19:57:05,123.123 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 19:57:05
[2026-06-12 19:57:05,466.466 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 19:57:05,619.619 INFO    ] Initializing speech engine...
[2026-06-12 19:57:05,624.624 INFO    ] 2026-06-12 19:57:05
[2026-06-12 19:57:05,828.828 INFO    ] 2026-06-12 19:57:05
[2026-06-12 19:57:05,856.856 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 19:57:06,041.041 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 19:57:06,052.052 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 19:57:06,199.199 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 19:57:06,247.247 INFO    ] time= 12/06/2026 19:57:06
[2026-06-12 19:57:06,270.270 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 19:57:06,275.275 INFO    ] Checking for existing commands in stream...
[2026-06-12 19:57:06,342.342 INFO    ] No existing commands found in stream
[2026-06-12 19:57:11,361.361 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 19:57:11,364.364 INFO    ] Waiting 0.87 seconds before fallback handling...
[2026-06-12 19:57:12,646.646 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 19:57:12,647.647 INFO    ] Checking for system updates...
[2026-06-12 19:57:12,669.669 INFO    ] 200
[2026-06-12 19:57:12,671.671 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:57:12,701.701 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 19:57:12,703.703 INFO    ] No update needed
[2026-06-12 19:57:12,704.704 INFO    ] Checking for camera pi updates...
[2026-06-12 19:57:12,724.724 INFO    ] 200
[2026-06-12 19:57:12,725.725 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:57:12,748.748 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 19:57:12,802.802 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 19:57:12,803.803 INFO    ] No camera update needed
[2026-06-12 19:57:12,804.804 INFO    ] Script finished. Safe exiting...
[2026-06-12 19:57:12,806.806 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 19:57:12,809.809 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 19:57:12,816.816 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 19:57:14,854.854 INFO    ] ================================================
[2026-06-12 19:57:14,870.870 INFO    ] Launching Daemon at Fri Jun 12 19:57:14 IST 2026
[2026-06-12 19:57:14,881.881 INFO    ] ================================================
[2026-06-12 19:57:15,207.207 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 19:57:15
[2026-06-12 19:57:15,521.521 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 19:57:15,658.658 INFO    ] Initializing speech engine...
[2026-06-12 19:57:15,668.668 INFO    ] 2026-06-12 19:57:15
[2026-06-12 19:57:15,873.873 INFO    ] 2026-06-12 19:57:15
[2026-06-12 19:57:15,901.901 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 19:57:16,085.085 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 19:57:16,093.093 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 19:57:16,223.223 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 19:57:16,282.282 INFO    ] time= 12/06/2026 19:57:16
[2026-06-12 19:57:16,314.314 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 19:57:16,320.320 INFO    ] Checking for existing commands in stream...
[2026-06-12 19:57:16,387.387 INFO    ] No existing commands found in stream
[2026-06-12 19:57:21,396.396 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 19:57:21,398.398 INFO    ] Waiting 1.77 seconds before fallback handling...
[2026-06-12 19:57:23,611.611 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 19:57:23,613.613 INFO    ] Checking for system updates...
[2026-06-12 19:57:23,637.637 INFO    ] 200
[2026-06-12 19:57:23,638.638 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:57:23,673.673 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 19:57:23,675.675 INFO    ] No update needed
[2026-06-12 19:57:23,677.677 INFO    ] Checking for camera pi updates...
[2026-06-12 19:57:23,700.700 INFO    ] 200
[2026-06-12 19:57:23,702.702 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:57:23,728.728 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 19:57:23,781.781 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 19:57:23,783.783 INFO    ] No camera update needed
[2026-06-12 19:57:23,785.785 INFO    ] Script finished. Safe exiting...
[2026-06-12 19:57:23,787.787 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 19:57:23,791.791 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 19:57:23,794.794 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 19:57:25,826.826 INFO    ] ================================================
[2026-06-12 19:57:25,841.841 INFO    ] Launching Daemon at Fri Jun 12 19:57:25 IST 2026
[2026-06-12 19:57:25,853.853 INFO    ] ================================================
[2026-06-12 19:57:26,213.213 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 19:57:26
[2026-06-12 19:57:26,524.524 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 19:57:26,653.653 INFO    ] Initializing speech engine...
[2026-06-12 19:57:26,658.658 INFO    ] 2026-06-12 19:57:26
[2026-06-12 19:57:26,874.874 INFO    ] 2026-06-12 19:57:26
[2026-06-12 19:57:26,903.903 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 19:57:27,039.039 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 19:57:27,087.087 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 19:57:27,217.217 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 19:57:27,253.253 INFO    ] time= 12/06/2026 19:57:27
[2026-06-12 19:57:27,254.254 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 19:57:27,256.256 INFO    ] Checking for existing commands in stream...
[2026-06-12 19:57:27,316.316 INFO    ] No existing commands found in stream
[2026-06-12 19:57:32,325.325 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 19:57:32,327.327 INFO    ] Waiting 3.54 seconds before fallback handling...
[2026-06-12 19:57:36,267.267 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 19:57:36,269.269 INFO    ] Checking for system updates...
[2026-06-12 19:57:36,290.290 INFO    ] 200
[2026-06-12 19:57:36,291.291 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:57:36,322.322 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 19:57:36,323.323 INFO    ] No update needed
[2026-06-12 19:57:36,324.324 INFO    ] Checking for camera pi updates...
[2026-06-12 19:57:36,344.344 INFO    ] 200
[2026-06-12 19:57:36,345.345 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:57:36,369.369 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 19:57:36,418.418 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 19:57:36,420.420 INFO    ] No camera update needed
[2026-06-12 19:57:36,421.421 INFO    ] Script finished. Safe exiting...
[2026-06-12 19:57:36,423.423 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 19:57:36,426.426 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 19:57:36,429.429 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 19:57:38,468.468 INFO    ] ================================================
[2026-06-12 19:57:38,483.483 INFO    ] Launching Daemon at Fri Jun 12 19:57:38 IST 2026
[2026-06-12 19:57:38,497.497 INFO    ] ================================================
[2026-06-12 19:57:38,852.852 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 19:57:38
[2026-06-12 19:57:39,192.192 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 19:57:39,346.346 INFO    ] Initializing speech engine...
[2026-06-12 19:57:39,352.352 INFO    ] 2026-06-12 19:57:39
[2026-06-12 19:57:39,554.554 INFO    ] 2026-06-12 19:57:39
[2026-06-12 19:57:39,582.582 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 19:57:39,766.766 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 19:57:39,774.774 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 19:57:39,915.915 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 19:57:39,971.971 INFO    ] time= 12/06/2026 19:57:39
[2026-06-12 19:57:39,995.995 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 19:57:40,001.001 INFO    ] Checking for existing commands in stream...
[2026-06-12 19:57:40,068.068 INFO    ] No existing commands found in stream
[2026-06-12 19:57:45,082.082 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 19:57:45,084.084 INFO    ] Waiting 1.06 seconds before fallback handling...
[2026-06-12 19:57:46,519.519 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 19:57:46,521.521 INFO    ] Checking for system updates...
[2026-06-12 19:57:46,541.541 INFO    ] 200
[2026-06-12 19:57:46,543.543 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:57:46,575.575 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 19:57:46,576.576 INFO    ] No update needed
[2026-06-12 19:57:46,578.578 INFO    ] Checking for camera pi updates...
[2026-06-12 19:57:46,597.597 INFO    ] 200
[2026-06-12 19:57:46,598.598 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:57:46,623.623 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 19:57:46,665.665 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 19:57:46,666.666 INFO    ] No camera update needed
[2026-06-12 19:57:46,667.667 INFO    ] Script finished. Safe exiting...
[2026-06-12 19:57:46,668.668 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 19:57:46,672.672 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 19:57:46,674.674 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 19:57:48,715.715 INFO    ] ================================================
[2026-06-12 19:57:48,731.731 INFO    ] Launching Daemon at Fri Jun 12 19:57:48 IST 2026
[2026-06-12 19:57:48,743.743 INFO    ] ================================================
[2026-06-12 19:57:49,115.115 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 19:57:49
[2026-06-12 19:57:49,432.432 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 19:57:49,565.565 INFO    ] Initializing speech engine...
[2026-06-12 19:57:49,577.577 INFO    ] 2026-06-12 19:57:49
[2026-06-12 19:57:49,783.783 INFO    ] 2026-06-12 19:57:49
[2026-06-12 19:57:49,813.813 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 19:57:49,994.994 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 19:57:49,998.998 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 19:57:50,133.133 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 19:57:50,201.201 INFO    ] time= 12/06/2026 19:57:50
[2026-06-12 19:57:50,224.224 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 19:57:50,230.230 INFO    ] Checking for existing commands in stream...
[2026-06-12 19:57:50,296.296 INFO    ] No existing commands found in stream
[2026-06-12 19:57:55,310.310 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 19:57:55,313.313 INFO    ] Waiting 3.68 seconds before fallback handling...
[2026-06-12 19:57:59,381.381 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 19:57:59,382.382 INFO    ] Checking for system updates...
[2026-06-12 19:57:59,403.403 INFO    ] 200
[2026-06-12 19:57:59,404.404 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:57:59,434.434 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 19:57:59,435.435 INFO    ] No update needed
[2026-06-12 19:57:59,436.436 INFO    ] Checking for camera pi updates...
[2026-06-12 19:57:59,457.457 INFO    ] 200
[2026-06-12 19:57:59,459.459 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:57:59,483.483 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 19:57:59,530.530 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 19:57:59,532.532 INFO    ] No camera update needed
[2026-06-12 19:57:59,533.533 INFO    ] Script finished. Safe exiting...
[2026-06-12 19:57:59,534.534 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 19:57:59,537.537 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 19:57:59,540.540 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 19:58:01,593.593 INFO    ] ================================================
[2026-06-12 19:58:01,608.608 INFO    ] Launching Daemon at Fri Jun 12 19:58:01 IST 2026
[2026-06-12 19:58:01,628.628 INFO    ] ================================================
[2026-06-12 19:58:02,058.058 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 19:58:02
[2026-06-12 19:58:02,434.434 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 19:58:02,599.599 INFO    ] Initializing speech engine...
[2026-06-12 19:58:02,604.604 INFO    ] 2026-06-12 19:58:02
[2026-06-12 19:58:02,833.833 INFO    ] 2026-06-12 19:58:02
[2026-06-12 19:58:02,874.874 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 19:58:03,007.007 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 19:58:03,060.060 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 19:58:03,225.225 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 19:58:03,284.284 INFO    ] time= 12/06/2026 19:58:03
[2026-06-12 19:58:03,319.319 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 19:58:03,325.325 INFO    ] Checking for existing commands in stream...
[2026-06-12 19:58:03,401.401 INFO    ] No existing commands found in stream
[2026-06-12 19:58:08,412.412 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 19:58:08,415.415 INFO    ] Waiting 1.01 seconds before fallback handling...
[2026-06-12 19:58:09,789.789 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 19:58:09,791.791 INFO    ] Checking for system updates...
[2026-06-12 19:58:09,811.811 INFO    ] 200
[2026-06-12 19:58:09,813.813 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:58:09,845.845 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 19:58:09,846.846 INFO    ] No update needed
[2026-06-12 19:58:09,847.847 INFO    ] Checking for camera pi updates...
[2026-06-12 19:58:09,867.867 INFO    ] 200
[2026-06-12 19:58:09,868.868 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:58:09,893.893 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 19:58:09,948.948 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 19:58:09,949.949 INFO    ] No camera update needed
[2026-06-12 19:58:09,951.951 INFO    ] Script finished. Safe exiting...
[2026-06-12 19:58:09,952.952 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 19:58:09,955.955 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 19:58:09,958.958 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 19:58:12,996.996 INFO    ] ================================================
[2026-06-12 19:58:12,011.011 INFO    ] Launching Daemon at Fri Jun 12 19:58:12 IST 2026
[2026-06-12 19:58:12,022.022 INFO    ] ================================================
[2026-06-12 19:58:12,379.379 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 19:58:12
[2026-06-12 19:58:12,720.720 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 19:58:12,874.874 INFO    ] Initializing speech engine...
[2026-06-12 19:58:12,879.879 INFO    ] 2026-06-12 19:58:12
[2026-06-12 19:58:13,090.090 INFO    ] 2026-06-12 19:58:13
[2026-06-12 19:58:13,119.119 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 19:58:13,307.307 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 19:58:13,317.317 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 19:58:13,448.448 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 19:58:13,516.516 INFO    ] time= 12/06/2026 19:58:13
[2026-06-12 19:58:13,541.541 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 19:58:13,547.547 INFO    ] Checking for existing commands in stream...
[2026-06-12 19:58:13,615.615 INFO    ] No existing commands found in stream
[2026-06-12 19:58:18,640.640 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 19:58:18,644.644 INFO    ] Waiting 3.27 seconds before fallback handling...
[2026-06-12 19:58:22,278.278 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 19:58:22,280.280 INFO    ] Checking for system updates...
[2026-06-12 19:58:22,302.302 INFO    ] 200
[2026-06-12 19:58:22,303.303 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:58:22,336.336 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 19:58:22,337.337 INFO    ] No update needed
[2026-06-12 19:58:22,339.339 INFO    ] Checking for camera pi updates...
[2026-06-12 19:58:22,361.361 INFO    ] 200
[2026-06-12 19:58:22,362.362 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:58:22,389.389 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 19:58:22,435.435 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 19:58:22,437.437 INFO    ] No camera update needed
[2026-06-12 19:58:22,438.438 INFO    ] Script finished. Safe exiting...
[2026-06-12 19:58:22,440.440 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 19:58:22,443.443 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 19:58:22,446.446 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 19:58:24,485.485 INFO    ] ================================================
[2026-06-12 19:58:24,501.501 INFO    ] Launching Daemon at Fri Jun 12 19:58:24 IST 2026
[2026-06-12 19:58:24,512.512 INFO    ] ================================================
[2026-06-12 19:58:24,867.867 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 19:58:24
[2026-06-12 19:58:25,190.190 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 19:58:25,322.322 INFO    ] Initializing speech engine...
[2026-06-12 19:58:25,334.334 INFO    ] 2026-06-12 19:58:25
[2026-06-12 19:58:25,540.540 INFO    ] 2026-06-12 19:58:25
[2026-06-12 19:58:25,568.568 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 19:58:25,752.752 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 19:58:25,761.761 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 19:58:25,906.906 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 19:58:25,959.959 INFO    ] time= 12/06/2026 19:58:25
[2026-06-12 19:58:25,981.981 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 19:58:25,988.988 INFO    ] Checking for existing commands in stream...
[2026-06-12 19:58:26,078.078 INFO    ] No existing commands found in stream
[2026-06-12 19:58:31,087.087 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 19:58:31,089.089 INFO    ] Waiting 0.08 seconds before fallback handling...
[2026-06-12 19:58:31,517.517 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 19:58:31,518.518 INFO    ] Checking for system updates...
[2026-06-12 19:58:31,538.538 INFO    ] 200
[2026-06-12 19:58:31,540.540 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:58:31,572.572 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 19:58:31,574.574 INFO    ] No update needed
[2026-06-12 19:58:31,576.576 INFO    ] Checking for camera pi updates...
[2026-06-12 19:58:31,608.608 INFO    ] 200
[2026-06-12 19:58:31,610.610 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:58:31,642.642 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 19:58:31,696.696 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 19:58:31,697.697 INFO    ] No camera update needed
[2026-06-12 19:58:31,699.699 INFO    ] Script finished. Safe exiting...
[2026-06-12 19:58:31,701.701 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 19:58:31,705.705 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 19:58:31,709.709 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 19:58:33,741.741 INFO    ] ================================================
[2026-06-12 19:58:33,757.757 INFO    ] Launching Daemon at Fri Jun 12 19:58:33 IST 2026
[2026-06-12 19:58:33,768.768 INFO    ] ================================================
[2026-06-12 19:58:34,135.135 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 19:58:34
[2026-06-12 19:58:34,446.446 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 19:58:34,580.580 INFO    ] Initializing speech engine...
[2026-06-12 19:58:34,584.584 INFO    ] 2026-06-12 19:58:34
[2026-06-12 19:58:34,780.780 INFO    ] 2026-06-12 19:58:34
[2026-06-12 19:58:34,824.824 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 19:58:34,982.982 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 19:58:35,007.007 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 19:58:35,159.159 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 19:58:35,184.184 INFO    ] time= 12/06/2026 19:58:35
[2026-06-12 19:58:35,240.240 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 19:58:35,274.274 INFO    ] Checking for existing commands in stream...
[2026-06-12 19:58:35,384.384 INFO    ] No existing commands found in stream
[2026-06-12 19:58:40,394.394 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 19:58:40,397.397 INFO    ] Waiting 1.66 seconds before fallback handling...
[2026-06-12 19:58:42,488.488 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 19:58:42,489.489 INFO    ] Checking for system updates...
[2026-06-12 19:58:42,510.510 INFO    ] 200
[2026-06-12 19:58:42,511.511 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:58:42,542.542 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 19:58:42,543.543 INFO    ] No update needed
[2026-06-12 19:58:42,545.545 INFO    ] Checking for camera pi updates...
[2026-06-12 19:58:42,566.566 INFO    ] 200
[2026-06-12 19:58:42,567.567 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:58:42,592.592 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 19:58:42,639.639 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 19:58:42,641.641 INFO    ] No camera update needed
[2026-06-12 19:58:42,642.642 INFO    ] Script finished. Safe exiting...
[2026-06-12 19:58:42,643.643 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 19:58:42,646.646 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 19:58:42,649.649 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 19:58:44,687.687 INFO    ] ================================================
[2026-06-12 19:58:44,703.703 INFO    ] Launching Daemon at Fri Jun 12 19:58:44 IST 2026
[2026-06-12 19:58:44,713.713 INFO    ] ================================================
[2026-06-12 19:58:45,049.049 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 19:58:45
[2026-06-12 19:58:45,360.360 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 19:58:45,491.491 INFO    ] Initializing speech engine...
[2026-06-12 19:58:45,495.495 INFO    ] 2026-06-12 19:58:45
[2026-06-12 19:58:45,704.704 INFO    ] 2026-06-12 19:58:45
[2026-06-12 19:58:45,732.732 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 19:58:45,950.950 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 19:58:45,954.954 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 19:58:46,089.089 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 19:58:46,150.150 INFO    ] time= 12/06/2026 19:58:46
[2026-06-12 19:58:46,183.183 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 19:58:46,190.190 INFO    ] Checking for existing commands in stream...
[2026-06-12 19:58:46,301.301 INFO    ] No existing commands found in stream
[2026-06-12 19:58:51,310.310 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 19:58:51,312.312 INFO    ] Waiting 1.57 seconds before fallback handling...
[2026-06-12 19:58:53,251.251 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 19:58:53,252.252 INFO    ] Checking for system updates...
[2026-06-12 19:58:53,273.273 INFO    ] 200
[2026-06-12 19:58:53,274.274 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:58:53,308.308 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 19:58:53,310.310 INFO    ] No update needed
[2026-06-12 19:58:53,311.311 INFO    ] Checking for camera pi updates...
[2026-06-12 19:58:53,330.330 INFO    ] 200
[2026-06-12 19:58:53,332.332 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:58:53,354.354 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 19:58:53,494.494 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 19:58:53,495.495 INFO    ] No camera update needed
[2026-06-12 19:58:53,496.496 INFO    ] Script finished. Safe exiting...
[2026-06-12 19:58:53,498.498 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 19:58:53,501.501 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 19:58:53,503.503 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 19:58:55,542.542 INFO    ] ================================================
[2026-06-12 19:58:55,558.558 INFO    ] Launching Daemon at Fri Jun 12 19:58:55 IST 2026
[2026-06-12 19:58:55,570.570 INFO    ] ================================================
[2026-06-12 19:58:55,935.935 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 19:58:55
[2026-06-12 19:58:56,246.246 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 19:58:56,379.379 INFO    ] Initializing speech engine...
[2026-06-12 19:58:56,389.389 INFO    ] 2026-06-12 19:58:56
[2026-06-12 19:58:56,612.612 INFO    ] 2026-06-12 19:58:56
[2026-06-12 19:58:56,643.643 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 19:58:56,843.843 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 19:58:56,846.846 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 19:58:56,993.993 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 19:58:57,057.057 INFO    ] time= 12/06/2026 19:58:57
[2026-06-12 19:58:57,091.091 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 19:58:57,098.098 INFO    ] Checking for existing commands in stream...
[2026-06-12 19:58:57,170.170 INFO    ] No existing commands found in stream
[2026-06-12 19:59:02,178.178 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 19:59:02,181.181 INFO    ] Waiting 3.37 seconds before fallback handling...
[2026-06-12 19:59:05,927.927 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 19:59:05,928.928 INFO    ] Checking for system updates...
[2026-06-12 19:59:05,949.949 INFO    ] 200
[2026-06-12 19:59:05,950.950 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:59:05,982.982 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 19:59:05,983.983 INFO    ] No update needed
[2026-06-12 19:59:05,985.985 INFO    ] Checking for camera pi updates...
[2026-06-12 19:59:06,004.004 INFO    ] 200
[2026-06-12 19:59:06,005.005 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:59:06,028.028 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 19:59:06,078.078 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 19:59:06,079.079 INFO    ] No camera update needed
[2026-06-12 19:59:06,081.081 INFO    ] Script finished. Safe exiting...
[2026-06-12 19:59:06,082.082 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 19:59:06,085.085 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 19:59:06,088.088 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 19:59:08,126.126 INFO    ] ================================================
[2026-06-12 19:59:08,142.142 INFO    ] Launching Daemon at Fri Jun 12 19:59:08 IST 2026
[2026-06-12 19:59:08,153.153 INFO    ] ================================================
[2026-06-12 19:59:08,488.488 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 19:59:08
[2026-06-12 19:59:08,806.806 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 19:59:08,951.951 INFO    ] Initializing speech engine...
[2026-06-12 19:59:08,956.956 INFO    ] 2026-06-12 19:59:08
[2026-06-12 19:59:09,159.159 INFO    ] 2026-06-12 19:59:09
[2026-06-12 19:59:09,188.188 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 19:59:09,374.374 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 19:59:09,383.383 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 19:59:09,514.514 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 19:59:09,573.573 INFO    ] time= 12/06/2026 19:59:09
[2026-06-12 19:59:09,605.605 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 19:59:09,612.612 INFO    ] Checking for existing commands in stream...
[2026-06-12 19:59:09,679.679 INFO    ] No existing commands found in stream
[2026-06-12 19:59:14,688.688 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 19:59:14,691.691 INFO    ] Waiting 3.70 seconds before fallback handling...
[2026-06-12 19:59:18,758.758 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 19:59:18,760.760 INFO    ] Checking for system updates...
[2026-06-12 19:59:18,781.781 INFO    ] 200
[2026-06-12 19:59:18,783.783 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:59:18,815.815 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 19:59:18,816.816 INFO    ] No update needed
[2026-06-12 19:59:18,817.817 INFO    ] Checking for camera pi updates...
[2026-06-12 19:59:18,837.837 INFO    ] 200
[2026-06-12 19:59:18,838.838 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:59:18,861.861 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 19:59:18,910.910 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 19:59:18,911.911 INFO    ] No camera update needed
[2026-06-12 19:59:18,913.913 INFO    ] Script finished. Safe exiting...
[2026-06-12 19:59:18,914.914 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 19:59:18,917.917 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 19:59:18,920.920 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 19:59:20,958.958 INFO    ] ================================================
[2026-06-12 19:59:20,974.974 INFO    ] Launching Daemon at Fri Jun 12 19:59:20 IST 2026
[2026-06-12 19:59:20,985.985 INFO    ] ================================================
[2026-06-12 19:59:21,343.343 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 19:59:21
[2026-06-12 19:59:21,681.681 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 19:59:21,819.819 INFO    ] Initializing speech engine...
[2026-06-12 19:59:21,827.827 INFO    ] 2026-06-12 19:59:21
[2026-06-12 19:59:22,044.044 INFO    ] 2026-06-12 19:59:22
[2026-06-12 19:59:22,074.074 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 19:59:22,197.197 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 19:59:22,260.260 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 19:59:22,398.398 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 19:59:22,465.465 INFO    ] time= 12/06/2026 19:59:22
[2026-06-12 19:59:22,489.489 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 19:59:22,496.496 INFO    ] Checking for existing commands in stream...
[2026-06-12 19:59:22,563.563 INFO    ] No existing commands found in stream
[2026-06-12 19:59:27,578.578 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 19:59:27,581.581 INFO    ] Waiting 3.04 seconds before fallback handling...
[2026-06-12 19:59:31,017.017 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 19:59:31,019.019 INFO    ] Checking for system updates...
[2026-06-12 19:59:31,041.041 INFO    ] 200
[2026-06-12 19:59:31,043.043 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:59:31,073.073 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 19:59:31,075.075 INFO    ] No update needed
[2026-06-12 19:59:31,076.076 INFO    ] Checking for camera pi updates...
[2026-06-12 19:59:31,095.095 INFO    ] 200
[2026-06-12 19:59:31,097.097 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:59:31,120.120 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 19:59:31,166.166 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 19:59:31,167.167 INFO    ] No camera update needed
[2026-06-12 19:59:31,169.169 INFO    ] Script finished. Safe exiting...
[2026-06-12 19:59:31,170.170 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 19:59:31,174.174 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 19:59:31,176.176 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 19:59:33,210.210 INFO    ] ================================================
[2026-06-12 19:59:33,226.226 INFO    ] Launching Daemon at Fri Jun 12 19:59:33 IST 2026
[2026-06-12 19:59:33,237.237 INFO    ] ================================================
[2026-06-12 19:59:33,597.597 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 19:59:33
[2026-06-12 19:59:33,909.909 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 19:59:34,040.040 INFO    ] Initializing speech engine...
[2026-06-12 19:59:34,045.045 INFO    ] 2026-06-12 19:59:34
[2026-06-12 19:59:34,264.264 INFO    ] 2026-06-12 19:59:34
[2026-06-12 19:59:34,292.292 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 19:59:34,432.432 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 19:59:34,480.480 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 19:59:34,618.618 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 19:59:34,673.673 INFO    ] time= 12/06/2026 19:59:34
[2026-06-12 19:59:34,704.704 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 19:59:34,714.714 INFO    ] Checking for existing commands in stream...
[2026-06-12 19:59:34,786.786 INFO    ] No existing commands found in stream
[2026-06-12 19:59:39,796.796 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 19:59:39,799.799 INFO    ] Waiting 0.75 seconds before fallback handling...
[2026-06-12 19:59:40,907.907 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 19:59:40,909.909 INFO    ] Checking for system updates...
[2026-06-12 19:59:40,931.931 INFO    ] 200
[2026-06-12 19:59:40,932.932 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:59:40,963.963 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 19:59:40,965.965 INFO    ] No update needed
[2026-06-12 19:59:40,966.966 INFO    ] Checking for camera pi updates...
[2026-06-12 19:59:40,987.987 INFO    ] 200
[2026-06-12 19:59:40,988.988 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:59:41,013.013 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 19:59:41,054.054 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 19:59:41,056.056 INFO    ] No camera update needed
[2026-06-12 19:59:41,057.057 INFO    ] Script finished. Safe exiting...
[2026-06-12 19:59:41,058.058 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 19:59:41,062.062 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 19:59:41,065.065 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 19:59:43,103.103 INFO    ] ================================================
[2026-06-12 19:59:43,118.118 INFO    ] Launching Daemon at Fri Jun 12 19:59:43 IST 2026
[2026-06-12 19:59:43,129.129 INFO    ] ================================================
[2026-06-12 19:59:43,480.480 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 19:59:43
[2026-06-12 19:59:43,819.819 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 19:59:43,970.970 INFO    ] Initializing speech engine...
[2026-06-12 19:59:43,975.975 INFO    ] 2026-06-12 19:59:43
[2026-06-12 19:59:44,186.186 INFO    ] 2026-06-12 19:59:44
[2026-06-12 19:59:44,215.215 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 19:59:44,384.384 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 19:59:44,404.404 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 19:59:44,546.546 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 19:59:44,610.610 INFO    ] time= 12/06/2026 19:59:44
[2026-06-12 19:59:44,632.632 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 19:59:44,639.639 INFO    ] Checking for existing commands in stream...
[2026-06-12 19:59:44,706.706 INFO    ] No existing commands found in stream
[2026-06-12 19:59:49,721.721 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 19:59:49,724.724 INFO    ] Waiting 0.75 seconds before fallback handling...
[2026-06-12 19:59:50,878.878 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 19:59:50,880.880 INFO    ] Checking for system updates...
[2026-06-12 19:59:50,902.902 INFO    ] 200
[2026-06-12 19:59:50,904.904 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:59:50,936.936 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 19:59:50,937.937 INFO    ] No update needed
[2026-06-12 19:59:50,939.939 INFO    ] Checking for camera pi updates...
[2026-06-12 19:59:50,961.961 INFO    ] 200
[2026-06-12 19:59:50,963.963 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 19:59:50,986.986 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 19:59:51,038.038 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 19:59:51,040.040 INFO    ] No camera update needed
[2026-06-12 19:59:51,042.042 INFO    ] Script finished. Safe exiting...
[2026-06-12 19:59:51,043.043 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 19:59:51,046.046 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 19:59:51,049.049 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 19:59:53,087.087 INFO    ] ================================================
[2026-06-12 19:59:53,103.103 INFO    ] Launching Daemon at Fri Jun 12 19:59:53 IST 2026
[2026-06-12 19:59:53,114.114 INFO    ] ================================================
[2026-06-12 19:59:53,449.449 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 19:59:53
[2026-06-12 19:59:53,760.760 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 19:59:53,891.891 INFO    ] Initializing speech engine...
[2026-06-12 19:59:53,895.895 INFO    ] 2026-06-12 19:59:53
[2026-06-12 19:59:54,113.113 INFO    ] 2026-06-12 19:59:54
[2026-06-12 19:59:54,143.143 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 19:59:54,331.331 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 19:59:54,339.339 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 19:59:54,464.464 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 19:59:54,525.525 INFO    ] time= 12/06/2026 19:59:54
[2026-06-12 19:59:54,561.561 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 19:59:54,571.571 INFO    ] Checking for existing commands in stream...
[2026-06-12 19:59:54,639.639 INFO    ] No existing commands found in stream
[2026-06-12 19:59:59,648.648 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 19:59:59,651.651 INFO    ] Waiting 2.70 seconds before fallback handling...
[2026-06-12 20:00:02,740.740 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 20:00:02,742.742 INFO    ] Checking for system updates...
[2026-06-12 20:00:02,790.790 INFO    ] 200
[2026-06-12 20:00:02,792.792 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:00:02,944.944 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 20:00:02,946.946 INFO    ] No update needed
[2026-06-12 20:00:02,948.948 INFO    ] Checking for camera pi updates...
[2026-06-12 20:00:03,072.072 INFO    ] 200
[2026-06-12 20:00:03,074.074 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:00:03,209.209 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 20:00:03,269.269 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 20:00:03,271.271 INFO    ] No camera update needed
[2026-06-12 20:00:03,273.273 INFO    ] Script finished. Safe exiting...
[2026-06-12 20:00:03,276.276 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 20:00:03,291.291 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 20:00:03,295.295 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 20:00:05,328.328 INFO    ] ================================================
[2026-06-12 20:00:05,344.344 INFO    ] Launching Daemon at Fri Jun 12 20:00:05 IST 2026
[2026-06-12 20:00:05,355.355 INFO    ] ================================================
[2026-06-12 20:00:05,715.715 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 20:00:05
[2026-06-12 20:00:06,032.032 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 20:00:06,172.172 INFO    ] Initializing speech engine...
[2026-06-12 20:00:06,176.176 INFO    ] 2026-06-12 20:00:06
[2026-06-12 20:00:06,405.405 INFO    ] 2026-06-12 20:00:06
[2026-06-12 20:00:06,436.436 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 20:00:06,634.634 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 20:00:06,637.637 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 20:00:06,777.777 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 20:00:06,833.833 INFO    ] time= 12/06/2026 20:00:06
[2026-06-12 20:00:06,878.878 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 20:00:06,884.884 INFO    ] Checking for existing commands in stream...
[2026-06-12 20:00:06,966.966 INFO    ] No existing commands found in stream
[2026-06-12 20:00:12,002.002 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 20:00:12,005.005 INFO    ] Waiting 3.23 seconds before fallback handling...
[2026-06-12 20:00:15,591.591 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 20:00:15,592.592 INFO    ] Checking for system updates...
[2026-06-12 20:00:15,613.613 INFO    ] 200
[2026-06-12 20:00:15,614.614 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:00:15,645.645 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 20:00:15,647.647 INFO    ] No update needed
[2026-06-12 20:00:15,648.648 INFO    ] Checking for camera pi updates...
[2026-06-12 20:00:15,667.667 INFO    ] 200
[2026-06-12 20:00:15,668.668 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:00:15,691.691 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 20:00:15,750.750 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 20:00:15,751.751 INFO    ] No camera update needed
[2026-06-12 20:00:15,753.753 INFO    ] Script finished. Safe exiting...
[2026-06-12 20:00:15,754.754 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 20:00:15,757.757 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 20:00:15,760.760 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 20:00:17,798.798 INFO    ] ================================================
[2026-06-12 20:00:17,813.813 INFO    ] Launching Daemon at Fri Jun 12 20:00:17 IST 2026
[2026-06-12 20:00:17,824.824 INFO    ] ================================================
[2026-06-12 20:00:18,149.149 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 20:00:18
[2026-06-12 20:00:18,459.459 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 20:00:18,591.591 INFO    ] Initializing speech engine...
[2026-06-12 20:00:18,603.603 INFO    ] 2026-06-12 20:00:18
[2026-06-12 20:00:18,811.811 INFO    ] 2026-06-12 20:00:18
[2026-06-12 20:00:18,841.841 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 20:00:19,027.027 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 20:00:19,036.036 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 20:00:19,187.187 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 20:00:19,236.236 INFO    ] time= 12/06/2026 20:00:19
[2026-06-12 20:00:19,259.259 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 20:00:19,265.265 INFO    ] Checking for existing commands in stream...
[2026-06-12 20:00:19,332.332 INFO    ] No existing commands found in stream
[2026-06-12 20:00:24,342.342 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 20:00:24,344.344 INFO    ] Waiting 0.08 seconds before fallback handling...
[2026-06-12 20:00:24,778.778 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 20:00:24,779.779 INFO    ] Checking for system updates...
[2026-06-12 20:00:24,800.800 INFO    ] 200
[2026-06-12 20:00:24,801.801 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:00:24,833.833 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 20:00:24,834.834 INFO    ] No update needed
[2026-06-12 20:00:24,836.836 INFO    ] Checking for camera pi updates...
[2026-06-12 20:00:24,855.855 INFO    ] 200
[2026-06-12 20:00:24,856.856 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:00:24,879.879 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 20:00:24,936.936 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 20:00:24,938.938 INFO    ] No camera update needed
[2026-06-12 20:00:24,939.939 INFO    ] Script finished. Safe exiting...
[2026-06-12 20:00:24,940.940 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 20:00:24,943.943 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 20:00:24,946.946 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 20:00:26,985.985 INFO    ] ================================================
[2026-06-12 20:00:27,001.001 INFO    ] Launching Daemon at Fri Jun 12 20:00:26 IST 2026
[2026-06-12 20:00:27,012.012 INFO    ] ================================================
[2026-06-12 20:00:27,387.387 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 20:00:27
[2026-06-12 20:00:27,727.727 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 20:00:27,882.882 INFO    ] Initializing speech engine...
[2026-06-12 20:00:27,886.886 INFO    ] 2026-06-12 20:00:27
[2026-06-12 20:00:28,096.096 INFO    ] 2026-06-12 20:00:28
[2026-06-12 20:00:28,125.125 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 20:00:28,312.312 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 20:00:28,321.321 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 20:00:28,478.478 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 20:00:28,523.523 INFO    ] time= 12/06/2026 20:00:28
[2026-06-12 20:00:28,545.545 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 20:00:28,552.552 INFO    ] Checking for existing commands in stream...
[2026-06-12 20:00:28,619.619 INFO    ] No existing commands found in stream
[2026-06-12 20:00:33,629.629 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 20:00:33,632.632 INFO    ] Waiting 2.48 seconds before fallback handling...
[2026-06-12 20:00:36,521.521 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 20:00:36,523.523 INFO    ] Checking for system updates...
[2026-06-12 20:00:36,544.544 INFO    ] 200
[2026-06-12 20:00:36,545.545 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:00:36,575.575 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 20:00:36,577.577 INFO    ] No update needed
[2026-06-12 20:00:36,578.578 INFO    ] Checking for camera pi updates...
[2026-06-12 20:00:36,599.599 INFO    ] 200
[2026-06-12 20:00:36,601.601 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:00:36,626.626 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 20:00:36,677.677 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 20:00:36,679.679 INFO    ] No camera update needed
[2026-06-12 20:00:36,680.680 INFO    ] Script finished. Safe exiting...
[2026-06-12 20:00:36,682.682 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 20:00:36,685.685 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 20:00:36,688.688 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 20:00:38,729.729 INFO    ] ================================================
[2026-06-12 20:00:38,744.744 INFO    ] Launching Daemon at Fri Jun 12 20:00:38 IST 2026
[2026-06-12 20:00:38,756.756 INFO    ] ================================================
[2026-06-12 20:00:39,083.083 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 20:00:39
[2026-06-12 20:00:39,394.394 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 20:00:39,523.523 INFO    ] Initializing speech engine...
[2026-06-12 20:00:39,528.528 INFO    ] 2026-06-12 20:00:39
[2026-06-12 20:00:39,746.746 INFO    ] 2026-06-12 20:00:39
[2026-06-12 20:00:39,776.776 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 20:00:39,963.963 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 20:00:39,972.972 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 20:00:40,099.099 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 20:00:40,162.162 INFO    ] time= 12/06/2026 20:00:40
[2026-06-12 20:00:40,199.199 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 20:00:40,201.201 INFO    ] Checking for existing commands in stream...
[2026-06-12 20:00:40,271.271 INFO    ] No existing commands found in stream
[2026-06-12 20:00:45,281.281 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 20:00:45,284.284 INFO    ] Waiting 1.85 seconds before fallback handling...
[2026-06-12 20:00:47,487.487 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 20:00:47,488.488 INFO    ] Checking for system updates...
[2026-06-12 20:00:47,510.510 INFO    ] 200
[2026-06-12 20:00:47,511.511 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:00:47,541.541 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 20:00:47,543.543 INFO    ] No update needed
[2026-06-12 20:00:47,544.544 INFO    ] Checking for camera pi updates...
[2026-06-12 20:00:47,563.563 INFO    ] 200
[2026-06-12 20:00:47,564.564 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:00:47,587.587 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 20:00:47,636.636 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 20:00:47,637.637 INFO    ] No camera update needed
[2026-06-12 20:00:47,638.638 INFO    ] Script finished. Safe exiting...
[2026-06-12 20:00:47,640.640 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 20:00:47,643.643 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 20:00:47,645.645 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 20:00:49,686.686 INFO    ] ================================================
[2026-06-12 20:00:49,703.703 INFO    ] Launching Daemon at Fri Jun 12 20:00:49 IST 2026
[2026-06-12 20:00:49,713.713 INFO    ] ================================================
[2026-06-12 20:00:50,045.045 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 20:00:50
[2026-06-12 20:00:50,357.357 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 20:00:50,499.499 INFO    ] Initializing speech engine...
[2026-06-12 20:00:50,504.504 INFO    ] 2026-06-12 20:00:50
[2026-06-12 20:00:50,721.721 INFO    ] 2026-06-12 20:00:50
[2026-06-12 20:00:50,752.752 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 20:00:50,886.886 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 20:00:50,918.918 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 20:00:51,070.070 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 20:00:51,105.105 INFO    ] time= 12/06/2026 20:00:51
[2026-06-12 20:00:51,166.166 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 20:00:51,191.191 INFO    ] Checking for existing commands in stream...
[2026-06-12 20:00:51,283.283 INFO    ] No existing commands found in stream
[2026-06-12 20:00:56,292.292 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 20:00:56,297.297 INFO    ] Waiting 1.84 seconds before fallback handling...
[2026-06-12 20:00:58,531.531 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 20:00:58,534.534 INFO    ] Checking for system updates...
[2026-06-12 20:00:58,569.569 INFO    ] 200
[2026-06-12 20:00:58,572.572 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:00:58,624.624 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 20:00:58,626.626 INFO    ] No update needed
[2026-06-12 20:00:58,628.628 INFO    ] Checking for camera pi updates...
[2026-06-12 20:00:58,664.664 INFO    ] 200
[2026-06-12 20:00:58,666.666 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:00:58,690.690 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 20:00:58,813.813 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 20:00:58,815.815 INFO    ] No camera update needed
[2026-06-12 20:00:58,816.816 INFO    ] Script finished. Safe exiting...
[2026-06-12 20:00:58,817.817 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 20:00:58,821.821 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 20:00:58,824.824 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 20:01:00,866.866 INFO    ] ================================================
[2026-06-12 20:01:00,882.882 INFO    ] Launching Daemon at Fri Jun 12 20:01:00 IST 2026
[2026-06-12 20:01:00,893.893 INFO    ] ================================================
[2026-06-12 20:01:01,254.254 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 20:01:01
[2026-06-12 20:01:01,595.595 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 20:01:01,751.751 INFO    ] Initializing speech engine...
[2026-06-12 20:01:01,756.756 INFO    ] 2026-06-12 20:01:01
[2026-06-12 20:01:01,965.965 INFO    ] 2026-06-12 20:01:01
[2026-06-12 20:01:01,995.995 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 20:01:02,235.235 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 20:01:02,306.306 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 20:01:02,485.485 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 20:01:02,542.542 INFO    ] time= 12/06/2026 20:01:02
[2026-06-12 20:01:02,607.607 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 20:01:02,616.616 INFO    ] Checking for existing commands in stream...
[2026-06-12 20:01:02,688.688 INFO    ] No existing commands found in stream
[2026-06-12 20:01:07,703.703 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 20:01:07,706.706 INFO    ] Waiting 2.05 seconds before fallback handling...
[2026-06-12 20:01:10,131.131 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 20:01:10,133.133 INFO    ] Checking for system updates...
[2026-06-12 20:01:10,154.154 INFO    ] 200
[2026-06-12 20:01:10,155.155 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:01:10,189.189 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 20:01:10,190.190 INFO    ] No update needed
[2026-06-12 20:01:10,191.191 INFO    ] Checking for camera pi updates...
[2026-06-12 20:01:10,211.211 INFO    ] 200
[2026-06-12 20:01:10,212.212 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:01:10,235.235 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 20:01:10,285.285 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 20:01:10,286.286 INFO    ] No camera update needed
[2026-06-12 20:01:10,288.288 INFO    ] Script finished. Safe exiting...
[2026-06-12 20:01:10,289.289 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 20:01:10,292.292 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 20:01:10,295.295 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 20:01:12,333.333 INFO    ] ================================================
[2026-06-12 20:01:12,348.348 INFO    ] Launching Daemon at Fri Jun 12 20:01:12 IST 2026
[2026-06-12 20:01:12,359.359 INFO    ] ================================================
[2026-06-12 20:01:12,736.736 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 20:01:12
[2026-06-12 20:01:13,082.082 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 20:01:13,239.239 INFO    ] Initializing speech engine...
[2026-06-12 20:01:13,242.242 INFO    ] 2026-06-12 20:01:13
[2026-06-12 20:01:13,454.454 INFO    ] 2026-06-12 20:01:13
[2026-06-12 20:01:13,483.483 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 20:01:13,628.628 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 20:01:13,672.672 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 20:01:13,811.811 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 20:01:13,876.876 INFO    ] time= 12/06/2026 20:01:13
[2026-06-12 20:01:13,904.904 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 20:01:13,911.911 INFO    ] Checking for existing commands in stream...
[2026-06-12 20:01:13,979.979 INFO    ] No existing commands found in stream
[2026-06-12 20:01:18,994.994 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 20:01:18,997.997 INFO    ] Waiting 2.49 seconds before fallback handling...
[2026-06-12 20:01:21,887.887 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 20:01:21,889.889 INFO    ] Checking for system updates...
[2026-06-12 20:01:21,910.910 INFO    ] 200
[2026-06-12 20:01:21,911.911 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:01:21,941.941 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 20:01:21,943.943 INFO    ] No update needed
[2026-06-12 20:01:21,944.944 INFO    ] Checking for camera pi updates...
[2026-06-12 20:01:21,965.965 INFO    ] 200
[2026-06-12 20:01:21,967.967 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:01:21,990.990 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 20:01:22,043.043 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 20:01:22,044.044 INFO    ] No camera update needed
[2026-06-12 20:01:22,046.046 INFO    ] Script finished. Safe exiting...
[2026-06-12 20:01:22,047.047 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 20:01:22,050.050 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 20:01:22,053.053 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 20:01:24,091.091 INFO    ] ================================================
[2026-06-12 20:01:24,111.111 INFO    ] Launching Daemon at Fri Jun 12 20:01:24 IST 2026
[2026-06-12 20:01:24,122.122 INFO    ] ================================================
[2026-06-12 20:01:24,500.500 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 20:01:24
[2026-06-12 20:01:24,840.840 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 20:01:24,985.985 INFO    ] Initializing speech engine...
[2026-06-12 20:01:24,996.996 INFO    ] 2026-06-12 20:01:24
[2026-06-12 20:01:25,203.203 INFO    ] 2026-06-12 20:01:25
[2026-06-12 20:01:25,233.233 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 20:01:25,420.420 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 20:01:25,428.428 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 20:01:25,556.556 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 20:01:25,613.613 INFO    ] time= 12/06/2026 20:01:25
[2026-06-12 20:01:25,651.651 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 20:01:25,653.653 INFO    ] Checking for existing commands in stream...
[2026-06-12 20:01:25,749.749 INFO    ] No existing commands found in stream
[2026-06-12 20:01:30,763.763 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 20:01:30,766.766 INFO    ] Waiting 2.57 seconds before fallback handling...
[2026-06-12 20:01:33,685.685 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 20:01:33,688.688 INFO    ] Checking for system updates...
[2026-06-12 20:01:33,730.730 INFO    ] 200
[2026-06-12 20:01:33,733.733 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:01:33,786.786 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 20:01:33,789.789 INFO    ] No update needed
[2026-06-12 20:01:33,792.792 INFO    ] Checking for camera pi updates...
[2026-06-12 20:01:33,824.824 INFO    ] 200
[2026-06-12 20:01:33,826.826 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:01:33,851.851 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 20:01:33,893.893 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 20:01:33,895.895 INFO    ] No camera update needed
[2026-06-12 20:01:33,896.896 INFO    ] Script finished. Safe exiting...
[2026-06-12 20:01:33,897.897 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 20:01:33,901.901 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 20:01:33,904.904 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 20:01:35,943.943 INFO    ] ================================================
[2026-06-12 20:01:35,959.959 INFO    ] Launching Daemon at Fri Jun 12 20:01:35 IST 2026
[2026-06-12 20:01:35,970.970 INFO    ] ================================================
[2026-06-12 20:01:36,356.356 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 20:01:36
[2026-06-12 20:01:36,695.695 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 20:01:36,847.847 INFO    ] Initializing speech engine...
[2026-06-12 20:01:36,852.852 INFO    ] 2026-06-12 20:01:36
[2026-06-12 20:01:37,060.060 INFO    ] 2026-06-12 20:01:37
[2026-06-12 20:01:37,088.088 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 20:01:37,272.272 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 20:01:37,282.282 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 20:01:37,412.412 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 20:01:37,466.466 INFO    ] time= 12/06/2026 20:01:37
[2026-06-12 20:01:37,503.503 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 20:01:37,509.509 INFO    ] Checking for existing commands in stream...
[2026-06-12 20:01:37,576.576 INFO    ] No existing commands found in stream
[2026-06-12 20:01:42,586.586 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 20:01:42,589.589 INFO    ] Waiting 3.04 seconds before fallback handling...
[2026-06-12 20:01:45,985.985 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 20:01:45,987.987 INFO    ] Checking for system updates...
[2026-06-12 20:01:46,008.008 INFO    ] 200
[2026-06-12 20:01:46,009.009 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:01:46,042.042 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 20:01:46,043.043 INFO    ] No update needed
[2026-06-12 20:01:46,045.045 INFO    ] Checking for camera pi updates...
[2026-06-12 20:01:46,068.068 INFO    ] 200
[2026-06-12 20:01:46,069.069 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:01:46,095.095 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 20:01:46,139.139 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 20:01:46,141.141 INFO    ] No camera update needed
[2026-06-12 20:01:46,142.142 INFO    ] Script finished. Safe exiting...
[2026-06-12 20:01:46,144.144 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 20:01:46,147.147 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 20:01:46,150.150 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 20:01:48,189.189 INFO    ] ================================================
[2026-06-12 20:01:48,205.205 INFO    ] Launching Daemon at Fri Jun 12 20:01:48 IST 2026
[2026-06-12 20:01:48,216.216 INFO    ] ================================================
[2026-06-12 20:01:48,562.562 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 20:01:48
[2026-06-12 20:01:48,880.880 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 20:01:49,012.012 INFO    ] Initializing speech engine...
[2026-06-12 20:01:49,016.016 INFO    ] 2026-06-12 20:01:49
[2026-06-12 20:01:49,234.234 INFO    ] 2026-06-12 20:01:49
[2026-06-12 20:01:49,263.263 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 20:01:49,384.384 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 20:01:49,448.448 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 20:01:49,587.587 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 20:01:49,646.646 INFO    ] time= 12/06/2026 20:01:49
[2026-06-12 20:01:49,678.678 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 20:01:49,684.684 INFO    ] Checking for existing commands in stream...
[2026-06-12 20:01:49,752.752 INFO    ] No existing commands found in stream
[2026-06-12 20:01:54,761.761 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 20:01:54,764.764 INFO    ] Waiting 3.85 seconds before fallback handling...
[2026-06-12 20:01:58,999.999 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 20:01:59,001.001 INFO    ] Checking for system updates...
[2026-06-12 20:01:59,021.021 INFO    ] 200
[2026-06-12 20:01:59,023.023 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:01:59,052.052 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 20:01:59,054.054 INFO    ] No update needed
[2026-06-12 20:01:59,055.055 INFO    ] Checking for camera pi updates...
[2026-06-12 20:01:59,077.077 INFO    ] 200
[2026-06-12 20:01:59,078.078 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:01:59,101.101 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 20:01:59,153.153 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 20:01:59,154.154 INFO    ] No camera update needed
[2026-06-12 20:01:59,156.156 INFO    ] Script finished. Safe exiting...
[2026-06-12 20:01:59,157.157 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 20:01:59,160.160 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 20:01:59,163.163 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 20:02:01,201.201 INFO    ] ================================================
[2026-06-12 20:02:01,216.216 INFO    ] Launching Daemon at Fri Jun 12 20:02:01 IST 2026
[2026-06-12 20:02:01,227.227 INFO    ] ================================================
[2026-06-12 20:02:01,677.677 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 20:02:01
[2026-06-12 20:02:02,044.044 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 20:02:02,220.220 INFO    ] Initializing speech engine...
[2026-06-12 20:02:02,233.233 INFO    ] 2026-06-12 20:02:02
[2026-06-12 20:02:02,474.474 INFO    ] 2026-06-12 20:02:02
[2026-06-12 20:02:02,504.504 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 20:02:02,631.631 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 20:02:02,695.695 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 20:02:02,829.829 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 20:02:02,897.897 INFO    ] time= 12/06/2026 20:02:02
[2026-06-12 20:02:02,924.924 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 20:02:02,930.930 INFO    ] Checking for existing commands in stream...
[2026-06-12 20:02:02,997.997 INFO    ] No existing commands found in stream
[2026-06-12 20:02:08,011.011 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 20:02:08,014.014 INFO    ] Waiting 3.11 seconds before fallback handling...
[2026-06-12 20:02:11,500.500 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 20:02:11,502.502 INFO    ] Checking for system updates...
[2026-06-12 20:02:11,522.522 INFO    ] 200
[2026-06-12 20:02:11,524.524 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:02:11,553.553 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 20:02:11,555.555 INFO    ] No update needed
[2026-06-12 20:02:11,556.556 INFO    ] Checking for camera pi updates...
[2026-06-12 20:02:11,575.575 INFO    ] 200
[2026-06-12 20:02:11,577.577 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:02:11,600.600 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 20:02:11,645.645 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 20:02:11,647.647 INFO    ] No camera update needed
[2026-06-12 20:02:11,648.648 INFO    ] Script finished. Safe exiting...
[2026-06-12 20:02:11,649.649 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 20:02:11,652.652 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 20:02:11,655.655 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 20:02:13,694.694 INFO    ] ================================================
[2026-06-12 20:02:13,711.711 INFO    ] Launching Daemon at Fri Jun 12 20:02:13 IST 2026
[2026-06-12 20:02:13,723.723 INFO    ] ================================================
[2026-06-12 20:02:14,066.066 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 20:02:14
[2026-06-12 20:02:14,377.377 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 20:02:14,519.519 INFO    ] Initializing speech engine...
[2026-06-12 20:02:14,524.524 INFO    ] 2026-06-12 20:02:14
[2026-06-12 20:02:14,729.729 INFO    ] 2026-06-12 20:02:14
[2026-06-12 20:02:14,759.759 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 20:02:14,941.941 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 20:02:14,944.944 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 20:02:15,100.100 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 20:02:15,152.152 INFO    ] time= 12/06/2026 20:02:15
[2026-06-12 20:02:15,174.174 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 20:02:15,180.180 INFO    ] Checking for existing commands in stream...
[2026-06-12 20:02:15,247.247 INFO    ] No existing commands found in stream
[2026-06-12 20:02:20,256.256 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 20:02:20,259.259 INFO    ] Waiting 3.67 seconds before fallback handling...
[2026-06-12 20:02:24,309.309 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 20:02:24,311.311 INFO    ] Checking for system updates...
[2026-06-12 20:02:24,335.335 INFO    ] 200
[2026-06-12 20:02:24,337.337 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:02:24,367.367 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 20:02:24,368.368 INFO    ] No update needed
[2026-06-12 20:02:24,370.370 INFO    ] Checking for camera pi updates...
[2026-06-12 20:02:24,391.391 INFO    ] 200
[2026-06-12 20:02:24,392.392 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:02:24,420.420 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 20:02:24,466.466 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 20:02:24,468.468 INFO    ] No camera update needed
[2026-06-12 20:02:24,469.469 INFO    ] Script finished. Safe exiting...
[2026-06-12 20:02:24,471.471 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 20:02:24,474.474 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 20:02:24,477.477 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 20:02:26,517.517 INFO    ] ================================================
[2026-06-12 20:02:26,532.532 INFO    ] Launching Daemon at Fri Jun 12 20:02:26 IST 2026
[2026-06-12 20:02:26,544.544 INFO    ] ================================================
[2026-06-12 20:02:26,886.886 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 20:02:26
[2026-06-12 20:02:27,202.202 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 20:02:27,334.334 INFO    ] Initializing speech engine...
[2026-06-12 20:02:27,347.347 INFO    ] 2026-06-12 20:02:27
[2026-06-12 20:02:27,552.552 INFO    ] 2026-06-12 20:02:27
[2026-06-12 20:02:27,581.581 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 20:02:27,763.763 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 20:02:27,772.772 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 20:02:27,922.922 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 20:02:27,969.969 INFO    ] time= 12/06/2026 20:02:27
[2026-06-12 20:02:27,992.992 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 20:02:27,999.999 INFO    ] Checking for existing commands in stream...
[2026-06-12 20:02:28,065.065 INFO    ] No existing commands found in stream
[2026-06-12 20:02:33,074.074 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 20:02:33,076.076 INFO    ] Waiting 0.67 seconds before fallback handling...
[2026-06-12 20:02:34,088.088 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 20:02:34,089.089 INFO    ] Checking for system updates...
[2026-06-12 20:02:34,110.110 INFO    ] 200
[2026-06-12 20:02:34,112.112 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:02:34,145.145 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 20:02:34,146.146 INFO    ] No update needed
[2026-06-12 20:02:34,148.148 INFO    ] Checking for camera pi updates...
[2026-06-12 20:02:34,171.171 INFO    ] 200
[2026-06-12 20:02:34,173.173 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:02:34,198.198 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 20:02:34,253.253 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 20:02:34,254.254 INFO    ] No camera update needed
[2026-06-12 20:02:34,256.256 INFO    ] Script finished. Safe exiting...
[2026-06-12 20:02:34,257.257 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 20:02:34,260.260 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 20:02:34,263.263 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 20:02:36,303.303 INFO    ] ================================================
[2026-06-12 20:02:36,320.320 INFO    ] Launching Daemon at Fri Jun 12 20:02:36 IST 2026
[2026-06-12 20:02:36,332.332 INFO    ] ================================================
[2026-06-12 20:02:36,717.717 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 20:02:36
[2026-06-12 20:02:37,055.055 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 20:02:37,206.206 INFO    ] Initializing speech engine...
[2026-06-12 20:02:37,213.213 INFO    ] 2026-06-12 20:02:37
[2026-06-12 20:02:37,417.417 INFO    ] 2026-06-12 20:02:37
[2026-06-12 20:02:37,447.447 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 20:02:37,632.632 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 20:02:37,643.643 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 20:02:37,826.826 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 20:02:37,858.858 INFO    ] time= 12/06/2026 20:02:37
[2026-06-12 20:02:37,864.864 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 20:02:37,866.866 INFO    ] Checking for existing commands in stream...
[2026-06-12 20:02:37,933.933 INFO    ] No existing commands found in stream
[2026-06-12 20:02:42,958.958 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 20:02:42,961.961 INFO    ] Waiting 0.87 seconds before fallback handling...
[2026-06-12 20:02:44,225.225 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 20:02:44,226.226 INFO    ] Checking for system updates...
[2026-06-12 20:02:44,249.249 INFO    ] 200
[2026-06-12 20:02:44,250.250 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:02:44,283.283 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 20:02:44,284.284 INFO    ] No update needed
[2026-06-12 20:02:44,286.286 INFO    ] Checking for camera pi updates...
[2026-06-12 20:02:44,305.305 INFO    ] 200
[2026-06-12 20:02:44,307.307 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:02:44,330.330 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 20:02:44,398.398 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 20:02:44,400.400 INFO    ] No camera update needed
[2026-06-12 20:02:44,402.402 INFO    ] Script finished. Safe exiting...
[2026-06-12 20:02:44,403.403 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 20:02:44,406.406 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 20:02:44,409.409 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 20:02:46,449.449 INFO    ] ================================================
[2026-06-12 20:02:46,466.466 INFO    ] Launching Daemon at Fri Jun 12 20:02:46 IST 2026
[2026-06-12 20:02:46,477.477 INFO    ] ================================================
[2026-06-12 20:02:46,822.822 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 20:02:46
[2026-06-12 20:02:47,139.139 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 20:02:47,283.283 INFO    ] Initializing speech engine...
[2026-06-12 20:02:47,288.288 INFO    ] 2026-06-12 20:02:47
[2026-06-12 20:02:47,493.493 INFO    ] 2026-06-12 20:02:47
[2026-06-12 20:02:47,520.520 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 20:02:47,707.707 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 20:02:47,717.717 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 20:02:47,868.868 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 20:02:47,917.917 INFO    ] time= 12/06/2026 20:02:47
[2026-06-12 20:02:47,938.938 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 20:02:47,944.944 INFO    ] Checking for existing commands in stream...
[2026-06-12 20:02:48,011.011 INFO    ] No existing commands found in stream
[2026-06-12 20:02:53,020.020 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 20:02:53,023.023 INFO    ] Waiting 3.39 seconds before fallback handling...
[2026-06-12 20:02:56,832.832 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 20:02:56,834.834 INFO    ] Checking for system updates...
[2026-06-12 20:02:56,856.856 INFO    ] 200
[2026-06-12 20:02:56,857.857 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:02:56,889.889 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 20:02:56,891.891 INFO    ] No update needed
[2026-06-12 20:02:56,892.892 INFO    ] Checking for camera pi updates...
[2026-06-12 20:02:56,912.912 INFO    ] 200
[2026-06-12 20:02:56,913.913 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:02:56,938.938 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 20:02:56,989.989 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 20:02:56,991.991 INFO    ] No camera update needed
[2026-06-12 20:02:56,992.992 INFO    ] Script finished. Safe exiting...
[2026-06-12 20:02:56,993.993 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 20:02:56,997.997 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 20:02:57,000.000 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 20:02:59,039.039 INFO    ] ================================================
[2026-06-12 20:02:59,056.056 INFO    ] Launching Daemon at Fri Jun 12 20:02:59 IST 2026
[2026-06-12 20:02:59,067.067 INFO    ] ================================================
[2026-06-12 20:02:59,424.424 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 20:02:59
[2026-06-12 20:02:59,762.762 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 20:02:59,909.909 INFO    ] Initializing speech engine...
[2026-06-12 20:02:59,917.917 INFO    ] 2026-06-12 20:02:59
[2026-06-12 20:03:00,132.132 INFO    ] 2026-06-12 20:03:00
[2026-06-12 20:03:00,162.162 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 20:03:00,349.349 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 20:03:00,360.360 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 20:03:00,514.514 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 20:03:00,565.565 INFO    ] time= 12/06/2026 20:03:00
[2026-06-12 20:03:00,586.586 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 20:03:00,593.593 INFO    ] Checking for existing commands in stream...
[2026-06-12 20:03:00,661.661 INFO    ] No existing commands found in stream
[2026-06-12 20:03:05,712.712 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 20:03:05,715.715 INFO    ] Waiting 2.75 seconds before fallback handling...
[2026-06-12 20:03:08,846.846 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 20:03:08,848.848 INFO    ] Checking for system updates...
[2026-06-12 20:03:08,873.873 INFO    ] 200
[2026-06-12 20:03:08,875.875 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:03:08,907.907 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 20:03:08,908.908 INFO    ] No update needed
[2026-06-12 20:03:08,910.910 INFO    ] Checking for camera pi updates...
[2026-06-12 20:03:08,930.930 INFO    ] 200
[2026-06-12 20:03:08,931.931 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:03:08,954.954 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 20:03:09,013.013 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 20:03:09,014.014 INFO    ] No camera update needed
[2026-06-12 20:03:09,016.016 INFO    ] Script finished. Safe exiting...
[2026-06-12 20:03:09,017.017 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 20:03:09,020.020 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 20:03:09,023.023 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 20:03:11,062.062 INFO    ] ================================================
[2026-06-12 20:03:11,078.078 INFO    ] Launching Daemon at Fri Jun 12 20:03:11 IST 2026
[2026-06-12 20:03:11,089.089 INFO    ] ================================================
[2026-06-12 20:03:11,449.449 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 20:03:11
[2026-06-12 20:03:11,767.767 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 20:03:11,914.914 INFO    ] Initializing speech engine...
[2026-06-12 20:03:11,919.919 INFO    ] 2026-06-12 20:03:11
[2026-06-12 20:03:12,133.133 INFO    ] 2026-06-12 20:03:12
[2026-06-12 20:03:12,163.163 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 20:03:12,294.294 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 20:03:12,332.332 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 20:03:12,503.503 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 20:03:12,565.565 INFO    ] time= 12/06/2026 20:03:12
[2026-06-12 20:03:12,608.608 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 20:03:12,610.610 INFO    ] Checking for existing commands in stream...
[2026-06-12 20:03:12,712.712 INFO    ] No existing commands found in stream
[2026-06-12 20:03:17,726.726 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 20:03:17,728.728 INFO    ] Waiting 2.91 seconds before fallback handling...
[2026-06-12 20:03:21,030.030 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 20:03:21,032.032 INFO    ] Checking for system updates...
[2026-06-12 20:03:21,052.052 INFO    ] 200
[2026-06-12 20:03:21,053.053 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:03:21,085.085 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 20:03:21,087.087 INFO    ] No update needed
[2026-06-12 20:03:21,088.088 INFO    ] Checking for camera pi updates...
[2026-06-12 20:03:21,109.109 INFO    ] 200
[2026-06-12 20:03:21,111.111 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:03:21,133.133 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 20:03:21,179.179 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 20:03:21,181.181 INFO    ] No camera update needed
[2026-06-12 20:03:21,182.182 INFO    ] Script finished. Safe exiting...
[2026-06-12 20:03:21,183.183 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 20:03:21,186.186 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 20:03:21,189.189 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 20:03:23,227.227 INFO    ] ================================================
[2026-06-12 20:03:23,242.242 INFO    ] Launching Daemon at Fri Jun 12 20:03:23 IST 2026
[2026-06-12 20:03:23,253.253 INFO    ] ================================================
[2026-06-12 20:03:23,624.624 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 20:03:23
[2026-06-12 20:03:23,941.941 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 20:03:24,074.074 INFO    ] Initializing speech engine...
[2026-06-12 20:03:24,087.087 INFO    ] 2026-06-12 20:03:24
[2026-06-12 20:03:24,296.296 INFO    ] 2026-06-12 20:03:24
[2026-06-12 20:03:24,324.324 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 20:03:24,508.508 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 20:03:24,518.518 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 20:03:24,646.646 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 20:03:24,705.705 INFO    ] time= 12/06/2026 20:03:24
[2026-06-12 20:03:24,737.737 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 20:03:24,743.743 INFO    ] Checking for existing commands in stream...
[2026-06-12 20:03:24,812.812 INFO    ] No existing commands found in stream
[2026-06-12 20:03:29,822.822 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 20:03:29,825.825 INFO    ] Waiting 3.31 seconds before fallback handling...
[2026-06-12 20:03:33,515.515 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 20:03:33,517.517 INFO    ] Checking for system updates...
[2026-06-12 20:03:33,537.537 INFO    ] 200
[2026-06-12 20:03:33,538.538 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:03:33,570.570 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 20:03:33,572.572 INFO    ] No update needed
[2026-06-12 20:03:33,573.573 INFO    ] Checking for camera pi updates...
[2026-06-12 20:03:33,592.592 INFO    ] 200
[2026-06-12 20:03:33,594.594 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:03:33,618.618 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 20:03:33,666.666 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 20:03:33,667.667 INFO    ] No camera update needed
[2026-06-12 20:03:33,669.669 INFO    ] Script finished. Safe exiting...
[2026-06-12 20:03:33,670.670 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 20:03:33,673.673 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 20:03:33,676.676 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 20:03:35,714.714 INFO    ] ================================================
[2026-06-12 20:03:35,729.729 INFO    ] Launching Daemon at Fri Jun 12 20:03:35 IST 2026
[2026-06-12 20:03:35,740.740 INFO    ] ================================================
[2026-06-12 20:03:36,079.079 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 20:03:36
[2026-06-12 20:03:36,415.415 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 20:03:36,560.560 INFO    ] Initializing speech engine...
[2026-06-12 20:03:36,570.570 INFO    ] 2026-06-12 20:03:36
[2026-06-12 20:03:36,781.781 INFO    ] 2026-06-12 20:03:36
[2026-06-12 20:03:36,809.809 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 20:03:36,996.996 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 20:03:37,000.000 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 20:03:37,144.144 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 20:03:37,202.202 INFO    ] time= 12/06/2026 20:03:37
[2026-06-12 20:03:37,231.231 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 20:03:37,233.233 INFO    ] Checking for existing commands in stream...
[2026-06-12 20:03:37,306.306 INFO    ] No existing commands found in stream
[2026-06-12 20:03:42,320.320 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 20:03:42,323.323 INFO    ] Waiting 2.18 seconds before fallback handling...
[2026-06-12 20:03:44,846.846 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 20:03:44,847.847 INFO    ] Checking for system updates...
[2026-06-12 20:03:44,868.868 INFO    ] 200
[2026-06-12 20:03:44,870.870 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:03:44,901.901 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 20:03:44,902.902 INFO    ] No update needed
[2026-06-12 20:03:44,903.903 INFO    ] Checking for camera pi updates...
[2026-06-12 20:03:44,924.924 INFO    ] 200
[2026-06-12 20:03:44,925.925 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:03:44,948.948 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 20:03:45,014.014 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 20:03:45,015.015 INFO    ] No camera update needed
[2026-06-12 20:03:45,017.017 INFO    ] Script finished. Safe exiting...
[2026-06-12 20:03:45,018.018 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 20:03:45,021.021 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 20:03:45,024.024 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 20:03:47,064.064 INFO    ] ================================================
[2026-06-12 20:03:47,080.080 INFO    ] Launching Daemon at Fri Jun 12 20:03:47 IST 2026
[2026-06-12 20:03:47,091.091 INFO    ] ================================================
[2026-06-12 20:03:47,424.424 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 20:03:47
[2026-06-12 20:03:47,741.741 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 20:03:47,875.875 INFO    ] Initializing speech engine...
[2026-06-12 20:03:47,880.880 INFO    ] 2026-06-12 20:03:47
[2026-06-12 20:03:48,108.108 INFO    ] 2026-06-12 20:03:48
[2026-06-12 20:03:48,139.139 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 20:03:48,336.336 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 20:03:48,339.339 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 20:03:48,485.485 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 20:03:48,544.544 INFO    ] time= 12/06/2026 20:03:48
[2026-06-12 20:03:48,583.583 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 20:03:48,585.585 INFO    ] Checking for existing commands in stream...
[2026-06-12 20:03:48,687.687 INFO    ] No existing commands found in stream
[2026-06-12 20:03:53,701.701 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 20:03:53,704.704 INFO    ] Waiting 3.79 seconds before fallback handling...
[2026-06-12 20:03:57,862.862 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 20:03:57,864.864 INFO    ] Checking for system updates...
[2026-06-12 20:03:57,884.884 INFO    ] 200
[2026-06-12 20:03:57,885.885 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:03:57,915.915 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 20:03:57,916.916 INFO    ] No update needed
[2026-06-12 20:03:57,918.918 INFO    ] Checking for camera pi updates...
[2026-06-12 20:03:57,937.937 INFO    ] 200
[2026-06-12 20:03:57,938.938 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:03:57,962.962 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 20:03:58,033.033 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 20:03:58,034.034 INFO    ] No camera update needed
[2026-06-12 20:03:58,035.035 INFO    ] Script finished. Safe exiting...
[2026-06-12 20:03:58,037.037 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 20:03:58,040.040 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 20:03:58,043.043 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 20:04:00,080.080 INFO    ] ================================================
[2026-06-12 20:04:00,096.096 INFO    ] Launching Daemon at Fri Jun 12 20:04:00 IST 2026
[2026-06-12 20:04:00,108.108 INFO    ] ================================================
[2026-06-12 20:04:00,461.461 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 20:04:00
[2026-06-12 20:04:00,777.777 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 20:04:00,920.920 INFO    ] Initializing speech engine...
[2026-06-12 20:04:00,928.928 INFO    ] 2026-06-12 20:04:00
[2026-06-12 20:04:01,130.130 INFO    ] 2026-06-12 20:04:01
[2026-06-12 20:04:01,158.158 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 20:04:01,340.340 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 20:04:01,349.349 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 20:04:01,477.477 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 20:04:01,543.543 INFO    ] time= 12/06/2026 20:04:01
[2026-06-12 20:04:01,566.566 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 20:04:01,573.573 INFO    ] Checking for existing commands in stream...
[2026-06-12 20:04:01,639.639 INFO    ] No existing commands found in stream
[2026-06-12 20:04:06,671.671 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 20:04:06,674.674 INFO    ] Waiting 3.78 seconds before fallback handling...
[2026-06-12 20:04:10,844.844 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 20:04:10,845.845 INFO    ] Checking for system updates...
[2026-06-12 20:04:10,867.867 INFO    ] 200
[2026-06-12 20:04:10,868.868 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:04:10,901.901 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 20:04:10,902.902 INFO    ] No update needed
[2026-06-12 20:04:10,903.903 INFO    ] Checking for camera pi updates...
[2026-06-12 20:04:10,923.923 INFO    ] 200
[2026-06-12 20:04:10,925.925 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:04:10,958.958 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 20:04:11,005.005 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 20:04:11,006.006 INFO    ] No camera update needed
[2026-06-12 20:04:11,008.008 INFO    ] Script finished. Safe exiting...
[2026-06-12 20:04:11,009.009 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 20:04:11,013.013 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 20:04:11,015.015 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 20:04:13,056.056 INFO    ] ================================================
[2026-06-12 20:04:13,072.072 INFO    ] Launching Daemon at Fri Jun 12 20:04:13 IST 2026
[2026-06-12 20:04:13,084.084 INFO    ] ================================================
[2026-06-12 20:04:13,437.437 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 20:04:13
[2026-06-12 20:04:13,748.748 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 20:04:13,887.887 INFO    ] Initializing speech engine...
[2026-06-12 20:04:13,898.898 INFO    ] 2026-06-12 20:04:13
[2026-06-12 20:04:14,101.101 INFO    ] 2026-06-12 20:04:14
[2026-06-12 20:04:14,130.130 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 20:04:14,314.314 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 20:04:14,323.323 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 20:04:14,478.478 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 20:04:14,528.528 INFO    ] time= 12/06/2026 20:04:14
[2026-06-12 20:04:14,543.543 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 20:04:14,550.550 INFO    ] Checking for existing commands in stream...
[2026-06-12 20:04:14,616.616 INFO    ] No existing commands found in stream
[2026-06-12 20:04:19,635.635 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 20:04:19,638.638 INFO    ] Waiting 0.74 seconds before fallback handling...
[2026-06-12 20:04:20,725.725 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 20:04:20,726.726 INFO    ] Checking for system updates...
[2026-06-12 20:04:20,747.747 INFO    ] 200
[2026-06-12 20:04:20,748.748 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:04:20,778.778 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 20:04:20,779.779 INFO    ] No update needed
[2026-06-12 20:04:20,781.781 INFO    ] Checking for camera pi updates...
[2026-06-12 20:04:20,800.800 INFO    ] 200
[2026-06-12 20:04:20,802.802 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:04:20,827.827 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 20:04:20,874.874 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 20:04:20,875.875 INFO    ] No camera update needed
[2026-06-12 20:04:20,877.877 INFO    ] Script finished. Safe exiting...
[2026-06-12 20:04:20,878.878 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 20:04:20,881.881 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 20:04:20,884.884 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 20:04:22,924.924 INFO    ] ================================================
[2026-06-12 20:04:22,940.940 INFO    ] Launching Daemon at Fri Jun 12 20:04:22 IST 2026
[2026-06-12 20:04:22,952.952 INFO    ] ================================================
[2026-06-12 20:04:23,341.341 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 20:04:23
[2026-06-12 20:04:23,680.680 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 20:04:23,835.835 INFO    ] Initializing speech engine...
[2026-06-12 20:04:23,840.840 INFO    ] 2026-06-12 20:04:23
[2026-06-12 20:04:24,044.044 INFO    ] 2026-06-12 20:04:24
[2026-06-12 20:04:24,073.073 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 20:04:24,255.255 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 20:04:24,264.264 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 20:04:24,404.404 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 20:04:24,462.462 INFO    ] time= 12/06/2026 20:04:24
[2026-06-12 20:04:24,484.484 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 20:04:24,490.490 INFO    ] Checking for existing commands in stream...
[2026-06-12 20:04:24,557.557 INFO    ] No existing commands found in stream
[2026-06-12 20:04:29,566.566 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 20:04:29,568.568 INFO    ] Waiting 1.25 seconds before fallback handling...
[2026-06-12 20:04:31,218.218 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 20:04:31,219.219 INFO    ] Checking for system updates...
[2026-06-12 20:04:31,240.240 INFO    ] 200
[2026-06-12 20:04:31,241.241 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:04:31,273.273 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 20:04:31,275.275 INFO    ] No update needed
[2026-06-12 20:04:31,276.276 INFO    ] Checking for camera pi updates...
[2026-06-12 20:04:31,297.297 INFO    ] 200
[2026-06-12 20:04:31,298.298 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:04:31,321.321 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 20:04:31,348.348 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 20:04:31,349.349 INFO    ] No camera update needed
[2026-06-12 20:04:31,351.351 INFO    ] Script finished. Safe exiting...
[2026-06-12 20:04:31,352.352 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 20:04:31,355.355 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 20:04:31,358.358 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 20:04:33,381.381 INFO    ] ================================================
[2026-06-12 20:04:33,390.390 INFO    ] Launching Daemon at Fri Jun 12 20:04:33 IST 2026
[2026-06-12 20:04:33,396.396 INFO    ] ================================================
[2026-06-12 20:04:33,734.734 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 20:04:33
[2026-06-12 20:04:34,070.070 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 20:04:34,208.208 INFO    ] Initializing speech engine...
[2026-06-12 20:04:34,219.219 INFO    ] 2026-06-12 20:04:34
[2026-06-12 20:04:34,422.422 INFO    ] 2026-06-12 20:04:34
[2026-06-12 20:04:34,451.451 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 20:04:34,578.578 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 20:04:34,636.636 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 20:04:34,795.795 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 20:04:34,848.848 INFO    ] time= 12/06/2026 20:04:34
[2026-06-12 20:04:34,871.871 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 20:04:34,877.877 INFO    ] Checking for existing commands in stream...
[2026-06-12 20:04:34,942.942 INFO    ] No existing commands found in stream
[2026-06-12 20:04:39,953.953 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 20:04:39,956.956 INFO    ] Waiting 3.43 seconds before fallback handling...
[2026-06-12 20:04:43,775.775 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 20:04:43,776.776 INFO    ] Checking for system updates...
[2026-06-12 20:04:43,797.797 INFO    ] 200
[2026-06-12 20:04:43,798.798 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:04:43,830.830 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 20:04:43,831.831 INFO    ] No update needed
[2026-06-12 20:04:43,833.833 INFO    ] Checking for camera pi updates...
[2026-06-12 20:04:43,854.854 INFO    ] 200
[2026-06-12 20:04:43,855.855 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:04:43,878.878 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 20:04:43,920.920 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 20:04:43,921.921 INFO    ] No camera update needed
[2026-06-12 20:04:43,923.923 INFO    ] Script finished. Safe exiting...
[2026-06-12 20:04:43,924.924 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 20:04:43,927.927 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 20:04:43,930.930 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 20:04:45,970.970 INFO    ] ================================================
[2026-06-12 20:04:45,986.986 INFO    ] Launching Daemon at Fri Jun 12 20:04:45 IST 2026
[2026-06-12 20:04:46,998.998 INFO    ] ================================================
[2026-06-12 20:04:46,333.333 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 20:04:46
[2026-06-12 20:04:46,648.648 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 20:04:46,791.791 INFO    ] Initializing speech engine...
[2026-06-12 20:04:46,796.796 INFO    ] 2026-06-12 20:04:46
[2026-06-12 20:04:47,002.002 INFO    ] 2026-06-12 20:04:46
[2026-06-12 20:04:47,031.031 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 20:04:47,152.152 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 20:04:47,215.215 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 20:04:47,348.348 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 20:04:47,416.416 INFO    ] time= 12/06/2026 20:04:47
[2026-06-12 20:04:47,443.443 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 20:04:47,450.450 INFO    ] Checking for existing commands in stream...
[2026-06-12 20:04:47,515.515 INFO    ] No existing commands found in stream
[2026-06-12 20:04:52,525.525 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 20:04:52,526.526 INFO    ] Waiting 2.04 seconds before fallback handling...
[2026-06-12 20:04:54,924.924 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 20:04:54,926.926 INFO    ] Checking for system updates...
[2026-06-12 20:04:54,946.946 INFO    ] 200
[2026-06-12 20:04:54,948.948 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:04:54,981.981 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 20:04:54,982.982 INFO    ] No update needed
[2026-06-12 20:04:54,983.983 INFO    ] Checking for camera pi updates...
[2026-06-12 20:04:55,004.004 INFO    ] 200
[2026-06-12 20:04:55,005.005 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:04:55,028.028 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 20:04:55,074.074 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 20:04:55,075.075 INFO    ] No camera update needed
[2026-06-12 20:04:55,076.076 INFO    ] Script finished. Safe exiting...
[2026-06-12 20:04:55,078.078 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 20:04:55,081.081 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 20:04:55,083.083 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 20:04:57,122.122 INFO    ] ================================================
[2026-06-12 20:04:57,138.138 INFO    ] Launching Daemon at Fri Jun 12 20:04:57 IST 2026
[2026-06-12 20:04:57,149.149 INFO    ] ================================================
[2026-06-12 20:04:57,501.501 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 20:04:57
[2026-06-12 20:04:57,841.841 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 20:04:57,997.997 INFO    ] Initializing speech engine...
[2026-06-12 20:04:58,000.000 INFO    ] 2026-06-12 20:04:57
[2026-06-12 20:04:58,211.211 INFO    ] 2026-06-12 20:04:58
[2026-06-12 20:04:58,240.240 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 20:04:58,428.428 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 20:04:58,438.438 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 20:04:58,566.566 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 20:04:58,627.627 INFO    ] time= 12/06/2026 20:04:58
[2026-06-12 20:04:58,661.661 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 20:04:58,668.668 INFO    ] Checking for existing commands in stream...
[2026-06-12 20:04:58,760.760 INFO    ] No existing commands found in stream
[2026-06-12 20:05:03,774.774 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 20:05:03,778.778 INFO    ] Waiting 3.88 seconds before fallback handling...
[2026-06-12 20:05:08,037.037 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 20:05:08,038.038 INFO    ] Checking for system updates...
[2026-06-12 20:05:08,059.059 INFO    ] 200
[2026-06-12 20:05:08,061.061 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:05:08,091.091 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 20:05:08,093.093 INFO    ] No update needed
[2026-06-12 20:05:08,094.094 INFO    ] Checking for camera pi updates...
[2026-06-12 20:05:08,114.114 INFO    ] 200
[2026-06-12 20:05:08,115.115 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:05:08,138.138 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 20:05:08,289.289 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 20:05:08,292.292 INFO    ] No camera update needed
[2026-06-12 20:05:08,293.293 INFO    ] Script finished. Safe exiting...
[2026-06-12 20:05:08,295.295 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 20:05:08,298.298 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 20:05:08,301.301 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 20:05:10,340.340 INFO    ] ================================================
[2026-06-12 20:05:10,356.356 INFO    ] Launching Daemon at Fri Jun 12 20:05:10 IST 2026
[2026-06-12 20:05:10,367.367 INFO    ] ================================================
[2026-06-12 20:05:10,716.716 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 20:05:10
[2026-06-12 20:05:11,026.026 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 20:05:11,162.162 INFO    ] Initializing speech engine...
[2026-06-12 20:05:11,170.170 INFO    ] 2026-06-12 20:05:11
[2026-06-12 20:05:11,378.378 INFO    ] 2026-06-12 20:05:11
[2026-06-12 20:05:11,406.406 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 20:05:11,593.593 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 20:05:11,602.602 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 20:05:11,798.798 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 20:05:11,823.823 INFO    ] time= 12/06/2026 20:05:11
[2026-06-12 20:05:11,828.828 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 20:05:11,830.830 INFO    ] Checking for existing commands in stream...
[2026-06-12 20:05:11,897.897 INFO    ] No existing commands found in stream
[2026-06-12 20:05:16,906.906 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 20:05:16,909.909 INFO    ] Waiting 3.93 seconds before fallback handling...
[2026-06-12 20:05:21,244.244 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 20:05:21,245.245 INFO    ] Checking for system updates...
[2026-06-12 20:05:21,266.266 INFO    ] 200
[2026-06-12 20:05:21,267.267 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:05:21,297.297 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 20:05:21,298.298 INFO    ] No update needed
[2026-06-12 20:05:21,300.300 INFO    ] Checking for camera pi updates...
[2026-06-12 20:05:21,320.320 INFO    ] 200
[2026-06-12 20:05:21,321.321 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:05:21,346.346 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 20:05:21,388.388 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 20:05:21,389.389 INFO    ] No camera update needed
[2026-06-12 20:05:21,391.391 INFO    ] Script finished. Safe exiting...
[2026-06-12 20:05:21,392.392 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 20:05:21,395.395 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 20:05:21,397.397 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 20:05:23,437.437 INFO    ] ================================================
[2026-06-12 20:05:23,452.452 INFO    ] Launching Daemon at Fri Jun 12 20:05:23 IST 2026
[2026-06-12 20:05:23,463.463 INFO    ] ================================================
[2026-06-12 20:05:23,799.799 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 20:05:23
[2026-06-12 20:05:24,112.112 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 20:05:24,244.244 INFO    ] Initializing speech engine...
[2026-06-12 20:05:24,248.248 INFO    ] 2026-06-12 20:05:24
[2026-06-12 20:05:24,479.479 INFO    ] 2026-06-12 20:05:24
[2026-06-12 20:05:24,510.510 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 20:05:24,708.708 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 20:05:24,712.712 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 20:05:24,852.852 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 20:05:24,903.903 INFO    ] time= 12/06/2026 20:05:24
[2026-06-12 20:05:24,937.937 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 20:05:24,960.960 INFO    ] Checking for existing commands in stream...
[2026-06-12 20:05:25,036.036 INFO    ] No existing commands found in stream
[2026-06-12 20:05:30,046.046 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 20:05:30,049.049 INFO    ] Waiting 3.95 seconds before fallback handling...
[2026-06-12 20:05:34,337.337 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 20:05:34,339.339 INFO    ] Checking for system updates...
[2026-06-12 20:05:34,377.377 INFO    ] 200
[2026-06-12 20:05:34,379.379 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:05:34,414.414 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 20:05:34,416.416 INFO    ] No update needed
[2026-06-12 20:05:34,418.418 INFO    ] Checking for camera pi updates...
[2026-06-12 20:05:34,440.440 INFO    ] 200
[2026-06-12 20:05:34,442.442 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:05:34,479.479 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 20:05:34,522.522 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 20:05:34,524.524 INFO    ] No camera update needed
[2026-06-12 20:05:34,525.525 INFO    ] Script finished. Safe exiting...
[2026-06-12 20:05:34,526.526 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 20:05:34,529.529 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 20:05:34,532.532 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 20:05:36,570.570 INFO    ] ================================================
[2026-06-12 20:05:36,586.586 INFO    ] Launching Daemon at Fri Jun 12 20:05:36 IST 2026
[2026-06-12 20:05:36,597.597 INFO    ] ================================================
[2026-06-12 20:05:36,927.927 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 20:05:36
[2026-06-12 20:05:37,240.240 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 20:05:37,369.369 INFO    ] Initializing speech engine...
[2026-06-12 20:05:37,378.378 INFO    ] 2026-06-12 20:05:37
[2026-06-12 20:05:37,592.592 INFO    ] 2026-06-12 20:05:37
[2026-06-12 20:05:37,621.621 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 20:05:37,807.807 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 20:05:37,816.816 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 20:05:37,939.939 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 20:05:38,010.010 INFO    ] time= 12/06/2026 20:05:37
[2026-06-12 20:05:38,039.039 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 20:05:38,045.045 INFO    ] Checking for existing commands in stream...
[2026-06-12 20:05:38,113.113 INFO    ] No existing commands found in stream
[2026-06-12 20:05:43,122.122 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 20:05:43,124.124 INFO    ] Waiting 2.95 seconds before fallback handling...
[2026-06-12 20:05:46,424.424 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 20:05:46,426.426 INFO    ] Checking for system updates...
[2026-06-12 20:05:46,446.446 INFO    ] 200
[2026-06-12 20:05:46,448.448 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:05:46,478.478 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 20:05:46,479.479 INFO    ] No update needed
[2026-06-12 20:05:46,481.481 INFO    ] Checking for camera pi updates...
[2026-06-12 20:05:46,502.502 INFO    ] 200
[2026-06-12 20:05:46,503.503 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:05:46,529.529 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 20:05:46,572.572 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 20:05:46,573.573 INFO    ] No camera update needed
[2026-06-12 20:05:46,575.575 INFO    ] Script finished. Safe exiting...
[2026-06-12 20:05:46,576.576 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 20:05:46,579.579 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 20:05:46,582.582 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 20:05:48,621.621 INFO    ] ================================================
[2026-06-12 20:05:48,637.637 INFO    ] Launching Daemon at Fri Jun 12 20:05:48 IST 2026
[2026-06-12 20:05:48,648.648 INFO    ] ================================================
[2026-06-12 20:05:48,984.984 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 20:05:48
[2026-06-12 20:05:49,298.298 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 20:05:49,428.428 INFO    ] Initializing speech engine...
[2026-06-12 20:05:49,432.432 INFO    ] 2026-06-12 20:05:49
[2026-06-12 20:05:49,650.650 INFO    ] 2026-06-12 20:05:49
[2026-06-12 20:05:49,692.692 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 20:05:49,890.890 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 20:05:49,894.894 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 20:05:50,026.026 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 20:05:50,075.075 INFO    ] time= 12/06/2026 20:05:50
[2026-06-12 20:05:50,098.098 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 20:05:50,103.103 INFO    ] Checking for existing commands in stream...
[2026-06-12 20:05:50,170.170 INFO    ] No existing commands found in stream
[2026-06-12 20:05:55,180.180 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 20:05:55,183.183 INFO    ] Waiting 0.07 seconds before fallback handling...
[2026-06-12 20:05:55,712.712 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 20:05:55,713.713 INFO    ] Checking for system updates...
[2026-06-12 20:05:55,734.734 INFO    ] 200
[2026-06-12 20:05:55,735.735 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:05:55,766.766 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 20:05:55,767.767 INFO    ] No update needed
[2026-06-12 20:05:55,768.768 INFO    ] Checking for camera pi updates...
[2026-06-12 20:05:55,789.789 INFO    ] 200
[2026-06-12 20:05:55,791.791 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:05:55,814.814 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 20:05:55,862.862 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 20:05:55,863.863 INFO    ] No camera update needed
[2026-06-12 20:05:55,864.864 INFO    ] Script finished. Safe exiting...
[2026-06-12 20:05:55,866.866 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 20:05:55,869.869 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 20:05:55,872.872 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 20:05:57,914.914 INFO    ] ================================================
[2026-06-12 20:05:57,929.929 INFO    ] Launching Daemon at Fri Jun 12 20:05:57 IST 2026
[2026-06-12 20:05:57,941.941 INFO    ] ================================================
[2026-06-12 20:05:58,279.279 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 20:05:58
[2026-06-12 20:05:58,591.591 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 20:05:58,722.722 INFO    ] Initializing speech engine...
[2026-06-12 20:05:58,730.730 INFO    ] 2026-06-12 20:05:58
[2026-06-12 20:05:58,944.944 INFO    ] 2026-06-12 20:05:58
[2026-06-12 20:05:58,974.974 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 20:05:59,159.159 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 20:05:59,162.162 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 20:05:59,293.293 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 20:05:59,344.344 INFO    ] time= 12/06/2026 20:05:59
[2026-06-12 20:05:59,392.392 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 20:05:59,394.394 INFO    ] Checking for existing commands in stream...
[2026-06-12 20:05:59,466.466 INFO    ] No existing commands found in stream
[2026-06-12 20:06:04,475.475 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 20:06:04,478.478 INFO    ] Waiting 2.58 seconds before fallback handling...
[2026-06-12 20:06:07,435.435 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 20:06:07,436.436 INFO    ] Checking for system updates...
[2026-06-12 20:06:07,457.457 INFO    ] 200
[2026-06-12 20:06:07,458.458 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:06:07,490.490 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 20:06:07,492.492 INFO    ] No update needed
[2026-06-12 20:06:07,493.493 INFO    ] Checking for camera pi updates...
[2026-06-12 20:06:07,514.514 INFO    ] 200
[2026-06-12 20:06:07,515.515 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:06:07,541.541 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 20:06:07,580.580 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 20:06:07,581.581 INFO    ] No camera update needed
[2026-06-12 20:06:07,583.583 INFO    ] Script finished. Safe exiting...
[2026-06-12 20:06:07,584.584 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 20:06:07,587.587 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 20:06:07,590.590 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 20:06:09,629.629 INFO    ] ================================================
[2026-06-12 20:06:09,645.645 INFO    ] Launching Daemon at Fri Jun 12 20:06:09 IST 2026
[2026-06-12 20:06:09,656.656 INFO    ] ================================================
[2026-06-12 20:06:10,015.015 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 20:06:10
[2026-06-12 20:06:10,331.331 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 20:06:10,464.464 INFO    ] Initializing speech engine...
[2026-06-12 20:06:10,477.477 INFO    ] 2026-06-12 20:06:10
[2026-06-12 20:06:10,684.684 INFO    ] 2026-06-12 20:06:10
[2026-06-12 20:06:10,713.713 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 20:06:10,898.898 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 20:06:10,908.908 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 20:06:11,037.037 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 20:06:11,104.104 INFO    ] time= 12/06/2026 20:06:11
[2026-06-12 20:06:11,128.128 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 20:06:11,134.134 INFO    ] Checking for existing commands in stream...
[2026-06-12 20:06:11,201.201 INFO    ] No existing commands found in stream
[2026-06-12 20:06:16,215.215 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 20:06:16,218.218 INFO    ] Waiting 1.53 seconds before fallback handling...
[2026-06-12 20:06:18,115.115 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 20:06:18,117.117 INFO    ] Checking for system updates...
[2026-06-12 20:06:18,138.138 INFO    ] 200
[2026-06-12 20:06:18,139.139 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:06:18,174.174 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 20:06:18,176.176 INFO    ] No update needed
[2026-06-12 20:06:18,177.177 INFO    ] Checking for camera pi updates...
[2026-06-12 20:06:18,196.196 INFO    ] 200
[2026-06-12 20:06:18,197.197 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:06:18,220.220 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 20:06:18,270.270 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 20:06:18,272.272 INFO    ] No camera update needed
[2026-06-12 20:06:18,273.273 INFO    ] Script finished. Safe exiting...
[2026-06-12 20:06:18,274.274 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 20:06:18,277.277 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 20:06:18,280.280 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 20:06:20,319.319 INFO    ] ================================================
[2026-06-12 20:06:20,335.335 INFO    ] Launching Daemon at Fri Jun 12 20:06:20 IST 2026
[2026-06-12 20:06:20,346.346 INFO    ] ================================================
[2026-06-12 20:06:20,709.709 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 20:06:20
[2026-06-12 20:06:21,021.021 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 20:06:21,152.152 INFO    ] Initializing speech engine...
[2026-06-12 20:06:21,160.160 INFO    ] 2026-06-12 20:06:21
[2026-06-12 20:06:21,375.375 INFO    ] 2026-06-12 20:06:21
[2026-06-12 20:06:21,404.404 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 20:06:21,592.592 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 20:06:21,600.600 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 20:06:21,729.729 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 20:06:21,786.786 INFO    ] time= 12/06/2026 20:06:21
[2026-06-12 20:06:21,822.822 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 20:06:21,827.827 INFO    ] Checking for existing commands in stream...
[2026-06-12 20:06:21,898.898 INFO    ] No existing commands found in stream
[2026-06-12 20:06:26,909.909 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 20:06:26,912.912 INFO    ] Waiting 3.44 seconds before fallback handling...
[2026-06-12 20:06:30,764.764 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 20:06:30,766.766 INFO    ] Checking for system updates...
[2026-06-12 20:06:30,786.786 INFO    ] 200
[2026-06-12 20:06:30,788.788 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:06:30,819.819 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 20:06:30,820.820 INFO    ] No update needed
[2026-06-12 20:06:30,822.822 INFO    ] Checking for camera pi updates...
[2026-06-12 20:06:30,842.842 INFO    ] 200
[2026-06-12 20:06:30,843.843 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:06:30,866.866 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 20:06:30,912.912 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 20:06:30,914.914 INFO    ] No camera update needed
[2026-06-12 20:06:30,915.915 INFO    ] Script finished. Safe exiting...
[2026-06-12 20:06:30,917.917 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 20:06:30,920.920 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 20:06:30,923.923 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 20:06:32,956.956 INFO    ] ================================================
[2026-06-12 20:06:32,971.971 INFO    ] Launching Daemon at Fri Jun 12 20:06:32 IST 2026
[2026-06-12 20:06:32,982.982 INFO    ] ================================================
[2026-06-12 20:06:33,339.339 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 20:06:33
[2026-06-12 20:06:33,682.682 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 20:06:33,839.839 INFO    ] Initializing speech engine...
[2026-06-12 20:06:33,844.844 INFO    ] 2026-06-12 20:06:33
[2026-06-12 20:06:34,054.054 INFO    ] 2026-06-12 20:06:34
[2026-06-12 20:06:34,084.084 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 20:06:34,273.273 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 20:06:34,282.282 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 20:06:34,424.424 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 20:06:34,482.482 INFO    ] time= 12/06/2026 20:06:34
[2026-06-12 20:06:34,507.507 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 20:06:34,514.514 INFO    ] Checking for existing commands in stream...
[2026-06-12 20:06:34,581.581 INFO    ] No existing commands found in stream
[2026-06-12 20:06:39,596.596 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 20:06:39,599.599 INFO    ] Waiting 0.45 seconds before fallback handling...
[2026-06-12 20:06:40,489.489 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 20:06:40,491.491 INFO    ] Checking for system updates...
[2026-06-12 20:06:40,513.513 INFO    ] 200
[2026-06-12 20:06:40,514.514 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:06:40,547.547 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 20:06:40,548.548 INFO    ] No update needed
[2026-06-12 20:06:40,549.549 INFO    ] Checking for camera pi updates...
[2026-06-12 20:06:40,569.569 INFO    ] 200
[2026-06-12 20:06:40,570.570 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:06:40,593.593 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 20:06:40,635.635 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 20:06:40,637.637 INFO    ] No camera update needed
[2026-06-12 20:06:40,638.638 INFO    ] Script finished. Safe exiting...
[2026-06-12 20:06:40,639.639 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 20:06:40,642.642 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 20:06:40,645.645 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 20:06:42,683.683 INFO    ] ================================================
[2026-06-12 20:06:42,698.698 INFO    ] Launching Daemon at Fri Jun 12 20:06:42 IST 2026
[2026-06-12 20:06:42,709.709 INFO    ] ================================================
[2026-06-12 20:06:43,064.064 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 20:06:43
[2026-06-12 20:06:43,376.376 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 20:06:43,520.520 INFO    ] Initializing speech engine...
[2026-06-12 20:06:43,525.525 INFO    ] 2026-06-12 20:06:43
[2026-06-12 20:06:43,730.730 INFO    ] 2026-06-12 20:06:43
[2026-06-12 20:06:43,760.760 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 20:06:43,946.946 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 20:06:43,955.955 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 20:06:44,085.085 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 20:06:44,149.149 INFO    ] time= 12/06/2026 20:06:44
[2026-06-12 20:06:44,178.178 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 20:06:44,184.184 INFO    ] Checking for existing commands in stream...
[2026-06-12 20:06:44,275.275 INFO    ] No existing commands found in stream
[2026-06-12 20:06:49,284.284 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 20:06:49,286.286 INFO    ] Waiting 0.29 seconds before fallback handling...
[2026-06-12 20:06:49,985.985 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 20:06:49,987.987 INFO    ] Checking for system updates...
[2026-06-12 20:06:50,023.023 INFO    ] 200
[2026-06-12 20:06:50,024.024 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:06:50,055.055 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 20:06:50,057.057 INFO    ] No update needed
[2026-06-12 20:06:50,058.058 INFO    ] Checking for camera pi updates...
[2026-06-12 20:06:50,077.077 INFO    ] 200
[2026-06-12 20:06:50,078.078 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:06:50,103.103 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 20:06:50,170.170 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 20:06:50,172.172 INFO    ] No camera update needed
[2026-06-12 20:06:50,173.173 INFO    ] Script finished. Safe exiting...
[2026-06-12 20:06:50,174.174 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 20:06:50,177.177 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 20:06:50,180.180 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 20:06:52,218.218 INFO    ] ================================================
[2026-06-12 20:06:52,233.233 INFO    ] Launching Daemon at Fri Jun 12 20:06:52 IST 2026
[2026-06-12 20:06:52,243.243 INFO    ] ================================================
[2026-06-12 20:06:52,581.581 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 20:06:52
[2026-06-12 20:06:52,897.897 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 20:06:53,037.037 INFO    ] Initializing speech engine...
[2026-06-12 20:06:53,048.048 INFO    ] 2026-06-12 20:06:53
[2026-06-12 20:06:53,252.252 INFO    ] 2026-06-12 20:06:53
[2026-06-12 20:06:53,281.281 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 20:06:53,465.465 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 20:06:53,474.474 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 20:06:53,619.619 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 20:06:53,672.672 INFO    ] time= 12/06/2026 20:06:53
[2026-06-12 20:06:53,695.695 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 20:06:53,701.701 INFO    ] Checking for existing commands in stream...
[2026-06-12 20:06:53,768.768 INFO    ] No existing commands found in stream
[2026-06-12 20:06:58,777.777 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 20:06:58,779.779 INFO    ] Waiting 3.71 seconds before fallback handling...
[2026-06-12 20:07:02,799.799 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 20:07:02,801.801 INFO    ] Checking for system updates...
[2026-06-12 20:07:02,840.840 INFO    ] 200
[2026-06-12 20:07:02,842.842 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:07:02,878.878 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 20:07:02,880.880 INFO    ] No update needed
[2026-06-12 20:07:02,883.883 INFO    ] Checking for camera pi updates...
[2026-06-12 20:07:02,912.912 INFO    ] 200
[2026-06-12 20:07:02,914.914 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:07:02,939.939 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 20:07:02,966.966 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 20:07:02,968.968 INFO    ] No camera update needed
[2026-06-12 20:07:02,969.969 INFO    ] Script finished. Safe exiting...
[2026-06-12 20:07:02,971.971 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 20:07:02,974.974 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 20:07:02,976.976 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 20:07:05,014.014 INFO    ] ================================================
[2026-06-12 20:07:05,029.029 INFO    ] Launching Daemon at Fri Jun 12 20:07:05 IST 2026
[2026-06-12 20:07:05,039.039 INFO    ] ================================================
[2026-06-12 20:07:05,432.432 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 20:07:05
[2026-06-12 20:07:05,775.775 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 20:07:05,921.921 INFO    ] Initializing speech engine...
[2026-06-12 20:07:05,926.926 INFO    ] 2026-06-12 20:07:05
[2026-06-12 20:07:06,119.119 INFO    ] 2026-06-12 20:07:06
[2026-06-12 20:07:06,164.164 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 20:07:06,312.312 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 20:07:06,370.370 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 20:07:06,512.512 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 20:07:06,577.577 INFO    ] time= 12/06/2026 20:07:06
[2026-06-12 20:07:06,603.603 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 20:07:06,610.610 INFO    ] Checking for existing commands in stream...
[2026-06-12 20:07:06,675.675 INFO    ] No existing commands found in stream
[2026-06-12 20:07:11,685.685 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 20:07:11,688.688 INFO    ] Waiting 0.57 seconds before fallback handling...
[2026-06-12 20:07:12,624.624 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 20:07:12,626.626 INFO    ] Checking for system updates...
[2026-06-12 20:07:12,646.646 INFO    ] 200
[2026-06-12 20:07:12,647.647 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:07:12,677.677 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 20:07:12,679.679 INFO    ] No update needed
[2026-06-12 20:07:12,680.680 INFO    ] Checking for camera pi updates...
[2026-06-12 20:07:12,701.701 INFO    ] 200
[2026-06-12 20:07:12,702.702 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:07:12,727.727 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 20:07:12,853.853 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 20:07:12,854.854 INFO    ] No camera update needed
[2026-06-12 20:07:12,855.855 INFO    ] Script finished. Safe exiting...
[2026-06-12 20:07:12,857.857 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 20:07:12,859.859 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 20:07:12,862.862 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 20:07:14,900.900 INFO    ] ================================================
[2026-06-12 20:07:14,915.915 INFO    ] Launching Daemon at Fri Jun 12 20:07:14 IST 2026
[2026-06-12 20:07:14,926.926 INFO    ] ================================================
[2026-06-12 20:07:15,296.296 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 20:07:15
[2026-06-12 20:07:15,614.614 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 20:07:15,758.758 INFO    ] Initializing speech engine...
[2026-06-12 20:07:15,762.762 INFO    ] 2026-06-12 20:07:15
[2026-06-12 20:07:15,967.967 INFO    ] 2026-06-12 20:07:15
[2026-06-12 20:07:15,996.996 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 20:07:16,119.119 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 20:07:16,182.182 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 20:07:16,319.319 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 20:07:16,378.378 INFO    ] time= 12/06/2026 20:07:16
[2026-06-12 20:07:16,411.411 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 20:07:16,417.417 INFO    ] Checking for existing commands in stream...
[2026-06-12 20:07:16,484.484 INFO    ] No existing commands found in stream
[2026-06-12 20:07:21,494.494 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 20:07:21,497.497 INFO    ] Waiting 1.96 seconds before fallback handling...
[2026-06-12 20:07:23,856.856 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 20:07:23,857.857 INFO    ] Checking for system updates...
[2026-06-12 20:07:23,878.878 INFO    ] 200
[2026-06-12 20:07:23,879.879 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:07:23,912.912 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 20:07:23,913.913 INFO    ] No update needed
[2026-06-12 20:07:23,915.915 INFO    ] Checking for camera pi updates...
[2026-06-12 20:07:23,934.934 INFO    ] 200
[2026-06-12 20:07:23,935.935 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:07:23,958.958 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 20:07:24,012.012 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 20:07:24,013.013 INFO    ] No camera update needed
[2026-06-12 20:07:24,015.015 INFO    ] Script finished. Safe exiting...
[2026-06-12 20:07:24,016.016 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 20:07:24,019.019 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 20:07:24,022.022 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 20:07:26,060.060 INFO    ] ================================================
[2026-06-12 20:07:26,074.074 INFO    ] Launching Daemon at Fri Jun 12 20:07:26 IST 2026
[2026-06-12 20:07:26,085.085 INFO    ] ================================================
[2026-06-12 20:07:26,433.433 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 20:07:26
[2026-06-12 20:07:26,745.745 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 20:07:26,889.889 INFO    ] Initializing speech engine...
[2026-06-12 20:07:26,894.894 INFO    ] 2026-06-12 20:07:26
[2026-06-12 20:07:27,098.098 INFO    ] 2026-06-12 20:07:27
[2026-06-12 20:07:27,128.128 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 20:07:27,314.314 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 20:07:27,318.318 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 20:07:27,449.449 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 20:07:27,505.505 INFO    ] time= 12/06/2026 20:07:27
[2026-06-12 20:07:27,541.541 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 20:07:27,551.551 INFO    ] Checking for existing commands in stream...
[2026-06-12 20:07:27,647.647 INFO    ] No existing commands found in stream
[2026-06-12 20:07:32,652.652 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 20:07:32,655.655 INFO    ] Waiting 0.58 seconds before fallback handling...
[2026-06-12 20:07:33,601.601 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 20:07:33,604.604 INFO    ] Checking for system updates...
[2026-06-12 20:07:33,640.640 INFO    ] 200
[2026-06-12 20:07:33,642.642 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:07:33,684.684 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 20:07:33,686.686 INFO    ] No update needed
[2026-06-12 20:07:33,687.687 INFO    ] Checking for camera pi updates...
[2026-06-12 20:07:33,707.707 INFO    ] 200
[2026-06-12 20:07:33,708.708 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:07:33,732.732 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 20:07:33,787.787 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 20:07:33,789.789 INFO    ] No camera update needed
[2026-06-12 20:07:33,790.790 INFO    ] Script finished. Safe exiting...
[2026-06-12 20:07:33,791.791 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 20:07:33,794.794 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 20:07:33,797.797 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 20:07:35,837.837 INFO    ] ================================================
[2026-06-12 20:07:35,852.852 INFO    ] Launching Daemon at Fri Jun 12 20:07:35 IST 2026
[2026-06-12 20:07:35,869.869 INFO    ] ================================================
[2026-06-12 20:07:36,238.238 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 20:07:36
[2026-06-12 20:07:36,556.556 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 20:07:36,694.694 INFO    ] Initializing speech engine...
[2026-06-12 20:07:36,704.704 INFO    ] 2026-06-12 20:07:36
[2026-06-12 20:07:36,908.908 INFO    ] 2026-06-12 20:07:36
[2026-06-12 20:07:36,937.937 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 20:07:37,120.120 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 20:07:37,129.129 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 20:07:37,278.278 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 20:07:37,331.331 INFO    ] time= 12/06/2026 20:07:37
[2026-06-12 20:07:37,347.347 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 20:07:37,354.354 INFO    ] Checking for existing commands in stream...
[2026-06-12 20:07:37,418.418 INFO    ] No existing commands found in stream
[2026-06-12 20:07:42,429.429 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 20:07:42,432.432 INFO    ] Waiting 3.01 seconds before fallback handling...
[2026-06-12 20:07:46,905.905 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 20:07:46,908.908 INFO    ] Checking for system updates...
[2026-06-12 20:07:46,944.944 INFO    ] 200
[2026-06-12 20:07:46,946.946 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:07:47,004.004 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 20:07:47,006.006 INFO    ] No update needed
[2026-06-12 20:07:47,007.007 INFO    ] Checking for camera pi updates...
[2026-06-12 20:07:47,028.028 INFO    ] 200
[2026-06-12 20:07:47,029.029 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:07:47,052.052 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 20:07:47,092.092 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 20:07:47,093.093 INFO    ] No camera update needed
[2026-06-12 20:07:47,095.095 INFO    ] Script finished. Safe exiting...
[2026-06-12 20:07:47,096.096 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 20:07:47,099.099 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 20:07:47,102.102 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 20:07:49,139.139 INFO    ] ================================================
[2026-06-12 20:07:49,154.154 INFO    ] Launching Daemon at Fri Jun 12 20:07:49 IST 2026
[2026-06-12 20:07:49,165.165 INFO    ] ================================================
[2026-06-12 20:07:49,497.497 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 20:07:49
[2026-06-12 20:07:49,837.837 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 20:07:49,987.987 INFO    ] Initializing speech engine...
[2026-06-12 20:07:49,992.992 INFO    ] 2026-06-12 20:07:49
[2026-06-12 20:07:50,210.210 INFO    ] 2026-06-12 20:07:50
[2026-06-12 20:07:50,240.240 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 20:07:50,422.422 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 20:07:50,426.426 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 20:07:50,587.587 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 20:07:50,629.629 INFO    ] time= 12/06/2026 20:07:50
[2026-06-12 20:07:50,652.652 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 20:07:50,658.658 INFO    ] Checking for existing commands in stream...
[2026-06-12 20:07:50,724.724 INFO    ] No existing commands found in stream
[2026-06-12 20:07:55,743.743 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 20:07:55,746.746 INFO    ] Waiting 3.33 seconds before fallback handling...
[2026-06-12 20:07:59,443.443 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 20:07:59,444.444 INFO    ] Checking for system updates...
[2026-06-12 20:07:59,466.466 INFO    ] 200
[2026-06-12 20:07:59,467.467 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:07:59,497.497 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 20:07:59,499.499 INFO    ] No update needed
[2026-06-12 20:07:59,500.500 INFO    ] Checking for camera pi updates...
[2026-06-12 20:07:59,520.520 INFO    ] 200
[2026-06-12 20:07:59,522.522 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:07:59,547.547 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 20:07:59,588.588 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 20:07:59,589.589 INFO    ] No camera update needed
[2026-06-12 20:07:59,591.591 INFO    ] Script finished. Safe exiting...
[2026-06-12 20:07:59,592.592 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 20:07:59,595.595 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 20:07:59,599.599 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 20:08:01,631.631 INFO    ] ================================================
[2026-06-12 20:08:01,645.645 INFO    ] Launching Daemon at Fri Jun 12 20:08:01 IST 2026
[2026-06-12 20:08:01,655.655 INFO    ] ================================================
[2026-06-12 20:08:02,013.013 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 20:08:02
[2026-06-12 20:08:02,407.407 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 20:08:02,566.566 INFO    ] Initializing speech engine...
[2026-06-12 20:08:02,571.571 INFO    ] 2026-06-12 20:08:02
[2026-06-12 20:08:02,778.778 INFO    ] 2026-06-12 20:08:02
[2026-06-12 20:08:02,808.808 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 20:08:02,929.929 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 20:08:02,992.992 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 20:08:03,121.121 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 20:08:03,177.177 INFO    ] time= 12/06/2026 20:08:03
[2026-06-12 20:08:03,216.216 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 20:08:03,221.221 INFO    ] Checking for existing commands in stream...
[2026-06-12 20:08:03,291.291 INFO    ] No existing commands found in stream
[2026-06-12 20:08:08,300.300 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 20:08:08,303.303 INFO    ] Waiting 1.39 seconds before fallback handling...
[2026-06-12 20:08:10,077.077 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 20:08:10,078.078 INFO    ] Checking for system updates...
[2026-06-12 20:08:10,100.100 INFO    ] 200
[2026-06-12 20:08:10,101.101 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:08:10,134.134 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 20:08:10,135.135 INFO    ] No update needed
[2026-06-12 20:08:10,137.137 INFO    ] Checking for camera pi updates...
[2026-06-12 20:08:10,156.156 INFO    ] 200
[2026-06-12 20:08:10,157.157 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:08:10,182.182 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 20:08:10,235.235 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 20:08:10,236.236 INFO    ] No camera update needed
[2026-06-12 20:08:10,238.238 INFO    ] Script finished. Safe exiting...
[2026-06-12 20:08:10,239.239 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 20:08:10,242.242 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 20:08:10,245.245 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 20:08:12,283.283 INFO    ] ================================================
[2026-06-12 20:08:12,298.298 INFO    ] Launching Daemon at Fri Jun 12 20:08:12 IST 2026
[2026-06-12 20:08:12,309.309 INFO    ] ================================================
[2026-06-12 20:08:12,647.647 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 20:08:12
[2026-06-12 20:08:12,958.958 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 20:08:13,100.100 INFO    ] Initializing speech engine...
[2026-06-12 20:08:13,105.105 INFO    ] 2026-06-12 20:08:13
[2026-06-12 20:08:13,309.309 INFO    ] 2026-06-12 20:08:13
[2026-06-12 20:08:13,337.337 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 20:08:13,459.459 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 20:08:13,521.521 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 20:08:13,654.654 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 20:08:13,715.715 INFO    ] time= 12/06/2026 20:08:13
[2026-06-12 20:08:13,743.743 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 20:08:13,754.754 INFO    ] Checking for existing commands in stream...
[2026-06-12 20:08:13,825.825 INFO    ] No existing commands found in stream
[2026-06-12 20:08:18,839.839 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 20:08:18,842.842 INFO    ] Waiting 1.73 seconds before fallback handling...
[2026-06-12 20:08:20,959.959 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 20:08:20,960.960 INFO    ] Checking for system updates...
[2026-06-12 20:08:20,982.982 INFO    ] 200
[2026-06-12 20:08:20,984.984 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:08:21,016.016 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 20:08:21,018.018 INFO    ] No update needed
[2026-06-12 20:08:21,019.019 INFO    ] Checking for camera pi updates...
[2026-06-12 20:08:21,038.038 INFO    ] 200
[2026-06-12 20:08:21,039.039 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:08:21,062.062 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 20:08:21,107.107 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 20:08:21,109.109 INFO    ] No camera update needed
[2026-06-12 20:08:21,110.110 INFO    ] Script finished. Safe exiting...
[2026-06-12 20:08:21,111.111 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 20:08:21,114.114 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 20:08:21,117.117 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 20:08:23,156.156 INFO    ] ================================================
[2026-06-12 20:08:23,172.172 INFO    ] Launching Daemon at Fri Jun 12 20:08:23 IST 2026
[2026-06-12 20:08:23,186.186 INFO    ] ================================================
[2026-06-12 20:08:23,578.578 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 20:08:23
[2026-06-12 20:08:23,920.920 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 20:08:24,068.068 INFO    ] Initializing speech engine...
[2026-06-12 20:08:24,077.077 INFO    ] 2026-06-12 20:08:24
[2026-06-12 20:08:24,288.288 INFO    ] 2026-06-12 20:08:24
[2026-06-12 20:08:24,318.318 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 20:08:24,506.506 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 20:08:24,516.516 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 20:08:24,652.652 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 20:08:24,716.716 INFO    ] time= 12/06/2026 20:08:24
[2026-06-12 20:08:24,739.739 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 20:08:24,746.746 INFO    ] Checking for existing commands in stream...
[2026-06-12 20:08:24,838.838 INFO    ] No existing commands found in stream
[2026-06-12 20:08:29,852.852 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 20:08:29,855.855 INFO    ] Waiting 3.84 seconds before fallback handling...
[2026-06-12 20:08:34,114.114 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 20:08:34,116.116 INFO    ] Checking for system updates...
[2026-06-12 20:08:34,136.136 INFO    ] 200
[2026-06-12 20:08:34,138.138 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:08:34,168.168 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 20:08:34,169.169 INFO    ] No update needed
[2026-06-12 20:08:34,171.171 INFO    ] Checking for camera pi updates...
[2026-06-12 20:08:34,192.192 INFO    ] 200
[2026-06-12 20:08:34,194.194 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:08:34,217.217 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 20:08:34,260.260 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 20:08:34,261.261 INFO    ] No camera update needed
[2026-06-12 20:08:34,263.263 INFO    ] Script finished. Safe exiting...
[2026-06-12 20:08:34,264.264 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 20:08:34,267.267 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 20:08:34,271.271 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 20:08:36,311.311 INFO    ] ================================================
[2026-06-12 20:08:36,326.326 INFO    ] Launching Daemon at Fri Jun 12 20:08:36 IST 2026
[2026-06-12 20:08:36,337.337 INFO    ] ================================================
[2026-06-12 20:08:36,708.708 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 20:08:36
[2026-06-12 20:08:37,024.024 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 20:08:37,164.164 INFO    ] Initializing speech engine...
[2026-06-12 20:08:37,175.175 INFO    ] 2026-06-12 20:08:37
[2026-06-12 20:08:37,393.393 INFO    ] 2026-06-12 20:08:37
[2026-06-12 20:08:37,424.424 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 20:08:37,556.556 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 20:08:37,601.601 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 20:08:37,761.761 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 20:08:37,817.817 INFO    ] time= 12/06/2026 20:08:37
[2026-06-12 20:08:37,855.855 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 20:08:37,861.861 INFO    ] Checking for existing commands in stream...
[2026-06-12 20:08:37,928.928 INFO    ] No existing commands found in stream
[2026-06-12 20:08:42,942.942 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 20:08:42,945.945 INFO    ] Waiting 2.71 seconds before fallback handling...
[2026-06-12 20:08:46,052.052 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 20:08:46,054.054 INFO    ] Checking for system updates...
[2026-06-12 20:08:46,075.075 INFO    ] 200
[2026-06-12 20:08:46,077.077 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:08:46,109.109 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 20:08:46,111.111 INFO    ] No update needed
[2026-06-12 20:08:46,112.112 INFO    ] Checking for camera pi updates...
[2026-06-12 20:08:46,133.133 INFO    ] 200
[2026-06-12 20:08:46,134.134 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:08:46,159.159 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 20:08:46,200.200 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 20:08:46,202.202 INFO    ] No camera update needed
[2026-06-12 20:08:46,203.203 INFO    ] Script finished. Safe exiting...
[2026-06-12 20:08:46,204.204 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 20:08:46,207.207 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 20:08:46,210.210 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 20:08:48,248.248 INFO    ] ================================================
[2026-06-12 20:08:48,264.264 INFO    ] Launching Daemon at Fri Jun 12 20:08:48 IST 2026
[2026-06-12 20:08:48,276.276 INFO    ] ================================================
[2026-06-12 20:08:48,608.608 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 20:08:48
[2026-06-12 20:08:48,924.924 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 20:08:49,057.057 INFO    ] Initializing speech engine...
[2026-06-12 20:08:49,070.070 INFO    ] 2026-06-12 20:08:49
[2026-06-12 20:08:49,279.279 INFO    ] 2026-06-12 20:08:49
[2026-06-12 20:08:49,308.308 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 20:08:49,492.492 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 20:08:49,502.502 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 20:08:49,648.648 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 20:08:49,702.702 INFO    ] time= 12/06/2026 20:08:49
[2026-06-12 20:08:49,724.724 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 20:08:49,730.730 INFO    ] Checking for existing commands in stream...
[2026-06-12 20:08:49,797.797 INFO    ] No existing commands found in stream
[2026-06-12 20:08:54,806.806 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 20:08:54,809.809 INFO    ] Waiting 3.03 seconds before fallback handling...
[2026-06-12 20:08:58,258.258 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 20:08:58,260.260 INFO    ] Checking for system updates...
[2026-06-12 20:08:58,282.282 INFO    ] 200
[2026-06-12 20:08:58,283.283 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:08:58,316.316 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 20:08:58,317.317 INFO    ] No update needed
[2026-06-12 20:08:58,318.318 INFO    ] Checking for camera pi updates...
[2026-06-12 20:08:58,339.339 INFO    ] 200
[2026-06-12 20:08:58,340.340 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:08:58,363.363 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 20:08:58,413.413 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 20:08:58,415.415 INFO    ] No camera update needed
[2026-06-12 20:08:58,416.416 INFO    ] Script finished. Safe exiting...
[2026-06-12 20:08:58,417.417 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 20:08:58,420.420 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 20:08:58,423.423 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 20:09:00,462.462 INFO    ] ================================================
[2026-06-12 20:09:00,478.478 INFO    ] Launching Daemon at Fri Jun 12 20:09:00 IST 2026
[2026-06-12 20:09:00,489.489 INFO    ] ================================================
[2026-06-12 20:09:00,845.845 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 20:09:00
[2026-06-12 20:09:01,163.163 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 20:09:01,295.295 INFO    ] Initializing speech engine...
[2026-06-12 20:09:01,303.303 INFO    ] 2026-06-12 20:09:01
[2026-06-12 20:09:01,514.514 INFO    ] 2026-06-12 20:09:01
[2026-06-12 20:09:01,559.559 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 20:09:01,717.717 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 20:09:01,719.719 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 20:09:01,858.858 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 20:09:01,864.864 INFO    ] time= 12/06/2026 20:09:01
[2026-06-12 20:09:01,880.880 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 20:09:01,886.886 INFO    ] Checking for existing commands in stream...
[2026-06-12 20:09:02,004.004 INFO    ] No existing commands found in stream
[2026-06-12 20:09:07,028.028 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 20:09:07,032.032 INFO    ] Waiting 0.93 seconds before fallback handling...
[2026-06-12 20:09:08,351.351 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 20:09:08,352.352 INFO    ] Checking for system updates...
[2026-06-12 20:09:08,373.373 INFO    ] 200
[2026-06-12 20:09:08,374.374 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:09:08,406.406 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 20:09:08,408.408 INFO    ] No update needed
[2026-06-12 20:09:08,409.409 INFO    ] Checking for camera pi updates...
[2026-06-12 20:09:08,431.431 INFO    ] 200
[2026-06-12 20:09:08,432.432 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:09:08,457.457 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 20:09:08,507.507 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 20:09:08,509.509 INFO    ] No camera update needed
[2026-06-12 20:09:08,510.510 INFO    ] Script finished. Safe exiting...
[2026-06-12 20:09:08,512.512 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 20:09:08,514.514 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 20:09:08,517.517 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 20:09:10,557.557 INFO    ] ================================================
[2026-06-12 20:09:10,572.572 INFO    ] Launching Daemon at Fri Jun 12 20:09:10 IST 2026
[2026-06-12 20:09:10,584.584 INFO    ] ================================================
[2026-06-12 20:09:10,955.955 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 20:09:10
[2026-06-12 20:09:11,299.299 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 20:09:11,450.450 INFO    ] Initializing speech engine...
[2026-06-12 20:09:11,454.454 INFO    ] 2026-06-12 20:09:11
[2026-06-12 20:09:11,656.656 INFO    ] 2026-06-12 20:09:11
[2026-06-12 20:09:11,704.704 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 20:09:11,869.869 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 20:09:11,888.888 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 20:09:12,035.035 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 20:09:12,094.094 INFO    ] time= 12/06/2026 20:09:12
[2026-06-12 20:09:12,105.105 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 20:09:12,175.175 INFO    ] Checking for existing commands in stream...
[2026-06-12 20:09:12,283.283 INFO    ] No existing commands found in stream
[2026-06-12 20:09:17,292.292 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 20:09:17,295.295 INFO    ] Waiting 3.63 seconds before fallback handling...
[2026-06-12 20:09:21,304.304 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 20:09:21,306.306 INFO    ] Checking for system updates...
[2026-06-12 20:09:21,327.327 INFO    ] 200
[2026-06-12 20:09:21,329.329 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:09:21,359.359 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 20:09:21,360.360 INFO    ] No update needed
[2026-06-12 20:09:21,362.362 INFO    ] Checking for camera pi updates...
[2026-06-12 20:09:21,382.382 INFO    ] 200
[2026-06-12 20:09:21,384.384 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:09:21,408.408 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 20:09:21,551.551 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 20:09:21,553.553 INFO    ] No camera update needed
[2026-06-12 20:09:21,554.554 INFO    ] Script finished. Safe exiting...
[2026-06-12 20:09:21,555.555 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 20:09:21,558.558 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 20:09:21,561.561 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 20:09:23,599.599 INFO    ] ================================================
[2026-06-12 20:09:23,615.615 INFO    ] Launching Daemon at Fri Jun 12 20:09:23 IST 2026
[2026-06-12 20:09:23,627.627 INFO    ] ================================================
[2026-06-12 20:09:23,978.978 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 20:09:23
[2026-06-12 20:09:24,299.299 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 20:09:24,433.433 INFO    ] Initializing speech engine...
[2026-06-12 20:09:24,437.437 INFO    ] 2026-06-12 20:09:24
[2026-06-12 20:09:24,636.636 INFO    ] 2026-06-12 20:09:24
[2026-06-12 20:09:24,678.678 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 20:09:24,837.837 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 20:09:24,905.905 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 20:09:25,050.050 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 20:09:25,101.101 INFO    ] time= 12/06/2026 20:09:25
[2026-06-12 20:09:25,136.136 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 20:09:25,159.159 INFO    ] Checking for existing commands in stream...
[2026-06-12 20:09:25,264.264 INFO    ] No existing commands found in stream
[2026-06-12 20:09:30,273.273 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 20:09:30,276.276 INFO    ] Waiting 3.84 seconds before fallback handling...
[2026-06-12 20:09:34,509.509 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 20:09:34,511.511 INFO    ] Checking for system updates...
[2026-06-12 20:09:34,531.531 INFO    ] 200
[2026-06-12 20:09:34,533.533 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:09:34,562.562 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 20:09:34,564.564 INFO    ] No update needed
[2026-06-12 20:09:34,565.565 INFO    ] Checking for camera pi updates...
[2026-06-12 20:09:34,584.584 INFO    ] 200
[2026-06-12 20:09:34,586.586 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:09:34,613.613 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 20:09:34,661.661 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 20:09:34,663.663 INFO    ] No camera update needed
[2026-06-12 20:09:34,664.664 INFO    ] Script finished. Safe exiting...
[2026-06-12 20:09:34,665.665 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 20:09:34,668.668 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 20:09:34,671.671 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 20:09:36,711.711 INFO    ] ================================================
[2026-06-12 20:09:36,727.727 INFO    ] Launching Daemon at Fri Jun 12 20:09:36 IST 2026
[2026-06-12 20:09:36,739.739 INFO    ] ================================================
[2026-06-12 20:09:37,101.101 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 20:09:37
[2026-06-12 20:09:37,416.416 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 20:09:37,548.548 INFO    ] Initializing speech engine...
[2026-06-12 20:09:37,561.561 INFO    ] 2026-06-12 20:09:37
[2026-06-12 20:09:37,770.770 INFO    ] 2026-06-12 20:09:37
[2026-06-12 20:09:37,799.799 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 20:09:37,986.986 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 20:09:37,995.995 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 20:09:38,127.127 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 20:09:38,191.191 INFO    ] time= 12/06/2026 20:09:38
[2026-06-12 20:09:38,219.219 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 20:09:38,225.225 INFO    ] Checking for existing commands in stream...
[2026-06-12 20:09:38,293.293 INFO    ] No existing commands found in stream
[2026-06-12 20:09:43,302.302 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 20:09:43,304.304 INFO    ] Waiting 1.57 seconds before fallback handling...
[2026-06-12 20:09:45,274.274 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 20:09:45,276.276 INFO    ] Checking for system updates...
[2026-06-12 20:09:45,296.296 INFO    ] 200
[2026-06-12 20:09:45,298.298 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:09:45,330.330 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 20:09:45,331.331 INFO    ] No update needed
[2026-06-12 20:09:45,333.333 INFO    ] Checking for camera pi updates...
[2026-06-12 20:09:45,353.353 INFO    ] 200
[2026-06-12 20:09:45,355.355 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:09:45,377.377 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 20:09:45,424.424 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 20:09:45,426.426 INFO    ] No camera update needed
[2026-06-12 20:09:45,427.427 INFO    ] Script finished. Safe exiting...
[2026-06-12 20:09:45,428.428 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 20:09:45,431.431 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 20:09:45,434.434 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 20:09:47,473.473 INFO    ] ================================================
[2026-06-12 20:09:47,489.489 INFO    ] Launching Daemon at Fri Jun 12 20:09:47 IST 2026
[2026-06-12 20:09:47,500.500 INFO    ] ================================================
[2026-06-12 20:09:47,860.860 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 20:09:47
[2026-06-12 20:09:48,182.182 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 20:09:48,327.327 INFO    ] Initializing speech engine...
[2026-06-12 20:09:48,332.332 INFO    ] 2026-06-12 20:09:48
[2026-06-12 20:09:48,537.537 INFO    ] 2026-06-12 20:09:48
[2026-06-12 20:09:48,564.564 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 20:09:48,749.749 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 20:09:48,759.759 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 20:09:48,907.907 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 20:09:48,954.954 INFO    ] time= 12/06/2026 20:09:48
[2026-06-12 20:09:48,978.978 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 20:09:48,983.983 INFO    ] Checking for existing commands in stream...
[2026-06-12 20:09:49,051.051 INFO    ] No existing commands found in stream
[2026-06-12 20:09:54,065.065 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 20:09:54,067.067 INFO    ] Waiting 1.69 seconds before fallback handling...
[2026-06-12 20:09:56,122.122 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 20:09:56,123.123 INFO    ] Checking for system updates...
[2026-06-12 20:09:56,145.145 INFO    ] 200
[2026-06-12 20:09:56,146.146 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:09:56,176.176 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 20:09:56,177.177 INFO    ] No update needed
[2026-06-12 20:09:56,179.179 INFO    ] Checking for camera pi updates...
[2026-06-12 20:09:56,198.198 INFO    ] 200
[2026-06-12 20:09:56,200.200 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:09:56,223.223 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 20:09:56,266.266 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 20:09:56,268.268 INFO    ] No camera update needed
[2026-06-12 20:09:56,269.269 INFO    ] Script finished. Safe exiting...
[2026-06-12 20:09:56,270.270 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 20:09:56,273.273 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 20:09:56,276.276 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 20:09:58,316.316 INFO    ] ================================================
[2026-06-12 20:09:58,332.332 INFO    ] Launching Daemon at Fri Jun 12 20:09:58 IST 2026
[2026-06-12 20:09:58,343.343 INFO    ] ================================================
[2026-06-12 20:09:58,724.724 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 20:09:58
[2026-06-12 20:09:59,069.069 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 20:09:59,212.212 INFO    ] Initializing speech engine...
[2026-06-12 20:09:59,224.224 INFO    ] 2026-06-12 20:09:59
[2026-06-12 20:09:59,440.440 INFO    ] 2026-06-12 20:09:59
[2026-06-12 20:09:59,470.470 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 20:09:59,657.657 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 20:09:59,668.668 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 20:09:59,810.810 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 20:09:59,868.868 INFO    ] time= 12/06/2026 20:09:59
[2026-06-12 20:09:59,892.892 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 20:09:59,898.898 INFO    ] Checking for existing commands in stream...
[2026-06-12 20:09:59,990.990 INFO    ] No existing commands found in stream
[2026-06-12 20:10:04,998.998 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 20:10:05,000.000 INFO    ] Waiting 1.09 seconds before fallback handling...
[2026-06-12 20:10:08,045.045 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 20:10:08,048.048 INFO    ] Checking for system updates...
[2026-06-12 20:10:08,090.090 INFO    ] 200
[2026-06-12 20:10:08,093.093 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:10:08,155.155 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 20:10:08,158.158 INFO    ] No update needed
[2026-06-12 20:10:08,161.161 INFO    ] Checking for camera pi updates...
[2026-06-12 20:10:08,180.180 INFO    ] 200
[2026-06-12 20:10:08,182.182 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:10:08,207.207 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 20:10:08,260.260 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 20:10:08,261.261 INFO    ] No camera update needed
[2026-06-12 20:10:08,263.263 INFO    ] Script finished. Safe exiting...
[2026-06-12 20:10:08,264.264 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 20:10:08,267.267 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 20:10:08,270.270 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 20:10:10,310.310 INFO    ] ================================================
[2026-06-12 20:10:10,326.326 INFO    ] Launching Daemon at Fri Jun 12 20:10:10 IST 2026
[2026-06-12 20:10:10,337.337 INFO    ] ================================================
[2026-06-12 20:10:10,664.664 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 20:10:10
[2026-06-12 20:10:10,975.975 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 20:10:11,109.109 INFO    ] Initializing speech engine...
[2026-06-12 20:10:11,113.113 INFO    ] 2026-06-12 20:10:11
[2026-06-12 20:10:11,324.324 INFO    ] 2026-06-12 20:10:11
[2026-06-12 20:10:11,352.352 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 20:10:11,513.513 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 20:10:11,566.566 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 20:10:11,725.725 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 20:10:11,772.772 INFO    ] time= 12/06/2026 20:10:11
[2026-06-12 20:10:11,824.824 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 20:10:11,836.836 INFO    ] Checking for existing commands in stream...
[2026-06-12 20:10:11,912.912 INFO    ] No existing commands found in stream
[2026-06-12 20:10:16,922.922 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 20:10:16,925.925 INFO    ] Waiting 2.34 seconds before fallback handling...
[2026-06-12 20:10:19,602.602 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 20:10:19,604.604 INFO    ] Checking for system updates...
[2026-06-12 20:10:19,624.624 INFO    ] 200
[2026-06-12 20:10:19,626.626 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:10:19,658.658 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 20:10:19,660.660 INFO    ] No update needed
[2026-06-12 20:10:19,662.662 INFO    ] Checking for camera pi updates...
[2026-06-12 20:10:19,683.683 INFO    ] 200
[2026-06-12 20:10:19,685.685 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:10:19,711.711 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 20:10:19,763.763 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 20:10:19,764.764 INFO    ] No camera update needed
[2026-06-12 20:10:19,766.766 INFO    ] Script finished. Safe exiting...
[2026-06-12 20:10:19,767.767 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 20:10:19,771.771 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 20:10:19,774.774 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 20:10:21,812.812 INFO    ] ================================================
[2026-06-12 20:10:21,828.828 INFO    ] Launching Daemon at Fri Jun 12 20:10:21 IST 2026
[2026-06-12 20:10:21,840.840 INFO    ] ================================================
[2026-06-12 20:10:22,176.176 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 20:10:22
[2026-06-12 20:10:22,488.488 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 20:10:22,632.632 INFO    ] Initializing speech engine...
[2026-06-12 20:10:22,636.636 INFO    ] 2026-06-12 20:10:22
[2026-06-12 20:10:22,840.840 INFO    ] 2026-06-12 20:10:22
[2026-06-12 20:10:22,871.871 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 20:10:23,004.004 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 20:10:23,058.058 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 20:10:23,195.195 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 20:10:23,265.265 INFO    ] time= 12/06/2026 20:10:23
[2026-06-12 20:10:23,290.290 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 20:10:23,297.297 INFO    ] Checking for existing commands in stream...
[2026-06-12 20:10:23,364.364 INFO    ] No existing commands found in stream
[2026-06-12 20:10:28,372.372 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 20:10:28,375.375 INFO    ] Waiting 1.35 seconds before fallback handling...
[2026-06-12 20:10:30,109.109 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 20:10:30,111.111 INFO    ] Checking for system updates...
[2026-06-12 20:10:30,131.131 INFO    ] 200
[2026-06-12 20:10:30,132.132 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:10:30,165.165 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 20:10:30,166.166 INFO    ] No update needed
[2026-06-12 20:10:30,167.167 INFO    ] Checking for camera pi updates...
[2026-06-12 20:10:30,186.186 INFO    ] 200
[2026-06-12 20:10:30,188.188 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:10:30,211.211 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 20:10:30,249.249 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 20:10:30,250.250 INFO    ] No camera update needed
[2026-06-12 20:10:30,252.252 INFO    ] Script finished. Safe exiting...
[2026-06-12 20:10:30,253.253 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 20:10:30,256.256 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 20:10:30,259.259 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 20:10:32,290.290 INFO    ] ================================================
[2026-06-12 20:10:32,300.300 INFO    ] Launching Daemon at Fri Jun 12 20:10:32 IST 2026
[2026-06-12 20:10:32,307.307 INFO    ] ================================================
[2026-06-12 20:10:32,680.680 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 20:10:32
[2026-06-12 20:10:33,030.030 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 20:10:33,184.184 INFO    ] Initializing speech engine...
[2026-06-12 20:10:33,189.189 INFO    ] 2026-06-12 20:10:33
[2026-06-12 20:10:33,402.402 INFO    ] 2026-06-12 20:10:33
[2026-06-12 20:10:33,431.431 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 20:10:33,618.618 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 20:10:33,628.628 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 20:10:33,800.800 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 20:10:33,848.848 INFO    ] time= 12/06/2026 20:10:33
[2026-06-12 20:10:33,854.854 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 20:10:33,856.856 INFO    ] Checking for existing commands in stream...
[2026-06-12 20:10:33,924.924 INFO    ] No existing commands found in stream
[2026-06-12 20:10:38,939.939 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 20:10:38,942.942 INFO    ] Waiting 2.35 seconds before fallback handling...
[2026-06-12 20:10:41,676.676 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 20:10:41,678.678 INFO    ] Checking for system updates...
[2026-06-12 20:10:41,699.699 INFO    ] 200
[2026-06-12 20:10:41,700.700 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:10:41,731.731 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 20:10:41,732.732 INFO    ] No update needed
[2026-06-12 20:10:41,734.734 INFO    ] Checking for camera pi updates...
[2026-06-12 20:10:41,753.753 INFO    ] 200
[2026-06-12 20:10:41,755.755 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:10:41,778.778 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 20:10:41,805.805 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 20:10:41,807.807 INFO    ] No camera update needed
[2026-06-12 20:10:41,808.808 INFO    ] Script finished. Safe exiting...
[2026-06-12 20:10:41,809.809 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 20:10:41,813.813 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 20:10:41,816.816 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 20:10:43,855.855 INFO    ] ================================================
[2026-06-12 20:10:43,871.871 INFO    ] Launching Daemon at Fri Jun 12 20:10:43 IST 2026
[2026-06-12 20:10:43,882.882 INFO    ] ================================================
[2026-06-12 20:10:44,222.222 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 20:10:44
[2026-06-12 20:10:44,534.534 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 20:10:44,666.666 INFO    ] Initializing speech engine...
[2026-06-12 20:10:44,671.671 INFO    ] 2026-06-12 20:10:44
[2026-06-12 20:10:44,903.903 INFO    ] 2026-06-12 20:10:44
[2026-06-12 20:10:44,934.934 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 20:10:45,068.068 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 20:10:45,121.121 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 20:10:45,278.278 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 20:10:45,331.331 INFO    ] time= 12/06/2026 20:10:45
[2026-06-12 20:10:45,365.365 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 20:10:45,388.388 INFO    ] Checking for existing commands in stream...
[2026-06-12 20:10:45,466.466 INFO    ] No existing commands found in stream
[2026-06-12 20:10:50,490.490 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 20:10:50,493.493 INFO    ] Waiting 2.90 seconds before fallback handling...
[2026-06-12 20:10:53,795.795 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 20:10:53,797.797 INFO    ] Checking for system updates...
[2026-06-12 20:10:53,819.819 INFO    ] 200
[2026-06-12 20:10:53,821.821 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:10:53,851.851 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 20:10:53,853.853 INFO    ] No update needed
[2026-06-12 20:10:53,854.854 INFO    ] Checking for camera pi updates...
[2026-06-12 20:10:53,874.874 INFO    ] 200
[2026-06-12 20:10:53,876.876 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:10:53,901.901 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 20:10:53,942.942 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 20:10:53,944.944 INFO    ] No camera update needed
[2026-06-12 20:10:53,945.945 INFO    ] Script finished. Safe exiting...
[2026-06-12 20:10:53,946.946 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 20:10:53,950.950 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 20:10:53,953.953 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 20:10:55,992.992 INFO    ] ================================================
[2026-06-12 20:10:56,008.008 INFO    ] Launching Daemon at Fri Jun 12 20:10:56 IST 2026
[2026-06-12 20:10:56,019.019 INFO    ] ================================================
[2026-06-12 20:10:56,399.399 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 20:10:56
[2026-06-12 20:10:56,744.744 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 20:10:56,900.900 INFO    ] Initializing speech engine...
[2026-06-12 20:10:56,904.904 INFO    ] 2026-06-12 20:10:56
[2026-06-12 20:10:57,114.114 INFO    ] 2026-06-12 20:10:57
[2026-06-12 20:10:57,144.144 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 20:10:57,332.332 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 20:10:57,341.341 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 20:10:57,493.493 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 20:10:57,544.544 INFO    ] time= 12/06/2026 20:10:57
[2026-06-12 20:10:57,565.565 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 20:10:57,572.572 INFO    ] Checking for existing commands in stream...
[2026-06-12 20:10:57,639.639 INFO    ] No existing commands found in stream
[2026-06-12 20:11:02,647.647 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 20:11:02,649.649 INFO    ] Waiting 1.59 seconds before fallback handling...
[2026-06-12 20:11:04,601.601 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 20:11:04,603.603 INFO    ] Checking for system updates...
[2026-06-12 20:11:04,624.624 INFO    ] 200
[2026-06-12 20:11:04,625.625 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:11:04,655.655 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 20:11:04,656.656 INFO    ] No update needed
[2026-06-12 20:11:04,658.658 INFO    ] Checking for camera pi updates...
[2026-06-12 20:11:04,677.677 INFO    ] 200
[2026-06-12 20:11:04,679.679 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:11:04,702.702 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 20:11:04,753.753 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 20:11:04,754.754 INFO    ] No camera update needed
[2026-06-12 20:11:04,756.756 INFO    ] Script finished. Safe exiting...
[2026-06-12 20:11:04,757.757 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 20:11:04,760.760 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 20:11:04,763.763 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 20:11:06,802.802 INFO    ] ================================================
[2026-06-12 20:11:06,818.818 INFO    ] Launching Daemon at Fri Jun 12 20:11:06 IST 2026
[2026-06-12 20:11:06,829.829 INFO    ] ================================================
[2026-06-12 20:11:07,195.195 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 20:11:07
[2026-06-12 20:11:07,510.510 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 20:11:07,643.643 INFO    ] Initializing speech engine...
[2026-06-12 20:11:07,651.651 INFO    ] 2026-06-12 20:11:07
[2026-06-12 20:11:07,865.865 INFO    ] 2026-06-12 20:11:07
[2026-06-12 20:11:07,894.894 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 20:11:08,079.079 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 20:11:08,083.083 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 20:11:08,221.221 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 20:11:08,285.285 INFO    ] time= 12/06/2026 20:11:08
[2026-06-12 20:11:08,314.314 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 20:11:08,320.320 INFO    ] Checking for existing commands in stream...
[2026-06-12 20:11:08,399.399 INFO    ] No existing commands found in stream
[2026-06-12 20:11:13,412.412 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 20:11:13,415.415 INFO    ] Waiting 3.18 seconds before fallback handling...
[2026-06-12 20:11:16,982.982 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 20:11:16,983.983 INFO    ] Checking for system updates...
[2026-06-12 20:11:17,003.003 INFO    ] 200
[2026-06-12 20:11:17,005.005 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:11:17,034.034 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 20:11:17,036.036 INFO    ] No update needed
[2026-06-12 20:11:17,037.037 INFO    ] Checking for camera pi updates...
[2026-06-12 20:11:17,056.056 INFO    ] 200
[2026-06-12 20:11:17,058.058 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:11:17,083.083 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 20:11:17,126.126 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 20:11:17,128.128 INFO    ] No camera update needed
[2026-06-12 20:11:17,129.129 INFO    ] Script finished. Safe exiting...
[2026-06-12 20:11:17,130.130 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 20:11:17,133.133 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 20:11:17,136.136 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 20:11:19,175.175 INFO    ] ================================================
[2026-06-12 20:11:19,192.192 INFO    ] Launching Daemon at Fri Jun 12 20:11:19 IST 2026
[2026-06-12 20:11:19,204.204 INFO    ] ================================================
[2026-06-12 20:11:19,550.550 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 20:11:19
[2026-06-12 20:11:19,864.864 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 20:11:19,994.994 INFO    ] Initializing speech engine...
[2026-06-12 20:11:19,998.998 INFO    ] 2026-06-12 20:11:19
[2026-06-12 20:11:20,214.214 INFO    ] 2026-06-12 20:11:20
[2026-06-12 20:11:20,242.242 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 20:11:20,425.425 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 20:11:20,434.434 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 20:11:20,556.556 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 20:11:20,616.616 INFO    ] time= 12/06/2026 20:11:20
[2026-06-12 20:11:20,640.640 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 20:11:20,655.655 INFO    ] Checking for existing commands in stream...
[2026-06-12 20:11:20,725.725 INFO    ] No existing commands found in stream
[2026-06-12 20:11:25,735.735 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 20:11:25,738.738 INFO    ] Waiting 1.91 seconds before fallback handling...
[2026-06-12 20:11:28,012.012 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 20:11:28,013.013 INFO    ] Checking for system updates...
[2026-06-12 20:11:28,034.034 INFO    ] 200
[2026-06-12 20:11:28,035.035 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:11:28,065.065 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 20:11:28,067.067 INFO    ] No update needed
[2026-06-12 20:11:28,068.068 INFO    ] Checking for camera pi updates...
[2026-06-12 20:11:28,089.089 INFO    ] 200
[2026-06-12 20:11:28,090.090 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:11:28,113.113 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 20:11:28,253.253 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 20:11:28,255.255 INFO    ] No camera update needed
[2026-06-12 20:11:28,256.256 INFO    ] Script finished. Safe exiting...
[2026-06-12 20:11:28,257.257 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 20:11:28,260.260 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 20:11:28,263.263 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 20:11:30,304.304 INFO    ] ================================================
[2026-06-12 20:11:30,320.320 INFO    ] Launching Daemon at Fri Jun 12 20:11:30 IST 2026
[2026-06-12 20:11:30,331.331 INFO    ] ================================================
[2026-06-12 20:11:30,700.700 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 20:11:30
[2026-06-12 20:11:31,046.046 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 20:11:31,201.201 INFO    ] Initializing speech engine...
[2026-06-12 20:11:31,205.205 INFO    ] 2026-06-12 20:11:31
[2026-06-12 20:11:31,427.427 INFO    ] 2026-06-12 20:11:31
[2026-06-12 20:11:31,458.458 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 20:11:31,655.655 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 20:11:31,668.668 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 20:11:31,821.821 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 20:11:31,877.877 INFO    ] time= 12/06/2026 20:11:31
[2026-06-12 20:11:31,901.901 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 20:11:31,907.907 INFO    ] Checking for existing commands in stream...
[2026-06-12 20:11:31,976.976 INFO    ] No existing commands found in stream
[2026-06-12 20:11:36,985.985 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 20:11:36,988.988 INFO    ] Waiting 0.53 seconds before fallback handling...
[2026-06-12 20:11:37,900.900 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 20:11:37,901.901 INFO    ] Checking for system updates...
[2026-06-12 20:11:37,922.922 INFO    ] 200
[2026-06-12 20:11:37,923.923 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:11:37,953.953 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 20:11:37,954.954 INFO    ] No update needed
[2026-06-12 20:11:37,956.956 INFO    ] Checking for camera pi updates...
[2026-06-12 20:11:37,975.975 INFO    ] 200
[2026-06-12 20:11:37,976.976 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:11:37,999.999 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 20:11:38,041.041 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 20:11:38,043.043 INFO    ] No camera update needed
[2026-06-12 20:11:38,044.044 INFO    ] Script finished. Safe exiting...
[2026-06-12 20:11:38,045.045 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 20:11:38,048.048 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 20:11:38,051.051 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 20:11:40,091.091 INFO    ] ================================================
[2026-06-12 20:11:40,107.107 INFO    ] Launching Daemon at Fri Jun 12 20:11:40 IST 2026
[2026-06-12 20:11:40,118.118 INFO    ] ================================================
[2026-06-12 20:11:40,483.483 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 20:11:40
[2026-06-12 20:11:40,798.798 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 20:11:40,933.933 INFO    ] Initializing speech engine...
[2026-06-12 20:11:40,945.945 INFO    ] 2026-06-12 20:11:40
[2026-06-12 20:11:41,154.154 INFO    ] 2026-06-12 20:11:41
[2026-06-12 20:11:41,182.182 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 20:11:41,335.335 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 20:11:41,337.337 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 20:11:41,449.449 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 20:11:41,472.472 INFO    ] time= 12/06/2026 20:11:41
[2026-06-12 20:11:41,511.511 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 20:11:41,563.563 INFO    ] Checking for existing commands in stream...
[2026-06-12 20:11:41,707.707 INFO    ] No existing commands found in stream
[2026-06-12 20:11:46,732.732 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 20:11:46,735.735 INFO    ] Waiting 0.13 seconds before fallback handling...
[2026-06-12 20:11:47,221.221 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 20:11:47,222.222 INFO    ] Checking for system updates...
[2026-06-12 20:11:47,243.243 INFO    ] 200
[2026-06-12 20:11:47,244.244 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:11:47,275.275 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 20:11:47,277.277 INFO    ] No update needed
[2026-06-12 20:11:47,278.278 INFO    ] Checking for camera pi updates...
[2026-06-12 20:11:47,297.297 INFO    ] 200
[2026-06-12 20:11:47,298.298 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:11:47,321.321 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 20:11:47,361.361 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 20:11:47,362.362 INFO    ] No camera update needed
[2026-06-12 20:11:47,364.364 INFO    ] Script finished. Safe exiting...
[2026-06-12 20:11:47,365.365 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 20:11:47,368.368 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 20:11:47,370.370 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 20:11:49,410.410 INFO    ] ================================================
[2026-06-12 20:11:49,426.426 INFO    ] Launching Daemon at Fri Jun 12 20:11:49 IST 2026
[2026-06-12 20:11:49,437.437 INFO    ] ================================================
[2026-06-12 20:11:49,778.778 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 20:11:49
[2026-06-12 20:11:50,095.095 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 20:11:50,228.228 INFO    ] Initializing speech engine...
[2026-06-12 20:11:50,233.233 INFO    ] 2026-06-12 20:11:50
[2026-06-12 20:11:50,437.437 INFO    ] 2026-06-12 20:11:50
[2026-06-12 20:11:50,471.471 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 20:11:50,631.631 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 20:11:50,643.643 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 20:11:50,791.791 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 20:11:50,845.845 INFO    ] time= 12/06/2026 20:11:50
[2026-06-12 20:11:50,879.879 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 20:11:50,931.931 INFO    ] Checking for existing commands in stream...
[2026-06-12 20:11:51,031.031 INFO    ] No existing commands found in stream
[2026-06-12 20:11:56,042.042 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 20:11:56,044.044 INFO    ] Waiting 3.24 seconds before fallback handling...
[2026-06-12 20:11:59,691.691 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 20:11:59,693.693 INFO    ] Checking for system updates...
[2026-06-12 20:11:59,714.714 INFO    ] 200
[2026-06-12 20:11:59,715.715 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:11:59,747.747 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 20:11:59,749.749 INFO    ] No update needed
[2026-06-12 20:11:59,750.750 INFO    ] Checking for camera pi updates...
[2026-06-12 20:11:59,769.769 INFO    ] 200
[2026-06-12 20:11:59,771.771 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:11:59,796.796 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 20:11:59,836.836 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 20:11:59,838.838 INFO    ] No camera update needed
[2026-06-12 20:11:59,839.839 INFO    ] Script finished. Safe exiting...
[2026-06-12 20:11:59,840.840 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 20:11:59,843.843 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 20:11:59,846.846 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 20:12:01,878.878 INFO    ] ================================================
[2026-06-12 20:12:01,888.888 INFO    ] Launching Daemon at Fri Jun 12 20:12:01 IST 2026
[2026-06-12 20:12:01,897.897 INFO    ] ================================================
[2026-06-12 20:12:02,256.256 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 20:12:02
[2026-06-12 20:12:02,635.635 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 20:12:02,806.806 INFO    ] Initializing speech engine...
[2026-06-12 20:12:02,813.813 INFO    ] 2026-06-12 20:12:02
[2026-06-12 20:12:03,041.041 INFO    ] 2026-06-12 20:12:03
[2026-06-12 20:12:03,072.072 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 20:12:03,206.206 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 20:12:03,246.246 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 20:12:03,424.424 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 20:12:03,466.466 INFO    ] time= 12/06/2026 20:12:03
[2026-06-12 20:12:03,510.510 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 20:12:03,534.534 INFO    ] Checking for existing commands in stream...
[2026-06-12 20:12:03,612.612 INFO    ] No existing commands found in stream
[2026-06-12 20:12:08,622.622 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 20:12:08,625.625 INFO    ] Waiting 2.11 seconds before fallback handling...
[2026-06-12 20:12:11,050.050 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 20:12:11,051.051 INFO    ] Checking for system updates...
[2026-06-12 20:12:11,071.071 INFO    ] 200
[2026-06-12 20:12:11,073.073 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:12:11,103.103 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 20:12:11,104.104 INFO    ] No update needed
[2026-06-12 20:12:11,105.105 INFO    ] Checking for camera pi updates...
[2026-06-12 20:12:11,127.127 INFO    ] 200
[2026-06-12 20:12:11,128.128 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:12:11,153.153 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 20:12:11,197.197 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 20:12:11,199.199 INFO    ] No camera update needed
[2026-06-12 20:12:11,200.200 INFO    ] Script finished. Safe exiting...
[2026-06-12 20:12:11,201.201 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 20:12:11,204.204 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 20:12:11,207.207 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 20:12:13,248.248 INFO    ] ================================================
[2026-06-12 20:12:13,264.264 INFO    ] Launching Daemon at Fri Jun 12 20:12:13 IST 2026
[2026-06-12 20:12:13,276.276 INFO    ] ================================================
[2026-06-12 20:12:13,653.653 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 20:12:13
[2026-06-12 20:12:13,979.979 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 20:12:14,117.117 INFO    ] Initializing speech engine...
[2026-06-12 20:12:14,127.127 INFO    ] 2026-06-12 20:12:14
[2026-06-12 20:12:14,332.332 INFO    ] 2026-06-12 20:12:14
[2026-06-12 20:12:14,361.361 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 20:12:14,547.547 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 20:12:14,556.556 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 20:12:14,679.679 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 20:12:14,735.735 INFO    ] time= 12/06/2026 20:12:14
[2026-06-12 20:12:14,770.770 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 20:12:14,780.780 INFO    ] Checking for existing commands in stream...
[2026-06-12 20:12:14,851.851 INFO    ] No existing commands found in stream
[2026-06-12 20:12:19,860.860 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 20:12:19,863.863 INFO    ] Waiting 0.98 seconds before fallback handling...
[2026-06-12 20:12:21,216.216 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 20:12:21,217.217 INFO    ] Checking for system updates...
[2026-06-12 20:12:21,238.238 INFO    ] 200
[2026-06-12 20:12:21,239.239 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:12:21,270.270 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 20:12:21,271.271 INFO    ] No update needed
[2026-06-12 20:12:21,272.272 INFO    ] Checking for camera pi updates...
[2026-06-12 20:12:21,292.292 INFO    ] 200
[2026-06-12 20:12:21,293.293 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:12:21,318.318 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 20:12:21,356.356 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 20:12:21,357.357 INFO    ] No camera update needed
[2026-06-12 20:12:21,358.358 INFO    ] Script finished. Safe exiting...
[2026-06-12 20:12:21,360.360 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 20:12:21,363.363 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 20:12:21,365.365 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 20:12:23,406.406 INFO    ] ================================================
[2026-06-12 20:12:23,422.422 INFO    ] Launching Daemon at Fri Jun 12 20:12:23 IST 2026
[2026-06-12 20:12:23,433.433 INFO    ] ================================================
[2026-06-12 20:12:23,799.799 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 20:12:23
[2026-06-12 20:12:24,117.117 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 20:12:24,261.261 INFO    ] Initializing speech engine...
[2026-06-12 20:12:24,266.266 INFO    ] 2026-06-12 20:12:24
[2026-06-12 20:12:24,471.471 INFO    ] 2026-06-12 20:12:24
[2026-06-12 20:12:24,502.502 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 20:12:24,691.691 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 20:12:24,694.694 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 20:12:24,825.825 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 20:12:24,866.866 INFO    ] time= 12/06/2026 20:12:24
[2026-06-12 20:12:24,910.910 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 20:12:24,927.927 INFO    ] Checking for existing commands in stream...
[2026-06-12 20:12:25,003.003 INFO    ] No existing commands found in stream
[2026-06-12 20:12:30,011.011 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 20:12:30,013.013 INFO    ] Waiting 2.44 seconds before fallback handling...
[2026-06-12 20:12:32,781.781 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 20:12:32,784.784 INFO    ] Checking for system updates...
[2026-06-12 20:12:32,820.820 INFO    ] 200
[2026-06-12 20:12:32,823.823 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:12:32,878.878 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 20:12:32,881.881 INFO    ] No update needed
[2026-06-12 20:12:32,884.884 INFO    ] Checking for camera pi updates...
[2026-06-12 20:12:32,923.923 INFO    ] 200
[2026-06-12 20:12:32,926.926 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:12:32,961.961 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 20:12:32,986.986 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 20:12:32,987.987 INFO    ] No camera update needed
[2026-06-12 20:12:32,989.989 INFO    ] Script finished. Safe exiting...
[2026-06-12 20:12:32,990.990 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 20:12:32,994.994 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 20:12:32,997.997 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 20:12:35,037.037 INFO    ] ================================================
[2026-06-12 20:12:35,053.053 INFO    ] Launching Daemon at Fri Jun 12 20:12:35 IST 2026
[2026-06-12 20:12:35,064.064 INFO    ] ================================================
[2026-06-12 20:12:35,438.438 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 20:12:35
[2026-06-12 20:12:35,756.756 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 20:12:35,899.899 INFO    ] Initializing speech engine...
[2026-06-12 20:12:35,905.905 INFO    ] 2026-06-12 20:12:35
[2026-06-12 20:12:36,106.106 INFO    ] 2026-06-12 20:12:36
[2026-06-12 20:12:36,135.135 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 20:12:36,268.268 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 20:12:36,321.321 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 20:12:36,459.459 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 20:12:36,523.523 INFO    ] time= 12/06/2026 20:12:36
[2026-06-12 20:12:36,551.551 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 20:12:36,557.557 INFO    ] Checking for existing commands in stream...
[2026-06-12 20:12:36,625.625 INFO    ] No existing commands found in stream
[2026-06-12 20:12:41,634.634 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 20:12:41,637.637 INFO    ] Waiting 3.69 seconds before fallback handling...
[2026-06-12 20:12:45,720.720 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 20:12:45,721.721 INFO    ] Checking for system updates...
[2026-06-12 20:12:45,742.742 INFO    ] 200
[2026-06-12 20:12:45,743.743 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:12:45,773.773 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 20:12:45,775.775 INFO    ] No update needed
[2026-06-12 20:12:45,776.776 INFO    ] Checking for camera pi updates...
[2026-06-12 20:12:45,795.795 INFO    ] 200
[2026-06-12 20:12:45,796.796 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:12:45,820.820 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 20:12:45,860.860 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 20:12:45,862.862 INFO    ] No camera update needed
[2026-06-12 20:12:45,863.863 INFO    ] Script finished. Safe exiting...
[2026-06-12 20:12:45,864.864 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 20:12:45,867.867 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 20:12:45,870.870 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 20:12:47,910.910 INFO    ] ================================================
[2026-06-12 20:12:47,925.925 INFO    ] Launching Daemon at Fri Jun 12 20:12:47 IST 2026
[2026-06-12 20:12:47,937.937 INFO    ] ================================================
[2026-06-12 20:12:48,296.296 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 20:12:48
[2026-06-12 20:12:48,609.609 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 20:12:48,747.747 INFO    ] Initializing speech engine...
[2026-06-12 20:12:48,757.757 INFO    ] 2026-06-12 20:12:48
[2026-06-12 20:12:48,963.963 INFO    ] 2026-06-12 20:12:48
[2026-06-12 20:12:48,993.993 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 20:12:49,179.179 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 20:12:49,187.187 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 20:12:49,319.319 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 20:12:49,388.388 INFO    ] time= 12/06/2026 20:12:49
[2026-06-12 20:12:49,412.412 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 20:12:49,414.414 INFO    ] Checking for existing commands in stream...
[2026-06-12 20:12:49,486.486 INFO    ] No existing commands found in stream
[2026-06-12 20:12:54,495.495 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 20:12:54,497.497 INFO    ] Waiting 2.02 seconds before fallback handling...
[2026-06-12 20:12:56,892.892 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 20:12:56,893.893 INFO    ] Checking for system updates...
[2026-06-12 20:12:56,914.914 INFO    ] 200
[2026-06-12 20:12:56,916.916 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:12:56,946.946 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 20:12:56,948.948 INFO    ] No update needed
[2026-06-12 20:12:56,949.949 INFO    ] Checking for camera pi updates...
[2026-06-12 20:12:56,969.969 INFO    ] 200
[2026-06-12 20:12:56,971.971 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:12:56,994.994 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 20:12:57,039.039 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 20:12:57,040.040 INFO    ] No camera update needed
[2026-06-12 20:12:57,042.042 INFO    ] Script finished. Safe exiting...
[2026-06-12 20:12:57,043.043 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 20:12:57,046.046 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 20:12:57,050.050 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 20:12:59,090.090 INFO    ] ================================================
[2026-06-12 20:12:59,106.106 INFO    ] Launching Daemon at Fri Jun 12 20:12:59 IST 2026
[2026-06-12 20:12:59,118.118 INFO    ] ================================================
[2026-06-12 20:12:59,447.447 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 20:12:59
[2026-06-12 20:12:59,760.760 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 20:12:59,901.901 INFO    ] Initializing speech engine...
[2026-06-12 20:12:59,909.909 INFO    ] 2026-06-12 20:12:59
[2026-06-12 20:13:00,130.130 INFO    ] 2026-06-12 20:13:00
[2026-06-12 20:13:00,161.161 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 20:13:00,360.360 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 20:13:00,364.364 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 20:13:00,505.505 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 20:13:00,547.547 INFO    ] time= 12/06/2026 20:13:00
[2026-06-12 20:13:00,590.590 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 20:13:00,614.614 INFO    ] Checking for existing commands in stream...
[2026-06-12 20:13:00,687.687 INFO    ] No existing commands found in stream
[2026-06-12 20:13:05,702.702 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 20:13:05,704.704 INFO    ] Waiting 1.99 seconds before fallback handling...
[2026-06-12 20:13:08,080.080 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 20:13:08,082.082 INFO    ] Checking for system updates...
[2026-06-12 20:13:08,102.102 INFO    ] 200
[2026-06-12 20:13:08,104.104 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:13:08,135.135 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 20:13:08,137.137 INFO    ] No update needed
[2026-06-12 20:13:08,138.138 INFO    ] Checking for camera pi updates...
[2026-06-12 20:13:08,157.157 INFO    ] 200
[2026-06-12 20:13:08,159.159 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:13:08,182.182 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 20:13:08,234.234 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 20:13:08,235.235 INFO    ] No camera update needed
[2026-06-12 20:13:08,236.236 INFO    ] Script finished. Safe exiting...
[2026-06-12 20:13:08,238.238 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 20:13:08,242.242 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 20:13:08,245.245 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 20:13:10,282.282 INFO    ] ================================================
[2026-06-12 20:13:10,299.299 INFO    ] Launching Daemon at Fri Jun 12 20:13:10 IST 2026
[2026-06-12 20:13:10,310.310 INFO    ] ================================================
[2026-06-12 20:13:10,683.683 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 20:13:10
[2026-06-12 20:13:10,997.997 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 20:13:11,140.140 INFO    ] Initializing speech engine...
[2026-06-12 20:13:11,146.146 INFO    ] 2026-06-12 20:13:11
[2026-06-12 20:13:11,352.352 INFO    ] 2026-06-12 20:13:11
[2026-06-12 20:13:11,380.380 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 20:13:11,568.568 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 20:13:11,577.577 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 20:13:11,701.701 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 20:13:11,761.761 INFO    ] time= 12/06/2026 20:13:11
[2026-06-12 20:13:11,792.792 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 20:13:11,807.807 INFO    ] Checking for existing commands in stream...
[2026-06-12 20:13:11,875.875 INFO    ] No existing commands found in stream
[2026-06-12 20:13:16,884.884 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 20:13:16,887.887 INFO    ] Waiting 1.62 seconds before fallback handling...
[2026-06-12 20:13:18,879.879 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 20:13:18,881.881 INFO    ] Checking for system updates...
[2026-06-12 20:13:18,901.901 INFO    ] 200
[2026-06-12 20:13:18,903.903 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:13:18,936.936 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 20:13:18,937.937 INFO    ] No update needed
[2026-06-12 20:13:18,938.938 INFO    ] Checking for camera pi updates...
[2026-06-12 20:13:18,957.957 INFO    ] 200
[2026-06-12 20:13:18,959.959 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:13:18,983.983 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 20:13:19,035.035 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 20:13:19,037.037 INFO    ] No camera update needed
[2026-06-12 20:13:19,041.041 INFO    ] Script finished. Safe exiting...
[2026-06-12 20:13:19,043.043 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 20:13:19,046.046 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 20:13:19,049.049 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 20:13:21,089.089 INFO    ] ================================================
[2026-06-12 20:13:21,106.106 INFO    ] Launching Daemon at Fri Jun 12 20:13:21 IST 2026
[2026-06-12 20:13:21,117.117 INFO    ] ================================================
[2026-06-12 20:13:21,456.456 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 20:13:21
[2026-06-12 20:13:21,767.767 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 20:13:21,897.897 INFO    ] Initializing speech engine...
[2026-06-12 20:13:21,902.902 INFO    ] 2026-06-12 20:13:21
[2026-06-12 20:13:22,120.120 INFO    ] 2026-06-12 20:13:22
[2026-06-12 20:13:22,148.148 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 20:13:22,333.333 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 20:13:22,342.342 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 20:13:22,489.489 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 20:13:22,541.541 INFO    ] time= 12/06/2026 20:13:22
[2026-06-12 20:13:22,564.564 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 20:13:22,571.571 INFO    ] Checking for existing commands in stream...
[2026-06-12 20:13:22,638.638 INFO    ] No existing commands found in stream
[2026-06-12 20:13:27,648.648 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 20:13:27,650.650 INFO    ] Waiting 0.07 seconds before fallback handling...
[2026-06-12 20:13:28,101.101 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 20:13:28,103.103 INFO    ] Checking for system updates...
[2026-06-12 20:13:28,123.123 INFO    ] 200
[2026-06-12 20:13:28,124.124 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:13:28,154.154 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 20:13:28,155.155 INFO    ] No update needed
[2026-06-12 20:13:28,157.157 INFO    ] Checking for camera pi updates...
[2026-06-12 20:13:28,176.176 INFO    ] 200
[2026-06-12 20:13:28,177.177 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:13:28,202.202 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 20:13:28,247.247 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 20:13:28,248.248 INFO    ] No camera update needed
[2026-06-12 20:13:28,250.250 INFO    ] Script finished. Safe exiting...
[2026-06-12 20:13:28,251.251 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 20:13:28,254.254 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 20:13:28,257.257 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 20:13:30,297.297 INFO    ] ================================================
[2026-06-12 20:13:30,312.312 INFO    ] Launching Daemon at Fri Jun 12 20:13:30 IST 2026
[2026-06-12 20:13:30,324.324 INFO    ] ================================================
[2026-06-12 20:13:30,670.670 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 20:13:30
[2026-06-12 20:13:30,986.986 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 20:13:31,130.130 INFO    ] Initializing speech engine...
[2026-06-12 20:13:31,135.135 INFO    ] 2026-06-12 20:13:31
[2026-06-12 20:13:31,340.340 INFO    ] 2026-06-12 20:13:31
[2026-06-12 20:13:31,368.368 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 20:13:31,676.676 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 20:13:31,727.727 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 20:13:31,870.870 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 20:13:31,896.896 INFO    ] time= 12/06/2026 20:13:31
[2026-06-12 20:13:31,900.900 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 20:13:31,902.902 INFO    ] Checking for existing commands in stream...
[2026-06-12 20:13:31,972.972 INFO    ] No existing commands found in stream
[2026-06-12 20:13:36,982.982 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 20:13:36,985.985 INFO    ] Waiting 0.09 seconds before fallback handling...
[2026-06-12 20:13:37,438.438 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 20:13:37,439.439 INFO    ] Checking for system updates...
[2026-06-12 20:13:37,460.460 INFO    ] 200
[2026-06-12 20:13:37,461.461 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:13:37,491.491 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 20:13:37,493.493 INFO    ] No update needed
[2026-06-12 20:13:37,494.494 INFO    ] Checking for camera pi updates...
[2026-06-12 20:13:37,513.513 INFO    ] 200
[2026-06-12 20:13:37,514.514 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:13:37,537.537 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 20:13:37,584.584 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 20:13:37,585.585 INFO    ] No camera update needed
[2026-06-12 20:13:37,586.586 INFO    ] Script finished. Safe exiting...
[2026-06-12 20:13:37,588.588 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 20:13:37,591.591 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 20:13:37,593.593 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 20:13:39,634.634 INFO    ] ================================================
[2026-06-12 20:13:39,650.650 INFO    ] Launching Daemon at Fri Jun 12 20:13:39 IST 2026
[2026-06-12 20:13:39,662.662 INFO    ] ================================================
[2026-06-12 20:13:39,988.988 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 20:13:39
[2026-06-12 20:13:40,304.304 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 20:13:40,438.438 INFO    ] Initializing speech engine...
[2026-06-12 20:13:40,443.443 INFO    ] 2026-06-12 20:13:40
[2026-06-12 20:13:40,674.674 INFO    ] 2026-06-12 20:13:40
[2026-06-12 20:13:40,705.705 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 20:13:40,908.908 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 20:13:40,911.911 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 20:13:41,055.055 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 20:13:41,101.101 INFO    ] time= 12/06/2026 20:13:41
[2026-06-12 20:13:41,141.141 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 20:13:41,164.164 INFO    ] Checking for existing commands in stream...
[2026-06-12 20:13:41,241.241 INFO    ] No existing commands found in stream
[2026-06-12 20:13:46,252.252 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 20:13:46,255.255 INFO    ] Waiting 2.62 seconds before fallback handling...
[2026-06-12 20:13:49,308.308 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 20:13:49,310.310 INFO    ] Checking for system updates...
[2026-06-12 20:13:49,332.332 INFO    ] 200
[2026-06-12 20:13:49,333.333 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:13:49,362.362 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 20:13:49,364.364 INFO    ] No update needed
[2026-06-12 20:13:49,365.365 INFO    ] Checking for camera pi updates...
[2026-06-12 20:13:49,384.384 INFO    ] 200
[2026-06-12 20:13:49,385.385 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:13:49,408.408 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 20:13:49,462.462 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 20:13:49,463.463 INFO    ] No camera update needed
[2026-06-12 20:13:49,465.465 INFO    ] Script finished. Safe exiting...
[2026-06-12 20:13:49,466.466 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 20:13:49,469.469 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 20:13:49,471.471 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 20:13:51,510.510 INFO    ] ================================================
[2026-06-12 20:13:51,526.526 INFO    ] Launching Daemon at Fri Jun 12 20:13:51 IST 2026
[2026-06-12 20:13:51,539.539 INFO    ] ================================================
[2026-06-12 20:13:51,899.899 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 20:13:51
[2026-06-12 20:13:52,211.211 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 20:13:52,345.345 INFO    ] Initializing speech engine...
[2026-06-12 20:13:52,350.350 INFO    ] 2026-06-12 20:13:52
[2026-06-12 20:13:52,582.582 INFO    ] 2026-06-12 20:13:52
[2026-06-12 20:13:52,613.613 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 20:13:52,814.814 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 20:13:52,817.817 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 20:13:52,961.961 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 20:13:53,002.002 INFO    ] time= 12/06/2026 20:13:52
[2026-06-12 20:13:53,046.046 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 20:13:53,070.070 INFO    ] Checking for existing commands in stream...
[2026-06-12 20:13:53,174.174 INFO    ] No existing commands found in stream
[2026-06-12 20:13:58,183.183 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 20:13:58,185.185 INFO    ] Waiting 3.38 seconds before fallback handling...
[2026-06-12 20:14:01,893.893 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 20:14:01,895.895 INFO    ] Checking for system updates...
[2026-06-12 20:14:01,922.922 INFO    ] 200
[2026-06-12 20:14:01,924.924 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:14:01,961.961 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 20:14:01,963.963 INFO    ] No update needed
[2026-06-12 20:14:01,965.965 INFO    ] Checking for camera pi updates...
[2026-06-12 20:14:01,989.989 INFO    ] 200
[2026-06-12 20:14:01,991.991 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:14:02,024.024 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 20:14:02,062.062 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 20:14:02,064.064 INFO    ] No camera update needed
[2026-06-12 20:14:02,066.066 INFO    ] Script finished. Safe exiting...
[2026-06-12 20:14:02,070.070 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 20:14:02,077.077 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 20:14:02,083.083 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 20:14:04,124.124 INFO    ] ================================================
[2026-06-12 20:14:04,140.140 INFO    ] Launching Daemon at Fri Jun 12 20:14:04 IST 2026
[2026-06-12 20:14:04,152.152 INFO    ] ================================================
[2026-06-12 20:14:04,527.527 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 20:14:04
[2026-06-12 20:14:04,846.846 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 20:14:04,977.977 INFO    ] Initializing speech engine...
[2026-06-12 20:14:04,981.981 INFO    ] 2026-06-12 20:14:04
[2026-06-12 20:14:05,197.197 INFO    ] 2026-06-12 20:14:05
[2026-06-12 20:14:05,225.225 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 20:14:05,348.348 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 20:14:05,410.410 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 20:14:05,518.518 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 20:14:05,545.545 INFO    ] time= 12/06/2026 20:14:05
[2026-06-12 20:14:05,560.560 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 20:14:05,605.605 INFO    ] Checking for existing commands in stream...
[2026-06-12 20:14:05,726.726 INFO    ] No existing commands found in stream
[2026-06-12 20:14:10,736.736 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 20:14:10,739.739 INFO    ] Waiting 1.37 seconds before fallback handling...
[2026-06-12 20:14:12,497.497 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 20:14:12,498.498 INFO    ] Checking for system updates...
[2026-06-12 20:14:12,519.519 INFO    ] 200
[2026-06-12 20:14:12,520.520 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:14:12,551.551 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 20:14:12,552.552 INFO    ] No update needed
[2026-06-12 20:14:12,553.553 INFO    ] Checking for camera pi updates...
[2026-06-12 20:14:12,572.572 INFO    ] 200
[2026-06-12 20:14:12,574.574 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:14:12,596.596 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 20:14:12,644.644 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 20:14:12,645.645 INFO    ] No camera update needed
[2026-06-12 20:14:12,647.647 INFO    ] Script finished. Safe exiting...
[2026-06-12 20:14:12,648.648 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 20:14:12,651.651 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 20:14:12,654.654 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 20:14:14,693.693 INFO    ] ================================================
[2026-06-12 20:14:14,709.709 INFO    ] Launching Daemon at Fri Jun 12 20:14:14 IST 2026
[2026-06-12 20:14:14,721.721 INFO    ] ================================================
[2026-06-12 20:14:15,072.072 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 20:14:15
[2026-06-12 20:14:15,386.386 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 20:14:15,517.517 INFO    ] Initializing speech engine...
[2026-06-12 20:14:15,520.520 INFO    ] 2026-06-12 20:14:15
[2026-06-12 20:14:15,740.740 INFO    ] 2026-06-12 20:14:15
[2026-06-12 20:14:15,770.770 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 20:14:15,956.956 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 20:14:15,965.965 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 20:14:16,090.090 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 20:14:16,146.146 INFO    ] time= 12/06/2026 20:14:16
[2026-06-12 20:14:16,190.190 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 20:14:16,192.192 INFO    ] Checking for existing commands in stream...
[2026-06-12 20:14:16,289.289 INFO    ] No existing commands found in stream
[2026-06-12 20:14:21,298.298 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 20:14:21,301.301 INFO    ] Waiting 0.97 seconds before fallback handling...
[2026-06-12 20:14:22,639.639 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 20:14:22,641.641 INFO    ] Checking for system updates...
[2026-06-12 20:14:22,662.662 INFO    ] 200
[2026-06-12 20:14:22,663.663 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:14:22,693.693 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 20:14:22,694.694 INFO    ] No update needed
[2026-06-12 20:14:22,695.695 INFO    ] Checking for camera pi updates...
[2026-06-12 20:14:22,717.717 INFO    ] 200
[2026-06-12 20:14:22,719.719 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:14:22,743.743 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 20:14:22,777.777 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 20:14:22,778.778 INFO    ] No camera update needed
[2026-06-12 20:14:22,780.780 INFO    ] Script finished. Safe exiting...
[2026-06-12 20:14:22,781.781 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 20:14:22,784.784 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 20:14:22,787.787 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 20:14:24,827.827 INFO    ] ================================================
[2026-06-12 20:14:24,843.843 INFO    ] Launching Daemon at Fri Jun 12 20:14:24 IST 2026
[2026-06-12 20:14:24,854.854 INFO    ] ================================================
[2026-06-12 20:14:25,192.192 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 20:14:25
[2026-06-12 20:14:25,504.504 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 20:14:25,632.632 INFO    ] Initializing speech engine...
[2026-06-12 20:14:25,641.641 INFO    ] 2026-06-12 20:14:25
[2026-06-12 20:14:25,851.851 INFO    ] 2026-06-12 20:14:25
[2026-06-12 20:14:25,880.880 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 20:14:26,063.063 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 20:14:26,072.072 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 20:14:26,217.217 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 20:14:26,270.270 INFO    ] time= 12/06/2026 20:14:26
[2026-06-12 20:14:26,292.292 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 20:14:26,299.299 INFO    ] Checking for existing commands in stream...
[2026-06-12 20:14:26,364.364 INFO    ] No existing commands found in stream
[2026-06-12 20:14:31,376.376 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 20:14:31,379.379 INFO    ] Waiting 3.58 seconds before fallback handling...
[2026-06-12 20:14:35,349.349 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 20:14:35,351.351 INFO    ] Checking for system updates...
[2026-06-12 20:14:35,372.372 INFO    ] 200
[2026-06-12 20:14:35,373.373 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:14:35,406.406 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 20:14:35,408.408 INFO    ] No update needed
[2026-06-12 20:14:35,409.409 INFO    ] Checking for camera pi updates...
[2026-06-12 20:14:35,430.430 INFO    ] 200
[2026-06-12 20:14:35,431.431 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:14:35,455.455 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 20:14:35,499.499 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 20:14:35,501.501 INFO    ] No camera update needed
[2026-06-12 20:14:35,502.502 INFO    ] Script finished. Safe exiting...
[2026-06-12 20:14:35,504.504 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 20:14:35,507.507 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 20:14:35,510.510 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 20:14:37,551.551 INFO    ] ================================================
[2026-06-12 20:14:37,567.567 INFO    ] Launching Daemon at Fri Jun 12 20:14:37 IST 2026
[2026-06-12 20:14:37,578.578 INFO    ] ================================================
[2026-06-12 20:14:37,961.961 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 20:14:37
[2026-06-12 20:14:38,305.305 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 20:14:38,458.458 INFO    ] Initializing speech engine...
[2026-06-12 20:14:38,464.464 INFO    ] 2026-06-12 20:14:38
[2026-06-12 20:14:38,672.672 INFO    ] 2026-06-12 20:14:38
[2026-06-12 20:14:38,701.701 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 20:14:38,885.885 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 20:14:38,894.894 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 20:14:39,030.030 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 20:14:39,092.092 INFO    ] time= 12/06/2026 20:14:39
[2026-06-12 20:14:39,116.116 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 20:14:39,122.122 INFO    ] Checking for existing commands in stream...
[2026-06-12 20:14:39,189.189 INFO    ] No existing commands found in stream
[2026-06-12 20:14:44,204.204 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 20:14:44,207.207 INFO    ] Waiting 1.28 seconds before fallback handling...
[2026-06-12 20:14:45,882.882 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 20:14:45,883.883 INFO    ] Checking for system updates...
[2026-06-12 20:14:45,904.904 INFO    ] 200
[2026-06-12 20:14:45,905.905 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:14:45,938.938 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 20:14:45,940.940 INFO    ] No update needed
[2026-06-12 20:14:45,941.941 INFO    ] Checking for camera pi updates...
[2026-06-12 20:14:45,964.964 INFO    ] 200
[2026-06-12 20:14:45,965.965 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:14:45,989.989 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 20:14:46,032.032 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 20:14:46,034.034 INFO    ] No camera update needed
[2026-06-12 20:14:46,035.035 INFO    ] Script finished. Safe exiting...
[2026-06-12 20:14:46,037.037 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 20:14:46,040.040 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 20:14:46,043.043 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 20:14:48,087.087 INFO    ] ================================================
[2026-06-12 20:14:48,102.102 INFO    ] Launching Daemon at Fri Jun 12 20:14:48 IST 2026
[2026-06-12 20:14:48,114.114 INFO    ] ================================================
[2026-06-12 20:14:48,450.450 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 20:14:48
[2026-06-12 20:14:48,762.762 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 20:14:48,894.894 INFO    ] Initializing speech engine...
[2026-06-12 20:14:48,901.901 INFO    ] 2026-06-12 20:14:48
[2026-06-12 20:14:49,115.115 INFO    ] 2026-06-12 20:14:49
[2026-06-12 20:14:49,144.144 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 20:14:49,329.329 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 20:14:49,338.338 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 20:14:49,471.471 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 20:14:49,539.539 INFO    ] time= 12/06/2026 20:14:49
[2026-06-12 20:14:49,563.563 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 20:14:49,569.569 INFO    ] Checking for existing commands in stream...
[2026-06-12 20:14:49,661.661 INFO    ] No existing commands found in stream
[2026-06-12 20:14:54,670.670 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 20:14:54,673.673 INFO    ] Waiting 1.09 seconds before fallback handling...
[2026-06-12 20:14:56,160.160 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 20:14:56,161.161 INFO    ] Checking for system updates...
[2026-06-12 20:14:56,183.183 INFO    ] 200
[2026-06-12 20:14:56,184.184 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:14:56,214.214 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 20:14:56,215.215 INFO    ] No update needed
[2026-06-12 20:14:56,216.216 INFO    ] Checking for camera pi updates...
[2026-06-12 20:14:56,236.236 INFO    ] 200
[2026-06-12 20:14:56,237.237 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:14:56,262.262 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 20:14:56,317.317 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 20:14:56,319.319 INFO    ] No camera update needed
[2026-06-12 20:14:56,320.320 INFO    ] Script finished. Safe exiting...
[2026-06-12 20:14:56,322.322 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 20:14:56,324.324 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 20:14:56,327.327 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 20:14:58,367.367 INFO    ] ================================================
[2026-06-12 20:14:58,383.383 INFO    ] Launching Daemon at Fri Jun 12 20:14:58 IST 2026
[2026-06-12 20:14:58,394.394 INFO    ] ================================================
[2026-06-12 20:14:58,755.755 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 20:14:58
[2026-06-12 20:14:59,073.073 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 20:14:59,208.208 INFO    ] Initializing speech engine...
[2026-06-12 20:14:59,212.212 INFO    ] 2026-06-12 20:14:59
[2026-06-12 20:14:59,407.407 INFO    ] 2026-06-12 20:14:59
[2026-06-12 20:14:59,452.452 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 20:14:59,591.591 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 20:14:59,593.593 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 20:14:59,773.773 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 20:14:59,824.824 INFO    ] time= 12/06/2026 20:14:59
[2026-06-12 20:14:59,875.875 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 20:14:59,910.910 INFO    ] Checking for existing commands in stream...
[2026-06-12 20:15:00,036.036 INFO    ] No existing commands found in stream
[2026-06-12 20:15:05,045.045 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 20:15:05,048.048 INFO    ] Waiting 2.30 seconds before fallback handling...
[2026-06-12 20:15:07,699.699 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 20:15:07,700.700 INFO    ] Checking for system updates...
[2026-06-12 20:15:07,721.721 INFO    ] 200
[2026-06-12 20:15:07,722.722 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:15:07,755.755 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 20:15:07,756.756 INFO    ] No update needed
[2026-06-12 20:15:07,758.758 INFO    ] Checking for camera pi updates...
[2026-06-12 20:15:07,777.777 INFO    ] 200
[2026-06-12 20:15:07,779.779 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:15:07,802.802 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 20:15:07,845.845 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 20:15:07,847.847 INFO    ] No camera update needed
[2026-06-12 20:15:07,848.848 INFO    ] Script finished. Safe exiting...
[2026-06-12 20:15:07,849.849 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 20:15:07,852.852 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 20:15:07,855.855 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 20:15:09,893.893 INFO    ] ================================================
[2026-06-12 20:15:09,909.909 INFO    ] Launching Daemon at Fri Jun 12 20:15:09 IST 2026
[2026-06-12 20:15:09,920.920 INFO    ] ================================================
[2026-06-12 20:15:10,311.311 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 20:15:10
[2026-06-12 20:15:10,657.657 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 20:15:10,813.813 INFO    ] Initializing speech engine...
[2026-06-12 20:15:10,817.817 INFO    ] 2026-06-12 20:15:10
[2026-06-12 20:15:11,026.026 INFO    ] 2026-06-12 20:15:11
[2026-06-12 20:15:11,055.055 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 20:15:11,240.240 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 20:15:11,249.249 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 20:15:11,399.399 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 20:15:11,447.447 INFO    ] time= 12/06/2026 20:15:11
[2026-06-12 20:15:11,469.469 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 20:15:11,476.476 INFO    ] Checking for existing commands in stream...
[2026-06-12 20:15:11,543.543 INFO    ] No existing commands found in stream
[2026-06-12 20:15:16,552.552 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 20:15:16,556.556 INFO    ] Waiting 0.56 seconds before fallback handling...
[2026-06-12 20:15:17,550.550 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 20:15:17,552.552 INFO    ] Checking for system updates...
[2026-06-12 20:15:17,575.575 INFO    ] 200
[2026-06-12 20:15:17,577.577 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:15:17,609.609 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 20:15:17,611.611 INFO    ] No update needed
[2026-06-12 20:15:17,613.613 INFO    ] Checking for camera pi updates...
[2026-06-12 20:15:17,632.632 INFO    ] 200
[2026-06-12 20:15:17,634.634 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:15:17,660.660 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 20:15:17,712.712 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 20:15:17,713.713 INFO    ] No camera update needed
[2026-06-12 20:15:17,715.715 INFO    ] Script finished. Safe exiting...
[2026-06-12 20:15:17,716.716 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 20:15:17,719.719 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 20:15:17,722.722 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 20:15:19,763.763 INFO    ] ================================================
[2026-06-12 20:15:19,779.779 INFO    ] Launching Daemon at Fri Jun 12 20:15:19 IST 2026
[2026-06-12 20:15:19,790.790 INFO    ] ================================================
[2026-06-12 20:15:20,158.158 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 20:15:20
[2026-06-12 20:15:20,501.501 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 20:15:20,659.659 INFO    ] Initializing speech engine...
[2026-06-12 20:15:20,665.665 INFO    ] 2026-06-12 20:15:20
[2026-06-12 20:15:20,877.877 INFO    ] 2026-06-12 20:15:20
[2026-06-12 20:15:20,906.906 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 20:15:21,094.094 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 20:15:21,104.104 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 20:15:21,235.235 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 20:15:21,303.303 INFO    ] time= 12/06/2026 20:15:21
[2026-06-12 20:15:21,328.328 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 20:15:21,335.335 INFO    ] Checking for existing commands in stream...
[2026-06-12 20:15:21,426.426 INFO    ] No existing commands found in stream
[2026-06-12 20:15:26,446.446 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 20:15:26,449.449 INFO    ] Waiting 3.09 seconds before fallback handling...
[2026-06-12 20:15:29,890.890 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 20:15:29,891.891 INFO    ] Checking for system updates...
[2026-06-12 20:15:29,912.912 INFO    ] 200
[2026-06-12 20:15:29,913.913 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:15:29,943.943 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 20:15:29,944.944 INFO    ] No update needed
[2026-06-12 20:15:29,946.946 INFO    ] Checking for camera pi updates...
[2026-06-12 20:15:29,965.965 INFO    ] 200
[2026-06-12 20:15:29,966.966 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:15:29,989.989 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 20:15:30,039.039 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 20:15:30,041.041 INFO    ] No camera update needed
[2026-06-12 20:15:30,042.042 INFO    ] Script finished. Safe exiting...
[2026-06-12 20:15:30,043.043 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 20:15:30,046.046 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 20:15:30,049.049 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 20:15:32,080.080 INFO    ] ================================================
[2026-06-12 20:15:32,089.089 INFO    ] Launching Daemon at Fri Jun 12 20:15:32 IST 2026
[2026-06-12 20:15:32,096.096 INFO    ] ================================================
[2026-06-12 20:15:32,425.425 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 20:15:32
[2026-06-12 20:15:32,766.766 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 20:15:32,918.918 INFO    ] Initializing speech engine...
[2026-06-12 20:15:32,923.923 INFO    ] 2026-06-12 20:15:32
[2026-06-12 20:15:33,130.130 INFO    ] 2026-06-12 20:15:33
[2026-06-12 20:15:33,159.159 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 20:15:33,345.345 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 20:15:33,355.355 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 20:15:33,504.504 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 20:15:33,552.552 INFO    ] time= 12/06/2026 20:15:33
[2026-06-12 20:15:33,575.575 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 20:15:33,581.581 INFO    ] Checking for existing commands in stream...
[2026-06-12 20:15:33,649.649 INFO    ] No existing commands found in stream
[2026-06-12 20:15:38,663.663 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 20:15:38,666.666 INFO    ] Waiting 0.42 seconds before fallback handling...
[2026-06-12 20:15:39,419.419 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 20:15:39,421.421 INFO    ] Checking for system updates...
[2026-06-12 20:15:39,444.444 INFO    ] 200
[2026-06-12 20:15:39,445.445 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:15:39,477.477 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 20:15:39,479.479 INFO    ] No update needed
[2026-06-12 20:15:39,480.480 INFO    ] Checking for camera pi updates...
[2026-06-12 20:15:39,499.499 INFO    ] 200
[2026-06-12 20:15:39,501.501 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:15:39,526.526 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 20:15:39,672.672 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 20:15:39,676.676 INFO    ] No camera update needed
[2026-06-12 20:15:39,678.678 INFO    ] Script finished. Safe exiting...
[2026-06-12 20:15:39,679.679 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 20:15:39,683.683 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 20:15:39,685.685 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 20:15:41,724.724 INFO    ] ================================================
[2026-06-12 20:15:41,740.740 INFO    ] Launching Daemon at Fri Jun 12 20:15:41 IST 2026
[2026-06-12 20:15:41,751.751 INFO    ] ================================================
[2026-06-12 20:15:42,098.098 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 20:15:42
[2026-06-12 20:15:42,416.416 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 20:15:42,559.559 INFO    ] Initializing speech engine...
[2026-06-12 20:15:42,564.564 INFO    ] 2026-06-12 20:15:42
[2026-06-12 20:15:42,768.768 INFO    ] 2026-06-12 20:15:42
[2026-06-12 20:15:42,796.796 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 20:15:42,979.979 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 20:15:42,982.982 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 20:15:43,116.116 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 20:15:43,177.177 INFO    ] time= 12/06/2026 20:15:43
[2026-06-12 20:15:43,210.210 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 20:15:43,211.211 INFO    ] Checking for existing commands in stream...
[2026-06-12 20:15:43,283.283 INFO    ] No existing commands found in stream
[2026-06-12 20:15:48,297.297 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 20:15:48,300.300 INFO    ] Waiting 2.04 seconds before fallback handling...
[2026-06-12 20:15:50,747.747 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 20:15:50,749.749 INFO    ] Checking for system updates...
[2026-06-12 20:15:50,770.770 INFO    ] 200
[2026-06-12 20:15:50,771.771 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:15:50,802.802 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 20:15:50,803.803 INFO    ] No update needed
[2026-06-12 20:15:50,805.805 INFO    ] Checking for camera pi updates...
[2026-06-12 20:15:50,824.824 INFO    ] 200
[2026-06-12 20:15:50,825.825 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:15:50,851.851 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 20:15:50,908.908 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 20:15:50,909.909 INFO    ] No camera update needed
[2026-06-12 20:15:50,911.911 INFO    ] Script finished. Safe exiting...
[2026-06-12 20:15:50,912.912 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 20:15:50,915.915 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 20:15:50,918.918 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 20:15:52,956.956 INFO    ] ================================================
[2026-06-12 20:15:52,971.971 INFO    ] Launching Daemon at Fri Jun 12 20:15:52 IST 2026
[2026-06-12 20:15:52,983.983 INFO    ] ================================================
[2026-06-12 20:15:53,357.357 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 20:15:53
[2026-06-12 20:15:53,696.696 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 20:15:53,849.849 INFO    ] Initializing speech engine...
[2026-06-12 20:15:53,855.855 INFO    ] 2026-06-12 20:15:53
[2026-06-12 20:15:54,063.063 INFO    ] 2026-06-12 20:15:54
[2026-06-12 20:15:54,092.092 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 20:15:54,276.276 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 20:15:54,286.286 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 20:15:54,426.426 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 20:15:54,483.483 INFO    ] time= 12/06/2026 20:15:54
[2026-06-12 20:15:54,507.507 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 20:15:54,513.513 INFO    ] Checking for existing commands in stream...
[2026-06-12 20:15:54,580.580 INFO    ] No existing commands found in stream
[2026-06-12 20:15:59,594.594 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 20:15:59,598.598 INFO    ] Waiting 0.53 seconds before fallback handling...
[2026-06-12 20:16:00,513.513 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 20:16:00,514.514 INFO    ] Checking for system updates...
[2026-06-12 20:16:00,535.535 INFO    ] 200
[2026-06-12 20:16:00,536.536 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:16:00,567.567 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 20:16:00,568.568 INFO    ] No update needed
[2026-06-12 20:16:00,569.569 INFO    ] Checking for camera pi updates...
[2026-06-12 20:16:00,591.591 INFO    ] 200
[2026-06-12 20:16:00,593.593 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:16:00,616.616 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 20:16:00,686.686 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 20:16:00,687.687 INFO    ] No camera update needed
[2026-06-12 20:16:00,689.689 INFO    ] Script finished. Safe exiting...
[2026-06-12 20:16:00,690.690 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 20:16:00,693.693 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 20:16:00,696.696 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 20:16:02,732.732 INFO    ] ================================================
[2026-06-12 20:16:02,744.744 INFO    ] Launching Daemon at Fri Jun 12 20:16:02 IST 2026
[2026-06-12 20:16:02,751.751 INFO    ] ================================================
[2026-06-12 20:16:03,089.089 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 20:16:03
[2026-06-12 20:16:03,407.407 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 20:16:03,538.538 INFO    ] Initializing speech engine...
[2026-06-12 20:16:03,542.542 INFO    ] 2026-06-12 20:16:03
[2026-06-12 20:16:03,761.761 INFO    ] 2026-06-12 20:16:03
[2026-06-12 20:16:03,791.791 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 20:16:03,916.916 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 20:16:03,980.980 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 20:16:04,115.115 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 20:16:04,178.178 INFO    ] time= 12/06/2026 20:16:04
[2026-06-12 20:16:04,212.212 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 20:16:04,218.218 INFO    ] Checking for existing commands in stream...
[2026-06-12 20:16:04,286.286 INFO    ] No existing commands found in stream
[2026-06-12 20:16:09,295.295 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 20:16:09,298.298 INFO    ] Waiting 1.79 seconds before fallback handling...
[2026-06-12 20:16:11,493.493 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 20:16:11,495.495 INFO    ] Checking for system updates...
[2026-06-12 20:16:11,517.517 INFO    ] 200
[2026-06-12 20:16:11,519.519 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:16:11,551.551 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 20:16:11,553.553 INFO    ] No update needed
[2026-06-12 20:16:11,554.554 INFO    ] Checking for camera pi updates...
[2026-06-12 20:16:11,575.575 INFO    ] 200
[2026-06-12 20:16:11,577.577 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:16:11,602.602 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 20:16:11,647.647 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 20:16:11,648.648 INFO    ] No camera update needed
[2026-06-12 20:16:11,650.650 INFO    ] Script finished. Safe exiting...
[2026-06-12 20:16:11,651.651 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 20:16:11,655.655 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 20:16:11,658.658 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 20:16:13,698.698 INFO    ] ================================================
[2026-06-12 20:16:13,713.713 INFO    ] Launching Daemon at Fri Jun 12 20:16:13 IST 2026
[2026-06-12 20:16:13,724.724 INFO    ] ================================================
[2026-06-12 20:16:14,057.057 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 20:16:14
[2026-06-12 20:16:14,376.376 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 20:16:14,524.524 INFO    ] Initializing speech engine...
[2026-06-12 20:16:14,530.530 INFO    ] 2026-06-12 20:16:14
[2026-06-12 20:16:14,747.747 INFO    ] 2026-06-12 20:16:14
[2026-06-12 20:16:14,777.777 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 20:16:14,965.965 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 20:16:14,969.969 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 20:16:15,103.103 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 20:16:15,167.167 INFO    ] time= 12/06/2026 20:16:15
[2026-06-12 20:16:15,193.193 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 20:16:15,195.195 INFO    ] Checking for existing commands in stream...
[2026-06-12 20:16:15,290.290 INFO    ] No existing commands found in stream
[2026-06-12 20:16:20,299.299 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 20:16:20,302.302 INFO    ] Waiting 2.37 seconds before fallback handling...
[2026-06-12 20:16:23,027.027 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 20:16:23,029.029 INFO    ] Checking for system updates...
[2026-06-12 20:16:23,051.051 INFO    ] 200
[2026-06-12 20:16:23,052.052 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:16:23,082.082 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 20:16:23,084.084 INFO    ] No update needed
[2026-06-12 20:16:23,085.085 INFO    ] Checking for camera pi updates...
[2026-06-12 20:16:23,108.108 INFO    ] 200
[2026-06-12 20:16:23,110.110 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:16:23,133.133 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 20:16:23,184.184 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 20:16:23,185.185 INFO    ] No camera update needed
[2026-06-12 20:16:23,187.187 INFO    ] Script finished. Safe exiting...
[2026-06-12 20:16:23,188.188 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 20:16:23,191.191 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 20:16:23,194.194 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 20:16:25,233.233 INFO    ] ================================================
[2026-06-12 20:16:25,249.249 INFO    ] Launching Daemon at Fri Jun 12 20:16:25 IST 2026
[2026-06-12 20:16:25,260.260 INFO    ] ================================================
[2026-06-12 20:16:25,614.614 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 20:16:25
[2026-06-12 20:16:25,952.952 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 20:16:26,106.106 INFO    ] Initializing speech engine...
[2026-06-12 20:16:26,109.109 INFO    ] 2026-06-12 20:16:26
[2026-06-12 20:16:26,318.318 INFO    ] 2026-06-12 20:16:26
[2026-06-12 20:16:26,347.347 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 20:16:26,481.481 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 20:16:26,534.534 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 20:16:26,673.673 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 20:16:26,741.741 INFO    ] time= 12/06/2026 20:16:26
[2026-06-12 20:16:26,765.765 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 20:16:26,771.771 INFO    ] Checking for existing commands in stream...
[2026-06-12 20:16:26,836.836 INFO    ] No existing commands found in stream
[2026-06-12 20:16:31,847.847 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 20:16:31,851.851 INFO    ] Waiting 3.04 seconds before fallback handling...
[2026-06-12 20:16:35,273.273 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 20:16:35,274.274 INFO    ] Checking for system updates...
[2026-06-12 20:16:35,295.295 INFO    ] 200
[2026-06-12 20:16:35,297.297 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:16:35,327.327 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 20:16:35,328.328 INFO    ] No update needed
[2026-06-12 20:16:35,330.330 INFO    ] Checking for camera pi updates...
[2026-06-12 20:16:35,350.350 INFO    ] 200
[2026-06-12 20:16:35,351.351 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:16:35,377.377 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 20:16:35,428.428 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 20:16:35,430.430 INFO    ] No camera update needed
[2026-06-12 20:16:35,431.431 INFO    ] Script finished. Safe exiting...
[2026-06-12 20:16:35,433.433 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 20:16:35,436.436 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 20:16:35,439.439 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 20:16:37,477.477 INFO    ] ================================================
[2026-06-12 20:16:37,492.492 INFO    ] Launching Daemon at Fri Jun 12 20:16:37 IST 2026
[2026-06-12 20:16:37,503.503 INFO    ] ================================================
[2026-06-12 20:16:37,850.850 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 20:16:37
[2026-06-12 20:16:38,189.189 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 20:16:38,342.342 INFO    ] Initializing speech engine...
[2026-06-12 20:16:38,347.347 INFO    ] 2026-06-12 20:16:38
[2026-06-12 20:16:38,557.557 INFO    ] 2026-06-12 20:16:38
[2026-06-12 20:16:38,586.586 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 20:16:38,774.774 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 20:16:38,783.783 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 20:16:38,914.914 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 20:16:38,983.983 INFO    ] time= 12/06/2026 20:16:38
[2026-06-12 20:16:39,007.007 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 20:16:39,014.014 INFO    ] Checking for existing commands in stream...
[2026-06-12 20:16:39,105.105 INFO    ] No existing commands found in stream
[2026-06-12 20:16:44,115.115 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 20:16:44,118.118 INFO    ] Waiting 3.31 seconds before fallback handling...
[2026-06-12 20:16:47,816.816 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 20:16:47,818.818 INFO    ] Checking for system updates...
[2026-06-12 20:16:47,838.838 INFO    ] 200
[2026-06-12 20:16:47,840.840 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:16:47,870.870 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 20:16:47,871.871 INFO    ] No update needed
[2026-06-12 20:16:47,872.872 INFO    ] Checking for camera pi updates...
[2026-06-12 20:16:47,891.891 INFO    ] 200
[2026-06-12 20:16:47,893.893 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:16:47,918.918 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 20:16:47,968.968 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 20:16:47,970.970 INFO    ] No camera update needed
[2026-06-12 20:16:47,971.971 INFO    ] Script finished. Safe exiting...
[2026-06-12 20:16:47,972.972 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 20:16:47,975.975 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 20:16:47,978.978 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 20:16:50,016.016 INFO    ] ================================================
[2026-06-12 20:16:50,031.031 INFO    ] Launching Daemon at Fri Jun 12 20:16:50 IST 2026
[2026-06-12 20:16:50,042.042 INFO    ] ================================================
[2026-06-12 20:16:50,392.392 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 20:16:50
[2026-06-12 20:16:50,729.729 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 20:16:50,881.881 INFO    ] Initializing speech engine...
[2026-06-12 20:16:50,886.886 INFO    ] 2026-06-12 20:16:50
[2026-06-12 20:16:51,096.096 INFO    ] 2026-06-12 20:16:51
[2026-06-12 20:16:51,126.126 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 20:16:51,313.313 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 20:16:51,322.322 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 20:16:51,454.454 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 20:16:51,513.513 INFO    ] time= 12/06/2026 20:16:51
[2026-06-12 20:16:51,547.547 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 20:16:51,554.554 INFO    ] Checking for existing commands in stream...
[2026-06-12 20:16:51,646.646 INFO    ] No existing commands found in stream
[2026-06-12 20:16:56,660.660 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 20:16:56,663.663 INFO    ] Waiting 2.25 seconds before fallback handling...
[2026-06-12 20:16:59,310.310 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 20:16:59,311.311 INFO    ] Checking for system updates...
[2026-06-12 20:16:59,332.332 INFO    ] 200
[2026-06-12 20:16:59,334.334 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:16:59,366.366 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 20:16:59,367.367 INFO    ] No update needed
[2026-06-12 20:16:59,369.369 INFO    ] Checking for camera pi updates...
[2026-06-12 20:16:59,388.388 INFO    ] 200
[2026-06-12 20:16:59,389.389 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:16:59,415.415 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 20:16:59,469.469 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 20:16:59,471.471 INFO    ] No camera update needed
[2026-06-12 20:16:59,472.472 INFO    ] Script finished. Safe exiting...
[2026-06-12 20:16:59,473.473 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 20:16:59,476.476 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 20:16:59,479.479 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 20:17:01,515.515 INFO    ] ================================================
[2026-06-12 20:17:01,531.531 INFO    ] Launching Daemon at Fri Jun 12 20:17:01 IST 2026
[2026-06-12 20:17:01,538.538 INFO    ] ================================================
[2026-06-12 20:17:01,936.936 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 20:17:01
[2026-06-12 20:17:02,335.335 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 20:17:02,495.495 INFO    ] Initializing speech engine...
[2026-06-12 20:17:02,501.501 INFO    ] 2026-06-12 20:17:02
[2026-06-12 20:17:02,711.711 INFO    ] 2026-06-12 20:17:02
[2026-06-12 20:17:02,740.740 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 20:17:02,869.869 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 20:17:02,928.928 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 20:17:03,067.067 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 20:17:03,137.137 INFO    ] time= 12/06/2026 20:17:03
[2026-06-12 20:17:03,162.162 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 20:17:03,168.168 INFO    ] Checking for existing commands in stream...
[2026-06-12 20:17:03,236.236 INFO    ] No existing commands found in stream
[2026-06-12 20:17:08,245.245 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 20:17:08,248.248 INFO    ] Waiting 3.41 seconds before fallback handling...
[2026-06-12 20:17:12,093.093 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 20:17:12,095.095 INFO    ] Checking for system updates...
[2026-06-12 20:17:12,117.117 INFO    ] 200
[2026-06-12 20:17:12,118.118 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:17:12,153.153 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 20:17:12,154.154 INFO    ] No update needed
[2026-06-12 20:17:12,156.156 INFO    ] Checking for camera pi updates...
[2026-06-12 20:17:12,175.175 INFO    ] 200
[2026-06-12 20:17:12,177.177 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:17:12,200.200 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 20:17:12,240.240 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 20:17:12,241.241 INFO    ] No camera update needed
[2026-06-12 20:17:12,243.243 INFO    ] Script finished. Safe exiting...
[2026-06-12 20:17:12,244.244 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 20:17:12,247.247 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 20:17:12,250.250 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 20:17:14,293.293 INFO    ] ================================================
[2026-06-12 20:17:14,308.308 INFO    ] Launching Daemon at Fri Jun 12 20:17:14 IST 2026
[2026-06-12 20:17:14,319.319 INFO    ] ================================================
[2026-06-12 20:17:14,664.664 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 20:17:14
[2026-06-12 20:17:15,006.006 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 20:17:15,160.160 INFO    ] Initializing speech engine...
[2026-06-12 20:17:15,165.165 INFO    ] 2026-06-12 20:17:15
[2026-06-12 20:17:15,377.377 INFO    ] 2026-06-12 20:17:15
[2026-06-12 20:17:15,406.406 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 20:17:15,594.594 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 20:17:15,603.603 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 20:17:15,741.741 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 20:17:15,804.804 INFO    ] time= 12/06/2026 20:17:15
[2026-06-12 20:17:15,828.828 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 20:17:15,835.835 INFO    ] Checking for existing commands in stream...
[2026-06-12 20:17:15,903.903 INFO    ] No existing commands found in stream
[2026-06-12 20:17:20,918.918 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 20:17:20,922.922 INFO    ] Waiting 3.86 seconds before fallback handling...
[2026-06-12 20:17:25,160.160 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 20:17:25,161.161 INFO    ] Checking for system updates...
[2026-06-12 20:17:25,184.184 INFO    ] 200
[2026-06-12 20:17:25,186.186 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:17:25,218.218 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 20:17:25,219.219 INFO    ] No update needed
[2026-06-12 20:17:25,221.221 INFO    ] Checking for camera pi updates...
[2026-06-12 20:17:25,242.242 INFO    ] 200
[2026-06-12 20:17:25,243.243 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:17:25,268.268 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 20:17:25,316.316 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 20:17:25,317.317 INFO    ] No camera update needed
[2026-06-12 20:17:25,319.319 INFO    ] Script finished. Safe exiting...
[2026-06-12 20:17:25,320.320 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 20:17:25,324.324 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 20:17:25,327.327 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 20:17:27,367.367 INFO    ] ================================================
[2026-06-12 20:17:27,383.383 INFO    ] Launching Daemon at Fri Jun 12 20:17:27 IST 2026
[2026-06-12 20:17:27,395.395 INFO    ] ================================================
[2026-06-12 20:17:27,747.747 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 20:17:27
[2026-06-12 20:17:28,062.062 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 20:17:28,197.197 INFO    ] Initializing speech engine...
[2026-06-12 20:17:28,205.205 INFO    ] 2026-06-12 20:17:28
[2026-06-12 20:17:28,410.410 INFO    ] 2026-06-12 20:17:28
[2026-06-12 20:17:28,438.438 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 20:17:28,598.598 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 20:17:28,631.631 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 20:17:28,778.778 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 20:17:28,813.813 INFO    ] time= 12/06/2026 20:17:28
[2026-06-12 20:17:28,871.871 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 20:17:28,911.911 INFO    ] Checking for existing commands in stream...
[2026-06-12 20:17:29,025.025 INFO    ] No existing commands found in stream
[2026-06-12 20:17:34,039.039 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 20:17:34,042.042 INFO    ] Waiting 3.96 seconds before fallback handling...
[2026-06-12 20:17:38,415.415 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 20:17:38,417.417 INFO    ] Checking for system updates...
[2026-06-12 20:17:38,459.459 INFO    ] 200
[2026-06-12 20:17:38,462.462 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:17:38,515.515 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 20:17:38,517.517 INFO    ] No update needed
[2026-06-12 20:17:38,520.520 INFO    ] Checking for camera pi updates...
[2026-06-12 20:17:38,548.548 INFO    ] 200
[2026-06-12 20:17:38,550.550 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:17:38,573.573 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 20:17:38,619.619 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 20:17:38,621.621 INFO    ] No camera update needed
[2026-06-12 20:17:38,622.622 INFO    ] Script finished. Safe exiting...
[2026-06-12 20:17:38,623.623 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 20:17:38,626.626 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 20:17:38,629.629 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 20:17:40,668.668 INFO    ] ================================================
[2026-06-12 20:17:40,684.684 INFO    ] Launching Daemon at Fri Jun 12 20:17:40 IST 2026
[2026-06-12 20:17:40,695.695 INFO    ] ================================================
[2026-06-12 20:17:41,056.056 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 20:17:41
[2026-06-12 20:17:41,372.372 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 20:17:41,515.515 INFO    ] Initializing speech engine...
[2026-06-12 20:17:41,521.521 INFO    ] 2026-06-12 20:17:41
[2026-06-12 20:17:41,725.725 INFO    ] 2026-06-12 20:17:41
[2026-06-12 20:17:41,754.754 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 20:17:41,937.937 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 20:17:41,946.946 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 20:17:42,080.080 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 20:17:42,142.142 INFO    ] time= 12/06/2026 20:17:42
[2026-06-12 20:17:42,166.166 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 20:17:42,172.172 INFO    ] Checking for existing commands in stream...
[2026-06-12 20:17:42,237.237 INFO    ] No existing commands found in stream
[2026-06-12 20:17:47,248.248 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 20:17:47,251.251 INFO    ] Waiting 2.13 seconds before fallback handling...
[2026-06-12 20:17:49,782.782 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 20:17:49,784.784 INFO    ] Checking for system updates...
[2026-06-12 20:17:49,804.804 INFO    ] 200
[2026-06-12 20:17:49,806.806 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:17:49,835.835 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 20:17:49,837.837 INFO    ] No update needed
[2026-06-12 20:17:49,838.838 INFO    ] Checking for camera pi updates...
[2026-06-12 20:17:49,857.857 INFO    ] 200
[2026-06-12 20:17:49,858.858 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:17:49,881.881 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 20:17:50,006.006 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 20:17:50,007.007 INFO    ] No camera update needed
[2026-06-12 20:17:50,009.009 INFO    ] Script finished. Safe exiting...
[2026-06-12 20:17:50,010.010 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 20:17:50,013.013 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 20:17:50,016.016 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 20:17:52,056.056 INFO    ] ================================================
[2026-06-12 20:17:52,071.071 INFO    ] Launching Daemon at Fri Jun 12 20:17:52 IST 2026
[2026-06-12 20:17:52,083.083 INFO    ] ================================================
[2026-06-12 20:17:52,444.444 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 20:17:52
[2026-06-12 20:17:52,760.760 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 20:17:52,892.892 INFO    ] Initializing speech engine...
[2026-06-12 20:17:52,900.900 INFO    ] 2026-06-12 20:17:52
[2026-06-12 20:17:53,113.113 INFO    ] 2026-06-12 20:17:53
[2026-06-12 20:17:53,143.143 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 20:17:53,326.326 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 20:17:53,330.330 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 20:17:53,486.486 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 20:17:53,534.534 INFO    ] time= 12/06/2026 20:17:53
[2026-06-12 20:17:53,556.556 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 20:17:53,563.563 INFO    ] Checking for existing commands in stream...
[2026-06-12 20:17:53,627.627 INFO    ] No existing commands found in stream
[2026-06-12 20:17:58,638.638 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 20:17:58,641.641 INFO    ] Waiting 2.41 seconds before fallback handling...
[2026-06-12 20:18:01,421.421 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 20:18:01,422.422 INFO    ] Checking for system updates...
[2026-06-12 20:18:01,445.445 INFO    ] 200
[2026-06-12 20:18:01,447.447 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:18:01,482.482 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 20:18:01,484.484 INFO    ] No update needed
[2026-06-12 20:18:01,485.485 INFO    ] Checking for camera pi updates...
[2026-06-12 20:18:01,507.507 INFO    ] 200
[2026-06-12 20:18:01,509.509 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:18:01,553.553 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 20:18:01,607.607 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 20:18:01,610.610 INFO    ] No camera update needed
[2026-06-12 20:18:01,613.613 INFO    ] Script finished. Safe exiting...
[2026-06-12 20:18:01,616.616 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 20:18:01,623.623 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 20:18:01,629.629 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 20:18:03,665.665 INFO    ] ================================================
[2026-06-12 20:18:03,680.680 INFO    ] Launching Daemon at Fri Jun 12 20:18:03 IST 2026
[2026-06-12 20:18:03,692.692 INFO    ] ================================================
[2026-06-12 20:18:04,020.020 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 20:18:04
[2026-06-12 20:18:04,333.333 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 20:18:04,467.467 INFO    ] Initializing speech engine...
[2026-06-12 20:18:04,476.476 INFO    ] 2026-06-12 20:18:04
[2026-06-12 20:18:04,701.701 INFO    ] 2026-06-12 20:18:04
[2026-06-12 20:18:04,732.732 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 20:18:04,865.865 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 20:18:04,903.903 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 20:18:05,075.075 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 20:18:05,108.108 INFO    ] time= 12/06/2026 20:18:05
[2026-06-12 20:18:05,160.160 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 20:18:05,185.185 INFO    ] Checking for existing commands in stream...
[2026-06-12 20:18:05,263.263 INFO    ] No existing commands found in stream
[2026-06-12 20:18:10,272.272 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 20:18:10,275.275 INFO    ] Waiting 3.84 seconds before fallback handling...
[2026-06-12 20:18:14,490.490 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 20:18:14,491.491 INFO    ] Checking for system updates...
[2026-06-12 20:18:14,512.512 INFO    ] 200
[2026-06-12 20:18:14,513.513 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:18:14,547.547 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 20:18:14,549.549 INFO    ] No update needed
[2026-06-12 20:18:14,550.550 INFO    ] Checking for camera pi updates...
[2026-06-12 20:18:14,571.571 INFO    ] 200
[2026-06-12 20:18:14,573.573 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:18:14,596.596 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 20:18:14,639.639 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 20:18:14,640.640 INFO    ] No camera update needed
[2026-06-12 20:18:14,642.642 INFO    ] Script finished. Safe exiting...
[2026-06-12 20:18:14,643.643 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 20:18:14,646.646 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 20:18:14,648.648 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 20:18:16,687.687 INFO    ] ================================================
[2026-06-12 20:18:16,702.702 INFO    ] Launching Daemon at Fri Jun 12 20:18:16 IST 2026
[2026-06-12 20:18:16,713.713 INFO    ] ================================================
[2026-06-12 20:18:17,108.108 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 20:18:17
[2026-06-12 20:18:17,420.420 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 20:18:17,563.563 INFO    ] Initializing speech engine...
[2026-06-12 20:18:17,568.568 INFO    ] 2026-06-12 20:18:17
[2026-06-12 20:18:17,773.773 INFO    ] 2026-06-12 20:18:17
[2026-06-12 20:18:17,802.802 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 20:18:17,988.988 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 20:18:17,997.997 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 20:18:18,134.134 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 20:18:18,197.197 INFO    ] time= 12/06/2026 20:18:18
[2026-06-12 20:18:18,221.221 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 20:18:18,227.227 INFO    ] Checking for existing commands in stream...
[2026-06-12 20:18:18,294.294 INFO    ] No existing commands found in stream
[2026-06-12 20:18:23,308.308 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 20:18:23,311.311 INFO    ] Waiting 3.49 seconds before fallback handling...
[2026-06-12 20:18:27,160.160 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 20:18:27,162.162 INFO    ] Checking for system updates...
[2026-06-12 20:18:27,184.184 INFO    ] 200
[2026-06-12 20:18:27,185.185 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:18:27,220.220 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 20:18:27,221.221 INFO    ] No update needed
[2026-06-12 20:18:27,223.223 INFO    ] Checking for camera pi updates...
[2026-06-12 20:18:27,245.245 INFO    ] 200
[2026-06-12 20:18:27,246.246 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:18:27,270.270 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 20:18:27,314.314 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 20:18:27,316.316 INFO    ] No camera update needed
[2026-06-12 20:18:27,317.317 INFO    ] Script finished. Safe exiting...
[2026-06-12 20:18:27,319.319 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 20:18:27,322.322 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 20:18:27,325.325 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 20:18:29,365.365 INFO    ] ================================================
[2026-06-12 20:18:29,382.382 INFO    ] Launching Daemon at Fri Jun 12 20:18:29 IST 2026
[2026-06-12 20:18:29,394.394 INFO    ] ================================================
[2026-06-12 20:18:29,721.721 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 20:18:29
[2026-06-12 20:18:30,035.035 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 20:18:30,168.168 INFO    ] Initializing speech engine...
[2026-06-12 20:18:30,181.181 INFO    ] 2026-06-12 20:18:30
[2026-06-12 20:18:30,387.387 INFO    ] 2026-06-12 20:18:30
[2026-06-12 20:18:30,417.417 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 20:18:30,601.601 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 20:18:30,609.609 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 20:18:30,731.731 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 20:18:30,792.792 INFO    ] time= 12/06/2026 20:18:30
[2026-06-12 20:18:30,826.826 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 20:18:30,831.831 INFO    ] Checking for existing commands in stream...
[2026-06-12 20:18:30,903.903 INFO    ] No existing commands found in stream
[2026-06-12 20:18:35,917.917 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 20:18:35,919.919 INFO    ] Waiting 1.67 seconds before fallback handling...
[2026-06-12 20:18:37,950.950 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 20:18:37,951.951 INFO    ] Checking for system updates...
[2026-06-12 20:18:37,973.973 INFO    ] 200
[2026-06-12 20:18:37,974.974 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:18:38,005.005 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 20:18:38,007.007 INFO    ] No update needed
[2026-06-12 20:18:38,008.008 INFO    ] Checking for camera pi updates...
[2026-06-12 20:18:38,027.027 INFO    ] 200
[2026-06-12 20:18:38,028.028 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:18:38,051.051 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 20:18:38,096.096 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 20:18:38,097.097 INFO    ] No camera update needed
[2026-06-12 20:18:38,098.098 INFO    ] Script finished. Safe exiting...
[2026-06-12 20:18:38,100.100 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 20:18:38,103.103 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 20:18:38,105.105 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 20:18:40,145.145 INFO    ] ================================================
[2026-06-12 20:18:40,161.161 INFO    ] Launching Daemon at Fri Jun 12 20:18:40 IST 2026
[2026-06-12 20:18:40,172.172 INFO    ] ================================================
[2026-06-12 20:18:40,531.531 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 20:18:40
[2026-06-12 20:18:40,867.867 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 20:18:41,019.019 INFO    ] Initializing speech engine...
[2026-06-12 20:18:41,024.024 INFO    ] 2026-06-12 20:18:41
[2026-06-12 20:18:41,234.234 INFO    ] 2026-06-12 20:18:41
[2026-06-12 20:18:41,263.263 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 20:18:41,451.451 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 20:18:41,461.461 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 20:18:41,597.597 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 20:18:41,660.660 INFO    ] time= 12/06/2026 20:18:41
[2026-06-12 20:18:41,684.684 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 20:18:41,691.691 INFO    ] Checking for existing commands in stream...
[2026-06-12 20:18:41,759.759 INFO    ] No existing commands found in stream
[2026-06-12 20:18:46,768.768 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 20:18:46,772.772 INFO    ] Waiting 1.01 seconds before fallback handling...
[2026-06-12 20:18:48,138.138 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 20:18:48,140.140 INFO    ] Checking for system updates...
[2026-06-12 20:18:48,161.161 INFO    ] 200
[2026-06-12 20:18:48,162.162 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:18:48,192.192 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 20:18:48,194.194 INFO    ] No update needed
[2026-06-12 20:18:48,195.195 INFO    ] Checking for camera pi updates...
[2026-06-12 20:18:48,214.214 INFO    ] 200
[2026-06-12 20:18:48,216.216 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:18:48,239.239 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 20:18:48,290.290 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 20:18:48,291.291 INFO    ] No camera update needed
[2026-06-12 20:18:48,293.293 INFO    ] Script finished. Safe exiting...
[2026-06-12 20:18:48,294.294 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 20:18:48,297.297 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 20:18:48,300.300 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 20:18:50,339.339 INFO    ] ================================================
[2026-06-12 20:18:50,354.354 INFO    ] Launching Daemon at Fri Jun 12 20:18:50 IST 2026
[2026-06-12 20:18:50,366.366 INFO    ] ================================================
[2026-06-12 20:18:50,721.721 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 20:18:50
[2026-06-12 20:18:51,033.033 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 20:18:51,163.163 INFO    ] Initializing speech engine...
[2026-06-12 20:18:51,171.171 INFO    ] 2026-06-12 20:18:51
[2026-06-12 20:18:51,382.382 INFO    ] 2026-06-12 20:18:51
[2026-06-12 20:18:51,410.410 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 20:18:51,594.594 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 20:18:51,603.603 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 20:18:51,731.731 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 20:18:51,795.795 INFO    ] time= 12/06/2026 20:18:51
[2026-06-12 20:18:51,822.822 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 20:18:51,829.829 INFO    ] Checking for existing commands in stream...
[2026-06-12 20:18:51,896.896 INFO    ] No existing commands found in stream
[2026-06-12 20:18:56,910.910 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 20:18:56,913.913 INFO    ] Waiting 3.47 seconds before fallback handling...
[2026-06-12 20:19:00,766.766 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 20:19:00,767.767 INFO    ] Checking for system updates...
[2026-06-12 20:19:00,788.788 INFO    ] 200
[2026-06-12 20:19:00,789.789 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:19:00,821.821 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 20:19:00,822.822 INFO    ] No update needed
[2026-06-12 20:19:00,823.823 INFO    ] Checking for camera pi updates...
[2026-06-12 20:19:00,843.843 INFO    ] 200
[2026-06-12 20:19:00,845.845 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:19:00,868.868 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 20:19:00,916.916 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 20:19:00,918.918 INFO    ] No camera update needed
[2026-06-12 20:19:00,919.919 INFO    ] Script finished. Safe exiting...
[2026-06-12 20:19:00,920.920 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 20:19:00,923.923 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 20:19:00,926.926 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 20:19:02,952.952 INFO    ] ================================================
[2026-06-12 20:19:02,961.961 INFO    ] Launching Daemon at Fri Jun 12 20:19:02 IST 2026
[2026-06-12 20:19:02,967.967 INFO    ] ================================================
[2026-06-12 20:19:03,293.293 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 20:19:03
[2026-06-12 20:19:03,631.631 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 20:19:03,786.786 INFO    ] Initializing speech engine...
[2026-06-12 20:19:03,790.790 INFO    ] 2026-06-12 20:19:03
[2026-06-12 20:19:03,997.997 INFO    ] 2026-06-12 20:19:03
[2026-06-12 20:19:04,027.027 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 20:19:04,164.164 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 20:19:04,212.212 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 20:19:04,348.348 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 20:19:04,414.414 INFO    ] time= 12/06/2026 20:19:04
[2026-06-12 20:19:04,441.441 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 20:19:04,448.448 INFO    ] Checking for existing commands in stream...
[2026-06-12 20:19:04,514.514 INFO    ] No existing commands found in stream
[2026-06-12 20:19:09,528.528 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 20:19:09,532.532 INFO    ] Waiting 3.78 seconds before fallback handling...
[2026-06-12 20:19:13,698.698 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 20:19:13,699.699 INFO    ] Checking for system updates...
[2026-06-12 20:19:13,721.721 INFO    ] 200
[2026-06-12 20:19:13,723.723 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:19:13,753.753 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 20:19:13,754.754 INFO    ] No update needed
[2026-06-12 20:19:13,756.756 INFO    ] Checking for camera pi updates...
[2026-06-12 20:19:13,775.775 INFO    ] 200
[2026-06-12 20:19:13,777.777 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:19:13,801.801 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 20:19:13,843.843 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 20:19:13,844.844 INFO    ] No camera update needed
[2026-06-12 20:19:13,846.846 INFO    ] Script finished. Safe exiting...
[2026-06-12 20:19:13,847.847 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 20:19:13,850.850 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 20:19:13,853.853 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 20:19:15,893.893 INFO    ] ================================================
[2026-06-12 20:19:15,908.908 INFO    ] Launching Daemon at Fri Jun 12 20:19:15 IST 2026
[2026-06-12 20:19:15,918.918 INFO    ] ================================================
[2026-06-12 20:19:16,276.276 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 20:19:16
[2026-06-12 20:19:16,592.592 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 20:19:16,723.723 INFO    ] Initializing speech engine...
[2026-06-12 20:19:16,727.727 INFO    ] 2026-06-12 20:19:16
[2026-06-12 20:19:16,956.956 INFO    ] 2026-06-12 20:19:16
[2026-06-12 20:19:16,987.987 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 20:19:17,184.184 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 20:19:17,188.188 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 20:19:17,333.333 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 20:19:17,387.387 INFO    ] time= 12/06/2026 20:19:17
[2026-06-12 20:19:17,427.427 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 20:19:17,433.433 INFO    ] Checking for existing commands in stream...
[2026-06-12 20:19:17,510.510 INFO    ] No existing commands found in stream
[2026-06-12 20:19:22,524.524 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 20:19:22,527.527 INFO    ] Waiting 3.36 seconds before fallback handling...
[2026-06-12 20:19:26,259.259 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 20:19:26,260.260 INFO    ] Checking for system updates...
[2026-06-12 20:19:26,281.281 INFO    ] 200
[2026-06-12 20:19:26,282.282 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:19:26,314.314 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 20:19:26,315.315 INFO    ] No update needed
[2026-06-12 20:19:26,317.317 INFO    ] Checking for camera pi updates...
[2026-06-12 20:19:26,338.338 INFO    ] 200
[2026-06-12 20:19:26,339.339 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:19:26,363.363 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 20:19:26,407.407 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 20:19:26,408.408 INFO    ] No camera update needed
[2026-06-12 20:19:26,410.410 INFO    ] Script finished. Safe exiting...
[2026-06-12 20:19:26,411.411 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 20:19:26,414.414 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 20:19:26,416.416 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 20:19:28,455.455 INFO    ] ================================================
[2026-06-12 20:19:28,470.470 INFO    ] Launching Daemon at Fri Jun 12 20:19:28 IST 2026
[2026-06-12 20:19:28,480.480 INFO    ] ================================================
[2026-06-12 20:19:28,816.816 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 20:19:28
[2026-06-12 20:19:29,131.131 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 20:19:29,269.269 INFO    ] Initializing speech engine...
[2026-06-12 20:19:29,280.280 INFO    ] 2026-06-12 20:19:29
[2026-06-12 20:19:29,485.485 INFO    ] 2026-06-12 20:19:29
[2026-06-12 20:19:29,514.514 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 20:19:29,701.701 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 20:19:29,710.710 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 20:19:29,833.833 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 20:19:29,879.879 INFO    ] time= 12/06/2026 20:19:29
[2026-06-12 20:19:29,919.919 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 20:19:29,935.935 INFO    ] Checking for existing commands in stream...
[2026-06-12 20:19:30,007.007 INFO    ] No existing commands found in stream
[2026-06-12 20:19:35,016.016 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 20:19:35,019.019 INFO    ] Waiting 2.95 seconds before fallback handling...
[2026-06-12 20:19:38,352.352 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 20:19:38,354.354 INFO    ] Checking for system updates...
[2026-06-12 20:19:38,374.374 INFO    ] 200
[2026-06-12 20:19:38,375.375 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:19:38,407.407 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 20:19:38,409.409 INFO    ] No update needed
[2026-06-12 20:19:38,410.410 INFO    ] Checking for camera pi updates...
[2026-06-12 20:19:38,430.430 INFO    ] 200
[2026-06-12 20:19:38,431.431 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:19:38,458.458 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 20:19:38,504.504 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 20:19:38,505.505 INFO    ] No camera update needed
[2026-06-12 20:19:38,507.507 INFO    ] Script finished. Safe exiting...
[2026-06-12 20:19:38,508.508 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 20:19:38,511.511 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 20:19:38,514.514 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 20:19:40,552.552 INFO    ] ================================================
[2026-06-12 20:19:40,567.567 INFO    ] Launching Daemon at Fri Jun 12 20:19:40 IST 2026
[2026-06-12 20:19:40,578.578 INFO    ] ================================================
[2026-06-12 20:19:40,949.949 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 20:19:40
[2026-06-12 20:19:41,260.260 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 20:19:41,391.391 INFO    ] Initializing speech engine...
[2026-06-12 20:19:41,403.403 INFO    ] 2026-06-12 20:19:41
[2026-06-12 20:19:41,611.611 INFO    ] 2026-06-12 20:19:41
[2026-06-12 20:19:41,641.641 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 20:19:41,826.826 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 20:19:41,834.834 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 20:19:41,962.962 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 20:19:42,024.024 INFO    ] time= 12/06/2026 20:19:41
[2026-06-12 20:19:42,057.057 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 20:19:42,063.063 INFO    ] Checking for existing commands in stream...
[2026-06-12 20:19:42,155.155 INFO    ] No existing commands found in stream
[2026-06-12 20:19:47,164.164 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 20:19:47,166.166 INFO    ] Waiting 1.19 seconds before fallback handling...
[2026-06-12 20:19:48,728.728 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 20:19:48,730.730 INFO    ] Checking for system updates...
[2026-06-12 20:19:48,751.751 INFO    ] 200
[2026-06-12 20:19:48,752.752 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:19:48,783.783 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 20:19:48,784.784 INFO    ] No update needed
[2026-06-12 20:19:48,786.786 INFO    ] Checking for camera pi updates...
[2026-06-12 20:19:48,805.805 INFO    ] 200
[2026-06-12 20:19:48,806.806 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:19:48,830.830 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 20:19:48,870.870 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 20:19:48,871.871 INFO    ] No camera update needed
[2026-06-12 20:19:48,873.873 INFO    ] Script finished. Safe exiting...
[2026-06-12 20:19:48,874.874 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 20:19:48,877.877 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 20:19:48,880.880 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 20:19:50,920.920 INFO    ] ================================================
[2026-06-12 20:19:50,935.935 INFO    ] Launching Daemon at Fri Jun 12 20:19:50 IST 2026
[2026-06-12 20:19:50,946.946 INFO    ] ================================================
[2026-06-12 20:19:51,299.299 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 20:19:51
[2026-06-12 20:19:51,610.610 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 20:19:51,741.741 INFO    ] Initializing speech engine...
[2026-06-12 20:19:51,744.744 INFO    ] 2026-06-12 20:19:51
[2026-06-12 20:19:51,961.961 INFO    ] 2026-06-12 20:19:51
[2026-06-12 20:19:51,992.992 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 20:19:52,176.176 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 20:19:52,185.185 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 20:19:52,316.316 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 20:19:52,375.375 INFO    ] time= 12/06/2026 20:19:52
[2026-06-12 20:19:52,409.409 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 20:19:52,414.414 INFO    ] Checking for existing commands in stream...
[2026-06-12 20:19:52,482.482 INFO    ] No existing commands found in stream
[2026-06-12 20:19:57,496.496 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 20:19:57,499.499 INFO    ] Waiting 1.22 seconds before fallback handling...
[2026-06-12 20:19:59,097.097 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 20:19:59,098.098 INFO    ] Checking for system updates...
[2026-06-12 20:19:59,119.119 INFO    ] 200
[2026-06-12 20:19:59,120.120 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:19:59,150.150 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 20:19:59,151.151 INFO    ] No update needed
[2026-06-12 20:19:59,152.152 INFO    ] Checking for camera pi updates...
[2026-06-12 20:19:59,173.173 INFO    ] 200
[2026-06-12 20:19:59,175.175 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:19:59,198.198 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 20:19:59,339.339 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 20:19:59,341.341 INFO    ] No camera update needed
[2026-06-12 20:19:59,342.342 INFO    ] Script finished. Safe exiting...
[2026-06-12 20:19:59,343.343 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 20:19:59,346.346 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 20:19:59,349.349 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 20:20:01,388.388 INFO    ] ================================================
[2026-06-12 20:20:01,403.403 INFO    ] Launching Daemon at Fri Jun 12 20:20:01 IST 2026
[2026-06-12 20:20:01,413.413 INFO    ] ================================================
[2026-06-12 20:20:01,784.784 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 20:20:01
[2026-06-12 20:20:02,491.491 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 20:20:02,794.794 INFO    ] Initializing speech engine...
[2026-06-12 20:20:02,796.796 INFO    ] 2026-06-12 20:20:02
[2026-06-12 20:20:03,051.051 INFO    ] 2026-06-12 20:20:03
[2026-06-12 20:20:03,132.132 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 20:20:03,341.341 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 20:20:03,399.399 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 20:20:03,535.535 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 20:20:03,537.537 INFO    ] time= 12/06/2026 20:20:03
[2026-06-12 20:20:03,564.564 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 20:20:03,567.567 INFO    ] Checking for existing commands in stream...
[2026-06-12 20:20:03,637.637 INFO    ] No existing commands found in stream
[2026-06-12 20:20:08,647.647 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 20:20:08,650.650 INFO    ] Waiting 1.29 seconds before fallback handling...
[2026-06-12 20:20:10,336.336 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 20:20:10,337.337 INFO    ] Checking for system updates...
[2026-06-12 20:20:10,360.360 INFO    ] 200
[2026-06-12 20:20:10,361.361 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:20:10,391.391 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 20:20:10,393.393 INFO    ] No update needed
[2026-06-12 20:20:10,394.394 INFO    ] Checking for camera pi updates...
[2026-06-12 20:20:10,417.417 INFO    ] 200
[2026-06-12 20:20:10,418.418 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:20:10,444.444 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 20:20:10,496.496 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 20:20:10,497.497 INFO    ] No camera update needed
[2026-06-12 20:20:10,499.499 INFO    ] Script finished. Safe exiting...
[2026-06-12 20:20:10,500.500 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 20:20:10,503.503 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 20:20:10,506.506 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 20:20:12,539.539 INFO    ] ================================================
[2026-06-12 20:20:12,554.554 INFO    ] Launching Daemon at Fri Jun 12 20:20:12 IST 2026
[2026-06-12 20:20:12,565.565 INFO    ] ================================================
[2026-06-12 20:20:12,932.932 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 20:20:12
[2026-06-12 20:20:13,244.244 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 20:20:13,373.373 INFO    ] Initializing speech engine...
[2026-06-12 20:20:13,377.377 INFO    ] 2026-06-12 20:20:13
[2026-06-12 20:20:13,593.593 INFO    ] 2026-06-12 20:20:13
[2026-06-12 20:20:13,622.622 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 20:20:13,806.806 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 20:20:13,815.815 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 20:20:13,966.966 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 20:20:14,032.032 INFO    ] time= 12/06/2026 20:20:13
[2026-06-12 20:20:14,037.037 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 20:20:14,044.044 INFO    ] Checking for existing commands in stream...
[2026-06-12 20:20:14,109.109 INFO    ] No existing commands found in stream
[2026-06-12 20:20:19,119.119 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 20:20:19,122.122 INFO    ] Waiting 2.90 seconds before fallback handling...
[2026-06-12 20:20:22,400.400 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 20:20:22,402.402 INFO    ] Checking for system updates...
[2026-06-12 20:20:22,422.422 INFO    ] 200
[2026-06-12 20:20:22,424.424 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:20:22,454.454 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 20:20:22,456.456 INFO    ] No update needed
[2026-06-12 20:20:22,457.457 INFO    ] Checking for camera pi updates...
[2026-06-12 20:20:22,476.476 INFO    ] 200
[2026-06-12 20:20:22,477.477 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:20:22,500.500 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 20:20:22,551.551 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 20:20:22,552.552 INFO    ] No camera update needed
[2026-06-12 20:20:22,553.553 INFO    ] Script finished. Safe exiting...
[2026-06-12 20:20:22,554.554 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 20:20:22,557.557 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 20:20:22,560.560 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 20:20:24,599.599 INFO    ] ================================================
[2026-06-12 20:20:24,614.614 INFO    ] Launching Daemon at Fri Jun 12 20:20:24 IST 2026
[2026-06-12 20:20:24,625.625 INFO    ] ================================================
[2026-06-12 20:20:24,984.984 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 20:20:24
[2026-06-12 20:20:25,309.309 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 20:20:25,444.444 INFO    ] Initializing speech engine...
[2026-06-12 20:20:25,448.448 INFO    ] 2026-06-12 20:20:25
[2026-06-12 20:20:25,679.679 INFO    ] 2026-06-12 20:20:25
[2026-06-12 20:20:25,710.710 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 20:20:25,909.909 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 20:20:25,913.913 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 20:20:26,061.061 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 20:20:26,125.125 INFO    ] time= 12/06/2026 20:20:26
[2026-06-12 20:20:26,150.150 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 20:20:26,161.161 INFO    ] Checking for existing commands in stream...
[2026-06-12 20:20:26,238.238 INFO    ] No existing commands found in stream
[2026-06-12 20:20:31,247.247 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 20:20:31,250.250 INFO    ] Waiting 2.47 seconds before fallback handling...
[2026-06-12 20:20:34,100.100 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 20:20:34,101.101 INFO    ] Checking for system updates...
[2026-06-12 20:20:34,122.122 INFO    ] 200
[2026-06-12 20:20:34,123.123 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:20:34,153.153 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 20:20:34,154.154 INFO    ] No update needed
[2026-06-12 20:20:34,155.155 INFO    ] Checking for camera pi updates...
[2026-06-12 20:20:34,176.176 INFO    ] 200
[2026-06-12 20:20:34,177.177 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:20:34,202.202 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 20:20:34,243.243 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 20:20:34,244.244 INFO    ] No camera update needed
[2026-06-12 20:20:34,245.245 INFO    ] Script finished. Safe exiting...
[2026-06-12 20:20:34,247.247 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 20:20:34,250.250 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 20:20:34,253.253 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 20:20:36,291.291 INFO    ] ================================================
[2026-06-12 20:20:36,307.307 INFO    ] Launching Daemon at Fri Jun 12 20:20:36 IST 2026
[2026-06-12 20:20:36,318.318 INFO    ] ================================================
[2026-06-12 20:20:36,671.671 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 20:20:36
[2026-06-12 20:20:36,987.987 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 20:20:37,131.131 INFO    ] Initializing speech engine...
[2026-06-12 20:20:37,136.136 INFO    ] 2026-06-12 20:20:37
[2026-06-12 20:20:37,340.340 INFO    ] 2026-06-12 20:20:37
[2026-06-12 20:20:37,369.369 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 20:20:37,552.552 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 20:20:37,556.556 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 20:20:37,685.685 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 20:20:37,745.745 INFO    ] time= 12/06/2026 20:20:37
[2026-06-12 20:20:37,780.780 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 20:20:37,785.785 INFO    ] Checking for existing commands in stream...
[2026-06-12 20:20:37,854.854 INFO    ] No existing commands found in stream
[2026-06-12 20:20:42,862.862 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 20:20:42,864.864 INFO    ] Waiting 0.86 seconds before fallback handling...
[2026-06-12 20:20:44,098.098 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 20:20:44,099.099 INFO    ] Checking for system updates...
[2026-06-12 20:20:44,120.120 INFO    ] 200
[2026-06-12 20:20:44,121.121 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:20:44,152.152 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 20:20:44,153.153 INFO    ] No update needed
[2026-06-12 20:20:44,154.154 INFO    ] Checking for camera pi updates...
[2026-06-12 20:20:44,175.175 INFO    ] 200
[2026-06-12 20:20:44,177.177 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:20:44,202.202 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 20:20:44,251.251 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 20:20:44,252.252 INFO    ] No camera update needed
[2026-06-12 20:20:44,254.254 INFO    ] Script finished. Safe exiting...
[2026-06-12 20:20:44,255.255 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 20:20:44,258.258 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 20:20:44,261.261 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 20:20:46,300.300 INFO    ] ================================================
[2026-06-12 20:20:46,316.316 INFO    ] Launching Daemon at Fri Jun 12 20:20:46 IST 2026
[2026-06-12 20:20:46,327.327 INFO    ] ================================================
[2026-06-12 20:20:46,653.653 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 20:20:46
[2026-06-12 20:20:46,965.965 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 20:20:47,098.098 INFO    ] Initializing speech engine...
[2026-06-12 20:20:47,101.101 INFO    ] 2026-06-12 20:20:47
[2026-06-12 20:20:47,300.300 INFO    ] 2026-06-12 20:20:47
[2026-06-12 20:20:47,341.341 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 20:20:47,498.498 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 20:20:47,565.565 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 20:20:47,708.708 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 20:20:47,759.759 INFO    ] time= 12/06/2026 20:20:47
[2026-06-12 20:20:47,809.809 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 20:20:47,816.816 INFO    ] Checking for existing commands in stream...
[2026-06-12 20:20:47,893.893 INFO    ] No existing commands found in stream
[2026-06-12 20:20:52,902.902 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 20:20:52,905.905 INFO    ] Waiting 1.56 seconds before fallback handling...
[2026-06-12 20:20:54,837.837 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 20:20:54,838.838 INFO    ] Checking for system updates...
[2026-06-12 20:20:54,859.859 INFO    ] 200
[2026-06-12 20:20:54,860.860 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:20:54,890.890 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 20:20:54,891.891 INFO    ] No update needed
[2026-06-12 20:20:54,892.892 INFO    ] Checking for camera pi updates...
[2026-06-12 20:20:54,917.917 INFO    ] 200
[2026-06-12 20:20:54,918.918 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:20:54,941.941 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 20:20:54,987.987 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 20:20:54,989.989 INFO    ] No camera update needed
[2026-06-12 20:20:54,990.990 INFO    ] Script finished. Safe exiting...
[2026-06-12 20:20:54,992.992 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 20:20:54,994.994 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 20:20:54,997.997 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 20:20:57,035.035 INFO    ] ================================================
[2026-06-12 20:20:57,051.051 INFO    ] Launching Daemon at Fri Jun 12 20:20:57 IST 2026
[2026-06-12 20:20:57,062.062 INFO    ] ================================================
[2026-06-12 20:20:57,420.420 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 20:20:57
[2026-06-12 20:20:57,759.759 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 20:20:57,911.911 INFO    ] Initializing speech engine...
[2026-06-12 20:20:57,916.916 INFO    ] 2026-06-12 20:20:57
[2026-06-12 20:20:58,127.127 INFO    ] 2026-06-12 20:20:58
[2026-06-12 20:20:58,156.156 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 20:20:58,343.343 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 20:20:58,353.353 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 20:20:58,505.505 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 20:20:58,555.555 INFO    ] time= 12/06/2026 20:20:58
[2026-06-12 20:20:58,578.578 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 20:20:58,583.583 INFO    ] Checking for existing commands in stream...
[2026-06-12 20:20:58,651.651 INFO    ] No existing commands found in stream
[2026-06-12 20:21:03,661.661 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 20:21:03,664.664 INFO    ] Waiting 2.84 seconds before fallback handling...
[2026-06-12 20:21:06,888.888 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 20:21:06,890.890 INFO    ] Checking for system updates...
[2026-06-12 20:21:06,913.913 INFO    ] 200
[2026-06-12 20:21:06,914.914 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:21:06,947.947 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 20:21:06,949.949 INFO    ] No update needed
[2026-06-12 20:21:06,950.950 INFO    ] Checking for camera pi updates...
[2026-06-12 20:21:06,969.969 INFO    ] 200
[2026-06-12 20:21:06,971.971 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:21:06,995.995 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 20:21:07,041.041 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 20:21:07,043.043 INFO    ] No camera update needed
[2026-06-12 20:21:07,044.044 INFO    ] Script finished. Safe exiting...
[2026-06-12 20:21:07,045.045 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 20:21:07,048.048 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 20:21:07,051.051 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 20:21:09,089.089 INFO    ] ================================================
[2026-06-12 20:21:09,105.105 INFO    ] Launching Daemon at Fri Jun 12 20:21:09 IST 2026
[2026-06-12 20:21:09,116.116 INFO    ] ================================================
[2026-06-12 20:21:09,448.448 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 20:21:09
[2026-06-12 20:21:09,765.765 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 20:21:09,908.908 INFO    ] Initializing speech engine...
[2026-06-12 20:21:09,914.914 INFO    ] 2026-06-12 20:21:09
[2026-06-12 20:21:10,115.115 INFO    ] 2026-06-12 20:21:10
[2026-06-12 20:21:10,143.143 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 20:21:10,330.330 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 20:21:10,333.333 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 20:21:10,468.468 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 20:21:10,536.536 INFO    ] time= 12/06/2026 20:21:10
[2026-06-12 20:21:10,561.561 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 20:21:10,567.567 INFO    ] Checking for existing commands in stream...
[2026-06-12 20:21:10,633.633 INFO    ] No existing commands found in stream
[2026-06-12 20:21:15,647.647 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 20:21:15,650.650 INFO    ] Waiting 2.21 seconds before fallback handling...
[2026-06-12 20:21:18,259.259 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 20:21:18,261.261 INFO    ] Checking for system updates...
[2026-06-12 20:21:18,283.283 INFO    ] 200
[2026-06-12 20:21:18,284.284 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:21:18,314.314 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 20:21:18,316.316 INFO    ] No update needed
[2026-06-12 20:21:18,317.317 INFO    ] Checking for camera pi updates...
[2026-06-12 20:21:18,336.336 INFO    ] 200
[2026-06-12 20:21:18,337.337 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:21:18,361.361 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 20:21:18,408.408 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 20:21:18,410.410 INFO    ] No camera update needed
[2026-06-12 20:21:18,411.411 INFO    ] Script finished. Safe exiting...
[2026-06-12 20:21:18,412.412 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 20:21:18,415.415 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 20:21:18,418.418 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 20:21:20,457.457 INFO    ] ================================================
[2026-06-12 20:21:20,473.473 INFO    ] Launching Daemon at Fri Jun 12 20:21:20 IST 2026
[2026-06-12 20:21:20,485.485 INFO    ] ================================================
[2026-06-12 20:21:20,831.831 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 20:21:20
[2026-06-12 20:21:21,156.156 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 20:21:21,289.289 INFO    ] Initializing speech engine...
[2026-06-12 20:21:21,298.298 INFO    ] 2026-06-12 20:21:21
[2026-06-12 20:21:21,524.524 INFO    ] 2026-06-12 20:21:21
[2026-06-12 20:21:21,554.554 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 20:21:21,756.756 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 20:21:21,758.758 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 20:21:21,899.899 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 20:21:21,945.945 INFO    ] time= 12/06/2026 20:21:21
[2026-06-12 20:21:21,989.989 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 20:21:22,007.007 INFO    ] Checking for existing commands in stream...
[2026-06-12 20:21:22,084.084 INFO    ] No existing commands found in stream
[2026-06-12 20:21:27,093.093 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 20:21:27,096.096 INFO    ] Waiting 0.62 seconds before fallback handling...
[2026-06-12 20:21:28,086.086 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 20:21:28,087.087 INFO    ] Checking for system updates...
[2026-06-12 20:21:28,108.108 INFO    ] 200
[2026-06-12 20:21:28,109.109 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:21:28,140.140 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 20:21:28,142.142 INFO    ] No update needed
[2026-06-12 20:21:28,143.143 INFO    ] Checking for camera pi updates...
[2026-06-12 20:21:28,162.162 INFO    ] 200
[2026-06-12 20:21:28,163.163 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:21:28,188.188 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 20:21:28,239.239 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 20:21:28,240.240 INFO    ] No camera update needed
[2026-06-12 20:21:28,242.242 INFO    ] Script finished. Safe exiting...
[2026-06-12 20:21:28,243.243 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 20:21:28,246.246 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 20:21:28,249.249 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 20:21:30,287.287 INFO    ] ================================================
[2026-06-12 20:21:30,302.302 INFO    ] Launching Daemon at Fri Jun 12 20:21:30 IST 2026
[2026-06-12 20:21:30,313.313 INFO    ] ================================================
[2026-06-12 20:21:30,714.714 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 20:21:30
[2026-06-12 20:21:31,054.054 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 20:21:31,189.189 INFO    ] Initializing speech engine...
[2026-06-12 20:21:31,198.198 INFO    ] 2026-06-12 20:21:31
[2026-06-12 20:21:31,401.401 INFO    ] 2026-06-12 20:21:31
[2026-06-12 20:21:31,429.429 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 20:21:31,617.617 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 20:21:31,622.622 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 20:21:31,768.768 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 20:21:31,828.828 INFO    ] time= 12/06/2026 20:21:31
[2026-06-12 20:21:31,862.862 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 20:21:31,869.869 INFO    ] Checking for existing commands in stream...
[2026-06-12 20:21:31,938.938 INFO    ] No existing commands found in stream
[2026-06-12 20:21:36,953.953 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 20:21:36,956.956 INFO    ] Waiting 2.06 seconds before fallback handling...
[2026-06-12 20:21:39,368.368 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 20:21:39,370.370 INFO    ] Checking for system updates...
[2026-06-12 20:21:39,391.391 INFO    ] 200
[2026-06-12 20:21:39,393.393 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:21:39,426.426 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 20:21:39,427.427 INFO    ] No update needed
[2026-06-12 20:21:39,429.429 INFO    ] Checking for camera pi updates...
[2026-06-12 20:21:39,449.449 INFO    ] 200
[2026-06-12 20:21:39,451.451 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:21:39,475.475 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 20:21:39,524.524 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 20:21:39,525.525 INFO    ] No camera update needed
[2026-06-12 20:21:39,527.527 INFO    ] Script finished. Safe exiting...
[2026-06-12 20:21:39,528.528 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 20:21:39,531.531 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 20:21:39,534.534 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 20:21:41,565.565 INFO    ] ================================================
[2026-06-12 20:21:41,581.581 INFO    ] Launching Daemon at Fri Jun 12 20:21:41 IST 2026
[2026-06-12 20:21:41,591.591 INFO    ] ================================================
[2026-06-12 20:21:41,956.956 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 20:21:41
[2026-06-12 20:21:42,272.272 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 20:21:42,415.415 INFO    ] Initializing speech engine...
[2026-06-12 20:21:42,421.421 INFO    ] 2026-06-12 20:21:42
[2026-06-12 20:21:42,624.624 INFO    ] 2026-06-12 20:21:42
[2026-06-12 20:21:42,652.652 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 20:21:42,836.836 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 20:21:42,845.845 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 20:21:42,994.994 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 20:21:43,044.044 INFO    ] time= 12/06/2026 20:21:43
[2026-06-12 20:21:43,065.065 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 20:21:43,071.071 INFO    ] Checking for existing commands in stream...
[2026-06-12 20:21:43,137.137 INFO    ] No existing commands found in stream
[2026-06-12 20:21:48,151.151 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 20:21:48,154.154 INFO    ] Waiting 0.69 seconds before fallback handling...
[2026-06-12 20:21:49,217.217 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 20:21:49,218.218 INFO    ] Checking for system updates...
[2026-06-12 20:21:49,239.239 INFO    ] 200
[2026-06-12 20:21:49,240.240 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:21:49,270.270 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 20:21:49,271.271 INFO    ] No update needed
[2026-06-12 20:21:49,273.273 INFO    ] Checking for camera pi updates...
[2026-06-12 20:21:49,292.292 INFO    ] 200
[2026-06-12 20:21:49,293.293 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:21:49,317.317 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 20:21:49,377.377 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 20:21:49,379.379 INFO    ] No camera update needed
[2026-06-12 20:21:49,380.380 INFO    ] Script finished. Safe exiting...
[2026-06-12 20:21:49,381.381 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 20:21:49,384.384 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 20:21:49,387.387 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 20:21:51,427.427 INFO    ] ================================================
[2026-06-12 20:21:51,442.442 INFO    ] Launching Daemon at Fri Jun 12 20:21:51 IST 2026
[2026-06-12 20:21:51,453.453 INFO    ] ================================================
[2026-06-12 20:21:51,839.839 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 20:21:51
[2026-06-12 20:21:52,180.180 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 20:21:52,332.332 INFO    ] Initializing speech engine...
[2026-06-12 20:21:52,338.338 INFO    ] 2026-06-12 20:21:52
[2026-06-12 20:21:52,546.546 INFO    ] 2026-06-12 20:21:52
[2026-06-12 20:21:52,575.575 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 20:21:52,759.759 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 20:21:52,770.770 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 20:21:52,908.908 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 20:21:52,965.965 INFO    ] time= 12/06/2026 20:21:52
[2026-06-12 20:21:52,989.989 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 20:21:52,995.995 INFO    ] Checking for existing commands in stream...
[2026-06-12 20:21:53,063.063 INFO    ] No existing commands found in stream
[2026-06-12 20:21:58,087.087 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 20:21:58,091.091 INFO    ] Waiting 1.95 seconds before fallback handling...
[2026-06-12 20:22:00,437.437 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 20:22:00,439.439 INFO    ] Checking for system updates...
[2026-06-12 20:22:00,461.461 INFO    ] 200
[2026-06-12 20:22:00,463.463 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:22:00,493.493 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 20:22:00,495.495 INFO    ] No update needed
[2026-06-12 20:22:00,496.496 INFO    ] Checking for camera pi updates...
[2026-06-12 20:22:00,517.517 INFO    ] 200
[2026-06-12 20:22:00,518.518 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:22:00,546.546 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 20:22:00,591.591 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 20:22:00,592.592 INFO    ] No camera update needed
[2026-06-12 20:22:00,594.594 INFO    ] Script finished. Safe exiting...
[2026-06-12 20:22:00,595.595 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 20:22:00,598.598 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 20:22:00,601.601 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 20:22:02,631.631 INFO    ] ================================================
[2026-06-12 20:22:02,643.643 INFO    ] Launching Daemon at Fri Jun 12 20:22:02 IST 2026
[2026-06-12 20:22:02,655.655 INFO    ] ================================================
[2026-06-12 20:22:03,013.013 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 20:22:03
[2026-06-12 20:22:03,353.353 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 20:22:03,505.505 INFO    ] Initializing speech engine...
[2026-06-12 20:22:03,511.511 INFO    ] 2026-06-12 20:22:03
[2026-06-12 20:22:03,720.720 INFO    ] 2026-06-12 20:22:03
[2026-06-12 20:22:03,749.749 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 20:22:03,889.889 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 20:22:03,938.938 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 20:22:04,078.078 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 20:22:04,147.147 INFO    ] time= 12/06/2026 20:22:04
[2026-06-12 20:22:04,171.171 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 20:22:04,178.178 INFO    ] Checking for existing commands in stream...
[2026-06-12 20:22:04,245.245 INFO    ] No existing commands found in stream
[2026-06-12 20:22:09,255.255 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 20:22:09,258.258 INFO    ] Waiting 3.52 seconds before fallback handling...
[2026-06-12 20:22:13,139.139 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 20:22:13,141.141 INFO    ] Checking for system updates...
[2026-06-12 20:22:13,162.162 INFO    ] 200
[2026-06-12 20:22:13,163.163 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:22:13,195.195 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 20:22:13,197.197 INFO    ] No update needed
[2026-06-12 20:22:13,198.198 INFO    ] Checking for camera pi updates...
[2026-06-12 20:22:13,218.218 INFO    ] 200
[2026-06-12 20:22:13,220.220 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:22:13,243.243 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 20:22:13,298.298 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 20:22:13,299.299 INFO    ] No camera update needed
[2026-06-12 20:22:13,300.300 INFO    ] Script finished. Safe exiting...
[2026-06-12 20:22:13,302.302 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 20:22:13,305.305 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 20:22:13,307.307 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 20:22:15,346.346 INFO    ] ================================================
[2026-06-12 20:22:15,362.362 INFO    ] Launching Daemon at Fri Jun 12 20:22:15 IST 2026
[2026-06-12 20:22:15,373.373 INFO    ] ================================================
[2026-06-12 20:22:15,723.723 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 20:22:15
[2026-06-12 20:22:16,058.058 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 20:22:16,212.212 INFO    ] Initializing speech engine...
[2026-06-12 20:22:16,216.216 INFO    ] 2026-06-12 20:22:16
[2026-06-12 20:22:16,423.423 INFO    ] 2026-06-12 20:22:16
[2026-06-12 20:22:16,452.452 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 20:22:16,585.585 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 20:22:16,637.637 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 20:22:16,781.781 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 20:22:16,839.839 INFO    ] time= 12/06/2026 20:22:16
[2026-06-12 20:22:16,873.873 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 20:22:16,885.885 INFO    ] Checking for existing commands in stream...
[2026-06-12 20:22:16,989.989 INFO    ] No existing commands found in stream
[2026-06-12 20:22:21,998.998 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 20:22:22,001.001 INFO    ] Waiting 3.55 seconds before fallback handling...
[2026-06-12 20:22:25,927.927 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 20:22:25,929.929 INFO    ] Checking for system updates...
[2026-06-12 20:22:25,949.949 INFO    ] 200
[2026-06-12 20:22:25,951.951 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:22:25,983.983 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 20:22:25,984.984 INFO    ] No update needed
[2026-06-12 20:22:25,986.986 INFO    ] Checking for camera pi updates...
[2026-06-12 20:22:26,006.006 INFO    ] 200
[2026-06-12 20:22:26,007.007 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:22:26,031.031 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 20:22:26,085.085 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 20:22:26,087.087 INFO    ] No camera update needed
[2026-06-12 20:22:26,088.088 INFO    ] Script finished. Safe exiting...
[2026-06-12 20:22:26,089.089 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 20:22:26,093.093 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 20:22:26,095.095 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 20:22:28,134.134 INFO    ] ================================================
[2026-06-12 20:22:28,149.149 INFO    ] Launching Daemon at Fri Jun 12 20:22:28 IST 2026
[2026-06-12 20:22:28,159.159 INFO    ] ================================================
[2026-06-12 20:22:28,507.507 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 20:22:28
[2026-06-12 20:22:28,846.846 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 20:22:28,998.998 INFO    ] Initializing speech engine...
[2026-06-12 20:22:29,004.004 INFO    ] 2026-06-12 20:22:29
[2026-06-12 20:22:29,213.213 INFO    ] 2026-06-12 20:22:29
[2026-06-12 20:22:29,243.243 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 20:22:29,429.429 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 20:22:29,433.433 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 20:22:29,572.572 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 20:22:29,640.640 INFO    ] time= 12/06/2026 20:22:29
[2026-06-12 20:22:29,665.665 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 20:22:29,672.672 INFO    ] Checking for existing commands in stream...
[2026-06-12 20:22:29,740.740 INFO    ] No existing commands found in stream
[2026-06-12 20:22:34,759.759 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 20:22:34,762.762 INFO    ] Waiting 0.45 seconds before fallback handling...
[2026-06-12 20:22:35,607.607 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 20:22:35,609.609 INFO    ] Checking for system updates...
[2026-06-12 20:22:35,631.631 INFO    ] 200
[2026-06-12 20:22:35,632.632 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:22:35,667.667 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 20:22:35,669.669 INFO    ] No update needed
[2026-06-12 20:22:35,670.670 INFO    ] Checking for camera pi updates...
[2026-06-12 20:22:35,690.690 INFO    ] 200
[2026-06-12 20:22:35,691.691 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:22:35,714.714 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 20:22:35,773.773 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 20:22:35,774.774 INFO    ] No camera update needed
[2026-06-12 20:22:35,776.776 INFO    ] Script finished. Safe exiting...
[2026-06-12 20:22:35,777.777 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 20:22:35,780.780 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 20:22:35,783.783 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 20:22:37,822.822 INFO    ] ================================================
[2026-06-12 20:22:37,837.837 INFO    ] Launching Daemon at Fri Jun 12 20:22:37 IST 2026
[2026-06-12 20:22:37,848.848 INFO    ] ================================================
[2026-06-12 20:22:38,190.190 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 20:22:38
[2026-06-12 20:22:38,503.503 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 20:22:38,635.635 INFO    ] Initializing speech engine...
[2026-06-12 20:22:38,641.641 INFO    ] 2026-06-12 20:22:38
[2026-06-12 20:22:38,856.856 INFO    ] 2026-06-12 20:22:38
[2026-06-12 20:22:38,884.884 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 20:22:39,101.101 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 20:22:39,105.105 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 20:22:39,246.246 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 20:22:39,292.292 INFO    ] time= 12/06/2026 20:22:39
[2026-06-12 20:22:39,330.330 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 20:22:39,354.354 INFO    ] Checking for existing commands in stream...
[2026-06-12 20:22:39,430.430 INFO    ] No existing commands found in stream
[2026-06-12 20:22:44,441.441 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 20:22:44,443.443 INFO    ] Waiting 3.08 seconds before fallback handling...
[2026-06-12 20:22:47,887.887 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 20:22:47,889.889 INFO    ] Checking for system updates...
[2026-06-12 20:22:47,910.910 INFO    ] 200
[2026-06-12 20:22:47,912.912 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:22:47,943.943 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 20:22:47,945.945 INFO    ] No update needed
[2026-06-12 20:22:47,946.946 INFO    ] Checking for camera pi updates...
[2026-06-12 20:22:47,969.969 INFO    ] 200
[2026-06-12 20:22:47,970.970 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:22:47,993.993 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 20:22:48,038.038 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 20:22:48,039.039 INFO    ] No camera update needed
[2026-06-12 20:22:48,040.040 INFO    ] Script finished. Safe exiting...
[2026-06-12 20:22:48,042.042 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 20:22:48,044.044 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 20:22:48,047.047 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 20:22:50,085.085 INFO    ] ================================================
[2026-06-12 20:22:50,100.100 INFO    ] Launching Daemon at Fri Jun 12 20:22:50 IST 2026
[2026-06-12 20:22:50,111.111 INFO    ] ================================================
[2026-06-12 20:22:50,492.492 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 20:22:50
[2026-06-12 20:22:50,831.831 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 20:22:50,983.983 INFO    ] Initializing speech engine...
[2026-06-12 20:22:50,989.989 INFO    ] 2026-06-12 20:22:50
[2026-06-12 20:22:51,200.200 INFO    ] 2026-06-12 20:22:51
[2026-06-12 20:22:51,229.229 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 20:22:51,416.416 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 20:22:51,420.420 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 20:22:51,559.559 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 20:22:51,623.623 INFO    ] time= 12/06/2026 20:22:51
[2026-06-12 20:22:51,652.652 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 20:22:51,659.659 INFO    ] Checking for existing commands in stream...
[2026-06-12 20:22:51,727.727 INFO    ] No existing commands found in stream
[2026-06-12 20:22:56,742.742 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 20:22:56,746.746 INFO    ] Waiting 2.95 seconds before fallback handling...
[2026-06-12 20:23:00,117.117 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 20:23:00,119.119 INFO    ] Checking for system updates...
[2026-06-12 20:23:00,140.140 INFO    ] 200
[2026-06-12 20:23:00,141.141 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:23:00,171.171 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 20:23:00,173.173 INFO    ] No update needed
[2026-06-12 20:23:00,174.174 INFO    ] Checking for camera pi updates...
[2026-06-12 20:23:00,193.193 INFO    ] 200
[2026-06-12 20:23:00,195.195 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:23:00,220.220 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 20:23:00,277.277 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 20:23:00,279.279 INFO    ] No camera update needed
[2026-06-12 20:23:00,280.280 INFO    ] Script finished. Safe exiting...
[2026-06-12 20:23:00,281.281 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 20:23:00,285.285 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 20:23:00,288.288 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 20:23:02,319.319 INFO    ] ================================================
[2026-06-12 20:23:02,331.331 INFO    ] Launching Daemon at Fri Jun 12 20:23:02 IST 2026
[2026-06-12 20:23:02,341.341 INFO    ] ================================================
[2026-06-12 20:23:02,698.698 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 20:23:02
[2026-06-12 20:23:03,053.053 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 20:23:03,199.199 INFO    ] Initializing speech engine...
[2026-06-12 20:23:03,204.204 INFO    ] 2026-06-12 20:23:03
[2026-06-12 20:23:03,420.420 INFO    ] 2026-06-12 20:23:03
[2026-06-12 20:23:03,450.450 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 20:23:03,571.571 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 20:23:03,635.635 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 20:23:03,789.789 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 20:23:03,842.842 INFO    ] time= 12/06/2026 20:23:03
[2026-06-12 20:23:03,864.864 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 20:23:03,870.870 INFO    ] Checking for existing commands in stream...
[2026-06-12 20:23:03,935.935 INFO    ] No existing commands found in stream
[2026-06-12 20:23:08,945.945 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 20:23:08,948.948 INFO    ] Waiting 0.28 seconds before fallback handling...
[2026-06-12 20:23:09,587.587 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 20:23:09,589.589 INFO    ] Checking for system updates...
[2026-06-12 20:23:09,610.610 INFO    ] 200
[2026-06-12 20:23:09,611.611 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:23:09,644.644 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 20:23:09,645.645 INFO    ] No update needed
[2026-06-12 20:23:09,646.646 INFO    ] Checking for camera pi updates...
[2026-06-12 20:23:09,667.667 INFO    ] 200
[2026-06-12 20:23:09,668.668 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:23:09,693.693 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 20:23:09,742.742 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 20:23:09,744.744 INFO    ] No camera update needed
[2026-06-12 20:23:09,745.745 INFO    ] Script finished. Safe exiting...
[2026-06-12 20:23:09,746.746 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 20:23:09,749.749 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 20:23:09,752.752 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 20:23:11,791.791 INFO    ] ================================================
[2026-06-12 20:23:11,806.806 INFO    ] Launching Daemon at Fri Jun 12 20:23:11 IST 2026
[2026-06-12 20:23:11,818.818 INFO    ] ================================================
[2026-06-12 20:23:12,184.184 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 20:23:12
[2026-06-12 20:23:12,499.499 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 20:23:12,643.643 INFO    ] Initializing speech engine...
[2026-06-12 20:23:12,648.648 INFO    ] 2026-06-12 20:23:12
[2026-06-12 20:23:12,853.853 INFO    ] 2026-06-12 20:23:12
[2026-06-12 20:23:12,882.882 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 20:23:13,064.064 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 20:23:13,074.074 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 20:23:13,222.222 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 20:23:13,276.276 INFO    ] time= 12/06/2026 20:23:13
[2026-06-12 20:23:13,293.293 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 20:23:13,298.298 INFO    ] Checking for existing commands in stream...
[2026-06-12 20:23:13,365.365 INFO    ] No existing commands found in stream
[2026-06-12 20:23:18,384.384 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 20:23:18,387.387 INFO    ] Waiting 2.48 seconds before fallback handling...
[2026-06-12 20:23:21,207.207 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 20:23:21,209.209 INFO    ] Checking for system updates...
[2026-06-12 20:23:21,233.233 INFO    ] 200
[2026-06-12 20:23:21,234.234 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:23:21,264.264 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 20:23:21,265.265 INFO    ] No update needed
[2026-06-12 20:23:21,266.266 INFO    ] Checking for camera pi updates...
[2026-06-12 20:23:21,285.285 INFO    ] 200
[2026-06-12 20:23:21,287.287 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:23:21,312.312 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 20:23:21,375.375 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 20:23:21,376.376 INFO    ] No camera update needed
[2026-06-12 20:23:21,378.378 INFO    ] Script finished. Safe exiting...
[2026-06-12 20:23:21,379.379 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 20:23:21,382.382 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 20:23:21,385.385 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 20:23:23,423.423 INFO    ] ================================================
[2026-06-12 20:23:23,439.439 INFO    ] Launching Daemon at Fri Jun 12 20:23:23 IST 2026
[2026-06-12 20:23:23,449.449 INFO    ] ================================================
[2026-06-12 20:23:23,796.796 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 20:23:23
[2026-06-12 20:23:24,108.108 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 20:23:24,243.243 INFO    ] Initializing speech engine...
[2026-06-12 20:23:24,256.256 INFO    ] 2026-06-12 20:23:24
[2026-06-12 20:23:24,473.473 INFO    ] 2026-06-12 20:23:24
[2026-06-12 20:23:24,503.503 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 20:23:24,699.699 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 20:23:24,703.703 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 20:23:24,849.849 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 20:23:24,908.908 INFO    ] time= 12/06/2026 20:23:24
[2026-06-12 20:23:24,946.946 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 20:23:24,948.948 INFO    ] Checking for existing commands in stream...
[2026-06-12 20:23:25,025.025 INFO    ] No existing commands found in stream
[2026-06-12 20:23:30,033.033 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 20:23:30,036.036 INFO    ] Waiting 1.76 seconds before fallback handling...
[2026-06-12 20:23:32,160.160 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 20:23:32,162.162 INFO    ] Checking for system updates...
[2026-06-12 20:23:32,185.185 INFO    ] 200
[2026-06-12 20:23:32,187.187 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:23:32,222.222 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 20:23:32,223.223 INFO    ] No update needed
[2026-06-12 20:23:32,225.225 INFO    ] Checking for camera pi updates...
[2026-06-12 20:23:32,249.249 INFO    ] 200
[2026-06-12 20:23:32,250.250 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:23:32,281.281 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 20:23:32,322.322 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 20:23:32,324.324 INFO    ] No camera update needed
[2026-06-12 20:23:32,326.326 INFO    ] Script finished. Safe exiting...
[2026-06-12 20:23:32,328.328 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 20:23:32,332.332 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 20:23:32,335.335 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 20:23:34,367.367 INFO    ] ================================================
[2026-06-12 20:23:34,382.382 INFO    ] Launching Daemon at Fri Jun 12 20:23:34 IST 2026
[2026-06-12 20:23:34,393.393 INFO    ] ================================================
[2026-06-12 20:23:34,745.745 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 20:23:34
[2026-06-12 20:23:35,057.057 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 20:23:35,199.199 INFO    ] Initializing speech engine...
[2026-06-12 20:23:35,204.204 INFO    ] 2026-06-12 20:23:35
[2026-06-12 20:23:35,409.409 INFO    ] 2026-06-12 20:23:35
[2026-06-12 20:23:35,439.439 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 20:23:35,625.625 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 20:23:35,634.634 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 20:23:35,786.786 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 20:23:35,842.842 INFO    ] time= 12/06/2026 20:23:35
[2026-06-12 20:23:35,857.857 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 20:23:35,864.864 INFO    ] Checking for existing commands in stream...
[2026-06-12 20:23:35,931.931 INFO    ] No existing commands found in stream
[2026-06-12 20:23:40,944.944 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 20:23:40,946.946 INFO    ] Waiting 1.57 seconds before fallback handling...
[2026-06-12 20:23:42,838.838 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 20:23:42,839.839 INFO    ] Checking for system updates...
[2026-06-12 20:23:42,862.862 INFO    ] 200
[2026-06-12 20:23:42,864.864 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:23:42,899.899 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 20:23:42,901.901 INFO    ] No update needed
[2026-06-12 20:23:42,903.903 INFO    ] Checking for camera pi updates...
[2026-06-12 20:23:42,928.928 INFO    ] 200
[2026-06-12 20:23:42,930.930 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:23:42,958.958 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 20:23:43,000.000 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 20:23:43,001.001 INFO    ] No camera update needed
[2026-06-12 20:23:43,003.003 INFO    ] Script finished. Safe exiting...
[2026-06-12 20:23:43,005.005 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 20:23:43,008.008 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 20:23:43,011.011 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 20:23:45,038.038 INFO    ] ================================================
[2026-06-12 20:23:45,047.047 INFO    ] Launching Daemon at Fri Jun 12 20:23:45 IST 2026
[2026-06-12 20:23:45,054.054 INFO    ] ================================================
[2026-06-12 20:23:45,379.379 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 20:23:45
[2026-06-12 20:23:45,707.707 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 20:23:45,842.842 INFO    ] Initializing speech engine...
[2026-06-12 20:23:45,855.855 INFO    ] 2026-06-12 20:23:45
[2026-06-12 20:23:46,073.073 INFO    ] 2026-06-12 20:23:46
[2026-06-12 20:23:46,104.104 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 20:23:46,207.207 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 20:23:46,237.237 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 20:23:46,391.391 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 20:23:46,433.433 INFO    ] time= 12/06/2026 20:23:46
[2026-06-12 20:23:46,467.467 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 20:23:46,511.511 INFO    ] Checking for existing commands in stream...
[2026-06-12 20:23:46,644.644 INFO    ] No existing commands found in stream
[2026-06-12 20:23:51,652.652 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 20:23:51,655.655 INFO    ] Waiting 1.28 seconds before fallback handling...
[2026-06-12 20:23:53,318.318 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 20:23:53,320.320 INFO    ] Checking for system updates...
[2026-06-12 20:23:53,340.340 INFO    ] 200
[2026-06-12 20:23:53,342.342 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:23:53,371.371 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 20:23:53,373.373 INFO    ] No update needed
[2026-06-12 20:23:53,374.374 INFO    ] Checking for camera pi updates...
[2026-06-12 20:23:53,393.393 INFO    ] 200
[2026-06-12 20:23:53,394.394 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:23:53,420.420 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 20:23:53,463.463 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 20:23:53,464.464 INFO    ] No camera update needed
[2026-06-12 20:23:53,466.466 INFO    ] Script finished. Safe exiting...
[2026-06-12 20:23:53,467.467 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 20:23:53,470.470 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 20:23:53,473.473 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 20:23:55,510.510 INFO    ] ================================================
[2026-06-12 20:23:55,526.526 INFO    ] Launching Daemon at Fri Jun 12 20:23:55 IST 2026
[2026-06-12 20:23:55,536.536 INFO    ] ================================================
[2026-06-12 20:23:55,877.877 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 20:23:55
[2026-06-12 20:23:56,192.192 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 20:23:56,324.324 INFO    ] Initializing speech engine...
[2026-06-12 20:23:56,329.329 INFO    ] 2026-06-12 20:23:56
[2026-06-12 20:23:56,555.555 INFO    ] 2026-06-12 20:23:56
[2026-06-12 20:23:56,586.586 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 20:23:56,783.783 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 20:23:56,787.787 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 20:23:56,925.925 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 20:23:56,977.977 INFO    ] time= 12/06/2026 20:23:56
[2026-06-12 20:23:57,021.021 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 20:23:57,032.032 INFO    ] Checking for existing commands in stream...
[2026-06-12 20:23:57,108.108 INFO    ] No existing commands found in stream
[2026-06-12 20:24:02,126.126 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 20:24:02,129.129 INFO    ] Waiting 0.28 seconds before fallback handling...
[2026-06-12 20:24:02,718.718 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 20:24:02,720.720 INFO    ] Checking for system updates...
[2026-06-12 20:24:02,740.740 INFO    ] 200
[2026-06-12 20:24:02,742.742 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:24:02,799.799 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 20:24:02,801.801 INFO    ] No update needed
[2026-06-12 20:24:02,804.804 INFO    ] Checking for camera pi updates...
[2026-06-12 20:24:02,840.840 INFO    ] 200
[2026-06-12 20:24:02,843.843 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:24:02,866.866 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 20:24:02,914.914 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 20:24:02,915.915 INFO    ] No camera update needed
[2026-06-12 20:24:02,917.917 INFO    ] Script finished. Safe exiting...
[2026-06-12 20:24:02,918.918 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 20:24:02,921.921 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 20:24:02,924.924 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 20:24:04,962.962 INFO    ] ================================================
[2026-06-12 20:24:04,976.976 INFO    ] Launching Daemon at Fri Jun 12 20:24:04 IST 2026
[2026-06-12 20:24:04,987.987 INFO    ] ================================================
[2026-06-12 20:24:05,344.344 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 20:24:05
[2026-06-12 20:24:05,670.670 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 20:24:05,809.809 INFO    ] Initializing speech engine...
[2026-06-12 20:24:05,816.816 INFO    ] 2026-06-12 20:24:05
[2026-06-12 20:24:06,086.086 INFO    ] 2026-06-12 20:24:06
[2026-06-12 20:24:06,117.117 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 20:24:06,316.316 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 20:24:06,327.327 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 20:24:06,459.459 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 20:24:06,510.510 INFO    ] time= 12/06/2026 20:24:06
[2026-06-12 20:24:06,549.549 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 20:24:06,566.566 INFO    ] Checking for existing commands in stream...
[2026-06-12 20:24:06,642.642 INFO    ] No existing commands found in stream
[2026-06-12 20:24:11,651.651 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 20:24:11,654.654 INFO    ] Waiting 3.74 seconds before fallback handling...
[2026-06-12 20:24:15,757.757 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 20:24:15,759.759 INFO    ] Checking for system updates...
[2026-06-12 20:24:15,779.779 INFO    ] 200
[2026-06-12 20:24:15,781.781 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:24:15,812.812 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 20:24:15,814.814 INFO    ] No update needed
[2026-06-12 20:24:15,815.815 INFO    ] Checking for camera pi updates...
[2026-06-12 20:24:15,835.835 INFO    ] 200
[2026-06-12 20:24:15,836.836 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:24:15,861.861 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 20:24:15,997.997 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 20:24:15,998.998 INFO    ] No camera update needed
[2026-06-12 20:24:16,000.000 INFO    ] Script finished. Safe exiting...
[2026-06-12 20:24:16,001.001 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 20:24:16,004.004 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 20:24:16,007.007 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 20:24:18,045.045 INFO    ] ================================================
[2026-06-12 20:24:18,060.060 INFO    ] Launching Daemon at Fri Jun 12 20:24:18 IST 2026
[2026-06-12 20:24:18,070.070 INFO    ] ================================================
[2026-06-12 20:24:18,395.395 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 20:24:18
[2026-06-12 20:24:18,706.706 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 20:24:18,850.850 INFO    ] Initializing speech engine...
[2026-06-12 20:24:18,854.854 INFO    ] 2026-06-12 20:24:18
[2026-06-12 20:24:19,059.059 INFO    ] 2026-06-12 20:24:19
[2026-06-12 20:24:19,089.089 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 20:24:19,274.274 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 20:24:19,283.283 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 20:24:19,414.414 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 20:24:19,478.478 INFO    ] time= 12/06/2026 20:24:19
[2026-06-12 20:24:19,507.507 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 20:24:19,513.513 INFO    ] Checking for existing commands in stream...
[2026-06-12 20:24:19,579.579 INFO    ] No existing commands found in stream
[2026-06-12 20:24:24,592.592 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 20:24:24,595.595 INFO    ] Waiting 2.47 seconds before fallback handling...
[2026-06-12 20:24:27,476.476 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 20:24:27,478.478 INFO    ] Checking for system updates...
[2026-06-12 20:24:27,499.499 INFO    ] 200
[2026-06-12 20:24:27,500.500 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:24:27,533.533 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 20:24:27,534.534 INFO    ] No update needed
[2026-06-12 20:24:27,535.535 INFO    ] Checking for camera pi updates...
[2026-06-12 20:24:27,557.557 INFO    ] 200
[2026-06-12 20:24:27,559.559 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:24:27,582.582 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 20:24:27,638.638 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 20:24:27,639.639 INFO    ] No camera update needed
[2026-06-12 20:24:27,641.641 INFO    ] Script finished. Safe exiting...
[2026-06-12 20:24:27,642.642 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 20:24:27,645.645 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 20:24:27,648.648 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 20:24:29,688.688 INFO    ] ================================================
[2026-06-12 20:24:29,703.703 INFO    ] Launching Daemon at Fri Jun 12 20:24:29 IST 2026
[2026-06-12 20:24:29,714.714 INFO    ] ================================================
[2026-06-12 20:24:30,077.077 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 20:24:30
[2026-06-12 20:24:30,411.411 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 20:24:30,562.562 INFO    ] Initializing speech engine...
[2026-06-12 20:24:30,568.568 INFO    ] 2026-06-12 20:24:30
[2026-06-12 20:24:30,778.778 INFO    ] 2026-06-12 20:24:30
[2026-06-12 20:24:30,807.807 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 20:24:30,992.992 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 20:24:30,995.995 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 20:24:31,133.133 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 20:24:31,197.197 INFO    ] time= 12/06/2026 20:24:31
[2026-06-12 20:24:31,224.224 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 20:24:31,231.231 INFO    ] Checking for existing commands in stream...
[2026-06-12 20:24:31,298.298 INFO    ] No existing commands found in stream
[2026-06-12 20:24:36,323.323 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 20:24:36,326.326 INFO    ] Waiting 0.36 seconds before fallback handling...
[2026-06-12 20:24:37,082.082 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 20:24:37,083.083 INFO    ] Checking for system updates...
[2026-06-12 20:24:37,106.106 INFO    ] 200
[2026-06-12 20:24:37,107.107 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:24:37,137.137 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 20:24:37,138.138 INFO    ] No update needed
[2026-06-12 20:24:37,140.140 INFO    ] Checking for camera pi updates...
[2026-06-12 20:24:37,161.161 INFO    ] 200
[2026-06-12 20:24:37,163.163 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:24:37,185.185 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 20:24:37,229.229 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 20:24:37,231.231 INFO    ] No camera update needed
[2026-06-12 20:24:37,232.232 INFO    ] Script finished. Safe exiting...
[2026-06-12 20:24:37,233.233 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 20:24:37,236.236 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 20:24:37,239.239 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 20:24:39,276.276 INFO    ] ================================================
[2026-06-12 20:24:39,291.291 INFO    ] Launching Daemon at Fri Jun 12 20:24:39 IST 2026
[2026-06-12 20:24:39,302.302 INFO    ] ================================================
[2026-06-12 20:24:39,658.658 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 20:24:39
[2026-06-12 20:24:39,968.968 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 20:24:40,101.101 INFO    ] Initializing speech engine...
[2026-06-12 20:24:40,105.105 INFO    ] 2026-06-12 20:24:40
[2026-06-12 20:24:40,331.331 INFO    ] 2026-06-12 20:24:40
[2026-06-12 20:24:40,362.362 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 20:24:40,513.513 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 20:24:40,560.560 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 20:24:40,700.700 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 20:24:40,746.746 INFO    ] time= 12/06/2026 20:24:40
[2026-06-12 20:24:40,783.783 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 20:24:40,805.805 INFO    ] Checking for existing commands in stream...
[2026-06-12 20:24:40,906.906 INFO    ] No existing commands found in stream
[2026-06-12 20:24:45,920.920 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 20:24:45,923.923 INFO    ] Waiting 2.16 seconds before fallback handling...
[2026-06-12 20:24:48,457.457 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 20:24:48,458.458 INFO    ] Checking for system updates...
[2026-06-12 20:24:48,482.482 INFO    ] 200
[2026-06-12 20:24:48,483.483 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:24:48,515.515 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 20:24:48,517.517 INFO    ] No update needed
[2026-06-12 20:24:48,518.518 INFO    ] Checking for camera pi updates...
[2026-06-12 20:24:48,541.541 INFO    ] 200
[2026-06-12 20:24:48,542.542 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:24:48,568.568 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 20:24:48,625.625 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 20:24:48,626.626 INFO    ] No camera update needed
[2026-06-12 20:24:48,628.628 INFO    ] Script finished. Safe exiting...
[2026-06-12 20:24:48,629.629 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 20:24:48,633.633 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 20:24:48,636.636 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 20:24:50,673.673 INFO    ] ================================================
[2026-06-12 20:24:50,688.688 INFO    ] Launching Daemon at Fri Jun 12 20:24:50 IST 2026
[2026-06-12 20:24:50,699.699 INFO    ] ================================================
[2026-06-12 20:24:51,075.075 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 20:24:51
[2026-06-12 20:24:51,426.426 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 20:24:51,577.577 INFO    ] Initializing speech engine...
[2026-06-12 20:24:51,582.582 INFO    ] 2026-06-12 20:24:51
[2026-06-12 20:24:51,790.790 INFO    ] 2026-06-12 20:24:51
[2026-06-12 20:24:51,805.805 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 20:24:52,013.013 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 20:24:52,016.016 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 20:24:52,160.160 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 20:24:52,223.223 INFO    ] time= 12/06/2026 20:24:52
[2026-06-12 20:24:52,247.247 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 20:24:52,254.254 INFO    ] Checking for existing commands in stream...
[2026-06-12 20:24:52,321.321 INFO    ] No existing commands found in stream
[2026-06-12 20:24:57,330.330 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 20:24:57,333.333 INFO    ] Waiting 2.10 seconds before fallback handling...
[2026-06-12 20:24:59,827.827 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 20:24:59,829.829 INFO    ] Checking for system updates...
[2026-06-12 20:24:59,853.853 INFO    ] 200
[2026-06-12 20:24:59,855.855 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:24:59,885.885 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 20:24:59,886.886 INFO    ] No update needed
[2026-06-12 20:24:59,887.887 INFO    ] Checking for camera pi updates...
[2026-06-12 20:24:59,908.908 INFO    ] 200
[2026-06-12 20:24:59,909.909 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:24:59,932.932 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 20:24:59,990.990 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 20:24:59,992.992 INFO    ] No camera update needed
[2026-06-12 20:24:59,993.993 INFO    ] Script finished. Safe exiting...
[2026-06-12 20:24:59,994.994 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 20:24:59,997.997 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 20:25:00,000.000 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 20:25:02,034.034 INFO    ] ================================================
[2026-06-12 20:25:02,048.048 INFO    ] Launching Daemon at Fri Jun 12 20:25:02 IST 2026
[2026-06-12 20:25:02,059.059 INFO    ] ================================================
[2026-06-12 20:25:02,459.459 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 20:25:02
[2026-06-12 20:25:02,797.797 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 20:25:02,927.927 INFO    ] Initializing speech engine...
[2026-06-12 20:25:02,936.936 INFO    ] 2026-06-12 20:25:02
[2026-06-12 20:25:03,148.148 INFO    ] 2026-06-12 20:25:03
[2026-06-12 20:25:03,177.177 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 20:25:03,362.362 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 20:25:03,365.365 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 20:25:03,503.503 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 20:25:03,570.570 INFO    ] time= 12/06/2026 20:25:03
[2026-06-12 20:25:03,594.594 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 20:25:03,600.600 INFO    ] Checking for existing commands in stream...
[2026-06-12 20:25:03,666.666 INFO    ] No existing commands found in stream
[2026-06-12 20:25:08,676.676 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 20:25:08,679.679 INFO    ] Waiting 0.04 seconds before fallback handling...
[2026-06-12 20:25:10,132.132 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 20:25:10,134.134 INFO    ] Checking for system updates...
[2026-06-12 20:25:10,170.170 INFO    ] 200
[2026-06-12 20:25:10,172.172 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:25:10,224.224 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 20:25:10,227.227 INFO    ] No update needed
[2026-06-12 20:25:10,229.229 INFO    ] Checking for camera pi updates...
[2026-06-12 20:25:10,262.262 INFO    ] 200
[2026-06-12 20:25:10,263.263 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:25:10,286.286 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 20:25:10,337.337 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 20:25:10,338.338 INFO    ] No camera update needed
[2026-06-12 20:25:10,339.339 INFO    ] Script finished. Safe exiting...
[2026-06-12 20:25:10,341.341 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 20:25:10,343.343 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 20:25:10,346.346 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 20:25:12,385.385 INFO    ] ================================================
[2026-06-12 20:25:12,400.400 INFO    ] Launching Daemon at Fri Jun 12 20:25:12 IST 2026
[2026-06-12 20:25:12,411.411 INFO    ] ================================================
[2026-06-12 20:25:12,757.757 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 20:25:12
[2026-06-12 20:25:13,068.068 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 20:25:13,198.198 INFO    ] Initializing speech engine...
[2026-06-12 20:25:13,202.202 INFO    ] 2026-06-12 20:25:13
[2026-06-12 20:25:13,420.420 INFO    ] 2026-06-12 20:25:13
[2026-06-12 20:25:13,449.449 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 20:25:13,572.572 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 20:25:13,635.635 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 20:25:13,766.766 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 20:25:13,822.822 INFO    ] time= 12/06/2026 20:25:13
[2026-06-12 20:25:13,857.857 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 20:25:13,867.867 INFO    ] Checking for existing commands in stream...
[2026-06-12 20:25:13,940.940 INFO    ] No existing commands found in stream
[2026-06-12 20:25:18,949.949 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 20:25:18,952.952 INFO    ] Waiting 2.89 seconds before fallback handling...
[2026-06-12 20:25:22,216.216 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 20:25:22,217.217 INFO    ] Checking for system updates...
[2026-06-12 20:25:22,238.238 INFO    ] 200
[2026-06-12 20:25:22,239.239 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:25:22,272.272 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 20:25:22,273.273 INFO    ] No update needed
[2026-06-12 20:25:22,274.274 INFO    ] Checking for camera pi updates...
[2026-06-12 20:25:22,294.294 INFO    ] 200
[2026-06-12 20:25:22,296.296 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:25:22,319.319 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 20:25:22,374.374 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 20:25:22,376.376 INFO    ] No camera update needed
[2026-06-12 20:25:22,377.377 INFO    ] Script finished. Safe exiting...
[2026-06-12 20:25:22,378.378 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 20:25:22,381.381 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 20:25:22,384.384 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 20:25:24,423.423 INFO    ] ================================================
[2026-06-12 20:25:24,438.438 INFO    ] Launching Daemon at Fri Jun 12 20:25:24 IST 2026
[2026-06-12 20:25:24,448.448 INFO    ] ================================================
[2026-06-12 20:25:24,777.777 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 20:25:24
[2026-06-12 20:25:25,089.089 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 20:25:25,232.232 INFO    ] Initializing speech engine...
[2026-06-12 20:25:25,241.241 INFO    ] 2026-06-12 20:25:25
[2026-06-12 20:25:25,456.456 INFO    ] 2026-06-12 20:25:25
[2026-06-12 20:25:25,480.480 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 20:25:25,686.686 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 20:25:25,689.689 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 20:25:25,828.828 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 20:25:25,880.880 INFO    ] time= 12/06/2026 20:25:25
[2026-06-12 20:25:25,913.913 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 20:25:25,936.936 INFO    ] Checking for existing commands in stream...
[2026-06-12 20:25:26,013.013 INFO    ] No existing commands found in stream
[2026-06-12 20:25:31,022.022 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 20:25:31,025.025 INFO    ] Waiting 4.00 seconds before fallback handling...
[2026-06-12 20:25:35,376.376 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 20:25:35,378.378 INFO    ] Checking for system updates...
[2026-06-12 20:25:35,398.398 INFO    ] 200
[2026-06-12 20:25:35,399.399 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:25:35,430.430 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 20:25:35,431.431 INFO    ] No update needed
[2026-06-12 20:25:35,432.432 INFO    ] Checking for camera pi updates...
[2026-06-12 20:25:35,452.452 INFO    ] 200
[2026-06-12 20:25:35,453.453 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:25:35,478.478 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 20:25:35,537.537 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 20:25:35,538.538 INFO    ] No camera update needed
[2026-06-12 20:25:35,539.539 INFO    ] Script finished. Safe exiting...
[2026-06-12 20:25:35,541.541 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 20:25:35,544.544 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 20:25:35,547.547 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 20:25:37,584.584 INFO    ] ================================================
[2026-06-12 20:25:37,600.600 INFO    ] Launching Daemon at Fri Jun 12 20:25:37 IST 2026
[2026-06-12 20:25:37,611.611 INFO    ] ================================================
[2026-06-12 20:25:37,964.964 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 20:25:37
[2026-06-12 20:25:38,302.302 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 20:25:38,448.448 INFO    ] Initializing speech engine...
[2026-06-12 20:25:38,454.454 INFO    ] 2026-06-12 20:25:38
[2026-06-12 20:25:38,656.656 INFO    ] 2026-06-12 20:25:38
[2026-06-12 20:25:38,685.685 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 20:25:38,868.868 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 20:25:38,872.872 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 20:25:39,008.008 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 20:25:39,076.076 INFO    ] time= 12/06/2026 20:25:39
[2026-06-12 20:25:39,098.098 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 20:25:39,104.104 INFO    ] Checking for existing commands in stream...
[2026-06-12 20:25:39,169.169 INFO    ] No existing commands found in stream
[2026-06-12 20:25:44,180.180 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 20:25:44,183.183 INFO    ] Waiting 0.58 seconds before fallback handling...
[2026-06-12 20:25:45,158.158 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 20:25:45,160.160 INFO    ] Checking for system updates...
[2026-06-12 20:25:45,184.184 INFO    ] 200
[2026-06-12 20:25:45,186.186 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:25:45,219.219 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 20:25:45,221.221 INFO    ] No update needed
[2026-06-12 20:25:45,223.223 INFO    ] Checking for camera pi updates...
[2026-06-12 20:25:45,245.245 INFO    ] 200
[2026-06-12 20:25:45,247.247 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:25:45,273.273 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 20:25:45,325.325 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 20:25:45,327.327 INFO    ] No camera update needed
[2026-06-12 20:25:45,328.328 INFO    ] Script finished. Safe exiting...
[2026-06-12 20:25:45,331.331 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 20:25:45,335.335 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 20:25:45,339.339 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 20:25:47,372.372 INFO    ] ================================================
[2026-06-12 20:25:47,387.387 INFO    ] Launching Daemon at Fri Jun 12 20:25:47 IST 2026
[2026-06-12 20:25:47,398.398 INFO    ] ================================================
[2026-06-12 20:25:47,728.728 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 20:25:47
[2026-06-12 20:25:48,046.046 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 20:25:48,177.177 INFO    ] Initializing speech engine...
[2026-06-12 20:25:48,182.182 INFO    ] 2026-06-12 20:25:48
[2026-06-12 20:25:48,373.373 INFO    ] 2026-06-12 20:25:48
[2026-06-12 20:25:48,420.420 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 20:25:48,642.642 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 20:25:48,646.646 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 20:25:48,794.794 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 20:25:48,842.842 INFO    ] time= 12/06/2026 20:25:48
[2026-06-12 20:25:48,887.887 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 20:25:48,894.894 INFO    ] Checking for existing commands in stream...
[2026-06-12 20:25:48,996.996 INFO    ] No existing commands found in stream
[2026-06-12 20:25:54,005.005 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 20:25:54,008.008 INFO    ] Waiting 3.59 seconds before fallback handling...
[2026-06-12 20:25:58,077.077 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 20:25:58,079.079 INFO    ] Checking for system updates...
[2026-06-12 20:25:58,099.099 INFO    ] 200
[2026-06-12 20:25:58,101.101 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:25:58,133.133 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 20:25:58,134.134 INFO    ] No update needed
[2026-06-12 20:25:58,136.136 INFO    ] Checking for camera pi updates...
[2026-06-12 20:25:58,155.155 INFO    ] 200
[2026-06-12 20:25:58,156.156 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:25:58,179.179 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 20:25:58,223.223 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 20:25:58,225.225 INFO    ] No camera update needed
[2026-06-12 20:25:58,226.226 INFO    ] Script finished. Safe exiting...
[2026-06-12 20:25:58,227.227 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 20:25:58,230.230 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 20:25:58,233.233 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 20:26:00,271.271 INFO    ] ================================================
[2026-06-12 20:26:00,286.286 INFO    ] Launching Daemon at Fri Jun 12 20:26:00 IST 2026
[2026-06-12 20:26:00,297.297 INFO    ] ================================================
[2026-06-12 20:26:00,680.680 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 20:26:00
[2026-06-12 20:26:01,019.019 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 20:26:01,170.170 INFO    ] Initializing speech engine...
[2026-06-12 20:26:01,176.176 INFO    ] 2026-06-12 20:26:01
[2026-06-12 20:26:01,382.382 INFO    ] 2026-06-12 20:26:01
[2026-06-12 20:26:01,412.412 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 20:26:01,545.545 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 20:26:01,594.594 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 20:26:01,746.746 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 20:26:01,808.808 INFO    ] time= 12/06/2026 20:26:01
[2026-06-12 20:26:01,833.833 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 20:26:01,840.840 INFO    ] Checking for existing commands in stream...
[2026-06-12 20:26:01,943.943 INFO    ] No existing commands found in stream
[2026-06-12 20:26:06,953.953 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 20:26:06,956.956 INFO    ] Waiting 2.32 seconds before fallback handling...
[2026-06-12 20:26:09,667.667 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 20:26:09,669.669 INFO    ] Checking for system updates...
[2026-06-12 20:26:09,690.690 INFO    ] 200
[2026-06-12 20:26:09,691.691 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:26:09,721.721 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 20:26:09,723.723 INFO    ] No update needed
[2026-06-12 20:26:09,724.724 INFO    ] Checking for camera pi updates...
[2026-06-12 20:26:09,744.744 INFO    ] 200
[2026-06-12 20:26:09,745.745 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:26:09,768.768 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 20:26:09,827.827 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 20:26:09,829.829 INFO    ] No camera update needed
[2026-06-12 20:26:09,831.831 INFO    ] Script finished. Safe exiting...
[2026-06-12 20:26:09,832.832 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 20:26:09,835.835 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 20:26:09,838.838 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 20:26:11,876.876 INFO    ] ================================================
[2026-06-12 20:26:11,891.891 INFO    ] Launching Daemon at Fri Jun 12 20:26:11 IST 2026
[2026-06-12 20:26:11,902.902 INFO    ] ================================================
[2026-06-12 20:26:12,261.261 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 20:26:12
[2026-06-12 20:26:12,574.574 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 20:26:12,704.704 INFO    ] Initializing speech engine...
[2026-06-12 20:26:12,717.717 INFO    ] 2026-06-12 20:26:12
[2026-06-12 20:26:12,923.923 INFO    ] 2026-06-12 20:26:12
[2026-06-12 20:26:12,952.952 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 20:26:13,134.134 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 20:26:13,144.144 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 20:26:13,279.279 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 20:26:13,340.340 INFO    ] time= 12/06/2026 20:26:13
[2026-06-12 20:26:13,364.364 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 20:26:13,370.370 INFO    ] Checking for existing commands in stream...
[2026-06-12 20:26:13,436.436 INFO    ] No existing commands found in stream
[2026-06-12 20:26:18,450.450 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 20:26:18,453.453 INFO    ] Waiting 2.80 seconds before fallback handling...
[2026-06-12 20:26:21,657.657 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 20:26:21,660.660 INFO    ] Checking for system updates...
[2026-06-12 20:26:21,696.696 INFO    ] 200
[2026-06-12 20:26:21,698.698 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:26:21,750.750 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 20:26:21,753.753 INFO    ] No update needed
[2026-06-12 20:26:21,756.756 INFO    ] Checking for camera pi updates...
[2026-06-12 20:26:21,787.787 INFO    ] 200
[2026-06-12 20:26:21,789.789 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:26:21,813.813 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 20:26:21,952.952 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 20:26:21,953.953 INFO    ] No camera update needed
[2026-06-12 20:26:21,955.955 INFO    ] Script finished. Safe exiting...
[2026-06-12 20:26:21,956.956 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 20:26:21,959.959 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 20:26:21,962.962 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 20:26:24,002.002 INFO    ] ================================================
[2026-06-12 20:26:24,017.017 INFO    ] Launching Daemon at Fri Jun 12 20:26:24 IST 2026
[2026-06-12 20:26:24,028.028 INFO    ] ================================================
[2026-06-12 20:26:24,375.375 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 20:26:24
[2026-06-12 20:26:24,685.685 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 20:26:24,821.821 INFO    ] Initializing speech engine...
[2026-06-12 20:26:24,834.834 INFO    ] 2026-06-12 20:26:24
[2026-06-12 20:26:25,050.050 INFO    ] 2026-06-12 20:26:25
[2026-06-12 20:26:25,079.079 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 20:26:25,275.275 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 20:26:25,278.278 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 20:26:25,416.416 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 20:26:25,462.462 INFO    ] time= 12/06/2026 20:26:25
[2026-06-12 20:26:25,501.501 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 20:26:25,523.523 INFO    ] Checking for existing commands in stream...
[2026-06-12 20:26:25,598.598 INFO    ] No existing commands found in stream
[2026-06-12 20:26:30,609.609 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 20:26:30,612.612 INFO    ] Waiting 0.78 seconds before fallback handling...
[2026-06-12 20:26:31,794.794 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 20:26:31,796.796 INFO    ] Checking for system updates...
[2026-06-12 20:26:31,835.835 INFO    ] 200
[2026-06-12 20:26:31,838.838 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:26:31,891.891 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 20:26:31,894.894 INFO    ] No update needed
[2026-06-12 20:26:31,896.896 INFO    ] Checking for camera pi updates...
[2026-06-12 20:26:31,942.942 INFO    ] 200
[2026-06-12 20:26:31,947.947 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:26:32,002.002 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 20:26:32,041.041 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 20:26:32,043.043 INFO    ] No camera update needed
[2026-06-12 20:26:32,045.045 INFO    ] Script finished. Safe exiting...
[2026-06-12 20:26:32,046.046 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 20:26:32,050.050 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 20:26:32,053.053 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 20:26:34,091.091 INFO    ] ================================================
[2026-06-12 20:26:34,107.107 INFO    ] Launching Daemon at Fri Jun 12 20:26:34 IST 2026
[2026-06-12 20:26:34,118.118 INFO    ] ================================================
[2026-06-12 20:26:34,448.448 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 20:26:34
[2026-06-12 20:26:34,758.758 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 20:26:34,900.900 INFO    ] Initializing speech engine...
[2026-06-12 20:26:34,908.908 INFO    ] 2026-06-12 20:26:34
[2026-06-12 20:26:35,124.124 INFO    ] 2026-06-12 20:26:35
[2026-06-12 20:26:35,155.155 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 20:26:35,353.353 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 20:26:35,357.357 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 20:26:35,496.496 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 20:26:35,552.552 INFO    ] time= 12/06/2026 20:26:35
[2026-06-12 20:26:35,597.597 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 20:26:35,603.603 INFO    ] Checking for existing commands in stream...
[2026-06-12 20:26:35,678.678 INFO    ] No existing commands found in stream
[2026-06-12 20:26:40,689.689 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 20:26:40,692.692 INFO    ] Waiting 0.71 seconds before fallback handling...
[2026-06-12 20:26:41,768.768 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 20:26:41,770.770 INFO    ] Checking for system updates...
[2026-06-12 20:26:41,791.791 INFO    ] 200
[2026-06-12 20:26:41,792.792 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:26:41,824.824 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 20:26:41,826.826 INFO    ] No update needed
[2026-06-12 20:26:41,827.827 INFO    ] Checking for camera pi updates...
[2026-06-12 20:26:41,846.846 INFO    ] 200
[2026-06-12 20:26:41,847.847 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:26:41,870.870 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 20:26:41,912.912 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 20:26:41,914.914 INFO    ] No camera update needed
[2026-06-12 20:26:41,915.915 INFO    ] Script finished. Safe exiting...
[2026-06-12 20:26:41,916.916 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 20:26:41,919.919 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 20:26:41,922.922 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 20:26:43,960.960 INFO    ] ================================================
[2026-06-12 20:26:43,975.975 INFO    ] Launching Daemon at Fri Jun 12 20:26:43 IST 2026
[2026-06-12 20:26:43,987.987 INFO    ] ================================================
[2026-06-12 20:26:44,345.345 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 20:26:44
[2026-06-12 20:26:44,670.670 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 20:26:44,807.807 INFO    ] Initializing speech engine...
[2026-06-12 20:26:44,817.817 INFO    ] 2026-06-12 20:26:44
[2026-06-12 20:26:45,037.037 INFO    ] 2026-06-12 20:26:45
[2026-06-12 20:26:45,067.067 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 20:26:45,253.253 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 20:26:45,263.263 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 20:26:45,414.414 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 20:26:45,463.463 INFO    ] time= 12/06/2026 20:26:45
[2026-06-12 20:26:45,485.485 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 20:26:45,492.492 INFO    ] Checking for existing commands in stream...
[2026-06-12 20:26:45,559.559 INFO    ] No existing commands found in stream
[2026-06-12 20:26:50,574.574 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 20:26:50,577.577 INFO    ] Waiting 1.01 seconds before fallback handling...
[2026-06-12 20:26:51,960.960 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 20:26:51,962.962 INFO    ] Checking for system updates...
[2026-06-12 20:26:51,983.983 INFO    ] 200
[2026-06-12 20:26:51,984.984 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:26:52,016.016 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 20:26:52,018.018 INFO    ] No update needed
[2026-06-12 20:26:52,019.019 INFO    ] Checking for camera pi updates...
[2026-06-12 20:26:52,038.038 INFO    ] 200
[2026-06-12 20:26:52,040.040 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:26:52,064.064 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 20:26:52,124.124 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 20:26:52,126.126 INFO    ] No camera update needed
[2026-06-12 20:26:52,127.127 INFO    ] Script finished. Safe exiting...
[2026-06-12 20:26:52,128.128 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 20:26:52,131.131 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 20:26:52,134.134 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 20:26:54,172.172 INFO    ] ================================================
[2026-06-12 20:26:54,188.188 INFO    ] Launching Daemon at Fri Jun 12 20:26:54 IST 2026
[2026-06-12 20:26:54,199.199 INFO    ] ================================================
[2026-06-12 20:26:54,559.559 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 20:26:54
[2026-06-12 20:26:54,891.891 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 20:26:55,035.035 INFO    ] Initializing speech engine...
[2026-06-12 20:26:55,045.045 INFO    ] 2026-06-12 20:26:55
[2026-06-12 20:26:55,255.255 INFO    ] 2026-06-12 20:26:55
[2026-06-12 20:26:55,284.284 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 20:26:55,471.471 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 20:26:55,481.481 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 20:26:55,603.603 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 20:26:55,670.670 INFO    ] time= 12/06/2026 20:26:55
[2026-06-12 20:26:55,703.703 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 20:26:55,709.709 INFO    ] Checking for existing commands in stream...
[2026-06-12 20:26:55,778.778 INFO    ] No existing commands found in stream
[2026-06-12 20:27:00,788.788 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 20:27:00,791.791 INFO    ] Waiting 0.80 seconds before fallback handling...
[2026-06-12 20:27:01,915.915 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 20:27:01,918.918 INFO    ] Checking for system updates...
[2026-06-12 20:27:01,951.951 INFO    ] 200
[2026-06-12 20:27:01,954.954 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:27:01,993.993 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 20:27:01,994.994 INFO    ] No update needed
[2026-06-12 20:27:01,996.996 INFO    ] Checking for camera pi updates...
[2026-06-12 20:27:02,019.019 INFO    ] 200
[2026-06-12 20:27:02,022.022 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:27:02,056.056 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 20:27:02,086.086 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 20:27:02,088.088 INFO    ] No camera update needed
[2026-06-12 20:27:02,089.089 INFO    ] Script finished. Safe exiting...
[2026-06-12 20:27:02,091.091 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 20:27:02,094.094 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 20:27:02,097.097 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 20:27:04,140.140 INFO    ] ================================================
[2026-06-12 20:27:04,156.156 INFO    ] Launching Daemon at Fri Jun 12 20:27:04 IST 2026
[2026-06-12 20:27:04,167.167 INFO    ] ================================================
[2026-06-12 20:27:04,535.535 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 20:27:04
[2026-06-12 20:27:04,852.852 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 20:27:04,986.986 INFO    ] Initializing speech engine...
[2026-06-12 20:27:04,991.991 INFO    ] 2026-06-12 20:27:04
[2026-06-12 20:27:05,219.219 INFO    ] 2026-06-12 20:27:05
[2026-06-12 20:27:05,250.250 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 20:27:05,394.394 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 20:27:05,457.457 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 20:27:05,590.590 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 20:27:05,642.642 INFO    ] time= 12/06/2026 20:27:05
[2026-06-12 20:27:05,685.685 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 20:27:05,687.687 INFO    ] Checking for existing commands in stream...
[2026-06-12 20:27:05,759.759 INFO    ] No existing commands found in stream
[2026-06-12 20:27:10,773.773 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 20:27:10,775.775 INFO    ] Waiting 0.33 seconds before fallback handling...
[2026-06-12 20:27:11,476.476 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 20:27:11,477.477 INFO    ] Checking for system updates...
[2026-06-12 20:27:11,498.498 INFO    ] 200
[2026-06-12 20:27:11,499.499 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:27:11,529.529 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 20:27:11,531.531 INFO    ] No update needed
[2026-06-12 20:27:11,532.532 INFO    ] Checking for camera pi updates...
[2026-06-12 20:27:11,551.551 INFO    ] 200
[2026-06-12 20:27:11,553.553 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:27:11,575.575 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 20:27:11,616.616 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 20:27:11,617.617 INFO    ] No camera update needed
[2026-06-12 20:27:11,618.618 INFO    ] Script finished. Safe exiting...
[2026-06-12 20:27:11,620.620 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 20:27:11,623.623 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 20:27:11,625.625 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 20:27:13,664.664 INFO    ] ================================================
[2026-06-12 20:27:13,680.680 INFO    ] Launching Daemon at Fri Jun 12 20:27:13 IST 2026
[2026-06-12 20:27:13,690.690 INFO    ] ================================================
[2026-06-12 20:27:14,048.048 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 20:27:14
[2026-06-12 20:27:14,359.359 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 20:27:14,500.500 INFO    ] Initializing speech engine...
[2026-06-12 20:27:14,505.505 INFO    ] 2026-06-12 20:27:14
[2026-06-12 20:27:14,708.708 INFO    ] 2026-06-12 20:27:14
[2026-06-12 20:27:14,736.736 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 20:27:14,920.920 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 20:27:14,928.928 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 20:27:15,077.077 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 20:27:15,125.125 INFO    ] time= 12/06/2026 20:27:15
[2026-06-12 20:27:15,147.147 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 20:27:15,153.153 INFO    ] Checking for existing commands in stream...
[2026-06-12 20:27:15,218.218 INFO    ] No existing commands found in stream
[2026-06-12 20:27:20,228.228 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 20:27:20,231.231 INFO    ] Waiting 1.18 seconds before fallback handling...
[2026-06-12 20:27:21,786.786 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 20:27:21,788.788 INFO    ] Checking for system updates...
[2026-06-12 20:27:21,808.808 INFO    ] 200
[2026-06-12 20:27:21,809.809 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:27:21,840.840 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 20:27:21,841.841 INFO    ] No update needed
[2026-06-12 20:27:21,842.842 INFO    ] Checking for camera pi updates...
[2026-06-12 20:27:21,862.862 INFO    ] 200
[2026-06-12 20:27:21,864.864 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:27:21,886.886 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 20:27:21,930.930 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 20:27:21,931.931 INFO    ] No camera update needed
[2026-06-12 20:27:21,933.933 INFO    ] Script finished. Safe exiting...
[2026-06-12 20:27:21,934.934 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 20:27:21,937.937 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 20:27:21,939.939 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 20:27:23,978.978 INFO    ] ================================================
[2026-06-12 20:27:23,993.993 INFO    ] Launching Daemon at Fri Jun 12 20:27:23 IST 2026
[2026-06-12 20:27:24,004.004 INFO    ] ================================================
[2026-06-12 20:27:24,356.356 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 20:27:24
[2026-06-12 20:27:24,695.695 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 20:27:24,839.839 INFO    ] Initializing speech engine...
[2026-06-12 20:27:24,847.847 INFO    ] 2026-06-12 20:27:24
[2026-06-12 20:27:25,059.059 INFO    ] 2026-06-12 20:27:25
[2026-06-12 20:27:25,088.088 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 20:27:25,273.273 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 20:27:25,282.282 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 20:27:25,413.413 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 20:27:25,480.480 INFO    ] time= 12/06/2026 20:27:25
[2026-06-12 20:27:25,504.504 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 20:27:25,510.510 INFO    ] Checking for existing commands in stream...
[2026-06-12 20:27:25,578.578 INFO    ] No existing commands found in stream
[2026-06-12 20:27:30,592.592 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 20:27:30,595.595 INFO    ] Waiting 3.14 seconds before fallback handling...
[2026-06-12 20:27:34,118.118 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 20:27:34,119.119 INFO    ] Checking for system updates...
[2026-06-12 20:27:34,141.141 INFO    ] 200
[2026-06-12 20:27:34,142.142 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:27:34,175.175 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 20:27:34,177.177 INFO    ] No update needed
[2026-06-12 20:27:34,178.178 INFO    ] Checking for camera pi updates...
[2026-06-12 20:27:34,198.198 INFO    ] 200
[2026-06-12 20:27:34,199.199 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:27:34,223.223 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 20:27:34,268.268 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 20:27:34,270.270 INFO    ] No camera update needed
[2026-06-12 20:27:34,272.272 INFO    ] Script finished. Safe exiting...
[2026-06-12 20:27:34,273.273 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 20:27:34,276.276 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 20:27:34,279.279 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 20:27:36,317.317 INFO    ] ================================================
[2026-06-12 20:27:36,332.332 INFO    ] Launching Daemon at Fri Jun 12 20:27:36 IST 2026
[2026-06-12 20:27:36,343.343 INFO    ] ================================================
[2026-06-12 20:27:36,694.694 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 20:27:36
[2026-06-12 20:27:37,008.008 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 20:27:37,151.151 INFO    ] Initializing speech engine...
[2026-06-12 20:27:37,156.156 INFO    ] 2026-06-12 20:27:37
[2026-06-12 20:27:37,359.359 INFO    ] 2026-06-12 20:27:37
[2026-06-12 20:27:37,388.388 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 20:27:37,575.575 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 20:27:37,585.585 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 20:27:37,728.728 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 20:27:37,779.779 INFO    ] time= 12/06/2026 20:27:37
[2026-06-12 20:27:37,803.803 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 20:27:37,809.809 INFO    ] Checking for existing commands in stream...
[2026-06-12 20:27:37,876.876 INFO    ] No existing commands found in stream
[2026-06-12 20:27:42,885.885 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 20:27:42,888.888 INFO    ] Waiting 3.55 seconds before fallback handling...
[2026-06-12 20:27:46,818.818 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 20:27:46,819.819 INFO    ] Checking for system updates...
[2026-06-12 20:27:46,841.841 INFO    ] 200
[2026-06-12 20:27:46,843.843 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:27:46,877.877 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 20:27:46,879.879 INFO    ] No update needed
[2026-06-12 20:27:46,880.880 INFO    ] Checking for camera pi updates...
[2026-06-12 20:27:46,902.902 INFO    ] 200
[2026-06-12 20:27:46,903.903 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:27:46,928.928 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 20:27:46,966.966 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 20:27:46,967.967 INFO    ] No camera update needed
[2026-06-12 20:27:46,969.969 INFO    ] Script finished. Safe exiting...
[2026-06-12 20:27:46,970.970 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 20:27:46,974.974 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 20:27:46,976.976 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 20:27:49,015.015 INFO    ] ================================================
[2026-06-12 20:27:49,030.030 INFO    ] Launching Daemon at Fri Jun 12 20:27:49 IST 2026
[2026-06-12 20:27:49,042.042 INFO    ] ================================================
[2026-06-12 20:27:49,404.404 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 20:27:49
[2026-06-12 20:27:49,722.722 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 20:27:49,861.861 INFO    ] Initializing speech engine...
[2026-06-12 20:27:49,871.871 INFO    ] 2026-06-12 20:27:49
[2026-06-12 20:27:50,077.077 INFO    ] 2026-06-12 20:27:50
[2026-06-12 20:27:50,105.105 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 20:27:50,290.290 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 20:27:50,293.293 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 20:27:50,430.430 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 20:27:50,489.489 INFO    ] time= 12/06/2026 20:27:50
[2026-06-12 20:27:50,521.521 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 20:27:50,523.523 INFO    ] Checking for existing commands in stream...
[2026-06-12 20:27:50,619.619 INFO    ] No existing commands found in stream
[2026-06-12 20:27:55,628.628 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 20:27:55,631.631 INFO    ] Waiting 0.72 seconds before fallback handling...
[2026-06-12 20:27:56,705.705 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 20:27:56,706.706 INFO    ] Checking for system updates...
[2026-06-12 20:27:56,727.727 INFO    ] 200
[2026-06-12 20:27:56,728.728 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:27:56,758.758 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 20:27:56,759.759 INFO    ] No update needed
[2026-06-12 20:27:56,761.761 INFO    ] Checking for camera pi updates...
[2026-06-12 20:27:56,781.781 INFO    ] 200
[2026-06-12 20:27:56,782.782 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:27:56,806.806 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 20:27:56,851.851 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 20:27:56,853.853 INFO    ] No camera update needed
[2026-06-12 20:27:56,854.854 INFO    ] Script finished. Safe exiting...
[2026-06-12 20:27:56,855.855 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 20:27:56,858.858 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 20:27:56,861.861 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 20:27:58,900.900 INFO    ] ================================================
[2026-06-12 20:27:58,916.916 INFO    ] Launching Daemon at Fri Jun 12 20:27:58 IST 2026
[2026-06-12 20:27:58,928.928 INFO    ] ================================================
[2026-06-12 20:27:59,259.259 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 20:27:59
[2026-06-12 20:27:59,570.570 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 20:27:59,711.711 INFO    ] Initializing speech engine...
[2026-06-12 20:27:59,716.716 INFO    ] 2026-06-12 20:27:59
[2026-06-12 20:27:59,918.918 INFO    ] 2026-06-12 20:27:59
[2026-06-12 20:27:59,946.946 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 20:28:00,129.129 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 20:28:00,138.138 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 20:28:00,266.266 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 20:28:00,330.330 INFO    ] time= 12/06/2026 20:28:00
[2026-06-12 20:28:00,356.356 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 20:28:00,363.363 INFO    ] Checking for existing commands in stream...
[2026-06-12 20:28:00,429.429 INFO    ] No existing commands found in stream
[2026-06-12 20:28:05,438.438 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 20:28:05,441.441 INFO    ] Waiting 0.02 seconds before fallback handling...
[2026-06-12 20:28:05,836.836 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 20:28:05,837.837 INFO    ] Checking for system updates...
[2026-06-12 20:28:05,857.857 INFO    ] 200
[2026-06-12 20:28:05,859.859 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:28:05,888.888 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 20:28:05,890.890 INFO    ] No update needed
[2026-06-12 20:28:05,891.891 INFO    ] Checking for camera pi updates...
[2026-06-12 20:28:05,910.910 INFO    ] 200
[2026-06-12 20:28:05,912.912 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:28:05,935.935 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 20:28:05,994.994 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 20:28:05,996.996 INFO    ] No camera update needed
[2026-06-12 20:28:05,997.997 INFO    ] Script finished. Safe exiting...
[2026-06-12 20:28:05,998.998 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 20:28:06,001.001 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 20:28:06,004.004 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 20:28:08,042.042 INFO    ] ================================================
[2026-06-12 20:28:08,059.059 INFO    ] Launching Daemon at Fri Jun 12 20:28:08 IST 2026
[2026-06-12 20:28:08,069.069 INFO    ] ================================================
[2026-06-12 20:28:08,449.449 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 20:28:08
[2026-06-12 20:28:08,784.784 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 20:28:08,927.927 INFO    ] Initializing speech engine...
[2026-06-12 20:28:08,938.938 INFO    ] 2026-06-12 20:28:08
[2026-06-12 20:28:09,145.145 INFO    ] 2026-06-12 20:28:09
[2026-06-12 20:28:09,173.173 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 20:28:09,357.357 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 20:28:09,367.367 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 20:28:09,516.516 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 20:28:09,564.564 INFO    ] time= 12/06/2026 20:28:09
[2026-06-12 20:28:09,586.586 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 20:28:09,593.593 INFO    ] Checking for existing commands in stream...
[2026-06-12 20:28:09,660.660 INFO    ] No existing commands found in stream
[2026-06-12 20:28:14,674.674 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 20:28:14,677.677 INFO    ] Waiting 0.06 seconds before fallback handling...
[2026-06-12 20:28:15,077.077 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 20:28:15,078.078 INFO    ] Checking for system updates...
[2026-06-12 20:28:15,100.100 INFO    ] 200
[2026-06-12 20:28:15,102.102 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:28:15,134.134 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 20:28:15,135.135 INFO    ] No update needed
[2026-06-12 20:28:15,137.137 INFO    ] Checking for camera pi updates...
[2026-06-12 20:28:15,157.157 INFO    ] 200
[2026-06-12 20:28:15,158.158 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:28:15,184.184 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 20:28:15,233.233 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 20:28:15,235.235 INFO    ] No camera update needed
[2026-06-12 20:28:15,236.236 INFO    ] Script finished. Safe exiting...
[2026-06-12 20:28:15,237.237 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 20:28:15,241.241 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 20:28:15,244.244 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 20:28:17,282.282 INFO    ] ================================================
[2026-06-12 20:28:17,297.297 INFO    ] Launching Daemon at Fri Jun 12 20:28:17 IST 2026
[2026-06-12 20:28:17,308.308 INFO    ] ================================================
[2026-06-12 20:28:17,652.652 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 20:28:17
[2026-06-12 20:28:17,966.966 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 20:28:18,095.095 INFO    ] Initializing speech engine...
[2026-06-12 20:28:18,099.099 INFO    ] 2026-06-12 20:28:18
[2026-06-12 20:28:18,303.303 INFO    ] 2026-06-12 20:28:18
[2026-06-12 20:28:18,335.335 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 20:28:18,493.493 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 20:28:18,556.556 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 20:28:18,700.700 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 20:28:18,763.763 INFO    ] time= 12/06/2026 20:28:18
[2026-06-12 20:28:18,797.797 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 20:28:18,808.808 INFO    ] Checking for existing commands in stream...
[2026-06-12 20:28:18,911.911 INFO    ] No existing commands found in stream
[2026-06-12 20:28:23,920.920 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 20:28:23,923.923 INFO    ] Waiting 3.78 seconds before fallback handling...
[2026-06-12 20:28:28,076.076 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 20:28:28,077.077 INFO    ] Checking for system updates...
[2026-06-12 20:28:28,099.099 INFO    ] 200
[2026-06-12 20:28:28,101.101 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:28:28,133.133 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 20:28:28,134.134 INFO    ] No update needed
[2026-06-12 20:28:28,135.135 INFO    ] Checking for camera pi updates...
[2026-06-12 20:28:28,157.157 INFO    ] 200
[2026-06-12 20:28:28,159.159 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:28:28,184.184 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 20:28:28,330.330 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 20:28:28,332.332 INFO    ] No camera update needed
[2026-06-12 20:28:28,333.333 INFO    ] Script finished. Safe exiting...
[2026-06-12 20:28:28,335.335 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 20:28:28,338.338 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 20:28:28,341.341 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 20:28:30,380.380 INFO    ] ================================================
[2026-06-12 20:28:30,396.396 INFO    ] Launching Daemon at Fri Jun 12 20:28:30 IST 2026
[2026-06-12 20:28:30,407.407 INFO    ] ================================================
[2026-06-12 20:28:30,770.770 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 20:28:30
[2026-06-12 20:28:31,081.081 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 20:28:31,213.213 INFO    ] Initializing speech engine...
[2026-06-12 20:28:31,218.218 INFO    ] 2026-06-12 20:28:31
[2026-06-12 20:28:31,412.412 INFO    ] 2026-06-12 20:28:31
[2026-06-12 20:28:31,463.463 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 20:28:31,632.632 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 20:28:31,677.677 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 20:28:31,844.844 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 20:28:31,880.880 INFO    ] time= 12/06/2026 20:28:31
[2026-06-12 20:28:31,934.934 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 20:28:31,977.977 INFO    ] Checking for existing commands in stream...
[2026-06-12 20:28:32,060.060 INFO    ] No existing commands found in stream
[2026-06-12 20:28:37,090.090 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 20:28:37,092.092 INFO    ] Waiting 3.67 seconds before fallback handling...
[2026-06-12 20:28:41,156.156 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 20:28:41,157.157 INFO    ] Checking for system updates...
[2026-06-12 20:28:41,179.179 INFO    ] 200
[2026-06-12 20:28:41,181.181 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:28:41,211.211 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 20:28:41,212.212 INFO    ] No update needed
[2026-06-12 20:28:41,213.213 INFO    ] Checking for camera pi updates...
[2026-06-12 20:28:41,235.235 INFO    ] 200
[2026-06-12 20:28:41,236.236 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:28:41,262.262 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 20:28:41,306.306 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 20:28:41,308.308 INFO    ] No camera update needed
[2026-06-12 20:28:41,309.309 INFO    ] Script finished. Safe exiting...
[2026-06-12 20:28:41,310.310 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 20:28:41,313.313 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 20:28:41,316.316 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 20:28:43,353.353 INFO    ] ================================================
[2026-06-12 20:28:43,370.370 INFO    ] Launching Daemon at Fri Jun 12 20:28:43 IST 2026
[2026-06-12 20:28:43,381.381 INFO    ] ================================================
[2026-06-12 20:28:43,715.715 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 20:28:43
[2026-06-12 20:28:44,027.027 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 20:28:44,157.157 INFO    ] Initializing speech engine...
[2026-06-12 20:28:44,162.162 INFO    ] 2026-06-12 20:28:44
[2026-06-12 20:28:44,378.378 INFO    ] 2026-06-12 20:28:44
[2026-06-12 20:28:44,408.408 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 20:28:44,594.594 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 20:28:44,603.603 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 20:28:44,755.755 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 20:28:44,806.806 INFO    ] time= 12/06/2026 20:28:44
[2026-06-12 20:28:44,827.827 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 20:28:44,833.833 INFO    ] Checking for existing commands in stream...
[2026-06-12 20:28:44,900.900 INFO    ] No existing commands found in stream
[2026-06-12 20:28:49,914.914 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 20:28:49,917.917 INFO    ] Waiting 3.05 seconds before fallback handling...
[2026-06-12 20:28:53,315.315 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 20:28:53,316.316 INFO    ] Checking for system updates...
[2026-06-12 20:28:53,337.337 INFO    ] 200
[2026-06-12 20:28:53,338.338 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:28:53,368.368 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 20:28:53,370.370 INFO    ] No update needed
[2026-06-12 20:28:53,371.371 INFO    ] Checking for camera pi updates...
[2026-06-12 20:28:53,391.391 INFO    ] 200
[2026-06-12 20:28:53,392.392 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:28:53,417.417 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 20:28:53,470.470 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 20:28:53,472.472 INFO    ] No camera update needed
[2026-06-12 20:28:53,473.473 INFO    ] Script finished. Safe exiting...
[2026-06-12 20:28:53,475.475 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 20:28:53,478.478 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 20:28:53,481.481 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 20:28:55,521.521 INFO    ] ================================================
[2026-06-12 20:28:55,536.536 INFO    ] Launching Daemon at Fri Jun 12 20:28:55 IST 2026
[2026-06-12 20:28:55,547.547 INFO    ] ================================================
[2026-06-12 20:28:55,899.899 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 20:28:55
[2026-06-12 20:28:56,213.213 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 20:28:56,344.344 INFO    ] Initializing speech engine...
[2026-06-12 20:28:56,351.351 INFO    ] 2026-06-12 20:28:56
[2026-06-12 20:28:56,563.563 INFO    ] 2026-06-12 20:28:56
[2026-06-12 20:28:56,591.591 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 20:28:56,775.775 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 20:28:56,783.783 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 20:28:56,905.905 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 20:28:56,966.966 INFO    ] time= 12/06/2026 20:28:56
[2026-06-12 20:28:57,000.000 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 20:28:57,005.005 INFO    ] Checking for existing commands in stream...
[2026-06-12 20:28:57,100.100 INFO    ] No existing commands found in stream
[2026-06-12 20:29:02,108.108 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 20:29:02,110.110 INFO    ] Waiting 1.94 seconds before fallback handling...
[2026-06-12 20:29:04,407.407 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 20:29:04,408.408 INFO    ] Checking for system updates...
[2026-06-12 20:29:04,429.429 INFO    ] 200
[2026-06-12 20:29:04,431.431 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:29:04,461.461 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 20:29:04,462.462 INFO    ] No update needed
[2026-06-12 20:29:04,463.463 INFO    ] Checking for camera pi updates...
[2026-06-12 20:29:04,483.483 INFO    ] 200
[2026-06-12 20:29:04,485.485 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:29:04,507.507 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 20:29:04,560.560 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 20:29:04,562.562 INFO    ] No camera update needed
[2026-06-12 20:29:04,563.563 INFO    ] Script finished. Safe exiting...
[2026-06-12 20:29:04,564.564 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 20:29:04,567.567 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 20:29:04,570.570 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 20:29:06,608.608 INFO    ] ================================================
[2026-06-12 20:29:06,623.623 INFO    ] Launching Daemon at Fri Jun 12 20:29:06 IST 2026
[2026-06-12 20:29:06,634.634 INFO    ] ================================================
[2026-06-12 20:29:06,988.988 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 20:29:06
[2026-06-12 20:29:07,322.322 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 20:29:07,474.474 INFO    ] Initializing speech engine...
[2026-06-12 20:29:07,480.480 INFO    ] 2026-06-12 20:29:07
[2026-06-12 20:29:07,689.689 INFO    ] 2026-06-12 20:29:07
[2026-06-12 20:29:07,718.718 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 20:29:07,908.908 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 20:29:07,918.918 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 20:29:08,050.050 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 20:29:08,119.119 INFO    ] time= 12/06/2026 20:29:08
[2026-06-12 20:29:08,143.143 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 20:29:08,149.149 INFO    ] Checking for existing commands in stream...
[2026-06-12 20:29:08,218.218 INFO    ] No existing commands found in stream
[2026-06-12 20:29:13,232.232 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 20:29:13,235.235 INFO    ] Waiting 1.21 seconds before fallback handling...
[2026-06-12 20:29:14,807.807 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 20:29:14,808.808 INFO    ] Checking for system updates...
[2026-06-12 20:29:14,829.829 INFO    ] 200
[2026-06-12 20:29:14,831.831 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:29:14,862.862 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 20:29:14,864.864 INFO    ] No update needed
[2026-06-12 20:29:14,865.865 INFO    ] Checking for camera pi updates...
[2026-06-12 20:29:14,885.885 INFO    ] 200
[2026-06-12 20:29:14,886.886 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:29:14,909.909 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 20:29:14,973.973 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 20:29:14,975.975 INFO    ] No camera update needed
[2026-06-12 20:29:14,976.976 INFO    ] Script finished. Safe exiting...
[2026-06-12 20:29:14,978.978 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 20:29:14,981.981 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 20:29:14,984.984 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 20:29:17,022.022 INFO    ] ================================================
[2026-06-12 20:29:17,037.037 INFO    ] Launching Daemon at Fri Jun 12 20:29:17 IST 2026
[2026-06-12 20:29:17,048.048 INFO    ] ================================================
[2026-06-12 20:29:17,415.415 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 20:29:17
[2026-06-12 20:29:17,750.750 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 20:29:17,892.892 INFO    ] Initializing speech engine...
[2026-06-12 20:29:17,906.906 INFO    ] 2026-06-12 20:29:17
[2026-06-12 20:29:18,119.119 INFO    ] 2026-06-12 20:29:18
[2026-06-12 20:29:18,147.147 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 20:29:18,334.334 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 20:29:18,343.343 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 20:29:18,475.475 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 20:29:18,540.540 INFO    ] time= 12/06/2026 20:29:18
[2026-06-12 20:29:18,568.568 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 20:29:18,570.570 INFO    ] Checking for existing commands in stream...
[2026-06-12 20:29:18,666.666 INFO    ] No existing commands found in stream
[2026-06-12 20:29:23,681.681 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 20:29:23,684.684 INFO    ] Waiting 3.61 seconds before fallback handling...
[2026-06-12 20:29:27,697.697 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 20:29:27,698.698 INFO    ] Checking for system updates...
[2026-06-12 20:29:27,719.719 INFO    ] 200
[2026-06-12 20:29:27,721.721 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:29:27,751.751 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 20:29:27,752.752 INFO    ] No update needed
[2026-06-12 20:29:27,754.754 INFO    ] Checking for camera pi updates...
[2026-06-12 20:29:27,774.774 INFO    ] 200
[2026-06-12 20:29:27,775.775 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:29:27,799.799 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 20:29:27,847.847 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 20:29:27,849.849 INFO    ] No camera update needed
[2026-06-12 20:29:27,850.850 INFO    ] Script finished. Safe exiting...
[2026-06-12 20:29:27,851.851 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 20:29:27,854.854 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 20:29:27,857.857 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 20:29:29,894.894 INFO    ] ================================================
[2026-06-12 20:29:29,909.909 INFO    ] Launching Daemon at Fri Jun 12 20:29:29 IST 2026
[2026-06-12 20:29:29,919.919 INFO    ] ================================================
[2026-06-12 20:29:30,262.262 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 20:29:30
[2026-06-12 20:29:30,597.597 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 20:29:30,747.747 INFO    ] Initializing speech engine...
[2026-06-12 20:29:30,752.752 INFO    ] 2026-06-12 20:29:30
[2026-06-12 20:29:30,960.960 INFO    ] 2026-06-12 20:29:30
[2026-06-12 20:29:30,989.989 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 20:29:31,172.172 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 20:29:31,181.181 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 20:29:31,325.325 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 20:29:31,376.376 INFO    ] time= 12/06/2026 20:29:31
[2026-06-12 20:29:31,400.400 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 20:29:31,407.407 INFO    ] Checking for existing commands in stream...
[2026-06-12 20:29:31,474.474 INFO    ] No existing commands found in stream
[2026-06-12 20:29:36,488.488 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 20:29:36,491.491 INFO    ] Waiting 2.79 seconds before fallback handling...
[2026-06-12 20:29:41,558.558 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 20:29:41,561.561 INFO    ] Checking for system updates...
[2026-06-12 20:29:41,597.597 INFO    ] 200
[2026-06-12 20:29:41,600.600 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:29:41,654.654 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 20:29:41,656.656 INFO    ] No update needed
[2026-06-12 20:29:41,659.659 INFO    ] Checking for camera pi updates...
[2026-06-12 20:29:41,692.692 INFO    ] 200
[2026-06-12 20:29:41,695.695 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:29:41,740.740 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 20:29:41,794.794 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 20:29:41,797.797 INFO    ] No camera update needed
[2026-06-12 20:29:41,799.799 INFO    ] Script finished. Safe exiting...
[2026-06-12 20:29:41,801.801 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 20:29:41,807.807 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 20:29:41,812.812 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 20:29:43,852.852 INFO    ] ================================================
[2026-06-12 20:29:43,867.867 INFO    ] Launching Daemon at Fri Jun 12 20:29:43 IST 2026
[2026-06-12 20:29:43,877.877 INFO    ] ================================================
[2026-06-12 20:29:44,241.241 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 20:29:44
[2026-06-12 20:29:44,553.553 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 20:29:44,689.689 INFO    ] Initializing speech engine...
[2026-06-12 20:29:44,700.700 INFO    ] 2026-06-12 20:29:44
[2026-06-12 20:29:44,904.904 INFO    ] 2026-06-12 20:29:44
[2026-06-12 20:29:44,936.936 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 20:29:45,132.132 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 20:29:45,136.136 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 20:29:45,282.282 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 20:29:45,352.352 INFO    ] time= 12/06/2026 20:29:45
[2026-06-12 20:29:45,380.380 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 20:29:45,382.382 INFO    ] Checking for existing commands in stream...
[2026-06-12 20:29:45,458.458 INFO    ] No existing commands found in stream
[2026-06-12 20:29:50,472.472 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 20:29:50,475.475 INFO    ] Waiting 2.21 seconds before fallback handling...
[2026-06-12 20:29:53,059.059 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 20:29:53,061.061 INFO    ] Checking for system updates...
[2026-06-12 20:29:53,081.081 INFO    ] 200
[2026-06-12 20:29:53,082.082 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:29:53,113.113 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 20:29:53,114.114 INFO    ] No update needed
[2026-06-12 20:29:53,115.115 INFO    ] Checking for camera pi updates...
[2026-06-12 20:29:53,134.134 INFO    ] 200
[2026-06-12 20:29:53,136.136 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:29:53,158.158 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 20:29:53,201.201 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 20:29:53,203.203 INFO    ] No camera update needed
[2026-06-12 20:29:53,204.204 INFO    ] Script finished. Safe exiting...
[2026-06-12 20:29:53,205.205 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 20:29:53,208.208 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 20:29:53,211.211 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 20:29:55,251.251 INFO    ] ================================================
[2026-06-12 20:29:55,266.266 INFO    ] Launching Daemon at Fri Jun 12 20:29:55 IST 2026
[2026-06-12 20:29:55,276.276 INFO    ] ================================================
[2026-06-12 20:29:55,638.638 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 20:29:55
[2026-06-12 20:29:55,953.953 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 20:29:56,090.090 INFO    ] Initializing speech engine...
[2026-06-12 20:29:56,099.099 INFO    ] 2026-06-12 20:29:56
[2026-06-12 20:29:56,304.304 INFO    ] 2026-06-12 20:29:56
[2026-06-12 20:29:56,332.332 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 20:29:56,515.515 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 20:29:56,524.524 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 20:29:56,668.668 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 20:29:56,720.720 INFO    ] time= 12/06/2026 20:29:56
[2026-06-12 20:29:56,743.743 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 20:29:56,748.748 INFO    ] Checking for existing commands in stream...
[2026-06-12 20:29:56,815.815 INFO    ] No existing commands found in stream
[2026-06-12 20:30:01,829.829 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 20:30:01,832.832 INFO    ] Waiting 2.77 seconds before fallback handling...
[2026-06-12 20:30:09,295.295 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 20:30:09,297.297 INFO    ] Checking for system updates...
[2026-06-12 20:30:09,338.338 INFO    ] 200
[2026-06-12 20:30:09,340.340 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:30:09,394.394 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 20:30:09,396.396 INFO    ] No update needed
[2026-06-12 20:30:09,399.399 INFO    ] Checking for camera pi updates...
[2026-06-12 20:30:09,432.432 INFO    ] 200
[2026-06-12 20:30:09,434.434 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:30:09,470.470 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 20:30:09,521.521 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 20:30:09,522.522 INFO    ] No camera update needed
[2026-06-12 20:30:09,523.523 INFO    ] Script finished. Safe exiting...
[2026-06-12 20:30:09,524.524 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 20:30:09,527.527 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 20:30:09,530.530 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 20:30:11,570.570 INFO    ] ================================================
[2026-06-12 20:30:11,585.585 INFO    ] Launching Daemon at Fri Jun 12 20:30:11 IST 2026
[2026-06-12 20:30:11,596.596 INFO    ] ================================================
[2026-06-12 20:30:11,950.950 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 20:30:11
[2026-06-12 20:30:12,265.265 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 20:30:12,400.400 INFO    ] Initializing speech engine...
[2026-06-12 20:30:12,409.409 INFO    ] 2026-06-12 20:30:12
[2026-06-12 20:30:12,633.633 INFO    ] 2026-06-12 20:30:12
[2026-06-12 20:30:12,664.664 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 20:30:12,795.795 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 20:30:12,863.863 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 20:30:13,004.004 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 20:30:13,071.071 INFO    ] time= 12/06/2026 20:30:13
[2026-06-12 20:30:13,103.103 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 20:30:13,114.114 INFO    ] Checking for existing commands in stream...
[2026-06-12 20:30:13,191.191 INFO    ] No existing commands found in stream
[2026-06-12 20:30:18,200.200 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 20:30:18,203.203 INFO    ] Waiting 3.38 seconds before fallback handling...
[2026-06-12 20:30:21,936.936 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 20:30:21,937.937 INFO    ] Checking for system updates...
[2026-06-12 20:30:21,959.959 INFO    ] 200
[2026-06-12 20:30:21,961.961 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:30:21,990.990 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 20:30:21,992.992 INFO    ] No update needed
[2026-06-12 20:30:21,993.993 INFO    ] Checking for camera pi updates...
[2026-06-12 20:30:22,012.012 INFO    ] 200
[2026-06-12 20:30:22,013.013 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:30:22,036.036 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 20:30:22,091.091 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 20:30:22,093.093 INFO    ] No camera update needed
[2026-06-12 20:30:22,094.094 INFO    ] Script finished. Safe exiting...
[2026-06-12 20:30:22,095.095 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 20:30:22,098.098 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 20:30:22,101.101 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 20:30:24,141.141 INFO    ] ================================================
[2026-06-12 20:30:24,156.156 INFO    ] Launching Daemon at Fri Jun 12 20:30:24 IST 2026
[2026-06-12 20:30:24,167.167 INFO    ] ================================================
[2026-06-12 20:30:24,537.537 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 20:30:24
[2026-06-12 20:30:24,851.851 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 20:30:24,981.981 INFO    ] Initializing speech engine...
[2026-06-12 20:30:24,986.986 INFO    ] 2026-06-12 20:30:24
[2026-06-12 20:30:25,205.205 INFO    ] 2026-06-12 20:30:25
[2026-06-12 20:30:25,234.234 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 20:30:25,359.359 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 20:30:25,422.422 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 20:30:25,559.559 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 20:30:25,616.616 INFO    ] time= 12/06/2026 20:30:25
[2026-06-12 20:30:25,652.652 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 20:30:25,657.657 INFO    ] Checking for existing commands in stream...
[2026-06-12 20:30:25,729.729 INFO    ] No existing commands found in stream
[2026-06-12 20:30:30,738.738 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 20:30:30,741.741 INFO    ] Waiting 1.62 seconds before fallback handling...
[2026-06-12 20:30:32,717.717 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 20:30:32,719.719 INFO    ] Checking for system updates...
[2026-06-12 20:30:32,745.745 INFO    ] 200
[2026-06-12 20:30:32,747.747 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:30:32,792.792 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 20:30:32,794.794 INFO    ] No update needed
[2026-06-12 20:30:32,795.795 INFO    ] Checking for camera pi updates...
[2026-06-12 20:30:32,814.814 INFO    ] 200
[2026-06-12 20:30:32,816.816 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:30:32,838.838 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 20:30:32,898.898 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 20:30:32,900.900 INFO    ] No camera update needed
[2026-06-12 20:30:32,901.901 INFO    ] Script finished. Safe exiting...
[2026-06-12 20:30:32,902.902 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 20:30:32,905.905 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 20:30:32,908.908 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 20:30:34,948.948 INFO    ] ================================================
[2026-06-12 20:30:34,963.963 INFO    ] Launching Daemon at Fri Jun 12 20:30:34 IST 2026
[2026-06-12 20:30:34,974.974 INFO    ] ================================================
[2026-06-12 20:30:35,296.296 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 20:30:35
[2026-06-12 20:30:35,611.611 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 20:30:35,741.741 INFO    ] Initializing speech engine...
[2026-06-12 20:30:35,749.749 INFO    ] 2026-06-12 20:30:35
[2026-06-12 20:30:35,964.964 INFO    ] 2026-06-12 20:30:35
[2026-06-12 20:30:35,994.994 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 20:30:36,177.177 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 20:30:36,187.187 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 20:30:36,316.316 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 20:30:36,380.380 INFO    ] time= 12/06/2026 20:30:36
[2026-06-12 20:30:36,407.407 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 20:30:36,414.414 INFO    ] Checking for existing commands in stream...
[2026-06-12 20:30:36,503.503 INFO    ] No existing commands found in stream
[2026-06-12 20:30:41,517.517 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 20:30:41,518.518 INFO    ] Waiting 1.12 seconds before fallback handling...
[2026-06-12 20:30:43,028.028 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 20:30:43,030.030 INFO    ] Checking for system updates...
[2026-06-12 20:30:43,053.053 INFO    ] 200
[2026-06-12 20:30:43,054.054 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:30:43,084.084 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 20:30:43,086.086 INFO    ] No update needed
[2026-06-12 20:30:43,087.087 INFO    ] Checking for camera pi updates...
[2026-06-12 20:30:43,108.108 INFO    ] 200
[2026-06-12 20:30:43,109.109 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:30:43,133.133 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 20:30:43,191.191 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 20:30:43,193.193 INFO    ] No camera update needed
[2026-06-12 20:30:43,199.199 INFO    ] Script finished. Safe exiting...
[2026-06-12 20:30:43,201.201 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 20:30:43,205.205 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 20:30:43,208.208 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 20:30:45,248.248 INFO    ] ================================================
[2026-06-12 20:30:45,263.263 INFO    ] Launching Daemon at Fri Jun 12 20:30:45 IST 2026
[2026-06-12 20:30:45,274.274 INFO    ] ================================================
[2026-06-12 20:30:45,602.602 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 20:30:45
[2026-06-12 20:30:45,913.913 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 20:30:46,043.043 INFO    ] Initializing speech engine...
[2026-06-12 20:30:46,047.047 INFO    ] 2026-06-12 20:30:46
[2026-06-12 20:30:46,248.248 INFO    ] 2026-06-12 20:30:46
[2026-06-12 20:30:46,272.272 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 20:30:46,428.428 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 20:30:46,480.480 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 20:30:46,616.616 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 20:30:46,686.686 INFO    ] time= 12/06/2026 20:30:46
[2026-06-12 20:30:46,711.711 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 20:30:46,712.712 INFO    ] Checking for existing commands in stream...
[2026-06-12 20:30:46,783.783 INFO    ] No existing commands found in stream
[2026-06-12 20:30:51,797.797 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 20:30:51,800.800 INFO    ] Waiting 2.41 seconds before fallback handling...
[2026-06-12 20:30:54,601.601 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 20:30:54,603.603 INFO    ] Checking for system updates...
[2026-06-12 20:30:54,624.624 INFO    ] 200
[2026-06-12 20:30:54,625.625 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:30:54,655.655 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 20:30:54,656.656 INFO    ] No update needed
[2026-06-12 20:30:54,658.658 INFO    ] Checking for camera pi updates...
[2026-06-12 20:30:54,678.678 INFO    ] 200
[2026-06-12 20:30:54,679.679 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:30:54,703.703 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 20:30:54,745.745 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 20:30:54,747.747 INFO    ] No camera update needed
[2026-06-12 20:30:54,748.748 INFO    ] Script finished. Safe exiting...
[2026-06-12 20:30:54,749.749 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 20:30:54,753.753 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 20:30:54,756.756 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 20:30:56,796.796 INFO    ] ================================================
[2026-06-12 20:30:56,811.811 INFO    ] Launching Daemon at Fri Jun 12 20:30:56 IST 2026
[2026-06-12 20:30:56,822.822 INFO    ] ================================================
[2026-06-12 20:30:57,179.179 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 20:30:57
[2026-06-12 20:30:57,518.518 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 20:30:57,672.672 INFO    ] Initializing speech engine...
[2026-06-12 20:30:57,675.675 INFO    ] 2026-06-12 20:30:57
[2026-06-12 20:30:57,884.884 INFO    ] 2026-06-12 20:30:57
[2026-06-12 20:30:57,913.913 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 20:30:58,098.098 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 20:30:58,108.108 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 20:30:58,254.254 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 20:30:58,314.314 INFO    ] time= 12/06/2026 20:30:58
[2026-06-12 20:30:58,330.330 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 20:30:58,336.336 INFO    ] Checking for existing commands in stream...
[2026-06-12 20:30:58,403.403 INFO    ] No existing commands found in stream
[2026-06-12 20:31:03,426.426 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 20:31:03,428.428 INFO    ] Waiting 0.47 seconds before fallback handling...
[2026-06-12 20:31:04,246.246 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 20:31:04,247.247 INFO    ] Checking for system updates...
[2026-06-12 20:31:04,268.268 INFO    ] 200
[2026-06-12 20:31:04,270.270 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:31:04,301.301 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 20:31:04,302.302 INFO    ] No update needed
[2026-06-12 20:31:04,304.304 INFO    ] Checking for camera pi updates...
[2026-06-12 20:31:04,323.323 INFO    ] 200
[2026-06-12 20:31:04,325.325 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:31:04,348.348 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 20:31:04,394.394 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 20:31:04,396.396 INFO    ] No camera update needed
[2026-06-12 20:31:04,397.397 INFO    ] Script finished. Safe exiting...
[2026-06-12 20:31:04,399.399 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 20:31:04,402.402 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 20:31:04,405.405 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 20:31:06,445.445 INFO    ] ================================================
[2026-06-12 20:31:06,460.460 INFO    ] Launching Daemon at Fri Jun 12 20:31:06 IST 2026
[2026-06-12 20:31:06,471.471 INFO    ] ================================================
[2026-06-12 20:31:06,800.800 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 20:31:06
[2026-06-12 20:31:07,117.117 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 20:31:07,262.262 INFO    ] Initializing speech engine...
[2026-06-12 20:31:07,267.267 INFO    ] 2026-06-12 20:31:07
[2026-06-12 20:31:07,470.470 INFO    ] 2026-06-12 20:31:07
[2026-06-12 20:31:07,499.499 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 20:31:07,683.683 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 20:31:07,691.691 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 20:31:07,837.837 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 20:31:07,889.889 INFO    ] time= 12/06/2026 20:31:07
[2026-06-12 20:31:07,913.913 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 20:31:07,918.918 INFO    ] Checking for existing commands in stream...
[2026-06-12 20:31:07,986.986 INFO    ] No existing commands found in stream
[2026-06-12 20:31:12,995.995 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 20:31:12,997.997 INFO    ] Waiting 0.61 seconds before fallback handling...
[2026-06-12 20:31:14,013.013 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 20:31:14,014.014 INFO    ] Checking for system updates...
[2026-06-12 20:31:14,035.035 INFO    ] 200
[2026-06-12 20:31:14,037.037 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:31:14,071.071 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 20:31:14,073.073 INFO    ] No update needed
[2026-06-12 20:31:14,074.074 INFO    ] Checking for camera pi updates...
[2026-06-12 20:31:14,093.093 INFO    ] 200
[2026-06-12 20:31:14,094.094 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:31:14,117.117 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 20:31:14,165.165 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 20:31:14,167.167 INFO    ] No camera update needed
[2026-06-12 20:31:14,168.168 INFO    ] Script finished. Safe exiting...
[2026-06-12 20:31:14,169.169 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 20:31:14,172.172 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 20:31:14,175.175 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 20:31:16,212.212 INFO    ] ================================================
[2026-06-12 20:31:16,228.228 INFO    ] Launching Daemon at Fri Jun 12 20:31:16 IST 2026
[2026-06-12 20:31:16,239.239 INFO    ] ================================================
[2026-06-12 20:31:16,597.597 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 20:31:16
[2026-06-12 20:31:16,915.915 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 20:31:17,058.058 INFO    ] Initializing speech engine...
[2026-06-12 20:31:17,068.068 INFO    ] 2026-06-12 20:31:17
[2026-06-12 20:31:17,286.286 INFO    ] 2026-06-12 20:31:17
[2026-06-12 20:31:17,317.317 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 20:31:17,516.516 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 20:31:17,521.521 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 20:31:17,661.661 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 20:31:17,733.733 INFO    ] time= 12/06/2026 20:31:17
[2026-06-12 20:31:17,763.763 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 20:31:17,770.770 INFO    ] Checking for existing commands in stream...
[2026-06-12 20:31:17,846.846 INFO    ] No existing commands found in stream
[2026-06-12 20:31:22,857.857 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 20:31:22,860.860 INFO    ] Waiting 3.70 seconds before fallback handling...
[2026-06-12 20:31:26,940.940 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 20:31:26,941.941 INFO    ] Checking for system updates...
[2026-06-12 20:31:26,962.962 INFO    ] 200
[2026-06-12 20:31:26,964.964 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:31:26,996.996 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 20:31:26,998.998 INFO    ] No update needed
[2026-06-12 20:31:26,999.999 INFO    ] Checking for camera pi updates...
[2026-06-12 20:31:27,018.018 INFO    ] 200
[2026-06-12 20:31:27,020.020 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:31:27,043.043 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 20:31:27,083.083 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 20:31:27,084.084 INFO    ] No camera update needed
[2026-06-12 20:31:27,086.086 INFO    ] Script finished. Safe exiting...
[2026-06-12 20:31:27,087.087 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 20:31:27,090.090 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 20:31:27,093.093 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 20:31:29,132.132 INFO    ] ================================================
[2026-06-12 20:31:29,147.147 INFO    ] Launching Daemon at Fri Jun 12 20:31:29 IST 2026
[2026-06-12 20:31:29,158.158 INFO    ] ================================================
[2026-06-12 20:31:29,497.497 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 20:31:29
[2026-06-12 20:31:29,813.813 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 20:31:29,948.948 INFO    ] Initializing speech engine...
[2026-06-12 20:31:29,952.952 INFO    ] 2026-06-12 20:31:29
[2026-06-12 20:31:30,144.144 INFO    ] 2026-06-12 20:31:30
[2026-06-12 20:31:30,189.189 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 20:31:30,350.350 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 20:31:30,408.408 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 20:31:30,562.562 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 20:31:30,619.619 INFO    ] time= 12/06/2026 20:31:30
[2026-06-12 20:31:30,668.668 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 20:31:30,675.675 INFO    ] Checking for existing commands in stream...
[2026-06-12 20:31:30,773.773 INFO    ] No existing commands found in stream
[2026-06-12 20:31:35,787.787 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 20:31:35,790.790 INFO    ] Waiting 2.58 seconds before fallback handling...
[2026-06-12 20:31:38,724.724 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 20:31:38,726.726 INFO    ] Checking for system updates...
[2026-06-12 20:31:38,746.746 INFO    ] 200
[2026-06-12 20:31:38,748.748 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:31:38,778.778 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 20:31:38,779.779 INFO    ] No update needed
[2026-06-12 20:31:38,780.780 INFO    ] Checking for camera pi updates...
[2026-06-12 20:31:38,802.802 INFO    ] 200
[2026-06-12 20:31:38,803.803 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:31:38,826.826 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 20:31:38,872.872 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 20:31:38,873.873 INFO    ] No camera update needed
[2026-06-12 20:31:38,875.875 INFO    ] Script finished. Safe exiting...
[2026-06-12 20:31:38,876.876 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 20:31:38,879.879 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 20:31:38,881.881 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 20:31:40,920.920 INFO    ] ================================================
[2026-06-12 20:31:40,935.935 INFO    ] Launching Daemon at Fri Jun 12 20:31:40 IST 2026
[2026-06-12 20:31:40,946.946 INFO    ] ================================================
[2026-06-12 20:31:41,320.320 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 20:31:41
[2026-06-12 20:31:41,637.637 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 20:31:41,769.769 INFO    ] Initializing speech engine...
[2026-06-12 20:31:41,775.775 INFO    ] 2026-06-12 20:31:41
[2026-06-12 20:31:42,004.004 INFO    ] 2026-06-12 20:31:41
[2026-06-12 20:31:42,036.036 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 20:31:42,234.234 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 20:31:42,237.237 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 20:31:42,384.384 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 20:31:42,453.453 INFO    ] time= 12/06/2026 20:31:42
[2026-06-12 20:31:42,483.483 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 20:31:42,489.489 INFO    ] Checking for existing commands in stream...
[2026-06-12 20:31:42,561.561 INFO    ] No existing commands found in stream
[2026-06-12 20:31:47,571.571 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 20:31:47,574.574 INFO    ] Waiting 0.86 seconds before fallback handling...
[2026-06-12 20:31:48,817.817 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 20:31:48,819.819 INFO    ] Checking for system updates...
[2026-06-12 20:31:48,840.840 INFO    ] 200
[2026-06-12 20:31:48,841.841 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:31:48,872.872 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 20:31:48,873.873 INFO    ] No update needed
[2026-06-12 20:31:48,875.875 INFO    ] Checking for camera pi updates...
[2026-06-12 20:31:48,895.895 INFO    ] 200
[2026-06-12 20:31:48,897.897 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:31:48,922.922 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 20:31:48,975.975 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 20:31:48,977.977 INFO    ] No camera update needed
[2026-06-12 20:31:48,978.978 INFO    ] Script finished. Safe exiting...
[2026-06-12 20:31:48,980.980 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 20:31:48,983.983 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 20:31:48,986.986 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 20:31:51,025.025 INFO    ] ================================================
[2026-06-12 20:31:51,041.041 INFO    ] Launching Daemon at Fri Jun 12 20:31:51 IST 2026
[2026-06-12 20:31:51,052.052 INFO    ] ================================================
[2026-06-12 20:31:51,392.392 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 20:31:51
[2026-06-12 20:31:51,709.709 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 20:31:51,844.844 INFO    ] Initializing speech engine...
[2026-06-12 20:31:51,847.847 INFO    ] 2026-06-12 20:31:51
[2026-06-12 20:31:52,077.077 INFO    ] 2026-06-12 20:31:52
[2026-06-12 20:31:52,107.107 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 20:31:52,306.306 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 20:31:52,310.310 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 20:31:52,458.458 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 20:31:52,527.527 INFO    ] time= 12/06/2026 20:31:52
[2026-06-12 20:31:52,557.557 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 20:31:52,559.559 INFO    ] Checking for existing commands in stream...
[2026-06-12 20:31:52,661.661 INFO    ] No existing commands found in stream
[2026-06-12 20:31:57,675.675 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 20:31:57,678.678 INFO    ] Waiting 1.38 seconds before fallback handling...
[2026-06-12 20:31:59,445.445 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 20:31:59,447.447 INFO    ] Checking for system updates...
[2026-06-12 20:31:59,467.467 INFO    ] 200
[2026-06-12 20:31:59,469.469 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:31:59,503.503 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 20:31:59,505.505 INFO    ] No update needed
[2026-06-12 20:31:59,506.506 INFO    ] Checking for camera pi updates...
[2026-06-12 20:31:59,526.526 INFO    ] 200
[2026-06-12 20:31:59,528.528 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:31:59,551.551 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 20:31:59,599.599 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 20:31:59,601.601 INFO    ] No camera update needed
[2026-06-12 20:31:59,602.602 INFO    ] Script finished. Safe exiting...
[2026-06-12 20:31:59,603.603 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 20:31:59,607.607 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 20:31:59,610.610 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 20:32:01,648.648 INFO    ] ================================================
[2026-06-12 20:32:01,664.664 INFO    ] Launching Daemon at Fri Jun 12 20:32:01 IST 2026
[2026-06-12 20:32:01,675.675 INFO    ] ================================================
[2026-06-12 20:32:02,142.142 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 20:32:02
[2026-06-12 20:32:02,512.512 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 20:32:02,684.684 INFO    ] Initializing speech engine...
[2026-06-12 20:32:02,689.689 INFO    ] 2026-06-12 20:32:02
[2026-06-12 20:32:02,926.926 INFO    ] 2026-06-12 20:32:02
[2026-06-12 20:32:02,956.956 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 20:32:03,085.085 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 20:32:03,133.133 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 20:32:03,286.286 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 20:32:03,345.345 INFO    ] time= 12/06/2026 20:32:03
[2026-06-12 20:32:03,377.377 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 20:32:03,384.384 INFO    ] Checking for existing commands in stream...
[2026-06-12 20:32:03,450.450 INFO    ] No existing commands found in stream
[2026-06-12 20:32:08,464.464 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 20:32:08,467.467 INFO    ] Waiting 1.82 seconds before fallback handling...
[2026-06-12 20:32:10,645.645 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 20:32:10,646.646 INFO    ] Checking for system updates...
[2026-06-12 20:32:10,667.667 INFO    ] 200
[2026-06-12 20:32:10,668.668 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:32:10,698.698 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 20:32:10,699.699 INFO    ] No update needed
[2026-06-12 20:32:10,700.700 INFO    ] Checking for camera pi updates...
[2026-06-12 20:32:10,720.720 INFO    ] 200
[2026-06-12 20:32:10,722.722 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:32:10,745.745 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 20:32:10,793.793 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 20:32:10,794.794 INFO    ] No camera update needed
[2026-06-12 20:32:10,796.796 INFO    ] Script finished. Safe exiting...
[2026-06-12 20:32:10,797.797 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 20:32:10,800.800 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 20:32:10,803.803 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 20:32:12,841.841 INFO    ] ================================================
[2026-06-12 20:32:12,860.860 INFO    ] Launching Daemon at Fri Jun 12 20:32:12 IST 2026
[2026-06-12 20:32:12,870.870 INFO    ] ================================================
[2026-06-12 20:32:13,249.249 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 20:32:13
[2026-06-12 20:32:13,589.589 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 20:32:13,737.737 INFO    ] Initializing speech engine...
[2026-06-12 20:32:13,747.747 INFO    ] 2026-06-12 20:32:13
[2026-06-12 20:32:13,959.959 INFO    ] 2026-06-12 20:32:13
[2026-06-12 20:32:13,988.988 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 20:32:14,124.124 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 20:32:14,178.178 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 20:32:14,318.318 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 20:32:14,386.386 INFO    ] time= 12/06/2026 20:32:14
[2026-06-12 20:32:14,411.411 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 20:32:14,417.417 INFO    ] Checking for existing commands in stream...
[2026-06-12 20:32:14,485.485 INFO    ] No existing commands found in stream
[2026-06-12 20:32:19,510.510 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 20:32:19,513.513 INFO    ] Waiting 0.86 seconds before fallback handling...
[2026-06-12 20:32:20,766.766 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 20:32:20,767.767 INFO    ] Checking for system updates...
[2026-06-12 20:32:20,789.789 INFO    ] 200
[2026-06-12 20:32:20,790.790 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:32:20,822.822 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 20:32:20,824.824 INFO    ] No update needed
[2026-06-12 20:32:20,825.825 INFO    ] Checking for camera pi updates...
[2026-06-12 20:32:20,844.844 INFO    ] 200
[2026-06-12 20:32:20,845.845 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:32:20,868.868 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 20:32:20,931.931 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 20:32:20,933.933 INFO    ] No camera update needed
[2026-06-12 20:32:20,934.934 INFO    ] Script finished. Safe exiting...
[2026-06-12 20:32:20,935.935 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 20:32:20,938.938 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 20:32:20,941.941 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 20:32:22,980.980 INFO    ] ================================================
[2026-06-12 20:32:22,994.994 INFO    ] Launching Daemon at Fri Jun 12 20:32:22 IST 2026
[2026-06-12 20:32:23,005.005 INFO    ] ================================================
[2026-06-12 20:32:23,342.342 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 20:32:23
[2026-06-12 20:32:23,656.656 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 20:32:23,792.792 INFO    ] Initializing speech engine...
[2026-06-12 20:32:23,801.801 INFO    ] 2026-06-12 20:32:23
[2026-06-12 20:32:24,019.019 INFO    ] 2026-06-12 20:32:23
[2026-06-12 20:32:24,047.047 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 20:32:24,187.187 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 20:32:24,235.235 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 20:32:24,371.371 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 20:32:24,435.435 INFO    ] time= 12/06/2026 20:32:24
[2026-06-12 20:32:24,462.462 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 20:32:24,469.469 INFO    ] Checking for existing commands in stream...
[2026-06-12 20:32:24,536.536 INFO    ] No existing commands found in stream
[2026-06-12 20:32:29,545.545 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 20:32:29,548.548 INFO    ] Waiting 2.10 seconds before fallback handling...
[2026-06-12 20:32:32,050.050 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 20:32:32,051.051 INFO    ] Checking for system updates...
[2026-06-12 20:32:32,074.074 INFO    ] 200
[2026-06-12 20:32:32,076.076 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:32:32,112.112 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 20:32:32,114.114 INFO    ] No update needed
[2026-06-12 20:32:32,116.116 INFO    ] Checking for camera pi updates...
[2026-06-12 20:32:32,141.141 INFO    ] 200
[2026-06-12 20:32:32,143.143 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:32:32,174.174 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 20:32:32,216.216 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 20:32:32,218.218 INFO    ] No camera update needed
[2026-06-12 20:32:32,220.220 INFO    ] Script finished. Safe exiting...
[2026-06-12 20:32:32,222.222 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 20:32:32,225.225 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 20:32:32,229.229 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 20:32:34,252.252 INFO    ] ================================================
[2026-06-12 20:32:34,262.262 INFO    ] Launching Daemon at Fri Jun 12 20:32:34 IST 2026
[2026-06-12 20:32:34,269.269 INFO    ] ================================================
[2026-06-12 20:32:34,583.583 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 20:32:34
[2026-06-12 20:32:34,899.899 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 20:32:35,042.042 INFO    ] Initializing speech engine...
[2026-06-12 20:32:35,046.046 INFO    ] 2026-06-12 20:32:35
[2026-06-12 20:32:35,250.250 INFO    ] 2026-06-12 20:32:35
[2026-06-12 20:32:35,278.278 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 20:32:35,462.462 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 20:32:35,470.470 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 20:32:35,597.597 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 20:32:35,658.658 INFO    ] time= 12/06/2026 20:32:35
[2026-06-12 20:32:35,690.690 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 20:32:35,697.697 INFO    ] Checking for existing commands in stream...
[2026-06-12 20:32:35,763.763 INFO    ] No existing commands found in stream
[2026-06-12 20:32:40,777.777 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 20:32:40,792.792 INFO    ] Waiting 3.73 seconds before fallback handling...
[2026-06-12 20:32:44,926.926 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 20:32:44,928.928 INFO    ] Checking for system updates...
[2026-06-12 20:32:44,948.948 INFO    ] 200
[2026-06-12 20:32:44,950.950 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:32:44,981.981 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 20:32:44,982.982 INFO    ] No update needed
[2026-06-12 20:32:44,983.983 INFO    ] Checking for camera pi updates...
[2026-06-12 20:32:45,006.006 INFO    ] 200
[2026-06-12 20:32:45,008.008 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:32:45,032.032 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 20:32:45,160.160 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 20:32:45,162.162 INFO    ] No camera update needed
[2026-06-12 20:32:45,163.163 INFO    ] Script finished. Safe exiting...
[2026-06-12 20:32:45,164.164 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 20:32:45,168.168 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 20:32:45,171.171 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 20:32:47,211.211 INFO    ] ================================================
[2026-06-12 20:32:47,238.238 INFO    ] Launching Daemon at Fri Jun 12 20:32:47 IST 2026
[2026-06-12 20:32:47,249.249 INFO    ] ================================================
[2026-06-12 20:32:47,599.599 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 20:32:47
[2026-06-12 20:32:47,916.916 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 20:32:48,049.049 INFO    ] Initializing speech engine...
[2026-06-12 20:32:48,054.054 INFO    ] 2026-06-12 20:32:48
[2026-06-12 20:32:48,288.288 INFO    ] 2026-06-12 20:32:48
[2026-06-12 20:32:48,318.318 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 20:32:48,516.516 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 20:32:48,520.520 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 20:32:48,686.686 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 20:32:48,743.743 INFO    ] time= 12/06/2026 20:32:48
[2026-06-12 20:32:48,768.768 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 20:32:48,775.775 INFO    ] Checking for existing commands in stream...
[2026-06-12 20:32:48,847.847 INFO    ] No existing commands found in stream
[2026-06-12 20:32:53,866.866 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 20:32:53,869.869 INFO    ] Waiting 2.87 seconds before fallback handling...
[2026-06-12 20:32:57,105.105 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 20:32:57,107.107 INFO    ] Checking for system updates...
[2026-06-12 20:32:57,127.127 INFO    ] 200
[2026-06-12 20:32:57,129.129 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:32:57,159.159 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 20:32:57,161.161 INFO    ] No update needed
[2026-06-12 20:32:57,162.162 INFO    ] Checking for camera pi updates...
[2026-06-12 20:32:57,182.182 INFO    ] 200
[2026-06-12 20:32:57,183.183 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:32:57,208.208 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 20:32:57,249.249 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 20:32:57,251.251 INFO    ] No camera update needed
[2026-06-12 20:32:57,252.252 INFO    ] Script finished. Safe exiting...
[2026-06-12 20:32:57,253.253 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 20:32:57,257.257 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 20:32:57,260.260 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 20:32:59,299.299 INFO    ] ================================================
[2026-06-12 20:32:59,315.315 INFO    ] Launching Daemon at Fri Jun 12 20:32:59 IST 2026
[2026-06-12 20:32:59,326.326 INFO    ] ================================================
[2026-06-12 20:32:59,690.690 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 20:32:59
[2026-06-12 20:33:00,028.028 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 20:33:00,180.180 INFO    ] Initializing speech engine...
[2026-06-12 20:33:00,186.186 INFO    ] 2026-06-12 20:33:00
[2026-06-12 20:33:00,394.394 INFO    ] 2026-06-12 20:33:00
[2026-06-12 20:33:00,423.423 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 20:33:00,609.609 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 20:33:00,619.619 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 20:33:00,758.758 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 20:33:00,817.817 INFO    ] time= 12/06/2026 20:33:00
[2026-06-12 20:33:00,840.840 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 20:33:00,846.846 INFO    ] Checking for existing commands in stream...
[2026-06-12 20:33:00,913.913 INFO    ] No existing commands found in stream
[2026-06-12 20:33:05,923.923 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 20:33:05,926.926 INFO    ] Waiting 3.89 seconds before fallback handling...
[2026-06-12 20:33:10,186.186 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 20:33:10,188.188 INFO    ] Checking for system updates...
[2026-06-12 20:33:10,211.211 INFO    ] 200
[2026-06-12 20:33:10,212.212 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:33:10,245.245 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 20:33:10,246.246 INFO    ] No update needed
[2026-06-12 20:33:10,248.248 INFO    ] Checking for camera pi updates...
[2026-06-12 20:33:10,268.268 INFO    ] 200
[2026-06-12 20:33:10,269.269 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:33:10,295.295 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 20:33:10,369.369 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 20:33:10,370.370 INFO    ] No camera update needed
[2026-06-12 20:33:10,372.372 INFO    ] Script finished. Safe exiting...
[2026-06-12 20:33:10,373.373 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 20:33:10,377.377 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 20:33:10,380.380 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 20:33:12,418.418 INFO    ] ================================================
[2026-06-12 20:33:12,434.434 INFO    ] Launching Daemon at Fri Jun 12 20:33:12 IST 2026
[2026-06-12 20:33:12,445.445 INFO    ] ================================================
[2026-06-12 20:33:12,800.800 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 20:33:12
[2026-06-12 20:33:13,117.117 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 20:33:13,255.255 INFO    ] Initializing speech engine...
[2026-06-12 20:33:13,265.265 INFO    ] 2026-06-12 20:33:13
[2026-06-12 20:33:13,468.468 INFO    ] 2026-06-12 20:33:13
[2026-06-12 20:33:13,497.497 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 20:33:13,681.681 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 20:33:13,690.690 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 20:33:13,813.813 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 20:33:13,868.868 INFO    ] time= 12/06/2026 20:33:13
[2026-06-12 20:33:13,903.903 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 20:33:13,913.913 INFO    ] Checking for existing commands in stream...
[2026-06-12 20:33:13,984.984 INFO    ] No existing commands found in stream
[2026-06-12 20:33:19,003.003 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 20:33:19,006.006 INFO    ] Waiting 3.30 seconds before fallback handling...
[2026-06-12 20:33:22,694.694 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 20:33:22,696.696 INFO    ] Checking for system updates...
[2026-06-12 20:33:22,719.719 INFO    ] 200
[2026-06-12 20:33:22,720.720 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:33:22,752.752 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 20:33:22,754.754 INFO    ] No update needed
[2026-06-12 20:33:22,755.755 INFO    ] Checking for camera pi updates...
[2026-06-12 20:33:22,776.776 INFO    ] 200
[2026-06-12 20:33:22,777.777 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:33:22,800.800 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 20:33:22,840.840 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 20:33:22,842.842 INFO    ] No camera update needed
[2026-06-12 20:33:22,843.843 INFO    ] Script finished. Safe exiting...
[2026-06-12 20:33:22,844.844 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 20:33:22,847.847 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 20:33:22,850.850 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 20:33:24,891.891 INFO    ] ================================================
[2026-06-12 20:33:24,906.906 INFO    ] Launching Daemon at Fri Jun 12 20:33:24 IST 2026
[2026-06-12 20:33:24,917.917 INFO    ] ================================================
[2026-06-12 20:33:25,285.285 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 20:33:25
[2026-06-12 20:33:25,603.603 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 20:33:25,746.746 INFO    ] Initializing speech engine...
[2026-06-12 20:33:25,751.751 INFO    ] 2026-06-12 20:33:25
[2026-06-12 20:33:25,954.954 INFO    ] 2026-06-12 20:33:25
[2026-06-12 20:33:25,982.982 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 20:33:26,164.164 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 20:33:26,173.173 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 20:33:26,303.303 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 20:33:26,369.369 INFO    ] time= 12/06/2026 20:33:26
[2026-06-12 20:33:26,393.393 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 20:33:26,399.399 INFO    ] Checking for existing commands in stream...
[2026-06-12 20:33:26,466.466 INFO    ] No existing commands found in stream
[2026-06-12 20:33:31,474.474 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 20:33:31,476.476 INFO    ] Waiting 2.15 seconds before fallback handling...
[2026-06-12 20:33:33,980.980 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 20:33:33,982.982 INFO    ] Checking for system updates...
[2026-06-12 20:33:34,002.002 INFO    ] 200
[2026-06-12 20:33:34,004.004 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:33:34,033.033 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 20:33:34,035.035 INFO    ] No update needed
[2026-06-12 20:33:34,036.036 INFO    ] Checking for camera pi updates...
[2026-06-12 20:33:34,055.055 INFO    ] 200
[2026-06-12 20:33:34,057.057 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:33:34,080.080 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 20:33:34,118.118 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 20:33:34,120.120 INFO    ] No camera update needed
[2026-06-12 20:33:34,121.121 INFO    ] Script finished. Safe exiting...
[2026-06-12 20:33:34,123.123 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 20:33:34,126.126 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 20:33:34,128.128 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 20:33:36,167.167 INFO    ] ================================================
[2026-06-12 20:33:36,183.183 INFO    ] Launching Daemon at Fri Jun 12 20:33:36 IST 2026
[2026-06-12 20:33:36,194.194 INFO    ] ================================================
[2026-06-12 20:33:36,538.538 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 20:33:36
[2026-06-12 20:33:36,869.869 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 20:33:36,999.999 INFO    ] Initializing speech engine...
[2026-06-12 20:33:37,004.004 INFO    ] 2026-06-12 20:33:37
[2026-06-12 20:33:37,221.221 INFO    ] 2026-06-12 20:33:37
[2026-06-12 20:33:37,251.251 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 20:33:37,434.434 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 20:33:37,443.443 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 20:33:37,583.583 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 20:33:37,641.641 INFO    ] time= 12/06/2026 20:33:37
[2026-06-12 20:33:37,664.664 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 20:33:37,670.670 INFO    ] Checking for existing commands in stream...
[2026-06-12 20:33:37,736.736 INFO    ] No existing commands found in stream
[2026-06-12 20:33:42,746.746 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 20:33:42,750.750 INFO    ] Waiting 0.41 seconds before fallback handling...
[2026-06-12 20:33:43,550.550 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 20:33:43,552.552 INFO    ] Checking for system updates...
[2026-06-12 20:33:43,572.572 INFO    ] 200
[2026-06-12 20:33:43,574.574 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:33:43,606.606 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 20:33:43,608.608 INFO    ] No update needed
[2026-06-12 20:33:43,609.609 INFO    ] Checking for camera pi updates...
[2026-06-12 20:33:43,628.628 INFO    ] 200
[2026-06-12 20:33:43,629.629 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:33:43,655.655 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 20:33:43,700.700 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 20:33:43,701.701 INFO    ] No camera update needed
[2026-06-12 20:33:43,703.703 INFO    ] Script finished. Safe exiting...
[2026-06-12 20:33:43,704.704 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 20:33:43,707.707 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 20:33:43,710.710 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 20:33:45,750.750 INFO    ] ================================================
[2026-06-12 20:33:45,766.766 INFO    ] Launching Daemon at Fri Jun 12 20:33:45 IST 2026
[2026-06-12 20:33:45,777.777 INFO    ] ================================================
[2026-06-12 20:33:46,158.158 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 20:33:46
[2026-06-12 20:33:46,499.499 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 20:33:46,641.641 INFO    ] Initializing speech engine...
[2026-06-12 20:33:46,655.655 INFO    ] 2026-06-12 20:33:46
[2026-06-12 20:33:46,868.868 INFO    ] 2026-06-12 20:33:46
[2026-06-12 20:33:46,898.898 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 20:33:47,085.085 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 20:33:47,088.088 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 20:33:47,242.242 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 20:33:47,295.295 INFO    ] time= 12/06/2026 20:33:47
[2026-06-12 20:33:47,318.318 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 20:33:47,325.325 INFO    ] Checking for existing commands in stream...
[2026-06-12 20:33:47,393.393 INFO    ] No existing commands found in stream
[2026-06-12 20:33:52,408.408 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 20:33:52,411.411 INFO    ] Waiting 1.62 seconds before fallback handling...
[2026-06-12 20:33:54,444.444 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 20:33:54,446.446 INFO    ] Checking for system updates...
[2026-06-12 20:33:54,468.468 INFO    ] 200
[2026-06-12 20:33:54,470.470 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:33:54,501.501 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 20:33:54,502.502 INFO    ] No update needed
[2026-06-12 20:33:54,504.504 INFO    ] Checking for camera pi updates...
[2026-06-12 20:33:54,524.524 INFO    ] 200
[2026-06-12 20:33:54,526.526 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:33:54,551.551 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 20:33:54,604.604 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 20:33:54,606.606 INFO    ] No camera update needed
[2026-06-12 20:33:54,607.607 INFO    ] Script finished. Safe exiting...
[2026-06-12 20:33:54,608.608 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 20:33:54,612.612 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 20:33:54,615.615 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 20:33:56,655.655 INFO    ] ================================================
[2026-06-12 20:33:56,677.677 INFO    ] Launching Daemon at Fri Jun 12 20:33:56 IST 2026
[2026-06-12 20:33:56,688.688 INFO    ] ================================================
[2026-06-12 20:33:57,037.037 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 20:33:57
[2026-06-12 20:33:57,347.347 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 20:33:57,481.481 INFO    ] Initializing speech engine...
[2026-06-12 20:33:57,486.486 INFO    ] 2026-06-12 20:33:57
[2026-06-12 20:33:57,701.701 INFO    ] 2026-06-12 20:33:57
[2026-06-12 20:33:57,729.729 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 20:33:57,949.949 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 20:33:57,958.958 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 20:33:58,096.096 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 20:33:58,149.149 INFO    ] time= 12/06/2026 20:33:58
[2026-06-12 20:33:58,184.184 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 20:33:58,201.201 INFO    ] Checking for existing commands in stream...
[2026-06-12 20:33:58,278.278 INFO    ] No existing commands found in stream
[2026-06-12 20:34:03,288.288 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 20:34:03,291.291 INFO    ] Waiting 1.27 seconds before fallback handling...
[2026-06-12 20:34:04,904.904 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 20:34:04,905.905 INFO    ] Checking for system updates...
[2026-06-12 20:34:04,926.926 INFO    ] 200
[2026-06-12 20:34:04,927.927 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:34:04,959.959 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 20:34:04,961.961 INFO    ] No update needed
[2026-06-12 20:34:04,963.963 INFO    ] Checking for camera pi updates...
[2026-06-12 20:34:04,983.983 INFO    ] 200
[2026-06-12 20:34:04,985.985 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:34:05,010.010 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 20:34:05,068.068 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 20:34:05,069.069 INFO    ] No camera update needed
[2026-06-12 20:34:05,071.071 INFO    ] Script finished. Safe exiting...
[2026-06-12 20:34:05,072.072 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 20:34:05,075.075 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 20:34:05,078.078 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 20:34:07,117.117 INFO    ] ================================================
[2026-06-12 20:34:07,132.132 INFO    ] Launching Daemon at Fri Jun 12 20:34:07 IST 2026
[2026-06-12 20:34:07,143.143 INFO    ] ================================================
[2026-06-12 20:34:07,509.509 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 20:34:07
[2026-06-12 20:34:07,820.820 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 20:34:07,961.961 INFO    ] Initializing speech engine...
[2026-06-12 20:34:07,966.966 INFO    ] 2026-06-12 20:34:07
[2026-06-12 20:34:08,168.168 INFO    ] 2026-06-12 20:34:08
[2026-06-12 20:34:08,196.196 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 20:34:08,353.353 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 20:34:08,354.354 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 20:34:08,461.461 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 20:34:08,463.463 INFO    ] time= 12/06/2026 20:34:08
[2026-06-12 20:34:08,464.464 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 20:34:08,465.465 INFO    ] Checking for existing commands in stream...
[2026-06-12 20:34:08,520.520 INFO    ] No existing commands found in stream
[2026-06-12 20:34:13,542.542 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 20:34:13,545.545 INFO    ] Waiting 1.64 seconds before fallback handling...
[2026-06-12 20:34:15,532.532 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 20:34:15,533.533 INFO    ] Checking for system updates...
[2026-06-12 20:34:15,554.554 INFO    ] 200
[2026-06-12 20:34:15,555.555 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:34:15,585.585 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 20:34:15,587.587 INFO    ] No update needed
[2026-06-12 20:34:15,588.588 INFO    ] Checking for camera pi updates...
[2026-06-12 20:34:15,608.608 INFO    ] 200
[2026-06-12 20:34:15,609.609 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:34:15,633.633 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 20:34:15,677.677 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 20:34:15,679.679 INFO    ] No camera update needed
[2026-06-12 20:34:15,681.681 INFO    ] Script finished. Safe exiting...
[2026-06-12 20:34:15,683.683 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 20:34:15,686.686 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 20:34:15,690.690 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 20:34:17,731.731 INFO    ] ================================================
[2026-06-12 20:34:17,746.746 INFO    ] Launching Daemon at Fri Jun 12 20:34:17 IST 2026
[2026-06-12 20:34:17,757.757 INFO    ] ================================================
[2026-06-12 20:34:18,097.097 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 20:34:18
[2026-06-12 20:34:18,409.409 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 20:34:18,552.552 INFO    ] Initializing speech engine...
[2026-06-12 20:34:18,557.557 INFO    ] 2026-06-12 20:34:18
[2026-06-12 20:34:18,762.762 INFO    ] 2026-06-12 20:34:18
[2026-06-12 20:34:18,790.790 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 20:34:18,976.976 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 20:34:18,984.984 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 20:34:19,116.116 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 20:34:19,181.181 INFO    ] time= 12/06/2026 20:34:19
[2026-06-12 20:34:19,209.209 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 20:34:19,211.211 INFO    ] Checking for existing commands in stream...
[2026-06-12 20:34:19,307.307 INFO    ] No existing commands found in stream
[2026-06-12 20:34:24,315.315 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 20:34:24,318.318 INFO    ] Waiting 1.26 seconds before fallback handling...
[2026-06-12 20:34:25,954.954 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 20:34:25,955.955 INFO    ] Checking for system updates...
[2026-06-12 20:34:25,976.976 INFO    ] 200
[2026-06-12 20:34:25,977.977 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:34:26,009.009 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 20:34:26,010.010 INFO    ] No update needed
[2026-06-12 20:34:26,012.012 INFO    ] Checking for camera pi updates...
[2026-06-12 20:34:26,031.031 INFO    ] 200
[2026-06-12 20:34:26,032.032 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:34:26,055.055 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 20:34:26,106.106 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 20:34:26,108.108 INFO    ] No camera update needed
[2026-06-12 20:34:26,109.109 INFO    ] Script finished. Safe exiting...
[2026-06-12 20:34:26,110.110 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 20:34:26,113.113 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 20:34:26,116.116 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 20:34:28,154.154 INFO    ] ================================================
[2026-06-12 20:34:28,169.169 INFO    ] Launching Daemon at Fri Jun 12 20:34:28 IST 2026
[2026-06-12 20:34:28,180.180 INFO    ] ================================================
[2026-06-12 20:34:28,562.562 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 20:34:28
[2026-06-12 20:34:28,896.896 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 20:34:29,045.045 INFO    ] Initializing speech engine...
[2026-06-12 20:34:29,051.051 INFO    ] 2026-06-12 20:34:29
[2026-06-12 20:34:29,260.260 INFO    ] 2026-06-12 20:34:29
[2026-06-12 20:34:29,288.288 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 20:34:29,471.471 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 20:34:29,474.474 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 20:34:29,615.615 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 20:34:29,677.677 INFO    ] time= 12/06/2026 20:34:29
[2026-06-12 20:34:29,700.700 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 20:34:29,706.706 INFO    ] Checking for existing commands in stream...
[2026-06-12 20:34:29,773.773 INFO    ] No existing commands found in stream
[2026-06-12 20:34:34,787.787 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 20:34:34,791.791 INFO    ] Waiting 1.00 seconds before fallback handling...
[2026-06-12 20:34:36,220.220 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 20:34:36,222.222 INFO    ] Checking for system updates...
[2026-06-12 20:34:36,259.259 INFO    ] 200
[2026-06-12 20:34:36,262.262 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:34:36,324.324 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 20:34:36,326.326 INFO    ] No update needed
[2026-06-12 20:34:36,328.328 INFO    ] Checking for camera pi updates...
[2026-06-12 20:34:36,353.353 INFO    ] 200
[2026-06-12 20:34:36,354.354 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:34:36,380.380 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 20:34:36,420.420 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 20:34:36,422.422 INFO    ] No camera update needed
[2026-06-12 20:34:36,423.423 INFO    ] Script finished. Safe exiting...
[2026-06-12 20:34:36,424.424 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 20:34:36,427.427 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 20:34:36,430.430 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 20:34:38,468.468 INFO    ] ================================================
[2026-06-12 20:34:38,483.483 INFO    ] Launching Daemon at Fri Jun 12 20:34:38 IST 2026
[2026-06-12 20:34:38,494.494 INFO    ] ================================================
[2026-06-12 20:34:38,839.839 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 20:34:38
[2026-06-12 20:34:39,172.172 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 20:34:39,324.324 INFO    ] Initializing speech engine...
[2026-06-12 20:34:39,332.332 INFO    ] 2026-06-12 20:34:39
[2026-06-12 20:34:39,532.532 INFO    ] 2026-06-12 20:34:39
[2026-06-12 20:34:39,560.560 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 20:34:39,699.699 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 20:34:39,747.747 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 20:34:39,894.894 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 20:34:39,952.952 INFO    ] time= 12/06/2026 20:34:39
[2026-06-12 20:34:39,975.975 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 20:34:39,981.981 INFO    ] Checking for existing commands in stream...
[2026-06-12 20:34:40,048.048 INFO    ] No existing commands found in stream
[2026-06-12 20:34:45,062.062 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 20:34:45,066.066 INFO    ] Waiting 3.44 seconds before fallback handling...
[2026-06-12 20:34:48,864.864 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 20:34:48,866.866 INFO    ] Checking for system updates...
[2026-06-12 20:34:48,886.886 INFO    ] 200
[2026-06-12 20:34:48,888.888 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:34:48,917.917 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 20:34:48,919.919 INFO    ] No update needed
[2026-06-12 20:34:48,920.920 INFO    ] Checking for camera pi updates...
[2026-06-12 20:34:48,940.940 INFO    ] 200
[2026-06-12 20:34:48,941.941 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:34:48,964.964 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 20:34:49,104.104 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 20:34:49,105.105 INFO    ] No camera update needed
[2026-06-12 20:34:49,107.107 INFO    ] Script finished. Safe exiting...
[2026-06-12 20:34:49,108.108 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 20:34:49,111.111 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 20:34:49,114.114 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 20:34:51,153.153 INFO    ] ================================================
[2026-06-12 20:34:51,168.168 INFO    ] Launching Daemon at Fri Jun 12 20:34:51 IST 2026
[2026-06-12 20:34:51,179.179 INFO    ] ================================================
[2026-06-12 20:34:51,523.523 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 20:34:51
[2026-06-12 20:34:51,835.835 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 20:34:51,978.978 INFO    ] Initializing speech engine...
[2026-06-12 20:34:51,983.983 INFO    ] 2026-06-12 20:34:51
[2026-06-12 20:34:52,188.188 INFO    ] 2026-06-12 20:34:52
[2026-06-12 20:34:52,218.218 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 20:34:52,404.404 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 20:34:52,411.411 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 20:34:52,539.539 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 20:34:52,601.601 INFO    ] time= 12/06/2026 20:34:52
[2026-06-12 20:34:52,634.634 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 20:34:52,636.636 INFO    ] Checking for existing commands in stream...
[2026-06-12 20:34:52,708.708 INFO    ] No existing commands found in stream
[2026-06-12 20:34:57,722.722 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 20:34:57,725.725 INFO    ] Waiting 2.52 seconds before fallback handling...
[2026-06-12 20:35:01,778.778 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 20:35:01,795.795 INFO    ] Checking for system updates...
[2026-06-12 20:35:01,862.862 INFO    ] 200
[2026-06-12 20:35:01,865.865 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:35:01,932.932 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 20:35:01,934.934 INFO    ] No update needed
[2026-06-12 20:35:01,937.937 INFO    ] Checking for camera pi updates...
[2026-06-12 20:35:02,009.009 INFO    ] 200
[2026-06-12 20:35:02,012.012 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:35:02,064.064 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 20:35:02,148.148 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 20:35:02,150.150 INFO    ] No camera update needed
[2026-06-12 20:35:02,151.151 INFO    ] Script finished. Safe exiting...
[2026-06-12 20:35:02,153.153 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 20:35:02,158.158 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 20:35:02,162.162 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 20:35:04,200.200 INFO    ] ================================================
[2026-06-12 20:35:04,217.217 INFO    ] Launching Daemon at Fri Jun 12 20:35:04 IST 2026
[2026-06-12 20:35:04,228.228 INFO    ] ================================================
[2026-06-12 20:35:04,575.575 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 20:35:04
[2026-06-12 20:35:04,907.907 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 20:35:05,056.056 INFO    ] Initializing speech engine...
[2026-06-12 20:35:05,062.062 INFO    ] 2026-06-12 20:35:05
[2026-06-12 20:35:05,270.270 INFO    ] 2026-06-12 20:35:05
[2026-06-12 20:35:05,300.300 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 20:35:05,486.486 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 20:35:05,496.496 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 20:35:05,643.643 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 20:35:05,697.697 INFO    ] time= 12/06/2026 20:35:05
[2026-06-12 20:35:05,720.720 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 20:35:05,726.726 INFO    ] Checking for existing commands in stream...
[2026-06-12 20:35:05,794.794 INFO    ] No existing commands found in stream
[2026-06-12 20:35:10,808.808 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 20:35:10,811.811 INFO    ] Waiting 0.61 seconds before fallback handling...
[2026-06-12 20:35:11,845.845 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 20:35:11,847.847 INFO    ] Checking for system updates...
[2026-06-12 20:35:11,873.873 INFO    ] 200
[2026-06-12 20:35:11,875.875 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:35:11,922.922 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 20:35:11,923.923 INFO    ] No update needed
[2026-06-12 20:35:11,924.924 INFO    ] Checking for camera pi updates...
[2026-06-12 20:35:11,944.944 INFO    ] 200
[2026-06-12 20:35:11,945.945 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:35:11,969.969 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 20:35:12,013.013 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 20:35:12,015.015 INFO    ] No camera update needed
[2026-06-12 20:35:12,016.016 INFO    ] Script finished. Safe exiting...
[2026-06-12 20:35:12,017.017 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 20:35:12,020.020 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 20:35:12,023.023 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 20:35:14,061.061 INFO    ] ================================================
[2026-06-12 20:35:14,076.076 INFO    ] Launching Daemon at Fri Jun 12 20:35:14 IST 2026
[2026-06-12 20:35:14,087.087 INFO    ] ================================================
[2026-06-12 20:35:14,424.424 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 20:35:14
[2026-06-12 20:35:14,759.759 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 20:35:14,904.904 INFO    ] Initializing speech engine...
[2026-06-12 20:35:14,915.915 INFO    ] 2026-06-12 20:35:14
[2026-06-12 20:35:15,125.125 INFO    ] 2026-06-12 20:35:15
[2026-06-12 20:35:15,154.154 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 20:35:15,342.342 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 20:35:15,352.352 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 20:35:15,533.533 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 20:35:15,572.572 INFO    ] time= 12/06/2026 20:35:15
[2026-06-12 20:35:15,575.575 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 20:35:15,581.581 INFO    ] Checking for existing commands in stream...
[2026-06-12 20:35:15,648.648 INFO    ] No existing commands found in stream
[2026-06-12 20:35:20,671.671 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 20:35:20,673.673 INFO    ] Waiting 2.63 seconds before fallback handling...
[2026-06-12 20:35:23,694.694 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 20:35:23,696.696 INFO    ] Checking for system updates...
[2026-06-12 20:35:23,717.717 INFO    ] 200
[2026-06-12 20:35:23,719.719 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:35:23,751.751 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 20:35:23,752.752 INFO    ] No update needed
[2026-06-12 20:35:23,754.754 INFO    ] Checking for camera pi updates...
[2026-06-12 20:35:23,774.774 INFO    ] 200
[2026-06-12 20:35:23,776.776 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:35:23,801.801 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 20:35:23,855.855 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 20:35:23,857.857 INFO    ] No camera update needed
[2026-06-12 20:35:23,858.858 INFO    ] Script finished. Safe exiting...
[2026-06-12 20:35:23,860.860 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 20:35:23,863.863 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 20:35:23,866.866 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 20:35:25,905.905 INFO    ] ================================================
[2026-06-12 20:35:25,920.920 INFO    ] Launching Daemon at Fri Jun 12 20:35:25 IST 2026
[2026-06-12 20:35:25,930.930 INFO    ] ================================================
[2026-06-12 20:35:26,289.289 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 20:35:26
[2026-06-12 20:35:26,603.603 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 20:35:26,736.736 INFO    ] Initializing speech engine...
[2026-06-12 20:35:26,741.741 INFO    ] 2026-06-12 20:35:26
[2026-06-12 20:35:26,969.969 INFO    ] 2026-06-12 20:35:26
[2026-06-12 20:35:26,999.999 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 20:35:27,195.195 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 20:35:27,206.206 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 20:35:27,337.337 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 20:35:27,404.404 INFO    ] time= 12/06/2026 20:35:27
[2026-06-12 20:35:27,442.442 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 20:35:27,444.444 INFO    ] Checking for existing commands in stream...
[2026-06-12 20:35:27,518.518 INFO    ] No existing commands found in stream
[2026-06-12 20:35:32,528.528 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 20:35:32,530.530 INFO    ] Waiting 0.27 seconds before fallback handling...
[2026-06-12 20:35:33,133.133 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 20:35:33,134.134 INFO    ] Checking for system updates...
[2026-06-12 20:35:33,154.154 INFO    ] 200
[2026-06-12 20:35:33,156.156 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:35:33,187.187 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 20:35:33,189.189 INFO    ] No update needed
[2026-06-12 20:35:33,190.190 INFO    ] Checking for camera pi updates...
[2026-06-12 20:35:33,209.209 INFO    ] 200
[2026-06-12 20:35:33,211.211 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:35:33,234.234 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 20:35:33,265.265 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 20:35:33,267.267 INFO    ] No camera update needed
[2026-06-12 20:35:33,268.268 INFO    ] Script finished. Safe exiting...
[2026-06-12 20:35:33,269.269 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 20:35:33,272.272 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 20:35:33,275.275 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 20:35:35,316.316 INFO    ] ================================================
[2026-06-12 20:35:35,331.331 INFO    ] Launching Daemon at Fri Jun 12 20:35:35 IST 2026
[2026-06-12 20:35:35,342.342 INFO    ] ================================================
[2026-06-12 20:35:35,685.685 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 20:35:35
[2026-06-12 20:35:35,998.998 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 20:35:36,132.132 INFO    ] Initializing speech engine...
[2026-06-12 20:35:36,136.136 INFO    ] 2026-06-12 20:35:36
[2026-06-12 20:35:36,365.365 INFO    ] 2026-06-12 20:35:36
[2026-06-12 20:35:36,397.397 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 20:35:36,595.595 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 20:35:36,598.598 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 20:35:36,737.737 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 20:35:36,794.794 INFO    ] time= 12/06/2026 20:35:36
[2026-06-12 20:35:36,842.842 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 20:35:36,844.844 INFO    ] Checking for existing commands in stream...
[2026-06-12 20:35:36,919.919 INFO    ] No existing commands found in stream
[2026-06-12 20:35:41,930.930 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 20:35:41,932.932 INFO    ] Waiting 2.65 seconds before fallback handling...
[2026-06-12 20:35:44,963.963 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 20:35:44,965.965 INFO    ] Checking for system updates...
[2026-06-12 20:35:44,986.986 INFO    ] 200
[2026-06-12 20:35:44,987.987 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:35:45,018.018 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 20:35:45,019.019 INFO    ] No update needed
[2026-06-12 20:35:45,020.020 INFO    ] Checking for camera pi updates...
[2026-06-12 20:35:45,039.039 INFO    ] 200
[2026-06-12 20:35:45,041.041 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:35:45,063.063 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 20:35:45,116.116 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 20:35:45,118.118 INFO    ] No camera update needed
[2026-06-12 20:35:45,119.119 INFO    ] Script finished. Safe exiting...
[2026-06-12 20:35:45,120.120 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 20:35:45,123.123 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 20:35:45,126.126 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 20:35:47,164.164 INFO    ] ================================================
[2026-06-12 20:35:47,179.179 INFO    ] Launching Daemon at Fri Jun 12 20:35:47 IST 2026
[2026-06-12 20:35:47,189.189 INFO    ] ================================================
[2026-06-12 20:35:47,553.553 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 20:35:47
[2026-06-12 20:35:47,866.866 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 20:35:48,002.002 INFO    ] Initializing speech engine...
[2026-06-12 20:35:48,012.012 INFO    ] 2026-06-12 20:35:48
[2026-06-12 20:35:48,216.216 INFO    ] 2026-06-12 20:35:48
[2026-06-12 20:35:48,244.244 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 20:35:48,425.425 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 20:35:48,435.435 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 20:35:48,574.574 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 20:35:48,631.631 INFO    ] time= 12/06/2026 20:35:48
[2026-06-12 20:35:48,653.653 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 20:35:48,660.660 INFO    ] Checking for existing commands in stream...
[2026-06-12 20:35:48,750.750 INFO    ] No existing commands found in stream
[2026-06-12 20:35:53,764.764 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 20:35:53,766.766 INFO    ] Waiting 2.65 seconds before fallback handling...
[2026-06-12 20:35:56,816.816 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 20:35:56,818.818 INFO    ] Checking for system updates...
[2026-06-12 20:35:56,839.839 INFO    ] 200
[2026-06-12 20:35:56,840.840 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:35:56,870.870 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 20:35:56,872.872 INFO    ] No update needed
[2026-06-12 20:35:56,873.873 INFO    ] Checking for camera pi updates...
[2026-06-12 20:35:56,894.894 INFO    ] 200
[2026-06-12 20:35:56,895.895 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:35:56,921.921 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 20:35:56,963.963 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 20:35:56,965.965 INFO    ] No camera update needed
[2026-06-12 20:35:56,966.966 INFO    ] Script finished. Safe exiting...
[2026-06-12 20:35:56,967.967 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 20:35:56,971.971 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 20:35:56,974.974 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 20:35:59,013.013 INFO    ] ================================================
[2026-06-12 20:35:59,028.028 INFO    ] Launching Daemon at Fri Jun 12 20:35:59 IST 2026
[2026-06-12 20:35:59,040.040 INFO    ] ================================================
[2026-06-12 20:35:59,384.384 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 20:35:59
[2026-06-12 20:35:59,723.723 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 20:35:59,868.868 INFO    ] Initializing speech engine...
[2026-06-12 20:35:59,880.880 INFO    ] 2026-06-12 20:35:59
[2026-06-12 20:36:00,090.090 INFO    ] 2026-06-12 20:36:00
[2026-06-12 20:36:00,119.119 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 20:36:00,304.304 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 20:36:00,307.307 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 20:36:00,444.444 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 20:36:00,509.509 INFO    ] time= 12/06/2026 20:36:00
[2026-06-12 20:36:00,560.560 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 20:36:00,580.580 INFO    ] Checking for existing commands in stream...
[2026-06-12 20:36:00,709.709 INFO    ] No existing commands found in stream
[2026-06-12 20:36:05,720.720 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 20:36:05,723.723 INFO    ] Waiting 3.88 seconds before fallback handling...
[2026-06-12 20:36:09,986.986 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 20:36:09,988.988 INFO    ] Checking for system updates...
[2026-06-12 20:36:10,008.008 INFO    ] 200
[2026-06-12 20:36:10,010.010 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:36:10,040.040 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 20:36:10,041.041 INFO    ] No update needed
[2026-06-12 20:36:10,043.043 INFO    ] Checking for camera pi updates...
[2026-06-12 20:36:10,062.062 INFO    ] 200
[2026-06-12 20:36:10,064.064 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:36:10,087.087 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 20:36:10,131.131 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 20:36:10,132.132 INFO    ] No camera update needed
[2026-06-12 20:36:10,134.134 INFO    ] Script finished. Safe exiting...
[2026-06-12 20:36:10,135.135 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 20:36:10,138.138 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 20:36:10,141.141 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 20:36:12,181.181 INFO    ] ================================================
[2026-06-12 20:36:12,199.199 INFO    ] Launching Daemon at Fri Jun 12 20:36:12 IST 2026
[2026-06-12 20:36:12,210.210 INFO    ] ================================================
[2026-06-12 20:36:12,534.534 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 20:36:12
[2026-06-12 20:36:12,854.854 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 20:36:13,024.024 INFO    ] Initializing speech engine...
[2026-06-12 20:36:13,030.030 INFO    ] 2026-06-12 20:36:13
[2026-06-12 20:36:13,273.273 INFO    ] 2026-06-12 20:36:13
[2026-06-12 20:36:13,303.303 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 20:36:13,499.499 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 20:36:13,506.506 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 20:36:13,644.644 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 20:36:13,691.691 INFO    ] time= 12/06/2026 20:36:13
[2026-06-12 20:36:13,729.729 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 20:36:13,752.752 INFO    ] Checking for existing commands in stream...
[2026-06-12 20:36:13,827.827 INFO    ] No existing commands found in stream
[2026-06-12 20:36:18,838.838 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 20:36:18,841.841 INFO    ] Waiting 2.56 seconds before fallback handling...
[2026-06-12 20:36:21,775.775 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 20:36:21,777.777 INFO    ] Checking for system updates...
[2026-06-12 20:36:21,797.797 INFO    ] 200
[2026-06-12 20:36:21,798.798 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:36:21,832.832 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 20:36:21,833.833 INFO    ] No update needed
[2026-06-12 20:36:21,834.834 INFO    ] Checking for camera pi updates...
[2026-06-12 20:36:21,853.853 INFO    ] 200
[2026-06-12 20:36:21,855.855 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:36:21,878.878 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 20:36:21,922.922 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 20:36:21,924.924 INFO    ] No camera update needed
[2026-06-12 20:36:21,925.925 INFO    ] Script finished. Safe exiting...
[2026-06-12 20:36:21,926.926 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 20:36:21,929.929 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 20:36:21,932.932 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 20:36:23,972.972 INFO    ] ================================================
[2026-06-12 20:36:23,987.987 INFO    ] Launching Daemon at Fri Jun 12 20:36:23 IST 2026
[2026-06-12 20:36:24,998.998 INFO    ] ================================================
[2026-06-12 20:36:24,361.361 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 20:36:24
[2026-06-12 20:36:24,689.689 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 20:36:24,818.818 INFO    ] Initializing speech engine...
[2026-06-12 20:36:24,823.823 INFO    ] 2026-06-12 20:36:24
[2026-06-12 20:36:25,041.041 INFO    ] 2026-06-12 20:36:25
[2026-06-12 20:36:25,071.071 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 20:36:25,257.257 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 20:36:25,266.266 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 20:36:25,398.398 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 20:36:25,466.466 INFO    ] time= 12/06/2026 20:36:25
[2026-06-12 20:36:25,490.490 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 20:36:25,496.496 INFO    ] Checking for existing commands in stream...
[2026-06-12 20:36:25,564.564 INFO    ] No existing commands found in stream
[2026-06-12 20:36:30,578.578 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 20:36:30,581.581 INFO    ] Waiting 2.61 seconds before fallback handling...
[2026-06-12 20:36:33,575.575 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 20:36:33,576.576 INFO    ] Checking for system updates...
[2026-06-12 20:36:33,597.597 INFO    ] 200
[2026-06-12 20:36:33,598.598 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:36:33,628.628 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 20:36:33,630.630 INFO    ] No update needed
[2026-06-12 20:36:33,631.631 INFO    ] Checking for camera pi updates...
[2026-06-12 20:36:33,651.651 INFO    ] 200
[2026-06-12 20:36:33,652.652 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:36:33,675.675 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 20:36:33,725.725 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 20:36:33,726.726 INFO    ] No camera update needed
[2026-06-12 20:36:33,728.728 INFO    ] Script finished. Safe exiting...
[2026-06-12 20:36:33,729.729 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 20:36:33,732.732 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 20:36:33,735.735 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 20:36:35,773.773 INFO    ] ================================================
[2026-06-12 20:36:35,789.789 INFO    ] Launching Daemon at Fri Jun 12 20:36:35 IST 2026
[2026-06-12 20:36:35,800.800 INFO    ] ================================================
[2026-06-12 20:36:36,145.145 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 20:36:36
[2026-06-12 20:36:36,464.464 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 20:36:36,595.595 INFO    ] Initializing speech engine...
[2026-06-12 20:36:36,599.599 INFO    ] 2026-06-12 20:36:36
[2026-06-12 20:36:36,822.822 INFO    ] 2026-06-12 20:36:36
[2026-06-12 20:36:36,852.852 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 20:36:37,038.038 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 20:36:37,048.048 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 20:36:37,181.181 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 20:36:37,249.249 INFO    ] time= 12/06/2026 20:36:37
[2026-06-12 20:36:37,273.273 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 20:36:37,280.280 INFO    ] Checking for existing commands in stream...
[2026-06-12 20:36:37,372.372 INFO    ] No existing commands found in stream
[2026-06-12 20:36:42,381.381 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 20:36:42,384.384 INFO    ] Waiting 0.91 seconds before fallback handling...
[2026-06-12 20:36:43,644.644 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 20:36:43,645.645 INFO    ] Checking for system updates...
[2026-06-12 20:36:43,665.665 INFO    ] 200
[2026-06-12 20:36:43,667.667 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:36:43,697.697 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 20:36:43,698.698 INFO    ] No update needed
[2026-06-12 20:36:43,699.699 INFO    ] Checking for camera pi updates...
[2026-06-12 20:36:43,719.719 INFO    ] 200
[2026-06-12 20:36:43,720.720 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:36:43,745.745 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 20:36:43,796.796 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 20:36:43,797.797 INFO    ] No camera update needed
[2026-06-12 20:36:43,798.798 INFO    ] Script finished. Safe exiting...
[2026-06-12 20:36:43,800.800 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 20:36:43,803.803 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 20:36:43,805.805 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 20:36:45,837.837 INFO    ] ================================================
[2026-06-12 20:36:45,853.853 INFO    ] Launching Daemon at Fri Jun 12 20:36:45 IST 2026
[2026-06-12 20:36:45,864.864 INFO    ] ================================================
[2026-06-12 20:36:46,219.219 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 20:36:46
[2026-06-12 20:36:46,530.530 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 20:36:46,660.660 INFO    ] Initializing speech engine...
[2026-06-12 20:36:46,663.663 INFO    ] 2026-06-12 20:36:46
[2026-06-12 20:36:46,882.882 INFO    ] 2026-06-12 20:36:46
[2026-06-12 20:36:46,910.910 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 20:36:47,033.033 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 20:36:47,096.096 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 20:36:47,235.235 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 20:36:47,294.294 INFO    ] time= 12/06/2026 20:36:47
[2026-06-12 20:36:47,327.327 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 20:36:47,328.328 INFO    ] Checking for existing commands in stream...
[2026-06-12 20:36:47,425.425 INFO    ] No existing commands found in stream
[2026-06-12 20:36:52,439.439 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 20:36:52,441.441 INFO    ] Waiting 3.72 seconds before fallback handling...
[2026-06-12 20:36:56,536.536 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 20:36:56,537.537 INFO    ] Checking for system updates...
[2026-06-12 20:36:56,558.558 INFO    ] 200
[2026-06-12 20:36:56,559.559 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:36:56,590.590 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 20:36:56,592.592 INFO    ] No update needed
[2026-06-12 20:36:56,593.593 INFO    ] Checking for camera pi updates...
[2026-06-12 20:36:56,612.612 INFO    ] 200
[2026-06-12 20:36:56,613.613 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:36:56,638.638 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 20:36:56,779.779 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 20:36:56,780.780 INFO    ] No camera update needed
[2026-06-12 20:36:56,781.781 INFO    ] Script finished. Safe exiting...
[2026-06-12 20:36:56,783.783 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 20:36:56,786.786 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 20:36:56,788.788 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 20:36:58,828.828 INFO    ] ================================================
[2026-06-12 20:36:58,843.843 INFO    ] Launching Daemon at Fri Jun 12 20:36:58 IST 2026
[2026-06-12 20:36:58,854.854 INFO    ] ================================================
[2026-06-12 20:36:59,187.187 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 20:36:59
[2026-06-12 20:36:59,504.504 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 20:36:59,636.636 INFO    ] Initializing speech engine...
[2026-06-12 20:36:59,639.639 INFO    ] 2026-06-12 20:36:59
[2026-06-12 20:36:59,856.856 INFO    ] 2026-06-12 20:36:59
[2026-06-12 20:36:59,886.886 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 20:37:00,069.069 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 20:37:00,073.073 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 20:37:00,202.202 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 20:37:00,258.258 INFO    ] time= 12/06/2026 20:37:00
[2026-06-12 20:37:00,293.293 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 20:37:00,304.304 INFO    ] Checking for existing commands in stream...
[2026-06-12 20:37:00,375.375 INFO    ] No existing commands found in stream
[2026-06-12 20:37:05,382.382 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 20:37:05,386.386 INFO    ] Waiting 0.65 seconds before fallback handling...
[2026-06-12 20:37:06,428.428 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 20:37:06,429.429 INFO    ] Checking for system updates...
[2026-06-12 20:37:06,450.450 INFO    ] 200
[2026-06-12 20:37:06,452.452 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:37:06,481.481 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 20:37:06,483.483 INFO    ] No update needed
[2026-06-12 20:37:06,484.484 INFO    ] Checking for camera pi updates...
[2026-06-12 20:37:06,503.503 INFO    ] 200
[2026-06-12 20:37:06,504.504 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:37:06,528.528 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 20:37:06,571.571 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 20:37:06,572.572 INFO    ] No camera update needed
[2026-06-12 20:37:06,573.573 INFO    ] Script finished. Safe exiting...
[2026-06-12 20:37:06,575.575 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 20:37:06,578.578 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 20:37:06,581.581 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 20:37:08,620.620 INFO    ] ================================================
[2026-06-12 20:37:08,635.635 INFO    ] Launching Daemon at Fri Jun 12 20:37:08 IST 2026
[2026-06-12 20:37:08,646.646 INFO    ] ================================================
[2026-06-12 20:37:08,972.972 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 20:37:08
[2026-06-12 20:37:09,289.289 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 20:37:09,430.430 INFO    ] Initializing speech engine...
[2026-06-12 20:37:09,438.438 INFO    ] 2026-06-12 20:37:09
[2026-06-12 20:37:09,654.654 INFO    ] 2026-06-12 20:37:09
[2026-06-12 20:37:09,685.685 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 20:37:09,881.881 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 20:37:09,884.884 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 20:37:10,027.027 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 20:37:10,084.084 INFO    ] time= 12/06/2026 20:37:10
[2026-06-12 20:37:10,118.118 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 20:37:10,129.129 INFO    ] Checking for existing commands in stream...
[2026-06-12 20:37:10,231.231 INFO    ] No existing commands found in stream
[2026-06-12 20:37:15,240.240 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 20:37:15,242.242 INFO    ] Waiting 0.90 seconds before fallback handling...
[2026-06-12 20:37:16,540.540 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 20:37:16,541.541 INFO    ] Checking for system updates...
[2026-06-12 20:37:16,563.563 INFO    ] 200
[2026-06-12 20:37:16,564.564 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:37:16,594.594 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 20:37:16,595.595 INFO    ] No update needed
[2026-06-12 20:37:16,596.596 INFO    ] Checking for camera pi updates...
[2026-06-12 20:37:16,618.618 INFO    ] 200
[2026-06-12 20:37:16,619.619 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:37:16,642.642 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 20:37:16,692.692 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 20:37:16,693.693 INFO    ] No camera update needed
[2026-06-12 20:37:16,694.694 INFO    ] Script finished. Safe exiting...
[2026-06-12 20:37:16,695.695 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 20:37:16,698.698 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 20:37:16,701.701 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 20:37:18,733.733 INFO    ] ================================================
[2026-06-12 20:37:18,749.749 INFO    ] Launching Daemon at Fri Jun 12 20:37:18 IST 2026
[2026-06-12 20:37:18,760.760 INFO    ] ================================================
[2026-06-12 20:37:19,141.141 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 20:37:19
[2026-06-12 20:37:19,477.477 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 20:37:19,628.628 INFO    ] Initializing speech engine...
[2026-06-12 20:37:19,634.634 INFO    ] 2026-06-12 20:37:19
[2026-06-12 20:37:19,842.842 INFO    ] 2026-06-12 20:37:19
[2026-06-12 20:37:19,872.872 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 20:37:20,057.057 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 20:37:20,068.068 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 20:37:20,195.195 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 20:37:20,257.257 INFO    ] time= 12/06/2026 20:37:20
[2026-06-12 20:37:20,291.291 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 20:37:20,298.298 INFO    ] Checking for existing commands in stream...
[2026-06-12 20:37:20,390.390 INFO    ] No existing commands found in stream
[2026-06-12 20:37:25,403.403 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 20:37:25,405.405 INFO    ] Waiting 2.45 seconds before fallback handling...
[2026-06-12 20:37:28,167.167 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 20:37:28,169.169 INFO    ] Checking for system updates...
[2026-06-12 20:37:28,195.195 INFO    ] 200
[2026-06-12 20:37:28,197.197 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:37:28,239.239 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 20:37:28,241.241 INFO    ] No update needed
[2026-06-12 20:37:28,243.243 INFO    ] Checking for camera pi updates...
[2026-06-12 20:37:28,268.268 INFO    ] 200
[2026-06-12 20:37:28,269.269 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:37:28,296.296 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 20:37:28,338.338 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 20:37:28,340.340 INFO    ] No camera update needed
[2026-06-12 20:37:28,342.342 INFO    ] Script finished. Safe exiting...
[2026-06-12 20:37:28,344.344 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 20:37:28,348.348 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 20:37:28,351.351 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 20:37:30,378.378 INFO    ] ================================================
[2026-06-12 20:37:30,393.393 INFO    ] Launching Daemon at Fri Jun 12 20:37:30 IST 2026
[2026-06-12 20:37:30,400.400 INFO    ] ================================================
[2026-06-12 20:37:30,743.743 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 20:37:30
[2026-06-12 20:37:31,092.092 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 20:37:31,244.244 INFO    ] Initializing speech engine...
[2026-06-12 20:37:31,250.250 INFO    ] 2026-06-12 20:37:31
[2026-06-12 20:37:31,495.495 INFO    ] 2026-06-12 20:37:31
[2026-06-12 20:37:31,525.525 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 20:37:31,721.721 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 20:37:31,726.726 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 20:37:31,864.864 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 20:37:31,926.926 INFO    ] time= 12/06/2026 20:37:31
[2026-06-12 20:37:31,972.972 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 20:37:31,974.974 INFO    ] Checking for existing commands in stream...
[2026-06-12 20:37:32,045.045 INFO    ] No existing commands found in stream
[2026-06-12 20:37:37,054.054 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 20:37:37,057.057 INFO    ] Waiting 0.66 seconds before fallback handling...
[2026-06-12 20:37:38,067.067 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 20:37:38,068.068 INFO    ] Checking for system updates...
[2026-06-12 20:37:38,111.111 INFO    ] 200
[2026-06-12 20:37:38,113.113 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_HEALTH_CHECK"}
[2026-06-12 20:37:38,116.116 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping update check
[2026-06-12 20:37:38,119.119 INFO    ] Checking for camera pi updates...
[2026-06-12 20:37:38,165.165 INFO    ] 200
[2026-06-12 20:37:38,168.168 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_HEALTH_CHECK"}
[2026-06-12 20:37:38,171.171 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping camera update check
[2026-06-12 20:37:38,173.173 INFO    ] Script finished. Safe exiting...
[2026-06-12 20:37:38,174.174 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 20:37:38,178.178 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 20:37:38,181.181 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 20:37:40,204.204 INFO    ] ================================================
[2026-06-12 20:37:40,213.213 INFO    ] Launching Daemon at Fri Jun 12 20:37:40 IST 2026
[2026-06-12 20:37:40,220.220 INFO    ] ================================================
[2026-06-12 20:37:40,537.537 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 20:37:40
[2026-06-12 20:37:40,856.856 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 20:37:40,998.998 INFO    ] Initializing speech engine...
[2026-06-12 20:37:41,003.003 INFO    ] 2026-06-12 20:37:40
[2026-06-12 20:37:41,223.223 INFO    ] 2026-06-12 20:37:41
[2026-06-12 20:37:41,252.252 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 20:37:41,376.376 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 20:37:41,439.439 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 20:37:41,575.575 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 20:37:41,643.643 INFO    ] time= 12/06/2026 20:37:41
[2026-06-12 20:37:41,672.672 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 20:37:41,678.678 INFO    ] Checking for existing commands in stream...
[2026-06-12 20:37:41,746.746 INFO    ] No existing commands found in stream
[2026-06-12 20:37:46,755.755 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 20:37:46,758.758 INFO    ] Waiting 2.23 seconds before fallback handling...
[2026-06-12 20:37:49,368.368 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 20:37:49,370.370 INFO    ] Checking for system updates...
[2026-06-12 20:37:49,390.390 INFO    ] 200
[2026-06-12 20:37:49,392.392 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:37:49,422.422 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 20:37:49,423.423 INFO    ] No update needed
[2026-06-12 20:37:49,424.424 INFO    ] Checking for camera pi updates...
[2026-06-12 20:37:49,446.446 INFO    ] 200
[2026-06-12 20:37:49,447.447 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:37:49,472.472 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 20:37:49,517.517 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 20:37:49,518.518 INFO    ] No camera update needed
[2026-06-12 20:37:49,520.520 INFO    ] Script finished. Safe exiting...
[2026-06-12 20:37:49,521.521 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 20:37:49,524.524 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 20:37:49,527.527 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 20:37:51,567.567 INFO    ] ================================================
[2026-06-12 20:37:51,582.582 INFO    ] Launching Daemon at Fri Jun 12 20:37:51 IST 2026
[2026-06-12 20:37:51,593.593 INFO    ] ================================================
[2026-06-12 20:37:51,993.993 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 20:37:51
[2026-06-12 20:37:52,337.337 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 20:37:52,494.494 INFO    ] Initializing speech engine...
[2026-06-12 20:37:52,501.501 INFO    ] 2026-06-12 20:37:52
[2026-06-12 20:37:52,706.706 INFO    ] 2026-06-12 20:37:52
[2026-06-12 20:37:52,735.735 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 20:37:52,918.918 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 20:37:52,928.928 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 20:37:53,062.062 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 20:37:53,124.124 INFO    ] time= 12/06/2026 20:37:53
[2026-06-12 20:37:53,147.147 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 20:37:53,154.154 INFO    ] Checking for existing commands in stream...
[2026-06-12 20:37:53,243.243 INFO    ] No existing commands found in stream
[2026-06-12 20:37:58,273.273 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 20:37:58,276.276 INFO    ] Waiting 3.87 seconds before fallback handling...
[2026-06-12 20:38:02,487.487 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 20:38:02,489.489 INFO    ] Checking for system updates...
[2026-06-12 20:38:02,510.510 INFO    ] 200
[2026-06-12 20:38:02,511.511 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:38:02,549.549 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 20:38:02,551.551 INFO    ] No update needed
[2026-06-12 20:38:02,552.552 INFO    ] Checking for camera pi updates...
[2026-06-12 20:38:02,571.571 INFO    ] 200
[2026-06-12 20:38:02,573.573 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:38:02,596.596 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 20:38:02,639.639 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 20:38:02,641.641 INFO    ] No camera update needed
[2026-06-12 20:38:02,642.642 INFO    ] Script finished. Safe exiting...
[2026-06-12 20:38:02,644.644 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 20:38:02,647.647 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 20:38:02,650.650 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 20:38:04,691.691 INFO    ] ================================================
[2026-06-12 20:38:04,707.707 INFO    ] Launching Daemon at Fri Jun 12 20:38:04 IST 2026
[2026-06-12 20:38:04,717.717 INFO    ] ================================================
[2026-06-12 20:38:05,093.093 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 20:38:05
[2026-06-12 20:38:05,431.431 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 20:38:05,601.601 INFO    ] Initializing speech engine...
[2026-06-12 20:38:05,607.607 INFO    ] 2026-06-12 20:38:05
[2026-06-12 20:38:05,815.815 INFO    ] 2026-06-12 20:38:05
[2026-06-12 20:38:05,843.843 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 20:38:06,027.027 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 20:38:06,031.031 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 20:38:06,166.166 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 20:38:06,225.225 INFO    ] time= 12/06/2026 20:38:06
[2026-06-12 20:38:06,257.257 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 20:38:06,264.264 INFO    ] Checking for existing commands in stream...
[2026-06-12 20:38:06,331.331 INFO    ] No existing commands found in stream
[2026-06-12 20:38:11,350.350 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 20:38:11,354.354 INFO    ] Waiting 2.20 seconds before fallback handling...
[2026-06-12 20:38:14,393.393 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 20:38:14,394.394 INFO    ] Checking for system updates...
[2026-06-12 20:38:14,415.415 INFO    ] 200
[2026-06-12 20:38:14,416.416 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:38:14,446.446 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 20:38:14,447.447 INFO    ] No update needed
[2026-06-12 20:38:14,449.449 INFO    ] Checking for camera pi updates...
[2026-06-12 20:38:14,483.483 INFO    ] 200
[2026-06-12 20:38:14,486.486 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:38:14,527.527 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 20:38:14,559.559 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 20:38:14,562.562 INFO    ] No camera update needed
[2026-06-12 20:38:14,565.565 INFO    ] Script finished. Safe exiting...
[2026-06-12 20:38:14,567.567 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 20:38:14,573.573 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 20:38:14,579.579 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 20:38:16,620.620 INFO    ] ================================================
[2026-06-12 20:38:16,635.635 INFO    ] Launching Daemon at Fri Jun 12 20:38:16 IST 2026
[2026-06-12 20:38:16,646.646 INFO    ] ================================================
[2026-06-12 20:38:17,005.005 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 20:38:17
[2026-06-12 20:38:17,323.323 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 20:38:17,476.476 INFO    ] Initializing speech engine...
[2026-06-12 20:38:17,481.481 INFO    ] 2026-06-12 20:38:17
[2026-06-12 20:38:17,686.686 INFO    ] 2026-06-12 20:38:17
[2026-06-12 20:38:17,714.714 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 20:38:17,898.898 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 20:38:17,907.907 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 20:38:18,048.048 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 20:38:18,105.105 INFO    ] time= 12/06/2026 20:38:18
[2026-06-12 20:38:18,128.128 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 20:38:18,135.135 INFO    ] Checking for existing commands in stream...
[2026-06-12 20:38:18,201.201 INFO    ] No existing commands found in stream
[2026-06-12 20:38:23,215.215 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 20:38:23,219.219 INFO    ] Waiting 2.56 seconds before fallback handling...
[2026-06-12 20:38:26,160.160 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 20:38:26,161.161 INFO    ] Checking for system updates...
[2026-06-12 20:38:26,183.183 INFO    ] 200
[2026-06-12 20:38:26,185.185 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:38:26,215.215 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 20:38:26,216.216 INFO    ] No update needed
[2026-06-12 20:38:26,217.217 INFO    ] Checking for camera pi updates...
[2026-06-12 20:38:26,238.238 INFO    ] 200
[2026-06-12 20:38:26,239.239 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:38:26,263.263 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 20:38:26,316.316 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 20:38:26,318.318 INFO    ] No camera update needed
[2026-06-12 20:38:26,319.319 INFO    ] Script finished. Safe exiting...
[2026-06-12 20:38:26,321.321 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 20:38:26,324.324 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 20:38:26,326.326 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 20:38:28,363.363 INFO    ] ================================================
[2026-06-12 20:38:28,379.379 INFO    ] Launching Daemon at Fri Jun 12 20:38:28 IST 2026
[2026-06-12 20:38:28,389.389 INFO    ] ================================================
[2026-06-12 20:38:28,767.767 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 20:38:28
[2026-06-12 20:38:29,105.105 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 20:38:29,257.257 INFO    ] Initializing speech engine...
[2026-06-12 20:38:29,263.263 INFO    ] 2026-06-12 20:38:29
[2026-06-12 20:38:29,469.469 INFO    ] 2026-06-12 20:38:29
[2026-06-12 20:38:29,497.497 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 20:38:29,681.681 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 20:38:29,684.684 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 20:38:29,821.821 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 20:38:29,889.889 INFO    ] time= 12/06/2026 20:38:29
[2026-06-12 20:38:29,912.912 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 20:38:29,919.919 INFO    ] Checking for existing commands in stream...
[2026-06-12 20:38:29,986.986 INFO    ] No existing commands found in stream
[2026-06-12 20:38:35,000.000 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 20:38:35,003.003 INFO    ] Waiting 2.51 seconds before fallback handling...
[2026-06-12 20:38:37,908.908 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 20:38:37,910.910 INFO    ] Checking for system updates...
[2026-06-12 20:38:37,931.931 INFO    ] 200
[2026-06-12 20:38:37,933.933 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:38:37,963.963 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 20:38:37,964.964 INFO    ] No update needed
[2026-06-12 20:38:37,965.965 INFO    ] Checking for camera pi updates...
[2026-06-12 20:38:37,984.984 INFO    ] 200
[2026-06-12 20:38:37,986.986 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:38:38,009.009 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 20:38:38,049.049 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 20:38:38,051.051 INFO    ] No camera update needed
[2026-06-12 20:38:38,052.052 INFO    ] Script finished. Safe exiting...
[2026-06-12 20:38:38,053.053 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 20:38:38,056.056 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 20:38:38,059.059 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 20:38:40,099.099 INFO    ] ================================================
[2026-06-12 20:38:40,114.114 INFO    ] Launching Daemon at Fri Jun 12 20:38:40 IST 2026
[2026-06-12 20:38:40,125.125 INFO    ] ================================================
[2026-06-12 20:38:40,513.513 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 20:38:40
[2026-06-12 20:38:40,853.853 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 20:38:41,005.005 INFO    ] Initializing speech engine...
[2026-06-12 20:38:41,010.010 INFO    ] 2026-06-12 20:38:41
[2026-06-12 20:38:41,218.218 INFO    ] 2026-06-12 20:38:41
[2026-06-12 20:38:41,248.248 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 20:38:41,389.389 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 20:38:41,441.441 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 20:38:41,585.585 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 20:38:41,647.647 INFO    ] time= 12/06/2026 20:38:41
[2026-06-12 20:38:41,679.679 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 20:38:41,692.692 INFO    ] Checking for existing commands in stream...
[2026-06-12 20:38:41,795.795 INFO    ] No existing commands found in stream
[2026-06-12 20:38:46,806.806 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 20:38:46,809.809 INFO    ] Waiting 0.97 seconds before fallback handling...
[2026-06-12 20:38:48,170.170 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 20:38:48,171.171 INFO    ] Checking for system updates...
[2026-06-12 20:38:48,192.192 INFO    ] 200
[2026-06-12 20:38:48,194.194 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:38:48,223.223 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 20:38:48,225.225 INFO    ] No update needed
[2026-06-12 20:38:48,226.226 INFO    ] Checking for camera pi updates...
[2026-06-12 20:38:48,245.245 INFO    ] 200
[2026-06-12 20:38:48,246.246 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:38:48,269.269 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 20:38:48,311.311 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 20:38:48,312.312 INFO    ] No camera update needed
[2026-06-12 20:38:48,314.314 INFO    ] Script finished. Safe exiting...
[2026-06-12 20:38:48,315.315 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 20:38:48,318.318 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 20:38:48,321.321 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 20:38:50,359.359 INFO    ] ================================================
[2026-06-12 20:38:50,374.374 INFO    ] Launching Daemon at Fri Jun 12 20:38:50 IST 2026
[2026-06-12 20:38:50,384.384 INFO    ] ================================================
[2026-06-12 20:38:50,723.723 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 20:38:50
[2026-06-12 20:38:51,038.038 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 20:38:51,170.170 INFO    ] Initializing speech engine...
[2026-06-12 20:38:51,178.178 INFO    ] 2026-06-12 20:38:51
[2026-06-12 20:38:51,391.391 INFO    ] 2026-06-12 20:38:51
[2026-06-12 20:38:51,421.421 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 20:38:51,585.585 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 20:38:51,609.609 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 20:38:51,747.747 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 20:38:51,811.811 INFO    ] time= 12/06/2026 20:38:51
[2026-06-12 20:38:51,839.839 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 20:38:51,841.841 INFO    ] Checking for existing commands in stream...
[2026-06-12 20:38:51,914.914 INFO    ] No existing commands found in stream
[2026-06-12 20:38:56,922.922 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 20:38:56,925.925 INFO    ] Waiting 3.96 seconds before fallback handling...
[2026-06-12 20:39:01,266.266 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 20:39:01,268.268 INFO    ] Checking for system updates...
[2026-06-12 20:39:01,290.290 INFO    ] 200
[2026-06-12 20:39:01,291.291 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:39:01,323.323 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 20:39:01,324.324 INFO    ] No update needed
[2026-06-12 20:39:01,325.325 INFO    ] Checking for camera pi updates...
[2026-06-12 20:39:01,345.345 INFO    ] 200
[2026-06-12 20:39:01,346.346 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:39:01,370.370 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 20:39:01,508.508 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 20:39:01,509.509 INFO    ] No camera update needed
[2026-06-12 20:39:01,511.511 INFO    ] Script finished. Safe exiting...
[2026-06-12 20:39:01,512.512 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 20:39:01,515.515 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 20:39:01,518.518 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 20:39:03,549.549 INFO    ] ================================================
[2026-06-12 20:39:03,564.564 INFO    ] Launching Daemon at Fri Jun 12 20:39:03 IST 2026
[2026-06-12 20:39:03,575.575 INFO    ] ================================================
[2026-06-12 20:39:03,925.925 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 20:39:03
[2026-06-12 20:39:04,243.243 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 20:39:04,380.380 INFO    ] Initializing speech engine...
[2026-06-12 20:39:04,389.389 INFO    ] 2026-06-12 20:39:04
[2026-06-12 20:39:04,595.595 INFO    ] 2026-06-12 20:39:04
[2026-06-12 20:39:04,623.623 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 20:39:04,751.751 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 20:39:04,809.809 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 20:39:04,944.944 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 20:39:05,010.010 INFO    ] time= 12/06/2026 20:39:04
[2026-06-12 20:39:05,037.037 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 20:39:05,043.043 INFO    ] Checking for existing commands in stream...
[2026-06-12 20:39:05,109.109 INFO    ] No existing commands found in stream
[2026-06-12 20:39:10,120.120 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 20:39:10,123.123 INFO    ] Waiting 2.99 seconds before fallback handling...
[2026-06-12 20:39:13,487.487 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 20:39:13,488.488 INFO    ] Checking for system updates...
[2026-06-12 20:39:13,508.508 INFO    ] 200
[2026-06-12 20:39:13,510.510 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:39:13,540.540 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 20:39:13,541.541 INFO    ] No update needed
[2026-06-12 20:39:13,542.542 INFO    ] Checking for camera pi updates...
[2026-06-12 20:39:13,561.561 INFO    ] 200
[2026-06-12 20:39:13,563.563 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:39:13,587.587 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 20:39:13,640.640 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 20:39:13,642.642 INFO    ] No camera update needed
[2026-06-12 20:39:13,643.643 INFO    ] Script finished. Safe exiting...
[2026-06-12 20:39:13,644.644 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 20:39:13,647.647 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 20:39:13,650.650 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 20:39:15,681.681 INFO    ] ================================================
[2026-06-12 20:39:15,696.696 INFO    ] Launching Daemon at Fri Jun 12 20:39:15 IST 2026
[2026-06-12 20:39:15,707.707 INFO    ] ================================================
[2026-06-12 20:39:16,062.062 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 20:39:16
[2026-06-12 20:39:16,398.398 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 20:39:16,548.548 INFO    ] Initializing speech engine...
[2026-06-12 20:39:16,553.553 INFO    ] 2026-06-12 20:39:16
[2026-06-12 20:39:16,761.761 INFO    ] 2026-06-12 20:39:16
[2026-06-12 20:39:16,789.789 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 20:39:16,973.973 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 20:39:16,982.982 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 20:39:17,127.127 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 20:39:17,178.178 INFO    ] time= 12/06/2026 20:39:17
[2026-06-12 20:39:17,201.201 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 20:39:17,208.208 INFO    ] Checking for existing commands in stream...
[2026-06-12 20:39:17,274.274 INFO    ] No existing commands found in stream
[2026-06-12 20:39:22,288.288 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 20:39:22,292.292 INFO    ] Waiting 1.10 seconds before fallback handling...
[2026-06-12 20:39:23,759.759 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 20:39:23,761.761 INFO    ] Checking for system updates...
[2026-06-12 20:39:23,782.782 INFO    ] 200
[2026-06-12 20:39:23,783.783 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:39:23,815.815 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 20:39:23,817.817 INFO    ] No update needed
[2026-06-12 20:39:23,818.818 INFO    ] Checking for camera pi updates...
[2026-06-12 20:39:23,841.841 INFO    ] 200
[2026-06-12 20:39:23,842.842 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:39:23,866.866 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 20:39:23,912.912 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 20:39:23,913.913 INFO    ] No camera update needed
[2026-06-12 20:39:23,915.915 INFO    ] Script finished. Safe exiting...
[2026-06-12 20:39:23,916.916 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 20:39:23,919.919 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 20:39:23,921.921 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 20:39:25,962.962 INFO    ] ================================================
[2026-06-12 20:39:25,977.977 INFO    ] Launching Daemon at Fri Jun 12 20:39:25 IST 2026
[2026-06-12 20:39:25,987.987 INFO    ] ================================================
[2026-06-12 20:39:26,375.375 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 20:39:26
[2026-06-12 20:39:26,710.710 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 20:39:26,847.847 INFO    ] Initializing speech engine...
[2026-06-12 20:39:26,855.855 INFO    ] 2026-06-12 20:39:26
[2026-06-12 20:39:27,070.070 INFO    ] 2026-06-12 20:39:27
[2026-06-12 20:39:27,099.099 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 20:39:27,284.284 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 20:39:27,294.294 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 20:39:27,414.414 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 20:39:27,472.472 INFO    ] time= 12/06/2026 20:39:27
[2026-06-12 20:39:27,499.499 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 20:39:27,515.515 INFO    ] Checking for existing commands in stream...
[2026-06-12 20:39:27,586.586 INFO    ] No existing commands found in stream
[2026-06-12 20:39:32,599.599 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 20:39:32,601.601 INFO    ] Waiting 2.83 seconds before fallback handling...
[2026-06-12 20:39:35,820.820 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 20:39:35,821.821 INFO    ] Checking for system updates...
[2026-06-12 20:39:35,843.843 INFO    ] 200
[2026-06-12 20:39:35,845.845 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:39:35,878.878 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 20:39:35,879.879 INFO    ] No update needed
[2026-06-12 20:39:35,881.881 INFO    ] Checking for camera pi updates...
[2026-06-12 20:39:35,900.900 INFO    ] 200
[2026-06-12 20:39:35,902.902 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:39:35,925.925 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 20:39:35,972.972 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 20:39:35,974.974 INFO    ] No camera update needed
[2026-06-12 20:39:35,975.975 INFO    ] Script finished. Safe exiting...
[2026-06-12 20:39:35,976.976 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 20:39:35,979.979 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 20:39:35,982.982 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 20:39:38,021.021 INFO    ] ================================================
[2026-06-12 20:39:38,036.036 INFO    ] Launching Daemon at Fri Jun 12 20:39:38 IST 2026
[2026-06-12 20:39:38,047.047 INFO    ] ================================================
[2026-06-12 20:39:38,429.429 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 20:39:38
[2026-06-12 20:39:38,763.763 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 20:39:38,907.907 INFO    ] Initializing speech engine...
[2026-06-12 20:39:38,917.917 INFO    ] 2026-06-12 20:39:38
[2026-06-12 20:39:39,130.130 INFO    ] 2026-06-12 20:39:39
[2026-06-12 20:39:39,159.159 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 20:39:39,346.346 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 20:39:39,355.355 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 20:39:39,481.481 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 20:39:39,542.542 INFO    ] time= 12/06/2026 20:39:39
[2026-06-12 20:39:39,577.577 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 20:39:39,583.583 INFO    ] Checking for existing commands in stream...
[2026-06-12 20:39:39,655.655 INFO    ] No existing commands found in stream
[2026-06-12 20:39:44,688.688 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 20:39:44,691.691 INFO    ] Waiting 2.26 seconds before fallback handling...
[2026-06-12 20:39:47,320.320 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 20:39:47,322.322 INFO    ] Checking for system updates...
[2026-06-12 20:39:47,342.342 INFO    ] 200
[2026-06-12 20:39:47,344.344 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:39:47,374.374 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 20:39:47,375.375 INFO    ] No update needed
[2026-06-12 20:39:47,376.376 INFO    ] Checking for camera pi updates...
[2026-06-12 20:39:47,397.397 INFO    ] 200
[2026-06-12 20:39:47,398.398 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:39:47,424.424 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 20:39:47,468.468 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 20:39:47,470.470 INFO    ] No camera update needed
[2026-06-12 20:39:47,471.471 INFO    ] Script finished. Safe exiting...
[2026-06-12 20:39:47,472.472 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 20:39:47,476.476 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 20:39:47,480.480 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 20:39:49,519.519 INFO    ] ================================================
[2026-06-12 20:39:49,534.534 INFO    ] Launching Daemon at Fri Jun 12 20:39:49 IST 2026
[2026-06-12 20:39:49,545.545 INFO    ] ================================================
[2026-06-12 20:39:49,905.905 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 20:39:49
[2026-06-12 20:39:50,222.222 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 20:39:50,355.355 INFO    ] Initializing speech engine...
[2026-06-12 20:39:50,360.360 INFO    ] 2026-06-12 20:39:50
[2026-06-12 20:39:50,591.591 INFO    ] 2026-06-12 20:39:50
[2026-06-12 20:39:50,621.621 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 20:39:50,753.753 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 20:39:50,791.791 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 20:39:50,959.959 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 20:39:51,027.027 INFO    ] time= 12/06/2026 20:39:50
[2026-06-12 20:39:51,060.060 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 20:39:51,066.066 INFO    ] Checking for existing commands in stream...
[2026-06-12 20:39:51,169.169 INFO    ] No existing commands found in stream
[2026-06-12 20:39:56,178.178 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 20:39:56,181.181 INFO    ] Waiting 2.50 seconds before fallback handling...
[2026-06-12 20:39:59,020.020 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 20:39:59,022.022 INFO    ] Checking for system updates...
[2026-06-12 20:39:59,043.043 INFO    ] 200
[2026-06-12 20:39:59,044.044 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:39:59,074.074 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 20:39:59,075.075 INFO    ] No update needed
[2026-06-12 20:39:59,076.076 INFO    ] Checking for camera pi updates...
[2026-06-12 20:39:59,097.097 INFO    ] 200
[2026-06-12 20:39:59,098.098 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:39:59,124.124 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 20:39:59,174.174 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 20:39:59,175.175 INFO    ] No camera update needed
[2026-06-12 20:39:59,176.176 INFO    ] Script finished. Safe exiting...
[2026-06-12 20:39:59,178.178 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 20:39:59,181.181 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 20:39:59,184.184 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 20:40:01,223.223 INFO    ] ================================================
[2026-06-12 20:40:01,238.238 INFO    ] Launching Daemon at Fri Jun 12 20:40:01 IST 2026
[2026-06-12 20:40:01,249.249 INFO    ] ================================================
[2026-06-12 20:40:01,592.592 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 20:40:01
[2026-06-12 20:40:02,113.113 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 20:40:02,471.471 INFO    ] Initializing speech engine...
[2026-06-12 20:40:02,474.474 INFO    ] 2026-06-12 20:40:02
[2026-06-12 20:40:02,732.732 INFO    ] 2026-06-12 20:40:02
[2026-06-12 20:40:02,759.759 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 20:40:02,882.882 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 20:40:02,885.885 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 20:40:02,984.984 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 20:40:02,986.986 INFO    ] time= 12/06/2026 20:40:02
[2026-06-12 20:40:02,987.987 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 20:40:02,989.989 INFO    ] Checking for existing commands in stream...
[2026-06-12 20:40:03,086.086 INFO    ] No existing commands found in stream
[2026-06-12 20:40:08,110.110 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 20:40:08,113.113 INFO    ] Waiting 3.09 seconds before fallback handling...
[2026-06-12 20:40:11,584.584 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 20:40:11,586.586 INFO    ] Checking for system updates...
[2026-06-12 20:40:11,606.606 INFO    ] 200
[2026-06-12 20:40:11,607.607 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:40:11,637.637 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 20:40:11,638.638 INFO    ] No update needed
[2026-06-12 20:40:11,640.640 INFO    ] Checking for camera pi updates...
[2026-06-12 20:40:11,659.659 INFO    ] 200
[2026-06-12 20:40:11,660.660 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:40:11,683.683 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 20:40:11,724.724 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 20:40:11,725.725 INFO    ] No camera update needed
[2026-06-12 20:40:11,727.727 INFO    ] Script finished. Safe exiting...
[2026-06-12 20:40:11,728.728 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 20:40:11,731.731 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 20:40:11,734.734 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 20:40:13,772.772 INFO    ] ================================================
[2026-06-12 20:40:13,787.787 INFO    ] Launching Daemon at Fri Jun 12 20:40:13 IST 2026
[2026-06-12 20:40:13,798.798 INFO    ] ================================================
[2026-06-12 20:40:14,140.140 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 20:40:14
[2026-06-12 20:40:14,476.476 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 20:40:14,626.626 INFO    ] Initializing speech engine...
[2026-06-12 20:40:14,632.632 INFO    ] 2026-06-12 20:40:14
[2026-06-12 20:40:14,839.839 INFO    ] 2026-06-12 20:40:14
[2026-06-12 20:40:14,867.867 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 20:40:15,053.053 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 20:40:15,063.063 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 20:40:15,193.193 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 20:40:15,260.260 INFO    ] time= 12/06/2026 20:40:15
[2026-06-12 20:40:15,285.285 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 20:40:15,286.286 INFO    ] Checking for existing commands in stream...
[2026-06-12 20:40:15,382.382 INFO    ] No existing commands found in stream
[2026-06-12 20:40:20,391.391 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 20:40:20,394.394 INFO    ] Waiting 2.84 seconds before fallback handling...
[2026-06-12 20:40:23,615.615 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 20:40:23,616.616 INFO    ] Checking for system updates...
[2026-06-12 20:40:23,637.637 INFO    ] 200
[2026-06-12 20:40:23,639.639 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:40:23,669.669 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 20:40:23,671.671 INFO    ] No update needed
[2026-06-12 20:40:23,672.672 INFO    ] Checking for camera pi updates...
[2026-06-12 20:40:23,692.692 INFO    ] 200
[2026-06-12 20:40:23,693.693 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:40:23,716.716 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 20:40:23,758.758 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 20:40:23,760.760 INFO    ] No camera update needed
[2026-06-12 20:40:23,761.761 INFO    ] Script finished. Safe exiting...
[2026-06-12 20:40:23,762.762 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 20:40:23,766.766 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 20:40:23,768.768 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 20:40:25,808.808 INFO    ] ================================================
[2026-06-12 20:40:25,823.823 INFO    ] Launching Daemon at Fri Jun 12 20:40:25 IST 2026
[2026-06-12 20:40:25,833.833 INFO    ] ================================================
[2026-06-12 20:40:26,191.191 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 20:40:26
[2026-06-12 20:40:26,502.502 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 20:40:26,632.632 INFO    ] Initializing speech engine...
[2026-06-12 20:40:26,636.636 INFO    ] 2026-06-12 20:40:26
[2026-06-12 20:40:26,854.854 INFO    ] 2026-06-12 20:40:26
[2026-06-12 20:40:26,883.883 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 20:40:27,042.042 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 20:40:27,071.071 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 20:40:27,203.203 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 20:40:27,254.254 INFO    ] time= 12/06/2026 20:40:27
[2026-06-12 20:40:27,294.294 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 20:40:27,304.304 INFO    ] Checking for existing commands in stream...
[2026-06-12 20:40:27,377.377 INFO    ] No existing commands found in stream
[2026-06-12 20:40:32,381.381 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 20:40:32,383.383 INFO    ] Waiting 1.76 seconds before fallback handling...
[2026-06-12 20:40:34,536.536 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 20:40:34,538.538 INFO    ] Checking for system updates...
[2026-06-12 20:40:34,558.558 INFO    ] 200
[2026-06-12 20:40:34,560.560 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:40:34,592.592 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 20:40:34,593.593 INFO    ] No update needed
[2026-06-12 20:40:34,595.595 INFO    ] Checking for camera pi updates...
[2026-06-12 20:40:34,613.613 INFO    ] 200
[2026-06-12 20:40:34,615.615 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:40:34,638.638 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 20:40:34,690.690 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 20:40:34,691.691 INFO    ] No camera update needed
[2026-06-12 20:40:34,692.692 INFO    ] Script finished. Safe exiting...
[2026-06-12 20:40:34,694.694 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 20:40:34,697.697 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 20:40:34,699.699 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 20:40:36,737.737 INFO    ] ================================================
[2026-06-12 20:40:36,752.752 INFO    ] Launching Daemon at Fri Jun 12 20:40:36 IST 2026
[2026-06-12 20:40:36,763.763 INFO    ] ================================================
[2026-06-12 20:40:37,078.078 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 20:40:37
[2026-06-12 20:40:37,391.391 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 20:40:37,533.533 INFO    ] Initializing speech engine...
[2026-06-12 20:40:37,538.538 INFO    ] 2026-06-12 20:40:37
[2026-06-12 20:40:37,744.744 INFO    ] 2026-06-12 20:40:37
[2026-06-12 20:40:37,772.772 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 20:40:37,957.957 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 20:40:37,966.966 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 20:40:38,097.097 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 20:40:38,165.165 INFO    ] time= 12/06/2026 20:40:38
[2026-06-12 20:40:38,189.189 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 20:40:38,191.191 INFO    ] Checking for existing commands in stream...
[2026-06-12 20:40:38,286.286 INFO    ] No existing commands found in stream
[2026-06-12 20:40:43,295.295 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 20:40:43,298.298 INFO    ] Waiting 3.77 seconds before fallback handling...
[2026-06-12 20:40:47,455.455 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 20:40:47,457.457 INFO    ] Checking for system updates...
[2026-06-12 20:40:47,477.477 INFO    ] 200
[2026-06-12 20:40:47,478.478 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:40:47,510.510 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 20:40:47,511.511 INFO    ] No update needed
[2026-06-12 20:40:47,513.513 INFO    ] Checking for camera pi updates...
[2026-06-12 20:40:47,535.535 INFO    ] 200
[2026-06-12 20:40:47,536.536 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:40:47,559.559 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 20:40:47,620.620 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 20:40:47,622.622 INFO    ] No camera update needed
[2026-06-12 20:40:47,623.623 INFO    ] Script finished. Safe exiting...
[2026-06-12 20:40:47,624.624 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 20:40:47,627.627 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 20:40:47,630.630 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 20:40:49,670.670 INFO    ] ================================================
[2026-06-12 20:40:49,685.685 INFO    ] Launching Daemon at Fri Jun 12 20:40:49 IST 2026
[2026-06-12 20:40:49,696.696 INFO    ] ================================================
[2026-06-12 20:40:50,076.076 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 20:40:50
[2026-06-12 20:40:50,387.387 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 20:40:50,532.532 INFO    ] Initializing speech engine...
[2026-06-12 20:40:50,537.537 INFO    ] 2026-06-12 20:40:50
[2026-06-12 20:40:50,744.744 INFO    ] 2026-06-12 20:40:50
[2026-06-12 20:40:50,773.773 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 20:40:50,960.960 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 20:40:50,969.969 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 20:40:51,117.117 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 20:40:51,170.170 INFO    ] time= 12/06/2026 20:40:51
[2026-06-12 20:40:51,194.194 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 20:40:51,200.200 INFO    ] Checking for existing commands in stream...
[2026-06-12 20:40:51,267.267 INFO    ] No existing commands found in stream
[2026-06-12 20:40:56,278.278 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 20:40:56,281.281 INFO    ] Waiting 3.17 seconds before fallback handling...
[2026-06-12 20:40:59,834.834 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 20:40:59,835.835 INFO    ] Checking for system updates...
[2026-06-12 20:40:59,857.857 INFO    ] 200
[2026-06-12 20:40:59,858.858 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:40:59,887.887 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 20:40:59,889.889 INFO    ] No update needed
[2026-06-12 20:40:59,890.890 INFO    ] Checking for camera pi updates...
[2026-06-12 20:40:59,910.910 INFO    ] 200
[2026-06-12 20:40:59,911.911 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:40:59,934.934 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 20:40:59,990.990 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 20:40:59,992.992 INFO    ] No camera update needed
[2026-06-12 20:40:59,993.993 INFO    ] Script finished. Safe exiting...
[2026-06-12 20:40:59,994.994 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 20:40:59,997.997 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 20:41:00,000.000 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 20:41:02,033.033 INFO    ] ================================================
[2026-06-12 20:41:02,044.044 INFO    ] Launching Daemon at Fri Jun 12 20:41:02 IST 2026
[2026-06-12 20:41:02,057.057 INFO    ] ================================================
[2026-06-12 20:41:02,431.431 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 20:41:02
[2026-06-12 20:41:02,759.759 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 20:41:02,902.902 INFO    ] Initializing speech engine...
[2026-06-12 20:41:02,907.907 INFO    ] 2026-06-12 20:41:02
[2026-06-12 20:41:03,110.110 INFO    ] 2026-06-12 20:41:03
[2026-06-12 20:41:03,139.139 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 20:41:03,262.262 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 20:41:03,325.325 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 20:41:03,462.462 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 20:41:03,526.526 INFO    ] time= 12/06/2026 20:41:03
[2026-06-12 20:41:03,553.553 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 20:41:03,559.559 INFO    ] Checking for existing commands in stream...
[2026-06-12 20:41:03,625.625 INFO    ] No existing commands found in stream
[2026-06-12 20:41:08,634.634 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 20:41:08,637.637 INFO    ] Waiting 3.55 seconds before fallback handling...
[2026-06-12 20:41:12,564.564 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 20:41:12,566.566 INFO    ] Checking for system updates...
[2026-06-12 20:41:12,587.587 INFO    ] 200
[2026-06-12 20:41:12,588.588 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:41:12,620.620 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 20:41:12,622.622 INFO    ] No update needed
[2026-06-12 20:41:12,623.623 INFO    ] Checking for camera pi updates...
[2026-06-12 20:41:12,642.642 INFO    ] 200
[2026-06-12 20:41:12,643.643 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:41:12,669.669 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 20:41:12,713.713 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 20:41:12,714.714 INFO    ] No camera update needed
[2026-06-12 20:41:12,715.715 INFO    ] Script finished. Safe exiting...
[2026-06-12 20:41:12,717.717 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 20:41:12,720.720 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 20:41:12,722.722 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 20:41:14,762.762 INFO    ] ================================================
[2026-06-12 20:41:14,778.778 INFO    ] Launching Daemon at Fri Jun 12 20:41:14 IST 2026
[2026-06-12 20:41:14,788.788 INFO    ] ================================================
[2026-06-12 20:41:15,176.176 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 20:41:15
[2026-06-12 20:41:15,511.511 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 20:41:15,656.656 INFO    ] Initializing speech engine...
[2026-06-12 20:41:15,666.666 INFO    ] 2026-06-12 20:41:15
[2026-06-12 20:41:15,881.881 INFO    ] 2026-06-12 20:41:15
[2026-06-12 20:41:15,910.910 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 20:41:16,096.096 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 20:41:16,099.099 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 20:41:16,244.244 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 20:41:16,307.307 INFO    ] time= 12/06/2026 20:41:16
[2026-06-12 20:41:16,331.331 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 20:41:16,337.337 INFO    ] Checking for existing commands in stream...
[2026-06-12 20:41:16,404.404 INFO    ] No existing commands found in stream
[2026-06-12 20:41:21,414.414 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 20:41:21,417.417 INFO    ] Waiting 3.96 seconds before fallback handling...
[2026-06-12 20:41:25,773.773 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 20:41:25,774.774 INFO    ] Checking for system updates...
[2026-06-12 20:41:25,795.795 INFO    ] 200
[2026-06-12 20:41:25,797.797 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:41:25,829.829 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 20:41:25,830.830 INFO    ] No update needed
[2026-06-12 20:41:25,832.832 INFO    ] Checking for camera pi updates...
[2026-06-12 20:41:25,855.855 INFO    ] 200
[2026-06-12 20:41:25,856.856 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:41:25,882.882 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 20:41:25,928.928 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 20:41:25,929.929 INFO    ] No camera update needed
[2026-06-12 20:41:25,931.931 INFO    ] Script finished. Safe exiting...
[2026-06-12 20:41:25,932.932 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 20:41:25,935.935 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 20:41:25,938.938 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 20:41:27,976.976 INFO    ] ================================================
[2026-06-12 20:41:27,991.991 INFO    ] Launching Daemon at Fri Jun 12 20:41:27 IST 2026
[2026-06-12 20:41:28,002.002 INFO    ] ================================================
[2026-06-12 20:41:28,331.331 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 20:41:28
[2026-06-12 20:41:28,643.643 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 20:41:28,774.774 INFO    ] Initializing speech engine...
[2026-06-12 20:41:28,782.782 INFO    ] 2026-06-12 20:41:28
[2026-06-12 20:41:28,996.996 INFO    ] 2026-06-12 20:41:28
[2026-06-12 20:41:29,025.025 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 20:41:29,211.211 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 20:41:29,221.221 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 20:41:29,368.368 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 20:41:29,421.421 INFO    ] time= 12/06/2026 20:41:29
[2026-06-12 20:41:29,444.444 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 20:41:29,450.450 INFO    ] Checking for existing commands in stream...
[2026-06-12 20:41:29,518.518 INFO    ] No existing commands found in stream
[2026-06-12 20:41:34,527.527 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 20:41:34,530.530 INFO    ] Waiting 3.87 seconds before fallback handling...
[2026-06-12 20:41:38,782.782 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 20:41:38,784.784 INFO    ] Checking for system updates...
[2026-06-12 20:41:38,805.805 INFO    ] 200
[2026-06-12 20:41:38,807.807 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:41:38,837.837 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 20:41:38,838.838 INFO    ] No update needed
[2026-06-12 20:41:38,839.839 INFO    ] Checking for camera pi updates...
[2026-06-12 20:41:38,859.859 INFO    ] 200
[2026-06-12 20:41:38,860.860 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:41:38,883.883 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 20:41:38,926.926 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 20:41:38,928.928 INFO    ] No camera update needed
[2026-06-12 20:41:38,929.929 INFO    ] Script finished. Safe exiting...
[2026-06-12 20:41:38,930.930 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 20:41:38,933.933 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 20:41:38,936.936 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 20:41:40,976.976 INFO    ] ================================================
[2026-06-12 20:41:40,991.991 INFO    ] Launching Daemon at Fri Jun 12 20:41:40 IST 2026
[2026-06-12 20:41:41,002.002 INFO    ] ================================================
[2026-06-12 20:41:41,336.336 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 20:41:41
[2026-06-12 20:41:41,649.649 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 20:41:41,790.790 INFO    ] Initializing speech engine...
[2026-06-12 20:41:41,800.800 INFO    ] 2026-06-12 20:41:41
[2026-06-12 20:41:42,002.002 INFO    ] 2026-06-12 20:41:41
[2026-06-12 20:41:42,032.032 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 20:41:42,215.215 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 20:41:42,223.223 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 20:41:42,352.352 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 20:41:42,410.410 INFO    ] time= 12/06/2026 20:41:42
[2026-06-12 20:41:42,442.442 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 20:41:42,444.444 INFO    ] Checking for existing commands in stream...
[2026-06-12 20:41:42,516.516 INFO    ] No existing commands found in stream
[2026-06-12 20:41:47,525.525 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 20:41:47,527.527 INFO    ] Waiting 0.95 seconds before fallback handling...
[2026-06-12 20:41:48,865.865 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 20:41:48,867.867 INFO    ] Checking for system updates...
[2026-06-12 20:41:48,888.888 INFO    ] 200
[2026-06-12 20:41:48,889.889 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:41:48,922.922 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 20:41:48,923.923 INFO    ] No update needed
[2026-06-12 20:41:48,925.925 INFO    ] Checking for camera pi updates...
[2026-06-12 20:41:48,945.945 INFO    ] 200
[2026-06-12 20:41:48,946.946 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:41:48,970.970 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 20:41:49,009.009 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 20:41:49,010.010 INFO    ] No camera update needed
[2026-06-12 20:41:49,012.012 INFO    ] Script finished. Safe exiting...
[2026-06-12 20:41:49,013.013 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 20:41:49,016.016 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 20:41:49,019.019 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 20:41:51,057.057 INFO    ] ================================================
[2026-06-12 20:41:51,073.073 INFO    ] Launching Daemon at Fri Jun 12 20:41:51 IST 2026
[2026-06-12 20:41:51,083.083 INFO    ] ================================================
[2026-06-12 20:41:51,457.457 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 20:41:51
[2026-06-12 20:41:51,773.773 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 20:41:51,908.908 INFO    ] Initializing speech engine...
[2026-06-12 20:41:51,913.913 INFO    ] 2026-06-12 20:41:51
[2026-06-12 20:41:52,141.141 INFO    ] 2026-06-12 20:41:52
[2026-06-12 20:41:52,172.172 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 20:41:52,367.367 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 20:41:52,371.371 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 20:41:52,510.510 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 20:41:52,561.561 INFO    ] time= 12/06/2026 20:41:52
[2026-06-12 20:41:52,594.594 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 20:41:52,617.617 INFO    ] Checking for existing commands in stream...
[2026-06-12 20:41:52,691.691 INFO    ] No existing commands found in stream
[2026-06-12 20:41:57,702.702 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 20:41:57,705.705 INFO    ] Waiting 2.18 seconds before fallback handling...
[2026-06-12 20:42:00,263.263 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 20:42:00,265.265 INFO    ] Checking for system updates...
[2026-06-12 20:42:00,285.285 INFO    ] 200
[2026-06-12 20:42:00,287.287 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:42:00,316.316 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 20:42:00,317.317 INFO    ] No update needed
[2026-06-12 20:42:00,318.318 INFO    ] Checking for camera pi updates...
[2026-06-12 20:42:00,339.339 INFO    ] 200
[2026-06-12 20:42:00,340.340 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:42:00,365.365 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 20:42:00,428.428 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 20:42:00,430.430 INFO    ] No camera update needed
[2026-06-12 20:42:00,431.431 INFO    ] Script finished. Safe exiting...
[2026-06-12 20:42:00,432.432 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 20:42:00,435.435 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 20:42:00,438.438 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 20:42:02,472.472 INFO    ] ================================================
[2026-06-12 20:42:02,482.482 INFO    ] Launching Daemon at Fri Jun 12 20:42:02 IST 2026
[2026-06-12 20:42:02,489.489 INFO    ] ================================================
[2026-06-12 20:42:02,839.839 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 20:42:02
[2026-06-12 20:42:03,170.170 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 20:42:03,320.320 INFO    ] Initializing speech engine...
[2026-06-12 20:42:03,326.326 INFO    ] 2026-06-12 20:42:03
[2026-06-12 20:42:03,532.532 INFO    ] 2026-06-12 20:42:03
[2026-06-12 20:42:03,561.561 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 20:42:03,698.698 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 20:42:03,746.746 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 20:42:03,884.884 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 20:42:03,952.952 INFO    ] time= 12/06/2026 20:42:03
[2026-06-12 20:42:03,976.976 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 20:42:03,982.982 INFO    ] Checking for existing commands in stream...
[2026-06-12 20:42:04,048.048 INFO    ] No existing commands found in stream
[2026-06-12 20:42:09,058.058 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 20:42:09,061.061 INFO    ] Waiting 2.93 seconds before fallback handling...
[2026-06-12 20:42:12,343.343 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 20:42:12,344.344 INFO    ] Checking for system updates...
[2026-06-12 20:42:12,365.365 INFO    ] 200
[2026-06-12 20:42:12,367.367 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:42:12,397.397 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 20:42:12,398.398 INFO    ] No update needed
[2026-06-12 20:42:12,400.400 INFO    ] Checking for camera pi updates...
[2026-06-12 20:42:12,419.419 INFO    ] 200
[2026-06-12 20:42:12,421.421 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:42:12,444.444 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 20:42:12,484.484 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 20:42:12,486.486 INFO    ] No camera update needed
[2026-06-12 20:42:12,487.487 INFO    ] Script finished. Safe exiting...
[2026-06-12 20:42:12,488.488 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 20:42:12,492.492 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 20:42:12,495.495 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 20:42:14,533.533 INFO    ] ================================================
[2026-06-12 20:42:14,548.548 INFO    ] Launching Daemon at Fri Jun 12 20:42:14 IST 2026
[2026-06-12 20:42:14,559.559 INFO    ] ================================================
[2026-06-12 20:42:14,913.913 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 20:42:14
[2026-06-12 20:42:15,230.230 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 20:42:15,365.365 INFO    ] Initializing speech engine...
[2026-06-12 20:42:15,373.373 INFO    ] 2026-06-12 20:42:15
[2026-06-12 20:42:15,595.595 INFO    ] 2026-06-12 20:42:15
[2026-06-12 20:42:15,625.625 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 20:42:15,820.820 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 20:42:15,823.823 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 20:42:15,962.962 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 20:42:16,018.018 INFO    ] time= 12/06/2026 20:42:15
[2026-06-12 20:42:16,059.059 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 20:42:16,061.061 INFO    ] Checking for existing commands in stream...
[2026-06-12 20:42:16,133.133 INFO    ] No existing commands found in stream
[2026-06-12 20:42:21,147.147 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 20:42:21,150.150 INFO    ] Waiting 0.92 seconds before fallback handling...
[2026-06-12 20:42:22,411.411 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 20:42:22,413.413 INFO    ] Checking for system updates...
[2026-06-12 20:42:22,434.434 INFO    ] 200
[2026-06-12 20:42:22,435.435 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:42:22,467.467 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 20:42:22,468.468 INFO    ] No update needed
[2026-06-12 20:42:22,469.469 INFO    ] Checking for camera pi updates...
[2026-06-12 20:42:22,489.489 INFO    ] 200
[2026-06-12 20:42:22,490.490 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:42:22,513.513 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 20:42:22,556.556 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 20:42:22,557.557 INFO    ] No camera update needed
[2026-06-12 20:42:22,559.559 INFO    ] Script finished. Safe exiting...
[2026-06-12 20:42:22,560.560 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 20:42:22,563.563 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 20:42:22,566.566 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 20:42:24,606.606 INFO    ] ================================================
[2026-06-12 20:42:24,621.621 INFO    ] Launching Daemon at Fri Jun 12 20:42:24 IST 2026
[2026-06-12 20:42:24,632.632 INFO    ] ================================================
[2026-06-12 20:42:24,998.998 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 20:42:24
[2026-06-12 20:42:25,316.316 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 20:42:25,455.455 INFO    ] Initializing speech engine...
[2026-06-12 20:42:25,465.465 INFO    ] 2026-06-12 20:42:25
[2026-06-12 20:42:25,669.669 INFO    ] 2026-06-12 20:42:25
[2026-06-12 20:42:25,696.696 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 20:42:25,879.879 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 20:42:25,889.889 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 20:42:26,021.021 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 20:42:26,084.084 INFO    ] time= 12/06/2026 20:42:26
[2026-06-12 20:42:26,118.118 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 20:42:26,124.124 INFO    ] Checking for existing commands in stream...
[2026-06-12 20:42:26,201.201 INFO    ] No existing commands found in stream
[2026-06-12 20:42:31,210.210 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 20:42:31,213.213 INFO    ] Waiting 3.22 seconds before fallback handling...
[2026-06-12 20:42:34,794.794 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 20:42:34,795.795 INFO    ] Checking for system updates...
[2026-06-12 20:42:34,816.816 INFO    ] 200
[2026-06-12 20:42:34,817.817 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:42:34,849.849 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 20:42:34,851.851 INFO    ] No update needed
[2026-06-12 20:42:34,852.852 INFO    ] Checking for camera pi updates...
[2026-06-12 20:42:34,872.872 INFO    ] 200
[2026-06-12 20:42:34,874.874 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:42:34,897.897 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 20:42:34,939.939 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 20:42:34,941.941 INFO    ] No camera update needed
[2026-06-12 20:42:34,942.942 INFO    ] Script finished. Safe exiting...
[2026-06-12 20:42:34,943.943 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 20:42:34,946.946 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 20:42:34,949.949 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 20:42:36,989.989 INFO    ] ================================================
[2026-06-12 20:42:37,004.004 INFO    ] Launching Daemon at Fri Jun 12 20:42:36 IST 2026
[2026-06-12 20:42:37,015.015 INFO    ] ================================================
[2026-06-12 20:42:37,382.382 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 20:42:37
[2026-06-12 20:42:37,700.700 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 20:42:37,833.833 INFO    ] Initializing speech engine...
[2026-06-12 20:42:37,841.841 INFO    ] 2026-06-12 20:42:37
[2026-06-12 20:42:38,052.052 INFO    ] 2026-06-12 20:42:38
[2026-06-12 20:42:38,082.082 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 20:42:38,267.267 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 20:42:38,277.277 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 20:42:38,406.406 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 20:42:38,472.472 INFO    ] time= 12/06/2026 20:42:38
[2026-06-12 20:42:38,496.496 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 20:42:38,503.503 INFO    ] Checking for existing commands in stream...
[2026-06-12 20:42:38,593.593 INFO    ] No existing commands found in stream
[2026-06-12 20:42:43,607.607 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 20:42:43,610.610 INFO    ] Waiting 2.60 seconds before fallback handling...
[2026-06-12 20:42:46,594.594 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 20:42:46,595.595 INFO    ] Checking for system updates...
[2026-06-12 20:42:46,617.617 INFO    ] 200
[2026-06-12 20:42:46,618.618 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:42:46,649.649 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 20:42:46,650.650 INFO    ] No update needed
[2026-06-12 20:42:46,652.652 INFO    ] Checking for camera pi updates...
[2026-06-12 20:42:46,671.671 INFO    ] 200
[2026-06-12 20:42:46,673.673 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:42:46,696.696 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 20:42:46,748.748 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 20:42:46,749.749 INFO    ] No camera update needed
[2026-06-12 20:42:46,751.751 INFO    ] Script finished. Safe exiting...
[2026-06-12 20:42:46,752.752 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 20:42:46,755.755 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 20:42:46,758.758 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 20:42:48,795.795 INFO    ] ================================================
[2026-06-12 20:42:48,811.811 INFO    ] Launching Daemon at Fri Jun 12 20:42:48 IST 2026
[2026-06-12 20:42:48,822.822 INFO    ] ================================================
[2026-06-12 20:42:49,201.201 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 20:42:49
[2026-06-12 20:42:49,536.536 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 20:42:49,673.673 INFO    ] Initializing speech engine...
[2026-06-12 20:42:49,681.681 INFO    ] 2026-06-12 20:42:49
[2026-06-12 20:42:49,897.897 INFO    ] 2026-06-12 20:42:49
[2026-06-12 20:42:49,926.926 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 20:42:50,112.112 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 20:42:50,120.120 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 20:42:50,261.261 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 20:42:50,319.319 INFO    ] time= 12/06/2026 20:42:50
[2026-06-12 20:42:50,343.343 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 20:42:50,349.349 INFO    ] Checking for existing commands in stream...
[2026-06-12 20:42:50,416.416 INFO    ] No existing commands found in stream
[2026-06-12 20:42:55,435.435 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 20:42:55,439.439 INFO    ] Waiting 2.93 seconds before fallback handling...
[2026-06-12 20:42:58,764.764 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 20:42:58,766.766 INFO    ] Checking for system updates...
[2026-06-12 20:42:58,788.788 INFO    ] 200
[2026-06-12 20:42:58,789.789 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:42:58,823.823 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 20:42:58,824.824 INFO    ] No update needed
[2026-06-12 20:42:58,825.825 INFO    ] Checking for camera pi updates...
[2026-06-12 20:42:58,845.845 INFO    ] 200
[2026-06-12 20:42:58,847.847 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:42:58,870.870 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 20:42:58,911.911 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 20:42:58,913.913 INFO    ] No camera update needed
[2026-06-12 20:42:58,914.914 INFO    ] Script finished. Safe exiting...
[2026-06-12 20:42:58,915.915 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 20:42:58,918.918 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 20:42:58,921.921 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 20:43:00,959.959 INFO    ] ================================================
[2026-06-12 20:43:00,974.974 INFO    ] Launching Daemon at Fri Jun 12 20:43:00 IST 2026
[2026-06-12 20:43:00,985.985 INFO    ] ================================================
[2026-06-12 20:43:01,343.343 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 20:43:01
[2026-06-12 20:43:01,660.660 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 20:43:01,799.799 INFO    ] Initializing speech engine...
[2026-06-12 20:43:01,809.809 INFO    ] 2026-06-12 20:43:01
[2026-06-12 20:43:02,013.013 INFO    ] 2026-06-12 20:43:02
[2026-06-12 20:43:02,045.045 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 20:43:02,216.216 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 20:43:02,223.223 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 20:43:02,372.372 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 20:43:02,388.388 INFO    ] time= 12/06/2026 20:43:02
[2026-06-12 20:43:02,418.418 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 20:43:02,425.425 INFO    ] Checking for existing commands in stream...
[2026-06-12 20:43:02,492.492 INFO    ] No existing commands found in stream
[2026-06-12 20:43:07,502.502 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 20:43:07,505.505 INFO    ] Waiting 3.30 seconds before fallback handling...
[2026-06-12 20:43:11,195.195 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 20:43:11,196.196 INFO    ] Checking for system updates...
[2026-06-12 20:43:11,218.218 INFO    ] 200
[2026-06-12 20:43:11,219.219 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:43:11,252.252 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 20:43:11,253.253 INFO    ] No update needed
[2026-06-12 20:43:11,254.254 INFO    ] Checking for camera pi updates...
[2026-06-12 20:43:11,273.273 INFO    ] 200
[2026-06-12 20:43:11,275.275 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:43:11,297.297 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 20:43:11,440.440 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 20:43:11,442.442 INFO    ] No camera update needed
[2026-06-12 20:43:11,443.443 INFO    ] Script finished. Safe exiting...
[2026-06-12 20:43:11,444.444 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 20:43:11,447.447 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 20:43:11,450.450 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 20:43:13,492.492 INFO    ] ================================================
[2026-06-12 20:43:13,508.508 INFO    ] Launching Daemon at Fri Jun 12 20:43:13 IST 2026
[2026-06-12 20:43:13,518.518 INFO    ] ================================================
[2026-06-12 20:43:13,871.871 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 20:43:13
[2026-06-12 20:43:14,186.186 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 20:43:14,324.324 INFO    ] Initializing speech engine...
[2026-06-12 20:43:14,334.334 INFO    ] 2026-06-12 20:43:14
[2026-06-12 20:43:14,552.552 INFO    ] 2026-06-12 20:43:14
[2026-06-12 20:43:14,584.584 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 20:43:14,783.783 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 20:43:14,785.785 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 20:43:14,932.932 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 20:43:14,979.979 INFO    ] time= 12/06/2026 20:43:14
[2026-06-12 20:43:15,019.019 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 20:43:15,036.036 INFO    ] Checking for existing commands in stream...
[2026-06-12 20:43:15,114.114 INFO    ] No existing commands found in stream
[2026-06-12 20:43:20,123.123 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 20:43:20,125.125 INFO    ] Waiting 1.83 seconds before fallback handling...
[2026-06-12 20:43:23,236.236 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 20:43:23,238.238 INFO    ] Checking for system updates...
[2026-06-12 20:43:23,278.278 INFO    ] 200
[2026-06-12 20:43:23,281.281 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:43:23,334.334 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 20:43:23,337.337 INFO    ] No update needed
[2026-06-12 20:43:23,339.339 INFO    ] Checking for camera pi updates...
[2026-06-12 20:43:23,373.373 INFO    ] 200
[2026-06-12 20:43:23,375.375 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:43:23,410.410 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 20:43:23,456.456 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 20:43:23,457.457 INFO    ] No camera update needed
[2026-06-12 20:43:23,458.458 INFO    ] Script finished. Safe exiting...
[2026-06-12 20:43:23,460.460 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 20:43:23,463.463 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 20:43:23,465.465 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 20:43:25,503.503 INFO    ] ================================================
[2026-06-12 20:43:25,518.518 INFO    ] Launching Daemon at Fri Jun 12 20:43:25 IST 2026
[2026-06-12 20:43:25,529.529 INFO    ] ================================================
[2026-06-12 20:43:25,882.882 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 20:43:25
[2026-06-12 20:43:26,225.225 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 20:43:26,369.369 INFO    ] Initializing speech engine...
[2026-06-12 20:43:26,382.382 INFO    ] 2026-06-12 20:43:26
[2026-06-12 20:43:26,594.594 INFO    ] 2026-06-12 20:43:26
[2026-06-12 20:43:26,623.623 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 20:43:26,794.794 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 20:43:26,795.795 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 20:43:26,899.899 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 20:43:26,937.937 INFO    ] time= 12/06/2026 20:43:26
[2026-06-12 20:43:26,979.979 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 20:43:27,032.032 INFO    ] Checking for existing commands in stream...
[2026-06-12 20:43:27,124.124 INFO    ] No existing commands found in stream
[2026-06-12 20:43:32,131.131 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 20:43:32,133.133 INFO    ] Waiting 0.42 seconds before fallback handling...
[2026-06-12 20:43:32,872.872 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 20:43:32,875.875 INFO    ] Checking for system updates...
[2026-06-12 20:43:32,916.916 INFO    ] 200
[2026-06-12 20:43:32,918.918 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:43:32,956.956 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 20:43:32,958.958 INFO    ] No update needed
[2026-06-12 20:43:32,959.959 INFO    ] Checking for camera pi updates...
[2026-06-12 20:43:32,978.978 INFO    ] 200
[2026-06-12 20:43:32,980.980 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:43:33,005.005 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 20:43:33,045.045 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 20:43:33,046.046 INFO    ] No camera update needed
[2026-06-12 20:43:33,047.047 INFO    ] Script finished. Safe exiting...
[2026-06-12 20:43:33,048.048 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 20:43:33,052.052 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 20:43:33,054.054 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 20:43:35,092.092 INFO    ] ================================================
[2026-06-12 20:43:35,107.107 INFO    ] Launching Daemon at Fri Jun 12 20:43:35 IST 2026
[2026-06-12 20:43:35,117.117 INFO    ] ================================================
[2026-06-12 20:43:35,471.471 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 20:43:35
[2026-06-12 20:43:35,787.787 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 20:43:35,931.931 INFO    ] Initializing speech engine...
[2026-06-12 20:43:35,936.936 INFO    ] 2026-06-12 20:43:35
[2026-06-12 20:43:36,140.140 INFO    ] 2026-06-12 20:43:36
[2026-06-12 20:43:36,168.168 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 20:43:36,353.353 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 20:43:36,361.361 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 20:43:36,506.506 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 20:43:36,559.559 INFO    ] time= 12/06/2026 20:43:36
[2026-06-12 20:43:36,582.582 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 20:43:36,587.587 INFO    ] Checking for existing commands in stream...
[2026-06-12 20:43:36,654.654 INFO    ] No existing commands found in stream
[2026-06-12 20:43:41,668.668 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 20:43:41,671.671 INFO    ] Waiting 0.67 seconds before fallback handling...
[2026-06-12 20:43:42,726.726 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 20:43:42,727.727 INFO    ] Checking for system updates...
[2026-06-12 20:43:42,748.748 INFO    ] 200
[2026-06-12 20:43:42,749.749 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:43:42,782.782 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 20:43:42,783.783 INFO    ] No update needed
[2026-06-12 20:43:42,784.784 INFO    ] Checking for camera pi updates...
[2026-06-12 20:43:42,805.805 INFO    ] 200
[2026-06-12 20:43:42,806.806 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:43:42,829.829 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 20:43:42,875.875 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 20:43:42,877.877 INFO    ] No camera update needed
[2026-06-12 20:43:42,878.878 INFO    ] Script finished. Safe exiting...
[2026-06-12 20:43:42,879.879 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 20:43:42,883.883 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 20:43:42,885.885 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 20:43:44,924.924 INFO    ] ================================================
[2026-06-12 20:43:44,940.940 INFO    ] Launching Daemon at Fri Jun 12 20:43:44 IST 2026
[2026-06-12 20:43:44,951.951 INFO    ] ================================================
[2026-06-12 20:43:45,336.336 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 20:43:45
[2026-06-12 20:43:45,675.675 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 20:43:45,826.826 INFO    ] Initializing speech engine...
[2026-06-12 20:43:45,831.831 INFO    ] 2026-06-12 20:43:45
[2026-06-12 20:43:46,038.038 INFO    ] 2026-06-12 20:43:46
[2026-06-12 20:43:46,068.068 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 20:43:46,251.251 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 20:43:46,255.255 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 20:43:46,397.397 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 20:43:46,459.459 INFO    ] time= 12/06/2026 20:43:46
[2026-06-12 20:43:46,483.483 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 20:43:46,490.490 INFO    ] Checking for existing commands in stream...
[2026-06-12 20:43:46,556.556 INFO    ] No existing commands found in stream
[2026-06-12 20:43:51,581.581 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 20:43:51,584.584 INFO    ] Waiting 1.10 seconds before fallback handling...
[2026-06-12 20:43:53,085.085 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 20:43:53,087.087 INFO    ] Checking for system updates...
[2026-06-12 20:43:53,109.109 INFO    ] 200
[2026-06-12 20:43:53,111.111 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:43:53,143.143 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 20:43:53,144.144 INFO    ] No update needed
[2026-06-12 20:43:53,146.146 INFO    ] Checking for camera pi updates...
[2026-06-12 20:43:53,167.167 INFO    ] 200
[2026-06-12 20:43:53,168.168 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:43:53,192.192 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 20:43:53,239.239 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 20:43:53,241.241 INFO    ] No camera update needed
[2026-06-12 20:43:53,242.242 INFO    ] Script finished. Safe exiting...
[2026-06-12 20:43:53,243.243 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 20:43:53,247.247 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 20:43:53,250.250 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 20:43:55,287.287 INFO    ] ================================================
[2026-06-12 20:43:55,303.303 INFO    ] Launching Daemon at Fri Jun 12 20:43:55 IST 2026
[2026-06-12 20:43:55,313.313 INFO    ] ================================================
[2026-06-12 20:43:55,657.657 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 20:43:55
[2026-06-12 20:43:55,968.968 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 20:43:56,101.101 INFO    ] Initializing speech engine...
[2026-06-12 20:43:56,110.110 INFO    ] 2026-06-12 20:43:56
[2026-06-12 20:43:56,335.335 INFO    ] 2026-06-12 20:43:56
[2026-06-12 20:43:56,366.366 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 20:43:56,498.498 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 20:43:56,536.536 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 20:43:56,712.712 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 20:43:56,764.764 INFO    ] time= 12/06/2026 20:43:56
[2026-06-12 20:43:56,809.809 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 20:43:56,815.815 INFO    ] Checking for existing commands in stream...
[2026-06-12 20:43:56,890.890 INFO    ] No existing commands found in stream
[2026-06-12 20:44:01,900.900 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 20:44:01,902.902 INFO    ] Waiting 3.86 seconds before fallback handling...
[2026-06-12 20:44:06,127.127 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 20:44:06,129.129 INFO    ] Checking for system updates...
[2026-06-12 20:44:06,150.150 INFO    ] 200
[2026-06-12 20:44:06,152.152 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:44:06,184.184 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 20:44:06,185.185 INFO    ] No update needed
[2026-06-12 20:44:06,186.186 INFO    ] Checking for camera pi updates...
[2026-06-12 20:44:06,205.205 INFO    ] 200
[2026-06-12 20:44:06,207.207 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:44:06,230.230 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 20:44:06,370.370 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 20:44:06,371.371 INFO    ] No camera update needed
[2026-06-12 20:44:06,373.373 INFO    ] Script finished. Safe exiting...
[2026-06-12 20:44:06,374.374 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 20:44:06,377.377 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 20:44:06,379.379 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 20:44:08,418.418 INFO    ] ================================================
[2026-06-12 20:44:08,434.434 INFO    ] Launching Daemon at Fri Jun 12 20:44:08 IST 2026
[2026-06-12 20:44:08,445.445 INFO    ] ================================================
[2026-06-12 20:44:08,817.817 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 20:44:08
[2026-06-12 20:44:09,154.154 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 20:44:09,305.305 INFO    ] Initializing speech engine...
[2026-06-12 20:44:09,310.310 INFO    ] 2026-06-12 20:44:09
[2026-06-12 20:44:09,518.518 INFO    ] 2026-06-12 20:44:09
[2026-06-12 20:44:09,547.547 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 20:44:09,685.685 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 20:44:09,733.733 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 20:44:09,871.871 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 20:44:09,925.925 INFO    ] time= 12/06/2026 20:44:09
[2026-06-12 20:44:09,962.962 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 20:44:09,969.969 INFO    ] Checking for existing commands in stream...
[2026-06-12 20:44:10,059.059 INFO    ] No existing commands found in stream
[2026-06-12 20:44:15,069.069 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 20:44:15,072.072 INFO    ] Waiting 2.84 seconds before fallback handling...
[2026-06-12 20:44:18,297.297 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 20:44:18,299.299 INFO    ] Checking for system updates...
[2026-06-12 20:44:18,321.321 INFO    ] 200
[2026-06-12 20:44:18,323.323 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:44:18,356.356 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 20:44:18,357.357 INFO    ] No update needed
[2026-06-12 20:44:18,358.358 INFO    ] Checking for camera pi updates...
[2026-06-12 20:44:18,381.381 INFO    ] 200
[2026-06-12 20:44:18,382.382 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:44:18,405.405 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 20:44:18,458.458 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 20:44:18,459.459 INFO    ] No camera update needed
[2026-06-12 20:44:18,461.461 INFO    ] Script finished. Safe exiting...
[2026-06-12 20:44:18,462.462 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 20:44:18,465.465 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 20:44:18,468.468 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 20:44:20,508.508 INFO    ] ================================================
[2026-06-12 20:44:20,528.528 INFO    ] Launching Daemon at Fri Jun 12 20:44:20 IST 2026
[2026-06-12 20:44:20,538.538 INFO    ] ================================================
[2026-06-12 20:44:20,910.910 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 20:44:20
[2026-06-12 20:44:21,226.226 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 20:44:21,370.370 INFO    ] Initializing speech engine...
[2026-06-12 20:44:21,375.375 INFO    ] 2026-06-12 20:44:21
[2026-06-12 20:44:21,584.584 INFO    ] 2026-06-12 20:44:21
[2026-06-12 20:44:21,613.613 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 20:44:21,797.797 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 20:44:21,807.807 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 20:44:21,935.935 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 20:44:22,003.003 INFO    ] time= 12/06/2026 20:44:21
[2026-06-12 20:44:22,026.026 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 20:44:22,033.033 INFO    ] Checking for existing commands in stream...
[2026-06-12 20:44:22,123.123 INFO    ] No existing commands found in stream
[2026-06-12 20:44:27,133.133 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 20:44:27,136.136 INFO    ] Waiting 1.52 seconds before fallback handling...
[2026-06-12 20:44:29,038.038 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 20:44:29,040.040 INFO    ] Checking for system updates...
[2026-06-12 20:44:29,061.061 INFO    ] 200
[2026-06-12 20:44:29,062.062 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:44:29,093.093 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 20:44:29,094.094 INFO    ] No update needed
[2026-06-12 20:44:29,095.095 INFO    ] Checking for camera pi updates...
[2026-06-12 20:44:29,115.115 INFO    ] 200
[2026-06-12 20:44:29,116.116 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:44:29,141.141 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 20:44:29,182.182 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 20:44:29,183.183 INFO    ] No camera update needed
[2026-06-12 20:44:29,184.184 INFO    ] Script finished. Safe exiting...
[2026-06-12 20:44:29,186.186 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 20:44:29,189.189 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 20:44:29,191.191 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 20:44:31,230.230 INFO    ] ================================================
[2026-06-12 20:44:31,245.245 INFO    ] Launching Daemon at Fri Jun 12 20:44:31 IST 2026
[2026-06-12 20:44:31,256.256 INFO    ] ================================================
[2026-06-12 20:44:31,614.614 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 20:44:31
[2026-06-12 20:44:31,956.956 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 20:44:32,099.099 INFO    ] Initializing speech engine...
[2026-06-12 20:44:32,104.104 INFO    ] 2026-06-12 20:44:32
[2026-06-12 20:44:32,319.319 INFO    ] 2026-06-12 20:44:32
[2026-06-12 20:44:32,349.349 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 20:44:32,534.534 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 20:44:32,543.543 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 20:44:32,687.687 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 20:44:32,739.739 INFO    ] time= 12/06/2026 20:44:32
[2026-06-12 20:44:32,763.763 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 20:44:32,769.769 INFO    ] Checking for existing commands in stream...
[2026-06-12 20:44:32,836.836 INFO    ] No existing commands found in stream
[2026-06-12 20:44:37,845.845 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 20:44:37,848.848 INFO    ] Waiting 3.00 seconds before fallback handling...
[2026-06-12 20:44:41,236.236 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 20:44:41,237.237 INFO    ] Checking for system updates...
[2026-06-12 20:44:41,258.258 INFO    ] 200
[2026-06-12 20:44:41,259.259 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:44:41,291.291 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 20:44:41,293.293 INFO    ] No update needed
[2026-06-12 20:44:41,294.294 INFO    ] Checking for camera pi updates...
[2026-06-12 20:44:41,317.317 INFO    ] 200
[2026-06-12 20:44:41,318.318 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:44:41,344.344 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 20:44:41,400.400 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 20:44:41,402.402 INFO    ] No camera update needed
[2026-06-12 20:44:41,403.403 INFO    ] Script finished. Safe exiting...
[2026-06-12 20:44:41,404.404 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 20:44:41,408.408 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 20:44:41,411.411 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 20:44:43,450.450 INFO    ] ================================================
[2026-06-12 20:44:43,465.465 INFO    ] Launching Daemon at Fri Jun 12 20:44:43 IST 2026
[2026-06-12 20:44:43,476.476 INFO    ] ================================================
[2026-06-12 20:44:43,818.818 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 20:44:43
[2026-06-12 20:44:44,151.151 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 20:44:44,288.288 INFO    ] Initializing speech engine...
[2026-06-12 20:44:44,293.293 INFO    ] 2026-06-12 20:44:44
[2026-06-12 20:44:44,514.514 INFO    ] 2026-06-12 20:44:44
[2026-06-12 20:44:44,545.545 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 20:44:44,705.705 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 20:44:44,733.733 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 20:44:44,878.878 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 20:44:44,941.941 INFO    ] time= 12/06/2026 20:44:44
[2026-06-12 20:44:44,966.966 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 20:44:44,973.973 INFO    ] Checking for existing commands in stream...
[2026-06-12 20:44:45,040.040 INFO    ] No existing commands found in stream
[2026-06-12 20:44:50,055.055 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 20:44:50,058.058 INFO    ] Waiting 1.19 seconds before fallback handling...
[2026-06-12 20:44:51,626.626 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 20:44:51,627.627 INFO    ] Checking for system updates...
[2026-06-12 20:44:51,648.648 INFO    ] 200
[2026-06-12 20:44:51,650.650 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:44:51,681.681 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 20:44:51,682.682 INFO    ] No update needed
[2026-06-12 20:44:51,683.683 INFO    ] Checking for camera pi updates...
[2026-06-12 20:44:51,704.704 INFO    ] 200
[2026-06-12 20:44:51,705.705 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:44:51,731.731 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 20:44:51,781.781 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 20:44:51,783.783 INFO    ] No camera update needed
[2026-06-12 20:44:51,784.784 INFO    ] Script finished. Safe exiting...
[2026-06-12 20:44:51,785.785 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 20:44:52,353.353 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 20:44:52,359.359 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 20:44:54,400.400 INFO    ] ================================================
[2026-06-12 20:44:54,415.415 INFO    ] Launching Daemon at Fri Jun 12 20:44:54 IST 2026
[2026-06-12 20:44:54,426.426 INFO    ] ================================================
[2026-06-12 20:44:54,784.784 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 20:44:54
[2026-06-12 20:44:55,117.117 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 20:44:55,269.269 INFO    ] Initializing speech engine...
[2026-06-12 20:44:55,273.273 INFO    ] 2026-06-12 20:44:55
[2026-06-12 20:44:55,482.482 INFO    ] 2026-06-12 20:44:55
[2026-06-12 20:44:55,511.511 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 20:44:55,696.696 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 20:44:55,700.700 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 20:44:55,859.859 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 20:44:55,910.910 INFO    ] time= 12/06/2026 20:44:55
[2026-06-12 20:44:55,931.931 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 20:44:55,937.937 INFO    ] Checking for existing commands in stream...
[2026-06-12 20:44:56,004.004 INFO    ] No existing commands found in stream
[2026-06-12 20:45:01,019.019 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 20:45:01,022.022 INFO    ] Waiting 3.82 seconds before fallback handling...
[2026-06-12 20:45:05,228.228 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 20:45:05,230.230 INFO    ] Checking for system updates...
[2026-06-12 20:45:05,252.252 INFO    ] 200
[2026-06-12 20:45:05,253.253 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:45:05,286.286 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 20:45:05,288.288 INFO    ] No update needed
[2026-06-12 20:45:05,289.289 INFO    ] Checking for camera pi updates...
[2026-06-12 20:45:05,309.309 INFO    ] 200
[2026-06-12 20:45:05,310.310 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:45:05,335.335 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 20:45:05,377.377 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 20:45:05,378.378 INFO    ] No camera update needed
[2026-06-12 20:45:05,380.380 INFO    ] Script finished. Safe exiting...
[2026-06-12 20:45:05,381.381 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 20:45:05,384.384 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 20:45:05,388.388 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 20:45:07,430.430 INFO    ] ================================================
[2026-06-12 20:45:07,445.445 INFO    ] Launching Daemon at Fri Jun 12 20:45:07 IST 2026
[2026-06-12 20:45:07,456.456 INFO    ] ================================================
[2026-06-12 20:45:07,811.811 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 20:45:07
[2026-06-12 20:45:08,146.146 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 20:45:08,296.296 INFO    ] Initializing speech engine...
[2026-06-12 20:45:08,302.302 INFO    ] 2026-06-12 20:45:08
[2026-06-12 20:45:08,511.511 INFO    ] 2026-06-12 20:45:08
[2026-06-12 20:45:08,540.540 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 20:45:08,727.727 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 20:45:08,731.731 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 20:45:08,870.870 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 20:45:08,938.938 INFO    ] time= 12/06/2026 20:45:08
[2026-06-12 20:45:08,962.962 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 20:45:08,964.964 INFO    ] Checking for existing commands in stream...
[2026-06-12 20:45:09,037.037 INFO    ] No existing commands found in stream
[2026-06-12 20:45:14,052.052 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 20:45:14,055.055 INFO    ] Waiting 0.81 seconds before fallback handling...
[2026-06-12 20:45:15,211.211 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 20:45:15,212.212 INFO    ] Checking for system updates...
[2026-06-12 20:45:15,233.233 INFO    ] 200
[2026-06-12 20:45:15,235.235 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:45:15,265.265 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 20:45:15,266.266 INFO    ] No update needed
[2026-06-12 20:45:15,268.268 INFO    ] Checking for camera pi updates...
[2026-06-12 20:45:15,287.287 INFO    ] 200
[2026-06-12 20:45:15,289.289 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:45:15,312.312 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 20:45:15,457.457 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 20:45:15,459.459 INFO    ] No camera update needed
[2026-06-12 20:45:15,460.460 INFO    ] Script finished. Safe exiting...
[2026-06-12 20:45:15,462.462 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 20:45:15,465.465 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 20:45:15,468.468 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 20:45:17,503.503 INFO    ] ================================================
[2026-06-12 20:45:17,512.512 INFO    ] Launching Daemon at Fri Jun 12 20:45:17 IST 2026
[2026-06-12 20:45:17,519.519 INFO    ] ================================================
[2026-06-12 20:45:17,883.883 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 20:45:17
[2026-06-12 20:45:18,196.196 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 20:45:18,339.339 INFO    ] Initializing speech engine...
[2026-06-12 20:45:18,344.344 INFO    ] 2026-06-12 20:45:18
[2026-06-12 20:45:18,548.548 INFO    ] 2026-06-12 20:45:18
[2026-06-12 20:45:18,578.578 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 20:45:18,764.764 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 20:45:18,767.767 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 20:45:18,906.906 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 20:45:18,970.970 INFO    ] time= 12/06/2026 20:45:18
[2026-06-12 20:45:18,998.998 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 20:45:19,005.005 INFO    ] Checking for existing commands in stream...
[2026-06-12 20:45:19,072.072 INFO    ] No existing commands found in stream
[2026-06-12 20:45:24,081.081 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 20:45:24,084.084 INFO    ] Waiting 2.27 seconds before fallback handling...
[2026-06-12 20:45:26,717.717 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 20:45:26,722.722 INFO    ] Checking for system updates...
[2026-06-12 20:45:26,743.743 INFO    ] 200
[2026-06-12 20:45:26,744.744 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:45:26,776.776 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 20:45:26,778.778 INFO    ] No update needed
[2026-06-12 20:45:26,779.779 INFO    ] Checking for camera pi updates...
[2026-06-12 20:45:26,801.801 INFO    ] 200
[2026-06-12 20:45:26,803.803 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:45:26,826.826 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 20:45:26,870.870 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 20:45:26,872.872 INFO    ] No camera update needed
[2026-06-12 20:45:26,873.873 INFO    ] Script finished. Safe exiting...
[2026-06-12 20:45:26,874.874 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 20:45:26,877.877 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 20:45:26,880.880 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 20:45:28,919.919 INFO    ] ================================================
[2026-06-12 20:45:28,934.934 INFO    ] Launching Daemon at Fri Jun 12 20:45:28 IST 2026
[2026-06-12 20:45:28,946.946 INFO    ] ================================================
[2026-06-12 20:45:29,302.302 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 20:45:29
[2026-06-12 20:45:29,638.638 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 20:45:29,789.789 INFO    ] Initializing speech engine...
[2026-06-12 20:45:29,795.795 INFO    ] 2026-06-12 20:45:29
[2026-06-12 20:45:30,005.005 INFO    ] 2026-06-12 20:45:29
[2026-06-12 20:45:30,034.034 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 20:45:30,222.222 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 20:45:30,232.232 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 20:45:30,355.355 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 20:45:30,406.406 INFO    ] time= 12/06/2026 20:45:30
[2026-06-12 20:45:30,447.447 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 20:45:30,457.457 INFO    ] Checking for existing commands in stream...
[2026-06-12 20:45:30,554.554 INFO    ] No existing commands found in stream
[2026-06-12 20:45:35,563.563 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 20:45:35,567.567 INFO    ] Waiting 2.68 seconds before fallback handling...
[2026-06-12 20:45:38,632.632 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 20:45:38,634.634 INFO    ] Checking for system updates...
[2026-06-12 20:45:38,655.655 INFO    ] 200
[2026-06-12 20:45:38,657.657 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:45:38,690.690 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 20:45:38,691.691 INFO    ] No update needed
[2026-06-12 20:45:38,693.693 INFO    ] Checking for camera pi updates...
[2026-06-12 20:45:38,712.712 INFO    ] 200
[2026-06-12 20:45:38,714.714 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:45:38,737.737 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 20:45:38,786.786 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 20:45:38,787.787 INFO    ] No camera update needed
[2026-06-12 20:45:38,788.788 INFO    ] Script finished. Safe exiting...
[2026-06-12 20:45:38,790.790 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 20:45:38,793.793 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 20:45:38,796.796 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 20:45:40,834.834 INFO    ] ================================================
[2026-06-12 20:45:40,849.849 INFO    ] Launching Daemon at Fri Jun 12 20:45:40 IST 2026
[2026-06-12 20:45:40,860.860 INFO    ] ================================================
[2026-06-12 20:45:41,217.217 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 20:45:41
[2026-06-12 20:45:41,531.531 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 20:45:41,662.662 INFO    ] Initializing speech engine...
[2026-06-12 20:45:41,670.670 INFO    ] 2026-06-12 20:45:41
[2026-06-12 20:45:41,886.886 INFO    ] 2026-06-12 20:45:41
[2026-06-12 20:45:41,915.915 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 20:45:42,098.098 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 20:45:42,106.106 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 20:45:42,236.236 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 20:45:42,269.269 INFO    ] time= 12/06/2026 20:45:42
[2026-06-12 20:45:42,309.309 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 20:45:42,332.332 INFO    ] Checking for existing commands in stream...
[2026-06-12 20:45:42,403.403 INFO    ] No existing commands found in stream
[2026-06-12 20:45:47,413.413 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 20:45:47,416.416 INFO    ] Waiting 3.81 seconds before fallback handling...
[2026-06-12 20:45:52,012.012 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 20:45:52,014.014 INFO    ] Checking for system updates...
[2026-06-12 20:45:52,035.035 INFO    ] 200
[2026-06-12 20:45:52,036.036 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:45:52,068.068 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 20:45:52,070.070 INFO    ] No update needed
[2026-06-12 20:45:52,071.071 INFO    ] Checking for camera pi updates...
[2026-06-12 20:45:52,094.094 INFO    ] 200
[2026-06-12 20:45:52,096.096 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:45:52,121.121 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 20:45:52,167.167 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 20:45:52,170.170 INFO    ] No camera update needed
[2026-06-12 20:45:52,172.172 INFO    ] Script finished. Safe exiting...
[2026-06-12 20:45:52,175.175 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 20:45:52,181.181 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 20:45:52,187.187 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 20:45:54,228.228 INFO    ] ================================================
[2026-06-12 20:45:54,244.244 INFO    ] Launching Daemon at Fri Jun 12 20:45:54 IST 2026
[2026-06-12 20:45:54,255.255 INFO    ] ================================================
[2026-06-12 20:45:54,610.610 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 20:45:54
[2026-06-12 20:45:54,947.947 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 20:45:55,097.097 INFO    ] Initializing speech engine...
[2026-06-12 20:45:55,103.103 INFO    ] 2026-06-12 20:45:55
[2026-06-12 20:45:55,310.310 INFO    ] 2026-06-12 20:45:55
[2026-06-12 20:45:55,338.338 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 20:45:55,471.471 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 20:45:55,524.524 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 20:45:55,662.662 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 20:45:55,729.729 INFO    ] time= 12/06/2026 20:45:55
[2026-06-12 20:45:55,753.753 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 20:45:55,759.759 INFO    ] Checking for existing commands in stream...
[2026-06-12 20:45:55,826.826 INFO    ] No existing commands found in stream
[2026-06-12 20:46:00,841.841 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 20:46:00,844.844 INFO    ] Waiting 3.91 seconds before fallback handling...
[2026-06-12 20:46:05,111.111 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 20:46:05,113.113 INFO    ] Checking for system updates...
[2026-06-12 20:46:05,135.135 INFO    ] 200
[2026-06-12 20:46:05,136.136 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:46:05,168.168 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 20:46:05,170.170 INFO    ] No update needed
[2026-06-12 20:46:05,171.171 INFO    ] Checking for camera pi updates...
[2026-06-12 20:46:05,190.190 INFO    ] 200
[2026-06-12 20:46:05,192.192 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:46:05,214.214 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 20:46:05,269.269 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 20:46:05,270.270 INFO    ] No camera update needed
[2026-06-12 20:46:05,271.271 INFO    ] Script finished. Safe exiting...
[2026-06-12 20:46:05,273.273 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 20:46:05,275.275 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 20:46:05,278.278 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 20:46:07,316.316 INFO    ] ================================================
[2026-06-12 20:46:07,331.331 INFO    ] Launching Daemon at Fri Jun 12 20:46:07 IST 2026
[2026-06-12 20:46:07,342.342 INFO    ] ================================================
[2026-06-12 20:46:07,697.697 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 20:46:07
[2026-06-12 20:46:08,009.009 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 20:46:08,142.142 INFO    ] Initializing speech engine...
[2026-06-12 20:46:08,151.151 INFO    ] 2026-06-12 20:46:08
[2026-06-12 20:46:08,370.370 INFO    ] 2026-06-12 20:46:08
[2026-06-12 20:46:08,401.401 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 20:46:08,594.594 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 20:46:08,597.597 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 20:46:08,734.734 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 20:46:08,790.790 INFO    ] time= 12/06/2026 20:46:08
[2026-06-12 20:46:08,822.822 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 20:46:08,839.839 INFO    ] Checking for existing commands in stream...
[2026-06-12 20:46:08,939.939 INFO    ] No existing commands found in stream
[2026-06-12 20:46:13,948.948 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 20:46:13,951.951 INFO    ] Waiting 1.98 seconds before fallback handling...
[2026-06-12 20:46:16,318.318 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 20:46:16,319.319 INFO    ] Checking for system updates...
[2026-06-12 20:46:16,340.340 INFO    ] 200
[2026-06-12 20:46:16,341.341 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:46:16,374.374 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 20:46:16,375.375 INFO    ] No update needed
[2026-06-12 20:46:16,376.376 INFO    ] Checking for camera pi updates...
[2026-06-12 20:46:16,398.398 INFO    ] 200
[2026-06-12 20:46:16,399.399 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:46:16,422.422 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 20:46:16,468.468 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 20:46:16,470.470 INFO    ] No camera update needed
[2026-06-12 20:46:16,471.471 INFO    ] Script finished. Safe exiting...
[2026-06-12 20:46:16,472.472 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 20:46:16,475.475 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 20:46:16,478.478 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 20:46:18,518.518 INFO    ] ================================================
[2026-06-12 20:46:18,533.533 INFO    ] Launching Daemon at Fri Jun 12 20:46:18 IST 2026
[2026-06-12 20:46:18,544.544 INFO    ] ================================================
[2026-06-12 20:46:18,902.902 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 20:46:18
[2026-06-12 20:46:19,227.227 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 20:46:19,381.381 INFO    ] Initializing speech engine...
[2026-06-12 20:46:19,387.387 INFO    ] 2026-06-12 20:46:19
[2026-06-12 20:46:19,597.597 INFO    ] 2026-06-12 20:46:19
[2026-06-12 20:46:19,628.628 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 20:46:19,822.822 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 20:46:19,832.832 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 20:46:20,018.018 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 20:46:20,051.051 INFO    ] time= 12/06/2026 20:46:20
[2026-06-12 20:46:20,063.063 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 20:46:20,068.068 INFO    ] Checking for existing commands in stream...
[2026-06-12 20:46:20,137.137 INFO    ] No existing commands found in stream
[2026-06-12 20:46:25,148.148 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 20:46:25,151.151 INFO    ] Waiting 2.40 seconds before fallback handling...
[2026-06-12 20:46:27,928.928 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 20:46:27,929.929 INFO    ] Checking for system updates...
[2026-06-12 20:46:27,951.951 INFO    ] 200
[2026-06-12 20:46:27,952.952 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:46:27,984.984 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 20:46:27,986.986 INFO    ] No update needed
[2026-06-12 20:46:27,987.987 INFO    ] Checking for camera pi updates...
[2026-06-12 20:46:28,006.006 INFO    ] 200
[2026-06-12 20:46:28,007.007 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:46:28,030.030 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 20:46:28,070.070 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 20:46:28,071.071 INFO    ] No camera update needed
[2026-06-12 20:46:28,072.072 INFO    ] Script finished. Safe exiting...
[2026-06-12 20:46:28,074.074 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 20:46:28,076.076 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 20:46:28,079.079 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 20:46:30,118.118 INFO    ] ================================================
[2026-06-12 20:46:30,133.133 INFO    ] Launching Daemon at Fri Jun 12 20:46:30 IST 2026
[2026-06-12 20:46:30,144.144 INFO    ] ================================================
[2026-06-12 20:46:30,471.471 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 20:46:30
[2026-06-12 20:46:30,784.784 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 20:46:30,920.920 INFO    ] Initializing speech engine...
[2026-06-12 20:46:30,932.932 INFO    ] 2026-06-12 20:46:30
[2026-06-12 20:46:31,146.146 INFO    ] 2026-06-12 20:46:31
[2026-06-12 20:46:31,176.176 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 20:46:31,321.321 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 20:46:31,372.372 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 20:46:31,508.508 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 20:46:31,570.570 INFO    ] time= 12/06/2026 20:46:31
[2026-06-12 20:46:31,608.608 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 20:46:31,614.614 INFO    ] Checking for existing commands in stream...
[2026-06-12 20:46:31,715.715 INFO    ] No existing commands found in stream
[2026-06-12 20:46:36,729.729 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 20:46:36,732.732 INFO    ] Waiting 1.93 seconds before fallback handling...
[2026-06-12 20:46:39,059.059 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 20:46:39,061.061 INFO    ] Checking for system updates...
[2026-06-12 20:46:39,081.081 INFO    ] 200
[2026-06-12 20:46:39,082.082 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:46:39,113.113 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 20:46:39,114.114 INFO    ] No update needed
[2026-06-12 20:46:39,115.115 INFO    ] Checking for camera pi updates...
[2026-06-12 20:46:39,136.136 INFO    ] 200
[2026-06-12 20:46:39,138.138 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:46:39,161.161 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 20:46:39,223.223 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 20:46:39,225.225 INFO    ] No camera update needed
[2026-06-12 20:46:39,226.226 INFO    ] Script finished. Safe exiting...
[2026-06-12 20:46:39,227.227 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 20:46:39,230.230 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 20:46:39,233.233 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 20:46:41,271.271 INFO    ] ================================================
[2026-06-12 20:46:41,286.286 INFO    ] Launching Daemon at Fri Jun 12 20:46:41 IST 2026
[2026-06-12 20:46:41,297.297 INFO    ] ================================================
[2026-06-12 20:46:41,652.652 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 20:46:41
[2026-06-12 20:46:41,968.968 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 20:46:42,108.108 INFO    ] Initializing speech engine...
[2026-06-12 20:46:42,117.117 INFO    ] 2026-06-12 20:46:42
[2026-06-12 20:46:42,323.323 INFO    ] 2026-06-12 20:46:42
[2026-06-12 20:46:42,350.350 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 20:46:42,533.533 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 20:46:42,542.542 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 20:46:42,668.668 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 20:46:42,720.720 INFO    ] time= 12/06/2026 20:46:42
[2026-06-12 20:46:42,748.748 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 20:46:42,765.765 INFO    ] Checking for existing commands in stream...
[2026-06-12 20:46:42,860.860 INFO    ] No existing commands found in stream
[2026-06-12 20:46:47,869.869 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 20:46:47,872.872 INFO    ] Waiting 3.57 seconds before fallback handling...
[2026-06-12 20:46:51,819.819 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 20:46:51,821.821 INFO    ] Checking for system updates...
[2026-06-12 20:46:51,842.842 INFO    ] 200
[2026-06-12 20:46:51,844.844 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:46:51,874.874 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 20:46:51,875.875 INFO    ] No update needed
[2026-06-12 20:46:51,876.876 INFO    ] Checking for camera pi updates...
[2026-06-12 20:46:51,896.896 INFO    ] 200
[2026-06-12 20:46:51,897.897 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:46:51,920.920 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 20:46:51,965.965 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 20:46:51,967.967 INFO    ] No camera update needed
[2026-06-12 20:46:51,968.968 INFO    ] Script finished. Safe exiting...
[2026-06-12 20:46:51,969.969 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 20:46:51,973.973 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 20:46:51,976.976 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 20:46:54,015.015 INFO    ] ================================================
[2026-06-12 20:46:54,030.030 INFO    ] Launching Daemon at Fri Jun 12 20:46:54 IST 2026
[2026-06-12 20:46:54,041.041 INFO    ] ================================================
[2026-06-12 20:46:54,405.405 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 20:46:54
[2026-06-12 20:46:54,736.736 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 20:46:54,886.886 INFO    ] Initializing speech engine...
[2026-06-12 20:46:54,892.892 INFO    ] 2026-06-12 20:46:54
[2026-06-12 20:46:55,102.102 INFO    ] 2026-06-12 20:46:55
[2026-06-12 20:46:55,131.131 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 20:46:55,318.318 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 20:46:55,328.328 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 20:46:55,459.459 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 20:46:55,527.527 INFO    ] time= 12/06/2026 20:46:55
[2026-06-12 20:46:55,552.552 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 20:46:55,558.558 INFO    ] Checking for existing commands in stream...
[2026-06-12 20:46:55,626.626 INFO    ] No existing commands found in stream
[2026-06-12 20:47:00,645.645 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 20:47:00,648.648 INFO    ] Waiting 1.59 seconds before fallback handling...
[2026-06-12 20:47:02,538.538 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 20:47:02,539.539 INFO    ] Checking for system updates...
[2026-06-12 20:47:02,562.562 INFO    ] 200
[2026-06-12 20:47:02,563.563 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:47:02,593.593 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 20:47:02,594.594 INFO    ] No update needed
[2026-06-12 20:47:02,595.595 INFO    ] Checking for camera pi updates...
[2026-06-12 20:47:02,614.614 INFO    ] 200
[2026-06-12 20:47:02,616.616 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:47:02,639.639 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 20:47:02,667.667 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 20:47:02,668.668 INFO    ] No camera update needed
[2026-06-12 20:47:02,670.670 INFO    ] Script finished. Safe exiting...
[2026-06-12 20:47:02,671.671 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 20:47:02,674.674 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 20:47:02,677.677 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 20:47:04,715.715 INFO    ] ================================================
[2026-06-12 20:47:04,730.730 INFO    ] Launching Daemon at Fri Jun 12 20:47:04 IST 2026
[2026-06-12 20:47:04,741.741 INFO    ] ================================================
[2026-06-12 20:47:05,103.103 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 20:47:05
[2026-06-12 20:47:05,447.447 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 20:47:05,577.577 INFO    ] Initializing speech engine...
[2026-06-12 20:47:05,582.582 INFO    ] 2026-06-12 20:47:05
[2026-06-12 20:47:05,803.803 INFO    ] 2026-06-12 20:47:05
[2026-06-12 20:47:05,833.833 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 20:47:06,018.018 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 20:47:06,027.027 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 20:47:06,160.160 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 20:47:06,228.228 INFO    ] time= 12/06/2026 20:47:06
[2026-06-12 20:47:06,252.252 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 20:47:06,258.258 INFO    ] Checking for existing commands in stream...
[2026-06-12 20:47:06,325.325 INFO    ] No existing commands found in stream
[2026-06-12 20:47:11,340.340 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 20:47:11,343.343 INFO    ] Waiting 1.48 seconds before fallback handling...
[2026-06-12 20:47:13,225.225 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 20:47:13,227.227 INFO    ] Checking for system updates...
[2026-06-12 20:47:13,248.248 INFO    ] 200
[2026-06-12 20:47:13,249.249 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:47:13,280.280 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 20:47:13,281.281 INFO    ] No update needed
[2026-06-12 20:47:13,283.283 INFO    ] Checking for camera pi updates...
[2026-06-12 20:47:13,302.302 INFO    ] 200
[2026-06-12 20:47:13,304.304 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:47:13,327.327 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 20:47:13,372.372 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 20:47:13,373.373 INFO    ] No camera update needed
[2026-06-12 20:47:13,375.375 INFO    ] Script finished. Safe exiting...
[2026-06-12 20:47:13,376.376 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 20:47:13,379.379 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 20:47:13,382.382 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 20:47:15,420.420 INFO    ] ================================================
[2026-06-12 20:47:15,435.435 INFO    ] Launching Daemon at Fri Jun 12 20:47:15 IST 2026
[2026-06-12 20:47:15,446.446 INFO    ] ================================================
[2026-06-12 20:47:15,836.836 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 20:47:15
[2026-06-12 20:47:16,168.168 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 20:47:16,318.318 INFO    ] Initializing speech engine...
[2026-06-12 20:47:16,324.324 INFO    ] 2026-06-12 20:47:16
[2026-06-12 20:47:16,531.531 INFO    ] 2026-06-12 20:47:16
[2026-06-12 20:47:16,560.560 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 20:47:16,744.744 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 20:47:16,753.753 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 20:47:16,882.882 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 20:47:16,950.950 INFO    ] time= 12/06/2026 20:47:16
[2026-06-12 20:47:16,973.973 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 20:47:16,980.980 INFO    ] Checking for existing commands in stream...
[2026-06-12 20:47:17,047.047 INFO    ] No existing commands found in stream
[2026-06-12 20:47:22,061.061 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 20:47:22,064.064 INFO    ] Waiting 3.99 seconds before fallback handling...
[2026-06-12 20:47:26,448.448 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 20:47:26,450.450 INFO    ] Checking for system updates...
[2026-06-12 20:47:26,470.470 INFO    ] 200
[2026-06-12 20:47:26,472.472 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:47:26,504.504 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 20:47:26,505.505 INFO    ] No update needed
[2026-06-12 20:47:26,506.506 INFO    ] Checking for camera pi updates...
[2026-06-12 20:47:26,526.526 INFO    ] 200
[2026-06-12 20:47:26,527.527 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:47:26,553.553 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 20:47:26,689.689 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 20:47:26,691.691 INFO    ] No camera update needed
[2026-06-12 20:47:26,692.692 INFO    ] Script finished. Safe exiting...
[2026-06-12 20:47:26,693.693 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 20:47:26,696.696 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 20:47:26,699.699 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 20:47:28,737.737 INFO    ] ================================================
[2026-06-12 20:47:28,753.753 INFO    ] Launching Daemon at Fri Jun 12 20:47:28 IST 2026
[2026-06-12 20:47:28,764.764 INFO    ] ================================================
[2026-06-12 20:47:29,139.139 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 20:47:29
[2026-06-12 20:47:29,457.457 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 20:47:29,591.591 INFO    ] Initializing speech engine...
[2026-06-12 20:47:29,600.600 INFO    ] 2026-06-12 20:47:29
[2026-06-12 20:47:29,824.824 INFO    ] 2026-06-12 20:47:29
[2026-06-12 20:47:29,855.855 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 20:47:30,051.051 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 20:47:30,055.055 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 20:47:30,193.193 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 20:47:30,239.239 INFO    ] time= 12/06/2026 20:47:30
[2026-06-12 20:47:30,277.277 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 20:47:30,300.300 INFO    ] Checking for existing commands in stream...
[2026-06-12 20:47:30,402.402 INFO    ] No existing commands found in stream
[2026-06-12 20:47:35,411.411 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 20:47:35,414.414 INFO    ] Waiting 2.65 seconds before fallback handling...
[2026-06-12 20:47:38,446.446 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 20:47:38,447.447 INFO    ] Checking for system updates...
[2026-06-12 20:47:38,468.468 INFO    ] 200
[2026-06-12 20:47:38,469.469 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:47:38,502.502 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 20:47:38,503.503 INFO    ] No update needed
[2026-06-12 20:47:38,504.504 INFO    ] Checking for camera pi updates...
[2026-06-12 20:47:38,524.524 INFO    ] 200
[2026-06-12 20:47:38,525.525 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:47:38,551.551 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 20:47:38,600.600 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 20:47:38,601.601 INFO    ] No camera update needed
[2026-06-12 20:47:38,603.603 INFO    ] Script finished. Safe exiting...
[2026-06-12 20:47:38,604.604 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 20:47:38,607.607 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 20:47:38,610.610 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 20:47:40,648.648 INFO    ] ================================================
[2026-06-12 20:47:40,663.663 INFO    ] Launching Daemon at Fri Jun 12 20:47:40 IST 2026
[2026-06-12 20:47:40,674.674 INFO    ] ================================================
[2026-06-12 20:47:41,036.036 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 20:47:41
[2026-06-12 20:47:41,354.354 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 20:47:41,497.497 INFO    ] Initializing speech engine...
[2026-06-12 20:47:41,503.503 INFO    ] 2026-06-12 20:47:41
[2026-06-12 20:47:41,706.706 INFO    ] 2026-06-12 20:47:41
[2026-06-12 20:47:41,734.734 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 20:47:41,916.916 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 20:47:41,920.920 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 20:47:42,054.054 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 20:47:42,113.113 INFO    ] time= 12/06/2026 20:47:42
[2026-06-12 20:47:42,144.144 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 20:47:42,150.150 INFO    ] Checking for existing commands in stream...
[2026-06-12 20:47:42,216.216 INFO    ] No existing commands found in stream
[2026-06-12 20:47:47,250.250 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 20:47:47,257.257 INFO    ] Waiting 2.87 seconds before fallback handling...
[2026-06-12 20:47:50,508.508 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 20:47:50,509.509 INFO    ] Checking for system updates...
[2026-06-12 20:47:50,530.530 INFO    ] 200
[2026-06-12 20:47:50,531.531 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:47:50,562.562 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 20:47:50,563.563 INFO    ] No update needed
[2026-06-12 20:47:50,564.564 INFO    ] Checking for camera pi updates...
[2026-06-12 20:47:50,583.583 INFO    ] 200
[2026-06-12 20:47:50,585.585 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:47:50,607.607 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 20:47:50,648.648 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 20:47:50,650.650 INFO    ] No camera update needed
[2026-06-12 20:47:50,651.651 INFO    ] Script finished. Safe exiting...
[2026-06-12 20:47:50,652.652 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 20:47:50,655.655 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 20:47:50,658.658 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 20:47:52,695.695 INFO    ] ================================================
[2026-06-12 20:47:52,711.711 INFO    ] Launching Daemon at Fri Jun 12 20:47:52 IST 2026
[2026-06-12 20:47:52,722.722 INFO    ] ================================================
[2026-06-12 20:47:53,069.069 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 20:47:53
[2026-06-12 20:47:53,381.381 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 20:47:53,523.523 INFO    ] Initializing speech engine...
[2026-06-12 20:47:53,528.528 INFO    ] 2026-06-12 20:47:53
[2026-06-12 20:47:53,733.733 INFO    ] 2026-06-12 20:47:53
[2026-06-12 20:47:53,763.763 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 20:47:53,948.948 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 20:47:53,957.957 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 20:47:54,087.087 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 20:47:54,146.146 INFO    ] time= 12/06/2026 20:47:54
[2026-06-12 20:47:54,179.179 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 20:47:54,181.181 INFO    ] Checking for existing commands in stream...
[2026-06-12 20:47:54,276.276 INFO    ] No existing commands found in stream
[2026-06-12 20:47:59,290.290 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 20:47:59,293.293 INFO    ] Waiting 1.38 seconds before fallback handling...
[2026-06-12 20:48:01,048.048 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 20:48:01,050.050 INFO    ] Checking for system updates...
[2026-06-12 20:48:01,071.071 INFO    ] 200
[2026-06-12 20:48:01,072.072 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:48:01,102.102 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 20:48:01,104.104 INFO    ] No update needed
[2026-06-12 20:48:01,105.105 INFO    ] Checking for camera pi updates...
[2026-06-12 20:48:01,124.124 INFO    ] 200
[2026-06-12 20:48:01,126.126 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:48:01,149.149 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 20:48:01,197.197 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 20:48:01,199.199 INFO    ] No camera update needed
[2026-06-12 20:48:01,200.200 INFO    ] Script finished. Safe exiting...
[2026-06-12 20:48:01,202.202 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 20:48:01,205.205 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 20:48:01,208.208 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 20:48:03,241.241 INFO    ] ================================================
[2026-06-12 20:48:03,258.258 INFO    ] Launching Daemon at Fri Jun 12 20:48:03 IST 2026
[2026-06-12 20:48:03,270.270 INFO    ] ================================================
[2026-06-12 20:48:03,625.625 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 20:48:03
[2026-06-12 20:48:03,942.942 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 20:48:04,086.086 INFO    ] Initializing speech engine...
[2026-06-12 20:48:04,092.092 INFO    ] 2026-06-12 20:48:04
[2026-06-12 20:48:04,295.295 INFO    ] 2026-06-12 20:48:04
[2026-06-12 20:48:04,323.323 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 20:48:04,507.507 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 20:48:04,510.510 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 20:48:04,640.640 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 20:48:04,700.700 INFO    ] time= 12/06/2026 20:48:04
[2026-06-12 20:48:04,735.735 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 20:48:04,745.745 INFO    ] Checking for existing commands in stream...
[2026-06-12 20:48:04,812.812 INFO    ] No existing commands found in stream
[2026-06-12 20:48:09,826.826 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 20:48:09,829.829 INFO    ] Waiting 3.82 seconds before fallback handling...
[2026-06-12 20:48:14,010.010 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 20:48:14,013.013 INFO    ] Checking for system updates...
[2026-06-12 20:48:14,050.050 INFO    ] 200
[2026-06-12 20:48:14,052.052 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:48:14,106.106 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 20:48:14,108.108 INFO    ] No update needed
[2026-06-12 20:48:14,111.111 INFO    ] Checking for camera pi updates...
[2026-06-12 20:48:14,146.146 INFO    ] 200
[2026-06-12 20:48:14,149.149 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:48:14,191.191 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 20:48:14,239.239 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 20:48:14,241.241 INFO    ] No camera update needed
[2026-06-12 20:48:14,242.242 INFO    ] Script finished. Safe exiting...
[2026-06-12 20:48:14,244.244 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 20:48:14,247.247 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 20:48:14,250.250 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 20:48:16,289.289 INFO    ] ================================================
[2026-06-12 20:48:16,305.305 INFO    ] Launching Daemon at Fri Jun 12 20:48:16 IST 2026
[2026-06-12 20:48:16,316.316 INFO    ] ================================================
[2026-06-12 20:48:16,658.658 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 20:48:16
[2026-06-12 20:48:16,969.969 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 20:48:17,111.111 INFO    ] Initializing speech engine...
[2026-06-12 20:48:17,116.116 INFO    ] 2026-06-12 20:48:17
[2026-06-12 20:48:17,318.318 INFO    ] 2026-06-12 20:48:17
[2026-06-12 20:48:17,347.347 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 20:48:17,533.533 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 20:48:17,536.536 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 20:48:17,672.672 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 20:48:17,736.736 INFO    ] time= 12/06/2026 20:48:17
[2026-06-12 20:48:17,763.763 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 20:48:17,770.770 INFO    ] Checking for existing commands in stream...
[2026-06-12 20:48:17,837.837 INFO    ] No existing commands found in stream
[2026-06-12 20:48:22,856.856 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 20:48:22,859.859 INFO    ] Waiting 2.53 seconds before fallback handling...
[2026-06-12 20:48:25,789.789 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 20:48:25,790.790 INFO    ] Checking for system updates...
[2026-06-12 20:48:25,811.811 INFO    ] 200
[2026-06-12 20:48:25,812.812 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:48:25,844.844 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 20:48:25,845.845 INFO    ] No update needed
[2026-06-12 20:48:25,846.846 INFO    ] Checking for camera pi updates...
[2026-06-12 20:48:25,866.866 INFO    ] 200
[2026-06-12 20:48:25,867.867 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:48:25,890.890 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 20:48:25,933.933 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 20:48:25,935.935 INFO    ] No camera update needed
[2026-06-12 20:48:25,936.936 INFO    ] Script finished. Safe exiting...
[2026-06-12 20:48:25,937.937 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 20:48:25,940.940 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 20:48:25,943.943 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 20:48:27,982.982 INFO    ] ================================================
[2026-06-12 20:48:28,998.998 INFO    ] Launching Daemon at Fri Jun 12 20:48:27 IST 2026
[2026-06-12 20:48:28,009.009 INFO    ] ================================================
[2026-06-12 20:48:28,361.361 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 20:48:28
[2026-06-12 20:48:28,680.680 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 20:48:28,813.813 INFO    ] Initializing speech engine...
[2026-06-12 20:48:28,821.821 INFO    ] 2026-06-12 20:48:28
[2026-06-12 20:48:29,038.038 INFO    ] 2026-06-12 20:48:29
[2026-06-12 20:48:29,067.067 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 20:48:29,253.253 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 20:48:29,262.262 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 20:48:29,386.386 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 20:48:29,447.447 INFO    ] time= 12/06/2026 20:48:29
[2026-06-12 20:48:29,477.477 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 20:48:29,487.487 INFO    ] Checking for existing commands in stream...
[2026-06-12 20:48:29,583.583 INFO    ] No existing commands found in stream
[2026-06-12 20:48:34,597.597 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 20:48:34,600.600 INFO    ] Waiting 2.36 seconds before fallback handling...
[2026-06-12 20:48:37,319.319 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 20:48:37,320.320 INFO    ] Checking for system updates...
[2026-06-12 20:48:37,342.342 INFO    ] 200
[2026-06-12 20:48:37,344.344 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:48:37,374.374 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 20:48:37,375.375 INFO    ] No update needed
[2026-06-12 20:48:37,377.377 INFO    ] Checking for camera pi updates...
[2026-06-12 20:48:37,396.396 INFO    ] 200
[2026-06-12 20:48:37,397.397 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:48:37,422.422 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 20:48:37,464.464 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 20:48:37,465.465 INFO    ] No camera update needed
[2026-06-12 20:48:37,467.467 INFO    ] Script finished. Safe exiting...
[2026-06-12 20:48:37,468.468 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 20:48:37,471.471 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 20:48:37,474.474 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 20:48:39,514.514 INFO    ] ================================================
[2026-06-12 20:48:39,529.529 INFO    ] Launching Daemon at Fri Jun 12 20:48:39 IST 2026
[2026-06-12 20:48:39,540.540 INFO    ] ================================================
[2026-06-12 20:48:39,889.889 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 20:48:39
[2026-06-12 20:48:40,215.215 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 20:48:40,357.357 INFO    ] Initializing speech engine...
[2026-06-12 20:48:40,363.363 INFO    ] 2026-06-12 20:48:40
[2026-06-12 20:48:40,564.564 INFO    ] 2026-06-12 20:48:40
[2026-06-12 20:48:40,593.593 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 20:48:40,776.776 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 20:48:40,785.785 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 20:48:40,911.911 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 20:48:40,973.973 INFO    ] time= 12/06/2026 20:48:40
[2026-06-12 20:48:41,006.006 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 20:48:41,012.012 INFO    ] Checking for existing commands in stream...
[2026-06-12 20:48:41,079.079 INFO    ] No existing commands found in stream
[2026-06-12 20:48:46,093.093 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 20:48:46,096.096 INFO    ] Waiting 3.54 seconds before fallback handling...
[2026-06-12 20:48:50,013.013 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 20:48:50,014.014 INFO    ] Checking for system updates...
[2026-06-12 20:48:50,035.035 INFO    ] 200
[2026-06-12 20:48:50,037.037 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:48:50,067.067 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 20:48:50,068.068 INFO    ] No update needed
[2026-06-12 20:48:50,070.070 INFO    ] Checking for camera pi updates...
[2026-06-12 20:48:50,089.089 INFO    ] 200
[2026-06-12 20:48:50,091.091 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:48:50,114.114 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 20:48:50,164.164 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 20:48:50,165.165 INFO    ] No camera update needed
[2026-06-12 20:48:50,166.166 INFO    ] Script finished. Safe exiting...
[2026-06-12 20:48:50,167.167 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 20:48:50,171.171 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 20:48:50,173.173 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 20:48:52,205.205 INFO    ] ================================================
[2026-06-12 20:48:52,221.221 INFO    ] Launching Daemon at Fri Jun 12 20:48:52 IST 2026
[2026-06-12 20:48:52,231.231 INFO    ] ================================================
[2026-06-12 20:48:52,612.612 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 20:48:52
[2026-06-12 20:48:52,957.957 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 20:48:53,112.112 INFO    ] Initializing speech engine...
[2026-06-12 20:48:53,120.120 INFO    ] 2026-06-12 20:48:53
[2026-06-12 20:48:53,322.322 INFO    ] 2026-06-12 20:48:53
[2026-06-12 20:48:53,372.372 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 20:48:53,519.519 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 20:48:53,536.536 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 20:48:53,700.700 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 20:48:53,734.734 INFO    ] time= 12/06/2026 20:48:53
[2026-06-12 20:48:53,806.806 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 20:48:53,838.838 INFO    ] Checking for existing commands in stream...
[2026-06-12 20:48:53,911.911 INFO    ] No existing commands found in stream
[2026-06-12 20:48:58,921.921 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 20:48:58,922.922 INFO    ] Waiting 0.60 seconds before fallback handling...
[2026-06-12 20:48:59,911.911 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 20:48:59,912.912 INFO    ] Checking for system updates...
[2026-06-12 20:48:59,934.934 INFO    ] 200
[2026-06-12 20:48:59,935.935 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:48:59,965.965 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 20:48:59,966.966 INFO    ] No update needed
[2026-06-12 20:48:59,968.968 INFO    ] Checking for camera pi updates...
[2026-06-12 20:48:59,987.987 INFO    ] 200
[2026-06-12 20:48:59,988.988 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:49:00,012.012 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 20:49:00,062.062 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 20:49:00,064.064 INFO    ] No camera update needed
[2026-06-12 20:49:00,065.065 INFO    ] Script finished. Safe exiting...
[2026-06-12 20:49:00,066.066 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 20:49:00,069.069 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 20:49:00,072.072 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 20:49:02,105.105 INFO    ] ================================================
[2026-06-12 20:49:02,116.116 INFO    ] Launching Daemon at Fri Jun 12 20:49:02 IST 2026
[2026-06-12 20:49:02,126.126 INFO    ] ================================================
[2026-06-12 20:49:02,510.510 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 20:49:02
[2026-06-12 20:49:02,868.868 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 20:49:03,018.018 INFO    ] Initializing speech engine...
[2026-06-12 20:49:03,023.023 INFO    ] 2026-06-12 20:49:03
[2026-06-12 20:49:03,230.230 INFO    ] 2026-06-12 20:49:03
[2026-06-12 20:49:03,260.260 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 20:49:03,384.384 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 20:49:03,442.442 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 20:49:03,590.590 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 20:49:03,659.659 INFO    ] time= 12/06/2026 20:49:03
[2026-06-12 20:49:03,683.683 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 20:49:03,689.689 INFO    ] Checking for existing commands in stream...
[2026-06-12 20:49:03,757.757 INFO    ] No existing commands found in stream
[2026-06-12 20:49:08,772.772 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 20:49:08,775.775 INFO    ] Waiting 3.13 seconds before fallback handling...
[2026-06-12 20:49:12,301.301 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 20:49:12,303.303 INFO    ] Checking for system updates...
[2026-06-12 20:49:12,324.324 INFO    ] 200
[2026-06-12 20:49:12,325.325 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:49:12,355.355 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 20:49:12,356.356 INFO    ] No update needed
[2026-06-12 20:49:12,358.358 INFO    ] Checking for camera pi updates...
[2026-06-12 20:49:12,378.378 INFO    ] 200
[2026-06-12 20:49:12,380.380 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:49:12,403.403 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 20:49:12,464.464 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 20:49:12,465.465 INFO    ] No camera update needed
[2026-06-12 20:49:12,466.466 INFO    ] Script finished. Safe exiting...
[2026-06-12 20:49:12,468.468 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 20:49:12,471.471 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 20:49:12,474.474 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 20:49:14,515.515 INFO    ] ================================================
[2026-06-12 20:49:14,531.531 INFO    ] Launching Daemon at Fri Jun 12 20:49:14 IST 2026
[2026-06-12 20:49:14,542.542 INFO    ] ================================================
[2026-06-12 20:49:14,888.888 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 20:49:14
[2026-06-12 20:49:15,217.217 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 20:49:15,354.354 INFO    ] Initializing speech engine...
[2026-06-12 20:49:15,364.364 INFO    ] 2026-06-12 20:49:15
[2026-06-12 20:49:15,570.570 INFO    ] 2026-06-12 20:49:15
[2026-06-12 20:49:15,599.599 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 20:49:15,783.783 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 20:49:15,793.793 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 20:49:15,923.923 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 20:49:15,987.987 INFO    ] time= 12/06/2026 20:49:15
[2026-06-12 20:49:16,014.014 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 20:49:16,021.021 INFO    ] Checking for existing commands in stream...
[2026-06-12 20:49:16,088.088 INFO    ] No existing commands found in stream
[2026-06-12 20:49:21,102.102 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 20:49:21,105.105 INFO    ] Waiting 0.67 seconds before fallback handling...
[2026-06-12 20:49:22,133.133 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 20:49:22,134.134 INFO    ] Checking for system updates...
[2026-06-12 20:49:22,155.155 INFO    ] 200
[2026-06-12 20:49:22,156.156 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:49:22,186.186 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 20:49:22,187.187 INFO    ] No update needed
[2026-06-12 20:49:22,188.188 INFO    ] Checking for camera pi updates...
[2026-06-12 20:49:22,207.207 INFO    ] 200
[2026-06-12 20:49:22,209.209 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:49:22,232.232 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 20:49:22,286.286 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 20:49:22,287.287 INFO    ] No camera update needed
[2026-06-12 20:49:22,289.289 INFO    ] Script finished. Safe exiting...
[2026-06-12 20:49:22,290.290 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 20:49:22,293.293 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 20:49:22,296.296 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 20:49:24,333.333 INFO    ] ================================================
[2026-06-12 20:49:24,348.348 INFO    ] Launching Daemon at Fri Jun 12 20:49:24 IST 2026
[2026-06-12 20:49:24,358.358 INFO    ] ================================================
[2026-06-12 20:49:24,711.711 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 20:49:24
[2026-06-12 20:49:25,024.024 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 20:49:25,155.155 INFO    ] Initializing speech engine...
[2026-06-12 20:49:25,169.169 INFO    ] 2026-06-12 20:49:25
[2026-06-12 20:49:25,375.375 INFO    ] 2026-06-12 20:49:25
[2026-06-12 20:49:25,403.403 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 20:49:25,588.588 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 20:49:25,597.597 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 20:49:25,771.771 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 20:49:25,811.811 INFO    ] time= 12/06/2026 20:49:25
[2026-06-12 20:49:25,817.817 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 20:49:25,823.823 INFO    ] Checking for existing commands in stream...
[2026-06-12 20:49:25,888.888 INFO    ] No existing commands found in stream
[2026-06-12 20:49:30,899.899 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 20:49:30,902.902 INFO    ] Waiting 0.79 seconds before fallback handling...
[2026-06-12 20:49:32,066.066 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 20:49:32,068.068 INFO    ] Checking for system updates...
[2026-06-12 20:49:32,092.092 INFO    ] 200
[2026-06-12 20:49:32,094.094 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:49:32,131.131 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 20:49:32,133.133 INFO    ] No update needed
[2026-06-12 20:49:32,135.135 INFO    ] Checking for camera pi updates...
[2026-06-12 20:49:32,161.161 INFO    ] 200
[2026-06-12 20:49:32,162.162 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:49:32,188.188 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 20:49:32,313.313 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 20:49:32,315.315 INFO    ] No camera update needed
[2026-06-12 20:49:32,316.316 INFO    ] Script finished. Safe exiting...
[2026-06-12 20:49:32,318.318 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 20:49:32,321.321 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 20:49:32,325.325 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 20:49:34,364.364 INFO    ] ================================================
[2026-06-12 20:49:34,379.379 INFO    ] Launching Daemon at Fri Jun 12 20:49:34 IST 2026
[2026-06-12 20:49:34,390.390 INFO    ] ================================================
[2026-06-12 20:49:34,771.771 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 20:49:34
[2026-06-12 20:49:35,102.102 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 20:49:35,251.251 INFO    ] Initializing speech engine...
[2026-06-12 20:49:35,257.257 INFO    ] 2026-06-12 20:49:35
[2026-06-12 20:49:35,465.465 INFO    ] 2026-06-12 20:49:35
[2026-06-12 20:49:35,494.494 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 20:49:35,680.680 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 20:49:35,684.684 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 20:49:35,821.821 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 20:49:35,890.890 INFO    ] time= 12/06/2026 20:49:35
[2026-06-12 20:49:35,914.914 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 20:49:35,921.921 INFO    ] Checking for existing commands in stream...
[2026-06-12 20:49:35,988.988 INFO    ] No existing commands found in stream
[2026-06-12 20:49:41,003.003 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 20:49:41,006.006 INFO    ] Waiting 0.10 seconds before fallback handling...
[2026-06-12 20:49:41,460.460 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 20:49:41,462.462 INFO    ] Checking for system updates...
[2026-06-12 20:49:41,482.482 INFO    ] 200
[2026-06-12 20:49:41,484.484 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:49:41,514.514 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 20:49:41,516.516 INFO    ] No update needed
[2026-06-12 20:49:41,517.517 INFO    ] Checking for camera pi updates...
[2026-06-12 20:49:41,536.536 INFO    ] 200
[2026-06-12 20:49:41,538.538 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:49:41,561.561 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 20:49:41,608.608 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 20:49:41,609.609 INFO    ] No camera update needed
[2026-06-12 20:49:41,611.611 INFO    ] Script finished. Safe exiting...
[2026-06-12 20:49:41,612.612 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 20:49:41,615.615 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 20:49:41,618.618 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 20:49:43,658.658 INFO    ] ================================================
[2026-06-12 20:49:43,673.673 INFO    ] Launching Daemon at Fri Jun 12 20:49:43 IST 2026
[2026-06-12 20:49:43,684.684 INFO    ] ================================================
[2026-06-12 20:49:44,005.005 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 20:49:44
[2026-06-12 20:49:44,317.317 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 20:49:44,467.467 INFO    ] Initializing speech engine...
[2026-06-12 20:49:44,472.472 INFO    ] 2026-06-12 20:49:44
[2026-06-12 20:49:44,682.682 INFO    ] 2026-06-12 20:49:44
[2026-06-12 20:49:44,712.712 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 20:49:44,878.878 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 20:49:44,910.910 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 20:49:45,048.048 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 20:49:45,109.109 INFO    ] time= 12/06/2026 20:49:45
[2026-06-12 20:49:45,147.147 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 20:49:45,153.153 INFO    ] Checking for existing commands in stream...
[2026-06-12 20:49:45,254.254 INFO    ] No existing commands found in stream
[2026-06-12 20:49:50,263.263 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 20:49:50,265.265 INFO    ] Waiting 1.29 seconds before fallback handling...
[2026-06-12 20:49:51,917.917 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 20:49:51,919.919 INFO    ] Checking for system updates...
[2026-06-12 20:49:51,940.940 INFO    ] 200
[2026-06-12 20:49:51,942.942 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:49:51,972.972 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 20:49:51,973.973 INFO    ] No update needed
[2026-06-12 20:49:51,974.974 INFO    ] Checking for camera pi updates...
[2026-06-12 20:49:51,996.996 INFO    ] 200
[2026-06-12 20:49:51,997.997 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:49:52,024.024 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 20:49:52,078.078 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 20:49:52,079.079 INFO    ] No camera update needed
[2026-06-12 20:49:52,081.081 INFO    ] Script finished. Safe exiting...
[2026-06-12 20:49:52,082.082 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 20:49:52,085.085 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 20:49:52,088.088 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 20:49:54,126.126 INFO    ] ================================================
[2026-06-12 20:49:54,141.141 INFO    ] Launching Daemon at Fri Jun 12 20:49:54 IST 2026
[2026-06-12 20:49:54,151.151 INFO    ] ================================================
[2026-06-12 20:49:54,501.501 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 20:49:54
[2026-06-12 20:49:54,817.817 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 20:49:54,963.963 INFO    ] Initializing speech engine...
[2026-06-12 20:49:54,968.968 INFO    ] 2026-06-12 20:49:54
[2026-06-12 20:49:55,172.172 INFO    ] 2026-06-12 20:49:55
[2026-06-12 20:49:55,200.200 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 20:49:55,392.392 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 20:49:55,396.396 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 20:49:55,541.541 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 20:49:55,600.600 INFO    ] time= 12/06/2026 20:49:55
[2026-06-12 20:49:55,637.637 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 20:49:55,644.644 INFO    ] Checking for existing commands in stream...
[2026-06-12 20:49:55,712.712 INFO    ] No existing commands found in stream
[2026-06-12 20:50:00,723.723 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 20:50:00,726.726 INFO    ] Waiting 1.13 seconds before fallback handling...
[2026-06-12 20:50:02,284.284 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 20:50:02,293.293 INFO    ] Checking for system updates...
[2026-06-12 20:50:02,343.343 INFO    ] 200
[2026-06-12 20:50:02,345.345 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:50:02,447.447 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 20:50:02,450.450 INFO    ] No update needed
[2026-06-12 20:50:02,452.452 INFO    ] Checking for camera pi updates...
[2026-06-12 20:50:02,493.493 INFO    ] 200
[2026-06-12 20:50:02,495.495 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:50:02,542.542 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 20:50:02,581.581 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 20:50:02,583.583 INFO    ] No camera update needed
[2026-06-12 20:50:02,586.586 INFO    ] Script finished. Safe exiting...
[2026-06-12 20:50:02,588.588 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 20:50:02,594.594 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 20:50:02,602.602 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 20:50:04,636.636 INFO    ] ================================================
[2026-06-12 20:50:04,651.651 INFO    ] Launching Daemon at Fri Jun 12 20:50:04 IST 2026
[2026-06-12 20:50:04,662.662 INFO    ] ================================================
[2026-06-12 20:50:05,003.003 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 20:50:05
[2026-06-12 20:50:05,319.319 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 20:50:05,457.457 INFO    ] Initializing speech engine...
[2026-06-12 20:50:05,467.467 INFO    ] 2026-06-12 20:50:05
[2026-06-12 20:50:05,671.671 INFO    ] 2026-06-12 20:50:05
[2026-06-12 20:50:05,700.700 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 20:50:05,891.891 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 20:50:05,895.895 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 20:50:06,030.030 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 20:50:06,089.089 INFO    ] time= 12/06/2026 20:50:06
[2026-06-12 20:50:06,122.122 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 20:50:06,128.128 INFO    ] Checking for existing commands in stream...
[2026-06-12 20:50:06,195.195 INFO    ] No existing commands found in stream
[2026-06-12 20:50:11,219.219 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 20:50:11,222.222 INFO    ] Waiting 2.17 seconds before fallback handling...
[2026-06-12 20:50:13,737.737 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 20:50:13,741.741 INFO    ] Checking for system updates...
[2026-06-12 20:50:13,779.779 INFO    ] 200
[2026-06-12 20:50:13,782.782 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:50:13,818.818 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 20:50:13,820.820 INFO    ] No update needed
[2026-06-12 20:50:13,821.821 INFO    ] Checking for camera pi updates...
[2026-06-12 20:50:13,845.845 INFO    ] 200
[2026-06-12 20:50:13,846.846 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:50:13,875.875 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 20:50:13,927.927 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 20:50:13,929.929 INFO    ] No camera update needed
[2026-06-12 20:50:13,931.931 INFO    ] Script finished. Safe exiting...
[2026-06-12 20:50:13,932.932 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 20:50:13,935.935 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 20:50:13,938.938 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 20:50:15,977.977 INFO    ] ================================================
[2026-06-12 20:50:15,993.993 INFO    ] Launching Daemon at Fri Jun 12 20:50:15 IST 2026
[2026-06-12 20:50:16,004.004 INFO    ] ================================================
[2026-06-12 20:50:16,344.344 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 20:50:16
[2026-06-12 20:50:16,657.657 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 20:50:16,788.788 INFO    ] Initializing speech engine...
[2026-06-12 20:50:16,801.801 INFO    ] 2026-06-12 20:50:16
[2026-06-12 20:50:17,010.010 INFO    ] 2026-06-12 20:50:16
[2026-06-12 20:50:17,039.039 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 20:50:17,225.225 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 20:50:17,229.229 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 20:50:17,366.366 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 20:50:17,435.435 INFO    ] time= 12/06/2026 20:50:17
[2026-06-12 20:50:17,459.459 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 20:50:17,465.465 INFO    ] Checking for existing commands in stream...
[2026-06-12 20:50:17,533.533 INFO    ] No existing commands found in stream
[2026-06-12 20:50:22,542.542 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 20:50:22,545.545 INFO    ] Waiting 2.84 seconds before fallback handling...
[2026-06-12 20:50:25,800.800 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 20:50:25,803.803 INFO    ] Checking for system updates...
[2026-06-12 20:50:25,842.842 INFO    ] 200
[2026-06-12 20:50:25,845.845 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:50:25,903.903 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 20:50:25,906.906 INFO    ] No update needed
[2026-06-12 20:50:25,908.908 INFO    ] Checking for camera pi updates...
[2026-06-12 20:50:25,937.937 INFO    ] 200
[2026-06-12 20:50:25,939.939 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:50:25,963.963 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 20:50:26,019.019 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 20:50:26,020.020 INFO    ] No camera update needed
[2026-06-12 20:50:26,021.021 INFO    ] Script finished. Safe exiting...
[2026-06-12 20:50:26,023.023 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 20:50:26,025.025 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 20:50:26,028.028 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 20:50:28,067.067 INFO    ] ================================================
[2026-06-12 20:50:28,083.083 INFO    ] Launching Daemon at Fri Jun 12 20:50:28 IST 2026
[2026-06-12 20:50:28,094.094 INFO    ] ================================================
[2026-06-12 20:50:28,455.455 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 20:50:28
[2026-06-12 20:50:28,771.771 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 20:50:28,913.913 INFO    ] Initializing speech engine...
[2026-06-12 20:50:28,918.918 INFO    ] 2026-06-12 20:50:28
[2026-06-12 20:50:29,122.122 INFO    ] 2026-06-12 20:50:29
[2026-06-12 20:50:29,150.150 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 20:50:29,332.332 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 20:50:29,341.341 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 20:50:29,468.468 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 20:50:29,529.529 INFO    ] time= 12/06/2026 20:50:29
[2026-06-12 20:50:29,561.561 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 20:50:29,567.567 INFO    ] Checking for existing commands in stream...
[2026-06-12 20:50:29,633.633 INFO    ] No existing commands found in stream
[2026-06-12 20:50:34,642.642 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 20:50:34,645.645 INFO    ] Waiting 0.31 seconds before fallback handling...
[2026-06-12 20:50:35,345.345 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 20:50:35,347.347 INFO    ] Checking for system updates...
[2026-06-12 20:50:35,367.367 INFO    ] 200
[2026-06-12 20:50:35,369.369 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:50:35,403.403 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 20:50:35,405.405 INFO    ] No update needed
[2026-06-12 20:50:35,406.406 INFO    ] Checking for camera pi updates...
[2026-06-12 20:50:35,426.426 INFO    ] 200
[2026-06-12 20:50:35,428.428 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:50:35,451.451 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 20:50:35,511.511 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 20:50:35,513.513 INFO    ] No camera update needed
[2026-06-12 20:50:35,514.514 INFO    ] Script finished. Safe exiting...
[2026-06-12 20:50:35,515.515 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 20:50:35,518.518 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 20:50:35,521.521 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 20:50:37,560.560 INFO    ] ================================================
[2026-06-12 20:50:37,576.576 INFO    ] Launching Daemon at Fri Jun 12 20:50:37 IST 2026
[2026-06-12 20:50:37,587.587 INFO    ] ================================================
[2026-06-12 20:50:37,931.931 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 20:50:37
[2026-06-12 20:50:38,242.242 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 20:50:38,383.383 INFO    ] Initializing speech engine...
[2026-06-12 20:50:38,393.393 INFO    ] 2026-06-12 20:50:38
[2026-06-12 20:50:38,608.608 INFO    ] 2026-06-12 20:50:38
[2026-06-12 20:50:38,639.639 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 20:50:38,835.835 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 20:50:38,839.839 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 20:50:38,977.977 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 20:50:39,033.033 INFO    ] time= 12/06/2026 20:50:38
[2026-06-12 20:50:39,062.062 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 20:50:39,084.084 INFO    ] Checking for existing commands in stream...
[2026-06-12 20:50:39,160.160 INFO    ] No existing commands found in stream
[2026-06-12 20:50:44,171.171 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 20:50:44,174.174 INFO    ] Waiting 0.77 seconds before fallback handling...
[2026-06-12 20:50:45,300.300 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 20:50:45,301.301 INFO    ] Checking for system updates...
[2026-06-12 20:50:45,322.322 INFO    ] 200
[2026-06-12 20:50:45,323.323 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:50:45,358.358 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 20:50:45,359.359 INFO    ] No update needed
[2026-06-12 20:50:45,361.361 INFO    ] Checking for camera pi updates...
[2026-06-12 20:50:45,382.382 INFO    ] 200
[2026-06-12 20:50:45,383.383 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:50:45,406.406 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 20:50:45,447.447 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 20:50:45,448.448 INFO    ] No camera update needed
[2026-06-12 20:50:45,450.450 INFO    ] Script finished. Safe exiting...
[2026-06-12 20:50:45,451.451 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 20:50:45,454.454 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 20:50:45,457.457 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 20:50:47,498.498 INFO    ] ================================================
[2026-06-12 20:50:47,514.514 INFO    ] Launching Daemon at Fri Jun 12 20:50:47 IST 2026
[2026-06-12 20:50:47,526.526 INFO    ] ================================================
[2026-06-12 20:50:47,852.852 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 20:50:47
[2026-06-12 20:50:48,166.166 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 20:50:48,300.300 INFO    ] Initializing speech engine...
[2026-06-12 20:50:48,305.305 INFO    ] 2026-06-12 20:50:48
[2026-06-12 20:50:48,519.519 INFO    ] 2026-06-12 20:50:48
[2026-06-12 20:50:48,543.543 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 20:50:48,764.764 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 20:50:48,767.767 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 20:50:48,915.915 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 20:50:48,969.969 INFO    ] time= 12/06/2026 20:50:48
[2026-06-12 20:50:49,014.014 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 20:50:49,016.016 INFO    ] Checking for existing commands in stream...
[2026-06-12 20:50:49,093.093 INFO    ] No existing commands found in stream
[2026-06-12 20:50:54,122.122 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 20:50:54,125.125 INFO    ] Waiting 0.56 seconds before fallback handling...
[2026-06-12 20:50:55,038.038 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 20:50:55,040.040 INFO    ] Checking for system updates...
[2026-06-12 20:50:55,061.061 INFO    ] 200
[2026-06-12 20:50:55,062.062 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:50:55,094.094 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 20:50:55,095.095 INFO    ] No update needed
[2026-06-12 20:50:55,096.096 INFO    ] Checking for camera pi updates...
[2026-06-12 20:50:55,116.116 INFO    ] 200
[2026-06-12 20:50:55,118.118 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:50:55,141.141 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 20:50:55,185.185 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 20:50:55,186.186 INFO    ] No camera update needed
[2026-06-12 20:50:55,187.187 INFO    ] Script finished. Safe exiting...
[2026-06-12 20:50:55,188.188 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 20:50:55,191.191 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 20:50:55,194.194 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 20:50:57,234.234 INFO    ] ================================================
[2026-06-12 20:50:57,250.250 INFO    ] Launching Daemon at Fri Jun 12 20:50:57 IST 2026
[2026-06-12 20:50:57,260.260 INFO    ] ================================================
[2026-06-12 20:50:57,606.606 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 20:50:57
[2026-06-12 20:50:57,928.928 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 20:50:58,061.061 INFO    ] Initializing speech engine...
[2026-06-12 20:50:58,066.066 INFO    ] 2026-06-12 20:50:58
[2026-06-12 20:50:58,295.295 INFO    ] 2026-06-12 20:50:58
[2026-06-12 20:50:58,325.325 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 20:50:58,524.524 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 20:50:58,527.527 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 20:50:58,672.672 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 20:50:58,734.734 INFO    ] time= 12/06/2026 20:50:58
[2026-06-12 20:50:58,764.764 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 20:50:58,776.776 INFO    ] Checking for existing commands in stream...
[2026-06-12 20:50:58,851.851 INFO    ] No existing commands found in stream
[2026-06-12 20:51:03,862.862 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 20:51:03,865.865 INFO    ] Waiting 2.78 seconds before fallback handling...
[2026-06-12 20:51:07,010.010 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 20:51:07,012.012 INFO    ] Checking for system updates...
[2026-06-12 20:51:07,034.034 INFO    ] 200
[2026-06-12 20:51:07,035.035 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:51:07,068.068 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 20:51:07,069.069 INFO    ] No update needed
[2026-06-12 20:51:07,071.071 INFO    ] Checking for camera pi updates...
[2026-06-12 20:51:07,090.090 INFO    ] 200
[2026-06-12 20:51:07,091.091 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:51:07,114.114 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 20:51:07,157.157 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 20:51:07,158.158 INFO    ] No camera update needed
[2026-06-12 20:51:07,160.160 INFO    ] Script finished. Safe exiting...
[2026-06-12 20:51:07,161.161 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 20:51:07,164.164 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 20:51:07,167.167 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 20:51:09,205.205 INFO    ] ================================================
[2026-06-12 20:51:09,221.221 INFO    ] Launching Daemon at Fri Jun 12 20:51:09 IST 2026
[2026-06-12 20:51:09,232.232 INFO    ] ================================================
[2026-06-12 20:51:09,589.589 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 20:51:09
[2026-06-12 20:51:09,903.903 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 20:51:10,035.035 INFO    ] Initializing speech engine...
[2026-06-12 20:51:10,039.039 INFO    ] 2026-06-12 20:51:10
[2026-06-12 20:51:10,269.269 INFO    ] 2026-06-12 20:51:10
[2026-06-12 20:51:10,300.300 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 20:51:10,498.498 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 20:51:10,502.502 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 20:51:10,642.642 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 20:51:10,678.678 INFO    ] time= 12/06/2026 20:51:10
[2026-06-12 20:51:10,725.725 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 20:51:10,750.750 INFO    ] Checking for existing commands in stream...
[2026-06-12 20:51:10,825.825 INFO    ] No existing commands found in stream
[2026-06-12 20:51:15,836.836 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 20:51:15,839.839 INFO    ] Waiting 0.92 seconds before fallback handling...
[2026-06-12 20:51:17,794.794 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 20:51:17,797.797 INFO    ] Checking for system updates...
[2026-06-12 20:51:17,833.833 INFO    ] 200
[2026-06-12 20:51:17,836.836 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:51:17,895.895 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 20:51:17,896.896 INFO    ] No update needed
[2026-06-12 20:51:17,898.898 INFO    ] Checking for camera pi updates...
[2026-06-12 20:51:17,919.919 INFO    ] 200
[2026-06-12 20:51:17,921.921 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:51:17,945.945 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 20:51:17,991.991 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 20:51:17,993.993 INFO    ] No camera update needed
[2026-06-12 20:51:17,994.994 INFO    ] Script finished. Safe exiting...
[2026-06-12 20:51:17,996.996 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 20:51:17,999.999 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 20:51:18,003.003 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 20:51:20,042.042 INFO    ] ================================================
[2026-06-12 20:51:20,057.057 INFO    ] Launching Daemon at Fri Jun 12 20:51:20 IST 2026
[2026-06-12 20:51:20,069.069 INFO    ] ================================================
[2026-06-12 20:51:20,457.457 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 20:51:20
[2026-06-12 20:51:20,797.797 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 20:51:20,951.951 INFO    ] Initializing speech engine...
[2026-06-12 20:51:20,957.957 INFO    ] 2026-06-12 20:51:20
[2026-06-12 20:51:21,165.165 INFO    ] 2026-06-12 20:51:21
[2026-06-12 20:51:21,194.194 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 20:51:21,381.381 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 20:51:21,390.390 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 20:51:21,527.527 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 20:51:21,590.590 INFO    ] time= 12/06/2026 20:51:21
[2026-06-12 20:51:21,614.614 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 20:51:21,621.621 INFO    ] Checking for existing commands in stream...
[2026-06-12 20:51:21,689.689 INFO    ] No existing commands found in stream
[2026-06-12 20:51:26,719.719 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 20:51:26,723.723 INFO    ] Waiting 0.34 seconds before fallback handling...
[2026-06-12 20:51:27,491.491 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 20:51:27,493.493 INFO    ] Checking for system updates...
[2026-06-12 20:51:27,515.515 INFO    ] 200
[2026-06-12 20:51:27,516.516 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:51:27,551.551 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 20:51:27,553.553 INFO    ] No update needed
[2026-06-12 20:51:27,554.554 INFO    ] Checking for camera pi updates...
[2026-06-12 20:51:27,577.577 INFO    ] 200
[2026-06-12 20:51:27,578.578 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:51:27,603.603 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 20:51:27,655.655 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 20:51:27,657.657 INFO    ] No camera update needed
[2026-06-12 20:51:27,658.658 INFO    ] Script finished. Safe exiting...
[2026-06-12 20:51:27,660.660 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 20:51:27,663.663 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 20:51:27,666.666 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 20:51:29,706.706 INFO    ] ================================================
[2026-06-12 20:51:29,722.722 INFO    ] Launching Daemon at Fri Jun 12 20:51:29 IST 2026
[2026-06-12 20:51:29,733.733 INFO    ] ================================================
[2026-06-12 20:51:30,103.103 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 20:51:30
[2026-06-12 20:51:30,420.420 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 20:51:30,551.551 INFO    ] Initializing speech engine...
[2026-06-12 20:51:30,559.559 INFO    ] 2026-06-12 20:51:30
[2026-06-12 20:51:30,773.773 INFO    ] 2026-06-12 20:51:30
[2026-06-12 20:51:30,801.801 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 20:51:30,986.986 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 20:51:30,996.996 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 20:51:31,118.118 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 20:51:31,163.163 INFO    ] time= 12/06/2026 20:51:31
[2026-06-12 20:51:31,208.208 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 20:51:31,218.218 INFO    ] Checking for existing commands in stream...
[2026-06-12 20:51:31,313.313 INFO    ] No existing commands found in stream
[2026-06-12 20:51:36,327.327 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 20:51:36,330.330 INFO    ] Waiting 1.09 seconds before fallback handling...
[2026-06-12 20:51:37,801.801 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 20:51:37,803.803 INFO    ] Checking for system updates...
[2026-06-12 20:51:37,824.824 INFO    ] 200
[2026-06-12 20:51:37,826.826 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:51:37,858.858 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 20:51:37,859.859 INFO    ] No update needed
[2026-06-12 20:51:37,861.861 INFO    ] Checking for camera pi updates...
[2026-06-12 20:51:37,881.881 INFO    ] 200
[2026-06-12 20:51:37,882.882 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:51:37,905.905 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 20:51:38,045.045 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 20:51:38,047.047 INFO    ] No camera update needed
[2026-06-12 20:51:38,052.052 INFO    ] Script finished. Safe exiting...
[2026-06-12 20:51:38,053.053 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 20:51:38,056.056 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 20:51:38,059.059 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 20:51:40,097.097 INFO    ] ================================================
[2026-06-12 20:51:40,113.113 INFO    ] Launching Daemon at Fri Jun 12 20:51:40 IST 2026
[2026-06-12 20:51:40,124.124 INFO    ] ================================================
[2026-06-12 20:51:40,481.481 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 20:51:40
[2026-06-12 20:51:40,795.795 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 20:51:40,926.926 INFO    ] Initializing speech engine...
[2026-06-12 20:51:40,930.930 INFO    ] 2026-06-12 20:51:40
[2026-06-12 20:51:41,150.150 INFO    ] 2026-06-12 20:51:41
[2026-06-12 20:51:41,180.180 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 20:51:41,365.365 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 20:51:41,375.375 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 20:51:41,499.499 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 20:51:41,560.560 INFO    ] time= 12/06/2026 20:51:41
[2026-06-12 20:51:41,595.595 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 20:51:41,605.605 INFO    ] Checking for existing commands in stream...
[2026-06-12 20:51:41,673.673 INFO    ] No existing commands found in stream
[2026-06-12 20:51:46,682.682 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 20:51:46,685.685 INFO    ] Waiting 1.33 seconds before fallback handling...
[2026-06-12 20:51:48,391.391 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 20:51:48,393.393 INFO    ] Checking for system updates...
[2026-06-12 20:51:48,414.414 INFO    ] 200
[2026-06-12 20:51:48,415.415 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:51:48,447.447 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 20:51:48,449.449 INFO    ] No update needed
[2026-06-12 20:51:48,450.450 INFO    ] Checking for camera pi updates...
[2026-06-12 20:51:48,471.471 INFO    ] 200
[2026-06-12 20:51:48,472.472 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:51:48,495.495 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 20:51:48,547.547 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 20:51:48,548.548 INFO    ] No camera update needed
[2026-06-12 20:51:48,550.550 INFO    ] Script finished. Safe exiting...
[2026-06-12 20:51:48,551.551 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 20:51:48,554.554 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 20:51:48,557.557 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 20:51:50,596.596 INFO    ] ================================================
[2026-06-12 20:51:50,612.612 INFO    ] Launching Daemon at Fri Jun 12 20:51:50 IST 2026
[2026-06-12 20:51:50,623.623 INFO    ] ================================================
[2026-06-12 20:51:51,017.017 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 20:51:51
[2026-06-12 20:51:51,353.353 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 20:51:51,493.493 INFO    ] Initializing speech engine...
[2026-06-12 20:51:51,506.506 INFO    ] 2026-06-12 20:51:51
[2026-06-12 20:51:51,720.720 INFO    ] 2026-06-12 20:51:51
[2026-06-12 20:51:51,751.751 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 20:51:51,936.936 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 20:51:51,940.940 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 20:51:52,079.079 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 20:51:52,138.138 INFO    ] time= 12/06/2026 20:51:52
[2026-06-12 20:51:52,173.173 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 20:51:52,179.179 INFO    ] Checking for existing commands in stream...
[2026-06-12 20:51:52,247.247 INFO    ] No existing commands found in stream
[2026-06-12 20:51:57,261.261 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 20:51:57,265.265 INFO    ] Waiting 0.53 seconds before fallback handling...
[2026-06-12 20:51:58,182.182 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 20:51:58,183.183 INFO    ] Checking for system updates...
[2026-06-12 20:51:58,204.204 INFO    ] 200
[2026-06-12 20:51:58,206.206 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:51:58,238.238 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 20:51:58,240.240 INFO    ] No update needed
[2026-06-12 20:51:58,241.241 INFO    ] Checking for camera pi updates...
[2026-06-12 20:51:58,264.264 INFO    ] 200
[2026-06-12 20:51:58,266.266 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:51:58,292.292 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 20:51:58,337.337 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 20:51:58,339.339 INFO    ] No camera update needed
[2026-06-12 20:51:58,340.340 INFO    ] Script finished. Safe exiting...
[2026-06-12 20:51:58,342.342 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 20:51:58,345.345 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 20:51:58,348.348 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 20:52:00,388.388 INFO    ] ================================================
[2026-06-12 20:52:00,404.404 INFO    ] Launching Daemon at Fri Jun 12 20:52:00 IST 2026
[2026-06-12 20:52:00,415.415 INFO    ] ================================================
[2026-06-12 20:52:00,794.794 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 20:52:00
[2026-06-12 20:52:01,133.133 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 20:52:01,288.288 INFO    ] Initializing speech engine...
[2026-06-12 20:52:01,293.293 INFO    ] 2026-06-12 20:52:01
[2026-06-12 20:52:01,500.500 INFO    ] 2026-06-12 20:52:01
[2026-06-12 20:52:01,529.529 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 20:52:01,698.698 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 20:52:01,713.713 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 20:52:01,820.820 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 20:52:01,823.823 INFO    ] time= 12/06/2026 20:52:01
[2026-06-12 20:52:01,825.825 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 20:52:01,827.827 INFO    ] Checking for existing commands in stream...
[2026-06-12 20:52:01,890.890 INFO    ] No existing commands found in stream
[2026-06-12 20:52:06,899.899 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 20:52:06,902.902 INFO    ] Waiting 2.87 seconds before fallback handling...
[2026-06-12 20:52:10,136.136 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 20:52:10,138.138 INFO    ] Checking for system updates...
[2026-06-12 20:52:10,159.159 INFO    ] 200
[2026-06-12 20:52:10,161.161 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:52:10,193.193 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 20:52:10,194.194 INFO    ] No update needed
[2026-06-12 20:52:10,195.195 INFO    ] Checking for camera pi updates...
[2026-06-12 20:52:10,215.215 INFO    ] 200
[2026-06-12 20:52:10,216.216 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:52:10,239.239 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 20:52:10,286.286 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 20:52:10,287.287 INFO    ] No camera update needed
[2026-06-12 20:52:10,288.288 INFO    ] Script finished. Safe exiting...
[2026-06-12 20:52:10,289.289 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 20:52:10,292.292 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 20:52:10,295.295 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 20:52:12,333.333 INFO    ] ================================================
[2026-06-12 20:52:12,349.349 INFO    ] Launching Daemon at Fri Jun 12 20:52:12 IST 2026
[2026-06-12 20:52:12,360.360 INFO    ] ================================================
[2026-06-12 20:52:12,723.723 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 20:52:12
[2026-06-12 20:52:13,035.035 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 20:52:13,169.169 INFO    ] Initializing speech engine...
[2026-06-12 20:52:13,178.178 INFO    ] 2026-06-12 20:52:13
[2026-06-12 20:52:13,403.403 INFO    ] 2026-06-12 20:52:13
[2026-06-12 20:52:13,434.434 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 20:52:13,630.630 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 20:52:13,635.635 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 20:52:13,774.774 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 20:52:13,816.816 INFO    ] time= 12/06/2026 20:52:13
[2026-06-12 20:52:13,859.859 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 20:52:13,881.881 INFO    ] Checking for existing commands in stream...
[2026-06-12 20:52:13,959.959 INFO    ] No existing commands found in stream
[2026-06-12 20:52:18,968.968 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 20:52:18,971.971 INFO    ] Waiting 0.68 seconds before fallback handling...
[2026-06-12 20:52:20,031.031 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 20:52:20,032.032 INFO    ] Checking for system updates...
[2026-06-12 20:52:20,055.055 INFO    ] 200
[2026-06-12 20:52:20,056.056 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:52:20,087.087 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 20:52:20,089.089 INFO    ] No update needed
[2026-06-12 20:52:20,090.090 INFO    ] Checking for camera pi updates...
[2026-06-12 20:52:20,109.109 INFO    ] 200
[2026-06-12 20:52:20,111.111 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:52:20,134.134 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 20:52:20,191.191 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 20:52:20,192.192 INFO    ] No camera update needed
[2026-06-12 20:52:20,193.193 INFO    ] Script finished. Safe exiting...
[2026-06-12 20:52:20,195.195 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 20:52:20,198.198 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 20:52:20,200.200 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 20:52:22,239.239 INFO    ] ================================================
[2026-06-12 20:52:22,254.254 INFO    ] Launching Daemon at Fri Jun 12 20:52:22 IST 2026
[2026-06-12 20:52:22,265.265 INFO    ] ================================================
[2026-06-12 20:52:22,597.597 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 20:52:22
[2026-06-12 20:52:22,908.908 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 20:52:23,038.038 INFO    ] Initializing speech engine...
[2026-06-12 20:52:23,043.043 INFO    ] 2026-06-12 20:52:23
[2026-06-12 20:52:23,264.264 INFO    ] 2026-06-12 20:52:23
[2026-06-12 20:52:23,292.292 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 20:52:23,478.478 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 20:52:23,488.488 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 20:52:23,636.636 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 20:52:23,689.689 INFO    ] time= 12/06/2026 20:52:23
[2026-06-12 20:52:23,712.712 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 20:52:23,718.718 INFO    ] Checking for existing commands in stream...
[2026-06-12 20:52:23,786.786 INFO    ] No existing commands found in stream
[2026-06-12 20:52:28,800.800 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 20:52:28,803.803 INFO    ] Waiting 1.93 seconds before fallback handling...
[2026-06-12 20:52:31,146.146 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 20:52:31,147.147 INFO    ] Checking for system updates...
[2026-06-12 20:52:31,169.169 INFO    ] 200
[2026-06-12 20:52:31,171.171 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:52:31,205.205 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 20:52:31,207.207 INFO    ] No update needed
[2026-06-12 20:52:31,209.209 INFO    ] Checking for camera pi updates...
[2026-06-12 20:52:31,229.229 INFO    ] 200
[2026-06-12 20:52:31,230.230 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:52:31,255.255 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 20:52:31,305.305 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 20:52:31,307.307 INFO    ] No camera update needed
[2026-06-12 20:52:31,308.308 INFO    ] Script finished. Safe exiting...
[2026-06-12 20:52:31,310.310 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 20:52:31,313.313 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 20:52:31,316.316 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 20:52:33,349.349 INFO    ] ================================================
[2026-06-12 20:52:33,365.365 INFO    ] Launching Daemon at Fri Jun 12 20:52:33 IST 2026
[2026-06-12 20:52:33,377.377 INFO    ] ================================================
[2026-06-12 20:52:33,731.731 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 20:52:33
[2026-06-12 20:52:34,046.046 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 20:52:34,192.192 INFO    ] Initializing speech engine...
[2026-06-12 20:52:34,200.200 INFO    ] 2026-06-12 20:52:34
[2026-06-12 20:52:34,409.409 INFO    ] 2026-06-12 20:52:34
[2026-06-12 20:52:34,440.440 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 20:52:34,633.633 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 20:52:34,636.636 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 20:52:34,769.769 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 20:52:34,828.828 INFO    ] time= 12/06/2026 20:52:34
[2026-06-12 20:52:34,854.854 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 20:52:34,864.864 INFO    ] Checking for existing commands in stream...
[2026-06-12 20:52:34,935.935 INFO    ] No existing commands found in stream
[2026-06-12 20:52:39,944.944 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 20:52:39,952.952 INFO    ] Waiting 1.74 seconds before fallback handling...
[2026-06-12 20:52:42,071.071 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 20:52:42,072.072 INFO    ] Checking for system updates...
[2026-06-12 20:52:42,093.093 INFO    ] 200
[2026-06-12 20:52:42,095.095 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:52:42,126.126 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 20:52:42,128.128 INFO    ] No update needed
[2026-06-12 20:52:42,129.129 INFO    ] Checking for camera pi updates...
[2026-06-12 20:52:42,149.149 INFO    ] 200
[2026-06-12 20:52:42,151.151 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:52:42,175.175 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 20:52:42,223.223 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 20:52:42,224.224 INFO    ] No camera update needed
[2026-06-12 20:52:42,225.225 INFO    ] Script finished. Safe exiting...
[2026-06-12 20:52:42,227.227 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 20:52:42,230.230 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 20:52:42,232.232 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 20:52:44,273.273 INFO    ] ================================================
[2026-06-12 20:52:44,290.290 INFO    ] Launching Daemon at Fri Jun 12 20:52:44 IST 2026
[2026-06-12 20:52:44,300.300 INFO    ] ================================================
[2026-06-12 20:52:44,641.641 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 20:52:44
[2026-06-12 20:52:44,956.956 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 20:52:45,100.100 INFO    ] Initializing speech engine...
[2026-06-12 20:52:45,105.105 INFO    ] 2026-06-12 20:52:45
[2026-06-12 20:52:45,307.307 INFO    ] 2026-06-12 20:52:45
[2026-06-12 20:52:45,337.337 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 20:52:45,459.459 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 20:52:45,512.512 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 20:52:45,652.652 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 20:52:45,712.712 INFO    ] time= 12/06/2026 20:52:45
[2026-06-12 20:52:45,746.746 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 20:52:45,751.751 INFO    ] Checking for existing commands in stream...
[2026-06-12 20:52:45,822.822 INFO    ] No existing commands found in stream
[2026-06-12 20:52:50,831.831 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 20:52:50,834.834 INFO    ] Waiting 0.76 seconds before fallback handling...
[2026-06-12 20:52:51,958.958 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 20:52:51,960.960 INFO    ] Checking for system updates...
[2026-06-12 20:52:51,981.981 INFO    ] 200
[2026-06-12 20:52:51,982.982 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:52:52,012.012 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 20:52:52,013.013 INFO    ] No update needed
[2026-06-12 20:52:52,015.015 INFO    ] Checking for camera pi updates...
[2026-06-12 20:52:52,035.035 INFO    ] 200
[2026-06-12 20:52:52,037.037 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:52:52,065.065 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 20:52:52,108.108 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 20:52:52,110.110 INFO    ] No camera update needed
[2026-06-12 20:52:52,112.112 INFO    ] Script finished. Safe exiting...
[2026-06-12 20:52:52,113.113 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 20:52:52,116.116 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 20:52:52,119.119 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 20:52:54,159.159 INFO    ] ================================================
[2026-06-12 20:52:54,175.175 INFO    ] Launching Daemon at Fri Jun 12 20:52:54 IST 2026
[2026-06-12 20:52:54,186.186 INFO    ] ================================================
[2026-06-12 20:52:54,546.546 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 20:52:54
[2026-06-12 20:52:54,861.861 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 20:52:54,994.994 INFO    ] Initializing speech engine...
[2026-06-12 20:52:55,006.006 INFO    ] 2026-06-12 20:52:54
[2026-06-12 20:52:55,213.213 INFO    ] 2026-06-12 20:52:55
[2026-06-12 20:52:55,242.242 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 20:52:55,428.428 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 20:52:55,432.432 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 20:52:55,561.561 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 20:52:55,617.617 INFO    ] time= 12/06/2026 20:52:55
[2026-06-12 20:52:55,652.652 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 20:52:55,667.667 INFO    ] Checking for existing commands in stream...
[2026-06-12 20:52:55,735.735 INFO    ] No existing commands found in stream
[2026-06-12 20:53:00,744.744 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 20:53:00,746.746 INFO    ] Waiting 3.09 seconds before fallback handling...
[2026-06-12 20:53:04,182.182 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 20:53:04,183.183 INFO    ] Checking for system updates...
[2026-06-12 20:53:04,203.203 INFO    ] 200
[2026-06-12 20:53:04,205.205 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:53:04,235.235 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 20:53:04,236.236 INFO    ] No update needed
[2026-06-12 20:53:04,237.237 INFO    ] Checking for camera pi updates...
[2026-06-12 20:53:04,260.260 INFO    ] 200
[2026-06-12 20:53:04,262.262 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:53:04,284.284 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 20:53:04,332.332 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 20:53:04,333.333 INFO    ] No camera update needed
[2026-06-12 20:53:04,335.335 INFO    ] Script finished. Safe exiting...
[2026-06-12 20:53:04,336.336 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 20:53:04,339.339 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 20:53:04,342.342 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 20:53:06,372.372 INFO    ] ================================================
[2026-06-12 20:53:06,381.381 INFO    ] Launching Daemon at Fri Jun 12 20:53:06 IST 2026
[2026-06-12 20:53:06,387.387 INFO    ] ================================================
[2026-06-12 20:53:06,760.760 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 20:53:06
[2026-06-12 20:53:07,094.094 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 20:53:07,243.243 INFO    ] Initializing speech engine...
[2026-06-12 20:53:07,249.249 INFO    ] 2026-06-12 20:53:07
[2026-06-12 20:53:07,456.456 INFO    ] 2026-06-12 20:53:07
[2026-06-12 20:53:07,485.485 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 20:53:07,667.667 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 20:53:07,677.677 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 20:53:07,807.807 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 20:53:07,873.873 INFO    ] time= 12/06/2026 20:53:07
[2026-06-12 20:53:07,897.897 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 20:53:07,899.899 INFO    ] Checking for existing commands in stream...
[2026-06-12 20:53:07,971.971 INFO    ] No existing commands found in stream
[2026-06-12 20:53:12,985.985 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 20:53:12,988.988 INFO    ] Waiting 1.20 seconds before fallback handling...
[2026-06-12 20:53:14,572.572 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 20:53:14,573.573 INFO    ] Checking for system updates...
[2026-06-12 20:53:14,595.595 INFO    ] 200
[2026-06-12 20:53:14,597.597 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:53:14,628.628 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 20:53:14,630.630 INFO    ] No update needed
[2026-06-12 20:53:14,631.631 INFO    ] Checking for camera pi updates...
[2026-06-12 20:53:14,651.651 INFO    ] 200
[2026-06-12 20:53:14,652.652 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:53:14,675.675 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 20:53:14,721.721 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 20:53:14,723.723 INFO    ] No camera update needed
[2026-06-12 20:53:14,724.724 INFO    ] Script finished. Safe exiting...
[2026-06-12 20:53:14,726.726 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 20:53:14,729.729 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 20:53:14,732.732 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 20:53:16,771.771 INFO    ] ================================================
[2026-06-12 20:53:16,787.787 INFO    ] Launching Daemon at Fri Jun 12 20:53:16 IST 2026
[2026-06-12 20:53:16,798.798 INFO    ] ================================================
[2026-06-12 20:53:17,157.157 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 20:53:17
[2026-06-12 20:53:17,475.475 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 20:53:17,609.609 INFO    ] Initializing speech engine...
[2026-06-12 20:53:17,617.617 INFO    ] 2026-06-12 20:53:17
[2026-06-12 20:53:17,839.839 INFO    ] 2026-06-12 20:53:17
[2026-06-12 20:53:17,870.870 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 20:53:18,065.065 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 20:53:18,069.069 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 20:53:18,215.215 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 20:53:18,275.275 INFO    ] time= 12/06/2026 20:53:18
[2026-06-12 20:53:18,297.297 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 20:53:18,315.315 INFO    ] Checking for existing commands in stream...
[2026-06-12 20:53:18,391.391 INFO    ] No existing commands found in stream
[2026-06-12 20:53:23,400.400 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 20:53:23,403.403 INFO    ] Waiting 3.79 seconds before fallback handling...
[2026-06-12 20:53:27,547.547 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 20:53:27,549.549 INFO    ] Checking for system updates...
[2026-06-12 20:53:27,570.570 INFO    ] 200
[2026-06-12 20:53:27,572.572 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:53:27,602.602 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 20:53:27,604.604 INFO    ] No update needed
[2026-06-12 20:53:27,605.605 INFO    ] Checking for camera pi updates...
[2026-06-12 20:53:27,625.625 INFO    ] 200
[2026-06-12 20:53:27,626.626 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:53:27,649.649 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 20:53:27,693.693 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 20:53:27,694.694 INFO    ] No camera update needed
[2026-06-12 20:53:27,696.696 INFO    ] Script finished. Safe exiting...
[2026-06-12 20:53:27,697.697 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 20:53:27,700.700 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 20:53:27,703.703 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 20:53:29,741.741 INFO    ] ================================================
[2026-06-12 20:53:29,757.757 INFO    ] Launching Daemon at Fri Jun 12 20:53:29 IST 2026
[2026-06-12 20:53:29,769.769 INFO    ] ================================================
[2026-06-12 20:53:30,108.108 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 20:53:30
[2026-06-12 20:53:30,426.426 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 20:53:30,571.571 INFO    ] Initializing speech engine...
[2026-06-12 20:53:30,577.577 INFO    ] 2026-06-12 20:53:30
[2026-06-12 20:53:30,781.781 INFO    ] 2026-06-12 20:53:30
[2026-06-12 20:53:30,810.810 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 20:53:30,994.994 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 20:53:31,003.003 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 20:53:31,132.132 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 20:53:31,199.199 INFO    ] time= 12/06/2026 20:53:31
[2026-06-12 20:53:31,223.223 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 20:53:31,229.229 INFO    ] Checking for existing commands in stream...
[2026-06-12 20:53:31,319.319 INFO    ] No existing commands found in stream
[2026-06-12 20:53:36,328.328 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 20:53:36,331.331 INFO    ] Waiting 0.18 seconds before fallback handling...
[2026-06-12 20:53:36,870.870 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 20:53:36,871.871 INFO    ] Checking for system updates...
[2026-06-12 20:53:36,892.892 INFO    ] 200
[2026-06-12 20:53:36,893.893 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:53:36,925.925 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 20:53:36,926.926 INFO    ] No update needed
[2026-06-12 20:53:36,928.928 INFO    ] Checking for camera pi updates...
[2026-06-12 20:53:36,947.947 INFO    ] 200
[2026-06-12 20:53:36,948.948 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:53:36,971.971 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 20:53:37,036.036 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 20:53:37,037.037 INFO    ] No camera update needed
[2026-06-12 20:53:37,038.038 INFO    ] Script finished. Safe exiting...
[2026-06-12 20:53:37,040.040 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 20:53:37,043.043 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 20:53:37,046.046 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 20:53:39,084.084 INFO    ] ================================================
[2026-06-12 20:53:39,100.100 INFO    ] Launching Daemon at Fri Jun 12 20:53:39 IST 2026
[2026-06-12 20:53:39,111.111 INFO    ] ================================================
[2026-06-12 20:53:39,478.478 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 20:53:39
[2026-06-12 20:53:39,796.796 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 20:53:39,940.940 INFO    ] Initializing speech engine...
[2026-06-12 20:53:39,945.945 INFO    ] 2026-06-12 20:53:39
[2026-06-12 20:53:40,148.148 INFO    ] 2026-06-12 20:53:40
[2026-06-12 20:53:40,178.178 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 20:53:40,362.362 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 20:53:40,371.371 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 20:53:40,499.499 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 20:53:40,567.567 INFO    ] time= 12/06/2026 20:53:40
[2026-06-12 20:53:40,591.591 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 20:53:40,597.597 INFO    ] Checking for existing commands in stream...
[2026-06-12 20:53:40,687.687 INFO    ] No existing commands found in stream
[2026-06-12 20:53:45,711.711 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 20:53:45,714.714 INFO    ] Waiting 3.19 seconds before fallback handling...
[2026-06-12 20:53:49,300.300 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 20:53:49,302.302 INFO    ] Checking for system updates...
[2026-06-12 20:53:49,324.324 INFO    ] 200
[2026-06-12 20:53:49,325.325 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:53:49,357.357 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 20:53:49,359.359 INFO    ] No update needed
[2026-06-12 20:53:49,360.360 INFO    ] Checking for camera pi updates...
[2026-06-12 20:53:49,380.380 INFO    ] 200
[2026-06-12 20:53:49,382.382 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:53:49,406.406 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 20:53:49,547.547 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 20:53:49,549.549 INFO    ] No camera update needed
[2026-06-12 20:53:49,550.550 INFO    ] Script finished. Safe exiting...
[2026-06-12 20:53:49,552.552 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 20:53:49,555.555 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 20:53:49,558.558 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 20:53:51,598.598 INFO    ] ================================================
[2026-06-12 20:53:51,614.614 INFO    ] Launching Daemon at Fri Jun 12 20:53:51 IST 2026
[2026-06-12 20:53:51,625.625 INFO    ] ================================================
[2026-06-12 20:53:51,990.990 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 20:53:51
[2026-06-12 20:53:52,302.302 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 20:53:52,434.434 INFO    ] Initializing speech engine...
[2026-06-12 20:53:52,439.439 INFO    ] 2026-06-12 20:53:52
[2026-06-12 20:53:52,667.667 INFO    ] 2026-06-12 20:53:52
[2026-06-12 20:53:52,698.698 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 20:53:52,839.839 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 20:53:52,896.896 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 20:53:53,042.042 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 20:53:53,094.094 INFO    ] time= 12/06/2026 20:53:53
[2026-06-12 20:53:53,138.138 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 20:53:53,145.145 INFO    ] Checking for existing commands in stream...
[2026-06-12 20:53:53,247.247 INFO    ] No existing commands found in stream
[2026-06-12 20:53:58,256.256 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 20:53:58,259.259 INFO    ] Waiting 0.36 seconds before fallback handling...
[2026-06-12 20:53:59,000.000 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 20:53:59,002.002 INFO    ] Checking for system updates...
[2026-06-12 20:53:59,022.022 INFO    ] 200
[2026-06-12 20:53:59,024.024 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:53:59,053.053 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 20:53:59,054.054 INFO    ] No update needed
[2026-06-12 20:53:59,055.055 INFO    ] Checking for camera pi updates...
[2026-06-12 20:53:59,075.075 INFO    ] 200
[2026-06-12 20:53:59,076.076 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:53:59,099.099 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 20:53:59,144.144 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 20:53:59,145.145 INFO    ] No camera update needed
[2026-06-12 20:53:59,147.147 INFO    ] Script finished. Safe exiting...
[2026-06-12 20:53:59,148.148 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 20:53:59,151.151 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 20:53:59,154.154 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 20:54:01,189.189 INFO    ] ================================================
[2026-06-12 20:54:01,213.213 INFO    ] Launching Daemon at Fri Jun 12 20:54:01 IST 2026
[2026-06-12 20:54:01,233.233 INFO    ] ================================================
[2026-06-12 20:54:01,626.626 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 20:54:01
[2026-06-12 20:54:02,002.002 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 20:54:02,168.168 INFO    ] Initializing speech engine...
[2026-06-12 20:54:02,178.178 INFO    ] 2026-06-12 20:54:02
[2026-06-12 20:54:02,402.402 INFO    ] 2026-06-12 20:54:02
[2026-06-12 20:54:02,432.432 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 20:54:02,589.589 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 20:54:02,622.622 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 20:54:02,758.758 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 20:54:02,822.822 INFO    ] time= 12/06/2026 20:54:02
[2026-06-12 20:54:02,850.850 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 20:54:02,851.851 INFO    ] Checking for existing commands in stream...
[2026-06-12 20:54:02,921.921 INFO    ] No existing commands found in stream
[2026-06-12 20:54:07,932.932 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 20:54:07,934.934 INFO    ] Waiting 0.82 seconds before fallback handling...
[2026-06-12 20:54:09,130.130 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 20:54:09,132.132 INFO    ] Checking for system updates...
[2026-06-12 20:54:09,153.153 INFO    ] 200
[2026-06-12 20:54:09,154.154 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:54:09,184.184 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 20:54:09,185.185 INFO    ] No update needed
[2026-06-12 20:54:09,186.186 INFO    ] Checking for camera pi updates...
[2026-06-12 20:54:09,205.205 INFO    ] 200
[2026-06-12 20:54:09,207.207 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:54:09,229.229 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 20:54:09,279.279 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 20:54:09,281.281 INFO    ] No camera update needed
[2026-06-12 20:54:09,282.282 INFO    ] Script finished. Safe exiting...
[2026-06-12 20:54:09,283.283 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 20:54:09,286.286 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 20:54:09,289.289 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 20:54:11,314.314 INFO    ] ================================================
[2026-06-12 20:54:11,323.323 INFO    ] Launching Daemon at Fri Jun 12 20:54:11 IST 2026
[2026-06-12 20:54:11,330.330 INFO    ] ================================================
[2026-06-12 20:54:11,654.654 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 20:54:11
[2026-06-12 20:54:11,987.987 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 20:54:12,145.145 INFO    ] Initializing speech engine...
[2026-06-12 20:54:12,154.154 INFO    ] 2026-06-12 20:54:12
[2026-06-12 20:54:12,396.396 INFO    ] 2026-06-12 20:54:12
[2026-06-12 20:54:12,427.427 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 20:54:12,576.576 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 20:54:12,620.620 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 20:54:12,787.787 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 20:54:12,866.866 INFO    ] time= 12/06/2026 20:54:12
[2026-06-12 20:54:12,873.873 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 20:54:12,875.875 INFO    ] Checking for existing commands in stream...
[2026-06-12 20:54:12,945.945 INFO    ] No existing commands found in stream
[2026-06-12 20:54:17,978.978 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 20:54:17,981.981 INFO    ] Waiting 2.27 seconds before fallback handling...
[2026-06-12 20:54:20,648.648 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 20:54:20,650.650 INFO    ] Checking for system updates...
[2026-06-12 20:54:20,671.671 INFO    ] 200
[2026-06-12 20:54:20,673.673 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:54:20,703.703 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 20:54:20,704.704 INFO    ] No update needed
[2026-06-12 20:54:20,706.706 INFO    ] Checking for camera pi updates...
[2026-06-12 20:54:20,725.725 INFO    ] 200
[2026-06-12 20:54:20,727.727 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:54:20,750.750 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 20:54:20,802.802 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 20:54:20,804.804 INFO    ] No camera update needed
[2026-06-12 20:54:20,805.805 INFO    ] Script finished. Safe exiting...
[2026-06-12 20:54:20,806.806 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 20:54:20,810.810 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 20:54:20,813.813 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 20:54:22,855.855 INFO    ] ================================================
[2026-06-12 20:54:22,873.873 INFO    ] Launching Daemon at Fri Jun 12 20:54:22 IST 2026
[2026-06-12 20:54:22,885.885 INFO    ] ================================================
[2026-06-12 20:54:23,231.231 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 20:54:23
[2026-06-12 20:54:23,601.601 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 20:54:23,740.740 INFO    ] Initializing speech engine...
[2026-06-12 20:54:23,748.748 INFO    ] 2026-06-12 20:54:23
[2026-06-12 20:54:23,963.963 INFO    ] 2026-06-12 20:54:23
[2026-06-12 20:54:24,006.006 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 20:54:24,196.196 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 20:54:24,199.199 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 20:54:24,356.356 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 20:54:24,377.377 INFO    ] time= 12/06/2026 20:54:24
[2026-06-12 20:54:24,425.425 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 20:54:24,478.478 INFO    ] Checking for existing commands in stream...
[2026-06-12 20:54:24,579.579 INFO    ] No existing commands found in stream
[2026-06-12 20:54:29,590.590 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 20:54:29,593.593 INFO    ] Waiting 3.99 seconds before fallback handling...
[2026-06-12 20:54:34,250.250 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 20:54:34,252.252 INFO    ] Checking for system updates...
[2026-06-12 20:54:34,272.272 INFO    ] 200
[2026-06-12 20:54:34,274.274 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:54:34,305.305 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 20:54:34,306.306 INFO    ] No update needed
[2026-06-12 20:54:34,308.308 INFO    ] Checking for camera pi updates...
[2026-06-12 20:54:34,329.329 INFO    ] 200
[2026-06-12 20:54:34,331.331 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:54:34,356.356 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 20:54:34,403.403 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 20:54:34,405.405 INFO    ] No camera update needed
[2026-06-12 20:54:34,406.406 INFO    ] Script finished. Safe exiting...
[2026-06-12 20:54:34,408.408 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 20:54:34,411.411 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 20:54:34,414.414 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 20:54:36,455.455 INFO    ] ================================================
[2026-06-12 20:54:36,471.471 INFO    ] Launching Daemon at Fri Jun 12 20:54:36 IST 2026
[2026-06-12 20:54:36,483.483 INFO    ] ================================================
[2026-06-12 20:54:36,820.820 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 20:54:36
[2026-06-12 20:54:37,133.133 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 20:54:37,265.265 INFO    ] Initializing speech engine...
[2026-06-12 20:54:37,272.272 INFO    ] 2026-06-12 20:54:37
[2026-06-12 20:54:37,488.488 INFO    ] 2026-06-12 20:54:37
[2026-06-12 20:54:37,518.518 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 20:54:37,705.705 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 20:54:37,709.709 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 20:54:37,840.840 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 20:54:37,893.893 INFO    ] time= 12/06/2026 20:54:37
[2026-06-12 20:54:37,931.931 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 20:54:37,942.942 INFO    ] Checking for existing commands in stream...
[2026-06-12 20:54:38,015.015 INFO    ] No existing commands found in stream
[2026-06-12 20:54:43,029.029 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 20:54:43,032.032 INFO    ] Waiting 1.52 seconds before fallback handling...
[2026-06-12 20:54:44,940.940 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 20:54:44,941.941 INFO    ] Checking for system updates...
[2026-06-12 20:54:44,962.962 INFO    ] 200
[2026-06-12 20:54:44,964.964 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:54:44,996.996 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 20:54:44,998.998 INFO    ] No update needed
[2026-06-12 20:54:44,999.999 INFO    ] Checking for camera pi updates...
[2026-06-12 20:54:45,019.019 INFO    ] 200
[2026-06-12 20:54:45,020.020 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:54:45,044.044 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 20:54:45,104.104 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 20:54:45,106.106 INFO    ] No camera update needed
[2026-06-12 20:54:45,107.107 INFO    ] Script finished. Safe exiting...
[2026-06-12 20:54:45,108.108 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 20:54:45,112.112 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 20:54:45,115.115 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 20:54:47,156.156 INFO    ] ================================================
[2026-06-12 20:54:47,172.172 INFO    ] Launching Daemon at Fri Jun 12 20:54:47 IST 2026
[2026-06-12 20:54:47,183.183 INFO    ] ================================================
[2026-06-12 20:54:47,534.534 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 20:54:47
[2026-06-12 20:54:47,851.851 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 20:54:47,996.996 INFO    ] Initializing speech engine...
[2026-06-12 20:54:48,001.001 INFO    ] 2026-06-12 20:54:47
[2026-06-12 20:54:48,205.205 INFO    ] 2026-06-12 20:54:48
[2026-06-12 20:54:48,234.234 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 20:54:48,360.360 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 20:54:48,423.423 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 20:54:48,559.559 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 20:54:48,600.600 INFO    ] time= 12/06/2026 20:54:48
[2026-06-12 20:54:48,602.602 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 20:54:48,603.603 INFO    ] Checking for existing commands in stream...
[2026-06-12 20:54:48,665.665 INFO    ] No existing commands found in stream
[2026-06-12 20:54:53,674.674 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 20:54:53,682.682 INFO    ] Waiting 2.45 seconds before fallback handling...
[2026-06-12 20:54:56,494.494 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 20:54:56,495.495 INFO    ] Checking for system updates...
[2026-06-12 20:54:56,515.515 INFO    ] 200
[2026-06-12 20:54:56,517.517 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:54:56,549.549 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 20:54:56,550.550 INFO    ] No update needed
[2026-06-12 20:54:56,551.551 INFO    ] Checking for camera pi updates...
[2026-06-12 20:54:56,571.571 INFO    ] 200
[2026-06-12 20:54:56,572.572 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:54:56,595.595 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 20:54:56,635.635 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 20:54:56,637.637 INFO    ] No camera update needed
[2026-06-12 20:54:56,638.638 INFO    ] Script finished. Safe exiting...
[2026-06-12 20:54:56,639.639 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 20:54:56,642.642 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 20:54:56,645.645 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 20:54:58,685.685 INFO    ] ================================================
[2026-06-12 20:54:58,703.703 INFO    ] Launching Daemon at Fri Jun 12 20:54:58 IST 2026
[2026-06-12 20:54:58,714.714 INFO    ] ================================================
[2026-06-12 20:54:59,064.064 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 20:54:59
[2026-06-12 20:54:59,384.384 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 20:54:59,518.518 INFO    ] Initializing speech engine...
[2026-06-12 20:54:59,523.523 INFO    ] 2026-06-12 20:54:59
[2026-06-12 20:54:59,717.717 INFO    ] 2026-06-12 20:54:59
[2026-06-12 20:54:59,764.764 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 20:54:59,940.940 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 20:54:59,993.993 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 20:55:00,137.137 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 20:55:00,167.167 INFO    ] time= 12/06/2026 20:55:00
[2026-06-12 20:55:00,219.219 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 20:55:00,246.246 INFO    ] Checking for existing commands in stream...
[2026-06-12 20:55:00,324.324 INFO    ] No existing commands found in stream
[2026-06-12 20:55:05,332.332 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 20:55:05,335.335 INFO    ] Waiting 0.16 seconds before fallback handling...
[2026-06-12 20:55:05,863.863 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 20:55:05,864.864 INFO    ] Checking for system updates...
[2026-06-12 20:55:05,885.885 INFO    ] 200
[2026-06-12 20:55:05,887.887 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:55:05,916.916 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 20:55:05,917.917 INFO    ] No update needed
[2026-06-12 20:55:05,919.919 INFO    ] Checking for camera pi updates...
[2026-06-12 20:55:05,938.938 INFO    ] 200
[2026-06-12 20:55:05,939.939 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:55:05,965.965 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 20:55:06,007.007 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 20:55:06,008.008 INFO    ] No camera update needed
[2026-06-12 20:55:06,009.009 INFO    ] Script finished. Safe exiting...
[2026-06-12 20:55:06,011.011 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 20:55:06,014.014 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 20:55:06,016.016 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 20:55:08,056.056 INFO    ] ================================================
[2026-06-12 20:55:08,072.072 INFO    ] Launching Daemon at Fri Jun 12 20:55:08 IST 2026
[2026-06-12 20:55:08,083.083 INFO    ] ================================================
[2026-06-12 20:55:08,440.440 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 20:55:08
[2026-06-12 20:55:08,782.782 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 20:55:08,923.923 INFO    ] Initializing speech engine...
[2026-06-12 20:55:08,937.937 INFO    ] 2026-06-12 20:55:08
[2026-06-12 20:55:09,150.150 INFO    ] 2026-06-12 20:55:09
[2026-06-12 20:55:09,181.181 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 20:55:09,368.368 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 20:55:09,379.379 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 20:55:09,527.527 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 20:55:09,587.587 INFO    ] time= 12/06/2026 20:55:09
[2026-06-12 20:55:09,604.604 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 20:55:09,611.611 INFO    ] Checking for existing commands in stream...
[2026-06-12 20:55:09,679.679 INFO    ] No existing commands found in stream
[2026-06-12 20:55:14,693.693 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 20:55:14,697.697 INFO    ] Waiting 0.44 seconds before fallback handling...
[2026-06-12 20:55:15,531.531 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 20:55:15,533.533 INFO    ] Checking for system updates...
[2026-06-12 20:55:15,553.553 INFO    ] 200
[2026-06-12 20:55:15,555.555 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:55:15,585.585 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 20:55:15,587.587 INFO    ] No update needed
[2026-06-12 20:55:15,588.588 INFO    ] Checking for camera pi updates...
[2026-06-12 20:55:15,609.609 INFO    ] 200
[2026-06-12 20:55:15,611.611 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:55:15,634.634 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 20:55:15,682.682 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 20:55:15,683.683 INFO    ] No camera update needed
[2026-06-12 20:55:15,684.684 INFO    ] Script finished. Safe exiting...
[2026-06-12 20:55:15,685.685 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 20:55:15,688.688 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 20:55:15,691.691 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 20:55:17,730.730 INFO    ] ================================================
[2026-06-12 20:55:17,745.745 INFO    ] Launching Daemon at Fri Jun 12 20:55:17 IST 2026
[2026-06-12 20:55:17,756.756 INFO    ] ================================================
[2026-06-12 20:55:18,107.107 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 20:55:18
[2026-06-12 20:55:18,425.425 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 20:55:18,562.562 INFO    ] Initializing speech engine...
[2026-06-12 20:55:18,571.571 INFO    ] 2026-06-12 20:55:18
[2026-06-12 20:55:18,776.776 INFO    ] 2026-06-12 20:55:18
[2026-06-12 20:55:18,805.805 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 20:55:18,965.965 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 20:55:19,028.028 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 20:55:19,176.176 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 20:55:19,223.223 INFO    ] time= 12/06/2026 20:55:19
[2026-06-12 20:55:19,265.265 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 20:55:19,288.288 INFO    ] Checking for existing commands in stream...
[2026-06-12 20:55:19,364.364 INFO    ] No existing commands found in stream
[2026-06-12 20:55:24,375.375 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 20:55:24,378.378 INFO    ] Waiting 1.22 seconds before fallback handling...
[2026-06-12 20:55:25,961.961 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 20:55:25,962.962 INFO    ] Checking for system updates...
[2026-06-12 20:55:25,982.982 INFO    ] 200
[2026-06-12 20:55:25,984.984 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:55:26,014.014 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 20:55:26,016.016 INFO    ] No update needed
[2026-06-12 20:55:26,017.017 INFO    ] Checking for camera pi updates...
[2026-06-12 20:55:26,036.036 INFO    ] 200
[2026-06-12 20:55:26,038.038 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:55:26,060.060 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 20:55:26,118.118 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 20:55:26,120.120 INFO    ] No camera update needed
[2026-06-12 20:55:26,121.121 INFO    ] Script finished. Safe exiting...
[2026-06-12 20:55:26,122.122 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 20:55:26,125.125 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 20:55:26,128.128 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 20:55:28,166.166 INFO    ] ================================================
[2026-06-12 20:55:28,181.181 INFO    ] Launching Daemon at Fri Jun 12 20:55:28 IST 2026
[2026-06-12 20:55:28,193.193 INFO    ] ================================================
[2026-06-12 20:55:28,533.533 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 20:55:28
[2026-06-12 20:55:28,847.847 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 20:55:28,991.991 INFO    ] Initializing speech engine...
[2026-06-12 20:55:28,996.996 INFO    ] 2026-06-12 20:55:28
[2026-06-12 20:55:29,202.202 INFO    ] 2026-06-12 20:55:29
[2026-06-12 20:55:29,230.230 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 20:55:29,419.419 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 20:55:29,428.428 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 20:55:29,556.556 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 20:55:29,612.612 INFO    ] time= 12/06/2026 20:55:29
[2026-06-12 20:55:29,648.648 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 20:55:29,653.653 INFO    ] Checking for existing commands in stream...
[2026-06-12 20:55:29,726.726 INFO    ] No existing commands found in stream
[2026-06-12 20:55:34,758.758 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 20:55:34,761.761 INFO    ] Waiting 3.86 seconds before fallback handling...
[2026-06-12 20:55:38,999.999 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 20:55:39,000.000 INFO    ] Checking for system updates...
[2026-06-12 20:55:39,021.021 INFO    ] 200
[2026-06-12 20:55:39,022.022 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:55:39,051.051 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 20:55:39,053.053 INFO    ] No update needed
[2026-06-12 20:55:39,054.054 INFO    ] Checking for camera pi updates...
[2026-06-12 20:55:39,074.074 INFO    ] 200
[2026-06-12 20:55:39,075.075 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:55:39,099.099 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 20:55:39,153.153 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 20:55:39,155.155 INFO    ] No camera update needed
[2026-06-12 20:55:39,156.156 INFO    ] Script finished. Safe exiting...
[2026-06-12 20:55:39,157.157 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 20:55:39,160.160 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 20:55:39,163.163 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 20:55:41,200.200 INFO    ] ================================================
[2026-06-12 20:55:41,215.215 INFO    ] Launching Daemon at Fri Jun 12 20:55:41 IST 2026
[2026-06-12 20:55:41,226.226 INFO    ] ================================================
[2026-06-12 20:55:41,608.608 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 20:55:41
[2026-06-12 20:55:41,952.952 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 20:55:42,104.104 INFO    ] Initializing speech engine...
[2026-06-12 20:55:42,110.110 INFO    ] 2026-06-12 20:55:42
[2026-06-12 20:55:42,319.319 INFO    ] 2026-06-12 20:55:42
[2026-06-12 20:55:42,348.348 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 20:55:42,532.532 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 20:55:42,542.542 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 20:55:42,695.695 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 20:55:42,754.754 INFO    ] time= 12/06/2026 20:55:42
[2026-06-12 20:55:42,764.764 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 20:55:42,766.766 INFO    ] Checking for existing commands in stream...
[2026-06-12 20:55:42,833.833 INFO    ] No existing commands found in stream
[2026-06-12 20:55:47,858.858 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 20:55:47,862.862 INFO    ] Waiting 1.78 seconds before fallback handling...
[2026-06-12 20:55:50,031.031 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 20:55:50,033.033 INFO    ] Checking for system updates...
[2026-06-12 20:55:50,056.056 INFO    ] 200
[2026-06-12 20:55:50,058.058 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:55:50,087.087 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 20:55:50,089.089 INFO    ] No update needed
[2026-06-12 20:55:50,090.090 INFO    ] Checking for camera pi updates...
[2026-06-12 20:55:50,110.110 INFO    ] 200
[2026-06-12 20:55:50,111.111 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:55:50,133.133 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 20:55:50,191.191 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 20:55:50,193.193 INFO    ] No camera update needed
[2026-06-12 20:55:50,194.194 INFO    ] Script finished. Safe exiting...
[2026-06-12 20:55:50,195.195 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 20:55:50,198.198 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 20:55:50,201.201 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 20:55:52,240.240 INFO    ] ================================================
[2026-06-12 20:55:52,254.254 INFO    ] Launching Daemon at Fri Jun 12 20:55:52 IST 2026
[2026-06-12 20:55:52,265.265 INFO    ] ================================================
[2026-06-12 20:55:52,604.604 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 20:55:52
[2026-06-12 20:55:52,917.917 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 20:55:53,060.060 INFO    ] Initializing speech engine...
[2026-06-12 20:55:53,065.065 INFO    ] 2026-06-12 20:55:53
[2026-06-12 20:55:53,269.269 INFO    ] 2026-06-12 20:55:53
[2026-06-12 20:55:53,298.298 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 20:55:53,481.481 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 20:55:53,490.490 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 20:55:53,635.635 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 20:55:53,688.688 INFO    ] time= 12/06/2026 20:55:53
[2026-06-12 20:55:53,711.711 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 20:55:53,717.717 INFO    ] Checking for existing commands in stream...
[2026-06-12 20:55:53,784.784 INFO    ] No existing commands found in stream
[2026-06-12 20:55:58,798.798 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 20:55:58,801.801 INFO    ] Waiting 3.17 seconds before fallback handling...
[2026-06-12 20:56:02,309.309 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 20:56:02,311.311 INFO    ] Checking for system updates...
[2026-06-12 20:56:02,335.335 INFO    ] 200
[2026-06-12 20:56:02,337.337 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:56:02,373.373 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 20:56:02,375.375 INFO    ] No update needed
[2026-06-12 20:56:02,377.377 INFO    ] Checking for camera pi updates...
[2026-06-12 20:56:02,402.402 INFO    ] 200
[2026-06-12 20:56:02,404.404 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:56:02,432.432 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 20:56:02,462.462 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 20:56:02,464.464 INFO    ] No camera update needed
[2026-06-12 20:56:02,466.466 INFO    ] Script finished. Safe exiting...
[2026-06-12 20:56:02,468.468 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 20:56:02,473.473 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 20:56:02,477.477 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 20:56:04,517.517 INFO    ] ================================================
[2026-06-12 20:56:04,532.532 INFO    ] Launching Daemon at Fri Jun 12 20:56:04 IST 2026
[2026-06-12 20:56:04,543.543 INFO    ] ================================================
[2026-06-12 20:56:04,894.894 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 20:56:04
[2026-06-12 20:56:05,210.210 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 20:56:05,344.344 INFO    ] Initializing speech engine...
[2026-06-12 20:56:05,356.356 INFO    ] 2026-06-12 20:56:05
[2026-06-12 20:56:05,563.563 INFO    ] 2026-06-12 20:56:05
[2026-06-12 20:56:05,591.591 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 20:56:05,724.724 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 20:56:05,776.776 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 20:56:05,919.919 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 20:56:05,984.984 INFO    ] time= 12/06/2026 20:56:05
[2026-06-12 20:56:06,016.016 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 20:56:06,018.018 INFO    ] Checking for existing commands in stream...
[2026-06-12 20:56:06,113.113 INFO    ] No existing commands found in stream
[2026-06-12 20:56:11,127.127 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 20:56:11,130.130 INFO    ] Waiting 2.19 seconds before fallback handling...
[2026-06-12 20:56:13,652.652 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 20:56:13,654.654 INFO    ] Checking for system updates...
[2026-06-12 20:56:13,677.677 INFO    ] 200
[2026-06-12 20:56:13,679.679 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:56:13,716.716 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 20:56:13,718.718 INFO    ] No update needed
[2026-06-12 20:56:13,719.719 INFO    ] Checking for camera pi updates...
[2026-06-12 20:56:13,742.742 INFO    ] 200
[2026-06-12 20:56:13,744.744 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:56:13,773.773 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 20:56:13,821.821 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 20:56:13,823.823 INFO    ] No camera update needed
[2026-06-12 20:56:13,825.825 INFO    ] Script finished. Safe exiting...
[2026-06-12 20:56:13,826.826 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 20:56:13,831.831 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 20:56:13,837.837 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 20:56:15,877.877 INFO    ] ================================================
[2026-06-12 20:56:15,892.892 INFO    ] Launching Daemon at Fri Jun 12 20:56:15 IST 2026
[2026-06-12 20:56:15,902.902 INFO    ] ================================================
[2026-06-12 20:56:16,244.244 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 20:56:16
[2026-06-12 20:56:16,562.562 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 20:56:16,705.705 INFO    ] Initializing speech engine...
[2026-06-12 20:56:16,709.709 INFO    ] 2026-06-12 20:56:16
[2026-06-12 20:56:16,914.914 INFO    ] 2026-06-12 20:56:16
[2026-06-12 20:56:16,944.944 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 20:56:17,128.128 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 20:56:17,132.132 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 20:56:17,268.268 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 20:56:17,334.334 INFO    ] time= 12/06/2026 20:56:17
[2026-06-12 20:56:17,361.361 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 20:56:17,367.367 INFO    ] Checking for existing commands in stream...
[2026-06-12 20:56:17,435.435 INFO    ] No existing commands found in stream
[2026-06-12 20:56:22,449.449 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 20:56:22,452.452 INFO    ] Waiting 3.22 seconds before fallback handling...
[2026-06-12 20:56:26,062.062 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 20:56:26,063.063 INFO    ] Checking for system updates...
[2026-06-12 20:56:26,084.084 INFO    ] 200
[2026-06-12 20:56:26,086.086 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:56:26,115.115 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 20:56:26,117.117 INFO    ] No update needed
[2026-06-12 20:56:26,118.118 INFO    ] Checking for camera pi updates...
[2026-06-12 20:56:26,138.138 INFO    ] 200
[2026-06-12 20:56:26,140.140 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:56:26,164.164 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 20:56:26,206.206 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 20:56:26,207.207 INFO    ] No camera update needed
[2026-06-12 20:56:26,209.209 INFO    ] Script finished. Safe exiting...
[2026-06-12 20:56:26,210.210 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 20:56:26,214.214 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 20:56:26,217.217 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 20:56:28,256.256 INFO    ] ================================================
[2026-06-12 20:56:28,272.272 INFO    ] Launching Daemon at Fri Jun 12 20:56:28 IST 2026
[2026-06-12 20:56:28,282.282 INFO    ] ================================================
[2026-06-12 20:56:28,638.638 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 20:56:28
[2026-06-12 20:56:28,953.953 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 20:56:29,092.092 INFO    ] Initializing speech engine...
[2026-06-12 20:56:29,102.102 INFO    ] 2026-06-12 20:56:29
[2026-06-12 20:56:29,306.306 INFO    ] 2026-06-12 20:56:29
[2026-06-12 20:56:29,335.335 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 20:56:29,518.518 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 20:56:29,528.528 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 20:56:29,649.649 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 20:56:29,704.704 INFO    ] time= 12/06/2026 20:56:29
[2026-06-12 20:56:29,743.743 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 20:56:29,749.749 INFO    ] Checking for existing commands in stream...
[2026-06-12 20:56:29,818.818 INFO    ] No existing commands found in stream
[2026-06-12 20:56:34,829.829 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 20:56:34,832.832 INFO    ] Waiting 2.83 seconds before fallback handling...
[2026-06-12 20:56:38,060.060 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 20:56:38,062.062 INFO    ] Checking for system updates...
[2026-06-12 20:56:38,083.083 INFO    ] 200
[2026-06-12 20:56:38,084.084 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:56:38,114.114 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 20:56:38,115.115 INFO    ] No update needed
[2026-06-12 20:56:38,116.116 INFO    ] Checking for camera pi updates...
[2026-06-12 20:56:38,137.137 INFO    ] 200
[2026-06-12 20:56:38,138.138 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:56:38,165.165 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 20:56:38,216.216 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 20:56:38,218.218 INFO    ] No camera update needed
[2026-06-12 20:56:38,219.219 INFO    ] Script finished. Safe exiting...
[2026-06-12 20:56:38,220.220 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 20:56:38,223.223 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 20:56:38,226.226 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 20:56:40,265.265 INFO    ] ================================================
[2026-06-12 20:56:40,281.281 INFO    ] Launching Daemon at Fri Jun 12 20:56:40 IST 2026
[2026-06-12 20:56:40,291.291 INFO    ] ================================================
[2026-06-12 20:56:40,671.671 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 20:56:40
[2026-06-12 20:56:41,010.010 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 20:56:41,162.162 INFO    ] Initializing speech engine...
[2026-06-12 20:56:41,166.166 INFO    ] 2026-06-12 20:56:41
[2026-06-12 20:56:41,373.373 INFO    ] 2026-06-12 20:56:41
[2026-06-12 20:56:41,402.402 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 20:56:41,586.586 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 20:56:41,596.596 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 20:56:41,725.725 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 20:56:41,793.793 INFO    ] time= 12/06/2026 20:56:41
[2026-06-12 20:56:41,817.817 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 20:56:41,819.819 INFO    ] Checking for existing commands in stream...
[2026-06-12 20:56:41,891.891 INFO    ] No existing commands found in stream
[2026-06-12 20:56:46,905.905 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 20:56:46,908.908 INFO    ] Waiting 1.76 seconds before fallback handling...
[2026-06-12 20:56:49,105.105 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 20:56:49,106.106 INFO    ] Checking for system updates...
[2026-06-12 20:56:49,127.127 INFO    ] 200
[2026-06-12 20:56:49,128.128 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:56:49,161.161 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 20:56:49,163.163 INFO    ] No update needed
[2026-06-12 20:56:49,164.164 INFO    ] Checking for camera pi updates...
[2026-06-12 20:56:49,184.184 INFO    ] 200
[2026-06-12 20:56:49,186.186 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:56:49,210.210 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 20:56:49,271.271 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 20:56:49,273.273 INFO    ] No camera update needed
[2026-06-12 20:56:49,274.274 INFO    ] Script finished. Safe exiting...
[2026-06-12 20:56:49,275.275 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 20:56:49,278.278 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 20:56:49,281.281 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 20:56:51,318.318 INFO    ] ================================================
[2026-06-12 20:56:51,334.334 INFO    ] Launching Daemon at Fri Jun 12 20:56:51 IST 2026
[2026-06-12 20:56:51,344.344 INFO    ] ================================================
[2026-06-12 20:56:51,697.697 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 20:56:51
[2026-06-12 20:56:52,008.008 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 20:56:52,151.151 INFO    ] Initializing speech engine...
[2026-06-12 20:56:52,157.157 INFO    ] 2026-06-12 20:56:52
[2026-06-12 20:56:52,363.363 INFO    ] 2026-06-12 20:56:52
[2026-06-12 20:56:52,391.391 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 20:56:52,577.577 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 20:56:52,586.586 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 20:56:52,717.717 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 20:56:52,785.785 INFO    ] time= 12/06/2026 20:56:52
[2026-06-12 20:56:52,809.809 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 20:56:52,816.816 INFO    ] Checking for existing commands in stream...
[2026-06-12 20:56:52,883.883 INFO    ] No existing commands found in stream
[2026-06-12 20:56:57,916.916 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 20:56:57,919.919 INFO    ] Waiting 2.29 seconds before fallback handling...
[2026-06-12 20:57:00,586.586 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 20:57:00,587.587 INFO    ] Checking for system updates...
[2026-06-12 20:57:00,609.609 INFO    ] 200
[2026-06-12 20:57:00,611.611 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:57:00,642.642 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 20:57:00,643.643 INFO    ] No update needed
[2026-06-12 20:57:00,644.644 INFO    ] Checking for camera pi updates...
[2026-06-12 20:57:00,664.664 INFO    ] 200
[2026-06-12 20:57:00,665.665 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:57:00,688.688 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 20:57:00,737.737 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 20:57:00,739.739 INFO    ] No camera update needed
[2026-06-12 20:57:00,740.740 INFO    ] Script finished. Safe exiting...
[2026-06-12 20:57:00,742.742 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 20:57:00,745.745 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 20:57:00,748.748 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 20:57:02,780.780 INFO    ] ================================================
[2026-06-12 20:57:02,790.790 INFO    ] Launching Daemon at Fri Jun 12 20:57:02 IST 2026
[2026-06-12 20:57:02,797.797 INFO    ] ================================================
[2026-06-12 20:57:03,114.114 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 20:57:03
[2026-06-12 20:57:03,427.427 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 20:57:03,560.560 INFO    ] Initializing speech engine...
[2026-06-12 20:57:03,564.564 INFO    ] 2026-06-12 20:57:03
[2026-06-12 20:57:03,795.795 INFO    ] 2026-06-12 20:57:03
[2026-06-12 20:57:03,825.825 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 20:57:03,958.958 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 20:57:04,016.016 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 20:57:04,174.174 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 20:57:04,238.238 INFO    ] time= 12/06/2026 20:57:04
[2026-06-12 20:57:04,272.272 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 20:57:04,279.279 INFO    ] Checking for existing commands in stream...
[2026-06-12 20:57:04,349.349 INFO    ] No existing commands found in stream
[2026-06-12 20:57:09,360.360 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 20:57:09,363.363 INFO    ] Waiting 0.23 seconds before fallback handling...
[2026-06-12 20:57:09,969.969 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 20:57:09,970.970 INFO    ] Checking for system updates...
[2026-06-12 20:57:09,991.991 INFO    ] 200
[2026-06-12 20:57:09,992.992 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:57:10,024.024 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 20:57:10,025.025 INFO    ] No update needed
[2026-06-12 20:57:10,026.026 INFO    ] Checking for camera pi updates...
[2026-06-12 20:57:10,046.046 INFO    ] 200
[2026-06-12 20:57:10,047.047 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:57:10,070.070 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 20:57:10,111.111 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 20:57:10,112.112 INFO    ] No camera update needed
[2026-06-12 20:57:10,113.113 INFO    ] Script finished. Safe exiting...
[2026-06-12 20:57:10,115.115 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 20:57:10,118.118 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 20:57:10,120.120 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 20:57:12,158.158 INFO    ] ================================================
[2026-06-12 20:57:12,174.174 INFO    ] Launching Daemon at Fri Jun 12 20:57:12 IST 2026
[2026-06-12 20:57:12,184.184 INFO    ] ================================================
[2026-06-12 20:57:12,533.533 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 20:57:12
[2026-06-12 20:57:12,848.848 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 20:57:12,990.990 INFO    ] Initializing speech engine...
[2026-06-12 20:57:12,995.995 INFO    ] 2026-06-12 20:57:12
[2026-06-12 20:57:13,200.200 INFO    ] 2026-06-12 20:57:13
[2026-06-12 20:57:13,228.228 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 20:57:13,410.410 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 20:57:13,420.420 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 20:57:13,568.568 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 20:57:13,617.617 INFO    ] time= 12/06/2026 20:57:13
[2026-06-12 20:57:13,638.638 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 20:57:13,644.644 INFO    ] Checking for existing commands in stream...
[2026-06-12 20:57:13,710.710 INFO    ] No existing commands found in stream
[2026-06-12 20:57:18,719.719 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 20:57:18,722.722 INFO    ] Waiting 2.82 seconds before fallback handling...
[2026-06-12 20:57:21,950.950 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 20:57:21,951.951 INFO    ] Checking for system updates...
[2026-06-12 20:57:21,973.973 INFO    ] 200
[2026-06-12 20:57:21,975.975 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:57:22,010.010 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 20:57:22,011.011 INFO    ] No update needed
[2026-06-12 20:57:22,013.013 INFO    ] Checking for camera pi updates...
[2026-06-12 20:57:22,035.035 INFO    ] 200
[2026-06-12 20:57:22,037.037 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:57:22,063.063 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 20:57:22,108.108 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 20:57:22,110.110 INFO    ] No camera update needed
[2026-06-12 20:57:22,111.111 INFO    ] Script finished. Safe exiting...
[2026-06-12 20:57:22,112.112 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 20:57:22,116.116 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 20:57:22,119.119 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 20:57:24,158.158 INFO    ] ================================================
[2026-06-12 20:57:24,178.178 INFO    ] Launching Daemon at Fri Jun 12 20:57:24 IST 2026
[2026-06-12 20:57:24,189.189 INFO    ] ================================================
[2026-06-12 20:57:24,515.515 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 20:57:24
[2026-06-12 20:57:24,836.836 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 20:57:24,969.969 INFO    ] Initializing speech engine...
[2026-06-12 20:57:24,974.974 INFO    ] 2026-06-12 20:57:24
[2026-06-12 20:57:25,204.204 INFO    ] 2026-06-12 20:57:25
[2026-06-12 20:57:25,234.234 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 20:57:25,432.432 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 20:57:25,436.436 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 20:57:25,579.579 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 20:57:25,642.642 INFO    ] time= 12/06/2026 20:57:25
[2026-06-12 20:57:25,677.677 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 20:57:25,684.684 INFO    ] Checking for existing commands in stream...
[2026-06-12 20:57:25,761.761 INFO    ] No existing commands found in stream
[2026-06-12 20:57:30,771.771 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 20:57:30,773.773 INFO    ] Waiting 1.33 seconds before fallback handling...
[2026-06-12 20:57:32,403.403 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 20:57:32,404.404 INFO    ] Checking for system updates...
[2026-06-12 20:57:32,429.429 INFO    ] 200
[2026-06-12 20:57:32,431.431 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:57:32,465.465 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 20:57:32,467.467 INFO    ] No update needed
[2026-06-12 20:57:32,468.468 INFO    ] Checking for camera pi updates...
[2026-06-12 20:57:32,489.489 INFO    ] 200
[2026-06-12 20:57:32,491.491 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:57:32,517.517 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 20:57:32,551.551 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 20:57:32,553.553 INFO    ] No camera update needed
[2026-06-12 20:57:32,554.554 INFO    ] Script finished. Safe exiting...
[2026-06-12 20:57:32,556.556 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 20:57:32,559.559 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 20:57:32,563.563 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 20:57:34,601.601 INFO    ] ================================================
[2026-06-12 20:57:34,616.616 INFO    ] Launching Daemon at Fri Jun 12 20:57:34 IST 2026
[2026-06-12 20:57:34,627.627 INFO    ] ================================================
[2026-06-12 20:57:34,983.983 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 20:57:34
[2026-06-12 20:57:35,320.320 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 20:57:35,472.472 INFO    ] Initializing speech engine...
[2026-06-12 20:57:35,476.476 INFO    ] 2026-06-12 20:57:35
[2026-06-12 20:57:35,686.686 INFO    ] 2026-06-12 20:57:35
[2026-06-12 20:57:35,717.717 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 20:57:35,906.906 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 20:57:35,917.917 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 20:57:36,067.067 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 20:57:36,117.117 INFO    ] time= 12/06/2026 20:57:36
[2026-06-12 20:57:36,140.140 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 20:57:36,146.146 INFO    ] Checking for existing commands in stream...
[2026-06-12 20:57:36,214.214 INFO    ] No existing commands found in stream
[2026-06-12 20:57:41,223.223 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 20:57:41,226.226 INFO    ] Waiting 0.72 seconds before fallback handling...
[2026-06-12 20:57:42,311.311 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 20:57:42,313.313 INFO    ] Checking for system updates...
[2026-06-12 20:57:42,333.333 INFO    ] 200
[2026-06-12 20:57:42,335.335 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:57:42,365.365 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 20:57:42,366.366 INFO    ] No update needed
[2026-06-12 20:57:42,368.368 INFO    ] Checking for camera pi updates...
[2026-06-12 20:57:42,388.388 INFO    ] 200
[2026-06-12 20:57:42,390.390 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:57:42,415.415 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 20:57:42,457.457 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 20:57:42,458.458 INFO    ] No camera update needed
[2026-06-12 20:57:42,459.459 INFO    ] Script finished. Safe exiting...
[2026-06-12 20:57:42,461.461 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 20:57:42,464.464 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 20:57:42,467.467 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 20:57:44,505.505 INFO    ] ================================================
[2026-06-12 20:57:44,520.520 INFO    ] Launching Daemon at Fri Jun 12 20:57:44 IST 2026
[2026-06-12 20:57:44,531.531 INFO    ] ================================================
[2026-06-12 20:57:44,901.901 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 20:57:44
[2026-06-12 20:57:45,215.215 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 20:57:45,358.358 INFO    ] Initializing speech engine...
[2026-06-12 20:57:45,363.363 INFO    ] 2026-06-12 20:57:45
[2026-06-12 20:57:45,566.566 INFO    ] 2026-06-12 20:57:45
[2026-06-12 20:57:45,596.596 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 20:57:45,779.779 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 20:57:45,787.787 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 20:57:45,916.916 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 20:57:45,980.980 INFO    ] time= 12/06/2026 20:57:45
[2026-06-12 20:57:46,004.004 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 20:57:46,009.009 INFO    ] Checking for existing commands in stream...
[2026-06-12 20:57:46,080.080 INFO    ] No existing commands found in stream
[2026-06-12 20:57:51,109.109 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 20:57:51,112.112 INFO    ] Waiting 1.08 seconds before fallback handling...
[2026-06-12 20:57:52,592.592 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 20:57:52,594.594 INFO    ] Checking for system updates...
[2026-06-12 20:57:52,614.614 INFO    ] 200
[2026-06-12 20:57:52,616.616 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:57:52,648.648 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 20:57:52,650.650 INFO    ] No update needed
[2026-06-12 20:57:52,651.651 INFO    ] Checking for camera pi updates...
[2026-06-12 20:57:52,674.674 INFO    ] 200
[2026-06-12 20:57:52,676.676 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:57:52,703.703 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 20:57:52,754.754 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 20:57:52,755.755 INFO    ] No camera update needed
[2026-06-12 20:57:52,756.756 INFO    ] Script finished. Safe exiting...
[2026-06-12 20:57:52,758.758 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 20:57:52,761.761 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 20:57:52,764.764 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 20:57:54,802.802 INFO    ] ================================================
[2026-06-12 20:57:54,816.816 INFO    ] Launching Daemon at Fri Jun 12 20:57:54 IST 2026
[2026-06-12 20:57:54,827.827 INFO    ] ================================================
[2026-06-12 20:57:55,167.167 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 20:57:55
[2026-06-12 20:57:55,479.479 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 20:57:55,609.609 INFO    ] Initializing speech engine...
[2026-06-12 20:57:55,613.613 INFO    ] 2026-06-12 20:57:55
[2026-06-12 20:57:55,831.831 INFO    ] 2026-06-12 20:57:55
[2026-06-12 20:57:55,861.861 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 20:57:56,048.048 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 20:57:56,057.057 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 20:57:56,181.181 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 20:57:56,241.241 INFO    ] time= 12/06/2026 20:57:56
[2026-06-12 20:57:56,280.280 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 20:57:56,282.282 INFO    ] Checking for existing commands in stream...
[2026-06-12 20:57:56,354.354 INFO    ] No existing commands found in stream
[2026-06-12 20:58:01,362.362 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 20:58:01,367.367 INFO    ] Waiting 3.43 seconds before fallback handling...
[2026-06-12 20:58:05,148.148 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 20:58:05,150.150 INFO    ] Checking for system updates...
[2026-06-12 20:58:05,170.170 INFO    ] 200
[2026-06-12 20:58:05,171.171 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:58:05,201.201 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 20:58:05,202.202 INFO    ] No update needed
[2026-06-12 20:58:05,204.204 INFO    ] Checking for camera pi updates...
[2026-06-12 20:58:05,227.227 INFO    ] 200
[2026-06-12 20:58:05,229.229 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:58:05,263.263 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 20:58:05,405.405 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 20:58:05,406.406 INFO    ] No camera update needed
[2026-06-12 20:58:05,408.408 INFO    ] Script finished. Safe exiting...
[2026-06-12 20:58:05,409.409 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 20:58:05,412.412 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 20:58:05,415.415 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 20:58:07,453.453 INFO    ] ================================================
[2026-06-12 20:58:07,468.468 INFO    ] Launching Daemon at Fri Jun 12 20:58:07 IST 2026
[2026-06-12 20:58:07,479.479 INFO    ] ================================================
[2026-06-12 20:58:07,848.848 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 20:58:07
[2026-06-12 20:58:08,162.162 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 20:58:08,292.292 INFO    ] Initializing speech engine...
[2026-06-12 20:58:08,296.296 INFO    ] 2026-06-12 20:58:08
[2026-06-12 20:58:08,511.511 INFO    ] 2026-06-12 20:58:08
[2026-06-12 20:58:08,541.541 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 20:58:08,708.708 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 20:58:08,727.727 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 20:58:08,878.878 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 20:58:08,931.931 INFO    ] time= 12/06/2026 20:58:08
[2026-06-12 20:58:08,953.953 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 20:58:08,959.959 INFO    ] Checking for existing commands in stream...
[2026-06-12 20:58:09,027.027 INFO    ] No existing commands found in stream
[2026-06-12 20:58:14,041.041 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 20:58:14,043.043 INFO    ] Waiting 0.67 seconds before fallback handling...
[2026-06-12 20:58:15,080.080 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 20:58:15,082.082 INFO    ] Checking for system updates...
[2026-06-12 20:58:15,102.102 INFO    ] 200
[2026-06-12 20:58:15,104.104 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:58:15,136.136 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 20:58:15,137.137 INFO    ] No update needed
[2026-06-12 20:58:15,138.138 INFO    ] Checking for camera pi updates...
[2026-06-12 20:58:15,157.157 INFO    ] 200
[2026-06-12 20:58:15,159.159 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:58:15,187.187 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 20:58:15,241.241 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 20:58:15,242.242 INFO    ] No camera update needed
[2026-06-12 20:58:15,243.243 INFO    ] Script finished. Safe exiting...
[2026-06-12 20:58:15,244.244 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 20:58:15,247.247 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 20:58:15,250.250 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 20:58:17,289.289 INFO    ] ================================================
[2026-06-12 20:58:17,304.304 INFO    ] Launching Daemon at Fri Jun 12 20:58:17 IST 2026
[2026-06-12 20:58:17,315.315 INFO    ] ================================================
[2026-06-12 20:58:17,664.664 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 20:58:17
[2026-06-12 20:58:17,975.975 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 20:58:18,120.120 INFO    ] Initializing speech engine...
[2026-06-12 20:58:18,126.126 INFO    ] 2026-06-12 20:58:18
[2026-06-12 20:58:18,328.328 INFO    ] 2026-06-12 20:58:18
[2026-06-12 20:58:18,356.356 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 20:58:18,539.539 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 20:58:18,548.548 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 20:58:18,669.669 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 20:58:18,719.719 INFO    ] time= 12/06/2026 20:58:18
[2026-06-12 20:58:18,763.763 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 20:58:18,768.768 INFO    ] Checking for existing commands in stream...
[2026-06-12 20:58:18,863.863 INFO    ] No existing commands found in stream
[2026-06-12 20:58:23,877.877 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 20:58:23,880.880 INFO    ] Waiting 1.80 seconds before fallback handling...
[2026-06-12 20:58:26,052.052 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 20:58:26,054.054 INFO    ] Checking for system updates...
[2026-06-12 20:58:26,076.076 INFO    ] 200
[2026-06-12 20:58:26,077.077 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:58:26,112.112 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 20:58:26,114.114 INFO    ] No update needed
[2026-06-12 20:58:26,115.115 INFO    ] Checking for camera pi updates...
[2026-06-12 20:58:26,138.138 INFO    ] 200
[2026-06-12 20:58:26,140.140 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:58:26,163.163 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 20:58:26,221.221 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 20:58:26,223.223 INFO    ] No camera update needed
[2026-06-12 20:58:26,224.224 INFO    ] Script finished. Safe exiting...
[2026-06-12 20:58:26,225.225 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 20:58:26,229.229 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 20:58:26,232.232 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 20:58:28,273.273 INFO    ] ================================================
[2026-06-12 20:58:28,289.289 INFO    ] Launching Daemon at Fri Jun 12 20:58:28 IST 2026
[2026-06-12 20:58:28,300.300 INFO    ] ================================================
[2026-06-12 20:58:28,687.687 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 20:58:28
[2026-06-12 20:58:29,028.028 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 20:58:29,179.179 INFO    ] Initializing speech engine...
[2026-06-12 20:58:29,184.184 INFO    ] 2026-06-12 20:58:29
[2026-06-12 20:58:29,392.392 INFO    ] 2026-06-12 20:58:29
[2026-06-12 20:58:29,421.421 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 20:58:29,543.543 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 20:58:29,610.610 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 20:58:29,746.746 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 20:58:29,815.815 INFO    ] time= 12/06/2026 20:58:29
[2026-06-12 20:58:29,840.840 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 20:58:29,846.846 INFO    ] Checking for existing commands in stream...
[2026-06-12 20:58:29,913.913 INFO    ] No existing commands found in stream
[2026-06-12 20:58:34,932.932 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 20:58:34,936.936 INFO    ] Waiting 3.66 seconds before fallback handling...
[2026-06-12 20:58:38,992.992 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 20:58:38,993.993 INFO    ] Checking for system updates...
[2026-06-12 20:58:39,015.015 INFO    ] 200
[2026-06-12 20:58:39,017.017 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:58:39,052.052 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 20:58:39,053.053 INFO    ] No update needed
[2026-06-12 20:58:39,055.055 INFO    ] Checking for camera pi updates...
[2026-06-12 20:58:39,077.077 INFO    ] 200
[2026-06-12 20:58:39,078.078 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:58:39,102.102 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 20:58:39,155.155 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 20:58:39,156.156 INFO    ] No camera update needed
[2026-06-12 20:58:39,158.158 INFO    ] Script finished. Safe exiting...
[2026-06-12 20:58:39,159.159 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 20:58:39,163.163 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 20:58:39,165.165 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 20:58:41,203.203 INFO    ] ================================================
[2026-06-12 20:58:41,218.218 INFO    ] Launching Daemon at Fri Jun 12 20:58:41 IST 2026
[2026-06-12 20:58:41,229.229 INFO    ] ================================================
[2026-06-12 20:58:41,566.566 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 20:58:41
[2026-06-12 20:58:41,903.903 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 20:58:42,045.045 INFO    ] Initializing speech engine...
[2026-06-12 20:58:42,057.057 INFO    ] 2026-06-12 20:58:42
[2026-06-12 20:58:42,268.268 INFO    ] 2026-06-12 20:58:42
[2026-06-12 20:58:42,297.297 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 20:58:42,480.480 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 20:58:42,490.490 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 20:58:42,635.635 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 20:58:42,689.689 INFO    ] time= 12/06/2026 20:58:42
[2026-06-12 20:58:42,710.710 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 20:58:42,717.717 INFO    ] Checking for existing commands in stream...
[2026-06-12 20:58:42,783.783 INFO    ] No existing commands found in stream
[2026-06-12 20:58:47,797.797 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 20:58:47,801.801 INFO    ] Waiting 0.49 seconds before fallback handling...
[2026-06-12 20:58:48,642.642 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 20:58:48,643.643 INFO    ] Checking for system updates...
[2026-06-12 20:58:48,664.664 INFO    ] 200
[2026-06-12 20:58:48,666.666 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:58:48,699.699 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 20:58:48,700.700 INFO    ] No update needed
[2026-06-12 20:58:48,702.702 INFO    ] Checking for camera pi updates...
[2026-06-12 20:58:48,725.725 INFO    ] 200
[2026-06-12 20:58:48,727.727 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:58:48,753.753 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 20:58:48,804.804 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 20:58:48,806.806 INFO    ] No camera update needed
[2026-06-12 20:58:48,807.807 INFO    ] Script finished. Safe exiting...
[2026-06-12 20:58:48,809.809 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 20:58:48,812.812 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 20:58:48,815.815 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 20:58:50,853.853 INFO    ] ================================================
[2026-06-12 20:58:50,868.868 INFO    ] Launching Daemon at Fri Jun 12 20:58:50 IST 2026
[2026-06-12 20:58:50,879.879 INFO    ] ================================================
[2026-06-12 20:58:51,212.212 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 20:58:51
[2026-06-12 20:58:51,525.525 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 20:58:51,664.664 INFO    ] Initializing speech engine...
[2026-06-12 20:58:51,674.674 INFO    ] 2026-06-12 20:58:51
[2026-06-12 20:58:51,879.879 INFO    ] 2026-06-12 20:58:51
[2026-06-12 20:58:51,907.907 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 20:58:52,090.090 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 20:58:52,099.099 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 20:58:52,227.227 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 20:58:52,294.294 INFO    ] time= 12/06/2026 20:58:52
[2026-06-12 20:58:52,317.317 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 20:58:52,324.324 INFO    ] Checking for existing commands in stream...
[2026-06-12 20:58:52,389.389 INFO    ] No existing commands found in stream
[2026-06-12 20:58:57,400.400 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 20:58:57,403.403 INFO    ] Waiting 2.18 seconds before fallback handling...
[2026-06-12 20:58:59,953.953 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 20:58:59,954.954 INFO    ] Checking for system updates...
[2026-06-12 20:58:59,975.975 INFO    ] 200
[2026-06-12 20:58:59,976.976 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:59:00,011.011 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 20:59:00,012.012 INFO    ] No update needed
[2026-06-12 20:59:00,013.013 INFO    ] Checking for camera pi updates...
[2026-06-12 20:59:00,033.033 INFO    ] 200
[2026-06-12 20:59:00,035.035 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:59:00,057.057 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 20:59:00,096.096 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 20:59:00,097.097 INFO    ] No camera update needed
[2026-06-12 20:59:00,098.098 INFO    ] Script finished. Safe exiting...
[2026-06-12 20:59:00,100.100 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 20:59:00,103.103 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 20:59:00,109.109 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 20:59:02,146.146 INFO    ] ================================================
[2026-06-12 20:59:02,159.159 INFO    ] Launching Daemon at Fri Jun 12 20:59:02 IST 2026
[2026-06-12 20:59:02,167.167 INFO    ] ================================================
[2026-06-12 20:59:02,486.486 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 20:59:02
[2026-06-12 20:59:02,802.802 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 20:59:02,933.933 INFO    ] Initializing speech engine...
[2026-06-12 20:59:02,940.940 INFO    ] 2026-06-12 20:59:02
[2026-06-12 20:59:03,153.153 INFO    ] 2026-06-12 20:59:03
[2026-06-12 20:59:03,182.182 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 20:59:03,336.336 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 20:59:03,370.370 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 20:59:03,504.504 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 20:59:03,561.561 INFO    ] time= 12/06/2026 20:59:03
[2026-06-12 20:59:03,596.596 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 20:59:03,602.602 INFO    ] Checking for existing commands in stream...
[2026-06-12 20:59:03,674.674 INFO    ] No existing commands found in stream
[2026-06-12 20:59:08,683.683 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 20:59:08,686.686 INFO    ] Waiting 2.85 seconds before fallback handling...
[2026-06-12 20:59:11,920.920 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 20:59:11,922.922 INFO    ] Checking for system updates...
[2026-06-12 20:59:11,943.943 INFO    ] 200
[2026-06-12 20:59:11,944.944 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:59:11,974.974 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 20:59:11,976.976 INFO    ] No update needed
[2026-06-12 20:59:11,977.977 INFO    ] Checking for camera pi updates...
[2026-06-12 20:59:11,996.996 INFO    ] 200
[2026-06-12 20:59:11,997.997 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:59:12,024.024 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 20:59:12,063.063 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 20:59:12,065.065 INFO    ] No camera update needed
[2026-06-12 20:59:12,066.066 INFO    ] Script finished. Safe exiting...
[2026-06-12 20:59:12,067.067 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 20:59:12,070.070 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 20:59:12,073.073 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 20:59:14,112.112 INFO    ] ================================================
[2026-06-12 20:59:14,127.127 INFO    ] Launching Daemon at Fri Jun 12 20:59:14 IST 2026
[2026-06-12 20:59:14,137.137 INFO    ] ================================================
[2026-06-12 20:59:14,504.504 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 20:59:14
[2026-06-12 20:59:14,821.821 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 20:59:14,954.954 INFO    ] Initializing speech engine...
[2026-06-12 20:59:14,959.959 INFO    ] 2026-06-12 20:59:14
[2026-06-12 20:59:15,197.197 INFO    ] 2026-06-12 20:59:15
[2026-06-12 20:59:15,227.227 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 20:59:15,414.414 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 20:59:15,422.422 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 20:59:15,552.552 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 20:59:15,616.616 INFO    ] time= 12/06/2026 20:59:15
[2026-06-12 20:59:15,644.644 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 20:59:15,650.650 INFO    ] Checking for existing commands in stream...
[2026-06-12 20:59:15,751.751 INFO    ] No existing commands found in stream
[2026-06-12 20:59:20,761.761 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 20:59:20,764.764 INFO    ] Waiting 3.91 seconds before fallback handling...
[2026-06-12 20:59:25,031.031 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 20:59:25,033.033 INFO    ] Checking for system updates...
[2026-06-12 20:59:25,053.053 INFO    ] 200
[2026-06-12 20:59:25,054.054 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:59:25,086.086 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 20:59:25,088.088 INFO    ] No update needed
[2026-06-12 20:59:25,089.089 INFO    ] Checking for camera pi updates...
[2026-06-12 20:59:25,108.108 INFO    ] 200
[2026-06-12 20:59:25,110.110 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:59:25,134.134 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 20:59:25,178.178 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 20:59:25,179.179 INFO    ] No camera update needed
[2026-06-12 20:59:25,181.181 INFO    ] Script finished. Safe exiting...
[2026-06-12 20:59:25,182.182 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 20:59:25,185.185 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 20:59:25,188.188 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 20:59:27,225.225 INFO    ] ================================================
[2026-06-12 20:59:27,240.240 INFO    ] Launching Daemon at Fri Jun 12 20:59:27 IST 2026
[2026-06-12 20:59:27,251.251 INFO    ] ================================================
[2026-06-12 20:59:27,617.617 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 20:59:27
[2026-06-12 20:59:27,956.956 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 20:59:28,107.107 INFO    ] Initializing speech engine...
[2026-06-12 20:59:28,112.112 INFO    ] 2026-06-12 20:59:28
[2026-06-12 20:59:28,320.320 INFO    ] 2026-06-12 20:59:28
[2026-06-12 20:59:28,349.349 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 20:59:28,532.532 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 20:59:28,535.535 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 20:59:28,670.670 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 20:59:28,730.730 INFO    ] time= 12/06/2026 20:59:28
[2026-06-12 20:59:28,763.763 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 20:59:28,768.768 INFO    ] Checking for existing commands in stream...
[2026-06-12 20:59:28,836.836 INFO    ] No existing commands found in stream
[2026-06-12 20:59:33,869.869 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 20:59:33,872.872 INFO    ] Waiting 0.64 seconds before fallback handling...
[2026-06-12 20:59:34,882.882 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 20:59:34,884.884 INFO    ] Checking for system updates...
[2026-06-12 20:59:34,906.906 INFO    ] 200
[2026-06-12 20:59:34,908.908 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:59:34,938.938 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 20:59:34,939.939 INFO    ] No update needed
[2026-06-12 20:59:34,941.941 INFO    ] Checking for camera pi updates...
[2026-06-12 20:59:34,961.961 INFO    ] 200
[2026-06-12 20:59:34,963.963 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:59:34,987.987 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 20:59:35,017.017 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 20:59:35,018.018 INFO    ] No camera update needed
[2026-06-12 20:59:35,020.020 INFO    ] Script finished. Safe exiting...
[2026-06-12 20:59:35,021.021 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 20:59:35,024.024 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 20:59:35,027.027 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 20:59:37,065.065 INFO    ] ================================================
[2026-06-12 20:59:37,080.080 INFO    ] Launching Daemon at Fri Jun 12 20:59:37 IST 2026
[2026-06-12 20:59:37,091.091 INFO    ] ================================================
[2026-06-12 20:59:37,441.441 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 20:59:37
[2026-06-12 20:59:37,751.751 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 20:59:37,881.881 INFO    ] Initializing speech engine...
[2026-06-12 20:59:37,888.888 INFO    ] 2026-06-12 20:59:37
[2026-06-12 20:59:38,099.099 INFO    ] 2026-06-12 20:59:38
[2026-06-12 20:59:38,128.128 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 20:59:38,315.315 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 20:59:38,324.324 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 20:59:38,449.449 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 20:59:38,499.499 INFO    ] time= 12/06/2026 20:59:38
[2026-06-12 20:59:38,545.545 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 20:59:38,550.550 INFO    ] Checking for existing commands in stream...
[2026-06-12 20:59:38,623.623 INFO    ] No existing commands found in stream
[2026-06-12 20:59:43,637.637 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 20:59:43,640.640 INFO    ] Waiting 3.70 seconds before fallback handling...
[2026-06-12 20:59:47,722.722 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 20:59:47,724.724 INFO    ] Checking for system updates...
[2026-06-12 20:59:47,744.744 INFO    ] 200
[2026-06-12 20:59:47,745.745 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:59:47,775.775 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 20:59:47,776.776 INFO    ] No update needed
[2026-06-12 20:59:47,778.778 INFO    ] Checking for camera pi updates...
[2026-06-12 20:59:47,800.800 INFO    ] 200
[2026-06-12 20:59:47,801.801 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:59:47,824.824 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 20:59:47,874.874 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 20:59:47,875.875 INFO    ] No camera update needed
[2026-06-12 20:59:47,876.876 INFO    ] Script finished. Safe exiting...
[2026-06-12 20:59:47,878.878 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 20:59:47,881.881 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 20:59:47,883.883 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 20:59:49,924.924 INFO    ] ================================================
[2026-06-12 20:59:49,940.940 INFO    ] Launching Daemon at Fri Jun 12 20:59:49 IST 2026
[2026-06-12 20:59:49,951.951 INFO    ] ================================================
[2026-06-12 20:59:50,328.328 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 20:59:50
[2026-06-12 20:59:50,652.652 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 20:59:50,784.784 INFO    ] Initializing speech engine...
[2026-06-12 20:59:50,788.788 INFO    ] 2026-06-12 20:59:50
[2026-06-12 20:59:50,995.995 INFO    ] 2026-06-12 20:59:50
[2026-06-12 20:59:51,024.024 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 20:59:51,179.179 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 20:59:51,186.186 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 20:59:51,336.336 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 20:59:51,390.390 INFO    ] time= 12/06/2026 20:59:51
[2026-06-12 20:59:51,417.417 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 20:59:51,473.473 INFO    ] Checking for existing commands in stream...
[2026-06-12 20:59:51,571.571 INFO    ] No existing commands found in stream
[2026-06-12 20:59:56,581.581 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 20:59:56,584.584 INFO    ] Waiting 2.31 seconds before fallback handling...
[2026-06-12 20:59:59,222.222 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 20:59:59,224.224 INFO    ] Checking for system updates...
[2026-06-12 20:59:59,244.244 INFO    ] 200
[2026-06-12 20:59:59,245.245 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:59:59,275.275 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 20:59:59,277.277 INFO    ] No update needed
[2026-06-12 20:59:59,278.278 INFO    ] Checking for camera pi updates...
[2026-06-12 20:59:59,299.299 INFO    ] 200
[2026-06-12 20:59:59,300.300 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 20:59:59,326.326 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 20:59:59,378.378 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 20:59:59,380.380 INFO    ] No camera update needed
[2026-06-12 20:59:59,381.381 INFO    ] Script finished. Safe exiting...
[2026-06-12 20:59:59,383.383 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 20:59:59,386.386 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 20:59:59,389.389 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 21:00:01,427.427 INFO    ] ================================================
[2026-06-12 21:00:01,442.442 INFO    ] Launching Daemon at Fri Jun 12 21:00:01 IST 2026
[2026-06-12 21:00:01,453.453 INFO    ] ================================================
[2026-06-12 21:00:02,320.320 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 21:00:02
[2026-06-12 21:00:03,504.504 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 21:00:04,181.181 INFO    ] Initializing speech engine...
[2026-06-12 21:00:04,187.187 INFO    ] 2026-06-12 21:00:04
[2026-06-12 21:00:04,609.609 INFO    ] 2026-06-12 21:00:04
[2026-06-12 21:00:04,633.633 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 21:00:04,817.817 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 21:00:04,826.826 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 21:00:04,950.950 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 21:00:04,996.996 INFO    ] time= 12/06/2026 21:00:04
[2026-06-12 21:00:05,030.030 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 21:00:05,053.053 INFO    ] Checking for existing commands in stream...
[2026-06-12 21:00:05,123.123 INFO    ] No existing commands found in stream
[2026-06-12 21:00:10,134.134 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 21:00:10,136.136 INFO    ] Waiting 1.90 seconds before fallback handling...
[2026-06-12 21:00:12,412.412 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 21:00:12,414.414 INFO    ] Checking for system updates...
[2026-06-12 21:00:12,435.435 INFO    ] 200
[2026-06-12 21:00:12,436.436 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:00:12,468.468 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 21:00:12,469.469 INFO    ] No update needed
[2026-06-12 21:00:12,471.471 INFO    ] Checking for camera pi updates...
[2026-06-12 21:00:12,490.490 INFO    ] 200
[2026-06-12 21:00:12,491.491 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:00:12,514.514 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 21:00:12,653.653 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 21:00:12,654.654 INFO    ] No camera update needed
[2026-06-12 21:00:12,655.655 INFO    ] Script finished. Safe exiting...
[2026-06-12 21:00:12,657.657 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 21:00:12,660.660 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 21:00:12,662.662 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 21:00:14,702.702 INFO    ] ================================================
[2026-06-12 21:00:14,717.717 INFO    ] Launching Daemon at Fri Jun 12 21:00:14 IST 2026
[2026-06-12 21:00:14,728.728 INFO    ] ================================================
[2026-06-12 21:00:15,084.084 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 21:00:15
[2026-06-12 21:00:15,396.396 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 21:00:15,528.528 INFO    ] Initializing speech engine...
[2026-06-12 21:00:15,532.532 INFO    ] 2026-06-12 21:00:15
[2026-06-12 21:00:15,752.752 INFO    ] 2026-06-12 21:00:15
[2026-06-12 21:00:15,780.780 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 21:00:15,967.967 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 21:00:15,971.971 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 21:00:16,109.109 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 21:00:16,173.173 INFO    ] time= 12/06/2026 21:00:16
[2026-06-12 21:00:16,202.202 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 21:00:16,208.208 INFO    ] Checking for existing commands in stream...
[2026-06-12 21:00:16,276.276 INFO    ] No existing commands found in stream
[2026-06-12 21:00:21,284.284 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 21:00:21,287.287 INFO    ] Waiting 0.71 seconds before fallback handling...
[2026-06-12 21:00:22,372.372 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 21:00:22,374.374 INFO    ] Checking for system updates...
[2026-06-12 21:00:22,394.394 INFO    ] 200
[2026-06-12 21:00:22,395.395 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:00:22,427.427 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 21:00:22,429.429 INFO    ] No update needed
[2026-06-12 21:00:22,430.430 INFO    ] Checking for camera pi updates...
[2026-06-12 21:00:22,449.449 INFO    ] 200
[2026-06-12 21:00:22,451.451 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:00:22,473.473 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 21:00:22,524.524 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 21:00:22,526.526 INFO    ] No camera update needed
[2026-06-12 21:00:22,527.527 INFO    ] Script finished. Safe exiting...
[2026-06-12 21:00:22,528.528 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 21:00:22,531.531 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 21:00:22,534.534 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 21:00:24,575.575 INFO    ] ================================================
[2026-06-12 21:00:24,591.591 INFO    ] Launching Daemon at Fri Jun 12 21:00:24 IST 2026
[2026-06-12 21:00:24,602.602 INFO    ] ================================================
[2026-06-12 21:00:24,936.936 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 21:00:24
[2026-06-12 21:00:25,249.249 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 21:00:25,387.387 INFO    ] Initializing speech engine...
[2026-06-12 21:00:25,398.398 INFO    ] 2026-06-12 21:00:25
[2026-06-12 21:00:25,605.605 INFO    ] 2026-06-12 21:00:25
[2026-06-12 21:00:25,634.634 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 21:00:25,821.821 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 21:00:25,830.830 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 21:00:25,976.976 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 21:00:26,029.029 INFO    ] time= 12/06/2026 21:00:25
[2026-06-12 21:00:26,052.052 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 21:00:26,058.058 INFO    ] Checking for existing commands in stream...
[2026-06-12 21:00:26,126.126 INFO    ] No existing commands found in stream
[2026-06-12 21:00:31,135.135 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 21:00:31,138.138 INFO    ] Waiting 1.28 seconds before fallback handling...
[2026-06-12 21:00:32,745.745 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 21:00:32,746.746 INFO    ] Checking for system updates...
[2026-06-12 21:00:32,768.768 INFO    ] 200
[2026-06-12 21:00:32,770.770 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:00:32,808.808 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 21:00:32,810.810 INFO    ] No update needed
[2026-06-12 21:00:32,811.811 INFO    ] Checking for camera pi updates...
[2026-06-12 21:00:32,834.834 INFO    ] 200
[2026-06-12 21:00:32,835.835 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:00:32,862.862 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 21:00:32,912.912 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 21:00:32,913.913 INFO    ] No camera update needed
[2026-06-12 21:00:32,914.914 INFO    ] Script finished. Safe exiting...
[2026-06-12 21:00:32,915.915 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 21:00:32,918.918 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 21:00:32,921.921 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 21:00:34,960.960 INFO    ] ================================================
[2026-06-12 21:00:34,975.975 INFO    ] Launching Daemon at Fri Jun 12 21:00:34 IST 2026
[2026-06-12 21:00:34,986.986 INFO    ] ================================================
[2026-06-12 21:00:35,358.358 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 21:00:35
[2026-06-12 21:00:35,706.706 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 21:00:35,856.856 INFO    ] Initializing speech engine...
[2026-06-12 21:00:35,862.862 INFO    ] 2026-06-12 21:00:35
[2026-06-12 21:00:36,070.070 INFO    ] 2026-06-12 21:00:36
[2026-06-12 21:00:36,099.099 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 21:00:36,232.232 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 21:00:36,285.285 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 21:00:36,424.424 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 21:00:36,483.483 INFO    ] time= 12/06/2026 21:00:36
[2026-06-12 21:00:36,515.515 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 21:00:36,522.522 INFO    ] Checking for existing commands in stream...
[2026-06-12 21:00:36,588.588 INFO    ] No existing commands found in stream
[2026-06-12 21:00:41,603.603 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 21:00:41,606.606 INFO    ] Waiting 1.60 seconds before fallback handling...
[2026-06-12 21:00:43,593.593 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 21:00:43,595.595 INFO    ] Checking for system updates...
[2026-06-12 21:00:43,615.615 INFO    ] 200
[2026-06-12 21:00:43,617.617 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:00:43,647.647 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 21:00:43,649.649 INFO    ] No update needed
[2026-06-12 21:00:43,650.650 INFO    ] Checking for camera pi updates...
[2026-06-12 21:00:43,670.670 INFO    ] 200
[2026-06-12 21:00:43,672.672 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:00:43,695.695 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 21:00:43,741.741 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 21:00:43,742.742 INFO    ] No camera update needed
[2026-06-12 21:00:43,743.743 INFO    ] Script finished. Safe exiting...
[2026-06-12 21:00:43,745.745 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 21:00:43,748.748 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 21:00:43,750.750 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 21:00:45,789.789 INFO    ] ================================================
[2026-06-12 21:00:45,804.804 INFO    ] Launching Daemon at Fri Jun 12 21:00:45 IST 2026
[2026-06-12 21:00:45,815.815 INFO    ] ================================================
[2026-06-12 21:00:46,187.187 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 21:00:46
[2026-06-12 21:00:46,518.518 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 21:00:46,670.670 INFO    ] Initializing speech engine...
[2026-06-12 21:00:46,675.675 INFO    ] 2026-06-12 21:00:46
[2026-06-12 21:00:46,883.883 INFO    ] 2026-06-12 21:00:46
[2026-06-12 21:00:46,914.914 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 21:00:47,100.100 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 21:00:47,109.109 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 21:00:47,260.260 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 21:00:47,310.310 INFO    ] time= 12/06/2026 21:00:47
[2026-06-12 21:00:47,332.332 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 21:00:47,338.338 INFO    ] Checking for existing commands in stream...
[2026-06-12 21:00:47,406.406 INFO    ] No existing commands found in stream
[2026-06-12 21:00:52,420.420 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 21:00:52,423.423 INFO    ] Waiting 3.96 seconds before fallback handling...
[2026-06-12 21:00:56,756.756 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 21:00:56,758.758 INFO    ] Checking for system updates...
[2026-06-12 21:00:56,779.779 INFO    ] 200
[2026-06-12 21:00:56,780.780 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:00:56,810.810 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 21:00:56,812.812 INFO    ] No update needed
[2026-06-12 21:00:56,813.813 INFO    ] Checking for camera pi updates...
[2026-06-12 21:00:56,833.833 INFO    ] 200
[2026-06-12 21:00:56,834.834 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:00:56,858.858 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 21:00:56,909.909 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 21:00:56,910.910 INFO    ] No camera update needed
[2026-06-12 21:00:56,912.912 INFO    ] Script finished. Safe exiting...
[2026-06-12 21:00:56,913.913 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 21:00:56,916.916 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 21:00:56,919.919 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 21:00:58,956.956 INFO    ] ================================================
[2026-06-12 21:00:58,971.971 INFO    ] Launching Daemon at Fri Jun 12 21:00:58 IST 2026
[2026-06-12 21:00:58,982.982 INFO    ] ================================================
[2026-06-12 21:00:59,320.320 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 21:00:59
[2026-06-12 21:00:59,632.632 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 21:00:59,775.775 INFO    ] Initializing speech engine...
[2026-06-12 21:00:59,780.780 INFO    ] 2026-06-12 21:00:59
[2026-06-12 21:00:59,982.982 INFO    ] 2026-06-12 21:00:59
[2026-06-12 21:01:00,012.012 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 21:01:00,195.195 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 21:01:00,204.204 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 21:01:00,329.329 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 21:01:00,386.386 INFO    ] time= 12/06/2026 21:01:00
[2026-06-12 21:01:00,415.415 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 21:01:00,425.425 INFO    ] Checking for existing commands in stream...
[2026-06-12 21:01:00,496.496 INFO    ] No existing commands found in stream
[2026-06-12 21:01:05,527.527 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 21:01:05,530.530 INFO    ] Waiting 2.93 seconds before fallback handling...
[2026-06-12 21:01:08,854.854 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 21:01:08,856.856 INFO    ] Checking for system updates...
[2026-06-12 21:01:08,876.876 INFO    ] 200
[2026-06-12 21:01:08,877.877 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:01:08,906.906 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 21:01:08,908.908 INFO    ] No update needed
[2026-06-12 21:01:08,909.909 INFO    ] Checking for camera pi updates...
[2026-06-12 21:01:08,929.929 INFO    ] 200
[2026-06-12 21:01:08,931.931 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:01:08,955.955 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 21:01:09,005.005 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 21:01:09,006.006 INFO    ] No camera update needed
[2026-06-12 21:01:09,008.008 INFO    ] Script finished. Safe exiting...
[2026-06-12 21:01:09,009.009 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 21:01:09,012.012 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 21:01:09,015.015 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 21:01:11,053.053 INFO    ] ================================================
[2026-06-12 21:01:11,068.068 INFO    ] Launching Daemon at Fri Jun 12 21:01:11 IST 2026
[2026-06-12 21:01:11,078.078 INFO    ] ================================================
[2026-06-12 21:01:11,443.443 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 21:01:11
[2026-06-12 21:01:11,755.755 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 21:01:11,886.886 INFO    ] Initializing speech engine...
[2026-06-12 21:01:11,889.889 INFO    ] 2026-06-12 21:01:11
[2026-06-12 21:01:12,109.109 INFO    ] 2026-06-12 21:01:12
[2026-06-12 21:01:12,138.138 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 21:01:12,323.323 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 21:01:12,327.327 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 21:01:12,466.466 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 21:01:12,534.534 INFO    ] time= 12/06/2026 21:01:12
[2026-06-12 21:01:12,558.558 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 21:01:12,560.560 INFO    ] Checking for existing commands in stream...
[2026-06-12 21:01:12,632.632 INFO    ] No existing commands found in stream
[2026-06-12 21:01:17,641.641 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 21:01:17,644.644 INFO    ] Waiting 2.76 seconds before fallback handling...
[2026-06-12 21:01:20,782.782 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 21:01:20,784.784 INFO    ] Checking for system updates...
[2026-06-12 21:01:20,805.805 INFO    ] 200
[2026-06-12 21:01:20,806.806 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:01:20,839.839 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 21:01:20,841.841 INFO    ] No update needed
[2026-06-12 21:01:20,842.842 INFO    ] Checking for camera pi updates...
[2026-06-12 21:01:20,862.862 INFO    ] 200
[2026-06-12 21:01:20,864.864 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:01:20,889.889 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 21:01:20,938.938 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 21:01:20,939.939 INFO    ] No camera update needed
[2026-06-12 21:01:20,941.941 INFO    ] Script finished. Safe exiting...
[2026-06-12 21:01:20,943.943 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 21:01:20,946.946 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 21:01:20,949.949 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 21:01:22,987.987 INFO    ] ================================================
[2026-06-12 21:01:23,002.002 INFO    ] Launching Daemon at Fri Jun 12 21:01:22 IST 2026
[2026-06-12 21:01:23,013.013 INFO    ] ================================================
[2026-06-12 21:01:23,381.381 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 21:01:23
[2026-06-12 21:01:23,708.708 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 21:01:23,858.858 INFO    ] Initializing speech engine...
[2026-06-12 21:01:23,862.862 INFO    ] 2026-06-12 21:01:23
[2026-06-12 21:01:24,066.066 INFO    ] 2026-06-12 21:01:24
[2026-06-12 21:01:24,095.095 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 21:01:24,278.278 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 21:01:24,288.288 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 21:01:24,423.423 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 21:01:24,486.486 INFO    ] time= 12/06/2026 21:01:24
[2026-06-12 21:01:24,510.510 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 21:01:24,515.515 INFO    ] Checking for existing commands in stream...
[2026-06-12 21:01:24,606.606 INFO    ] No existing commands found in stream
[2026-06-12 21:01:29,620.620 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 21:01:29,622.622 INFO    ] Waiting 2.34 seconds before fallback handling...
[2026-06-12 21:01:32,314.314 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 21:01:32,315.315 INFO    ] Checking for system updates...
[2026-06-12 21:01:32,339.339 INFO    ] 200
[2026-06-12 21:01:32,341.341 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:01:32,377.377 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 21:01:32,378.378 INFO    ] No update needed
[2026-06-12 21:01:32,380.380 INFO    ] Checking for camera pi updates...
[2026-06-12 21:01:32,403.403 INFO    ] 200
[2026-06-12 21:01:32,405.405 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:01:32,434.434 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 21:01:32,466.466 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 21:01:32,468.468 INFO    ] No camera update needed
[2026-06-12 21:01:32,469.469 INFO    ] Script finished. Safe exiting...
[2026-06-12 21:01:32,471.471 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 21:01:32,476.476 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 21:01:32,480.480 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 21:01:34,518.518 INFO    ] ================================================
[2026-06-12 21:01:34,533.533 INFO    ] Launching Daemon at Fri Jun 12 21:01:34 IST 2026
[2026-06-12 21:01:34,543.543 INFO    ] ================================================
[2026-06-12 21:01:34,870.870 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 21:01:34
[2026-06-12 21:01:35,188.188 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 21:01:35,332.332 INFO    ] Initializing speech engine...
[2026-06-12 21:01:35,337.337 INFO    ] 2026-06-12 21:01:35
[2026-06-12 21:01:35,543.543 INFO    ] 2026-06-12 21:01:35
[2026-06-12 21:01:35,571.571 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 21:01:35,755.755 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 21:01:35,764.764 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 21:01:35,885.885 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 21:01:35,916.916 INFO    ] time= 12/06/2026 21:01:35
[2026-06-12 21:01:35,968.968 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 21:01:35,991.991 INFO    ] Checking for existing commands in stream...
[2026-06-12 21:01:36,087.087 INFO    ] No existing commands found in stream
[2026-06-12 21:01:41,101.101 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 21:01:41,104.104 INFO    ] Waiting 1.47 seconds before fallback handling...
[2026-06-12 21:01:42,919.919 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 21:01:42,920.920 INFO    ] Checking for system updates...
[2026-06-12 21:01:42,943.943 INFO    ] 200
[2026-06-12 21:01:42,945.945 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_HEALTH_CHECK"}
[2026-06-12 21:01:42,946.946 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping update check
[2026-06-12 21:01:42,948.948 INFO    ] Checking for camera pi updates...
[2026-06-12 21:01:42,969.969 INFO    ] 200
[2026-06-12 21:01:42,970.970 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_HEALTH_CHECK"}
[2026-06-12 21:01:42,972.972 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping camera update check
[2026-06-12 21:01:42,973.973 INFO    ] Script finished. Safe exiting...
[2026-06-12 21:01:42,975.975 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 21:01:42,978.978 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 21:01:42,982.982 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 21:01:45,005.005 INFO    ] ================================================
[2026-06-12 21:01:45,014.014 INFO    ] Launching Daemon at Fri Jun 12 21:01:45 IST 2026
[2026-06-12 21:01:45,020.020 INFO    ] ================================================
[2026-06-12 21:01:45,364.364 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 21:01:45
[2026-06-12 21:01:45,729.729 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 21:01:45,861.861 INFO    ] Initializing speech engine...
[2026-06-12 21:01:45,866.866 INFO    ] 2026-06-12 21:01:45
[2026-06-12 21:01:46,082.082 INFO    ] 2026-06-12 21:01:46
[2026-06-12 21:01:46,111.111 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 21:01:46,294.294 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 21:01:46,298.298 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 21:01:46,435.435 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 21:01:46,502.502 INFO    ] time= 12/06/2026 21:01:46
[2026-06-12 21:01:46,526.526 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 21:01:46,532.532 INFO    ] Checking for existing commands in stream...
[2026-06-12 21:01:46,599.599 INFO    ] No existing commands found in stream
[2026-06-12 21:01:51,608.608 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 21:01:51,611.611 INFO    ] Waiting 1.60 seconds before fallback handling...
[2026-06-12 21:01:53,603.603 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 21:01:53,605.605 INFO    ] Checking for system updates...
[2026-06-12 21:01:53,627.627 INFO    ] 200
[2026-06-12 21:01:53,629.629 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:01:53,661.661 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 21:01:53,663.663 INFO    ] No update needed
[2026-06-12 21:01:53,665.665 INFO    ] Checking for camera pi updates...
[2026-06-12 21:01:53,684.684 INFO    ] 200
[2026-06-12 21:01:53,686.686 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:01:53,711.711 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 21:01:53,759.759 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 21:01:53,761.761 INFO    ] No camera update needed
[2026-06-12 21:01:53,762.762 INFO    ] Script finished. Safe exiting...
[2026-06-12 21:01:53,764.764 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 21:01:53,767.767 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 21:01:53,770.770 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 21:01:55,810.810 INFO    ] ================================================
[2026-06-12 21:01:55,826.826 INFO    ] Launching Daemon at Fri Jun 12 21:01:55 IST 2026
[2026-06-12 21:01:55,837.837 INFO    ] ================================================
[2026-06-12 21:01:56,208.208 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 21:01:56
[2026-06-12 21:01:56,528.528 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 21:01:56,671.671 INFO    ] Initializing speech engine...
[2026-06-12 21:01:56,677.677 INFO    ] 2026-06-12 21:01:56
[2026-06-12 21:01:56,879.879 INFO    ] 2026-06-12 21:01:56
[2026-06-12 21:01:56,910.910 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 21:01:57,097.097 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 21:01:57,106.106 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 21:01:57,233.233 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 21:01:57,290.290 INFO    ] time= 12/06/2026 21:01:57
[2026-06-12 21:01:57,330.330 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 21:01:57,337.337 INFO    ] Checking for existing commands in stream...
[2026-06-12 21:01:57,427.427 INFO    ] No existing commands found in stream
[2026-06-12 21:02:02,440.440 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 21:02:02,442.442 INFO    ] Waiting 3.11 seconds before fallback handling...
[2026-06-12 21:02:05,912.912 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 21:02:05,914.914 INFO    ] Checking for system updates...
[2026-06-12 21:02:05,935.935 INFO    ] 200
[2026-06-12 21:02:05,936.936 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:02:05,966.966 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 21:02:05,967.967 INFO    ] No update needed
[2026-06-12 21:02:05,969.969 INFO    ] Checking for camera pi updates...
[2026-06-12 21:02:05,988.988 INFO    ] 200
[2026-06-12 21:02:05,989.989 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:02:06,012.012 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 21:02:06,051.051 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 21:02:06,054.054 INFO    ] No camera update needed
[2026-06-12 21:02:06,055.055 INFO    ] Script finished. Safe exiting...
[2026-06-12 21:02:06,057.057 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 21:02:06,062.062 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 21:02:06,065.065 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 21:02:08,106.106 INFO    ] ================================================
[2026-06-12 21:02:08,121.121 INFO    ] Launching Daemon at Fri Jun 12 21:02:08 IST 2026
[2026-06-12 21:02:08,132.132 INFO    ] ================================================
[2026-06-12 21:02:08,461.461 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 21:02:08
[2026-06-12 21:02:08,774.774 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 21:02:08,917.917 INFO    ] Initializing speech engine...
[2026-06-12 21:02:08,923.923 INFO    ] 2026-06-12 21:02:08
[2026-06-12 21:02:09,126.126 INFO    ] 2026-06-12 21:02:09
[2026-06-12 21:02:09,155.155 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 21:02:09,338.338 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 21:02:09,347.347 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 21:02:09,469.469 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 21:02:09,530.530 INFO    ] time= 12/06/2026 21:02:09
[2026-06-12 21:02:09,564.564 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 21:02:09,569.569 INFO    ] Checking for existing commands in stream...
[2026-06-12 21:02:09,640.640 INFO    ] No existing commands found in stream
[2026-06-12 21:02:14,649.649 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 21:02:14,652.652 INFO    ] Waiting 1.25 seconds before fallback handling...
[2026-06-12 21:02:16,360.360 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 21:02:16,361.361 INFO    ] Checking for system updates...
[2026-06-12 21:02:16,382.382 INFO    ] 200
[2026-06-12 21:02:16,383.383 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:02:16,413.413 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 21:02:16,414.414 INFO    ] No update needed
[2026-06-12 21:02:16,416.416 INFO    ] Checking for camera pi updates...
[2026-06-12 21:02:16,435.435 INFO    ] 200
[2026-06-12 21:02:16,436.436 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:02:16,459.459 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 21:02:16,596.596 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 21:02:16,597.597 INFO    ] No camera update needed
[2026-06-12 21:02:16,599.599 INFO    ] Script finished. Safe exiting...
[2026-06-12 21:02:16,600.600 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 21:02:16,603.603 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 21:02:16,606.606 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 21:02:18,643.643 INFO    ] ================================================
[2026-06-12 21:02:18,659.659 INFO    ] Launching Daemon at Fri Jun 12 21:02:18 IST 2026
[2026-06-12 21:02:18,670.670 INFO    ] ================================================
[2026-06-12 21:02:19,017.017 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 21:02:19
[2026-06-12 21:02:19,328.328 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 21:02:19,482.482 INFO    ] Initializing speech engine...
[2026-06-12 21:02:19,487.487 INFO    ] 2026-06-12 21:02:19
[2026-06-12 21:02:19,697.697 INFO    ] 2026-06-12 21:02:19
[2026-06-12 21:02:19,726.726 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 21:02:19,913.913 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 21:02:19,923.923 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 21:02:20,070.070 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 21:02:20,123.123 INFO    ] time= 12/06/2026 21:02:20
[2026-06-12 21:02:20,146.146 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 21:02:20,153.153 INFO    ] Checking for existing commands in stream...
[2026-06-12 21:02:20,220.220 INFO    ] No existing commands found in stream
[2026-06-12 21:02:25,240.240 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 21:02:25,243.243 INFO    ] Waiting 3.80 seconds before fallback handling...
[2026-06-12 21:02:29,415.415 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 21:02:29,417.417 INFO    ] Checking for system updates...
[2026-06-12 21:02:29,439.439 INFO    ] 200
[2026-06-12 21:02:29,441.441 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:02:29,471.471 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 21:02:29,472.472 INFO    ] No update needed
[2026-06-12 21:02:29,473.473 INFO    ] Checking for camera pi updates...
[2026-06-12 21:02:29,495.495 INFO    ] 200
[2026-06-12 21:02:29,496.496 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:02:29,523.523 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 21:02:29,581.581 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 21:02:29,582.582 INFO    ] No camera update needed
[2026-06-12 21:02:29,583.583 INFO    ] Script finished. Safe exiting...
[2026-06-12 21:02:29,585.585 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 21:02:29,587.587 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 21:02:29,590.590 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 21:02:31,628.628 INFO    ] ================================================
[2026-06-12 21:02:31,643.643 INFO    ] Launching Daemon at Fri Jun 12 21:02:31 IST 2026
[2026-06-12 21:02:31,654.654 INFO    ] ================================================
[2026-06-12 21:02:32,013.013 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 21:02:32
[2026-06-12 21:02:32,391.391 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 21:02:32,562.562 INFO    ] Initializing speech engine...
[2026-06-12 21:02:32,568.568 INFO    ] 2026-06-12 21:02:32
[2026-06-12 21:02:32,792.792 INFO    ] 2026-06-12 21:02:32
[2026-06-12 21:02:32,821.821 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 21:02:32,950.950 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 21:02:33,013.013 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 21:02:33,156.156 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 21:02:33,218.218 INFO    ] time= 12/06/2026 21:02:33
[2026-06-12 21:02:33,242.242 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 21:02:33,248.248 INFO    ] Checking for existing commands in stream...
[2026-06-12 21:02:33,315.315 INFO    ] No existing commands found in stream
[2026-06-12 21:02:38,324.324 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 21:02:38,327.327 INFO    ] Waiting 1.89 seconds before fallback handling...
[2026-06-12 21:02:40,607.607 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 21:02:40,609.609 INFO    ] Checking for system updates...
[2026-06-12 21:02:40,632.632 INFO    ] 200
[2026-06-12 21:02:40,634.634 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:02:40,668.668 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 21:02:40,670.670 INFO    ] No update needed
[2026-06-12 21:02:40,671.671 INFO    ] Checking for camera pi updates...
[2026-06-12 21:02:40,691.691 INFO    ] 200
[2026-06-12 21:02:40,692.692 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:02:40,716.716 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 21:02:40,758.758 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 21:02:40,759.759 INFO    ] No camera update needed
[2026-06-12 21:02:40,761.761 INFO    ] Script finished. Safe exiting...
[2026-06-12 21:02:40,762.762 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 21:02:40,765.765 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 21:02:40,768.768 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 21:02:42,809.809 INFO    ] ================================================
[2026-06-12 21:02:42,824.824 INFO    ] Launching Daemon at Fri Jun 12 21:02:42 IST 2026
[2026-06-12 21:02:42,835.835 INFO    ] ================================================
[2026-06-12 21:02:43,171.171 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 21:02:43
[2026-06-12 21:02:43,484.484 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 21:02:43,617.617 INFO    ] Initializing speech engine...
[2026-06-12 21:02:43,622.622 INFO    ] 2026-06-12 21:02:43
[2026-06-12 21:02:43,827.827 INFO    ] 2026-06-12 21:02:43
[2026-06-12 21:02:43,862.862 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 21:02:44,022.022 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 21:02:44,085.085 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 21:02:44,240.240 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 21:02:44,293.293 INFO    ] time= 12/06/2026 21:02:44
[2026-06-12 21:02:44,323.323 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 21:02:44,346.346 INFO    ] Checking for existing commands in stream...
[2026-06-12 21:02:44,425.425 INFO    ] No existing commands found in stream
[2026-06-12 21:02:49,455.455 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 21:02:49,457.457 INFO    ] Waiting 0.05 seconds before fallback handling...
[2026-06-12 21:02:49,863.863 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 21:02:49,864.864 INFO    ] Checking for system updates...
[2026-06-12 21:02:49,887.887 INFO    ] 200
[2026-06-12 21:02:49,888.888 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:02:49,921.921 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 21:02:49,922.922 INFO    ] No update needed
[2026-06-12 21:02:49,924.924 INFO    ] Checking for camera pi updates...
[2026-06-12 21:02:49,945.945 INFO    ] 200
[2026-06-12 21:02:49,946.946 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:02:49,972.972 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 21:02:50,012.012 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 21:02:50,014.014 INFO    ] No camera update needed
[2026-06-12 21:02:50,015.015 INFO    ] Script finished. Safe exiting...
[2026-06-12 21:02:50,016.016 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 21:02:50,020.020 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 21:02:50,023.023 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 21:02:52,063.063 INFO    ] ================================================
[2026-06-12 21:02:52,078.078 INFO    ] Launching Daemon at Fri Jun 12 21:02:52 IST 2026
[2026-06-12 21:02:52,089.089 INFO    ] ================================================
[2026-06-12 21:02:52,465.465 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 21:02:52
[2026-06-12 21:02:52,809.809 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 21:02:52,962.962 INFO    ] Initializing speech engine...
[2026-06-12 21:02:52,967.967 INFO    ] 2026-06-12 21:02:52
[2026-06-12 21:02:53,176.176 INFO    ] 2026-06-12 21:02:53
[2026-06-12 21:02:53,205.205 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 21:02:53,390.390 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 21:02:53,399.399 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 21:02:53,528.528 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 21:02:53,594.594 INFO    ] time= 12/06/2026 21:02:53
[2026-06-12 21:02:53,622.622 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 21:02:53,629.629 INFO    ] Checking for existing commands in stream...
[2026-06-12 21:02:53,696.696 INFO    ] No existing commands found in stream
[2026-06-12 21:02:58,715.715 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 21:02:58,718.718 INFO    ] Waiting 2.59 seconds before fallback handling...
[2026-06-12 21:03:01,685.685 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 21:03:01,688.688 INFO    ] Checking for system updates...
[2026-06-12 21:03:01,713.713 INFO    ] 200
[2026-06-12 21:03:01,715.715 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:03:01,753.753 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 21:03:01,755.755 INFO    ] No update needed
[2026-06-12 21:03:01,757.757 INFO    ] Checking for camera pi updates...
[2026-06-12 21:03:01,784.784 INFO    ] 200
[2026-06-12 21:03:01,786.786 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:03:01,818.818 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 21:03:01,854.854 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 21:03:01,857.857 INFO    ] No camera update needed
[2026-06-12 21:03:01,860.860 INFO    ] Script finished. Safe exiting...
[2026-06-12 21:03:01,862.862 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 21:03:01,868.868 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 21:03:01,874.874 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 21:03:03,915.915 INFO    ] ================================================
[2026-06-12 21:03:03,931.931 INFO    ] Launching Daemon at Fri Jun 12 21:03:03 IST 2026
[2026-06-12 21:03:03,941.941 INFO    ] ================================================
[2026-06-12 21:03:04,275.275 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 21:03:04
[2026-06-12 21:03:04,588.588 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 21:03:04,726.726 INFO    ] Initializing speech engine...
[2026-06-12 21:03:04,736.736 INFO    ] 2026-06-12 21:03:04
[2026-06-12 21:03:04,939.939 INFO    ] 2026-06-12 21:03:04
[2026-06-12 21:03:04,969.969 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 21:03:05,155.155 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 21:03:05,164.164 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 21:03:05,271.271 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 21:03:05,272.272 INFO    ] time= 12/06/2026 21:03:05
[2026-06-12 21:03:05,274.274 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 21:03:05,275.275 INFO    ] Checking for existing commands in stream...
[2026-06-12 21:03:05,389.389 INFO    ] No existing commands found in stream
[2026-06-12 21:03:10,402.402 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 21:03:10,405.405 INFO    ] Waiting 3.13 seconds before fallback handling...
[2026-06-12 21:03:13,922.922 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 21:03:13,924.924 INFO    ] Checking for system updates...
[2026-06-12 21:03:13,946.946 INFO    ] 200
[2026-06-12 21:03:13,947.947 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:03:13,977.977 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 21:03:13,978.978 INFO    ] No update needed
[2026-06-12 21:03:13,979.979 INFO    ] Checking for camera pi updates...
[2026-06-12 21:03:13,999.999 INFO    ] 200
[2026-06-12 21:03:14,000.000 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:03:14,023.023 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 21:03:14,074.074 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 21:03:14,076.076 INFO    ] No camera update needed
[2026-06-12 21:03:14,077.077 INFO    ] Script finished. Safe exiting...
[2026-06-12 21:03:14,078.078 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 21:03:14,082.082 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 21:03:14,085.085 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 21:03:16,123.123 INFO    ] ================================================
[2026-06-12 21:03:16,138.138 INFO    ] Launching Daemon at Fri Jun 12 21:03:16 IST 2026
[2026-06-12 21:03:16,149.149 INFO    ] ================================================
[2026-06-12 21:03:16,518.518 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 21:03:16
[2026-06-12 21:03:16,828.828 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 21:03:16,959.959 INFO    ] Initializing speech engine...
[2026-06-12 21:03:16,963.963 INFO    ] 2026-06-12 21:03:16
[2026-06-12 21:03:17,180.180 INFO    ] 2026-06-12 21:03:17
[2026-06-12 21:03:17,210.210 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 21:03:17,395.395 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 21:03:17,398.398 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 21:03:17,529.529 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 21:03:17,595.595 INFO    ] time= 12/06/2026 21:03:17
[2026-06-12 21:03:17,628.628 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 21:03:17,634.634 INFO    ] Checking for existing commands in stream...
[2026-06-12 21:03:17,702.702 INFO    ] No existing commands found in stream
[2026-06-12 21:03:22,711.711 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 21:03:22,714.714 INFO    ] Waiting 0.85 seconds before fallback handling...
[2026-06-12 21:03:23,953.953 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 21:03:23,955.955 INFO    ] Checking for system updates...
[2026-06-12 21:03:23,976.976 INFO    ] 200
[2026-06-12 21:03:23,977.977 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:03:24,009.009 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 21:03:24,010.010 INFO    ] No update needed
[2026-06-12 21:03:24,012.012 INFO    ] Checking for camera pi updates...
[2026-06-12 21:03:24,031.031 INFO    ] 200
[2026-06-12 21:03:24,032.032 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:03:24,055.055 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 21:03:24,095.095 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 21:03:24,096.096 INFO    ] No camera update needed
[2026-06-12 21:03:24,098.098 INFO    ] Script finished. Safe exiting...
[2026-06-12 21:03:24,099.099 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 21:03:24,102.102 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 21:03:24,105.105 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 21:03:26,142.142 INFO    ] ================================================
[2026-06-12 21:03:26,157.157 INFO    ] Launching Daemon at Fri Jun 12 21:03:26 IST 2026
[2026-06-12 21:03:26,168.168 INFO    ] ================================================
[2026-06-12 21:03:26,555.555 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 21:03:26
[2026-06-12 21:03:26,902.902 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 21:03:27,057.057 INFO    ] Initializing speech engine...
[2026-06-12 21:03:27,063.063 INFO    ] 2026-06-12 21:03:27
[2026-06-12 21:03:27,278.278 INFO    ] 2026-06-12 21:03:27
[2026-06-12 21:03:27,307.307 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 21:03:27,494.494 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 21:03:27,504.504 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 21:03:27,630.630 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 21:03:27,701.701 INFO    ] time= 12/06/2026 21:03:27
[2026-06-12 21:03:27,731.731 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 21:03:27,737.737 INFO    ] Checking for existing commands in stream...
[2026-06-12 21:03:27,806.806 INFO    ] No existing commands found in stream
[2026-06-12 21:03:32,821.821 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 21:03:32,824.824 INFO    ] Waiting 0.51 seconds before fallback handling...
[2026-06-12 21:03:33,736.736 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 21:03:33,737.737 INFO    ] Checking for system updates...
[2026-06-12 21:03:33,759.759 INFO    ] 200
[2026-06-12 21:03:33,761.761 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:03:33,791.791 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 21:03:33,792.792 INFO    ] No update needed
[2026-06-12 21:03:33,793.793 INFO    ] Checking for camera pi updates...
[2026-06-12 21:03:33,812.812 INFO    ] 200
[2026-06-12 21:03:33,814.814 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:03:33,839.839 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 21:03:33,865.865 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 21:03:33,866.866 INFO    ] No camera update needed
[2026-06-12 21:03:33,867.867 INFO    ] Script finished. Safe exiting...
[2026-06-12 21:03:33,869.869 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 21:03:33,872.872 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 21:03:33,875.875 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 21:03:35,912.912 INFO    ] ================================================
[2026-06-12 21:03:35,927.927 INFO    ] Launching Daemon at Fri Jun 12 21:03:35 IST 2026
[2026-06-12 21:03:35,938.938 INFO    ] ================================================
[2026-06-12 21:03:36,301.301 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 21:03:36
[2026-06-12 21:03:36,613.613 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 21:03:36,742.742 INFO    ] Initializing speech engine...
[2026-06-12 21:03:36,751.751 INFO    ] 2026-06-12 21:03:36
[2026-06-12 21:03:36,977.977 INFO    ] 2026-06-12 21:03:36
[2026-06-12 21:03:37,025.025 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 21:03:37,206.206 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 21:03:37,215.215 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 21:03:37,342.342 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 21:03:37,391.391 INFO    ] time= 12/06/2026 21:03:37
[2026-06-12 21:03:37,431.431 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 21:03:37,454.454 INFO    ] Checking for existing commands in stream...
[2026-06-12 21:03:37,573.573 INFO    ] No existing commands found in stream
[2026-06-12 21:03:42,591.591 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 21:03:42,593.593 INFO    ] Waiting 3.83 seconds before fallback handling...
[2026-06-12 21:03:46,792.792 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 21:03:46,793.793 INFO    ] Checking for system updates...
[2026-06-12 21:03:46,813.813 INFO    ] 200
[2026-06-12 21:03:46,815.815 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:03:46,844.844 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 21:03:46,846.846 INFO    ] No update needed
[2026-06-12 21:03:46,847.847 INFO    ] Checking for camera pi updates...
[2026-06-12 21:03:46,870.870 INFO    ] 200
[2026-06-12 21:03:46,871.871 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:03:46,894.894 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 21:03:46,948.948 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 21:03:46,949.949 INFO    ] No camera update needed
[2026-06-12 21:03:46,951.951 INFO    ] Script finished. Safe exiting...
[2026-06-12 21:03:46,952.952 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 21:03:46,955.955 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 21:03:46,957.957 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 21:03:49,996.996 INFO    ] ================================================
[2026-06-12 21:03:49,011.011 INFO    ] Launching Daemon at Fri Jun 12 21:03:49 IST 2026
[2026-06-12 21:03:49,022.022 INFO    ] ================================================
[2026-06-12 21:03:49,415.415 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 21:03:49
[2026-06-12 21:03:49,762.762 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 21:03:49,914.914 INFO    ] Initializing speech engine...
[2026-06-12 21:03:49,919.919 INFO    ] 2026-06-12 21:03:49
[2026-06-12 21:03:50,132.132 INFO    ] 2026-06-12 21:03:50
[2026-06-12 21:03:50,161.161 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 21:03:50,346.346 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 21:03:50,357.357 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 21:03:50,490.490 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 21:03:50,551.551 INFO    ] time= 12/06/2026 21:03:50
[2026-06-12 21:03:50,575.575 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 21:03:50,582.582 INFO    ] Checking for existing commands in stream...
[2026-06-12 21:03:50,649.649 INFO    ] No existing commands found in stream
[2026-06-12 21:03:55,674.674 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 21:03:55,677.677 INFO    ] Waiting 0.81 seconds before fallback handling...
[2026-06-12 21:03:56,882.882 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 21:03:56,884.884 INFO    ] Checking for system updates...
[2026-06-12 21:03:56,904.904 INFO    ] 200
[2026-06-12 21:03:56,906.906 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:03:56,936.936 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 21:03:56,937.937 INFO    ] No update needed
[2026-06-12 21:03:56,939.939 INFO    ] Checking for camera pi updates...
[2026-06-12 21:03:56,960.960 INFO    ] 200
[2026-06-12 21:03:56,961.961 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:03:56,987.987 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 21:03:57,031.031 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 21:03:57,032.032 INFO    ] No camera update needed
[2026-06-12 21:03:57,034.034 INFO    ] Script finished. Safe exiting...
[2026-06-12 21:03:57,035.035 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 21:03:57,038.038 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 21:03:57,042.042 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 21:03:59,079.079 INFO    ] ================================================
[2026-06-12 21:03:59,095.095 INFO    ] Launching Daemon at Fri Jun 12 21:03:59 IST 2026
[2026-06-12 21:03:59,106.106 INFO    ] ================================================
[2026-06-12 21:03:59,474.474 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 21:03:59
[2026-06-12 21:03:59,785.785 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 21:03:59,915.915 INFO    ] Initializing speech engine...
[2026-06-12 21:03:59,920.920 INFO    ] 2026-06-12 21:03:59
[2026-06-12 21:04:00,138.138 INFO    ] 2026-06-12 21:04:00
[2026-06-12 21:04:00,168.168 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 21:04:00,354.354 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 21:04:00,358.358 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 21:04:00,496.496 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 21:04:00,560.560 INFO    ] time= 12/06/2026 21:04:00
[2026-06-12 21:04:00,589.589 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 21:04:00,596.596 INFO    ] Checking for existing commands in stream...
[2026-06-12 21:04:00,663.663 INFO    ] No existing commands found in stream
[2026-06-12 21:04:05,672.672 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 21:04:05,674.674 INFO    ] Waiting 3.85 seconds before fallback handling...
[2026-06-12 21:04:09,882.882 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 21:04:09,883.883 INFO    ] Checking for system updates...
[2026-06-12 21:04:09,904.904 INFO    ] 200
[2026-06-12 21:04:09,905.905 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:04:09,935.935 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 21:04:09,936.936 INFO    ] No update needed
[2026-06-12 21:04:09,938.938 INFO    ] Checking for camera pi updates...
[2026-06-12 21:04:09,957.957 INFO    ] 200
[2026-06-12 21:04:09,959.959 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:04:09,984.984 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 21:04:10,033.033 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 21:04:10,034.034 INFO    ] No camera update needed
[2026-06-12 21:04:10,035.035 INFO    ] Script finished. Safe exiting...
[2026-06-12 21:04:10,036.036 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 21:04:10,039.039 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 21:04:10,042.042 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 21:04:12,079.079 INFO    ] ================================================
[2026-06-12 21:04:12,095.095 INFO    ] Launching Daemon at Fri Jun 12 21:04:12 IST 2026
[2026-06-12 21:04:12,105.105 INFO    ] ================================================
[2026-06-12 21:04:12,481.481 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 21:04:12
[2026-06-12 21:04:12,825.825 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 21:04:12,972.972 INFO    ] Initializing speech engine...
[2026-06-12 21:04:12,977.977 INFO    ] 2026-06-12 21:04:12
[2026-06-12 21:04:13,181.181 INFO    ] 2026-06-12 21:04:13
[2026-06-12 21:04:13,208.208 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 21:04:13,392.392 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 21:04:13,400.400 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 21:04:13,540.540 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 21:04:13,597.597 INFO    ] time= 12/06/2026 21:04:13
[2026-06-12 21:04:13,620.620 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 21:04:13,626.626 INFO    ] Checking for existing commands in stream...
[2026-06-12 21:04:13,693.693 INFO    ] No existing commands found in stream
[2026-06-12 21:04:18,707.707 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 21:04:18,710.710 INFO    ] Waiting 2.10 seconds before fallback handling...
[2026-06-12 21:04:21,200.200 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 21:04:21,202.202 INFO    ] Checking for system updates...
[2026-06-12 21:04:21,222.222 INFO    ] 200
[2026-06-12 21:04:21,224.224 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:04:21,259.259 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 21:04:21,260.260 INFO    ] No update needed
[2026-06-12 21:04:21,261.261 INFO    ] Checking for camera pi updates...
[2026-06-12 21:04:21,282.282 INFO    ] 200
[2026-06-12 21:04:21,283.283 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:04:21,306.306 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 21:04:21,352.352 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 21:04:21,354.354 INFO    ] No camera update needed
[2026-06-12 21:04:21,355.355 INFO    ] Script finished. Safe exiting...
[2026-06-12 21:04:21,356.356 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 21:04:21,359.359 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 21:04:21,362.362 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 21:04:23,388.388 INFO    ] ================================================
[2026-06-12 21:04:23,396.396 INFO    ] Launching Daemon at Fri Jun 12 21:04:23 IST 2026
[2026-06-12 21:04:23,402.402 INFO    ] ================================================
[2026-06-12 21:04:23,752.752 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 21:04:23
[2026-06-12 21:04:24,064.064 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 21:04:24,206.206 INFO    ] Initializing speech engine...
[2026-06-12 21:04:24,210.210 INFO    ] 2026-06-12 21:04:24
[2026-06-12 21:04:24,412.412 INFO    ] 2026-06-12 21:04:24
[2026-06-12 21:04:24,442.442 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 21:04:24,626.626 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 21:04:24,634.634 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 21:04:24,763.763 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 21:04:24,822.822 INFO    ] time= 12/06/2026 21:04:24
[2026-06-12 21:04:24,854.854 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 21:04:24,860.860 INFO    ] Checking for existing commands in stream...
[2026-06-12 21:04:24,927.927 INFO    ] No existing commands found in stream
[2026-06-12 21:04:29,941.941 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 21:04:29,944.944 INFO    ] Waiting 2.26 seconds before fallback handling...
[2026-06-12 21:04:32,528.528 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 21:04:32,530.530 INFO    ] Checking for system updates...
[2026-06-12 21:04:32,551.551 INFO    ] 200
[2026-06-12 21:04:32,552.552 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:04:32,582.582 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 21:04:32,583.583 INFO    ] No update needed
[2026-06-12 21:04:32,585.585 INFO    ] Checking for camera pi updates...
[2026-06-12 21:04:32,604.604 INFO    ] 200
[2026-06-12 21:04:32,606.606 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:04:32,631.631 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 21:04:32,664.664 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 21:04:32,665.665 INFO    ] No camera update needed
[2026-06-12 21:04:32,667.667 INFO    ] Script finished. Safe exiting...
[2026-06-12 21:04:32,668.668 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 21:04:32,671.671 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 21:04:32,674.674 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 21:04:34,711.711 INFO    ] ================================================
[2026-06-12 21:04:34,726.726 INFO    ] Launching Daemon at Fri Jun 12 21:04:34 IST 2026
[2026-06-12 21:04:34,737.737 INFO    ] ================================================
[2026-06-12 21:04:35,089.089 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 21:04:35
[2026-06-12 21:04:35,406.406 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 21:04:35,550.550 INFO    ] Initializing speech engine...
[2026-06-12 21:04:35,555.555 INFO    ] 2026-06-12 21:04:35
[2026-06-12 21:04:35,760.760 INFO    ] 2026-06-12 21:04:35
[2026-06-12 21:04:35,788.788 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 21:04:35,972.972 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 21:04:35,982.982 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 21:04:36,118.118 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 21:04:36,175.175 INFO    ] time= 12/06/2026 21:04:36
[2026-06-12 21:04:36,199.199 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 21:04:36,205.205 INFO    ] Checking for existing commands in stream...
[2026-06-12 21:04:36,271.271 INFO    ] No existing commands found in stream
[2026-06-12 21:04:41,296.296 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 21:04:41,298.298 INFO    ] Waiting 2.35 seconds before fallback handling...
[2026-06-12 21:04:44,053.053 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 21:04:44,055.055 INFO    ] Checking for system updates...
[2026-06-12 21:04:44,078.078 INFO    ] 200
[2026-06-12 21:04:44,080.080 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:04:44,119.119 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 21:04:44,121.121 INFO    ] No update needed
[2026-06-12 21:04:44,122.122 INFO    ] Checking for camera pi updates...
[2026-06-12 21:04:44,144.144 INFO    ] 200
[2026-06-12 21:04:44,146.146 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:04:44,171.171 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 21:04:44,223.223 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 21:04:44,225.225 INFO    ] No camera update needed
[2026-06-12 21:04:44,226.226 INFO    ] Script finished. Safe exiting...
[2026-06-12 21:04:44,228.228 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 21:04:44,231.231 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 21:04:44,234.234 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 21:04:46,272.272 INFO    ] ================================================
[2026-06-12 21:04:46,287.287 INFO    ] Launching Daemon at Fri Jun 12 21:04:46 IST 2026
[2026-06-12 21:04:46,298.298 INFO    ] ================================================
[2026-06-12 21:04:46,674.674 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 21:04:46
[2026-06-12 21:04:47,019.019 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 21:04:47,172.172 INFO    ] Initializing speech engine...
[2026-06-12 21:04:47,176.176 INFO    ] 2026-06-12 21:04:47
[2026-06-12 21:04:47,386.386 INFO    ] 2026-06-12 21:04:47
[2026-06-12 21:04:47,415.415 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 21:04:47,600.600 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 21:04:47,609.609 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 21:04:47,769.769 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 21:04:47,824.824 INFO    ] time= 12/06/2026 21:04:47
[2026-06-12 21:04:47,829.829 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 21:04:47,836.836 INFO    ] Checking for existing commands in stream...
[2026-06-12 21:04:47,903.903 INFO    ] No existing commands found in stream
[2026-06-12 21:04:52,932.932 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 21:04:52,936.936 INFO    ] Waiting 0.61 seconds before fallback handling...
[2026-06-12 21:04:53,954.954 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 21:04:53,956.956 INFO    ] Checking for system updates...
[2026-06-12 21:04:53,977.977 INFO    ] 200
[2026-06-12 21:04:53,978.978 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:04:54,010.010 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 21:04:54,011.011 INFO    ] No update needed
[2026-06-12 21:04:54,012.012 INFO    ] Checking for camera pi updates...
[2026-06-12 21:04:54,033.033 INFO    ] 200
[2026-06-12 21:04:54,035.035 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:04:54,060.060 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 21:04:54,099.099 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 21:04:54,100.100 INFO    ] No camera update needed
[2026-06-12 21:04:54,102.102 INFO    ] Script finished. Safe exiting...
[2026-06-12 21:04:54,103.103 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 21:04:54,106.106 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 21:04:54,108.108 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 21:04:56,149.149 INFO    ] ================================================
[2026-06-12 21:04:56,165.165 INFO    ] Launching Daemon at Fri Jun 12 21:04:56 IST 2026
[2026-06-12 21:04:56,176.176 INFO    ] ================================================
[2026-06-12 21:04:56,543.543 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 21:04:56
[2026-06-12 21:04:56,861.861 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 21:04:57,004.004 INFO    ] Initializing speech engine...
[2026-06-12 21:04:57,009.009 INFO    ] 2026-06-12 21:04:57
[2026-06-12 21:04:57,212.212 INFO    ] 2026-06-12 21:04:57
[2026-06-12 21:04:57,241.241 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 21:04:57,426.426 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 21:04:57,436.436 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 21:04:57,564.564 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 21:04:57,628.628 INFO    ] time= 12/06/2026 21:04:57
[2026-06-12 21:04:57,655.655 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 21:04:57,661.661 INFO    ] Checking for existing commands in stream...
[2026-06-12 21:04:57,726.726 INFO    ] No existing commands found in stream
[2026-06-12 21:05:02,736.736 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 21:05:02,738.738 INFO    ] Waiting 2.27 seconds before fallback handling...
[2026-06-12 21:05:05,394.394 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 21:05:05,395.395 INFO    ] Checking for system updates...
[2026-06-12 21:05:05,417.417 INFO    ] 200
[2026-06-12 21:05:05,418.418 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:05:05,448.448 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 21:05:05,450.450 INFO    ] No update needed
[2026-06-12 21:05:05,451.451 INFO    ] Checking for camera pi updates...
[2026-06-12 21:05:05,472.472 INFO    ] 200
[2026-06-12 21:05:05,473.473 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:05:05,498.498 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 21:05:05,546.546 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 21:05:05,547.547 INFO    ] No camera update needed
[2026-06-12 21:05:05,548.548 INFO    ] Script finished. Safe exiting...
[2026-06-12 21:05:05,550.550 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 21:05:05,553.553 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 21:05:05,555.555 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 21:05:07,596.596 INFO    ] ================================================
[2026-06-12 21:05:07,611.611 INFO    ] Launching Daemon at Fri Jun 12 21:05:07 IST 2026
[2026-06-12 21:05:07,623.623 INFO    ] ================================================
[2026-06-12 21:05:07,979.979 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 21:05:07
[2026-06-12 21:05:08,296.296 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 21:05:08,439.439 INFO    ] Initializing speech engine...
[2026-06-12 21:05:08,445.445 INFO    ] 2026-06-12 21:05:08
[2026-06-12 21:05:08,648.648 INFO    ] 2026-06-12 21:05:08
[2026-06-12 21:05:08,677.677 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 21:05:08,859.859 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 21:05:08,863.863 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 21:05:09,014.014 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 21:05:09,066.066 INFO    ] time= 12/06/2026 21:05:09
[2026-06-12 21:05:09,088.088 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 21:05:09,095.095 INFO    ] Checking for existing commands in stream...
[2026-06-12 21:05:09,161.161 INFO    ] No existing commands found in stream
[2026-06-12 21:05:14,175.175 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 21:05:14,177.177 INFO    ] Waiting 1.54 seconds before fallback handling...
[2026-06-12 21:05:16,102.102 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 21:05:16,104.104 INFO    ] Checking for system updates...
[2026-06-12 21:05:16,125.125 INFO    ] 200
[2026-06-12 21:05:16,127.127 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:05:16,160.160 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 21:05:16,161.161 INFO    ] No update needed
[2026-06-12 21:05:16,162.162 INFO    ] Checking for camera pi updates...
[2026-06-12 21:05:16,181.181 INFO    ] 200
[2026-06-12 21:05:16,183.183 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:05:16,210.210 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 21:05:16,263.263 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 21:05:16,265.265 INFO    ] No camera update needed
[2026-06-12 21:05:16,266.266 INFO    ] Script finished. Safe exiting...
[2026-06-12 21:05:16,267.267 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 21:05:16,270.270 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 21:05:16,273.273 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 21:05:18,313.313 INFO    ] ================================================
[2026-06-12 21:05:18,328.328 INFO    ] Launching Daemon at Fri Jun 12 21:05:18 IST 2026
[2026-06-12 21:05:18,339.339 INFO    ] ================================================
[2026-06-12 21:05:18,742.742 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 21:05:18
[2026-06-12 21:05:19,090.090 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 21:05:19,243.243 INFO    ] Initializing speech engine...
[2026-06-12 21:05:19,250.250 INFO    ] 2026-06-12 21:05:19
[2026-06-12 21:05:19,458.458 INFO    ] 2026-06-12 21:05:19
[2026-06-12 21:05:19,487.487 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 21:05:19,671.671 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 21:05:19,674.674 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 21:05:19,803.803 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 21:05:19,864.864 INFO    ] time= 12/06/2026 21:05:19
[2026-06-12 21:05:19,902.902 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 21:05:19,904.904 INFO    ] Checking for existing commands in stream...
[2026-06-12 21:05:19,999.999 INFO    ] No existing commands found in stream
[2026-06-12 21:05:25,011.011 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 21:05:25,015.015 INFO    ] Waiting 3.33 seconds before fallback handling...
[2026-06-12 21:05:28,750.750 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 21:05:28,752.752 INFO    ] Checking for system updates...
[2026-06-12 21:05:28,774.774 INFO    ] 200
[2026-06-12 21:05:28,775.775 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:05:28,806.806 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 21:05:28,807.807 INFO    ] No update needed
[2026-06-12 21:05:28,809.809 INFO    ] Checking for camera pi updates...
[2026-06-12 21:05:28,830.830 INFO    ] 200
[2026-06-12 21:05:28,831.831 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:05:28,857.857 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 21:05:28,910.910 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 21:05:28,911.911 INFO    ] No camera update needed
[2026-06-12 21:05:28,913.913 INFO    ] Script finished. Safe exiting...
[2026-06-12 21:05:28,914.914 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 21:05:28,918.918 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 21:05:28,921.921 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 21:05:30,961.961 INFO    ] ================================================
[2026-06-12 21:05:30,977.977 INFO    ] Launching Daemon at Fri Jun 12 21:05:30 IST 2026
[2026-06-12 21:05:30,988.988 INFO    ] ================================================
[2026-06-12 21:05:31,377.377 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 21:05:31
[2026-06-12 21:05:31,728.728 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 21:05:31,893.893 INFO    ] Initializing speech engine...
[2026-06-12 21:05:31,899.899 INFO    ] 2026-06-12 21:05:31
[2026-06-12 21:05:32,123.123 INFO    ] 2026-06-12 21:05:32
[2026-06-12 21:05:32,153.153 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 21:05:32,288.288 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 21:05:32,346.346 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 21:05:32,491.491 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 21:05:32,554.554 INFO    ] time= 12/06/2026 21:05:32
[2026-06-12 21:05:32,586.586 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 21:05:32,592.592 INFO    ] Checking for existing commands in stream...
[2026-06-12 21:05:32,659.659 INFO    ] No existing commands found in stream
[2026-06-12 21:05:37,668.668 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 21:05:37,671.671 INFO    ] Waiting 1.85 seconds before fallback handling...
[2026-06-12 21:05:39,892.892 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 21:05:39,894.894 INFO    ] Checking for system updates...
[2026-06-12 21:05:39,914.914 INFO    ] 200
[2026-06-12 21:05:39,916.916 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:05:39,948.948 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 21:05:39,950.950 INFO    ] No update needed
[2026-06-12 21:05:39,951.951 INFO    ] Checking for camera pi updates...
[2026-06-12 21:05:39,970.970 INFO    ] 200
[2026-06-12 21:05:39,972.972 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:05:39,996.996 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 21:05:40,045.045 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 21:05:40,047.047 INFO    ] No camera update needed
[2026-06-12 21:05:40,048.048 INFO    ] Script finished. Safe exiting...
[2026-06-12 21:05:40,049.049 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 21:05:40,053.053 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 21:05:40,055.055 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 21:05:42,095.095 INFO    ] ================================================
[2026-06-12 21:05:42,111.111 INFO    ] Launching Daemon at Fri Jun 12 21:05:42 IST 2026
[2026-06-12 21:05:42,122.122 INFO    ] ================================================
[2026-06-12 21:05:42,481.481 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 21:05:42
[2026-06-12 21:05:42,800.800 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 21:05:42,934.934 INFO    ] Initializing speech engine...
[2026-06-12 21:05:42,939.939 INFO    ] 2026-06-12 21:05:42
[2026-06-12 21:05:43,132.132 INFO    ] 2026-06-12 21:05:43
[2026-06-12 21:05:43,177.177 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 21:05:43,337.337 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 21:05:43,381.381 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 21:05:43,550.550 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 21:05:43,602.602 INFO    ] time= 12/06/2026 21:05:43
[2026-06-12 21:05:43,642.642 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 21:05:43,660.660 INFO    ] Checking for existing commands in stream...
[2026-06-12 21:05:43,739.739 INFO    ] No existing commands found in stream
[2026-06-12 21:05:48,768.768 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 21:05:48,771.771 INFO    ] Waiting 3.87 seconds before fallback handling...
[2026-06-12 21:05:53,040.040 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 21:05:53,042.042 INFO    ] Checking for system updates...
[2026-06-12 21:05:53,062.062 INFO    ] 200
[2026-06-12 21:05:53,064.064 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:05:53,097.097 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 21:05:53,099.099 INFO    ] No update needed
[2026-06-12 21:05:53,100.100 INFO    ] Checking for camera pi updates...
[2026-06-12 21:05:53,122.122 INFO    ] 200
[2026-06-12 21:05:53,123.123 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:05:53,148.148 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 21:05:53,194.194 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 21:05:53,196.196 INFO    ] No camera update needed
[2026-06-12 21:05:53,197.197 INFO    ] Script finished. Safe exiting...
[2026-06-12 21:05:53,198.198 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 21:05:53,202.202 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 21:05:53,205.205 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 21:05:55,244.244 INFO    ] ================================================
[2026-06-12 21:05:55,260.260 INFO    ] Launching Daemon at Fri Jun 12 21:05:55 IST 2026
[2026-06-12 21:05:55,271.271 INFO    ] ================================================
[2026-06-12 21:05:55,634.634 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 21:05:55
[2026-06-12 21:05:55,954.954 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 21:05:56,091.091 INFO    ] Initializing speech engine...
[2026-06-12 21:05:56,094.094 INFO    ] 2026-06-12 21:05:56
[2026-06-12 21:05:56,288.288 INFO    ] 2026-06-12 21:05:56
[2026-06-12 21:05:56,334.334 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 21:05:56,496.496 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 21:05:56,564.564 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 21:05:56,708.708 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 21:05:56,766.766 INFO    ] time= 12/06/2026 21:05:56
[2026-06-12 21:05:56,812.812 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 21:05:56,824.824 INFO    ] Checking for existing commands in stream...
[2026-06-12 21:05:56,896.896 INFO    ] No existing commands found in stream
[2026-06-12 21:06:01,901.901 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 21:06:01,904.904 INFO    ] Waiting 1.40 seconds before fallback handling...
[2026-06-12 21:06:03,669.669 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 21:06:03,670.670 INFO    ] Checking for system updates...
[2026-06-12 21:06:03,691.691 INFO    ] 200
[2026-06-12 21:06:03,692.692 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:06:03,722.722 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 21:06:03,724.724 INFO    ] No update needed
[2026-06-12 21:06:03,725.725 INFO    ] Checking for camera pi updates...
[2026-06-12 21:06:03,744.744 INFO    ] 200
[2026-06-12 21:06:03,746.746 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:06:03,768.768 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 21:06:03,813.813 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 21:06:03,814.814 INFO    ] No camera update needed
[2026-06-12 21:06:03,815.815 INFO    ] Script finished. Safe exiting...
[2026-06-12 21:06:03,816.816 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 21:06:03,819.819 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 21:06:03,822.822 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 21:06:05,862.862 INFO    ] ================================================
[2026-06-12 21:06:05,878.878 INFO    ] Launching Daemon at Fri Jun 12 21:06:05 IST 2026
[2026-06-12 21:06:05,889.889 INFO    ] ================================================
[2026-06-12 21:06:06,249.249 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 21:06:06
[2026-06-12 21:06:06,592.592 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 21:06:06,748.748 INFO    ] Initializing speech engine...
[2026-06-12 21:06:06,753.753 INFO    ] 2026-06-12 21:06:06
[2026-06-12 21:06:06,965.965 INFO    ] 2026-06-12 21:06:06
[2026-06-12 21:06:06,994.994 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 21:06:07,177.177 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 21:06:07,188.188 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 21:06:07,326.326 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 21:06:07,385.385 INFO    ] time= 12/06/2026 21:06:07
[2026-06-12 21:06:07,408.408 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 21:06:07,414.414 INFO    ] Checking for existing commands in stream...
[2026-06-12 21:06:07,481.481 INFO    ] No existing commands found in stream
[2026-06-12 21:06:12,491.491 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 21:06:12,494.494 INFO    ] Waiting 2.01 seconds before fallback handling...
[2026-06-12 21:06:14,891.891 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 21:06:14,893.893 INFO    ] Checking for system updates...
[2026-06-12 21:06:14,915.915 INFO    ] 200
[2026-06-12 21:06:14,917.917 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:06:14,949.949 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 21:06:14,951.951 INFO    ] No update needed
[2026-06-12 21:06:14,952.952 INFO    ] Checking for camera pi updates...
[2026-06-12 21:06:14,973.973 INFO    ] 200
[2026-06-12 21:06:14,975.975 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:06:15,002.002 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 21:06:15,054.054 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 21:06:15,056.056 INFO    ] No camera update needed
[2026-06-12 21:06:15,057.057 INFO    ] Script finished. Safe exiting...
[2026-06-12 21:06:15,058.058 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 21:06:15,062.062 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 21:06:15,065.065 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 21:06:17,097.097 INFO    ] ================================================
[2026-06-12 21:06:17,107.107 INFO    ] Launching Daemon at Fri Jun 12 21:06:17 IST 2026
[2026-06-12 21:06:17,114.114 INFO    ] ================================================
[2026-06-12 21:06:17,462.462 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 21:06:17
[2026-06-12 21:06:17,785.785 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 21:06:17,929.929 INFO    ] Initializing speech engine...
[2026-06-12 21:06:17,934.934 INFO    ] 2026-06-12 21:06:17
[2026-06-12 21:06:18,141.141 INFO    ] 2026-06-12 21:06:18
[2026-06-12 21:06:18,169.169 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 21:06:18,292.292 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 21:06:18,354.354 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 21:06:18,489.489 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 21:06:18,557.557 INFO    ] time= 12/06/2026 21:06:18
[2026-06-12 21:06:18,584.584 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 21:06:18,590.590 INFO    ] Checking for existing commands in stream...
[2026-06-12 21:06:18,657.657 INFO    ] No existing commands found in stream
[2026-06-12 21:06:23,666.666 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 21:06:23,669.669 INFO    ] Waiting 0.76 seconds before fallback handling...
[2026-06-12 21:06:24,704.704 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 21:06:24,706.706 INFO    ] Checking for system updates...
[2026-06-12 21:06:24,726.726 INFO    ] 200
[2026-06-12 21:06:24,727.727 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:06:24,759.759 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 21:06:24,761.761 INFO    ] No update needed
[2026-06-12 21:06:24,762.762 INFO    ] Checking for camera pi updates...
[2026-06-12 21:06:24,781.781 INFO    ] 200
[2026-06-12 21:06:24,783.783 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:06:24,807.807 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 21:06:24,851.851 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 21:06:24,853.853 INFO    ] No camera update needed
[2026-06-12 21:06:24,854.854 INFO    ] Script finished. Safe exiting...
[2026-06-12 21:06:24,855.855 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 21:06:24,858.858 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 21:06:24,861.861 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 21:06:26,893.893 INFO    ] ================================================
[2026-06-12 21:06:26,908.908 INFO    ] Launching Daemon at Fri Jun 12 21:06:26 IST 2026
[2026-06-12 21:06:26,919.919 INFO    ] ================================================
[2026-06-12 21:06:27,283.283 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 21:06:27
[2026-06-12 21:06:27,630.630 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 21:06:27,772.772 INFO    ] Initializing speech engine...
[2026-06-12 21:06:27,785.785 INFO    ] 2026-06-12 21:06:27
[2026-06-12 21:06:27,997.997 INFO    ] 2026-06-12 21:06:27
[2026-06-12 21:06:28,028.028 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 21:06:28,177.177 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 21:06:28,179.179 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 21:06:28,331.331 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 21:06:28,377.377 INFO    ] time= 12/06/2026 21:06:28
[2026-06-12 21:06:28,429.429 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 21:06:28,481.481 INFO    ] Checking for existing commands in stream...
[2026-06-12 21:06:28,561.561 INFO    ] No existing commands found in stream
[2026-06-12 21:06:33,576.576 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 21:06:33,579.579 INFO    ] Waiting 2.59 seconds before fallback handling...
[2026-06-12 21:06:36,573.573 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 21:06:36,575.575 INFO    ] Checking for system updates...
[2026-06-12 21:06:36,596.596 INFO    ] 200
[2026-06-12 21:06:36,597.597 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:06:36,628.628 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 21:06:36,630.630 INFO    ] No update needed
[2026-06-12 21:06:36,631.631 INFO    ] Checking for camera pi updates...
[2026-06-12 21:06:36,651.651 INFO    ] 200
[2026-06-12 21:06:36,653.653 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:06:36,677.677 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 21:06:36,827.827 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 21:06:36,828.828 INFO    ] No camera update needed
[2026-06-12 21:06:36,830.830 INFO    ] Script finished. Safe exiting...
[2026-06-12 21:06:36,831.831 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 21:06:36,835.835 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 21:06:36,838.838 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 21:06:38,876.876 INFO    ] ================================================
[2026-06-12 21:06:38,891.891 INFO    ] Launching Daemon at Fri Jun 12 21:06:38 IST 2026
[2026-06-12 21:06:38,902.902 INFO    ] ================================================
[2026-06-12 21:06:39,265.265 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 21:06:39
[2026-06-12 21:06:39,595.595 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 21:06:39,729.729 INFO    ] Initializing speech engine...
[2026-06-12 21:06:39,743.743 INFO    ] 2026-06-12 21:06:39
[2026-06-12 21:06:39,948.948 INFO    ] 2026-06-12 21:06:39
[2026-06-12 21:06:39,976.976 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 21:06:40,158.158 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 21:06:40,167.167 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 21:06:40,295.295 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 21:06:40,359.359 INFO    ] time= 12/06/2026 21:06:40
[2026-06-12 21:06:40,387.387 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 21:06:40,393.393 INFO    ] Checking for existing commands in stream...
[2026-06-12 21:06:40,460.460 INFO    ] No existing commands found in stream
[2026-06-12 21:06:45,469.469 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 21:06:45,472.472 INFO    ] Waiting 2.79 seconds before fallback handling...
[2026-06-12 21:06:48,651.651 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 21:06:48,653.653 INFO    ] Checking for system updates...
[2026-06-12 21:06:48,674.674 INFO    ] 200
[2026-06-12 21:06:48,676.676 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:06:48,706.706 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 21:06:48,708.708 INFO    ] No update needed
[2026-06-12 21:06:48,709.709 INFO    ] Checking for camera pi updates...
[2026-06-12 21:06:48,729.729 INFO    ] 200
[2026-06-12 21:06:48,730.730 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:06:48,753.753 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 21:06:48,807.807 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 21:06:48,809.809 INFO    ] No camera update needed
[2026-06-12 21:06:48,810.810 INFO    ] Script finished. Safe exiting...
[2026-06-12 21:06:48,812.812 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 21:06:48,815.815 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 21:06:48,818.818 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 21:06:50,858.858 INFO    ] ================================================
[2026-06-12 21:06:50,875.875 INFO    ] Launching Daemon at Fri Jun 12 21:06:50 IST 2026
[2026-06-12 21:06:50,886.886 INFO    ] ================================================
[2026-06-12 21:06:51,217.217 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 21:06:51
[2026-06-12 21:06:51,533.533 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 21:06:51,677.677 INFO    ] Initializing speech engine...
[2026-06-12 21:06:51,682.682 INFO    ] 2026-06-12 21:06:51
[2026-06-12 21:06:51,885.885 INFO    ] 2026-06-12 21:06:51
[2026-06-12 21:06:51,914.914 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 21:06:52,051.051 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 21:06:52,053.053 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 21:06:52,161.161 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 21:06:52,163.163 INFO    ] time= 12/06/2026 21:06:52
[2026-06-12 21:06:52,164.164 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 21:06:52,189.189 INFO    ] Checking for existing commands in stream...
[2026-06-12 21:06:52,325.325 INFO    ] No existing commands found in stream
[2026-06-12 21:06:57,331.331 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 21:06:57,333.333 INFO    ] Waiting 2.15 seconds before fallback handling...
[2026-06-12 21:06:59,826.826 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 21:06:59,828.828 INFO    ] Checking for system updates...
[2026-06-12 21:06:59,849.849 INFO    ] 200
[2026-06-12 21:06:59,851.851 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:06:59,881.881 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 21:06:59,882.882 INFO    ] No update needed
[2026-06-12 21:06:59,883.883 INFO    ] Checking for camera pi updates...
[2026-06-12 21:06:59,903.903 INFO    ] 200
[2026-06-12 21:06:59,904.904 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:06:59,928.928 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 21:06:59,969.969 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 21:06:59,970.970 INFO    ] No camera update needed
[2026-06-12 21:06:59,972.972 INFO    ] Script finished. Safe exiting...
[2026-06-12 21:06:59,973.973 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 21:06:59,976.976 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 21:06:59,978.978 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 21:07:02,031.031 INFO    ] ================================================
[2026-06-12 21:07:02,061.061 INFO    ] Launching Daemon at Fri Jun 12 21:07:02 IST 2026
[2026-06-12 21:07:02,075.075 INFO    ] ================================================
[2026-06-12 21:07:02,548.548 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 21:07:02
[2026-06-12 21:07:02,957.957 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 21:07:03,104.104 INFO    ] Initializing speech engine...
[2026-06-12 21:07:03,107.107 INFO    ] 2026-06-12 21:07:03
[2026-06-12 21:07:03,304.304 INFO    ] 2026-06-12 21:07:03
[2026-06-12 21:07:03,353.353 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 21:07:03,476.476 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 21:07:03,512.512 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 21:07:03,670.670 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 21:07:03,712.712 INFO    ] time= 12/06/2026 21:07:03
[2026-06-12 21:07:03,731.731 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 21:07:03,787.787 INFO    ] Checking for existing commands in stream...
[2026-06-12 21:07:03,912.912 INFO    ] No existing commands found in stream
[2026-06-12 21:07:08,923.923 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 21:07:08,926.926 INFO    ] Waiting 0.16 seconds before fallback handling...
[2026-06-12 21:07:09,433.433 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 21:07:09,434.434 INFO    ] Checking for system updates...
[2026-06-12 21:07:09,455.455 INFO    ] 200
[2026-06-12 21:07:09,456.456 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:07:09,488.488 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 21:07:09,490.490 INFO    ] No update needed
[2026-06-12 21:07:09,491.491 INFO    ] Checking for camera pi updates...
[2026-06-12 21:07:09,511.511 INFO    ] 200
[2026-06-12 21:07:09,512.512 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:07:09,535.535 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 21:07:09,576.576 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 21:07:09,577.577 INFO    ] No camera update needed
[2026-06-12 21:07:09,579.579 INFO    ] Script finished. Safe exiting...
[2026-06-12 21:07:09,580.580 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 21:07:09,583.583 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 21:07:09,586.586 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 21:07:11,624.624 INFO    ] ================================================
[2026-06-12 21:07:11,639.639 INFO    ] Launching Daemon at Fri Jun 12 21:07:11 IST 2026
[2026-06-12 21:07:11,650.650 INFO    ] ================================================
[2026-06-12 21:07:12,008.008 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 21:07:12
[2026-06-12 21:07:12,345.345 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 21:07:12,524.524 INFO    ] Initializing speech engine...
[2026-06-12 21:07:12,536.536 INFO    ] 2026-06-12 21:07:12
[2026-06-12 21:07:12,759.759 INFO    ] 2026-06-12 21:07:12
[2026-06-12 21:07:12,788.788 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 21:07:12,941.941 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 21:07:12,980.980 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 21:07:13,116.116 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 21:07:13,170.170 INFO    ] time= 12/06/2026 21:07:13
[2026-06-12 21:07:13,200.200 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 21:07:13,210.210 INFO    ] Checking for existing commands in stream...
[2026-06-12 21:07:13,283.283 INFO    ] No existing commands found in stream
[2026-06-12 21:07:18,303.303 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 21:07:18,306.306 INFO    ] Waiting 1.32 seconds before fallback handling...
[2026-06-12 21:07:19,994.994 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 21:07:19,995.995 INFO    ] Checking for system updates...
[2026-06-12 21:07:20,016.016 INFO    ] 200
[2026-06-12 21:07:20,018.018 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:07:20,048.048 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 21:07:20,049.049 INFO    ] No update needed
[2026-06-12 21:07:20,051.051 INFO    ] Checking for camera pi updates...
[2026-06-12 21:07:20,072.072 INFO    ] 200
[2026-06-12 21:07:20,074.074 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:07:20,100.100 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 21:07:20,142.142 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 21:07:20,143.143 INFO    ] No camera update needed
[2026-06-12 21:07:20,145.145 INFO    ] Script finished. Safe exiting...
[2026-06-12 21:07:20,146.146 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 21:07:20,149.149 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 21:07:20,153.153 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 21:07:22,190.190 INFO    ] ================================================
[2026-06-12 21:07:22,205.205 INFO    ] Launching Daemon at Fri Jun 12 21:07:22 IST 2026
[2026-06-12 21:07:22,216.216 INFO    ] ================================================
[2026-06-12 21:07:22,554.554 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 21:07:22
[2026-06-12 21:07:22,869.869 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 21:07:23,002.002 INFO    ] Initializing speech engine...
[2026-06-12 21:07:23,005.005 INFO    ] 2026-06-12 21:07:23
[2026-06-12 21:07:23,222.222 INFO    ] 2026-06-12 21:07:23
[2026-06-12 21:07:23,252.252 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 21:07:23,437.437 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 21:07:23,440.440 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 21:07:23,578.578 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 21:07:23,642.642 INFO    ] time= 12/06/2026 21:07:23
[2026-06-12 21:07:23,670.670 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 21:07:23,671.671 INFO    ] Checking for existing commands in stream...
[2026-06-12 21:07:23,747.747 INFO    ] No existing commands found in stream
[2026-06-12 21:07:28,761.761 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 21:07:28,764.764 INFO    ] Waiting 0.90 seconds before fallback handling...
[2026-06-12 21:07:30,205.205 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 21:07:30,207.207 INFO    ] Checking for system updates...
[2026-06-12 21:07:30,227.227 INFO    ] 200
[2026-06-12 21:07:30,229.229 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:07:30,260.260 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 21:07:30,261.261 INFO    ] No update needed
[2026-06-12 21:07:30,263.263 INFO    ] Checking for camera pi updates...
[2026-06-12 21:07:30,282.282 INFO    ] 200
[2026-06-12 21:07:30,284.284 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:07:30,307.307 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 21:07:30,379.379 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 21:07:30,381.381 INFO    ] No camera update needed
[2026-06-12 21:07:30,382.382 INFO    ] Script finished. Safe exiting...
[2026-06-12 21:07:30,384.384 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 21:07:30,387.387 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 21:07:30,390.390 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 21:07:32,421.421 INFO    ] ================================================
[2026-06-12 21:07:32,430.430 INFO    ] Launching Daemon at Fri Jun 12 21:07:32 IST 2026
[2026-06-12 21:07:32,437.437 INFO    ] ================================================
[2026-06-12 21:07:32,773.773 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 21:07:32
[2026-06-12 21:07:33,097.097 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 21:07:33,235.235 INFO    ] Initializing speech engine...
[2026-06-12 21:07:33,245.245 INFO    ] 2026-06-12 21:07:33
[2026-06-12 21:07:33,450.450 INFO    ] 2026-06-12 21:07:33
[2026-06-12 21:07:33,479.479 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 21:07:33,662.662 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 21:07:33,666.666 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 21:07:33,781.781 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 21:07:33,783.783 INFO    ] time= 12/06/2026 21:07:33
[2026-06-12 21:07:33,784.784 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 21:07:33,785.785 INFO    ] Checking for existing commands in stream...
[2026-06-12 21:07:33,851.851 INFO    ] No existing commands found in stream
[2026-06-12 21:07:38,860.860 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 21:07:38,862.862 INFO    ] Waiting 3.05 seconds before fallback handling...
[2026-06-12 21:07:42,325.325 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 21:07:42,327.327 INFO    ] Checking for system updates...
[2026-06-12 21:07:42,349.349 INFO    ] 200
[2026-06-12 21:07:42,350.350 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:07:42,380.380 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 21:07:42,382.382 INFO    ] No update needed
[2026-06-12 21:07:42,383.383 INFO    ] Checking for camera pi updates...
[2026-06-12 21:07:42,404.404 INFO    ] 200
[2026-06-12 21:07:42,405.405 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:07:42,428.428 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 21:07:42,471.471 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 21:07:42,472.472 INFO    ] No camera update needed
[2026-06-12 21:07:42,473.473 INFO    ] Script finished. Safe exiting...
[2026-06-12 21:07:42,475.475 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 21:07:42,478.478 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 21:07:42,480.480 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 21:07:44,521.521 INFO    ] ================================================
[2026-06-12 21:07:44,538.538 INFO    ] Launching Daemon at Fri Jun 12 21:07:44 IST 2026
[2026-06-12 21:07:44,549.549 INFO    ] ================================================
[2026-06-12 21:07:44,923.923 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 21:07:44
[2026-06-12 21:07:45,265.265 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 21:07:45,419.419 INFO    ] Initializing speech engine...
[2026-06-12 21:07:45,424.424 INFO    ] 2026-06-12 21:07:45
[2026-06-12 21:07:45,629.629 INFO    ] 2026-06-12 21:07:45
[2026-06-12 21:07:45,659.659 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 21:07:45,843.843 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 21:07:45,853.853 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 21:07:46,012.012 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 21:07:46,066.066 INFO    ] time= 12/06/2026 21:07:46
[2026-06-12 21:07:46,072.072 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 21:07:46,077.077 INFO    ] Checking for existing commands in stream...
[2026-06-12 21:07:46,144.144 INFO    ] No existing commands found in stream
[2026-06-12 21:07:51,154.154 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 21:07:51,157.157 INFO    ] Waiting 0.73 seconds before fallback handling...
[2026-06-12 21:07:52,309.309 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 21:07:52,311.311 INFO    ] Checking for system updates...
[2026-06-12 21:07:52,332.332 INFO    ] 200
[2026-06-12 21:07:52,333.333 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:07:52,363.363 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 21:07:52,365.365 INFO    ] No update needed
[2026-06-12 21:07:52,366.366 INFO    ] Checking for camera pi updates...
[2026-06-12 21:07:52,386.386 INFO    ] 200
[2026-06-12 21:07:52,387.387 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:07:52,411.411 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 21:07:52,470.470 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 21:07:52,471.471 INFO    ] No camera update needed
[2026-06-12 21:07:52,473.473 INFO    ] Script finished. Safe exiting...
[2026-06-12 21:07:52,474.474 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 21:07:52,478.478 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 21:07:52,481.481 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 21:07:54,520.520 INFO    ] ================================================
[2026-06-12 21:07:54,535.535 INFO    ] Launching Daemon at Fri Jun 12 21:07:54 IST 2026
[2026-06-12 21:07:54,547.547 INFO    ] ================================================
[2026-06-12 21:07:54,895.895 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 21:07:54
[2026-06-12 21:07:55,213.213 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 21:07:55,346.346 INFO    ] Initializing speech engine...
[2026-06-12 21:07:55,354.354 INFO    ] 2026-06-12 21:07:55
[2026-06-12 21:07:55,566.566 INFO    ] 2026-06-12 21:07:55
[2026-06-12 21:07:55,594.594 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 21:07:55,758.758 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 21:07:55,816.816 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 21:07:55,961.961 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 21:07:56,018.018 INFO    ] time= 12/06/2026 21:07:55
[2026-06-12 21:07:56,047.047 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 21:07:56,071.071 INFO    ] Checking for existing commands in stream...
[2026-06-12 21:07:56,149.149 INFO    ] No existing commands found in stream
[2026-06-12 21:08:01,158.158 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 21:08:01,161.161 INFO    ] Waiting 2.44 seconds before fallback handling...
[2026-06-12 21:08:03,963.963 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 21:08:03,964.964 INFO    ] Checking for system updates...
[2026-06-12 21:08:03,985.985 INFO    ] 200
[2026-06-12 21:08:03,986.986 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:08:04,016.016 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 21:08:04,018.018 INFO    ] No update needed
[2026-06-12 21:08:04,019.019 INFO    ] Checking for camera pi updates...
[2026-06-12 21:08:04,040.040 INFO    ] 200
[2026-06-12 21:08:04,041.041 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:08:04,064.064 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 21:08:04,130.130 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 21:08:04,144.144 INFO    ] No camera update needed
[2026-06-12 21:08:04,146.146 INFO    ] Script finished. Safe exiting...
[2026-06-12 21:08:04,147.147 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 21:08:04,150.150 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 21:08:04,154.154 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 21:08:06,193.193 INFO    ] ================================================
[2026-06-12 21:08:06,209.209 INFO    ] Launching Daemon at Fri Jun 12 21:08:06 IST 2026
[2026-06-12 21:08:06,221.221 INFO    ] ================================================
[2026-06-12 21:08:06,567.567 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 21:08:06
[2026-06-12 21:08:06,880.880 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 21:08:07,025.025 INFO    ] Initializing speech engine...
[2026-06-12 21:08:07,030.030 INFO    ] 2026-06-12 21:08:07
[2026-06-12 21:08:07,234.234 INFO    ] 2026-06-12 21:08:07
[2026-06-12 21:08:07,263.263 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 21:08:07,451.451 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 21:08:07,461.461 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 21:08:07,591.591 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 21:08:07,658.658 INFO    ] time= 12/06/2026 21:08:07
[2026-06-12 21:08:07,682.682 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 21:08:07,684.684 INFO    ] Checking for existing commands in stream...
[2026-06-12 21:08:07,755.755 INFO    ] No existing commands found in stream
[2026-06-12 21:08:12,766.766 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 21:08:12,768.768 INFO    ] Waiting 2.79 seconds before fallback handling...
[2026-06-12 21:08:15,923.923 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 21:08:15,924.924 INFO    ] Checking for system updates...
[2026-06-12 21:08:15,945.945 INFO    ] 200
[2026-06-12 21:08:15,947.947 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:08:15,977.977 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 21:08:15,978.978 INFO    ] No update needed
[2026-06-12 21:08:15,980.980 INFO    ] Checking for camera pi updates...
[2026-06-12 21:08:16,000.000 INFO    ] 200
[2026-06-12 21:08:16,001.001 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:08:16,025.025 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 21:08:16,058.058 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 21:08:16,059.059 INFO    ] No camera update needed
[2026-06-12 21:08:16,061.061 INFO    ] Script finished. Safe exiting...
[2026-06-12 21:08:16,062.062 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 21:08:16,066.066 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 21:08:16,069.069 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 21:08:18,109.109 INFO    ] ================================================
[2026-06-12 21:08:18,128.128 INFO    ] Launching Daemon at Fri Jun 12 21:08:18 IST 2026
[2026-06-12 21:08:18,135.135 INFO    ] ================================================
[2026-06-12 21:08:18,441.441 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 21:08:18
[2026-06-12 21:08:18,753.753 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 21:08:18,885.885 INFO    ] Initializing speech engine...
[2026-06-12 21:08:18,888.888 INFO    ] 2026-06-12 21:08:18
[2026-06-12 21:08:19,083.083 INFO    ] 2026-06-12 21:08:19
[2026-06-12 21:08:19,129.129 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 21:08:19,290.290 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 21:08:19,293.293 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 21:08:19,411.411 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 21:08:19,450.450 INFO    ] time= 12/06/2026 21:08:19
[2026-06-12 21:08:19,502.502 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 21:08:19,527.527 INFO    ] Checking for existing commands in stream...
[2026-06-12 21:08:19,668.668 INFO    ] No existing commands found in stream
[2026-06-12 21:08:24,678.678 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 21:08:24,681.681 INFO    ] Waiting 2.98 seconds before fallback handling...
[2026-06-12 21:08:28,041.041 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 21:08:28,043.043 INFO    ] Checking for system updates...
[2026-06-12 21:08:28,063.063 INFO    ] 200
[2026-06-12 21:08:28,064.064 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:08:28,094.094 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 21:08:28,095.095 INFO    ] No update needed
[2026-06-12 21:08:28,096.096 INFO    ] Checking for camera pi updates...
[2026-06-12 21:08:28,118.118 INFO    ] 200
[2026-06-12 21:08:28,119.119 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:08:28,142.142 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 21:08:28,184.184 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 21:08:28,186.186 INFO    ] No camera update needed
[2026-06-12 21:08:28,187.187 INFO    ] Script finished. Safe exiting...
[2026-06-12 21:08:28,188.188 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 21:08:28,191.191 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 21:08:28,194.194 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 21:08:30,232.232 INFO    ] ================================================
[2026-06-12 21:08:30,249.249 INFO    ] Launching Daemon at Fri Jun 12 21:08:30 IST 2026
[2026-06-12 21:08:30,261.261 INFO    ] ================================================
[2026-06-12 21:08:30,612.612 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 21:08:30
[2026-06-12 21:08:30,924.924 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 21:08:31,055.055 INFO    ] Initializing speech engine...
[2026-06-12 21:08:31,058.058 INFO    ] 2026-06-12 21:08:31
[2026-06-12 21:08:31,276.276 INFO    ] 2026-06-12 21:08:31
[2026-06-12 21:08:31,304.304 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 21:08:31,506.506 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 21:08:31,517.517 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 21:08:31,678.678 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 21:08:31,732.732 INFO    ] time= 12/06/2026 21:08:31
[2026-06-12 21:08:31,756.756 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 21:08:31,763.763 INFO    ] Checking for existing commands in stream...
[2026-06-12 21:08:31,832.832 INFO    ] No existing commands found in stream
[2026-06-12 21:08:36,842.842 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 21:08:36,845.845 INFO    ] Waiting 3.00 seconds before fallback handling...
[2026-06-12 21:08:40,204.204 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 21:08:40,205.205 INFO    ] Checking for system updates...
[2026-06-12 21:08:40,226.226 INFO    ] 200
[2026-06-12 21:08:40,227.227 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:08:40,257.257 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 21:08:40,258.258 INFO    ] No update needed
[2026-06-12 21:08:40,259.259 INFO    ] Checking for camera pi updates...
[2026-06-12 21:08:40,278.278 INFO    ] 200
[2026-06-12 21:08:40,280.280 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:08:40,303.303 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 21:08:40,447.447 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 21:08:40,449.449 INFO    ] No camera update needed
[2026-06-12 21:08:40,450.450 INFO    ] Script finished. Safe exiting...
[2026-06-12 21:08:40,451.451 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 21:08:40,454.454 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 21:08:40,457.457 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 21:08:42,498.498 INFO    ] ================================================
[2026-06-12 21:08:42,514.514 INFO    ] Launching Daemon at Fri Jun 12 21:08:42 IST 2026
[2026-06-12 21:08:42,525.525 INFO    ] ================================================
[2026-06-12 21:08:42,868.868 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 21:08:42
[2026-06-12 21:08:43,182.182 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 21:08:43,313.313 INFO    ] Initializing speech engine...
[2026-06-12 21:08:43,316.316 INFO    ] 2026-06-12 21:08:43
[2026-06-12 21:08:43,536.536 INFO    ] 2026-06-12 21:08:43
[2026-06-12 21:08:43,565.565 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 21:08:43,751.751 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 21:08:43,760.760 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 21:08:43,884.884 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 21:08:43,946.946 INFO    ] time= 12/06/2026 21:08:43
[2026-06-12 21:08:43,976.976 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 21:08:43,986.986 INFO    ] Checking for existing commands in stream...
[2026-06-12 21:08:44,058.058 INFO    ] No existing commands found in stream
[2026-06-12 21:08:49,083.083 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 21:08:49,086.086 INFO    ] Waiting 0.38 seconds before fallback handling...
[2026-06-12 21:08:49,845.845 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 21:08:49,847.847 INFO    ] Checking for system updates...
[2026-06-12 21:08:49,867.867 INFO    ] 200
[2026-06-12 21:08:49,869.869 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:08:49,898.898 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 21:08:49,900.900 INFO    ] No update needed
[2026-06-12 21:08:49,901.901 INFO    ] Checking for camera pi updates...
[2026-06-12 21:08:49,921.921 INFO    ] 200
[2026-06-12 21:08:49,922.922 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:08:49,945.945 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 21:08:49,996.996 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 21:08:49,997.997 INFO    ] No camera update needed
[2026-06-12 21:08:49,998.998 INFO    ] Script finished. Safe exiting...
[2026-06-12 21:08:49,999.999 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 21:08:50,002.002 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 21:08:50,005.005 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 21:08:52,043.043 INFO    ] ================================================
[2026-06-12 21:08:52,059.059 INFO    ] Launching Daemon at Fri Jun 12 21:08:52 IST 2026
[2026-06-12 21:08:52,070.070 INFO    ] ================================================
[2026-06-12 21:08:52,424.424 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 21:08:52
[2026-06-12 21:08:52,765.765 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 21:08:52,907.907 INFO    ] Initializing speech engine...
[2026-06-12 21:08:52,912.912 INFO    ] 2026-06-12 21:08:52
[2026-06-12 21:08:53,119.119 INFO    ] 2026-06-12 21:08:53
[2026-06-12 21:08:53,147.147 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 21:08:53,333.333 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 21:08:53,342.342 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 21:08:53,474.474 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 21:08:53,541.541 INFO    ] time= 12/06/2026 21:08:53
[2026-06-12 21:08:53,565.565 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 21:08:53,571.571 INFO    ] Checking for existing commands in stream...
[2026-06-12 21:08:53,638.638 INFO    ] No existing commands found in stream
[2026-06-12 21:08:58,647.647 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 21:08:58,650.650 INFO    ] Waiting 1.22 seconds before fallback handling...
[2026-06-12 21:09:00,246.246 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 21:09:00,247.247 INFO    ] Checking for system updates...
[2026-06-12 21:09:00,268.268 INFO    ] 200
[2026-06-12 21:09:00,270.270 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:09:00,301.301 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 21:09:00,302.302 INFO    ] No update needed
[2026-06-12 21:09:00,303.303 INFO    ] Checking for camera pi updates...
[2026-06-12 21:09:00,324.324 INFO    ] 200
[2026-06-12 21:09:00,326.326 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:09:00,351.351 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 21:09:00,394.394 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 21:09:00,396.396 INFO    ] No camera update needed
[2026-06-12 21:09:00,397.397 INFO    ] Script finished. Safe exiting...
[2026-06-12 21:09:00,398.398 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 21:09:00,401.401 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 21:09:00,404.404 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 21:09:02,435.435 INFO    ] ================================================
[2026-06-12 21:09:02,445.445 INFO    ] Launching Daemon at Fri Jun 12 21:09:02 IST 2026
[2026-06-12 21:09:02,452.452 INFO    ] ================================================
[2026-06-12 21:09:02,802.802 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 21:09:02
[2026-06-12 21:09:03,146.146 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 21:09:03,302.302 INFO    ] Initializing speech engine...
[2026-06-12 21:09:03,305.305 INFO    ] 2026-06-12 21:09:03
[2026-06-12 21:09:03,514.514 INFO    ] 2026-06-12 21:09:03
[2026-06-12 21:09:03,543.543 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 21:09:03,676.676 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 21:09:03,729.729 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 21:09:03,864.864 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 21:09:03,926.926 INFO    ] time= 12/06/2026 21:09:03
[2026-06-12 21:09:03,959.959 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 21:09:03,966.966 INFO    ] Checking for existing commands in stream...
[2026-06-12 21:09:04,033.033 INFO    ] No existing commands found in stream
[2026-06-12 21:09:09,048.048 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 21:09:09,052.052 INFO    ] Waiting 3.03 seconds before fallback handling...
[2026-06-12 21:09:12,464.464 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 21:09:12,465.465 INFO    ] Checking for system updates...
[2026-06-12 21:09:12,488.488 INFO    ] 200
[2026-06-12 21:09:12,489.489 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:09:12,523.523 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 21:09:12,524.524 INFO    ] No update needed
[2026-06-12 21:09:12,526.526 INFO    ] Checking for camera pi updates...
[2026-06-12 21:09:12,546.546 INFO    ] 200
[2026-06-12 21:09:12,547.547 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:09:12,570.570 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 21:09:12,624.624 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 21:09:12,625.625 INFO    ] No camera update needed
[2026-06-12 21:09:12,626.626 INFO    ] Script finished. Safe exiting...
[2026-06-12 21:09:12,628.628 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 21:09:12,631.631 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 21:09:12,634.634 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 21:09:14,672.672 INFO    ] ================================================
[2026-06-12 21:09:14,689.689 INFO    ] Launching Daemon at Fri Jun 12 21:09:14 IST 2026
[2026-06-12 21:09:14,701.701 INFO    ] ================================================
[2026-06-12 21:09:15,034.034 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 21:09:15
[2026-06-12 21:09:15,346.346 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 21:09:15,482.482 INFO    ] Initializing speech engine...
[2026-06-12 21:09:15,495.495 INFO    ] 2026-06-12 21:09:15
[2026-06-12 21:09:15,715.715 INFO    ] 2026-06-12 21:09:15
[2026-06-12 21:09:15,746.746 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 21:09:15,947.947 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 21:09:15,952.952 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 21:09:16,103.103 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 21:09:16,177.177 INFO    ] time= 12/06/2026 21:09:16
[2026-06-12 21:09:16,202.202 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 21:09:16,209.209 INFO    ] Checking for existing commands in stream...
[2026-06-12 21:09:16,282.282 INFO    ] No existing commands found in stream
[2026-06-12 21:09:21,291.291 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 21:09:21,294.294 INFO    ] Waiting 2.14 seconds before fallback handling...
[2026-06-12 21:09:23,785.785 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 21:09:23,787.787 INFO    ] Checking for system updates...
[2026-06-12 21:09:23,807.807 INFO    ] 200
[2026-06-12 21:09:23,808.808 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:09:23,839.839 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 21:09:23,840.840 INFO    ] No update needed
[2026-06-12 21:09:23,841.841 INFO    ] Checking for camera pi updates...
[2026-06-12 21:09:23,861.861 INFO    ] 200
[2026-06-12 21:09:23,862.862 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:09:23,887.887 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 21:09:23,929.929 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 21:09:23,931.931 INFO    ] No camera update needed
[2026-06-12 21:09:23,932.932 INFO    ] Script finished. Safe exiting...
[2026-06-12 21:09:23,933.933 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 21:09:23,936.936 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 21:09:23,939.939 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 21:09:25,977.977 INFO    ] ================================================
[2026-06-12 21:09:25,992.992 INFO    ] Launching Daemon at Fri Jun 12 21:09:25 IST 2026
[2026-06-12 21:09:26,002.002 INFO    ] ================================================
[2026-06-12 21:09:26,386.386 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 21:09:26
[2026-06-12 21:09:26,735.735 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 21:09:26,888.888 INFO    ] Initializing speech engine...
[2026-06-12 21:09:26,894.894 INFO    ] 2026-06-12 21:09:26
[2026-06-12 21:09:27,101.101 INFO    ] 2026-06-12 21:09:27
[2026-06-12 21:09:27,130.130 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 21:09:27,313.313 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 21:09:27,324.324 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 21:09:27,453.453 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 21:09:27,507.507 INFO    ] time= 12/06/2026 21:09:27
[2026-06-12 21:09:27,545.545 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 21:09:27,547.547 INFO    ] Checking for existing commands in stream...
[2026-06-12 21:09:27,618.618 INFO    ] No existing commands found in stream
[2026-06-12 21:09:32,640.640 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 21:09:32,642.642 INFO    ] Waiting 3.15 seconds before fallback handling...
[2026-06-12 21:09:36,205.205 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 21:09:36,207.207 INFO    ] Checking for system updates...
[2026-06-12 21:09:36,229.229 INFO    ] 200
[2026-06-12 21:09:36,231.231 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:09:36,261.261 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 21:09:36,263.263 INFO    ] No update needed
[2026-06-12 21:09:36,264.264 INFO    ] Checking for camera pi updates...
[2026-06-12 21:09:36,285.285 INFO    ] 200
[2026-06-12 21:09:36,287.287 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:09:36,310.310 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 21:09:36,356.356 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 21:09:36,358.358 INFO    ] No camera update needed
[2026-06-12 21:09:36,359.359 INFO    ] Script finished. Safe exiting...
[2026-06-12 21:09:36,361.361 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 21:09:36,364.364 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 21:09:36,367.367 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 21:09:38,407.407 INFO    ] ================================================
[2026-06-12 21:09:38,424.424 INFO    ] Launching Daemon at Fri Jun 12 21:09:38 IST 2026
[2026-06-12 21:09:38,435.435 INFO    ] ================================================
[2026-06-12 21:09:38,790.790 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 21:09:38
[2026-06-12 21:09:39,105.105 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 21:09:39,243.243 INFO    ] Initializing speech engine...
[2026-06-12 21:09:39,254.254 INFO    ] 2026-06-12 21:09:39
[2026-06-12 21:09:39,459.459 INFO    ] 2026-06-12 21:09:39
[2026-06-12 21:09:39,487.487 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 21:09:39,672.672 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 21:09:39,681.681 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 21:09:39,816.816 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 21:09:39,877.877 INFO    ] time= 12/06/2026 21:09:39
[2026-06-12 21:09:39,902.902 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 21:09:39,908.908 INFO    ] Checking for existing commands in stream...
[2026-06-12 21:09:39,973.973 INFO    ] No existing commands found in stream
[2026-06-12 21:09:44,984.984 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 21:09:44,987.987 INFO    ] Waiting 2.69 seconds before fallback handling...
[2026-06-12 21:09:48,034.034 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 21:09:48,036.036 INFO    ] Checking for system updates...
[2026-06-12 21:09:48,056.056 INFO    ] 200
[2026-06-12 21:09:48,058.058 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:09:48,090.090 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 21:09:48,091.091 INFO    ] No update needed
[2026-06-12 21:09:48,092.092 INFO    ] Checking for camera pi updates...
[2026-06-12 21:09:48,111.111 INFO    ] 200
[2026-06-12 21:09:48,113.113 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:09:48,136.136 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 21:09:48,168.168 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 21:09:48,169.169 INFO    ] No camera update needed
[2026-06-12 21:09:48,171.171 INFO    ] Script finished. Safe exiting...
[2026-06-12 21:09:48,172.172 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 21:09:48,175.175 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 21:09:48,178.178 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 21:09:50,217.217 INFO    ] ================================================
[2026-06-12 21:09:50,233.233 INFO    ] Launching Daemon at Fri Jun 12 21:09:50 IST 2026
[2026-06-12 21:09:50,243.243 INFO    ] ================================================
[2026-06-12 21:09:50,614.614 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 21:09:50
[2026-06-12 21:09:50,930.930 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 21:09:51,064.064 INFO    ] Initializing speech engine...
[2026-06-12 21:09:51,073.073 INFO    ] 2026-06-12 21:09:51
[2026-06-12 21:09:51,300.300 INFO    ] 2026-06-12 21:09:51
[2026-06-12 21:09:51,330.330 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 21:09:51,530.530 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 21:09:51,534.534 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 21:09:51,676.676 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 21:09:51,722.722 INFO    ] time= 12/06/2026 21:09:51
[2026-06-12 21:09:51,761.761 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 21:09:51,785.785 INFO    ] Checking for existing commands in stream...
[2026-06-12 21:09:51,861.861 INFO    ] No existing commands found in stream
[2026-06-12 21:09:56,872.872 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 21:09:56,875.875 INFO    ] Waiting 0.86 seconds before fallback handling...
[2026-06-12 21:09:58,143.143 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 21:09:58,145.145 INFO    ] Checking for system updates...
[2026-06-12 21:09:58,165.165 INFO    ] 200
[2026-06-12 21:09:58,167.167 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:09:58,197.197 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 21:09:58,199.199 INFO    ] No update needed
[2026-06-12 21:09:58,200.200 INFO    ] Checking for camera pi updates...
[2026-06-12 21:09:58,221.221 INFO    ] 200
[2026-06-12 21:09:58,223.223 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:09:58,246.246 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 21:09:58,297.297 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 21:09:58,299.299 INFO    ] No camera update needed
[2026-06-12 21:09:58,300.300 INFO    ] Script finished. Safe exiting...
[2026-06-12 21:09:58,302.302 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 21:09:58,305.305 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 21:09:58,308.308 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 21:10:00,347.347 INFO    ] ================================================
[2026-06-12 21:10:00,362.362 INFO    ] Launching Daemon at Fri Jun 12 21:10:00 IST 2026
[2026-06-12 21:10:00,373.373 INFO    ] ================================================
[2026-06-12 21:10:00,731.731 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 21:10:00
[2026-06-12 21:10:01,043.043 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 21:10:01,174.174 INFO    ] Initializing speech engine...
[2026-06-12 21:10:01,178.178 INFO    ] 2026-06-12 21:10:01
[2026-06-12 21:10:01,370.370 INFO    ] 2026-06-12 21:10:01
[2026-06-12 21:10:01,415.415 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 21:10:01,574.574 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 21:10:01,613.613 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 21:10:01,782.782 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 21:10:01,795.795 INFO    ] time= 12/06/2026 21:10:01
[2026-06-12 21:10:01,809.809 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 21:10:01,825.825 INFO    ] Checking for existing commands in stream...
[2026-06-12 21:10:01,936.936 INFO    ] No existing commands found in stream
[2026-06-12 21:10:06,945.945 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 21:10:06,948.948 INFO    ] Waiting 1.49 seconds before fallback handling...
[2026-06-12 21:10:08,850.850 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 21:10:08,851.851 INFO    ] Checking for system updates...
[2026-06-12 21:10:08,872.872 INFO    ] 200
[2026-06-12 21:10:08,873.873 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:10:08,905.905 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 21:10:08,907.907 INFO    ] No update needed
[2026-06-12 21:10:08,908.908 INFO    ] Checking for camera pi updates...
[2026-06-12 21:10:08,927.927 INFO    ] 200
[2026-06-12 21:10:08,929.929 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:10:08,952.952 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 21:10:09,007.007 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 21:10:09,009.009 INFO    ] No camera update needed
[2026-06-12 21:10:09,010.010 INFO    ] Script finished. Safe exiting...
[2026-06-12 21:10:09,011.011 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 21:10:09,014.014 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 21:10:09,017.017 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 21:10:11,055.055 INFO    ] ================================================
[2026-06-12 21:10:11,071.071 INFO    ] Launching Daemon at Fri Jun 12 21:10:11 IST 2026
[2026-06-12 21:10:11,082.082 INFO    ] ================================================
[2026-06-12 21:10:11,451.451 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 21:10:11
[2026-06-12 21:10:11,766.766 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 21:10:11,908.908 INFO    ] Initializing speech engine...
[2026-06-12 21:10:11,913.913 INFO    ] 2026-06-12 21:10:11
[2026-06-12 21:10:12,098.098 INFO    ] 2026-06-12 21:10:12
[2026-06-12 21:10:12,125.125 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 21:10:12,330.330 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 21:10:12,333.333 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 21:10:12,462.462 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 21:10:12,483.483 INFO    ] time= 12/06/2026 21:10:12
[2026-06-12 21:10:12,484.484 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 21:10:12,540.540 INFO    ] Checking for existing commands in stream...
[2026-06-12 21:10:12,632.632 INFO    ] No existing commands found in stream
[2026-06-12 21:10:17,642.642 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 21:10:17,645.645 INFO    ] Waiting 2.34 seconds before fallback handling...
[2026-06-12 21:10:20,364.364 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 21:10:20,366.366 INFO    ] Checking for system updates...
[2026-06-12 21:10:20,386.386 INFO    ] 200
[2026-06-12 21:10:20,387.387 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:10:20,417.417 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 21:10:20,418.418 INFO    ] No update needed
[2026-06-12 21:10:20,420.420 INFO    ] Checking for camera pi updates...
[2026-06-12 21:10:20,441.441 INFO    ] 200
[2026-06-12 21:10:20,443.443 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:10:20,465.465 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 21:10:20,507.507 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 21:10:20,509.509 INFO    ] No camera update needed
[2026-06-12 21:10:20,510.510 INFO    ] Script finished. Safe exiting...
[2026-06-12 21:10:20,511.511 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 21:10:20,514.514 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 21:10:20,517.517 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 21:10:22,557.557 INFO    ] ================================================
[2026-06-12 21:10:22,572.572 INFO    ] Launching Daemon at Fri Jun 12 21:10:22 IST 2026
[2026-06-12 21:10:22,583.583 INFO    ] ================================================
[2026-06-12 21:10:22,913.913 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 21:10:22
[2026-06-12 21:10:23,226.226 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 21:10:23,361.361 INFO    ] Initializing speech engine...
[2026-06-12 21:10:23,370.370 INFO    ] 2026-06-12 21:10:23
[2026-06-12 21:10:23,576.576 INFO    ] 2026-06-12 21:10:23
[2026-06-12 21:10:23,605.605 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 21:10:23,765.765 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 21:10:23,833.833 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 21:10:23,980.980 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 21:10:24,046.046 INFO    ] time= 12/06/2026 21:10:23
[2026-06-12 21:10:24,088.088 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 21:10:24,090.090 INFO    ] Checking for existing commands in stream...
[2026-06-12 21:10:24,168.168 INFO    ] No existing commands found in stream
[2026-06-12 21:10:29,178.178 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 21:10:29,181.181 INFO    ] Waiting 2.11 seconds before fallback handling...
[2026-06-12 21:10:31,653.653 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 21:10:31,655.655 INFO    ] Checking for system updates...
[2026-06-12 21:10:31,675.675 INFO    ] 200
[2026-06-12 21:10:31,676.676 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:10:31,707.707 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 21:10:31,708.708 INFO    ] No update needed
[2026-06-12 21:10:31,709.709 INFO    ] Checking for camera pi updates...
[2026-06-12 21:10:31,733.733 INFO    ] 200
[2026-06-12 21:10:31,734.734 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:10:31,757.757 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 21:10:31,803.803 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 21:10:31,805.805 INFO    ] No camera update needed
[2026-06-12 21:10:31,807.807 INFO    ] Script finished. Safe exiting...
[2026-06-12 21:10:31,809.809 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 21:10:31,813.813 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 21:10:31,818.818 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 21:10:33,849.849 INFO    ] ================================================
[2026-06-12 21:10:33,865.865 INFO    ] Launching Daemon at Fri Jun 12 21:10:33 IST 2026
[2026-06-12 21:10:33,876.876 INFO    ] ================================================
[2026-06-12 21:10:34,225.225 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 21:10:34
[2026-06-12 21:10:34,543.543 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 21:10:34,686.686 INFO    ] Initializing speech engine...
[2026-06-12 21:10:34,696.696 INFO    ] 2026-06-12 21:10:34
[2026-06-12 21:10:34,916.916 INFO    ] 2026-06-12 21:10:34
[2026-06-12 21:10:34,948.948 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 21:10:35,081.081 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 21:10:35,130.130 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 21:10:35,299.299 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 21:10:35,357.357 INFO    ] time= 12/06/2026 21:10:35
[2026-06-12 21:10:35,393.393 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 21:10:35,405.405 INFO    ] Checking for existing commands in stream...
[2026-06-12 21:10:35,509.509 INFO    ] No existing commands found in stream
[2026-06-12 21:10:40,518.518 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 21:10:40,521.521 INFO    ] Waiting 3.85 seconds before fallback handling...
[2026-06-12 21:10:44,794.794 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 21:10:44,796.796 INFO    ] Checking for system updates...
[2026-06-12 21:10:44,817.817 INFO    ] 200
[2026-06-12 21:10:44,818.818 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:10:44,850.850 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 21:10:44,852.852 INFO    ] No update needed
[2026-06-12 21:10:44,853.853 INFO    ] Checking for camera pi updates...
[2026-06-12 21:10:44,872.872 INFO    ] 200
[2026-06-12 21:10:44,874.874 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:10:44,897.897 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 21:10:45,039.039 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 21:10:45,040.040 INFO    ] No camera update needed
[2026-06-12 21:10:45,041.041 INFO    ] Script finished. Safe exiting...
[2026-06-12 21:10:45,043.043 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 21:10:45,046.046 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 21:10:45,048.048 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 21:10:47,088.088 INFO    ] ================================================
[2026-06-12 21:10:47,104.104 INFO    ] Launching Daemon at Fri Jun 12 21:10:47 IST 2026
[2026-06-12 21:10:47,115.115 INFO    ] ================================================
[2026-06-12 21:10:47,496.496 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 21:10:47
[2026-06-12 21:10:47,839.839 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 21:10:47,994.994 INFO    ] Initializing speech engine...
[2026-06-12 21:10:47,999.999 INFO    ] 2026-06-12 21:10:47
[2026-06-12 21:10:48,211.211 INFO    ] 2026-06-12 21:10:48
[2026-06-12 21:10:48,240.240 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 21:10:48,376.376 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 21:10:48,430.430 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 21:10:48,564.564 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 21:10:48,625.625 INFO    ] time= 12/06/2026 21:10:48
[2026-06-12 21:10:48,665.665 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 21:10:48,667.667 INFO    ] Checking for existing commands in stream...
[2026-06-12 21:10:48,740.740 INFO    ] No existing commands found in stream
[2026-06-12 21:10:53,770.770 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 21:10:53,773.773 INFO    ] Waiting 0.98 seconds before fallback handling...
[2026-06-12 21:10:55,130.130 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 21:10:55,131.131 INFO    ] Checking for system updates...
[2026-06-12 21:10:55,152.152 INFO    ] 200
[2026-06-12 21:10:55,154.154 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:10:55,184.184 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 21:10:55,185.185 INFO    ] No update needed
[2026-06-12 21:10:55,187.187 INFO    ] Checking for camera pi updates...
[2026-06-12 21:10:55,206.206 INFO    ] 200
[2026-06-12 21:10:55,208.208 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:10:55,231.231 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 21:10:55,277.277 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 21:10:55,279.279 INFO    ] No camera update needed
[2026-06-12 21:10:55,280.280 INFO    ] Script finished. Safe exiting...
[2026-06-12 21:10:55,281.281 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 21:10:55,284.284 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 21:10:55,287.287 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 21:10:57,327.327 INFO    ] ================================================
[2026-06-12 21:10:57,342.342 INFO    ] Launching Daemon at Fri Jun 12 21:10:57 IST 2026
[2026-06-12 21:10:57,352.352 INFO    ] ================================================
[2026-06-12 21:10:57,724.724 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 21:10:57
[2026-06-12 21:10:58,072.072 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 21:10:58,227.227 INFO    ] Initializing speech engine...
[2026-06-12 21:10:58,233.233 INFO    ] 2026-06-12 21:10:58
[2026-06-12 21:10:58,441.441 INFO    ] 2026-06-12 21:10:58
[2026-06-12 21:10:58,471.471 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 21:10:58,618.618 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 21:10:58,656.656 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 21:10:58,798.798 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 21:10:58,860.860 INFO    ] time= 12/06/2026 21:10:58
[2026-06-12 21:10:58,884.884 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 21:10:58,890.890 INFO    ] Checking for existing commands in stream...
[2026-06-12 21:10:58,957.957 INFO    ] No existing commands found in stream
[2026-06-12 21:11:03,981.981 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 21:11:03,985.985 INFO    ] Waiting 2.36 seconds before fallback handling...
[2026-06-12 21:11:06,741.741 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 21:11:06,742.742 INFO    ] Checking for system updates...
[2026-06-12 21:11:06,764.764 INFO    ] 200
[2026-06-12 21:11:06,766.766 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:11:06,798.798 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 21:11:06,799.799 INFO    ] No update needed
[2026-06-12 21:11:06,800.800 INFO    ] Checking for camera pi updates...
[2026-06-12 21:11:06,819.819 INFO    ] 200
[2026-06-12 21:11:06,821.821 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:11:06,847.847 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 21:11:06,904.904 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 21:11:06,906.906 INFO    ] No camera update needed
[2026-06-12 21:11:06,907.907 INFO    ] Script finished. Safe exiting...
[2026-06-12 21:11:06,908.908 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 21:11:06,911.911 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 21:11:06,914.914 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 21:11:08,952.952 INFO    ] ================================================
[2026-06-12 21:11:08,966.966 INFO    ] Launching Daemon at Fri Jun 12 21:11:08 IST 2026
[2026-06-12 21:11:08,977.977 INFO    ] ================================================
[2026-06-12 21:11:09,311.311 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 21:11:09
[2026-06-12 21:11:09,628.628 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 21:11:09,771.771 INFO    ] Initializing speech engine...
[2026-06-12 21:11:09,776.776 INFO    ] 2026-06-12 21:11:09
[2026-06-12 21:11:09,980.980 INFO    ] 2026-06-12 21:11:09
[2026-06-12 21:11:10,009.009 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 21:11:10,190.190 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 21:11:10,199.199 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 21:11:10,321.321 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 21:11:10,372.372 INFO    ] time= 12/06/2026 21:11:10
[2026-06-12 21:11:10,410.410 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 21:11:10,420.420 INFO    ] Checking for existing commands in stream...
[2026-06-12 21:11:10,492.492 INFO    ] No existing commands found in stream
[2026-06-12 21:11:15,506.506 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 21:11:15,509.509 INFO    ] Waiting 1.35 seconds before fallback handling...
[2026-06-12 21:11:17,231.231 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 21:11:17,232.232 INFO    ] Checking for system updates...
[2026-06-12 21:11:17,253.253 INFO    ] 200
[2026-06-12 21:11:17,254.254 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:11:17,285.285 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 21:11:17,287.287 INFO    ] No update needed
[2026-06-12 21:11:17,288.288 INFO    ] Checking for camera pi updates...
[2026-06-12 21:11:17,307.307 INFO    ] 200
[2026-06-12 21:11:17,309.309 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:11:17,334.334 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 21:11:17,378.378 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 21:11:17,379.379 INFO    ] No camera update needed
[2026-06-12 21:11:17,380.380 INFO    ] Script finished. Safe exiting...
[2026-06-12 21:11:17,382.382 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 21:11:17,385.385 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 21:11:17,387.387 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 21:11:19,428.428 INFO    ] ================================================
[2026-06-12 21:11:19,449.449 INFO    ] Launching Daemon at Fri Jun 12 21:11:19 IST 2026
[2026-06-12 21:11:19,459.459 INFO    ] ================================================
[2026-06-12 21:11:19,820.820 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 21:11:19
[2026-06-12 21:11:20,136.136 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 21:11:20,279.279 INFO    ] Initializing speech engine...
[2026-06-12 21:11:20,284.284 INFO    ] 2026-06-12 21:11:20
[2026-06-12 21:11:20,487.487 INFO    ] 2026-06-12 21:11:20
[2026-06-12 21:11:20,516.516 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 21:11:20,700.700 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 21:11:20,708.708 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 21:11:20,853.853 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 21:11:20,905.905 INFO    ] time= 12/06/2026 21:11:20
[2026-06-12 21:11:20,927.927 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 21:11:20,933.933 INFO    ] Checking for existing commands in stream...
[2026-06-12 21:11:21,022.022 INFO    ] No existing commands found in stream
[2026-06-12 21:11:26,031.031 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 21:11:26,034.034 INFO    ] Waiting 1.93 seconds before fallback handling...
[2026-06-12 21:11:28,358.358 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 21:11:28,359.359 INFO    ] Checking for system updates...
[2026-06-12 21:11:28,380.380 INFO    ] 200
[2026-06-12 21:11:28,381.381 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:11:28,411.411 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 21:11:28,413.413 INFO    ] No update needed
[2026-06-12 21:11:28,414.414 INFO    ] Checking for camera pi updates...
[2026-06-12 21:11:28,434.434 INFO    ] 200
[2026-06-12 21:11:28,435.435 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:11:28,458.458 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 21:11:28,511.511 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 21:11:28,512.512 INFO    ] No camera update needed
[2026-06-12 21:11:28,514.514 INFO    ] Script finished. Safe exiting...
[2026-06-12 21:11:28,515.515 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 21:11:28,518.518 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 21:11:28,520.520 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 21:11:30,560.560 INFO    ] ================================================
[2026-06-12 21:11:30,575.575 INFO    ] Launching Daemon at Fri Jun 12 21:11:30 IST 2026
[2026-06-12 21:11:30,586.586 INFO    ] ================================================
[2026-06-12 21:11:30,927.927 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 21:11:30
[2026-06-12 21:11:31,239.239 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 21:11:31,393.393 INFO    ] Initializing speech engine...
[2026-06-12 21:11:31,402.402 INFO    ] 2026-06-12 21:11:31
[2026-06-12 21:11:31,636.636 INFO    ] 2026-06-12 21:11:31
[2026-06-12 21:11:31,667.667 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 21:11:31,800.800 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 21:11:31,853.853 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 21:11:31,959.959 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 21:11:32,007.007 INFO    ] time= 12/06/2026 21:11:31
[2026-06-12 21:11:32,014.014 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 21:11:32,016.016 INFO    ] Checking for existing commands in stream...
[2026-06-12 21:11:32,081.081 INFO    ] No existing commands found in stream
[2026-06-12 21:11:37,090.090 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 21:11:37,093.093 INFO    ] Waiting 0.97 seconds before fallback handling...
[2026-06-12 21:11:38,420.420 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 21:11:38,422.422 INFO    ] Checking for system updates...
[2026-06-12 21:11:38,442.442 INFO    ] 200
[2026-06-12 21:11:38,443.443 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:11:38,476.476 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 21:11:38,477.477 INFO    ] No update needed
[2026-06-12 21:11:38,478.478 INFO    ] Checking for camera pi updates...
[2026-06-12 21:11:38,498.498 INFO    ] 200
[2026-06-12 21:11:38,500.500 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:11:38,522.522 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 21:11:38,564.564 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 21:11:38,565.565 INFO    ] No camera update needed
[2026-06-12 21:11:38,566.566 INFO    ] Script finished. Safe exiting...
[2026-06-12 21:11:38,568.568 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 21:11:38,571.571 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 21:11:38,573.573 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 21:11:40,613.613 INFO    ] ================================================
[2026-06-12 21:11:40,629.629 INFO    ] Launching Daemon at Fri Jun 12 21:11:40 IST 2026
[2026-06-12 21:11:40,640.640 INFO    ] ================================================
[2026-06-12 21:11:40,975.975 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 21:11:40
[2026-06-12 21:11:41,292.292 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 21:11:41,436.436 INFO    ] Initializing speech engine...
[2026-06-12 21:11:41,441.441 INFO    ] 2026-06-12 21:11:41
[2026-06-12 21:11:41,644.644 INFO    ] 2026-06-12 21:11:41
[2026-06-12 21:11:41,673.673 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 21:11:41,856.856 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 21:11:41,865.865 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 21:11:42,014.014 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 21:11:42,063.063 INFO    ] time= 12/06/2026 21:11:42
[2026-06-12 21:11:42,084.084 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 21:11:42,090.090 INFO    ] Checking for existing commands in stream...
[2026-06-12 21:11:42,180.180 INFO    ] No existing commands found in stream
[2026-06-12 21:11:47,189.189 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 21:11:47,192.192 INFO    ] Waiting 0.16 seconds before fallback handling...
[2026-06-12 21:11:47,696.696 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 21:11:47,698.698 INFO    ] Checking for system updates...
[2026-06-12 21:11:47,718.718 INFO    ] 200
[2026-06-12 21:11:47,720.720 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:11:47,753.753 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 21:11:47,754.754 INFO    ] No update needed
[2026-06-12 21:11:47,756.756 INFO    ] Checking for camera pi updates...
[2026-06-12 21:11:47,776.776 INFO    ] 200
[2026-06-12 21:11:47,777.777 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:11:47,801.801 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 21:11:47,855.855 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 21:11:47,857.857 INFO    ] No camera update needed
[2026-06-12 21:11:47,858.858 INFO    ] Script finished. Safe exiting...
[2026-06-12 21:11:47,859.859 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 21:11:47,863.863 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 21:11:47,865.865 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 21:11:49,905.905 INFO    ] ================================================
[2026-06-12 21:11:49,921.921 INFO    ] Launching Daemon at Fri Jun 12 21:11:49 IST 2026
[2026-06-12 21:11:49,932.932 INFO    ] ================================================
[2026-06-12 21:11:50,284.284 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 21:11:50
[2026-06-12 21:11:50,623.623 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 21:11:50,768.768 INFO    ] Initializing speech engine...
[2026-06-12 21:11:50,778.778 INFO    ] 2026-06-12 21:11:50
[2026-06-12 21:11:50,990.990 INFO    ] 2026-06-12 21:11:50
[2026-06-12 21:11:51,020.020 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 21:11:51,207.207 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 21:11:51,217.217 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 21:11:51,347.347 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 21:11:51,406.406 INFO    ] time= 12/06/2026 21:11:51
[2026-06-12 21:11:51,440.440 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 21:11:51,446.446 INFO    ] Checking for existing commands in stream...
[2026-06-12 21:11:51,514.514 INFO    ] No existing commands found in stream
[2026-06-12 21:11:56,528.528 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 21:11:56,531.531 INFO    ] Waiting 2.46 seconds before fallback handling...
[2026-06-12 21:11:59,404.404 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 21:11:59,405.405 INFO    ] Checking for system updates...
[2026-06-12 21:11:59,426.426 INFO    ] 200
[2026-06-12 21:11:59,428.428 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:11:59,458.458 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 21:11:59,459.459 INFO    ] No update needed
[2026-06-12 21:11:59,461.461 INFO    ] Checking for camera pi updates...
[2026-06-12 21:11:59,480.480 INFO    ] 200
[2026-06-12 21:11:59,481.481 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:11:59,504.504 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 21:11:59,552.552 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 21:11:59,553.553 INFO    ] No camera update needed
[2026-06-12 21:11:59,555.555 INFO    ] Script finished. Safe exiting...
[2026-06-12 21:11:59,556.556 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 21:11:59,559.559 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 21:11:59,562.562 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 21:12:01,604.604 INFO    ] ================================================
[2026-06-12 21:12:01,623.623 INFO    ] Launching Daemon at Fri Jun 12 21:12:01 IST 2026
[2026-06-12 21:12:01,633.633 INFO    ] ================================================
[2026-06-12 21:12:02,009.009 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 21:12:02
[2026-06-12 21:12:02,375.375 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 21:12:02,543.543 INFO    ] Initializing speech engine...
[2026-06-12 21:12:02,548.548 INFO    ] 2026-06-12 21:12:02
[2026-06-12 21:12:02,759.759 INFO    ] 2026-06-12 21:12:02
[2026-06-12 21:12:02,787.787 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 21:12:02,912.912 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 21:12:02,970.970 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 21:12:03,113.113 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 21:12:03,170.170 INFO    ] time= 12/06/2026 21:12:03
[2026-06-12 21:12:03,201.201 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 21:12:03,212.212 INFO    ] Checking for existing commands in stream...
[2026-06-12 21:12:03,285.285 INFO    ] No existing commands found in stream
[2026-06-12 21:12:08,294.294 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 21:12:08,297.297 INFO    ] Waiting 3.05 seconds before fallback handling...
[2026-06-12 21:12:11,705.705 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 21:12:11,707.707 INFO    ] Checking for system updates...
[2026-06-12 21:12:11,729.729 INFO    ] 200
[2026-06-12 21:12:11,730.730 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:12:11,762.762 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 21:12:11,764.764 INFO    ] No update needed
[2026-06-12 21:12:11,765.765 INFO    ] Checking for camera pi updates...
[2026-06-12 21:12:11,784.784 INFO    ] 200
[2026-06-12 21:12:11,785.785 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:12:11,810.810 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 21:12:11,857.857 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 21:12:11,858.858 INFO    ] No camera update needed
[2026-06-12 21:12:11,859.859 INFO    ] Script finished. Safe exiting...
[2026-06-12 21:12:11,861.861 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 21:12:11,864.864 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 21:12:11,866.866 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 21:12:13,906.906 INFO    ] ================================================
[2026-06-12 21:12:13,922.922 INFO    ] Launching Daemon at Fri Jun 12 21:12:13 IST 2026
[2026-06-12 21:12:13,933.933 INFO    ] ================================================
[2026-06-12 21:12:14,300.300 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 21:12:14
[2026-06-12 21:12:14,635.635 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 21:12:14,786.786 INFO    ] Initializing speech engine...
[2026-06-12 21:12:14,792.792 INFO    ] 2026-06-12 21:12:14
[2026-06-12 21:12:14,998.998 INFO    ] 2026-06-12 21:12:14
[2026-06-12 21:12:15,027.027 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 21:12:15,212.212 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 21:12:15,221.221 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 21:12:15,350.350 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 21:12:15,409.409 INFO    ] time= 12/06/2026 21:12:15
[2026-06-12 21:12:15,441.441 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 21:12:15,447.447 INFO    ] Checking for existing commands in stream...
[2026-06-12 21:12:15,514.514 INFO    ] No existing commands found in stream
[2026-06-12 21:12:20,528.528 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 21:12:20,532.532 INFO    ] Waiting 2.88 seconds before fallback handling...
[2026-06-12 21:12:23,807.807 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 21:12:23,808.808 INFO    ] Checking for system updates...
[2026-06-12 21:12:23,831.831 INFO    ] 200
[2026-06-12 21:12:23,833.833 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:12:23,866.866 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 21:12:23,867.867 INFO    ] No update needed
[2026-06-12 21:12:23,869.869 INFO    ] Checking for camera pi updates...
[2026-06-12 21:12:23,890.890 INFO    ] 200
[2026-06-12 21:12:23,892.892 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:12:23,915.915 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 21:12:23,971.971 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 21:12:23,972.972 INFO    ] No camera update needed
[2026-06-12 21:12:23,974.974 INFO    ] Script finished. Safe exiting...
[2026-06-12 21:12:23,975.975 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 21:12:23,978.978 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 21:12:23,981.981 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 21:12:26,020.020 INFO    ] ================================================
[2026-06-12 21:12:26,037.037 INFO    ] Launching Daemon at Fri Jun 12 21:12:26 IST 2026
[2026-06-12 21:12:26,048.048 INFO    ] ================================================
[2026-06-12 21:12:26,437.437 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 21:12:26
[2026-06-12 21:12:26,777.777 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 21:12:26,929.929 INFO    ] Initializing speech engine...
[2026-06-12 21:12:26,934.934 INFO    ] 2026-06-12 21:12:26
[2026-06-12 21:12:27,144.144 INFO    ] 2026-06-12 21:12:27
[2026-06-12 21:12:27,173.173 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 21:12:27,359.359 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 21:12:27,368.368 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 21:12:27,513.513 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 21:12:27,567.567 INFO    ] time= 12/06/2026 21:12:27
[2026-06-12 21:12:27,589.589 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 21:12:27,596.596 INFO    ] Checking for existing commands in stream...
[2026-06-12 21:12:27,687.687 INFO    ] No existing commands found in stream
[2026-06-12 21:12:32,696.696 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 21:12:32,700.700 INFO    ] Waiting 0.65 seconds before fallback handling...
[2026-06-12 21:12:33,739.739 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 21:12:33,740.740 INFO    ] Checking for system updates...
[2026-06-12 21:12:33,762.762 INFO    ] 200
[2026-06-12 21:12:33,763.763 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:12:33,793.793 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 21:12:33,794.794 INFO    ] No update needed
[2026-06-12 21:12:33,796.796 INFO    ] Checking for camera pi updates...
[2026-06-12 21:12:33,815.815 INFO    ] 200
[2026-06-12 21:12:33,816.816 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:12:33,843.843 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 21:12:33,884.884 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 21:12:33,885.885 INFO    ] No camera update needed
[2026-06-12 21:12:33,887.887 INFO    ] Script finished. Safe exiting...
[2026-06-12 21:12:33,888.888 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 21:12:33,891.891 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 21:12:33,894.894 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 21:12:35,924.924 INFO    ] ================================================
[2026-06-12 21:12:35,940.940 INFO    ] Launching Daemon at Fri Jun 12 21:12:35 IST 2026
[2026-06-12 21:12:35,951.951 INFO    ] ================================================
[2026-06-12 21:12:36,317.317 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 21:12:36
[2026-06-12 21:12:36,649.649 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 21:12:36,801.801 INFO    ] Initializing speech engine...
[2026-06-12 21:12:36,807.807 INFO    ] 2026-06-12 21:12:36
[2026-06-12 21:12:37,017.017 INFO    ] 2026-06-12 21:12:36
[2026-06-12 21:12:37,047.047 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 21:12:37,172.172 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 21:12:37,235.235 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 21:12:37,374.374 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 21:12:37,433.433 INFO    ] time= 12/06/2026 21:12:37
[2026-06-12 21:12:37,466.466 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 21:12:37,473.473 INFO    ] Checking for existing commands in stream...
[2026-06-12 21:12:37,540.540 INFO    ] No existing commands found in stream
[2026-06-12 21:12:42,555.555 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 21:12:42,558.558 INFO    ] Waiting 3.74 seconds before fallback handling...
[2026-06-12 21:12:46,687.687 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 21:12:46,689.689 INFO    ] Checking for system updates...
[2026-06-12 21:12:46,709.709 INFO    ] 200
[2026-06-12 21:12:46,711.711 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:12:46,743.743 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 21:12:46,745.745 INFO    ] No update needed
[2026-06-12 21:12:46,746.746 INFO    ] Checking for camera pi updates...
[2026-06-12 21:12:46,770.770 INFO    ] 200
[2026-06-12 21:12:46,771.771 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:12:46,796.796 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 21:12:46,930.930 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 21:12:46,932.932 INFO    ] No camera update needed
[2026-06-12 21:12:46,933.933 INFO    ] Script finished. Safe exiting...
[2026-06-12 21:12:46,934.934 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 21:12:46,938.938 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 21:12:46,941.941 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 21:12:48,979.979 INFO    ] ================================================
[2026-06-12 21:12:49,995.995 INFO    ] Launching Daemon at Fri Jun 12 21:12:48 IST 2026
[2026-06-12 21:12:49,006.006 INFO    ] ================================================
[2026-06-12 21:12:49,341.341 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 21:12:49
[2026-06-12 21:12:49,654.654 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 21:12:49,785.785 INFO    ] Initializing speech engine...
[2026-06-12 21:12:49,797.797 INFO    ] 2026-06-12 21:12:49
[2026-06-12 21:12:50,002.002 INFO    ] 2026-06-12 21:12:49
[2026-06-12 21:12:50,031.031 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 21:12:50,215.215 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 21:12:50,225.225 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 21:12:50,363.363 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 21:12:50,420.420 INFO    ] time= 12/06/2026 21:12:50
[2026-06-12 21:12:50,444.444 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 21:12:50,449.449 INFO    ] Checking for existing commands in stream...
[2026-06-12 21:12:50,516.516 INFO    ] No existing commands found in stream
[2026-06-12 21:12:55,530.530 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 21:12:55,533.533 INFO    ] Waiting 2.25 seconds before fallback handling...
[2026-06-12 21:12:58,120.120 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 21:12:58,121.121 INFO    ] Checking for system updates...
[2026-06-12 21:12:58,143.143 INFO    ] 200
[2026-06-12 21:12:58,144.144 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:12:58,173.173 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 21:12:58,175.175 INFO    ] No update needed
[2026-06-12 21:12:58,176.176 INFO    ] Checking for camera pi updates...
[2026-06-12 21:12:58,195.195 INFO    ] 200
[2026-06-12 21:12:58,196.196 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:12:58,220.220 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 21:12:58,281.281 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 21:12:58,282.282 INFO    ] No camera update needed
[2026-06-12 21:12:58,283.283 INFO    ] Script finished. Safe exiting...
[2026-06-12 21:12:58,285.285 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 21:12:58,288.288 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 21:12:58,290.290 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 21:13:00,328.328 INFO    ] ================================================
[2026-06-12 21:13:00,344.344 INFO    ] Launching Daemon at Fri Jun 12 21:13:00 IST 2026
[2026-06-12 21:13:00,355.355 INFO    ] ================================================
[2026-06-12 21:13:00,723.723 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 21:13:00
[2026-06-12 21:13:01,038.038 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 21:13:01,172.172 INFO    ] Initializing speech engine...
[2026-06-12 21:13:01,176.176 INFO    ] 2026-06-12 21:13:01
[2026-06-12 21:13:01,405.405 INFO    ] 2026-06-12 21:13:01
[2026-06-12 21:13:01,429.429 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 21:13:01,568.568 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 21:13:01,636.636 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 21:13:01,779.779 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 21:13:01,782.782 INFO    ] time= 12/06/2026 21:13:01
[2026-06-12 21:13:01,789.789 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 21:13:01,807.807 INFO    ] Checking for existing commands in stream...
[2026-06-12 21:13:01,879.879 INFO    ] No existing commands found in stream
[2026-06-12 21:13:06,889.889 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 21:13:06,892.892 INFO    ] Waiting 3.89 seconds before fallback handling...
[2026-06-12 21:13:11,160.160 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 21:13:11,162.162 INFO    ] Checking for system updates...
[2026-06-12 21:13:11,182.182 INFO    ] 200
[2026-06-12 21:13:11,183.183 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:13:11,215.215 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 21:13:11,217.217 INFO    ] No update needed
[2026-06-12 21:13:11,218.218 INFO    ] Checking for camera pi updates...
[2026-06-12 21:13:11,238.238 INFO    ] 200
[2026-06-12 21:13:11,240.240 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:13:11,263.263 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 21:13:11,311.311 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 21:13:11,312.312 INFO    ] No camera update needed
[2026-06-12 21:13:11,314.314 INFO    ] Script finished. Safe exiting...
[2026-06-12 21:13:11,315.315 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 21:13:11,318.318 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 21:13:11,321.321 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 21:13:13,359.359 INFO    ] ================================================
[2026-06-12 21:13:13,374.374 INFO    ] Launching Daemon at Fri Jun 12 21:13:13 IST 2026
[2026-06-12 21:13:13,386.386 INFO    ] ================================================
[2026-06-12 21:13:13,742.742 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 21:13:13
[2026-06-12 21:13:14,058.058 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 21:13:14,189.189 INFO    ] Initializing speech engine...
[2026-06-12 21:13:14,193.193 INFO    ] 2026-06-12 21:13:14
[2026-06-12 21:13:14,409.409 INFO    ] 2026-06-12 21:13:14
[2026-06-12 21:13:14,438.438 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 21:13:14,622.622 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 21:13:14,632.632 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 21:13:14,756.756 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 21:13:14,813.813 INFO    ] time= 12/06/2026 21:13:14
[2026-06-12 21:13:14,850.850 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 21:13:14,852.852 INFO    ] Checking for existing commands in stream...
[2026-06-12 21:13:14,926.926 INFO    ] No existing commands found in stream
[2026-06-12 21:13:19,935.935 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 21:13:19,938.938 INFO    ] Waiting 1.49 seconds before fallback handling...
[2026-06-12 21:13:21,795.795 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 21:13:21,796.796 INFO    ] Checking for system updates...
[2026-06-12 21:13:21,818.818 INFO    ] 200
[2026-06-12 21:13:21,819.819 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:13:21,849.849 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 21:13:21,851.851 INFO    ] No update needed
[2026-06-12 21:13:21,852.852 INFO    ] Checking for camera pi updates...
[2026-06-12 21:13:21,874.874 INFO    ] 200
[2026-06-12 21:13:21,876.876 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:13:21,900.900 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 21:13:21,949.949 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 21:13:21,951.951 INFO    ] No camera update needed
[2026-06-12 21:13:21,952.952 INFO    ] Script finished. Safe exiting...
[2026-06-12 21:13:21,953.953 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 21:13:21,956.956 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 21:13:21,959.959 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 21:13:24,998.998 INFO    ] ================================================
[2026-06-12 21:13:24,014.014 INFO    ] Launching Daemon at Fri Jun 12 21:13:24 IST 2026
[2026-06-12 21:13:24,024.024 INFO    ] ================================================
[2026-06-12 21:13:24,388.388 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 21:13:24
[2026-06-12 21:13:24,704.704 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 21:13:24,848.848 INFO    ] Initializing speech engine...
[2026-06-12 21:13:24,853.853 INFO    ] 2026-06-12 21:13:24
[2026-06-12 21:13:25,058.058 INFO    ] 2026-06-12 21:13:25
[2026-06-12 21:13:25,085.085 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 21:13:25,269.269 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 21:13:25,278.278 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 21:13:25,413.413 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 21:13:25,474.474 INFO    ] time= 12/06/2026 21:13:25
[2026-06-12 21:13:25,499.499 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 21:13:25,504.504 INFO    ] Checking for existing commands in stream...
[2026-06-12 21:13:25,572.572 INFO    ] No existing commands found in stream
[2026-06-12 21:13:30,604.604 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 21:13:30,607.607 INFO    ] Waiting 0.38 seconds before fallback handling...
[2026-06-12 21:13:31,349.349 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 21:13:31,351.351 INFO    ] Checking for system updates...
[2026-06-12 21:13:31,371.371 INFO    ] 200
[2026-06-12 21:13:31,373.373 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:13:31,403.403 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 21:13:31,404.404 INFO    ] No update needed
[2026-06-12 21:13:31,405.405 INFO    ] Checking for camera pi updates...
[2026-06-12 21:13:31,426.426 INFO    ] 200
[2026-06-12 21:13:31,427.427 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:13:31,453.453 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 21:13:31,499.499 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 21:13:31,501.501 INFO    ] No camera update needed
[2026-06-12 21:13:31,502.502 INFO    ] Script finished. Safe exiting...
[2026-06-12 21:13:31,504.504 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 21:13:31,507.507 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 21:13:31,510.510 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 21:13:33,545.545 INFO    ] ================================================
[2026-06-12 21:13:33,561.561 INFO    ] Launching Daemon at Fri Jun 12 21:13:33 IST 2026
[2026-06-12 21:13:33,572.572 INFO    ] ================================================
[2026-06-12 21:13:33,923.923 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 21:13:33
[2026-06-12 21:13:34,243.243 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 21:13:34,378.378 INFO    ] Initializing speech engine...
[2026-06-12 21:13:34,382.382 INFO    ] 2026-06-12 21:13:34
[2026-06-12 21:13:34,613.613 INFO    ] 2026-06-12 21:13:34
[2026-06-12 21:13:34,644.644 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 21:13:34,977.977 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 21:13:35,034.034 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 21:13:35,184.184 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 21:13:35,186.186 INFO    ] time= 12/06/2026 21:13:35
[2026-06-12 21:13:35,215.215 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 21:13:35,218.218 INFO    ] Checking for existing commands in stream...
[2026-06-12 21:13:35,294.294 INFO    ] No existing commands found in stream
[2026-06-12 21:13:40,305.305 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 21:13:40,308.308 INFO    ] Waiting 1.06 seconds before fallback handling...
[2026-06-12 21:13:41,772.772 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 21:13:41,773.773 INFO    ] Checking for system updates...
[2026-06-12 21:13:41,794.794 INFO    ] 200
[2026-06-12 21:13:41,795.795 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:13:41,826.826 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 21:13:41,827.827 INFO    ] No update needed
[2026-06-12 21:13:41,829.829 INFO    ] Checking for camera pi updates...
[2026-06-12 21:13:41,850.850 INFO    ] 200
[2026-06-12 21:13:41,852.852 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:13:41,876.876 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 21:13:41,931.931 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 21:13:41,932.932 INFO    ] No camera update needed
[2026-06-12 21:13:41,934.934 INFO    ] Script finished. Safe exiting...
[2026-06-12 21:13:41,935.935 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 21:13:41,938.938 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 21:13:41,940.940 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 21:13:43,982.982 INFO    ] ================================================
[2026-06-12 21:13:44,997.997 INFO    ] Launching Daemon at Fri Jun 12 21:13:43 IST 2026
[2026-06-12 21:13:44,008.008 INFO    ] ================================================
[2026-06-12 21:13:44,359.359 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 21:13:44
[2026-06-12 21:13:44,670.670 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 21:13:44,805.805 INFO    ] Initializing speech engine...
[2026-06-12 21:13:44,818.818 INFO    ] 2026-06-12 21:13:44
[2026-06-12 21:13:45,034.034 INFO    ] 2026-06-12 21:13:45
[2026-06-12 21:13:45,064.064 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 21:13:45,256.256 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 21:13:45,263.263 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 21:13:45,401.401 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 21:13:45,467.467 INFO    ] time= 12/06/2026 21:13:45
[2026-06-12 21:13:45,496.496 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 21:13:45,507.507 INFO    ] Checking for existing commands in stream...
[2026-06-12 21:13:45,583.583 INFO    ] No existing commands found in stream
[2026-06-12 21:13:50,591.591 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 21:13:50,594.594 INFO    ] Waiting 0.15 seconds before fallback handling...
[2026-06-12 21:13:51,160.160 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 21:13:51,162.162 INFO    ] Checking for system updates...
[2026-06-12 21:13:51,182.182 INFO    ] 200
[2026-06-12 21:13:51,184.184 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:13:51,216.216 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 21:13:51,217.217 INFO    ] No update needed
[2026-06-12 21:13:51,218.218 INFO    ] Checking for camera pi updates...
[2026-06-12 21:13:51,241.241 INFO    ] 200
[2026-06-12 21:13:51,242.242 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:13:51,267.267 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 21:13:51,314.314 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 21:13:51,316.316 INFO    ] No camera update needed
[2026-06-12 21:13:51,317.317 INFO    ] Script finished. Safe exiting...
[2026-06-12 21:13:51,318.318 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 21:13:51,322.322 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 21:13:51,324.324 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 21:13:53,363.363 INFO    ] ================================================
[2026-06-12 21:13:53,379.379 INFO    ] Launching Daemon at Fri Jun 12 21:13:53 IST 2026
[2026-06-12 21:13:53,394.394 INFO    ] ================================================
[2026-06-12 21:13:53,784.784 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 21:13:53
[2026-06-12 21:13:54,112.112 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 21:13:54,244.244 INFO    ] Initializing speech engine...
[2026-06-12 21:13:54,257.257 INFO    ] 2026-06-12 21:13:54
[2026-06-12 21:13:54,464.464 INFO    ] 2026-06-12 21:13:54
[2026-06-12 21:13:54,493.493 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 21:13:54,626.626 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 21:13:54,679.679 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 21:13:54,821.821 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 21:13:54,883.883 INFO    ] time= 12/06/2026 21:13:54
[2026-06-12 21:13:54,906.906 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 21:13:54,908.908 INFO    ] Checking for existing commands in stream...
[2026-06-12 21:13:54,981.981 INFO    ] No existing commands found in stream
[2026-06-12 21:13:59,995.995 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 21:13:59,998.998 INFO    ] Waiting 2.94 seconds before fallback handling...
[2026-06-12 21:14:03,230.230 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 21:14:03,232.232 INFO    ] Checking for system updates...
[2026-06-12 21:14:03,252.252 INFO    ] 200
[2026-06-12 21:14:03,253.253 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:14:03,285.285 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 21:14:03,286.286 INFO    ] No update needed
[2026-06-12 21:14:03,288.288 INFO    ] Checking for camera pi updates...
[2026-06-12 21:14:03,307.307 INFO    ] 200
[2026-06-12 21:14:03,308.308 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:14:03,333.333 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 21:14:03,387.387 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 21:14:03,388.388 INFO    ] No camera update needed
[2026-06-12 21:14:03,389.389 INFO    ] Script finished. Safe exiting...
[2026-06-12 21:14:03,391.391 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 21:14:03,394.394 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 21:14:03,396.396 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 21:14:05,437.437 INFO    ] ================================================
[2026-06-12 21:14:05,453.453 INFO    ] Launching Daemon at Fri Jun 12 21:14:05 IST 2026
[2026-06-12 21:14:05,464.464 INFO    ] ================================================
[2026-06-12 21:14:05,840.840 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 21:14:05
[2026-06-12 21:14:06,171.171 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 21:14:06,302.302 INFO    ] Initializing speech engine...
[2026-06-12 21:14:06,306.306 INFO    ] 2026-06-12 21:14:06
[2026-06-12 21:14:06,521.521 INFO    ] 2026-06-12 21:14:06
[2026-06-12 21:14:06,550.550 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 21:14:06,709.709 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 21:14:06,736.736 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 21:14:06,874.874 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 21:14:06,941.941 INFO    ] time= 12/06/2026 21:14:06
[2026-06-12 21:14:06,964.964 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 21:14:06,971.971 INFO    ] Checking for existing commands in stream...
[2026-06-12 21:14:07,038.038 INFO    ] No existing commands found in stream
[2026-06-12 21:14:12,052.052 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 21:14:12,055.055 INFO    ] Waiting 3.82 seconds before fallback handling...
[2026-06-12 21:14:16,278.278 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 21:14:16,280.280 INFO    ] Checking for system updates...
[2026-06-12 21:14:16,301.301 INFO    ] 200
[2026-06-12 21:14:16,302.302 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:14:16,332.332 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 21:14:16,334.334 INFO    ] No update needed
[2026-06-12 21:14:16,335.335 INFO    ] Checking for camera pi updates...
[2026-06-12 21:14:16,358.358 INFO    ] 200
[2026-06-12 21:14:16,359.359 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:14:16,382.382 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 21:14:16,436.436 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 21:14:16,438.438 INFO    ] No camera update needed
[2026-06-12 21:14:16,439.439 INFO    ] Script finished. Safe exiting...
[2026-06-12 21:14:16,440.440 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 21:14:16,443.443 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 21:14:16,446.446 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 21:14:18,483.483 INFO    ] ================================================
[2026-06-12 21:14:18,499.499 INFO    ] Launching Daemon at Fri Jun 12 21:14:18 IST 2026
[2026-06-12 21:14:18,510.510 INFO    ] ================================================
[2026-06-12 21:14:18,875.875 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 21:14:18
[2026-06-12 21:14:19,193.193 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 21:14:19,337.337 INFO    ] Initializing speech engine...
[2026-06-12 21:14:19,343.343 INFO    ] 2026-06-12 21:14:19
[2026-06-12 21:14:19,545.545 INFO    ] 2026-06-12 21:14:19
[2026-06-12 21:14:19,574.574 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 21:14:19,757.757 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 21:14:19,766.766 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 21:14:19,892.892 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 21:14:19,954.954 INFO    ] time= 12/06/2026 21:14:19
[2026-06-12 21:14:19,986.986 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 21:14:19,992.992 INFO    ] Checking for existing commands in stream...
[2026-06-12 21:14:20,060.060 INFO    ] No existing commands found in stream
[2026-06-12 21:14:25,089.089 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 21:14:25,092.092 INFO    ] Waiting 3.01 seconds before fallback handling...
[2026-06-12 21:14:28,469.469 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 21:14:28,471.471 INFO    ] Checking for system updates...
[2026-06-12 21:14:28,494.494 INFO    ] 200
[2026-06-12 21:14:28,495.495 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:14:28,525.525 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 21:14:28,526.526 INFO    ] No update needed
[2026-06-12 21:14:28,528.528 INFO    ] Checking for camera pi updates...
[2026-06-12 21:14:28,550.550 INFO    ] 200
[2026-06-12 21:14:28,552.552 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:14:28,576.576 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 21:14:28,618.618 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 21:14:28,619.619 INFO    ] No camera update needed
[2026-06-12 21:14:28,621.621 INFO    ] Script finished. Safe exiting...
[2026-06-12 21:14:28,622.622 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 21:14:28,625.625 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 21:14:28,628.628 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 21:14:30,665.665 INFO    ] ================================================
[2026-06-12 21:14:30,681.681 INFO    ] Launching Daemon at Fri Jun 12 21:14:30 IST 2026
[2026-06-12 21:14:30,692.692 INFO    ] ================================================
[2026-06-12 21:14:31,066.066 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 21:14:31
[2026-06-12 21:14:31,384.384 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 21:14:31,519.519 INFO    ] Initializing speech engine...
[2026-06-12 21:14:31,524.524 INFO    ] 2026-06-12 21:14:31
[2026-06-12 21:14:31,753.753 INFO    ] 2026-06-12 21:14:31
[2026-06-12 21:14:31,784.784 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 21:14:31,981.981 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 21:14:31,991.991 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 21:14:32,155.155 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 21:14:32,220.220 INFO    ] time= 12/06/2026 21:14:32
[2026-06-12 21:14:32,254.254 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 21:14:32,261.261 INFO    ] Checking for existing commands in stream...
[2026-06-12 21:14:32,335.335 INFO    ] No existing commands found in stream
[2026-06-12 21:14:37,349.349 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 21:14:37,352.352 INFO    ] Waiting 2.44 seconds before fallback handling...
[2026-06-12 21:14:40,159.159 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 21:14:40,161.161 INFO    ] Checking for system updates...
[2026-06-12 21:14:40,181.181 INFO    ] 200
[2026-06-12 21:14:40,182.182 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:14:40,212.212 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 21:14:40,213.213 INFO    ] No update needed
[2026-06-12 21:14:40,215.215 INFO    ] Checking for camera pi updates...
[2026-06-12 21:14:40,235.235 INFO    ] 200
[2026-06-12 21:14:40,236.236 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:14:40,259.259 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 21:14:40,302.302 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 21:14:40,304.304 INFO    ] No camera update needed
[2026-06-12 21:14:40,305.305 INFO    ] Script finished. Safe exiting...
[2026-06-12 21:14:40,306.306 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 21:14:40,309.309 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 21:14:40,312.312 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 21:14:42,350.350 INFO    ] ================================================
[2026-06-12 21:14:42,366.366 INFO    ] Launching Daemon at Fri Jun 12 21:14:42 IST 2026
[2026-06-12 21:14:42,376.376 INFO    ] ================================================
[2026-06-12 21:14:42,762.762 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 21:14:42
[2026-06-12 21:14:43,099.099 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 21:14:43,244.244 INFO    ] Initializing speech engine...
[2026-06-12 21:14:43,255.255 INFO    ] 2026-06-12 21:14:43
[2026-06-12 21:14:43,465.465 INFO    ] 2026-06-12 21:14:43
[2026-06-12 21:14:43,493.493 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 21:14:43,680.680 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 21:14:43,688.688 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 21:14:43,819.819 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 21:14:43,888.888 INFO    ] time= 12/06/2026 21:14:43
[2026-06-12 21:14:43,913.913 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 21:14:43,918.918 INFO    ] Checking for existing commands in stream...
[2026-06-12 21:14:44,010.010 INFO    ] No existing commands found in stream
[2026-06-12 21:14:49,030.030 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 21:14:49,033.033 INFO    ] Waiting 1.65 seconds before fallback handling...
[2026-06-12 21:14:51,088.088 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 21:14:51,090.090 INFO    ] Checking for system updates...
[2026-06-12 21:14:51,112.112 INFO    ] 200
[2026-06-12 21:14:51,113.113 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:14:51,143.143 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 21:14:51,144.144 INFO    ] No update needed
[2026-06-12 21:14:51,146.146 INFO    ] Checking for camera pi updates...
[2026-06-12 21:14:51,165.165 INFO    ] 200
[2026-06-12 21:14:51,166.166 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:14:51,192.192 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 21:14:51,330.330 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 21:14:51,332.332 INFO    ] No camera update needed
[2026-06-12 21:14:51,333.333 INFO    ] Script finished. Safe exiting...
[2026-06-12 21:14:51,334.334 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 21:14:51,337.337 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 21:14:51,340.340 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 21:14:53,377.377 INFO    ] ================================================
[2026-06-12 21:14:53,393.393 INFO    ] Launching Daemon at Fri Jun 12 21:14:53 IST 2026
[2026-06-12 21:14:53,404.404 INFO    ] ================================================
[2026-06-12 21:14:53,730.730 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 21:14:53
[2026-06-12 21:14:54,042.042 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 21:14:54,176.176 INFO    ] Initializing speech engine...
[2026-06-12 21:14:54,179.179 INFO    ] 2026-06-12 21:14:54
[2026-06-12 21:14:54,401.401 INFO    ] 2026-06-12 21:14:54
[2026-06-12 21:14:54,432.432 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 21:14:54,617.617 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 21:14:54,626.626 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 21:14:54,750.750 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 21:14:54,806.806 INFO    ] time= 12/06/2026 21:14:54
[2026-06-12 21:14:54,850.850 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 21:14:54,852.852 INFO    ] Checking for existing commands in stream...
[2026-06-12 21:14:54,947.947 INFO    ] No existing commands found in stream
[2026-06-12 21:14:59,956.956 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 21:14:59,959.959 INFO    ] Waiting 1.70 seconds before fallback handling...
[2026-06-12 21:15:01,988.988 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 21:15:01,990.990 INFO    ] Checking for system updates...
[2026-06-12 21:15:02,021.021 INFO    ] 200
[2026-06-12 21:15:02,024.024 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:15:02,066.066 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 21:15:02,068.068 INFO    ] No update needed
[2026-06-12 21:15:02,071.071 INFO    ] Checking for camera pi updates...
[2026-06-12 21:15:02,095.095 INFO    ] 200
[2026-06-12 21:15:02,097.097 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:15:02,126.126 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 21:15:02,165.165 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 21:15:02,167.167 INFO    ] No camera update needed
[2026-06-12 21:15:02,170.170 INFO    ] Script finished. Safe exiting...
[2026-06-12 21:15:02,172.172 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 21:15:02,176.176 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 21:15:02,180.180 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 21:15:04,226.226 INFO    ] ================================================
[2026-06-12 21:15:04,242.242 INFO    ] Launching Daemon at Fri Jun 12 21:15:04 IST 2026
[2026-06-12 21:15:04,253.253 INFO    ] ================================================
[2026-06-12 21:15:04,583.583 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 21:15:04
[2026-06-12 21:15:04,901.901 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 21:15:05,035.035 INFO    ] Initializing speech engine...
[2026-06-12 21:15:05,040.040 INFO    ] 2026-06-12 21:15:05
[2026-06-12 21:15:05,270.270 INFO    ] 2026-06-12 21:15:05
[2026-06-12 21:15:05,299.299 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 21:15:05,496.496 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 21:15:05,507.507 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 21:15:05,649.649 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 21:15:05,715.715 INFO    ] time= 12/06/2026 21:15:05
[2026-06-12 21:15:05,749.749 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 21:15:05,751.751 INFO    ] Checking for existing commands in stream...
[2026-06-12 21:15:05,823.823 INFO    ] No existing commands found in stream
[2026-06-12 21:15:10,832.832 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 21:15:10,835.835 INFO    ] Waiting 0.07 seconds before fallback handling...
[2026-06-12 21:15:11,264.264 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 21:15:11,265.265 INFO    ] Checking for system updates...
[2026-06-12 21:15:11,286.286 INFO    ] 200
[2026-06-12 21:15:11,287.287 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:15:11,319.319 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 21:15:11,320.320 INFO    ] No update needed
[2026-06-12 21:15:11,322.322 INFO    ] Checking for camera pi updates...
[2026-06-12 21:15:11,342.342 INFO    ] 200
[2026-06-12 21:15:11,343.343 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:15:11,366.366 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 21:15:11,414.414 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 21:15:11,415.415 INFO    ] No camera update needed
[2026-06-12 21:15:11,417.417 INFO    ] Script finished. Safe exiting...
[2026-06-12 21:15:11,418.418 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 21:15:11,421.421 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 21:15:11,424.424 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 21:15:13,462.462 INFO    ] ================================================
[2026-06-12 21:15:13,477.477 INFO    ] Launching Daemon at Fri Jun 12 21:15:13 IST 2026
[2026-06-12 21:15:13,488.488 INFO    ] ================================================
[2026-06-12 21:15:13,851.851 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 21:15:13
[2026-06-12 21:15:14,164.164 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 21:15:14,296.296 INFO    ] Initializing speech engine...
[2026-06-12 21:15:14,300.300 INFO    ] 2026-06-12 21:15:14
[2026-06-12 21:15:14,521.521 INFO    ] 2026-06-12 21:15:14
[2026-06-12 21:15:14,548.548 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 21:15:14,735.735 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 21:15:14,745.745 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 21:15:14,874.874 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 21:15:14,942.942 INFO    ] time= 12/06/2026 21:15:14
[2026-06-12 21:15:14,966.966 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 21:15:14,972.972 INFO    ] Checking for existing commands in stream...
[2026-06-12 21:15:15,039.039 INFO    ] No existing commands found in stream
[2026-06-12 21:15:20,048.048 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 21:15:20,051.051 INFO    ] Waiting 2.32 seconds before fallback handling...
[2026-06-12 21:15:22,748.748 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 21:15:22,750.750 INFO    ] Checking for system updates...
[2026-06-12 21:15:22,772.772 INFO    ] 200
[2026-06-12 21:15:22,773.773 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:15:22,803.803 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 21:15:22,804.804 INFO    ] No update needed
[2026-06-12 21:15:22,806.806 INFO    ] Checking for camera pi updates...
[2026-06-12 21:15:22,824.824 INFO    ] 200
[2026-06-12 21:15:22,826.826 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:15:22,850.850 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 21:15:22,902.902 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 21:15:22,904.904 INFO    ] No camera update needed
[2026-06-12 21:15:22,905.905 INFO    ] Script finished. Safe exiting...
[2026-06-12 21:15:22,906.906 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 21:15:22,909.909 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 21:15:22,912.912 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 21:15:24,950.950 INFO    ] ================================================
[2026-06-12 21:15:24,965.965 INFO    ] Launching Daemon at Fri Jun 12 21:15:24 IST 2026
[2026-06-12 21:15:24,976.976 INFO    ] ================================================
[2026-06-12 21:15:25,338.338 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 21:15:25
[2026-06-12 21:15:25,654.654 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 21:15:25,787.787 INFO    ] Initializing speech engine...
[2026-06-12 21:15:25,792.792 INFO    ] 2026-06-12 21:15:25
[2026-06-12 21:15:26,021.021 INFO    ] 2026-06-12 21:15:25
[2026-06-12 21:15:26,053.053 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 21:15:26,247.247 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 21:15:26,251.251 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 21:15:26,397.397 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 21:15:26,466.466 INFO    ] time= 12/06/2026 21:15:26
[2026-06-12 21:15:26,494.494 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 21:15:26,500.500 INFO    ] Checking for existing commands in stream...
[2026-06-12 21:15:26,570.570 INFO    ] No existing commands found in stream
[2026-06-12 21:15:31,580.580 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 21:15:31,582.582 INFO    ] Waiting 3.67 seconds before fallback handling...
[2026-06-12 21:15:35,620.620 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 21:15:35,621.621 INFO    ] Checking for system updates...
[2026-06-12 21:15:35,643.643 INFO    ] 200
[2026-06-12 21:15:35,644.644 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:15:35,679.679 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 21:15:35,680.680 INFO    ] No update needed
[2026-06-12 21:15:35,682.682 INFO    ] Checking for camera pi updates...
[2026-06-12 21:15:35,702.702 INFO    ] 200
[2026-06-12 21:15:35,703.703 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:15:35,727.727 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 21:15:35,768.768 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 21:15:35,769.769 INFO    ] No camera update needed
[2026-06-12 21:15:35,771.771 INFO    ] Script finished. Safe exiting...
[2026-06-12 21:15:35,772.772 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 21:15:35,775.775 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 21:15:35,778.778 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 21:15:37,817.817 INFO    ] ================================================
[2026-06-12 21:15:37,832.832 INFO    ] Launching Daemon at Fri Jun 12 21:15:37 IST 2026
[2026-06-12 21:15:37,843.843 INFO    ] ================================================
[2026-06-12 21:15:38,217.217 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 21:15:38
[2026-06-12 21:15:38,532.532 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 21:15:38,663.663 INFO    ] Initializing speech engine...
[2026-06-12 21:15:38,671.671 INFO    ] 2026-06-12 21:15:38
[2026-06-12 21:15:38,884.884 INFO    ] 2026-06-12 21:15:38
[2026-06-12 21:15:38,913.913 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 21:15:39,098.098 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 21:15:39,107.107 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 21:15:39,237.237 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 21:15:39,305.305 INFO    ] time= 12/06/2026 21:15:39
[2026-06-12 21:15:39,330.330 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 21:15:39,335.335 INFO    ] Checking for existing commands in stream...
[2026-06-12 21:15:39,405.405 INFO    ] No existing commands found in stream
[2026-06-12 21:15:44,437.437 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 21:15:44,440.440 INFO    ] Waiting 3.22 seconds before fallback handling...
[2026-06-12 21:15:48,061.061 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 21:15:48,063.063 INFO    ] Checking for system updates...
[2026-06-12 21:15:48,084.084 INFO    ] 200
[2026-06-12 21:15:48,086.086 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:15:48,119.119 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 21:15:48,121.121 INFO    ] No update needed
[2026-06-12 21:15:48,122.122 INFO    ] Checking for camera pi updates...
[2026-06-12 21:15:48,142.142 INFO    ] 200
[2026-06-12 21:15:48,143.143 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:15:48,166.166 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 21:15:48,220.220 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 21:15:48,221.221 INFO    ] No camera update needed
[2026-06-12 21:15:48,223.223 INFO    ] Script finished. Safe exiting...
[2026-06-12 21:15:48,224.224 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 21:15:48,227.227 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 21:15:48,230.230 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 21:15:50,269.269 INFO    ] ================================================
[2026-06-12 21:15:50,285.285 INFO    ] Launching Daemon at Fri Jun 12 21:15:50 IST 2026
[2026-06-12 21:15:50,295.295 INFO    ] ================================================
[2026-06-12 21:15:50,662.662 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 21:15:50
[2026-06-12 21:15:50,995.995 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 21:15:51,145.145 INFO    ] Initializing speech engine...
[2026-06-12 21:15:51,151.151 INFO    ] 2026-06-12 21:15:51
[2026-06-12 21:15:51,361.361 INFO    ] 2026-06-12 21:15:51
[2026-06-12 21:15:51,390.390 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 21:15:51,578.578 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 21:15:51,587.587 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 21:15:51,734.734 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 21:15:51,789.789 INFO    ] time= 12/06/2026 21:15:51
[2026-06-12 21:15:51,812.812 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 21:15:51,818.818 INFO    ] Checking for existing commands in stream...
[2026-06-12 21:15:51,886.886 INFO    ] No existing commands found in stream
[2026-06-12 21:15:56,901.901 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 21:15:56,904.904 INFO    ] Waiting 2.03 seconds before fallback handling...
[2026-06-12 21:15:59,283.283 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 21:15:59,284.284 INFO    ] Checking for system updates...
[2026-06-12 21:15:59,306.306 INFO    ] 200
[2026-06-12 21:15:59,308.308 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:15:59,340.340 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 21:15:59,342.342 INFO    ] No update needed
[2026-06-12 21:15:59,343.343 INFO    ] Checking for camera pi updates...
[2026-06-12 21:15:59,364.364 INFO    ] 200
[2026-06-12 21:15:59,365.365 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:15:59,391.391 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 21:15:59,437.437 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 21:15:59,439.439 INFO    ] No camera update needed
[2026-06-12 21:15:59,440.440 INFO    ] Script finished. Safe exiting...
[2026-06-12 21:15:59,441.441 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 21:15:59,445.445 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 21:15:59,447.447 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 21:16:01,486.486 INFO    ] ================================================
[2026-06-12 21:16:01,501.501 INFO    ] Launching Daemon at Fri Jun 12 21:16:01 IST 2026
[2026-06-12 21:16:01,512.512 INFO    ] ================================================
[2026-06-12 21:16:01,954.954 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 21:16:01
[2026-06-12 21:16:02,317.317 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 21:16:02,488.488 INFO    ] Initializing speech engine...
[2026-06-12 21:16:02,502.502 INFO    ] 2026-06-12 21:16:02
[2026-06-12 21:16:02,756.756 INFO    ] 2026-06-12 21:16:02
[2026-06-12 21:16:02,786.786 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 21:16:02,922.922 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 21:16:02,975.975 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 21:16:03,128.128 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 21:16:03,180.180 INFO    ] time= 12/06/2026 21:16:03
[2026-06-12 21:16:03,233.233 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 21:16:03,235.235 INFO    ] Checking for existing commands in stream...
[2026-06-12 21:16:03,336.336 INFO    ] No existing commands found in stream
[2026-06-12 21:16:08,351.351 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 21:16:08,353.353 INFO    ] Waiting 0.16 seconds before fallback handling...
[2026-06-12 21:16:08,861.861 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 21:16:08,863.863 INFO    ] Checking for system updates...
[2026-06-12 21:16:08,888.888 INFO    ] 200
[2026-06-12 21:16:08,890.890 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:16:08,924.924 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 21:16:08,926.926 INFO    ] No update needed
[2026-06-12 21:16:08,927.927 INFO    ] Checking for camera pi updates...
[2026-06-12 21:16:08,949.949 INFO    ] 200
[2026-06-12 21:16:08,951.951 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:16:08,977.977 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 21:16:09,031.031 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 21:16:09,033.033 INFO    ] No camera update needed
[2026-06-12 21:16:09,034.034 INFO    ] Script finished. Safe exiting...
[2026-06-12 21:16:09,036.036 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 21:16:09,040.040 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 21:16:09,043.043 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 21:16:11,075.075 INFO    ] ================================================
[2026-06-12 21:16:11,090.090 INFO    ] Launching Daemon at Fri Jun 12 21:16:11 IST 2026
[2026-06-12 21:16:11,100.100 INFO    ] ================================================
[2026-06-12 21:16:11,421.421 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 21:16:11
[2026-06-12 21:16:11,739.739 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 21:16:11,882.882 INFO    ] Initializing speech engine...
[2026-06-12 21:16:11,887.887 INFO    ] 2026-06-12 21:16:11
[2026-06-12 21:16:12,090.090 INFO    ] 2026-06-12 21:16:12
[2026-06-12 21:16:12,120.120 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 21:16:12,302.302 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 21:16:12,310.310 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 21:16:12,454.454 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 21:16:12,506.506 INFO    ] time= 12/06/2026 21:16:12
[2026-06-12 21:16:12,528.528 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 21:16:12,535.535 INFO    ] Checking for existing commands in stream...
[2026-06-12 21:16:12,601.601 INFO    ] No existing commands found in stream
[2026-06-12 21:16:17,610.610 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 21:16:17,613.613 INFO    ] Waiting 0.54 seconds before fallback handling...
[2026-06-12 21:16:18,491.491 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 21:16:18,492.492 INFO    ] Checking for system updates...
[2026-06-12 21:16:18,512.512 INFO    ] 200
[2026-06-12 21:16:18,514.514 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:16:18,544.544 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 21:16:18,545.545 INFO    ] No update needed
[2026-06-12 21:16:18,547.547 INFO    ] Checking for camera pi updates...
[2026-06-12 21:16:18,567.567 INFO    ] 200
[2026-06-12 21:16:18,568.568 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:16:18,591.591 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 21:16:18,642.642 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 21:16:18,643.643 INFO    ] No camera update needed
[2026-06-12 21:16:18,644.644 INFO    ] Script finished. Safe exiting...
[2026-06-12 21:16:18,645.645 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 21:16:18,648.648 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 21:16:18,651.651 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 21:16:20,689.689 INFO    ] ================================================
[2026-06-12 21:16:20,704.704 INFO    ] Launching Daemon at Fri Jun 12 21:16:20 IST 2026
[2026-06-12 21:16:20,715.715 INFO    ] ================================================
[2026-06-12 21:16:21,070.070 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 21:16:21
[2026-06-12 21:16:21,402.402 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 21:16:21,541.541 INFO    ] Initializing speech engine...
[2026-06-12 21:16:21,555.555 INFO    ] 2026-06-12 21:16:21
[2026-06-12 21:16:21,765.765 INFO    ] 2026-06-12 21:16:21
[2026-06-12 21:16:21,795.795 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 21:16:21,981.981 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 21:16:21,991.991 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 21:16:22,131.131 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 21:16:22,189.189 INFO    ] time= 12/06/2026 21:16:22
[2026-06-12 21:16:22,213.213 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 21:16:22,219.219 INFO    ] Checking for existing commands in stream...
[2026-06-12 21:16:22,287.287 INFO    ] No existing commands found in stream
[2026-06-12 21:16:27,301.301 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 21:16:27,304.304 INFO    ] Waiting 1.99 seconds before fallback handling...
[2026-06-12 21:16:29,670.670 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 21:16:29,672.672 INFO    ] Checking for system updates...
[2026-06-12 21:16:29,693.693 INFO    ] 200
[2026-06-12 21:16:29,695.695 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:16:29,728.728 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 21:16:29,729.729 INFO    ] No update needed
[2026-06-12 21:16:29,731.731 INFO    ] Checking for camera pi updates...
[2026-06-12 21:16:29,750.750 INFO    ] 200
[2026-06-12 21:16:29,751.751 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:16:29,775.775 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 21:16:29,816.816 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 21:16:29,818.818 INFO    ] No camera update needed
[2026-06-12 21:16:29,819.819 INFO    ] Script finished. Safe exiting...
[2026-06-12 21:16:29,821.821 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 21:16:29,824.824 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 21:16:29,827.827 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 21:16:31,866.866 INFO    ] ================================================
[2026-06-12 21:16:31,883.883 INFO    ] Launching Daemon at Fri Jun 12 21:16:31 IST 2026
[2026-06-12 21:16:31,892.892 INFO    ] ================================================
[2026-06-12 21:16:32,220.220 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 21:16:32
[2026-06-12 21:16:32,562.562 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 21:16:32,705.705 INFO    ] Initializing speech engine...
[2026-06-12 21:16:32,710.710 INFO    ] 2026-06-12 21:16:32
[2026-06-12 21:16:32,912.912 INFO    ] 2026-06-12 21:16:32
[2026-06-12 21:16:32,942.942 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 21:16:33,124.124 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 21:16:33,132.132 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 21:16:33,260.260 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 21:16:33,325.325 INFO    ] time= 12/06/2026 21:16:33
[2026-06-12 21:16:33,326.326 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 21:16:33,328.328 INFO    ] Checking for existing commands in stream...
[2026-06-12 21:16:33,392.392 INFO    ] No existing commands found in stream
[2026-06-12 21:16:38,401.401 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 21:16:38,404.404 INFO    ] Waiting 0.12 seconds before fallback handling...
[2026-06-12 21:16:38,870.870 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 21:16:38,872.872 INFO    ] Checking for system updates...
[2026-06-12 21:16:38,892.892 INFO    ] 200
[2026-06-12 21:16:38,893.893 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:16:38,925.925 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 21:16:38,926.926 INFO    ] No update needed
[2026-06-12 21:16:38,927.927 INFO    ] Checking for camera pi updates...
[2026-06-12 21:16:38,947.947 INFO    ] 200
[2026-06-12 21:16:38,949.949 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:16:38,971.971 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 21:16:39,021.021 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 21:16:39,022.022 INFO    ] No camera update needed
[2026-06-12 21:16:39,023.023 INFO    ] Script finished. Safe exiting...
[2026-06-12 21:16:39,025.025 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 21:16:39,028.028 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 21:16:39,030.030 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 21:16:41,070.070 INFO    ] ================================================
[2026-06-12 21:16:41,085.085 INFO    ] Launching Daemon at Fri Jun 12 21:16:41 IST 2026
[2026-06-12 21:16:41,096.096 INFO    ] ================================================
[2026-06-12 21:16:41,463.463 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 21:16:41
[2026-06-12 21:16:41,777.777 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 21:16:41,921.921 INFO    ] Initializing speech engine...
[2026-06-12 21:16:41,927.927 INFO    ] 2026-06-12 21:16:41
[2026-06-12 21:16:42,138.138 INFO    ] 2026-06-12 21:16:42
[2026-06-12 21:16:42,168.168 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 21:16:42,361.361 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 21:16:42,365.365 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 21:16:42,504.504 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 21:16:42,572.572 INFO    ] time= 12/06/2026 21:16:42
[2026-06-12 21:16:42,603.603 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 21:16:42,610.610 INFO    ] Checking for existing commands in stream...
[2026-06-12 21:16:42,681.681 INFO    ] No existing commands found in stream
[2026-06-12 21:16:47,690.690 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 21:16:47,693.693 INFO    ] Waiting 3.97 seconds before fallback handling...
[2026-06-12 21:16:52,053.053 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 21:16:52,054.054 INFO    ] Checking for system updates...
[2026-06-12 21:16:52,074.074 INFO    ] 200
[2026-06-12 21:16:52,076.076 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:16:52,108.108 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 21:16:52,109.109 INFO    ] No update needed
[2026-06-12 21:16:52,111.111 INFO    ] Checking for camera pi updates...
[2026-06-12 21:16:52,131.131 INFO    ] 200
[2026-06-12 21:16:52,132.132 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:16:52,156.156 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 21:16:52,203.203 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 21:16:52,204.204 INFO    ] No camera update needed
[2026-06-12 21:16:52,205.205 INFO    ] Script finished. Safe exiting...
[2026-06-12 21:16:52,206.206 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 21:16:52,209.209 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 21:16:52,212.212 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 21:16:54,250.250 INFO    ] ================================================
[2026-06-12 21:16:54,265.265 INFO    ] Launching Daemon at Fri Jun 12 21:16:54 IST 2026
[2026-06-12 21:16:54,276.276 INFO    ] ================================================
[2026-06-12 21:16:54,643.643 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 21:16:54
[2026-06-12 21:16:54,956.956 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 21:16:55,098.098 INFO    ] Initializing speech engine...
[2026-06-12 21:16:55,103.103 INFO    ] 2026-06-12 21:16:55
[2026-06-12 21:16:55,305.305 INFO    ] 2026-06-12 21:16:55
[2026-06-12 21:16:55,333.333 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 21:16:55,478.478 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 21:16:55,521.521 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 21:16:55,651.651 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 21:16:55,717.717 INFO    ] time= 12/06/2026 21:16:55
[2026-06-12 21:16:55,748.748 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 21:16:55,755.755 INFO    ] Checking for existing commands in stream...
[2026-06-12 21:16:55,822.822 INFO    ] No existing commands found in stream
[2026-06-12 21:17:00,831.831 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 21:17:00,835.835 INFO    ] Waiting 2.36 seconds before fallback handling...
[2026-06-12 21:17:03,506.506 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 21:17:03,509.509 INFO    ] Checking for system updates...
[2026-06-12 21:17:03,546.546 INFO    ] 200
[2026-06-12 21:17:03,549.549 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:17:03,603.603 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 21:17:03,605.605 INFO    ] No update needed
[2026-06-12 21:17:03,608.608 INFO    ] Checking for camera pi updates...
[2026-06-12 21:17:03,642.642 INFO    ] 200
[2026-06-12 21:17:03,645.645 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:17:03,686.686 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 21:17:03,729.729 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 21:17:03,730.730 INFO    ] No camera update needed
[2026-06-12 21:17:03,732.732 INFO    ] Script finished. Safe exiting...
[2026-06-12 21:17:03,733.733 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 21:17:03,736.736 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 21:17:03,739.739 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 21:17:05,778.778 INFO    ] ================================================
[2026-06-12 21:17:05,793.793 INFO    ] Launching Daemon at Fri Jun 12 21:17:05 IST 2026
[2026-06-12 21:17:05,805.805 INFO    ] ================================================
[2026-06-12 21:17:06,215.215 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 21:17:06
[2026-06-12 21:17:06,553.553 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 21:17:06,709.709 INFO    ] Initializing speech engine...
[2026-06-12 21:17:06,716.716 INFO    ] 2026-06-12 21:17:06
[2026-06-12 21:17:06,921.921 INFO    ] 2026-06-12 21:17:06
[2026-06-12 21:17:06,950.950 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 21:17:07,137.137 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 21:17:07,140.140 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 21:17:07,290.290 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 21:17:07,348.348 INFO    ] time= 12/06/2026 21:17:07
[2026-06-12 21:17:07,372.372 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 21:17:07,379.379 INFO    ] Checking for existing commands in stream...
[2026-06-12 21:17:07,447.447 INFO    ] No existing commands found in stream
[2026-06-12 21:17:12,461.461 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 21:17:12,465.465 INFO    ] Waiting 0.20 seconds before fallback handling...
[2026-06-12 21:17:13,032.032 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 21:17:13,034.034 INFO    ] Checking for system updates...
[2026-06-12 21:17:13,054.054 INFO    ] 200
[2026-06-12 21:17:13,056.056 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:17:13,086.086 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 21:17:13,088.088 INFO    ] No update needed
[2026-06-12 21:17:13,089.089 INFO    ] Checking for camera pi updates...
[2026-06-12 21:17:13,109.109 INFO    ] 200
[2026-06-12 21:17:13,111.111 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:17:13,136.136 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 21:17:13,188.188 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 21:17:13,189.189 INFO    ] No camera update needed
[2026-06-12 21:17:13,191.191 INFO    ] Script finished. Safe exiting...
[2026-06-12 21:17:13,192.192 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 21:17:13,195.195 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 21:17:13,198.198 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 21:17:15,237.237 INFO    ] ================================================
[2026-06-12 21:17:15,253.253 INFO    ] Launching Daemon at Fri Jun 12 21:17:15 IST 2026
[2026-06-12 21:17:15,263.263 INFO    ] ================================================
[2026-06-12 21:17:15,629.629 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 21:17:15
[2026-06-12 21:17:15,968.968 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 21:17:16,120.120 INFO    ] Initializing speech engine...
[2026-06-12 21:17:16,126.126 INFO    ] 2026-06-12 21:17:16
[2026-06-12 21:17:16,337.337 INFO    ] 2026-06-12 21:17:16
[2026-06-12 21:17:16,366.366 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 21:17:16,553.553 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 21:17:16,562.562 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 21:17:16,695.695 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 21:17:16,763.763 INFO    ] time= 12/06/2026 21:17:16
[2026-06-12 21:17:16,788.788 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 21:17:16,794.794 INFO    ] Checking for existing commands in stream...
[2026-06-12 21:17:16,863.863 INFO    ] No existing commands found in stream
[2026-06-12 21:17:21,877.877 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 21:17:21,881.881 INFO    ] Waiting 3.16 seconds before fallback handling...
[2026-06-12 21:17:25,454.454 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 21:17:25,456.456 INFO    ] Checking for system updates...
[2026-06-12 21:17:25,478.478 INFO    ] 200
[2026-06-12 21:17:25,480.480 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:17:25,513.513 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 21:17:25,514.514 INFO    ] No update needed
[2026-06-12 21:17:25,516.516 INFO    ] Checking for camera pi updates...
[2026-06-12 21:17:25,535.535 INFO    ] 200
[2026-06-12 21:17:25,537.537 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:17:25,560.560 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 21:17:25,609.609 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 21:17:25,611.611 INFO    ] No camera update needed
[2026-06-12 21:17:25,612.612 INFO    ] Script finished. Safe exiting...
[2026-06-12 21:17:25,613.613 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 21:17:25,617.617 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 21:17:25,620.620 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 21:17:27,658.658 INFO    ] ================================================
[2026-06-12 21:17:27,673.673 INFO    ] Launching Daemon at Fri Jun 12 21:17:27 IST 2026
[2026-06-12 21:17:27,684.684 INFO    ] ================================================
[2026-06-12 21:17:28,059.059 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 21:17:28
[2026-06-12 21:17:28,396.396 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 21:17:28,547.547 INFO    ] Initializing speech engine...
[2026-06-12 21:17:28,552.552 INFO    ] 2026-06-12 21:17:28
[2026-06-12 21:17:28,761.761 INFO    ] 2026-06-12 21:17:28
[2026-06-12 21:17:28,790.790 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 21:17:28,927.927 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 21:17:28,975.975 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 21:17:29,113.113 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 21:17:29,180.180 INFO    ] time= 12/06/2026 21:17:29
[2026-06-12 21:17:29,204.204 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 21:17:29,211.211 INFO    ] Checking for existing commands in stream...
[2026-06-12 21:17:29,277.277 INFO    ] No existing commands found in stream
[2026-06-12 21:17:34,287.287 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 21:17:34,290.290 INFO    ] Waiting 1.68 seconds before fallback handling...
[2026-06-12 21:17:36,381.381 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 21:17:36,383.383 INFO    ] Checking for system updates...
[2026-06-12 21:17:36,403.403 INFO    ] 200
[2026-06-12 21:17:36,405.405 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:17:36,437.437 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 21:17:36,438.438 INFO    ] No update needed
[2026-06-12 21:17:36,440.440 INFO    ] Checking for camera pi updates...
[2026-06-12 21:17:36,463.463 INFO    ] 200
[2026-06-12 21:17:36,464.464 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:17:36,491.491 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 21:17:36,542.542 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 21:17:36,544.544 INFO    ] No camera update needed
[2026-06-12 21:17:36,545.545 INFO    ] Script finished. Safe exiting...
[2026-06-12 21:17:36,546.546 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 21:17:36,550.550 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 21:17:36,553.553 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 21:17:38,590.590 INFO    ] ================================================
[2026-06-12 21:17:38,605.605 INFO    ] Launching Daemon at Fri Jun 12 21:17:38 IST 2026
[2026-06-12 21:17:38,616.616 INFO    ] ================================================
[2026-06-12 21:17:38,970.970 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 21:17:38
[2026-06-12 21:17:39,280.280 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 21:17:39,412.412 INFO    ] Initializing speech engine...
[2026-06-12 21:17:39,417.417 INFO    ] 2026-06-12 21:17:39
[2026-06-12 21:17:39,645.645 INFO    ] 2026-06-12 21:17:39
[2026-06-12 21:17:39,676.676 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 21:17:39,808.808 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 21:17:39,879.879 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 21:17:40,027.027 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 21:17:40,085.085 INFO    ] time= 12/06/2026 21:17:40
[2026-06-12 21:17:40,125.125 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 21:17:40,131.131 INFO    ] Checking for existing commands in stream...
[2026-06-12 21:17:40,206.206 INFO    ] No existing commands found in stream
[2026-06-12 21:17:45,217.217 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 21:17:45,220.220 INFO    ] Waiting 3.28 seconds before fallback handling...
[2026-06-12 21:17:48,840.840 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 21:17:48,841.841 INFO    ] Checking for system updates...
[2026-06-12 21:17:48,864.864 INFO    ] 200
[2026-06-12 21:17:48,865.865 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:17:48,899.899 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 21:17:48,900.900 INFO    ] No update needed
[2026-06-12 21:17:48,902.902 INFO    ] Checking for camera pi updates...
[2026-06-12 21:17:48,921.921 INFO    ] 200
[2026-06-12 21:17:48,923.923 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:17:48,947.947 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 21:17:48,998.998 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 21:17:48,999.999 INFO    ] No camera update needed
[2026-06-12 21:17:49,000.000 INFO    ] Script finished. Safe exiting...
[2026-06-12 21:17:49,002.002 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 21:17:49,005.005 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 21:17:49,007.007 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 21:17:51,045.045 INFO    ] ================================================
[2026-06-12 21:17:51,060.060 INFO    ] Launching Daemon at Fri Jun 12 21:17:51 IST 2026
[2026-06-12 21:17:51,071.071 INFO    ] ================================================
[2026-06-12 21:17:51,397.397 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 21:17:51
[2026-06-12 21:17:51,714.714 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 21:17:51,863.863 INFO    ] Initializing speech engine...
[2026-06-12 21:17:51,869.869 INFO    ] 2026-06-12 21:17:51
[2026-06-12 21:17:52,085.085 INFO    ] 2026-06-12 21:17:52
[2026-06-12 21:17:52,117.117 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 21:17:52,264.264 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 21:17:52,316.316 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 21:17:52,458.458 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 21:17:52,519.519 INFO    ] time= 12/06/2026 21:17:52
[2026-06-12 21:17:52,559.559 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 21:17:52,565.565 INFO    ] Checking for existing commands in stream...
[2026-06-12 21:17:52,669.669 INFO    ] No existing commands found in stream
[2026-06-12 21:17:57,678.678 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 21:17:57,681.681 INFO    ] Waiting 1.08 seconds before fallback handling...
[2026-06-12 21:17:59,121.121 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 21:17:59,122.122 INFO    ] Checking for system updates...
[2026-06-12 21:17:59,144.144 INFO    ] 200
[2026-06-12 21:17:59,145.145 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:17:59,175.175 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 21:17:59,176.176 INFO    ] No update needed
[2026-06-12 21:17:59,177.177 INFO    ] Checking for camera pi updates...
[2026-06-12 21:17:59,196.196 INFO    ] 200
[2026-06-12 21:17:59,198.198 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:17:59,221.221 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 21:17:59,265.265 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 21:17:59,266.266 INFO    ] No camera update needed
[2026-06-12 21:17:59,267.267 INFO    ] Script finished. Safe exiting...
[2026-06-12 21:17:59,269.269 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 21:17:59,272.272 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 21:17:59,275.275 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 21:18:01,308.308 INFO    ] ================================================
[2026-06-12 21:18:01,322.322 INFO    ] Launching Daemon at Fri Jun 12 21:18:01 IST 2026
[2026-06-12 21:18:01,342.342 INFO    ] ================================================
[2026-06-12 21:18:01,727.727 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 21:18:01
[2026-06-12 21:18:02,087.087 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 21:18:02,275.275 INFO    ] Initializing speech engine...
[2026-06-12 21:18:02,278.278 INFO    ] 2026-06-12 21:18:02
[2026-06-12 21:18:02,499.499 INFO    ] 2026-06-12 21:18:02
[2026-06-12 21:18:02,528.528 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 21:18:02,652.652 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 21:18:02,695.695 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 21:18:02,853.853 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 21:18:02,920.920 INFO    ] time= 12/06/2026 21:18:02
[2026-06-12 21:18:02,948.948 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 21:18:02,955.955 INFO    ] Checking for existing commands in stream...
[2026-06-12 21:18:03,023.023 INFO    ] No existing commands found in stream
[2026-06-12 21:18:08,032.032 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 21:18:08,034.034 INFO    ] Waiting 2.27 seconds before fallback handling...
[2026-06-12 21:18:10,682.682 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 21:18:10,684.684 INFO    ] Checking for system updates...
[2026-06-12 21:18:10,704.704 INFO    ] 200
[2026-06-12 21:18:10,705.705 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:18:10,735.735 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 21:18:10,736.736 INFO    ] No update needed
[2026-06-12 21:18:10,737.737 INFO    ] Checking for camera pi updates...
[2026-06-12 21:18:10,759.759 INFO    ] 200
[2026-06-12 21:18:10,760.760 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:18:10,784.784 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 21:18:10,830.830 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 21:18:10,832.832 INFO    ] No camera update needed
[2026-06-12 21:18:10,833.833 INFO    ] Script finished. Safe exiting...
[2026-06-12 21:18:10,834.834 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 21:18:10,837.837 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 21:18:10,840.840 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 21:18:12,877.877 INFO    ] ================================================
[2026-06-12 21:18:12,893.893 INFO    ] Launching Daemon at Fri Jun 12 21:18:12 IST 2026
[2026-06-12 21:18:12,903.903 INFO    ] ================================================
[2026-06-12 21:18:13,240.240 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 21:18:13
[2026-06-12 21:18:13,555.555 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 21:18:13,694.694 INFO    ] Initializing speech engine...
[2026-06-12 21:18:13,704.704 INFO    ] 2026-06-12 21:18:13
[2026-06-12 21:18:13,907.907 INFO    ] 2026-06-12 21:18:13
[2026-06-12 21:18:13,936.936 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 21:18:14,121.121 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 21:18:14,130.130 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 21:18:14,275.275 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 21:18:14,328.328 INFO    ] time= 12/06/2026 21:18:14
[2026-06-12 21:18:14,351.351 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 21:18:14,357.357 INFO    ] Checking for existing commands in stream...
[2026-06-12 21:18:14,423.423 INFO    ] No existing commands found in stream
[2026-06-12 21:18:19,438.438 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 21:18:19,441.441 INFO    ] Waiting 2.17 seconds before fallback handling...
[2026-06-12 21:18:22,000.000 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 21:18:22,001.001 INFO    ] Checking for system updates...
[2026-06-12 21:18:22,022.022 INFO    ] 200
[2026-06-12 21:18:22,023.023 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:18:22,055.055 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 21:18:22,057.057 INFO    ] No update needed
[2026-06-12 21:18:22,058.058 INFO    ] Checking for camera pi updates...
[2026-06-12 21:18:22,081.081 INFO    ] 200
[2026-06-12 21:18:22,082.082 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:18:22,105.105 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 21:18:22,149.149 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 21:18:22,151.151 INFO    ] No camera update needed
[2026-06-12 21:18:22,152.152 INFO    ] Script finished. Safe exiting...
[2026-06-12 21:18:22,153.153 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 21:18:22,156.156 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 21:18:22,159.159 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 21:18:24,197.197 INFO    ] ================================================
[2026-06-12 21:18:24,212.212 INFO    ] Launching Daemon at Fri Jun 12 21:18:24 IST 2026
[2026-06-12 21:18:24,223.223 INFO    ] ================================================
[2026-06-12 21:18:24,583.583 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 21:18:24
[2026-06-12 21:18:24,894.894 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 21:18:25,023.023 INFO    ] Initializing speech engine...
[2026-06-12 21:18:25,028.028 INFO    ] 2026-06-12 21:18:25
[2026-06-12 21:18:25,248.248 INFO    ] 2026-06-12 21:18:25
[2026-06-12 21:18:25,276.276 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 21:18:25,405.405 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 21:18:25,463.463 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 21:18:25,602.602 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 21:18:25,670.670 INFO    ] time= 12/06/2026 21:18:25
[2026-06-12 21:18:25,695.695 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 21:18:25,701.701 INFO    ] Checking for existing commands in stream...
[2026-06-12 21:18:25,767.767 INFO    ] No existing commands found in stream
[2026-06-12 21:18:30,777.777 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 21:18:30,780.780 INFO    ] Waiting 2.59 seconds before fallback handling...
[2026-06-12 21:18:33,756.756 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 21:18:33,758.758 INFO    ] Checking for system updates...
[2026-06-12 21:18:33,778.778 INFO    ] 200
[2026-06-12 21:18:33,779.779 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:18:33,809.809 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 21:18:33,810.810 INFO    ] No update needed
[2026-06-12 21:18:33,812.812 INFO    ] Checking for camera pi updates...
[2026-06-12 21:18:33,831.831 INFO    ] 200
[2026-06-12 21:18:33,832.832 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:18:33,858.858 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 21:18:33,913.913 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 21:18:33,915.915 INFO    ] No camera update needed
[2026-06-12 21:18:33,916.916 INFO    ] Script finished. Safe exiting...
[2026-06-12 21:18:33,917.917 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 21:18:33,920.920 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 21:18:33,923.923 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 21:18:35,961.961 INFO    ] ================================================
[2026-06-12 21:18:35,976.976 INFO    ] Launching Daemon at Fri Jun 12 21:18:35 IST 2026
[2026-06-12 21:18:35,987.987 INFO    ] ================================================
[2026-06-12 21:18:36,341.341 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 21:18:36
[2026-06-12 21:18:36,653.653 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 21:18:36,796.796 INFO    ] Initializing speech engine...
[2026-06-12 21:18:36,802.802 INFO    ] 2026-06-12 21:18:36
[2026-06-12 21:18:37,007.007 INFO    ] 2026-06-12 21:18:36
[2026-06-12 21:18:37,037.037 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 21:18:37,222.222 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 21:18:37,225.225 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 21:18:37,363.363 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 21:18:37,431.431 INFO    ] time= 12/06/2026 21:18:37
[2026-06-12 21:18:37,455.455 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 21:18:37,461.461 INFO    ] Checking for existing commands in stream...
[2026-06-12 21:18:37,529.529 INFO    ] No existing commands found in stream
[2026-06-12 21:18:42,538.538 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 21:18:42,541.541 INFO    ] Waiting 2.96 seconds before fallback handling...
[2026-06-12 21:18:45,901.901 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 21:18:45,902.902 INFO    ] Checking for system updates...
[2026-06-12 21:18:45,923.923 INFO    ] 200
[2026-06-12 21:18:45,925.925 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:18:45,955.955 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 21:18:45,956.956 INFO    ] No update needed
[2026-06-12 21:18:45,957.957 INFO    ] Checking for camera pi updates...
[2026-06-12 21:18:45,976.976 INFO    ] 200
[2026-06-12 21:18:45,978.978 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:18:46,001.001 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 21:18:46,042.042 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 21:18:46,043.043 INFO    ] No camera update needed
[2026-06-12 21:18:46,045.045 INFO    ] Script finished. Safe exiting...
[2026-06-12 21:18:46,046.046 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 21:18:46,049.049 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 21:18:46,052.052 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 21:18:48,084.084 INFO    ] ================================================
[2026-06-12 21:18:48,099.099 INFO    ] Launching Daemon at Fri Jun 12 21:18:48 IST 2026
[2026-06-12 21:18:48,110.110 INFO    ] ================================================
[2026-06-12 21:18:48,494.494 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 21:18:48
[2026-06-12 21:18:48,816.816 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 21:18:48,966.966 INFO    ] Initializing speech engine...
[2026-06-12 21:18:48,979.979 INFO    ] 2026-06-12 21:18:48
[2026-06-12 21:18:49,219.219 INFO    ] 2026-06-12 21:18:49
[2026-06-12 21:18:49,248.248 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 21:18:49,383.383 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 21:18:49,437.437 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 21:18:49,571.571 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 21:18:49,627.627 INFO    ] time= 12/06/2026 21:18:49
[2026-06-12 21:18:49,667.667 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 21:18:49,673.673 INFO    ] Checking for existing commands in stream...
[2026-06-12 21:18:49,770.770 INFO    ] No existing commands found in stream
[2026-06-12 21:18:54,779.779 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 21:18:54,782.782 INFO    ] Waiting 2.03 seconds before fallback handling...
[2026-06-12 21:18:57,163.163 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 21:18:57,164.164 INFO    ] Checking for system updates...
[2026-06-12 21:18:57,184.184 INFO    ] 200
[2026-06-12 21:18:57,186.186 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:18:57,217.217 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 21:18:57,218.218 INFO    ] No update needed
[2026-06-12 21:18:57,219.219 INFO    ] Checking for camera pi updates...
[2026-06-12 21:18:57,238.238 INFO    ] 200
[2026-06-12 21:18:57,240.240 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:18:57,264.264 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 21:18:57,312.312 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 21:18:57,313.313 INFO    ] No camera update needed
[2026-06-12 21:18:57,314.314 INFO    ] Script finished. Safe exiting...
[2026-06-12 21:18:57,316.316 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 21:18:57,318.318 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 21:18:57,321.321 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 21:18:59,359.359 INFO    ] ================================================
[2026-06-12 21:18:59,374.374 INFO    ] Launching Daemon at Fri Jun 12 21:18:59 IST 2026
[2026-06-12 21:18:59,385.385 INFO    ] ================================================
[2026-06-12 21:18:59,738.738 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 21:18:59
[2026-06-12 21:19:00,049.049 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 21:19:00,180.180 INFO    ] Initializing speech engine...
[2026-06-12 21:19:00,188.188 INFO    ] 2026-06-12 21:19:00
[2026-06-12 21:19:00,401.401 INFO    ] 2026-06-12 21:19:00
[2026-06-12 21:19:00,431.431 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 21:19:00,616.616 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 21:19:00,625.625 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 21:19:00,749.749 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 21:19:00,810.810 INFO    ] time= 12/06/2026 21:19:00
[2026-06-12 21:19:00,840.840 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 21:19:00,850.850 INFO    ] Checking for existing commands in stream...
[2026-06-12 21:19:00,922.922 INFO    ] No existing commands found in stream
[2026-06-12 21:19:05,936.936 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 21:19:05,939.939 INFO    ] Waiting 3.97 seconds before fallback handling...
[2026-06-12 21:19:10,281.281 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 21:19:10,282.282 INFO    ] Checking for system updates...
[2026-06-12 21:19:10,302.302 INFO    ] 200
[2026-06-12 21:19:10,303.303 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:19:10,333.333 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 21:19:10,334.334 INFO    ] No update needed
[2026-06-12 21:19:10,335.335 INFO    ] Checking for camera pi updates...
[2026-06-12 21:19:10,357.357 INFO    ] 200
[2026-06-12 21:19:10,359.359 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:19:10,381.381 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 21:19:10,528.528 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 21:19:10,529.529 INFO    ] No camera update needed
[2026-06-12 21:19:10,531.531 INFO    ] Script finished. Safe exiting...
[2026-06-12 21:19:10,532.532 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 21:19:10,535.535 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 21:19:10,538.538 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 21:19:12,576.576 INFO    ] ================================================
[2026-06-12 21:19:12,592.592 INFO    ] Launching Daemon at Fri Jun 12 21:19:12 IST 2026
[2026-06-12 21:19:12,603.603 INFO    ] ================================================
[2026-06-12 21:19:12,977.977 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 21:19:12
[2026-06-12 21:19:13,307.307 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 21:19:13,458.458 INFO    ] Initializing speech engine...
[2026-06-12 21:19:13,462.462 INFO    ] 2026-06-12 21:19:13
[2026-06-12 21:19:13,671.671 INFO    ] 2026-06-12 21:19:13
[2026-06-12 21:19:13,701.701 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 21:19:13,890.890 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 21:19:13,900.900 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 21:19:14,031.031 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 21:19:14,099.099 INFO    ] time= 12/06/2026 21:19:14
[2026-06-12 21:19:14,123.123 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 21:19:14,130.130 INFO    ] Checking for existing commands in stream...
[2026-06-12 21:19:14,221.221 INFO    ] No existing commands found in stream
[2026-06-12 21:19:19,230.230 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 21:19:19,233.233 INFO    ] Waiting 3.43 seconds before fallback handling...
[2026-06-12 21:19:23,044.044 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 21:19:23,045.045 INFO    ] Checking for system updates...
[2026-06-12 21:19:23,066.066 INFO    ] 200
[2026-06-12 21:19:23,067.067 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:19:23,097.097 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 21:19:23,098.098 INFO    ] No update needed
[2026-06-12 21:19:23,100.100 INFO    ] Checking for camera pi updates...
[2026-06-12 21:19:23,119.119 INFO    ] 200
[2026-06-12 21:19:23,121.121 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:19:23,144.144 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 21:19:23,197.197 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 21:19:23,198.198 INFO    ] No camera update needed
[2026-06-12 21:19:23,200.200 INFO    ] Script finished. Safe exiting...
[2026-06-12 21:19:23,201.201 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 21:19:23,204.204 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 21:19:23,207.207 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 21:19:25,244.244 INFO    ] ================================================
[2026-06-12 21:19:25,260.260 INFO    ] Launching Daemon at Fri Jun 12 21:19:25 IST 2026
[2026-06-12 21:19:25,271.271 INFO    ] ================================================
[2026-06-12 21:19:25,629.629 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 21:19:25
[2026-06-12 21:19:25,945.945 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 21:19:26,077.077 INFO    ] Initializing speech engine...
[2026-06-12 21:19:26,089.089 INFO    ] 2026-06-12 21:19:26
[2026-06-12 21:19:26,295.295 INFO    ] 2026-06-12 21:19:26
[2026-06-12 21:19:26,323.323 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 21:19:26,444.444 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 21:19:26,507.507 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 21:19:26,643.643 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 21:19:26,710.710 INFO    ] time= 12/06/2026 21:19:26
[2026-06-12 21:19:26,734.734 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 21:19:26,740.740 INFO    ] Checking for existing commands in stream...
[2026-06-12 21:19:26,806.806 INFO    ] No existing commands found in stream
[2026-06-12 21:19:31,819.819 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 21:19:31,821.821 INFO    ] Waiting 3.53 seconds before fallback handling...
[2026-06-12 21:19:35,734.734 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 21:19:35,735.735 INFO    ] Checking for system updates...
[2026-06-12 21:19:35,756.756 INFO    ] 200
[2026-06-12 21:19:35,757.757 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:19:35,788.788 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 21:19:35,789.789 INFO    ] No update needed
[2026-06-12 21:19:35,791.791 INFO    ] Checking for camera pi updates...
[2026-06-12 21:19:35,811.811 INFO    ] 200
[2026-06-12 21:19:35,812.812 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:19:35,835.835 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 21:19:35,875.875 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 21:19:35,876.876 INFO    ] No camera update needed
[2026-06-12 21:19:35,877.877 INFO    ] Script finished. Safe exiting...
[2026-06-12 21:19:35,879.879 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 21:19:35,882.882 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 21:19:35,884.884 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 21:19:37,925.925 INFO    ] ================================================
[2026-06-12 21:19:37,940.940 INFO    ] Launching Daemon at Fri Jun 12 21:19:37 IST 2026
[2026-06-12 21:19:37,951.951 INFO    ] ================================================
[2026-06-12 21:19:38,328.328 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 21:19:38
[2026-06-12 21:19:38,662.662 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 21:19:38,813.813 INFO    ] Initializing speech engine...
[2026-06-12 21:19:38,818.818 INFO    ] 2026-06-12 21:19:38
[2026-06-12 21:19:39,027.027 INFO    ] 2026-06-12 21:19:39
[2026-06-12 21:19:39,056.056 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 21:19:39,180.180 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 21:19:39,244.244 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 21:19:39,385.385 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 21:19:39,452.452 INFO    ] time= 12/06/2026 21:19:39
[2026-06-12 21:19:39,477.477 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 21:19:39,484.484 INFO    ] Checking for existing commands in stream...
[2026-06-12 21:19:39,551.551 INFO    ] No existing commands found in stream
[2026-06-12 21:19:44,571.571 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 21:19:44,574.574 INFO    ] Waiting 3.18 seconds before fallback handling...
[2026-06-12 21:19:48,156.156 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 21:19:48,158.158 INFO    ] Checking for system updates...
[2026-06-12 21:19:48,178.178 INFO    ] 200
[2026-06-12 21:19:48,180.180 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:19:48,211.211 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 21:19:48,212.212 INFO    ] No update needed
[2026-06-12 21:19:48,213.213 INFO    ] Checking for camera pi updates...
[2026-06-12 21:19:48,235.235 INFO    ] 200
[2026-06-12 21:19:48,236.236 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:19:48,260.260 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 21:19:48,302.302 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 21:19:48,303.303 INFO    ] No camera update needed
[2026-06-12 21:19:48,305.305 INFO    ] Script finished. Safe exiting...
[2026-06-12 21:19:48,306.306 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 21:19:48,309.309 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 21:19:48,311.311 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 21:19:50,349.349 INFO    ] ================================================
[2026-06-12 21:19:50,364.364 INFO    ] Launching Daemon at Fri Jun 12 21:19:50 IST 2026
[2026-06-12 21:19:50,377.377 INFO    ] ================================================
[2026-06-12 21:19:50,732.732 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 21:19:50
[2026-06-12 21:19:51,048.048 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 21:19:51,194.194 INFO    ] Initializing speech engine...
[2026-06-12 21:19:51,197.197 INFO    ] 2026-06-12 21:19:51
[2026-06-12 21:19:51,400.400 INFO    ] 2026-06-12 21:19:51
[2026-06-12 21:19:51,429.429 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 21:19:51,611.611 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 21:19:51,614.614 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 21:19:51,742.742 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 21:19:51,797.797 INFO    ] time= 12/06/2026 21:19:51
[2026-06-12 21:19:51,839.839 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 21:19:51,846.846 INFO    ] Checking for existing commands in stream...
[2026-06-12 21:19:51,911.911 INFO    ] No existing commands found in stream
[2026-06-12 21:19:56,925.925 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 21:19:56,928.928 INFO    ] Waiting 1.09 seconds before fallback handling...
[2026-06-12 21:19:58,355.355 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 21:19:58,356.356 INFO    ] Checking for system updates...
[2026-06-12 21:19:58,377.377 INFO    ] 200
[2026-06-12 21:19:58,379.379 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:19:58,409.409 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 21:19:58,410.410 INFO    ] No update needed
[2026-06-12 21:19:58,412.412 INFO    ] Checking for camera pi updates...
[2026-06-12 21:19:58,431.431 INFO    ] 200
[2026-06-12 21:19:58,432.432 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:19:58,455.455 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 21:19:58,507.507 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 21:19:58,508.508 INFO    ] No camera update needed
[2026-06-12 21:19:58,510.510 INFO    ] Script finished. Safe exiting...
[2026-06-12 21:19:58,511.511 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 21:19:58,514.514 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 21:19:58,517.517 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 21:20:00,555.555 INFO    ] ================================================
[2026-06-12 21:20:00,571.571 INFO    ] Launching Daemon at Fri Jun 12 21:20:00 IST 2026
[2026-06-12 21:20:00,581.581 INFO    ] ================================================
[2026-06-12 21:20:00,937.937 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 21:20:00
[2026-06-12 21:20:01,271.271 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 21:20:01,422.422 INFO    ] Initializing speech engine...
[2026-06-12 21:20:01,427.427 INFO    ] 2026-06-12 21:20:01
[2026-06-12 21:20:01,633.633 INFO    ] 2026-06-12 21:20:01
[2026-06-12 21:20:01,662.662 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 21:20:01,832.832 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 21:20:01,840.840 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 21:20:02,017.017 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 21:20:02,019.019 INFO    ] time= 12/06/2026 21:20:02
[2026-06-12 21:20:02,022.022 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 21:20:02,056.056 INFO    ] Checking for existing commands in stream...
[2026-06-12 21:20:02,126.126 INFO    ] No existing commands found in stream
[2026-06-12 21:20:07,135.135 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 21:20:07,138.138 INFO    ] Waiting 1.31 seconds before fallback handling...
[2026-06-12 21:20:09,014.014 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 21:20:09,016.016 INFO    ] Checking for system updates...
[2026-06-12 21:20:09,036.036 INFO    ] 200
[2026-06-12 21:20:09,038.038 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:20:09,071.071 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 21:20:09,072.072 INFO    ] No update needed
[2026-06-12 21:20:09,074.074 INFO    ] Checking for camera pi updates...
[2026-06-12 21:20:09,097.097 INFO    ] 200
[2026-06-12 21:20:09,098.098 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:20:09,123.123 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 21:20:09,151.151 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 21:20:09,152.152 INFO    ] No camera update needed
[2026-06-12 21:20:09,153.153 INFO    ] Script finished. Safe exiting...
[2026-06-12 21:20:09,155.155 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 21:20:09,158.158 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 21:20:09,161.161 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 21:20:11,201.201 INFO    ] ================================================
[2026-06-12 21:20:11,216.216 INFO    ] Launching Daemon at Fri Jun 12 21:20:11 IST 2026
[2026-06-12 21:20:11,228.228 INFO    ] ================================================
[2026-06-12 21:20:11,558.558 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 21:20:11
[2026-06-12 21:20:11,873.873 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 21:20:12,016.016 INFO    ] Initializing speech engine...
[2026-06-12 21:20:12,022.022 INFO    ] 2026-06-12 21:20:12
[2026-06-12 21:20:12,223.223 INFO    ] 2026-06-12 21:20:12
[2026-06-12 21:20:12,250.250 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 21:20:12,434.434 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 21:20:12,437.437 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 21:20:12,571.571 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 21:20:12,632.632 INFO    ] time= 12/06/2026 21:20:12
[2026-06-12 21:20:12,666.666 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 21:20:12,669.669 INFO    ] Checking for existing commands in stream...
[2026-06-12 21:20:12,744.744 INFO    ] No existing commands found in stream
[2026-06-12 21:20:17,754.754 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 21:20:17,757.757 INFO    ] Waiting 2.37 seconds before fallback handling...
[2026-06-12 21:20:20,466.466 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 21:20:20,468.468 INFO    ] Checking for system updates...
[2026-06-12 21:20:20,494.494 INFO    ] 200
[2026-06-12 21:20:20,496.496 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_HEALTH_CHECK"}
[2026-06-12 21:20:20,497.497 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping update check
[2026-06-12 21:20:20,499.499 INFO    ] Checking for camera pi updates...
[2026-06-12 21:20:20,523.523 INFO    ] 200
[2026-06-12 21:20:20,525.525 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_HEALTH_CHECK"}
[2026-06-12 21:20:20,526.526 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping camera update check
[2026-06-12 21:20:20,528.528 INFO    ] Script finished. Safe exiting...
[2026-06-12 21:20:20,529.529 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 21:20:20,533.533 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 21:20:20,536.536 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 21:20:22,568.568 INFO    ] ================================================
[2026-06-12 21:20:22,583.583 INFO    ] Launching Daemon at Fri Jun 12 21:20:22 IST 2026
[2026-06-12 21:20:22,594.594 INFO    ] ================================================
[2026-06-12 21:20:22,960.960 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 21:20:22
[2026-06-12 21:20:23,271.271 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 21:20:23,404.404 INFO    ] Initializing speech engine...
[2026-06-12 21:20:23,409.409 INFO    ] 2026-06-12 21:20:23
[2026-06-12 21:20:23,603.603 INFO    ] 2026-06-12 21:20:23
[2026-06-12 21:20:23,654.654 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 21:20:23,817.817 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 21:20:23,880.880 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 21:20:24,019.019 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 21:20:24,039.039 INFO    ] time= 12/06/2026 21:20:24
[2026-06-12 21:20:24,103.103 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 21:20:24,138.138 INFO    ] Checking for existing commands in stream...
[2026-06-12 21:20:24,215.215 INFO    ] No existing commands found in stream
[2026-06-12 21:20:29,225.225 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 21:20:29,228.228 INFO    ] Waiting 1.49 seconds before fallback handling...
[2026-06-12 21:20:31,064.064 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 21:20:31,065.065 INFO    ] Checking for system updates...
[2026-06-12 21:20:31,085.085 INFO    ] 200
[2026-06-12 21:20:31,087.087 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:20:31,117.117 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 21:20:31,118.118 INFO    ] No update needed
[2026-06-12 21:20:31,120.120 INFO    ] Checking for camera pi updates...
[2026-06-12 21:20:31,139.139 INFO    ] 200
[2026-06-12 21:20:31,140.140 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:20:31,165.165 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 21:20:31,213.213 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 21:20:31,214.214 INFO    ] No camera update needed
[2026-06-12 21:20:31,216.216 INFO    ] Script finished. Safe exiting...
[2026-06-12 21:20:31,217.217 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 21:20:31,220.220 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 21:20:31,223.223 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 21:20:33,246.246 INFO    ] ================================================
[2026-06-12 21:20:33,255.255 INFO    ] Launching Daemon at Fri Jun 12 21:20:33 IST 2026
[2026-06-12 21:20:33,261.261 INFO    ] ================================================
[2026-06-12 21:20:33,643.643 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 21:20:33
[2026-06-12 21:20:33,990.990 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 21:20:34,144.144 INFO    ] Initializing speech engine...
[2026-06-12 21:20:34,150.150 INFO    ] 2026-06-12 21:20:34
[2026-06-12 21:20:34,361.361 INFO    ] 2026-06-12 21:20:34
[2026-06-12 21:20:34,392.392 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 21:20:34,583.583 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 21:20:34,587.587 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 21:20:34,727.727 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 21:20:34,797.797 INFO    ] time= 12/06/2026 21:20:34
[2026-06-12 21:20:34,825.825 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 21:20:34,831.831 INFO    ] Checking for existing commands in stream...
[2026-06-12 21:20:34,900.900 INFO    ] No existing commands found in stream
[2026-06-12 21:20:39,910.910 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 21:20:39,916.916 INFO    ] Waiting 2.69 seconds before fallback handling...
[2026-06-12 21:20:43,029.029 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 21:20:43,030.030 INFO    ] Checking for system updates...
[2026-06-12 21:20:43,053.053 INFO    ] 200
[2026-06-12 21:20:43,055.055 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:20:43,087.087 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 21:20:43,089.089 INFO    ] No update needed
[2026-06-12 21:20:43,091.091 INFO    ] Checking for camera pi updates...
[2026-06-12 21:20:43,112.112 INFO    ] 200
[2026-06-12 21:20:43,114.114 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:20:43,139.139 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 21:20:43,183.183 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 21:20:43,185.185 INFO    ] No camera update needed
[2026-06-12 21:20:43,186.186 INFO    ] Script finished. Safe exiting...
[2026-06-12 21:20:43,188.188 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 21:20:43,191.191 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 21:20:43,194.194 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 21:20:45,232.232 INFO    ] ================================================
[2026-06-12 21:20:45,248.248 INFO    ] Launching Daemon at Fri Jun 12 21:20:45 IST 2026
[2026-06-12 21:20:45,259.259 INFO    ] ================================================
[2026-06-12 21:20:45,649.649 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 21:20:45
[2026-06-12 21:20:46,002.002 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 21:20:46,158.158 INFO    ] Initializing speech engine...
[2026-06-12 21:20:46,163.163 INFO    ] 2026-06-12 21:20:46
[2026-06-12 21:20:46,373.373 INFO    ] 2026-06-12 21:20:46
[2026-06-12 21:20:46,402.402 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 21:20:46,588.588 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 21:20:46,597.597 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 21:20:46,739.739 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 21:20:46,796.796 INFO    ] time= 12/06/2026 21:20:46
[2026-06-12 21:20:46,821.821 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 21:20:46,827.827 INFO    ] Checking for existing commands in stream...
[2026-06-12 21:20:46,895.895 INFO    ] No existing commands found in stream
[2026-06-12 21:20:51,904.904 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 21:20:51,908.908 INFO    ] Waiting 2.49 seconds before fallback handling...
[2026-06-12 21:20:54,794.794 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 21:20:54,796.796 INFO    ] Checking for system updates...
[2026-06-12 21:20:54,817.817 INFO    ] 200
[2026-06-12 21:20:54,818.818 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:20:54,849.849 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 21:20:54,850.850 INFO    ] No update needed
[2026-06-12 21:20:54,852.852 INFO    ] Checking for camera pi updates...
[2026-06-12 21:20:54,871.871 INFO    ] 200
[2026-06-12 21:20:54,873.873 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:20:54,896.896 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 21:20:54,947.947 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 21:20:54,948.948 INFO    ] No camera update needed
[2026-06-12 21:20:54,950.950 INFO    ] Script finished. Safe exiting...
[2026-06-12 21:20:54,951.951 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 21:20:54,954.954 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 21:20:54,957.957 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 21:20:57,996.996 INFO    ] ================================================
[2026-06-12 21:20:57,012.012 INFO    ] Launching Daemon at Fri Jun 12 21:20:57 IST 2026
[2026-06-12 21:20:57,023.023 INFO    ] ================================================
[2026-06-12 21:20:57,402.402 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 21:20:57
[2026-06-12 21:20:57,745.745 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 21:20:57,898.898 INFO    ] Initializing speech engine...
[2026-06-12 21:20:57,903.903 INFO    ] 2026-06-12 21:20:57
[2026-06-12 21:20:58,115.115 INFO    ] 2026-06-12 21:20:58
[2026-06-12 21:20:58,144.144 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 21:20:58,332.332 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 21:20:58,342.342 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 21:20:58,494.494 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 21:20:58,544.544 INFO    ] time= 12/06/2026 21:20:58
[2026-06-12 21:20:58,566.566 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 21:20:58,573.573 INFO    ] Checking for existing commands in stream...
[2026-06-12 21:20:58,641.641 INFO    ] No existing commands found in stream
[2026-06-12 21:21:03,650.650 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 21:21:03,654.654 INFO    ] Waiting 3.41 seconds before fallback handling...
[2026-06-12 21:21:07,459.459 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 21:21:07,461.461 INFO    ] Checking for system updates...
[2026-06-12 21:21:07,482.482 INFO    ] 200
[2026-06-12 21:21:07,484.484 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:21:07,513.513 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 21:21:07,515.515 INFO    ] No update needed
[2026-06-12 21:21:07,516.516 INFO    ] Checking for camera pi updates...
[2026-06-12 21:21:07,537.537 INFO    ] 200
[2026-06-12 21:21:07,538.538 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:21:07,561.561 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 21:21:07,603.603 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 21:21:07,604.604 INFO    ] No camera update needed
[2026-06-12 21:21:07,606.606 INFO    ] Script finished. Safe exiting...
[2026-06-12 21:21:07,607.607 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 21:21:07,610.610 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 21:21:07,613.613 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 21:21:09,651.651 INFO    ] ================================================
[2026-06-12 21:21:09,666.666 INFO    ] Launching Daemon at Fri Jun 12 21:21:09 IST 2026
[2026-06-12 21:21:09,677.677 INFO    ] ================================================
[2026-06-12 21:21:10,030.030 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 21:21:10
[2026-06-12 21:21:10,343.343 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 21:21:10,476.476 INFO    ] Initializing speech engine...
[2026-06-12 21:21:10,479.479 INFO    ] 2026-06-12 21:21:10
[2026-06-12 21:21:10,676.676 INFO    ] 2026-06-12 21:21:10
[2026-06-12 21:21:10,721.721 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 21:21:10,879.879 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 21:21:10,932.932 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 21:21:11,080.080 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 21:21:11,144.144 INFO    ] time= 12/06/2026 21:21:11
[2026-06-12 21:21:11,172.172 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 21:21:11,178.178 INFO    ] Checking for existing commands in stream...
[2026-06-12 21:21:11,245.245 INFO    ] No existing commands found in stream
[2026-06-12 21:21:16,259.259 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 21:21:16,262.262 INFO    ] Waiting 0.04 seconds before fallback handling...
[2026-06-12 21:21:16,666.666 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 21:21:16,668.668 INFO    ] Checking for system updates...
[2026-06-12 21:21:16,689.689 INFO    ] 200
[2026-06-12 21:21:16,690.690 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:21:16,720.720 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 21:21:16,722.722 INFO    ] No update needed
[2026-06-12 21:21:16,723.723 INFO    ] Checking for camera pi updates...
[2026-06-12 21:21:16,742.742 INFO    ] 200
[2026-06-12 21:21:16,743.743 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:21:16,768.768 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 21:21:16,905.905 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 21:21:16,907.907 INFO    ] No camera update needed
[2026-06-12 21:21:16,908.908 INFO    ] Script finished. Safe exiting...
[2026-06-12 21:21:16,909.909 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 21:21:16,912.912 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 21:21:16,915.915 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 21:21:18,953.953 INFO    ] ================================================
[2026-06-12 21:21:18,968.968 INFO    ] Launching Daemon at Fri Jun 12 21:21:18 IST 2026
[2026-06-12 21:21:18,978.978 INFO    ] ================================================
[2026-06-12 21:21:19,332.332 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 21:21:19
[2026-06-12 21:21:19,643.643 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 21:21:19,773.773 INFO    ] Initializing speech engine...
[2026-06-12 21:21:19,778.778 INFO    ] 2026-06-12 21:21:19
[2026-06-12 21:21:19,996.996 INFO    ] 2026-06-12 21:21:19
[2026-06-12 21:21:20,026.026 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 21:21:20,212.212 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 21:21:20,222.222 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 21:21:20,368.368 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 21:21:20,421.421 INFO    ] time= 12/06/2026 21:21:20
[2026-06-12 21:21:20,444.444 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 21:21:20,450.450 INFO    ] Checking for existing commands in stream...
[2026-06-12 21:21:20,518.518 INFO    ] No existing commands found in stream
[2026-06-12 21:21:25,527.527 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 21:21:25,529.529 INFO    ] Waiting 0.91 seconds before fallback handling...
[2026-06-12 21:21:26,815.815 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 21:21:26,817.817 INFO    ] Checking for system updates...
[2026-06-12 21:21:26,840.840 INFO    ] 200
[2026-06-12 21:21:26,842.842 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:21:26,872.872 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 21:21:26,873.873 INFO    ] No update needed
[2026-06-12 21:21:26,875.875 INFO    ] Checking for camera pi updates...
[2026-06-12 21:21:26,894.894 INFO    ] 200
[2026-06-12 21:21:26,895.895 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:21:26,917.917 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 21:21:26,962.962 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 21:21:26,964.964 INFO    ] No camera update needed
[2026-06-12 21:21:26,965.965 INFO    ] Script finished. Safe exiting...
[2026-06-12 21:21:26,966.966 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 21:21:26,969.969 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 21:21:26,972.972 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 21:21:29,009.009 INFO    ] ================================================
[2026-06-12 21:21:29,025.025 INFO    ] Launching Daemon at Fri Jun 12 21:21:29 IST 2026
[2026-06-12 21:21:29,036.036 INFO    ] ================================================
[2026-06-12 21:21:29,372.372 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 21:21:29
[2026-06-12 21:21:29,698.698 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 21:21:29,830.830 INFO    ] Initializing speech engine...
[2026-06-12 21:21:29,837.837 INFO    ] 2026-06-12 21:21:29
[2026-06-12 21:21:30,052.052 INFO    ] 2026-06-12 21:21:30
[2026-06-12 21:21:30,081.081 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 21:21:30,205.205 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 21:21:30,269.269 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 21:21:30,405.405 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 21:21:30,463.463 INFO    ] time= 12/06/2026 21:21:30
[2026-06-12 21:21:30,499.499 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 21:21:30,504.504 INFO    ] Checking for existing commands in stream...
[2026-06-12 21:21:30,576.576 INFO    ] No existing commands found in stream
[2026-06-12 21:21:35,585.585 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 21:21:35,588.588 INFO    ] Waiting 3.96 seconds before fallback handling...
[2026-06-12 21:21:39,928.928 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 21:21:39,930.930 INFO    ] Checking for system updates...
[2026-06-12 21:21:39,952.952 INFO    ] 200
[2026-06-12 21:21:39,954.954 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:21:39,986.986 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 21:21:39,987.987 INFO    ] No update needed
[2026-06-12 21:21:39,989.989 INFO    ] Checking for camera pi updates...
[2026-06-12 21:21:40,008.008 INFO    ] 200
[2026-06-12 21:21:40,009.009 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:21:40,034.034 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 21:21:40,091.091 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 21:21:40,092.092 INFO    ] No camera update needed
[2026-06-12 21:21:40,093.093 INFO    ] Script finished. Safe exiting...
[2026-06-12 21:21:40,095.095 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 21:21:40,097.097 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 21:21:40,100.100 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 21:21:42,137.137 INFO    ] ================================================
[2026-06-12 21:21:42,152.152 INFO    ] Launching Daemon at Fri Jun 12 21:21:42 IST 2026
[2026-06-12 21:21:42,163.163 INFO    ] ================================================
[2026-06-12 21:21:42,509.509 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 21:21:42
[2026-06-12 21:21:42,820.820 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 21:21:42,963.963 INFO    ] Initializing speech engine...
[2026-06-12 21:21:42,971.971 INFO    ] 2026-06-12 21:21:42
[2026-06-12 21:21:43,193.193 INFO    ] 2026-06-12 21:21:43
[2026-06-12 21:21:43,224.224 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 21:21:43,400.400 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 21:21:43,430.430 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 21:21:43,574.574 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 21:21:43,630.630 INFO    ] time= 12/06/2026 21:21:43
[2026-06-12 21:21:43,677.677 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 21:21:43,685.685 INFO    ] Checking for existing commands in stream...
[2026-06-12 21:21:43,763.763 INFO    ] No existing commands found in stream
[2026-06-12 21:21:48,772.772 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 21:21:48,774.774 INFO    ] Waiting 1.84 seconds before fallback handling...
[2026-06-12 21:21:50,986.986 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 21:21:50,993.993 INFO    ] Checking for system updates...
[2026-06-12 21:21:51,015.015 INFO    ] 200
[2026-06-12 21:21:51,017.017 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:21:51,050.050 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 21:21:51,051.051 INFO    ] No update needed
[2026-06-12 21:21:51,053.053 INFO    ] Checking for camera pi updates...
[2026-06-12 21:21:51,073.073 INFO    ] 200
[2026-06-12 21:21:51,075.075 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:21:51,098.098 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 21:21:51,150.150 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 21:21:51,151.151 INFO    ] No camera update needed
[2026-06-12 21:21:51,152.152 INFO    ] Script finished. Safe exiting...
[2026-06-12 21:21:51,154.154 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 21:21:51,157.157 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 21:21:51,159.159 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 21:21:53,197.197 INFO    ] ================================================
[2026-06-12 21:21:53,213.213 INFO    ] Launching Daemon at Fri Jun 12 21:21:53 IST 2026
[2026-06-12 21:21:53,223.223 INFO    ] ================================================
[2026-06-12 21:21:53,548.548 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 21:21:53
[2026-06-12 21:21:53,861.861 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 21:21:53,992.992 INFO    ] Initializing speech engine...
[2026-06-12 21:21:53,995.995 INFO    ] 2026-06-12 21:21:53
[2026-06-12 21:21:54,213.213 INFO    ] 2026-06-12 21:21:54
[2026-06-12 21:21:54,243.243 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 21:21:54,429.429 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 21:21:54,439.439 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 21:21:54,564.564 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 21:21:54,620.620 INFO    ] time= 12/06/2026 21:21:54
[2026-06-12 21:21:54,660.660 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 21:21:54,665.665 INFO    ] Checking for existing commands in stream...
[2026-06-12 21:21:54,736.736 INFO    ] No existing commands found in stream
[2026-06-12 21:21:59,746.746 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 21:21:59,749.749 INFO    ] Waiting 0.47 seconds before fallback handling...
[2026-06-12 21:22:00,594.594 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 21:22:00,595.595 INFO    ] Checking for system updates...
[2026-06-12 21:22:00,617.617 INFO    ] 200
[2026-06-12 21:22:00,619.619 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:22:00,649.649 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 21:22:00,651.651 INFO    ] No update needed
[2026-06-12 21:22:00,652.652 INFO    ] Checking for camera pi updates...
[2026-06-12 21:22:00,672.672 INFO    ] 200
[2026-06-12 21:22:00,674.674 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:22:00,697.697 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 21:22:00,744.744 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 21:22:00,745.745 INFO    ] No camera update needed
[2026-06-12 21:22:00,747.747 INFO    ] Script finished. Safe exiting...
[2026-06-12 21:22:00,748.748 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 21:22:00,752.752 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 21:22:00,755.755 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 21:22:02,780.780 INFO    ] ================================================
[2026-06-12 21:22:02,788.788 INFO    ] Launching Daemon at Fri Jun 12 21:22:02 IST 2026
[2026-06-12 21:22:02,794.794 INFO    ] ================================================
[2026-06-12 21:22:03,134.134 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 21:22:03
[2026-06-12 21:22:03,453.453 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 21:22:03,583.583 INFO    ] Initializing speech engine...
[2026-06-12 21:22:03,587.587 INFO    ] 2026-06-12 21:22:03
[2026-06-12 21:22:03,804.804 INFO    ] 2026-06-12 21:22:03
[2026-06-12 21:22:03,833.833 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 21:22:04,018.018 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 21:22:04,022.022 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 21:22:04,157.157 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 21:22:04,224.224 INFO    ] time= 12/06/2026 21:22:04
[2026-06-12 21:22:04,252.252 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 21:22:04,259.259 INFO    ] Checking for existing commands in stream...
[2026-06-12 21:22:04,326.326 INFO    ] No existing commands found in stream
[2026-06-12 21:22:09,336.336 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 21:22:09,340.340 INFO    ] Waiting 1.43 seconds before fallback handling...
[2026-06-12 21:22:11,125.125 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 21:22:11,127.127 INFO    ] Checking for system updates...
[2026-06-12 21:22:11,148.148 INFO    ] 200
[2026-06-12 21:22:11,150.150 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:22:11,180.180 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 21:22:11,181.181 INFO    ] No update needed
[2026-06-12 21:22:11,183.183 INFO    ] Checking for camera pi updates...
[2026-06-12 21:22:11,203.203 INFO    ] 200
[2026-06-12 21:22:11,204.204 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:22:11,228.228 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 21:22:11,272.272 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 21:22:11,274.274 INFO    ] No camera update needed
[2026-06-12 21:22:11,275.275 INFO    ] Script finished. Safe exiting...
[2026-06-12 21:22:11,276.276 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 21:22:11,279.279 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 21:22:11,282.282 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 21:22:13,319.319 INFO    ] ================================================
[2026-06-12 21:22:13,335.335 INFO    ] Launching Daemon at Fri Jun 12 21:22:13 IST 2026
[2026-06-12 21:22:13,346.346 INFO    ] ================================================
[2026-06-12 21:22:13,707.707 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 21:22:13
[2026-06-12 21:22:14,049.049 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 21:22:14,199.199 INFO    ] Initializing speech engine...
[2026-06-12 21:22:14,204.204 INFO    ] 2026-06-12 21:22:14
[2026-06-12 21:22:14,407.407 INFO    ] 2026-06-12 21:22:14
[2026-06-12 21:22:14,435.435 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 21:22:14,617.617 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 21:22:14,627.627 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 21:22:14,792.792 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 21:22:14,836.836 INFO    ] time= 12/06/2026 21:22:14
[2026-06-12 21:22:14,846.846 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 21:22:14,852.852 INFO    ] Checking for existing commands in stream...
[2026-06-12 21:22:14,919.919 INFO    ] No existing commands found in stream
[2026-06-12 21:22:19,928.928 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 21:22:19,931.931 INFO    ] Waiting 2.78 seconds before fallback handling...
[2026-06-12 21:22:23,096.096 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 21:22:23,098.098 INFO    ] Checking for system updates...
[2026-06-12 21:22:23,118.118 INFO    ] 200
[2026-06-12 21:22:23,120.120 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:22:23,152.152 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 21:22:23,154.154 INFO    ] No update needed
[2026-06-12 21:22:23,155.155 INFO    ] Checking for camera pi updates...
[2026-06-12 21:22:23,175.175 INFO    ] 200
[2026-06-12 21:22:23,177.177 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:22:23,200.200 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 21:22:23,245.245 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 21:22:23,247.247 INFO    ] No camera update needed
[2026-06-12 21:22:23,248.248 INFO    ] Script finished. Safe exiting...
[2026-06-12 21:22:23,249.249 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 21:22:23,252.252 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 21:22:23,255.255 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 21:22:25,293.293 INFO    ] ================================================
[2026-06-12 21:22:25,309.309 INFO    ] Launching Daemon at Fri Jun 12 21:22:25 IST 2026
[2026-06-12 21:22:25,320.320 INFO    ] ================================================
[2026-06-12 21:22:25,692.692 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 21:22:25
[2026-06-12 21:22:26,053.053 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 21:22:26,212.212 INFO    ] Initializing speech engine...
[2026-06-12 21:22:26,217.217 INFO    ] 2026-06-12 21:22:26
[2026-06-12 21:22:26,434.434 INFO    ] 2026-06-12 21:22:26
[2026-06-12 21:22:26,463.463 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 21:22:26,628.628 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 21:22:26,652.652 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 21:22:26,792.792 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 21:22:26,856.856 INFO    ] time= 12/06/2026 21:22:26
[2026-06-12 21:22:26,885.885 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 21:22:26,892.892 INFO    ] Checking for existing commands in stream...
[2026-06-12 21:22:26,984.984 INFO    ] No existing commands found in stream
[2026-06-12 21:22:31,991.991 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 21:22:31,993.993 INFO    ] Waiting 1.05 seconds before fallback handling...
[2026-06-12 21:22:33,377.377 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 21:22:33,380.380 INFO    ] Checking for system updates...
[2026-06-12 21:22:33,423.423 INFO    ] 200
[2026-06-12 21:22:33,425.425 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:22:33,481.481 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 21:22:33,482.482 INFO    ] No update needed
[2026-06-12 21:22:33,484.484 INFO    ] Checking for camera pi updates...
[2026-06-12 21:22:33,504.504 INFO    ] 200
[2026-06-12 21:22:33,506.506 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:22:33,533.533 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 21:22:33,580.580 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 21:22:33,581.581 INFO    ] No camera update needed
[2026-06-12 21:22:33,583.583 INFO    ] Script finished. Safe exiting...
[2026-06-12 21:22:33,584.584 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 21:22:33,587.587 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 21:22:33,591.591 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 21:22:35,629.629 INFO    ] ================================================
[2026-06-12 21:22:35,644.644 INFO    ] Launching Daemon at Fri Jun 12 21:22:35 IST 2026
[2026-06-12 21:22:35,655.655 INFO    ] ================================================
[2026-06-12 21:22:36,040.040 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 21:22:36
[2026-06-12 21:22:36,363.363 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 21:22:36,493.493 INFO    ] Initializing speech engine...
[2026-06-12 21:22:36,497.497 INFO    ] 2026-06-12 21:22:36
[2026-06-12 21:22:36,713.713 INFO    ] 2026-06-12 21:22:36
[2026-06-12 21:22:36,741.741 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 21:22:36,927.927 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 21:22:36,935.935 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 21:22:37,066.066 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 21:22:37,135.135 INFO    ] time= 12/06/2026 21:22:37
[2026-06-12 21:22:37,158.158 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 21:22:37,165.165 INFO    ] Checking for existing commands in stream...
[2026-06-12 21:22:37,232.232 INFO    ] No existing commands found in stream
[2026-06-12 21:22:42,241.241 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 21:22:42,244.244 INFO    ] Waiting 2.08 seconds before fallback handling...
[2026-06-12 21:22:44,690.690 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 21:22:44,691.691 INFO    ] Checking for system updates...
[2026-06-12 21:22:44,712.712 INFO    ] 200
[2026-06-12 21:22:44,713.713 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:22:44,745.745 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 21:22:44,747.747 INFO    ] No update needed
[2026-06-12 21:22:44,748.748 INFO    ] Checking for camera pi updates...
[2026-06-12 21:22:44,770.770 INFO    ] 200
[2026-06-12 21:22:44,772.772 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:22:44,797.797 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 21:22:44,838.838 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 21:22:44,839.839 INFO    ] No camera update needed
[2026-06-12 21:22:44,841.841 INFO    ] Script finished. Safe exiting...
[2026-06-12 21:22:44,842.842 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 21:22:44,846.846 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 21:22:44,849.849 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 21:22:46,888.888 INFO    ] ================================================
[2026-06-12 21:22:46,903.903 INFO    ] Launching Daemon at Fri Jun 12 21:22:46 IST 2026
[2026-06-12 21:22:46,914.914 INFO    ] ================================================
[2026-06-12 21:22:47,247.247 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 21:22:47
[2026-06-12 21:22:47,593.593 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 21:22:47,745.745 INFO    ] Initializing speech engine...
[2026-06-12 21:22:47,758.758 INFO    ] 2026-06-12 21:22:47
[2026-06-12 21:22:47,983.983 INFO    ] 2026-06-12 21:22:47
[2026-06-12 21:22:48,014.014 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 21:22:48,213.213 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 21:22:48,223.223 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 21:22:48,396.396 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 21:22:48,439.439 INFO    ] time= 12/06/2026 21:22:48
[2026-06-12 21:22:48,456.456 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 21:22:48,504.504 INFO    ] Checking for existing commands in stream...
[2026-06-12 21:22:48,563.563 INFO    ] No existing commands found in stream
[2026-06-12 21:22:53,572.572 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 21:22:53,575.575 INFO    ] Waiting 3.49 seconds before fallback handling...
[2026-06-12 21:22:57,468.468 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 21:22:57,470.470 INFO    ] Checking for system updates...
[2026-06-12 21:22:57,491.491 INFO    ] 200
[2026-06-12 21:22:57,492.492 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:22:57,522.522 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 21:22:57,523.523 INFO    ] No update needed
[2026-06-12 21:22:57,525.525 INFO    ] Checking for camera pi updates...
[2026-06-12 21:22:57,544.544 INFO    ] 200
[2026-06-12 21:22:57,545.545 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:22:57,569.569 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 21:22:57,618.618 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 21:22:57,620.620 INFO    ] No camera update needed
[2026-06-12 21:22:57,621.621 INFO    ] Script finished. Safe exiting...
[2026-06-12 21:22:57,622.622 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 21:22:57,626.626 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 21:22:57,629.629 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 21:22:59,667.667 INFO    ] ================================================
[2026-06-12 21:22:59,683.683 INFO    ] Launching Daemon at Fri Jun 12 21:22:59 IST 2026
[2026-06-12 21:22:59,693.693 INFO    ] ================================================
[2026-06-12 21:23:00,057.057 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 21:23:00
[2026-06-12 21:23:00,396.396 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 21:23:00,549.549 INFO    ] Initializing speech engine...
[2026-06-12 21:23:00,556.556 INFO    ] 2026-06-12 21:23:00
[2026-06-12 21:23:00,770.770 INFO    ] 2026-06-12 21:23:00
[2026-06-12 21:23:00,799.799 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 21:23:00,934.934 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 21:23:00,987.987 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 21:23:01,126.126 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 21:23:01,196.196 INFO    ] time= 12/06/2026 21:23:01
[2026-06-12 21:23:01,221.221 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 21:23:01,228.228 INFO    ] Checking for existing commands in stream...
[2026-06-12 21:23:01,294.294 INFO    ] No existing commands found in stream
[2026-06-12 21:23:06,303.303 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 21:23:06,306.306 INFO    ] Waiting 0.42 seconds before fallback handling...
[2026-06-12 21:23:07,097.097 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 21:23:07,099.099 INFO    ] Checking for system updates...
[2026-06-12 21:23:07,120.120 INFO    ] 200
[2026-06-12 21:23:07,121.121 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:23:07,153.153 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 21:23:07,155.155 INFO    ] No update needed
[2026-06-12 21:23:07,156.156 INFO    ] Checking for camera pi updates...
[2026-06-12 21:23:07,178.178 INFO    ] 200
[2026-06-12 21:23:07,180.180 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:23:07,206.206 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 21:23:07,261.261 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 21:23:07,263.263 INFO    ] No camera update needed
[2026-06-12 21:23:07,264.264 INFO    ] Script finished. Safe exiting...
[2026-06-12 21:23:07,266.266 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 21:23:07,269.269 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 21:23:07,272.272 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 21:23:09,314.314 INFO    ] ================================================
[2026-06-12 21:23:09,330.330 INFO    ] Launching Daemon at Fri Jun 12 21:23:09 IST 2026
[2026-06-12 21:23:09,341.341 INFO    ] ================================================
[2026-06-12 21:23:09,708.708 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 21:23:09
[2026-06-12 21:23:10,020.020 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 21:23:10,162.162 INFO    ] Initializing speech engine...
[2026-06-12 21:23:10,167.167 INFO    ] 2026-06-12 21:23:10
[2026-06-12 21:23:10,372.372 INFO    ] 2026-06-12 21:23:10
[2026-06-12 21:23:10,401.401 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 21:23:10,586.586 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 21:23:10,595.595 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 21:23:10,740.740 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 21:23:10,793.793 INFO    ] time= 12/06/2026 21:23:10
[2026-06-12 21:23:10,816.816 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 21:23:10,823.823 INFO    ] Checking for existing commands in stream...
[2026-06-12 21:23:10,890.890 INFO    ] No existing commands found in stream
[2026-06-12 21:23:15,899.899 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 21:23:15,902.902 INFO    ] Waiting 1.02 seconds before fallback handling...
[2026-06-12 21:23:17,274.274 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 21:23:17,275.275 INFO    ] Checking for system updates...
[2026-06-12 21:23:17,296.296 INFO    ] 200
[2026-06-12 21:23:17,297.297 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:23:17,329.329 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 21:23:17,331.331 INFO    ] No update needed
[2026-06-12 21:23:17,332.332 INFO    ] Checking for camera pi updates...
[2026-06-12 21:23:17,355.355 INFO    ] 200
[2026-06-12 21:23:17,356.356 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:23:17,383.383 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 21:23:17,430.430 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 21:23:17,432.432 INFO    ] No camera update needed
[2026-06-12 21:23:17,433.433 INFO    ] Script finished. Safe exiting...
[2026-06-12 21:23:17,434.434 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 21:23:17,438.438 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 21:23:17,441.441 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 21:23:19,478.478 INFO    ] ================================================
[2026-06-12 21:23:19,494.494 INFO    ] Launching Daemon at Fri Jun 12 21:23:19 IST 2026
[2026-06-12 21:23:19,504.504 INFO    ] ================================================
[2026-06-12 21:23:19,879.879 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 21:23:19
[2026-06-12 21:23:20,218.218 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 21:23:20,356.356 INFO    ] Initializing speech engine...
[2026-06-12 21:23:20,364.364 INFO    ] 2026-06-12 21:23:20
[2026-06-12 21:23:20,576.576 INFO    ] 2026-06-12 21:23:20
[2026-06-12 21:23:20,605.605 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 21:23:20,788.788 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 21:23:20,797.797 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 21:23:20,937.937 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 21:23:20,995.995 INFO    ] time= 12/06/2026 21:23:20
[2026-06-12 21:23:21,017.017 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 21:23:21,024.024 INFO    ] Checking for existing commands in stream...
[2026-06-12 21:23:21,091.091 INFO    ] No existing commands found in stream
[2026-06-12 21:23:26,100.100 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 21:23:26,103.103 INFO    ] Waiting 3.33 seconds before fallback handling...
[2026-06-12 21:23:29,793.793 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 21:23:29,794.794 INFO    ] Checking for system updates...
[2026-06-12 21:23:29,815.815 INFO    ] 200
[2026-06-12 21:23:29,816.816 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:23:29,846.846 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 21:23:29,848.848 INFO    ] No update needed
[2026-06-12 21:23:29,849.849 INFO    ] Checking for camera pi updates...
[2026-06-12 21:23:29,869.869 INFO    ] 200
[2026-06-12 21:23:29,870.870 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:23:29,896.896 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 21:23:30,033.033 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 21:23:30,035.035 INFO    ] No camera update needed
[2026-06-12 21:23:30,036.036 INFO    ] Script finished. Safe exiting...
[2026-06-12 21:23:30,038.038 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 21:23:30,041.041 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 21:23:30,044.044 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 21:23:32,074.074 INFO    ] ================================================
[2026-06-12 21:23:32,084.084 INFO    ] Launching Daemon at Fri Jun 12 21:23:32 IST 2026
[2026-06-12 21:23:32,091.091 INFO    ] ================================================
[2026-06-12 21:23:32,441.441 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 21:23:32
[2026-06-12 21:23:32,817.817 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 21:23:32,953.953 INFO    ] Initializing speech engine...
[2026-06-12 21:23:32,966.966 INFO    ] 2026-06-12 21:23:32
[2026-06-12 21:23:33,153.153 INFO    ] 2026-06-12 21:23:33
[2026-06-12 21:23:33,194.194 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 21:23:33,361.361 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 21:23:33,418.418 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 21:23:33,563.563 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 21:23:33,604.604 INFO    ] time= 12/06/2026 21:23:33
[2026-06-12 21:23:33,646.646 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 21:23:33,669.669 INFO    ] Checking for existing commands in stream...
[2026-06-12 21:23:33,744.744 INFO    ] No existing commands found in stream
[2026-06-12 21:23:38,755.755 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 21:23:38,757.757 INFO    ] Waiting 0.68 seconds before fallback handling...
[2026-06-12 21:23:42,453.453 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 21:23:42,455.455 INFO    ] Checking for system updates...
[2026-06-12 21:23:42,491.491 INFO    ] 200
[2026-06-12 21:23:42,493.493 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:23:42,546.546 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 21:23:42,548.548 INFO    ] No update needed
[2026-06-12 21:23:42,551.551 INFO    ] Checking for camera pi updates...
[2026-06-12 21:23:42,588.588 INFO    ] 200
[2026-06-12 21:23:42,590.590 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:23:42,630.630 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 21:23:42,680.680 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 21:23:42,682.682 INFO    ] No camera update needed
[2026-06-12 21:23:42,685.685 INFO    ] Script finished. Safe exiting...
[2026-06-12 21:23:42,687.687 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 21:23:42,692.692 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 21:23:42,697.697 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 21:23:44,739.739 INFO    ] ================================================
[2026-06-12 21:23:44,754.754 INFO    ] Launching Daemon at Fri Jun 12 21:23:44 IST 2026
[2026-06-12 21:23:44,765.765 INFO    ] ================================================
[2026-06-12 21:23:45,091.091 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 21:23:45
[2026-06-12 21:23:45,403.403 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 21:23:45,532.532 INFO    ] Initializing speech engine...
[2026-06-12 21:23:45,540.540 INFO    ] 2026-06-12 21:23:45
[2026-06-12 21:23:45,750.750 INFO    ] 2026-06-12 21:23:45
[2026-06-12 21:23:45,780.780 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 21:23:45,967.967 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 21:23:45,976.976 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 21:23:46,107.107 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 21:23:46,176.176 INFO    ] time= 12/06/2026 21:23:46
[2026-06-12 21:23:46,201.201 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 21:23:46,202.202 INFO    ] Checking for existing commands in stream...
[2026-06-12 21:23:46,296.296 INFO    ] No existing commands found in stream
[2026-06-12 21:23:51,305.305 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 21:23:51,308.308 INFO    ] Waiting 0.31 seconds before fallback handling...
[2026-06-12 21:23:52,002.002 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 21:23:52,003.003 INFO    ] Checking for system updates...
[2026-06-12 21:23:52,023.023 INFO    ] 200
[2026-06-12 21:23:52,025.025 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:23:52,054.054 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 21:23:52,056.056 INFO    ] No update needed
[2026-06-12 21:23:52,057.057 INFO    ] Checking for camera pi updates...
[2026-06-12 21:23:52,077.077 INFO    ] 200
[2026-06-12 21:23:52,079.079 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:23:52,103.103 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 21:23:52,145.145 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 21:23:52,146.146 INFO    ] No camera update needed
[2026-06-12 21:23:52,147.147 INFO    ] Script finished. Safe exiting...
[2026-06-12 21:23:52,149.149 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 21:23:52,152.152 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 21:23:52,155.155 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 21:23:54,193.193 INFO    ] ================================================
[2026-06-12 21:23:54,209.209 INFO    ] Launching Daemon at Fri Jun 12 21:23:54 IST 2026
[2026-06-12 21:23:54,220.220 INFO    ] ================================================
[2026-06-12 21:23:54,602.602 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 21:23:54
[2026-06-12 21:23:54,938.938 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 21:23:55,088.088 INFO    ] Initializing speech engine...
[2026-06-12 21:23:55,093.093 INFO    ] 2026-06-12 21:23:55
[2026-06-12 21:23:55,300.300 INFO    ] 2026-06-12 21:23:55
[2026-06-12 21:23:55,328.328 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 21:23:55,512.512 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 21:23:55,522.522 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 21:23:55,655.655 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 21:23:55,717.717 INFO    ] time= 12/06/2026 21:23:55
[2026-06-12 21:23:55,741.741 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 21:23:55,747.747 INFO    ] Checking for existing commands in stream...
[2026-06-12 21:23:55,837.837 INFO    ] No existing commands found in stream
[2026-06-12 21:24:00,846.846 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 21:24:00,850.850 INFO    ] Waiting 1.97 seconds before fallback handling...
[2026-06-12 21:24:03,126.126 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 21:24:03,127.127 INFO    ] Checking for system updates...
[2026-06-12 21:24:03,148.148 INFO    ] 200
[2026-06-12 21:24:03,149.149 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:24:03,181.181 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 21:24:03,183.183 INFO    ] No update needed
[2026-06-12 21:24:03,184.184 INFO    ] Checking for camera pi updates...
[2026-06-12 21:24:03,204.204 INFO    ] 200
[2026-06-12 21:24:03,205.205 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:24:03,229.229 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 21:24:03,261.261 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 21:24:03,263.263 INFO    ] No camera update needed
[2026-06-12 21:24:03,264.264 INFO    ] Script finished. Safe exiting...
[2026-06-12 21:24:03,265.265 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 21:24:03,268.268 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 21:24:03,271.271 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 21:24:05,308.308 INFO    ] ================================================
[2026-06-12 21:24:05,323.323 INFO    ] Launching Daemon at Fri Jun 12 21:24:05 IST 2026
[2026-06-12 21:24:05,334.334 INFO    ] ================================================
[2026-06-12 21:24:05,693.693 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 21:24:05
[2026-06-12 21:24:06,003.003 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 21:24:06,151.151 INFO    ] Initializing speech engine...
[2026-06-12 21:24:06,156.156 INFO    ] 2026-06-12 21:24:06
[2026-06-12 21:24:06,371.371 INFO    ] 2026-06-12 21:24:06
[2026-06-12 21:24:06,400.400 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 21:24:06,582.582 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 21:24:06,592.592 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 21:24:06,736.736 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 21:24:06,788.788 INFO    ] time= 12/06/2026 21:24:06
[2026-06-12 21:24:06,810.810 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 21:24:06,816.816 INFO    ] Checking for existing commands in stream...
[2026-06-12 21:24:06,881.881 INFO    ] No existing commands found in stream
[2026-06-12 21:24:11,892.892 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 21:24:11,894.894 INFO    ] Waiting 2.25 seconds before fallback handling...
[2026-06-12 21:24:14,496.496 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 21:24:14,497.497 INFO    ] Checking for system updates...
[2026-06-12 21:24:14,517.517 INFO    ] 200
[2026-06-12 21:24:14,519.519 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:24:14,550.550 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 21:24:14,552.552 INFO    ] No update needed
[2026-06-12 21:24:14,553.553 INFO    ] Checking for camera pi updates...
[2026-06-12 21:24:14,572.572 INFO    ] 200
[2026-06-12 21:24:14,573.573 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:24:14,597.597 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 21:24:14,641.641 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 21:24:14,642.642 INFO    ] No camera update needed
[2026-06-12 21:24:14,643.643 INFO    ] Script finished. Safe exiting...
[2026-06-12 21:24:14,644.644 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 21:24:14,647.647 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 21:24:14,650.650 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 21:24:16,692.692 INFO    ] ================================================
[2026-06-12 21:24:16,707.707 INFO    ] Launching Daemon at Fri Jun 12 21:24:16 IST 2026
[2026-06-12 21:24:16,718.718 INFO    ] ================================================
[2026-06-12 21:24:17,063.063 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 21:24:17
[2026-06-12 21:24:17,380.380 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 21:24:17,511.511 INFO    ] Initializing speech engine...
[2026-06-12 21:24:17,515.515 INFO    ] 2026-06-12 21:24:17
[2026-06-12 21:24:17,709.709 INFO    ] 2026-06-12 21:24:17
[2026-06-12 21:24:17,754.754 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 21:24:17,910.910 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 21:24:17,943.943 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 21:24:18,118.118 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 21:24:18,150.150 INFO    ] time= 12/06/2026 21:24:18
[2026-06-12 21:24:18,201.201 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 21:24:18,225.225 INFO    ] Checking for existing commands in stream...
[2026-06-12 21:24:18,327.327 INFO    ] No existing commands found in stream
[2026-06-12 21:24:23,341.341 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 21:24:23,344.344 INFO    ] Waiting 1.76 seconds before fallback handling...
[2026-06-12 21:24:25,527.527 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 21:24:25,529.529 INFO    ] Checking for system updates...
[2026-06-12 21:24:25,549.549 INFO    ] 200
[2026-06-12 21:24:25,551.551 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:24:25,583.583 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 21:24:25,584.584 INFO    ] No update needed
[2026-06-12 21:24:25,585.585 INFO    ] Checking for camera pi updates...
[2026-06-12 21:24:25,605.605 INFO    ] 200
[2026-06-12 21:24:25,606.606 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:24:25,631.631 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 21:24:25,673.673 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 21:24:25,675.675 INFO    ] No camera update needed
[2026-06-12 21:24:25,676.676 INFO    ] Script finished. Safe exiting...
[2026-06-12 21:24:25,677.677 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 21:24:25,680.680 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 21:24:25,683.683 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 21:24:27,721.721 INFO    ] ================================================
[2026-06-12 21:24:27,738.738 INFO    ] Launching Daemon at Fri Jun 12 21:24:27 IST 2026
[2026-06-12 21:24:27,748.748 INFO    ] ================================================
[2026-06-12 21:24:28,093.093 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 21:24:28
[2026-06-12 21:24:28,410.410 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 21:24:28,541.541 INFO    ] Initializing speech engine...
[2026-06-12 21:24:28,549.549 INFO    ] 2026-06-12 21:24:28
[2026-06-12 21:24:28,761.761 INFO    ] 2026-06-12 21:24:28
[2026-06-12 21:24:28,790.790 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 21:24:28,974.974 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 21:24:28,983.983 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 21:24:29,111.111 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 21:24:29,175.175 INFO    ] time= 12/06/2026 21:24:29
[2026-06-12 21:24:29,203.203 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 21:24:29,209.209 INFO    ] Checking for existing commands in stream...
[2026-06-12 21:24:29,273.273 INFO    ] No existing commands found in stream
[2026-06-12 21:24:34,284.284 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 21:24:34,286.286 INFO    ] Waiting 3.08 seconds before fallback handling...
[2026-06-12 21:24:37,706.706 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 21:24:37,708.708 INFO    ] Checking for system updates...
[2026-06-12 21:24:37,732.732 INFO    ] 200
[2026-06-12 21:24:37,734.734 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:24:37,767.767 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 21:24:37,769.769 INFO    ] No update needed
[2026-06-12 21:24:37,770.770 INFO    ] Checking for camera pi updates...
[2026-06-12 21:24:37,793.793 INFO    ] 200
[2026-06-12 21:24:37,794.794 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:24:37,824.824 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 21:24:37,880.880 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 21:24:37,882.882 INFO    ] No camera update needed
[2026-06-12 21:24:37,883.883 INFO    ] Script finished. Safe exiting...
[2026-06-12 21:24:37,885.885 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 21:24:37,889.889 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 21:24:37,892.892 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 21:24:39,917.917 INFO    ] ================================================
[2026-06-12 21:24:39,926.926 INFO    ] Launching Daemon at Fri Jun 12 21:24:39 IST 2026
[2026-06-12 21:24:39,933.933 INFO    ] ================================================
[2026-06-12 21:24:40,262.262 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 21:24:40
[2026-06-12 21:24:40,608.608 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 21:24:40,767.767 INFO    ] Initializing speech engine...
[2026-06-12 21:24:40,774.774 INFO    ] 2026-06-12 21:24:40
[2026-06-12 21:24:40,994.994 INFO    ] 2026-06-12 21:24:40
[2026-06-12 21:24:41,025.025 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 21:24:41,220.220 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 21:24:41,231.231 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 21:24:41,374.374 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 21:24:41,438.438 INFO    ] time= 12/06/2026 21:24:41
[2026-06-12 21:24:41,462.462 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 21:24:41,468.468 INFO    ] Checking for existing commands in stream...
[2026-06-12 21:24:41,533.533 INFO    ] No existing commands found in stream
[2026-06-12 21:24:46,544.544 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 21:24:46,546.546 INFO    ] Waiting 1.71 seconds before fallback handling...
[2026-06-12 21:24:48,637.637 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 21:24:48,639.639 INFO    ] Checking for system updates...
[2026-06-12 21:24:48,660.660 INFO    ] 200
[2026-06-12 21:24:48,662.662 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:24:48,691.691 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 21:24:48,693.693 INFO    ] No update needed
[2026-06-12 21:24:48,694.694 INFO    ] Checking for camera pi updates...
[2026-06-12 21:24:48,714.714 INFO    ] 200
[2026-06-12 21:24:48,715.715 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:24:48,738.738 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 21:24:48,785.785 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 21:24:48,787.787 INFO    ] No camera update needed
[2026-06-12 21:24:48,788.788 INFO    ] Script finished. Safe exiting...
[2026-06-12 21:24:48,789.789 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 21:24:48,792.792 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 21:24:48,795.795 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 21:24:50,833.833 INFO    ] ================================================
[2026-06-12 21:24:50,849.849 INFO    ] Launching Daemon at Fri Jun 12 21:24:50 IST 2026
[2026-06-12 21:24:50,860.860 INFO    ] ================================================
[2026-06-12 21:24:51,204.204 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 21:24:51
[2026-06-12 21:24:51,520.520 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 21:24:51,668.668 INFO    ] Initializing speech engine...
[2026-06-12 21:24:51,673.673 INFO    ] 2026-06-12 21:24:51
[2026-06-12 21:24:51,888.888 INFO    ] 2026-06-12 21:24:51
[2026-06-12 21:24:51,919.919 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 21:24:52,114.114 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 21:24:52,118.118 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 21:24:52,255.255 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 21:24:52,312.312 INFO    ] time= 12/06/2026 21:24:52
[2026-06-12 21:24:52,338.338 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 21:24:52,362.362 INFO    ] Checking for existing commands in stream...
[2026-06-12 21:24:52,471.471 INFO    ] No existing commands found in stream
[2026-06-12 21:24:57,485.485 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 21:24:57,488.488 INFO    ] Waiting 0.09 seconds before fallback handling...
[2026-06-12 21:24:57,935.935 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 21:24:57,936.936 INFO    ] Checking for system updates...
[2026-06-12 21:24:57,958.958 INFO    ] 200
[2026-06-12 21:24:57,959.959 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:24:57,992.992 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 21:24:57,994.994 INFO    ] No update needed
[2026-06-12 21:24:57,995.995 INFO    ] Checking for camera pi updates...
[2026-06-12 21:24:58,014.014 INFO    ] 200
[2026-06-12 21:24:58,015.015 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:24:58,038.038 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 21:24:58,087.087 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 21:24:58,088.088 INFO    ] No camera update needed
[2026-06-12 21:24:58,090.090 INFO    ] Script finished. Safe exiting...
[2026-06-12 21:24:58,091.091 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 21:24:58,094.094 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 21:24:58,097.097 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 21:25:00,135.135 INFO    ] ================================================
[2026-06-12 21:25:00,150.150 INFO    ] Launching Daemon at Fri Jun 12 21:25:00 IST 2026
[2026-06-12 21:25:00,161.161 INFO    ] ================================================
[2026-06-12 21:25:00,526.526 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 21:25:00
[2026-06-12 21:25:00,861.861 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 21:25:01,006.006 INFO    ] Initializing speech engine...
[2026-06-12 21:25:01,015.015 INFO    ] 2026-06-12 21:25:01
[2026-06-12 21:25:01,270.270 INFO    ] 2026-06-12 21:25:01
[2026-06-12 21:25:01,336.336 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 21:25:01,518.518 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 21:25:01,533.533 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 21:25:01,638.638 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 21:25:01,640.640 INFO    ] time= 12/06/2026 21:25:01
[2026-06-12 21:25:01,660.660 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 21:25:01,672.672 INFO    ] Checking for existing commands in stream...
[2026-06-12 21:25:01,815.815 INFO    ] No existing commands found in stream
[2026-06-12 21:25:06,852.852 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 21:25:06,855.855 INFO    ] Waiting 2.65 seconds before fallback handling...
[2026-06-12 21:25:09,898.898 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 21:25:09,900.900 INFO    ] Checking for system updates...
[2026-06-12 21:25:09,922.922 INFO    ] 200
[2026-06-12 21:25:09,923.923 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:25:09,956.956 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 21:25:09,957.957 INFO    ] No update needed
[2026-06-12 21:25:09,959.959 INFO    ] Checking for camera pi updates...
[2026-06-12 21:25:09,979.979 INFO    ] 200
[2026-06-12 21:25:09,981.981 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:25:10,006.006 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 21:25:10,059.059 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 21:25:10,061.061 INFO    ] No camera update needed
[2026-06-12 21:25:10,062.062 INFO    ] Script finished. Safe exiting...
[2026-06-12 21:25:10,064.064 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 21:25:10,067.067 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 21:25:10,070.070 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 21:25:12,108.108 INFO    ] ================================================
[2026-06-12 21:25:12,128.128 INFO    ] Launching Daemon at Fri Jun 12 21:25:12 IST 2026
[2026-06-12 21:25:12,139.139 INFO    ] ================================================
[2026-06-12 21:25:12,507.507 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 21:25:12
[2026-06-12 21:25:12,841.841 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 21:25:12,981.981 INFO    ] Initializing speech engine...
[2026-06-12 21:25:12,994.994 INFO    ] 2026-06-12 21:25:12
[2026-06-12 21:25:13,207.207 INFO    ] 2026-06-12 21:25:13
[2026-06-12 21:25:13,236.236 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 21:25:13,381.381 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 21:25:13,383.383 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 21:25:13,532.532 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 21:25:13,571.571 INFO    ] time= 12/06/2026 21:25:13
[2026-06-12 21:25:13,591.591 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 21:25:13,651.651 INFO    ] Checking for existing commands in stream...
[2026-06-12 21:25:13,751.751 INFO    ] No existing commands found in stream
[2026-06-12 21:25:18,760.760 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 21:25:18,763.763 INFO    ] Waiting 2.40 seconds before fallback handling...
[2026-06-12 21:25:21,524.524 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 21:25:21,526.526 INFO    ] Checking for system updates...
[2026-06-12 21:25:21,546.546 INFO    ] 200
[2026-06-12 21:25:21,548.548 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:25:21,577.577 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 21:25:21,578.578 INFO    ] No update needed
[2026-06-12 21:25:21,580.580 INFO    ] Checking for camera pi updates...
[2026-06-12 21:25:21,600.600 INFO    ] 200
[2026-06-12 21:25:21,601.601 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:25:21,624.624 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 21:25:21,679.679 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 21:25:21,681.681 INFO    ] No camera update needed
[2026-06-12 21:25:21,682.682 INFO    ] Script finished. Safe exiting...
[2026-06-12 21:25:21,683.683 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 21:25:21,686.686 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 21:25:21,689.689 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 21:25:23,727.727 INFO    ] ================================================
[2026-06-12 21:25:23,741.741 INFO    ] Launching Daemon at Fri Jun 12 21:25:23 IST 2026
[2026-06-12 21:25:23,752.752 INFO    ] ================================================
[2026-06-12 21:25:24,082.082 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 21:25:24
[2026-06-12 21:25:24,396.396 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 21:25:24,537.537 INFO    ] Initializing speech engine...
[2026-06-12 21:25:24,542.542 INFO    ] 2026-06-12 21:25:24
[2026-06-12 21:25:24,744.744 INFO    ] 2026-06-12 21:25:24
[2026-06-12 21:25:24,772.772 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 21:25:24,957.957 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 21:25:24,966.966 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 21:25:25,116.116 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 21:25:25,162.162 INFO    ] time= 12/06/2026 21:25:25
[2026-06-12 21:25:25,186.186 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 21:25:25,192.192 INFO    ] Checking for existing commands in stream...
[2026-06-12 21:25:25,259.259 INFO    ] No existing commands found in stream
[2026-06-12 21:25:30,273.273 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 21:25:30,277.277 INFO    ] Waiting 0.70 seconds before fallback handling...
[2026-06-12 21:25:31,356.356 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 21:25:31,358.358 INFO    ] Checking for system updates...
[2026-06-12 21:25:31,383.383 INFO    ] 200
[2026-06-12 21:25:31,385.385 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:25:31,419.419 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 21:25:31,420.420 INFO    ] No update needed
[2026-06-12 21:25:31,422.422 INFO    ] Checking for camera pi updates...
[2026-06-12 21:25:31,449.449 INFO    ] 200
[2026-06-12 21:25:31,451.451 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:25:31,476.476 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 21:25:31,616.616 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 21:25:31,618.618 INFO    ] No camera update needed
[2026-06-12 21:25:31,619.619 INFO    ] Script finished. Safe exiting...
[2026-06-12 21:25:31,621.621 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 21:25:31,625.625 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 21:25:31,628.628 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 21:25:33,668.668 INFO    ] ================================================
[2026-06-12 21:25:33,683.683 INFO    ] Launching Daemon at Fri Jun 12 21:25:33 IST 2026
[2026-06-12 21:25:33,694.694 INFO    ] ================================================
[2026-06-12 21:25:34,079.079 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 21:25:34
[2026-06-12 21:25:34,412.412 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 21:25:34,562.562 INFO    ] Initializing speech engine...
[2026-06-12 21:25:34,567.567 INFO    ] 2026-06-12 21:25:34
[2026-06-12 21:25:34,774.774 INFO    ] 2026-06-12 21:25:34
[2026-06-12 21:25:34,803.803 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 21:25:34,986.986 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 21:25:34,996.996 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 21:25:35,147.147 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 21:25:35,196.196 INFO    ] time= 12/06/2026 21:25:35
[2026-06-12 21:25:35,217.217 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 21:25:35,224.224 INFO    ] Checking for existing commands in stream...
[2026-06-12 21:25:35,291.291 INFO    ] No existing commands found in stream
[2026-06-12 21:25:40,305.305 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 21:25:40,313.313 INFO    ] Waiting 2.76 seconds before fallback handling...
[2026-06-12 21:25:43,461.461 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 21:25:43,463.463 INFO    ] Checking for system updates...
[2026-06-12 21:25:43,483.483 INFO    ] 200
[2026-06-12 21:25:43,484.484 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:25:43,514.514 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 21:25:43,515.515 INFO    ] No update needed
[2026-06-12 21:25:43,517.517 INFO    ] Checking for camera pi updates...
[2026-06-12 21:25:43,537.537 INFO    ] 200
[2026-06-12 21:25:43,538.538 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:25:43,563.563 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 21:25:43,604.604 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 21:25:43,605.605 INFO    ] No camera update needed
[2026-06-12 21:25:43,607.607 INFO    ] Script finished. Safe exiting...
[2026-06-12 21:25:43,608.608 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 21:25:43,611.611 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 21:25:43,614.614 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 21:25:45,651.651 INFO    ] ================================================
[2026-06-12 21:25:45,666.666 INFO    ] Launching Daemon at Fri Jun 12 21:25:45 IST 2026
[2026-06-12 21:25:45,677.677 INFO    ] ================================================
[2026-06-12 21:25:46,045.045 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 21:25:46
[2026-06-12 21:25:46,356.356 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 21:25:46,486.486 INFO    ] Initializing speech engine...
[2026-06-12 21:25:46,494.494 INFO    ] 2026-06-12 21:25:46
[2026-06-12 21:25:46,685.685 INFO    ] 2026-06-12 21:25:46
[2026-06-12 21:25:46,716.716 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 21:25:46,865.865 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 21:25:46,903.903 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 21:25:47,060.060 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 21:25:47,072.072 INFO    ] time= 12/06/2026 21:25:47
[2026-06-12 21:25:47,144.144 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 21:25:47,169.169 INFO    ] Checking for existing commands in stream...
[2026-06-12 21:25:47,271.271 INFO    ] No existing commands found in stream
[2026-06-12 21:25:52,280.280 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 21:25:52,283.283 INFO    ] Waiting 2.31 seconds before fallback handling...
[2026-06-12 21:25:54,969.969 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 21:25:54,971.971 INFO    ] Checking for system updates...
[2026-06-12 21:25:54,992.992 INFO    ] 200
[2026-06-12 21:25:54,993.993 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:25:55,025.025 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 21:25:55,026.026 INFO    ] No update needed
[2026-06-12 21:25:55,028.028 INFO    ] Checking for camera pi updates...
[2026-06-12 21:25:55,047.047 INFO    ] 200
[2026-06-12 21:25:55,048.048 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:25:55,071.071 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 21:25:55,111.111 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 21:25:55,113.113 INFO    ] No camera update needed
[2026-06-12 21:25:55,114.114 INFO    ] Script finished. Safe exiting...
[2026-06-12 21:25:55,115.115 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 21:25:55,118.118 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 21:25:55,121.121 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 21:25:57,158.158 INFO    ] ================================================
[2026-06-12 21:25:57,173.173 INFO    ] Launching Daemon at Fri Jun 12 21:25:57 IST 2026
[2026-06-12 21:25:57,184.184 INFO    ] ================================================
[2026-06-12 21:25:57,541.541 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 21:25:57
[2026-06-12 21:25:57,856.856 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 21:25:58,001.001 INFO    ] Initializing speech engine...
[2026-06-12 21:25:58,005.005 INFO    ] 2026-06-12 21:25:58
[2026-06-12 21:25:58,209.209 INFO    ] 2026-06-12 21:25:58
[2026-06-12 21:25:58,238.238 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 21:25:58,420.420 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 21:25:58,423.423 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 21:25:58,559.559 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 21:25:58,623.623 INFO    ] time= 12/06/2026 21:25:58
[2026-06-12 21:25:58,649.649 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 21:25:58,656.656 INFO    ] Checking for existing commands in stream...
[2026-06-12 21:25:58,721.721 INFO    ] No existing commands found in stream
[2026-06-12 21:26:03,732.732 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 21:26:03,734.734 INFO    ] Waiting 3.45 seconds before fallback handling...
[2026-06-12 21:26:07,568.568 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 21:26:07,569.569 INFO    ] Checking for system updates...
[2026-06-12 21:26:07,590.590 INFO    ] 200
[2026-06-12 21:26:07,591.591 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:26:07,626.626 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 21:26:07,627.627 INFO    ] No update needed
[2026-06-12 21:26:07,629.629 INFO    ] Checking for camera pi updates...
[2026-06-12 21:26:07,648.648 INFO    ] 200
[2026-06-12 21:26:07,649.649 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:26:07,674.674 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 21:26:07,724.724 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 21:26:07,725.725 INFO    ] No camera update needed
[2026-06-12 21:26:07,727.727 INFO    ] Script finished. Safe exiting...
[2026-06-12 21:26:07,728.728 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 21:26:07,731.731 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 21:26:07,734.734 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 21:26:09,771.771 INFO    ] ================================================
[2026-06-12 21:26:09,786.786 INFO    ] Launching Daemon at Fri Jun 12 21:26:09 IST 2026
[2026-06-12 21:26:09,797.797 INFO    ] ================================================
[2026-06-12 21:26:10,170.170 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 21:26:10
[2026-06-12 21:26:10,487.487 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 21:26:10,630.630 INFO    ] Initializing speech engine...
[2026-06-12 21:26:10,635.635 INFO    ] 2026-06-12 21:26:10
[2026-06-12 21:26:10,838.838 INFO    ] 2026-06-12 21:26:10
[2026-06-12 21:26:10,868.868 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 21:26:11,052.052 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 21:26:11,062.062 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 21:26:11,189.189 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 21:26:11,257.257 INFO    ] time= 12/06/2026 21:26:11
[2026-06-12 21:26:11,281.281 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 21:26:11,288.288 INFO    ] Checking for existing commands in stream...
[2026-06-12 21:26:11,377.377 INFO    ] No existing commands found in stream
[2026-06-12 21:26:16,386.386 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 21:26:16,389.389 INFO    ] Waiting 1.75 seconds before fallback handling...
[2026-06-12 21:26:18,508.508 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 21:26:18,510.510 INFO    ] Checking for system updates...
[2026-06-12 21:26:18,531.531 INFO    ] 200
[2026-06-12 21:26:18,533.533 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:26:18,565.565 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 21:26:18,566.566 INFO    ] No update needed
[2026-06-12 21:26:18,568.568 INFO    ] Checking for camera pi updates...
[2026-06-12 21:26:18,588.588 INFO    ] 200
[2026-06-12 21:26:18,589.589 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:26:18,614.614 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 21:26:18,658.658 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 21:26:18,659.659 INFO    ] No camera update needed
[2026-06-12 21:26:18,660.660 INFO    ] Script finished. Safe exiting...
[2026-06-12 21:26:18,662.662 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 21:26:18,665.665 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 21:26:18,667.667 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 21:26:20,705.705 INFO    ] ================================================
[2026-06-12 21:26:20,720.720 INFO    ] Launching Daemon at Fri Jun 12 21:26:20 IST 2026
[2026-06-12 21:26:20,730.730 INFO    ] ================================================
[2026-06-12 21:26:21,079.079 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 21:26:21
[2026-06-12 21:26:21,403.403 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 21:26:21,557.557 INFO    ] Initializing speech engine...
[2026-06-12 21:26:21,561.561 INFO    ] 2026-06-12 21:26:21
[2026-06-12 21:26:21,770.770 INFO    ] 2026-06-12 21:26:21
[2026-06-12 21:26:21,800.800 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 21:26:21,988.988 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 21:26:22,000.000 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 21:26:22,130.130 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 21:26:22,198.198 INFO    ] time= 12/06/2026 21:26:22
[2026-06-12 21:26:22,223.223 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 21:26:22,229.229 INFO    ] Checking for existing commands in stream...
[2026-06-12 21:26:22,321.321 INFO    ] No existing commands found in stream
[2026-06-12 21:26:27,335.335 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 21:26:27,339.339 INFO    ] Waiting 1.35 seconds before fallback handling...
[2026-06-12 21:26:29,092.092 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 21:26:29,093.093 INFO    ] Checking for system updates...
[2026-06-12 21:26:29,115.115 INFO    ] 200
[2026-06-12 21:26:29,117.117 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:26:29,150.150 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 21:26:29,151.151 INFO    ] No update needed
[2026-06-12 21:26:29,153.153 INFO    ] Checking for camera pi updates...
[2026-06-12 21:26:29,174.174 INFO    ] 200
[2026-06-12 21:26:29,175.175 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:26:29,198.198 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 21:26:29,238.238 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 21:26:29,240.240 INFO    ] No camera update needed
[2026-06-12 21:26:29,241.241 INFO    ] Script finished. Safe exiting...
[2026-06-12 21:26:29,243.243 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 21:26:29,246.246 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 21:26:29,249.249 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 21:26:31,291.291 INFO    ] ================================================
[2026-06-12 21:26:31,306.306 INFO    ] Launching Daemon at Fri Jun 12 21:26:31 IST 2026
[2026-06-12 21:26:31,316.316 INFO    ] ================================================
[2026-06-12 21:26:31,707.707 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 21:26:31
[2026-06-12 21:26:32,047.047 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 21:26:32,188.188 INFO    ] Initializing speech engine...
[2026-06-12 21:26:32,193.193 INFO    ] 2026-06-12 21:26:32
[2026-06-12 21:26:32,426.426 INFO    ] 2026-06-12 21:26:32
[2026-06-12 21:26:32,461.461 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 21:26:32,605.605 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 21:26:32,649.649 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 21:26:32,786.786 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 21:26:32,856.856 INFO    ] time= 12/06/2026 21:26:32
[2026-06-12 21:26:32,878.878 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 21:26:32,885.885 INFO    ] Checking for existing commands in stream...
[2026-06-12 21:26:32,952.952 INFO    ] No existing commands found in stream
[2026-06-12 21:26:37,967.967 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 21:26:37,970.970 INFO    ] Waiting 3.98 seconds before fallback handling...
[2026-06-12 21:26:42,309.309 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 21:26:42,311.311 INFO    ] Checking for system updates...
[2026-06-12 21:26:42,334.334 INFO    ] 200
[2026-06-12 21:26:42,335.335 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:26:42,369.369 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 21:26:42,370.370 INFO    ] No update needed
[2026-06-12 21:26:42,372.372 INFO    ] Checking for camera pi updates...
[2026-06-12 21:26:42,393.393 INFO    ] 200
[2026-06-12 21:26:42,394.394 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:26:42,423.423 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 21:26:42,482.482 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 21:26:42,484.484 INFO    ] No camera update needed
[2026-06-12 21:26:42,485.485 INFO    ] Script finished. Safe exiting...
[2026-06-12 21:26:42,486.486 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 21:26:42,490.490 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 21:26:42,493.493 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 21:26:44,533.533 INFO    ] ================================================
[2026-06-12 21:26:44,548.548 INFO    ] Launching Daemon at Fri Jun 12 21:26:44 IST 2026
[2026-06-12 21:26:44,560.560 INFO    ] ================================================
[2026-06-12 21:26:44,912.912 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 21:26:44
[2026-06-12 21:26:45,247.247 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 21:26:45,392.392 INFO    ] Initializing speech engine...
[2026-06-12 21:26:45,402.402 INFO    ] 2026-06-12 21:26:45
[2026-06-12 21:26:45,610.610 INFO    ] 2026-06-12 21:26:45
[2026-06-12 21:26:45,639.639 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 21:26:45,823.823 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 21:26:45,826.826 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 21:26:45,968.968 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 21:26:46,030.030 INFO    ] time= 12/06/2026 21:26:45
[2026-06-12 21:26:46,054.054 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 21:26:46,061.061 INFO    ] Checking for existing commands in stream...
[2026-06-12 21:26:46,151.151 INFO    ] No existing commands found in stream
[2026-06-12 21:26:51,161.161 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 21:26:51,164.164 INFO    ] Waiting 2.21 seconds before fallback handling...
[2026-06-12 21:26:53,739.739 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 21:26:53,741.741 INFO    ] Checking for system updates...
[2026-06-12 21:26:53,761.761 INFO    ] 200
[2026-06-12 21:26:53,763.763 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:26:53,794.794 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 21:26:53,796.796 INFO    ] No update needed
[2026-06-12 21:26:53,797.797 INFO    ] Checking for camera pi updates...
[2026-06-12 21:26:53,817.817 INFO    ] 200
[2026-06-12 21:26:53,819.819 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:26:53,843.843 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 21:26:53,887.887 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 21:26:53,889.889 INFO    ] No camera update needed
[2026-06-12 21:26:53,890.890 INFO    ] Script finished. Safe exiting...
[2026-06-12 21:26:53,891.891 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 21:26:53,894.894 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 21:26:53,897.897 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 21:26:55,934.934 INFO    ] ================================================
[2026-06-12 21:26:55,949.949 INFO    ] Launching Daemon at Fri Jun 12 21:26:55 IST 2026
[2026-06-12 21:26:55,960.960 INFO    ] ================================================
[2026-06-12 21:26:56,331.331 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 21:26:56
[2026-06-12 21:26:56,671.671 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 21:26:56,817.817 INFO    ] Initializing speech engine...
[2026-06-12 21:26:56,828.828 INFO    ] 2026-06-12 21:26:56
[2026-06-12 21:26:57,041.041 INFO    ] 2026-06-12 21:26:57
[2026-06-12 21:26:57,070.070 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 21:26:57,258.258 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 21:26:57,262.262 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 21:26:57,398.398 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 21:26:57,455.455 INFO    ] time= 12/06/2026 21:26:57
[2026-06-12 21:26:57,494.494 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 21:26:57,497.497 INFO    ] Checking for existing commands in stream...
[2026-06-12 21:26:57,594.594 INFO    ] No existing commands found in stream
[2026-06-12 21:27:02,611.611 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 21:27:02,613.613 INFO    ] Waiting 0.29 seconds before fallback handling...
[2026-06-12 21:27:03,211.211 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 21:27:03,212.212 INFO    ] Checking for system updates...
[2026-06-12 21:27:03,233.233 INFO    ] 200
[2026-06-12 21:27:03,235.235 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:27:03,280.280 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 21:27:03,283.283 INFO    ] No update needed
[2026-06-12 21:27:03,286.286 INFO    ] Checking for camera pi updates...
[2026-06-12 21:27:03,320.320 INFO    ] 200
[2026-06-12 21:27:03,323.323 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:27:03,360.360 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 21:27:03,407.407 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 21:27:03,408.408 INFO    ] No camera update needed
[2026-06-12 21:27:03,410.410 INFO    ] Script finished. Safe exiting...
[2026-06-12 21:27:03,411.411 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 21:27:03,414.414 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 21:27:03,417.417 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 21:27:05,454.454 INFO    ] ================================================
[2026-06-12 21:27:05,470.470 INFO    ] Launching Daemon at Fri Jun 12 21:27:05 IST 2026
[2026-06-12 21:27:05,482.482 INFO    ] ================================================
[2026-06-12 21:27:05,813.813 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 21:27:05
[2026-06-12 21:27:06,141.141 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 21:27:06,271.271 INFO    ] Initializing speech engine...
[2026-06-12 21:27:06,279.279 INFO    ] 2026-06-12 21:27:06
[2026-06-12 21:27:06,492.492 INFO    ] 2026-06-12 21:27:06
[2026-06-12 21:27:06,520.520 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 21:27:06,707.707 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 21:27:06,715.715 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 21:27:06,840.840 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 21:27:06,890.890 INFO    ] time= 12/06/2026 21:27:06
[2026-06-12 21:27:06,936.936 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 21:27:06,942.942 INFO    ] Checking for existing commands in stream...
[2026-06-12 21:27:07,014.014 INFO    ] No existing commands found in stream
[2026-06-12 21:27:12,028.028 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 21:27:12,031.031 INFO    ] Waiting 0.81 seconds before fallback handling...
[2026-06-12 21:27:13,228.228 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 21:27:13,230.230 INFO    ] Checking for system updates...
[2026-06-12 21:27:13,250.250 INFO    ] 200
[2026-06-12 21:27:13,251.251 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:27:13,281.281 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 21:27:13,283.283 INFO    ] No update needed
[2026-06-12 21:27:13,284.284 INFO    ] Checking for camera pi updates...
[2026-06-12 21:27:13,303.303 INFO    ] 200
[2026-06-12 21:27:13,304.304 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:27:13,328.328 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 21:27:13,373.373 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 21:27:13,374.374 INFO    ] No camera update needed
[2026-06-12 21:27:13,375.375 INFO    ] Script finished. Safe exiting...
[2026-06-12 21:27:13,377.377 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 21:27:13,380.380 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 21:27:13,382.382 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 21:27:15,424.424 INFO    ] ================================================
[2026-06-12 21:27:15,439.439 INFO    ] Launching Daemon at Fri Jun 12 21:27:15 IST 2026
[2026-06-12 21:27:15,450.450 INFO    ] ================================================
[2026-06-12 21:27:15,827.827 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 21:27:15
[2026-06-12 21:27:16,143.143 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 21:27:16,287.287 INFO    ] Initializing speech engine...
[2026-06-12 21:27:16,292.292 INFO    ] 2026-06-12 21:27:16
[2026-06-12 21:27:16,496.496 INFO    ] 2026-06-12 21:27:16
[2026-06-12 21:27:16,523.523 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 21:27:16,707.707 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 21:27:16,716.716 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 21:27:16,874.874 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 21:27:16,913.913 INFO    ] time= 12/06/2026 21:27:16
[2026-06-12 21:27:16,935.935 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 21:27:16,941.941 INFO    ] Checking for existing commands in stream...
[2026-06-12 21:27:17,007.007 INFO    ] No existing commands found in stream
[2026-06-12 21:27:22,026.026 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 21:27:22,029.029 INFO    ] Waiting 0.46 seconds before fallback handling...
[2026-06-12 21:27:22,889.889 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 21:27:22,891.891 INFO    ] Checking for system updates...
[2026-06-12 21:27:22,915.915 INFO    ] 200
[2026-06-12 21:27:22,916.916 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:27:22,948.948 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 21:27:22,949.949 INFO    ] No update needed
[2026-06-12 21:27:22,951.951 INFO    ] Checking for camera pi updates...
[2026-06-12 21:27:22,971.971 INFO    ] 200
[2026-06-12 21:27:22,972.972 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:27:22,996.996 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 21:27:23,047.047 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 21:27:23,048.048 INFO    ] No camera update needed
[2026-06-12 21:27:23,049.049 INFO    ] Script finished. Safe exiting...
[2026-06-12 21:27:23,051.051 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 21:27:23,054.054 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 21:27:23,056.056 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 21:27:25,097.097 INFO    ] ================================================
[2026-06-12 21:27:25,113.113 INFO    ] Launching Daemon at Fri Jun 12 21:27:25 IST 2026
[2026-06-12 21:27:25,124.124 INFO    ] ================================================
[2026-06-12 21:27:25,495.495 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 21:27:25
[2026-06-12 21:27:25,832.832 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 21:27:25,971.971 INFO    ] Initializing speech engine...
[2026-06-12 21:27:25,985.985 INFO    ] 2026-06-12 21:27:25
[2026-06-12 21:27:26,198.198 INFO    ] 2026-06-12 21:27:26
[2026-06-12 21:27:26,227.227 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 21:27:26,413.413 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 21:27:26,423.423 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 21:27:26,553.553 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 21:27:26,624.624 INFO    ] time= 12/06/2026 21:27:26
[2026-06-12 21:27:26,648.648 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 21:27:26,655.655 INFO    ] Checking for existing commands in stream...
[2026-06-12 21:27:26,723.723 INFO    ] No existing commands found in stream
[2026-06-12 21:27:31,747.747 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 21:27:31,751.751 INFO    ] Waiting 1.20 seconds before fallback handling...
[2026-06-12 21:27:33,337.337 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 21:27:33,338.338 INFO    ] Checking for system updates...
[2026-06-12 21:27:33,363.363 INFO    ] 200
[2026-06-12 21:27:33,364.364 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:27:33,395.395 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 21:27:33,396.396 INFO    ] No update needed
[2026-06-12 21:27:33,398.398 INFO    ] Checking for camera pi updates...
[2026-06-12 21:27:33,419.419 INFO    ] 200
[2026-06-12 21:27:33,420.420 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:27:33,443.443 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 21:27:33,483.483 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 21:27:33,485.485 INFO    ] No camera update needed
[2026-06-12 21:27:33,486.486 INFO    ] Script finished. Safe exiting...
[2026-06-12 21:27:33,487.487 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 21:27:33,490.490 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 21:27:33,493.493 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 21:27:35,531.531 INFO    ] ================================================
[2026-06-12 21:27:35,546.546 INFO    ] Launching Daemon at Fri Jun 12 21:27:35 IST 2026
[2026-06-12 21:27:35,558.558 INFO    ] ================================================
[2026-06-12 21:27:35,901.901 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 21:27:35
[2026-06-12 21:27:36,214.214 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 21:27:36,357.357 INFO    ] Initializing speech engine...
[2026-06-12 21:27:36,362.362 INFO    ] 2026-06-12 21:27:36
[2026-06-12 21:27:36,564.564 INFO    ] 2026-06-12 21:27:36
[2026-06-12 21:27:36,592.592 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 21:27:36,775.775 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 21:27:36,783.783 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 21:27:36,905.905 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 21:27:36,976.976 INFO    ] time= 12/06/2026 21:27:36
[2026-06-12 21:27:37,003.003 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 21:27:37,010.010 INFO    ] Checking for existing commands in stream...
[2026-06-12 21:27:37,100.100 INFO    ] No existing commands found in stream
[2026-06-12 21:27:42,109.109 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 21:27:42,112.112 INFO    ] Waiting 1.86 seconds before fallback handling...
[2026-06-12 21:27:44,306.306 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 21:27:44,308.308 INFO    ] Checking for system updates...
[2026-06-12 21:27:44,329.329 INFO    ] 200
[2026-06-12 21:27:44,331.331 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:27:44,361.361 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 21:27:44,362.362 INFO    ] No update needed
[2026-06-12 21:27:44,363.363 INFO    ] Checking for camera pi updates...
[2026-06-12 21:27:44,383.383 INFO    ] 200
[2026-06-12 21:27:44,384.384 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:27:44,407.407 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 21:27:44,448.448 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 21:27:44,449.449 INFO    ] No camera update needed
[2026-06-12 21:27:44,450.450 INFO    ] Script finished. Safe exiting...
[2026-06-12 21:27:44,452.452 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 21:27:44,455.455 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 21:27:44,457.457 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 21:27:46,494.494 INFO    ] ================================================
[2026-06-12 21:27:46,510.510 INFO    ] Launching Daemon at Fri Jun 12 21:27:46 IST 2026
[2026-06-12 21:27:46,521.521 INFO    ] ================================================
[2026-06-12 21:27:46,904.904 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 21:27:46
[2026-06-12 21:27:47,224.224 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 21:27:47,357.357 INFO    ] Initializing speech engine...
[2026-06-12 21:27:47,372.372 INFO    ] 2026-06-12 21:27:47
[2026-06-12 21:27:47,626.626 INFO    ] 2026-06-12 21:27:47
[2026-06-12 21:27:47,654.654 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 21:27:47,836.836 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 21:27:47,845.845 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 21:27:47,970.970 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 21:27:48,033.033 INFO    ] time= 12/06/2026 21:27:47
[2026-06-12 21:27:48,065.065 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 21:27:48,070.070 INFO    ] Checking for existing commands in stream...
[2026-06-12 21:27:48,162.162 INFO    ] No existing commands found in stream
[2026-06-12 21:27:53,176.176 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 21:27:53,179.179 INFO    ] Waiting 2.48 seconds before fallback handling...
[2026-06-12 21:27:56,066.066 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 21:27:56,068.068 INFO    ] Checking for system updates...
[2026-06-12 21:27:56,092.092 INFO    ] 200
[2026-06-12 21:27:56,094.094 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:27:56,126.126 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 21:27:56,127.127 INFO    ] No update needed
[2026-06-12 21:27:56,129.129 INFO    ] Checking for camera pi updates...
[2026-06-12 21:27:56,152.152 INFO    ] 200
[2026-06-12 21:27:56,153.153 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:27:56,181.181 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 21:27:56,236.236 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 21:27:56,238.238 INFO    ] No camera update needed
[2026-06-12 21:27:56,239.239 INFO    ] Script finished. Safe exiting...
[2026-06-12 21:27:56,241.241 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 21:27:56,244.244 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 21:27:56,247.247 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 21:27:58,284.284 INFO    ] ================================================
[2026-06-12 21:27:58,300.300 INFO    ] Launching Daemon at Fri Jun 12 21:27:58 IST 2026
[2026-06-12 21:27:58,311.311 INFO    ] ================================================
[2026-06-12 21:27:58,649.649 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 21:27:58
[2026-06-12 21:27:58,961.961 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 21:27:59,093.093 INFO    ] Initializing speech engine...
[2026-06-12 21:27:59,100.100 INFO    ] 2026-06-12 21:27:59
[2026-06-12 21:27:59,312.312 INFO    ] 2026-06-12 21:27:59
[2026-06-12 21:27:59,342.342 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 21:27:59,525.525 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 21:27:59,534.534 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 21:27:59,663.663 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 21:27:59,729.729 INFO    ] time= 12/06/2026 21:27:59
[2026-06-12 21:27:59,753.753 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 21:27:59,759.759 INFO    ] Checking for existing commands in stream...
[2026-06-12 21:27:59,826.826 INFO    ] No existing commands found in stream
[2026-06-12 21:28:04,835.835 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 21:28:04,838.838 INFO    ] Waiting 1.86 seconds before fallback handling...
[2026-06-12 21:28:07,090.090 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 21:28:07,091.091 INFO    ] Checking for system updates...
[2026-06-12 21:28:07,112.112 INFO    ] 200
[2026-06-12 21:28:07,113.113 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:28:07,145.145 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 21:28:07,146.146 INFO    ] No update needed
[2026-06-12 21:28:07,147.147 INFO    ] Checking for camera pi updates...
[2026-06-12 21:28:07,166.166 INFO    ] 200
[2026-06-12 21:28:07,168.168 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:28:07,194.194 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 21:28:07,238.238 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 21:28:07,240.240 INFO    ] No camera update needed
[2026-06-12 21:28:07,241.241 INFO    ] Script finished. Safe exiting...
[2026-06-12 21:28:07,242.242 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 21:28:07,245.245 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 21:28:07,248.248 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 21:28:09,285.285 INFO    ] ================================================
[2026-06-12 21:28:09,302.302 INFO    ] Launching Daemon at Fri Jun 12 21:28:09 IST 2026
[2026-06-12 21:28:09,313.313 INFO    ] ================================================
[2026-06-12 21:28:09,665.665 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 21:28:09
[2026-06-12 21:28:09,982.982 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 21:28:10,126.126 INFO    ] Initializing speech engine...
[2026-06-12 21:28:10,131.131 INFO    ] 2026-06-12 21:28:10
[2026-06-12 21:28:10,335.335 INFO    ] 2026-06-12 21:28:10
[2026-06-12 21:28:10,363.363 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 21:28:10,546.546 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 21:28:10,555.555 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 21:28:10,693.693 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 21:28:10,750.750 INFO    ] time= 12/06/2026 21:28:10
[2026-06-12 21:28:10,773.773 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 21:28:10,779.779 INFO    ] Checking for existing commands in stream...
[2026-06-12 21:28:10,846.846 INFO    ] No existing commands found in stream
[2026-06-12 21:28:15,855.855 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 21:28:15,857.857 INFO    ] Waiting 2.52 seconds before fallback handling...
[2026-06-12 21:28:18,781.781 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 21:28:18,783.783 INFO    ] Checking for system updates...
[2026-06-12 21:28:18,804.804 INFO    ] 200
[2026-06-12 21:28:18,805.805 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:28:18,837.837 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 21:28:18,838.838 INFO    ] No update needed
[2026-06-12 21:28:18,840.840 INFO    ] Checking for camera pi updates...
[2026-06-12 21:28:18,860.860 INFO    ] 200
[2026-06-12 21:28:18,861.861 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:28:18,885.885 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 21:28:18,933.933 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 21:28:18,934.934 INFO    ] No camera update needed
[2026-06-12 21:28:18,936.936 INFO    ] Script finished. Safe exiting...
[2026-06-12 21:28:18,937.937 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 21:28:18,940.940 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 21:28:18,943.943 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 21:28:20,980.980 INFO    ] ================================================
[2026-06-12 21:28:21,996.996 INFO    ] Launching Daemon at Fri Jun 12 21:28:20 IST 2026
[2026-06-12 21:28:21,006.006 INFO    ] ================================================
[2026-06-12 21:28:21,343.343 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 21:28:21
[2026-06-12 21:28:21,660.660 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 21:28:21,804.804 INFO    ] Initializing speech engine...
[2026-06-12 21:28:21,809.809 INFO    ] 2026-06-12 21:28:21
[2026-06-12 21:28:22,013.013 INFO    ] 2026-06-12 21:28:21
[2026-06-12 21:28:22,040.040 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 21:28:22,225.225 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 21:28:22,235.235 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 21:28:22,363.363 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 21:28:22,417.417 INFO    ] time= 12/06/2026 21:28:22
[2026-06-12 21:28:22,446.446 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 21:28:22,456.456 INFO    ] Checking for existing commands in stream...
[2026-06-12 21:28:22,528.528 INFO    ] No existing commands found in stream
[2026-06-12 21:28:27,542.542 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 21:28:27,545.545 INFO    ] Waiting 3.94 seconds before fallback handling...
[2026-06-12 21:28:31,826.826 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 21:28:31,827.827 INFO    ] Checking for system updates...
[2026-06-12 21:28:31,848.848 INFO    ] 200
[2026-06-12 21:28:31,850.850 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:28:31,885.885 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 21:28:31,886.886 INFO    ] No update needed
[2026-06-12 21:28:31,887.887 INFO    ] Checking for camera pi updates...
[2026-06-12 21:28:31,911.911 INFO    ] 200
[2026-06-12 21:28:31,912.912 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:28:31,937.937 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 21:28:31,969.969 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 21:28:31,970.970 INFO    ] No camera update needed
[2026-06-12 21:28:31,972.972 INFO    ] Script finished. Safe exiting...
[2026-06-12 21:28:31,973.973 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 21:28:31,976.976 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 21:28:31,979.979 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 21:28:34,010.010 INFO    ] ================================================
[2026-06-12 21:28:34,025.025 INFO    ] Launching Daemon at Fri Jun 12 21:28:34 IST 2026
[2026-06-12 21:28:34,036.036 INFO    ] ================================================
[2026-06-12 21:28:34,357.357 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 21:28:34
[2026-06-12 21:28:34,668.668 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 21:28:34,810.810 INFO    ] Initializing speech engine...
[2026-06-12 21:28:34,815.815 INFO    ] 2026-06-12 21:28:34
[2026-06-12 21:28:35,017.017 INFO    ] 2026-06-12 21:28:34
[2026-06-12 21:28:35,045.045 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 21:28:35,178.178 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 21:28:35,230.230 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 21:28:35,368.368 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 21:28:35,434.434 INFO    ] time= 12/06/2026 21:28:35
[2026-06-12 21:28:35,458.458 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 21:28:35,465.465 INFO    ] Checking for existing commands in stream...
[2026-06-12 21:28:35,532.532 INFO    ] No existing commands found in stream
[2026-06-12 21:28:40,561.561 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 21:28:40,564.564 INFO    ] Waiting 3.94 seconds before fallback handling...
[2026-06-12 21:28:44,844.844 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 21:28:44,845.845 INFO    ] Checking for system updates...
[2026-06-12 21:28:44,868.868 INFO    ] 200
[2026-06-12 21:28:44,869.869 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:28:44,902.902 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 21:28:44,904.904 INFO    ] No update needed
[2026-06-12 21:28:44,905.905 INFO    ] Checking for camera pi updates...
[2026-06-12 21:28:44,926.926 INFO    ] 200
[2026-06-12 21:28:44,927.927 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:28:44,953.953 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 21:28:45,008.008 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 21:28:45,010.010 INFO    ] No camera update needed
[2026-06-12 21:28:45,012.012 INFO    ] Script finished. Safe exiting...
[2026-06-12 21:28:45,013.013 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 21:28:45,016.016 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 21:28:45,019.019 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 21:28:47,060.060 INFO    ] ================================================
[2026-06-12 21:28:47,075.075 INFO    ] Launching Daemon at Fri Jun 12 21:28:47 IST 2026
[2026-06-12 21:28:47,086.086 INFO    ] ================================================
[2026-06-12 21:28:47,431.431 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 21:28:47
[2026-06-12 21:28:47,754.754 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 21:28:47,887.887 INFO    ] Initializing speech engine...
[2026-06-12 21:28:47,901.901 INFO    ] 2026-06-12 21:28:47
[2026-06-12 21:28:48,107.107 INFO    ] 2026-06-12 21:28:48
[2026-06-12 21:28:48,136.136 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 21:28:48,323.323 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 21:28:48,332.332 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 21:28:48,462.462 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 21:28:48,531.531 INFO    ] time= 12/06/2026 21:28:48
[2026-06-12 21:28:48,554.554 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 21:28:48,560.560 INFO    ] Checking for existing commands in stream...
[2026-06-12 21:28:48,651.651 INFO    ] No existing commands found in stream
[2026-06-12 21:28:53,660.660 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 21:28:53,662.662 INFO    ] Waiting 2.28 seconds before fallback handling...
[2026-06-12 21:28:56,275.275 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 21:28:56,277.277 INFO    ] Checking for system updates...
[2026-06-12 21:28:56,298.298 INFO    ] 200
[2026-06-12 21:28:56,299.299 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:28:56,329.329 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 21:28:56,331.331 INFO    ] No update needed
[2026-06-12 21:28:56,332.332 INFO    ] Checking for camera pi updates...
[2026-06-12 21:28:56,352.352 INFO    ] 200
[2026-06-12 21:28:56,354.354 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:28:56,376.376 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 21:28:56,422.422 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 21:28:56,423.423 INFO    ] No camera update needed
[2026-06-12 21:28:56,425.425 INFO    ] Script finished. Safe exiting...
[2026-06-12 21:28:56,426.426 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 21:28:56,429.429 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 21:28:56,431.431 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 21:28:58,468.468 INFO    ] ================================================
[2026-06-12 21:28:58,483.483 INFO    ] Launching Daemon at Fri Jun 12 21:28:58 IST 2026
[2026-06-12 21:28:58,494.494 INFO    ] ================================================
[2026-06-12 21:28:58,830.830 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 21:28:58
[2026-06-12 21:28:59,145.145 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 21:28:59,288.288 INFO    ] Initializing speech engine...
[2026-06-12 21:28:59,293.293 INFO    ] 2026-06-12 21:28:59
[2026-06-12 21:28:59,495.495 INFO    ] 2026-06-12 21:28:59
[2026-06-12 21:28:59,523.523 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 21:28:59,708.708 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 21:28:59,717.717 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 21:28:59,867.867 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 21:28:59,914.914 INFO    ] time= 12/06/2026 21:28:59
[2026-06-12 21:28:59,936.936 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 21:28:59,943.943 INFO    ] Checking for existing commands in stream...
[2026-06-12 21:29:00,007.007 INFO    ] No existing commands found in stream
[2026-06-12 21:29:05,018.018 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 21:29:05,021.021 INFO    ] Waiting 0.56 seconds before fallback handling...
[2026-06-12 21:29:06,053.053 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 21:29:06,054.054 INFO    ] Checking for system updates...
[2026-06-12 21:29:06,075.075 INFO    ] 200
[2026-06-12 21:29:06,076.076 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:29:06,106.106 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 21:29:06,107.107 INFO    ] No update needed
[2026-06-12 21:29:06,109.109 INFO    ] Checking for camera pi updates...
[2026-06-12 21:29:06,129.129 INFO    ] 200
[2026-06-12 21:29:06,131.131 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:29:06,159.159 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 21:29:06,217.217 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 21:29:06,219.219 INFO    ] No camera update needed
[2026-06-12 21:29:06,220.220 INFO    ] Script finished. Safe exiting...
[2026-06-12 21:29:06,222.222 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 21:29:06,225.225 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 21:29:06,228.228 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 21:29:08,266.266 INFO    ] ================================================
[2026-06-12 21:29:08,281.281 INFO    ] Launching Daemon at Fri Jun 12 21:29:08 IST 2026
[2026-06-12 21:29:08,291.291 INFO    ] ================================================
[2026-06-12 21:29:08,614.614 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 21:29:08
[2026-06-12 21:29:08,930.930 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 21:29:09,060.060 INFO    ] Initializing speech engine...
[2026-06-12 21:29:09,068.068 INFO    ] 2026-06-12 21:29:09
[2026-06-12 21:29:09,281.281 INFO    ] 2026-06-12 21:29:09
[2026-06-12 21:29:09,308.308 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 21:29:09,430.430 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 21:29:09,488.488 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 21:29:09,628.628 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 21:29:09,694.694 INFO    ] time= 12/06/2026 21:29:09
[2026-06-12 21:29:09,721.721 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 21:29:09,727.727 INFO    ] Checking for existing commands in stream...
[2026-06-12 21:29:09,794.794 INFO    ] No existing commands found in stream
[2026-06-12 21:29:14,803.803 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 21:29:14,806.806 INFO    ] Waiting 2.54 seconds before fallback handling...
[2026-06-12 21:29:17,787.787 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 21:29:17,789.789 INFO    ] Checking for system updates...
[2026-06-12 21:29:17,826.826 INFO    ] 200
[2026-06-12 21:29:17,828.828 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:29:17,890.890 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 21:29:17,892.892 INFO    ] No update needed
[2026-06-12 21:29:17,893.893 INFO    ] Checking for camera pi updates...
[2026-06-12 21:29:17,912.912 INFO    ] 200
[2026-06-12 21:29:17,914.914 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:29:17,938.938 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 21:29:17,983.983 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 21:29:17,984.984 INFO    ] No camera update needed
[2026-06-12 21:29:17,985.985 INFO    ] Script finished. Safe exiting...
[2026-06-12 21:29:17,987.987 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 21:29:17,990.990 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 21:29:17,992.992 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 21:29:20,032.032 INFO    ] ================================================
[2026-06-12 21:29:20,047.047 INFO    ] Launching Daemon at Fri Jun 12 21:29:20 IST 2026
[2026-06-12 21:29:20,058.058 INFO    ] ================================================
[2026-06-12 21:29:20,399.399 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 21:29:20
[2026-06-12 21:29:20,732.732 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 21:29:20,883.883 INFO    ] Initializing speech engine...
[2026-06-12 21:29:20,889.889 INFO    ] 2026-06-12 21:29:20
[2026-06-12 21:29:21,092.092 INFO    ] 2026-06-12 21:29:21
[2026-06-12 21:29:21,121.121 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 21:29:21,244.244 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 21:29:21,297.297 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 21:29:21,444.444 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 21:29:21,503.503 INFO    ] time= 12/06/2026 21:29:21
[2026-06-12 21:29:21,535.535 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 21:29:21,542.542 INFO    ] Checking for existing commands in stream...
[2026-06-12 21:29:21,609.609 INFO    ] No existing commands found in stream
[2026-06-12 21:29:26,623.623 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 21:29:26,626.626 INFO    ] Waiting 0.94 seconds before fallback handling...
[2026-06-12 21:29:27,952.952 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 21:29:27,954.954 INFO    ] Checking for system updates...
[2026-06-12 21:29:27,974.974 INFO    ] 200
[2026-06-12 21:29:27,975.975 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:29:28,008.008 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 21:29:28,009.009 INFO    ] No update needed
[2026-06-12 21:29:28,010.010 INFO    ] Checking for camera pi updates...
[2026-06-12 21:29:28,031.031 INFO    ] 200
[2026-06-12 21:29:28,032.032 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:29:28,056.056 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 21:29:28,101.101 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 21:29:28,103.103 INFO    ] No camera update needed
[2026-06-12 21:29:28,104.104 INFO    ] Script finished. Safe exiting...
[2026-06-12 21:29:28,105.105 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 21:29:28,108.108 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 21:29:28,111.111 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 21:29:30,148.148 INFO    ] ================================================
[2026-06-12 21:29:30,163.163 INFO    ] Launching Daemon at Fri Jun 12 21:29:30 IST 2026
[2026-06-12 21:29:30,175.175 INFO    ] ================================================
[2026-06-12 21:29:30,520.520 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 21:29:30
[2026-06-12 21:29:30,832.832 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 21:29:30,964.964 INFO    ] Initializing speech engine...
[2026-06-12 21:29:30,968.968 INFO    ] 2026-06-12 21:29:30
[2026-06-12 21:29:31,199.199 INFO    ] 2026-06-12 21:29:31
[2026-06-12 21:29:31,238.238 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 21:29:31,449.449 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 21:29:31,453.453 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 21:29:31,623.623 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 21:29:31,688.688 INFO    ] time= 12/06/2026 21:29:31
[2026-06-12 21:29:31,722.722 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 21:29:31,729.729 INFO    ] Checking for existing commands in stream...
[2026-06-12 21:29:31,807.807 INFO    ] No existing commands found in stream
[2026-06-12 21:29:36,816.816 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 21:29:36,819.819 INFO    ] Waiting 3.94 seconds before fallback handling...
[2026-06-12 21:29:41,130.130 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 21:29:41,131.131 INFO    ] Checking for system updates...
[2026-06-12 21:29:41,152.152 INFO    ] 200
[2026-06-12 21:29:41,153.153 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:29:41,183.183 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 21:29:41,184.184 INFO    ] No update needed
[2026-06-12 21:29:41,186.186 INFO    ] Checking for camera pi updates...
[2026-06-12 21:29:41,204.204 INFO    ] 200
[2026-06-12 21:29:41,206.206 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:29:41,231.231 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 21:29:41,365.365 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 21:29:41,366.366 INFO    ] No camera update needed
[2026-06-12 21:29:41,368.368 INFO    ] Script finished. Safe exiting...
[2026-06-12 21:29:41,369.369 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 21:29:41,372.372 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 21:29:41,375.375 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 21:29:43,412.412 INFO    ] ================================================
[2026-06-12 21:29:43,428.428 INFO    ] Launching Daemon at Fri Jun 12 21:29:43 IST 2026
[2026-06-12 21:29:43,439.439 INFO    ] ================================================
[2026-06-12 21:29:43,808.808 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 21:29:43
[2026-06-12 21:29:44,141.141 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 21:29:44,276.276 INFO    ] Initializing speech engine...
[2026-06-12 21:29:44,281.281 INFO    ] 2026-06-12 21:29:44
[2026-06-12 21:29:44,502.502 INFO    ] 2026-06-12 21:29:44
[2026-06-12 21:29:44,532.532 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 21:29:44,717.717 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 21:29:44,727.727 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 21:29:44,859.859 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 21:29:44,923.923 INFO    ] time= 12/06/2026 21:29:44
[2026-06-12 21:29:44,951.951 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 21:29:44,958.958 INFO    ] Checking for existing commands in stream...
[2026-06-12 21:29:45,025.025 INFO    ] No existing commands found in stream
[2026-06-12 21:29:50,039.039 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 21:29:50,042.042 INFO    ] Waiting 0.14 seconds before fallback handling...
[2026-06-12 21:29:50,528.528 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 21:29:50,529.529 INFO    ] Checking for system updates...
[2026-06-12 21:29:50,553.553 INFO    ] 200
[2026-06-12 21:29:50,554.554 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:29:50,585.585 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 21:29:50,587.587 INFO    ] No update needed
[2026-06-12 21:29:50,588.588 INFO    ] Checking for camera pi updates...
[2026-06-12 21:29:50,609.609 INFO    ] 200
[2026-06-12 21:29:50,611.611 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:29:50,636.636 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 21:29:50,675.675 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 21:29:50,677.677 INFO    ] No camera update needed
[2026-06-12 21:29:50,678.678 INFO    ] Script finished. Safe exiting...
[2026-06-12 21:29:50,680.680 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 21:29:50,683.683 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 21:29:50,686.686 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 21:29:52,723.723 INFO    ] ================================================
[2026-06-12 21:29:52,739.739 INFO    ] Launching Daemon at Fri Jun 12 21:29:52 IST 2026
[2026-06-12 21:29:52,750.750 INFO    ] ================================================
[2026-06-12 21:29:53,097.097 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 21:29:53
[2026-06-12 21:29:53,408.408 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 21:29:53,536.536 INFO    ] Initializing speech engine...
[2026-06-12 21:29:53,541.541 INFO    ] 2026-06-12 21:29:53
[2026-06-12 21:29:53,758.758 INFO    ] 2026-06-12 21:29:53
[2026-06-12 21:29:53,788.788 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 21:29:53,974.974 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 21:29:53,984.984 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 21:29:54,129.129 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 21:29:54,182.182 INFO    ] time= 12/06/2026 21:29:54
[2026-06-12 21:29:54,205.205 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 21:29:54,211.211 INFO    ] Checking for existing commands in stream...
[2026-06-12 21:29:54,278.278 INFO    ] No existing commands found in stream
[2026-06-12 21:29:59,287.287 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 21:29:59,290.290 INFO    ] Waiting 3.51 seconds before fallback handling...
[2026-06-12 21:30:05,341.341 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 21:30:05,344.344 INFO    ] Checking for system updates...
[2026-06-12 21:30:05,383.383 INFO    ] 200
[2026-06-12 21:30:05,385.385 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:30:05,426.426 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 21:30:05,427.427 INFO    ] No update needed
[2026-06-12 21:30:05,429.429 INFO    ] Checking for camera pi updates...
[2026-06-12 21:30:05,448.448 INFO    ] 200
[2026-06-12 21:30:05,450.450 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:30:05,473.473 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 21:30:05,515.515 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 21:30:05,516.516 INFO    ] No camera update needed
[2026-06-12 21:30:05,518.518 INFO    ] Script finished. Safe exiting...
[2026-06-12 21:30:05,519.519 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 21:30:05,522.522 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 21:30:05,525.525 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 21:30:07,565.565 INFO    ] ================================================
[2026-06-12 21:30:07,581.581 INFO    ] Launching Daemon at Fri Jun 12 21:30:07 IST 2026
[2026-06-12 21:30:07,592.592 INFO    ] ================================================
[2026-06-12 21:30:07,945.945 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 21:30:07
[2026-06-12 21:30:08,256.256 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 21:30:08,399.399 INFO    ] Initializing speech engine...
[2026-06-12 21:30:08,405.405 INFO    ] 2026-06-12 21:30:08
[2026-06-12 21:30:08,610.610 INFO    ] 2026-06-12 21:30:08
[2026-06-12 21:30:08,638.638 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 21:30:08,823.823 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 21:30:08,832.832 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 21:30:08,963.963 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 21:30:09,027.027 INFO    ] time= 12/06/2026 21:30:08
[2026-06-12 21:30:09,054.054 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 21:30:09,061.061 INFO    ] Checking for existing commands in stream...
[2026-06-12 21:30:09,128.128 INFO    ] No existing commands found in stream
[2026-06-12 21:30:14,136.136 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 21:30:14,144.144 INFO    ] Waiting 2.71 seconds before fallback handling...
[2026-06-12 21:30:17,234.234 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 21:30:17,236.236 INFO    ] Checking for system updates...
[2026-06-12 21:30:17,256.256 INFO    ] 200
[2026-06-12 21:30:17,258.258 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:30:17,289.289 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 21:30:17,291.291 INFO    ] No update needed
[2026-06-12 21:30:17,292.292 INFO    ] Checking for camera pi updates...
[2026-06-12 21:30:17,313.313 INFO    ] 200
[2026-06-12 21:30:17,315.315 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:30:17,338.338 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 21:30:17,385.385 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 21:30:17,386.386 INFO    ] No camera update needed
[2026-06-12 21:30:17,388.388 INFO    ] Script finished. Safe exiting...
[2026-06-12 21:30:17,389.389 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 21:30:17,392.392 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 21:30:17,395.395 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 21:30:19,436.436 INFO    ] ================================================
[2026-06-12 21:30:19,452.452 INFO    ] Launching Daemon at Fri Jun 12 21:30:19 IST 2026
[2026-06-12 21:30:19,462.462 INFO    ] ================================================
[2026-06-12 21:30:19,819.819 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 21:30:19
[2026-06-12 21:30:20,132.132 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 21:30:20,263.263 INFO    ] Initializing speech engine...
[2026-06-12 21:30:20,271.271 INFO    ] 2026-06-12 21:30:20
[2026-06-12 21:30:20,484.484 INFO    ] 2026-06-12 21:30:20
[2026-06-12 21:30:20,512.512 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 21:30:20,697.697 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 21:30:20,707.707 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 21:30:20,858.858 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 21:30:20,906.906 INFO    ] time= 12/06/2026 21:30:20
[2026-06-12 21:30:20,929.929 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 21:30:20,936.936 INFO    ] Checking for existing commands in stream...
[2026-06-12 21:30:21,002.002 INFO    ] No existing commands found in stream
[2026-06-12 21:30:26,011.011 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 21:30:26,014.014 INFO    ] Waiting 2.75 seconds before fallback handling...
[2026-06-12 21:30:29,146.146 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 21:30:29,147.147 INFO    ] Checking for system updates...
[2026-06-12 21:30:29,168.168 INFO    ] 200
[2026-06-12 21:30:29,169.169 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:30:29,203.203 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 21:30:29,204.204 INFO    ] No update needed
[2026-06-12 21:30:29,205.205 INFO    ] Checking for camera pi updates...
[2026-06-12 21:30:29,225.225 INFO    ] 200
[2026-06-12 21:30:29,227.227 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:30:29,250.250 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 21:30:29,290.290 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 21:30:29,291.291 INFO    ] No camera update needed
[2026-06-12 21:30:29,292.292 INFO    ] Script finished. Safe exiting...
[2026-06-12 21:30:29,293.293 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 21:30:29,296.296 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 21:30:29,299.299 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 21:30:31,337.337 INFO    ] ================================================
[2026-06-12 21:30:31,359.359 INFO    ] Launching Daemon at Fri Jun 12 21:30:31 IST 2026
[2026-06-12 21:30:31,370.370 INFO    ] ================================================
[2026-06-12 21:30:31,734.734 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 21:30:31
[2026-06-12 21:30:32,103.103 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 21:30:32,271.271 INFO    ] Initializing speech engine...
[2026-06-12 21:30:32,278.278 INFO    ] 2026-06-12 21:30:32
[2026-06-12 21:30:32,502.502 INFO    ] 2026-06-12 21:30:32
[2026-06-12 21:30:32,531.531 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 21:30:32,715.715 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 21:30:32,724.724 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 21:30:32,884.884 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 21:30:32,924.924 INFO    ] time= 12/06/2026 21:30:32
[2026-06-12 21:30:33,013.013 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 21:30:33,017.017 INFO    ] Checking for existing commands in stream...
[2026-06-12 21:30:33,081.081 INFO    ] No existing commands found in stream
[2026-06-12 21:30:38,091.091 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 21:30:38,094.094 INFO    ] Waiting 2.83 seconds before fallback handling...
[2026-06-12 21:30:41,300.300 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 21:30:41,302.302 INFO    ] Checking for system updates...
[2026-06-12 21:30:41,323.323 INFO    ] 200
[2026-06-12 21:30:41,324.324 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:30:41,358.358 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 21:30:41,360.360 INFO    ] No update needed
[2026-06-12 21:30:41,362.362 INFO    ] Checking for camera pi updates...
[2026-06-12 21:30:41,382.382 INFO    ] 200
[2026-06-12 21:30:41,383.383 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:30:41,408.408 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 21:30:41,438.438 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 21:30:41,440.440 INFO    ] No camera update needed
[2026-06-12 21:30:41,441.441 INFO    ] Script finished. Safe exiting...
[2026-06-12 21:30:41,442.442 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 21:30:41,446.446 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 21:30:41,449.449 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 21:30:43,487.487 INFO    ] ================================================
[2026-06-12 21:30:43,502.502 INFO    ] Launching Daemon at Fri Jun 12 21:30:43 IST 2026
[2026-06-12 21:30:43,513.513 INFO    ] ================================================
[2026-06-12 21:30:43,860.860 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 21:30:43
[2026-06-12 21:30:44,189.189 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 21:30:44,337.337 INFO    ] Initializing speech engine...
[2026-06-12 21:30:44,342.342 INFO    ] 2026-06-12 21:30:44
[2026-06-12 21:30:44,549.549 INFO    ] 2026-06-12 21:30:44
[2026-06-12 21:30:44,577.577 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 21:30:44,762.762 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 21:30:44,765.765 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 21:30:44,902.902 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 21:30:44,970.970 INFO    ] time= 12/06/2026 21:30:44
[2026-06-12 21:30:44,994.994 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 21:30:45,001.001 INFO    ] Checking for existing commands in stream...
[2026-06-12 21:30:45,067.067 INFO    ] No existing commands found in stream
[2026-06-12 21:30:50,076.076 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 21:30:50,079.079 INFO    ] Waiting 1.61 seconds before fallback handling...
[2026-06-12 21:30:52,069.069 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 21:30:52,071.071 INFO    ] Checking for system updates...
[2026-06-12 21:30:52,091.091 INFO    ] 200
[2026-06-12 21:30:52,093.093 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:30:52,123.123 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 21:30:52,124.124 INFO    ] No update needed
[2026-06-12 21:30:52,126.126 INFO    ] Checking for camera pi updates...
[2026-06-12 21:30:52,145.145 INFO    ] 200
[2026-06-12 21:30:52,146.146 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:30:52,169.169 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 21:30:52,227.227 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 21:30:52,228.228 INFO    ] No camera update needed
[2026-06-12 21:30:52,230.230 INFO    ] Script finished. Safe exiting...
[2026-06-12 21:30:52,231.231 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 21:30:52,234.234 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 21:30:52,237.237 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 21:30:54,276.276 INFO    ] ================================================
[2026-06-12 21:30:54,291.291 INFO    ] Launching Daemon at Fri Jun 12 21:30:54 IST 2026
[2026-06-12 21:30:54,302.302 INFO    ] ================================================
[2026-06-12 21:30:54,663.663 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 21:30:54
[2026-06-12 21:30:54,997.997 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 21:30:55,146.146 INFO    ] Initializing speech engine...
[2026-06-12 21:30:55,151.151 INFO    ] 2026-06-12 21:30:55
[2026-06-12 21:30:55,357.357 INFO    ] 2026-06-12 21:30:55
[2026-06-12 21:30:55,386.386 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 21:30:55,508.508 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 21:30:55,571.571 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 21:30:55,705.705 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 21:30:55,762.762 INFO    ] time= 12/06/2026 21:30:55
[2026-06-12 21:30:55,803.803 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 21:30:55,810.810 INFO    ] Checking for existing commands in stream...
[2026-06-12 21:30:55,877.877 INFO    ] No existing commands found in stream
[2026-06-12 21:31:00,886.886 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 21:31:00,889.889 INFO    ] Waiting 3.71 seconds before fallback handling...
[2026-06-12 21:31:04,933.933 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 21:31:04,934.934 INFO    ] Checking for system updates...
[2026-06-12 21:31:04,957.957 INFO    ] 200
[2026-06-12 21:31:04,958.958 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:31:04,992.992 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 21:31:04,994.994 INFO    ] No update needed
[2026-06-12 21:31:04,995.995 INFO    ] Checking for camera pi updates...
[2026-06-12 21:31:05,017.017 INFO    ] 200
[2026-06-12 21:31:05,019.019 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:31:05,042.042 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 21:31:05,101.101 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 21:31:05,102.102 INFO    ] No camera update needed
[2026-06-12 21:31:05,104.104 INFO    ] Script finished. Safe exiting...
[2026-06-12 21:31:05,105.105 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 21:31:05,108.108 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 21:31:05,111.111 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 21:31:07,151.151 INFO    ] ================================================
[2026-06-12 21:31:07,167.167 INFO    ] Launching Daemon at Fri Jun 12 21:31:07 IST 2026
[2026-06-12 21:31:07,178.178 INFO    ] ================================================
[2026-06-12 21:31:07,560.560 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 21:31:07
[2026-06-12 21:31:07,901.901 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 21:31:08,042.042 INFO    ] Initializing speech engine...
[2026-06-12 21:31:08,055.055 INFO    ] 2026-06-12 21:31:08
[2026-06-12 21:31:08,270.270 INFO    ] 2026-06-12 21:31:08
[2026-06-12 21:31:08,300.300 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 21:31:08,487.487 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 21:31:08,495.495 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 21:31:08,628.628 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 21:31:08,696.696 INFO    ] time= 12/06/2026 21:31:08
[2026-06-12 21:31:08,721.721 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 21:31:08,727.727 INFO    ] Checking for existing commands in stream...
[2026-06-12 21:31:08,795.795 INFO    ] No existing commands found in stream
[2026-06-12 21:31:13,804.804 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 21:31:13,807.807 INFO    ] Waiting 0.57 seconds before fallback handling...
[2026-06-12 21:31:14,750.750 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 21:31:14,751.751 INFO    ] Checking for system updates...
[2026-06-12 21:31:14,771.771 INFO    ] 200
[2026-06-12 21:31:14,773.773 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:31:14,802.802 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 21:31:14,804.804 INFO    ] No update needed
[2026-06-12 21:31:14,805.805 INFO    ] Checking for camera pi updates...
[2026-06-12 21:31:14,826.826 INFO    ] 200
[2026-06-12 21:31:14,828.828 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:31:14,851.851 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 21:31:14,902.902 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 21:31:14,904.904 INFO    ] No camera update needed
[2026-06-12 21:31:14,905.905 INFO    ] Script finished. Safe exiting...
[2026-06-12 21:31:14,906.906 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 21:31:14,909.909 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 21:31:14,912.912 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 21:31:16,949.949 INFO    ] ================================================
[2026-06-12 21:31:16,965.965 INFO    ] Launching Daemon at Fri Jun 12 21:31:16 IST 2026
[2026-06-12 21:31:16,976.976 INFO    ] ================================================
[2026-06-12 21:31:17,326.326 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 21:31:17
[2026-06-12 21:31:17,642.642 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 21:31:17,773.773 INFO    ] Initializing speech engine...
[2026-06-12 21:31:17,777.777 INFO    ] 2026-06-12 21:31:17
[2026-06-12 21:31:17,993.993 INFO    ] 2026-06-12 21:31:17
[2026-06-12 21:31:18,023.023 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 21:31:18,208.208 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 21:31:18,216.216 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 21:31:18,373.373 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 21:31:18,422.422 INFO    ] time= 12/06/2026 21:31:18
[2026-06-12 21:31:18,438.438 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 21:31:18,444.444 INFO    ] Checking for existing commands in stream...
[2026-06-12 21:31:18,512.512 INFO    ] No existing commands found in stream
[2026-06-12 21:31:23,526.526 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 21:31:23,529.529 INFO    ] Waiting 0.86 seconds before fallback handling...
[2026-06-12 21:31:24,785.785 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 21:31:24,786.786 INFO    ] Checking for system updates...
[2026-06-12 21:31:24,807.807 INFO    ] 200
[2026-06-12 21:31:24,808.808 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:31:24,838.838 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 21:31:24,839.839 INFO    ] No update needed
[2026-06-12 21:31:24,841.841 INFO    ] Checking for camera pi updates...
[2026-06-12 21:31:24,862.862 INFO    ] 200
[2026-06-12 21:31:24,864.864 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:31:24,887.887 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 21:31:24,926.926 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 21:31:24,927.927 INFO    ] No camera update needed
[2026-06-12 21:31:24,929.929 INFO    ] Script finished. Safe exiting...
[2026-06-12 21:31:24,930.930 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 21:31:24,933.933 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 21:31:24,936.936 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 21:31:26,975.975 INFO    ] ================================================
[2026-06-12 21:31:26,990.990 INFO    ] Launching Daemon at Fri Jun 12 21:31:26 IST 2026
[2026-06-12 21:31:27,001.001 INFO    ] ================================================
[2026-06-12 21:31:27,370.370 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 21:31:27
[2026-06-12 21:31:27,688.688 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 21:31:27,827.827 INFO    ] Initializing speech engine...
[2026-06-12 21:31:27,838.838 INFO    ] 2026-06-12 21:31:27
[2026-06-12 21:31:28,042.042 INFO    ] 2026-06-12 21:31:28
[2026-06-12 21:31:28,071.071 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 21:31:28,254.254 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 21:31:28,258.258 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 21:31:28,396.396 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 21:31:28,460.460 INFO    ] time= 12/06/2026 21:31:28
[2026-06-12 21:31:28,487.487 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 21:31:28,494.494 INFO    ] Checking for existing commands in stream...
[2026-06-12 21:31:28,560.560 INFO    ] No existing commands found in stream
[2026-06-12 21:31:33,570.570 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 21:31:33,572.572 INFO    ] Waiting 1.98 seconds before fallback handling...
[2026-06-12 21:31:35,938.938 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 21:31:35,940.940 INFO    ] Checking for system updates...
[2026-06-12 21:31:35,960.960 INFO    ] 200
[2026-06-12 21:31:35,962.962 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:31:35,991.991 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 21:31:35,992.992 INFO    ] No update needed
[2026-06-12 21:31:35,994.994 INFO    ] Checking for camera pi updates...
[2026-06-12 21:31:36,014.014 INFO    ] 200
[2026-06-12 21:31:36,015.015 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:31:36,038.038 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 21:31:36,081.081 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 21:31:36,082.082 INFO    ] No camera update needed
[2026-06-12 21:31:36,084.084 INFO    ] Script finished. Safe exiting...
[2026-06-12 21:31:36,085.085 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 21:31:36,088.088 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 21:31:36,091.091 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 21:31:38,130.130 INFO    ] ================================================
[2026-06-12 21:31:38,145.145 INFO    ] Launching Daemon at Fri Jun 12 21:31:38 IST 2026
[2026-06-12 21:31:38,156.156 INFO    ] ================================================
[2026-06-12 21:31:38,492.492 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 21:31:38
[2026-06-12 21:31:38,804.804 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 21:31:38,948.948 INFO    ] Initializing speech engine...
[2026-06-12 21:31:38,953.953 INFO    ] 2026-06-12 21:31:38
[2026-06-12 21:31:39,159.159 INFO    ] 2026-06-12 21:31:39
[2026-06-12 21:31:39,187.187 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 21:31:39,374.374 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 21:31:39,377.377 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 21:31:39,508.508 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 21:31:39,558.558 INFO    ] time= 12/06/2026 21:31:39
[2026-06-12 21:31:39,604.604 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 21:31:39,614.614 INFO    ] Checking for existing commands in stream...
[2026-06-12 21:31:39,681.681 INFO    ] No existing commands found in stream
[2026-06-12 21:31:44,690.690 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 21:31:44,693.693 INFO    ] Waiting 3.75 seconds before fallback handling...
[2026-06-12 21:31:48,812.812 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 21:31:48,814.814 INFO    ] Checking for system updates...
[2026-06-12 21:31:48,835.835 INFO    ] 200
[2026-06-12 21:31:48,837.837 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:31:48,870.870 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 21:31:48,871.871 INFO    ] No update needed
[2026-06-12 21:31:48,872.872 INFO    ] Checking for camera pi updates...
[2026-06-12 21:31:48,892.892 INFO    ] 200
[2026-06-12 21:31:48,893.893 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:31:48,917.917 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 21:31:49,055.055 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 21:31:49,057.057 INFO    ] No camera update needed
[2026-06-12 21:31:49,058.058 INFO    ] Script finished. Safe exiting...
[2026-06-12 21:31:49,060.060 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 21:31:49,063.063 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 21:31:49,066.066 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 21:31:51,106.106 INFO    ] ================================================
[2026-06-12 21:31:51,121.121 INFO    ] Launching Daemon at Fri Jun 12 21:31:51 IST 2026
[2026-06-12 21:31:51,132.132 INFO    ] ================================================
[2026-06-12 21:31:51,488.488 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 21:31:51
[2026-06-12 21:31:51,805.805 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 21:31:51,940.940 INFO    ] Initializing speech engine...
[2026-06-12 21:31:51,949.949 INFO    ] 2026-06-12 21:31:51
[2026-06-12 21:31:52,172.172 INFO    ] 2026-06-12 21:31:52
[2026-06-12 21:31:52,203.203 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 21:31:52,399.399 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 21:31:52,403.403 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 21:31:52,545.545 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 21:31:52,607.607 INFO    ] time= 12/06/2026 21:31:52
[2026-06-12 21:31:52,636.636 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 21:31:52,647.647 INFO    ] Checking for existing commands in stream...
[2026-06-12 21:31:52,724.724 INFO    ] No existing commands found in stream
[2026-06-12 21:31:57,748.748 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 21:31:57,751.751 INFO    ] Waiting 0.10 seconds before fallback handling...
[2026-06-12 21:31:58,200.200 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 21:31:58,201.201 INFO    ] Checking for system updates...
[2026-06-12 21:31:58,222.222 INFO    ] 200
[2026-06-12 21:31:58,223.223 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:31:58,253.253 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 21:31:58,254.254 INFO    ] No update needed
[2026-06-12 21:31:58,256.256 INFO    ] Checking for camera pi updates...
[2026-06-12 21:31:58,275.275 INFO    ] 200
[2026-06-12 21:31:58,277.277 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:31:58,302.302 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 21:31:58,344.344 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 21:31:58,345.345 INFO    ] No camera update needed
[2026-06-12 21:31:58,347.347 INFO    ] Script finished. Safe exiting...
[2026-06-12 21:31:58,348.348 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 21:31:58,351.351 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 21:31:58,354.354 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 21:32:00,391.391 INFO    ] ================================================
[2026-06-12 21:32:00,406.406 INFO    ] Launching Daemon at Fri Jun 12 21:32:00 IST 2026
[2026-06-12 21:32:00,417.417 INFO    ] ================================================
[2026-06-12 21:32:00,745.745 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 21:32:00
[2026-06-12 21:32:01,102.102 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 21:32:01,401.401 INFO    ] Initializing speech engine...
[2026-06-12 21:32:01,438.438 INFO    ] 2026-06-12 21:32:01
[2026-06-12 21:32:01,678.678 INFO    ] 2026-06-12 21:32:01
[2026-06-12 21:32:01,699.699 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 21:32:01,905.905 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 21:32:01,974.974 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 21:32:02,171.171 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 21:32:02,180.180 INFO    ] time= 12/06/2026 21:32:02
[2026-06-12 21:32:02,182.182 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 21:32:02,207.207 INFO    ] Checking for existing commands in stream...
[2026-06-12 21:32:02,304.304 INFO    ] No existing commands found in stream
[2026-06-12 21:32:07,315.315 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 21:32:07,318.318 INFO    ] Waiting 0.23 seconds before fallback handling...
[2026-06-12 21:32:07,949.949 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 21:32:07,951.951 INFO    ] Checking for system updates...
[2026-06-12 21:32:07,972.972 INFO    ] 200
[2026-06-12 21:32:07,973.973 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:32:08,004.004 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 21:32:08,006.006 INFO    ] No update needed
[2026-06-12 21:32:08,007.007 INFO    ] Checking for camera pi updates...
[2026-06-12 21:32:08,027.027 INFO    ] 200
[2026-06-12 21:32:08,028.028 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:32:08,051.051 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 21:32:08,099.099 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 21:32:08,100.100 INFO    ] No camera update needed
[2026-06-12 21:32:08,102.102 INFO    ] Script finished. Safe exiting...
[2026-06-12 21:32:08,103.103 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 21:32:08,106.106 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 21:32:08,108.108 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 21:32:10,146.146 INFO    ] ================================================
[2026-06-12 21:32:10,161.161 INFO    ] Launching Daemon at Fri Jun 12 21:32:10 IST 2026
[2026-06-12 21:32:10,172.172 INFO    ] ================================================
[2026-06-12 21:32:10,495.495 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 21:32:10
[2026-06-12 21:32:10,812.812 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 21:32:10,946.946 INFO    ] Initializing speech engine...
[2026-06-12 21:32:10,950.950 INFO    ] 2026-06-12 21:32:10
[2026-06-12 21:32:11,177.177 INFO    ] 2026-06-12 21:32:11
[2026-06-12 21:32:11,208.208 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 21:32:11,401.401 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 21:32:11,410.410 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 21:32:11,544.544 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 21:32:11,612.612 INFO    ] time= 12/06/2026 21:32:11
[2026-06-12 21:32:11,644.644 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 21:32:11,651.651 INFO    ] Checking for existing commands in stream...
[2026-06-12 21:32:11,721.721 INFO    ] No existing commands found in stream
[2026-06-12 21:32:16,731.731 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 21:32:16,733.733 INFO    ] Waiting 1.16 seconds before fallback handling...
[2026-06-12 21:32:18,271.271 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 21:32:18,272.272 INFO    ] Checking for system updates...
[2026-06-12 21:32:18,293.293 INFO    ] 200
[2026-06-12 21:32:18,294.294 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:32:18,326.326 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 21:32:18,327.327 INFO    ] No update needed
[2026-06-12 21:32:18,328.328 INFO    ] Checking for camera pi updates...
[2026-06-12 21:32:18,347.347 INFO    ] 200
[2026-06-12 21:32:18,349.349 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:32:18,375.375 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 21:32:18,417.417 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 21:32:18,418.418 INFO    ] No camera update needed
[2026-06-12 21:32:18,420.420 INFO    ] Script finished. Safe exiting...
[2026-06-12 21:32:18,421.421 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 21:32:18,424.424 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 21:32:18,427.427 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 21:32:20,465.465 INFO    ] ================================================
[2026-06-12 21:32:20,480.480 INFO    ] Launching Daemon at Fri Jun 12 21:32:20 IST 2026
[2026-06-12 21:32:20,490.490 INFO    ] ================================================
[2026-06-12 21:32:20,820.820 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 21:32:20
[2026-06-12 21:32:21,134.134 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 21:32:21,279.279 INFO    ] Initializing speech engine...
[2026-06-12 21:32:21,284.284 INFO    ] 2026-06-12 21:32:21
[2026-06-12 21:32:21,490.490 INFO    ] 2026-06-12 21:32:21
[2026-06-12 21:32:21,518.518 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 21:32:21,705.705 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 21:32:21,709.709 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 21:32:21,840.840 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 21:32:21,890.890 INFO    ] time= 12/06/2026 21:32:21
[2026-06-12 21:32:21,936.936 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 21:32:21,942.942 INFO    ] Checking for existing commands in stream...
[2026-06-12 21:32:22,014.014 INFO    ] No existing commands found in stream
[2026-06-12 21:32:27,023.023 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 21:32:27,026.026 INFO    ] Waiting 2.23 seconds before fallback handling...
[2026-06-12 21:32:29,575.575 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 21:32:29,578.578 INFO    ] Checking for system updates...
[2026-06-12 21:32:29,601.601 INFO    ] 200
[2026-06-12 21:32:29,603.603 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:32:29,643.643 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 21:32:29,644.644 INFO    ] No update needed
[2026-06-12 21:32:29,646.646 INFO    ] Checking for camera pi updates...
[2026-06-12 21:32:29,672.672 INFO    ] 200
[2026-06-12 21:32:29,674.674 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:32:29,706.706 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 21:32:29,752.752 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 21:32:29,753.753 INFO    ] No camera update needed
[2026-06-12 21:32:29,755.755 INFO    ] Script finished. Safe exiting...
[2026-06-12 21:32:29,756.756 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 21:32:29,759.759 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 21:32:29,761.761 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 21:32:31,787.787 INFO    ] ================================================
[2026-06-12 21:32:31,796.796 INFO    ] Launching Daemon at Fri Jun 12 21:32:31 IST 2026
[2026-06-12 21:32:31,802.802 INFO    ] ================================================
[2026-06-12 21:32:32,161.161 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 21:32:32
[2026-06-12 21:32:32,477.477 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 21:32:32,617.617 INFO    ] Initializing speech engine...
[2026-06-12 21:32:32,628.628 INFO    ] 2026-06-12 21:32:32
[2026-06-12 21:32:32,841.841 INFO    ] 2026-06-12 21:32:32
[2026-06-12 21:32:32,871.871 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 21:32:33,001.001 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 21:32:33,067.067 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 21:32:33,206.206 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 21:32:33,252.252 INFO    ] time= 12/06/2026 21:32:33
[2026-06-12 21:32:33,289.289 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 21:32:33,311.311 INFO    ] Checking for existing commands in stream...
[2026-06-12 21:32:33,384.384 INFO    ] No existing commands found in stream
[2026-06-12 21:32:38,395.395 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 21:32:38,398.398 INFO    ] Waiting 0.66 seconds before fallback handling...
[2026-06-12 21:32:39,410.410 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 21:32:39,411.411 INFO    ] Checking for system updates...
[2026-06-12 21:32:39,432.432 INFO    ] 200
[2026-06-12 21:32:39,433.433 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:32:39,465.465 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 21:32:39,466.466 INFO    ] No update needed
[2026-06-12 21:32:39,468.468 INFO    ] Checking for camera pi updates...
[2026-06-12 21:32:39,487.487 INFO    ] 200
[2026-06-12 21:32:39,488.488 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:32:39,511.511 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 21:32:39,558.558 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 21:32:39,559.559 INFO    ] No camera update needed
[2026-06-12 21:32:39,561.561 INFO    ] Script finished. Safe exiting...
[2026-06-12 21:32:39,562.562 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 21:32:39,565.565 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 21:32:39,567.567 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 21:32:41,605.605 INFO    ] ================================================
[2026-06-12 21:32:41,621.621 INFO    ] Launching Daemon at Fri Jun 12 21:32:41 IST 2026
[2026-06-12 21:32:41,632.632 INFO    ] ================================================
[2026-06-12 21:32:41,988.988 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 21:32:41
[2026-06-12 21:32:42,304.304 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 21:32:42,447.447 INFO    ] Initializing speech engine...
[2026-06-12 21:32:42,452.452 INFO    ] 2026-06-12 21:32:42
[2026-06-12 21:32:42,657.657 INFO    ] 2026-06-12 21:32:42
[2026-06-12 21:32:42,685.685 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 21:32:42,874.874 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 21:32:42,884.884 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 21:32:43,076.076 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 21:32:43,101.101 INFO    ] time= 12/06/2026 21:32:43
[2026-06-12 21:32:43,107.107 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 21:32:43,108.108 INFO    ] Checking for existing commands in stream...
[2026-06-12 21:32:43,175.175 INFO    ] No existing commands found in stream
[2026-06-12 21:32:48,184.184 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 21:32:48,187.187 INFO    ] Waiting 0.13 seconds before fallback handling...
[2026-06-12 21:32:48,681.681 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 21:32:48,683.683 INFO    ] Checking for system updates...
[2026-06-12 21:32:48,703.703 INFO    ] 200
[2026-06-12 21:32:48,705.705 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:32:48,736.736 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 21:32:48,738.738 INFO    ] No update needed
[2026-06-12 21:32:48,739.739 INFO    ] Checking for camera pi updates...
[2026-06-12 21:32:48,758.758 INFO    ] 200
[2026-06-12 21:32:48,759.759 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:32:48,782.782 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 21:32:48,828.828 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 21:32:48,829.829 INFO    ] No camera update needed
[2026-06-12 21:32:48,830.830 INFO    ] Script finished. Safe exiting...
[2026-06-12 21:32:48,832.832 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 21:32:48,835.835 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 21:32:48,838.838 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 21:32:50,880.880 INFO    ] ================================================
[2026-06-12 21:32:50,895.895 INFO    ] Launching Daemon at Fri Jun 12 21:32:50 IST 2026
[2026-06-12 21:32:50,906.906 INFO    ] ================================================
[2026-06-12 21:32:51,283.283 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 21:32:51
[2026-06-12 21:32:51,596.596 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 21:32:51,742.742 INFO    ] Initializing speech engine...
[2026-06-12 21:32:51,747.747 INFO    ] 2026-06-12 21:32:51
[2026-06-12 21:32:51,950.950 INFO    ] 2026-06-12 21:32:51
[2026-06-12 21:32:51,979.979 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 21:32:52,163.163 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 21:32:52,172.172 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 21:32:52,301.301 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 21:32:52,367.367 INFO    ] time= 12/06/2026 21:32:52
[2026-06-12 21:32:52,392.392 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 21:32:52,397.397 INFO    ] Checking for existing commands in stream...
[2026-06-12 21:32:52,488.488 INFO    ] No existing commands found in stream
[2026-06-12 21:32:57,502.502 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 21:32:57,505.505 INFO    ] Waiting 3.33 seconds before fallback handling...
[2026-06-12 21:33:01,200.200 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 21:33:01,201.201 INFO    ] Checking for system updates...
[2026-06-12 21:33:01,222.222 INFO    ] 200
[2026-06-12 21:33:01,224.224 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:33:01,255.255 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 21:33:01,256.256 INFO    ] No update needed
[2026-06-12 21:33:01,257.257 INFO    ] Checking for camera pi updates...
[2026-06-12 21:33:01,290.290 INFO    ] 200
[2026-06-12 21:33:01,292.292 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:33:01,351.351 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 21:33:01,415.415 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 21:33:01,417.417 INFO    ] No camera update needed
[2026-06-12 21:33:01,419.419 INFO    ] Script finished. Safe exiting...
[2026-06-12 21:33:01,421.421 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 21:33:01,427.427 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 21:33:01,431.431 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 21:33:03,463.463 INFO    ] ================================================
[2026-06-12 21:33:03,478.478 INFO    ] Launching Daemon at Fri Jun 12 21:33:03 IST 2026
[2026-06-12 21:33:03,490.490 INFO    ] ================================================
[2026-06-12 21:33:03,823.823 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 21:33:03
[2026-06-12 21:33:04,138.138 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 21:33:04,281.281 INFO    ] Initializing speech engine...
[2026-06-12 21:33:04,286.286 INFO    ] 2026-06-12 21:33:04
[2026-06-12 21:33:04,489.489 INFO    ] 2026-06-12 21:33:04
[2026-06-12 21:33:04,517.517 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 21:33:04,700.700 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 21:33:04,709.709 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 21:33:04,843.843 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 21:33:04,906.906 INFO    ] time= 12/06/2026 21:33:04
[2026-06-12 21:33:04,929.929 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 21:33:04,935.935 INFO    ] Checking for existing commands in stream...
[2026-06-12 21:33:05,001.001 INFO    ] No existing commands found in stream
[2026-06-12 21:33:10,011.011 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 21:33:10,013.013 INFO    ] Waiting 0.65 seconds before fallback handling...
[2026-06-12 21:33:11,068.068 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 21:33:11,070.070 INFO    ] Checking for system updates...
[2026-06-12 21:33:11,090.090 INFO    ] 200
[2026-06-12 21:33:11,092.092 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:33:11,123.123 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 21:33:11,124.124 INFO    ] No update needed
[2026-06-12 21:33:11,126.126 INFO    ] Checking for camera pi updates...
[2026-06-12 21:33:11,146.146 INFO    ] 200
[2026-06-12 21:33:11,147.147 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:33:11,170.170 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 21:33:11,211.211 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 21:33:11,213.213 INFO    ] No camera update needed
[2026-06-12 21:33:11,214.214 INFO    ] Script finished. Safe exiting...
[2026-06-12 21:33:11,215.215 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 21:33:11,218.218 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 21:33:11,221.221 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 21:33:13,260.260 INFO    ] ================================================
[2026-06-12 21:33:13,275.275 INFO    ] Launching Daemon at Fri Jun 12 21:33:13 IST 2026
[2026-06-12 21:33:13,286.286 INFO    ] ================================================
[2026-06-12 21:33:13,647.647 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 21:33:13
[2026-06-12 21:33:13,965.965 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 21:33:14,099.099 INFO    ] Initializing speech engine...
[2026-06-12 21:33:14,104.104 INFO    ] 2026-06-12 21:33:14
[2026-06-12 21:33:14,329.329 INFO    ] 2026-06-12 21:33:14
[2026-06-12 21:33:14,360.360 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 21:33:14,549.549 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 21:33:14,558.558 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 21:33:14,703.703 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 21:33:14,773.773 INFO    ] time= 12/06/2026 21:33:14
[2026-06-12 21:33:14,799.799 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 21:33:14,801.801 INFO    ] Checking for existing commands in stream...
[2026-06-12 21:33:14,874.874 INFO    ] No existing commands found in stream
[2026-06-12 21:33:19,885.885 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 21:33:19,888.888 INFO    ] Waiting 1.43 seconds before fallback handling...
[2026-06-12 21:33:21,729.729 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 21:33:21,730.730 INFO    ] Checking for system updates...
[2026-06-12 21:33:21,751.751 INFO    ] 200
[2026-06-12 21:33:21,752.752 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:33:21,784.784 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 21:33:21,786.786 INFO    ] No update needed
[2026-06-12 21:33:21,787.787 INFO    ] Checking for camera pi updates...
[2026-06-12 21:33:21,806.806 INFO    ] 200
[2026-06-12 21:33:21,807.807 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:33:21,831.831 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 21:33:21,891.891 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 21:33:21,892.892 INFO    ] No camera update needed
[2026-06-12 21:33:21,893.893 INFO    ] Script finished. Safe exiting...
[2026-06-12 21:33:21,894.894 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 21:33:21,897.897 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 21:33:21,900.900 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 21:33:23,938.938 INFO    ] ================================================
[2026-06-12 21:33:23,953.953 INFO    ] Launching Daemon at Fri Jun 12 21:33:23 IST 2026
[2026-06-12 21:33:23,963.963 INFO    ] ================================================
[2026-06-12 21:33:24,307.307 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 21:33:24
[2026-06-12 21:33:24,636.636 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 21:33:24,783.783 INFO    ] Initializing speech engine...
[2026-06-12 21:33:24,788.788 INFO    ] 2026-06-12 21:33:24
[2026-06-12 21:33:24,995.995 INFO    ] 2026-06-12 21:33:24
[2026-06-12 21:33:25,024.024 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 21:33:25,207.207 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 21:33:25,216.216 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 21:33:25,351.351 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 21:33:25,413.413 INFO    ] time= 12/06/2026 21:33:25
[2026-06-12 21:33:25,437.437 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 21:33:25,443.443 INFO    ] Checking for existing commands in stream...
[2026-06-12 21:33:25,534.534 INFO    ] No existing commands found in stream
[2026-06-12 21:33:30,558.558 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 21:33:30,561.561 INFO    ] Waiting 0.81 seconds before fallback handling...
[2026-06-12 21:33:31,732.732 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 21:33:31,734.734 INFO    ] Checking for system updates...
[2026-06-12 21:33:31,762.762 INFO    ] 200
[2026-06-12 21:33:31,763.763 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:33:31,798.798 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 21:33:31,800.800 INFO    ] No update needed
[2026-06-12 21:33:31,801.801 INFO    ] Checking for camera pi updates...
[2026-06-12 21:33:31,823.823 INFO    ] 200
[2026-06-12 21:33:31,824.824 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:33:31,851.851 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 21:33:31,891.891 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 21:33:31,893.893 INFO    ] No camera update needed
[2026-06-12 21:33:31,895.895 INFO    ] Script finished. Safe exiting...
[2026-06-12 21:33:31,896.896 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 21:33:31,900.900 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 21:33:31,903.903 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 21:33:33,936.936 INFO    ] ================================================
[2026-06-12 21:33:33,951.951 INFO    ] Launching Daemon at Fri Jun 12 21:33:33 IST 2026
[2026-06-12 21:33:33,961.961 INFO    ] ================================================
[2026-06-12 21:33:34,313.313 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 21:33:34
[2026-06-12 21:33:34,629.629 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 21:33:34,773.773 INFO    ] Initializing speech engine...
[2026-06-12 21:33:34,778.778 INFO    ] 2026-06-12 21:33:34
[2026-06-12 21:33:34,983.983 INFO    ] 2026-06-12 21:33:34
[2026-06-12 21:33:35,011.011 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 21:33:35,148.148 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 21:33:35,196.196 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 21:33:35,347.347 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 21:33:35,401.401 INFO    ] time= 12/06/2026 21:33:35
[2026-06-12 21:33:35,422.422 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 21:33:35,428.428 INFO    ] Checking for existing commands in stream...
[2026-06-12 21:33:35,495.495 INFO    ] No existing commands found in stream
[2026-06-12 21:33:40,509.509 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 21:33:40,512.512 INFO    ] Waiting 2.48 seconds before fallback handling...
[2026-06-12 21:33:43,378.378 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 21:33:43,380.380 INFO    ] Checking for system updates...
[2026-06-12 21:33:43,402.402 INFO    ] 200
[2026-06-12 21:33:43,403.403 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:33:43,433.433 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 21:33:43,434.434 INFO    ] No update needed
[2026-06-12 21:33:43,435.435 INFO    ] Checking for camera pi updates...
[2026-06-12 21:33:43,455.455 INFO    ] 200
[2026-06-12 21:33:43,457.457 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:33:43,481.481 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 21:33:43,512.512 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 21:33:43,514.514 INFO    ] No camera update needed
[2026-06-12 21:33:43,515.515 INFO    ] Script finished. Safe exiting...
[2026-06-12 21:33:43,516.516 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 21:33:43,519.519 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 21:33:43,522.522 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 21:33:45,562.562 INFO    ] ================================================
[2026-06-12 21:33:45,577.577 INFO    ] Launching Daemon at Fri Jun 12 21:33:45 IST 2026
[2026-06-12 21:33:45,589.589 INFO    ] ================================================
[2026-06-12 21:33:45,937.937 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 21:33:45
[2026-06-12 21:33:46,265.265 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 21:33:46,414.414 INFO    ] Initializing speech engine...
[2026-06-12 21:33:46,419.419 INFO    ] 2026-06-12 21:33:46
[2026-06-12 21:33:46,626.626 INFO    ] 2026-06-12 21:33:46
[2026-06-12 21:33:46,654.654 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 21:33:46,838.838 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 21:33:46,847.847 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 21:33:46,992.992 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 21:33:47,045.045 INFO    ] time= 12/06/2026 21:33:47
[2026-06-12 21:33:47,068.068 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 21:33:47,074.074 INFO    ] Checking for existing commands in stream...
[2026-06-12 21:33:47,141.141 INFO    ] No existing commands found in stream
[2026-06-12 21:33:52,155.155 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 21:33:52,158.158 INFO    ] Waiting 1.54 seconds before fallback handling...
[2026-06-12 21:33:55,153.153 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 21:33:55,155.155 INFO    ] Checking for system updates...
[2026-06-12 21:33:55,175.175 INFO    ] 200
[2026-06-12 21:33:55,177.177 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:33:55,206.206 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 21:33:55,208.208 INFO    ] No update needed
[2026-06-12 21:33:55,209.209 INFO    ] Checking for camera pi updates...
[2026-06-12 21:33:55,230.230 INFO    ] 200
[2026-06-12 21:33:55,231.231 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:33:55,254.254 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 21:33:55,397.397 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 21:33:55,398.398 INFO    ] No camera update needed
[2026-06-12 21:33:55,400.400 INFO    ] Script finished. Safe exiting...
[2026-06-12 21:33:55,401.401 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 21:33:55,405.405 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 21:33:55,407.407 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 21:33:57,445.445 INFO    ] ================================================
[2026-06-12 21:33:57,461.461 INFO    ] Launching Daemon at Fri Jun 12 21:33:57 IST 2026
[2026-06-12 21:33:57,472.472 INFO    ] ================================================
[2026-06-12 21:33:57,828.828 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 21:33:57
[2026-06-12 21:33:58,157.157 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 21:33:58,307.307 INFO    ] Initializing speech engine...
[2026-06-12 21:33:58,312.312 INFO    ] 2026-06-12 21:33:58
[2026-06-12 21:33:58,521.521 INFO    ] 2026-06-12 21:33:58
[2026-06-12 21:33:58,550.550 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 21:33:58,737.737 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 21:33:58,747.747 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 21:33:58,880.880 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 21:33:58,933.933 INFO    ] time= 12/06/2026 21:33:58
[2026-06-12 21:33:58,971.971 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 21:33:58,983.983 INFO    ] Checking for existing commands in stream...
[2026-06-12 21:33:59,057.057 INFO    ] No existing commands found in stream
[2026-06-12 21:34:04,066.066 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 21:34:04,069.069 INFO    ] Waiting 1.20 seconds before fallback handling...
[2026-06-12 21:34:05,641.641 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 21:34:05,642.642 INFO    ] Checking for system updates...
[2026-06-12 21:34:05,664.664 INFO    ] 200
[2026-06-12 21:34:05,665.665 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:34:05,695.695 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 21:34:05,696.696 INFO    ] No update needed
[2026-06-12 21:34:05,697.697 INFO    ] Checking for camera pi updates...
[2026-06-12 21:34:05,717.717 INFO    ] 200
[2026-06-12 21:34:05,718.718 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:34:05,744.744 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 21:34:05,791.791 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 21:34:05,793.793 INFO    ] No camera update needed
[2026-06-12 21:34:05,794.794 INFO    ] Script finished. Safe exiting...
[2026-06-12 21:34:05,795.795 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 21:34:05,798.798 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 21:34:05,801.801 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 21:34:07,839.839 INFO    ] ================================================
[2026-06-12 21:34:07,854.854 INFO    ] Launching Daemon at Fri Jun 12 21:34:07 IST 2026
[2026-06-12 21:34:07,865.865 INFO    ] ================================================
[2026-06-12 21:34:08,205.205 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 21:34:08
[2026-06-12 21:34:08,521.521 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 21:34:08,652.652 INFO    ] Initializing speech engine...
[2026-06-12 21:34:08,656.656 INFO    ] 2026-06-12 21:34:08
[2026-06-12 21:34:08,872.872 INFO    ] 2026-06-12 21:34:08
[2026-06-12 21:34:09,012.012 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 21:34:09,237.237 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 21:34:09,285.285 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 21:34:09,431.431 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 21:34:09,434.434 INFO    ] time= 12/06/2026 21:34:09
[2026-06-12 21:34:09,437.437 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 21:34:09,439.439 INFO    ] Checking for existing commands in stream...
[2026-06-12 21:34:09,508.508 INFO    ] No existing commands found in stream
[2026-06-12 21:34:14,518.518 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 21:34:14,521.521 INFO    ] Waiting 1.77 seconds before fallback handling...
[2026-06-12 21:34:16,652.652 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 21:34:16,653.653 INFO    ] Checking for system updates...
[2026-06-12 21:34:16,674.674 INFO    ] 200
[2026-06-12 21:34:16,675.675 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:34:16,705.705 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 21:34:16,706.706 INFO    ] No update needed
[2026-06-12 21:34:16,707.707 INFO    ] Checking for camera pi updates...
[2026-06-12 21:34:16,727.727 INFO    ] 200
[2026-06-12 21:34:16,728.728 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:34:16,753.753 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 21:34:16,805.805 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 21:34:16,807.807 INFO    ] No camera update needed
[2026-06-12 21:34:16,808.808 INFO    ] Script finished. Safe exiting...
[2026-06-12 21:34:16,809.809 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 21:34:16,812.812 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 21:34:16,815.815 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 21:34:18,847.847 INFO    ] ================================================
[2026-06-12 21:34:18,863.863 INFO    ] Launching Daemon at Fri Jun 12 21:34:18 IST 2026
[2026-06-12 21:34:18,875.875 INFO    ] ================================================
[2026-06-12 21:34:19,209.209 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 21:34:19
[2026-06-12 21:34:19,526.526 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 21:34:19,670.670 INFO    ] Initializing speech engine...
[2026-06-12 21:34:19,675.675 INFO    ] 2026-06-12 21:34:19
[2026-06-12 21:34:19,879.879 INFO    ] 2026-06-12 21:34:19
[2026-06-12 21:34:19,907.907 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 21:34:20,091.091 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 21:34:20,094.094 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 21:34:20,222.222 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 21:34:20,278.278 INFO    ] time= 12/06/2026 21:34:20
[2026-06-12 21:34:20,313.313 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 21:34:20,323.323 INFO    ] Checking for existing commands in stream...
[2026-06-12 21:34:20,418.418 INFO    ] No existing commands found in stream
[2026-06-12 21:34:25,427.427 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 21:34:25,430.430 INFO    ] Waiting 2.35 seconds before fallback handling...
[2026-06-12 21:34:29,499.499 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 21:34:29,502.502 INFO    ] Checking for system updates...
[2026-06-12 21:34:29,537.537 INFO    ] 200
[2026-06-12 21:34:29,540.540 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:34:29,596.596 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 21:34:29,598.598 INFO    ] No update needed
[2026-06-12 21:34:29,601.601 INFO    ] Checking for camera pi updates...
[2026-06-12 21:34:29,628.628 INFO    ] 200
[2026-06-12 21:34:29,630.630 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:34:29,653.653 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 21:34:29,695.695 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 21:34:29,696.696 INFO    ] No camera update needed
[2026-06-12 21:34:29,698.698 INFO    ] Script finished. Safe exiting...
[2026-06-12 21:34:29,699.699 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 21:34:29,702.702 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 21:34:29,705.705 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 21:34:31,736.736 INFO    ] ================================================
[2026-06-12 21:34:31,746.746 INFO    ] Launching Daemon at Fri Jun 12 21:34:31 IST 2026
[2026-06-12 21:34:31,753.753 INFO    ] ================================================
[2026-06-12 21:34:32,084.084 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 21:34:32
[2026-06-12 21:34:32,426.426 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 21:34:32,556.556 INFO    ] Initializing speech engine...
[2026-06-12 21:34:32,561.561 INFO    ] 2026-06-12 21:34:32
[2026-06-12 21:34:32,778.778 INFO    ] 2026-06-12 21:34:32
[2026-06-12 21:34:32,807.807 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 21:34:32,931.931 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 21:34:32,994.994 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 21:34:33,126.126 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 21:34:33,171.171 INFO    ] time= 12/06/2026 21:34:33
[2026-06-12 21:34:33,205.205 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 21:34:33,226.226 INFO    ] Checking for existing commands in stream...
[2026-06-12 21:34:33,298.298 INFO    ] No existing commands found in stream
[2026-06-12 21:34:38,307.307 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 21:34:38,310.310 INFO    ] Waiting 3.34 seconds before fallback handling...
[2026-06-12 21:34:42,024.024 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 21:34:42,026.026 INFO    ] Checking for system updates...
[2026-06-12 21:34:42,046.046 INFO    ] 200
[2026-06-12 21:34:42,048.048 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:34:42,077.077 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 21:34:42,079.079 INFO    ] No update needed
[2026-06-12 21:34:42,080.080 INFO    ] Checking for camera pi updates...
[2026-06-12 21:34:42,100.100 INFO    ] 200
[2026-06-12 21:34:42,101.101 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:34:42,124.124 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 21:34:42,177.177 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 21:34:42,178.178 INFO    ] No camera update needed
[2026-06-12 21:34:42,180.180 INFO    ] Script finished. Safe exiting...
[2026-06-12 21:34:42,181.181 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 21:34:42,184.184 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 21:34:42,187.187 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 21:34:44,227.227 INFO    ] ================================================
[2026-06-12 21:34:44,243.243 INFO    ] Launching Daemon at Fri Jun 12 21:34:44 IST 2026
[2026-06-12 21:34:44,254.254 INFO    ] ================================================
[2026-06-12 21:34:44,605.605 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 21:34:44
[2026-06-12 21:34:44,915.915 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 21:34:45,057.057 INFO    ] Initializing speech engine...
[2026-06-12 21:34:45,062.062 INFO    ] 2026-06-12 21:34:45
[2026-06-12 21:34:45,265.265 INFO    ] 2026-06-12 21:34:45
[2026-06-12 21:34:45,294.294 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 21:34:45,461.461 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 21:34:45,479.479 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 21:34:45,615.615 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 21:34:45,677.677 INFO    ] time= 12/06/2026 21:34:45
[2026-06-12 21:34:45,709.709 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 21:34:45,711.711 INFO    ] Checking for existing commands in stream...
[2026-06-12 21:34:45,782.782 INFO    ] No existing commands found in stream
[2026-06-12 21:34:50,791.791 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 21:34:50,794.794 INFO    ] Waiting 3.10 seconds before fallback handling...
[2026-06-12 21:34:54,278.278 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 21:34:54,280.280 INFO    ] Checking for system updates...
[2026-06-12 21:34:54,311.311 INFO    ] 200
[2026-06-12 21:34:54,312.312 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:34:54,347.347 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 21:34:54,348.348 INFO    ] No update needed
[2026-06-12 21:34:54,350.350 INFO    ] Checking for camera pi updates...
[2026-06-12 21:34:54,371.371 INFO    ] 200
[2026-06-12 21:34:54,372.372 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:34:54,398.398 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 21:34:54,460.460 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 21:34:54,461.461 INFO    ] No camera update needed
[2026-06-12 21:34:54,463.463 INFO    ] Script finished. Safe exiting...
[2026-06-12 21:34:54,464.464 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 21:34:54,467.467 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 21:34:54,470.470 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 21:34:56,512.512 INFO    ] ================================================
[2026-06-12 21:34:56,527.527 INFO    ] Launching Daemon at Fri Jun 12 21:34:56 IST 2026
[2026-06-12 21:34:56,538.538 INFO    ] ================================================
[2026-06-12 21:34:56,910.910 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 21:34:56
[2026-06-12 21:34:57,243.243 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 21:34:57,393.393 INFO    ] Initializing speech engine...
[2026-06-12 21:34:57,398.398 INFO    ] 2026-06-12 21:34:57
[2026-06-12 21:34:57,605.605 INFO    ] 2026-06-12 21:34:57
[2026-06-12 21:34:57,634.634 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 21:34:57,802.802 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 21:34:57,820.820 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 21:34:57,958.958 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 21:34:58,025.025 INFO    ] time= 12/06/2026 21:34:57
[2026-06-12 21:34:58,049.049 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 21:34:58,055.055 INFO    ] Checking for existing commands in stream...
[2026-06-12 21:34:58,123.123 INFO    ] No existing commands found in stream
[2026-06-12 21:35:03,142.142 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 21:35:03,145.145 INFO    ] Waiting 0.26 seconds before fallback handling...
[2026-06-12 21:35:03,765.765 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 21:35:03,767.767 INFO    ] Checking for system updates...
[2026-06-12 21:35:03,787.787 INFO    ] 200
[2026-06-12 21:35:03,789.789 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:35:03,821.821 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 21:35:03,822.822 INFO    ] No update needed
[2026-06-12 21:35:03,824.824 INFO    ] Checking for camera pi updates...
[2026-06-12 21:35:03,847.847 INFO    ] 200
[2026-06-12 21:35:03,848.848 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:35:03,871.871 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 21:35:03,914.914 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 21:35:03,915.915 INFO    ] No camera update needed
[2026-06-12 21:35:03,917.917 INFO    ] Script finished. Safe exiting...
[2026-06-12 21:35:03,918.918 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 21:35:03,921.921 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 21:35:03,924.924 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 21:35:05,962.962 INFO    ] ================================================
[2026-06-12 21:35:05,978.978 INFO    ] Launching Daemon at Fri Jun 12 21:35:05 IST 2026
[2026-06-12 21:35:05,989.989 INFO    ] ================================================
[2026-06-12 21:35:06,344.344 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 21:35:06
[2026-06-12 21:35:06,676.676 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 21:35:06,825.825 INFO    ] Initializing speech engine...
[2026-06-12 21:35:06,831.831 INFO    ] 2026-06-12 21:35:06
[2026-06-12 21:35:07,037.037 INFO    ] 2026-06-12 21:35:07
[2026-06-12 21:35:07,068.068 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 21:35:07,251.251 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 21:35:07,255.255 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 21:35:07,389.389 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 21:35:07,440.440 INFO    ] time= 12/06/2026 21:35:07
[2026-06-12 21:35:07,479.479 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 21:35:07,489.489 INFO    ] Checking for existing commands in stream...
[2026-06-12 21:35:07,556.556 INFO    ] No existing commands found in stream
[2026-06-12 21:35:12,571.571 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 21:35:12,574.574 INFO    ] Waiting 0.71 seconds before fallback handling...
[2026-06-12 21:35:13,683.683 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 21:35:13,684.684 INFO    ] Checking for system updates...
[2026-06-12 21:35:13,705.705 INFO    ] 200
[2026-06-12 21:35:13,706.706 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:35:13,736.736 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 21:35:13,737.737 INFO    ] No update needed
[2026-06-12 21:35:13,739.739 INFO    ] Checking for camera pi updates...
[2026-06-12 21:35:13,758.758 INFO    ] 200
[2026-06-12 21:35:13,760.760 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:35:13,784.784 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 21:35:13,829.829 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 21:35:13,831.831 INFO    ] No camera update needed
[2026-06-12 21:35:13,832.832 INFO    ] Script finished. Safe exiting...
[2026-06-12 21:35:13,834.834 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 21:35:13,837.837 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 21:35:13,840.840 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 21:35:15,878.878 INFO    ] ================================================
[2026-06-12 21:35:15,893.893 INFO    ] Launching Daemon at Fri Jun 12 21:35:15 IST 2026
[2026-06-12 21:35:15,904.904 INFO    ] ================================================
[2026-06-12 21:35:16,238.238 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 21:35:16
[2026-06-12 21:35:16,555.555 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 21:35:16,696.696 INFO    ] Initializing speech engine...
[2026-06-12 21:35:16,706.706 INFO    ] 2026-06-12 21:35:16
[2026-06-12 21:35:16,919.919 INFO    ] 2026-06-12 21:35:16
[2026-06-12 21:35:16,949.949 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 21:35:17,145.145 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 21:35:17,149.149 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 21:35:17,291.291 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 21:35:17,343.343 INFO    ] time= 12/06/2026 21:35:17
[2026-06-12 21:35:17,387.387 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 21:35:17,393.393 INFO    ] Checking for existing commands in stream...
[2026-06-12 21:35:17,494.494 INFO    ] No existing commands found in stream
[2026-06-12 21:35:22,508.508 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 21:35:22,511.511 INFO    ] Waiting 0.96 seconds before fallback handling...
[2026-06-12 21:35:23,849.849 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 21:35:23,850.850 INFO    ] Checking for system updates...
[2026-06-12 21:35:23,871.871 INFO    ] 200
[2026-06-12 21:35:23,872.872 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:35:23,902.902 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 21:35:23,903.903 INFO    ] No update needed
[2026-06-12 21:35:23,904.904 INFO    ] Checking for camera pi updates...
[2026-06-12 21:35:23,924.924 INFO    ] 200
[2026-06-12 21:35:23,926.926 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:35:23,949.949 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 21:35:23,994.994 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 21:35:23,996.996 INFO    ] No camera update needed
[2026-06-12 21:35:23,997.997 INFO    ] Script finished. Safe exiting...
[2026-06-12 21:35:23,998.998 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 21:35:24,001.001 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 21:35:24,004.004 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 21:35:26,042.042 INFO    ] ================================================
[2026-06-12 21:35:26,057.057 INFO    ] Launching Daemon at Fri Jun 12 21:35:26 IST 2026
[2026-06-12 21:35:26,068.068 INFO    ] ================================================
[2026-06-12 21:35:26,395.395 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 21:35:26
[2026-06-12 21:35:26,708.708 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 21:35:26,854.854 INFO    ] Initializing speech engine...
[2026-06-12 21:35:26,861.861 INFO    ] 2026-06-12 21:35:26
[2026-06-12 21:35:27,059.059 INFO    ] 2026-06-12 21:35:27
[2026-06-12 21:35:27,087.087 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 21:35:27,271.271 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 21:35:27,280.280 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 21:35:27,410.410 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 21:35:27,474.474 INFO    ] time= 12/06/2026 21:35:27
[2026-06-12 21:35:27,501.501 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 21:35:27,507.507 INFO    ] Checking for existing commands in stream...
[2026-06-12 21:35:27,573.573 INFO    ] No existing commands found in stream
[2026-06-12 21:35:32,581.581 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 21:35:32,583.583 INFO    ] Waiting 1.22 seconds before fallback handling...
[2026-06-12 21:35:34,170.170 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 21:35:34,172.172 INFO    ] Checking for system updates...
[2026-06-12 21:35:34,193.193 INFO    ] 200
[2026-06-12 21:35:34,194.194 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:35:34,223.223 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 21:35:34,225.225 INFO    ] No update needed
[2026-06-12 21:35:34,227.227 INFO    ] Checking for camera pi updates...
[2026-06-12 21:35:34,245.245 INFO    ] 200
[2026-06-12 21:35:34,247.247 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:35:34,272.272 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 21:35:34,323.323 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 21:35:34,325.325 INFO    ] No camera update needed
[2026-06-12 21:35:34,326.326 INFO    ] Script finished. Safe exiting...
[2026-06-12 21:35:34,327.327 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 21:35:34,330.330 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 21:35:34,333.333 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 21:35:36,371.371 INFO    ] ================================================
[2026-06-12 21:35:36,386.386 INFO    ] Launching Daemon at Fri Jun 12 21:35:36 IST 2026
[2026-06-12 21:35:36,397.397 INFO    ] ================================================
[2026-06-12 21:35:36,734.734 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 21:35:36
[2026-06-12 21:35:37,049.049 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 21:35:37,192.192 INFO    ] Initializing speech engine...
[2026-06-12 21:35:37,196.196 INFO    ] 2026-06-12 21:35:37
[2026-06-12 21:35:37,400.400 INFO    ] 2026-06-12 21:35:37
[2026-06-12 21:35:37,429.429 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 21:35:37,622.622 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 21:35:37,627.627 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 21:35:37,764.764 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 21:35:37,821.821 INFO    ] time= 12/06/2026 21:35:37
[2026-06-12 21:35:37,845.845 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 21:35:37,852.852 INFO    ] Checking for existing commands in stream...
[2026-06-12 21:35:37,918.918 INFO    ] No existing commands found in stream
[2026-06-12 21:35:42,927.927 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 21:35:42,930.930 INFO    ] Waiting 1.51 seconds before fallback handling...
[2026-06-12 21:35:44,801.801 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 21:35:44,802.802 INFO    ] Checking for system updates...
[2026-06-12 21:35:44,823.823 INFO    ] 200
[2026-06-12 21:35:44,828.828 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:35:44,860.860 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 21:35:44,861.861 INFO    ] No update needed
[2026-06-12 21:35:44,862.862 INFO    ] Checking for camera pi updates...
[2026-06-12 21:35:44,883.883 INFO    ] 200
[2026-06-12 21:35:44,884.884 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:35:44,908.908 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 21:35:44,953.953 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 21:35:44,954.954 INFO    ] No camera update needed
[2026-06-12 21:35:44,956.956 INFO    ] Script finished. Safe exiting...
[2026-06-12 21:35:44,957.957 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 21:35:44,960.960 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 21:35:44,963.963 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 21:35:47,002.002 INFO    ] ================================================
[2026-06-12 21:35:47,017.017 INFO    ] Launching Daemon at Fri Jun 12 21:35:47 IST 2026
[2026-06-12 21:35:47,028.028 INFO    ] ================================================
[2026-06-12 21:35:47,392.392 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 21:35:47
[2026-06-12 21:35:47,704.704 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 21:35:47,835.835 INFO    ] Initializing speech engine...
[2026-06-12 21:35:47,838.838 INFO    ] 2026-06-12 21:35:47
[2026-06-12 21:35:48,056.056 INFO    ] 2026-06-12 21:35:48
[2026-06-12 21:35:48,085.085 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 21:35:48,219.219 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 21:35:48,273.273 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 21:35:48,409.409 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 21:35:48,461.461 INFO    ] time= 12/06/2026 21:35:48
[2026-06-12 21:35:48,502.502 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 21:35:48,508.508 INFO    ] Checking for existing commands in stream...
[2026-06-12 21:35:48,580.580 INFO    ] No existing commands found in stream
[2026-06-12 21:35:53,589.589 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 21:35:53,592.592 INFO    ] Waiting 2.98 seconds before fallback handling...
[2026-06-12 21:35:56,963.963 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 21:35:56,964.964 INFO    ] Checking for system updates...
[2026-06-12 21:35:56,986.986 INFO    ] 200
[2026-06-12 21:35:56,987.987 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:35:57,020.020 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 21:35:57,021.021 INFO    ] No update needed
[2026-06-12 21:35:57,023.023 INFO    ] Checking for camera pi updates...
[2026-06-12 21:35:57,042.042 INFO    ] 200
[2026-06-12 21:35:57,044.044 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:35:57,068.068 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 21:35:57,205.205 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 21:35:57,206.206 INFO    ] No camera update needed
[2026-06-12 21:35:57,208.208 INFO    ] Script finished. Safe exiting...
[2026-06-12 21:35:57,209.209 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 21:35:57,212.212 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 21:35:57,215.215 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 21:35:59,245.245 INFO    ] ================================================
[2026-06-12 21:35:59,265.265 INFO    ] Launching Daemon at Fri Jun 12 21:35:59 IST 2026
[2026-06-12 21:35:59,276.276 INFO    ] ================================================
[2026-06-12 21:35:59,608.608 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 21:35:59
[2026-06-12 21:35:59,920.920 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 21:36:00,051.051 INFO    ] Initializing speech engine...
[2026-06-12 21:36:00,055.055 INFO    ] 2026-06-12 21:36:00
[2026-06-12 21:36:00,273.273 INFO    ] 2026-06-12 21:36:00
[2026-06-12 21:36:00,302.302 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 21:36:00,488.488 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 21:36:00,498.498 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 21:36:00,626.626 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 21:36:00,688.688 INFO    ] time= 12/06/2026 21:36:00
[2026-06-12 21:36:00,721.721 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 21:36:00,727.727 INFO    ] Checking for existing commands in stream...
[2026-06-12 21:36:00,796.796 INFO    ] No existing commands found in stream
[2026-06-12 21:36:05,810.810 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 21:36:05,812.812 INFO    ] Waiting 3.79 seconds before fallback handling...
[2026-06-12 21:36:09,980.980 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 21:36:09,982.982 INFO    ] Checking for system updates...
[2026-06-12 21:36:10,002.002 INFO    ] 200
[2026-06-12 21:36:10,003.003 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:36:10,033.033 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 21:36:10,034.034 INFO    ] No update needed
[2026-06-12 21:36:10,035.035 INFO    ] Checking for camera pi updates...
[2026-06-12 21:36:10,054.054 INFO    ] 200
[2026-06-12 21:36:10,056.056 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:36:10,081.081 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 21:36:10,145.145 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 21:36:10,146.146 INFO    ] No camera update needed
[2026-06-12 21:36:10,148.148 INFO    ] Script finished. Safe exiting...
[2026-06-12 21:36:10,149.149 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 21:36:10,152.152 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 21:36:10,155.155 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 21:36:12,194.194 INFO    ] ================================================
[2026-06-12 21:36:12,209.209 INFO    ] Launching Daemon at Fri Jun 12 21:36:12 IST 2026
[2026-06-12 21:36:12,220.220 INFO    ] ================================================
[2026-06-12 21:36:12,557.557 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 21:36:12
[2026-06-12 21:36:12,873.873 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 21:36:13,005.005 INFO    ] Initializing speech engine...
[2026-06-12 21:36:13,013.013 INFO    ] 2026-06-12 21:36:13
[2026-06-12 21:36:13,224.224 INFO    ] 2026-06-12 21:36:13
[2026-06-12 21:36:13,253.253 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 21:36:13,437.437 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 21:36:13,447.447 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 21:36:13,574.574 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 21:36:13,640.640 INFO    ] time= 12/06/2026 21:36:13
[2026-06-12 21:36:13,665.665 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 21:36:13,671.671 INFO    ] Checking for existing commands in stream...
[2026-06-12 21:36:13,736.736 INFO    ] No existing commands found in stream
[2026-06-12 21:36:18,746.746 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 21:36:18,749.749 INFO    ] Waiting 0.55 seconds before fallback handling...
[2026-06-12 21:36:19,684.684 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 21:36:19,685.685 INFO    ] Checking for system updates...
[2026-06-12 21:36:19,708.708 INFO    ] 200
[2026-06-12 21:36:19,709.709 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:36:19,738.738 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 21:36:19,740.740 INFO    ] No update needed
[2026-06-12 21:36:19,741.741 INFO    ] Checking for camera pi updates...
[2026-06-12 21:36:19,760.760 INFO    ] 200
[2026-06-12 21:36:19,762.762 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:36:19,786.786 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 21:36:19,832.832 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 21:36:19,834.834 INFO    ] No camera update needed
[2026-06-12 21:36:19,835.835 INFO    ] Script finished. Safe exiting...
[2026-06-12 21:36:19,836.836 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 21:36:19,839.839 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 21:36:19,842.842 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 21:36:21,881.881 INFO    ] ================================================
[2026-06-12 21:36:21,897.897 INFO    ] Launching Daemon at Fri Jun 12 21:36:21 IST 2026
[2026-06-12 21:36:21,908.908 INFO    ] ================================================
[2026-06-12 21:36:22,248.248 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 21:36:22
[2026-06-12 21:36:22,559.559 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 21:36:22,697.697 INFO    ] Initializing speech engine...
[2026-06-12 21:36:22,707.707 INFO    ] 2026-06-12 21:36:22
[2026-06-12 21:36:22,912.912 INFO    ] 2026-06-12 21:36:22
[2026-06-12 21:36:22,942.942 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 21:36:23,129.129 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 21:36:23,137.137 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 21:36:23,268.268 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 21:36:23,332.332 INFO    ] time= 12/06/2026 21:36:23
[2026-06-12 21:36:23,361.361 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 21:36:23,367.367 INFO    ] Checking for existing commands in stream...
[2026-06-12 21:36:23,435.435 INFO    ] No existing commands found in stream
[2026-06-12 21:36:28,459.459 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 21:36:28,462.462 INFO    ] Waiting 0.87 seconds before fallback handling...
[2026-06-12 21:36:29,688.688 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 21:36:29,690.690 INFO    ] Checking for system updates...
[2026-06-12 21:36:29,711.711 INFO    ] 200
[2026-06-12 21:36:29,712.712 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:36:29,744.744 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 21:36:29,745.745 INFO    ] No update needed
[2026-06-12 21:36:29,747.747 INFO    ] Checking for camera pi updates...
[2026-06-12 21:36:29,769.769 INFO    ] 200
[2026-06-12 21:36:29,770.770 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:36:29,793.793 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 21:36:29,852.852 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 21:36:29,853.853 INFO    ] No camera update needed
[2026-06-12 21:36:29,855.855 INFO    ] Script finished. Safe exiting...
[2026-06-12 21:36:29,856.856 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 21:36:29,859.859 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 21:36:29,862.862 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 21:36:31,889.889 INFO    ] ================================================
[2026-06-12 21:36:31,898.898 INFO    ] Launching Daemon at Fri Jun 12 21:36:31 IST 2026
[2026-06-12 21:36:31,905.905 INFO    ] ================================================
[2026-06-12 21:36:32,249.249 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 21:36:32
[2026-06-12 21:36:32,596.596 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 21:36:32,745.745 INFO    ] Initializing speech engine...
[2026-06-12 21:36:32,749.749 INFO    ] 2026-06-12 21:36:32
[2026-06-12 21:36:32,978.978 INFO    ] 2026-06-12 21:36:32
[2026-06-12 21:36:33,006.006 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 21:36:33,192.192 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 21:36:33,200.200 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 21:36:33,351.351 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 21:36:33,400.400 INFO    ] time= 12/06/2026 21:36:33
[2026-06-12 21:36:33,423.423 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 21:36:33,428.428 INFO    ] Checking for existing commands in stream...
[2026-06-12 21:36:33,496.496 INFO    ] No existing commands found in stream
[2026-06-12 21:36:38,510.510 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 21:36:38,513.513 INFO    ] Waiting 0.35 seconds before fallback handling...
[2026-06-12 21:36:39,262.262 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 21:36:39,263.263 INFO    ] Checking for system updates...
[2026-06-12 21:36:39,284.284 INFO    ] 200
[2026-06-12 21:36:39,285.285 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:36:39,319.319 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 21:36:39,320.320 INFO    ] No update needed
[2026-06-12 21:36:39,321.321 INFO    ] Checking for camera pi updates...
[2026-06-12 21:36:39,341.341 INFO    ] 200
[2026-06-12 21:36:39,343.343 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:36:39,365.365 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 21:36:39,412.412 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 21:36:39,413.413 INFO    ] No camera update needed
[2026-06-12 21:36:39,415.415 INFO    ] Script finished. Safe exiting...
[2026-06-12 21:36:39,416.416 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 21:36:39,419.419 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 21:36:39,421.421 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 21:36:41,459.459 INFO    ] ================================================
[2026-06-12 21:36:41,474.474 INFO    ] Launching Daemon at Fri Jun 12 21:36:41 IST 2026
[2026-06-12 21:36:41,485.485 INFO    ] ================================================
[2026-06-12 21:36:41,837.837 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 21:36:41
[2026-06-12 21:36:42,148.148 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 21:36:42,279.279 INFO    ] Initializing speech engine...
[2026-06-12 21:36:42,282.282 INFO    ] 2026-06-12 21:36:42
[2026-06-12 21:36:42,501.501 INFO    ] 2026-06-12 21:36:42
[2026-06-12 21:36:42,531.531 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 21:36:42,717.717 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 21:36:42,720.720 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 21:36:42,851.851 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 21:36:42,917.917 INFO    ] time= 12/06/2026 21:36:42
[2026-06-12 21:36:42,950.950 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 21:36:42,957.957 INFO    ] Checking for existing commands in stream...
[2026-06-12 21:36:43,049.049 INFO    ] No existing commands found in stream
[2026-06-12 21:36:48,058.058 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 21:36:48,060.060 INFO    ] Waiting 1.95 seconds before fallback handling...
[2026-06-12 21:36:50,413.413 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 21:36:50,414.414 INFO    ] Checking for system updates...
[2026-06-12 21:36:50,435.435 INFO    ] 200
[2026-06-12 21:36:50,436.436 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:36:50,466.466 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 21:36:50,467.467 INFO    ] No update needed
[2026-06-12 21:36:50,469.469 INFO    ] Checking for camera pi updates...
[2026-06-12 21:36:50,489.489 INFO    ] 200
[2026-06-12 21:36:50,491.491 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:36:50,514.514 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 21:36:50,565.565 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 21:36:50,567.567 INFO    ] No camera update needed
[2026-06-12 21:36:50,568.568 INFO    ] Script finished. Safe exiting...
[2026-06-12 21:36:50,570.570 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 21:36:50,574.574 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 21:36:50,577.577 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 21:36:52,616.616 INFO    ] ================================================
[2026-06-12 21:36:52,631.631 INFO    ] Launching Daemon at Fri Jun 12 21:36:52 IST 2026
[2026-06-12 21:36:52,642.642 INFO    ] ================================================
[2026-06-12 21:36:53,000.000 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 21:36:52
[2026-06-12 21:36:53,312.312 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 21:36:53,443.443 INFO    ] Initializing speech engine...
[2026-06-12 21:36:53,446.446 INFO    ] 2026-06-12 21:36:53
[2026-06-12 21:36:53,675.675 INFO    ] 2026-06-12 21:36:53
[2026-06-12 21:36:53,705.705 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 21:36:53,851.851 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 21:36:53,902.902 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 21:36:54,042.042 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 21:36:54,093.093 INFO    ] time= 12/06/2026 21:36:54
[2026-06-12 21:36:54,125.125 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 21:36:54,148.148 INFO    ] Checking for existing commands in stream...
[2026-06-12 21:36:54,225.225 INFO    ] No existing commands found in stream
[2026-06-12 21:36:59,234.234 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 21:36:59,236.236 INFO    ] Waiting 0.14 seconds before fallback handling...
[2026-06-12 21:36:59,720.720 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 21:36:59,722.722 INFO    ] Checking for system updates...
[2026-06-12 21:36:59,747.747 INFO    ] 200
[2026-06-12 21:36:59,749.749 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:36:59,781.781 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 21:36:59,783.783 INFO    ] No update needed
[2026-06-12 21:36:59,784.784 INFO    ] Checking for camera pi updates...
[2026-06-12 21:36:59,803.803 INFO    ] 200
[2026-06-12 21:36:59,804.804 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:36:59,827.827 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 21:36:59,874.874 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 21:36:59,875.875 INFO    ] No camera update needed
[2026-06-12 21:36:59,876.876 INFO    ] Script finished. Safe exiting...
[2026-06-12 21:36:59,878.878 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 21:36:59,881.881 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 21:36:59,883.883 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 21:37:01,913.913 INFO    ] ================================================
[2026-06-12 21:37:01,922.922 INFO    ] Launching Daemon at Fri Jun 12 21:37:01 IST 2026
[2026-06-12 21:37:01,928.928 INFO    ] ================================================
[2026-06-12 21:37:02,253.253 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 21:37:02
[2026-06-12 21:37:02,564.564 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 21:37:02,696.696 INFO    ] Initializing speech engine...
[2026-06-12 21:37:02,699.699 INFO    ] 2026-06-12 21:37:02
[2026-06-12 21:37:02,926.926 INFO    ] 2026-06-12 21:37:02
[2026-06-12 21:37:02,957.957 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 21:37:03,087.087 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 21:37:03,150.150 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 21:37:03,292.292 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 21:37:03,333.333 INFO    ] time= 12/06/2026 21:37:03
[2026-06-12 21:37:03,375.375 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 21:37:03,398.398 INFO    ] Checking for existing commands in stream...
[2026-06-12 21:37:03,472.472 INFO    ] No existing commands found in stream
[2026-06-12 21:37:08,482.482 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 21:37:08,485.485 INFO    ] Waiting 3.68 seconds before fallback handling...
[2026-06-12 21:37:12,552.552 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 21:37:12,554.554 INFO    ] Checking for system updates...
[2026-06-12 21:37:12,575.575 INFO    ] 200
[2026-06-12 21:37:12,576.576 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:37:12,608.608 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 21:37:12,609.609 INFO    ] No update needed
[2026-06-12 21:37:12,611.611 INFO    ] Checking for camera pi updates...
[2026-06-12 21:37:12,632.632 INFO    ] 200
[2026-06-12 21:37:12,633.633 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:37:12,657.657 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 21:37:12,716.716 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 21:37:12,718.718 INFO    ] No camera update needed
[2026-06-12 21:37:12,719.719 INFO    ] Script finished. Safe exiting...
[2026-06-12 21:37:12,720.720 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 21:37:12,723.723 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 21:37:12,726.726 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 21:37:14,765.765 INFO    ] ================================================
[2026-06-12 21:37:14,781.781 INFO    ] Launching Daemon at Fri Jun 12 21:37:14 IST 2026
[2026-06-12 21:37:14,792.792 INFO    ] ================================================
[2026-06-12 21:37:15,143.143 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 21:37:15
[2026-06-12 21:37:15,454.454 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 21:37:15,583.583 INFO    ] Initializing speech engine...
[2026-06-12 21:37:15,587.587 INFO    ] 2026-06-12 21:37:15
[2026-06-12 21:37:15,816.816 INFO    ] 2026-06-12 21:37:15
[2026-06-12 21:37:15,847.847 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 21:37:16,041.041 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 21:37:16,045.045 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 21:37:16,189.189 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 21:37:16,248.248 INFO    ] time= 12/06/2026 21:37:16
[2026-06-12 21:37:16,277.277 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 21:37:16,287.287 INFO    ] Checking for existing commands in stream...
[2026-06-12 21:37:16,362.362 INFO    ] No existing commands found in stream
[2026-06-12 21:37:21,372.372 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 21:37:21,375.375 INFO    ] Waiting 3.96 seconds before fallback handling...
[2026-06-12 21:37:25,721.721 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 21:37:25,723.723 INFO    ] Checking for system updates...
[2026-06-12 21:37:25,743.743 INFO    ] 200
[2026-06-12 21:37:25,745.745 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:37:25,774.774 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 21:37:25,776.776 INFO    ] No update needed
[2026-06-12 21:37:25,777.777 INFO    ] Checking for camera pi updates...
[2026-06-12 21:37:25,797.797 INFO    ] 200
[2026-06-12 21:37:25,799.799 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:37:25,823.823 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 21:37:25,871.871 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 21:37:25,873.873 INFO    ] No camera update needed
[2026-06-12 21:37:25,874.874 INFO    ] Script finished. Safe exiting...
[2026-06-12 21:37:25,875.875 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 21:37:25,878.878 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 21:37:25,882.882 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 21:37:27,919.919 INFO    ] ================================================
[2026-06-12 21:37:27,934.934 INFO    ] Launching Daemon at Fri Jun 12 21:37:27 IST 2026
[2026-06-12 21:37:27,945.945 INFO    ] ================================================
[2026-06-12 21:37:28,305.305 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 21:37:28
[2026-06-12 21:37:28,621.621 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 21:37:28,768.768 INFO    ] Initializing speech engine...
[2026-06-12 21:37:28,773.773 INFO    ] 2026-06-12 21:37:28
[2026-06-12 21:37:28,985.985 INFO    ] 2026-06-12 21:37:28
[2026-06-12 21:37:29,016.016 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 21:37:29,212.212 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 21:37:29,222.222 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 21:37:29,358.358 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 21:37:29,423.423 INFO    ] time= 12/06/2026 21:37:29
[2026-06-12 21:37:29,455.455 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 21:37:29,462.462 INFO    ] Checking for existing commands in stream...
[2026-06-12 21:37:29,531.531 INFO    ] No existing commands found in stream
[2026-06-12 21:37:34,542.542 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 21:37:34,545.545 INFO    ] Waiting 3.21 seconds before fallback handling...
[2026-06-12 21:37:38,112.112 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 21:37:38,113.113 INFO    ] Checking for system updates...
[2026-06-12 21:37:38,134.134 INFO    ] 200
[2026-06-12 21:37:38,135.135 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:37:38,167.167 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 21:37:38,169.169 INFO    ] No update needed
[2026-06-12 21:37:38,170.170 INFO    ] Checking for camera pi updates...
[2026-06-12 21:37:38,190.190 INFO    ] 200
[2026-06-12 21:37:38,191.191 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:37:38,214.214 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 21:37:38,259.259 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 21:37:38,261.261 INFO    ] No camera update needed
[2026-06-12 21:37:38,262.262 INFO    ] Script finished. Safe exiting...
[2026-06-12 21:37:38,263.263 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 21:37:38,266.266 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 21:37:38,269.269 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 21:37:40,307.307 INFO    ] ================================================
[2026-06-12 21:37:40,322.322 INFO    ] Launching Daemon at Fri Jun 12 21:37:40 IST 2026
[2026-06-12 21:37:40,333.333 INFO    ] ================================================
[2026-06-12 21:37:40,678.678 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 21:37:40
[2026-06-12 21:37:41,007.007 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 21:37:41,155.155 INFO    ] Initializing speech engine...
[2026-06-12 21:37:41,161.161 INFO    ] 2026-06-12 21:37:41
[2026-06-12 21:37:41,365.365 INFO    ] 2026-06-12 21:37:41
[2026-06-12 21:37:41,395.395 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 21:37:41,580.580 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 21:37:41,589.589 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 21:37:41,750.750 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 21:37:41,805.805 INFO    ] time= 12/06/2026 21:37:41
[2026-06-12 21:37:41,815.815 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 21:37:41,817.817 INFO    ] Checking for existing commands in stream...
[2026-06-12 21:37:41,883.883 INFO    ] No existing commands found in stream
[2026-06-12 21:37:46,892.892 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 21:37:46,895.895 INFO    ] Waiting 1.58 seconds before fallback handling...
[2026-06-12 21:37:48,868.868 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 21:37:48,870.870 INFO    ] Checking for system updates...
[2026-06-12 21:37:48,892.892 INFO    ] 200
[2026-06-12 21:37:48,893.893 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:37:48,925.925 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 21:37:48,927.927 INFO    ] No update needed
[2026-06-12 21:37:48,928.928 INFO    ] Checking for camera pi updates...
[2026-06-12 21:37:48,947.947 INFO    ] 200
[2026-06-12 21:37:48,949.949 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:37:48,972.972 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 21:37:49,020.020 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 21:37:49,021.021 INFO    ] No camera update needed
[2026-06-12 21:37:49,023.023 INFO    ] Script finished. Safe exiting...
[2026-06-12 21:37:49,024.024 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 21:37:49,027.027 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 21:37:49,030.030 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 21:37:51,068.068 INFO    ] ================================================
[2026-06-12 21:37:51,083.083 INFO    ] Launching Daemon at Fri Jun 12 21:37:51 IST 2026
[2026-06-12 21:37:51,094.094 INFO    ] ================================================
[2026-06-12 21:37:51,454.454 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 21:37:51
[2026-06-12 21:37:51,771.771 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 21:37:51,910.910 INFO    ] Initializing speech engine...
[2026-06-12 21:37:51,921.921 INFO    ] 2026-06-12 21:37:51
[2026-06-12 21:37:52,125.125 INFO    ] 2026-06-12 21:37:52
[2026-06-12 21:37:52,152.152 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 21:37:52,306.306 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 21:37:52,308.308 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 21:37:52,468.468 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 21:37:52,520.520 INFO    ] time= 12/06/2026 21:37:52
[2026-06-12 21:37:52,554.554 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 21:37:52,570.570 INFO    ] Checking for existing commands in stream...
[2026-06-12 21:37:52,653.653 INFO    ] No existing commands found in stream
[2026-06-12 21:37:57,668.668 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 21:37:57,671.671 INFO    ] Waiting 3.52 seconds before fallback handling...
[2026-06-12 21:38:01,655.655 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 21:38:01,657.657 INFO    ] Checking for system updates...
[2026-06-12 21:38:01,681.681 INFO    ] 200
[2026-06-12 21:38:01,682.682 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:38:01,720.720 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 21:38:01,722.722 INFO    ] No update needed
[2026-06-12 21:38:01,724.724 INFO    ] Checking for camera pi updates...
[2026-06-12 21:38:01,763.763 INFO    ] 200
[2026-06-12 21:38:01,766.766 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:38:01,804.804 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 21:38:01,930.930 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 21:38:01,932.932 INFO    ] No camera update needed
[2026-06-12 21:38:01,933.933 INFO    ] Script finished. Safe exiting...
[2026-06-12 21:38:01,935.935 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 21:38:01,939.939 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 21:38:01,943.943 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 21:38:03,983.983 INFO    ] ================================================
[2026-06-12 21:38:04,998.998 INFO    ] Launching Daemon at Fri Jun 12 21:38:03 IST 2026
[2026-06-12 21:38:04,008.008 INFO    ] ================================================
[2026-06-12 21:38:04,352.352 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 21:38:04
[2026-06-12 21:38:04,665.665 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 21:38:04,804.804 INFO    ] Initializing speech engine...
[2026-06-12 21:38:04,814.814 INFO    ] 2026-06-12 21:38:04
[2026-06-12 21:38:05,027.027 INFO    ] 2026-06-12 21:38:04
[2026-06-12 21:38:05,060.060 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 21:38:05,255.255 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 21:38:05,259.259 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 21:38:05,396.396 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 21:38:05,433.433 INFO    ] time= 12/06/2026 21:38:05
[2026-06-12 21:38:05,436.436 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 21:38:05,491.491 INFO    ] Checking for existing commands in stream...
[2026-06-12 21:38:05,587.587 INFO    ] No existing commands found in stream
[2026-06-12 21:38:10,599.599 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 21:38:10,602.602 INFO    ] Waiting 3.41 seconds before fallback handling...
[2026-06-12 21:38:14,409.409 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 21:38:14,410.410 INFO    ] Checking for system updates...
[2026-06-12 21:38:14,431.431 INFO    ] 200
[2026-06-12 21:38:14,433.433 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:38:14,462.462 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 21:38:14,464.464 INFO    ] No update needed
[2026-06-12 21:38:14,465.465 INFO    ] Checking for camera pi updates...
[2026-06-12 21:38:14,485.485 INFO    ] 200
[2026-06-12 21:38:14,486.486 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:38:14,511.511 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 21:38:14,571.571 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 21:38:14,572.572 INFO    ] No camera update needed
[2026-06-12 21:38:14,574.574 INFO    ] Script finished. Safe exiting...
[2026-06-12 21:38:14,575.575 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 21:38:14,578.578 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 21:38:14,581.581 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 21:38:16,622.622 INFO    ] ================================================
[2026-06-12 21:38:16,637.637 INFO    ] Launching Daemon at Fri Jun 12 21:38:16 IST 2026
[2026-06-12 21:38:16,647.647 INFO    ] ================================================
[2026-06-12 21:38:16,972.972 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 21:38:16
[2026-06-12 21:38:17,285.285 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 21:38:17,426.426 INFO    ] Initializing speech engine...
[2026-06-12 21:38:17,436.436 INFO    ] 2026-06-12 21:38:17
[2026-06-12 21:38:17,650.650 INFO    ] 2026-06-12 21:38:17
[2026-06-12 21:38:17,681.681 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 21:38:17,876.876 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 21:38:17,887.887 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 21:38:18,024.024 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 21:38:18,090.090 INFO    ] time= 12/06/2026 21:38:18
[2026-06-12 21:38:18,119.119 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 21:38:18,125.125 INFO    ] Checking for existing commands in stream...
[2026-06-12 21:38:18,201.201 INFO    ] No existing commands found in stream
[2026-06-12 21:38:23,210.210 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 21:38:23,213.213 INFO    ] Waiting 3.72 seconds before fallback handling...
[2026-06-12 21:38:27,324.324 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 21:38:27,326.326 INFO    ] Checking for system updates...
[2026-06-12 21:38:27,346.346 INFO    ] 200
[2026-06-12 21:38:27,348.348 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:38:27,378.378 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 21:38:27,379.379 INFO    ] No update needed
[2026-06-12 21:38:27,381.381 INFO    ] Checking for camera pi updates...
[2026-06-12 21:38:27,400.400 INFO    ] 200
[2026-06-12 21:38:27,401.401 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:38:27,424.424 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 21:38:27,468.468 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 21:38:27,470.470 INFO    ] No camera update needed
[2026-06-12 21:38:27,471.471 INFO    ] Script finished. Safe exiting...
[2026-06-12 21:38:27,472.472 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 21:38:27,475.475 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 21:38:27,478.478 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 21:38:29,516.516 INFO    ] ================================================
[2026-06-12 21:38:29,531.531 INFO    ] Launching Daemon at Fri Jun 12 21:38:29 IST 2026
[2026-06-12 21:38:29,541.541 INFO    ] ================================================
[2026-06-12 21:38:29,903.903 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 21:38:29
[2026-06-12 21:38:30,222.222 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 21:38:30,356.356 INFO    ] Initializing speech engine...
[2026-06-12 21:38:30,365.365 INFO    ] 2026-06-12 21:38:30
[2026-06-12 21:38:30,592.592 INFO    ] 2026-06-12 21:38:30
[2026-06-12 21:38:30,622.622 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 21:38:30,753.753 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 21:38:30,796.796 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 21:38:30,954.954 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 21:38:30,985.985 INFO    ] time= 12/06/2026 21:38:30
[2026-06-12 21:38:31,035.035 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 21:38:31,056.056 INFO    ] Checking for existing commands in stream...
[2026-06-12 21:38:31,129.129 INFO    ] No existing commands found in stream
[2026-06-12 21:38:36,138.138 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 21:38:36,141.141 INFO    ] Waiting 2.68 seconds before fallback handling...
[2026-06-12 21:38:39,207.207 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 21:38:39,208.208 INFO    ] Checking for system updates...
[2026-06-12 21:38:39,230.230 INFO    ] 200
[2026-06-12 21:38:39,231.231 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:38:39,261.261 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 21:38:39,262.262 INFO    ] No update needed
[2026-06-12 21:38:39,264.264 INFO    ] Checking for camera pi updates...
[2026-06-12 21:38:39,283.283 INFO    ] 200
[2026-06-12 21:38:39,284.284 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:38:39,307.307 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 21:38:39,351.351 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 21:38:39,352.352 INFO    ] No camera update needed
[2026-06-12 21:38:39,353.353 INFO    ] Script finished. Safe exiting...
[2026-06-12 21:38:39,355.355 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 21:38:39,357.357 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 21:38:39,360.360 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 21:38:41,398.398 INFO    ] ================================================
[2026-06-12 21:38:41,413.413 INFO    ] Launching Daemon at Fri Jun 12 21:38:41 IST 2026
[2026-06-12 21:38:41,424.424 INFO    ] ================================================
[2026-06-12 21:38:41,775.775 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 21:38:41
[2026-06-12 21:38:42,086.086 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 21:38:42,216.216 INFO    ] Initializing speech engine...
[2026-06-12 21:38:42,220.220 INFO    ] 2026-06-12 21:38:42
[2026-06-12 21:38:42,453.453 INFO    ] 2026-06-12 21:38:42
[2026-06-12 21:38:42,483.483 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 21:38:42,678.678 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 21:38:42,682.682 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 21:38:42,824.824 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 21:38:42,826.826 INFO    ] time= 12/06/2026 21:38:42
[2026-06-12 21:38:42,828.828 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 21:38:42,829.829 INFO    ] Checking for existing commands in stream...
[2026-06-12 21:38:42,918.918 INFO    ] No existing commands found in stream
[2026-06-12 21:38:47,931.931 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 21:38:47,933.933 INFO    ] Waiting 0.67 seconds before fallback handling...
[2026-06-12 21:38:48,979.979 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 21:38:48,981.981 INFO    ] Checking for system updates...
[2026-06-12 21:38:49,002.002 INFO    ] 200
[2026-06-12 21:38:49,003.003 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:38:49,033.033 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 21:38:49,034.034 INFO    ] No update needed
[2026-06-12 21:38:49,035.035 INFO    ] Checking for camera pi updates...
[2026-06-12 21:38:49,054.054 INFO    ] 200
[2026-06-12 21:38:49,056.056 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:38:49,079.079 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 21:38:49,121.121 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 21:38:49,123.123 INFO    ] No camera update needed
[2026-06-12 21:38:49,124.124 INFO    ] Script finished. Safe exiting...
[2026-06-12 21:38:49,125.125 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 21:38:49,128.128 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 21:38:49,131.131 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 21:38:51,169.169 INFO    ] ================================================
[2026-06-12 21:38:51,184.184 INFO    ] Launching Daemon at Fri Jun 12 21:38:51 IST 2026
[2026-06-12 21:38:51,194.194 INFO    ] ================================================
[2026-06-12 21:38:51,541.541 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 21:38:51
[2026-06-12 21:38:51,853.853 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 21:38:51,983.983 INFO    ] Initializing speech engine...
[2026-06-12 21:38:51,990.990 INFO    ] 2026-06-12 21:38:51
[2026-06-12 21:38:52,201.201 INFO    ] 2026-06-12 21:38:52
[2026-06-12 21:38:52,230.230 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 21:38:52,413.413 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 21:38:52,422.422 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 21:38:52,551.551 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 21:38:52,615.615 INFO    ] time= 12/06/2026 21:38:52
[2026-06-12 21:38:52,642.642 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 21:38:52,648.648 INFO    ] Checking for existing commands in stream...
[2026-06-12 21:38:52,738.738 INFO    ] No existing commands found in stream
[2026-06-12 21:38:57,747.747 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 21:38:57,750.750 INFO    ] Waiting 0.54 seconds before fallback handling...
[2026-06-12 21:38:58,672.672 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 21:38:58,673.673 INFO    ] Checking for system updates...
[2026-06-12 21:38:58,695.695 INFO    ] 200
[2026-06-12 21:38:58,696.696 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:38:58,726.726 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 21:38:58,727.727 INFO    ] No update needed
[2026-06-12 21:38:58,729.729 INFO    ] Checking for camera pi updates...
[2026-06-12 21:38:58,748.748 INFO    ] 200
[2026-06-12 21:38:58,749.749 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:38:58,772.772 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 21:38:58,812.812 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 21:38:58,814.814 INFO    ] No camera update needed
[2026-06-12 21:38:58,815.815 INFO    ] Script finished. Safe exiting...
[2026-06-12 21:38:58,816.816 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 21:38:58,819.819 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 21:38:58,822.822 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 21:39:00,860.860 INFO    ] ================================================
[2026-06-12 21:39:00,875.875 INFO    ] Launching Daemon at Fri Jun 12 21:39:00 IST 2026
[2026-06-12 21:39:00,886.886 INFO    ] ================================================
[2026-06-12 21:39:01,216.216 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 21:39:01
[2026-06-12 21:39:01,573.573 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 21:39:01,843.843 INFO    ] Initializing speech engine...
[2026-06-12 21:39:01,847.847 INFO    ] 2026-06-12 21:39:01
[2026-06-12 21:39:02,132.132 INFO    ] 2026-06-12 21:39:02
[2026-06-12 21:39:02,154.154 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 21:39:02,328.328 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 21:39:02,335.335 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 21:39:02,466.466 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 21:39:02,534.534 INFO    ] time= 12/06/2026 21:39:02
[2026-06-12 21:39:02,564.564 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 21:39:02,574.574 INFO    ] Checking for existing commands in stream...
[2026-06-12 21:39:02,643.643 INFO    ] No existing commands found in stream
[2026-06-12 21:39:07,654.654 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 21:39:07,657.657 INFO    ] Waiting 1.76 seconds before fallback handling...
[2026-06-12 21:39:09,811.811 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 21:39:09,813.813 INFO    ] Checking for system updates...
[2026-06-12 21:39:09,835.835 INFO    ] 200
[2026-06-12 21:39:09,836.836 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:39:09,868.868 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 21:39:09,870.870 INFO    ] No update needed
[2026-06-12 21:39:09,871.871 INFO    ] Checking for camera pi updates...
[2026-06-12 21:39:09,891.891 INFO    ] 200
[2026-06-12 21:39:09,892.892 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:39:09,915.915 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 21:39:09,962.962 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 21:39:09,964.964 INFO    ] No camera update needed
[2026-06-12 21:39:09,965.965 INFO    ] Script finished. Safe exiting...
[2026-06-12 21:39:09,966.966 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 21:39:09,970.970 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 21:39:09,973.973 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 21:39:12,011.011 INFO    ] ================================================
[2026-06-12 21:39:12,026.026 INFO    ] Launching Daemon at Fri Jun 12 21:39:12 IST 2026
[2026-06-12 21:39:12,037.037 INFO    ] ================================================
[2026-06-12 21:39:12,384.384 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 21:39:12
[2026-06-12 21:39:12,699.699 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 21:39:12,829.829 INFO    ] Initializing speech engine...
[2026-06-12 21:39:12,834.834 INFO    ] 2026-06-12 21:39:12
[2026-06-12 21:39:13,056.056 INFO    ] 2026-06-12 21:39:13
[2026-06-12 21:39:13,084.084 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 21:39:13,270.270 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 21:39:13,279.279 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 21:39:13,417.417 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 21:39:13,480.480 INFO    ] time= 12/06/2026 21:39:13
[2026-06-12 21:39:13,504.504 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 21:39:13,511.511 INFO    ] Checking for existing commands in stream...
[2026-06-12 21:39:13,577.577 INFO    ] No existing commands found in stream
[2026-06-12 21:39:18,587.587 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 21:39:18,590.590 INFO    ] Waiting 0.62 seconds before fallback handling...
[2026-06-12 21:39:19,576.576 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 21:39:19,577.577 INFO    ] Checking for system updates...
[2026-06-12 21:39:19,597.597 INFO    ] 200
[2026-06-12 21:39:19,599.599 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:39:19,628.628 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 21:39:19,630.630 INFO    ] No update needed
[2026-06-12 21:39:19,631.631 INFO    ] Checking for camera pi updates...
[2026-06-12 21:39:19,650.650 INFO    ] 200
[2026-06-12 21:39:19,651.651 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:39:19,676.676 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 21:39:19,724.724 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 21:39:19,726.726 INFO    ] No camera update needed
[2026-06-12 21:39:19,727.727 INFO    ] Script finished. Safe exiting...
[2026-06-12 21:39:19,728.728 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 21:39:19,731.731 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 21:39:19,734.734 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 21:39:21,775.775 INFO    ] ================================================
[2026-06-12 21:39:21,790.790 INFO    ] Launching Daemon at Fri Jun 12 21:39:21 IST 2026
[2026-06-12 21:39:21,801.801 INFO    ] ================================================
[2026-06-12 21:39:22,158.158 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 21:39:22
[2026-06-12 21:39:22,475.475 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 21:39:22,620.620 INFO    ] Initializing speech engine...
[2026-06-12 21:39:22,625.625 INFO    ] 2026-06-12 21:39:22
[2026-06-12 21:39:22,828.828 INFO    ] 2026-06-12 21:39:22
[2026-06-12 21:39:22,856.856 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 21:39:23,042.042 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 21:39:23,052.052 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 21:39:23,205.205 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 21:39:23,254.254 INFO    ] time= 12/06/2026 21:39:23
[2026-06-12 21:39:23,271.271 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 21:39:23,276.276 INFO    ] Checking for existing commands in stream...
[2026-06-12 21:39:23,344.344 INFO    ] No existing commands found in stream
[2026-06-12 21:39:28,358.358 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 21:39:28,360.360 INFO    ] Waiting 2.34 seconds before fallback handling...
[2026-06-12 21:39:31,069.069 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 21:39:31,070.070 INFO    ] Checking for system updates...
[2026-06-12 21:39:31,091.091 INFO    ] 200
[2026-06-12 21:39:31,093.093 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:39:31,123.123 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 21:39:31,124.124 INFO    ] No update needed
[2026-06-12 21:39:31,125.125 INFO    ] Checking for camera pi updates...
[2026-06-12 21:39:31,144.144 INFO    ] 200
[2026-06-12 21:39:31,146.146 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:39:31,168.168 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 21:39:31,210.210 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 21:39:31,212.212 INFO    ] No camera update needed
[2026-06-12 21:39:31,213.213 INFO    ] Script finished. Safe exiting...
[2026-06-12 21:39:31,214.214 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 21:39:31,217.217 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 21:39:31,220.220 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 21:39:33,252.252 INFO    ] ================================================
[2026-06-12 21:39:33,268.268 INFO    ] Launching Daemon at Fri Jun 12 21:39:33 IST 2026
[2026-06-12 21:39:33,279.279 INFO    ] ================================================
[2026-06-12 21:39:33,624.624 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 21:39:33
[2026-06-12 21:39:33,955.955 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 21:39:34,097.097 INFO    ] Initializing speech engine...
[2026-06-12 21:39:34,108.108 INFO    ] 2026-06-12 21:39:34
[2026-06-12 21:39:34,317.317 INFO    ] 2026-06-12 21:39:34
[2026-06-12 21:39:34,346.346 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 21:39:34,530.530 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 21:39:34,539.539 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 21:39:34,674.674 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 21:39:34,735.735 INFO    ] time= 12/06/2026 21:39:34
[2026-06-12 21:39:34,759.759 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 21:39:34,766.766 INFO    ] Checking for existing commands in stream...
[2026-06-12 21:39:34,856.856 INFO    ] No existing commands found in stream
[2026-06-12 21:39:39,881.881 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 21:39:39,884.884 INFO    ] Waiting 1.13 seconds before fallback handling...
[2026-06-12 21:39:41,371.371 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 21:39:41,373.373 INFO    ] Checking for system updates...
[2026-06-12 21:39:41,393.393 INFO    ] 200
[2026-06-12 21:39:41,394.394 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:39:41,428.428 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 21:39:41,430.430 INFO    ] No update needed
[2026-06-12 21:39:41,431.431 INFO    ] Checking for camera pi updates...
[2026-06-12 21:39:41,450.450 INFO    ] 200
[2026-06-12 21:39:41,451.451 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:39:41,476.476 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 21:39:41,517.517 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 21:39:41,518.518 INFO    ] No camera update needed
[2026-06-12 21:39:41,520.520 INFO    ] Script finished. Safe exiting...
[2026-06-12 21:39:41,521.521 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 21:39:41,524.524 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 21:39:41,527.527 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 21:39:43,563.563 INFO    ] ================================================
[2026-06-12 21:39:43,579.579 INFO    ] Launching Daemon at Fri Jun 12 21:39:43 IST 2026
[2026-06-12 21:39:43,590.590 INFO    ] ================================================
[2026-06-12 21:39:43,946.946 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 21:39:43
[2026-06-12 21:39:44,263.263 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 21:39:44,406.406 INFO    ] Initializing speech engine...
[2026-06-12 21:39:44,413.413 INFO    ] 2026-06-12 21:39:44
[2026-06-12 21:39:44,614.614 INFO    ] 2026-06-12 21:39:44
[2026-06-12 21:39:44,642.642 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 21:39:44,826.826 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 21:39:44,835.835 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 21:39:44,969.969 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 21:39:45,030.030 INFO    ] time= 12/06/2026 21:39:44
[2026-06-12 21:39:45,054.054 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 21:39:45,061.061 INFO    ] Checking for existing commands in stream...
[2026-06-12 21:39:45,127.127 INFO    ] No existing commands found in stream
[2026-06-12 21:39:50,141.141 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 21:39:50,144.144 INFO    ] Waiting 0.61 seconds before fallback handling...
[2026-06-12 21:39:53,581.581 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 21:39:53,584.584 INFO    ] Checking for system updates...
[2026-06-12 21:39:53,623.623 INFO    ] 200
[2026-06-12 21:39:53,625.625 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:39:53,674.674 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 21:39:53,676.676 INFO    ] No update needed
[2026-06-12 21:39:53,677.677 INFO    ] Checking for camera pi updates...
[2026-06-12 21:39:53,696.696 INFO    ] 200
[2026-06-12 21:39:53,697.697 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:39:53,722.722 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 21:39:53,754.754 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 21:39:53,755.755 INFO    ] No camera update needed
[2026-06-12 21:39:53,756.756 INFO    ] Script finished. Safe exiting...
[2026-06-12 21:39:53,758.758 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 21:39:53,761.761 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 21:39:53,763.763 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 21:39:55,805.805 INFO    ] ================================================
[2026-06-12 21:39:55,821.821 INFO    ] Launching Daemon at Fri Jun 12 21:39:55 IST 2026
[2026-06-12 21:39:55,832.832 INFO    ] ================================================
[2026-06-12 21:39:56,156.156 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 21:39:56
[2026-06-12 21:39:56,479.479 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 21:39:56,629.629 INFO    ] Initializing speech engine...
[2026-06-12 21:39:56,642.642 INFO    ] 2026-06-12 21:39:56
[2026-06-12 21:39:56,869.869 INFO    ] 2026-06-12 21:39:56
[2026-06-12 21:39:56,901.901 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 21:39:57,094.094 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 21:39:57,099.099 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 21:39:57,248.248 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 21:39:57,313.313 INFO    ] time= 12/06/2026 21:39:57
[2026-06-12 21:39:57,342.342 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 21:39:57,348.348 INFO    ] Checking for existing commands in stream...
[2026-06-12 21:39:57,414.414 INFO    ] No existing commands found in stream
[2026-06-12 21:40:02,422.422 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 21:40:02,424.424 INFO    ] Waiting 3.17 seconds before fallback handling...
[2026-06-12 21:40:05,918.918 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 21:40:05,920.920 INFO    ] Checking for system updates...
[2026-06-12 21:40:05,940.940 INFO    ] 200
[2026-06-12 21:40:05,942.942 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:40:05,974.974 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 21:40:05,975.975 INFO    ] No update needed
[2026-06-12 21:40:05,977.977 INFO    ] Checking for camera pi updates...
[2026-06-12 21:40:05,996.996 INFO    ] 200
[2026-06-12 21:40:05,997.997 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:40:06,024.024 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 21:40:06,169.169 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 21:40:06,172.172 INFO    ] No camera update needed
[2026-06-12 21:40:06,174.174 INFO    ] Script finished. Safe exiting...
[2026-06-12 21:40:06,176.176 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 21:40:06,182.182 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 21:40:06,187.187 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 21:40:08,229.229 INFO    ] ================================================
[2026-06-12 21:40:08,245.245 INFO    ] Launching Daemon at Fri Jun 12 21:40:08 IST 2026
[2026-06-12 21:40:08,255.255 INFO    ] ================================================
[2026-06-12 21:40:08,622.622 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 21:40:08
[2026-06-12 21:40:08,934.934 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 21:40:09,065.065 INFO    ] Initializing speech engine...
[2026-06-12 21:40:09,073.073 INFO    ] 2026-06-12 21:40:09
[2026-06-12 21:40:09,287.287 INFO    ] 2026-06-12 21:40:09
[2026-06-12 21:40:09,316.316 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 21:40:09,503.503 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 21:40:09,513.513 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 21:40:09,644.644 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 21:40:09,703.703 INFO    ] time= 12/06/2026 21:40:09
[2026-06-12 21:40:09,737.737 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 21:40:09,743.743 INFO    ] Checking for existing commands in stream...
[2026-06-12 21:40:09,811.811 INFO    ] No existing commands found in stream
[2026-06-12 21:40:14,821.821 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 21:40:14,823.823 INFO    ] Waiting 0.44 seconds before fallback handling...
[2026-06-12 21:40:15,594.594 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 21:40:15,596.596 INFO    ] Checking for system updates...
[2026-06-12 21:40:15,617.617 INFO    ] 200
[2026-06-12 21:40:15,619.619 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:40:15,648.648 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 21:40:15,650.650 INFO    ] No update needed
[2026-06-12 21:40:15,651.651 INFO    ] Checking for camera pi updates...
[2026-06-12 21:40:15,672.672 INFO    ] 200
[2026-06-12 21:40:15,674.674 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:40:15,712.712 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 21:40:15,761.761 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 21:40:15,762.762 INFO    ] No camera update needed
[2026-06-12 21:40:15,763.763 INFO    ] Script finished. Safe exiting...
[2026-06-12 21:40:15,764.764 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 21:40:15,767.767 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 21:40:15,770.770 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 21:40:17,812.812 INFO    ] ================================================
[2026-06-12 21:40:17,828.828 INFO    ] Launching Daemon at Fri Jun 12 21:40:17 IST 2026
[2026-06-12 21:40:17,841.841 INFO    ] ================================================
[2026-06-12 21:40:18,171.171 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 21:40:18
[2026-06-12 21:40:18,488.488 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 21:40:18,631.631 INFO    ] Initializing speech engine...
[2026-06-12 21:40:18,640.640 INFO    ] 2026-06-12 21:40:18
[2026-06-12 21:40:18,843.843 INFO    ] 2026-06-12 21:40:18
[2026-06-12 21:40:18,872.872 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 21:40:19,058.058 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 21:40:19,066.066 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 21:40:19,195.195 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 21:40:19,259.259 INFO    ] time= 12/06/2026 21:40:19
[2026-06-12 21:40:19,285.285 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 21:40:19,292.292 INFO    ] Checking for existing commands in stream...
[2026-06-12 21:40:19,358.358 INFO    ] No existing commands found in stream
[2026-06-12 21:40:24,382.382 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 21:40:24,385.385 INFO    ] Waiting 3.93 seconds before fallback handling...
[2026-06-12 21:40:28,714.714 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 21:40:28,715.715 INFO    ] Checking for system updates...
[2026-06-12 21:40:28,736.736 INFO    ] 200
[2026-06-12 21:40:28,737.737 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:40:28,772.772 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 21:40:28,773.773 INFO    ] No update needed
[2026-06-12 21:40:28,775.775 INFO    ] Checking for camera pi updates...
[2026-06-12 21:40:28,794.794 INFO    ] 200
[2026-06-12 21:40:28,795.795 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:40:28,818.818 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 21:40:28,859.859 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 21:40:28,860.860 INFO    ] No camera update needed
[2026-06-12 21:40:28,862.862 INFO    ] Script finished. Safe exiting...
[2026-06-12 21:40:28,863.863 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 21:40:28,866.866 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 21:40:28,868.868 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 21:40:30,906.906 INFO    ] ================================================
[2026-06-12 21:40:30,923.923 INFO    ] Launching Daemon at Fri Jun 12 21:40:30 IST 2026
[2026-06-12 21:40:30,935.935 INFO    ] ================================================
[2026-06-12 21:40:31,286.286 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 21:40:31
[2026-06-12 21:40:31,602.602 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 21:40:31,733.733 INFO    ] Initializing speech engine...
[2026-06-12 21:40:31,746.746 INFO    ] 2026-06-12 21:40:31
[2026-06-12 21:40:31,966.966 INFO    ] 2026-06-12 21:40:31
[2026-06-12 21:40:32,002.002 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 21:40:32,198.198 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 21:40:32,211.211 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 21:40:32,372.372 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 21:40:32,422.422 INFO    ] time= 12/06/2026 21:40:32
[2026-06-12 21:40:32,447.447 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 21:40:32,454.454 INFO    ] Checking for existing commands in stream...
[2026-06-12 21:40:32,524.524 INFO    ] No existing commands found in stream
[2026-06-12 21:40:37,549.549 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 21:40:37,553.553 INFO    ] Waiting 2.72 seconds before fallback handling...
[2026-06-12 21:40:40,654.654 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 21:40:40,655.655 INFO    ] Checking for system updates...
[2026-06-12 21:40:40,676.676 INFO    ] 200
[2026-06-12 21:40:40,677.677 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:40:40,715.715 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 21:40:40,716.716 INFO    ] No update needed
[2026-06-12 21:40:40,718.718 INFO    ] Checking for camera pi updates...
[2026-06-12 21:40:40,741.741 INFO    ] 200
[2026-06-12 21:40:40,743.743 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:40:40,775.775 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 21:40:40,825.825 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 21:40:40,826.826 INFO    ] No camera update needed
[2026-06-12 21:40:40,828.828 INFO    ] Script finished. Safe exiting...
[2026-06-12 21:40:40,829.829 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 21:40:40,833.833 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 21:40:40,836.836 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 21:40:42,878.878 INFO    ] ================================================
[2026-06-12 21:40:42,894.894 INFO    ] Launching Daemon at Fri Jun 12 21:40:42 IST 2026
[2026-06-12 21:40:42,905.905 INFO    ] ================================================
[2026-06-12 21:40:43,233.233 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 21:40:43
[2026-06-12 21:40:43,550.550 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 21:40:43,689.689 INFO    ] Initializing speech engine...
[2026-06-12 21:40:43,698.698 INFO    ] 2026-06-12 21:40:43
[2026-06-12 21:40:43,905.905 INFO    ] 2026-06-12 21:40:43
[2026-06-12 21:40:43,934.934 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 21:40:44,119.119 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 21:40:44,127.127 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 21:40:44,258.258 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 21:40:44,325.325 INFO    ] time= 12/06/2026 21:40:44
[2026-06-12 21:40:44,349.349 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 21:40:44,355.355 INFO    ] Checking for existing commands in stream...
[2026-06-12 21:40:44,421.421 INFO    ] No existing commands found in stream
[2026-06-12 21:40:49,432.432 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 21:40:49,434.434 INFO    ] Waiting 2.05 seconds before fallback handling...
[2026-06-12 21:40:51,812.812 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 21:40:51,814.814 INFO    ] Checking for system updates...
[2026-06-12 21:40:51,834.834 INFO    ] 200
[2026-06-12 21:40:51,836.836 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:40:51,868.868 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 21:40:51,869.869 INFO    ] No update needed
[2026-06-12 21:40:51,871.871 INFO    ] Checking for camera pi updates...
[2026-06-12 21:40:51,891.891 INFO    ] 200
[2026-06-12 21:40:51,892.892 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:40:51,916.916 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 21:40:51,963.963 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 21:40:51,965.965 INFO    ] No camera update needed
[2026-06-12 21:40:51,966.966 INFO    ] Script finished. Safe exiting...
[2026-06-12 21:40:51,967.967 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 21:40:51,970.970 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 21:40:51,973.973 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 21:40:54,011.011 INFO    ] ================================================
[2026-06-12 21:40:54,027.027 INFO    ] Launching Daemon at Fri Jun 12 21:40:54 IST 2026
[2026-06-12 21:40:54,037.037 INFO    ] ================================================
[2026-06-12 21:40:54,393.393 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 21:40:54
[2026-06-12 21:40:54,737.737 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 21:40:54,888.888 INFO    ] Initializing speech engine...
[2026-06-12 21:40:54,896.896 INFO    ] 2026-06-12 21:40:54
[2026-06-12 21:40:55,098.098 INFO    ] 2026-06-12 21:40:55
[2026-06-12 21:40:55,127.127 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 21:40:55,315.315 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 21:40:55,325.325 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 21:40:55,481.481 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 21:40:55,525.525 INFO    ] time= 12/06/2026 21:40:55
[2026-06-12 21:40:55,547.547 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 21:40:55,553.553 INFO    ] Checking for existing commands in stream...
[2026-06-12 21:40:55,620.620 INFO    ] No existing commands found in stream
[2026-06-12 21:41:00,634.634 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 21:41:00,638.638 INFO    ] Waiting 2.98 seconds before fallback handling...
[2026-06-12 21:41:03,973.973 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 21:41:03,975.975 INFO    ] Checking for system updates...
[2026-06-12 21:41:03,997.997 INFO    ] 200
[2026-06-12 21:41:03,998.998 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:41:04,032.032 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 21:41:04,033.033 INFO    ] No update needed
[2026-06-12 21:41:04,034.034 INFO    ] Checking for camera pi updates...
[2026-06-12 21:41:04,054.054 INFO    ] 200
[2026-06-12 21:41:04,055.055 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:41:04,081.081 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 21:41:04,131.131 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 21:41:04,132.132 INFO    ] No camera update needed
[2026-06-12 21:41:04,134.134 INFO    ] Script finished. Safe exiting...
[2026-06-12 21:41:04,135.135 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 21:41:04,138.138 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 21:41:04,141.141 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 21:41:06,180.180 INFO    ] ================================================
[2026-06-12 21:41:06,196.196 INFO    ] Launching Daemon at Fri Jun 12 21:41:06 IST 2026
[2026-06-12 21:41:06,207.207 INFO    ] ================================================
[2026-06-12 21:41:06,556.556 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 21:41:06
[2026-06-12 21:41:06,868.868 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 21:41:07,010.010 INFO    ] Initializing speech engine...
[2026-06-12 21:41:07,015.015 INFO    ] 2026-06-12 21:41:07
[2026-06-12 21:41:07,217.217 INFO    ] 2026-06-12 21:41:07
[2026-06-12 21:41:07,246.246 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 21:41:07,428.428 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 21:41:07,437.437 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 21:41:07,591.591 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 21:41:07,634.634 INFO    ] time= 12/06/2026 21:41:07
[2026-06-12 21:41:07,655.655 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 21:41:07,661.661 INFO    ] Checking for existing commands in stream...
[2026-06-12 21:41:07,726.726 INFO    ] No existing commands found in stream
[2026-06-12 21:41:12,736.736 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 21:41:12,739.739 INFO    ] Waiting 0.03 seconds before fallback handling...
[2026-06-12 21:41:13,133.133 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 21:41:13,134.134 INFO    ] Checking for system updates...
[2026-06-12 21:41:13,156.156 INFO    ] 200
[2026-06-12 21:41:13,157.157 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:41:13,187.187 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 21:41:13,189.189 INFO    ] No update needed
[2026-06-12 21:41:13,190.190 INFO    ] Checking for camera pi updates...
[2026-06-12 21:41:13,211.211 INFO    ] 200
[2026-06-12 21:41:13,213.213 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:41:13,239.239 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 21:41:13,278.278 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 21:41:13,279.279 INFO    ] No camera update needed
[2026-06-12 21:41:13,281.281 INFO    ] Script finished. Safe exiting...
[2026-06-12 21:41:13,282.282 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 21:41:13,285.285 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 21:41:13,287.287 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 21:41:15,327.327 INFO    ] ================================================
[2026-06-12 21:41:15,343.343 INFO    ] Launching Daemon at Fri Jun 12 21:41:15 IST 2026
[2026-06-12 21:41:15,354.354 INFO    ] ================================================
[2026-06-12 21:41:15,724.724 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 21:41:15
[2026-06-12 21:41:16,043.043 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 21:41:16,175.175 INFO    ] Initializing speech engine...
[2026-06-12 21:41:16,189.189 INFO    ] 2026-06-12 21:41:16
[2026-06-12 21:41:16,397.397 INFO    ] 2026-06-12 21:41:16
[2026-06-12 21:41:16,425.425 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 21:41:16,588.588 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 21:41:16,611.611 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 21:41:16,739.739 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 21:41:16,806.806 INFO    ] time= 12/06/2026 21:41:16
[2026-06-12 21:41:16,838.838 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 21:41:16,845.845 INFO    ] Checking for existing commands in stream...
[2026-06-12 21:41:16,911.911 INFO    ] No existing commands found in stream
[2026-06-12 21:41:21,921.921 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 21:41:21,923.923 INFO    ] Waiting 3.40 seconds before fallback handling...
[2026-06-12 21:41:25,731.731 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 21:41:25,732.732 INFO    ] Checking for system updates...
[2026-06-12 21:41:25,755.755 INFO    ] 200
[2026-06-12 21:41:25,756.756 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:41:25,787.787 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 21:41:25,788.788 INFO    ] No update needed
[2026-06-12 21:41:25,790.790 INFO    ] Checking for camera pi updates...
[2026-06-12 21:41:25,811.811 INFO    ] 200
[2026-06-12 21:41:25,812.812 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:41:25,840.840 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 21:41:25,883.883 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 21:41:25,885.885 INFO    ] No camera update needed
[2026-06-12 21:41:25,886.886 INFO    ] Script finished. Safe exiting...
[2026-06-12 21:41:25,887.887 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 21:41:25,891.891 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 21:41:25,894.894 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 21:41:27,934.934 INFO    ] ================================================
[2026-06-12 21:41:27,950.950 INFO    ] Launching Daemon at Fri Jun 12 21:41:27 IST 2026
[2026-06-12 21:41:27,961.961 INFO    ] ================================================
[2026-06-12 21:41:28,342.342 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 21:41:28
[2026-06-12 21:41:28,688.688 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 21:41:28,846.846 INFO    ] Initializing speech engine...
[2026-06-12 21:41:28,849.849 INFO    ] 2026-06-12 21:41:28
[2026-06-12 21:41:29,053.053 INFO    ] 2026-06-12 21:41:29
[2026-06-12 21:41:29,082.082 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 21:41:29,267.267 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 21:41:29,278.278 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 21:41:29,406.406 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 21:41:29,470.470 INFO    ] time= 12/06/2026 21:41:29
[2026-06-12 21:41:29,498.498 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 21:41:29,500.500 INFO    ] Checking for existing commands in stream...
[2026-06-12 21:41:29,570.570 INFO    ] No existing commands found in stream
[2026-06-12 21:41:34,580.580 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 21:41:34,583.583 INFO    ] Waiting 0.52 seconds before fallback handling...
[2026-06-12 21:41:35,484.484 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 21:41:35,486.486 INFO    ] Checking for system updates...
[2026-06-12 21:41:35,506.506 INFO    ] 200
[2026-06-12 21:41:35,507.507 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:41:35,542.542 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 21:41:35,544.544 INFO    ] No update needed
[2026-06-12 21:41:35,545.545 INFO    ] Checking for camera pi updates...
[2026-06-12 21:41:35,564.564 INFO    ] 200
[2026-06-12 21:41:35,566.566 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:41:35,588.588 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 21:41:35,637.637 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 21:41:35,639.639 INFO    ] No camera update needed
[2026-06-12 21:41:35,640.640 INFO    ] Script finished. Safe exiting...
[2026-06-12 21:41:35,642.642 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 21:41:35,645.645 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 21:41:35,648.648 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 21:41:37,687.687 INFO    ] ================================================
[2026-06-12 21:41:37,702.702 INFO    ] Launching Daemon at Fri Jun 12 21:41:37 IST 2026
[2026-06-12 21:41:37,713.713 INFO    ] ================================================
[2026-06-12 21:41:38,084.084 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 21:41:38
[2026-06-12 21:41:38,426.426 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 21:41:38,579.579 INFO    ] Initializing speech engine...
[2026-06-12 21:41:38,584.584 INFO    ] 2026-06-12 21:41:38
[2026-06-12 21:41:38,792.792 INFO    ] 2026-06-12 21:41:38
[2026-06-12 21:41:38,821.821 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 21:41:39,005.005 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 21:41:39,014.014 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 21:41:39,149.149 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 21:41:39,210.210 INFO    ] time= 12/06/2026 21:41:39
[2026-06-12 21:41:39,234.234 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 21:41:39,236.236 INFO    ] Checking for existing commands in stream...
[2026-06-12 21:41:39,308.308 INFO    ] No existing commands found in stream
[2026-06-12 21:41:44,327.327 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 21:41:44,331.331 INFO    ] Waiting 0.80 seconds before fallback handling...
[2026-06-12 21:41:45,512.512 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 21:41:45,514.514 INFO    ] Checking for system updates...
[2026-06-12 21:41:45,534.534 INFO    ] 200
[2026-06-12 21:41:45,536.536 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:41:45,570.570 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 21:41:45,572.572 INFO    ] No update needed
[2026-06-12 21:41:45,573.573 INFO    ] Checking for camera pi updates...
[2026-06-12 21:41:45,592.592 INFO    ] 200
[2026-06-12 21:41:45,593.593 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:41:45,616.616 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 21:41:45,659.659 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 21:41:45,661.661 INFO    ] No camera update needed
[2026-06-12 21:41:45,663.663 INFO    ] Script finished. Safe exiting...
[2026-06-12 21:41:45,664.664 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 21:41:45,667.667 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 21:41:45,670.670 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 21:41:47,707.707 INFO    ] ================================================
[2026-06-12 21:41:47,722.722 INFO    ] Launching Daemon at Fri Jun 12 21:41:47 IST 2026
[2026-06-12 21:41:47,733.733 INFO    ] ================================================
[2026-06-12 21:41:48,092.092 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 21:41:48
[2026-06-12 21:41:48,409.409 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 21:41:48,547.547 INFO    ] Initializing speech engine...
[2026-06-12 21:41:48,557.557 INFO    ] 2026-06-12 21:41:48
[2026-06-12 21:41:48,762.762 INFO    ] 2026-06-12 21:41:48
[2026-06-12 21:41:48,790.790 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 21:41:48,975.975 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 21:41:48,984.984 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 21:41:49,110.110 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 21:41:49,177.177 INFO    ] time= 12/06/2026 21:41:49
[2026-06-12 21:41:49,205.205 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 21:41:49,211.211 INFO    ] Checking for existing commands in stream...
[2026-06-12 21:41:49,278.278 INFO    ] No existing commands found in stream
[2026-06-12 21:41:54,310.310 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 21:41:54,313.313 INFO    ] Waiting 1.25 seconds before fallback handling...
[2026-06-12 21:41:55,921.921 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 21:41:55,923.923 INFO    ] Checking for system updates...
[2026-06-12 21:41:55,944.944 INFO    ] 200
[2026-06-12 21:41:55,945.945 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:41:55,978.978 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 21:41:55,980.980 INFO    ] No update needed
[2026-06-12 21:41:55,981.981 INFO    ] Checking for camera pi updates...
[2026-06-12 21:41:56,002.002 INFO    ] 200
[2026-06-12 21:41:56,003.003 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:41:56,028.028 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 21:41:56,071.071 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 21:41:56,073.073 INFO    ] No camera update needed
[2026-06-12 21:41:56,078.078 INFO    ] Script finished. Safe exiting...
[2026-06-12 21:41:56,079.079 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 21:41:56,082.082 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 21:41:56,085.085 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 21:41:58,124.124 INFO    ] ================================================
[2026-06-12 21:41:58,139.139 INFO    ] Launching Daemon at Fri Jun 12 21:41:58 IST 2026
[2026-06-12 21:41:58,150.150 INFO    ] ================================================
[2026-06-12 21:41:58,532.532 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 21:41:58
[2026-06-12 21:41:58,874.874 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 21:41:59,020.020 INFO    ] Initializing speech engine...
[2026-06-12 21:41:59,025.025 INFO    ] 2026-06-12 21:41:59
[2026-06-12 21:41:59,228.228 INFO    ] 2026-06-12 21:41:59
[2026-06-12 21:41:59,257.257 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 21:41:59,399.399 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 21:41:59,442.442 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 21:41:59,573.573 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 21:41:59,629.629 INFO    ] time= 12/06/2026 21:41:59
[2026-06-12 21:41:59,669.669 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 21:41:59,674.674 INFO    ] Checking for existing commands in stream...
[2026-06-12 21:41:59,743.743 INFO    ] No existing commands found in stream
[2026-06-12 21:42:04,753.753 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 21:42:04,756.756 INFO    ] Waiting 2.79 seconds before fallback handling...
[2026-06-12 21:42:07,890.890 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 21:42:07,892.892 INFO    ] Checking for system updates...
[2026-06-12 21:42:07,914.914 INFO    ] 200
[2026-06-12 21:42:07,915.915 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:42:07,945.945 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 21:42:07,946.946 INFO    ] No update needed
[2026-06-12 21:42:07,947.947 INFO    ] Checking for camera pi updates...
[2026-06-12 21:42:07,968.968 INFO    ] 200
[2026-06-12 21:42:07,969.969 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:42:07,994.994 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 21:42:08,117.117 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 21:42:08,119.119 INFO    ] No camera update needed
[2026-06-12 21:42:08,121.121 INFO    ] Script finished. Safe exiting...
[2026-06-12 21:42:08,123.123 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 21:42:08,125.125 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 21:42:08,128.128 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 21:42:10,166.166 INFO    ] ================================================
[2026-06-12 21:42:10,181.181 INFO    ] Launching Daemon at Fri Jun 12 21:42:10 IST 2026
[2026-06-12 21:42:10,192.192 INFO    ] ================================================
[2026-06-12 21:42:10,562.562 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 21:42:10
[2026-06-12 21:42:10,904.904 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 21:42:11,053.053 INFO    ] Initializing speech engine...
[2026-06-12 21:42:11,061.061 INFO    ] 2026-06-12 21:42:11
[2026-06-12 21:42:11,274.274 INFO    ] 2026-06-12 21:42:11
[2026-06-12 21:42:11,303.303 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 21:42:11,488.488 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 21:42:11,497.497 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 21:42:11,638.638 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 21:42:11,695.695 INFO    ] time= 12/06/2026 21:42:11
[2026-06-12 21:42:11,718.718 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 21:42:11,725.725 INFO    ] Checking for existing commands in stream...
[2026-06-12 21:42:11,794.794 INFO    ] No existing commands found in stream
[2026-06-12 21:42:16,803.803 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 21:42:16,806.806 INFO    ] Waiting 0.43 seconds before fallback handling...
[2026-06-12 21:42:17,628.628 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 21:42:17,630.630 INFO    ] Checking for system updates...
[2026-06-12 21:42:17,652.652 INFO    ] 200
[2026-06-12 21:42:17,654.654 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:42:17,689.689 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 21:42:17,690.690 INFO    ] No update needed
[2026-06-12 21:42:17,692.692 INFO    ] Checking for camera pi updates...
[2026-06-12 21:42:17,715.715 INFO    ] 200
[2026-06-12 21:42:17,717.717 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:42:17,744.744 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 21:42:17,791.791 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 21:42:17,793.793 INFO    ] No camera update needed
[2026-06-12 21:42:17,794.794 INFO    ] Script finished. Safe exiting...
[2026-06-12 21:42:17,795.795 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 21:42:17,798.798 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 21:42:17,801.801 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 21:42:19,840.840 INFO    ] ================================================
[2026-06-12 21:42:19,855.855 INFO    ] Launching Daemon at Fri Jun 12 21:42:19 IST 2026
[2026-06-12 21:42:19,865.865 INFO    ] ================================================
[2026-06-12 21:42:20,223.223 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 21:42:20
[2026-06-12 21:42:20,540.540 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 21:42:20,674.674 INFO    ] Initializing speech engine...
[2026-06-12 21:42:20,687.687 INFO    ] 2026-06-12 21:42:20
[2026-06-12 21:42:20,894.894 INFO    ] 2026-06-12 21:42:20
[2026-06-12 21:42:20,924.924 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 21:42:21,107.107 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 21:42:21,117.117 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 21:42:21,249.249 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 21:42:21,313.313 INFO    ] time= 12/06/2026 21:42:21
[2026-06-12 21:42:21,339.339 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 21:42:21,346.346 INFO    ] Checking for existing commands in stream...
[2026-06-12 21:42:21,415.415 INFO    ] No existing commands found in stream
[2026-06-12 21:42:26,434.434 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 21:42:26,437.437 INFO    ] Waiting 3.25 seconds before fallback handling...
[2026-06-12 21:42:30,094.094 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 21:42:30,096.096 INFO    ] Checking for system updates...
[2026-06-12 21:42:30,118.118 INFO    ] 200
[2026-06-12 21:42:30,119.119 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:42:30,152.152 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 21:42:30,153.153 INFO    ] No update needed
[2026-06-12 21:42:30,154.154 INFO    ] Checking for camera pi updates...
[2026-06-12 21:42:30,175.175 INFO    ] 200
[2026-06-12 21:42:30,177.177 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:42:30,200.200 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 21:42:30,259.259 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 21:42:30,261.261 INFO    ] No camera update needed
[2026-06-12 21:42:30,262.262 INFO    ] Script finished. Safe exiting...
[2026-06-12 21:42:30,263.263 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 21:42:30,266.266 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 21:42:30,269.269 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 21:42:32,299.299 INFO    ] ================================================
[2026-06-12 21:42:32,311.311 INFO    ] Launching Daemon at Fri Jun 12 21:42:32 IST 2026
[2026-06-12 21:42:32,321.321 INFO    ] ================================================
[2026-06-12 21:42:32,734.734 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 21:42:32
[2026-06-12 21:42:33,075.075 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 21:42:33,229.229 INFO    ] Initializing speech engine...
[2026-06-12 21:42:33,233.233 INFO    ] 2026-06-12 21:42:33
[2026-06-12 21:42:33,442.442 INFO    ] 2026-06-12 21:42:33
[2026-06-12 21:42:33,470.470 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 21:42:33,614.614 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 21:42:33,657.657 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 21:42:33,795.795 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 21:42:33,859.859 INFO    ] time= 12/06/2026 21:42:33
[2026-06-12 21:42:33,886.886 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 21:42:33,893.893 INFO    ] Checking for existing commands in stream...
[2026-06-12 21:42:33,959.959 INFO    ] No existing commands found in stream
[2026-06-12 21:42:38,974.974 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 21:42:38,977.977 INFO    ] Waiting 0.64 seconds before fallback handling...
[2026-06-12 21:42:39,974.974 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 21:42:39,976.976 INFO    ] Checking for system updates...
[2026-06-12 21:42:39,997.997 INFO    ] 200
[2026-06-12 21:42:39,998.998 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:42:40,033.033 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 21:42:40,034.034 INFO    ] No update needed
[2026-06-12 21:42:40,035.035 INFO    ] Checking for camera pi updates...
[2026-06-12 21:42:40,054.054 INFO    ] 200
[2026-06-12 21:42:40,055.055 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:42:40,080.080 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 21:42:40,129.129 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 21:42:40,130.130 INFO    ] No camera update needed
[2026-06-12 21:42:40,132.132 INFO    ] Script finished. Safe exiting...
[2026-06-12 21:42:40,133.133 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 21:42:40,136.136 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 21:42:40,139.139 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 21:42:42,176.176 INFO    ] ================================================
[2026-06-12 21:42:42,191.191 INFO    ] Launching Daemon at Fri Jun 12 21:42:42 IST 2026
[2026-06-12 21:42:42,203.203 INFO    ] ================================================
[2026-06-12 21:42:42,539.539 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 21:42:42
[2026-06-12 21:42:42,856.856 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 21:42:42,999.999 INFO    ] Initializing speech engine...
[2026-06-12 21:42:43,005.005 INFO    ] 2026-06-12 21:42:43
[2026-06-12 21:42:43,208.208 INFO    ] 2026-06-12 21:42:43
[2026-06-12 21:42:43,237.237 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 21:42:43,421.421 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 21:42:43,424.424 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 21:42:43,559.559 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 21:42:43,626.626 INFO    ] time= 12/06/2026 21:42:43
[2026-06-12 21:42:43,650.650 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 21:42:43,657.657 INFO    ] Checking for existing commands in stream...
[2026-06-12 21:42:43,724.724 INFO    ] No existing commands found in stream
[2026-06-12 21:42:48,738.738 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 21:42:48,741.741 INFO    ] Waiting 1.67 seconds before fallback handling...
[2026-06-12 21:42:50,790.790 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 21:42:50,791.791 INFO    ] Checking for system updates...
[2026-06-12 21:42:50,813.813 INFO    ] 200
[2026-06-12 21:42:50,814.814 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:42:50,846.846 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 21:42:50,848.848 INFO    ] No update needed
[2026-06-12 21:42:50,849.849 INFO    ] Checking for camera pi updates...
[2026-06-12 21:42:50,870.870 INFO    ] 200
[2026-06-12 21:42:50,871.871 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:42:50,896.896 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 21:42:50,951.951 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 21:42:50,952.952 INFO    ] No camera update needed
[2026-06-12 21:42:50,953.953 INFO    ] Script finished. Safe exiting...
[2026-06-12 21:42:50,955.955 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 21:42:50,958.958 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 21:42:50,961.961 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 21:42:53,000.000 INFO    ] ================================================
[2026-06-12 21:42:53,015.015 INFO    ] Launching Daemon at Fri Jun 12 21:42:53 IST 2026
[2026-06-12 21:42:53,029.029 INFO    ] ================================================
[2026-06-12 21:42:53,382.382 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 21:42:53
[2026-06-12 21:42:53,721.721 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 21:42:53,874.874 INFO    ] Initializing speech engine...
[2026-06-12 21:42:53,878.878 INFO    ] 2026-06-12 21:42:53
[2026-06-12 21:42:54,084.084 INFO    ] 2026-06-12 21:42:54
[2026-06-12 21:42:54,113.113 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 21:42:54,239.239 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 21:42:54,302.302 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 21:42:54,458.458 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 21:42:54,522.522 INFO    ] time= 12/06/2026 21:42:54
[2026-06-12 21:42:54,556.556 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 21:42:54,575.575 INFO    ] Checking for existing commands in stream...
[2026-06-12 21:42:54,659.659 INFO    ] No existing commands found in stream
[2026-06-12 21:42:59,668.668 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 21:42:59,672.672 INFO    ] Waiting 2.79 seconds before fallback handling...
[2026-06-12 21:43:02,839.839 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 21:43:02,841.841 INFO    ] Checking for system updates...
[2026-06-12 21:43:02,865.865 INFO    ] 200
[2026-06-12 21:43:02,866.866 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:43:02,904.904 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 21:43:02,906.906 INFO    ] No update needed
[2026-06-12 21:43:02,908.908 INFO    ] Checking for camera pi updates...
[2026-06-12 21:43:02,927.927 INFO    ] 200
[2026-06-12 21:43:02,929.929 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:43:02,953.953 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 21:43:02,990.990 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 21:43:02,992.992 INFO    ] No camera update needed
[2026-06-12 21:43:02,994.994 INFO    ] Script finished. Safe exiting...
[2026-06-12 21:43:02,996.996 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 21:43:03,001.001 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 21:43:03,005.005 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 21:43:05,043.043 INFO    ] ================================================
[2026-06-12 21:43:05,065.065 INFO    ] Launching Daemon at Fri Jun 12 21:43:05 IST 2026
[2026-06-12 21:43:05,076.076 INFO    ] ================================================
[2026-06-12 21:43:05,412.412 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 21:43:05
[2026-06-12 21:43:05,724.724 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 21:43:05,868.868 INFO    ] Initializing speech engine...
[2026-06-12 21:43:05,873.873 INFO    ] 2026-06-12 21:43:05
[2026-06-12 21:43:06,076.076 INFO    ] 2026-06-12 21:43:06
[2026-06-12 21:43:06,103.103 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 21:43:06,266.266 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 21:43:06,315.315 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 21:43:06,465.465 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 21:43:06,523.523 INFO    ] time= 12/06/2026 21:43:06
[2026-06-12 21:43:06,547.547 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 21:43:06,553.553 INFO    ] Checking for existing commands in stream...
[2026-06-12 21:43:06,644.644 INFO    ] No existing commands found in stream
[2026-06-12 21:43:11,653.653 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 21:43:11,656.656 INFO    ] Waiting 0.58 seconds before fallback handling...
[2026-06-12 21:43:12,604.604 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 21:43:12,605.605 INFO    ] Checking for system updates...
[2026-06-12 21:43:12,627.627 INFO    ] 200
[2026-06-12 21:43:12,628.628 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:43:12,658.658 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 21:43:12,659.659 INFO    ] No update needed
[2026-06-12 21:43:12,661.661 INFO    ] Checking for camera pi updates...
[2026-06-12 21:43:12,683.683 INFO    ] 200
[2026-06-12 21:43:12,684.684 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:43:12,709.709 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 21:43:12,760.760 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 21:43:12,762.762 INFO    ] No camera update needed
[2026-06-12 21:43:12,763.763 INFO    ] Script finished. Safe exiting...
[2026-06-12 21:43:12,764.764 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 21:43:12,767.767 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 21:43:12,770.770 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 21:43:14,812.812 INFO    ] ================================================
[2026-06-12 21:43:14,828.828 INFO    ] Launching Daemon at Fri Jun 12 21:43:14 IST 2026
[2026-06-12 21:43:14,838.838 INFO    ] ================================================
[2026-06-12 21:43:15,227.227 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 21:43:15
[2026-06-12 21:43:15,564.564 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 21:43:15,696.696 INFO    ] Initializing speech engine...
[2026-06-12 21:43:15,710.710 INFO    ] 2026-06-12 21:43:15
[2026-06-12 21:43:15,916.916 INFO    ] 2026-06-12 21:43:15
[2026-06-12 21:43:15,946.946 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 21:43:16,130.130 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 21:43:16,139.139 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 21:43:16,261.261 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 21:43:16,317.317 INFO    ] time= 12/06/2026 21:43:16
[2026-06-12 21:43:16,351.351 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 21:43:16,362.362 INFO    ] Checking for existing commands in stream...
[2026-06-12 21:43:16,433.433 INFO    ] No existing commands found in stream
[2026-06-12 21:43:21,442.442 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 21:43:21,444.444 INFO    ] Waiting 1.22 seconds before fallback handling...
[2026-06-12 21:43:23,045.045 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 21:43:23,047.047 INFO    ] Checking for system updates...
[2026-06-12 21:43:23,069.069 INFO    ] 200
[2026-06-12 21:43:23,071.071 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:43:23,106.106 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 21:43:23,108.108 INFO    ] No update needed
[2026-06-12 21:43:23,109.109 INFO    ] Checking for camera pi updates...
[2026-06-12 21:43:23,131.131 INFO    ] 200
[2026-06-12 21:43:23,133.133 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:43:23,157.157 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 21:43:23,219.219 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 21:43:23,221.221 INFO    ] No camera update needed
[2026-06-12 21:43:23,222.222 INFO    ] Script finished. Safe exiting...
[2026-06-12 21:43:23,224.224 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 21:43:23,227.227 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 21:43:23,230.230 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 21:43:25,270.270 INFO    ] ================================================
[2026-06-12 21:43:25,285.285 INFO    ] Launching Daemon at Fri Jun 12 21:43:25 IST 2026
[2026-06-12 21:43:25,296.296 INFO    ] ================================================
[2026-06-12 21:43:25,663.663 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 21:43:25
[2026-06-12 21:43:25,978.978 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 21:43:26,121.121 INFO    ] Initializing speech engine...
[2026-06-12 21:43:26,126.126 INFO    ] 2026-06-12 21:43:26
[2026-06-12 21:43:26,330.330 INFO    ] 2026-06-12 21:43:26
[2026-06-12 21:43:26,358.358 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 21:43:26,541.541 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 21:43:26,618.618 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 21:43:26,767.767 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 21:43:26,774.774 INFO    ] time= 12/06/2026 21:43:26
[2026-06-12 21:43:26,776.776 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 21:43:26,777.777 INFO    ] Checking for existing commands in stream...
[2026-06-12 21:43:26,844.844 INFO    ] No existing commands found in stream
[2026-06-12 21:43:31,853.853 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 21:43:31,856.856 INFO    ] Waiting 3.05 seconds before fallback handling...
[2026-06-12 21:43:35,305.305 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 21:43:35,306.306 INFO    ] Checking for system updates...
[2026-06-12 21:43:35,327.327 INFO    ] 200
[2026-06-12 21:43:35,329.329 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:43:35,362.362 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 21:43:35,363.363 INFO    ] No update needed
[2026-06-12 21:43:35,365.365 INFO    ] Checking for camera pi updates...
[2026-06-12 21:43:35,385.385 INFO    ] 200
[2026-06-12 21:43:35,391.391 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:43:35,416.416 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 21:43:35,451.451 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 21:43:35,452.452 INFO    ] No camera update needed
[2026-06-12 21:43:35,453.453 INFO    ] Script finished. Safe exiting...
[2026-06-12 21:43:35,455.455 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 21:43:35,457.457 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 21:43:35,460.460 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 21:43:37,498.498 INFO    ] ================================================
[2026-06-12 21:43:37,515.515 INFO    ] Launching Daemon at Fri Jun 12 21:43:37 IST 2026
[2026-06-12 21:43:37,651.651 INFO    ] ================================================
[2026-06-12 21:43:37,981.981 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 21:43:37
[2026-06-12 21:43:38,297.297 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 21:43:38,432.432 INFO    ] Initializing speech engine...
[2026-06-12 21:43:38,444.444 INFO    ] 2026-06-12 21:43:38
[2026-06-12 21:43:38,651.651 INFO    ] 2026-06-12 21:43:38
[2026-06-12 21:43:38,681.681 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 21:43:38,866.866 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 21:43:38,875.875 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 21:43:39,003.003 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 21:43:39,065.065 INFO    ] time= 12/06/2026 21:43:39
[2026-06-12 21:43:39,097.097 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 21:43:39,099.099 INFO    ] Checking for existing commands in stream...
[2026-06-12 21:43:39,194.194 INFO    ] No existing commands found in stream
[2026-06-12 21:43:44,203.203 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 21:43:44,206.206 INFO    ] Waiting 1.95 seconds before fallback handling...
[2026-06-12 21:43:46,524.524 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 21:43:46,526.526 INFO    ] Checking for system updates...
[2026-06-12 21:43:46,548.548 INFO    ] 200
[2026-06-12 21:43:46,550.550 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:43:46,582.582 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 21:43:46,584.584 INFO    ] No update needed
[2026-06-12 21:43:46,585.585 INFO    ] Checking for camera pi updates...
[2026-06-12 21:43:46,613.613 INFO    ] 200
[2026-06-12 21:43:46,615.615 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:43:46,642.642 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 21:43:46,688.688 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 21:43:46,689.689 INFO    ] No camera update needed
[2026-06-12 21:43:46,691.691 INFO    ] Script finished. Safe exiting...
[2026-06-12 21:43:46,692.692 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 21:43:46,695.695 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 21:43:46,698.698 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 21:43:48,738.738 INFO    ] ================================================
[2026-06-12 21:43:48,753.753 INFO    ] Launching Daemon at Fri Jun 12 21:43:48 IST 2026
[2026-06-12 21:43:48,764.764 INFO    ] ================================================
[2026-06-12 21:43:49,123.123 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 21:43:49
[2026-06-12 21:43:49,436.436 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 21:43:49,589.589 INFO    ] Initializing speech engine...
[2026-06-12 21:43:49,593.593 INFO    ] 2026-06-12 21:43:49
[2026-06-12 21:43:49,790.790 INFO    ] 2026-06-12 21:43:49
[2026-06-12 21:43:49,819.819 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 21:43:50,004.004 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 21:43:50,007.007 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 21:43:50,144.144 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 21:43:50,212.212 INFO    ] time= 12/06/2026 21:43:50
[2026-06-12 21:43:50,235.235 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 21:43:50,242.242 INFO    ] Checking for existing commands in stream...
[2026-06-12 21:43:50,308.308 INFO    ] No existing commands found in stream
[2026-06-12 21:43:55,317.317 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 21:43:55,320.320 INFO    ] Waiting 3.04 seconds before fallback handling...
[2026-06-12 21:43:58,733.733 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 21:43:58,735.735 INFO    ] Checking for system updates...
[2026-06-12 21:43:58,757.757 INFO    ] 200
[2026-06-12 21:43:58,758.758 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:43:58,788.788 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 21:43:58,790.790 INFO    ] No update needed
[2026-06-12 21:43:58,791.791 INFO    ] Checking for camera pi updates...
[2026-06-12 21:43:58,811.811 INFO    ] 200
[2026-06-12 21:43:58,813.813 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:43:58,836.836 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 21:43:58,881.881 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 21:43:58,882.882 INFO    ] No camera update needed
[2026-06-12 21:43:58,883.883 INFO    ] Script finished. Safe exiting...
[2026-06-12 21:43:58,885.885 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 21:43:58,887.887 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 21:43:58,890.890 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 21:44:00,930.930 INFO    ] ================================================
[2026-06-12 21:44:00,946.946 INFO    ] Launching Daemon at Fri Jun 12 21:44:00 IST 2026
[2026-06-12 21:44:00,957.957 INFO    ] ================================================
[2026-06-12 21:44:01,380.380 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 21:44:01
[2026-06-12 21:44:01,748.748 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 21:44:01,928.928 INFO    ] Initializing speech engine...
[2026-06-12 21:44:01,938.938 INFO    ] 2026-06-12 21:44:01
[2026-06-12 21:44:02,135.135 INFO    ] 2026-06-12 21:44:02
[2026-06-12 21:44:02,190.190 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 21:44:02,350.350 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 21:44:02,354.354 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 21:44:02,510.510 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 21:44:02,564.564 INFO    ] time= 12/06/2026 21:44:02
[2026-06-12 21:44:02,591.591 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 21:44:02,647.647 INFO    ] Checking for existing commands in stream...
[2026-06-12 21:44:02,746.746 INFO    ] No existing commands found in stream
[2026-06-12 21:44:07,756.756 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 21:44:07,759.759 INFO    ] Waiting 3.20 seconds before fallback handling...
[2026-06-12 21:44:11,354.354 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 21:44:11,355.355 INFO    ] Checking for system updates...
[2026-06-12 21:44:11,376.376 INFO    ] 200
[2026-06-12 21:44:11,378.378 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:44:11,410.410 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 21:44:11,411.411 INFO    ] No update needed
[2026-06-12 21:44:11,412.412 INFO    ] Checking for camera pi updates...
[2026-06-12 21:44:11,431.431 INFO    ] 200
[2026-06-12 21:44:11,432.432 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:44:11,459.459 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 21:44:11,583.583 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 21:44:11,584.584 INFO    ] No camera update needed
[2026-06-12 21:44:11,585.585 INFO    ] Script finished. Safe exiting...
[2026-06-12 21:44:11,586.586 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 21:44:11,589.589 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 21:44:11,592.592 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 21:44:13,631.631 INFO    ] ================================================
[2026-06-12 21:44:13,647.647 INFO    ] Launching Daemon at Fri Jun 12 21:44:13 IST 2026
[2026-06-12 21:44:13,658.658 INFO    ] ================================================
[2026-06-12 21:44:13,995.995 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 21:44:13
[2026-06-12 21:44:14,329.329 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 21:44:14,479.479 INFO    ] Initializing speech engine...
[2026-06-12 21:44:14,485.485 INFO    ] 2026-06-12 21:44:14
[2026-06-12 21:44:14,693.693 INFO    ] 2026-06-12 21:44:14
[2026-06-12 21:44:14,724.724 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 21:44:14,864.864 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 21:44:14,913.913 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 21:44:15,057.057 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 21:44:15,121.121 INFO    ] time= 12/06/2026 21:44:15
[2026-06-12 21:44:15,144.144 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 21:44:15,151.151 INFO    ] Checking for existing commands in stream...
[2026-06-12 21:44:15,218.218 INFO    ] No existing commands found in stream
[2026-06-12 21:44:20,232.232 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 21:44:20,236.236 INFO    ] Waiting 0.02 seconds before fallback handling...
[2026-06-12 21:44:20,622.622 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 21:44:20,623.623 INFO    ] Checking for system updates...
[2026-06-12 21:44:20,644.644 INFO    ] 200
[2026-06-12 21:44:20,645.645 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:44:20,677.677 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 21:44:20,679.679 INFO    ] No update needed
[2026-06-12 21:44:20,680.680 INFO    ] Checking for camera pi updates...
[2026-06-12 21:44:20,700.700 INFO    ] 200
[2026-06-12 21:44:20,702.702 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:44:20,726.726 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 21:44:20,771.771 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 21:44:20,773.773 INFO    ] No camera update needed
[2026-06-12 21:44:20,774.774 INFO    ] Script finished. Safe exiting...
[2026-06-12 21:44:20,775.775 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 21:44:20,778.778 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 21:44:20,782.782 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 21:44:22,820.820 INFO    ] ================================================
[2026-06-12 21:44:22,835.835 INFO    ] Launching Daemon at Fri Jun 12 21:44:22 IST 2026
[2026-06-12 21:44:22,846.846 INFO    ] ================================================
[2026-06-12 21:44:23,188.188 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 21:44:23
[2026-06-12 21:44:23,507.507 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 21:44:23,644.644 INFO    ] Initializing speech engine...
[2026-06-12 21:44:23,657.657 INFO    ] 2026-06-12 21:44:23
[2026-06-12 21:44:23,876.876 INFO    ] 2026-06-12 21:44:23
[2026-06-12 21:44:23,906.906 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 21:44:24,103.103 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 21:44:24,106.106 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 21:44:24,245.245 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 21:44:24,306.306 INFO    ] time= 12/06/2026 21:44:24
[2026-06-12 21:44:24,329.329 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 21:44:24,352.352 INFO    ] Checking for existing commands in stream...
[2026-06-12 21:44:24,427.427 INFO    ] No existing commands found in stream
[2026-06-12 21:44:29,437.437 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 21:44:29,440.440 INFO    ] Waiting 2.54 seconds before fallback handling...
[2026-06-12 21:44:32,350.350 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 21:44:32,351.351 INFO    ] Checking for system updates...
[2026-06-12 21:44:32,372.372 INFO    ] 200
[2026-06-12 21:44:32,374.374 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:44:32,404.404 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 21:44:32,405.405 INFO    ] No update needed
[2026-06-12 21:44:32,406.406 INFO    ] Checking for camera pi updates...
[2026-06-12 21:44:32,428.428 INFO    ] 200
[2026-06-12 21:44:32,429.429 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:44:32,453.453 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 21:44:32,491.491 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 21:44:32,492.492 INFO    ] No camera update needed
[2026-06-12 21:44:32,494.494 INFO    ] Script finished. Safe exiting...
[2026-06-12 21:44:32,495.495 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 21:44:32,498.498 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 21:44:32,501.501 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 21:44:34,538.538 INFO    ] ================================================
[2026-06-12 21:44:34,553.553 INFO    ] Launching Daemon at Fri Jun 12 21:44:34 IST 2026
[2026-06-12 21:44:34,564.564 INFO    ] ================================================
[2026-06-12 21:44:34,930.930 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 21:44:34
[2026-06-12 21:44:35,246.246 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 21:44:35,394.394 INFO    ] Initializing speech engine...
[2026-06-12 21:44:35,399.399 INFO    ] 2026-06-12 21:44:35
[2026-06-12 21:44:35,603.603 INFO    ] 2026-06-12 21:44:35
[2026-06-12 21:44:35,632.632 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 21:44:35,818.818 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 21:44:35,821.821 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 21:44:35,958.958 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 21:44:36,022.022 INFO    ] time= 12/06/2026 21:44:35
[2026-06-12 21:44:36,050.050 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 21:44:36,052.052 INFO    ] Checking for existing commands in stream...
[2026-06-12 21:44:36,151.151 INFO    ] No existing commands found in stream
[2026-06-12 21:44:41,160.160 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 21:44:41,163.163 INFO    ] Waiting 0.11 seconds before fallback handling...
[2026-06-12 21:44:41,621.621 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 21:44:41,622.622 INFO    ] Checking for system updates...
[2026-06-12 21:44:41,642.642 INFO    ] 200
[2026-06-12 21:44:41,644.644 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:44:41,676.676 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 21:44:41,677.677 INFO    ] No update needed
[2026-06-12 21:44:41,678.678 INFO    ] Checking for camera pi updates...
[2026-06-12 21:44:41,699.699 INFO    ] 200
[2026-06-12 21:44:41,700.700 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:44:41,723.723 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 21:44:41,763.763 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 21:44:41,765.765 INFO    ] No camera update needed
[2026-06-12 21:44:41,771.771 INFO    ] Script finished. Safe exiting...
[2026-06-12 21:44:41,772.772 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 21:44:41,776.776 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 21:44:41,781.781 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 21:44:43,820.820 INFO    ] ================================================
[2026-06-12 21:44:43,835.835 INFO    ] Launching Daemon at Fri Jun 12 21:44:43 IST 2026
[2026-06-12 21:44:43,846.846 INFO    ] ================================================
[2026-06-12 21:44:44,178.178 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 21:44:44
[2026-06-12 21:44:44,491.491 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 21:44:44,630.630 INFO    ] Initializing speech engine...
[2026-06-12 21:44:44,638.638 INFO    ] 2026-06-12 21:44:44
[2026-06-12 21:44:44,844.844 INFO    ] 2026-06-12 21:44:44
[2026-06-12 21:44:44,873.873 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 21:44:45,003.003 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 21:44:45,060.060 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 21:44:45,196.196 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 21:44:45,260.260 INFO    ] time= 12/06/2026 21:44:45
[2026-06-12 21:44:45,286.286 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 21:44:45,293.293 INFO    ] Checking for existing commands in stream...
[2026-06-12 21:44:45,359.359 INFO    ] No existing commands found in stream
[2026-06-12 21:44:50,373.373 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 21:44:50,376.376 INFO    ] Waiting 1.32 seconds before fallback handling...
[2026-06-12 21:44:52,021.021 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 21:44:52,022.022 INFO    ] Checking for system updates...
[2026-06-12 21:44:52,043.043 INFO    ] 200
[2026-06-12 21:44:52,044.044 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:44:52,074.074 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 21:44:52,076.076 INFO    ] No update needed
[2026-06-12 21:44:52,077.077 INFO    ] Checking for camera pi updates...
[2026-06-12 21:44:52,100.100 INFO    ] 200
[2026-06-12 21:44:52,101.101 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:44:52,126.126 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 21:44:52,169.169 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 21:44:52,171.171 INFO    ] No camera update needed
[2026-06-12 21:44:52,172.172 INFO    ] Script finished. Safe exiting...
[2026-06-12 21:44:52,173.173 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 21:44:52,176.176 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 21:44:52,179.179 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 21:44:54,217.217 INFO    ] ================================================
[2026-06-12 21:44:54,232.232 INFO    ] Launching Daemon at Fri Jun 12 21:44:54 IST 2026
[2026-06-12 21:44:54,243.243 INFO    ] ================================================
[2026-06-12 21:44:54,626.626 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 21:44:54
[2026-06-12 21:44:54,960.960 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 21:44:55,109.109 INFO    ] Initializing speech engine...
[2026-06-12 21:44:55,115.115 INFO    ] 2026-06-12 21:44:55
[2026-06-12 21:44:55,322.322 INFO    ] 2026-06-12 21:44:55
[2026-06-12 21:44:55,351.351 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 21:44:55,479.479 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 21:44:55,536.536 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 21:44:55,685.685 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 21:44:55,741.741 INFO    ] time= 12/06/2026 21:44:55
[2026-06-12 21:44:55,765.765 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 21:44:55,772.772 INFO    ] Checking for existing commands in stream...
[2026-06-12 21:44:55,839.839 INFO    ] No existing commands found in stream
[2026-06-12 21:45:00,853.853 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 21:45:00,857.857 INFO    ] Waiting 3.93 seconds before fallback handling...
[2026-06-12 21:45:05,150.150 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 21:45:05,151.151 INFO    ] Checking for system updates...
[2026-06-12 21:45:05,172.172 INFO    ] 200
[2026-06-12 21:45:05,174.174 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:45:05,206.206 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 21:45:05,207.207 INFO    ] No update needed
[2026-06-12 21:45:05,209.209 INFO    ] Checking for camera pi updates...
[2026-06-12 21:45:05,231.231 INFO    ] 200
[2026-06-12 21:45:05,233.233 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:45:05,256.256 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 21:45:05,286.286 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 21:45:05,288.288 INFO    ] No camera update needed
[2026-06-12 21:45:05,289.289 INFO    ] Script finished. Safe exiting...
[2026-06-12 21:45:05,291.291 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 21:45:05,294.294 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 21:45:05,297.297 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 21:45:07,335.335 INFO    ] ================================================
[2026-06-12 21:45:07,351.351 INFO    ] Launching Daemon at Fri Jun 12 21:45:07 IST 2026
[2026-06-12 21:45:07,362.362 INFO    ] ================================================
[2026-06-12 21:45:07,733.733 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 21:45:07
[2026-06-12 21:45:08,073.073 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 21:45:08,226.226 INFO    ] Initializing speech engine...
[2026-06-12 21:45:08,230.230 INFO    ] 2026-06-12 21:45:08
[2026-06-12 21:45:08,437.437 INFO    ] 2026-06-12 21:45:08
[2026-06-12 21:45:08,466.466 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 21:45:08,652.652 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 21:45:08,662.662 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 21:45:08,807.807 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 21:45:08,872.872 INFO    ] time= 12/06/2026 21:45:08
[2026-06-12 21:45:08,884.884 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 21:45:08,889.889 INFO    ] Checking for existing commands in stream...
[2026-06-12 21:45:08,957.957 INFO    ] No existing commands found in stream
[2026-06-12 21:45:13,967.967 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 21:45:13,970.970 INFO    ] Waiting 3.21 seconds before fallback handling...
[2026-06-12 21:45:18,788.788 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 21:45:18,791.791 INFO    ] Checking for system updates...
[2026-06-12 21:45:18,829.829 INFO    ] 200
[2026-06-12 21:45:18,832.832 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:45:18,885.885 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 21:45:18,887.887 INFO    ] No update needed
[2026-06-12 21:45:18,890.890 INFO    ] Checking for camera pi updates...
[2026-06-12 21:45:18,923.923 INFO    ] 200
[2026-06-12 21:45:18,924.924 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:45:18,947.947 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 21:45:18,995.995 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 21:45:18,996.996 INFO    ] No camera update needed
[2026-06-12 21:45:18,997.997 INFO    ] Script finished. Safe exiting...
[2026-06-12 21:45:18,999.999 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 21:45:19,002.002 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 21:45:19,004.004 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 21:45:21,042.042 INFO    ] ================================================
[2026-06-12 21:45:21,057.057 INFO    ] Launching Daemon at Fri Jun 12 21:45:21 IST 2026
[2026-06-12 21:45:21,068.068 INFO    ] ================================================
[2026-06-12 21:45:21,428.428 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 21:45:21
[2026-06-12 21:45:21,742.742 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 21:45:21,879.879 INFO    ] Initializing speech engine...
[2026-06-12 21:45:21,883.883 INFO    ] 2026-06-12 21:45:21
[2026-06-12 21:45:22,114.114 INFO    ] 2026-06-12 21:45:22
[2026-06-12 21:45:22,145.145 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 21:45:22,338.338 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 21:45:22,348.348 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 21:45:22,489.489 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 21:45:22,546.546 INFO    ] time= 12/06/2026 21:45:22
[2026-06-12 21:45:22,574.574 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 21:45:22,599.599 INFO    ] Checking for existing commands in stream...
[2026-06-12 21:45:22,701.701 INFO    ] No existing commands found in stream
[2026-06-12 21:45:27,710.710 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 21:45:27,713.713 INFO    ] Waiting 2.52 seconds before fallback handling...
[2026-06-12 21:45:30,629.629 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 21:45:30,631.631 INFO    ] Checking for system updates...
[2026-06-12 21:45:30,652.652 INFO    ] 200
[2026-06-12 21:45:30,654.654 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:45:30,684.684 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 21:45:30,685.685 INFO    ] No update needed
[2026-06-12 21:45:30,686.686 INFO    ] Checking for camera pi updates...
[2026-06-12 21:45:30,708.708 INFO    ] 200
[2026-06-12 21:45:30,709.709 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:45:30,732.732 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 21:45:30,780.780 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 21:45:30,782.782 INFO    ] No camera update needed
[2026-06-12 21:45:30,783.783 INFO    ] Script finished. Safe exiting...
[2026-06-12 21:45:30,784.784 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 21:45:30,787.787 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 21:45:30,790.790 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 21:45:32,830.830 INFO    ] ================================================
[2026-06-12 21:45:32,845.845 INFO    ] Launching Daemon at Fri Jun 12 21:45:32 IST 2026
[2026-06-12 21:45:32,857.857 INFO    ] ================================================
[2026-06-12 21:45:33,214.214 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 21:45:33
[2026-06-12 21:45:33,529.529 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 21:45:33,673.673 INFO    ] Initializing speech engine...
[2026-06-12 21:45:33,678.678 INFO    ] 2026-06-12 21:45:33
[2026-06-12 21:45:33,887.887 INFO    ] 2026-06-12 21:45:33
[2026-06-12 21:45:33,915.915 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 21:45:34,099.099 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 21:45:34,102.102 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 21:45:34,243.243 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 21:45:34,309.309 INFO    ] time= 12/06/2026 21:45:34
[2026-06-12 21:45:34,334.334 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 21:45:34,340.340 INFO    ] Checking for existing commands in stream...
[2026-06-12 21:45:34,406.406 INFO    ] No existing commands found in stream
[2026-06-12 21:45:39,415.415 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 21:45:39,418.418 INFO    ] Waiting 0.28 seconds before fallback handling...
[2026-06-12 21:45:40,085.085 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 21:45:40,087.087 INFO    ] Checking for system updates...
[2026-06-12 21:45:40,107.107 INFO    ] 200
[2026-06-12 21:45:40,108.108 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:45:40,138.138 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 21:45:40,139.139 INFO    ] No update needed
[2026-06-12 21:45:40,141.141 INFO    ] Checking for camera pi updates...
[2026-06-12 21:45:40,160.160 INFO    ] 200
[2026-06-12 21:45:40,161.161 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:45:40,186.186 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 21:45:40,222.222 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 21:45:40,223.223 INFO    ] No camera update needed
[2026-06-12 21:45:40,225.225 INFO    ] Script finished. Safe exiting...
[2026-06-12 21:45:40,226.226 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 21:45:40,229.229 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 21:45:40,232.232 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 21:45:42,271.271 INFO    ] ================================================
[2026-06-12 21:45:42,286.286 INFO    ] Launching Daemon at Fri Jun 12 21:45:42 IST 2026
[2026-06-12 21:45:42,297.297 INFO    ] ================================================
[2026-06-12 21:45:42,636.636 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 21:45:42
[2026-06-12 21:45:42,946.946 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 21:45:43,083.083 INFO    ] Initializing speech engine...
[2026-06-12 21:45:43,095.095 INFO    ] 2026-06-12 21:45:43
[2026-06-12 21:45:43,299.299 INFO    ] 2026-06-12 21:45:43
[2026-06-12 21:45:43,328.328 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 21:45:43,513.513 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 21:45:43,516.516 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 21:45:43,669.669 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 21:45:43,722.722 INFO    ] time= 12/06/2026 21:45:43
[2026-06-12 21:45:43,745.745 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 21:45:43,752.752 INFO    ] Checking for existing commands in stream...
[2026-06-12 21:45:43,819.819 INFO    ] No existing commands found in stream
[2026-06-12 21:45:48,828.828 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 21:45:48,831.831 INFO    ] Waiting 3.37 seconds before fallback handling...
[2026-06-12 21:45:52,545.545 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 21:45:52,546.546 INFO    ] Checking for system updates...
[2026-06-12 21:45:52,566.566 INFO    ] 200
[2026-06-12 21:45:52,568.568 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:45:52,597.597 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 21:45:52,599.599 INFO    ] No update needed
[2026-06-12 21:45:52,600.600 INFO    ] Checking for camera pi updates...
[2026-06-12 21:45:52,621.621 INFO    ] 200
[2026-06-12 21:45:52,622.622 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:45:52,645.645 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 21:45:52,684.684 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 21:45:52,685.685 INFO    ] No camera update needed
[2026-06-12 21:45:52,687.687 INFO    ] Script finished. Safe exiting...
[2026-06-12 21:45:52,688.688 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 21:45:52,691.691 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 21:45:52,694.694 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 21:45:54,732.732 INFO    ] ================================================
[2026-06-12 21:45:54,748.748 INFO    ] Launching Daemon at Fri Jun 12 21:45:54 IST 2026
[2026-06-12 21:45:54,758.758 INFO    ] ================================================
[2026-06-12 21:45:55,124.124 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 21:45:55
[2026-06-12 21:45:55,438.438 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 21:45:55,580.580 INFO    ] Initializing speech engine...
[2026-06-12 21:45:55,591.591 INFO    ] 2026-06-12 21:45:55
[2026-06-12 21:45:55,808.808 INFO    ] 2026-06-12 21:45:55
[2026-06-12 21:45:55,839.839 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 21:45:55,972.972 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 21:45:56,036.036 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 21:45:56,181.181 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 21:45:56,228.228 INFO    ] time= 12/06/2026 21:45:56
[2026-06-12 21:45:56,272.272 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 21:45:56,289.289 INFO    ] Checking for existing commands in stream...
[2026-06-12 21:45:56,392.392 INFO    ] No existing commands found in stream
[2026-06-12 21:46:01,401.401 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 21:46:01,404.404 INFO    ] Waiting 0.70 seconds before fallback handling...
[2026-06-12 21:46:02,437.437 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 21:46:02,439.439 INFO    ] Checking for system updates...
[2026-06-12 21:46:02,467.467 INFO    ] 200
[2026-06-12 21:46:02,469.469 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:46:02,509.509 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 21:46:02,511.511 INFO    ] No update needed
[2026-06-12 21:46:02,514.514 INFO    ] Checking for camera pi updates...
[2026-06-12 21:46:02,538.538 INFO    ] 200
[2026-06-12 21:46:02,540.540 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:46:02,571.571 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 21:46:02,600.600 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 21:46:02,602.602 INFO    ] No camera update needed
[2026-06-12 21:46:02,604.604 INFO    ] Script finished. Safe exiting...
[2026-06-12 21:46:02,606.606 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 21:46:02,610.610 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 21:46:02,614.614 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 21:46:04,653.653 INFO    ] ================================================
[2026-06-12 21:46:04,669.669 INFO    ] Launching Daemon at Fri Jun 12 21:46:04 IST 2026
[2026-06-12 21:46:04,680.680 INFO    ] ================================================
[2026-06-12 21:46:05,062.062 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 21:46:05
[2026-06-12 21:46:05,375.375 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 21:46:05,518.518 INFO    ] Initializing speech engine...
[2026-06-12 21:46:05,523.523 INFO    ] 2026-06-12 21:46:05
[2026-06-12 21:46:05,726.726 INFO    ] 2026-06-12 21:46:05
[2026-06-12 21:46:05,755.755 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 21:46:05,876.876 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 21:46:05,939.939 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 21:46:06,101.101 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 21:46:06,162.162 INFO    ] time= 12/06/2026 21:46:06
[2026-06-12 21:46:06,186.186 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 21:46:06,192.192 INFO    ] Checking for existing commands in stream...
[2026-06-12 21:46:06,258.258 INFO    ] No existing commands found in stream
[2026-06-12 21:46:11,267.267 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 21:46:11,270.270 INFO    ] Waiting 0.48 seconds before fallback handling...
[2026-06-12 21:46:12,111.111 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 21:46:12,113.113 INFO    ] Checking for system updates...
[2026-06-12 21:46:12,133.133 INFO    ] 200
[2026-06-12 21:46:12,134.134 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:46:12,164.164 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 21:46:12,165.165 INFO    ] No update needed
[2026-06-12 21:46:12,167.167 INFO    ] Checking for camera pi updates...
[2026-06-12 21:46:12,186.186 INFO    ] 200
[2026-06-12 21:46:12,187.187 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:46:12,210.210 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 21:46:12,264.264 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 21:46:12,266.266 INFO    ] No camera update needed
[2026-06-12 21:46:12,267.267 INFO    ] Script finished. Safe exiting...
[2026-06-12 21:46:12,268.268 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 21:46:12,271.271 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 21:46:12,274.274 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 21:46:14,313.313 INFO    ] ================================================
[2026-06-12 21:46:14,328.328 INFO    ] Launching Daemon at Fri Jun 12 21:46:14 IST 2026
[2026-06-12 21:46:14,340.340 INFO    ] ================================================
[2026-06-12 21:46:14,715.715 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 21:46:14
[2026-06-12 21:46:15,057.057 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 21:46:15,212.212 INFO    ] Initializing speech engine...
[2026-06-12 21:46:15,217.217 INFO    ] 2026-06-12 21:46:15
[2026-06-12 21:46:15,429.429 INFO    ] 2026-06-12 21:46:15
[2026-06-12 21:46:15,459.459 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 21:46:15,645.645 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 21:46:15,655.655 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 21:46:15,798.798 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 21:46:15,856.856 INFO    ] time= 12/06/2026 21:46:15
[2026-06-12 21:46:15,880.880 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 21:46:15,887.887 INFO    ] Checking for existing commands in stream...
[2026-06-12 21:46:15,979.979 INFO    ] No existing commands found in stream
[2026-06-12 21:46:20,988.988 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 21:46:20,992.992 INFO    ] Waiting 2.83 seconds before fallback handling...
[2026-06-12 21:46:24,228.228 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 21:46:24,229.229 INFO    ] Checking for system updates...
[2026-06-12 21:46:24,250.250 INFO    ] 200
[2026-06-12 21:46:24,252.252 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:46:24,285.285 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 21:46:24,286.286 INFO    ] No update needed
[2026-06-12 21:46:24,288.288 INFO    ] Checking for camera pi updates...
[2026-06-12 21:46:24,311.311 INFO    ] 200
[2026-06-12 21:46:24,312.312 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:46:24,338.338 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 21:46:24,477.477 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 21:46:24,478.478 INFO    ] No camera update needed
[2026-06-12 21:46:24,480.480 INFO    ] Script finished. Safe exiting...
[2026-06-12 21:46:24,481.481 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 21:46:24,484.484 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 21:46:24,487.487 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 21:46:26,531.531 INFO    ] ================================================
[2026-06-12 21:46:26,546.546 INFO    ] Launching Daemon at Fri Jun 12 21:46:26 IST 2026
[2026-06-12 21:46:26,558.558 INFO    ] ================================================
[2026-06-12 21:46:26,913.913 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 21:46:26
[2026-06-12 21:46:27,227.227 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 21:46:27,358.358 INFO    ] Initializing speech engine...
[2026-06-12 21:46:27,361.361 INFO    ] 2026-06-12 21:46:27
[2026-06-12 21:46:27,579.579 INFO    ] 2026-06-12 21:46:27
[2026-06-12 21:46:27,608.608 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 21:46:27,795.795 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 21:46:27,805.805 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 21:46:27,930.930 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 21:46:27,985.985 INFO    ] time= 12/06/2026 21:46:27
[2026-06-12 21:46:28,029.029 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 21:46:28,031.031 INFO    ] Checking for existing commands in stream...
[2026-06-12 21:46:28,127.127 INFO    ] No existing commands found in stream
[2026-06-12 21:46:33,135.135 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 21:46:33,137.137 INFO    ] Waiting 3.88 seconds before fallback handling...
[2026-06-12 21:46:37,390.390 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 21:46:37,392.392 INFO    ] Checking for system updates...
[2026-06-12 21:46:37,412.412 INFO    ] 200
[2026-06-12 21:46:37,414.414 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:46:37,444.444 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 21:46:37,445.445 INFO    ] No update needed
[2026-06-12 21:46:37,446.446 INFO    ] Checking for camera pi updates...
[2026-06-12 21:46:37,467.467 INFO    ] 200
[2026-06-12 21:46:37,468.468 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:46:37,492.492 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 21:46:37,543.543 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 21:46:37,544.544 INFO    ] No camera update needed
[2026-06-12 21:46:37,546.546 INFO    ] Script finished. Safe exiting...
[2026-06-12 21:46:37,547.547 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 21:46:37,551.551 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 21:46:37,553.553 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 21:46:39,593.593 INFO    ] ================================================
[2026-06-12 21:46:39,608.608 INFO    ] Launching Daemon at Fri Jun 12 21:46:39 IST 2026
[2026-06-12 21:46:39,619.619 INFO    ] ================================================
[2026-06-12 21:46:39,971.971 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 21:46:39
[2026-06-12 21:46:40,288.288 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 21:46:40,433.433 INFO    ] Initializing speech engine...
[2026-06-12 21:46:40,438.438 INFO    ] 2026-06-12 21:46:40
[2026-06-12 21:46:40,642.642 INFO    ] 2026-06-12 21:46:40
[2026-06-12 21:46:40,672.672 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 21:46:40,794.794 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 21:46:40,852.852 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 21:46:40,995.995 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 21:46:41,062.062 INFO    ] time= 12/06/2026 21:46:41
[2026-06-12 21:46:41,086.086 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 21:46:41,092.092 INFO    ] Checking for existing commands in stream...
[2026-06-12 21:46:41,159.159 INFO    ] No existing commands found in stream
[2026-06-12 21:46:46,178.178 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 21:46:46,181.181 INFO    ] Waiting 0.26 seconds before fallback handling...
[2026-06-12 21:46:46,814.814 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 21:46:46,815.815 INFO    ] Checking for system updates...
[2026-06-12 21:46:46,836.836 INFO    ] 200
[2026-06-12 21:46:46,837.837 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:46:46,867.867 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 21:46:46,869.869 INFO    ] No update needed
[2026-06-12 21:46:46,870.870 INFO    ] Checking for camera pi updates...
[2026-06-12 21:46:46,892.892 INFO    ] 200
[2026-06-12 21:46:46,893.893 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:46:46,918.918 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 21:46:46,990.990 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 21:46:46,991.991 INFO    ] No camera update needed
[2026-06-12 21:46:46,993.993 INFO    ] Script finished. Safe exiting...
[2026-06-12 21:46:46,994.994 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 21:46:46,997.997 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 21:46:47,000.000 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 21:46:49,040.040 INFO    ] ================================================
[2026-06-12 21:46:49,055.055 INFO    ] Launching Daemon at Fri Jun 12 21:46:49 IST 2026
[2026-06-12 21:46:49,067.067 INFO    ] ================================================
[2026-06-12 21:46:49,437.437 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 21:46:49
[2026-06-12 21:46:49,748.748 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 21:46:49,890.890 INFO    ] Initializing speech engine...
[2026-06-12 21:46:49,895.895 INFO    ] 2026-06-12 21:46:49
[2026-06-12 21:46:50,097.097 INFO    ] 2026-06-12 21:46:50
[2026-06-12 21:46:50,127.127 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 21:46:50,309.309 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 21:46:50,317.317 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 21:46:50,447.447 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 21:46:50,513.513 INFO    ] time= 12/06/2026 21:46:50
[2026-06-12 21:46:50,538.538 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 21:46:50,544.544 INFO    ] Checking for existing commands in stream...
[2026-06-12 21:46:50,611.611 INFO    ] No existing commands found in stream
[2026-06-12 21:46:55,625.625 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 21:46:55,627.627 INFO    ] Waiting 1.40 seconds before fallback handling...
[2026-06-12 21:46:57,423.423 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 21:46:57,425.425 INFO    ] Checking for system updates...
[2026-06-12 21:46:57,445.445 INFO    ] 200
[2026-06-12 21:46:57,447.447 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:46:57,477.477 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 21:46:57,478.478 INFO    ] No update needed
[2026-06-12 21:46:57,479.479 INFO    ] Checking for camera pi updates...
[2026-06-12 21:46:57,500.500 INFO    ] 200
[2026-06-12 21:46:57,502.502 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:46:57,525.525 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 21:46:57,571.571 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 21:46:57,572.572 INFO    ] No camera update needed
[2026-06-12 21:46:57,573.573 INFO    ] Script finished. Safe exiting...
[2026-06-12 21:46:57,575.575 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 21:46:57,578.578 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 21:46:57,580.580 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 21:46:59,620.620 INFO    ] ================================================
[2026-06-12 21:46:59,635.635 INFO    ] Launching Daemon at Fri Jun 12 21:46:59 IST 2026
[2026-06-12 21:46:59,646.646 INFO    ] ================================================
[2026-06-12 21:46:59,991.991 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 21:46:59
[2026-06-12 21:47:00,303.303 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 21:47:00,447.447 INFO    ] Initializing speech engine...
[2026-06-12 21:47:00,452.452 INFO    ] 2026-06-12 21:47:00
[2026-06-12 21:47:00,653.653 INFO    ] 2026-06-12 21:47:00
[2026-06-12 21:47:00,682.682 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 21:47:00,866.866 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 21:47:00,876.876 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 21:47:01,004.004 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 21:47:01,068.068 INFO    ] time= 12/06/2026 21:47:01
[2026-06-12 21:47:01,104.104 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 21:47:01,123.123 INFO    ] Checking for existing commands in stream...
[2026-06-12 21:47:01,201.201 INFO    ] No existing commands found in stream
[2026-06-12 21:47:06,210.210 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 21:47:06,213.213 INFO    ] Waiting 3.48 seconds before fallback handling...
[2026-06-12 21:47:10,062.062 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 21:47:10,064.064 INFO    ] Checking for system updates...
[2026-06-12 21:47:10,085.085 INFO    ] 200
[2026-06-12 21:47:10,086.086 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:47:10,118.118 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 21:47:10,120.120 INFO    ] No update needed
[2026-06-12 21:47:10,121.121 INFO    ] Checking for camera pi updates...
[2026-06-12 21:47:10,140.140 INFO    ] 200
[2026-06-12 21:47:10,142.142 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:47:10,165.165 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 21:47:10,216.216 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 21:47:10,218.218 INFO    ] No camera update needed
[2026-06-12 21:47:10,219.219 INFO    ] Script finished. Safe exiting...
[2026-06-12 21:47:10,220.220 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 21:47:10,223.223 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 21:47:10,226.226 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 21:47:12,264.264 INFO    ] ================================================
[2026-06-12 21:47:12,282.282 INFO    ] Launching Daemon at Fri Jun 12 21:47:12 IST 2026
[2026-06-12 21:47:12,295.295 INFO    ] ================================================
[2026-06-12 21:47:12,630.630 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 21:47:12
[2026-06-12 21:47:12,940.940 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 21:47:13,072.072 INFO    ] Initializing speech engine...
[2026-06-12 21:47:13,085.085 INFO    ] 2026-06-12 21:47:13
[2026-06-12 21:47:13,288.288 INFO    ] 2026-06-12 21:47:13
[2026-06-12 21:47:13,316.316 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 21:47:13,499.499 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 21:47:13,508.508 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 21:47:13,637.637 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 21:47:13,704.704 INFO    ] time= 12/06/2026 21:47:13
[2026-06-12 21:47:13,727.727 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 21:47:13,734.734 INFO    ] Checking for existing commands in stream...
[2026-06-12 21:47:13,800.800 INFO    ] No existing commands found in stream
[2026-06-12 21:47:18,809.809 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 21:47:18,812.812 INFO    ] Waiting 0.41 seconds before fallback handling...
[2026-06-12 21:47:19,571.571 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 21:47:19,573.573 INFO    ] Checking for system updates...
[2026-06-12 21:47:19,595.595 INFO    ] 200
[2026-06-12 21:47:19,596.596 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:47:19,631.631 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 21:47:19,633.633 INFO    ] No update needed
[2026-06-12 21:47:19,634.634 INFO    ] Checking for camera pi updates...
[2026-06-12 21:47:19,660.660 INFO    ] 200
[2026-06-12 21:47:19,662.662 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:47:19,685.685 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 21:47:19,727.727 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 21:47:19,728.728 INFO    ] No camera update needed
[2026-06-12 21:47:19,730.730 INFO    ] Script finished. Safe exiting...
[2026-06-12 21:47:19,731.731 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 21:47:19,735.735 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 21:47:19,737.737 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 21:47:21,777.777 INFO    ] ================================================
[2026-06-12 21:47:21,792.792 INFO    ] Launching Daemon at Fri Jun 12 21:47:21 IST 2026
[2026-06-12 21:47:21,803.803 INFO    ] ================================================
[2026-06-12 21:47:22,138.138 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 21:47:22
[2026-06-12 21:47:22,455.455 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 21:47:22,613.613 INFO    ] Initializing speech engine...
[2026-06-12 21:47:22,618.618 INFO    ] 2026-06-12 21:47:22
[2026-06-12 21:47:22,828.828 INFO    ] 2026-06-12 21:47:22
[2026-06-12 21:47:22,858.858 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 21:47:23,045.045 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 21:47:23,056.056 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 21:47:23,209.209 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 21:47:23,272.272 INFO    ] time= 12/06/2026 21:47:23
[2026-06-12 21:47:23,282.282 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 21:47:23,289.289 INFO    ] Checking for existing commands in stream...
[2026-06-12 21:47:23,357.357 INFO    ] No existing commands found in stream
[2026-06-12 21:47:28,371.371 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 21:47:28,375.375 INFO    ] Waiting 3.63 seconds before fallback handling...
[2026-06-12 21:47:32,310.310 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 21:47:32,311.311 INFO    ] Checking for system updates...
[2026-06-12 21:47:32,332.332 INFO    ] 200
[2026-06-12 21:47:32,334.334 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:47:32,374.374 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 21:47:32,376.376 INFO    ] No update needed
[2026-06-12 21:47:32,377.377 INFO    ] Checking for camera pi updates...
[2026-06-12 21:47:32,398.398 INFO    ] 200
[2026-06-12 21:47:32,400.400 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:47:32,424.424 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 21:47:32,451.451 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 21:47:32,453.453 INFO    ] No camera update needed
[2026-06-12 21:47:32,454.454 INFO    ] Script finished. Safe exiting...
[2026-06-12 21:47:32,456.456 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 21:47:32,459.459 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 21:47:32,462.462 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 21:47:34,503.503 INFO    ] ================================================
[2026-06-12 21:47:34,518.518 INFO    ] Launching Daemon at Fri Jun 12 21:47:34 IST 2026
[2026-06-12 21:47:34,529.529 INFO    ] ================================================
[2026-06-12 21:47:34,882.882 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 21:47:34
[2026-06-12 21:47:35,203.203 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 21:47:35,342.342 INFO    ] Initializing speech engine...
[2026-06-12 21:47:35,353.353 INFO    ] 2026-06-12 21:47:35
[2026-06-12 21:47:35,559.559 INFO    ] 2026-06-12 21:47:35
[2026-06-12 21:47:35,586.586 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 21:47:35,772.772 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 21:47:35,780.780 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 21:47:35,906.906 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 21:47:35,974.974 INFO    ] time= 12/06/2026 21:47:35
[2026-06-12 21:47:36,001.001 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 21:47:36,003.003 INFO    ] Checking for existing commands in stream...
[2026-06-12 21:47:36,098.098 INFO    ] No existing commands found in stream
[2026-06-12 21:47:41,107.107 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 21:47:41,110.110 INFO    ] Waiting 2.51 seconds before fallback handling...
[2026-06-12 21:47:44,003.003 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 21:47:44,005.005 INFO    ] Checking for system updates...
[2026-06-12 21:47:44,027.027 INFO    ] 200
[2026-06-12 21:47:44,028.028 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:47:44,058.058 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 21:47:44,059.059 INFO    ] No update needed
[2026-06-12 21:47:44,061.061 INFO    ] Checking for camera pi updates...
[2026-06-12 21:47:44,080.080 INFO    ] 200
[2026-06-12 21:47:44,082.082 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:47:44,111.111 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 21:47:44,157.157 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 21:47:44,158.158 INFO    ] No camera update needed
[2026-06-12 21:47:44,160.160 INFO    ] Script finished. Safe exiting...
[2026-06-12 21:47:44,161.161 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 21:47:44,164.164 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 21:47:44,167.167 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 21:47:46,205.205 INFO    ] ================================================
[2026-06-12 21:47:46,221.221 INFO    ] Launching Daemon at Fri Jun 12 21:47:46 IST 2026
[2026-06-12 21:47:46,233.233 INFO    ] ================================================
[2026-06-12 21:47:46,595.595 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 21:47:46
[2026-06-12 21:47:46,908.908 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 21:47:47,045.045 INFO    ] Initializing speech engine...
[2026-06-12 21:47:47,054.054 INFO    ] 2026-06-12 21:47:47
[2026-06-12 21:47:47,257.257 INFO    ] 2026-06-12 21:47:47
[2026-06-12 21:47:47,285.285 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 21:47:47,471.471 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 21:47:47,474.474 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 21:47:47,627.627 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 21:47:47,680.680 INFO    ] time= 12/06/2026 21:47:47
[2026-06-12 21:47:47,703.703 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 21:47:47,710.710 INFO    ] Checking for existing commands in stream...
[2026-06-12 21:47:47,780.780 INFO    ] No existing commands found in stream
[2026-06-12 21:47:52,790.790 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 21:47:52,793.793 INFO    ] Waiting 3.32 seconds before fallback handling...
[2026-06-12 21:47:56,505.505 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 21:47:56,507.507 INFO    ] Checking for system updates...
[2026-06-12 21:47:56,529.529 INFO    ] 200
[2026-06-12 21:47:56,531.531 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:47:56,562.562 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 21:47:56,563.563 INFO    ] No update needed
[2026-06-12 21:47:56,564.564 INFO    ] Checking for camera pi updates...
[2026-06-12 21:47:56,584.584 INFO    ] 200
[2026-06-12 21:47:56,585.585 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:47:56,611.611 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 21:47:56,657.657 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 21:47:56,658.658 INFO    ] No camera update needed
[2026-06-12 21:47:56,660.660 INFO    ] Script finished. Safe exiting...
[2026-06-12 21:47:56,661.661 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 21:47:56,665.665 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 21:47:56,668.668 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 21:47:58,707.707 INFO    ] ================================================
[2026-06-12 21:47:58,724.724 INFO    ] Launching Daemon at Fri Jun 12 21:47:58 IST 2026
[2026-06-12 21:47:58,735.735 INFO    ] ================================================
[2026-06-12 21:47:59,081.081 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 21:47:59
[2026-06-12 21:47:59,399.399 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 21:47:59,544.544 INFO    ] Initializing speech engine...
[2026-06-12 21:47:59,549.549 INFO    ] 2026-06-12 21:47:59
[2026-06-12 21:47:59,754.754 INFO    ] 2026-06-12 21:47:59
[2026-06-12 21:47:59,783.783 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 21:47:59,967.967 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 21:47:59,977.977 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 21:48:00,103.103 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 21:48:00,165.165 INFO    ] time= 12/06/2026 21:48:00
[2026-06-12 21:48:00,198.198 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 21:48:00,205.205 INFO    ] Checking for existing commands in stream...
[2026-06-12 21:48:00,271.271 INFO    ] No existing commands found in stream
[2026-06-12 21:48:05,285.285 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 21:48:05,288.288 INFO    ] Waiting 3.00 seconds before fallback handling...
[2026-06-12 21:48:08,671.671 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 21:48:08,673.673 INFO    ] Checking for system updates...
[2026-06-12 21:48:08,694.694 INFO    ] 200
[2026-06-12 21:48:08,695.695 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:48:08,727.727 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 21:48:08,728.728 INFO    ] No update needed
[2026-06-12 21:48:08,730.730 INFO    ] Checking for camera pi updates...
[2026-06-12 21:48:08,749.749 INFO    ] 200
[2026-06-12 21:48:08,751.751 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:48:08,774.774 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 21:48:08,822.822 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 21:48:08,824.824 INFO    ] No camera update needed
[2026-06-12 21:48:08,825.825 INFO    ] Script finished. Safe exiting...
[2026-06-12 21:48:08,826.826 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 21:48:08,830.830 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 21:48:08,832.832 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 21:48:10,873.873 INFO    ] ================================================
[2026-06-12 21:48:10,888.888 INFO    ] Launching Daemon at Fri Jun 12 21:48:10 IST 2026
[2026-06-12 21:48:10,899.899 INFO    ] ================================================
[2026-06-12 21:48:11,242.242 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 21:48:11
[2026-06-12 21:48:11,553.553 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 21:48:11,684.684 INFO    ] Initializing speech engine...
[2026-06-12 21:48:11,691.691 INFO    ] 2026-06-12 21:48:11
[2026-06-12 21:48:11,903.903 INFO    ] 2026-06-12 21:48:11
[2026-06-12 21:48:11,932.932 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 21:48:12,114.114 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 21:48:12,118.118 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 21:48:12,245.245 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 21:48:12,311.311 INFO    ] time= 12/06/2026 21:48:12
[2026-06-12 21:48:12,342.342 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 21:48:12,344.344 INFO    ] Checking for existing commands in stream...
[2026-06-12 21:48:12,416.416 INFO    ] No existing commands found in stream
[2026-06-12 21:48:17,435.435 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 21:48:17,438.438 INFO    ] Waiting 1.30 seconds before fallback handling...
[2026-06-12 21:48:19,090.090 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 21:48:19,092.092 INFO    ] Checking for system updates...
[2026-06-12 21:48:19,112.112 INFO    ] 200
[2026-06-12 21:48:19,113.113 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:48:19,143.143 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 21:48:19,145.145 INFO    ] No update needed
[2026-06-12 21:48:19,146.146 INFO    ] Checking for camera pi updates...
[2026-06-12 21:48:19,166.166 INFO    ] 200
[2026-06-12 21:48:19,168.168 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:48:19,193.193 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 21:48:19,253.253 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 21:48:19,254.254 INFO    ] No camera update needed
[2026-06-12 21:48:19,256.256 INFO    ] Script finished. Safe exiting...
[2026-06-12 21:48:19,257.257 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 21:48:19,260.260 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 21:48:19,263.263 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 21:48:21,304.304 INFO    ] ================================================
[2026-06-12 21:48:21,320.320 INFO    ] Launching Daemon at Fri Jun 12 21:48:21 IST 2026
[2026-06-12 21:48:21,332.332 INFO    ] ================================================
[2026-06-12 21:48:21,689.689 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 21:48:21
[2026-06-12 21:48:22,002.002 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 21:48:22,134.134 INFO    ] Initializing speech engine...
[2026-06-12 21:48:22,147.147 INFO    ] 2026-06-12 21:48:22
[2026-06-12 21:48:22,355.355 INFO    ] 2026-06-12 21:48:22
[2026-06-12 21:48:22,384.384 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 21:48:22,574.574 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 21:48:22,577.577 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 21:48:22,728.728 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 21:48:22,782.782 INFO    ] time= 12/06/2026 21:48:22
[2026-06-12 21:48:22,805.805 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 21:48:22,829.829 INFO    ] Checking for existing commands in stream...
[2026-06-12 21:48:22,948.948 INFO    ] No existing commands found in stream
[2026-06-12 21:48:27,958.958 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 21:48:27,961.961 INFO    ] Waiting 0.75 seconds before fallback handling...
[2026-06-12 21:48:29,096.096 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 21:48:29,098.098 INFO    ] Checking for system updates...
[2026-06-12 21:48:29,118.118 INFO    ] 200
[2026-06-12 21:48:29,120.120 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:48:29,150.150 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 21:48:29,152.152 INFO    ] No update needed
[2026-06-12 21:48:29,153.153 INFO    ] Checking for camera pi updates...
[2026-06-12 21:48:29,173.173 INFO    ] 200
[2026-06-12 21:48:29,174.174 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:48:29,199.199 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 21:48:29,338.338 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 21:48:29,339.339 INFO    ] No camera update needed
[2026-06-12 21:48:29,340.340 INFO    ] Script finished. Safe exiting...
[2026-06-12 21:48:29,342.342 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 21:48:29,345.345 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 21:48:29,347.347 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 21:48:31,388.388 INFO    ] ================================================
[2026-06-12 21:48:31,405.405 INFO    ] Launching Daemon at Fri Jun 12 21:48:31 IST 2026
[2026-06-12 21:48:31,417.417 INFO    ] ================================================
[2026-06-12 21:48:31,768.768 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 21:48:31
[2026-06-12 21:48:32,110.110 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 21:48:32,252.252 INFO    ] Initializing speech engine...
[2026-06-12 21:48:32,256.256 INFO    ] 2026-06-12 21:48:32
[2026-06-12 21:48:32,475.475 INFO    ] 2026-06-12 21:48:32
[2026-06-12 21:48:32,503.503 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 21:48:32,621.621 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 21:48:32,622.622 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 21:48:32,727.727 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 21:48:32,728.728 INFO    ] time= 12/06/2026 21:48:32
[2026-06-12 21:48:32,730.730 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 21:48:32,777.777 INFO    ] Checking for existing commands in stream...
[2026-06-12 21:48:32,895.895 INFO    ] No existing commands found in stream
[2026-06-12 21:48:37,915.915 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 21:48:37,918.918 INFO    ] Waiting 0.36 seconds before fallback handling...
[2026-06-12 21:48:38,664.664 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 21:48:38,666.666 INFO    ] Checking for system updates...
[2026-06-12 21:48:38,686.686 INFO    ] 200
[2026-06-12 21:48:38,687.687 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:48:38,717.717 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 21:48:38,719.719 INFO    ] No update needed
[2026-06-12 21:48:38,720.720 INFO    ] Checking for camera pi updates...
[2026-06-12 21:48:38,739.739 INFO    ] 200
[2026-06-12 21:48:38,741.741 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:48:38,765.765 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 21:48:38,810.810 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 21:48:38,811.811 INFO    ] No camera update needed
[2026-06-12 21:48:38,813.813 INFO    ] Script finished. Safe exiting...
[2026-06-12 21:48:38,814.814 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 21:48:38,817.817 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 21:48:38,820.820 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 21:48:40,858.858 INFO    ] ================================================
[2026-06-12 21:48:40,873.873 INFO    ] Launching Daemon at Fri Jun 12 21:48:40 IST 2026
[2026-06-12 21:48:40,885.885 INFO    ] ================================================
[2026-06-12 21:48:41,210.210 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 21:48:41
[2026-06-12 21:48:41,520.520 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 21:48:41,652.652 INFO    ] Initializing speech engine...
[2026-06-12 21:48:41,657.657 INFO    ] 2026-06-12 21:48:41
[2026-06-12 21:48:41,886.886 INFO    ] 2026-06-12 21:48:41
[2026-06-12 21:48:41,917.917 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 21:48:42,114.114 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 21:48:42,118.118 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 21:48:42,257.257 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 21:48:42,313.313 INFO    ] time= 12/06/2026 21:48:42
[2026-06-12 21:48:42,353.353 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 21:48:42,364.364 INFO    ] Checking for existing commands in stream...
[2026-06-12 21:48:42,442.442 INFO    ] No existing commands found in stream
[2026-06-12 21:48:47,450.450 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 21:48:47,452.452 INFO    ] Waiting 3.03 seconds before fallback handling...
[2026-06-12 21:48:50,843.843 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 21:48:50,844.844 INFO    ] Checking for system updates...
[2026-06-12 21:48:50,867.867 INFO    ] 200
[2026-06-12 21:48:50,868.868 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:48:50,901.901 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 21:48:50,902.902 INFO    ] No update needed
[2026-06-12 21:48:50,904.904 INFO    ] Checking for camera pi updates...
[2026-06-12 21:48:50,923.923 INFO    ] 200
[2026-06-12 21:48:50,925.925 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:48:50,948.948 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 21:48:50,993.993 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 21:48:50,994.994 INFO    ] No camera update needed
[2026-06-12 21:48:50,996.996 INFO    ] Script finished. Safe exiting...
[2026-06-12 21:48:50,997.997 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 21:48:51,000.000 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 21:48:51,003.003 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 21:48:53,042.042 INFO    ] ================================================
[2026-06-12 21:48:53,058.058 INFO    ] Launching Daemon at Fri Jun 12 21:48:53 IST 2026
[2026-06-12 21:48:53,068.068 INFO    ] ================================================
[2026-06-12 21:48:53,392.392 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 21:48:53
[2026-06-12 21:48:53,705.705 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 21:48:53,840.840 INFO    ] Initializing speech engine...
[2026-06-12 21:48:53,844.844 INFO    ] 2026-06-12 21:48:53
[2026-06-12 21:48:54,075.075 INFO    ] 2026-06-12 21:48:54
[2026-06-12 21:48:54,106.106 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 21:48:54,306.306 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 21:48:54,309.309 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 21:48:54,450.450 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 21:48:54,496.496 INFO    ] time= 12/06/2026 21:48:54
[2026-06-12 21:48:54,535.535 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 21:48:54,558.558 INFO    ] Checking for existing commands in stream...
[2026-06-12 21:48:54,635.635 INFO    ] No existing commands found in stream
[2026-06-12 21:48:59,645.645 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 21:48:59,648.648 INFO    ] Waiting 2.24 seconds before fallback handling...
[2026-06-12 21:49:02,219.219 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 21:49:02,221.221 INFO    ] Checking for system updates...
[2026-06-12 21:49:02,252.252 INFO    ] 200
[2026-06-12 21:49:02,254.254 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:49:02,301.301 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 21:49:02,303.303 INFO    ] No update needed
[2026-06-12 21:49:02,304.304 INFO    ] Checking for camera pi updates...
[2026-06-12 21:49:02,329.329 INFO    ] 200
[2026-06-12 21:49:02,331.331 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:49:02,365.365 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 21:49:02,404.404 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 21:49:02,405.405 INFO    ] No camera update needed
[2026-06-12 21:49:02,407.407 INFO    ] Script finished. Safe exiting...
[2026-06-12 21:49:02,408.408 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 21:49:02,411.411 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 21:49:02,414.414 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 21:49:04,452.452 INFO    ] ================================================
[2026-06-12 21:49:04,468.468 INFO    ] Launching Daemon at Fri Jun 12 21:49:04 IST 2026
[2026-06-12 21:49:04,479.479 INFO    ] ================================================
[2026-06-12 21:49:04,813.813 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 21:49:04
[2026-06-12 21:49:05,128.128 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 21:49:05,262.262 INFO    ] Initializing speech engine...
[2026-06-12 21:49:05,271.271 INFO    ] 2026-06-12 21:49:05
[2026-06-12 21:49:05,494.494 INFO    ] 2026-06-12 21:49:05
[2026-06-12 21:49:05,525.525 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 21:49:05,731.731 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 21:49:05,735.735 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 21:49:05,887.887 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 21:49:05,943.943 INFO    ] time= 12/06/2026 21:49:05
[2026-06-12 21:49:05,968.968 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 21:49:05,975.975 INFO    ] Checking for existing commands in stream...
[2026-06-12 21:49:06,045.045 INFO    ] No existing commands found in stream
[2026-06-12 21:49:11,054.054 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 21:49:11,057.057 INFO    ] Waiting 2.35 seconds before fallback handling...
[2026-06-12 21:49:13,774.774 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 21:49:13,775.775 INFO    ] Checking for system updates...
[2026-06-12 21:49:13,795.795 INFO    ] 200
[2026-06-12 21:49:13,797.797 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:49:13,826.826 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 21:49:13,828.828 INFO    ] No update needed
[2026-06-12 21:49:13,829.829 INFO    ] Checking for camera pi updates...
[2026-06-12 21:49:13,848.848 INFO    ] 200
[2026-06-12 21:49:13,850.850 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:49:13,876.876 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 21:49:13,921.921 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 21:49:13,922.922 INFO    ] No camera update needed
[2026-06-12 21:49:13,927.927 INFO    ] Script finished. Safe exiting...
[2026-06-12 21:49:13,929.929 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 21:49:13,932.932 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 21:49:13,935.935 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 21:49:15,972.972 INFO    ] ================================================
[2026-06-12 21:49:15,988.988 INFO    ] Launching Daemon at Fri Jun 12 21:49:15 IST 2026
[2026-06-12 21:49:16,000.000 INFO    ] ================================================
[2026-06-12 21:49:16,358.358 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 21:49:16
[2026-06-12 21:49:16,668.668 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 21:49:16,799.799 INFO    ] Initializing speech engine...
[2026-06-12 21:49:16,807.807 INFO    ] 2026-06-12 21:49:16
[2026-06-12 21:49:17,020.020 INFO    ] 2026-06-12 21:49:16
[2026-06-12 21:49:17,049.049 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 21:49:17,235.235 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 21:49:17,238.238 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 21:49:17,396.396 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 21:49:17,445.445 INFO    ] time= 12/06/2026 21:49:17
[2026-06-12 21:49:17,467.467 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 21:49:17,473.473 INFO    ] Checking for existing commands in stream...
[2026-06-12 21:49:17,542.542 INFO    ] No existing commands found in stream
[2026-06-12 21:49:22,556.556 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 21:49:22,559.559 INFO    ] Waiting 0.09 seconds before fallback handling...
[2026-06-12 21:49:23,002.002 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 21:49:23,004.004 INFO    ] Checking for system updates...
[2026-06-12 21:49:23,024.024 INFO    ] 200
[2026-06-12 21:49:23,025.025 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:49:23,055.055 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 21:49:23,056.056 INFO    ] No update needed
[2026-06-12 21:49:23,057.057 INFO    ] Checking for camera pi updates...
[2026-06-12 21:49:23,077.077 INFO    ] 200
[2026-06-12 21:49:23,078.078 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:49:23,101.101 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 21:49:23,146.146 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 21:49:23,147.147 INFO    ] No camera update needed
[2026-06-12 21:49:23,149.149 INFO    ] Script finished. Safe exiting...
[2026-06-12 21:49:23,150.150 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 21:49:23,153.153 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 21:49:23,156.156 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 21:49:25,194.194 INFO    ] ================================================
[2026-06-12 21:49:25,210.210 INFO    ] Launching Daemon at Fri Jun 12 21:49:25 IST 2026
[2026-06-12 21:49:25,221.221 INFO    ] ================================================
[2026-06-12 21:49:25,575.575 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 21:49:25
[2026-06-12 21:49:25,886.886 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 21:49:26,029.029 INFO    ] Initializing speech engine...
[2026-06-12 21:49:26,034.034 INFO    ] 2026-06-12 21:49:26
[2026-06-12 21:49:26,237.237 INFO    ] 2026-06-12 21:49:26
[2026-06-12 21:49:26,266.266 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 21:49:26,450.450 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 21:49:26,459.459 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 21:49:26,588.588 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 21:49:26,656.656 INFO    ] time= 12/06/2026 21:49:26
[2026-06-12 21:49:26,679.679 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 21:49:26,686.686 INFO    ] Checking for existing commands in stream...
[2026-06-12 21:49:26,752.752 INFO    ] No existing commands found in stream
[2026-06-12 21:49:31,761.761 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 21:49:31,764.764 INFO    ] Waiting 1.33 seconds before fallback handling...
[2026-06-12 21:49:33,461.461 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 21:49:33,462.462 INFO    ] Checking for system updates...
[2026-06-12 21:49:33,483.483 INFO    ] 200
[2026-06-12 21:49:33,484.484 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:49:33,514.514 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 21:49:33,516.516 INFO    ] No update needed
[2026-06-12 21:49:33,517.517 INFO    ] Checking for camera pi updates...
[2026-06-12 21:49:33,537.537 INFO    ] 200
[2026-06-12 21:49:33,538.538 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:49:33,562.562 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 21:49:33,607.607 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 21:49:33,608.608 INFO    ] No camera update needed
[2026-06-12 21:49:33,610.610 INFO    ] Script finished. Safe exiting...
[2026-06-12 21:49:33,611.611 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 21:49:33,615.615 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 21:49:33,617.617 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 21:49:35,656.656 INFO    ] ================================================
[2026-06-12 21:49:35,673.673 INFO    ] Launching Daemon at Fri Jun 12 21:49:35 IST 2026
[2026-06-12 21:49:35,684.684 INFO    ] ================================================
[2026-06-12 21:49:36,018.018 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 21:49:36
[2026-06-12 21:49:36,329.329 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 21:49:36,470.470 INFO    ] Initializing speech engine...
[2026-06-12 21:49:36,475.475 INFO    ] 2026-06-12 21:49:36
[2026-06-12 21:49:36,679.679 INFO    ] 2026-06-12 21:49:36
[2026-06-12 21:49:36,708.708 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 21:49:36,890.890 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 21:49:36,894.894 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 21:49:37,028.028 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 21:49:37,092.092 INFO    ] time= 12/06/2026 21:49:37
[2026-06-12 21:49:37,120.120 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 21:49:37,122.122 INFO    ] Checking for existing commands in stream...
[2026-06-12 21:49:37,193.193 INFO    ] No existing commands found in stream
[2026-06-12 21:49:42,207.207 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 21:49:42,214.214 INFO    ] Waiting 3.85 seconds before fallback handling...
[2026-06-12 21:49:46,443.443 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 21:49:46,445.445 INFO    ] Checking for system updates...
[2026-06-12 21:49:46,465.465 INFO    ] 200
[2026-06-12 21:49:46,466.466 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:49:46,496.496 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 21:49:46,497.497 INFO    ] No update needed
[2026-06-12 21:49:46,498.498 INFO    ] Checking for camera pi updates...
[2026-06-12 21:49:46,520.520 INFO    ] 200
[2026-06-12 21:49:46,521.521 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:49:46,547.547 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 21:49:46,593.593 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 21:49:46,595.595 INFO    ] No camera update needed
[2026-06-12 21:49:46,596.596 INFO    ] Script finished. Safe exiting...
[2026-06-12 21:49:46,597.597 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 21:49:46,600.600 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 21:49:46,603.603 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 21:49:48,643.643 INFO    ] ================================================
[2026-06-12 21:49:48,659.659 INFO    ] Launching Daemon at Fri Jun 12 21:49:48 IST 2026
[2026-06-12 21:49:48,669.669 INFO    ] ================================================
[2026-06-12 21:49:49,029.029 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 21:49:49
[2026-06-12 21:49:49,343.343 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 21:49:49,474.474 INFO    ] Initializing speech engine...
[2026-06-12 21:49:49,478.478 INFO    ] 2026-06-12 21:49:49
[2026-06-12 21:49:49,693.693 INFO    ] 2026-06-12 21:49:49
[2026-06-12 21:49:49,722.722 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 21:49:49,907.907 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 21:49:49,916.916 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 21:49:50,043.043 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 21:49:50,095.095 INFO    ] time= 12/06/2026 21:49:50
[2026-06-12 21:49:50,135.135 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 21:49:50,141.141 INFO    ] Checking for existing commands in stream...
[2026-06-12 21:49:50,212.212 INFO    ] No existing commands found in stream
[2026-06-12 21:49:55,222.222 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 21:49:55,225.225 INFO    ] Waiting 2.45 seconds before fallback handling...
[2026-06-12 21:49:58,055.055 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 21:49:58,056.056 INFO    ] Checking for system updates...
[2026-06-12 21:49:58,078.078 INFO    ] 200
[2026-06-12 21:49:58,080.080 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:49:58,110.110 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 21:49:58,111.111 INFO    ] No update needed
[2026-06-12 21:49:58,113.113 INFO    ] Checking for camera pi updates...
[2026-06-12 21:49:58,132.132 INFO    ] 200
[2026-06-12 21:49:58,133.133 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:49:58,156.156 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 21:49:58,209.209 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 21:49:58,210.210 INFO    ] No camera update needed
[2026-06-12 21:49:58,212.212 INFO    ] Script finished. Safe exiting...
[2026-06-12 21:49:58,213.213 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 21:49:58,216.216 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 21:49:58,219.219 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 21:50:00,257.257 INFO    ] ================================================
[2026-06-12 21:50:00,272.272 INFO    ] Launching Daemon at Fri Jun 12 21:50:00 IST 2026
[2026-06-12 21:50:00,283.283 INFO    ] ================================================
[2026-06-12 21:50:00,625.625 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 21:50:00
[2026-06-12 21:50:00,939.939 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 21:50:01,070.070 INFO    ] Initializing speech engine...
[2026-06-12 21:50:01,078.078 INFO    ] 2026-06-12 21:50:01
[2026-06-12 21:50:01,290.290 INFO    ] 2026-06-12 21:50:01
[2026-06-12 21:50:01,320.320 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 21:50:01,504.504 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 21:50:01,513.513 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 21:50:01,644.644 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 21:50:01,711.711 INFO    ] time= 12/06/2026 21:50:01
[2026-06-12 21:50:01,745.745 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 21:50:01,754.754 INFO    ] Checking for existing commands in stream...
[2026-06-12 21:50:01,865.865 INFO    ] No existing commands found in stream
[2026-06-12 21:50:06,880.880 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 21:50:06,883.883 INFO    ] Waiting 0.11 seconds before fallback handling...
[2026-06-12 21:50:07,809.809 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 21:50:07,811.811 INFO    ] Checking for system updates...
[2026-06-12 21:50:07,832.832 INFO    ] 200
[2026-06-12 21:50:07,833.833 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:50:07,863.863 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 21:50:07,864.864 INFO    ] No update needed
[2026-06-12 21:50:07,865.865 INFO    ] Checking for camera pi updates...
[2026-06-12 21:50:07,886.886 INFO    ] 200
[2026-06-12 21:50:07,888.888 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:50:07,926.926 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 21:50:07,982.982 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 21:50:07,984.984 INFO    ] No camera update needed
[2026-06-12 21:50:07,986.986 INFO    ] Script finished. Safe exiting...
[2026-06-12 21:50:07,989.989 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 21:50:07,994.994 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 21:50:07,999.999 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 21:50:10,040.040 INFO    ] ================================================
[2026-06-12 21:50:10,055.055 INFO    ] Launching Daemon at Fri Jun 12 21:50:10 IST 2026
[2026-06-12 21:50:10,066.066 INFO    ] ================================================
[2026-06-12 21:50:10,404.404 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 21:50:10
[2026-06-12 21:50:10,717.717 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 21:50:10,848.848 INFO    ] Initializing speech engine...
[2026-06-12 21:50:10,851.851 INFO    ] 2026-06-12 21:50:10
[2026-06-12 21:50:11,071.071 INFO    ] 2026-06-12 21:50:11
[2026-06-12 21:50:11,099.099 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 21:50:11,286.286 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 21:50:11,289.289 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 21:50:11,424.424 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 21:50:11,476.476 INFO    ] time= 12/06/2026 21:50:11
[2026-06-12 21:50:11,516.516 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 21:50:11,522.522 INFO    ] Checking for existing commands in stream...
[2026-06-12 21:50:11,594.594 INFO    ] No existing commands found in stream
[2026-06-12 21:50:16,603.603 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 21:50:16,606.606 INFO    ] Waiting 3.66 seconds before fallback handling...
[2026-06-12 21:50:20,625.625 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 21:50:20,626.626 INFO    ] Checking for system updates...
[2026-06-12 21:50:20,646.646 INFO    ] 200
[2026-06-12 21:50:20,648.648 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:50:20,680.680 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 21:50:20,681.681 INFO    ] No update needed
[2026-06-12 21:50:20,683.683 INFO    ] Checking for camera pi updates...
[2026-06-12 21:50:20,703.703 INFO    ] 200
[2026-06-12 21:50:20,704.704 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:50:20,727.727 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 21:50:20,771.771 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 21:50:20,773.773 INFO    ] No camera update needed
[2026-06-12 21:50:20,774.774 INFO    ] Script finished. Safe exiting...
[2026-06-12 21:50:20,775.775 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 21:50:20,778.778 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 21:50:20,781.781 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 21:50:22,821.821 INFO    ] ================================================
[2026-06-12 21:50:22,836.836 INFO    ] Launching Daemon at Fri Jun 12 21:50:22 IST 2026
[2026-06-12 21:50:22,847.847 INFO    ] ================================================
[2026-06-12 21:50:23,203.203 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 21:50:23
[2026-06-12 21:50:23,514.514 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 21:50:23,645.645 INFO    ] Initializing speech engine...
[2026-06-12 21:50:23,653.653 INFO    ] 2026-06-12 21:50:23
[2026-06-12 21:50:23,864.864 INFO    ] 2026-06-12 21:50:23
[2026-06-12 21:50:23,893.893 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 21:50:24,075.075 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 21:50:24,079.079 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 21:50:24,215.215 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 21:50:24,280.280 INFO    ] time= 12/06/2026 21:50:24
[2026-06-12 21:50:24,307.307 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 21:50:24,308.308 INFO    ] Checking for existing commands in stream...
[2026-06-12 21:50:24,378.378 INFO    ] No existing commands found in stream
[2026-06-12 21:50:29,388.388 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 21:50:29,391.391 INFO    ] Waiting 3.75 seconds before fallback handling...
[2026-06-12 21:50:33,484.484 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 21:50:33,485.485 INFO    ] Checking for system updates...
[2026-06-12 21:50:33,505.505 INFO    ] 200
[2026-06-12 21:50:33,507.507 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:50:33,539.539 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 21:50:33,541.541 INFO    ] No update needed
[2026-06-12 21:50:33,542.542 INFO    ] Checking for camera pi updates...
[2026-06-12 21:50:33,561.561 INFO    ] 200
[2026-06-12 21:50:33,563.563 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:50:33,585.585 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 21:50:33,639.639 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 21:50:33,640.640 INFO    ] No camera update needed
[2026-06-12 21:50:33,642.642 INFO    ] Script finished. Safe exiting...
[2026-06-12 21:50:33,643.643 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 21:50:33,646.646 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 21:50:33,649.649 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 21:50:35,687.687 INFO    ] ================================================
[2026-06-12 21:50:35,702.702 INFO    ] Launching Daemon at Fri Jun 12 21:50:35 IST 2026
[2026-06-12 21:50:35,713.713 INFO    ] ================================================
[2026-06-12 21:50:36,072.072 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 21:50:36
[2026-06-12 21:50:36,415.415 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 21:50:36,567.567 INFO    ] Initializing speech engine...
[2026-06-12 21:50:36,572.572 INFO    ] 2026-06-12 21:50:36
[2026-06-12 21:50:36,783.783 INFO    ] 2026-06-12 21:50:36
[2026-06-12 21:50:36,812.812 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 21:50:36,972.972 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 21:50:37,002.002 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 21:50:37,162.162 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 21:50:37,212.212 INFO    ] time= 12/06/2026 21:50:37
[2026-06-12 21:50:37,233.233 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 21:50:37,240.240 INFO    ] Checking for existing commands in stream...
[2026-06-12 21:50:37,307.307 INFO    ] No existing commands found in stream
[2026-06-12 21:50:42,322.322 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 21:50:42,325.325 INFO    ] Waiting 2.70 seconds before fallback handling...
[2026-06-12 21:50:45,436.436 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 21:50:45,437.437 INFO    ] Checking for system updates...
[2026-06-12 21:50:45,458.458 INFO    ] 200
[2026-06-12 21:50:45,460.460 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:50:45,490.490 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 21:50:45,491.491 INFO    ] No update needed
[2026-06-12 21:50:45,493.493 INFO    ] Checking for camera pi updates...
[2026-06-12 21:50:45,515.515 INFO    ] 200
[2026-06-12 21:50:45,517.517 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:50:45,541.541 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 21:50:45,582.582 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 21:50:45,583.583 INFO    ] No camera update needed
[2026-06-12 21:50:45,585.585 INFO    ] Script finished. Safe exiting...
[2026-06-12 21:50:45,586.586 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 21:50:45,589.589 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 21:50:45,592.592 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 21:50:47,629.629 INFO    ] ================================================
[2026-06-12 21:50:47,645.645 INFO    ] Launching Daemon at Fri Jun 12 21:50:47 IST 2026
[2026-06-12 21:50:47,657.657 INFO    ] ================================================
[2026-06-12 21:50:47,989.989 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 21:50:47
[2026-06-12 21:50:48,302.302 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 21:50:48,441.441 INFO    ] Initializing speech engine...
[2026-06-12 21:50:48,451.451 INFO    ] 2026-06-12 21:50:48
[2026-06-12 21:50:48,656.656 INFO    ] 2026-06-12 21:50:48
[2026-06-12 21:50:48,686.686 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 21:50:48,874.874 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 21:50:48,882.882 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 21:50:49,022.022 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 21:50:49,085.085 INFO    ] time= 12/06/2026 21:50:49
[2026-06-12 21:50:49,109.109 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 21:50:49,115.115 INFO    ] Checking for existing commands in stream...
[2026-06-12 21:50:49,181.181 INFO    ] No existing commands found in stream
[2026-06-12 21:50:54,192.192 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 21:50:54,195.195 INFO    ] Waiting 2.33 seconds before fallback handling...
[2026-06-12 21:50:56,863.863 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 21:50:56,865.865 INFO    ] Checking for system updates...
[2026-06-12 21:50:56,886.886 INFO    ] 200
[2026-06-12 21:50:56,887.887 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:50:56,917.917 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 21:50:56,919.919 INFO    ] No update needed
[2026-06-12 21:50:56,920.920 INFO    ] Checking for camera pi updates...
[2026-06-12 21:50:56,943.943 INFO    ] 200
[2026-06-12 21:50:56,944.944 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:50:56,969.969 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 21:50:57,011.011 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 21:50:57,012.012 INFO    ] No camera update needed
[2026-06-12 21:50:57,014.014 INFO    ] Script finished. Safe exiting...
[2026-06-12 21:50:57,015.015 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 21:50:57,018.018 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 21:50:57,021.021 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 21:50:59,059.059 INFO    ] ================================================
[2026-06-12 21:50:59,075.075 INFO    ] Launching Daemon at Fri Jun 12 21:50:59 IST 2026
[2026-06-12 21:50:59,086.086 INFO    ] ================================================
[2026-06-12 21:50:59,421.421 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 21:50:59
[2026-06-12 21:50:59,737.737 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 21:50:59,882.882 INFO    ] Initializing speech engine...
[2026-06-12 21:50:59,887.887 INFO    ] 2026-06-12 21:50:59
[2026-06-12 21:51:00,090.090 INFO    ] 2026-06-12 21:51:00
[2026-06-12 21:51:00,118.118 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 21:51:00,303.303 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 21:51:00,313.313 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 21:51:00,447.447 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 21:51:00,509.509 INFO    ] time= 12/06/2026 21:51:00
[2026-06-12 21:51:00,533.533 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 21:51:00,539.539 INFO    ] Checking for existing commands in stream...
[2026-06-12 21:51:00,604.604 INFO    ] No existing commands found in stream
[2026-06-12 21:51:05,612.612 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 21:51:05,615.615 INFO    ] Waiting 0.64 seconds before fallback handling...
[2026-06-12 21:51:06,622.622 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 21:51:06,623.623 INFO    ] Checking for system updates...
[2026-06-12 21:51:06,644.644 INFO    ] 200
[2026-06-12 21:51:06,646.646 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:51:06,676.676 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 21:51:06,677.677 INFO    ] No update needed
[2026-06-12 21:51:06,679.679 INFO    ] Checking for camera pi updates...
[2026-06-12 21:51:06,698.698 INFO    ] 200
[2026-06-12 21:51:06,699.699 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:51:06,722.722 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 21:51:06,769.769 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 21:51:06,771.771 INFO    ] No camera update needed
[2026-06-12 21:51:06,772.772 INFO    ] Script finished. Safe exiting...
[2026-06-12 21:51:06,773.773 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 21:51:06,776.776 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 21:51:06,779.779 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 21:51:08,817.817 INFO    ] ================================================
[2026-06-12 21:51:08,833.833 INFO    ] Launching Daemon at Fri Jun 12 21:51:08 IST 2026
[2026-06-12 21:51:08,845.845 INFO    ] ================================================
[2026-06-12 21:51:09,181.181 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 21:51:09
[2026-06-12 21:51:09,493.493 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 21:51:09,637.637 INFO    ] Initializing speech engine...
[2026-06-12 21:51:09,643.643 INFO    ] 2026-06-12 21:51:09
[2026-06-12 21:51:09,852.852 INFO    ] 2026-06-12 21:51:09
[2026-06-12 21:51:09,881.881 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 21:51:10,067.067 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 21:51:10,072.072 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 21:51:10,206.206 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 21:51:10,273.273 INFO    ] time= 12/06/2026 21:51:10
[2026-06-12 21:51:10,297.297 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 21:51:10,304.304 INFO    ] Checking for existing commands in stream...
[2026-06-12 21:51:10,370.370 INFO    ] No existing commands found in stream
[2026-06-12 21:51:15,379.379 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 21:51:15,382.382 INFO    ] Waiting 0.47 seconds before fallback handling...
[2026-06-12 21:51:16,232.232 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 21:51:16,234.234 INFO    ] Checking for system updates...
[2026-06-12 21:51:16,254.254 INFO    ] 200
[2026-06-12 21:51:16,256.256 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:51:16,286.286 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 21:51:16,288.288 INFO    ] No update needed
[2026-06-12 21:51:16,289.289 INFO    ] Checking for camera pi updates...
[2026-06-12 21:51:16,310.310 INFO    ] 200
[2026-06-12 21:51:16,311.311 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:51:16,336.336 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 21:51:16,389.389 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 21:51:16,391.391 INFO    ] No camera update needed
[2026-06-12 21:51:16,392.392 INFO    ] Script finished. Safe exiting...
[2026-06-12 21:51:16,394.394 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 21:51:16,396.396 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 21:51:16,399.399 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 21:51:18,439.439 INFO    ] ================================================
[2026-06-12 21:51:18,455.455 INFO    ] Launching Daemon at Fri Jun 12 21:51:18 IST 2026
[2026-06-12 21:51:18,467.467 INFO    ] ================================================
[2026-06-12 21:51:18,802.802 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 21:51:18
[2026-06-12 21:51:19,113.113 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 21:51:19,255.255 INFO    ] Initializing speech engine...
[2026-06-12 21:51:19,260.260 INFO    ] 2026-06-12 21:51:19
[2026-06-12 21:51:19,462.462 INFO    ] 2026-06-12 21:51:19
[2026-06-12 21:51:19,491.491 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 21:51:19,674.674 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 21:51:19,682.682 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 21:51:19,882.882 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 21:51:19,909.909 INFO    ] time= 12/06/2026 21:51:19
[2026-06-12 21:51:19,915.915 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 21:51:19,917.917 INFO    ] Checking for existing commands in stream...
[2026-06-12 21:51:20,008.008 INFO    ] No existing commands found in stream
[2026-06-12 21:51:25,016.016 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 21:51:25,019.019 INFO    ] Waiting 3.76 seconds before fallback handling...
[2026-06-12 21:51:29,194.194 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 21:51:29,195.195 INFO    ] Checking for system updates...
[2026-06-12 21:51:29,217.217 INFO    ] 200
[2026-06-12 21:51:29,219.219 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:51:29,248.248 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 21:51:29,250.250 INFO    ] No update needed
[2026-06-12 21:51:29,251.251 INFO    ] Checking for camera pi updates...
[2026-06-12 21:51:29,271.271 INFO    ] 200
[2026-06-12 21:51:29,272.272 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:51:29,295.295 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 21:51:29,340.340 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 21:51:29,341.341 INFO    ] No camera update needed
[2026-06-12 21:51:29,343.343 INFO    ] Script finished. Safe exiting...
[2026-06-12 21:51:29,344.344 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 21:51:29,347.347 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 21:51:29,350.350 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 21:51:31,392.392 INFO    ] ================================================
[2026-06-12 21:51:31,408.408 INFO    ] Launching Daemon at Fri Jun 12 21:51:31 IST 2026
[2026-06-12 21:51:31,420.420 INFO    ] ================================================
[2026-06-12 21:51:31,801.801 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 21:51:31
[2026-06-12 21:51:32,144.144 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 21:51:32,285.285 INFO    ] Initializing speech engine...
[2026-06-12 21:51:32,293.293 INFO    ] 2026-06-12 21:51:32
[2026-06-12 21:51:32,510.510 INFO    ] 2026-06-12 21:51:32
[2026-06-12 21:51:32,538.538 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 21:51:32,721.721 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 21:51:32,730.730 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 21:51:32,880.880 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 21:51:32,938.938 INFO    ] time= 12/06/2026 21:51:32
[2026-06-12 21:51:32,949.949 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 21:51:32,955.955 INFO    ] Checking for existing commands in stream...
[2026-06-12 21:51:33,021.021 INFO    ] No existing commands found in stream
[2026-06-12 21:51:38,030.030 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 21:51:38,033.033 INFO    ] Waiting 3.53 seconds before fallback handling...
[2026-06-12 21:51:41,941.941 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 21:51:41,942.942 INFO    ] Checking for system updates...
[2026-06-12 21:51:41,964.964 INFO    ] 200
[2026-06-12 21:51:41,966.966 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:51:42,006.006 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 21:51:42,007.007 INFO    ] No update needed
[2026-06-12 21:51:42,009.009 INFO    ] Checking for camera pi updates...
[2026-06-12 21:51:42,034.034 INFO    ] 200
[2026-06-12 21:51:42,035.035 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:51:42,060.060 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 21:51:42,108.108 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 21:51:42,109.109 INFO    ] No camera update needed
[2026-06-12 21:51:42,111.111 INFO    ] Script finished. Safe exiting...
[2026-06-12 21:51:42,112.112 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 21:51:42,115.115 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 21:51:42,118.118 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 21:51:44,148.148 INFO    ] ================================================
[2026-06-12 21:51:44,159.159 INFO    ] Launching Daemon at Fri Jun 12 21:51:44 IST 2026
[2026-06-12 21:51:44,168.168 INFO    ] ================================================
[2026-06-12 21:51:44,471.471 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 21:51:44
[2026-06-12 21:51:44,831.831 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 21:51:44,962.962 INFO    ] Initializing speech engine...
[2026-06-12 21:51:44,969.969 INFO    ] 2026-06-12 21:51:44
[2026-06-12 21:51:45,183.183 INFO    ] 2026-06-12 21:51:45
[2026-06-12 21:51:45,212.212 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 21:51:45,336.336 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 21:51:45,399.399 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 21:51:45,531.531 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 21:51:45,597.597 INFO    ] time= 12/06/2026 21:51:45
[2026-06-12 21:51:45,630.630 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 21:51:45,636.636 INFO    ] Checking for existing commands in stream...
[2026-06-12 21:51:45,703.703 INFO    ] No existing commands found in stream
[2026-06-12 21:51:50,712.712 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 21:51:50,716.716 INFO    ] Waiting 2.02 seconds before fallback handling...
[2026-06-12 21:51:53,093.093 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 21:51:53,094.094 INFO    ] Checking for system updates...
[2026-06-12 21:51:53,116.116 INFO    ] 200
[2026-06-12 21:51:53,118.118 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:51:53,150.150 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 21:51:53,152.152 INFO    ] No update needed
[2026-06-12 21:51:53,153.153 INFO    ] Checking for camera pi updates...
[2026-06-12 21:51:53,172.172 INFO    ] 200
[2026-06-12 21:51:53,174.174 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:51:53,200.200 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 21:51:53,250.250 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 21:51:53,251.251 INFO    ] No camera update needed
[2026-06-12 21:51:53,252.252 INFO    ] Script finished. Safe exiting...
[2026-06-12 21:51:53,254.254 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 21:51:53,257.257 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 21:51:53,259.259 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 21:51:55,298.298 INFO    ] ================================================
[2026-06-12 21:51:55,313.313 INFO    ] Launching Daemon at Fri Jun 12 21:51:55 IST 2026
[2026-06-12 21:51:55,324.324 INFO    ] ================================================
[2026-06-12 21:51:55,670.670 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 21:51:55
[2026-06-12 21:51:55,986.986 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 21:51:56,119.119 INFO    ] Initializing speech engine...
[2026-06-12 21:51:56,133.133 INFO    ] 2026-06-12 21:51:56
[2026-06-12 21:51:56,338.338 INFO    ] 2026-06-12 21:51:56
[2026-06-12 21:51:56,366.366 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 21:51:56,549.549 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 21:51:56,558.558 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 21:51:56,683.683 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 21:51:56,750.750 INFO    ] time= 12/06/2026 21:51:56
[2026-06-12 21:51:56,776.776 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 21:51:56,778.778 INFO    ] Checking for existing commands in stream...
[2026-06-12 21:51:56,873.873 INFO    ] No existing commands found in stream
[2026-06-12 21:52:01,881.881 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 21:52:01,883.883 INFO    ] Waiting 1.08 seconds before fallback handling...
[2026-06-12 21:52:03,304.304 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 21:52:03,306.306 INFO    ] Checking for system updates...
[2026-06-12 21:52:03,328.328 INFO    ] 200
[2026-06-12 21:52:03,330.330 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:52:03,363.363 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 21:52:03,365.365 INFO    ] No update needed
[2026-06-12 21:52:03,366.366 INFO    ] Checking for camera pi updates...
[2026-06-12 21:52:03,388.388 INFO    ] 200
[2026-06-12 21:52:03,389.389 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:52:03,429.429 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 21:52:03,472.472 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 21:52:03,473.473 INFO    ] No camera update needed
[2026-06-12 21:52:03,475.475 INFO    ] Script finished. Safe exiting...
[2026-06-12 21:52:03,476.476 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 21:52:03,480.480 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 21:52:03,483.483 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 21:52:05,515.515 INFO    ] ================================================
[2026-06-12 21:52:05,531.531 INFO    ] Launching Daemon at Fri Jun 12 21:52:05 IST 2026
[2026-06-12 21:52:05,542.542 INFO    ] ================================================
[2026-06-12 21:52:05,894.894 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 21:52:05
[2026-06-12 21:52:06,235.235 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 21:52:06,382.382 INFO    ] Initializing speech engine...
[2026-06-12 21:52:06,390.390 INFO    ] 2026-06-12 21:52:06
[2026-06-12 21:52:06,602.602 INFO    ] 2026-06-12 21:52:06
[2026-06-12 21:52:06,631.631 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 21:52:06,816.816 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 21:52:06,826.826 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 21:52:06,956.956 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 21:52:07,010.010 INFO    ] time= 12/06/2026 21:52:06
[2026-06-12 21:52:07,048.048 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 21:52:07,055.055 INFO    ] Checking for existing commands in stream...
[2026-06-12 21:52:07,146.146 INFO    ] No existing commands found in stream
[2026-06-12 21:52:12,155.155 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 21:52:12,158.158 INFO    ] Waiting 1.76 seconds before fallback handling...
[2026-06-12 21:52:14,311.311 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 21:52:14,313.313 INFO    ] Checking for system updates...
[2026-06-12 21:52:14,334.334 INFO    ] 200
[2026-06-12 21:52:14,335.335 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:52:14,368.368 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 21:52:14,370.370 INFO    ] No update needed
[2026-06-12 21:52:14,372.372 INFO    ] Checking for camera pi updates...
[2026-06-12 21:52:14,393.393 INFO    ] 200
[2026-06-12 21:52:14,394.394 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:52:14,418.418 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 21:52:14,464.464 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 21:52:14,465.465 INFO    ] No camera update needed
[2026-06-12 21:52:14,467.467 INFO    ] Script finished. Safe exiting...
[2026-06-12 21:52:14,468.468 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 21:52:14,472.472 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 21:52:14,475.475 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 21:52:16,513.513 INFO    ] ================================================
[2026-06-12 21:52:16,529.529 INFO    ] Launching Daemon at Fri Jun 12 21:52:16 IST 2026
[2026-06-12 21:52:16,540.540 INFO    ] ================================================
[2026-06-12 21:52:16,904.904 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 21:52:16
[2026-06-12 21:52:17,217.217 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 21:52:17,351.351 INFO    ] Initializing speech engine...
[2026-06-12 21:52:17,361.361 INFO    ] 2026-06-12 21:52:17
[2026-06-12 21:52:17,587.587 INFO    ] 2026-06-12 21:52:17
[2026-06-12 21:52:17,618.618 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 21:52:17,813.813 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 21:52:17,825.825 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 21:52:17,966.966 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 21:52:18,019.019 INFO    ] time= 12/06/2026 21:52:17
[2026-06-12 21:52:18,072.072 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 21:52:18,078.078 INFO    ] Checking for existing commands in stream...
[2026-06-12 21:52:18,182.182 INFO    ] No existing commands found in stream
[2026-06-12 21:52:23,191.191 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 21:52:23,195.195 INFO    ] Waiting 2.57 seconds before fallback handling...
[2026-06-12 21:52:26,144.144 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 21:52:26,145.145 INFO    ] Checking for system updates...
[2026-06-12 21:52:26,165.165 INFO    ] 200
[2026-06-12 21:52:26,167.167 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:52:26,199.199 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 21:52:26,201.201 INFO    ] No update needed
[2026-06-12 21:52:26,202.202 INFO    ] Checking for camera pi updates...
[2026-06-12 21:52:26,221.221 INFO    ] 200
[2026-06-12 21:52:26,223.223 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:52:26,246.246 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 21:52:26,294.294 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 21:52:26,295.295 INFO    ] No camera update needed
[2026-06-12 21:52:26,296.296 INFO    ] Script finished. Safe exiting...
[2026-06-12 21:52:26,297.297 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 21:52:26,301.301 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 21:52:26,303.303 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 21:52:28,343.343 INFO    ] ================================================
[2026-06-12 21:52:28,360.360 INFO    ] Launching Daemon at Fri Jun 12 21:52:28 IST 2026
[2026-06-12 21:52:28,371.371 INFO    ] ================================================
[2026-06-12 21:52:28,741.741 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 21:52:28
[2026-06-12 21:52:29,055.055 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 21:52:29,189.189 INFO    ] Initializing speech engine...
[2026-06-12 21:52:29,201.201 INFO    ] 2026-06-12 21:52:29
[2026-06-12 21:52:29,411.411 INFO    ] 2026-06-12 21:52:29
[2026-06-12 21:52:29,440.440 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 21:52:29,625.625 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 21:52:29,635.635 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 21:52:29,765.765 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 21:52:29,824.824 INFO    ] time= 12/06/2026 21:52:29
[2026-06-12 21:52:29,858.858 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 21:52:29,864.864 INFO    ] Checking for existing commands in stream...
[2026-06-12 21:52:29,932.932 INFO    ] No existing commands found in stream
[2026-06-12 21:52:34,940.940 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 21:52:34,941.941 INFO    ] Waiting 0.36 seconds before fallback handling...
[2026-06-12 21:52:35,661.661 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 21:52:35,662.662 INFO    ] Checking for system updates...
[2026-06-12 21:52:35,683.683 INFO    ] 200
[2026-06-12 21:52:35,684.684 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:52:35,714.714 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 21:52:35,716.716 INFO    ] No update needed
[2026-06-12 21:52:35,717.717 INFO    ] Checking for camera pi updates...
[2026-06-12 21:52:35,737.737 INFO    ] 200
[2026-06-12 21:52:35,739.739 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:52:35,762.762 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 21:52:35,905.905 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 21:52:35,907.907 INFO    ] No camera update needed
[2026-06-12 21:52:35,908.908 INFO    ] Script finished. Safe exiting...
[2026-06-12 21:52:35,909.909 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 21:52:35,913.913 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 21:52:35,915.915 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 21:52:37,954.954 INFO    ] ================================================
[2026-06-12 21:52:37,970.970 INFO    ] Launching Daemon at Fri Jun 12 21:52:37 IST 2026
[2026-06-12 21:52:37,981.981 INFO    ] ================================================
[2026-06-12 21:52:38,340.340 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 21:52:38
[2026-06-12 21:52:38,653.653 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 21:52:38,786.786 INFO    ] Initializing speech engine...
[2026-06-12 21:52:38,791.791 INFO    ] 2026-06-12 21:52:38
[2026-06-12 21:52:39,013.013 INFO    ] 2026-06-12 21:52:38
[2026-06-12 21:52:39,054.054 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 21:52:39,254.254 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 21:52:39,258.258 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 21:52:39,403.403 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 21:52:39,460.460 INFO    ] time= 12/06/2026 21:52:39
[2026-06-12 21:52:39,496.496 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 21:52:39,508.508 INFO    ] Checking for existing commands in stream...
[2026-06-12 21:52:39,585.585 INFO    ] No existing commands found in stream
[2026-06-12 21:52:44,619.619 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 21:52:44,622.622 INFO    ] Waiting 3.55 seconds before fallback handling...
[2026-06-12 21:52:48,533.533 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 21:52:48,535.535 INFO    ] Checking for system updates...
[2026-06-12 21:52:48,555.555 INFO    ] 200
[2026-06-12 21:52:48,557.557 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:52:48,589.589 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 21:52:48,590.590 INFO    ] No update needed
[2026-06-12 21:52:48,592.592 INFO    ] Checking for camera pi updates...
[2026-06-12 21:52:48,618.618 INFO    ] 200
[2026-06-12 21:52:48,619.619 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:52:48,642.642 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 21:52:48,689.689 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 21:52:48,690.690 INFO    ] No camera update needed
[2026-06-12 21:52:48,691.691 INFO    ] Script finished. Safe exiting...
[2026-06-12 21:52:48,693.693 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 21:52:48,696.696 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 21:52:48,698.698 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 21:52:50,730.730 INFO    ] ================================================
[2026-06-12 21:52:50,739.739 INFO    ] Launching Daemon at Fri Jun 12 21:52:50 IST 2026
[2026-06-12 21:52:50,746.746 INFO    ] ================================================
[2026-06-12 21:52:51,092.092 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 21:52:51
[2026-06-12 21:52:51,454.454 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 21:52:51,617.617 INFO    ] Initializing speech engine...
[2026-06-12 21:52:51,627.627 INFO    ] 2026-06-12 21:52:51
[2026-06-12 21:52:51,876.876 INFO    ] 2026-06-12 21:52:51
[2026-06-12 21:52:51,910.910 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 21:52:52,121.121 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 21:52:52,124.124 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 21:52:52,274.274 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 21:52:52,331.331 INFO    ] time= 12/06/2026 21:52:52
[2026-06-12 21:52:52,375.375 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 21:52:52,388.388 INFO    ] Checking for existing commands in stream...
[2026-06-12 21:52:52,494.494 INFO    ] No existing commands found in stream
[2026-06-12 21:52:57,508.508 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 21:52:57,511.511 INFO    ] Waiting 0.39 seconds before fallback handling...
[2026-06-12 21:52:58,281.281 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 21:52:58,282.282 INFO    ] Checking for system updates...
[2026-06-12 21:52:58,302.302 INFO    ] 200
[2026-06-12 21:52:58,304.304 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:52:58,334.334 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 21:52:58,335.335 INFO    ] No update needed
[2026-06-12 21:52:58,336.336 INFO    ] Checking for camera pi updates...
[2026-06-12 21:52:58,357.357 INFO    ] 200
[2026-06-12 21:52:58,358.358 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:52:58,381.381 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 21:52:58,428.428 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 21:52:58,429.429 INFO    ] No camera update needed
[2026-06-12 21:52:58,431.431 INFO    ] Script finished. Safe exiting...
[2026-06-12 21:52:58,432.432 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 21:52:58,435.435 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 21:52:58,438.438 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 21:53:00,476.476 INFO    ] ================================================
[2026-06-12 21:53:00,492.492 INFO    ] Launching Daemon at Fri Jun 12 21:53:00 IST 2026
[2026-06-12 21:53:00,503.503 INFO    ] ================================================
[2026-06-12 21:53:00,828.828 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 21:53:00
[2026-06-12 21:53:01,146.146 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 21:53:01,291.291 INFO    ] Initializing speech engine...
[2026-06-12 21:53:01,296.296 INFO    ] 2026-06-12 21:53:01
[2026-06-12 21:53:01,502.502 INFO    ] 2026-06-12 21:53:01
[2026-06-12 21:53:01,531.531 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 21:53:01,716.716 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 21:53:01,719.719 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 21:53:01,885.885 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 21:53:01,888.888 INFO    ] time= 12/06/2026 21:53:01
[2026-06-12 21:53:01,931.931 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 21:53:01,956.956 INFO    ] Checking for existing commands in stream...
[2026-06-12 21:53:02,056.056 INFO    ] No existing commands found in stream
[2026-06-12 21:53:07,097.097 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 21:53:07,100.100 INFO    ] Waiting 3.96 seconds before fallback handling...
[2026-06-12 21:53:11,458.458 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 21:53:11,460.460 INFO    ] Checking for system updates...
[2026-06-12 21:53:11,480.480 INFO    ] 200
[2026-06-12 21:53:11,481.481 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:53:11,511.511 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 21:53:11,513.513 INFO    ] No update needed
[2026-06-12 21:53:11,514.514 INFO    ] Checking for camera pi updates...
[2026-06-12 21:53:11,533.533 INFO    ] 200
[2026-06-12 21:53:11,534.534 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:53:11,557.557 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 21:53:11,617.617 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 21:53:11,619.619 INFO    ] No camera update needed
[2026-06-12 21:53:11,620.620 INFO    ] Script finished. Safe exiting...
[2026-06-12 21:53:11,621.621 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 21:53:11,624.624 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 21:53:11,627.627 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 21:53:13,667.667 INFO    ] ================================================
[2026-06-12 21:53:13,685.685 INFO    ] Launching Daemon at Fri Jun 12 21:53:13 IST 2026
[2026-06-12 21:53:13,697.697 INFO    ] ================================================
[2026-06-12 21:53:14,041.041 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 21:53:14
[2026-06-12 21:53:14,352.352 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 21:53:14,483.483 INFO    ] Initializing speech engine...
[2026-06-12 21:53:14,487.487 INFO    ] 2026-06-12 21:53:14
[2026-06-12 21:53:14,680.680 INFO    ] 2026-06-12 21:53:14
[2026-06-12 21:53:14,727.727 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 21:53:14,886.886 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 21:53:14,925.925 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 21:53:15,099.099 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 21:53:15,126.126 INFO    ] time= 12/06/2026 21:53:15
[2026-06-12 21:53:15,184.184 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 21:53:15,209.209 INFO    ] Checking for existing commands in stream...
[2026-06-12 21:53:15,288.288 INFO    ] No existing commands found in stream
[2026-06-12 21:53:20,296.296 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 21:53:20,299.299 INFO    ] Waiting 2.47 seconds before fallback handling...
[2026-06-12 21:53:23,160.160 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 21:53:23,162.162 INFO    ] Checking for system updates...
[2026-06-12 21:53:23,183.183 INFO    ] 200
[2026-06-12 21:53:23,184.184 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:53:23,214.214 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 21:53:23,216.216 INFO    ] No update needed
[2026-06-12 21:53:23,217.217 INFO    ] Checking for camera pi updates...
[2026-06-12 21:53:23,236.236 INFO    ] 200
[2026-06-12 21:53:23,238.238 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:53:23,261.261 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 21:53:23,315.315 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 21:53:23,317.317 INFO    ] No camera update needed
[2026-06-12 21:53:23,318.318 INFO    ] Script finished. Safe exiting...
[2026-06-12 21:53:23,319.319 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 21:53:23,322.322 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 21:53:23,326.326 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 21:53:25,366.366 INFO    ] ================================================
[2026-06-12 21:53:25,382.382 INFO    ] Launching Daemon at Fri Jun 12 21:53:25 IST 2026
[2026-06-12 21:53:25,393.393 INFO    ] ================================================
[2026-06-12 21:53:25,771.771 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 21:53:25
[2026-06-12 21:53:26,089.089 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 21:53:26,221.221 INFO    ] Initializing speech engine...
[2026-06-12 21:53:26,225.225 INFO    ] 2026-06-12 21:53:26
[2026-06-12 21:53:26,421.421 INFO    ] 2026-06-12 21:53:26
[2026-06-12 21:53:26,468.468 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 21:53:26,630.630 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 21:53:26,688.688 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 21:53:26,844.844 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 21:53:26,886.886 INFO    ] time= 12/06/2026 21:53:26
[2026-06-12 21:53:26,932.932 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 21:53:26,955.955 INFO    ] Checking for existing commands in stream...
[2026-06-12 21:53:27,061.061 INFO    ] No existing commands found in stream
[2026-06-12 21:53:32,071.071 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 21:53:32,073.073 INFO    ] Waiting 1.43 seconds before fallback handling...
[2026-06-12 21:53:33,903.903 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 21:53:33,905.905 INFO    ] Checking for system updates...
[2026-06-12 21:53:33,925.925 INFO    ] 200
[2026-06-12 21:53:33,927.927 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:53:33,956.956 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 21:53:33,958.958 INFO    ] No update needed
[2026-06-12 21:53:33,959.959 INFO    ] Checking for camera pi updates...
[2026-06-12 21:53:33,979.979 INFO    ] 200
[2026-06-12 21:53:33,980.980 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:53:34,003.003 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 21:53:34,047.047 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 21:53:34,049.049 INFO    ] No camera update needed
[2026-06-12 21:53:34,050.050 INFO    ] Script finished. Safe exiting...
[2026-06-12 21:53:34,052.052 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 21:53:34,055.055 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 21:53:34,057.057 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 21:53:36,095.095 INFO    ] ================================================
[2026-06-12 21:53:36,111.111 INFO    ] Launching Daemon at Fri Jun 12 21:53:36 IST 2026
[2026-06-12 21:53:36,122.122 INFO    ] ================================================
[2026-06-12 21:53:36,525.525 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 21:53:36
[2026-06-12 21:53:36,871.871 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 21:53:37,025.025 INFO    ] Initializing speech engine...
[2026-06-12 21:53:37,031.031 INFO    ] 2026-06-12 21:53:37
[2026-06-12 21:53:37,243.243 INFO    ] 2026-06-12 21:53:37
[2026-06-12 21:53:37,273.273 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 21:53:37,404.404 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 21:53:37,463.463 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 21:53:37,603.603 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 21:53:37,668.668 INFO    ] time= 12/06/2026 21:53:37
[2026-06-12 21:53:37,697.697 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 21:53:37,704.704 INFO    ] Checking for existing commands in stream...
[2026-06-12 21:53:37,772.772 INFO    ] No existing commands found in stream
[2026-06-12 21:53:42,787.787 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 21:53:42,790.790 INFO    ] Waiting 2.63 seconds before fallback handling...
[2026-06-12 21:53:45,757.757 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 21:53:45,759.759 INFO    ] Checking for system updates...
[2026-06-12 21:53:45,781.781 INFO    ] 200
[2026-06-12 21:53:45,782.782 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:53:45,812.812 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 21:53:45,814.814 INFO    ] No update needed
[2026-06-12 21:53:45,815.815 INFO    ] Checking for camera pi updates...
[2026-06-12 21:53:45,835.835 INFO    ] 200
[2026-06-12 21:53:45,836.836 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:53:45,862.862 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 21:53:45,908.908 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 21:53:45,909.909 INFO    ] No camera update needed
[2026-06-12 21:53:45,911.911 INFO    ] Script finished. Safe exiting...
[2026-06-12 21:53:45,912.912 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 21:53:45,916.916 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 21:53:45,919.919 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 21:53:47,950.950 INFO    ] ================================================
[2026-06-12 21:53:47,959.959 INFO    ] Launching Daemon at Fri Jun 12 21:53:47 IST 2026
[2026-06-12 21:53:47,965.965 INFO    ] ================================================
[2026-06-12 21:53:48,287.287 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 21:53:48
[2026-06-12 21:53:48,630.630 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 21:53:48,776.776 INFO    ] Initializing speech engine...
[2026-06-12 21:53:48,790.790 INFO    ] 2026-06-12 21:53:48
[2026-06-12 21:53:49,000.000 INFO    ] 2026-06-12 21:53:48
[2026-06-12 21:53:49,036.036 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 21:53:49,195.195 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 21:53:49,260.260 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 21:53:49,409.409 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 21:53:49,478.478 INFO    ] time= 12/06/2026 21:53:49
[2026-06-12 21:53:49,510.510 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 21:53:49,517.517 INFO    ] Checking for existing commands in stream...
[2026-06-12 21:53:49,587.587 INFO    ] No existing commands found in stream
[2026-06-12 21:53:54,597.597 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 21:53:54,600.600 INFO    ] Waiting 3.53 seconds before fallback handling...
[2026-06-12 21:53:58,502.502 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 21:53:58,504.504 INFO    ] Checking for system updates...
[2026-06-12 21:53:58,528.528 INFO    ] 200
[2026-06-12 21:53:58,529.529 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:53:58,559.559 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 21:53:58,560.560 INFO    ] No update needed
[2026-06-12 21:53:58,562.562 INFO    ] Checking for camera pi updates...
[2026-06-12 21:53:58,582.582 INFO    ] 200
[2026-06-12 21:53:58,583.583 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:53:58,607.607 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 21:53:58,655.655 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 21:53:58,656.656 INFO    ] No camera update needed
[2026-06-12 21:53:58,657.657 INFO    ] Script finished. Safe exiting...
[2026-06-12 21:53:58,659.659 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 21:53:58,662.662 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 21:53:58,664.664 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 21:54:00,702.702 INFO    ] ================================================
[2026-06-12 21:54:00,717.717 INFO    ] Launching Daemon at Fri Jun 12 21:54:00 IST 2026
[2026-06-12 21:54:00,729.729 INFO    ] ================================================
[2026-06-12 21:54:01,117.117 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 21:54:01
[2026-06-12 21:54:01,552.552 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 21:54:01,722.722 INFO    ] Initializing speech engine...
[2026-06-12 21:54:01,728.728 INFO    ] 2026-06-12 21:54:01
[2026-06-12 21:54:01,964.964 INFO    ] 2026-06-12 21:54:01
[2026-06-12 21:54:02,011.011 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 21:54:02,137.137 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 21:54:02,142.142 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 21:54:02,271.271 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 21:54:02,276.276 INFO    ] time= 12/06/2026 21:54:02
[2026-06-12 21:54:02,307.307 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 21:54:02,342.342 INFO    ] Checking for existing commands in stream...
[2026-06-12 21:54:02,456.456 INFO    ] No existing commands found in stream
[2026-06-12 21:54:07,485.485 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 21:54:07,488.488 INFO    ] Waiting 1.11 seconds before fallback handling...
[2026-06-12 21:54:08,941.941 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 21:54:08,943.943 INFO    ] Checking for system updates...
[2026-06-12 21:54:08,963.963 INFO    ] 200
[2026-06-12 21:54:08,965.965 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:54:08,997.997 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 21:54:08,998.998 INFO    ] No update needed
[2026-06-12 21:54:09,000.000 INFO    ] Checking for camera pi updates...
[2026-06-12 21:54:09,019.019 INFO    ] 200
[2026-06-12 21:54:09,021.021 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:54:09,046.046 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 21:54:09,095.095 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 21:54:09,097.097 INFO    ] No camera update needed
[2026-06-12 21:54:09,098.098 INFO    ] Script finished. Safe exiting...
[2026-06-12 21:54:09,099.099 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 21:54:09,102.102 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 21:54:09,105.105 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 21:54:11,144.144 INFO    ] ================================================
[2026-06-12 21:54:11,161.161 INFO    ] Launching Daemon at Fri Jun 12 21:54:11 IST 2026
[2026-06-12 21:54:11,171.171 INFO    ] ================================================
[2026-06-12 21:54:11,518.518 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 21:54:11
[2026-06-12 21:54:11,835.835 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 21:54:11,979.979 INFO    ] Initializing speech engine...
[2026-06-12 21:54:11,984.984 INFO    ] 2026-06-12 21:54:11
[2026-06-12 21:54:12,187.187 INFO    ] 2026-06-12 21:54:12
[2026-06-12 21:54:12,216.216 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 21:54:12,399.399 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 21:54:12,408.408 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 21:54:12,530.530 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 21:54:12,585.585 INFO    ] time= 12/06/2026 21:54:12
[2026-06-12 21:54:12,627.627 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 21:54:12,629.629 INFO    ] Checking for existing commands in stream...
[2026-06-12 21:54:12,700.700 INFO    ] No existing commands found in stream
[2026-06-12 21:54:17,709.709 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 21:54:17,712.712 INFO    ] Waiting 2.32 seconds before fallback handling...
[2026-06-12 21:54:20,361.361 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 21:54:20,363.363 INFO    ] Checking for system updates...
[2026-06-12 21:54:20,384.384 INFO    ] 200
[2026-06-12 21:54:20,386.386 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:54:20,415.415 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 21:54:20,417.417 INFO    ] No update needed
[2026-06-12 21:54:20,418.418 INFO    ] Checking for camera pi updates...
[2026-06-12 21:54:20,438.438 INFO    ] 200
[2026-06-12 21:54:20,440.440 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:54:20,463.463 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 21:54:20,521.521 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 21:54:20,523.523 INFO    ] No camera update needed
[2026-06-12 21:54:20,524.524 INFO    ] Script finished. Safe exiting...
[2026-06-12 21:54:20,526.526 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 21:54:20,529.529 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 21:54:20,532.532 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 21:54:22,570.570 INFO    ] ================================================
[2026-06-12 21:54:22,585.585 INFO    ] Launching Daemon at Fri Jun 12 21:54:22 IST 2026
[2026-06-12 21:54:22,596.596 INFO    ] ================================================
[2026-06-12 21:54:22,941.941 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 21:54:22
[2026-06-12 21:54:23,254.254 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 21:54:23,384.384 INFO    ] Initializing speech engine...
[2026-06-12 21:54:23,388.388 INFO    ] 2026-06-12 21:54:23
[2026-06-12 21:54:23,608.608 INFO    ] 2026-06-12 21:54:23
[2026-06-12 21:54:23,637.637 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 21:54:23,823.823 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 21:54:23,833.833 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 21:54:23,977.977 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 21:54:24,037.037 INFO    ] time= 12/06/2026 21:54:23
[2026-06-12 21:54:24,072.072 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 21:54:24,079.079 INFO    ] Checking for existing commands in stream...
[2026-06-12 21:54:24,158.158 INFO    ] No existing commands found in stream
[2026-06-12 21:54:29,187.187 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 21:54:29,190.190 INFO    ] Waiting 2.75 seconds before fallback handling...
[2026-06-12 21:54:32,283.283 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 21:54:32,284.284 INFO    ] Checking for system updates...
[2026-06-12 21:54:32,306.306 INFO    ] 200
[2026-06-12 21:54:32,307.307 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:54:32,337.337 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 21:54:32,339.339 INFO    ] No update needed
[2026-06-12 21:54:32,340.340 INFO    ] Checking for camera pi updates...
[2026-06-12 21:54:32,360.360 INFO    ] 200
[2026-06-12 21:54:32,361.361 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:54:32,386.386 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 21:54:32,429.429 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 21:54:32,430.430 INFO    ] No camera update needed
[2026-06-12 21:54:32,432.432 INFO    ] Script finished. Safe exiting...
[2026-06-12 21:54:32,433.433 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 21:54:32,436.436 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 21:54:32,438.438 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 21:54:34,478.478 INFO    ] ================================================
[2026-06-12 21:54:34,493.493 INFO    ] Launching Daemon at Fri Jun 12 21:54:34 IST 2026
[2026-06-12 21:54:34,504.504 INFO    ] ================================================
[2026-06-12 21:54:34,870.870 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 21:54:34
[2026-06-12 21:54:35,189.189 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 21:54:35,327.327 INFO    ] Initializing speech engine...
[2026-06-12 21:54:35,340.340 INFO    ] 2026-06-12 21:54:35
[2026-06-12 21:54:35,564.564 INFO    ] 2026-06-12 21:54:35
[2026-06-12 21:54:35,595.595 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 21:54:35,728.728 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 21:54:35,796.796 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 21:54:35,940.940 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 21:54:35,996.996 INFO    ] time= 12/06/2026 21:54:35
[2026-06-12 21:54:36,037.037 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 21:54:36,048.048 INFO    ] Checking for existing commands in stream...
[2026-06-12 21:54:36,153.153 INFO    ] No existing commands found in stream
[2026-06-12 21:54:41,162.162 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 21:54:41,165.165 INFO    ] Waiting 1.34 seconds before fallback handling...
[2026-06-12 21:54:42,893.893 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 21:54:42,894.894 INFO    ] Checking for system updates...
[2026-06-12 21:54:42,917.917 INFO    ] 200
[2026-06-12 21:54:42,918.918 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:54:42,948.948 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 21:54:42,949.949 INFO    ] No update needed
[2026-06-12 21:54:42,951.951 INFO    ] Checking for camera pi updates...
[2026-06-12 21:54:42,971.971 INFO    ] 200
[2026-06-12 21:54:42,973.973 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:54:42,996.996 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 21:54:43,119.119 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 21:54:43,120.120 INFO    ] No camera update needed
[2026-06-12 21:54:43,121.121 INFO    ] Script finished. Safe exiting...
[2026-06-12 21:54:43,123.123 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 21:54:43,126.126 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 21:54:43,128.128 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 21:54:45,166.166 INFO    ] ================================================
[2026-06-12 21:54:45,181.181 INFO    ] Launching Daemon at Fri Jun 12 21:54:45 IST 2026
[2026-06-12 21:54:45,192.192 INFO    ] ================================================
[2026-06-12 21:54:45,526.526 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 21:54:45
[2026-06-12 21:54:45,840.840 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 21:54:45,973.973 INFO    ] Initializing speech engine...
[2026-06-12 21:54:45,978.978 INFO    ] 2026-06-12 21:54:45
[2026-06-12 21:54:46,181.181 INFO    ] 2026-06-12 21:54:46
[2026-06-12 21:54:46,215.215 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 21:54:46,379.379 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 21:54:46,442.442 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 21:54:46,585.585 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 21:54:46,637.637 INFO    ] time= 12/06/2026 21:54:46
[2026-06-12 21:54:46,677.677 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 21:54:46,694.694 INFO    ] Checking for existing commands in stream...
[2026-06-12 21:54:46,799.799 INFO    ] No existing commands found in stream
[2026-06-12 21:54:51,808.808 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 21:54:51,811.811 INFO    ] Waiting 3.06 seconds before fallback handling...
[2026-06-12 21:54:55,274.274 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 21:54:55,276.276 INFO    ] Checking for system updates...
[2026-06-12 21:54:55,297.297 INFO    ] 200
[2026-06-12 21:54:55,298.298 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:54:55,329.329 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 21:54:55,330.330 INFO    ] No update needed
[2026-06-12 21:54:55,332.332 INFO    ] Checking for camera pi updates...
[2026-06-12 21:54:55,351.351 INFO    ] 200
[2026-06-12 21:54:55,353.353 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:54:55,376.376 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 21:54:55,420.420 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 21:54:55,422.422 INFO    ] No camera update needed
[2026-06-12 21:54:55,423.423 INFO    ] Script finished. Safe exiting...
[2026-06-12 21:54:55,424.424 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 21:54:55,428.428 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 21:54:55,431.431 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 21:54:57,469.469 INFO    ] ================================================
[2026-06-12 21:54:57,485.485 INFO    ] Launching Daemon at Fri Jun 12 21:54:57 IST 2026
[2026-06-12 21:54:57,496.496 INFO    ] ================================================
[2026-06-12 21:54:57,840.840 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 21:54:57
[2026-06-12 21:54:58,152.152 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 21:54:58,288.288 INFO    ] Initializing speech engine...
[2026-06-12 21:54:58,302.302 INFO    ] 2026-06-12 21:54:58
[2026-06-12 21:54:58,524.524 INFO    ] 2026-06-12 21:54:58
[2026-06-12 21:54:58,555.555 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 21:54:58,689.689 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 21:54:58,757.757 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 21:54:58,905.905 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 21:54:58,968.968 INFO    ] time= 12/06/2026 21:54:58
[2026-06-12 21:54:59,004.004 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 21:54:59,011.011 INFO    ] Checking for existing commands in stream...
[2026-06-12 21:54:59,116.116 INFO    ] No existing commands found in stream
[2026-06-12 21:55:04,125.125 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 21:55:04,128.128 INFO    ] Waiting 2.81 seconds before fallback handling...
[2026-06-12 21:55:07,301.301 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 21:55:07,302.302 INFO    ] Checking for system updates...
[2026-06-12 21:55:07,322.322 INFO    ] 200
[2026-06-12 21:55:07,324.324 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:55:07,354.354 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 21:55:07,355.355 INFO    ] No update needed
[2026-06-12 21:55:07,356.356 INFO    ] Checking for camera pi updates...
[2026-06-12 21:55:07,379.379 INFO    ] 200
[2026-06-12 21:55:07,381.381 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:55:07,404.404 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 21:55:07,446.446 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 21:55:07,447.447 INFO    ] No camera update needed
[2026-06-12 21:55:07,448.448 INFO    ] Script finished. Safe exiting...
[2026-06-12 21:55:07,449.449 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 21:55:07,453.453 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 21:55:07,455.455 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 21:55:09,494.494 INFO    ] ================================================
[2026-06-12 21:55:09,509.509 INFO    ] Launching Daemon at Fri Jun 12 21:55:09 IST 2026
[2026-06-12 21:55:09,519.519 INFO    ] ================================================
[2026-06-12 21:55:09,873.873 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 21:55:09
[2026-06-12 21:55:10,189.189 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 21:55:10,323.323 INFO    ] Initializing speech engine...
[2026-06-12 21:55:10,328.328 INFO    ] 2026-06-12 21:55:10
[2026-06-12 21:55:10,521.521 INFO    ] 2026-06-12 21:55:10
[2026-06-12 21:55:10,567.567 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 21:55:10,729.729 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 21:55:10,758.758 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 21:55:10,903.903 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 21:55:10,949.949 INFO    ] time= 12/06/2026 21:55:10
[2026-06-12 21:55:10,990.990 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 21:55:11,036.036 INFO    ] Checking for existing commands in stream...
[2026-06-12 21:55:11,136.136 INFO    ] No existing commands found in stream
[2026-06-12 21:55:16,146.146 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 21:55:16,149.149 INFO    ] Waiting 3.14 seconds before fallback handling...
[2026-06-12 21:55:19,652.652 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 21:55:19,653.653 INFO    ] Checking for system updates...
[2026-06-12 21:55:19,673.673 INFO    ] 200
[2026-06-12 21:55:19,675.675 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:55:19,705.705 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 21:55:19,706.706 INFO    ] No update needed
[2026-06-12 21:55:19,707.707 INFO    ] Checking for camera pi updates...
[2026-06-12 21:55:19,726.726 INFO    ] 200
[2026-06-12 21:55:19,728.728 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:55:19,750.750 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 21:55:19,791.791 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 21:55:19,792.792 INFO    ] No camera update needed
[2026-06-12 21:55:19,793.793 INFO    ] Script finished. Safe exiting...
[2026-06-12 21:55:19,795.795 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 21:55:19,798.798 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 21:55:19,800.800 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 21:55:21,838.838 INFO    ] ================================================
[2026-06-12 21:55:21,854.854 INFO    ] Launching Daemon at Fri Jun 12 21:55:21 IST 2026
[2026-06-12 21:55:21,865.865 INFO    ] ================================================
[2026-06-12 21:55:22,243.243 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 21:55:22
[2026-06-12 21:55:22,587.587 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 21:55:22,740.740 INFO    ] Initializing speech engine...
[2026-06-12 21:55:22,746.746 INFO    ] 2026-06-12 21:55:22
[2026-06-12 21:55:22,957.957 INFO    ] 2026-06-12 21:55:22
[2026-06-12 21:55:22,986.986 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 21:55:23,174.174 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 21:55:23,184.184 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 21:55:23,314.314 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 21:55:23,378.378 INFO    ] time= 12/06/2026 21:55:23
[2026-06-12 21:55:23,407.407 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 21:55:23,413.413 INFO    ] Checking for existing commands in stream...
[2026-06-12 21:55:23,504.504 INFO    ] No existing commands found in stream
[2026-06-12 21:55:28,524.524 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 21:55:28,527.527 INFO    ] Waiting 0.18 seconds before fallback handling...
[2026-06-12 21:55:29,065.065 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 21:55:29,067.067 INFO    ] Checking for system updates...
[2026-06-12 21:55:29,088.088 INFO    ] 200
[2026-06-12 21:55:29,089.089 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:55:29,122.122 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 21:55:29,123.123 INFO    ] No update needed
[2026-06-12 21:55:29,125.125 INFO    ] Checking for camera pi updates...
[2026-06-12 21:55:29,151.151 INFO    ] 200
[2026-06-12 21:55:29,153.153 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:55:29,176.176 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 21:55:29,225.225 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 21:55:29,226.226 INFO    ] No camera update needed
[2026-06-12 21:55:29,228.228 INFO    ] Script finished. Safe exiting...
[2026-06-12 21:55:29,229.229 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 21:55:29,233.233 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 21:55:29,236.236 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 21:55:31,275.275 INFO    ] ================================================
[2026-06-12 21:55:31,291.291 INFO    ] Launching Daemon at Fri Jun 12 21:55:31 IST 2026
[2026-06-12 21:55:31,302.302 INFO    ] ================================================
[2026-06-12 21:55:31,658.658 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 21:55:31
[2026-06-12 21:55:32,003.003 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 21:55:32,148.148 INFO    ] Initializing speech engine...
[2026-06-12 21:55:32,156.156 INFO    ] 2026-06-12 21:55:32
[2026-06-12 21:55:32,361.361 INFO    ] 2026-06-12 21:55:32
[2026-06-12 21:55:32,410.410 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 21:55:32,570.570 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 21:55:32,608.608 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 21:55:32,751.751 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 21:55:32,786.786 INFO    ] time= 12/06/2026 21:55:32
[2026-06-12 21:55:32,833.833 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 21:55:32,872.872 INFO    ] Checking for existing commands in stream...
[2026-06-12 21:55:32,971.971 INFO    ] No existing commands found in stream
[2026-06-12 21:55:37,982.982 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 21:55:37,985.985 INFO    ] Waiting 1.70 seconds before fallback handling...
[2026-06-12 21:55:40,065.065 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 21:55:40,066.066 INFO    ] Checking for system updates...
[2026-06-12 21:55:40,087.087 INFO    ] 200
[2026-06-12 21:55:40,089.089 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:55:40,119.119 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 21:55:40,120.120 INFO    ] No update needed
[2026-06-12 21:55:40,121.121 INFO    ] Checking for camera pi updates...
[2026-06-12 21:55:40,141.141 INFO    ] 200
[2026-06-12 21:55:40,142.142 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:55:40,167.167 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 21:55:40,215.215 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 21:55:40,216.216 INFO    ] No camera update needed
[2026-06-12 21:55:40,218.218 INFO    ] Script finished. Safe exiting...
[2026-06-12 21:55:40,219.219 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 21:55:40,222.222 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 21:55:40,225.225 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 21:55:42,263.263 INFO    ] ================================================
[2026-06-12 21:55:42,278.278 INFO    ] Launching Daemon at Fri Jun 12 21:55:42 IST 2026
[2026-06-12 21:55:42,289.289 INFO    ] ================================================
[2026-06-12 21:55:42,651.651 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 21:55:42
[2026-06-12 21:55:42,966.966 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 21:55:43,101.101 INFO    ] Initializing speech engine...
[2026-06-12 21:55:43,106.106 INFO    ] 2026-06-12 21:55:43
[2026-06-12 21:55:43,317.317 INFO    ] 2026-06-12 21:55:43
[2026-06-12 21:55:43,346.346 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 21:55:43,506.506 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 21:55:43,559.559 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 21:55:43,719.719 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 21:55:43,783.783 INFO    ] time= 12/06/2026 21:55:43
[2026-06-12 21:55:43,824.824 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 21:55:43,830.830 INFO    ] Checking for existing commands in stream...
[2026-06-12 21:55:43,935.935 INFO    ] No existing commands found in stream
[2026-06-12 21:55:48,949.949 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 21:55:48,952.952 INFO    ] Waiting 0.72 seconds before fallback handling...
[2026-06-12 21:55:50,032.032 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 21:55:50,033.033 INFO    ] Checking for system updates...
[2026-06-12 21:55:50,058.058 INFO    ] 200
[2026-06-12 21:55:50,059.059 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:55:50,092.092 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 21:55:50,093.093 INFO    ] No update needed
[2026-06-12 21:55:50,095.095 INFO    ] Checking for camera pi updates...
[2026-06-12 21:55:50,114.114 INFO    ] 200
[2026-06-12 21:55:50,115.115 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:55:50,141.141 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 21:55:50,184.184 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 21:55:50,186.186 INFO    ] No camera update needed
[2026-06-12 21:55:50,187.187 INFO    ] Script finished. Safe exiting...
[2026-06-12 21:55:50,188.188 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 21:55:50,191.191 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 21:55:50,194.194 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 21:55:52,232.232 INFO    ] ================================================
[2026-06-12 21:55:52,248.248 INFO    ] Launching Daemon at Fri Jun 12 21:55:52 IST 2026
[2026-06-12 21:55:52,258.258 INFO    ] ================================================
[2026-06-12 21:55:52,588.588 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 21:55:52
[2026-06-12 21:55:52,908.908 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 21:55:53,053.053 INFO    ] Initializing speech engine...
[2026-06-12 21:55:53,058.058 INFO    ] 2026-06-12 21:55:53
[2026-06-12 21:55:53,264.264 INFO    ] 2026-06-12 21:55:53
[2026-06-12 21:55:53,294.294 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 21:55:53,477.477 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 21:55:53,486.486 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 21:55:53,611.611 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 21:55:53,658.658 INFO    ] time= 12/06/2026 21:55:53
[2026-06-12 21:55:53,659.659 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 21:55:53,705.705 INFO    ] Checking for existing commands in stream...
[2026-06-12 21:55:53,779.779 INFO    ] No existing commands found in stream
[2026-06-12 21:55:58,788.788 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 21:55:58,791.791 INFO    ] Waiting 3.94 seconds before fallback handling...
[2026-06-12 21:56:06,461.461 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 21:56:06,464.464 INFO    ] Checking for system updates...
[2026-06-12 21:56:06,502.502 INFO    ] 200
[2026-06-12 21:56:06,505.505 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:56:06,559.559 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 21:56:06,561.561 INFO    ] No update needed
[2026-06-12 21:56:06,563.563 INFO    ] Checking for camera pi updates...
[2026-06-12 21:56:06,582.582 INFO    ] 200
[2026-06-12 21:56:06,583.583 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:56:06,606.606 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 21:56:06,660.660 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 21:56:06,661.661 INFO    ] No camera update needed
[2026-06-12 21:56:06,663.663 INFO    ] Script finished. Safe exiting...
[2026-06-12 21:56:06,664.664 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 21:56:06,667.667 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 21:56:06,670.670 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 21:56:08,708.708 INFO    ] ================================================
[2026-06-12 21:56:08,723.723 INFO    ] Launching Daemon at Fri Jun 12 21:56:08 IST 2026
[2026-06-12 21:56:08,734.734 INFO    ] ================================================
[2026-06-12 21:56:09,091.091 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 21:56:09
[2026-06-12 21:56:09,408.408 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 21:56:09,552.552 INFO    ] Initializing speech engine...
[2026-06-12 21:56:09,558.558 INFO    ] 2026-06-12 21:56:09
[2026-06-12 21:56:09,761.761 INFO    ] 2026-06-12 21:56:09
[2026-06-12 21:56:09,791.791 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 21:56:09,924.924 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 21:56:09,977.977 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 21:56:10,112.112 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 21:56:10,170.170 INFO    ] time= 12/06/2026 21:56:10
[2026-06-12 21:56:10,199.199 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 21:56:10,210.210 INFO    ] Checking for existing commands in stream...
[2026-06-12 21:56:10,281.281 INFO    ] No existing commands found in stream
[2026-06-12 21:56:15,290.290 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 21:56:15,293.293 INFO    ] Waiting 1.40 seconds before fallback handling...
[2026-06-12 21:56:17,125.125 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 21:56:17,126.126 INFO    ] Checking for system updates...
[2026-06-12 21:56:17,148.148 INFO    ] 200
[2026-06-12 21:56:17,150.150 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:56:17,180.180 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 21:56:17,182.182 INFO    ] No update needed
[2026-06-12 21:56:17,183.183 INFO    ] Checking for camera pi updates...
[2026-06-12 21:56:17,203.203 INFO    ] 200
[2026-06-12 21:56:17,205.205 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:56:17,230.230 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 21:56:17,287.287 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 21:56:17,288.288 INFO    ] No camera update needed
[2026-06-12 21:56:17,290.290 INFO    ] Script finished. Safe exiting...
[2026-06-12 21:56:17,291.291 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 21:56:17,295.295 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 21:56:17,297.297 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 21:56:19,338.338 INFO    ] ================================================
[2026-06-12 21:56:19,353.353 INFO    ] Launching Daemon at Fri Jun 12 21:56:19 IST 2026
[2026-06-12 21:56:19,364.364 INFO    ] ================================================
[2026-06-12 21:56:19,712.712 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 21:56:19
[2026-06-12 21:56:20,049.049 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 21:56:20,202.202 INFO    ] Initializing speech engine...
[2026-06-12 21:56:20,208.208 INFO    ] 2026-06-12 21:56:20
[2026-06-12 21:56:20,419.419 INFO    ] 2026-06-12 21:56:20
[2026-06-12 21:56:20,448.448 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 21:56:20,637.637 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 21:56:20,646.646 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 21:56:20,800.800 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 21:56:20,851.851 INFO    ] time= 12/06/2026 21:56:20
[2026-06-12 21:56:20,873.873 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 21:56:20,879.879 INFO    ] Checking for existing commands in stream...
[2026-06-12 21:56:20,972.972 INFO    ] No existing commands found in stream
[2026-06-12 21:56:25,981.981 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 21:56:25,985.985 INFO    ] Waiting 2.58 seconds before fallback handling...
[2026-06-12 21:56:28,938.938 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 21:56:28,940.940 INFO    ] Checking for system updates...
[2026-06-12 21:56:28,961.961 INFO    ] 200
[2026-06-12 21:56:28,962.962 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:56:28,995.995 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 21:56:28,996.996 INFO    ] No update needed
[2026-06-12 21:56:28,997.997 INFO    ] Checking for camera pi updates...
[2026-06-12 21:56:29,020.020 INFO    ] 200
[2026-06-12 21:56:29,021.021 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:56:29,044.044 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 21:56:29,094.094 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 21:56:29,096.096 INFO    ] No camera update needed
[2026-06-12 21:56:29,097.097 INFO    ] Script finished. Safe exiting...
[2026-06-12 21:56:29,099.099 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 21:56:29,102.102 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 21:56:29,105.105 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 21:56:31,144.144 INFO    ] ================================================
[2026-06-12 21:56:31,159.159 INFO    ] Launching Daemon at Fri Jun 12 21:56:31 IST 2026
[2026-06-12 21:56:31,170.170 INFO    ] ================================================
[2026-06-12 21:56:31,525.525 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 21:56:31
[2026-06-12 21:56:31,863.863 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 21:56:32,016.016 INFO    ] Initializing speech engine...
[2026-06-12 21:56:32,027.027 INFO    ] 2026-06-12 21:56:32
[2026-06-12 21:56:32,258.258 INFO    ] 2026-06-12 21:56:32
[2026-06-12 21:56:32,288.288 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 21:56:32,486.486 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 21:56:32,497.497 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 21:56:32,625.625 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 21:56:32,687.687 INFO    ] time= 12/06/2026 21:56:32
[2026-06-12 21:56:32,719.719 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 21:56:32,721.721 INFO    ] Checking for existing commands in stream...
[2026-06-12 21:56:32,816.816 INFO    ] No existing commands found in stream
[2026-06-12 21:56:37,830.830 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 21:56:37,833.833 INFO    ] Waiting 0.71 seconds before fallback handling...
[2026-06-12 21:56:38,922.922 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 21:56:38,924.924 INFO    ] Checking for system updates...
[2026-06-12 21:56:38,944.944 INFO    ] 200
[2026-06-12 21:56:38,946.946 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:56:38,980.980 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 21:56:38,981.981 INFO    ] No update needed
[2026-06-12 21:56:38,983.983 INFO    ] Checking for camera pi updates...
[2026-06-12 21:56:39,002.002 INFO    ] 200
[2026-06-12 21:56:39,003.003 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:56:39,028.028 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 21:56:39,073.073 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 21:56:39,074.074 INFO    ] No camera update needed
[2026-06-12 21:56:39,075.075 INFO    ] Script finished. Safe exiting...
[2026-06-12 21:56:39,077.077 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 21:56:39,080.080 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 21:56:39,082.082 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 21:56:41,120.120 INFO    ] ================================================
[2026-06-12 21:56:41,135.135 INFO    ] Launching Daemon at Fri Jun 12 21:56:41 IST 2026
[2026-06-12 21:56:41,145.145 INFO    ] ================================================
[2026-06-12 21:56:41,477.477 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 21:56:41
[2026-06-12 21:56:41,793.793 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 21:56:41,927.927 INFO    ] Initializing speech engine...
[2026-06-12 21:56:41,931.931 INFO    ] 2026-06-12 21:56:41
[2026-06-12 21:56:42,161.161 INFO    ] 2026-06-12 21:56:42
[2026-06-12 21:56:42,192.192 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 21:56:42,389.389 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 21:56:42,393.393 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 21:56:42,533.533 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 21:56:42,589.589 INFO    ] time= 12/06/2026 21:56:42
[2026-06-12 21:56:42,638.638 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 21:56:42,640.640 INFO    ] Checking for existing commands in stream...
[2026-06-12 21:56:42,717.717 INFO    ] No existing commands found in stream
[2026-06-12 21:56:47,726.726 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 21:56:47,728.728 INFO    ] Waiting 1.84 seconds before fallback handling...
[2026-06-12 21:56:49,933.933 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 21:56:49,935.935 INFO    ] Checking for system updates...
[2026-06-12 21:56:49,955.955 INFO    ] 200
[2026-06-12 21:56:49,956.956 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:56:49,987.987 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 21:56:49,988.988 INFO    ] No update needed
[2026-06-12 21:56:49,990.990 INFO    ] Checking for camera pi updates...
[2026-06-12 21:56:50,009.009 INFO    ] 200
[2026-06-12 21:56:50,011.011 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:56:50,035.035 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 21:56:50,187.187 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 21:56:50,188.188 INFO    ] No camera update needed
[2026-06-12 21:56:50,190.190 INFO    ] Script finished. Safe exiting...
[2026-06-12 21:56:50,192.192 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 21:56:50,195.195 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 21:56:50,198.198 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 21:56:52,238.238 INFO    ] ================================================
[2026-06-12 21:56:52,253.253 INFO    ] Launching Daemon at Fri Jun 12 21:56:52 IST 2026
[2026-06-12 21:56:52,265.265 INFO    ] ================================================
[2026-06-12 21:56:52,594.594 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 21:56:52
[2026-06-12 21:56:52,910.910 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 21:56:53,052.052 INFO    ] Initializing speech engine...
[2026-06-12 21:56:53,061.061 INFO    ] 2026-06-12 21:56:53
[2026-06-12 21:56:53,279.279 INFO    ] 2026-06-12 21:56:53
[2026-06-12 21:56:53,310.310 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 21:56:53,507.507 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 21:56:53,511.511 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 21:56:53,657.657 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 21:56:53,716.716 INFO    ] time= 12/06/2026 21:56:53
[2026-06-12 21:56:53,755.755 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 21:56:53,757.757 INFO    ] Checking for existing commands in stream...
[2026-06-12 21:56:53,833.833 INFO    ] No existing commands found in stream
[2026-06-12 21:56:58,852.852 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 21:56:58,855.855 INFO    ] Waiting 1.44 seconds before fallback handling...
[2026-06-12 21:57:00,682.682 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 21:57:00,684.684 INFO    ] Checking for system updates...
[2026-06-12 21:57:00,704.704 INFO    ] 200
[2026-06-12 21:57:00,705.705 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:57:00,737.737 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 21:57:00,738.738 INFO    ] No update needed
[2026-06-12 21:57:00,739.739 INFO    ] Checking for camera pi updates...
[2026-06-12 21:57:00,759.759 INFO    ] 200
[2026-06-12 21:57:00,761.761 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:57:00,783.783 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 21:57:00,835.835 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 21:57:00,837.837 INFO    ] No camera update needed
[2026-06-12 21:57:00,838.838 INFO    ] Script finished. Safe exiting...
[2026-06-12 21:57:00,839.839 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 21:57:00,842.842 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 21:57:00,845.845 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 21:57:02,876.876 INFO    ] ================================================
[2026-06-12 21:57:02,885.885 INFO    ] Launching Daemon at Fri Jun 12 21:57:02 IST 2026
[2026-06-12 21:57:02,893.893 INFO    ] ================================================
[2026-06-12 21:57:03,207.207 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 21:57:03
[2026-06-12 21:57:03,522.522 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 21:57:03,661.661 INFO    ] Initializing speech engine...
[2026-06-12 21:57:03,675.675 INFO    ] 2026-06-12 21:57:03
[2026-06-12 21:57:03,893.893 INFO    ] 2026-06-12 21:57:03
[2026-06-12 21:57:03,924.924 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 21:57:04,126.126 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 21:57:04,135.135 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 21:57:04,269.269 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 21:57:04,321.321 INFO    ] time= 12/06/2026 21:57:04
[2026-06-12 21:57:04,360.360 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 21:57:04,378.378 INFO    ] Checking for existing commands in stream...
[2026-06-12 21:57:04,455.455 INFO    ] No existing commands found in stream
[2026-06-12 21:57:09,465.465 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 21:57:09,468.468 INFO    ] Waiting 3.74 seconds before fallback handling...
[2026-06-12 21:57:13,593.593 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 21:57:13,595.595 INFO    ] Checking for system updates...
[2026-06-12 21:57:13,615.615 INFO    ] 200
[2026-06-12 21:57:13,617.617 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:57:13,646.646 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 21:57:13,648.648 INFO    ] No update needed
[2026-06-12 21:57:13,649.649 INFO    ] Checking for camera pi updates...
[2026-06-12 21:57:13,669.669 INFO    ] 200
[2026-06-12 21:57:13,670.670 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:57:13,695.695 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 21:57:13,757.757 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 21:57:13,758.758 INFO    ] No camera update needed
[2026-06-12 21:57:13,759.759 INFO    ] Script finished. Safe exiting...
[2026-06-12 21:57:13,761.761 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 21:57:13,764.764 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 21:57:13,767.767 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 21:57:15,804.804 INFO    ] ================================================
[2026-06-12 21:57:15,820.820 INFO    ] Launching Daemon at Fri Jun 12 21:57:15 IST 2026
[2026-06-12 21:57:15,830.830 INFO    ] ================================================
[2026-06-12 21:57:16,165.165 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 21:57:16
[2026-06-12 21:57:16,480.480 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 21:57:16,611.611 INFO    ] Initializing speech engine...
[2026-06-12 21:57:16,623.623 INFO    ] 2026-06-12 21:57:16
[2026-06-12 21:57:16,833.833 INFO    ] 2026-06-12 21:57:16
[2026-06-12 21:57:16,862.862 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 21:57:17,045.045 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 21:57:17,054.054 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 21:57:17,182.182 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 21:57:17,241.241 INFO    ] time= 12/06/2026 21:57:17
[2026-06-12 21:57:17,272.272 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 21:57:17,278.278 INFO    ] Checking for existing commands in stream...
[2026-06-12 21:57:17,345.345 INFO    ] No existing commands found in stream
[2026-06-12 21:57:22,359.359 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 21:57:22,362.362 INFO    ] Waiting 2.02 seconds before fallback handling...
[2026-06-12 21:57:24,763.763 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 21:57:24,764.764 INFO    ] Checking for system updates...
[2026-06-12 21:57:24,785.785 INFO    ] 200
[2026-06-12 21:57:24,786.786 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:57:24,816.816 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 21:57:24,818.818 INFO    ] No update needed
[2026-06-12 21:57:24,819.819 INFO    ] Checking for camera pi updates...
[2026-06-12 21:57:24,839.839 INFO    ] 200
[2026-06-12 21:57:24,841.841 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:57:24,866.866 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 21:57:24,907.907 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 21:57:24,908.908 INFO    ] No camera update needed
[2026-06-12 21:57:24,910.910 INFO    ] Script finished. Safe exiting...
[2026-06-12 21:57:24,911.911 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 21:57:24,914.914 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 21:57:24,916.916 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 21:57:26,954.954 INFO    ] ================================================
[2026-06-12 21:57:26,969.969 INFO    ] Launching Daemon at Fri Jun 12 21:57:26 IST 2026
[2026-06-12 21:57:26,980.980 INFO    ] ================================================
[2026-06-12 21:57:27,336.336 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 21:57:27
[2026-06-12 21:57:27,663.663 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 21:57:27,795.795 INFO    ] Initializing speech engine...
[2026-06-12 21:57:27,798.798 INFO    ] 2026-06-12 21:57:27
[2026-06-12 21:57:28,008.008 INFO    ] 2026-06-12 21:57:27
[2026-06-12 21:57:28,037.037 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 21:57:28,194.194 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 21:57:28,262.262 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 21:57:28,398.398 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 21:57:28,459.459 INFO    ] time= 12/06/2026 21:57:28
[2026-06-12 21:57:28,491.491 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 21:57:28,493.493 INFO    ] Checking for existing commands in stream...
[2026-06-12 21:57:28,564.564 INFO    ] No existing commands found in stream
[2026-06-12 21:57:33,573.573 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 21:57:33,576.576 INFO    ] Waiting 3.96 seconds before fallback handling...
[2026-06-12 21:57:37,916.916 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 21:57:37,918.918 INFO    ] Checking for system updates...
[2026-06-12 21:57:37,938.938 INFO    ] 200
[2026-06-12 21:57:37,939.939 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:57:37,972.972 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 21:57:37,973.973 INFO    ] No update needed
[2026-06-12 21:57:37,974.974 INFO    ] Checking for camera pi updates...
[2026-06-12 21:57:37,993.993 INFO    ] 200
[2026-06-12 21:57:37,994.994 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:57:38,017.017 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 21:57:38,067.067 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 21:57:38,068.068 INFO    ] No camera update needed
[2026-06-12 21:57:38,070.070 INFO    ] Script finished. Safe exiting...
[2026-06-12 21:57:38,071.071 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 21:57:38,074.074 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 21:57:38,076.076 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 21:57:40,114.114 INFO    ] ================================================
[2026-06-12 21:57:40,130.130 INFO    ] Launching Daemon at Fri Jun 12 21:57:40 IST 2026
[2026-06-12 21:57:40,141.141 INFO    ] ================================================
[2026-06-12 21:57:40,470.470 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 21:57:40
[2026-06-12 21:57:40,784.784 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 21:57:40,927.927 INFO    ] Initializing speech engine...
[2026-06-12 21:57:40,932.932 INFO    ] 2026-06-12 21:57:40
[2026-06-12 21:57:41,134.134 INFO    ] 2026-06-12 21:57:41
[2026-06-12 21:57:41,163.163 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 21:57:41,347.347 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 21:57:41,356.356 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 21:57:41,484.484 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 21:57:41,548.548 INFO    ] time= 12/06/2026 21:57:41
[2026-06-12 21:57:41,575.575 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 21:57:41,582.582 INFO    ] Checking for existing commands in stream...
[2026-06-12 21:57:41,672.672 INFO    ] No existing commands found in stream
[2026-06-12 21:57:46,681.681 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 21:57:46,683.683 INFO    ] Waiting 2.02 seconds before fallback handling...
[2026-06-12 21:57:49,093.093 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 21:57:49,094.094 INFO    ] Checking for system updates...
[2026-06-12 21:57:49,115.115 INFO    ] 200
[2026-06-12 21:57:49,116.116 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:57:49,148.148 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 21:57:49,149.149 INFO    ] No update needed
[2026-06-12 21:57:49,150.150 INFO    ] Checking for camera pi updates...
[2026-06-12 21:57:49,171.171 INFO    ] 200
[2026-06-12 21:57:49,173.173 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:57:49,198.198 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 21:57:49,264.264 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 21:57:49,266.266 INFO    ] No camera update needed
[2026-06-12 21:57:49,267.267 INFO    ] Script finished. Safe exiting...
[2026-06-12 21:57:49,268.268 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 21:57:49,272.272 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 21:57:49,275.275 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 21:57:51,312.312 INFO    ] ================================================
[2026-06-12 21:57:51,328.328 INFO    ] Launching Daemon at Fri Jun 12 21:57:51 IST 2026
[2026-06-12 21:57:51,339.339 INFO    ] ================================================
[2026-06-12 21:57:51,700.700 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 21:57:51
[2026-06-12 21:57:52,039.039 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 21:57:52,190.190 INFO    ] Initializing speech engine...
[2026-06-12 21:57:52,195.195 INFO    ] 2026-06-12 21:57:52
[2026-06-12 21:57:52,403.403 INFO    ] 2026-06-12 21:57:52
[2026-06-12 21:57:52,432.432 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 21:57:52,615.615 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 21:57:52,618.618 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 21:57:52,755.755 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 21:57:52,822.822 INFO    ] time= 12/06/2026 21:57:52
[2026-06-12 21:57:52,846.846 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 21:57:52,852.852 INFO    ] Checking for existing commands in stream...
[2026-06-12 21:57:52,942.942 INFO    ] No existing commands found in stream
[2026-06-12 21:57:57,967.967 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 21:57:57,970.970 INFO    ] Waiting 0.48 seconds before fallback handling...
[2026-06-12 21:57:58,833.833 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 21:57:58,834.834 INFO    ] Checking for system updates...
[2026-06-12 21:57:58,855.855 INFO    ] 200
[2026-06-12 21:57:58,856.856 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:57:58,887.887 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 21:57:58,888.888 INFO    ] No update needed
[2026-06-12 21:57:58,890.890 INFO    ] Checking for camera pi updates...
[2026-06-12 21:57:58,909.909 INFO    ] 200
[2026-06-12 21:57:58,911.911 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:57:58,934.934 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 21:57:58,981.981 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 21:57:58,982.982 INFO    ] No camera update needed
[2026-06-12 21:57:58,984.984 INFO    ] Script finished. Safe exiting...
[2026-06-12 21:57:58,985.985 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 21:57:58,989.989 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 21:57:58,992.992 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 21:58:01,030.030 INFO    ] ================================================
[2026-06-12 21:58:01,044.044 INFO    ] Launching Daemon at Fri Jun 12 21:58:01 IST 2026
[2026-06-12 21:58:01,055.055 INFO    ] ================================================
[2026-06-12 21:58:01,502.502 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 21:58:01
[2026-06-12 21:58:01,876.876 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 21:58:02,069.069 INFO    ] Initializing speech engine...
[2026-06-12 21:58:02,077.077 INFO    ] 2026-06-12 21:58:02
[2026-06-12 21:58:02,291.291 INFO    ] 2026-06-12 21:58:02
[2026-06-12 21:58:02,320.320 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 21:58:02,443.443 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 21:58:02,505.505 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 21:58:02,643.643 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 21:58:02,709.709 INFO    ] time= 12/06/2026 21:58:02
[2026-06-12 21:58:02,733.733 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 21:58:02,739.739 INFO    ] Checking for existing commands in stream...
[2026-06-12 21:58:02,805.805 INFO    ] No existing commands found in stream
[2026-06-12 21:58:07,819.819 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 21:58:07,822.822 INFO    ] Waiting 0.41 seconds before fallback handling...
[2026-06-12 21:58:08,614.614 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 21:58:08,615.615 INFO    ] Checking for system updates...
[2026-06-12 21:58:08,637.637 INFO    ] 200
[2026-06-12 21:58:08,638.638 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:58:08,668.668 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 21:58:08,669.669 INFO    ] No update needed
[2026-06-12 21:58:08,670.670 INFO    ] Checking for camera pi updates...
[2026-06-12 21:58:08,689.689 INFO    ] 200
[2026-06-12 21:58:08,691.691 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:58:08,714.714 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 21:58:08,767.767 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 21:58:08,768.768 INFO    ] No camera update needed
[2026-06-12 21:58:08,770.770 INFO    ] Script finished. Safe exiting...
[2026-06-12 21:58:08,771.771 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 21:58:08,774.774 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 21:58:08,777.777 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 21:58:10,814.814 INFO    ] ================================================
[2026-06-12 21:58:10,829.829 INFO    ] Launching Daemon at Fri Jun 12 21:58:10 IST 2026
[2026-06-12 21:58:10,840.840 INFO    ] ================================================
[2026-06-12 21:58:11,194.194 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 21:58:11
[2026-06-12 21:58:11,512.512 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 21:58:11,644.644 INFO    ] Initializing speech engine...
[2026-06-12 21:58:11,648.648 INFO    ] 2026-06-12 21:58:11
[2026-06-12 21:58:11,865.865 INFO    ] 2026-06-12 21:58:11
[2026-06-12 21:58:11,894.894 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 21:58:12,077.077 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 21:58:12,087.087 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 21:58:12,213.213 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 21:58:12,276.276 INFO    ] time= 12/06/2026 21:58:12
[2026-06-12 21:58:12,308.308 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 21:58:12,310.310 INFO    ] Checking for existing commands in stream...
[2026-06-12 21:58:12,379.379 INFO    ] No existing commands found in stream
[2026-06-12 21:58:17,390.390 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 21:58:17,393.393 INFO    ] Waiting 3.81 seconds before fallback handling...
[2026-06-12 21:58:21,583.583 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 21:58:21,584.584 INFO    ] Checking for system updates...
[2026-06-12 21:58:21,605.605 INFO    ] 200
[2026-06-12 21:58:21,606.606 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:58:21,642.642 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 21:58:21,643.643 INFO    ] No update needed
[2026-06-12 21:58:21,645.645 INFO    ] Checking for camera pi updates...
[2026-06-12 21:58:21,664.664 INFO    ] 200
[2026-06-12 21:58:21,665.665 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:58:21,688.688 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 21:58:21,734.734 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 21:58:21,735.735 INFO    ] No camera update needed
[2026-06-12 21:58:21,736.736 INFO    ] Script finished. Safe exiting...
[2026-06-12 21:58:21,737.737 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 21:58:21,740.740 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 21:58:21,743.743 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 21:58:23,780.780 INFO    ] ================================================
[2026-06-12 21:58:23,795.795 INFO    ] Launching Daemon at Fri Jun 12 21:58:23 IST 2026
[2026-06-12 21:58:23,806.806 INFO    ] ================================================
[2026-06-12 21:58:24,137.137 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 21:58:24
[2026-06-12 21:58:24,449.449 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 21:58:24,591.591 INFO    ] Initializing speech engine...
[2026-06-12 21:58:24,597.597 INFO    ] 2026-06-12 21:58:24
[2026-06-12 21:58:24,798.798 INFO    ] 2026-06-12 21:58:24
[2026-06-12 21:58:24,830.830 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 21:58:24,951.951 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 21:58:25,014.014 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 21:58:25,151.151 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 21:58:25,204.204 INFO    ] time= 12/06/2026 21:58:25
[2026-06-12 21:58:25,243.243 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 21:58:25,245.245 INFO    ] Checking for existing commands in stream...
[2026-06-12 21:58:25,316.316 INFO    ] No existing commands found in stream
[2026-06-12 21:58:30,330.330 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 21:58:30,333.333 INFO    ] Waiting 0.19 seconds before fallback handling...
[2026-06-12 21:58:30,871.871 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 21:58:30,872.872 INFO    ] Checking for system updates...
[2026-06-12 21:58:30,893.893 INFO    ] 200
[2026-06-12 21:58:30,894.894 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:58:30,924.924 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 21:58:30,926.926 INFO    ] No update needed
[2026-06-12 21:58:30,927.927 INFO    ] Checking for camera pi updates...
[2026-06-12 21:58:30,948.948 INFO    ] 200
[2026-06-12 21:58:30,950.950 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:58:30,974.974 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 21:58:31,037.037 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 21:58:31,038.038 INFO    ] No camera update needed
[2026-06-12 21:58:31,039.039 INFO    ] Script finished. Safe exiting...
[2026-06-12 21:58:31,041.041 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 21:58:31,043.043 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 21:58:31,046.046 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 21:58:33,077.077 INFO    ] ================================================
[2026-06-12 21:58:33,092.092 INFO    ] Launching Daemon at Fri Jun 12 21:58:33 IST 2026
[2026-06-12 21:58:33,103.103 INFO    ] ================================================
[2026-06-12 21:58:33,466.466 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 21:58:33
[2026-06-12 21:58:33,778.778 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 21:58:33,916.916 INFO    ] Initializing speech engine...
[2026-06-12 21:58:33,925.925 INFO    ] 2026-06-12 21:58:33
[2026-06-12 21:58:34,132.132 INFO    ] 2026-06-12 21:58:34
[2026-06-12 21:58:34,161.161 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 21:58:34,346.346 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 21:58:34,355.355 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 21:58:34,485.485 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 21:58:34,550.550 INFO    ] time= 12/06/2026 21:58:34
[2026-06-12 21:58:34,577.577 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 21:58:34,583.583 INFO    ] Checking for existing commands in stream...
[2026-06-12 21:58:34,651.651 INFO    ] No existing commands found in stream
[2026-06-12 21:58:39,660.660 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 21:58:39,663.663 INFO    ] Waiting 1.97 seconds before fallback handling...
[2026-06-12 21:58:42,031.031 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 21:58:42,033.033 INFO    ] Checking for system updates...
[2026-06-12 21:58:42,054.054 INFO    ] 200
[2026-06-12 21:58:42,055.055 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:58:42,091.091 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 21:58:42,093.093 INFO    ] No update needed
[2026-06-12 21:58:42,094.094 INFO    ] Checking for camera pi updates...
[2026-06-12 21:58:42,113.113 INFO    ] 200
[2026-06-12 21:58:42,114.114 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:58:42,137.137 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 21:58:42,189.189 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 21:58:42,190.190 INFO    ] No camera update needed
[2026-06-12 21:58:42,192.192 INFO    ] Script finished. Safe exiting...
[2026-06-12 21:58:42,193.193 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 21:58:42,196.196 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 21:58:42,198.198 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 21:58:44,236.236 INFO    ] ================================================
[2026-06-12 21:58:44,251.251 INFO    ] Launching Daemon at Fri Jun 12 21:58:44 IST 2026
[2026-06-12 21:58:44,263.263 INFO    ] ================================================
[2026-06-12 21:58:44,615.615 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 21:58:44
[2026-06-12 21:58:44,929.929 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 21:58:45,058.058 INFO    ] Initializing speech engine...
[2026-06-12 21:58:45,062.062 INFO    ] 2026-06-12 21:58:45
[2026-06-12 21:58:45,278.278 INFO    ] 2026-06-12 21:58:45
[2026-06-12 21:58:45,307.307 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 21:58:45,491.491 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 21:58:45,499.499 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 21:58:45,621.621 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 21:58:45,687.687 INFO    ] time= 12/06/2026 21:58:45
[2026-06-12 21:58:45,719.719 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 21:58:45,721.721 INFO    ] Checking for existing commands in stream...
[2026-06-12 21:58:45,815.815 INFO    ] No existing commands found in stream
[2026-06-12 21:58:50,824.824 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 21:58:50,827.827 INFO    ] Waiting 0.54 seconds before fallback handling...
[2026-06-12 21:58:51,753.753 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 21:58:51,754.754 INFO    ] Checking for system updates...
[2026-06-12 21:58:51,774.774 INFO    ] 200
[2026-06-12 21:58:51,776.776 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:58:51,808.808 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 21:58:51,809.809 INFO    ] No update needed
[2026-06-12 21:58:51,811.811 INFO    ] Checking for camera pi updates...
[2026-06-12 21:58:51,831.831 INFO    ] 200
[2026-06-12 21:58:51,833.833 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:58:51,856.856 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 21:58:51,998.998 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 21:58:51,999.999 INFO    ] No camera update needed
[2026-06-12 21:58:52,001.001 INFO    ] Script finished. Safe exiting...
[2026-06-12 21:58:52,002.002 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 21:58:52,005.005 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 21:58:52,008.008 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 21:58:54,045.045 INFO    ] ================================================
[2026-06-12 21:58:54,062.062 INFO    ] Launching Daemon at Fri Jun 12 21:58:54 IST 2026
[2026-06-12 21:58:54,074.074 INFO    ] ================================================
[2026-06-12 21:58:54,420.420 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 21:58:54
[2026-06-12 21:58:54,731.731 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 21:58:54,863.863 INFO    ] Initializing speech engine...
[2026-06-12 21:58:54,870.870 INFO    ] 2026-06-12 21:58:54
[2026-06-12 21:58:55,085.085 INFO    ] 2026-06-12 21:58:55
[2026-06-12 21:58:55,113.113 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 21:58:55,298.298 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 21:58:55,303.303 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 21:58:55,433.433 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 21:58:55,494.494 INFO    ] time= 12/06/2026 21:58:55
[2026-06-12 21:58:55,529.529 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 21:58:55,534.534 INFO    ] Checking for existing commands in stream...
[2026-06-12 21:58:55,607.607 INFO    ] No existing commands found in stream
[2026-06-12 21:59:00,615.615 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 21:59:00,618.618 INFO    ] Waiting 0.63 seconds before fallback handling...
[2026-06-12 21:59:01,663.663 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 21:59:01,666.666 INFO    ] Checking for system updates...
[2026-06-12 21:59:01,693.693 INFO    ] 200
[2026-06-12 21:59:01,695.695 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:59:01,733.733 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 21:59:01,734.734 INFO    ] No update needed
[2026-06-12 21:59:01,736.736 INFO    ] Checking for camera pi updates...
[2026-06-12 21:59:01,760.760 INFO    ] 200
[2026-06-12 21:59:01,762.762 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:59:01,790.790 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 21:59:01,850.850 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 21:59:01,852.852 INFO    ] No camera update needed
[2026-06-12 21:59:01,855.855 INFO    ] Script finished. Safe exiting...
[2026-06-12 21:59:01,857.857 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 21:59:01,862.862 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 21:59:01,866.866 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 21:59:03,901.901 INFO    ] ================================================
[2026-06-12 21:59:03,916.916 INFO    ] Launching Daemon at Fri Jun 12 21:59:03 IST 2026
[2026-06-12 21:59:03,928.928 INFO    ] ================================================
[2026-06-12 21:59:04,267.267 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 21:59:04
[2026-06-12 21:59:04,579.579 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 21:59:04,723.723 INFO    ] Initializing speech engine...
[2026-06-12 21:59:04,727.727 INFO    ] 2026-06-12 21:59:04
[2026-06-12 21:59:04,934.934 INFO    ] 2026-06-12 21:59:04
[2026-06-12 21:59:04,963.963 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 21:59:05,149.149 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 21:59:05,158.158 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 21:59:05,283.283 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 21:59:05,349.349 INFO    ] time= 12/06/2026 21:59:05
[2026-06-12 21:59:05,382.382 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 21:59:05,388.388 INFO    ] Checking for existing commands in stream...
[2026-06-12 21:59:05,456.456 INFO    ] No existing commands found in stream
[2026-06-12 21:59:10,480.480 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 21:59:10,483.483 INFO    ] Waiting 1.52 seconds before fallback handling...
[2026-06-12 21:59:12,385.385 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 21:59:12,387.387 INFO    ] Checking for system updates...
[2026-06-12 21:59:12,407.407 INFO    ] 200
[2026-06-12 21:59:12,409.409 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:59:12,442.442 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 21:59:12,443.443 INFO    ] No update needed
[2026-06-12 21:59:12,445.445 INFO    ] Checking for camera pi updates...
[2026-06-12 21:59:12,467.467 INFO    ] 200
[2026-06-12 21:59:12,468.468 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:59:12,492.492 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 21:59:12,549.549 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 21:59:12,551.551 INFO    ] No camera update needed
[2026-06-12 21:59:12,552.552 INFO    ] Script finished. Safe exiting...
[2026-06-12 21:59:12,553.553 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 21:59:12,557.557 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 21:59:12,560.560 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 21:59:14,597.597 INFO    ] ================================================
[2026-06-12 21:59:14,614.614 INFO    ] Launching Daemon at Fri Jun 12 21:59:14 IST 2026
[2026-06-12 21:59:14,625.625 INFO    ] ================================================
[2026-06-12 21:59:14,971.971 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 21:59:14
[2026-06-12 21:59:15,283.283 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 21:59:15,413.413 INFO    ] Initializing speech engine...
[2026-06-12 21:59:15,416.416 INFO    ] 2026-06-12 21:59:15
[2026-06-12 21:59:15,631.631 INFO    ] 2026-06-12 21:59:15
[2026-06-12 21:59:15,660.660 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 21:59:15,843.843 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 21:59:15,853.853 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 21:59:16,037.037 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 21:59:16,068.068 INFO    ] time= 12/06/2026 21:59:16
[2026-06-12 21:59:16,075.075 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 21:59:16,077.077 INFO    ] Checking for existing commands in stream...
[2026-06-12 21:59:16,143.143 INFO    ] No existing commands found in stream
[2026-06-12 21:59:21,157.157 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 21:59:21,160.160 INFO    ] Waiting 1.37 seconds before fallback handling...
[2026-06-12 21:59:22,923.923 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 21:59:22,925.925 INFO    ] Checking for system updates...
[2026-06-12 21:59:22,948.948 INFO    ] 200
[2026-06-12 21:59:22,949.949 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:59:22,989.989 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 21:59:22,990.990 INFO    ] No update needed
[2026-06-12 21:59:22,992.992 INFO    ] Checking for camera pi updates...
[2026-06-12 21:59:23,014.014 INFO    ] 200
[2026-06-12 21:59:23,016.016 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:59:23,039.039 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 21:59:23,082.082 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 21:59:23,084.084 INFO    ] No camera update needed
[2026-06-12 21:59:23,085.085 INFO    ] Script finished. Safe exiting...
[2026-06-12 21:59:23,086.086 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 21:59:23,090.090 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 21:59:23,093.093 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 21:59:25,131.131 INFO    ] ================================================
[2026-06-12 21:59:25,147.147 INFO    ] Launching Daemon at Fri Jun 12 21:59:25 IST 2026
[2026-06-12 21:59:25,158.158 INFO    ] ================================================
[2026-06-12 21:59:25,501.501 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 21:59:25
[2026-06-12 21:59:25,819.819 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 21:59:25,957.957 INFO    ] Initializing speech engine...
[2026-06-12 21:59:25,968.968 INFO    ] 2026-06-12 21:59:25
[2026-06-12 21:59:26,173.173 INFO    ] 2026-06-12 21:59:26
[2026-06-12 21:59:26,202.202 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 21:59:26,384.384 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 21:59:26,394.394 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 21:59:26,540.540 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 21:59:26,592.592 INFO    ] time= 12/06/2026 21:59:26
[2026-06-12 21:59:26,615.615 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 21:59:26,621.621 INFO    ] Checking for existing commands in stream...
[2026-06-12 21:59:26,686.686 INFO    ] No existing commands found in stream
[2026-06-12 21:59:31,691.691 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 21:59:31,693.693 INFO    ] Waiting 2.97 seconds before fallback handling...
[2026-06-12 21:59:35,041.041 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 21:59:35,042.042 INFO    ] Checking for system updates...
[2026-06-12 21:59:35,063.063 INFO    ] 200
[2026-06-12 21:59:35,064.064 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:59:35,103.103 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 21:59:35,105.105 INFO    ] No update needed
[2026-06-12 21:59:35,106.106 INFO    ] Checking for camera pi updates...
[2026-06-12 21:59:35,126.126 INFO    ] 200
[2026-06-12 21:59:35,127.127 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:59:35,154.154 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 21:59:35,202.202 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 21:59:35,203.203 INFO    ] No camera update needed
[2026-06-12 21:59:35,204.204 INFO    ] Script finished. Safe exiting...
[2026-06-12 21:59:35,206.206 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 21:59:35,209.209 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 21:59:35,212.212 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 21:59:37,250.250 INFO    ] ================================================
[2026-06-12 21:59:37,266.266 INFO    ] Launching Daemon at Fri Jun 12 21:59:37 IST 2026
[2026-06-12 21:59:37,277.277 INFO    ] ================================================
[2026-06-12 21:59:37,628.628 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 21:59:37
[2026-06-12 21:59:37,946.946 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 21:59:38,088.088 INFO    ] Initializing speech engine...
[2026-06-12 21:59:38,096.096 INFO    ] 2026-06-12 21:59:38
[2026-06-12 21:59:38,299.299 INFO    ] 2026-06-12 21:59:38
[2026-06-12 21:59:38,328.328 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 21:59:38,486.486 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 21:59:38,525.525 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 21:59:38,666.666 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 21:59:38,710.710 INFO    ] time= 12/06/2026 21:59:38
[2026-06-12 21:59:38,773.773 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 21:59:38,804.804 INFO    ] Checking for existing commands in stream...
[2026-06-12 21:59:38,891.891 INFO    ] No existing commands found in stream
[2026-06-12 21:59:43,902.902 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 21:59:43,905.905 INFO    ] Waiting 1.44 seconds before fallback handling...
[2026-06-12 21:59:45,768.768 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 21:59:45,770.770 INFO    ] Checking for system updates...
[2026-06-12 21:59:45,793.793 INFO    ] 200
[2026-06-12 21:59:45,794.794 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:59:45,824.824 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 21:59:45,825.825 INFO    ] No update needed
[2026-06-12 21:59:45,827.827 INFO    ] Checking for camera pi updates...
[2026-06-12 21:59:45,852.852 INFO    ] 200
[2026-06-12 21:59:45,853.853 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:59:45,879.879 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 21:59:45,939.939 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 21:59:45,941.941 INFO    ] No camera update needed
[2026-06-12 21:59:45,942.942 INFO    ] Script finished. Safe exiting...
[2026-06-12 21:59:45,943.943 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 21:59:45,947.947 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 21:59:45,950.950 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 21:59:47,987.987 INFO    ] ================================================
[2026-06-12 21:59:48,003.003 INFO    ] Launching Daemon at Fri Jun 12 21:59:47 IST 2026
[2026-06-12 21:59:48,014.014 INFO    ] ================================================
[2026-06-12 21:59:48,352.352 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 21:59:48
[2026-06-12 21:59:48,664.664 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 21:59:48,795.795 INFO    ] Initializing speech engine...
[2026-06-12 21:59:48,798.798 INFO    ] 2026-06-12 21:59:48
[2026-06-12 21:59:49,017.017 INFO    ] 2026-06-12 21:59:48
[2026-06-12 21:59:49,047.047 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 21:59:49,235.235 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 21:59:49,243.243 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 21:59:49,368.368 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 21:59:49,424.424 INFO    ] time= 12/06/2026 21:59:49
[2026-06-12 21:59:49,460.460 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 21:59:49,470.470 INFO    ] Checking for existing commands in stream...
[2026-06-12 21:59:49,541.541 INFO    ] No existing commands found in stream
[2026-06-12 21:59:54,551.551 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 21:59:54,554.554 INFO    ] Waiting 0.84 seconds before fallback handling...
[2026-06-12 21:59:55,753.753 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 21:59:55,755.755 INFO    ] Checking for system updates...
[2026-06-12 21:59:55,776.776 INFO    ] 200
[2026-06-12 21:59:55,778.778 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:59:55,811.811 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 21:59:55,812.812 INFO    ] No update needed
[2026-06-12 21:59:55,813.813 INFO    ] Checking for camera pi updates...
[2026-06-12 21:59:55,834.834 INFO    ] 200
[2026-06-12 21:59:55,835.835 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 21:59:55,858.858 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 21:59:55,898.898 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 21:59:55,900.900 INFO    ] No camera update needed
[2026-06-12 21:59:55,901.901 INFO    ] Script finished. Safe exiting...
[2026-06-12 21:59:55,902.902 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 21:59:55,905.905 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 21:59:55,908.908 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 21:59:57,945.945 INFO    ] ================================================
[2026-06-12 21:59:57,962.962 INFO    ] Launching Daemon at Fri Jun 12 21:59:57 IST 2026
[2026-06-12 21:59:57,973.973 INFO    ] ================================================
[2026-06-12 21:59:58,340.340 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 21:59:58
[2026-06-12 21:59:58,652.652 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 21:59:58,783.783 INFO    ] Initializing speech engine...
[2026-06-12 21:59:58,786.786 INFO    ] 2026-06-12 21:59:58
[2026-06-12 21:59:59,006.006 INFO    ] 2026-06-12 21:59:58
[2026-06-12 21:59:59,034.034 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 21:59:59,222.222 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 21:59:59,230.230 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 21:59:59,363.363 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 21:59:59,422.422 INFO    ] time= 12/06/2026 21:59:59
[2026-06-12 21:59:59,455.455 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 21:59:59,461.461 INFO    ] Checking for existing commands in stream...
[2026-06-12 21:59:59,529.529 INFO    ] No existing commands found in stream
[2026-06-12 22:00:04,537.537 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 22:00:04,539.539 INFO    ] Waiting 0.79 seconds before fallback handling...
[2026-06-12 22:00:08,693.693 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 22:00:08,696.696 INFO    ] Checking for system updates...
[2026-06-12 22:00:08,744.744 INFO    ] 200
[2026-06-12 22:00:08,746.746 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:00:08,799.799 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 22:00:08,802.802 INFO    ] No update needed
[2026-06-12 22:00:08,804.804 INFO    ] Checking for camera pi updates...
[2026-06-12 22:00:08,829.829 INFO    ] 200
[2026-06-12 22:00:08,830.830 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:00:08,853.853 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 22:00:08,899.899 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 22:00:08,901.901 INFO    ] No camera update needed
[2026-06-12 22:00:08,902.902 INFO    ] Script finished. Safe exiting...
[2026-06-12 22:00:08,903.903 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 22:00:08,906.906 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 22:00:08,909.909 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 22:00:10,935.935 INFO    ] ================================================
[2026-06-12 22:00:10,946.946 INFO    ] Launching Daemon at Fri Jun 12 22:00:10 IST 2026
[2026-06-12 22:00:10,955.955 INFO    ] ================================================
[2026-06-12 22:00:11,295.295 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 22:00:11
[2026-06-12 22:00:11,688.688 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 22:00:11,845.845 INFO    ] Initializing speech engine...
[2026-06-12 22:00:11,850.850 INFO    ] 2026-06-12 22:00:11
[2026-06-12 22:00:12,072.072 INFO    ] 2026-06-12 22:00:12
[2026-06-12 22:00:12,103.103 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 22:00:12,301.301 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 22:00:12,315.315 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 22:00:12,473.473 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 22:00:12,525.525 INFO    ] time= 12/06/2026 22:00:12
[2026-06-12 22:00:12,551.551 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 22:00:12,620.620 INFO    ] Checking for existing commands in stream...
[2026-06-12 22:00:12,680.680 INFO    ] No existing commands found in stream
[2026-06-12 22:00:17,691.691 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 22:00:17,694.694 INFO    ] Waiting 3.60 seconds before fallback handling...
[2026-06-12 22:00:21,686.686 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 22:00:21,694.694 INFO    ] Checking for system updates...
[2026-06-12 22:00:21,716.716 INFO    ] 200
[2026-06-12 22:00:21,718.718 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:00:21,748.748 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 22:00:21,750.750 INFO    ] No update needed
[2026-06-12 22:00:21,752.752 INFO    ] Checking for camera pi updates...
[2026-06-12 22:00:21,771.771 INFO    ] 200
[2026-06-12 22:00:21,773.773 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:00:21,797.797 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 22:00:21,843.843 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 22:00:21,845.845 INFO    ] No camera update needed
[2026-06-12 22:00:21,846.846 INFO    ] Script finished. Safe exiting...
[2026-06-12 22:00:21,848.848 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 22:00:21,851.851 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 22:00:21,854.854 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 22:00:23,895.895 INFO    ] ================================================
[2026-06-12 22:00:23,911.911 INFO    ] Launching Daemon at Fri Jun 12 22:00:23 IST 2026
[2026-06-12 22:00:23,923.923 INFO    ] ================================================
[2026-06-12 22:00:24,258.258 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 22:00:24
[2026-06-12 22:00:24,569.569 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 22:00:24,699.699 INFO    ] Initializing speech engine...
[2026-06-12 22:00:24,713.713 INFO    ] 2026-06-12 22:00:24
[2026-06-12 22:00:24,918.918 INFO    ] 2026-06-12 22:00:24
[2026-06-12 22:00:24,946.946 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 22:00:25,129.129 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 22:00:25,138.138 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 22:00:25,268.268 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 22:00:25,332.332 INFO    ] time= 12/06/2026 22:00:25
[2026-06-12 22:00:25,359.359 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 22:00:25,361.361 INFO    ] Checking for existing commands in stream...
[2026-06-12 22:00:25,432.432 INFO    ] No existing commands found in stream
[2026-06-12 22:00:30,446.446 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 22:00:30,448.448 INFO    ] Waiting 3.89 seconds before fallback handling...
[2026-06-12 22:00:34,699.699 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 22:00:34,700.700 INFO    ] Checking for system updates...
[2026-06-12 22:00:34,723.723 INFO    ] 200
[2026-06-12 22:00:34,724.724 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:00:34,754.754 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 22:00:34,755.755 INFO    ] No update needed
[2026-06-12 22:00:34,757.757 INFO    ] Checking for camera pi updates...
[2026-06-12 22:00:34,777.777 INFO    ] 200
[2026-06-12 22:00:34,778.778 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:00:34,801.801 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 22:00:34,838.838 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 22:00:34,839.839 INFO    ] No camera update needed
[2026-06-12 22:00:34,840.840 INFO    ] Script finished. Safe exiting...
[2026-06-12 22:00:34,842.842 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 22:00:34,845.845 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 22:00:34,847.847 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 22:00:36,890.890 INFO    ] ================================================
[2026-06-12 22:00:36,905.905 INFO    ] Launching Daemon at Fri Jun 12 22:00:36 IST 2026
[2026-06-12 22:00:36,916.916 INFO    ] ================================================
[2026-06-12 22:00:37,296.296 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 22:00:37
[2026-06-12 22:00:37,632.632 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 22:00:37,768.768 INFO    ] Initializing speech engine...
[2026-06-12 22:00:37,778.778 INFO    ] 2026-06-12 22:00:37
[2026-06-12 22:00:37,981.981 INFO    ] 2026-06-12 22:00:37
[2026-06-12 22:00:38,010.010 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 22:00:38,192.192 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 22:00:38,201.201 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 22:00:38,345.345 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 22:00:38,397.397 INFO    ] time= 12/06/2026 22:00:38
[2026-06-12 22:00:38,420.420 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 22:00:38,426.426 INFO    ] Checking for existing commands in stream...
[2026-06-12 22:00:38,493.493 INFO    ] No existing commands found in stream
[2026-06-12 22:00:43,507.507 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 22:00:43,509.509 INFO    ] Waiting 1.90 seconds before fallback handling...
[2026-06-12 22:00:45,793.793 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 22:00:45,794.794 INFO    ] Checking for system updates...
[2026-06-12 22:00:45,816.816 INFO    ] 200
[2026-06-12 22:00:45,817.817 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:00:45,847.847 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 22:00:45,848.848 INFO    ] No update needed
[2026-06-12 22:00:45,850.850 INFO    ] Checking for camera pi updates...
[2026-06-12 22:00:45,870.870 INFO    ] 200
[2026-06-12 22:00:45,872.872 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:00:45,896.896 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 22:00:45,959.959 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 22:00:45,961.961 INFO    ] No camera update needed
[2026-06-12 22:00:45,962.962 INFO    ] Script finished. Safe exiting...
[2026-06-12 22:00:45,963.963 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 22:00:45,966.966 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 22:00:45,969.969 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 22:00:48,007.007 INFO    ] ================================================
[2026-06-12 22:00:48,023.023 INFO    ] Launching Daemon at Fri Jun 12 22:00:48 IST 2026
[2026-06-12 22:00:48,034.034 INFO    ] ================================================
[2026-06-12 22:00:48,355.355 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 22:00:48
[2026-06-12 22:00:48,667.667 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 22:00:48,797.797 INFO    ] Initializing speech engine...
[2026-06-12 22:00:48,806.806 INFO    ] 2026-06-12 22:00:48
[2026-06-12 22:00:49,021.021 INFO    ] 2026-06-12 22:00:48
[2026-06-12 22:00:49,050.050 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 22:00:49,238.238 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 22:00:49,247.247 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 22:00:49,376.376 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 22:00:49,428.428 INFO    ] time= 12/06/2026 22:00:49
[2026-06-12 22:00:49,471.471 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 22:00:49,477.477 INFO    ] Checking for existing commands in stream...
[2026-06-12 22:00:49,545.545 INFO    ] No existing commands found in stream
[2026-06-12 22:00:54,554.554 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 22:00:54,557.557 INFO    ] Waiting 0.94 seconds before fallback handling...
[2026-06-12 22:00:55,883.883 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 22:00:55,884.884 INFO    ] Checking for system updates...
[2026-06-12 22:00:55,905.905 INFO    ] 200
[2026-06-12 22:00:55,906.906 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:00:55,939.939 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 22:00:55,941.941 INFO    ] No update needed
[2026-06-12 22:00:55,942.942 INFO    ] Checking for camera pi updates...
[2026-06-12 22:00:55,961.961 INFO    ] 200
[2026-06-12 22:00:55,963.963 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:00:55,985.985 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 22:00:56,124.124 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 22:00:56,125.125 INFO    ] No camera update needed
[2026-06-12 22:00:56,127.127 INFO    ] Script finished. Safe exiting...
[2026-06-12 22:00:56,128.128 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 22:00:56,131.131 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 22:00:56,134.134 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 22:00:58,172.172 INFO    ] ================================================
[2026-06-12 22:00:58,188.188 INFO    ] Launching Daemon at Fri Jun 12 22:00:58 IST 2026
[2026-06-12 22:00:58,199.199 INFO    ] ================================================
[2026-06-12 22:00:58,583.583 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 22:00:58
[2026-06-12 22:00:58,925.925 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 22:00:59,065.065 INFO    ] Initializing speech engine...
[2026-06-12 22:00:59,077.077 INFO    ] 2026-06-12 22:00:59
[2026-06-12 22:00:59,301.301 INFO    ] 2026-06-12 22:00:59
[2026-06-12 22:00:59,333.333 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 22:00:59,463.463 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 22:00:59,521.521 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 22:00:59,663.663 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 22:00:59,737.737 INFO    ] time= 12/06/2026 22:00:59
[2026-06-12 22:00:59,783.783 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 22:00:59,794.794 INFO    ] Checking for existing commands in stream...
[2026-06-12 22:00:59,878.878 INFO    ] No existing commands found in stream
[2026-06-12 22:01:04,887.887 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 22:01:04,890.890 INFO    ] Waiting 3.79 seconds before fallback handling...
[2026-06-12 22:01:09,073.073 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 22:01:09,075.075 INFO    ] Checking for system updates...
[2026-06-12 22:01:09,095.095 INFO    ] 200
[2026-06-12 22:01:09,096.096 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:01:09,128.128 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 22:01:09,129.129 INFO    ] No update needed
[2026-06-12 22:01:09,131.131 INFO    ] Checking for camera pi updates...
[2026-06-12 22:01:09,151.151 INFO    ] 200
[2026-06-12 22:01:09,152.152 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:01:09,176.176 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 22:01:09,216.216 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 22:01:09,217.217 INFO    ] No camera update needed
[2026-06-12 22:01:09,219.219 INFO    ] Script finished. Safe exiting...
[2026-06-12 22:01:09,220.220 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 22:01:09,223.223 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 22:01:09,225.225 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 22:01:11,264.264 INFO    ] ================================================
[2026-06-12 22:01:11,280.280 INFO    ] Launching Daemon at Fri Jun 12 22:01:11 IST 2026
[2026-06-12 22:01:11,291.291 INFO    ] ================================================
[2026-06-12 22:01:11,676.676 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 22:01:11
[2026-06-12 22:01:12,009.009 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 22:01:12,170.170 INFO    ] Initializing speech engine...
[2026-06-12 22:01:12,175.175 INFO    ] 2026-06-12 22:01:12
[2026-06-12 22:01:12,378.378 INFO    ] 2026-06-12 22:01:12
[2026-06-12 22:01:12,407.407 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 22:01:12,534.534 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 22:01:12,597.597 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 22:01:12,730.730 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 22:01:12,782.782 INFO    ] time= 12/06/2026 22:01:12
[2026-06-12 22:01:12,821.821 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 22:01:12,826.826 INFO    ] Checking for existing commands in stream...
[2026-06-12 22:01:12,897.897 INFO    ] No existing commands found in stream
[2026-06-12 22:01:17,906.906 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 22:01:17,908.908 INFO    ] Waiting 1.85 seconds before fallback handling...
[2026-06-12 22:01:20,124.124 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 22:01:20,126.126 INFO    ] Checking for system updates...
[2026-06-12 22:01:20,146.146 INFO    ] 200
[2026-06-12 22:01:20,148.148 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:01:20,180.180 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 22:01:20,181.181 INFO    ] No update needed
[2026-06-12 22:01:20,183.183 INFO    ] Checking for camera pi updates...
[2026-06-12 22:01:20,202.202 INFO    ] 200
[2026-06-12 22:01:20,203.203 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:01:20,226.226 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 22:01:20,271.271 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 22:01:20,272.272 INFO    ] No camera update needed
[2026-06-12 22:01:20,273.273 INFO    ] Script finished. Safe exiting...
[2026-06-12 22:01:20,275.275 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 22:01:20,278.278 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 22:01:20,280.280 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 22:01:22,319.319 INFO    ] ================================================
[2026-06-12 22:01:22,335.335 INFO    ] Launching Daemon at Fri Jun 12 22:01:22 IST 2026
[2026-06-12 22:01:22,346.346 INFO    ] ================================================
[2026-06-12 22:01:22,721.721 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 22:01:22
[2026-06-12 22:01:23,038.038 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 22:01:23,172.172 INFO    ] Initializing speech engine...
[2026-06-12 22:01:23,176.176 INFO    ] 2026-06-12 22:01:23
[2026-06-12 22:01:23,406.406 INFO    ] 2026-06-12 22:01:23
[2026-06-12 22:01:23,436.436 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 22:01:23,587.587 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 22:01:23,633.633 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 22:01:23,774.774 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 22:01:23,835.835 INFO    ] time= 12/06/2026 22:01:23
[2026-06-12 22:01:23,869.869 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 22:01:23,880.880 INFO    ] Checking for existing commands in stream...
[2026-06-12 22:01:23,983.983 INFO    ] No existing commands found in stream
[2026-06-12 22:01:28,992.992 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 22:01:28,994.994 INFO    ] Waiting 3.76 seconds before fallback handling...
[2026-06-12 22:01:33,223.223 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 22:01:33,225.225 INFO    ] Checking for system updates...
[2026-06-12 22:01:33,245.245 INFO    ] 200
[2026-06-12 22:01:33,246.246 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:01:33,280.280 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 22:01:33,282.282 INFO    ] No update needed
[2026-06-12 22:01:33,283.283 INFO    ] Checking for camera pi updates...
[2026-06-12 22:01:33,302.302 INFO    ] 200
[2026-06-12 22:01:33,303.303 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:01:33,326.326 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 22:01:33,356.356 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 22:01:33,357.357 INFO    ] No camera update needed
[2026-06-12 22:01:33,358.358 INFO    ] Script finished. Safe exiting...
[2026-06-12 22:01:33,360.360 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 22:01:33,363.363 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 22:01:33,365.365 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 22:01:35,404.404 INFO    ] ================================================
[2026-06-12 22:01:35,420.420 INFO    ] Launching Daemon at Fri Jun 12 22:01:35 IST 2026
[2026-06-12 22:01:35,431.431 INFO    ] ================================================
[2026-06-12 22:01:35,776.776 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 22:01:35
[2026-06-12 22:01:36,090.090 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 22:01:36,222.222 INFO    ] Initializing speech engine...
[2026-06-12 22:01:36,230.230 INFO    ] 2026-06-12 22:01:36
[2026-06-12 22:01:36,443.443 INFO    ] 2026-06-12 22:01:36
[2026-06-12 22:01:36,472.472 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 22:01:36,658.658 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 22:01:36,662.662 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 22:01:36,799.799 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 22:01:36,863.863 INFO    ] time= 12/06/2026 22:01:36
[2026-06-12 22:01:36,891.891 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 22:01:36,898.898 INFO    ] Checking for existing commands in stream...
[2026-06-12 22:01:36,965.965 INFO    ] No existing commands found in stream
[2026-06-12 22:01:41,979.979 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 22:01:41,982.982 INFO    ] Waiting 1.62 seconds before fallback handling...
[2026-06-12 22:01:43,967.967 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 22:01:43,968.968 INFO    ] Checking for system updates...
[2026-06-12 22:01:43,990.990 INFO    ] 200
[2026-06-12 22:01:43,992.992 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:01:44,025.025 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 22:01:44,026.026 INFO    ] No update needed
[2026-06-12 22:01:44,028.028 INFO    ] Checking for camera pi updates...
[2026-06-12 22:01:44,047.047 INFO    ] 200
[2026-06-12 22:01:44,049.049 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:01:44,074.074 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 22:01:44,131.131 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 22:01:44,133.133 INFO    ] No camera update needed
[2026-06-12 22:01:44,134.134 INFO    ] Script finished. Safe exiting...
[2026-06-12 22:01:44,135.135 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 22:01:44,138.138 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 22:01:44,141.141 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 22:01:46,178.178 INFO    ] ================================================
[2026-06-12 22:01:46,193.193 INFO    ] Launching Daemon at Fri Jun 12 22:01:46 IST 2026
[2026-06-12 22:01:46,204.204 INFO    ] ================================================
[2026-06-12 22:01:46,525.525 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 22:01:46
[2026-06-12 22:01:46,836.836 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 22:01:46,980.980 INFO    ] Initializing speech engine...
[2026-06-12 22:01:46,985.985 INFO    ] 2026-06-12 22:01:46
[2026-06-12 22:01:47,189.189 INFO    ] 2026-06-12 22:01:47
[2026-06-12 22:01:47,218.218 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 22:01:47,403.403 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 22:01:47,411.411 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 22:01:47,551.551 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 22:01:47,607.607 INFO    ] time= 12/06/2026 22:01:47
[2026-06-12 22:01:47,632.632 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 22:01:47,638.638 INFO    ] Checking for existing commands in stream...
[2026-06-12 22:01:47,705.705 INFO    ] No existing commands found in stream
[2026-06-12 22:01:52,719.719 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 22:01:52,722.722 INFO    ] Waiting 1.22 seconds before fallback handling...
[2026-06-12 22:01:54,288.288 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 22:01:54,290.290 INFO    ] Checking for system updates...
[2026-06-12 22:01:54,312.312 INFO    ] 200
[2026-06-12 22:01:54,313.313 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:01:54,343.343 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 22:01:54,344.344 INFO    ] No update needed
[2026-06-12 22:01:54,345.345 INFO    ] Checking for camera pi updates...
[2026-06-12 22:01:54,365.365 INFO    ] 200
[2026-06-12 22:01:54,366.366 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:01:54,389.389 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 22:01:54,432.432 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 22:01:54,433.433 INFO    ] No camera update needed
[2026-06-12 22:01:54,435.435 INFO    ] Script finished. Safe exiting...
[2026-06-12 22:01:54,436.436 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 22:01:54,439.439 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 22:01:54,442.442 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 22:01:56,480.480 INFO    ] ================================================
[2026-06-12 22:01:56,495.495 INFO    ] Launching Daemon at Fri Jun 12 22:01:56 IST 2026
[2026-06-12 22:01:56,506.506 INFO    ] ================================================
[2026-06-12 22:01:56,835.835 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 22:01:56
[2026-06-12 22:01:57,146.146 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 22:01:57,283.283 INFO    ] Initializing speech engine...
[2026-06-12 22:01:57,293.293 INFO    ] 2026-06-12 22:01:57
[2026-06-12 22:01:57,497.497 INFO    ] 2026-06-12 22:01:57
[2026-06-12 22:01:57,526.526 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 22:01:57,713.713 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 22:01:57,716.716 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 22:01:57,854.854 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 22:01:57,922.922 INFO    ] time= 12/06/2026 22:01:57
[2026-06-12 22:01:57,947.947 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 22:01:57,953.953 INFO    ] Checking for existing commands in stream...
[2026-06-12 22:01:58,020.020 INFO    ] No existing commands found in stream
[2026-06-12 22:02:03,028.028 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 22:02:03,030.030 INFO    ] Waiting 2.32 seconds before fallback handling...
[2026-06-12 22:02:05,713.713 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 22:02:05,714.714 INFO    ] Checking for system updates...
[2026-06-12 22:02:05,736.736 INFO    ] 200
[2026-06-12 22:02:05,738.738 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:02:05,767.767 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 22:02:05,769.769 INFO    ] No update needed
[2026-06-12 22:02:05,770.770 INFO    ] Checking for camera pi updates...
[2026-06-12 22:02:05,789.789 INFO    ] 200
[2026-06-12 22:02:05,791.791 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:02:05,814.814 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 22:02:05,874.874 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 22:02:05,875.875 INFO    ] No camera update needed
[2026-06-12 22:02:05,877.877 INFO    ] Script finished. Safe exiting...
[2026-06-12 22:02:05,878.878 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 22:02:05,881.881 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 22:02:05,884.884 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 22:02:07,923.923 INFO    ] ================================================
[2026-06-12 22:02:07,939.939 INFO    ] Launching Daemon at Fri Jun 12 22:02:07 IST 2026
[2026-06-12 22:02:07,950.950 INFO    ] ================================================
[2026-06-12 22:02:08,326.326 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 22:02:08
[2026-06-12 22:02:08,642.642 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 22:02:08,785.785 INFO    ] Initializing speech engine...
[2026-06-12 22:02:08,790.790 INFO    ] 2026-06-12 22:02:08
[2026-06-12 22:02:08,992.992 INFO    ] 2026-06-12 22:02:08
[2026-06-12 22:02:09,022.022 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 22:02:09,205.205 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 22:02:09,213.213 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 22:02:09,343.343 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 22:02:09,408.408 INFO    ] time= 12/06/2026 22:02:09
[2026-06-12 22:02:09,433.433 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 22:02:09,439.439 INFO    ] Checking for existing commands in stream...
[2026-06-12 22:02:09,528.528 INFO    ] No existing commands found in stream
[2026-06-12 22:02:14,537.537 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 22:02:14,540.540 INFO    ] Waiting 1.19 seconds before fallback handling...
[2026-06-12 22:02:16,133.133 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 22:02:16,135.135 INFO    ] Checking for system updates...
[2026-06-12 22:02:16,156.156 INFO    ] 200
[2026-06-12 22:02:16,158.158 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:02:16,190.190 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 22:02:16,191.191 INFO    ] No update needed
[2026-06-12 22:02:16,192.192 INFO    ] Checking for camera pi updates...
[2026-06-12 22:02:16,213.213 INFO    ] 200
[2026-06-12 22:02:16,214.214 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:02:16,238.238 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 22:02:16,289.289 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 22:02:16,290.290 INFO    ] No camera update needed
[2026-06-12 22:02:16,291.291 INFO    ] Script finished. Safe exiting...
[2026-06-12 22:02:16,293.293 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 22:02:16,296.296 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 22:02:16,298.298 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 22:02:18,331.331 INFO    ] ================================================
[2026-06-12 22:02:18,340.340 INFO    ] Launching Daemon at Fri Jun 12 22:02:18 IST 2026
[2026-06-12 22:02:18,347.347 INFO    ] ================================================
[2026-06-12 22:02:18,674.674 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 22:02:18
[2026-06-12 22:02:19,019.019 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 22:02:19,164.164 INFO    ] Initializing speech engine...
[2026-06-12 22:02:19,169.169 INFO    ] 2026-06-12 22:02:19
[2026-06-12 22:02:19,388.388 INFO    ] 2026-06-12 22:02:19
[2026-06-12 22:02:19,415.415 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 22:02:19,532.532 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 22:02:19,535.535 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 22:02:19,665.665 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 22:02:19,674.674 INFO    ] time= 12/06/2026 22:02:19
[2026-06-12 22:02:19,680.680 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 22:02:19,695.695 INFO    ] Checking for existing commands in stream...
[2026-06-12 22:02:19,809.809 INFO    ] No existing commands found in stream
[2026-06-12 22:02:24,819.819 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 22:02:24,822.822 INFO    ] Waiting 0.36 seconds before fallback handling...
[2026-06-12 22:02:25,532.532 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 22:02:25,533.533 INFO    ] Checking for system updates...
[2026-06-12 22:02:25,553.553 INFO    ] 200
[2026-06-12 22:02:25,555.555 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:02:25,584.584 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 22:02:25,586.586 INFO    ] No update needed
[2026-06-12 22:02:25,587.587 INFO    ] Checking for camera pi updates...
[2026-06-12 22:02:25,608.608 INFO    ] 200
[2026-06-12 22:02:25,609.609 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:02:25,633.633 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 22:02:25,703.703 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 22:02:25,704.704 INFO    ] No camera update needed
[2026-06-12 22:02:25,705.705 INFO    ] Script finished. Safe exiting...
[2026-06-12 22:02:25,707.707 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 22:02:25,710.710 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 22:02:25,712.712 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 22:02:27,750.750 INFO    ] ================================================
[2026-06-12 22:02:27,767.767 INFO    ] Launching Daemon at Fri Jun 12 22:02:27 IST 2026
[2026-06-12 22:02:27,778.778 INFO    ] ================================================
[2026-06-12 22:02:28,143.143 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 22:02:28
[2026-06-12 22:02:28,454.454 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 22:02:28,584.584 INFO    ] Initializing speech engine...
[2026-06-12 22:02:28,588.588 INFO    ] 2026-06-12 22:02:28
[2026-06-12 22:02:28,805.805 INFO    ] 2026-06-12 22:02:28
[2026-06-12 22:02:28,833.833 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 22:02:29,018.018 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 22:02:29,027.027 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 22:02:29,218.218 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 22:02:29,245.245 INFO    ] time= 12/06/2026 22:02:29
[2026-06-12 22:02:29,251.251 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 22:02:29,253.253 INFO    ] Checking for existing commands in stream...
[2026-06-12 22:02:29,320.320 INFO    ] No existing commands found in stream
[2026-06-12 22:02:34,329.329 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 22:02:34,332.332 INFO    ] Waiting 2.57 seconds before fallback handling...
[2026-06-12 22:02:37,273.273 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 22:02:37,274.274 INFO    ] Checking for system updates...
[2026-06-12 22:02:37,294.294 INFO    ] 200
[2026-06-12 22:02:37,296.296 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:02:37,328.328 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 22:02:37,330.330 INFO    ] No update needed
[2026-06-12 22:02:37,331.331 INFO    ] Checking for camera pi updates...
[2026-06-12 22:02:37,351.351 INFO    ] 200
[2026-06-12 22:02:37,352.352 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:02:37,377.377 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 22:02:37,436.436 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 22:02:37,437.437 INFO    ] No camera update needed
[2026-06-12 22:02:37,438.438 INFO    ] Script finished. Safe exiting...
[2026-06-12 22:02:37,440.440 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 22:02:37,443.443 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 22:02:37,446.446 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 22:02:39,483.483 INFO    ] ================================================
[2026-06-12 22:02:39,499.499 INFO    ] Launching Daemon at Fri Jun 12 22:02:39 IST 2026
[2026-06-12 22:02:39,510.510 INFO    ] ================================================
[2026-06-12 22:02:39,867.867 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 22:02:39
[2026-06-12 22:02:40,184.184 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 22:02:40,316.316 INFO    ] Initializing speech engine...
[2026-06-12 22:02:40,320.320 INFO    ] 2026-06-12 22:02:40
[2026-06-12 22:02:40,535.535 INFO    ] 2026-06-12 22:02:40
[2026-06-12 22:02:40,564.564 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 22:02:40,747.747 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 22:02:40,756.756 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 22:02:40,887.887 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 22:02:40,934.934 INFO    ] time= 12/06/2026 22:02:40
[2026-06-12 22:02:40,972.972 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 22:02:40,996.996 INFO    ] Checking for existing commands in stream...
[2026-06-12 22:02:41,073.073 INFO    ] No existing commands found in stream
[2026-06-12 22:02:46,083.083 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 22:02:46,086.086 INFO    ] Waiting 3.82 seconds before fallback handling...
[2026-06-12 22:02:50,272.272 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 22:02:50,273.273 INFO    ] Checking for system updates...
[2026-06-12 22:02:50,294.294 INFO    ] 200
[2026-06-12 22:02:50,295.295 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:02:50,328.328 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 22:02:50,329.329 INFO    ] No update needed
[2026-06-12 22:02:50,331.331 INFO    ] Checking for camera pi updates...
[2026-06-12 22:02:50,351.351 INFO    ] 200
[2026-06-12 22:02:50,353.353 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:02:50,378.378 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 22:02:50,421.421 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 22:02:50,422.422 INFO    ] No camera update needed
[2026-06-12 22:02:50,424.424 INFO    ] Script finished. Safe exiting...
[2026-06-12 22:02:50,425.425 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 22:02:50,428.428 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 22:02:50,431.431 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 22:02:52,468.468 INFO    ] ================================================
[2026-06-12 22:02:52,484.484 INFO    ] Launching Daemon at Fri Jun 12 22:02:52 IST 2026
[2026-06-12 22:02:52,495.495 INFO    ] ================================================
[2026-06-12 22:02:52,840.840 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 22:02:52
[2026-06-12 22:02:53,153.153 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 22:02:53,290.290 INFO    ] Initializing speech engine...
[2026-06-12 22:02:53,299.299 INFO    ] 2026-06-12 22:02:53
[2026-06-12 22:02:53,503.503 INFO    ] 2026-06-12 22:02:53
[2026-06-12 22:02:53,531.531 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 22:02:53,715.715 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 22:02:53,718.718 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 22:02:53,871.871 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 22:02:53,923.923 INFO    ] time= 12/06/2026 22:02:53
[2026-06-12 22:02:53,946.946 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 22:02:53,952.952 INFO    ] Checking for existing commands in stream...
[2026-06-12 22:02:54,019.019 INFO    ] No existing commands found in stream
[2026-06-12 22:02:59,028.028 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 22:02:59,031.031 INFO    ] Waiting 2.04 seconds before fallback handling...
[2026-06-12 22:03:01,525.525 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 22:03:01,526.526 INFO    ] Checking for system updates...
[2026-06-12 22:03:01,550.550 INFO    ] 200
[2026-06-12 22:03:01,552.552 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:03:01,593.593 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 22:03:01,595.595 INFO    ] No update needed
[2026-06-12 22:03:01,597.597 INFO    ] Checking for camera pi updates...
[2026-06-12 22:03:01,638.638 INFO    ] 200
[2026-06-12 22:03:01,640.640 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:03:01,677.677 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 22:03:01,806.806 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 22:03:01,808.808 INFO    ] No camera update needed
[2026-06-12 22:03:01,810.810 INFO    ] Script finished. Safe exiting...
[2026-06-12 22:03:01,811.811 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 22:03:01,816.816 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 22:03:01,819.819 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 22:03:03,859.859 INFO    ] ================================================
[2026-06-12 22:03:03,875.875 INFO    ] Launching Daemon at Fri Jun 12 22:03:03 IST 2026
[2026-06-12 22:03:03,887.887 INFO    ] ================================================
[2026-06-12 22:03:04,212.212 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 22:03:04
[2026-06-12 22:03:04,524.524 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 22:03:04,655.655 INFO    ] Initializing speech engine...
[2026-06-12 22:03:04,667.667 INFO    ] 2026-06-12 22:03:04
[2026-06-12 22:03:04,873.873 INFO    ] 2026-06-12 22:03:04
[2026-06-12 22:03:04,902.902 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 22:03:05,084.084 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 22:03:05,093.093 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 22:03:05,223.223 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 22:03:05,289.289 INFO    ] time= 12/06/2026 22:03:05
[2026-06-12 22:03:05,315.315 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 22:03:05,317.317 INFO    ] Checking for existing commands in stream...
[2026-06-12 22:03:05,395.395 INFO    ] No existing commands found in stream
[2026-06-12 22:03:10,402.402 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 22:03:10,405.405 INFO    ] Waiting 3.72 seconds before fallback handling...
[2026-06-12 22:03:14,526.526 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 22:03:14,528.528 INFO    ] Checking for system updates...
[2026-06-12 22:03:14,550.550 INFO    ] 200
[2026-06-12 22:03:14,552.552 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:03:14,582.582 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 22:03:14,583.583 INFO    ] No update needed
[2026-06-12 22:03:14,585.585 INFO    ] Checking for camera pi updates...
[2026-06-12 22:03:14,604.604 INFO    ] 200
[2026-06-12 22:03:14,606.606 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:03:14,631.631 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 22:03:14,704.704 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 22:03:14,705.705 INFO    ] No camera update needed
[2026-06-12 22:03:14,706.706 INFO    ] Script finished. Safe exiting...
[2026-06-12 22:03:14,708.708 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 22:03:14,711.711 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 22:03:14,714.714 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 22:03:16,753.753 INFO    ] ================================================
[2026-06-12 22:03:16,769.769 INFO    ] Launching Daemon at Fri Jun 12 22:03:16 IST 2026
[2026-06-12 22:03:16,780.780 INFO    ] ================================================
[2026-06-12 22:03:17,160.160 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 22:03:17
[2026-06-12 22:03:17,500.500 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 22:03:17,653.653 INFO    ] Initializing speech engine...
[2026-06-12 22:03:17,659.659 INFO    ] 2026-06-12 22:03:17
[2026-06-12 22:03:17,867.867 INFO    ] 2026-06-12 22:03:17
[2026-06-12 22:03:17,896.896 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 22:03:18,080.080 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 22:03:18,089.089 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 22:03:18,229.229 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 22:03:18,287.287 INFO    ] time= 12/06/2026 22:03:18
[2026-06-12 22:03:18,309.309 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 22:03:18,316.316 INFO    ] Checking for existing commands in stream...
[2026-06-12 22:03:18,406.406 INFO    ] No existing commands found in stream
[2026-06-12 22:03:23,420.420 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 22:03:23,423.423 INFO    ] Waiting 0.84 seconds before fallback handling...
[2026-06-12 22:03:24,612.612 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 22:03:24,613.613 INFO    ] Checking for system updates...
[2026-06-12 22:03:24,634.634 INFO    ] 200
[2026-06-12 22:03:24,635.635 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:03:24,668.668 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 22:03:24,669.669 INFO    ] No update needed
[2026-06-12 22:03:24,671.671 INFO    ] Checking for camera pi updates...
[2026-06-12 22:03:24,694.694 INFO    ] 200
[2026-06-12 22:03:24,695.695 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:03:24,723.723 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 22:03:24,789.789 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 22:03:24,790.790 INFO    ] No camera update needed
[2026-06-12 22:03:24,792.792 INFO    ] Script finished. Safe exiting...
[2026-06-12 22:03:24,793.793 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 22:03:24,801.801 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 22:03:24,804.804 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 22:03:26,843.843 INFO    ] ================================================
[2026-06-12 22:03:26,858.858 INFO    ] Launching Daemon at Fri Jun 12 22:03:26 IST 2026
[2026-06-12 22:03:26,869.869 INFO    ] ================================================
[2026-06-12 22:03:27,225.225 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 22:03:27
[2026-06-12 22:03:27,563.563 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 22:03:27,714.714 INFO    ] Initializing speech engine...
[2026-06-12 22:03:27,719.719 INFO    ] 2026-06-12 22:03:27
[2026-06-12 22:03:27,926.926 INFO    ] 2026-06-12 22:03:27
[2026-06-12 22:03:27,956.956 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 22:03:28,139.139 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 22:03:28,150.150 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 22:03:28,275.275 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 22:03:28,333.333 INFO    ] time= 12/06/2026 22:03:28
[2026-06-12 22:03:28,370.370 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 22:03:28,376.376 INFO    ] Checking for existing commands in stream...
[2026-06-12 22:03:28,467.467 INFO    ] No existing commands found in stream
[2026-06-12 22:03:33,481.481 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 22:03:33,485.485 INFO    ] Waiting 1.76 seconds before fallback handling...
[2026-06-12 22:03:35,636.636 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 22:03:35,637.637 INFO    ] Checking for system updates...
[2026-06-12 22:03:35,658.658 INFO    ] 200
[2026-06-12 22:03:35,660.660 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:03:35,694.694 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 22:03:35,696.696 INFO    ] No update needed
[2026-06-12 22:03:35,697.697 INFO    ] Checking for camera pi updates...
[2026-06-12 22:03:35,718.718 INFO    ] 200
[2026-06-12 22:03:35,720.720 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:03:35,744.744 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 22:03:35,791.791 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 22:03:35,792.792 INFO    ] No camera update needed
[2026-06-12 22:03:35,794.794 INFO    ] Script finished. Safe exiting...
[2026-06-12 22:03:35,795.795 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 22:03:35,798.798 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 22:03:35,801.801 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 22:03:37,839.839 INFO    ] ================================================
[2026-06-12 22:03:37,856.856 INFO    ] Launching Daemon at Fri Jun 12 22:03:37 IST 2026
[2026-06-12 22:03:37,867.867 INFO    ] ================================================
[2026-06-12 22:03:38,200.200 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 22:03:38
[2026-06-12 22:03:38,512.512 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 22:03:38,643.643 INFO    ] Initializing speech engine...
[2026-06-12 22:03:38,646.646 INFO    ] 2026-06-12 22:03:38
[2026-06-12 22:03:38,864.864 INFO    ] 2026-06-12 22:03:38
[2026-06-12 22:03:38,891.891 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 22:03:39,075.075 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 22:03:39,085.085 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 22:03:39,212.212 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 22:03:39,280.280 INFO    ] time= 12/06/2026 22:03:39
[2026-06-12 22:03:39,303.303 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 22:03:39,310.310 INFO    ] Checking for existing commands in stream...
[2026-06-12 22:03:39,377.377 INFO    ] No existing commands found in stream
[2026-06-12 22:03:44,386.386 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 22:03:44,388.388 INFO    ] Waiting 3.52 seconds before fallback handling...
[2026-06-12 22:03:48,297.297 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 22:03:48,299.299 INFO    ] Checking for system updates...
[2026-06-12 22:03:48,321.321 INFO    ] 200
[2026-06-12 22:03:48,322.322 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:03:48,355.355 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 22:03:48,356.356 INFO    ] No update needed
[2026-06-12 22:03:48,357.357 INFO    ] Checking for camera pi updates...
[2026-06-12 22:03:48,377.377 INFO    ] 200
[2026-06-12 22:03:48,378.378 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:03:48,401.401 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 22:03:48,441.441 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 22:03:48,443.443 INFO    ] No camera update needed
[2026-06-12 22:03:48,444.444 INFO    ] Script finished. Safe exiting...
[2026-06-12 22:03:48,445.445 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 22:03:48,449.449 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 22:03:48,452.452 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 22:03:50,491.491 INFO    ] ================================================
[2026-06-12 22:03:50,506.506 INFO    ] Launching Daemon at Fri Jun 12 22:03:50 IST 2026
[2026-06-12 22:03:50,517.517 INFO    ] ================================================
[2026-06-12 22:03:50,882.882 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 22:03:50
[2026-06-12 22:03:51,192.192 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 22:03:51,321.321 INFO    ] Initializing speech engine...
[2026-06-12 22:03:51,325.325 INFO    ] 2026-06-12 22:03:51
[2026-06-12 22:03:51,524.524 INFO    ] 2026-06-12 22:03:51
[2026-06-12 22:03:51,564.564 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 22:03:51,719.719 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 22:03:51,767.767 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 22:03:51,925.925 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 22:03:51,972.972 INFO    ] time= 12/06/2026 22:03:51
[2026-06-12 22:03:52,007.007 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 22:03:52,032.032 INFO    ] Checking for existing commands in stream...
[2026-06-12 22:03:52,111.111 INFO    ] No existing commands found in stream
[2026-06-12 22:03:57,121.121 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 22:03:57,124.124 INFO    ] Waiting 2.54 seconds before fallback handling...
[2026-06-12 22:04:00,045.045 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 22:04:00,046.046 INFO    ] Checking for system updates...
[2026-06-12 22:04:00,068.068 INFO    ] 200
[2026-06-12 22:04:00,069.069 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:04:00,099.099 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 22:04:00,100.100 INFO    ] No update needed
[2026-06-12 22:04:00,102.102 INFO    ] Checking for camera pi updates...
[2026-06-12 22:04:00,122.122 INFO    ] 200
[2026-06-12 22:04:00,124.124 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:04:00,148.148 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 22:04:00,208.208 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 22:04:00,210.210 INFO    ] No camera update needed
[2026-06-12 22:04:00,211.211 INFO    ] Script finished. Safe exiting...
[2026-06-12 22:04:00,212.212 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 22:04:00,215.215 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 22:04:00,218.218 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 22:04:02,249.249 INFO    ] ================================================
[2026-06-12 22:04:02,257.257 INFO    ] Launching Daemon at Fri Jun 12 22:04:02 IST 2026
[2026-06-12 22:04:02,264.264 INFO    ] ================================================
[2026-06-12 22:04:02,602.602 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 22:04:02
[2026-06-12 22:04:02,936.936 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 22:04:03,078.078 INFO    ] Initializing speech engine...
[2026-06-12 22:04:03,083.083 INFO    ] 2026-06-12 22:04:03
[2026-06-12 22:04:03,284.284 INFO    ] 2026-06-12 22:04:03
[2026-06-12 22:04:03,313.313 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 22:04:03,496.496 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 22:04:03,505.505 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 22:04:03,631.631 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 22:04:03,693.693 INFO    ] time= 12/06/2026 22:04:03
[2026-06-12 22:04:03,725.725 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 22:04:03,727.727 INFO    ] Checking for existing commands in stream...
[2026-06-12 22:04:03,795.795 INFO    ] No existing commands found in stream
[2026-06-12 22:04:08,806.806 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 22:04:08,808.808 INFO    ] Waiting 1.42 seconds before fallback handling...
[2026-06-12 22:04:10,615.615 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 22:04:10,617.617 INFO    ] Checking for system updates...
[2026-06-12 22:04:10,639.639 INFO    ] 200
[2026-06-12 22:04:10,640.640 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:04:10,670.670 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 22:04:10,671.671 INFO    ] No update needed
[2026-06-12 22:04:10,672.672 INFO    ] Checking for camera pi updates...
[2026-06-12 22:04:10,694.694 INFO    ] 200
[2026-06-12 22:04:10,695.695 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:04:10,719.719 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 22:04:10,762.762 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 22:04:10,763.763 INFO    ] No camera update needed
[2026-06-12 22:04:10,764.764 INFO    ] Script finished. Safe exiting...
[2026-06-12 22:04:10,765.765 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 22:04:10,768.768 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 22:04:10,771.771 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 22:04:12,810.810 INFO    ] ================================================
[2026-06-12 22:04:12,826.826 INFO    ] Launching Daemon at Fri Jun 12 22:04:12 IST 2026
[2026-06-12 22:04:12,837.837 INFO    ] ================================================
[2026-06-12 22:04:13,164.164 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 22:04:13
[2026-06-12 22:04:13,477.477 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 22:04:13,613.613 INFO    ] Initializing speech engine...
[2026-06-12 22:04:13,623.623 INFO    ] 2026-06-12 22:04:13
[2026-06-12 22:04:13,827.827 INFO    ] 2026-06-12 22:04:13
[2026-06-12 22:04:13,856.856 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 22:04:14,042.042 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 22:04:14,050.050 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 22:04:14,201.201 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 22:04:14,250.250 INFO    ] time= 12/06/2026 22:04:14
[2026-06-12 22:04:14,271.271 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 22:04:14,278.278 INFO    ] Checking for existing commands in stream...
[2026-06-12 22:04:14,344.344 INFO    ] No existing commands found in stream
[2026-06-12 22:04:19,353.353 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 22:04:19,356.356 INFO    ] Waiting 2.56 seconds before fallback handling...
[2026-06-12 22:04:22,304.304 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 22:04:22,305.305 INFO    ] Checking for system updates...
[2026-06-12 22:04:22,325.325 INFO    ] 200
[2026-06-12 22:04:22,327.327 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:04:22,357.357 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 22:04:22,358.358 INFO    ] No update needed
[2026-06-12 22:04:22,359.359 INFO    ] Checking for camera pi updates...
[2026-06-12 22:04:22,378.378 INFO    ] 200
[2026-06-12 22:04:22,380.380 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:04:22,404.404 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 22:04:22,453.453 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 22:04:22,454.454 INFO    ] No camera update needed
[2026-06-12 22:04:22,455.455 INFO    ] Script finished. Safe exiting...
[2026-06-12 22:04:22,456.456 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 22:04:22,459.459 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 22:04:22,462.462 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 22:04:24,501.501 INFO    ] ================================================
[2026-06-12 22:04:24,517.517 INFO    ] Launching Daemon at Fri Jun 12 22:04:24 IST 2026
[2026-06-12 22:04:24,528.528 INFO    ] ================================================
[2026-06-12 22:04:24,879.879 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 22:04:24
[2026-06-12 22:04:25,218.218 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 22:04:25,368.368 INFO    ] Initializing speech engine...
[2026-06-12 22:04:25,374.374 INFO    ] 2026-06-12 22:04:25
[2026-06-12 22:04:25,581.581 INFO    ] 2026-06-12 22:04:25
[2026-06-12 22:04:25,609.609 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 22:04:25,794.794 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 22:04:25,804.804 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 22:04:25,945.945 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 22:04:26,007.007 INFO    ] time= 12/06/2026 22:04:25
[2026-06-12 22:04:26,032.032 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 22:04:26,038.038 INFO    ] Checking for existing commands in stream...
[2026-06-12 22:04:26,105.105 INFO    ] No existing commands found in stream
[2026-06-12 22:04:31,145.145 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 22:04:31,148.148 INFO    ] Waiting 3.21 seconds before fallback handling...
[2026-06-12 22:04:34,724.724 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 22:04:34,726.726 INFO    ] Checking for system updates...
[2026-06-12 22:04:34,747.747 INFO    ] 200
[2026-06-12 22:04:34,749.749 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:04:34,782.782 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 22:04:34,783.783 INFO    ] No update needed
[2026-06-12 22:04:34,784.784 INFO    ] Checking for camera pi updates...
[2026-06-12 22:04:34,804.804 INFO    ] 200
[2026-06-12 22:04:34,806.806 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:04:34,829.829 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 22:04:34,875.875 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 22:04:34,876.876 INFO    ] No camera update needed
[2026-06-12 22:04:34,877.877 INFO    ] Script finished. Safe exiting...
[2026-06-12 22:04:34,879.879 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 22:04:34,882.882 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 22:04:34,885.885 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 22:04:36,925.925 INFO    ] ================================================
[2026-06-12 22:04:36,941.941 INFO    ] Launching Daemon at Fri Jun 12 22:04:36 IST 2026
[2026-06-12 22:04:36,953.953 INFO    ] ================================================
[2026-06-12 22:04:37,308.308 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 22:04:37
[2026-06-12 22:04:37,619.619 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 22:04:37,752.752 INFO    ] Initializing speech engine...
[2026-06-12 22:04:37,759.759 INFO    ] 2026-06-12 22:04:37
[2026-06-12 22:04:37,973.973 INFO    ] 2026-06-12 22:04:37
[2026-06-12 22:04:38,002.002 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 22:04:38,185.185 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 22:04:38,195.195 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 22:04:38,323.323 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 22:04:38,387.387 INFO    ] time= 12/06/2026 22:04:38
[2026-06-12 22:04:38,414.414 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 22:04:38,420.420 INFO    ] Checking for existing commands in stream...
[2026-06-12 22:04:38,487.487 INFO    ] No existing commands found in stream
[2026-06-12 22:04:43,519.519 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 22:04:43,522.522 INFO    ] Waiting 1.36 seconds before fallback handling...
[2026-06-12 22:04:45,232.232 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 22:04:45,234.234 INFO    ] Checking for system updates...
[2026-06-12 22:04:45,254.254 INFO    ] 200
[2026-06-12 22:04:45,255.255 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:04:45,287.287 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 22:04:45,289.289 INFO    ] No update needed
[2026-06-12 22:04:45,290.290 INFO    ] Checking for camera pi updates...
[2026-06-12 22:04:45,310.310 INFO    ] 200
[2026-06-12 22:04:45,312.312 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:04:45,336.336 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 22:04:45,377.377 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 22:04:45,378.378 INFO    ] No camera update needed
[2026-06-12 22:04:45,379.379 INFO    ] Script finished. Safe exiting...
[2026-06-12 22:04:45,381.381 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 22:04:45,384.384 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 22:04:45,386.386 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 22:04:47,425.425 INFO    ] ================================================
[2026-06-12 22:04:47,442.442 INFO    ] Launching Daemon at Fri Jun 12 22:04:47 IST 2026
[2026-06-12 22:04:47,453.453 INFO    ] ================================================
[2026-06-12 22:04:47,784.784 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 22:04:47
[2026-06-12 22:04:48,096.096 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 22:04:48,233.233 INFO    ] Initializing speech engine...
[2026-06-12 22:04:48,243.243 INFO    ] 2026-06-12 22:04:48
[2026-06-12 22:04:48,445.445 INFO    ] 2026-06-12 22:04:48
[2026-06-12 22:04:48,475.475 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 22:04:48,657.657 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 22:04:48,660.660 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 22:04:48,796.796 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 22:04:48,850.850 INFO    ] time= 12/06/2026 22:04:48
[2026-06-12 22:04:48,884.884 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 22:04:48,889.889 INFO    ] Checking for existing commands in stream...
[2026-06-12 22:04:48,960.960 INFO    ] No existing commands found in stream
[2026-06-12 22:04:53,969.969 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 22:04:53,972.972 INFO    ] Waiting 1.12 seconds before fallback handling...
[2026-06-12 22:04:55,423.423 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 22:04:55,424.424 INFO    ] Checking for system updates...
[2026-06-12 22:04:55,444.444 INFO    ] 200
[2026-06-12 22:04:55,446.446 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:04:55,477.477 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 22:04:55,479.479 INFO    ] No update needed
[2026-06-12 22:04:55,480.480 INFO    ] Checking for camera pi updates...
[2026-06-12 22:04:55,501.501 INFO    ] 200
[2026-06-12 22:04:55,502.502 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:04:55,526.526 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 22:04:55,571.571 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 22:04:55,572.572 INFO    ] No camera update needed
[2026-06-12 22:04:55,574.574 INFO    ] Script finished. Safe exiting...
[2026-06-12 22:04:55,575.575 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 22:04:55,578.578 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 22:04:55,581.581 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 22:04:57,619.619 INFO    ] ================================================
[2026-06-12 22:04:57,634.634 INFO    ] Launching Daemon at Fri Jun 12 22:04:57 IST 2026
[2026-06-12 22:04:57,646.646 INFO    ] ================================================
[2026-06-12 22:04:58,009.009 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 22:04:58
[2026-06-12 22:04:58,327.327 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 22:04:58,471.471 INFO    ] Initializing speech engine...
[2026-06-12 22:04:58,476.476 INFO    ] 2026-06-12 22:04:58
[2026-06-12 22:04:58,679.679 INFO    ] 2026-06-12 22:04:58
[2026-06-12 22:04:58,708.708 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 22:04:58,889.889 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 22:04:58,899.899 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 22:04:59,021.021 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 22:04:59,087.087 INFO    ] time= 12/06/2026 22:04:59
[2026-06-12 22:04:59,119.119 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 22:04:59,125.125 INFO    ] Checking for existing commands in stream...
[2026-06-12 22:04:59,192.192 INFO    ] No existing commands found in stream
[2026-06-12 22:05:04,211.211 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 22:05:04,214.214 INFO    ] Waiting 1.75 seconds before fallback handling...
[2026-06-12 22:05:06,343.343 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 22:05:06,344.344 INFO    ] Checking for system updates...
[2026-06-12 22:05:06,365.365 INFO    ] 200
[2026-06-12 22:05:06,367.367 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:05:06,398.398 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 22:05:06,400.400 INFO    ] No update needed
[2026-06-12 22:05:06,401.401 INFO    ] Checking for camera pi updates...
[2026-06-12 22:05:06,420.420 INFO    ] 200
[2026-06-12 22:05:06,422.422 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:05:06,446.446 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 22:05:06,590.590 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 22:05:06,592.592 INFO    ] No camera update needed
[2026-06-12 22:05:06,593.593 INFO    ] Script finished. Safe exiting...
[2026-06-12 22:05:06,594.594 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 22:05:06,597.597 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 22:05:06,600.600 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 22:05:08,638.638 INFO    ] ================================================
[2026-06-12 22:05:08,653.653 INFO    ] Launching Daemon at Fri Jun 12 22:05:08 IST 2026
[2026-06-12 22:05:08,664.664 INFO    ] ================================================
[2026-06-12 22:05:09,001.001 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 22:05:08
[2026-06-12 22:05:09,314.314 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 22:05:09,443.443 INFO    ] Initializing speech engine...
[2026-06-12 22:05:09,452.452 INFO    ] 2026-06-12 22:05:09
[2026-06-12 22:05:09,663.663 INFO    ] 2026-06-12 22:05:09
[2026-06-12 22:05:09,692.692 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 22:05:09,876.876 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 22:05:09,885.885 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 22:05:10,013.013 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 22:05:10,072.072 INFO    ] time= 12/06/2026 22:05:10
[2026-06-12 22:05:10,104.104 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 22:05:10,111.111 INFO    ] Checking for existing commands in stream...
[2026-06-12 22:05:10,176.176 INFO    ] No existing commands found in stream
[2026-06-12 22:05:15,186.186 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 22:05:15,189.189 INFO    ] Waiting 3.25 seconds before fallback handling...
[2026-06-12 22:05:18,841.841 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 22:05:18,844.844 INFO    ] Checking for system updates...
[2026-06-12 22:05:18,884.884 INFO    ] 200
[2026-06-12 22:05:18,886.886 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:05:18,945.945 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 22:05:18,947.947 INFO    ] No update needed
[2026-06-12 22:05:18,949.949 INFO    ] Checking for camera pi updates...
[2026-06-12 22:05:18,982.982 INFO    ] 200
[2026-06-12 22:05:18,983.983 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:05:19,008.008 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 22:05:19,062.062 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 22:05:19,064.064 INFO    ] No camera update needed
[2026-06-12 22:05:19,065.065 INFO    ] Script finished. Safe exiting...
[2026-06-12 22:05:19,066.066 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 22:05:19,069.069 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 22:05:19,072.072 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 22:05:21,111.111 INFO    ] ================================================
[2026-06-12 22:05:21,127.127 INFO    ] Launching Daemon at Fri Jun 12 22:05:21 IST 2026
[2026-06-12 22:05:21,138.138 INFO    ] ================================================
[2026-06-12 22:05:21,505.505 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 22:05:21
[2026-06-12 22:05:21,817.817 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 22:05:21,961.961 INFO    ] Initializing speech engine...
[2026-06-12 22:05:21,965.965 INFO    ] 2026-06-12 22:05:21
[2026-06-12 22:05:22,169.169 INFO    ] 2026-06-12 22:05:22
[2026-06-12 22:05:22,196.196 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 22:05:22,380.380 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 22:05:22,389.389 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 22:05:22,515.515 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 22:05:22,576.576 INFO    ] time= 12/06/2026 22:05:22
[2026-06-12 22:05:22,608.608 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 22:05:22,615.615 INFO    ] Checking for existing commands in stream...
[2026-06-12 22:05:22,681.681 INFO    ] No existing commands found in stream
[2026-06-12 22:05:27,689.689 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 22:05:27,690.690 INFO    ] Waiting 0.47 seconds before fallback handling...
[2026-06-12 22:05:28,536.536 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 22:05:28,538.538 INFO    ] Checking for system updates...
[2026-06-12 22:05:28,560.560 INFO    ] 200
[2026-06-12 22:05:28,561.561 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:05:28,593.593 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 22:05:28,594.594 INFO    ] No update needed
[2026-06-12 22:05:28,596.596 INFO    ] Checking for camera pi updates...
[2026-06-12 22:05:28,615.615 INFO    ] 200
[2026-06-12 22:05:28,616.616 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:05:28,639.639 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 22:05:28,686.686 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 22:05:28,688.688 INFO    ] No camera update needed
[2026-06-12 22:05:28,689.689 INFO    ] Script finished. Safe exiting...
[2026-06-12 22:05:28,690.690 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 22:05:28,693.693 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 22:05:28,696.696 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 22:05:30,737.737 INFO    ] ================================================
[2026-06-12 22:05:30,753.753 INFO    ] Launching Daemon at Fri Jun 12 22:05:30 IST 2026
[2026-06-12 22:05:30,764.764 INFO    ] ================================================
[2026-06-12 22:05:31,111.111 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 22:05:31
[2026-06-12 22:05:31,429.429 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 22:05:31,562.562 INFO    ] Initializing speech engine...
[2026-06-12 22:05:31,565.565 INFO    ] 2026-06-12 22:05:31
[2026-06-12 22:05:31,774.774 INFO    ] 2026-06-12 22:05:31
[2026-06-12 22:05:31,825.825 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 22:05:32,003.003 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 22:05:32,051.051 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 22:05:32,204.204 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 22:05:32,244.244 INFO    ] time= 12/06/2026 22:05:32
[2026-06-12 22:05:32,313.313 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 22:05:32,348.348 INFO    ] Checking for existing commands in stream...
[2026-06-12 22:05:32,429.429 INFO    ] No existing commands found in stream
[2026-06-12 22:05:37,440.440 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 22:05:37,443.443 INFO    ] Waiting 1.72 seconds before fallback handling...
[2026-06-12 22:05:39,534.534 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 22:05:39,536.536 INFO    ] Checking for system updates...
[2026-06-12 22:05:39,557.557 INFO    ] 200
[2026-06-12 22:05:39,559.559 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:05:39,591.591 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 22:05:39,592.592 INFO    ] No update needed
[2026-06-12 22:05:39,594.594 INFO    ] Checking for camera pi updates...
[2026-06-12 22:05:39,614.614 INFO    ] 200
[2026-06-12 22:05:39,615.615 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:05:39,640.640 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 22:05:39,686.686 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 22:05:39,687.687 INFO    ] No camera update needed
[2026-06-12 22:05:39,689.689 INFO    ] Script finished. Safe exiting...
[2026-06-12 22:05:39,690.690 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 22:05:39,693.693 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 22:05:39,696.696 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 22:05:41,733.733 INFO    ] ================================================
[2026-06-12 22:05:41,749.749 INFO    ] Launching Daemon at Fri Jun 12 22:05:41 IST 2026
[2026-06-12 22:05:41,760.760 INFO    ] ================================================
[2026-06-12 22:05:42,119.119 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 22:05:42
[2026-06-12 22:05:42,438.438 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 22:05:42,577.577 INFO    ] Initializing speech engine...
[2026-06-12 22:05:42,587.587 INFO    ] 2026-06-12 22:05:42
[2026-06-12 22:05:42,791.791 INFO    ] 2026-06-12 22:05:42
[2026-06-12 22:05:42,821.821 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 22:05:43,003.003 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 22:05:43,007.007 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 22:05:43,148.148 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 22:05:43,209.209 INFO    ] time= 12/06/2026 22:05:43
[2026-06-12 22:05:43,233.233 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 22:05:43,239.239 INFO    ] Checking for existing commands in stream...
[2026-06-12 22:05:43,306.306 INFO    ] No existing commands found in stream
[2026-06-12 22:05:48,320.320 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 22:05:48,323.323 INFO    ] Waiting 1.62 seconds before fallback handling...
[2026-06-12 22:05:50,304.304 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 22:05:50,305.305 INFO    ] Checking for system updates...
[2026-06-12 22:05:50,327.327 INFO    ] 200
[2026-06-12 22:05:50,328.328 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:05:50,359.359 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 22:05:50,360.360 INFO    ] No update needed
[2026-06-12 22:05:50,362.362 INFO    ] Checking for camera pi updates...
[2026-06-12 22:05:50,382.382 INFO    ] 200
[2026-06-12 22:05:50,384.384 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:05:50,408.408 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 22:05:50,452.452 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 22:05:50,454.454 INFO    ] No camera update needed
[2026-06-12 22:05:50,455.455 INFO    ] Script finished. Safe exiting...
[2026-06-12 22:05:50,456.456 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 22:05:50,459.459 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 22:05:50,462.462 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 22:05:52,500.500 INFO    ] ================================================
[2026-06-12 22:05:52,515.515 INFO    ] Launching Daemon at Fri Jun 12 22:05:52 IST 2026
[2026-06-12 22:05:52,526.526 INFO    ] ================================================
[2026-06-12 22:05:52,886.886 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 22:05:52
[2026-06-12 22:05:53,198.198 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 22:05:53,340.340 INFO    ] Initializing speech engine...
[2026-06-12 22:05:53,346.346 INFO    ] 2026-06-12 22:05:53
[2026-06-12 22:05:53,548.548 INFO    ] 2026-06-12 22:05:53
[2026-06-12 22:05:53,577.577 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 22:05:53,760.760 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 22:05:53,768.768 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 22:05:53,897.897 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 22:05:53,964.964 INFO    ] time= 12/06/2026 22:05:53
[2026-06-12 22:05:53,989.989 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 22:05:53,995.995 INFO    ] Checking for existing commands in stream...
[2026-06-12 22:05:54,062.062 INFO    ] No existing commands found in stream
[2026-06-12 22:05:59,086.086 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 22:05:59,088.088 INFO    ] Waiting 0.62 seconds before fallback handling...
[2026-06-12 22:06:00,095.095 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 22:06:00,096.096 INFO    ] Checking for system updates...
[2026-06-12 22:06:00,117.117 INFO    ] 200
[2026-06-12 22:06:00,118.118 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:06:00,153.153 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 22:06:00,154.154 INFO    ] No update needed
[2026-06-12 22:06:00,155.155 INFO    ] Checking for camera pi updates...
[2026-06-12 22:06:00,176.176 INFO    ] 200
[2026-06-12 22:06:00,178.178 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:06:00,200.200 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 22:06:00,244.244 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 22:06:00,246.246 INFO    ] No camera update needed
[2026-06-12 22:06:00,247.247 INFO    ] Script finished. Safe exiting...
[2026-06-12 22:06:00,248.248 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 22:06:00,251.251 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 22:06:00,254.254 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 22:06:02,286.286 INFO    ] ================================================
[2026-06-12 22:06:02,300.300 INFO    ] Launching Daemon at Fri Jun 12 22:06:02 IST 2026
[2026-06-12 22:06:02,308.308 INFO    ] ================================================
[2026-06-12 22:06:02,673.673 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 22:06:02
[2026-06-12 22:06:03,048.048 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 22:06:03,192.192 INFO    ] Initializing speech engine...
[2026-06-12 22:06:03,197.197 INFO    ] 2026-06-12 22:06:03
[2026-06-12 22:06:03,399.399 INFO    ] 2026-06-12 22:06:03
[2026-06-12 22:06:03,429.429 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 22:06:03,593.593 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 22:06:03,594.594 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 22:06:03,747.747 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 22:06:03,810.810 INFO    ] time= 12/06/2026 22:06:03
[2026-06-12 22:06:03,841.841 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 22:06:03,848.848 INFO    ] Checking for existing commands in stream...
[2026-06-12 22:06:03,937.937 INFO    ] No existing commands found in stream
[2026-06-12 22:06:08,946.946 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 22:06:08,949.949 INFO    ] Waiting 0.58 seconds before fallback handling...
[2026-06-12 22:06:09,913.913 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 22:06:09,915.915 INFO    ] Checking for system updates...
[2026-06-12 22:06:09,936.936 INFO    ] 200
[2026-06-12 22:06:09,938.938 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:06:09,970.970 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 22:06:09,972.972 INFO    ] No update needed
[2026-06-12 22:06:09,973.973 INFO    ] Checking for camera pi updates...
[2026-06-12 22:06:09,993.993 INFO    ] 200
[2026-06-12 22:06:09,995.995 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:06:10,020.020 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 22:06:10,064.064 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 22:06:10,065.065 INFO    ] No camera update needed
[2026-06-12 22:06:10,066.066 INFO    ] Script finished. Safe exiting...
[2026-06-12 22:06:10,068.068 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 22:06:10,071.071 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 22:06:10,074.074 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 22:06:12,112.112 INFO    ] ================================================
[2026-06-12 22:06:12,127.127 INFO    ] Launching Daemon at Fri Jun 12 22:06:12 IST 2026
[2026-06-12 22:06:12,138.138 INFO    ] ================================================
[2026-06-12 22:06:12,483.483 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 22:06:12
[2026-06-12 22:06:12,800.800 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 22:06:12,941.941 INFO    ] Initializing speech engine...
[2026-06-12 22:06:12,944.944 INFO    ] 2026-06-12 22:06:12
[2026-06-12 22:06:13,176.176 INFO    ] 2026-06-12 22:06:13
[2026-06-12 22:06:13,208.208 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 22:06:13,410.410 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 22:06:13,414.414 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 22:06:13,556.556 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 22:06:13,617.617 INFO    ] time= 12/06/2026 22:06:13
[2026-06-12 22:06:13,658.658 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 22:06:13,665.665 INFO    ] Checking for existing commands in stream...
[2026-06-12 22:06:13,743.743 INFO    ] No existing commands found in stream
[2026-06-12 22:06:18,752.752 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 22:06:18,754.754 INFO    ] Waiting 3.43 seconds before fallback handling...
[2026-06-12 22:06:22,575.575 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 22:06:22,576.576 INFO    ] Checking for system updates...
[2026-06-12 22:06:22,597.597 INFO    ] 200
[2026-06-12 22:06:22,599.599 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:06:22,632.632 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 22:06:22,633.633 INFO    ] No update needed
[2026-06-12 22:06:22,635.635 INFO    ] Checking for camera pi updates...
[2026-06-12 22:06:22,655.655 INFO    ] 200
[2026-06-12 22:06:22,657.657 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:06:22,682.682 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 22:06:22,722.722 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 22:06:22,724.724 INFO    ] No camera update needed
[2026-06-12 22:06:22,725.725 INFO    ] Script finished. Safe exiting...
[2026-06-12 22:06:22,727.727 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 22:06:22,730.730 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 22:06:22,733.733 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 22:06:24,773.773 INFO    ] ================================================
[2026-06-12 22:06:24,789.789 INFO    ] Launching Daemon at Fri Jun 12 22:06:24 IST 2026
[2026-06-12 22:06:24,801.801 INFO    ] ================================================
[2026-06-12 22:06:25,163.163 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 22:06:25
[2026-06-12 22:06:25,476.476 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 22:06:25,617.617 INFO    ] Initializing speech engine...
[2026-06-12 22:06:25,623.623 INFO    ] 2026-06-12 22:06:25
[2026-06-12 22:06:25,826.826 INFO    ] 2026-06-12 22:06:25
[2026-06-12 22:06:25,854.854 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 22:06:26,038.038 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 22:06:26,047.047 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 22:06:26,176.176 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 22:06:26,235.235 INFO    ] time= 12/06/2026 22:06:26
[2026-06-12 22:06:26,268.268 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 22:06:26,274.274 INFO    ] Checking for existing commands in stream...
[2026-06-12 22:06:26,341.341 INFO    ] No existing commands found in stream
[2026-06-12 22:06:31,355.355 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 22:06:31,358.358 INFO    ] Waiting 2.37 seconds before fallback handling...
[2026-06-12 22:06:34,103.103 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 22:06:34,105.105 INFO    ] Checking for system updates...
[2026-06-12 22:06:34,125.125 INFO    ] 200
[2026-06-12 22:06:34,127.127 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:06:34,160.160 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 22:06:34,161.161 INFO    ] No update needed
[2026-06-12 22:06:34,163.163 INFO    ] Checking for camera pi updates...
[2026-06-12 22:06:34,183.183 INFO    ] 200
[2026-06-12 22:06:34,184.184 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:06:34,207.207 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 22:06:34,244.244 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 22:06:34,245.245 INFO    ] No camera update needed
[2026-06-12 22:06:34,246.246 INFO    ] Script finished. Safe exiting...
[2026-06-12 22:06:34,248.248 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 22:06:34,251.251 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 22:06:34,254.254 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 22:06:36,295.295 INFO    ] ================================================
[2026-06-12 22:06:36,311.311 INFO    ] Launching Daemon at Fri Jun 12 22:06:36 IST 2026
[2026-06-12 22:06:36,322.322 INFO    ] ================================================
[2026-06-12 22:06:36,695.695 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 22:06:36
[2026-06-12 22:06:37,008.008 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 22:06:37,150.150 INFO    ] Initializing speech engine...
[2026-06-12 22:06:37,155.155 INFO    ] 2026-06-12 22:06:37
[2026-06-12 22:06:37,359.359 INFO    ] 2026-06-12 22:06:37
[2026-06-12 22:06:37,388.388 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 22:06:37,571.571 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 22:06:37,575.575 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 22:06:37,703.703 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 22:06:37,754.754 INFO    ] time= 12/06/2026 22:06:37
[2026-06-12 22:06:37,801.801 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 22:06:37,803.803 INFO    ] Checking for existing commands in stream...
[2026-06-12 22:06:37,874.874 INFO    ] No existing commands found in stream
[2026-06-12 22:06:42,883.883 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 22:06:42,886.886 INFO    ] Waiting 3.91 seconds before fallback handling...
[2026-06-12 22:06:47,218.218 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 22:06:47,221.221 INFO    ] Checking for system updates...
[2026-06-12 22:06:47,275.275 INFO    ] 200
[2026-06-12 22:06:47,278.278 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:06:47,338.338 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 22:06:47,340.340 INFO    ] No update needed
[2026-06-12 22:06:47,343.343 INFO    ] Checking for camera pi updates...
[2026-06-12 22:06:47,365.365 INFO    ] 200
[2026-06-12 22:06:47,366.366 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:06:47,391.391 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 22:06:47,442.442 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 22:06:47,443.443 INFO    ] No camera update needed
[2026-06-12 22:06:47,444.444 INFO    ] Script finished. Safe exiting...
[2026-06-12 22:06:47,445.445 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 22:06:47,448.448 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 22:06:47,451.451 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 22:06:49,490.490 INFO    ] ================================================
[2026-06-12 22:06:49,506.506 INFO    ] Launching Daemon at Fri Jun 12 22:06:49 IST 2026
[2026-06-12 22:06:49,517.517 INFO    ] ================================================
[2026-06-12 22:06:49,865.865 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 22:06:49
[2026-06-12 22:06:50,182.182 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 22:06:50,316.316 INFO    ] Initializing speech engine...
[2026-06-12 22:06:50,320.320 INFO    ] 2026-06-12 22:06:50
[2026-06-12 22:06:50,524.524 INFO    ] 2026-06-12 22:06:50
[2026-06-12 22:06:50,558.558 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 22:06:50,716.716 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 22:06:50,784.784 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 22:06:50,927.927 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 22:06:50,983.983 INFO    ] time= 12/06/2026 22:06:50
[2026-06-12 22:06:51,024.024 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 22:06:51,036.036 INFO    ] Checking for existing commands in stream...
[2026-06-12 22:06:51,113.113 INFO    ] No existing commands found in stream
[2026-06-12 22:06:56,122.122 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 22:06:56,125.125 INFO    ] Waiting 1.16 seconds before fallback handling...
[2026-06-12 22:06:57,715.715 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 22:06:57,717.717 INFO    ] Checking for system updates...
[2026-06-12 22:06:57,739.739 INFO    ] 200
[2026-06-12 22:06:57,741.741 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:06:57,771.771 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 22:06:57,773.773 INFO    ] No update needed
[2026-06-12 22:06:57,774.774 INFO    ] Checking for camera pi updates...
[2026-06-12 22:06:57,794.794 INFO    ] 200
[2026-06-12 22:06:57,795.795 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:06:57,819.819 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 22:06:57,871.871 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 22:06:57,873.873 INFO    ] No camera update needed
[2026-06-12 22:06:57,874.874 INFO    ] Script finished. Safe exiting...
[2026-06-12 22:06:57,876.876 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 22:06:57,879.879 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 22:06:57,882.882 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 22:06:59,923.923 INFO    ] ================================================
[2026-06-12 22:06:59,940.940 INFO    ] Launching Daemon at Fri Jun 12 22:06:59 IST 2026
[2026-06-12 22:06:59,951.951 INFO    ] ================================================
[2026-06-12 22:07:00,303.303 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 22:07:00
[2026-06-12 22:07:00,621.621 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 22:07:00,760.760 INFO    ] Initializing speech engine...
[2026-06-12 22:07:00,770.770 INFO    ] 2026-06-12 22:07:00
[2026-06-12 22:07:00,974.974 INFO    ] 2026-06-12 22:07:00
[2026-06-12 22:07:01,003.003 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 22:07:01,188.188 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 22:07:01,222.222 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 22:07:01,417.417 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 22:07:01,490.490 INFO    ] time= 12/06/2026 22:07:01
[2026-06-12 22:07:01,531.531 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 22:07:01,538.538 INFO    ] Checking for existing commands in stream...
[2026-06-12 22:07:01,609.609 INFO    ] No existing commands found in stream
[2026-06-12 22:07:06,620.620 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 22:07:06,623.623 INFO    ] Waiting 0.63 seconds before fallback handling...
[2026-06-12 22:07:07,660.660 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 22:07:07,662.662 INFO    ] Checking for system updates...
[2026-06-12 22:07:07,682.682 INFO    ] 200
[2026-06-12 22:07:07,683.683 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:07:07,713.713 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 22:07:07,715.715 INFO    ] No update needed
[2026-06-12 22:07:07,716.716 INFO    ] Checking for camera pi updates...
[2026-06-12 22:07:07,737.737 INFO    ] 200
[2026-06-12 22:07:07,739.739 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:07:07,763.763 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 22:07:07,809.809 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 22:07:07,810.810 INFO    ] No camera update needed
[2026-06-12 22:07:07,812.812 INFO    ] Script finished. Safe exiting...
[2026-06-12 22:07:07,813.813 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 22:07:07,816.816 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 22:07:07,818.818 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 22:07:09,857.857 INFO    ] ================================================
[2026-06-12 22:07:09,873.873 INFO    ] Launching Daemon at Fri Jun 12 22:07:09 IST 2026
[2026-06-12 22:07:09,884.884 INFO    ] ================================================
[2026-06-12 22:07:10,213.213 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 22:07:10
[2026-06-12 22:07:10,524.524 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 22:07:10,652.652 INFO    ] Initializing speech engine...
[2026-06-12 22:07:10,657.657 INFO    ] 2026-06-12 22:07:10
[2026-06-12 22:07:10,872.872 INFO    ] 2026-06-12 22:07:10
[2026-06-12 22:07:10,901.901 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 22:07:11,087.087 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 22:07:11,096.096 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 22:07:11,218.218 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 22:07:11,279.279 INFO    ] time= 12/06/2026 22:07:11
[2026-06-12 22:07:11,312.312 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 22:07:11,317.317 INFO    ] Checking for existing commands in stream...
[2026-06-12 22:07:11,386.386 INFO    ] No existing commands found in stream
[2026-06-12 22:07:16,397.397 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 22:07:16,400.400 INFO    ] Waiting 1.07 seconds before fallback handling...
[2026-06-12 22:07:17,801.801 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 22:07:17,803.803 INFO    ] Checking for system updates...
[2026-06-12 22:07:17,824.824 INFO    ] 200
[2026-06-12 22:07:17,825.825 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:07:17,857.857 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 22:07:17,859.859 INFO    ] No update needed
[2026-06-12 22:07:17,860.860 INFO    ] Checking for camera pi updates...
[2026-06-12 22:07:17,881.881 INFO    ] 200
[2026-06-12 22:07:17,882.882 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:07:17,907.907 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 22:07:18,044.044 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 22:07:18,045.045 INFO    ] No camera update needed
[2026-06-12 22:07:18,047.047 INFO    ] Script finished. Safe exiting...
[2026-06-12 22:07:18,048.048 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 22:07:18,051.051 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 22:07:18,053.053 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 22:07:20,094.094 INFO    ] ================================================
[2026-06-12 22:07:20,110.110 INFO    ] Launching Daemon at Fri Jun 12 22:07:20 IST 2026
[2026-06-12 22:07:20,121.121 INFO    ] ================================================
[2026-06-12 22:07:20,461.461 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 22:07:20
[2026-06-12 22:07:20,781.781 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 22:07:20,920.920 INFO    ] Initializing speech engine...
[2026-06-12 22:07:20,929.929 INFO    ] 2026-06-12 22:07:20
[2026-06-12 22:07:21,136.136 INFO    ] 2026-06-12 22:07:21
[2026-06-12 22:07:21,164.164 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 22:07:21,348.348 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 22:07:21,351.351 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 22:07:21,488.488 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 22:07:21,555.555 INFO    ] time= 12/06/2026 22:07:21
[2026-06-12 22:07:21,579.579 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 22:07:21,581.581 INFO    ] Checking for existing commands in stream...
[2026-06-12 22:07:21,652.652 INFO    ] No existing commands found in stream
[2026-06-12 22:07:26,671.671 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 22:07:26,674.674 INFO    ] Waiting 2.05 seconds before fallback handling...
[2026-06-12 22:07:29,097.097 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 22:07:29,099.099 INFO    ] Checking for system updates...
[2026-06-12 22:07:29,119.119 INFO    ] 200
[2026-06-12 22:07:29,121.121 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:07:29,151.151 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 22:07:29,152.152 INFO    ] No update needed
[2026-06-12 22:07:29,154.154 INFO    ] Checking for camera pi updates...
[2026-06-12 22:07:29,173.173 INFO    ] 200
[2026-06-12 22:07:29,174.174 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:07:29,197.197 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 22:07:29,238.238 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 22:07:29,239.239 INFO    ] No camera update needed
[2026-06-12 22:07:29,241.241 INFO    ] Script finished. Safe exiting...
[2026-06-12 22:07:29,242.242 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 22:07:29,245.245 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 22:07:29,248.248 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 22:07:31,286.286 INFO    ] ================================================
[2026-06-12 22:07:31,298.298 INFO    ] Launching Daemon at Fri Jun 12 22:07:31 IST 2026
[2026-06-12 22:07:31,304.304 INFO    ] ================================================
[2026-06-12 22:07:31,637.637 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 22:07:31
[2026-06-12 22:07:31,982.982 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 22:07:32,138.138 INFO    ] Initializing speech engine...
[2026-06-12 22:07:32,145.145 INFO    ] 2026-06-12 22:07:32
[2026-06-12 22:07:32,342.342 INFO    ] 2026-06-12 22:07:32
[2026-06-12 22:07:32,371.371 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 22:07:32,555.555 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 22:07:32,564.564 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 22:07:32,696.696 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 22:07:32,747.747 INFO    ] time= 12/06/2026 22:07:32
[2026-06-12 22:07:32,782.782 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 22:07:32,805.805 INFO    ] Checking for existing commands in stream...
[2026-06-12 22:07:32,910.910 INFO    ] No existing commands found in stream
[2026-06-12 22:07:37,919.919 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 22:07:37,922.922 INFO    ] Waiting 1.45 seconds before fallback handling...
[2026-06-12 22:07:39,726.726 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 22:07:39,727.727 INFO    ] Checking for system updates...
[2026-06-12 22:07:39,748.748 INFO    ] 200
[2026-06-12 22:07:39,750.750 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:07:39,779.779 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 22:07:39,781.781 INFO    ] No update needed
[2026-06-12 22:07:39,782.782 INFO    ] Checking for camera pi updates...
[2026-06-12 22:07:39,801.801 INFO    ] 200
[2026-06-12 22:07:39,803.803 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:07:39,826.826 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 22:07:39,871.871 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 22:07:39,873.873 INFO    ] No camera update needed
[2026-06-12 22:07:39,874.874 INFO    ] Script finished. Safe exiting...
[2026-06-12 22:07:39,875.875 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 22:07:39,878.878 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 22:07:39,881.881 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 22:07:41,921.921 INFO    ] ================================================
[2026-06-12 22:07:41,936.936 INFO    ] Launching Daemon at Fri Jun 12 22:07:41 IST 2026
[2026-06-12 22:07:41,947.947 INFO    ] ================================================
[2026-06-12 22:07:42,307.307 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 22:07:42
[2026-06-12 22:07:42,645.645 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 22:07:42,798.798 INFO    ] Initializing speech engine...
[2026-06-12 22:07:42,802.802 INFO    ] 2026-06-12 22:07:42
[2026-06-12 22:07:43,010.010 INFO    ] 2026-06-12 22:07:42
[2026-06-12 22:07:43,039.039 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 22:07:43,224.224 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 22:07:43,234.234 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 22:07:43,384.384 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 22:07:43,433.433 INFO    ] time= 12/06/2026 22:07:43
[2026-06-12 22:07:43,454.454 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 22:07:43,461.461 INFO    ] Checking for existing commands in stream...
[2026-06-12 22:07:43,528.528 INFO    ] No existing commands found in stream
[2026-06-12 22:07:48,552.552 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 22:07:48,555.555 INFO    ] Waiting 3.76 seconds before fallback handling...
[2026-06-12 22:07:52,672.672 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 22:07:52,674.674 INFO    ] Checking for system updates...
[2026-06-12 22:07:52,696.696 INFO    ] 200
[2026-06-12 22:07:52,697.697 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:07:52,732.732 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 22:07:52,733.733 INFO    ] No update needed
[2026-06-12 22:07:52,735.735 INFO    ] Checking for camera pi updates...
[2026-06-12 22:07:52,755.755 INFO    ] 200
[2026-06-12 22:07:52,757.757 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:07:52,784.784 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 22:07:52,833.833 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 22:07:52,835.835 INFO    ] No camera update needed
[2026-06-12 22:07:52,836.836 INFO    ] Script finished. Safe exiting...
[2026-06-12 22:07:52,837.837 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 22:07:52,841.841 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 22:07:52,844.844 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 22:07:54,882.882 INFO    ] ================================================
[2026-06-12 22:07:54,897.897 INFO    ] Launching Daemon at Fri Jun 12 22:07:54 IST 2026
[2026-06-12 22:07:54,909.909 INFO    ] ================================================
[2026-06-12 22:07:55,247.247 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 22:07:55
[2026-06-12 22:07:55,563.563 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 22:07:55,696.696 INFO    ] Initializing speech engine...
[2026-06-12 22:07:55,700.700 INFO    ] 2026-06-12 22:07:55
[2026-06-12 22:07:55,928.928 INFO    ] 2026-06-12 22:07:55
[2026-06-12 22:07:55,959.959 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 22:07:56,101.101 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 22:07:56,158.158 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 22:07:56,301.301 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 22:07:56,367.367 INFO    ] time= 12/06/2026 22:07:56
[2026-06-12 22:07:56,407.407 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 22:07:56,409.409 INFO    ] Checking for existing commands in stream...
[2026-06-12 22:07:56,485.485 INFO    ] No existing commands found in stream
[2026-06-12 22:08:01,492.492 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 22:08:01,495.495 INFO    ] Waiting 0.09 seconds before fallback handling...
[2026-06-12 22:08:01,934.934 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 22:08:01,936.936 INFO    ] Checking for system updates...
[2026-06-12 22:08:01,963.963 INFO    ] 200
[2026-06-12 22:08:01,965.965 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:08:02,005.005 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 22:08:02,006.006 INFO    ] No update needed
[2026-06-12 22:08:02,010.010 INFO    ] Checking for camera pi updates...
[2026-06-12 22:08:02,034.034 INFO    ] 200
[2026-06-12 22:08:02,035.035 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:08:02,064.064 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 22:08:02,115.115 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 22:08:02,116.116 INFO    ] No camera update needed
[2026-06-12 22:08:02,118.118 INFO    ] Script finished. Safe exiting...
[2026-06-12 22:08:02,120.120 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 22:08:02,124.124 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 22:08:02,128.128 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 22:08:04,170.170 INFO    ] ================================================
[2026-06-12 22:08:04,185.185 INFO    ] Launching Daemon at Fri Jun 12 22:08:04 IST 2026
[2026-06-12 22:08:04,196.196 INFO    ] ================================================
[2026-06-12 22:08:04,584.584 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 22:08:04
[2026-06-12 22:08:04,924.924 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 22:08:05,076.076 INFO    ] Initializing speech engine...
[2026-06-12 22:08:05,083.083 INFO    ] 2026-06-12 22:08:05
[2026-06-12 22:08:05,291.291 INFO    ] 2026-06-12 22:08:05
[2026-06-12 22:08:05,320.320 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 22:08:05,507.507 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 22:08:05,516.516 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 22:08:05,677.677 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 22:08:05,734.734 INFO    ] time= 12/06/2026 22:08:05
[2026-06-12 22:08:05,757.757 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 22:08:05,764.764 INFO    ] Checking for existing commands in stream...
[2026-06-12 22:08:05,830.830 INFO    ] No existing commands found in stream
[2026-06-12 22:08:10,845.845 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 22:08:10,848.848 INFO    ] Waiting 2.33 seconds before fallback handling...
[2026-06-12 22:08:13,554.554 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 22:08:13,556.556 INFO    ] Checking for system updates...
[2026-06-12 22:08:13,576.576 INFO    ] 200
[2026-06-12 22:08:13,578.578 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:08:13,608.608 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 22:08:13,610.610 INFO    ] No update needed
[2026-06-12 22:08:13,611.611 INFO    ] Checking for camera pi updates...
[2026-06-12 22:08:13,631.631 INFO    ] 200
[2026-06-12 22:08:13,633.633 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:08:13,657.657 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 22:08:13,696.696 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 22:08:13,697.697 INFO    ] No camera update needed
[2026-06-12 22:08:13,699.699 INFO    ] Script finished. Safe exiting...
[2026-06-12 22:08:13,700.700 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 22:08:13,703.703 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 22:08:13,706.706 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 22:08:15,743.743 INFO    ] ================================================
[2026-06-12 22:08:15,758.758 INFO    ] Launching Daemon at Fri Jun 12 22:08:15 IST 2026
[2026-06-12 22:08:15,768.768 INFO    ] ================================================
[2026-06-12 22:08:16,108.108 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 22:08:16
[2026-06-12 22:08:16,425.425 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 22:08:16,570.570 INFO    ] Initializing speech engine...
[2026-06-12 22:08:16,575.575 INFO    ] 2026-06-12 22:08:16
[2026-06-12 22:08:16,778.778 INFO    ] 2026-06-12 22:08:16
[2026-06-12 22:08:16,807.807 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 22:08:16,930.930 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 22:08:16,993.993 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 22:08:17,130.130 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 22:08:17,197.197 INFO    ] time= 12/06/2026 22:08:17
[2026-06-12 22:08:17,221.221 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 22:08:17,228.228 INFO    ] Checking for existing commands in stream...
[2026-06-12 22:08:17,319.319 INFO    ] No existing commands found in stream
[2026-06-12 22:08:22,328.328 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 22:08:22,331.331 INFO    ] Waiting 1.94 seconds before fallback handling...
[2026-06-12 22:08:24,616.616 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 22:08:24,618.618 INFO    ] Checking for system updates...
[2026-06-12 22:08:24,638.638 INFO    ] 200
[2026-06-12 22:08:24,640.640 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:08:24,672.672 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 22:08:24,673.673 INFO    ] No update needed
[2026-06-12 22:08:24,674.674 INFO    ] Checking for camera pi updates...
[2026-06-12 22:08:24,695.695 INFO    ] 200
[2026-06-12 22:08:24,696.696 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:08:24,720.720 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 22:08:24,770.770 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 22:08:24,772.772 INFO    ] No camera update needed
[2026-06-12 22:08:24,773.773 INFO    ] Script finished. Safe exiting...
[2026-06-12 22:08:24,774.774 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 22:08:24,777.777 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 22:08:24,780.780 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 22:08:26,819.819 INFO    ] ================================================
[2026-06-12 22:08:26,835.835 INFO    ] Launching Daemon at Fri Jun 12 22:08:26 IST 2026
[2026-06-12 22:08:26,847.847 INFO    ] ================================================
[2026-06-12 22:08:27,181.181 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 22:08:27
[2026-06-12 22:08:27,493.493 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 22:08:27,622.622 INFO    ] Initializing speech engine...
[2026-06-12 22:08:27,626.626 INFO    ] 2026-06-12 22:08:27
[2026-06-12 22:08:27,842.842 INFO    ] 2026-06-12 22:08:27
[2026-06-12 22:08:27,871.871 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 22:08:28,056.056 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 22:08:28,060.060 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 22:08:28,231.231 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 22:08:28,280.280 INFO    ] time= 12/06/2026 22:08:28
[2026-06-12 22:08:28,291.291 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 22:08:28,297.297 INFO    ] Checking for existing commands in stream...
[2026-06-12 22:08:28,363.363 INFO    ] No existing commands found in stream
[2026-06-12 22:08:33,377.377 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 22:08:33,380.380 INFO    ] Waiting 0.31 seconds before fallback handling...
[2026-06-12 22:08:34,275.275 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 22:08:34,277.277 INFO    ] Checking for system updates...
[2026-06-12 22:08:34,297.297 INFO    ] 200
[2026-06-12 22:08:34,299.299 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:08:34,328.328 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 22:08:34,330.330 INFO    ] No update needed
[2026-06-12 22:08:34,331.331 INFO    ] Checking for camera pi updates...
[2026-06-12 22:08:34,350.350 INFO    ] 200
[2026-06-12 22:08:34,352.352 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:08:34,374.374 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 22:08:34,397.397 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 22:08:34,398.398 INFO    ] No camera update needed
[2026-06-12 22:08:34,399.399 INFO    ] Script finished. Safe exiting...
[2026-06-12 22:08:34,401.401 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 22:08:34,403.403 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 22:08:34,406.406 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 22:08:36,444.444 INFO    ] ================================================
[2026-06-12 22:08:36,460.460 INFO    ] Launching Daemon at Fri Jun 12 22:08:36 IST 2026
[2026-06-12 22:08:36,471.471 INFO    ] ================================================
[2026-06-12 22:08:36,827.827 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 22:08:36
[2026-06-12 22:08:37,167.167 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 22:08:37,310.310 INFO    ] Initializing speech engine...
[2026-06-12 22:08:37,320.320 INFO    ] 2026-06-12 22:08:37
[2026-06-12 22:08:37,529.529 INFO    ] 2026-06-12 22:08:37
[2026-06-12 22:08:37,561.561 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 22:08:37,743.743 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 22:08:37,753.753 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 22:08:37,881.881 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 22:08:37,948.948 INFO    ] time= 12/06/2026 22:08:37
[2026-06-12 22:08:37,973.973 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 22:08:37,979.979 INFO    ] Checking for existing commands in stream...
[2026-06-12 22:08:38,046.046 INFO    ] No existing commands found in stream
[2026-06-12 22:08:43,060.060 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 22:08:43,063.063 INFO    ] Waiting 1.24 seconds before fallback handling...
[2026-06-12 22:08:44,674.674 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 22:08:44,676.676 INFO    ] Checking for system updates...
[2026-06-12 22:08:44,697.697 INFO    ] 200
[2026-06-12 22:08:44,698.698 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:08:44,733.733 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 22:08:44,734.734 INFO    ] No update needed
[2026-06-12 22:08:44,735.735 INFO    ] Checking for camera pi updates...
[2026-06-12 22:08:44,754.754 INFO    ] 200
[2026-06-12 22:08:44,756.756 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:08:44,783.783 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 22:08:44,829.829 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 22:08:44,831.831 INFO    ] No camera update needed
[2026-06-12 22:08:44,832.832 INFO    ] Script finished. Safe exiting...
[2026-06-12 22:08:44,833.833 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 22:08:44,836.836 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 22:08:44,839.839 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 22:08:46,868.868 INFO    ] ================================================
[2026-06-12 22:08:46,877.877 INFO    ] Launching Daemon at Fri Jun 12 22:08:46 IST 2026
[2026-06-12 22:08:46,883.883 INFO    ] ================================================
[2026-06-12 22:08:47,232.232 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 22:08:47
[2026-06-12 22:08:47,543.543 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 22:08:47,674.674 INFO    ] Initializing speech engine...
[2026-06-12 22:08:47,677.677 INFO    ] 2026-06-12 22:08:47
[2026-06-12 22:08:47,909.909 INFO    ] 2026-06-12 22:08:47
[2026-06-12 22:08:47,939.939 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 22:08:48,142.142 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 22:08:48,146.146 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 22:08:48,285.285 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 22:08:48,346.346 INFO    ] time= 12/06/2026 22:08:48
[2026-06-12 22:08:48,376.376 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 22:08:48,377.377 INFO    ] Checking for existing commands in stream...
[2026-06-12 22:08:48,442.442 INFO    ] No existing commands found in stream
[2026-06-12 22:08:53,451.451 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 22:08:53,454.454 INFO    ] Waiting 0.96 seconds before fallback handling...
[2026-06-12 22:08:54,794.794 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 22:08:54,795.795 INFO    ] Checking for system updates...
[2026-06-12 22:08:54,816.816 INFO    ] 200
[2026-06-12 22:08:54,817.817 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:08:54,847.847 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 22:08:54,848.848 INFO    ] No update needed
[2026-06-12 22:08:54,850.850 INFO    ] Checking for camera pi updates...
[2026-06-12 22:08:54,869.869 INFO    ] 200
[2026-06-12 22:08:54,870.870 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:08:54,893.893 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 22:08:54,936.936 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 22:08:54,937.937 INFO    ] No camera update needed
[2026-06-12 22:08:54,939.939 INFO    ] Script finished. Safe exiting...
[2026-06-12 22:08:54,940.940 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 22:08:54,943.943 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 22:08:54,946.946 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 22:08:56,984.984 INFO    ] ================================================
[2026-06-12 22:08:57,000.000 INFO    ] Launching Daemon at Fri Jun 12 22:08:56 IST 2026
[2026-06-12 22:08:57,011.011 INFO    ] ================================================
[2026-06-12 22:08:57,377.377 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 22:08:57
[2026-06-12 22:08:57,720.720 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 22:08:57,862.862 INFO    ] Initializing speech engine...
[2026-06-12 22:08:57,875.875 INFO    ] 2026-06-12 22:08:57
[2026-06-12 22:08:58,087.087 INFO    ] 2026-06-12 22:08:58
[2026-06-12 22:08:58,117.117 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 22:08:58,305.305 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 22:08:58,313.313 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 22:08:58,444.444 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 22:08:58,511.511 INFO    ] time= 12/06/2026 22:08:58
[2026-06-12 22:08:58,536.536 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 22:08:58,542.542 INFO    ] Checking for existing commands in stream...
[2026-06-12 22:08:58,633.633 INFO    ] No existing commands found in stream
[2026-06-12 22:09:03,646.646 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 22:09:03,648.648 INFO    ] Waiting 2.13 seconds before fallback handling...
[2026-06-12 22:09:06,148.148 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 22:09:06,150.150 INFO    ] Checking for system updates...
[2026-06-12 22:09:06,170.170 INFO    ] 200
[2026-06-12 22:09:06,172.172 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:09:06,204.204 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 22:09:06,205.205 INFO    ] No update needed
[2026-06-12 22:09:06,207.207 INFO    ] Checking for camera pi updates...
[2026-06-12 22:09:06,227.227 INFO    ] 200
[2026-06-12 22:09:06,228.228 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:09:06,253.253 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 22:09:06,278.278 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 22:09:06,279.279 INFO    ] No camera update needed
[2026-06-12 22:09:06,281.281 INFO    ] Script finished. Safe exiting...
[2026-06-12 22:09:06,282.282 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 22:09:06,285.285 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 22:09:06,287.287 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 22:09:08,326.326 INFO    ] ================================================
[2026-06-12 22:09:08,342.342 INFO    ] Launching Daemon at Fri Jun 12 22:09:08 IST 2026
[2026-06-12 22:09:08,353.353 INFO    ] ================================================
[2026-06-12 22:09:08,717.717 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 22:09:08
[2026-06-12 22:09:09,032.032 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 22:09:09,163.163 INFO    ] Initializing speech engine...
[2026-06-12 22:09:09,167.167 INFO    ] 2026-06-12 22:09:09
[2026-06-12 22:09:09,386.386 INFO    ] 2026-06-12 22:09:09
[2026-06-12 22:09:09,415.415 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 22:09:09,602.602 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 22:09:09,611.611 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 22:09:09,768.768 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 22:09:09,812.812 INFO    ] time= 12/06/2026 22:09:09
[2026-06-12 22:09:09,834.834 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 22:09:09,841.841 INFO    ] Checking for existing commands in stream...
[2026-06-12 22:09:09,908.908 INFO    ] No existing commands found in stream
[2026-06-12 22:09:14,917.917 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 22:09:14,920.920 INFO    ] Waiting 2.85 seconds before fallback handling...
[2026-06-12 22:09:18,174.174 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 22:09:18,175.175 INFO    ] Checking for system updates...
[2026-06-12 22:09:18,196.196 INFO    ] 200
[2026-06-12 22:09:18,197.197 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:09:18,227.227 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 22:09:18,229.229 INFO    ] No update needed
[2026-06-12 22:09:18,230.230 INFO    ] Checking for camera pi updates...
[2026-06-12 22:09:18,250.250 INFO    ] 200
[2026-06-12 22:09:18,251.251 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:09:18,274.274 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 22:09:18,324.324 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 22:09:18,325.325 INFO    ] No camera update needed
[2026-06-12 22:09:18,326.326 INFO    ] Script finished. Safe exiting...
[2026-06-12 22:09:18,328.328 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 22:09:18,331.331 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 22:09:18,333.333 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 22:09:20,371.371 INFO    ] ================================================
[2026-06-12 22:09:20,387.387 INFO    ] Launching Daemon at Fri Jun 12 22:09:20 IST 2026
[2026-06-12 22:09:20,398.398 INFO    ] ================================================
[2026-06-12 22:09:20,759.759 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 22:09:20
[2026-06-12 22:09:21,077.077 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 22:09:21,221.221 INFO    ] Initializing speech engine...
[2026-06-12 22:09:21,226.226 INFO    ] 2026-06-12 22:09:21
[2026-06-12 22:09:21,430.430 INFO    ] 2026-06-12 22:09:21
[2026-06-12 22:09:21,459.459 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 22:09:21,592.592 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 22:09:21,646.646 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 22:09:21,783.783 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 22:09:21,842.842 INFO    ] time= 12/06/2026 22:09:21
[2026-06-12 22:09:21,875.875 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 22:09:21,876.876 INFO    ] Checking for existing commands in stream...
[2026-06-12 22:09:21,947.947 INFO    ] No existing commands found in stream
[2026-06-12 22:09:26,962.962 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 22:09:26,964.964 INFO    ] Waiting 0.52 seconds before fallback handling...
[2026-06-12 22:09:27,883.883 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 22:09:27,884.884 INFO    ] Checking for system updates...
[2026-06-12 22:09:27,905.905 INFO    ] 200
[2026-06-12 22:09:27,906.906 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:09:27,936.936 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 22:09:27,937.937 INFO    ] No update needed
[2026-06-12 22:09:27,938.938 INFO    ] Checking for camera pi updates...
[2026-06-12 22:09:27,957.957 INFO    ] 200
[2026-06-12 22:09:27,958.958 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:09:27,989.989 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 22:09:28,128.128 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 22:09:28,129.129 INFO    ] No camera update needed
[2026-06-12 22:09:28,130.130 INFO    ] Script finished. Safe exiting...
[2026-06-12 22:09:28,132.132 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 22:09:28,134.134 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 22:09:28,137.137 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 22:09:30,175.175 INFO    ] ================================================
[2026-06-12 22:09:30,191.191 INFO    ] Launching Daemon at Fri Jun 12 22:09:30 IST 2026
[2026-06-12 22:09:30,202.202 INFO    ] ================================================
[2026-06-12 22:09:30,570.570 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 22:09:30
[2026-06-12 22:09:30,886.886 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 22:09:31,030.030 INFO    ] Initializing speech engine...
[2026-06-12 22:09:31,035.035 INFO    ] 2026-06-12 22:09:31
[2026-06-12 22:09:31,239.239 INFO    ] 2026-06-12 22:09:31
[2026-06-12 22:09:31,268.268 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 22:09:31,451.451 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 22:09:31,461.461 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 22:09:31,611.611 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 22:09:31,660.660 INFO    ] time= 12/06/2026 22:09:31
[2026-06-12 22:09:31,684.684 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 22:09:31,754.754 INFO    ] Checking for existing commands in stream...
[2026-06-12 22:09:31,819.819 INFO    ] No existing commands found in stream
[2026-06-12 22:09:36,827.827 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 22:09:36,830.830 INFO    ] Waiting 0.04 seconds before fallback handling...
[2026-06-12 22:09:37,224.224 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 22:09:37,226.226 INFO    ] Checking for system updates...
[2026-06-12 22:09:37,248.248 INFO    ] 200
[2026-06-12 22:09:37,249.249 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:09:37,279.279 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 22:09:37,280.280 INFO    ] No update needed
[2026-06-12 22:09:37,282.282 INFO    ] Checking for camera pi updates...
[2026-06-12 22:09:37,307.307 INFO    ] 200
[2026-06-12 22:09:37,308.308 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:09:37,333.333 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 22:09:37,374.374 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 22:09:37,375.375 INFO    ] No camera update needed
[2026-06-12 22:09:37,377.377 INFO    ] Script finished. Safe exiting...
[2026-06-12 22:09:37,378.378 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 22:09:37,381.381 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 22:09:37,383.383 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 22:09:39,421.421 INFO    ] ================================================
[2026-06-12 22:09:39,438.438 INFO    ] Launching Daemon at Fri Jun 12 22:09:39 IST 2026
[2026-06-12 22:09:39,449.449 INFO    ] ================================================
[2026-06-12 22:09:39,793.793 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 22:09:39
[2026-06-12 22:09:40,104.104 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 22:09:40,247.247 INFO    ] Initializing speech engine...
[2026-06-12 22:09:40,252.252 INFO    ] 2026-06-12 22:09:40
[2026-06-12 22:09:40,456.456 INFO    ] 2026-06-12 22:09:40
[2026-06-12 22:09:40,484.484 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 22:09:40,667.667 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 22:09:40,675.675 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 22:09:40,805.805 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 22:09:40,869.869 INFO    ] time= 12/06/2026 22:09:40
[2026-06-12 22:09:40,895.895 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 22:09:40,901.901 INFO    ] Checking for existing commands in stream...
[2026-06-12 22:09:40,968.968 INFO    ] No existing commands found in stream
[2026-06-12 22:09:45,977.977 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 22:09:45,979.979 INFO    ] Waiting 0.42 seconds before fallback handling...
[2026-06-12 22:09:46,778.778 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 22:09:46,779.779 INFO    ] Checking for system updates...
[2026-06-12 22:09:46,800.800 INFO    ] 200
[2026-06-12 22:09:46,802.802 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:09:46,832.832 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 22:09:46,833.833 INFO    ] No update needed
[2026-06-12 22:09:46,834.834 INFO    ] Checking for camera pi updates...
[2026-06-12 22:09:46,854.854 INFO    ] 200
[2026-06-12 22:09:46,855.855 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:09:46,880.880 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 22:09:46,937.937 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 22:09:46,938.938 INFO    ] No camera update needed
[2026-06-12 22:09:46,939.939 INFO    ] Script finished. Safe exiting...
[2026-06-12 22:09:46,941.941 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 22:09:46,944.944 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 22:09:46,947.947 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 22:09:48,985.985 INFO    ] ================================================
[2026-06-12 22:09:49,001.001 INFO    ] Launching Daemon at Fri Jun 12 22:09:48 IST 2026
[2026-06-12 22:09:49,012.012 INFO    ] ================================================
[2026-06-12 22:09:49,354.354 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 22:09:49
[2026-06-12 22:09:49,692.692 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 22:09:49,833.833 INFO    ] Initializing speech engine...
[2026-06-12 22:09:49,846.846 INFO    ] 2026-06-12 22:09:49
[2026-06-12 22:09:50,059.059 INFO    ] 2026-06-12 22:09:50
[2026-06-12 22:09:50,088.088 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 22:09:50,273.273 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 22:09:50,284.284 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 22:09:50,429.429 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 22:09:50,483.483 INFO    ] time= 12/06/2026 22:09:50
[2026-06-12 22:09:50,505.505 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 22:09:50,512.512 INFO    ] Checking for existing commands in stream...
[2026-06-12 22:09:50,580.580 INFO    ] No existing commands found in stream
[2026-06-12 22:09:55,604.604 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 22:09:55,607.607 INFO    ] Waiting 2.16 seconds before fallback handling...
[2026-06-12 22:09:58,144.144 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 22:09:58,146.146 INFO    ] Checking for system updates...
[2026-06-12 22:09:58,170.170 INFO    ] 200
[2026-06-12 22:09:58,172.172 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:09:58,202.202 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 22:09:58,204.204 INFO    ] No update needed
[2026-06-12 22:09:58,205.205 INFO    ] Checking for camera pi updates...
[2026-06-12 22:09:58,224.224 INFO    ] 200
[2026-06-12 22:09:58,226.226 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:09:58,249.249 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 22:09:58,302.302 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 22:09:58,303.303 INFO    ] No camera update needed
[2026-06-12 22:09:58,305.305 INFO    ] Script finished. Safe exiting...
[2026-06-12 22:09:58,306.306 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 22:09:58,309.309 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 22:09:58,312.312 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 22:10:00,350.350 INFO    ] ================================================
[2026-06-12 22:10:00,365.365 INFO    ] Launching Daemon at Fri Jun 12 22:10:00 IST 2026
[2026-06-12 22:10:00,376.376 INFO    ] ================================================
[2026-06-12 22:10:00,739.739 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 22:10:00
[2026-06-12 22:10:01,052.052 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 22:10:01,182.182 INFO    ] Initializing speech engine...
[2026-06-12 22:10:01,190.190 INFO    ] 2026-06-12 22:10:01
[2026-06-12 22:10:01,401.401 INFO    ] 2026-06-12 22:10:01
[2026-06-12 22:10:01,431.431 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 22:10:01,612.612 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 22:10:01,622.622 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 22:10:01,768.768 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 22:10:01,820.820 INFO    ] time= 12/06/2026 22:10:01
[2026-06-12 22:10:01,849.849 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 22:10:01,910.910 INFO    ] Checking for existing commands in stream...
[2026-06-12 22:10:01,991.991 INFO    ] No existing commands found in stream
[2026-06-12 22:10:07,000.000 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 22:10:07,003.003 INFO    ] Waiting 0.25 seconds before fallback handling...
[2026-06-12 22:10:08,203.203 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 22:10:08,206.206 INFO    ] Checking for system updates...
[2026-06-12 22:10:08,243.243 INFO    ] 200
[2026-06-12 22:10:08,245.245 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:10:08,299.299 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 22:10:08,301.301 INFO    ] No update needed
[2026-06-12 22:10:08,302.302 INFO    ] Checking for camera pi updates...
[2026-06-12 22:10:08,323.323 INFO    ] 200
[2026-06-12 22:10:08,325.325 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:10:08,348.348 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 22:10:08,390.390 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 22:10:08,391.391 INFO    ] No camera update needed
[2026-06-12 22:10:08,393.393 INFO    ] Script finished. Safe exiting...
[2026-06-12 22:10:08,394.394 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 22:10:08,397.397 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 22:10:08,400.400 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 22:10:10,440.440 INFO    ] ================================================
[2026-06-12 22:10:10,456.456 INFO    ] Launching Daemon at Fri Jun 12 22:10:10 IST 2026
[2026-06-12 22:10:10,468.468 INFO    ] ================================================
[2026-06-12 22:10:10,818.818 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 22:10:10
[2026-06-12 22:10:11,136.136 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 22:10:11,280.280 INFO    ] Initializing speech engine...
[2026-06-12 22:10:11,285.285 INFO    ] 2026-06-12 22:10:11
[2026-06-12 22:10:11,489.489 INFO    ] 2026-06-12 22:10:11
[2026-06-12 22:10:11,517.517 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 22:10:11,686.686 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 22:10:11,705.705 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 22:10:11,834.834 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 22:10:11,884.884 INFO    ] time= 12/06/2026 22:10:11
[2026-06-12 22:10:11,924.924 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 22:10:11,934.934 INFO    ] Checking for existing commands in stream...
[2026-06-12 22:10:12,006.006 INFO    ] No existing commands found in stream
[2026-06-12 22:10:17,020.020 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 22:10:17,023.023 INFO    ] Waiting 2.98 seconds before fallback handling...
[2026-06-12 22:10:20,375.375 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 22:10:20,377.377 INFO    ] Checking for system updates...
[2026-06-12 22:10:20,399.399 INFO    ] 200
[2026-06-12 22:10:20,400.400 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:10:20,430.430 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 22:10:20,431.431 INFO    ] No update needed
[2026-06-12 22:10:20,433.433 INFO    ] Checking for camera pi updates...
[2026-06-12 22:10:20,454.454 INFO    ] 200
[2026-06-12 22:10:20,456.456 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:10:20,479.479 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 22:10:20,523.523 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 22:10:20,524.524 INFO    ] No camera update needed
[2026-06-12 22:10:20,526.526 INFO    ] Script finished. Safe exiting...
[2026-06-12 22:10:20,527.527 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 22:10:20,530.530 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 22:10:20,533.533 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 22:10:22,570.570 INFO    ] ================================================
[2026-06-12 22:10:22,586.586 INFO    ] Launching Daemon at Fri Jun 12 22:10:22 IST 2026
[2026-06-12 22:10:22,598.598 INFO    ] ================================================
[2026-06-12 22:10:22,940.940 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 22:10:22
[2026-06-12 22:10:23,259.259 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 22:10:23,403.403 INFO    ] Initializing speech engine...
[2026-06-12 22:10:23,408.408 INFO    ] 2026-06-12 22:10:23
[2026-06-12 22:10:23,614.614 INFO    ] 2026-06-12 22:10:23
[2026-06-12 22:10:23,642.642 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 22:10:23,828.828 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 22:10:23,837.837 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 22:10:23,973.973 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 22:10:24,035.035 INFO    ] time= 12/06/2026 22:10:23
[2026-06-12 22:10:24,059.059 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 22:10:24,066.066 INFO    ] Checking for existing commands in stream...
[2026-06-12 22:10:24,133.133 INFO    ] No existing commands found in stream
[2026-06-12 22:10:29,157.157 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 22:10:29,161.161 INFO    ] Waiting 3.85 seconds before fallback handling...
[2026-06-12 22:10:33,445.445 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 22:10:33,447.447 INFO    ] Checking for system updates...
[2026-06-12 22:10:33,468.468 INFO    ] 200
[2026-06-12 22:10:33,469.469 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:10:33,499.499 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 22:10:33,501.501 INFO    ] No update needed
[2026-06-12 22:10:33,502.502 INFO    ] Checking for camera pi updates...
[2026-06-12 22:10:33,522.522 INFO    ] 200
[2026-06-12 22:10:33,523.523 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:10:33,549.549 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 22:10:33,598.598 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 22:10:33,600.600 INFO    ] No camera update needed
[2026-06-12 22:10:33,602.602 INFO    ] Script finished. Safe exiting...
[2026-06-12 22:10:33,603.603 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 22:10:33,606.606 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 22:10:33,609.609 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 22:10:35,651.651 INFO    ] ================================================
[2026-06-12 22:10:35,667.667 INFO    ] Launching Daemon at Fri Jun 12 22:10:35 IST 2026
[2026-06-12 22:10:35,679.679 INFO    ] ================================================
[2026-06-12 22:10:36,073.073 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 22:10:36
[2026-06-12 22:10:36,418.418 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 22:10:36,573.573 INFO    ] Initializing speech engine...
[2026-06-12 22:10:36,579.579 INFO    ] 2026-06-12 22:10:36
[2026-06-12 22:10:36,792.792 INFO    ] 2026-06-12 22:10:36
[2026-06-12 22:10:36,821.821 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 22:10:37,010.010 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 22:10:37,020.020 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 22:10:37,151.151 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 22:10:37,221.221 INFO    ] time= 12/06/2026 22:10:37
[2026-06-12 22:10:37,245.245 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 22:10:37,252.252 INFO    ] Checking for existing commands in stream...
[2026-06-12 22:10:37,320.320 INFO    ] No existing commands found in stream
[2026-06-12 22:10:42,334.334 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 22:10:42,337.337 INFO    ] Waiting 2.70 seconds before fallback handling...
[2026-06-12 22:10:45,447.447 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 22:10:45,449.449 INFO    ] Checking for system updates...
[2026-06-12 22:10:45,472.472 INFO    ] 200
[2026-06-12 22:10:45,474.474 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:10:45,506.506 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 22:10:45,507.507 INFO    ] No update needed
[2026-06-12 22:10:45,509.509 INFO    ] Checking for camera pi updates...
[2026-06-12 22:10:45,528.528 INFO    ] 200
[2026-06-12 22:10:45,530.530 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:10:45,553.553 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 22:10:45,603.603 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 22:10:45,605.605 INFO    ] No camera update needed
[2026-06-12 22:10:45,606.606 INFO    ] Script finished. Safe exiting...
[2026-06-12 22:10:45,607.607 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 22:10:45,611.611 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 22:10:45,614.614 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 22:10:47,652.652 INFO    ] ================================================
[2026-06-12 22:10:47,668.668 INFO    ] Launching Daemon at Fri Jun 12 22:10:47 IST 2026
[2026-06-12 22:10:47,679.679 INFO    ] ================================================
[2026-06-12 22:10:48,073.073 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 22:10:48
[2026-06-12 22:10:48,405.405 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 22:10:48,536.536 INFO    ] Initializing speech engine...
[2026-06-12 22:10:48,539.539 INFO    ] 2026-06-12 22:10:48
[2026-06-12 22:10:48,758.758 INFO    ] 2026-06-12 22:10:48
[2026-06-12 22:10:48,787.787 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 22:10:48,974.974 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 22:10:48,982.982 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 22:10:49,114.114 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 22:10:49,172.172 INFO    ] time= 12/06/2026 22:10:49
[2026-06-12 22:10:49,206.206 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 22:10:49,213.213 INFO    ] Checking for existing commands in stream...
[2026-06-12 22:10:49,280.280 INFO    ] No existing commands found in stream
[2026-06-12 22:10:54,294.294 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 22:10:54,296.296 INFO    ] Waiting 2.30 seconds before fallback handling...
[2026-06-12 22:10:56,943.943 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 22:10:56,945.945 INFO    ] Checking for system updates...
[2026-06-12 22:10:56,967.967 INFO    ] 200
[2026-06-12 22:10:56,968.968 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:10:57,000.000 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 22:10:57,002.002 INFO    ] No update needed
[2026-06-12 22:10:57,004.004 INFO    ] Checking for camera pi updates...
[2026-06-12 22:10:57,025.025 INFO    ] 200
[2026-06-12 22:10:57,026.026 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:10:57,050.050 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 22:10:57,090.090 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 22:10:57,091.091 INFO    ] No camera update needed
[2026-06-12 22:10:57,093.093 INFO    ] Script finished. Safe exiting...
[2026-06-12 22:10:57,094.094 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 22:10:57,097.097 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 22:10:57,100.100 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 22:10:59,139.139 INFO    ] ================================================
[2026-06-12 22:10:59,154.154 INFO    ] Launching Daemon at Fri Jun 12 22:10:59 IST 2026
[2026-06-12 22:10:59,165.165 INFO    ] ================================================
[2026-06-12 22:10:59,543.543 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 22:10:59
[2026-06-12 22:10:59,860.860 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 22:11:00,003.003 INFO    ] Initializing speech engine...
[2026-06-12 22:11:00,008.008 INFO    ] 2026-06-12 22:11:00
[2026-06-12 22:11:00,212.212 INFO    ] 2026-06-12 22:11:00
[2026-06-12 22:11:00,241.241 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 22:11:00,424.424 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 22:11:00,434.434 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 22:11:00,563.563 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 22:11:00,629.629 INFO    ] time= 12/06/2026 22:11:00
[2026-06-12 22:11:00,653.653 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 22:11:00,660.660 INFO    ] Checking for existing commands in stream...
[2026-06-12 22:11:00,727.727 INFO    ] No existing commands found in stream
[2026-06-12 22:11:05,741.741 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 22:11:05,745.745 INFO    ] Waiting 1.38 seconds before fallback handling...
[2026-06-12 22:11:07,544.544 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 22:11:07,546.546 INFO    ] Checking for system updates...
[2026-06-12 22:11:07,567.567 INFO    ] 200
[2026-06-12 22:11:07,568.568 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:11:07,598.598 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 22:11:07,600.600 INFO    ] No update needed
[2026-06-12 22:11:07,601.601 INFO    ] Checking for camera pi updates...
[2026-06-12 22:11:07,622.622 INFO    ] 200
[2026-06-12 22:11:07,624.624 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:11:07,651.651 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 22:11:07,697.697 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 22:11:07,698.698 INFO    ] No camera update needed
[2026-06-12 22:11:07,700.700 INFO    ] Script finished. Safe exiting...
[2026-06-12 22:11:07,701.701 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 22:11:07,704.704 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 22:11:07,707.707 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 22:11:09,747.747 INFO    ] ================================================
[2026-06-12 22:11:09,762.762 INFO    ] Launching Daemon at Fri Jun 12 22:11:09 IST 2026
[2026-06-12 22:11:09,773.773 INFO    ] ================================================
[2026-06-12 22:11:10,104.104 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 22:11:10
[2026-06-12 22:11:10,416.416 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 22:11:10,557.557 INFO    ] Initializing speech engine...
[2026-06-12 22:11:10,568.568 INFO    ] 2026-06-12 22:11:10
[2026-06-12 22:11:10,784.784 INFO    ] 2026-06-12 22:11:10
[2026-06-12 22:11:10,816.816 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 22:11:10,954.954 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 22:11:11,017.017 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 22:11:11,174.174 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 22:11:11,241.241 INFO    ] time= 12/06/2026 22:11:11
[2026-06-12 22:11:11,267.267 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 22:11:11,274.274 INFO    ] Checking for existing commands in stream...
[2026-06-12 22:11:11,346.346 INFO    ] No existing commands found in stream
[2026-06-12 22:11:16,370.370 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 22:11:16,373.373 INFO    ] Waiting 3.43 seconds before fallback handling...
[2026-06-12 22:11:20,186.186 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 22:11:20,188.188 INFO    ] Checking for system updates...
[2026-06-12 22:11:20,209.209 INFO    ] 200
[2026-06-12 22:11:20,210.210 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:11:20,240.240 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 22:11:20,242.242 INFO    ] No update needed
[2026-06-12 22:11:20,243.243 INFO    ] Checking for camera pi updates...
[2026-06-12 22:11:20,262.262 INFO    ] 200
[2026-06-12 22:11:20,264.264 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:11:20,287.287 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 22:11:20,336.336 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 22:11:20,337.337 INFO    ] No camera update needed
[2026-06-12 22:11:20,339.339 INFO    ] Script finished. Safe exiting...
[2026-06-12 22:11:20,340.340 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 22:11:20,344.344 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 22:11:20,347.347 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 22:11:22,387.387 INFO    ] ================================================
[2026-06-12 22:11:22,402.402 INFO    ] Launching Daemon at Fri Jun 12 22:11:22 IST 2026
[2026-06-12 22:11:22,413.413 INFO    ] ================================================
[2026-06-12 22:11:22,777.777 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 22:11:22
[2026-06-12 22:11:23,088.088 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 22:11:23,232.232 INFO    ] Initializing speech engine...
[2026-06-12 22:11:23,236.236 INFO    ] 2026-06-12 22:11:23
[2026-06-12 22:11:23,442.442 INFO    ] 2026-06-12 22:11:23
[2026-06-12 22:11:23,471.471 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 22:11:23,611.611 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 22:11:23,660.660 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 22:11:23,795.795 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 22:11:23,852.852 INFO    ] time= 12/06/2026 22:11:23
[2026-06-12 22:11:23,872.872 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 22:11:23,893.893 INFO    ] Checking for existing commands in stream...
[2026-06-12 22:11:23,963.963 INFO    ] No existing commands found in stream
[2026-06-12 22:11:28,974.974 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 22:11:28,976.976 INFO    ] Waiting 3.05 seconds before fallback handling...
[2026-06-12 22:11:32,339.339 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 22:11:32,342.342 INFO    ] Checking for system updates...
[2026-06-12 22:11:32,377.377 INFO    ] 200
[2026-06-12 22:11:32,380.380 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:11:32,428.428 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 22:11:32,429.429 INFO    ] No update needed
[2026-06-12 22:11:32,430.430 INFO    ] Checking for camera pi updates...
[2026-06-12 22:11:32,449.449 INFO    ] 200
[2026-06-12 22:11:32,451.451 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:11:32,474.474 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 22:11:32,504.504 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 22:11:32,505.505 INFO    ] No camera update needed
[2026-06-12 22:11:32,507.507 INFO    ] Script finished. Safe exiting...
[2026-06-12 22:11:32,508.508 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 22:11:32,511.511 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 22:11:32,514.514 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 22:11:34,552.552 INFO    ] ================================================
[2026-06-12 22:11:34,567.567 INFO    ] Launching Daemon at Fri Jun 12 22:11:34 IST 2026
[2026-06-12 22:11:34,578.578 INFO    ] ================================================
[2026-06-12 22:11:34,960.960 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 22:11:34
[2026-06-12 22:11:35,300.300 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 22:11:35,453.453 INFO    ] Initializing speech engine...
[2026-06-12 22:11:35,458.458 INFO    ] 2026-06-12 22:11:35
[2026-06-12 22:11:35,670.670 INFO    ] 2026-06-12 22:11:35
[2026-06-12 22:11:35,699.699 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 22:11:35,885.885 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 22:11:35,895.895 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 22:11:36,027.027 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 22:11:36,097.097 INFO    ] time= 12/06/2026 22:11:36
[2026-06-12 22:11:36,120.120 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 22:11:36,127.127 INFO    ] Checking for existing commands in stream...
[2026-06-12 22:11:36,194.194 INFO    ] No existing commands found in stream
[2026-06-12 22:11:41,204.204 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 22:11:41,207.207 INFO    ] Waiting 1.63 seconds before fallback handling...
[2026-06-12 22:11:43,207.207 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 22:11:43,208.208 INFO    ] Checking for system updates...
[2026-06-12 22:11:43,229.229 INFO    ] 200
[2026-06-12 22:11:43,230.230 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:11:43,261.261 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 22:11:43,262.262 INFO    ] No update needed
[2026-06-12 22:11:43,263.263 INFO    ] Checking for camera pi updates...
[2026-06-12 22:11:43,283.283 INFO    ] 200
[2026-06-12 22:11:43,284.284 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:11:43,309.309 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 22:11:43,363.363 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 22:11:43,364.364 INFO    ] No camera update needed
[2026-06-12 22:11:43,366.366 INFO    ] Script finished. Safe exiting...
[2026-06-12 22:11:43,367.367 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 22:11:43,370.370 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 22:11:43,373.373 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 22:11:45,412.412 INFO    ] ================================================
[2026-06-12 22:11:45,426.426 INFO    ] Launching Daemon at Fri Jun 12 22:11:45 IST 2026
[2026-06-12 22:11:45,437.437 INFO    ] ================================================
[2026-06-12 22:11:45,797.797 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 22:11:45
[2026-06-12 22:11:46,109.109 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 22:11:46,242.242 INFO    ] Initializing speech engine...
[2026-06-12 22:11:46,247.247 INFO    ] 2026-06-12 22:11:46
[2026-06-12 22:11:46,477.477 INFO    ] 2026-06-12 22:11:46
[2026-06-12 22:11:46,508.508 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 22:11:46,706.706 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 22:11:46,710.710 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 22:11:46,851.851 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 22:11:46,903.903 INFO    ] time= 12/06/2026 22:11:46
[2026-06-12 22:11:46,942.942 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 22:11:46,960.960 INFO    ] Checking for existing commands in stream...
[2026-06-12 22:11:47,035.035 INFO    ] No existing commands found in stream
[2026-06-12 22:11:52,046.046 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 22:11:52,049.049 INFO    ] Waiting 3.19 seconds before fallback handling...
[2026-06-12 22:11:55,604.604 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 22:11:55,605.605 INFO    ] Checking for system updates...
[2026-06-12 22:11:55,627.627 INFO    ] 200
[2026-06-12 22:11:55,628.628 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:11:55,659.659 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 22:11:55,660.660 INFO    ] No update needed
[2026-06-12 22:11:55,661.661 INFO    ] Checking for camera pi updates...
[2026-06-12 22:11:55,680.680 INFO    ] 200
[2026-06-12 22:11:55,682.682 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:11:55,704.704 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 22:11:55,761.761 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 22:11:55,762.762 INFO    ] No camera update needed
[2026-06-12 22:11:55,763.763 INFO    ] Script finished. Safe exiting...
[2026-06-12 22:11:55,764.764 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 22:11:55,767.767 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 22:11:55,770.770 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 22:11:57,808.808 INFO    ] ================================================
[2026-06-12 22:11:57,824.824 INFO    ] Launching Daemon at Fri Jun 12 22:11:57 IST 2026
[2026-06-12 22:11:57,834.834 INFO    ] ================================================
[2026-06-12 22:11:58,180.180 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 22:11:58
[2026-06-12 22:11:58,521.521 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 22:11:58,666.666 INFO    ] Initializing speech engine...
[2026-06-12 22:11:58,676.676 INFO    ] 2026-06-12 22:11:58
[2026-06-12 22:11:58,893.893 INFO    ] 2026-06-12 22:11:58
[2026-06-12 22:11:58,924.924 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 22:11:59,120.120 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 22:11:59,127.127 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 22:11:59,276.276 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 22:11:59,340.340 INFO    ] time= 12/06/2026 22:11:59
[2026-06-12 22:11:59,375.375 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 22:11:59,376.376 INFO    ] Checking for existing commands in stream...
[2026-06-12 22:11:59,454.454 INFO    ] No existing commands found in stream
[2026-06-12 22:12:04,463.463 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 22:12:04,467.467 INFO    ] Waiting 3.87 seconds before fallback handling...
[2026-06-12 22:12:08,700.700 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 22:12:08,702.702 INFO    ] Checking for system updates...
[2026-06-12 22:12:08,723.723 INFO    ] 200
[2026-06-12 22:12:08,724.724 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:12:08,755.755 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 22:12:08,756.756 INFO    ] No update needed
[2026-06-12 22:12:08,757.757 INFO    ] Checking for camera pi updates...
[2026-06-12 22:12:08,777.777 INFO    ] 200
[2026-06-12 22:12:08,778.778 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:12:08,803.803 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 22:12:08,854.854 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 22:12:08,855.855 INFO    ] No camera update needed
[2026-06-12 22:12:08,857.857 INFO    ] Script finished. Safe exiting...
[2026-06-12 22:12:08,858.858 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 22:12:08,861.861 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 22:12:08,864.864 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 22:12:10,902.902 INFO    ] ================================================
[2026-06-12 22:12:10,917.917 INFO    ] Launching Daemon at Fri Jun 12 22:12:10 IST 2026
[2026-06-12 22:12:10,927.927 INFO    ] ================================================
[2026-06-12 22:12:11,276.276 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 22:12:11
[2026-06-12 22:12:11,591.591 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 22:12:11,721.721 INFO    ] Initializing speech engine...
[2026-06-12 22:12:11,731.731 INFO    ] 2026-06-12 22:12:11
[2026-06-12 22:12:11,941.941 INFO    ] 2026-06-12 22:12:11
[2026-06-12 22:12:11,970.970 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 22:12:12,153.153 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 22:12:12,163.163 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 22:12:12,305.305 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 22:12:12,358.358 INFO    ] time= 12/06/2026 22:12:12
[2026-06-12 22:12:12,381.381 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 22:12:12,387.387 INFO    ] Checking for existing commands in stream...
[2026-06-12 22:12:12,453.453 INFO    ] No existing commands found in stream
[2026-06-12 22:12:17,462.462 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 22:12:17,465.465 INFO    ] Waiting 0.41 seconds before fallback handling...
[2026-06-12 22:12:19,107.107 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 22:12:19,110.110 INFO    ] Checking for system updates...
[2026-06-12 22:12:19,145.145 INFO    ] 200
[2026-06-12 22:12:19,148.148 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:12:19,201.201 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 22:12:19,203.203 INFO    ] No update needed
[2026-06-12 22:12:19,205.205 INFO    ] Checking for camera pi updates...
[2026-06-12 22:12:19,238.238 INFO    ] 200
[2026-06-12 22:12:19,241.241 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:12:19,286.286 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 22:12:19,333.333 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 22:12:19,335.335 INFO    ] No camera update needed
[2026-06-12 22:12:19,337.337 INFO    ] Script finished. Safe exiting...
[2026-06-12 22:12:19,340.340 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 22:12:19,345.345 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 22:12:19,351.351 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 22:12:21,392.392 INFO    ] ================================================
[2026-06-12 22:12:21,406.406 INFO    ] Launching Daemon at Fri Jun 12 22:12:21 IST 2026
[2026-06-12 22:12:21,417.417 INFO    ] ================================================
[2026-06-12 22:12:21,783.783 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 22:12:21
[2026-06-12 22:12:22,096.096 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 22:12:22,232.232 INFO    ] Initializing speech engine...
[2026-06-12 22:12:22,235.235 INFO    ] 2026-06-12 22:12:22
[2026-06-12 22:12:22,454.454 INFO    ] 2026-06-12 22:12:22
[2026-06-12 22:12:22,483.483 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 22:12:22,654.654 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 22:12:22,687.687 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 22:12:22,829.829 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 22:12:22,870.870 INFO    ] time= 12/06/2026 22:12:22
[2026-06-12 22:12:22,912.912 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 22:12:22,937.937 INFO    ] Checking for existing commands in stream...
[2026-06-12 22:12:23,041.041 INFO    ] No existing commands found in stream
[2026-06-12 22:12:28,055.055 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 22:12:28,058.058 INFO    ] Waiting 1.19 seconds before fallback handling...
[2026-06-12 22:12:29,644.644 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 22:12:29,645.645 INFO    ] Checking for system updates...
[2026-06-12 22:12:29,665.665 INFO    ] 200
[2026-06-12 22:12:29,666.666 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:12:29,696.696 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 22:12:29,697.697 INFO    ] No update needed
[2026-06-12 22:12:29,698.698 INFO    ] Checking for camera pi updates...
[2026-06-12 22:12:29,717.717 INFO    ] 200
[2026-06-12 22:12:29,719.719 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:12:29,743.743 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 22:12:29,789.789 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 22:12:29,790.790 INFO    ] No camera update needed
[2026-06-12 22:12:29,792.792 INFO    ] Script finished. Safe exiting...
[2026-06-12 22:12:29,793.793 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 22:12:29,796.796 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 22:12:29,798.798 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 22:12:31,839.839 INFO    ] ================================================
[2026-06-12 22:12:31,861.861 INFO    ] Launching Daemon at Fri Jun 12 22:12:31 IST 2026
[2026-06-12 22:12:31,873.873 INFO    ] ================================================
[2026-06-12 22:12:32,215.215 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 22:12:32
[2026-06-12 22:12:32,555.555 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 22:12:32,698.698 INFO    ] Initializing speech engine...
[2026-06-12 22:12:32,711.711 INFO    ] 2026-06-12 22:12:32
[2026-06-12 22:12:32,922.922 INFO    ] 2026-06-12 22:12:32
[2026-06-12 22:12:32,954.954 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 22:12:33,139.139 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 22:12:33,143.143 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 22:12:33,278.278 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 22:12:33,350.350 INFO    ] time= 12/06/2026 22:12:33
[2026-06-12 22:12:33,374.374 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 22:12:33,381.381 INFO    ] Checking for existing commands in stream...
[2026-06-12 22:12:33,448.448 INFO    ] No existing commands found in stream
[2026-06-12 22:12:38,463.463 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 22:12:38,466.466 INFO    ] Waiting 3.51 seconds before fallback handling...
[2026-06-12 22:12:42,366.366 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 22:12:42,368.368 INFO    ] Checking for system updates...
[2026-06-12 22:12:42,390.390 INFO    ] 200
[2026-06-12 22:12:42,391.391 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:12:42,426.426 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 22:12:42,427.427 INFO    ] No update needed
[2026-06-12 22:12:42,429.429 INFO    ] Checking for camera pi updates...
[2026-06-12 22:12:42,451.451 INFO    ] 200
[2026-06-12 22:12:42,453.453 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:12:42,476.476 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 22:12:42,522.522 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 22:12:42,524.524 INFO    ] No camera update needed
[2026-06-12 22:12:42,525.525 INFO    ] Script finished. Safe exiting...
[2026-06-12 22:12:42,526.526 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 22:12:42,530.530 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 22:12:42,533.533 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 22:12:44,571.571 INFO    ] ================================================
[2026-06-12 22:12:44,586.586 INFO    ] Launching Daemon at Fri Jun 12 22:12:44 IST 2026
[2026-06-12 22:12:44,596.596 INFO    ] ================================================
[2026-06-12 22:12:44,961.961 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 22:12:44
[2026-06-12 22:12:45,278.278 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 22:12:45,413.413 INFO    ] Initializing speech engine...
[2026-06-12 22:12:45,417.417 INFO    ] 2026-06-12 22:12:45
[2026-06-12 22:12:45,612.612 INFO    ] 2026-06-12 22:12:45
[2026-06-12 22:12:45,657.657 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 22:12:45,882.882 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 22:12:45,885.885 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 22:12:46,025.025 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 22:12:46,082.082 INFO    ] time= 12/06/2026 22:12:46
[2026-06-12 22:12:46,116.116 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 22:12:46,133.133 INFO    ] Checking for existing commands in stream...
[2026-06-12 22:12:46,237.237 INFO    ] No existing commands found in stream
[2026-06-12 22:12:51,246.246 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 22:12:51,248.248 INFO    ] Waiting 0.86 seconds before fallback handling...
[2026-06-12 22:12:52,504.504 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 22:12:52,505.505 INFO    ] Checking for system updates...
[2026-06-12 22:12:52,526.526 INFO    ] 200
[2026-06-12 22:12:52,527.527 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:12:52,557.557 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 22:12:52,558.558 INFO    ] No update needed
[2026-06-12 22:12:52,560.560 INFO    ] Checking for camera pi updates...
[2026-06-12 22:12:52,581.581 INFO    ] 200
[2026-06-12 22:12:52,582.582 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:12:52,607.607 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 22:12:52,649.649 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 22:12:52,650.650 INFO    ] No camera update needed
[2026-06-12 22:12:52,652.652 INFO    ] Script finished. Safe exiting...
[2026-06-12 22:12:52,653.653 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 22:12:52,656.656 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 22:12:52,658.658 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 22:12:54,697.697 INFO    ] ================================================
[2026-06-12 22:12:54,712.712 INFO    ] Launching Daemon at Fri Jun 12 22:12:54 IST 2026
[2026-06-12 22:12:54,723.723 INFO    ] ================================================
[2026-06-12 22:12:55,101.101 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 22:12:55
[2026-06-12 22:12:55,441.441 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 22:12:55,583.583 INFO    ] Initializing speech engine...
[2026-06-12 22:12:55,595.595 INFO    ] 2026-06-12 22:12:55
[2026-06-12 22:12:55,807.807 INFO    ] 2026-06-12 22:12:55
[2026-06-12 22:12:55,836.836 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 22:12:56,023.023 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 22:12:56,031.031 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 22:12:56,192.192 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 22:12:56,232.232 INFO    ] time= 12/06/2026 22:12:56
[2026-06-12 22:12:56,253.253 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 22:12:56,260.260 INFO    ] Checking for existing commands in stream...
[2026-06-12 22:12:56,327.327 INFO    ] No existing commands found in stream
[2026-06-12 22:13:01,360.360 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 22:13:01,363.363 INFO    ] Waiting 3.07 seconds before fallback handling...
[2026-06-12 22:13:04,808.808 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 22:13:04,810.810 INFO    ] Checking for system updates...
[2026-06-12 22:13:04,831.831 INFO    ] 200
[2026-06-12 22:13:04,832.832 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:13:04,865.865 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 22:13:04,866.866 INFO    ] No update needed
[2026-06-12 22:13:04,868.868 INFO    ] Checking for camera pi updates...
[2026-06-12 22:13:04,891.891 INFO    ] 200
[2026-06-12 22:13:04,892.892 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:13:04,920.920 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 22:13:04,978.978 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 22:13:04,980.980 INFO    ] No camera update needed
[2026-06-12 22:13:04,981.981 INFO    ] Script finished. Safe exiting...
[2026-06-12 22:13:04,982.982 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 22:13:04,986.986 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 22:13:04,989.989 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 22:13:07,028.028 INFO    ] ================================================
[2026-06-12 22:13:07,044.044 INFO    ] Launching Daemon at Fri Jun 12 22:13:07 IST 2026
[2026-06-12 22:13:07,056.056 INFO    ] ================================================
[2026-06-12 22:13:07,378.378 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 22:13:07
[2026-06-12 22:13:07,692.692 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 22:13:07,828.828 INFO    ] Initializing speech engine...
[2026-06-12 22:13:07,831.831 INFO    ] 2026-06-12 22:13:07
[2026-06-12 22:13:08,062.062 INFO    ] 2026-06-12 22:13:08
[2026-06-12 22:13:08,093.093 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 22:13:08,294.294 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 22:13:08,297.297 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 22:13:08,438.438 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 22:13:08,494.494 INFO    ] time= 12/06/2026 22:13:08
[2026-06-12 22:13:08,529.529 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 22:13:08,547.547 INFO    ] Checking for existing commands in stream...
[2026-06-12 22:13:08,623.623 INFO    ] No existing commands found in stream
[2026-06-12 22:13:13,633.633 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 22:13:13,636.636 INFO    ] Waiting 3.90 seconds before fallback handling...
[2026-06-12 22:13:17,936.936 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 22:13:17,937.937 INFO    ] Checking for system updates...
[2026-06-12 22:13:17,957.957 INFO    ] 200
[2026-06-12 22:13:17,959.959 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:13:17,991.991 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 22:13:17,992.992 INFO    ] No update needed
[2026-06-12 22:13:17,993.993 INFO    ] Checking for camera pi updates...
[2026-06-12 22:13:18,012.012 INFO    ] 200
[2026-06-12 22:13:18,014.014 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:13:18,038.038 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 22:13:18,083.083 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 22:13:18,084.084 INFO    ] No camera update needed
[2026-06-12 22:13:18,086.086 INFO    ] Script finished. Safe exiting...
[2026-06-12 22:13:18,087.087 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 22:13:18,090.090 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 22:13:18,093.093 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 22:13:20,132.132 INFO    ] ================================================
[2026-06-12 22:13:20,149.149 INFO    ] Launching Daemon at Fri Jun 12 22:13:20 IST 2026
[2026-06-12 22:13:20,160.160 INFO    ] ================================================
[2026-06-12 22:13:20,496.496 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 22:13:20
[2026-06-12 22:13:20,810.810 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 22:13:20,942.942 INFO    ] Initializing speech engine...
[2026-06-12 22:13:20,950.950 INFO    ] 2026-06-12 22:13:20
[2026-06-12 22:13:21,164.164 INFO    ] 2026-06-12 22:13:21
[2026-06-12 22:13:21,193.193 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 22:13:21,380.380 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 22:13:21,388.388 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 22:13:21,518.518 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 22:13:21,575.575 INFO    ] time= 12/06/2026 22:13:21
[2026-06-12 22:13:21,606.606 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 22:13:21,616.616 INFO    ] Checking for existing commands in stream...
[2026-06-12 22:13:21,689.689 INFO    ] No existing commands found in stream
[2026-06-12 22:13:26,722.722 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 22:13:26,725.725 INFO    ] Waiting 0.67 seconds before fallback handling...
[2026-06-12 22:13:27,775.775 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 22:13:27,776.776 INFO    ] Checking for system updates...
[2026-06-12 22:13:27,798.798 INFO    ] 200
[2026-06-12 22:13:27,799.799 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:13:27,831.831 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 22:13:27,832.832 INFO    ] No update needed
[2026-06-12 22:13:27,834.834 INFO    ] Checking for camera pi updates...
[2026-06-12 22:13:27,854.854 INFO    ] 200
[2026-06-12 22:13:27,855.855 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:13:27,878.878 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 22:13:27,931.931 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 22:13:27,933.933 INFO    ] No camera update needed
[2026-06-12 22:13:27,934.934 INFO    ] Script finished. Safe exiting...
[2026-06-12 22:13:27,935.935 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 22:13:27,938.938 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 22:13:27,941.941 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 22:13:29,978.978 INFO    ] ================================================
[2026-06-12 22:13:30,995.995 INFO    ] Launching Daemon at Fri Jun 12 22:13:29 IST 2026
[2026-06-12 22:13:30,007.007 INFO    ] ================================================
[2026-06-12 22:13:30,390.390 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 22:13:30
[2026-06-12 22:13:30,710.710 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 22:13:30,841.841 INFO    ] Initializing speech engine...
[2026-06-12 22:13:30,846.846 INFO    ] 2026-06-12 22:13:30
[2026-06-12 22:13:31,063.063 INFO    ] 2026-06-12 22:13:31
[2026-06-12 22:13:31,092.092 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 22:13:31,275.275 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 22:13:31,285.285 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 22:13:31,427.427 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 22:13:31,480.480 INFO    ] time= 12/06/2026 22:13:31
[2026-06-12 22:13:31,502.502 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 22:13:31,508.508 INFO    ] Checking for existing commands in stream...
[2026-06-12 22:13:31,574.574 INFO    ] No existing commands found in stream
[2026-06-12 22:13:36,583.583 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 22:13:36,586.586 INFO    ] Waiting 0.12 seconds before fallback handling...
[2026-06-12 22:13:37,066.066 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 22:13:37,068.068 INFO    ] Checking for system updates...
[2026-06-12 22:13:37,089.089 INFO    ] 200
[2026-06-12 22:13:37,090.090 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:13:37,120.120 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 22:13:37,122.122 INFO    ] No update needed
[2026-06-12 22:13:37,123.123 INFO    ] Checking for camera pi updates...
[2026-06-12 22:13:37,142.142 INFO    ] 200
[2026-06-12 22:13:37,143.143 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:13:37,168.168 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 22:13:37,309.309 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 22:13:37,311.311 INFO    ] No camera update needed
[2026-06-12 22:13:37,312.312 INFO    ] Script finished. Safe exiting...
[2026-06-12 22:13:37,313.313 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 22:13:37,316.316 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 22:13:37,319.319 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 22:13:39,359.359 INFO    ] ================================================
[2026-06-12 22:13:39,375.375 INFO    ] Launching Daemon at Fri Jun 12 22:13:39 IST 2026
[2026-06-12 22:13:39,386.386 INFO    ] ================================================
[2026-06-12 22:13:39,718.718 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 22:13:39
[2026-06-12 22:13:40,036.036 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 22:13:40,179.179 INFO    ] Initializing speech engine...
[2026-06-12 22:13:40,185.185 INFO    ] 2026-06-12 22:13:40
[2026-06-12 22:13:40,389.389 INFO    ] 2026-06-12 22:13:40
[2026-06-12 22:13:40,418.418 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 22:13:40,733.733 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 22:13:40,791.791 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 22:13:40,919.919 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 22:13:40,936.936 INFO    ] time= 12/06/2026 22:13:40
[2026-06-12 22:13:40,947.947 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 22:13:40,950.950 INFO    ] Checking for existing commands in stream...
[2026-06-12 22:13:41,021.021 INFO    ] No existing commands found in stream
[2026-06-12 22:13:46,031.031 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 22:13:46,034.034 INFO    ] Waiting 0.54 seconds before fallback handling...
[2026-06-12 22:13:47,004.004 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 22:13:47,006.006 INFO    ] Checking for system updates...
[2026-06-12 22:13:47,027.027 INFO    ] 200
[2026-06-12 22:13:47,028.028 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:13:47,058.058 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 22:13:47,060.060 INFO    ] No update needed
[2026-06-12 22:13:47,061.061 INFO    ] Checking for camera pi updates...
[2026-06-12 22:13:47,082.082 INFO    ] 200
[2026-06-12 22:13:47,084.084 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:13:47,111.111 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 22:13:47,166.166 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 22:13:47,168.168 INFO    ] No camera update needed
[2026-06-12 22:13:47,169.169 INFO    ] Script finished. Safe exiting...
[2026-06-12 22:13:47,171.171 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 22:13:47,174.174 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 22:13:47,177.177 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 22:13:49,216.216 INFO    ] ================================================
[2026-06-12 22:13:49,232.232 INFO    ] Launching Daemon at Fri Jun 12 22:13:49 IST 2026
[2026-06-12 22:13:49,243.243 INFO    ] ================================================
[2026-06-12 22:13:49,604.604 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 22:13:49
[2026-06-12 22:13:49,922.922 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 22:13:50,061.061 INFO    ] Initializing speech engine...
[2026-06-12 22:13:50,072.072 INFO    ] 2026-06-12 22:13:50
[2026-06-12 22:13:50,275.275 INFO    ] 2026-06-12 22:13:50
[2026-06-12 22:13:50,305.305 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 22:13:50,489.489 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 22:13:50,498.498 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 22:13:50,627.627 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 22:13:50,691.691 INFO    ] time= 12/06/2026 22:13:50
[2026-06-12 22:13:50,718.718 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 22:13:50,725.725 INFO    ] Checking for existing commands in stream...
[2026-06-12 22:13:50,816.816 INFO    ] No existing commands found in stream
[2026-06-12 22:13:55,830.830 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 22:13:55,833.833 INFO    ] Waiting 0.80 seconds before fallback handling...
[2026-06-12 22:13:57,021.021 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 22:13:57,024.024 INFO    ] Checking for system updates...
[2026-06-12 22:13:57,061.061 INFO    ] 200
[2026-06-12 22:13:57,064.064 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:13:57,126.126 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 22:13:57,129.129 INFO    ] No update needed
[2026-06-12 22:13:57,132.132 INFO    ] Checking for camera pi updates...
[2026-06-12 22:13:57,167.167 INFO    ] 200
[2026-06-12 22:13:57,170.170 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:13:57,198.198 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 22:13:57,245.245 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 22:13:57,246.246 INFO    ] No camera update needed
[2026-06-12 22:13:57,248.248 INFO    ] Script finished. Safe exiting...
[2026-06-12 22:13:57,249.249 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 22:13:57,253.253 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 22:13:57,256.256 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 22:13:59,296.296 INFO    ] ================================================
[2026-06-12 22:13:59,312.312 INFO    ] Launching Daemon at Fri Jun 12 22:13:59 IST 2026
[2026-06-12 22:13:59,323.323 INFO    ] ================================================
[2026-06-12 22:13:59,688.688 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 22:13:59
[2026-06-12 22:14:00,001.001 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 22:14:00,132.132 INFO    ] Initializing speech engine...
[2026-06-12 22:14:00,140.140 INFO    ] 2026-06-12 22:14:00
[2026-06-12 22:14:00,355.355 INFO    ] 2026-06-12 22:14:00
[2026-06-12 22:14:00,383.383 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 22:14:00,571.571 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 22:14:00,574.574 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 22:14:00,719.719 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 22:14:00,784.784 INFO    ] time= 12/06/2026 22:14:00
[2026-06-12 22:14:00,807.807 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 22:14:00,814.814 INFO    ] Checking for existing commands in stream...
[2026-06-12 22:14:00,882.882 INFO    ] No existing commands found in stream
[2026-06-12 22:14:05,893.893 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 22:14:05,896.896 INFO    ] Waiting 1.57 seconds before fallback handling...
[2026-06-12 22:14:07,825.825 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 22:14:07,827.827 INFO    ] Checking for system updates...
[2026-06-12 22:14:07,849.849 INFO    ] 200
[2026-06-12 22:14:07,850.850 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:14:07,880.880 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 22:14:07,882.882 INFO    ] No update needed
[2026-06-12 22:14:07,883.883 INFO    ] Checking for camera pi updates...
[2026-06-12 22:14:07,902.902 INFO    ] 200
[2026-06-12 22:14:07,903.903 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:14:07,926.926 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 22:14:07,967.967 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 22:14:07,968.968 INFO    ] No camera update needed
[2026-06-12 22:14:07,970.970 INFO    ] Script finished. Safe exiting...
[2026-06-12 22:14:07,971.971 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 22:14:07,974.974 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 22:14:07,977.977 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 22:14:10,019.019 INFO    ] ================================================
[2026-06-12 22:14:10,034.034 INFO    ] Launching Daemon at Fri Jun 12 22:14:10 IST 2026
[2026-06-12 22:14:10,045.045 INFO    ] ================================================
[2026-06-12 22:14:10,440.440 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 22:14:10
[2026-06-12 22:14:10,782.782 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 22:14:10,933.933 INFO    ] Initializing speech engine...
[2026-06-12 22:14:10,938.938 INFO    ] 2026-06-12 22:14:10
[2026-06-12 22:14:11,148.148 INFO    ] 2026-06-12 22:14:11
[2026-06-12 22:14:11,177.177 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 22:14:11,362.362 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 22:14:11,374.374 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 22:14:11,516.516 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 22:14:11,569.569 INFO    ] time= 12/06/2026 22:14:11
[2026-06-12 22:14:11,592.592 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 22:14:11,598.598 INFO    ] Checking for existing commands in stream...
[2026-06-12 22:14:11,666.666 INFO    ] No existing commands found in stream
[2026-06-12 22:14:16,685.685 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 22:14:16,689.689 INFO    ] Waiting 3.27 seconds before fallback handling...
[2026-06-12 22:14:20,354.354 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 22:14:20,356.356 INFO    ] Checking for system updates...
[2026-06-12 22:14:20,379.379 INFO    ] 200
[2026-06-12 22:14:20,380.380 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:14:20,413.413 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 22:14:20,414.414 INFO    ] No update needed
[2026-06-12 22:14:20,415.415 INFO    ] Checking for camera pi updates...
[2026-06-12 22:14:20,434.434 INFO    ] 200
[2026-06-12 22:14:20,435.435 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:14:20,460.460 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 22:14:20,502.502 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 22:14:20,503.503 INFO    ] No camera update needed
[2026-06-12 22:14:20,505.505 INFO    ] Script finished. Safe exiting...
[2026-06-12 22:14:20,506.506 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 22:14:20,509.509 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 22:14:20,512.512 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 22:14:22,549.549 INFO    ] ================================================
[2026-06-12 22:14:22,565.565 INFO    ] Launching Daemon at Fri Jun 12 22:14:22 IST 2026
[2026-06-12 22:14:22,576.576 INFO    ] ================================================
[2026-06-12 22:14:22,937.937 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 22:14:22
[2026-06-12 22:14:23,249.249 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 22:14:23,387.387 INFO    ] Initializing speech engine...
[2026-06-12 22:14:23,397.397 INFO    ] 2026-06-12 22:14:23
[2026-06-12 22:14:23,602.602 INFO    ] 2026-06-12 22:14:23
[2026-06-12 22:14:23,632.632 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 22:14:23,817.817 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 22:14:23,826.826 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 22:14:23,957.957 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 22:14:24,025.025 INFO    ] time= 12/06/2026 22:14:23
[2026-06-12 22:14:24,049.049 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 22:14:24,055.055 INFO    ] Checking for existing commands in stream...
[2026-06-12 22:14:24,172.172 INFO    ] No existing commands found in stream
[2026-06-12 22:14:29,182.182 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 22:14:29,185.185 INFO    ] Waiting 2.19 seconds before fallback handling...
[2026-06-12 22:14:31,736.736 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 22:14:31,738.738 INFO    ] Checking for system updates...
[2026-06-12 22:14:31,763.763 INFO    ] 200
[2026-06-12 22:14:31,764.764 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:14:31,798.798 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 22:14:31,800.800 INFO    ] No update needed
[2026-06-12 22:14:31,801.801 INFO    ] Checking for camera pi updates...
[2026-06-12 22:14:31,823.823 INFO    ] 200
[2026-06-12 22:14:31,825.825 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:14:31,853.853 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 22:14:31,896.896 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 22:14:31,898.898 INFO    ] No camera update needed
[2026-06-12 22:14:31,899.899 INFO    ] Script finished. Safe exiting...
[2026-06-12 22:14:31,901.901 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 22:14:31,904.904 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 22:14:31,908.908 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 22:14:33,946.946 INFO    ] ================================================
[2026-06-12 22:14:33,961.961 INFO    ] Launching Daemon at Fri Jun 12 22:14:33 IST 2026
[2026-06-12 22:14:33,972.972 INFO    ] ================================================
[2026-06-12 22:14:34,338.338 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 22:14:34
[2026-06-12 22:14:34,683.683 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 22:14:34,836.836 INFO    ] Initializing speech engine...
[2026-06-12 22:14:34,841.841 INFO    ] 2026-06-12 22:14:34
[2026-06-12 22:14:35,046.046 INFO    ] 2026-06-12 22:14:35
[2026-06-12 22:14:35,074.074 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 22:14:35,260.260 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 22:14:35,270.270 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 22:14:35,399.399 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 22:14:35,458.458 INFO    ] time= 12/06/2026 22:14:35
[2026-06-12 22:14:35,492.492 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 22:14:35,497.497 INFO    ] Checking for existing commands in stream...
[2026-06-12 22:14:35,565.565 INFO    ] No existing commands found in stream
[2026-06-12 22:14:40,580.580 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 22:14:40,582.582 INFO    ] Waiting 2.19 seconds before fallback handling...
[2026-06-12 22:14:43,153.153 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 22:14:43,155.155 INFO    ] Checking for system updates...
[2026-06-12 22:14:43,175.175 INFO    ] 200
[2026-06-12 22:14:43,176.176 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:14:43,209.209 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 22:14:43,210.210 INFO    ] No update needed
[2026-06-12 22:14:43,212.212 INFO    ] Checking for camera pi updates...
[2026-06-12 22:14:43,234.234 INFO    ] 200
[2026-06-12 22:14:43,235.235 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:14:43,260.260 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 22:14:43,303.303 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 22:14:43,304.304 INFO    ] No camera update needed
[2026-06-12 22:14:43,306.306 INFO    ] Script finished. Safe exiting...
[2026-06-12 22:14:43,307.307 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 22:14:43,310.310 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 22:14:43,313.313 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 22:14:45,352.352 INFO    ] ================================================
[2026-06-12 22:14:45,367.367 INFO    ] Launching Daemon at Fri Jun 12 22:14:45 IST 2026
[2026-06-12 22:14:45,377.377 INFO    ] ================================================
[2026-06-12 22:14:45,721.721 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 22:14:45
[2026-06-12 22:14:46,065.065 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 22:14:46,215.215 INFO    ] Initializing speech engine...
[2026-06-12 22:14:46,221.221 INFO    ] 2026-06-12 22:14:46
[2026-06-12 22:14:46,430.430 INFO    ] 2026-06-12 22:14:46
[2026-06-12 22:14:46,459.459 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 22:14:46,642.642 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 22:14:46,645.645 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 22:14:46,796.796 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 22:14:46,851.851 INFO    ] time= 12/06/2026 22:14:46
[2026-06-12 22:14:46,873.873 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 22:14:46,879.879 INFO    ] Checking for existing commands in stream...
[2026-06-12 22:14:46,970.970 INFO    ] No existing commands found in stream
[2026-06-12 22:14:51,980.980 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 22:14:51,983.983 INFO    ] Waiting 2.73 seconds before fallback handling...
[2026-06-12 22:14:55,087.087 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 22:14:55,088.088 INFO    ] Checking for system updates...
[2026-06-12 22:14:55,110.110 INFO    ] 200
[2026-06-12 22:14:55,112.112 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:14:55,144.144 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 22:14:55,146.146 INFO    ] No update needed
[2026-06-12 22:14:55,148.148 INFO    ] Checking for camera pi updates...
[2026-06-12 22:14:55,168.168 INFO    ] 200
[2026-06-12 22:14:55,170.170 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:14:55,196.196 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 22:14:55,241.241 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 22:14:55,243.243 INFO    ] No camera update needed
[2026-06-12 22:14:55,244.244 INFO    ] Script finished. Safe exiting...
[2026-06-12 22:14:55,246.246 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 22:14:55,250.250 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 22:14:55,253.253 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 22:14:57,291.291 INFO    ] ================================================
[2026-06-12 22:14:57,307.307 INFO    ] Launching Daemon at Fri Jun 12 22:14:57 IST 2026
[2026-06-12 22:14:57,318.318 INFO    ] ================================================
[2026-06-12 22:14:57,709.709 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 22:14:57
[2026-06-12 22:14:58,047.047 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 22:14:58,202.202 INFO    ] Initializing speech engine...
[2026-06-12 22:14:58,207.207 INFO    ] 2026-06-12 22:14:58
[2026-06-12 22:14:58,413.413 INFO    ] 2026-06-12 22:14:58
[2026-06-12 22:14:58,442.442 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 22:14:58,627.627 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 22:14:58,636.636 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 22:14:58,766.766 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 22:14:58,832.832 INFO    ] time= 12/06/2026 22:14:58
[2026-06-12 22:14:58,857.857 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 22:14:58,864.864 INFO    ] Checking for existing commands in stream...
[2026-06-12 22:14:58,954.954 INFO    ] No existing commands found in stream
[2026-06-12 22:15:03,968.968 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 22:15:03,972.972 INFO    ] Waiting 1.17 seconds before fallback handling...
[2026-06-12 22:15:05,497.497 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 22:15:05,498.498 INFO    ] Checking for system updates...
[2026-06-12 22:15:05,520.520 INFO    ] 200
[2026-06-12 22:15:05,521.521 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:15:05,554.554 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 22:15:05,555.555 INFO    ] No update needed
[2026-06-12 22:15:05,557.557 INFO    ] Checking for camera pi updates...
[2026-06-12 22:15:05,576.576 INFO    ] 200
[2026-06-12 22:15:05,578.578 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:15:05,603.603 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 22:15:05,650.650 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 22:15:05,651.651 INFO    ] No camera update needed
[2026-06-12 22:15:05,653.653 INFO    ] Script finished. Safe exiting...
[2026-06-12 22:15:05,654.654 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 22:15:05,658.658 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 22:15:05,661.661 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 22:15:07,698.698 INFO    ] ================================================
[2026-06-12 22:15:07,714.714 INFO    ] Launching Daemon at Fri Jun 12 22:15:07 IST 2026
[2026-06-12 22:15:07,725.725 INFO    ] ================================================
[2026-06-12 22:15:08,061.061 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 22:15:08
[2026-06-12 22:15:08,378.378 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 22:15:08,517.517 INFO    ] Initializing speech engine...
[2026-06-12 22:15:08,528.528 INFO    ] 2026-06-12 22:15:08
[2026-06-12 22:15:08,732.732 INFO    ] 2026-06-12 22:15:08
[2026-06-12 22:15:08,760.760 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 22:15:08,943.943 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 22:15:08,953.953 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 22:15:09,092.092 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 22:15:09,150.150 INFO    ] time= 12/06/2026 22:15:09
[2026-06-12 22:15:09,172.172 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 22:15:09,179.179 INFO    ] Checking for existing commands in stream...
[2026-06-12 22:15:09,245.245 INFO    ] No existing commands found in stream
[2026-06-12 22:15:14,259.259 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 22:15:14,262.262 INFO    ] Waiting 1.21 seconds before fallback handling...
[2026-06-12 22:15:15,833.833 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 22:15:15,835.835 INFO    ] Checking for system updates...
[2026-06-12 22:15:15,856.856 INFO    ] 200
[2026-06-12 22:15:15,857.857 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:15:15,887.887 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 22:15:15,889.889 INFO    ] No update needed
[2026-06-12 22:15:15,891.891 INFO    ] Checking for camera pi updates...
[2026-06-12 22:15:15,910.910 INFO    ] 200
[2026-06-12 22:15:15,912.912 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:15:15,935.935 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 22:15:15,988.988 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 22:15:15,989.989 INFO    ] No camera update needed
[2026-06-12 22:15:15,991.991 INFO    ] Script finished. Safe exiting...
[2026-06-12 22:15:15,992.992 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 22:15:15,995.995 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 22:15:15,998.998 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 22:15:18,038.038 INFO    ] ================================================
[2026-06-12 22:15:18,054.054 INFO    ] Launching Daemon at Fri Jun 12 22:15:18 IST 2026
[2026-06-12 22:15:18,064.064 INFO    ] ================================================
[2026-06-12 22:15:18,442.442 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 22:15:18
[2026-06-12 22:15:18,778.778 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 22:15:18,930.930 INFO    ] Initializing speech engine...
[2026-06-12 22:15:18,935.935 INFO    ] 2026-06-12 22:15:18
[2026-06-12 22:15:19,146.146 INFO    ] 2026-06-12 22:15:19
[2026-06-12 22:15:19,175.175 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 22:15:19,363.363 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 22:15:19,374.374 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 22:15:19,518.518 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 22:15:19,573.573 INFO    ] time= 12/06/2026 22:15:19
[2026-06-12 22:15:19,595.595 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 22:15:19,601.601 INFO    ] Checking for existing commands in stream...
[2026-06-12 22:15:19,669.669 INFO    ] No existing commands found in stream
[2026-06-12 22:15:24,682.682 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 22:15:24,685.685 INFO    ] Waiting 0.67 seconds before fallback handling...
[2026-06-12 22:15:25,770.770 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 22:15:25,772.772 INFO    ] Checking for system updates...
[2026-06-12 22:15:25,793.793 INFO    ] 200
[2026-06-12 22:15:25,794.794 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:15:25,825.825 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 22:15:25,826.826 INFO    ] No update needed
[2026-06-12 22:15:25,828.828 INFO    ] Checking for camera pi updates...
[2026-06-12 22:15:25,847.847 INFO    ] 200
[2026-06-12 22:15:25,848.848 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:15:25,873.873 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 22:15:25,921.921 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 22:15:25,922.922 INFO    ] No camera update needed
[2026-06-12 22:15:25,924.924 INFO    ] Script finished. Safe exiting...
[2026-06-12 22:15:25,925.925 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 22:15:25,928.928 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 22:15:25,930.930 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 22:15:27,968.968 INFO    ] ================================================
[2026-06-12 22:15:27,984.984 INFO    ] Launching Daemon at Fri Jun 12 22:15:27 IST 2026
[2026-06-12 22:15:28,995.995 INFO    ] ================================================
[2026-06-12 22:15:28,378.378 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 22:15:28
[2026-06-12 22:15:28,713.713 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 22:15:28,858.858 INFO    ] Initializing speech engine...
[2026-06-12 22:15:28,868.868 INFO    ] 2026-06-12 22:15:28
[2026-06-12 22:15:29,075.075 INFO    ] 2026-06-12 22:15:29
[2026-06-12 22:15:29,105.105 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 22:15:29,259.259 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 22:15:29,294.294 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 22:15:29,433.433 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 22:15:29,498.498 INFO    ] time= 12/06/2026 22:15:29
[2026-06-12 22:15:29,525.525 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 22:15:29,532.532 INFO    ] Checking for existing commands in stream...
[2026-06-12 22:15:29,600.600 INFO    ] No existing commands found in stream
[2026-06-12 22:15:34,614.614 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 22:15:34,617.617 INFO    ] Waiting 2.89 seconds before fallback handling...
[2026-06-12 22:15:37,917.917 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 22:15:37,919.919 INFO    ] Checking for system updates...
[2026-06-12 22:15:37,942.942 INFO    ] 200
[2026-06-12 22:15:37,943.943 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:15:37,977.977 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 22:15:37,979.979 INFO    ] No update needed
[2026-06-12 22:15:37,981.981 INFO    ] Checking for camera pi updates...
[2026-06-12 22:15:38,004.004 INFO    ] 200
[2026-06-12 22:15:38,006.006 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:15:38,039.039 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 22:15:38,087.087 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 22:15:38,089.089 INFO    ] No camera update needed
[2026-06-12 22:15:38,091.091 INFO    ] Script finished. Safe exiting...
[2026-06-12 22:15:38,093.093 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 22:15:38,097.097 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 22:15:38,101.101 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 22:15:40,124.124 INFO    ] ================================================
[2026-06-12 22:15:40,133.133 INFO    ] Launching Daemon at Fri Jun 12 22:15:40 IST 2026
[2026-06-12 22:15:40,139.139 INFO    ] ================================================
[2026-06-12 22:15:40,438.438 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 22:15:40
[2026-06-12 22:15:40,796.796 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 22:15:40,926.926 INFO    ] Initializing speech engine...
[2026-06-12 22:15:40,929.929 INFO    ] 2026-06-12 22:15:40
[2026-06-12 22:15:41,148.148 INFO    ] 2026-06-12 22:15:41
[2026-06-12 22:15:41,177.177 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 22:15:41,363.363 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 22:15:41,372.372 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 22:15:41,513.513 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 22:15:41,572.572 INFO    ] time= 12/06/2026 22:15:41
[2026-06-12 22:15:41,594.594 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 22:15:41,601.601 INFO    ] Checking for existing commands in stream...
[2026-06-12 22:15:41,667.667 INFO    ] No existing commands found in stream
[2026-06-12 22:15:46,678.678 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 22:15:46,681.681 INFO    ] Waiting 0.46 seconds before fallback handling...
[2026-06-12 22:15:47,533.533 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 22:15:47,534.534 INFO    ] Checking for system updates...
[2026-06-12 22:15:47,555.555 INFO    ] 200
[2026-06-12 22:15:47,556.556 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:15:47,589.589 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 22:15:47,590.590 INFO    ] No update needed
[2026-06-12 22:15:47,592.592 INFO    ] Checking for camera pi updates...
[2026-06-12 22:15:47,611.611 INFO    ] 200
[2026-06-12 22:15:47,612.612 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:15:47,636.636 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 22:15:47,780.780 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 22:15:47,782.782 INFO    ] No camera update needed
[2026-06-12 22:15:47,783.783 INFO    ] Script finished. Safe exiting...
[2026-06-12 22:15:47,784.784 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 22:15:47,787.787 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 22:15:47,790.790 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 22:15:49,829.829 INFO    ] ================================================
[2026-06-12 22:15:49,845.845 INFO    ] Launching Daemon at Fri Jun 12 22:15:49 IST 2026
[2026-06-12 22:15:49,856.856 INFO    ] ================================================
[2026-06-12 22:15:50,200.200 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 22:15:50
[2026-06-12 22:15:50,535.535 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 22:15:50,688.688 INFO    ] Initializing speech engine...
[2026-06-12 22:15:50,694.694 INFO    ] 2026-06-12 22:15:50
[2026-06-12 22:15:50,901.901 INFO    ] 2026-06-12 22:15:50
[2026-06-12 22:15:50,931.931 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 22:15:51,058.058 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 22:15:51,117.117 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 22:15:51,276.276 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 22:15:51,324.324 INFO    ] time= 12/06/2026 22:15:51
[2026-06-12 22:15:51,347.347 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 22:15:51,353.353 INFO    ] Checking for existing commands in stream...
[2026-06-12 22:15:51,420.420 INFO    ] No existing commands found in stream
[2026-06-12 22:15:56,429.429 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 22:15:56,433.433 INFO    ] Waiting 2.33 seconds before fallback handling...
[2026-06-12 22:15:59,141.141 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 22:15:59,142.142 INFO    ] Checking for system updates...
[2026-06-12 22:15:59,163.163 INFO    ] 200
[2026-06-12 22:15:59,165.165 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:15:59,198.198 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 22:15:59,199.199 INFO    ] No update needed
[2026-06-12 22:15:59,201.201 INFO    ] Checking for camera pi updates...
[2026-06-12 22:15:59,222.222 INFO    ] 200
[2026-06-12 22:15:59,224.224 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:15:59,247.247 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 22:15:59,298.298 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 22:15:59,299.299 INFO    ] No camera update needed
[2026-06-12 22:15:59,301.301 INFO    ] Script finished. Safe exiting...
[2026-06-12 22:15:59,302.302 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 22:15:59,305.305 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 22:15:59,308.308 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 22:16:01,347.347 INFO    ] ================================================
[2026-06-12 22:16:01,363.363 INFO    ] Launching Daemon at Fri Jun 12 22:16:01 IST 2026
[2026-06-12 22:16:01,374.374 INFO    ] ================================================
[2026-06-12 22:16:01,755.755 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 22:16:01
[2026-06-12 22:16:02,186.186 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 22:16:02,346.346 INFO    ] Initializing speech engine...
[2026-06-12 22:16:02,349.349 INFO    ] 2026-06-12 22:16:02
[2026-06-12 22:16:02,545.545 INFO    ] 2026-06-12 22:16:02
[2026-06-12 22:16:02,568.568 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 22:16:02,715.715 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 22:16:02,745.745 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 22:16:02,921.921 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 22:16:02,925.925 INFO    ] time= 12/06/2026 22:16:02
[2026-06-12 22:16:02,934.934 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 22:16:02,939.939 INFO    ] Checking for existing commands in stream...
[2026-06-12 22:16:03,018.018 INFO    ] No existing commands found in stream
[2026-06-12 22:16:08,035.035 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 22:16:08,038.038 INFO    ] Waiting 1.70 seconds before fallback handling...
[2026-06-12 22:16:10,094.094 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 22:16:10,095.095 INFO    ] Checking for system updates...
[2026-06-12 22:16:10,116.116 INFO    ] 200
[2026-06-12 22:16:10,117.117 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:16:10,149.149 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 22:16:10,151.151 INFO    ] No update needed
[2026-06-12 22:16:10,152.152 INFO    ] Checking for camera pi updates...
[2026-06-12 22:16:10,174.174 INFO    ] 200
[2026-06-12 22:16:10,175.175 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:16:10,199.199 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 22:16:10,239.239 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 22:16:10,241.241 INFO    ] No camera update needed
[2026-06-12 22:16:10,242.242 INFO    ] Script finished. Safe exiting...
[2026-06-12 22:16:10,244.244 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 22:16:10,247.247 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 22:16:10,250.250 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 22:16:12,289.289 INFO    ] ================================================
[2026-06-12 22:16:12,304.304 INFO    ] Launching Daemon at Fri Jun 12 22:16:12 IST 2026
[2026-06-12 22:16:12,315.315 INFO    ] ================================================
[2026-06-12 22:16:12,703.703 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 22:16:12
[2026-06-12 22:16:13,037.037 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 22:16:13,180.180 INFO    ] Initializing speech engine...
[2026-06-12 22:16:13,185.185 INFO    ] 2026-06-12 22:16:13
[2026-06-12 22:16:13,391.391 INFO    ] 2026-06-12 22:16:13
[2026-06-12 22:16:13,419.419 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 22:16:13,603.603 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 22:16:13,612.612 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 22:16:13,737.737 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 22:16:13,805.805 INFO    ] time= 12/06/2026 22:16:13
[2026-06-12 22:16:13,833.833 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 22:16:13,838.838 INFO    ] Checking for existing commands in stream...
[2026-06-12 22:16:13,905.905 INFO    ] No existing commands found in stream
[2026-06-12 22:16:18,914.914 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 22:16:18,917.917 INFO    ] Waiting 3.78 seconds before fallback handling...
[2026-06-12 22:16:23,085.085 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 22:16:23,087.087 INFO    ] Checking for system updates...
[2026-06-12 22:16:23,108.108 INFO    ] 200
[2026-06-12 22:16:23,110.110 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:16:23,140.140 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 22:16:23,141.141 INFO    ] No update needed
[2026-06-12 22:16:23,142.142 INFO    ] Checking for camera pi updates...
[2026-06-12 22:16:23,163.163 INFO    ] 200
[2026-06-12 22:16:23,164.164 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:16:23,188.188 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 22:16:23,237.237 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 22:16:23,239.239 INFO    ] No camera update needed
[2026-06-12 22:16:23,240.240 INFO    ] Script finished. Safe exiting...
[2026-06-12 22:16:23,242.242 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 22:16:23,245.245 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 22:16:23,248.248 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 22:16:25,287.287 INFO    ] ================================================
[2026-06-12 22:16:25,303.303 INFO    ] Launching Daemon at Fri Jun 12 22:16:25 IST 2026
[2026-06-12 22:16:25,314.314 INFO    ] ================================================
[2026-06-12 22:16:25,651.651 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 22:16:25
[2026-06-12 22:16:25,970.970 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 22:16:26,113.113 INFO    ] Initializing speech engine...
[2026-06-12 22:16:26,119.119 INFO    ] 2026-06-12 22:16:26
[2026-06-12 22:16:26,305.305 INFO    ] 2026-06-12 22:16:26
[2026-06-12 22:16:26,335.335 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 22:16:26,541.541 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 22:16:26,545.545 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 22:16:26,677.677 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 22:16:26,743.743 INFO    ] time= 12/06/2026 22:16:26
[2026-06-12 22:16:26,776.776 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 22:16:26,782.782 INFO    ] Checking for existing commands in stream...
[2026-06-12 22:16:26,849.849 INFO    ] No existing commands found in stream
[2026-06-12 22:16:31,858.858 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 22:16:31,861.861 INFO    ] Waiting 3.60 seconds before fallback handling...
[2026-06-12 22:16:35,823.823 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 22:16:35,824.824 INFO    ] Checking for system updates...
[2026-06-12 22:16:35,845.845 INFO    ] 200
[2026-06-12 22:16:35,846.846 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:16:35,877.877 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 22:16:35,878.878 INFO    ] No update needed
[2026-06-12 22:16:35,879.879 INFO    ] Checking for camera pi updates...
[2026-06-12 22:16:35,902.902 INFO    ] 200
[2026-06-12 22:16:35,903.903 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:16:35,928.928 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 22:16:35,971.971 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 22:16:35,972.972 INFO    ] No camera update needed
[2026-06-12 22:16:35,973.973 INFO    ] Script finished. Safe exiting...
[2026-06-12 22:16:35,975.975 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 22:16:35,977.977 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 22:16:35,980.980 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 22:16:38,020.020 INFO    ] ================================================
[2026-06-12 22:16:38,036.036 INFO    ] Launching Daemon at Fri Jun 12 22:16:38 IST 2026
[2026-06-12 22:16:38,047.047 INFO    ] ================================================
[2026-06-12 22:16:38,404.404 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 22:16:38
[2026-06-12 22:16:38,717.717 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 22:16:38,850.850 INFO    ] Initializing speech engine...
[2026-06-12 22:16:38,862.862 INFO    ] 2026-06-12 22:16:38
[2026-06-12 22:16:39,070.070 INFO    ] 2026-06-12 22:16:39
[2026-06-12 22:16:39,099.099 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 22:16:39,285.285 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 22:16:39,294.294 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 22:16:39,442.442 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 22:16:39,495.495 INFO    ] time= 12/06/2026 22:16:39
[2026-06-12 22:16:39,518.518 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 22:16:39,525.525 INFO    ] Checking for existing commands in stream...
[2026-06-12 22:16:39,616.616 INFO    ] No existing commands found in stream
[2026-06-12 22:16:44,650.650 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 22:16:44,653.653 INFO    ] Waiting 1.34 seconds before fallback handling...
[2026-06-12 22:16:46,373.373 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 22:16:46,374.374 INFO    ] Checking for system updates...
[2026-06-12 22:16:46,394.394 INFO    ] 200
[2026-06-12 22:16:46,396.396 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:16:46,427.427 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 22:16:46,429.429 INFO    ] No update needed
[2026-06-12 22:16:46,430.430 INFO    ] Checking for camera pi updates...
[2026-06-12 22:16:46,450.450 INFO    ] 200
[2026-06-12 22:16:46,452.452 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:16:46,475.475 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 22:16:46,524.524 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 22:16:46,525.525 INFO    ] No camera update needed
[2026-06-12 22:16:46,526.526 INFO    ] Script finished. Safe exiting...
[2026-06-12 22:16:46,527.527 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 22:16:46,530.530 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 22:16:46,533.533 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 22:16:48,572.572 INFO    ] ================================================
[2026-06-12 22:16:48,587.587 INFO    ] Launching Daemon at Fri Jun 12 22:16:48 IST 2026
[2026-06-12 22:16:48,598.598 INFO    ] ================================================
[2026-06-12 22:16:48,950.950 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 22:16:48
[2026-06-12 22:16:49,261.261 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 22:16:49,403.403 INFO    ] Initializing speech engine...
[2026-06-12 22:16:49,408.408 INFO    ] 2026-06-12 22:16:49
[2026-06-12 22:16:49,614.614 INFO    ] 2026-06-12 22:16:49
[2026-06-12 22:16:49,641.641 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 22:16:49,793.793 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 22:16:49,795.795 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 22:16:49,901.901 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 22:16:49,903.903 INFO    ] time= 12/06/2026 22:16:49
[2026-06-12 22:16:49,904.904 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 22:16:49,905.905 INFO    ] Checking for existing commands in stream...
[2026-06-12 22:16:49,963.963 INFO    ] No existing commands found in stream
[2026-06-12 22:16:54,972.972 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 22:16:54,975.975 INFO    ] Waiting 1.94 seconds before fallback handling...
[2026-06-12 22:16:57,320.320 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 22:16:57,321.321 INFO    ] Checking for system updates...
[2026-06-12 22:16:57,342.342 INFO    ] 200
[2026-06-12 22:16:57,344.344 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:16:57,374.374 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 22:16:57,376.376 INFO    ] No update needed
[2026-06-12 22:16:57,377.377 INFO    ] Checking for camera pi updates...
[2026-06-12 22:16:57,397.397 INFO    ] 200
[2026-06-12 22:16:57,398.398 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:16:57,422.422 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 22:16:57,466.466 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 22:16:57,467.467 INFO    ] No camera update needed
[2026-06-12 22:16:57,469.469 INFO    ] Script finished. Safe exiting...
[2026-06-12 22:16:57,470.470 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 22:16:57,473.473 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 22:16:57,476.476 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 22:16:59,515.515 INFO    ] ================================================
[2026-06-12 22:16:59,531.531 INFO    ] Launching Daemon at Fri Jun 12 22:16:59 IST 2026
[2026-06-12 22:16:59,541.541 INFO    ] ================================================
[2026-06-12 22:16:59,885.885 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 22:16:59
[2026-06-12 22:17:00,224.224 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 22:17:00,378.378 INFO    ] Initializing speech engine...
[2026-06-12 22:17:00,381.381 INFO    ] 2026-06-12 22:17:00
[2026-06-12 22:17:00,583.583 INFO    ] 2026-06-12 22:17:00
[2026-06-12 22:17:00,611.611 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 22:17:00,794.794 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 22:17:00,804.804 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 22:17:00,947.947 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 22:17:00,999.999 INFO    ] time= 12/06/2026 22:17:00
[2026-06-12 22:17:01,022.022 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 22:17:01,027.027 INFO    ] Checking for existing commands in stream...
[2026-06-12 22:17:01,095.095 INFO    ] No existing commands found in stream
[2026-06-12 22:17:06,103.103 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 22:17:06,106.106 INFO    ] Waiting 2.04 seconds before fallback handling...
[2026-06-12 22:17:08,533.533 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 22:17:08,534.534 INFO    ] Checking for system updates...
[2026-06-12 22:17:08,555.555 INFO    ] 200
[2026-06-12 22:17:08,556.556 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:17:08,585.585 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 22:17:08,587.587 INFO    ] No update needed
[2026-06-12 22:17:08,588.588 INFO    ] Checking for camera pi updates...
[2026-06-12 22:17:08,610.610 INFO    ] 200
[2026-06-12 22:17:08,612.612 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:17:08,634.634 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 22:17:08,684.684 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 22:17:08,685.685 INFO    ] No camera update needed
[2026-06-12 22:17:08,687.687 INFO    ] Script finished. Safe exiting...
[2026-06-12 22:17:08,688.688 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 22:17:08,691.691 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 22:17:08,694.694 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 22:17:10,734.734 INFO    ] ================================================
[2026-06-12 22:17:10,748.748 INFO    ] Launching Daemon at Fri Jun 12 22:17:10 IST 2026
[2026-06-12 22:17:10,759.759 INFO    ] ================================================
[2026-06-12 22:17:11,128.128 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 22:17:11
[2026-06-12 22:17:11,461.461 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 22:17:11,600.600 INFO    ] Initializing speech engine...
[2026-06-12 22:17:11,612.612 INFO    ] 2026-06-12 22:17:11
[2026-06-12 22:17:11,825.825 INFO    ] 2026-06-12 22:17:11
[2026-06-12 22:17:11,854.854 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 22:17:12,040.040 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 22:17:12,051.051 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 22:17:12,174.174 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 22:17:12,230.230 INFO    ] time= 12/06/2026 22:17:12
[2026-06-12 22:17:12,271.271 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 22:17:12,281.281 INFO    ] Checking for existing commands in stream...
[2026-06-12 22:17:12,348.348 INFO    ] No existing commands found in stream
[2026-06-12 22:17:17,368.368 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 22:17:17,371.371 INFO    ] Waiting 1.09 seconds before fallback handling...
[2026-06-12 22:17:18,844.844 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 22:17:18,846.846 INFO    ] Checking for system updates...
[2026-06-12 22:17:18,868.868 INFO    ] 200
[2026-06-12 22:17:18,869.869 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:17:18,901.901 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 22:17:18,903.903 INFO    ] No update needed
[2026-06-12 22:17:18,904.904 INFO    ] Checking for camera pi updates...
[2026-06-12 22:17:18,926.926 INFO    ] 200
[2026-06-12 22:17:18,927.927 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:17:18,952.952 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 22:17:18,998.998 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 22:17:18,999.999 INFO    ] No camera update needed
[2026-06-12 22:17:19,001.001 INFO    ] Script finished. Safe exiting...
[2026-06-12 22:17:19,002.002 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 22:17:19,005.005 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 22:17:19,008.008 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 22:17:21,047.047 INFO    ] ================================================
[2026-06-12 22:17:21,062.062 INFO    ] Launching Daemon at Fri Jun 12 22:17:21 IST 2026
[2026-06-12 22:17:21,073.073 INFO    ] ================================================
[2026-06-12 22:17:21,439.439 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 22:17:21
[2026-06-12 22:17:21,752.752 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 22:17:21,883.883 INFO    ] Initializing speech engine...
[2026-06-12 22:17:21,891.891 INFO    ] 2026-06-12 22:17:21
[2026-06-12 22:17:22,106.106 INFO    ] 2026-06-12 22:17:22
[2026-06-12 22:17:22,135.135 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 22:17:22,258.258 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 22:17:22,321.321 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 22:17:22,459.459 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 22:17:22,523.523 INFO    ] time= 12/06/2026 22:17:22
[2026-06-12 22:17:22,550.550 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 22:17:22,556.556 INFO    ] Checking for existing commands in stream...
[2026-06-12 22:17:22,623.623 INFO    ] No existing commands found in stream
[2026-06-12 22:17:27,637.637 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 22:17:27,640.640 INFO    ] Waiting 0.46 seconds before fallback handling...
[2026-06-12 22:17:28,484.484 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 22:17:28,485.485 INFO    ] Checking for system updates...
[2026-06-12 22:17:28,506.506 INFO    ] 200
[2026-06-12 22:17:28,507.507 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:17:28,538.538 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 22:17:28,540.540 INFO    ] No update needed
[2026-06-12 22:17:28,541.541 INFO    ] Checking for camera pi updates...
[2026-06-12 22:17:28,561.561 INFO    ] 200
[2026-06-12 22:17:28,562.562 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:17:28,585.585 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 22:17:28,647.647 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 22:17:28,648.648 INFO    ] No camera update needed
[2026-06-12 22:17:28,650.650 INFO    ] Script finished. Safe exiting...
[2026-06-12 22:17:28,651.651 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 22:17:28,654.654 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 22:17:28,657.657 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 22:17:30,696.696 INFO    ] ================================================
[2026-06-12 22:17:30,712.712 INFO    ] Launching Daemon at Fri Jun 12 22:17:30 IST 2026
[2026-06-12 22:17:30,722.722 INFO    ] ================================================
[2026-06-12 22:17:31,087.087 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 22:17:31
[2026-06-12 22:17:31,435.435 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 22:17:31,585.585 INFO    ] Initializing speech engine...
[2026-06-12 22:17:31,599.599 INFO    ] 2026-06-12 22:17:31
[2026-06-12 22:17:31,823.823 INFO    ] 2026-06-12 22:17:31
[2026-06-12 22:17:31,856.856 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 22:17:32,049.049 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 22:17:32,057.057 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 22:17:32,192.192 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 22:17:32,253.253 INFO    ] time= 12/06/2026 22:17:32
[2026-06-12 22:17:32,277.277 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 22:17:32,283.283 INFO    ] Checking for existing commands in stream...
[2026-06-12 22:17:32,397.397 INFO    ] No existing commands found in stream
[2026-06-12 22:17:37,407.407 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 22:17:37,410.410 INFO    ] Waiting 1.80 seconds before fallback handling...
[2026-06-12 22:17:42,149.149 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 22:17:42,152.152 INFO    ] Checking for system updates...
[2026-06-12 22:17:42,188.188 INFO    ] 200
[2026-06-12 22:17:42,191.191 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:17:42,250.250 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 22:17:42,252.252 INFO    ] No update needed
[2026-06-12 22:17:42,255.255 INFO    ] Checking for camera pi updates...
[2026-06-12 22:17:42,285.285 INFO    ] 200
[2026-06-12 22:17:42,286.286 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:17:42,310.310 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 22:17:42,348.348 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 22:17:42,349.349 INFO    ] No camera update needed
[2026-06-12 22:17:42,350.350 INFO    ] Script finished. Safe exiting...
[2026-06-12 22:17:42,352.352 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 22:17:42,355.355 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 22:17:42,357.357 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 22:17:44,397.397 INFO    ] ================================================
[2026-06-12 22:17:44,413.413 INFO    ] Launching Daemon at Fri Jun 12 22:17:44 IST 2026
[2026-06-12 22:17:44,423.423 INFO    ] ================================================
[2026-06-12 22:17:44,789.789 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 22:17:44
[2026-06-12 22:17:45,102.102 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 22:17:45,232.232 INFO    ] Initializing speech engine...
[2026-06-12 22:17:45,240.240 INFO    ] 2026-06-12 22:17:45
[2026-06-12 22:17:45,454.454 INFO    ] 2026-06-12 22:17:45
[2026-06-12 22:17:45,482.482 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 22:17:45,668.668 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 22:17:45,678.678 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 22:17:45,807.807 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 22:17:45,874.874 INFO    ] time= 12/06/2026 22:17:45
[2026-06-12 22:17:45,898.898 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 22:17:45,904.904 INFO    ] Checking for existing commands in stream...
[2026-06-12 22:17:45,995.995 INFO    ] No existing commands found in stream
[2026-06-12 22:17:51,009.009 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 22:17:51,012.012 INFO    ] Waiting 2.74 seconds before fallback handling...
[2026-06-12 22:17:54,145.145 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 22:17:54,147.147 INFO    ] Checking for system updates...
[2026-06-12 22:17:54,168.168 INFO    ] 200
[2026-06-12 22:17:54,170.170 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:17:54,200.200 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 22:17:54,201.201 INFO    ] No update needed
[2026-06-12 22:17:54,202.202 INFO    ] Checking for camera pi updates...
[2026-06-12 22:17:54,223.223 INFO    ] 200
[2026-06-12 22:17:54,224.224 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:17:54,247.247 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 22:17:54,370.370 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 22:17:54,371.371 INFO    ] No camera update needed
[2026-06-12 22:17:54,373.373 INFO    ] Script finished. Safe exiting...
[2026-06-12 22:17:54,374.374 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 22:17:54,377.377 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 22:17:54,379.379 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 22:17:56,418.418 INFO    ] ================================================
[2026-06-12 22:17:56,434.434 INFO    ] Launching Daemon at Fri Jun 12 22:17:56 IST 2026
[2026-06-12 22:17:56,445.445 INFO    ] ================================================
[2026-06-12 22:17:56,774.774 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 22:17:56
[2026-06-12 22:17:57,091.091 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 22:17:57,234.234 INFO    ] Initializing speech engine...
[2026-06-12 22:17:57,239.239 INFO    ] 2026-06-12 22:17:57
[2026-06-12 22:17:57,443.443 INFO    ] 2026-06-12 22:17:57
[2026-06-12 22:17:57,471.471 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 22:17:57,657.657 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 22:17:57,687.687 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 22:17:57,869.869 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 22:17:57,895.895 INFO    ] time= 12/06/2026 22:17:57
[2026-06-12 22:17:57,897.897 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 22:17:57,899.899 INFO    ] Checking for existing commands in stream...
[2026-06-12 22:17:57,967.967 INFO    ] No existing commands found in stream
[2026-06-12 22:18:02,978.978 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 22:18:02,982.982 INFO    ] Waiting 1.57 seconds before fallback handling...
[2026-06-12 22:18:04,955.955 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 22:18:04,956.956 INFO    ] Checking for system updates...
[2026-06-12 22:18:04,989.989 INFO    ] 200
[2026-06-12 22:18:04,991.991 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:18:05,021.021 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 22:18:05,023.023 INFO    ] No update needed
[2026-06-12 22:18:05,024.024 INFO    ] Checking for camera pi updates...
[2026-06-12 22:18:05,044.044 INFO    ] 200
[2026-06-12 22:18:05,045.045 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:18:05,071.071 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 22:18:05,116.116 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 22:18:05,118.118 INFO    ] No camera update needed
[2026-06-12 22:18:05,119.119 INFO    ] Script finished. Safe exiting...
[2026-06-12 22:18:05,121.121 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 22:18:05,124.124 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 22:18:05,127.127 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 22:18:07,153.153 INFO    ] ================================================
[2026-06-12 22:18:07,163.163 INFO    ] Launching Daemon at Fri Jun 12 22:18:07 IST 2026
[2026-06-12 22:18:07,170.170 INFO    ] ================================================
[2026-06-12 22:18:07,521.521 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 22:18:07
[2026-06-12 22:18:07,885.885 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 22:18:08,048.048 INFO    ] Initializing speech engine...
[2026-06-12 22:18:08,054.054 INFO    ] 2026-06-12 22:18:08
[2026-06-12 22:18:08,274.274 INFO    ] 2026-06-12 22:18:08
[2026-06-12 22:18:08,303.303 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 22:18:08,497.497 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 22:18:08,508.508 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 22:18:08,642.642 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 22:18:08,701.701 INFO    ] time= 12/06/2026 22:18:08
[2026-06-12 22:18:08,738.738 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 22:18:08,745.745 INFO    ] Checking for existing commands in stream...
[2026-06-12 22:18:08,813.813 INFO    ] No existing commands found in stream
[2026-06-12 22:18:13,828.828 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 22:18:13,831.831 INFO    ] Waiting 2.55 seconds before fallback handling...
[2026-06-12 22:18:16,774.774 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 22:18:16,776.776 INFO    ] Checking for system updates...
[2026-06-12 22:18:16,798.798 INFO    ] 200
[2026-06-12 22:18:16,800.800 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:18:16,829.829 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 22:18:16,831.831 INFO    ] No update needed
[2026-06-12 22:18:16,832.832 INFO    ] Checking for camera pi updates...
[2026-06-12 22:18:16,853.853 INFO    ] 200
[2026-06-12 22:18:16,854.854 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:18:16,878.878 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 22:18:16,934.934 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 22:18:16,936.936 INFO    ] No camera update needed
[2026-06-12 22:18:16,937.937 INFO    ] Script finished. Safe exiting...
[2026-06-12 22:18:16,938.938 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 22:18:16,942.942 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 22:18:16,945.945 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 22:18:18,984.984 INFO    ] ================================================
[2026-06-12 22:18:19,000.000 INFO    ] Launching Daemon at Fri Jun 12 22:18:18 IST 2026
[2026-06-12 22:18:19,012.012 INFO    ] ================================================
[2026-06-12 22:18:19,344.344 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 22:18:19
[2026-06-12 22:18:19,658.658 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 22:18:19,802.802 INFO    ] Initializing speech engine...
[2026-06-12 22:18:19,807.807 INFO    ] 2026-06-12 22:18:19
[2026-06-12 22:18:20,009.009 INFO    ] 2026-06-12 22:18:19
[2026-06-12 22:18:20,039.039 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 22:18:20,161.161 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 22:18:20,223.223 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 22:18:20,360.360 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 22:18:20,418.418 INFO    ] time= 12/06/2026 22:18:20
[2026-06-12 22:18:20,450.450 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 22:18:20,452.452 INFO    ] Checking for existing commands in stream...
[2026-06-12 22:18:20,523.523 INFO    ] No existing commands found in stream
[2026-06-12 22:18:25,532.532 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 22:18:25,535.535 INFO    ] Waiting 0.22 seconds before fallback handling...
[2026-06-12 22:18:26,095.095 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 22:18:26,096.096 INFO    ] Checking for system updates...
[2026-06-12 22:18:26,116.116 INFO    ] 200
[2026-06-12 22:18:26,118.118 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:18:26,148.148 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 22:18:26,149.149 INFO    ] No update needed
[2026-06-12 22:18:26,150.150 INFO    ] Checking for camera pi updates...
[2026-06-12 22:18:26,169.169 INFO    ] 200
[2026-06-12 22:18:26,171.171 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:18:26,194.194 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 22:18:26,243.243 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 22:18:26,245.245 INFO    ] No camera update needed
[2026-06-12 22:18:26,246.246 INFO    ] Script finished. Safe exiting...
[2026-06-12 22:18:26,247.247 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 22:18:26,250.250 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 22:18:26,253.253 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 22:18:28,292.292 INFO    ] ================================================
[2026-06-12 22:18:28,308.308 INFO    ] Launching Daemon at Fri Jun 12 22:18:28 IST 2026
[2026-06-12 22:18:28,319.319 INFO    ] ================================================
[2026-06-12 22:18:28,652.652 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 22:18:28
[2026-06-12 22:18:28,971.971 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 22:18:29,110.110 INFO    ] Initializing speech engine...
[2026-06-12 22:18:29,119.119 INFO    ] 2026-06-12 22:18:29
[2026-06-12 22:18:29,325.325 INFO    ] 2026-06-12 22:18:29
[2026-06-12 22:18:29,354.354 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 22:18:29,537.537 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 22:18:29,540.540 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 22:18:29,677.677 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 22:18:29,744.744 INFO    ] time= 12/06/2026 22:18:29
[2026-06-12 22:18:29,768.768 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 22:18:29,775.775 INFO    ] Checking for existing commands in stream...
[2026-06-12 22:18:29,865.865 INFO    ] No existing commands found in stream
[2026-06-12 22:18:34,874.874 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 22:18:34,877.877 INFO    ] Waiting 1.53 seconds before fallback handling...
[2026-06-12 22:18:36,806.806 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 22:18:36,808.808 INFO    ] Checking for system updates...
[2026-06-12 22:18:36,833.833 INFO    ] 200
[2026-06-12 22:18:36,835.835 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:18:36,867.867 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 22:18:36,869.869 INFO    ] No update needed
[2026-06-12 22:18:36,870.870 INFO    ] Checking for camera pi updates...
[2026-06-12 22:18:36,893.893 INFO    ] 200
[2026-06-12 22:18:36,894.894 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:18:36,917.917 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 22:18:36,968.968 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 22:18:36,969.969 INFO    ] No camera update needed
[2026-06-12 22:18:36,971.971 INFO    ] Script finished. Safe exiting...
[2026-06-12 22:18:36,972.972 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 22:18:36,975.975 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 22:18:36,978.978 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 22:18:39,017.017 INFO    ] ================================================
[2026-06-12 22:18:39,034.034 INFO    ] Launching Daemon at Fri Jun 12 22:18:39 IST 2026
[2026-06-12 22:18:39,045.045 INFO    ] ================================================
[2026-06-12 22:18:39,415.415 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 22:18:39
[2026-06-12 22:18:39,726.726 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 22:18:39,862.862 INFO    ] Initializing speech engine...
[2026-06-12 22:18:39,870.870 INFO    ] 2026-06-12 22:18:39
[2026-06-12 22:18:40,076.076 INFO    ] 2026-06-12 22:18:40
[2026-06-12 22:18:40,104.104 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 22:18:40,286.286 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 22:18:40,290.290 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 22:18:40,418.418 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 22:18:40,484.484 INFO    ] time= 12/06/2026 22:18:40
[2026-06-12 22:18:40,515.515 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 22:18:40,522.522 INFO    ] Checking for existing commands in stream...
[2026-06-12 22:18:40,588.588 INFO    ] No existing commands found in stream
[2026-06-12 22:18:45,597.597 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 22:18:45,600.600 INFO    ] Waiting 1.70 seconds before fallback handling...
[2026-06-12 22:18:47,663.663 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 22:18:47,664.664 INFO    ] Checking for system updates...
[2026-06-12 22:18:47,685.685 INFO    ] 200
[2026-06-12 22:18:47,686.686 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:18:47,717.717 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 22:18:47,718.718 INFO    ] No update needed
[2026-06-12 22:18:47,720.720 INFO    ] Checking for camera pi updates...
[2026-06-12 22:18:47,740.740 INFO    ] 200
[2026-06-12 22:18:47,741.741 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:18:47,764.764 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 22:18:47,835.835 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 22:18:47,836.836 INFO    ] No camera update needed
[2026-06-12 22:18:47,838.838 INFO    ] Script finished. Safe exiting...
[2026-06-12 22:18:47,839.839 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 22:18:47,843.843 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 22:18:47,846.846 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 22:18:49,884.884 INFO    ] ================================================
[2026-06-12 22:18:49,901.901 INFO    ] Launching Daemon at Fri Jun 12 22:18:49 IST 2026
[2026-06-12 22:18:49,912.912 INFO    ] ================================================
[2026-06-12 22:18:50,274.274 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 22:18:50
[2026-06-12 22:18:50,595.595 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 22:18:50,737.737 INFO    ] Initializing speech engine...
[2026-06-12 22:18:50,743.743 INFO    ] 2026-06-12 22:18:50
[2026-06-12 22:18:50,945.945 INFO    ] 2026-06-12 22:18:50
[2026-06-12 22:18:50,975.975 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 22:18:51,157.157 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 22:18:51,160.160 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 22:18:51,316.316 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 22:18:51,370.370 INFO    ] time= 12/06/2026 22:18:51
[2026-06-12 22:18:51,386.386 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 22:18:51,392.392 INFO    ] Checking for existing commands in stream...
[2026-06-12 22:18:51,459.459 INFO    ] No existing commands found in stream
[2026-06-12 22:18:56,468.468 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 22:18:56,471.471 INFO    ] Waiting 3.82 seconds before fallback handling...
[2026-06-12 22:19:00,648.648 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 22:19:00,649.649 INFO    ] Checking for system updates...
[2026-06-12 22:19:00,670.670 INFO    ] 200
[2026-06-12 22:19:00,671.671 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:19:00,703.703 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 22:19:00,705.705 INFO    ] No update needed
[2026-06-12 22:19:00,706.706 INFO    ] Checking for camera pi updates...
[2026-06-12 22:19:00,725.725 INFO    ] 200
[2026-06-12 22:19:00,726.726 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:19:00,749.749 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 22:19:00,796.796 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 22:19:00,797.797 INFO    ] No camera update needed
[2026-06-12 22:19:00,799.799 INFO    ] Script finished. Safe exiting...
[2026-06-12 22:19:00,800.800 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 22:19:00,803.803 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 22:19:00,806.806 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 22:19:02,836.836 INFO    ] ================================================
[2026-06-12 22:19:02,844.844 INFO    ] Launching Daemon at Fri Jun 12 22:19:02 IST 2026
[2026-06-12 22:19:02,850.850 INFO    ] ================================================
[2026-06-12 22:19:03,174.174 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 22:19:03
[2026-06-12 22:19:03,507.507 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 22:19:03,645.645 INFO    ] Initializing speech engine...
[2026-06-12 22:19:03,653.653 INFO    ] 2026-06-12 22:19:03
[2026-06-12 22:19:03,869.869 INFO    ] 2026-06-12 22:19:03
[2026-06-12 22:19:03,898.898 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 22:19:04,056.056 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 22:19:04,084.084 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 22:19:04,216.216 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 22:19:04,284.284 INFO    ] time= 12/06/2026 22:19:04
[2026-06-12 22:19:04,311.311 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 22:19:04,318.318 INFO    ] Checking for existing commands in stream...
[2026-06-12 22:19:04,384.384 INFO    ] No existing commands found in stream
[2026-06-12 22:19:09,391.391 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 22:19:09,393.393 INFO    ] Waiting 2.80 seconds before fallback handling...
[2026-06-12 22:19:12,509.509 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 22:19:12,511.511 INFO    ] Checking for system updates...
[2026-06-12 22:19:12,534.534 INFO    ] 200
[2026-06-12 22:19:12,535.535 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:19:12,570.570 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 22:19:12,572.572 INFO    ] No update needed
[2026-06-12 22:19:12,574.574 INFO    ] Checking for camera pi updates...
[2026-06-12 22:19:12,596.596 INFO    ] 200
[2026-06-12 22:19:12,598.598 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:19:12,624.624 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 22:19:12,665.665 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 22:19:12,667.667 INFO    ] No camera update needed
[2026-06-12 22:19:12,669.669 INFO    ] Script finished. Safe exiting...
[2026-06-12 22:19:12,671.671 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 22:19:12,675.675 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 22:19:12,678.678 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 22:19:14,704.704 INFO    ] ================================================
[2026-06-12 22:19:14,713.713 INFO    ] Launching Daemon at Fri Jun 12 22:19:14 IST 2026
[2026-06-12 22:19:14,720.720 INFO    ] ================================================
[2026-06-12 22:19:15,029.029 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 22:19:15
[2026-06-12 22:19:15,368.368 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 22:19:15,505.505 INFO    ] Initializing speech engine...
[2026-06-12 22:19:15,511.511 INFO    ] 2026-06-12 22:19:15
[2026-06-12 22:19:15,733.733 INFO    ] 2026-06-12 22:19:15
[2026-06-12 22:19:15,763.763 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 22:19:15,898.898 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 22:19:15,970.970 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 22:19:16,112.112 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 22:19:16,176.176 INFO    ] time= 12/06/2026 22:19:16
[2026-06-12 22:19:16,206.206 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 22:19:16,212.212 INFO    ] Checking for existing commands in stream...
[2026-06-12 22:19:16,273.273 INFO    ] No existing commands found in stream
[2026-06-12 22:19:21,282.282 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 22:19:21,285.285 INFO    ] Waiting 2.39 seconds before fallback handling...
[2026-06-12 22:19:24,073.073 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 22:19:24,074.074 INFO    ] Checking for system updates...
[2026-06-12 22:19:24,095.095 INFO    ] 200
[2026-06-12 22:19:24,096.096 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:19:24,127.127 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 22:19:24,128.128 INFO    ] No update needed
[2026-06-12 22:19:24,130.130 INFO    ] Checking for camera pi updates...
[2026-06-12 22:19:24,149.149 INFO    ] 200
[2026-06-12 22:19:24,151.151 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:19:24,173.173 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 22:19:24,227.227 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 22:19:24,228.228 INFO    ] No camera update needed
[2026-06-12 22:19:24,230.230 INFO    ] Script finished. Safe exiting...
[2026-06-12 22:19:24,231.231 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 22:19:24,234.234 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 22:19:24,237.237 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 22:19:26,275.275 INFO    ] ================================================
[2026-06-12 22:19:26,291.291 INFO    ] Launching Daemon at Fri Jun 12 22:19:26 IST 2026
[2026-06-12 22:19:26,303.303 INFO    ] ================================================
[2026-06-12 22:19:26,647.647 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 22:19:26
[2026-06-12 22:19:26,981.981 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 22:19:27,122.122 INFO    ] Initializing speech engine...
[2026-06-12 22:19:27,136.136 INFO    ] 2026-06-12 22:19:27
[2026-06-12 22:19:27,344.344 INFO    ] 2026-06-12 22:19:27
[2026-06-12 22:19:27,374.374 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 22:19:27,558.558 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 22:19:27,570.570 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 22:19:27,696.696 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 22:19:27,763.763 INFO    ] time= 12/06/2026 22:19:27
[2026-06-12 22:19:27,787.787 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 22:19:27,793.793 INFO    ] Checking for existing commands in stream...
[2026-06-12 22:19:27,861.861 INFO    ] No existing commands found in stream
[2026-06-12 22:19:32,875.875 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 22:19:32,878.878 INFO    ] Waiting 1.38 seconds before fallback handling...
[2026-06-12 22:19:34,624.624 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 22:19:34,625.625 INFO    ] Checking for system updates...
[2026-06-12 22:19:34,647.647 INFO    ] 200
[2026-06-12 22:19:34,648.648 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:19:34,678.678 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 22:19:34,680.680 INFO    ] No update needed
[2026-06-12 22:19:34,681.681 INFO    ] Checking for camera pi updates...
[2026-06-12 22:19:34,700.700 INFO    ] 200
[2026-06-12 22:19:34,702.702 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:19:34,726.726 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 22:19:34,769.769 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 22:19:34,771.771 INFO    ] No camera update needed
[2026-06-12 22:19:34,772.772 INFO    ] Script finished. Safe exiting...
[2026-06-12 22:19:34,773.773 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 22:19:34,776.776 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 22:19:34,779.779 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 22:19:36,816.816 INFO    ] ================================================
[2026-06-12 22:19:36,832.832 INFO    ] Launching Daemon at Fri Jun 12 22:19:36 IST 2026
[2026-06-12 22:19:36,843.843 INFO    ] ================================================
[2026-06-12 22:19:37,169.169 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 22:19:37
[2026-06-12 22:19:37,486.486 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 22:19:37,635.635 INFO    ] Initializing speech engine...
[2026-06-12 22:19:37,641.641 INFO    ] 2026-06-12 22:19:37
[2026-06-12 22:19:37,855.855 INFO    ] 2026-06-12 22:19:37
[2026-06-12 22:19:37,884.884 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 22:19:38,085.085 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 22:19:38,094.094 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 22:19:38,239.239 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 22:19:38,305.305 INFO    ] time= 12/06/2026 22:19:38
[2026-06-12 22:19:38,331.331 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 22:19:38,337.337 INFO    ] Checking for existing commands in stream...
[2026-06-12 22:19:38,409.409 INFO    ] No existing commands found in stream
[2026-06-12 22:19:43,442.442 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 22:19:43,445.445 INFO    ] Waiting 0.54 seconds before fallback handling...
[2026-06-12 22:19:44,365.365 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 22:19:44,366.366 INFO    ] Checking for system updates...
[2026-06-12 22:19:44,387.387 INFO    ] 200
[2026-06-12 22:19:44,388.388 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:19:44,417.417 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 22:19:44,419.419 INFO    ] No update needed
[2026-06-12 22:19:44,420.420 INFO    ] Checking for camera pi updates...
[2026-06-12 22:19:44,440.440 INFO    ] 200
[2026-06-12 22:19:44,441.441 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:19:44,464.464 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 22:19:44,522.522 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 22:19:44,524.524 INFO    ] No camera update needed
[2026-06-12 22:19:44,525.525 INFO    ] Script finished. Safe exiting...
[2026-06-12 22:19:44,526.526 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 22:19:44,529.529 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 22:19:44,532.532 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 22:19:46,570.570 INFO    ] ================================================
[2026-06-12 22:19:46,586.586 INFO    ] Launching Daemon at Fri Jun 12 22:19:46 IST 2026
[2026-06-12 22:19:46,598.598 INFO    ] ================================================
[2026-06-12 22:19:46,962.962 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 22:19:46
[2026-06-12 22:19:47,279.279 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 22:19:47,413.413 INFO    ] Initializing speech engine...
[2026-06-12 22:19:47,418.418 INFO    ] 2026-06-12 22:19:47
[2026-06-12 22:19:47,648.648 INFO    ] 2026-06-12 22:19:47
[2026-06-12 22:19:47,679.679 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 22:19:47,831.831 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 22:19:47,878.878 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 22:19:48,026.026 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 22:19:48,095.095 INFO    ] time= 12/06/2026 22:19:48
[2026-06-12 22:19:48,123.123 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 22:19:48,125.125 INFO    ] Checking for existing commands in stream...
[2026-06-12 22:19:48,226.226 INFO    ] No existing commands found in stream
[2026-06-12 22:19:53,241.241 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 22:19:53,243.243 INFO    ] Waiting 0.98 seconds before fallback handling...
[2026-06-12 22:19:54,625.625 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 22:19:54,627.627 INFO    ] Checking for system updates...
[2026-06-12 22:19:54,648.648 INFO    ] 200
[2026-06-12 22:19:54,650.650 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:19:54,681.681 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 22:19:54,682.682 INFO    ] No update needed
[2026-06-12 22:19:54,684.684 INFO    ] Checking for camera pi updates...
[2026-06-12 22:19:54,703.703 INFO    ] 200
[2026-06-12 22:19:54,705.705 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:19:54,728.728 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 22:19:54,788.788 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 22:19:54,789.789 INFO    ] No camera update needed
[2026-06-12 22:19:54,791.791 INFO    ] Script finished. Safe exiting...
[2026-06-12 22:19:54,792.792 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 22:19:54,795.795 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 22:19:54,798.798 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 22:19:56,838.838 INFO    ] ================================================
[2026-06-12 22:19:56,854.854 INFO    ] Launching Daemon at Fri Jun 12 22:19:56 IST 2026
[2026-06-12 22:19:56,864.864 INFO    ] ================================================
[2026-06-12 22:19:57,216.216 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 22:19:57
[2026-06-12 22:19:57,530.530 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 22:19:57,662.662 INFO    ] Initializing speech engine...
[2026-06-12 22:19:57,667.667 INFO    ] 2026-06-12 22:19:57
[2026-06-12 22:19:57,881.881 INFO    ] 2026-06-12 22:19:57
[2026-06-12 22:19:57,909.909 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 22:19:58,059.059 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 22:19:58,126.126 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 22:19:58,266.266 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 22:19:58,322.322 INFO    ] time= 12/06/2026 22:19:58
[2026-06-12 22:19:58,371.371 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 22:19:58,373.373 INFO    ] Checking for existing commands in stream...
[2026-06-12 22:19:58,474.474 INFO    ] No existing commands found in stream
[2026-06-12 22:20:03,483.483 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 22:20:03,486.486 INFO    ] Waiting 3.63 seconds before fallback handling...
[2026-06-12 22:20:08,620.620 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 22:20:08,623.623 INFO    ] Checking for system updates...
[2026-06-12 22:20:08,662.662 INFO    ] 200
[2026-06-12 22:20:08,665.665 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:20:08,724.724 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 22:20:08,725.725 INFO    ] No update needed
[2026-06-12 22:20:08,726.726 INFO    ] Checking for camera pi updates...
[2026-06-12 22:20:08,748.748 INFO    ] 200
[2026-06-12 22:20:08,750.750 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:20:08,774.774 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 22:20:08,827.827 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 22:20:08,828.828 INFO    ] No camera update needed
[2026-06-12 22:20:08,830.830 INFO    ] Script finished. Safe exiting...
[2026-06-12 22:20:08,831.831 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 22:20:08,835.835 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 22:20:08,837.837 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 22:20:10,876.876 INFO    ] ================================================
[2026-06-12 22:20:10,892.892 INFO    ] Launching Daemon at Fri Jun 12 22:20:10 IST 2026
[2026-06-12 22:20:10,904.904 INFO    ] ================================================
[2026-06-12 22:20:11,261.261 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 22:20:11
[2026-06-12 22:20:11,596.596 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 22:20:11,745.745 INFO    ] Initializing speech engine...
[2026-06-12 22:20:11,752.752 INFO    ] 2026-06-12 22:20:11
[2026-06-12 22:20:11,958.958 INFO    ] 2026-06-12 22:20:11
[2026-06-12 22:20:11,987.987 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 22:20:12,170.170 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 22:20:12,180.180 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 22:20:12,325.325 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 22:20:12,379.379 INFO    ] time= 12/06/2026 22:20:12
[2026-06-12 22:20:12,401.401 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 22:20:12,407.407 INFO    ] Checking for existing commands in stream...
[2026-06-12 22:20:12,497.497 INFO    ] No existing commands found in stream
[2026-06-12 22:20:17,511.511 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 22:20:17,514.514 INFO    ] Waiting 3.58 seconds before fallback handling...
[2026-06-12 22:20:21,456.456 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 22:20:21,458.458 INFO    ] Checking for system updates...
[2026-06-12 22:20:21,479.479 INFO    ] 200
[2026-06-12 22:20:21,480.480 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:20:21,512.512 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 22:20:21,514.514 INFO    ] No update needed
[2026-06-12 22:20:21,515.515 INFO    ] Checking for camera pi updates...
[2026-06-12 22:20:21,538.538 INFO    ] 200
[2026-06-12 22:20:21,539.539 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:20:21,562.562 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 22:20:21,622.622 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 22:20:21,623.623 INFO    ] No camera update needed
[2026-06-12 22:20:21,625.625 INFO    ] Script finished. Safe exiting...
[2026-06-12 22:20:21,626.626 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 22:20:21,629.629 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 22:20:21,632.632 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 22:20:23,672.672 INFO    ] ================================================
[2026-06-12 22:20:23,687.687 INFO    ] Launching Daemon at Fri Jun 12 22:20:23 IST 2026
[2026-06-12 22:20:23,698.698 INFO    ] ================================================
[2026-06-12 22:20:24,038.038 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 22:20:24
[2026-06-12 22:20:24,349.349 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 22:20:24,492.492 INFO    ] Initializing speech engine...
[2026-06-12 22:20:24,498.498 INFO    ] 2026-06-12 22:20:24
[2026-06-12 22:20:24,699.699 INFO    ] 2026-06-12 22:20:24
[2026-06-12 22:20:24,728.728 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 22:20:24,912.912 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 22:20:24,922.922 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 22:20:25,043.043 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 22:20:25,093.093 INFO    ] time= 12/06/2026 22:20:25
[2026-06-12 22:20:25,141.141 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 22:20:25,143.143 INFO    ] Checking for existing commands in stream...
[2026-06-12 22:20:25,213.213 INFO    ] No existing commands found in stream
[2026-06-12 22:20:30,227.227 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 22:20:30,230.230 INFO    ] Waiting 0.84 seconds before fallback handling...
[2026-06-12 22:20:31,443.443 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 22:20:31,445.445 INFO    ] Checking for system updates...
[2026-06-12 22:20:31,465.465 INFO    ] 200
[2026-06-12 22:20:31,467.467 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:20:31,496.496 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 22:20:31,498.498 INFO    ] No update needed
[2026-06-12 22:20:31,499.499 INFO    ] Checking for camera pi updates...
[2026-06-12 22:20:31,518.518 INFO    ] 200
[2026-06-12 22:20:31,519.519 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:20:31,544.544 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 22:20:31,602.602 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 22:20:31,603.603 INFO    ] No camera update needed
[2026-06-12 22:20:31,604.604 INFO    ] Script finished. Safe exiting...
[2026-06-12 22:20:31,606.606 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 22:20:31,609.609 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 22:20:31,611.611 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 22:20:33,643.643 INFO    ] ================================================
[2026-06-12 22:20:33,659.659 INFO    ] Launching Daemon at Fri Jun 12 22:20:33 IST 2026
[2026-06-12 22:20:33,670.670 INFO    ] ================================================
[2026-06-12 22:20:34,052.052 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 22:20:34
[2026-06-12 22:20:34,387.387 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 22:20:34,537.537 INFO    ] Initializing speech engine...
[2026-06-12 22:20:34,543.543 INFO    ] 2026-06-12 22:20:34
[2026-06-12 22:20:34,750.750 INFO    ] 2026-06-12 22:20:34
[2026-06-12 22:20:34,779.779 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 22:20:34,923.923 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 22:20:34,966.966 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 22:20:35,105.105 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 22:20:35,174.174 INFO    ] time= 12/06/2026 22:20:35
[2026-06-12 22:20:35,197.197 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 22:20:35,203.203 INFO    ] Checking for existing commands in stream...
[2026-06-12 22:20:35,270.270 INFO    ] No existing commands found in stream
[2026-06-12 22:20:40,280.280 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 22:20:40,283.283 INFO    ] Waiting 1.17 seconds before fallback handling...
[2026-06-12 22:20:41,814.814 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 22:20:41,816.816 INFO    ] Checking for system updates...
[2026-06-12 22:20:41,837.837 INFO    ] 200
[2026-06-12 22:20:41,838.838 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:20:41,868.868 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 22:20:41,870.870 INFO    ] No update needed
[2026-06-12 22:20:41,871.871 INFO    ] Checking for camera pi updates...
[2026-06-12 22:20:41,892.892 INFO    ] 200
[2026-06-12 22:20:41,893.893 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:20:41,919.919 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 22:20:41,969.969 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 22:20:41,970.970 INFO    ] No camera update needed
[2026-06-12 22:20:41,972.972 INFO    ] Script finished. Safe exiting...
[2026-06-12 22:20:41,973.973 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 22:20:41,976.976 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 22:20:41,979.979 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 22:20:44,017.017 INFO    ] ================================================
[2026-06-12 22:20:44,032.032 INFO    ] Launching Daemon at Fri Jun 12 22:20:44 IST 2026
[2026-06-12 22:20:44,044.044 INFO    ] ================================================
[2026-06-12 22:20:44,390.390 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 22:20:44
[2026-06-12 22:20:44,705.705 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 22:20:44,839.839 INFO    ] Initializing speech engine...
[2026-06-12 22:20:44,851.851 INFO    ] 2026-06-12 22:20:44
[2026-06-12 22:20:45,056.056 INFO    ] 2026-06-12 22:20:45
[2026-06-12 22:20:45,085.085 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 22:20:45,268.268 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 22:20:45,278.278 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 22:20:45,407.407 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 22:20:45,474.474 INFO    ] time= 12/06/2026 22:20:45
[2026-06-12 22:20:45,498.498 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 22:20:45,504.504 INFO    ] Checking for existing commands in stream...
[2026-06-12 22:20:45,572.572 INFO    ] No existing commands found in stream
[2026-06-12 22:20:50,581.581 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 22:20:50,584.584 INFO    ] Waiting 2.74 seconds before fallback handling...
[2026-06-12 22:20:53,684.684 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 22:20:53,685.685 INFO    ] Checking for system updates...
[2026-06-12 22:20:53,706.706 INFO    ] 200
[2026-06-12 22:20:53,707.707 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:20:53,737.737 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 22:20:53,739.739 INFO    ] No update needed
[2026-06-12 22:20:53,740.740 INFO    ] Checking for camera pi updates...
[2026-06-12 22:20:53,761.761 INFO    ] 200
[2026-06-12 22:20:53,763.763 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:20:53,789.789 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 22:20:53,833.833 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 22:20:53,834.834 INFO    ] No camera update needed
[2026-06-12 22:20:53,836.836 INFO    ] Script finished. Safe exiting...
[2026-06-12 22:20:53,837.837 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 22:20:53,840.840 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 22:20:53,844.844 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 22:20:55,883.883 INFO    ] ================================================
[2026-06-12 22:20:55,898.898 INFO    ] Launching Daemon at Fri Jun 12 22:20:55 IST 2026
[2026-06-12 22:20:55,910.910 INFO    ] ================================================
[2026-06-12 22:20:56,269.269 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 22:20:56
[2026-06-12 22:20:56,582.582 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 22:20:56,713.713 INFO    ] Initializing speech engine...
[2026-06-12 22:20:56,719.719 INFO    ] 2026-06-12 22:20:56
[2026-06-12 22:20:56,948.948 INFO    ] 2026-06-12 22:20:56
[2026-06-12 22:20:56,979.979 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 22:20:57,110.110 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 22:20:57,176.176 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 22:20:57,324.324 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 22:20:57,395.395 INFO    ] time= 12/06/2026 22:20:57
[2026-06-12 22:20:57,421.421 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 22:20:57,428.428 INFO    ] Checking for existing commands in stream...
[2026-06-12 22:20:57,499.499 INFO    ] No existing commands found in stream
[2026-06-12 22:21:02,522.522 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 22:21:02,524.524 INFO    ] Waiting 0.47 seconds before fallback handling...
[2026-06-12 22:21:03,365.365 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 22:21:03,367.367 INFO    ] Checking for system updates...
[2026-06-12 22:21:03,387.387 INFO    ] 200
[2026-06-12 22:21:03,388.388 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:21:03,418.418 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 22:21:03,420.420 INFO    ] No update needed
[2026-06-12 22:21:03,421.421 INFO    ] Checking for camera pi updates...
[2026-06-12 22:21:03,442.442 INFO    ] 200
[2026-06-12 22:21:03,443.443 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:21:03,466.466 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 22:21:03,508.508 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 22:21:03,510.510 INFO    ] No camera update needed
[2026-06-12 22:21:03,512.512 INFO    ] Script finished. Safe exiting...
[2026-06-12 22:21:03,513.513 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 22:21:03,516.516 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 22:21:03,519.519 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 22:21:05,559.559 INFO    ] ================================================
[2026-06-12 22:21:05,575.575 INFO    ] Launching Daemon at Fri Jun 12 22:21:05 IST 2026
[2026-06-12 22:21:05,587.587 INFO    ] ================================================
[2026-06-12 22:21:05,932.932 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 22:21:05
[2026-06-12 22:21:06,246.246 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 22:21:06,379.379 INFO    ] Initializing speech engine...
[2026-06-12 22:21:06,384.384 INFO    ] 2026-06-12 22:21:06
[2026-06-12 22:21:06,615.615 INFO    ] 2026-06-12 22:21:06
[2026-06-12 22:21:06,645.645 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 22:21:06,777.777 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 22:21:06,844.844 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 22:21:06,987.987 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 22:21:07,028.028 INFO    ] time= 12/06/2026 22:21:06
[2026-06-12 22:21:07,071.071 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 22:21:07,095.095 INFO    ] Checking for existing commands in stream...
[2026-06-12 22:21:07,198.198 INFO    ] No existing commands found in stream
[2026-06-12 22:21:12,212.212 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 22:21:12,215.215 INFO    ] Waiting 3.82 seconds before fallback handling...
[2026-06-12 22:21:16,432.432 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 22:21:16,434.434 INFO    ] Checking for system updates...
[2026-06-12 22:21:16,454.454 INFO    ] 200
[2026-06-12 22:21:16,455.455 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:21:16,487.487 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 22:21:16,489.489 INFO    ] No update needed
[2026-06-12 22:21:16,490.490 INFO    ] Checking for camera pi updates...
[2026-06-12 22:21:16,509.509 INFO    ] 200
[2026-06-12 22:21:16,510.510 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:21:16,537.537 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 22:21:16,578.578 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 22:21:16,580.580 INFO    ] No camera update needed
[2026-06-12 22:21:16,581.581 INFO    ] Script finished. Safe exiting...
[2026-06-12 22:21:16,582.582 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 22:21:16,585.585 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 22:21:16,588.588 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 22:21:18,626.626 INFO    ] ================================================
[2026-06-12 22:21:18,642.642 INFO    ] Launching Daemon at Fri Jun 12 22:21:18 IST 2026
[2026-06-12 22:21:18,654.654 INFO    ] ================================================
[2026-06-12 22:21:19,022.022 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 22:21:19
[2026-06-12 22:21:19,341.341 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 22:21:19,485.485 INFO    ] Initializing speech engine...
[2026-06-12 22:21:19,491.491 INFO    ] 2026-06-12 22:21:19
[2026-06-12 22:21:19,694.694 INFO    ] 2026-06-12 22:21:19
[2026-06-12 22:21:19,722.722 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 22:21:19,906.906 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 22:21:19,910.910 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 22:21:20,038.038 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 22:21:20,098.098 INFO    ] time= 12/06/2026 22:21:20
[2026-06-12 22:21:20,128.128 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 22:21:20,140.140 INFO    ] Checking for existing commands in stream...
[2026-06-12 22:21:20,199.199 INFO    ] No existing commands found in stream
[2026-06-12 22:21:25,220.220 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 22:21:25,223.223 INFO    ] Waiting 0.49 seconds before fallback handling...
[2026-06-12 22:21:26,081.081 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 22:21:26,082.082 INFO    ] Checking for system updates...
[2026-06-12 22:21:26,102.102 INFO    ] 200
[2026-06-12 22:21:26,103.103 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:21:26,135.135 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 22:21:26,136.136 INFO    ] No update needed
[2026-06-12 22:21:26,138.138 INFO    ] Checking for camera pi updates...
[2026-06-12 22:21:26,158.158 INFO    ] 200
[2026-06-12 22:21:26,160.160 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:21:26,183.183 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 22:21:26,224.224 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 22:21:26,225.225 INFO    ] No camera update needed
[2026-06-12 22:21:26,227.227 INFO    ] Script finished. Safe exiting...
[2026-06-12 22:21:26,228.228 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 22:21:26,231.231 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 22:21:26,234.234 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 22:21:28,272.272 INFO    ] ================================================
[2026-06-12 22:21:28,289.289 INFO    ] Launching Daemon at Fri Jun 12 22:21:28 IST 2026
[2026-06-12 22:21:28,299.299 INFO    ] ================================================
[2026-06-12 22:21:28,644.644 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 22:21:28
[2026-06-12 22:21:28,957.957 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 22:21:29,092.092 INFO    ] Initializing speech engine...
[2026-06-12 22:21:29,095.095 INFO    ] 2026-06-12 22:21:29
[2026-06-12 22:21:29,326.326 INFO    ] 2026-06-12 22:21:29
[2026-06-12 22:21:29,357.357 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 22:21:29,495.495 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 22:21:29,559.559 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 22:21:29,701.701 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 22:21:29,758.758 INFO    ] time= 12/06/2026 22:21:29
[2026-06-12 22:21:29,805.805 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 22:21:29,811.811 INFO    ] Checking for existing commands in stream...
[2026-06-12 22:21:29,915.915 INFO    ] No existing commands found in stream
[2026-06-12 22:21:34,923.923 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 22:21:34,926.926 INFO    ] Waiting 1.40 seconds before fallback handling...
[2026-06-12 22:21:36,703.703 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 22:21:36,704.704 INFO    ] Checking for system updates...
[2026-06-12 22:21:36,726.726 INFO    ] 200
[2026-06-12 22:21:36,727.727 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:21:36,757.757 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 22:21:36,759.759 INFO    ] No update needed
[2026-06-12 22:21:36,760.760 INFO    ] Checking for camera pi updates...
[2026-06-12 22:21:36,780.780 INFO    ] 200
[2026-06-12 22:21:36,781.781 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:21:36,806.806 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 22:21:36,859.859 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 22:21:36,860.860 INFO    ] No camera update needed
[2026-06-12 22:21:36,861.861 INFO    ] Script finished. Safe exiting...
[2026-06-12 22:21:36,863.863 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 22:21:36,866.866 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 22:21:36,869.869 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 22:21:38,908.908 INFO    ] ================================================
[2026-06-12 22:21:38,924.924 INFO    ] Launching Daemon at Fri Jun 12 22:21:38 IST 2026
[2026-06-12 22:21:38,936.936 INFO    ] ================================================
[2026-06-12 22:21:39,267.267 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 22:21:39
[2026-06-12 22:21:39,582.582 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 22:21:39,720.720 INFO    ] Initializing speech engine...
[2026-06-12 22:21:39,730.730 INFO    ] 2026-06-12 22:21:39
[2026-06-12 22:21:39,936.936 INFO    ] 2026-06-12 22:21:39
[2026-06-12 22:21:39,966.966 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 22:21:40,152.152 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 22:21:40,155.155 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 22:21:40,295.295 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 22:21:40,348.348 INFO    ] time= 12/06/2026 22:21:40
[2026-06-12 22:21:40,384.384 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 22:21:40,390.390 INFO    ] Checking for existing commands in stream...
[2026-06-12 22:21:40,460.460 INFO    ] No existing commands found in stream
[2026-06-12 22:21:45,471.471 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 22:21:45,474.474 INFO    ] Waiting 0.56 seconds before fallback handling...
[2026-06-12 22:21:46,411.411 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 22:21:46,412.412 INFO    ] Checking for system updates...
[2026-06-12 22:21:46,433.433 INFO    ] 200
[2026-06-12 22:21:46,434.434 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:21:46,464.464 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 22:21:46,466.466 INFO    ] No update needed
[2026-06-12 22:21:46,467.467 INFO    ] Checking for camera pi updates...
[2026-06-12 22:21:46,488.488 INFO    ] 200
[2026-06-12 22:21:46,489.489 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:21:46,513.513 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 22:21:46,557.557 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 22:21:46,559.559 INFO    ] No camera update needed
[2026-06-12 22:21:46,560.560 INFO    ] Script finished. Safe exiting...
[2026-06-12 22:21:46,562.562 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 22:21:46,565.565 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 22:21:46,568.568 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 22:21:48,610.610 INFO    ] ================================================
[2026-06-12 22:21:48,626.626 INFO    ] Launching Daemon at Fri Jun 12 22:21:48 IST 2026
[2026-06-12 22:21:48,637.637 INFO    ] ================================================
[2026-06-12 22:21:48,978.978 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 22:21:48
[2026-06-12 22:21:49,295.295 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 22:21:49,438.438 INFO    ] Initializing speech engine...
[2026-06-12 22:21:49,444.444 INFO    ] 2026-06-12 22:21:49
[2026-06-12 22:21:49,648.648 INFO    ] 2026-06-12 22:21:49
[2026-06-12 22:21:49,678.678 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 22:21:49,820.820 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 22:21:49,865.865 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 22:21:50,002.002 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 22:21:50,066.066 INFO    ] time= 12/06/2026 22:21:50
[2026-06-12 22:21:50,092.092 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 22:21:50,099.099 INFO    ] Checking for existing commands in stream...
[2026-06-12 22:21:50,165.165 INFO    ] No existing commands found in stream
[2026-06-12 22:21:55,172.172 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 22:21:55,175.175 INFO    ] Waiting 1.60 seconds before fallback handling...
[2026-06-12 22:21:57,132.132 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 22:21:57,134.134 INFO    ] Checking for system updates...
[2026-06-12 22:21:57,154.154 INFO    ] 200
[2026-06-12 22:21:57,155.155 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:21:57,186.186 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 22:21:57,188.188 INFO    ] No update needed
[2026-06-12 22:21:57,189.189 INFO    ] Checking for camera pi updates...
[2026-06-12 22:21:57,210.210 INFO    ] 200
[2026-06-12 22:21:57,211.211 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:21:57,234.234 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 22:21:57,289.289 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 22:21:57,290.290 INFO    ] No camera update needed
[2026-06-12 22:21:57,292.292 INFO    ] Script finished. Safe exiting...
[2026-06-12 22:21:57,293.293 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 22:21:57,296.296 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 22:21:57,298.298 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 22:21:59,336.336 INFO    ] ================================================
[2026-06-12 22:21:59,351.351 INFO    ] Launching Daemon at Fri Jun 12 22:21:59 IST 2026
[2026-06-12 22:21:59,362.362 INFO    ] ================================================
[2026-06-12 22:21:59,719.719 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 22:21:59
[2026-06-12 22:22:00,036.036 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 22:22:00,178.178 INFO    ] Initializing speech engine...
[2026-06-12 22:22:00,183.183 INFO    ] 2026-06-12 22:22:00
[2026-06-12 22:22:00,387.387 INFO    ] 2026-06-12 22:22:00
[2026-06-12 22:22:00,415.415 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 22:22:00,597.597 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 22:22:00,601.601 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 22:22:00,735.735 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 22:22:00,797.797 INFO    ] time= 12/06/2026 22:22:00
[2026-06-12 22:22:00,829.829 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 22:22:00,836.836 INFO    ] Checking for existing commands in stream...
[2026-06-12 22:22:00,902.902 INFO    ] No existing commands found in stream
[2026-06-12 22:22:05,911.911 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 22:22:05,914.914 INFO    ] Waiting 3.57 seconds before fallback handling...
[2026-06-12 22:22:09,844.844 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 22:22:09,846.846 INFO    ] Checking for system updates...
[2026-06-12 22:22:09,867.867 INFO    ] 200
[2026-06-12 22:22:09,868.868 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:22:09,900.900 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 22:22:09,901.901 INFO    ] No update needed
[2026-06-12 22:22:09,902.902 INFO    ] Checking for camera pi updates...
[2026-06-12 22:22:09,925.925 INFO    ] 200
[2026-06-12 22:22:09,926.926 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:22:09,949.949 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 22:22:10,100.100 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 22:22:10,101.101 INFO    ] No camera update needed
[2026-06-12 22:22:10,102.102 INFO    ] Script finished. Safe exiting...
[2026-06-12 22:22:10,104.104 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 22:22:10,106.106 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 22:22:10,109.109 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 22:22:12,148.148 INFO    ] ================================================
[2026-06-12 22:22:12,164.164 INFO    ] Launching Daemon at Fri Jun 12 22:22:12 IST 2026
[2026-06-12 22:22:12,175.175 INFO    ] ================================================
[2026-06-12 22:22:12,525.525 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 22:22:12
[2026-06-12 22:22:12,843.843 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 22:22:12,978.978 INFO    ] Initializing speech engine...
[2026-06-12 22:22:12,982.982 INFO    ] 2026-06-12 22:22:12
[2026-06-12 22:22:13,185.185 INFO    ] 2026-06-12 22:22:13
[2026-06-12 22:22:13,217.217 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 22:22:13,387.387 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 22:22:13,445.445 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 22:22:13,587.587 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 22:22:13,649.649 INFO    ] time= 12/06/2026 22:22:13
[2026-06-12 22:22:13,689.689 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 22:22:13,696.696 INFO    ] Checking for existing commands in stream...
[2026-06-12 22:22:13,771.771 INFO    ] No existing commands found in stream
[2026-06-12 22:22:18,782.782 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 22:22:18,785.785 INFO    ] Waiting 0.78 seconds before fallback handling...
[2026-06-12 22:22:19,942.942 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 22:22:19,944.944 INFO    ] Checking for system updates...
[2026-06-12 22:22:19,965.965 INFO    ] 200
[2026-06-12 22:22:19,966.966 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:22:19,998.998 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 22:22:19,999.999 INFO    ] No update needed
[2026-06-12 22:22:20,001.001 INFO    ] Checking for camera pi updates...
[2026-06-12 22:22:20,020.020 INFO    ] 200
[2026-06-12 22:22:20,021.021 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:22:20,044.044 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 22:22:20,089.089 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 22:22:20,090.090 INFO    ] No camera update needed
[2026-06-12 22:22:20,092.092 INFO    ] Script finished. Safe exiting...
[2026-06-12 22:22:20,093.093 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 22:22:20,096.096 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 22:22:20,098.098 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 22:22:22,136.136 INFO    ] ================================================
[2026-06-12 22:22:22,151.151 INFO    ] Launching Daemon at Fri Jun 12 22:22:22 IST 2026
[2026-06-12 22:22:22,162.162 INFO    ] ================================================
[2026-06-12 22:22:22,521.521 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 22:22:22
[2026-06-12 22:22:22,838.838 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 22:22:22,976.976 INFO    ] Initializing speech engine...
[2026-06-12 22:22:22,987.987 INFO    ] 2026-06-12 22:22:22
[2026-06-12 22:22:23,192.192 INFO    ] 2026-06-12 22:22:23
[2026-06-12 22:22:23,220.220 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 22:22:23,404.404 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 22:22:23,415.415 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 22:22:23,546.546 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 22:22:23,610.610 INFO    ] time= 12/06/2026 22:22:23
[2026-06-12 22:22:23,638.638 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 22:22:23,645.645 INFO    ] Checking for existing commands in stream...
[2026-06-12 22:22:23,710.710 INFO    ] No existing commands found in stream
[2026-06-12 22:22:28,721.721 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 22:22:28,724.724 INFO    ] Waiting 2.33 seconds before fallback handling...
[2026-06-12 22:22:31,433.433 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 22:22:31,434.434 INFO    ] Checking for system updates...
[2026-06-12 22:22:31,455.455 INFO    ] 200
[2026-06-12 22:22:31,456.456 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:22:31,488.488 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 22:22:31,490.490 INFO    ] No update needed
[2026-06-12 22:22:31,492.492 INFO    ] Checking for camera pi updates...
[2026-06-12 22:22:31,519.519 INFO    ] 200
[2026-06-12 22:22:31,521.521 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:22:31,556.556 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 22:22:31,605.605 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 22:22:31,607.607 INFO    ] No camera update needed
[2026-06-12 22:22:31,609.609 INFO    ] Script finished. Safe exiting...
[2026-06-12 22:22:31,610.610 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 22:22:31,614.614 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 22:22:31,618.618 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 22:22:33,660.660 INFO    ] ================================================
[2026-06-12 22:22:33,676.676 INFO    ] Launching Daemon at Fri Jun 12 22:22:33 IST 2026
[2026-06-12 22:22:33,687.687 INFO    ] ================================================
[2026-06-12 22:22:34,016.016 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 22:22:34
[2026-06-12 22:22:34,336.336 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 22:22:34,485.485 INFO    ] Initializing speech engine...
[2026-06-12 22:22:34,490.490 INFO    ] 2026-06-12 22:22:34
[2026-06-12 22:22:34,708.708 INFO    ] 2026-06-12 22:22:34
[2026-06-12 22:22:34,738.738 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 22:22:34,937.937 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 22:22:34,941.941 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 22:22:35,087.087 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 22:22:35,141.141 INFO    ] time= 12/06/2026 22:22:35
[2026-06-12 22:22:35,181.181 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 22:22:35,187.187 INFO    ] Checking for existing commands in stream...
[2026-06-12 22:22:35,262.262 INFO    ] No existing commands found in stream
[2026-06-12 22:22:40,273.273 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 22:22:40,276.276 INFO    ] Waiting 1.41 seconds before fallback handling...
[2026-06-12 22:22:42,076.076 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 22:22:42,078.078 INFO    ] Checking for system updates...
[2026-06-12 22:22:42,098.098 INFO    ] 200
[2026-06-12 22:22:42,099.099 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:22:42,129.129 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 22:22:42,131.131 INFO    ] No update needed
[2026-06-12 22:22:42,132.132 INFO    ] Checking for camera pi updates...
[2026-06-12 22:22:42,152.152 INFO    ] 200
[2026-06-12 22:22:42,153.153 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:22:42,176.176 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 22:22:42,221.221 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 22:22:42,222.222 INFO    ] No camera update needed
[2026-06-12 22:22:42,223.223 INFO    ] Script finished. Safe exiting...
[2026-06-12 22:22:42,224.224 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 22:22:42,227.227 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 22:22:42,230.230 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 22:22:44,269.269 INFO    ] ================================================
[2026-06-12 22:22:44,284.284 INFO    ] Launching Daemon at Fri Jun 12 22:22:44 IST 2026
[2026-06-12 22:22:44,295.295 INFO    ] ================================================
[2026-06-12 22:22:44,629.629 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 22:22:44
[2026-06-12 22:22:44,949.949 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 22:22:45,085.085 INFO    ] Initializing speech engine...
[2026-06-12 22:22:45,094.094 INFO    ] 2026-06-12 22:22:45
[2026-06-12 22:22:45,322.322 INFO    ] 2026-06-12 22:22:45
[2026-06-12 22:22:45,353.353 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 22:22:45,553.553 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 22:22:45,557.557 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 22:22:45,698.698 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 22:22:45,754.754 INFO    ] time= 12/06/2026 22:22:45
[2026-06-12 22:22:45,800.800 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 22:22:45,806.806 INFO    ] Checking for existing commands in stream...
[2026-06-12 22:22:45,882.882 INFO    ] No existing commands found in stream
[2026-06-12 22:22:50,893.893 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 22:22:50,896.896 INFO    ] Waiting 3.93 seconds before fallback handling...
[2026-06-12 22:22:55,195.195 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 22:22:55,197.197 INFO    ] Checking for system updates...
[2026-06-12 22:22:55,218.218 INFO    ] 200
[2026-06-12 22:22:55,220.220 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:22:55,250.250 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 22:22:55,251.251 INFO    ] No update needed
[2026-06-12 22:22:55,253.253 INFO    ] Checking for camera pi updates...
[2026-06-12 22:22:55,272.272 INFO    ] 200
[2026-06-12 22:22:55,274.274 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:22:55,299.299 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 22:22:55,346.346 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 22:22:55,347.347 INFO    ] No camera update needed
[2026-06-12 22:22:55,349.349 INFO    ] Script finished. Safe exiting...
[2026-06-12 22:22:55,350.350 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 22:22:55,354.354 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 22:22:55,357.357 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 22:22:57,394.394 INFO    ] ================================================
[2026-06-12 22:22:57,410.410 INFO    ] Launching Daemon at Fri Jun 12 22:22:57 IST 2026
[2026-06-12 22:22:57,421.421 INFO    ] ================================================
[2026-06-12 22:22:57,772.772 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 22:22:57
[2026-06-12 22:22:58,085.085 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 22:22:58,227.227 INFO    ] Initializing speech engine...
[2026-06-12 22:22:58,233.233 INFO    ] 2026-06-12 22:22:58
[2026-06-12 22:22:58,436.436 INFO    ] 2026-06-12 22:22:58
[2026-06-12 22:22:58,466.466 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 22:22:58,650.650 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 22:22:58,653.653 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 22:22:58,791.791 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 22:22:58,857.857 INFO    ] time= 12/06/2026 22:22:58
[2026-06-12 22:22:58,882.882 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 22:22:58,884.884 INFO    ] Checking for existing commands in stream...
[2026-06-12 22:22:58,954.954 INFO    ] No existing commands found in stream
[2026-06-12 22:23:03,964.964 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 22:23:03,967.967 INFO    ] Waiting 0.94 seconds before fallback handling...
[2026-06-12 22:23:05,953.953 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 22:23:05,956.956 INFO    ] Checking for system updates...
[2026-06-12 22:23:05,996.996 INFO    ] 200
[2026-06-12 22:23:05,999.999 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:23:06,045.045 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 22:23:06,046.046 INFO    ] No update needed
[2026-06-12 22:23:06,047.047 INFO    ] Checking for camera pi updates...
[2026-06-12 22:23:06,069.069 INFO    ] 200
[2026-06-12 22:23:06,070.070 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:23:06,093.093 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 22:23:06,134.134 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 22:23:06,136.136 INFO    ] No camera update needed
[2026-06-12 22:23:06,137.137 INFO    ] Script finished. Safe exiting...
[2026-06-12 22:23:06,138.138 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 22:23:06,141.141 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 22:23:06,144.144 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 22:23:08,184.184 INFO    ] ================================================
[2026-06-12 22:23:08,199.199 INFO    ] Launching Daemon at Fri Jun 12 22:23:08 IST 2026
[2026-06-12 22:23:08,209.209 INFO    ] ================================================
[2026-06-12 22:23:08,540.540 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 22:23:08
[2026-06-12 22:23:08,855.855 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 22:23:08,992.992 INFO    ] Initializing speech engine...
[2026-06-12 22:23:09,000.000 INFO    ] 2026-06-12 22:23:08
[2026-06-12 22:23:09,228.228 INFO    ] 2026-06-12 22:23:09
[2026-06-12 22:23:09,260.260 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 22:23:09,461.461 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 22:23:09,465.465 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 22:23:09,612.612 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 22:23:09,664.664 INFO    ] time= 12/06/2026 22:23:09
[2026-06-12 22:23:09,711.711 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 22:23:09,718.718 INFO    ] Checking for existing commands in stream...
[2026-06-12 22:23:09,821.821 INFO    ] No existing commands found in stream
[2026-06-12 22:23:14,830.830 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 22:23:14,833.833 INFO    ] Waiting 2.45 seconds before fallback handling...
[2026-06-12 22:23:17,700.700 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 22:23:17,702.702 INFO    ] Checking for system updates...
[2026-06-12 22:23:17,722.722 INFO    ] 200
[2026-06-12 22:23:17,724.724 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:23:17,754.754 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 22:23:17,755.755 INFO    ] No update needed
[2026-06-12 22:23:17,756.756 INFO    ] Checking for camera pi updates...
[2026-06-12 22:23:17,776.776 INFO    ] 200
[2026-06-12 22:23:17,777.777 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:23:17,801.801 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 22:23:17,852.852 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 22:23:17,854.854 INFO    ] No camera update needed
[2026-06-12 22:23:17,855.855 INFO    ] Script finished. Safe exiting...
[2026-06-12 22:23:17,856.856 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 22:23:17,859.859 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 22:23:17,862.862 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 22:23:19,901.901 INFO    ] ================================================
[2026-06-12 22:23:19,922.922 INFO    ] Launching Daemon at Fri Jun 12 22:23:19 IST 2026
[2026-06-12 22:23:19,932.932 INFO    ] ================================================
[2026-06-12 22:23:20,276.276 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 22:23:20
[2026-06-12 22:23:20,593.593 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 22:23:20,737.737 INFO    ] Initializing speech engine...
[2026-06-12 22:23:20,742.742 INFO    ] 2026-06-12 22:23:20
[2026-06-12 22:23:20,947.947 INFO    ] 2026-06-12 22:23:20
[2026-06-12 22:23:20,975.975 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 22:23:21,159.159 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 22:23:21,168.168 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 22:23:21,346.346 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 22:23:21,390.390 INFO    ] time= 12/06/2026 22:23:21
[2026-06-12 22:23:21,397.397 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 22:23:21,399.399 INFO    ] Checking for existing commands in stream...
[2026-06-12 22:23:21,466.466 INFO    ] No existing commands found in stream
[2026-06-12 22:23:26,475.475 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 22:23:26,479.479 INFO    ] Waiting 1.32 seconds before fallback handling...
[2026-06-12 22:23:28,104.104 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 22:23:28,106.106 INFO    ] Checking for system updates...
[2026-06-12 22:23:28,127.127 INFO    ] 200
[2026-06-12 22:23:28,128.128 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:23:28,159.159 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 22:23:28,160.160 INFO    ] No update needed
[2026-06-12 22:23:28,162.162 INFO    ] Checking for camera pi updates...
[2026-06-12 22:23:28,182.182 INFO    ] 200
[2026-06-12 22:23:28,183.183 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:23:28,209.209 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 22:23:28,252.252 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 22:23:28,254.254 INFO    ] No camera update needed
[2026-06-12 22:23:28,255.255 INFO    ] Script finished. Safe exiting...
[2026-06-12 22:23:28,256.256 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 22:23:28,260.260 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 22:23:28,263.263 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 22:23:30,301.301 INFO    ] ================================================
[2026-06-12 22:23:30,316.316 INFO    ] Launching Daemon at Fri Jun 12 22:23:30 IST 2026
[2026-06-12 22:23:30,327.327 INFO    ] ================================================
[2026-06-12 22:23:30,680.680 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 22:23:30
[2026-06-12 22:23:30,992.992 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 22:23:31,124.124 INFO    ] Initializing speech engine...
[2026-06-12 22:23:31,127.127 INFO    ] 2026-06-12 22:23:31
[2026-06-12 22:23:31,363.363 INFO    ] 2026-06-12 22:23:31
[2026-06-12 22:23:31,395.395 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 22:23:31,595.595 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 22:23:31,598.598 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 22:23:31,763.763 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 22:23:31,818.818 INFO    ] time= 12/06/2026 22:23:31
[2026-06-12 22:23:31,853.853 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 22:23:31,866.866 INFO    ] Checking for existing commands in stream...
[2026-06-12 22:23:31,947.947 INFO    ] No existing commands found in stream
[2026-06-12 22:23:36,958.958 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 22:23:36,961.961 INFO    ] Waiting 1.66 seconds before fallback handling...
[2026-06-12 22:23:38,992.992 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 22:23:38,994.994 INFO    ] Checking for system updates...
[2026-06-12 22:23:39,014.014 INFO    ] 200
[2026-06-12 22:23:39,015.015 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:23:39,045.045 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 22:23:39,046.046 INFO    ] No update needed
[2026-06-12 22:23:39,047.047 INFO    ] Checking for camera pi updates...
[2026-06-12 22:23:39,069.069 INFO    ] 200
[2026-06-12 22:23:39,071.071 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:23:39,094.094 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 22:23:39,143.143 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 22:23:39,145.145 INFO    ] No camera update needed
[2026-06-12 22:23:39,146.146 INFO    ] Script finished. Safe exiting...
[2026-06-12 22:23:39,147.147 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 22:23:39,150.150 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 22:23:39,153.153 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 22:23:41,192.192 INFO    ] ================================================
[2026-06-12 22:23:41,207.207 INFO    ] Launching Daemon at Fri Jun 12 22:23:41 IST 2026
[2026-06-12 22:23:41,218.218 INFO    ] ================================================
[2026-06-12 22:23:41,553.553 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 22:23:41
[2026-06-12 22:23:41,868.868 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 22:23:42,011.011 INFO    ] Initializing speech engine...
[2026-06-12 22:23:42,016.016 INFO    ] 2026-06-12 22:23:42
[2026-06-12 22:23:42,220.220 INFO    ] 2026-06-12 22:23:42
[2026-06-12 22:23:42,249.249 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 22:23:42,376.376 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 22:23:42,434.434 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 22:23:42,571.571 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 22:23:42,635.635 INFO    ] time= 12/06/2026 22:23:42
[2026-06-12 22:23:42,663.663 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 22:23:42,669.669 INFO    ] Checking for existing commands in stream...
[2026-06-12 22:23:42,735.735 INFO    ] No existing commands found in stream
[2026-06-12 22:23:47,747.747 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 22:23:47,750.750 INFO    ] Waiting 2.46 seconds before fallback handling...
[2026-06-12 22:23:50,582.582 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 22:23:50,584.584 INFO    ] Checking for system updates...
[2026-06-12 22:23:50,604.604 INFO    ] 200
[2026-06-12 22:23:50,606.606 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:23:50,636.636 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 22:23:50,637.637 INFO    ] No update needed
[2026-06-12 22:23:50,638.638 INFO    ] Checking for camera pi updates...
[2026-06-12 22:23:50,658.658 INFO    ] 200
[2026-06-12 22:23:50,659.659 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:23:50,682.682 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 22:23:50,723.723 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 22:23:50,724.724 INFO    ] No camera update needed
[2026-06-12 22:23:50,726.726 INFO    ] Script finished. Safe exiting...
[2026-06-12 22:23:50,727.727 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 22:23:50,730.730 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 22:23:50,733.733 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 22:23:52,772.772 INFO    ] ================================================
[2026-06-12 22:23:52,788.788 INFO    ] Launching Daemon at Fri Jun 12 22:23:52 IST 2026
[2026-06-12 22:23:52,799.799 INFO    ] ================================================
[2026-06-12 22:23:53,166.166 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 22:23:53
[2026-06-12 22:23:53,485.485 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 22:23:53,624.624 INFO    ] Initializing speech engine...
[2026-06-12 22:23:53,634.634 INFO    ] 2026-06-12 22:23:53
[2026-06-12 22:23:53,841.841 INFO    ] 2026-06-12 22:23:53
[2026-06-12 22:23:53,870.870 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 22:23:54,056.056 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 22:23:54,066.066 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 22:23:54,196.196 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 22:23:54,250.250 INFO    ] time= 12/06/2026 22:23:54
[2026-06-12 22:23:54,274.274 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 22:23:54,290.290 INFO    ] Checking for existing commands in stream...
[2026-06-12 22:23:54,362.362 INFO    ] No existing commands found in stream
[2026-06-12 22:23:59,371.371 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 22:23:59,374.374 INFO    ] Waiting 0.73 seconds before fallback handling...
[2026-06-12 22:24:00,470.470 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 22:24:00,472.472 INFO    ] Checking for system updates...
[2026-06-12 22:24:00,493.493 INFO    ] 200
[2026-06-12 22:24:00,494.494 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:24:00,525.525 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 22:24:00,526.526 INFO    ] No update needed
[2026-06-12 22:24:00,527.527 INFO    ] Checking for camera pi updates...
[2026-06-12 22:24:00,548.548 INFO    ] 200
[2026-06-12 22:24:00,549.549 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:24:00,572.572 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 22:24:00,613.613 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 22:24:00,614.614 INFO    ] No camera update needed
[2026-06-12 22:24:00,616.616 INFO    ] Script finished. Safe exiting...
[2026-06-12 22:24:00,617.617 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 22:24:00,620.620 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 22:24:00,623.623 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 22:24:02,656.656 INFO    ] ================================================
[2026-06-12 22:24:02,670.670 INFO    ] Launching Daemon at Fri Jun 12 22:24:02 IST 2026
[2026-06-12 22:24:02,681.681 INFO    ] ================================================
[2026-06-12 22:24:03,066.066 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 22:24:03
[2026-06-12 22:24:03,404.404 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 22:24:03,536.536 INFO    ] Initializing speech engine...
[2026-06-12 22:24:03,540.540 INFO    ] 2026-06-12 22:24:03
[2026-06-12 22:24:03,760.760 INFO    ] 2026-06-12 22:24:03
[2026-06-12 22:24:03,788.788 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 22:24:03,923.923 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 22:24:03,977.977 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 22:24:04,116.116 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 22:24:04,180.180 INFO    ] time= 12/06/2026 22:24:04
[2026-06-12 22:24:04,208.208 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 22:24:04,215.215 INFO    ] Checking for existing commands in stream...
[2026-06-12 22:24:04,283.283 INFO    ] No existing commands found in stream
[2026-06-12 22:24:09,296.296 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 22:24:09,299.299 INFO    ] Waiting 1.05 seconds before fallback handling...
[2026-06-12 22:24:10,739.739 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 22:24:10,741.741 INFO    ] Checking for system updates...
[2026-06-12 22:24:10,777.777 INFO    ] 200
[2026-06-12 22:24:10,780.780 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:24:10,833.833 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 22:24:10,836.836 INFO    ] No update needed
[2026-06-12 22:24:10,838.838 INFO    ] Checking for camera pi updates...
[2026-06-12 22:24:10,872.872 INFO    ] 200
[2026-06-12 22:24:10,874.874 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:24:10,914.914 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 22:24:10,968.968 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 22:24:10,971.971 INFO    ] No camera update needed
[2026-06-12 22:24:10,972.972 INFO    ] Script finished. Safe exiting...
[2026-06-12 22:24:10,974.974 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 22:24:10,977.977 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 22:24:10,979.979 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 22:24:13,017.017 INFO    ] ================================================
[2026-06-12 22:24:13,032.032 INFO    ] Launching Daemon at Fri Jun 12 22:24:13 IST 2026
[2026-06-12 22:24:13,043.043 INFO    ] ================================================
[2026-06-12 22:24:13,381.381 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 22:24:13
[2026-06-12 22:24:13,697.697 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 22:24:13,835.835 INFO    ] Initializing speech engine...
[2026-06-12 22:24:13,845.845 INFO    ] 2026-06-12 22:24:13
[2026-06-12 22:24:14,050.050 INFO    ] 2026-06-12 22:24:14
[2026-06-12 22:24:14,079.079 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 22:24:14,262.262 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 22:24:14,270.270 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 22:24:14,410.410 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 22:24:14,467.467 INFO    ] time= 12/06/2026 22:24:14
[2026-06-12 22:24:14,489.489 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 22:24:14,496.496 INFO    ] Checking for existing commands in stream...
[2026-06-12 22:24:14,562.562 INFO    ] No existing commands found in stream
[2026-06-12 22:24:19,571.571 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 22:24:19,574.574 INFO    ] Waiting 0.27 seconds before fallback handling...
[2026-06-12 22:24:20,234.234 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 22:24:20,236.236 INFO    ] Checking for system updates...
[2026-06-12 22:24:20,256.256 INFO    ] 200
[2026-06-12 22:24:20,258.258 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:24:20,290.290 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 22:24:20,292.292 INFO    ] No update needed
[2026-06-12 22:24:20,293.293 INFO    ] Checking for camera pi updates...
[2026-06-12 22:24:20,313.313 INFO    ] 200
[2026-06-12 22:24:20,314.314 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:24:20,339.339 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 22:24:20,480.480 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 22:24:20,481.481 INFO    ] No camera update needed
[2026-06-12 22:24:20,483.483 INFO    ] Script finished. Safe exiting...
[2026-06-12 22:24:20,484.484 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 22:24:20,487.487 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 22:24:20,490.490 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 22:24:22,527.527 INFO    ] ================================================
[2026-06-12 22:24:22,543.543 INFO    ] Launching Daemon at Fri Jun 12 22:24:22 IST 2026
[2026-06-12 22:24:22,554.554 INFO    ] ================================================
[2026-06-12 22:24:22,929.929 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 22:24:22
[2026-06-12 22:24:23,247.247 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 22:24:23,391.391 INFO    ] Initializing speech engine...
[2026-06-12 22:24:23,396.396 INFO    ] 2026-06-12 22:24:23
[2026-06-12 22:24:23,601.601 INFO    ] 2026-06-12 22:24:23
[2026-06-12 22:24:23,628.628 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 22:24:23,814.814 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 22:24:23,823.823 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 22:24:23,953.953 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 22:24:24,019.019 INFO    ] time= 12/06/2026 22:24:23
[2026-06-12 22:24:24,043.043 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 22:24:24,045.045 INFO    ] Checking for existing commands in stream...
[2026-06-12 22:24:24,140.140 INFO    ] No existing commands found in stream
[2026-06-12 22:24:29,154.154 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 22:24:29,157.157 INFO    ] Waiting 0.37 seconds before fallback handling...
[2026-06-12 22:24:29,909.909 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 22:24:29,911.911 INFO    ] Checking for system updates...
[2026-06-12 22:24:29,931.931 INFO    ] 200
[2026-06-12 22:24:29,933.933 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:24:29,963.963 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 22:24:29,964.964 INFO    ] No update needed
[2026-06-12 22:24:29,966.966 INFO    ] Checking for camera pi updates...
[2026-06-12 22:24:29,985.985 INFO    ] 200
[2026-06-12 22:24:29,986.986 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:24:30,012.012 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 22:24:30,054.054 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 22:24:30,056.056 INFO    ] No camera update needed
[2026-06-12 22:24:30,057.057 INFO    ] Script finished. Safe exiting...
[2026-06-12 22:24:30,058.058 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 22:24:30,061.061 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 22:24:30,064.064 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 22:24:32,104.104 INFO    ] ================================================
[2026-06-12 22:24:32,121.121 INFO    ] Launching Daemon at Fri Jun 12 22:24:32 IST 2026
[2026-06-12 22:24:32,133.133 INFO    ] ================================================
[2026-06-12 22:24:32,533.533 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 22:24:32
[2026-06-12 22:24:32,904.904 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 22:24:33,056.056 INFO    ] Initializing speech engine...
[2026-06-12 22:24:33,062.062 INFO    ] 2026-06-12 22:24:33
[2026-06-12 22:24:33,272.272 INFO    ] 2026-06-12 22:24:33
[2026-06-12 22:24:33,302.302 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 22:24:33,489.489 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 22:24:33,498.498 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 22:24:33,636.636 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 22:24:33,699.699 INFO    ] time= 12/06/2026 22:24:33
[2026-06-12 22:24:33,723.723 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 22:24:33,730.730 INFO    ] Checking for existing commands in stream...
[2026-06-12 22:24:33,798.798 INFO    ] No existing commands found in stream
[2026-06-12 22:24:38,813.813 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 22:24:38,816.816 INFO    ] Waiting 3.17 seconds before fallback handling...
[2026-06-12 22:24:42,391.391 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 22:24:42,393.393 INFO    ] Checking for system updates...
[2026-06-12 22:24:42,413.413 INFO    ] 200
[2026-06-12 22:24:42,415.415 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:24:42,445.445 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 22:24:42,446.446 INFO    ] No update needed
[2026-06-12 22:24:42,448.448 INFO    ] Checking for camera pi updates...
[2026-06-12 22:24:42,467.467 INFO    ] 200
[2026-06-12 22:24:42,469.469 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:24:42,492.492 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 22:24:42,539.539 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 22:24:42,541.541 INFO    ] No camera update needed
[2026-06-12 22:24:42,542.542 INFO    ] Script finished. Safe exiting...
[2026-06-12 22:24:42,544.544 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 22:24:42,547.547 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 22:24:42,550.550 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 22:24:44,590.590 INFO    ] ================================================
[2026-06-12 22:24:44,607.607 INFO    ] Launching Daemon at Fri Jun 12 22:24:44 IST 2026
[2026-06-12 22:24:44,618.618 INFO    ] ================================================
[2026-06-12 22:24:44,984.984 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 22:24:44
[2026-06-12 22:24:45,299.299 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 22:24:45,437.437 INFO    ] Initializing speech engine...
[2026-06-12 22:24:45,448.448 INFO    ] 2026-06-12 22:24:45
[2026-06-12 22:24:45,651.651 INFO    ] 2026-06-12 22:24:45
[2026-06-12 22:24:45,680.680 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 22:24:45,863.863 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 22:24:45,872.872 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 22:24:46,001.001 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 22:24:46,060.060 INFO    ] time= 12/06/2026 22:24:46
[2026-06-12 22:24:46,091.091 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 22:24:46,098.098 INFO    ] Checking for existing commands in stream...
[2026-06-12 22:24:46,165.165 INFO    ] No existing commands found in stream
[2026-06-12 22:24:51,174.174 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 22:24:51,176.176 INFO    ] Waiting 3.55 seconds before fallback handling...
[2026-06-12 22:24:55,060.060 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 22:24:55,061.061 INFO    ] Checking for system updates...
[2026-06-12 22:24:55,083.083 INFO    ] 200
[2026-06-12 22:24:55,084.084 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:24:55,114.114 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 22:24:55,115.115 INFO    ] No update needed
[2026-06-12 22:24:55,117.117 INFO    ] Checking for camera pi updates...
[2026-06-12 22:24:55,136.136 INFO    ] 200
[2026-06-12 22:24:55,137.137 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:24:55,162.162 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 22:24:55,204.204 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 22:24:55,206.206 INFO    ] No camera update needed
[2026-06-12 22:24:55,207.207 INFO    ] Script finished. Safe exiting...
[2026-06-12 22:24:55,208.208 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 22:24:55,211.211 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 22:24:55,214.214 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 22:24:57,254.254 INFO    ] ================================================
[2026-06-12 22:24:57,270.270 INFO    ] Launching Daemon at Fri Jun 12 22:24:57 IST 2026
[2026-06-12 22:24:57,282.282 INFO    ] ================================================
[2026-06-12 22:24:57,652.652 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 22:24:57
[2026-06-12 22:24:57,968.968 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 22:24:58,104.104 INFO    ] Initializing speech engine...
[2026-06-12 22:24:58,114.114 INFO    ] 2026-06-12 22:24:58
[2026-06-12 22:24:58,299.299 INFO    ] 2026-06-12 22:24:58
[2026-06-12 22:24:58,325.325 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 22:24:58,472.472 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 22:24:58,535.535 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 22:24:58,674.674 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 22:24:58,738.738 INFO    ] time= 12/06/2026 22:24:58
[2026-06-12 22:24:58,766.766 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 22:24:58,773.773 INFO    ] Checking for existing commands in stream...
[2026-06-12 22:24:58,841.841 INFO    ] No existing commands found in stream
[2026-06-12 22:25:03,850.850 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 22:25:03,852.852 INFO    ] Waiting 2.33 seconds before fallback handling...
[2026-06-12 22:25:06,540.540 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 22:25:06,542.542 INFO    ] Checking for system updates...
[2026-06-12 22:25:06,562.562 INFO    ] 200
[2026-06-12 22:25:06,564.564 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:25:06,596.596 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 22:25:06,597.597 INFO    ] No update needed
[2026-06-12 22:25:06,598.598 INFO    ] Checking for camera pi updates...
[2026-06-12 22:25:06,618.618 INFO    ] 200
[2026-06-12 22:25:06,620.620 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:25:06,644.644 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 22:25:06,691.691 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 22:25:06,693.693 INFO    ] No camera update needed
[2026-06-12 22:25:06,694.694 INFO    ] Script finished. Safe exiting...
[2026-06-12 22:25:06,695.695 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 22:25:06,698.698 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 22:25:06,701.701 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 22:25:08,741.741 INFO    ] ================================================
[2026-06-12 22:25:08,757.757 INFO    ] Launching Daemon at Fri Jun 12 22:25:08 IST 2026
[2026-06-12 22:25:08,768.768 INFO    ] ================================================
[2026-06-12 22:25:09,116.116 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 22:25:09
[2026-06-12 22:25:09,427.427 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 22:25:09,570.570 INFO    ] Initializing speech engine...
[2026-06-12 22:25:09,575.575 INFO    ] 2026-06-12 22:25:09
[2026-06-12 22:25:09,780.780 INFO    ] 2026-06-12 22:25:09
[2026-06-12 22:25:09,809.809 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 22:25:09,994.994 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 22:25:09,997.997 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 22:25:10,132.132 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 22:25:10,198.198 INFO    ] time= 12/06/2026 22:25:10
[2026-06-12 22:25:10,226.226 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 22:25:10,232.232 INFO    ] Checking for existing commands in stream...
[2026-06-12 22:25:10,299.299 INFO    ] No existing commands found in stream
[2026-06-12 22:25:15,308.308 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 22:25:15,311.311 INFO    ] Waiting 0.34 seconds before fallback handling...
[2026-06-12 22:25:16,011.011 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 22:25:16,013.013 INFO    ] Checking for system updates...
[2026-06-12 22:25:16,034.034 INFO    ] 200
[2026-06-12 22:25:16,036.036 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:25:16,065.065 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 22:25:16,067.067 INFO    ] No update needed
[2026-06-12 22:25:16,068.068 INFO    ] Checking for camera pi updates...
[2026-06-12 22:25:16,087.087 INFO    ] 200
[2026-06-12 22:25:16,089.089 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:25:16,115.115 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 22:25:16,172.172 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 22:25:16,173.173 INFO    ] No camera update needed
[2026-06-12 22:25:16,175.175 INFO    ] Script finished. Safe exiting...
[2026-06-12 22:25:16,176.176 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 22:25:16,179.179 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 22:25:16,182.182 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 22:25:18,220.220 INFO    ] ================================================
[2026-06-12 22:25:18,236.236 INFO    ] Launching Daemon at Fri Jun 12 22:25:18 IST 2026
[2026-06-12 22:25:18,246.246 INFO    ] ================================================
[2026-06-12 22:25:18,588.588 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 22:25:18
[2026-06-12 22:25:18,922.922 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 22:25:19,061.061 INFO    ] Initializing speech engine...
[2026-06-12 22:25:19,075.075 INFO    ] 2026-06-12 22:25:19
[2026-06-12 22:25:19,288.288 INFO    ] 2026-06-12 22:25:19
[2026-06-12 22:25:19,317.317 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 22:25:19,505.505 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 22:25:19,514.514 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 22:25:19,639.639 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 22:25:19,695.695 INFO    ] time= 12/06/2026 22:25:19
[2026-06-12 22:25:19,735.735 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 22:25:19,745.745 INFO    ] Checking for existing commands in stream...
[2026-06-12 22:25:19,813.813 INFO    ] No existing commands found in stream
[2026-06-12 22:25:24,822.822 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 22:25:24,825.825 INFO    ] Waiting 3.26 seconds before fallback handling...
[2026-06-12 22:25:28,463.463 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 22:25:28,465.465 INFO    ] Checking for system updates...
[2026-06-12 22:25:28,486.486 INFO    ] 200
[2026-06-12 22:25:28,488.488 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:25:28,520.520 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 22:25:28,522.522 INFO    ] No update needed
[2026-06-12 22:25:28,523.523 INFO    ] Checking for camera pi updates...
[2026-06-12 22:25:28,543.543 INFO    ] 200
[2026-06-12 22:25:28,545.545 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:25:28,568.568 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 22:25:28,625.625 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 22:25:28,627.627 INFO    ] No camera update needed
[2026-06-12 22:25:28,628.628 INFO    ] Script finished. Safe exiting...
[2026-06-12 22:25:28,629.629 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 22:25:28,633.633 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 22:25:28,636.636 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 22:25:30,673.673 INFO    ] ================================================
[2026-06-12 22:25:30,689.689 INFO    ] Launching Daemon at Fri Jun 12 22:25:30 IST 2026
[2026-06-12 22:25:30,700.700 INFO    ] ================================================
[2026-06-12 22:25:31,050.050 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 22:25:31
[2026-06-12 22:25:31,382.382 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 22:25:31,533.533 INFO    ] Initializing speech engine...
[2026-06-12 22:25:31,538.538 INFO    ] 2026-06-12 22:25:31
[2026-06-12 22:25:31,751.751 INFO    ] 2026-06-12 22:25:31
[2026-06-12 22:25:31,800.800 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 22:25:31,931.931 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 22:25:31,937.937 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 22:25:32,052.052 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 22:25:32,062.062 INFO    ] time= 12/06/2026 22:25:32
[2026-06-12 22:25:32,079.079 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 22:25:32,084.084 INFO    ] Checking for existing commands in stream...
[2026-06-12 22:25:32,203.203 INFO    ] No existing commands found in stream
[2026-06-12 22:25:37,212.212 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 22:25:37,215.215 INFO    ] Waiting 3.35 seconds before fallback handling...
[2026-06-12 22:25:40,942.942 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 22:25:40,943.943 INFO    ] Checking for system updates...
[2026-06-12 22:25:40,963.963 INFO    ] 200
[2026-06-12 22:25:40,965.965 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:25:40,995.995 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 22:25:40,996.996 INFO    ] No update needed
[2026-06-12 22:25:40,998.998 INFO    ] Checking for camera pi updates...
[2026-06-12 22:25:41,017.017 INFO    ] 200
[2026-06-12 22:25:41,018.018 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:25:41,043.043 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 22:25:41,089.089 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 22:25:41,091.091 INFO    ] No camera update needed
[2026-06-12 22:25:41,092.092 INFO    ] Script finished. Safe exiting...
[2026-06-12 22:25:41,093.093 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 22:25:41,096.096 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 22:25:41,099.099 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 22:25:43,137.137 INFO    ] ================================================
[2026-06-12 22:25:43,153.153 INFO    ] Launching Daemon at Fri Jun 12 22:25:43 IST 2026
[2026-06-12 22:25:43,163.163 INFO    ] ================================================
[2026-06-12 22:25:43,528.528 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 22:25:43
[2026-06-12 22:25:43,841.841 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 22:25:43,972.972 INFO    ] Initializing speech engine...
[2026-06-12 22:25:43,980.980 INFO    ] 2026-06-12 22:25:43
[2026-06-12 22:25:44,191.191 INFO    ] 2026-06-12 22:25:44
[2026-06-12 22:25:44,219.219 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 22:25:44,405.405 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 22:25:44,414.414 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 22:25:44,568.568 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 22:25:44,612.612 INFO    ] time= 12/06/2026 22:25:44
[2026-06-12 22:25:44,633.633 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 22:25:44,639.639 INFO    ] Checking for existing commands in stream...
[2026-06-12 22:25:44,705.705 INFO    ] No existing commands found in stream
[2026-06-12 22:25:49,714.714 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 22:25:49,716.716 INFO    ] Waiting 1.83 seconds before fallback handling...
[2026-06-12 22:25:51,894.894 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 22:25:51,896.896 INFO    ] Checking for system updates...
[2026-06-12 22:25:51,916.916 INFO    ] 200
[2026-06-12 22:25:51,918.918 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:25:51,956.956 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 22:25:51,958.958 INFO    ] No update needed
[2026-06-12 22:25:51,959.959 INFO    ] Checking for camera pi updates...
[2026-06-12 22:25:51,980.980 INFO    ] 200
[2026-06-12 22:25:51,982.982 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:25:52,005.005 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 22:25:52,054.054 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 22:25:52,055.055 INFO    ] No camera update needed
[2026-06-12 22:25:52,056.056 INFO    ] Script finished. Safe exiting...
[2026-06-12 22:25:52,058.058 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 22:25:52,061.061 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 22:25:52,064.064 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 22:25:54,101.101 INFO    ] ================================================
[2026-06-12 22:25:54,116.116 INFO    ] Launching Daemon at Fri Jun 12 22:25:54 IST 2026
[2026-06-12 22:25:54,127.127 INFO    ] ================================================
[2026-06-12 22:25:54,500.500 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 22:25:54
[2026-06-12 22:25:54,816.816 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 22:25:54,960.960 INFO    ] Initializing speech engine...
[2026-06-12 22:25:54,965.965 INFO    ] 2026-06-12 22:25:54
[2026-06-12 22:25:55,171.171 INFO    ] 2026-06-12 22:25:55
[2026-06-12 22:25:55,199.199 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 22:25:55,322.322 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 22:25:55,384.384 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 22:25:55,522.522 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 22:25:55,581.581 INFO    ] time= 12/06/2026 22:25:55
[2026-06-12 22:25:55,613.613 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 22:25:55,620.620 INFO    ] Checking for existing commands in stream...
[2026-06-12 22:25:55,685.685 INFO    ] No existing commands found in stream
[2026-06-12 22:26:00,696.696 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 22:26:00,698.698 INFO    ] Waiting 0.08 seconds before fallback handling...
[2026-06-12 22:26:01,132.132 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 22:26:01,134.134 INFO    ] Checking for system updates...
[2026-06-12 22:26:01,155.155 INFO    ] 200
[2026-06-12 22:26:01,157.157 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:26:01,187.187 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 22:26:01,189.189 INFO    ] No update needed
[2026-06-12 22:26:01,190.190 INFO    ] Checking for camera pi updates...
[2026-06-12 22:26:01,210.210 INFO    ] 200
[2026-06-12 22:26:01,211.211 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:26:01,234.234 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 22:26:01,287.287 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 22:26:01,289.289 INFO    ] No camera update needed
[2026-06-12 22:26:01,290.290 INFO    ] Script finished. Safe exiting...
[2026-06-12 22:26:01,292.292 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 22:26:01,295.295 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 22:26:01,298.298 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 22:26:03,331.331 INFO    ] ================================================
[2026-06-12 22:26:03,346.346 INFO    ] Launching Daemon at Fri Jun 12 22:26:03 IST 2026
[2026-06-12 22:26:03,357.357 INFO    ] ================================================
[2026-06-12 22:26:03,720.720 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 22:26:03
[2026-06-12 22:26:04,054.054 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 22:26:04,203.203 INFO    ] Initializing speech engine...
[2026-06-12 22:26:04,209.209 INFO    ] 2026-06-12 22:26:04
[2026-06-12 22:26:04,415.415 INFO    ] 2026-06-12 22:26:04
[2026-06-12 22:26:04,444.444 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 22:26:04,626.626 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 22:26:04,629.629 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 22:26:04,757.757 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 22:26:04,829.829 INFO    ] time= 12/06/2026 22:26:04
[2026-06-12 22:26:04,856.856 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 22:26:04,862.862 INFO    ] Checking for existing commands in stream...
[2026-06-12 22:26:04,928.928 INFO    ] No existing commands found in stream
[2026-06-12 22:26:09,938.938 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 22:26:09,941.941 INFO    ] Waiting 1.92 seconds before fallback handling...
[2026-06-12 22:26:12,221.221 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 22:26:12,222.222 INFO    ] Checking for system updates...
[2026-06-12 22:26:12,243.243 INFO    ] 200
[2026-06-12 22:26:12,244.244 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:26:12,276.276 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 22:26:12,277.277 INFO    ] No update needed
[2026-06-12 22:26:12,279.279 INFO    ] Checking for camera pi updates...
[2026-06-12 22:26:12,301.301 INFO    ] 200
[2026-06-12 22:26:12,303.303 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:26:12,326.326 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 22:26:12,375.375 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 22:26:12,377.377 INFO    ] No camera update needed
[2026-06-12 22:26:12,378.378 INFO    ] Script finished. Safe exiting...
[2026-06-12 22:26:12,381.381 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 22:26:12,385.385 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 22:26:12,388.388 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 22:26:14,426.426 INFO    ] ================================================
[2026-06-12 22:26:14,441.441 INFO    ] Launching Daemon at Fri Jun 12 22:26:14 IST 2026
[2026-06-12 22:26:14,451.451 INFO    ] ================================================
[2026-06-12 22:26:14,776.776 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 22:26:14
[2026-06-12 22:26:15,089.089 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 22:26:15,232.232 INFO    ] Initializing speech engine...
[2026-06-12 22:26:15,237.237 INFO    ] 2026-06-12 22:26:15
[2026-06-12 22:26:15,445.445 INFO    ] 2026-06-12 22:26:15
[2026-06-12 22:26:15,474.474 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 22:26:15,660.660 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 22:26:15,664.664 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 22:26:15,794.794 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 22:26:15,850.850 INFO    ] time= 12/06/2026 22:26:15
[2026-06-12 22:26:15,885.885 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 22:26:15,895.895 INFO    ] Checking for existing commands in stream...
[2026-06-12 22:26:15,967.967 INFO    ] No existing commands found in stream
[2026-06-12 22:26:20,976.976 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 22:26:20,979.979 INFO    ] Waiting 2.21 seconds before fallback handling...
[2026-06-12 22:26:23,605.605 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 22:26:23,606.606 INFO    ] Checking for system updates...
[2026-06-12 22:26:23,629.629 INFO    ] 200
[2026-06-12 22:26:23,631.631 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:26:23,660.660 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 22:26:23,662.662 INFO    ] No update needed
[2026-06-12 22:26:23,663.663 INFO    ] Checking for camera pi updates...
[2026-06-12 22:26:23,684.684 INFO    ] 200
[2026-06-12 22:26:23,685.685 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:26:23,710.710 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 22:26:23,851.851 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 22:26:23,853.853 INFO    ] No camera update needed
[2026-06-12 22:26:23,854.854 INFO    ] Script finished. Safe exiting...
[2026-06-12 22:26:23,855.855 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 22:26:23,858.858 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 22:26:23,861.861 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 22:26:25,901.901 INFO    ] ================================================
[2026-06-12 22:26:25,916.916 INFO    ] Launching Daemon at Fri Jun 12 22:26:25 IST 2026
[2026-06-12 22:26:25,927.927 INFO    ] ================================================
[2026-06-12 22:26:26,253.253 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 22:26:26
[2026-06-12 22:26:26,570.570 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 22:26:26,707.707 INFO    ] Initializing speech engine...
[2026-06-12 22:26:26,720.720 INFO    ] 2026-06-12 22:26:26
[2026-06-12 22:26:26,940.940 INFO    ] 2026-06-12 22:26:26
[2026-06-12 22:26:26,970.970 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 22:26:27,164.164 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 22:26:27,168.168 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 22:26:27,304.304 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 22:26:27,370.370 INFO    ] time= 12/06/2026 22:26:27
[2026-06-12 22:26:27,394.394 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 22:26:27,406.406 INFO    ] Checking for existing commands in stream...
[2026-06-12 22:26:27,515.515 INFO    ] No existing commands found in stream
[2026-06-12 22:26:32,526.526 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 22:26:32,529.529 INFO    ] Waiting 2.48 seconds before fallback handling...
[2026-06-12 22:26:35,391.391 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 22:26:35,393.393 INFO    ] Checking for system updates...
[2026-06-12 22:26:35,413.413 INFO    ] 200
[2026-06-12 22:26:35,415.415 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:26:35,444.444 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 22:26:35,445.445 INFO    ] No update needed
[2026-06-12 22:26:35,447.447 INFO    ] Checking for camera pi updates...
[2026-06-12 22:26:35,466.466 INFO    ] 200
[2026-06-12 22:26:35,467.467 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:26:35,490.490 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 22:26:35,538.538 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 22:26:35,539.539 INFO    ] No camera update needed
[2026-06-12 22:26:35,541.541 INFO    ] Script finished. Safe exiting...
[2026-06-12 22:26:35,542.542 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 22:26:35,545.545 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 22:26:35,548.548 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 22:26:37,586.586 INFO    ] ================================================
[2026-06-12 22:26:37,602.602 INFO    ] Launching Daemon at Fri Jun 12 22:26:37 IST 2026
[2026-06-12 22:26:37,612.612 INFO    ] ================================================
[2026-06-12 22:26:37,935.935 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 22:26:37
[2026-06-12 22:26:38,246.246 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 22:26:38,388.388 INFO    ] Initializing speech engine...
[2026-06-12 22:26:38,394.394 INFO    ] 2026-06-12 22:26:38
[2026-06-12 22:26:38,599.599 INFO    ] 2026-06-12 22:26:38
[2026-06-12 22:26:38,628.628 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 22:26:38,813.813 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 22:26:38,822.822 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 22:26:38,953.953 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 22:26:39,012.012 INFO    ] time= 12/06/2026 22:26:38
[2026-06-12 22:26:39,044.044 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 22:26:39,050.050 INFO    ] Checking for existing commands in stream...
[2026-06-12 22:26:39,118.118 INFO    ] No existing commands found in stream
[2026-06-12 22:26:44,127.127 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 22:26:44,130.130 INFO    ] Waiting 0.91 seconds before fallback handling...
[2026-06-12 22:26:45,451.451 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 22:26:45,453.453 INFO    ] Checking for system updates...
[2026-06-12 22:26:45,473.473 INFO    ] 200
[2026-06-12 22:26:45,475.475 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:26:45,504.504 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 22:26:45,505.505 INFO    ] No update needed
[2026-06-12 22:26:45,507.507 INFO    ] Checking for camera pi updates...
[2026-06-12 22:26:45,526.526 INFO    ] 200
[2026-06-12 22:26:45,527.527 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:26:45,551.551 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 22:26:45,604.604 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 22:26:45,605.605 INFO    ] No camera update needed
[2026-06-12 22:26:45,606.606 INFO    ] Script finished. Safe exiting...
[2026-06-12 22:26:45,607.607 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 22:26:45,611.611 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 22:26:45,613.613 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 22:26:47,652.652 INFO    ] ================================================
[2026-06-12 22:26:47,667.667 INFO    ] Launching Daemon at Fri Jun 12 22:26:47 IST 2026
[2026-06-12 22:26:47,678.678 INFO    ] ================================================
[2026-06-12 22:26:48,040.040 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 22:26:48
[2026-06-12 22:26:48,354.354 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 22:26:48,486.486 INFO    ] Initializing speech engine...
[2026-06-12 22:26:48,490.490 INFO    ] 2026-06-12 22:26:48
[2026-06-12 22:26:48,709.709 INFO    ] 2026-06-12 22:26:48
[2026-06-12 22:26:48,737.737 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 22:26:48,922.922 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 22:26:48,925.925 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 22:26:49,054.054 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 22:26:49,110.110 INFO    ] time= 12/06/2026 22:26:49
[2026-06-12 22:26:49,145.145 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 22:26:49,160.160 INFO    ] Checking for existing commands in stream...
[2026-06-12 22:26:49,228.228 INFO    ] No existing commands found in stream
[2026-06-12 22:26:54,242.242 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 22:26:54,245.245 INFO    ] Waiting 0.38 seconds before fallback handling...
[2026-06-12 22:26:54,990.990 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 22:26:54,992.992 INFO    ] Checking for system updates...
[2026-06-12 22:26:55,012.012 INFO    ] 200
[2026-06-12 22:26:55,014.014 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:26:55,043.043 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 22:26:55,045.045 INFO    ] No update needed
[2026-06-12 22:26:55,046.046 INFO    ] Checking for camera pi updates...
[2026-06-12 22:26:55,066.066 INFO    ] 200
[2026-06-12 22:26:55,068.068 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:26:55,093.093 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 22:26:55,133.133 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 22:26:55,134.134 INFO    ] No camera update needed
[2026-06-12 22:26:55,136.136 INFO    ] Script finished. Safe exiting...
[2026-06-12 22:26:55,137.137 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 22:26:55,140.140 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 22:26:55,143.143 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 22:26:57,182.182 INFO    ] ================================================
[2026-06-12 22:26:57,198.198 INFO    ] Launching Daemon at Fri Jun 12 22:26:57 IST 2026
[2026-06-12 22:26:57,214.214 INFO    ] ================================================
[2026-06-12 22:26:57,573.573 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 22:26:57
[2026-06-12 22:26:57,902.902 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 22:26:58,040.040 INFO    ] Initializing speech engine...
[2026-06-12 22:26:58,049.049 INFO    ] 2026-06-12 22:26:58
[2026-06-12 22:26:58,314.314 INFO    ] 2026-06-12 22:26:58
[2026-06-12 22:26:58,344.344 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 22:26:58,530.530 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 22:26:58,533.533 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 22:26:58,672.672 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 22:26:58,739.739 INFO    ] time= 12/06/2026 22:26:58
[2026-06-12 22:26:58,764.764 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 22:26:58,770.770 INFO    ] Checking for existing commands in stream...
[2026-06-12 22:26:58,838.838 INFO    ] No existing commands found in stream
[2026-06-12 22:27:03,847.847 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 22:27:03,850.850 INFO    ] Waiting 1.82 seconds before fallback handling...
[2026-06-12 22:27:06,031.031 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 22:27:06,033.033 INFO    ] Checking for system updates...
[2026-06-12 22:27:06,053.053 INFO    ] 200
[2026-06-12 22:27:06,054.054 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:27:06,084.084 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 22:27:06,086.086 INFO    ] No update needed
[2026-06-12 22:27:06,087.087 INFO    ] Checking for camera pi updates...
[2026-06-12 22:27:06,108.108 INFO    ] 200
[2026-06-12 22:27:06,109.109 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:27:06,133.133 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 22:27:06,185.185 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 22:27:06,187.187 INFO    ] No camera update needed
[2026-06-12 22:27:06,188.188 INFO    ] Script finished. Safe exiting...
[2026-06-12 22:27:06,190.190 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 22:27:06,193.193 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 22:27:06,196.196 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 22:27:08,233.233 INFO    ] ================================================
[2026-06-12 22:27:08,249.249 INFO    ] Launching Daemon at Fri Jun 12 22:27:08 IST 2026
[2026-06-12 22:27:08,259.259 INFO    ] ================================================
[2026-06-12 22:27:08,590.590 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 22:27:08
[2026-06-12 22:27:08,905.905 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 22:27:09,035.035 INFO    ] Initializing speech engine...
[2026-06-12 22:27:09,040.040 INFO    ] 2026-06-12 22:27:09
[2026-06-12 22:27:09,259.259 INFO    ] 2026-06-12 22:27:09
[2026-06-12 22:27:09,287.287 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 22:27:09,411.411 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 22:27:09,475.475 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 22:27:09,614.614 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 22:27:09,678.678 INFO    ] time= 12/06/2026 22:27:09
[2026-06-12 22:27:09,706.706 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 22:27:09,713.713 INFO    ] Checking for existing commands in stream...
[2026-06-12 22:27:09,781.781 INFO    ] No existing commands found in stream
[2026-06-12 22:27:14,790.790 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 22:27:14,793.793 INFO    ] Waiting 0.81 seconds before fallback handling...
[2026-06-12 22:27:15,950.950 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 22:27:15,951.951 INFO    ] Checking for system updates...
[2026-06-12 22:27:15,972.972 INFO    ] 200
[2026-06-12 22:27:15,973.973 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:27:16,002.002 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 22:27:16,004.004 INFO    ] No update needed
[2026-06-12 22:27:16,005.005 INFO    ] Checking for camera pi updates...
[2026-06-12 22:27:16,026.026 INFO    ] 200
[2026-06-12 22:27:16,027.027 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:27:16,051.051 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 22:27:16,091.091 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 22:27:16,092.092 INFO    ] No camera update needed
[2026-06-12 22:27:16,094.094 INFO    ] Script finished. Safe exiting...
[2026-06-12 22:27:16,095.095 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 22:27:16,098.098 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 22:27:16,101.101 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 22:27:18,140.140 INFO    ] ================================================
[2026-06-12 22:27:18,156.156 INFO    ] Launching Daemon at Fri Jun 12 22:27:18 IST 2026
[2026-06-12 22:27:18,167.167 INFO    ] ================================================
[2026-06-12 22:27:18,513.513 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 22:27:18
[2026-06-12 22:27:18,826.826 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 22:27:18,956.956 INFO    ] Initializing speech engine...
[2026-06-12 22:27:18,961.961 INFO    ] 2026-06-12 22:27:18
[2026-06-12 22:27:19,180.180 INFO    ] 2026-06-12 22:27:19
[2026-06-12 22:27:19,209.209 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 22:27:19,333.333 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 22:27:19,391.391 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 22:27:19,533.533 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 22:27:19,590.590 INFO    ] time= 12/06/2026 22:27:19
[2026-06-12 22:27:19,629.629 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 22:27:19,631.631 INFO    ] Checking for existing commands in stream...
[2026-06-12 22:27:19,703.703 INFO    ] No existing commands found in stream
[2026-06-12 22:27:24,717.717 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 22:27:24,720.720 INFO    ] Waiting 2.13 seconds before fallback handling...
[2026-06-12 22:27:27,232.232 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 22:27:27,234.234 INFO    ] Checking for system updates...
[2026-06-12 22:27:27,254.254 INFO    ] 200
[2026-06-12 22:27:27,255.255 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:27:27,293.293 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 22:27:27,294.294 INFO    ] No update needed
[2026-06-12 22:27:27,296.296 INFO    ] Checking for camera pi updates...
[2026-06-12 22:27:27,321.321 INFO    ] 200
[2026-06-12 22:27:27,323.323 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:27:27,347.347 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 22:27:27,395.395 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 22:27:27,397.397 INFO    ] No camera update needed
[2026-06-12 22:27:27,398.398 INFO    ] Script finished. Safe exiting...
[2026-06-12 22:27:27,399.399 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 22:27:27,402.402 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 22:27:27,405.405 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 22:27:29,442.442 INFO    ] ================================================
[2026-06-12 22:27:29,459.459 INFO    ] Launching Daemon at Fri Jun 12 22:27:29 IST 2026
[2026-06-12 22:27:29,469.469 INFO    ] ================================================
[2026-06-12 22:27:29,811.811 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 22:27:29
[2026-06-12 22:27:30,122.122 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 22:27:30,253.253 INFO    ] Initializing speech engine...
[2026-06-12 22:27:30,261.261 INFO    ] 2026-06-12 22:27:30
[2026-06-12 22:27:30,474.474 INFO    ] 2026-06-12 22:27:30
[2026-06-12 22:27:30,504.504 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 22:27:30,688.688 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 22:27:30,696.696 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 22:27:30,825.825 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 22:27:30,893.893 INFO    ] time= 12/06/2026 22:27:30
[2026-06-12 22:27:30,915.915 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 22:27:30,922.922 INFO    ] Checking for existing commands in stream...
[2026-06-12 22:27:31,012.012 INFO    ] No existing commands found in stream
[2026-06-12 22:27:36,021.021 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 22:27:36,024.024 INFO    ] Waiting 1.85 seconds before fallback handling...
[2026-06-12 22:27:38,261.261 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 22:27:38,263.263 INFO    ] Checking for system updates...
[2026-06-12 22:27:38,283.283 INFO    ] 200
[2026-06-12 22:27:38,284.284 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:27:38,316.316 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 22:27:38,317.317 INFO    ] No update needed
[2026-06-12 22:27:38,319.319 INFO    ] Checking for camera pi updates...
[2026-06-12 22:27:38,340.340 INFO    ] 200
[2026-06-12 22:27:38,341.341 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:27:38,363.363 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 22:27:38,402.402 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 22:27:38,403.403 INFO    ] No camera update needed
[2026-06-12 22:27:38,405.405 INFO    ] Script finished. Safe exiting...
[2026-06-12 22:27:38,406.406 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 22:27:38,409.409 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 22:27:38,411.411 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 22:27:40,449.449 INFO    ] ================================================
[2026-06-12 22:27:40,465.465 INFO    ] Launching Daemon at Fri Jun 12 22:27:40 IST 2026
[2026-06-12 22:27:40,476.476 INFO    ] ================================================
[2026-06-12 22:27:40,818.818 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 22:27:40
[2026-06-12 22:27:41,130.130 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 22:27:41,263.263 INFO    ] Initializing speech engine...
[2026-06-12 22:27:41,272.272 INFO    ] 2026-06-12 22:27:41
[2026-06-12 22:27:41,463.463 INFO    ] 2026-06-12 22:27:41
[2026-06-12 22:27:41,502.502 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 22:27:41,647.647 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 22:27:41,710.710 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 22:27:41,869.869 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 22:27:41,917.917 INFO    ] time= 12/06/2026 22:27:41
[2026-06-12 22:27:41,939.939 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 22:27:41,945.945 INFO    ] Checking for existing commands in stream...
[2026-06-12 22:27:42,010.010 INFO    ] No existing commands found in stream
[2026-06-12 22:27:47,022.022 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 22:27:47,025.025 INFO    ] Waiting 2.46 seconds before fallback handling...
[2026-06-12 22:27:49,892.892 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 22:27:49,893.893 INFO    ] Checking for system updates...
[2026-06-12 22:27:49,915.915 INFO    ] 200
[2026-06-12 22:27:49,917.917 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:27:49,947.947 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 22:27:49,948.948 INFO    ] No update needed
[2026-06-12 22:27:49,950.950 INFO    ] Checking for camera pi updates...
[2026-06-12 22:27:49,969.969 INFO    ] 200
[2026-06-12 22:27:49,971.971 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:27:49,996.996 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 22:27:50,042.042 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 22:27:50,044.044 INFO    ] No camera update needed
[2026-06-12 22:27:50,045.045 INFO    ] Script finished. Safe exiting...
[2026-06-12 22:27:50,047.047 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 22:27:50,050.050 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 22:27:50,053.053 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 22:27:52,092.092 INFO    ] ================================================
[2026-06-12 22:27:52,108.108 INFO    ] Launching Daemon at Fri Jun 12 22:27:52 IST 2026
[2026-06-12 22:27:52,119.119 INFO    ] ================================================
[2026-06-12 22:27:52,469.469 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 22:27:52
[2026-06-12 22:27:52,786.786 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 22:27:52,928.928 INFO    ] Initializing speech engine...
[2026-06-12 22:27:52,933.933 INFO    ] 2026-06-12 22:27:52
[2026-06-12 22:27:53,136.136 INFO    ] 2026-06-12 22:27:53
[2026-06-12 22:27:53,165.165 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 22:27:53,348.348 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 22:27:53,357.357 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 22:27:53,497.497 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 22:27:53,554.554 INFO    ] time= 12/06/2026 22:27:53
[2026-06-12 22:27:53,576.576 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 22:27:53,583.583 INFO    ] Checking for existing commands in stream...
[2026-06-12 22:27:53,647.647 INFO    ] No existing commands found in stream
[2026-06-12 22:27:58,658.658 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 22:27:58,661.661 INFO    ] Waiting 1.73 seconds before fallback handling...
[2026-06-12 22:28:00,770.770 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 22:28:00,772.772 INFO    ] Checking for system updates...
[2026-06-12 22:28:00,792.792 INFO    ] 200
[2026-06-12 22:28:00,793.793 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:28:00,822.822 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 22:28:00,824.824 INFO    ] No update needed
[2026-06-12 22:28:00,825.825 INFO    ] Checking for camera pi updates...
[2026-06-12 22:28:00,845.845 INFO    ] 200
[2026-06-12 22:28:00,847.847 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:28:00,869.869 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 22:28:00,924.924 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 22:28:00,925.925 INFO    ] No camera update needed
[2026-06-12 22:28:00,926.926 INFO    ] Script finished. Safe exiting...
[2026-06-12 22:28:00,928.928 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 22:28:00,931.931 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 22:28:00,933.933 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 22:28:02,978.978 INFO    ] ================================================
[2026-06-12 22:28:02,986.986 INFO    ] Launching Daemon at Fri Jun 12 22:28:02 IST 2026
[2026-06-12 22:28:02,995.995 INFO    ] ================================================
[2026-06-12 22:28:03,298.298 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 22:28:03
[2026-06-12 22:28:03,609.609 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 22:28:03,751.751 INFO    ] Initializing speech engine...
[2026-06-12 22:28:03,756.756 INFO    ] 2026-06-12 22:28:03
[2026-06-12 22:28:03,959.959 INFO    ] 2026-06-12 22:28:03
[2026-06-12 22:28:03,988.988 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 22:28:04,111.111 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 22:28:04,173.173 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 22:28:04,310.310 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 22:28:04,377.377 INFO    ] time= 12/06/2026 22:28:04
[2026-06-12 22:28:04,401.401 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 22:28:04,407.407 INFO    ] Checking for existing commands in stream...
[2026-06-12 22:28:04,474.474 INFO    ] No existing commands found in stream
[2026-06-12 22:28:09,488.488 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 22:28:09,491.491 INFO    ] Waiting 1.70 seconds before fallback handling...
[2026-06-12 22:28:11,568.568 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 22:28:11,570.570 INFO    ] Checking for system updates...
[2026-06-12 22:28:11,590.590 INFO    ] 200
[2026-06-12 22:28:11,592.592 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:28:11,622.622 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 22:28:11,623.623 INFO    ] No update needed
[2026-06-12 22:28:11,625.625 INFO    ] Checking for camera pi updates...
[2026-06-12 22:28:11,644.644 INFO    ] 200
[2026-06-12 22:28:11,645.645 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:28:11,668.668 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 22:28:11,730.730 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 22:28:11,732.732 INFO    ] No camera update needed
[2026-06-12 22:28:11,733.733 INFO    ] Script finished. Safe exiting...
[2026-06-12 22:28:11,734.734 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 22:28:11,738.738 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 22:28:11,741.741 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 22:28:13,779.779 INFO    ] ================================================
[2026-06-12 22:28:13,794.794 INFO    ] Launching Daemon at Fri Jun 12 22:28:13 IST 2026
[2026-06-12 22:28:13,805.805 INFO    ] ================================================
[2026-06-12 22:28:14,138.138 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 22:28:14
[2026-06-12 22:28:14,454.454 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 22:28:14,597.597 INFO    ] Initializing speech engine...
[2026-06-12 22:28:14,603.603 INFO    ] 2026-06-12 22:28:14
[2026-06-12 22:28:14,807.807 INFO    ] 2026-06-12 22:28:14
[2026-06-12 22:28:14,836.836 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 22:28:15,018.018 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 22:28:15,027.027 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 22:28:15,177.177 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 22:28:15,225.225 INFO    ] time= 12/06/2026 22:28:15
[2026-06-12 22:28:15,246.246 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 22:28:15,253.253 INFO    ] Checking for existing commands in stream...
[2026-06-12 22:28:15,319.319 INFO    ] No existing commands found in stream
[2026-06-12 22:28:20,328.328 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 22:28:20,331.331 INFO    ] Waiting 0.83 seconds before fallback handling...
[2026-06-12 22:28:21,534.534 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 22:28:21,535.535 INFO    ] Checking for system updates...
[2026-06-12 22:28:21,556.556 INFO    ] 200
[2026-06-12 22:28:21,557.557 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:28:21,589.589 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 22:28:21,590.590 INFO    ] No update needed
[2026-06-12 22:28:21,592.592 INFO    ] Checking for camera pi updates...
[2026-06-12 22:28:21,613.613 INFO    ] 200
[2026-06-12 22:28:21,614.614 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:28:21,639.639 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 22:28:21,689.689 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 22:28:21,691.691 INFO    ] No camera update needed
[2026-06-12 22:28:21,692.692 INFO    ] Script finished. Safe exiting...
[2026-06-12 22:28:21,693.693 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 22:28:21,696.696 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 22:28:21,699.699 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 22:28:23,737.737 INFO    ] ================================================
[2026-06-12 22:28:23,753.753 INFO    ] Launching Daemon at Fri Jun 12 22:28:23 IST 2026
[2026-06-12 22:28:23,764.764 INFO    ] ================================================
[2026-06-12 22:28:24,119.119 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 22:28:24
[2026-06-12 22:28:24,432.432 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 22:28:24,563.563 INFO    ] Initializing speech engine...
[2026-06-12 22:28:24,576.576 INFO    ] 2026-06-12 22:28:24
[2026-06-12 22:28:24,782.782 INFO    ] 2026-06-12 22:28:24
[2026-06-12 22:28:24,812.812 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 22:28:24,979.979 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 22:28:24,997.997 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 22:28:25,130.130 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 22:28:25,182.182 INFO    ] time= 12/06/2026 22:28:25
[2026-06-12 22:28:25,224.224 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 22:28:25,226.226 INFO    ] Checking for existing commands in stream...
[2026-06-12 22:28:25,297.297 INFO    ] No existing commands found in stream
[2026-06-12 22:28:30,303.303 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 22:28:30,306.306 INFO    ] Waiting 0.00 seconds before fallback handling...
[2026-06-12 22:28:30,706.706 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 22:28:30,707.707 INFO    ] Checking for system updates...
[2026-06-12 22:28:30,728.728 INFO    ] 200
[2026-06-12 22:28:30,730.730 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:28:30,762.762 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 22:28:30,763.763 INFO    ] No update needed
[2026-06-12 22:28:30,765.765 INFO    ] Checking for camera pi updates...
[2026-06-12 22:28:30,783.783 INFO    ] 200
[2026-06-12 22:28:30,785.785 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:28:30,808.808 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 22:28:30,955.955 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 22:28:30,956.956 INFO    ] No camera update needed
[2026-06-12 22:28:30,957.957 INFO    ] Script finished. Safe exiting...
[2026-06-12 22:28:30,958.958 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 22:28:30,962.962 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 22:28:30,964.964 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 22:28:33,008.008 INFO    ] ================================================
[2026-06-12 22:28:33,024.024 INFO    ] Launching Daemon at Fri Jun 12 22:28:33 IST 2026
[2026-06-12 22:28:33,036.036 INFO    ] ================================================
[2026-06-12 22:28:33,404.404 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 22:28:33
[2026-06-12 22:28:33,722.722 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 22:28:33,861.861 INFO    ] Initializing speech engine...
[2026-06-12 22:28:33,875.875 INFO    ] 2026-06-12 22:28:33
[2026-06-12 22:28:34,097.097 INFO    ] 2026-06-12 22:28:34
[2026-06-12 22:28:34,128.128 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 22:28:34,334.334 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 22:28:34,338.338 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 22:28:34,487.487 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 22:28:34,547.547 INFO    ] time= 12/06/2026 22:28:34
[2026-06-12 22:28:34,587.587 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 22:28:34,594.594 INFO    ] Checking for existing commands in stream...
[2026-06-12 22:28:34,667.667 INFO    ] No existing commands found in stream
[2026-06-12 22:28:39,676.676 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 22:28:39,679.679 INFO    ] Waiting 2.58 seconds before fallback handling...
[2026-06-12 22:28:42,652.652 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 22:28:42,653.653 INFO    ] Checking for system updates...
[2026-06-12 22:28:42,673.673 INFO    ] 200
[2026-06-12 22:28:42,675.675 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:28:42,704.704 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 22:28:42,706.706 INFO    ] No update needed
[2026-06-12 22:28:42,707.707 INFO    ] Checking for camera pi updates...
[2026-06-12 22:28:42,726.726 INFO    ] 200
[2026-06-12 22:28:42,727.727 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:28:42,751.751 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 22:28:42,810.810 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 22:28:42,811.811 INFO    ] No camera update needed
[2026-06-12 22:28:42,812.812 INFO    ] Script finished. Safe exiting...
[2026-06-12 22:28:42,814.814 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 22:28:42,817.817 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 22:28:42,820.820 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 22:28:44,857.857 INFO    ] ================================================
[2026-06-12 22:28:44,873.873 INFO    ] Launching Daemon at Fri Jun 12 22:28:44 IST 2026
[2026-06-12 22:28:44,884.884 INFO    ] ================================================
[2026-06-12 22:28:45,258.258 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 22:28:45
[2026-06-12 22:28:45,576.576 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 22:28:45,720.720 INFO    ] Initializing speech engine...
[2026-06-12 22:28:45,725.725 INFO    ] 2026-06-12 22:28:45
[2026-06-12 22:28:45,928.928 INFO    ] 2026-06-12 22:28:45
[2026-06-12 22:28:45,958.958 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 22:28:46,143.143 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 22:28:46,151.151 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 22:28:46,274.274 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 22:28:46,335.335 INFO    ] time= 12/06/2026 22:28:46
[2026-06-12 22:28:46,370.370 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 22:28:46,376.376 INFO    ] Checking for existing commands in stream...
[2026-06-12 22:28:46,448.448 INFO    ] No existing commands found in stream
[2026-06-12 22:28:51,458.458 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 22:28:51,461.461 INFO    ] Waiting 0.62 seconds before fallback handling...
[2026-06-12 22:28:52,458.458 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 22:28:52,460.460 INFO    ] Checking for system updates...
[2026-06-12 22:28:52,481.481 INFO    ] 200
[2026-06-12 22:28:52,482.482 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:28:52,512.512 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 22:28:52,513.513 INFO    ] No update needed
[2026-06-12 22:28:52,515.515 INFO    ] Checking for camera pi updates...
[2026-06-12 22:28:52,533.533 INFO    ] 200
[2026-06-12 22:28:52,535.535 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:28:52,558.558 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 22:28:52,610.610 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 22:28:52,611.611 INFO    ] No camera update needed
[2026-06-12 22:28:52,613.613 INFO    ] Script finished. Safe exiting...
[2026-06-12 22:28:52,614.614 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 22:28:52,617.617 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 22:28:52,620.620 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 22:28:54,657.657 INFO    ] ================================================
[2026-06-12 22:28:54,673.673 INFO    ] Launching Daemon at Fri Jun 12 22:28:54 IST 2026
[2026-06-12 22:28:54,684.684 INFO    ] ================================================
[2026-06-12 22:28:55,054.054 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 22:28:55
[2026-06-12 22:28:55,366.366 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 22:28:55,508.508 INFO    ] Initializing speech engine...
[2026-06-12 22:28:55,513.513 INFO    ] 2026-06-12 22:28:55
[2026-06-12 22:28:55,718.718 INFO    ] 2026-06-12 22:28:55
[2026-06-12 22:28:55,747.747 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 22:28:55,932.932 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 22:28:55,942.942 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 22:28:56,089.089 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 22:28:56,142.142 INFO    ] time= 12/06/2026 22:28:56
[2026-06-12 22:28:56,165.165 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 22:28:56,171.171 INFO    ] Checking for existing commands in stream...
[2026-06-12 22:28:56,238.238 INFO    ] No existing commands found in stream
[2026-06-12 22:29:01,242.242 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 22:29:01,247.247 INFO    ] Waiting 3.14 seconds before fallback handling...
[2026-06-12 22:29:04,788.788 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 22:29:04,790.790 INFO    ] Checking for system updates...
[2026-06-12 22:29:04,830.830 INFO    ] 200
[2026-06-12 22:29:04,833.833 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:29:04,891.891 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 22:29:04,894.894 INFO    ] No update needed
[2026-06-12 22:29:04,896.896 INFO    ] Checking for camera pi updates...
[2026-06-12 22:29:04,928.928 INFO    ] 200
[2026-06-12 22:29:04,929.929 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:29:04,952.952 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 22:29:05,008.008 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 22:29:05,009.009 INFO    ] No camera update needed
[2026-06-12 22:29:05,011.011 INFO    ] Script finished. Safe exiting...
[2026-06-12 22:29:05,012.012 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 22:29:05,015.015 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 22:29:05,017.017 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 22:29:07,055.055 INFO    ] ================================================
[2026-06-12 22:29:07,071.071 INFO    ] Launching Daemon at Fri Jun 12 22:29:07 IST 2026
[2026-06-12 22:29:07,083.083 INFO    ] ================================================
[2026-06-12 22:29:07,438.438 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 22:29:07
[2026-06-12 22:29:07,751.751 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 22:29:07,895.895 INFO    ] Initializing speech engine...
[2026-06-12 22:29:07,900.900 INFO    ] 2026-06-12 22:29:07
[2026-06-12 22:29:08,107.107 INFO    ] 2026-06-12 22:29:08
[2026-06-12 22:29:08,135.135 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 22:29:08,321.321 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 22:29:08,324.324 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 22:29:08,462.462 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 22:29:08,521.521 INFO    ] time= 12/06/2026 22:29:08
[2026-06-12 22:29:08,554.554 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 22:29:08,556.556 INFO    ] Checking for existing commands in stream...
[2026-06-12 22:29:08,626.626 INFO    ] No existing commands found in stream
[2026-06-12 22:29:13,637.637 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 22:29:13,640.640 INFO    ] Waiting 3.64 seconds before fallback handling...
[2026-06-12 22:29:17,661.661 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 22:29:17,662.662 INFO    ] Checking for system updates...
[2026-06-12 22:29:17,684.684 INFO    ] 200
[2026-06-12 22:29:17,686.686 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:29:17,715.715 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 22:29:17,717.717 INFO    ] No update needed
[2026-06-12 22:29:17,718.718 INFO    ] Checking for camera pi updates...
[2026-06-12 22:29:17,738.738 INFO    ] 200
[2026-06-12 22:29:17,739.739 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:29:17,763.763 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 22:29:17,806.806 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 22:29:17,808.808 INFO    ] No camera update needed
[2026-06-12 22:29:17,809.809 INFO    ] Script finished. Safe exiting...
[2026-06-12 22:29:17,811.811 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 22:29:17,814.814 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 22:29:17,817.817 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 22:29:19,859.859 INFO    ] ================================================
[2026-06-12 22:29:19,875.875 INFO    ] Launching Daemon at Fri Jun 12 22:29:19 IST 2026
[2026-06-12 22:29:19,887.887 INFO    ] ================================================
[2026-06-12 22:29:20,228.228 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 22:29:20
[2026-06-12 22:29:20,543.543 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 22:29:20,686.686 INFO    ] Initializing speech engine...
[2026-06-12 22:29:20,691.691 INFO    ] 2026-06-12 22:29:20
[2026-06-12 22:29:20,895.895 INFO    ] 2026-06-12 22:29:20
[2026-06-12 22:29:20,923.923 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 22:29:21,105.105 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 22:29:21,115.115 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 22:29:21,244.244 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 22:29:21,311.311 INFO    ] time= 12/06/2026 22:29:21
[2026-06-12 22:29:21,335.335 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 22:29:21,341.341 INFO    ] Checking for existing commands in stream...
[2026-06-12 22:29:21,407.407 INFO    ] No existing commands found in stream
[2026-06-12 22:29:26,421.421 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 22:29:26,424.424 INFO    ] Waiting 1.83 seconds before fallback handling...
[2026-06-12 22:29:28,640.640 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 22:29:28,642.642 INFO    ] Checking for system updates...
[2026-06-12 22:29:28,662.662 INFO    ] 200
[2026-06-12 22:29:28,663.663 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:29:28,693.693 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 22:29:28,694.694 INFO    ] No update needed
[2026-06-12 22:29:28,695.695 INFO    ] Checking for camera pi updates...
[2026-06-12 22:29:28,715.715 INFO    ] 200
[2026-06-12 22:29:28,716.716 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:29:28,743.743 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 22:29:28,785.785 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 22:29:28,786.786 INFO    ] No camera update needed
[2026-06-12 22:29:28,787.787 INFO    ] Script finished. Safe exiting...
[2026-06-12 22:29:28,789.789 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 22:29:28,792.792 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 22:29:28,795.795 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 22:29:30,832.832 INFO    ] ================================================
[2026-06-12 22:29:30,847.847 INFO    ] Launching Daemon at Fri Jun 12 22:29:30 IST 2026
[2026-06-12 22:29:30,858.858 INFO    ] ================================================
[2026-06-12 22:29:31,213.213 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 22:29:31
[2026-06-12 22:29:31,551.551 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 22:29:31,695.695 INFO    ] Initializing speech engine...
[2026-06-12 22:29:31,703.703 INFO    ] 2026-06-12 22:29:31
[2026-06-12 22:29:31,906.906 INFO    ] 2026-06-12 22:29:31
[2026-06-12 22:29:31,945.945 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 22:29:32,102.102 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 22:29:32,146.146 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 22:29:32,296.296 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 22:29:32,357.357 INFO    ] time= 12/06/2026 22:29:32
[2026-06-12 22:29:32,391.391 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 22:29:32,396.396 INFO    ] Checking for existing commands in stream...
[2026-06-12 22:29:32,468.468 INFO    ] No existing commands found in stream
[2026-06-12 22:29:37,477.477 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 22:29:37,479.479 INFO    ] Waiting 0.76 seconds before fallback handling...
[2026-06-12 22:29:38,579.579 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 22:29:38,581.581 INFO    ] Checking for system updates...
[2026-06-12 22:29:38,603.603 INFO    ] 200
[2026-06-12 22:29:38,605.605 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:29:38,637.637 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 22:29:38,638.638 INFO    ] No update needed
[2026-06-12 22:29:38,639.639 INFO    ] Checking for camera pi updates...
[2026-06-12 22:29:38,660.660 INFO    ] 200
[2026-06-12 22:29:38,661.661 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:29:38,685.685 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 22:29:38,726.726 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 22:29:38,727.727 INFO    ] No camera update needed
[2026-06-12 22:29:38,728.728 INFO    ] Script finished. Safe exiting...
[2026-06-12 22:29:38,729.729 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 22:29:38,732.732 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 22:29:38,735.735 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 22:29:40,774.774 INFO    ] ================================================
[2026-06-12 22:29:40,789.789 INFO    ] Launching Daemon at Fri Jun 12 22:29:40 IST 2026
[2026-06-12 22:29:40,799.799 INFO    ] ================================================
[2026-06-12 22:29:41,141.141 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 22:29:41
[2026-06-12 22:29:41,458.458 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 22:29:41,602.602 INFO    ] Initializing speech engine...
[2026-06-12 22:29:41,607.607 INFO    ] 2026-06-12 22:29:41
[2026-06-12 22:29:41,812.812 INFO    ] 2026-06-12 22:29:41
[2026-06-12 22:29:41,840.840 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 22:29:42,023.023 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 22:29:42,026.026 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 22:29:42,155.155 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 22:29:42,215.215 INFO    ] time= 12/06/2026 22:29:42
[2026-06-12 22:29:42,249.249 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 22:29:42,254.254 INFO    ] Checking for existing commands in stream...
[2026-06-12 22:29:42,326.326 INFO    ] No existing commands found in stream
[2026-06-12 22:29:47,335.335 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 22:29:47,338.338 INFO    ] Waiting 3.33 seconds before fallback handling...
[2026-06-12 22:29:51,051.051 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 22:29:51,053.053 INFO    ] Checking for system updates...
[2026-06-12 22:29:51,073.073 INFO    ] 200
[2026-06-12 22:29:51,074.074 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:29:51,103.103 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 22:29:51,105.105 INFO    ] No update needed
[2026-06-12 22:29:51,106.106 INFO    ] Checking for camera pi updates...
[2026-06-12 22:29:51,125.125 INFO    ] 200
[2026-06-12 22:29:51,127.127 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:29:51,149.149 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 22:29:51,213.213 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 22:29:51,214.214 INFO    ] No camera update needed
[2026-06-12 22:29:51,215.215 INFO    ] Script finished. Safe exiting...
[2026-06-12 22:29:51,217.217 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 22:29:51,220.220 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 22:29:51,223.223 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 22:29:53,260.260 INFO    ] ================================================
[2026-06-12 22:29:53,275.275 INFO    ] Launching Daemon at Fri Jun 12 22:29:53 IST 2026
[2026-06-12 22:29:53,286.286 INFO    ] ================================================
[2026-06-12 22:29:53,617.617 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 22:29:53
[2026-06-12 22:29:53,929.929 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 22:29:54,063.063 INFO    ] Initializing speech engine...
[2026-06-12 22:29:54,071.071 INFO    ] 2026-06-12 22:29:54
[2026-06-12 22:29:54,264.264 INFO    ] 2026-06-12 22:29:54
[2026-06-12 22:29:54,302.302 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 22:29:54,460.460 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 22:29:54,499.499 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 22:29:54,671.671 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 22:29:54,728.728 INFO    ] time= 12/06/2026 22:29:54
[2026-06-12 22:29:54,757.757 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 22:29:54,780.780 INFO    ] Checking for existing commands in stream...
[2026-06-12 22:29:54,882.882 INFO    ] No existing commands found in stream
[2026-06-12 22:29:59,891.891 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 22:29:59,894.894 INFO    ] Waiting 2.27 seconds before fallback handling...
[2026-06-12 22:30:02,484.484 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 22:30:02,486.486 INFO    ] Checking for system updates...
[2026-06-12 22:30:02,518.518 INFO    ] 200
[2026-06-12 22:30:02,521.521 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:30:02,571.571 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 22:30:02,572.572 INFO    ] No update needed
[2026-06-12 22:30:02,574.574 INFO    ] Checking for camera pi updates...
[2026-06-12 22:30:02,599.599 INFO    ] 200
[2026-06-12 22:30:02,601.601 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:30:02,638.638 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 22:30:02,691.691 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 22:30:02,693.693 INFO    ] No camera update needed
[2026-06-12 22:30:02,694.694 INFO    ] Script finished. Safe exiting...
[2026-06-12 22:30:02,695.695 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 22:30:02,698.698 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 22:30:02,701.701 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 22:30:04,739.739 INFO    ] ================================================
[2026-06-12 22:30:04,754.754 INFO    ] Launching Daemon at Fri Jun 12 22:30:04 IST 2026
[2026-06-12 22:30:04,765.765 INFO    ] ================================================
[2026-06-12 22:30:05,114.114 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 22:30:05
[2026-06-12 22:30:05,432.432 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 22:30:05,563.563 INFO    ] Initializing speech engine...
[2026-06-12 22:30:05,567.567 INFO    ] 2026-06-12 22:30:05
[2026-06-12 22:30:05,780.780 INFO    ] 2026-06-12 22:30:05
[2026-06-12 22:30:05,817.817 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 22:30:05,981.981 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 22:30:06,043.043 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 22:30:06,193.193 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 22:30:06,257.257 INFO    ] time= 12/06/2026 22:30:06
[2026-06-12 22:30:06,287.287 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 22:30:06,293.293 INFO    ] Checking for existing commands in stream...
[2026-06-12 22:30:06,396.396 INFO    ] No existing commands found in stream
[2026-06-12 22:30:11,410.410 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 22:30:11,413.413 INFO    ] Waiting 3.49 seconds before fallback handling...
[2026-06-12 22:30:15,272.272 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 22:30:15,274.274 INFO    ] Checking for system updates...
[2026-06-12 22:30:15,295.295 INFO    ] 200
[2026-06-12 22:30:15,297.297 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:30:15,326.326 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 22:30:15,328.328 INFO    ] No update needed
[2026-06-12 22:30:15,330.330 INFO    ] Checking for camera pi updates...
[2026-06-12 22:30:15,349.349 INFO    ] 200
[2026-06-12 22:30:15,350.350 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:30:15,373.373 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 22:30:15,418.418 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 22:30:15,420.420 INFO    ] No camera update needed
[2026-06-12 22:30:15,421.421 INFO    ] Script finished. Safe exiting...
[2026-06-12 22:30:15,422.422 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 22:30:15,425.425 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 22:30:15,428.428 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 22:30:17,466.466 INFO    ] ================================================
[2026-06-12 22:30:17,482.482 INFO    ] Launching Daemon at Fri Jun 12 22:30:17 IST 2026
[2026-06-12 22:30:17,494.494 INFO    ] ================================================
[2026-06-12 22:30:17,848.848 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 22:30:17
[2026-06-12 22:30:18,160.160 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 22:30:18,303.303 INFO    ] Initializing speech engine...
[2026-06-12 22:30:18,308.308 INFO    ] 2026-06-12 22:30:18
[2026-06-12 22:30:18,514.514 INFO    ] 2026-06-12 22:30:18
[2026-06-12 22:30:18,541.541 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 22:30:18,729.729 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 22:30:18,738.738 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 22:30:18,880.880 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 22:30:18,937.937 INFO    ] time= 12/06/2026 22:30:18
[2026-06-12 22:30:18,962.962 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 22:30:18,963.963 INFO    ] Checking for existing commands in stream...
[2026-06-12 22:30:19,035.035 INFO    ] No existing commands found in stream
[2026-06-12 22:30:24,045.045 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 22:30:24,048.048 INFO    ] Waiting 1.32 seconds before fallback handling...
[2026-06-12 22:30:25,739.739 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 22:30:25,741.741 INFO    ] Checking for system updates...
[2026-06-12 22:30:25,761.761 INFO    ] 200
[2026-06-12 22:30:25,763.763 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:30:25,792.792 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 22:30:25,794.794 INFO    ] No update needed
[2026-06-12 22:30:25,795.795 INFO    ] Checking for camera pi updates...
[2026-06-12 22:30:25,816.816 INFO    ] 200
[2026-06-12 22:30:25,817.817 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:30:25,840.840 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 22:30:25,896.896 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 22:30:25,897.897 INFO    ] No camera update needed
[2026-06-12 22:30:25,899.899 INFO    ] Script finished. Safe exiting...
[2026-06-12 22:30:25,900.900 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 22:30:25,903.903 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 22:30:25,906.906 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 22:30:27,943.943 INFO    ] ================================================
[2026-06-12 22:30:27,959.959 INFO    ] Launching Daemon at Fri Jun 12 22:30:27 IST 2026
[2026-06-12 22:30:27,970.970 INFO    ] ================================================
[2026-06-12 22:30:28,345.345 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 22:30:28
[2026-06-12 22:30:28,684.684 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 22:30:28,835.835 INFO    ] Initializing speech engine...
[2026-06-12 22:30:28,841.841 INFO    ] 2026-06-12 22:30:28
[2026-06-12 22:30:29,049.049 INFO    ] 2026-06-12 22:30:29
[2026-06-12 22:30:29,078.078 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 22:30:29,263.263 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 22:30:29,274.274 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 22:30:29,402.402 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 22:30:29,471.471 INFO    ] time= 12/06/2026 22:30:29
[2026-06-12 22:30:29,498.498 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 22:30:29,500.500 INFO    ] Checking for existing commands in stream...
[2026-06-12 22:30:29,568.568 INFO    ] No existing commands found in stream
[2026-06-12 22:30:34,588.588 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 22:30:34,591.591 INFO    ] Waiting 2.89 seconds before fallback handling...
[2026-06-12 22:30:37,851.851 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 22:30:37,852.852 INFO    ] Checking for system updates...
[2026-06-12 22:30:37,873.873 INFO    ] 200
[2026-06-12 22:30:37,875.875 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:30:37,908.908 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 22:30:37,910.910 INFO    ] No update needed
[2026-06-12 22:30:37,911.911 INFO    ] Checking for camera pi updates...
[2026-06-12 22:30:37,933.933 INFO    ] 200
[2026-06-12 22:30:37,935.935 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:30:37,958.958 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 22:30:38,006.006 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 22:30:38,008.008 INFO    ] No camera update needed
[2026-06-12 22:30:38,009.009 INFO    ] Script finished. Safe exiting...
[2026-06-12 22:30:38,011.011 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 22:30:38,014.014 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 22:30:38,017.017 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 22:30:40,056.056 INFO    ] ================================================
[2026-06-12 22:30:40,072.072 INFO    ] Launching Daemon at Fri Jun 12 22:30:40 IST 2026
[2026-06-12 22:30:40,084.084 INFO    ] ================================================
[2026-06-12 22:30:40,407.407 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 22:30:40
[2026-06-12 22:30:40,720.720 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 22:30:40,857.857 INFO    ] Initializing speech engine...
[2026-06-12 22:30:40,867.867 INFO    ] 2026-06-12 22:30:40
[2026-06-12 22:30:41,071.071 INFO    ] 2026-06-12 22:30:41
[2026-06-12 22:30:41,099.099 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 22:30:41,282.282 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 22:30:41,291.291 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 22:30:41,413.413 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 22:30:41,474.474 INFO    ] time= 12/06/2026 22:30:41
[2026-06-12 22:30:41,503.503 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 22:30:41,513.513 INFO    ] Checking for existing commands in stream...
[2026-06-12 22:30:41,584.584 INFO    ] No existing commands found in stream
[2026-06-12 22:30:46,593.593 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 22:30:46,596.596 INFO    ] Waiting 2.30 seconds before fallback handling...
[2026-06-12 22:30:49,242.242 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 22:30:49,244.244 INFO    ] Checking for system updates...
[2026-06-12 22:30:49,265.265 INFO    ] 200
[2026-06-12 22:30:49,266.266 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:30:49,300.300 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 22:30:49,301.301 INFO    ] No update needed
[2026-06-12 22:30:49,303.303 INFO    ] Checking for camera pi updates...
[2026-06-12 22:30:49,325.325 INFO    ] 200
[2026-06-12 22:30:49,326.326 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:30:49,349.349 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 22:30:49,397.397 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 22:30:49,398.398 INFO    ] No camera update needed
[2026-06-12 22:30:49,400.400 INFO    ] Script finished. Safe exiting...
[2026-06-12 22:30:49,402.402 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 22:30:49,405.405 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 22:30:49,408.408 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 22:30:51,446.446 INFO    ] ================================================
[2026-06-12 22:30:51,463.463 INFO    ] Launching Daemon at Fri Jun 12 22:30:51 IST 2026
[2026-06-12 22:30:51,481.481 INFO    ] ================================================
[2026-06-12 22:30:51,858.858 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 22:30:51
[2026-06-12 22:30:52,176.176 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 22:30:52,315.315 INFO    ] Initializing speech engine...
[2026-06-12 22:30:52,326.326 INFO    ] 2026-06-12 22:30:52
[2026-06-12 22:30:52,529.529 INFO    ] 2026-06-12 22:30:52
[2026-06-12 22:30:52,558.558 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 22:30:52,741.741 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 22:30:52,751.751 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 22:30:52,895.895 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 22:30:52,947.947 INFO    ] time= 12/06/2026 22:30:52
[2026-06-12 22:30:52,970.970 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 22:30:52,976.976 INFO    ] Checking for existing commands in stream...
[2026-06-12 22:30:53,043.043 INFO    ] No existing commands found in stream
[2026-06-12 22:30:58,057.057 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 22:30:58,060.060 INFO    ] Waiting 3.55 seconds before fallback handling...
[2026-06-12 22:31:01,982.982 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 22:31:01,984.984 INFO    ] Checking for system updates...
[2026-06-12 22:31:02,030.030 INFO    ] 200
[2026-06-12 22:31:02,032.032 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:31:02,088.088 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 22:31:02,090.090 INFO    ] No update needed
[2026-06-12 22:31:02,093.093 INFO    ] Checking for camera pi updates...
[2026-06-12 22:31:02,126.126 INFO    ] 200
[2026-06-12 22:31:02,129.129 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:31:02,161.161 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 22:31:02,193.193 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 22:31:02,195.195 INFO    ] No camera update needed
[2026-06-12 22:31:02,197.197 INFO    ] Script finished. Safe exiting...
[2026-06-12 22:31:02,198.198 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 22:31:02,203.203 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 22:31:02,206.206 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 22:31:04,246.246 INFO    ] ================================================
[2026-06-12 22:31:04,262.262 INFO    ] Launching Daemon at Fri Jun 12 22:31:04 IST 2026
[2026-06-12 22:31:04,274.274 INFO    ] ================================================
[2026-06-12 22:31:04,601.601 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 22:31:04
[2026-06-12 22:31:04,914.914 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 22:31:05,052.052 INFO    ] Initializing speech engine...
[2026-06-12 22:31:05,062.062 INFO    ] 2026-06-12 22:31:05
[2026-06-12 22:31:05,268.268 INFO    ] 2026-06-12 22:31:05
[2026-06-12 22:31:05,297.297 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 22:31:05,483.483 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 22:31:05,492.492 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 22:31:05,624.624 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 22:31:05,691.691 INFO    ] time= 12/06/2026 22:31:05
[2026-06-12 22:31:05,715.715 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 22:31:05,722.722 INFO    ] Checking for existing commands in stream...
[2026-06-12 22:31:05,790.790 INFO    ] No existing commands found in stream
[2026-06-12 22:31:10,798.798 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 22:31:10,801.801 INFO    ] Waiting 0.69 seconds before fallback handling...
[2026-06-12 22:31:11,860.860 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 22:31:11,862.862 INFO    ] Checking for system updates...
[2026-06-12 22:31:11,883.883 INFO    ] 200
[2026-06-12 22:31:11,884.884 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:31:11,914.914 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 22:31:11,915.915 INFO    ] No update needed
[2026-06-12 22:31:11,916.916 INFO    ] Checking for camera pi updates...
[2026-06-12 22:31:11,936.936 INFO    ] 200
[2026-06-12 22:31:11,938.938 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:31:11,962.962 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 22:31:12,003.003 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 22:31:12,005.005 INFO    ] No camera update needed
[2026-06-12 22:31:12,006.006 INFO    ] Script finished. Safe exiting...
[2026-06-12 22:31:12,007.007 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 22:31:12,010.010 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 22:31:12,013.013 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 22:31:14,051.051 INFO    ] ================================================
[2026-06-12 22:31:14,067.067 INFO    ] Launching Daemon at Fri Jun 12 22:31:14 IST 2026
[2026-06-12 22:31:14,078.078 INFO    ] ================================================
[2026-06-12 22:31:14,446.446 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 22:31:14
[2026-06-12 22:31:14,756.756 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 22:31:14,899.899 INFO    ] Initializing speech engine...
[2026-06-12 22:31:14,904.904 INFO    ] 2026-06-12 22:31:14
[2026-06-12 22:31:15,107.107 INFO    ] 2026-06-12 22:31:15
[2026-06-12 22:31:15,136.136 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 22:31:15,317.317 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 22:31:15,327.327 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 22:31:15,449.449 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 22:31:15,504.504 INFO    ] time= 12/06/2026 22:31:15
[2026-06-12 22:31:15,532.532 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 22:31:15,548.548 INFO    ] Checking for existing commands in stream...
[2026-06-12 22:31:15,619.619 INFO    ] No existing commands found in stream
[2026-06-12 22:31:20,628.628 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 22:31:20,631.631 INFO    ] Waiting 2.42 seconds before fallback handling...
[2026-06-12 22:31:23,408.408 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 22:31:23,410.410 INFO    ] Checking for system updates...
[2026-06-12 22:31:23,432.432 INFO    ] 200
[2026-06-12 22:31:23,434.434 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:31:23,469.469 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 22:31:23,470.470 INFO    ] No update needed
[2026-06-12 22:31:23,472.472 INFO    ] Checking for camera pi updates...
[2026-06-12 22:31:23,491.491 INFO    ] 200
[2026-06-12 22:31:23,492.492 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:31:23,515.515 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 22:31:23,565.565 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 22:31:23,567.567 INFO    ] No camera update needed
[2026-06-12 22:31:23,568.568 INFO    ] Script finished. Safe exiting...
[2026-06-12 22:31:23,570.570 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 22:31:23,573.573 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 22:31:23,576.576 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 22:31:25,617.617 INFO    ] ================================================
[2026-06-12 22:31:25,633.633 INFO    ] Launching Daemon at Fri Jun 12 22:31:25 IST 2026
[2026-06-12 22:31:25,644.644 INFO    ] ================================================
[2026-06-12 22:31:25,993.993 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 22:31:25
[2026-06-12 22:31:26,312.312 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 22:31:26,446.446 INFO    ] Initializing speech engine...
[2026-06-12 22:31:26,454.454 INFO    ] 2026-06-12 22:31:26
[2026-06-12 22:31:26,668.668 INFO    ] 2026-06-12 22:31:26
[2026-06-12 22:31:26,696.696 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 22:31:26,881.881 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 22:31:26,890.890 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 22:31:27,013.013 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 22:31:27,074.074 INFO    ] time= 12/06/2026 22:31:27
[2026-06-12 22:31:27,111.111 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 22:31:27,118.118 INFO    ] Checking for existing commands in stream...
[2026-06-12 22:31:27,185.185 INFO    ] No existing commands found in stream
[2026-06-12 22:31:32,217.217 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 22:31:32,219.219 INFO    ] Waiting 3.80 seconds before fallback handling...
[2026-06-12 22:31:36,369.369 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 22:31:36,371.371 INFO    ] Checking for system updates...
[2026-06-12 22:31:36,391.391 INFO    ] 200
[2026-06-12 22:31:36,392.392 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:31:36,424.424 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 22:31:36,426.426 INFO    ] No update needed
[2026-06-12 22:31:36,427.427 INFO    ] Checking for camera pi updates...
[2026-06-12 22:31:36,447.447 INFO    ] 200
[2026-06-12 22:31:36,449.449 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:31:36,472.472 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 22:31:36,523.523 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 22:31:36,524.524 INFO    ] No camera update needed
[2026-06-12 22:31:36,525.525 INFO    ] Script finished. Safe exiting...
[2026-06-12 22:31:36,527.527 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 22:31:36,530.530 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 22:31:36,533.533 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 22:31:38,571.571 INFO    ] ================================================
[2026-06-12 22:31:38,587.587 INFO    ] Launching Daemon at Fri Jun 12 22:31:38 IST 2026
[2026-06-12 22:31:38,598.598 INFO    ] ================================================
[2026-06-12 22:31:38,972.972 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 22:31:38
[2026-06-12 22:31:39,305.305 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 22:31:39,438.438 INFO    ] Initializing speech engine...
[2026-06-12 22:31:39,450.450 INFO    ] 2026-06-12 22:31:39
[2026-06-12 22:31:39,658.658 INFO    ] 2026-06-12 22:31:39
[2026-06-12 22:31:39,688.688 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 22:31:39,812.812 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 22:31:39,875.875 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 22:31:40,008.008 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 22:31:40,068.068 INFO    ] time= 12/06/2026 22:31:40
[2026-06-12 22:31:40,103.103 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 22:31:40,108.108 INFO    ] Checking for existing commands in stream...
[2026-06-12 22:31:40,180.180 INFO    ] No existing commands found in stream
[2026-06-12 22:31:45,205.205 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 22:31:45,208.208 INFO    ] Waiting 1.48 seconds before fallback handling...
[2026-06-12 22:31:47,032.032 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 22:31:47,033.033 INFO    ] Checking for system updates...
[2026-06-12 22:31:47,054.054 INFO    ] 200
[2026-06-12 22:31:47,055.055 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:31:47,084.084 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 22:31:47,086.086 INFO    ] No update needed
[2026-06-12 22:31:47,087.087 INFO    ] Checking for camera pi updates...
[2026-06-12 22:31:47,107.107 INFO    ] 200
[2026-06-12 22:31:47,109.109 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:31:47,131.131 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 22:31:47,169.169 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 22:31:47,171.171 INFO    ] No camera update needed
[2026-06-12 22:31:47,172.172 INFO    ] Script finished. Safe exiting...
[2026-06-12 22:31:47,173.173 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 22:31:47,176.176 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 22:31:47,179.179 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 22:31:49,218.218 INFO    ] ================================================
[2026-06-12 22:31:49,234.234 INFO    ] Launching Daemon at Fri Jun 12 22:31:49 IST 2026
[2026-06-12 22:31:49,245.245 INFO    ] ================================================
[2026-06-12 22:31:49,604.604 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 22:31:49
[2026-06-12 22:31:49,942.942 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 22:31:50,093.093 INFO    ] Initializing speech engine...
[2026-06-12 22:31:50,098.098 INFO    ] 2026-06-12 22:31:50
[2026-06-12 22:31:50,306.306 INFO    ] 2026-06-12 22:31:50
[2026-06-12 22:31:50,335.335 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 22:31:50,457.457 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 22:31:50,515.515 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 22:31:50,657.657 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 22:31:50,711.711 INFO    ] time= 12/06/2026 22:31:50
[2026-06-12 22:31:50,748.748 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 22:31:50,754.754 INFO    ] Checking for existing commands in stream...
[2026-06-12 22:31:50,821.821 INFO    ] No existing commands found in stream
[2026-06-12 22:31:55,835.835 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 22:31:55,838.838 INFO    ] Waiting 2.89 seconds before fallback handling...
[2026-06-12 22:31:59,091.091 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 22:31:59,092.092 INFO    ] Checking for system updates...
[2026-06-12 22:31:59,115.115 INFO    ] 200
[2026-06-12 22:31:59,116.116 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:31:59,148.148 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 22:31:59,149.149 INFO    ] No update needed
[2026-06-12 22:31:59,151.151 INFO    ] Checking for camera pi updates...
[2026-06-12 22:31:59,171.171 INFO    ] 200
[2026-06-12 22:31:59,172.172 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:31:59,195.195 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 22:31:59,239.239 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 22:31:59,241.241 INFO    ] No camera update needed
[2026-06-12 22:31:59,242.242 INFO    ] Script finished. Safe exiting...
[2026-06-12 22:31:59,244.244 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 22:31:59,247.247 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 22:31:59,250.250 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 22:32:01,284.284 INFO    ] ================================================
[2026-06-12 22:32:01,294.294 INFO    ] Launching Daemon at Fri Jun 12 22:32:01 IST 2026
[2026-06-12 22:32:01,301.301 INFO    ] ================================================
[2026-06-12 22:32:01,630.630 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 22:32:01
[2026-06-12 22:32:01,970.970 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 22:32:02,323.323 INFO    ] Initializing speech engine...
[2026-06-12 22:32:02,338.338 INFO    ] 2026-06-12 22:32:02
[2026-06-12 22:32:02,599.599 INFO    ] 2026-06-12 22:32:02
[2026-06-12 22:32:02,628.628 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 22:32:02,771.771 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 22:32:02,774.774 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 22:32:02,880.880 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 22:32:02,897.897 INFO    ] time= 12/06/2026 22:32:02
[2026-06-12 22:32:02,913.913 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 22:32:02,930.930 INFO    ] Checking for existing commands in stream...
[2026-06-12 22:32:03,030.030 INFO    ] No existing commands found in stream
[2026-06-12 22:32:08,060.060 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 22:32:08,063.063 INFO    ] Waiting 1.29 seconds before fallback handling...
[2026-06-12 22:32:09,727.727 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 22:32:09,728.728 INFO    ] Checking for system updates...
[2026-06-12 22:32:09,749.749 INFO    ] 200
[2026-06-12 22:32:09,750.750 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:32:09,783.783 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 22:32:09,784.784 INFO    ] No update needed
[2026-06-12 22:32:09,786.786 INFO    ] Checking for camera pi updates...
[2026-06-12 22:32:09,805.805 INFO    ] 200
[2026-06-12 22:32:09,806.806 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:32:09,845.845 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 22:32:09,885.885 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 22:32:09,887.887 INFO    ] No camera update needed
[2026-06-12 22:32:09,888.888 INFO    ] Script finished. Safe exiting...
[2026-06-12 22:32:09,889.889 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 22:32:09,892.892 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 22:32:09,895.895 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 22:32:11,932.932 INFO    ] ================================================
[2026-06-12 22:32:11,947.947 INFO    ] Launching Daemon at Fri Jun 12 22:32:11 IST 2026
[2026-06-12 22:32:11,958.958 INFO    ] ================================================
[2026-06-12 22:32:12,330.330 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 22:32:12
[2026-06-12 22:32:12,675.675 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 22:32:12,832.832 INFO    ] Initializing speech engine...
[2026-06-12 22:32:12,837.837 INFO    ] 2026-06-12 22:32:12
[2026-06-12 22:32:13,048.048 INFO    ] 2026-06-12 22:32:13
[2026-06-12 22:32:13,077.077 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 22:32:13,265.265 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 22:32:13,276.276 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 22:32:13,398.398 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 22:32:13,461.461 INFO    ] time= 12/06/2026 22:32:13
[2026-06-12 22:32:13,499.499 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 22:32:13,505.505 INFO    ] Checking for existing commands in stream...
[2026-06-12 22:32:13,573.573 INFO    ] No existing commands found in stream
[2026-06-12 22:32:18,587.587 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 22:32:18,591.591 INFO    ] Waiting 3.71 seconds before fallback handling...
[2026-06-12 22:32:22,673.673 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 22:32:22,674.674 INFO    ] Checking for system updates...
[2026-06-12 22:32:22,695.695 INFO    ] 200
[2026-06-12 22:32:22,696.696 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:32:22,729.729 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 22:32:22,730.730 INFO    ] No update needed
[2026-06-12 22:32:22,732.732 INFO    ] Checking for camera pi updates...
[2026-06-12 22:32:22,751.751 INFO    ] 200
[2026-06-12 22:32:22,752.752 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:32:22,775.775 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 22:32:22,825.825 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 22:32:22,826.826 INFO    ] No camera update needed
[2026-06-12 22:32:22,828.828 INFO    ] Script finished. Safe exiting...
[2026-06-12 22:32:22,829.829 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 22:32:22,832.832 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 22:32:22,835.835 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 22:32:24,872.872 INFO    ] ================================================
[2026-06-12 22:32:24,888.888 INFO    ] Launching Daemon at Fri Jun 12 22:32:24 IST 2026
[2026-06-12 22:32:24,899.899 INFO    ] ================================================
[2026-06-12 22:32:25,240.240 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 22:32:25
[2026-06-12 22:32:25,553.553 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 22:32:25,696.696 INFO    ] Initializing speech engine...
[2026-06-12 22:32:25,702.702 INFO    ] 2026-06-12 22:32:25
[2026-06-12 22:32:25,908.908 INFO    ] 2026-06-12 22:32:25
[2026-06-12 22:32:25,936.936 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 22:32:26,123.123 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 22:32:26,132.132 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 22:32:26,264.264 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 22:32:26,331.331 INFO    ] time= 12/06/2026 22:32:26
[2026-06-12 22:32:26,355.355 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 22:32:26,361.361 INFO    ] Checking for existing commands in stream...
[2026-06-12 22:32:26,429.429 INFO    ] No existing commands found in stream
[2026-06-12 22:32:31,443.443 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 22:32:31,446.446 INFO    ] Waiting 2.71 seconds before fallback handling...
[2026-06-12 22:32:34,510.510 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 22:32:34,511.511 INFO    ] Checking for system updates...
[2026-06-12 22:32:34,532.532 INFO    ] 200
[2026-06-12 22:32:34,534.534 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:32:34,566.566 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 22:32:34,567.567 INFO    ] No update needed
[2026-06-12 22:32:34,569.569 INFO    ] Checking for camera pi updates...
[2026-06-12 22:32:34,589.589 INFO    ] 200
[2026-06-12 22:32:34,591.591 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:32:34,616.616 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 22:32:34,754.754 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 22:32:34,756.756 INFO    ] No camera update needed
[2026-06-12 22:32:34,757.757 INFO    ] Script finished. Safe exiting...
[2026-06-12 22:32:34,758.758 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 22:32:34,761.761 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 22:32:34,764.764 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 22:32:36,806.806 INFO    ] ================================================
[2026-06-12 22:32:36,822.822 INFO    ] Launching Daemon at Fri Jun 12 22:32:36 IST 2026
[2026-06-12 22:32:36,833.833 INFO    ] ================================================
[2026-06-12 22:32:37,175.175 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 22:32:37
[2026-06-12 22:32:37,486.486 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 22:32:37,617.617 INFO    ] Initializing speech engine...
[2026-06-12 22:32:37,625.625 INFO    ] 2026-06-12 22:32:37
[2026-06-12 22:32:37,837.837 INFO    ] 2026-06-12 22:32:37
[2026-06-12 22:32:37,867.867 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 22:32:38,051.051 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 22:32:38,055.055 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 22:32:38,193.193 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 22:32:38,252.252 INFO    ] time= 12/06/2026 22:32:38
[2026-06-12 22:32:38,285.285 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 22:32:38,292.292 INFO    ] Checking for existing commands in stream...
[2026-06-12 22:32:38,382.382 INFO    ] No existing commands found in stream
[2026-06-12 22:32:43,392.392 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 22:32:43,394.394 INFO    ] Waiting 2.38 seconds before fallback handling...
[2026-06-12 22:32:46,134.134 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 22:32:46,136.136 INFO    ] Checking for system updates...
[2026-06-12 22:32:46,162.162 INFO    ] 200
[2026-06-12 22:32:46,163.163 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:32:46,193.193 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 22:32:46,195.195 INFO    ] No update needed
[2026-06-12 22:32:46,196.196 INFO    ] Checking for camera pi updates...
[2026-06-12 22:32:46,217.217 INFO    ] 200
[2026-06-12 22:32:46,218.218 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:32:46,241.241 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 22:32:46,289.289 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 22:32:46,290.290 INFO    ] No camera update needed
[2026-06-12 22:32:46,292.292 INFO    ] Script finished. Safe exiting...
[2026-06-12 22:32:46,293.293 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 22:32:46,296.296 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 22:32:46,299.299 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 22:32:48,338.338 INFO    ] ================================================
[2026-06-12 22:32:48,354.354 INFO    ] Launching Daemon at Fri Jun 12 22:32:48 IST 2026
[2026-06-12 22:32:48,364.364 INFO    ] ================================================
[2026-06-12 22:32:48,723.723 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 22:32:48
[2026-06-12 22:32:49,048.048 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 22:32:49,203.203 INFO    ] Initializing speech engine...
[2026-06-12 22:32:49,207.207 INFO    ] 2026-06-12 22:32:49
[2026-06-12 22:32:49,418.418 INFO    ] 2026-06-12 22:32:49
[2026-06-12 22:32:49,448.448 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 22:32:49,582.582 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 22:32:49,636.636 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 22:32:49,776.776 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 22:32:49,844.844 INFO    ] time= 12/06/2026 22:32:49
[2026-06-12 22:32:49,868.868 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 22:32:49,875.875 INFO    ] Checking for existing commands in stream...
[2026-06-12 22:32:49,943.943 INFO    ] No existing commands found in stream
[2026-06-12 22:32:54,953.953 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 22:32:54,956.956 INFO    ] Waiting 2.54 seconds before fallback handling...
[2026-06-12 22:32:57,880.880 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 22:32:57,881.881 INFO    ] Checking for system updates...
[2026-06-12 22:32:57,904.904 INFO    ] 200
[2026-06-12 22:32:57,905.905 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:32:57,935.935 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 22:32:57,937.937 INFO    ] No update needed
[2026-06-12 22:32:57,938.938 INFO    ] Checking for camera pi updates...
[2026-06-12 22:32:57,958.958 INFO    ] 200
[2026-06-12 22:32:57,960.960 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:32:57,983.983 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 22:32:58,019.019 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 22:32:58,021.021 INFO    ] No camera update needed
[2026-06-12 22:32:58,022.022 INFO    ] Script finished. Safe exiting...
[2026-06-12 22:32:58,023.023 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 22:32:58,026.026 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 22:32:58,029.029 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 22:33:00,067.067 INFO    ] ================================================
[2026-06-12 22:33:00,082.082 INFO    ] Launching Daemon at Fri Jun 12 22:33:00 IST 2026
[2026-06-12 22:33:00,093.093 INFO    ] ================================================
[2026-06-12 22:33:00,471.471 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 22:33:00
[2026-06-12 22:33:00,815.815 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 22:33:00,970.970 INFO    ] Initializing speech engine...
[2026-06-12 22:33:00,978.978 INFO    ] 2026-06-12 22:33:00
[2026-06-12 22:33:01,190.190 INFO    ] 2026-06-12 22:33:01
[2026-06-12 22:33:01,219.219 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 22:33:01,373.373 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 22:33:01,377.377 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 22:33:01,495.495 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 22:33:01,527.527 INFO    ] time= 12/06/2026 22:33:01
[2026-06-12 22:33:01,593.593 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 22:33:01,646.646 INFO    ] Checking for existing commands in stream...
[2026-06-12 22:33:01,810.810 INFO    ] No existing commands found in stream
[2026-06-12 22:33:06,828.828 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 22:33:06,831.831 INFO    ] Waiting 0.70 seconds before fallback handling...
[2026-06-12 22:33:07,911.911 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 22:33:07,912.912 INFO    ] Checking for system updates...
[2026-06-12 22:33:07,934.934 INFO    ] 200
[2026-06-12 22:33:07,935.935 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:33:07,967.967 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 22:33:07,968.968 INFO    ] No update needed
[2026-06-12 22:33:07,970.970 INFO    ] Checking for camera pi updates...
[2026-06-12 22:33:07,990.990 INFO    ] 200
[2026-06-12 22:33:07,992.992 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:33:08,015.015 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 22:33:08,066.066 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 22:33:08,067.067 INFO    ] No camera update needed
[2026-06-12 22:33:08,069.069 INFO    ] Script finished. Safe exiting...
[2026-06-12 22:33:08,070.070 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 22:33:08,073.073 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 22:33:08,076.076 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 22:33:10,114.114 INFO    ] ================================================
[2026-06-12 22:33:10,130.130 INFO    ] Launching Daemon at Fri Jun 12 22:33:10 IST 2026
[2026-06-12 22:33:10,141.141 INFO    ] ================================================
[2026-06-12 22:33:10,493.493 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 22:33:10
[2026-06-12 22:33:10,837.837 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 22:33:10,995.995 INFO    ] Initializing speech engine...
[2026-06-12 22:33:11,005.005 INFO    ] 2026-06-12 22:33:10
[2026-06-12 22:33:11,203.203 INFO    ] 2026-06-12 22:33:11
[2026-06-12 22:33:11,233.233 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 22:33:11,417.417 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 22:33:11,427.427 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 22:33:11,570.570 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 22:33:11,624.624 INFO    ] time= 12/06/2026 22:33:11
[2026-06-12 22:33:11,646.646 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 22:33:11,652.652 INFO    ] Checking for existing commands in stream...
[2026-06-12 22:33:11,743.743 INFO    ] No existing commands found in stream
[2026-06-12 22:33:16,752.752 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 22:33:16,755.755 INFO    ] Waiting 3.86 seconds before fallback handling...
[2026-06-12 22:33:20,996.996 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 22:33:20,997.997 INFO    ] Checking for system updates...
[2026-06-12 22:33:21,018.018 INFO    ] 200
[2026-06-12 22:33:21,019.019 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:33:21,050.050 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 22:33:21,051.051 INFO    ] No update needed
[2026-06-12 22:33:21,053.053 INFO    ] Checking for camera pi updates...
[2026-06-12 22:33:21,073.073 INFO    ] 200
[2026-06-12 22:33:21,075.075 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:33:21,103.103 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 22:33:21,143.143 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 22:33:21,145.145 INFO    ] No camera update needed
[2026-06-12 22:33:21,146.146 INFO    ] Script finished. Safe exiting...
[2026-06-12 22:33:21,148.148 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 22:33:21,151.151 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 22:33:21,154.154 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 22:33:23,193.193 INFO    ] ================================================
[2026-06-12 22:33:23,208.208 INFO    ] Launching Daemon at Fri Jun 12 22:33:23 IST 2026
[2026-06-12 22:33:23,219.219 INFO    ] ================================================
[2026-06-12 22:33:23,612.612 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 22:33:23
[2026-06-12 22:33:23,969.969 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 22:33:24,111.111 INFO    ] Initializing speech engine...
[2026-06-12 22:33:24,123.123 INFO    ] 2026-06-12 22:33:24
[2026-06-12 22:33:24,334.334 INFO    ] 2026-06-12 22:33:24
[2026-06-12 22:33:24,365.365 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 22:33:24,554.554 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 22:33:24,564.564 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 22:33:24,716.716 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 22:33:24,765.765 INFO    ] time= 12/06/2026 22:33:24
[2026-06-12 22:33:24,787.787 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 22:33:24,793.793 INFO    ] Checking for existing commands in stream...
[2026-06-12 22:33:24,858.858 INFO    ] No existing commands found in stream
[2026-06-12 22:33:29,870.870 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 22:33:29,873.873 INFO    ] Waiting 3.52 seconds before fallback handling...
[2026-06-12 22:33:33,804.804 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 22:33:33,805.805 INFO    ] Checking for system updates...
[2026-06-12 22:33:33,826.826 INFO    ] 200
[2026-06-12 22:33:33,827.827 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:33:33,857.857 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 22:33:33,858.858 INFO    ] No update needed
[2026-06-12 22:33:33,860.860 INFO    ] Checking for camera pi updates...
[2026-06-12 22:33:33,880.880 INFO    ] 200
[2026-06-12 22:33:33,881.881 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:33:33,905.905 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 22:33:33,964.964 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 22:33:33,965.965 INFO    ] No camera update needed
[2026-06-12 22:33:33,966.966 INFO    ] Script finished. Safe exiting...
[2026-06-12 22:33:33,968.968 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 22:33:33,971.971 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 22:33:33,973.973 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 22:33:36,012.012 INFO    ] ================================================
[2026-06-12 22:33:36,028.028 INFO    ] Launching Daemon at Fri Jun 12 22:33:36 IST 2026
[2026-06-12 22:33:36,039.039 INFO    ] ================================================
[2026-06-12 22:33:36,395.395 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 22:33:36
[2026-06-12 22:33:36,714.714 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 22:33:36,859.859 INFO    ] Initializing speech engine...
[2026-06-12 22:33:36,864.864 INFO    ] 2026-06-12 22:33:36
[2026-06-12 22:33:37,068.068 INFO    ] 2026-06-12 22:33:37
[2026-06-12 22:33:37,097.097 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 22:33:37,282.282 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 22:33:37,290.290 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 22:33:37,418.418 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 22:33:37,484.484 INFO    ] time= 12/06/2026 22:33:37
[2026-06-12 22:33:37,512.512 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 22:33:37,518.518 INFO    ] Checking for existing commands in stream...
[2026-06-12 22:33:37,585.585 INFO    ] No existing commands found in stream
[2026-06-12 22:33:42,594.594 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 22:33:42,597.597 INFO    ] Waiting 3.24 seconds before fallback handling...
[2026-06-12 22:33:46,200.200 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 22:33:46,202.202 INFO    ] Checking for system updates...
[2026-06-12 22:33:46,223.223 INFO    ] 200
[2026-06-12 22:33:46,224.224 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:33:46,254.254 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 22:33:46,255.255 INFO    ] No update needed
[2026-06-12 22:33:46,257.257 INFO    ] Checking for camera pi updates...
[2026-06-12 22:33:46,277.277 INFO    ] 200
[2026-06-12 22:33:46,278.278 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:33:46,303.303 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 22:33:46,358.358 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 22:33:46,360.360 INFO    ] No camera update needed
[2026-06-12 22:33:46,361.361 INFO    ] Script finished. Safe exiting...
[2026-06-12 22:33:46,363.363 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 22:33:46,366.366 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 22:33:46,368.368 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 22:33:48,406.406 INFO    ] ================================================
[2026-06-12 22:33:48,421.421 INFO    ] Launching Daemon at Fri Jun 12 22:33:48 IST 2026
[2026-06-12 22:33:48,432.432 INFO    ] ================================================
[2026-06-12 22:33:48,787.787 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 22:33:48
[2026-06-12 22:33:49,099.099 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 22:33:49,231.231 INFO    ] Initializing speech engine...
[2026-06-12 22:33:49,239.239 INFO    ] 2026-06-12 22:33:49
[2026-06-12 22:33:49,449.449 INFO    ] 2026-06-12 22:33:49
[2026-06-12 22:33:49,478.478 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 22:33:49,661.661 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 22:33:49,665.665 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 22:33:49,816.816 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 22:33:49,868.868 INFO    ] time= 12/06/2026 22:33:49
[2026-06-12 22:33:49,891.891 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 22:33:49,897.897 INFO    ] Checking for existing commands in stream...
[2026-06-12 22:33:49,964.964 INFO    ] No existing commands found in stream
[2026-06-12 22:33:54,978.978 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 22:33:54,981.981 INFO    ] Waiting 2.07 seconds before fallback handling...
[2026-06-12 22:33:57,496.496 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 22:33:57,498.498 INFO    ] Checking for system updates...
[2026-06-12 22:33:57,519.519 INFO    ] 200
[2026-06-12 22:33:57,520.520 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:33:57,557.557 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 22:33:57,559.559 INFO    ] No update needed
[2026-06-12 22:33:57,561.561 INFO    ] Checking for camera pi updates...
[2026-06-12 22:33:57,584.584 INFO    ] 200
[2026-06-12 22:33:57,585.585 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:33:57,611.611 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 22:33:57,659.659 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 22:33:57,660.660 INFO    ] No camera update needed
[2026-06-12 22:33:57,662.662 INFO    ] Script finished. Safe exiting...
[2026-06-12 22:33:57,663.663 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 22:33:57,667.667 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 22:33:57,670.670 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 22:33:59,708.708 INFO    ] ================================================
[2026-06-12 22:33:59,723.723 INFO    ] Launching Daemon at Fri Jun 12 22:33:59 IST 2026
[2026-06-12 22:33:59,734.734 INFO    ] ================================================
[2026-06-12 22:34:00,106.106 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 22:34:00
[2026-06-12 22:34:00,423.423 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 22:34:00,565.565 INFO    ] Initializing speech engine...
[2026-06-12 22:34:00,571.571 INFO    ] 2026-06-12 22:34:00
[2026-06-12 22:34:00,773.773 INFO    ] 2026-06-12 22:34:00
[2026-06-12 22:34:00,802.802 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 22:34:00,984.984 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 22:34:00,993.993 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 22:34:01,115.115 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 22:34:01,176.176 INFO    ] time= 12/06/2026 22:34:01
[2026-06-12 22:34:01,205.205 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 22:34:01,215.215 INFO    ] Checking for existing commands in stream...
[2026-06-12 22:34:01,286.286 INFO    ] No existing commands found in stream
[2026-06-12 22:34:06,295.295 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 22:34:06,298.298 INFO    ] Waiting 2.81 seconds before fallback handling...
[2026-06-12 22:34:09,501.501 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 22:34:09,502.502 INFO    ] Checking for system updates...
[2026-06-12 22:34:09,523.523 INFO    ] 200
[2026-06-12 22:34:09,524.524 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:34:09,557.557 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 22:34:09,559.559 INFO    ] No update needed
[2026-06-12 22:34:09,561.561 INFO    ] Checking for camera pi updates...
[2026-06-12 22:34:09,580.580 INFO    ] 200
[2026-06-12 22:34:09,582.582 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:34:09,605.605 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 22:34:09,646.646 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 22:34:09,647.647 INFO    ] No camera update needed
[2026-06-12 22:34:09,648.648 INFO    ] Script finished. Safe exiting...
[2026-06-12 22:34:09,650.650 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 22:34:09,653.653 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 22:34:09,656.656 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 22:34:11,693.693 INFO    ] ================================================
[2026-06-12 22:34:11,709.709 INFO    ] Launching Daemon at Fri Jun 12 22:34:11 IST 2026
[2026-06-12 22:34:11,720.720 INFO    ] ================================================
[2026-06-12 22:34:12,094.094 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 22:34:12
[2026-06-12 22:34:12,430.430 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 22:34:12,572.572 INFO    ] Initializing speech engine...
[2026-06-12 22:34:12,577.577 INFO    ] 2026-06-12 22:34:12
[2026-06-12 22:34:12,780.780 INFO    ] 2026-06-12 22:34:12
[2026-06-12 22:34:12,807.807 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 22:34:12,991.991 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 22:34:13,000.000 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 22:34:13,128.128 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 22:34:13,196.196 INFO    ] time= 12/06/2026 22:34:13
[2026-06-12 22:34:13,220.220 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 22:34:13,221.221 INFO    ] Checking for existing commands in stream...
[2026-06-12 22:34:13,293.293 INFO    ] No existing commands found in stream
[2026-06-12 22:34:18,302.302 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 22:34:18,304.304 INFO    ] Waiting 3.36 seconds before fallback handling...
[2026-06-12 22:34:22,048.048 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 22:34:22,050.050 INFO    ] Checking for system updates...
[2026-06-12 22:34:22,075.075 INFO    ] 200
[2026-06-12 22:34:22,076.076 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:34:22,108.108 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 22:34:22,109.109 INFO    ] No update needed
[2026-06-12 22:34:22,111.111 INFO    ] Checking for camera pi updates...
[2026-06-12 22:34:22,130.130 INFO    ] 200
[2026-06-12 22:34:22,131.131 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:34:22,155.155 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 22:34:22,198.198 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 22:34:22,199.199 INFO    ] No camera update needed
[2026-06-12 22:34:22,201.201 INFO    ] Script finished. Safe exiting...
[2026-06-12 22:34:22,202.202 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 22:34:22,205.205 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 22:34:22,207.207 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 22:34:24,250.250 INFO    ] ================================================
[2026-06-12 22:34:24,265.265 INFO    ] Launching Daemon at Fri Jun 12 22:34:24 IST 2026
[2026-06-12 22:34:24,276.276 INFO    ] ================================================
[2026-06-12 22:34:24,615.615 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 22:34:24
[2026-06-12 22:34:24,931.931 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 22:34:25,065.065 INFO    ] Initializing speech engine...
[2026-06-12 22:34:25,070.070 INFO    ] 2026-06-12 22:34:25
[2026-06-12 22:34:25,301.301 INFO    ] 2026-06-12 22:34:25
[2026-06-12 22:34:25,332.332 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 22:34:25,530.530 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 22:34:25,534.534 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 22:34:25,682.682 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 22:34:25,746.746 INFO    ] time= 12/06/2026 22:34:25
[2026-06-12 22:34:25,777.777 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 22:34:25,783.783 INFO    ] Checking for existing commands in stream...
[2026-06-12 22:34:25,859.859 INFO    ] No existing commands found in stream
[2026-06-12 22:34:30,870.870 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 22:34:30,873.873 INFO    ] Waiting 0.09 seconds before fallback handling...
[2026-06-12 22:34:31,323.323 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 22:34:31,325.325 INFO    ] Checking for system updates...
[2026-06-12 22:34:31,345.345 INFO    ] 200
[2026-06-12 22:34:31,346.346 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:34:31,378.378 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 22:34:31,380.380 INFO    ] No update needed
[2026-06-12 22:34:31,381.381 INFO    ] Checking for camera pi updates...
[2026-06-12 22:34:31,400.400 INFO    ] 200
[2026-06-12 22:34:31,401.401 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:34:31,427.427 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 22:34:31,474.474 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 22:34:31,476.476 INFO    ] No camera update needed
[2026-06-12 22:34:31,477.477 INFO    ] Script finished. Safe exiting...
[2026-06-12 22:34:31,478.478 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 22:34:31,481.481 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 22:34:31,484.484 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 22:34:33,514.514 INFO    ] ================================================
[2026-06-12 22:34:33,530.530 INFO    ] Launching Daemon at Fri Jun 12 22:34:33 IST 2026
[2026-06-12 22:34:33,541.541 INFO    ] ================================================
[2026-06-12 22:34:33,893.893 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 22:34:33
[2026-06-12 22:34:34,234.234 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 22:34:34,386.386 INFO    ] Initializing speech engine...
[2026-06-12 22:34:34,392.392 INFO    ] 2026-06-12 22:34:34
[2026-06-12 22:34:34,602.602 INFO    ] 2026-06-12 22:34:34
[2026-06-12 22:34:34,632.632 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 22:34:34,827.827 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 22:34:34,833.833 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 22:34:34,977.977 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 22:34:35,031.031 INFO    ] time= 12/06/2026 22:34:34
[2026-06-12 22:34:35,055.055 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 22:34:35,060.060 INFO    ] Checking for existing commands in stream...
[2026-06-12 22:34:35,129.129 INFO    ] No existing commands found in stream
[2026-06-12 22:34:40,138.138 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 22:34:40,142.142 INFO    ] Waiting 2.92 seconds before fallback handling...
[2026-06-12 22:34:43,411.411 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 22:34:43,413.413 INFO    ] Checking for system updates...
[2026-06-12 22:34:43,436.436 INFO    ] 200
[2026-06-12 22:34:43,437.437 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:34:43,471.471 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 22:34:43,472.472 INFO    ] No update needed
[2026-06-12 22:34:43,473.473 INFO    ] Checking for camera pi updates...
[2026-06-12 22:34:43,493.493 INFO    ] 200
[2026-06-12 22:34:43,495.495 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:34:43,518.518 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 22:34:43,658.658 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 22:34:43,659.659 INFO    ] No camera update needed
[2026-06-12 22:34:43,661.661 INFO    ] Script finished. Safe exiting...
[2026-06-12 22:34:43,662.662 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 22:34:43,666.666 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 22:34:43,669.669 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 22:34:45,708.708 INFO    ] ================================================
[2026-06-12 22:34:45,723.723 INFO    ] Launching Daemon at Fri Jun 12 22:34:45 IST 2026
[2026-06-12 22:34:45,734.734 INFO    ] ================================================
[2026-06-12 22:34:46,062.062 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 22:34:46
[2026-06-12 22:34:46,378.378 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 22:34:46,522.522 INFO    ] Initializing speech engine...
[2026-06-12 22:34:46,527.527 INFO    ] 2026-06-12 22:34:46
[2026-06-12 22:34:46,733.733 INFO    ] 2026-06-12 22:34:46
[2026-06-12 22:34:46,761.761 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 22:34:46,946.946 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 22:34:46,955.955 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 22:34:47,081.081 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 22:34:47,139.139 INFO    ] time= 12/06/2026 22:34:47
[2026-06-12 22:34:47,176.176 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 22:34:47,183.183 INFO    ] Checking for existing commands in stream...
[2026-06-12 22:34:47,250.250 INFO    ] No existing commands found in stream
[2026-06-12 22:34:52,259.259 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 22:34:52,262.262 INFO    ] Waiting 1.03 seconds before fallback handling...
[2026-06-12 22:34:53,660.660 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 22:34:53,662.662 INFO    ] Checking for system updates...
[2026-06-12 22:34:53,684.684 INFO    ] 200
[2026-06-12 22:34:53,686.686 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:34:53,719.719 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 22:34:53,720.720 INFO    ] No update needed
[2026-06-12 22:34:53,722.722 INFO    ] Checking for camera pi updates...
[2026-06-12 22:34:53,742.742 INFO    ] 200
[2026-06-12 22:34:53,743.743 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:34:53,768.768 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 22:34:53,821.821 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 22:34:53,823.823 INFO    ] No camera update needed
[2026-06-12 22:34:53,824.824 INFO    ] Script finished. Safe exiting...
[2026-06-12 22:34:53,826.826 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 22:34:53,829.829 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 22:34:53,832.832 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 22:34:55,871.871 INFO    ] ================================================
[2026-06-12 22:34:55,887.887 INFO    ] Launching Daemon at Fri Jun 12 22:34:55 IST 2026
[2026-06-12 22:34:55,898.898 INFO    ] ================================================
[2026-06-12 22:34:56,256.256 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 22:34:56
[2026-06-12 22:34:56,568.568 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 22:34:56,711.711 INFO    ] Initializing speech engine...
[2026-06-12 22:34:56,716.716 INFO    ] 2026-06-12 22:34:56
[2026-06-12 22:34:56,921.921 INFO    ] 2026-06-12 22:34:56
[2026-06-12 22:34:56,950.950 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 22:34:57,136.136 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 22:34:57,145.145 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 22:34:57,271.271 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 22:34:57,328.328 INFO    ] time= 12/06/2026 22:34:57
[2026-06-12 22:34:57,358.358 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 22:34:57,368.368 INFO    ] Checking for existing commands in stream...
[2026-06-12 22:34:57,464.464 INFO    ] No existing commands found in stream
[2026-06-12 22:35:02,472.472 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 22:35:02,474.474 INFO    ] Waiting 3.49 seconds before fallback handling...
[2026-06-12 22:35:06,360.360 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 22:35:06,362.362 INFO    ] Checking for system updates...
[2026-06-12 22:35:06,382.382 INFO    ] 200
[2026-06-12 22:35:06,384.384 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:35:06,413.413 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 22:35:06,415.415 INFO    ] No update needed
[2026-06-12 22:35:06,416.416 INFO    ] Checking for camera pi updates...
[2026-06-12 22:35:06,437.437 INFO    ] 200
[2026-06-12 22:35:06,438.438 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:35:06,461.461 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 22:35:06,505.505 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 22:35:06,506.506 INFO    ] No camera update needed
[2026-06-12 22:35:06,508.508 INFO    ] Script finished. Safe exiting...
[2026-06-12 22:35:06,509.509 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 22:35:06,512.512 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 22:35:06,515.515 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 22:35:08,553.553 INFO    ] ================================================
[2026-06-12 22:35:08,569.569 INFO    ] Launching Daemon at Fri Jun 12 22:35:08 IST 2026
[2026-06-12 22:35:08,581.581 INFO    ] ================================================
[2026-06-12 22:35:08,958.958 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 22:35:08
[2026-06-12 22:35:09,276.276 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 22:35:09,419.419 INFO    ] Initializing speech engine...
[2026-06-12 22:35:09,424.424 INFO    ] 2026-06-12 22:35:09
[2026-06-12 22:35:09,628.628 INFO    ] 2026-06-12 22:35:09
[2026-06-12 22:35:09,656.656 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 22:35:09,841.841 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 22:35:09,851.851 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 22:35:09,971.971 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 22:35:10,032.032 INFO    ] time= 12/06/2026 22:35:09
[2026-06-12 22:35:10,069.069 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 22:35:10,076.076 INFO    ] Checking for existing commands in stream...
[2026-06-12 22:35:10,166.166 INFO    ] No existing commands found in stream
[2026-06-12 22:35:15,172.172 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 22:35:15,175.175 INFO    ] Waiting 2.65 seconds before fallback handling...
[2026-06-12 22:35:18,217.217 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 22:35:18,218.218 INFO    ] Checking for system updates...
[2026-06-12 22:35:18,239.239 INFO    ] 200
[2026-06-12 22:35:18,241.241 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:35:18,274.274 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 22:35:18,275.275 INFO    ] No update needed
[2026-06-12 22:35:18,276.276 INFO    ] Checking for camera pi updates...
[2026-06-12 22:35:18,297.297 INFO    ] 200
[2026-06-12 22:35:18,298.298 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:35:18,322.322 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 22:35:18,372.372 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 22:35:18,374.374 INFO    ] No camera update needed
[2026-06-12 22:35:18,375.375 INFO    ] Script finished. Safe exiting...
[2026-06-12 22:35:18,376.376 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 22:35:18,379.379 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 22:35:18,382.382 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 22:35:20,420.420 INFO    ] ================================================
[2026-06-12 22:35:20,436.436 INFO    ] Launching Daemon at Fri Jun 12 22:35:20 IST 2026
[2026-06-12 22:35:20,448.448 INFO    ] ================================================
[2026-06-12 22:35:20,808.808 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 22:35:20
[2026-06-12 22:35:21,121.121 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 22:35:21,251.251 INFO    ] Initializing speech engine...
[2026-06-12 22:35:21,260.260 INFO    ] 2026-06-12 22:35:21
[2026-06-12 22:35:21,475.475 INFO    ] 2026-06-12 22:35:21
[2026-06-12 22:35:21,503.503 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 22:35:21,691.691 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 22:35:21,702.702 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 22:35:21,834.834 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 22:35:21,897.897 INFO    ] time= 12/06/2026 22:35:21
[2026-06-12 22:35:21,927.927 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 22:35:21,933.933 INFO    ] Checking for existing commands in stream...
[2026-06-12 22:35:22,002.002 INFO    ] No existing commands found in stream
[2026-06-12 22:35:27,006.006 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 22:35:27,009.009 INFO    ] Waiting 1.68 seconds before fallback handling...
[2026-06-12 22:35:29,082.082 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 22:35:29,084.084 INFO    ] Checking for system updates...
[2026-06-12 22:35:29,107.107 INFO    ] 200
[2026-06-12 22:35:29,109.109 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:35:29,141.141 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 22:35:29,143.143 INFO    ] No update needed
[2026-06-12 22:35:29,144.144 INFO    ] Checking for camera pi updates...
[2026-06-12 22:35:29,166.166 INFO    ] 200
[2026-06-12 22:35:29,167.167 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:35:29,195.195 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 22:35:29,251.251 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 22:35:29,252.252 INFO    ] No camera update needed
[2026-06-12 22:35:29,254.254 INFO    ] Script finished. Safe exiting...
[2026-06-12 22:35:29,255.255 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 22:35:29,258.258 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 22:35:29,262.262 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 22:35:31,295.295 INFO    ] ================================================
[2026-06-12 22:35:31,311.311 INFO    ] Launching Daemon at Fri Jun 12 22:35:31 IST 2026
[2026-06-12 22:35:31,323.323 INFO    ] ================================================
[2026-06-12 22:35:31,700.700 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 22:35:31
[2026-06-12 22:35:32,018.018 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 22:35:32,199.199 INFO    ] Initializing speech engine...
[2026-06-12 22:35:32,278.278 INFO    ] 2026-06-12 22:35:32
[2026-06-12 22:35:32,591.591 INFO    ] 2026-06-12 22:35:32
[2026-06-12 22:35:32,663.663 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 22:35:32,877.877 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 22:35:32,912.912 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 22:35:33,031.031 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 22:35:33,034.034 INFO    ] time= 12/06/2026 22:35:33
[2026-06-12 22:35:33,037.037 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 22:35:33,039.039 INFO    ] Checking for existing commands in stream...
[2026-06-12 22:35:33,114.114 INFO    ] No existing commands found in stream
[2026-06-12 22:35:38,124.124 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 22:35:38,127.127 INFO    ] Waiting 0.95 seconds before fallback handling...
[2026-06-12 22:35:39,417.417 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 22:35:39,419.419 INFO    ] Checking for system updates...
[2026-06-12 22:35:39,439.439 INFO    ] 200
[2026-06-12 22:35:39,441.441 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:35:39,473.473 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 22:35:39,475.475 INFO    ] No update needed
[2026-06-12 22:35:39,476.476 INFO    ] Checking for camera pi updates...
[2026-06-12 22:35:39,497.497 INFO    ] 200
[2026-06-12 22:35:39,498.498 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:35:39,523.523 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 22:35:39,568.568 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 22:35:39,569.569 INFO    ] No camera update needed
[2026-06-12 22:35:39,571.571 INFO    ] Script finished. Safe exiting...
[2026-06-12 22:35:39,572.572 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 22:35:39,575.575 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 22:35:39,578.578 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 22:35:41,618.618 INFO    ] ================================================
[2026-06-12 22:35:41,634.634 INFO    ] Launching Daemon at Fri Jun 12 22:35:41 IST 2026
[2026-06-12 22:35:41,645.645 INFO    ] ================================================
[2026-06-12 22:35:42,015.015 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 22:35:42
[2026-06-12 22:35:42,334.334 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 22:35:42,473.473 INFO    ] Initializing speech engine...
[2026-06-12 22:35:42,484.484 INFO    ] 2026-06-12 22:35:42
[2026-06-12 22:35:42,687.687 INFO    ] 2026-06-12 22:35:42
[2026-06-12 22:35:42,716.716 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 22:35:42,901.901 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 22:35:42,911.911 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 22:35:43,055.055 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 22:35:43,108.108 INFO    ] time= 12/06/2026 22:35:43
[2026-06-12 22:35:43,131.131 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 22:35:43,136.136 INFO    ] Checking for existing commands in stream...
[2026-06-12 22:35:43,203.203 INFO    ] No existing commands found in stream
[2026-06-12 22:35:48,218.218 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 22:35:48,221.221 INFO    ] Waiting 2.39 seconds before fallback handling...
[2026-06-12 22:35:51,090.090 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 22:35:51,092.092 INFO    ] Checking for system updates...
[2026-06-12 22:35:51,113.113 INFO    ] 200
[2026-06-12 22:35:51,114.114 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:35:51,148.148 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 22:35:51,150.150 INFO    ] No update needed
[2026-06-12 22:35:51,151.151 INFO    ] Checking for camera pi updates...
[2026-06-12 22:35:51,172.172 INFO    ] 200
[2026-06-12 22:35:51,173.173 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:35:51,198.198 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 22:35:51,248.248 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 22:35:51,250.250 INFO    ] No camera update needed
[2026-06-12 22:35:51,251.251 INFO    ] Script finished. Safe exiting...
[2026-06-12 22:35:51,252.252 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 22:35:51,255.255 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 22:35:51,258.258 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 22:35:53,296.296 INFO    ] ================================================
[2026-06-12 22:35:53,312.312 INFO    ] Launching Daemon at Fri Jun 12 22:35:53 IST 2026
[2026-06-12 22:35:53,439.439 INFO    ] ================================================
[2026-06-12 22:35:53,785.785 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 22:35:53
[2026-06-12 22:35:54,102.102 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 22:35:54,239.239 INFO    ] Initializing speech engine...
[2026-06-12 22:35:54,247.247 INFO    ] 2026-06-12 22:35:54
[2026-06-12 22:35:54,469.469 INFO    ] 2026-06-12 22:35:54
[2026-06-12 22:35:54,499.499 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 22:35:54,683.683 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 22:35:54,687.687 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 22:35:54,829.829 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 22:35:54,892.892 INFO    ] time= 12/06/2026 22:35:54
[2026-06-12 22:35:54,914.914 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 22:35:54,921.921 INFO    ] Checking for existing commands in stream...
[2026-06-12 22:35:54,988.988 INFO    ] No existing commands found in stream
[2026-06-12 22:36:00,002.002 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 22:36:00,005.005 INFO    ] Waiting 3.39 seconds before fallback handling...
[2026-06-12 22:36:03,758.758 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 22:36:03,760.760 INFO    ] Checking for system updates...
[2026-06-12 22:36:03,780.780 INFO    ] 200
[2026-06-12 22:36:03,782.782 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:36:03,815.815 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 22:36:03,816.816 INFO    ] No update needed
[2026-06-12 22:36:03,817.817 INFO    ] Checking for camera pi updates...
[2026-06-12 22:36:03,839.839 INFO    ] 200
[2026-06-12 22:36:03,840.840 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:36:03,863.863 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 22:36:03,917.917 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 22:36:03,918.918 INFO    ] No camera update needed
[2026-06-12 22:36:03,919.919 INFO    ] Script finished. Safe exiting...
[2026-06-12 22:36:03,921.921 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 22:36:03,924.924 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 22:36:03,926.926 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 22:36:05,964.964 INFO    ] ================================================
[2026-06-12 22:36:05,980.980 INFO    ] Launching Daemon at Fri Jun 12 22:36:05 IST 2026
[2026-06-12 22:36:05,990.990 INFO    ] ================================================
[2026-06-12 22:36:06,396.396 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 22:36:06
[2026-06-12 22:36:06,740.740 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 22:36:06,891.891 INFO    ] Initializing speech engine...
[2026-06-12 22:36:06,896.896 INFO    ] 2026-06-12 22:36:06
[2026-06-12 22:36:07,105.105 INFO    ] 2026-06-12 22:36:07
[2026-06-12 22:36:07,133.133 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 22:36:07,318.318 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 22:36:07,329.329 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 22:36:07,467.467 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 22:36:07,526.526 INFO    ] time= 12/06/2026 22:36:07
[2026-06-12 22:36:07,552.552 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 22:36:07,558.558 INFO    ] Checking for existing commands in stream...
[2026-06-12 22:36:07,625.625 INFO    ] No existing commands found in stream
[2026-06-12 22:36:12,648.648 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 22:36:12,652.652 INFO    ] Waiting 1.38 seconds before fallback handling...
[2026-06-12 22:36:14,425.425 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 22:36:14,426.426 INFO    ] Checking for system updates...
[2026-06-12 22:36:14,447.447 INFO    ] 200
[2026-06-12 22:36:14,448.448 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:36:14,480.480 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 22:36:14,482.482 INFO    ] No update needed
[2026-06-12 22:36:14,483.483 INFO    ] Checking for camera pi updates...
[2026-06-12 22:36:14,503.503 INFO    ] 200
[2026-06-12 22:36:14,505.505 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:36:14,529.529 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 22:36:14,571.571 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 22:36:14,572.572 INFO    ] No camera update needed
[2026-06-12 22:36:14,574.574 INFO    ] Script finished. Safe exiting...
[2026-06-12 22:36:14,575.575 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 22:36:14,578.578 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 22:36:14,580.580 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 22:36:16,618.618 INFO    ] ================================================
[2026-06-12 22:36:16,633.633 INFO    ] Launching Daemon at Fri Jun 12 22:36:16 IST 2026
[2026-06-12 22:36:16,644.644 INFO    ] ================================================
[2026-06-12 22:36:16,993.993 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 22:36:16
[2026-06-12 22:36:17,333.333 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 22:36:17,473.473 INFO    ] Initializing speech engine...
[2026-06-12 22:36:17,477.477 INFO    ] 2026-06-12 22:36:17
[2026-06-12 22:36:17,694.694 INFO    ] 2026-06-12 22:36:17
[2026-06-12 22:36:17,723.723 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 22:36:17,907.907 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 22:36:17,916.916 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 22:36:18,044.044 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 22:36:18,108.108 INFO    ] time= 12/06/2026 22:36:18
[2026-06-12 22:36:18,135.135 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 22:36:18,141.141 INFO    ] Checking for existing commands in stream...
[2026-06-12 22:36:18,231.231 INFO    ] No existing commands found in stream
[2026-06-12 22:36:23,245.245 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 22:36:23,248.248 INFO    ] Waiting 0.35 seconds before fallback handling...
[2026-06-12 22:36:23,989.989 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 22:36:23,991.991 INFO    ] Checking for system updates...
[2026-06-12 22:36:24,011.011 INFO    ] 200
[2026-06-12 22:36:24,013.013 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:36:24,047.047 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 22:36:24,048.048 INFO    ] No update needed
[2026-06-12 22:36:24,049.049 INFO    ] Checking for camera pi updates...
[2026-06-12 22:36:24,070.070 INFO    ] 200
[2026-06-12 22:36:24,071.071 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:36:24,096.096 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 22:36:24,138.138 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 22:36:24,139.139 INFO    ] No camera update needed
[2026-06-12 22:36:24,141.141 INFO    ] Script finished. Safe exiting...
[2026-06-12 22:36:24,142.142 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 22:36:24,145.145 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 22:36:24,148.148 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 22:36:26,185.185 INFO    ] ================================================
[2026-06-12 22:36:26,200.200 INFO    ] Launching Daemon at Fri Jun 12 22:36:26 IST 2026
[2026-06-12 22:36:26,211.211 INFO    ] ================================================
[2026-06-12 22:36:26,538.538 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 22:36:26
[2026-06-12 22:36:26,854.854 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 22:36:26,998.998 INFO    ] Initializing speech engine...
[2026-06-12 22:36:27,001.001 INFO    ] 2026-06-12 22:36:26
[2026-06-12 22:36:27,205.205 INFO    ] 2026-06-12 22:36:27
[2026-06-12 22:36:27,234.234 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 22:36:27,418.418 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 22:36:27,427.427 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 22:36:27,548.548 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 22:36:27,609.609 INFO    ] time= 12/06/2026 22:36:27
[2026-06-12 22:36:27,638.638 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 22:36:27,648.648 INFO    ] Checking for existing commands in stream...
[2026-06-12 22:36:27,743.743 INFO    ] No existing commands found in stream
[2026-06-12 22:36:32,752.752 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 22:36:32,755.755 INFO    ] Waiting 0.55 seconds before fallback handling...
[2026-06-12 22:36:33,649.649 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 22:36:33,650.650 INFO    ] Checking for system updates...
[2026-06-12 22:36:33,671.671 INFO    ] 200
[2026-06-12 22:36:33,672.672 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:36:33,702.702 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 22:36:33,703.703 INFO    ] No update needed
[2026-06-12 22:36:33,705.705 INFO    ] Checking for camera pi updates...
[2026-06-12 22:36:33,725.725 INFO    ] 200
[2026-06-12 22:36:33,727.727 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:36:33,751.751 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 22:36:33,816.816 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 22:36:33,818.818 INFO    ] No camera update needed
[2026-06-12 22:36:33,819.819 INFO    ] Script finished. Safe exiting...
[2026-06-12 22:36:33,820.820 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 22:36:33,823.823 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 22:36:33,826.826 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 22:36:35,864.864 INFO    ] ================================================
[2026-06-12 22:36:35,880.880 INFO    ] Launching Daemon at Fri Jun 12 22:36:35 IST 2026
[2026-06-12 22:36:35,890.890 INFO    ] ================================================
[2026-06-12 22:36:36,258.258 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 22:36:36
[2026-06-12 22:36:36,576.576 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 22:36:36,709.709 INFO    ] Initializing speech engine...
[2026-06-12 22:36:36,718.718 INFO    ] 2026-06-12 22:36:36
[2026-06-12 22:36:36,929.929 INFO    ] 2026-06-12 22:36:36
[2026-06-12 22:36:36,958.958 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 22:36:37,140.140 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 22:36:37,144.144 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 22:36:37,290.290 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 22:36:37,347.347 INFO    ] time= 12/06/2026 22:36:37
[2026-06-12 22:36:37,369.369 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 22:36:37,376.376 INFO    ] Checking for existing commands in stream...
[2026-06-12 22:36:37,442.442 INFO    ] No existing commands found in stream
[2026-06-12 22:36:42,456.456 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 22:36:42,459.459 INFO    ] Waiting 1.02 seconds before fallback handling...
[2026-06-12 22:36:43,830.830 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 22:36:43,831.831 INFO    ] Checking for system updates...
[2026-06-12 22:36:43,852.852 INFO    ] 200
[2026-06-12 22:36:43,854.854 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:36:43,885.885 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 22:36:43,887.887 INFO    ] No update needed
[2026-06-12 22:36:43,888.888 INFO    ] Checking for camera pi updates...
[2026-06-12 22:36:43,908.908 INFO    ] 200
[2026-06-12 22:36:43,910.910 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:36:43,938.938 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 22:36:43,984.984 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 22:36:43,986.986 INFO    ] No camera update needed
[2026-06-12 22:36:43,987.987 INFO    ] Script finished. Safe exiting...
[2026-06-12 22:36:43,988.988 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 22:36:43,992.992 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 22:36:43,994.994 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 22:36:46,032.032 INFO    ] ================================================
[2026-06-12 22:36:46,047.047 INFO    ] Launching Daemon at Fri Jun 12 22:36:46 IST 2026
[2026-06-12 22:36:46,058.058 INFO    ] ================================================
[2026-06-12 22:36:46,385.385 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 22:36:46
[2026-06-12 22:36:46,697.697 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 22:36:46,838.838 INFO    ] Initializing speech engine...
[2026-06-12 22:36:46,844.844 INFO    ] 2026-06-12 22:36:46
[2026-06-12 22:36:47,047.047 INFO    ] 2026-06-12 22:36:47
[2026-06-12 22:36:47,075.075 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 22:36:47,259.259 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 22:36:47,267.267 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 22:36:47,421.421 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 22:36:47,465.465 INFO    ] time= 12/06/2026 22:36:47
[2026-06-12 22:36:47,486.486 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 22:36:47,492.492 INFO    ] Checking for existing commands in stream...
[2026-06-12 22:36:47,557.557 INFO    ] No existing commands found in stream
[2026-06-12 22:36:52,568.568 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 22:36:52,571.571 INFO    ] Waiting 3.50 seconds before fallback handling...
[2026-06-12 22:36:56,460.460 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 22:36:56,462.462 INFO    ] Checking for system updates...
[2026-06-12 22:36:56,484.484 INFO    ] 200
[2026-06-12 22:36:56,485.485 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:36:56,520.520 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 22:36:56,522.522 INFO    ] No update needed
[2026-06-12 22:36:56,523.523 INFO    ] Checking for camera pi updates...
[2026-06-12 22:36:56,544.544 INFO    ] 200
[2026-06-12 22:36:56,545.545 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:36:56,572.572 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 22:36:56,713.713 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 22:36:56,715.715 INFO    ] No camera update needed
[2026-06-12 22:36:56,716.716 INFO    ] Script finished. Safe exiting...
[2026-06-12 22:36:56,718.718 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 22:36:56,721.721 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 22:36:56,724.724 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 22:36:58,764.764 INFO    ] ================================================
[2026-06-12 22:36:58,779.779 INFO    ] Launching Daemon at Fri Jun 12 22:36:58 IST 2026
[2026-06-12 22:36:58,790.790 INFO    ] ================================================
[2026-06-12 22:36:59,133.133 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 22:36:59
[2026-06-12 22:36:59,450.450 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 22:36:59,583.583 INFO    ] Initializing speech engine...
[2026-06-12 22:36:59,596.596 INFO    ] 2026-06-12 22:36:59
[2026-06-12 22:36:59,804.804 INFO    ] 2026-06-12 22:36:59
[2026-06-12 22:36:59,833.833 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 22:37:00,017.017 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 22:37:00,027.027 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 22:37:00,156.156 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 22:37:00,220.220 INFO    ] time= 12/06/2026 22:37:00
[2026-06-12 22:37:00,248.248 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 22:37:00,254.254 INFO    ] Checking for existing commands in stream...
[2026-06-12 22:37:00,321.321 INFO    ] No existing commands found in stream
[2026-06-12 22:37:05,330.330 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 22:37:05,333.333 INFO    ] Waiting 3.37 seconds before fallback handling...
[2026-06-12 22:37:09,461.461 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 22:37:09,462.462 INFO    ] Checking for system updates...
[2026-06-12 22:37:09,483.483 INFO    ] 200
[2026-06-12 22:37:09,485.485 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:37:09,516.516 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 22:37:09,517.517 INFO    ] No update needed
[2026-06-12 22:37:09,519.519 INFO    ] Checking for camera pi updates...
[2026-06-12 22:37:09,538.538 INFO    ] 200
[2026-06-12 22:37:09,539.539 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:37:09,562.562 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 22:37:09,611.611 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 22:37:09,613.613 INFO    ] No camera update needed
[2026-06-12 22:37:09,618.618 INFO    ] Script finished. Safe exiting...
[2026-06-12 22:37:09,619.619 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 22:37:09,622.622 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 22:37:09,625.625 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 22:37:11,663.663 INFO    ] ================================================
[2026-06-12 22:37:11,677.677 INFO    ] Launching Daemon at Fri Jun 12 22:37:11 IST 2026
[2026-06-12 22:37:11,688.688 INFO    ] ================================================
[2026-06-12 22:37:12,047.047 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 22:37:12
[2026-06-12 22:37:12,379.379 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 22:37:12,530.530 INFO    ] Initializing speech engine...
[2026-06-12 22:37:12,535.535 INFO    ] 2026-06-12 22:37:12
[2026-06-12 22:37:12,741.741 INFO    ] 2026-06-12 22:37:12
[2026-06-12 22:37:12,770.770 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 22:37:12,953.953 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 22:37:12,961.961 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 22:37:13,087.087 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 22:37:13,140.140 INFO    ] time= 12/06/2026 22:37:13
[2026-06-12 22:37:13,182.182 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 22:37:13,184.184 INFO    ] Checking for existing commands in stream...
[2026-06-12 22:37:13,279.279 INFO    ] No existing commands found in stream
[2026-06-12 22:37:18,293.293 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 22:37:18,296.296 INFO    ] Waiting 3.38 seconds before fallback handling...
[2026-06-12 22:37:22,071.071 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 22:37:22,073.073 INFO    ] Checking for system updates...
[2026-06-12 22:37:22,095.095 INFO    ] 200
[2026-06-12 22:37:22,096.096 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:37:22,127.127 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 22:37:22,129.129 INFO    ] No update needed
[2026-06-12 22:37:22,130.130 INFO    ] Checking for camera pi updates...
[2026-06-12 22:37:22,150.150 INFO    ] 200
[2026-06-12 22:37:22,152.152 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:37:22,174.174 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 22:37:22,216.216 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 22:37:22,217.217 INFO    ] No camera update needed
[2026-06-12 22:37:22,218.218 INFO    ] Script finished. Safe exiting...
[2026-06-12 22:37:22,219.219 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 22:37:22,222.222 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 22:37:22,225.225 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 22:37:24,263.263 INFO    ] ================================================
[2026-06-12 22:37:24,278.278 INFO    ] Launching Daemon at Fri Jun 12 22:37:24 IST 2026
[2026-06-12 22:37:24,289.289 INFO    ] ================================================
[2026-06-12 22:37:24,643.643 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 22:37:24
[2026-06-12 22:37:24,961.961 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 22:37:25,104.104 INFO    ] Initializing speech engine...
[2026-06-12 22:37:25,109.109 INFO    ] 2026-06-12 22:37:25
[2026-06-12 22:37:25,314.314 INFO    ] 2026-06-12 22:37:25
[2026-06-12 22:37:25,342.342 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 22:37:25,524.524 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 22:37:25,534.534 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 22:37:25,656.656 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 22:37:25,712.712 INFO    ] time= 12/06/2026 22:37:25
[2026-06-12 22:37:25,746.746 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 22:37:25,756.756 INFO    ] Checking for existing commands in stream...
[2026-06-12 22:37:25,827.827 INFO    ] No existing commands found in stream
[2026-06-12 22:37:30,836.836 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 22:37:30,838.838 INFO    ] Waiting 3.02 seconds before fallback handling...
[2026-06-12 22:37:34,231.231 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 22:37:34,232.232 INFO    ] Checking for system updates...
[2026-06-12 22:37:34,253.253 INFO    ] 200
[2026-06-12 22:37:34,254.254 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:37:34,286.286 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 22:37:34,288.288 INFO    ] No update needed
[2026-06-12 22:37:34,289.289 INFO    ] Checking for camera pi updates...
[2026-06-12 22:37:34,308.308 INFO    ] 200
[2026-06-12 22:37:34,310.310 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:37:34,335.335 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 22:37:34,380.380 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 22:37:34,381.381 INFO    ] No camera update needed
[2026-06-12 22:37:34,383.383 INFO    ] Script finished. Safe exiting...
[2026-06-12 22:37:34,384.384 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 22:37:34,387.387 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 22:37:34,390.390 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 22:37:36,429.429 INFO    ] ================================================
[2026-06-12 22:37:36,444.444 INFO    ] Launching Daemon at Fri Jun 12 22:37:36 IST 2026
[2026-06-12 22:37:36,454.454 INFO    ] ================================================
[2026-06-12 22:37:36,805.805 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 22:37:36
[2026-06-12 22:37:37,117.117 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 22:37:37,248.248 INFO    ] Initializing speech engine...
[2026-06-12 22:37:37,251.251 INFO    ] 2026-06-12 22:37:37
[2026-06-12 22:37:37,469.469 INFO    ] 2026-06-12 22:37:37
[2026-06-12 22:37:37,498.498 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 22:37:37,685.685 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 22:37:37,693.693 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 22:37:37,824.824 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 22:37:37,892.892 INFO    ] time= 12/06/2026 22:37:37
[2026-06-12 22:37:37,916.916 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 22:37:37,923.923 INFO    ] Checking for existing commands in stream...
[2026-06-12 22:37:37,991.991 INFO    ] No existing commands found in stream
[2026-06-12 22:37:43,000.000 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 22:37:43,003.003 INFO    ] Waiting 2.03 seconds before fallback handling...
[2026-06-12 22:37:45,381.381 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 22:37:45,382.382 INFO    ] Checking for system updates...
[2026-06-12 22:37:45,403.403 INFO    ] 200
[2026-06-12 22:37:45,405.405 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:37:45,434.434 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 22:37:45,436.436 INFO    ] No update needed
[2026-06-12 22:37:45,437.437 INFO    ] Checking for camera pi updates...
[2026-06-12 22:37:45,458.458 INFO    ] 200
[2026-06-12 22:37:45,460.460 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:37:45,484.484 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 22:37:45,538.538 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 22:37:45,539.539 INFO    ] No camera update needed
[2026-06-12 22:37:45,541.541 INFO    ] Script finished. Safe exiting...
[2026-06-12 22:37:45,542.542 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 22:37:45,545.545 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 22:37:45,547.547 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 22:37:47,588.588 INFO    ] ================================================
[2026-06-12 22:37:47,604.604 INFO    ] Launching Daemon at Fri Jun 12 22:37:47 IST 2026
[2026-06-12 22:37:47,615.615 INFO    ] ================================================
[2026-06-12 22:37:47,954.954 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 22:37:47
[2026-06-12 22:37:48,265.265 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 22:37:48,399.399 INFO    ] Initializing speech engine...
[2026-06-12 22:37:48,412.412 INFO    ] 2026-06-12 22:37:48
[2026-06-12 22:37:48,634.634 INFO    ] 2026-06-12 22:37:48
[2026-06-12 22:37:48,661.661 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 22:37:48,793.793 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 22:37:48,837.837 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 22:37:49,008.008 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 22:37:49,066.066 INFO    ] time= 12/06/2026 22:37:49
[2026-06-12 22:37:49,099.099 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 22:37:49,110.110 INFO    ] Checking for existing commands in stream...
[2026-06-12 22:37:49,236.236 INFO    ] No existing commands found in stream
[2026-06-12 22:37:54,247.247 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 22:37:54,250.250 INFO    ] Waiting 2.01 seconds before fallback handling...
[2026-06-12 22:37:56,650.650 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 22:37:56,652.652 INFO    ] Checking for system updates...
[2026-06-12 22:37:56,674.674 INFO    ] 200
[2026-06-12 22:37:56,675.675 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:37:56,707.707 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 22:37:56,708.708 INFO    ] No update needed
[2026-06-12 22:37:56,710.710 INFO    ] Checking for camera pi updates...
[2026-06-12 22:37:56,729.729 INFO    ] 200
[2026-06-12 22:37:56,730.730 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:37:56,754.754 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 22:37:56,801.801 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 22:37:56,802.802 INFO    ] No camera update needed
[2026-06-12 22:37:56,804.804 INFO    ] Script finished. Safe exiting...
[2026-06-12 22:37:56,805.805 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 22:37:56,808.808 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 22:37:56,811.811 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 22:37:58,848.848 INFO    ] ================================================
[2026-06-12 22:37:58,863.863 INFO    ] Launching Daemon at Fri Jun 12 22:37:58 IST 2026
[2026-06-12 22:37:58,874.874 INFO    ] ================================================
[2026-06-12 22:37:59,240.240 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 22:37:59
[2026-06-12 22:37:59,564.564 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 22:37:59,695.695 INFO    ] Initializing speech engine...
[2026-06-12 22:37:59,703.703 INFO    ] 2026-06-12 22:37:59
[2026-06-12 22:37:59,917.917 INFO    ] 2026-06-12 22:37:59
[2026-06-12 22:37:59,946.946 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 22:38:00,132.132 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 22:38:00,135.135 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 22:38:00,268.268 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 22:38:00,326.326 INFO    ] time= 12/06/2026 22:38:00
[2026-06-12 22:38:00,356.356 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 22:38:00,366.366 INFO    ] Checking for existing commands in stream...
[2026-06-12 22:38:00,439.439 INFO    ] No existing commands found in stream
[2026-06-12 22:38:05,448.448 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 22:38:05,451.451 INFO    ] Waiting 3.40 seconds before fallback handling...
[2026-06-12 22:38:09,219.219 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 22:38:09,220.220 INFO    ] Checking for system updates...
[2026-06-12 22:38:09,241.241 INFO    ] 200
[2026-06-12 22:38:09,243.243 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:38:09,272.272 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 22:38:09,274.274 INFO    ] No update needed
[2026-06-12 22:38:09,275.275 INFO    ] Checking for camera pi updates...
[2026-06-12 22:38:09,295.295 INFO    ] 200
[2026-06-12 22:38:09,296.296 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:38:09,321.321 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 22:38:09,367.367 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 22:38:09,368.368 INFO    ] No camera update needed
[2026-06-12 22:38:09,370.370 INFO    ] Script finished. Safe exiting...
[2026-06-12 22:38:09,371.371 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 22:38:09,374.374 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 22:38:09,377.377 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 22:38:11,415.415 INFO    ] ================================================
[2026-06-12 22:38:11,430.430 INFO    ] Launching Daemon at Fri Jun 12 22:38:11 IST 2026
[2026-06-12 22:38:11,441.441 INFO    ] ================================================
[2026-06-12 22:38:11,770.770 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 22:38:11
[2026-06-12 22:38:12,086.086 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 22:38:12,229.229 INFO    ] Initializing speech engine...
[2026-06-12 22:38:12,235.235 INFO    ] 2026-06-12 22:38:12
[2026-06-12 22:38:12,438.438 INFO    ] 2026-06-12 22:38:12
[2026-06-12 22:38:12,468.468 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 22:38:12,652.652 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 22:38:12,661.661 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 22:38:12,812.812 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 22:38:12,872.872 INFO    ] time= 12/06/2026 22:38:12
[2026-06-12 22:38:12,882.882 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 22:38:12,889.889 INFO    ] Checking for existing commands in stream...
[2026-06-12 22:38:12,956.956 INFO    ] No existing commands found in stream
[2026-06-12 22:38:17,970.970 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 22:38:17,973.973 INFO    ] Waiting 1.97 seconds before fallback handling...
[2026-06-12 22:38:20,301.301 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 22:38:20,302.302 INFO    ] Checking for system updates...
[2026-06-12 22:38:20,323.323 INFO    ] 200
[2026-06-12 22:38:20,324.324 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:38:20,354.354 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 22:38:20,355.355 INFO    ] No update needed
[2026-06-12 22:38:20,357.357 INFO    ] Checking for camera pi updates...
[2026-06-12 22:38:20,377.377 INFO    ] 200
[2026-06-12 22:38:20,378.378 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:38:20,403.403 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 22:38:20,446.446 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 22:38:20,448.448 INFO    ] No camera update needed
[2026-06-12 22:38:20,449.449 INFO    ] Script finished. Safe exiting...
[2026-06-12 22:38:20,451.451 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 22:38:20,454.454 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 22:38:20,457.457 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 22:38:22,495.495 INFO    ] ================================================
[2026-06-12 22:38:22,510.510 INFO    ] Launching Daemon at Fri Jun 12 22:38:22 IST 2026
[2026-06-12 22:38:22,520.520 INFO    ] ================================================
[2026-06-12 22:38:22,890.890 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 22:38:22
[2026-06-12 22:38:23,206.206 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 22:38:23,350.350 INFO    ] Initializing speech engine...
[2026-06-12 22:38:23,355.355 INFO    ] 2026-06-12 22:38:23
[2026-06-12 22:38:23,560.560 INFO    ] 2026-06-12 22:38:23
[2026-06-12 22:38:23,588.588 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 22:38:23,772.772 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 22:38:23,782.782 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 22:38:23,910.910 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 22:38:23,975.975 INFO    ] time= 12/06/2026 22:38:23
[2026-06-12 22:38:24,002.002 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 22:38:24,008.008 INFO    ] Checking for existing commands in stream...
[2026-06-12 22:38:24,099.099 INFO    ] No existing commands found in stream
[2026-06-12 22:38:29,112.112 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 22:38:29,115.115 INFO    ] Waiting 1.99 seconds before fallback handling...
[2026-06-12 22:38:31,480.480 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 22:38:31,482.482 INFO    ] Checking for system updates...
[2026-06-12 22:38:31,504.504 INFO    ] 200
[2026-06-12 22:38:31,505.505 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:38:31,538.538 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 22:38:31,540.540 INFO    ] No update needed
[2026-06-12 22:38:31,541.541 INFO    ] Checking for camera pi updates...
[2026-06-12 22:38:31,562.562 INFO    ] 200
[2026-06-12 22:38:31,563.563 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:38:31,588.588 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 22:38:31,616.616 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 22:38:31,618.618 INFO    ] No camera update needed
[2026-06-12 22:38:31,620.620 INFO    ] Script finished. Safe exiting...
[2026-06-12 22:38:31,623.623 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 22:38:31,628.628 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 22:38:31,631.631 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 22:38:33,663.663 INFO    ] ================================================
[2026-06-12 22:38:33,678.678 INFO    ] Launching Daemon at Fri Jun 12 22:38:33 IST 2026
[2026-06-12 22:38:33,689.689 INFO    ] ================================================
[2026-06-12 22:38:34,072.072 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 22:38:34
[2026-06-12 22:38:34,397.397 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 22:38:34,540.540 INFO    ] Initializing speech engine...
[2026-06-12 22:38:34,546.546 INFO    ] 2026-06-12 22:38:34
[2026-06-12 22:38:34,751.751 INFO    ] 2026-06-12 22:38:34
[2026-06-12 22:38:34,778.778 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 22:38:34,962.962 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 22:38:34,965.965 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 22:38:35,101.101 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 22:38:35,168.168 INFO    ] time= 12/06/2026 22:38:35
[2026-06-12 22:38:35,191.191 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 22:38:35,198.198 INFO    ] Checking for existing commands in stream...
[2026-06-12 22:38:35,264.264 INFO    ] No existing commands found in stream
[2026-06-12 22:38:40,277.277 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 22:38:40,279.279 INFO    ] Waiting 3.97 seconds before fallback handling...
[2026-06-12 22:38:44,610.610 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 22:38:44,611.611 INFO    ] Checking for system updates...
[2026-06-12 22:38:44,631.631 INFO    ] 200
[2026-06-12 22:38:44,633.633 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:38:44,662.662 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 22:38:44,664.664 INFO    ] No update needed
[2026-06-12 22:38:44,665.665 INFO    ] Checking for camera pi updates...
[2026-06-12 22:38:44,685.685 INFO    ] 200
[2026-06-12 22:38:44,687.687 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:38:44,711.711 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 22:38:44,812.812 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 22:38:44,814.814 INFO    ] No camera update needed
[2026-06-12 22:38:44,815.815 INFO    ] Script finished. Safe exiting...
[2026-06-12 22:38:44,816.816 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 22:38:44,819.819 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 22:38:44,822.822 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 22:38:46,861.861 INFO    ] ================================================
[2026-06-12 22:38:46,876.876 INFO    ] Launching Daemon at Fri Jun 12 22:38:46 IST 2026
[2026-06-12 22:38:46,887.887 INFO    ] ================================================
[2026-06-12 22:38:47,217.217 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 22:38:47
[2026-06-12 22:38:47,528.528 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 22:38:47,664.664 INFO    ] Initializing speech engine...
[2026-06-12 22:38:47,675.675 INFO    ] 2026-06-12 22:38:47
[2026-06-12 22:38:47,877.877 INFO    ] 2026-06-12 22:38:47
[2026-06-12 22:38:47,907.907 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 22:38:48,089.089 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 22:38:48,098.098 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 22:38:48,242.242 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 22:38:48,293.293 INFO    ] time= 12/06/2026 22:38:48
[2026-06-12 22:38:48,316.316 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 22:38:48,323.323 INFO    ] Checking for existing commands in stream...
[2026-06-12 22:38:48,388.388 INFO    ] No existing commands found in stream
[2026-06-12 22:38:53,397.397 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 22:38:53,400.400 INFO    ] Waiting 3.10 seconds before fallback handling...
[2026-06-12 22:38:56,856.856 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 22:38:56,858.858 INFO    ] Checking for system updates...
[2026-06-12 22:38:56,879.879 INFO    ] 200
[2026-06-12 22:38:56,880.880 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:38:56,912.912 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 22:38:56,914.914 INFO    ] No update needed
[2026-06-12 22:38:56,915.915 INFO    ] Checking for camera pi updates...
[2026-06-12 22:38:56,935.935 INFO    ] 200
[2026-06-12 22:38:56,937.937 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:38:56,961.961 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 22:38:57,014.014 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 22:38:57,016.016 INFO    ] No camera update needed
[2026-06-12 22:38:57,017.017 INFO    ] Script finished. Safe exiting...
[2026-06-12 22:38:57,019.019 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 22:38:57,022.022 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 22:38:57,025.025 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 22:38:59,063.063 INFO    ] ================================================
[2026-06-12 22:38:59,078.078 INFO    ] Launching Daemon at Fri Jun 12 22:38:59 IST 2026
[2026-06-12 22:38:59,089.089 INFO    ] ================================================
[2026-06-12 22:38:59,435.435 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 22:38:59
[2026-06-12 22:38:59,751.751 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 22:38:59,883.883 INFO    ] Initializing speech engine...
[2026-06-12 22:38:59,896.896 INFO    ] 2026-06-12 22:38:59
[2026-06-12 22:39:00,102.102 INFO    ] 2026-06-12 22:39:00
[2026-06-12 22:39:00,132.132 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 22:39:00,316.316 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 22:39:00,325.325 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 22:39:00,453.453 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 22:39:00,520.520 INFO    ] time= 12/06/2026 22:39:00
[2026-06-12 22:39:00,543.543 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 22:39:00,550.550 INFO    ] Checking for existing commands in stream...
[2026-06-12 22:39:00,639.639 INFO    ] No existing commands found in stream
[2026-06-12 22:39:05,648.648 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 22:39:05,651.651 INFO    ] Waiting 1.03 seconds before fallback handling...
[2026-06-12 22:39:07,905.905 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 22:39:07,908.908 INFO    ] Checking for system updates...
[2026-06-12 22:39:07,943.943 INFO    ] 200
[2026-06-12 22:39:07,946.946 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:39:08,004.004 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 22:39:08,006.006 INFO    ] No update needed
[2026-06-12 22:39:08,009.009 INFO    ] Checking for camera pi updates...
[2026-06-12 22:39:08,042.042 INFO    ] 200
[2026-06-12 22:39:08,043.043 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:39:08,066.066 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 22:39:08,126.126 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 22:39:08,127.127 INFO    ] No camera update needed
[2026-06-12 22:39:08,128.128 INFO    ] Script finished. Safe exiting...
[2026-06-12 22:39:08,130.130 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 22:39:08,133.133 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 22:39:08,135.135 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 22:39:10,173.173 INFO    ] ================================================
[2026-06-12 22:39:10,189.189 INFO    ] Launching Daemon at Fri Jun 12 22:39:10 IST 2026
[2026-06-12 22:39:10,200.200 INFO    ] ================================================
[2026-06-12 22:39:10,568.568 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 22:39:10
[2026-06-12 22:39:10,903.903 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 22:39:11,040.040 INFO    ] Initializing speech engine...
[2026-06-12 22:39:11,044.044 INFO    ] 2026-06-12 22:39:11
[2026-06-12 22:39:11,263.263 INFO    ] 2026-06-12 22:39:11
[2026-06-12 22:39:11,293.293 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 22:39:11,425.425 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 22:39:11,477.477 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 22:39:11,608.608 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 22:39:11,664.664 INFO    ] time= 12/06/2026 22:39:11
[2026-06-12 22:39:11,703.703 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 22:39:11,712.712 INFO    ] Checking for existing commands in stream...
[2026-06-12 22:39:11,779.779 INFO    ] No existing commands found in stream
[2026-06-12 22:39:16,794.794 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 22:39:16,797.797 INFO    ] Waiting 2.09 seconds before fallback handling...
[2026-06-12 22:39:19,246.246 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 22:39:19,248.248 INFO    ] Checking for system updates...
[2026-06-12 22:39:19,268.268 INFO    ] 200
[2026-06-12 22:39:19,270.270 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:39:19,302.302 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 22:39:19,303.303 INFO    ] No update needed
[2026-06-12 22:39:19,305.305 INFO    ] Checking for camera pi updates...
[2026-06-12 22:39:19,328.328 INFO    ] 200
[2026-06-12 22:39:19,329.329 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:39:19,355.355 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 22:39:19,424.424 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 22:39:19,426.426 INFO    ] No camera update needed
[2026-06-12 22:39:19,427.427 INFO    ] Script finished. Safe exiting...
[2026-06-12 22:39:19,428.428 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 22:39:19,432.432 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 22:39:19,435.435 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 22:39:21,473.473 INFO    ] ================================================
[2026-06-12 22:39:21,489.489 INFO    ] Launching Daemon at Fri Jun 12 22:39:21 IST 2026
[2026-06-12 22:39:21,500.500 INFO    ] ================================================
[2026-06-12 22:39:21,858.858 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 22:39:21
[2026-06-12 22:39:22,197.197 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 22:39:22,348.348 INFO    ] Initializing speech engine...
[2026-06-12 22:39:22,353.353 INFO    ] 2026-06-12 22:39:22
[2026-06-12 22:39:22,561.561 INFO    ] 2026-06-12 22:39:22
[2026-06-12 22:39:22,591.591 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 22:39:22,778.778 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 22:39:22,788.788 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 22:39:22,925.925 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 22:39:22,988.988 INFO    ] time= 12/06/2026 22:39:22
[2026-06-12 22:39:23,013.013 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 22:39:23,019.019 INFO    ] Checking for existing commands in stream...
[2026-06-12 22:39:23,087.087 INFO    ] No existing commands found in stream
[2026-06-12 22:39:28,101.101 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 22:39:28,104.104 INFO    ] Waiting 2.14 seconds before fallback handling...
[2026-06-12 22:39:30,649.649 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 22:39:30,651.651 INFO    ] Checking for system updates...
[2026-06-12 22:39:30,672.672 INFO    ] 200
[2026-06-12 22:39:30,673.673 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:39:30,706.706 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 22:39:30,707.707 INFO    ] No update needed
[2026-06-12 22:39:30,708.708 INFO    ] Checking for camera pi updates...
[2026-06-12 22:39:30,727.727 INFO    ] 200
[2026-06-12 22:39:30,728.728 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:39:30,757.757 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 22:39:30,800.800 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 22:39:30,801.801 INFO    ] No camera update needed
[2026-06-12 22:39:30,803.803 INFO    ] Script finished. Safe exiting...
[2026-06-12 22:39:30,804.804 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 22:39:30,807.807 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 22:39:30,810.810 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 22:39:32,844.844 INFO    ] ================================================
[2026-06-12 22:39:32,853.853 INFO    ] Launching Daemon at Fri Jun 12 22:39:32 IST 2026
[2026-06-12 22:39:32,860.860 INFO    ] ================================================
[2026-06-12 22:39:33,201.201 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 22:39:33
[2026-06-12 22:39:33,543.543 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 22:39:33,694.694 INFO    ] Initializing speech engine...
[2026-06-12 22:39:33,700.700 INFO    ] 2026-06-12 22:39:33
[2026-06-12 22:39:33,910.910 INFO    ] 2026-06-12 22:39:33
[2026-06-12 22:39:33,939.939 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 22:39:34,080.080 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 22:39:34,128.128 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 22:39:34,261.261 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 22:39:34,332.332 INFO    ] time= 12/06/2026 22:39:34
[2026-06-12 22:39:34,361.361 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 22:39:34,367.367 INFO    ] Checking for existing commands in stream...
[2026-06-12 22:39:34,434.434 INFO    ] No existing commands found in stream
[2026-06-12 22:39:39,444.444 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 22:39:39,454.454 INFO    ] Waiting 3.50 seconds before fallback handling...
[2026-06-12 22:39:43,317.317 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 22:39:43,318.318 INFO    ] Checking for system updates...
[2026-06-12 22:39:43,343.343 INFO    ] 200
[2026-06-12 22:39:43,344.344 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:39:43,374.374 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 22:39:43,376.376 INFO    ] No update needed
[2026-06-12 22:39:43,377.377 INFO    ] Checking for camera pi updates...
[2026-06-12 22:39:43,396.396 INFO    ] 200
[2026-06-12 22:39:43,398.398 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:39:43,421.421 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 22:39:43,472.472 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 22:39:43,474.474 INFO    ] No camera update needed
[2026-06-12 22:39:43,475.475 INFO    ] Script finished. Safe exiting...
[2026-06-12 22:39:43,476.476 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 22:39:43,479.479 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 22:39:43,482.482 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 22:39:45,520.520 INFO    ] ================================================
[2026-06-12 22:39:45,535.535 INFO    ] Launching Daemon at Fri Jun 12 22:39:45 IST 2026
[2026-06-12 22:39:45,546.546 INFO    ] ================================================
[2026-06-12 22:39:45,924.924 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 22:39:45
[2026-06-12 22:39:46,256.256 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 22:39:46,408.408 INFO    ] Initializing speech engine...
[2026-06-12 22:39:46,413.413 INFO    ] 2026-06-12 22:39:46
[2026-06-12 22:39:46,618.618 INFO    ] 2026-06-12 22:39:46
[2026-06-12 22:39:46,647.647 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 22:39:46,833.833 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 22:39:46,843.843 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 22:39:46,982.982 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 22:39:47,040.040 INFO    ] time= 12/06/2026 22:39:46
[2026-06-12 22:39:47,061.061 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 22:39:47,068.068 INFO    ] Checking for existing commands in stream...
[2026-06-12 22:39:47,134.134 INFO    ] No existing commands found in stream
[2026-06-12 22:39:52,153.153 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 22:39:52,156.156 INFO    ] Waiting 0.92 seconds before fallback handling...
[2026-06-12 22:39:53,440.440 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 22:39:53,441.441 INFO    ] Checking for system updates...
[2026-06-12 22:39:53,462.462 INFO    ] 200
[2026-06-12 22:39:53,464.464 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:39:53,495.495 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 22:39:53,497.497 INFO    ] No update needed
[2026-06-12 22:39:53,498.498 INFO    ] Checking for camera pi updates...
[2026-06-12 22:39:53,517.517 INFO    ] 200
[2026-06-12 22:39:53,519.519 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:39:53,542.542 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 22:39:53,590.590 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 22:39:53,592.592 INFO    ] No camera update needed
[2026-06-12 22:39:53,593.593 INFO    ] Script finished. Safe exiting...
[2026-06-12 22:39:53,595.595 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 22:39:53,598.598 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 22:39:53,601.601 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 22:39:55,641.641 INFO    ] ================================================
[2026-06-12 22:39:55,657.657 INFO    ] Launching Daemon at Fri Jun 12 22:39:55 IST 2026
[2026-06-12 22:39:55,668.668 INFO    ] ================================================
[2026-06-12 22:39:56,031.031 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 22:39:56
[2026-06-12 22:39:56,347.347 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 22:39:56,492.492 INFO    ] Initializing speech engine...
[2026-06-12 22:39:56,496.496 INFO    ] 2026-06-12 22:39:56
[2026-06-12 22:39:56,701.701 INFO    ] 2026-06-12 22:39:56
[2026-06-12 22:39:56,728.728 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 22:39:56,912.912 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 22:39:56,922.922 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 22:39:57,047.047 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 22:39:57,109.109 INFO    ] time= 12/06/2026 22:39:57
[2026-06-12 22:39:57,141.141 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 22:39:57,147.147 INFO    ] Checking for existing commands in stream...
[2026-06-12 22:39:57,214.214 INFO    ] No existing commands found in stream
[2026-06-12 22:40:02,228.228 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 22:40:02,231.231 INFO    ] Waiting 3.36 seconds before fallback handling...
[2026-06-12 22:40:09,347.347 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 22:40:09,349.349 INFO    ] Checking for system updates...
[2026-06-12 22:40:09,389.389 INFO    ] 200
[2026-06-12 22:40:09,391.391 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:40:09,444.444 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 22:40:09,446.446 INFO    ] No update needed
[2026-06-12 22:40:09,448.448 INFO    ] Checking for camera pi updates...
[2026-06-12 22:40:09,485.485 INFO    ] 200
[2026-06-12 22:40:09,488.488 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:40:09,528.528 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 22:40:09,600.600 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 22:40:09,602.602 INFO    ] No camera update needed
[2026-06-12 22:40:09,605.605 INFO    ] Script finished. Safe exiting...
[2026-06-12 22:40:09,607.607 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 22:40:09,613.613 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 22:40:09,618.618 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 22:40:11,660.660 INFO    ] ================================================
[2026-06-12 22:40:11,675.675 INFO    ] Launching Daemon at Fri Jun 12 22:40:11 IST 2026
[2026-06-12 22:40:11,686.686 INFO    ] ================================================
[2026-06-12 22:40:12,026.026 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 22:40:12
[2026-06-12 22:40:12,339.339 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 22:40:12,468.468 INFO    ] Initializing speech engine...
[2026-06-12 22:40:12,473.473 INFO    ] 2026-06-12 22:40:12
[2026-06-12 22:40:12,689.689 INFO    ] 2026-06-12 22:40:12
[2026-06-12 22:40:12,718.718 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 22:40:12,903.903 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 22:40:12,907.907 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 22:40:13,043.043 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 22:40:13,102.102 INFO    ] time= 12/06/2026 22:40:13
[2026-06-12 22:40:13,135.135 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 22:40:13,142.142 INFO    ] Checking for existing commands in stream...
[2026-06-12 22:40:13,209.209 INFO    ] No existing commands found in stream
[2026-06-12 22:40:18,223.223 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 22:40:18,226.226 INFO    ] Waiting 0.75 seconds before fallback handling...
[2026-06-12 22:40:19,349.349 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 22:40:19,350.350 INFO    ] Checking for system updates...
[2026-06-12 22:40:19,371.371 INFO    ] 200
[2026-06-12 22:40:19,372.372 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:40:19,404.404 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 22:40:19,405.405 INFO    ] No update needed
[2026-06-12 22:40:19,406.406 INFO    ] Checking for camera pi updates...
[2026-06-12 22:40:19,426.426 INFO    ] 200
[2026-06-12 22:40:19,428.428 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:40:19,452.452 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 22:40:19,494.494 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 22:40:19,495.495 INFO    ] No camera update needed
[2026-06-12 22:40:19,496.496 INFO    ] Script finished. Safe exiting...
[2026-06-12 22:40:19,498.498 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 22:40:19,501.501 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 22:40:19,503.503 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 22:40:21,542.542 INFO    ] ================================================
[2026-06-12 22:40:21,558.558 INFO    ] Launching Daemon at Fri Jun 12 22:40:21 IST 2026
[2026-06-12 22:40:21,569.569 INFO    ] ================================================
[2026-06-12 22:40:21,920.920 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 22:40:21
[2026-06-12 22:40:22,254.254 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 22:40:22,408.408 INFO    ] Initializing speech engine...
[2026-06-12 22:40:22,415.415 INFO    ] 2026-06-12 22:40:22
[2026-06-12 22:40:22,616.616 INFO    ] 2026-06-12 22:40:22
[2026-06-12 22:40:22,645.645 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 22:40:22,829.829 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 22:40:22,839.839 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 22:40:22,972.972 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 22:40:23,039.039 INFO    ] time= 12/06/2026 22:40:22
[2026-06-12 22:40:23,063.063 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 22:40:23,070.070 INFO    ] Checking for existing commands in stream...
[2026-06-12 22:40:23,160.160 INFO    ] No existing commands found in stream
[2026-06-12 22:40:28,169.169 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 22:40:28,173.173 INFO    ] Waiting 1.73 seconds before fallback handling...
[2026-06-12 22:40:30,310.310 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 22:40:30,312.312 INFO    ] Checking for system updates...
[2026-06-12 22:40:30,333.333 INFO    ] 200
[2026-06-12 22:40:30,334.334 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:40:30,366.366 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 22:40:30,368.368 INFO    ] No update needed
[2026-06-12 22:40:30,369.369 INFO    ] Checking for camera pi updates...
[2026-06-12 22:40:30,388.388 INFO    ] 200
[2026-06-12 22:40:30,390.390 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:40:30,414.414 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 22:40:30,454.454 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 22:40:30,455.455 INFO    ] No camera update needed
[2026-06-12 22:40:30,456.456 INFO    ] Script finished. Safe exiting...
[2026-06-12 22:40:30,458.458 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 22:40:30,461.461 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 22:40:30,463.463 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 22:40:32,494.494 INFO    ] ================================================
[2026-06-12 22:40:32,504.504 INFO    ] Launching Daemon at Fri Jun 12 22:40:32 IST 2026
[2026-06-12 22:40:32,511.511 INFO    ] ================================================
[2026-06-12 22:40:32,845.845 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 22:40:32
[2026-06-12 22:40:33,174.174 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 22:40:33,314.314 INFO    ] Initializing speech engine...
[2026-06-12 22:40:33,321.321 INFO    ] 2026-06-12 22:40:33
[2026-06-12 22:40:33,528.528 INFO    ] 2026-06-12 22:40:33
[2026-06-12 22:40:33,557.557 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 22:40:33,743.743 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 22:40:33,752.752 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 22:40:33,879.879 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 22:40:33,947.947 INFO    ] time= 12/06/2026 22:40:33
[2026-06-12 22:40:33,972.972 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 22:40:33,978.978 INFO    ] Checking for existing commands in stream...
[2026-06-12 22:40:34,044.044 INFO    ] No existing commands found in stream
[2026-06-12 22:40:39,058.058 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 22:40:39,062.062 INFO    ] Waiting 3.61 seconds before fallback handling...
[2026-06-12 22:40:43,068.068 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 22:40:43,070.070 INFO    ] Checking for system updates...
[2026-06-12 22:40:43,092.092 INFO    ] 200
[2026-06-12 22:40:43,093.093 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:40:43,125.125 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 22:40:43,126.126 INFO    ] No update needed
[2026-06-12 22:40:43,127.127 INFO    ] Checking for camera pi updates...
[2026-06-12 22:40:43,147.147 INFO    ] 200
[2026-06-12 22:40:43,148.148 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:40:43,172.172 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 22:40:43,227.227 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 22:40:43,228.228 INFO    ] No camera update needed
[2026-06-12 22:40:43,230.230 INFO    ] Script finished. Safe exiting...
[2026-06-12 22:40:43,231.231 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 22:40:43,234.234 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 22:40:43,237.237 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 22:40:45,274.274 INFO    ] ================================================
[2026-06-12 22:40:45,289.289 INFO    ] Launching Daemon at Fri Jun 12 22:40:45 IST 2026
[2026-06-12 22:40:45,299.299 INFO    ] ================================================
[2026-06-12 22:40:45,666.666 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 22:40:45
[2026-06-12 22:40:45,986.986 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 22:40:46,131.131 INFO    ] Initializing speech engine...
[2026-06-12 22:40:46,136.136 INFO    ] 2026-06-12 22:40:46
[2026-06-12 22:40:46,341.341 INFO    ] 2026-06-12 22:40:46
[2026-06-12 22:40:46,369.369 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 22:40:46,501.501 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 22:40:46,554.554 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 22:40:46,685.685 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 22:40:46,740.740 INFO    ] time= 12/06/2026 22:40:46
[2026-06-12 22:40:46,780.780 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 22:40:46,785.785 INFO    ] Checking for existing commands in stream...
[2026-06-12 22:40:46,855.855 INFO    ] No existing commands found in stream
[2026-06-12 22:40:51,862.862 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 22:40:51,865.865 INFO    ] Waiting 0.04 seconds before fallback handling...
[2026-06-12 22:40:52,271.271 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 22:40:52,272.272 INFO    ] Checking for system updates...
[2026-06-12 22:40:52,294.294 INFO    ] 200
[2026-06-12 22:40:52,295.295 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:40:52,328.328 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 22:40:52,329.329 INFO    ] No update needed
[2026-06-12 22:40:52,331.331 INFO    ] Checking for camera pi updates...
[2026-06-12 22:40:52,350.350 INFO    ] 200
[2026-06-12 22:40:52,352.352 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:40:52,376.376 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 22:40:52,425.425 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 22:40:52,427.427 INFO    ] No camera update needed
[2026-06-12 22:40:52,428.428 INFO    ] Script finished. Safe exiting...
[2026-06-12 22:40:52,430.430 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 22:40:52,433.433 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 22:40:52,436.436 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 22:40:54,474.474 INFO    ] ================================================
[2026-06-12 22:40:54,489.489 INFO    ] Launching Daemon at Fri Jun 12 22:40:54 IST 2026
[2026-06-12 22:40:54,500.500 INFO    ] ================================================
[2026-06-12 22:40:54,860.860 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 22:40:54
[2026-06-12 22:40:55,181.181 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 22:40:55,312.312 INFO    ] Initializing speech engine...
[2026-06-12 22:40:55,319.319 INFO    ] 2026-06-12 22:40:55
[2026-06-12 22:40:55,531.531 INFO    ] 2026-06-12 22:40:55
[2026-06-12 22:40:55,561.561 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 22:40:55,745.745 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 22:40:55,755.755 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 22:40:55,895.895 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 22:40:55,952.952 INFO    ] time= 12/06/2026 22:40:55
[2026-06-12 22:40:55,975.975 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 22:40:55,982.982 INFO    ] Checking for existing commands in stream...
[2026-06-12 22:40:56,072.072 INFO    ] No existing commands found in stream
[2026-06-12 22:41:01,086.086 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 22:41:01,090.090 INFO    ] Waiting 3.30 seconds before fallback handling...
[2026-06-12 22:41:04,770.770 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 22:41:04,771.771 INFO    ] Checking for system updates...
[2026-06-12 22:41:04,792.792 INFO    ] 200
[2026-06-12 22:41:04,794.794 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:41:04,824.824 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 22:41:04,826.826 INFO    ] No update needed
[2026-06-12 22:41:04,827.827 INFO    ] Checking for camera pi updates...
[2026-06-12 22:41:04,848.848 INFO    ] 200
[2026-06-12 22:41:04,849.849 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:41:04,873.873 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 22:41:05,013.013 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 22:41:05,014.014 INFO    ] No camera update needed
[2026-06-12 22:41:05,015.015 INFO    ] Script finished. Safe exiting...
[2026-06-12 22:41:05,017.017 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 22:41:05,020.020 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 22:41:05,023.023 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 22:41:07,063.063 INFO    ] ================================================
[2026-06-12 22:41:07,080.080 INFO    ] Launching Daemon at Fri Jun 12 22:41:07 IST 2026
[2026-06-12 22:41:07,090.090 INFO    ] ================================================
[2026-06-12 22:41:07,449.449 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 22:41:07
[2026-06-12 22:41:07,764.764 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 22:41:07,907.907 INFO    ] Initializing speech engine...
[2026-06-12 22:41:07,913.913 INFO    ] 2026-06-12 22:41:07
[2026-06-12 22:41:08,116.116 INFO    ] 2026-06-12 22:41:08
[2026-06-12 22:41:08,144.144 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 22:41:08,329.329 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 22:41:08,332.332 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 22:41:08,468.468 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 22:41:08,535.535 INFO    ] time= 12/06/2026 22:41:08
[2026-06-12 22:41:08,559.559 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 22:41:08,566.566 INFO    ] Checking for existing commands in stream...
[2026-06-12 22:41:08,632.632 INFO    ] No existing commands found in stream
[2026-06-12 22:41:13,641.641 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 22:41:13,644.644 INFO    ] Waiting 2.42 seconds before fallback handling...
[2026-06-12 22:41:16,440.440 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 22:41:16,442.442 INFO    ] Checking for system updates...
[2026-06-12 22:41:16,464.464 INFO    ] 200
[2026-06-12 22:41:16,465.465 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:41:16,497.497 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 22:41:16,499.499 INFO    ] No update needed
[2026-06-12 22:41:16,501.501 INFO    ] Checking for camera pi updates...
[2026-06-12 22:41:16,521.521 INFO    ] 200
[2026-06-12 22:41:16,522.522 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:41:16,547.547 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 22:41:16,591.591 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 22:41:16,593.593 INFO    ] No camera update needed
[2026-06-12 22:41:16,594.594 INFO    ] Script finished. Safe exiting...
[2026-06-12 22:41:16,596.596 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 22:41:16,599.599 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 22:41:16,602.602 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 22:41:18,640.640 INFO    ] ================================================
[2026-06-12 22:41:18,662.662 INFO    ] Launching Daemon at Fri Jun 12 22:41:18 IST 2026
[2026-06-12 22:41:18,673.673 INFO    ] ================================================
[2026-06-12 22:41:19,060.060 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 22:41:19
[2026-06-12 22:41:19,394.394 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 22:41:19,543.543 INFO    ] Initializing speech engine...
[2026-06-12 22:41:19,548.548 INFO    ] 2026-06-12 22:41:19
[2026-06-12 22:41:19,755.755 INFO    ] 2026-06-12 22:41:19
[2026-06-12 22:41:19,784.784 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 22:41:19,968.968 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 22:41:19,978.978 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 22:41:20,123.123 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 22:41:20,176.176 INFO    ] time= 12/06/2026 22:41:20
[2026-06-12 22:41:20,199.199 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 22:41:20,205.205 INFO    ] Checking for existing commands in stream...
[2026-06-12 22:41:20,272.272 INFO    ] No existing commands found in stream
[2026-06-12 22:41:25,286.286 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 22:41:25,289.289 INFO    ] Waiting 1.73 seconds before fallback handling...
[2026-06-12 22:41:27,411.411 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 22:41:27,413.413 INFO    ] Checking for system updates...
[2026-06-12 22:41:27,433.433 INFO    ] 200
[2026-06-12 22:41:27,434.434 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:41:27,465.465 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 22:41:27,466.466 INFO    ] No update needed
[2026-06-12 22:41:27,468.468 INFO    ] Checking for camera pi updates...
[2026-06-12 22:41:27,487.487 INFO    ] 200
[2026-06-12 22:41:27,489.489 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:41:27,514.514 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 22:41:27,558.558 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 22:41:27,559.559 INFO    ] No camera update needed
[2026-06-12 22:41:27,561.561 INFO    ] Script finished. Safe exiting...
[2026-06-12 22:41:27,562.562 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 22:41:27,565.565 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 22:41:27,568.568 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 22:41:29,607.607 INFO    ] ================================================
[2026-06-12 22:41:29,622.622 INFO    ] Launching Daemon at Fri Jun 12 22:41:29 IST 2026
[2026-06-12 22:41:29,633.633 INFO    ] ================================================
[2026-06-12 22:41:30,019.019 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 22:41:30
[2026-06-12 22:41:30,354.354 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 22:41:30,507.507 INFO    ] Initializing speech engine...
[2026-06-12 22:41:30,511.511 INFO    ] 2026-06-12 22:41:30
[2026-06-12 22:41:30,717.717 INFO    ] 2026-06-12 22:41:30
[2026-06-12 22:41:30,746.746 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 22:41:30,930.930 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 22:41:30,940.940 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 22:41:31,096.096 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 22:41:31,140.140 INFO    ] time= 12/06/2026 22:41:31
[2026-06-12 22:41:31,161.161 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 22:41:31,168.168 INFO    ] Checking for existing commands in stream...
[2026-06-12 22:41:31,234.234 INFO    ] No existing commands found in stream
[2026-06-12 22:41:36,259.259 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 22:41:36,262.262 INFO    ] Waiting 0.39 seconds before fallback handling...
[2026-06-12 22:41:37,040.040 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 22:41:37,041.041 INFO    ] Checking for system updates...
[2026-06-12 22:41:37,062.062 INFO    ] 200
[2026-06-12 22:41:37,064.064 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:41:37,094.094 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 22:41:37,096.096 INFO    ] No update needed
[2026-06-12 22:41:37,097.097 INFO    ] Checking for camera pi updates...
[2026-06-12 22:41:37,117.117 INFO    ] 200
[2026-06-12 22:41:37,118.118 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:41:37,142.142 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 22:41:37,192.192 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 22:41:37,193.193 INFO    ] No camera update needed
[2026-06-12 22:41:37,195.195 INFO    ] Script finished. Safe exiting...
[2026-06-12 22:41:37,196.196 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 22:41:37,199.199 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 22:41:37,202.202 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 22:41:39,240.240 INFO    ] ================================================
[2026-06-12 22:41:39,257.257 INFO    ] Launching Daemon at Fri Jun 12 22:41:39 IST 2026
[2026-06-12 22:41:39,268.268 INFO    ] ================================================
[2026-06-12 22:41:39,594.594 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 22:41:39
[2026-06-12 22:41:39,907.907 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 22:41:40,041.041 INFO    ] Initializing speech engine...
[2026-06-12 22:41:40,044.044 INFO    ] 2026-06-12 22:41:40
[2026-06-12 22:41:40,247.247 INFO    ] 2026-06-12 22:41:40
[2026-06-12 22:41:40,282.282 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 22:41:40,475.475 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 22:41:40,508.508 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 22:41:40,649.649 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 22:41:40,711.711 INFO    ] time= 12/06/2026 22:41:40
[2026-06-12 22:41:40,739.739 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 22:41:40,757.757 INFO    ] Checking for existing commands in stream...
[2026-06-12 22:41:40,845.845 INFO    ] No existing commands found in stream
[2026-06-12 22:41:45,854.854 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 22:41:45,857.857 INFO    ] Waiting 3.86 seconds before fallback handling...
[2026-06-12 22:41:50,097.097 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 22:41:50,099.099 INFO    ] Checking for system updates...
[2026-06-12 22:41:50,121.121 INFO    ] 200
[2026-06-12 22:41:50,122.122 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:41:50,155.155 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 22:41:50,156.156 INFO    ] No update needed
[2026-06-12 22:41:50,157.157 INFO    ] Checking for camera pi updates...
[2026-06-12 22:41:50,176.176 INFO    ] 200
[2026-06-12 22:41:50,178.178 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:41:50,201.201 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 22:41:50,238.238 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 22:41:50,240.240 INFO    ] No camera update needed
[2026-06-12 22:41:50,241.241 INFO    ] Script finished. Safe exiting...
[2026-06-12 22:41:50,242.242 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 22:41:50,245.245 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 22:41:50,248.248 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 22:41:52,290.290 INFO    ] ================================================
[2026-06-12 22:41:52,304.304 INFO    ] Launching Daemon at Fri Jun 12 22:41:52 IST 2026
[2026-06-12 22:41:52,311.311 INFO    ] ================================================
[2026-06-12 22:41:52,636.636 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 22:41:52
[2026-06-12 22:41:52,980.980 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 22:41:53,136.136 INFO    ] Initializing speech engine...
[2026-06-12 22:41:53,141.141 INFO    ] 2026-06-12 22:41:53
[2026-06-12 22:41:53,344.344 INFO    ] 2026-06-12 22:41:53
[2026-06-12 22:41:53,378.378 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 22:41:53,535.535 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 22:41:53,584.584 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 22:41:53,747.747 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 22:41:53,799.799 INFO    ] time= 12/06/2026 22:41:53
[2026-06-12 22:41:53,832.832 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 22:41:53,856.856 INFO    ] Checking for existing commands in stream...
[2026-06-12 22:41:53,933.933 INFO    ] No existing commands found in stream
[2026-06-12 22:41:58,944.944 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 22:41:58,946.946 INFO    ] Waiting 3.79 seconds before fallback handling...
[2026-06-12 22:42:03,062.062 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 22:42:03,063.063 INFO    ] Checking for system updates...
[2026-06-12 22:42:03,084.084 INFO    ] 200
[2026-06-12 22:42:03,085.085 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:42:03,127.127 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 22:42:03,130.130 INFO    ] No update needed
[2026-06-12 22:42:03,132.132 INFO    ] Checking for camera pi updates...
[2026-06-12 22:42:03,165.165 INFO    ] 200
[2026-06-12 22:42:03,168.168 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:42:03,212.212 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 22:42:03,248.248 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 22:42:03,251.251 INFO    ] No camera update needed
[2026-06-12 22:42:03,253.253 INFO    ] Script finished. Safe exiting...
[2026-06-12 22:42:03,256.256 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 22:42:03,261.261 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 22:42:03,266.266 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 22:42:05,306.306 INFO    ] ================================================
[2026-06-12 22:42:05,322.322 INFO    ] Launching Daemon at Fri Jun 12 22:42:05 IST 2026
[2026-06-12 22:42:05,333.333 INFO    ] ================================================
[2026-06-12 22:42:05,699.699 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 22:42:05
[2026-06-12 22:42:06,033.033 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 22:42:06,165.165 INFO    ] Initializing speech engine...
[2026-06-12 22:42:06,173.173 INFO    ] 2026-06-12 22:42:06
[2026-06-12 22:42:06,390.390 INFO    ] 2026-06-12 22:42:06
[2026-06-12 22:42:06,419.419 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 22:42:06,553.553 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 22:42:06,607.607 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 22:42:06,746.746 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 22:42:06,799.799 INFO    ] time= 12/06/2026 22:42:06
[2026-06-12 22:42:06,830.830 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 22:42:06,840.840 INFO    ] Checking for existing commands in stream...
[2026-06-12 22:42:06,912.912 INFO    ] No existing commands found in stream
[2026-06-12 22:42:11,921.921 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 22:42:11,924.924 INFO    ] Waiting 2.10 seconds before fallback handling...
[2026-06-12 22:42:14,378.378 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 22:42:14,380.380 INFO    ] Checking for system updates...
[2026-06-12 22:42:14,400.400 INFO    ] 200
[2026-06-12 22:42:14,401.401 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:42:14,431.431 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 22:42:14,432.432 INFO    ] No update needed
[2026-06-12 22:42:14,433.433 INFO    ] Checking for camera pi updates...
[2026-06-12 22:42:14,452.452 INFO    ] 200
[2026-06-12 22:42:14,453.453 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:42:14,478.478 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 22:42:14,519.519 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 22:42:14,521.521 INFO    ] No camera update needed
[2026-06-12 22:42:14,522.522 INFO    ] Script finished. Safe exiting...
[2026-06-12 22:42:14,523.523 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 22:42:14,526.526 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 22:42:14,529.529 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 22:42:16,568.568 INFO    ] ================================================
[2026-06-12 22:42:16,583.583 INFO    ] Launching Daemon at Fri Jun 12 22:42:16 IST 2026
[2026-06-12 22:42:16,594.594 INFO    ] ================================================
[2026-06-12 22:42:16,917.917 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 22:42:16
[2026-06-12 22:42:17,230.230 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 22:42:17,358.358 INFO    ] Initializing speech engine...
[2026-06-12 22:42:17,367.367 INFO    ] 2026-06-12 22:42:17
[2026-06-12 22:42:17,577.577 INFO    ] 2026-06-12 22:42:17
[2026-06-12 22:42:17,606.606 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 22:42:17,743.743 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 22:42:17,791.791 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 22:42:17,922.922 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 22:42:17,978.978 INFO    ] time= 12/06/2026 22:42:17
[2026-06-12 22:42:18,012.012 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 22:42:18,022.022 INFO    ] Checking for existing commands in stream...
[2026-06-12 22:42:18,093.093 INFO    ] No existing commands found in stream
[2026-06-12 22:42:23,102.102 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 22:42:23,105.105 INFO    ] Waiting 1.43 seconds before fallback handling...
[2026-06-12 22:42:24,932.932 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 22:42:24,934.934 INFO    ] Checking for system updates...
[2026-06-12 22:42:24,954.954 INFO    ] 200
[2026-06-12 22:42:24,956.956 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:42:24,986.986 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 22:42:24,988.988 INFO    ] No update needed
[2026-06-12 22:42:24,989.989 INFO    ] Checking for camera pi updates...
[2026-06-12 22:42:25,011.011 INFO    ] 200
[2026-06-12 22:42:25,012.012 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:42:25,036.036 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 22:42:25,086.086 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 22:42:25,087.087 INFO    ] No camera update needed
[2026-06-12 22:42:25,089.089 INFO    ] Script finished. Safe exiting...
[2026-06-12 22:42:25,090.090 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 22:42:25,094.094 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 22:42:25,097.097 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 22:42:27,136.136 INFO    ] ================================================
[2026-06-12 22:42:27,152.152 INFO    ] Launching Daemon at Fri Jun 12 22:42:27 IST 2026
[2026-06-12 22:42:27,164.164 INFO    ] ================================================
[2026-06-12 22:42:27,523.523 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 22:42:27
[2026-06-12 22:42:27,835.835 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 22:42:27,978.978 INFO    ] Initializing speech engine...
[2026-06-12 22:42:27,984.984 INFO    ] 2026-06-12 22:42:27
[2026-06-12 22:42:28,184.184 INFO    ] 2026-06-12 22:42:28
[2026-06-12 22:42:28,214.214 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 22:42:28,398.398 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 22:42:28,407.407 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 22:42:28,529.529 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 22:42:28,585.585 INFO    ] time= 12/06/2026 22:42:28
[2026-06-12 22:42:28,625.625 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 22:42:28,630.630 INFO    ] Checking for existing commands in stream...
[2026-06-12 22:42:28,726.726 INFO    ] No existing commands found in stream
[2026-06-12 22:42:33,734.734 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 22:42:33,737.737 INFO    ] Waiting 1.60 seconds before fallback handling...
[2026-06-12 22:42:35,711.711 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 22:42:35,713.713 INFO    ] Checking for system updates...
[2026-06-12 22:42:35,733.733 INFO    ] 200
[2026-06-12 22:42:35,734.734 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:42:35,764.764 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 22:42:35,765.765 INFO    ] No update needed
[2026-06-12 22:42:35,767.767 INFO    ] Checking for camera pi updates...
[2026-06-12 22:42:35,786.786 INFO    ] 200
[2026-06-12 22:42:35,787.787 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:42:35,810.810 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 22:42:35,849.849 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 22:42:35,851.851 INFO    ] No camera update needed
[2026-06-12 22:42:35,852.852 INFO    ] Script finished. Safe exiting...
[2026-06-12 22:42:35,853.853 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 22:42:35,856.856 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 22:42:35,859.859 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 22:42:37,896.896 INFO    ] ================================================
[2026-06-12 22:42:37,913.913 INFO    ] Launching Daemon at Fri Jun 12 22:42:37 IST 2026
[2026-06-12 22:42:37,924.924 INFO    ] ================================================
[2026-06-12 22:42:38,274.274 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 22:42:38
[2026-06-12 22:42:38,585.585 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 22:42:38,715.715 INFO    ] Initializing speech engine...
[2026-06-12 22:42:38,723.723 INFO    ] 2026-06-12 22:42:38
[2026-06-12 22:42:38,934.934 INFO    ] 2026-06-12 22:42:38
[2026-06-12 22:42:38,963.963 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 22:42:39,146.146 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 22:42:39,156.156 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 22:42:39,284.284 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 22:42:39,350.350 INFO    ] time= 12/06/2026 22:42:39
[2026-06-12 22:42:39,373.373 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 22:42:39,380.380 INFO    ] Checking for existing commands in stream...
[2026-06-12 22:42:39,446.446 INFO    ] No existing commands found in stream
[2026-06-12 22:42:44,455.455 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 22:42:44,458.458 INFO    ] Waiting 1.09 seconds before fallback handling...
[2026-06-12 22:42:45,921.921 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 22:42:45,922.922 INFO    ] Checking for system updates...
[2026-06-12 22:42:45,944.944 INFO    ] 200
[2026-06-12 22:42:45,945.945 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:42:45,974.974 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 22:42:45,976.976 INFO    ] No update needed
[2026-06-12 22:42:45,977.977 INFO    ] Checking for camera pi updates...
[2026-06-12 22:42:45,997.997 INFO    ] 200
[2026-06-12 22:42:45,998.998 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:42:46,021.021 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 22:42:46,088.088 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 22:42:46,090.090 INFO    ] No camera update needed
[2026-06-12 22:42:46,095.095 INFO    ] Script finished. Safe exiting...
[2026-06-12 22:42:46,096.096 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 22:42:46,100.100 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 22:42:46,103.103 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 22:42:48,141.141 INFO    ] ================================================
[2026-06-12 22:42:48,157.157 INFO    ] Launching Daemon at Fri Jun 12 22:42:48 IST 2026
[2026-06-12 22:42:48,168.168 INFO    ] ================================================
[2026-06-12 22:42:48,546.546 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 22:42:48
[2026-06-12 22:42:48,881.881 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 22:42:49,031.031 INFO    ] Initializing speech engine...
[2026-06-12 22:42:49,036.036 INFO    ] 2026-06-12 22:42:49
[2026-06-12 22:42:49,245.245 INFO    ] 2026-06-12 22:42:49
[2026-06-12 22:42:49,274.274 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 22:42:49,401.401 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 22:42:49,459.459 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 22:42:49,602.602 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 22:42:49,665.665 INFO    ] time= 12/06/2026 22:42:49
[2026-06-12 22:42:49,687.687 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 22:42:49,694.694 INFO    ] Checking for existing commands in stream...
[2026-06-12 22:42:49,760.760 INFO    ] No existing commands found in stream
[2026-06-12 22:42:54,774.774 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 22:42:54,777.777 INFO    ] Waiting 3.10 seconds before fallback handling...
[2026-06-12 22:42:58,249.249 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 22:42:58,251.251 INFO    ] Checking for system updates...
[2026-06-12 22:42:58,271.271 INFO    ] 200
[2026-06-12 22:42:58,273.273 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:42:58,303.303 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 22:42:58,304.304 INFO    ] No update needed
[2026-06-12 22:42:58,306.306 INFO    ] Checking for camera pi updates...
[2026-06-12 22:42:58,325.325 INFO    ] 200
[2026-06-12 22:42:58,327.327 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:42:58,350.350 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 22:42:58,401.401 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 22:42:58,402.402 INFO    ] No camera update needed
[2026-06-12 22:42:58,403.403 INFO    ] Script finished. Safe exiting...
[2026-06-12 22:42:58,405.405 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 22:42:58,408.408 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 22:42:58,411.411 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 22:43:00,450.450 INFO    ] ================================================
[2026-06-12 22:43:00,465.465 INFO    ] Launching Daemon at Fri Jun 12 22:43:00 IST 2026
[2026-06-12 22:43:00,476.476 INFO    ] ================================================
[2026-06-12 22:43:00,855.855 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 22:43:00
[2026-06-12 22:43:01,192.192 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 22:43:01,323.323 INFO    ] Initializing speech engine...
[2026-06-12 22:43:01,327.327 INFO    ] 2026-06-12 22:43:01
[2026-06-12 22:43:01,545.545 INFO    ] 2026-06-12 22:43:01
[2026-06-12 22:43:01,574.574 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 22:43:01,761.761 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 22:43:01,778.778 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 22:43:01,971.971 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 22:43:02,023.023 INFO    ] time= 12/06/2026 22:43:01
[2026-06-12 22:43:02,092.092 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 22:43:02,104.104 INFO    ] Checking for existing commands in stream...
[2026-06-12 22:43:02,176.176 INFO    ] No existing commands found in stream
[2026-06-12 22:43:07,191.191 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 22:43:07,194.194 INFO    ] Waiting 3.22 seconds before fallback handling...
[2026-06-12 22:43:10,772.772 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 22:43:10,773.773 INFO    ] Checking for system updates...
[2026-06-12 22:43:10,794.794 INFO    ] 200
[2026-06-12 22:43:10,796.796 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:43:10,826.826 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 22:43:10,827.827 INFO    ] No update needed
[2026-06-12 22:43:10,829.829 INFO    ] Checking for camera pi updates...
[2026-06-12 22:43:10,849.849 INFO    ] 200
[2026-06-12 22:43:10,850.850 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:43:10,876.876 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 22:43:11,014.014 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 22:43:11,015.015 INFO    ] No camera update needed
[2026-06-12 22:43:11,017.017 INFO    ] Script finished. Safe exiting...
[2026-06-12 22:43:11,018.018 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 22:43:11,022.022 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 22:43:11,024.024 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 22:43:13,072.072 INFO    ] ================================================
[2026-06-12 22:43:13,088.088 INFO    ] Launching Daemon at Fri Jun 12 22:43:13 IST 2026
[2026-06-12 22:43:13,099.099 INFO    ] ================================================
[2026-06-12 22:43:13,439.439 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 22:43:13
[2026-06-12 22:43:13,754.754 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 22:43:13,900.900 INFO    ] Initializing speech engine...
[2026-06-12 22:43:13,903.903 INFO    ] 2026-06-12 22:43:13
[2026-06-12 22:43:14,106.106 INFO    ] 2026-06-12 22:43:14
[2026-06-12 22:43:14,134.134 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 22:43:14,318.318 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 22:43:14,328.328 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 22:43:14,476.476 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 22:43:14,524.524 INFO    ] time= 12/06/2026 22:43:14
[2026-06-12 22:43:14,546.546 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 22:43:14,552.552 INFO    ] Checking for existing commands in stream...
[2026-06-12 22:43:14,618.618 INFO    ] No existing commands found in stream
[2026-06-12 22:43:19,627.627 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 22:43:19,630.630 INFO    ] Waiting 1.60 seconds before fallback handling...
[2026-06-12 22:43:21,616.616 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 22:43:21,617.617 INFO    ] Checking for system updates...
[2026-06-12 22:43:21,637.637 INFO    ] 200
[2026-06-12 22:43:21,639.639 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:43:21,668.668 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 22:43:21,670.670 INFO    ] No update needed
[2026-06-12 22:43:21,672.672 INFO    ] Checking for camera pi updates...
[2026-06-12 22:43:21,691.691 INFO    ] 200
[2026-06-12 22:43:21,693.693 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:43:21,717.717 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 22:43:21,771.771 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 22:43:21,773.773 INFO    ] No camera update needed
[2026-06-12 22:43:21,774.774 INFO    ] Script finished. Safe exiting...
[2026-06-12 22:43:21,775.775 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 22:43:21,778.778 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 22:43:21,781.781 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 22:43:23,820.820 INFO    ] ================================================
[2026-06-12 22:43:23,836.836 INFO    ] Launching Daemon at Fri Jun 12 22:43:23 IST 2026
[2026-06-12 22:43:23,848.848 INFO    ] ================================================
[2026-06-12 22:43:24,200.200 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 22:43:24
[2026-06-12 22:43:24,512.512 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 22:43:24,654.654 INFO    ] Initializing speech engine...
[2026-06-12 22:43:24,658.658 INFO    ] 2026-06-12 22:43:24
[2026-06-12 22:43:24,860.860 INFO    ] 2026-06-12 22:43:24
[2026-06-12 22:43:24,889.889 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 22:43:25,011.011 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 22:43:25,074.074 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 22:43:25,211.211 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 22:43:25,275.275 INFO    ] time= 12/06/2026 22:43:25
[2026-06-12 22:43:25,302.302 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 22:43:25,308.308 INFO    ] Checking for existing commands in stream...
[2026-06-12 22:43:25,375.375 INFO    ] No existing commands found in stream
[2026-06-12 22:43:30,384.384 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 22:43:30,387.387 INFO    ] Waiting 3.48 seconds before fallback handling...
[2026-06-12 22:43:34,220.220 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 22:43:34,222.222 INFO    ] Checking for system updates...
[2026-06-12 22:43:34,242.242 INFO    ] 200
[2026-06-12 22:43:34,243.243 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:43:34,273.273 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 22:43:34,274.274 INFO    ] No update needed
[2026-06-12 22:43:34,275.275 INFO    ] Checking for camera pi updates...
[2026-06-12 22:43:34,295.295 INFO    ] 200
[2026-06-12 22:43:34,296.296 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:43:34,321.321 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 22:43:34,364.364 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 22:43:34,365.365 INFO    ] No camera update needed
[2026-06-12 22:43:34,366.366 INFO    ] Script finished. Safe exiting...
[2026-06-12 22:43:34,367.367 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 22:43:34,371.371 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 22:43:34,373.373 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 22:43:36,411.411 INFO    ] ================================================
[2026-06-12 22:43:36,426.426 INFO    ] Launching Daemon at Fri Jun 12 22:43:36 IST 2026
[2026-06-12 22:43:36,437.437 INFO    ] ================================================
[2026-06-12 22:43:36,778.778 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 22:43:36
[2026-06-12 22:43:37,089.089 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 22:43:37,231.231 INFO    ] Initializing speech engine...
[2026-06-12 22:43:37,236.236 INFO    ] 2026-06-12 22:43:37
[2026-06-12 22:43:37,438.438 INFO    ] 2026-06-12 22:43:37
[2026-06-12 22:43:37,467.467 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 22:43:37,589.589 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 22:43:37,652.652 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 22:43:37,787.787 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 22:43:37,849.849 INFO    ] time= 12/06/2026 22:43:37
[2026-06-12 22:43:37,881.881 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 22:43:37,887.887 INFO    ] Checking for existing commands in stream...
[2026-06-12 22:43:37,955.955 INFO    ] No existing commands found in stream
[2026-06-12 22:43:42,964.964 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 22:43:42,966.966 INFO    ] Waiting 2.39 seconds before fallback handling...
[2026-06-12 22:43:45,749.749 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 22:43:45,751.751 INFO    ] Checking for system updates...
[2026-06-12 22:43:45,772.772 INFO    ] 200
[2026-06-12 22:43:45,773.773 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:43:45,804.804 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 22:43:45,805.805 INFO    ] No update needed
[2026-06-12 22:43:45,806.806 INFO    ] Checking for camera pi updates...
[2026-06-12 22:43:45,826.826 INFO    ] 200
[2026-06-12 22:43:45,827.827 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:43:45,851.851 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 22:43:45,893.893 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 22:43:45,894.894 INFO    ] No camera update needed
[2026-06-12 22:43:45,896.896 INFO    ] Script finished. Safe exiting...
[2026-06-12 22:43:45,897.897 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 22:43:45,900.900 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 22:43:45,903.903 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 22:43:47,943.943 INFO    ] ================================================
[2026-06-12 22:43:47,958.958 INFO    ] Launching Daemon at Fri Jun 12 22:43:47 IST 2026
[2026-06-12 22:43:47,969.969 INFO    ] ================================================
[2026-06-12 22:43:48,327.327 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 22:43:48
[2026-06-12 22:43:48,641.641 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 22:43:48,769.769 INFO    ] Initializing speech engine...
[2026-06-12 22:43:48,773.773 INFO    ] 2026-06-12 22:43:48
[2026-06-12 22:43:48,992.992 INFO    ] 2026-06-12 22:43:48
[2026-06-12 22:43:49,022.022 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 22:43:49,207.207 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 22:43:49,216.216 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 22:43:49,341.341 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 22:43:49,392.392 INFO    ] time= 12/06/2026 22:43:49
[2026-06-12 22:43:49,432.432 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 22:43:49,443.443 INFO    ] Checking for existing commands in stream...
[2026-06-12 22:43:49,515.515 INFO    ] No existing commands found in stream
[2026-06-12 22:43:54,520.520 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 22:43:54,523.523 INFO    ] Waiting 1.89 seconds before fallback handling...
[2026-06-12 22:43:56,758.758 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 22:43:56,760.760 INFO    ] Checking for system updates...
[2026-06-12 22:43:56,781.781 INFO    ] 200
[2026-06-12 22:43:56,782.782 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:43:56,812.812 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 22:43:56,813.813 INFO    ] No update needed
[2026-06-12 22:43:56,815.815 INFO    ] Checking for camera pi updates...
[2026-06-12 22:43:56,835.835 INFO    ] 200
[2026-06-12 22:43:56,836.836 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:43:56,862.862 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 22:43:56,915.915 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 22:43:56,916.916 INFO    ] No camera update needed
[2026-06-12 22:43:56,918.918 INFO    ] Script finished. Safe exiting...
[2026-06-12 22:43:56,919.919 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 22:43:56,923.923 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 22:43:56,925.925 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 22:43:58,963.963 INFO    ] ================================================
[2026-06-12 22:43:58,979.979 INFO    ] Launching Daemon at Fri Jun 12 22:43:58 IST 2026
[2026-06-12 22:43:58,989.989 INFO    ] ================================================
[2026-06-12 22:43:59,327.327 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 22:43:59
[2026-06-12 22:43:59,643.643 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 22:43:59,774.774 INFO    ] Initializing speech engine...
[2026-06-12 22:43:59,787.787 INFO    ] 2026-06-12 22:43:59
[2026-06-12 22:43:59,994.994 INFO    ] 2026-06-12 22:43:59
[2026-06-12 22:44:00,024.024 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 22:44:00,207.207 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 22:44:00,215.215 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 22:44:00,338.338 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 22:44:00,393.393 INFO    ] time= 12/06/2026 22:44:00
[2026-06-12 22:44:00,427.427 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 22:44:00,437.437 INFO    ] Checking for existing commands in stream...
[2026-06-12 22:44:00,531.531 INFO    ] No existing commands found in stream
[2026-06-12 22:44:05,540.540 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 22:44:05,543.543 INFO    ] Waiting 3.46 seconds before fallback handling...
[2026-06-12 22:44:09,392.392 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 22:44:09,394.394 INFO    ] Checking for system updates...
[2026-06-12 22:44:09,414.414 INFO    ] 200
[2026-06-12 22:44:09,415.415 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:44:09,448.448 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 22:44:09,449.449 INFO    ] No update needed
[2026-06-12 22:44:09,451.451 INFO    ] Checking for camera pi updates...
[2026-06-12 22:44:09,471.471 INFO    ] 200
[2026-06-12 22:44:09,472.472 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:44:09,497.497 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 22:44:09,541.541 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 22:44:09,542.542 INFO    ] No camera update needed
[2026-06-12 22:44:09,543.543 INFO    ] Script finished. Safe exiting...
[2026-06-12 22:44:09,544.544 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 22:44:09,547.547 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 22:44:09,550.550 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 22:44:11,589.589 INFO    ] ================================================
[2026-06-12 22:44:11,604.604 INFO    ] Launching Daemon at Fri Jun 12 22:44:11 IST 2026
[2026-06-12 22:44:11,614.614 INFO    ] ================================================
[2026-06-12 22:44:11,969.969 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 22:44:11
[2026-06-12 22:44:12,281.281 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 22:44:12,412.412 INFO    ] Initializing speech engine...
[2026-06-12 22:44:12,424.424 INFO    ] 2026-06-12 22:44:12
[2026-06-12 22:44:12,630.630 INFO    ] 2026-06-12 22:44:12
[2026-06-12 22:44:12,659.659 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 22:44:12,843.843 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 22:44:12,852.852 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 22:44:12,992.992 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 22:44:13,049.049 INFO    ] time= 12/06/2026 22:44:13
[2026-06-12 22:44:13,072.072 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 22:44:13,078.078 INFO    ] Checking for existing commands in stream...
[2026-06-12 22:44:13,145.145 INFO    ] No existing commands found in stream
[2026-06-12 22:44:18,153.153 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 22:44:18,156.156 INFO    ] Waiting 2.45 seconds before fallback handling...
[2026-06-12 22:44:20,972.972 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 22:44:20,973.973 INFO    ] Checking for system updates...
[2026-06-12 22:44:20,994.994 INFO    ] 200
[2026-06-12 22:44:20,995.995 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:44:21,026.026 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 22:44:21,027.027 INFO    ] No update needed
[2026-06-12 22:44:21,029.029 INFO    ] Checking for camera pi updates...
[2026-06-12 22:44:21,048.048 INFO    ] 200
[2026-06-12 22:44:21,049.049 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:44:21,074.074 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 22:44:21,114.114 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 22:44:21,116.116 INFO    ] No camera update needed
[2026-06-12 22:44:21,117.117 INFO    ] Script finished. Safe exiting...
[2026-06-12 22:44:21,118.118 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 22:44:21,121.121 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 22:44:21,124.124 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 22:44:23,162.162 INFO    ] ================================================
[2026-06-12 22:44:23,176.176 INFO    ] Launching Daemon at Fri Jun 12 22:44:23 IST 2026
[2026-06-12 22:44:23,187.187 INFO    ] ================================================
[2026-06-12 22:44:23,553.553 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 22:44:23
[2026-06-12 22:44:23,865.865 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 22:44:23,997.997 INFO    ] Initializing speech engine...
[2026-06-12 22:44:24,002.002 INFO    ] 2026-06-12 22:44:23
[2026-06-12 22:44:24,228.228 INFO    ] 2026-06-12 22:44:24
[2026-06-12 22:44:24,263.263 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 22:44:24,393.393 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 22:44:24,451.451 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 22:44:24,600.600 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 22:44:24,659.659 INFO    ] time= 12/06/2026 22:44:24
[2026-06-12 22:44:24,698.698 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 22:44:24,709.709 INFO    ] Checking for existing commands in stream...
[2026-06-12 22:44:24,785.785 INFO    ] No existing commands found in stream
[2026-06-12 22:44:29,794.794 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 22:44:29,797.797 INFO    ] Waiting 0.16 seconds before fallback handling...
[2026-06-12 22:44:30,292.292 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 22:44:30,295.295 INFO    ] Checking for system updates...
[2026-06-12 22:44:30,315.315 INFO    ] 200
[2026-06-12 22:44:30,317.317 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:44:30,351.351 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 22:44:30,352.352 INFO    ] No update needed
[2026-06-12 22:44:30,353.353 INFO    ] Checking for camera pi updates...
[2026-06-12 22:44:30,373.373 INFO    ] 200
[2026-06-12 22:44:30,374.374 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:44:30,400.400 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 22:44:30,445.445 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 22:44:30,446.446 INFO    ] No camera update needed
[2026-06-12 22:44:30,448.448 INFO    ] Script finished. Safe exiting...
[2026-06-12 22:44:30,449.449 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 22:44:30,452.452 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 22:44:30,455.455 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 22:44:32,479.479 INFO    ] ================================================
[2026-06-12 22:44:32,487.487 INFO    ] Launching Daemon at Fri Jun 12 22:44:32 IST 2026
[2026-06-12 22:44:32,493.493 INFO    ] ================================================
[2026-06-12 22:44:32,846.846 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 22:44:32
[2026-06-12 22:44:33,161.161 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 22:44:33,304.304 INFO    ] Initializing speech engine...
[2026-06-12 22:44:33,310.310 INFO    ] 2026-06-12 22:44:33
[2026-06-12 22:44:33,513.513 INFO    ] 2026-06-12 22:44:33
[2026-06-12 22:44:33,542.542 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 22:44:33,674.674 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 22:44:33,726.726 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 22:44:33,864.864 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 22:44:33,931.931 INFO    ] time= 12/06/2026 22:44:33
[2026-06-12 22:44:33,955.955 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 22:44:33,961.961 INFO    ] Checking for existing commands in stream...
[2026-06-12 22:44:34,028.028 INFO    ] No existing commands found in stream
[2026-06-12 22:44:39,042.042 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 22:44:39,045.045 INFO    ] Waiting 2.98 seconds before fallback handling...
[2026-06-12 22:44:42,424.424 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 22:44:42,426.426 INFO    ] Checking for system updates...
[2026-06-12 22:44:42,446.446 INFO    ] 200
[2026-06-12 22:44:42,448.448 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:44:42,478.478 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 22:44:42,479.479 INFO    ] No update needed
[2026-06-12 22:44:42,481.481 INFO    ] Checking for camera pi updates...
[2026-06-12 22:44:42,502.502 INFO    ] 200
[2026-06-12 22:44:42,503.503 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:44:42,530.530 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 22:44:42,588.588 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 22:44:42,589.589 INFO    ] No camera update needed
[2026-06-12 22:44:42,591.591 INFO    ] Script finished. Safe exiting...
[2026-06-12 22:44:42,592.592 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 22:44:42,595.595 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 22:44:42,598.598 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 22:44:44,640.640 INFO    ] ================================================
[2026-06-12 22:44:44,655.655 INFO    ] Launching Daemon at Fri Jun 12 22:44:44 IST 2026
[2026-06-12 22:44:44,666.666 INFO    ] ================================================
[2026-06-12 22:44:45,020.020 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 22:44:45
[2026-06-12 22:44:45,331.331 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 22:44:45,468.468 INFO    ] Initializing speech engine...
[2026-06-12 22:44:45,476.476 INFO    ] 2026-06-12 22:44:45
[2026-06-12 22:44:45,682.682 INFO    ] 2026-06-12 22:44:45
[2026-06-12 22:44:45,712.712 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 22:44:45,899.899 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 22:44:45,908.908 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 22:44:46,059.059 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 22:44:46,108.108 INFO    ] time= 12/06/2026 22:44:46
[2026-06-12 22:44:46,131.131 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 22:44:46,137.137 INFO    ] Checking for existing commands in stream...
[2026-06-12 22:44:46,205.205 INFO    ] No existing commands found in stream
[2026-06-12 22:44:51,219.219 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 22:44:51,222.222 INFO    ] Waiting 1.76 seconds before fallback handling...
[2026-06-12 22:44:53,319.319 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 22:44:53,321.321 INFO    ] Checking for system updates...
[2026-06-12 22:44:53,341.341 INFO    ] 200
[2026-06-12 22:44:53,343.343 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:44:53,372.372 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 22:44:53,374.374 INFO    ] No update needed
[2026-06-12 22:44:53,375.375 INFO    ] Checking for camera pi updates...
[2026-06-12 22:44:53,395.395 INFO    ] 200
[2026-06-12 22:44:53,397.397 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:44:53,420.420 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 22:44:53,465.465 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 22:44:53,466.466 INFO    ] No camera update needed
[2026-06-12 22:44:53,467.467 INFO    ] Script finished. Safe exiting...
[2026-06-12 22:44:53,469.469 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 22:44:53,472.472 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 22:44:53,474.474 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 22:44:55,513.513 INFO    ] ================================================
[2026-06-12 22:44:55,528.528 INFO    ] Launching Daemon at Fri Jun 12 22:44:55 IST 2026
[2026-06-12 22:44:55,539.539 INFO    ] ================================================
[2026-06-12 22:44:55,890.890 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 22:44:55
[2026-06-12 22:44:56,205.205 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 22:44:56,347.347 INFO    ] Initializing speech engine...
[2026-06-12 22:44:56,352.352 INFO    ] 2026-06-12 22:44:56
[2026-06-12 22:44:56,555.555 INFO    ] 2026-06-12 22:44:56
[2026-06-12 22:44:56,584.584 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 22:44:56,718.718 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 22:44:56,780.780 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 22:44:56,913.913 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 22:44:56,975.975 INFO    ] time= 12/06/2026 22:44:56
[2026-06-12 22:44:57,007.007 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 22:44:57,013.013 INFO    ] Checking for existing commands in stream...
[2026-06-12 22:44:57,100.100 INFO    ] No existing commands found in stream
[2026-06-12 22:45:02,111.111 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 22:45:02,113.113 INFO    ] Waiting 2.53 seconds before fallback handling...
[2026-06-12 22:45:05,035.035 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 22:45:05,036.036 INFO    ] Checking for system updates...
[2026-06-12 22:45:05,058.058 INFO    ] 200
[2026-06-12 22:45:05,059.059 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:45:05,089.089 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 22:45:05,091.091 INFO    ] No update needed
[2026-06-12 22:45:05,092.092 INFO    ] Checking for camera pi updates...
[2026-06-12 22:45:05,113.113 INFO    ] 200
[2026-06-12 22:45:05,115.115 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:45:05,139.139 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 22:45:05,186.186 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 22:45:05,187.187 INFO    ] No camera update needed
[2026-06-12 22:45:05,188.188 INFO    ] Script finished. Safe exiting...
[2026-06-12 22:45:05,190.190 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 22:45:05,193.193 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 22:45:05,195.195 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 22:45:07,233.233 INFO    ] ================================================
[2026-06-12 22:45:07,248.248 INFO    ] Launching Daemon at Fri Jun 12 22:45:07 IST 2026
[2026-06-12 22:45:07,259.259 INFO    ] ================================================
[2026-06-12 22:45:07,611.611 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 22:45:07
[2026-06-12 22:45:07,928.928 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 22:45:08,074.074 INFO    ] Initializing speech engine...
[2026-06-12 22:45:08,079.079 INFO    ] 2026-06-12 22:45:08
[2026-06-12 22:45:08,296.296 INFO    ] 2026-06-12 22:45:08
[2026-06-12 22:45:08,325.325 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 22:45:08,448.448 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 22:45:08,507.507 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 22:45:08,644.644 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 22:45:08,705.705 INFO    ] time= 12/06/2026 22:45:08
[2026-06-12 22:45:08,747.747 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 22:45:08,749.749 INFO    ] Checking for existing commands in stream...
[2026-06-12 22:45:08,820.820 INFO    ] No existing commands found in stream
[2026-06-12 22:45:13,835.835 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 22:45:13,838.838 INFO    ] Waiting 0.79 seconds before fallback handling...
[2026-06-12 22:45:15,003.003 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 22:45:15,005.005 INFO    ] Checking for system updates...
[2026-06-12 22:45:15,025.025 INFO    ] 200
[2026-06-12 22:45:15,027.027 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:45:15,059.059 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 22:45:15,061.061 INFO    ] No update needed
[2026-06-12 22:45:15,062.062 INFO    ] Checking for camera pi updates...
[2026-06-12 22:45:15,085.085 INFO    ] 200
[2026-06-12 22:45:15,086.086 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:45:15,113.113 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 22:45:15,252.252 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 22:45:15,253.253 INFO    ] No camera update needed
[2026-06-12 22:45:15,254.254 INFO    ] Script finished. Safe exiting...
[2026-06-12 22:45:15,256.256 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 22:45:15,259.259 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 22:45:15,262.262 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 22:45:17,300.300 INFO    ] ================================================
[2026-06-12 22:45:17,315.315 INFO    ] Launching Daemon at Fri Jun 12 22:45:17 IST 2026
[2026-06-12 22:45:17,326.326 INFO    ] ================================================
[2026-06-12 22:45:17,680.680 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 22:45:17
[2026-06-12 22:45:17,992.992 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 22:45:18,135.135 INFO    ] Initializing speech engine...
[2026-06-12 22:45:18,140.140 INFO    ] 2026-06-12 22:45:18
[2026-06-12 22:45:18,345.345 INFO    ] 2026-06-12 22:45:18
[2026-06-12 22:45:18,374.374 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 22:45:18,561.561 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 22:45:18,571.571 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 22:45:18,715.715 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 22:45:18,770.770 INFO    ] time= 12/06/2026 22:45:18
[2026-06-12 22:45:18,792.792 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 22:45:18,798.798 INFO    ] Checking for existing commands in stream...
[2026-06-12 22:45:18,866.866 INFO    ] No existing commands found in stream
[2026-06-12 22:45:23,880.880 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 22:45:23,883.883 INFO    ] Waiting 3.02 seconds before fallback handling...
[2026-06-12 22:45:27,259.259 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 22:45:27,261.261 INFO    ] Checking for system updates...
[2026-06-12 22:45:27,281.281 INFO    ] 200
[2026-06-12 22:45:27,282.282 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:45:27,312.312 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 22:45:27,313.313 INFO    ] No update needed
[2026-06-12 22:45:27,315.315 INFO    ] Checking for camera pi updates...
[2026-06-12 22:45:27,335.335 INFO    ] 200
[2026-06-12 22:45:27,336.336 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:45:27,359.359 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 22:45:27,413.413 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 22:45:27,414.414 INFO    ] No camera update needed
[2026-06-12 22:45:27,415.415 INFO    ] Script finished. Safe exiting...
[2026-06-12 22:45:27,416.416 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 22:45:27,419.419 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 22:45:27,422.422 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 22:45:29,462.462 INFO    ] ================================================
[2026-06-12 22:45:29,477.477 INFO    ] Launching Daemon at Fri Jun 12 22:45:29 IST 2026
[2026-06-12 22:45:29,487.487 INFO    ] ================================================
[2026-06-12 22:45:29,815.815 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 22:45:29
[2026-06-12 22:45:30,127.127 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 22:45:30,269.269 INFO    ] Initializing speech engine...
[2026-06-12 22:45:30,274.274 INFO    ] 2026-06-12 22:45:30
[2026-06-12 22:45:30,481.481 INFO    ] 2026-06-12 22:45:30
[2026-06-12 22:45:30,511.511 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 22:45:30,698.698 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 22:45:30,706.706 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 22:45:30,837.837 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 22:45:30,901.901 INFO    ] time= 12/06/2026 22:45:30
[2026-06-12 22:45:30,930.930 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 22:45:30,931.931 INFO    ] Checking for existing commands in stream...
[2026-06-12 22:45:31,003.003 INFO    ] No existing commands found in stream
[2026-06-12 22:45:36,017.017 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 22:45:36,020.020 INFO    ] Waiting 3.72 seconds before fallback handling...
[2026-06-12 22:45:40,101.101 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 22:45:40,103.103 INFO    ] Checking for system updates...
[2026-06-12 22:45:40,123.123 INFO    ] 200
[2026-06-12 22:45:40,124.124 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:45:40,154.154 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 22:45:40,155.155 INFO    ] No update needed
[2026-06-12 22:45:40,157.157 INFO    ] Checking for camera pi updates...
[2026-06-12 22:45:40,176.176 INFO    ] 200
[2026-06-12 22:45:40,178.178 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:45:40,202.202 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 22:45:40,246.246 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 22:45:40,248.248 INFO    ] No camera update needed
[2026-06-12 22:45:40,249.249 INFO    ] Script finished. Safe exiting...
[2026-06-12 22:45:40,250.250 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 22:45:40,253.253 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 22:45:40,256.256 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 22:45:42,293.293 INFO    ] ================================================
[2026-06-12 22:45:42,308.308 INFO    ] Launching Daemon at Fri Jun 12 22:45:42 IST 2026
[2026-06-12 22:45:42,319.319 INFO    ] ================================================
[2026-06-12 22:45:42,649.649 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 22:45:42
[2026-06-12 22:45:42,966.966 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 22:45:43,110.110 INFO    ] Initializing speech engine...
[2026-06-12 22:45:43,115.115 INFO    ] 2026-06-12 22:45:43
[2026-06-12 22:45:43,320.320 INFO    ] 2026-06-12 22:45:43
[2026-06-12 22:45:43,347.347 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 22:45:43,532.532 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 22:45:43,543.543 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 22:45:43,681.681 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 22:45:43,737.737 INFO    ] time= 12/06/2026 22:45:43
[2026-06-12 22:45:43,762.762 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 22:45:43,767.767 INFO    ] Checking for existing commands in stream...
[2026-06-12 22:45:43,835.835 INFO    ] No existing commands found in stream
[2026-06-12 22:45:48,844.844 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 22:45:48,847.847 INFO    ] Waiting 0.83 seconds before fallback handling...
[2026-06-12 22:45:50,054.054 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 22:45:50,056.056 INFO    ] Checking for system updates...
[2026-06-12 22:45:50,078.078 INFO    ] 200
[2026-06-12 22:45:50,079.079 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:45:50,109.109 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 22:45:50,111.111 INFO    ] No update needed
[2026-06-12 22:45:50,112.112 INFO    ] Checking for camera pi updates...
[2026-06-12 22:45:50,133.133 INFO    ] 200
[2026-06-12 22:45:50,134.134 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:45:50,158.158 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 22:45:50,208.208 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 22:45:50,210.210 INFO    ] No camera update needed
[2026-06-12 22:45:50,211.211 INFO    ] Script finished. Safe exiting...
[2026-06-12 22:45:50,212.212 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 22:45:50,215.215 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 22:45:50,218.218 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 22:45:52,257.257 INFO    ] ================================================
[2026-06-12 22:45:52,273.273 INFO    ] Launching Daemon at Fri Jun 12 22:45:52 IST 2026
[2026-06-12 22:45:52,283.283 INFO    ] ================================================
[2026-06-12 22:45:52,657.657 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 22:45:52
[2026-06-12 22:45:52,975.975 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 22:45:53,115.115 INFO    ] Initializing speech engine...
[2026-06-12 22:45:53,125.125 INFO    ] 2026-06-12 22:45:53
[2026-06-12 22:45:53,330.330 INFO    ] 2026-06-12 22:45:53
[2026-06-12 22:45:53,359.359 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 22:45:53,543.543 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 22:45:53,546.546 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 22:45:53,688.688 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 22:45:53,750.750 INFO    ] time= 12/06/2026 22:45:53
[2026-06-12 22:45:53,773.773 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 22:45:53,780.780 INFO    ] Checking for existing commands in stream...
[2026-06-12 22:45:53,846.846 INFO    ] No existing commands found in stream
[2026-06-12 22:45:58,855.855 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 22:45:58,858.858 INFO    ] Waiting 1.52 seconds before fallback handling...
[2026-06-12 22:46:00,740.740 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 22:46:00,741.741 INFO    ] Checking for system updates...
[2026-06-12 22:46:00,763.763 INFO    ] 200
[2026-06-12 22:46:00,764.764 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:46:00,794.794 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 22:46:00,795.795 INFO    ] No update needed
[2026-06-12 22:46:00,797.797 INFO    ] Checking for camera pi updates...
[2026-06-12 22:46:00,817.817 INFO    ] 200
[2026-06-12 22:46:00,819.819 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:46:00,843.843 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 22:46:00,906.906 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 22:46:00,907.907 INFO    ] No camera update needed
[2026-06-12 22:46:00,909.909 INFO    ] Script finished. Safe exiting...
[2026-06-12 22:46:00,910.910 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 22:46:00,913.913 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 22:46:00,916.916 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 22:46:02,944.944 INFO    ] ================================================
[2026-06-12 22:46:02,952.952 INFO    ] Launching Daemon at Fri Jun 12 22:46:02 IST 2026
[2026-06-12 22:46:02,958.958 INFO    ] ================================================
[2026-06-12 22:46:03,265.265 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 22:46:03
[2026-06-12 22:46:03,620.620 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 22:46:03,750.750 INFO    ] Initializing speech engine...
[2026-06-12 22:46:03,753.753 INFO    ] 2026-06-12 22:46:03
[2026-06-12 22:46:03,968.968 INFO    ] 2026-06-12 22:46:03
[2026-06-12 22:46:03,997.997 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 22:46:04,146.146 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 22:46:04,184.184 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 22:46:04,319.319 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 22:46:04,383.383 INFO    ] time= 12/06/2026 22:46:04
[2026-06-12 22:46:04,410.410 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 22:46:04,416.416 INFO    ] Checking for existing commands in stream...
[2026-06-12 22:46:04,483.483 INFO    ] No existing commands found in stream
[2026-06-12 22:46:09,492.492 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 22:46:09,495.495 INFO    ] Waiting 0.41 seconds before fallback handling...
[2026-06-12 22:46:10,280.280 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 22:46:10,282.282 INFO    ] Checking for system updates...
[2026-06-12 22:46:10,303.303 INFO    ] 200
[2026-06-12 22:46:10,305.305 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:46:10,335.335 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 22:46:10,336.336 INFO    ] No update needed
[2026-06-12 22:46:10,337.337 INFO    ] Checking for camera pi updates...
[2026-06-12 22:46:10,358.358 INFO    ] 200
[2026-06-12 22:46:10,359.359 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:46:10,382.382 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 22:46:10,422.422 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 22:46:10,423.423 INFO    ] No camera update needed
[2026-06-12 22:46:10,424.424 INFO    ] Script finished. Safe exiting...
[2026-06-12 22:46:10,426.426 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 22:46:10,429.429 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 22:46:10,432.432 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 22:46:12,472.472 INFO    ] ================================================
[2026-06-12 22:46:12,487.487 INFO    ] Launching Daemon at Fri Jun 12 22:46:12 IST 2026
[2026-06-12 22:46:12,499.499 INFO    ] ================================================
[2026-06-12 22:46:12,862.862 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 22:46:12
[2026-06-12 22:46:13,179.179 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 22:46:13,315.315 INFO    ] Initializing speech engine...
[2026-06-12 22:46:13,324.324 INFO    ] 2026-06-12 22:46:13
[2026-06-12 22:46:13,550.550 INFO    ] 2026-06-12 22:46:13
[2026-06-12 22:46:13,581.581 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 22:46:13,780.780 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 22:46:13,784.784 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 22:46:13,925.925 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 22:46:13,966.966 INFO    ] time= 12/06/2026 22:46:13
[2026-06-12 22:46:14,007.007 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 22:46:14,033.033 INFO    ] Checking for existing commands in stream...
[2026-06-12 22:46:14,109.109 INFO    ] No existing commands found in stream
[2026-06-12 22:46:19,120.120 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 22:46:19,123.123 INFO    ] Waiting 3.96 seconds before fallback handling...
[2026-06-12 22:46:23,479.479 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 22:46:23,481.481 INFO    ] Checking for system updates...
[2026-06-12 22:46:23,503.503 INFO    ] 200
[2026-06-12 22:46:23,504.504 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:46:23,536.536 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 22:46:23,538.538 INFO    ] No update needed
[2026-06-12 22:46:23,539.539 INFO    ] Checking for camera pi updates...
[2026-06-12 22:46:23,560.560 INFO    ] 200
[2026-06-12 22:46:23,561.561 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:46:23,584.584 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 22:46:23,626.626 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 22:46:23,627.627 INFO    ] No camera update needed
[2026-06-12 22:46:23,628.628 INFO    ] Script finished. Safe exiting...
[2026-06-12 22:46:23,630.630 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 22:46:23,633.633 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 22:46:23,635.635 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 22:46:25,674.674 INFO    ] ================================================
[2026-06-12 22:46:25,689.689 INFO    ] Launching Daemon at Fri Jun 12 22:46:25 IST 2026
[2026-06-12 22:46:25,700.700 INFO    ] ================================================
[2026-06-12 22:46:26,053.053 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 22:46:26
[2026-06-12 22:46:26,371.371 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 22:46:26,506.506 INFO    ] Initializing speech engine...
[2026-06-12 22:46:26,510.510 INFO    ] 2026-06-12 22:46:26
[2026-06-12 22:46:26,740.740 INFO    ] 2026-06-12 22:46:26
[2026-06-12 22:46:26,771.771 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 22:46:26,970.970 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 22:46:26,974.974 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 22:46:27,120.120 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 22:46:27,178.178 INFO    ] time= 12/06/2026 22:46:27
[2026-06-12 22:46:27,218.218 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 22:46:27,224.224 INFO    ] Checking for existing commands in stream...
[2026-06-12 22:46:27,300.300 INFO    ] No existing commands found in stream
[2026-06-12 22:46:32,310.310 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 22:46:32,312.312 INFO    ] Waiting 3.93 seconds before fallback handling...
[2026-06-12 22:46:36,636.636 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 22:46:36,637.637 INFO    ] Checking for system updates...
[2026-06-12 22:46:36,658.658 INFO    ] 200
[2026-06-12 22:46:36,659.659 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:46:36,691.691 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 22:46:36,693.693 INFO    ] No update needed
[2026-06-12 22:46:36,694.694 INFO    ] Checking for camera pi updates...
[2026-06-12 22:46:36,714.714 INFO    ] 200
[2026-06-12 22:46:36,716.716 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:46:36,738.738 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 22:46:36,811.811 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 22:46:36,812.812 INFO    ] No camera update needed
[2026-06-12 22:46:36,813.813 INFO    ] Script finished. Safe exiting...
[2026-06-12 22:46:36,815.815 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 22:46:36,818.818 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 22:46:36,821.821 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 22:46:38,859.859 INFO    ] ================================================
[2026-06-12 22:46:38,874.874 INFO    ] Launching Daemon at Fri Jun 12 22:46:38 IST 2026
[2026-06-12 22:46:38,885.885 INFO    ] ================================================
[2026-06-12 22:46:39,231.231 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 22:46:39
[2026-06-12 22:46:39,544.544 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 22:46:39,691.691 INFO    ] Initializing speech engine...
[2026-06-12 22:46:39,696.696 INFO    ] 2026-06-12 22:46:39
[2026-06-12 22:46:39,913.913 INFO    ] 2026-06-12 22:46:39
[2026-06-12 22:46:39,944.944 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 22:46:40,144.144 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 22:46:40,148.148 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 22:46:40,293.293 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 22:46:40,351.351 INFO    ] time= 12/06/2026 22:46:40
[2026-06-12 22:46:40,386.386 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 22:46:40,398.398 INFO    ] Checking for existing commands in stream...
[2026-06-12 22:46:40,476.476 INFO    ] No existing commands found in stream
[2026-06-12 22:46:45,485.485 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 22:46:45,488.488 INFO    ] Waiting 0.61 seconds before fallback handling...
[2026-06-12 22:46:46,447.447 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 22:46:46,449.449 INFO    ] Checking for system updates...
[2026-06-12 22:46:46,470.470 INFO    ] 200
[2026-06-12 22:46:46,472.472 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:46:46,504.504 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 22:46:46,505.505 INFO    ] No update needed
[2026-06-12 22:46:46,507.507 INFO    ] Checking for camera pi updates...
[2026-06-12 22:46:46,526.526 INFO    ] 200
[2026-06-12 22:46:46,528.528 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:46:46,552.552 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 22:46:46,590.590 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 22:46:46,592.592 INFO    ] No camera update needed
[2026-06-12 22:46:46,593.593 INFO    ] Script finished. Safe exiting...
[2026-06-12 22:46:46,594.594 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 22:46:46,597.597 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 22:46:46,600.600 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 22:46:48,639.639 INFO    ] ================================================
[2026-06-12 22:46:48,654.654 INFO    ] Launching Daemon at Fri Jun 12 22:46:48 IST 2026
[2026-06-12 22:46:48,665.665 INFO    ] ================================================
[2026-06-12 22:46:48,998.998 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 22:46:48
[2026-06-12 22:46:49,310.310 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 22:46:49,452.452 INFO    ] Initializing speech engine...
[2026-06-12 22:46:49,457.457 INFO    ] 2026-06-12 22:46:49
[2026-06-12 22:46:49,660.660 INFO    ] 2026-06-12 22:46:49
[2026-06-12 22:46:49,688.688 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 22:46:49,872.872 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 22:46:49,882.882 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 22:46:50,027.027 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 22:46:50,079.079 INFO    ] time= 12/06/2026 22:46:50
[2026-06-12 22:46:50,101.101 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 22:46:50,107.107 INFO    ] Checking for existing commands in stream...
[2026-06-12 22:46:50,177.177 INFO    ] No existing commands found in stream
[2026-06-12 22:46:55,186.186 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 22:46:55,189.189 INFO    ] Waiting 3.07 seconds before fallback handling...
[2026-06-12 22:46:58,627.627 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 22:46:58,629.629 INFO    ] Checking for system updates...
[2026-06-12 22:46:58,651.651 INFO    ] 200
[2026-06-12 22:46:58,652.652 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:46:58,684.684 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 22:46:58,686.686 INFO    ] No update needed
[2026-06-12 22:46:58,687.687 INFO    ] Checking for camera pi updates...
[2026-06-12 22:46:58,707.707 INFO    ] 200
[2026-06-12 22:46:58,708.708 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:46:58,733.733 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 22:46:58,779.779 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 22:46:58,780.780 INFO    ] No camera update needed
[2026-06-12 22:46:58,781.781 INFO    ] Script finished. Safe exiting...
[2026-06-12 22:46:58,783.783 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 22:46:58,786.786 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 22:46:58,788.788 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 22:47:00,835.835 INFO    ] ================================================
[2026-06-12 22:47:00,855.855 INFO    ] Launching Daemon at Fri Jun 12 22:47:00 IST 2026
[2026-06-12 22:47:00,866.866 INFO    ] ================================================
[2026-06-12 22:47:01,217.217 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 22:47:01
[2026-06-12 22:47:01,529.529 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 22:47:01,671.671 INFO    ] Initializing speech engine...
[2026-06-12 22:47:01,675.675 INFO    ] 2026-06-12 22:47:01
[2026-06-12 22:47:01,878.878 INFO    ] 2026-06-12 22:47:01
[2026-06-12 22:47:01,914.914 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 22:47:02,154.154 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 22:47:02,168.168 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 22:47:02,336.336 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 22:47:02,399.399 INFO    ] time= 12/06/2026 22:47:02
[2026-06-12 22:47:02,470.470 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 22:47:02,482.482 INFO    ] Checking for existing commands in stream...
[2026-06-12 22:47:02,585.585 INFO    ] No existing commands found in stream
[2026-06-12 22:47:07,615.615 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 22:47:07,619.619 INFO    ] Waiting 2.60 seconds before fallback handling...
[2026-06-12 22:47:10,627.627 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 22:47:10,629.629 INFO    ] Checking for system updates...
[2026-06-12 22:47:10,655.655 INFO    ] 200
[2026-06-12 22:47:10,656.656 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:47:10,692.692 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 22:47:10,693.693 INFO    ] No update needed
[2026-06-12 22:47:10,694.694 INFO    ] Checking for camera pi updates...
[2026-06-12 22:47:10,716.716 INFO    ] 200
[2026-06-12 22:47:10,718.718 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:47:10,741.741 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 22:47:10,784.784 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 22:47:10,785.785 INFO    ] No camera update needed
[2026-06-12 22:47:10,787.787 INFO    ] Script finished. Safe exiting...
[2026-06-12 22:47:10,788.788 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 22:47:10,792.792 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 22:47:10,795.795 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 22:47:12,834.834 INFO    ] ================================================
[2026-06-12 22:47:12,849.849 INFO    ] Launching Daemon at Fri Jun 12 22:47:12 IST 2026
[2026-06-12 22:47:12,860.860 INFO    ] ================================================
[2026-06-12 22:47:13,207.207 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 22:47:13
[2026-06-12 22:47:13,524.524 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 22:47:13,655.655 INFO    ] Initializing speech engine...
[2026-06-12 22:47:13,663.663 INFO    ] 2026-06-12 22:47:13
[2026-06-12 22:47:13,877.877 INFO    ] 2026-06-12 22:47:13
[2026-06-12 22:47:13,905.905 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 22:47:14,088.088 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 22:47:14,097.097 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 22:47:14,227.227 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 22:47:14,294.294 INFO    ] time= 12/06/2026 22:47:14
[2026-06-12 22:47:14,318.318 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 22:47:14,324.324 INFO    ] Checking for existing commands in stream...
[2026-06-12 22:47:14,390.390 INFO    ] No existing commands found in stream
[2026-06-12 22:47:19,404.404 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 22:47:19,407.407 INFO    ] Waiting 2.08 seconds before fallback handling...
[2026-06-12 22:47:21,870.870 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 22:47:21,872.872 INFO    ] Checking for system updates...
[2026-06-12 22:47:21,893.893 INFO    ] 200
[2026-06-12 22:47:21,895.895 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:47:21,925.925 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 22:47:21,926.926 INFO    ] No update needed
[2026-06-12 22:47:21,927.927 INFO    ] Checking for camera pi updates...
[2026-06-12 22:47:21,950.950 INFO    ] 200
[2026-06-12 22:47:21,952.952 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:47:21,975.975 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 22:47:22,123.123 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 22:47:22,124.124 INFO    ] No camera update needed
[2026-06-12 22:47:22,126.126 INFO    ] Script finished. Safe exiting...
[2026-06-12 22:47:22,127.127 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 22:47:22,130.130 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 22:47:22,133.133 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 22:47:24,164.164 INFO    ] ================================================
[2026-06-12 22:47:24,173.173 INFO    ] Launching Daemon at Fri Jun 12 22:47:24 IST 2026
[2026-06-12 22:47:24,179.179 INFO    ] ================================================
[2026-06-12 22:47:24,506.506 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 22:47:24
[2026-06-12 22:47:24,840.840 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 22:47:24,968.968 INFO    ] Initializing speech engine...
[2026-06-12 22:47:24,973.973 INFO    ] 2026-06-12 22:47:24
[2026-06-12 22:47:25,188.188 INFO    ] 2026-06-12 22:47:25
[2026-06-12 22:47:25,218.218 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 22:47:25,401.401 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 22:47:25,404.404 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 22:47:25,540.540 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 22:47:25,608.608 INFO    ] time= 12/06/2026 22:47:25
[2026-06-12 22:47:25,631.631 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 22:47:25,638.638 INFO    ] Checking for existing commands in stream...
[2026-06-12 22:47:25,704.704 INFO    ] No existing commands found in stream
[2026-06-12 22:47:30,713.713 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 22:47:30,716.716 INFO    ] Waiting 1.72 seconds before fallback handling...
[2026-06-12 22:47:32,775.775 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 22:47:32,777.777 INFO    ] Checking for system updates...
[2026-06-12 22:47:32,799.799 INFO    ] 200
[2026-06-12 22:47:32,800.800 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:47:32,831.831 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 22:47:32,832.832 INFO    ] No update needed
[2026-06-12 22:47:32,834.834 INFO    ] Checking for camera pi updates...
[2026-06-12 22:47:32,854.854 INFO    ] 200
[2026-06-12 22:47:32,856.856 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:47:32,884.884 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 22:47:32,927.927 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 22:47:32,929.929 INFO    ] No camera update needed
[2026-06-12 22:47:32,930.930 INFO    ] Script finished. Safe exiting...
[2026-06-12 22:47:32,932.932 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 22:47:32,935.935 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 22:47:32,937.937 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 22:47:34,976.976 INFO    ] ================================================
[2026-06-12 22:47:34,991.991 INFO    ] Launching Daemon at Fri Jun 12 22:47:34 IST 2026
[2026-06-12 22:47:35,002.002 INFO    ] ================================================
[2026-06-12 22:47:35,349.349 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 22:47:35
[2026-06-12 22:47:35,662.662 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 22:47:35,792.792 INFO    ] Initializing speech engine...
[2026-06-12 22:47:35,796.796 INFO    ] 2026-06-12 22:47:35
[2026-06-12 22:47:36,014.014 INFO    ] 2026-06-12 22:47:35
[2026-06-12 22:47:36,044.044 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 22:47:36,230.230 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 22:47:36,239.239 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 22:47:36,370.370 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 22:47:36,429.429 INFO    ] time= 12/06/2026 22:47:36
[2026-06-12 22:47:36,462.462 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 22:47:36,469.469 INFO    ] Checking for existing commands in stream...
[2026-06-12 22:47:36,537.537 INFO    ] No existing commands found in stream
[2026-06-12 22:47:41,546.546 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 22:47:41,548.548 INFO    ] Waiting 0.34 seconds before fallback handling...
[2026-06-12 22:47:42,251.251 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 22:47:42,252.252 INFO    ] Checking for system updates...
[2026-06-12 22:47:42,274.274 INFO    ] 200
[2026-06-12 22:47:42,276.276 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:47:42,308.308 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 22:47:42,310.310 INFO    ] No update needed
[2026-06-12 22:47:42,311.311 INFO    ] Checking for camera pi updates...
[2026-06-12 22:47:42,331.331 INFO    ] 200
[2026-06-12 22:47:42,333.333 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:47:42,360.360 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 22:47:42,412.412 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 22:47:42,414.414 INFO    ] No camera update needed
[2026-06-12 22:47:42,415.415 INFO    ] Script finished. Safe exiting...
[2026-06-12 22:47:42,416.416 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 22:47:42,420.420 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 22:47:42,423.423 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 22:47:44,461.461 INFO    ] ================================================
[2026-06-12 22:47:44,476.476 INFO    ] Launching Daemon at Fri Jun 12 22:47:44 IST 2026
[2026-06-12 22:47:44,487.487 INFO    ] ================================================
[2026-06-12 22:47:44,850.850 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 22:47:44
[2026-06-12 22:47:45,162.162 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 22:47:45,292.292 INFO    ] Initializing speech engine...
[2026-06-12 22:47:45,300.300 INFO    ] 2026-06-12 22:47:45
[2026-06-12 22:47:45,513.513 INFO    ] 2026-06-12 22:47:45
[2026-06-12 22:47:45,541.541 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 22:47:45,725.725 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 22:47:45,733.733 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 22:47:45,877.877 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 22:47:45,929.929 INFO    ] time= 12/06/2026 22:47:45
[2026-06-12 22:47:45,952.952 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 22:47:45,958.958 INFO    ] Checking for existing commands in stream...
[2026-06-12 22:47:46,025.025 INFO    ] No existing commands found in stream
[2026-06-12 22:47:51,034.034 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 22:47:51,036.036 INFO    ] Waiting 3.82 seconds before fallback handling...
[2026-06-12 22:47:55,277.277 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 22:47:55,279.279 INFO    ] Checking for system updates...
[2026-06-12 22:47:55,316.316 INFO    ] 200
[2026-06-12 22:47:55,318.318 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:47:55,380.380 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 22:47:55,383.383 INFO    ] No update needed
[2026-06-12 22:47:55,385.385 INFO    ] Checking for camera pi updates...
[2026-06-12 22:47:55,411.411 INFO    ] 200
[2026-06-12 22:47:55,412.412 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:47:55,439.439 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 22:47:55,488.488 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 22:47:55,489.489 INFO    ] No camera update needed
[2026-06-12 22:47:55,490.490 INFO    ] Script finished. Safe exiting...
[2026-06-12 22:47:55,492.492 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 22:47:55,495.495 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 22:47:55,497.497 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 22:47:57,535.535 INFO    ] ================================================
[2026-06-12 22:47:57,551.551 INFO    ] Launching Daemon at Fri Jun 12 22:47:57 IST 2026
[2026-06-12 22:47:57,565.565 INFO    ] ================================================
[2026-06-12 22:47:57,906.906 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 22:47:57
[2026-06-12 22:47:58,217.217 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 22:47:58,357.357 INFO    ] Initializing speech engine...
[2026-06-12 22:47:58,365.365 INFO    ] 2026-06-12 22:47:58
[2026-06-12 22:47:58,571.571 INFO    ] 2026-06-12 22:47:58
[2026-06-12 22:47:58,601.601 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 22:47:58,790.790 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 22:47:58,798.798 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 22:47:58,930.930 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 22:47:58,998.998 INFO    ] time= 12/06/2026 22:47:58
[2026-06-12 22:47:59,022.022 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 22:47:59,028.028 INFO    ] Checking for existing commands in stream...
[2026-06-12 22:47:59,096.096 INFO    ] No existing commands found in stream
[2026-06-12 22:48:04,105.105 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 22:48:04,107.107 INFO    ] Waiting 3.75 seconds before fallback handling...
[2026-06-12 22:48:08,247.247 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 22:48:08,250.250 INFO    ] Checking for system updates...
[2026-06-12 22:48:08,291.291 INFO    ] 200
[2026-06-12 22:48:08,293.293 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:48:08,353.353 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 22:48:08,355.355 INFO    ] No update needed
[2026-06-12 22:48:08,358.358 INFO    ] Checking for camera pi updates...
[2026-06-12 22:48:08,387.387 INFO    ] 200
[2026-06-12 22:48:08,389.389 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:48:08,414.414 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 22:48:08,461.461 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 22:48:08,463.463 INFO    ] No camera update needed
[2026-06-12 22:48:08,464.464 INFO    ] Script finished. Safe exiting...
[2026-06-12 22:48:08,465.465 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 22:48:08,468.468 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 22:48:08,471.471 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 22:48:10,508.508 INFO    ] ================================================
[2026-06-12 22:48:10,524.524 INFO    ] Launching Daemon at Fri Jun 12 22:48:10 IST 2026
[2026-06-12 22:48:10,535.535 INFO    ] ================================================
[2026-06-12 22:48:10,886.886 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 22:48:10
[2026-06-12 22:48:11,199.199 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 22:48:11,330.330 INFO    ] Initializing speech engine...
[2026-06-12 22:48:11,338.338 INFO    ] 2026-06-12 22:48:11
[2026-06-12 22:48:11,552.552 INFO    ] 2026-06-12 22:48:11
[2026-06-12 22:48:11,582.582 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 22:48:11,770.770 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 22:48:11,779.779 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 22:48:11,911.911 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 22:48:11,978.978 INFO    ] time= 12/06/2026 22:48:11
[2026-06-12 22:48:12,003.003 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 22:48:12,009.009 INFO    ] Checking for existing commands in stream...
[2026-06-12 22:48:12,076.076 INFO    ] No existing commands found in stream
[2026-06-12 22:48:17,087.087 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 22:48:17,089.089 INFO    ] Waiting 0.48 seconds before fallback handling...
[2026-06-12 22:48:17,970.970 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 22:48:17,971.971 INFO    ] Checking for system updates...
[2026-06-12 22:48:17,992.992 INFO    ] 200
[2026-06-12 22:48:17,993.993 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:48:18,024.024 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 22:48:18,026.026 INFO    ] No update needed
[2026-06-12 22:48:18,027.027 INFO    ] Checking for camera pi updates...
[2026-06-12 22:48:18,048.048 INFO    ] 200
[2026-06-12 22:48:18,049.049 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:48:18,076.076 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 22:48:18,121.121 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 22:48:18,122.122 INFO    ] No camera update needed
[2026-06-12 22:48:18,123.123 INFO    ] Script finished. Safe exiting...
[2026-06-12 22:48:18,125.125 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 22:48:18,128.128 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 22:48:18,131.131 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 22:48:20,170.170 INFO    ] ================================================
[2026-06-12 22:48:20,186.186 INFO    ] Launching Daemon at Fri Jun 12 22:48:20 IST 2026
[2026-06-12 22:48:20,197.197 INFO    ] ================================================
[2026-06-12 22:48:20,524.524 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 22:48:20
[2026-06-12 22:48:20,837.837 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 22:48:20,979.979 INFO    ] Initializing speech engine...
[2026-06-12 22:48:20,984.984 INFO    ] 2026-06-12 22:48:20
[2026-06-12 22:48:21,185.185 INFO    ] 2026-06-12 22:48:21
[2026-06-12 22:48:21,215.215 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 22:48:21,398.398 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 22:48:21,408.408 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 22:48:21,568.568 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 22:48:21,607.607 INFO    ] time= 12/06/2026 22:48:21
[2026-06-12 22:48:21,629.629 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 22:48:21,635.635 INFO    ] Checking for existing commands in stream...
[2026-06-12 22:48:21,702.702 INFO    ] No existing commands found in stream
[2026-06-12 22:48:26,712.712 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 22:48:26,715.715 INFO    ] Waiting 2.06 seconds before fallback handling...
[2026-06-12 22:48:29,158.158 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 22:48:29,159.159 INFO    ] Checking for system updates...
[2026-06-12 22:48:29,182.182 INFO    ] 200
[2026-06-12 22:48:29,183.183 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:48:29,216.216 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 22:48:29,217.217 INFO    ] No update needed
[2026-06-12 22:48:29,219.219 INFO    ] Checking for camera pi updates...
[2026-06-12 22:48:29,242.242 INFO    ] 200
[2026-06-12 22:48:29,244.244 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:48:29,271.271 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 22:48:29,328.328 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 22:48:29,330.330 INFO    ] No camera update needed
[2026-06-12 22:48:29,331.331 INFO    ] Script finished. Safe exiting...
[2026-06-12 22:48:29,333.333 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 22:48:29,336.336 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 22:48:29,339.339 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 22:48:31,380.380 INFO    ] ================================================
[2026-06-12 22:48:31,389.389 INFO    ] Launching Daemon at Fri Jun 12 22:48:31 IST 2026
[2026-06-12 22:48:31,396.396 INFO    ] ================================================
[2026-06-12 22:48:31,723.723 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 22:48:31
[2026-06-12 22:48:32,061.061 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 22:48:32,204.204 INFO    ] Initializing speech engine...
[2026-06-12 22:48:32,212.212 INFO    ] 2026-06-12 22:48:32
[2026-06-12 22:48:32,421.421 INFO    ] 2026-06-12 22:48:32
[2026-06-12 22:48:32,452.452 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 22:48:32,639.639 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 22:48:32,648.648 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 22:48:32,795.795 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 22:48:32,848.848 INFO    ] time= 12/06/2026 22:48:32
[2026-06-12 22:48:32,872.872 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 22:48:32,877.877 INFO    ] Checking for existing commands in stream...
[2026-06-12 22:48:32,946.946 INFO    ] No existing commands found in stream
[2026-06-12 22:48:37,955.955 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 22:48:37,957.957 INFO    ] Waiting 1.52 seconds before fallback handling...
[2026-06-12 22:48:39,856.856 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 22:48:39,857.857 INFO    ] Checking for system updates...
[2026-06-12 22:48:39,879.879 INFO    ] 200
[2026-06-12 22:48:39,880.880 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:48:39,912.912 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 22:48:39,913.913 INFO    ] No update needed
[2026-06-12 22:48:39,914.914 INFO    ] Checking for camera pi updates...
[2026-06-12 22:48:39,935.935 INFO    ] 200
[2026-06-12 22:48:39,936.936 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:48:39,960.960 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 22:48:40,010.010 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 22:48:40,012.012 INFO    ] No camera update needed
[2026-06-12 22:48:40,013.013 INFO    ] Script finished. Safe exiting...
[2026-06-12 22:48:40,014.014 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 22:48:40,017.017 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 22:48:40,020.020 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 22:48:42,060.060 INFO    ] ================================================
[2026-06-12 22:48:42,075.075 INFO    ] Launching Daemon at Fri Jun 12 22:48:42 IST 2026
[2026-06-12 22:48:42,093.093 INFO    ] ================================================
[2026-06-12 22:48:42,417.417 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 22:48:42
[2026-06-12 22:48:42,738.738 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 22:48:42,878.878 INFO    ] Initializing speech engine...
[2026-06-12 22:48:42,884.884 INFO    ] 2026-06-12 22:48:42
[2026-06-12 22:48:43,100.100 INFO    ] 2026-06-12 22:48:43
[2026-06-12 22:48:43,128.128 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 22:48:43,314.314 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 22:48:43,323.323 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 22:48:43,467.467 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 22:48:43,521.521 INFO    ] time= 12/06/2026 22:48:43
[2026-06-12 22:48:43,543.543 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 22:48:43,550.550 INFO    ] Checking for existing commands in stream...
[2026-06-12 22:48:43,615.615 INFO    ] No existing commands found in stream
[2026-06-12 22:48:48,625.625 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 22:48:48,628.628 INFO    ] Waiting 0.57 seconds before fallback handling...
[2026-06-12 22:48:49,549.549 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 22:48:49,550.550 INFO    ] Checking for system updates...
[2026-06-12 22:48:49,572.572 INFO    ] 200
[2026-06-12 22:48:49,573.573 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:48:49,603.603 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 22:48:49,605.605 INFO    ] No update needed
[2026-06-12 22:48:49,606.606 INFO    ] Checking for camera pi updates...
[2026-06-12 22:48:49,625.625 INFO    ] 200
[2026-06-12 22:48:49,626.626 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:48:49,651.651 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 22:48:49,696.696 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 22:48:49,697.697 INFO    ] No camera update needed
[2026-06-12 22:48:49,699.699 INFO    ] Script finished. Safe exiting...
[2026-06-12 22:48:49,700.700 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 22:48:49,703.703 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 22:48:49,706.706 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 22:48:51,743.743 INFO    ] ================================================
[2026-06-12 22:48:51,758.758 INFO    ] Launching Daemon at Fri Jun 12 22:48:51 IST 2026
[2026-06-12 22:48:51,769.769 INFO    ] ================================================
[2026-06-12 22:48:52,126.126 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 22:48:52
[2026-06-12 22:48:52,442.442 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 22:48:52,575.575 INFO    ] Initializing speech engine...
[2026-06-12 22:48:52,583.583 INFO    ] 2026-06-12 22:48:52
[2026-06-12 22:48:52,796.796 INFO    ] 2026-06-12 22:48:52
[2026-06-12 22:48:52,825.825 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 22:48:53,009.009 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 22:48:53,018.018 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 22:48:53,148.148 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 22:48:53,214.214 INFO    ] time= 12/06/2026 22:48:53
[2026-06-12 22:48:53,238.238 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 22:48:53,244.244 INFO    ] Checking for existing commands in stream...
[2026-06-12 22:48:53,310.310 INFO    ] No existing commands found in stream
[2026-06-12 22:48:58,320.320 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 22:48:58,323.323 INFO    ] Waiting 0.00 seconds before fallback handling...
[2026-06-12 22:48:58,709.709 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 22:48:58,711.711 INFO    ] Checking for system updates...
[2026-06-12 22:48:58,732.732 INFO    ] 200
[2026-06-12 22:48:58,734.734 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:48:58,766.766 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 22:48:58,768.768 INFO    ] No update needed
[2026-06-12 22:48:58,769.769 INFO    ] Checking for camera pi updates...
[2026-06-12 22:48:58,789.789 INFO    ] 200
[2026-06-12 22:48:58,791.791 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:48:58,814.814 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 22:48:58,857.857 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 22:48:58,859.859 INFO    ] No camera update needed
[2026-06-12 22:48:58,860.860 INFO    ] Script finished. Safe exiting...
[2026-06-12 22:48:58,861.861 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 22:48:58,864.864 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 22:48:58,867.867 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 22:49:00,905.905 INFO    ] ================================================
[2026-06-12 22:49:00,920.920 INFO    ] Launching Daemon at Fri Jun 12 22:49:00 IST 2026
[2026-06-12 22:49:00,931.931 INFO    ] ================================================
[2026-06-12 22:49:01,284.284 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 22:49:01
[2026-06-12 22:49:01,724.724 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 22:49:01,928.928 INFO    ] Initializing speech engine...
[2026-06-12 22:49:01,936.936 INFO    ] 2026-06-12 22:49:01
[2026-06-12 22:49:02,167.167 INFO    ] 2026-06-12 22:49:02
[2026-06-12 22:49:02,201.201 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 22:49:02,352.352 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 22:49:02,376.376 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 22:49:02,527.527 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 22:49:02,570.570 INFO    ] time= 12/06/2026 22:49:02
[2026-06-12 22:49:02,636.636 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 22:49:02,660.660 INFO    ] Checking for existing commands in stream...
[2026-06-12 22:49:02,730.730 INFO    ] No existing commands found in stream
[2026-06-12 22:49:07,741.741 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 22:49:07,744.744 INFO    ] Waiting 0.77 seconds before fallback handling...
[2026-06-12 22:49:08,839.839 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 22:49:08,841.841 INFO    ] Checking for system updates...
[2026-06-12 22:49:08,861.861 INFO    ] 200
[2026-06-12 22:49:08,862.862 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:49:08,893.893 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 22:49:08,894.894 INFO    ] No update needed
[2026-06-12 22:49:08,895.895 INFO    ] Checking for camera pi updates...
[2026-06-12 22:49:08,916.916 INFO    ] 200
[2026-06-12 22:49:08,917.917 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:49:08,942.942 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 22:49:08,986.986 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 22:49:08,987.987 INFO    ] No camera update needed
[2026-06-12 22:49:08,988.988 INFO    ] Script finished. Safe exiting...
[2026-06-12 22:49:08,990.990 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 22:49:08,993.993 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 22:49:08,995.995 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 22:49:11,034.034 INFO    ] ================================================
[2026-06-12 22:49:11,049.049 INFO    ] Launching Daemon at Fri Jun 12 22:49:11 IST 2026
[2026-06-12 22:49:11,060.060 INFO    ] ================================================
[2026-06-12 22:49:11,413.413 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 22:49:11
[2026-06-12 22:49:11,728.728 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 22:49:11,875.875 INFO    ] Initializing speech engine...
[2026-06-12 22:49:11,882.882 INFO    ] 2026-06-12 22:49:11
[2026-06-12 22:49:12,085.085 INFO    ] 2026-06-12 22:49:12
[2026-06-12 22:49:12,113.113 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 22:49:12,244.244 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 22:49:12,292.292 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 22:49:12,453.453 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 22:49:12,490.490 INFO    ] time= 12/06/2026 22:49:12
[2026-06-12 22:49:12,537.537 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 22:49:12,560.560 INFO    ] Checking for existing commands in stream...
[2026-06-12 22:49:12,634.634 INFO    ] No existing commands found in stream
[2026-06-12 22:49:17,643.643 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 22:49:17,646.646 INFO    ] Waiting 1.31 seconds before fallback handling...
[2026-06-12 22:49:19,340.340 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 22:49:19,341.341 INFO    ] Checking for system updates...
[2026-06-12 22:49:19,362.362 INFO    ] 200
[2026-06-12 22:49:19,363.363 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:49:19,394.394 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 22:49:19,396.396 INFO    ] No update needed
[2026-06-12 22:49:19,397.397 INFO    ] Checking for camera pi updates...
[2026-06-12 22:49:19,420.420 INFO    ] 200
[2026-06-12 22:49:19,421.421 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:49:19,445.445 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 22:49:19,487.487 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 22:49:19,488.488 INFO    ] No camera update needed
[2026-06-12 22:49:19,490.490 INFO    ] Script finished. Safe exiting...
[2026-06-12 22:49:19,491.491 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 22:49:19,494.494 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 22:49:19,497.497 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 22:49:21,537.537 INFO    ] ================================================
[2026-06-12 22:49:21,553.553 INFO    ] Launching Daemon at Fri Jun 12 22:49:21 IST 2026
[2026-06-12 22:49:21,563.563 INFO    ] ================================================
[2026-06-12 22:49:21,885.885 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 22:49:21
[2026-06-12 22:49:22,195.195 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 22:49:22,325.325 INFO    ] Initializing speech engine...
[2026-06-12 22:49:22,330.330 INFO    ] 2026-06-12 22:49:22
[2026-06-12 22:49:22,548.548 INFO    ] 2026-06-12 22:49:22
[2026-06-12 22:49:22,577.577 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 22:49:22,765.765 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 22:49:22,773.773 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 22:49:22,902.902 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 22:49:22,964.964 INFO    ] time= 12/06/2026 22:49:22
[2026-06-12 22:49:22,998.998 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 22:49:23,000.000 INFO    ] Checking for existing commands in stream...
[2026-06-12 22:49:23,072.072 INFO    ] No existing commands found in stream
[2026-06-12 22:49:28,096.096 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 22:49:28,099.099 INFO    ] Waiting 2.21 seconds before fallback handling...
[2026-06-12 22:49:30,710.710 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 22:49:30,712.712 INFO    ] Checking for system updates...
[2026-06-12 22:49:30,733.733 INFO    ] 200
[2026-06-12 22:49:30,735.735 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:49:30,767.767 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 22:49:30,768.768 INFO    ] No update needed
[2026-06-12 22:49:30,769.769 INFO    ] Checking for camera pi updates...
[2026-06-12 22:49:30,789.789 INFO    ] 200
[2026-06-12 22:49:30,790.790 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:49:30,817.817 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 22:49:30,954.954 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 22:49:30,956.956 INFO    ] No camera update needed
[2026-06-12 22:49:30,957.957 INFO    ] Script finished. Safe exiting...
[2026-06-12 22:49:30,958.958 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 22:49:30,961.961 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 22:49:30,964.964 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 22:49:33,997.997 INFO    ] ================================================
[2026-06-12 22:49:33,013.013 INFO    ] Launching Daemon at Fri Jun 12 22:49:33 IST 2026
[2026-06-12 22:49:33,024.024 INFO    ] ================================================
[2026-06-12 22:49:33,347.347 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 22:49:33
[2026-06-12 22:49:33,658.658 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 22:49:33,794.794 INFO    ] Initializing speech engine...
[2026-06-12 22:49:33,806.806 INFO    ] 2026-06-12 22:49:33
[2026-06-12 22:49:34,021.021 INFO    ] 2026-06-12 22:49:33
[2026-06-12 22:49:34,051.051 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 22:49:34,249.249 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 22:49:34,257.257 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 22:49:34,390.390 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 22:49:34,446.446 INFO    ] time= 12/06/2026 22:49:34
[2026-06-12 22:49:34,490.490 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 22:49:34,496.496 INFO    ] Checking for existing commands in stream...
[2026-06-12 22:49:34,572.572 INFO    ] No existing commands found in stream
[2026-06-12 22:49:39,581.581 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 22:49:39,583.583 INFO    ] Waiting 3.39 seconds before fallback handling...
[2026-06-12 22:49:43,330.330 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 22:49:43,332.332 INFO    ] Checking for system updates...
[2026-06-12 22:49:43,354.354 INFO    ] 200
[2026-06-12 22:49:43,355.355 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:49:43,390.390 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 22:49:43,392.392 INFO    ] No update needed
[2026-06-12 22:49:43,393.393 INFO    ] Checking for camera pi updates...
[2026-06-12 22:49:43,414.414 INFO    ] 200
[2026-06-12 22:49:43,416.416 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:49:43,441.441 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 22:49:43,483.483 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 22:49:43,485.485 INFO    ] No camera update needed
[2026-06-12 22:49:43,486.486 INFO    ] Script finished. Safe exiting...
[2026-06-12 22:49:43,487.487 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 22:49:43,490.490 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 22:49:43,493.493 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 22:49:45,535.535 INFO    ] ================================================
[2026-06-12 22:49:45,550.550 INFO    ] Launching Daemon at Fri Jun 12 22:49:45 IST 2026
[2026-06-12 22:49:45,561.561 INFO    ] ================================================
[2026-06-12 22:49:45,922.922 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 22:49:45
[2026-06-12 22:49:46,236.236 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 22:49:46,368.368 INFO    ] Initializing speech engine...
[2026-06-12 22:49:46,380.380 INFO    ] 2026-06-12 22:49:46
[2026-06-12 22:49:46,587.587 INFO    ] 2026-06-12 22:49:46
[2026-06-12 22:49:46,616.616 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 22:49:46,799.799 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 22:49:46,808.808 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 22:49:46,958.958 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 22:49:47,005.005 INFO    ] time= 12/06/2026 22:49:46
[2026-06-12 22:49:47,027.027 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 22:49:47,036.036 INFO    ] Checking for existing commands in stream...
[2026-06-12 22:49:47,102.102 INFO    ] No existing commands found in stream
[2026-06-12 22:49:52,111.111 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 22:49:52,114.114 INFO    ] Waiting 0.79 seconds before fallback handling...
[2026-06-12 22:49:53,267.267 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 22:49:53,268.268 INFO    ] Checking for system updates...
[2026-06-12 22:49:53,289.289 INFO    ] 200
[2026-06-12 22:49:53,290.290 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:49:53,322.322 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 22:49:53,323.323 INFO    ] No update needed
[2026-06-12 22:49:53,325.325 INFO    ] Checking for camera pi updates...
[2026-06-12 22:49:53,345.345 INFO    ] 200
[2026-06-12 22:49:53,346.346 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:49:53,369.369 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 22:49:53,421.421 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 22:49:53,422.422 INFO    ] No camera update needed
[2026-06-12 22:49:53,424.424 INFO    ] Script finished. Safe exiting...
[2026-06-12 22:49:53,425.425 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 22:49:53,428.428 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 22:49:53,431.431 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 22:49:55,470.470 INFO    ] ================================================
[2026-06-12 22:49:55,485.485 INFO    ] Launching Daemon at Fri Jun 12 22:49:55 IST 2026
[2026-06-12 22:49:55,495.495 INFO    ] ================================================
[2026-06-12 22:49:55,855.855 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 22:49:55
[2026-06-12 22:49:56,170.170 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 22:49:56,300.300 INFO    ] Initializing speech engine...
[2026-06-12 22:49:56,304.304 INFO    ] 2026-06-12 22:49:56
[2026-06-12 22:49:56,520.520 INFO    ] 2026-06-12 22:49:56
[2026-06-12 22:49:56,550.550 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 22:49:56,694.694 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 22:49:56,695.695 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 22:49:56,796.796 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 22:49:56,798.798 INFO    ] time= 12/06/2026 22:49:56
[2026-06-12 22:49:56,799.799 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 22:49:56,822.822 INFO    ] Checking for existing commands in stream...
[2026-06-12 22:49:56,946.946 INFO    ] No existing commands found in stream
[2026-06-12 22:50:01,967.967 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 22:50:01,970.970 INFO    ] Waiting 1.31 seconds before fallback handling...
[2026-06-12 22:50:04,551.551 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 22:50:04,554.554 INFO    ] Checking for system updates...
[2026-06-12 22:50:04,590.590 INFO    ] 200
[2026-06-12 22:50:04,593.593 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:50:04,645.645 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 22:50:04,647.647 INFO    ] No update needed
[2026-06-12 22:50:04,650.650 INFO    ] Checking for camera pi updates...
[2026-06-12 22:50:04,685.685 INFO    ] 200
[2026-06-12 22:50:04,687.687 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:50:04,711.711 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 22:50:04,749.749 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 22:50:04,750.750 INFO    ] No camera update needed
[2026-06-12 22:50:04,752.752 INFO    ] Script finished. Safe exiting...
[2026-06-12 22:50:04,753.753 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 22:50:04,756.756 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 22:50:04,758.758 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 22:50:06,796.796 INFO    ] ================================================
[2026-06-12 22:50:06,812.812 INFO    ] Launching Daemon at Fri Jun 12 22:50:06 IST 2026
[2026-06-12 22:50:06,822.822 INFO    ] ================================================
[2026-06-12 22:50:07,178.178 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 22:50:07
[2026-06-12 22:50:07,490.490 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 22:50:07,621.621 INFO    ] Initializing speech engine...
[2026-06-12 22:50:07,629.629 INFO    ] 2026-06-12 22:50:07
[2026-06-12 22:50:07,844.844 INFO    ] 2026-06-12 22:50:07
[2026-06-12 22:50:07,872.872 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 22:50:08,058.058 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 22:50:08,061.061 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 22:50:08,199.199 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 22:50:08,263.263 INFO    ] time= 12/06/2026 22:50:08
[2026-06-12 22:50:08,292.292 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 22:50:08,298.298 INFO    ] Checking for existing commands in stream...
[2026-06-12 22:50:08,390.390 INFO    ] No existing commands found in stream
[2026-06-12 22:50:13,399.399 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 22:50:13,402.402 INFO    ] Waiting 1.77 seconds before fallback handling...
[2026-06-12 22:50:15,559.559 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 22:50:15,561.561 INFO    ] Checking for system updates...
[2026-06-12 22:50:15,582.582 INFO    ] 200
[2026-06-12 22:50:15,584.584 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:50:15,615.615 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 22:50:15,617.617 INFO    ] No update needed
[2026-06-12 22:50:15,618.618 INFO    ] Checking for camera pi updates...
[2026-06-12 22:50:15,637.637 INFO    ] 200
[2026-06-12 22:50:15,638.638 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:50:15,664.664 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 22:50:15,712.712 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 22:50:15,713.713 INFO    ] No camera update needed
[2026-06-12 22:50:15,714.714 INFO    ] Script finished. Safe exiting...
[2026-06-12 22:50:15,715.715 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 22:50:15,718.718 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 22:50:15,721.721 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 22:50:17,758.758 INFO    ] ================================================
[2026-06-12 22:50:17,773.773 INFO    ] Launching Daemon at Fri Jun 12 22:50:17 IST 2026
[2026-06-12 22:50:17,784.784 INFO    ] ================================================
[2026-06-12 22:50:18,176.176 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 22:50:18
[2026-06-12 22:50:18,513.513 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 22:50:18,665.665 INFO    ] Initializing speech engine...
[2026-06-12 22:50:18,671.671 INFO    ] 2026-06-12 22:50:18
[2026-06-12 22:50:18,882.882 INFO    ] 2026-06-12 22:50:18
[2026-06-12 22:50:18,911.911 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 22:50:19,099.099 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 22:50:19,110.110 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 22:50:19,267.267 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 22:50:19,311.311 INFO    ] time= 12/06/2026 22:50:19
[2026-06-12 22:50:19,333.333 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 22:50:19,340.340 INFO    ] Checking for existing commands in stream...
[2026-06-12 22:50:19,408.408 INFO    ] No existing commands found in stream
[2026-06-12 22:50:24,422.422 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 22:50:24,426.426 INFO    ] Waiting 0.78 seconds before fallback handling...
[2026-06-12 22:50:25,517.517 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 22:50:25,519.519 INFO    ] Checking for system updates...
[2026-06-12 22:50:25,540.540 INFO    ] 200
[2026-06-12 22:50:25,541.541 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:50:25,573.573 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 22:50:25,575.575 INFO    ] No update needed
[2026-06-12 22:50:25,576.576 INFO    ] Checking for camera pi updates...
[2026-06-12 22:50:25,596.596 INFO    ] 200
[2026-06-12 22:50:25,597.597 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:50:25,621.621 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 22:50:25,673.673 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 22:50:25,675.675 INFO    ] No camera update needed
[2026-06-12 22:50:25,676.676 INFO    ] Script finished. Safe exiting...
[2026-06-12 22:50:25,677.677 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 22:50:25,680.680 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 22:50:25,683.683 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 22:50:27,721.721 INFO    ] ================================================
[2026-06-12 22:50:27,736.736 INFO    ] Launching Daemon at Fri Jun 12 22:50:27 IST 2026
[2026-06-12 22:50:27,746.746 INFO    ] ================================================
[2026-06-12 22:50:28,136.136 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 22:50:28
[2026-06-12 22:50:28,471.471 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 22:50:28,625.625 INFO    ] Initializing speech engine...
[2026-06-12 22:50:28,629.629 INFO    ] 2026-06-12 22:50:28
[2026-06-12 22:50:28,838.838 INFO    ] 2026-06-12 22:50:28
[2026-06-12 22:50:28,866.866 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 22:50:29,053.053 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 22:50:29,063.063 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 22:50:29,192.192 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 22:50:29,255.255 INFO    ] time= 12/06/2026 22:50:29
[2026-06-12 22:50:29,288.288 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 22:50:29,295.295 INFO    ] Checking for existing commands in stream...
[2026-06-12 22:50:29,363.363 INFO    ] No existing commands found in stream
[2026-06-12 22:50:34,372.372 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 22:50:34,375.375 INFO    ] Waiting 1.14 seconds before fallback handling...
[2026-06-12 22:50:35,910.910 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 22:50:35,912.912 INFO    ] Checking for system updates...
[2026-06-12 22:50:35,942.942 INFO    ] 200
[2026-06-12 22:50:35,944.944 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:50:35,982.982 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 22:50:35,984.984 INFO    ] No update needed
[2026-06-12 22:50:35,986.986 INFO    ] Checking for camera pi updates...
[2026-06-12 22:50:36,007.007 INFO    ] 200
[2026-06-12 22:50:36,008.008 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:50:36,031.031 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 22:50:36,079.079 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 22:50:36,081.081 INFO    ] No camera update needed
[2026-06-12 22:50:36,082.082 INFO    ] Script finished. Safe exiting...
[2026-06-12 22:50:36,083.083 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 22:50:36,086.086 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 22:50:36,089.089 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 22:50:38,113.113 INFO    ] ================================================
[2026-06-12 22:50:38,122.122 INFO    ] Launching Daemon at Fri Jun 12 22:50:38 IST 2026
[2026-06-12 22:50:38,128.128 INFO    ] ================================================
[2026-06-12 22:50:38,459.459 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 22:50:38
[2026-06-12 22:50:38,780.780 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 22:50:38,914.914 INFO    ] Initializing speech engine...
[2026-06-12 22:50:38,922.922 INFO    ] 2026-06-12 22:50:38
[2026-06-12 22:50:39,160.160 INFO    ] 2026-06-12 22:50:39
[2026-06-12 22:50:39,191.191 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 22:50:39,324.324 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 22:50:39,390.390 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 22:50:39,550.550 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 22:50:39,623.623 INFO    ] time= 12/06/2026 22:50:39
[2026-06-12 22:50:39,650.650 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 22:50:39,652.652 INFO    ] Checking for existing commands in stream...
[2026-06-12 22:50:39,718.718 INFO    ] No existing commands found in stream
[2026-06-12 22:50:44,727.727 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 22:50:44,730.730 INFO    ] Waiting 2.40 seconds before fallback handling...
[2026-06-12 22:50:47,510.510 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 22:50:47,512.512 INFO    ] Checking for system updates...
[2026-06-12 22:50:47,536.536 INFO    ] 200
[2026-06-12 22:50:47,538.538 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:50:47,584.584 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 22:50:47,586.586 INFO    ] No update needed
[2026-06-12 22:50:47,587.587 INFO    ] Checking for camera pi updates...
[2026-06-12 22:50:47,610.610 INFO    ] 200
[2026-06-12 22:50:47,612.612 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:50:47,650.650 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 22:50:47,704.704 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 22:50:47,706.706 INFO    ] No camera update needed
[2026-06-12 22:50:47,707.707 INFO    ] Script finished. Safe exiting...
[2026-06-12 22:50:47,708.708 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 22:50:47,712.712 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 22:50:47,715.715 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 22:50:49,752.752 INFO    ] ================================================
[2026-06-12 22:50:49,767.767 INFO    ] Launching Daemon at Fri Jun 12 22:50:49 IST 2026
[2026-06-12 22:50:49,778.778 INFO    ] ================================================
[2026-06-12 22:50:50,131.131 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 22:50:50
[2026-06-12 22:50:50,443.443 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 22:50:50,586.586 INFO    ] Initializing speech engine...
[2026-06-12 22:50:50,591.591 INFO    ] 2026-06-12 22:50:50
[2026-06-12 22:50:50,799.799 INFO    ] 2026-06-12 22:50:50
[2026-06-12 22:50:50,827.827 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 22:50:51,014.014 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 22:50:51,024.024 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 22:50:51,152.152 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 22:50:51,209.209 INFO    ] time= 12/06/2026 22:50:51
[2026-06-12 22:50:51,245.245 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 22:50:51,250.250 INFO    ] Checking for existing commands in stream...
[2026-06-12 22:50:51,323.323 INFO    ] No existing commands found in stream
[2026-06-12 22:50:56,332.332 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 22:50:56,334.334 INFO    ] Waiting 3.14 seconds before fallback handling...
[2026-06-12 22:50:59,862.862 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 22:50:59,863.863 INFO    ] Checking for system updates...
[2026-06-12 22:50:59,884.884 INFO    ] 200
[2026-06-12 22:50:59,885.885 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:50:59,917.917 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 22:50:59,918.918 INFO    ] No update needed
[2026-06-12 22:50:59,919.919 INFO    ] Checking for camera pi updates...
[2026-06-12 22:50:59,940.940 INFO    ] 200
[2026-06-12 22:50:59,941.941 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:50:59,964.964 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 22:51:00,009.009 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 22:51:00,010.010 INFO    ] No camera update needed
[2026-06-12 22:51:00,011.011 INFO    ] Script finished. Safe exiting...
[2026-06-12 22:51:00,013.013 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 22:51:00,016.016 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 22:51:00,018.018 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 22:51:02,050.050 INFO    ] ================================================
[2026-06-12 22:51:02,058.058 INFO    ] Launching Daemon at Fri Jun 12 22:51:02 IST 2026
[2026-06-12 22:51:02,064.064 INFO    ] ================================================
[2026-06-12 22:51:02,377.377 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 22:51:02
[2026-06-12 22:51:02,692.692 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 22:51:02,835.835 INFO    ] Initializing speech engine...
[2026-06-12 22:51:02,843.843 INFO    ] 2026-06-12 22:51:02
[2026-06-12 22:51:03,061.061 INFO    ] 2026-06-12 22:51:03
[2026-06-12 22:51:03,090.090 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 22:51:03,217.217 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 22:51:03,274.274 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 22:51:03,404.404 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 22:51:03,456.456 INFO    ] time= 12/06/2026 22:51:03
[2026-06-12 22:51:03,470.470 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 22:51:03,532.532 INFO    ] Checking for existing commands in stream...
[2026-06-12 22:51:03,628.628 INFO    ] No existing commands found in stream
[2026-06-12 22:51:08,639.639 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 22:51:08,642.642 INFO    ] Waiting 1.41 seconds before fallback handling...
[2026-06-12 22:51:10,429.429 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 22:51:10,430.430 INFO    ] Checking for system updates...
[2026-06-12 22:51:10,452.452 INFO    ] 200
[2026-06-12 22:51:10,453.453 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:51:10,488.488 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 22:51:10,489.489 INFO    ] No update needed
[2026-06-12 22:51:10,491.491 INFO    ] Checking for camera pi updates...
[2026-06-12 22:51:10,511.511 INFO    ] 200
[2026-06-12 22:51:10,512.512 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:51:10,538.538 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 22:51:10,585.585 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 22:51:10,586.586 INFO    ] No camera update needed
[2026-06-12 22:51:10,588.588 INFO    ] Script finished. Safe exiting...
[2026-06-12 22:51:10,589.589 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 22:51:10,592.592 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 22:51:10,595.595 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 22:51:12,634.634 INFO    ] ================================================
[2026-06-12 22:51:12,649.649 INFO    ] Launching Daemon at Fri Jun 12 22:51:12 IST 2026
[2026-06-12 22:51:12,660.660 INFO    ] ================================================
[2026-06-12 22:51:12,979.979 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 22:51:12
[2026-06-12 22:51:13,294.294 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 22:51:13,424.424 INFO    ] Initializing speech engine...
[2026-06-12 22:51:13,431.431 INFO    ] 2026-06-12 22:51:13
[2026-06-12 22:51:13,644.644 INFO    ] 2026-06-12 22:51:13
[2026-06-12 22:51:13,671.671 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 22:51:13,854.854 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 22:51:13,857.857 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 22:51:14,007.007 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 22:51:14,060.060 INFO    ] time= 12/06/2026 22:51:14
[2026-06-12 22:51:14,082.082 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 22:51:14,088.088 INFO    ] Checking for existing commands in stream...
[2026-06-12 22:51:14,155.155 INFO    ] No existing commands found in stream
[2026-06-12 22:51:19,169.169 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 22:51:19,172.172 INFO    ] Waiting 3.01 seconds before fallback handling...
[2026-06-12 22:51:22,551.551 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 22:51:22,552.552 INFO    ] Checking for system updates...
[2026-06-12 22:51:22,572.572 INFO    ] 200
[2026-06-12 22:51:22,574.574 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:51:22,604.604 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 22:51:22,605.605 INFO    ] No update needed
[2026-06-12 22:51:22,606.606 INFO    ] Checking for camera pi updates...
[2026-06-12 22:51:22,627.627 INFO    ] 200
[2026-06-12 22:51:22,628.628 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:51:22,652.652 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 22:51:22,689.689 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 22:51:22,691.691 INFO    ] No camera update needed
[2026-06-12 22:51:22,692.692 INFO    ] Script finished. Safe exiting...
[2026-06-12 22:51:22,693.693 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 22:51:22,696.696 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 22:51:22,699.699 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 22:51:24,737.737 INFO    ] ================================================
[2026-06-12 22:51:24,757.757 INFO    ] Launching Daemon at Fri Jun 12 22:51:24 IST 2026
[2026-06-12 22:51:24,768.768 INFO    ] ================================================
[2026-06-12 22:51:25,098.098 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 22:51:25
[2026-06-12 22:51:25,410.410 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 22:51:25,542.542 INFO    ] Initializing speech engine...
[2026-06-12 22:51:25,546.546 INFO    ] 2026-06-12 22:51:25
[2026-06-12 22:51:25,755.755 INFO    ] 2026-06-12 22:51:25
[2026-06-12 22:51:25,784.784 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 22:51:25,953.953 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 22:51:26,010.010 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 22:51:26,151.151 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 22:51:26,207.207 INFO    ] time= 12/06/2026 22:51:26
[2026-06-12 22:51:26,236.236 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 22:51:26,259.259 INFO    ] Checking for existing commands in stream...
[2026-06-12 22:51:26,334.334 INFO    ] No existing commands found in stream
[2026-06-12 22:51:31,341.341 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 22:51:31,343.343 INFO    ] Waiting 3.19 seconds before fallback handling...
[2026-06-12 22:51:34,890.890 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 22:51:34,892.892 INFO    ] Checking for system updates...
[2026-06-12 22:51:34,913.913 INFO    ] 200
[2026-06-12 22:51:34,915.915 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:51:34,946.946 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 22:51:34,948.948 INFO    ] No update needed
[2026-06-12 22:51:34,949.949 INFO    ] Checking for camera pi updates...
[2026-06-12 22:51:34,968.968 INFO    ] 200
[2026-06-12 22:51:34,969.969 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:51:34,992.992 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 22:51:35,131.131 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 22:51:35,132.132 INFO    ] No camera update needed
[2026-06-12 22:51:35,133.133 INFO    ] Script finished. Safe exiting...
[2026-06-12 22:51:35,135.135 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 22:51:35,137.137 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 22:51:35,140.140 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 22:51:37,179.179 INFO    ] ================================================
[2026-06-12 22:51:37,194.194 INFO    ] Launching Daemon at Fri Jun 12 22:51:37 IST 2026
[2026-06-12 22:51:37,205.205 INFO    ] ================================================
[2026-06-12 22:51:37,557.557 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 22:51:37
[2026-06-12 22:51:37,877.877 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 22:51:38,021.021 INFO    ] Initializing speech engine...
[2026-06-12 22:51:38,026.026 INFO    ] 2026-06-12 22:51:38
[2026-06-12 22:51:38,231.231 INFO    ] 2026-06-12 22:51:38
[2026-06-12 22:51:38,260.260 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 22:51:38,433.433 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 22:51:38,446.446 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 22:51:38,598.598 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 22:51:38,650.650 INFO    ] time= 12/06/2026 22:51:38
[2026-06-12 22:51:38,673.673 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 22:51:38,679.679 INFO    ] Checking for existing commands in stream...
[2026-06-12 22:51:38,746.746 INFO    ] No existing commands found in stream
[2026-06-12 22:51:43,755.755 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 22:51:43,758.758 INFO    ] Waiting 3.43 seconds before fallback handling...
[2026-06-12 22:51:47,589.589 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 22:51:47,591.591 INFO    ] Checking for system updates...
[2026-06-12 22:51:47,611.611 INFO    ] 200
[2026-06-12 22:51:47,613.613 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:51:47,645.645 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 22:51:47,646.646 INFO    ] No update needed
[2026-06-12 22:51:47,647.647 INFO    ] Checking for camera pi updates...
[2026-06-12 22:51:47,666.666 INFO    ] 200
[2026-06-12 22:51:47,668.668 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:51:47,691.691 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 22:51:47,748.748 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 22:51:47,750.750 INFO    ] No camera update needed
[2026-06-12 22:51:47,751.751 INFO    ] Script finished. Safe exiting...
[2026-06-12 22:51:47,752.752 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 22:51:47,755.755 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 22:51:47,758.758 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 22:51:49,798.798 INFO    ] ================================================
[2026-06-12 22:51:49,813.813 INFO    ] Launching Daemon at Fri Jun 12 22:51:49 IST 2026
[2026-06-12 22:51:49,824.824 INFO    ] ================================================
[2026-06-12 22:51:50,151.151 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 22:51:50
[2026-06-12 22:51:50,461.461 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 22:51:50,608.608 INFO    ] Initializing speech engine...
[2026-06-12 22:51:50,611.611 INFO    ] 2026-06-12 22:51:50
[2026-06-12 22:51:50,818.818 INFO    ] 2026-06-12 22:51:50
[2026-06-12 22:51:50,851.851 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 22:51:51,044.044 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 22:51:51,053.053 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 22:51:51,184.184 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 22:51:51,238.238 INFO    ] time= 12/06/2026 22:51:51
[2026-06-12 22:51:51,279.279 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 22:51:51,281.281 INFO    ] Checking for existing commands in stream...
[2026-06-12 22:51:51,353.353 INFO    ] No existing commands found in stream
[2026-06-12 22:51:56,362.362 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 22:51:56,365.365 INFO    ] Waiting 2.52 seconds before fallback handling...
[2026-06-12 22:51:59,233.233 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 22:51:59,235.235 INFO    ] Checking for system updates...
[2026-06-12 22:51:59,255.255 INFO    ] 200
[2026-06-12 22:51:59,257.257 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:51:59,289.289 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 22:51:59,291.291 INFO    ] No update needed
[2026-06-12 22:51:59,293.293 INFO    ] Checking for camera pi updates...
[2026-06-12 22:51:59,312.312 INFO    ] 200
[2026-06-12 22:51:59,314.314 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:51:59,341.341 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 22:51:59,390.390 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 22:51:59,391.391 INFO    ] No camera update needed
[2026-06-12 22:51:59,393.393 INFO    ] Script finished. Safe exiting...
[2026-06-12 22:51:59,394.394 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 22:51:59,397.397 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 22:51:59,400.400 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 22:52:01,437.437 INFO    ] ================================================
[2026-06-12 22:52:01,459.459 INFO    ] Launching Daemon at Fri Jun 12 22:52:01 IST 2026
[2026-06-12 22:52:01,474.474 INFO    ] ================================================
[2026-06-12 22:52:01,849.849 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 22:52:01
[2026-06-12 22:52:02,222.222 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 22:52:02,382.382 INFO    ] Initializing speech engine...
[2026-06-12 22:52:02,390.390 INFO    ] 2026-06-12 22:52:02
[2026-06-12 22:52:02,607.607 INFO    ] 2026-06-12 22:52:02
[2026-06-12 22:52:02,637.637 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 22:52:02,818.818 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 22:52:02,828.828 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 22:52:02,951.951 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 22:52:03,011.011 INFO    ] time= 12/06/2026 22:52:02
[2026-06-12 22:52:03,048.048 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 22:52:03,050.050 INFO    ] Checking for existing commands in stream...
[2026-06-12 22:52:03,120.120 INFO    ] No existing commands found in stream
[2026-06-12 22:52:08,130.130 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 22:52:08,133.133 INFO    ] Waiting 1.83 seconds before fallback handling...
[2026-06-12 22:52:10,379.379 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 22:52:10,382.382 INFO    ] Checking for system updates...
[2026-06-12 22:52:10,418.418 INFO    ] 200
[2026-06-12 22:52:10,421.421 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:52:10,473.473 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 22:52:10,476.476 INFO    ] No update needed
[2026-06-12 22:52:10,478.478 INFO    ] Checking for camera pi updates...
[2026-06-12 22:52:10,508.508 INFO    ] 200
[2026-06-12 22:52:10,509.509 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:52:10,536.536 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 22:52:10,586.586 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 22:52:10,588.588 INFO    ] No camera update needed
[2026-06-12 22:52:10,589.589 INFO    ] Script finished. Safe exiting...
[2026-06-12 22:52:10,590.590 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 22:52:10,593.593 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 22:52:10,596.596 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 22:52:12,635.635 INFO    ] ================================================
[2026-06-12 22:52:12,650.650 INFO    ] Launching Daemon at Fri Jun 12 22:52:12 IST 2026
[2026-06-12 22:52:12,660.660 INFO    ] ================================================
[2026-06-12 22:52:13,007.007 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 22:52:13
[2026-06-12 22:52:13,321.321 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 22:52:13,452.452 INFO    ] Initializing speech engine...
[2026-06-12 22:52:13,460.460 INFO    ] 2026-06-12 22:52:13
[2026-06-12 22:52:13,674.674 INFO    ] 2026-06-12 22:52:13
[2026-06-12 22:52:13,702.702 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 22:52:13,887.887 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 22:52:13,891.891 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 22:52:14,021.021 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 22:52:14,077.077 INFO    ] time= 12/06/2026 22:52:14
[2026-06-12 22:52:14,111.111 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 22:52:14,121.121 INFO    ] Checking for existing commands in stream...
[2026-06-12 22:52:14,194.194 INFO    ] No existing commands found in stream
[2026-06-12 22:52:19,203.203 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 22:52:19,205.205 INFO    ] Waiting 0.36 seconds before fallback handling...
[2026-06-12 22:52:19,929.929 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 22:52:19,930.930 INFO    ] Checking for system updates...
[2026-06-12 22:52:19,952.952 INFO    ] 200
[2026-06-12 22:52:19,953.953 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:52:19,983.983 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 22:52:19,985.985 INFO    ] No update needed
[2026-06-12 22:52:19,986.986 INFO    ] Checking for camera pi updates...
[2026-06-12 22:52:20,005.005 INFO    ] 200
[2026-06-12 22:52:20,006.006 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:52:20,029.029 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 22:52:20,081.081 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 22:52:20,082.082 INFO    ] No camera update needed
[2026-06-12 22:52:20,083.083 INFO    ] Script finished. Safe exiting...
[2026-06-12 22:52:20,085.085 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 22:52:20,087.087 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 22:52:20,090.090 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 22:52:22,121.121 INFO    ] ================================================
[2026-06-12 22:52:22,129.129 INFO    ] Launching Daemon at Fri Jun 12 22:52:22 IST 2026
[2026-06-12 22:52:22,135.135 INFO    ] ================================================
[2026-06-12 22:52:22,508.508 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 22:52:22
[2026-06-12 22:52:22,844.844 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 22:52:22,995.995 INFO    ] Initializing speech engine...
[2026-06-12 22:52:23,001.001 INFO    ] 2026-06-12 22:52:22
[2026-06-12 22:52:23,208.208 INFO    ] 2026-06-12 22:52:23
[2026-06-12 22:52:23,237.237 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 22:52:23,423.423 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 22:52:23,427.427 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 22:52:23,557.557 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 22:52:23,608.608 INFO    ] time= 12/06/2026 22:52:23
[2026-06-12 22:52:23,654.654 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 22:52:23,664.664 INFO    ] Checking for existing commands in stream...
[2026-06-12 22:52:23,755.755 INFO    ] No existing commands found in stream
[2026-06-12 22:52:28,780.780 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 22:52:28,783.783 INFO    ] Waiting 3.53 seconds before fallback handling...
[2026-06-12 22:52:32,676.676 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 22:52:32,678.678 INFO    ] Checking for system updates...
[2026-06-12 22:52:32,698.698 INFO    ] 200
[2026-06-12 22:52:32,700.700 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:52:32,732.732 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 22:52:32,733.733 INFO    ] No update needed
[2026-06-12 22:52:32,735.735 INFO    ] Checking for camera pi updates...
[2026-06-12 22:52:32,754.754 INFO    ] 200
[2026-06-12 22:52:32,755.755 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:52:32,778.778 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 22:52:32,813.813 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 22:52:32,815.815 INFO    ] No camera update needed
[2026-06-12 22:52:32,816.816 INFO    ] Script finished. Safe exiting...
[2026-06-12 22:52:32,817.817 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 22:52:32,821.821 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 22:52:32,824.824 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 22:52:34,862.862 INFO    ] ================================================
[2026-06-12 22:52:34,877.877 INFO    ] Launching Daemon at Fri Jun 12 22:52:34 IST 2026
[2026-06-12 22:52:34,887.887 INFO    ] ================================================
[2026-06-12 22:52:35,273.273 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 22:52:35
[2026-06-12 22:52:35,607.607 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 22:52:35,757.757 INFO    ] Initializing speech engine...
[2026-06-12 22:52:35,763.763 INFO    ] 2026-06-12 22:52:35
[2026-06-12 22:52:35,973.973 INFO    ] 2026-06-12 22:52:35
[2026-06-12 22:52:36,002.002 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 22:52:36,126.126 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 22:52:36,189.189 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 22:52:36,329.329 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 22:52:36,393.393 INFO    ] time= 12/06/2026 22:52:36
[2026-06-12 22:52:36,421.421 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 22:52:36,427.427 INFO    ] Checking for existing commands in stream...
[2026-06-12 22:52:36,495.495 INFO    ] No existing commands found in stream
[2026-06-12 22:52:41,504.504 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 22:52:41,507.507 INFO    ] Waiting 2.05 seconds before fallback handling...
[2026-06-12 22:52:43,882.882 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 22:52:43,884.884 INFO    ] Checking for system updates...
[2026-06-12 22:52:43,908.908 INFO    ] 200
[2026-06-12 22:52:43,910.910 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_HEALTH_CHECK"}
[2026-06-12 22:52:43,912.912 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping update check
[2026-06-12 22:52:43,913.913 INFO    ] Checking for camera pi updates...
[2026-06-12 22:52:43,936.936 INFO    ] 200
[2026-06-12 22:52:43,937.937 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_HEALTH_CHECK"}
[2026-06-12 22:52:43,939.939 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping camera update check
[2026-06-12 22:52:43,941.941 INFO    ] Script finished. Safe exiting...
[2026-06-12 22:52:43,942.942 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 22:52:43,946.946 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 22:52:43,949.949 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 22:52:45,973.973 INFO    ] ================================================
[2026-06-12 22:52:45,981.981 INFO    ] Launching Daemon at Fri Jun 12 22:52:45 IST 2026
[2026-06-12 22:52:45,987.987 INFO    ] ================================================
[2026-06-12 22:52:46,321.321 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 22:52:46
[2026-06-12 22:52:46,684.684 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 22:52:46,814.814 INFO    ] Initializing speech engine...
[2026-06-12 22:52:46,818.818 INFO    ] 2026-06-12 22:52:46
[2026-06-12 22:52:47,009.009 INFO    ] 2026-06-12 22:52:47
[2026-06-12 22:52:47,057.057 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 22:52:47,218.218 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 22:52:47,271.271 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 22:52:47,463.463 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 22:52:47,489.489 INFO    ] time= 12/06/2026 22:52:47
[2026-06-12 22:52:47,542.542 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 22:52:47,586.586 INFO    ] Checking for existing commands in stream...
[2026-06-12 22:52:47,661.661 INFO    ] No existing commands found in stream
[2026-06-12 22:52:52,696.696 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 22:52:52,699.699 INFO    ] Waiting 3.49 seconds before fallback handling...
[2026-06-12 22:52:56,560.560 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 22:52:56,561.561 INFO    ] Checking for system updates...
[2026-06-12 22:52:56,582.582 INFO    ] 200
[2026-06-12 22:52:56,583.583 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:52:56,613.613 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 22:52:56,614.614 INFO    ] No update needed
[2026-06-12 22:52:56,616.616 INFO    ] Checking for camera pi updates...
[2026-06-12 22:52:56,635.635 INFO    ] 200
[2026-06-12 22:52:56,636.636 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:52:56,661.661 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 22:52:56,706.706 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 22:52:56,707.707 INFO    ] No camera update needed
[2026-06-12 22:52:56,708.708 INFO    ] Script finished. Safe exiting...
[2026-06-12 22:52:56,710.710 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 22:52:56,713.713 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 22:52:56,716.716 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 22:52:58,754.754 INFO    ] ================================================
[2026-06-12 22:52:58,769.769 INFO    ] Launching Daemon at Fri Jun 12 22:52:58 IST 2026
[2026-06-12 22:52:58,780.780 INFO    ] ================================================
[2026-06-12 22:52:59,139.139 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 22:52:59
[2026-06-12 22:52:59,453.453 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 22:52:59,586.586 INFO    ] Initializing speech engine...
[2026-06-12 22:52:59,588.588 INFO    ] 2026-06-12 22:52:59
[2026-06-12 22:52:59,781.781 INFO    ] 2026-06-12 22:52:59
[2026-06-12 22:52:59,827.827 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 22:52:59,988.988 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 22:53:00,046.046 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 22:53:00,198.198 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 22:53:00,246.246 INFO    ] time= 12/06/2026 22:53:00
[2026-06-12 22:53:00,285.285 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 22:53:00,308.308 INFO    ] Checking for existing commands in stream...
[2026-06-12 22:53:00,385.385 INFO    ] No existing commands found in stream
[2026-06-12 22:53:05,395.395 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 22:53:05,398.398 INFO    ] Waiting 1.27 seconds before fallback handling...
[2026-06-12 22:53:07,076.076 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 22:53:07,079.079 INFO    ] Checking for system updates...
[2026-06-12 22:53:07,114.114 INFO    ] 200
[2026-06-12 22:53:07,117.117 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:53:07,168.168 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 22:53:07,171.171 INFO    ] No update needed
[2026-06-12 22:53:07,173.173 INFO    ] Checking for camera pi updates...
[2026-06-12 22:53:07,204.204 INFO    ] 200
[2026-06-12 22:53:07,205.205 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:53:07,231.231 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 22:53:07,274.274 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 22:53:07,275.275 INFO    ] No camera update needed
[2026-06-12 22:53:07,276.276 INFO    ] Script finished. Safe exiting...
[2026-06-12 22:53:07,278.278 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 22:53:07,281.281 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 22:53:07,283.283 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 22:53:09,321.321 INFO    ] ================================================
[2026-06-12 22:53:09,336.336 INFO    ] Launching Daemon at Fri Jun 12 22:53:09 IST 2026
[2026-06-12 22:53:09,347.347 INFO    ] ================================================
[2026-06-12 22:53:09,716.716 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 22:53:09
[2026-06-12 22:53:10,034.034 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 22:53:10,168.168 INFO    ] Initializing speech engine...
[2026-06-12 22:53:10,173.173 INFO    ] 2026-06-12 22:53:10
[2026-06-12 22:53:10,389.389 INFO    ] 2026-06-12 22:53:10
[2026-06-12 22:53:10,418.418 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 22:53:10,636.636 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 22:53:10,640.640 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 22:53:10,787.787 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 22:53:10,841.841 INFO    ] time= 12/06/2026 22:53:10
[2026-06-12 22:53:10,876.876 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 22:53:10,888.888 INFO    ] Checking for existing commands in stream...
[2026-06-12 22:53:10,963.963 INFO    ] No existing commands found in stream
[2026-06-12 22:53:15,974.974 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 22:53:15,977.977 INFO    ] Waiting 2.33 seconds before fallback handling...
[2026-06-12 22:53:18,657.657 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 22:53:18,658.658 INFO    ] Checking for system updates...
[2026-06-12 22:53:18,679.679 INFO    ] 200
[2026-06-12 22:53:18,681.681 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:53:18,714.714 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 22:53:18,716.716 INFO    ] No update needed
[2026-06-12 22:53:18,717.717 INFO    ] Checking for camera pi updates...
[2026-06-12 22:53:18,736.736 INFO    ] 200
[2026-06-12 22:53:18,737.737 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:53:18,762.762 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 22:53:18,805.805 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 22:53:18,806.806 INFO    ] No camera update needed
[2026-06-12 22:53:18,808.808 INFO    ] Script finished. Safe exiting...
[2026-06-12 22:53:18,809.809 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 22:53:18,812.812 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 22:53:18,815.815 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 22:53:20,853.853 INFO    ] ================================================
[2026-06-12 22:53:20,868.868 INFO    ] Launching Daemon at Fri Jun 12 22:53:20 IST 2026
[2026-06-12 22:53:20,879.879 INFO    ] ================================================
[2026-06-12 22:53:21,218.218 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 22:53:21
[2026-06-12 22:53:21,530.530 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 22:53:21,662.662 INFO    ] Initializing speech engine...
[2026-06-12 22:53:21,669.669 INFO    ] 2026-06-12 22:53:21
[2026-06-12 22:53:21,884.884 INFO    ] 2026-06-12 22:53:21
[2026-06-12 22:53:21,914.914 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 22:53:22,100.100 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 22:53:22,103.103 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 22:53:22,247.247 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 22:53:22,310.310 INFO    ] time= 12/06/2026 22:53:22
[2026-06-12 22:53:22,334.334 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 22:53:22,341.341 INFO    ] Checking for existing commands in stream...
[2026-06-12 22:53:22,408.408 INFO    ] No existing commands found in stream
[2026-06-12 22:53:27,417.417 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 22:53:27,420.420 INFO    ] Waiting 2.40 seconds before fallback handling...
[2026-06-12 22:53:30,195.195 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 22:53:30,197.197 INFO    ] Checking for system updates...
[2026-06-12 22:53:30,217.217 INFO    ] 200
[2026-06-12 22:53:30,218.218 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:53:30,248.248 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 22:53:30,250.250 INFO    ] No update needed
[2026-06-12 22:53:30,251.251 INFO    ] Checking for camera pi updates...
[2026-06-12 22:53:30,272.272 INFO    ] 200
[2026-06-12 22:53:30,273.273 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:53:30,296.296 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 22:53:30,360.360 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 22:53:30,362.362 INFO    ] No camera update needed
[2026-06-12 22:53:30,363.363 INFO    ] Script finished. Safe exiting...
[2026-06-12 22:53:30,364.364 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 22:53:30,367.367 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 22:53:30,370.370 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 22:53:32,402.402 INFO    ] ================================================
[2026-06-12 22:53:32,410.410 INFO    ] Launching Daemon at Fri Jun 12 22:53:32 IST 2026
[2026-06-12 22:53:32,416.416 INFO    ] ================================================
[2026-06-12 22:53:32,776.776 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 22:53:32
[2026-06-12 22:53:33,114.114 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 22:53:33,258.258 INFO    ] Initializing speech engine...
[2026-06-12 22:53:33,268.268 INFO    ] 2026-06-12 22:53:33
[2026-06-12 22:53:33,477.477 INFO    ] 2026-06-12 22:53:33
[2026-06-12 22:53:33,506.506 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 22:53:33,690.690 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 22:53:33,694.694 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 22:53:33,827.827 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 22:53:33,879.879 INFO    ] time= 12/06/2026 22:53:33
[2026-06-12 22:53:33,922.922 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 22:53:33,924.924 INFO    ] Checking for existing commands in stream...
[2026-06-12 22:53:34,019.019 INFO    ] No existing commands found in stream
[2026-06-12 22:53:39,028.028 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 22:53:39,032.032 INFO    ] Waiting 1.24 seconds before fallback handling...
[2026-06-12 22:53:40,671.671 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 22:53:40,672.672 INFO    ] Checking for system updates...
[2026-06-12 22:53:40,693.693 INFO    ] 200
[2026-06-12 22:53:40,694.694 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:53:40,724.724 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 22:53:40,726.726 INFO    ] No update needed
[2026-06-12 22:53:40,727.727 INFO    ] Checking for camera pi updates...
[2026-06-12 22:53:40,748.748 INFO    ] 200
[2026-06-12 22:53:40,750.750 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:53:40,773.773 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 22:53:40,912.912 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 22:53:40,913.913 INFO    ] No camera update needed
[2026-06-12 22:53:40,915.915 INFO    ] Script finished. Safe exiting...
[2026-06-12 22:53:40,916.916 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 22:53:40,920.920 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 22:53:40,923.923 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 22:53:42,962.962 INFO    ] ================================================
[2026-06-12 22:53:42,977.977 INFO    ] Launching Daemon at Fri Jun 12 22:53:42 IST 2026
[2026-06-12 22:53:42,988.988 INFO    ] ================================================
[2026-06-12 22:53:43,351.351 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 22:53:43
[2026-06-12 22:53:43,692.692 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 22:53:43,833.833 INFO    ] Initializing speech engine...
[2026-06-12 22:53:43,840.840 INFO    ] 2026-06-12 22:53:43
[2026-06-12 22:53:44,059.059 INFO    ] 2026-06-12 22:53:44
[2026-06-12 22:53:44,088.088 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 22:53:44,237.237 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 22:53:44,275.275 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 22:53:44,418.418 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 22:53:44,481.481 INFO    ] time= 12/06/2026 22:53:44
[2026-06-12 22:53:44,504.504 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 22:53:44,510.510 INFO    ] Checking for existing commands in stream...
[2026-06-12 22:53:44,577.577 INFO    ] No existing commands found in stream
[2026-06-12 22:53:49,592.592 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 22:53:49,595.595 INFO    ] Waiting 3.60 seconds before fallback handling...
[2026-06-12 22:53:53,556.556 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 22:53:53,558.558 INFO    ] Checking for system updates...
[2026-06-12 22:53:53,583.583 INFO    ] 200
[2026-06-12 22:53:53,584.584 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:53:53,614.614 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 22:53:53,615.615 INFO    ] No update needed
[2026-06-12 22:53:53,617.617 INFO    ] Checking for camera pi updates...
[2026-06-12 22:53:53,636.636 INFO    ] 200
[2026-06-12 22:53:53,638.638 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:53:53,661.661 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 22:53:53,712.712 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 22:53:53,713.713 INFO    ] No camera update needed
[2026-06-12 22:53:53,715.715 INFO    ] Script finished. Safe exiting...
[2026-06-12 22:53:53,716.716 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 22:53:53,720.720 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 22:53:53,723.723 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 22:53:55,760.760 INFO    ] ================================================
[2026-06-12 22:53:55,776.776 INFO    ] Launching Daemon at Fri Jun 12 22:53:55 IST 2026
[2026-06-12 22:53:55,786.786 INFO    ] ================================================
[2026-06-12 22:53:56,150.150 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 22:53:56
[2026-06-12 22:53:56,461.461 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 22:53:56,591.591 INFO    ] Initializing speech engine...
[2026-06-12 22:53:56,604.604 INFO    ] 2026-06-12 22:53:56
[2026-06-12 22:53:56,811.811 INFO    ] 2026-06-12 22:53:56
[2026-06-12 22:53:56,840.840 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 22:53:57,024.024 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 22:53:57,034.034 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 22:53:57,154.154 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 22:53:57,210.210 INFO    ] time= 12/06/2026 22:53:57
[2026-06-12 22:53:57,252.252 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 22:53:57,254.254 INFO    ] Checking for existing commands in stream...
[2026-06-12 22:53:57,325.325 INFO    ] No existing commands found in stream
[2026-06-12 22:54:02,332.332 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 22:54:02,334.334 INFO    ] Waiting 2.98 seconds before fallback handling...
[2026-06-12 22:54:05,701.701 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 22:54:05,703.703 INFO    ] Checking for system updates...
[2026-06-12 22:54:05,723.723 INFO    ] 200
[2026-06-12 22:54:05,724.724 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:54:05,754.754 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 22:54:05,756.756 INFO    ] No update needed
[2026-06-12 22:54:05,757.757 INFO    ] Checking for camera pi updates...
[2026-06-12 22:54:05,777.777 INFO    ] 200
[2026-06-12 22:54:05,779.779 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:54:05,804.804 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 22:54:05,875.875 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 22:54:05,876.876 INFO    ] No camera update needed
[2026-06-12 22:54:05,878.878 INFO    ] Script finished. Safe exiting...
[2026-06-12 22:54:05,879.879 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 22:54:05,882.882 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 22:54:05,885.885 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 22:54:07,923.923 INFO    ] ================================================
[2026-06-12 22:54:07,938.938 INFO    ] Launching Daemon at Fri Jun 12 22:54:07 IST 2026
[2026-06-12 22:54:07,948.948 INFO    ] ================================================
[2026-06-12 22:54:08,308.308 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 22:54:08
[2026-06-12 22:54:08,619.619 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 22:54:08,751.751 INFO    ] Initializing speech engine...
[2026-06-12 22:54:08,756.756 INFO    ] 2026-06-12 22:54:08
[2026-06-12 22:54:08,966.966 INFO    ] 2026-06-12 22:54:08
[2026-06-12 22:54:08,994.994 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 22:54:09,153.153 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 22:54:09,224.224 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 22:54:09,362.362 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 22:54:09,429.429 INFO    ] time= 12/06/2026 22:54:09
[2026-06-12 22:54:09,453.453 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 22:54:09,460.460 INFO    ] Checking for existing commands in stream...
[2026-06-12 22:54:09,526.526 INFO    ] No existing commands found in stream
[2026-06-12 22:54:14,535.535 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 22:54:14,537.537 INFO    ] Waiting 2.45 seconds before fallback handling...
[2026-06-12 22:54:17,334.334 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 22:54:17,336.336 INFO    ] Checking for system updates...
[2026-06-12 22:54:17,356.356 INFO    ] 200
[2026-06-12 22:54:17,357.357 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:54:17,390.390 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 22:54:17,391.391 INFO    ] No update needed
[2026-06-12 22:54:17,392.392 INFO    ] Checking for camera pi updates...
[2026-06-12 22:54:17,411.411 INFO    ] 200
[2026-06-12 22:54:17,413.413 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:54:17,436.436 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 22:54:17,488.488 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 22:54:17,489.489 INFO    ] No camera update needed
[2026-06-12 22:54:17,491.491 INFO    ] Script finished. Safe exiting...
[2026-06-12 22:54:17,492.492 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 22:54:17,495.495 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 22:54:17,497.497 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 22:54:19,534.534 INFO    ] ================================================
[2026-06-12 22:54:19,550.550 INFO    ] Launching Daemon at Fri Jun 12 22:54:19 IST 2026
[2026-06-12 22:54:19,561.561 INFO    ] ================================================
[2026-06-12 22:54:19,910.910 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 22:54:19
[2026-06-12 22:54:20,225.225 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 22:54:20,367.367 INFO    ] Initializing speech engine...
[2026-06-12 22:54:20,373.373 INFO    ] 2026-06-12 22:54:20
[2026-06-12 22:54:20,575.575 INFO    ] 2026-06-12 22:54:20
[2026-06-12 22:54:20,604.604 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 22:54:20,788.788 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 22:54:20,797.797 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 22:54:20,928.928 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 22:54:20,995.995 INFO    ] time= 12/06/2026 22:54:20
[2026-06-12 22:54:21,019.019 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 22:54:21,025.025 INFO    ] Checking for existing commands in stream...
[2026-06-12 22:54:21,092.092 INFO    ] No existing commands found in stream
[2026-06-12 22:54:26,101.101 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 22:54:26,104.104 INFO    ] Waiting 2.66 seconds before fallback handling...
[2026-06-12 22:54:29,176.176 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 22:54:29,178.178 INFO    ] Checking for system updates...
[2026-06-12 22:54:29,199.199 INFO    ] 200
[2026-06-12 22:54:29,201.201 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:54:29,231.231 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 22:54:29,232.232 INFO    ] No update needed
[2026-06-12 22:54:29,234.234 INFO    ] Checking for camera pi updates...
[2026-06-12 22:54:29,254.254 INFO    ] 200
[2026-06-12 22:54:29,255.255 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:54:29,284.284 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 22:54:29,338.338 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 22:54:29,340.340 INFO    ] No camera update needed
[2026-06-12 22:54:29,341.341 INFO    ] Script finished. Safe exiting...
[2026-06-12 22:54:29,342.342 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 22:54:29,345.345 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 22:54:29,348.348 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 22:54:31,387.387 INFO    ] ================================================
[2026-06-12 22:54:31,402.402 INFO    ] Launching Daemon at Fri Jun 12 22:54:31 IST 2026
[2026-06-12 22:54:31,413.413 INFO    ] ================================================
[2026-06-12 22:54:31,765.765 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 22:54:31
[2026-06-12 22:54:32,108.108 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 22:54:32,268.268 INFO    ] Initializing speech engine...
[2026-06-12 22:54:32,283.283 INFO    ] 2026-06-12 22:54:32
[2026-06-12 22:54:32,520.520 INFO    ] 2026-06-12 22:54:32
[2026-06-12 22:54:32,551.551 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 22:54:32,679.679 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 22:54:32,742.742 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 22:54:32,881.881 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 22:54:32,948.948 INFO    ] time= 12/06/2026 22:54:32
[2026-06-12 22:54:32,972.972 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 22:54:32,974.974 INFO    ] Checking for existing commands in stream...
[2026-06-12 22:54:33,051.051 INFO    ] No existing commands found in stream
[2026-06-12 22:54:38,079.079 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 22:54:38,083.083 INFO    ] Waiting 2.08 seconds before fallback handling...
[2026-06-12 22:54:40,537.537 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 22:54:40,539.539 INFO    ] Checking for system updates...
[2026-06-12 22:54:40,559.559 INFO    ] 200
[2026-06-12 22:54:40,561.561 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:54:40,591.591 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 22:54:40,593.593 INFO    ] No update needed
[2026-06-12 22:54:40,594.594 INFO    ] Checking for camera pi updates...
[2026-06-12 22:54:40,615.615 INFO    ] 200
[2026-06-12 22:54:40,616.616 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:54:40,641.641 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 22:54:40,698.698 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 22:54:40,700.700 INFO    ] No camera update needed
[2026-06-12 22:54:40,701.701 INFO    ] Script finished. Safe exiting...
[2026-06-12 22:54:40,702.702 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 22:54:40,705.705 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 22:54:40,708.708 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 22:54:42,745.745 INFO    ] ================================================
[2026-06-12 22:54:42,761.761 INFO    ] Launching Daemon at Fri Jun 12 22:54:42 IST 2026
[2026-06-12 22:54:42,771.771 INFO    ] ================================================
[2026-06-12 22:54:43,149.149 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 22:54:43
[2026-06-12 22:54:43,493.493 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 22:54:43,647.647 INFO    ] Initializing speech engine...
[2026-06-12 22:54:43,652.652 INFO    ] 2026-06-12 22:54:43
[2026-06-12 22:54:43,866.866 INFO    ] 2026-06-12 22:54:43
[2026-06-12 22:54:43,896.896 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 22:54:44,034.034 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 22:54:44,082.082 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 22:54:44,221.221 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 22:54:44,287.287 INFO    ] time= 12/06/2026 22:54:44
[2026-06-12 22:54:44,312.312 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 22:54:44,318.318 INFO    ] Checking for existing commands in stream...
[2026-06-12 22:54:44,386.386 INFO    ] No existing commands found in stream
[2026-06-12 22:54:49,411.411 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 22:54:49,414.414 INFO    ] Waiting 1.84 seconds before fallback handling...
[2026-06-12 22:54:51,607.607 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 22:54:51,608.608 INFO    ] Checking for system updates...
[2026-06-12 22:54:51,629.629 INFO    ] 200
[2026-06-12 22:54:51,631.631 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:54:51,661.661 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 22:54:51,662.662 INFO    ] No update needed
[2026-06-12 22:54:51,664.664 INFO    ] Checking for camera pi updates...
[2026-06-12 22:54:51,683.683 INFO    ] 200
[2026-06-12 22:54:51,684.684 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:54:51,709.709 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 22:54:51,739.739 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 22:54:51,740.740 INFO    ] No camera update needed
[2026-06-12 22:54:51,741.741 INFO    ] Script finished. Safe exiting...
[2026-06-12 22:54:51,743.743 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 22:54:51,746.746 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 22:54:51,748.748 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 22:54:53,786.786 INFO    ] ================================================
[2026-06-12 22:54:53,801.801 INFO    ] Launching Daemon at Fri Jun 12 22:54:53 IST 2026
[2026-06-12 22:54:53,812.812 INFO    ] ================================================
[2026-06-12 22:54:54,136.136 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 22:54:54
[2026-06-12 22:54:54,448.448 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 22:54:54,592.592 INFO    ] Initializing speech engine...
[2026-06-12 22:54:54,597.597 INFO    ] 2026-06-12 22:54:54
[2026-06-12 22:54:54,799.799 INFO    ] 2026-06-12 22:54:54
[2026-06-12 22:54:54,828.828 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 22:54:55,012.012 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 22:54:55,021.021 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 22:54:55,143.143 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 22:54:55,209.209 INFO    ] time= 12/06/2026 22:54:55
[2026-06-12 22:54:55,242.242 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 22:54:55,248.248 INFO    ] Checking for existing commands in stream...
[2026-06-12 22:54:55,338.338 INFO    ] No existing commands found in stream
[2026-06-12 22:55:00,347.347 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 22:55:00,350.350 INFO    ] Waiting 3.52 seconds before fallback handling...
[2026-06-12 22:55:04,206.206 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 22:55:04,207.207 INFO    ] Checking for system updates...
[2026-06-12 22:55:04,228.228 INFO    ] 200
[2026-06-12 22:55:04,230.230 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:55:04,260.260 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 22:55:04,261.261 INFO    ] No update needed
[2026-06-12 22:55:04,262.262 INFO    ] Checking for camera pi updates...
[2026-06-12 22:55:04,285.285 INFO    ] 200
[2026-06-12 22:55:04,286.286 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:55:04,310.310 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 22:55:04,369.369 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 22:55:04,370.370 INFO    ] No camera update needed
[2026-06-12 22:55:04,372.372 INFO    ] Script finished. Safe exiting...
[2026-06-12 22:55:04,373.373 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 22:55:04,376.376 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 22:55:04,378.378 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 22:55:06,416.416 INFO    ] ================================================
[2026-06-12 22:55:06,432.432 INFO    ] Launching Daemon at Fri Jun 12 22:55:06 IST 2026
[2026-06-12 22:55:06,442.442 INFO    ] ================================================
[2026-06-12 22:55:06,787.787 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 22:55:06
[2026-06-12 22:55:07,099.099 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 22:55:07,241.241 INFO    ] Initializing speech engine...
[2026-06-12 22:55:07,246.246 INFO    ] 2026-06-12 22:55:07
[2026-06-12 22:55:07,448.448 INFO    ] 2026-06-12 22:55:07
[2026-06-12 22:55:07,476.476 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 22:55:07,659.659 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 22:55:07,663.663 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 22:55:07,798.798 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 22:55:07,862.862 INFO    ] time= 12/06/2026 22:55:07
[2026-06-12 22:55:07,889.889 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 22:55:07,895.895 INFO    ] Checking for existing commands in stream...
[2026-06-12 22:55:07,962.962 INFO    ] No existing commands found in stream
[2026-06-12 22:55:12,976.976 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 22:55:12,978.978 INFO    ] Waiting 3.88 seconds before fallback handling...
[2026-06-12 22:55:17,244.244 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 22:55:17,246.246 INFO    ] Checking for system updates...
[2026-06-12 22:55:17,267.267 INFO    ] 200
[2026-06-12 22:55:17,269.269 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:55:17,298.298 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 22:55:17,300.300 INFO    ] No update needed
[2026-06-12 22:55:17,301.301 INFO    ] Checking for camera pi updates...
[2026-06-12 22:55:17,322.322 INFO    ] 200
[2026-06-12 22:55:17,323.323 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:55:17,346.346 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 22:55:17,393.393 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 22:55:17,394.394 INFO    ] No camera update needed
[2026-06-12 22:55:17,396.396 INFO    ] Script finished. Safe exiting...
[2026-06-12 22:55:17,397.397 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 22:55:17,400.400 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 22:55:17,403.403 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 22:55:19,446.446 INFO    ] ================================================
[2026-06-12 22:55:19,461.461 INFO    ] Launching Daemon at Fri Jun 12 22:55:19 IST 2026
[2026-06-12 22:55:19,472.472 INFO    ] ================================================
[2026-06-12 22:55:19,821.821 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 22:55:19
[2026-06-12 22:55:20,133.133 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 22:55:20,262.262 INFO    ] Initializing speech engine...
[2026-06-12 22:55:20,266.266 INFO    ] 2026-06-12 22:55:20
[2026-06-12 22:55:20,482.482 INFO    ] 2026-06-12 22:55:20
[2026-06-12 22:55:20,510.510 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 22:55:20,652.652 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 22:55:20,695.695 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 22:55:20,830.830 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 22:55:20,897.897 INFO    ] time= 12/06/2026 22:55:20
[2026-06-12 22:55:20,921.921 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 22:55:20,927.927 INFO    ] Checking for existing commands in stream...
[2026-06-12 22:55:20,993.993 INFO    ] No existing commands found in stream
[2026-06-12 22:55:26,003.003 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 22:55:26,006.006 INFO    ] Waiting 2.87 seconds before fallback handling...
[2026-06-12 22:55:29,292.292 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 22:55:29,294.294 INFO    ] Checking for system updates...
[2026-06-12 22:55:29,314.314 INFO    ] 200
[2026-06-12 22:55:29,316.316 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:55:29,345.345 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 22:55:29,347.347 INFO    ] No update needed
[2026-06-12 22:55:29,348.348 INFO    ] Checking for camera pi updates...
[2026-06-12 22:55:29,367.367 INFO    ] 200
[2026-06-12 22:55:29,368.368 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:55:29,393.393 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 22:55:29,443.443 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 22:55:29,445.445 INFO    ] No camera update needed
[2026-06-12 22:55:29,446.446 INFO    ] Script finished. Safe exiting...
[2026-06-12 22:55:29,447.447 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 22:55:29,450.450 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 22:55:29,453.453 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 22:55:31,491.491 INFO    ] ================================================
[2026-06-12 22:55:31,507.507 INFO    ] Launching Daemon at Fri Jun 12 22:55:31 IST 2026
[2026-06-12 22:55:31,518.518 INFO    ] ================================================
[2026-06-12 22:55:31,892.892 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 22:55:31
[2026-06-12 22:55:32,228.228 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 22:55:32,387.387 INFO    ] Initializing speech engine...
[2026-06-12 22:55:32,391.391 INFO    ] 2026-06-12 22:55:32
[2026-06-12 22:55:32,618.618 INFO    ] 2026-06-12 22:55:32
[2026-06-12 22:55:32,647.647 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 22:55:32,779.779 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 22:55:32,828.828 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 22:55:32,990.990 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 22:55:33,048.048 INFO    ] time= 12/06/2026 22:55:33
[2026-06-12 22:55:33,080.080 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 22:55:33,086.086 INFO    ] Checking for existing commands in stream...
[2026-06-12 22:55:33,152.152 INFO    ] No existing commands found in stream
[2026-06-12 22:55:38,162.162 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 22:55:38,164.164 INFO    ] Waiting 2.11 seconds before fallback handling...
[2026-06-12 22:55:40,645.645 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 22:55:40,646.646 INFO    ] Checking for system updates...
[2026-06-12 22:55:40,667.667 INFO    ] 200
[2026-06-12 22:55:40,669.669 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:55:40,699.699 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 22:55:40,701.701 INFO    ] No update needed
[2026-06-12 22:55:40,702.702 INFO    ] Checking for camera pi updates...
[2026-06-12 22:55:40,722.722 INFO    ] 200
[2026-06-12 22:55:40,723.723 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:55:40,748.748 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 22:55:40,806.806 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 22:55:40,807.807 INFO    ] No camera update needed
[2026-06-12 22:55:40,808.808 INFO    ] Script finished. Safe exiting...
[2026-06-12 22:55:40,810.810 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 22:55:40,813.813 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 22:55:40,816.816 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 22:55:42,853.853 INFO    ] ================================================
[2026-06-12 22:55:42,869.869 INFO    ] Launching Daemon at Fri Jun 12 22:55:42 IST 2026
[2026-06-12 22:55:42,880.880 INFO    ] ================================================
[2026-06-12 22:55:43,235.235 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 22:55:43
[2026-06-12 22:55:43,548.548 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 22:55:43,690.690 INFO    ] Initializing speech engine...
[2026-06-12 22:55:43,695.695 INFO    ] 2026-06-12 22:55:43
[2026-06-12 22:55:43,897.897 INFO    ] 2026-06-12 22:55:43
[2026-06-12 22:55:43,926.926 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 22:55:44,048.048 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 22:55:44,110.110 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 22:55:44,246.246 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 22:55:44,302.302 INFO    ] time= 12/06/2026 22:55:44
[2026-06-12 22:55:44,339.339 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 22:55:44,341.341 INFO    ] Checking for existing commands in stream...
[2026-06-12 22:55:44,411.411 INFO    ] No existing commands found in stream
[2026-06-12 22:55:49,425.425 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 22:55:49,428.428 INFO    ] Waiting 2.70 seconds before fallback handling...
[2026-06-12 22:55:52,493.493 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 22:55:52,494.494 INFO    ] Checking for system updates...
[2026-06-12 22:55:52,516.516 INFO    ] 200
[2026-06-12 22:55:52,517.517 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:55:52,547.547 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 22:55:52,549.549 INFO    ] No update needed
[2026-06-12 22:55:52,550.550 INFO    ] Checking for camera pi updates...
[2026-06-12 22:55:52,570.570 INFO    ] 200
[2026-06-12 22:55:52,571.571 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:55:52,596.596 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 22:55:52,734.734 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 22:55:52,736.736 INFO    ] No camera update needed
[2026-06-12 22:55:52,737.737 INFO    ] Script finished. Safe exiting...
[2026-06-12 22:55:52,738.738 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 22:55:52,741.741 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 22:55:52,744.744 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 22:55:54,783.783 INFO    ] ================================================
[2026-06-12 22:55:54,799.799 INFO    ] Launching Daemon at Fri Jun 12 22:55:54 IST 2026
[2026-06-12 22:55:54,809.809 INFO    ] ================================================
[2026-06-12 22:55:55,174.174 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 22:55:55
[2026-06-12 22:55:55,489.489 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 22:55:55,619.619 INFO    ] Initializing speech engine...
[2026-06-12 22:55:55,623.623 INFO    ] 2026-06-12 22:55:55
[2026-06-12 22:55:55,839.839 INFO    ] 2026-06-12 22:55:55
[2026-06-12 22:55:55,868.868 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 22:55:56,052.052 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 22:55:56,061.061 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 22:55:56,196.196 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 22:55:56,258.258 INFO    ] time= 12/06/2026 22:55:56
[2026-06-12 22:55:56,281.281 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 22:55:56,287.287 INFO    ] Checking for existing commands in stream...
[2026-06-12 22:55:56,354.354 INFO    ] No existing commands found in stream
[2026-06-12 22:56:01,364.364 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 22:56:01,367.367 INFO    ] Waiting 0.81 seconds before fallback handling...
[2026-06-12 22:56:02,484.484 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 22:56:02,485.485 INFO    ] Checking for system updates...
[2026-06-12 22:56:02,505.505 INFO    ] 200
[2026-06-12 22:56:02,507.507 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:56:02,536.536 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 22:56:02,538.538 INFO    ] No update needed
[2026-06-12 22:56:02,539.539 INFO    ] Checking for camera pi updates...
[2026-06-12 22:56:02,560.560 INFO    ] 200
[2026-06-12 22:56:02,561.561 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:56:02,584.584 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 22:56:02,613.613 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 22:56:02,615.615 INFO    ] No camera update needed
[2026-06-12 22:56:02,616.616 INFO    ] Script finished. Safe exiting...
[2026-06-12 22:56:02,617.617 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 22:56:02,620.620 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 22:56:02,623.623 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 22:56:04,662.662 INFO    ] ================================================
[2026-06-12 22:56:04,678.678 INFO    ] Launching Daemon at Fri Jun 12 22:56:04 IST 2026
[2026-06-12 22:56:04,689.689 INFO    ] ================================================
[2026-06-12 22:56:05,089.089 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 22:56:05
[2026-06-12 22:56:05,441.441 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 22:56:05,578.578 INFO    ] Initializing speech engine...
[2026-06-12 22:56:05,582.582 INFO    ] 2026-06-12 22:56:05
[2026-06-12 22:56:05,786.786 INFO    ] 2026-06-12 22:56:05
[2026-06-12 22:56:05,823.823 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 22:56:05,982.982 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 22:56:06,040.040 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 22:56:06,178.178 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 22:56:06,240.240 INFO    ] time= 12/06/2026 22:56:06
[2026-06-12 22:56:06,279.279 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 22:56:06,323.323 INFO    ] Checking for existing commands in stream...
[2026-06-12 22:56:06,403.403 INFO    ] No existing commands found in stream
[2026-06-12 22:56:11,417.417 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 22:56:11,420.420 INFO    ] Waiting 0.41 seconds before fallback handling...
[2026-06-12 22:56:12,181.181 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 22:56:12,182.182 INFO    ] Checking for system updates...
[2026-06-12 22:56:12,203.203 INFO    ] 200
[2026-06-12 22:56:12,204.204 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:56:12,234.234 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 22:56:12,236.236 INFO    ] No update needed
[2026-06-12 22:56:12,237.237 INFO    ] Checking for camera pi updates...
[2026-06-12 22:56:12,258.258 INFO    ] 200
[2026-06-12 22:56:12,260.260 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:56:12,286.286 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 22:56:12,337.337 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 22:56:12,339.339 INFO    ] No camera update needed
[2026-06-12 22:56:12,341.341 INFO    ] Script finished. Safe exiting...
[2026-06-12 22:56:12,342.342 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 22:56:12,345.345 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 22:56:12,348.348 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 22:56:14,386.386 INFO    ] ================================================
[2026-06-12 22:56:14,401.401 INFO    ] Launching Daemon at Fri Jun 12 22:56:14 IST 2026
[2026-06-12 22:56:14,412.412 INFO    ] ================================================
[2026-06-12 22:56:14,762.762 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 22:56:14
[2026-06-12 22:56:15,074.074 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 22:56:15,204.204 INFO    ] Initializing speech engine...
[2026-06-12 22:56:15,212.212 INFO    ] 2026-06-12 22:56:15
[2026-06-12 22:56:15,424.424 INFO    ] 2026-06-12 22:56:15
[2026-06-12 22:56:15,452.452 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 22:56:15,595.595 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 22:56:15,638.638 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 22:56:15,775.775 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 22:56:15,834.834 INFO    ] time= 12/06/2026 22:56:15
[2026-06-12 22:56:15,867.867 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 22:56:15,869.869 INFO    ] Checking for existing commands in stream...
[2026-06-12 22:56:15,941.941 INFO    ] No existing commands found in stream
[2026-06-12 22:56:20,955.955 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 22:56:20,958.958 INFO    ] Waiting 0.70 seconds before fallback handling...
[2026-06-12 22:56:22,063.063 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 22:56:22,065.065 INFO    ] Checking for system updates...
[2026-06-12 22:56:22,086.086 INFO    ] 200
[2026-06-12 22:56:22,087.087 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:56:22,118.118 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 22:56:22,119.119 INFO    ] No update needed
[2026-06-12 22:56:22,121.121 INFO    ] Checking for camera pi updates...
[2026-06-12 22:56:22,142.142 INFO    ] 200
[2026-06-12 22:56:22,144.144 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:56:22,169.169 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 22:56:22,221.221 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 22:56:22,223.223 INFO    ] No camera update needed
[2026-06-12 22:56:22,224.224 INFO    ] Script finished. Safe exiting...
[2026-06-12 22:56:22,226.226 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 22:56:22,229.229 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 22:56:22,232.232 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 22:56:24,271.271 INFO    ] ================================================
[2026-06-12 22:56:24,286.286 INFO    ] Launching Daemon at Fri Jun 12 22:56:24 IST 2026
[2026-06-12 22:56:24,297.297 INFO    ] ================================================
[2026-06-12 22:56:24,661.661 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 22:56:24
[2026-06-12 22:56:24,977.977 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 22:56:25,108.108 INFO    ] Initializing speech engine...
[2026-06-12 22:56:25,116.116 INFO    ] 2026-06-12 22:56:25
[2026-06-12 22:56:25,327.327 INFO    ] 2026-06-12 22:56:25
[2026-06-12 22:56:25,356.356 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 22:56:25,539.539 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 22:56:25,548.548 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 22:56:25,672.672 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 22:56:25,739.739 INFO    ] time= 12/06/2026 22:56:25
[2026-06-12 22:56:25,765.765 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 22:56:25,772.772 INFO    ] Checking for existing commands in stream...
[2026-06-12 22:56:25,838.838 INFO    ] No existing commands found in stream
[2026-06-12 22:56:30,852.852 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 22:56:30,855.855 INFO    ] Waiting 3.25 seconds before fallback handling...
[2026-06-12 22:56:34,493.493 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 22:56:34,495.495 INFO    ] Checking for system updates...
[2026-06-12 22:56:34,527.527 INFO    ] 200
[2026-06-12 22:56:34,529.529 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:56:34,558.558 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 22:56:34,560.560 INFO    ] No update needed
[2026-06-12 22:56:34,561.561 INFO    ] Checking for camera pi updates...
[2026-06-12 22:56:34,581.581 INFO    ] 200
[2026-06-12 22:56:34,582.582 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:56:34,607.607 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 22:56:34,672.672 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 22:56:34,673.673 INFO    ] No camera update needed
[2026-06-12 22:56:34,675.675 INFO    ] Script finished. Safe exiting...
[2026-06-12 22:56:34,676.676 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 22:56:34,679.679 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 22:56:34,682.682 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 22:56:36,719.719 INFO    ] ================================================
[2026-06-12 22:56:36,734.734 INFO    ] Launching Daemon at Fri Jun 12 22:56:36 IST 2026
[2026-06-12 22:56:36,745.745 INFO    ] ================================================
[2026-06-12 22:56:37,105.105 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 22:56:37
[2026-06-12 22:56:37,419.419 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 22:56:37,560.560 INFO    ] Initializing speech engine...
[2026-06-12 22:56:37,565.565 INFO    ] 2026-06-12 22:56:37
[2026-06-12 22:56:37,769.769 INFO    ] 2026-06-12 22:56:37
[2026-06-12 22:56:37,797.797 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 22:56:37,981.981 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 22:56:37,989.989 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 22:56:38,117.117 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 22:56:38,178.178 INFO    ] time= 12/06/2026 22:56:38
[2026-06-12 22:56:38,211.211 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 22:56:38,212.212 INFO    ] Checking for existing commands in stream...
[2026-06-12 22:56:38,308.308 INFO    ] No existing commands found in stream
[2026-06-12 22:56:43,317.317 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 22:56:43,320.320 INFO    ] Waiting 1.49 seconds before fallback handling...
[2026-06-12 22:56:45,162.162 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 22:56:45,163.163 INFO    ] Checking for system updates...
[2026-06-12 22:56:45,186.186 INFO    ] 200
[2026-06-12 22:56:45,188.188 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:56:45,221.221 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 22:56:45,222.222 INFO    ] No update needed
[2026-06-12 22:56:45,224.224 INFO    ] Checking for camera pi updates...
[2026-06-12 22:56:45,244.244 INFO    ] 200
[2026-06-12 22:56:45,245.245 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:56:45,271.271 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 22:56:45,321.321 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 22:56:45,323.323 INFO    ] No camera update needed
[2026-06-12 22:56:45,324.324 INFO    ] Script finished. Safe exiting...
[2026-06-12 22:56:45,326.326 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 22:56:45,329.329 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 22:56:45,332.332 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 22:56:47,372.372 INFO    ] ================================================
[2026-06-12 22:56:47,388.388 INFO    ] Launching Daemon at Fri Jun 12 22:56:47 IST 2026
[2026-06-12 22:56:47,398.398 INFO    ] ================================================
[2026-06-12 22:56:47,745.745 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 22:56:47
[2026-06-12 22:56:48,062.062 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 22:56:48,205.205 INFO    ] Initializing speech engine...
[2026-06-12 22:56:48,210.210 INFO    ] 2026-06-12 22:56:48
[2026-06-12 22:56:48,413.413 INFO    ] 2026-06-12 22:56:48
[2026-06-12 22:56:48,443.443 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 22:56:48,627.627 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 22:56:48,636.636 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 22:56:48,758.758 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 22:56:48,818.818 INFO    ] time= 12/06/2026 22:56:48
[2026-06-12 22:56:48,856.856 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 22:56:48,863.863 INFO    ] Checking for existing commands in stream...
[2026-06-12 22:56:48,953.953 INFO    ] No existing commands found in stream
[2026-06-12 22:56:53,967.967 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 22:56:53,970.970 INFO    ] Waiting 2.83 seconds before fallback handling...
[2026-06-12 22:56:57,222.222 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 22:56:57,223.223 INFO    ] Checking for system updates...
[2026-06-12 22:56:57,245.245 INFO    ] 200
[2026-06-12 22:56:57,246.246 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:56:57,277.277 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 22:56:57,278.278 INFO    ] No update needed
[2026-06-12 22:56:57,280.280 INFO    ] Checking for camera pi updates...
[2026-06-12 22:56:57,299.299 INFO    ] 200
[2026-06-12 22:56:57,301.301 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:56:57,327.327 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 22:56:57,390.390 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 22:56:57,391.391 INFO    ] No camera update needed
[2026-06-12 22:56:57,393.393 INFO    ] Script finished. Safe exiting...
[2026-06-12 22:56:57,394.394 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 22:56:57,397.397 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 22:56:57,399.399 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 22:56:59,437.437 INFO    ] ================================================
[2026-06-12 22:56:59,452.452 INFO    ] Launching Daemon at Fri Jun 12 22:56:59 IST 2026
[2026-06-12 22:56:59,463.463 INFO    ] ================================================
[2026-06-12 22:56:59,804.804 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 22:56:59
[2026-06-12 22:57:00,121.121 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 22:57:00,252.252 INFO    ] Initializing speech engine...
[2026-06-12 22:57:00,256.256 INFO    ] 2026-06-12 22:57:00
[2026-06-12 22:57:00,472.472 INFO    ] 2026-06-12 22:57:00
[2026-06-12 22:57:00,501.501 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 22:57:00,686.686 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 22:57:00,695.695 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 22:57:00,824.824 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 22:57:00,892.892 INFO    ] time= 12/06/2026 22:57:00
[2026-06-12 22:57:00,916.916 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 22:57:00,922.922 INFO    ] Checking for existing commands in stream...
[2026-06-12 22:57:00,989.989 INFO    ] No existing commands found in stream
[2026-06-12 22:57:06,003.003 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 22:57:06,006.006 INFO    ] Waiting 0.34 seconds before fallback handling...
[2026-06-12 22:57:06,705.705 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 22:57:06,707.707 INFO    ] Checking for system updates...
[2026-06-12 22:57:06,727.727 INFO    ] 200
[2026-06-12 22:57:06,729.729 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:57:06,758.758 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 22:57:06,760.760 INFO    ] No update needed
[2026-06-12 22:57:06,761.761 INFO    ] Checking for camera pi updates...
[2026-06-12 22:57:06,782.782 INFO    ] 200
[2026-06-12 22:57:06,783.783 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:57:06,806.806 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 22:57:06,856.856 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 22:57:06,857.857 INFO    ] No camera update needed
[2026-06-12 22:57:06,858.858 INFO    ] Script finished. Safe exiting...
[2026-06-12 22:57:06,860.860 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 22:57:06,863.863 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 22:57:06,865.865 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 22:57:08,904.904 INFO    ] ================================================
[2026-06-12 22:57:08,920.920 INFO    ] Launching Daemon at Fri Jun 12 22:57:08 IST 2026
[2026-06-12 22:57:08,931.931 INFO    ] ================================================
[2026-06-12 22:57:09,275.275 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 22:57:09
[2026-06-12 22:57:09,586.586 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 22:57:09,724.724 INFO    ] Initializing speech engine...
[2026-06-12 22:57:09,732.732 INFO    ] 2026-06-12 22:57:09
[2026-06-12 22:57:09,937.937 INFO    ] 2026-06-12 22:57:09
[2026-06-12 22:57:09,966.966 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 22:57:10,149.149 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 22:57:10,158.158 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 22:57:10,308.308 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 22:57:10,368.368 INFO    ] time= 12/06/2026 22:57:10
[2026-06-12 22:57:10,378.378 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 22:57:10,384.384 INFO    ] Checking for existing commands in stream...
[2026-06-12 22:57:10,451.451 INFO    ] No existing commands found in stream
[2026-06-12 22:57:15,464.464 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 22:57:15,467.467 INFO    ] Waiting 3.20 seconds before fallback handling...
[2026-06-12 22:57:19,042.042 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 22:57:19,044.044 INFO    ] Checking for system updates...
[2026-06-12 22:57:19,064.064 INFO    ] 200
[2026-06-12 22:57:19,065.065 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:57:19,095.095 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 22:57:19,097.097 INFO    ] No update needed
[2026-06-12 22:57:19,098.098 INFO    ] Checking for camera pi updates...
[2026-06-12 22:57:19,119.119 INFO    ] 200
[2026-06-12 22:57:19,121.121 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:57:19,144.144 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 22:57:19,223.223 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 22:57:19,225.225 INFO    ] No camera update needed
[2026-06-12 22:57:19,226.226 INFO    ] Script finished. Safe exiting...
[2026-06-12 22:57:19,227.227 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 22:57:19,230.230 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 22:57:19,233.233 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 22:57:21,271.271 INFO    ] ================================================
[2026-06-12 22:57:21,287.287 INFO    ] Launching Daemon at Fri Jun 12 22:57:21 IST 2026
[2026-06-12 22:57:21,298.298 INFO    ] ================================================
[2026-06-12 22:57:21,643.643 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 22:57:21
[2026-06-12 22:57:21,959.959 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 22:57:22,102.102 INFO    ] Initializing speech engine...
[2026-06-12 22:57:22,108.108 INFO    ] 2026-06-12 22:57:22
[2026-06-12 22:57:22,311.311 INFO    ] 2026-06-12 22:57:22
[2026-06-12 22:57:22,340.340 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 22:57:22,522.522 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 22:57:22,525.525 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 22:57:22,681.681 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 22:57:22,735.735 INFO    ] time= 12/06/2026 22:57:22
[2026-06-12 22:57:22,751.751 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 22:57:22,757.757 INFO    ] Checking for existing commands in stream...
[2026-06-12 22:57:22,823.823 INFO    ] No existing commands found in stream
[2026-06-12 22:57:27,847.847 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 22:57:27,850.850 INFO    ] Waiting 3.26 seconds before fallback handling...
[2026-06-12 22:57:31,501.501 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 22:57:31,503.503 INFO    ] Checking for system updates...
[2026-06-12 22:57:31,531.531 INFO    ] 200
[2026-06-12 22:57:31,533.533 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:57:31,574.574 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 22:57:31,576.576 INFO    ] No update needed
[2026-06-12 22:57:31,578.578 INFO    ] Checking for camera pi updates...
[2026-06-12 22:57:31,604.604 INFO    ] 200
[2026-06-12 22:57:31,606.606 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:57:31,635.635 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 22:57:31,692.692 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 22:57:31,694.694 INFO    ] No camera update needed
[2026-06-12 22:57:31,696.696 INFO    ] Script finished. Safe exiting...
[2026-06-12 22:57:31,697.697 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 22:57:31,701.701 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 22:57:31,705.705 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 22:57:33,737.737 INFO    ] ================================================
[2026-06-12 22:57:33,759.759 INFO    ] Launching Daemon at Fri Jun 12 22:57:33 IST 2026
[2026-06-12 22:57:33,776.776 INFO    ] ================================================
[2026-06-12 22:57:34,107.107 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 22:57:34
[2026-06-12 22:57:34,423.423 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 22:57:34,558.558 INFO    ] Initializing speech engine...
[2026-06-12 22:57:34,566.566 INFO    ] 2026-06-12 22:57:34
[2026-06-12 22:57:34,765.765 INFO    ] 2026-06-12 22:57:34
[2026-06-12 22:57:34,813.813 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 22:57:34,964.964 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 22:57:34,974.974 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 22:57:35,129.129 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 22:57:35,170.170 INFO    ] time= 12/06/2026 22:57:35
[2026-06-12 22:57:35,226.226 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 22:57:35,260.260 INFO    ] Checking for existing commands in stream...
[2026-06-12 22:57:35,340.340 INFO    ] No existing commands found in stream
[2026-06-12 22:57:40,349.349 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 22:57:40,352.352 INFO    ] Waiting 2.69 seconds before fallback handling...
[2026-06-12 22:57:43,489.489 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 22:57:43,490.490 INFO    ] Checking for system updates...
[2026-06-12 22:57:43,511.511 INFO    ] 200
[2026-06-12 22:57:43,513.513 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:57:43,543.543 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 22:57:43,544.544 INFO    ] No update needed
[2026-06-12 22:57:43,545.545 INFO    ] Checking for camera pi updates...
[2026-06-12 22:57:43,565.565 INFO    ] 200
[2026-06-12 22:57:43,566.566 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:57:43,591.591 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 22:57:43,633.633 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 22:57:43,635.635 INFO    ] No camera update needed
[2026-06-12 22:57:43,636.636 INFO    ] Script finished. Safe exiting...
[2026-06-12 22:57:43,637.637 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 22:57:43,641.641 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 22:57:43,644.644 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 22:57:45,682.682 INFO    ] ================================================
[2026-06-12 22:57:45,697.697 INFO    ] Launching Daemon at Fri Jun 12 22:57:45 IST 2026
[2026-06-12 22:57:45,708.708 INFO    ] ================================================
[2026-06-12 22:57:46,049.049 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 22:57:46
[2026-06-12 22:57:46,361.361 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 22:57:46,504.504 INFO    ] Initializing speech engine...
[2026-06-12 22:57:46,509.509 INFO    ] 2026-06-12 22:57:46
[2026-06-12 22:57:46,715.715 INFO    ] 2026-06-12 22:57:46
[2026-06-12 22:57:46,744.744 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 22:57:46,931.931 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 22:57:46,941.941 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 22:57:47,064.064 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 22:57:47,115.115 INFO    ] time= 12/06/2026 22:57:47
[2026-06-12 22:57:47,155.155 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 22:57:47,166.166 INFO    ] Checking for existing commands in stream...
[2026-06-12 22:57:47,239.239 INFO    ] No existing commands found in stream
[2026-06-12 22:57:52,253.253 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 22:57:52,256.256 INFO    ] Waiting 2.66 seconds before fallback handling...
[2026-06-12 22:57:55,300.300 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 22:57:55,302.302 INFO    ] Checking for system updates...
[2026-06-12 22:57:55,323.323 INFO    ] 200
[2026-06-12 22:57:55,325.325 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:57:55,355.355 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 22:57:55,356.356 INFO    ] No update needed
[2026-06-12 22:57:55,357.357 INFO    ] Checking for camera pi updates...
[2026-06-12 22:57:55,376.376 INFO    ] 200
[2026-06-12 22:57:55,377.377 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:57:55,405.405 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 22:57:55,549.549 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 22:57:55,551.551 INFO    ] No camera update needed
[2026-06-12 22:57:55,552.552 INFO    ] Script finished. Safe exiting...
[2026-06-12 22:57:55,553.553 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 22:57:55,556.556 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 22:57:55,559.559 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 22:57:57,597.597 INFO    ] ================================================
[2026-06-12 22:57:57,613.613 INFO    ] Launching Daemon at Fri Jun 12 22:57:57 IST 2026
[2026-06-12 22:57:57,624.624 INFO    ] ================================================
[2026-06-12 22:57:57,984.984 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 22:57:57
[2026-06-12 22:57:58,301.301 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 22:57:58,446.446 INFO    ] Initializing speech engine...
[2026-06-12 22:57:58,451.451 INFO    ] 2026-06-12 22:57:58
[2026-06-12 22:57:58,655.655 INFO    ] 2026-06-12 22:57:58
[2026-06-12 22:57:58,683.683 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 22:57:58,867.867 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 22:57:58,876.876 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 22:57:59,004.004 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 22:57:59,071.071 INFO    ] time= 12/06/2026 22:57:59
[2026-06-12 22:57:59,096.096 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 22:57:59,101.101 INFO    ] Checking for existing commands in stream...
[2026-06-12 22:57:59,192.192 INFO    ] No existing commands found in stream
[2026-06-12 22:58:04,201.201 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 22:58:04,204.204 INFO    ] Waiting 0.25 seconds before fallback handling...
[2026-06-12 22:58:04,808.808 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 22:58:04,809.809 INFO    ] Checking for system updates...
[2026-06-12 22:58:04,830.830 INFO    ] 200
[2026-06-12 22:58:04,831.831 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:58:04,872.872 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 22:58:04,874.874 INFO    ] No update needed
[2026-06-12 22:58:04,875.875 INFO    ] Checking for camera pi updates...
[2026-06-12 22:58:04,894.894 INFO    ] 200
[2026-06-12 22:58:04,895.895 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:58:04,918.918 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 22:58:04,976.976 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 22:58:04,977.977 INFO    ] No camera update needed
[2026-06-12 22:58:04,978.978 INFO    ] Script finished. Safe exiting...
[2026-06-12 22:58:04,979.979 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 22:58:04,983.983 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 22:58:04,985.985 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 22:58:07,023.023 INFO    ] ================================================
[2026-06-12 22:58:07,043.043 INFO    ] Launching Daemon at Fri Jun 12 22:58:07 IST 2026
[2026-06-12 22:58:07,055.055 INFO    ] ================================================
[2026-06-12 22:58:07,423.423 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 22:58:07
[2026-06-12 22:58:07,739.739 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 22:58:07,871.871 INFO    ] Initializing speech engine...
[2026-06-12 22:58:07,879.879 INFO    ] 2026-06-12 22:58:07
[2026-06-12 22:58:08,093.093 INFO    ] 2026-06-12 22:58:08
[2026-06-12 22:58:08,121.121 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 22:58:08,307.307 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 22:58:08,316.316 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 22:58:08,462.462 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 22:58:08,516.516 INFO    ] time= 12/06/2026 22:58:08
[2026-06-12 22:58:08,538.538 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 22:58:08,545.545 INFO    ] Checking for existing commands in stream...
[2026-06-12 22:58:08,612.612 INFO    ] No existing commands found in stream
[2026-06-12 22:58:13,621.621 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 22:58:13,624.624 INFO    ] Waiting 0.61 seconds before fallback handling...
[2026-06-12 22:58:14,611.611 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 22:58:14,612.612 INFO    ] Checking for system updates...
[2026-06-12 22:58:14,632.632 INFO    ] 200
[2026-06-12 22:58:14,634.634 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:58:14,666.666 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 22:58:14,668.668 INFO    ] No update needed
[2026-06-12 22:58:14,669.669 INFO    ] Checking for camera pi updates...
[2026-06-12 22:58:14,689.689 INFO    ] 200
[2026-06-12 22:58:14,691.691 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:58:14,714.714 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 22:58:14,759.759 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 22:58:14,761.761 INFO    ] No camera update needed
[2026-06-12 22:58:14,762.762 INFO    ] Script finished. Safe exiting...
[2026-06-12 22:58:14,763.763 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 22:58:14,766.766 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 22:58:14,769.769 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 22:58:16,810.810 INFO    ] ================================================
[2026-06-12 22:58:16,825.825 INFO    ] Launching Daemon at Fri Jun 12 22:58:16 IST 2026
[2026-06-12 22:58:16,836.836 INFO    ] ================================================
[2026-06-12 22:58:17,176.176 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 22:58:17
[2026-06-12 22:58:17,492.492 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 22:58:17,627.627 INFO    ] Initializing speech engine...
[2026-06-12 22:58:17,631.631 INFO    ] 2026-06-12 22:58:17
[2026-06-12 22:58:17,860.860 INFO    ] 2026-06-12 22:58:17
[2026-06-12 22:58:17,895.895 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 22:58:18,092.092 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 22:58:18,102.102 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 22:58:18,234.234 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 22:58:18,275.275 INFO    ] time= 12/06/2026 22:58:18
[2026-06-12 22:58:18,277.277 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 22:58:18,278.278 INFO    ] Checking for existing commands in stream...
[2026-06-12 22:58:18,337.337 INFO    ] No existing commands found in stream
[2026-06-12 22:58:23,349.349 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 22:58:23,352.352 INFO    ] Waiting 0.05 seconds before fallback handling...
[2026-06-12 22:58:23,781.781 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 22:58:23,783.783 INFO    ] Checking for system updates...
[2026-06-12 22:58:23,803.803 INFO    ] 200
[2026-06-12 22:58:23,805.805 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:58:23,837.837 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 22:58:23,838.838 INFO    ] No update needed
[2026-06-12 22:58:23,839.839 INFO    ] Checking for camera pi updates...
[2026-06-12 22:58:23,860.860 INFO    ] 200
[2026-06-12 22:58:23,861.861 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:58:23,884.884 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 22:58:23,928.928 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 22:58:23,929.929 INFO    ] No camera update needed
[2026-06-12 22:58:23,930.930 INFO    ] Script finished. Safe exiting...
[2026-06-12 22:58:23,932.932 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 22:58:23,935.935 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 22:58:23,937.937 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 22:58:25,975.975 INFO    ] ================================================
[2026-06-12 22:58:25,990.990 INFO    ] Launching Daemon at Fri Jun 12 22:58:25 IST 2026
[2026-06-12 22:58:26,000.000 INFO    ] ================================================
[2026-06-12 22:58:26,361.361 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 22:58:26
[2026-06-12 22:58:26,673.673 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 22:58:26,804.804 INFO    ] Initializing speech engine...
[2026-06-12 22:58:26,818.818 INFO    ] 2026-06-12 22:58:26
[2026-06-12 22:58:27,022.022 INFO    ] 2026-06-12 22:58:27
[2026-06-12 22:58:27,050.050 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 22:58:27,234.234 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 22:58:27,243.243 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 22:58:27,382.382 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 22:58:27,438.438 INFO    ] time= 12/06/2026 22:58:27
[2026-06-12 22:58:27,462.462 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 22:58:27,468.468 INFO    ] Checking for existing commands in stream...
[2026-06-12 22:58:27,535.535 INFO    ] No existing commands found in stream
[2026-06-12 22:58:32,548.548 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 22:58:32,550.550 INFO    ] Waiting 2.67 seconds before fallback handling...
[2026-06-12 22:58:35,618.618 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 22:58:35,619.619 INFO    ] Checking for system updates...
[2026-06-12 22:58:35,640.640 INFO    ] 200
[2026-06-12 22:58:35,642.642 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:58:35,672.672 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 22:58:35,673.673 INFO    ] No update needed
[2026-06-12 22:58:35,675.675 INFO    ] Checking for camera pi updates...
[2026-06-12 22:58:35,695.695 INFO    ] 200
[2026-06-12 22:58:35,697.697 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:58:35,721.721 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 22:58:35,761.761 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 22:58:35,763.763 INFO    ] No camera update needed
[2026-06-12 22:58:35,764.764 INFO    ] Script finished. Safe exiting...
[2026-06-12 22:58:35,765.765 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 22:58:35,769.769 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 22:58:35,772.772 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 22:58:37,810.810 INFO    ] ================================================
[2026-06-12 22:58:37,825.825 INFO    ] Launching Daemon at Fri Jun 12 22:58:37 IST 2026
[2026-06-12 22:58:37,836.836 INFO    ] ================================================
[2026-06-12 22:58:38,171.171 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 22:58:38
[2026-06-12 22:58:38,489.489 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 22:58:38,632.632 INFO    ] Initializing speech engine...
[2026-06-12 22:58:38,637.637 INFO    ] 2026-06-12 22:58:38
[2026-06-12 22:58:38,841.841 INFO    ] 2026-06-12 22:58:38
[2026-06-12 22:58:38,871.871 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 22:58:38,993.993 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 22:58:39,056.056 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 22:58:39,190.190 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 22:58:39,247.247 INFO    ] time= 12/06/2026 22:58:39
[2026-06-12 22:58:39,284.284 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 22:58:39,290.290 INFO    ] Checking for existing commands in stream...
[2026-06-12 22:58:39,357.357 INFO    ] No existing commands found in stream
[2026-06-12 22:58:44,362.362 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 22:58:44,365.365 INFO    ] Waiting 3.57 seconds before fallback handling...
[2026-06-12 22:58:48,295.295 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 22:58:48,297.297 INFO    ] Checking for system updates...
[2026-06-12 22:58:48,318.318 INFO    ] 200
[2026-06-12 22:58:48,319.319 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:58:48,350.350 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 22:58:48,352.352 INFO    ] No update needed
[2026-06-12 22:58:48,353.353 INFO    ] Checking for camera pi updates...
[2026-06-12 22:58:48,374.374 INFO    ] 200
[2026-06-12 22:58:48,375.375 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:58:48,401.401 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 22:58:48,448.448 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 22:58:48,449.449 INFO    ] No camera update needed
[2026-06-12 22:58:48,451.451 INFO    ] Script finished. Safe exiting...
[2026-06-12 22:58:48,452.452 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 22:58:48,455.455 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 22:58:48,458.458 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 22:58:50,497.497 INFO    ] ================================================
[2026-06-12 22:58:50,513.513 INFO    ] Launching Daemon at Fri Jun 12 22:58:50 IST 2026
[2026-06-12 22:58:50,524.524 INFO    ] ================================================
[2026-06-12 22:58:50,865.865 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 22:58:50
[2026-06-12 22:58:51,177.177 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 22:58:51,308.308 INFO    ] Initializing speech engine...
[2026-06-12 22:58:51,313.313 INFO    ] 2026-06-12 22:58:51
[2026-06-12 22:58:51,542.542 INFO    ] 2026-06-12 22:58:51
[2026-06-12 22:58:51,572.572 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 22:58:51,768.768 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 22:58:51,771.771 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 22:58:51,915.915 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 22:58:51,987.987 INFO    ] time= 12/06/2026 22:58:51
[2026-06-12 22:58:52,015.015 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 22:58:52,022.022 INFO    ] Checking for existing commands in stream...
[2026-06-12 22:58:52,093.093 INFO    ] No existing commands found in stream
[2026-06-12 22:58:57,102.102 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 22:58:57,104.104 INFO    ] Waiting 2.31 seconds before fallback handling...
[2026-06-12 22:58:59,746.746 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 22:58:59,748.748 INFO    ] Checking for system updates...
[2026-06-12 22:58:59,769.769 INFO    ] 200
[2026-06-12 22:58:59,770.770 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:58:59,800.800 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 22:58:59,802.802 INFO    ] No update needed
[2026-06-12 22:58:59,803.803 INFO    ] Checking for camera pi updates...
[2026-06-12 22:58:59,822.822 INFO    ] 200
[2026-06-12 22:58:59,823.823 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:58:59,847.847 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 22:58:59,893.893 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 22:58:59,894.894 INFO    ] No camera update needed
[2026-06-12 22:58:59,896.896 INFO    ] Script finished. Safe exiting...
[2026-06-12 22:58:59,897.897 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 22:58:59,900.900 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 22:58:59,902.902 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 22:59:01,965.965 INFO    ] ================================================
[2026-06-12 22:59:02,995.995 INFO    ] Launching Daemon at Fri Jun 12 22:59:01 IST 2026
[2026-06-12 22:59:02,008.008 INFO    ] ================================================
[2026-06-12 22:59:02,400.400 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 22:59:02
[2026-06-12 22:59:02,779.779 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 22:59:02,935.935 INFO    ] Initializing speech engine...
[2026-06-12 22:59:02,938.938 INFO    ] 2026-06-12 22:59:02
[2026-06-12 22:59:03,139.139 INFO    ] 2026-06-12 22:59:03
[2026-06-12 22:59:03,184.184 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 22:59:03,336.336 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 22:59:03,399.399 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 22:59:03,539.539 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 22:59:03,603.603 INFO    ] time= 12/06/2026 22:59:03
[2026-06-12 22:59:03,632.632 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 22:59:03,638.638 INFO    ] Checking for existing commands in stream...
[2026-06-12 22:59:03,707.707 INFO    ] No existing commands found in stream
[2026-06-12 22:59:08,716.716 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 22:59:08,718.718 INFO    ] Waiting 1.00 seconds before fallback handling...
[2026-06-12 22:59:10,077.077 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 22:59:10,079.079 INFO    ] Checking for system updates...
[2026-06-12 22:59:10,108.108 INFO    ] 200
[2026-06-12 22:59:10,109.109 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:59:10,138.138 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 22:59:10,140.140 INFO    ] No update needed
[2026-06-12 22:59:10,141.141 INFO    ] Checking for camera pi updates...
[2026-06-12 22:59:10,160.160 INFO    ] 200
[2026-06-12 22:59:10,162.162 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:59:10,185.185 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 22:59:10,228.228 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 22:59:10,230.230 INFO    ] No camera update needed
[2026-06-12 22:59:10,231.231 INFO    ] Script finished. Safe exiting...
[2026-06-12 22:59:10,232.232 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 22:59:10,235.235 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 22:59:10,238.238 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 22:59:12,276.276 INFO    ] ================================================
[2026-06-12 22:59:12,291.291 INFO    ] Launching Daemon at Fri Jun 12 22:59:12 IST 2026
[2026-06-12 22:59:12,301.301 INFO    ] ================================================
[2026-06-12 22:59:12,631.631 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 22:59:12
[2026-06-12 22:59:12,942.942 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 22:59:13,084.084 INFO    ] Initializing speech engine...
[2026-06-12 22:59:13,090.090 INFO    ] 2026-06-12 22:59:13
[2026-06-12 22:59:13,291.291 INFO    ] 2026-06-12 22:59:13
[2026-06-12 22:59:13,321.321 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 22:59:13,505.505 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 22:59:13,514.514 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 22:59:13,653.653 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 22:59:13,710.710 INFO    ] time= 12/06/2026 22:59:13
[2026-06-12 22:59:13,735.735 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 22:59:13,740.740 INFO    ] Checking for existing commands in stream...
[2026-06-12 22:59:13,805.805 INFO    ] No existing commands found in stream
[2026-06-12 22:59:18,816.816 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 22:59:18,818.818 INFO    ] Waiting 0.21 seconds before fallback handling...
[2026-06-12 22:59:19,400.400 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 22:59:19,401.401 INFO    ] Checking for system updates...
[2026-06-12 22:59:19,421.421 INFO    ] 200
[2026-06-12 22:59:19,423.423 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:59:19,453.453 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 22:59:19,454.454 INFO    ] No update needed
[2026-06-12 22:59:19,455.455 INFO    ] Checking for camera pi updates...
[2026-06-12 22:59:19,474.474 INFO    ] 200
[2026-06-12 22:59:19,476.476 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:59:19,498.498 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 22:59:19,549.549 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 22:59:19,551.551 INFO    ] No camera update needed
[2026-06-12 22:59:19,552.552 INFO    ] Script finished. Safe exiting...
[2026-06-12 22:59:19,553.553 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 22:59:19,556.556 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 22:59:19,559.559 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 22:59:21,599.599 INFO    ] ================================================
[2026-06-12 22:59:21,613.613 INFO    ] Launching Daemon at Fri Jun 12 22:59:21 IST 2026
[2026-06-12 22:59:21,624.624 INFO    ] ================================================
[2026-06-12 22:59:21,978.978 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 22:59:21
[2026-06-12 22:59:22,291.291 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 22:59:22,434.434 INFO    ] Initializing speech engine...
[2026-06-12 22:59:22,439.439 INFO    ] 2026-06-12 22:59:22
[2026-06-12 22:59:22,643.643 INFO    ] 2026-06-12 22:59:22
[2026-06-12 22:59:22,672.672 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 22:59:22,861.861 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 22:59:22,870.870 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 22:59:22,991.991 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 22:59:23,047.047 INFO    ] time= 12/06/2026 22:59:22
[2026-06-12 22:59:23,086.086 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 22:59:23,092.092 INFO    ] Checking for existing commands in stream...
[2026-06-12 22:59:23,180.180 INFO    ] No existing commands found in stream
[2026-06-12 22:59:28,191.191 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 22:59:28,193.193 INFO    ] Waiting 2.41 seconds before fallback handling...
[2026-06-12 22:59:30,974.974 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 22:59:30,975.975 INFO    ] Checking for system updates...
[2026-06-12 22:59:30,996.996 INFO    ] 200
[2026-06-12 22:59:30,997.997 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:59:31,030.030 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 22:59:31,031.031 INFO    ] No update needed
[2026-06-12 22:59:31,032.032 INFO    ] Checking for camera pi updates...
[2026-06-12 22:59:31,055.055 INFO    ] 200
[2026-06-12 22:59:31,057.057 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:59:31,080.080 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 22:59:31,132.132 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 22:59:31,133.133 INFO    ] No camera update needed
[2026-06-12 22:59:31,135.135 INFO    ] Script finished. Safe exiting...
[2026-06-12 22:59:31,136.136 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 22:59:31,139.139 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 22:59:31,142.142 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 22:59:33,175.175 INFO    ] ================================================
[2026-06-12 22:59:33,190.190 INFO    ] Launching Daemon at Fri Jun 12 22:59:33 IST 2026
[2026-06-12 22:59:33,201.201 INFO    ] ================================================
[2026-06-12 22:59:33,521.521 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 22:59:33
[2026-06-12 22:59:33,836.836 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 22:59:33,973.973 INFO    ] Initializing speech engine...
[2026-06-12 22:59:33,982.982 INFO    ] 2026-06-12 22:59:33
[2026-06-12 22:59:34,190.190 INFO    ] 2026-06-12 22:59:34
[2026-06-12 22:59:34,218.218 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 22:59:34,404.404 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 22:59:34,408.408 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 22:59:34,542.542 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 22:59:34,599.599 INFO    ] time= 12/06/2026 22:59:34
[2026-06-12 22:59:34,638.638 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 22:59:34,645.645 INFO    ] Checking for existing commands in stream...
[2026-06-12 22:59:34,710.710 INFO    ] No existing commands found in stream
[2026-06-12 22:59:39,721.721 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 22:59:39,724.724 INFO    ] Waiting 0.04 seconds before fallback handling...
[2026-06-12 22:59:40,126.126 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 22:59:40,128.128 INFO    ] Checking for system updates...
[2026-06-12 22:59:40,148.148 INFO    ] 200
[2026-06-12 22:59:40,150.150 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:59:40,180.180 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 22:59:40,182.182 INFO    ] No update needed
[2026-06-12 22:59:40,183.183 INFO    ] Checking for camera pi updates...
[2026-06-12 22:59:40,213.213 INFO    ] 200
[2026-06-12 22:59:40,215.215 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:59:40,240.240 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 22:59:40,312.312 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 22:59:40,313.313 INFO    ] No camera update needed
[2026-06-12 22:59:40,314.314 INFO    ] Script finished. Safe exiting...
[2026-06-12 22:59:40,315.315 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 22:59:40,318.318 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 22:59:40,321.321 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 22:59:42,359.359 INFO    ] ================================================
[2026-06-12 22:59:42,374.374 INFO    ] Launching Daemon at Fri Jun 12 22:59:42 IST 2026
[2026-06-12 22:59:42,385.385 INFO    ] ================================================
[2026-06-12 22:59:42,751.751 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 22:59:42
[2026-06-12 22:59:43,069.069 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 22:59:43,206.206 INFO    ] Initializing speech engine...
[2026-06-12 22:59:43,214.214 INFO    ] 2026-06-12 22:59:43
[2026-06-12 22:59:43,441.441 INFO    ] 2026-06-12 22:59:43
[2026-06-12 22:59:43,472.472 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 22:59:43,671.671 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 22:59:43,681.681 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 22:59:43,813.813 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 22:59:43,875.875 INFO    ] time= 12/06/2026 22:59:43
[2026-06-12 22:59:43,919.919 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 22:59:43,921.921 INFO    ] Checking for existing commands in stream...
[2026-06-12 22:59:43,996.996 INFO    ] No existing commands found in stream
[2026-06-12 22:59:49,007.007 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 22:59:49,009.009 INFO    ] Waiting 1.02 seconds before fallback handling...
[2026-06-12 22:59:50,433.433 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 22:59:50,434.434 INFO    ] Checking for system updates...
[2026-06-12 22:59:50,455.455 INFO    ] 200
[2026-06-12 22:59:50,457.457 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:59:50,487.487 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 22:59:50,488.488 INFO    ] No update needed
[2026-06-12 22:59:50,489.489 INFO    ] Checking for camera pi updates...
[2026-06-12 22:59:50,509.509 INFO    ] 200
[2026-06-12 22:59:50,511.511 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 22:59:50,534.534 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 22:59:50,574.574 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 22:59:50,576.576 INFO    ] No camera update needed
[2026-06-12 22:59:50,577.577 INFO    ] Script finished. Safe exiting...
[2026-06-12 22:59:50,578.578 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 22:59:50,581.581 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 22:59:50,584.584 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 22:59:52,621.621 INFO    ] ================================================
[2026-06-12 22:59:52,636.636 INFO    ] Launching Daemon at Fri Jun 12 22:59:52 IST 2026
[2026-06-12 22:59:52,647.647 INFO    ] ================================================
[2026-06-12 22:59:52,999.999 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 22:59:52
[2026-06-12 22:59:53,314.314 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 22:59:53,444.444 INFO    ] Initializing speech engine...
[2026-06-12 22:59:53,448.448 INFO    ] 2026-06-12 22:59:53
[2026-06-12 22:59:53,666.666 INFO    ] 2026-06-12 22:59:53
[2026-06-12 22:59:53,694.694 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 22:59:53,880.880 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 22:59:53,888.888 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 22:59:54,020.020 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 22:59:54,087.087 INFO    ] time= 12/06/2026 22:59:54
[2026-06-12 22:59:54,111.111 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 22:59:54,117.117 INFO    ] Checking for existing commands in stream...
[2026-06-12 22:59:54,185.185 INFO    ] No existing commands found in stream
[2026-06-12 22:59:59,204.204 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 22:59:59,207.207 INFO    ] Waiting 1.24 seconds before fallback handling...
[2026-06-12 23:00:00,850.850 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 23:00:00,851.851 INFO    ] Checking for system updates...
[2026-06-12 23:00:00,873.873 INFO    ] 200
[2026-06-12 23:00:00,874.874 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:00:00,904.904 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 23:00:00,905.905 INFO    ] No update needed
[2026-06-12 23:00:00,907.907 INFO    ] Checking for camera pi updates...
[2026-06-12 23:00:00,926.926 INFO    ] 200
[2026-06-12 23:00:00,927.927 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:00:00,951.951 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 23:00:01,099.099 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 23:00:01,101.101 INFO    ] No camera update needed
[2026-06-12 23:00:01,102.102 INFO    ] Script finished. Safe exiting...
[2026-06-12 23:00:01,103.103 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 23:00:01,106.106 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 23:00:01,109.109 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 23:00:03,176.176 INFO    ] ================================================
[2026-06-12 23:00:03,212.212 INFO    ] Launching Daemon at Fri Jun 12 23:00:03 IST 2026
[2026-06-12 23:00:03,252.252 INFO    ] ================================================
[2026-06-12 23:00:04,056.056 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 23:00:04
[2026-06-12 23:00:04,406.406 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 23:00:04,544.544 INFO    ] Initializing speech engine...
[2026-06-12 23:00:04,556.556 INFO    ] 2026-06-12 23:00:04
[2026-06-12 23:00:04,775.775 INFO    ] 2026-06-12 23:00:04
[2026-06-12 23:00:04,805.805 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 23:00:04,937.937 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 23:00:05,004.004 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 23:00:05,146.146 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 23:00:05,204.204 INFO    ] time= 12/06/2026 23:00:05
[2026-06-12 23:00:05,237.237 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 23:00:05,254.254 INFO    ] Checking for existing commands in stream...
[2026-06-12 23:00:05,330.330 INFO    ] No existing commands found in stream
[2026-06-12 23:00:10,341.341 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 23:00:10,344.344 INFO    ] Waiting 1.73 seconds before fallback handling...
[2026-06-12 23:00:12,467.467 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 23:00:12,469.469 INFO    ] Checking for system updates...
[2026-06-12 23:00:12,490.490 INFO    ] 200
[2026-06-12 23:00:12,491.491 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:00:12,524.524 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 23:00:12,525.525 INFO    ] No update needed
[2026-06-12 23:00:12,526.526 INFO    ] Checking for camera pi updates...
[2026-06-12 23:00:12,546.546 INFO    ] 200
[2026-06-12 23:00:12,548.548 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:00:12,571.571 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 23:00:12,613.613 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 23:00:12,614.614 INFO    ] No camera update needed
[2026-06-12 23:00:12,615.615 INFO    ] Script finished. Safe exiting...
[2026-06-12 23:00:12,617.617 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 23:00:12,620.620 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 23:00:12,622.622 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 23:00:14,661.661 INFO    ] ================================================
[2026-06-12 23:00:14,676.676 INFO    ] Launching Daemon at Fri Jun 12 23:00:14 IST 2026
[2026-06-12 23:00:14,687.687 INFO    ] ================================================
[2026-06-12 23:00:15,017.017 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 23:00:15
[2026-06-12 23:00:15,328.328 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 23:00:15,483.483 INFO    ] Initializing speech engine...
[2026-06-12 23:00:15,487.487 INFO    ] 2026-06-12 23:00:15
[2026-06-12 23:00:15,697.697 INFO    ] 2026-06-12 23:00:15
[2026-06-12 23:00:15,727.727 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 23:00:15,915.915 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 23:00:15,925.925 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 23:00:16,066.066 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 23:00:16,124.124 INFO    ] time= 12/06/2026 23:00:16
[2026-06-12 23:00:16,148.148 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 23:00:16,155.155 INFO    ] Checking for existing commands in stream...
[2026-06-12 23:00:16,222.222 INFO    ] No existing commands found in stream
[2026-06-12 23:00:21,237.237 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 23:00:21,240.240 INFO    ] Waiting 0.91 seconds before fallback handling...
[2026-06-12 23:00:22,538.538 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 23:00:22,540.540 INFO    ] Checking for system updates...
[2026-06-12 23:00:22,561.561 INFO    ] 200
[2026-06-12 23:00:22,562.562 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:00:22,594.594 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 23:00:22,595.595 INFO    ] No update needed
[2026-06-12 23:00:22,597.597 INFO    ] Checking for camera pi updates...
[2026-06-12 23:00:22,617.617 INFO    ] 200
[2026-06-12 23:00:22,618.618 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:00:22,641.641 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 23:00:22,700.700 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 23:00:22,701.701 INFO    ] No camera update needed
[2026-06-12 23:00:22,703.703 INFO    ] Script finished. Safe exiting...
[2026-06-12 23:00:22,704.704 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 23:00:22,707.707 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 23:00:22,709.709 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 23:00:24,748.748 INFO    ] ================================================
[2026-06-12 23:00:24,764.764 INFO    ] Launching Daemon at Fri Jun 12 23:00:24 IST 2026
[2026-06-12 23:00:24,775.775 INFO    ] ================================================
[2026-06-12 23:00:25,130.130 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 23:00:25
[2026-06-12 23:00:25,447.447 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 23:00:25,577.577 INFO    ] Initializing speech engine...
[2026-06-12 23:00:25,582.582 INFO    ] 2026-06-12 23:00:25
[2026-06-12 23:00:25,800.800 INFO    ] 2026-06-12 23:00:25
[2026-06-12 23:00:25,830.830 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 23:00:26,015.015 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 23:00:26,018.018 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 23:00:26,157.157 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 23:00:26,225.225 INFO    ] time= 12/06/2026 23:00:26
[2026-06-12 23:00:26,249.249 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 23:00:26,251.251 INFO    ] Checking for existing commands in stream...
[2026-06-12 23:00:26,324.324 INFO    ] No existing commands found in stream
[2026-06-12 23:00:31,338.338 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 23:00:31,341.341 INFO    ] Waiting 3.52 seconds before fallback handling...
[2026-06-12 23:00:35,250.250 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 23:00:35,251.251 INFO    ] Checking for system updates...
[2026-06-12 23:00:35,274.274 INFO    ] 200
[2026-06-12 23:00:35,275.275 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:00:35,308.308 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 23:00:35,310.310 INFO    ] No update needed
[2026-06-12 23:00:35,311.311 INFO    ] Checking for camera pi updates...
[2026-06-12 23:00:35,332.332 INFO    ] 200
[2026-06-12 23:00:35,333.333 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:00:35,356.356 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 23:00:35,411.411 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 23:00:35,413.413 INFO    ] No camera update needed
[2026-06-12 23:00:35,414.414 INFO    ] Script finished. Safe exiting...
[2026-06-12 23:00:35,415.415 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 23:00:35,419.419 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 23:00:35,422.422 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 23:00:37,462.462 INFO    ] ================================================
[2026-06-12 23:00:37,477.477 INFO    ] Launching Daemon at Fri Jun 12 23:00:37 IST 2026
[2026-06-12 23:00:37,488.488 INFO    ] ================================================
[2026-06-12 23:00:37,844.844 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 23:00:37
[2026-06-12 23:00:38,180.180 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 23:00:38,322.322 INFO    ] Initializing speech engine...
[2026-06-12 23:00:38,334.334 INFO    ] 2026-06-12 23:00:38
[2026-06-12 23:00:38,547.547 INFO    ] 2026-06-12 23:00:38
[2026-06-12 23:00:38,576.576 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 23:00:38,706.706 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 23:00:38,764.764 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 23:00:38,903.903 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 23:00:38,967.967 INFO    ] time= 12/06/2026 23:00:38
[2026-06-12 23:00:38,995.995 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 23:00:39,002.002 INFO    ] Checking for existing commands in stream...
[2026-06-12 23:00:39,070.070 INFO    ] No existing commands found in stream
[2026-06-12 23:00:44,084.084 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 23:00:44,088.088 INFO    ] Waiting 2.34 seconds before fallback handling...
[2026-06-12 23:00:48,694.694 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 23:00:48,710.710 INFO    ] Checking for system updates...
[2026-06-12 23:00:48,746.746 INFO    ] 200
[2026-06-12 23:00:48,748.748 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:00:48,802.802 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 23:00:48,804.804 INFO    ] No update needed
[2026-06-12 23:00:48,807.807 INFO    ] Checking for camera pi updates...
[2026-06-12 23:00:48,841.841 INFO    ] 200
[2026-06-12 23:00:48,843.843 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:00:48,884.884 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 23:00:48,939.939 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 23:00:48,941.941 INFO    ] No camera update needed
[2026-06-12 23:00:48,944.944 INFO    ] Script finished. Safe exiting...
[2026-06-12 23:00:48,946.946 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 23:00:48,952.952 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 23:00:48,957.957 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 23:00:51,996.996 INFO    ] ================================================
[2026-06-12 23:00:51,012.012 INFO    ] Launching Daemon at Fri Jun 12 23:00:51 IST 2026
[2026-06-12 23:00:51,025.025 INFO    ] ================================================
[2026-06-12 23:00:51,392.392 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 23:00:51
[2026-06-12 23:00:51,730.730 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 23:00:51,882.882 INFO    ] Initializing speech engine...
[2026-06-12 23:00:51,887.887 INFO    ] 2026-06-12 23:00:51
[2026-06-12 23:00:52,096.096 INFO    ] 2026-06-12 23:00:52
[2026-06-12 23:00:52,125.125 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 23:00:52,313.313 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 23:00:52,323.323 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 23:00:52,469.469 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 23:00:52,522.522 INFO    ] time= 12/06/2026 23:00:52
[2026-06-12 23:00:52,545.545 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 23:00:52,552.552 INFO    ] Checking for existing commands in stream...
[2026-06-12 23:00:52,619.619 INFO    ] No existing commands found in stream
[2026-06-12 23:00:57,629.629 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 23:00:57,632.632 INFO    ] Waiting 2.04 seconds before fallback handling...
[2026-06-12 23:01:00,104.104 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 23:01:00,106.106 INFO    ] Checking for system updates...
[2026-06-12 23:01:00,127.127 INFO    ] 200
[2026-06-12 23:01:00,128.128 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:01:00,158.158 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 23:01:00,160.160 INFO    ] No update needed
[2026-06-12 23:01:00,161.161 INFO    ] Checking for camera pi updates...
[2026-06-12 23:01:00,182.182 INFO    ] 200
[2026-06-12 23:01:00,184.184 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:01:00,209.209 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 23:01:00,281.281 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 23:01:00,283.283 INFO    ] No camera update needed
[2026-06-12 23:01:00,284.284 INFO    ] Script finished. Safe exiting...
[2026-06-12 23:01:00,286.286 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 23:01:00,289.289 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 23:01:00,292.292 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 23:01:02,325.325 INFO    ] ================================================
[2026-06-12 23:01:02,334.334 INFO    ] Launching Daemon at Fri Jun 12 23:01:02 IST 2026
[2026-06-12 23:01:02,340.340 INFO    ] ================================================
[2026-06-12 23:01:02,673.673 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 23:01:02
[2026-06-12 23:01:02,991.991 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 23:01:03,136.136 INFO    ] Initializing speech engine...
[2026-06-12 23:01:03,141.141 INFO    ] 2026-06-12 23:01:03
[2026-06-12 23:01:03,345.345 INFO    ] 2026-06-12 23:01:03
[2026-06-12 23:01:03,374.374 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 23:01:03,555.555 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 23:01:03,559.559 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 23:01:03,691.691 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 23:01:03,759.759 INFO    ] time= 12/06/2026 23:01:03
[2026-06-12 23:01:03,786.786 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 23:01:03,792.792 INFO    ] Checking for existing commands in stream...
[2026-06-12 23:01:03,854.854 INFO    ] No existing commands found in stream
[2026-06-12 23:01:08,862.862 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 23:01:08,865.865 INFO    ] Waiting 3.21 seconds before fallback handling...
[2026-06-12 23:01:12,455.455 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 23:01:12,456.456 INFO    ] Checking for system updates...
[2026-06-12 23:01:12,477.477 INFO    ] 200
[2026-06-12 23:01:12,478.478 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:01:12,508.508 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 23:01:12,509.509 INFO    ] No update needed
[2026-06-12 23:01:12,511.511 INFO    ] Checking for camera pi updates...
[2026-06-12 23:01:12,530.530 INFO    ] 200
[2026-06-12 23:01:12,531.531 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:01:12,554.554 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 23:01:12,610.610 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 23:01:12,612.612 INFO    ] No camera update needed
[2026-06-12 23:01:12,614.614 INFO    ] Script finished. Safe exiting...
[2026-06-12 23:01:12,616.616 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 23:01:12,620.620 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 23:01:12,623.623 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 23:01:14,661.661 INFO    ] ================================================
[2026-06-12 23:01:14,679.679 INFO    ] Launching Daemon at Fri Jun 12 23:01:14 IST 2026
[2026-06-12 23:01:14,691.691 INFO    ] ================================================
[2026-06-12 23:01:15,035.035 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 23:01:15
[2026-06-12 23:01:15,374.374 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 23:01:15,523.523 INFO    ] Initializing speech engine...
[2026-06-12 23:01:15,530.530 INFO    ] 2026-06-12 23:01:15
[2026-06-12 23:01:15,737.737 INFO    ] 2026-06-12 23:01:15
[2026-06-12 23:01:15,766.766 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 23:01:15,911.911 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 23:01:15,957.957 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 23:01:16,095.095 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 23:01:16,160.160 INFO    ] time= 12/06/2026 23:01:16
[2026-06-12 23:01:16,190.190 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 23:01:16,235.235 INFO    ] Checking for existing commands in stream...
[2026-06-12 23:01:16,313.313 INFO    ] No existing commands found in stream
[2026-06-12 23:01:21,327.327 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 23:01:21,331.331 INFO    ] Waiting 2.30 seconds before fallback handling...
[2026-06-12 23:01:24,002.002 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 23:01:24,004.004 INFO    ] Checking for system updates...
[2026-06-12 23:01:24,025.025 INFO    ] 200
[2026-06-12 23:01:24,026.026 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:01:24,056.056 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 23:01:24,057.057 INFO    ] No update needed
[2026-06-12 23:01:24,059.059 INFO    ] Checking for camera pi updates...
[2026-06-12 23:01:24,079.079 INFO    ] 200
[2026-06-12 23:01:24,080.080 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:01:24,104.104 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 23:01:24,155.155 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 23:01:24,156.156 INFO    ] No camera update needed
[2026-06-12 23:01:24,158.158 INFO    ] Script finished. Safe exiting...
[2026-06-12 23:01:24,159.159 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 23:01:24,162.162 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 23:01:24,165.165 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 23:01:26,204.204 INFO    ] ================================================
[2026-06-12 23:01:26,219.219 INFO    ] Launching Daemon at Fri Jun 12 23:01:26 IST 2026
[2026-06-12 23:01:26,230.230 INFO    ] ================================================
[2026-06-12 23:01:26,581.581 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 23:01:26
[2026-06-12 23:01:26,920.920 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 23:01:27,072.072 INFO    ] Initializing speech engine...
[2026-06-12 23:01:27,078.078 INFO    ] 2026-06-12 23:01:27
[2026-06-12 23:01:27,286.286 INFO    ] 2026-06-12 23:01:27
[2026-06-12 23:01:27,315.315 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 23:01:27,499.499 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 23:01:27,508.508 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 23:01:27,653.653 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 23:01:27,705.705 INFO    ] time= 12/06/2026 23:01:27
[2026-06-12 23:01:27,728.728 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 23:01:27,735.735 INFO    ] Checking for existing commands in stream...
[2026-06-12 23:01:27,825.825 INFO    ] No existing commands found in stream
[2026-06-12 23:01:32,839.839 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 23:01:32,843.843 INFO    ] Waiting 2.67 seconds before fallback handling...
[2026-06-12 23:01:35,876.876 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 23:01:35,878.878 INFO    ] Checking for system updates...
[2026-06-12 23:01:35,900.900 INFO    ] 200
[2026-06-12 23:01:35,902.902 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:01:35,935.935 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 23:01:35,936.936 INFO    ] No update needed
[2026-06-12 23:01:35,938.938 INFO    ] Checking for camera pi updates...
[2026-06-12 23:01:35,957.957 INFO    ] 200
[2026-06-12 23:01:35,959.959 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:01:35,982.982 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 23:01:36,029.029 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 23:01:36,031.031 INFO    ] No camera update needed
[2026-06-12 23:01:36,032.032 INFO    ] Script finished. Safe exiting...
[2026-06-12 23:01:36,034.034 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 23:01:36,037.037 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 23:01:36,040.040 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 23:01:38,080.080 INFO    ] ================================================
[2026-06-12 23:01:38,095.095 INFO    ] Launching Daemon at Fri Jun 12 23:01:38 IST 2026
[2026-06-12 23:01:38,106.106 INFO    ] ================================================
[2026-06-12 23:01:38,464.464 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 23:01:38
[2026-06-12 23:01:38,782.782 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 23:01:38,934.934 INFO    ] Initializing speech engine...
[2026-06-12 23:01:38,940.940 INFO    ] 2026-06-12 23:01:38
[2026-06-12 23:01:39,151.151 INFO    ] 2026-06-12 23:01:39
[2026-06-12 23:01:39,181.181 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 23:01:39,368.368 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 23:01:39,378.378 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 23:01:39,507.507 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 23:01:39,568.568 INFO    ] time= 12/06/2026 23:01:39
[2026-06-12 23:01:39,602.602 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 23:01:39,609.609 INFO    ] Checking for existing commands in stream...
[2026-06-12 23:01:39,677.677 INFO    ] No existing commands found in stream
[2026-06-12 23:01:44,692.692 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 23:01:44,695.695 INFO    ] Waiting 1.12 seconds before fallback handling...
[2026-06-12 23:01:46,165.165 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 23:01:46,167.167 INFO    ] Checking for system updates...
[2026-06-12 23:01:46,187.187 INFO    ] 200
[2026-06-12 23:01:46,189.189 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:01:46,219.219 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 23:01:46,221.221 INFO    ] No update needed
[2026-06-12 23:01:46,222.222 INFO    ] Checking for camera pi updates...
[2026-06-12 23:01:46,242.242 INFO    ] 200
[2026-06-12 23:01:46,243.243 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:01:46,267.267 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 23:01:46,311.311 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 23:01:46,312.312 INFO    ] No camera update needed
[2026-06-12 23:01:46,314.314 INFO    ] Script finished. Safe exiting...
[2026-06-12 23:01:46,315.315 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 23:01:46,318.318 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 23:01:46,321.321 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 23:01:48,362.362 INFO    ] ================================================
[2026-06-12 23:01:48,377.377 INFO    ] Launching Daemon at Fri Jun 12 23:01:48 IST 2026
[2026-06-12 23:01:48,388.388 INFO    ] ================================================
[2026-06-12 23:01:48,727.727 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 23:01:48
[2026-06-12 23:01:49,044.044 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 23:01:49,174.174 INFO    ] Initializing speech engine...
[2026-06-12 23:01:49,178.178 INFO    ] 2026-06-12 23:01:49
[2026-06-12 23:01:49,394.394 INFO    ] 2026-06-12 23:01:49
[2026-06-12 23:01:49,423.423 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 23:01:49,608.608 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 23:01:49,612.612 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 23:01:49,746.746 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 23:01:49,805.805 INFO    ] time= 12/06/2026 23:01:49
[2026-06-12 23:01:49,837.837 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 23:01:49,843.843 INFO    ] Checking for existing commands in stream...
[2026-06-12 23:01:49,910.910 INFO    ] No existing commands found in stream
[2026-06-12 23:01:54,919.919 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 23:01:54,922.922 INFO    ] Waiting 3.65 seconds before fallback handling...
[2026-06-12 23:01:58,965.965 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 23:01:58,966.966 INFO    ] Checking for system updates...
[2026-06-12 23:01:58,986.986 INFO    ] 200
[2026-06-12 23:01:58,988.988 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:01:59,018.018 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 23:01:59,019.019 INFO    ] No update needed
[2026-06-12 23:01:59,021.021 INFO    ] Checking for camera pi updates...
[2026-06-12 23:01:59,040.040 INFO    ] 200
[2026-06-12 23:01:59,041.041 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:01:59,064.064 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 23:01:59,112.112 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 23:01:59,113.113 INFO    ] No camera update needed
[2026-06-12 23:01:59,114.114 INFO    ] Script finished. Safe exiting...
[2026-06-12 23:01:59,116.116 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 23:01:59,119.119 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 23:01:59,122.122 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 23:02:01,160.160 INFO    ] ================================================
[2026-06-12 23:02:01,175.175 INFO    ] Launching Daemon at Fri Jun 12 23:02:01 IST 2026
[2026-06-12 23:02:01,186.186 INFO    ] ================================================
[2026-06-12 23:02:01,517.517 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 23:02:01
[2026-06-12 23:02:01,913.913 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 23:02:02,080.080 INFO    ] Initializing speech engine...
[2026-06-12 23:02:02,086.086 INFO    ] 2026-06-12 23:02:02
[2026-06-12 23:02:02,320.320 INFO    ] 2026-06-12 23:02:02
[2026-06-12 23:02:02,374.374 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 23:02:02,516.516 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 23:02:02,523.523 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 23:02:02,652.652 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 23:02:02,662.662 INFO    ] time= 12/06/2026 23:02:02
[2026-06-12 23:02:02,678.678 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 23:02:02,683.683 INFO    ] Checking for existing commands in stream...
[2026-06-12 23:02:02,803.803 INFO    ] No existing commands found in stream
[2026-06-12 23:02:07,817.817 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 23:02:07,820.820 INFO    ] Waiting 2.09 seconds before fallback handling...
[2026-06-12 23:02:10,274.274 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 23:02:10,275.275 INFO    ] Checking for system updates...
[2026-06-12 23:02:10,295.295 INFO    ] 200
[2026-06-12 23:02:10,297.297 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:02:10,326.326 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 23:02:10,327.327 INFO    ] No update needed
[2026-06-12 23:02:10,329.329 INFO    ] Checking for camera pi updates...
[2026-06-12 23:02:10,348.348 INFO    ] 200
[2026-06-12 23:02:10,349.349 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:02:10,372.372 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 23:02:10,408.408 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 23:02:10,410.410 INFO    ] No camera update needed
[2026-06-12 23:02:10,411.411 INFO    ] Script finished. Safe exiting...
[2026-06-12 23:02:10,412.412 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 23:02:10,415.415 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 23:02:10,418.418 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 23:02:12,456.456 INFO    ] ================================================
[2026-06-12 23:02:12,471.471 INFO    ] Launching Daemon at Fri Jun 12 23:02:12 IST 2026
[2026-06-12 23:02:12,481.481 INFO    ] ================================================
[2026-06-12 23:02:12,832.832 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 23:02:12
[2026-06-12 23:02:13,160.160 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 23:02:13,308.308 INFO    ] Initializing speech engine...
[2026-06-12 23:02:13,313.313 INFO    ] 2026-06-12 23:02:13
[2026-06-12 23:02:13,519.519 INFO    ] 2026-06-12 23:02:13
[2026-06-12 23:02:13,548.548 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 23:02:13,733.733 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 23:02:13,743.743 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 23:02:13,876.876 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 23:02:13,938.938 INFO    ] time= 12/06/2026 23:02:13
[2026-06-12 23:02:13,963.963 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 23:02:13,969.969 INFO    ] Checking for existing commands in stream...
[2026-06-12 23:02:14,060.060 INFO    ] No existing commands found in stream
[2026-06-12 23:02:19,075.075 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 23:02:19,078.078 INFO    ] Waiting 3.15 seconds before fallback handling...
[2026-06-12 23:02:22,609.609 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 23:02:22,611.611 INFO    ] Checking for system updates...
[2026-06-12 23:02:22,631.631 INFO    ] 200
[2026-06-12 23:02:22,633.633 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:02:22,663.663 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 23:02:22,664.664 INFO    ] No update needed
[2026-06-12 23:02:22,665.665 INFO    ] Checking for camera pi updates...
[2026-06-12 23:02:22,685.685 INFO    ] 200
[2026-06-12 23:02:22,686.686 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:02:22,709.709 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 23:02:22,762.762 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 23:02:22,764.764 INFO    ] No camera update needed
[2026-06-12 23:02:22,766.766 INFO    ] Script finished. Safe exiting...
[2026-06-12 23:02:22,768.768 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 23:02:22,772.772 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 23:02:22,775.775 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 23:02:24,815.815 INFO    ] ================================================
[2026-06-12 23:02:24,830.830 INFO    ] Launching Daemon at Fri Jun 12 23:02:24 IST 2026
[2026-06-12 23:02:24,847.847 INFO    ] ================================================
[2026-06-12 23:02:25,185.185 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 23:02:25
[2026-06-12 23:02:25,504.504 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 23:02:25,640.640 INFO    ] Initializing speech engine...
[2026-06-12 23:02:25,644.644 INFO    ] 2026-06-12 23:02:25
[2026-06-12 23:02:25,861.861 INFO    ] 2026-06-12 23:02:25
[2026-06-12 23:02:25,889.889 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 23:02:26,106.106 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 23:02:26,110.110 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 23:02:26,257.257 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 23:02:26,316.316 INFO    ] time= 12/06/2026 23:02:26
[2026-06-12 23:02:26,354.354 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 23:02:26,356.356 INFO    ] Checking for existing commands in stream...
[2026-06-12 23:02:26,432.432 INFO    ] No existing commands found in stream
[2026-06-12 23:02:31,443.443 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 23:02:31,446.446 INFO    ] Waiting 2.81 seconds before fallback handling...
[2026-06-12 23:02:34,611.611 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 23:02:34,612.612 INFO    ] Checking for system updates...
[2026-06-12 23:02:34,632.632 INFO    ] 200
[2026-06-12 23:02:34,634.634 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:02:34,663.663 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 23:02:34,665.665 INFO    ] No update needed
[2026-06-12 23:02:34,666.666 INFO    ] Checking for camera pi updates...
[2026-06-12 23:02:34,685.685 INFO    ] 200
[2026-06-12 23:02:34,686.686 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:02:34,709.709 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 23:02:34,741.741 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 23:02:34,742.742 INFO    ] No camera update needed
[2026-06-12 23:02:34,744.744 INFO    ] Script finished. Safe exiting...
[2026-06-12 23:02:34,745.745 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 23:02:34,748.748 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 23:02:34,751.751 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 23:02:36,789.789 INFO    ] ================================================
[2026-06-12 23:02:36,804.804 INFO    ] Launching Daemon at Fri Jun 12 23:02:36 IST 2026
[2026-06-12 23:02:36,815.815 INFO    ] ================================================
[2026-06-12 23:02:37,148.148 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 23:02:37
[2026-06-12 23:02:37,464.464 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 23:02:37,609.609 INFO    ] Initializing speech engine...
[2026-06-12 23:02:37,614.614 INFO    ] 2026-06-12 23:02:37
[2026-06-12 23:02:37,818.818 INFO    ] 2026-06-12 23:02:37
[2026-06-12 23:02:37,848.848 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 23:02:38,032.032 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 23:02:38,041.041 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 23:02:38,168.168 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 23:02:38,229.229 INFO    ] time= 12/06/2026 23:02:38
[2026-06-12 23:02:38,261.261 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 23:02:38,267.267 INFO    ] Checking for existing commands in stream...
[2026-06-12 23:02:38,334.334 INFO    ] No existing commands found in stream
[2026-06-12 23:02:43,348.348 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 23:02:43,351.351 INFO    ] Waiting 1.72 seconds before fallback handling...
[2026-06-12 23:02:45,450.450 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 23:02:45,452.452 INFO    ] Checking for system updates...
[2026-06-12 23:02:45,474.474 INFO    ] 200
[2026-06-12 23:02:45,476.476 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:02:45,509.509 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 23:02:45,511.511 INFO    ] No update needed
[2026-06-12 23:02:45,512.512 INFO    ] Checking for camera pi updates...
[2026-06-12 23:02:45,531.531 INFO    ] 200
[2026-06-12 23:02:45,533.533 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:02:45,556.556 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 23:02:45,599.599 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 23:02:45,600.600 INFO    ] No camera update needed
[2026-06-12 23:02:45,602.602 INFO    ] Script finished. Safe exiting...
[2026-06-12 23:02:45,603.603 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 23:02:45,606.606 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 23:02:45,608.608 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 23:02:47,648.648 INFO    ] ================================================
[2026-06-12 23:02:47,663.663 INFO    ] Launching Daemon at Fri Jun 12 23:02:47 IST 2026
[2026-06-12 23:02:47,674.674 INFO    ] ================================================
[2026-06-12 23:02:48,008.008 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 23:02:48
[2026-06-12 23:02:48,319.319 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 23:02:48,460.460 INFO    ] Initializing speech engine...
[2026-06-12 23:02:48,465.465 INFO    ] 2026-06-12 23:02:48
[2026-06-12 23:02:48,684.684 INFO    ] 2026-06-12 23:02:48
[2026-06-12 23:02:48,714.714 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 23:02:48,849.849 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 23:02:48,902.902 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 23:02:49,059.059 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 23:02:49,108.108 INFO    ] time= 12/06/2026 23:02:49
[2026-06-12 23:02:49,151.151 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 23:02:49,174.174 INFO    ] Checking for existing commands in stream...
[2026-06-12 23:02:49,245.245 INFO    ] No existing commands found in stream
[2026-06-12 23:02:54,254.254 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 23:02:54,257.257 INFO    ] Waiting 1.07 seconds before fallback handling...
[2026-06-12 23:02:55,678.678 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 23:02:55,680.680 INFO    ] Checking for system updates...
[2026-06-12 23:02:55,702.702 INFO    ] 200
[2026-06-12 23:02:55,704.704 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:02:55,734.734 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 23:02:55,736.736 INFO    ] No update needed
[2026-06-12 23:02:55,737.737 INFO    ] Checking for camera pi updates...
[2026-06-12 23:02:55,757.757 INFO    ] 200
[2026-06-12 23:02:55,758.758 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:02:55,782.782 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 23:02:55,808.808 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 23:02:55,809.809 INFO    ] No camera update needed
[2026-06-12 23:02:55,810.810 INFO    ] Script finished. Safe exiting...
[2026-06-12 23:02:55,812.812 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 23:02:55,815.815 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 23:02:55,817.817 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 23:02:57,856.856 INFO    ] ================================================
[2026-06-12 23:02:57,872.872 INFO    ] Launching Daemon at Fri Jun 12 23:02:57 IST 2026
[2026-06-12 23:02:57,883.883 INFO    ] ================================================
[2026-06-12 23:02:58,228.228 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 23:02:58
[2026-06-12 23:02:58,540.540 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 23:02:58,673.673 INFO    ] Initializing speech engine...
[2026-06-12 23:02:58,677.677 INFO    ] 2026-06-12 23:02:58
[2026-06-12 23:02:58,907.907 INFO    ] 2026-06-12 23:02:58
[2026-06-12 23:02:58,938.938 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 23:02:59,136.136 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 23:02:59,140.140 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 23:02:59,285.285 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 23:02:59,352.352 INFO    ] time= 12/06/2026 23:02:59
[2026-06-12 23:02:59,386.386 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 23:02:59,393.393 INFO    ] Checking for existing commands in stream...
[2026-06-12 23:02:59,465.465 INFO    ] No existing commands found in stream
[2026-06-12 23:03:04,500.500 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 23:03:04,503.503 INFO    ] Waiting 1.01 seconds before fallback handling...
[2026-06-12 23:03:05,912.912 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 23:03:05,913.913 INFO    ] Checking for system updates...
[2026-06-12 23:03:05,933.933 INFO    ] 200
[2026-06-12 23:03:05,935.935 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:03:05,977.977 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 23:03:05,978.978 INFO    ] No update needed
[2026-06-12 23:03:05,979.979 INFO    ] Checking for camera pi updates...
[2026-06-12 23:03:06,000.000 INFO    ] 200
[2026-06-12 23:03:06,001.001 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:03:06,024.024 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 23:03:06,066.066 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 23:03:06,067.067 INFO    ] No camera update needed
[2026-06-12 23:03:06,068.068 INFO    ] Script finished. Safe exiting...
[2026-06-12 23:03:06,070.070 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 23:03:06,073.073 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 23:03:06,076.076 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 23:03:08,113.113 INFO    ] ================================================
[2026-06-12 23:03:08,134.134 INFO    ] Launching Daemon at Fri Jun 12 23:03:08 IST 2026
[2026-06-12 23:03:08,145.145 INFO    ] ================================================
[2026-06-12 23:03:08,509.509 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 23:03:08
[2026-06-12 23:03:08,827.827 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 23:03:08,963.963 INFO    ] Initializing speech engine...
[2026-06-12 23:03:08,966.966 INFO    ] 2026-06-12 23:03:08
[2026-06-12 23:03:09,183.183 INFO    ] 2026-06-12 23:03:09
[2026-06-12 23:03:09,212.212 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 23:03:09,400.400 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 23:03:09,409.409 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 23:03:09,532.532 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 23:03:09,588.588 INFO    ] time= 12/06/2026 23:03:09
[2026-06-12 23:03:09,630.630 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 23:03:09,636.636 INFO    ] Checking for existing commands in stream...
[2026-06-12 23:03:09,752.752 INFO    ] No existing commands found in stream
[2026-06-12 23:03:14,762.762 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 23:03:14,765.765 INFO    ] Waiting 0.26 seconds before fallback handling...
[2026-06-12 23:03:15,383.383 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 23:03:15,385.385 INFO    ] Checking for system updates...
[2026-06-12 23:03:15,405.405 INFO    ] 200
[2026-06-12 23:03:15,407.407 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:03:15,438.438 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 23:03:15,440.440 INFO    ] No update needed
[2026-06-12 23:03:15,441.441 INFO    ] Checking for camera pi updates...
[2026-06-12 23:03:15,460.460 INFO    ] 200
[2026-06-12 23:03:15,462.462 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:03:15,486.486 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 23:03:15,545.545 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 23:03:15,546.546 INFO    ] No camera update needed
[2026-06-12 23:03:15,547.547 INFO    ] Script finished. Safe exiting...
[2026-06-12 23:03:15,548.548 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 23:03:15,552.552 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 23:03:15,554.554 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 23:03:17,592.592 INFO    ] ================================================
[2026-06-12 23:03:17,607.607 INFO    ] Launching Daemon at Fri Jun 12 23:03:17 IST 2026
[2026-06-12 23:03:17,618.618 INFO    ] ================================================
[2026-06-12 23:03:17,981.981 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 23:03:17
[2026-06-12 23:03:18,297.297 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 23:03:18,440.440 INFO    ] Initializing speech engine...
[2026-06-12 23:03:18,446.446 INFO    ] 2026-06-12 23:03:18
[2026-06-12 23:03:18,660.660 INFO    ] 2026-06-12 23:03:18
[2026-06-12 23:03:18,692.692 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 23:03:18,885.885 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 23:03:18,895.895 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 23:03:19,031.031 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 23:03:19,098.098 INFO    ] time= 12/06/2026 23:03:19
[2026-06-12 23:03:19,135.135 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 23:03:19,142.142 INFO    ] Checking for existing commands in stream...
[2026-06-12 23:03:19,234.234 INFO    ] No existing commands found in stream
[2026-06-12 23:03:24,248.248 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 23:03:24,251.251 INFO    ] Waiting 0.91 seconds before fallback handling...
[2026-06-12 23:03:25,541.541 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 23:03:25,542.542 INFO    ] Checking for system updates...
[2026-06-12 23:03:25,563.563 INFO    ] 200
[2026-06-12 23:03:25,564.564 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:03:25,596.596 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 23:03:25,598.598 INFO    ] No update needed
[2026-06-12 23:03:25,599.599 INFO    ] Checking for camera pi updates...
[2026-06-12 23:03:25,618.618 INFO    ] 200
[2026-06-12 23:03:25,619.619 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:03:25,644.644 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 23:03:25,708.708 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 23:03:25,709.709 INFO    ] No camera update needed
[2026-06-12 23:03:25,711.711 INFO    ] Script finished. Safe exiting...
[2026-06-12 23:03:25,712.712 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 23:03:25,715.715 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 23:03:25,717.717 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 23:03:27,758.758 INFO    ] ================================================
[2026-06-12 23:03:27,774.774 INFO    ] Launching Daemon at Fri Jun 12 23:03:27 IST 2026
[2026-06-12 23:03:27,785.785 INFO    ] ================================================
[2026-06-12 23:03:28,129.129 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 23:03:28
[2026-06-12 23:03:28,444.444 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 23:03:28,593.593 INFO    ] Initializing speech engine...
[2026-06-12 23:03:28,599.599 INFO    ] 2026-06-12 23:03:28
[2026-06-12 23:03:28,813.813 INFO    ] 2026-06-12 23:03:28
[2026-06-12 23:03:28,843.843 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 23:03:29,040.040 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 23:03:29,043.043 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 23:03:29,188.188 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 23:03:29,258.258 INFO    ] time= 12/06/2026 23:03:29
[2026-06-12 23:03:29,286.286 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 23:03:29,288.288 INFO    ] Checking for existing commands in stream...
[2026-06-12 23:03:29,389.389 INFO    ] No existing commands found in stream
[2026-06-12 23:03:34,398.398 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 23:03:34,401.401 INFO    ] Waiting 2.86 seconds before fallback handling...
[2026-06-12 23:03:37,651.651 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 23:03:37,653.653 INFO    ] Checking for system updates...
[2026-06-12 23:03:37,674.674 INFO    ] 200
[2026-06-12 23:03:37,676.676 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:03:37,707.707 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 23:03:37,709.709 INFO    ] No update needed
[2026-06-12 23:03:37,710.710 INFO    ] Checking for camera pi updates...
[2026-06-12 23:03:37,729.729 INFO    ] 200
[2026-06-12 23:03:37,731.731 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:03:37,755.755 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 23:03:37,809.809 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 23:03:37,810.810 INFO    ] No camera update needed
[2026-06-12 23:03:37,812.812 INFO    ] Script finished. Safe exiting...
[2026-06-12 23:03:37,813.813 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 23:03:37,816.816 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 23:03:37,819.819 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 23:03:39,857.857 INFO    ] ================================================
[2026-06-12 23:03:39,873.873 INFO    ] Launching Daemon at Fri Jun 12 23:03:39 IST 2026
[2026-06-12 23:03:39,884.884 INFO    ] ================================================
[2026-06-12 23:03:40,243.243 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 23:03:40
[2026-06-12 23:03:40,576.576 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 23:03:40,714.714 INFO    ] Initializing speech engine...
[2026-06-12 23:03:40,728.728 INFO    ] 2026-06-12 23:03:40
[2026-06-12 23:03:40,938.938 INFO    ] 2026-06-12 23:03:40
[2026-06-12 23:03:40,966.966 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 23:03:41,150.150 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 23:03:41,159.159 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 23:03:41,299.299 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 23:03:41,356.356 INFO    ] time= 12/06/2026 23:03:41
[2026-06-12 23:03:41,381.381 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 23:03:41,386.386 INFO    ] Checking for existing commands in stream...
[2026-06-12 23:03:41,454.454 INFO    ] No existing commands found in stream
[2026-06-12 23:03:46,468.468 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 23:03:46,472.472 INFO    ] Waiting 2.29 seconds before fallback handling...
[2026-06-12 23:03:49,173.173 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 23:03:49,174.174 INFO    ] Checking for system updates...
[2026-06-12 23:03:49,196.196 INFO    ] 200
[2026-06-12 23:03:49,197.197 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:03:49,230.230 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 23:03:49,232.232 INFO    ] No update needed
[2026-06-12 23:03:49,233.233 INFO    ] Checking for camera pi updates...
[2026-06-12 23:03:49,253.253 INFO    ] 200
[2026-06-12 23:03:49,255.255 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:03:49,278.278 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 23:03:49,345.345 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 23:03:49,347.347 INFO    ] No camera update needed
[2026-06-12 23:03:49,348.348 INFO    ] Script finished. Safe exiting...
[2026-06-12 23:03:49,350.350 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 23:03:49,353.353 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 23:03:49,356.356 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 23:03:51,395.395 INFO    ] ================================================
[2026-06-12 23:03:51,411.411 INFO    ] Launching Daemon at Fri Jun 12 23:03:51 IST 2026
[2026-06-12 23:03:51,427.427 INFO    ] ================================================
[2026-06-12 23:03:51,813.813 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 23:03:51
[2026-06-12 23:03:52,147.147 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 23:03:52,287.287 INFO    ] Initializing speech engine...
[2026-06-12 23:03:52,300.300 INFO    ] 2026-06-12 23:03:52
[2026-06-12 23:03:52,512.512 INFO    ] 2026-06-12 23:03:52
[2026-06-12 23:03:52,542.542 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 23:03:52,728.728 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 23:03:52,738.738 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 23:03:52,884.884 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 23:03:52,938.938 INFO    ] time= 12/06/2026 23:03:52
[2026-06-12 23:03:52,960.960 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 23:03:52,967.967 INFO    ] Checking for existing commands in stream...
[2026-06-12 23:03:53,034.034 INFO    ] No existing commands found in stream
[2026-06-12 23:03:58,048.048 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 23:03:58,052.052 INFO    ] Waiting 2.17 seconds before fallback handling...
[2026-06-12 23:04:00,591.591 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 23:04:00,593.593 INFO    ] Checking for system updates...
[2026-06-12 23:04:00,614.614 INFO    ] 200
[2026-06-12 23:04:00,615.615 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:04:00,649.649 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 23:04:00,651.651 INFO    ] No update needed
[2026-06-12 23:04:00,652.652 INFO    ] Checking for camera pi updates...
[2026-06-12 23:04:00,671.671 INFO    ] 200
[2026-06-12 23:04:00,673.673 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:04:00,697.697 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 23:04:00,751.751 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 23:04:00,753.753 INFO    ] No camera update needed
[2026-06-12 23:04:00,754.754 INFO    ] Script finished. Safe exiting...
[2026-06-12 23:04:00,756.756 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 23:04:00,759.759 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 23:04:00,762.762 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 23:04:02,796.796 INFO    ] ================================================
[2026-06-12 23:04:02,813.813 INFO    ] Launching Daemon at Fri Jun 12 23:04:02 IST 2026
[2026-06-12 23:04:02,824.824 INFO    ] ================================================
[2026-06-12 23:04:03,182.182 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 23:04:03
[2026-06-12 23:04:03,500.500 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 23:04:03,632.632 INFO    ] Initializing speech engine...
[2026-06-12 23:04:03,636.636 INFO    ] 2026-06-12 23:04:03
[2026-06-12 23:04:03,853.853 INFO    ] 2026-06-12 23:04:03
[2026-06-12 23:04:03,881.881 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 23:04:04,064.064 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 23:04:04,068.068 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 23:04:04,197.197 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 23:04:04,252.252 INFO    ] time= 12/06/2026 23:04:04
[2026-06-12 23:04:04,292.292 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 23:04:04,297.297 INFO    ] Checking for existing commands in stream...
[2026-06-12 23:04:04,369.369 INFO    ] No existing commands found in stream
[2026-06-12 23:04:09,378.378 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 23:04:09,381.381 INFO    ] Waiting 3.34 seconds before fallback handling...
[2026-06-12 23:04:13,081.081 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 23:04:13,082.082 INFO    ] Checking for system updates...
[2026-06-12 23:04:13,104.104 INFO    ] 200
[2026-06-12 23:04:13,105.105 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:04:13,135.135 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 23:04:13,137.137 INFO    ] No update needed
[2026-06-12 23:04:13,138.138 INFO    ] Checking for camera pi updates...
[2026-06-12 23:04:13,158.158 INFO    ] 200
[2026-06-12 23:04:13,160.160 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:04:13,183.183 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 23:04:13,325.325 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 23:04:13,326.326 INFO    ] No camera update needed
[2026-06-12 23:04:13,328.328 INFO    ] Script finished. Safe exiting...
[2026-06-12 23:04:13,329.329 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 23:04:13,333.333 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 23:04:13,335.335 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 23:04:15,375.375 INFO    ] ================================================
[2026-06-12 23:04:15,391.391 INFO    ] Launching Daemon at Fri Jun 12 23:04:15 IST 2026
[2026-06-12 23:04:15,402.402 INFO    ] ================================================
[2026-06-12 23:04:15,738.738 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 23:04:15
[2026-06-12 23:04:16,051.051 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 23:04:16,183.183 INFO    ] Initializing speech engine...
[2026-06-12 23:04:16,188.188 INFO    ] 2026-06-12 23:04:16
[2026-06-12 23:04:16,392.392 INFO    ] 2026-06-12 23:04:16
[2026-06-12 23:04:16,426.426 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 23:04:16,640.640 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 23:04:16,653.653 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 23:04:16,794.794 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 23:04:16,850.850 INFO    ] time= 12/06/2026 23:04:16
[2026-06-12 23:04:16,895.895 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 23:04:16,902.902 INFO    ] Checking for existing commands in stream...
[2026-06-12 23:04:16,976.976 INFO    ] No existing commands found in stream
[2026-06-12 23:04:21,987.987 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 23:04:21,990.990 INFO    ] Waiting 1.33 seconds before fallback handling...
[2026-06-12 23:04:23,681.681 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 23:04:23,682.682 INFO    ] Checking for system updates...
[2026-06-12 23:04:23,703.703 INFO    ] 200
[2026-06-12 23:04:23,705.705 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:04:23,735.735 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 23:04:23,736.736 INFO    ] No update needed
[2026-06-12 23:04:23,738.738 INFO    ] Checking for camera pi updates...
[2026-06-12 23:04:23,757.757 INFO    ] 200
[2026-06-12 23:04:23,758.758 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:04:23,783.783 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 23:04:23,845.845 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 23:04:23,847.847 INFO    ] No camera update needed
[2026-06-12 23:04:23,848.848 INFO    ] Script finished. Safe exiting...
[2026-06-12 23:04:23,849.849 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 23:04:23,852.852 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 23:04:23,855.855 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 23:04:25,892.892 INFO    ] ================================================
[2026-06-12 23:04:25,908.908 INFO    ] Launching Daemon at Fri Jun 12 23:04:25 IST 2026
[2026-06-12 23:04:25,919.919 INFO    ] ================================================
[2026-06-12 23:04:26,250.250 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 23:04:26
[2026-06-12 23:04:26,565.565 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 23:04:26,698.698 INFO    ] Initializing speech engine...
[2026-06-12 23:04:26,702.702 INFO    ] 2026-06-12 23:04:26
[2026-06-12 23:04:26,932.932 INFO    ] 2026-06-12 23:04:26
[2026-06-12 23:04:26,963.963 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 23:04:27,161.161 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 23:04:27,165.165 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 23:04:27,305.305 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 23:04:27,362.362 INFO    ] time= 12/06/2026 23:04:27
[2026-06-12 23:04:27,407.407 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 23:04:27,413.413 INFO    ] Checking for existing commands in stream...
[2026-06-12 23:04:27,490.490 INFO    ] No existing commands found in stream
[2026-06-12 23:04:32,504.504 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 23:04:32,512.512 INFO    ] Waiting 2.62 seconds before fallback handling...
[2026-06-12 23:04:35,512.512 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 23:04:35,514.514 INFO    ] Checking for system updates...
[2026-06-12 23:04:35,537.537 INFO    ] 200
[2026-06-12 23:04:35,539.539 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:04:35,568.568 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 23:04:35,570.570 INFO    ] No update needed
[2026-06-12 23:04:35,571.571 INFO    ] Checking for camera pi updates...
[2026-06-12 23:04:35,590.590 INFO    ] 200
[2026-06-12 23:04:35,591.591 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:04:35,614.614 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 23:04:35,673.673 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 23:04:35,674.674 INFO    ] No camera update needed
[2026-06-12 23:04:35,676.676 INFO    ] Script finished. Safe exiting...
[2026-06-12 23:04:35,677.677 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 23:04:35,680.680 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 23:04:35,683.683 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 23:04:37,721.721 INFO    ] ================================================
[2026-06-12 23:04:37,737.737 INFO    ] Launching Daemon at Fri Jun 12 23:04:37 IST 2026
[2026-06-12 23:04:37,748.748 INFO    ] ================================================
[2026-06-12 23:04:38,106.106 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 23:04:38
[2026-06-12 23:04:38,446.446 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 23:04:38,596.596 INFO    ] Initializing speech engine...
[2026-06-12 23:04:38,601.601 INFO    ] 2026-06-12 23:04:38
[2026-06-12 23:04:38,809.809 INFO    ] 2026-06-12 23:04:38
[2026-06-12 23:04:38,838.838 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 23:04:39,022.022 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 23:04:39,032.032 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 23:04:39,171.171 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 23:04:39,227.227 INFO    ] time= 12/06/2026 23:04:39
[2026-06-12 23:04:39,251.251 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 23:04:39,258.258 INFO    ] Checking for existing commands in stream...
[2026-06-12 23:04:39,329.329 INFO    ] No existing commands found in stream
[2026-06-12 23:04:44,356.356 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 23:04:44,360.360 INFO    ] Waiting 1.74 seconds before fallback handling...
[2026-06-12 23:04:46,475.475 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 23:04:46,477.477 INFO    ] Checking for system updates...
[2026-06-12 23:04:46,498.498 INFO    ] 200
[2026-06-12 23:04:46,499.499 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:04:46,532.532 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 23:04:46,533.533 INFO    ] No update needed
[2026-06-12 23:04:46,535.535 INFO    ] Checking for camera pi updates...
[2026-06-12 23:04:46,557.557 INFO    ] 200
[2026-06-12 23:04:46,558.558 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:04:46,584.584 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 23:04:46,630.630 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 23:04:46,631.631 INFO    ] No camera update needed
[2026-06-12 23:04:46,633.633 INFO    ] Script finished. Safe exiting...
[2026-06-12 23:04:46,634.634 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 23:04:46,637.637 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 23:04:46,641.641 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 23:04:48,678.678 INFO    ] ================================================
[2026-06-12 23:04:48,701.701 INFO    ] Launching Daemon at Fri Jun 12 23:04:48 IST 2026
[2026-06-12 23:04:48,712.712 INFO    ] ================================================
[2026-06-12 23:04:49,051.051 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 23:04:49
[2026-06-12 23:04:49,383.383 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 23:04:49,575.575 INFO    ] Initializing speech engine...
[2026-06-12 23:04:49,583.583 INFO    ] 2026-06-12 23:04:49
[2026-06-12 23:04:49,795.795 INFO    ] 2026-06-12 23:04:49
[2026-06-12 23:04:49,824.824 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 23:04:49,957.957 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 23:04:50,010.010 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 23:04:50,148.148 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 23:04:50,212.212 INFO    ] time= 12/06/2026 23:04:50
[2026-06-12 23:04:50,238.238 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 23:04:50,240.240 INFO    ] Checking for existing commands in stream...
[2026-06-12 23:04:50,312.312 INFO    ] No existing commands found in stream
[2026-06-12 23:04:55,326.326 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 23:04:55,330.330 INFO    ] Waiting 2.65 seconds before fallback handling...
[2026-06-12 23:04:58,341.341 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 23:04:58,342.342 INFO    ] Checking for system updates...
[2026-06-12 23:04:58,363.363 INFO    ] 200
[2026-06-12 23:04:58,364.364 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:04:58,396.396 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 23:04:58,398.398 INFO    ] No update needed
[2026-06-12 23:04:58,399.399 INFO    ] Checking for camera pi updates...
[2026-06-12 23:04:58,421.421 INFO    ] 200
[2026-06-12 23:04:58,422.422 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:04:58,447.447 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 23:04:58,494.494 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 23:04:58,496.496 INFO    ] No camera update needed
[2026-06-12 23:04:58,497.497 INFO    ] Script finished. Safe exiting...
[2026-06-12 23:04:58,498.498 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 23:04:58,501.501 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 23:04:58,504.504 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 23:05:00,541.541 INFO    ] ================================================
[2026-06-12 23:05:00,562.562 INFO    ] Launching Daemon at Fri Jun 12 23:05:00 IST 2026
[2026-06-12 23:05:00,572.572 INFO    ] ================================================
[2026-06-12 23:05:00,907.907 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 23:05:00
[2026-06-12 23:05:01,221.221 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 23:05:01,353.353 INFO    ] Initializing speech engine...
[2026-06-12 23:05:01,368.368 INFO    ] 2026-06-12 23:05:01
[2026-06-12 23:05:01,788.788 INFO    ] 2026-06-12 23:05:01
[2026-06-12 23:05:01,810.810 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 23:05:01,972.972 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 23:05:02,048.048 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 23:05:02,201.201 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 23:05:02,276.276 INFO    ] time= 12/06/2026 23:05:02
[2026-06-12 23:05:02,312.312 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 23:05:02,320.320 INFO    ] Checking for existing commands in stream...
[2026-06-12 23:05:02,398.398 INFO    ] No existing commands found in stream
[2026-06-12 23:05:07,408.408 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 23:05:07,412.412 INFO    ] Waiting 3.50 seconds before fallback handling...
[2026-06-12 23:05:11,266.266 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 23:05:11,268.268 INFO    ] Checking for system updates...
[2026-06-12 23:05:11,290.290 INFO    ] 200
[2026-06-12 23:05:11,291.291 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:05:11,323.323 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 23:05:11,325.325 INFO    ] No update needed
[2026-06-12 23:05:11,326.326 INFO    ] Checking for camera pi updates...
[2026-06-12 23:05:11,345.345 INFO    ] 200
[2026-06-12 23:05:11,346.346 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:05:11,373.373 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 23:05:11,415.415 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 23:05:11,416.416 INFO    ] No camera update needed
[2026-06-12 23:05:11,417.417 INFO    ] Script finished. Safe exiting...
[2026-06-12 23:05:11,419.419 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 23:05:11,422.422 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 23:05:11,424.424 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 23:05:13,462.462 INFO    ] ================================================
[2026-06-12 23:05:13,477.477 INFO    ] Launching Daemon at Fri Jun 12 23:05:13 IST 2026
[2026-06-12 23:05:13,487.487 INFO    ] ================================================
[2026-06-12 23:05:13,833.833 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 23:05:13
[2026-06-12 23:05:14,170.170 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 23:05:14,321.321 INFO    ] Initializing speech engine...
[2026-06-12 23:05:14,327.327 INFO    ] 2026-06-12 23:05:14
[2026-06-12 23:05:14,535.535 INFO    ] 2026-06-12 23:05:14
[2026-06-12 23:05:14,564.564 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 23:05:14,747.747 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 23:05:14,750.750 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 23:05:14,887.887 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 23:05:14,954.954 INFO    ] time= 12/06/2026 23:05:14
[2026-06-12 23:05:14,978.978 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 23:05:14,984.984 INFO    ] Checking for existing commands in stream...
[2026-06-12 23:05:15,051.051 INFO    ] No existing commands found in stream
[2026-06-12 23:05:20,066.066 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 23:05:20,069.069 INFO    ] Waiting 0.78 seconds before fallback handling...
[2026-06-12 23:05:21,220.220 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 23:05:21,222.222 INFO    ] Checking for system updates...
[2026-06-12 23:05:21,244.244 INFO    ] 200
[2026-06-12 23:05:21,246.246 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:05:21,276.276 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 23:05:21,277.277 INFO    ] No update needed
[2026-06-12 23:05:21,278.278 INFO    ] Checking for camera pi updates...
[2026-06-12 23:05:21,300.300 INFO    ] 200
[2026-06-12 23:05:21,301.301 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:05:21,324.324 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 23:05:21,365.365 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 23:05:21,366.366 INFO    ] No camera update needed
[2026-06-12 23:05:21,367.367 INFO    ] Script finished. Safe exiting...
[2026-06-12 23:05:21,369.369 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 23:05:21,372.372 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 23:05:21,374.374 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 23:05:23,412.412 INFO    ] ================================================
[2026-06-12 23:05:23,428.428 INFO    ] Launching Daemon at Fri Jun 12 23:05:23 IST 2026
[2026-06-12 23:05:23,438.438 INFO    ] ================================================
[2026-06-12 23:05:23,830.830 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 23:05:23
[2026-06-12 23:05:24,171.171 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 23:05:24,309.309 INFO    ] Initializing speech engine...
[2026-06-12 23:05:24,318.318 INFO    ] 2026-06-12 23:05:24
[2026-06-12 23:05:24,536.536 INFO    ] 2026-06-12 23:05:24
[2026-06-12 23:05:24,566.566 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 23:05:24,752.752 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 23:05:24,762.762 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 23:05:24,894.894 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 23:05:24,962.962 INFO    ] time= 12/06/2026 23:05:24
[2026-06-12 23:05:24,986.986 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 23:05:24,993.993 INFO    ] Checking for existing commands in stream...
[2026-06-12 23:05:25,060.060 INFO    ] No existing commands found in stream
[2026-06-12 23:05:30,085.085 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 23:05:30,088.088 INFO    ] Waiting 2.59 seconds before fallback handling...
[2026-06-12 23:05:33,050.050 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 23:05:33,052.052 INFO    ] Checking for system updates...
[2026-06-12 23:05:33,072.072 INFO    ] 200
[2026-06-12 23:05:33,074.074 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:05:33,104.104 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 23:05:33,105.105 INFO    ] No update needed
[2026-06-12 23:05:33,107.107 INFO    ] Checking for camera pi updates...
[2026-06-12 23:05:33,126.126 INFO    ] 200
[2026-06-12 23:05:33,127.127 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:05:33,151.151 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 23:05:33,198.198 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 23:05:33,199.199 INFO    ] No camera update needed
[2026-06-12 23:05:33,201.201 INFO    ] Script finished. Safe exiting...
[2026-06-12 23:05:33,202.202 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 23:05:33,205.205 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 23:05:33,208.208 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 23:05:35,237.237 INFO    ] ================================================
[2026-06-12 23:05:35,246.246 INFO    ] Launching Daemon at Fri Jun 12 23:05:35 IST 2026
[2026-06-12 23:05:35,254.254 INFO    ] ================================================
[2026-06-12 23:05:35,632.632 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 23:05:35
[2026-06-12 23:05:36,020.020 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 23:05:36,181.181 INFO    ] Initializing speech engine...
[2026-06-12 23:05:36,186.186 INFO    ] 2026-06-12 23:05:36
[2026-06-12 23:05:36,415.415 INFO    ] 2026-06-12 23:05:36
[2026-06-12 23:05:36,447.447 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 23:05:36,669.669 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 23:05:36,690.690 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 23:05:36,831.831 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 23:05:36,897.897 INFO    ] time= 12/06/2026 23:05:36
[2026-06-12 23:05:36,942.942 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 23:05:36,949.949 INFO    ] Checking for existing commands in stream...
[2026-06-12 23:05:37,035.035 INFO    ] No existing commands found in stream
[2026-06-12 23:05:42,056.056 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 23:05:42,057.057 INFO    ] Waiting 1.65 seconds before fallback handling...
[2026-06-12 23:05:44,065.065 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 23:05:44,067.067 INFO    ] Checking for system updates...
[2026-06-12 23:05:44,091.091 INFO    ] 200
[2026-06-12 23:05:44,092.092 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:05:44,123.123 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 23:05:44,124.124 INFO    ] No update needed
[2026-06-12 23:05:44,125.125 INFO    ] Checking for camera pi updates...
[2026-06-12 23:05:44,146.146 INFO    ] 200
[2026-06-12 23:05:44,147.147 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:05:44,170.170 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 23:05:44,231.231 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 23:05:44,232.232 INFO    ] No camera update needed
[2026-06-12 23:05:44,233.233 INFO    ] Script finished. Safe exiting...
[2026-06-12 23:05:44,235.235 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 23:05:44,238.238 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 23:05:44,240.240 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 23:05:46,279.279 INFO    ] ================================================
[2026-06-12 23:05:46,294.294 INFO    ] Launching Daemon at Fri Jun 12 23:05:46 IST 2026
[2026-06-12 23:05:46,305.305 INFO    ] ================================================
[2026-06-12 23:05:46,640.640 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 23:05:46
[2026-06-12 23:05:46,957.957 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 23:05:47,101.101 INFO    ] Initializing speech engine...
[2026-06-12 23:05:47,106.106 INFO    ] 2026-06-12 23:05:47
[2026-06-12 23:05:47,312.312 INFO    ] 2026-06-12 23:05:47
[2026-06-12 23:05:47,340.340 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 23:05:47,522.522 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 23:05:47,526.526 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 23:05:47,658.658 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 23:05:47,721.721 INFO    ] time= 12/06/2026 23:05:47
[2026-06-12 23:05:47,753.753 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 23:05:47,760.760 INFO    ] Checking for existing commands in stream...
[2026-06-12 23:05:47,826.826 INFO    ] No existing commands found in stream
[2026-06-12 23:05:52,835.835 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 23:05:52,838.838 INFO    ] Waiting 0.49 seconds before fallback handling...
[2026-06-12 23:05:53,699.699 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 23:05:53,701.701 INFO    ] Checking for system updates...
[2026-06-12 23:05:53,722.722 INFO    ] 200
[2026-06-12 23:05:53,723.723 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:05:53,754.754 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 23:05:53,755.755 INFO    ] No update needed
[2026-06-12 23:05:53,757.757 INFO    ] Checking for camera pi updates...
[2026-06-12 23:05:53,776.776 INFO    ] 200
[2026-06-12 23:05:53,777.777 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:05:53,800.800 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 23:05:53,845.845 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 23:05:53,846.846 INFO    ] No camera update needed
[2026-06-12 23:05:53,847.847 INFO    ] Script finished. Safe exiting...
[2026-06-12 23:05:53,849.849 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 23:05:53,852.852 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 23:05:53,854.854 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 23:05:55,895.895 INFO    ] ================================================
[2026-06-12 23:05:55,912.912 INFO    ] Launching Daemon at Fri Jun 12 23:05:55 IST 2026
[2026-06-12 23:05:55,923.923 INFO    ] ================================================
[2026-06-12 23:05:56,268.268 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 23:05:56
[2026-06-12 23:05:56,605.605 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 23:05:56,760.760 INFO    ] Initializing speech engine...
[2026-06-12 23:05:56,764.764 INFO    ] 2026-06-12 23:05:56
[2026-06-12 23:05:56,971.971 INFO    ] 2026-06-12 23:05:56
[2026-06-12 23:05:57,000.000 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 23:05:57,186.186 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 23:05:57,196.196 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 23:05:57,315.315 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 23:05:57,317.317 INFO    ] time= 12/06/2026 23:05:57
[2026-06-12 23:05:57,318.318 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 23:05:57,320.320 INFO    ] Checking for existing commands in stream...
[2026-06-12 23:05:57,388.388 INFO    ] No existing commands found in stream
[2026-06-12 23:06:02,392.392 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 23:06:02,394.394 INFO    ] Waiting 1.19 seconds before fallback handling...
[2026-06-12 23:06:04,956.956 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 23:06:04,958.958 INFO    ] Checking for system updates...
[2026-06-12 23:06:04,980.980 INFO    ] 200
[2026-06-12 23:06:04,981.981 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:06:05,016.016 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 23:06:05,017.017 INFO    ] No update needed
[2026-06-12 23:06:05,018.018 INFO    ] Checking for camera pi updates...
[2026-06-12 23:06:05,039.039 INFO    ] 200
[2026-06-12 23:06:05,040.040 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:06:05,063.063 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 23:06:05,116.116 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 23:06:05,117.117 INFO    ] No camera update needed
[2026-06-12 23:06:05,118.118 INFO    ] Script finished. Safe exiting...
[2026-06-12 23:06:05,120.120 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 23:06:05,123.123 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 23:06:05,125.125 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 23:06:07,164.164 INFO    ] ================================================
[2026-06-12 23:06:07,181.181 INFO    ] Launching Daemon at Fri Jun 12 23:06:07 IST 2026
[2026-06-12 23:06:07,192.192 INFO    ] ================================================
[2026-06-12 23:06:07,550.550 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 23:06:07
[2026-06-12 23:06:07,864.864 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 23:06:07,996.996 INFO    ] Initializing speech engine...
[2026-06-12 23:06:08,000.000 INFO    ] 2026-06-12 23:06:07
[2026-06-12 23:06:08,229.229 INFO    ] 2026-06-12 23:06:08
[2026-06-12 23:06:08,260.260 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 23:06:08,457.457 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 23:06:08,461.461 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 23:06:08,606.606 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 23:06:08,678.678 INFO    ] time= 12/06/2026 23:06:08
[2026-06-12 23:06:08,706.706 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 23:06:08,712.712 INFO    ] Checking for existing commands in stream...
[2026-06-12 23:06:08,782.782 INFO    ] No existing commands found in stream
[2026-06-12 23:06:13,793.793 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 23:06:13,795.795 INFO    ] Waiting 3.46 seconds before fallback handling...
[2026-06-12 23:06:17,824.824 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 23:06:17,826.826 INFO    ] Checking for system updates...
[2026-06-12 23:06:17,846.846 INFO    ] 200
[2026-06-12 23:06:17,847.847 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:06:17,879.879 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 23:06:17,881.881 INFO    ] No update needed
[2026-06-12 23:06:17,882.882 INFO    ] Checking for camera pi updates...
[2026-06-12 23:06:17,901.901 INFO    ] 200
[2026-06-12 23:06:17,903.903 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:06:17,925.925 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 23:06:18,070.070 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 23:06:18,071.071 INFO    ] No camera update needed
[2026-06-12 23:06:18,072.072 INFO    ] Script finished. Safe exiting...
[2026-06-12 23:06:18,074.074 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 23:06:18,077.077 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 23:06:18,079.079 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 23:06:20,117.117 INFO    ] ================================================
[2026-06-12 23:06:20,133.133 INFO    ] Launching Daemon at Fri Jun 12 23:06:20 IST 2026
[2026-06-12 23:06:20,144.144 INFO    ] ================================================
[2026-06-12 23:06:20,495.495 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 23:06:20
[2026-06-12 23:06:20,833.833 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 23:06:20,974.974 INFO    ] Initializing speech engine...
[2026-06-12 23:06:20,986.986 INFO    ] 2026-06-12 23:06:20
[2026-06-12 23:06:21,200.200 INFO    ] 2026-06-12 23:06:21
[2026-06-12 23:06:21,229.229 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 23:06:21,416.416 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 23:06:21,428.428 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 23:06:21,562.562 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 23:06:21,624.624 INFO    ] time= 12/06/2026 23:06:21
[2026-06-12 23:06:21,649.649 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 23:06:21,655.655 INFO    ] Checking for existing commands in stream...
[2026-06-12 23:06:21,723.723 INFO    ] No existing commands found in stream
[2026-06-12 23:06:26,732.732 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 23:06:26,736.736 INFO    ] Waiting 0.78 seconds before fallback handling...
[2026-06-12 23:06:27,940.940 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 23:06:27,941.941 INFO    ] Checking for system updates...
[2026-06-12 23:06:27,962.962 INFO    ] 200
[2026-06-12 23:06:27,963.963 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:06:27,994.994 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 23:06:27,996.996 INFO    ] No update needed
[2026-06-12 23:06:27,997.997 INFO    ] Checking for camera pi updates...
[2026-06-12 23:06:28,017.017 INFO    ] 200
[2026-06-12 23:06:28,018.018 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:06:28,042.042 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 23:06:28,089.089 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 23:06:28,091.091 INFO    ] No camera update needed
[2026-06-12 23:06:28,092.092 INFO    ] Script finished. Safe exiting...
[2026-06-12 23:06:28,094.094 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 23:06:28,097.097 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 23:06:28,100.100 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 23:06:30,138.138 INFO    ] ================================================
[2026-06-12 23:06:30,153.153 INFO    ] Launching Daemon at Fri Jun 12 23:06:30 IST 2026
[2026-06-12 23:06:30,164.164 INFO    ] ================================================
[2026-06-12 23:06:30,523.523 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 23:06:30
[2026-06-12 23:06:30,861.861 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 23:06:31,017.017 INFO    ] Initializing speech engine...
[2026-06-12 23:06:31,021.021 INFO    ] 2026-06-12 23:06:31
[2026-06-12 23:06:31,228.228 INFO    ] 2026-06-12 23:06:31
[2026-06-12 23:06:31,258.258 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 23:06:31,447.447 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 23:06:31,457.457 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 23:06:31,609.609 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 23:06:31,661.661 INFO    ] time= 12/06/2026 23:06:31
[2026-06-12 23:06:31,683.683 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 23:06:31,689.689 INFO    ] Checking for existing commands in stream...
[2026-06-12 23:06:31,757.757 INFO    ] No existing commands found in stream
[2026-06-12 23:06:36,777.777 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 23:06:36,780.780 INFO    ] Waiting 1.69 seconds before fallback handling...
[2026-06-12 23:06:38,837.837 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 23:06:38,839.839 INFO    ] Checking for system updates...
[2026-06-12 23:06:38,860.860 INFO    ] 200
[2026-06-12 23:06:38,861.861 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:06:38,891.891 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 23:06:38,892.892 INFO    ] No update needed
[2026-06-12 23:06:38,893.893 INFO    ] Checking for camera pi updates...
[2026-06-12 23:06:38,914.914 INFO    ] 200
[2026-06-12 23:06:38,915.915 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:06:38,940.940 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 23:06:39,000.000 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 23:06:39,001.001 INFO    ] No camera update needed
[2026-06-12 23:06:39,002.002 INFO    ] Script finished. Safe exiting...
[2026-06-12 23:06:39,004.004 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 23:06:39,007.007 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 23:06:39,009.009 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 23:06:41,048.048 INFO    ] ================================================
[2026-06-12 23:06:41,064.064 INFO    ] Launching Daemon at Fri Jun 12 23:06:41 IST 2026
[2026-06-12 23:06:41,076.076 INFO    ] ================================================
[2026-06-12 23:06:41,416.416 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 23:06:41
[2026-06-12 23:06:41,732.732 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 23:06:41,864.864 INFO    ] Initializing speech engine...
[2026-06-12 23:06:41,868.868 INFO    ] 2026-06-12 23:06:41
[2026-06-12 23:06:42,085.085 INFO    ] 2026-06-12 23:06:42
[2026-06-12 23:06:42,113.113 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 23:06:42,300.300 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 23:06:42,303.303 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 23:06:42,431.431 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 23:06:42,492.492 INFO    ] time= 12/06/2026 23:06:42
[2026-06-12 23:06:42,526.526 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 23:06:42,531.531 INFO    ] Checking for existing commands in stream...
[2026-06-12 23:06:42,603.603 INFO    ] No existing commands found in stream
[2026-06-12 23:06:47,627.627 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 23:06:47,630.630 INFO    ] Waiting 0.64 seconds before fallback handling...
[2026-06-12 23:06:48,640.640 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 23:06:48,642.642 INFO    ] Checking for system updates...
[2026-06-12 23:06:48,662.662 INFO    ] 200
[2026-06-12 23:06:48,664.664 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:06:48,693.693 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 23:06:48,695.695 INFO    ] No update needed
[2026-06-12 23:06:48,696.696 INFO    ] Checking for camera pi updates...
[2026-06-12 23:06:48,716.716 INFO    ] 200
[2026-06-12 23:06:48,718.718 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:06:48,741.741 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 23:06:48,793.793 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 23:06:48,794.794 INFO    ] No camera update needed
[2026-06-12 23:06:48,796.796 INFO    ] Script finished. Safe exiting...
[2026-06-12 23:06:48,797.797 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 23:06:48,800.800 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 23:06:48,803.803 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 23:06:50,841.841 INFO    ] ================================================
[2026-06-12 23:06:50,857.857 INFO    ] Launching Daemon at Fri Jun 12 23:06:50 IST 2026
[2026-06-12 23:06:50,868.868 INFO    ] ================================================
[2026-06-12 23:06:51,197.197 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 23:06:51
[2026-06-12 23:06:51,512.512 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 23:06:51,650.650 INFO    ] Initializing speech engine...
[2026-06-12 23:06:51,660.660 INFO    ] 2026-06-12 23:06:51
[2026-06-12 23:06:51,867.867 INFO    ] 2026-06-12 23:06:51
[2026-06-12 23:06:51,897.897 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 23:06:52,081.081 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 23:06:52,084.084 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 23:06:52,214.214 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 23:06:52,275.275 INFO    ] time= 12/06/2026 23:06:52
[2026-06-12 23:06:52,299.299 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 23:06:52,314.314 INFO    ] Checking for existing commands in stream...
[2026-06-12 23:06:52,386.386 INFO    ] No existing commands found in stream
[2026-06-12 23:06:57,395.395 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 23:06:57,398.398 INFO    ] Waiting 0.30 seconds before fallback handling...
[2026-06-12 23:06:58,107.107 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 23:06:58,109.109 INFO    ] Checking for system updates...
[2026-06-12 23:06:58,130.130 INFO    ] 200
[2026-06-12 23:06:58,131.131 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:06:58,161.161 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 23:06:58,163.163 INFO    ] No update needed
[2026-06-12 23:06:58,164.164 INFO    ] Checking for camera pi updates...
[2026-06-12 23:06:58,184.184 INFO    ] 200
[2026-06-12 23:06:58,185.185 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:06:58,208.208 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 23:06:58,260.260 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 23:06:58,262.262 INFO    ] No camera update needed
[2026-06-12 23:06:58,263.263 INFO    ] Script finished. Safe exiting...
[2026-06-12 23:06:58,265.265 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 23:06:58,268.268 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 23:06:58,271.271 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 23:07:00,308.308 INFO    ] ================================================
[2026-06-12 23:07:00,325.325 INFO    ] Launching Daemon at Fri Jun 12 23:07:00 IST 2026
[2026-06-12 23:07:00,337.337 INFO    ] ================================================
[2026-06-12 23:07:00,681.681 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 23:07:00
[2026-06-12 23:07:00,997.997 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 23:07:01,310.310 INFO    ] Initializing speech engine...
[2026-06-12 23:07:01,313.313 INFO    ] 2026-06-12 23:07:01
[2026-06-12 23:07:01,608.608 INFO    ] 2026-06-12 23:07:01
[2026-06-12 23:07:01,653.653 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 23:07:01,854.854 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 23:07:01,908.908 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 23:07:02,041.041 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 23:07:02,047.047 INFO    ] time= 12/06/2026 23:07:02
[2026-06-12 23:07:02,049.049 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 23:07:02,050.050 INFO    ] Checking for existing commands in stream...
[2026-06-12 23:07:02,122.122 INFO    ] No existing commands found in stream
[2026-06-12 23:07:07,147.147 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 23:07:07,150.150 INFO    ] Waiting 2.27 seconds before fallback handling...
[2026-06-12 23:07:09,765.765 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 23:07:09,766.766 INFO    ] Checking for system updates...
[2026-06-12 23:07:09,786.786 INFO    ] 200
[2026-06-12 23:07:09,788.788 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:07:09,820.820 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 23:07:09,821.821 INFO    ] No update needed
[2026-06-12 23:07:09,822.822 INFO    ] Checking for camera pi updates...
[2026-06-12 23:07:09,843.843 INFO    ] 200
[2026-06-12 23:07:09,844.844 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:07:09,867.867 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 23:07:09,910.910 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 23:07:09,911.911 INFO    ] No camera update needed
[2026-06-12 23:07:09,913.913 INFO    ] Script finished. Safe exiting...
[2026-06-12 23:07:09,914.914 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 23:07:09,917.917 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 23:07:09,919.919 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 23:07:11,957.957 INFO    ] ================================================
[2026-06-12 23:07:11,973.973 INFO    ] Launching Daemon at Fri Jun 12 23:07:11 IST 2026
[2026-06-12 23:07:11,984.984 INFO    ] ================================================
[2026-06-12 23:07:12,321.321 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 23:07:12
[2026-06-12 23:07:12,633.633 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 23:07:12,775.775 INFO    ] Initializing speech engine...
[2026-06-12 23:07:12,781.781 INFO    ] 2026-06-12 23:07:12
[2026-06-12 23:07:12,984.984 INFO    ] 2026-06-12 23:07:12
[2026-06-12 23:07:13,011.011 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 23:07:13,196.196 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 23:07:13,204.204 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 23:07:13,326.326 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 23:07:13,381.381 INFO    ] time= 12/06/2026 23:07:13
[2026-06-12 23:07:13,415.415 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 23:07:13,425.425 INFO    ] Checking for existing commands in stream...
[2026-06-12 23:07:13,498.498 INFO    ] No existing commands found in stream
[2026-06-12 23:07:18,506.506 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 23:07:18,509.509 INFO    ] Waiting 1.53 seconds before fallback handling...
[2026-06-12 23:07:20,404.404 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 23:07:20,405.405 INFO    ] Checking for system updates...
[2026-06-12 23:07:20,425.425 INFO    ] 200
[2026-06-12 23:07:20,427.427 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:07:20,459.459 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 23:07:20,460.460 INFO    ] No update needed
[2026-06-12 23:07:20,462.462 INFO    ] Checking for camera pi updates...
[2026-06-12 23:07:20,481.481 INFO    ] 200
[2026-06-12 23:07:20,482.482 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:07:20,507.507 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 23:07:20,551.551 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 23:07:20,552.552 INFO    ] No camera update needed
[2026-06-12 23:07:20,553.553 INFO    ] Script finished. Safe exiting...
[2026-06-12 23:07:20,555.555 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 23:07:20,558.558 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 23:07:20,560.560 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 23:07:22,601.601 INFO    ] ================================================
[2026-06-12 23:07:22,618.618 INFO    ] Launching Daemon at Fri Jun 12 23:07:22 IST 2026
[2026-06-12 23:07:22,629.629 INFO    ] ================================================
[2026-06-12 23:07:22,974.974 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 23:07:22
[2026-06-12 23:07:23,286.286 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 23:07:23,429.429 INFO    ] Initializing speech engine...
[2026-06-12 23:07:23,434.434 INFO    ] 2026-06-12 23:07:23
[2026-06-12 23:07:23,636.636 INFO    ] 2026-06-12 23:07:23
[2026-06-12 23:07:23,664.664 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 23:07:23,796.796 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 23:07:23,849.849 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 23:07:23,987.987 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 23:07:24,054.054 INFO    ] time= 12/06/2026 23:07:23
[2026-06-12 23:07:24,078.078 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 23:07:24,080.080 INFO    ] Checking for existing commands in stream...
[2026-06-12 23:07:24,151.151 INFO    ] No existing commands found in stream
[2026-06-12 23:07:29,165.165 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 23:07:29,168.168 INFO    ] Waiting 2.16 seconds before fallback handling...
[2026-06-12 23:07:31,674.674 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 23:07:31,676.676 INFO    ] Checking for system updates...
[2026-06-12 23:07:31,700.700 INFO    ] 200
[2026-06-12 23:07:31,702.702 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:07:31,738.738 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 23:07:31,740.740 INFO    ] No update needed
[2026-06-12 23:07:31,742.742 INFO    ] Checking for camera pi updates...
[2026-06-12 23:07:31,765.765 INFO    ] 200
[2026-06-12 23:07:31,767.767 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:07:31,797.797 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 23:07:31,835.835 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 23:07:31,836.836 INFO    ] No camera update needed
[2026-06-12 23:07:31,838.838 INFO    ] Script finished. Safe exiting...
[2026-06-12 23:07:31,839.839 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 23:07:31,842.842 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 23:07:31,845.845 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 23:07:33,883.883 INFO    ] ================================================
[2026-06-12 23:07:33,899.899 INFO    ] Launching Daemon at Fri Jun 12 23:07:33 IST 2026
[2026-06-12 23:07:33,910.910 INFO    ] ================================================
[2026-06-12 23:07:34,250.250 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 23:07:34
[2026-06-12 23:07:34,563.563 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 23:07:34,706.706 INFO    ] Initializing speech engine...
[2026-06-12 23:07:34,711.711 INFO    ] 2026-06-12 23:07:34
[2026-06-12 23:07:34,915.915 INFO    ] 2026-06-12 23:07:34
[2026-06-12 23:07:34,943.943 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 23:07:35,126.126 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 23:07:35,129.129 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 23:07:35,265.265 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 23:07:35,324.324 INFO    ] time= 12/06/2026 23:07:35
[2026-06-12 23:07:35,356.356 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 23:07:35,362.362 INFO    ] Checking for existing commands in stream...
[2026-06-12 23:07:35,429.429 INFO    ] No existing commands found in stream
[2026-06-12 23:07:40,443.443 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 23:07:40,446.446 INFO    ] Waiting 1.40 seconds before fallback handling...
[2026-06-12 23:07:42,193.193 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 23:07:42,195.195 INFO    ] Checking for system updates...
[2026-06-12 23:07:42,217.217 INFO    ] 200
[2026-06-12 23:07:42,218.218 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:07:42,250.250 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 23:07:42,251.251 INFO    ] No update needed
[2026-06-12 23:07:42,252.252 INFO    ] Checking for camera pi updates...
[2026-06-12 23:07:42,272.272 INFO    ] 200
[2026-06-12 23:07:42,273.273 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:07:42,296.296 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 23:07:42,340.340 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 23:07:42,342.342 INFO    ] No camera update needed
[2026-06-12 23:07:42,343.343 INFO    ] Script finished. Safe exiting...
[2026-06-12 23:07:42,344.344 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 23:07:42,347.347 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 23:07:42,350.350 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 23:07:44,389.389 INFO    ] ================================================
[2026-06-12 23:07:44,404.404 INFO    ] Launching Daemon at Fri Jun 12 23:07:44 IST 2026
[2026-06-12 23:07:44,414.414 INFO    ] ================================================
[2026-06-12 23:07:44,770.770 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 23:07:44
[2026-06-12 23:07:45,087.087 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 23:07:45,231.231 INFO    ] Initializing speech engine...
[2026-06-12 23:07:45,236.236 INFO    ] 2026-06-12 23:07:45
[2026-06-12 23:07:45,441.441 INFO    ] 2026-06-12 23:07:45
[2026-06-12 23:07:45,471.471 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 23:07:45,615.615 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 23:07:45,658.658 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 23:07:45,790.790 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 23:07:45,830.830 INFO    ] time= 12/06/2026 23:07:45
[2026-06-12 23:07:45,880.880 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 23:07:45,891.891 INFO    ] Checking for existing commands in stream...
[2026-06-12 23:07:45,963.963 INFO    ] No existing commands found in stream
[2026-06-12 23:07:50,972.972 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 23:07:50,975.975 INFO    ] Waiting 3.56 seconds before fallback handling...
[2026-06-12 23:07:54,905.905 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 23:07:54,906.906 INFO    ] Checking for system updates...
[2026-06-12 23:07:54,928.928 INFO    ] 200
[2026-06-12 23:07:54,929.929 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:07:54,960.960 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 23:07:54,961.961 INFO    ] No update needed
[2026-06-12 23:07:54,963.963 INFO    ] Checking for camera pi updates...
[2026-06-12 23:07:54,982.982 INFO    ] 200
[2026-06-12 23:07:54,983.983 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:07:55,006.006 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 23:07:55,061.061 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 23:07:55,062.062 INFO    ] No camera update needed
[2026-06-12 23:07:55,063.063 INFO    ] Script finished. Safe exiting...
[2026-06-12 23:07:55,065.065 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 23:07:55,068.068 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 23:07:55,070.070 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 23:07:57,108.108 INFO    ] ================================================
[2026-06-12 23:07:57,123.123 INFO    ] Launching Daemon at Fri Jun 12 23:07:57 IST 2026
[2026-06-12 23:07:57,134.134 INFO    ] ================================================
[2026-06-12 23:07:57,473.473 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 23:07:57
[2026-06-12 23:07:57,789.789 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 23:07:57,933.933 INFO    ] Initializing speech engine...
[2026-06-12 23:07:57,937.937 INFO    ] 2026-06-12 23:07:57
[2026-06-12 23:07:58,142.142 INFO    ] 2026-06-12 23:07:58
[2026-06-12 23:07:58,170.170 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 23:07:58,354.354 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 23:07:58,364.364 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 23:07:58,493.493 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 23:07:58,560.560 INFO    ] time= 12/06/2026 23:07:58
[2026-06-12 23:07:58,584.584 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 23:07:58,591.591 INFO    ] Checking for existing commands in stream...
[2026-06-12 23:07:58,657.657 INFO    ] No existing commands found in stream
[2026-06-12 23:08:03,676.676 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 23:08:03,679.679 INFO    ] Waiting 0.04 seconds before fallback handling...
[2026-06-12 23:08:04,065.065 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 23:08:04,067.067 INFO    ] Checking for system updates...
[2026-06-12 23:08:04,087.087 INFO    ] 200
[2026-06-12 23:08:04,088.088 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:08:04,118.118 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 23:08:04,119.119 INFO    ] No update needed
[2026-06-12 23:08:04,121.121 INFO    ] Checking for camera pi updates...
[2026-06-12 23:08:04,140.140 INFO    ] 200
[2026-06-12 23:08:04,142.142 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:08:04,167.167 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 23:08:04,214.214 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 23:08:04,215.215 INFO    ] No camera update needed
[2026-06-12 23:08:04,217.217 INFO    ] Script finished. Safe exiting...
[2026-06-12 23:08:04,218.218 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 23:08:04,221.221 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 23:08:04,224.224 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 23:08:06,266.266 INFO    ] ================================================
[2026-06-12 23:08:06,281.281 INFO    ] Launching Daemon at Fri Jun 12 23:08:06 IST 2026
[2026-06-12 23:08:06,292.292 INFO    ] ================================================
[2026-06-12 23:08:06,638.638 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 23:08:06
[2026-06-12 23:08:06,978.978 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 23:08:07,135.135 INFO    ] Initializing speech engine...
[2026-06-12 23:08:07,139.139 INFO    ] 2026-06-12 23:08:07
[2026-06-12 23:08:07,348.348 INFO    ] 2026-06-12 23:08:07
[2026-06-12 23:08:07,379.379 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 23:08:07,563.563 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 23:08:07,573.573 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 23:08:07,674.674 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 23:08:07,676.676 INFO    ] time= 12/06/2026 23:08:07
[2026-06-12 23:08:07,677.677 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 23:08:07,678.678 INFO    ] Checking for existing commands in stream...
[2026-06-12 23:08:07,784.784 INFO    ] No existing commands found in stream
[2026-06-12 23:08:12,801.801 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 23:08:12,804.804 INFO    ] Waiting 3.11 seconds before fallback handling...
[2026-06-12 23:08:16,298.298 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 23:08:16,299.299 INFO    ] Checking for system updates...
[2026-06-12 23:08:16,320.320 INFO    ] 200
[2026-06-12 23:08:16,321.321 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:08:16,353.353 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 23:08:16,354.354 INFO    ] No update needed
[2026-06-12 23:08:16,355.355 INFO    ] Checking for camera pi updates...
[2026-06-12 23:08:16,376.376 INFO    ] 200
[2026-06-12 23:08:16,377.377 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:08:16,400.400 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 23:08:16,443.443 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 23:08:16,445.445 INFO    ] No camera update needed
[2026-06-12 23:08:16,446.446 INFO    ] Script finished. Safe exiting...
[2026-06-12 23:08:16,447.447 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 23:08:16,450.450 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 23:08:16,453.453 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 23:08:18,491.491 INFO    ] ================================================
[2026-06-12 23:08:18,506.506 INFO    ] Launching Daemon at Fri Jun 12 23:08:18 IST 2026
[2026-06-12 23:08:18,517.517 INFO    ] ================================================
[2026-06-12 23:08:18,853.853 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 23:08:18
[2026-06-12 23:08:19,166.166 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 23:08:19,303.303 INFO    ] Initializing speech engine...
[2026-06-12 23:08:19,313.313 INFO    ] 2026-06-12 23:08:19
[2026-06-12 23:08:19,518.518 INFO    ] 2026-06-12 23:08:19
[2026-06-12 23:08:19,547.547 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 23:08:19,733.733 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 23:08:19,736.736 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 23:08:19,866.866 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 23:08:19,927.927 INFO    ] time= 12/06/2026 23:08:19
[2026-06-12 23:08:19,962.962 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 23:08:19,967.967 INFO    ] Checking for existing commands in stream...
[2026-06-12 23:08:20,039.039 INFO    ] No existing commands found in stream
[2026-06-12 23:08:25,049.049 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 23:08:25,051.051 INFO    ] Waiting 0.57 seconds before fallback handling...
[2026-06-12 23:08:25,985.985 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 23:08:25,986.986 INFO    ] Checking for system updates...
[2026-06-12 23:08:26,007.007 INFO    ] 200
[2026-06-12 23:08:26,008.008 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:08:26,038.038 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 23:08:26,040.040 INFO    ] No update needed
[2026-06-12 23:08:26,041.041 INFO    ] Checking for camera pi updates...
[2026-06-12 23:08:26,061.061 INFO    ] 200
[2026-06-12 23:08:26,062.062 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:08:26,087.087 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 23:08:26,227.227 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 23:08:26,228.228 INFO    ] No camera update needed
[2026-06-12 23:08:26,230.230 INFO    ] Script finished. Safe exiting...
[2026-06-12 23:08:26,231.231 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 23:08:26,234.234 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 23:08:26,237.237 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 23:08:28,276.276 INFO    ] ================================================
[2026-06-12 23:08:28,291.291 INFO    ] Launching Daemon at Fri Jun 12 23:08:28 IST 2026
[2026-06-12 23:08:28,303.303 INFO    ] ================================================
[2026-06-12 23:08:28,656.656 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 23:08:28
[2026-06-12 23:08:28,973.973 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 23:08:29,105.105 INFO    ] Initializing speech engine...
[2026-06-12 23:08:29,117.117 INFO    ] 2026-06-12 23:08:29
[2026-06-12 23:08:29,323.323 INFO    ] 2026-06-12 23:08:29
[2026-06-12 23:08:29,353.353 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 23:08:29,535.535 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 23:08:29,545.545 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 23:08:29,674.674 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 23:08:29,740.740 INFO    ] time= 12/06/2026 23:08:29
[2026-06-12 23:08:29,764.764 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 23:08:29,771.771 INFO    ] Checking for existing commands in stream...
[2026-06-12 23:08:29,837.837 INFO    ] No existing commands found in stream
[2026-06-12 23:08:34,846.846 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 23:08:34,849.849 INFO    ] Waiting 0.80 seconds before fallback handling...
[2026-06-12 23:08:36,016.016 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 23:08:36,018.018 INFO    ] Checking for system updates...
[2026-06-12 23:08:36,038.038 INFO    ] 200
[2026-06-12 23:08:36,039.039 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:08:36,072.072 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 23:08:36,073.073 INFO    ] No update needed
[2026-06-12 23:08:36,075.075 INFO    ] Checking for camera pi updates...
[2026-06-12 23:08:36,096.096 INFO    ] 200
[2026-06-12 23:08:36,097.097 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:08:36,120.120 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 23:08:36,161.161 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 23:08:36,163.163 INFO    ] No camera update needed
[2026-06-12 23:08:36,164.164 INFO    ] Script finished. Safe exiting...
[2026-06-12 23:08:36,165.165 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 23:08:36,168.168 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 23:08:36,171.171 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 23:08:38,203.203 INFO    ] ================================================
[2026-06-12 23:08:38,213.213 INFO    ] Launching Daemon at Fri Jun 12 23:08:38 IST 2026
[2026-06-12 23:08:38,219.219 INFO    ] ================================================
[2026-06-12 23:08:38,554.554 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 23:08:38
[2026-06-12 23:08:38,874.874 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 23:08:39,050.050 INFO    ] Initializing speech engine...
[2026-06-12 23:08:39,053.053 INFO    ] 2026-06-12 23:08:39
[2026-06-12 23:08:39,257.257 INFO    ] 2026-06-12 23:08:39
[2026-06-12 23:08:39,286.286 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 23:08:39,409.409 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 23:08:39,472.472 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 23:08:39,612.612 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 23:08:39,680.680 INFO    ] time= 12/06/2026 23:08:39
[2026-06-12 23:08:39,704.704 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 23:08:39,710.710 INFO    ] Checking for existing commands in stream...
[2026-06-12 23:08:39,778.778 INFO    ] No existing commands found in stream
[2026-06-12 23:08:44,792.792 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 23:08:44,794.794 INFO    ] Waiting 3.02 seconds before fallback handling...
[2026-06-12 23:08:48,185.185 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 23:08:48,186.186 INFO    ] Checking for system updates...
[2026-06-12 23:08:48,207.207 INFO    ] 200
[2026-06-12 23:08:48,208.208 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:08:48,238.238 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 23:08:48,240.240 INFO    ] No update needed
[2026-06-12 23:08:48,241.241 INFO    ] Checking for camera pi updates...
[2026-06-12 23:08:48,260.260 INFO    ] 200
[2026-06-12 23:08:48,262.262 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:08:48,285.285 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 23:08:48,338.338 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 23:08:48,340.340 INFO    ] No camera update needed
[2026-06-12 23:08:48,341.341 INFO    ] Script finished. Safe exiting...
[2026-06-12 23:08:48,342.342 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 23:08:48,345.345 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 23:08:48,348.348 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 23:08:50,385.385 INFO    ] ================================================
[2026-06-12 23:08:50,401.401 INFO    ] Launching Daemon at Fri Jun 12 23:08:50 IST 2026
[2026-06-12 23:08:50,411.411 INFO    ] ================================================
[2026-06-12 23:08:50,748.748 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 23:08:50
[2026-06-12 23:08:51,064.064 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 23:08:51,196.196 INFO    ] Initializing speech engine...
[2026-06-12 23:08:51,209.209 INFO    ] 2026-06-12 23:08:51
[2026-06-12 23:08:51,413.413 INFO    ] 2026-06-12 23:08:51
[2026-06-12 23:08:51,443.443 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 23:08:51,624.624 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 23:08:51,633.633 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 23:08:51,789.789 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 23:08:51,832.832 INFO    ] time= 12/06/2026 23:08:51
[2026-06-12 23:08:51,857.857 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 23:08:51,859.859 INFO    ] Checking for existing commands in stream...
[2026-06-12 23:08:51,924.924 INFO    ] No existing commands found in stream
[2026-06-12 23:08:56,934.934 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 23:08:56,937.937 INFO    ] Waiting 3.82 seconds before fallback handling...
[2026-06-12 23:09:01,095.095 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 23:09:01,097.097 INFO    ] Checking for system updates...
[2026-06-12 23:09:01,117.117 INFO    ] 200
[2026-06-12 23:09:01,119.119 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:09:01,148.148 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 23:09:01,149.149 INFO    ] No update needed
[2026-06-12 23:09:01,151.151 INFO    ] Checking for camera pi updates...
[2026-06-12 23:09:01,170.170 INFO    ] 200
[2026-06-12 23:09:01,172.172 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:09:01,195.195 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 23:09:01,231.231 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 23:09:01,233.233 INFO    ] No camera update needed
[2026-06-12 23:09:01,234.234 INFO    ] Script finished. Safe exiting...
[2026-06-12 23:09:01,236.236 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 23:09:01,238.238 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 23:09:01,241.241 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 23:09:03,274.274 INFO    ] ================================================
[2026-06-12 23:09:03,290.290 INFO    ] Launching Daemon at Fri Jun 12 23:09:03 IST 2026
[2026-06-12 23:09:03,300.300 INFO    ] ================================================
[2026-06-12 23:09:03,642.642 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 23:09:03
[2026-06-12 23:09:03,958.958 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 23:09:04,092.092 INFO    ] Initializing speech engine...
[2026-06-12 23:09:04,119.119 INFO    ] 2026-06-12 23:09:04
[2026-06-12 23:09:04,374.374 INFO    ] 2026-06-12 23:09:04
[2026-06-12 23:09:04,405.405 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 23:09:04,535.535 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 23:09:04,578.578 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 23:09:04,742.742 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 23:09:04,805.805 INFO    ] time= 12/06/2026 23:09:04
[2026-06-12 23:09:04,839.839 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 23:09:04,850.850 INFO    ] Checking for existing commands in stream...
[2026-06-12 23:09:04,924.924 INFO    ] No existing commands found in stream
[2026-06-12 23:09:09,935.935 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 23:09:09,937.937 INFO    ] Waiting 3.49 seconds before fallback handling...
[2026-06-12 23:09:13,769.769 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 23:09:13,771.771 INFO    ] Checking for system updates...
[2026-06-12 23:09:13,791.791 INFO    ] 200
[2026-06-12 23:09:13,793.793 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:09:13,822.822 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 23:09:13,824.824 INFO    ] No update needed
[2026-06-12 23:09:13,825.825 INFO    ] Checking for camera pi updates...
[2026-06-12 23:09:13,846.846 INFO    ] 200
[2026-06-12 23:09:13,848.848 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:09:13,872.872 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 23:09:13,924.924 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 23:09:13,926.926 INFO    ] No camera update needed
[2026-06-12 23:09:13,927.927 INFO    ] Script finished. Safe exiting...
[2026-06-12 23:09:13,928.928 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 23:09:13,931.931 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 23:09:13,934.934 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 23:09:15,972.972 INFO    ] ================================================
[2026-06-12 23:09:15,986.986 INFO    ] Launching Daemon at Fri Jun 12 23:09:15 IST 2026
[2026-06-12 23:09:16,997.997 INFO    ] ================================================
[2026-06-12 23:09:16,352.352 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 23:09:16
[2026-06-12 23:09:16,666.666 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 23:09:16,810.810 INFO    ] Initializing speech engine...
[2026-06-12 23:09:16,815.815 INFO    ] 2026-06-12 23:09:16
[2026-06-12 23:09:17,021.021 INFO    ] 2026-06-12 23:09:16
[2026-06-12 23:09:17,051.051 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 23:09:17,236.236 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 23:09:17,245.245 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 23:09:17,377.377 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 23:09:17,431.431 INFO    ] time= 12/06/2026 23:09:17
[2026-06-12 23:09:17,467.467 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 23:09:17,473.473 INFO    ] Checking for existing commands in stream...
[2026-06-12 23:09:17,546.546 INFO    ] No existing commands found in stream
[2026-06-12 23:09:22,555.555 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 23:09:22,558.558 INFO    ] Waiting 1.63 seconds before fallback handling...
[2026-06-12 23:09:24,492.492 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 23:09:24,495.495 INFO    ] Checking for system updates...
[2026-06-12 23:09:24,534.534 INFO    ] 200
[2026-06-12 23:09:24,536.536 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:09:24,595.595 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 23:09:24,597.597 INFO    ] No update needed
[2026-06-12 23:09:24,600.600 INFO    ] Checking for camera pi updates...
[2026-06-12 23:09:24,623.623 INFO    ] 200
[2026-06-12 23:09:24,624.624 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:09:24,647.647 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 23:09:24,698.698 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 23:09:24,700.700 INFO    ] No camera update needed
[2026-06-12 23:09:24,701.701 INFO    ] Script finished. Safe exiting...
[2026-06-12 23:09:24,702.702 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 23:09:24,705.705 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 23:09:24,708.708 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 23:09:26,747.747 INFO    ] ================================================
[2026-06-12 23:09:26,762.762 INFO    ] Launching Daemon at Fri Jun 12 23:09:26 IST 2026
[2026-06-12 23:09:26,772.772 INFO    ] ================================================
[2026-06-12 23:09:27,117.117 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 23:09:27
[2026-06-12 23:09:27,430.430 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 23:09:27,572.572 INFO    ] Initializing speech engine...
[2026-06-12 23:09:27,578.578 INFO    ] 2026-06-12 23:09:27
[2026-06-12 23:09:27,783.783 INFO    ] 2026-06-12 23:09:27
[2026-06-12 23:09:27,812.812 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 23:09:27,996.996 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 23:09:27,999.999 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 23:09:28,132.132 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 23:09:28,200.200 INFO    ] time= 12/06/2026 23:09:28
[2026-06-12 23:09:28,227.227 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 23:09:28,233.233 INFO    ] Checking for existing commands in stream...
[2026-06-12 23:09:28,301.301 INFO    ] No existing commands found in stream
[2026-06-12 23:09:33,310.310 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 23:09:33,312.312 INFO    ] Waiting 1.24 seconds before fallback handling...
[2026-06-12 23:09:34,904.904 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 23:09:34,905.905 INFO    ] Checking for system updates...
[2026-06-12 23:09:34,926.926 INFO    ] 200
[2026-06-12 23:09:34,927.927 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:09:34,957.957 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 23:09:34,958.958 INFO    ] No update needed
[2026-06-12 23:09:34,960.960 INFO    ] Checking for camera pi updates...
[2026-06-12 23:09:34,980.980 INFO    ] 200
[2026-06-12 23:09:34,982.982 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:09:35,009.009 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 23:09:35,058.058 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 23:09:35,060.060 INFO    ] No camera update needed
[2026-06-12 23:09:35,061.061 INFO    ] Script finished. Safe exiting...
[2026-06-12 23:09:35,062.062 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 23:09:35,065.065 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 23:09:35,068.068 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 23:09:37,107.107 INFO    ] ================================================
[2026-06-12 23:09:37,122.122 INFO    ] Launching Daemon at Fri Jun 12 23:09:37 IST 2026
[2026-06-12 23:09:37,132.132 INFO    ] ================================================
[2026-06-12 23:09:37,473.473 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 23:09:37
[2026-06-12 23:09:37,789.789 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 23:09:37,936.936 INFO    ] Initializing speech engine...
[2026-06-12 23:09:37,942.942 INFO    ] 2026-06-12 23:09:37
[2026-06-12 23:09:38,145.145 INFO    ] 2026-06-12 23:09:38
[2026-06-12 23:09:38,174.174 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 23:09:38,357.357 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 23:09:38,366.366 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 23:09:38,491.491 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 23:09:38,543.543 INFO    ] time= 12/06/2026 23:09:38
[2026-06-12 23:09:38,577.577 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 23:09:38,587.587 INFO    ] Checking for existing commands in stream...
[2026-06-12 23:09:38,685.685 INFO    ] No existing commands found in stream
[2026-06-12 23:09:43,700.700 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 23:09:43,702.702 INFO    ] Waiting 1.01 seconds before fallback handling...
[2026-06-12 23:09:45,024.024 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 23:09:45,026.026 INFO    ] Checking for system updates...
[2026-06-12 23:09:45,047.047 INFO    ] 200
[2026-06-12 23:09:45,048.048 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:09:45,080.080 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 23:09:45,082.082 INFO    ] No update needed
[2026-06-12 23:09:45,084.084 INFO    ] Checking for camera pi updates...
[2026-06-12 23:09:45,103.103 INFO    ] 200
[2026-06-12 23:09:45,104.104 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:09:45,129.129 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 23:09:45,178.178 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 23:09:45,180.180 INFO    ] No camera update needed
[2026-06-12 23:09:45,182.182 INFO    ] Script finished. Safe exiting...
[2026-06-12 23:09:45,183.183 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 23:09:45,186.186 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 23:09:45,189.189 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 23:09:47,229.229 INFO    ] ================================================
[2026-06-12 23:09:47,244.244 INFO    ] Launching Daemon at Fri Jun 12 23:09:47 IST 2026
[2026-06-12 23:09:47,255.255 INFO    ] ================================================
[2026-06-12 23:09:47,607.607 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 23:09:47
[2026-06-12 23:09:47,925.925 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 23:09:48,057.057 INFO    ] Initializing speech engine...
[2026-06-12 23:09:48,062.062 INFO    ] 2026-06-12 23:09:48
[2026-06-12 23:09:48,292.292 INFO    ] 2026-06-12 23:09:48
[2026-06-12 23:09:48,322.322 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 23:09:48,518.518 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 23:09:48,522.522 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 23:09:48,660.660 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 23:09:48,716.716 INFO    ] time= 12/06/2026 23:09:48
[2026-06-12 23:09:48,755.755 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 23:09:48,766.766 INFO    ] Checking for existing commands in stream...
[2026-06-12 23:09:48,842.842 INFO    ] No existing commands found in stream
[2026-06-12 23:09:53,856.856 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 23:09:53,859.859 INFO    ] Waiting 2.13 seconds before fallback handling...
[2026-06-12 23:09:56,342.342 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 23:09:56,343.343 INFO    ] Checking for system updates...
[2026-06-12 23:09:56,365.365 INFO    ] 200
[2026-06-12 23:09:56,366.366 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:09:56,397.397 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 23:09:56,398.398 INFO    ] No update needed
[2026-06-12 23:09:56,399.399 INFO    ] Checking for camera pi updates...
[2026-06-12 23:09:56,420.420 INFO    ] 200
[2026-06-12 23:09:56,421.421 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:09:56,444.444 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 23:09:56,488.488 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 23:09:56,489.489 INFO    ] No camera update needed
[2026-06-12 23:09:56,491.491 INFO    ] Script finished. Safe exiting...
[2026-06-12 23:09:56,492.492 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 23:09:56,495.495 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 23:09:56,497.497 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 23:09:58,535.535 INFO    ] ================================================
[2026-06-12 23:09:58,550.550 INFO    ] Launching Daemon at Fri Jun 12 23:09:58 IST 2026
[2026-06-12 23:09:58,561.561 INFO    ] ================================================
[2026-06-12 23:09:58,907.907 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 23:09:58
[2026-06-12 23:09:59,241.241 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 23:09:59,391.391 INFO    ] Initializing speech engine...
[2026-06-12 23:09:59,396.396 INFO    ] 2026-06-12 23:09:59
[2026-06-12 23:09:59,604.604 INFO    ] 2026-06-12 23:09:59
[2026-06-12 23:09:59,633.633 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 23:09:59,817.817 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 23:09:59,826.826 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 23:09:59,957.957 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 23:10:00,024.024 INFO    ] time= 12/06/2026 23:09:59
[2026-06-12 23:10:00,048.048 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 23:10:00,055.055 INFO    ] Checking for existing commands in stream...
[2026-06-12 23:10:00,121.121 INFO    ] No existing commands found in stream
[2026-06-12 23:10:05,136.136 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 23:10:05,139.139 INFO    ] Waiting 0.59 seconds before fallback handling...
[2026-06-12 23:10:08,263.263 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 23:10:08,266.266 INFO    ] Checking for system updates...
[2026-06-12 23:10:08,303.303 INFO    ] 200
[2026-06-12 23:10:08,306.306 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:10:08,361.361 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 23:10:08,363.363 INFO    ] No update needed
[2026-06-12 23:10:08,366.366 INFO    ] Checking for camera pi updates...
[2026-06-12 23:10:08,401.401 INFO    ] 200
[2026-06-12 23:10:08,404.404 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:10:08,429.429 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 23:10:08,476.476 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 23:10:08,477.477 INFO    ] No camera update needed
[2026-06-12 23:10:08,479.479 INFO    ] Script finished. Safe exiting...
[2026-06-12 23:10:08,480.480 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 23:10:08,483.483 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 23:10:08,486.486 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 23:10:10,525.525 INFO    ] ================================================
[2026-06-12 23:10:10,540.540 INFO    ] Launching Daemon at Fri Jun 12 23:10:10 IST 2026
[2026-06-12 23:10:10,550.550 INFO    ] ================================================
[2026-06-12 23:10:10,902.902 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 23:10:10
[2026-06-12 23:10:11,214.214 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 23:10:11,345.345 INFO    ] Initializing speech engine...
[2026-06-12 23:10:11,351.351 INFO    ] 2026-06-12 23:10:11
[2026-06-12 23:10:11,578.578 INFO    ] 2026-06-12 23:10:11
[2026-06-12 23:10:11,608.608 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 23:10:11,774.774 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 23:10:11,807.807 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 23:10:11,949.949 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 23:10:12,007.007 INFO    ] time= 12/06/2026 23:10:11
[2026-06-12 23:10:12,045.045 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 23:10:12,051.051 INFO    ] Checking for existing commands in stream...
[2026-06-12 23:10:12,127.127 INFO    ] No existing commands found in stream
[2026-06-12 23:10:17,141.141 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 23:10:17,144.144 INFO    ] Waiting 1.85 seconds before fallback handling...
[2026-06-12 23:10:19,372.372 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 23:10:19,373.373 INFO    ] Checking for system updates...
[2026-06-12 23:10:19,394.394 INFO    ] 200
[2026-06-12 23:10:19,395.395 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:10:19,427.427 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 23:10:19,428.428 INFO    ] No update needed
[2026-06-12 23:10:19,429.429 INFO    ] Checking for camera pi updates...
[2026-06-12 23:10:19,450.450 INFO    ] 200
[2026-06-12 23:10:19,451.451 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:10:19,474.474 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 23:10:19,523.523 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 23:10:19,525.525 INFO    ] No camera update needed
[2026-06-12 23:10:19,526.526 INFO    ] Script finished. Safe exiting...
[2026-06-12 23:10:19,527.527 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 23:10:19,530.530 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 23:10:19,533.533 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 23:10:21,571.571 INFO    ] ================================================
[2026-06-12 23:10:21,586.586 INFO    ] Launching Daemon at Fri Jun 12 23:10:21 IST 2026
[2026-06-12 23:10:21,596.596 INFO    ] ================================================
[2026-06-12 23:10:21,925.925 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 23:10:21
[2026-06-12 23:10:22,241.241 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 23:10:22,373.373 INFO    ] Initializing speech engine...
[2026-06-12 23:10:22,381.381 INFO    ] 2026-06-12 23:10:22
[2026-06-12 23:10:22,592.592 INFO    ] 2026-06-12 23:10:22
[2026-06-12 23:10:22,627.627 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 23:10:22,804.804 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 23:10:22,814.814 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 23:10:22,983.983 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 23:10:23,017.017 INFO    ] time= 12/06/2026 23:10:22
[2026-06-12 23:10:23,037.037 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 23:10:23,038.038 INFO    ] Checking for existing commands in stream...
[2026-06-12 23:10:23,105.105 INFO    ] No existing commands found in stream
[2026-06-12 23:10:28,125.125 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 23:10:28,127.127 INFO    ] Waiting 0.20 seconds before fallback handling...
[2026-06-12 23:10:28,701.701 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 23:10:28,702.702 INFO    ] Checking for system updates...
[2026-06-12 23:10:28,723.723 INFO    ] 200
[2026-06-12 23:10:28,725.725 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:10:28,755.755 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 23:10:28,757.757 INFO    ] No update needed
[2026-06-12 23:10:28,758.758 INFO    ] Checking for camera pi updates...
[2026-06-12 23:10:28,777.777 INFO    ] 200
[2026-06-12 23:10:28,779.779 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:10:28,803.803 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 23:10:28,947.947 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 23:10:28,949.949 INFO    ] No camera update needed
[2026-06-12 23:10:28,951.951 INFO    ] Script finished. Safe exiting...
[2026-06-12 23:10:28,952.952 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 23:10:28,955.955 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 23:10:28,958.958 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 23:10:31,997.997 INFO    ] ================================================
[2026-06-12 23:10:31,012.012 INFO    ] Launching Daemon at Fri Jun 12 23:10:31 IST 2026
[2026-06-12 23:10:31,022.022 INFO    ] ================================================
[2026-06-12 23:10:31,340.340 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 23:10:31
[2026-06-12 23:10:31,657.657 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 23:10:31,799.799 INFO    ] Initializing speech engine...
[2026-06-12 23:10:31,804.804 INFO    ] 2026-06-12 23:10:31
[2026-06-12 23:10:32,031.031 INFO    ] 2026-06-12 23:10:32
[2026-06-12 23:10:32,062.062 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 23:10:32,262.262 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 23:10:32,272.272 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 23:10:32,407.407 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 23:10:32,486.486 INFO    ] time= 12/06/2026 23:10:32
[2026-06-12 23:10:32,515.515 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 23:10:32,523.523 INFO    ] Checking for existing commands in stream...
[2026-06-12 23:10:32,618.618 INFO    ] No existing commands found in stream
[2026-06-12 23:10:37,651.651 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 23:10:37,654.654 INFO    ] Waiting 3.23 seconds before fallback handling...
[2026-06-12 23:10:41,230.230 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 23:10:41,232.232 INFO    ] Checking for system updates...
[2026-06-12 23:10:41,252.252 INFO    ] 200
[2026-06-12 23:10:41,253.253 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:10:41,283.283 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 23:10:41,284.284 INFO    ] No update needed
[2026-06-12 23:10:41,286.286 INFO    ] Checking for camera pi updates...
[2026-06-12 23:10:41,305.305 INFO    ] 200
[2026-06-12 23:10:41,306.306 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:10:41,329.329 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 23:10:41,375.375 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 23:10:41,377.377 INFO    ] No camera update needed
[2026-06-12 23:10:41,378.378 INFO    ] Script finished. Safe exiting...
[2026-06-12 23:10:41,379.379 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 23:10:41,382.382 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 23:10:41,385.385 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 23:10:43,422.422 INFO    ] ================================================
[2026-06-12 23:10:43,437.437 INFO    ] Launching Daemon at Fri Jun 12 23:10:43 IST 2026
[2026-06-12 23:10:43,447.447 INFO    ] ================================================
[2026-06-12 23:10:43,801.801 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 23:10:43
[2026-06-12 23:10:44,114.114 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 23:10:44,257.257 INFO    ] Initializing speech engine...
[2026-06-12 23:10:44,262.262 INFO    ] 2026-06-12 23:10:44
[2026-06-12 23:10:44,465.465 INFO    ] 2026-06-12 23:10:44
[2026-06-12 23:10:44,494.494 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 23:10:44,677.677 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 23:10:44,686.686 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 23:10:44,839.839 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 23:10:44,888.888 INFO    ] time= 12/06/2026 23:10:44
[2026-06-12 23:10:44,910.910 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 23:10:44,915.915 INFO    ] Checking for existing commands in stream...
[2026-06-12 23:10:44,983.983 INFO    ] No existing commands found in stream
[2026-06-12 23:10:49,997.997 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 23:10:49,999.999 INFO    ] Waiting 0.93 seconds before fallback handling...
[2026-06-12 23:10:51,342.342 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 23:10:51,344.344 INFO    ] Checking for system updates...
[2026-06-12 23:10:51,365.365 INFO    ] 200
[2026-06-12 23:10:51,367.367 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:10:51,398.398 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 23:10:51,399.399 INFO    ] No update needed
[2026-06-12 23:10:51,401.401 INFO    ] Checking for camera pi updates...
[2026-06-12 23:10:51,423.423 INFO    ] 200
[2026-06-12 23:10:51,424.424 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:10:51,449.449 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 23:10:51,496.496 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 23:10:51,498.498 INFO    ] No camera update needed
[2026-06-12 23:10:51,499.499 INFO    ] Script finished. Safe exiting...
[2026-06-12 23:10:51,500.500 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 23:10:51,504.504 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 23:10:51,507.507 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 23:10:53,546.546 INFO    ] ================================================
[2026-06-12 23:10:53,561.561 INFO    ] Launching Daemon at Fri Jun 12 23:10:53 IST 2026
[2026-06-12 23:10:53,572.572 INFO    ] ================================================
[2026-06-12 23:10:53,939.939 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 23:10:53
[2026-06-12 23:10:54,255.255 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 23:10:54,399.399 INFO    ] Initializing speech engine...
[2026-06-12 23:10:54,404.404 INFO    ] 2026-06-12 23:10:54
[2026-06-12 23:10:54,608.608 INFO    ] 2026-06-12 23:10:54
[2026-06-12 23:10:54,637.637 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 23:10:54,821.821 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 23:10:54,829.829 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 23:10:54,974.974 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 23:10:55,026.026 INFO    ] time= 12/06/2026 23:10:54
[2026-06-12 23:10:55,048.048 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 23:10:55,055.055 INFO    ] Checking for existing commands in stream...
[2026-06-12 23:10:55,121.121 INFO    ] No existing commands found in stream
[2026-06-12 23:11:00,130.130 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 23:11:00,133.133 INFO    ] Waiting 3.19 seconds before fallback handling...
[2026-06-12 23:11:03,702.702 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 23:11:03,703.703 INFO    ] Checking for system updates...
[2026-06-12 23:11:03,724.724 INFO    ] 200
[2026-06-12 23:11:03,725.725 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:11:03,758.758 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 23:11:03,759.759 INFO    ] No update needed
[2026-06-12 23:11:03,761.761 INFO    ] Checking for camera pi updates...
[2026-06-12 23:11:03,781.781 INFO    ] 200
[2026-06-12 23:11:03,782.782 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:11:03,806.806 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 23:11:03,837.837 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 23:11:03,839.839 INFO    ] No camera update needed
[2026-06-12 23:11:03,840.840 INFO    ] Script finished. Safe exiting...
[2026-06-12 23:11:03,841.841 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 23:11:03,844.844 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 23:11:03,847.847 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 23:11:05,886.886 INFO    ] ================================================
[2026-06-12 23:11:05,901.901 INFO    ] Launching Daemon at Fri Jun 12 23:11:05 IST 2026
[2026-06-12 23:11:05,912.912 INFO    ] ================================================
[2026-06-12 23:11:06,262.262 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 23:11:06
[2026-06-12 23:11:06,596.596 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 23:11:06,745.745 INFO    ] Initializing speech engine...
[2026-06-12 23:11:06,751.751 INFO    ] 2026-06-12 23:11:06
[2026-06-12 23:11:06,961.961 INFO    ] 2026-06-12 23:11:06
[2026-06-12 23:11:06,990.990 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 23:11:07,176.176 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 23:11:07,185.185 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 23:11:07,334.334 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 23:11:07,388.388 INFO    ] time= 12/06/2026 23:11:07
[2026-06-12 23:11:07,411.411 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 23:11:07,417.417 INFO    ] Checking for existing commands in stream...
[2026-06-12 23:11:07,485.485 INFO    ] No existing commands found in stream
[2026-06-12 23:11:12,495.495 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 23:11:12,498.498 INFO    ] Waiting 1.29 seconds before fallback handling...
[2026-06-12 23:11:14,180.180 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 23:11:14,181.181 INFO    ] Checking for system updates...
[2026-06-12 23:11:14,202.202 INFO    ] 200
[2026-06-12 23:11:14,203.203 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:11:14,234.234 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 23:11:14,235.235 INFO    ] No update needed
[2026-06-12 23:11:14,237.237 INFO    ] Checking for camera pi updates...
[2026-06-12 23:11:14,256.256 INFO    ] 200
[2026-06-12 23:11:14,258.258 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:11:14,282.282 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 23:11:14,340.340 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 23:11:14,341.341 INFO    ] No camera update needed
[2026-06-12 23:11:14,342.342 INFO    ] Script finished. Safe exiting...
[2026-06-12 23:11:14,344.344 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 23:11:14,347.347 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 23:11:14,350.350 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 23:11:16,389.389 INFO    ] ================================================
[2026-06-12 23:11:16,405.405 INFO    ] Launching Daemon at Fri Jun 12 23:11:16 IST 2026
[2026-06-12 23:11:16,415.415 INFO    ] ================================================
[2026-06-12 23:11:16,772.772 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 23:11:16
[2026-06-12 23:11:17,084.084 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 23:11:17,228.228 INFO    ] Initializing speech engine...
[2026-06-12 23:11:17,233.233 INFO    ] 2026-06-12 23:11:17
[2026-06-12 23:11:17,438.438 INFO    ] 2026-06-12 23:11:17
[2026-06-12 23:11:17,467.467 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 23:11:17,655.655 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 23:11:17,665.665 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 23:11:17,811.811 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 23:11:17,864.864 INFO    ] time= 12/06/2026 23:11:17
[2026-06-12 23:11:17,888.888 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 23:11:17,894.894 INFO    ] Checking for existing commands in stream...
[2026-06-12 23:11:17,961.961 INFO    ] No existing commands found in stream
[2026-06-12 23:11:22,975.975 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 23:11:22,978.978 INFO    ] Waiting 0.31 seconds before fallback handling...
[2026-06-12 23:11:23,678.678 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 23:11:23,680.680 INFO    ] Checking for system updates...
[2026-06-12 23:11:23,700.700 INFO    ] 200
[2026-06-12 23:11:23,702.702 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:11:23,731.731 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 23:11:23,733.733 INFO    ] No update needed
[2026-06-12 23:11:23,734.734 INFO    ] Checking for camera pi updates...
[2026-06-12 23:11:23,754.754 INFO    ] 200
[2026-06-12 23:11:23,756.756 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:11:23,778.778 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 23:11:23,822.822 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 23:11:23,823.823 INFO    ] No camera update needed
[2026-06-12 23:11:23,824.824 INFO    ] Script finished. Safe exiting...
[2026-06-12 23:11:23,825.825 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 23:11:23,828.828 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 23:11:23,831.831 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 23:11:25,869.869 INFO    ] ================================================
[2026-06-12 23:11:25,884.884 INFO    ] Launching Daemon at Fri Jun 12 23:11:25 IST 2026
[2026-06-12 23:11:25,895.895 INFO    ] ================================================
[2026-06-12 23:11:26,230.230 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 23:11:26
[2026-06-12 23:11:26,545.545 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 23:11:26,688.688 INFO    ] Initializing speech engine...
[2026-06-12 23:11:26,693.693 INFO    ] 2026-06-12 23:11:26
[2026-06-12 23:11:26,896.896 INFO    ] 2026-06-12 23:11:26
[2026-06-12 23:11:26,924.924 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 23:11:27,106.106 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 23:11:27,115.115 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 23:11:27,264.264 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 23:11:27,312.312 INFO    ] time= 12/06/2026 23:11:27
[2026-06-12 23:11:27,335.335 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 23:11:27,340.340 INFO    ] Checking for existing commands in stream...
[2026-06-12 23:11:27,407.407 INFO    ] No existing commands found in stream
[2026-06-12 23:11:32,416.416 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 23:11:32,419.419 INFO    ] Waiting 3.96 seconds before fallback handling...
[2026-06-12 23:11:38,961.961 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 23:11:38,964.964 INFO    ] Checking for system updates...
[2026-06-12 23:11:39,000.000 INFO    ] 200
[2026-06-12 23:11:39,003.003 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:11:39,056.056 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 23:11:39,058.058 INFO    ] No update needed
[2026-06-12 23:11:39,061.061 INFO    ] Checking for camera pi updates...
[2026-06-12 23:11:39,082.082 INFO    ] 200
[2026-06-12 23:11:39,083.083 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:11:39,107.107 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 23:11:39,152.152 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 23:11:39,154.154 INFO    ] No camera update needed
[2026-06-12 23:11:39,155.155 INFO    ] Script finished. Safe exiting...
[2026-06-12 23:11:39,156.156 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 23:11:39,159.159 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 23:11:39,162.162 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 23:11:41,200.200 INFO    ] ================================================
[2026-06-12 23:11:41,215.215 INFO    ] Launching Daemon at Fri Jun 12 23:11:41 IST 2026
[2026-06-12 23:11:41,226.226 INFO    ] ================================================
[2026-06-12 23:11:41,571.571 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 23:11:41
[2026-06-12 23:11:41,888.888 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 23:11:42,031.031 INFO    ] Initializing speech engine...
[2026-06-12 23:11:42,037.037 INFO    ] 2026-06-12 23:11:42
[2026-06-12 23:11:42,242.242 INFO    ] 2026-06-12 23:11:42
[2026-06-12 23:11:42,270.270 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 23:11:42,455.455 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 23:11:42,465.465 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 23:11:42,612.612 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 23:11:42,666.666 INFO    ] time= 12/06/2026 23:11:42
[2026-06-12 23:11:42,687.687 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 23:11:42,693.693 INFO    ] Checking for existing commands in stream...
[2026-06-12 23:11:42,760.760 INFO    ] No existing commands found in stream
[2026-06-12 23:11:47,769.769 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 23:11:47,772.772 INFO    ] Waiting 2.31 seconds before fallback handling...
[2026-06-12 23:11:50,487.487 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 23:11:50,488.488 INFO    ] Checking for system updates...
[2026-06-12 23:11:50,509.509 INFO    ] 200
[2026-06-12 23:11:50,511.511 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:11:50,541.541 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 23:11:50,542.542 INFO    ] No update needed
[2026-06-12 23:11:50,543.543 INFO    ] Checking for camera pi updates...
[2026-06-12 23:11:50,562.562 INFO    ] 200
[2026-06-12 23:11:50,564.564 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:11:50,587.587 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 23:11:50,637.637 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 23:11:50,638.638 INFO    ] No camera update needed
[2026-06-12 23:11:50,639.639 INFO    ] Script finished. Safe exiting...
[2026-06-12 23:11:50,641.641 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 23:11:50,644.644 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 23:11:50,647.647 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 23:11:52,686.686 INFO    ] ================================================
[2026-06-12 23:11:52,701.701 INFO    ] Launching Daemon at Fri Jun 12 23:11:52 IST 2026
[2026-06-12 23:11:52,712.712 INFO    ] ================================================
[2026-06-12 23:11:53,058.058 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 23:11:53
[2026-06-12 23:11:53,370.370 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 23:11:53,503.503 INFO    ] Initializing speech engine...
[2026-06-12 23:11:53,507.507 INFO    ] 2026-06-12 23:11:53
[2026-06-12 23:11:53,735.735 INFO    ] 2026-06-12 23:11:53
[2026-06-12 23:11:53,765.765 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 23:11:53,963.963 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 23:11:53,972.972 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 23:11:54,112.112 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 23:11:54,171.171 INFO    ] time= 12/06/2026 23:11:54
[2026-06-12 23:11:54,199.199 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 23:11:54,211.211 INFO    ] Checking for existing commands in stream...
[2026-06-12 23:11:54,313.313 INFO    ] No existing commands found in stream
[2026-06-12 23:11:59,322.322 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 23:11:59,324.324 INFO    ] Waiting 1.76 seconds before fallback handling...
[2026-06-12 23:12:01,541.541 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 23:12:01,543.543 INFO    ] Checking for system updates...
[2026-06-12 23:12:01,573.573 INFO    ] 200
[2026-06-12 23:12:01,575.575 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:12:01,617.617 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 23:12:01,619.619 INFO    ] No update needed
[2026-06-12 23:12:01,621.621 INFO    ] Checking for camera pi updates...
[2026-06-12 23:12:01,643.643 INFO    ] 200
[2026-06-12 23:12:01,645.645 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:12:01,673.673 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 23:12:01,737.737 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 23:12:01,740.740 INFO    ] No camera update needed
[2026-06-12 23:12:01,742.742 INFO    ] Script finished. Safe exiting...
[2026-06-12 23:12:01,745.745 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 23:12:01,749.749 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 23:12:01,755.755 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 23:12:03,793.793 INFO    ] ================================================
[2026-06-12 23:12:03,809.809 INFO    ] Launching Daemon at Fri Jun 12 23:12:03 IST 2026
[2026-06-12 23:12:03,819.819 INFO    ] ================================================
[2026-06-12 23:12:04,148.148 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 23:12:04
[2026-06-12 23:12:04,458.458 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 23:12:04,601.601 INFO    ] Initializing speech engine...
[2026-06-12 23:12:04,605.605 INFO    ] 2026-06-12 23:12:04
[2026-06-12 23:12:04,812.812 INFO    ] 2026-06-12 23:12:04
[2026-06-12 23:12:04,840.840 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 23:12:05,026.026 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 23:12:05,034.034 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 23:12:05,191.191 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 23:12:05,247.247 INFO    ] time= 12/06/2026 23:12:05
[2026-06-12 23:12:05,261.261 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 23:12:05,263.263 INFO    ] Checking for existing commands in stream...
[2026-06-12 23:12:05,331.331 INFO    ] No existing commands found in stream
[2026-06-12 23:12:10,340.340 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 23:12:10,342.342 INFO    ] Waiting 3.86 seconds before fallback handling...
[2026-06-12 23:12:14,580.580 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 23:12:14,581.581 INFO    ] Checking for system updates...
[2026-06-12 23:12:14,602.602 INFO    ] 200
[2026-06-12 23:12:14,603.603 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:12:14,635.635 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 23:12:14,636.636 INFO    ] No update needed
[2026-06-12 23:12:14,637.637 INFO    ] Checking for camera pi updates...
[2026-06-12 23:12:14,657.657 INFO    ] 200
[2026-06-12 23:12:14,658.658 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:12:14,682.682 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 23:12:14,725.725 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 23:12:14,727.727 INFO    ] No camera update needed
[2026-06-12 23:12:14,728.728 INFO    ] Script finished. Safe exiting...
[2026-06-12 23:12:14,729.729 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 23:12:14,732.732 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 23:12:14,735.735 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 23:12:16,775.775 INFO    ] ================================================
[2026-06-12 23:12:16,790.790 INFO    ] Launching Daemon at Fri Jun 12 23:12:16 IST 2026
[2026-06-12 23:12:16,800.800 INFO    ] ================================================
[2026-06-12 23:12:17,149.149 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 23:12:17
[2026-06-12 23:12:17,462.462 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 23:12:17,598.598 INFO    ] Initializing speech engine...
[2026-06-12 23:12:17,612.612 INFO    ] 2026-06-12 23:12:17
[2026-06-12 23:12:17,830.830 INFO    ] 2026-06-12 23:12:17
[2026-06-12 23:12:17,861.861 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 23:12:18,056.056 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 23:12:18,059.059 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 23:12:18,189.189 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 23:12:18,250.250 INFO    ] time= 12/06/2026 23:12:18
[2026-06-12 23:12:18,284.284 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 23:12:18,289.289 INFO    ] Checking for existing commands in stream...
[2026-06-12 23:12:18,360.360 INFO    ] No existing commands found in stream
[2026-06-12 23:12:23,369.369 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 23:12:23,372.372 INFO    ] Waiting 0.78 seconds before fallback handling...
[2026-06-12 23:12:24,492.492 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 23:12:24,493.493 INFO    ] Checking for system updates...
[2026-06-12 23:12:24,514.514 INFO    ] 200
[2026-06-12 23:12:24,515.515 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:12:24,546.546 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 23:12:24,548.548 INFO    ] No update needed
[2026-06-12 23:12:24,549.549 INFO    ] Checking for camera pi updates...
[2026-06-12 23:12:24,568.568 INFO    ] 200
[2026-06-12 23:12:24,570.570 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:12:24,595.595 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 23:12:24,639.639 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 23:12:24,640.640 INFO    ] No camera update needed
[2026-06-12 23:12:24,642.642 INFO    ] Script finished. Safe exiting...
[2026-06-12 23:12:24,643.643 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 23:12:24,646.646 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 23:12:24,648.648 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 23:12:26,687.687 INFO    ] ================================================
[2026-06-12 23:12:26,702.702 INFO    ] Launching Daemon at Fri Jun 12 23:12:26 IST 2026
[2026-06-12 23:12:26,713.713 INFO    ] ================================================
[2026-06-12 23:12:27,071.071 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 23:12:27
[2026-06-12 23:12:27,389.389 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 23:12:27,524.524 INFO    ] Initializing speech engine...
[2026-06-12 23:12:27,529.529 INFO    ] 2026-06-12 23:12:27
[2026-06-12 23:12:27,756.756 INFO    ] 2026-06-12 23:12:27
[2026-06-12 23:12:27,786.786 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 23:12:27,984.984 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 23:12:27,995.995 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 23:12:28,131.131 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 23:12:28,199.199 INFO    ] time= 12/06/2026 23:12:28
[2026-06-12 23:12:28,223.223 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 23:12:28,229.229 INFO    ] Checking for existing commands in stream...
[2026-06-12 23:12:28,296.296 INFO    ] No existing commands found in stream
[2026-06-12 23:12:33,310.310 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 23:12:33,313.313 INFO    ] Waiting 1.51 seconds before fallback handling...
[2026-06-12 23:12:35,193.193 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 23:12:35,194.194 INFO    ] Checking for system updates...
[2026-06-12 23:12:35,215.215 INFO    ] 200
[2026-06-12 23:12:35,216.216 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:12:35,248.248 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 23:12:35,249.249 INFO    ] No update needed
[2026-06-12 23:12:35,251.251 INFO    ] Checking for camera pi updates...
[2026-06-12 23:12:35,271.271 INFO    ] 200
[2026-06-12 23:12:35,272.272 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:12:35,295.295 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 23:12:35,350.350 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 23:12:35,351.351 INFO    ] No camera update needed
[2026-06-12 23:12:35,352.352 INFO    ] Script finished. Safe exiting...
[2026-06-12 23:12:35,354.354 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 23:12:35,357.357 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 23:12:35,359.359 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 23:12:37,397.397 INFO    ] ================================================
[2026-06-12 23:12:37,412.412 INFO    ] Launching Daemon at Fri Jun 12 23:12:37 IST 2026
[2026-06-12 23:12:37,424.424 INFO    ] ================================================
[2026-06-12 23:12:37,794.794 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 23:12:37
[2026-06-12 23:12:38,110.110 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 23:12:38,250.250 INFO    ] Initializing speech engine...
[2026-06-12 23:12:38,259.259 INFO    ] 2026-06-12 23:12:38
[2026-06-12 23:12:38,472.472 INFO    ] 2026-06-12 23:12:38
[2026-06-12 23:12:38,500.500 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 23:12:38,685.685 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 23:12:38,695.695 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 23:12:38,834.834 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 23:12:38,891.891 INFO    ] time= 12/06/2026 23:12:38
[2026-06-12 23:12:38,915.915 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 23:12:38,921.921 INFO    ] Checking for existing commands in stream...
[2026-06-12 23:12:38,989.989 INFO    ] No existing commands found in stream
[2026-06-12 23:12:44,004.004 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 23:12:44,007.007 INFO    ] Waiting 2.00 seconds before fallback handling...
[2026-06-12 23:12:51,420.420 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 23:12:51,422.422 INFO    ] Checking for system updates...
[2026-06-12 23:12:51,444.444 INFO    ] 200
[2026-06-12 23:12:51,446.446 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:12:51,477.477 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 23:12:51,478.478 INFO    ] No update needed
[2026-06-12 23:12:51,479.479 INFO    ] Checking for camera pi updates...
[2026-06-12 23:12:51,500.500 INFO    ] 200
[2026-06-12 23:12:51,502.502 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:12:51,527.527 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 23:12:51,571.571 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 23:12:51,572.572 INFO    ] No camera update needed
[2026-06-12 23:12:51,573.573 INFO    ] Script finished. Safe exiting...
[2026-06-12 23:12:51,575.575 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 23:12:51,578.578 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 23:12:51,581.581 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 23:12:53,620.620 INFO    ] ================================================
[2026-06-12 23:12:53,636.636 INFO    ] Launching Daemon at Fri Jun 12 23:12:53 IST 2026
[2026-06-12 23:12:53,648.648 INFO    ] ================================================
[2026-06-12 23:12:53,989.989 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 23:12:53
[2026-06-12 23:12:54,322.322 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 23:12:54,461.461 INFO    ] Initializing speech engine...
[2026-06-12 23:12:54,473.473 INFO    ] 2026-06-12 23:12:54
[2026-06-12 23:12:54,683.683 INFO    ] 2026-06-12 23:12:54
[2026-06-12 23:12:54,713.713 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 23:12:54,895.895 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 23:12:54,898.898 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 23:12:55,050.050 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 23:12:55,103.103 INFO    ] time= 12/06/2026 23:12:55
[2026-06-12 23:12:55,125.125 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 23:12:55,132.132 INFO    ] Checking for existing commands in stream...
[2026-06-12 23:12:55,198.198 INFO    ] No existing commands found in stream
[2026-06-12 23:13:00,207.207 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 23:13:00,211.211 INFO    ] Waiting 1.57 seconds before fallback handling...
[2026-06-12 23:13:02,142.142 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 23:13:02,144.144 INFO    ] Checking for system updates...
[2026-06-12 23:13:02,170.170 INFO    ] 200
[2026-06-12 23:13:02,172.172 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:13:02,208.208 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 23:13:02,210.210 INFO    ] No update needed
[2026-06-12 23:13:02,212.212 INFO    ] Checking for camera pi updates...
[2026-06-12 23:13:02,236.236 INFO    ] 200
[2026-06-12 23:13:02,238.238 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:13:02,277.277 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 23:13:02,311.311 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 23:13:02,314.314 INFO    ] No camera update needed
[2026-06-12 23:13:02,317.317 INFO    ] Script finished. Safe exiting...
[2026-06-12 23:13:02,319.319 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 23:13:02,326.326 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 23:13:02,330.330 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 23:13:04,370.370 INFO    ] ================================================
[2026-06-12 23:13:04,386.386 INFO    ] Launching Daemon at Fri Jun 12 23:13:04 IST 2026
[2026-06-12 23:13:04,397.397 INFO    ] ================================================
[2026-06-12 23:13:04,736.736 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 23:13:04
[2026-06-12 23:13:05,069.069 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 23:13:05,217.217 INFO    ] Initializing speech engine...
[2026-06-12 23:13:05,222.222 INFO    ] 2026-06-12 23:13:05
[2026-06-12 23:13:05,428.428 INFO    ] 2026-06-12 23:13:05
[2026-06-12 23:13:05,457.457 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 23:13:05,658.658 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 23:13:05,666.666 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 23:13:05,817.817 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 23:13:05,871.871 INFO    ] time= 12/06/2026 23:13:05
[2026-06-12 23:13:05,887.887 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 23:13:05,893.893 INFO    ] Checking for existing commands in stream...
[2026-06-12 23:13:05,960.960 INFO    ] No existing commands found in stream
[2026-06-12 23:13:10,974.974 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 23:13:10,978.978 INFO    ] Waiting 1.19 seconds before fallback handling...
[2026-06-12 23:13:12,578.578 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 23:13:12,580.580 INFO    ] Checking for system updates...
[2026-06-12 23:13:12,601.601 INFO    ] 200
[2026-06-12 23:13:12,602.602 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:13:12,633.633 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 23:13:12,634.634 INFO    ] No update needed
[2026-06-12 23:13:12,635.635 INFO    ] Checking for camera pi updates...
[2026-06-12 23:13:12,656.656 INFO    ] 200
[2026-06-12 23:13:12,658.658 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:13:12,684.684 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 23:13:12,746.746 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 23:13:12,748.748 INFO    ] No camera update needed
[2026-06-12 23:13:12,749.749 INFO    ] Script finished. Safe exiting...
[2026-06-12 23:13:12,751.751 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 23:13:12,754.754 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 23:13:12,757.757 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 23:13:14,797.797 INFO    ] ================================================
[2026-06-12 23:13:14,812.812 INFO    ] Launching Daemon at Fri Jun 12 23:13:14 IST 2026
[2026-06-12 23:13:14,823.823 INFO    ] ================================================
[2026-06-12 23:13:15,156.156 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 23:13:15
[2026-06-12 23:13:15,491.491 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 23:13:15,630.630 INFO    ] Initializing speech engine...
[2026-06-12 23:13:15,638.638 INFO    ] 2026-06-12 23:13:15
[2026-06-12 23:13:15,855.855 INFO    ] 2026-06-12 23:13:15
[2026-06-12 23:13:15,885.885 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 23:13:16,070.070 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 23:13:16,073.073 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 23:13:16,232.232 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 23:13:16,298.298 INFO    ] time= 12/06/2026 23:13:16
[2026-06-12 23:13:16,304.304 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 23:13:16,311.311 INFO    ] Checking for existing commands in stream...
[2026-06-12 23:13:16,378.378 INFO    ] No existing commands found in stream
[2026-06-12 23:13:21,393.393 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 23:13:21,396.396 INFO    ] Waiting 3.59 seconds before fallback handling...
[2026-06-12 23:13:25,377.377 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 23:13:25,379.379 INFO    ] Checking for system updates...
[2026-06-12 23:13:25,400.400 INFO    ] 200
[2026-06-12 23:13:25,402.402 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:13:25,434.434 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 23:13:25,435.435 INFO    ] No update needed
[2026-06-12 23:13:25,436.436 INFO    ] Checking for camera pi updates...
[2026-06-12 23:13:25,455.455 INFO    ] 200
[2026-06-12 23:13:25,457.457 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:13:25,479.479 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 23:13:25,535.535 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 23:13:25,537.537 INFO    ] No camera update needed
[2026-06-12 23:13:25,538.538 INFO    ] Script finished. Safe exiting...
[2026-06-12 23:13:25,539.539 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 23:13:25,543.543 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 23:13:25,545.545 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 23:13:27,583.583 INFO    ] ================================================
[2026-06-12 23:13:27,599.599 INFO    ] Launching Daemon at Fri Jun 12 23:13:27 IST 2026
[2026-06-12 23:13:27,610.610 INFO    ] ================================================
[2026-06-12 23:13:27,972.972 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 23:13:27
[2026-06-12 23:13:28,306.306 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 23:13:28,453.453 INFO    ] Initializing speech engine...
[2026-06-12 23:13:28,457.457 INFO    ] 2026-06-12 23:13:28
[2026-06-12 23:13:28,660.660 INFO    ] 2026-06-12 23:13:28
[2026-06-12 23:13:28,690.690 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 23:13:28,872.872 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 23:13:28,881.881 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 23:13:29,026.026 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 23:13:29,078.078 INFO    ] time= 12/06/2026 23:13:29
[2026-06-12 23:13:29,101.101 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 23:13:29,107.107 INFO    ] Checking for existing commands in stream...
[2026-06-12 23:13:29,174.174 INFO    ] No existing commands found in stream
[2026-06-12 23:13:34,188.188 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 23:13:34,191.191 INFO    ] Waiting 1.08 seconds before fallback handling...
[2026-06-12 23:13:35,638.638 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 23:13:35,639.639 INFO    ] Checking for system updates...
[2026-06-12 23:13:35,660.660 INFO    ] 200
[2026-06-12 23:13:35,661.661 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:13:35,693.693 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 23:13:35,695.695 INFO    ] No update needed
[2026-06-12 23:13:35,696.696 INFO    ] Checking for camera pi updates...
[2026-06-12 23:13:35,715.715 INFO    ] 200
[2026-06-12 23:13:35,716.716 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:13:35,742.742 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 23:13:35,786.786 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 23:13:35,787.787 INFO    ] No camera update needed
[2026-06-12 23:13:35,789.789 INFO    ] Script finished. Safe exiting...
[2026-06-12 23:13:35,790.790 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 23:13:35,793.793 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 23:13:35,796.796 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 23:13:37,833.833 INFO    ] ================================================
[2026-06-12 23:13:37,849.849 INFO    ] Launching Daemon at Fri Jun 12 23:13:37 IST 2026
[2026-06-12 23:13:37,860.860 INFO    ] ================================================
[2026-06-12 23:13:38,194.194 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 23:13:38
[2026-06-12 23:13:38,513.513 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 23:13:38,643.643 INFO    ] Initializing speech engine...
[2026-06-12 23:13:38,648.648 INFO    ] 2026-06-12 23:13:38
[2026-06-12 23:13:38,864.864 INFO    ] 2026-06-12 23:13:38
[2026-06-12 23:13:38,893.893 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 23:13:39,077.077 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 23:13:39,087.087 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 23:13:39,230.230 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 23:13:39,290.290 INFO    ] time= 12/06/2026 23:13:39
[2026-06-12 23:13:39,306.306 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 23:13:39,312.312 INFO    ] Checking for existing commands in stream...
[2026-06-12 23:13:39,379.379 INFO    ] No existing commands found in stream
[2026-06-12 23:13:44,393.393 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 23:13:44,396.396 INFO    ] Waiting 0.28 seconds before fallback handling...
[2026-06-12 23:13:45,078.078 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 23:13:45,079.079 INFO    ] Checking for system updates...
[2026-06-12 23:13:45,101.101 INFO    ] 200
[2026-06-12 23:13:45,103.103 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:13:45,133.133 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 23:13:45,134.134 INFO    ] No update needed
[2026-06-12 23:13:45,136.136 INFO    ] Checking for camera pi updates...
[2026-06-12 23:13:45,155.155 INFO    ] 200
[2026-06-12 23:13:45,157.157 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:13:45,184.184 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 23:13:45,235.235 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 23:13:45,236.236 INFO    ] No camera update needed
[2026-06-12 23:13:45,238.238 INFO    ] Script finished. Safe exiting...
[2026-06-12 23:13:45,239.239 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 23:13:45,242.242 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 23:13:45,245.245 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 23:13:47,284.284 INFO    ] ================================================
[2026-06-12 23:13:47,299.299 INFO    ] Launching Daemon at Fri Jun 12 23:13:47 IST 2026
[2026-06-12 23:13:47,310.310 INFO    ] ================================================
[2026-06-12 23:13:47,677.677 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 23:13:47
[2026-06-12 23:13:47,989.989 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 23:13:48,133.133 INFO    ] Initializing speech engine...
[2026-06-12 23:13:48,137.137 INFO    ] 2026-06-12 23:13:48
[2026-06-12 23:13:48,343.343 INFO    ] 2026-06-12 23:13:48
[2026-06-12 23:13:48,372.372 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 23:13:48,690.690 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 23:13:48,752.752 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 23:13:48,883.883 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 23:13:48,885.885 INFO    ] time= 12/06/2026 23:13:48
[2026-06-12 23:13:48,912.912 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 23:13:48,915.915 INFO    ] Checking for existing commands in stream...
[2026-06-12 23:13:48,987.987 INFO    ] No existing commands found in stream
[2026-06-12 23:13:53,997.997 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 23:13:54,000.000 INFO    ] Waiting 1.98 seconds before fallback handling...
[2026-06-12 23:13:56,369.369 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 23:13:56,371.371 INFO    ] Checking for system updates...
[2026-06-12 23:13:56,392.392 INFO    ] 200
[2026-06-12 23:13:56,397.397 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:13:56,429.429 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 23:13:56,430.430 INFO    ] No update needed
[2026-06-12 23:13:56,432.432 INFO    ] Checking for camera pi updates...
[2026-06-12 23:13:56,452.452 INFO    ] 200
[2026-06-12 23:13:56,453.453 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:13:56,476.476 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 23:13:56,528.528 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 23:13:56,530.530 INFO    ] No camera update needed
[2026-06-12 23:13:56,531.531 INFO    ] Script finished. Safe exiting...
[2026-06-12 23:13:56,533.533 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 23:13:56,535.535 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 23:13:56,538.538 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 23:13:58,579.579 INFO    ] ================================================
[2026-06-12 23:13:58,595.595 INFO    ] Launching Daemon at Fri Jun 12 23:13:58 IST 2026
[2026-06-12 23:13:58,606.606 INFO    ] ================================================
[2026-06-12 23:13:58,993.993 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 23:13:58
[2026-06-12 23:13:59,326.326 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 23:13:59,475.475 INFO    ] Initializing speech engine...
[2026-06-12 23:13:59,481.481 INFO    ] 2026-06-12 23:13:59
[2026-06-12 23:13:59,688.688 INFO    ] 2026-06-12 23:13:59
[2026-06-12 23:13:59,717.717 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 23:13:59,900.900 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 23:13:59,909.909 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 23:14:00,060.060 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 23:14:00,108.108 INFO    ] time= 12/06/2026 23:14:00
[2026-06-12 23:14:00,129.129 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 23:14:00,136.136 INFO    ] Checking for existing commands in stream...
[2026-06-12 23:14:00,226.226 INFO    ] No existing commands found in stream
[2026-06-12 23:14:05,241.241 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 23:14:05,244.244 INFO    ] Waiting 3.89 seconds before fallback handling...
[2026-06-12 23:14:09,596.596 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 23:14:09,597.597 INFO    ] Checking for system updates...
[2026-06-12 23:14:09,619.619 INFO    ] 200
[2026-06-12 23:14:09,621.621 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:14:09,655.655 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 23:14:09,657.657 INFO    ] No update needed
[2026-06-12 23:14:09,658.658 INFO    ] Checking for camera pi updates...
[2026-06-12 23:14:09,678.678 INFO    ] 200
[2026-06-12 23:14:09,679.679 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:14:09,704.704 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 23:14:09,757.757 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 23:14:09,759.759 INFO    ] No camera update needed
[2026-06-12 23:14:09,761.761 INFO    ] Script finished. Safe exiting...
[2026-06-12 23:14:09,762.762 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 23:14:09,765.765 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 23:14:09,768.768 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 23:14:11,807.807 INFO    ] ================================================
[2026-06-12 23:14:11,822.822 INFO    ] Launching Daemon at Fri Jun 12 23:14:11 IST 2026
[2026-06-12 23:14:11,833.833 INFO    ] ================================================
[2026-06-12 23:14:12,180.180 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 23:14:12
[2026-06-12 23:14:12,491.491 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 23:14:12,623.623 INFO    ] Initializing speech engine...
[2026-06-12 23:14:12,628.628 INFO    ] 2026-06-12 23:14:12
[2026-06-12 23:14:12,857.857 INFO    ] 2026-06-12 23:14:12
[2026-06-12 23:14:12,888.888 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 23:14:13,085.085 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 23:14:13,094.094 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 23:14:13,239.239 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 23:14:13,303.303 INFO    ] time= 12/06/2026 23:14:13
[2026-06-12 23:14:13,327.327 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 23:14:13,333.333 INFO    ] Checking for existing commands in stream...
[2026-06-12 23:14:13,434.434 INFO    ] No existing commands found in stream
[2026-06-12 23:14:18,443.443 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 23:14:18,446.446 INFO    ] Waiting 3.53 seconds before fallback handling...
[2026-06-12 23:14:22,352.352 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 23:14:22,353.353 INFO    ] Checking for system updates...
[2026-06-12 23:14:22,374.374 INFO    ] 200
[2026-06-12 23:14:22,375.375 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:14:22,406.406 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 23:14:22,407.407 INFO    ] No update needed
[2026-06-12 23:14:22,409.409 INFO    ] Checking for camera pi updates...
[2026-06-12 23:14:22,428.428 INFO    ] 200
[2026-06-12 23:14:22,429.429 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:14:22,453.453 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 23:14:22,497.497 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 23:14:22,499.499 INFO    ] No camera update needed
[2026-06-12 23:14:22,500.500 INFO    ] Script finished. Safe exiting...
[2026-06-12 23:14:22,502.502 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 23:14:22,505.505 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 23:14:22,508.508 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 23:14:24,546.546 INFO    ] ================================================
[2026-06-12 23:14:24,562.562 INFO    ] Launching Daemon at Fri Jun 12 23:14:24 IST 2026
[2026-06-12 23:14:24,573.573 INFO    ] ================================================
[2026-06-12 23:14:24,938.938 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 23:14:24
[2026-06-12 23:14:25,272.272 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 23:14:25,409.409 INFO    ] Initializing speech engine...
[2026-06-12 23:14:25,417.417 INFO    ] 2026-06-12 23:14:25
[2026-06-12 23:14:25,634.634 INFO    ] 2026-06-12 23:14:25
[2026-06-12 23:14:25,664.664 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 23:14:25,851.851 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 23:14:25,863.863 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 23:14:26,054.054 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 23:14:26,082.082 INFO    ] time= 12/06/2026 23:14:26
[2026-06-12 23:14:26,088.088 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 23:14:26,090.090 INFO    ] Checking for existing commands in stream...
[2026-06-12 23:14:26,158.158 INFO    ] No existing commands found in stream
[2026-06-12 23:14:31,177.177 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 23:14:31,181.181 INFO    ] Waiting 3.83 seconds before fallback handling...
[2026-06-12 23:14:40,387.387 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 23:14:40,389.389 INFO    ] Checking for system updates...
[2026-06-12 23:14:40,410.410 INFO    ] 200
[2026-06-12 23:14:40,412.412 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:14:40,445.445 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 23:14:40,446.446 INFO    ] No update needed
[2026-06-12 23:14:40,448.448 INFO    ] Checking for camera pi updates...
[2026-06-12 23:14:40,469.469 INFO    ] 200
[2026-06-12 23:14:40,471.471 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:14:40,494.494 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 23:14:40,638.638 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 23:14:40,640.640 INFO    ] No camera update needed
[2026-06-12 23:14:40,641.641 INFO    ] Script finished. Safe exiting...
[2026-06-12 23:14:40,642.642 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 23:14:40,646.646 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 23:14:40,648.648 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 23:14:42,687.687 INFO    ] ================================================
[2026-06-12 23:14:42,703.703 INFO    ] Launching Daemon at Fri Jun 12 23:14:42 IST 2026
[2026-06-12 23:14:42,714.714 INFO    ] ================================================
[2026-06-12 23:14:43,071.071 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 23:14:43
[2026-06-12 23:14:43,383.383 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 23:14:43,517.517 INFO    ] Initializing speech engine...
[2026-06-12 23:14:43,521.521 INFO    ] 2026-06-12 23:14:43
[2026-06-12 23:14:43,748.748 INFO    ] 2026-06-12 23:14:43
[2026-06-12 23:14:43,779.779 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 23:14:43,910.910 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 23:14:43,973.973 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 23:14:44,122.122 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 23:14:44,189.189 INFO    ] time= 12/06/2026 23:14:44
[2026-06-12 23:14:44,221.221 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 23:14:44,228.228 INFO    ] Checking for existing commands in stream...
[2026-06-12 23:14:44,324.324 INFO    ] No existing commands found in stream
[2026-06-12 23:14:49,333.333 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 23:14:49,336.336 INFO    ] Waiting 1.47 seconds before fallback handling...
[2026-06-12 23:14:51,228.228 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 23:14:51,230.230 INFO    ] Checking for system updates...
[2026-06-12 23:14:51,250.250 INFO    ] 200
[2026-06-12 23:14:51,252.252 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:14:51,284.284 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 23:14:51,285.285 INFO    ] No update needed
[2026-06-12 23:14:51,287.287 INFO    ] Checking for camera pi updates...
[2026-06-12 23:14:51,308.308 INFO    ] 200
[2026-06-12 23:14:51,310.310 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:14:51,334.334 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 23:14:51,381.381 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 23:14:51,382.382 INFO    ] No camera update needed
[2026-06-12 23:14:51,383.383 INFO    ] Script finished. Safe exiting...
[2026-06-12 23:14:51,385.385 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 23:14:51,388.388 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 23:14:51,391.391 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 23:14:53,430.430 INFO    ] ================================================
[2026-06-12 23:14:53,446.446 INFO    ] Launching Daemon at Fri Jun 12 23:14:53 IST 2026
[2026-06-12 23:14:53,457.457 INFO    ] ================================================
[2026-06-12 23:14:53,846.846 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 23:14:53
[2026-06-12 23:14:54,182.182 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 23:14:54,332.332 INFO    ] Initializing speech engine...
[2026-06-12 23:14:54,339.339 INFO    ] 2026-06-12 23:14:54
[2026-06-12 23:14:54,545.545 INFO    ] 2026-06-12 23:14:54
[2026-06-12 23:14:54,576.576 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 23:14:54,763.763 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 23:14:54,775.775 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 23:14:54,960.960 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 23:14:54,995.995 INFO    ] time= 12/06/2026 23:14:54
[2026-06-12 23:14:55,001.001 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 23:14:55,003.003 INFO    ] Checking for existing commands in stream...
[2026-06-12 23:14:55,072.072 INFO    ] No existing commands found in stream
[2026-06-12 23:15:00,085.085 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 23:15:00,087.087 INFO    ] Waiting 1.45 seconds before fallback handling...
[2026-06-12 23:15:01,921.921 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 23:15:01,924.924 INFO    ] Checking for system updates...
[2026-06-12 23:15:01,984.984 INFO    ] 200
[2026-06-12 23:15:01,996.996 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:15:02,137.137 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 23:15:02,152.152 INFO    ] No update needed
[2026-06-12 23:15:02,155.155 INFO    ] Checking for camera pi updates...
[2026-06-12 23:15:02,220.220 INFO    ] 200
[2026-06-12 23:15:02,223.223 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:15:02,378.378 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 23:15:02,425.425 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 23:15:02,427.427 INFO    ] No camera update needed
[2026-06-12 23:15:02,431.431 INFO    ] Script finished. Safe exiting...
[2026-06-12 23:15:02,434.434 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 23:15:02,438.438 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 23:15:02,449.449 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 23:15:04,482.482 INFO    ] ================================================
[2026-06-12 23:15:04,498.498 INFO    ] Launching Daemon at Fri Jun 12 23:15:04 IST 2026
[2026-06-12 23:15:04,509.509 INFO    ] ================================================
[2026-06-12 23:15:04,884.884 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 23:15:04
[2026-06-12 23:15:05,218.218 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 23:15:05,367.367 INFO    ] Initializing speech engine...
[2026-06-12 23:15:05,373.373 INFO    ] 2026-06-12 23:15:05
[2026-06-12 23:15:05,579.579 INFO    ] 2026-06-12 23:15:05
[2026-06-12 23:15:05,608.608 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 23:15:05,792.792 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 23:15:05,800.800 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 23:15:05,981.981 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 23:15:06,014.014 INFO    ] time= 12/06/2026 23:15:05
[2026-06-12 23:15:06,020.020 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 23:15:06,026.026 INFO    ] Checking for existing commands in stream...
[2026-06-12 23:15:06,098.098 INFO    ] No existing commands found in stream
[2026-06-12 23:15:11,125.125 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 23:15:11,129.129 INFO    ] Waiting 1.89 seconds before fallback handling...
[2026-06-12 23:15:13,439.439 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 23:15:13,441.441 INFO    ] Checking for system updates...
[2026-06-12 23:15:13,462.462 INFO    ] 200
[2026-06-12 23:15:13,463.463 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:15:13,493.493 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 23:15:13,495.495 INFO    ] No update needed
[2026-06-12 23:15:13,496.496 INFO    ] Checking for camera pi updates...
[2026-06-12 23:15:13,516.516 INFO    ] 200
[2026-06-12 23:15:13,517.517 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:15:13,541.541 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 23:15:13,592.592 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 23:15:13,594.594 INFO    ] No camera update needed
[2026-06-12 23:15:13,595.595 INFO    ] Script finished. Safe exiting...
[2026-06-12 23:15:13,596.596 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 23:15:13,599.599 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 23:15:13,602.602 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 23:15:15,641.641 INFO    ] ================================================
[2026-06-12 23:15:15,657.657 INFO    ] Launching Daemon at Fri Jun 12 23:15:15 IST 2026
[2026-06-12 23:15:15,668.668 INFO    ] ================================================
[2026-06-12 23:15:16,029.029 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 23:15:16
[2026-06-12 23:15:16,347.347 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 23:15:16,496.496 INFO    ] Initializing speech engine...
[2026-06-12 23:15:16,502.502 INFO    ] 2026-06-12 23:15:16
[2026-06-12 23:15:16,721.721 INFO    ] 2026-06-12 23:15:16
[2026-06-12 23:15:16,752.752 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 23:15:16,950.950 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 23:15:16,954.954 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 23:15:17,099.099 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 23:15:17,160.160 INFO    ] time= 12/06/2026 23:15:17
[2026-06-12 23:15:17,199.199 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 23:15:17,201.201 INFO    ] Checking for existing commands in stream...
[2026-06-12 23:15:17,278.278 INFO    ] No existing commands found in stream
[2026-06-12 23:15:22,287.287 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 23:15:22,290.290 INFO    ] Waiting 2.78 seconds before fallback handling...
[2026-06-12 23:15:25,420.420 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 23:15:25,422.422 INFO    ] Checking for system updates...
[2026-06-12 23:15:25,442.442 INFO    ] 200
[2026-06-12 23:15:25,444.444 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:15:25,473.473 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 23:15:25,475.475 INFO    ] No update needed
[2026-06-12 23:15:25,476.476 INFO    ] Checking for camera pi updates...
[2026-06-12 23:15:25,495.495 INFO    ] 200
[2026-06-12 23:15:25,496.496 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:15:25,519.519 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 23:15:25,564.564 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 23:15:25,565.565 INFO    ] No camera update needed
[2026-06-12 23:15:25,566.566 INFO    ] Script finished. Safe exiting...
[2026-06-12 23:15:25,568.568 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 23:15:25,571.571 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 23:15:25,574.574 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 23:15:27,612.612 INFO    ] ================================================
[2026-06-12 23:15:27,628.628 INFO    ] Launching Daemon at Fri Jun 12 23:15:27 IST 2026
[2026-06-12 23:15:27,639.639 INFO    ] ================================================
[2026-06-12 23:15:27,987.987 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 23:15:27
[2026-06-12 23:15:28,298.298 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 23:15:28,428.428 INFO    ] Initializing speech engine...
[2026-06-12 23:15:28,433.433 INFO    ] 2026-06-12 23:15:28
[2026-06-12 23:15:28,648.648 INFO    ] 2026-06-12 23:15:28
[2026-06-12 23:15:28,676.676 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 23:15:28,893.893 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 23:15:28,897.897 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 23:15:29,036.036 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 23:15:29,088.088 INFO    ] time= 12/06/2026 23:15:29
[2026-06-12 23:15:29,126.126 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 23:15:29,144.144 INFO    ] Checking for existing commands in stream...
[2026-06-12 23:15:29,220.220 INFO    ] No existing commands found in stream
[2026-06-12 23:15:34,229.229 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 23:15:34,232.232 INFO    ] Waiting 1.88 seconds before fallback handling...
[2026-06-12 23:15:36,527.527 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 23:15:36,529.529 INFO    ] Checking for system updates...
[2026-06-12 23:15:36,549.549 INFO    ] 200
[2026-06-12 23:15:36,551.551 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:15:36,581.581 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 23:15:36,582.582 INFO    ] No update needed
[2026-06-12 23:15:36,584.584 INFO    ] Checking for camera pi updates...
[2026-06-12 23:15:36,603.603 INFO    ] 200
[2026-06-12 23:15:36,604.604 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:15:36,629.629 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 23:15:36,670.670 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 23:15:36,672.672 INFO    ] No camera update needed
[2026-06-12 23:15:36,673.673 INFO    ] Script finished. Safe exiting...
[2026-06-12 23:15:36,674.674 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 23:15:36,677.677 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 23:15:36,680.680 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 23:15:38,717.717 INFO    ] ================================================
[2026-06-12 23:15:38,732.732 INFO    ] Launching Daemon at Fri Jun 12 23:15:38 IST 2026
[2026-06-12 23:15:38,743.743 INFO    ] ================================================
[2026-06-12 23:15:39,073.073 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 23:15:39
[2026-06-12 23:15:39,388.388 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 23:15:39,532.532 INFO    ] Initializing speech engine...
[2026-06-12 23:15:39,537.537 INFO    ] 2026-06-12 23:15:39
[2026-06-12 23:15:39,741.741 INFO    ] 2026-06-12 23:15:39
[2026-06-12 23:15:39,770.770 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 23:15:39,956.956 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 23:15:39,965.965 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 23:15:40,088.088 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 23:15:40,155.155 INFO    ] time= 12/06/2026 23:15:40
[2026-06-12 23:15:40,188.188 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 23:15:40,195.195 INFO    ] Checking for existing commands in stream...
[2026-06-12 23:15:40,262.262 INFO    ] No existing commands found in stream
[2026-06-12 23:15:45,286.286 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 23:15:45,289.289 INFO    ] Waiting 3.73 seconds before fallback handling...
[2026-06-12 23:15:49,467.467 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 23:15:49,469.469 INFO    ] Checking for system updates...
[2026-06-12 23:15:49,490.490 INFO    ] 200
[2026-06-12 23:15:49,492.492 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:15:49,522.522 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 23:15:49,523.523 INFO    ] No update needed
[2026-06-12 23:15:49,524.524 INFO    ] Checking for camera pi updates...
[2026-06-12 23:15:49,544.544 INFO    ] 200
[2026-06-12 23:15:49,545.545 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:15:49,568.568 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 23:15:49,611.611 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 23:15:49,612.612 INFO    ] No camera update needed
[2026-06-12 23:15:49,613.613 INFO    ] Script finished. Safe exiting...
[2026-06-12 23:15:49,615.615 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 23:15:49,618.618 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 23:15:49,620.620 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 23:15:51,658.658 INFO    ] ================================================
[2026-06-12 23:15:51,674.674 INFO    ] Launching Daemon at Fri Jun 12 23:15:51 IST 2026
[2026-06-12 23:15:51,685.685 INFO    ] ================================================
[2026-06-12 23:15:52,038.038 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 23:15:52
[2026-06-12 23:15:52,375.375 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 23:15:52,526.526 INFO    ] Initializing speech engine...
[2026-06-12 23:15:52,532.532 INFO    ] 2026-06-12 23:15:52
[2026-06-12 23:15:52,743.743 INFO    ] 2026-06-12 23:15:52
[2026-06-12 23:15:52,772.772 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 23:15:52,958.958 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 23:15:52,968.968 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 23:15:53,120.120 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 23:15:53,176.176 INFO    ] time= 12/06/2026 23:15:53
[2026-06-12 23:15:53,192.192 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 23:15:53,199.199 INFO    ] Checking for existing commands in stream...
[2026-06-12 23:15:53,266.266 INFO    ] No existing commands found in stream
[2026-06-12 23:15:58,275.275 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 23:15:58,279.279 INFO    ] Waiting 0.67 seconds before fallback handling...
[2026-06-12 23:15:59,337.337 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 23:15:59,339.339 INFO    ] Checking for system updates...
[2026-06-12 23:15:59,361.361 INFO    ] 200
[2026-06-12 23:15:59,362.362 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:15:59,392.392 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 23:15:59,393.393 INFO    ] No update needed
[2026-06-12 23:15:59,395.395 INFO    ] Checking for camera pi updates...
[2026-06-12 23:15:59,414.414 INFO    ] 200
[2026-06-12 23:15:59,415.415 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:15:59,438.438 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 23:15:59,469.469 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 23:15:59,470.470 INFO    ] No camera update needed
[2026-06-12 23:15:59,472.472 INFO    ] Script finished. Safe exiting...
[2026-06-12 23:15:59,473.473 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 23:15:59,476.476 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 23:15:59,479.479 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 23:16:01,512.512 INFO    ] ================================================
[2026-06-12 23:16:01,535.535 INFO    ] Launching Daemon at Fri Jun 12 23:16:01 IST 2026
[2026-06-12 23:16:01,549.549 INFO    ] ================================================
[2026-06-12 23:16:01,919.919 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 23:16:01
[2026-06-12 23:16:02,288.288 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 23:16:02,433.433 INFO    ] Initializing speech engine...
[2026-06-12 23:16:02,439.439 INFO    ] 2026-06-12 23:16:02
[2026-06-12 23:16:02,644.644 INFO    ] 2026-06-12 23:16:02
[2026-06-12 23:16:02,689.689 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 23:16:02,847.847 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 23:16:02,886.886 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 23:16:03,061.061 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 23:16:03,119.119 INFO    ] time= 12/06/2026 23:16:03
[2026-06-12 23:16:03,147.147 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 23:16:03,164.164 INFO    ] Checking for existing commands in stream...
[2026-06-12 23:16:03,242.242 INFO    ] No existing commands found in stream
[2026-06-12 23:16:08,266.266 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 23:16:08,268.268 INFO    ] Waiting 1.99 seconds before fallback handling...
[2026-06-12 23:16:10,667.667 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 23:16:10,668.668 INFO    ] Checking for system updates...
[2026-06-12 23:16:10,690.690 INFO    ] 200
[2026-06-12 23:16:10,691.691 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:16:10,722.722 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 23:16:10,724.724 INFO    ] No update needed
[2026-06-12 23:16:10,725.725 INFO    ] Checking for camera pi updates...
[2026-06-12 23:16:10,745.745 INFO    ] 200
[2026-06-12 23:16:10,746.746 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:16:10,770.770 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 23:16:10,823.823 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 23:16:10,824.824 INFO    ] No camera update needed
[2026-06-12 23:16:10,826.826 INFO    ] Script finished. Safe exiting...
[2026-06-12 23:16:10,827.827 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 23:16:10,830.830 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 23:16:10,833.833 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 23:16:12,863.863 INFO    ] ================================================
[2026-06-12 23:16:12,873.873 INFO    ] Launching Daemon at Fri Jun 12 23:16:12 IST 2026
[2026-06-12 23:16:12,880.880 INFO    ] ================================================
[2026-06-12 23:16:13,194.194 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 23:16:13
[2026-06-12 23:16:13,521.521 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 23:16:13,663.663 INFO    ] Initializing speech engine...
[2026-06-12 23:16:13,667.667 INFO    ] 2026-06-12 23:16:13
[2026-06-12 23:16:13,865.865 INFO    ] 2026-06-12 23:16:13
[2026-06-12 23:16:13,913.913 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 23:16:14,079.079 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 23:16:14,124.124 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 23:16:14,302.302 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 23:16:14,364.364 INFO    ] time= 12/06/2026 23:16:14
[2026-06-12 23:16:14,394.394 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 23:16:14,419.419 INFO    ] Checking for existing commands in stream...
[2026-06-12 23:16:14,499.499 INFO    ] No existing commands found in stream
[2026-06-12 23:16:19,508.508 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 23:16:19,511.511 INFO    ] Waiting 2.58 seconds before fallback handling...
[2026-06-12 23:16:22,498.498 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 23:16:22,499.499 INFO    ] Checking for system updates...
[2026-06-12 23:16:22,521.521 INFO    ] 200
[2026-06-12 23:16:22,523.523 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:16:22,552.552 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 23:16:22,554.554 INFO    ] No update needed
[2026-06-12 23:16:22,555.555 INFO    ] Checking for camera pi updates...
[2026-06-12 23:16:22,574.574 INFO    ] 200
[2026-06-12 23:16:22,576.576 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:16:22,598.598 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 23:16:22,642.642 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 23:16:22,644.644 INFO    ] No camera update needed
[2026-06-12 23:16:22,645.645 INFO    ] Script finished. Safe exiting...
[2026-06-12 23:16:22,646.646 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 23:16:22,649.649 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 23:16:22,652.652 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 23:16:24,690.690 INFO    ] ================================================
[2026-06-12 23:16:24,705.705 INFO    ] Launching Daemon at Fri Jun 12 23:16:24 IST 2026
[2026-06-12 23:16:24,716.716 INFO    ] ================================================
[2026-06-12 23:16:25,076.076 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 23:16:25
[2026-06-12 23:16:25,393.393 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 23:16:25,525.525 INFO    ] Initializing speech engine...
[2026-06-12 23:16:25,542.542 INFO    ] 2026-06-12 23:16:25
[2026-06-12 23:16:25,756.756 INFO    ] 2026-06-12 23:16:25
[2026-06-12 23:16:25,786.786 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 23:16:25,926.926 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 23:16:25,975.975 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 23:16:26,115.115 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 23:16:26,183.183 INFO    ] time= 12/06/2026 23:16:26
[2026-06-12 23:16:26,207.207 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 23:16:26,214.214 INFO    ] Checking for existing commands in stream...
[2026-06-12 23:16:26,282.282 INFO    ] No existing commands found in stream
[2026-06-12 23:16:31,306.306 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 23:16:31,310.310 INFO    ] Waiting 0.36 seconds before fallback handling...
[2026-06-12 23:16:32,041.041 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 23:16:32,043.043 INFO    ] Checking for system updates...
[2026-06-12 23:16:32,071.071 INFO    ] 200
[2026-06-12 23:16:32,073.073 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:16:32,108.108 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 23:16:32,110.110 INFO    ] No update needed
[2026-06-12 23:16:32,111.111 INFO    ] Checking for camera pi updates...
[2026-06-12 23:16:32,132.132 INFO    ] 200
[2026-06-12 23:16:32,134.134 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:16:32,166.166 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 23:16:32,206.206 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 23:16:32,207.207 INFO    ] No camera update needed
[2026-06-12 23:16:32,209.209 INFO    ] Script finished. Safe exiting...
[2026-06-12 23:16:32,210.210 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 23:16:32,216.216 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 23:16:32,221.221 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 23:16:34,260.260 INFO    ] ================================================
[2026-06-12 23:16:34,274.274 INFO    ] Launching Daemon at Fri Jun 12 23:16:34 IST 2026
[2026-06-12 23:16:34,285.285 INFO    ] ================================================
[2026-06-12 23:16:34,616.616 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 23:16:34
[2026-06-12 23:16:34,935.935 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 23:16:35,081.081 INFO    ] Initializing speech engine...
[2026-06-12 23:16:35,085.085 INFO    ] 2026-06-12 23:16:35
[2026-06-12 23:16:35,291.291 INFO    ] 2026-06-12 23:16:35
[2026-06-12 23:16:35,321.321 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 23:16:35,506.506 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 23:16:35,515.515 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 23:16:35,702.702 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 23:16:35,734.734 INFO    ] time= 12/06/2026 23:16:35
[2026-06-12 23:16:35,741.741 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 23:16:35,743.743 INFO    ] Checking for existing commands in stream...
[2026-06-12 23:16:35,810.810 INFO    ] No existing commands found in stream
[2026-06-12 23:16:40,824.824 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 23:16:40,827.827 INFO    ] Waiting 0.48 seconds before fallback handling...
[2026-06-12 23:16:41,707.707 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 23:16:41,709.709 INFO    ] Checking for system updates...
[2026-06-12 23:16:41,731.731 INFO    ] 200
[2026-06-12 23:16:41,733.733 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:16:41,765.765 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 23:16:41,767.767 INFO    ] No update needed
[2026-06-12 23:16:41,768.768 INFO    ] Checking for camera pi updates...
[2026-06-12 23:16:41,787.787 INFO    ] 200
[2026-06-12 23:16:41,789.789 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:16:41,813.813 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 23:16:41,959.959 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 23:16:41,960.960 INFO    ] No camera update needed
[2026-06-12 23:16:41,962.962 INFO    ] Script finished. Safe exiting...
[2026-06-12 23:16:41,963.963 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 23:16:41,967.967 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 23:16:41,970.970 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 23:16:44,008.008 INFO    ] ================================================
[2026-06-12 23:16:44,024.024 INFO    ] Launching Daemon at Fri Jun 12 23:16:44 IST 2026
[2026-06-12 23:16:44,046.046 INFO    ] ================================================
[2026-06-12 23:16:44,399.399 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 23:16:44
[2026-06-12 23:16:44,716.716 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 23:16:44,866.866 INFO    ] Initializing speech engine...
[2026-06-12 23:16:44,872.872 INFO    ] 2026-06-12 23:16:44
[2026-06-12 23:16:45,089.089 INFO    ] 2026-06-12 23:16:45
[2026-06-12 23:16:45,120.120 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 23:16:45,321.321 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 23:16:45,332.332 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 23:16:45,471.471 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 23:16:45,528.528 INFO    ] time= 12/06/2026 23:16:45
[2026-06-12 23:16:45,558.558 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 23:16:45,577.577 INFO    ] Checking for existing commands in stream...
[2026-06-12 23:16:45,682.682 INFO    ] No existing commands found in stream
[2026-06-12 23:16:50,691.691 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 23:16:50,694.694 INFO    ] Waiting 1.40 seconds before fallback handling...
[2026-06-12 23:16:52,529.529 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 23:16:52,531.531 INFO    ] Checking for system updates...
[2026-06-12 23:16:52,552.552 INFO    ] 200
[2026-06-12 23:16:52,554.554 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:16:52,586.586 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 23:16:52,588.588 INFO    ] No update needed
[2026-06-12 23:16:52,589.589 INFO    ] Checking for camera pi updates...
[2026-06-12 23:16:52,609.609 INFO    ] 200
[2026-06-12 23:16:52,611.611 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:16:52,634.634 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 23:16:52,700.700 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 23:16:52,702.702 INFO    ] No camera update needed
[2026-06-12 23:16:52,703.703 INFO    ] Script finished. Safe exiting...
[2026-06-12 23:16:52,704.704 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 23:16:52,708.708 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 23:16:52,711.711 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 23:16:54,751.751 INFO    ] ================================================
[2026-06-12 23:16:54,766.766 INFO    ] Launching Daemon at Fri Jun 12 23:16:54 IST 2026
[2026-06-12 23:16:54,777.777 INFO    ] ================================================
[2026-06-12 23:16:55,111.111 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 23:16:55
[2026-06-12 23:16:55,423.423 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 23:16:55,555.555 INFO    ] Initializing speech engine...
[2026-06-12 23:16:55,558.558 INFO    ] 2026-06-12 23:16:55
[2026-06-12 23:16:55,777.777 INFO    ] 2026-06-12 23:16:55
[2026-06-12 23:16:55,805.805 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 23:16:55,992.992 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 23:16:55,995.995 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 23:16:56,126.126 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 23:16:56,187.187 INFO    ] time= 12/06/2026 23:16:56
[2026-06-12 23:16:56,222.222 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 23:16:56,228.228 INFO    ] Checking for existing commands in stream...
[2026-06-12 23:16:56,300.300 INFO    ] No existing commands found in stream
[2026-06-12 23:17:01,309.309 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 23:17:01,312.312 INFO    ] Waiting 1.83 seconds before fallback handling...
[2026-06-12 23:17:03,502.502 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 23:17:03,503.503 INFO    ] Checking for system updates...
[2026-06-12 23:17:03,523.523 INFO    ] 200
[2026-06-12 23:17:03,525.525 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:17:03,556.556 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 23:17:03,558.558 INFO    ] No update needed
[2026-06-12 23:17:03,559.559 INFO    ] Checking for camera pi updates...
[2026-06-12 23:17:03,578.578 INFO    ] 200
[2026-06-12 23:17:03,580.580 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:17:03,604.604 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 23:17:03,647.647 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 23:17:03,648.648 INFO    ] No camera update needed
[2026-06-12 23:17:03,650.650 INFO    ] Script finished. Safe exiting...
[2026-06-12 23:17:03,651.651 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 23:17:03,654.654 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 23:17:03,656.656 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 23:17:05,698.698 INFO    ] ================================================
[2026-06-12 23:17:05,713.713 INFO    ] Launching Daemon at Fri Jun 12 23:17:05 IST 2026
[2026-06-12 23:17:05,723.723 INFO    ] ================================================
[2026-06-12 23:17:06,104.104 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 23:17:06
[2026-06-12 23:17:06,439.439 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 23:17:06,589.589 INFO    ] Initializing speech engine...
[2026-06-12 23:17:06,595.595 INFO    ] 2026-06-12 23:17:06
[2026-06-12 23:17:06,804.804 INFO    ] 2026-06-12 23:17:06
[2026-06-12 23:17:06,833.833 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 23:17:07,019.019 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 23:17:07,029.029 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 23:17:07,165.165 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 23:17:07,229.229 INFO    ] time= 12/06/2026 23:17:07
[2026-06-12 23:17:07,253.253 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 23:17:07,260.260 INFO    ] Checking for existing commands in stream...
[2026-06-12 23:17:07,327.327 INFO    ] No existing commands found in stream
[2026-06-12 23:17:12,337.337 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 23:17:12,340.340 INFO    ] Waiting 0.09 seconds before fallback handling...
[2026-06-12 23:17:12,877.877 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 23:17:12,879.879 INFO    ] Checking for system updates...
[2026-06-12 23:17:12,900.900 INFO    ] 200
[2026-06-12 23:17:12,901.901 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:17:12,931.931 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 23:17:12,932.932 INFO    ] No update needed
[2026-06-12 23:17:12,934.934 INFO    ] Checking for camera pi updates...
[2026-06-12 23:17:12,953.953 INFO    ] 200
[2026-06-12 23:17:12,954.954 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:17:12,977.977 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 23:17:13,024.024 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 23:17:13,025.025 INFO    ] No camera update needed
[2026-06-12 23:17:13,026.026 INFO    ] Script finished. Safe exiting...
[2026-06-12 23:17:13,028.028 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 23:17:13,031.031 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 23:17:13,033.033 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 23:17:15,071.071 INFO    ] ================================================
[2026-06-12 23:17:15,086.086 INFO    ] Launching Daemon at Fri Jun 12 23:17:15 IST 2026
[2026-06-12 23:17:15,097.097 INFO    ] ================================================
[2026-06-12 23:17:15,460.460 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 23:17:15
[2026-06-12 23:17:15,775.775 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 23:17:15,917.917 INFO    ] Initializing speech engine...
[2026-06-12 23:17:15,923.923 INFO    ] 2026-06-12 23:17:15
[2026-06-12 23:17:16,128.128 INFO    ] 2026-06-12 23:17:16
[2026-06-12 23:17:16,157.157 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 23:17:16,343.343 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 23:17:16,347.347 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 23:17:16,500.500 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 23:17:16,555.555 INFO    ] time= 12/06/2026 23:17:16
[2026-06-12 23:17:16,577.577 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 23:17:16,583.583 INFO    ] Checking for existing commands in stream...
[2026-06-12 23:17:16,649.649 INFO    ] No existing commands found in stream
[2026-06-12 23:17:21,660.660 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 23:17:21,663.663 INFO    ] Waiting 0.58 seconds before fallback handling...
[2026-06-12 23:17:22,605.605 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 23:17:22,606.606 INFO    ] Checking for system updates...
[2026-06-12 23:17:22,627.627 INFO    ] 200
[2026-06-12 23:17:22,628.628 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:17:22,660.660 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 23:17:22,662.662 INFO    ] No update needed
[2026-06-12 23:17:22,663.663 INFO    ] Checking for camera pi updates...
[2026-06-12 23:17:22,684.684 INFO    ] 200
[2026-06-12 23:17:22,685.685 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:17:22,709.709 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 23:17:22,759.759 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 23:17:22,761.761 INFO    ] No camera update needed
[2026-06-12 23:17:22,762.762 INFO    ] Script finished. Safe exiting...
[2026-06-12 23:17:22,764.764 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 23:17:22,767.767 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 23:17:22,770.770 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 23:17:24,809.809 INFO    ] ================================================
[2026-06-12 23:17:24,824.824 INFO    ] Launching Daemon at Fri Jun 12 23:17:24 IST 2026
[2026-06-12 23:17:24,835.835 INFO    ] ================================================
[2026-06-12 23:17:25,186.186 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 23:17:25
[2026-06-12 23:17:25,502.502 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 23:17:25,635.635 INFO    ] Initializing speech engine...
[2026-06-12 23:17:25,640.640 INFO    ] 2026-06-12 23:17:25
[2026-06-12 23:17:25,867.867 INFO    ] 2026-06-12 23:17:25
[2026-06-12 23:17:25,898.898 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 23:17:26,028.028 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 23:17:26,095.095 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 23:17:26,240.240 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 23:17:26,301.301 INFO    ] time= 12/06/2026 23:17:26
[2026-06-12 23:17:26,335.335 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 23:17:26,341.341 INFO    ] Checking for existing commands in stream...
[2026-06-12 23:17:26,417.417 INFO    ] No existing commands found in stream
[2026-06-12 23:17:31,426.426 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 23:17:31,429.429 INFO    ] Waiting 0.07 seconds before fallback handling...
[2026-06-12 23:17:31,861.861 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 23:17:31,863.863 INFO    ] Checking for system updates...
[2026-06-12 23:17:31,886.886 INFO    ] 200
[2026-06-12 23:17:31,888.888 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:17:31,924.924 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 23:17:31,925.925 INFO    ] No update needed
[2026-06-12 23:17:31,927.927 INFO    ] Checking for camera pi updates...
[2026-06-12 23:17:31,951.951 INFO    ] 200
[2026-06-12 23:17:31,953.953 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:17:31,983.983 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 23:17:32,018.018 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 23:17:32,020.020 INFO    ] No camera update needed
[2026-06-12 23:17:32,021.021 INFO    ] Script finished. Safe exiting...
[2026-06-12 23:17:32,023.023 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 23:17:32,027.027 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 23:17:32,031.031 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 23:17:34,073.073 INFO    ] ================================================
[2026-06-12 23:17:34,090.090 INFO    ] Launching Daemon at Fri Jun 12 23:17:34 IST 2026
[2026-06-12 23:17:34,100.100 INFO    ] ================================================
[2026-06-12 23:17:34,447.447 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 23:17:34
[2026-06-12 23:17:34,784.784 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 23:17:34,940.940 INFO    ] Initializing speech engine...
[2026-06-12 23:17:34,944.944 INFO    ] 2026-06-12 23:17:34
[2026-06-12 23:17:35,152.152 INFO    ] 2026-06-12 23:17:35
[2026-06-12 23:17:35,182.182 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 23:17:35,368.368 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 23:17:35,372.372 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 23:17:35,510.510 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 23:17:35,578.578 INFO    ] time= 12/06/2026 23:17:35
[2026-06-12 23:17:35,603.603 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 23:17:35,610.610 INFO    ] Checking for existing commands in stream...
[2026-06-12 23:17:35,677.677 INFO    ] No existing commands found in stream
[2026-06-12 23:17:40,692.692 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 23:17:40,695.695 INFO    ] Waiting 2.76 seconds before fallback handling...
[2026-06-12 23:17:43,886.886 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 23:17:43,888.888 INFO    ] Checking for system updates...
[2026-06-12 23:17:43,909.909 INFO    ] 200
[2026-06-12 23:17:43,910.910 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:17:43,940.940 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 23:17:43,942.942 INFO    ] No update needed
[2026-06-12 23:17:43,943.943 INFO    ] Checking for camera pi updates...
[2026-06-12 23:17:43,962.962 INFO    ] 200
[2026-06-12 23:17:43,963.963 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:17:43,986.986 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 23:17:44,039.039 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 23:17:44,040.040 INFO    ] No camera update needed
[2026-06-12 23:17:44,041.041 INFO    ] Script finished. Safe exiting...
[2026-06-12 23:17:44,043.043 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 23:17:44,045.045 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 23:17:44,048.048 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 23:17:46,086.086 INFO    ] ================================================
[2026-06-12 23:17:46,102.102 INFO    ] Launching Daemon at Fri Jun 12 23:17:46 IST 2026
[2026-06-12 23:17:46,114.114 INFO    ] ================================================
[2026-06-12 23:17:46,499.499 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 23:17:46
[2026-06-12 23:17:46,816.816 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 23:17:46,965.965 INFO    ] Initializing speech engine...
[2026-06-12 23:17:46,972.972 INFO    ] 2026-06-12 23:17:46
[2026-06-12 23:17:47,187.187 INFO    ] 2026-06-12 23:17:47
[2026-06-12 23:17:47,221.221 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 23:17:47,420.420 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 23:17:47,429.429 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 23:17:47,561.561 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 23:17:47,624.624 INFO    ] time= 12/06/2026 23:17:47
[2026-06-12 23:17:47,664.664 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 23:17:47,667.667 INFO    ] Checking for existing commands in stream...
[2026-06-12 23:17:47,776.776 INFO    ] No existing commands found in stream
[2026-06-12 23:17:52,787.787 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 23:17:52,790.790 INFO    ] Waiting 0.49 seconds before fallback handling...
[2026-06-12 23:17:53,655.655 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 23:17:53,656.656 INFO    ] Checking for system updates...
[2026-06-12 23:17:53,677.677 INFO    ] 200
[2026-06-12 23:17:53,678.678 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:17:53,708.708 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 23:17:53,710.710 INFO    ] No update needed
[2026-06-12 23:17:53,711.711 INFO    ] Checking for camera pi updates...
[2026-06-12 23:17:53,732.732 INFO    ] 200
[2026-06-12 23:17:53,733.733 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:17:53,756.756 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 23:17:53,815.815 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 23:17:53,817.817 INFO    ] No camera update needed
[2026-06-12 23:17:53,818.818 INFO    ] Script finished. Safe exiting...
[2026-06-12 23:17:53,819.819 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 23:17:53,822.822 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 23:17:53,825.825 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 23:17:55,865.865 INFO    ] ================================================
[2026-06-12 23:17:55,881.881 INFO    ] Launching Daemon at Fri Jun 12 23:17:55 IST 2026
[2026-06-12 23:17:55,892.892 INFO    ] ================================================
[2026-06-12 23:17:56,247.247 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 23:17:56
[2026-06-12 23:17:56,583.583 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 23:17:56,734.734 INFO    ] Initializing speech engine...
[2026-06-12 23:17:56,740.740 INFO    ] 2026-06-12 23:17:56
[2026-06-12 23:17:56,949.949 INFO    ] 2026-06-12 23:17:56
[2026-06-12 23:17:56,978.978 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 23:17:57,165.165 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 23:17:57,176.176 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 23:17:57,300.300 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 23:17:57,366.366 INFO    ] time= 12/06/2026 23:17:57
[2026-06-12 23:17:57,400.400 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 23:17:57,402.402 INFO    ] Checking for existing commands in stream...
[2026-06-12 23:17:57,475.475 INFO    ] No existing commands found in stream
[2026-06-12 23:18:02,501.501 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 23:18:02,504.504 INFO    ] Waiting 2.66 seconds before fallback handling...
[2026-06-12 23:18:05,541.541 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 23:18:05,542.542 INFO    ] Checking for system updates...
[2026-06-12 23:18:05,564.564 INFO    ] 200
[2026-06-12 23:18:05,566.566 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:18:05,598.598 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 23:18:05,599.599 INFO    ] No update needed
[2026-06-12 23:18:05,601.601 INFO    ] Checking for camera pi updates...
[2026-06-12 23:18:05,621.621 INFO    ] 200
[2026-06-12 23:18:05,622.622 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:18:05,645.645 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 23:18:05,705.705 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 23:18:05,706.706 INFO    ] No camera update needed
[2026-06-12 23:18:05,708.708 INFO    ] Script finished. Safe exiting...
[2026-06-12 23:18:05,709.709 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 23:18:05,712.712 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 23:18:05,715.715 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 23:18:07,756.756 INFO    ] ================================================
[2026-06-12 23:18:07,772.772 INFO    ] Launching Daemon at Fri Jun 12 23:18:07 IST 2026
[2026-06-12 23:18:07,783.783 INFO    ] ================================================
[2026-06-12 23:18:08,132.132 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 23:18:08
[2026-06-12 23:18:08,471.471 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 23:18:08,625.625 INFO    ] Initializing speech engine...
[2026-06-12 23:18:08,630.630 INFO    ] 2026-06-12 23:18:08
[2026-06-12 23:18:08,842.842 INFO    ] 2026-06-12 23:18:08
[2026-06-12 23:18:08,871.871 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 23:18:09,060.060 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 23:18:09,069.069 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 23:18:09,229.229 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 23:18:09,285.285 INFO    ] time= 12/06/2026 23:18:09
[2026-06-12 23:18:09,302.302 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 23:18:09,309.309 INFO    ] Checking for existing commands in stream...
[2026-06-12 23:18:09,378.378 INFO    ] No existing commands found in stream
[2026-06-12 23:18:14,402.402 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 23:18:14,405.405 INFO    ] Waiting 1.33 seconds before fallback handling...
[2026-06-12 23:18:16,117.117 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 23:18:16,119.119 INFO    ] Checking for system updates...
[2026-06-12 23:18:16,140.140 INFO    ] 200
[2026-06-12 23:18:16,141.141 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:18:16,174.174 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 23:18:16,176.176 INFO    ] No update needed
[2026-06-12 23:18:16,177.177 INFO    ] Checking for camera pi updates...
[2026-06-12 23:18:16,196.196 INFO    ] 200
[2026-06-12 23:18:16,197.197 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:18:16,222.222 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 23:18:16,271.271 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 23:18:16,272.272 INFO    ] No camera update needed
[2026-06-12 23:18:16,273.273 INFO    ] Script finished. Safe exiting...
[2026-06-12 23:18:16,275.275 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 23:18:16,278.278 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 23:18:16,280.280 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 23:18:18,318.318 INFO    ] ================================================
[2026-06-12 23:18:18,334.334 INFO    ] Launching Daemon at Fri Jun 12 23:18:18 IST 2026
[2026-06-12 23:18:18,345.345 INFO    ] ================================================
[2026-06-12 23:18:18,714.714 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 23:18:18
[2026-06-12 23:18:19,030.030 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 23:18:19,174.174 INFO    ] Initializing speech engine...
[2026-06-12 23:18:19,179.179 INFO    ] 2026-06-12 23:18:19
[2026-06-12 23:18:19,382.382 INFO    ] 2026-06-12 23:18:19
[2026-06-12 23:18:19,411.411 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 23:18:19,593.593 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 23:18:19,602.602 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 23:18:19,751.751 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 23:18:19,799.799 INFO    ] time= 12/06/2026 23:18:19
[2026-06-12 23:18:19,822.822 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 23:18:19,827.827 INFO    ] Checking for existing commands in stream...
[2026-06-12 23:18:19,895.895 INFO    ] No existing commands found in stream
[2026-06-12 23:18:24,914.914 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 23:18:24,916.916 INFO    ] Waiting 3.56 seconds before fallback handling...
[2026-06-12 23:18:28,858.858 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 23:18:28,859.859 INFO    ] Checking for system updates...
[2026-06-12 23:18:28,880.880 INFO    ] 200
[2026-06-12 23:18:28,881.881 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:18:28,913.913 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 23:18:28,915.915 INFO    ] No update needed
[2026-06-12 23:18:28,916.916 INFO    ] Checking for camera pi updates...
[2026-06-12 23:18:28,937.937 INFO    ] 200
[2026-06-12 23:18:28,938.938 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:18:28,963.963 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 23:18:29,013.013 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 23:18:29,015.015 INFO    ] No camera update needed
[2026-06-12 23:18:29,016.016 INFO    ] Script finished. Safe exiting...
[2026-06-12 23:18:29,017.017 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 23:18:29,021.021 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 23:18:29,023.023 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 23:18:31,061.061 INFO    ] ================================================
[2026-06-12 23:18:31,077.077 INFO    ] Launching Daemon at Fri Jun 12 23:18:31 IST 2026
[2026-06-12 23:18:31,089.089 INFO    ] ================================================
[2026-06-12 23:18:31,437.437 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 23:18:31
[2026-06-12 23:18:31,774.774 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 23:18:31,926.926 INFO    ] Initializing speech engine...
[2026-06-12 23:18:31,932.932 INFO    ] 2026-06-12 23:18:31
[2026-06-12 23:18:32,169.169 INFO    ] 2026-06-12 23:18:32
[2026-06-12 23:18:32,200.200 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 23:18:32,385.385 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 23:18:32,403.403 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 23:18:32,559.559 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 23:18:32,628.628 INFO    ] time= 12/06/2026 23:18:32
[2026-06-12 23:18:32,654.654 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 23:18:32,662.662 INFO    ] Checking for existing commands in stream...
[2026-06-12 23:18:32,733.733 INFO    ] No existing commands found in stream
[2026-06-12 23:18:37,744.744 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 23:18:37,747.747 INFO    ] Waiting 3.13 seconds before fallback handling...
[2026-06-12 23:18:41,280.280 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 23:18:41,282.282 INFO    ] Checking for system updates...
[2026-06-12 23:18:41,303.303 INFO    ] 200
[2026-06-12 23:18:41,305.305 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:18:41,337.337 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 23:18:41,338.338 INFO    ] No update needed
[2026-06-12 23:18:41,339.339 INFO    ] Checking for camera pi updates...
[2026-06-12 23:18:41,359.359 INFO    ] 200
[2026-06-12 23:18:41,360.360 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:18:41,385.385 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 23:18:41,443.443 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 23:18:41,445.445 INFO    ] No camera update needed
[2026-06-12 23:18:41,446.446 INFO    ] Script finished. Safe exiting...
[2026-06-12 23:18:41,447.447 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 23:18:41,450.450 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 23:18:41,453.453 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 23:18:43,484.484 INFO    ] ================================================
[2026-06-12 23:18:43,500.500 INFO    ] Launching Daemon at Fri Jun 12 23:18:43 IST 2026
[2026-06-12 23:18:43,511.511 INFO    ] ================================================
[2026-06-12 23:18:43,866.866 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 23:18:43
[2026-06-12 23:18:44,203.203 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 23:18:44,354.354 INFO    ] Initializing speech engine...
[2026-06-12 23:18:44,359.359 INFO    ] 2026-06-12 23:18:44
[2026-06-12 23:18:44,567.567 INFO    ] 2026-06-12 23:18:44
[2026-06-12 23:18:44,596.596 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 23:18:44,762.762 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 23:18:44,796.796 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 23:18:44,934.934 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 23:18:44,999.999 INFO    ] time= 12/06/2026 23:18:44
[2026-06-12 23:18:45,036.036 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 23:18:45,079.079 INFO    ] Checking for existing commands in stream...
[2026-06-12 23:18:45,176.176 INFO    ] No existing commands found in stream
[2026-06-12 23:18:50,201.201 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 23:18:50,204.204 INFO    ] Waiting 1.30 seconds before fallback handling...
[2026-06-12 23:18:51,883.883 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 23:18:51,885.885 INFO    ] Checking for system updates...
[2026-06-12 23:18:51,906.906 INFO    ] 200
[2026-06-12 23:18:51,908.908 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:18:51,940.940 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 23:18:51,941.941 INFO    ] No update needed
[2026-06-12 23:18:51,942.942 INFO    ] Checking for camera pi updates...
[2026-06-12 23:18:51,963.963 INFO    ] 200
[2026-06-12 23:18:51,964.964 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:18:51,987.987 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 23:18:52,134.134 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 23:18:52,136.136 INFO    ] No camera update needed
[2026-06-12 23:18:52,137.137 INFO    ] Script finished. Safe exiting...
[2026-06-12 23:18:52,138.138 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 23:18:52,141.141 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 23:18:52,144.144 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 23:18:54,182.182 INFO    ] ================================================
[2026-06-12 23:18:54,198.198 INFO    ] Launching Daemon at Fri Jun 12 23:18:54 IST 2026
[2026-06-12 23:18:54,210.210 INFO    ] ================================================
[2026-06-12 23:18:54,557.557 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 23:18:54
[2026-06-12 23:18:54,874.874 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 23:18:55,005.005 INFO    ] Initializing speech engine...
[2026-06-12 23:18:55,009.009 INFO    ] 2026-06-12 23:18:55
[2026-06-12 23:18:55,212.212 INFO    ] 2026-06-12 23:18:55
[2026-06-12 23:18:55,246.246 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 23:18:55,403.403 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 23:18:55,447.447 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 23:18:55,618.618 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 23:18:55,670.670 INFO    ] time= 12/06/2026 23:18:55
[2026-06-12 23:18:55,710.710 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 23:18:55,721.721 INFO    ] Checking for existing commands in stream...
[2026-06-12 23:18:55,796.796 INFO    ] No existing commands found in stream
[2026-06-12 23:19:00,807.807 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 23:19:00,810.810 INFO    ] Waiting 1.31 seconds before fallback handling...
[2026-06-12 23:19:02,420.420 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 23:19:02,421.421 INFO    ] Checking for system updates...
[2026-06-12 23:19:02,443.443 INFO    ] 200
[2026-06-12 23:19:02,445.445 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:19:02,477.477 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 23:19:02,479.479 INFO    ] No update needed
[2026-06-12 23:19:02,480.480 INFO    ] Checking for camera pi updates...
[2026-06-12 23:19:02,501.501 INFO    ] 200
[2026-06-12 23:19:02,502.502 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:19:02,527.527 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 23:19:02,561.561 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 23:19:02,564.564 INFO    ] No camera update needed
[2026-06-12 23:19:02,566.566 INFO    ] Script finished. Safe exiting...
[2026-06-12 23:19:02,568.568 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 23:19:02,574.574 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 23:19:02,579.579 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 23:19:04,618.618 INFO    ] ================================================
[2026-06-12 23:19:04,633.633 INFO    ] Launching Daemon at Fri Jun 12 23:19:04 IST 2026
[2026-06-12 23:19:04,645.645 INFO    ] ================================================
[2026-06-12 23:19:05,006.006 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 23:19:05
[2026-06-12 23:19:05,354.354 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 23:19:05,488.488 INFO    ] Initializing speech engine...
[2026-06-12 23:19:05,500.500 INFO    ] 2026-06-12 23:19:05
[2026-06-12 23:19:05,707.707 INFO    ] 2026-06-12 23:19:05
[2026-06-12 23:19:05,736.736 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 23:19:05,860.860 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 23:19:05,897.897 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 23:19:06,063.063 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 23:19:06,131.131 INFO    ] time= 12/06/2026 23:19:06
[2026-06-12 23:19:06,155.155 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 23:19:06,161.161 INFO    ] Checking for existing commands in stream...
[2026-06-12 23:19:06,229.229 INFO    ] No existing commands found in stream
[2026-06-12 23:19:11,243.243 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 23:19:11,246.246 INFO    ] Waiting 1.22 seconds before fallback handling...
[2026-06-12 23:19:12,807.807 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 23:19:12,809.809 INFO    ] Checking for system updates...
[2026-06-12 23:19:12,831.831 INFO    ] 200
[2026-06-12 23:19:12,833.833 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:19:12,862.862 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 23:19:12,864.864 INFO    ] No update needed
[2026-06-12 23:19:12,865.865 INFO    ] Checking for camera pi updates...
[2026-06-12 23:19:12,884.884 INFO    ] 200
[2026-06-12 23:19:12,885.885 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:19:12,910.910 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 23:19:12,971.971 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 23:19:12,973.973 INFO    ] No camera update needed
[2026-06-12 23:19:12,974.974 INFO    ] Script finished. Safe exiting...
[2026-06-12 23:19:12,975.975 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 23:19:12,978.978 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 23:19:12,981.981 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 23:19:15,022.022 INFO    ] ================================================
[2026-06-12 23:19:15,038.038 INFO    ] Launching Daemon at Fri Jun 12 23:19:15 IST 2026
[2026-06-12 23:19:15,050.050 INFO    ] ================================================
[2026-06-12 23:19:15,421.421 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 23:19:15
[2026-06-12 23:19:15,765.765 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 23:19:15,917.917 INFO    ] Initializing speech engine...
[2026-06-12 23:19:15,924.924 INFO    ] 2026-06-12 23:19:15
[2026-06-12 23:19:16,132.132 INFO    ] 2026-06-12 23:19:16
[2026-06-12 23:19:16,161.161 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 23:19:16,346.346 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 23:19:16,356.356 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 23:19:16,490.490 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 23:19:16,553.553 INFO    ] time= 12/06/2026 23:19:16
[2026-06-12 23:19:16,577.577 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 23:19:16,583.583 INFO    ] Checking for existing commands in stream...
[2026-06-12 23:19:16,649.649 INFO    ] No existing commands found in stream
[2026-06-12 23:19:21,659.659 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 23:19:21,663.663 INFO    ] Waiting 3.36 seconds before fallback handling...
[2026-06-12 23:19:25,434.434 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 23:19:25,436.436 INFO    ] Checking for system updates...
[2026-06-12 23:19:25,459.459 INFO    ] 200
[2026-06-12 23:19:25,461.461 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:19:25,502.502 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 23:19:25,504.504 INFO    ] No update needed
[2026-06-12 23:19:25,505.505 INFO    ] Checking for camera pi updates...
[2026-06-12 23:19:25,527.527 INFO    ] 200
[2026-06-12 23:19:25,529.529 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:19:25,553.553 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 23:19:25,603.603 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 23:19:25,604.604 INFO    ] No camera update needed
[2026-06-12 23:19:25,606.606 INFO    ] Script finished. Safe exiting...
[2026-06-12 23:19:25,607.607 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 23:19:25,610.610 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 23:19:25,613.613 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 23:19:27,651.651 INFO    ] ================================================
[2026-06-12 23:19:27,668.668 INFO    ] Launching Daemon at Fri Jun 12 23:19:27 IST 2026
[2026-06-12 23:19:27,679.679 INFO    ] ================================================
[2026-06-12 23:19:28,040.040 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 23:19:28
[2026-06-12 23:19:28,357.357 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 23:19:28,501.501 INFO    ] Initializing speech engine...
[2026-06-12 23:19:28,506.506 INFO    ] 2026-06-12 23:19:28
[2026-06-12 23:19:28,709.709 INFO    ] 2026-06-12 23:19:28
[2026-06-12 23:19:28,737.737 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 23:19:28,921.921 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 23:19:28,930.930 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 23:19:29,069.069 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 23:19:29,127.127 INFO    ] time= 12/06/2026 23:19:29
[2026-06-12 23:19:29,149.149 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 23:19:29,156.156 INFO    ] Checking for existing commands in stream...
[2026-06-12 23:19:29,222.222 INFO    ] No existing commands found in stream
[2026-06-12 23:19:34,241.241 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 23:19:34,244.244 INFO    ] Waiting 2.64 seconds before fallback handling...
[2026-06-12 23:19:37,279.279 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 23:19:37,281.281 INFO    ] Checking for system updates...
[2026-06-12 23:19:37,303.303 INFO    ] 200
[2026-06-12 23:19:37,304.304 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:19:37,337.337 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 23:19:37,338.338 INFO    ] No update needed
[2026-06-12 23:19:37,339.339 INFO    ] Checking for camera pi updates...
[2026-06-12 23:19:37,360.360 INFO    ] 200
[2026-06-12 23:19:37,362.362 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:19:37,386.386 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 23:19:37,449.449 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 23:19:37,451.451 INFO    ] No camera update needed
[2026-06-12 23:19:37,452.452 INFO    ] Script finished. Safe exiting...
[2026-06-12 23:19:37,453.453 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 23:19:37,456.456 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 23:19:37,459.459 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 23:19:39,497.497 INFO    ] ================================================
[2026-06-12 23:19:39,512.512 INFO    ] Launching Daemon at Fri Jun 12 23:19:39 IST 2026
[2026-06-12 23:19:39,524.524 INFO    ] ================================================
[2026-06-12 23:19:39,869.869 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 23:19:39
[2026-06-12 23:19:40,181.181 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 23:19:40,312.312 INFO    ] Initializing speech engine...
[2026-06-12 23:19:40,324.324 INFO    ] 2026-06-12 23:19:40
[2026-06-12 23:19:40,531.531 INFO    ] 2026-06-12 23:19:40
[2026-06-12 23:19:40,560.560 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 23:19:40,742.742 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 23:19:40,752.752 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 23:19:40,892.892 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 23:19:40,950.950 INFO    ] time= 12/06/2026 23:19:40
[2026-06-12 23:19:40,973.973 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 23:19:40,979.979 INFO    ] Checking for existing commands in stream...
[2026-06-12 23:19:41,046.046 INFO    ] No existing commands found in stream
[2026-06-12 23:19:46,054.054 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 23:19:46,057.057 INFO    ] Waiting 3.16 seconds before fallback handling...
[2026-06-12 23:19:49,603.603 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 23:19:49,605.605 INFO    ] Checking for system updates...
[2026-06-12 23:19:49,625.625 INFO    ] 200
[2026-06-12 23:19:49,627.627 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:19:49,657.657 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 23:19:49,658.658 INFO    ] No update needed
[2026-06-12 23:19:49,660.660 INFO    ] Checking for camera pi updates...
[2026-06-12 23:19:49,682.682 INFO    ] 200
[2026-06-12 23:19:49,684.684 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:19:49,709.709 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 23:19:49,758.758 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 23:19:49,759.759 INFO    ] No camera update needed
[2026-06-12 23:19:49,761.761 INFO    ] Script finished. Safe exiting...
[2026-06-12 23:19:49,762.762 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 23:19:49,765.765 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 23:19:49,768.768 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 23:19:51,805.805 INFO    ] ================================================
[2026-06-12 23:19:51,821.821 INFO    ] Launching Daemon at Fri Jun 12 23:19:51 IST 2026
[2026-06-12 23:19:51,832.832 INFO    ] ================================================
[2026-06-12 23:19:52,156.156 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 23:19:52
[2026-06-12 23:19:52,468.468 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 23:19:52,611.611 INFO    ] Initializing speech engine...
[2026-06-12 23:19:52,615.615 INFO    ] 2026-06-12 23:19:52
[2026-06-12 23:19:52,820.820 INFO    ] 2026-06-12 23:19:52
[2026-06-12 23:19:52,849.849 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 23:19:53,036.036 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 23:19:53,045.045 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 23:19:53,177.177 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 23:19:53,245.245 INFO    ] time= 12/06/2026 23:19:53
[2026-06-12 23:19:53,269.269 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 23:19:53,275.275 INFO    ] Checking for existing commands in stream...
[2026-06-12 23:19:53,341.341 INFO    ] No existing commands found in stream
[2026-06-12 23:19:58,352.352 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 23:19:58,355.355 INFO    ] Waiting 0.97 seconds before fallback handling...
[2026-06-12 23:19:59,698.698 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 23:19:59,700.700 INFO    ] Checking for system updates...
[2026-06-12 23:19:59,720.720 INFO    ] 200
[2026-06-12 23:19:59,721.721 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:19:59,753.753 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 23:19:59,754.754 INFO    ] No update needed
[2026-06-12 23:19:59,755.755 INFO    ] Checking for camera pi updates...
[2026-06-12 23:19:59,776.776 INFO    ] 200
[2026-06-12 23:19:59,777.777 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:19:59,802.802 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 23:19:59,855.855 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 23:19:59,856.856 INFO    ] No camera update needed
[2026-06-12 23:19:59,857.857 INFO    ] Script finished. Safe exiting...
[2026-06-12 23:19:59,858.858 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 23:19:59,862.862 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 23:19:59,865.865 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 23:20:01,902.902 INFO    ] ================================================
[2026-06-12 23:20:01,919.919 INFO    ] Launching Daemon at Fri Jun 12 23:20:01 IST 2026
[2026-06-12 23:20:01,930.930 INFO    ] ================================================
[2026-06-12 23:20:02,322.322 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 23:20:02
[2026-06-12 23:20:02,677.677 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 23:20:02,814.814 INFO    ] Initializing speech engine...
[2026-06-12 23:20:02,823.823 INFO    ] 2026-06-12 23:20:02
[2026-06-12 23:20:03,037.037 INFO    ] 2026-06-12 23:20:03
[2026-06-12 23:20:03,067.067 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 23:20:03,191.191 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 23:20:03,256.256 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 23:20:03,389.389 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 23:20:03,455.455 INFO    ] time= 12/06/2026 23:20:03
[2026-06-12 23:20:03,489.489 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 23:20:03,496.496 INFO    ] Checking for existing commands in stream...
[2026-06-12 23:20:03,562.562 INFO    ] No existing commands found in stream
[2026-06-12 23:20:08,572.572 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 23:20:08,575.575 INFO    ] Waiting 2.88 seconds before fallback handling...
[2026-06-12 23:20:11,832.832 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 23:20:11,834.834 INFO    ] Checking for system updates...
[2026-06-12 23:20:11,856.856 INFO    ] 200
[2026-06-12 23:20:11,857.857 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:20:11,892.892 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 23:20:11,894.894 INFO    ] No update needed
[2026-06-12 23:20:11,895.895 INFO    ] Checking for camera pi updates...
[2026-06-12 23:20:11,916.916 INFO    ] 200
[2026-06-12 23:20:11,918.918 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:20:11,943.943 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 23:20:11,992.992 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 23:20:11,994.994 INFO    ] No camera update needed
[2026-06-12 23:20:11,995.995 INFO    ] Script finished. Safe exiting...
[2026-06-12 23:20:11,996.996 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 23:20:12,000.000 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 23:20:12,003.003 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 23:20:14,043.043 INFO    ] ================================================
[2026-06-12 23:20:14,060.060 INFO    ] Launching Daemon at Fri Jun 12 23:20:14 IST 2026
[2026-06-12 23:20:14,071.071 INFO    ] ================================================
[2026-06-12 23:20:14,433.433 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 23:20:14
[2026-06-12 23:20:14,748.748 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 23:20:14,881.881 INFO    ] Initializing speech engine...
[2026-06-12 23:20:14,884.884 INFO    ] 2026-06-12 23:20:14
[2026-06-12 23:20:15,101.101 INFO    ] 2026-06-12 23:20:15
[2026-06-12 23:20:15,129.129 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 23:20:15,313.313 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 23:20:15,322.322 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 23:20:15,452.452 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 23:20:15,517.517 INFO    ] time= 12/06/2026 23:20:15
[2026-06-12 23:20:15,541.541 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 23:20:15,548.548 INFO    ] Checking for existing commands in stream...
[2026-06-12 23:20:15,615.615 INFO    ] No existing commands found in stream
[2026-06-12 23:20:20,629.629 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 23:20:20,632.632 INFO    ] Waiting 2.88 seconds before fallback handling...
[2026-06-12 23:20:23,894.894 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 23:20:23,895.895 INFO    ] Checking for system updates...
[2026-06-12 23:20:23,917.917 INFO    ] 200
[2026-06-12 23:20:23,919.919 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:20:23,950.950 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 23:20:23,952.952 INFO    ] No update needed
[2026-06-12 23:20:23,953.953 INFO    ] Checking for camera pi updates...
[2026-06-12 23:20:23,974.974 INFO    ] 200
[2026-06-12 23:20:23,975.975 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:20:24,000.000 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 23:20:24,042.042 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 23:20:24,043.043 INFO    ] No camera update needed
[2026-06-12 23:20:24,044.044 INFO    ] Script finished. Safe exiting...
[2026-06-12 23:20:24,046.046 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 23:20:24,049.049 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 23:20:24,052.052 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 23:20:26,091.091 INFO    ] ================================================
[2026-06-12 23:20:26,107.107 INFO    ] Launching Daemon at Fri Jun 12 23:20:26 IST 2026
[2026-06-12 23:20:26,119.119 INFO    ] ================================================
[2026-06-12 23:20:26,467.467 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 23:20:26
[2026-06-12 23:20:26,786.786 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 23:20:26,932.932 INFO    ] Initializing speech engine...
[2026-06-12 23:20:26,937.937 INFO    ] 2026-06-12 23:20:26
[2026-06-12 23:20:27,140.140 INFO    ] 2026-06-12 23:20:27
[2026-06-12 23:20:27,169.169 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 23:20:27,352.352 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 23:20:27,362.362 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 23:20:27,490.490 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 23:20:27,558.558 INFO    ] time= 12/06/2026 23:20:27
[2026-06-12 23:20:27,582.582 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 23:20:27,587.587 INFO    ] Checking for existing commands in stream...
[2026-06-12 23:20:27,654.654 INFO    ] No existing commands found in stream
[2026-06-12 23:20:32,668.668 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 23:20:32,671.671 INFO    ] Waiting 2.91 seconds before fallback handling...
[2026-06-12 23:20:35,961.961 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 23:20:35,963.963 INFO    ] Checking for system updates...
[2026-06-12 23:20:35,984.984 INFO    ] 200
[2026-06-12 23:20:35,986.986 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:20:36,021.021 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 23:20:36,023.023 INFO    ] No update needed
[2026-06-12 23:20:36,024.024 INFO    ] Checking for camera pi updates...
[2026-06-12 23:20:36,048.048 INFO    ] 200
[2026-06-12 23:20:36,049.049 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:20:36,073.073 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 23:20:36,112.112 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 23:20:36,113.113 INFO    ] No camera update needed
[2026-06-12 23:20:36,115.115 INFO    ] Script finished. Safe exiting...
[2026-06-12 23:20:36,116.116 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 23:20:36,119.119 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 23:20:36,122.122 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 23:20:38,154.154 INFO    ] ================================================
[2026-06-12 23:20:38,164.164 INFO    ] Launching Daemon at Fri Jun 12 23:20:38 IST 2026
[2026-06-12 23:20:38,171.171 INFO    ] ================================================
[2026-06-12 23:20:38,499.499 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 23:20:38
[2026-06-12 23:20:38,817.817 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 23:20:38,962.962 INFO    ] Initializing speech engine...
[2026-06-12 23:20:38,967.967 INFO    ] 2026-06-12 23:20:38
[2026-06-12 23:20:39,170.170 INFO    ] 2026-06-12 23:20:39
[2026-06-12 23:20:39,199.199 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 23:20:39,336.336 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 23:20:39,384.384 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 23:20:39,513.513 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 23:20:39,569.569 INFO    ] time= 12/06/2026 23:20:39
[2026-06-12 23:20:39,603.603 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 23:20:39,613.613 INFO    ] Checking for existing commands in stream...
[2026-06-12 23:20:39,684.684 INFO    ] No existing commands found in stream
[2026-06-12 23:20:44,693.693 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 23:20:44,696.696 INFO    ] Waiting 2.67 seconds before fallback handling...
[2026-06-12 23:20:47,740.740 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 23:20:47,741.741 INFO    ] Checking for system updates...
[2026-06-12 23:20:47,762.762 INFO    ] 200
[2026-06-12 23:20:47,763.763 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:20:47,795.795 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 23:20:47,797.797 INFO    ] No update needed
[2026-06-12 23:20:47,798.798 INFO    ] Checking for camera pi updates...
[2026-06-12 23:20:47,817.817 INFO    ] 200
[2026-06-12 23:20:47,818.818 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:20:47,843.843 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 23:20:47,903.903 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 23:20:47,904.904 INFO    ] No camera update needed
[2026-06-12 23:20:47,905.905 INFO    ] Script finished. Safe exiting...
[2026-06-12 23:20:47,906.906 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 23:20:47,909.909 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 23:20:47,912.912 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 23:20:49,951.951 INFO    ] ================================================
[2026-06-12 23:20:49,967.967 INFO    ] Launching Daemon at Fri Jun 12 23:20:49 IST 2026
[2026-06-12 23:20:49,978.978 INFO    ] ================================================
[2026-06-12 23:20:50,343.343 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 23:20:50
[2026-06-12 23:20:50,660.660 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 23:20:50,795.795 INFO    ] Initializing speech engine...
[2026-06-12 23:20:50,804.804 INFO    ] 2026-06-12 23:20:50
[2026-06-12 23:20:51,024.024 INFO    ] 2026-06-12 23:20:50
[2026-06-12 23:20:51,059.059 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 23:20:51,210.210 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 23:20:51,274.274 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 23:20:51,373.373 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 23:20:51,375.375 INFO    ] time= 12/06/2026 23:20:51
[2026-06-12 23:20:51,376.376 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 23:20:51,378.378 INFO    ] Checking for existing commands in stream...
[2026-06-12 23:20:51,461.461 INFO    ] No existing commands found in stream
[2026-06-12 23:20:56,495.495 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 23:20:56,497.497 INFO    ] Waiting 2.48 seconds before fallback handling...
[2026-06-12 23:20:59,271.271 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 23:20:59,273.273 INFO    ] Checking for system updates...
[2026-06-12 23:20:59,293.293 INFO    ] 200
[2026-06-12 23:20:59,294.294 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:20:59,326.326 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 23:20:59,328.328 INFO    ] No update needed
[2026-06-12 23:20:59,329.329 INFO    ] Checking for camera pi updates...
[2026-06-12 23:20:59,349.349 INFO    ] 200
[2026-06-12 23:20:59,351.351 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:20:59,379.379 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 23:20:59,522.522 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 23:20:59,524.524 INFO    ] No camera update needed
[2026-06-12 23:20:59,525.525 INFO    ] Script finished. Safe exiting...
[2026-06-12 23:20:59,526.526 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 23:20:59,529.529 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 23:20:59,533.533 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 23:21:01,573.573 INFO    ] ================================================
[2026-06-12 23:21:01,590.590 INFO    ] Launching Daemon at Fri Jun 12 23:21:01 IST 2026
[2026-06-12 23:21:01,602.602 INFO    ] ================================================
[2026-06-12 23:21:02,061.061 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 23:21:02
[2026-06-12 23:21:02,485.485 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 23:21:02,700.700 INFO    ] Initializing speech engine...
[2026-06-12 23:21:02,704.704 INFO    ] 2026-06-12 23:21:02
[2026-06-12 23:21:02,907.907 INFO    ] 2026-06-12 23:21:02
[2026-06-12 23:21:02,943.943 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 23:21:03,072.072 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 23:21:03,073.073 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 23:21:03,177.177 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 23:21:03,179.179 INFO    ] time= 12/06/2026 23:21:03
[2026-06-12 23:21:03,189.189 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 23:21:03,199.199 INFO    ] Checking for existing commands in stream...
[2026-06-12 23:21:03,296.296 INFO    ] No existing commands found in stream
[2026-06-12 23:21:08,329.329 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 23:21:08,332.332 INFO    ] Waiting 1.59 seconds before fallback handling...
[2026-06-12 23:21:10,299.299 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 23:21:10,301.301 INFO    ] Checking for system updates...
[2026-06-12 23:21:10,322.322 INFO    ] 200
[2026-06-12 23:21:10,323.323 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:21:10,356.356 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 23:21:10,358.358 INFO    ] No update needed
[2026-06-12 23:21:10,359.359 INFO    ] Checking for camera pi updates...
[2026-06-12 23:21:10,380.380 INFO    ] 200
[2026-06-12 23:21:10,382.382 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:21:10,408.408 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 23:21:10,469.469 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 23:21:10,471.471 INFO    ] No camera update needed
[2026-06-12 23:21:10,472.472 INFO    ] Script finished. Safe exiting...
[2026-06-12 23:21:10,473.473 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 23:21:10,477.477 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 23:21:10,480.480 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 23:21:12,518.518 INFO    ] ================================================
[2026-06-12 23:21:12,534.534 INFO    ] Launching Daemon at Fri Jun 12 23:21:12 IST 2026
[2026-06-12 23:21:12,545.545 INFO    ] ================================================
[2026-06-12 23:21:12,882.882 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 23:21:12
[2026-06-12 23:21:13,196.196 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 23:21:13,338.338 INFO    ] Initializing speech engine...
[2026-06-12 23:21:13,344.344 INFO    ] 2026-06-12 23:21:13
[2026-06-12 23:21:13,546.546 INFO    ] 2026-06-12 23:21:13
[2026-06-12 23:21:13,574.574 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 23:21:13,758.758 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 23:21:13,767.767 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 23:21:13,902.902 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 23:21:13,958.958 INFO    ] time= 12/06/2026 23:21:13
[2026-06-12 23:21:14,000.000 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 23:21:14,011.011 INFO    ] Checking for existing commands in stream...
[2026-06-12 23:21:14,117.117 INFO    ] No existing commands found in stream
[2026-06-12 23:21:19,126.126 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 23:21:19,129.129 INFO    ] Waiting 3.11 seconds before fallback handling...
[2026-06-12 23:21:22,628.628 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 23:21:22,630.630 INFO    ] Checking for system updates...
[2026-06-12 23:21:22,651.651 INFO    ] 200
[2026-06-12 23:21:22,653.653 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:21:22,683.683 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 23:21:22,685.685 INFO    ] No update needed
[2026-06-12 23:21:22,686.686 INFO    ] Checking for camera pi updates...
[2026-06-12 23:21:22,707.707 INFO    ] 200
[2026-06-12 23:21:22,708.708 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:21:22,733.733 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 23:21:22,784.784 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 23:21:22,785.785 INFO    ] No camera update needed
[2026-06-12 23:21:22,787.787 INFO    ] Script finished. Safe exiting...
[2026-06-12 23:21:22,788.788 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 23:21:22,791.791 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 23:21:22,794.794 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 23:21:24,832.832 INFO    ] ================================================
[2026-06-12 23:21:24,848.848 INFO    ] Launching Daemon at Fri Jun 12 23:21:24 IST 2026
[2026-06-12 23:21:24,859.859 INFO    ] ================================================
[2026-06-12 23:21:25,212.212 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 23:21:25
[2026-06-12 23:21:25,527.527 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 23:21:25,662.662 INFO    ] Initializing speech engine...
[2026-06-12 23:21:25,671.671 INFO    ] 2026-06-12 23:21:25
[2026-06-12 23:21:25,901.901 INFO    ] 2026-06-12 23:21:25
[2026-06-12 23:21:25,931.931 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 23:21:26,124.124 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 23:21:26,134.134 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 23:21:26,263.263 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 23:21:26,330.330 INFO    ] time= 12/06/2026 23:21:26
[2026-06-12 23:21:26,354.354 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 23:21:26,361.361 INFO    ] Checking for existing commands in stream...
[2026-06-12 23:21:26,427.427 INFO    ] No existing commands found in stream
[2026-06-12 23:21:31,436.436 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 23:21:31,439.439 INFO    ] Waiting 0.23 seconds before fallback handling...
[2026-06-12 23:21:32,049.049 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 23:21:32,051.051 INFO    ] Checking for system updates...
[2026-06-12 23:21:32,077.077 INFO    ] 200
[2026-06-12 23:21:32,080.080 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:21:32,118.118 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 23:21:32,120.120 INFO    ] No update needed
[2026-06-12 23:21:32,122.122 INFO    ] Checking for camera pi updates...
[2026-06-12 23:21:32,144.144 INFO    ] 200
[2026-06-12 23:21:32,146.146 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:21:32,171.171 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 23:21:32,208.208 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 23:21:32,210.210 INFO    ] No camera update needed
[2026-06-12 23:21:32,212.212 INFO    ] Script finished. Safe exiting...
[2026-06-12 23:21:32,213.213 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 23:21:32,217.217 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 23:21:32,222.222 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 23:21:34,255.255 INFO    ] ================================================
[2026-06-12 23:21:34,272.272 INFO    ] Launching Daemon at Fri Jun 12 23:21:34 IST 2026
[2026-06-12 23:21:34,284.284 INFO    ] ================================================
[2026-06-12 23:21:34,628.628 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 23:21:34
[2026-06-12 23:21:34,945.945 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 23:21:35,093.093 INFO    ] Initializing speech engine...
[2026-06-12 23:21:35,097.097 INFO    ] 2026-06-12 23:21:35
[2026-06-12 23:21:35,317.317 INFO    ] 2026-06-12 23:21:35
[2026-06-12 23:21:35,346.346 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 23:21:35,539.539 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 23:21:35,544.544 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 23:21:35,687.687 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 23:21:35,718.718 INFO    ] time= 12/06/2026 23:21:35
[2026-06-12 23:21:35,772.772 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 23:21:35,796.796 INFO    ] Checking for existing commands in stream...
[2026-06-12 23:21:35,873.873 INFO    ] No existing commands found in stream
[2026-06-12 23:21:40,884.884 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 23:21:40,887.887 INFO    ] Waiting 1.87 seconds before fallback handling...
[2026-06-12 23:21:43,156.156 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 23:21:43,157.157 INFO    ] Checking for system updates...
[2026-06-12 23:21:43,177.177 INFO    ] 200
[2026-06-12 23:21:43,179.179 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:21:43,209.209 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 23:21:43,211.211 INFO    ] No update needed
[2026-06-12 23:21:43,212.212 INFO    ] Checking for camera pi updates...
[2026-06-12 23:21:43,235.235 INFO    ] 200
[2026-06-12 23:21:43,237.237 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:21:43,260.260 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 23:21:43,310.310 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 23:21:43,312.312 INFO    ] No camera update needed
[2026-06-12 23:21:43,313.313 INFO    ] Script finished. Safe exiting...
[2026-06-12 23:21:43,314.314 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 23:21:43,317.317 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 23:21:43,320.320 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 23:21:45,358.358 INFO    ] ================================================
[2026-06-12 23:21:45,373.373 INFO    ] Launching Daemon at Fri Jun 12 23:21:45 IST 2026
[2026-06-12 23:21:45,384.384 INFO    ] ================================================
[2026-06-12 23:21:45,736.736 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 23:21:45
[2026-06-12 23:21:46,047.047 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 23:21:46,194.194 INFO    ] Initializing speech engine...
[2026-06-12 23:21:46,206.206 INFO    ] 2026-06-12 23:21:46
[2026-06-12 23:21:46,401.401 INFO    ] 2026-06-12 23:21:46
[2026-06-12 23:21:46,427.427 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 23:21:46,573.573 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 23:21:46,634.634 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 23:21:46,765.765 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 23:21:46,816.816 INFO    ] time= 12/06/2026 23:21:46
[2026-06-12 23:21:46,855.855 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 23:21:46,865.865 INFO    ] Checking for existing commands in stream...
[2026-06-12 23:21:46,937.937 INFO    ] No existing commands found in stream
[2026-06-12 23:21:51,946.946 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 23:21:51,949.949 INFO    ] Waiting 2.76 seconds before fallback handling...
[2026-06-12 23:21:55,066.066 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 23:21:55,068.068 INFO    ] Checking for system updates...
[2026-06-12 23:21:55,090.090 INFO    ] 200
[2026-06-12 23:21:55,092.092 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:21:55,124.124 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 23:21:55,125.125 INFO    ] No update needed
[2026-06-12 23:21:55,127.127 INFO    ] Checking for camera pi updates...
[2026-06-12 23:21:55,146.146 INFO    ] 200
[2026-06-12 23:21:55,147.147 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:21:55,170.170 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 23:21:55,218.218 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 23:21:55,219.219 INFO    ] No camera update needed
[2026-06-12 23:21:55,221.221 INFO    ] Script finished. Safe exiting...
[2026-06-12 23:21:55,222.222 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 23:21:55,225.225 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 23:21:55,228.228 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 23:21:57,265.265 INFO    ] ================================================
[2026-06-12 23:21:57,281.281 INFO    ] Launching Daemon at Fri Jun 12 23:21:57 IST 2026
[2026-06-12 23:21:57,292.292 INFO    ] ================================================
[2026-06-12 23:21:57,621.621 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 23:21:57
[2026-06-12 23:21:57,932.932 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 23:21:58,067.067 INFO    ] Initializing speech engine...
[2026-06-12 23:21:58,076.076 INFO    ] 2026-06-12 23:21:58
[2026-06-12 23:21:58,303.303 INFO    ] 2026-06-12 23:21:58
[2026-06-12 23:21:58,334.334 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 23:21:58,533.533 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 23:21:58,538.538 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 23:21:58,680.680 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 23:21:58,726.726 INFO    ] time= 12/06/2026 23:21:58
[2026-06-12 23:21:58,765.765 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 23:21:58,789.789 INFO    ] Checking for existing commands in stream...
[2026-06-12 23:21:58,865.865 INFO    ] No existing commands found in stream
[2026-06-12 23:22:03,876.876 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 23:22:03,879.879 INFO    ] Waiting 1.67 seconds before fallback handling...
[2026-06-12 23:22:05,919.919 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 23:22:05,920.920 INFO    ] Checking for system updates...
[2026-06-12 23:22:05,941.941 INFO    ] 200
[2026-06-12 23:22:05,942.942 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:22:05,972.972 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 23:22:05,974.974 INFO    ] No update needed
[2026-06-12 23:22:05,975.975 INFO    ] Checking for camera pi updates...
[2026-06-12 23:22:05,994.994 INFO    ] 200
[2026-06-12 23:22:05,996.996 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:22:06,019.019 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 23:22:06,081.081 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 23:22:06,082.082 INFO    ] No camera update needed
[2026-06-12 23:22:06,083.083 INFO    ] Script finished. Safe exiting...
[2026-06-12 23:22:06,085.085 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 23:22:06,088.088 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 23:22:06,090.090 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 23:22:08,128.128 INFO    ] ================================================
[2026-06-12 23:22:08,144.144 INFO    ] Launching Daemon at Fri Jun 12 23:22:08 IST 2026
[2026-06-12 23:22:08,156.156 INFO    ] ================================================
[2026-06-12 23:22:08,492.492 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 23:22:08
[2026-06-12 23:22:08,803.803 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 23:22:08,933.933 INFO    ] Initializing speech engine...
[2026-06-12 23:22:08,937.937 INFO    ] 2026-06-12 23:22:08
[2026-06-12 23:22:09,155.155 INFO    ] 2026-06-12 23:22:09
[2026-06-12 23:22:09,185.185 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 23:22:09,309.309 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 23:22:09,372.372 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 23:22:09,513.513 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 23:22:09,577.577 INFO    ] time= 12/06/2026 23:22:09
[2026-06-12 23:22:09,605.605 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 23:22:09,612.612 INFO    ] Checking for existing commands in stream...
[2026-06-12 23:22:09,680.680 INFO    ] No existing commands found in stream
[2026-06-12 23:22:14,689.689 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 23:22:14,692.692 INFO    ] Waiting 0.58 seconds before fallback handling...
[2026-06-12 23:22:15,658.658 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 23:22:15,659.659 INFO    ] Checking for system updates...
[2026-06-12 23:22:15,680.680 INFO    ] 200
[2026-06-12 23:22:15,681.681 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:22:15,711.711 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 23:22:15,712.712 INFO    ] No update needed
[2026-06-12 23:22:15,714.714 INFO    ] Checking for camera pi updates...
[2026-06-12 23:22:15,733.733 INFO    ] 200
[2026-06-12 23:22:15,734.734 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:22:15,759.759 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 23:22:15,816.816 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 23:22:15,817.817 INFO    ] No camera update needed
[2026-06-12 23:22:15,818.818 INFO    ] Script finished. Safe exiting...
[2026-06-12 23:22:15,820.820 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 23:22:15,823.823 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 23:22:15,825.825 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 23:22:17,865.865 INFO    ] ================================================
[2026-06-12 23:22:17,881.881 INFO    ] Launching Daemon at Fri Jun 12 23:22:17 IST 2026
[2026-06-12 23:22:17,892.892 INFO    ] ================================================
[2026-06-12 23:22:18,251.251 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 23:22:18
[2026-06-12 23:22:18,591.591 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 23:22:18,747.747 INFO    ] Initializing speech engine...
[2026-06-12 23:22:18,757.757 INFO    ] 2026-06-12 23:22:18
[2026-06-12 23:22:18,966.966 INFO    ] 2026-06-12 23:22:18
[2026-06-12 23:22:18,995.995 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 23:22:19,179.179 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 23:22:19,183.183 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 23:22:19,330.330 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 23:22:19,387.387 INFO    ] time= 12/06/2026 23:22:19
[2026-06-12 23:22:19,415.415 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 23:22:19,417.417 INFO    ] Checking for existing commands in stream...
[2026-06-12 23:22:19,484.484 INFO    ] No existing commands found in stream
[2026-06-12 23:22:24,498.498 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 23:22:24,502.502 INFO    ] Waiting 3.25 seconds before fallback handling...
[2026-06-12 23:22:28,142.142 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 23:22:28,143.143 INFO    ] Checking for system updates...
[2026-06-12 23:22:28,165.165 INFO    ] 200
[2026-06-12 23:22:28,167.167 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:22:28,200.200 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 23:22:28,201.201 INFO    ] No update needed
[2026-06-12 23:22:28,202.202 INFO    ] Checking for camera pi updates...
[2026-06-12 23:22:28,222.222 INFO    ] 200
[2026-06-12 23:22:28,224.224 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:22:28,247.247 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 23:22:28,304.304 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 23:22:28,306.306 INFO    ] No camera update needed
[2026-06-12 23:22:28,307.307 INFO    ] Script finished. Safe exiting...
[2026-06-12 23:22:28,309.309 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 23:22:28,312.312 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 23:22:28,315.315 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 23:22:30,346.346 INFO    ] ================================================
[2026-06-12 23:22:30,362.362 INFO    ] Launching Daemon at Fri Jun 12 23:22:30 IST 2026
[2026-06-12 23:22:30,373.373 INFO    ] ================================================
[2026-06-12 23:22:30,726.726 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 23:22:30
[2026-06-12 23:22:31,044.044 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 23:22:31,188.188 INFO    ] Initializing speech engine...
[2026-06-12 23:22:31,194.194 INFO    ] 2026-06-12 23:22:31
[2026-06-12 23:22:31,421.421 INFO    ] 2026-06-12 23:22:31
[2026-06-12 23:22:31,453.453 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 23:22:31,652.652 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 23:22:31,664.664 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 23:22:31,809.809 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 23:22:31,874.874 INFO    ] time= 12/06/2026 23:22:31
[2026-06-12 23:22:31,879.879 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 23:22:31,910.910 INFO    ] Checking for existing commands in stream...
[2026-06-12 23:22:31,978.978 INFO    ] No existing commands found in stream
[2026-06-12 23:22:36,987.987 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 23:22:36,990.990 INFO    ] Waiting 1.25 seconds before fallback handling...
[2026-06-12 23:22:38,587.587 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 23:22:38,589.589 INFO    ] Checking for system updates...
[2026-06-12 23:22:38,610.610 INFO    ] 200
[2026-06-12 23:22:38,611.611 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:22:38,642.642 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 23:22:38,643.643 INFO    ] No update needed
[2026-06-12 23:22:38,644.644 INFO    ] Checking for camera pi updates...
[2026-06-12 23:22:38,665.665 INFO    ] 200
[2026-06-12 23:22:38,666.666 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:22:38,689.689 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 23:22:38,733.733 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 23:22:38,734.734 INFO    ] No camera update needed
[2026-06-12 23:22:38,736.736 INFO    ] Script finished. Safe exiting...
[2026-06-12 23:22:38,737.737 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 23:22:38,740.740 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 23:22:38,743.743 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 23:22:40,774.774 INFO    ] ================================================
[2026-06-12 23:22:40,783.783 INFO    ] Launching Daemon at Fri Jun 12 23:22:40 IST 2026
[2026-06-12 23:22:40,789.789 INFO    ] ================================================
[2026-06-12 23:22:41,094.094 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 23:22:41
[2026-06-12 23:22:41,406.406 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 23:22:41,549.549 INFO    ] Initializing speech engine...
[2026-06-12 23:22:41,554.554 INFO    ] 2026-06-12 23:22:41
[2026-06-12 23:22:41,760.760 INFO    ] 2026-06-12 23:22:41
[2026-06-12 23:22:41,789.789 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 23:22:41,986.986 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 23:22:42,001.001 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 23:22:42,136.136 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 23:22:42,186.186 INFO    ] time= 12/06/2026 23:22:42
[2026-06-12 23:22:42,208.208 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 23:22:42,213.213 INFO    ] Checking for existing commands in stream...
[2026-06-12 23:22:42,304.304 INFO    ] No existing commands found in stream
[2026-06-12 23:22:47,319.319 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 23:22:47,323.323 INFO    ] Waiting 1.27 seconds before fallback handling...
[2026-06-12 23:22:48,947.947 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 23:22:48,949.949 INFO    ] Checking for system updates...
[2026-06-12 23:22:48,971.971 INFO    ] 200
[2026-06-12 23:22:48,973.973 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:22:49,003.003 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 23:22:49,005.005 INFO    ] No update needed
[2026-06-12 23:22:49,006.006 INFO    ] Checking for camera pi updates...
[2026-06-12 23:22:49,026.026 INFO    ] 200
[2026-06-12 23:22:49,028.028 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:22:49,051.051 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 23:22:49,093.093 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 23:22:49,094.094 INFO    ] No camera update needed
[2026-06-12 23:22:49,096.096 INFO    ] Script finished. Safe exiting...
[2026-06-12 23:22:49,097.097 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 23:22:49,101.101 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 23:22:49,104.104 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 23:22:51,142.142 INFO    ] ================================================
[2026-06-12 23:22:51,158.158 INFO    ] Launching Daemon at Fri Jun 12 23:22:51 IST 2026
[2026-06-12 23:22:51,169.169 INFO    ] ================================================
[2026-06-12 23:22:51,514.514 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 23:22:51
[2026-06-12 23:22:51,831.831 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 23:22:51,963.963 INFO    ] Initializing speech engine...
[2026-06-12 23:22:51,975.975 INFO    ] 2026-06-12 23:22:51
[2026-06-12 23:22:52,183.183 INFO    ] 2026-06-12 23:22:52
[2026-06-12 23:22:52,213.213 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 23:22:52,334.334 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 23:22:52,396.396 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 23:22:52,534.534 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 23:22:52,535.535 INFO    ] time= 12/06/2026 23:22:52
[2026-06-12 23:22:52,536.536 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 23:22:52,538.538 INFO    ] Checking for existing commands in stream...
[2026-06-12 23:22:52,633.633 INFO    ] No existing commands found in stream
[2026-06-12 23:22:57,647.647 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 23:22:57,650.650 INFO    ] Waiting 0.35 seconds before fallback handling...
[2026-06-12 23:22:58,368.368 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 23:22:58,370.370 INFO    ] Checking for system updates...
[2026-06-12 23:22:58,392.392 INFO    ] 200
[2026-06-12 23:22:58,393.393 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:22:58,425.425 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 23:22:58,426.426 INFO    ] No update needed
[2026-06-12 23:22:58,427.427 INFO    ] Checking for camera pi updates...
[2026-06-12 23:22:58,447.447 INFO    ] 200
[2026-06-12 23:22:58,448.448 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:22:58,472.472 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 23:22:58,522.522 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 23:22:58,524.524 INFO    ] No camera update needed
[2026-06-12 23:22:58,525.525 INFO    ] Script finished. Safe exiting...
[2026-06-12 23:22:58,526.526 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 23:22:58,529.529 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 23:22:58,532.532 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 23:23:00,571.571 INFO    ] ================================================
[2026-06-12 23:23:00,587.587 INFO    ] Launching Daemon at Fri Jun 12 23:23:00 IST 2026
[2026-06-12 23:23:00,598.598 INFO    ] ================================================
[2026-06-12 23:23:00,928.928 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 23:23:00
[2026-06-12 23:23:01,242.242 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 23:23:01,563.563 INFO    ] Initializing speech engine...
[2026-06-12 23:23:01,565.565 INFO    ] 2026-06-12 23:23:01
[2026-06-12 23:23:01,813.813 INFO    ] 2026-06-12 23:23:01
[2026-06-12 23:23:01,854.854 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 23:23:02,047.047 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 23:23:02,052.052 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 23:23:02,182.182 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 23:23:02,184.184 INFO    ] time= 12/06/2026 23:23:02
[2026-06-12 23:23:02,186.186 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 23:23:02,228.228 INFO    ] Checking for existing commands in stream...
[2026-06-12 23:23:02,311.311 INFO    ] No existing commands found in stream
[2026-06-12 23:23:07,324.324 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 23:23:07,327.327 INFO    ] Waiting 1.70 seconds before fallback handling...
[2026-06-12 23:23:09,397.397 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 23:23:09,398.398 INFO    ] Checking for system updates...
[2026-06-12 23:23:09,419.419 INFO    ] 200
[2026-06-12 23:23:09,420.420 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:23:09,453.453 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 23:23:09,454.454 INFO    ] No update needed
[2026-06-12 23:23:09,456.456 INFO    ] Checking for camera pi updates...
[2026-06-12 23:23:09,475.475 INFO    ] 200
[2026-06-12 23:23:09,476.476 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:23:09,499.499 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 23:23:09,556.556 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 23:23:09,557.557 INFO    ] No camera update needed
[2026-06-12 23:23:09,558.558 INFO    ] Script finished. Safe exiting...
[2026-06-12 23:23:09,560.560 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 23:23:09,563.563 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 23:23:09,565.565 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 23:23:11,603.603 INFO    ] ================================================
[2026-06-12 23:23:11,619.619 INFO    ] Launching Daemon at Fri Jun 12 23:23:11 IST 2026
[2026-06-12 23:23:11,629.629 INFO    ] ================================================
[2026-06-12 23:23:11,965.965 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 23:23:11
[2026-06-12 23:23:12,283.283 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 23:23:12,417.417 INFO    ] Initializing speech engine...
[2026-06-12 23:23:12,421.421 INFO    ] 2026-06-12 23:23:12
[2026-06-12 23:23:12,653.653 INFO    ] 2026-06-12 23:23:12
[2026-06-12 23:23:12,681.681 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 23:23:12,827.827 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 23:23:12,880.880 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 23:23:13,027.027 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 23:23:13,079.079 INFO    ] time= 12/06/2026 23:23:13
[2026-06-12 23:23:13,118.118 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 23:23:13,136.136 INFO    ] Checking for existing commands in stream...
[2026-06-12 23:23:13,240.240 INFO    ] No existing commands found in stream
[2026-06-12 23:23:18,249.249 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 23:23:18,252.252 INFO    ] Waiting 2.17 seconds before fallback handling...
[2026-06-12 23:23:20,767.767 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 23:23:20,768.768 INFO    ] Checking for system updates...
[2026-06-12 23:23:20,789.789 INFO    ] 200
[2026-06-12 23:23:20,791.791 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:23:20,820.820 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 23:23:20,822.822 INFO    ] No update needed
[2026-06-12 23:23:20,823.823 INFO    ] Checking for camera pi updates...
[2026-06-12 23:23:20,842.842 INFO    ] 200
[2026-06-12 23:23:20,843.843 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:23:20,868.868 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 23:23:20,911.911 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 23:23:20,912.912 INFO    ] No camera update needed
[2026-06-12 23:23:20,913.913 INFO    ] Script finished. Safe exiting...
[2026-06-12 23:23:20,915.915 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 23:23:20,917.917 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 23:23:20,920.920 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 23:23:22,959.959 INFO    ] ================================================
[2026-06-12 23:23:22,974.974 INFO    ] Launching Daemon at Fri Jun 12 23:23:22 IST 2026
[2026-06-12 23:23:22,986.986 INFO    ] ================================================
[2026-06-12 23:23:23,321.321 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 23:23:23
[2026-06-12 23:23:23,634.634 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 23:23:23,765.765 INFO    ] Initializing speech engine...
[2026-06-12 23:23:23,772.772 INFO    ] 2026-06-12 23:23:23
[2026-06-12 23:23:23,986.986 INFO    ] 2026-06-12 23:23:23
[2026-06-12 23:23:24,013.013 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 23:23:24,198.198 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 23:23:24,201.201 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 23:23:24,337.337 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 23:23:24,401.401 INFO    ] time= 12/06/2026 23:23:24
[2026-06-12 23:23:24,428.428 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 23:23:24,434.434 INFO    ] Checking for existing commands in stream...
[2026-06-12 23:23:24,501.501 INFO    ] No existing commands found in stream
[2026-06-12 23:23:29,510.510 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 23:23:29,512.512 INFO    ] Waiting 0.72 seconds before fallback handling...
[2026-06-12 23:23:30,608.608 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 23:23:30,610.610 INFO    ] Checking for system updates...
[2026-06-12 23:23:30,632.632 INFO    ] 200
[2026-06-12 23:23:30,634.634 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:23:30,664.664 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 23:23:30,665.665 INFO    ] No update needed
[2026-06-12 23:23:30,667.667 INFO    ] Checking for camera pi updates...
[2026-06-12 23:23:30,686.686 INFO    ] 200
[2026-06-12 23:23:30,687.687 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:23:30,711.711 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 23:23:30,765.765 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 23:23:30,766.766 INFO    ] No camera update needed
[2026-06-12 23:23:30,767.767 INFO    ] Script finished. Safe exiting...
[2026-06-12 23:23:30,769.769 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 23:23:30,772.772 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 23:23:30,775.775 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 23:23:32,807.807 INFO    ] ================================================
[2026-06-12 23:23:32,823.823 INFO    ] Launching Daemon at Fri Jun 12 23:23:32 IST 2026
[2026-06-12 23:23:32,834.834 INFO    ] ================================================
[2026-06-12 23:23:33,187.187 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 23:23:33
[2026-06-12 23:23:33,503.503 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 23:23:33,633.633 INFO    ] Initializing speech engine...
[2026-06-12 23:23:33,640.640 INFO    ] 2026-06-12 23:23:33
[2026-06-12 23:23:33,855.855 INFO    ] 2026-06-12 23:23:33
[2026-06-12 23:23:33,883.883 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 23:23:34,065.065 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 23:23:34,069.069 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 23:23:34,196.196 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 23:23:34,256.256 INFO    ] time= 12/06/2026 23:23:34
[2026-06-12 23:23:34,290.290 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 23:23:34,295.295 INFO    ] Checking for existing commands in stream...
[2026-06-12 23:23:34,366.366 INFO    ] No existing commands found in stream
[2026-06-12 23:23:39,375.375 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 23:23:39,377.377 INFO    ] Waiting 1.84 seconds before fallback handling...
[2026-06-12 23:23:41,617.617 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 23:23:41,619.619 INFO    ] Checking for system updates...
[2026-06-12 23:23:41,649.649 INFO    ] 200
[2026-06-12 23:23:41,651.651 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:23:41,681.681 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 23:23:41,683.683 INFO    ] No update needed
[2026-06-12 23:23:41,684.684 INFO    ] Checking for camera pi updates...
[2026-06-12 23:23:41,706.706 INFO    ] 200
[2026-06-12 23:23:41,707.707 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:23:41,733.733 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 23:23:41,785.785 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 23:23:41,786.786 INFO    ] No camera update needed
[2026-06-12 23:23:41,788.788 INFO    ] Script finished. Safe exiting...
[2026-06-12 23:23:41,789.789 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 23:23:41,792.792 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 23:23:41,795.795 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 23:23:43,835.835 INFO    ] ================================================
[2026-06-12 23:23:43,851.851 INFO    ] Launching Daemon at Fri Jun 12 23:23:43 IST 2026
[2026-06-12 23:23:43,861.861 INFO    ] ================================================
[2026-06-12 23:23:44,186.186 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 23:23:44
[2026-06-12 23:23:44,496.496 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 23:23:44,629.629 INFO    ] Initializing speech engine...
[2026-06-12 23:23:44,641.641 INFO    ] 2026-06-12 23:23:44
[2026-06-12 23:23:44,848.848 INFO    ] 2026-06-12 23:23:44
[2026-06-12 23:23:44,878.878 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 23:23:45,062.062 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 23:23:45,070.070 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 23:23:45,198.198 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 23:23:45,266.266 INFO    ] time= 12/06/2026 23:23:45
[2026-06-12 23:23:45,293.293 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 23:23:45,300.300 INFO    ] Checking for existing commands in stream...
[2026-06-12 23:23:45,391.391 INFO    ] No existing commands found in stream
[2026-06-12 23:23:50,400.400 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 23:23:50,403.403 INFO    ] Waiting 3.60 seconds before fallback handling...
[2026-06-12 23:23:54,360.360 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 23:23:54,361.361 INFO    ] Checking for system updates...
[2026-06-12 23:23:54,381.381 INFO    ] 200
[2026-06-12 23:23:54,383.383 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:23:54,414.414 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 23:23:54,416.416 INFO    ] No update needed
[2026-06-12 23:23:54,417.417 INFO    ] Checking for camera pi updates...
[2026-06-12 23:23:54,436.436 INFO    ] 200
[2026-06-12 23:23:54,437.437 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:23:54,460.460 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 23:23:54,507.507 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 23:23:54,508.508 INFO    ] No camera update needed
[2026-06-12 23:23:54,510.510 INFO    ] Script finished. Safe exiting...
[2026-06-12 23:23:54,511.511 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 23:23:54,514.514 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 23:23:54,516.516 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 23:23:56,559.559 INFO    ] ================================================
[2026-06-12 23:23:56,575.575 INFO    ] Launching Daemon at Fri Jun 12 23:23:56 IST 2026
[2026-06-12 23:23:56,586.586 INFO    ] ================================================
[2026-06-12 23:23:56,954.954 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 23:23:56
[2026-06-12 23:23:57,295.295 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 23:23:57,447.447 INFO    ] Initializing speech engine...
[2026-06-12 23:23:57,454.454 INFO    ] 2026-06-12 23:23:57
[2026-06-12 23:23:57,662.662 INFO    ] 2026-06-12 23:23:57
[2026-06-12 23:23:57,691.691 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 23:23:57,877.877 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 23:23:57,886.886 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 23:23:58,021.021 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 23:23:58,083.083 INFO    ] time= 12/06/2026 23:23:58
[2026-06-12 23:23:58,107.107 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 23:23:58,113.113 INFO    ] Checking for existing commands in stream...
[2026-06-12 23:23:58,203.203 INFO    ] No existing commands found in stream
[2026-06-12 23:24:03,218.218 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 23:24:03,221.221 INFO    ] Waiting 3.25 seconds before fallback handling...
[2026-06-12 23:24:06,837.837 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 23:24:06,839.839 INFO    ] Checking for system updates...
[2026-06-12 23:24:06,860.860 INFO    ] 200
[2026-06-12 23:24:06,861.861 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:24:06,892.892 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 23:24:06,893.893 INFO    ] No update needed
[2026-06-12 23:24:06,895.895 INFO    ] Checking for camera pi updates...
[2026-06-12 23:24:06,915.915 INFO    ] 200
[2026-06-12 23:24:06,916.916 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:24:06,946.946 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 23:24:07,001.001 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 23:24:07,002.002 INFO    ] No camera update needed
[2026-06-12 23:24:07,004.004 INFO    ] Script finished. Safe exiting...
[2026-06-12 23:24:07,005.005 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 23:24:07,008.008 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 23:24:07,012.012 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 23:24:09,050.050 INFO    ] ================================================
[2026-06-12 23:24:09,065.065 INFO    ] Launching Daemon at Fri Jun 12 23:24:09 IST 2026
[2026-06-12 23:24:09,076.076 INFO    ] ================================================
[2026-06-12 23:24:09,409.409 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 23:24:09
[2026-06-12 23:24:09,722.722 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 23:24:09,856.856 INFO    ] Initializing speech engine...
[2026-06-12 23:24:09,865.865 INFO    ] 2026-06-12 23:24:09
[2026-06-12 23:24:10,079.079 INFO    ] 2026-06-12 23:24:10
[2026-06-12 23:24:10,109.109 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 23:24:10,295.295 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 23:24:10,299.299 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 23:24:10,431.431 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 23:24:10,487.487 INFO    ] time= 12/06/2026 23:24:10
[2026-06-12 23:24:10,527.527 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 23:24:10,533.533 INFO    ] Checking for existing commands in stream...
[2026-06-12 23:24:10,606.606 INFO    ] No existing commands found in stream
[2026-06-12 23:24:15,620.620 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 23:24:15,623.623 INFO    ] Waiting 3.60 seconds before fallback handling...
[2026-06-12 23:24:19,588.588 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 23:24:19,590.590 INFO    ] Checking for system updates...
[2026-06-12 23:24:19,610.610 INFO    ] 200
[2026-06-12 23:24:19,612.612 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:24:19,645.645 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 23:24:19,646.646 INFO    ] No update needed
[2026-06-12 23:24:19,647.647 INFO    ] Checking for camera pi updates...
[2026-06-12 23:24:19,666.666 INFO    ] 200
[2026-06-12 23:24:19,668.668 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:24:19,691.691 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 23:24:19,731.731 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 23:24:19,732.732 INFO    ] No camera update needed
[2026-06-12 23:24:19,734.734 INFO    ] Script finished. Safe exiting...
[2026-06-12 23:24:19,735.735 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 23:24:19,738.738 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 23:24:19,741.741 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 23:24:21,780.780 INFO    ] ================================================
[2026-06-12 23:24:21,795.795 INFO    ] Launching Daemon at Fri Jun 12 23:24:21 IST 2026
[2026-06-12 23:24:21,805.805 INFO    ] ================================================
[2026-06-12 23:24:22,146.146 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 23:24:22
[2026-06-12 23:24:22,460.460 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 23:24:22,591.591 INFO    ] Initializing speech engine...
[2026-06-12 23:24:22,594.594 INFO    ] 2026-06-12 23:24:22
[2026-06-12 23:24:22,814.814 INFO    ] 2026-06-12 23:24:22
[2026-06-12 23:24:22,842.842 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 23:24:23,026.026 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 23:24:23,030.030 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 23:24:23,162.162 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 23:24:23,230.230 INFO    ] time= 12/06/2026 23:24:23
[2026-06-12 23:24:23,253.253 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 23:24:23,259.259 INFO    ] Checking for existing commands in stream...
[2026-06-12 23:24:23,330.330 INFO    ] No existing commands found in stream
[2026-06-12 23:24:28,344.344 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 23:24:28,347.347 INFO    ] Waiting 3.12 seconds before fallback handling...
[2026-06-12 23:24:31,877.877 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 23:24:31,879.879 INFO    ] Checking for system updates...
[2026-06-12 23:24:31,902.902 INFO    ] 200
[2026-06-12 23:24:31,903.903 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:24:31,938.938 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 23:24:31,940.940 INFO    ] No update needed
[2026-06-12 23:24:31,943.943 INFO    ] Checking for camera pi updates...
[2026-06-12 23:24:31,968.968 INFO    ] 200
[2026-06-12 23:24:31,970.970 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:24:32,005.005 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 23:24:32,053.053 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 23:24:32,055.055 INFO    ] No camera update needed
[2026-06-12 23:24:32,057.057 INFO    ] Script finished. Safe exiting...
[2026-06-12 23:24:32,059.059 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 23:24:32,063.063 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 23:24:32,067.067 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 23:24:34,107.107 INFO    ] ================================================
[2026-06-12 23:24:34,122.122 INFO    ] Launching Daemon at Fri Jun 12 23:24:34 IST 2026
[2026-06-12 23:24:34,132.132 INFO    ] ================================================
[2026-06-12 23:24:34,465.465 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 23:24:34
[2026-06-12 23:24:34,781.781 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 23:24:34,923.923 INFO    ] Initializing speech engine...
[2026-06-12 23:24:34,928.928 INFO    ] 2026-06-12 23:24:34
[2026-06-12 23:24:35,130.130 INFO    ] 2026-06-12 23:24:35
[2026-06-12 23:24:35,160.160 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 23:24:35,342.342 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 23:24:35,350.350 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 23:24:35,472.472 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 23:24:35,532.532 INFO    ] time= 12/06/2026 23:24:35
[2026-06-12 23:24:35,560.560 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 23:24:35,571.571 INFO    ] Checking for existing commands in stream...
[2026-06-12 23:24:35,642.642 INFO    ] No existing commands found in stream
[2026-06-12 23:24:40,656.656 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 23:24:40,658.658 INFO    ] Waiting 1.68 seconds before fallback handling...
[2026-06-12 23:24:42,747.747 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 23:24:42,749.749 INFO    ] Checking for system updates...
[2026-06-12 23:24:42,770.770 INFO    ] 200
[2026-06-12 23:24:42,771.771 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:24:42,801.801 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 23:24:42,803.803 INFO    ] No update needed
[2026-06-12 23:24:42,804.804 INFO    ] Checking for camera pi updates...
[2026-06-12 23:24:42,823.823 INFO    ] 200
[2026-06-12 23:24:42,825.825 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:24:42,848.848 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 23:24:42,906.906 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 23:24:42,907.907 INFO    ] No camera update needed
[2026-06-12 23:24:42,909.909 INFO    ] Script finished. Safe exiting...
[2026-06-12 23:24:42,910.910 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 23:24:42,914.914 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 23:24:42,917.917 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 23:24:44,955.955 INFO    ] ================================================
[2026-06-12 23:24:44,970.970 INFO    ] Launching Daemon at Fri Jun 12 23:24:44 IST 2026
[2026-06-12 23:24:44,981.981 INFO    ] ================================================
[2026-06-12 23:24:45,307.307 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 23:24:45
[2026-06-12 23:24:45,625.625 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 23:24:45,762.762 INFO    ] Initializing speech engine...
[2026-06-12 23:24:45,775.775 INFO    ] 2026-06-12 23:24:45
[2026-06-12 23:24:45,997.997 INFO    ] 2026-06-12 23:24:45
[2026-06-12 23:24:46,027.027 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 23:24:46,225.225 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 23:24:46,236.236 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 23:24:46,370.370 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 23:24:46,436.436 INFO    ] time= 12/06/2026 23:24:46
[2026-06-12 23:24:46,461.461 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 23:24:46,477.477 INFO    ] Checking for existing commands in stream...
[2026-06-12 23:24:46,581.581 INFO    ] No existing commands found in stream
[2026-06-12 23:24:51,590.590 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 23:24:51,593.593 INFO    ] Waiting 0.57 seconds before fallback handling...
[2026-06-12 23:24:52,537.537 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 23:24:52,549.549 INFO    ] Checking for system updates...
[2026-06-12 23:24:52,569.569 INFO    ] 200
[2026-06-12 23:24:52,571.571 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:24:52,603.603 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 23:24:52,605.605 INFO    ] No update needed
[2026-06-12 23:24:52,606.606 INFO    ] Checking for camera pi updates...
[2026-06-12 23:24:52,626.626 INFO    ] 200
[2026-06-12 23:24:52,628.628 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:24:52,651.651 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 23:24:52,704.704 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 23:24:52,706.706 INFO    ] No camera update needed
[2026-06-12 23:24:52,707.707 INFO    ] Script finished. Safe exiting...
[2026-06-12 23:24:52,708.708 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 23:24:52,711.711 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 23:24:52,714.714 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 23:24:54,751.751 INFO    ] ================================================
[2026-06-12 23:24:54,767.767 INFO    ] Launching Daemon at Fri Jun 12 23:24:54 IST 2026
[2026-06-12 23:24:54,778.778 INFO    ] ================================================
[2026-06-12 23:24:55,149.149 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 23:24:55
[2026-06-12 23:24:55,460.460 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 23:24:55,605.605 INFO    ] Initializing speech engine...
[2026-06-12 23:24:55,608.608 INFO    ] 2026-06-12 23:24:55
[2026-06-12 23:24:55,810.810 INFO    ] 2026-06-12 23:24:55
[2026-06-12 23:24:55,838.838 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 23:24:56,021.021 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 23:24:56,031.031 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 23:24:56,157.157 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 23:24:56,213.213 INFO    ] time= 12/06/2026 23:24:56
[2026-06-12 23:24:56,242.242 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 23:24:56,252.252 INFO    ] Checking for existing commands in stream...
[2026-06-12 23:24:56,346.346 INFO    ] No existing commands found in stream
[2026-06-12 23:25:01,355.355 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 23:25:01,358.358 INFO    ] Waiting 1.37 seconds before fallback handling...
[2026-06-12 23:25:03,059.059 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 23:25:03,061.061 INFO    ] Checking for system updates...
[2026-06-12 23:25:03,082.082 INFO    ] 200
[2026-06-12 23:25:03,083.083 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:25:03,113.113 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 23:25:03,114.114 INFO    ] No update needed
[2026-06-12 23:25:03,116.116 INFO    ] Checking for camera pi updates...
[2026-06-12 23:25:03,135.135 INFO    ] 200
[2026-06-12 23:25:03,136.136 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:25:03,160.160 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 23:25:03,201.201 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 23:25:03,203.203 INFO    ] No camera update needed
[2026-06-12 23:25:03,204.204 INFO    ] Script finished. Safe exiting...
[2026-06-12 23:25:03,205.205 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 23:25:03,208.208 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 23:25:03,211.211 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 23:25:05,250.250 INFO    ] ================================================
[2026-06-12 23:25:05,267.267 INFO    ] Launching Daemon at Fri Jun 12 23:25:05 IST 2026
[2026-06-12 23:25:05,278.278 INFO    ] ================================================
[2026-06-12 23:25:05,648.648 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 23:25:05
[2026-06-12 23:25:05,961.961 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 23:25:06,108.108 INFO    ] Initializing speech engine...
[2026-06-12 23:25:06,113.113 INFO    ] 2026-06-12 23:25:06
[2026-06-12 23:25:06,317.317 INFO    ] 2026-06-12 23:25:06
[2026-06-12 23:25:06,350.350 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 23:25:06,495.495 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 23:25:06,559.559 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 23:25:06,695.695 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 23:25:06,754.754 INFO    ] time= 12/06/2026 23:25:06
[2026-06-12 23:25:06,786.786 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 23:25:06,793.793 INFO    ] Checking for existing commands in stream...
[2026-06-12 23:25:06,860.860 INFO    ] No existing commands found in stream
[2026-06-12 23:25:11,874.874 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 23:25:11,877.877 INFO    ] Waiting 1.45 seconds before fallback handling...
[2026-06-12 23:25:13,696.696 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 23:25:13,698.698 INFO    ] Checking for system updates...
[2026-06-12 23:25:13,718.718 INFO    ] 200
[2026-06-12 23:25:13,720.720 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:25:13,750.750 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 23:25:13,751.751 INFO    ] No update needed
[2026-06-12 23:25:13,752.752 INFO    ] Checking for camera pi updates...
[2026-06-12 23:25:13,771.771 INFO    ] 200
[2026-06-12 23:25:13,773.773 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:25:13,797.797 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 23:25:13,940.940 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 23:25:13,942.942 INFO    ] No camera update needed
[2026-06-12 23:25:13,943.943 INFO    ] Script finished. Safe exiting...
[2026-06-12 23:25:13,944.944 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 23:25:13,947.947 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 23:25:13,950.950 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 23:25:15,988.988 INFO    ] ================================================
[2026-06-12 23:25:16,003.003 INFO    ] Launching Daemon at Fri Jun 12 23:25:15 IST 2026
[2026-06-12 23:25:16,014.014 INFO    ] ================================================
[2026-06-12 23:25:16,355.355 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 23:25:16
[2026-06-12 23:25:16,670.670 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 23:25:16,801.801 INFO    ] Initializing speech engine...
[2026-06-12 23:25:16,806.806 INFO    ] 2026-06-12 23:25:16
[2026-06-12 23:25:17,023.023 INFO    ] 2026-06-12 23:25:16
[2026-06-12 23:25:17,052.052 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 23:25:17,237.237 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 23:25:17,247.247 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 23:25:17,391.391 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 23:25:17,444.444 INFO    ] time= 12/06/2026 23:25:17
[2026-06-12 23:25:17,466.466 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 23:25:17,472.472 INFO    ] Checking for existing commands in stream...
[2026-06-12 23:25:17,539.539 INFO    ] No existing commands found in stream
[2026-06-12 23:25:22,558.558 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 23:25:22,561.561 INFO    ] Waiting 1.99 seconds before fallback handling...
[2026-06-12 23:25:24,903.903 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 23:25:24,904.904 INFO    ] Checking for system updates...
[2026-06-12 23:25:24,925.925 INFO    ] 200
[2026-06-12 23:25:24,926.926 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:25:24,958.958 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 23:25:24,959.959 INFO    ] No update needed
[2026-06-12 23:25:24,961.961 INFO    ] Checking for camera pi updates...
[2026-06-12 23:25:24,980.980 INFO    ] 200
[2026-06-12 23:25:24,981.981 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:25:25,004.004 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 23:25:25,057.057 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 23:25:25,058.058 INFO    ] No camera update needed
[2026-06-12 23:25:25,060.060 INFO    ] Script finished. Safe exiting...
[2026-06-12 23:25:25,061.061 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 23:25:25,064.064 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 23:25:25,067.067 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 23:25:27,105.105 INFO    ] ================================================
[2026-06-12 23:25:27,120.120 INFO    ] Launching Daemon at Fri Jun 12 23:25:27 IST 2026
[2026-06-12 23:25:27,131.131 INFO    ] ================================================
[2026-06-12 23:25:27,506.506 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 23:25:27
[2026-06-12 23:25:27,825.825 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 23:25:27,970.970 INFO    ] Initializing speech engine...
[2026-06-12 23:25:27,975.975 INFO    ] 2026-06-12 23:25:27
[2026-06-12 23:25:28,178.178 INFO    ] 2026-06-12 23:25:28
[2026-06-12 23:25:28,207.207 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 23:25:28,329.329 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 23:25:28,392.392 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 23:25:28,527.527 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 23:25:28,582.582 INFO    ] time= 12/06/2026 23:25:28
[2026-06-12 23:25:28,616.616 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 23:25:28,621.621 INFO    ] Checking for existing commands in stream...
[2026-06-12 23:25:28,693.693 INFO    ] No existing commands found in stream
[2026-06-12 23:25:33,702.702 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 23:25:33,705.705 INFO    ] Waiting 3.90 seconds before fallback handling...
[2026-06-12 23:25:37,989.989 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 23:25:37,990.990 INFO    ] Checking for system updates...
[2026-06-12 23:25:38,011.011 INFO    ] 200
[2026-06-12 23:25:38,013.013 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:25:38,045.045 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 23:25:38,046.046 INFO    ] No update needed
[2026-06-12 23:25:38,047.047 INFO    ] Checking for camera pi updates...
[2026-06-12 23:25:38,067.067 INFO    ] 200
[2026-06-12 23:25:38,069.069 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:25:38,093.093 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 23:25:38,133.133 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 23:25:38,134.134 INFO    ] No camera update needed
[2026-06-12 23:25:38,135.135 INFO    ] Script finished. Safe exiting...
[2026-06-12 23:25:38,136.136 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 23:25:38,139.139 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 23:25:38,142.142 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 23:25:40,180.180 INFO    ] ================================================
[2026-06-12 23:25:40,196.196 INFO    ] Launching Daemon at Fri Jun 12 23:25:40 IST 2026
[2026-06-12 23:25:40,207.207 INFO    ] ================================================
[2026-06-12 23:25:40,543.543 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 23:25:40
[2026-06-12 23:25:40,856.856 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 23:25:40,998.998 INFO    ] Initializing speech engine...
[2026-06-12 23:25:41,003.003 INFO    ] 2026-06-12 23:25:40
[2026-06-12 23:25:41,207.207 INFO    ] 2026-06-12 23:25:41
[2026-06-12 23:25:41,235.235 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 23:25:41,419.419 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 23:25:41,423.423 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 23:25:41,558.558 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 23:25:41,617.617 INFO    ] time= 12/06/2026 23:25:41
[2026-06-12 23:25:41,649.649 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 23:25:41,656.656 INFO    ] Checking for existing commands in stream...
[2026-06-12 23:25:41,722.722 INFO    ] No existing commands found in stream
[2026-06-12 23:25:46,746.746 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 23:25:46,749.749 INFO    ] Waiting 0.57 seconds before fallback handling...
[2026-06-12 23:25:47,708.708 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 23:25:47,710.710 INFO    ] Checking for system updates...
[2026-06-12 23:25:47,730.730 INFO    ] 200
[2026-06-12 23:25:47,732.732 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:25:47,763.763 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 23:25:47,764.764 INFO    ] No update needed
[2026-06-12 23:25:47,765.765 INFO    ] Checking for camera pi updates...
[2026-06-12 23:25:47,785.785 INFO    ] 200
[2026-06-12 23:25:47,786.786 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:25:47,809.809 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 23:25:47,864.864 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 23:25:47,866.866 INFO    ] No camera update needed
[2026-06-12 23:25:47,867.867 INFO    ] Script finished. Safe exiting...
[2026-06-12 23:25:47,868.868 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 23:25:47,872.872 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 23:25:47,875.875 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 23:25:49,916.916 INFO    ] ================================================
[2026-06-12 23:25:49,932.932 INFO    ] Launching Daemon at Fri Jun 12 23:25:49 IST 2026
[2026-06-12 23:25:49,944.944 INFO    ] ================================================
[2026-06-12 23:25:50,274.274 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 23:25:50
[2026-06-12 23:25:50,592.592 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 23:25:50,736.736 INFO    ] Initializing speech engine...
[2026-06-12 23:25:50,741.741 INFO    ] 2026-06-12 23:25:50
[2026-06-12 23:25:50,947.947 INFO    ] 2026-06-12 23:25:50
[2026-06-12 23:25:50,974.974 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 23:25:51,158.158 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 23:25:51,167.167 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 23:25:51,298.298 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 23:25:51,366.366 INFO    ] time= 12/06/2026 23:25:51
[2026-06-12 23:25:51,389.389 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 23:25:51,395.395 INFO    ] Checking for existing commands in stream...
[2026-06-12 23:25:51,462.462 INFO    ] No existing commands found in stream
[2026-06-12 23:25:56,472.472 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 23:25:56,475.475 INFO    ] Waiting 2.25 seconds before fallback handling...
[2026-06-12 23:25:59,118.118 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 23:25:59,120.120 INFO    ] Checking for system updates...
[2026-06-12 23:25:59,142.142 INFO    ] 200
[2026-06-12 23:25:59,144.144 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:25:59,174.174 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 23:25:59,175.175 INFO    ] No update needed
[2026-06-12 23:25:59,177.177 INFO    ] Checking for camera pi updates...
[2026-06-12 23:25:59,196.196 INFO    ] 200
[2026-06-12 23:25:59,198.198 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:25:59,221.221 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 23:25:59,262.262 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 23:25:59,263.263 INFO    ] No camera update needed
[2026-06-12 23:25:59,265.265 INFO    ] Script finished. Safe exiting...
[2026-06-12 23:25:59,266.266 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 23:25:59,270.270 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 23:25:59,273.273 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 23:26:01,310.310 INFO    ] ================================================
[2026-06-12 23:26:01,325.325 INFO    ] Launching Daemon at Fri Jun 12 23:26:01 IST 2026
[2026-06-12 23:26:01,360.360 INFO    ] ================================================
[2026-06-12 23:26:01,717.717 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 23:26:01
[2026-06-12 23:26:02,092.092 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 23:26:02,245.245 INFO    ] Initializing speech engine...
[2026-06-12 23:26:02,253.253 INFO    ] 2026-06-12 23:26:02
[2026-06-12 23:26:02,467.467 INFO    ] 2026-06-12 23:26:02
[2026-06-12 23:26:02,497.497 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 23:26:02,619.619 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 23:26:02,682.682 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 23:26:02,816.816 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 23:26:02,867.867 INFO    ] time= 12/06/2026 23:26:02
[2026-06-12 23:26:02,906.906 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 23:26:02,912.912 INFO    ] Checking for existing commands in stream...
[2026-06-12 23:26:02,983.983 INFO    ] No existing commands found in stream
[2026-06-12 23:26:07,997.997 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 23:26:08,000.000 INFO    ] Waiting 3.46 seconds before fallback handling...
[2026-06-12 23:26:11,816.816 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 23:26:11,817.817 INFO    ] Checking for system updates...
[2026-06-12 23:26:11,839.839 INFO    ] 200
[2026-06-12 23:26:11,841.841 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:26:11,873.873 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 23:26:11,875.875 INFO    ] No update needed
[2026-06-12 23:26:11,876.876 INFO    ] Checking for camera pi updates...
[2026-06-12 23:26:11,897.897 INFO    ] 200
[2026-06-12 23:26:11,898.898 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:26:11,921.921 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 23:26:11,972.972 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 23:26:11,973.973 INFO    ] No camera update needed
[2026-06-12 23:26:11,974.974 INFO    ] Script finished. Safe exiting...
[2026-06-12 23:26:11,976.976 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 23:26:11,978.978 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 23:26:11,981.981 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 23:26:14,021.021 INFO    ] ================================================
[2026-06-12 23:26:14,036.036 INFO    ] Launching Daemon at Fri Jun 12 23:26:14 IST 2026
[2026-06-12 23:26:14,047.047 INFO    ] ================================================
[2026-06-12 23:26:14,382.382 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 23:26:14
[2026-06-12 23:26:14,694.694 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 23:26:14,827.827 INFO    ] Initializing speech engine...
[2026-06-12 23:26:14,832.832 INFO    ] 2026-06-12 23:26:14
[2026-06-12 23:26:15,024.024 INFO    ] 2026-06-12 23:26:15
[2026-06-12 23:26:15,070.070 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 23:26:15,230.230 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 23:26:15,270.270 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 23:26:15,443.443 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 23:26:15,466.466 INFO    ] time= 12/06/2026 23:26:15
[2026-06-12 23:26:15,529.529 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 23:26:15,554.554 INFO    ] Checking for existing commands in stream...
[2026-06-12 23:26:15,659.659 INFO    ] No existing commands found in stream
[2026-06-12 23:26:20,673.673 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 23:26:20,676.676 INFO    ] Waiting 2.93 seconds before fallback handling...
[2026-06-12 23:26:24,027.027 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 23:26:24,029.029 INFO    ] Checking for system updates...
[2026-06-12 23:26:24,050.050 INFO    ] 200
[2026-06-12 23:26:24,052.052 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:26:24,082.082 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 23:26:24,083.083 INFO    ] No update needed
[2026-06-12 23:26:24,085.085 INFO    ] Checking for camera pi updates...
[2026-06-12 23:26:24,104.104 INFO    ] 200
[2026-06-12 23:26:24,106.106 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:26:24,131.131 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 23:26:24,179.179 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 23:26:24,181.181 INFO    ] No camera update needed
[2026-06-12 23:26:24,182.182 INFO    ] Script finished. Safe exiting...
[2026-06-12 23:26:24,184.184 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 23:26:24,187.187 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 23:26:24,190.190 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 23:26:26,230.230 INFO    ] ================================================
[2026-06-12 23:26:26,246.246 INFO    ] Launching Daemon at Fri Jun 12 23:26:26 IST 2026
[2026-06-12 23:26:26,256.256 INFO    ] ================================================
[2026-06-12 23:26:26,601.601 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 23:26:26
[2026-06-12 23:26:26,914.914 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 23:26:27,050.050 INFO    ] Initializing speech engine...
[2026-06-12 23:26:27,054.054 INFO    ] 2026-06-12 23:26:27
[2026-06-12 23:26:27,285.285 INFO    ] 2026-06-12 23:26:27
[2026-06-12 23:26:27,316.316 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 23:26:27,516.516 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 23:26:27,520.520 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 23:26:27,668.668 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 23:26:27,715.715 INFO    ] time= 12/06/2026 23:26:27
[2026-06-12 23:26:27,756.756 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 23:26:27,773.773 INFO    ] Checking for existing commands in stream...
[2026-06-12 23:26:27,877.877 INFO    ] No existing commands found in stream
[2026-06-12 23:26:32,885.885 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 23:26:32,888.888 INFO    ] Waiting 1.04 seconds before fallback handling...
[2026-06-12 23:26:34,295.295 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 23:26:34,296.296 INFO    ] Checking for system updates...
[2026-06-12 23:26:34,317.317 INFO    ] 200
[2026-06-12 23:26:34,318.318 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:26:34,348.348 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 23:26:34,349.349 INFO    ] No update needed
[2026-06-12 23:26:34,351.351 INFO    ] Checking for camera pi updates...
[2026-06-12 23:26:34,370.370 INFO    ] 200
[2026-06-12 23:26:34,371.371 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:26:34,394.394 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 23:26:34,443.443 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 23:26:34,445.445 INFO    ] No camera update needed
[2026-06-12 23:26:34,446.446 INFO    ] Script finished. Safe exiting...
[2026-06-12 23:26:34,447.447 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 23:26:34,450.450 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 23:26:34,453.453 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 23:26:36,491.491 INFO    ] ================================================
[2026-06-12 23:26:36,507.507 INFO    ] Launching Daemon at Fri Jun 12 23:26:36 IST 2026
[2026-06-12 23:26:36,517.517 INFO    ] ================================================
[2026-06-12 23:26:36,846.846 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 23:26:36
[2026-06-12 23:26:37,164.164 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 23:26:37,297.297 INFO    ] Initializing speech engine...
[2026-06-12 23:26:37,300.300 INFO    ] 2026-06-12 23:26:37
[2026-06-12 23:26:37,520.520 INFO    ] 2026-06-12 23:26:37
[2026-06-12 23:26:37,549.549 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 23:26:37,674.674 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 23:26:37,737.737 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 23:26:37,874.874 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 23:26:37,942.942 INFO    ] time= 12/06/2026 23:26:37
[2026-06-12 23:26:37,966.966 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 23:26:37,968.968 INFO    ] Checking for existing commands in stream...
[2026-06-12 23:26:38,039.039 INFO    ] No existing commands found in stream
[2026-06-12 23:26:43,053.053 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 23:26:43,061.061 INFO    ] Waiting 3.27 seconds before fallback handling...
[2026-06-12 23:26:46,706.706 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 23:26:46,707.707 INFO    ] Checking for system updates...
[2026-06-12 23:26:46,729.729 INFO    ] 200
[2026-06-12 23:26:46,731.731 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:26:46,763.763 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 23:26:46,765.765 INFO    ] No update needed
[2026-06-12 23:26:46,766.766 INFO    ] Checking for camera pi updates...
[2026-06-12 23:26:46,790.790 INFO    ] 200
[2026-06-12 23:26:46,792.792 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:26:46,819.819 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 23:26:46,870.870 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 23:26:46,872.872 INFO    ] No camera update needed
[2026-06-12 23:26:46,873.873 INFO    ] Script finished. Safe exiting...
[2026-06-12 23:26:46,875.875 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 23:26:46,878.878 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 23:26:46,881.881 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 23:26:48,920.920 INFO    ] ================================================
[2026-06-12 23:26:48,936.936 INFO    ] Launching Daemon at Fri Jun 12 23:26:48 IST 2026
[2026-06-12 23:26:48,947.947 INFO    ] ================================================
[2026-06-12 23:26:49,276.276 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 23:26:49
[2026-06-12 23:26:49,587.587 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 23:26:49,729.729 INFO    ] Initializing speech engine...
[2026-06-12 23:26:49,734.734 INFO    ] 2026-06-12 23:26:49
[2026-06-12 23:26:49,939.939 INFO    ] 2026-06-12 23:26:49
[2026-06-12 23:26:49,968.968 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 23:26:50,151.151 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 23:26:50,155.155 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 23:26:50,291.291 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 23:26:50,355.355 INFO    ] time= 12/06/2026 23:26:50
[2026-06-12 23:26:50,383.383 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 23:26:50,389.389 INFO    ] Checking for existing commands in stream...
[2026-06-12 23:26:50,455.455 INFO    ] No existing commands found in stream
[2026-06-12 23:26:55,466.466 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 23:26:55,469.469 INFO    ] Waiting 2.79 seconds before fallback handling...
[2026-06-12 23:26:58,637.637 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 23:26:58,638.638 INFO    ] Checking for system updates...
[2026-06-12 23:26:58,660.660 INFO    ] 200
[2026-06-12 23:26:58,661.661 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:26:58,692.692 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 23:26:58,693.693 INFO    ] No update needed
[2026-06-12 23:26:58,695.695 INFO    ] Checking for camera pi updates...
[2026-06-12 23:26:58,714.714 INFO    ] 200
[2026-06-12 23:26:58,716.716 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:26:58,739.739 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 23:26:58,794.794 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 23:26:58,796.796 INFO    ] No camera update needed
[2026-06-12 23:26:58,797.797 INFO    ] Script finished. Safe exiting...
[2026-06-12 23:26:58,799.799 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 23:26:58,802.802 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 23:26:58,805.805 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 23:27:00,843.843 INFO    ] ================================================
[2026-06-12 23:27:00,859.859 INFO    ] Launching Daemon at Fri Jun 12 23:27:00 IST 2026
[2026-06-12 23:27:00,870.870 INFO    ] ================================================
[2026-06-12 23:27:01,244.244 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 23:27:01
[2026-06-12 23:27:01,721.721 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 23:27:01,916.916 INFO    ] Initializing speech engine...
[2026-06-12 23:27:01,924.924 INFO    ] 2026-06-12 23:27:01
[2026-06-12 23:27:02,170.170 INFO    ] 2026-06-12 23:27:02
[2026-06-12 23:27:02,199.199 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 23:27:02,345.345 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 23:27:02,408.408 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 23:27:02,553.553 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 23:27:02,618.618 INFO    ] time= 12/06/2026 23:27:02
[2026-06-12 23:27:02,656.656 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 23:27:02,658.658 INFO    ] Checking for existing commands in stream...
[2026-06-12 23:27:02,729.729 INFO    ] No existing commands found in stream
[2026-06-12 23:27:07,744.744 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 23:27:07,747.747 INFO    ] Waiting 0.41 seconds before fallback handling...
[2026-06-12 23:27:08,533.533 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 23:27:08,534.534 INFO    ] Checking for system updates...
[2026-06-12 23:27:08,558.558 INFO    ] 200
[2026-06-12 23:27:08,559.559 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:27:08,593.593 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 23:27:08,595.595 INFO    ] No update needed
[2026-06-12 23:27:08,597.597 INFO    ] Checking for camera pi updates...
[2026-06-12 23:27:08,622.622 INFO    ] 200
[2026-06-12 23:27:08,624.624 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:27:08,650.650 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 23:27:08,703.703 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 23:27:08,705.705 INFO    ] No camera update needed
[2026-06-12 23:27:08,707.707 INFO    ] Script finished. Safe exiting...
[2026-06-12 23:27:08,709.709 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 23:27:08,713.713 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 23:27:08,719.719 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 23:27:10,752.752 INFO    ] ================================================
[2026-06-12 23:27:10,767.767 INFO    ] Launching Daemon at Fri Jun 12 23:27:10 IST 2026
[2026-06-12 23:27:10,778.778 INFO    ] ================================================
[2026-06-12 23:27:11,107.107 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 23:27:11
[2026-06-12 23:27:11,420.420 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 23:27:11,553.553 INFO    ] Initializing speech engine...
[2026-06-12 23:27:11,561.561 INFO    ] 2026-06-12 23:27:11
[2026-06-12 23:27:11,774.774 INFO    ] 2026-06-12 23:27:11
[2026-06-12 23:27:11,803.803 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 23:27:11,989.989 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 23:27:11,992.992 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 23:27:12,131.131 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 23:27:12,184.184 INFO    ] time= 12/06/2026 23:27:12
[2026-06-12 23:27:12,223.223 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 23:27:12,230.230 INFO    ] Checking for existing commands in stream...
[2026-06-12 23:27:12,298.298 INFO    ] No existing commands found in stream
[2026-06-12 23:27:17,307.307 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 23:27:17,310.310 INFO    ] Waiting 3.00 seconds before fallback handling...
[2026-06-12 23:27:20,677.677 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 23:27:20,678.678 INFO    ] Checking for system updates...
[2026-06-12 23:27:20,699.699 INFO    ] 200
[2026-06-12 23:27:20,700.700 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:27:20,730.730 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 23:27:20,732.732 INFO    ] No update needed
[2026-06-12 23:27:20,733.733 INFO    ] Checking for camera pi updates...
[2026-06-12 23:27:20,752.752 INFO    ] 200
[2026-06-12 23:27:20,753.753 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:27:20,776.776 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 23:27:20,916.916 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 23:27:20,917.917 INFO    ] No camera update needed
[2026-06-12 23:27:20,918.918 INFO    ] Script finished. Safe exiting...
[2026-06-12 23:27:20,920.920 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 23:27:20,923.923 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 23:27:20,925.925 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 23:27:22,964.964 INFO    ] ================================================
[2026-06-12 23:27:22,980.980 INFO    ] Launching Daemon at Fri Jun 12 23:27:22 IST 2026
[2026-06-12 23:27:22,991.991 INFO    ] ================================================
[2026-06-12 23:27:23,348.348 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 23:27:23
[2026-06-12 23:27:23,661.661 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 23:27:23,790.790 INFO    ] Initializing speech engine...
[2026-06-12 23:27:23,799.799 INFO    ] 2026-06-12 23:27:23
[2026-06-12 23:27:24,013.013 INFO    ] 2026-06-12 23:27:23
[2026-06-12 23:27:24,043.043 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 23:27:24,227.227 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 23:27:24,236.236 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 23:27:24,366.366 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 23:27:24,425.425 INFO    ] time= 12/06/2026 23:27:24
[2026-06-12 23:27:24,458.458 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 23:27:24,465.465 INFO    ] Checking for existing commands in stream...
[2026-06-12 23:27:24,531.531 INFO    ] No existing commands found in stream
[2026-06-12 23:27:29,541.541 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 23:27:29,543.543 INFO    ] Waiting 0.06 seconds before fallback handling...
[2026-06-12 23:27:29,961.961 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 23:27:29,963.963 INFO    ] Checking for system updates...
[2026-06-12 23:27:29,983.983 INFO    ] 200
[2026-06-12 23:27:29,985.985 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:27:30,017.017 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 23:27:30,018.018 INFO    ] No update needed
[2026-06-12 23:27:30,020.020 INFO    ] Checking for camera pi updates...
[2026-06-12 23:27:30,039.039 INFO    ] 200
[2026-06-12 23:27:30,041.041 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:27:30,063.063 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 23:27:30,120.120 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 23:27:30,122.122 INFO    ] No camera update needed
[2026-06-12 23:27:30,123.123 INFO    ] Script finished. Safe exiting...
[2026-06-12 23:27:30,125.125 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 23:27:30,128.128 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 23:27:30,131.131 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 23:27:32,163.163 INFO    ] ================================================
[2026-06-12 23:27:32,172.172 INFO    ] Launching Daemon at Fri Jun 12 23:27:32 IST 2026
[2026-06-12 23:27:32,179.179 INFO    ] ================================================
[2026-06-12 23:27:32,555.555 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 23:27:32
[2026-06-12 23:27:32,890.890 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 23:27:33,030.030 INFO    ] Initializing speech engine...
[2026-06-12 23:27:33,042.042 INFO    ] 2026-06-12 23:27:33
[2026-06-12 23:27:33,252.252 INFO    ] 2026-06-12 23:27:33
[2026-06-12 23:27:33,281.281 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 23:27:33,465.465 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 23:27:33,475.475 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 23:27:33,629.629 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 23:27:33,673.673 INFO    ] time= 12/06/2026 23:27:33
[2026-06-12 23:27:33,694.694 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 23:27:33,700.700 INFO    ] Checking for existing commands in stream...
[2026-06-12 23:27:33,768.768 INFO    ] No existing commands found in stream
[2026-06-12 23:27:38,777.777 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 23:27:38,781.781 INFO    ] Waiting 3.11 seconds before fallback handling...
[2026-06-12 23:27:42,267.267 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 23:27:42,269.269 INFO    ] Checking for system updates...
[2026-06-12 23:27:42,290.290 INFO    ] 200
[2026-06-12 23:27:42,292.292 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:27:42,325.325 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 23:27:42,327.327 INFO    ] No update needed
[2026-06-12 23:27:42,328.328 INFO    ] Checking for camera pi updates...
[2026-06-12 23:27:42,348.348 INFO    ] 200
[2026-06-12 23:27:42,350.350 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:27:42,373.373 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 23:27:42,419.419 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 23:27:42,421.421 INFO    ] No camera update needed
[2026-06-12 23:27:42,422.422 INFO    ] Script finished. Safe exiting...
[2026-06-12 23:27:42,424.424 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 23:27:42,427.427 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 23:27:42,430.430 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 23:27:44,468.468 INFO    ] ================================================
[2026-06-12 23:27:44,483.483 INFO    ] Launching Daemon at Fri Jun 12 23:27:44 IST 2026
[2026-06-12 23:27:44,493.493 INFO    ] ================================================
[2026-06-12 23:27:44,839.839 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 23:27:44
[2026-06-12 23:27:45,151.151 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 23:27:45,282.282 INFO    ] Initializing speech engine...
[2026-06-12 23:27:45,295.295 INFO    ] 2026-06-12 23:27:45
[2026-06-12 23:27:45,503.503 INFO    ] 2026-06-12 23:27:45
[2026-06-12 23:27:45,532.532 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 23:27:45,719.719 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 23:27:45,727.727 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 23:27:45,858.858 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 23:27:45,922.922 INFO    ] time= 12/06/2026 23:27:45
[2026-06-12 23:27:45,950.950 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 23:27:45,956.956 INFO    ] Checking for existing commands in stream...
[2026-06-12 23:27:46,024.024 INFO    ] No existing commands found in stream
[2026-06-12 23:27:51,057.057 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 23:27:51,060.060 INFO    ] Waiting 3.18 seconds before fallback handling...
[2026-06-12 23:27:54,660.660 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 23:27:54,661.661 INFO    ] Checking for system updates...
[2026-06-12 23:27:54,682.682 INFO    ] 200
[2026-06-12 23:27:54,683.683 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:27:54,715.715 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 23:27:54,717.717 INFO    ] No update needed
[2026-06-12 23:27:54,718.718 INFO    ] Checking for camera pi updates...
[2026-06-12 23:27:54,740.740 INFO    ] 200
[2026-06-12 23:27:54,742.742 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:27:54,765.765 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 23:27:54,810.810 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 23:27:54,812.812 INFO    ] No camera update needed
[2026-06-12 23:27:54,813.813 INFO    ] Script finished. Safe exiting...
[2026-06-12 23:27:54,814.814 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 23:27:54,817.817 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 23:27:54,821.821 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 23:27:56,859.859 INFO    ] ================================================
[2026-06-12 23:27:56,880.880 INFO    ] Launching Daemon at Fri Jun 12 23:27:56 IST 2026
[2026-06-12 23:27:56,890.890 INFO    ] ================================================
[2026-06-12 23:27:57,245.245 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 23:27:57
[2026-06-12 23:27:57,577.577 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 23:27:57,726.726 INFO    ] Initializing speech engine...
[2026-06-12 23:27:57,732.732 INFO    ] 2026-06-12 23:27:57
[2026-06-12 23:27:57,940.940 INFO    ] 2026-06-12 23:27:57
[2026-06-12 23:27:57,969.969 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 23:27:58,154.154 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 23:27:58,163.163 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 23:27:58,298.298 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 23:27:58,360.360 INFO    ] time= 12/06/2026 23:27:58
[2026-06-12 23:27:58,384.384 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 23:27:58,391.391 INFO    ] Checking for existing commands in stream...
[2026-06-12 23:27:58,457.457 INFO    ] No existing commands found in stream
[2026-06-12 23:28:03,467.467 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 23:28:03,470.470 INFO    ] Waiting 1.54 seconds before fallback handling...
[2026-06-12 23:28:05,376.376 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 23:28:05,378.378 INFO    ] Checking for system updates...
[2026-06-12 23:28:05,398.398 INFO    ] 200
[2026-06-12 23:28:05,400.400 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:28:05,430.430 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 23:28:05,431.431 INFO    ] No update needed
[2026-06-12 23:28:05,433.433 INFO    ] Checking for camera pi updates...
[2026-06-12 23:28:05,452.452 INFO    ] 200
[2026-06-12 23:28:05,454.454 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:28:05,477.477 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 23:28:05,537.537 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 23:28:05,539.539 INFO    ] No camera update needed
[2026-06-12 23:28:05,540.540 INFO    ] Script finished. Safe exiting...
[2026-06-12 23:28:05,541.541 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 23:28:05,546.546 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 23:28:05,549.549 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 23:28:07,587.587 INFO    ] ================================================
[2026-06-12 23:28:07,603.603 INFO    ] Launching Daemon at Fri Jun 12 23:28:07 IST 2026
[2026-06-12 23:28:07,614.614 INFO    ] ================================================
[2026-06-12 23:28:07,965.965 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 23:28:07
[2026-06-12 23:28:08,297.297 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 23:28:08,445.445 INFO    ] Initializing speech engine...
[2026-06-12 23:28:08,452.452 INFO    ] 2026-06-12 23:28:08
[2026-06-12 23:28:08,658.658 INFO    ] 2026-06-12 23:28:08
[2026-06-12 23:28:08,686.686 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 23:28:08,872.872 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 23:28:08,876.876 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 23:28:09,013.013 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 23:28:09,072.072 INFO    ] time= 12/06/2026 23:28:09
[2026-06-12 23:28:09,121.121 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 23:28:09,129.129 INFO    ] Checking for existing commands in stream...
[2026-06-12 23:28:09,231.231 INFO    ] No existing commands found in stream
[2026-06-12 23:28:14,241.241 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 23:28:14,244.244 INFO    ] Waiting 3.61 seconds before fallback handling...
[2026-06-12 23:28:18,246.246 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 23:28:18,248.248 INFO    ] Checking for system updates...
[2026-06-12 23:28:18,268.268 INFO    ] 200
[2026-06-12 23:28:18,270.270 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:28:18,300.300 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 23:28:18,302.302 INFO    ] No update needed
[2026-06-12 23:28:18,303.303 INFO    ] Checking for camera pi updates...
[2026-06-12 23:28:18,323.323 INFO    ] 200
[2026-06-12 23:28:18,324.324 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:28:18,348.348 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 23:28:18,392.392 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 23:28:18,393.393 INFO    ] No camera update needed
[2026-06-12 23:28:18,395.395 INFO    ] Script finished. Safe exiting...
[2026-06-12 23:28:18,396.396 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 23:28:18,399.399 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 23:28:18,402.402 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 23:28:20,440.440 INFO    ] ================================================
[2026-06-12 23:28:20,456.456 INFO    ] Launching Daemon at Fri Jun 12 23:28:20 IST 2026
[2026-06-12 23:28:20,468.468 INFO    ] ================================================
[2026-06-12 23:28:20,827.827 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 23:28:20
[2026-06-12 23:28:21,144.144 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 23:28:21,290.290 INFO    ] Initializing speech engine...
[2026-06-12 23:28:21,295.295 INFO    ] 2026-06-12 23:28:21
[2026-06-12 23:28:21,498.498 INFO    ] 2026-06-12 23:28:21
[2026-06-12 23:28:21,526.526 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 23:28:21,713.713 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 23:28:21,723.723 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 23:28:21,845.845 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 23:28:21,895.895 INFO    ] time= 12/06/2026 23:28:21
[2026-06-12 23:28:21,940.940 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 23:28:21,945.945 INFO    ] Checking for existing commands in stream...
[2026-06-12 23:28:22,041.041 INFO    ] No existing commands found in stream
[2026-06-12 23:28:27,061.061 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 23:28:27,063.063 INFO    ] Waiting 2.54 seconds before fallback handling...
[2026-06-12 23:28:29,953.953 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 23:28:29,955.955 INFO    ] Checking for system updates...
[2026-06-12 23:28:29,976.976 INFO    ] 200
[2026-06-12 23:28:29,977.977 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:28:30,007.007 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 23:28:30,008.008 INFO    ] No update needed
[2026-06-12 23:28:30,009.009 INFO    ] Checking for camera pi updates...
[2026-06-12 23:28:30,028.028 INFO    ] 200
[2026-06-12 23:28:30,030.030 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:28:30,052.052 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 23:28:30,100.100 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 23:28:30,102.102 INFO    ] No camera update needed
[2026-06-12 23:28:30,103.103 INFO    ] Script finished. Safe exiting...
[2026-06-12 23:28:30,104.104 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 23:28:30,107.107 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 23:28:30,110.110 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 23:28:32,142.142 INFO    ] ================================================
[2026-06-12 23:28:32,153.153 INFO    ] Launching Daemon at Fri Jun 12 23:28:32 IST 2026
[2026-06-12 23:28:32,160.160 INFO    ] ================================================
[2026-06-12 23:28:32,490.490 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 23:28:32
[2026-06-12 23:28:32,814.814 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 23:28:32,952.952 INFO    ] Initializing speech engine...
[2026-06-12 23:28:32,962.962 INFO    ] 2026-06-12 23:28:32
[2026-06-12 23:28:33,168.168 INFO    ] 2026-06-12 23:28:33
[2026-06-12 23:28:33,196.196 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 23:28:33,381.381 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 23:28:33,389.389 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 23:28:33,518.518 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 23:28:33,577.577 INFO    ] time= 12/06/2026 23:28:33
[2026-06-12 23:28:33,609.609 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 23:28:33,616.616 INFO    ] Checking for existing commands in stream...
[2026-06-12 23:28:33,681.681 INFO    ] No existing commands found in stream
[2026-06-12 23:28:38,692.692 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 23:28:38,695.695 INFO    ] Waiting 1.46 seconds before fallback handling...
[2026-06-12 23:28:40,514.514 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 23:28:40,516.516 INFO    ] Checking for system updates...
[2026-06-12 23:28:40,536.536 INFO    ] 200
[2026-06-12 23:28:40,537.537 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:28:40,567.567 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 23:28:40,569.569 INFO    ] No update needed
[2026-06-12 23:28:40,570.570 INFO    ] Checking for camera pi updates...
[2026-06-12 23:28:40,589.589 INFO    ] 200
[2026-06-12 23:28:40,591.591 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:28:40,614.614 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 23:28:40,667.667 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 23:28:40,668.668 INFO    ] No camera update needed
[2026-06-12 23:28:40,670.670 INFO    ] Script finished. Safe exiting...
[2026-06-12 23:28:40,671.671 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 23:28:40,674.674 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 23:28:40,677.677 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 23:28:42,716.716 INFO    ] ================================================
[2026-06-12 23:28:42,731.731 INFO    ] Launching Daemon at Fri Jun 12 23:28:42 IST 2026
[2026-06-12 23:28:42,742.742 INFO    ] ================================================
[2026-06-12 23:28:43,094.094 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 23:28:43
[2026-06-12 23:28:43,426.426 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 23:28:43,575.575 INFO    ] Initializing speech engine...
[2026-06-12 23:28:43,581.581 INFO    ] 2026-06-12 23:28:43
[2026-06-12 23:28:43,791.791 INFO    ] 2026-06-12 23:28:43
[2026-06-12 23:28:43,819.819 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 23:28:44,005.005 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 23:28:44,015.015 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 23:28:44,146.146 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 23:28:44,214.214 INFO    ] time= 12/06/2026 23:28:44
[2026-06-12 23:28:44,238.238 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 23:28:44,245.245 INFO    ] Checking for existing commands in stream...
[2026-06-12 23:28:44,312.312 INFO    ] No existing commands found in stream
[2026-06-12 23:28:49,321.321 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 23:28:49,325.325 INFO    ] Waiting 3.29 seconds before fallback handling...
[2026-06-12 23:28:52,969.969 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 23:28:52,971.971 INFO    ] Checking for system updates...
[2026-06-12 23:28:52,991.991 INFO    ] 200
[2026-06-12 23:28:52,993.993 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:28:53,022.022 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 23:28:53,024.024 INFO    ] No update needed
[2026-06-12 23:28:53,025.025 INFO    ] Checking for camera pi updates...
[2026-06-12 23:28:53,045.045 INFO    ] 200
[2026-06-12 23:28:53,046.046 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:28:53,076.076 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 23:28:53,114.114 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 23:28:53,115.115 INFO    ] No camera update needed
[2026-06-12 23:28:53,117.117 INFO    ] Script finished. Safe exiting...
[2026-06-12 23:28:53,118.118 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 23:28:53,121.121 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 23:28:53,124.124 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 23:28:55,162.162 INFO    ] ================================================
[2026-06-12 23:28:55,177.177 INFO    ] Launching Daemon at Fri Jun 12 23:28:55 IST 2026
[2026-06-12 23:28:55,188.188 INFO    ] ================================================
[2026-06-12 23:28:55,542.542 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 23:28:55
[2026-06-12 23:28:55,856.856 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 23:28:55,998.998 INFO    ] Initializing speech engine...
[2026-06-12 23:28:56,003.003 INFO    ] 2026-06-12 23:28:55
[2026-06-12 23:28:56,206.206 INFO    ] 2026-06-12 23:28:56
[2026-06-12 23:28:56,234.234 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 23:28:56,417.417 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 23:28:56,421.421 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 23:28:56,556.556 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 23:28:56,620.620 INFO    ] time= 12/06/2026 23:28:56
[2026-06-12 23:28:56,647.647 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 23:28:56,654.654 INFO    ] Checking for existing commands in stream...
[2026-06-12 23:28:56,720.720 INFO    ] No existing commands found in stream
[2026-06-12 23:29:01,729.729 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 23:29:01,732.732 INFO    ] Waiting 1.83 seconds before fallback handling...
[2026-06-12 23:29:03,899.899 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 23:29:03,900.900 INFO    ] Checking for system updates...
[2026-06-12 23:29:03,921.921 INFO    ] 200
[2026-06-12 23:29:03,922.922 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:29:03,954.954 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 23:29:03,955.955 INFO    ] No update needed
[2026-06-12 23:29:03,956.956 INFO    ] Checking for camera pi updates...
[2026-06-12 23:29:03,975.975 INFO    ] 200
[2026-06-12 23:29:03,977.977 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:29:04,002.002 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 23:29:04,056.056 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 23:29:04,057.057 INFO    ] No camera update needed
[2026-06-12 23:29:04,058.058 INFO    ] Script finished. Safe exiting...
[2026-06-12 23:29:04,059.059 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 23:29:04,062.062 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 23:29:04,065.065 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 23:29:06,104.104 INFO    ] ================================================
[2026-06-12 23:29:06,119.119 INFO    ] Launching Daemon at Fri Jun 12 23:29:06 IST 2026
[2026-06-12 23:29:06,130.130 INFO    ] ================================================
[2026-06-12 23:29:06,488.488 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 23:29:06
[2026-06-12 23:29:06,798.798 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 23:29:06,935.935 INFO    ] Initializing speech engine...
[2026-06-12 23:29:06,945.945 INFO    ] 2026-06-12 23:29:06
[2026-06-12 23:29:07,148.148 INFO    ] 2026-06-12 23:29:07
[2026-06-12 23:29:07,177.177 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 23:29:07,359.359 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 23:29:07,368.368 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 23:29:07,508.508 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 23:29:07,566.566 INFO    ] time= 12/06/2026 23:29:07
[2026-06-12 23:29:07,588.588 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 23:29:07,594.594 INFO    ] Checking for existing commands in stream...
[2026-06-12 23:29:07,660.660 INFO    ] No existing commands found in stream
[2026-06-12 23:29:12,669.669 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 23:29:12,672.672 INFO    ] Waiting 1.65 seconds before fallback handling...
[2026-06-12 23:29:14,697.697 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 23:29:14,698.698 INFO    ] Checking for system updates...
[2026-06-12 23:29:14,718.718 INFO    ] 200
[2026-06-12 23:29:14,720.720 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:29:14,751.751 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 23:29:14,753.753 INFO    ] No update needed
[2026-06-12 23:29:14,754.754 INFO    ] Checking for camera pi updates...
[2026-06-12 23:29:14,775.775 INFO    ] 200
[2026-06-12 23:29:14,777.777 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:29:14,800.800 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 23:29:14,865.865 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 23:29:14,866.866 INFO    ] No camera update needed
[2026-06-12 23:29:14,868.868 INFO    ] Script finished. Safe exiting...
[2026-06-12 23:29:14,869.869 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 23:29:14,872.872 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 23:29:14,874.874 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 23:29:16,913.913 INFO    ] ================================================
[2026-06-12 23:29:16,928.928 INFO    ] Launching Daemon at Fri Jun 12 23:29:16 IST 2026
[2026-06-12 23:29:16,939.939 INFO    ] ================================================
[2026-06-12 23:29:17,301.301 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 23:29:17
[2026-06-12 23:29:17,635.635 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 23:29:17,775.775 INFO    ] Initializing speech engine...
[2026-06-12 23:29:17,791.791 INFO    ] 2026-06-12 23:29:17
[2026-06-12 23:29:18,003.003 INFO    ] 2026-06-12 23:29:17
[2026-06-12 23:29:18,033.033 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 23:29:18,221.221 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 23:29:18,225.225 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 23:29:18,364.364 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 23:29:18,433.433 INFO    ] time= 12/06/2026 23:29:18
[2026-06-12 23:29:18,458.458 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 23:29:18,465.465 INFO    ] Checking for existing commands in stream...
[2026-06-12 23:29:18,534.534 INFO    ] No existing commands found in stream
[2026-06-12 23:29:23,545.545 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 23:29:23,548.548 INFO    ] Waiting 1.22 seconds before fallback handling...
[2026-06-12 23:29:25,118.118 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 23:29:25,120.120 INFO    ] Checking for system updates...
[2026-06-12 23:29:25,141.141 INFO    ] 200
[2026-06-12 23:29:25,142.142 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:29:25,173.173 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 23:29:25,174.174 INFO    ] No update needed
[2026-06-12 23:29:25,175.175 INFO    ] Checking for camera pi updates...
[2026-06-12 23:29:25,195.195 INFO    ] 200
[2026-06-12 23:29:25,196.196 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:29:25,220.220 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 23:29:25,362.362 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 23:29:25,364.364 INFO    ] No camera update needed
[2026-06-12 23:29:25,365.365 INFO    ] Script finished. Safe exiting...
[2026-06-12 23:29:25,367.367 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 23:29:25,370.370 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 23:29:25,373.373 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 23:29:27,412.412 INFO    ] ================================================
[2026-06-12 23:29:27,428.428 INFO    ] Launching Daemon at Fri Jun 12 23:29:27 IST 2026
[2026-06-12 23:29:27,439.439 INFO    ] ================================================
[2026-06-12 23:29:27,806.806 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 23:29:27
[2026-06-12 23:29:28,118.118 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 23:29:28,256.256 INFO    ] Initializing speech engine...
[2026-06-12 23:29:28,264.264 INFO    ] 2026-06-12 23:29:28
[2026-06-12 23:29:28,481.481 INFO    ] 2026-06-12 23:29:28
[2026-06-12 23:29:28,510.510 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 23:29:28,695.695 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 23:29:28,699.699 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 23:29:28,833.833 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 23:29:28,894.894 INFO    ] time= 12/06/2026 23:29:28
[2026-06-12 23:29:28,927.927 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 23:29:28,934.934 INFO    ] Checking for existing commands in stream...
[2026-06-12 23:29:29,001.001 INFO    ] No existing commands found in stream
[2026-06-12 23:29:34,010.010 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 23:29:34,013.013 INFO    ] Waiting 2.53 seconds before fallback handling...
[2026-06-12 23:29:36,916.916 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 23:29:36,918.918 INFO    ] Checking for system updates...
[2026-06-12 23:29:36,940.940 INFO    ] 200
[2026-06-12 23:29:36,941.941 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:29:36,974.974 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 23:29:36,976.976 INFO    ] No update needed
[2026-06-12 23:29:36,977.977 INFO    ] Checking for camera pi updates...
[2026-06-12 23:29:36,997.997 INFO    ] 200
[2026-06-12 23:29:36,998.998 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:29:37,022.022 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 23:29:37,076.076 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 23:29:37,077.077 INFO    ] No camera update needed
[2026-06-12 23:29:37,079.079 INFO    ] Script finished. Safe exiting...
[2026-06-12 23:29:37,080.080 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 23:29:37,083.083 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 23:29:37,086.086 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 23:29:39,125.125 INFO    ] ================================================
[2026-06-12 23:29:39,141.141 INFO    ] Launching Daemon at Fri Jun 12 23:29:39 IST 2026
[2026-06-12 23:29:39,152.152 INFO    ] ================================================
[2026-06-12 23:29:39,498.498 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 23:29:39
[2026-06-12 23:29:39,808.808 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 23:29:39,950.950 INFO    ] Initializing speech engine...
[2026-06-12 23:29:39,955.955 INFO    ] 2026-06-12 23:29:39
[2026-06-12 23:29:40,156.156 INFO    ] 2026-06-12 23:29:40
[2026-06-12 23:29:40,186.186 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 23:29:40,367.367 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 23:29:40,377.377 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 23:29:40,499.499 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 23:29:40,560.560 INFO    ] time= 12/06/2026 23:29:40
[2026-06-12 23:29:40,596.596 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 23:29:40,602.602 INFO    ] Checking for existing commands in stream...
[2026-06-12 23:29:40,669.669 INFO    ] No existing commands found in stream
[2026-06-12 23:29:45,678.678 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 23:29:45,681.681 INFO    ] Waiting 0.01 seconds before fallback handling...
[2026-06-12 23:29:46,075.075 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 23:29:46,076.076 INFO    ] Checking for system updates...
[2026-06-12 23:29:46,097.097 INFO    ] 200
[2026-06-12 23:29:46,098.098 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:29:46,128.128 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 23:29:46,130.130 INFO    ] No update needed
[2026-06-12 23:29:46,131.131 INFO    ] Checking for camera pi updates...
[2026-06-12 23:29:46,150.150 INFO    ] 200
[2026-06-12 23:29:46,152.152 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:29:46,179.179 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 23:29:46,228.228 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 23:29:46,230.230 INFO    ] No camera update needed
[2026-06-12 23:29:46,231.231 INFO    ] Script finished. Safe exiting...
[2026-06-12 23:29:46,232.232 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 23:29:46,236.236 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 23:29:46,239.239 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 23:29:48,278.278 INFO    ] ================================================
[2026-06-12 23:29:48,293.293 INFO    ] Launching Daemon at Fri Jun 12 23:29:48 IST 2026
[2026-06-12 23:29:48,304.304 INFO    ] ================================================
[2026-06-12 23:29:48,637.637 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 23:29:48
[2026-06-12 23:29:48,949.949 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 23:29:49,091.091 INFO    ] Initializing speech engine...
[2026-06-12 23:29:49,096.096 INFO    ] 2026-06-12 23:29:49
[2026-06-12 23:29:49,300.300 INFO    ] 2026-06-12 23:29:49
[2026-06-12 23:29:49,328.328 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 23:29:49,511.511 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 23:29:49,514.514 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 23:29:49,650.650 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 23:29:49,717.717 INFO    ] time= 12/06/2026 23:29:49
[2026-06-12 23:29:49,741.741 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 23:29:49,747.747 INFO    ] Checking for existing commands in stream...
[2026-06-12 23:29:49,814.814 INFO    ] No existing commands found in stream
[2026-06-12 23:29:54,828.828 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 23:29:54,831.831 INFO    ] Waiting 1.87 seconds before fallback handling...
[2026-06-12 23:29:57,073.073 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 23:29:57,074.074 INFO    ] Checking for system updates...
[2026-06-12 23:29:57,094.094 INFO    ] 200
[2026-06-12 23:29:57,095.095 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:29:57,125.125 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 23:29:57,127.127 INFO    ] No update needed
[2026-06-12 23:29:57,128.128 INFO    ] Checking for camera pi updates...
[2026-06-12 23:29:57,147.147 INFO    ] 200
[2026-06-12 23:29:57,148.148 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:29:57,171.171 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 23:29:57,226.226 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 23:29:57,227.227 INFO    ] No camera update needed
[2026-06-12 23:29:57,229.229 INFO    ] Script finished. Safe exiting...
[2026-06-12 23:29:57,230.230 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 23:29:57,233.233 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 23:29:57,236.236 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 23:29:59,275.275 INFO    ] ================================================
[2026-06-12 23:29:59,290.290 INFO    ] Launching Daemon at Fri Jun 12 23:29:59 IST 2026
[2026-06-12 23:29:59,301.301 INFO    ] ================================================
[2026-06-12 23:29:59,670.670 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 23:29:59
[2026-06-12 23:29:59,984.984 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 23:30:00,117.117 INFO    ] Initializing speech engine...
[2026-06-12 23:30:00,125.125 INFO    ] 2026-06-12 23:30:00
[2026-06-12 23:30:00,347.347 INFO    ] 2026-06-12 23:30:00
[2026-06-12 23:30:00,377.377 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 23:30:00,508.508 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 23:30:00,574.574 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 23:30:00,715.715 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 23:30:00,772.772 INFO    ] time= 12/06/2026 23:30:00
[2026-06-12 23:30:00,810.810 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 23:30:00,821.821 INFO    ] Checking for existing commands in stream...
[2026-06-12 23:30:00,896.896 INFO    ] No existing commands found in stream
[2026-06-12 23:30:05,907.907 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 23:30:05,909.909 INFO    ] Waiting 0.66 seconds before fallback handling...
[2026-06-12 23:30:08,628.628 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 23:30:08,630.630 INFO    ] Checking for system updates...
[2026-06-12 23:30:08,666.666 INFO    ] 200
[2026-06-12 23:30:08,668.668 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:30:08,721.721 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 23:30:08,722.722 INFO    ] No update needed
[2026-06-12 23:30:08,724.724 INFO    ] Checking for camera pi updates...
[2026-06-12 23:30:08,742.742 INFO    ] 200
[2026-06-12 23:30:08,744.744 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:30:08,768.768 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 23:30:08,815.815 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 23:30:08,817.817 INFO    ] No camera update needed
[2026-06-12 23:30:08,818.818 INFO    ] Script finished. Safe exiting...
[2026-06-12 23:30:08,819.819 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 23:30:08,822.822 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 23:30:08,825.825 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 23:30:10,863.863 INFO    ] ================================================
[2026-06-12 23:30:10,879.879 INFO    ] Launching Daemon at Fri Jun 12 23:30:10 IST 2026
[2026-06-12 23:30:10,890.890 INFO    ] ================================================
[2026-06-12 23:30:11,233.233 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 23:30:11
[2026-06-12 23:30:11,554.554 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 23:30:11,699.699 INFO    ] Initializing speech engine...
[2026-06-12 23:30:11,704.704 INFO    ] 2026-06-12 23:30:11
[2026-06-12 23:30:11,908.908 INFO    ] 2026-06-12 23:30:11
[2026-06-12 23:30:11,937.937 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 23:30:12,120.120 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 23:30:12,124.124 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 23:30:12,259.259 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 23:30:12,326.326 INFO    ] time= 12/06/2026 23:30:12
[2026-06-12 23:30:12,347.347 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 23:30:12,352.352 INFO    ] Checking for existing commands in stream...
[2026-06-12 23:30:12,423.423 INFO    ] No existing commands found in stream
[2026-06-12 23:30:17,437.437 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 23:30:17,440.440 INFO    ] Waiting 3.50 seconds before fallback handling...
[2026-06-12 23:30:21,329.329 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 23:30:21,331.331 INFO    ] Checking for system updates...
[2026-06-12 23:30:21,352.352 INFO    ] 200
[2026-06-12 23:30:21,353.353 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:30:21,385.385 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 23:30:21,387.387 INFO    ] No update needed
[2026-06-12 23:30:21,388.388 INFO    ] Checking for camera pi updates...
[2026-06-12 23:30:21,407.407 INFO    ] 200
[2026-06-12 23:30:21,408.408 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:30:21,431.431 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 23:30:21,482.482 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 23:30:21,483.483 INFO    ] No camera update needed
[2026-06-12 23:30:21,484.484 INFO    ] Script finished. Safe exiting...
[2026-06-12 23:30:21,485.485 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 23:30:21,488.488 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 23:30:21,491.491 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 23:30:23,530.530 INFO    ] ================================================
[2026-06-12 23:30:23,546.546 INFO    ] Launching Daemon at Fri Jun 12 23:30:23 IST 2026
[2026-06-12 23:30:23,556.556 INFO    ] ================================================
[2026-06-12 23:30:23,944.944 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 23:30:23
[2026-06-12 23:30:24,277.277 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 23:30:24,422.422 INFO    ] Initializing speech engine...
[2026-06-12 23:30:24,431.431 INFO    ] 2026-06-12 23:30:24
[2026-06-12 23:30:24,643.643 INFO    ] 2026-06-12 23:30:24
[2026-06-12 23:30:24,674.674 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 23:30:24,862.862 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 23:30:24,872.872 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 23:30:24,996.996 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 23:30:25,047.047 INFO    ] time= 12/06/2026 23:30:25
[2026-06-12 23:30:25,094.094 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 23:30:25,099.099 INFO    ] Checking for existing commands in stream...
[2026-06-12 23:30:25,172.172 INFO    ] No existing commands found in stream
[2026-06-12 23:30:30,181.181 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 23:30:30,183.183 INFO    ] Waiting 2.91 seconds before fallback handling...
[2026-06-12 23:30:33,417.417 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 23:30:33,418.418 INFO    ] Checking for system updates...
[2026-06-12 23:30:33,438.438 INFO    ] 200
[2026-06-12 23:30:33,440.440 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:30:33,472.472 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 23:30:33,473.473 INFO    ] No update needed
[2026-06-12 23:30:33,474.474 INFO    ] Checking for camera pi updates...
[2026-06-12 23:30:33,494.494 INFO    ] 200
[2026-06-12 23:30:33,495.495 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:30:33,520.520 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 23:30:33,567.567 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 23:30:33,568.568 INFO    ] No camera update needed
[2026-06-12 23:30:33,570.570 INFO    ] Script finished. Safe exiting...
[2026-06-12 23:30:33,571.571 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 23:30:33,574.574 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 23:30:33,577.577 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 23:30:35,617.617 INFO    ] ================================================
[2026-06-12 23:30:35,632.632 INFO    ] Launching Daemon at Fri Jun 12 23:30:35 IST 2026
[2026-06-12 23:30:35,642.642 INFO    ] ================================================
[2026-06-12 23:30:35,970.970 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 23:30:35
[2026-06-12 23:30:36,281.281 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 23:30:36,413.413 INFO    ] Initializing speech engine...
[2026-06-12 23:30:36,418.418 INFO    ] 2026-06-12 23:30:36
[2026-06-12 23:30:36,642.642 INFO    ] 2026-06-12 23:30:36
[2026-06-12 23:30:36,672.672 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 23:30:36,866.866 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 23:30:36,869.869 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 23:30:37,006.006 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 23:30:37,067.067 INFO    ] time= 12/06/2026 23:30:37
[2026-06-12 23:30:37,110.110 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 23:30:37,112.112 INFO    ] Checking for existing commands in stream...
[2026-06-12 23:30:37,186.186 INFO    ] No existing commands found in stream
[2026-06-12 23:30:42,197.197 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 23:30:42,200.200 INFO    ] Waiting 0.68 seconds before fallback handling...
[2026-06-12 23:30:43,255.255 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 23:30:43,257.257 INFO    ] Checking for system updates...
[2026-06-12 23:30:43,277.277 INFO    ] 200
[2026-06-12 23:30:43,278.278 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:30:43,308.308 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 23:30:43,310.310 INFO    ] No update needed
[2026-06-12 23:30:43,311.311 INFO    ] Checking for camera pi updates...
[2026-06-12 23:30:43,330.330 INFO    ] 200
[2026-06-12 23:30:43,332.332 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:30:43,357.357 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 23:30:43,401.401 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 23:30:43,403.403 INFO    ] No camera update needed
[2026-06-12 23:30:43,404.404 INFO    ] Script finished. Safe exiting...
[2026-06-12 23:30:43,405.405 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 23:30:43,408.408 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 23:30:43,411.411 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 23:30:45,453.453 INFO    ] ================================================
[2026-06-12 23:30:45,468.468 INFO    ] Launching Daemon at Fri Jun 12 23:30:45 IST 2026
[2026-06-12 23:30:45,478.478 INFO    ] ================================================
[2026-06-12 23:30:45,833.833 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 23:30:45
[2026-06-12 23:30:46,150.150 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 23:30:46,282.282 INFO    ] Initializing speech engine...
[2026-06-12 23:30:46,290.290 INFO    ] 2026-06-12 23:30:46
[2026-06-12 23:30:46,502.502 INFO    ] 2026-06-12 23:30:46
[2026-06-12 23:30:46,531.531 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 23:30:46,716.716 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 23:30:46,720.720 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 23:30:46,847.847 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 23:30:46,904.904 INFO    ] time= 12/06/2026 23:30:46
[2026-06-12 23:30:46,943.943 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 23:30:46,948.948 INFO    ] Checking for existing commands in stream...
[2026-06-12 23:30:47,043.043 INFO    ] No existing commands found in stream
[2026-06-12 23:30:52,057.057 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 23:30:52,060.060 INFO    ] Waiting 2.96 seconds before fallback handling...
[2026-06-12 23:30:55,413.413 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 23:30:55,414.414 INFO    ] Checking for system updates...
[2026-06-12 23:30:55,435.435 INFO    ] 200
[2026-06-12 23:30:55,436.436 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:30:55,467.467 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 23:30:55,468.468 INFO    ] No update needed
[2026-06-12 23:30:55,469.469 INFO    ] Checking for camera pi updates...
[2026-06-12 23:30:55,491.491 INFO    ] 200
[2026-06-12 23:30:55,492.492 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:30:55,515.515 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 23:30:55,569.569 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 23:30:55,571.571 INFO    ] No camera update needed
[2026-06-12 23:30:55,572.572 INFO    ] Script finished. Safe exiting...
[2026-06-12 23:30:55,573.573 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 23:30:55,576.576 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 23:30:55,579.579 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 23:30:57,620.620 INFO    ] ================================================
[2026-06-12 23:30:57,635.635 INFO    ] Launching Daemon at Fri Jun 12 23:30:57 IST 2026
[2026-06-12 23:30:57,645.645 INFO    ] ================================================
[2026-06-12 23:30:58,014.014 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 23:30:58
[2026-06-12 23:30:58,326.326 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 23:30:58,459.459 INFO    ] Initializing speech engine...
[2026-06-12 23:30:58,463.463 INFO    ] 2026-06-12 23:30:58
[2026-06-12 23:30:58,688.688 INFO    ] 2026-06-12 23:30:58
[2026-06-12 23:30:58,718.718 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 23:30:58,906.906 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 23:30:58,916.916 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 23:30:59,046.046 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 23:30:59,115.115 INFO    ] time= 12/06/2026 23:30:59
[2026-06-12 23:30:59,140.140 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 23:30:59,146.146 INFO    ] Checking for existing commands in stream...
[2026-06-12 23:30:59,238.238 INFO    ] No existing commands found in stream
[2026-06-12 23:31:04,248.248 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 23:31:04,251.251 INFO    ] Waiting 3.70 seconds before fallback handling...
[2026-06-12 23:31:08,291.291 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 23:31:08,293.293 INFO    ] Checking for system updates...
[2026-06-12 23:31:08,314.314 INFO    ] 200
[2026-06-12 23:31:08,316.316 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:31:08,345.345 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 23:31:08,346.346 INFO    ] No update needed
[2026-06-12 23:31:08,348.348 INFO    ] Checking for camera pi updates...
[2026-06-12 23:31:08,368.368 INFO    ] 200
[2026-06-12 23:31:08,370.370 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:31:08,393.393 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 23:31:08,435.435 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 23:31:08,436.436 INFO    ] No camera update needed
[2026-06-12 23:31:08,438.438 INFO    ] Script finished. Safe exiting...
[2026-06-12 23:31:08,439.439 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 23:31:08,442.442 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 23:31:08,445.445 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 23:31:10,482.482 INFO    ] ================================================
[2026-06-12 23:31:10,498.498 INFO    ] Launching Daemon at Fri Jun 12 23:31:10 IST 2026
[2026-06-12 23:31:10,508.508 INFO    ] ================================================
[2026-06-12 23:31:10,858.858 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 23:31:10
[2026-06-12 23:31:11,188.188 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 23:31:11,338.338 INFO    ] Initializing speech engine...
[2026-06-12 23:31:11,343.343 INFO    ] 2026-06-12 23:31:11
[2026-06-12 23:31:11,550.550 INFO    ] 2026-06-12 23:31:11
[2026-06-12 23:31:11,580.580 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 23:31:11,768.768 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 23:31:11,777.777 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 23:31:11,901.901 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 23:31:11,962.962 INFO    ] time= 12/06/2026 23:31:11
[2026-06-12 23:31:11,998.998 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 23:31:12,008.008 INFO    ] Checking for existing commands in stream...
[2026-06-12 23:31:12,076.076 INFO    ] No existing commands found in stream
[2026-06-12 23:31:17,091.091 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 23:31:17,094.094 INFO    ] Waiting 2.72 seconds before fallback handling...
[2026-06-12 23:31:20,201.201 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 23:31:20,202.202 INFO    ] Checking for system updates...
[2026-06-12 23:31:20,223.223 INFO    ] 200
[2026-06-12 23:31:20,224.224 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:31:20,255.255 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 23:31:20,256.256 INFO    ] No update needed
[2026-06-12 23:31:20,257.257 INFO    ] Checking for camera pi updates...
[2026-06-12 23:31:20,277.277 INFO    ] 200
[2026-06-12 23:31:20,278.278 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:31:20,303.303 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 23:31:20,348.348 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 23:31:20,349.349 INFO    ] No camera update needed
[2026-06-12 23:31:20,351.351 INFO    ] Script finished. Safe exiting...
[2026-06-12 23:31:20,352.352 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 23:31:20,355.355 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 23:31:20,358.358 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 23:31:22,396.396 INFO    ] ================================================
[2026-06-12 23:31:22,411.411 INFO    ] Launching Daemon at Fri Jun 12 23:31:22 IST 2026
[2026-06-12 23:31:22,422.422 INFO    ] ================================================
[2026-06-12 23:31:22,768.768 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 23:31:22
[2026-06-12 23:31:23,101.101 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 23:31:23,238.238 INFO    ] Initializing speech engine...
[2026-06-12 23:31:23,242.242 INFO    ] 2026-06-12 23:31:23
[2026-06-12 23:31:23,465.465 INFO    ] 2026-06-12 23:31:23
[2026-06-12 23:31:23,494.494 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 23:31:23,683.683 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 23:31:23,693.693 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 23:31:23,827.827 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 23:31:23,895.895 INFO    ] time= 12/06/2026 23:31:23
[2026-06-12 23:31:23,920.920 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 23:31:23,927.927 INFO    ] Checking for existing commands in stream...
[2026-06-12 23:31:23,994.994 INFO    ] No existing commands found in stream
[2026-06-12 23:31:29,004.004 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 23:31:29,008.008 INFO    ] Waiting 3.91 seconds before fallback handling...
[2026-06-12 23:31:33,311.311 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 23:31:33,312.312 INFO    ] Checking for system updates...
[2026-06-12 23:31:33,333.333 INFO    ] 200
[2026-06-12 23:31:33,335.335 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:31:33,366.366 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 23:31:33,368.368 INFO    ] No update needed
[2026-06-12 23:31:33,369.369 INFO    ] Checking for camera pi updates...
[2026-06-12 23:31:33,388.388 INFO    ] 200
[2026-06-12 23:31:33,390.390 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:31:33,413.413 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 23:31:33,465.465 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 23:31:33,466.466 INFO    ] No camera update needed
[2026-06-12 23:31:33,467.467 INFO    ] Script finished. Safe exiting...
[2026-06-12 23:31:33,469.469 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 23:31:33,472.472 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 23:31:33,475.475 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 23:31:35,512.512 INFO    ] ================================================
[2026-06-12 23:31:35,527.527 INFO    ] Launching Daemon at Fri Jun 12 23:31:35 IST 2026
[2026-06-12 23:31:35,537.537 INFO    ] ================================================
[2026-06-12 23:31:35,903.903 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 23:31:35
[2026-06-12 23:31:36,235.235 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 23:31:36,386.386 INFO    ] Initializing speech engine...
[2026-06-12 23:31:36,391.391 INFO    ] 2026-06-12 23:31:36
[2026-06-12 23:31:36,600.600 INFO    ] 2026-06-12 23:31:36
[2026-06-12 23:31:36,629.629 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 23:31:36,817.817 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 23:31:36,827.827 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 23:31:36,964.964 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 23:31:37,028.028 INFO    ] time= 12/06/2026 23:31:36
[2026-06-12 23:31:37,052.052 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 23:31:37,058.058 INFO    ] Checking for existing commands in stream...
[2026-06-12 23:31:37,126.126 INFO    ] No existing commands found in stream
[2026-06-12 23:31:42,145.145 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 23:31:42,148.148 INFO    ] Waiting 0.23 seconds before fallback handling...
[2026-06-12 23:31:42,733.733 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 23:31:42,734.734 INFO    ] Checking for system updates...
[2026-06-12 23:31:42,755.755 INFO    ] 200
[2026-06-12 23:31:42,756.756 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:31:42,791.791 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 23:31:42,792.792 INFO    ] No update needed
[2026-06-12 23:31:42,793.793 INFO    ] Checking for camera pi updates...
[2026-06-12 23:31:42,812.812 INFO    ] 200
[2026-06-12 23:31:42,814.814 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:31:42,839.839 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 23:31:42,885.885 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 23:31:42,887.887 INFO    ] No camera update needed
[2026-06-12 23:31:42,888.888 INFO    ] Script finished. Safe exiting...
[2026-06-12 23:31:42,889.889 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 23:31:42,893.893 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 23:31:42,895.895 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 23:31:44,933.933 INFO    ] ================================================
[2026-06-12 23:31:44,948.948 INFO    ] Launching Daemon at Fri Jun 12 23:31:44 IST 2026
[2026-06-12 23:31:44,959.959 INFO    ] ================================================
[2026-06-12 23:31:45,317.317 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 23:31:45
[2026-06-12 23:31:45,653.653 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 23:31:45,804.804 INFO    ] Initializing speech engine...
[2026-06-12 23:31:45,809.809 INFO    ] 2026-06-12 23:31:45
[2026-06-12 23:31:46,016.016 INFO    ] 2026-06-12 23:31:45
[2026-06-12 23:31:46,045.045 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 23:31:46,228.228 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 23:31:46,232.232 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 23:31:46,361.361 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 23:31:46,422.422 INFO    ] time= 12/06/2026 23:31:46
[2026-06-12 23:31:46,460.460 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 23:31:46,462.462 INFO    ] Checking for existing commands in stream...
[2026-06-12 23:31:46,534.534 INFO    ] No existing commands found in stream
[2026-06-12 23:31:51,548.548 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 23:31:51,552.552 INFO    ] Waiting 2.14 seconds before fallback handling...
[2026-06-12 23:31:54,047.047 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 23:31:54,048.048 INFO    ] Checking for system updates...
[2026-06-12 23:31:54,071.071 INFO    ] 200
[2026-06-12 23:31:54,072.072 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:31:54,104.104 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 23:31:54,105.105 INFO    ] No update needed
[2026-06-12 23:31:54,107.107 INFO    ] Checking for camera pi updates...
[2026-06-12 23:31:54,128.128 INFO    ] 200
[2026-06-12 23:31:54,129.129 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:31:54,152.152 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 23:31:54,210.210 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 23:31:54,211.211 INFO    ] No camera update needed
[2026-06-12 23:31:54,213.213 INFO    ] Script finished. Safe exiting...
[2026-06-12 23:31:54,214.214 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 23:31:54,217.217 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 23:31:54,220.220 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 23:31:56,259.259 INFO    ] ================================================
[2026-06-12 23:31:56,275.275 INFO    ] Launching Daemon at Fri Jun 12 23:31:56 IST 2026
[2026-06-12 23:31:56,287.287 INFO    ] ================================================
[2026-06-12 23:31:56,637.637 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 23:31:56
[2026-06-12 23:31:56,972.972 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 23:31:57,122.122 INFO    ] Initializing speech engine...
[2026-06-12 23:31:57,127.127 INFO    ] 2026-06-12 23:31:57
[2026-06-12 23:31:57,345.345 INFO    ] 2026-06-12 23:31:57
[2026-06-12 23:31:57,374.374 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 23:31:57,571.571 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 23:31:57,575.575 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 23:31:57,738.738 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 23:31:57,794.794 INFO    ] time= 12/06/2026 23:31:57
[2026-06-12 23:31:57,819.819 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 23:31:57,826.826 INFO    ] Checking for existing commands in stream...
[2026-06-12 23:31:57,896.896 INFO    ] No existing commands found in stream
[2026-06-12 23:32:02,905.905 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 23:32:02,907.907 INFO    ] Waiting 3.30 seconds before fallback handling...
[2026-06-12 23:32:06,536.536 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 23:32:06,538.538 INFO    ] Checking for system updates...
[2026-06-12 23:32:06,558.558 INFO    ] 200
[2026-06-12 23:32:06,560.560 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:32:06,590.590 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 23:32:06,591.591 INFO    ] No update needed
[2026-06-12 23:32:06,592.592 INFO    ] Checking for camera pi updates...
[2026-06-12 23:32:06,613.613 INFO    ] 200
[2026-06-12 23:32:06,615.615 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:32:06,638.638 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 23:32:06,686.686 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 23:32:06,688.688 INFO    ] No camera update needed
[2026-06-12 23:32:06,689.689 INFO    ] Script finished. Safe exiting...
[2026-06-12 23:32:06,690.690 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 23:32:06,693.693 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 23:32:06,696.696 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 23:32:08,734.734 INFO    ] ================================================
[2026-06-12 23:32:08,750.750 INFO    ] Launching Daemon at Fri Jun 12 23:32:08 IST 2026
[2026-06-12 23:32:08,761.761 INFO    ] ================================================
[2026-06-12 23:32:09,102.102 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 23:32:09
[2026-06-12 23:32:09,418.418 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 23:32:09,560.560 INFO    ] Initializing speech engine...
[2026-06-12 23:32:09,567.567 INFO    ] 2026-06-12 23:32:09
[2026-06-12 23:32:09,784.784 INFO    ] 2026-06-12 23:32:09
[2026-06-12 23:32:09,814.814 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 23:32:10,010.010 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 23:32:10,013.013 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 23:32:10,152.152 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 23:32:10,198.198 INFO    ] time= 12/06/2026 23:32:10
[2026-06-12 23:32:10,236.236 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 23:32:10,258.258 INFO    ] Checking for existing commands in stream...
[2026-06-12 23:32:10,360.360 INFO    ] No existing commands found in stream
[2026-06-12 23:32:15,369.369 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 23:32:15,372.372 INFO    ] Waiting 3.95 seconds before fallback handling...
[2026-06-12 23:32:19,697.697 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 23:32:19,698.698 INFO    ] Checking for system updates...
[2026-06-12 23:32:19,719.719 INFO    ] 200
[2026-06-12 23:32:19,720.720 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:32:19,750.750 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 23:32:19,751.751 INFO    ] No update needed
[2026-06-12 23:32:19,753.753 INFO    ] Checking for camera pi updates...
[2026-06-12 23:32:19,773.773 INFO    ] 200
[2026-06-12 23:32:19,775.775 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:32:19,800.800 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 23:32:19,849.849 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 23:32:19,850.850 INFO    ] No camera update needed
[2026-06-12 23:32:19,852.852 INFO    ] Script finished. Safe exiting...
[2026-06-12 23:32:19,853.853 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 23:32:19,856.856 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 23:32:19,859.859 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 23:32:21,897.897 INFO    ] ================================================
[2026-06-12 23:32:21,912.912 INFO    ] Launching Daemon at Fri Jun 12 23:32:21 IST 2026
[2026-06-12 23:32:21,923.923 INFO    ] ================================================
[2026-06-12 23:32:22,255.255 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 23:32:22
[2026-06-12 23:32:22,568.568 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 23:32:22,700.700 INFO    ] Initializing speech engine...
[2026-06-12 23:32:22,712.712 INFO    ] 2026-06-12 23:32:22
[2026-06-12 23:32:22,930.930 INFO    ] 2026-06-12 23:32:22
[2026-06-12 23:32:22,959.959 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 23:32:23,144.144 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 23:32:23,147.147 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 23:32:23,277.277 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 23:32:23,333.333 INFO    ] time= 12/06/2026 23:32:23
[2026-06-12 23:32:23,368.368 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 23:32:23,383.383 INFO    ] Checking for existing commands in stream...
[2026-06-12 23:32:23,450.450 INFO    ] No existing commands found in stream
[2026-06-12 23:32:28,459.459 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 23:32:28,462.462 INFO    ] Waiting 2.03 seconds before fallback handling...
[2026-06-12 23:32:30,862.862 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 23:32:30,864.864 INFO    ] Checking for system updates...
[2026-06-12 23:32:30,884.884 INFO    ] 200
[2026-06-12 23:32:30,886.886 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:32:30,915.915 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 23:32:30,917.917 INFO    ] No update needed
[2026-06-12 23:32:30,918.918 INFO    ] Checking for camera pi updates...
[2026-06-12 23:32:30,941.941 INFO    ] 200
[2026-06-12 23:32:30,943.943 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:32:30,966.966 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 23:32:31,009.009 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 23:32:31,011.011 INFO    ] No camera update needed
[2026-06-12 23:32:31,012.012 INFO    ] Script finished. Safe exiting...
[2026-06-12 23:32:31,014.014 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 23:32:31,017.017 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 23:32:31,020.020 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 23:32:33,053.053 INFO    ] ================================================
[2026-06-12 23:32:33,068.068 INFO    ] Launching Daemon at Fri Jun 12 23:32:33 IST 2026
[2026-06-12 23:32:33,079.079 INFO    ] ================================================
[2026-06-12 23:32:33,415.415 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 23:32:33
[2026-06-12 23:32:33,728.728 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 23:32:33,867.867 INFO    ] Initializing speech engine...
[2026-06-12 23:32:33,879.879 INFO    ] 2026-06-12 23:32:33
[2026-06-12 23:32:34,097.097 INFO    ] 2026-06-12 23:32:34
[2026-06-12 23:32:34,127.127 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 23:32:34,323.323 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 23:32:34,327.327 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 23:32:34,465.465 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 23:32:34,521.521 INFO    ] time= 12/06/2026 23:32:34
[2026-06-12 23:32:34,570.570 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 23:32:34,572.572 INFO    ] Checking for existing commands in stream...
[2026-06-12 23:32:34,648.648 INFO    ] No existing commands found in stream
[2026-06-12 23:32:39,651.651 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 23:32:39,653.653 INFO    ] Waiting 1.77 seconds before fallback handling...
[2026-06-12 23:32:41,769.769 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 23:32:41,771.771 INFO    ] Checking for system updates...
[2026-06-12 23:32:41,791.791 INFO    ] 200
[2026-06-12 23:32:41,793.793 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:32:41,822.822 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 23:32:41,824.824 INFO    ] No update needed
[2026-06-12 23:32:41,825.825 INFO    ] Checking for camera pi updates...
[2026-06-12 23:32:41,844.844 INFO    ] 200
[2026-06-12 23:32:41,846.846 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:32:41,868.868 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 23:32:41,894.894 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 23:32:41,896.896 INFO    ] No camera update needed
[2026-06-12 23:32:41,897.897 INFO    ] Script finished. Safe exiting...
[2026-06-12 23:32:41,898.898 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 23:32:41,901.901 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 23:32:41,904.904 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 23:32:43,942.942 INFO    ] ================================================
[2026-06-12 23:32:43,957.957 INFO    ] Launching Daemon at Fri Jun 12 23:32:43 IST 2026
[2026-06-12 23:32:43,968.968 INFO    ] ================================================
[2026-06-12 23:32:44,334.334 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 23:32:44
[2026-06-12 23:32:44,667.667 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 23:32:44,818.818 INFO    ] Initializing speech engine...
[2026-06-12 23:32:44,824.824 INFO    ] 2026-06-12 23:32:44
[2026-06-12 23:32:45,033.033 INFO    ] 2026-06-12 23:32:45
[2026-06-12 23:32:45,062.062 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 23:32:45,248.248 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 23:32:45,257.257 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 23:32:45,383.383 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 23:32:45,439.439 INFO    ] time= 12/06/2026 23:32:45
[2026-06-12 23:32:45,474.474 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 23:32:45,484.484 INFO    ] Checking for existing commands in stream...
[2026-06-12 23:32:45,555.555 INFO    ] No existing commands found in stream
[2026-06-12 23:32:50,566.566 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 23:32:50,569.569 INFO    ] Waiting 0.27 seconds before fallback handling...
[2026-06-12 23:32:51,230.230 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 23:32:51,231.231 INFO    ] Checking for system updates...
[2026-06-12 23:32:51,252.252 INFO    ] 200
[2026-06-12 23:32:51,253.253 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:32:51,285.285 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 23:32:51,286.286 INFO    ] No update needed
[2026-06-12 23:32:51,288.288 INFO    ] Checking for camera pi updates...
[2026-06-12 23:32:51,307.307 INFO    ] 200
[2026-06-12 23:32:51,308.308 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:32:51,331.331 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 23:32:51,382.382 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 23:32:51,383.383 INFO    ] No camera update needed
[2026-06-12 23:32:51,384.384 INFO    ] Script finished. Safe exiting...
[2026-06-12 23:32:51,386.386 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 23:32:51,389.389 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 23:32:51,391.391 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 23:32:53,429.429 INFO    ] ================================================
[2026-06-12 23:32:53,444.444 INFO    ] Launching Daemon at Fri Jun 12 23:32:53 IST 2026
[2026-06-12 23:32:53,455.455 INFO    ] ================================================
[2026-06-12 23:32:53,806.806 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 23:32:53
[2026-06-12 23:32:54,123.123 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 23:32:54,271.271 INFO    ] Initializing speech engine...
[2026-06-12 23:32:54,276.276 INFO    ] 2026-06-12 23:32:54
[2026-06-12 23:32:54,491.491 INFO    ] 2026-06-12 23:32:54
[2026-06-12 23:32:54,521.521 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 23:32:54,717.717 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 23:32:54,720.720 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 23:32:54,858.858 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 23:32:54,925.925 INFO    ] time= 12/06/2026 23:32:54
[2026-06-12 23:32:54,959.959 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 23:32:54,965.965 INFO    ] Checking for existing commands in stream...
[2026-06-12 23:32:55,067.067 INFO    ] No existing commands found in stream
[2026-06-12 23:33:00,076.076 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 23:33:00,079.079 INFO    ] Waiting 3.64 seconds before fallback handling...
[2026-06-12 23:33:04,080.080 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 23:33:04,082.082 INFO    ] Checking for system updates...
[2026-06-12 23:33:04,103.103 INFO    ] 200
[2026-06-12 23:33:04,104.104 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:33:04,134.134 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 23:33:04,136.136 INFO    ] No update needed
[2026-06-12 23:33:04,137.137 INFO    ] Checking for camera pi updates...
[2026-06-12 23:33:04,158.158 INFO    ] 200
[2026-06-12 23:33:04,160.160 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:33:04,185.185 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 23:33:04,225.225 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 23:33:04,226.226 INFO    ] No camera update needed
[2026-06-12 23:33:04,228.228 INFO    ] Script finished. Safe exiting...
[2026-06-12 23:33:04,229.229 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 23:33:04,232.232 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 23:33:04,235.235 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 23:33:06,274.274 INFO    ] ================================================
[2026-06-12 23:33:06,289.289 INFO    ] Launching Daemon at Fri Jun 12 23:33:06 IST 2026
[2026-06-12 23:33:06,300.300 INFO    ] ================================================
[2026-06-12 23:33:06,633.633 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 23:33:06
[2026-06-12 23:33:06,944.944 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 23:33:07,090.090 INFO    ] Initializing speech engine...
[2026-06-12 23:33:07,094.094 INFO    ] 2026-06-12 23:33:07
[2026-06-12 23:33:07,298.298 INFO    ] 2026-06-12 23:33:07
[2026-06-12 23:33:07,326.326 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 23:33:07,466.466 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 23:33:07,514.514 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 23:33:07,650.650 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 23:33:07,709.709 INFO    ] time= 12/06/2026 23:33:07
[2026-06-12 23:33:07,741.741 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 23:33:07,747.747 INFO    ] Checking for existing commands in stream...
[2026-06-12 23:33:07,862.862 INFO    ] No existing commands found in stream
[2026-06-12 23:33:12,871.871 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 23:33:12,874.874 INFO    ] Waiting 3.92 seconds before fallback handling...
[2026-06-12 23:33:17,186.186 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 23:33:17,187.187 INFO    ] Checking for system updates...
[2026-06-12 23:33:17,207.207 INFO    ] 200
[2026-06-12 23:33:17,208.208 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:33:17,238.238 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 23:33:17,240.240 INFO    ] No update needed
[2026-06-12 23:33:17,241.241 INFO    ] Checking for camera pi updates...
[2026-06-12 23:33:17,260.260 INFO    ] 200
[2026-06-12 23:33:17,262.262 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:33:17,286.286 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 23:33:17,334.334 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 23:33:17,335.335 INFO    ] No camera update needed
[2026-06-12 23:33:17,336.336 INFO    ] Script finished. Safe exiting...
[2026-06-12 23:33:17,338.338 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 23:33:17,341.341 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 23:33:17,344.344 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 23:33:19,382.382 INFO    ] ================================================
[2026-06-12 23:33:19,398.398 INFO    ] Launching Daemon at Fri Jun 12 23:33:19 IST 2026
[2026-06-12 23:33:19,409.409 INFO    ] ================================================
[2026-06-12 23:33:19,750.750 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 23:33:19
[2026-06-12 23:33:20,065.065 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 23:33:20,200.200 INFO    ] Initializing speech engine...
[2026-06-12 23:33:20,203.203 INFO    ] 2026-06-12 23:33:20
[2026-06-12 23:33:20,429.429 INFO    ] 2026-06-12 23:33:20
[2026-06-12 23:33:20,459.459 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 23:33:20,653.653 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 23:33:20,656.656 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 23:33:20,800.800 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 23:33:20,870.870 INFO    ] time= 12/06/2026 23:33:20
[2026-06-12 23:33:20,896.896 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 23:33:20,902.902 INFO    ] Checking for existing commands in stream...
[2026-06-12 23:33:20,972.972 INFO    ] No existing commands found in stream
[2026-06-12 23:33:25,982.982 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 23:33:25,985.985 INFO    ] Waiting 1.19 seconds before fallback handling...
[2026-06-12 23:33:27,556.556 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 23:33:27,557.557 INFO    ] Checking for system updates...
[2026-06-12 23:33:27,579.579 INFO    ] 200
[2026-06-12 23:33:27,580.580 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:33:27,611.611 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 23:33:27,612.612 INFO    ] No update needed
[2026-06-12 23:33:27,613.613 INFO    ] Checking for camera pi updates...
[2026-06-12 23:33:27,632.632 INFO    ] 200
[2026-06-12 23:33:27,634.634 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:33:27,657.657 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 23:33:27,718.718 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 23:33:27,719.719 INFO    ] No camera update needed
[2026-06-12 23:33:27,721.721 INFO    ] Script finished. Safe exiting...
[2026-06-12 23:33:27,722.722 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 23:33:27,725.725 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 23:33:27,728.728 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 23:33:29,767.767 INFO    ] ================================================
[2026-06-12 23:33:29,782.782 INFO    ] Launching Daemon at Fri Jun 12 23:33:29 IST 2026
[2026-06-12 23:33:29,794.794 INFO    ] ================================================
[2026-06-12 23:33:30,136.136 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 23:33:30
[2026-06-12 23:33:30,447.447 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 23:33:30,578.578 INFO    ] Initializing speech engine...
[2026-06-12 23:33:30,582.582 INFO    ] 2026-06-12 23:33:30
[2026-06-12 23:33:30,801.801 INFO    ] 2026-06-12 23:33:30
[2026-06-12 23:33:30,830.830 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 23:33:31,016.016 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 23:33:31,026.026 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 23:33:31,158.158 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 23:33:31,226.226 INFO    ] time= 12/06/2026 23:33:31
[2026-06-12 23:33:31,250.250 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 23:33:31,256.256 INFO    ] Checking for existing commands in stream...
[2026-06-12 23:33:31,323.323 INFO    ] No existing commands found in stream
[2026-06-12 23:33:36,332.332 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 23:33:36,335.335 INFO    ] Waiting 1.91 seconds before fallback handling...
[2026-06-12 23:33:38,574.574 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 23:33:38,576.576 INFO    ] Checking for system updates...
[2026-06-12 23:33:38,596.596 INFO    ] 200
[2026-06-12 23:33:38,597.597 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:33:38,631.631 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 23:33:38,632.632 INFO    ] No update needed
[2026-06-12 23:33:38,634.634 INFO    ] Checking for camera pi updates...
[2026-06-12 23:33:38,653.653 INFO    ] 200
[2026-06-12 23:33:38,654.654 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:33:38,677.677 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 23:33:38,818.818 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 23:33:38,820.820 INFO    ] No camera update needed
[2026-06-12 23:33:38,821.821 INFO    ] Script finished. Safe exiting...
[2026-06-12 23:33:38,822.822 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 23:33:38,825.825 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 23:33:38,828.828 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 23:33:40,869.869 INFO    ] ================================================
[2026-06-12 23:33:40,885.885 INFO    ] Launching Daemon at Fri Jun 12 23:33:40 IST 2026
[2026-06-12 23:33:40,896.896 INFO    ] ================================================
[2026-06-12 23:33:41,260.260 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 23:33:41
[2026-06-12 23:33:41,590.590 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 23:33:41,727.727 INFO    ] Initializing speech engine...
[2026-06-12 23:33:41,741.741 INFO    ] 2026-06-12 23:33:41
[2026-06-12 23:33:41,953.953 INFO    ] 2026-06-12 23:33:41
[2026-06-12 23:33:41,984.984 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 23:33:42,171.171 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 23:33:42,180.180 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 23:33:42,313.313 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 23:33:42,381.381 INFO    ] time= 12/06/2026 23:33:42
[2026-06-12 23:33:42,406.406 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 23:33:42,412.412 INFO    ] Checking for existing commands in stream...
[2026-06-12 23:33:42,480.480 INFO    ] No existing commands found in stream
[2026-06-12 23:33:47,513.513 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 23:33:47,516.516 INFO    ] Waiting 1.59 seconds before fallback handling...
[2026-06-12 23:33:49,484.484 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 23:33:49,485.485 INFO    ] Checking for system updates...
[2026-06-12 23:33:49,507.507 INFO    ] 200
[2026-06-12 23:33:49,508.508 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:33:49,538.538 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 23:33:49,540.540 INFO    ] No update needed
[2026-06-12 23:33:49,542.542 INFO    ] Checking for camera pi updates...
[2026-06-12 23:33:49,561.561 INFO    ] 200
[2026-06-12 23:33:49,563.563 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:33:49,586.586 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 23:33:49,618.618 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 23:33:49,626.626 INFO    ] No camera update needed
[2026-06-12 23:33:49,628.628 INFO    ] Script finished. Safe exiting...
[2026-06-12 23:33:49,629.629 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 23:33:49,633.633 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 23:33:49,636.636 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 23:33:51,675.675 INFO    ] ================================================
[2026-06-12 23:33:51,691.691 INFO    ] Launching Daemon at Fri Jun 12 23:33:51 IST 2026
[2026-06-12 23:33:51,702.702 INFO    ] ================================================
[2026-06-12 23:33:52,061.061 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 23:33:52
[2026-06-12 23:33:52,376.376 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 23:33:52,520.520 INFO    ] Initializing speech engine...
[2026-06-12 23:33:52,524.524 INFO    ] 2026-06-12 23:33:52
[2026-06-12 23:33:52,728.728 INFO    ] 2026-06-12 23:33:52
[2026-06-12 23:33:52,756.756 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 23:33:52,940.940 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 23:33:52,950.950 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 23:33:53,077.077 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 23:33:53,145.145 INFO    ] time= 12/06/2026 23:33:53
[2026-06-12 23:33:53,169.169 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 23:33:53,175.175 INFO    ] Checking for existing commands in stream...
[2026-06-12 23:33:53,265.265 INFO    ] No existing commands found in stream
[2026-06-12 23:33:58,272.272 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 23:33:58,275.275 INFO    ] Waiting 3.03 seconds before fallback handling...
[2026-06-12 23:34:02,673.673 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 23:34:02,675.675 INFO    ] Checking for system updates...
[2026-06-12 23:34:02,695.695 INFO    ] 200
[2026-06-12 23:34:02,697.697 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:34:02,735.735 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 23:34:02,738.738 INFO    ] No update needed
[2026-06-12 23:34:02,745.745 INFO    ] Checking for camera pi updates...
[2026-06-12 23:34:02,778.778 INFO    ] 200
[2026-06-12 23:34:02,781.781 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:34:02,825.825 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 23:34:02,873.873 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 23:34:02,875.875 INFO    ] No camera update needed
[2026-06-12 23:34:02,878.878 INFO    ] Script finished. Safe exiting...
[2026-06-12 23:34:02,880.880 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 23:34:02,885.885 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 23:34:02,890.890 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 23:34:04,930.930 INFO    ] ================================================
[2026-06-12 23:34:04,945.945 INFO    ] Launching Daemon at Fri Jun 12 23:34:04 IST 2026
[2026-06-12 23:34:04,957.957 INFO    ] ================================================
[2026-06-12 23:34:05,287.287 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 23:34:05
[2026-06-12 23:34:05,615.615 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 23:34:05,747.747 INFO    ] Initializing speech engine...
[2026-06-12 23:34:05,760.760 INFO    ] 2026-06-12 23:34:05
[2026-06-12 23:34:05,968.968 INFO    ] 2026-06-12 23:34:05
[2026-06-12 23:34:05,996.996 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 23:34:06,180.180 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 23:34:06,190.190 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 23:34:06,329.329 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 23:34:06,386.386 INFO    ] time= 12/06/2026 23:34:06
[2026-06-12 23:34:06,409.409 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 23:34:06,415.415 INFO    ] Checking for existing commands in stream...
[2026-06-12 23:34:06,482.482 INFO    ] No existing commands found in stream
[2026-06-12 23:34:11,491.491 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 23:34:11,494.494 INFO    ] Waiting 2.64 seconds before fallback handling...
[2026-06-12 23:34:14,521.521 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 23:34:14,523.523 INFO    ] Checking for system updates...
[2026-06-12 23:34:14,543.543 INFO    ] 200
[2026-06-12 23:34:14,544.544 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:34:14,574.574 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 23:34:14,576.576 INFO    ] No update needed
[2026-06-12 23:34:14,577.577 INFO    ] Checking for camera pi updates...
[2026-06-12 23:34:14,596.596 INFO    ] 200
[2026-06-12 23:34:14,598.598 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:34:14,623.623 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 23:34:14,665.665 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 23:34:14,666.666 INFO    ] No camera update needed
[2026-06-12 23:34:14,667.667 INFO    ] Script finished. Safe exiting...
[2026-06-12 23:34:14,669.669 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 23:34:14,672.672 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 23:34:14,674.674 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 23:34:16,712.712 INFO    ] ================================================
[2026-06-12 23:34:16,728.728 INFO    ] Launching Daemon at Fri Jun 12 23:34:16 IST 2026
[2026-06-12 23:34:16,739.739 INFO    ] ================================================
[2026-06-12 23:34:17,096.096 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 23:34:17
[2026-06-12 23:34:17,407.407 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 23:34:17,548.548 INFO    ] Initializing speech engine...
[2026-06-12 23:34:17,554.554 INFO    ] 2026-06-12 23:34:17
[2026-06-12 23:34:17,754.754 INFO    ] 2026-06-12 23:34:17
[2026-06-12 23:34:17,783.783 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 23:34:17,904.904 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 23:34:17,967.967 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 23:34:18,105.105 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 23:34:18,172.172 INFO    ] time= 12/06/2026 23:34:18
[2026-06-12 23:34:18,195.195 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 23:34:18,201.201 INFO    ] Checking for existing commands in stream...
[2026-06-12 23:34:18,268.268 INFO    ] No existing commands found in stream
[2026-06-12 23:34:23,282.282 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 23:34:23,284.284 INFO    ] Waiting 2.56 seconds before fallback handling...
[2026-06-12 23:34:26,227.227 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 23:34:26,229.229 INFO    ] Checking for system updates...
[2026-06-12 23:34:26,249.249 INFO    ] 200
[2026-06-12 23:34:26,251.251 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:34:26,282.282 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 23:34:26,284.284 INFO    ] No update needed
[2026-06-12 23:34:26,285.285 INFO    ] Checking for camera pi updates...
[2026-06-12 23:34:26,305.305 INFO    ] 200
[2026-06-12 23:34:26,306.306 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:34:26,329.329 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 23:34:26,382.382 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 23:34:26,384.384 INFO    ] No camera update needed
[2026-06-12 23:34:26,385.385 INFO    ] Script finished. Safe exiting...
[2026-06-12 23:34:26,386.386 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 23:34:26,389.389 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 23:34:26,393.393 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 23:34:28,432.432 INFO    ] ================================================
[2026-06-12 23:34:28,447.447 INFO    ] Launching Daemon at Fri Jun 12 23:34:28 IST 2026
[2026-06-12 23:34:28,459.459 INFO    ] ================================================
[2026-06-12 23:34:28,802.802 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 23:34:28
[2026-06-12 23:34:29,114.114 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 23:34:29,263.263 INFO    ] Initializing speech engine...
[2026-06-12 23:34:29,268.268 INFO    ] 2026-06-12 23:34:29
[2026-06-12 23:34:29,473.473 INFO    ] 2026-06-12 23:34:29
[2026-06-12 23:34:29,503.503 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 23:34:29,688.688 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 23:34:29,692.692 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 23:34:29,822.822 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 23:34:29,873.873 INFO    ] time= 12/06/2026 23:34:29
[2026-06-12 23:34:29,913.913 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 23:34:29,923.923 INFO    ] Checking for existing commands in stream...
[2026-06-12 23:34:29,995.995 INFO    ] No existing commands found in stream
[2026-06-12 23:34:35,014.014 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 23:34:35,017.017 INFO    ] Waiting 3.00 seconds before fallback handling...
[2026-06-12 23:34:38,383.383 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 23:34:38,384.384 INFO    ] Checking for system updates...
[2026-06-12 23:34:38,405.405 INFO    ] 200
[2026-06-12 23:34:38,406.406 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:34:38,437.437 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 23:34:38,438.438 INFO    ] No update needed
[2026-06-12 23:34:38,440.440 INFO    ] Checking for camera pi updates...
[2026-06-12 23:34:38,459.459 INFO    ] 200
[2026-06-12 23:34:38,461.461 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:34:38,483.483 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 23:34:38,524.524 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 23:34:38,525.525 INFO    ] No camera update needed
[2026-06-12 23:34:38,527.527 INFO    ] Script finished. Safe exiting...
[2026-06-12 23:34:38,528.528 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 23:34:38,531.531 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 23:34:38,534.534 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 23:34:40,572.572 INFO    ] ================================================
[2026-06-12 23:34:40,587.587 INFO    ] Launching Daemon at Fri Jun 12 23:34:40 IST 2026
[2026-06-12 23:34:40,598.598 INFO    ] ================================================
[2026-06-12 23:34:40,938.938 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 23:34:40
[2026-06-12 23:34:41,251.251 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 23:34:41,381.381 INFO    ] Initializing speech engine...
[2026-06-12 23:34:41,385.385 INFO    ] 2026-06-12 23:34:41
[2026-06-12 23:34:41,600.600 INFO    ] 2026-06-12 23:34:41
[2026-06-12 23:34:41,629.629 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 23:34:41,813.813 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 23:34:41,822.822 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 23:34:41,951.951 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 23:34:42,018.018 INFO    ] time= 12/06/2026 23:34:41
[2026-06-12 23:34:42,042.042 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 23:34:42,049.049 INFO    ] Checking for existing commands in stream...
[2026-06-12 23:34:42,139.139 INFO    ] No existing commands found in stream
[2026-06-12 23:34:47,148.148 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 23:34:47,151.151 INFO    ] Waiting 1.07 seconds before fallback handling...
[2026-06-12 23:34:48,578.578 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 23:34:48,579.579 INFO    ] Checking for system updates...
[2026-06-12 23:34:48,600.600 INFO    ] 200
[2026-06-12 23:34:48,601.601 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:34:48,633.633 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 23:34:48,634.634 INFO    ] No update needed
[2026-06-12 23:34:48,636.636 INFO    ] Checking for camera pi updates...
[2026-06-12 23:34:48,655.655 INFO    ] 200
[2026-06-12 23:34:48,656.656 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:34:48,679.679 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 23:34:48,737.737 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 23:34:48,739.739 INFO    ] No camera update needed
[2026-06-12 23:34:48,740.740 INFO    ] Script finished. Safe exiting...
[2026-06-12 23:34:48,741.741 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 23:34:48,744.744 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 23:34:48,747.747 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 23:34:50,784.784 INFO    ] ================================================
[2026-06-12 23:34:50,800.800 INFO    ] Launching Daemon at Fri Jun 12 23:34:50 IST 2026
[2026-06-12 23:34:50,811.811 INFO    ] ================================================
[2026-06-12 23:34:51,144.144 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 23:34:51
[2026-06-12 23:34:51,455.455 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 23:34:51,592.592 INFO    ] Initializing speech engine...
[2026-06-12 23:34:51,602.602 INFO    ] 2026-06-12 23:34:51
[2026-06-12 23:34:51,807.807 INFO    ] 2026-06-12 23:34:51
[2026-06-12 23:34:51,836.836 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 23:34:52,020.020 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 23:34:52,030.030 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 23:34:52,162.162 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 23:34:52,229.229 INFO    ] time= 12/06/2026 23:34:52
[2026-06-12 23:34:52,253.253 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 23:34:52,260.260 INFO    ] Checking for existing commands in stream...
[2026-06-12 23:34:52,327.327 INFO    ] No existing commands found in stream
[2026-06-12 23:34:57,335.335 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 23:34:57,337.337 INFO    ] Waiting 3.82 seconds before fallback handling...
[2026-06-12 23:35:01,541.541 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 23:35:01,544.544 INFO    ] Checking for system updates...
[2026-06-12 23:35:01,657.657 INFO    ] 200
[2026-06-12 23:35:01,660.660 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:35:01,727.727 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 23:35:01,729.729 INFO    ] No update needed
[2026-06-12 23:35:01,731.731 INFO    ] Checking for camera pi updates...
[2026-06-12 23:35:01,783.783 INFO    ] 200
[2026-06-12 23:35:01,785.785 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:35:01,830.830 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 23:35:01,871.871 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 23:35:01,873.873 INFO    ] No camera update needed
[2026-06-12 23:35:01,875.875 INFO    ] Script finished. Safe exiting...
[2026-06-12 23:35:01,877.877 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 23:35:01,881.881 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 23:35:01,885.885 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 23:35:03,923.923 INFO    ] ================================================
[2026-06-12 23:35:03,938.938 INFO    ] Launching Daemon at Fri Jun 12 23:35:03 IST 2026
[2026-06-12 23:35:03,949.949 INFO    ] ================================================
[2026-06-12 23:35:04,289.289 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 23:35:04
[2026-06-12 23:35:04,601.601 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 23:35:04,733.733 INFO    ] Initializing speech engine...
[2026-06-12 23:35:04,736.736 INFO    ] 2026-06-12 23:35:04
[2026-06-12 23:35:04,955.955 INFO    ] 2026-06-12 23:35:04
[2026-06-12 23:35:04,985.985 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 23:35:05,173.173 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 23:35:05,183.183 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 23:35:05,309.309 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 23:35:05,362.362 INFO    ] time= 12/06/2026 23:35:05
[2026-06-12 23:35:05,402.402 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 23:35:05,408.408 INFO    ] Checking for existing commands in stream...
[2026-06-12 23:35:05,481.481 INFO    ] No existing commands found in stream
[2026-06-12 23:35:10,495.495 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 23:35:10,498.498 INFO    ] Waiting 1.91 seconds before fallback handling...
[2026-06-12 23:35:12,754.754 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 23:35:12,755.755 INFO    ] Checking for system updates...
[2026-06-12 23:35:12,776.776 INFO    ] 200
[2026-06-12 23:35:12,777.777 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:35:12,807.807 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 23:35:12,808.808 INFO    ] No update needed
[2026-06-12 23:35:12,810.810 INFO    ] Checking for camera pi updates...
[2026-06-12 23:35:12,830.830 INFO    ] 200
[2026-06-12 23:35:12,832.832 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:35:12,855.855 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 23:35:12,896.896 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 23:35:12,898.898 INFO    ] No camera update needed
[2026-06-12 23:35:12,899.899 INFO    ] Script finished. Safe exiting...
[2026-06-12 23:35:12,900.900 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 23:35:12,903.903 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 23:35:12,906.906 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 23:35:14,944.944 INFO    ] ================================================
[2026-06-12 23:35:14,960.960 INFO    ] Launching Daemon at Fri Jun 12 23:35:14 IST 2026
[2026-06-12 23:35:14,971.971 INFO    ] ================================================
[2026-06-12 23:35:15,336.336 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 23:35:15
[2026-06-12 23:35:15,668.668 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 23:35:15,826.826 INFO    ] Initializing speech engine...
[2026-06-12 23:35:15,829.829 INFO    ] 2026-06-12 23:35:15
[2026-06-12 23:35:16,035.035 INFO    ] 2026-06-12 23:35:16
[2026-06-12 23:35:16,064.064 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 23:35:16,247.247 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 23:35:16,257.257 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 23:35:16,383.383 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 23:35:16,435.435 INFO    ] time= 12/06/2026 23:35:16
[2026-06-12 23:35:16,470.470 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 23:35:16,480.480 INFO    ] Checking for existing commands in stream...
[2026-06-12 23:35:16,552.552 INFO    ] No existing commands found in stream
[2026-06-12 23:35:21,566.566 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 23:35:21,570.570 INFO    ] Waiting 2.50 seconds before fallback handling...
[2026-06-12 23:35:24,437.437 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 23:35:24,438.438 INFO    ] Checking for system updates...
[2026-06-12 23:35:24,459.459 INFO    ] 200
[2026-06-12 23:35:24,460.460 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:35:24,490.490 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 23:35:24,491.491 INFO    ] No update needed
[2026-06-12 23:35:24,492.492 INFO    ] Checking for camera pi updates...
[2026-06-12 23:35:24,512.512 INFO    ] 200
[2026-06-12 23:35:24,513.513 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:35:24,536.536 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 23:35:24,583.583 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 23:35:24,585.585 INFO    ] No camera update needed
[2026-06-12 23:35:24,586.586 INFO    ] Script finished. Safe exiting...
[2026-06-12 23:35:24,587.587 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 23:35:24,590.590 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 23:35:24,593.593 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 23:35:26,632.632 INFO    ] ================================================
[2026-06-12 23:35:26,647.647 INFO    ] Launching Daemon at Fri Jun 12 23:35:26 IST 2026
[2026-06-12 23:35:26,659.659 INFO    ] ================================================
[2026-06-12 23:35:26,994.994 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 23:35:26
[2026-06-12 23:35:27,305.305 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 23:35:27,447.447 INFO    ] Initializing speech engine...
[2026-06-12 23:35:27,452.452 INFO    ] 2026-06-12 23:35:27
[2026-06-12 23:35:27,654.654 INFO    ] 2026-06-12 23:35:27
[2026-06-12 23:35:27,683.683 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 23:35:27,866.866 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 23:35:27,869.869 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 23:35:27,997.997 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 23:35:28,052.052 INFO    ] time= 12/06/2026 23:35:28
[2026-06-12 23:35:28,094.094 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 23:35:28,101.101 INFO    ] Checking for existing commands in stream...
[2026-06-12 23:35:28,166.166 INFO    ] No existing commands found in stream
[2026-06-12 23:35:33,176.176 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 23:35:33,179.179 INFO    ] Waiting 1.16 seconds before fallback handling...
[2026-06-12 23:35:34,695.695 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 23:35:34,696.696 INFO    ] Checking for system updates...
[2026-06-12 23:35:34,718.718 INFO    ] 200
[2026-06-12 23:35:34,719.719 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:35:34,751.751 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 23:35:34,752.752 INFO    ] No update needed
[2026-06-12 23:35:34,753.753 INFO    ] Checking for camera pi updates...
[2026-06-12 23:35:34,774.774 INFO    ] 200
[2026-06-12 23:35:34,775.775 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:35:34,800.800 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 23:35:34,842.842 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 23:35:34,844.844 INFO    ] No camera update needed
[2026-06-12 23:35:34,845.845 INFO    ] Script finished. Safe exiting...
[2026-06-12 23:35:34,846.846 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 23:35:34,849.849 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 23:35:34,852.852 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 23:35:36,891.891 INFO    ] ================================================
[2026-06-12 23:35:36,907.907 INFO    ] Launching Daemon at Fri Jun 12 23:35:36 IST 2026
[2026-06-12 23:35:36,918.918 INFO    ] ================================================
[2026-06-12 23:35:37,285.285 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 23:35:37
[2026-06-12 23:35:37,597.597 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 23:35:37,739.739 INFO    ] Initializing speech engine...
[2026-06-12 23:35:37,743.743 INFO    ] 2026-06-12 23:35:37
[2026-06-12 23:35:37,947.947 INFO    ] 2026-06-12 23:35:37
[2026-06-12 23:35:37,974.974 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 23:35:38,156.156 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 23:35:38,166.166 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 23:35:38,294.294 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 23:35:38,358.358 INFO    ] time= 12/06/2026 23:35:38
[2026-06-12 23:35:38,385.385 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 23:35:38,391.391 INFO    ] Checking for existing commands in stream...
[2026-06-12 23:35:38,458.458 INFO    ] No existing commands found in stream
[2026-06-12 23:35:43,472.472 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 23:35:43,475.475 INFO    ] Waiting 3.15 seconds before fallback handling...
[2026-06-12 23:35:46,973.973 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 23:35:46,974.974 INFO    ] Checking for system updates...
[2026-06-12 23:35:46,996.996 INFO    ] 200
[2026-06-12 23:35:46,998.998 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:35:47,028.028 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 23:35:47,029.029 INFO    ] No update needed
[2026-06-12 23:35:47,031.031 INFO    ] Checking for camera pi updates...
[2026-06-12 23:35:47,050.050 INFO    ] 200
[2026-06-12 23:35:47,052.052 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:35:47,076.076 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 23:35:47,216.216 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 23:35:47,218.218 INFO    ] No camera update needed
[2026-06-12 23:35:47,220.220 INFO    ] Script finished. Safe exiting...
[2026-06-12 23:35:47,222.222 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 23:35:47,227.227 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 23:35:47,232.232 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 23:35:49,255.255 INFO    ] ================================================
[2026-06-12 23:35:49,264.264 INFO    ] Launching Daemon at Fri Jun 12 23:35:49 IST 2026
[2026-06-12 23:35:49,270.270 INFO    ] ================================================
[2026-06-12 23:35:49,620.620 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 23:35:49
[2026-06-12 23:35:49,933.933 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 23:35:50,068.068 INFO    ] Initializing speech engine...
[2026-06-12 23:35:50,072.072 INFO    ] 2026-06-12 23:35:50
[2026-06-12 23:35:50,298.298 INFO    ] 2026-06-12 23:35:50
[2026-06-12 23:35:50,328.328 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 23:35:50,524.524 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 23:35:50,535.535 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 23:35:50,669.669 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 23:35:50,720.720 INFO    ] time= 12/06/2026 23:35:50
[2026-06-12 23:35:50,769.769 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 23:35:50,775.775 INFO    ] Checking for existing commands in stream...
[2026-06-12 23:35:50,852.852 INFO    ] No existing commands found in stream
[2026-06-12 23:35:55,861.861 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 23:35:55,864.864 INFO    ] Waiting 0.55 seconds before fallback handling...
[2026-06-12 23:35:56,782.782 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 23:35:56,784.784 INFO    ] Checking for system updates...
[2026-06-12 23:35:56,805.805 INFO    ] 200
[2026-06-12 23:35:56,806.806 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:35:56,838.838 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 23:35:56,840.840 INFO    ] No update needed
[2026-06-12 23:35:56,841.841 INFO    ] Checking for camera pi updates...
[2026-06-12 23:35:56,862.862 INFO    ] 200
[2026-06-12 23:35:56,863.863 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:35:56,887.887 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 23:35:56,937.937 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 23:35:56,938.938 INFO    ] No camera update needed
[2026-06-12 23:35:56,940.940 INFO    ] Script finished. Safe exiting...
[2026-06-12 23:35:56,941.941 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 23:35:56,944.944 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 23:35:56,946.946 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 23:35:58,985.985 INFO    ] ================================================
[2026-06-12 23:35:59,001.001 INFO    ] Launching Daemon at Fri Jun 12 23:35:58 IST 2026
[2026-06-12 23:35:59,012.012 INFO    ] ================================================
[2026-06-12 23:35:59,378.378 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 23:35:59
[2026-06-12 23:35:59,689.689 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 23:35:59,821.821 INFO    ] Initializing speech engine...
[2026-06-12 23:35:59,826.826 INFO    ] 2026-06-12 23:35:59
[2026-06-12 23:36:00,053.053 INFO    ] 2026-06-12 23:36:00
[2026-06-12 23:36:00,084.084 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 23:36:00,215.215 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 23:36:00,243.243 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 23:36:00,397.397 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 23:36:00,426.426 INFO    ] time= 12/06/2026 23:36:00
[2026-06-12 23:36:00,482.482 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 23:36:00,510.510 INFO    ] Checking for existing commands in stream...
[2026-06-12 23:36:00,607.607 INFO    ] No existing commands found in stream
[2026-06-12 23:36:05,640.640 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 23:36:05,642.642 INFO    ] Waiting 3.29 seconds before fallback handling...
[2026-06-12 23:36:09,271.271 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 23:36:09,273.273 INFO    ] Checking for system updates...
[2026-06-12 23:36:09,293.293 INFO    ] 200
[2026-06-12 23:36:09,294.294 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:36:09,326.326 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 23:36:09,327.327 INFO    ] No update needed
[2026-06-12 23:36:09,329.329 INFO    ] Checking for camera pi updates...
[2026-06-12 23:36:09,348.348 INFO    ] 200
[2026-06-12 23:36:09,349.349 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:36:09,372.372 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 23:36:09,416.416 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 23:36:09,417.417 INFO    ] No camera update needed
[2026-06-12 23:36:09,418.418 INFO    ] Script finished. Safe exiting...
[2026-06-12 23:36:09,420.420 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 23:36:09,423.423 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 23:36:09,425.425 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 23:36:11,467.467 INFO    ] ================================================
[2026-06-12 23:36:11,483.483 INFO    ] Launching Daemon at Fri Jun 12 23:36:11 IST 2026
[2026-06-12 23:36:11,495.495 INFO    ] ================================================
[2026-06-12 23:36:11,825.825 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 23:36:11
[2026-06-12 23:36:12,156.156 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 23:36:12,307.307 INFO    ] Initializing speech engine...
[2026-06-12 23:36:12,312.312 INFO    ] 2026-06-12 23:36:12
[2026-06-12 23:36:12,521.521 INFO    ] 2026-06-12 23:36:12
[2026-06-12 23:36:12,550.550 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 23:36:12,675.675 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 23:36:12,738.738 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 23:36:12,879.879 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 23:36:12,938.938 INFO    ] time= 12/06/2026 23:36:12
[2026-06-12 23:36:12,971.971 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 23:36:12,978.978 INFO    ] Checking for existing commands in stream...
[2026-06-12 23:36:13,046.046 INFO    ] No existing commands found in stream
[2026-06-12 23:36:18,055.055 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 23:36:18,058.058 INFO    ] Waiting 0.53 seconds before fallback handling...
[2026-06-12 23:36:18,972.972 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 23:36:18,973.973 INFO    ] Checking for system updates...
[2026-06-12 23:36:18,994.994 INFO    ] 200
[2026-06-12 23:36:18,995.995 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:36:19,027.027 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 23:36:19,028.028 INFO    ] No update needed
[2026-06-12 23:36:19,030.030 INFO    ] Checking for camera pi updates...
[2026-06-12 23:36:19,053.053 INFO    ] 200
[2026-06-12 23:36:19,054.054 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:36:19,081.081 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 23:36:19,131.131 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 23:36:19,132.132 INFO    ] No camera update needed
[2026-06-12 23:36:19,134.134 INFO    ] Script finished. Safe exiting...
[2026-06-12 23:36:19,135.135 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 23:36:19,138.138 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 23:36:19,141.141 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 23:36:21,180.180 INFO    ] ================================================
[2026-06-12 23:36:21,195.195 INFO    ] Launching Daemon at Fri Jun 12 23:36:21 IST 2026
[2026-06-12 23:36:21,206.206 INFO    ] ================================================
[2026-06-12 23:36:21,541.541 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 23:36:21
[2026-06-12 23:36:21,851.851 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 23:36:21,983.983 INFO    ] Initializing speech engine...
[2026-06-12 23:36:21,988.988 INFO    ] 2026-06-12 23:36:21
[2026-06-12 23:36:22,214.214 INFO    ] 2026-06-12 23:36:22
[2026-06-12 23:36:22,245.245 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 23:36:22,440.440 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 23:36:22,443.443 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 23:36:22,580.580 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 23:36:22,641.641 INFO    ] time= 12/06/2026 23:36:22
[2026-06-12 23:36:22,675.675 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 23:36:22,686.686 INFO    ] Checking for existing commands in stream...
[2026-06-12 23:36:22,787.787 INFO    ] No existing commands found in stream
[2026-06-12 23:36:27,795.795 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 23:36:27,798.798 INFO    ] Waiting 1.89 seconds before fallback handling...
[2026-06-12 23:36:30,048.048 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 23:36:30,049.049 INFO    ] Checking for system updates...
[2026-06-12 23:36:30,071.071 INFO    ] 200
[2026-06-12 23:36:30,072.072 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:36:30,102.102 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 23:36:30,104.104 INFO    ] No update needed
[2026-06-12 23:36:30,105.105 INFO    ] Checking for camera pi updates...
[2026-06-12 23:36:30,124.124 INFO    ] 200
[2026-06-12 23:36:30,125.125 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:36:30,148.148 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 23:36:30,191.191 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 23:36:30,192.192 INFO    ] No camera update needed
[2026-06-12 23:36:30,194.194 INFO    ] Script finished. Safe exiting...
[2026-06-12 23:36:30,195.195 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 23:36:30,198.198 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 23:36:30,201.201 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 23:36:32,235.235 INFO    ] ================================================
[2026-06-12 23:36:32,244.244 INFO    ] Launching Daemon at Fri Jun 12 23:36:32 IST 2026
[2026-06-12 23:36:32,252.252 INFO    ] ================================================
[2026-06-12 23:36:32,597.597 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 23:36:32
[2026-06-12 23:36:32,924.924 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 23:36:33,073.073 INFO    ] Initializing speech engine...
[2026-06-12 23:36:33,078.078 INFO    ] 2026-06-12 23:36:33
[2026-06-12 23:36:33,292.292 INFO    ] 2026-06-12 23:36:33
[2026-06-12 23:36:33,323.323 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 23:36:33,450.450 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 23:36:33,515.515 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 23:36:33,651.651 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 23:36:33,706.706 INFO    ] time= 12/06/2026 23:36:33
[2026-06-12 23:36:33,748.748 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 23:36:33,754.754 INFO    ] Checking for existing commands in stream...
[2026-06-12 23:36:33,827.827 INFO    ] No existing commands found in stream
[2026-06-12 23:36:38,836.836 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 23:36:38,839.839 INFO    ] Waiting 1.63 seconds before fallback handling...
[2026-06-12 23:36:40,828.828 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 23:36:40,830.830 INFO    ] Checking for system updates...
[2026-06-12 23:36:40,852.852 INFO    ] 200
[2026-06-12 23:36:40,853.853 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:36:40,883.883 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 23:36:40,885.885 INFO    ] No update needed
[2026-06-12 23:36:40,886.886 INFO    ] Checking for camera pi updates...
[2026-06-12 23:36:40,905.905 INFO    ] 200
[2026-06-12 23:36:40,906.906 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:36:40,930.930 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 23:36:40,979.979 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 23:36:40,981.981 INFO    ] No camera update needed
[2026-06-12 23:36:40,982.982 INFO    ] Script finished. Safe exiting...
[2026-06-12 23:36:40,983.983 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 23:36:40,986.986 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 23:36:40,989.989 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 23:36:43,028.028 INFO    ] ================================================
[2026-06-12 23:36:43,043.043 INFO    ] Launching Daemon at Fri Jun 12 23:36:43 IST 2026
[2026-06-12 23:36:43,054.054 INFO    ] ================================================
[2026-06-12 23:36:43,381.381 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 23:36:43
[2026-06-12 23:36:43,697.697 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 23:36:43,840.840 INFO    ] Initializing speech engine...
[2026-06-12 23:36:43,846.846 INFO    ] 2026-06-12 23:36:43
[2026-06-12 23:36:44,048.048 INFO    ] 2026-06-12 23:36:44
[2026-06-12 23:36:44,077.077 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 23:36:44,261.261 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 23:36:44,264.264 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 23:36:44,397.397 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 23:36:44,458.458 INFO    ] time= 12/06/2026 23:36:44
[2026-06-12 23:36:44,489.489 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 23:36:44,496.496 INFO    ] Checking for existing commands in stream...
[2026-06-12 23:36:44,563.563 INFO    ] No existing commands found in stream
[2026-06-12 23:36:49,577.577 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 23:36:49,580.580 INFO    ] Waiting 2.39 seconds before fallback handling...
[2026-06-12 23:36:52,348.348 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 23:36:52,350.350 INFO    ] Checking for system updates...
[2026-06-12 23:36:52,372.372 INFO    ] 200
[2026-06-12 23:36:52,374.374 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:36:52,406.406 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 23:36:52,407.407 INFO    ] No update needed
[2026-06-12 23:36:52,408.408 INFO    ] Checking for camera pi updates...
[2026-06-12 23:36:52,428.428 INFO    ] 200
[2026-06-12 23:36:52,429.429 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:36:52,454.454 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 23:36:52,501.501 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 23:36:52,503.503 INFO    ] No camera update needed
[2026-06-12 23:36:52,504.504 INFO    ] Script finished. Safe exiting...
[2026-06-12 23:36:52,505.505 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 23:36:52,508.508 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 23:36:52,511.511 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 23:36:54,552.552 INFO    ] ================================================
[2026-06-12 23:36:54,567.567 INFO    ] Launching Daemon at Fri Jun 12 23:36:54 IST 2026
[2026-06-12 23:36:54,577.577 INFO    ] ================================================
[2026-06-12 23:36:54,926.926 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 23:36:54
[2026-06-12 23:36:55,242.242 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 23:36:55,373.373 INFO    ] Initializing speech engine...
[2026-06-12 23:36:55,382.382 INFO    ] 2026-06-12 23:36:55
[2026-06-12 23:36:55,594.594 INFO    ] 2026-06-12 23:36:55
[2026-06-12 23:36:55,623.623 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 23:36:55,806.806 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 23:36:55,815.815 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 23:36:55,937.937 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 23:36:55,998.998 INFO    ] time= 12/06/2026 23:36:55
[2026-06-12 23:36:56,027.027 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 23:36:56,037.037 INFO    ] Checking for existing commands in stream...
[2026-06-12 23:36:56,107.107 INFO    ] No existing commands found in stream
[2026-06-12 23:37:01,117.117 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 23:37:01,120.120 INFO    ] Waiting 3.96 seconds before fallback handling...
[2026-06-12 23:37:05,465.465 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 23:37:05,466.466 INFO    ] Checking for system updates...
[2026-06-12 23:37:05,487.487 INFO    ] 200
[2026-06-12 23:37:05,488.488 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:37:05,518.518 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 23:37:05,520.520 INFO    ] No update needed
[2026-06-12 23:37:05,521.521 INFO    ] Checking for camera pi updates...
[2026-06-12 23:37:05,543.543 INFO    ] 200
[2026-06-12 23:37:05,544.544 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:37:05,571.571 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 23:37:05,618.618 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 23:37:05,619.619 INFO    ] No camera update needed
[2026-06-12 23:37:05,621.621 INFO    ] Script finished. Safe exiting...
[2026-06-12 23:37:05,622.622 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 23:37:05,625.625 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 23:37:05,628.628 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 23:37:07,665.665 INFO    ] ================================================
[2026-06-12 23:37:07,681.681 INFO    ] Launching Daemon at Fri Jun 12 23:37:07 IST 2026
[2026-06-12 23:37:07,692.692 INFO    ] ================================================
[2026-06-12 23:37:08,033.033 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 23:37:08
[2026-06-12 23:37:08,350.350 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 23:37:08,493.493 INFO    ] Initializing speech engine...
[2026-06-12 23:37:08,501.501 INFO    ] 2026-06-12 23:37:08
[2026-06-12 23:37:08,721.721 INFO    ] 2026-06-12 23:37:08
[2026-06-12 23:37:08,752.752 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 23:37:08,951.951 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 23:37:08,955.955 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 23:37:09,095.095 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 23:37:09,146.146 INFO    ] time= 12/06/2026 23:37:09
[2026-06-12 23:37:09,181.181 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 23:37:09,204.204 INFO    ] Checking for existing commands in stream...
[2026-06-12 23:37:09,282.282 INFO    ] No existing commands found in stream
[2026-06-12 23:37:14,291.291 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 23:37:14,294.294 INFO    ] Waiting 1.37 seconds before fallback handling...
[2026-06-12 23:37:16,049.049 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 23:37:16,050.050 INFO    ] Checking for system updates...
[2026-06-12 23:37:16,071.071 INFO    ] 200
[2026-06-12 23:37:16,073.073 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:37:16,102.102 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 23:37:16,104.104 INFO    ] No update needed
[2026-06-12 23:37:16,105.105 INFO    ] Checking for camera pi updates...
[2026-06-12 23:37:16,124.124 INFO    ] 200
[2026-06-12 23:37:16,126.126 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:37:16,151.151 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 23:37:16,203.203 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 23:37:16,205.205 INFO    ] No camera update needed
[2026-06-12 23:37:16,206.206 INFO    ] Script finished. Safe exiting...
[2026-06-12 23:37:16,207.207 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 23:37:16,211.211 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 23:37:16,213.213 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 23:37:18,251.251 INFO    ] ================================================
[2026-06-12 23:37:18,266.266 INFO    ] Launching Daemon at Fri Jun 12 23:37:18 IST 2026
[2026-06-12 23:37:18,277.277 INFO    ] ================================================
[2026-06-12 23:37:18,636.636 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 23:37:18
[2026-06-12 23:37:18,953.953 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 23:37:19,087.087 INFO    ] Initializing speech engine...
[2026-06-12 23:37:19,092.092 INFO    ] 2026-06-12 23:37:19
[2026-06-12 23:37:19,323.323 INFO    ] 2026-06-12 23:37:19
[2026-06-12 23:37:19,354.354 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 23:37:19,485.485 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 23:37:19,535.535 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 23:37:19,702.702 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 23:37:19,760.760 INFO    ] time= 12/06/2026 23:37:19
[2026-06-12 23:37:19,800.800 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 23:37:19,807.807 INFO    ] Checking for existing commands in stream...
[2026-06-12 23:37:19,881.881 INFO    ] No existing commands found in stream
[2026-06-12 23:37:24,892.892 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 23:37:24,895.895 INFO    ] Waiting 1.78 seconds before fallback handling...
[2026-06-12 23:37:27,075.075 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 23:37:27,077.077 INFO    ] Checking for system updates...
[2026-06-12 23:37:27,099.099 INFO    ] 200
[2026-06-12 23:37:27,100.100 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:37:27,130.130 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 23:37:27,131.131 INFO    ] No update needed
[2026-06-12 23:37:27,133.133 INFO    ] Checking for camera pi updates...
[2026-06-12 23:37:27,153.153 INFO    ] 200
[2026-06-12 23:37:27,155.155 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:37:27,179.179 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 23:37:27,225.225 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 23:37:27,226.226 INFO    ] No camera update needed
[2026-06-12 23:37:27,228.228 INFO    ] Script finished. Safe exiting...
[2026-06-12 23:37:27,229.229 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 23:37:27,232.232 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 23:37:27,235.235 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 23:37:29,266.266 INFO    ] ================================================
[2026-06-12 23:37:29,282.282 INFO    ] Launching Daemon at Fri Jun 12 23:37:29 IST 2026
[2026-06-12 23:37:29,292.292 INFO    ] ================================================
[2026-06-12 23:37:29,631.631 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 23:37:29
[2026-06-12 23:37:29,944.944 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 23:37:30,074.074 INFO    ] Initializing speech engine...
[2026-06-12 23:37:30,082.082 INFO    ] 2026-06-12 23:37:30
[2026-06-12 23:37:30,292.292 INFO    ] 2026-06-12 23:37:30
[2026-06-12 23:37:30,322.322 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 23:37:30,508.508 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 23:37:30,517.517 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 23:37:30,646.646 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 23:37:30,710.710 INFO    ] time= 12/06/2026 23:37:30
[2026-06-12 23:37:30,738.738 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 23:37:30,744.744 INFO    ] Checking for existing commands in stream...
[2026-06-12 23:37:30,811.811 INFO    ] No existing commands found in stream
[2026-06-12 23:37:35,820.820 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 23:37:35,823.823 INFO    ] Waiting 1.27 seconds before fallback handling...
[2026-06-12 23:37:37,456.456 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 23:37:37,457.457 INFO    ] Checking for system updates...
[2026-06-12 23:37:37,478.478 INFO    ] 200
[2026-06-12 23:37:37,480.480 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:37:37,510.510 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 23:37:37,511.511 INFO    ] No update needed
[2026-06-12 23:37:37,512.512 INFO    ] Checking for camera pi updates...
[2026-06-12 23:37:37,533.533 INFO    ] 200
[2026-06-12 23:37:37,534.534 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:37:37,558.558 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 23:37:37,589.589 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 23:37:37,591.591 INFO    ] No camera update needed
[2026-06-12 23:37:37,592.592 INFO    ] Script finished. Safe exiting...
[2026-06-12 23:37:37,593.593 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 23:37:37,596.596 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 23:37:37,599.599 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 23:37:39,637.637 INFO    ] ================================================
[2026-06-12 23:37:39,652.652 INFO    ] Launching Daemon at Fri Jun 12 23:37:39 IST 2026
[2026-06-12 23:37:39,663.663 INFO    ] ================================================
[2026-06-12 23:37:40,017.017 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 23:37:40
[2026-06-12 23:37:40,332.332 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 23:37:40,465.465 INFO    ] Initializing speech engine...
[2026-06-12 23:37:40,473.473 INFO    ] 2026-06-12 23:37:40
[2026-06-12 23:37:40,685.685 INFO    ] 2026-06-12 23:37:40
[2026-06-12 23:37:40,713.713 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 23:37:40,896.896 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 23:37:40,899.899 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 23:37:41,032.032 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 23:37:41,098.098 INFO    ] time= 12/06/2026 23:37:41
[2026-06-12 23:37:41,125.125 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 23:37:41,131.131 INFO    ] Checking for existing commands in stream...
[2026-06-12 23:37:41,198.198 INFO    ] No existing commands found in stream
[2026-06-12 23:37:46,212.212 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 23:37:46,214.214 INFO    ] Waiting 0.10 seconds before fallback handling...
[2026-06-12 23:37:46,665.665 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 23:37:46,667.667 INFO    ] Checking for system updates...
[2026-06-12 23:37:46,688.688 INFO    ] 200
[2026-06-12 23:37:46,689.689 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:37:46,719.719 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 23:37:46,721.721 INFO    ] No update needed
[2026-06-12 23:37:46,722.722 INFO    ] Checking for camera pi updates...
[2026-06-12 23:37:46,741.741 INFO    ] 200
[2026-06-12 23:37:46,742.742 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:37:46,769.769 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 23:37:46,824.824 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 23:37:46,825.825 INFO    ] No camera update needed
[2026-06-12 23:37:46,826.826 INFO    ] Script finished. Safe exiting...
[2026-06-12 23:37:46,828.828 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 23:37:46,831.831 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 23:37:46,833.833 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 23:37:48,874.874 INFO    ] ================================================
[2026-06-12 23:37:48,888.888 INFO    ] Launching Daemon at Fri Jun 12 23:37:48 IST 2026
[2026-06-12 23:37:48,900.900 INFO    ] ================================================
[2026-06-12 23:37:49,223.223 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 23:37:49
[2026-06-12 23:37:49,535.535 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 23:37:49,680.680 INFO    ] Initializing speech engine...
[2026-06-12 23:37:49,685.685 INFO    ] 2026-06-12 23:37:49
[2026-06-12 23:37:49,888.888 INFO    ] 2026-06-12 23:37:49
[2026-06-12 23:37:49,917.917 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 23:37:50,055.055 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 23:37:50,103.103 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 23:37:50,238.238 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 23:37:50,304.304 INFO    ] time= 12/06/2026 23:37:50
[2026-06-12 23:37:50,342.342 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 23:37:50,345.345 INFO    ] Checking for existing commands in stream...
[2026-06-12 23:37:50,441.441 INFO    ] No existing commands found in stream
[2026-06-12 23:37:55,455.455 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 23:37:55,458.458 INFO    ] Waiting 3.41 seconds before fallback handling...
[2026-06-12 23:37:59,211.211 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 23:37:59,213.213 INFO    ] Checking for system updates...
[2026-06-12 23:37:59,234.234 INFO    ] 200
[2026-06-12 23:37:59,235.235 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:37:59,265.265 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 23:37:59,266.266 INFO    ] No update needed
[2026-06-12 23:37:59,267.267 INFO    ] Checking for camera pi updates...
[2026-06-12 23:37:59,288.288 INFO    ] 200
[2026-06-12 23:37:59,289.289 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:37:59,312.312 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 23:37:59,437.437 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 23:37:59,438.438 INFO    ] No camera update needed
[2026-06-12 23:37:59,439.439 INFO    ] Script finished. Safe exiting...
[2026-06-12 23:37:59,441.441 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 23:37:59,444.444 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 23:37:59,446.446 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 23:38:01,487.487 INFO    ] ================================================
[2026-06-12 23:38:01,501.501 INFO    ] Launching Daemon at Fri Jun 12 23:38:01 IST 2026
[2026-06-12 23:38:01,510.510 INFO    ] ================================================
[2026-06-12 23:38:01,921.921 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 23:38:01
[2026-06-12 23:38:02,292.292 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 23:38:02,445.445 INFO    ] Initializing speech engine...
[2026-06-12 23:38:02,449.449 INFO    ] 2026-06-12 23:38:02
[2026-06-12 23:38:02,656.656 INFO    ] 2026-06-12 23:38:02
[2026-06-12 23:38:02,685.685 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 23:38:02,818.818 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 23:38:02,872.872 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 23:38:03,018.018 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 23:38:03,081.081 INFO    ] time= 12/06/2026 23:38:03
[2026-06-12 23:38:03,105.105 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 23:38:03,111.111 INFO    ] Checking for existing commands in stream...
[2026-06-12 23:38:03,179.179 INFO    ] No existing commands found in stream
[2026-06-12 23:38:08,193.193 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 23:38:08,196.196 INFO    ] Waiting 3.09 seconds before fallback handling...
[2026-06-12 23:38:11,632.632 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 23:38:11,634.634 INFO    ] Checking for system updates...
[2026-06-12 23:38:11,657.657 INFO    ] 200
[2026-06-12 23:38:11,659.659 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:38:11,692.692 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 23:38:11,693.693 INFO    ] No update needed
[2026-06-12 23:38:11,695.695 INFO    ] Checking for camera pi updates...
[2026-06-12 23:38:11,716.716 INFO    ] 200
[2026-06-12 23:38:11,717.717 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:38:11,741.741 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 23:38:11,798.798 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 23:38:11,799.799 INFO    ] No camera update needed
[2026-06-12 23:38:11,800.800 INFO    ] Script finished. Safe exiting...
[2026-06-12 23:38:11,802.802 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 23:38:11,804.804 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 23:38:11,807.807 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 23:38:13,845.845 INFO    ] ================================================
[2026-06-12 23:38:13,860.860 INFO    ] Launching Daemon at Fri Jun 12 23:38:13 IST 2026
[2026-06-12 23:38:13,871.871 INFO    ] ================================================
[2026-06-12 23:38:14,262.262 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 23:38:14
[2026-06-12 23:38:14,587.587 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 23:38:14,728.728 INFO    ] Initializing speech engine...
[2026-06-12 23:38:14,734.734 INFO    ] 2026-06-12 23:38:14
[2026-06-12 23:38:14,940.940 INFO    ] 2026-06-12 23:38:14
[2026-06-12 23:38:14,969.969 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 23:38:15,153.153 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 23:38:15,162.162 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 23:38:15,292.292 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 23:38:15,315.315 INFO    ] time= 12/06/2026 23:38:15
[2026-06-12 23:38:15,317.317 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 23:38:15,318.318 INFO    ] Checking for existing commands in stream...
[2026-06-12 23:38:15,381.381 INFO    ] No existing commands found in stream
[2026-06-12 23:38:20,390.390 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 23:38:20,392.392 INFO    ] Waiting 3.66 seconds before fallback handling...
[2026-06-12 23:38:24,409.409 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 23:38:24,411.411 INFO    ] Checking for system updates...
[2026-06-12 23:38:24,432.432 INFO    ] 200
[2026-06-12 23:38:24,434.434 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:38:24,465.465 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 23:38:24,467.467 INFO    ] No update needed
[2026-06-12 23:38:24,468.468 INFO    ] Checking for camera pi updates...
[2026-06-12 23:38:24,488.488 INFO    ] 200
[2026-06-12 23:38:24,490.490 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:38:24,512.512 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 23:38:24,568.568 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 23:38:24,570.570 INFO    ] No camera update needed
[2026-06-12 23:38:24,571.571 INFO    ] Script finished. Safe exiting...
[2026-06-12 23:38:24,572.572 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 23:38:24,575.575 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 23:38:24,578.578 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 23:38:26,615.615 INFO    ] ================================================
[2026-06-12 23:38:26,631.631 INFO    ] Launching Daemon at Fri Jun 12 23:38:26 IST 2026
[2026-06-12 23:38:26,642.642 INFO    ] ================================================
[2026-06-12 23:38:26,974.974 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 23:38:26
[2026-06-12 23:38:27,284.284 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 23:38:27,419.419 INFO    ] Initializing speech engine...
[2026-06-12 23:38:27,432.432 INFO    ] 2026-06-12 23:38:27
[2026-06-12 23:38:27,650.650 INFO    ] 2026-06-12 23:38:27
[2026-06-12 23:38:27,681.681 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 23:38:27,875.875 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 23:38:27,886.886 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 23:38:28,021.021 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 23:38:28,068.068 INFO    ] time= 12/06/2026 23:38:28
[2026-06-12 23:38:28,100.100 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 23:38:28,123.123 INFO    ] Checking for existing commands in stream...
[2026-06-12 23:38:28,198.198 INFO    ] No existing commands found in stream
[2026-06-12 23:38:33,208.208 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 23:38:33,211.211 INFO    ] Waiting 1.11 seconds before fallback handling...
[2026-06-12 23:38:34,728.728 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 23:38:34,730.730 INFO    ] Checking for system updates...
[2026-06-12 23:38:34,751.751 INFO    ] 200
[2026-06-12 23:38:34,752.752 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:38:34,784.784 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 23:38:34,785.785 INFO    ] No update needed
[2026-06-12 23:38:34,786.786 INFO    ] Checking for camera pi updates...
[2026-06-12 23:38:34,806.806 INFO    ] 200
[2026-06-12 23:38:34,807.807 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:38:34,830.830 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 23:38:34,872.872 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 23:38:34,873.873 INFO    ] No camera update needed
[2026-06-12 23:38:34,874.874 INFO    ] Script finished. Safe exiting...
[2026-06-12 23:38:34,875.875 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 23:38:34,878.878 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 23:38:34,881.881 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 23:38:36,920.920 INFO    ] ================================================
[2026-06-12 23:38:36,936.936 INFO    ] Launching Daemon at Fri Jun 12 23:38:36 IST 2026
[2026-06-12 23:38:36,947.947 INFO    ] ================================================
[2026-06-12 23:38:37,277.277 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 23:38:37
[2026-06-12 23:38:37,590.590 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 23:38:37,732.732 INFO    ] Initializing speech engine...
[2026-06-12 23:38:37,737.737 INFO    ] 2026-06-12 23:38:37
[2026-06-12 23:38:37,943.943 INFO    ] 2026-06-12 23:38:37
[2026-06-12 23:38:37,971.971 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 23:38:38,153.153 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 23:38:38,162.162 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 23:38:38,342.342 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 23:38:38,379.379 INFO    ] time= 12/06/2026 23:38:38
[2026-06-12 23:38:38,385.385 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 23:38:38,387.387 INFO    ] Checking for existing commands in stream...
[2026-06-12 23:38:38,454.454 INFO    ] No existing commands found in stream
[2026-06-12 23:38:43,468.468 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 23:38:43,472.472 INFO    ] Waiting 0.66 seconds before fallback handling...
[2026-06-12 23:38:44,534.534 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 23:38:44,535.535 INFO    ] Checking for system updates...
[2026-06-12 23:38:44,556.556 INFO    ] 200
[2026-06-12 23:38:44,557.557 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:38:44,588.588 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 23:38:44,589.589 INFO    ] No update needed
[2026-06-12 23:38:44,591.591 INFO    ] Checking for camera pi updates...
[2026-06-12 23:38:44,611.611 INFO    ] 200
[2026-06-12 23:38:44,613.613 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:38:44,640.640 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 23:38:44,687.687 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 23:38:44,688.688 INFO    ] No camera update needed
[2026-06-12 23:38:44,690.690 INFO    ] Script finished. Safe exiting...
[2026-06-12 23:38:44,691.691 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 23:38:44,694.694 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 23:38:44,697.697 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 23:38:46,735.735 INFO    ] ================================================
[2026-06-12 23:38:46,751.751 INFO    ] Launching Daemon at Fri Jun 12 23:38:46 IST 2026
[2026-06-12 23:38:46,763.763 INFO    ] ================================================
[2026-06-12 23:38:47,120.120 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 23:38:47
[2026-06-12 23:38:47,456.456 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 23:38:47,607.607 INFO    ] Initializing speech engine...
[2026-06-12 23:38:47,613.613 INFO    ] 2026-06-12 23:38:47
[2026-06-12 23:38:47,823.823 INFO    ] 2026-06-12 23:38:47
[2026-06-12 23:38:47,852.852 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 23:38:48,039.039 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 23:38:48,048.048 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 23:38:48,179.179 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 23:38:48,243.243 INFO    ] time= 12/06/2026 23:38:48
[2026-06-12 23:38:48,272.272 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 23:38:48,278.278 INFO    ] Checking for existing commands in stream...
[2026-06-12 23:38:48,346.346 INFO    ] No existing commands found in stream
[2026-06-12 23:38:53,355.355 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 23:38:53,359.359 INFO    ] Waiting 2.03 seconds before fallback handling...
[2026-06-12 23:38:55,747.747 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 23:38:55,748.748 INFO    ] Checking for system updates...
[2026-06-12 23:38:55,770.770 INFO    ] 200
[2026-06-12 23:38:55,772.772 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:38:55,807.807 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 23:38:55,809.809 INFO    ] No update needed
[2026-06-12 23:38:55,810.810 INFO    ] Checking for camera pi updates...
[2026-06-12 23:38:55,830.830 INFO    ] 200
[2026-06-12 23:38:55,831.831 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:38:55,854.854 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 23:38:55,897.897 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 23:38:55,898.898 INFO    ] No camera update needed
[2026-06-12 23:38:55,900.900 INFO    ] Script finished. Safe exiting...
[2026-06-12 23:38:55,901.901 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 23:38:55,905.905 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 23:38:55,907.907 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 23:38:57,946.946 INFO    ] ================================================
[2026-06-12 23:38:57,962.962 INFO    ] Launching Daemon at Fri Jun 12 23:38:57 IST 2026
[2026-06-12 23:38:57,973.973 INFO    ] ================================================
[2026-06-12 23:38:58,333.333 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 23:38:58
[2026-06-12 23:38:58,645.645 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 23:38:58,776.776 INFO    ] Initializing speech engine...
[2026-06-12 23:38:58,779.779 INFO    ] 2026-06-12 23:38:58
[2026-06-12 23:38:58,999.999 INFO    ] 2026-06-12 23:38:58
[2026-06-12 23:38:59,027.027 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 23:38:59,167.167 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 23:38:59,215.215 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 23:38:59,355.355 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 23:38:59,423.423 INFO    ] time= 12/06/2026 23:38:59
[2026-06-12 23:38:59,447.447 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 23:38:59,449.449 INFO    ] Checking for existing commands in stream...
[2026-06-12 23:38:59,522.522 INFO    ] No existing commands found in stream
[2026-06-12 23:39:04,532.532 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 23:39:04,535.535 INFO    ] Waiting 2.07 seconds before fallback handling...
[2026-06-12 23:39:06,985.985 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 23:39:06,987.987 INFO    ] Checking for system updates...
[2026-06-12 23:39:07,008.008 INFO    ] 200
[2026-06-12 23:39:07,009.009 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:39:07,042.042 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 23:39:07,043.043 INFO    ] No update needed
[2026-06-12 23:39:07,045.045 INFO    ] Checking for camera pi updates...
[2026-06-12 23:39:07,068.068 INFO    ] 200
[2026-06-12 23:39:07,069.069 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:39:07,092.092 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 23:39:07,147.147 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 23:39:07,148.148 INFO    ] No camera update needed
[2026-06-12 23:39:07,149.149 INFO    ] Script finished. Safe exiting...
[2026-06-12 23:39:07,151.151 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 23:39:07,154.154 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 23:39:07,156.156 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 23:39:09,197.197 INFO    ] ================================================
[2026-06-12 23:39:09,212.212 INFO    ] Launching Daemon at Fri Jun 12 23:39:09 IST 2026
[2026-06-12 23:39:09,223.223 INFO    ] ================================================
[2026-06-12 23:39:09,612.612 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 23:39:09
[2026-06-12 23:39:09,949.949 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 23:39:10,101.101 INFO    ] Initializing speech engine...
[2026-06-12 23:39:10,107.107 INFO    ] 2026-06-12 23:39:10
[2026-06-12 23:39:10,316.316 INFO    ] 2026-06-12 23:39:10
[2026-06-12 23:39:10,345.345 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 23:39:10,480.480 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 23:39:10,534.534 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 23:39:10,674.674 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 23:39:10,743.743 INFO    ] time= 12/06/2026 23:39:10
[2026-06-12 23:39:10,767.767 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 23:39:10,774.774 INFO    ] Checking for existing commands in stream...
[2026-06-12 23:39:10,842.842 INFO    ] No existing commands found in stream
[2026-06-12 23:39:15,847.847 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 23:39:15,850.850 INFO    ] Waiting 1.14 seconds before fallback handling...
[2026-06-12 23:39:17,310.310 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 23:39:17,312.312 INFO    ] Checking for system updates...
[2026-06-12 23:39:17,336.336 INFO    ] 200
[2026-06-12 23:39:17,338.338 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:39:17,374.374 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 23:39:17,377.377 INFO    ] No update needed
[2026-06-12 23:39:17,378.378 INFO    ] Checking for camera pi updates...
[2026-06-12 23:39:17,405.405 INFO    ] 200
[2026-06-12 23:39:17,407.407 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:39:17,439.439 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 23:39:17,492.492 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 23:39:17,494.494 INFO    ] No camera update needed
[2026-06-12 23:39:17,496.496 INFO    ] Script finished. Safe exiting...
[2026-06-12 23:39:17,498.498 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 23:39:17,502.502 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 23:39:17,505.505 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 23:39:19,529.529 INFO    ] ================================================
[2026-06-12 23:39:19,538.538 INFO    ] Launching Daemon at Fri Jun 12 23:39:19 IST 2026
[2026-06-12 23:39:19,546.546 INFO    ] ================================================
[2026-06-12 23:39:19,861.861 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 23:39:19
[2026-06-12 23:39:20,173.173 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 23:39:20,306.306 INFO    ] Initializing speech engine...
[2026-06-12 23:39:20,309.309 INFO    ] 2026-06-12 23:39:20
[2026-06-12 23:39:20,541.541 INFO    ] 2026-06-12 23:39:20
[2026-06-12 23:39:20,564.564 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 23:39:20,708.708 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 23:39:20,770.770 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 23:39:20,901.901 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 23:39:20,965.965 INFO    ] time= 12/06/2026 23:39:20
[2026-06-12 23:39:21,014.014 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 23:39:21,046.046 INFO    ] Checking for existing commands in stream...
[2026-06-12 23:39:21,123.123 INFO    ] No existing commands found in stream
[2026-06-12 23:39:26,134.134 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 23:39:26,136.136 INFO    ] Waiting 0.60 seconds before fallback handling...
[2026-06-12 23:39:27,106.106 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 23:39:27,107.107 INFO    ] Checking for system updates...
[2026-06-12 23:39:27,128.128 INFO    ] 200
[2026-06-12 23:39:27,129.129 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:39:27,159.159 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 23:39:27,160.160 INFO    ] No update needed
[2026-06-12 23:39:27,162.162 INFO    ] Checking for camera pi updates...
[2026-06-12 23:39:27,181.181 INFO    ] 200
[2026-06-12 23:39:27,182.182 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:39:27,205.205 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 23:39:27,270.270 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 23:39:27,272.272 INFO    ] No camera update needed
[2026-06-12 23:39:27,273.273 INFO    ] Script finished. Safe exiting...
[2026-06-12 23:39:27,274.274 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 23:39:27,277.277 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 23:39:27,280.280 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 23:39:29,318.318 INFO    ] ================================================
[2026-06-12 23:39:29,333.333 INFO    ] Launching Daemon at Fri Jun 12 23:39:29 IST 2026
[2026-06-12 23:39:29,343.343 INFO    ] ================================================
[2026-06-12 23:39:29,702.702 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 23:39:29
[2026-06-12 23:39:30,039.039 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 23:39:30,189.189 INFO    ] Initializing speech engine...
[2026-06-12 23:39:30,194.194 INFO    ] 2026-06-12 23:39:30
[2026-06-12 23:39:30,401.401 INFO    ] 2026-06-12 23:39:30
[2026-06-12 23:39:30,429.429 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 23:39:30,593.593 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 23:39:30,617.617 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 23:39:30,747.747 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 23:39:30,808.808 INFO    ] time= 12/06/2026 23:39:30
[2026-06-12 23:39:30,843.843 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 23:39:30,849.849 INFO    ] Checking for existing commands in stream...
[2026-06-12 23:39:30,921.921 INFO    ] No existing commands found in stream
[2026-06-12 23:39:35,930.930 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 23:39:35,933.933 INFO    ] Waiting 2.60 seconds before fallback handling...
[2026-06-12 23:39:38,944.944 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 23:39:38,946.946 INFO    ] Checking for system updates...
[2026-06-12 23:39:38,967.967 INFO    ] 200
[2026-06-12 23:39:38,968.968 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:39:39,003.003 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 23:39:39,004.004 INFO    ] No update needed
[2026-06-12 23:39:39,005.005 INFO    ] Checking for camera pi updates...
[2026-06-12 23:39:39,026.026 INFO    ] 200
[2026-06-12 23:39:39,027.027 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:39:39,051.051 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 23:39:39,091.091 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 23:39:39,092.092 INFO    ] No camera update needed
[2026-06-12 23:39:39,093.093 INFO    ] Script finished. Safe exiting...
[2026-06-12 23:39:39,095.095 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 23:39:39,099.099 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 23:39:39,102.102 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 23:39:41,139.139 INFO    ] ================================================
[2026-06-12 23:39:41,154.154 INFO    ] Launching Daemon at Fri Jun 12 23:39:41 IST 2026
[2026-06-12 23:39:41,165.165 INFO    ] ================================================
[2026-06-12 23:39:41,533.533 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 23:39:41
[2026-06-12 23:39:41,848.848 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 23:39:41,981.981 INFO    ] Initializing speech engine...
[2026-06-12 23:39:41,985.985 INFO    ] 2026-06-12 23:39:41
[2026-06-12 23:39:42,189.189 INFO    ] 2026-06-12 23:39:42
[2026-06-12 23:39:42,221.221 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 23:39:42,378.378 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 23:39:42,418.418 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 23:39:42,589.589 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 23:39:42,657.657 INFO    ] time= 12/06/2026 23:39:42
[2026-06-12 23:39:42,692.692 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 23:39:42,698.698 INFO    ] Checking for existing commands in stream...
[2026-06-12 23:39:42,775.775 INFO    ] No existing commands found in stream
[2026-06-12 23:39:47,789.789 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 23:39:47,792.792 INFO    ] Waiting 3.99 seconds before fallback handling...
[2026-06-12 23:39:52,179.179 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 23:39:52,181.181 INFO    ] Checking for system updates...
[2026-06-12 23:39:52,203.203 INFO    ] 200
[2026-06-12 23:39:52,204.204 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:39:52,239.239 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 23:39:52,240.240 INFO    ] No update needed
[2026-06-12 23:39:52,242.242 INFO    ] Checking for camera pi updates...
[2026-06-12 23:39:52,261.261 INFO    ] 200
[2026-06-12 23:39:52,263.263 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:39:52,287.287 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 23:39:52,349.349 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 23:39:52,351.351 INFO    ] No camera update needed
[2026-06-12 23:39:52,352.352 INFO    ] Script finished. Safe exiting...
[2026-06-12 23:39:52,353.353 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 23:39:52,356.356 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 23:39:52,359.359 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 23:39:54,398.398 INFO    ] ================================================
[2026-06-12 23:39:54,413.413 INFO    ] Launching Daemon at Fri Jun 12 23:39:54 IST 2026
[2026-06-12 23:39:54,424.424 INFO    ] ================================================
[2026-06-12 23:39:54,776.776 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 23:39:54
[2026-06-12 23:39:55,087.087 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 23:39:55,229.229 INFO    ] Initializing speech engine...
[2026-06-12 23:39:55,234.234 INFO    ] 2026-06-12 23:39:55
[2026-06-12 23:39:55,437.437 INFO    ] 2026-06-12 23:39:55
[2026-06-12 23:39:55,465.465 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 23:39:55,647.647 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 23:39:55,657.657 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 23:39:55,785.785 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 23:39:55,852.852 INFO    ] time= 12/06/2026 23:39:55
[2026-06-12 23:39:55,876.876 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 23:39:55,882.882 INFO    ] Checking for existing commands in stream...
[2026-06-12 23:39:55,948.948 INFO    ] No existing commands found in stream
[2026-06-12 23:40:00,957.957 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 23:40:00,960.960 INFO    ] Waiting 0.58 seconds before fallback handling...
[2026-06-12 23:40:01,963.963 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 23:40:01,965.965 INFO    ] Checking for system updates...
[2026-06-12 23:40:02,005.005 INFO    ] 200
[2026-06-12 23:40:02,007.007 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:40:02,077.077 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 23:40:02,080.080 INFO    ] No update needed
[2026-06-12 23:40:02,082.082 INFO    ] Checking for camera pi updates...
[2026-06-12 23:40:02,117.117 INFO    ] 200
[2026-06-12 23:40:02,119.119 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:40:02,154.154 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 23:40:02,303.303 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 23:40:02,304.304 INFO    ] No camera update needed
[2026-06-12 23:40:02,306.306 INFO    ] Script finished. Safe exiting...
[2026-06-12 23:40:02,308.308 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 23:40:02,314.314 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 23:40:02,319.319 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 23:40:04,362.362 INFO    ] ================================================
[2026-06-12 23:40:04,379.379 INFO    ] Launching Daemon at Fri Jun 12 23:40:04 IST 2026
[2026-06-12 23:40:04,389.389 INFO    ] ================================================
[2026-06-12 23:40:04,750.750 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 23:40:04
[2026-06-12 23:40:05,085.085 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 23:40:05,235.235 INFO    ] Initializing speech engine...
[2026-06-12 23:40:05,240.240 INFO    ] 2026-06-12 23:40:05
[2026-06-12 23:40:05,445.445 INFO    ] 2026-06-12 23:40:05
[2026-06-12 23:40:05,474.474 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 23:40:05,659.659 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 23:40:05,669.669 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 23:40:05,809.809 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 23:40:05,866.866 INFO    ] time= 12/06/2026 23:40:05
[2026-06-12 23:40:05,889.889 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 23:40:05,896.896 INFO    ] Checking for existing commands in stream...
[2026-06-12 23:40:05,968.968 INFO    ] No existing commands found in stream
[2026-06-12 23:40:11,001.001 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 23:40:11,004.004 INFO    ] Waiting 0.87 seconds before fallback handling...
[2026-06-12 23:40:12,233.233 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 23:40:12,235.235 INFO    ] Checking for system updates...
[2026-06-12 23:40:12,255.255 INFO    ] 200
[2026-06-12 23:40:12,257.257 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:40:12,287.287 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 23:40:12,288.288 INFO    ] No update needed
[2026-06-12 23:40:12,290.290 INFO    ] Checking for camera pi updates...
[2026-06-12 23:40:12,310.310 INFO    ] 200
[2026-06-12 23:40:12,312.312 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:40:12,337.337 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 23:40:12,379.379 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 23:40:12,381.381 INFO    ] No camera update needed
[2026-06-12 23:40:12,383.383 INFO    ] Script finished. Safe exiting...
[2026-06-12 23:40:12,384.384 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 23:40:12,387.387 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 23:40:12,390.390 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 23:40:14,429.429 INFO    ] ================================================
[2026-06-12 23:40:14,445.445 INFO    ] Launching Daemon at Fri Jun 12 23:40:14 IST 2026
[2026-06-12 23:40:14,456.456 INFO    ] ================================================
[2026-06-12 23:40:14,814.814 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 23:40:14
[2026-06-12 23:40:15,126.126 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 23:40:15,268.268 INFO    ] Initializing speech engine...
[2026-06-12 23:40:15,274.274 INFO    ] 2026-06-12 23:40:15
[2026-06-12 23:40:15,480.480 INFO    ] 2026-06-12 23:40:15
[2026-06-12 23:40:15,508.508 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 23:40:15,694.694 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 23:40:15,704.704 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 23:40:15,831.831 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 23:40:15,883.883 INFO    ] time= 12/06/2026 23:40:15
[2026-06-12 23:40:15,927.927 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 23:40:15,929.929 INFO    ] Checking for existing commands in stream...
[2026-06-12 23:40:16,000.000 INFO    ] No existing commands found in stream
[2026-06-12 23:40:21,009.009 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 23:40:21,012.012 INFO    ] Waiting 3.84 seconds before fallback handling...
[2026-06-12 23:40:25,209.209 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 23:40:25,210.210 INFO    ] Checking for system updates...
[2026-06-12 23:40:25,232.232 INFO    ] 200
[2026-06-12 23:40:25,233.233 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:40:25,263.263 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 23:40:25,265.265 INFO    ] No update needed
[2026-06-12 23:40:25,266.266 INFO    ] Checking for camera pi updates...
[2026-06-12 23:40:25,286.286 INFO    ] 200
[2026-06-12 23:40:25,288.288 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:40:25,310.310 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 23:40:25,357.357 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 23:40:25,358.358 INFO    ] No camera update needed
[2026-06-12 23:40:25,359.359 INFO    ] Script finished. Safe exiting...
[2026-06-12 23:40:25,361.361 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 23:40:25,364.364 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 23:40:25,366.366 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 23:40:27,406.406 INFO    ] ================================================
[2026-06-12 23:40:27,421.421 INFO    ] Launching Daemon at Fri Jun 12 23:40:27 IST 2026
[2026-06-12 23:40:27,431.431 INFO    ] ================================================
[2026-06-12 23:40:27,807.807 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 23:40:27
[2026-06-12 23:40:28,142.142 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 23:40:28,293.293 INFO    ] Initializing speech engine...
[2026-06-12 23:40:28,298.298 INFO    ] 2026-06-12 23:40:28
[2026-06-12 23:40:28,509.509 INFO    ] 2026-06-12 23:40:28
[2026-06-12 23:40:28,538.538 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 23:40:28,662.662 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 23:40:28,725.725 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 23:40:28,863.863 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 23:40:28,925.925 INFO    ] time= 12/06/2026 23:40:28
[2026-06-12 23:40:28,958.958 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 23:40:28,965.965 INFO    ] Checking for existing commands in stream...
[2026-06-12 23:40:29,032.032 INFO    ] No existing commands found in stream
[2026-06-12 23:40:34,047.047 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 23:40:34,050.050 INFO    ] Waiting 2.08 seconds before fallback handling...
[2026-06-12 23:40:36,514.514 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 23:40:36,515.515 INFO    ] Checking for system updates...
[2026-06-12 23:40:36,540.540 INFO    ] 200
[2026-06-12 23:40:36,542.542 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:40:36,572.572 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 23:40:36,574.574 INFO    ] No update needed
[2026-06-12 23:40:36,575.575 INFO    ] Checking for camera pi updates...
[2026-06-12 23:40:36,595.595 INFO    ] 200
[2026-06-12 23:40:36,597.597 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:40:36,622.622 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 23:40:36,666.666 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 23:40:36,667.667 INFO    ] No camera update needed
[2026-06-12 23:40:36,669.669 INFO    ] Script finished. Safe exiting...
[2026-06-12 23:40:36,670.670 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 23:40:36,674.674 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 23:40:36,677.677 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 23:40:38,714.714 INFO    ] ================================================
[2026-06-12 23:40:38,729.729 INFO    ] Launching Daemon at Fri Jun 12 23:40:38 IST 2026
[2026-06-12 23:40:38,740.740 INFO    ] ================================================
[2026-06-12 23:40:39,072.072 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 23:40:39
[2026-06-12 23:40:39,397.397 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 23:40:39,541.541 INFO    ] Initializing speech engine...
[2026-06-12 23:40:39,546.546 INFO    ] 2026-06-12 23:40:39
[2026-06-12 23:40:39,750.750 INFO    ] 2026-06-12 23:40:39
[2026-06-12 23:40:39,778.778 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 23:40:39,901.901 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 23:40:39,963.963 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 23:40:40,096.096 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 23:40:40,164.164 INFO    ] time= 12/06/2026 23:40:40
[2026-06-12 23:40:40,190.190 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 23:40:40,196.196 INFO    ] Checking for existing commands in stream...
[2026-06-12 23:40:40,263.263 INFO    ] No existing commands found in stream
[2026-06-12 23:40:45,277.277 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 23:40:45,280.280 INFO    ] Waiting 3.00 seconds before fallback handling...
[2026-06-12 23:40:48,652.652 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 23:40:48,653.653 INFO    ] Checking for system updates...
[2026-06-12 23:40:48,675.675 INFO    ] 200
[2026-06-12 23:40:48,676.676 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:40:48,706.706 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 23:40:48,708.708 INFO    ] No update needed
[2026-06-12 23:40:48,709.709 INFO    ] Checking for camera pi updates...
[2026-06-12 23:40:48,729.729 INFO    ] 200
[2026-06-12 23:40:48,731.731 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:40:48,756.756 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 23:40:48,805.805 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 23:40:48,807.807 INFO    ] No camera update needed
[2026-06-12 23:40:48,808.808 INFO    ] Script finished. Safe exiting...
[2026-06-12 23:40:48,810.810 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 23:40:48,813.813 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 23:40:48,816.816 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 23:40:50,854.854 INFO    ] ================================================
[2026-06-12 23:40:50,870.870 INFO    ] Launching Daemon at Fri Jun 12 23:40:50 IST 2026
[2026-06-12 23:40:50,881.881 INFO    ] ================================================
[2026-06-12 23:40:51,222.222 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 23:40:51
[2026-06-12 23:40:51,533.533 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 23:40:51,665.665 INFO    ] Initializing speech engine...
[2026-06-12 23:40:51,678.678 INFO    ] 2026-06-12 23:40:51
[2026-06-12 23:40:51,886.886 INFO    ] 2026-06-12 23:40:51
[2026-06-12 23:40:51,916.916 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 23:40:52,101.101 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 23:40:52,111.111 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 23:40:52,245.245 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 23:40:52,292.292 INFO    ] time= 12/06/2026 23:40:52
[2026-06-12 23:40:52,331.331 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 23:40:52,354.354 INFO    ] Checking for existing commands in stream...
[2026-06-12 23:40:52,429.429 INFO    ] No existing commands found in stream
[2026-06-12 23:40:57,440.440 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 23:40:57,443.443 INFO    ] Waiting 2.86 seconds before fallback handling...
[2026-06-12 23:41:00,673.673 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 23:41:00,675.675 INFO    ] Checking for system updates...
[2026-06-12 23:41:00,697.697 INFO    ] 200
[2026-06-12 23:41:00,699.699 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:41:00,732.732 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 23:41:00,734.734 INFO    ] No update needed
[2026-06-12 23:41:00,735.735 INFO    ] Checking for camera pi updates...
[2026-06-12 23:41:00,757.757 INFO    ] 200
[2026-06-12 23:41:00,759.759 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:41:00,784.784 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 23:41:00,827.827 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 23:41:00,828.828 INFO    ] No camera update needed
[2026-06-12 23:41:00,830.830 INFO    ] Script finished. Safe exiting...
[2026-06-12 23:41:00,831.831 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 23:41:00,834.834 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 23:41:00,837.837 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 23:41:02,868.868 INFO    ] ================================================
[2026-06-12 23:41:02,876.876 INFO    ] Launching Daemon at Fri Jun 12 23:41:02 IST 2026
[2026-06-12 23:41:02,882.882 INFO    ] ================================================
[2026-06-12 23:41:03,209.209 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 23:41:03
[2026-06-12 23:41:03,521.521 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 23:41:03,651.651 INFO    ] Initializing speech engine...
[2026-06-12 23:41:03,655.655 INFO    ] 2026-06-12 23:41:03
[2026-06-12 23:41:03,870.870 INFO    ] 2026-06-12 23:41:03
[2026-06-12 23:41:03,900.900 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 23:41:04,032.032 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 23:41:04,084.084 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 23:41:04,222.222 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 23:41:04,288.288 INFO    ] time= 12/06/2026 23:41:04
[2026-06-12 23:41:04,312.312 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 23:41:04,318.318 INFO    ] Checking for existing commands in stream...
[2026-06-12 23:41:04,385.385 INFO    ] No existing commands found in stream
[2026-06-12 23:41:09,400.400 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 23:41:09,402.402 INFO    ] Waiting 2.15 seconds before fallback handling...
[2026-06-12 23:41:11,893.893 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 23:41:11,894.894 INFO    ] Checking for system updates...
[2026-06-12 23:41:11,915.915 INFO    ] 200
[2026-06-12 23:41:11,916.916 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:41:11,946.946 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 23:41:11,947.947 INFO    ] No update needed
[2026-06-12 23:41:11,948.948 INFO    ] Checking for camera pi updates...
[2026-06-12 23:41:11,969.969 INFO    ] 200
[2026-06-12 23:41:11,970.970 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:41:11,993.993 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 23:41:12,039.039 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 23:41:12,041.041 INFO    ] No camera update needed
[2026-06-12 23:41:12,042.042 INFO    ] Script finished. Safe exiting...
[2026-06-12 23:41:12,043.043 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 23:41:12,046.046 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 23:41:12,049.049 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 23:41:14,087.087 INFO    ] ================================================
[2026-06-12 23:41:14,102.102 INFO    ] Launching Daemon at Fri Jun 12 23:41:14 IST 2026
[2026-06-12 23:41:14,114.114 INFO    ] ================================================
[2026-06-12 23:41:14,475.475 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 23:41:14
[2026-06-12 23:41:14,787.787 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 23:41:14,926.926 INFO    ] Initializing speech engine...
[2026-06-12 23:41:14,935.935 INFO    ] 2026-06-12 23:41:14
[2026-06-12 23:41:15,151.151 INFO    ] 2026-06-12 23:41:15
[2026-06-12 23:41:15,182.182 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 23:41:15,377.377 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 23:41:15,381.381 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 23:41:15,519.519 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 23:41:15,575.575 INFO    ] time= 12/06/2026 23:41:15
[2026-06-12 23:41:15,603.603 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 23:41:15,625.625 INFO    ] Checking for existing commands in stream...
[2026-06-12 23:41:15,701.701 INFO    ] No existing commands found in stream
[2026-06-12 23:41:20,710.710 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 23:41:20,713.713 INFO    ] Waiting 1.12 seconds before fallback handling...
[2026-06-12 23:41:22,213.213 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 23:41:22,214.214 INFO    ] Checking for system updates...
[2026-06-12 23:41:22,235.235 INFO    ] 200
[2026-06-12 23:41:22,236.236 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:41:22,273.273 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 23:41:22,275.275 INFO    ] No update needed
[2026-06-12 23:41:22,276.276 INFO    ] Checking for camera pi updates...
[2026-06-12 23:41:22,296.296 INFO    ] 200
[2026-06-12 23:41:22,298.298 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:41:22,321.321 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 23:41:22,367.367 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 23:41:22,369.369 INFO    ] No camera update needed
[2026-06-12 23:41:22,370.370 INFO    ] Script finished. Safe exiting...
[2026-06-12 23:41:22,371.371 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 23:41:22,374.374 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 23:41:22,377.377 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 23:41:24,415.415 INFO    ] ================================================
[2026-06-12 23:41:24,430.430 INFO    ] Launching Daemon at Fri Jun 12 23:41:24 IST 2026
[2026-06-12 23:41:24,441.441 INFO    ] ================================================
[2026-06-12 23:41:24,809.809 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 23:41:24
[2026-06-12 23:41:25,128.128 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 23:41:25,264.264 INFO    ] Initializing speech engine...
[2026-06-12 23:41:25,268.268 INFO    ] 2026-06-12 23:41:25
[2026-06-12 23:41:25,497.497 INFO    ] 2026-06-12 23:41:25
[2026-06-12 23:41:25,528.528 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 23:41:25,724.724 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 23:41:25,728.728 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 23:41:25,872.872 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 23:41:25,933.933 INFO    ] time= 12/06/2026 23:41:25
[2026-06-12 23:41:25,971.971 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 23:41:25,973.973 INFO    ] Checking for existing commands in stream...
[2026-06-12 23:41:26,048.048 INFO    ] No existing commands found in stream
[2026-06-12 23:41:31,059.059 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 23:41:31,062.062 INFO    ] Waiting 2.00 seconds before fallback handling...
[2026-06-12 23:41:33,420.420 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 23:41:33,422.422 INFO    ] Checking for system updates...
[2026-06-12 23:41:33,443.443 INFO    ] 200
[2026-06-12 23:41:33,444.444 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:41:33,474.474 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 23:41:33,476.476 INFO    ] No update needed
[2026-06-12 23:41:33,477.477 INFO    ] Checking for camera pi updates...
[2026-06-12 23:41:33,500.500 INFO    ] 200
[2026-06-12 23:41:33,501.501 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:41:33,525.525 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 23:41:33,571.571 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 23:41:33,573.573 INFO    ] No camera update needed
[2026-06-12 23:41:33,574.574 INFO    ] Script finished. Safe exiting...
[2026-06-12 23:41:33,575.575 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 23:41:33,578.578 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 23:41:33,581.581 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 23:41:35,621.621 INFO    ] ================================================
[2026-06-12 23:41:35,636.636 INFO    ] Launching Daemon at Fri Jun 12 23:41:35 IST 2026
[2026-06-12 23:41:35,647.647 INFO    ] ================================================
[2026-06-12 23:41:36,005.005 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 23:41:36
[2026-06-12 23:41:36,340.340 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 23:41:36,492.492 INFO    ] Initializing speech engine...
[2026-06-12 23:41:36,497.497 INFO    ] 2026-06-12 23:41:36
[2026-06-12 23:41:36,707.707 INFO    ] 2026-06-12 23:41:36
[2026-06-12 23:41:36,737.737 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 23:41:36,871.871 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 23:41:36,924.924 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 23:41:37,058.058 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 23:41:37,109.109 INFO    ] time= 12/06/2026 23:41:37
[2026-06-12 23:41:37,157.157 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 23:41:37,159.159 INFO    ] Checking for existing commands in stream...
[2026-06-12 23:41:37,232.232 INFO    ] No existing commands found in stream
[2026-06-12 23:41:42,251.251 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 23:41:42,255.255 INFO    ] Waiting 0.50 seconds before fallback handling...
[2026-06-12 23:41:43,109.109 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 23:41:43,111.111 INFO    ] Checking for system updates...
[2026-06-12 23:41:43,132.132 INFO    ] 200
[2026-06-12 23:41:43,134.134 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:41:43,166.166 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 23:41:43,168.168 INFO    ] No update needed
[2026-06-12 23:41:43,169.169 INFO    ] Checking for camera pi updates...
[2026-06-12 23:41:43,189.189 INFO    ] 200
[2026-06-12 23:41:43,191.191 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:41:43,215.215 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 23:41:43,256.256 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 23:41:43,258.258 INFO    ] No camera update needed
[2026-06-12 23:41:43,259.259 INFO    ] Script finished. Safe exiting...
[2026-06-12 23:41:43,261.261 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 23:41:43,264.264 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 23:41:43,267.267 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 23:41:45,304.304 INFO    ] ================================================
[2026-06-12 23:41:45,320.320 INFO    ] Launching Daemon at Fri Jun 12 23:41:45 IST 2026
[2026-06-12 23:41:45,331.331 INFO    ] ================================================
[2026-06-12 23:41:45,694.694 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 23:41:45
[2026-06-12 23:41:46,012.012 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 23:41:46,146.146 INFO    ] Initializing speech engine...
[2026-06-12 23:41:46,150.150 INFO    ] 2026-06-12 23:41:46
[2026-06-12 23:41:46,378.378 INFO    ] 2026-06-12 23:41:46
[2026-06-12 23:41:46,408.408 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 23:41:46,540.540 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 23:41:46,593.593 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 23:41:46,763.763 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 23:41:46,817.817 INFO    ] time= 12/06/2026 23:41:46
[2026-06-12 23:41:46,840.840 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 23:41:46,846.846 INFO    ] Checking for existing commands in stream...
[2026-06-12 23:41:46,913.913 INFO    ] No existing commands found in stream
[2026-06-12 23:41:51,927.927 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 23:41:51,930.930 INFO    ] Waiting 2.15 seconds before fallback handling...
[2026-06-12 23:41:54,429.429 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 23:41:54,430.430 INFO    ] Checking for system updates...
[2026-06-12 23:41:54,451.451 INFO    ] 200
[2026-06-12 23:41:54,452.452 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:41:54,484.484 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 23:41:54,486.486 INFO    ] No update needed
[2026-06-12 23:41:54,488.488 INFO    ] Checking for camera pi updates...
[2026-06-12 23:41:54,507.507 INFO    ] 200
[2026-06-12 23:41:54,509.509 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:41:54,534.534 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 23:41:54,581.581 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 23:41:54,583.583 INFO    ] No camera update needed
[2026-06-12 23:41:54,584.584 INFO    ] Script finished. Safe exiting...
[2026-06-12 23:41:54,585.585 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 23:41:54,589.589 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 23:41:54,592.592 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 23:41:56,631.631 INFO    ] ================================================
[2026-06-12 23:41:56,646.646 INFO    ] Launching Daemon at Fri Jun 12 23:41:56 IST 2026
[2026-06-12 23:41:56,657.657 INFO    ] ================================================
[2026-06-12 23:41:57,019.019 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 23:41:57
[2026-06-12 23:41:57,352.352 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 23:41:57,498.498 INFO    ] Initializing speech engine...
[2026-06-12 23:41:57,507.507 INFO    ] 2026-06-12 23:41:57
[2026-06-12 23:41:57,719.719 INFO    ] 2026-06-12 23:41:57
[2026-06-12 23:41:57,748.748 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 23:41:57,934.934 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 23:41:57,937.937 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 23:41:58,080.080 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 23:41:58,143.143 INFO    ] time= 12/06/2026 23:41:58
[2026-06-12 23:41:58,167.167 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 23:41:58,173.173 INFO    ] Checking for existing commands in stream...
[2026-06-12 23:41:58,241.241 INFO    ] No existing commands found in stream
[2026-06-12 23:42:03,256.256 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 23:42:03,259.259 INFO    ] Waiting 3.85 seconds before fallback handling...
[2026-06-12 23:42:07,518.518 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 23:42:07,519.519 INFO    ] Checking for system updates...
[2026-06-12 23:42:07,540.540 INFO    ] 200
[2026-06-12 23:42:07,542.542 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:42:07,576.576 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 23:42:07,577.577 INFO    ] No update needed
[2026-06-12 23:42:07,578.578 INFO    ] Checking for camera pi updates...
[2026-06-12 23:42:07,599.599 INFO    ] 200
[2026-06-12 23:42:07,601.601 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:42:07,624.624 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 23:42:07,778.778 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 23:42:07,779.779 INFO    ] No camera update needed
[2026-06-12 23:42:07,781.781 INFO    ] Script finished. Safe exiting...
[2026-06-12 23:42:07,782.782 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 23:42:07,785.785 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 23:42:07,788.788 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 23:42:09,826.826 INFO    ] ================================================
[2026-06-12 23:42:09,845.845 INFO    ] Launching Daemon at Fri Jun 12 23:42:09 IST 2026
[2026-06-12 23:42:09,855.855 INFO    ] ================================================
[2026-06-12 23:42:10,201.201 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 23:42:10
[2026-06-12 23:42:10,518.518 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 23:42:10,662.662 INFO    ] Initializing speech engine...
[2026-06-12 23:42:10,668.668 INFO    ] 2026-06-12 23:42:10
[2026-06-12 23:42:10,871.871 INFO    ] 2026-06-12 23:42:10
[2026-06-12 23:42:10,901.901 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 23:42:11,089.089 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 23:42:11,099.099 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 23:42:11,233.233 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 23:42:11,284.284 INFO    ] time= 12/06/2026 23:42:11
[2026-06-12 23:42:11,324.324 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 23:42:11,341.341 INFO    ] Checking for existing commands in stream...
[2026-06-12 23:42:11,464.464 INFO    ] No existing commands found in stream
[2026-06-12 23:42:16,478.478 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 23:42:16,481.481 INFO    ] Waiting 2.16 seconds before fallback handling...
[2026-06-12 23:42:19,037.037 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 23:42:19,039.039 INFO    ] Checking for system updates...
[2026-06-12 23:42:19,061.061 INFO    ] 200
[2026-06-12 23:42:19,063.063 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:42:19,093.093 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 23:42:19,094.094 INFO    ] No update needed
[2026-06-12 23:42:19,095.095 INFO    ] Checking for camera pi updates...
[2026-06-12 23:42:19,117.117 INFO    ] 200
[2026-06-12 23:42:19,118.118 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:42:19,143.143 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 23:42:19,194.194 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 23:42:19,196.196 INFO    ] No camera update needed
[2026-06-12 23:42:19,197.197 INFO    ] Script finished. Safe exiting...
[2026-06-12 23:42:19,198.198 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 23:42:19,201.201 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 23:42:19,204.204 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 23:42:21,242.242 INFO    ] ================================================
[2026-06-12 23:42:21,257.257 INFO    ] Launching Daemon at Fri Jun 12 23:42:21 IST 2026
[2026-06-12 23:42:21,268.268 INFO    ] ================================================
[2026-06-12 23:42:21,622.622 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 23:42:21
[2026-06-12 23:42:21,959.959 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 23:42:22,109.109 INFO    ] Initializing speech engine...
[2026-06-12 23:42:22,115.115 INFO    ] 2026-06-12 23:42:22
[2026-06-12 23:42:22,324.324 INFO    ] 2026-06-12 23:42:22
[2026-06-12 23:42:22,353.353 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 23:42:22,544.544 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 23:42:22,554.554 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 23:42:22,678.678 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 23:42:22,729.729 INFO    ] time= 12/06/2026 23:42:22
[2026-06-12 23:42:22,766.766 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 23:42:22,811.811 INFO    ] Checking for existing commands in stream...
[2026-06-12 23:42:22,901.901 INFO    ] No existing commands found in stream
[2026-06-12 23:42:27,915.915 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 23:42:27,919.919 INFO    ] Waiting 0.10 seconds before fallback handling...
[2026-06-12 23:42:28,392.392 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 23:42:28,393.393 INFO    ] Checking for system updates...
[2026-06-12 23:42:28,414.414 INFO    ] 200
[2026-06-12 23:42:28,415.415 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:42:28,446.446 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 23:42:28,447.447 INFO    ] No update needed
[2026-06-12 23:42:28,448.448 INFO    ] Checking for camera pi updates...
[2026-06-12 23:42:28,469.469 INFO    ] 200
[2026-06-12 23:42:28,471.471 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:42:28,495.495 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 23:42:28,538.538 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 23:42:28,539.539 INFO    ] No camera update needed
[2026-06-12 23:42:28,541.541 INFO    ] Script finished. Safe exiting...
[2026-06-12 23:42:28,542.542 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 23:42:28,545.545 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 23:42:28,548.548 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 23:42:30,580.580 INFO    ] ================================================
[2026-06-12 23:42:30,596.596 INFO    ] Launching Daemon at Fri Jun 12 23:42:30 IST 2026
[2026-06-12 23:42:30,607.607 INFO    ] ================================================
[2026-06-12 23:42:30,961.961 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 23:42:30
[2026-06-12 23:42:31,274.274 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 23:42:31,430.430 INFO    ] Initializing speech engine...
[2026-06-12 23:42:31,444.444 INFO    ] 2026-06-12 23:42:31
[2026-06-12 23:42:31,643.643 INFO    ] 2026-06-12 23:42:31
[2026-06-12 23:42:31,695.695 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 23:42:31,865.865 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 23:42:31,900.900 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 23:42:32,025.025 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 23:42:32,068.068 INFO    ] time= 12/06/2026 23:42:32
[2026-06-12 23:42:32,110.110 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 23:42:32,168.168 INFO    ] Checking for existing commands in stream...
[2026-06-12 23:42:32,260.260 INFO    ] No existing commands found in stream
[2026-06-12 23:42:37,292.292 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 23:42:37,295.295 INFO    ] Waiting 3.21 seconds before fallback handling...
[2026-06-12 23:42:40,871.871 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 23:42:40,873.873 INFO    ] Checking for system updates...
[2026-06-12 23:42:40,894.894 INFO    ] 200
[2026-06-12 23:42:40,895.895 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:42:40,926.926 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 23:42:40,927.927 INFO    ] No update needed
[2026-06-12 23:42:40,928.928 INFO    ] Checking for camera pi updates...
[2026-06-12 23:42:40,948.948 INFO    ] 200
[2026-06-12 23:42:40,950.950 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:42:40,974.974 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 23:42:41,028.028 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 23:42:41,030.030 INFO    ] No camera update needed
[2026-06-12 23:42:41,031.031 INFO    ] Script finished. Safe exiting...
[2026-06-12 23:42:41,032.032 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 23:42:41,035.035 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 23:42:41,038.038 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 23:42:43,077.077 INFO    ] ================================================
[2026-06-12 23:42:43,093.093 INFO    ] Launching Daemon at Fri Jun 12 23:42:43 IST 2026
[2026-06-12 23:42:43,104.104 INFO    ] ================================================
[2026-06-12 23:42:43,491.491 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 23:42:43
[2026-06-12 23:42:43,829.829 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 23:42:43,968.968 INFO    ] Initializing speech engine...
[2026-06-12 23:42:43,982.982 INFO    ] 2026-06-12 23:42:43
[2026-06-12 23:42:44,195.195 INFO    ] 2026-06-12 23:42:44
[2026-06-12 23:42:44,225.225 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 23:42:44,359.359 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 23:42:44,413.413 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 23:42:44,545.545 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 23:42:44,602.602 INFO    ] time= 12/06/2026 23:42:44
[2026-06-12 23:42:44,645.645 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 23:42:44,652.652 INFO    ] Checking for existing commands in stream...
[2026-06-12 23:42:44,722.722 INFO    ] No existing commands found in stream
[2026-06-12 23:42:49,733.733 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 23:42:49,736.736 INFO    ] Waiting 3.56 seconds before fallback handling...
[2026-06-12 23:42:53,626.626 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 23:42:53,627.627 INFO    ] Checking for system updates...
[2026-06-12 23:42:53,648.648 INFO    ] 200
[2026-06-12 23:42:53,650.650 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:42:53,680.680 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 23:42:53,682.682 INFO    ] No update needed
[2026-06-12 23:42:53,683.683 INFO    ] Checking for camera pi updates...
[2026-06-12 23:42:53,703.703 INFO    ] 200
[2026-06-12 23:42:53,704.704 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:42:53,728.728 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 23:42:53,790.790 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 23:42:53,791.791 INFO    ] No camera update needed
[2026-06-12 23:42:53,793.793 INFO    ] Script finished. Safe exiting...
[2026-06-12 23:42:53,794.794 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 23:42:53,797.797 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 23:42:53,799.799 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 23:42:55,839.839 INFO    ] ================================================
[2026-06-12 23:42:55,855.855 INFO    ] Launching Daemon at Fri Jun 12 23:42:55 IST 2026
[2026-06-12 23:42:55,866.866 INFO    ] ================================================
[2026-06-12 23:42:56,205.205 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 23:42:56
[2026-06-12 23:42:56,518.518 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 23:42:56,660.660 INFO    ] Initializing speech engine...
[2026-06-12 23:42:56,665.665 INFO    ] 2026-06-12 23:42:56
[2026-06-12 23:42:56,877.877 INFO    ] 2026-06-12 23:42:56
[2026-06-12 23:42:56,908.908 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 23:42:57,104.104 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 23:42:57,107.107 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 23:42:57,246.246 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 23:42:57,292.292 INFO    ] time= 12/06/2026 23:42:57
[2026-06-12 23:42:57,329.329 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 23:42:57,353.353 INFO    ] Checking for existing commands in stream...
[2026-06-12 23:42:57,454.454 INFO    ] No existing commands found in stream
[2026-06-12 23:43:02,462.462 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 23:43:02,464.464 INFO    ] Waiting 2.07 seconds before fallback handling...
[2026-06-12 23:43:04,906.906 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 23:43:04,908.908 INFO    ] Checking for system updates...
[2026-06-12 23:43:04,929.929 INFO    ] 200
[2026-06-12 23:43:04,930.930 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:43:04,961.961 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 23:43:04,962.962 INFO    ] No update needed
[2026-06-12 23:43:04,963.963 INFO    ] Checking for camera pi updates...
[2026-06-12 23:43:04,983.983 INFO    ] 200
[2026-06-12 23:43:04,984.984 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:43:05,010.010 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 23:43:05,058.058 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 23:43:05,059.059 INFO    ] No camera update needed
[2026-06-12 23:43:05,061.061 INFO    ] Script finished. Safe exiting...
[2026-06-12 23:43:05,062.062 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 23:43:05,065.065 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 23:43:05,068.068 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 23:43:07,106.106 INFO    ] ================================================
[2026-06-12 23:43:07,122.122 INFO    ] Launching Daemon at Fri Jun 12 23:43:07 IST 2026
[2026-06-12 23:43:07,133.133 INFO    ] ================================================
[2026-06-12 23:43:07,475.475 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 23:43:07
[2026-06-12 23:43:07,788.788 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 23:43:07,932.932 INFO    ] Initializing speech engine...
[2026-06-12 23:43:07,937.937 INFO    ] 2026-06-12 23:43:07
[2026-06-12 23:43:08,143.143 INFO    ] 2026-06-12 23:43:08
[2026-06-12 23:43:08,171.171 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 23:43:08,357.357 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 23:43:08,366.366 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 23:43:08,495.495 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 23:43:08,563.563 INFO    ] time= 12/06/2026 23:43:08
[2026-06-12 23:43:08,591.591 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 23:43:08,598.598 INFO    ] Checking for existing commands in stream...
[2026-06-12 23:43:08,665.665 INFO    ] No existing commands found in stream
[2026-06-12 23:43:13,679.679 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 23:43:13,682.682 INFO    ] Waiting 0.91 seconds before fallback handling...
[2026-06-12 23:43:14,943.943 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 23:43:14,944.944 INFO    ] Checking for system updates...
[2026-06-12 23:43:14,964.964 INFO    ] 200
[2026-06-12 23:43:14,966.966 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:43:14,997.997 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 23:43:14,999.999 INFO    ] No update needed
[2026-06-12 23:43:15,000.000 INFO    ] Checking for camera pi updates...
[2026-06-12 23:43:15,020.020 INFO    ] 200
[2026-06-12 23:43:15,022.022 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:43:15,044.044 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 23:43:15,089.089 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 23:43:15,091.091 INFO    ] No camera update needed
[2026-06-12 23:43:15,092.092 INFO    ] Script finished. Safe exiting...
[2026-06-12 23:43:15,093.093 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 23:43:15,096.096 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 23:43:15,099.099 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 23:43:17,139.139 INFO    ] ================================================
[2026-06-12 23:43:17,154.154 INFO    ] Launching Daemon at Fri Jun 12 23:43:17 IST 2026
[2026-06-12 23:43:17,165.165 INFO    ] ================================================
[2026-06-12 23:43:17,516.516 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 23:43:17
[2026-06-12 23:43:17,833.833 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 23:43:17,969.969 INFO    ] Initializing speech engine...
[2026-06-12 23:43:17,983.983 INFO    ] 2026-06-12 23:43:17
[2026-06-12 23:43:18,202.202 INFO    ] 2026-06-12 23:43:18
[2026-06-12 23:43:18,233.233 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 23:43:18,432.432 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 23:43:18,435.435 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 23:43:18,579.579 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 23:43:18,645.645 INFO    ] time= 12/06/2026 23:43:18
[2026-06-12 23:43:18,678.678 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 23:43:18,680.680 INFO    ] Checking for existing commands in stream...
[2026-06-12 23:43:18,781.781 INFO    ] No existing commands found in stream
[2026-06-12 23:43:23,790.790 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 23:43:23,793.793 INFO    ] Waiting 0.76 seconds before fallback handling...
[2026-06-12 23:43:24,944.944 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 23:43:24,945.945 INFO    ] Checking for system updates...
[2026-06-12 23:43:24,966.966 INFO    ] 200
[2026-06-12 23:43:24,968.968 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:43:24,999.999 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 23:43:25,001.001 INFO    ] No update needed
[2026-06-12 23:43:25,002.002 INFO    ] Checking for camera pi updates...
[2026-06-12 23:43:25,023.023 INFO    ] 200
[2026-06-12 23:43:25,024.024 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:43:25,047.047 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 23:43:25,090.090 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 23:43:25,091.091 INFO    ] No camera update needed
[2026-06-12 23:43:25,092.092 INFO    ] Script finished. Safe exiting...
[2026-06-12 23:43:25,094.094 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 23:43:25,097.097 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 23:43:25,099.099 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 23:43:27,138.138 INFO    ] ================================================
[2026-06-12 23:43:27,154.154 INFO    ] Launching Daemon at Fri Jun 12 23:43:27 IST 2026
[2026-06-12 23:43:27,165.165 INFO    ] ================================================
[2026-06-12 23:43:27,535.535 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 23:43:27
[2026-06-12 23:43:27,856.856 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 23:43:28,000.000 INFO    ] Initializing speech engine...
[2026-06-12 23:43:28,005.005 INFO    ] 2026-06-12 23:43:28
[2026-06-12 23:43:28,212.212 INFO    ] 2026-06-12 23:43:28
[2026-06-12 23:43:28,241.241 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 23:43:28,425.425 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 23:43:28,428.428 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 23:43:28,563.563 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 23:43:28,622.622 INFO    ] time= 12/06/2026 23:43:28
[2026-06-12 23:43:28,655.655 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 23:43:28,657.657 INFO    ] Checking for existing commands in stream...
[2026-06-12 23:43:28,728.728 INFO    ] No existing commands found in stream
[2026-06-12 23:43:33,742.742 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 23:43:33,745.745 INFO    ] Waiting 2.31 seconds before fallback handling...
[2026-06-12 23:43:36,411.411 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 23:43:36,413.413 INFO    ] Checking for system updates...
[2026-06-12 23:43:36,433.433 INFO    ] 200
[2026-06-12 23:43:36,435.435 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:43:36,468.468 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 23:43:36,469.469 INFO    ] No update needed
[2026-06-12 23:43:36,470.470 INFO    ] Checking for camera pi updates...
[2026-06-12 23:43:36,489.489 INFO    ] 200
[2026-06-12 23:43:36,491.491 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:43:36,514.514 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 23:43:36,571.571 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 23:43:36,572.572 INFO    ] No camera update needed
[2026-06-12 23:43:36,574.574 INFO    ] Script finished. Safe exiting...
[2026-06-12 23:43:36,575.575 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 23:43:36,578.578 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 23:43:36,580.580 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 23:43:38,622.622 INFO    ] ================================================
[2026-06-12 23:43:38,637.637 INFO    ] Launching Daemon at Fri Jun 12 23:43:38 IST 2026
[2026-06-12 23:43:38,649.649 INFO    ] ================================================
[2026-06-12 23:43:39,031.031 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 23:43:39
[2026-06-12 23:43:39,363.363 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 23:43:39,507.507 INFO    ] Initializing speech engine...
[2026-06-12 23:43:39,517.517 INFO    ] 2026-06-12 23:43:39
[2026-06-12 23:43:39,729.729 INFO    ] 2026-06-12 23:43:39
[2026-06-12 23:43:39,760.760 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 23:43:39,945.945 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 23:43:39,954.954 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 23:43:40,061.061 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 23:43:40,063.063 INFO    ] time= 12/06/2026 23:43:40
[2026-06-12 23:43:40,064.064 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 23:43:40,065.065 INFO    ] Checking for existing commands in stream...
[2026-06-12 23:43:40,131.131 INFO    ] No existing commands found in stream
[2026-06-12 23:43:45,140.140 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 23:43:45,143.143 INFO    ] Waiting 3.26 seconds before fallback handling...
[2026-06-12 23:43:48,801.801 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 23:43:48,803.803 INFO    ] Checking for system updates...
[2026-06-12 23:43:48,825.825 INFO    ] 200
[2026-06-12 23:43:48,826.826 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:43:48,856.856 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 23:43:48,857.857 INFO    ] No update needed
[2026-06-12 23:43:48,859.859 INFO    ] Checking for camera pi updates...
[2026-06-12 23:43:48,879.879 INFO    ] 200
[2026-06-12 23:43:48,880.880 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:43:48,903.903 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 23:43:48,931.931 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 23:43:48,933.933 INFO    ] No camera update needed
[2026-06-12 23:43:48,934.934 INFO    ] Script finished. Safe exiting...
[2026-06-12 23:43:48,935.935 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 23:43:48,938.938 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 23:43:48,941.941 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 23:43:50,979.979 INFO    ] ================================================
[2026-06-12 23:43:50,994.994 INFO    ] Launching Daemon at Fri Jun 12 23:43:50 IST 2026
[2026-06-12 23:43:51,005.005 INFO    ] ================================================
[2026-06-12 23:43:51,340.340 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 23:43:51
[2026-06-12 23:43:51,651.651 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 23:43:51,794.794 INFO    ] Initializing speech engine...
[2026-06-12 23:43:51,799.799 INFO    ] 2026-06-12 23:43:51
[2026-06-12 23:43:52,003.003 INFO    ] 2026-06-12 23:43:51
[2026-06-12 23:43:52,033.033 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 23:43:52,177.177 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 23:43:52,221.221 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 23:43:52,356.356 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 23:43:52,423.423 INFO    ] time= 12/06/2026 23:43:52
[2026-06-12 23:43:52,451.451 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 23:43:52,458.458 INFO    ] Checking for existing commands in stream...
[2026-06-12 23:43:52,525.525 INFO    ] No existing commands found in stream
[2026-06-12 23:43:57,534.534 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 23:43:57,536.536 INFO    ] Waiting 3.65 seconds before fallback handling...
[2026-06-12 23:44:01,634.634 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 23:44:01,637.637 INFO    ] Checking for system updates...
[2026-06-12 23:44:01,687.687 INFO    ] 200
[2026-06-12 23:44:01,690.690 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:44:01,750.750 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 23:44:01,753.753 INFO    ] No update needed
[2026-06-12 23:44:01,755.755 INFO    ] Checking for camera pi updates...
[2026-06-12 23:44:01,797.797 INFO    ] 200
[2026-06-12 23:44:01,799.799 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:44:01,852.852 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 23:44:01,882.882 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 23:44:01,884.884 INFO    ] No camera update needed
[2026-06-12 23:44:01,885.885 INFO    ] Script finished. Safe exiting...
[2026-06-12 23:44:01,887.887 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 23:44:01,891.891 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 23:44:01,895.895 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 23:44:03,927.927 INFO    ] ================================================
[2026-06-12 23:44:03,943.943 INFO    ] Launching Daemon at Fri Jun 12 23:44:03 IST 2026
[2026-06-12 23:44:03,954.954 INFO    ] ================================================
[2026-06-12 23:44:04,318.318 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 23:44:04
[2026-06-12 23:44:04,629.629 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 23:44:04,771.771 INFO    ] Initializing speech engine...
[2026-06-12 23:44:04,776.776 INFO    ] 2026-06-12 23:44:04
[2026-06-12 23:44:04,980.980 INFO    ] 2026-06-12 23:44:04
[2026-06-12 23:44:05,008.008 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 23:44:05,192.192 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 23:44:05,201.201 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 23:44:05,351.351 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 23:44:05,399.399 INFO    ] time= 12/06/2026 23:44:05
[2026-06-12 23:44:05,421.421 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 23:44:05,428.428 INFO    ] Checking for existing commands in stream...
[2026-06-12 23:44:05,495.495 INFO    ] No existing commands found in stream
[2026-06-12 23:44:10,510.510 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 23:44:10,512.512 INFO    ] Waiting 2.28 seconds before fallback handling...
[2026-06-12 23:44:13,161.161 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 23:44:13,163.163 INFO    ] Checking for system updates...
[2026-06-12 23:44:13,184.184 INFO    ] 200
[2026-06-12 23:44:13,185.185 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:44:13,215.215 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 23:44:13,217.217 INFO    ] No update needed
[2026-06-12 23:44:13,218.218 INFO    ] Checking for camera pi updates...
[2026-06-12 23:44:13,238.238 INFO    ] 200
[2026-06-12 23:44:13,240.240 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:44:13,265.265 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 23:44:13,403.403 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 23:44:13,405.405 INFO    ] No camera update needed
[2026-06-12 23:44:13,406.406 INFO    ] Script finished. Safe exiting...
[2026-06-12 23:44:13,407.407 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 23:44:13,411.411 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 23:44:13,414.414 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 23:44:15,455.455 INFO    ] ================================================
[2026-06-12 23:44:15,471.471 INFO    ] Launching Daemon at Fri Jun 12 23:44:15 IST 2026
[2026-06-12 23:44:15,483.483 INFO    ] ================================================
[2026-06-12 23:44:15,826.826 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 23:44:15
[2026-06-12 23:44:16,143.143 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 23:44:16,277.277 INFO    ] Initializing speech engine...
[2026-06-12 23:44:16,282.282 INFO    ] 2026-06-12 23:44:16
[2026-06-12 23:44:16,510.510 INFO    ] 2026-06-12 23:44:16
[2026-06-12 23:44:16,541.541 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 23:44:16,738.738 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 23:44:16,742.742 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 23:44:16,880.880 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 23:44:16,931.931 INFO    ] time= 12/06/2026 23:44:16
[2026-06-12 23:44:16,976.976 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 23:44:16,987.987 INFO    ] Checking for existing commands in stream...
[2026-06-12 23:44:17,061.061 INFO    ] No existing commands found in stream
[2026-06-12 23:44:22,072.072 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 23:44:22,075.075 INFO    ] Waiting 3.02 seconds before fallback handling...
[2026-06-12 23:44:25,475.475 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 23:44:25,477.477 INFO    ] Checking for system updates...
[2026-06-12 23:44:25,514.514 INFO    ] 200
[2026-06-12 23:44:25,516.516 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:44:25,570.570 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 23:44:25,573.573 INFO    ] No update needed
[2026-06-12 23:44:25,575.575 INFO    ] Checking for camera pi updates...
[2026-06-12 23:44:25,609.609 INFO    ] 200
[2026-06-12 23:44:25,611.611 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:44:25,636.636 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 23:44:25,692.692 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 23:44:25,693.693 INFO    ] No camera update needed
[2026-06-12 23:44:25,695.695 INFO    ] Script finished. Safe exiting...
[2026-06-12 23:44:25,696.696 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 23:44:25,699.699 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 23:44:25,702.702 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 23:44:27,740.740 INFO    ] ================================================
[2026-06-12 23:44:27,758.758 INFO    ] Launching Daemon at Fri Jun 12 23:44:27 IST 2026
[2026-06-12 23:44:27,770.770 INFO    ] ================================================
[2026-06-12 23:44:28,119.119 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 23:44:28
[2026-06-12 23:44:28,431.431 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 23:44:28,564.564 INFO    ] Initializing speech engine...
[2026-06-12 23:44:28,568.568 INFO    ] 2026-06-12 23:44:28
[2026-06-12 23:44:28,795.795 INFO    ] 2026-06-12 23:44:28
[2026-06-12 23:44:28,825.825 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 23:44:28,956.956 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 23:44:29,004.004 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 23:44:29,162.162 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 23:44:29,214.214 INFO    ] time= 12/06/2026 23:44:29
[2026-06-12 23:44:29,246.246 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 23:44:29,270.270 INFO    ] Checking for existing commands in stream...
[2026-06-12 23:44:29,372.372 INFO    ] No existing commands found in stream
[2026-06-12 23:44:34,381.381 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 23:44:34,384.384 INFO    ] Waiting 3.34 seconds before fallback handling...
[2026-06-12 23:44:38,090.090 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 23:44:38,092.092 INFO    ] Checking for system updates...
[2026-06-12 23:44:38,112.112 INFO    ] 200
[2026-06-12 23:44:38,113.113 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:44:38,143.143 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 23:44:38,145.145 INFO    ] No update needed
[2026-06-12 23:44:38,146.146 INFO    ] Checking for camera pi updates...
[2026-06-12 23:44:38,165.165 INFO    ] 200
[2026-06-12 23:44:38,167.167 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:44:38,190.190 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 23:44:38,233.233 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 23:44:38,235.235 INFO    ] No camera update needed
[2026-06-12 23:44:38,236.236 INFO    ] Script finished. Safe exiting...
[2026-06-12 23:44:38,237.237 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 23:44:38,240.240 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 23:44:38,243.243 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 23:44:40,282.282 INFO    ] ================================================
[2026-06-12 23:44:40,297.297 INFO    ] Launching Daemon at Fri Jun 12 23:44:40 IST 2026
[2026-06-12 23:44:40,308.308 INFO    ] ================================================
[2026-06-12 23:44:40,646.646 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 23:44:40
[2026-06-12 23:44:40,965.965 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 23:44:41,100.100 INFO    ] Initializing speech engine...
[2026-06-12 23:44:41,105.105 INFO    ] 2026-06-12 23:44:41
[2026-06-12 23:44:41,333.333 INFO    ] 2026-06-12 23:44:41
[2026-06-12 23:44:41,364.364 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 23:44:41,495.495 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 23:44:41,538.538 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 23:44:41,706.706 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 23:44:41,774.774 INFO    ] time= 12/06/2026 23:44:41
[2026-06-12 23:44:41,807.807 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 23:44:41,813.813 INFO    ] Checking for existing commands in stream...
[2026-06-12 23:44:41,885.885 INFO    ] No existing commands found in stream
[2026-06-12 23:44:46,894.894 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 23:44:46,897.897 INFO    ] Waiting 1.89 seconds before fallback handling...
[2026-06-12 23:44:49,178.178 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 23:44:49,180.180 INFO    ] Checking for system updates...
[2026-06-12 23:44:49,202.202 INFO    ] 200
[2026-06-12 23:44:49,204.204 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:44:49,236.236 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 23:44:49,237.237 INFO    ] No update needed
[2026-06-12 23:44:49,239.239 INFO    ] Checking for camera pi updates...
[2026-06-12 23:44:49,259.259 INFO    ] 200
[2026-06-12 23:44:49,261.261 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:44:49,286.286 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 23:44:49,332.332 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 23:44:49,334.334 INFO    ] No camera update needed
[2026-06-12 23:44:49,335.335 INFO    ] Script finished. Safe exiting...
[2026-06-12 23:44:49,337.337 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 23:44:49,340.340 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 23:44:49,343.343 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 23:44:51,381.381 INFO    ] ================================================
[2026-06-12 23:44:51,397.397 INFO    ] Launching Daemon at Fri Jun 12 23:44:51 IST 2026
[2026-06-12 23:44:51,408.408 INFO    ] ================================================
[2026-06-12 23:44:51,757.757 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 23:44:51
[2026-06-12 23:44:52,073.073 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 23:44:52,204.204 INFO    ] Initializing speech engine...
[2026-06-12 23:44:52,212.212 INFO    ] 2026-06-12 23:44:52
[2026-06-12 23:44:52,424.424 INFO    ] 2026-06-12 23:44:52
[2026-06-12 23:44:52,453.453 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 23:44:52,635.635 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 23:44:52,639.639 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 23:44:52,767.767 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 23:44:52,828.828 INFO    ] time= 12/06/2026 23:44:52
[2026-06-12 23:44:52,862.862 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 23:44:52,867.867 INFO    ] Checking for existing commands in stream...
[2026-06-12 23:44:52,938.938 INFO    ] No existing commands found in stream
[2026-06-12 23:44:57,952.952 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 23:44:57,955.955 INFO    ] Waiting 3.38 seconds before fallback handling...
[2026-06-12 23:45:01,689.689 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 23:45:01,690.690 INFO    ] Checking for system updates...
[2026-06-12 23:45:01,711.711 INFO    ] 200
[2026-06-12 23:45:01,712.712 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:45:01,744.744 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 23:45:01,746.746 INFO    ] No update needed
[2026-06-12 23:45:01,747.747 INFO    ] Checking for camera pi updates...
[2026-06-12 23:45:01,767.767 INFO    ] 200
[2026-06-12 23:45:01,768.768 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:45:01,826.826 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 23:45:01,874.874 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 23:45:01,878.878 INFO    ] No camera update needed
[2026-06-12 23:45:01,882.882 INFO    ] Script finished. Safe exiting...
[2026-06-12 23:45:01,885.885 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 23:45:01,897.897 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 23:45:01,907.907 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 23:45:03,948.948 INFO    ] ================================================
[2026-06-12 23:45:03,964.964 INFO    ] Launching Daemon at Fri Jun 12 23:45:03 IST 2026
[2026-06-12 23:45:03,975.975 INFO    ] ================================================
[2026-06-12 23:45:04,298.298 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 23:45:04
[2026-06-12 23:45:04,609.609 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 23:45:04,745.745 INFO    ] Initializing speech engine...
[2026-06-12 23:45:04,754.754 INFO    ] 2026-06-12 23:45:04
[2026-06-12 23:45:04,961.961 INFO    ] 2026-06-12 23:45:04
[2026-06-12 23:45:04,990.990 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 23:45:05,114.114 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 23:45:05,178.178 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 23:45:05,313.313 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 23:45:05,380.380 INFO    ] time= 12/06/2026 23:45:05
[2026-06-12 23:45:05,408.408 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 23:45:05,415.415 INFO    ] Checking for existing commands in stream...
[2026-06-12 23:45:05,483.483 INFO    ] No existing commands found in stream
[2026-06-12 23:45:10,497.497 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 23:45:10,500.500 INFO    ] Waiting 3.29 seconds before fallback handling...
[2026-06-12 23:45:14,166.166 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 23:45:14,167.167 INFO    ] Checking for system updates...
[2026-06-12 23:45:14,188.188 INFO    ] 200
[2026-06-12 23:45:14,189.189 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:45:14,220.220 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 23:45:14,222.222 INFO    ] No update needed
[2026-06-12 23:45:14,223.223 INFO    ] Checking for camera pi updates...
[2026-06-12 23:45:14,242.242 INFO    ] 200
[2026-06-12 23:45:14,244.244 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:45:14,267.267 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 23:45:14,316.316 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 23:45:14,317.317 INFO    ] No camera update needed
[2026-06-12 23:45:14,319.319 INFO    ] Script finished. Safe exiting...
[2026-06-12 23:45:14,320.320 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 23:45:14,323.323 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 23:45:14,326.326 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 23:45:16,364.364 INFO    ] ================================================
[2026-06-12 23:45:16,380.380 INFO    ] Launching Daemon at Fri Jun 12 23:45:16 IST 2026
[2026-06-12 23:45:16,391.391 INFO    ] ================================================
[2026-06-12 23:45:16,786.786 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 23:45:16
[2026-06-12 23:45:17,119.119 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 23:45:17,261.261 INFO    ] Initializing speech engine...
[2026-06-12 23:45:17,266.266 INFO    ] 2026-06-12 23:45:17
[2026-06-12 23:45:17,467.467 INFO    ] 2026-06-12 23:45:17
[2026-06-12 23:45:17,497.497 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 23:45:17,617.617 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 23:45:17,656.656 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 23:45:17,818.818 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 23:45:17,881.881 INFO    ] time= 12/06/2026 23:45:17
[2026-06-12 23:45:17,908.908 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 23:45:17,914.914 INFO    ] Checking for existing commands in stream...
[2026-06-12 23:45:17,980.980 INFO    ] No existing commands found in stream
[2026-06-12 23:45:22,989.989 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 23:45:22,992.992 INFO    ] Waiting 1.91 seconds before fallback handling...
[2026-06-12 23:45:25,266.266 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 23:45:25,267.267 INFO    ] Checking for system updates...
[2026-06-12 23:45:25,288.288 INFO    ] 200
[2026-06-12 23:45:25,290.290 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:45:25,320.320 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 23:45:25,321.321 INFO    ] No update needed
[2026-06-12 23:45:25,323.323 INFO    ] Checking for camera pi updates...
[2026-06-12 23:45:25,342.342 INFO    ] 200
[2026-06-12 23:45:25,344.344 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:45:25,368.368 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 23:45:25,406.406 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 23:45:25,407.407 INFO    ] No camera update needed
[2026-06-12 23:45:25,409.409 INFO    ] Script finished. Safe exiting...
[2026-06-12 23:45:25,410.410 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 23:45:25,413.413 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 23:45:25,416.416 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 23:45:27,454.454 INFO    ] ================================================
[2026-06-12 23:45:27,470.470 INFO    ] Launching Daemon at Fri Jun 12 23:45:27 IST 2026
[2026-06-12 23:45:27,481.481 INFO    ] ================================================
[2026-06-12 23:45:27,849.849 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 23:45:27
[2026-06-12 23:45:28,172.172 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 23:45:28,315.315 INFO    ] Initializing speech engine...
[2026-06-12 23:45:28,320.320 INFO    ] 2026-06-12 23:45:28
[2026-06-12 23:45:28,522.522 INFO    ] 2026-06-12 23:45:28
[2026-06-12 23:45:28,551.551 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 23:45:28,735.735 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 23:45:28,743.743 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 23:45:28,873.873 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 23:45:28,939.939 INFO    ] time= 12/06/2026 23:45:28
[2026-06-12 23:45:28,963.963 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 23:45:28,969.969 INFO    ] Checking for existing commands in stream...
[2026-06-12 23:45:29,034.034 INFO    ] No existing commands found in stream
[2026-06-12 23:45:34,044.044 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 23:45:34,047.047 INFO    ] Waiting 3.63 seconds before fallback handling...
[2026-06-12 23:45:38,024.024 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 23:45:38,025.025 INFO    ] Checking for system updates...
[2026-06-12 23:45:38,046.046 INFO    ] 200
[2026-06-12 23:45:38,047.047 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:45:38,079.079 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 23:45:38,080.080 INFO    ] No update needed
[2026-06-12 23:45:38,082.082 INFO    ] Checking for camera pi updates...
[2026-06-12 23:45:38,101.101 INFO    ] 200
[2026-06-12 23:45:38,102.102 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:45:38,125.125 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 23:45:38,176.176 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 23:45:38,177.177 INFO    ] No camera update needed
[2026-06-12 23:45:38,178.178 INFO    ] Script finished. Safe exiting...
[2026-06-12 23:45:38,180.180 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 23:45:38,183.183 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 23:45:38,185.185 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 23:45:40,223.223 INFO    ] ================================================
[2026-06-12 23:45:40,239.239 INFO    ] Launching Daemon at Fri Jun 12 23:45:40 IST 2026
[2026-06-12 23:45:40,249.249 INFO    ] ================================================
[2026-06-12 23:45:40,597.597 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 23:45:40
[2026-06-12 23:45:40,907.907 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 23:45:41,050.050 INFO    ] Initializing speech engine...
[2026-06-12 23:45:41,055.055 INFO    ] 2026-06-12 23:45:41
[2026-06-12 23:45:41,261.261 INFO    ] 2026-06-12 23:45:41
[2026-06-12 23:45:41,289.289 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 23:45:41,475.475 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 23:45:41,484.484 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 23:45:41,609.609 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 23:45:41,670.670 INFO    ] time= 12/06/2026 23:45:41
[2026-06-12 23:45:41,705.705 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 23:45:41,710.710 INFO    ] Checking for existing commands in stream...
[2026-06-12 23:45:41,781.781 INFO    ] No existing commands found in stream
[2026-06-12 23:45:46,792.792 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 23:45:46,794.794 INFO    ] Waiting 3.60 seconds before fallback handling...
[2026-06-12 23:45:50,777.777 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 23:45:50,779.779 INFO    ] Checking for system updates...
[2026-06-12 23:45:50,800.800 INFO    ] 200
[2026-06-12 23:45:50,801.801 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:45:50,832.832 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 23:45:50,833.833 INFO    ] No update needed
[2026-06-12 23:45:50,835.835 INFO    ] Checking for camera pi updates...
[2026-06-12 23:45:50,854.854 INFO    ] 200
[2026-06-12 23:45:50,855.855 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:45:50,881.881 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 23:45:50,938.938 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 23:45:50,940.940 INFO    ] No camera update needed
[2026-06-12 23:45:50,941.941 INFO    ] Script finished. Safe exiting...
[2026-06-12 23:45:50,943.943 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 23:45:50,946.946 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 23:45:50,949.949 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 23:45:52,989.989 INFO    ] ================================================
[2026-06-12 23:45:53,005.005 INFO    ] Launching Daemon at Fri Jun 12 23:45:52 IST 2026
[2026-06-12 23:45:53,016.016 INFO    ] ================================================
[2026-06-12 23:45:53,357.357 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 23:45:53
[2026-06-12 23:45:53,668.668 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 23:45:53,804.804 INFO    ] Initializing speech engine...
[2026-06-12 23:45:53,814.814 INFO    ] 2026-06-12 23:45:53
[2026-06-12 23:45:54,017.017 INFO    ] 2026-06-12 23:45:53
[2026-06-12 23:45:54,046.046 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 23:45:54,183.183 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 23:45:54,231.231 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 23:45:54,374.374 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 23:45:54,436.436 INFO    ] time= 12/06/2026 23:45:54
[2026-06-12 23:45:54,459.459 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 23:45:54,466.466 INFO    ] Checking for existing commands in stream...
[2026-06-12 23:45:54,532.532 INFO    ] No existing commands found in stream
[2026-06-12 23:45:59,541.541 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 23:45:59,544.544 INFO    ] Waiting 2.22 seconds before fallback handling...
[2026-06-12 23:46:02,086.086 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 23:46:02,088.088 INFO    ] Checking for system updates...
[2026-06-12 23:46:02,108.108 INFO    ] 200
[2026-06-12 23:46:02,110.110 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:46:02,151.151 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 23:46:02,152.152 INFO    ] No update needed
[2026-06-12 23:46:02,153.153 INFO    ] Checking for camera pi updates...
[2026-06-12 23:46:02,175.175 INFO    ] 200
[2026-06-12 23:46:02,177.177 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:46:02,206.206 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 23:46:02,243.243 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 23:46:02,244.244 INFO    ] No camera update needed
[2026-06-12 23:46:02,245.245 INFO    ] Script finished. Safe exiting...
[2026-06-12 23:46:02,246.246 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 23:46:02,249.249 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 23:46:02,254.254 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 23:46:04,279.279 INFO    ] ================================================
[2026-06-12 23:46:04,287.287 INFO    ] Launching Daemon at Fri Jun 12 23:46:04 IST 2026
[2026-06-12 23:46:04,293.293 INFO    ] ================================================
[2026-06-12 23:46:04,598.598 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 23:46:04
[2026-06-12 23:46:04,970.970 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 23:46:05,117.117 INFO    ] Initializing speech engine...
[2026-06-12 23:46:05,125.125 INFO    ] 2026-06-12 23:46:05
[2026-06-12 23:46:05,356.356 INFO    ] 2026-06-12 23:46:05
[2026-06-12 23:46:05,392.392 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 23:46:05,562.562 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 23:46:05,608.608 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 23:46:05,749.749 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 23:46:05,811.811 INFO    ] time= 12/06/2026 23:46:05
[2026-06-12 23:46:05,842.842 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 23:46:05,853.853 INFO    ] Checking for existing commands in stream...
[2026-06-12 23:46:05,926.926 INFO    ] No existing commands found in stream
[2026-06-12 23:46:10,934.934 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 23:46:10,936.936 INFO    ] Waiting 1.60 seconds before fallback handling...
[2026-06-12 23:46:12,874.874 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 23:46:12,876.876 INFO    ] Checking for system updates...
[2026-06-12 23:46:12,898.898 INFO    ] 200
[2026-06-12 23:46:12,899.899 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:46:12,929.929 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 23:46:12,931.931 INFO    ] No update needed
[2026-06-12 23:46:12,932.932 INFO    ] Checking for camera pi updates...
[2026-06-12 23:46:12,952.952 INFO    ] 200
[2026-06-12 23:46:12,953.953 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:46:12,976.976 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 23:46:13,016.016 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 23:46:13,017.017 INFO    ] No camera update needed
[2026-06-12 23:46:13,018.018 INFO    ] Script finished. Safe exiting...
[2026-06-12 23:46:13,020.020 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 23:46:13,023.023 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 23:46:13,025.025 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 23:46:15,064.064 INFO    ] ================================================
[2026-06-12 23:46:15,080.080 INFO    ] Launching Daemon at Fri Jun 12 23:46:15 IST 2026
[2026-06-12 23:46:15,091.091 INFO    ] ================================================
[2026-06-12 23:46:15,481.481 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 23:46:15
[2026-06-12 23:46:15,821.821 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 23:46:15,963.963 INFO    ] Initializing speech engine...
[2026-06-12 23:46:15,976.976 INFO    ] 2026-06-12 23:46:15
[2026-06-12 23:46:16,188.188 INFO    ] 2026-06-12 23:46:16
[2026-06-12 23:46:16,217.217 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 23:46:16,405.405 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 23:46:16,414.414 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 23:46:16,567.567 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 23:46:16,617.617 INFO    ] time= 12/06/2026 23:46:16
[2026-06-12 23:46:16,639.639 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 23:46:16,645.645 INFO    ] Checking for existing commands in stream...
[2026-06-12 23:46:16,711.711 INFO    ] No existing commands found in stream
[2026-06-12 23:46:21,722.722 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 23:46:21,724.724 INFO    ] Waiting 3.68 seconds before fallback handling...
[2026-06-12 23:46:25,783.783 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 23:46:25,784.784 INFO    ] Checking for system updates...
[2026-06-12 23:46:25,805.805 INFO    ] 200
[2026-06-12 23:46:25,806.806 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:46:25,836.836 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 23:46:25,837.837 INFO    ] No update needed
[2026-06-12 23:46:25,838.838 INFO    ] Checking for camera pi updates...
[2026-06-12 23:46:25,859.859 INFO    ] 200
[2026-06-12 23:46:25,861.861 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:46:25,884.884 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 23:46:26,022.022 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 23:46:26,024.024 INFO    ] No camera update needed
[2026-06-12 23:46:26,025.025 INFO    ] Script finished. Safe exiting...
[2026-06-12 23:46:26,026.026 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 23:46:26,030.030 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 23:46:26,033.033 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 23:46:28,073.073 INFO    ] ================================================
[2026-06-12 23:46:28,088.088 INFO    ] Launching Daemon at Fri Jun 12 23:46:28 IST 2026
[2026-06-12 23:46:28,099.099 INFO    ] ================================================
[2026-06-12 23:46:28,442.442 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 23:46:28
[2026-06-12 23:46:28,758.758 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 23:46:28,903.903 INFO    ] Initializing speech engine...
[2026-06-12 23:46:28,908.908 INFO    ] 2026-06-12 23:46:28
[2026-06-12 23:46:29,112.112 INFO    ] 2026-06-12 23:46:29
[2026-06-12 23:46:29,139.139 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 23:46:29,262.262 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 23:46:29,325.325 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 23:46:29,458.458 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 23:46:29,526.526 INFO    ] time= 12/06/2026 23:46:29
[2026-06-12 23:46:29,552.552 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 23:46:29,559.559 INFO    ] Checking for existing commands in stream...
[2026-06-12 23:46:29,626.626 INFO    ] No existing commands found in stream
[2026-06-12 23:46:34,640.640 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 23:46:34,644.644 INFO    ] Waiting 3.78 seconds before fallback handling...
[2026-06-12 23:46:38,795.795 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 23:46:38,796.796 INFO    ] Checking for system updates...
[2026-06-12 23:46:38,817.817 INFO    ] 200
[2026-06-12 23:46:38,818.818 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:46:38,851.851 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 23:46:38,852.852 INFO    ] No update needed
[2026-06-12 23:46:38,853.853 INFO    ] Checking for camera pi updates...
[2026-06-12 23:46:38,872.872 INFO    ] 200
[2026-06-12 23:46:38,874.874 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:46:38,898.898 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 23:46:38,962.962 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 23:46:38,964.964 INFO    ] No camera update needed
[2026-06-12 23:46:38,965.965 INFO    ] Script finished. Safe exiting...
[2026-06-12 23:46:38,966.966 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 23:46:38,969.969 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 23:46:38,972.972 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 23:46:41,011.011 INFO    ] ================================================
[2026-06-12 23:46:41,027.027 INFO    ] Launching Daemon at Fri Jun 12 23:46:41 IST 2026
[2026-06-12 23:46:41,038.038 INFO    ] ================================================
[2026-06-12 23:46:41,381.381 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 23:46:41
[2026-06-12 23:46:41,692.692 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 23:46:41,823.823 INFO    ] Initializing speech engine...
[2026-06-12 23:46:41,827.827 INFO    ] 2026-06-12 23:46:41
[2026-06-12 23:46:42,044.044 INFO    ] 2026-06-12 23:46:42
[2026-06-12 23:46:42,073.073 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 23:46:42,198.198 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 23:46:42,260.260 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 23:46:42,397.397 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 23:46:42,454.454 INFO    ] time= 12/06/2026 23:46:42
[2026-06-12 23:46:42,484.484 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 23:46:42,495.495 INFO    ] Checking for existing commands in stream...
[2026-06-12 23:46:42,568.568 INFO    ] No existing commands found in stream
[2026-06-12 23:46:47,582.582 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 23:46:47,584.584 INFO    ] Waiting 0.02 seconds before fallback handling...
[2026-06-12 23:46:47,970.970 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 23:46:47,972.972 INFO    ] Checking for system updates...
[2026-06-12 23:46:47,992.992 INFO    ] 200
[2026-06-12 23:46:47,994.994 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:46:48,023.023 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 23:46:48,025.025 INFO    ] No update needed
[2026-06-12 23:46:48,026.026 INFO    ] Checking for camera pi updates...
[2026-06-12 23:46:48,045.045 INFO    ] 200
[2026-06-12 23:46:48,046.046 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:46:48,070.070 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 23:46:48,111.111 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 23:46:48,113.113 INFO    ] No camera update needed
[2026-06-12 23:46:48,114.114 INFO    ] Script finished. Safe exiting...
[2026-06-12 23:46:48,116.116 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 23:46:48,118.118 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 23:46:48,121.121 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 23:46:50,163.163 INFO    ] ================================================
[2026-06-12 23:46:50,179.179 INFO    ] Launching Daemon at Fri Jun 12 23:46:50 IST 2026
[2026-06-12 23:46:50,189.189 INFO    ] ================================================
[2026-06-12 23:46:50,554.554 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 23:46:50
[2026-06-12 23:46:50,873.873 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 23:46:51,012.012 INFO    ] Initializing speech engine...
[2026-06-12 23:46:51,021.021 INFO    ] 2026-06-12 23:46:51
[2026-06-12 23:46:51,226.226 INFO    ] 2026-06-12 23:46:51
[2026-06-12 23:46:51,254.254 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 23:46:51,437.437 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 23:46:51,441.441 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 23:46:51,569.569 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 23:46:51,625.625 INFO    ] time= 12/06/2026 23:46:51
[2026-06-12 23:46:51,648.648 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 23:46:51,669.669 INFO    ] Checking for existing commands in stream...
[2026-06-12 23:46:51,763.763 INFO    ] No existing commands found in stream
[2026-06-12 23:46:56,777.777 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 23:46:56,780.780 INFO    ] Waiting 0.12 seconds before fallback handling...
[2026-06-12 23:46:57,233.233 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 23:46:57,234.234 INFO    ] Checking for system updates...
[2026-06-12 23:46:57,255.255 INFO    ] 200
[2026-06-12 23:46:57,256.256 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:46:57,289.289 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 23:46:57,290.290 INFO    ] No update needed
[2026-06-12 23:46:57,292.292 INFO    ] Checking for camera pi updates...
[2026-06-12 23:46:57,311.311 INFO    ] 200
[2026-06-12 23:46:57,312.312 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:46:57,340.340 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 23:46:57,404.404 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 23:46:57,406.406 INFO    ] No camera update needed
[2026-06-12 23:46:57,407.407 INFO    ] Script finished. Safe exiting...
[2026-06-12 23:46:57,409.409 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 23:46:57,412.412 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 23:46:57,415.415 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 23:46:59,455.455 INFO    ] ================================================
[2026-06-12 23:46:59,470.470 INFO    ] Launching Daemon at Fri Jun 12 23:46:59 IST 2026
[2026-06-12 23:46:59,481.481 INFO    ] ================================================
[2026-06-12 23:46:59,850.850 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 23:46:59
[2026-06-12 23:47:00,169.169 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 23:47:00,314.314 INFO    ] Initializing speech engine...
[2026-06-12 23:47:00,320.320 INFO    ] 2026-06-12 23:47:00
[2026-06-12 23:47:00,524.524 INFO    ] 2026-06-12 23:47:00
[2026-06-12 23:47:00,556.556 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 23:47:00,741.741 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 23:47:00,750.750 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 23:47:00,875.875 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 23:47:00,934.934 INFO    ] time= 12/06/2026 23:47:00
[2026-06-12 23:47:00,970.970 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 23:47:00,977.977 INFO    ] Checking for existing commands in stream...
[2026-06-12 23:47:01,067.067 INFO    ] No existing commands found in stream
[2026-06-12 23:47:06,081.081 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 23:47:06,084.084 INFO    ] Waiting 1.08 seconds before fallback handling...
[2026-06-12 23:47:07,536.536 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 23:47:07,537.537 INFO    ] Checking for system updates...
[2026-06-12 23:47:07,558.558 INFO    ] 200
[2026-06-12 23:47:07,559.559 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:47:07,590.590 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 23:47:07,591.591 INFO    ] No update needed
[2026-06-12 23:47:07,592.592 INFO    ] Checking for camera pi updates...
[2026-06-12 23:47:07,611.611 INFO    ] 200
[2026-06-12 23:47:07,613.613 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:47:07,636.636 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 23:47:07,681.681 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 23:47:07,682.682 INFO    ] No camera update needed
[2026-06-12 23:47:07,683.683 INFO    ] Script finished. Safe exiting...
[2026-06-12 23:47:07,685.685 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 23:47:07,687.687 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 23:47:07,690.690 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 23:47:09,728.728 INFO    ] ================================================
[2026-06-12 23:47:09,743.743 INFO    ] Launching Daemon at Fri Jun 12 23:47:09 IST 2026
[2026-06-12 23:47:09,753.753 INFO    ] ================================================
[2026-06-12 23:47:10,076.076 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 23:47:10
[2026-06-12 23:47:10,388.388 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 23:47:10,525.525 INFO    ] Initializing speech engine...
[2026-06-12 23:47:10,534.534 INFO    ] 2026-06-12 23:47:10
[2026-06-12 23:47:10,738.738 INFO    ] 2026-06-12 23:47:10
[2026-06-12 23:47:10,766.766 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 23:47:10,950.950 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 23:47:10,960.960 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 23:47:11,088.088 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 23:47:11,152.152 INFO    ] time= 12/06/2026 23:47:11
[2026-06-12 23:47:11,178.178 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 23:47:11,185.185 INFO    ] Checking for existing commands in stream...
[2026-06-12 23:47:11,251.251 INFO    ] No existing commands found in stream
[2026-06-12 23:47:16,263.263 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 23:47:16,265.265 INFO    ] Waiting 2.24 seconds before fallback handling...
[2026-06-12 23:47:18,841.841 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 23:47:18,843.843 INFO    ] Checking for system updates...
[2026-06-12 23:47:18,863.863 INFO    ] 200
[2026-06-12 23:47:18,865.865 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:47:18,894.894 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 23:47:18,895.895 INFO    ] No update needed
[2026-06-12 23:47:18,897.897 INFO    ] Checking for camera pi updates...
[2026-06-12 23:47:18,916.916 INFO    ] 200
[2026-06-12 23:47:18,918.918 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:47:18,941.941 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 23:47:18,984.984 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 23:47:18,985.985 INFO    ] No camera update needed
[2026-06-12 23:47:18,987.987 INFO    ] Script finished. Safe exiting...
[2026-06-12 23:47:18,988.988 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 23:47:18,991.991 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 23:47:18,994.994 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 23:47:21,031.031 INFO    ] ================================================
[2026-06-12 23:47:21,046.046 INFO    ] Launching Daemon at Fri Jun 12 23:47:21 IST 2026
[2026-06-12 23:47:21,057.057 INFO    ] ================================================
[2026-06-12 23:47:21,397.397 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 23:47:21
[2026-06-12 23:47:21,709.709 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 23:47:21,841.841 INFO    ] Initializing speech engine...
[2026-06-12 23:47:21,844.844 INFO    ] 2026-06-12 23:47:21
[2026-06-12 23:47:22,063.063 INFO    ] 2026-06-12 23:47:22
[2026-06-12 23:47:22,092.092 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 23:47:22,281.281 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 23:47:22,289.289 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 23:47:22,419.419 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 23:47:22,481.481 INFO    ] time= 12/06/2026 23:47:22
[2026-06-12 23:47:22,515.515 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 23:47:22,522.522 INFO    ] Checking for existing commands in stream...
[2026-06-12 23:47:22,591.591 INFO    ] No existing commands found in stream
[2026-06-12 23:47:27,600.600 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 23:47:27,603.603 INFO    ] Waiting 1.41 seconds before fallback handling...
[2026-06-12 23:47:29,351.351 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 23:47:29,352.352 INFO    ] Checking for system updates...
[2026-06-12 23:47:29,374.374 INFO    ] 200
[2026-06-12 23:47:29,375.375 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:47:29,406.406 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 23:47:29,407.407 INFO    ] No update needed
[2026-06-12 23:47:29,408.408 INFO    ] Checking for camera pi updates...
[2026-06-12 23:47:29,428.428 INFO    ] 200
[2026-06-12 23:47:29,430.430 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:47:29,453.453 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 23:47:29,495.495 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 23:47:29,496.496 INFO    ] No camera update needed
[2026-06-12 23:47:29,497.497 INFO    ] Script finished. Safe exiting...
[2026-06-12 23:47:29,498.498 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 23:47:29,502.502 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 23:47:29,504.504 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 23:47:31,544.544 INFO    ] ================================================
[2026-06-12 23:47:31,561.561 INFO    ] Launching Daemon at Fri Jun 12 23:47:31 IST 2026
[2026-06-12 23:47:31,573.573 INFO    ] ================================================
[2026-06-12 23:47:31,982.982 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 23:47:31
[2026-06-12 23:47:32,360.360 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 23:47:32,513.513 INFO    ] Initializing speech engine...
[2026-06-12 23:47:32,519.519 INFO    ] 2026-06-12 23:47:32
[2026-06-12 23:47:32,731.731 INFO    ] 2026-06-12 23:47:32
[2026-06-12 23:47:32,760.760 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 23:47:32,948.948 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 23:47:32,952.952 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 23:47:33,090.090 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 23:47:33,155.155 INFO    ] time= 12/06/2026 23:47:33
[2026-06-12 23:47:33,184.184 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 23:47:33,191.191 INFO    ] Checking for existing commands in stream...
[2026-06-12 23:47:33,258.258 INFO    ] No existing commands found in stream
[2026-06-12 23:47:38,268.268 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 23:47:38,271.271 INFO    ] Waiting 3.59 seconds before fallback handling...
[2026-06-12 23:47:42,282.282 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 23:47:42,284.284 INFO    ] Checking for system updates...
[2026-06-12 23:47:42,305.305 INFO    ] 200
[2026-06-12 23:47:42,306.306 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:47:42,339.339 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 23:47:42,341.341 INFO    ] No update needed
[2026-06-12 23:47:42,342.342 INFO    ] Checking for camera pi updates...
[2026-06-12 23:47:42,364.364 INFO    ] 200
[2026-06-12 23:47:42,365.365 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:47:42,389.389 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 23:47:42,437.437 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 23:47:42,438.438 INFO    ] No camera update needed
[2026-06-12 23:47:42,440.440 INFO    ] Script finished. Safe exiting...
[2026-06-12 23:47:42,441.441 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 23:47:42,444.444 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 23:47:42,447.447 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 23:47:44,487.487 INFO    ] ================================================
[2026-06-12 23:47:44,504.504 INFO    ] Launching Daemon at Fri Jun 12 23:47:44 IST 2026
[2026-06-12 23:47:44,515.515 INFO    ] ================================================
[2026-06-12 23:47:44,875.875 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 23:47:44
[2026-06-12 23:47:45,191.191 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 23:47:45,335.335 INFO    ] Initializing speech engine...
[2026-06-12 23:47:45,340.340 INFO    ] 2026-06-12 23:47:45
[2026-06-12 23:47:45,544.544 INFO    ] 2026-06-12 23:47:45
[2026-06-12 23:47:45,572.572 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 23:47:45,755.755 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 23:47:45,758.758 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 23:47:45,894.894 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 23:47:45,961.961 INFO    ] time= 12/06/2026 23:47:45
[2026-06-12 23:47:45,985.985 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 23:47:45,991.991 INFO    ] Checking for existing commands in stream...
[2026-06-12 23:47:46,058.058 INFO    ] No existing commands found in stream
[2026-06-12 23:47:51,072.072 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 23:47:51,075.075 INFO    ] Waiting 3.06 seconds before fallback handling...
[2026-06-12 23:47:54,544.544 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 23:47:54,545.545 INFO    ] Checking for system updates...
[2026-06-12 23:47:54,566.566 INFO    ] 200
[2026-06-12 23:47:54,567.567 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:47:54,600.600 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 23:47:54,602.602 INFO    ] No update needed
[2026-06-12 23:47:54,604.604 INFO    ] Checking for camera pi updates...
[2026-06-12 23:47:54,625.625 INFO    ] 200
[2026-06-12 23:47:54,626.626 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:47:54,652.652 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 23:47:54,696.696 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 23:47:54,697.697 INFO    ] No camera update needed
[2026-06-12 23:47:54,699.699 INFO    ] Script finished. Safe exiting...
[2026-06-12 23:47:54,700.700 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 23:47:54,704.704 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 23:47:54,707.707 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 23:47:56,746.746 INFO    ] ================================================
[2026-06-12 23:47:56,762.762 INFO    ] Launching Daemon at Fri Jun 12 23:47:56 IST 2026
[2026-06-12 23:47:56,773.773 INFO    ] ================================================
[2026-06-12 23:47:57,134.134 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 23:47:57
[2026-06-12 23:47:57,452.452 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 23:47:57,591.591 INFO    ] Initializing speech engine...
[2026-06-12 23:47:57,601.601 INFO    ] 2026-06-12 23:47:57
[2026-06-12 23:47:57,804.804 INFO    ] 2026-06-12 23:47:57
[2026-06-12 23:47:57,833.833 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 23:47:58,018.018 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 23:47:58,028.028 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 23:47:58,155.155 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 23:47:58,219.219 INFO    ] time= 12/06/2026 23:47:58
[2026-06-12 23:47:58,246.246 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 23:47:58,248.248 INFO    ] Checking for existing commands in stream...
[2026-06-12 23:47:58,344.344 INFO    ] No existing commands found in stream
[2026-06-12 23:48:03,353.353 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 23:48:03,356.356 INFO    ] Waiting 3.34 seconds before fallback handling...
[2026-06-12 23:48:07,061.061 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 23:48:07,062.062 INFO    ] Checking for system updates...
[2026-06-12 23:48:07,083.083 INFO    ] 200
[2026-06-12 23:48:07,084.084 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:48:07,116.116 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 23:48:07,117.117 INFO    ] No update needed
[2026-06-12 23:48:07,118.118 INFO    ] Checking for camera pi updates...
[2026-06-12 23:48:07,140.140 INFO    ] 200
[2026-06-12 23:48:07,142.142 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:48:07,167.167 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 23:48:07,211.211 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 23:48:07,213.213 INFO    ] No camera update needed
[2026-06-12 23:48:07,214.214 INFO    ] Script finished. Safe exiting...
[2026-06-12 23:48:07,215.215 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 23:48:07,218.218 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 23:48:07,221.221 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 23:48:09,260.260 INFO    ] ================================================
[2026-06-12 23:48:09,275.275 INFO    ] Launching Daemon at Fri Jun 12 23:48:09 IST 2026
[2026-06-12 23:48:09,286.286 INFO    ] ================================================
[2026-06-12 23:48:09,613.613 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 23:48:09
[2026-06-12 23:48:09,925.925 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 23:48:10,057.057 INFO    ] Initializing speech engine...
[2026-06-12 23:48:10,062.062 INFO    ] 2026-06-12 23:48:10
[2026-06-12 23:48:10,277.277 INFO    ] 2026-06-12 23:48:10
[2026-06-12 23:48:10,307.307 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 23:48:10,459.459 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 23:48:10,497.497 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 23:48:10,648.648 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 23:48:10,686.686 INFO    ] time= 12/06/2026 23:48:10
[2026-06-12 23:48:10,755.755 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 23:48:10,782.782 INFO    ] Checking for existing commands in stream...
[2026-06-12 23:48:10,885.885 INFO    ] No existing commands found in stream
[2026-06-12 23:48:15,894.894 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 23:48:15,897.897 INFO    ] Waiting 0.33 seconds before fallback handling...
[2026-06-12 23:48:16,619.619 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 23:48:16,621.621 INFO    ] Checking for system updates...
[2026-06-12 23:48:16,643.643 INFO    ] 200
[2026-06-12 23:48:16,645.645 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:48:16,677.677 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 23:48:16,679.679 INFO    ] No update needed
[2026-06-12 23:48:16,680.680 INFO    ] Checking for camera pi updates...
[2026-06-12 23:48:16,700.700 INFO    ] 200
[2026-06-12 23:48:16,702.702 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:48:16,725.725 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 23:48:16,775.775 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 23:48:16,777.777 INFO    ] No camera update needed
[2026-06-12 23:48:16,778.778 INFO    ] Script finished. Safe exiting...
[2026-06-12 23:48:16,780.780 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 23:48:16,783.783 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 23:48:16,786.786 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 23:48:18,825.825 INFO    ] ================================================
[2026-06-12 23:48:18,841.841 INFO    ] Launching Daemon at Fri Jun 12 23:48:18 IST 2026
[2026-06-12 23:48:18,852.852 INFO    ] ================================================
[2026-06-12 23:48:19,192.192 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 23:48:19
[2026-06-12 23:48:19,512.512 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 23:48:19,644.644 INFO    ] Initializing speech engine...
[2026-06-12 23:48:19,653.653 INFO    ] 2026-06-12 23:48:19
[2026-06-12 23:48:19,864.864 INFO    ] 2026-06-12 23:48:19
[2026-06-12 23:48:19,893.893 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 23:48:20,079.079 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 23:48:20,087.087 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 23:48:20,210.210 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 23:48:20,271.271 INFO    ] time= 12/06/2026 23:48:20
[2026-06-12 23:48:20,305.305 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 23:48:20,311.311 INFO    ] Checking for existing commands in stream...
[2026-06-12 23:48:20,406.406 INFO    ] No existing commands found in stream
[2026-06-12 23:48:25,415.415 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 23:48:25,418.418 INFO    ] Waiting 2.14 seconds before fallback handling...
[2026-06-12 23:48:27,909.909 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 23:48:27,911.911 INFO    ] Checking for system updates...
[2026-06-12 23:48:27,931.931 INFO    ] 200
[2026-06-12 23:48:27,933.933 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:48:27,965.965 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 23:48:27,967.967 INFO    ] No update needed
[2026-06-12 23:48:27,968.968 INFO    ] Checking for camera pi updates...
[2026-06-12 23:48:27,987.987 INFO    ] 200
[2026-06-12 23:48:27,989.989 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:48:28,011.011 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 23:48:28,154.154 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 23:48:28,155.155 INFO    ] No camera update needed
[2026-06-12 23:48:28,156.156 INFO    ] Script finished. Safe exiting...
[2026-06-12 23:48:28,157.157 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 23:48:28,161.161 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 23:48:28,163.163 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 23:48:30,203.203 INFO    ] ================================================
[2026-06-12 23:48:30,218.218 INFO    ] Launching Daemon at Fri Jun 12 23:48:30 IST 2026
[2026-06-12 23:48:30,230.230 INFO    ] ================================================
[2026-06-12 23:48:30,572.572 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 23:48:30
[2026-06-12 23:48:30,886.886 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 23:48:31,024.024 INFO    ] Initializing speech engine...
[2026-06-12 23:48:31,033.033 INFO    ] 2026-06-12 23:48:31
[2026-06-12 23:48:31,238.238 INFO    ] 2026-06-12 23:48:31
[2026-06-12 23:48:31,266.266 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 23:48:31,451.451 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 23:48:31,459.459 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 23:48:31,587.587 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 23:48:31,654.654 INFO    ] time= 12/06/2026 23:48:31
[2026-06-12 23:48:31,678.678 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 23:48:31,684.684 INFO    ] Checking for existing commands in stream...
[2026-06-12 23:48:31,751.751 INFO    ] No existing commands found in stream
[2026-06-12 23:48:36,771.771 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 23:48:36,773.773 INFO    ] Waiting 2.62 seconds before fallback handling...
[2026-06-12 23:48:39,743.743 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 23:48:39,744.744 INFO    ] Checking for system updates...
[2026-06-12 23:48:39,766.766 INFO    ] 200
[2026-06-12 23:48:39,767.767 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:48:39,797.797 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 23:48:39,798.798 INFO    ] No update needed
[2026-06-12 23:48:39,800.800 INFO    ] Checking for camera pi updates...
[2026-06-12 23:48:39,819.819 INFO    ] 200
[2026-06-12 23:48:39,821.821 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:48:39,844.844 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 23:48:39,900.900 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 23:48:39,901.901 INFO    ] No camera update needed
[2026-06-12 23:48:39,903.903 INFO    ] Script finished. Safe exiting...
[2026-06-12 23:48:39,904.904 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 23:48:39,907.907 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 23:48:39,910.910 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 23:48:41,950.950 INFO    ] ================================================
[2026-06-12 23:48:41,965.965 INFO    ] Launching Daemon at Fri Jun 12 23:48:41 IST 2026
[2026-06-12 23:48:41,976.976 INFO    ] ================================================
[2026-06-12 23:48:42,312.312 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 23:48:42
[2026-06-12 23:48:42,624.624 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 23:48:42,756.756 INFO    ] Initializing speech engine...
[2026-06-12 23:48:42,759.759 INFO    ] 2026-06-12 23:48:42
[2026-06-12 23:48:42,952.952 INFO    ] 2026-06-12 23:48:42
[2026-06-12 23:48:43,000.000 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 23:48:43,157.157 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 23:48:43,211.211 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 23:48:43,370.370 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 23:48:43,402.402 INFO    ] time= 12/06/2026 23:48:43
[2026-06-12 23:48:43,453.453 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 23:48:43,480.480 INFO    ] Checking for existing commands in stream...
[2026-06-12 23:48:43,557.557 INFO    ] No existing commands found in stream
[2026-06-12 23:48:48,566.566 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 23:48:48,569.569 INFO    ] Waiting 0.57 seconds before fallback handling...
[2026-06-12 23:48:49,509.509 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 23:48:49,511.511 INFO    ] Checking for system updates...
[2026-06-12 23:48:49,531.531 INFO    ] 200
[2026-06-12 23:48:49,533.533 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:48:49,565.565 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 23:48:49,566.566 INFO    ] No update needed
[2026-06-12 23:48:49,567.567 INFO    ] Checking for camera pi updates...
[2026-06-12 23:48:49,586.586 INFO    ] 200
[2026-06-12 23:48:49,588.588 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:48:49,611.611 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 23:48:49,663.663 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 23:48:49,664.664 INFO    ] No camera update needed
[2026-06-12 23:48:49,666.666 INFO    ] Script finished. Safe exiting...
[2026-06-12 23:48:49,667.667 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 23:48:49,670.670 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 23:48:49,673.673 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 23:48:51,711.711 INFO    ] ================================================
[2026-06-12 23:48:51,726.726 INFO    ] Launching Daemon at Fri Jun 12 23:48:51 IST 2026
[2026-06-12 23:48:51,736.736 INFO    ] ================================================
[2026-06-12 23:48:52,086.086 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 23:48:52
[2026-06-12 23:48:52,396.396 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 23:48:52,544.544 INFO    ] Initializing speech engine...
[2026-06-12 23:48:52,550.550 INFO    ] 2026-06-12 23:48:52
[2026-06-12 23:48:52,765.765 INFO    ] 2026-06-12 23:48:52
[2026-06-12 23:48:52,795.795 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 23:48:52,995.995 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 23:48:52,998.998 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 23:48:53,142.142 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 23:48:53,190.190 INFO    ] time= 12/06/2026 23:48:53
[2026-06-12 23:48:53,235.235 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 23:48:53,247.247 INFO    ] Checking for existing commands in stream...
[2026-06-12 23:48:53,322.322 INFO    ] No existing commands found in stream
[2026-06-12 23:48:58,333.333 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 23:48:58,335.335 INFO    ] Waiting 3.39 seconds before fallback handling...
[2026-06-12 23:49:02,119.119 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 23:49:02,122.122 INFO    ] Checking for system updates...
[2026-06-12 23:49:02,172.172 INFO    ] 200
[2026-06-12 23:49:02,175.175 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:49:02,238.238 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 23:49:02,241.241 INFO    ] No update needed
[2026-06-12 23:49:02,243.243 INFO    ] Checking for camera pi updates...
[2026-06-12 23:49:02,268.268 INFO    ] 200
[2026-06-12 23:49:02,270.270 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:49:02,298.298 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 23:49:02,359.359 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 23:49:02,361.361 INFO    ] No camera update needed
[2026-06-12 23:49:02,364.364 INFO    ] Script finished. Safe exiting...
[2026-06-12 23:49:02,366.366 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 23:49:02,371.371 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 23:49:02,376.376 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 23:49:04,415.415 INFO    ] ================================================
[2026-06-12 23:49:04,430.430 INFO    ] Launching Daemon at Fri Jun 12 23:49:04 IST 2026
[2026-06-12 23:49:04,441.441 INFO    ] ================================================
[2026-06-12 23:49:04,793.793 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 23:49:04
[2026-06-12 23:49:05,106.106 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 23:49:05,238.238 INFO    ] Initializing speech engine...
[2026-06-12 23:49:05,250.250 INFO    ] 2026-06-12 23:49:05
[2026-06-12 23:49:05,456.456 INFO    ] 2026-06-12 23:49:05
[2026-06-12 23:49:05,485.485 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 23:49:05,667.667 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 23:49:05,676.676 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 23:49:05,798.798 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 23:49:05,858.858 INFO    ] time= 12/06/2026 23:49:05
[2026-06-12 23:49:05,892.892 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 23:49:05,897.897 INFO    ] Checking for existing commands in stream...
[2026-06-12 23:49:05,968.968 INFO    ] No existing commands found in stream
[2026-06-12 23:49:10,976.976 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 23:49:10,979.979 INFO    ] Waiting 2.45 seconds before fallback handling...
[2026-06-12 23:49:13,809.809 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 23:49:13,811.811 INFO    ] Checking for system updates...
[2026-06-12 23:49:13,831.831 INFO    ] 200
[2026-06-12 23:49:13,832.832 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:49:13,865.865 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 23:49:13,866.866 INFO    ] No update needed
[2026-06-12 23:49:13,867.867 INFO    ] Checking for camera pi updates...
[2026-06-12 23:49:13,886.886 INFO    ] 200
[2026-06-12 23:49:13,888.888 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:49:13,916.916 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 23:49:13,959.959 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 23:49:13,961.961 INFO    ] No camera update needed
[2026-06-12 23:49:13,962.962 INFO    ] Script finished. Safe exiting...
[2026-06-12 23:49:13,963.963 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 23:49:13,966.966 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 23:49:13,969.969 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 23:49:16,007.007 INFO    ] ================================================
[2026-06-12 23:49:16,022.022 INFO    ] Launching Daemon at Fri Jun 12 23:49:16 IST 2026
[2026-06-12 23:49:16,033.033 INFO    ] ================================================
[2026-06-12 23:49:16,385.385 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 23:49:16
[2026-06-12 23:49:16,703.703 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 23:49:16,835.835 INFO    ] Initializing speech engine...
[2026-06-12 23:49:16,839.839 INFO    ] 2026-06-12 23:49:16
[2026-06-12 23:49:17,057.057 INFO    ] 2026-06-12 23:49:17
[2026-06-12 23:49:17,086.086 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 23:49:17,270.270 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 23:49:17,279.279 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 23:49:17,410.410 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 23:49:17,477.477 INFO    ] time= 12/06/2026 23:49:17
[2026-06-12 23:49:17,500.500 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 23:49:17,507.507 INFO    ] Checking for existing commands in stream...
[2026-06-12 23:49:17,573.573 INFO    ] No existing commands found in stream
[2026-06-12 23:49:22,587.587 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 23:49:22,590.590 INFO    ] Waiting 0.69 seconds before fallback handling...
[2026-06-12 23:49:23,657.657 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 23:49:23,659.659 INFO    ] Checking for system updates...
[2026-06-12 23:49:23,682.682 INFO    ] 200
[2026-06-12 23:49:23,684.684 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:49:23,714.714 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 23:49:23,715.715 INFO    ] No update needed
[2026-06-12 23:49:23,717.717 INFO    ] Checking for camera pi updates...
[2026-06-12 23:49:23,740.740 INFO    ] 200
[2026-06-12 23:49:23,741.741 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:49:23,764.764 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 23:49:23,825.825 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 23:49:23,827.827 INFO    ] No camera update needed
[2026-06-12 23:49:23,828.828 INFO    ] Script finished. Safe exiting...
[2026-06-12 23:49:23,829.829 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 23:49:23,832.832 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 23:49:23,835.835 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 23:49:25,873.873 INFO    ] ================================================
[2026-06-12 23:49:25,888.888 INFO    ] Launching Daemon at Fri Jun 12 23:49:25 IST 2026
[2026-06-12 23:49:25,899.899 INFO    ] ================================================
[2026-06-12 23:49:26,233.233 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 23:49:26
[2026-06-12 23:49:26,549.549 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 23:49:26,692.692 INFO    ] Initializing speech engine...
[2026-06-12 23:49:26,698.698 INFO    ] 2026-06-12 23:49:26
[2026-06-12 23:49:26,902.902 INFO    ] 2026-06-12 23:49:26
[2026-06-12 23:49:26,930.930 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 23:49:27,115.115 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 23:49:27,124.124 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 23:49:27,253.253 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 23:49:27,321.321 INFO    ] time= 12/06/2026 23:49:27
[2026-06-12 23:49:27,344.344 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 23:49:27,350.350 INFO    ] Checking for existing commands in stream...
[2026-06-12 23:49:27,416.416 INFO    ] No existing commands found in stream
[2026-06-12 23:49:32,421.421 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 23:49:32,423.423 INFO    ] Waiting 3.43 seconds before fallback handling...
[2026-06-12 23:49:36,209.209 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 23:49:36,210.210 INFO    ] Checking for system updates...
[2026-06-12 23:49:36,231.231 INFO    ] 200
[2026-06-12 23:49:36,232.232 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:49:36,264.264 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 23:49:36,265.265 INFO    ] No update needed
[2026-06-12 23:49:36,267.267 INFO    ] Checking for camera pi updates...
[2026-06-12 23:49:36,286.286 INFO    ] 200
[2026-06-12 23:49:36,287.287 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:49:36,311.311 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 23:49:36,358.358 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 23:49:36,360.360 INFO    ] No camera update needed
[2026-06-12 23:49:36,362.362 INFO    ] Script finished. Safe exiting...
[2026-06-12 23:49:36,363.363 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 23:49:36,366.366 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 23:49:36,369.369 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 23:49:38,407.407 INFO    ] ================================================
[2026-06-12 23:49:38,423.423 INFO    ] Launching Daemon at Fri Jun 12 23:49:38 IST 2026
[2026-06-12 23:49:38,434.434 INFO    ] ================================================
[2026-06-12 23:49:38,767.767 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 23:49:38
[2026-06-12 23:49:39,091.091 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 23:49:39,235.235 INFO    ] Initializing speech engine...
[2026-06-12 23:49:39,245.245 INFO    ] 2026-06-12 23:49:39
[2026-06-12 23:49:39,456.456 INFO    ] 2026-06-12 23:49:39
[2026-06-12 23:49:39,485.485 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 23:49:39,668.668 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 23:49:39,672.672 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 23:49:39,809.809 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 23:49:39,876.876 INFO    ] time= 12/06/2026 23:49:39
[2026-06-12 23:49:39,900.900 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 23:49:39,907.907 INFO    ] Checking for existing commands in stream...
[2026-06-12 23:49:39,974.974 INFO    ] No existing commands found in stream
[2026-06-12 23:49:44,988.988 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 23:49:44,992.992 INFO    ] Waiting 0.35 seconds before fallback handling...
[2026-06-12 23:49:45,708.708 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 23:49:45,710.710 INFO    ] Checking for system updates...
[2026-06-12 23:49:45,731.731 INFO    ] 200
[2026-06-12 23:49:45,732.732 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:49:45,765.765 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 23:49:45,766.766 INFO    ] No update needed
[2026-06-12 23:49:45,768.768 INFO    ] Checking for camera pi updates...
[2026-06-12 23:49:45,788.788 INFO    ] 200
[2026-06-12 23:49:45,790.790 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:49:45,813.813 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 23:49:45,857.857 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 23:49:45,859.859 INFO    ] No camera update needed
[2026-06-12 23:49:45,860.860 INFO    ] Script finished. Safe exiting...
[2026-06-12 23:49:45,861.861 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 23:49:45,864.864 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 23:49:45,867.867 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 23:49:47,906.906 INFO    ] ================================================
[2026-06-12 23:49:47,922.922 INFO    ] Launching Daemon at Fri Jun 12 23:49:47 IST 2026
[2026-06-12 23:49:47,933.933 INFO    ] ================================================
[2026-06-12 23:49:48,260.260 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 23:49:48
[2026-06-12 23:49:48,571.571 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 23:49:48,702.702 INFO    ] Initializing speech engine...
[2026-06-12 23:49:48,710.710 INFO    ] 2026-06-12 23:49:48
[2026-06-12 23:49:48,920.920 INFO    ] 2026-06-12 23:49:48
[2026-06-12 23:49:48,950.950 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 23:49:49,135.135 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 23:49:49,144.144 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 23:49:49,269.269 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 23:49:49,336.336 INFO    ] time= 12/06/2026 23:49:49
[2026-06-12 23:49:49,365.365 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 23:49:49,371.371 INFO    ] Checking for existing commands in stream...
[2026-06-12 23:49:49,438.438 INFO    ] No existing commands found in stream
[2026-06-12 23:49:54,447.447 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 23:49:54,450.450 INFO    ] Waiting 2.98 seconds before fallback handling...
[2026-06-12 23:49:57,788.788 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 23:49:57,789.789 INFO    ] Checking for system updates...
[2026-06-12 23:49:57,810.810 INFO    ] 200
[2026-06-12 23:49:57,812.812 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:49:57,844.844 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 23:49:57,845.845 INFO    ] No update needed
[2026-06-12 23:49:57,847.847 INFO    ] Checking for camera pi updates...
[2026-06-12 23:49:57,866.866 INFO    ] 200
[2026-06-12 23:49:57,867.867 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:49:57,890.890 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 23:49:57,942.942 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 23:49:57,943.943 INFO    ] No camera update needed
[2026-06-12 23:49:57,945.945 INFO    ] Script finished. Safe exiting...
[2026-06-12 23:49:57,946.946 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 23:49:57,949.949 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 23:49:57,952.952 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 23:49:59,993.993 INFO    ] ================================================
[2026-06-12 23:50:00,009.009 INFO    ] Launching Daemon at Fri Jun 12 23:50:00 IST 2026
[2026-06-12 23:50:00,020.020 INFO    ] ================================================
[2026-06-12 23:50:00,373.373 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 23:50:00
[2026-06-12 23:50:00,684.684 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 23:50:00,826.826 INFO    ] Initializing speech engine...
[2026-06-12 23:50:00,837.837 INFO    ] 2026-06-12 23:50:00
[2026-06-12 23:50:01,048.048 INFO    ] 2026-06-12 23:50:01
[2026-06-12 23:50:01,089.089 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 23:50:01,277.277 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 23:50:01,280.280 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 23:50:01,434.434 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 23:50:01,451.451 INFO    ] time= 12/06/2026 23:50:01
[2026-06-12 23:50:01,453.453 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 23:50:01,455.455 INFO    ] Checking for existing commands in stream...
[2026-06-12 23:50:01,515.515 INFO    ] No existing commands found in stream
[2026-06-12 23:50:06,529.529 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 23:50:06,532.532 INFO    ] Waiting 1.16 seconds before fallback handling...
[2026-06-12 23:50:08,874.874 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 23:50:08,876.876 INFO    ] Checking for system updates...
[2026-06-12 23:50:08,913.913 INFO    ] 200
[2026-06-12 23:50:08,915.915 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:50:08,975.975 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 23:50:08,977.977 INFO    ] No update needed
[2026-06-12 23:50:08,980.980 INFO    ] Checking for camera pi updates...
[2026-06-12 23:50:09,014.014 INFO    ] 200
[2026-06-12 23:50:09,017.017 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:50:09,046.046 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 23:50:09,089.089 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 23:50:09,090.090 INFO    ] No camera update needed
[2026-06-12 23:50:09,092.092 INFO    ] Script finished. Safe exiting...
[2026-06-12 23:50:09,093.093 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 23:50:09,096.096 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 23:50:09,098.098 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 23:50:11,138.138 INFO    ] ================================================
[2026-06-12 23:50:11,153.153 INFO    ] Launching Daemon at Fri Jun 12 23:50:11 IST 2026
[2026-06-12 23:50:11,165.165 INFO    ] ================================================
[2026-06-12 23:50:11,497.497 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 23:50:11
[2026-06-12 23:50:11,809.809 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 23:50:11,940.940 INFO    ] Initializing speech engine...
[2026-06-12 23:50:11,943.943 INFO    ] 2026-06-12 23:50:11
[2026-06-12 23:50:12,163.163 INFO    ] 2026-06-12 23:50:12
[2026-06-12 23:50:12,193.193 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 23:50:12,379.379 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 23:50:12,383.383 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 23:50:12,520.520 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 23:50:12,589.589 INFO    ] time= 12/06/2026 23:50:12
[2026-06-12 23:50:12,613.613 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 23:50:12,619.619 INFO    ] Checking for existing commands in stream...
[2026-06-12 23:50:12,688.688 INFO    ] No existing commands found in stream
[2026-06-12 23:50:17,702.702 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 23:50:17,704.704 INFO    ] Waiting 3.23 seconds before fallback handling...
[2026-06-12 23:50:21,314.314 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 23:50:21,315.315 INFO    ] Checking for system updates...
[2026-06-12 23:50:21,336.336 INFO    ] 200
[2026-06-12 23:50:21,337.337 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:50:21,369.369 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 23:50:21,371.371 INFO    ] No update needed
[2026-06-12 23:50:21,372.372 INFO    ] Checking for camera pi updates...
[2026-06-12 23:50:21,391.391 INFO    ] 200
[2026-06-12 23:50:21,393.393 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:50:21,417.417 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 23:50:21,463.463 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 23:50:21,464.464 INFO    ] No camera update needed
[2026-06-12 23:50:21,465.465 INFO    ] Script finished. Safe exiting...
[2026-06-12 23:50:21,466.466 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 23:50:21,469.469 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 23:50:21,472.472 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 23:50:23,510.510 INFO    ] ================================================
[2026-06-12 23:50:23,526.526 INFO    ] Launching Daemon at Fri Jun 12 23:50:23 IST 2026
[2026-06-12 23:50:23,538.538 INFO    ] ================================================
[2026-06-12 23:50:23,876.876 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 23:50:23
[2026-06-12 23:50:24,188.188 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 23:50:24,316.316 INFO    ] Initializing speech engine...
[2026-06-12 23:50:24,320.320 INFO    ] 2026-06-12 23:50:24
[2026-06-12 23:50:24,537.537 INFO    ] 2026-06-12 23:50:24
[2026-06-12 23:50:24,566.566 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 23:50:24,749.749 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 23:50:24,759.759 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 23:50:24,888.888 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 23:50:24,955.955 INFO    ] time= 12/06/2026 23:50:24
[2026-06-12 23:50:24,978.978 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 23:50:24,980.980 INFO    ] Checking for existing commands in stream...
[2026-06-12 23:50:25,052.052 INFO    ] No existing commands found in stream
[2026-06-12 23:50:30,061.061 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 23:50:30,063.063 INFO    ] Waiting 3.19 seconds before fallback handling...
[2026-06-12 23:50:33,615.615 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 23:50:33,617.617 INFO    ] Checking for system updates...
[2026-06-12 23:50:33,637.637 INFO    ] 200
[2026-06-12 23:50:33,639.639 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:50:33,669.669 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 23:50:33,671.671 INFO    ] No update needed
[2026-06-12 23:50:33,672.672 INFO    ] Checking for camera pi updates...
[2026-06-12 23:50:33,693.693 INFO    ] 200
[2026-06-12 23:50:33,694.694 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:50:33,717.717 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 23:50:33,773.773 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 23:50:33,775.775 INFO    ] No camera update needed
[2026-06-12 23:50:33,776.776 INFO    ] Script finished. Safe exiting...
[2026-06-12 23:50:33,777.777 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 23:50:33,780.780 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 23:50:33,783.783 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 23:50:35,823.823 INFO    ] ================================================
[2026-06-12 23:50:35,838.838 INFO    ] Launching Daemon at Fri Jun 12 23:50:35 IST 2026
[2026-06-12 23:50:35,849.849 INFO    ] ================================================
[2026-06-12 23:50:36,179.179 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 23:50:36
[2026-06-12 23:50:36,490.490 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 23:50:36,620.620 INFO    ] Initializing speech engine...
[2026-06-12 23:50:36,628.628 INFO    ] 2026-06-12 23:50:36
[2026-06-12 23:50:36,838.838 INFO    ] 2026-06-12 23:50:36
[2026-06-12 23:50:36,867.867 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 23:50:37,050.050 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 23:50:37,058.058 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 23:50:37,208.208 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 23:50:37,255.255 INFO    ] time= 12/06/2026 23:50:37
[2026-06-12 23:50:37,294.294 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 23:50:37,317.317 INFO    ] Checking for existing commands in stream...
[2026-06-12 23:50:37,392.392 INFO    ] No existing commands found in stream
[2026-06-12 23:50:42,403.403 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 23:50:42,406.406 INFO    ] Waiting 1.18 seconds before fallback handling...
[2026-06-12 23:50:43,954.954 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 23:50:43,956.956 INFO    ] Checking for system updates...
[2026-06-12 23:50:43,976.976 INFO    ] 200
[2026-06-12 23:50:43,978.978 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:50:44,010.010 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 23:50:44,012.012 INFO    ] No update needed
[2026-06-12 23:50:44,013.013 INFO    ] Checking for camera pi updates...
[2026-06-12 23:50:44,035.035 INFO    ] 200
[2026-06-12 23:50:44,037.037 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:50:44,062.062 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 23:50:44,110.110 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 23:50:44,112.112 INFO    ] No camera update needed
[2026-06-12 23:50:44,113.113 INFO    ] Script finished. Safe exiting...
[2026-06-12 23:50:44,114.114 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 23:50:44,118.118 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 23:50:44,121.121 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 23:50:46,160.160 INFO    ] ================================================
[2026-06-12 23:50:46,176.176 INFO    ] Launching Daemon at Fri Jun 12 23:50:46 IST 2026
[2026-06-12 23:50:46,187.187 INFO    ] ================================================
[2026-06-12 23:50:46,514.514 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 23:50:46
[2026-06-12 23:50:46,826.826 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 23:50:46,969.969 INFO    ] Initializing speech engine...
[2026-06-12 23:50:46,974.974 INFO    ] 2026-06-12 23:50:46
[2026-06-12 23:50:47,177.177 INFO    ] 2026-06-12 23:50:47
[2026-06-12 23:50:47,205.205 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 23:50:47,390.390 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 23:50:47,399.399 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 23:50:47,525.525 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 23:50:47,592.592 INFO    ] time= 12/06/2026 23:50:47
[2026-06-12 23:50:47,619.619 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 23:50:47,625.625 INFO    ] Checking for existing commands in stream...
[2026-06-12 23:50:47,691.691 INFO    ] No existing commands found in stream
[2026-06-12 23:50:52,702.702 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 23:50:52,704.704 INFO    ] Waiting 2.66 seconds before fallback handling...
[2026-06-12 23:50:55,745.745 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 23:50:55,747.747 INFO    ] Checking for system updates...
[2026-06-12 23:50:55,767.767 INFO    ] 200
[2026-06-12 23:50:55,768.768 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:50:55,801.801 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 23:50:55,802.802 INFO    ] No update needed
[2026-06-12 23:50:55,803.803 INFO    ] Checking for camera pi updates...
[2026-06-12 23:50:55,823.823 INFO    ] 200
[2026-06-12 23:50:55,825.825 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:50:55,847.847 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 23:50:55,910.910 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 23:50:55,911.911 INFO    ] No camera update needed
[2026-06-12 23:50:55,913.913 INFO    ] Script finished. Safe exiting...
[2026-06-12 23:50:55,914.914 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 23:50:55,917.917 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 23:50:55,920.920 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 23:50:57,959.959 INFO    ] ================================================
[2026-06-12 23:50:57,975.975 INFO    ] Launching Daemon at Fri Jun 12 23:50:57 IST 2026
[2026-06-12 23:50:57,985.985 INFO    ] ================================================
[2026-06-12 23:50:58,340.340 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 23:50:58
[2026-06-12 23:50:58,656.656 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 23:50:58,789.789 INFO    ] Initializing speech engine...
[2026-06-12 23:50:58,792.792 INFO    ] 2026-06-12 23:50:58
[2026-06-12 23:50:59,009.009 INFO    ] 2026-06-12 23:50:58
[2026-06-12 23:50:59,038.038 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 23:50:59,222.222 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 23:50:59,225.225 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 23:50:59,364.364 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 23:50:59,428.428 INFO    ] time= 12/06/2026 23:50:59
[2026-06-12 23:50:59,454.454 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 23:50:59,456.456 INFO    ] Checking for existing commands in stream...
[2026-06-12 23:50:59,528.528 INFO    ] No existing commands found in stream
[2026-06-12 23:51:04,537.537 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 23:51:04,540.540 INFO    ] Waiting 2.36 seconds before fallback handling...
[2026-06-12 23:51:07,273.273 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 23:51:07,274.274 INFO    ] Checking for system updates...
[2026-06-12 23:51:07,295.295 INFO    ] 200
[2026-06-12 23:51:07,297.297 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:51:07,329.329 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 23:51:07,331.331 INFO    ] No update needed
[2026-06-12 23:51:07,332.332 INFO    ] Checking for camera pi updates...
[2026-06-12 23:51:07,351.351 INFO    ] 200
[2026-06-12 23:51:07,353.353 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:51:07,376.376 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 23:51:07,416.416 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 23:51:07,417.417 INFO    ] No camera update needed
[2026-06-12 23:51:07,418.418 INFO    ] Script finished. Safe exiting...
[2026-06-12 23:51:07,420.420 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 23:51:07,423.423 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 23:51:07,425.425 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 23:51:09,463.463 INFO    ] ================================================
[2026-06-12 23:51:09,478.478 INFO    ] Launching Daemon at Fri Jun 12 23:51:09 IST 2026
[2026-06-12 23:51:09,488.488 INFO    ] ================================================
[2026-06-12 23:51:09,822.822 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 23:51:09
[2026-06-12 23:51:10,135.135 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 23:51:10,264.264 INFO    ] Initializing speech engine...
[2026-06-12 23:51:10,271.271 INFO    ] 2026-06-12 23:51:10
[2026-06-12 23:51:10,482.482 INFO    ] 2026-06-12 23:51:10
[2026-06-12 23:51:10,512.512 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 23:51:10,694.694 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 23:51:10,704.704 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 23:51:10,827.827 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 23:51:10,888.888 INFO    ] time= 12/06/2026 23:51:10
[2026-06-12 23:51:10,922.922 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 23:51:10,945.945 INFO    ] Checking for existing commands in stream...
[2026-06-12 23:51:11,039.039 INFO    ] No existing commands found in stream
[2026-06-12 23:51:16,048.048 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 23:51:16,051.051 INFO    ] Waiting 0.15 seconds before fallback handling...
[2026-06-12 23:51:16,502.502 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 23:51:16,504.504 INFO    ] Checking for system updates...
[2026-06-12 23:51:16,525.525 INFO    ] 200
[2026-06-12 23:51:16,526.526 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:51:16,556.556 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 23:51:16,558.558 INFO    ] No update needed
[2026-06-12 23:51:16,559.559 INFO    ] Checking for camera pi updates...
[2026-06-12 23:51:16,579.579 INFO    ] 200
[2026-06-12 23:51:16,580.580 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:51:16,605.605 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 23:51:16,653.653 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 23:51:16,654.654 INFO    ] No camera update needed
[2026-06-12 23:51:16,656.656 INFO    ] Script finished. Safe exiting...
[2026-06-12 23:51:16,657.657 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 23:51:16,661.661 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 23:51:16,664.664 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 23:51:18,702.702 INFO    ] ================================================
[2026-06-12 23:51:18,717.717 INFO    ] Launching Daemon at Fri Jun 12 23:51:18 IST 2026
[2026-06-12 23:51:18,728.728 INFO    ] ================================================
[2026-06-12 23:51:19,116.116 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 23:51:19
[2026-06-12 23:51:19,457.457 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 23:51:19,610.610 INFO    ] Initializing speech engine...
[2026-06-12 23:51:19,614.614 INFO    ] 2026-06-12 23:51:19
[2026-06-12 23:51:19,815.815 INFO    ] 2026-06-12 23:51:19
[2026-06-12 23:51:19,843.843 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 23:51:20,027.027 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 23:51:20,036.036 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 23:51:20,158.158 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 23:51:20,219.219 INFO    ] time= 12/06/2026 23:51:20
[2026-06-12 23:51:20,248.248 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 23:51:20,258.258 INFO    ] Checking for existing commands in stream...
[2026-06-12 23:51:20,329.329 INFO    ] No existing commands found in stream
[2026-06-12 23:51:25,341.341 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 23:51:25,342.342 INFO    ] Waiting 3.88 seconds before fallback handling...
[2026-06-12 23:51:29,591.591 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 23:51:29,593.593 INFO    ] Checking for system updates...
[2026-06-12 23:51:29,613.613 INFO    ] 200
[2026-06-12 23:51:29,614.614 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:51:29,647.647 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 23:51:29,648.648 INFO    ] No update needed
[2026-06-12 23:51:29,649.649 INFO    ] Checking for camera pi updates...
[2026-06-12 23:51:29,668.668 INFO    ] 200
[2026-06-12 23:51:29,670.670 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:51:29,696.696 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 23:51:29,744.744 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 23:51:29,745.745 INFO    ] No camera update needed
[2026-06-12 23:51:29,746.746 INFO    ] Script finished. Safe exiting...
[2026-06-12 23:51:29,748.748 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 23:51:29,751.751 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 23:51:29,753.753 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 23:51:31,793.793 INFO    ] ================================================
[2026-06-12 23:51:31,811.811 INFO    ] Launching Daemon at Fri Jun 12 23:51:31 IST 2026
[2026-06-12 23:51:31,822.822 INFO    ] ================================================
[2026-06-12 23:51:32,232.232 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 23:51:32
[2026-06-12 23:51:32,598.598 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 23:51:32,734.734 INFO    ] Initializing speech engine...
[2026-06-12 23:51:32,745.745 INFO    ] 2026-06-12 23:51:32
[2026-06-12 23:51:32,947.947 INFO    ] 2026-06-12 23:51:32
[2026-06-12 23:51:32,976.976 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 23:51:33,098.098 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 23:51:33,162.162 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 23:51:33,299.299 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 23:51:33,363.363 INFO    ] time= 12/06/2026 23:51:33
[2026-06-12 23:51:33,391.391 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 23:51:33,392.392 INFO    ] Checking for existing commands in stream...
[2026-06-12 23:51:33,463.463 INFO    ] No existing commands found in stream
[2026-06-12 23:51:38,477.477 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 23:51:38,480.480 INFO    ] Waiting 2.25 seconds before fallback handling...
[2026-06-12 23:51:41,101.101 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 23:51:41,103.103 INFO    ] Checking for system updates...
[2026-06-12 23:51:41,124.124 INFO    ] 200
[2026-06-12 23:51:41,126.126 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:51:41,155.155 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 23:51:41,156.156 INFO    ] No update needed
[2026-06-12 23:51:41,158.158 INFO    ] Checking for camera pi updates...
[2026-06-12 23:51:41,177.177 INFO    ] 200
[2026-06-12 23:51:41,178.178 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:51:41,202.202 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 23:51:41,250.250 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 23:51:41,251.251 INFO    ] No camera update needed
[2026-06-12 23:51:41,252.252 INFO    ] Script finished. Safe exiting...
[2026-06-12 23:51:41,254.254 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 23:51:41,256.256 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 23:51:41,259.259 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 23:51:43,297.297 INFO    ] ================================================
[2026-06-12 23:51:43,312.312 INFO    ] Launching Daemon at Fri Jun 12 23:51:43 IST 2026
[2026-06-12 23:51:43,324.324 INFO    ] ================================================
[2026-06-12 23:51:43,661.661 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 23:51:43
[2026-06-12 23:51:43,978.978 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 23:51:44,122.122 INFO    ] Initializing speech engine...
[2026-06-12 23:51:44,127.127 INFO    ] 2026-06-12 23:51:44
[2026-06-12 23:51:44,330.330 INFO    ] 2026-06-12 23:51:44
[2026-06-12 23:51:44,358.358 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 23:51:44,542.542 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 23:51:44,546.546 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 23:51:44,684.684 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 23:51:44,748.748 INFO    ] time= 12/06/2026 23:51:44
[2026-06-12 23:51:44,774.774 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 23:51:44,780.780 INFO    ] Checking for existing commands in stream...
[2026-06-12 23:51:44,848.848 INFO    ] No existing commands found in stream
[2026-06-12 23:51:49,862.862 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 23:51:49,865.865 INFO    ] Waiting 3.11 seconds before fallback handling...
[2026-06-12 23:51:53,333.333 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 23:51:53,335.335 INFO    ] Checking for system updates...
[2026-06-12 23:51:53,358.358 INFO    ] 200
[2026-06-12 23:51:53,360.360 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:51:53,396.396 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 23:51:53,397.397 INFO    ] No update needed
[2026-06-12 23:51:53,399.399 INFO    ] Checking for camera pi updates...
[2026-06-12 23:51:53,423.423 INFO    ] 200
[2026-06-12 23:51:53,424.424 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:51:53,451.451 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 23:51:53,502.502 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 23:51:53,504.504 INFO    ] No camera update needed
[2026-06-12 23:51:53,505.505 INFO    ] Script finished. Safe exiting...
[2026-06-12 23:51:53,506.506 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 23:51:53,510.510 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 23:51:53,513.513 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 23:51:55,551.551 INFO    ] ================================================
[2026-06-12 23:51:55,567.567 INFO    ] Launching Daemon at Fri Jun 12 23:51:55 IST 2026
[2026-06-12 23:51:55,578.578 INFO    ] ================================================
[2026-06-12 23:51:55,915.915 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 23:51:55
[2026-06-12 23:51:56,226.226 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 23:51:56,369.369 INFO    ] Initializing speech engine...
[2026-06-12 23:51:56,374.374 INFO    ] 2026-06-12 23:51:56
[2026-06-12 23:51:56,578.578 INFO    ] 2026-06-12 23:51:56
[2026-06-12 23:51:56,608.608 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 23:51:56,792.792 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 23:51:56,795.795 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 23:51:56,926.926 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 23:51:56,987.987 INFO    ] time= 12/06/2026 23:51:56
[2026-06-12 23:51:57,022.022 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 23:51:57,028.028 INFO    ] Checking for existing commands in stream...
[2026-06-12 23:51:57,098.098 INFO    ] No existing commands found in stream
[2026-06-12 23:52:02,108.108 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 23:52:02,113.113 INFO    ] Waiting 2.23 seconds before fallback handling...
[2026-06-12 23:52:04,690.690 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 23:52:04,691.691 INFO    ] Checking for system updates...
[2026-06-12 23:52:04,714.714 INFO    ] 200
[2026-06-12 23:52:04,716.716 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:52:04,745.745 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 23:52:04,746.746 INFO    ] No update needed
[2026-06-12 23:52:04,748.748 INFO    ] Checking for camera pi updates...
[2026-06-12 23:52:04,769.769 INFO    ] 200
[2026-06-12 23:52:04,771.771 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:52:04,795.795 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 23:52:04,850.850 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 23:52:04,851.851 INFO    ] No camera update needed
[2026-06-12 23:52:04,853.853 INFO    ] Script finished. Safe exiting...
[2026-06-12 23:52:04,854.854 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 23:52:04,857.857 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 23:52:04,859.859 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 23:52:06,898.898 INFO    ] ================================================
[2026-06-12 23:52:06,915.915 INFO    ] Launching Daemon at Fri Jun 12 23:52:06 IST 2026
[2026-06-12 23:52:06,926.926 INFO    ] ================================================
[2026-06-12 23:52:07,283.283 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 23:52:07
[2026-06-12 23:52:07,600.600 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 23:52:07,770.770 INFO    ] Initializing speech engine...
[2026-06-12 23:52:07,784.784 INFO    ] 2026-06-12 23:52:07
[2026-06-12 23:52:07,999.999 INFO    ] 2026-06-12 23:52:07
[2026-06-12 23:52:08,028.028 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 23:52:08,153.153 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 23:52:08,211.211 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 23:52:08,341.341 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 23:52:08,412.412 INFO    ] time= 12/06/2026 23:52:08
[2026-06-12 23:52:08,438.438 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 23:52:08,445.445 INFO    ] Checking for existing commands in stream...
[2026-06-12 23:52:08,510.510 INFO    ] No existing commands found in stream
[2026-06-12 23:52:13,520.520 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 23:52:13,523.523 INFO    ] Waiting 2.57 seconds before fallback handling...
[2026-06-12 23:52:16,460.460 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 23:52:16,462.462 INFO    ] Checking for system updates...
[2026-06-12 23:52:16,482.482 INFO    ] 200
[2026-06-12 23:52:16,483.483 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:52:16,513.513 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 23:52:16,515.515 INFO    ] No update needed
[2026-06-12 23:52:16,516.516 INFO    ] Checking for camera pi updates...
[2026-06-12 23:52:16,535.535 INFO    ] 200
[2026-06-12 23:52:16,536.536 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:52:16,560.560 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 23:52:16,602.602 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 23:52:16,603.603 INFO    ] No camera update needed
[2026-06-12 23:52:16,604.604 INFO    ] Script finished. Safe exiting...
[2026-06-12 23:52:16,606.606 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 23:52:16,609.609 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 23:52:16,611.611 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 23:52:18,643.643 INFO    ] ================================================
[2026-06-12 23:52:18,658.658 INFO    ] Launching Daemon at Fri Jun 12 23:52:18 IST 2026
[2026-06-12 23:52:18,669.669 INFO    ] ================================================
[2026-06-12 23:52:19,018.018 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 23:52:19
[2026-06-12 23:52:19,335.335 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 23:52:19,479.479 INFO    ] Initializing speech engine...
[2026-06-12 23:52:19,484.484 INFO    ] 2026-06-12 23:52:19
[2026-06-12 23:52:19,689.689 INFO    ] 2026-06-12 23:52:19
[2026-06-12 23:52:19,718.718 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 23:52:19,905.905 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 23:52:19,913.913 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 23:52:20,040.040 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 23:52:20,107.107 INFO    ] time= 12/06/2026 23:52:20
[2026-06-12 23:52:20,135.135 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 23:52:20,136.136 INFO    ] Checking for existing commands in stream...
[2026-06-12 23:52:20,208.208 INFO    ] No existing commands found in stream
[2026-06-12 23:52:25,217.217 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 23:52:25,220.220 INFO    ] Waiting 2.57 seconds before fallback handling...
[2026-06-12 23:52:28,158.158 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 23:52:28,160.160 INFO    ] Checking for system updates...
[2026-06-12 23:52:28,182.182 INFO    ] 200
[2026-06-12 23:52:28,183.183 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:52:28,215.215 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 23:52:28,217.217 INFO    ] No update needed
[2026-06-12 23:52:28,218.218 INFO    ] Checking for camera pi updates...
[2026-06-12 23:52:28,239.239 INFO    ] 200
[2026-06-12 23:52:28,240.240 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:52:28,263.263 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 23:52:28,310.310 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 23:52:28,312.312 INFO    ] No camera update needed
[2026-06-12 23:52:28,313.313 INFO    ] Script finished. Safe exiting...
[2026-06-12 23:52:28,314.314 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 23:52:28,317.317 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 23:52:28,320.320 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 23:52:30,359.359 INFO    ] ================================================
[2026-06-12 23:52:30,375.375 INFO    ] Launching Daemon at Fri Jun 12 23:52:30 IST 2026
[2026-06-12 23:52:30,387.387 INFO    ] ================================================
[2026-06-12 23:52:30,744.744 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 23:52:30
[2026-06-12 23:52:31,084.084 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 23:52:31,237.237 INFO    ] Initializing speech engine...
[2026-06-12 23:52:31,241.241 INFO    ] 2026-06-12 23:52:31
[2026-06-12 23:52:31,450.450 INFO    ] 2026-06-12 23:52:31
[2026-06-12 23:52:31,479.479 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 23:52:31,606.606 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 23:52:31,663.663 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 23:52:31,803.803 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 23:52:31,867.867 INFO    ] time= 12/06/2026 23:52:31
[2026-06-12 23:52:31,894.894 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 23:52:31,901.901 INFO    ] Checking for existing commands in stream...
[2026-06-12 23:52:31,989.989 INFO    ] No existing commands found in stream
[2026-06-12 23:52:37,008.008 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 23:52:37,012.012 INFO    ] Waiting 0.91 seconds before fallback handling...
[2026-06-12 23:52:38,310.310 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 23:52:38,311.311 INFO    ] Checking for system updates...
[2026-06-12 23:52:38,332.332 INFO    ] 200
[2026-06-12 23:52:38,334.334 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:52:38,366.366 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 23:52:38,368.368 INFO    ] No update needed
[2026-06-12 23:52:38,369.369 INFO    ] Checking for camera pi updates...
[2026-06-12 23:52:38,390.390 INFO    ] 200
[2026-06-12 23:52:38,391.391 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:52:38,415.415 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 23:52:38,560.560 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 23:52:38,562.562 INFO    ] No camera update needed
[2026-06-12 23:52:38,563.563 INFO    ] Script finished. Safe exiting...
[2026-06-12 23:52:38,565.565 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 23:52:38,568.568 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 23:52:38,571.571 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 23:52:40,611.611 INFO    ] ================================================
[2026-06-12 23:52:40,627.627 INFO    ] Launching Daemon at Fri Jun 12 23:52:40 IST 2026
[2026-06-12 23:52:40,639.639 INFO    ] ================================================
[2026-06-12 23:52:40,987.987 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 23:52:40
[2026-06-12 23:52:41,327.327 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 23:52:41,485.485 INFO    ] Initializing speech engine...
[2026-06-12 23:52:41,491.491 INFO    ] 2026-06-12 23:52:41
[2026-06-12 23:52:41,691.691 INFO    ] 2026-06-12 23:52:41
[2026-06-12 23:52:41,720.720 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 23:52:41,905.905 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 23:52:41,915.915 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 23:52:42,043.043 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 23:52:42,111.111 INFO    ] time= 12/06/2026 23:52:42
[2026-06-12 23:52:42,134.134 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 23:52:42,141.141 INFO    ] Checking for existing commands in stream...
[2026-06-12 23:52:42,231.231 INFO    ] No existing commands found in stream
[2026-06-12 23:52:47,246.246 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 23:52:47,249.249 INFO    ] Waiting 2.44 seconds before fallback handling...
[2026-06-12 23:52:50,079.079 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 23:52:50,081.081 INFO    ] Checking for system updates...
[2026-06-12 23:52:50,102.102 INFO    ] 200
[2026-06-12 23:52:50,103.103 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:52:50,135.135 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 23:52:50,136.136 INFO    ] No update needed
[2026-06-12 23:52:50,138.138 INFO    ] Checking for camera pi updates...
[2026-06-12 23:52:50,158.158 INFO    ] 200
[2026-06-12 23:52:50,159.159 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:52:50,185.185 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 23:52:50,238.238 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 23:52:50,239.239 INFO    ] No camera update needed
[2026-06-12 23:52:50,241.241 INFO    ] Script finished. Safe exiting...
[2026-06-12 23:52:50,242.242 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 23:52:50,245.245 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 23:52:50,248.248 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 23:52:52,287.287 INFO    ] ================================================
[2026-06-12 23:52:52,302.302 INFO    ] Launching Daemon at Fri Jun 12 23:52:52 IST 2026
[2026-06-12 23:52:52,314.314 INFO    ] ================================================
[2026-06-12 23:52:52,651.651 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 23:52:52
[2026-06-12 23:52:52,964.964 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 23:52:53,096.096 INFO    ] Initializing speech engine...
[2026-06-12 23:52:53,100.100 INFO    ] 2026-06-12 23:52:53
[2026-06-12 23:52:53,292.292 INFO    ] 2026-06-12 23:52:53
[2026-06-12 23:52:53,337.337 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 23:52:53,496.496 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 23:52:53,540.540 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 23:52:53,708.708 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 23:52:53,731.731 INFO    ] time= 12/06/2026 23:52:53
[2026-06-12 23:52:53,792.792 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 23:52:53,818.818 INFO    ] Checking for existing commands in stream...
[2026-06-12 23:52:53,922.922 INFO    ] No existing commands found in stream
[2026-06-12 23:52:58,936.936 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 23:52:58,938.938 INFO    ] Waiting 0.10 seconds before fallback handling...
[2026-06-12 23:52:59,377.377 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 23:52:59,379.379 INFO    ] Checking for system updates...
[2026-06-12 23:52:59,402.402 INFO    ] 200
[2026-06-12 23:52:59,403.403 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:52:59,443.443 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 23:52:59,444.444 INFO    ] No update needed
[2026-06-12 23:52:59,446.446 INFO    ] Checking for camera pi updates...
[2026-06-12 23:52:59,473.473 INFO    ] 200
[2026-06-12 23:52:59,475.475 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:52:59,505.505 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 23:52:59,564.564 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 23:52:59,566.566 INFO    ] No camera update needed
[2026-06-12 23:52:59,568.568 INFO    ] Script finished. Safe exiting...
[2026-06-12 23:52:59,570.570 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 23:52:59,574.574 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 23:52:59,578.578 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 23:53:01,613.613 INFO    ] ================================================
[2026-06-12 23:53:01,624.624 INFO    ] Launching Daemon at Fri Jun 12 23:53:01 IST 2026
[2026-06-12 23:53:01,633.633 INFO    ] ================================================
[2026-06-12 23:53:02,033.033 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 23:53:02
[2026-06-12 23:53:02,358.358 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 23:53:02,490.490 INFO    ] Initializing speech engine...
[2026-06-12 23:53:02,495.495 INFO    ] 2026-06-12 23:53:02
[2026-06-12 23:53:02,689.689 INFO    ] 2026-06-12 23:53:02
[2026-06-12 23:53:02,734.734 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 23:53:02,893.893 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 23:53:02,946.946 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 23:53:03,077.077 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 23:53:03,078.078 INFO    ] time= 12/06/2026 23:53:03
[2026-06-12 23:53:03,080.080 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 23:53:03,109.109 INFO    ] Checking for existing commands in stream...
[2026-06-12 23:53:03,203.203 INFO    ] No existing commands found in stream
[2026-06-12 23:53:08,216.216 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 23:53:08,219.219 INFO    ] Waiting 1.05 seconds before fallback handling...
[2026-06-12 23:53:09,589.589 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 23:53:09,591.591 INFO    ] Checking for system updates...
[2026-06-12 23:53:09,611.611 INFO    ] 200
[2026-06-12 23:53:09,612.612 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:53:09,642.642 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 23:53:09,644.644 INFO    ] No update needed
[2026-06-12 23:53:09,645.645 INFO    ] Checking for camera pi updates...
[2026-06-12 23:53:09,664.664 INFO    ] 200
[2026-06-12 23:53:09,665.665 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:53:09,688.688 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 23:53:09,731.731 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 23:53:09,732.732 INFO    ] No camera update needed
[2026-06-12 23:53:09,733.733 INFO    ] Script finished. Safe exiting...
[2026-06-12 23:53:09,735.735 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 23:53:09,738.738 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 23:53:09,740.740 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 23:53:11,779.779 INFO    ] ================================================
[2026-06-12 23:53:11,795.795 INFO    ] Launching Daemon at Fri Jun 12 23:53:11 IST 2026
[2026-06-12 23:53:11,805.805 INFO    ] ================================================
[2026-06-12 23:53:12,137.137 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 23:53:12
[2026-06-12 23:53:12,448.448 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 23:53:12,577.577 INFO    ] Initializing speech engine...
[2026-06-12 23:53:12,582.582 INFO    ] 2026-06-12 23:53:12
[2026-06-12 23:53:12,799.799 INFO    ] 2026-06-12 23:53:12
[2026-06-12 23:53:12,828.828 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 23:53:13,009.009 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 23:53:13,013.013 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 23:53:13,142.142 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 23:53:13,197.197 INFO    ] time= 12/06/2026 23:53:13
[2026-06-12 23:53:13,236.236 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 23:53:13,242.242 INFO    ] Checking for existing commands in stream...
[2026-06-12 23:53:13,313.313 INFO    ] No existing commands found in stream
[2026-06-12 23:53:18,322.322 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 23:53:18,325.325 INFO    ] Waiting 0.74 seconds before fallback handling...
[2026-06-12 23:53:19,385.385 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 23:53:19,387.387 INFO    ] Checking for system updates...
[2026-06-12 23:53:19,407.407 INFO    ] 200
[2026-06-12 23:53:19,409.409 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:53:19,441.441 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 23:53:19,443.443 INFO    ] No update needed
[2026-06-12 23:53:19,444.444 INFO    ] Checking for camera pi updates...
[2026-06-12 23:53:19,463.463 INFO    ] 200
[2026-06-12 23:53:19,464.464 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:53:19,491.491 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 23:53:19,540.540 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 23:53:19,541.541 INFO    ] No camera update needed
[2026-06-12 23:53:19,542.542 INFO    ] Script finished. Safe exiting...
[2026-06-12 23:53:19,543.543 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 23:53:19,546.546 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 23:53:19,549.549 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 23:53:21,587.587 INFO    ] ================================================
[2026-06-12 23:53:21,603.603 INFO    ] Launching Daemon at Fri Jun 12 23:53:21 IST 2026
[2026-06-12 23:53:21,614.614 INFO    ] ================================================
[2026-06-12 23:53:21,955.955 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 23:53:21
[2026-06-12 23:53:22,270.270 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 23:53:22,414.414 INFO    ] Initializing speech engine...
[2026-06-12 23:53:22,419.419 INFO    ] 2026-06-12 23:53:22
[2026-06-12 23:53:22,622.622 INFO    ] 2026-06-12 23:53:22
[2026-06-12 23:53:22,652.652 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 23:53:22,834.834 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 23:53:22,843.843 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 23:53:22,970.970 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 23:53:23,036.036 INFO    ] time= 12/06/2026 23:53:22
[2026-06-12 23:53:23,061.061 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 23:53:23,067.067 INFO    ] Checking for existing commands in stream...
[2026-06-12 23:53:23,133.133 INFO    ] No existing commands found in stream
[2026-06-12 23:53:28,147.147 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 23:53:28,150.150 INFO    ] Waiting 1.93 seconds before fallback handling...
[2026-06-12 23:53:30,419.419 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 23:53:30,420.420 INFO    ] Checking for system updates...
[2026-06-12 23:53:30,442.442 INFO    ] 200
[2026-06-12 23:53:30,443.443 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:53:30,474.474 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 23:53:30,475.475 INFO    ] No update needed
[2026-06-12 23:53:30,476.476 INFO    ] Checking for camera pi updates...
[2026-06-12 23:53:30,498.498 INFO    ] 200
[2026-06-12 23:53:30,500.500 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:53:30,525.525 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 23:53:30,576.576 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 23:53:30,578.578 INFO    ] No camera update needed
[2026-06-12 23:53:30,579.579 INFO    ] Script finished. Safe exiting...
[2026-06-12 23:53:30,580.580 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 23:53:30,583.583 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 23:53:30,586.586 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 23:53:32,610.610 INFO    ] ================================================
[2026-06-12 23:53:32,619.619 INFO    ] Launching Daemon at Fri Jun 12 23:53:32 IST 2026
[2026-06-12 23:53:32,624.624 INFO    ] ================================================
[2026-06-12 23:53:32,971.971 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 23:53:32
[2026-06-12 23:53:33,287.287 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 23:53:33,438.438 INFO    ] Initializing speech engine...
[2026-06-12 23:53:33,445.445 INFO    ] 2026-06-12 23:53:33
[2026-06-12 23:53:33,649.649 INFO    ] 2026-06-12 23:53:33
[2026-06-12 23:53:33,678.678 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 23:53:33,886.886 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 23:53:33,891.891 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 23:53:34,049.049 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 23:53:34,083.083 INFO    ] time= 12/06/2026 23:53:34
[2026-06-12 23:53:34,098.098 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 23:53:34,100.100 INFO    ] Checking for existing commands in stream...
[2026-06-12 23:53:34,192.192 INFO    ] No existing commands found in stream
[2026-06-12 23:53:39,206.206 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 23:53:39,210.210 INFO    ] Waiting 1.72 seconds before fallback handling...
[2026-06-12 23:53:41,307.307 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 23:53:41,309.309 INFO    ] Checking for system updates...
[2026-06-12 23:53:41,330.330 INFO    ] 200
[2026-06-12 23:53:41,331.331 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:53:41,362.362 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 23:53:41,364.364 INFO    ] No update needed
[2026-06-12 23:53:41,365.365 INFO    ] Checking for camera pi updates...
[2026-06-12 23:53:41,385.385 INFO    ] 200
[2026-06-12 23:53:41,386.386 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:53:41,409.409 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 23:53:41,452.452 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 23:53:41,454.454 INFO    ] No camera update needed
[2026-06-12 23:53:41,455.455 INFO    ] Script finished. Safe exiting...
[2026-06-12 23:53:41,457.457 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 23:53:41,460.460 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 23:53:41,463.463 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 23:53:43,501.501 INFO    ] ================================================
[2026-06-12 23:53:43,516.516 INFO    ] Launching Daemon at Fri Jun 12 23:53:43 IST 2026
[2026-06-12 23:53:43,526.526 INFO    ] ================================================
[2026-06-12 23:53:43,869.869 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 23:53:43
[2026-06-12 23:53:44,186.186 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 23:53:44,330.330 INFO    ] Initializing speech engine...
[2026-06-12 23:53:44,335.335 INFO    ] 2026-06-12 23:53:44
[2026-06-12 23:53:44,538.538 INFO    ] 2026-06-12 23:53:44
[2026-06-12 23:53:44,566.566 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 23:53:44,749.749 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 23:53:44,753.753 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 23:53:44,884.884 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 23:53:44,937.937 INFO    ] time= 12/06/2026 23:53:44
[2026-06-12 23:53:44,965.965 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 23:53:44,981.981 INFO    ] Checking for existing commands in stream...
[2026-06-12 23:53:45,052.052 INFO    ] No existing commands found in stream
[2026-06-12 23:53:50,065.065 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 23:53:50,067.067 INFO    ] Waiting 0.52 seconds before fallback handling...
[2026-06-12 23:53:51,894.894 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 23:53:51,896.896 INFO    ] Checking for system updates...
[2026-06-12 23:53:51,936.936 INFO    ] 200
[2026-06-12 23:53:51,938.938 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:53:51,991.991 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 23:53:51,994.994 INFO    ] No update needed
[2026-06-12 23:53:51,996.996 INFO    ] Checking for camera pi updates...
[2026-06-12 23:53:52,019.019 INFO    ] 200
[2026-06-12 23:53:52,020.020 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:53:52,043.043 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 23:53:52,085.085 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 23:53:52,087.087 INFO    ] No camera update needed
[2026-06-12 23:53:52,088.088 INFO    ] Script finished. Safe exiting...
[2026-06-12 23:53:52,089.089 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 23:53:52,092.092 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 23:53:52,095.095 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 23:53:54,133.133 INFO    ] ================================================
[2026-06-12 23:53:54,148.148 INFO    ] Launching Daemon at Fri Jun 12 23:53:54 IST 2026
[2026-06-12 23:53:54,158.158 INFO    ] ================================================
[2026-06-12 23:53:54,512.512 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 23:53:54
[2026-06-12 23:53:54,846.846 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 23:53:54,977.977 INFO    ] Initializing speech engine...
[2026-06-12 23:53:54,980.980 INFO    ] 2026-06-12 23:53:54
[2026-06-12 23:53:55,200.200 INFO    ] 2026-06-12 23:53:55
[2026-06-12 23:53:55,230.230 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 23:53:55,354.354 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 23:53:55,418.418 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 23:53:55,551.551 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 23:53:55,617.617 INFO    ] time= 12/06/2026 23:53:55
[2026-06-12 23:53:55,651.651 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 23:53:55,657.657 INFO    ] Checking for existing commands in stream...
[2026-06-12 23:53:55,724.724 INFO    ] No existing commands found in stream
[2026-06-12 23:54:00,734.734 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 23:54:00,737.737 INFO    ] Waiting 0.43 seconds before fallback handling...
[2026-06-12 23:54:01,575.575 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 23:54:01,578.578 INFO    ] Checking for system updates...
[2026-06-12 23:54:01,643.643 INFO    ] 200
[2026-06-12 23:54:01,645.645 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:54:01,692.692 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 23:54:01,694.694 INFO    ] No update needed
[2026-06-12 23:54:01,696.696 INFO    ] Checking for camera pi updates...
[2026-06-12 23:54:01,719.719 INFO    ] 200
[2026-06-12 23:54:01,721.721 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:54:01,752.752 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 23:54:01,789.789 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 23:54:01,791.791 INFO    ] No camera update needed
[2026-06-12 23:54:01,793.793 INFO    ] Script finished. Safe exiting...
[2026-06-12 23:54:01,795.795 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 23:54:01,799.799 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 23:54:01,803.803 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 23:54:03,843.843 INFO    ] ================================================
[2026-06-12 23:54:03,858.858 INFO    ] Launching Daemon at Fri Jun 12 23:54:03 IST 2026
[2026-06-12 23:54:03,869.869 INFO    ] ================================================
[2026-06-12 23:54:04,201.201 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 23:54:04
[2026-06-12 23:54:04,516.516 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 23:54:04,660.660 INFO    ] Initializing speech engine...
[2026-06-12 23:54:04,664.664 INFO    ] 2026-06-12 23:54:04
[2026-06-12 23:54:04,869.869 INFO    ] 2026-06-12 23:54:04
[2026-06-12 23:54:04,898.898 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 23:54:05,036.036 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 23:54:05,084.084 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 23:54:05,221.221 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 23:54:05,273.273 INFO    ] time= 12/06/2026 23:54:05
[2026-06-12 23:54:05,315.315 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 23:54:05,317.317 INFO    ] Checking for existing commands in stream...
[2026-06-12 23:54:05,389.389 INFO    ] No existing commands found in stream
[2026-06-12 23:54:10,403.403 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 23:54:10,406.406 INFO    ] Waiting 1.61 seconds before fallback handling...
[2026-06-12 23:54:12,396.396 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 23:54:12,397.397 INFO    ] Checking for system updates...
[2026-06-12 23:54:12,418.418 INFO    ] 200
[2026-06-12 23:54:12,419.419 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:54:12,451.451 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 23:54:12,453.453 INFO    ] No update needed
[2026-06-12 23:54:12,454.454 INFO    ] Checking for camera pi updates...
[2026-06-12 23:54:12,473.473 INFO    ] 200
[2026-06-12 23:54:12,474.474 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:54:12,499.499 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 23:54:12,543.543 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 23:54:12,544.544 INFO    ] No camera update needed
[2026-06-12 23:54:12,546.546 INFO    ] Script finished. Safe exiting...
[2026-06-12 23:54:12,547.547 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 23:54:12,550.550 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 23:54:12,553.553 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 23:54:14,590.590 INFO    ] ================================================
[2026-06-12 23:54:14,605.605 INFO    ] Launching Daemon at Fri Jun 12 23:54:14 IST 2026
[2026-06-12 23:54:14,616.616 INFO    ] ================================================
[2026-06-12 23:54:14,945.945 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 23:54:14
[2026-06-12 23:54:15,257.257 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 23:54:15,394.394 INFO    ] Initializing speech engine...
[2026-06-12 23:54:15,404.404 INFO    ] 2026-06-12 23:54:15
[2026-06-12 23:54:15,605.605 INFO    ] 2026-06-12 23:54:15
[2026-06-12 23:54:15,634.634 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 23:54:15,816.816 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 23:54:15,826.826 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 23:54:15,955.955 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 23:54:16,019.019 INFO    ] time= 12/06/2026 23:54:15
[2026-06-12 23:54:16,046.046 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 23:54:16,052.052 INFO    ] Checking for existing commands in stream...
[2026-06-12 23:54:16,117.117 INFO    ] No existing commands found in stream
[2026-06-12 23:54:21,127.127 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 23:54:21,130.130 INFO    ] Waiting 3.89 seconds before fallback handling...
[2026-06-12 23:54:25,365.365 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 23:54:25,367.367 INFO    ] Checking for system updates...
[2026-06-12 23:54:25,387.387 INFO    ] 200
[2026-06-12 23:54:25,388.388 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:54:25,420.420 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 23:54:25,421.421 INFO    ] No update needed
[2026-06-12 23:54:25,422.422 INFO    ] Checking for camera pi updates...
[2026-06-12 23:54:25,441.441 INFO    ] 200
[2026-06-12 23:54:25,443.443 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:54:25,467.467 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 23:54:25,509.509 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 23:54:25,510.510 INFO    ] No camera update needed
[2026-06-12 23:54:25,512.512 INFO    ] Script finished. Safe exiting...
[2026-06-12 23:54:25,513.513 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 23:54:25,516.516 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 23:54:25,518.518 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 23:54:27,556.556 INFO    ] ================================================
[2026-06-12 23:54:27,571.571 INFO    ] Launching Daemon at Fri Jun 12 23:54:27 IST 2026
[2026-06-12 23:54:27,582.582 INFO    ] ================================================
[2026-06-12 23:54:27,946.946 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 23:54:27
[2026-06-12 23:54:28,262.262 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 23:54:28,406.406 INFO    ] Initializing speech engine...
[2026-06-12 23:54:28,411.411 INFO    ] 2026-06-12 23:54:28
[2026-06-12 23:54:28,614.614 INFO    ] 2026-06-12 23:54:28
[2026-06-12 23:54:28,643.643 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 23:54:28,826.826 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 23:54:28,835.835 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 23:54:28,979.979 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 23:54:29,033.033 INFO    ] time= 12/06/2026 23:54:28
[2026-06-12 23:54:29,055.055 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 23:54:29,061.061 INFO    ] Checking for existing commands in stream...
[2026-06-12 23:54:29,127.127 INFO    ] No existing commands found in stream
[2026-06-12 23:54:34,132.132 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 23:54:34,135.135 INFO    ] Waiting 1.36 seconds before fallback handling...
[2026-06-12 23:54:35,859.859 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 23:54:35,861.861 INFO    ] Checking for system updates...
[2026-06-12 23:54:35,881.881 INFO    ] 200
[2026-06-12 23:54:35,882.882 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:54:35,912.912 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 23:54:35,914.914 INFO    ] No update needed
[2026-06-12 23:54:35,915.915 INFO    ] Checking for camera pi updates...
[2026-06-12 23:54:35,934.934 INFO    ] 200
[2026-06-12 23:54:35,936.936 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:54:35,959.959 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 23:54:36,029.029 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 23:54:36,030.030 INFO    ] No camera update needed
[2026-06-12 23:54:36,031.031 INFO    ] Script finished. Safe exiting...
[2026-06-12 23:54:36,033.033 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 23:54:36,036.036 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 23:54:36,038.038 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 23:54:38,076.076 INFO    ] ================================================
[2026-06-12 23:54:38,091.091 INFO    ] Launching Daemon at Fri Jun 12 23:54:38 IST 2026
[2026-06-12 23:54:38,102.102 INFO    ] ================================================
[2026-06-12 23:54:38,428.428 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 23:54:38
[2026-06-12 23:54:38,743.743 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 23:54:38,875.875 INFO    ] Initializing speech engine...
[2026-06-12 23:54:38,883.883 INFO    ] 2026-06-12 23:54:38
[2026-06-12 23:54:39,094.094 INFO    ] 2026-06-12 23:54:39
[2026-06-12 23:54:39,124.124 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 23:54:39,306.306 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 23:54:39,309.309 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 23:54:39,455.455 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 23:54:39,513.513 INFO    ] time= 12/06/2026 23:54:39
[2026-06-12 23:54:39,535.535 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 23:54:39,541.541 INFO    ] Checking for existing commands in stream...
[2026-06-12 23:54:39,607.607 INFO    ] No existing commands found in stream
[2026-06-12 23:54:44,612.612 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 23:54:44,615.615 INFO    ] Waiting 0.50 seconds before fallback handling...
[2026-06-12 23:54:45,522.522 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 23:54:45,523.523 INFO    ] Checking for system updates...
[2026-06-12 23:54:45,543.543 INFO    ] 200
[2026-06-12 23:54:45,545.545 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:54:45,575.575 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 23:54:45,576.576 INFO    ] No update needed
[2026-06-12 23:54:45,577.577 INFO    ] Checking for camera pi updates...
[2026-06-12 23:54:45,597.597 INFO    ] 200
[2026-06-12 23:54:45,598.598 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:54:45,621.621 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 23:54:45,763.763 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 23:54:45,764.764 INFO    ] No camera update needed
[2026-06-12 23:54:45,765.765 INFO    ] Script finished. Safe exiting...
[2026-06-12 23:54:45,766.766 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 23:54:45,769.769 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 23:54:45,772.772 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 23:54:47,809.809 INFO    ] ================================================
[2026-06-12 23:54:47,824.824 INFO    ] Launching Daemon at Fri Jun 12 23:54:47 IST 2026
[2026-06-12 23:54:47,835.835 INFO    ] ================================================
[2026-06-12 23:54:48,203.203 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 23:54:48
[2026-06-12 23:54:48,517.517 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 23:54:48,660.660 INFO    ] Initializing speech engine...
[2026-06-12 23:54:48,664.664 INFO    ] 2026-06-12 23:54:48
[2026-06-12 23:54:48,870.870 INFO    ] 2026-06-12 23:54:48
[2026-06-12 23:54:48,898.898 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 23:54:49,085.085 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 23:54:49,089.089 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 23:54:49,219.219 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 23:54:49,275.275 INFO    ] time= 12/06/2026 23:54:49
[2026-06-12 23:54:49,315.315 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 23:54:49,321.321 INFO    ] Checking for existing commands in stream...
[2026-06-12 23:54:49,393.393 INFO    ] No existing commands found in stream
[2026-06-12 23:54:54,402.402 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 23:54:54,404.404 INFO    ] Waiting 3.84 seconds before fallback handling...
[2026-06-12 23:54:58,608.608 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 23:54:58,610.610 INFO    ] Checking for system updates...
[2026-06-12 23:54:58,631.631 INFO    ] 200
[2026-06-12 23:54:58,633.633 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:54:58,662.662 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 23:54:58,664.664 INFO    ] No update needed
[2026-06-12 23:54:58,665.665 INFO    ] Checking for camera pi updates...
[2026-06-12 23:54:58,685.685 INFO    ] 200
[2026-06-12 23:54:58,686.686 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:54:58,711.711 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 23:54:58,766.766 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 23:54:58,768.768 INFO    ] No camera update needed
[2026-06-12 23:54:58,769.769 INFO    ] Script finished. Safe exiting...
[2026-06-12 23:54:58,770.770 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 23:54:58,773.773 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 23:54:58,776.776 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 23:55:00,816.816 INFO    ] ================================================
[2026-06-12 23:55:00,831.831 INFO    ] Launching Daemon at Fri Jun 12 23:55:00 IST 2026
[2026-06-12 23:55:00,842.842 INFO    ] ================================================
[2026-06-12 23:55:01,180.180 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 23:55:01
[2026-06-12 23:55:01,496.496 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 23:55:01,917.917 INFO    ] Initializing speech engine...
[2026-06-12 23:55:01,921.921 INFO    ] 2026-06-12 23:55:01
[2026-06-12 23:55:02,174.174 INFO    ] 2026-06-12 23:55:02
[2026-06-12 23:55:02,238.238 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 23:55:02,398.398 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 23:55:02,411.411 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 23:55:02,573.573 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 23:55:02,643.643 INFO    ] time= 12/06/2026 23:55:02
[2026-06-12 23:55:02,681.681 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 23:55:02,693.693 INFO    ] Checking for existing commands in stream...
[2026-06-12 23:55:02,774.774 INFO    ] No existing commands found in stream
[2026-06-12 23:55:07,785.785 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 23:55:07,788.788 INFO    ] Waiting 3.89 seconds before fallback handling...
[2026-06-12 23:55:12,045.045 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 23:55:12,046.046 INFO    ] Checking for system updates...
[2026-06-12 23:55:12,067.067 INFO    ] 200
[2026-06-12 23:55:12,068.068 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:55:12,098.098 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 23:55:12,100.100 INFO    ] No update needed
[2026-06-12 23:55:12,101.101 INFO    ] Checking for camera pi updates...
[2026-06-12 23:55:12,120.120 INFO    ] 200
[2026-06-12 23:55:12,122.122 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:55:12,144.144 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 23:55:12,184.184 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 23:55:12,185.185 INFO    ] No camera update needed
[2026-06-12 23:55:12,186.186 INFO    ] Script finished. Safe exiting...
[2026-06-12 23:55:12,187.187 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 23:55:12,190.190 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 23:55:12,193.193 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 23:55:14,231.231 INFO    ] ================================================
[2026-06-12 23:55:14,247.247 INFO    ] Launching Daemon at Fri Jun 12 23:55:14 IST 2026
[2026-06-12 23:55:14,257.257 INFO    ] ================================================
[2026-06-12 23:55:14,601.601 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 23:55:14
[2026-06-12 23:55:14,918.918 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 23:55:15,063.063 INFO    ] Initializing speech engine...
[2026-06-12 23:55:15,068.068 INFO    ] 2026-06-12 23:55:15
[2026-06-12 23:55:15,272.272 INFO    ] 2026-06-12 23:55:15
[2026-06-12 23:55:15,300.300 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 23:55:15,423.423 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 23:55:15,487.487 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 23:55:15,623.623 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 23:55:15,682.682 INFO    ] time= 12/06/2026 23:55:15
[2026-06-12 23:55:15,714.714 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 23:55:15,716.716 INFO    ] Checking for existing commands in stream...
[2026-06-12 23:55:15,788.788 INFO    ] No existing commands found in stream
[2026-06-12 23:55:20,802.802 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 23:55:20,805.805 INFO    ] Waiting 1.24 seconds before fallback handling...
[2026-06-12 23:55:22,425.425 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 23:55:22,426.426 INFO    ] Checking for system updates...
[2026-06-12 23:55:22,446.446 INFO    ] 200
[2026-06-12 23:55:22,448.448 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:55:22,480.480 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 23:55:22,481.481 INFO    ] No update needed
[2026-06-12 23:55:22,483.483 INFO    ] Checking for camera pi updates...
[2026-06-12 23:55:22,503.503 INFO    ] 200
[2026-06-12 23:55:22,504.504 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:55:22,527.527 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 23:55:22,567.567 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 23:55:22,569.569 INFO    ] No camera update needed
[2026-06-12 23:55:22,570.570 INFO    ] Script finished. Safe exiting...
[2026-06-12 23:55:22,571.571 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 23:55:22,574.574 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 23:55:22,577.577 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 23:55:24,615.615 INFO    ] ================================================
[2026-06-12 23:55:24,630.630 INFO    ] Launching Daemon at Fri Jun 12 23:55:24 IST 2026
[2026-06-12 23:55:24,641.641 INFO    ] ================================================
[2026-06-12 23:55:24,968.968 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 23:55:24
[2026-06-12 23:55:25,281.281 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 23:55:25,414.414 INFO    ] Initializing speech engine...
[2026-06-12 23:55:25,419.419 INFO    ] 2026-06-12 23:55:25
[2026-06-12 23:55:25,639.639 INFO    ] 2026-06-12 23:55:25
[2026-06-12 23:55:25,668.668 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 23:55:25,854.854 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 23:55:25,863.863 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 23:55:25,995.995 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 23:55:26,063.063 INFO    ] time= 12/06/2026 23:55:26
[2026-06-12 23:55:26,087.087 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 23:55:26,094.094 INFO    ] Checking for existing commands in stream...
[2026-06-12 23:55:26,198.198 INFO    ] No existing commands found in stream
[2026-06-12 23:55:31,222.222 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 23:55:31,224.224 INFO    ] Waiting 3.89 seconds before fallback handling...
[2026-06-12 23:55:35,462.462 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 23:55:35,464.464 INFO    ] Checking for system updates...
[2026-06-12 23:55:35,485.485 INFO    ] 200
[2026-06-12 23:55:35,487.487 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:55:35,520.520 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 23:55:35,521.521 INFO    ] No update needed
[2026-06-12 23:55:35,522.522 INFO    ] Checking for camera pi updates...
[2026-06-12 23:55:35,549.549 INFO    ] 200
[2026-06-12 23:55:35,551.551 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:55:35,573.573 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 23:55:35,614.614 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 23:55:35,616.616 INFO    ] No camera update needed
[2026-06-12 23:55:35,617.617 INFO    ] Script finished. Safe exiting...
[2026-06-12 23:55:35,618.618 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 23:55:35,621.621 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 23:55:35,624.624 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 23:55:37,662.662 INFO    ] ================================================
[2026-06-12 23:55:37,678.678 INFO    ] Launching Daemon at Fri Jun 12 23:55:37 IST 2026
[2026-06-12 23:55:37,688.688 INFO    ] ================================================
[2026-06-12 23:55:38,072.072 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 23:55:38
[2026-06-12 23:55:38,409.409 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 23:55:38,561.561 INFO    ] Initializing speech engine...
[2026-06-12 23:55:38,567.567 INFO    ] 2026-06-12 23:55:38
[2026-06-12 23:55:38,778.778 INFO    ] 2026-06-12 23:55:38
[2026-06-12 23:55:38,807.807 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 23:55:38,995.995 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 23:55:39,005.005 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 23:55:39,135.135 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 23:55:39,187.187 INFO    ] time= 12/06/2026 23:55:39
[2026-06-12 23:55:39,232.232 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 23:55:39,239.239 INFO    ] Checking for existing commands in stream...
[2026-06-12 23:55:39,307.307 INFO    ] No existing commands found in stream
[2026-06-12 23:55:44,316.316 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 23:55:44,319.319 INFO    ] Waiting 1.72 seconds before fallback handling...
[2026-06-12 23:55:46,423.423 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 23:55:46,425.425 INFO    ] Checking for system updates...
[2026-06-12 23:55:46,446.446 INFO    ] 200
[2026-06-12 23:55:46,448.448 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:55:46,482.482 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 23:55:46,484.484 INFO    ] No update needed
[2026-06-12 23:55:46,485.485 INFO    ] Checking for camera pi updates...
[2026-06-12 23:55:46,507.507 INFO    ] 200
[2026-06-12 23:55:46,508.508 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:55:46,532.532 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 23:55:46,582.582 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 23:55:46,584.584 INFO    ] No camera update needed
[2026-06-12 23:55:46,585.585 INFO    ] Script finished. Safe exiting...
[2026-06-12 23:55:46,587.587 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 23:55:46,590.590 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 23:55:46,593.593 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 23:55:48,632.632 INFO    ] ================================================
[2026-06-12 23:55:48,647.647 INFO    ] Launching Daemon at Fri Jun 12 23:55:48 IST 2026
[2026-06-12 23:55:48,659.659 INFO    ] ================================================
[2026-06-12 23:55:49,051.051 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 23:55:49
[2026-06-12 23:55:49,392.392 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 23:55:49,538.538 INFO    ] Initializing speech engine...
[2026-06-12 23:55:49,549.549 INFO    ] 2026-06-12 23:55:49
[2026-06-12 23:55:49,759.759 INFO    ] 2026-06-12 23:55:49
[2026-06-12 23:55:49,790.790 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 23:55:49,977.977 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 23:55:49,988.988 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 23:55:50,121.121 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 23:55:50,180.180 INFO    ] time= 12/06/2026 23:55:50
[2026-06-12 23:55:50,214.214 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 23:55:50,221.221 INFO    ] Checking for existing commands in stream...
[2026-06-12 23:55:50,289.289 INFO    ] No existing commands found in stream
[2026-06-12 23:55:55,300.300 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 23:55:55,303.303 INFO    ] Waiting 2.19 seconds before fallback handling...
[2026-06-12 23:55:57,841.841 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 23:55:57,843.843 INFO    ] Checking for system updates...
[2026-06-12 23:55:57,865.865 INFO    ] 200
[2026-06-12 23:55:57,866.866 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:55:57,902.902 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 23:55:57,903.903 INFO    ] No update needed
[2026-06-12 23:55:57,905.905 INFO    ] Checking for camera pi updates...
[2026-06-12 23:55:57,928.928 INFO    ] 200
[2026-06-12 23:55:57,929.929 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:55:57,955.955 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 23:55:58,006.006 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 23:55:58,007.007 INFO    ] No camera update needed
[2026-06-12 23:55:58,009.009 INFO    ] Script finished. Safe exiting...
[2026-06-12 23:55:58,010.010 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 23:55:58,014.014 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 23:55:58,017.017 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 23:56:00,057.057 INFO    ] ================================================
[2026-06-12 23:56:00,073.073 INFO    ] Launching Daemon at Fri Jun 12 23:56:00 IST 2026
[2026-06-12 23:56:00,084.084 INFO    ] ================================================
[2026-06-12 23:56:00,453.453 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 23:56:00
[2026-06-12 23:56:00,771.771 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 23:56:00,914.914 INFO    ] Initializing speech engine...
[2026-06-12 23:56:00,918.918 INFO    ] 2026-06-12 23:56:00
[2026-06-12 23:56:01,121.121 INFO    ] 2026-06-12 23:56:01
[2026-06-12 23:56:01,151.151 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 23:56:01,334.334 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 23:56:01,337.337 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 23:56:01,465.465 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 23:56:01,516.516 INFO    ] time= 12/06/2026 23:56:01
[2026-06-12 23:56:01,563.563 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 23:56:01,569.569 INFO    ] Checking for existing commands in stream...
[2026-06-12 23:56:01,636.636 INFO    ] No existing commands found in stream
[2026-06-12 23:56:06,650.650 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 23:56:06,653.653 INFO    ] Waiting 1.44 seconds before fallback handling...
[2026-06-12 23:56:08,451.451 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 23:56:08,453.453 INFO    ] Checking for system updates...
[2026-06-12 23:56:08,474.474 INFO    ] 200
[2026-06-12 23:56:08,475.475 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:56:08,505.505 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 23:56:08,507.507 INFO    ] No update needed
[2026-06-12 23:56:08,508.508 INFO    ] Checking for camera pi updates...
[2026-06-12 23:56:08,529.529 INFO    ] 200
[2026-06-12 23:56:08,531.531 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:56:08,553.553 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 23:56:08,604.604 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 23:56:08,606.606 INFO    ] No camera update needed
[2026-06-12 23:56:08,607.607 INFO    ] Script finished. Safe exiting...
[2026-06-12 23:56:08,608.608 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 23:56:08,611.611 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 23:56:08,614.614 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 23:56:10,652.652 INFO    ] ================================================
[2026-06-12 23:56:10,667.667 INFO    ] Launching Daemon at Fri Jun 12 23:56:10 IST 2026
[2026-06-12 23:56:10,679.679 INFO    ] ================================================
[2026-06-12 23:56:11,017.017 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 23:56:11
[2026-06-12 23:56:11,328.328 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 23:56:11,470.470 INFO    ] Initializing speech engine...
[2026-06-12 23:56:11,475.475 INFO    ] 2026-06-12 23:56:11
[2026-06-12 23:56:11,679.679 INFO    ] 2026-06-12 23:56:11
[2026-06-12 23:56:11,709.709 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 23:56:11,840.840 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 23:56:11,893.893 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 23:56:12,032.032 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 23:56:12,098.098 INFO    ] time= 12/06/2026 23:56:12
[2026-06-12 23:56:12,122.122 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 23:56:12,129.129 INFO    ] Checking for existing commands in stream...
[2026-06-12 23:56:12,195.195 INFO    ] No existing commands found in stream
[2026-06-12 23:56:17,204.204 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 23:56:17,212.212 INFO    ] Waiting 1.75 seconds before fallback handling...
[2026-06-12 23:56:19,351.351 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 23:56:19,353.353 INFO    ] Checking for system updates...
[2026-06-12 23:56:19,374.374 INFO    ] 200
[2026-06-12 23:56:19,376.376 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:56:19,406.406 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 23:56:19,408.408 INFO    ] No update needed
[2026-06-12 23:56:19,409.409 INFO    ] Checking for camera pi updates...
[2026-06-12 23:56:19,429.429 INFO    ] 200
[2026-06-12 23:56:19,430.430 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:56:19,454.454 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 23:56:19,507.507 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 23:56:19,509.509 INFO    ] No camera update needed
[2026-06-12 23:56:19,510.510 INFO    ] Script finished. Safe exiting...
[2026-06-12 23:56:19,512.512 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 23:56:19,515.515 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 23:56:19,518.518 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 23:56:21,557.557 INFO    ] ================================================
[2026-06-12 23:56:21,572.572 INFO    ] Launching Daemon at Fri Jun 12 23:56:21 IST 2026
[2026-06-12 23:56:21,583.583 INFO    ] ================================================
[2026-06-12 23:56:21,929.929 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 23:56:21
[2026-06-12 23:56:22,264.264 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 23:56:22,419.419 INFO    ] Initializing speech engine...
[2026-06-12 23:56:22,425.425 INFO    ] 2026-06-12 23:56:22
[2026-06-12 23:56:22,634.634 INFO    ] 2026-06-12 23:56:22
[2026-06-12 23:56:22,664.664 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 23:56:22,854.854 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 23:56:22,857.857 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 23:56:22,995.995 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 23:56:23,054.054 INFO    ] time= 12/06/2026 23:56:23
[2026-06-12 23:56:23,088.088 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 23:56:23,094.094 INFO    ] Checking for existing commands in stream...
[2026-06-12 23:56:23,186.186 INFO    ] No existing commands found in stream
[2026-06-12 23:56:28,211.211 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 23:56:28,214.214 INFO    ] Waiting 1.67 seconds before fallback handling...
[2026-06-12 23:56:30,269.269 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 23:56:30,271.271 INFO    ] Checking for system updates...
[2026-06-12 23:56:30,292.292 INFO    ] 200
[2026-06-12 23:56:30,294.294 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:56:30,326.326 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 23:56:30,328.328 INFO    ] No update needed
[2026-06-12 23:56:30,329.329 INFO    ] Checking for camera pi updates...
[2026-06-12 23:56:30,350.350 INFO    ] 200
[2026-06-12 23:56:30,351.351 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:56:30,376.376 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 23:56:30,420.420 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 23:56:30,422.422 INFO    ] No camera update needed
[2026-06-12 23:56:30,423.423 INFO    ] Script finished. Safe exiting...
[2026-06-12 23:56:30,425.425 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 23:56:30,428.428 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 23:56:30,431.431 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 23:56:32,463.463 INFO    ] ================================================
[2026-06-12 23:56:32,472.472 INFO    ] Launching Daemon at Fri Jun 12 23:56:32 IST 2026
[2026-06-12 23:56:32,479.479 INFO    ] ================================================
[2026-06-12 23:56:32,805.805 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 23:56:32
[2026-06-12 23:56:33,121.121 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 23:56:33,253.253 INFO    ] Initializing speech engine...
[2026-06-12 23:56:33,258.258 INFO    ] 2026-06-12 23:56:33
[2026-06-12 23:56:33,486.486 INFO    ] 2026-06-12 23:56:33
[2026-06-12 23:56:33,517.517 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 23:56:33,648.648 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 23:56:33,714.714 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 23:56:33,854.854 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 23:56:33,916.916 INFO    ] time= 12/06/2026 23:56:33
[2026-06-12 23:56:33,958.958 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 23:56:33,965.965 INFO    ] Checking for existing commands in stream...
[2026-06-12 23:56:34,061.061 INFO    ] No existing commands found in stream
[2026-06-12 23:56:39,070.070 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 23:56:39,073.073 INFO    ] Waiting 1.01 seconds before fallback handling...
[2026-06-12 23:56:40,449.449 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 23:56:40,450.450 INFO    ] Checking for system updates...
[2026-06-12 23:56:40,471.471 INFO    ] 200
[2026-06-12 23:56:40,473.473 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:56:40,504.504 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 23:56:40,505.505 INFO    ] No update needed
[2026-06-12 23:56:40,507.507 INFO    ] Checking for camera pi updates...
[2026-06-12 23:56:40,526.526 INFO    ] 200
[2026-06-12 23:56:40,527.527 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:56:40,550.550 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 23:56:40,597.597 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 23:56:40,599.599 INFO    ] No camera update needed
[2026-06-12 23:56:40,600.600 INFO    ] Script finished. Safe exiting...
[2026-06-12 23:56:40,601.601 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 23:56:40,604.604 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 23:56:40,607.607 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 23:56:42,644.644 INFO    ] ================================================
[2026-06-12 23:56:42,659.659 INFO    ] Launching Daemon at Fri Jun 12 23:56:42 IST 2026
[2026-06-12 23:56:42,669.669 INFO    ] ================================================
[2026-06-12 23:56:42,997.997 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 23:56:42
[2026-06-12 23:56:43,308.308 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 23:56:43,438.438 INFO    ] Initializing speech engine...
[2026-06-12 23:56:43,443.443 INFO    ] 2026-06-12 23:56:43
[2026-06-12 23:56:43,661.661 INFO    ] 2026-06-12 23:56:43
[2026-06-12 23:56:43,690.690 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 23:56:43,814.814 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 23:56:43,878.878 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 23:56:44,013.013 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 23:56:44,076.076 INFO    ] time= 12/06/2026 23:56:44
[2026-06-12 23:56:44,110.110 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 23:56:44,115.115 INFO    ] Checking for existing commands in stream...
[2026-06-12 23:56:44,182.182 INFO    ] No existing commands found in stream
[2026-06-12 23:56:49,192.192 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 23:56:49,195.195 INFO    ] Waiting 1.99 seconds before fallback handling...
[2026-06-12 23:56:51,569.569 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 23:56:51,570.570 INFO    ] Checking for system updates...
[2026-06-12 23:56:51,591.591 INFO    ] 200
[2026-06-12 23:56:51,593.593 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:56:51,623.623 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 23:56:51,624.624 INFO    ] No update needed
[2026-06-12 23:56:51,626.626 INFO    ] Checking for camera pi updates...
[2026-06-12 23:56:51,646.646 INFO    ] 200
[2026-06-12 23:56:51,647.647 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:56:51,670.670 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 23:56:51,812.812 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 23:56:51,814.814 INFO    ] No camera update needed
[2026-06-12 23:56:51,815.815 INFO    ] Script finished. Safe exiting...
[2026-06-12 23:56:51,817.817 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 23:56:51,820.820 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 23:56:51,823.823 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 23:56:53,862.862 INFO    ] ================================================
[2026-06-12 23:56:53,877.877 INFO    ] Launching Daemon at Fri Jun 12 23:56:53 IST 2026
[2026-06-12 23:56:53,888.888 INFO    ] ================================================
[2026-06-12 23:56:54,246.246 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 23:56:54
[2026-06-12 23:56:54,562.562 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 23:56:54,696.696 INFO    ] Initializing speech engine...
[2026-06-12 23:56:54,700.700 INFO    ] 2026-06-12 23:56:54
[2026-06-12 23:56:54,928.928 INFO    ] 2026-06-12 23:56:54
[2026-06-12 23:56:54,959.959 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 23:56:55,090.090 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 23:56:55,143.143 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 23:56:55,305.305 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 23:56:55,364.364 INFO    ] time= 12/06/2026 23:56:55
[2026-06-12 23:56:55,398.398 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 23:56:55,404.404 INFO    ] Checking for existing commands in stream...
[2026-06-12 23:56:55,505.505 INFO    ] No existing commands found in stream
[2026-06-12 23:57:00,514.514 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 23:57:00,517.517 INFO    ] Waiting 2.93 seconds before fallback handling...
[2026-06-12 23:57:03,790.790 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 23:57:03,792.792 INFO    ] Checking for system updates...
[2026-06-12 23:57:03,812.812 INFO    ] 200
[2026-06-12 23:57:03,813.813 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:57:03,843.843 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 23:57:03,844.844 INFO    ] No update needed
[2026-06-12 23:57:03,846.846 INFO    ] Checking for camera pi updates...
[2026-06-12 23:57:03,865.865 INFO    ] 200
[2026-06-12 23:57:03,866.866 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:57:03,889.889 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 23:57:03,962.962 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 23:57:03,963.963 INFO    ] No camera update needed
[2026-06-12 23:57:03,964.964 INFO    ] Script finished. Safe exiting...
[2026-06-12 23:57:03,966.966 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 23:57:03,968.968 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 23:57:03,971.971 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 23:57:06,009.009 INFO    ] ================================================
[2026-06-12 23:57:06,025.025 INFO    ] Launching Daemon at Fri Jun 12 23:57:06 IST 2026
[2026-06-12 23:57:06,036.036 INFO    ] ================================================
[2026-06-12 23:57:06,422.422 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 23:57:06
[2026-06-12 23:57:06,755.755 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 23:57:06,899.899 INFO    ] Initializing speech engine...
[2026-06-12 23:57:06,908.908 INFO    ] 2026-06-12 23:57:06
[2026-06-12 23:57:07,119.119 INFO    ] 2026-06-12 23:57:07
[2026-06-12 23:57:07,149.149 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 23:57:07,337.337 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 23:57:07,347.347 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 23:57:07,471.471 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 23:57:07,532.532 INFO    ] time= 12/06/2026 23:57:07
[2026-06-12 23:57:07,570.570 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 23:57:07,577.577 INFO    ] Checking for existing commands in stream...
[2026-06-12 23:57:07,644.644 INFO    ] No existing commands found in stream
[2026-06-12 23:57:12,654.654 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 23:57:12,657.657 INFO    ] Waiting 0.83 seconds before fallback handling...
[2026-06-12 23:57:13,860.860 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 23:57:13,862.862 INFO    ] Checking for system updates...
[2026-06-12 23:57:13,883.883 INFO    ] 200
[2026-06-12 23:57:13,885.885 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:57:13,916.916 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 23:57:13,917.917 INFO    ] No update needed
[2026-06-12 23:57:13,919.919 INFO    ] Checking for camera pi updates...
[2026-06-12 23:57:13,938.938 INFO    ] 200
[2026-06-12 23:57:13,940.940 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:57:13,963.963 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 23:57:14,018.018 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 23:57:14,020.020 INFO    ] No camera update needed
[2026-06-12 23:57:14,021.021 INFO    ] Script finished. Safe exiting...
[2026-06-12 23:57:14,022.022 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 23:57:14,026.026 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 23:57:14,029.029 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 23:57:16,068.068 INFO    ] ================================================
[2026-06-12 23:57:16,083.083 INFO    ] Launching Daemon at Fri Jun 12 23:57:16 IST 2026
[2026-06-12 23:57:16,094.094 INFO    ] ================================================
[2026-06-12 23:57:16,468.468 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 23:57:16
[2026-06-12 23:57:16,803.803 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 23:57:16,949.949 INFO    ] Initializing speech engine...
[2026-06-12 23:57:16,955.955 INFO    ] 2026-06-12 23:57:16
[2026-06-12 23:57:17,169.169 INFO    ] 2026-06-12 23:57:17
[2026-06-12 23:57:17,200.200 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 23:57:17,396.396 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 23:57:17,399.399 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 23:57:17,538.538 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 23:57:17,589.589 INFO    ] time= 12/06/2026 23:57:17
[2026-06-12 23:57:17,639.639 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 23:57:17,651.651 INFO    ] Checking for existing commands in stream...
[2026-06-12 23:57:17,747.747 INFO    ] No existing commands found in stream
[2026-06-12 23:57:22,756.756 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 23:57:22,759.759 INFO    ] Waiting 1.27 seconds before fallback handling...
[2026-06-12 23:57:24,386.386 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 23:57:24,388.388 INFO    ] Checking for system updates...
[2026-06-12 23:57:24,408.408 INFO    ] 200
[2026-06-12 23:57:24,410.410 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:57:24,440.440 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 23:57:24,442.442 INFO    ] No update needed
[2026-06-12 23:57:24,443.443 INFO    ] Checking for camera pi updates...
[2026-06-12 23:57:24,462.462 INFO    ] 200
[2026-06-12 23:57:24,464.464 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:57:24,487.487 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 23:57:24,527.527 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 23:57:24,529.529 INFO    ] No camera update needed
[2026-06-12 23:57:24,530.530 INFO    ] Script finished. Safe exiting...
[2026-06-12 23:57:24,532.532 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 23:57:24,535.535 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 23:57:24,537.537 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 23:57:26,575.575 INFO    ] ================================================
[2026-06-12 23:57:26,590.590 INFO    ] Launching Daemon at Fri Jun 12 23:57:26 IST 2026
[2026-06-12 23:57:26,600.600 INFO    ] ================================================
[2026-06-12 23:57:26,918.918 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 23:57:26
[2026-06-12 23:57:27,228.228 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 23:57:27,366.366 INFO    ] Initializing speech engine...
[2026-06-12 23:57:27,374.374 INFO    ] 2026-06-12 23:57:27
[2026-06-12 23:57:27,578.578 INFO    ] 2026-06-12 23:57:27
[2026-06-12 23:57:27,606.606 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 23:57:27,790.790 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 23:57:27,794.794 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 23:57:27,929.929 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 23:57:27,997.997 INFO    ] time= 12/06/2026 23:57:27
[2026-06-12 23:57:28,021.021 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 23:57:28,022.022 INFO    ] Checking for existing commands in stream...
[2026-06-12 23:57:28,094.094 INFO    ] No existing commands found in stream
[2026-06-12 23:57:33,108.108 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 23:57:33,111.111 INFO    ] Waiting 0.66 seconds before fallback handling...
[2026-06-12 23:57:34,107.107 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 23:57:34,108.108 INFO    ] Checking for system updates...
[2026-06-12 23:57:34,130.130 INFO    ] 200
[2026-06-12 23:57:34,132.132 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:57:34,161.161 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 23:57:34,162.162 INFO    ] No update needed
[2026-06-12 23:57:34,164.164 INFO    ] Checking for camera pi updates...
[2026-06-12 23:57:34,183.183 INFO    ] 200
[2026-06-12 23:57:34,184.184 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:57:34,206.206 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 23:57:34,254.254 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 23:57:34,255.255 INFO    ] No camera update needed
[2026-06-12 23:57:34,257.257 INFO    ] Script finished. Safe exiting...
[2026-06-12 23:57:34,258.258 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 23:57:34,261.261 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 23:57:34,264.264 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 23:57:36,301.301 INFO    ] ================================================
[2026-06-12 23:57:36,316.316 INFO    ] Launching Daemon at Fri Jun 12 23:57:36 IST 2026
[2026-06-12 23:57:36,326.326 INFO    ] ================================================
[2026-06-12 23:57:36,700.700 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 23:57:36
[2026-06-12 23:57:37,023.023 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 23:57:37,154.154 INFO    ] Initializing speech engine...
[2026-06-12 23:57:37,158.158 INFO    ] 2026-06-12 23:57:37
[2026-06-12 23:57:37,376.376 INFO    ] 2026-06-12 23:57:37
[2026-06-12 23:57:37,404.404 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 23:57:37,587.587 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 23:57:37,590.590 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 23:57:37,718.718 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 23:57:37,774.774 INFO    ] time= 12/06/2026 23:57:37
[2026-06-12 23:57:37,817.817 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 23:57:37,823.823 INFO    ] Checking for existing commands in stream...
[2026-06-12 23:57:37,890.890 INFO    ] No existing commands found in stream
[2026-06-12 23:57:42,912.912 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 23:57:42,915.915 INFO    ] Waiting 1.01 seconds before fallback handling...
[2026-06-12 23:57:44,307.307 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 23:57:44,309.309 INFO    ] Checking for system updates...
[2026-06-12 23:57:44,331.331 INFO    ] 200
[2026-06-12 23:57:44,332.332 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:57:44,362.362 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 23:57:44,364.364 INFO    ] No update needed
[2026-06-12 23:57:44,365.365 INFO    ] Checking for camera pi updates...
[2026-06-12 23:57:44,385.385 INFO    ] 200
[2026-06-12 23:57:44,386.386 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:57:44,411.411 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 23:57:44,461.461 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 23:57:44,462.462 INFO    ] No camera update needed
[2026-06-12 23:57:44,463.463 INFO    ] Script finished. Safe exiting...
[2026-06-12 23:57:44,465.465 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 23:57:44,468.468 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 23:57:44,470.470 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 23:57:46,511.511 INFO    ] ================================================
[2026-06-12 23:57:46,528.528 INFO    ] Launching Daemon at Fri Jun 12 23:57:46 IST 2026
[2026-06-12 23:57:46,539.539 INFO    ] ================================================
[2026-06-12 23:57:46,869.869 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 23:57:46
[2026-06-12 23:57:47,182.182 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 23:57:47,317.317 INFO    ] Initializing speech engine...
[2026-06-12 23:57:47,328.328 INFO    ] 2026-06-12 23:57:47
[2026-06-12 23:57:47,530.530 INFO    ] 2026-06-12 23:57:47
[2026-06-12 23:57:47,558.558 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 23:57:47,695.695 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 23:57:47,743.743 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 23:57:47,872.872 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 23:57:47,923.923 INFO    ] time= 12/06/2026 23:57:47
[2026-06-12 23:57:47,967.967 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 23:57:47,972.972 INFO    ] Checking for existing commands in stream...
[2026-06-12 23:57:48,043.043 INFO    ] No existing commands found in stream
[2026-06-12 23:57:53,057.057 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 23:57:53,060.060 INFO    ] Waiting 1.01 seconds before fallback handling...
[2026-06-12 23:57:54,458.458 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 23:57:54,460.460 INFO    ] Checking for system updates...
[2026-06-12 23:57:54,480.480 INFO    ] 200
[2026-06-12 23:57:54,481.481 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:57:54,511.511 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 23:57:54,512.512 INFO    ] No update needed
[2026-06-12 23:57:54,513.513 INFO    ] Checking for camera pi updates...
[2026-06-12 23:57:54,535.535 INFO    ] 200
[2026-06-12 23:57:54,536.536 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:57:54,561.561 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 23:57:54,601.601 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 23:57:54,602.602 INFO    ] No camera update needed
[2026-06-12 23:57:54,604.604 INFO    ] Script finished. Safe exiting...
[2026-06-12 23:57:54,605.605 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 23:57:54,608.608 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 23:57:54,610.610 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 23:57:56,648.648 INFO    ] ================================================
[2026-06-12 23:57:56,663.663 INFO    ] Launching Daemon at Fri Jun 12 23:57:56 IST 2026
[2026-06-12 23:57:56,674.674 INFO    ] ================================================
[2026-06-12 23:57:57,011.011 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 23:57:57
[2026-06-12 23:57:57,323.323 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 23:57:57,452.452 INFO    ] Initializing speech engine...
[2026-06-12 23:57:57,455.455 INFO    ] 2026-06-12 23:57:57
[2026-06-12 23:57:57,648.648 INFO    ] 2026-06-12 23:57:57
[2026-06-12 23:57:57,692.692 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 23:57:57,854.854 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 23:57:57,908.908 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 23:57:58,045.045 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 23:57:58,102.102 INFO    ] time= 12/06/2026 23:57:58
[2026-06-12 23:57:58,141.141 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 23:57:58,142.142 INFO    ] Checking for existing commands in stream...
[2026-06-12 23:57:58,214.214 INFO    ] No existing commands found in stream
[2026-06-12 23:58:03,224.224 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 23:58:03,227.227 INFO    ] Waiting 2.10 seconds before fallback handling...
[2026-06-12 23:58:05,690.690 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 23:58:05,692.692 INFO    ] Checking for system updates...
[2026-06-12 23:58:05,713.713 INFO    ] 200
[2026-06-12 23:58:05,715.715 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:58:05,745.745 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 23:58:05,746.746 INFO    ] No update needed
[2026-06-12 23:58:05,748.748 INFO    ] Checking for camera pi updates...
[2026-06-12 23:58:05,769.769 INFO    ] 200
[2026-06-12 23:58:05,771.771 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:58:05,796.796 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 23:58:05,851.851 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 23:58:05,853.853 INFO    ] No camera update needed
[2026-06-12 23:58:05,854.854 INFO    ] Script finished. Safe exiting...
[2026-06-12 23:58:05,855.855 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 23:58:05,859.859 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 23:58:05,862.862 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 23:58:07,900.900 INFO    ] ================================================
[2026-06-12 23:58:07,915.915 INFO    ] Launching Daemon at Fri Jun 12 23:58:07 IST 2026
[2026-06-12 23:58:07,926.926 INFO    ] ================================================
[2026-06-12 23:58:08,270.270 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 23:58:08
[2026-06-12 23:58:08,582.582 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 23:58:08,712.712 INFO    ] Initializing speech engine...
[2026-06-12 23:58:08,719.719 INFO    ] 2026-06-12 23:58:08
[2026-06-12 23:58:08,929.929 INFO    ] 2026-06-12 23:58:08
[2026-06-12 23:58:08,958.958 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 23:58:09,135.135 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 23:58:09,143.143 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 23:58:09,278.278 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 23:58:09,344.344 INFO    ] time= 12/06/2026 23:58:09
[2026-06-12 23:58:09,368.368 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 23:58:09,375.375 INFO    ] Checking for existing commands in stream...
[2026-06-12 23:58:09,441.441 INFO    ] No existing commands found in stream
[2026-06-12 23:58:14,455.455 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 23:58:14,458.458 INFO    ] Waiting 2.93 seconds before fallback handling...
[2026-06-12 23:58:17,736.736 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 23:58:17,738.738 INFO    ] Checking for system updates...
[2026-06-12 23:58:17,758.758 INFO    ] 200
[2026-06-12 23:58:17,760.760 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:58:17,790.790 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 23:58:17,791.791 INFO    ] No update needed
[2026-06-12 23:58:17,792.792 INFO    ] Checking for camera pi updates...
[2026-06-12 23:58:17,813.813 INFO    ] 200
[2026-06-12 23:58:17,814.814 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:58:17,838.838 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 23:58:17,891.891 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 23:58:17,893.893 INFO    ] No camera update needed
[2026-06-12 23:58:17,894.894 INFO    ] Script finished. Safe exiting...
[2026-06-12 23:58:17,895.895 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 23:58:17,899.899 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 23:58:17,902.902 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 23:58:19,941.941 INFO    ] ================================================
[2026-06-12 23:58:19,956.956 INFO    ] Launching Daemon at Fri Jun 12 23:58:19 IST 2026
[2026-06-12 23:58:19,967.967 INFO    ] ================================================
[2026-06-12 23:58:20,296.296 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 23:58:20
[2026-06-12 23:58:20,607.607 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 23:58:20,745.745 INFO    ] Initializing speech engine...
[2026-06-12 23:58:20,755.755 INFO    ] 2026-06-12 23:58:20
[2026-06-12 23:58:20,961.961 INFO    ] 2026-06-12 23:58:20
[2026-06-12 23:58:20,989.989 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 23:58:21,175.175 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 23:58:21,188.188 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 23:58:21,333.333 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 23:58:21,387.387 INFO    ] time= 12/06/2026 23:58:21
[2026-06-12 23:58:21,409.409 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 23:58:21,416.416 INFO    ] Checking for existing commands in stream...
[2026-06-12 23:58:21,483.483 INFO    ] No existing commands found in stream
[2026-06-12 23:58:26,492.492 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 23:58:26,494.494 INFO    ] Waiting 2.38 seconds before fallback handling...
[2026-06-12 23:58:29,236.236 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 23:58:29,238.238 INFO    ] Checking for system updates...
[2026-06-12 23:58:29,258.258 INFO    ] 200
[2026-06-12 23:58:29,260.260 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:58:29,292.292 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 23:58:29,293.293 INFO    ] No update needed
[2026-06-12 23:58:29,294.294 INFO    ] Checking for camera pi updates...
[2026-06-12 23:58:29,315.315 INFO    ] 200
[2026-06-12 23:58:29,316.316 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:58:29,338.338 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 23:58:29,393.393 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 23:58:29,394.394 INFO    ] No camera update needed
[2026-06-12 23:58:29,395.395 INFO    ] Script finished. Safe exiting...
[2026-06-12 23:58:29,396.396 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 23:58:29,399.399 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 23:58:29,402.402 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 23:58:31,441.441 INFO    ] ================================================
[2026-06-12 23:58:31,457.457 INFO    ] Launching Daemon at Fri Jun 12 23:58:31 IST 2026
[2026-06-12 23:58:31,469.469 INFO    ] ================================================
[2026-06-12 23:58:31,832.832 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 23:58:31
[2026-06-12 23:58:32,174.174 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 23:58:32,316.316 INFO    ] Initializing speech engine...
[2026-06-12 23:58:32,321.321 INFO    ] 2026-06-12 23:58:32
[2026-06-12 23:58:32,544.544 INFO    ] 2026-06-12 23:58:32
[2026-06-12 23:58:32,572.572 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 23:58:32,696.696 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 23:58:32,759.759 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 23:58:32,899.899 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 23:58:32,963.963 INFO    ] time= 12/06/2026 23:58:32
[2026-06-12 23:58:32,991.991 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 23:58:32,997.997 INFO    ] Checking for existing commands in stream...
[2026-06-12 23:58:33,064.064 INFO    ] No existing commands found in stream
[2026-06-12 23:58:38,073.073 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 23:58:38,076.076 INFO    ] Waiting 3.98 seconds before fallback handling...
[2026-06-12 23:58:42,435.435 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-12 23:58:42,436.436 INFO    ] Checking for system updates...
[2026-06-12 23:58:42,458.458 INFO    ] 200
[2026-06-12 23:58:42,459.459 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:58:42,489.489 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 23:58:42,491.491 INFO    ] No update needed
[2026-06-12 23:58:42,492.492 INFO    ] Checking for camera pi updates...
[2026-06-12 23:58:42,511.511 INFO    ] 200
[2026-06-12 23:58:42,512.512 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:58:42,536.536 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 23:58:42,563.563 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 23:58:42,564.564 INFO    ] No camera update needed
[2026-06-12 23:58:42,565.565 INFO    ] Script finished. Safe exiting...
[2026-06-12 23:58:42,566.566 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 23:58:42,569.569 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 23:58:42,572.572 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 23:58:44,611.611 INFO    ] ================================================
[2026-06-12 23:58:44,626.626 INFO    ] Launching Daemon at Fri Jun 12 23:58:44 IST 2026
[2026-06-12 23:58:44,637.637 INFO    ] ================================================
[2026-06-12 23:58:44,987.987 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 23:58:44
[2026-06-12 23:58:45,299.299 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 23:58:45,441.441 INFO    ] Initializing speech engine...
[2026-06-12 23:58:45,447.447 INFO    ] 2026-06-12 23:58:45
[2026-06-12 23:58:45,652.652 INFO    ] 2026-06-12 23:58:45
[2026-06-12 23:58:45,681.681 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 23:58:45,802.802 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 23:58:45,851.851 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 23:58:46,005.005 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 23:58:46,064.064 INFO    ] time= 12/06/2026 23:58:46
[2026-06-12 23:58:46,095.095 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 23:58:46,102.102 INFO    ] Checking for existing commands in stream...
[2026-06-12 23:58:46,169.169 INFO    ] No existing commands found in stream
[2026-06-12 23:58:51,182.182 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 23:58:51,185.185 INFO    ] Waiting 2.22 seconds before fallback handling...
[2026-06-12 23:58:53,775.775 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 23:58:53,777.777 INFO    ] Checking for system updates...
[2026-06-12 23:58:53,798.798 INFO    ] 200
[2026-06-12 23:58:53,800.800 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:58:53,832.832 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 23:58:53,833.833 INFO    ] No update needed
[2026-06-12 23:58:53,835.835 INFO    ] Checking for camera pi updates...
[2026-06-12 23:58:53,856.856 INFO    ] 200
[2026-06-12 23:58:53,857.857 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:58:53,880.880 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 23:58:54,019.019 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 23:58:54,020.020 INFO    ] No camera update needed
[2026-06-12 23:58:54,022.022 INFO    ] Script finished. Safe exiting...
[2026-06-12 23:58:54,023.023 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 23:58:54,026.026 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 23:58:54,029.029 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 23:58:56,067.067 INFO    ] ================================================
[2026-06-12 23:58:56,082.082 INFO    ] Launching Daemon at Fri Jun 12 23:58:56 IST 2026
[2026-06-12 23:58:56,093.093 INFO    ] ================================================
[2026-06-12 23:58:56,491.491 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 23:58:56
[2026-06-12 23:58:56,823.823 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 23:58:56,961.961 INFO    ] Initializing speech engine...
[2026-06-12 23:58:56,969.969 INFO    ] 2026-06-12 23:58:56
[2026-06-12 23:58:57,184.184 INFO    ] 2026-06-12 23:58:57
[2026-06-12 23:58:57,213.213 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 23:58:57,396.396 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 23:58:57,406.406 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 23:58:57,546.546 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 23:58:57,604.604 INFO    ] time= 12/06/2026 23:58:57
[2026-06-12 23:58:57,626.626 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 23:58:57,633.633 INFO    ] Checking for existing commands in stream...
[2026-06-12 23:58:57,700.700 INFO    ] No existing commands found in stream
[2026-06-12 23:59:02,712.712 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 23:59:02,714.714 INFO    ] Waiting 0.36 seconds before fallback handling...
[2026-06-12 23:59:03,456.456 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-12 23:59:03,457.457 INFO    ] Checking for system updates...
[2026-06-12 23:59:03,479.479 INFO    ] 200
[2026-06-12 23:59:03,481.481 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:59:03,514.514 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 23:59:03,515.515 INFO    ] No update needed
[2026-06-12 23:59:03,516.516 INFO    ] Checking for camera pi updates...
[2026-06-12 23:59:03,538.538 INFO    ] 200
[2026-06-12 23:59:03,540.540 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:59:03,565.565 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 23:59:03,610.610 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 23:59:03,612.612 INFO    ] No camera update needed
[2026-06-12 23:59:03,613.613 INFO    ] Script finished. Safe exiting...
[2026-06-12 23:59:03,614.614 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 23:59:03,618.618 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 23:59:03,621.621 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 23:59:05,660.660 INFO    ] ================================================
[2026-06-12 23:59:05,676.676 INFO    ] Launching Daemon at Fri Jun 12 23:59:05 IST 2026
[2026-06-12 23:59:05,687.687 INFO    ] ================================================
[2026-06-12 23:59:06,048.048 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 23:59:06
[2026-06-12 23:59:06,385.385 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 23:59:06,528.528 INFO    ] Initializing speech engine...
[2026-06-12 23:59:06,531.531 INFO    ] 2026-06-12 23:59:06
[2026-06-12 23:59:06,732.732 INFO    ] 2026-06-12 23:59:06
[2026-06-12 23:59:06,762.762 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 23:59:06,945.945 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 23:59:06,956.956 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 23:59:07,098.098 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 23:59:07,151.151 INFO    ] time= 12/06/2026 23:59:07
[2026-06-12 23:59:07,173.173 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 23:59:07,179.179 INFO    ] Checking for existing commands in stream...
[2026-06-12 23:59:07,246.246 INFO    ] No existing commands found in stream
[2026-06-12 23:59:12,265.265 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 23:59:12,268.268 INFO    ] Waiting 0.99 seconds before fallback handling...
[2026-06-12 23:59:13,623.623 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-12 23:59:13,625.625 INFO    ] Checking for system updates...
[2026-06-12 23:59:13,645.645 INFO    ] 200
[2026-06-12 23:59:13,646.646 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:59:13,678.678 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 23:59:13,679.679 INFO    ] No update needed
[2026-06-12 23:59:13,681.681 INFO    ] Checking for camera pi updates...
[2026-06-12 23:59:13,700.700 INFO    ] 200
[2026-06-12 23:59:13,701.701 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:59:13,727.727 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 23:59:13,788.788 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-12 23:59:13,790.790 INFO    ] No camera update needed
[2026-06-12 23:59:13,791.791 INFO    ] Script finished. Safe exiting...
[2026-06-12 23:59:13,792.792 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 23:59:13,795.795 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 23:59:13,798.798 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 23:59:15,835.835 INFO    ] ================================================
[2026-06-12 23:59:15,851.851 INFO    ] Launching Daemon at Fri Jun 12 23:59:15 IST 2026
[2026-06-12 23:59:15,862.862 INFO    ] ================================================
[2026-06-12 23:59:16,219.219 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 23:59:16
[2026-06-12 23:59:16,532.532 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 23:59:16,663.663 INFO    ] Initializing speech engine...
[2026-06-12 23:59:16,666.666 INFO    ] 2026-06-12 23:59:16
[2026-06-12 23:59:16,886.886 INFO    ] 2026-06-12 23:59:16
[2026-06-12 23:59:16,917.917 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 23:59:17,104.104 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 23:59:17,114.114 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 23:59:17,245.245 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 23:59:17,304.304 INFO    ] time= 12/06/2026 23:59:17
[2026-06-12 23:59:17,337.337 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 23:59:17,344.344 INFO    ] Checking for existing commands in stream...
[2026-06-12 23:59:17,411.411 INFO    ] No existing commands found in stream
[2026-06-12 23:59:22,420.420 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 23:59:22,428.428 INFO    ] Waiting 2.62 seconds before fallback handling...
[2026-06-12 23:59:25,405.405 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-12 23:59:25,406.406 INFO    ] Checking for system updates...
[2026-06-12 23:59:25,427.427 INFO    ] 200
[2026-06-12 23:59:25,428.428 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:59:25,459.459 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 23:59:25,460.460 INFO    ] No update needed
[2026-06-12 23:59:25,462.462 INFO    ] Checking for camera pi updates...
[2026-06-12 23:59:25,481.481 INFO    ] 200
[2026-06-12 23:59:25,483.483 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:59:25,506.506 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 23:59:25,557.557 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 23:59:25,559.559 INFO    ] No camera update needed
[2026-06-12 23:59:25,560.560 INFO    ] Script finished. Safe exiting...
[2026-06-12 23:59:25,561.561 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 23:59:25,564.564 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 23:59:25,567.567 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 23:59:27,607.607 INFO    ] ================================================
[2026-06-12 23:59:27,627.627 INFO    ] Launching Daemon at Fri Jun 12 23:59:27 IST 2026
[2026-06-12 23:59:27,638.638 INFO    ] ================================================
[2026-06-12 23:59:28,025.025 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 23:59:28
[2026-06-12 23:59:28,357.357 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 23:59:28,507.507 INFO    ] Initializing speech engine...
[2026-06-12 23:59:28,512.512 INFO    ] 2026-06-12 23:59:28
[2026-06-12 23:59:28,720.720 INFO    ] 2026-06-12 23:59:28
[2026-06-12 23:59:28,748.748 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 23:59:28,932.932 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 23:59:28,941.941 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 23:59:29,077.077 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 23:59:29,140.140 INFO    ] time= 12/06/2026 23:59:29
[2026-06-12 23:59:29,163.163 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 23:59:29,170.170 INFO    ] Checking for existing commands in stream...
[2026-06-12 23:59:29,260.260 INFO    ] No existing commands found in stream
[2026-06-12 23:59:34,274.274 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 23:59:34,277.277 INFO    ] Waiting 2.16 seconds before fallback handling...
[2026-06-12 23:59:36,825.825 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 23:59:36,826.826 INFO    ] Checking for system updates...
[2026-06-12 23:59:36,847.847 INFO    ] 200
[2026-06-12 23:59:36,849.849 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:59:36,879.879 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 23:59:36,880.880 INFO    ] No update needed
[2026-06-12 23:59:36,882.882 INFO    ] Checking for camera pi updates...
[2026-06-12 23:59:36,902.902 INFO    ] 200
[2026-06-12 23:59:36,903.903 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:59:36,926.926 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 23:59:36,982.982 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 23:59:36,984.984 INFO    ] No camera update needed
[2026-06-12 23:59:36,985.985 INFO    ] Script finished. Safe exiting...
[2026-06-12 23:59:36,986.986 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 23:59:36,989.989 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 23:59:36,992.992 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 23:59:39,030.030 INFO    ] ================================================
[2026-06-12 23:59:39,045.045 INFO    ] Launching Daemon at Fri Jun 12 23:59:39 IST 2026
[2026-06-12 23:59:39,056.056 INFO    ] ================================================
[2026-06-12 23:59:39,381.381 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 23:59:39
[2026-06-12 23:59:39,696.696 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 23:59:39,831.831 INFO    ] Initializing speech engine...
[2026-06-12 23:59:39,843.843 INFO    ] 2026-06-12 23:59:39
[2026-06-12 23:59:40,063.063 INFO    ] 2026-06-12 23:59:40
[2026-06-12 23:59:40,094.094 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 23:59:40,292.292 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 23:59:40,296.296 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 23:59:40,427.427 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 23:59:40,483.483 INFO    ] time= 12/06/2026 23:59:40
[2026-06-12 23:59:40,518.518 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 23:59:40,532.532 INFO    ] Checking for existing commands in stream...
[2026-06-12 23:59:40,599.599 INFO    ] No existing commands found in stream
[2026-06-12 23:59:45,608.608 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 23:59:45,611.611 INFO    ] Waiting 3.95 seconds before fallback handling...
[2026-06-12 23:59:49,964.964 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-12 23:59:49,966.966 INFO    ] Checking for system updates...
[2026-06-12 23:59:49,990.990 INFO    ] 200
[2026-06-12 23:59:49,991.991 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:59:50,022.022 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 23:59:50,024.024 INFO    ] No update needed
[2026-06-12 23:59:50,025.025 INFO    ] Checking for camera pi updates...
[2026-06-12 23:59:50,046.046 INFO    ] 200
[2026-06-12 23:59:50,048.048 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-12 23:59:50,074.074 INFO    ] Camera IP: TMCAM09202301.local
[2026-06-12 23:59:50,131.131 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-12 23:59:50,132.132 INFO    ] No camera update needed
[2026-06-12 23:59:50,134.134 INFO    ] Script finished. Safe exiting...
[2026-06-12 23:59:50,135.135 INFO    ] === ACTIVE THREADS START ===
[2026-06-12 23:59:50,138.138 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-12 23:59:50,141.141 INFO    ] === ACTIVE THREADS END ===
[2026-06-12 23:59:52,180.180 INFO    ] ================================================
[2026-06-12 23:59:52,195.195 INFO    ] Launching Daemon at Fri Jun 12 23:59:52 IST 2026
[2026-06-12 23:59:52,206.206 INFO    ] ================================================
[2026-06-12 23:59:52,527.527 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-12 23:59:52
[2026-06-12 23:59:52,840.840 INFO    ] Using urllib3 for HTTP requests
[2026-06-12 23:59:52,974.974 INFO    ] Initializing speech engine...
[2026-06-12 23:59:52,977.977 INFO    ] 2026-06-12 23:59:52
[2026-06-12 23:59:53,187.187 INFO    ] 2026-06-12 23:59:53
[2026-06-12 23:59:53,216.216 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-12 23:59:53,375.375 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-12 23:59:53,417.417 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-12 23:59:53,585.585 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-12 23:59:53,648.648 INFO    ] time= 12/06/2026 23:59:53
[2026-06-12 23:59:53,678.678 INFO    ] Listening for commands on Redis Stream: machine:TM09202301
[2026-06-12 23:59:53,695.695 INFO    ] Checking for existing commands in stream...
[2026-06-12 23:59:53,771.771 INFO    ] No existing commands found in stream
[2026-06-12 23:59:58,782.782 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-12 23:59:58,785.785 INFO    ] Waiting 0.78 seconds before fallback handling...
[2026-06-12 23:59:59,959.959 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-12 23:59:59,960.960 INFO    ] Checking for system updates...
[2026-06-12 23:59:59,981.981 INFO    ] 200
[2026-06-12 23:59:59,982.982 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
